From b9cbd68d1cbbb21eade18182a797d5fa7d0dc110 Mon Sep 17 00:00:00 2001 From: Michal Meloun Date: Thu, 4 Jan 2018 12:50:12 +0100 Subject: [PATCH] ARM: Enhance common Nvidia Tegra drivers by support for Tegra210 SoC. MFC after: 4 weeks --- sys/arm/nvidia/tegra_abpmisc.c | 1 + sys/arm/nvidia/tegra_ahci.c | 423 ++- sys/arm/nvidia/tegra_efuse.c | 226 +- sys/arm/nvidia/tegra_ehci.c | 2 + sys/arm/nvidia/tegra_gpio.c | 1 + sys/arm/nvidia/tegra_i2c.c | 2 +- sys/arm/nvidia/tegra_lic.c | 3 +- sys/arm/nvidia/tegra_mc.c | 7 +- sys/arm/nvidia/tegra_pcie.c | 258 +- sys/arm/nvidia/tegra_pmc.h | 16 +- sys/arm/nvidia/tegra_sdhci.c | 42 +- sys/arm/nvidia/tegra_soctherm.c | 330 ++- sys/arm/nvidia/tegra_uart.c | 5 +- sys/arm/nvidia/tegra_usbphy.c | 2 +- sys/arm/nvidia/tegra_xhci.c | 297 +- sys/contrib/dev/nvidia/tegra210_xusb.bin.uu | 2950 +++++++++++++++++++ sys/modules/dtb/nvidia/Makefile | 10 +- 17 files changed, 4009 insertions(+), 566 deletions(-) create mode 100755 sys/contrib/dev/nvidia/tegra210_xusb.bin.uu diff --git a/sys/arm/nvidia/tegra_abpmisc.c b/sys/arm/nvidia/tegra_abpmisc.c index 0841af27f24..8a8e39862ca 100644 --- a/sys/arm/nvidia/tegra_abpmisc.c +++ b/sys/arm/nvidia/tegra_abpmisc.c @@ -63,6 +63,7 @@ __FBSDID("$FreeBSD$"); static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-apbmisc", 1}, + {"nvidia,tegra210-apbmisc", 1}, {NULL, 0} }; diff --git a/sys/arm/nvidia/tegra_ahci.c b/sys/arm/nvidia/tegra_ahci.c index ceb2c9faadf..725fc999a3a 100644 --- a/sys/arm/nvidia/tegra_ahci.c +++ b/sys/arm/nvidia/tegra_ahci.c @@ -57,54 +57,14 @@ __FBSDID("$FreeBSD$"); #include #include -#define AHCI_WR4(_sc, _r, _v) bus_write_4((_sc)->ctlr.r_mem, (_r), (_v)) -#define AHCI_RD4(_sc, _r) bus_read_4((_sc)->ctlr.r_mem, (_r)) -#define SATA_WR4(_sc, _r, _v) bus_write_4((_sc)->sata_mem, (_r), (_v)) -#define SATA_RD4(_sc, _r) bus_read_4((_sc)->sata_mem, (_r)) - -static struct ofw_compat_data compat_data[] = { - {"nvidia,tegra124-ahci", 1}, - {NULL, 0} -}; - -struct tegra_ahci_sc { - struct ahci_controller ctlr; /* Must be first */ - device_t dev; - struct resource *sata_mem; - clk_t clk_sata; - clk_t clk_sata_oob; - clk_t clk_pll_e; - clk_t clk_cml; - hwreset_t hwreset_sata; - hwreset_t hwreset_sata_oob; - hwreset_t hwreset_sata_cold; - regulator_t supply_hvdd; - regulator_t supply_vddio; - regulator_t supply_avdd; - regulator_t supply_target_5v; - regulator_t supply_target_12v; - phy_t phy; -}; - -struct sata_pad_calibration { - uint32_t gen1_tx_amp; - uint32_t gen1_tx_peak; - uint32_t gen2_tx_amp; - uint32_t gen2_tx_peak; -}; - -static const struct sata_pad_calibration tegra124_pad_calibration[] = { - {0x18, 0x04, 0x18, 0x0a}, - {0x0e, 0x04, 0x14, 0x0a}, - {0x0e, 0x07, 0x1a, 0x0e}, - {0x14, 0x0e, 0x1a, 0x0e}, -}; #define SATA_CONFIGURATION 0x180 -#define SATA_CONFIGURATION_EN_FPCI (1 << 0) +#define SATA_CONFIGURATION_CLK_OVERRIDE (1U << 31) +#define SATA_CONFIGURATION_EN_FPCI (1 << 0) #define SATA_FPCI_BAR5 0x94 -#define SATA_FPCI_BAR5_START_SHIFT 4 +#define SATA_FPCI_BAR_START(x) (((x) & 0xFFFFFFF) << 4) +#define SATA_FPCI_BAR_ACCESS_TYPE (1 << 0) #define SATA_INTR_MASK 0x188 #define SATA_INTR_MASK_IP_INT_MASK (1 << 16) @@ -120,8 +80,46 @@ static const struct sata_pad_calibration tegra124_pad_calibration[] = { #define T_SATA0_CFG_9 0x24 #define T_SATA0_CFG_9_BASE_ADDRESS_SHIFT 13 +#define T_SATA0_CFG_35 0x94 +#define T_SATA0_CFG_35_IDP_INDEX_MASK (0x7ff << 2) +#define T_SATA0_CFG_35_IDP_INDEX (0x2a << 2) + +#define T_SATA0_AHCI_IDP1 0x98 +#define T_SATA0_AHCI_IDP1_DATA 0x400040 + +#define T_SATA0_CFG_PHY_1 0x12c +#define T_SATA0_CFG_PHY_1_PADS_IDDQ_EN (1 << 23) +#define T_SATA0_CFG_PHY_1_PAD_PLL_IDDQ_EN (1 << 22) + +#define T_SATA0_NVOOB 0x114 +#define T_SATA0_NVOOB_SQUELCH_FILTER_LENGTH_MASK (0x3 << 26) +#define T_SATA0_NVOOB_SQUELCH_FILTER_LENGTH (0x3 << 26) +#define T_SATA0_NVOOB_SQUELCH_FILTER_MODE_MASK (0x3 << 24) +#define T_SATA0_NVOOB_SQUELCH_FILTER_MODE (0x1 << 24) +#define T_SATA0_NVOOB_COMMA_CNT_MASK (0xff << 16) +#define T_SATA0_NVOOB_COMMA_CNT (0x07 << 16) + +#define T_SATA0_CFG_PHY 0x120 +#define T_SATA0_CFG_PHY_MASK_SQUELCH (1 << 24) +#define T_SATA0_CFG_PHY_USE_7BIT_ALIGN_DET_FOR_SPD (1 << 11) + +#define T_SATA0_CFG2NVOOB_2 0x134 +#define T_SATA0_CFG2NVOOB_2_COMWAKE_IDLE_CNT_LOW_MASK (0x1ff << 18) +#define T_SATA0_CFG2NVOOB_2_COMWAKE_IDLE_CNT_LOW (0xc << 18) + #define T_SATA0_AHCI_HBA_CAP_BKDR 0x300 +#define T_SATA0_AHCI_HBA_CAP_BKDR_SNCQ (1 << 30) +#define T_SATA0_AHCI_HBA_CAP_BKDR_SUPP_PM (1 << 17) +#define T_SATA0_AHCI_HBA_CAP_BKDR_SALP (1 << 26) +#define T_SATA0_AHCI_HBA_CAP_BKDR_SLUMBER_ST_CAP (1 << 14) +#define T_SATA0_AHCI_HBA_CAP_BKDR_PARTIAL_ST_CAP (1 << 13) + #define T_SATA0_BKDOOR_CC 0x4a4 +#define T_SATA0_BKDOOR_CC_CLASS_CODE_MASK (0xffff << 16) +#define T_SATA0_BKDOOR_CC_CLASS_CODE (0x0106 << 16) +#define T_SATA0_BKDOOR_CC_PROG_IF_MASK (0xff << 8) +#define T_SATA0_BKDOOR_CC_PROG_IF (0x01 << 8) + #define T_SATA0_CFG_SATA 0x54c #define T_SATA0_CFG_SATA_BACKDOOR_PROG_IF_EN (1 << 12) @@ -146,6 +144,11 @@ static const struct sata_pad_calibration tegra124_pad_calibration[] = { #define T_SATA0_CHX_PHY_CTRL11 0x6d0 #define T_SATA0_CHX_PHY_CTRL11_GEN2_RX_EQ (0x2800 << 16) +#define T_SATA0_CHX_PHY_CTRL17 0x6e8 +#define T_SATA0_CHX_PHY_CTRL18 0x6ec +#define T_SATA0_CHX_PHY_CTRL20 0x6f4 +#define T_SATA0_CHX_PHY_CTRL21 0x6f8 + #define FUSE_SATA_CALIB 0x124 #define FUSE_SATA_CALIB_MASK 0x3 @@ -197,42 +200,109 @@ static const struct sata_pad_calibration tegra124_pad_calibration[] = { #define T_AHCI_PORT_BKDR_COLD_PRSN_DET (1 << 1) #define T_AHCI_PORT_BKDR_EXT_SATA_SUPP (1 << 0) +/* AUX registers */ +#define SATA_AUX_MISC_CNTL_1 0x008 +#define SATA_AUX_MISC_CNTL_1_DEVSLP_OVERRIDE (1 << 17) +#define SATA_AUX_MISC_CNTL_1_SDS_SUPPORT (1 << 13) +#define SATA_AUX_MISC_CNTL_1_DESO_SUPPORT (1 << 15) + +#define AHCI_WR4(_sc, _r, _v) bus_write_4((_sc)->ctlr.r_mem, (_r), (_v)) +#define AHCI_RD4(_sc, _r) bus_read_4((_sc)->ctlr.r_mem, (_r)) +#define SATA_WR4(_sc, _r, _v) bus_write_4((_sc)->sata_mem, (_r), (_v)) +#define SATA_RD4(_sc, _r) bus_read_4((_sc)->sata_mem, (_r)) + +struct sata_pad_calibration { + uint32_t gen1_tx_amp; + uint32_t gen1_tx_peak; + uint32_t gen2_tx_amp; + uint32_t gen2_tx_peak; +}; + +static const struct sata_pad_calibration tegra124_pad_calibration[] = { + {0x18, 0x04, 0x18, 0x0a}, + {0x0e, 0x04, 0x14, 0x0a}, + {0x0e, 0x07, 0x1a, 0x0e}, + {0x14, 0x0e, 0x1a, 0x0e}, +}; + +struct ahci_soc; +struct tegra_ahci_sc { + struct ahci_controller ctlr; /* Must be first */ + device_t dev; + struct ahci_soc *soc; + struct resource *sata_mem; + struct resource *aux_mem; + clk_t clk_sata; + clk_t clk_sata_oob; + clk_t clk_pll_e; + clk_t clk_cml; + hwreset_t hwreset_sata; + hwreset_t hwreset_sata_oob; + hwreset_t hwreset_sata_cold; + regulator_t regulators[16]; /* Safe maximum */ + phy_t phy; +}; + +struct ahci_soc { + char **regulator_names; + int (*init)(struct tegra_ahci_sc *sc); +}; + +/* Tegra 124 config. */ +static char *tegra124_reg_names[] = { + "hvdd-supply", + "vddio-supply", + "avdd-supply", + "target-5v-supply", + "target-12v-supply", + NULL +}; + +static int tegra124_ahci_init(struct tegra_ahci_sc *sc); +static struct ahci_soc tegra124_soc = { + .regulator_names = tegra124_reg_names, + .init = tegra124_ahci_init, +}; + +/* Tegra 210 config. */ +static char *tegra210_reg_names[] = { + NULL +}; + +static struct ahci_soc tegra210_soc = { + .regulator_names = tegra210_reg_names, +}; + + +static struct ofw_compat_data compat_data[] = { + {"nvidia,tegra124-ahci", (uintptr_t)&tegra124_soc}, + {"nvidia,tegra210-ahci", (uintptr_t)&tegra210_soc}, + {NULL, 0} +}; + static int get_fdt_resources(struct tegra_ahci_sc *sc, phandle_t node) { - int rv; + int i, rv; - rv = regulator_get_by_ofw_property(sc->dev, 0, "hvdd-supply", - &sc->supply_hvdd ); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'hvdd' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "vddio-supply", - &sc->supply_vddio); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'vddio' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-supply", - &sc->supply_avdd); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'avdd' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "target-5v-supply", - &sc->supply_target_5v); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'target-5v' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "target-12v-supply", - &sc->supply_target_12v); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'target-12v' regulator\n"); - return (ENXIO); + /* Regulators. */ + for (i = 0; sc->soc->regulator_names[i] != NULL; i++) { + if (i >= nitems(sc->regulators)) { + device_printf(sc->dev, + "Too many regulators present in DT.\n"); + return (EOVERFLOW); + } + rv = regulator_get_by_ofw_property(sc->dev, 0, + sc->soc->regulator_names[i], sc->regulators + i); + if (rv != 0) { + device_printf(sc->dev, + "Cannot get '%s' regulator\n", + sc->soc->regulator_names[i]); + return (ENXIO); + } } + /* Resets. */ rv = hwreset_get_by_ofw_name(sc->dev, 0, "sata", &sc->hwreset_sata ); if (rv != 0) { device_printf(sc->dev, "Cannot get 'sata' reset\n"); @@ -251,12 +321,17 @@ get_fdt_resources(struct tegra_ahci_sc *sc, phandle_t node) return (ENXIO); } + /* Phy */ rv = phy_get_by_ofw_name(sc->dev, 0, "sata-0", &sc->phy); if (rv != 0) { - device_printf(sc->dev, "Cannot get 'sata' phy\n"); - return (ENXIO); + rv = phy_get_by_ofw_idx(sc->dev, 0, 0, &sc->phy); + if (rv != 0) { + device_printf(sc->dev, "Cannot get 'sata' phy\n"); + return (ENXIO); + } } + /* Clocks. */ rv = clk_get_by_ofw_name(sc->dev, 0, "sata", &sc->clk_sata); if (rv != 0) { device_printf(sc->dev, "Cannot get 'sata' clock\n"); @@ -267,50 +342,33 @@ get_fdt_resources(struct tegra_ahci_sc *sc, phandle_t node) device_printf(sc->dev, "Cannot get 'sata oob' clock\n"); return (ENXIO); } + /* These are optional */ rv = clk_get_by_ofw_name(sc->dev, 0, "cml1", &sc->clk_cml); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'cml1' clock\n"); - return (ENXIO); - } + if (rv != 0) + sc->clk_cml = NULL; + rv = clk_get_by_ofw_name(sc->dev, 0, "pll_e", &sc->clk_pll_e); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'pll_e' clock\n"); - return (ENXIO); - } + if (rv != 0) + sc->clk_pll_e = NULL; return (0); } static int enable_fdt_resources(struct tegra_ahci_sc *sc) { - int rv; + int i, rv; - rv = regulator_enable(sc->supply_hvdd); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'hvdd' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_vddio); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'vddio' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'avdd' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_target_5v); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'target-5v' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_target_12v); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'sc->target-12v' regulator\n"); - return (rv); + /* Enable regulators. */ + for (i = 0; i < nitems(sc->regulators); i++) { + if (sc->regulators[i] == NULL) + continue; + rv = regulator_enable(sc->regulators[i]); + if (rv != 0) { + device_printf(sc->dev, + "Cannot enable '%s' regulator\n", + sc->soc->regulator_names[i]); + return (rv); + } } /* Stop clocks */ @@ -346,15 +404,19 @@ enable_fdt_resources(struct tegra_ahci_sc *sc) device_printf(sc->dev, "Cannot enable 'sata oob' clock\n"); return (rv); } - rv = clk_enable(sc->clk_cml); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'cml' clock\n"); - return (rv); + if (sc->clk_cml != NULL) { + rv = clk_enable(sc->clk_cml); + if (rv != 0) { + device_printf(sc->dev, "Cannot enable 'cml' clock\n"); + return (rv); + } } - rv = clk_enable(sc->clk_pll_e); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'pll e' clock\n"); - return (rv); + if (sc->clk_pll_e != NULL) { + rv = clk_enable(sc->clk_pll_e); + if (rv != 0) { + device_printf(sc->dev, "Cannot enable 'pll e' clock\n"); + return (rv); + } } rv = hwreset_deassert(sc->hwreset_sata_cold); @@ -378,15 +440,11 @@ enable_fdt_resources(struct tegra_ahci_sc *sc) } static int -tegra_ahci_ctrl_init(struct tegra_ahci_sc *sc) +tegra124_ahci_init(struct tegra_ahci_sc *sc) { uint32_t val; const struct sata_pad_calibration *calib; - val = SATA_RD4(sc, SATA_CONFIGURATION); - val |= SATA_CONFIGURATION_EN_FPCI; - SATA_WR4(sc, SATA_CONFIGURATION, val); - /* Pad calibration. */ val = tegra_fuse_read_4(FUSE_SATA_CALIB); calib = tegra124_pad_calibration + (val & FUSE_SATA_CALIB_MASK); @@ -418,17 +476,118 @@ tegra_ahci_ctrl_init(struct tegra_ahci_sc *sc) SATA_WR4(sc, SCFG_OFFSET + T_SATA0_INDEX, 0); - /* Set device ID. */ + return (0); +} + +static int +tegra_ahci_ctrl_init(struct tegra_ahci_sc *sc) +{ + uint32_t val; + int rv; + + /* Enable SATA MMIO. */ + val = SATA_RD4(sc, SATA_FPCI_BAR5); + val &= ~SATA_FPCI_BAR_START(~0); + val |= SATA_FPCI_BAR_START(0x10000); + val |= SATA_FPCI_BAR_ACCESS_TYPE; + SATA_WR4(sc, SATA_FPCI_BAR5, val); + + /* Enable FPCI access */ + val = SATA_RD4(sc, SATA_CONFIGURATION); + val |= SATA_CONFIGURATION_EN_FPCI; + SATA_WR4(sc, SATA_CONFIGURATION, val); + + /* Recommended electrical settings for phy */ + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CHX_PHY_CTRL17, 0x55010000); + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CHX_PHY_CTRL18, 0x55010000); + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CHX_PHY_CTRL20, 0x1); + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CHX_PHY_CTRL21, 0x1); + + /* SQUELCH and Gen3 */ + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_PHY); + val |= T_SATA0_CFG_PHY_MASK_SQUELCH; + val &= ~T_SATA0_CFG_PHY_USE_7BIT_ALIGN_DET_FOR_SPD; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_PHY, val); + + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_NVOOB); + val &= ~T_SATA0_NVOOB_COMMA_CNT_MASK; + val &= ~T_SATA0_NVOOB_SQUELCH_FILTER_LENGTH_MASK; + val &= ~T_SATA0_NVOOB_SQUELCH_FILTER_MODE_MASK; + val |= T_SATA0_NVOOB_COMMA_CNT; + val |= T_SATA0_NVOOB_SQUELCH_FILTER_LENGTH; + val |= T_SATA0_NVOOB_SQUELCH_FILTER_MODE; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_NVOOB, val); + + /* Setup COMWAKE_IDLE_CNT */ + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG2NVOOB_2); + val &= ~T_SATA0_CFG2NVOOB_2_COMWAKE_IDLE_CNT_LOW_MASK; + val |= T_SATA0_CFG2NVOOB_2_COMWAKE_IDLE_CNT_LOW; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG2NVOOB_2, val); + + if (sc->soc->init != NULL) { + rv = sc->soc->init(sc); + if (rv != 0) { + device_printf(sc->dev, + "SOC specific intialization failed: %d\n", rv); + return (rv); + } + } + + /* Enable backdoor programming. */ val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_SATA); val |= T_SATA0_CFG_SATA_BACKDOOR_PROG_IF_EN; SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_SATA, val); - SATA_WR4(sc, SCFG_OFFSET + T_SATA0_BKDOOR_CC, 0x01060100); + /* Set device class and interface */ + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_BKDOOR_CC); + val &= ~T_SATA0_BKDOOR_CC_CLASS_CODE_MASK; + val &= ~T_SATA0_BKDOOR_CC_PROG_IF_MASK; + val |= T_SATA0_BKDOOR_CC_CLASS_CODE; + val |= T_SATA0_BKDOOR_CC_PROG_IF; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_BKDOOR_CC, val); + /* Enable LPM capabilities */ + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_AHCI_HBA_CAP_BKDR); + val |= T_SATA0_AHCI_HBA_CAP_BKDR_PARTIAL_ST_CAP; + val |= T_SATA0_AHCI_HBA_CAP_BKDR_SLUMBER_ST_CAP; + val |= T_SATA0_AHCI_HBA_CAP_BKDR_SALP; + val |= T_SATA0_AHCI_HBA_CAP_BKDR_SUPP_PM; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_AHCI_HBA_CAP_BKDR, val); + + /* Disable backdoor programming. */ val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_SATA); val &= ~T_SATA0_CFG_SATA_BACKDOOR_PROG_IF_EN; SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_SATA, val); + /* SATA Second Level Clock Gating */ + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_35); + val &= ~T_SATA0_CFG_35_IDP_INDEX_MASK; + val |= T_SATA0_CFG_35_IDP_INDEX; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_35, val); + + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_AHCI_IDP1, 0x400040); + + val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_PHY_1); + val |= T_SATA0_CFG_PHY_1_PADS_IDDQ_EN; + val |= T_SATA0_CFG_PHY_1_PAD_PLL_IDDQ_EN; + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_PHY_1, val); + + /* + * Indicate Sata only has the capability to enter DevSleep + * from slumber link. + */ + if (sc->aux_mem != NULL) { + val = bus_read_4(sc->aux_mem, SATA_AUX_MISC_CNTL_1); + val |= SATA_AUX_MISC_CNTL_1_DESO_SUPPORT; + bus_write_4(sc->aux_mem, SATA_AUX_MISC_CNTL_1, val); + } + + /* Enable IPFS Clock Gating */ + val = SATA_RD4(sc, SCFG_OFFSET + SATA_CONFIGURATION); + val &= ~SATA_CONFIGURATION_CLK_OVERRIDE; + SATA_WR4(sc, SCFG_OFFSET + SATA_CONFIGURATION, val); + + /* Enable IO & memory access, bus master mode */ val = SATA_RD4(sc, SCFG_OFFSET + T_SATA0_CFG_1); val |= T_SATA0_CFG_1_IO_SPACE; @@ -437,10 +596,8 @@ tegra_ahci_ctrl_init(struct tegra_ahci_sc *sc) val |= T_SATA0_CFG_1_SERR; SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_1, val); - /* SATA MMIO. */ - SATA_WR4(sc, SATA_FPCI_BAR5, 0x10000 << SATA_FPCI_BAR5_START_SHIFT); /* AHCI bar */ - SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_9, + SATA_WR4(sc, SCFG_OFFSET + T_SATA0_CFG_9, 0x08000 << T_SATA0_CFG_9_BASE_ADDRESS_SHIFT); /* Unmask interrupts. */ @@ -513,6 +670,8 @@ tegra_ahci_attach(device_t dev) sc->dev = dev; ctlr = &sc->ctlr; node = ofw_bus_get_node(dev); + sc->soc = (struct ahci_soc *)ofw_bus_search_compatible(dev, + compat_data)->ocd_data; ctlr->r_rid = 0; ctlr->r_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, @@ -527,6 +686,12 @@ tegra_ahci_attach(device_t dev) rv = ENXIO; goto fail; } + + /* Aux is optionall */ + rid = 2; + sc->aux_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + &rid, RF_ACTIVE); + rv = get_fdt_resources(sc, node); if (rv != 0) { device_printf(sc->dev, "Failed to allocate FDT resource(s)\n"); diff --git a/sys/arm/nvidia/tegra_efuse.c b/sys/arm/nvidia/tegra_efuse.c index 253ae8b6cf3..e18fd9c3a27 100644 --- a/sys/arm/nvidia/tegra_efuse.c +++ b/sys/arm/nvidia/tegra_efuse.c @@ -49,23 +49,20 @@ __FBSDID("$FreeBSD$"); #include -#define RD4(_sc, _r) bus_read_4((_sc)->mem_res, (_sc)->fuse_begin + (_r)) - -static struct ofw_compat_data compat_data[] = { - {"nvidia,tegra124-efuse", 1}, - {NULL, 0} -}; +#define FUSES_START 0x100 +#define RD4(_sc, _r) bus_read_4((_sc)->mem_res, (FUSES_START + (_r))) +struct efuse_soc; struct tegra_efuse_softc { device_t dev; struct resource *mem_res; - int fuse_begin; + struct efuse_soc *soc; clk_t clk; - hwreset_t reset; + hwreset_t reset; }; -struct tegra_efuse_softc *dev_sc; +struct tegra_efuse_softc *dev_sc; struct tegra_sku_info tegra_sku_info; static char *tegra_rev_name[] = { [TEGRA_REVISION_UNKNOWN] = "unknown", @@ -76,18 +73,30 @@ static char *tegra_rev_name[] = { [TEGRA_REVISION_A04] = "A04", }; -/* Tegra30 and later */ -#define FUSE_VENDOR_CODE 0x100 -#define FUSE_FAB_CODE 0x104 -#define FUSE_LOT_CODE_0 0x108 -#define FUSE_LOT_CODE_1 0x10c -#define FUSE_WAFER_ID 0x110 -#define FUSE_X_COORDINATE 0x114 -#define FUSE_Y_COORDINATE 0x118 +struct efuse_soc { + void (*init)(struct tegra_efuse_softc *sc, + struct tegra_sku_info *sku); +}; + +static void tegra124_init(struct tegra_efuse_softc *sc, + struct tegra_sku_info *sku); +struct efuse_soc tegra124_efuse_soc = { + .init = tegra124_init, +}; + +static void tegra210_init(struct tegra_efuse_softc *sc, + struct tegra_sku_info *sku); +struct efuse_soc tegra210_efuse_soc = { + .init = tegra210_init, +}; + +static struct ofw_compat_data compat_data[] = { + {"nvidia,tegra124-efuse", (intptr_t)&tegra124_efuse_soc}, + {"nvidia,tegra210-efuse", (intptr_t)&tegra210_efuse_soc}, + {NULL, 0} +}; /* ---------------------- Tegra 124 specific code & data --------------- */ -#define TEGRA124_FUSE_BEGIN 0x100 - #define TEGRA124_CPU_PROCESS_CORNERS 2 #define TEGRA124_GPU_PROCESS_CORNERS 2 #define TEGRA124_SOC_PROCESS_CORNERS 2 @@ -128,12 +137,13 @@ static uint32_t tegra124_soc_process_speedos[][TEGRA124_SOC_PROCESS_CORNERS] = {0, UINT_MAX}, }; + static void tegra124_rev_sku_to_speedo_ids(struct tegra_efuse_softc *sc, struct tegra_sku_info *sku, int *threshold) { - /* Assign to default */ + /* Set default */ sku->cpu_speedo_id = 0; sku->soc_speedo_id = 0; sku->gpu_speedo_id = 0; @@ -180,7 +190,7 @@ tegra124_rev_sku_to_speedo_ids(struct tegra_efuse_softc *sc, } static void -tegra124_init_speedo(struct tegra_efuse_softc *sc, struct tegra_sku_info *sku) +tegra124_init(struct tegra_efuse_softc *sc, struct tegra_sku_info *sku) { int i, threshold; @@ -221,9 +231,175 @@ tegra124_init_speedo(struct tegra_efuse_softc *sc, struct tegra_sku_info *sku) sku->gpu_process_id = i; } - /* ----------------- End of Tegra 124 specific code & data --------------- */ +/* -------------------- Tegra 201 specific code & data ------------------- */ +#define TEGRA210_CPU_PROCESS_CORNERS 2 +#define TEGRA210_GPU_PROCESS_CORNERS 2 +#define TEGRA210_SOC_PROCESS_CORNERS 3 + +#define TEGRA210_FUSE_SKU_INFO 0x010 +#define TEGRA210_FUSE_CPU_SPEEDO_0 0x014 +#define TEGRA210_FUSE_CPU_IDDQ 0x018 +#define TEGRA210_FUSE_FT_REV 0x028 +#define TEGRA210_FUSE_CPU_SPEEDO_1 0x02c +#define TEGRA210_FUSE_CPU_SPEEDO_2 0x030 +#define TEGRA210_FUSE_SOC_SPEEDO_0 0x034 +#define TEGRA210_FUSE_SOC_SPEEDO_1 0x038 +#define TEGRA210_FUSE_SOC_SPEEDO_2 0x03c +#define TEGRA210_FUSE_SOC_IDDQ 0x040 +#define TEGRA210_FUSE_GPU_IDDQ 0x128 +#define TEGRA210_FUSE_SPARE 0x270 + +enum { + TEGRA210_THRESHOLD_INDEX_0, + TEGRA210_THRESHOLD_INDEX_1, + TEGRA210_THRESHOLD_INDEX_COUNT, +}; + +static uint32_t tegra210_cpu_process_speedos[][TEGRA210_CPU_PROCESS_CORNERS] = +{ + {2119, UINT_MAX}, + {2119, UINT_MAX}, +}; + +static uint32_t tegra210_gpu_process_speedos[][TEGRA210_GPU_PROCESS_CORNERS] = +{ + {UINT_MAX, UINT_MAX}, + {UINT_MAX, UINT_MAX}, +}; + +static uint32_t tegra210_soc_process_speedos[][TEGRA210_SOC_PROCESS_CORNERS] = +{ + {1950, 2100, UINT_MAX}, + {1950, 2100, UINT_MAX}, +}; + +static uint32_t +tegra210_get_speedo_revision(struct tegra_efuse_softc *sc) +{ + uint32_t reg; + uint32_t val; + + val = 0; + + /* Revision i encoded in spare fields */ + reg = RD4(sc, TEGRA210_FUSE_SPARE + 2 * 4); + val |= (reg & 1) << 0; + reg = RD4(sc, TEGRA210_FUSE_SPARE + 3 * 4); + val |= (reg & 1) << 1; + reg = RD4(sc, TEGRA210_FUSE_SPARE + 4 * 4); + val |= (reg & 1) << 2; + + return (val); +} + + +static void +tegra210_rev_sku_to_speedo_ids(struct tegra_efuse_softc *sc, + struct tegra_sku_info *sku, int speedo_rev, int *threshold) +{ + + /* Set defaults */ + sku->cpu_speedo_id = 0; + sku->soc_speedo_id = 0; + sku->gpu_speedo_id = 0; + *threshold = TEGRA210_THRESHOLD_INDEX_0; + + switch (sku->sku_id) { + case 0x00: /* Eng sku */ + case 0x01: /* Eng sku */ + case 0x07: + case 0x17: + case 0x27: + /* Use defaults */ + if (speedo_rev >= 2) + sku->gpu_speedo_id = 1; + break; + case 0x13: + if (speedo_rev >= 2) + sku->gpu_speedo_id = 1; + sku->cpu_speedo_id = 1; + break; + + default: + device_printf(sc->dev, " Unknown SKU ID %d\n", sku->sku_id); + break; + } +} + + +static void +tegra210_init(struct tegra_efuse_softc *sc, struct tegra_sku_info *sku) +{ + int i, threshold, speedo_rev; + uint32_t cpu_speedo[3], soc_speedo[3]; + uint32_t cpu_iddq, soc_iddq, gpu_iddq; + + cpu_speedo[0] = RD4(sc, TEGRA210_FUSE_CPU_SPEEDO_0); + cpu_speedo[1] = RD4(sc, TEGRA210_FUSE_CPU_SPEEDO_1); + cpu_speedo[2] = RD4(sc, TEGRA210_FUSE_CPU_SPEEDO_2); + soc_speedo[0] = RD4(sc, TEGRA210_FUSE_SOC_SPEEDO_0); + soc_speedo[1] = RD4(sc, TEGRA210_FUSE_SOC_SPEEDO_1); + soc_speedo[2] = RD4(sc, TEGRA210_FUSE_SOC_SPEEDO_2); + + + sku->cpu_iddq_value = RD4(sc, TEGRA210_FUSE_CPU_IDDQ); + sku->soc_iddq_value = RD4(sc, TEGRA210_FUSE_SOC_IDDQ); + sku->gpu_iddq_value = RD4(sc, TEGRA210_FUSE_GPU_IDDQ); + + cpu_iddq = RD4(sc, TEGRA210_FUSE_CPU_IDDQ) * 4; + soc_iddq = RD4(sc, TEGRA210_FUSE_SOC_IDDQ) * 4; + gpu_iddq = RD4(sc, TEGRA210_FUSE_GPU_IDDQ) * 5; + + speedo_rev = tegra210_get_speedo_revision(sc); +device_printf(sc->dev, " Speedo revision: %u\n", speedo_rev); + + if (speedo_rev >= 3) { + sku->cpu_speedo_value = cpu_speedo[0]; + sku->gpu_speedo_value = cpu_speedo[2]; + sku->soc_speedo_value = soc_speedo[0]; + } else if (speedo_rev == 2) { + sku->cpu_speedo_value = + (-1938 + (1095 * cpu_speedo[0] / 100)) / 10; + sku->gpu_speedo_value = + (-1662 + (1082 * cpu_speedo[2] / 100)) / 10; + sku->soc_speedo_value = + ( -705 + (1037 * soc_speedo[0] / 100)) / 10; + } else { + sku->cpu_speedo_value = 2100; + sku->gpu_speedo_value = cpu_speedo[2] - 75; + sku->soc_speedo_value = 1900; + } + + tegra210_rev_sku_to_speedo_ids(sc, sku, speedo_rev, &threshold); + + for (i = 0; i < TEGRA210_SOC_PROCESS_CORNERS; i++) { + if (sku->soc_speedo_value < + tegra210_soc_process_speedos[threshold][i]) + break; + } + sku->soc_process_id = i; + + for (i = 0; i < TEGRA210_CPU_PROCESS_CORNERS; i++) { + if (sku->cpu_speedo_value < + tegra210_cpu_process_speedos[threshold][i]) + break; + } + sku->cpu_process_id = i; + + for (i = 0; i < TEGRA210_GPU_PROCESS_CORNERS; i++) { + if (sku->gpu_speedo_value < + tegra210_gpu_process_speedos[threshold][i]) + break; + } + sku->gpu_process_id = i; + +} + +/* ----------------- End of Tegra 210 specific code & data --------------- */ + + uint32_t tegra_fuse_read_4(int addr) { if (dev_sc == NULL) @@ -274,6 +450,8 @@ tegra_efuse_attach(device_t dev) sc = device_get_softc(dev); sc->dev = dev; node = ofw_bus_get_node(dev); + sc->soc = (struct efuse_soc *)ofw_bus_search_compatible(dev, + compat_data)->ocd_data; /* Get the memory resource for the register mapping. */ rid = 0; @@ -307,9 +485,7 @@ tegra_efuse_attach(device_t dev) goto fail; } - /* Tegra124 specific init. */ - sc->fuse_begin = TEGRA124_FUSE_BEGIN; - tegra124_init_speedo(sc, &tegra_sku_info); + sc->soc->init(sc, &tegra_sku_info); dev_sc = sc; diff --git a/sys/arm/nvidia/tegra_ehci.c b/sys/arm/nvidia/tegra_ehci.c index de0ebd8801a..058cbe7c5fb 100644 --- a/sys/arm/nvidia/tegra_ehci.c +++ b/sys/arm/nvidia/tegra_ehci.c @@ -65,8 +65,10 @@ __FBSDID("$FreeBSD$"); /* Compatible devices. */ #define TEGRA124_EHCI 1 +#define TEGRA210_EHCI 2 static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-ehci", (uintptr_t)TEGRA124_EHCI}, + {"nvidia,tegra210-ehci", (uintptr_t)TEGRA210_EHCI}, {NULL, 0}, }; diff --git a/sys/arm/nvidia/tegra_gpio.c b/sys/arm/nvidia/tegra_gpio.c index 3cd30ad0dc3..17a7ac2a9fb 100644 --- a/sys/arm/nvidia/tegra_gpio.c +++ b/sys/arm/nvidia/tegra_gpio.c @@ -137,6 +137,7 @@ struct tegra_gpio_softc { static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-gpio", 1}, + {"nvidia,tegra210-gpio", 1}, {NULL, 0} }; diff --git a/sys/arm/nvidia/tegra_i2c.c b/sys/arm/nvidia/tegra_i2c.c index 6e5285808bc..02db5218b88 100644 --- a/sys/arm/nvidia/tegra_i2c.c +++ b/sys/arm/nvidia/tegra_i2c.c @@ -205,6 +205,7 @@ __FBSDID("$FreeBSD$"); static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-i2c", 1}, + {"nvidia,tegra210-i2c", 1}, {NULL, 0} }; enum tegra_i2c_xfer_type { @@ -678,7 +679,6 @@ tegra_i2c_attach(device_t dev) sizeof(sc->bus_freq)); if (rv != sizeof(sc->bus_freq)) { sc->bus_freq = 100000; - goto fail; } /* Request maximum frequency for I2C block 136MHz (408MHz / 3). */ diff --git a/sys/arm/nvidia/tegra_lic.c b/sys/arm/nvidia/tegra_lic.c index 0ac293f4962..d457bd4b0f7 100644 --- a/sys/arm/nvidia/tegra_lic.c +++ b/sys/arm/nvidia/tegra_lic.c @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include -#include +#include #include #include @@ -78,6 +78,7 @@ static struct resource_spec lic_spec[] = { static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-ictlr", 1}, + {"nvidia,tegra210-ictlr", 1}, {NULL, 0} }; diff --git a/sys/arm/nvidia/tegra_mc.c b/sys/arm/nvidia/tegra_mc.c index 7612e7bbff6..7ff480b55db 100644 --- a/sys/arm/nvidia/tegra_mc.c +++ b/sys/arm/nvidia/tegra_mc.c @@ -110,6 +110,7 @@ __FBSDID("$FreeBSD$"); static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-mc", 1}, + {"nvidia,tegra210-mc", 1}, {NULL, 0} }; @@ -132,7 +133,7 @@ static char *smmu_err_tbl[16] = { "Security carveout", /* 4 */ "reserved", /* 5 */ "Invalid SMMU page", /* 6 */ - "reserved", /* 7 */ + "reserved", /* 7 */ }; static void @@ -173,8 +174,8 @@ tegra_mc_intr(void *arg) err = RD4(sc, MC_ERR_STATUS); addr = RD4(sc, MC_ERR_STATUS); addr |= (uint64_t)(MC_ERR_ADR_HI(err)) << 32; - printf(" at 0x%012llX [%s %s %s] - %s error.\n", - addr, + printf(" at 0x%012jX [%s %s %s] - %s error.\n", + (uintmax_t)addr, stat & MC_ERR_SWAP ? "Swap, " : "", stat & MC_ERR_SECURITY ? "Sec, " : "", stat & MC_ERR_RW ? "Write" : "Read", diff --git a/sys/arm/nvidia/tegra_pcie.c b/sys/arm/nvidia/tegra_pcie.c index 710480c146c..44eb682a40b 100644 --- a/sys/arm/nvidia/tegra_pcie.c +++ b/sys/arm/nvidia/tegra_pcie.c @@ -179,28 +179,36 @@ __FBSDID("$FreeBSD$"); #define AFI_PEXBIAS_CTRL 0x168 -/* FPCI Address space */ -#define FPCI_MAP_IO 0xfdfc000000ULL -#define FPCI_MAP_TYPE0_CONFIG 0xfdfc000000ULL -#define FPCI_MAP_TYPE1_CONFIG 0xfdff000000ULL -#define FPCI_MAP_EXT_TYPE0_CONFIG 0xfe00000000ULL -#define FPCI_MAP_EXT_TYPE1_CONFIG 0xfe10000000ULL - /* Configuration space */ -#define RP_VEND_XP 0x00000F00 -#define RP_VEND_XP_DL_UP (1 << 30) +#define RP_VEND_XP 0x0F00 +#define RP_VEND_XP_DL_UP (1 << 30) -#define RP_PRIV_MISC 0x00000FE0 -#define RP_PRIV_MISC_PRSNT_MAP_EP_PRSNT (0xE << 0) -#define RP_PRIV_MISC_PRSNT_MAP_EP_ABSNT (0xF << 0) +#define RP_VEND_CTL2 0x0fa8 +#define RP_VEND_CTL2_PCA_ENABLE (1 << 7) + +#define RP_PRIV_MISC 0x0FE0 +#define RP_PRIV_MISC_PRSNT_MAP_EP_PRSNT (0xE << 0) +#define RP_PRIV_MISC_PRSNT_MAP_EP_ABSNT (0xF << 0) + +#define RP_LINK_CONTROL_STATUS 0x0090 +#define RP_LINK_CONTROL_STATUS_DL_LINK_ACTIVE 0x20000000 +#define RP_LINK_CONTROL_STATUS_LINKSTAT_MASK 0x3fff0000 + +/* PADS space */ +#define PADS_REFCLK_CFG0 0x000c8 +#define PADS_REFCLK_CFG1 0x000cc -#define RP_LINK_CONTROL_STATUS 0x00000090 -#define RP_LINK_CONTROL_STATUS_DL_LINK_ACTIVE 0x20000000 -#define RP_LINK_CONTROL_STATUS_LINKSTAT_MASK 0x3fff0000 /* Wait 50 ms (per port) for link. */ #define TEGRA_PCIE_LINKUP_TIMEOUT 50000 +/* FPCI Address space */ +#define FPCI_MAP_IO 0xFDFC000000ULL +#define FPCI_MAP_TYPE0_CONFIG 0xFDFC000000ULL +#define FPCI_MAP_TYPE1_CONFIG 0xFDFF000000ULL +#define FPCI_MAP_EXT_TYPE0_CONFIG 0xFE00000000ULL +#define FPCI_MAP_EXT_TYPE1_CONFIG 0xFE10000000ULL + #define TEGRA_PCIB_MSI_ENABLE #define DEBUG @@ -224,7 +232,7 @@ __FBSDID("$FreeBSD$"); #define PCI_CFG_FUN(fun) (((fun) & 0x07) << 8) #define PCI_CFG_BASE_REG(reg) ((reg) & 0xff) -#define PADS_WR4(_sc, _r, _v) bus_write_4((_sc)-pads_mem_res, (_r), (_v)) +#define PADS_WR4(_sc, _r, _v) bus_write_4((_sc)->pads_mem_res, (_r), (_v)) #define PADS_RD4(_sc, _r) bus_read_4((_sc)->pads_mem_res, (_r)) #define AFI_WR4(_sc, _r, _v) bus_write_4((_sc)->afi_mem_res, (_r), (_v)) #define AFI_RD4(_sc, _r) bus_read_4((_sc)->afi_mem_res, (_r)) @@ -246,10 +254,57 @@ static struct { {AFI_MSI_AXI_BAR_ST, AFI_MSI_FPCI_BAR_ST, AFI_MSI_BAR_SZ}, /* MSI 9 */ }; + +struct pcie_soc { + char **regulator_names; + bool cml_clk; + bool pca_enable; + uint32_t pads_refclk_cfg0; + uint32_t pads_refclk_cfg1; +}; + +/* Tegra 124 config. */ +static char *tegra124_reg_names[] = { + "avddio-pex-supply", + "dvddio-pex-supply", + "avdd-pex-pll-supply", + "hvdd-pex-supply", + "hvdd-pex-pll-e-supply", + "vddio-pex-ctl-supply", + "avdd-pll-erefe-supply", + NULL +}; + +static struct pcie_soc tegra124_soc = { + .regulator_names = tegra124_reg_names, + .cml_clk = true, + .pca_enable = false, + .pads_refclk_cfg0 = 0x44ac44ac, +}; + +/* Tegra 210 config. */ +static char *tegra210_reg_names[] = { + "avdd-pll-uerefe-supply", + "hvddio-pex-supply", + "dvddio-pex-supply", + "dvdd-pex-pll-supply", + "hvdd-pex-pll-e-supply", + "vddio-pex-ctl-supply", + NULL +}; + +static struct pcie_soc tegra210_soc = { + .regulator_names = tegra210_reg_names, + .cml_clk = true, + .pca_enable = true, + .pads_refclk_cfg0 = 0x90b890b8, +}; + /* Compatible devices. */ static struct ofw_compat_data compat_data[] = { - {"nvidia,tegra124-pcie", 1}, - {NULL, 0}, + {"nvidia,tegra124-pcie", (uintptr_t)&tegra124_soc}, + {"nvidia,tegra210-pcie", (uintptr_t)&tegra210_soc}, + {NULL, 0}, }; #define TEGRA_FLAG_MSI_USED 0x0001 @@ -277,6 +332,7 @@ struct tegra_pcib_port { struct tegra_pcib_softc { struct ofw_pci_softc ofw_pci; device_t dev; + struct pcie_soc *soc; struct mtx mtx; struct resource *pads_mem_res; struct resource *afi_mem_res; @@ -297,13 +353,7 @@ struct tegra_pcib_softc { hwreset_t hwreset_pex; hwreset_t hwreset_afi; hwreset_t hwreset_pcie_x; - regulator_t supply_avddio_pex; - regulator_t supply_dvddio_pex; - regulator_t supply_avdd_pex_pll; - regulator_t supply_hvdd_pex; - regulator_t supply_hvdd_pex_pll_e; - regulator_t supply_vddio_pex_ctl; - regulator_t supply_avdd_pll_erefe; + regulator_t regulators[16]; /* Safe maximum */ vm_offset_t msi_page; /* VA of MSI page */ bus_addr_t cfg_base_addr; /* base address of config */ @@ -801,7 +851,7 @@ tegra_pcib_pex_ctrl(struct tegra_pcib_softc *sc, int port) static int tegra_pcib_enable_fdt_resources(struct tegra_pcib_softc *sc) { - int rv; + int i, rv; rv = hwreset_assert(sc->hwreset_pcie_x); if (rv != 0) { @@ -821,48 +871,17 @@ tegra_pcib_enable_fdt_resources(struct tegra_pcib_softc *sc) tegra_powergate_power_off(TEGRA_POWERGATE_PCX); - /* Power supplies. */ - rv = regulator_enable(sc->supply_avddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avddio_pex' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_dvddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'dvddio_pex' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_pex_pll); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd-pex-pll' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_hvdd_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'hvdd-pex-supply' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_hvdd_pex_pll_e); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'hvdd-pex-pll-e-supply' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_vddio_pex_ctl); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'vddio-pex-ctl' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_pll_erefe); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd-pll-erefe-supply' regulator\n"); - return (rv); + /* Regulators. */ + for (i = 0; i < nitems(sc->regulators); i++) { + if (sc->regulators[i] == NULL) + continue; + rv = regulator_enable(sc->regulators[i]); + if (rv != 0) { + device_printf(sc->dev, + "Cannot enable '%s' regulator\n", + sc->soc->regulator_names[i]); + return (rv); + } } rv = tegra_powergate_sequence_power_up(TEGRA_POWERGATE_PCX, @@ -883,16 +902,19 @@ tegra_pcib_enable_fdt_resources(struct tegra_pcib_softc *sc) device_printf(sc->dev, "Cannot enable 'afi' clock\n"); return (rv); } - rv = clk_enable(sc->clk_cml); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable 'cml' clock\n"); - return (rv); + if (sc->soc->cml_clk) { + rv = clk_enable(sc->clk_cml); + if (rv != 0) { + device_printf(sc->dev, "Cannot enable 'cml' clock\n"); + return (rv); + } } rv = clk_enable(sc->clk_pll_e); if (rv != 0) { device_printf(sc->dev, "Cannot enable 'pll_e' clock\n"); return (rv); } + return (0); } @@ -975,57 +997,23 @@ tegra_pcib_parse_fdt_resources(struct tegra_pcib_softc *sc, phandle_t node) { phandle_t child; struct tegra_pcib_port *port; - int rv; + int i, rv; - /* Power supplies. */ - rv = regulator_get_by_ofw_property(sc->dev, 0, "avddio-pex-supply", - &sc->supply_avddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avddio-pex' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "dvddio-pex-supply", - &sc->supply_dvddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'dvddio-pex' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-pex-pll-supply", - &sc->supply_avdd_pex_pll); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-pex-pll' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "hvdd-pex-supply", - &sc->supply_hvdd_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'hvdd-pex' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "hvdd-pex-pll-e-supply", - &sc->supply_hvdd_pex_pll_e); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'hvdd-pex-pll-e' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "vddio-pex-ctl-supply", - &sc->supply_vddio_pex_ctl); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'vddio-pex-ctl' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-pll-erefe-supply", - &sc->supply_avdd_pll_erefe); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-pll-erefe' regulator\n"); - return (ENXIO); + /* Regulators. */ + for (i = 0; sc->soc->regulator_names[i] != NULL; i++) { + if (i >= nitems(sc->regulators)) { + device_printf(sc->dev, + "Too many regulators present in DT.\n"); + return (EOVERFLOW); + } + rv = regulator_get_by_ofw_property(sc->dev, 0, + sc->soc->regulator_names[i], sc->regulators + i); + if (rv != 0) { + device_printf(sc->dev, + "Cannot get '%s' regulator\n", + sc->soc->regulator_names[i]); + return (ENXIO); + } } /* Resets. */ @@ -1061,10 +1049,12 @@ tegra_pcib_parse_fdt_resources(struct tegra_pcib_softc *sc, phandle_t node) device_printf(sc->dev, "Cannot get 'pll_e' clock\n"); return (ENXIO); } - rv = clk_get_by_ofw_name(sc->dev, 0, "cml", &sc->clk_cml); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'cml' clock\n"); - return (ENXIO); + if (sc->soc->cml_clk) { + rv = clk_get_by_ofw_name(sc->dev, 0, "cml", &sc->clk_cml); + if (rv != 0) { + device_printf(sc->dev, "Cannot get 'cml' clock\n"); + return (ENXIO); + } } /* Ports */ @@ -1196,6 +1186,14 @@ tegra_pcib_port_enable(struct tegra_pcib_softc *sc, int port_num) reg |= AFI_PEX_CTRL_RST_L; AFI_WR4(sc, port->afi_pex_ctrl, reg); + if (sc->soc->pca_enable) { + reg = tegra_pcib_read_config(sc->dev, 0, port->port_idx, 0, + RP_VEND_CTL2, 4); + reg |= RP_VEND_CTL2_PCA_ENABLE; + tegra_pcib_write_config(sc->dev, 0, port->port_idx, 0, + RP_VEND_CTL2, reg, 4); + } + rv = tegra_pcib_wait_for_link(sc, port); if (bootverbose) device_printf(sc->dev, " port %d (%d lane%s): Link is %s\n", @@ -1259,6 +1257,7 @@ tegra_pcib_enable(struct tegra_pcib_softc *sc) device_printf(sc->dev, "Cannot enable FDT resources\n"); return (rv); } + /* Enable PLLE control. */ reg = AFI_RD4(sc, AFI_PLLE_CONTROL); reg &= ~AFI_PLLE_CONTROL_BYPASS_PADS2PLLE_CONTROL; @@ -1310,6 +1309,11 @@ tegra_pcib_enable(struct tegra_pcib_softc *sc) } } + /* Configure PCIe reference clock */ + PADS_WR4(sc, PADS_REFCLK_CFG0, sc->soc->pads_refclk_cfg0); + if (sc->num_ports > 2) + PADS_WR4(sc, PADS_REFCLK_CFG1, sc->soc->pads_refclk_cfg1); + rv = hwreset_deassert(sc->hwreset_pcie_x); if (rv != 0) { device_printf(sc->dev, "Cannot unreset 'pci_x' reset\n"); @@ -1449,6 +1453,8 @@ tegra_pcib_attach(device_t dev) mtx_init(&sc->mtx, "msi_mtx", NULL, MTX_DEF); node = ofw_bus_get_node(dev); + sc->soc = (struct pcie_soc *)ofw_bus_search_compatible(dev, + compat_data)->ocd_data; rv = tegra_pcib_parse_fdt_resources(sc, node); if (rv != 0) { diff --git a/sys/arm/nvidia/tegra_pmc.h b/sys/arm/nvidia/tegra_pmc.h index 933c408a00d..4fe7299fb87 100644 --- a/sys/arm/nvidia/tegra_pmc.h +++ b/sys/arm/nvidia/tegra_pmc.h @@ -39,18 +39,18 @@ enum tegra_suspend_mode { /* PARTIDs for powergate */ enum tegra_powergate_id { TEGRA_POWERGATE_CRAIL = 0, - TEGRA_POWERGATE_TD = 1, + TEGRA_POWERGATE_TD = 1, /* Tegra124 only */ TEGRA_POWERGATE_VE = 2, TEGRA_POWERGATE_PCX = 3, - TEGRA_POWERGATE_VDE = 4, - TEGRA_POWERGATE_L2C = 5, + TEGRA_POWERGATE_VDE = 4, /* Tegra124 only */ + TEGRA_POWERGATE_L2C = 5, /* Tegra124 only */ TEGRA_POWERGATE_MPE = 6, - TEGRA_POWERGATE_HEG = 7, + TEGRA_POWERGATE_HEG = 7, /* Tegra124 only */ TEGRA_POWERGATE_SAX = 8, TEGRA_POWERGATE_CE1 = 9, TEGRA_POWERGATE_CE2 = 10, TEGRA_POWERGATE_CE3 = 11, - TEGRA_POWERGATE_CELP = 12, + TEGRA_POWERGATE_CELP = 12, /* Tegra124 only */ /* */ TEGRA_POWERGATE_CE0 = 14, TEGRA_POWERGATE_C0NC = 15, @@ -63,9 +63,13 @@ enum tegra_powergate_id { TEGRA_POWERGATE_XUSBC = 22, TEGRA_POWERGATE_VIC = 23, TEGRA_POWERGATE_IRAM = 24, + TEGRA_POWERGATE_NVDEC = 25, /* Tegra210 only */ + TEGRA_POWERGATE_NVJPG = 26, /* Tegra210 only */ + TEGRA_POWERGATE_AUD = 27, /* Tegra210 only */ + TEGRA_POWERGATE_DFD = 28, /* Tegra210 only */ + TEGRA_POWERGATE_VE2 = 29, /* Tegra210 only */ /* */ TEGRA_POWERGATE_3D = 32 - }; /* PARTIDs for power rails */ diff --git a/sys/arm/nvidia/tegra_sdhci.c b/sys/arm/nvidia/tegra_sdhci.c index cf02486c66f..9d7fbb0ddb1 100644 --- a/sys/arm/nvidia/tegra_sdhci.c +++ b/sys/arm/nvidia/tegra_sdhci.c @@ -95,6 +95,7 @@ __FBSDID("$FreeBSD$"); /* Compatible devices. */ static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-sdhci", 1}, + {"nvidia,tegra210-sdhci", 1}, {NULL, 0}, }; @@ -242,15 +243,12 @@ tegra_sdhci_probe(device_t dev) if (!ofw_bus_status_okay(dev)) return (ENXIO); - if (ofw_bus_is_compatible(dev, "nvidia,tegra124-sdhci")) { - device_set_desc(dev, "Tegra SDHCI controller"); - } else - return (ENXIO); cd = ofw_bus_search_compatible(dev, compat_data); if (cd->ocd_data == 0) return (ENXIO); node = ofw_bus_get_node(dev); + device_set_desc(dev, "Tegra SDHCI controller"); /* Allow dts to patch quirks, slots, and max-frequency. */ if ((OF_getencprop(node, "quirks", &cid, sizeof(cid))) > 0) @@ -291,25 +289,27 @@ tegra_sdhci_attach(device_t dev) goto fail; } - if (bus_setup_intr(dev, sc->irq_res, INTR_TYPE_BIO | INTR_MPSAFE, - NULL, tegra_sdhci_intr, sc, &sc->intr_cookie)) { - device_printf(dev, "cannot setup interrupt handler\n"); - rv = ENXIO; - goto fail; - } - rv = hwreset_get_by_ofw_name(sc->dev, 0, "sdhci", &sc->reset); if (rv != 0) { device_printf(sc->dev, "Cannot get 'sdhci' reset\n"); goto fail; } - rv = hwreset_deassert(sc->reset); + rv = hwreset_assert(sc->reset); if (rv != 0) { - device_printf(dev, "Cannot unreset 'sdhci' reset\n"); + device_printf(dev, "Cannot reset 'sdhci' reset\n"); goto fail; } - gpio_pin_get_by_ofw_property(sc->dev, node, "power-gpios", &sc->gpio_power); + gpio_pin_get_by_ofw_property(sc->dev, node, "power-gpios", + &sc->gpio_power); + + if (OF_hasprop(node, "assigned-clocks")) { + rv = clk_set_assigned(sc->dev, node); + if (rv != 0) { + device_printf(dev, "Cannot set assigned clocks\n"); + goto fail; + } + } rv = clk_get_by_ofw_index(dev, 0, 0, &sc->clk); if (rv != 0) { @@ -330,8 +330,14 @@ tegra_sdhci_attach(device_t dev) device_printf(dev, "Cannot get clock frequency\n"); goto fail; } + DELAY(4000); + rv = hwreset_deassert(sc->reset); + if (rv != 0) { + device_printf(dev, "Cannot unreset 'sdhci' reset\n"); + goto fail; + } if (bootverbose) - device_printf(dev, " Base MMC clock: %lld\n", freq); + device_printf(dev, " Base MMC clock: %jd\n", (uintmax_t)freq); /* Fill slot information. */ sc->max_clk = (int)freq; @@ -369,6 +375,12 @@ tegra_sdhci_attach(device_t dev) sc->slot.max_clk = sc->max_clk; sc->slot.caps = sc->caps; + if (bus_setup_intr(dev, sc->irq_res, INTR_TYPE_BIO | INTR_MPSAFE, + NULL, tegra_sdhci_intr, sc, &sc->intr_cookie)) { + device_printf(dev, "cannot setup interrupt handler\n"); + rv = ENXIO; + goto fail; + } rv = sdhci_init_slot(dev, &sc->slot, 0); if (rv != 0) { goto fail; diff --git a/sys/arm/nvidia/tegra_soctherm.c b/sys/arm/nvidia/tegra_soctherm.c index a329f8e0316..d82b0748883 100644 --- a/sys/arm/nvidia/tegra_soctherm.c +++ b/sys/arm/nvidia/tegra_soctherm.c @@ -86,52 +86,55 @@ __FBSDID("$FreeBSD$"); #define TSENSOR_STATUS2_TEMP_MAX(x) (((x) >> 16) & 0xffff) #define TSENSOR_STATUS2_TEMP_MIN(x) (((x) >> 0) & 0xffff) -/* Global registers */ -#define TSENSOR_PDIV 0x1c0 -#define TSENSOR_PDIV_T124 0x8888 -#define TSENSOR_HOTSPOT_OFF 0x1c4 -#define TSENSOR_HOTSPOT_OFF_T124 0x00060600 -#define TSENSOR_TEMP1 0x1c8 -#define TSENSOR_TEMP2 0x1cc /* Readbacks */ -#define READBACK_VALUE_MASK 0xff00 -#define READBACK_VALUE_SHIFT 8 +#define READBACK_VALUE(x) (((x) >> 8) & 0xff) #define READBACK_ADD_HALF (1 << 7) #define READBACK_NEGATE (1 << 0) +/* Global registers */ +#define TSENSOR_PDIV 0x1c0 +#define TSENSOR_HOTSPOT_OFF 0x1c4 +#define TSENSOR_TEMP1 0x1c8 +#define TSENSOR_TEMP2 0x1cc + /* Fuses */ #define FUSE_TSENSOR_CALIB_CP_TS_BASE_SHIFT 0 #define FUSE_TSENSOR_CALIB_CP_TS_BASE_BITS 13 #define FUSE_TSENSOR_CALIB_FT_TS_BASE_SHIFT 13 #define FUSE_TSENSOR_CALIB_FT_TS_BASE_BITS 13 -#define FUSE_TSENSOR8_CALIB 0x180 -#define FUSE_TSENSOR8_CALIB_CP_TS_BASE(x) (((x) >> 0) & 0x3ff) -#define FUSE_TSENSOR8_CALIB_FT_TS_BASE(x) (((x) >> 10) & 0x7ff) +/* Layout is different for Tegra124 and Tegra210 */ +#define FUSE_TSENSOR_COMMON 0x180 +#define TEGRA124_FUSE_COMMON_CP_TS_BASE(x) (((x) >> 0) & 0x3ff) +#define TEGRA124_FUSE_COMMON_FT_TS_BASE(x) (((x) >> 10) & 0x7ff) +#define TEGRA124_FUSE_COMMON_SHIFT_FT_SHIFT 21 +#define TEGRA124_FUSE_COMMON_SHIFT_FT_BITS 5 +#define TEGRA210_FUSE_COMMON_CP_TS_BASE(x) (((x) >> 11) & 0x3ff) +#define TEGRA210_FUSE_COMMON_FT_TS_BASE(x) (((x) >> 21) & 0x7ff) +#define TEGRA210_FUSE_COMMON_SHIFT_CP_SHIFT 0 +#define TEGRA210_FUSE_COMMON_SHIFT_CP_BITS 6 +#define TEGRA210_FUSE_COMMON_SHIFT_FT_SHIFT 6 +#define TEGRA210_FUSE_COMMON_SHIFT_FT_BITS 5 + + +/* Only for Tegra124 */ #define FUSE_SPARE_REALIGNMENT_REG 0x1fc #define FUSE_SPARE_REALIGNMENT_REG_SHIFT_CP_SHIFT 0 #define FUSE_SPARE_REALIGNMENT_REG_SHIFT_CP_BITS 6 -#define FUSE_SPARE_REALIGNMENT_REG_SHIFT_FT_SHIFT 21 -#define FUSE_SPARE_REALIGNMENT_REG_SHIFT_FT_BITS 5 -#define FUSE_SPARE_REALIGNMENT_REG_SHIFT_CP(x) (((x) >> 0) & 0x3f) -#define FUSE_SPARE_REALIGNMENT_REG_SHIFT_FT(x) (((x) >> 21) & 0x1f) -#define NOMINAL_CALIB_FT_T124 105 -#define NOMINAL_CALIB_CP_T124 25 +#define TEGRA124_NOMINAL_CALIB_FT 105 +#define TEGRA124_NOMINAL_CALIB_CP 25 + +#define TEGRA210_NOMINAL_CALIB_FT 105 +#define TEGRA210_NOMINAL_CALIB_CP 25 #define WR4(_sc, _r, _v) bus_write_4((_sc)->mem_res, (_r), (_v)) #define RD4(_sc, _r) bus_read_4((_sc)->mem_res, (_r)) static struct sysctl_ctx_list soctherm_sysctl_ctx; -struct soctherm_shared_cal { - uint32_t base_cp; - uint32_t base_ft; - int32_t actual_temp_cp; - int32_t actual_temp_ft; -}; struct tsensor_cfg { uint32_t tall; uint32_t tsample; @@ -142,10 +145,16 @@ struct tsensor_cfg { uint32_t pdiv_ate; }; +struct soctherm_shared_cal { + uint32_t base_cp; + uint32_t base_ft; + int32_t actual_temp_cp; + int32_t actual_temp_ft; +}; + struct tsensor { char *name; int id; - struct tsensor_cfg *cfg; bus_addr_t sensor_base; bus_addr_t calib_fuse; int fuse_corr_alpha; @@ -155,6 +164,7 @@ struct tsensor { int16_t therm_b; }; +struct soctherm_soc; struct soctherm_softc { device_t dev; struct resource *mem_res; @@ -163,16 +173,22 @@ struct soctherm_softc { clk_t tsensor_clk; clk_t soctherm_clk; - hwreset_t reset; + hwreset_t reset; - int ntsensors; + struct soctherm_soc *soc; + struct soctherm_shared_cal shared_cal; +}; + +struct soctherm_soc { + void (*shared_cal)(struct soctherm_softc *sc); + uint32_t tsensor_pdiv; + uint32_t tsensor_hotspot_off; + struct tsensor_cfg *tsensor_cfg; struct tsensor *tsensors; + int ntsensors; }; -static struct ofw_compat_data compat_data[] = { - {"nvidia,tegra124-soctherm", 1}, - {NULL, 0}, -}; +/* Tegra124 config */ static struct tsensor_cfg t124_tsensor_config = { .tall = 16300, @@ -188,7 +204,6 @@ static struct tsensor t124_tsensors[] = { { .name = "cpu0", .id = TEGRA124_SOCTHERM_SENSOR_CPU, - .cfg = &t124_tsensor_config, .sensor_base = 0x0c0, .calib_fuse = 0x098, .fuse_corr_alpha = 1135400, @@ -197,7 +212,6 @@ static struct tsensor t124_tsensors[] = { { .name = "cpu1", .id = -1, - .cfg = &t124_tsensor_config, .sensor_base = 0x0e0, .calib_fuse = 0x084, .fuse_corr_alpha = 1122220, @@ -206,7 +220,6 @@ static struct tsensor t124_tsensors[] = { { .name = "cpu2", .id = -1, - .cfg = &t124_tsensor_config, .sensor_base = 0x100, .calib_fuse = 0x088, .fuse_corr_alpha = 1127000, @@ -215,7 +228,6 @@ static struct tsensor t124_tsensors[] = { { .name = "cpu3", .id = -1, - .cfg = &t124_tsensor_config, .sensor_base = 0x120, .calib_fuse = 0x12c, .fuse_corr_alpha = 1110900, @@ -224,7 +236,6 @@ static struct tsensor t124_tsensors[] = { { .name = "mem0", .id = TEGRA124_SOCTHERM_SENSOR_MEM, - .cfg = &t124_tsensor_config, .sensor_base = 0x140, .calib_fuse = 0x158, .fuse_corr_alpha = 1122300, @@ -233,7 +244,6 @@ static struct tsensor t124_tsensors[] = { { .name = "mem1", .id = -1, - .cfg = &t124_tsensor_config, .sensor_base = 0x160, .calib_fuse = 0x15c, .fuse_corr_alpha = 1145700, @@ -242,7 +252,6 @@ static struct tsensor t124_tsensors[] = { { .name = "gpu", .id = TEGRA124_SOCTHERM_SENSOR_GPU, - .cfg = &t124_tsensor_config, .sensor_base = 0x180, .calib_fuse = 0x154, .fuse_corr_alpha = 1120100, @@ -251,7 +260,6 @@ static struct tsensor t124_tsensors[] = { { .name = "pllX", .id = TEGRA124_SOCTHERM_SENSOR_PLLX, - .cfg = &t124_tsensor_config, .sensor_base = 0x1a0, .calib_fuse = 0x160, .fuse_corr_alpha = 1106500, @@ -259,6 +267,112 @@ static struct tsensor t124_tsensors[] = { }, }; +static void tegra124_shared_cal(struct soctherm_softc *sc); + +static struct soctherm_soc tegra124_soc = { + .shared_cal = tegra124_shared_cal, + .tsensor_pdiv = 0x8888, + .tsensor_hotspot_off = 0x00060600 , + .tsensor_cfg = &t124_tsensor_config, + .tsensors = t124_tsensors, + .ntsensors = nitems(t124_tsensors), +}; + +/* Tegra210 config */ +static struct tsensor_cfg t210_tsensor_config = { + .tall = 16300, + .tsample = 120, + .tiddq_en = 1, + .ten_count = 1, + .pdiv = 8, + .tsample_ate = 480, + .pdiv_ate = 8 +}; + +static struct tsensor t210_tsensors[] = { + { + .name = "cpu0", + .id = TEGRA124_SOCTHERM_SENSOR_CPU, + .sensor_base = 0x0c0, + .calib_fuse = 0x098, + .fuse_corr_alpha = 1085000, + .fuse_corr_beta = 3244200, + }, + { + .name = "cpu1", + .id = -1, + .sensor_base = 0x0e0, + .calib_fuse = 0x084, + .fuse_corr_alpha = 1126200, + .fuse_corr_beta = -67500, + }, + { + .name = "cpu2", + .id = -1, + .sensor_base = 0x100, + .calib_fuse = 0x088, + .fuse_corr_alpha = 1098400, + .fuse_corr_beta = 2251100, + }, + { + .name = "cpu3", + .id = -1, + .sensor_base = 0x120, + .calib_fuse = 0x12c, + .fuse_corr_alpha = 1108000, + .fuse_corr_beta = 602700, + }, + { + .name = "mem0", + .id = TEGRA124_SOCTHERM_SENSOR_MEM, + .sensor_base = 0x140, + .calib_fuse = 0x158, + .fuse_corr_alpha = 1069200, + .fuse_corr_beta = 3549900, + }, + { + .name = "mem1", + .id = -1, + .sensor_base = 0x160, + .calib_fuse = 0x15c, + .fuse_corr_alpha = 1173700, + .fuse_corr_beta = -6263600, + }, + { + .name = "gpu", + .id = TEGRA124_SOCTHERM_SENSOR_GPU, + .sensor_base = 0x180, + .calib_fuse = 0x154, + .fuse_corr_alpha = 1074300, + .fuse_corr_beta = 2734900, + }, + { + .name = "pllX", + .id = TEGRA124_SOCTHERM_SENSOR_PLLX, + .sensor_base = 0x1a0, + .calib_fuse = 0x160, + .fuse_corr_alpha = 1039700, + .fuse_corr_beta = 6829100, + }, +}; + +static void tegra210_shared_cal(struct soctherm_softc *sc); + +static struct soctherm_soc tegra210_soc = { + .shared_cal = tegra210_shared_cal, + .tsensor_pdiv = 0x8888, + .tsensor_hotspot_off = 0x000A0500 , + .tsensor_cfg = &t210_tsensor_config, + .tsensors = t210_tsensors, + .ntsensors = nitems(t210_tsensors), +}; + +static struct ofw_compat_data compat_data[] = { + {"nvidia,tegra124-soctherm", (uintptr_t)&tegra124_soc}, + {"nvidia,tegra210-soctherm", (uintptr_t)&tegra210_soc}, + {NULL, 0}, +}; + /* Extract signed integer bitfield from register */ static int extract_signed(uint32_t reg, int shift, int bits) @@ -272,35 +386,39 @@ extract_signed(uint32_t reg, int shift, int bits) return ((int32_t)val); } -static inline int64_t div64_s64_precise(int64_t a, int64_t b) +static inline +int64_t div64_s64_precise(int64_t a, int64_t b) { int64_t r, al; al = a << 16; r = (al * 2 + 1) / (2 * b); - return r >> 16; + return (r >> 16); } static void -get_shared_cal(struct soctherm_softc *sc, struct soctherm_shared_cal *cal) +tegra124_shared_cal(struct soctherm_softc *sc) { uint32_t val; int calib_cp, calib_ft; + struct soctherm_shared_cal *cal; - val = tegra_fuse_read_4(FUSE_TSENSOR8_CALIB); - cal->base_cp = FUSE_TSENSOR8_CALIB_CP_TS_BASE(val); - cal->base_ft = FUSE_TSENSOR8_CALIB_FT_TS_BASE(val); + cal = &sc->shared_cal; + val = tegra_fuse_read_4(FUSE_TSENSOR_COMMON); + cal->base_cp = TEGRA124_FUSE_COMMON_CP_TS_BASE(val); + cal->base_ft = TEGRA124_FUSE_COMMON_FT_TS_BASE(val); + + calib_ft = extract_signed(val, + TEGRA124_FUSE_COMMON_SHIFT_FT_SHIFT, + TEGRA124_FUSE_COMMON_SHIFT_FT_BITS); val = tegra_fuse_read_4(FUSE_SPARE_REALIGNMENT_REG); - calib_ft = extract_signed(val, - FUSE_SPARE_REALIGNMENT_REG_SHIFT_FT_SHIFT, - FUSE_SPARE_REALIGNMENT_REG_SHIFT_FT_BITS); calib_cp = extract_signed(val, FUSE_SPARE_REALIGNMENT_REG_SHIFT_CP_SHIFT, FUSE_SPARE_REALIGNMENT_REG_SHIFT_CP_BITS); - cal->actual_temp_cp = 2 * NOMINAL_CALIB_CP_T124 + calib_cp; - cal->actual_temp_ft = 2 * NOMINAL_CALIB_FT_T124 + calib_ft; + cal->actual_temp_cp = 2 * TEGRA124_NOMINAL_CALIB_CP + calib_cp; + cal->actual_temp_ft = 2 * TEGRA124_NOMINAL_CALIB_FT + calib_ft; #ifdef DEBUG printf("%s: base_cp: %u, base_ft: %d," " actual_temp_cp: %d, actual_temp_ft: %d\n", @@ -310,35 +428,70 @@ get_shared_cal(struct soctherm_softc *sc, struct soctherm_shared_cal *cal) } static void -tsensor_calibration(struct tsensor *sensor, struct soctherm_shared_cal *shared) +tegra210_shared_cal(struct soctherm_softc *sc) +{ + uint32_t val; + int calib_cp, calib_ft; + struct soctherm_shared_cal *cal; + + cal = &sc->shared_cal; + + val = tegra_fuse_read_4(FUSE_TSENSOR_COMMON); + cal->base_cp = TEGRA210_FUSE_COMMON_CP_TS_BASE(val); + cal->base_ft = TEGRA210_FUSE_COMMON_FT_TS_BASE(val); + + calib_ft = extract_signed(val, + TEGRA210_FUSE_COMMON_SHIFT_FT_SHIFT, + TEGRA210_FUSE_COMMON_SHIFT_FT_BITS); + calib_cp = extract_signed(val, + TEGRA210_FUSE_COMMON_SHIFT_CP_SHIFT, + TEGRA210_FUSE_COMMON_SHIFT_CP_BITS); + + cal->actual_temp_cp = 2 * TEGRA210_NOMINAL_CALIB_CP + calib_cp; + cal->actual_temp_ft = 2 * TEGRA210_NOMINAL_CALIB_FT + calib_ft; +#ifdef DEBUG + printf("%s: base_cp: %u, base_ft: %d," + " actual_temp_cp: %d, actual_temp_ft: %d\n", + __func__, cal->base_cp, cal->base_ft, + cal->actual_temp_cp, cal->actual_temp_ft); +#endif +} + +static void +tsensor_calibration(struct soctherm_softc *sc, struct tsensor *sensor) { uint32_t val; int mult, div, calib_cp, calib_ft; int actual_tsensor_ft, actual_tsensor_cp, delta_sens, delta_temp; int temp_a, temp_b; + struct tsensor_cfg *cfg; + struct soctherm_shared_cal *cal; int64_t tmp; + cfg = sc->soc->tsensor_cfg; + cal = &sc->shared_cal; + val = tegra_fuse_read_4(sensor->calib_fuse); calib_cp = extract_signed(val, FUSE_TSENSOR_CALIB_CP_TS_BASE_SHIFT, FUSE_TSENSOR_CALIB_CP_TS_BASE_BITS); - actual_tsensor_cp = shared->base_cp * 64 + calib_cp; + actual_tsensor_cp = cal->base_cp * 64 + calib_cp; calib_ft = extract_signed(val, FUSE_TSENSOR_CALIB_FT_TS_BASE_SHIFT, FUSE_TSENSOR_CALIB_FT_TS_BASE_BITS); - actual_tsensor_ft = shared->base_ft * 32 + calib_ft; + actual_tsensor_ft = cal->base_ft * 32 + calib_ft; delta_sens = actual_tsensor_ft - actual_tsensor_cp; - delta_temp = shared->actual_temp_ft - shared->actual_temp_cp; - mult = sensor->cfg->pdiv * sensor->cfg->tsample_ate; - div = sensor->cfg->tsample * sensor->cfg->pdiv_ate; + delta_temp = cal->actual_temp_ft - cal->actual_temp_cp; + mult = cfg->pdiv * cfg->tsample_ate; + div = cfg->tsample * cfg->pdiv_ate; temp_a = div64_s64_precise((int64_t) delta_temp * (1LL << 13) * mult, (int64_t) delta_sens * div); - tmp = (int64_t)actual_tsensor_ft * shared->actual_temp_cp - - (int64_t)actual_tsensor_cp * shared->actual_temp_ft; + tmp = (int64_t)actual_tsensor_ft * cal->actual_temp_cp - + (int64_t)actual_tsensor_cp * cal->actual_temp_ft; temp_b = div64_s64_precise(tmp, (int64_t)delta_sens); temp_a = div64_s64_precise((int64_t)temp_a * sensor->fuse_corr_alpha, @@ -353,31 +506,32 @@ tsensor_calibration(struct tsensor *sensor, struct soctherm_shared_cal *shared) __func__, sensor->name, val, val & 0x1FFF, (val >> 13) & 0x1FFF, calib_cp, calib_cp, calib_ft, calib_ft); printf("therma: 0x%04X(%d), thermb: 0x%04X(%d)\n", - (uint16_t)sensor->therm_a, temp_a, + (uint16_t)sensor->therm_a, sensor->therm_a, (uint16_t)sensor->therm_b, sensor->therm_b); #endif } static void -soctherm_init_tsensor(struct soctherm_softc *sc, struct tsensor *sensor, - struct soctherm_shared_cal *shared_cal) +soctherm_init_tsensor(struct soctherm_softc *sc, struct tsensor *sensor) { + struct tsensor_cfg *cfg; uint32_t val; - tsensor_calibration(sensor, shared_cal); + cfg = sc->soc->tsensor_cfg; + tsensor_calibration(sc, sensor); val = RD4(sc, sensor->sensor_base + TSENSOR_CONFIG0); val |= TSENSOR_CONFIG0_STOP; val |= TSENSOR_CONFIG0_STATUS_CLR; WR4(sc, sensor->sensor_base + TSENSOR_CONFIG0, val); - val = TSENSOR_CONFIG0_TALL(sensor->cfg->tall); + val = TSENSOR_CONFIG0_TALL(cfg->tall); val |= TSENSOR_CONFIG0_STOP; WR4(sc, sensor->sensor_base + TSENSOR_CONFIG0, val); - val = TSENSOR_CONFIG1_TSAMPLE(sensor->cfg->tsample - 1); - val |= TSENSOR_CONFIG1_TIDDQ_EN(sensor->cfg->tiddq_en); - val |= TSENSOR_CONFIG1_TEN_COUNT(sensor->cfg->ten_count); + val = TSENSOR_CONFIG1_TSAMPLE(cfg->tsample - 1); + val |= TSENSOR_CONFIG1_TIDDQ_EN(cfg->tiddq_en); + val |= TSENSOR_CONFIG1_TEN_COUNT(cfg->ten_count); val |= TSENSOR_CONFIG1_TEMP_ENABLE; WR4(sc, sensor->sensor_base + TSENSOR_CONFIG1, val); @@ -406,13 +560,13 @@ soctherm_convert_raw(uint32_t val) { int32_t t; - t = ((val & READBACK_VALUE_MASK) >> READBACK_VALUE_SHIFT) * 1000; + t = READBACK_VALUE(val) * 1000; if (val & READBACK_ADD_HALF) t += 500; if (val & READBACK_NEGATE) t *= -1; - return t; + return (t); } static int @@ -422,7 +576,7 @@ soctherm_read_temp(struct soctherm_softc *sc, struct tsensor *sensor, int *temp) uint32_t val; /* wait for valid sample */ - for (timeout = 1000; timeout > 0; timeout--) { + for (timeout = 100; timeout > 0; timeout--) { val = RD4(sc, sensor->sensor_base + TSENSOR_STATUS1); if ((val & TSENSOR_STATUS1_TEMP_VALID) != 0) break; @@ -443,7 +597,7 @@ soctherm_read_temp(struct soctherm_softc *sc, struct tsensor *sensor, int *temp) RD4(sc, sensor->sensor_base + TSENSOR_STATUS2) ); #endif - return 0; + return (0); } static int @@ -456,14 +610,16 @@ soctherm_get_temp(device_t dev, device_t cdev, uintptr_t id, int *val) /* The direct sensor map starts at 0x100 */ if (id >= 0x100) { id -= 0x100; - if (id >= sc->ntsensors) + if (id >= sc->soc->ntsensors) return (ERANGE); - return(soctherm_read_temp(sc, sc->tsensors + id, val)); + return(soctherm_read_temp(sc, sc->soc->tsensors + id, val)); } /* Linux (DT) compatible thermal zones */ - for (i = 0; i < sc->ntsensors; i++) { - if (sc->tsensors->id == id) - return(soctherm_read_temp(sc, sc->tsensors + id, val)); + for (i = 0; i < sc->soc->ntsensors; i++) { + if (sc->soc->tsensors->id == id) { + return(soctherm_read_temp(sc, sc->soc->tsensors + id, + val)); + } } return (ERANGE); } @@ -483,9 +639,9 @@ soctherm_sysctl_temperature(SYSCTL_HANDLER_ARGS) sc = arg1; id = arg2; - if (id >= sc->ntsensors) + if (id >= sc->soc->ntsensors) return (ERANGE); - rv = soctherm_read_temp(sc, sc->tsensors + id, &val); + rv = soctherm_read_temp(sc, sc->soc->tsensors + id, &val); if (rv != 0) return (rv); @@ -510,9 +666,9 @@ soctherm_init_sysctl(struct soctherm_softc *sc) return (ENXIO); /* Add sensors */ - for (i = sc->ntsensors - 1; i >= 0; i--) { + for (i = sc->soc->ntsensors - 1; i >= 0; i--) { tmp = SYSCTL_ADD_PROC(&soctherm_sysctl_ctx, - SYSCTL_CHILDREN(oid), OID_AUTO, sc->tsensors[i].name, + SYSCTL_CHILDREN(oid), OID_AUTO, sc->soc->tsensors[i].name, CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, i, soctherm_sysctl_temperature, "IK", "SoC Temperature"); if (tmp == NULL) @@ -542,10 +698,11 @@ soctherm_attach(device_t dev) struct soctherm_softc *sc; phandle_t node; int i, rid, rv; - struct soctherm_shared_cal shared_calib; sc = device_get_softc(dev); sc->dev = dev; + sc->soc = (struct soctherm_soc *)ofw_bus_search_compatible(dev, + compat_data)->ocd_data; node = ofw_bus_get_node(sc->dev); rid = 0; @@ -610,16 +767,13 @@ soctherm_attach(device_t dev) goto fail; } - /* Tegra 124 */ - sc->tsensors = t124_tsensors; - sc->ntsensors = nitems(t124_tsensors); - get_shared_cal(sc, &shared_calib); + sc->soc->shared_cal(sc); - WR4(sc, TSENSOR_PDIV, TSENSOR_PDIV_T124); - WR4(sc, TSENSOR_HOTSPOT_OFF, TSENSOR_HOTSPOT_OFF_T124); + WR4(sc, TSENSOR_PDIV, sc->soc->tsensor_pdiv); + WR4(sc, TSENSOR_HOTSPOT_OFF, sc->soc->tsensor_hotspot_off); - for (i = 0; i < sc->ntsensors; i++) - soctherm_init_tsensor(sc, sc->tsensors + i, &shared_calib); + for (i = 0; i < sc->soc->ntsensors; i++) + soctherm_init_tsensor(sc, sc->soc->tsensors + i); rv = soctherm_init_sysctl(sc); if (rv != 0) { diff --git a/sys/arm/nvidia/tegra_uart.c b/sys/arm/nvidia/tegra_uart.c index 16809378cf6..9ba567c6d55 100644 --- a/sys/arm/nvidia/tegra_uart.c +++ b/sys/arm/nvidia/tegra_uart.c @@ -155,7 +155,8 @@ static struct uart_class tegra_uart_class = { /* Compatible devices. */ static struct ofw_compat_data compat_data[] = { {"nvidia,tegra124-uart", (uintptr_t)&tegra_uart_class}, - {NULL, (uintptr_t)NULL}, + {"nvidia,tegra210-uart", (uintptr_t)&tegra_uart_class}, + {NULL, (uintptr_t)NULL}, }; UART_FDT_CLASS(compat_data); @@ -190,7 +191,6 @@ tegra_uart_probe(device_t dev) if (cd->ocd_data == 0) return (ENXIO); sc->ns8250_base.base.sc_class = (struct uart_class *)cd->ocd_data; - rv = hwreset_get_by_ofw_name(dev, 0, "serial", &sc->reset); if (rv != 0) { device_printf(dev, "Cannot get 'serial' reset\n"); @@ -201,7 +201,6 @@ tegra_uart_probe(device_t dev) device_printf(dev, "Cannot unreset 'serial' reset\n"); return (ENXIO); } - node = ofw_bus_get_node(dev); shift = uart_fdt_get_shift1(node); rv = clk_get_by_ofw_index(dev, 0, 0, &sc->clk); diff --git a/sys/arm/nvidia/tegra_usbphy.c b/sys/arm/nvidia/tegra_usbphy.c index b60360efd92..1adc90e8418 100644 --- a/sys/arm/nvidia/tegra_usbphy.c +++ b/sys/arm/nvidia/tegra_usbphy.c @@ -39,7 +39,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -291,6 +290,7 @@ struct usbphy_softc { }; static struct ofw_compat_data compat_data[] = { + {"nvidia,tegra210-usb-phy", 1}, {"nvidia,tegra30-usb-phy", 1}, {NULL, 0}, }; diff --git a/sys/arm/nvidia/tegra_xhci.c b/sys/arm/nvidia/tegra_xhci.c index ce03131e6ca..bfaf761232e 100644 --- a/sys/arm/nvidia/tegra_xhci.c +++ b/sys/arm/nvidia/tegra_xhci.c @@ -265,15 +265,11 @@ struct tegra_xusb_fw_hdr { uint8_t padding[137]; /* Pad to 256 bytes */ }; -/* Compatible devices. */ -static struct ofw_compat_data compat_data[] = { - {"nvidia,tegra124-xusb", 1}, - {NULL, 0} -}; - +struct xhci_soc; struct tegra_xhci_softc { struct xhci_softc xhci_softc; device_t dev; + struct xhci_soc *soc; struct mtx mtx; struct resource *mem_res_fpci; struct resource *mem_res_ipfs; @@ -288,26 +284,86 @@ struct tegra_xhci_softc { clk_t clk_xusb_fs_src; hwreset_t hwreset_xusb_host; hwreset_t hwreset_xusb_ss; - regulator_t supply_avddio_pex; - regulator_t supply_dvddio_pex; - regulator_t supply_avdd_usb; - regulator_t supply_avdd_pll_utmip; - regulator_t supply_avdd_pll_erefe; - regulator_t supply_avdd_usb_ss_pll; - regulator_t supply_hvdd_usb_ss; - regulator_t supply_hvdd_usb_ss_pll_e; - phy_t phy_usb2_0; - phy_t phy_usb2_1; - phy_t phy_usb2_2; - phy_t phy_usb3_0; + regulator_t regulators[16]; /* Safe maximum */ + phy_t phys[8]; /* Safe maximum */ struct intr_config_hook irq_hook; bool xhci_inited; - char *fw_name; vm_offset_t fw_vaddr; vm_size_t fw_size; }; +struct xhci_soc { + char *fw_name; + char **regulator_names; + char **phy_names; +}; + +/* Tegra 124 config */ +static char *tegra124_reg_names[] = { + "avddio-pex-supply", + "dvddio-pex-supply", + "avdd-usb-supply", + "avdd-pll-utmip-supply", + "avdd-pll-erefe-supply", + "avdd-usb-ss-pll-supply", + "hvdd-usb-ss-supply", + "hvdd-usb-ss-pll-e-supply", + NULL +}; + +static char *tegra124_phy_names[] = { + "usb2-0", + "usb2-1", + "usb2-2", + "usb3-0", + NULL +}; + +static struct xhci_soc tegra124_soc = +{ + .fw_name = "tegra124_xusb_fw", + .regulator_names = tegra124_reg_names, + .phy_names = tegra124_phy_names, +}; + +/* Tegra 210 config */ +static char *tegra210_reg_names[] = { + "dvddio-pex-supply", + "hvddio-pex-supply", + "avdd-usb-supply", + "avdd-pll-utmip-supply", + "avdd-pll-uerefe-supply", + "dvdd-usb-ss-pll-supply", + "hvdd-usb-ss-pll-e-supply", + NULL +}; + +static char *tegra210_phy_names[] = { + "usb2-0", + "usb2-1", + "usb2-2", + "usb2-3", + "usb3-0", + "usb3-1", + NULL +}; + +static struct xhci_soc tegra210_soc = +{ + .fw_name = "tegra210_xusb_fw", + .regulator_names = tegra210_reg_names, + .phy_names = tegra210_phy_names, +}; + +/* Compatible devices. */ +static struct ofw_compat_data compat_data[] = { + {"nvidia,tegra124-xusb", (uintptr_t)&tegra124_soc}, + {"nvidia,tegra210-xusb", (uintptr_t)&tegra210_soc}, + {NULL, 0} +}; + + static uint32_t CSB_RD4(struct tegra_xhci_softc *sc, uint32_t addr) { @@ -327,63 +383,23 @@ CSB_WR4(struct tegra_xhci_softc *sc, uint32_t addr, uint32_t val) static int get_fdt_resources(struct tegra_xhci_softc *sc, phandle_t node) { - int rv; + int i, rv; - rv = regulator_get_by_ofw_property(sc->dev, 0, "avddio-pex-supply", - &sc->supply_avddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avddio-pex' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "dvddio-pex-supply", - &sc->supply_dvddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'dvddio-pex' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-usb-supply", - &sc->supply_avdd_usb); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-usb' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-pll-utmip-supply", - &sc->supply_avdd_pll_utmip); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-pll-utmip' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-pll-erefe-supply", - &sc->supply_avdd_pll_erefe); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-pll-erefe' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "avdd-usb-ss-pll-supply", - &sc->supply_avdd_usb_ss_pll); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'avdd-usb-ss-pll' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, "hvdd-usb-ss-supply", - &sc->supply_hvdd_usb_ss); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'hvdd-usb-ss' regulator\n"); - return (ENXIO); - } - rv = regulator_get_by_ofw_property(sc->dev, 0, - "hvdd-usb-ss-pll-e-supply", &sc->supply_hvdd_usb_ss_pll_e); - if (rv != 0) { - device_printf(sc->dev, - "Cannot get 'hvdd-usb-ss-pll-e' regulator\n"); - return (ENXIO); + /* Regulators. */ + for (i = 0; sc->soc->regulator_names[i] != NULL; i++) { + if (i >= nitems(sc->regulators)) { + device_printf(sc->dev, + "Too many regulators present in DT.\n"); + return (EOVERFLOW); + } + rv = regulator_get_by_ofw_property(sc->dev, 0, + sc->soc->regulator_names[i], sc->regulators + i); + if (rv != 0) { + device_printf(sc->dev, + "Cannot get '%s' regulator\n", + sc->soc->regulator_names[i]); + return (ENXIO); + } } rv = hwreset_get_by_ofw_name(sc->dev, 0, "xusb_host", @@ -399,25 +415,20 @@ get_fdt_resources(struct tegra_xhci_softc *sc, phandle_t node) return (ENXIO); } - rv = phy_get_by_ofw_name(sc->dev, 0, "usb2-0", &sc->phy_usb2_0); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'usb2-0' phy\n"); - return (ENXIO); - } - rv = phy_get_by_ofw_name(sc->dev, 0, "usb2-1", &sc->phy_usb2_1); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'usb2-1' phy\n"); - return (ENXIO); - } - rv = phy_get_by_ofw_name(sc->dev, 0, "usb2-2", &sc->phy_usb2_2); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'usb2-2' phy\n"); - return (ENXIO); - } - rv = phy_get_by_ofw_name(sc->dev, 0, "usb3-0", &sc->phy_usb3_0); - if (rv != 0) { - device_printf(sc->dev, "Cannot get 'usb3-0' phy\n"); - return (ENXIO); + /* Phys. */ + for (i = 0; sc->soc->phy_names[i] != NULL; i++) { + if (i >= nitems(sc->phys)) { + device_printf(sc->dev, + "Too many phys present in DT.\n"); + return (EOVERFLOW); + } + rv = phy_get_by_ofw_name(sc->dev, 0, sc->soc->phy_names[i], + sc->phys + i); + if (rv != 0 && rv != ENOENT) { + device_printf(sc->dev, "Cannot get '%s' phy.\n", + sc->soc->phy_names[i]); + return (ENXIO); + } } rv = clk_get_by_ofw_name(sc->dev, 0, "xusb_host", @@ -450,8 +461,8 @@ get_fdt_resources(struct tegra_xhci_softc *sc, phandle_t node) device_printf(sc->dev, "Cannot get 'xusb_fs_src' clock\n"); return (ENXIO); } - rv = clk_get_by_ofw_index_prop(sc->dev, 0, "freebsd,clock-xusb-gate", 0, - &sc->clk_xusb_gate); + /* Clock xusb_gate is missing in mainstream DT */ + rv = clk_get_by_name(sc->dev, "xusb_gate", &sc->clk_xusb_gate); if (rv != 0) { device_printf(sc->dev, "Cannot get 'xusb_gate' clock\n"); return (ENXIO); @@ -462,7 +473,7 @@ get_fdt_resources(struct tegra_xhci_softc *sc, phandle_t node) static int enable_fdt_resources(struct tegra_xhci_softc *sc) { - int rv; + int i, rv; rv = hwreset_assert(sc->hwreset_xusb_host); if (rv != 0) { @@ -475,53 +486,17 @@ enable_fdt_resources(struct tegra_xhci_softc *sc) return (rv); } - rv = regulator_enable(sc->supply_avddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avddio_pex' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_dvddio_pex); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'dvddio_pex' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_usb); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd_usb' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_pll_utmip); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd_pll_utmip-5v' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_pll_erefe); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd_pll_erefe' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_avdd_usb_ss_pll); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'avdd_usb_ss_pll' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_hvdd_usb_ss); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'hvdd_usb_ss' regulator\n"); - return (rv); - } - rv = regulator_enable(sc->supply_hvdd_usb_ss_pll_e); - if (rv != 0) { - device_printf(sc->dev, - "Cannot enable 'hvdd_usb_ss_pll_e' regulator\n"); - return (rv); + /* Regulators. */ + for (i = 0; i < nitems(sc->regulators); i++) { + if (sc->regulators[i] == NULL) + continue; + rv = regulator_enable(sc->regulators[i]); + if (rv != 0) { + device_printf(sc->dev, + "Cannot enable '%s' regulator\n", + sc->soc->regulator_names[i]); + return (rv); + } } /* Power off XUSB host and XUSB SS domains. */ @@ -583,25 +558,16 @@ enable_fdt_resources(struct tegra_xhci_softc *sc) return (rv); } - rv = phy_enable(sc->phy_usb2_0); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable USB2_0 phy\n"); - return (rv); - } - rv = phy_enable(sc->phy_usb2_1); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable USB2_1 phy\n"); - return (rv); - } - rv = phy_enable(sc->phy_usb2_2); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable USB2_2 phy\n"); - return (rv); - } - rv = phy_enable(sc->phy_usb3_0); - if (rv != 0) { - device_printf(sc->dev, "Cannot enable USB3_0 phy\n"); - return (rv); + /* Phys. */ + for (i = 0; i < nitems(sc->phys); i++) { + if (sc->phys[i] == NULL) + continue; + rv = phy_enable(sc->phys[i]); + if (rv != 0) { + device_printf(sc->dev, "Cannot enable '%s' phy\n", + sc->soc->phy_names[i]); + return (rv); + } } return (0); @@ -797,7 +763,7 @@ load_fw(struct tegra_xhci_softc *sc) return (0); } - fw = firmware_get(sc->fw_name); + fw = firmware_get(sc->soc->fw_name); if (fw == NULL) { device_printf(sc->dev, "Cannot read xusb firmware\n"); return (ENOENT); @@ -997,7 +963,8 @@ tegra_xhci_attach(device_t dev) sc = device_get_softc(dev); sc->dev = dev; - sc->fw_name = "tegra124_xusb_fw"; + sc->soc = (struct xhci_soc *)ofw_bus_search_compatible(dev, + compat_data)->ocd_data; node = ofw_bus_get_node(dev); xsc = &sc->xhci_softc; LOCK_INIT(sc); diff --git a/sys/contrib/dev/nvidia/tegra210_xusb.bin.uu b/sys/contrib/dev/nvidia/tegra210_xusb.bin.uu new file mode 100755 index 00000000000..e52e41e2185 --- /dev/null +++ b/sys/contrib/dev/nvidia/tegra210_xusb.bin.uu @@ -0,0 +1,2950 @@ +begin 644 tegra210_xusb.bin +M`%L``````@````(```4``````````````````````````````.4``*T/``!* +M<\A5`'```/W%`````0``+V\```#&```K^@$``P`04`$````````````````` +M```````````````&`@!855-"1E<``$!"#P``_R`"`0```(`@!0`````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````````````````/0@<`#T($``]"#,`/0@ +M0`#T($``]"!``/0@H`#T($``]"!``/0@0`#T($``]"!``/0@0`#T($``]"!` +M`/0@0`#YD/F@^;#YP/G0^>#Y\/Z*`?F@?AAQ`/R@_J@`]#(!_/#\X/S0_,#\ +ML/R@_)#X`0#YD/F@^;#YP/G0^>#Y\/Z*`?F@?J6I`/R@_J@`]#(!_/#\X/S0 +M_,#\L/R@_)#X`0#YD/F@^;#YP/G0^>#Y\/Z*`?F@?JEX`/R@_J@`_/#\X/S0 +M_,#\L/R@_)#X`?F0^:#YL/G`^=#YX/GP_HH!^:!^N[D`_*#^J`#T,@'\\/S@ +M_-#\P/RP_*#\D/@!^/CX^/CX`+:E&+/``$+?%!0``'_Y\)408/FSI!%NV0"@ +M`0"FV?0;#M\(80``/_D^7P$`V0">`0"FV?0;#M\(80``/_D^>@$`^`CX`+.D +M$3S9`*`!`*;9]!L4WPAA```_^?"5!/"4]SY]`0#9`)X!`*;9]!L4WPAA```_ +M^?"5`?"4_2#Y^`#X"/@`^`"SI``>V7`4```\FKG9=10``#R:N=DX%```O)JY +M^`#9>A0``#WT/)^YV7\4```\G[F]]-E@%```O)^Y^`"8J0B5GQS'F6BVE`*S +M]``-WW1?```^X0$`WYQ?``"\G]"_V;.0`&8/\/V?!+B>`"``IJ[T&T*8KPG' +M^0'T"PN]E*#9/@P"`*#?F*D(O?0^(P(`IJGT&QN8J0FUZ0F8J0BUKPF/___] +M_9\$M:D(^`"RGCXZ`@"R_9CO"?_]E,?_`;B9`"``L_``S?@`V204``"\FJB8 +MJ3CQE/\/]!L)O=0^A@(`F+D!Q,__Y-[__PT!M:DZF+D"M:D[M:\\M:X]O[FU +MJ3FRVO@`L+8)]`T%^`B4OP2\NY#=0%P``+N?`I"9`;:4`KF9`;R=D!B:`]^\ +M!```O.Z0O)Z0MI0$O)^0W;`A```UF@'$J?^VE`2\G9`8GP'=0"$``/"D_[SM +MX!#_`36?`37KM/@`O*J0W[P$``"\FI"VE`2\GY`8F0'PE/^SFO\`*I2?!-FP +M(0``O/GP&/D!,Y``"A*9`37Y`=]`(0``"?^\KZ`UJ;3X`-EP%```^2(\FNC9 +M=10``#R:^+*@LK(F[_08!?@(V4DV```_F3.0`"+92#8``#^9,Y0`%]E+-@`` +M/YGPE/^FD/`<"SYU`P"]%+,D`!?$Z?_P]/^[GP*PE@CT#`>S$`!#V5`3```_ +MF3.0`!"]I+(+?L6T`#[+`P#>%!0``'_IW0`@``#?F10``)C<`3SP^/&5``%@ +MZ0D!NY\$_9P%M=D!V5P3```_F?"4_Z8)]!APV7H4```\D.C9?Q0``#R0^";O +M]!@%^`BS)``7Q.G_\/3_NY\"L)8(]`P'LQ``0]E0$P``/YDSD``0L@L*`7[% +MM``^1P0`WA04``!_Z=T`(```WYD4``"8W`$\\/CQE0`!8.D)`;N?!/V#`$0`9"O0+^ID*H$H.FFK_0;]_@`F*DA]##\_D\!H/F8 +MJ2*@^9BI(Z#YF*DDH/F8J26@^?0P!/@`^``2N00PE@'T#0_____OW^!+6?##Z$!P"P!@'T#07X"+,$``W9R!0``#YN!P#9W!0``+R1 +MF`KPW/____[_ZJ3_G,0-#'[2!@#9)!0``+R1^`D!NY`$M?D(^Q'T,/CY,K*@ +MF*H+]##XLK/^00'^0@&0$1R0(ABVI1BR&[(L?D,S`+.@`':_'Y@*#+\KO92P +MD0`)`3"1!+:E&[(,MJ0"\KZ"]Y*`:?DW"`+.D``;X"+,P`$B8#PN8"0R5 +M\1B5D!NR&K(+?CZW`+.@``Q^,08`/C0(`-FT:0``OYFSD'\;E`D0"O^4'1BR +MJ_^=U;*L?DNV`#XT"`#X"/0P"/LU")BO"/D"LJ#'^1'T"Q.)```0__F5M:D( +MO:0^=@@`?K1Y`)@/"-DD%```#@&RZL?]:+R=F+;U'+OO!+6>"/L!F*\(Q_D: +M]!L'O:3X`)BI!][___\'Q_^5MO0;_9X$_?D%M:\'?CH(`/@`F*\&B?___9BM +M"OWY!+6O!K.P!W:SM`(8WTDV```_^1*9`2#Y?C-1`#[S"`"SM`4IW$@V``#; +M%!0``#_/?[X]U-E*-@``$O\!\.4"()T@SV"^O:3X`,?96,2?`O0+'ME0$P`` +M/YDSD``QF*D&MI48LY`")WXZ"`#X`/"4!/0+"ME*-@``()_?2#8``#_YO:02 +MF0$@^?@`O:3X`)BO#)BN!YBM"+V4F*L*M:D)M:D.V?____[]^02)___?M:\, +M_>D$B?__^;6N!_W9!+6M",>Y6/0+"PL"?J((`/@`Q[D7]`LSF*D&MI48L)8' +M]`T/F*D&MI48L)8+]`T;WD`A``#=%!0``+_I?]_PE0+P]0*@Z6#?^`#Y,ME0 +M$P``/YDSD`!TL*8!]`T%^`BVM`*SI``-V71?```^WPD`V9Q?``"\N1"_$+,` +M`'8#\(+___W_`Y2XGP`@`)C^"++ZF/`)Q^D4]`L,F/D*QYE8]`L+?CP)`#XD +M"@"U^0G_XI2R^K7Y"'[1>@#'"0'T"\>]E*`9/EH*`-X4%```?^G=`"```-^9 +M%```F-P!//OX\94``6#I"0&[GP3]G`6UV0'[,?D"LK"SI``JV71?``"\FYBS +MD``(?K4)`-G(%```E`X"O?2\Z>#9=%\``#ZL"@#9G%\``+R;F+.0``A^M0D` +MV=P4``"4#@*]]+SIX-F<7P``O)\)O^G?_____OV?!*#I^P'Y@ME0$P``/YGT +M,/RRLC.4``;X"/"D_Y*I!K"6`?0-"?@(/AP,`-F>%```/)+H"P1^=+<`LGJR*WY<"@#T,`3[@0G\_:D$LZY`!%N5N1BS +MD`)3LY0#+=DD%``!OY^XF244`O^YE/0+"O#U!#Y4#``)^_WY!-DD%``!H)\^ +M@0P`LY0!"O@(/H$,`+.4!AC9____`-^L:0``_[F4]`L%"0$@^=D`$``!O*F@ +MH*OX`/ERV!I```_F3.9`(@`V503```_GXZ^_>^)00(0 +MO33P]/^\^?"\_I"4G@:VE`/2"&`1`;SI`M52$P``V4!<``"4\02\"0#4```" +M`3X@#0"_*9`S`9`B@/"4#[.0!2>SD``CLY`#'[.0!!NSD`\7OQG_E/6@'\>9 +MT?0;";(*?N\Q`)`1$)``.#]9\)3_ICGT",'9)"```;^1DID$OYG%D`'9'!0` +M`*"0?FBG`'[ZPP"SH``9W3``$`&_WSWDV603```@GO#U!*#?V31D```_GM\D +M(``!"?;_&92@^=D@(``!H)#?,&,``#/D'Q`8^2$SE``)"00U^2'95A,``#^9 +MWD!<``#75Q,``-94$P``\)3_DI`!E`\#E`D&U543``"[GP+44Q,``-],7``` +MO)X@O)\0TU(3```^&0X`/QF0$3@SE`$[/VF0#P&R*L2>_Z;^]`@0/SGPE/^\ +MGI"F^?0(&C]9Q)[_IO[T"!0_2?"4_[R>D*;Y]!@'?N\Q`)```9`B.#]Y\)3_ +MI@GT"+/[<;BJ``P"L*8#]`P?WA04``#=0"$``'_IO]_PE0+P]0%@Z:#??A>K +M`/@`]##X^8+5("```;]?W20@``&_WDEP\/_YE/&DCP\+]_^IA?_K!/^/)L0I +M`O4+H`#$B0+U"]$#Q.D!]0O*`]Q87@``V41>``"_SK^9U$Q>``"_3]L@%``` +M/[VPD0G32%X``-%07@``OS>_%M)P7P``D.X!/R#9"`$0`:">L/$*V21I``!/ +M?OS_C_2@7Z#.#@&@GMD<%```\-4*H)\@O4^!`-D@`!`!H)]^4N4`M/`)V41> +M```0``&@-Z"?M)`*H!8@(*!)?IV5(3```_F=WD:0``O>3? +M"&`1`<2;_SZL#P#=8%X``+_?2?_]Y0X`!/_I!)#_`=D0`1`!H)^@WSZQ#P"_ +MV;_\D.X!D/^`D-T4QYD9]!L7Q,D/LY0%$0\!V2!I```@GSZQ#P"FZ_0(U]D@ +M:0``/Y])_OS]B039("```:"8V1P4``"@F-DD(``!H)`S]`!X?HT,``G^/13] +M"00^31``L_``"CT4/C80`$G__/V)!*!8WC@@``'P!0&@T+_IW2`4```_W]PP +M`!`!_9L$H.F_SO#U"2#?"?O]Z02@SMD<%```H)A/@0#9(``0`0$!H)_9)``` +M`;^9W]!I``"0F0&@^3Y-$``]%,4.``20_P&@GZ#?2?_]_^D$/E41`.0)``+T"R7>8%X``+_IWQ`! +M$`'Q!0`$D)D!H/F@Z=DD(``!H)`^DQ$`V=!M```_G_$%``+9)"```:"0,_`! +M!O@(WD`A``#=%!0``)CI#W_?\)4"\?4`!+7I#V#?2?_\_8D$Y(D``?0+>L0) +M`?0+$I4)"94/"/V?!?"4`?0+)=U@7@``O]_9$`$0`>4.``20_P&@G]DD(``! +MH)Z@WSX1$@#>)"```;_IW]!M```__0_W_9\$\94``:#I,]`!!O@(WD`A``#= +M%!0``)CI#W_?\)4!\?4`!+7I#V#?2?_^_8D$Y"D`!/0+*.2)``3T"Q/?,``0 +M`;_Y\)4@H/D^0Q(`V3``$`&_GP[?_?X$H)_9'!0``*"8V2`@``&@F/N%"/D" +MV2`4```_F;+-,Y``!O@(QZ]H#/_T"R6]Y$#_`,3Y`?0+#+P.E+F9`/W)!)#N +M"+/@(`NV]0$^$@"SJY`` +MA`"SJI$`8+.O@0#"`#Y$$P#9!"8``;^?W@```$#]_@6@G_'T`$#U"Z,`/O@2 +M`-D$)@`!OY_>````@/W^!:"?\?0`@'/Y`(8`V40`$`'>)"@``0\!H)^_Z?&4 +M__^@Z3YY$P"RNK+;?JBG`-X@%```/^_$^0CT"Q3$^?<@Z3YY$P"RNK+;?B$, +M`$^!`-D@`!`!/EL3`-D`(``!O+FPO[_9)``0`:"?3X``DID$H)\^>1,`V0`0 +M``&\N;"_N=\D`!`!H/G9(``0`:":^P'Y,M#L%```T^@4``#2P%\``-$<%``` +M/JL3`)BL`KPMN+^JH`E^5!(`OQGPE`'T&R:_#[\^O/^0O)^0E)H"D)T!VD$M2X&Q_MHQ"D/E+`"O,`PO-!`LY``!O@(WC`B +M``"S%`$/"0:UZ1D)`CZ*%``)![7I&0D!M>D;OS_9,"(``+6;&+61&IB=,)B< +M+[/T`$&@/*!-Q,"(``+,4`17?>A0``-JX:0``//N8/BL5`-]P%```//N8 +MVI1I``"\"@"UX#\0F0$\^;F_,]DP(@``#P&UDCRUDSJ_1+6?.+6=/KWTM90[ +MM9P]M9\Y"BG[0=DP(@``F)D"F*\(LJW'GI#9__\?_/WY!)3I%?^?Q;6L",?) +M$_0;"VY!O?____![+:_9\$_>D%M=X'/M`5`+/T!!#'R13T"PE^(!0`^``*`_@` +MV3`B``#T,/"]Q/F"LI+T,/B8D!3^1@'40"$``-@D%```D&8LU104``"'_W__ +M/IH>`+,)$=<&L`81]`Q?LPD'>0.P!@?T#"RS"0,"`;`&`_0,$;,)`;``LPT" +MI0`^]!8`LPD%8@*P!@7U#!`#/EX8`+,)#8(%L`8-]`P0LPD(:@.S!`Q\/H\; +M`+,)#Z\%L`8/]0RS!C[P&P"S"1CS![`&&/0,*[,)%$L'L`84]`P0LPD2L0:S +M!!-)/GX=`+,)%JD'L`86]0RP!SX='@"S"2HX!+`&*O0,%[,)*!$$L`8H]0Q[ +M!+,$(QH^[!H`LPN/`+4$LPL@`W\$LPN.`(X$L@P^FAX`V1QC```_G[(,O92U +M*1CP]/^U+Q4^\1<`O92U*1<^&!<`E9\!\)0!]`L)#`(^F!X`F"D8M2\5D)D! +MM2D8F"D5LY0`XCZP'@"8*AB]U`D2_IT,]#(2]#(2]#(2L]0!"]EH7@``H)W9 +M&&,``#R:^-D:8P``/)J8)OGT&Q_?'&,``#_^"0&[F@3PE/\YF0#]G@0@^0D" +MM2D7L]0!$+WTV6A>``"@G_0Q$I@L%[#&`?0-?PD2_IT,]#(2]#(2]#(2L]0! +M"]EH7@``H)W<%&$``#_)#P&U+Q3PE/^[F@?]GP3T"R"\BNB[^@3P]/\Y_P"8 +MZ4#QE0`!M>E`/\G]^00@SY@I%9@O&+:5`9#_`;4I%;4O&+/0`0P,`P`"/IH> +M`+WTV6A>``"@G_0Q$C[O%P#;&&,``#RZV-X880``E*\$D,P!Q-G_O/GPE/D$ +MO)Z0OYFU+!<0W0$,`[4I`93Y`I"9`;SIF+S_\+;T`_#4#[4I`MD@80``O/GP +MO_\`!#R]J;4O`SZ:'@"8*0'PE!^SG00F!I@I`O"4#[.0!B6PE@;T#!&2F0*P +ME@'U#`L&/HP8`+.="`,&#`0`!3Z:'@`,!``//IH>`)@I`96;&?0+$)@J&'X< +M4`"RH3[C&`"8+R:S\``=LOFU+R[PE02]]+B9`"`"M2\PM2DO/DP9`-F,:0`` +M?YEPE@#U'[0%Q)'_LQD`K068*0+'GX<5^0'T&P4/`<3S_X\``!^4.1#]GP24 +M'QC]GP6R&K4I%GXRJP"SJ0!^!509!O&4P!_$/S_=3"$``/WY!;V4M2TM=2]9 +M-2FPM2DNVN`B``!^IK(`LZ0`#`P%``8^FAX`#`4^@QD`F$\#Y/D`@'.9`"L% +M?UG]]P3:X"(``+5/`_&4]_]@67ZFL@"SJ0`/!9@I+K.0``P,!@`'/IH>``P& +M/I@>`)@I`O"4#["6`O0(&;"6`_0-"[.4"!`^MQD`L@P`"#Z:'@`,!SZ:'@"R +M#``6/IH>`)@J+IBN",?I#?4;S@2_K\3Y![.=`<4$F*D!QYLCL[D!N@2SM`,+ +MQ^D1]0NN!,?YBO0+#`P(0"`#/IH>`)@O`L3Y#[.4`A#9````"/_IE3Z:&@#' +MZ1OU"X($F*D*QYDX]1MX!+.T`W_'_Y#'Z1/T&UB8J0:VE1BPE@?T#4R8J0:V +ME1BPE@OT#$"8K@>8K0B8K`;9____!_WI!-G__P'P_=D$B0``"K;T&_W9!?W^ +M!=G___\`LK#]R02UKP>UK0BUK`8^?AX`E/D5W___'_S_[_3]GP7?````!/V? +M!;6I"#Z6'@!^714`LJ"SJ0/7`Y@I+\>9`O4;S`,)!PP(-2FP/M<:`)@I+\>9 +M`O0+";(,/D,;``D'L@PU*;``*CZ:'@#:X"(``'[M,P"R##X^&P"8*AC9GA0` +M`)@N&CR:^`D!NYX$_?D$,_``%;R*^)@I&PPC``.U^0@^FAX`F"POF"L9F"TP +MO92]Y+"1`'YTMP```PPC/IH>`-H0(P``?@%!``PILZD`7`,`(SZ:'@"8*B[; +M-"(``'ZY0`!,(`.RH#Z:'@"8*2],C@#'F0+T&R()!TR.`#4IL$"/`#Z:'@#: +MX"(``'[M,P"R#+.I`!8#``P^FAX`F"\NO93=4",``+79`:#9V0````JUV0*8 +M^0R8_@NR#-\```#_MI4;_>\$MI00\>4`@``-_9X%M=D#/IH>`)@I+MI0(P`` +MW$PA``"8FPVVM19^`#L`,ZT`+@*R#``./IH>`)A.`^3I`$#T"Q1_7TG_O__I +ME+5)`_'T]_]@7PP./I@>`)@N`I@I`9@J&,?M9)6;&;/4`UK=.``0`;_?Q/U_ +M,]``%L39_Z:Y]1M!`L?Y:*::]1LX`MF`$P``?Y^VY1!\_O!@GS/4`!O$KP^) +M``!_MO0(_[F5WC@`$`']GP6@Z7YHIP```PP//IH>`+\O"0&[G03]GP3U"PP" +M?AQ0`+*ALZD``@)^,JL`LZD`^0&U(1:P%B3T##+?R`0``+P1D+R1D+F9`9"9 +M`;:4!+F9`;R?D'^?"?]F^?0+#Y3Y%@P/M2D&/L(=`,09`0P/M2D>`!$^FAX` +MF"H6F$\WF$LX"?[]J02]E+"1``D"W+`B``"VI`,PD02\KZ`-$-[AJ@``?DW" +M`+(,LZD`B`$`$#Z:'@"83P,,$.3Y`(!SF0!T`?_WE`P0M4D#`!(^FAX`F"\> +MO92PD0`)`MTP(@``,)$$WK`B``"4^0.V]`.\G9"\_O"8FR&_^MQ`(@``#4#> +MX:H``'Y-P@"R#+.I`" +M``P//I@>``P(/IH>``P&/IH>``P$/I@>`+(,/I@>``P(``.FP/4;;_?9,"(` +M`+6<%+VD]#`(^X40#P'9,"(``++ZM9\4/JH>`/DBO>3?!&`1`=)2$P``T?__ +M`,[0````"(H```(+[S[\'@"_^9#N`?V1!/V0!:#YO]F0_X#]F@7]FP2@V3\I +MDOT$Q)S_INST"-R]Y-\`8!$!C0``!#Y%'P"_^9#N`9#_@/V=!/0+(MUD$P`` +M/]DSD``CV3``$`&_GSWD(-[P]02@GSY0'P"F[/0(T;VD/H,?`+WDWP!@$0'< +M4A,``(WO__T^=Q\`O_F0[@']G02@^9CY`K7Y`I#_@#_)\)3_INGT".8*!?LA +MV>00``&_F;:5'[.=`8,`V7)I```_F3.4`'?95!,``#^?V5(3```_F[W4\/3_ +MW@A@$0'$N?^\G\`^V!\`O^F0_P&0[H#PE`^2F0.PE@/T#`:0W0&F_/0(Y\2Y +M_Z;9]!LGV0!<```_F3.4`!W?3&D``+_YLY0`&]DD```!OYF0F0&@^?@`O?39 +M3&D``*"?^`"SN0`L`;.T!!7>!&`1`92I![R>D+^>/DL@`)2N!+.T`Q#?!&@1 +M`;SOX#Y)(`#9!'`1`;SIX+_NV?__`,[_Z93EG0F`L[0$)I2I!X[`(@+?!&`1 +M`;R?D+RNH*"=CD#=_92I![RNH#XC(0"SM`,CE*D$CX`6$=X$:!$!O)Z0O*^@ +MH)V/@.GNE*D$/B`A`)*Y`92N!+"6`?0,$=D$0``O0+!?@(^`"4J0;T,/RV +MI`/Y`KR:HME`7```O*F@&*TUWP1P$0&+```@\-3_E-D$O)_`O\ZX_P`(`KR? +MD(\`%Q&\W]#?__\`SOWO!/#EL:">H,Z0F02@FY30!+B9``@`H)N_#TD?_I+= +M@+;4!/WY!/'U,`&@W_Y.`;V4D.X$LNV@Z3Y,(@"_V9"9`:#9O]FPE@?T#?2@ +M#PD%W603```UJ04_WPD$H*DS\``4V3``$`&_GSWD(-[P]02@G_L%!+:D!+.T +M`PW9#&@1`3Z2(@#9#'`1`;RIH+^O,\``#XD```'_^94^K2(`B?___O_YE*"I +M^`"4KP2SM`,0V01H$0&\^?`^S"(`W@1P$0&\_O"__HT```C_[93T"RO9__\` +MSI2O!/_IE/V=!;.T`Q#>!&@1`;S^\*#Y^`#>!'`1`;S^\*#Y^`"VI`39)"0` +M`;RIH+^O,[``#XD```'_^94^)2,`B?___O_YE*"I^`"5J1C?$&D``+.=$8$` +MO_FFV?0;1=]H:0``/_GPE/X@^;/$``WPE0(@^3YB(P#?*!,``+_YD)D!H/G> +M0"$``-T4%```F.D4?]_QE0`0\/4@M>D48-_X`-G___\`_:D$OZ__^>2FWO0+ +M!?@(MO48Q/D!]!L%^`C$^?ZSQ``'\)4"MI08_9X%H*GX`+_YIMGT&Q.SQ``0 +MWVAI```_^?"4_2#Y^``8J0\SE`1XV:QI```_F1BO-1BJ-#.0`&?$_?^SL`!. +MQ*G_DIH!E*\#E*D&NY\"WT!<``"\GY"8F03PE`CT&S_9)"0``92N!+SIX+_O +ME-D'W0Q@$0&\G9#P]/^0G02@G[_I\90`_Z#9^`"4V0??#&`1`;R?D*";D)D$ +MH)OX`+"F#_0,)K"F!?0-!?@(V5QI``!\FOC>X&@``)2I`KR>D.3Z__^@N?@` +MDJH0L*8%]`T%^`C9S&@``'R:^-[X:```E*D"O)Z0Y/K__Z"Y^`#Y$KT4&!ET +M,Y``5]DP:0``?YG0>&D``&`)2;__\*#-SUB`$`?KA+`-W(:```LZ0! +M';_9WA04``!_[_&5`!"@V?'U``A@[S[U)`"_V4__[_V?!*#9LZ0"!F`!^Q'Y +M`ABI#[*N,YT$G`#9Y!```;^9E9H?LZT!C0#9W&@``!CO-+^9F.P$\/3_NY\% +M\)0!]`MET!AI``"_#>7)`$"UZ02\WY7PE`'T&S>\K[3<.8H!`/V]!0H2H`M^ +MN$L`W,AH``"SI`$BO\_=%!0``'_>B0``!/WY!:#/\>4`"&#>O:0^G"4`O\F/ +M___[O:3]GP2@R3Z<)0!)_[__R92UZ00^G"4`"@'[`?DRV503```_G[*3TE(3 +M``#$\?^4&0:4'P.\GP+9"%P``+P)`#[1)0"0$0%^]R0`LZ``'3\I/S^R"I`` +M./"4__#T_[R?D*89]`CA"@'[,?D"&*D/LJXSG02<`-GD$``!OYF5FA^SK0&- +M`-G<:```&.\TOYF8[`3P]/^[GP7PE`'T&V70'&D``+\-Y\/3_DO$!E!D&E!\#TE(3 +M``"\GP+90%P``+P)`#X.)P"8"020$0'QE``@]`L)L@I^DR8`D``X/RGPE/^F +M&?0(X[VD^R$*"+VTW&&+`0!^N$L`"0.SH`$/V51I```/`:"?O92RFO@`#P'9 +M;&D```H$H)^+P-0!W/B*`0!^N$L`LZ0!(=[(:```W104``"_Z7_?"@/PE1#Q +M]0`(H.E@W_@`LZ0`%-G(:```OY\.[_W^!*"?^`#X"+VD^`#9%!0``'^9^1+Q +ME``(]`L%^`C9R&@``+^?T4AI```)`:`9Q/`@]!L1?L`>`+.D!0J@$#XF*``* +M!4O@+MR6B`$`?KA+`+.D`2/>R&@``-T4%```O^E_WPH#\)4@\?4`"*#I8-\^ +M)B@`LZ0`*MW(:```O]_9*&D``$[@+J">"=_]^02@W]D\`!`!3TP=H)\^)B@` +M^`B]I/L1]##X^8*])/0P_/Y'`9!W*#YP*0```;L"!/\)E/4+)0&R*OY+`9"[ +M+'Y()`"TT`O>____`+*HO]F5GQC_GD3'^0'U"[L`V5AI``"_G]Y8:0``N0D` +M_9\$H.FP)@_T##S?51,``-Y3$P``/_D_[[(N\/3_\)3_DI`!O`]@E`\#`P&4 +M"0:[/@2\GQ(2-0'?6%P``+P?$#[O*`#>5!,``#_IWE(3```_[Y(N$#Z7*``_ +M'\3Y__\YE/0+#/]?E+(*(!GY19```9`1.*8&]`CDL'$`LDJRBPPAW0```"'> +M*2,``'Y>1`"_>;.0``;X"+3P"][___\`O_G]G@0^9RD`Q/D!]!M"H'G?____ +M`-D````1_=\$L'$`_=D%LDJRBPP1WBDC``!^7D0`OWFSE``9M/`+WO___P"_ +M^?V>!)#N`?V>!:#YD"(!LR`@$-]8:0``O_FSG0#%_ME8:0``OYGT,`2PE@#P +MK`OPI@'[A0CT,/#95!,``/F"/YFRH;+(Q)__IJ_T"";94A,``#^9\)3_O)^0 +MIJGT&!39K&D``#^9#C`SE``Q/D0M`-E5$P``/YG$G_^F'_0(%]E3$P``/YD. +M(/"4_[R?D*89]`@)^`@^1"T`E!D#E!\&O/DBV0A<``"\*2`8*348)S;$D/^S +M[3"4`8G__P'$O___N32Q]G\`]`T(L_[_`!GP]/^4"0?>#&`1`;R>D*"?/E(J +M`-\4)``!E!D$O)^0OYG$G__+\^"P]@#PG`OPE@&4E@''.>CT"P;P902VE`B4 +M!0?>$&`1`;Q>4*!9W_"?[OZ\7U"S@``*O00^Y"H`/;0,$/Y``9``)+(*?HXT +M`,9"?0+;K.$`&O^2@$]M)"J)`P0 +M?HXT`+,$`!'9`"@``;^9D)D!E)`$&"HW_D\!QSD0D/\DMI0)\)4@,GR@^7(- +M\*3_LOM^3@(`&"D-LZ0`&O"5`=\4%```-2D-?_GPE2!@^3Z#*P#PE/XU*0T^ +M@RL`B?___OTY!+-@`!O?!&`1`;Q?D+^?WO__`,[]_@3_;_6@GZ!#/D0M`(E! +M`A#?%"0``;P9$(Z__>^4&02\'A"_F904!+Q/0+]/QY5E&"V$/WY +M!/0+"S-@`!D^1"T`,V``$3-0``W9^/\`\#[U*P#9^/\!\/^Y%)43'/4+@0`S +M4`08V?___P_?````\/\9E/^?%3Y\+`"S,`]EO:1^2FX`V01H$0&4#@2\Z>"_ +MZ8^`%A&\#P#?__\`SOV?!/&5``B4#02@Z;_93Q_^CH#I[KP.`/V?!/&5<`&@ +MV=DD```!OY_9____#_T9!`D.D/\!H"FU(PP)#;4O"S4I!:!!,V``6C-4`'W' +M&>CT"PW$FO]^`:L`Q*G_\)1_Y9H`$#-T`QN/D!81O`\`E`D$H)J)<.GNO`D` +M/LLL`(X0%Q&/\.CNO`X`E`D$O`\`H)J8*03PE4"U*00^_RP`F"D$\)1`]`LP +M,U0"#[(*Q'O_O<1^%"``F"D$#[_]GP2U*00^#BT`,W`##XG___[_&90^$"T` +MLAF4"@3>#&@1`;RNH*"IW_27[OZ\KZ`S8``3,W0##XG___[_&90^.BT`LAG> +M#'`1`;RNH*"I^X40V503``#T,/SY@KBE(`0"/YV57@3$Z?^4GP:VE`.\^0+9 +M0%P``+P)`!@)-=\`(``!LK:RPKRO<,24_Q#A`28=]`@=V5(3```_F<3?_\0> +M_P,P\)3_O)^0INGT'@4#(-E@`A`!OYB]I'Y*;@"_??\FM,1:#[.I!*4#LZD, +MK0.SK0#S`]D<%```OYGPE`'U"^0#,S0P#=GRP_^./NDM`-GRPW<._[D4V0`` +M_@#_&?25^1'T&PNRTCU4/@HN`+GY``4!_YTD_QV6QYE9]0NW`,<96=[____Q +MMI09_R[T_DH!__DE_1X$D*HD,S0P0-4$8!$!E$T'O-70O]G?__\`SMX````& +M_R[DH*F_J04!_9\$H*F_J=_____Y_9\$_>D%H*Z_J:#9/L#]G`2@J;^I!0'] +MFP3_^96@J;^IH-F_Z:"IOZG]G`2@J;^I_9L$_?D%H*^_J:#IY"\``L<>"97Y +M":;I]0N$`+/@``O'*0/U&],"&`D8M0$%#P'PE0$U"1C96&D``+^9,S0P"(\` +M``']^0796&D``*"?L^T`J`*8"02@#O&4`!#T"PNR"@L!?LLC`!@)!;WTM0\$ +M$ID+,)8!]`P/WW9I```_^1*9`2#YV79I```_F3"6`/0?!?@("0$U"04^L3$` +ML_0`&K\)LY``!O@(&`D%,YD!2P+X"#ZQ,0`8"04SF0H]`I1)!-\("&`1`;R>D#ZN+P`S]`,*OYD^ +MMB\`O^GPE`\/`;SYE/&4C8+T&P6]],<9`?0+:C,T,"V420?>"&`1`;R>D+^9 +M\)0/LYD$[`'96&D``+^?C@```OW^!:"?/A\GY"_G\W__W_]&00^-#``M0$%&`\8"0(S/3#"_@D(/J,P`/N%!/D"&*\TV20@``&_ +MGKB9)"`"LJ"V]!C:,%P``+6I`J"OB0"(`+6I`_#D`?4;KP!]M-R0(0``?@`[ +M`#.M`*``&`D,,Y0!$-\4:0``/_D2F0$@^=D4:0``/YDPE@#T'P7X"#V4&`TT +M-0D,V503```_GQ@,-2;?]`@JV5(3```_F?#T_\3>__"4_[R?D*;I]!\2Q,G_ +MWP1@$0&VE`<^JS(`&`D/Q,__,Y0#$)3Y!-\$:!$!/JLR`)3Y!-\$]I/@`DJ\!O/^0O)^0W\@$``"2W0&VE`2\GY`\G?@._SR>V=G`.```\/(' +M"@&V]`:\^?"]E*#Y^`"PIB3T#"F2J0&\F?"\^?"4^03?R`0``+R?D)B?"K/P +M``^@OYB9"PH!H,GX`+VD^`#Y,N2I__^RL\>1QK`6)/0,:,22/[`F(/0-!?@( +M?AI]`+.@``H+0'ZA-`#?P#@``#T$O_F0_T"SE``YV<`X``"R.\0*_PQ`MJ0& +MO*F@?C8T`)(?`0H!O/^0O)^0W\<$``"VE`2\*9"\GY`@D#[K,P`0``$S!$:_ +MO:3[,?D"/ZGT,/BRH#.0`#DSD`<."@$SE`@O/C$T`)@)`9BJ`Y@+!)@,`K"1 +M``D!#4`PD03>C;(``'Y-P@"SH``("0@@";VD]#`(^P'Y`L2I`[+`ML4"LY0` +M*\2Y`_0;)+WT/EHT`+_ND/\!D)D$H-Z\J="\N>"F_/0([K+)/FTT`+V4E)\" +MO+^PO*^0/H]`CVLNF4 +MGP(]Y+ROD#[=-``@GI#_`9"9`:;[]`CV^``/`=E\:0``()])``&]]*"?D)D$ +MLYY``?OX`/D2LJ"RL;&F_Q_T#1O$J0/T&Q65N0;T"P_$J3^\N9*PEC_T#`NR +M"K(;/GTU`-E\:0``/YDSE``(?N0T`+(/O>0^1S4`H/Z0_P3$^3_T&_B\`9"R +M^KN?`HX``02RFSYH-0#Z_@:0_T"2NT"PMC_T#/2VE0:VE`:\J:#X`[.P``A^ +MH30`^Q&_KK*ME>D0]`L@"@&FF_0+)_^^]8D``/_P\P#_Z92]I/WY!:#?^`"4 +MN1#D[____9\%H*D*`?@`OZR5R1#T&P7X".3-___U"YD`E9X!O?0^##8`D/\! +M_^V4]`LFN>\`B0``___?]/_)E/WY!:"OL^`0.[/J``%*L^0(6#X8-@"VY0&P +M]A#T#07X"+/D`,F.`(``/M4U`-]`(0``F/D#\94`!+7Y`SY3-@#?0"$``)CY +M"_&5``2U^0L^4S8`WT`A``"8^07QE0`$M?D%/E,V`/@(WQ04``!_^;+M_9X% +M8/F_J93?$/&4___]^06@K_@`^``````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````#>0"$``)CO$/0PW/F"]##X<_`` +M-]DP*``!OYG4@"$``-`P8P``/62PD1'9-"@``;^9L)$2V3@H``&_GI"9!+^9 +ML)$3/GDW`-E`)@`!OYF8[Q'4A"$``-!`9```L)$1V40F``&_F08!L)$2V4@F +M``&_GI"9!+^9L)$3Y/D`0/'T__^SE``O"?#_Z920##"PD0NPP0^0"1`]=+"1 +M#+VDN`4``0#30"$``-@4%```/FTZ`/@(/H4W`!@)(3.4`!K9'!0``+^9\)0! +M]`L,,V0`"0D$-0DAOTVTP`^)``#__]F4E=X0H$G'[\'DTO__E/D$\.0!D)D, +MMN0*O,G`D/\#L,$0MO0$L.$-O`_PL/$./F(Z`,0I$/4+H@$8`2$)[_TI!#`6 +M!O0,%S`6!?48J``S$`)@,QT#)0(^4C@`,QT('`*R"GX:KP"SK0#``0D'-0DA +M/E4Z`%@)@[2@$;2P$K3`#+:4$`$"L)$`,!$$#1#>R*\``'Y-P@"SI``1?XD* +M`?"5`6")/E1`#]9,Y``7K3`$)@/`;\!6`V#O\G$_/^V]1^T +MH`[]G@2TX!#]GP6T\`WQU/\#H.FR&__]U7[/K@"SH``4WQ04``!_^0H!\)4! +M/HDZ`%@)!3]>D!\0H`]2F0$2[@%U"04@7@D$-0DA,V0`)[\^F#T+F#\4?XQ) +M_]_]Z03]^03]V03PQ0*@/K4_%+4]"V","@$0=P$P=@7T#07X"+,M`*[]OTGD +MG___L_T`2?W90"$``%B9(G.4`!'?%!0``'_Y\93^_V#Y]#`(^X4D```````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````"?#T,-#Y@G*T]##XLJ;^3P&RQY#_/__Y%.2Y_P.0 +M$A!SGOX#,-DX)@`!OYB0F0B_E9"9!+^9T$!D``"PD0O93"8``;^9V4@F``&_ +MDSYW.P#9*"@``;^8D)D(OY60F02_F=`P8P``L)$+V3PH``&_F=DX*``!OY,, +M$+(JL@M^-C0`LAJR:PP0?C8T`+(*?FRO`+.D`&&8+`&8&0-8+04._I7/'_V> +M!/WY!;4?`\=&"I@;!%@D!'#6`?0-><0Y!V:4]!L5"?#_.?2FO_0,"Y"Y$*:? +M]`M?6`F#Q&T!\,3_MM0*\93_`[(:_=D%?L^N`+.@``HRK3X;/0!8*068'P2R +M"K(K4ID!D/\0=2D%M1\$#!!^-C0`OWG?%!0``'_^/=3QE0!`H'G'F?#]G@5@ +M^3X;/0!SW0&J`%@)@9`/,+(;#!#$D0PRD\0:_[:D!+SZH'XV-`#D2?__Y(__ +M_Y"9`::?]!X+LEH"!CYR/`"VE`0"!;Q9H%@/@[2P"\1N`<09#+;D"+;T$+:4 +M"?V?!?V>!;"1``D"#1`PD020#!#>R*\``'Y-P@`-`[.@`':X#P`!`#_Y$!H! +M$)D!(/DSI`P&/:2_?\0Y\SW4_ZF5\?4`0*!_\)3_-0(A=0F!/AL]`+(*?AJO +M``D(LZ0`!@D'-0DAW4`A``#;%!0``+_9F-X+F-P4?[_QE0`@\>4`(*#9\/4R +MM=X+\<4`(&"_M=P4#0$RVO0P"/N%,+/$`%C9____`-\`QP``_ZF4II_T&U25 +MJ1@/`;.0$18/`K.0(1`/`[.000JSE%`/#P39U6D``""?^`#?U6D``+.48!$) +M!2#YV?P7``"@F_@`"08@^?@(^`"SQ`$/^`@/!MG6:0``()_X`+W4"1+^G0ST +M,A+T,A+T,A*SU`$+V6A>``"@G=GL%```OY_9Z!0``+^9IOGT&US9'&,``#^9 +M,Y0`4MX,$!`!O^G?____?_V?!*#I#__9$!`0`:"?WHB(B(B2F0R@GKWTV4P3 +M``"@G]D($!`!H)[^B0'PE0+^F`"SU`$.V6A>``"@G_0Q$O0H`?@`?93?%!0` +M``H!8/F]M+W$?F9'`+.@``;X"`\"V>44```@GW[%W@!^:]\`?MS=`-D\%``! +MOY_9S&D```P!()S]_`39P&T``""?W>!I``#>3X` +M(-P@[W[7X0"]E)B9"?F4^`"8KPW'^32SD`$,LY0#7SZX/@`)_F:Y]!M3B0`` +M`?_YE8___\_]GP2/```@_9\%/NP^`)BN"HG___[_^92/```$_9\%Y>___[6O +M"H___\_]GP2/```@\>3___V?!8\``/_]GP3]G@6UJ0T*`_@`F*\*F*T-F*P( +MC@``___^E/&5_O^UJ0J)___/_=X$\?3___W]!?WY!(D``!#]^079____][6O +M#?W)!+6L"/@`F*D!LJV8KPW'F0?T"PW'^1#T&U<^C#\`Q_D3]`M'Q_D2]!LQ +MY+S__V:_]!LHF*D*CO___?_^Y(\``/_]GP3_R96UJ0J)```P_>D%M:X-"@+X +M`,?Y$/0;$[+:?O,^`#Z`/P#X"`H!^``*`?@`F*\-B0``"/WY!;6O#<-+/$`168J0F/_O\` +M\93__Z:?]1N=`)BY`7+MQYN0]`L8L\0"&0G]9NGU#(8`<^D`@@`^1D``L\`" +M><<)$_0+"[/``PBSQ`%KY-S__\<)$_0;-YBI"IBN#9BM"(\``/_]GP3_R96U +MJ0J)```P_>D%M:X-Q]D1]`L^B0``$/_9E;6I"#ZM0`"8K0G9````!-___Q_\ +M_PF5_9\$E+X5_>D%B0``_[6N"/W9!/_-U;6M"0H#^P%^(!0`/J]``)BY`;*M +M\)0/LY0".IBI"-\````(_9\%M:D(F+L"QYD30#?`````=G____X_PF4_9\%M:D*^`/[`;:E&+/``#ZSI!$VV;1H``"_F:;9 +M]!LIW104``#;9F<``'_9/[_3_`[:5"+;4&+;D"'7)"OWM!:`^ +MD+L!L+80]`T%O;22$0'T"QF\NY"\FY"4G`/94!8``+S)P*:R]!N*V0@8``"@ +MF]D(&```OY_9!!@``+^9IOGT&Q#?%!0``'_Y\93[_V#YO:3[4;WTF/D0]##P +M^8*PL0MPP16PX0ERVZ:I]`@9F/\1IJ_T#!&TX`N2J0&\GG"F?_0($-]$$P`` +M"@>_^3Y61`#9#!@``+^0L`80]`T3^`BP!A'T#0OX"`H"/EM$`-D$&```OYQ2 +MOR"\S)"\G)"4G0/94!8``+S9T#V4-=D+]E*#YV1P:$`&_F?"4!_0+ +M#7[]00"]I#Y;1`#?$!@``+_YO:20F0&@^?N%$/E2LJ'T,/BRL++"LM2RX[10 +M";.T``;X"+,D$1:R&K(+?H7%`*!:LZ`#(+.@!QP]E+`Q`+(:L@MR+;).,)$$ +M?<1^TD(`H%KT,`C[4?F"V1@:$`$]5+^3UPP8``#4`!@``-;T%P``/C%'`+]Q +MLQ0`!O@(OTO9^!<``+^0OV*\NY"\FY"4F@/94!8``+RIH%BL!+V$<\`@#7/` +M0`ESS1#"`'/$0`V]Y$\_`3XG10"_KIB-$%BI`I+O`;OM`O"3`+;E"+SY\+O] +M`K;U")#Y`;N>`G/$$"&\"0"F(/08!;("&*D*\)0!]!L%LN\,`0D!/FI%`+L) +M`G/$(!48J0KPE`'T&PNR[SW$/FI%`#W$O93$F@'9$!4``+SIT#_9D.X!\)3^ +M_ZF5(-DSQ``)\)2_(-F0W0&F[_0-Y9"[`;"V$/0-!;VTO+N0O)N0DA$!E)H# +MV5`6``"\J:!8K`0S60`[_]GX%P``H&*@D*!QH$O9+!H0`;^96*\*YYEH`76I +M"V;Y]`L%^`C?````0-D8&A`!H)]SP"$.<\E!W@!SS1$)`=D````!_SF4]`M# +M<\0A(+^OV0#M``"F^?0+,]]`$P``O_F0F0&@^3[]1@!SQ!$@WD`3``#=U&D` +M`+_I/]^0F0$0_P&@Z2#?/O]&`+^NO918KP*8G1"2Z0'0^!<``/#S`+N=`KR? +MD+OM`I61"+;E"`D!NYX"O)&P<\01'+\)OV\-`;RYD*`)II_T#12@:0T!/I5& +M`+\)/=2[FP*@"1BI"O"4`?0;!;+AV1`5``#$W`&\Z?`_^9#N`?"4_O_)E2#Y +M,]0`"?"4OR#YD/\!IN'T#>4^_T8`V?@7``"_G]X0%0``/^GPE+X@Z9#N`=E0 +M%@``INGT&^^X_T`!`MGX%P``H)\^_T8`^`B_>;]/DID!D/\!H'F@3[#V$/0- +M![V4H$F8J02_K9BJ`\<\&.<[*`$%`?F5V1@:$`&_D[`V`/4>D_W9#!@``+^9 +MLY``(]D$&```OY_9"!@``+^9IOGT"P_?%!0``'_Y\)4$8/F]I/N!]##\^4+T +M,/BSI`!6V6AI```_F<2?_\?Y`?0;"L3Y`?4+\@#9$&D``+^?V71I``!_F]G_ +M__\`LOK]^03^20&0F1SPLP#=````(;"1`/_]U0PAWBDC``!^7D0`/G=(`-\` +MQP``V:SL``"\G[(/`=DC/0``,/$$L)$`V=5I``#?`,<``#WDLOH@GMG___\` +M_?D$W@```!%]Q/_^Y0T1?M)"`/Y)`9"9'*":09@ZLZ``"?@(09@ZTM5I```$ +M_],8&A`!/RDSD`$X`&0^2$@`OSFPE@#T'Q%^J40`/RDSD`$0,Y`&#)(``:8$ +M]!OE/RDSD`$.DA$!]!O-/F1(`+,4``;X"#WTV=5I``"]I""?]#`(^T4$WP#' +M``#9U^0``+R?LCWT/M-'`-DC/0``^1+T,/BPD0#9U^0``-``QP``O)`2V0`` +M`"'>____`/\.Y/WI!3V4L@HPD02R&WW$#2%^TD(`#@JSJ0"#`/@(/DI)``ED +MO\^2F0&FG?0+";#V`/0?\[#V`/0?:MT`&```O]G>````0-\8&A`!H/Z0F0&@ +MV;"6$/0-![V4H-F]E-X,&```F)\0O^D]Q+P/\I*9`:#IE?D(O/'PLIV5^@C? +M$!4``+R?D#Y!20`@G)#=`9"9`:;:]`WV/EI)``W_W!@:$`&2[@&F[?4;?/^] +MI/0P"/L1E:D8L\D`HP"SG1&0`-D,80``OYFFV?0;(-T4%```?]G;$&$``-PL +M$P``/[^_SO&5``$^ZTD`V0"N`0"FV?0;$=^08```/_GPE/X^8DH`V0#E``"F +MV?0;$=\T$P``O_F0F0&@^?@`V0"T`0"FV?4;O@#=%!0``-M@;@``?]G<.!,` +M`#^_O\[QE0`$8-GP]/X@OY#N`:#.^`#9"`$0`:":D)D(H)WX`+.=$84`V0QA +M``"_F:;9]!LAWA04``#=$&$``'_I/]_QE0`!\/3^8.GP]0(@W_@`V0"N`0"F +MV?0;$=^08```/_GPE/X^7TH`V0#E``"FV?0;$=_E%```/_GPE0(@^?@`V0"T +M`0"FV?0;']X4%```W6!N``!_Z3_?\94`!/#T_F#I\/4"(-_X`+VD^`"]I/@` +MO:3X`/@`V?`0``&_G_D"LIJ]Q-EH;@``\/3_F)L"OYV8G@$``3ZF2P"ST`)0 +ML-8"]`P,L]T!V0`^WTH`L]`#6+/=!@0``&@G]WD$``!D)D$H)Z_W]D````@E>P8DLX" +M_?D%H-^PY@/T#1VSP`@:L\`'%K/`#1*SP`P.L\`1"@D%L\02)]DD```!OY_9 +M:&X``)B>`]G$;@``D/\!H)\)!+/D``CX"`D$WVAN``"@^;V4M?D"/K9+`/@( +MLMRFS?4;%__9:&X``*"!;7\`[7Y`7Z<2@"]I/@` +MLZ01(]D`A@$`IMGT&QC?R&X``#_Y\)3^(/FSQ``)\)4"(/GX`-EL:0``OYGY +M`K.0``Q^/B<`/C5-`-E(:0``OYFSD``,?I$G`#XU30#9R&@``+^?Q/E`]`L0 +MV9!I````!K^;/B5-`.3Y`"#T"Q79V&@````-?YG<\8@!`#ZM3`#D^0`0]`LS +MV7AI``!_F7.0`!/DF___``S<]8@!`#XG30#9<&D``'^9``S<]8@!`.2;__\^ +M)TT`B0```O_YE/0+%=D<:0```!&_F]RSB0$`/B=-`(D```3_^93T"Q79&&D` +M```2OYO<.8H!`#XG30#D^0!`]!LP/C5-`-\4%```?_GQE0`(8/D^-4T`V_DL``)`` +M$++-L`$`?EY$`+\)LY``!O@(W\AN```_^?"4_2#Y/N)-`,3Y`?0;*K(*#!&R +M*_Y``=[^2P``D``0LLVP`0!^7D0`OPFSE``+/QGPE0$@&?0P!/LE!/0P_-X< +M&A`!^5+T,/C^3P&0_R"_Z:#YO_GPE`?T"_>SK0&O`-GE%```/YG'F0'T"P7X +M"-EA20``L)$`V?___P#?`.4``-NL[```LOJ[OP+]^00]E-X````1,)$$__[E +M?<0-$4$0)W[20@"SH``)^`A!$"?^0P'2Y10```7_U!@:$`&0,R`_*<>9`?0; +M/$`0)SZ43@"_2:`YOSFPE@#T'P]^J40`/RG'F0'T&PN2``&F!?0;XS\IQYD! +M]!L-DA$!]!O&/A1/`+,4`&@^%$\`LZ0"7MGE%```/YG'F0&SD`$&^`C984D` +M`+"1`-G___\`WP#E``#;K.P``++ZN[\"_?D$/93>````(3"1!/_^Y7W$#2%^ +MTD(`LZ``!O@(W^44```_^?"4_2#Y/A9/`/@(]#`(^U4$]##\V6AI``#Y`C^9 +M]##\Q)__Q_D!]!L)Q/D!]`M.V1!I``"_G]ET:0``?YO9____`++Z_?D$_D`! +M\+,`D``(W0```"&P`0#__=4,(=XI(P``?EY$`+\)LY``!O@(WVAI```_^?"4 +M_"#Y?NU6``H!?NA-`/0P!/L%!+.@.`VSK3R!`#[V3P#9."```;^9#\?_O_3P +ME`CT&RC>`"0``)CM++;U!L2Y`;;T!O#5`;7I,[7O+;7M++7O,;7O+_@`Q/T& +M,]``/MD4%```?Y_>`"0``#7M&/#U`F"?^`#9."```;^9\)0(]!L:V0`D``"8 +MGRRUFRZUFS*UFS#P]0*UGRSX`-D`)```&)GALJS>Y"0```H!Q)W_/E!0`'_I +MD.X"Y)___\?Y9Z;)]!L+Q/E_IKGT"PV0J@&FK?0-XKVD^`"PIB3T#!V2KP&\ +M_Y"\GY#?R`0``+:4!+R?D+6<"[6;"O@`LZ0$&]^H:0``O_F\N9"@^;&61@#T +M#1SX"/@`WXAI``"_^;RYD*#YL99&`/0-!?@(^`#97!,``#^?F*D$LJR_K0H$ +MQ)[_)OGT#&^)__\/Q]IT_]F4WR$3``#T&R`_^?"4_Z;I]`A$V2(3```_F?"4 +M_Z;I]!@U/B]1`#_Y\)3_INGT""?9(A,``#^9\)3_INGT&!@8R0@SE``2LZ`# +M';.@`1FSI`(3^`"2J0&PE@'T#0D*`?@`"@/X`-D`)```F)E/QYFJLY`/.K"6 +M#_0,$)*9"K"6`O0,6CZL40"SD!!7LY013[^NF*\*"?C]Z039____^*"N_?D$ +MM:\*/JQ1`-E0$P``/YDSE``MOZ_$^0>SD`(."?C_^93PE0.@J9BI"M_____X +M_9\$M:D*/JQ1`/@(^`#9238``#^9,Y0`$-\4%```?_GPE0)@^?@`V:AI``"_ +MF;.0``W?`(37%S[O40#9B&D``+^9LY``#=\`AY,#/N]1`+WTV4`A``"8F1C> +M`&7-';SIDKSYD+R9\+SY\+;U`:;^]`T%LN^)0$(/__F\L[0`#;#V`/"\"_"V +M`=^0:0``O_FFN?0+*J#["@:]Q'ZX2P"SI`$=WLAH``#=%!0``+_I?]_PE4#Q +M]0`(H.E@W_@`WX`N``#Y0L2D/Y))`;:4!KR?`-]`)@``#!2\GQ"R"[*CLAI^ +M-C0`OQ^8'@$)^)@*"OWY!+V4\/4!M1D%H!_'[$/$RP'T&PS=`````3ZP4@#= +M`````Y@?`;V4M1D/M1D)M1D.Q_GHD)D!MI0;Q_\AM1D'MO02B0``(/_9E?V? +M!=X`)```M1D&F.F$F.^"Q)W_E-D(Y)X`#S/P``CQY0`0V5P3``"SL``M/YG? +M````(/_O]?"4_Z;9]!@TL,8$]`TNV?___P__^93?````,#Y#4P`_F;+O\)3_ +MIMGT&!&PQ@3T#0O9````$/WY!;4?"+.P`!C9`"0``)B9@C.0``SDK___/F-3 +M`+WTB0``"/_YE;49"MD`)```F)F"\)3_]!L)O<0^E5,`MI0!W^`D``"\GY!8 +MF0'PE'^4G`C2`"0``)@I@9@N@Y4]!K;4&,>9\)2?!+R9D+N?`M]`7```D)D! +MMI0"N9D!O)^0&)D"WP``_P#PY'__SN6VE!#]GP3]Z079____`/WI!/WM!;4> +M"Y@@@-H`)@``?JU0`-D``/``MJ04_:D$B?__#_\)E/VI!=D````"_PF4E$\; +M_:D%V0````3]"03]H`7]KP6U&@R8+8+$W__T&PF]Y#YY5`"8*8'DW@#__>\% +MQYGPE)\$O)F0NY\"WT!<``"0F0&VE`*YF0&\GY`8F0'?'6,``/"4_SSYF(\` +M``.VE!#]GP3]Z06/__\_B0``P/_O]/_9E/WY!;4?#?M!^0*RH'['6@"SH``7 +MV0`H``&_F;(*?LM;``H!/L14`-F(6```OYJR"WXX7`"PI@#PK`OPI@'[`9BI +M"ODRLJ&RLYBB`<>9%_0+";*@/O94`)@9#)BJ"[:5&[:E&+:D!OVI!7X:?0"R +MH,0I"/0+4;,$``;X"+T4"1+^D0ST,A+T,A+T,A*S%`$+V6A>``"@D;(*?;1^ +M*)4`F`D(L@KQE0`@M0D(?H]4`+,=`>8`O?39:%X``*"?]#$2/AM6`+,``!3% +M"02]M+B:`"`"#`$^FU4`F!\(V0`D``"8GF&8'0SQ]0`@M1\(E.D#WP`D``"\ +MGY"8FV79D"4``+;D`[SIX+_IMM4;LA"VU`:]Q+S9H)@)",>9$O0;";VD/AM6 +M`-Y(-@``/^G=238``#_?$)D!(.D0_P$@WY@)".6=`""U#0BSP`!&F`D*W___ +M__C'WF@*`?V?!-\````!_9\%M0D*V204``"\GOC92S8``"">E=DD%/92R&S"1!+(*?<0-$7[20@"SH`(,V0`D +M``"UD`3T,`C[$?D2LJ#T,/BRL;.D``;X"+,4``;X"+(*LAM^A<4`LZ0'"O@( +M/NA6`+.D`RW9B:L``+"1`-D````AWO___P#_#N3]Z04]E+(*LALPD01]Q`TA +M?M)"`/0P"/L1V8FK``#T,/BPD0#9____`-\`[0``VY57`0"R^KN_`OWY!`D! +MW@```"$PD03__N5]Q`TA?M)"`+.@``;X"/0P"/@`^1*\NA+T,/BRH+(;?H7% +M`+.D!PKX"#Y-5P"SH`,*O:0^BE<`V8FK``"PD0#9````(=[___\`_P[D_>D% +M/92R&S"1!+(*?<0-(7[20@"SH`(.V0`D```*`;60!/0P"/L1^1*\NA+T,/BR +MH+(;?H7%`+*ILZ0'"O@(/K%7``H!LY`#.]F)JP``L)$`V0```!'>____`/\. +MY/WI!3V4LALPD02R"GW$#1%^TD(`LZ`"#MD`)```O:2UD`3T,`C[$?E""?^R +ML[*@LL(+_R;9]`L+"0&[G022FP$_"<31_P0!/HA8`+N4`I2=`MFT3```O-G0 +M/]GPE`^FD?0+7UC?`;Q)E/\YS>3Z__\^@5@`&`D!E*X%E*\"O.^BQYD$]`L, +MV816```^75@`O.^BV5A-``"\J:!8J0'PDP#_N92FG/0;$+,@`"*8J0*VE03T +M&Q@8J03$FO^SI`"Y&-D!\)3_]!N&O:3[03V4]##\^4*RL_Y``;*KD``5LL2R +MX2`--0D!-0D"M"`'L@I^MX,`LZ0`"O@(/B]9`!@)`M^P3```/>3PE/^VE`*\ +MGY`8F@(^)5D`Q*G_LT0#%I2?!;:4`KOY`MF$5@``/@-9`)2?!;:4`KOY`ME8 +M30``O/GP6/D!\),`II/T&PT@&B`N"@$^+UD`II/T#`PRKACZ!#.D`+<@&B`N +MO:3[1028J0F8OPD,\+*NMI48E?T8/F)9`)BI#K*N_YST\)0"N/\`(`"SE``1 +MF/D)LOJVE1BFG?0,XIBY#K.4``J8Z0ZUN0[%N02XF0`@`K7I#O@`F*D%F+\% +M#/"RKO"4_\3]_SZQ60"8J0:RKO^<]/"4`KC_`"``LY0`$9CY!;+Z\)3_IIWT +M#.*8N0:SE``*F.D&M;D&Q;D$N)D`(`*UZ0;X`)BI!?0P[/D2Q:\$QYF,E)X% +MMI0"O.D"V816``"\"0"8"0*RH;C_`"`"II_U&XX`F+P(V:8+```8NR?^3P'' +MS&BVQ`*\R<`)`9#_"*#Y"0,U^1`)`C7["+7P`[+[-?D1?HV(`)@>!L?L`?0; +M1PGP_^F4F!\%N)T`(`"8V04F^?0;*[4.`A@9%#.4`&*8&0;'F0/T"U@)]__I +ME+4)`IC9!O"5"+79!CZY6@"U#`(^N5H`O92U"0(^N5H`MI4$]`L0D`H(LAM^ +M0(8`/KE:`-K$$```LAM^0(8`V<00``"_G[/T``O9PA```""?F!D&#_?]GP2U +M&0;[%128J0CT,.SY(K*AQYD1]!L)O00^QEL`W\04```_^<6N!+CN`"`"$ID! +M(/F8H@G'*824GP6VE`*\^0+96$T``+P)`)@)`J:>]!MG?A^$`)4I&/Y/`9#_ +M##7Y"`D"-?D1-?D0"0&RK+7P`[+[H/FR&GZ-B`"8'@['[0'T&RP)\/_IE+B9 +M`"``F)\)F!D)MO48MI48IOGT&PJU#@(^?5L`M0T"/GU;`+V4M0D"/GU;`)`* +M"+(;?O.%`)@?")@>"I@="8G___W]^039____][4?"/WI!+4>"L3:#P`!]`LF +MV4!*`````;(;NZ`"MJ0%O*F@?M!9`)@9"H__`/_]GP2U&0JR"OLE%/D2V818 +M``"_D+*ALP0`!O@(V8A8``"_GS[Q6P"_^::1]`L.F/\"L_0`]C[[6P#X"+(: +M?G^%`-F$6```OY_>B%@``*`!F/\"H)^_Z=_%%```M0D"H.`)_W4)`C^J/90U +M"08U"@<_^1"9`2#Y^Q$^1EP`OZFFF_0+"IBJ`K.D`/;X`#Y:7`"_J::;]`L* +MF*H"LZ0`]O@`]##\^8*RL?0P_+*BF+`&?A^$`/Y'`?Y%`;*DO>20=RL]-)!5 +M*@@+!@$^"5\`LPD'O@"P!@?T#!"S``$;LPT%8P(^'5T`LPD*.`&S#0M5`CX9 +M7@"8*0C'F1'T"P7X"#43`C43`1@I)[(:LDL@&7ZW@P"SI``*^`@^&E\`F"\) +M&!D"WK1,``"R*\?_A)3Z!;;T`O"4_[NO`KN6`M]830``MI0"O)Z0O*^@M1D) +MM1H*D*H,?O.%```%#@$^"5\`F!\*F"H)F/D"MI4$]1O<`9CY`[:5!/4;T@'' +MJH1^3I(`LZT`QP&R#@`'/@E?`)@9"I@M";)*#`)8FP$@`!C_`?"4_]ZT3```NY8"MI0"O)Z0-9\!F!\)#@H`"S_Y\)1_(/D^"5\` +M&"DTF"H$,Y0`#96C$+T$/C9>`+(J``%^KH(`LJ.8&0JR2KW$#?]8FP'PLP!^ +M[5<`LZ``:I@?"J:O]`M#/_GPE`+T"SL8_Q@_J36O&)@?"O"5`B"I6/\(=:\( +MLP``(IBO!;/P``L_^?"4_B#YF!D*F)\%M:\%/_GPE0$@^1BI&%BO"!*9`7OS +M`C6I&'6O"+,```RR*[W$?IR:`)@:"C^I\)0!]!L&M:D%F"D(WUP3```__\>: +M:":O]!@EQ*G_WHH+``"4GP*\_I`_F3.4`#79D@L``+SY\#_Y/O=>`#]),Y`` +M*3X87P"R#CX)7P`.!0`+IN#U&X+]M1X&O:0^&E\`"@'T,`3[A03PI/^R"[W$ +M?O*9`#X87P#9(1,``/0PW/F"L*$./Y\8J0&PL0VPP0RPT0O$D`\F#_0(#]DB +M$P``/YDF"?0(!?@(M*`-Q`G_E)8"V9(+``"\:6!^KH(`S:B\S**\\`++YL/$1MI0# +M!0B0F0:]-+"1#[U$L.$*/FE@`+3P"J8/]!L)!0,! +MM)`+LY0`)[2@#K2P#;3`$>0=__]^)YP`3KP`Y'G__[SJHJ:I\$P(\$8!LS`` +M%K-``!*S!``'/I)@ +M``HC^X4D^8+07!,``#\+VHH+``#PM/^VM`)^H30`V5\3```_F]J2"P``\+3_ +MMK0"?J$T`#\+VJ8+``#PM/^VM`)^H30`V5T3```_F]JN"P``\+3_MK0"?J$T +M`-JT3```2Y``?J$T`-IT30``2X`#?J$T`-KT4```2ZH%?J$T`-J@5@``2]P! +M?J$T`-I`2@``2R`"?J$T`-I`#0``2X`!?J$T`-J,6```"R!^H30`VL`+``!+ +M@`%^H30`VF!,```+0'ZA-`#9?%@``-S`"P``H)S9C%D``#WT()_9P!```-Y` +M#0``()_9P1```""?W\P+``"2^02@GY#_#*;^]!OVV818``"]]-Y`#0``H)[9 +M@%@``-[`#@``H)_9P`L``+6?7]],#0``DOD$H)^0_PRF_O0;]ME$9@``W_!F +M``"@^=EC$P``/YS9B%@``+WDH)[90`T``-]$9@``M9Y?$LD!Q)W_/OUA`)+Y +M!)#N`:"?D/\0INWT"//94&4``+T$H)#$R?_<-&8``+:4!+RV2$3```_G]DB$P``/YG$V/_$Y__$]?_$ +MEO_2W&8``-F("P``T?1F```@D-V@3```O<2]-'U$/B=C`-Z*"P``V:8+``"\ +M#J"\">`8^0'PE/#_N94U^0&FQ_08*!BO`8FZVP"@V1CI`?#T\/^_]36O`?"4 +M\/^YE?"5$#7I`3[K8@"FQ?0(*Y0_`MZN"P``O/[PIL;T&!M)7AJ@V1CY`9`S +M`?"4\/^YE37Y`3[K8@!.A02@WCWT=20!("\U+P'>M@L``+S.D`__WKL+```@ +MG[S.D""?IL7T&`L@%#44`744`9#,`9`B!)``!)`1!)#=!-F2"P``Q,L/O`GP +MILCU"#__V5T3```_F=_49@``/>1]U/"4_[:4`KR?D#Y@8P`@_C7^`77]`9#_ +M!*;Y]!OS/?39PA```""?O?39Q!```*"?^X'Y$K.I`Z(`L*8#]`P0LZ`!&[.M +M`BX!/MMC`+.I!+L`LZT%(`$^@F0`W[1,``"]!#_YD`$!D/\$,)8`]!X>V;1, +M``"V!`(+!+P)`+(*?OXT`+(:"8`^#60`LA"S%##5/KAD`-YT30``O?0_Z9#Q +M`9#N'/"4`?0;)I3Y`I3P!;L)`MET30``O`D`"QRR"G[^-`"R&@D!(`D^NF0` +MLA^S%"#-/KAD`-Z@5@``O?0_Z9#Q`9#N'/"4`?0;%93Y`I3P!;L)`MF@5@`` +M/OYC`+(?LQ01WCZX9`#?0$H``+VDO_F0H`&0_R"SE``;V4!*``"VI`4+(+RI +MH'[^-`"R"CZZ9`"R"K,$$-L^N&0`WO10``"]]#_ID/$!D.Z1\)0!]!L>E/D' +ME/`$2Y$`O`D`V?10``"\#P"\"0`^`V0`LA^S%`K5O:3[$<6I!/0PH/EBN),` +M(`*RH9BF";*R_D`!"UR0`!RR"GZA-`"8&0@%`;4#$+4%!L>9$?0;?=F(6``` +MOY\^!64`O_FFD?4+50&8_P*S]`#U/EYF`)@9"<2:#_0+'@D!NZD"M0D5V4!* +M``"VI`6R#+RIH+(;?HF&``M<_D`!D``_S^F +M_O48@P"FXO08?9@9!M____\`W8Q8``"]M/V?!-\````#_9\%M1D&O]F0W0BS +ME`!'VHQ9```_K=^,6```E+D#O)^0H)/9D%@``%+N`95L&+R[\+;T`KSY\`D" +MNYP$?.G@8/[PU/^FO?0-'1"Y`2"I/EEF`)"[`;.T(+$^668`O:0^6V8`"@'[ +M96#^0`&R&I``'+(+?F!<`+.M`*'^/C%E`/DBV0`@``&RP?_+!+RI(+.K6`9I +M`K&F6`;T#"BSJC0&3+&F-`;T#`VSKS`&.P,^XFD`LZI0!FZSKU0&+`,^XFD` +MLZMD!N8"L:9D!O0,#;.O8`85`SZ+:0"SJV@&VP*SKVP&!0,^QFD`V5`F``&_ +MF?"4$/4;]P+9P%D``)B9`[.=!>L"QPGH3P`"LY`!#+.=`-P"3P`#V2B`$0&@ +MGS[>:0"_+;\LOR^_*\0)$+F9`/#4$/W9!+D9`/V?!-_A__]_WAX``(#]SP3_ +M#N3]G`4/[_WO!/V>!?^=!?\+QL3)`O0+#L3?!&`1`=Q2 +M$P``W?__`(X^C6@`W@"`$0&_[]D```"`O<3=!&`1`?WY!=M2$P``H._>```` +M0-___P#./CAH`+_9D,P!_9X%_9\$H-F0W8`_N?"4_Z;)]`CIW_F3[@:0`)_?T) +M!#[@:0`)\/T)!-G`60``M9`W/N!I`-G`60``M9`X/N!I`(G_`/_]"039,&<` +M`)4/$#60!]D07```=9\$/N!I`-\07```E0D0=?`%=?D&/N!I`/@(/N!I`+T$ +MH"#[(?0P_/DBTF9G```_*;WT]##\_D$!D!$0H!_$G__'^0'T&W;$^0'U&\\` +MV;1H``"_G]FP:```?YO9____`++Z_?D$L!$`\+,`W0```!$,$?_]U=Z+00`` +M?EY$`+\9LY0`'C\IWA04``!_[[T$\)4!("GQ]+__8.\^VFH`LY0"$=\4%``` +MO01_^3[$:@"SE`=I^`@^V&H`?J'Y`=FT:```OY_9L&@``'^;L*8`\`P+\`8! +MV?___P"R^OWY!+`1`/"S`-T````A#"'__=7>BT$``'Y>1`"_&;.4`A3?%!0` +M`'_Y\)5`8/D^VFH`/RGPE/T@*3[::@"]!+(*]#`$^R4$^`#X`!BI-8[`(@+P +ME/^\GI".0-W]E)\'O)Z0W@1@$0&__[:4![R>D+^>D)D$OYG'G0S$G@_T&P>S +MU`!6DND!L)8"]`U,L^`/2;/@"$6SX`='L^0`#+/0`#\^3VL`L^0&"K+I/GAK +M``D"L^`%+>3Y``+T"R4)![/@"B`)#K/@"QH)`;/@!!3X"`D-/GAK``D(/GAK +M``D%H*D/`;.0``P/`[.0`@8/!S6O!?@`^1+9"4Z02_GXF^_>^\Z>"4Z02@W]XD)``!O)Z0OY^0F02UWP&_GK7>!)C)`I7O +M$+79`IC)`[79`_0+!?@(O\F2SP00NP&0S(#]D03]G@6UV02___WP!/WY!;7? +M!)#=%,2^_Z;J]!Z8^Q'Y@ME<$P``/YF]Y$(``=$0%``!Q)W_T!04``&]I-P` +M%@`!"[\^?FP`O"[T]`L,DOD!_9\$]`L%^`B@'Z`*O\F0[@']FP2@R:;M]`C? +MV7)I```_F3.0``;X"-E4$P``T^1I```_E=($8!$!B/__QS[G;0")00(0O!D0 +MOSF4%@2_9Y@L`;\DW0`"``Z.O_WO_9T$O!X0_WFUL$8`]!\1#`6]U+WTO:2] +MY#[P;`#'SPS'RG#'3='PQ`^R_L>Y%/0+"4G__?VY!)2I"K;4$?W9!0G^_[F4 +M_9\%#_W]GP1/'_Z\[N"VQ`7PY`+]G@7]GP1/_\/]G`7]GP3_V06@8,<)T1)6 +M`;.0`"+'>='T&QO$:?_?0%P``)2:!K:4`[NI`KROH'[O,0"8/P3<__\`SMT` +M```._TR4_PWDW````$#]_`3]GP7]G@6@*9@[`<1:_PP!$%4!?I(I`)(M!+_9 +MC````>0/``*4'@3]G`7]F`3]^04)[_WY!*#?F#\$W1@D``&\[>#$:?_Q]/__ +MH.^8/P*4F@:VE`.[J0*U+P*8.0/>0%P``)`S%+RNH+4I`Y`B@'[F:@#?4A,` +M`-Q4$P``/_D_S\11__"4__#T_[R?D*89]1ZF_KWDVUP3``#<)!0``-T@$P`` +M/CYN`#_9\)3_O.F0O,GXD.X!F/E`\94``;7Y0)CY(/&5`("U^2`_N?"4_Z;I +M]`C7^X&SI``4V6`"$`&_GP[^_?X$H)_X`+V4&)ET,Y``+]DP:0``?YF]Y.2? +M__\^@6X`DOD!D.X!_?D$L_0`]QCY=/"4_Z;I]`L%O:39Q10``#^9,Y0`']G$ +M%```/YDSE``4LZ0!$-]@`A`!O_GPE0&@^?@`V20```&_G]DL:0``OYF[KP+L +MF>@#_ZFL^`"RJ;*OL*8`]!XKLKJPM@#T'A/_^JS_N9;T'@7X`+FJ`?@`N;H! +M__JL_[F6]!_P/O%N`+FO`;*ZL+8`]!_8/O9N`)6O$)6Y$/^ID?^ZH/V_`;RY +ML+:T$+RZH/@`^`#X^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX````^9#Y +MH/FP^<#YT/G@^?#^B@'YH'[;<`#\H/ZH`/SP_.#\T/S`_+#\H/R0^`'YD/[) +M`<>9=+"6#_0;$_0R&/[)`?V9!OZ<`/R0^`'YH/FP^<#YT/G@^?!^]7``]#(8 +M_/#\X/S0_,#\L/R@_)#X`0```/D`^1#Y(/DP^4#Y4/E@^7#Y@/F0^:#YL/G` +M^=#YX/GP_H\!^?#^SP'Y\/SP_/#T,#SX!_@#^`+X`=D8$!`!OYG:____`/^: +MI/@`V200$`&_F:"IV2@0$`&_F:"YV2P0$`&_F:#)^`#9"````;^?H)^2F02@ +MG[/P$`BS]"`&^`CX`/[/`=D4`1`!H)^XF2@/`+^9WC``$`&_Z0_]_9\$H.GX +M`O@`V4P3``"_F;.4`$"RGPD2_I\,]#(2]#(2]#(2L_0!"]EH7@``H)^]]-D$ +M$!`!H)^0F03>#!`0`:"?O^G?````@/V?!:#I^`"SE`$UW@P0$`&_[]F$$P`` +MOYW9____?_WY!*#OL]0`#D\-#MD$$!`!H)^]]-D($!`!H)_X`-X,$!`!O^G? +M____?]V(B(B(_9\$H.G9!!`0`:"=D)D$H)WX`/0P\`H"^8+T,/Q^Z$T`V@4``"_G]GL%```OYFF^?0; +M";T4/J9R`'ZJ=P#?A!,``+_Y`0&FD?0;$[*1O92@^4\-#MD$$!`!H)_9C!,` +M`+^?V9`3``"_F:;Y]`L0V5`3```_F3.4``8%`=D4%```?YGQE``0]`L'?I,& +M`-D4%```?YGQE``@]`L'?F^X`-E0$P``/YDSD`!"V5$3```_F3.0`#>S5``S +M/034C!,``-.0$P``/BIS`'ZM>P"SI``*!0$^,W,``0$S!``/,A"_3[\YIOGT +M&^39'&,``#^9,Y0`$=D4%```?YGPE`CT"PU^VA4`LZ``!@$!Y"/__\0I*O4+ +ME`#$*0CT"P=^GK\`Q#D"]`L'?L=_`,0Y(/0++]D8&A`!OYFPE@#T'PE^J40` +M`0'90!H0`;^9L)8`]!\/O:1^W<(`LZ``!@$!V01A``"_F;.0`!"]I'[=P@"S +MH``&`0'9%!0``'^9\)0$]`L-?OU!`+.@``8!`=F,$P``OY_9D!,``+^9IOGT +M"PRS60!$_CX"=`"S5``2V104``!_F?"4$/4+KP#0"&$``#\)O?2@;\2?_\?Y +M`O0;-,?Y`_4;E`"TL`RTT`JP80#:`*`!``P1W@(!``!^7D0`OVFSE`!U/PGP +ME0@@"3ZM=`!^`*`!LZ0`"KU4/E=T``$!V4`W``"_F;.4`4_0%!0``'\)\)00 +M]!M!LU0`/K2P#+30"[!A`-H`H`$`#"'>`@$``'Y>1`"_:;.4`@]_"?"5$&`) +M/JUT`+.4`!#?"&$``#_Y\)3S(/E^-TT`V6AN``"8F0*SE``/V<1N``"_F;.0 +M``8!`=T4%```?][DZ0`(]`L0Y``'T&SW$.8`S +MD``/V7)I```_F3.0`"S9%!0``'^9\)0@]!L>V79I```_F3"6`/0<$=D4:0`` +M/YDPE@#U'=D`VC!C``!^;*\`LZT`S`#0:&D``#\)H&KPE`'T&T'9$&D``+^= +MV71I``!_F]\````1V?___P"RVK!A`/W9!/"S`/W?!0P1WBDC``!^7D0`OVFS +ME``+/PGPE0$@";]ILY0#7GXJ>`'9$&D``+^=V71I``!_F]\````AV?___P"R +MVK!A`/W9!/"S`/W?!0PAWBDC``!^7D0`OVFSE`(1WQ04```!`7_Y/AQV`-]H +M:0``/_D!`?"4_2#Y/BMV`+.4`A3?%!0``'_Y\)4@8/D^*W8`LY0'!O@(T$QI +M``"_"K.@`$=^NFX`O?28^1RFJ?0,"0$!/GEV`-E(:0``OYF@#[.4`";9*&D` +M`+^9LYK@+AM^D2<`H&JSI`40V20```&_F9"9`:`)TM!I``"_*K.@`!Q^NFX` +MO028"1P!`::I]`T+?L51``$!H"#9%!0``'^9?OK# +M`+.D`!;>,``0`;_O"0$@"0G[_?D$H.^S'0#6^I!W`;!V!?4-S?K0.````:`! +M?HP]`-D`RIH[H(D/`=E,$P``H`^@GWX8<0#9:%X``*"1]#$2/BER`'X<3P#9 +M0"$``+^?3O_O]#`$_?X$H)_[A1#T,/3Y@M:4$P``_D0!_D$!_D(!U>P4``"0 +M1"R0$2B0(B33D!,``-B,$P``LF<^?W@`V\!?``"\S)"\G)"4GP*\^_"__I"9 +M`;RYV)C_`J!.D,D!H!V@+[\?\)0/H%FQ]@,,]`UJOQFQEI`,]`QAOQG:*"(` +M``L(N)D`#`*5D`*2#`%^8L4`LZ``4+\ZOXV0J0'$FQ^FO?0+,+\IQ`__CA\` +M_[;T!OV>!/_YQ3YF>`"\;?B0V0'$G1^FS_0+'*;:]!OP/IUX`/@(/J9X`+]* +MOQN_+'Y4$@#>(!0``#_I,Y0`(-_H%```OUR_^::<]1M&_SZF>`"\?-F@.SY_ +M>`#[A0ST,/C^SP'^20&@G[^9W10!$`'^3@&0[@2@V=G4&1`!OYF@Z;_ILY`` +M;K_OV0@!$`&@G[_I\)0!]`LXV>`9$`&_F:#IO^_9#`$0`:"?N)G8&`"_F:#I +MO^_9$`$0`:"?N)G8&`"_F:#IO^F@V3X\>0#9V!D0`;^9H.F_[]D,`1`!H)^X +MF=`8`+^9H.F_[]D0`1`!H)_9$!`0`=TP`!`!#T"@G[_9_DX!D.X$#_V@Z;_I +M_9\$H.F_Z:#9^`+T,`CX`,2Y`_0+!?@(B8(!$;RIH`D3E*\$H/F)?O[NO*F@ +MV208$`&4KP2\^?!)`!"@^9#_!$D`\/^YE*#YD*H"D/\$Y+G_#Z#\MJ0:O*F@ +M^`"8J0C'F0ST"QZ8KP68K@;9____^_WY!(G_?_ZUKP7]Z02UK@:8KP:8K@C< +MC&D``'_-B?___?WY!-G__P'PM:\&_>D$B0``#/WI!;6N"'/0`!B8J0O$W_^V +ME1BFG_0;">79`(!@R9BI!M____\`_9\$M:D&^`#9)!0``/0P_+R:Z+W4"1+^ +MG0ST,A+T,A+T,A*SW0&"`-EH7@``H)V_Z>2?_P_T&R*SU`$.V6A>``"@G_0Q +M$KV4O=2PD0"]Y'YTMP`^S'H`M>L!O?2U[P.U[P2U[P6U[`*SU`$.V6A>``"@ +MG_0Q$MF>%```/)KHQ+__"0>[GP(/`;SYM,3I__^YE/0+!?@(_^OUV9X4```\ +MGZD^S'H`^`@^4'H`]#`$^`#Y,K*@F*,(?K1Y`)@/"-F$%```QST2E?$P#?=10``#SZ +MF!"9`3SYJ=F>%```/)J8#P&[\03PE/__^93T"Q+9)!0``+R:F+6?"#ZK>P"_ +MS`L'N[$"?BEZ`/LQ^3+0C!,``+\/V903``"\GSAR.GX:?0"RH;.D``J]I#X8 +M?0"8J0B_HL>9#?0+$[\)"@&\FI#PE!^@"3X8?0#$*0>8H`&SE`,8"?C_*93P +ME0&]M*"I?I8'`#X.?`"SG0'^`,0."/4;PP"8&0O=0%P``+:5&)*9`;R9\+SY +M\-G(!```MO0$O/GP&/DD\)3_DID!E)\&MI0#N_D"O/WP&/D/&/\U,Y0$+<3Y +M_Y2?!]D(8!$!O/GPO_G=^)_N_KS]\/"4#[.4`0[9$&`1`;SY\*#^QRF*]`L> +ME3L0LAI^GC\`LZ0!$M^,$P``O_F0F0$^$WT`F!T(V0``"@C_V93T"R+>C!,` +M`+_OB0``$`H!_]F5D/\!M1D(\/0?H.\^&'T`LAI^T7H`/@=]`+T$"1+^D`ST +M,A+T,A+T,A*S!`$+V6A>``"@D+(:O;1^HI$`LP0!$+WTV6A>``"@G_0Q$M^, +M$P``O_D*`;R:D/"4'Z#Y^S'DKO__Q^G&DI\!L/8C]`P[Q.D_DIX!L.8?]`T% +M^`B\_Y"\GY#?R`0``+:4!+R?D#R>F#"6`/0>8?"2!Y2:!MG`.```O*F@^`#D +MK/__W<`X``"]Y-L```#_O]__^Y3T"PGX"#Z$?0"S\``FW\`X``"4Z@:\KZ"8 +MJ0N8KPRVE1BV]1NVE`;]GP6FR?0+#Y#N`9#=0+/D1L:]I/@`V0`4$`&_F;*O +M"@']F@3T"SOD^?__SFD``)"?$)7Y$/0+&7_I9JGT#`>]I/@`O:1FG_0- +M%0H!^`!_Z;VD\),`II_T#04*`?@`O93T,/S^3@&@Z=D8%!`!OY_9,&,``+6: +M/+6;/;6_W\3Y!/0;3L?YJK.4($C'^9"5^AAV +MI`;]J05^>`LZ0`!O@(F*D!\)0(]!L;OZG'F8KT"Q.8J0J/_?\`\93__Z:? +M]`P0OUE/`/_]GP3T"P7X"+\ZQZFJLY0@;)()`K"6!/0-"[,`(@BS!"1;QZ*0 +ME:$85!H&_:(%?AI]`+.D``;X")BI`<>9([.4`0BS!`4WLAJR*WX^MP"SH``, +M?IJV`#X??P#9M&D``+^9LY!_%K]JOUN_3+\]?DNV``H!/L5_`/@(OS_'^:JS +MG2"?`,?YD)7Z&':D!OVI!7X:?0"RKK.D``;X")CI`<>9([.4`7RS``00LP`2 +M#+,`%`BS!!<6F.D(3P#_O:3]GP3_"94^O'\`LP0!1+]/V?___P#]^03T"S:_ +M.<>9`O0;+ICL"#/``"BVQ!C__,6@3+]JOUN_/7[_?0`)`K"F`/#\"_#V`;R? +MHC[%?P"8Z0A/`/^]I/V?!+7I"#[%?P"]I/MA]##PV0`4$`'Y@K^1_D@!_D!`-X8%!`!O^F2[A"_[Y#N".22 +M_P/:,&,``*"/WPP4$`&_^9#_"*!YO^F@:;_YH%E^;*\`LJ"S+O\#';.D`$:_ +MBK][OVR_77[IJP"SI`!,/GF``+,N_@,DVD!D``!^;*\`LJ"SI``>OXJ_>[]L +MOUU^V<``/GF``+,@``;X"+,``!JS#0*``>4?``'9`!00`:"?OY$^W8$`LHJR +M>[)LLEU^1GX`LZ0!)-W.:0``?]GE'@`!WP`4$`&0,P&@_E"9`;_Q8-D^VX$` +MLZD".`'9."@``=X\*``!OYV_Z=\P8P``O_"S*_\#T`!8^@4)\/_9Y'"F`?0- +M'UC_!,39!V:?]!L]I@[T##B0"1"FGO0;,#ZD@0!SK0&@`-DH*``!OYFSG0&4 +M`%CY!'.=`(P`F/D$II[U"X(`&/D@,Y0`>[,@``;X"-$<%!`!OQGPE`+U&[4` +MW[]LOUU^_WT`LZ``0MW.:0``?]_E'@`!V0`4$`&0,P%0 +M_P&@GF#?V0`4$`&_D;`V`?0,&KT$DD0!"?^F2?0+$,09`?4;"_X^]($`O02R +M"ON%$+V4MSQ``@/Q_'V6@F^?0-#C^I$)D!(*D^,8,`/[D0F0$@ +MN9#N0*;@]!O'^Q&]Y(D``$"UK@&UJ0+PQ0&@K)B_"XE_`/_]GP2UJ0.8OPS9 +M__\/^/V?!+6I!)BY";6N![6N!K:5&+6I!?@`LJX)_[.P`#4SP``OS+I]E*\" +ME*D'NY\"O)J0IIOT"P:0J@&\ZO()`;NV2$3```_F?"4_[RIDI2:`MFN"P`` +MO*F@^`#9D@L``+:D`KRIH/@`F*L)Q[^$<_0`!O@(V0`H``&_GME`(0``&)GF +MF*T(&*PT\>3_/W:4#O#S`'R>X)+_`93Y!;;T`KN?`M]T30``Q]UHO)^06)\! +M,\0`"G+Z/M6$`%3Y`U*:`=DB$P``/YDFV?0($ME?$P``/YDFV?08!E3Z`^3O +M___"J0^F^?0>%GOJ`I6_&`D!NY\$4ID!_^FD^`!XZ?]_`'R:HO@`\*3_\+3_ +MN[H"\+:`Q[H'^`"SL`40L[`)+K.T!$L^1H4`E*\"V=QF```^3H4`E*\"V?1F +M``"\^?`8^0$0F0$U^0'X`-DA$P``/YG?U&8``/"4_[RIDK:4`KR?D!B?`1#_ +M`36?`?@`F*D(&*\TF*T!QYYH,_``,]DA$P``/Y\F[_0(#]DB$P``/YDFZ?0( +M!?@(Q.G_\/3_NY\"E)H"V=1F```^WH4`Q]E#,)8$]`T?V5P3```_F2;I]!@3 +MQ.G_E)H"V?1F``"\J:#X`,3I_Y2:`MG<9@``O*F@^`"_J;.0`$D/\/V?!+B> +M`"``IK[T&QJ8NPZ5N03T"P>@J_@`H*GX`++^/B&&`++]F.D._YWTMI4$N/\` +M(`"SD``/IK_T&^28NPZUZP[X`+^I#_#]GP2XG@`@`*:^]!L:F+L&E;D$]`L' +MH*OX`*"I^`"R_CYJA@"R_9CI!O^=]+:5!+C_`"``LY``#Z:_]!ODF+L&M>L& +M^`"8N0GT,/SY@K*T]##\LJ6RP?"4#_0;!?@(F$D(_D@!_D8!F!`5QYEHO>24 +MD@*0B"O9I@L``#TTO"D@D&8J!P$^>H@`LPD(I`"P!@CT#!"S``$;LPT'CP$^ +M48<`LPD*$0&S#0V!`3Y@B``U$P(U$P$83B>R&K(K(!Y^MX,`LZ0`"O@(/H>( +M`!@9`IA?!=ZT3```LEOPE/^[D`*VE`*\GI#'_XRU&0F4^@79A%8``+;T`KNO +M`KRIH+4:#)"J#'Y`A@"R#@`'/GJ(`)@?#)CY`K:5!/4;'`&8^0.VE03U&Q(! +ML@X`"#YZB`"8&0R830FR*@P#6)L!((,@8[;5&+!A`/"S`+*.?I)8`+.I`.`` +M/VDSE``HF!X,F!\)&.D$\)3_=?D!(..8&0E8F0%SG0"^`+(.``H^>H@`,)8/ +M]`PMF!X*\)3_E)\%MI0"&.X$N_D"V816``"\^?`U_@28&0RR#@`-(),^>H@` +M^`@^:H@`-1,"-1,!&%X4LAJR*R`>?K>#`+.@`&(8&0(8'@'PE/^[EP*4GP+9 +MM$P``+SY\+4?"3/D`!$8_@$@+K(.``T^58@`&/\!Q.G_WK1,``"[EP*VE`*\ +MGI`UGP&8'PFR#@`-/_GPE'\@^3YZB`"]E`H!H%D^AX@`L@X^>H@`#@@^>H@` +M#@<`#:;@]1M0_O@(O:2U'A7T,`3[A03Y@K^^LK"RH;+%&+0(O32])+WT!_!] +MA+UD/CZ*`+/I`Z4`L.8#]`P0L^`!(K/M`H,!/@B)`+/I!?,`L.8%]0C)`+/M +M!VX!/A**`%A9`74(`W4)`A@)$3.0`0P.`@3_/ON(`!@)$#.4`P^U%@8.`@\! +M/CZ*`+46#C[YB``8"0A8#P-8#@(-`;O9!.3S___PXP`^0HD`F`D#_SW]6)D! +M\),`IOGT"PJ0,P$^0HD`=0,##@,^28D`IC[T#=T.!P\"/CZ*`+):LCL,`3)- +M?NU7`+*BLZ``*S^I&`\(-I4$)I_T&!`8"1$.!#.4`14^@HD`)I_T#0L.!0\# +M/CZ*`%@)`PX"#P,^"(H`&`D0,Y0##I@I`K49!CZJB0"8*0*U&0Y8"0,.`@\$ +M/@B*`!@)$1@/$#.4`2^8*@(S]`,6_:<$LANXJ@`@`'Z!60`^`8H`_:<$LANX +MJ@`@`'XR60`^`8H`D"H(,_0##K(;?D"&`#X!B@"R&W[SA0!8"0,.`@\%4)D! +M=0D#/CZ*`!@)$3.4`3<8"1`SD`,.F!D.D!HX/C"*`)@9!I`:&+.4`!P)`J"I +M/DR*`++OIO[U&VK^H`^]I#Y.B@`*`?N!^4+PM/_9I@L``)2Q`K*BO!D0O00# +M\`0"/KB*`+(:L@L,`0W_?NU7`)BI`K.4``;X"/V3!+WDN)\`(``^FXH`IO+T +M"QVR_KC?`"``F/D&_Y/4MI4$]!OKIO+T"P7X"+/@``>UY`:0``%8&0'PDP"F +M"?0-K)@I!0WPVP````BRW,>9C)2?!;:4`KOY`MF$5@``O/GPF/X"V<00``"@ +MGKV4_>T$M?D"N.X`(``^(HL`O^G]G`2XF0`@`)B?"OW[!;6?"ICN!I7I!/0+ +M#__LE+B>`"``L^0`W`\!V<(0```@G_M!F*D)]##L^5(!`?"4#[R1\MY`2@`` +ME/`%O`X`F`\%WEQ,``"VE`*\GI#'_XR_E93Y!;;T`KR?,M^$5@``Q0D$O#\P +MN)0`(`*RHK(+D#H,?D"&`-G"$```/Y^]E+4)!C/]``("F#P"E`K:4%/V? +M!-___P___=\$_9T%M0D%/@6-`)@I";:5&/0+&@GP_\F4N)D`(`"8GP:U#P:U +ME`8^!8T`F`T%S%\'#O`)#[+J.Y\"_\[DWP``\`#$F_^XX0`@`+:4%+WD_9\$ +MW___#__]WP3]G06U"04^B(P`F!D%O=3'F72FF_0,')@9!O^:]+:5!/0+"+C] +M`"``LAZRT;,4`-ZSX``KF.D&M0D&M>0&QYD#]`MIF`D&#_?]GP2U"0:8Z0;P +ME0BUZ08^!8T`M0P&M30"&"DGF"P(_D\!D/\8-?D("0'>I@L``#7Y$:#Y"0.U +M\P,U^1"R^\?,:+(*ML0"O,[`?HV(`)@9!@_W_9\$M1D&F`D&\)4(M0D&F"\) +ME?D8]1NN`,?YA)2?!;:4`KOY`ME830``O/GPF/\"E?D$]!L)O>0^9(T`"?"] +MY/WY!+*;N/\`(``^8(T`F/D.F/P$O?3_F]2VE03T"PBXWP`@`)7)$+SIX+/T +M`.28/P()\.SNNPV0[@']^02X^@`@`)BI!<>9=*;I]`TYF"L(Q[MH?E"*`#ZY +MC0"8+@K9Q!```+^?V0````C]Z04)\+4N"OWY!+C_`"``F/X&M0X&M?0&^U44 +MW\04``#T,.SY(C_YLJ$0F0$@^3.4`1?9,``0`;^?\/4$H)^_G_#U$*"?F!D) +MQ1\$N/(`(`+'F824GP6VE`*\^0+96$T``+P)`#\)\)0!]!L%^`B0"@RR&W[S +MA0"]E)@?";49#C\)MO48QYEDII_T"P7X")@/`I7Y!/0;-;4"`K(:?A^$`!@9 +M)_Y/`9#_#+*L-?D("0$U^1&@^0D"M?`#LOLU^1"R&GZ-B``^?8X`"?#_^92X +MF0`@`)B?#K4?#K62#I@?")@>!I@="=G__P'P_?D$B0``"OWY!=G___\`M1\( +M_>D$M1X&\-0/]`L:LAI^,8L`F!D*C_\`__V?!/&5``*U&0K[)128J0I/`/_] +MGP3PE0&UJ0KX`/0P_/ERLJ7^0@'DM/__O10``9`B(3UT!@$#\#4G`C4G`2`@ +MLBJR6WZW@P"SJ0#=`!@I`O"4_[N6`I2=`MFT3```O-G0&-X"/L./`#_96,\! +M\)0/O&F4\),`_TF=9OGU&XX`F,\#E?D$]`L]__.4Q`O_N)\`(``^=8\`F/D) +MMI48IIOT&R.8^0Z8_02]]/^3Y+:5!/0+"+CO`"``E=D0O!D0L_0`V9C/`I7Y +M!/0+7?_SE,0,_[B?`"``/KB/`)CY";:5&*:<]!M#F/D.F/T$O?3_D^2VE03T +M"PBX[P`@`)79$+P9$+/T`-D^W(\`&,X$Q.G_E)\%MI0"O/G"V5A-``"\R<`S +M[0!(_Q(``0G_)@GU&PS_LAK[=02SH``.F+D"M:D"/@20`)B_`MF(6```H)_9 +MA%@``+^?WL44``"UOP(_[Z";$O\!(._T&QS9Q!0``#^9,Y0`$MDP`!`!OY\. +M[_W^!*"?^`#9\&8``+^?L_0`!O@(F/X#V?!F``"U_`*U^P&@GME090``OYZ@ +M^K7^`Z"?&*D!\)6`-:D!^`#94&4``+^?/HF0`+_YIIKT&P<*`?@`F/\#L_0` +M\KVD^`"8J0G'F824GP6VE`*\^>+96$T``+SIX#_I\)0!]!L%^`B8K0C'V1'T +M"P?X"/@`F.\#B?__]__9E+6I"/#U`L6I!+6O#KB9`"`"M>D#V5P3```_GYBI +M"/#T_\>9:*:?]!@_F*\)V2!*``#P]`^V]`6\^?"8^07%_02XW0`@`L>9C)2> +M!;:4`KOI`MF$5@``O.G@F.D#\)4"M?D&M>T#^``8J328KP@*$C.4`"/9(A,` +M`#^9Q_]H)OGT"!'97Q,``#^9"@@F^?0(!0H"^`#Y(K*@?C"1`#*A,Z0`"KVD +M/J"1`+(*?GV$`'*BL@I^?X4`/Z\8J0$*`3N?`O"4@#.4`!3D+___Q!G_O:2F +M^?0,!0H!^R&8J0CY`K*@QYD1]`ME?EV1`+.I`)D`L@I^?X4`V8!8``"_GK+O +M/M61`+_YII#T"PZ8_P*S]`#V/C>2``G_=?D"/ZHU^@8^3)(`^`B8_0+9?%@` +M`*#PH)T)_W7Y`C^JM?X"V8!8```U^@:@GSY,D@#9B%@``+^?/B:2`+_YII#T +M"PZ8_P*S]`#V/D:2``D!-?D&/DR2`-E\6```OY^S]`"O/NN1`+(*?KR-`/L! +MV8A8``"_GSYMD@"_^9B9"<>9A*:I]!L'"@'X`)C_`K/T`.R]I/@`V4`A``#T +M,/CY@EB4 +MM@L``+QND#^9WEP3```_[\21_[20"O#T_[R1D)20!-E490``O`D`H`>U!P&U +M!P*U!P.F'_089)02`MZ*"P``O"Z@/ZDSD``I&*D!,)8`]!X?LCL,`0W_?NU7 +M`+.@`!*8J@*SI``&^`B@"K4#`]^F"P``O"^@/ZDSD``ALCL,`0W_?NU7`+.@ +M`!.8J@*SI``&^`BU"@*U`P/>(A,``#_IQ)__IA_T"!G>7Q,``#_I\)3_IAGT +M&`JTD`FSE`!8E!H"WI(+``"\KJ`_J3.0`$<8J0$PE@#T'CVF'_0(&-]?$P`` +M/_GPE/^F&?08"7*+/IN3`')+\+,`#`$-_W[M5P"SH``3F*H"LZ0`!O@(M0H! +MM0,#D&8!WL`0```_Z?"4_Z9I]0C?_L1)![.=!Z8`Y(G__^1"__^\55"0DP&] +M%-C!$```UR$3``#6(A,``+U$/FN4`-^["P``O!^0/W\_F?#T_\2>_Z;O]`@- +M/VGPE/^FZ?0(!?@(O.^2E)H"O%F0WJX+``"4D`.\KJ#?_&8``+P/`*`$M00! +M/ZDSD``I&*D!,)8`]!X?LCL,`0W_?NU7`+.@`!*8J@*SI``&^`B@"K4"`9`1 +M`3^)\)3_IAGT"(?[A0CQI/\_\;3_/[NZ`O&V`"#'N@WX`-D`*``!OY_Y0MF( +M6```O22_D>3S_S\$_SX5E0!8&0*_$&:4]!LHL@I^?X4`&!\'&*D!.Y\"\)2` +M,Y0`6;(*?C"1`/"D_WRCH'4:`A@9!C.4`!58&@)R.WYXE`"SI``;/AV5`)@) +M",>9#?0;#;(*?KR-`#X(E0"R"GZ1D`"8$`*R&[(J?NR/`+(!LQ0`DSXFE0"R +M$I@1`CX5E0#[0?F"V8!8``"RI7*TLIB_D+TTUGQ8```'_S[!E0"_`;-0``VF +M4?0;<#Z9E0"R&GXPD0!8"0+PI/]RHF:7]!L?LAI^?X4`&`\&&*D!.Y\"\)2` +M,Y0`1'Q"D'4)`E@*`G`F`/`<"W)+?GB4`+.D``BS$``GLS``#I@)`K4Y`CZL +ME0"8#P*@C[]OF`D"M0\"H&"RD#[!E0"R`Y@``K,$`(/[@?DRV8Q9```_F3.0 +M`&;PE/_>C%@``)*;`;W4O<0#\-+___\`?12]!#XGE@"_[[/P`"U8Z0)FFO0; +M'?WS!+C_`"``F/D&=>$"_9($M?D&H.`^(98`IMST"`6RW)#=`9#N"*;;]`W) +M$,\!V8Q9```@G_LQWT`A``!QIOX_]`P3&/GF=I0.?*F04)D!/F"6`!CYYA"9 +M`?"4`7:4#G7Y8#@;9__\!\/_YE(\```K]GP6U"0C9 +M____`/WI!+4.!C[@E@"R"GVT?BB5`+(*?L=:`+.@`!'9`"@``;^9L@I^RUL` +M^P'Y`MF("P``/YGDK/__WL`.``!]I/"4_P`!E)T$O-[0/C67`!CI"?"4`?0+ +M)YCI`Z:;]!L?&.D(6.\#O`F4\),`_\F=9OGT&PN_Z5B9"7R:H)#N$*;M]!O. +M^P'Y`MF("P``/YERK-[`#@``?:3PE/\``92=!.?+@P&\WM`^FI<`&.D)\)0! +M]`LP&.D(6.\#O`F4\),`_[F=9OGT&QR_Z9B9!+:5$,R9O!"9`?"4_V;)]!@& +M4*J\D.X0INWT&\7[`?0P]/F"M'`-L,$*L-$)LK4RZ'VTLJ`_4G[4C@`+`;*C +ML@I^U(X`L*$+LW0`"K(Z/@>8`-DA$P``/YD8"@%]M/"4__"D#[NI`MFN"P`` +MMJ0"O*F@?M2.`+PZ,'VD?CR7`/"C`+RCH-F("P``/YG?R0X``#U$\)3_E)X$ +MO._@/C>8`+^9II?T&PX_^?"4`?0;!A!$`9#_$)#Y`Z;^]!OF?10^R)D`O^F8 +MF0$FAO08&,>90[WT,)8$]`T%#P&TD`JFG_0;)QCI"/"4_W*?9LGT#1H8Z0GP +ME`'T&Q&8Z0.FE_0;"3+;/HJ8`'+/$-T!D.X0`;;T!-W$#@``$"(!O/WP\.4! +M=?$!-9X!Q`G_WL`.``"4F@2\KJ`^=YD`O_"8"0$FAO08&,>90[WD,)8$]`T% +M#@&TD`JFGO0;.!CY"/"4_V;)]!LM&/T)Q-D!]!LDF`D$MI40O+G@M)`)INGT +M&!/%V0%U\0,U^0D0(@$^:ID`LKZ0_Q"RZZ;Z]!NC4,P!<,8/]`P,W\`.```^ +M;YD`4!$!LW``(0L!B`L``-E<$P``/^`_EM[` +M#@``3/\`/=0+_SZ2F``@4@H!^X4,^0*RH++*L[0`%MG`$```WK8+``"RG#^; +M/AR:`-G!$```/YNRG-Z["P``O?3$O?\^,YH`/.^8\)3_II#T"P^0_P&F_?0( +M\#YXF@"SH``8/H":`#S@V1"Y`3YRF@#X"#Z`F@"0^0&FG?0,%KSOD!B>`9#_ +M`2">D)D!IOWT"/,2N0$@R3Z`F@"SI`#,/DZ:`/L!F*\-,_``$YBI#,>9&3.0 +M``F5^@CX`#VD^`#Y0K*PLJ.RQ+*Z?H*:`)@Y!3*BF`$!LY0`!O@(L@I^KH(` +MF`L*QQE#,Y`%"\>[Z#[2F@#'N\'$*?^]Y)2=`SY,FP#$N0'T"V6S0``QF#\% +ML::[`/0-%KS]\+S^\!CY`9*JO!*91#XNFP"\_?"\_O`8^0$\FI`^09L`F#\% +ML::[`/0-&;S]\+S^\!CY`9*JO!"91#7Y`3Y&FP"\_?"\_O`8^0$[F@(U^0&] +MI)#N`;:U`;.P``BSI`".^T$8N33Y,K*@LK*8N@0SE``-E:,0O10^>9L`LKH! +M`7ZN@@"RHY@)"I@*"`W_O<18FP'PLP!^[5<`F`X6LJVFZO0;'5CI"!CO&'R3 +MD!#_`77I"#7O&+,0`'P^'9P`L^``31CI&%CN"#6I&)@/%G6N"'WD/_GPE/T@ +M^9@)%C6>&'6>"+,0`"B8"1:8F06SE``&^`B8WP4_^?"4_B#YF`\6F/D%M=D% +MO92U^058V0@8WQ@_WGR3D!#_`?#E`G79"#7?&"#>LQ``#K+:LBL,`7Z1^=+<`LJ.S```PLZ`` +M#S\)$)D!(`D^BIT`V5!E``"_GSZ"G0"_^::1]`L.F/\#L_0`]CZ1G0"R.O0P +M!/M!4DD!\93_/[(:=0D!L@NR+'XZD``^BIT`^8+94&4``+*FOY"]=-A`(0`` +M/M>>`)@#`5@Y`?"3`*:6]0O4`+QI\J:6]!@*DOD!/N*=`+CY_S\`LI6PE@3T +M#04%!+U$/HF>`+\/6#D!&/\!4)D!Y)+_/W(JQ/$/?CB6`-\B$P``/_GPE/^F +M&?0()=]?$P``/_GPE/^F&?08%EB+<`+.@`!!U,@&01`&F1?4(9_]8.0&0F0'QE/\_II;T +M&T6_#QCY`?"4?S7Y`;-P``Z8"0.U>0,^P9X`F`D#WU!E``"@^=_P9@``O_^8 +M"0.U#P/?\&8``*#PLI"S#0#H_C[IG@"R!Y@``S[7G@#[@=E`(0``^8)8E'+9 +MQ!0``#^?LJ7D2?__S9,#,_D`Z@!^=9(`E#D"O22\DW#D1O__V%P3```^>Y\` +M/_F0(@'$D?]^N[D`O'&0E)`$V51E``"\"0"8"0.FEO0;.3^)\)3_IAGT&""_ +M"K.@``RR6PP#?G><`)@*`K.@``RR6PP%?G><`)@*`;.@``RR6PP"?G><`-ZV +M"P``O"[PWL`0```_Z?"4_Z8I]`B4O#,@Y$'__[T$U,$0``#3(1,``#[=GP`_ +M^3\_D``!\)3_\/3_NY\"O)*0E)H#V?QF``"\J:"8J0&FD?0;$;^JLZ``#+); +M#`1^=YP`/TG>NPL``+P.\/"4_Z8)]`B]^X'9`"@``;^:V3``$`&_F?D"\)00 +M]`M;Y*#_/[`&"?0,(MF($P``?YEQEO`_]`T4WT`A```8^>80F0'PE`$U^>;9 +MB!,``'(+O:1@D'XHE0!^C)0`<@I^QY4`?KNY`+(*?JF=`'(*?CB6`+(*?NN> +M`/L!^2*RHK*P,L$*`7YY8P"RK3*I,Z0`#/@(O:0^[:``/P[PE/\,`;N<`I2: +M`MFT3```O*F@,^``2M^T3```Q.G_NYP"MI0"O)^0/YG$'__PE`^F^?0="C6N +M`3[>H``8*0'?M$P``/"4_[N<`K:4`KR?D!B?`36O`36=`3[@H``@#3^IQ!\/ +M\)3P_?D%(*_[(9BI"/0P_+WD^8+'F6CT,/R4DP+^1P'9I@L``/Y&`;*DLK*R +MR)BP%+PY,'U4D'M$P``/"4_[N0`K:4`KR>D+4I +M"5@O%U@Y`6;Y]`T&=3\!#@$``CXTHP!8)1>8*@@8+2P]E+!Q`"!Y(&GD6___ +M#`.R;GZ26`"SI``,L@X``SXTHP`_:;(.``0U*3SPE/^4GP6VE`*[^0+9A%8` +M`+SY\+4O##XTHP"R"GYY8P!RK7.@`%^8*0G?A%8``,"N'+SOX+4N#'7E`3^? +M/^DV]`3PE`_]^04@[S]Y,Y``)?"4_Y2?!;:4`KOY`MF$5@``O/GP&/D$->D$ +M-?H$/EJB`)@I"76:`34M/`X#``0^-*,`^`BR#CXTHP`*!'YY8P!SJ0":`)@L +M$-T@2@``Y*'__[)+E!`%O`T`L@I^.X,`F$X)F`P%F$T(#_#][P1/__#$&0_] +MSP3]G@7?____\+5)"=X````/E!D(MM00\90`#_W>!/V8$P``)(1`;4@ +M#;SH&0`%#@0^-*,`^`@.!#XTHP"8*0R8GP.5^03T"PF8*0VUGP:8*0R8+PX. +M!0`(M9\#IN#U&^_]M2X4O:3T,`3[A03T,/#%J03Y@KB9`"`"]##\LJ/^1P'^ +M1@'^2`&RL;#!"[+5L)$*F+`&O?20=S:09C>0B#`^5:<`LPD&PP&P!@;T#"2S +M``)1L`8"]`P,LPT!N@,^RJ,`LPD$[`"S#06L`SZNI`"S"0R_`K`&#/0,#+,- +M!Y@#/N.E`+,)#8(#LPT.B@,^T*8`&#D"L@\``C49+#Y5IP"8.0B8/PVR.L>9 +M:,3R_S49'#*0?A^$`-TB$P``/]FU&@@F"?0(#]Y?$P``/^DF"?0(![,@``T8 +M&2P2F0,U&2S$"O^R*PP!?O*9`)@_"1@9+-W___\`F!L(_?T$MI08_9\%M3D) +M&!\L/>2R&C4>`2`?-1X"?K>#`+.D`!N8&P@8'"RR&@`$?F&@``\"M1H)/E6G +M`!@9`MVP3```#P(`!/"4_[:4`KR=D+49"3Y5IP"8$@BR6[W$#?^R*G[M5P!8 +M*0&U&A;PDP"F6?0-!G4E`;(/``4^5:<`F!H(&!TL/92P<0`@>2!ILEL,`K)N +M?I)8`+.D``RR#P`&/E6G`#]I-1D\&#XT\)3_E)\%MI0"N_D"V5A-``"\^?"U +M'PHSX``XF/D%LY0`,0H%?GEC`#.@`"68'0K$K_^4_@>4^02\GI#>8U```+R? +MD+R>D+79!3XJI0#X")@9"C^9\)0!]!L%^`@/!0`'/E6G``H"?GEC`)@9"=]8 +M30``P*`6,`,Z`` +M(L2I_Y2?!)2>![S^\+SY\-EC4```O/GPM0\%/IBE`/@(/WFU$`HSD``R\)3_ +ME)\%MI0"W5A-``"[^0*\_?!8^0'PDP"FE?0(!?@(&/X$-0X$-?($/MJE`)@9 +M"762`3]O-0\$-1(\#P8^.:4`LAJR.WY6FP"8&0H/`K4_#IB?`Y7Y!/0+"<7Y +M`K4Y#I@9"K30"D\/_K6=`Q@9/)@^"1@]-+:4!/WO!/&4\`$/\/V>!?V?!+4Y +M"3/0`!Z8.0C>D@L``,>9:+:4`KR>D!B?`?#U0#6?`=U<$P``&!\Z`0``+ST\+S_D+R? +MD+:4!+R>D%B2`:"$\*,`LHWD*___?GB#`+.@`0^T\`L.`:#Z/F"G`+^)II3U +M"Z``M1H4=1D7Y"S__[(ZLAM^[Z``LZT`B@`^2Z<`/928$`@U&0$U&0(8,R>R +M&K(+(!-^MX,`#@&SH`!V&!D"&!X!"@'PE/^[F@*4GP+9M$P``+SY\+4?"3/D +M``T8_P$@#SXNIP`8_P'$Z?_=M$P``+N:`K:4`KR=D#6?`9@?";*N/_GPE'\@ +M^3Y@IP"TX`L)`:#ILIX^8*<`L@\^5:<`#PP`#:;P]1LE_+4?!KWDLNKT,`3[ +MA1#98!```;^:V8`3``!_G]E8$P``OYO9``"F#O#R#[;T`\>JJ)*J(+:D$+RO +MH+RIH.RJ`/!^%6\`V30`$`&@FO@`^2*RK[+"_\L$LZX`#`^R"WXE#@`^HZD` +MN*D@!`*QEI``]`P-L@M^1RT`/J.I`+BI(`@"L)8@]`T9N*DP!@*PECST#"*X +MJ3@&`K"6%/0,#;(+?A>P`#ZCJ0"R"WYU9@`^HZD`V0`@``&\J1"SJ3RS`+"F +M//0,([.@)%2PIB3T#`RSK2![`3YHJ`"SH#1OLZTX;@$^QJ@`LZE8L0"QIE@` +M]`P1LZE0B`"SK514`3[CJ`"SJP`&"`&SKP0&10$^*ZD`L@I^3@X`/J.I`+\> +MOQF_'<0,"/'D%`3QE`$;N2\`_?T$_?D%Y`D4!/W\!;F9`/WI!/_^!3ZAJ0"_ +M'K\9N<\`Y`W___WY!(D``/_]Z039,"(``/WM!?_O!:"0/J&I`++ZL@M^E4\` +M/J.I``G`_0D$V4`A``"UD#<^H:D`V4`A``"UD#@^H:D`V1P4``"_F?"4`?4; +MJ@#9!"```;^9Q`K_\)3_IJGT#06RFK\>OQVY*0!/`/_][P3]G03]G@7_F@4^ +MH:D`OQV_'+\9W@```."Y+P#D"Q'@_?D$_PZ4N9D`_=X$_=D$B>X?'_W)!/W\ +M!?W[!?_]!3ZAJ0"_'[\9OQVYS@#]Z039___^_OWY!-D```$!_PF4_?D%V0`` +M``'__@7_#=;]V03T"Q2XF00F`+^?W@```"#]_@6@GZ`0^R'9:%X``+^9^8*S +MG0`Q`=D``!`!OY"XF300`+^9\)0"]`L=W>00``&_W]ED;@``#@$@GMD```"` +M_?D$H-_9-!`0`;^9\)0$]`LR?O&?`-YD`!`!O^G?````@/V?!:#IV20```&_ +MG]GD%```#@$@GI#_`=FP:0``H)_9[!0``+^:V`0`$`'9Z!0``-<(`!`!OYZ2 +MH0'6#``0`=7`7P``U````$#3````@-(``!`!/LFJ`+^+OWV_;+SJDJ;A]`L_ +MLY`//+#F#_0-!?@(O.Z0O)Z0D)\!MI0"O%WYW\!?``"\GY"UG`*@FY#O`?\$ +ME,3^#_V3!:`IOR`^R:H`V>@4``"@GMF$$P``OYFSD``&^`B]]-D$$!`!H)\/ +M`=F$$P``H)\^UJH`Q`D!]!N)V>@4``"@G@\!V1`0$`&@G_N!WD`A``#=%!0` +M`)CI`W_?M>H$\94`@/#U"+7I`V#?^`#9X"0``/"D_[:D`;RIH%BJ`?"D?_@` +MWC@@``&_Z<2?"/0;#PD(H.G9`"0``#6?&/@`V5@@``&_F?"4_Z:I]`T'O:3X +M`-[0)```DJ\!E?D%MI0"O)Z0OY[P]!\)`;N?!/V>!/"L"_"F`?@`WD`A``#= +M%!0``+_I?]^UZ@'QE0"`\/4"H.E@W_@`L\``*=U`(0``VQ04``"_V7^_W$!> +M``"_SO&5`!CP]0*@V9#N`6"_H,Z5J1BSE!$RV0`D``"8GP39____`/^IE*;Y +M]!L392C8``"">\/4"8-\^4:P`W104``!_WSWDV4HV +M```*`?#U`B">8-_X`-T4%```?]_90#8``)7.&*">\/4"V4HV``!@WSWT()^] +MI/@`^`B]I/@`V0`D``#T,/3Y@IB8`O0P^/Y)`9"9-/Y/`:"8D/\PLI.]E-X` +M[@``H/G7____`-\````A_^>4_9\%O12PD0O4``0``-D9]```U8`$``"\GF(^ +MHJX`L!8)]`T]?%$HO$$(Y"O__[(*?H7%`+.D`RK9B:L``-\````AL)$`/93_ +M!^2R"N0K___][P4PD01]Q`TA?M)"`+\QLQD)D0&P%@GT#!2P%@'U"*,!L!8' +M]`T9/KBM`+,0"FV2&0RPEA+U#(L!/GJM`-H`[@``LFM^A<4`LZ`'8;.D`V?^ +M2@&R.Y"J,'X`[@"S'0%D`;\YLYT!70&TX`O9B:L``+"1`#V4V@#N```PD02R +M:WW$#2%^TD(`V0`D``#?`.X``+6?!#ZBK@!\4;B\0:CPLP!^A<4`LZ0'"O@( +M/I6M`+.@`Q2_/]D`)```M9\#"0@^?*X`OSG^2@&0JC"\29CYE:`Z/J*N`-Y` +M(0``O^_9`"0``)B:`TG_[_WY!*#ODJD!L)8&]`P.T@#N``"R8#[MK0!\6IB\ +M2BCDD/__LBJR"WZ%Q0"SI`<&^`B2J02PE@'T#$;9B:L``+"1`/\GE-X````1 +M_Y[E/92R"S"1!+(J?<0-$7[20@"SH`(WV0`D``"8GP.UD@2S]`TW?AU6`+.D +M`B\^7ZX`LZ0#6]D`)```F)D#LY0-(7X=5@"SI`(*^`@^HJX`DJD$L)8!]`P) +M"0D^?*X`V0`D``"8F0.@.3ZBK@#>0"$``+_OY/D`$/0+%=D`)```F)D#H#E) +M_^__^92@Z;\YIAGU&PG^V0`D``"UD0*F&/0+#0\!_DD!D)DPH)_^20'T,`B0 +MF3"_FON%#/D2T304$`&_&;+`LMP-#/"4`?0;-;^OV204$`'%O@&]U*"?F*\! +MD)D$H)^8KP*0F02@GYBO`Y"9!*"?D)D,H)R2F02@D*`>LMK[$9BO`5BM@_0P +M\/D2OZ&]E/Y.`<3\_Y#N"+;U'[7I`:#I\?4`E-D````5LJ#QU/\#LNJU[P.U +MZ0*R&W[/K@"SI``26`D%D!\0H`]2F0%U"07[%1#9)"```;^9LJ]8KH/PE`$S +MD``+"@5S[OX#1;CY``$`/YD*!#.0##<8^2$SE`0(O:3X`#"6"/0,(0X!"@.\ +MZ?3$^6ST&QBRZN3Y@`'T&P_$^0,*`O0;!_@(O:3X`-]`(0``E:D0LY[^`Q&8 +M_1'\$_>D%_^VU]0O$`3,@`!+9,"8``;^?Q_^0/N.P`-D((``!OY_'_V0) +M`;N?!*:Y]0R=`;@)!`$`/YDSE!\)"0$U"2"X#P0!`#_Y\)4!/AJR`+^NOZVY +M.0`/P/#D/_^_]/V=!/WI!?_OM?4+8P'9)"```;^9\)0!]!L(,RD`4@&X#P0! +M`#_Y\)4(/AJR`+&V_P#T#07X"-DD(``!OYGPE`'T&P@S*0`I`;@/!`$`/_GP +ME1`^&K(`&`DA,Y0'3=X4%```?^]8#07%&0&@R?#U`6#O<]0`-9@)!)@.`:`) +MF`D%M0D!6`D,=0D%V2@H``&_F;.4`1:8#P65Z1_PE@&VE!_]^06U#P&X"00! +M`#^=Q-D"]`LWOP\)\/^YE*:?]!LK,R``%-E4)@`!OY\._OW^!#X`L@!)``'^ +M3P&0_QB@^;__V40`$`&@G\7?`K@)!`$`()\^'+(`N`\$`0`_^?"5!"#YH*NX +M"00!`#^9,Y0?8A@)(3.4`%LS(``-V4`F``$^0K(`V3`H``&_FI"9!+^;LZ0` +M!O@(6`F#`0*0#!`P$02VE!`-$+"1`-[(KP``?DW"`+.D`!G9%!0``'^?\/4! +M8)\)`S4)(3Z'L@`U`2'T,`C[-03>%!0``+^I?^_QE0"`H*G'F?#]GP5@Z?@` +M^1(_J?0P^+*@Q)'_LQD$TP"P%@3T#!"S$``;LQT#_0$^!;,`LQD%$0&S'0;O +M`3Z`M`!8J@%SI``-V8`N```^M;0`?AI]`+.@`!G%J02U`02XF0`@`K4*`K4) +M`SZXM`!8"0''FL;$K0&U#0:2KP&P]B/T##;!+SLX)CL +M"K/``!^0V02VE`.\"9"@G)CN"Y3?`[P/\+7^"3Z%LP#90"$``)B;.)B9-Y@. +M`?"D?K:D`[RIH`D"L.$`,)$$D`P@#1#>C;(``'Y-P@`)!+.M`/X`/KZT`)@/ +M!E@*`9#Y!+:4`[P)D+^9MO0#O`_PQZK&M0D#F/D)F`L#LIRU"01^65``F`H# +MF`L$F`P%F`\!"0(-0#"1!+#Q`-Z-L@``?DW"``D%LZT`J``^OK0`F*T%6*\! +MO]GP\P#$^C^VE1NFJ?0-";V4/K6T`,?_QK#V)/0,.YC>`I+_`=S(!```O/^0 +MO)^06-\"MI0$O)R0&-P0MN46=9\1=9X0D)\D-?P!&-X&-9XD6-T!=?T!F`\& +MMJ0&F`P%#4"0^02VE`.\"9"_F;;T`[P/\-Z-L@``O*F@M0H#"0*8^PDPD028 +M#P&P\0"U"P1^3<(`LZ``2@D&(`D^OK0`6*H!F`L%?G,S`+.@`"A8"@%^>` +MLZ0`!O@(Q:D$N)D`(`*U"@*U"0.]E+4)!#ZXM`"8"06U"0(*`3[`M`"]I/0P +M"/L1V5`3``#T,/3Y@C^?V204``"\FYBRJ+"1"S/T``;X"+.$`#_9=%\``+R; +MF+.=`%@!V3@4``"\F_C9R!0``)2^`KSI<`GP_?D$V71?``"X]@`@`-]P%``` +MO+\P/EJU`-F<7P``O)N8LYT`'0'98!0``+R;^-G<%```E+X"O.EP"?#]^039 +MG%\``+CV`"``WWH4``"\OS"\Z9"R:K"1"KT$/S6]%#[DM0"8J0X.\/^>Q+C- +M`"``F-\(Q)0(B0```L7"!/_YE;"1";*>Q_\3B?__^_WI!+/T`"V8V0ZUW@C_ +M296UJ0ZS```+M0()/KBU`+3@"J#B/SFRT!*9`2`Y/N&U`+,0``JRVC[AM0"8 +MV0S?`````<7!!++:_9\%H'D250$S5`"(LP``8+,4`!\_.3.0``;X"+**?HTX`L/\/\?]+C_`"``M?<,L(8`\/P+NY\"M>D(^X4,^1+9M&D``+^0LM&S +M!'\&^`C><%X``-F$:0``E`\$O/[POYZ8_0.@D-FT:0``MN0#Q]W#\>3X`Z"= +MH/I)!_RU^P'_&92U_`+]G@6U^0/[$=N$:0``O[VSV7^;`)3>!-EP7@``O.G@ +MF.P#INKT&R;9M&D``+^?H)W'R<.@N;;T`TD'_/'T^`/_R93]^06U[P/X`,?, +MP[+K/CBW`)3/!-EP7@``O/GPIOKT&SZ8OP.8J0--!_S>M&D``/W]!/&4^`/] +MGP6UN0.8KP._Z:#L_?T$MI0#\93X`_V?!8___]_]GP2UJ0/X`)CY`[+[QYS# +ML\1_K?@`V81I``"_GK*ML^!_*93J!-EP7@``O*F@F*\#Q_[#E?D8IMGT&^;' +M^9"FN?0;WCYRMP"]I/@`^8()$O0P^+*CLK*RQ[+5LN:T@`R]%/Z1#/0R$O0R +M$O0R$K,4`0O9:%X``*"1V204``"\DPC$)/_>9%X``+\)\93_#_0;23_I#P>[ +M]`(0F0$@Z;#V`?0,(=V`:0``W!04``"_WG_/"0&[DP3]G@7Q]0`@H-E@S[,4 +M`1"]]-EH7@``H)_T,1*]I#YJN``]E+"!`+`Q`2#IL@JR;K(KLGRR77[G!`"U +M`@&U!0.U!@2U"`6U!P()![R4XK#F`?0,)MF>%```/)/8"0&\GO3$V?__^93T +M"P7X"/_?]=F>%```/)\Y"@&F&O0;$;WTV6A>``"@G_0Q$K(:]#`(^X'=%!0` +M`'_?^4+>@&D``+V4O^+Q]/_?]##\H.E@W[T$O1347Q,``--<$P``/B:Y`+,I +M`),`Q"D!]`MWWC@4``"\'I"_G+/``"O?GA0``+P/D#^9Q)\!]!L:WDP4``"\ +M'I"_G;(*L/$`"P>]Y'YTMP`_.?"4_Z8)]!@XWV`4``"\'Y"_G+/``"O>GA0` +M`+P.D#^9Q)\"]!L:WF@4``"\'I"_G;(*L/$`"P:]Y'YTMP"V)0&0``&0$00_ +M2?"4_Z8)]0AQ__0P!/M!^1+9GA0``#R;Z,2@_P\'`0&[\`*\'_3P]/\Y_P#] +M_@0\G[GT,/RS``8GLP0'5-EU%```/)N8,Y``2-DX%```LKJ\F\C93!0``#Z> +MN0#9?Q0``#R;F#.0`"G98!0``+*ZO)O(V6@4``"\FMB]E+(+L)$`O>1^=+<` +MLAH^MKD`O:3T,`3[$=D@$P``]##L^8(_D'ZM<`#9)!0``-P88P``Q`7_W1IC +M``"44@+^2`&]=+*FQ`/_O"D@O%Q`O%T0D(@L/L*Z`,1I`?4+LP`_'[QUD`X! +MN^D$$/\!E#D$,.$HL)$)Q/`//H&Z`'YL!`"SH`!J/QDPE@_T#07X"+3`";^/ +M\)3_W1AA``"\R9#<(&$``)2>!+SMX*#OO)GPMO0#O/SPF(P!MI0"D)D!O-R9 +MF(T"->,,WAQC``"@_1`/`3_I(!#$\`\T\"C_^94@Z3])LCJRBR8)]!N5/TF_ +M+R8)]!L>F/E`3/_^W11A```TX"C]G`2U^4`_V?_IE2#9D#,!MF4!D' +M``"@G_0Q$I@9`<>90[/``QFPQ@/U#8$!L\D%H@"SS09X`3Z^NP#PE`.SD`,& +M^`B8'`C'R1'U"V(!Q\D:]0M;`9@>!Y@=!M____\'Q\F5_>\$MI0;_9X%CP`` +M"K49!]G__P'P_\F4_9\%M1D(V?___P#]V02U'08^VKP`\)0#LY`#!O@(O00) +M$OZ0#/0R$O0R$O0R$K,$`0O9:%X``*"0LAI^998`LPT!\@"]]-EH7@``H)_T +M,1(^VKP`F!\&F!D!E?(8QYDCLY0!(K,@$!ZS(!(:LR`4%I@9!M____\`_9\$ +MM1D&/MJ\`+WD"1+^G@ST,A+T,A+T,A*SY`$+V6A>``"@GI@9"(____?]GP2U +M&0BSY`$0O?39:%X``*"?]#$2LR`0=[T$"1+^D`ST,A+T,A+T,A*S!`$+V6A> +M``"@D+(:?F66`+,$`1"]]-EH7@``H)_T,1*S(!)"LAI^JP0`LR04$K\9#_C] +MGP3PE00^RKP`F!D!QYDCLY`#!O@(OQD/^/V?!/"5`J`9LAH+`7Z6!P`^VKP` +M^`C[(9BO"/D"LJ#'^1KT"TS'^1OT"T:8K@V8K`>8K0J8JPF)```P_>D%V?__ +M_P?QM/___4``;N=!/#T__V:!3G_`+7)`?WQ!&"^ +M/`\I/IR_`-E0$P``/YDSF0`B`9@/"L?Y6/0;/9BO0+#;(*?MR\`#X_OP"R"GYX"`"SK0`5`9@)"-\````(_9\%C___ +M[_V?!+4)"#Y#OP#94!,``#^9,YD`EP"8#PK'^1?T"PL)`:#I/D._`,?Y6/0+ +M";(*?J((`+\)F`\&#OC]G@3PE0*@";;U&+/T%`S]G@3PE02@"9@/"(G__^^R +M"@L!_?D$M0\(?I8'`#Y#OP"RR[(:LMRR+7[Q!@`^G+\`LCJR*WZU"0`^G+\` +MV5`3```_F3.0`'28"0K'F5CT&P7X"+(*"P=^H@@`LZ0`7=E0$P``/YDSD``1 +MF`D(C___]_V?!+4)"+`V`?0-!?@(WI04```\XO@)`;N3!/WY!3SO*;,T``W9 +M=10``#Z(OP#9?Q0``+PIH#^I,Y``#1*9`2"I/IR_`/@(^S&]E/0PX/F"L)$0 +MV2`0$`&]-+^8O:39)!0``+"1#SZPP`"SB0`!`=^9%```O#^0/YD/`;OY!/^/ +ME/4+S@"TD`^_DKGY`+WT_8D$L/$-D"F$L/$.D"^(L)$,L/$+D"F,D"^0D"2` +MF"`@L)$*L/$)/H/``+20#+3P"[^1O_:TD`JT\`F_E;_W?L$$`.4)``&@2<09 +M_Y*9!K"6`?0,'K(;LFRR7;(Z_DX!D.Y`?F.]``D!L)$-/G7``,<0Z+,`!!BS +M``D4LAJR:[)\LCU^T[H`LP0`"K]`/H/``+]`M/`.L_`!$0D!L)$.LBK$"0'T +M&X>T\`T*`;/P`!2TL!"R.GXM`P"]E`H!L)$0M/`/D#,!D/\$L/$/WU\3```_ +M^?"4_Z8Y]0@#__N%('^IWQ04``#QE0"`8*E_^?"50&#Y^`#T,/SY$L?9JK*Q +MLL"SE#\OW:"Y+N`93I!I3O`]L(8!$!O)_2 +MW`AH$0'93UP``+S9T#Z*Q``_V3.4!`J_N3YHQ``SE`,*O\D^:,0`N,D`"`"_ +MF?"4#P\#LZ0`!@\'II_T"PRSD`0)LYT%JP"0NX"0S!"0W3B0[@&FX/0(O-E5 +M$P``/Y[94Q,``#^?V1P4``"_F?#D__#T_[S^`,>:"Y+N`93I!I3O`]L(8!$! +MO)_2W`AH$0'90%P``+S9T#X9Q0`8V0\SE`0*O[\^\\0`,Y0#"K_//O/$`+C) +M``@`OY^_V;.0!#+$^0^SH``(LY`#$+.0!`RSD`4(LY0'&Y#=.)"[@)#,$)#N +M`:;@]`BWO:0^*<4`"@'[`0D!Q,\?MK0#O)_DE!:#Y^`"\K)"_G[GN`/W^!*"?^`"VM`.FR_0(!?@(E4`@&#?=D/V<`@``"UZ1#9`"$` +M`+7I$=E4(0``WP"N`0"UZ1O9GK,!`+N?`M^48```H/D)`=TD%```H.G:7Q,` +M`$D``=MR:0``M>D:W%P3``"]Y#Z=QP`_N3.0``X_R?"4_Z;I]`@/O]^8^2#Q +ME0"`M?D@D.X!D-T$/ZGPE/^FZ?0(U_@`"?"[RP*0S`_]R039````0/W)!=DP +M&A`!H)R2F2R_F?0P_+B[`"`"CO#_`[RIH-DT&A`!H)J2F2R_GY"9,/^^Y-Q` +M&A`!\/3_H)_9````!@]D_>D%_DT!V3P:$`&@GCX:R`"2_P&S]`$,O\F@V3X+ +MR`"S]`#QO\F@V;_9L)8`]!X)#V0^"\@`Y^FD`;:4!*:;]`L%^`C9````0-]` +M&A`!_^F5H/GT,`3X`/D"LJ!^$>$`?H;A`'Y,X0!^"E!V:`C``#<8",``+7I0KV4WU`C +M``"U[#&U^0/_S[RR@#<&F,``+S\D-P88P`` +M()V\_)"0_P$@G:;^]`CGWQ1A```]E"#YWQQC```@^?@`^6+:`"0``$M`$W[^ +M-`#9D1@!`-\`)```M?DCV2X(`0"U^2397"@!`+7Y)=D"+P$`M?DFV>`Z`0"U +M^2?9`B8!`+7Y*-D+'P$`M?DIV0(C`0"U^2H)`;7Y`@D+W@`1`0"U^0C9$!P! +M`+N>`K7Y&@D,W0#U``"U^0G9ZQ`!`+N=`K7Y&PD*W``H`0"U^0K9[2X!`+N< +M`K7Y'`D.VP`O`0"U^0O9-3`!`+N;`K7Y'0D/V@`Q`0"U^0S9ACL!`+N:`K7Y +M'@D1T``F`0"U^0W9ER`K7Y(C#6)/0- +M!?@(Y]E(`;"6`?0-!?@(E=D8L)8)]`T%^`C9`$(!`-\`!```M?D*V0!#`0"U +M^0S9`%$!`+7Y#=D`50$`M?D.V0`\`0"U^0_9`$L!`+7Y$-D`3`$`6/T4M?D1 +MV0!-`0!8_!BU^1+9`$X!`%C[&K7Y$]D`3P$`6/HD*V4)#`0![G`)8\B)UZ0S9QE$!`'N;`ECS)'7I +M#=GT50$`>YH"6/0F=>D.V6%!`0![D`)8]2AUZ0_90$L!`'N1`ECV*G7I$-DU +M3`$`>Y("=>D1V4--`0![DP)UZ1+9-4X!`'N4`G7I$]F23P$`>Y4"=>D4V350 +M`0![E@)UZ179`$0!`+7Y%MD`10$`M?D7V0!&`0"U^1C9`$YP"6/(X=>D7V8M&`0![FP)8\SQU +MZ1A8_SK9-4Y`"=>D:V35)`0![D0)UZ1O9L4H!`'N2 +M`G7I'-DS4P$`>Y\"=>D=V3Y4`0![DP)UZ1[[8=HP8P``2Q`!?OXT`-I`9``` +M2Q`!?OXT`-T`%!`!O]]._@/90&0``'6>@_'U`("@W_@`VD`W``!+\`!^H30` +MWVPA``#90#<``+6?&=\P.```M9\)WW`X``"UGQK?P`0``+6?&P\!H)\/$+6? +M&/@`^1+97!,``#^9W;`A``"]]`P!Q)[_/L?.`"#``=?D%"2QUV0$)P#79!PD$-4&<``#6I`379`C7I`DD` +M!'4I`G7)`@D&(.D@V0DP->D!-=D!"0K?D&<``#7Y!R#Y"8$UR0()#W6I`0D0 +M-?D!"0@UH`0U*P8@Q#7!`S7+!C7[`S7S!C4@`C4A`S7;`S7K`S7S`G7Y`G7; +M`DG_!W7K`G7Y!/M!V<@0``"]]*"?V`0 +M``"@G]D$80``^3*@G]#8$```T=00``"@#Z`?VN00``!+,`)^_C0`V>00``#2 +M`!$``*`)TQ03``"@&;(LVM00``"0(AS;V!```'[Y@0"F(_0;Z_LQV2$3``#T +M,.SY`CWT#0$_G/Y)`9"9"R"?-9\!-9\"-9\#-9T$LIJ0F0D@GS6?`C6=`36= +M`[*;DID$_DX!()^0[@8UGP$UG0,UG0()`C7O!"#O->D"->T!"0.]]#7I`]YW +M7```O*^0DID$L/8#]`P*/+^8/@O2`#^9/)R0(.F0_P&0[CBS]`G@V5(3```_ +MF_Y``?Y*`=UT7```/<2]Y)``!I"J$!#I`2#9,N\PY@/T#`H\KI@^3](`O`Z0 +MDID$/YDUW`$UV0(0S`&0[@$F^_08"B;+]!L%/<20W3BSY`G)WDA<```)`CWT +M/HO2``D",/8#]`T+"0,S]`@&"0&@Z1#_`9#N.#/T">C[!13=`)D!`-_X:``` +MV0";`0"U_0+>`)H!`-T`G0$`H/FU_@.U_0'9`)@!`-X`E`$`W0".`0"U^039 +MX&@``*">M9T!W@"0`0#=`)8!`+6>`[6=`MX0:0``W0!8`0"@[7_L?YM8F@+Y +M8EB2!%B0!MEH:0``6/8"?_%8\P18]`98]0@]]""?V7N%`0![G`+?=&D``&#Y +MV6F5`0![FP+>7&D``&#IV4"/`0![F@)UZ0'9]),!`'N0`G7I`]F,EP$`>Y(" +M=>D"V72<`0![D0+=S&@`` V=Z9`0![DP)UV0+9OIH!`'N4`G79`]G=F`$` +M>Y4"==D$V9N=`0![E@)UV0'[8;WT]#"H^8+^20&0F7B@GY*9!*"?DID$H)^2 +MF02@G]D\%``!OYFPH0I+^`':0%P``/"4`3"11]EV:0``()_9%&D``""?V5AI +M``"@G]DT:0``H)_9V&@``&"?V7!I``!@G]EX:0``8)\8_W794&D``""??OXT +M``L0VC!<``!^_C0`-*!'?I#1`-D\:0``WT5<```,!`T!WD5I```@G"#]D)D! +MD/\XII[T&_395!,``#^>#P'9$!0``:"?O?20F02@G_Y'`0\/N)D,`@#^1`'^ +M0`'^1@'^00$2XP&@GSTDU7)I``#8?!,``)!W<)!$:)``=)!F;)`1>#[CU0#$ +M/?^4V0:4WP.\GZ+90%P``+RIH`D$-:D//UDSE`!VQ"[_B\`B`KSKX+;D![_I +MCT("$+S?T(\```&@";\)MM0$_9\%H`F_V0_OH!F_"?&5``*@";\)_9\$H`F_ +M":#IO^F@";\)Y)\``O0+$[\9\94``J`9OQF@V3XCU0"_&:"O3__]_9\$H!F_ +M&:#9"0$^.-4`Q"S_VV@3``"\O)BSD``1"02@J0D&-:D%/MW5`#301S/0``P\ +MC)@SF0"*`#]9,YT`@P`\B!0``;^9L)$2V7P4``&_F;"1$]F`%``!OYFPD13951,` +M`#^9_D,!_D"0 +MZ8"VE`2PD0^TD`RPL0O;````SOW[!*!OOY^TD!2VY`2PX0V@7[N=!<2:#[20 +M$[]?E*X0NYT%Q)L/V0```,[]^02@7Z#.M/`/M.`-M)`2O^Z__[R=U?#4#[#A +M%K#Q%92^!93?!;#A$+#Q#K/4!!._6:`0\)40H%D)`3Y.UP"2V06PE@'U#)T` +MOVGPE8"@:;.T!1B_60\"H!_PE8"@60D#-1D%/N_8`+"V`_0-"+.]#Y(!OUG$ +M3O^+0@(0O.O@\)6]MN0$H%F_Z92M"I@<`J`IOR\)"*`921_^_?D$M)`0_Y_U +MH"^_*4__P_"5`:`IORGPE0*@*;\I_9\$_=D%H"V_*:#I"0"@*;\I\)4!H"F_*:#I"0,&D``'_OQ$G_D)D!O,F4_?D%8.^_ +M:8]"`A#$3O^\[^#PE2"@:;]9MN0$M+`.3Q_^\)6`H%F_:?&5#8"@:;_IH"F_ +M*?V?!/^YE:`IORE/_\/PE0*@*;\I\)4!H"F_*?V?!/&5``R@*;\IH.G9)``` +M`;^9D)D!M1D)L]0/&Y@9`K.4`128&03QE0`"M1D$/N_8`/@(M-`.M/`6OVY) +M'_ZTL`O]^03]_06TT!6@OK]>\/40_]F4M-`,M+`0H-ZTX`W]FP7PE1"@[[3P +M#Z#Y/A#:`(F`%A'$C_^\^?"4_`2_R0OOC@#I[I#_@*`YOSF4_02\_O#>!'`1 +M`?&5``*@.;\YMO0$O/Z@N.X`"`+]FP2@.;\YO/[PQ$[_D/`$L)$)B4("$+SI +MX+20";;D!*#)O]F@.;\Y\94``J`YOSG]FP2@.;\YVP```,Z@V;^IL)$8L``$?]FP6@>;]Y\97OC*!YOWF@J;]YH/F_V4\?_J`YOSG]GP2@ +M.;\Y#P*@'_"5H*`YOSGQE0`"H#F_.?"5$*`YOSF@V;\YH,F_";"1&[_IL)$> +MM)`>H.D)`S49!1"(`1!$`=U3$P``/]DFB?4(,_S[A5CY8ME?$P``/YX/`=GP +M%```()_$X?_9_!0``)0?`KWDO/GP/E':`*">D)D$II_T&_D/_MD@```!H)^0 +MF02@G]F`$P``?=1@G=E,$P``O?2@G]E0$P``#@$@GME1$P``()[91%X``*"? +MV4A>``"@G]E,7@``H)_94%X``*"?V51>``"@G]E87@``H)_97%X``*"?V6!> +M``"@G]ED7@``()W9:%X``*"?V>@4``"@G]GL%```H)_9A!,``*"?V8@3``!@ +MG]G0:0``H)_9D&D``*"?V:AI``"@G]F(:0``H)_93&D``*"?V2!I```@G=DH +M```!``&@D-D4%```8)_9&!0``*"?V8P3``"@G]F0$P``H)_9C&D``&"?V";VD/A'=`*:C]`@)LK\^+]P` +MIJ+T"`FRSSXOW`"R[]8D%```O-:0H)_?E!0``+ROD-:>%```()6\II#?.!0` +M`""5O-^0UDP4``"@D+S6D-]P%```H)"\KY#6=10``""0O*:0WW1?```@D+S? +MD-:(7P``H)"\UI#?K%\``*"0O-^0UL@4``"@D+S6D-^4:0``H)"\WY"@D*:D +M]!A3UF`4``"\UI#?:!0``*"0O-^0UGH4``"@D+RFD-]_%```()"\KY#6G%\` +M`""0O-:0WZ1?``"@D+S?D-;<%```H)"\UI#?N&D``*"0O-^0H)"0J@&XNP`" +M`+C,``(`N.X``@"0W02FH?4(!/_9A!0``-9@%```WC@4``"UE@&@GM]H%``` +MV8P4``#63!0``+6?`:"6#O_9]!0``-_(!```M90!H)&]U#+KW(@+``"U_0JU +M_0MU_A`U_B6]E#S[F9"9`;.4(/J0_S"F_/0;X]G`.```O>3?0$H``*">D)E` +MII_T&_G?<%X``+WDO=2@_;7]`;7]`I#N`93I`_&4^`.U^0.0_Q"SY!#HWG!> +M``"8Z3_?M&D``*#]\97X`[7I/]F$:0``#W^@G]F`:0``H)W[8=\``A`!O_G> +M!`(0`=T(`A`!^0+QE0\/H/F_Z=L0`A`!O?3<%`(0`?&5_P&@Z;_9&/]TVA@" +M$`'0'`(0`?&5_Q^@V;^Y\)5WH+F_R?&5,_.@R;^I\)4'H*F_"?&5$0.@"=E@ +M`A`!OYG%GAXS\``-"?[_Z?0^5MX`Q9\?V6`"$`&@G_L!V5@3``"/`.`!H)_9 +M7!,```X"()[971,``"">V5X3```-`2"=V5\3```/!2"?V6`3```,!""V2(3```@G/@` +MV4!>``#Y`KT$H)#9)!,``*"0V2@3``"@D-DL$P``H)#9,!,``*"0V303``"@ +MD-E$$P``H)#90!,``*"0V3P3``"@D-D(80``()#9D&```""0V91@``"@D'Z: +MT@#?#&$``-D`I0$`H/E__]X`V@$`V;1H``"@GG^>V0*M`0![GP+?$F$``&#Y +MV1!A```@D-DI^@$`>YX"W[!H``!@^=EF9P``()#[`?D"?E_>`-IH;@``"UQ^ +MH30`WS:,`0#9:&X``+6?$]^[AP$`M9\%W]:'`0"UGP;?\82@GMG(;@``()[9,&D``&">V7AI +M``!@GMG<:```H)[9'&D``*">V1AI``"@GMDD:0``H)[92&D``(_`U`&@GMEL +M:0``H)[9*&D``*"?F.\?V2QI``#::!,```L0H)_95&D``*">V3AI``"@GMG( +M:```WW)I``"@GGV4(/E^H30`VG@3```+!'ZA-`#:?!,```L$?J$T`-D8)@`! +MOYR0F1"_G=FL:0``()#95!,``""VE83```RV=!7$P``)LWT&`\2F0$@K#R>D#[V>'9`0![GP+?XFD``&#Y?AO1 +M`/L!]##\O=3^3@&@[0\!V1`4``&@GY"9!-P$%@`!H)V_R4\`_Z#IO^G]GP2@ +MZ;_I\)4DH.F_Z:#)]#`$^`#T,/R]U/Y.`:#M#P'9$!0``:"?D)D$W`@6``&@ +MG;_)#_B@Z;_I_9\$H.F_Z?"5!:#IO^F@R?0P!/@`]##\O=3^3@&@[0\!V1`4 +M``&@GY"9!-P0%@`!H)V_R0_]H.F_Z?V?!*#IO^E/?__]GP2@Z;_IWP``A`'Q +ME/__H.F_Z?V?!:#IO^F@R?0P!/@`V<1M``#;0&H``/0P_*";VM!M``!+D`!^ +M_C0`#0'9$!0``;WTH)W<"!8``9"9!*"?O\_^3@'9T&T``-N@8```H.^_[R"= +MM9L9V0````3]^06@[[_IWP```!#]GP6@Z;_IH,GT,`3X`/0R$O0R$?0R$(__ +M_P#9%````:"?DID0H)^]])"9)*"?#P*2F0R@GY*9#-XD%``!H)^_Z0_W_9\$ +MH.G9!'```/Z0`+WTV30!``&@G_@`^4+98!,``#^9O>2$```!TQ`4``'$G?_2 +M%!0``;T4T%`7``%*P%W1"``'1$!0``<2=_[T$ +MVA04``'<`!8``0O?/J?C`-E<$P``/YF]Y$(``=$0%``!Q)W_T!04``&]I-P` +M%@`!"[\^?^,`O"[T]`L,DOD!_9\$]`L%^`B@'Z`*O\F0[@']FP2@R:;M]`C? +M/A3C`+PN]/0+#)+Y`?V?!/0+!?@(H!"@K[_)D.X!_9L$H,FF[?0(W]E>$P`` +M/YF]Y((```'1$!0``<2=_[T$VA04``'<`!8``0O?/O+C`+PN]/0+#)+Y`?V? +M!/0+!?@(H!"@K[_)D.X!_9L$H,FF[?0(W_LAQ*D"]`L7#PG9)"```:"?#P*2 +MF02@GSXJY`!/"0C9)"```:"?QZD"WR`@``&VE`>@^=DH)@`!OY^.___W_?X$ +MH)_X`/D"V00$$`&]!*"0D)D$H)"0F02@D)"9!*"0D)D$H)"0F03>'`00`:"0 +MO^D/_OV?!*#IV0`$$`&@D'[YXP#9`!`0`=\`````H)_?B(B(B)"9!*"?D)D$ +MWC``$`&@G[_I#_O=#!`0`?V?!*#IO]G?````@/V?!:#9?HOB`-D0%``!3P`0 +MH)"0F02@GX^H0P6XF0`"`*"??@?C`/L!^``````````````````````````` +M``````````````````````````"]E)B:!OD2LZ``#IB<")B;!WZIQP#?(!0` +M`#V4LO$@^=`<%```?E+E`+\)\)0!]`L+?KAQ`#XIY0`@&7ZMY@`^*>4`V3P0 +M$`&_F;.0``;X"/@`^2+9(!0``#^9Q)#_Q`(&]`M520`!WT0`$`&@^<0)`O0+ +M"WZ\Z@`^D>4`V0`$$`'>'`00`0\"H)^_Z?"5`:#IV0`4$`&RGK^9/J+E`*#O +MO^GEGP`!\)0!]!OUO:2]M+W$?F9'`'X^X@!^)MH`?N0T`'Z4R`"R"GX\Y`"R +M"GY2R`#$"03T"UW9(!`0`;^:LZ``4]LD%```O<317Q,````!/BCF`-^9%``` +MO,^0/YF\"93]F@3T"QV_N9B?()"=@#X8Y@"@WK_?Y?X``<3Y`?0;]9#,`9"[ +M!#\9\)3_ILGT",8]]-G,:0``()]^>>H`?HI(`+,@`";='!0``+_?W"`4```_ +MSDE]__WY!-D@(``!H)_PY0B@WR#.W0P0$`&_W]F$$P``OYP.`=E,$P``H)[9 +M____?_WY!*#?L\``!O@(3PT.V000$`&@G[WTD)D$H)_9:%X``*"?]#$2^R'? +M`,J:.]DT```!H)\/`9"9!*"?WP```"'T,/C9`+0!`/F"UO___P#T,/S]E@3^ +M10'_GX7^1`'?````$;T$D%4LD$0H_Y]UWTP3``"_^;.0`0;X"-D,$!`!OY_9 +MZ!0``+^>H%^_6=_L%```O__QE/__H%FF[_0+(GY[$P#?A!,``+_YLY0!$KV4 +MH/E/#0[9!!`0`:"?O031)&D``+\9LY``(7Z>)0"SH``7WB0@``&_[[V4H!E) +M]_?]^02@[[T$OUGPE"#T"RG9&!H0`;^9L)8`]!\'?JE$`-E`&A`!OYFPE@#T +M'PF]I'[=P@"]!-D4%```?YGPE`'T"PE^`#<`O031(&D``#\9,Y``&PK^?KIN +M`+&FQS+T#0L]E"`9?HT,`+T$V5AI``"_F;.0``Y^*"@`LZ``!KT$V6!N```_ +MF3.=`,4`OUGQE(`!]0NZ`-!H:0``/PF]]*!/\)0!]!L\V1!I``"_G=ET:0`` +M?YO?````$;+:L$$`_=8$\+,`_=\%#!'>*2,``'Y>1`"_2;.4``L_"?"5`2`) +MOTFSE`-,?BIX`=D0:0``OYW9=&D``'^;V0```"&RVK!!`/W6!/"S`/W9!0PA +MWBDC``!^7D0`OTFSD`(:WVAI```_^;T$\)3](/D^K^@`LY0"%M\4%```?_F] +M!/"5(&#Y/J_H`+.4!P;X"+T$V104``!_F?&4``3U"^4`T6!N```_&;WTH$_$ +MG__'^0+U"Y(`V4`A``"8F0_PE,`SE``&^`C9XFD``'^;#"&P00#:`+0!`/"S +M`+*-WF%)``!^7D0`OTG<%!0``+.4`A!_R?&5``1@R3Z3Z0!_S]U@;@``/][9 +M0"$``)B9#_'T__OPY/E@SR#>\)1`]`M:W20@``&_W]G`;0``#@$@GDGW_OWY +M!*#?V>!I```]]""?/I/I`,3Y`?0;+]GB:0``?YO:`+0!`+!!``P1\+,`LGW> +M84D``'Y>1`"_2;.4``L_&?"5`2`9OTFSE`,*?@"T`;T$?C=-`-EH;@``F)D" +MLY0`#]G$;@``OYFSD``&O03=%!0``'_>Y.D`"/0+&MG(:```OY_DZ?_W8-FS +M\``(?B-,`+T$OUGPE`+T"P=^QW\`V104``!_F?"40/0+#7[D:0"SH``&O039 +M-````;^9LY0`!O@(TS0```'2`,J:.Z`RD``!L`8%]`TMT#@```&]%*`!?HP] +M`*`R"0'?3!,``*`)H/E^&'$`V6A>``"@D?0Q$KT$V1P4``"_F?"4`?0+"0H! +M/G/J`-D@%```/YGPE`;U"X;\O:3T,`3[A0C>,``0`;_IWR1I``"__0_^_9\$ +M#\OPE0+]GP2@Z;/4`!/9)"```;^?3O?W_?X$H)_99``0`;^?W@```$#]_@6@ +MG_@`V5(3``#T,.SY@C^?V503```_F8M!`A"]U/#T__"4_[R;D)21!+(>/@3K +M`+_IVW@3``"\V\"0W0''F03T&PJ_Z?"4`2#)D.X0IM_T".'0!`00`0D/H`G: +M#`00`0D#H*G<%`00`:#)VP@$$`&)#P`/H+G=$`00`4G_#Z#9WA@$$`&@Z=D< +M!!`!OY^RQ+(&LJ7%_`&@G/Y/`4F($Y#_-+*SLM"RZK+RH/D^A>L`OVN_6;]/ +MOSZ_#;^L_9L%_9\%_9X%_9T%_YS%]`L.OR^2^0&@*;/T`-O^20&0F32_F;.0 +M``BSP``&^`C?``00`0D!_DT!LOR@^0YDD-TD#V22_P&S]`$,O\F@V3ZWZP"S +M]`#QO\F@V;_9\)0!,Y``#I+N`?0;VSX;[`"SX``Z!`'^0`'^2@'^3`';:!,` +M`+W4W@1@$0'84A,``)``*)"J+(<``/]#'_Z&```@D,PP,D4^D^P`^`@^Y>L` +MF.D!H`F_"?"4#[.4!!+??!,``+S?D""5/H?L`*"TO^F@J;^I_9<$\95?#*"I +MOZF@Z3_YOQ_PE`'PE1#]GP7]DP3PE:"@&:`&OPFUZ0&_*:#)O\G]DP3PE:"@ +MR;_)\)40H,F_R:`ID-T!D+L$D.Z`D!$0V7@3``"\V?`_B9+B!/"4_Z;9]0A\ +M__N%%/@````````````````````````````````````````````````````` +M`````````````````````````````````````````````````````````/@` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````"_O_0P^/F"]##X_DD!D)DP +MH)^RM+/T``;X"-G?5@$`WP!6`0"\GU+9____`/WY!-D````A_D,!__EE_D@! +MV0```!&]I/_Y=9`S,)"(+#XH\@"S&03-`;`6!/0,&+,9`AH!L!8"]0Q``;,= +M`;X#/HON`+,9!N\"L!8&]0B-`K,9!V0!LQT+I`,^KO$`O=0)$OZ=#/0R$O0R +M$O0R$K/4`0O9:%X``*"=W@`D```8[Q@]E#7I&3/P`#;?%!0``'_Y\93]_V#Y +ML]0!$+WTV6A>``"@G_0Q$@D"WP`D``"@.;7Y`PD!-?D9/B;R`-I`(0``OZS$ +MRP'T"V.8Z2RSD`,I"0(UZ1C90#8``$_``*"?"0N@.;/=`18#O?39:%X``*"? +M/F_O`-X4%```?^\)_O_)E*"I\?3]_V#OL]0!$+WTV6A>``"@G_0Q$@\"V0`D +M``"@/[6?`SXF\@#?%!0``'_Y\93]_V#YL]T!PP+9:%X``*";]#$2/B;R`-`` +M)```F`HMF`LNO90P$02PD0#<,"4```T0WFNK``!^3<(`"0.SK0"&`CXF\@#: +M0"$``+^KY+D`@'.9`'<"WA04``!_[]P`)```&,T9B?]___'T_?__N91@[Z"I +M"09JK.4!A.R.GZ7\P"_/K4. +M`SXF\@"R.MM`-@``LHQ^.O(`OXFSD``("06@.;\^WP`D``"8^4^U_@/'F:JS +MG0E'`=^)JP``/92P\0`PD02R6WW$#2&R;MH`5@$`?M)"`#XF\@#90#8``+^? +MV40V``"_F=``)```MO08F`XMM0]2F`\NMI08\94`A+4.4+4)4[4/4=I`)0`` +M?;3<0"$``'X`.P`)"C.M`-H`F`DM#P:U#P.@/Y"9$+4)+3XF\@#:0"$``+^K +MY+D`0/4+NP#>%!0``'_IW``D```8S1D/`O&4_?^@/V#IM<\#2?^__[F4H*DS +MT``*"0L^)/(`&,D8,YD`A@`)`37)&3XF\@#90#8``+^9T``D``"8#RZ8#BVV +ME!BU"5(]E+4/434)&34)&+4.4-DX(``!O?2@GXD`A`#:0"4``+4)4WVTW$`A +M``!^`#L`"0PSI``KW104``!_V=Q`(0``O\X/`?&4_?^U#P-@V:`_2?^__>D$ +MH,X^)O(`M0D#H#FR&K\QIJ'U&R7\H$KT,`C[A0CX`-X`)```F.]/^5(-`3V4 +ME?08U40V``"U[6TUZ1J@5+*CLK*RPT:/NSR``\!V0`D```UGQJR2GXRJP"SI``>V0`D``"8 +MF4\/"Z`OQYFJLYT1C``)$SZ/\P#>("0``+WTO^F0[@2FD/0;%=D`)```M9\' +ML/8(]`T0/CKS`)#_`;/T">'X"`D6/LWR`+V4H,D)#CZ'\P"]E*#)"0\^A_,` +MWB`D``"]]+_ID.X$LY0Q%MD`)```M9\'L/8(]`T0/G_S`)#_`;/T">+X"+V4 +MH!D)#:`Y/I7S``D%H"D)`:`9^U'Y$M$P)0``F!\#"0*@J;*@Q_\%]`M#V0`D +M``"8GRW:0"4``'VTW$`A``"UGU"8GRZUGU'?`````;6?4H\`A`"UGU-^`#L` +M,Z``#`D$H`D^%_0`"0:@";\9F!X#F!$!W0`D```/P/V?!+71+K79+?4` +ML18`!/0,?K\)QYLHL[`#=K,P`0BSM`!NL_``<,>9\+"6#_0,8)@"!)4O$/0; +M)Y"[`<>JZ)"J`7X5;P"R&WX5;P#D*?__Y*___[:D$/VI!;4*!+,T`Q6Q]@$, +M\)P(\)8!QIH!/OSU`+,T`2$]Y(D`P`"F^?0-!3(^QND!Q)K_/OSU`+VD/OSU +M``H!^S&_J?D2F*\!LJ#'F2CU&[``Q_Y#Q_WH]`L7Q.D#LYD"H`"SZ02;`+#6 +M`O4,DP"5^1#T&QWQ]/__L^0$#(D``$`^1?8`B0```?_YE;4)`9@-`<3I`Y7; +M$+.4`PNQM@`$]`Q>L^0$"+.T0%>SE`$+L;8`!/0,2\3I`0H!]`M%OPG'F?"P +ME@_T##B8`025'Q#T&Q['VNB0J@%^%6\`Y!G__^2O__^VI!#]J06U"@2Q]@$, +M\)P(\)8!QIH!/KSV`+VD^Q&8KP'Y$K*@Q_GH]1NO`+^IQYDH]1NF`,?^0Y7Y +M$/0;'?'T__^SY`0,B0``0#[R]@")```!__F5M0D!F`H!Q.\#E:L0L_`#"+/D +M!`NQMD``]`QJL_0!#[&V``3T#1(^=_<`L_0""[&V0`#T#%#$Z0'T"U"_"<>9 +M\+"6`O0-/[/T`0ZPEA+T#1$^=_<`L_0#"K"6"O0,)Y@!!)49$/0;),>JZ)"J +M`7X5;P#D&?__MJ00_:D%M0H$/GWW`+VD/G_W``H!^Q&8KP'Y$K*@Q_Y#Q.D# +MLY0#=,?YZ/0;;;^IQYDH]!MEE?D0]!L=\?3__[/D!`R)```(/KKW`(D```'_ +M^96U"0&8#P&5^Q"PM@CT##F_"<>9\)*9`["6!_0,*Y@!!`H!E1D0]!LBQ_KH +MD*H!?A5O`.09__^VI!#]J06U"@0*`3X$^`"]I/L1^8+0P"X```,"V```\`#7 +M__\/_]8`+@``U1`@``$^$/D`WP0N``"_^00!NT,$_TF4]0O4`)@/`<0^`]`T=/B;Y`,3Y +M@#.4`"^RZ;#F!_0-!0D'IMGT#!^0,P&0`$#?0"X``+_YMI4;ICGU#0O_"@$^ +M*/D`"A'[@?D2W(`F```-`M%`+@````':!"X``-L`+@``/G;Y`+^ID-T!__F4 +MLY0!([^^__Z4]!L:O\G]_@7PE`?T"P^SD`,*"A,^A?D`H+^0S$"_&;P-]+:5 +M&Z;9]`W("@'[$7Y;4@#X`-X`)```F.F$^8(RD[.@`"W$.?_>B@L``+:4`M^2 +M"P``O)YPO)]@T<`.``"]),0U_]@A$P``/E[[`-D`+@``OY_>B@L``,0Y_]'` +M+@``MI0"E?("O)Y@WY(+``!'_^^\GU#$-/_8(1,``#Z\^@#$*0'U"[D`F!\) +MQ_D,]`L)__>4M1D)WEP3```_Z9@?`28Y]`@FWP`D``"8^8(SD``J/XGPE/^\ +M29*4F@+9K@L``+RIH#Y3^@#'^4,PE@/T#0FR:CY3^@"R6I@9"=Y830``O<0- +M_\>9A)2?!;:4`KOY`KS^\%C[`?"S`'[M5P"RH+.@`#.8J05]]'6O";.0`">R +M&GZ"F@"]]/"D_[:D`Y@)!3WDO)J0O)^0-9Y)D/\!L_0([Y@9"?V7!+49";8E +M`9`10+,M`#[_/IWY`%@9`@__9I_U&XP`OQ3>7!,``#_IF$\!)CGT"";?`"0` +M`)CY@C.0`"H_B?"4_[Q9DI2:`MFN"P``O*F@/A7[`,?Y0S"6`_0-";)Z/A7[ +M`+)J6!L#O<0-__"S`'[M5P"RH+.@`#.8J05]Y'6N";.0`">R2GZ"F@"]]/"D +M_[:D`Y@)!3WDO)J0O)^0-9Y)D/\!L_0([Y`B`9`1$-^("P``/_GPE/^F*?4( +M6__[@=D`)```F)^"F)Z$V00N``"_F?0P^/F"\/3_E9`"V5P3```_D]DB$P`` +M/Y+97Q,``+#V`/!\"_!V`;*HLL0_EO0P_-F("P``LK4_D=K`+@``/<0^G_P` +MQ`D!]0O0`)BI`<>;0\2Y`?4+PP#?P`X``#W4/O+[`+_YD/\0IIKT"PL0W0$F +MT?0(\;-0``\FX_08"3"V!/0,%+-)`)``)N/T&`HPM@3U#(,`\-3_V\`.``"4 +MV02\FY"@FK^OO-V0V\@.``"VE`/'__"\FY`@GR;B]`@()N;T"`>S<``7$O\# +MO-V0V\@.``"VE`.\FY`@G]_(#@``O-V0E)L#O+^P&+\!E-D$W<0.``"\G9`- +M_V"=?=1UG0'P]`'T"PHUO0$^F?P`$!$!/IG\`!#,`;8%`9"J0+,-`"?_V2$3 +M``#0P#@``#^6_DD!D)DO()R]Q+\)LYD`WP"8"0'?P#@``)3*!I@-"+ROH,>? +M0YBK#<3Y`?4+P`#'V6@FZ?4;MP#$N?_PG`OPE@&F>?4;J`"S4``/)N/T&`DP +M]@3T#!2S20"5`";C]!@*,/8$]0R(`)BO"[P<0I_[WDE)P#/H+_ +M`,2Y`?4+B`"8/06\W)"\GO`8^4DSE``6&/\!,_0`!O@(O-R0O)Z0-9])LT`` +M,9@_!;&FNP#T#1:\_/"\_O`8^4F2JKP2F40^9/\`O/SPO/[P&/E)/)J0/G?_ +M`)@_!;&FNP#T#1F\_/"\_O`8^4F2JKP0F40U^4D^?/\`O/SPO/[P&/E).YH" +M-?E)O:20[@&VM0&SL``)LZT`:__[0=D`+@``WP`D``#T,.CY@K^0F/F$L.$) +MWY(+``#>B@L``#*4L*$,\)3_LK>VE`*PP0N\GN"\G_"PT0J5!@*PX0ZP\0W5 +M@"8```@"/J8!`<1I`?4+OP&TX`R87P&_Z``"@D]XB$P``/^G?`"0``)CR3R9)]`@1WE\3 +M```_Z0L!)DGT"!3?`"0``)CY@O"4__"\"_"V`;):?L*"`-Y<$P``/^DF2?0( +M6+3P"3_Y,Y0`#[3@$`D1H.D^O@`!M/`)$ID!W@`D```@^;]YF.^"O)J0H'DS +M]``+M``-/OP``=\A$P``/_G$3__PE/^[^0+9K@L``)3P`KP)`#[\``&TX`H_ +MZ3.4`""T\!`)$:#YLST!^`"]]-EH7@``H)_T,1(^M@$!M.`*$ID!(.DP%@/T +M#!&_>;0`#;R:D*!Y/OP``;3P"[0`#K_YO)J0H/F5*A+QI,`?_XJE?AI]`+*A +MLZ0`!O@(F!D)L@J]Q`W_QYF$E)\%MI0"N_D"V5A-``"\^?!8^P'PLP!^[5<` +MLJ"SH`!&6*D)``"@GO0Q$K9E`9"(`9!50+-M`#7^M/`0"0&@^3ZX`0&]E+*:^X48V0`D +M``"8GX39!"X``+^9]#"P^8+3P"X``+:5`K"A#S#Q7["Q#K#A"["1%MJ*"P`` +M,OG;D@L``/"4_[WDMI0"#P>\FJ"\F["PP0VPT0RPH1NPL1JPX1*P\1,^B0!@$T(%\)`;+AO)]4LI?6H$P``/`D +M_SYX!`'PLP"R2GZ"@@#>B`L``'\P`X``.3`___$N?^4G02\WM`^$00! +M6.D"#_]FG_0;*QCI"?"4`?0+(ACI"%CO`[QYE/#S`/\)G::?]!L.O^F8F02V +ME1"\J:"0[A"F[?0;R;QB^)@Y!+OZ`K:5$*;Y]`A/-*!4Q+[_V<@.``"\[O"V +M]`.\^?`8_0$@^I3I!-K`#@``O)J0\-4!H),U_0$)_[;D!-_$#@``O._@8.EU +M[`$0N0':B`L``""I/J,'`5#)`6`9?QODN?__II7U'C3_"PBPL1,^L@8!LDJR +M.[W4?B]?`+.M`?H!LCI^KH(`S:B\S*6\LX0`"TB\`#ZV!`&050'^20&0F7)_ +MGY)>`;V4?71V]0.PX0EP\2GP\P"P\0H^HP4!=``YM,`*LCNR2O`#`+Q@`+(- +M\`0'?B><`)`)`;*A"P$*`;NP!+NI!-+`#@``L*$0L+$9O00^=04!6"D"#O]F +MGO0;5Q@I"?"4`?0+3A@I"%@O`[2P"@H!O*F4\/,`_[F=II_T&S6_*9B9"L>? +MZ+20&?V?!/0+)+20$/V?!/0;#K(Z?JZ"`+.NO``,D!&\/F\%`\!8.D0 +MS`':B`L``""L/J,'`0LCL+$3_D\!D/]R?_E0F0%@^?Y,`;3@$9#,2=__\SL``[ +MS-Y]E.\"E.D'NY\"O)Z0IIWT"P:0[@$T\%0)`;N?!*;I]`U+M*`/M+`8"1V@ +MJ;.]`94`/C4'`9@Y!(_226NVE1#_GYP/<+OY`J;]]!@A"1VTX`^T\!B@Z;/T +M`6N]]-EH7@``H)_T,1(^G```"@G_0Q$K2@'K2P"S^O +M/[GP\@?PD@>\^?"Q]D8`]!T.M.`/"0>@Z3Z9BO0+$)@)#8___\_] +MGP2U"0W>`"0``)CIA(__`/__G_3QE`#_N)D``0#QE/___9\%M>F$F`D!QYDC +MLY0"$)@*#`L!QZIT?GM0`'(:L@M^I`;,="!H(/C@,`;,9#$T%L!8,]`P1LQD*$@2S'0L!"#[D#0&S +M&0_.!K,9$.D&LQT-[@?0P`X```$0O42]=-9H7@``V``D```^@`\!V0`D``"8 +MF8.VE1NPD0Z2F0*PE@'T#0FR&CYG"0'90"X``+^>V40N``"_GY7I&_0+#Y7Y +M&/0+#\?I&O0;"0D1/J(-`7X&^`"RH+.@`0J@6C[C$`'>,"4``)CI`\>1"?0+ +M(K3P#K/T`Q39`"0``+*LM9ISLO$^SQ`!"1.@63[E$`':P`X``$L``GZA-`#9 +MB`L``+(,()$!!S[/$`':`"L!`-OK+@$`?H]7`+.I`#4'LZT!,`?>0"$``+_O +MLAQ)_^\!!?WY!*#O/L\0`=HP)0``F*D#`/S'F0GT&PK9`"X``+^0L@I^PRT! +MLZD`Z08/`=D`)```L@JUGW-^,RP!V@`K`0#;ZRX!`'XO5P"SH`$&^`C=,"4` +M`)C9`\>9"?0;"0P%/E$,`=P`)```F,^#F,Z`V?___P<-`?WY!/WI!-D````0 +MH%W]^06RVMD````(M<^#_>D%M_+OY)`9"93+^9O)^0NYX"]1YK`KT$"1+^ +MD`ST,A+T,A+T,A*S!`$+V6A>``"@D/Y)`9"95+^9LY0`$/Y)`9"96+^9LY`` +M,0H!?HWY`/Y)`9"95+^;D)D$OYRR6GYP^P"SI``4LPT!6@79:%X``*":/O0. +M`;,$`1"]]-EH7@``H)_T,1*T\`W^20&0F4#>0"$``+_]OY^0F0B_FY*9#+^< +MM)`-N_L"O/W0M*`,H)V8[1C^20&0F42_F[S]\+7O&+^IN\L"F.`7F.T6O,F0 +MH*G^20&0F4R_GY"9!)CK&+^:V0`N``"_F;S+P+OZ`KO?`K:5`KSP\+7L&+7O +M%[7M%M\`)```#`>U^6X!"`D"M?EO/L\0`=D`+@``OY\.`=D`)```M9YSMO4" +M]!L+LAP!"3[/$`&R'`$#/L\0`=D`+@``OYF]M)6<`CYX#`&2R0&0NP']R02S +MQ`#WV00N``#:,"4``+^?F*D#W0`D``"8WH2V]0*VE1+QE,`?\)4"M=QQM=]N +MM=EOC_\`_\?IZ`P)NYL"_>\$MI0(`0KQE/___9X%M=F$/L\0`=H`)```F*V$ +MQ]D8]1OO`]E`+@``OY+9`````?_9!;6@A,D$_?X%M:^!Q[ETLYT#H0/92"X` +M`+^>F*R"WY(+``#9_____?^YE,0-_[;4`KS?T-\````"_R_T_?D%B0```_WI +M!(G___RUKX#]R03][`6UKH(8V0&R'`$+\)5`-=D!/L\0`?"4`9@0;_0+3+(* +M\`0_M1!Q?K<'`;8$!MD`)@``O`D`LZ0`#`D'H%D^XQ`!F`D!\)0(]`L@F"EN +MF"]OM2!R#`NVE0&0_P&U*6ZU+V\!##[/$`&8&6Z8'V^VE0&0_P&U&6ZU'V\^ +MZ0T!T0`D``"8&6[2`"0``+.4`(L,"SZO#P'9`"0``)B:;U*J`7X:?0"RH+.D +M``;X"-D`)```F)EOVH@+```_K]W`#@``\)0_O224G@;P]/_9`"X``+SIX#Y; +M#@&_V9#=$*;I]!L4E"D$VL`.``"\FI"@D#Y@#@&0(@&F+_0(X-V("P``/]GP +ME/^F*?0;!?@(V0`D``#:3#8``+60<@MQ`X``+R> +MD%B=`=D`)```F)IRVTPV``#PTP"R7'Y%HP"SH``COUFSD`$;LPT!_0&]]-EH +M7@``H)_T,1*R"C[E$`$!"PP,LPT!S@&]]-EH7@``H)_T,1(,##[/$`&RBSE`$OF-^#F-Z`V?___P?] +M^03]Z039````$/WY!=D````(M=^#_>D%M=Z`/CX0`9C9@]____\'WD`F``"] +MQ/V?!-\````8_9\%O?2UV8._Z9#N0/"4!_0+!;+\D/\!L_0?\-T`)```F-Z` +MD,D!W____P>VE!O][P3]G@6UV8#=,"4``)C9`Y6?&+#V)/0,--D`)```F)Z` +MF)V"F)R!DO\!MN40O/^0MM46O)^0W\@$``"VE`2\GY!UGA-UG1!UG!%^Q5$` +MO00)$OZ0#/0R$O0R$O0R$K,$`0O9:%X``*"0O:1^C?D`LP0!$+WTV6A>``"@ +MG_0Q$@D!H%FRFC[E$`&R'#[/$`$,"@$+/L\0`0P#IL'U&ZSWV0`D``"]I+6< +M;3[E$`$*`?0P#/N%,/@``````````````````````````/@`V40N``"_F8Y! +M`A#?0"X``+__QYGPO)Z0MI0$OYG'_W3'GFJSY`$3DOD!O:2PE@'T#!RRZO@` +ML^0"#+#V`O"L"_@`O:2F_O0,!0H!^`#9!"X``+^9\)0#LYT#J`'9`"X``+^9 +MLYT`G`'9`"0``)B93\>9"?0;:ME`+@``OY\.#XG__P\,!?_YM++M/IH1`;;D +M!/W>!3/```T2S`'_ZY3T&_"YV0#_N93U&U@!V40N``"_F8Y!`A#'F?"\GI"V +ME`2_F;.P`!!^`A$!LZ0`%#X!$P''_W3'F6JF^?4;)@'90"X``+^=E=D;LYT! +M&`'91"X``+^?V0`D``"8G&C'__#U"P$!ECU&\@`V4@N``"_G^?) +M2`&2F0&V]1:F^?4,L0#93"X``#^9,YT`I@#9A"X``+^?Q_E#LYT$EP#'^>CU +M&X\`L^0$$97Y$+.?``*$`#ZF$@&SX`,(L^0!#I7Y$+&60`#T#&NSY`(-E?D0 +ML)8(]`Q>E?D0]!M`L^`"'[#F`O0-)+/@`R&SY`0=Y/G__]\````"/M\2`>3Y +M__^/```(/M\2`>3Y__^/``!`_9\%WX0N``"@^=F`+@``OY_'^?"PE@_T#`O' +M^8KPK`OX`+VD^`#T,/#Y(K*BLK'^0`$+$)``#+(*?J$T`-D`)```&)GA#@'= +MY"0``++JQ)O_/F$3`7_9D.X!D-T"Y)___\?Y9Z:1]!L20_P&0[@2S]`3.O:0^QA,! +ME"\!5!D'WN`D``#QE(`'O/[P_9H%=?D!^R40WX`N``#Y,L2C/Y(Y`;:4!KR? +M`-]`)@``#!2\GQ"R"[*BLAI^-C0`OQ^8'@$)^)@*"OWY!+V4\/4!M1D%H!_' +M[$/$RP'T&PS=`````3X>%`'=`````Y@?`;V4M1D/M1D)M1D.Q_GHD)D!MI0; +MQ_\AM1D'MO02B0``(/_9E?V?!=X`)```M1D&F.F$F.^"Q)W_E-D(Y)X`#S/P +M``CQY0`0V5P3``"SL``M/YG?````(/_O]?"4_Z;9]!@TL,8$]`TNV?___P__ +M^93?````,#ZQ%`$_F;+O\)3_IMGT&!&PQ@3T#0O9````$/WY!;4?"+.P`!C9 +M`"0``)B9@C.0``SDK___/M$4`;WTB0``"/_YE;49"MD`)```F)F"\)3_]!L) +MO<0^`Q4!MI0!W^`D``"\GY!8F0'PE'^4G`C0`"0``)@)@9@.@Y4M!K;4&,>9 +M\)2?!+R9D+N?`M]`7```D)D!MI0"N9D!O)^0&)\"\.1_V5P3``#_SN7P]/^V +M]!`_G/WO!?WM!;4>"Y@+@)@/A(G__P\.!/^YI,3]_R;/]`QMQ[YTV2$3``"S +MI``A/YGPE/^FV?0(1MDB$P``/YGPE/^FV?0(1C[`%0$_F?"4_Z;9]`@IV2(3 +M```_F?"4_Z;9]!@:F`F",Y0`%+/@`R&SX`$=L^0"%S[1%0&2Z0&PE@'T#0L. +M`3[1%0$.`]D````"_[F4E.\4_?H%_?D%V0````3_N924/AO]^079`"0``/W^ +M!;4?#)B=@L3?__0;";WD/DP6`9B9@>3>`/_][P7'F?"4GP2\F9"[GP+?0%P` +M`)"9`;:4`KF9`;R?D!B9`=\=8P``\)3_//F8CP```[:4$/V?!/WI!8___S^) +M``#`_^_T_]F4_?D%M1\-^S'Y0MM`+@``#$#:`"8``'XV-`#9,"4``)B:`])` +M(0``T%`E``#38"4``+:E$O&DP!_PI0%^R1,!W0`D``!8V\"8+@O<%!0``-E` +M)@``=0L!?\^U*0[9,"(``)C1DIC:G=M`)@``\.40M9LFM2X+O92U.0&_)/#U +M$+79DV#/(`F@.74)`W4)`HD``,"U.0+]J079``"0`,0;`;79FO`4#P_PV5`% +M``#]GP3]D06UVIVUV9()!34)`8D(`,"U"0+EN4`(M0D#B0`0`;F\`/VY!=EP +M)0``M3L#M9P#"?W]202@)/M!^0+'KL:RP+#F)/0,29BY!)B\`8__`/^2[@'] +MGP28OP+QE0`!M;D$Q\WPO.Z0O)Z0WL@$``"VE`2\GI`UG218NP&V]19UG!%U +MGQ!UFQ.R"WYS,P#[`=H`)@``VT`N```,0/D2?C8T`-DP)0``F)D#W0`D``#< +MC&D``,>:"96;&+.@`!Z8V8/?____!V#+_9\$D/\!_9\%M=F#/@,8`9C9@W_. +MW____P?]GP3?````$/V?!;79@_#D_Z;K]!L%8,K1`"0``)@=@Y@P%E+`&M1^#M1Z$\03`'_`%`;(*?LD3 +M`;(*VP`F``#<0"8``'Y$%P&8&8#'F72SE`,XF!F!F!Z"QYGPE)\$O)F0NY\" +MWT!<``"0F0&VE`*YF0&\GY`8F0''[C#?'6,``/"4_SS^F?L1V0`D``#T,/R] +MY/F"LJ/^2`&RE)B0;=8D(``!U104``"0B"374"X``#[]&P&S"01(`K`&!/0, +M&+,)`HP!L`8"]0SG`;,-`2<#/O(8`;,)!I8"L`8&]0A.`K,-!Q(#/KH;`7Y/ +M$0&SI``."1&R"J`Y/@T<`=!$-@``OPS:V"0```L(DLP!?F+%`+.@`!R_"G[J +M`@"_#-K8)```"PB]U)+,`7XKQ0#91"X``+^;V4`N``"_G-E(+@``T3`E``"_ +MG9@:`]E$-@``OY['N_#'J@G'S'3PU/]^B@(`B?__`+*BIJGT"V&_>4\`_\2N +M_]W`.```_9\$O?3]Z06@?K_9D/\!D-U`LY``$K/T1O0)!Z`Y"@$^#1P!V40V +M``"_F;:4!O&4P!_%D`%R"GX:?0"SH``BF*D&MI48]`L,F*D&L)8`]!\)"00^ +MG1D!<@I^\S(`F!D#QYD)]`L.O90.`;5)8#Z:&@'11#8``+\:LBM^!1,!M4I@ +MLZ0`#K\:?NH"`#Z;&0&_'`L(VB@B`````I+,`7YBQ0"_'+5*;@L(VB@B``"2 +MS`&]U'XKQ0`)`=U*-@``(-E^8A8!WB0```&_Z0X!M4D%/OT;`=]`(0``O_W$ +MV0+T&QR82@5^NFX`L@Z)0$(/IJGU#8T!``,^_1L!?UZ83Y8)_?_9E-U`(0`` +MH-GDZ?W_8%FV]1BS]`$,L@X`!S[]&P'>)````;_O\)4"L@Y@6;5/!0`%/OT; +M`;V4WTDV``#=2#8``"#YH(D@V=I`)@``LHM^QE0`#@.SH``\WB0```&_Z;^/ +MM4D%L_0`#`X#``0^_1L!OWH+`0`$\*3_?BT#``X#/OT;`=])-@``/_DSE``, +ML@X`!C[]&P&82@5^NFX`B4!"#Z:I]0W6`/@(OVFR#CY7&P'=2C8``#_9,Y`` +M*9A*!7ZZ;@`.!8]`0@^FK_4-L`#X"+]I#@7QE0`0``:@:3[]&P%_60X%``;Q +ME/W_8%D^_1L!T$0V``#9`"0``+\,F)UNVB@B```+")+,`7XKQ0"_"MDP(@`` +MO12UD29^Z@(`OPD/!-W@)```H#^VE`$*`;R=D'61`3X-'`'9,"(``+WTM9\F +M?ID7`=!$-@``OPS:*"(```L(#0&2S`%^*\4`OPS:V"0```L(#0&2S`%^*\4` +M"0&@.;*:/@T<`;(.IN#U&[[\V0`D``"]I+6>;?N%!/@````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`/@`]#"D"USY`C*@_DH!D*H$?J$T`-D@2@``\`3_E`H%O*F@F*\%Q_D1LY0! +M3,?Y$O0+*,?YC)2?!;:4`KOY`MF$5@``O/GPF/D#M:D&Q:D$N)D`(`*U^0._ +MJPGP_D\!D/\$_;D$"0&R_+B[`"``M?D5?HF&`/L%7)C?"ME<$P``]##X^8)8 +M_P&RTC^=F*D(LLBRY[*AQYYHLK;D]/__-%`PF*D!F*P))NWT"`7X"#4N',>9 +M0\3O_S"6`_0,#Y3Y`M^2"P``/M$=`93Y`M^*"P``O)^0&!\GM2D(Q\F$\)`< +M-2\L&!\O-2\]WUA-``"\GY"U*0J8&0RVE1LU*3XS5``*O00^(AX!Q%G_E)`% +MV2!*``"\"0"8"06/```"_9\%M0D%F!D(QYD1]`L0F`D%CP``!/V?!;4)!1@L +M+/Y#`;)*D#,HLFNR/7YX@P"SH`$,H'J]I#X('P&_/0G_IMGT"S6U*A1U+1>R +M;+(:LBM^[Z``F!D(QYD1]`L`;RDDKB9_W\`"@&PE@+T#06]I`D!H'G[A0CY@MD`)```]##\LJ:RDYB1 +M;;U4O72]Y-2D)0``V&A>```^8B(!LQD#90&P%@/T#`^S$`$CLQ0"&3X"(`&S +M&06M`K`6!?4(-P*S&0;Y`K(>/F(B`=D$+@``OY[$[0'T"R/92"X``+^?F#EH +MMO46YYE(`:;Y]`@-"1&R&J!I/G(B`<3I`O0+:9@YD/"4![.0`0ZSD`,*"1,^ +M[Q\!F#F`WH0N``"_[\>9=+;U$+.4!`ZS^P`"I0(^[1\!LY`#%[.4`1RS^0B3 +M`K/Y$(X"L_D@B0*S^4"$`C[M'P&SG0)[`K/Y"'8""1&@:0H!/G(B`0X!L]D` +MK``^5B(!V4@N``"_GY@[@9@^@ME$+@``OYV8/$^)``#`_?D$B?__/^35___] +MZ02)``#___[E_[F4M3Z"_UF5M3F!Y+?__Y7)&+"6)/0,()*9`;;E%KR9\+SY +M\-G(!```MO0$O/GP=?X0=?41V5P3```_GY@YA";Y]`TOIG7T"RJ8/X`)`0X" +M($FV]1O9I24```$#()\^8B(!WJ4E```_3S_I)OGT#0NR'@$&/F(B`<3Y_Y20 +M!MD`)@``O`D`F`D!OP['F0,SF0"Z`,3I!S.=`;(`F`D,F`H+MI4;MJ48MJ0& +M_:D%?AI]`+*BLZ0`!O@(VDPV```+7'ZA-`#%*02XF0`@`MZ,-@``H.F8"0F] +M!,2?#PD2M3]O_I`,]#(2]#(2]#(2LP0!!J"`LBHP\0"R6[)\W4PV``"R;GYX +M'0&RHK.@`"BS!`$+O92@B?0Q$M\`*``!O_D.`P$$\93_/Y"9`K4Y;CYB(@&8 +M.F]^`AT!LP0!":""]#$2/TD.`S[K(0$0^0$.`R!)/F(B`=D`*``!6#K)0`LZ0`(]X`)@``Q`G_MI0&O)Z0F)H(QZIH?LP%``X$LZD`J@"] +M!`D2_I`,]#(2]#(2]#(2LP0!!J"`F#IO?@(=`;,$`0N]E*")]#$2/TFR'@$# +M$)D!($D^8B(!F#F1WH0N``"_[Y@^3_&4__^V]1"4\!#_"96U.9&5ZABPIB3T +M#")VI`;QI,`?\*4!?AI]`+.@`!&8J0'QE/___PF5M:D!WP0N``"_^0X%\)0! +M]!L3/J,@`0D!H&FRFCYR(@$.`0$"/F(B`0X!`06FX?4;S/S9`"0``+VDM9YM +M]#`$^X'X```````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````````/@`^8+9`"0``+*FLI68DVV])+T4O438238```?D+5?;O0+ +M#IA9@+:5&Z;Y]`T)"1,^VB,!O/.2TD`F``"4D0:\$A"8&0R8&@NVE1NVI1BV +MI`;]J05^>`LJ"SH``.LAJR"PQ`?C8T`+\?M5!RQ/H'DJD#L)8!]`T5LZ0! +M$L?YBO0;"PD3H&D^TR4!F$D"\?0`?+:5$/0+')7Y"O4+#``"`0,"/L,E`0D% +MH&D*`3[3)0&5^0KT&_._2=U`-@``LG*@U[49`IA/`0,$M1\#/L,E`0D!TD@V +M```@B2`IW4HV```@V9@9#=]`-@``H/?2____^+:5%K59<9@?"I@9#;\;C0`` +MP/WR!/V=!=(``(`$M1D-_?(%M1\*F$T""OC_NI3PE0&"``#_H!G]\@2VU1#] +M_06U'PJ_29A<;Y@>!9@?!Y@="+49!9A"`4G_X/W*!/"T!_W+!?W)!(G__^"V +MY1NV]1NVY`BV]!#][`7'W1O]Z02VU!C][P79_____OWI!/WM!;42![5>;[(: +MLC)^T7H``P,^PR4!F%EN/X^[EP*4D0;90"8``+P9$)@9!C/]`.0`W4HV```_ +MV3.=`-@`F%]QF!T-F%YOF!P*OQN8$`B)__\_MO06_=D$V?__?_C]_07]R02U +M'PW$Z0![4:"`,$/L,E`9@?!Y@>!I@=!=E`-@``OYR)``#^_?D$V?__ +M?_^U'P?]Z039````_;4>!OW9!+4=!;/$`1>_'\3Y![.0`0X)^/_YE/"5`Z`9 +MV0`D``"8FG*SH``,LAL,0'XV-`#90#8``+^9/MHC`;(R/L,E`0(#IB/U&US] +MV0`D``"]I+62;?N!^``````````````````````````````````````````` +M`````````````/@`^5+9`"0``+*ELI28D&V]]-%`(0``0__OTD0V```^@R_MD` +M)```M9]MO92RFOM1^``````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````````````````````^`#=`"0``)*J`1C>X)6O!9#_ +M-+;T`KS?\+_\\*0?"0$2[@&[F@0UWN"YF0#]G`2@^?@`L*8D]`PDDJ\!O/^0 +MO)^0W\@$``"]Y+:4!+R?D`__M9X+M9X*=9\0^`#Y@MD`)```LJ2RD9B0;;VD +MTD0V``#34"4``-7___\'UP``_P#8__\`_]8````(/CDJ`;,)!/<`L`8$]`P0 +MLP`!&[,-`I(!/E(I`;,)!2(!LPT&A`$^W"D!ORI^,JL`LZ0`#@D+L@J@23Y) +M*@&_+-K8)```"PB2S`%^8L4`LZD`70&_++W4VB@B```+")+,`7XKQ0"8&8"@ +M.;\IF!Z!OSV\F?"\^?#9O`0``+;T!+SY\%CY`;4^`?W5!)@<@\>9B[:4&_V= +M!;49@#_Y_>@$ML4;MI00_9<$_9X%M1F!L\D`_0"2R0&PE@+U#/(`M1!SL@H` +M`CXY*@$*_W[#+0&SJ0#7``K_?C,L`9@?@Y@9E0X!``3]]03]E03]]@6U'G.U +M&96U'X,*`CXY*@&_*G[J`@"_+=G@)```E-\!O/GP6/D!X7V4=?D! +MQ.G_IIWT&PD2Z0$U&>&_/@`%"@2U'H"8/P&U'X$^.2H!ORH`!GXS*`&_*GX" +M*`$*!3XY*@'>`"0``)CO@]!$-@``OPS9____!_WY!-K8)```M>^#DLP!"PA^ +M8L4`LZ``(+\,VM@D```+"+W4DLP!?BO%``D!H$FRFCY)*@%)P0`*`:!)/DDJ +M`;(*/CDJ`0`%"@&FH/4;4_[9`"0``+6:;;VD^X$````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````````````````````````^`"8J0R8J@OY$K:5&[:E +M&+:D!OVI!7X:?0"RH+.D``;X"-I,-@``"UQ^H30`Q0D$N)D`(`+?C#8``*#Y +MV60V```!`;(*H)';3#8``'Y@7`"8"0GPE`_T"R.\D:+90$H``+:D!;RIH-F@ +M-@``L@N@D=Q,-@``?HF&``H!^Q&8KP'Y(K*@LK'$^0CT"SN8J0C?(A,``#__ +MQYYH)N_T"!'97Q,``#^9"P$FZ?0(#Y@)#?"4__"\"_"V`;(*?L*"`*`:/MJ='Y[4`#9)````;^?F`X+F`T,V=!I``"0_P&5XAB5 +MT1N@G[(JLAM^/K<`LZ``"'Z:M@"R*K(;?CZW`+.@``;X")@)#)@*"[:5&[:E +M&':D!OVI!7[S,@"_"0_X_9\$H`G[(=D`)```F)^`F)F$]##P^8*V]1LPD2OP +ME/^4DP2\F9"VI0&4D@.P\0G9K"$``-^H(0``_D@!L*$+T4`F``"]1+P_,+PI +M()"(,-=`(0``/B@M`;3P"PD!NY0$_9\$]0N3`+\9\)0']0N*`)@9`<>60\1E +M`?0+-+T$"1+^D`ST,A+T,A+T,A*S!`$+V6A>``"@D+(:?@(K`;,$`1"]]-EH +M7@``H)_T,1*R&K*+?GTK`;-0`"_97!,``#3P*S^9)OGT&!:P9@3T#1"_/[^) +MO)^0H#D^$"T!OR^_B;R?D*`IF'D6F'\7DID!D/\!M7D6M7\7D$0!D!%`M)`) +MIDGU"%?_^X40WP`D``"8^8#T,/SY0[B#00"8``*#I +MLN8)_[T4M?ENO20#`3Z<+0&\,93]E03T"R>_"?"4!_0+'[(*LFM^QE0`LZ`` +M%)@)`0(!\)0(]`L(M7-NLC*0$0&0`$"F%/0(R_Y)`9"9(+^9LY``%=D`)``` +MF)J$"P'PI/]^+0,`LBK[=03Y@MD`)```LJ6RDYB13.0`#N8.@5^NFX`IJCT#1CX"-\D(``!O_D*__&5 +M`!"@^3[@+@&R'Z;Q]1L7_]D`)```O:2UGW,^X"X!"@'[@0G_M3EN/I,N`?@` +M^````````````````````````/@`^2+0`"0``)@.3[*AF`F`Q^^0]0O!`+:5 +M&Z:?]0BX`)+Y`97J&)22!K"F)/4,EP!VI`;QI,`?_:\%?AI]`+*LLZD`@P"_ +MJ?"4![.=`HH`F`E/QYD)]!L1F*D%W____P?]GP2UJ06_SYC.!IC-!0GX_?D$ +MV?__?__P]0/]Z02@S]G____]MD!O\_9`"0``)B=D""?#]^02@[YC)`YC?`L>9`<3^ +M`;.0``?PY@&_R0_P_9\$_^F5M=D"F,P!M=P#^`#9`"0``)B=3P_PW$`E +M``"8V0+:4"4``)BK`\?ND/V?!*#)V40V``"_F9C?`[;D$+:4&/&5`("USP'_ +MGN79____?[7.`_^Y]+6O`[_9QYF*]`L.O92UR0&@R3Z_,0&8V0+_^9;PE`'T +M"PS9````&SX;,@''N:JSF0:W`+"6!O0,#K"6`?4(V@`^[C$!LY`'0;.=",X` +M/JD$Q[X$M<\!F-\%MT#^`!^`C$!"@'X`)BO"/DBV804 +M``"RK)7R'+R2Z-F,%```Q_!HO)(8E`H"O.K@O^FSF0#.``OP_9L$N)T`(`"F +MS?0;9)C/#KP:T,3Y"/0+#;V4H.F@V3[\,P&@[Z#9O^ZRNO_KE+B?`"``F/D. +M_YK4\)0(]`L-Q>D(M?D./OPS`;C?`"``IOST&^/X"#ZI,P&FS_0;#9C)#K79 +M#C[\,P&R_3[F,P&ROIC9#O^>]/"4"+C_`"``LY``VSX]-`&8R0B/___WLLK] +MGP2UR0A^/`D`LR0!$MYZ%```W7\4```^*S0!WG`4``#==10``#S@F#S0^!*9 +M`3SI"1+_`3S?"?LAV0`D``"8FW*8FD_Y$D__WYBY"+^^_9\$M;D(Q.$'LQ0! +M$`GX`0/_Z93PE0.@N;^YQYF*]`L0F+D-C____OV?!+6Y#9BY"-___^_S0,$` +M_9\$M;D(V0`D``"8F7#PE`3T"R+90"8``,>JD``!#$"[H`*VI`:\J:!^-C0` +MLQ`#!@`3L@K[$=D`)```F)]/^2*8F8#'^I#U"^\`MI4;IIKU".8`V0`F``"4 +MH`:\"0"8"0R8"@N8`@&VE1NVI1AVI`;]J05^>`LJ&SH``.L@JR&PQ`?C8T +M`+\)Q)H'LZT!J0"S$`!HO?0)$OZ?#/0R$O0R$O0R$K/T`0O9:%X``*"?F!D( +M\94`(+49"+/T`1"]]-EH7@``H)_T,1+%&02XF0`@`M\`)```M?EPM?%RO92U +M^7'$*0CT"PD)%#Y^-0$)#;7Y;0H!/L4U`=T`)```F-YAF`\,W)`E``"UT'*4 +MZ0.\G)"_F;;U&[;D`[;T!KSMX+SY\+7?<)CN90D*M=EMM=YQ/L4U`0H3^R'Y +M4MD`)```]##XLI28D&V]]-%`(0``@_]__]50)0``TA04```^[C8!LPD@A0"P +M!B#T#!"S`!X;LPT?V``^.#8!LPDAB@"S#2+*`#Z=-@%_*;\?F$IN\)4"\?4` +M@&`IH!]^M'T`L@^SJ0#!```?/NXV`;\9F$]R"O#<4"4``/V3!*`9O928_@*P +MD0`)`C"1!)C[`__JI`T0WFNK``!^3<(`L@^SJ0"%```@/NXV`;\?Y/D`@'.4 +M``JR#S[N-@'_\Y2R#Z`9`"$^[C8!?E,Q`;(/`"(^[C8!VD`E``!]M-Q`(0`` +M?@`[`#.D`#^860.PE@#T'RU^[#(!VD`E``!]M-Q`(0``?@`[`#.@`!8^[#8! +MV0`D```*`;60;3[^-@$/(@`"/NXV`0\BIO#U&__^V0`D``"]I+6?;?0P"/M1 +MV0`D``"8GT_Y@KWDLI*8D6V8D'+'_Y#9`"8``)3S!O0P^+PY,-=(-@``U4DV +M``#62C8``-C__^_S/O4Y`;,9#)L`L!8,]`P0LQ`*(K,="XX"/JHW`;,9#LL! +ML!8.]0C#`+,=#WD"/FTY`9@)",>9$_0;')@)"K(>W0``@`"U('+]G04!#;4) +M"C[U.0$)`9@J<"!9('F8*W&8#`I^7$$`LAX!"S[U.0$_63.=`$<"F"IPF"MQ +MO92PD0`)`K(\,)$$#4#>:ZL``'Y-P@"SJ0`E`K(>`0P^]3D!WD`A``"_[^3Y +M`(!SE``*LAX^]3D!C?]____]E-Y`(0``H.F8.0J8/PBR'MT``(``M2-R_9T% +M\?4`(+4Y"K4_"+(P`0T^]3D!F"!RW9X4``"8"0C_F.3'GVBU#@@\WYB5Y!SP +ME/^[E`?PE`'T&P_'Z1/T"PFR"GY*,P&8#@C'Z1/T&RZ_"<>9BO0;"[(>`1\^ +M]3D!F`D*C_S_`/&4__^2F0&FG_0-"[(>`2$^]3D!V4LV``#'[V@@GY@)#8\` +M`,`-`;:5%K4I<9@)#;\._9\%M0D-Q^Z*]`L?F"EOF`\(WO____X]U/V>!,?_ +M&[;T&/WY!;4O;PD!('D@:2!9,]``#S4)*SV4(&D^ZS@!"0,U"2N8#PC'^1/T +M"QK9)!0``,?_:+R?^`D!NY0$M?D(/A$Y`;(*?M%Z`-DD```!OYFR'@$.M2D% +M/O4Y`3]YF"!R,Y0`$3]9,Y0`"S]I,YD`MP"_"?"4![.9`JT`F"H%?KIN``X. +MCT!"#Z:O]0VC`/@(W20@``&_V0X.`0_QE0`0H-D^]3D!F"]QF`X-F`T*F`P( +MOPN)__\_MO06_>D$_<@$V?__?_C]_@7]V02U#PVU#`BU#0K'N8KT"QJ8*6^R +M'@$"QYD8MI0;_9P%M0D(/O4Y`<2Y![.0`0RR'@$"/O4Y`=G.:0``?YFR'@$> +M\),`M2EN/O4Y`=D`)```"@&UD6T^!3H!#@X!#S[U.0$."Z;A]1M)_=D`)``` +MO:2UGFWT,`C[@?ERV0`D``"]]+*7F)!MF)%RUHA8``#5SFD```02O332:%X` +M`#[..@&S`!9/LP`77[,-%((`LC#^0`ST,A+T,A+T,A*S!`$&H""R&GVT?BB5 +M`+(:?H]4`+.D`!.S!`$)H"KT,1(/%#Z/.@&S!`%6H"/T,1(^RCH!OVJR&WXX +M7`"R#[.D`$,`%S[..@&_&?"4![.0`1+?`"0```D"M?EM/L0Z`7]9L@\`'O"3 +M`+5Y;C[..@'9`"0``+60;0H!/MXZ`0\4`!:F\/4;8O_9`"0``+VDM9]M^W'Y +M(MD`)```LJ*RD9B0;;VD/G0[`;`&#_0,%;`&"O08.+,``26S!`)N/F8[`;`& +M%/0(8[`&%_0-*Y()'K"6!/0,5#Y+.P%^Q#0!H"JSH`$TL@H^A#L!M1!M?@,W +M`3Y2.P&U$&U^"CH!/E([`;40;7['-0&SH``*L@H^7SL!F!IMF!!M/G0[`7X_ +M-`&@*@H!/H0[`;(*IJ#U&W[_V0`D``"UFFV]I/LA^``````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````#:0#8``'Y4/P$)#[.@`!#9`"0```\%M9\#"0BR +MFO@`V0`D``#Y,IB?3SW4V;`4``#>O10``""=D)D!II[T&_G'^7`SD`-[,)8# +M]`P.,)8!]0@M`3X5/0$SG00E`=D@$P``/YG1L10``-.U%```\)3_E)`$V:0A +M``"\"0`8`@T*6C,@`!:8"0&8"@+;@):8`+R:H'[4;@`@&I`1`:83]!OAV2>___U"],`/?39L!0``#R?Z3Y^/0'9(1,``#^9TK44``#18"0``=.P +M)``!\)3_E)`$V:0A``"\"0"_&0I0QYEJLY0!"KVD/@0]`1@)#8L`4P9:K.4`PJ]I#YK/0$8"0V+B*<1,Y``&I@) +M`KR9\+SY\)3Z!+NO`KRJH'[4;@`@*I`1$)`B`:83]!O$/GX]`?@(^S$FJ_0; +M.+/``#>RS@\!O92VE`2VY03PE0\R^[/@``N0_P&S]`7N_9T$IIST&Q#$N?^V +ME`*[V04^O#T!O=2RVO@`OZZ8J0'Y@H___P^RHO_O9+:5&+"6#_0-!?@(/?39 +ML!0``,?D&2"?#/\/`0U:/@`^`;-```H@[3[]/0$@[)#_`9@I`=NP%```O/O@ +MMI48IOGT#>'0P#@```-:B(BG$;*UUT!*``"_";.9`)4`F`D!\)0(]0N*`)@/ +M"Y@J`9@-#+)LMO48O/^0O)^0W[P$``"VE`2\GY`_FXG__P^VI1#]V01^@#T! +MLJ&SH`!5F`D,QYETL)8!]`A&L)8"]`T+LY0#/3Z\/@&R"@L!?L*"`+RJD+R: +MD)2?!;R?D+R:D/^8[+-``!3$'P\\7Y@[G@(\6?D^O#X!.SX"/KP^`?@(D`!` +MI@?U&V3_#P$-_S[9/@$_Z9#_`2:=]!L%(..8*0';L!0``+S[X+:5&*;Y]`WD +M^X'Y`MDP)0``LJ"PIA#T#07X")B<`;^9"_`*"?^;M'YH>0"P!@CT#0T-#(\` +M``(^)3\!#02/```!V;`4``#_^97ZJ0;?L!0``+S?D+^?WL`4``#9`"0``+S: +MT+6?;KG_`*#O^MX%^P'9`"0``/0P^+WD^8*RI/0P^+*3_D8!_DS&0*3`;`6`O0,4K,=`:X! +M/KD_`;,9!N0`L!8&]0C"`+,=!YD!/LU``9@Z3\>I<)*9`;"6`_0-#0D%LAJ@ +M23Y;00&5HACT"PNR'@$#/DM!`7X?/`$*#3X700&R*GXRJP"SJ0`.`<0I`;(J +MM3EALFNR?'Y#,P"SH``NF#EAW0`D```.`P$&E)\#O/WPW9`E``"VE`.\G9"_ +M;:"=OWFU^64^2T$!F%DWF%LXL*$`Q"K^MJ0#O*F@"0*@:MYKJP``,)$$W)`E +M```-$'Y-P@`.`[.I`.T`"04.`[4Y`SY+00&_7PX%Y/D`@'.9`-4`__B4#@6@ +M60$&/DM!`9@_8;V4L)$`"0+=`"0``#"1!-Z0)0``E/D#MO0#O)V0O/[PF)ME +MO_K>:ZL``-P`)@``#4!^3<(`LAZSJ0")``$'/DM!`;]?Y/D`@'.0`';_^)2R +M'J!9`039`"8``+4Y`0(^2T$!W<`4``"8.6Z_WZ;Y]!L:V104 +M``!_GPX!H$ZRZO'T_?]@GSY;00&R'J;A]1LX_MD`)```O:2UGFWT,`C[A0CX +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````#<0"$``-I`)0``?;1^`#L`W``D```S +MI``EF,DMWA04``!_[PT&D)D0M:ZL``#"1!-R0)0``#1!^3<(`#A:S +MH``+"1<."+49`[+J]#`(^S4(^``````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````#;0"$``+^\"A?DR0"`D#E/D#O)V0OYJV]`/T,/B\ +M_O"8^V6SI``RL[0`+ICI3\>9JK.4"A`)#;7K@[7I`SZ"1@'X"`D%#Q.UZ0/9 +M0#8``*"?/H)&`;V4L)$`"0+<`"8``#"1!`U`WFNK``!^3<(`"1BSH``0#QG9 +M`"0``+6?`PD(LIKT,`CX`/@````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````````````````````````````````-Q` +M(0``O\T*&>39`(!SD``FWA04``!_[XG_?___V90*"/'T_?^@R6#OV0`D```/ +M&K6?`_@`^``````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````#Y`M``)```F`F`]##XMI4; +MM0ET]!L)"1P^8$@!F`EAW@`D``#<0"8``$W`!Y2?`[:4`[S^\-Z0)0``O)Z0 +MOYJ]E+"1``D",)$$F/MED*I`WFNK``!^3<(`"1JSH``+"1NU"0,)"+*:]#`( +M^P'X```````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````W$`A``"_S0H;Y-D`@'.0`";>%!0``'_OB?]____9 +ME`H(\?3]_Z#)8._9`"0```\:ZL``'Y-P@`)$+.@`!#9`"0```\1M9\#"0BR +MFO0P"/@`^``````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````````W$`A``"_S0H1Y-D`@'.0`";>%!0``'_OB?]_ +M___9E`H(\?3]_Z#)8._9`"0```\2M9\#^`#X```````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````-DP)0``OYJ8FP&]E/0P^+"1``D"D*I`,)$$W$`N```-0-YKJP``?DW" +M``D2LZ``$-D`)```#Q.UGP,)"+*:]#`(^`#X```````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````````````#<0"$``+_-"A/D +MV0"`39`(!SD``FWA04``!_[XG_?___V90*"/'T_?^@ +MR6#OV0`D```/#;6?`_@`^``````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````````````````#Y(M$`)``` +MF!\'WF@D``"RHI3Y`KR>D+;T`K^;V40D``"\^?"_^GZ%Q0"RJ;.D!PKX"#[" +M40$*"+.=`XP`F!D'WHPD``#:0#8``+:4`KR>D+^9^968'P?>:"0``+*@E/D" +MO)Z0MO0"OYO91"0``+SY\+_Z?I16`+,$``X)`0H-H"D^Q%$!WT`V``"_^;.> +MX@`4"0:U&0.RF@D!H/D^Q%$!LY`!';.>P0`)"0&@^0\%V0`D``"R^K6?`S[$ +M40$)';49`PH(^R'X```````````````````````````````````````````` +M````````````````````````````````V0`D``"8G4_Y0IB?=/0P^)B9@,?> +MJC/@"A*5DQNF/_08([+S/D)2`979&+R9\+SY\-F\!```MO0$O/GP6/D!QY.+ +MV0`D``"8E&$SX!`,,^`."#/D#RS'V9#;P",``)2?!KS[\)C_G-X`)@``E)P& +M#4"\SL"V]1N4_@8^Z5(!,^0,7MD`+@``OY_9!"X``+^9/23_^14^T5(!$"(! +MQ!D!]!LRV4`F``"4H`:\"0"8"0R8"@NVE1NVI1BVI`;]J05^>`LJNSH``, +ML@H,0'XV-`"V%0'$*O^FH_0(P)`Y`=P`)@``5)T&O>3;`"0``)1/`Y1)`[S[ +M\-N0)0``O)N0OYJ]E+"1``D!,)$$F/MEO.J@WFNK``!^3<(`"1VSH``0V0`D +M```/'K6?`PD(LIKT,`C[0?@````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````````````````````#<0"$` +M`+_-"A[DV0"`^\_O#PE`$SE``J#P390#8``*"?O?391#8``*"?#P79`"0``+6?`PD! +M#PB@"3[P50&2^0&4GP:VE`.[^0+9=%P``+SY\!CZ`QC\`I#=`7;4!/"D_WY. +M`@`/#K.@`"(/`=E`-@``H)^]]-E$-@``H)\/!=D`)```M9\##P@)`:`)LOK[ +M`?@```````````````D!^0*@J;*@?EY6`;.D``@)":`)OPG0`"0``)2O&/'U +M`(2VE!BU"5*8"2VU#U/:0"4``'VTM0E0F`DNW$`A``"U"5%^`#L`,Z``"KVD +M/EQ6`9@)+0H!D)D0M0DM^P'96"```?D"OY_9`"0``!B9X":?]!AJWM`D``"] +MQ#[15@&\W="0\`'_VI2R#_0;.=L`)```&+_@&+[A_ZW5E,D"$/\!-;_@W]`D +M``"\GY"@G?#D_Y3)!;P)H*:N]`TD-;KA/MU6`;,$(+R0S`&0[@2SP`(.O^J] +M]`T!/H)6`;VD^P'X``````````````````````````````````````````#X +M`/D"T``D``"8#RV]E)B9$MI`)0``M0]0F`\NM0]1E9\8MI40Q)X/QYEDE)P# +MO)F0O)R0/.G@V0````'$_0_PY/_'_V3]Z064^P.)`,``O/_PO/OP/-_0\-3_ +MMM0(_>T%M0E3M0Y2?;3<0"$``'X`.P`SH``*O:0^D5W7\4```^-%@!/-F8$/\!,Y0`$,3Y_R;^]`CQ +M"@'X`+VD^``8J348KS3=!&@1`?D"\)3_$O\!E)P$Q/[_B4("$+S-`+SIX+\+ +ME.T$O]^)OOWOO.G@B0```?^YE/0+54D?_O_YE/&58`.@V8D``/__N93=#&@1 +M`:`)O,W`F*\,O\G=)"0``;;D!+;T'+SMX-W___\/_9T$_9\%H,F_[YBI#/W] +M!+:4'/WY!:#OO92UJ0O[`?0P]/F"&*DT,L&,00(0&*\U\)3_DI@!O)R0MI0$ +MOY6PD0FRH[*WQUW1L-$*Q/#_,Q0$&I0)!]X$8!$!O)Z0D)\$OY*_]CX^60&4 +M#00S%`,0WP1H$0&\W]`^-UD!V01P$0&\V="0V02_TK^6Q%P!L,$+,Q0$$,=N +M#,T#Z'60'9"'`1`;S9T+_9M-`+,/8`\,P+\,8!Q)\/"0&[GP3QE(V"\.P+ +M\.8!IM[P3`OP1@&S0``(L^`!8=G__P#.CP```?\IE/^?]3,4!!"4"0?=!&`1 +M`3[B60$S%`,3E`D$W01H$0&\G9`^$EH!$AD!E`T$,)8!]`P1V01P$0&\V="@ +MWSX46@'9!&@1`;S9T*#?N-D`"`"@GXD```'_*93T&RZS1``YB0``0/\IE/0; +M))@Y!/&4!$#T&QJSR0#[!XD```C_*93T&PL^,6(!LT0`#I@_!,3Y!/4+#@.S +MY`$:F#D$\)0$]`L%^`@)`S4Y!0D#/C-B`;(Z?O?#+/D``PS +M%`1TL_0`<)+I`;"6`O0-9K/@#V,S%`0BL^`(6[/@!UVSY``,L_``53Z!6P&S +MY`8*LND^P%L!L^`%3S,0`PHP%@+T#`>SX`9!Y,D``O0+.PD'L^`*-@D.L^`+ +M,#,4!`RSY`0,/KA;`;/@!QCX"`D-/L!;`0D(/L!;`0D%/L!;`0D!/L!;`0D" +MM.`+H#FSX`$(LT0!"XD```+]607'*1:VE!:/[/^__U_T_?D%21_"_?D$Q&X/ +MMN0%__Y5M/`)V?__`,[_*92@]8\``$+]GP6/``#__Y_T,Q0$#.7R?PP^95P! +MF#D$Q?*`\)1`]`LH/;2RBGX"(P"R"L0;_SW$?GTB`)@Y!(\```C]+P4/O_V? +M!+4Y!)@_`CV4-3D/L/8!]`T-L_`#"K**?D(A`#T4F#0"LT0!.MPP:0``VW!I +M``!_SG^ZW=AH``!_WY")`;Q)E/"3`'F9`/^?]/^>Y/V:!&#?8,Y@N;VD?DIN +M`#,4!!.4"0?T$WLAH``#=%!0``+_I?]_QE0!` +M\?4`"*#I8-\^*V(!L\D`70''*1,SF0!5`;(*Q!O_?K$B`'X"6`&SI``>Q!O_ +ML@H]Q'Y](@"R"L0;_PP!?GTB`#XQ8@&4B03<)"0``=TL)``!O)R@O)V0OZ^_ +MF90-!,2<`S,4`PW>#&@1`3[(70'>#'`1`;S>T+_>L\0`"_#T\#[B70&SQ`$7 +MQY]JMO0$20___^F4_Y_E/O%=`?@(E`T$,Q0#$-\,:!$!O-_0/@Q>`=D,F#D$WA04``!_[_&5`!"U.03P]2!@[SXK8@&R.@L!?LLC`+!&`?0, +M"[(Z"P%^RR,`E$D%3Q_^_U_T_?D%B?__O_WY!,-0-W]OYR\#0"4"0>\GY"_GY"9 +M!+^9/JA@`90-!#,4`RJ)@!81W`1H$0&\"0"\W-"4"02,@.GNO`P`OYR_V9#? +M!+_Y/JA@`=D$Z\#0#$G0\S +M$`0*O?0^N&`!QY\,L]0`##,4!'RS]`!XDMD!L)8"]`UNL]`/:S,4!!^ST`AC +ML]D'?P&SU``-L_D`=@$^!&$!L]D&80&SV05N`3,0`PHP%@+T#`BSV09?`>3) +M``+T&PF]]#Y@8@$/![/9"DT!#PZSV0M&`3,4!`RSU`0-/E)B`;/9!RD$ +MM)`)H)XS%`03E`D'W`1@$0&\G)`^M&$!,Q0#$Y0)!-T$:!$!O)V0/K1A`90- +M!!(9`3"6`?0,$=D$CXW8@$)!Z!YLIK[A0R/`!<1O`_@ +M,+8!]0Q._#Z+7@&RWSY@8@$/`3Y@8@$/!3Y@8@$/`@G]_>D$/CIA`?0P_/F" +M&*DT&*\UCD$"$+*B\)3_DI +M"&`1`=\$8!$!O)XPO)]@OVN_.I6^$<3I`?4;30$^!68!E`X$,\0#$-D$:!$! +MO.G@/M=B`=\$"&`1`;R>D+^9/A-C +M`90.!#.4`Q#?"&@1`;SOX#X18P'9"'`1`;SIX+_I\)0/#P&[^02)```!\?2- +M@O\YE+#V`/#\"_#V`;.9`(0#L_T!?P/9)````;^9F"T"H"^0F0&U*0FSU`$< +MWC!I``!_[Y!Y`;S9E++:_?D%8.]^2FX`3@_^B0$``O])E?V>!,0?#[;T!?WY +M!4G_P\<>!&@1`;R>D#[X8P&2Z0&4#@2P +ME@'T#!'9!'`1`;SIX*#O/OIC`=D$:!$!O.G@H.^XZ0`(`*"?Q]G1/O1E`8_` +M(@*\#P"V!`>_#+]IOSG'G0S$GP_T&P>SU`!YDOD!L)8"]`UOL_`/;+/P"&BS +M^0=K`K/T``VSV0!B`CYO9`&S\`99L_0%*MG__P#.CP```_^YE/V?!:!IB0`` +M`O])E:!9M)`)LYT`-`(^B60!Y,D``O0+)[/P"B2S\`L@L_D$'`+X"#Z:9@&R +M*G[O,0`^FF8!Q4\"/I]D`0G]_TGT"?[_^93'KPS]GP5/_\._7/V?!,>O<+;T +M"OV?!8____W]GP1/'_[PY`&VY!']G@7]GP2/__^_Q*T/Q\P)MM0%_9T%_9\$ +MQ[\6MO06_Y\5L\``&MXD)``!E'D$O)Z0OY^.___^_?X$H)_?*"0``91\!+S/ +MT+_?B0``_][__P#._[[D_?D$H-^_#;]IOS^)``!#_^D%Q_X,\/0/]!L'L^0` +M2I+Y`;"6`O0-0+/P#SVS\`@YL_D'G0"S]``-L^D`E``^;&4!L_D&BP"S^06& +M`.39``+T"WVS\`IZL_`+=K/P!'+X"#[M90'9)"0``;S)T+_9#PB@+]_O___^ +M_1\$,Y``!_`%`K_9QYGH]`L&\`4$V0!<```_F3.0`#G9'!0``+^9\)0!]!LK +M"@Z]M+W$?KA+`+.D`1[>R&@``-T4%```O^E_W_&5`$#Q]0`(H.E@WZ!1H&#' +M&=&SF0"_`+3@";/M`+<`/JUF`8D```'_N93U"Z<`C___[XD``/__N93QE7\, +M_9\$H&F5N1'PE&7$K0_'OQ24W`6Y_P#]^01)'_ZV]!']]`7]^03__.6SU`87 +MQ.D!]`L*B0```OWI!4G\P_WI!*!>L]`&$+/0"A*SU`4W/GMF`:`M/GMF`0D' +MH"G$Z0'T"PJ)```"_>D%M/`)21S"_^F4_YSEH%ZS\``*OXD^MV8!Q^G1]`L0 +MM)`)LY0`"K(J?N\Q``D'H(FRFON%!/0P[/F"&*DT&*TUCD("$+"Q"1*9`3+1 +M,I@PT3,PD3+P%/_PA/^4$@2\CH#9"&@1`92/!+PI4+_]OUZP\0JRH[#1"[#A +M#8^^_>\RQ+R/@#/$!"V)P"("C4#=_;P9$)09!]X$8!$!O!T0OYV4&0>\GI"0 +MGP2_EK_W/I!G`3/$`R_9!&@1`8V`Z>Z\*2"/@!81WOR7[OZ\'Q"4&02\'1"_ +MG;\FO"X@OU<^D&D+^?D)D$OYD^ +M/6@!,T0#+]D$:!$!CX`6$;PI(+P?$(V`Z>Z4&03>_)?N_KP=$+^=OR^\+B"_ +M63X]:`'9!'`1`8\`%Q&\*2"\'Q"-`.GNE!D$WOB/[OZ\'1"_G;\OD"($ORF\ +M+B#$GP\S0`0*O>0^36@!QYX,L_0`$``(,TT$M@"S[0`T!Y+Y`;"6`O4-A@"S +M^0^"`#-$!"6S^0@S\`HD``ZS\`L>,T0$#+/T!`P^X6T!L_`'*O@(``T^ZV@!``@S1`0> +MLPD(2P&S"09&`;,)`D$!LPD`/`$^X6T!``$S30`K`9@_!#4T#\3Y!/4;)0'$ +M^0+T&QK%^0*U.039)````;^9D)D!M3D'/E1O`9@Z!WZZ;@"PI@+U#4(#F#D$ +M#_W]GP2U.02S!`A$M)`-\)0/LY0&.I@_`L=Y<#4Y#S*4L_0!!O@(V2(3```_ +MF=\$:!$!O"_@CP``_S4Y-[_I_9\$H.F_6:!9/CQJ`8F`%A'>!&@1`;P9$+PN +MT)0>!+_LO]F_68^`Z>Z\'Q#$GP^P]@/T#3FS\`\VDOD%``*PE@'T#7/DR0`" +M]!L)O00^/&H!``>S\`IA``ZS\`M;``&S\`=5^`@`#3X\:@&8/P()`S4Y#[/P +M`0[9(1,``#^9-3DWO^F_UK]7!`/9!'`1`;PIX+_OD)D$O"G0B0``__WY!*#O +MO]D`"*#9/CQJ`?@(/CQJ`00$M.`*H#"_[3-$!$>5;!/$R0'U"P\%WF@3``"\ +MX9BSD``FV7@3```\D?B]E+SI&3/T``N)```"_=D%/?39>!,``#R?&8D```C] +MV04^7&\!QVD5MI05_]GULP0("_#U`CZC:@$)_?WY!!@^#\=I$K:4$O_YU3/D +M!"/'>0P/_O_?]/WY!8G___W]^03':1&VE!'_^54^Q&L!,^D`C0"8/`+%WP&) +M___]__E4L\T!X`"8.@3DJ0`$]0O4`-_8:```WG!I``!_^W_MD(D!O,F4_YNU +M\),`>9D`_9T$8.E)__O_J91@^[4Y!/"S``H-W/&(`0!^N$L`W%!0``'_O\94`(*#9\?4`"&#O/L1K`;_93__?_9\$H-D^Q&L!WPAP$0&\ +M+R"_*=[XC^[^#P&\+B#PE`^\^93QE(V"]0L`!-DD```!OYFR_I"9`;4Y"9@\ +M`@G^CP```O_9E/V?!?^>5;/$`2+9,&D``'^>D(\!O,_T\/,`>?\`_?X$O:1@ +MGWY*;@"8/P0)[_]9U,3Y!/0+'9()`;"6`?0-!?@("?O_^92U.02)```B_=D% +MQ'\/MO0%&#X/21_^_]F4_9\%3__#_9\$M/`*MN0*\>0`//V>!:#Y/90U.0X) +M!S4Y!;30"0D'H-D^ZFT!L^D`N0&5;Q7$^0$SD`!:B0``"/]IE/0;3S-$!$S? +M"&`1`8D``&"4'@>\[^"/```CH.G9__\`SO]IE/V?!9+N!*#IB<`B`KP9$$D? +M_I0?!__9E/"5L*#Y"08U.06TT`F_VCY9;P&5:Q/_OY7PE`'T&RTS1`0BV5!I +M```_F?"4_[N1!_"4`?4;-`''R03T&P\^X6T!Q'D/LYT%(P'951,``#^>CP`` +M($D?_O_/]?WY!/#D_\1Y#Y",`;:4!?V?!4_NP_^?U*;.]!X:V5,3```_F?"4 +M_[R>D*;)]!\(/90U.0\8.0XSD``0B0```OW9!3V4-3D.Q+D!]`M$WF@3``"\ +MX?B)```(_=D%L_``,MEX$P``/)'XO92\Z1DS\``/B0```OW9!3Y8;0'9__\! +M__W9!#WTV7@3```\GQFTX`J)```@_WGUH.TS1`05E!D'W0A@$0&\G9"@GSZB +M;0$S1`,*H%\^HFT!W0AP$0$220&\+>`PE@'T#06@7Z#OV543```_F<2?_Z;/ +M]!X?V5,3```_F?"4_[R?D*;)]!\--*`R\*3_?D(A``D#-3D%M.`)"0*@.0D# +MH.D^ZFT!M/`)O_H^66\!M-`)O]F2F06PE@'U#5\!M.`*3;T`O^4S1`0ZY%D` +M`O0+&=\D)``!E(D$O)^0OY^.___^_?X$H)_=*"0``92)!+R=D+^?C@``_TU_ +M#/W^!*"?&#D/CP``+XX``/__;_7]_@3_WP4SE``;F#D"L)8!]`T1LY`##C2@ +M,O"D_WY"(0"TX`O'Z='T&P_'6='T"PFR.G[O,0`S1`05E!D'WP1@$0&\GY"@ +MD#[1;@$S1`,2V01H$0&\*2"@(#[);@'>!'`1`1))`;PN\#"6`?0,":#P/M%N +M`=D$:!$!O"D@H""@\-W\E^[^O"T@V543```_F9".`<2?_Z;O]!YTV5,3```_ +MF?"4_[R?D*;I]!]BW@1I$0&\+O"_^=T$<1$!O"W`#?O]G02@^;_)WRPD``&4 +MC@2\[^#]G02@R;_IOSM/`_S]GP2@Z;.T""B8.03PE$#T"QXTH#(+`?"D_WX" +M(P`TH#/$2_\,`?"D_WY](@"TD`F_FON%%,3/`93^%;;T$XG___?_V93]GP6/ +M___?_9\$_Y[5/HIJ`;4Y";WD/I!K`0`"/@EI`0`(/CIJ`?0PK/F"&*XTO?3^ +M20&0F7"@GY*9#*"?DID$$NX!H)\PX4X8J36RH#*Q,)%/,[`$51BO#S/T!!;P +ME/_<"&`1`;:4![R_PY/^\Z>"4[`2_R?#T_[#!"KSMX/Y)`9"9=*"?L_T`;07X"#ZO=0$8#P7$ +M_O^PX1*@7C,4!!RTP`NTT!6TX`R_R:`YO]FPD1B_Z3Z><`$S%`,9OWFTP!:T +MT`V@.;_)L)$8O]D^GG`!OVFTX!>TP`Z@.;_IL)$8O\FTT`JPD1R_V:!),_`' +M=##V!_0,(3/P`U-0X% +M/GQU`;(*LELR''YI8@$_7S4/!3Y\=0&R"K);,AQ^TU@!/UDU"04^?'4!,Q0$ +M!O@(OSG'F1`SD``HM,`4L\0!(0D(W79I```U"04_V0\(H%\2F0$@V?4?(@0^ +M>G4!F`H(?KIN`+&F\/4$M0\$"0@2[@'< +M=FD``*!9(,X^+W(!,Q0$!O@(OSG'F1`SD`!?M-`4L]0!6+\YWO__`,Z/```# +MW104``#]G@2@.;\YW'9I``#]GP6@.;\YH'F_.:!IV20```&_G@D.-0D%/\]_ +MV9#N`;4."1+_`?"5("#/8-DP]@#U'X(#/GIU`9@*"'ZZ;@"QIG`7]0UO`Y@/ +M!`D%W79I```U"04_WO#U!+4/!`D%$NX!H%D@WC#F`/4?2@,^>G4!F`H)LZ0` +M!O@(F`D"LY0!$)@)!/&4``3T&P7X"'ZZ;@"QIF0`]`T1-*!.\*3_?L;3`%K30#Z`YO\FPD1B_V3[(<@&_:;3@%Z`YO^FT\!"PD1B_ +M^<23X3_B:!YOXF@:0D+L\`!%)+)`K"6`?0- +M"+/-!.4`"0FTT!&T\`J@";_9O_Z_#0_X_9\$H([_R26SU`L5OXE/'_[]GP3P +ME4"@B3[[#PE/^PX1&4 +MGP>]Y-T(8!$!O/W0C,`B`K#A$KR!]T$8!$!O/W0CX`6$8Q`W?VP +MX0R\G)"4G@2\GY"0GX"V]`2VE`3<#'`1`;#Q#KSLP-\(:!$!O._PL-$+L,$0 +MW01H$0&P\1:\[7"PD0W<"'`1`=D$3^ +M1`$2'P'^2`&PP1>PT0\PX4V05720,V201&@P\2>0B&R_6;3`$J;)]1O;^3,9 +M`+$!,Q0$)+30"_Y)`9"99/Y.`;_?D.Y@H)^T\!6_^:#IO^D^R78!_DX!_D\! +MD.YDD/]@,Q0#$;]YM,`6H.F_R3[%=@&_:;30%Z#IO]F@^;_YQY,5_DX!D.YD +MO^F/__^__9\$H.F_Z=\``(P`_9\$]!L(,SD`/0&TX`K^30&0W6B_Z?Y.`9#N +M9*#9O]0S%`04O^^_Z=D``(``__DD/H%W`;_IO^^_[XX```3_GB3]_@3T"UF_ +MV0_]_9\$H-G^20&_WI"98+^93Q_^_>\$\)0/MI0%_9X%H-DS%`$RM/`6O_GP +ME`^SE`4FM,`7O\GPE`_T&QJ8"0*PE@'T#1&SD`,.-*!.\*3_?D(A`!@)!<2? +M_Y+Y!;"6`?0-.+/P"!;^20&0F62_F8\```C]GP3]*07^20&0F62_F3,P`!?^ +M20&/```@D)E@M-`5H)^_F:#9_D\!D/]HO_G_*96@^;,@`%6_^;3@"J#I,Q0$ +M%?Y)`;3P"Y"99+^9H/D^&W@!,Q0#$OY)`9"99+^9H'D^&W@!_DX!$AD!D.YD +M,)8!]`T'O^F@>;_IH&G'2='T&PFR"G[O,0#[A52]]/0PQ/F"_DD!D)E4H)^2 +MF02@GY*9!*"?DID$H)_?8`(0`;_YL)$-\)0!L)$)]`L0M,`-"?[]R02PP0V@ +M_-X4%```?^_95A,``+W4_D,!\?3?__Y%`3^8L-$,8.\]9)`S4)!55#Z%A`'$ +M%/_?5!,``)1)`S_^E$\&O/DBV4!<``"\*2`8*348)S;$D/\FCO0(*]E2$P`` +M/YG$[__$CO_PE/^\GY"FZ?0?$]DD$!`!OYD&!+"1%CX2>@'<51,``#_/)H_U +M""4!V5,3```_F?#T_\2.__"4_[R?D*;I]1\,`1@N!1@F#Q+I!3"6`?0,!3UD +M,^0-(I@J"[.I`&`+?KIN`+&FR`#U#5,+LBI^1%@!/H*$`3-D!`KX"#Y^>0$S +M9`,WE`\$W@1P$0&\_M"_V=P(9Z+"1#;:4"?"50+"1#MD`*``!&"HWOYWPI/^0W0%VU`1^3@(`LZ0`%-\4 +M%```?_GPE2!@^3['>@$8*0WPE/TU*0T8*0WPE`'T"U2TD`W^2P$R?)"[.+:4 +M"?&4___PE2"PD0Z]E+"1$=D`*``!&"HWOYWPI/^0W0%VU`1^3@(`LZ0`%-\4 +M%```?_GPE2!@^3XA>P$8*0WPE/XU*0VT\!8)`;N0!/V?!/0;(-EV:0``/YDS +ME``6&"D%,Y`.#Y@I!/&4`$#U"SH)WE03```_[R:/]`@GV5(3```_F?#T_\2. +M__"4_[R?D*;I]!\/V7)I```_F3.=``L),V0$18_`(@*\#P"4"0>_F8Q`W?W= +M!&`1`;P,`*!9E`X'O.W@O^F0[@3?^)_N_J`YO^F\[^"PD1._.<>9'C.0`'<^ +M%'P!E`X$,V0#(XF`%A'Z\[."0[P2@6;_IO`T`H#F_^;"1$SZ=?`&_.;"6 +M`/0?%[20$_"4#[.0!`ZTD!/PE`^SE`46V%!0``%C)"'_O?\WPE0'P]4!UR0A@[W/4``Q0"0%UP`%@R0D"H"D)`S4I +M!0X!L.$,/H*$`=\48!$!O._@O^_$&?_<*"0``;:4!/'T__^\G)"P\0V@G\09 +M_XU"`A"\G9"VE`2PD0J_F;"1%[3@%[#A"S-D!!R_7Y0)!]P$8!$!,F&\G)#' +M_P2_F3X\A0&_6=T$_/Y0)!-T$:!$!O)V0H)\^4WX!$AD!E`X$,)8!]`P3OSG?!'`1 +M`;SOX*#I/E-^`;\YW`1H$0&\[."X[P`(`*#IOSF@^9@I!/&4`!#U"S0!LBH+ +M`7[+(P`^CG\!OS_9````SI0.!]T$8!$!_?D$H#^_.;SMX)#O!(S`(@+PE1"@ +M.;\YO`P`E`T'H.F)```@H/F_64___?V?!*!9OUE/'_[]GP3PE8"@6;]9\)40 +MH%F_6:#9/BZ``90)!]T(8!$!O)V0OYFPD1,^2(`!WE43```_[R:/]0B-!ME3 +M$P``/YGP]/_$CO_PE/^\GY"FZ?4?=`;?"&@1`=D(> +M%,?4T3/D``N_*;.9`+$!M)`7M)`7CP``$/V?!;"1%S/@``VTD!?PE0BPD1>T +MD!?PE`'T"Q"TD!>/```"_9\%L)$7M)`7W^S]_W^8+03]GP2PD1>TX!>TD!-/ +M'_[QU``0_>\$\)0/MI0%_9X%L)$7L]``#+(J"P%^RR,`O92@*;4I!`D!-2D% +M,Q0$&X[`(@*/0-W]O`X`E`D'O`\`OYD^(($!,Q0#&XF`%A&,@.GNO`D`E`D$ +MO`P`OYD^(($!C0`7$;P-`)0)!+^9C@#I[KP.`*!9V503```_GR:/]0B?`-E2 +M$P``/YGP]/_$CO_PE/^\GY"FZ?4?A@`S%`03E`D'W`A@$0&\G)`^:H$!,Q0# +M%Y0)!-T(:!$!O)V0CP``(#ZC@0$2&0&4#@0PE@'T#!7?"'`1`8D``""\[^"@ +MZ3ZE@0'9"&@1`8\``""\Z>"@[[CI``@`H)^_64___8S`(@*\#`#]GP2@6;]9 +M#^^4#@?]GP2@6;]9H.D^_X$!E`\$W01H$0&\_>"_Z8W__^_TT`J@V3Z7@@$S%`05E`D' +MW@1@$0&_/[R>D#XQ@@$S%`,7OS^4"03"@Z3YH@@&_.=\$:!$!O._@N.\`"`"@Z;\YH/FTD!>/ +M```0M,`*_9\%L)$7M)`7#_?]GP2PD1>TD!=/'_[]GP3PE8"PD1>TD!>@R;-- +M`.L!M)`7QYG1]0O@`;(J?N\Q`#Z"A`'X"#Z"A`&_*;.4`">TD!./``!`_9\$ +M]!L9OSF/```"_9\$]!L-F"D$\90`0/0+$K]9\90``O4;^@`SZ0WV`#-D!!64 +M"0?=!&`1`;R=D+^9/B"#`90.!#-D`Q#?!&@1`;SOX#X>@P'9!'`1`;SIX+_I +MH#F_.8___^_]GP2@.3-D!!64"0?_/Y0)!-T$ +M:!$!O)V0H)\^BH,!$FD!E`X$,)8!]`P3OSG?!'`1`;SOX*#I/HJ#`;\YW`1H +M$0&\[."X[P`(`*#IOSF@^8D``""PD1.T\!.4"0?="&`1`;R=D*"?F"D$\90` +M$/0+"[(J"P%^RR,`&"D%O?2U+P02F0LPE@'U#,$`WW9I```_^1*9`2#Y]!\% +M^`@)!S4I!3Z"A`$S;026`)0,!]X(8!$!O,[`O\F/P"("O`\`E`H'L)$3OZF/ +M``!`H%FTD!/]GP3T"VG09!,``#\),Y``%-DP`!`!OY\]Y"`.\/4$H)^TD!./ +M```"H,F_6?V?!/0+/=DH:0``OYFSGN`N&-EL:0``OYFSE``T?CXG`#Z"A`&T +MD!._68____W]GP2@6;]9#^_]GP2@6;]9H*FR*C)K?I)O`0D!L)$,$(@!W%<3 +M```_R1*!`289]0@"]'Z%'P#95A,``#^>V543```_G[W$V5<3```2[@'P]/\_ +MD)+Z`;VT/N*$`1CY!1*9"S"6`?0,#:;:]!\%^`B0S`$8^0P0[@$SE`$'D+L! +MQ.W_E-D&E-\#O)_RV4!<``"\^?`FX/0(Q]EV:0``/YG$S__PD@>F^?0+!?@( +MV11I```_F<2___"2!Z;Y]`L%^`BTP`FSP``0WV`"$`&_^?"5`:#YM*`,^X4\ +ML)$2M)`2QYD4,YD`J_<^['P!E`D$W@AP$0&\GI"_F;"1$]E4$P``/Y\FC_4( +M@0``'2:&X``+^1 +MO90^>X8!LP`$#+,$!E`^0H8!F"D#LAJSD``&^96R"0`&/GN&`;WDV>@0``&@ +MGMWD$``!D)D$H)Z_W]D```"`#`&RROWY!*#?V?`0``&@GMEH;@``H)P^@H8! +M^`BR"::0]!NFO:3[(?D2T>@0``&_'I7@&+`&$_0,))`/`]EH;@``O)^8LY`` +M%MK___\`_^JD^96S!`,9/MR&`?@(#P'9:&X``+VDH)\^*X]]-GH$``!H)^0F03>Y!```:":O^G?````(/V?!:#I/B"' +M`=WD$``!O]G?````@+WD_9\$H-F@'MGL$``!H)Z0F02@G@\!V6AN``"R^J"? +M^Q'9:&X``)B9`K.0``A^G$H`V<1N``"_FK.@`$?9:&X``+^9LY`$!O@(V?`0 +M``&_F3.4`2W99&X``#^9,Y``$;WTV<1N``"@GSZ+AP%^NFX`B4!+3*:I]`TW +M/J>'`?@(WF1N```_Z3.0`"?9\!```;^?/90@Z?#T__0;!_@(^`"S]`$*?@*& +M`?@`?H2&`?@`^`B)@"`%IJGT#07X"-DL:0``H)K:````@/@`^`B)@"`%IJGT +M#07X"-DL:0``H)K:````@/@`B<#4`::I]`L%^`C9*&D``+^9LY[@+C:]Y-\` +M8!$!W%(3``"-[__]/B^(`;_YD.X!_9T$H/F8^0*U^0*0_X`_R?"4_Z;I]`CF +MV2AI``"@FD^8.MD\`!`!V@```("@G_@`W4A<```.`=L```!`#.^\KI7PE`'T +M"R._V;.4`1X8WRV)@!81\/3_O/GPMO0$O_G]FP7]G`2@^9#N`9#=.+/D"M&] +MI/@`O93?2&D``*#YMJ48LZZ!`$N/P-0!V2AI``"@GT^8.MD\`!`!O>2@G]Q2 +M$P``WP!@$0&-[__]/N.(`;_YD.X!_9T$H/F8^0*U^0*0_X`_R?"4_Z;I]`CF +MO:3X`+VD^`#Y4I6I&+.?@`"S`.>JP0+T&P7X"-EP:0``?Y\,`=EX:0``W45< +M``!_F^3P__\%#@0'TP```$`"[[+!/H^)`<2I`?0+4+_OY+G__[N>&D` +M`&#K\/4@8)\^KXD!^`B]I/M1^3*5J1BSGH``>]E4$P``/Y[94A,``#^?V?__ +M_P#_J239W&@``/#T_\3@_\3J_[SP$+^>O?39'&D```,!OYL^'(H!O/#0D*H! +MO+V5D/\!\)0!]`L8O"V5O#W$\)0!]`L,NP%_;D$IJ'T"-?9W&@``*"> +MV1QI``"@FSXUB@'X"+VD^S'Y,I6I&+.>@`![V503```_GME2$P``/Y_9____ +M`/^I)-G<:```\/3_Q.#_Q.K_O/`0OYZ]]-D8:0```P&_FSZBB@&\\-"0J@&\ +MO960_P'PE`'T"QB\/92YG`"\+97PE`'T"PG][`3]O`2FH?0(U]G<:```H)[9 +M&&D``*";/KN*`?@(O:3[,;.JX"X'^`A^P!X`LZ0%"]H```"!^`!/X"[9*&D` +M`*"?V@```(!/3!W9/``0`:"?^`!^A1\`O:3X`-EL:0``O?2@G]G___\`_ZGT +MV2AI``"@G[:E&+.N@`!*B<#4`:;Y]!L_O=3>"&`1`=I2$P``B^___3Y&BP&_ +M[[_)D-T!_9L$H,F@[Y#N@#^IDNP(\)3_IMGT".5/F#K9/``0`:"?O:3X`)6I +M&+.:@``'^`C9____`/VI!(G`U`&FJ?0+!?@(W104``!_W]E4:0``O>2@GO'U +M``C9*&D``&#?H)H*`?@`^3*]E!B9=#.0`&C?51,``#_YLO/24Q,``/"4_Y*: +M`92I`[N:`I20`]E(7```O`D`/N*+`;\)D``XLY0!"'Y"(0"R&C\I/S^0H0'P +ME/_P]/^\GY"F&?0(W]DP:0``??1@G]G8:```8)_9<&D``&"?V@```(#[,=ER +M:0``/YDSD``&^`A^C6L`#P'9_O8E!`A"/0-W]O*^@O*S@O.G@B0```92O +M!_W9!=D$8!$!O/G`D)D$O/GPO\F_^;;D!+_NH+V_R=\```#.V@```(#]GP3? +M7PS_`/V?!=_____Y_9\$WP````;][P3]Z06@SO@`O908F70SD``*O:1^2FX` +MV@```(#X`-ER:0``/YDSE``&^`C9P&T``#^>/?39%!0``'_O\94`$*#9\?4`"&#O/O*. +M`;_93__O_9\$H-D)!SX&CP'9%!0``'^?\/4@8)\)#C4)!3X^CP&R&GY"(0`8 +M"04SD`L0WW9I```_^1"9`2#YV79I```_F3"6`/09Z/0+#<2:_WX!JP#$J?_$FG^S)`,;CY`6$;P/`)0)!*": +MB7#I[KP)`#Y.D0&-$!<1C_#H[KP-`)0)!+P/`*":E!D#W4A<``"[D0*VE`.\ +MG9"_F;.9`%8"LR0$%=\$8!$!E`D'O)^0OY\^F)$!E`\$LR0#$-D$:!$!O/GP +M/I:1`=T$!+,D!!^4"0??!&`1`;R?D*">B<`B +M`KP)`)0/!S[=D0&S)`,FCX`6$90)!-T$:!$!O`\`O)V0E`\$H)Z_^4E0`J#Y +M/B^2`9(K`90/!+"V`?0,$=D$Z\#0#EG_`!LR0$$HG`(@*\"0"4"0<^?9,! +MLR0#$HV`%A&\#0"4"00^?9,!C0`7$9(I`;P-X+"6`?0-#XF`%A&\"0"4"02@ +MGY3I!*"?/O*3`;]?V20D``&4'@2\Z>!)'_[]^02)``!`_?D%H%^_Z0_XQ]W1 +M_9\$\)4!H.FSW0`M_3ZZD`&_64\?_OV?!/"50*!9OTD/^/V?!/"5`:!)/O*3 +M`8T`%Q&\#0"4#@2_Z8\`Z>Z\#P"PM@'U##3^/A>2`?M1^``````````````` +ME*D&^4*4KP.\GR*)0@(0LJ'<0%P``+P9$+PL()04!!@I-9@O!;]#C;[][\20 +M_[P=$,?_"?0+;<@+,4!".4"0>/P"("W01@$0&\G9"\#P"@ +MGH]`W?V4"0<^=IC8#I[I0)!+P- +M`#YYEP&2&0&4#P2PE@'T#!'9!'`1`;SY\*#^/FB7`=T$:!$!O/WPH/ZX^0`( +M`*">/FB7`8G`(@*\"0"4"0<^0Y@Z;_9#P*@#T\? +M_OV?!/"5L*#9/MN8`;/T``_$*O\+!+W$?A0@`/LA^``````````````````` +M``````````````````````````"4J0/Y,I2O!KSY`ME`7```LJ&\"0"R"G[W +M)`"SI``AWEAI``"_Z8\```3]GP6@Z1@)&/"5!#4)&#[![SI(+\IC[[][\>\!+P?$+/$``;X")@/!+V4M0D* +M2??O_?D$M0\$ORF@*;/$``K$N0$U"0[9!&`1`;SIX+_IC\`B`KS?T-\```#. +M_9\$\)4AMM0'H.F_V=\D)``!E!X$O._@3Q_^_9\$\)6PH-F]E+(*H.F]M'[+ +M(P`)!C4)!;\IOSD)!*`)^S'X```````````````````````````````````` +M````````E*D#^2*4KP:\^1+90%P``+*@O!D0&!(ULAI^]R0`LZ0`(=Y8:0`` +MO^F/```(_9\%H.D8&1CPE0@U&1@^O)H!Q"[_W0A@$0&4[`>\S9"_G[^?C<`B +M`KSMX+;D!Z"?O^E/'_[=!&`1`;S-P/V?!/&5,`&@Z;_/V20D``&4#02\V=#9 +M````SOWY!/#U(:#/O02R&J#0O;1^RR,`F!X$-1`-W104```)!349!7_?2??O +MM1`*_>D$\/4@M1X$8-_[(?@````````````````````````````````````` +M`````````````````````````````````````````````````)2I!OE2E*\# +MO)\BB4("$-Y`7```LJ&\+B"\&1"8+P64%008*36_5(Z^_>_'\PF\'A#$D/^S +M,`!JQTD)]!MCE`X'V01@$0&\Z>"_[XG`(@*\"0")___O_?D$H.^_Z=\```#. +ME`T'3!_^_9\$\95_#*#IO]D/[_],Y/'EH`+QE0`"_9\$H-F_V0\"H"_]G`3P +ME;"@V0D#-2D%H%X^\"0"_O=D$8!$! +ME`X'O.G@O^_9)"0``906&D` +M`+_ICP```OV?!:#I&`D8\)4"-0D8/IF=`<0>_]\$8!$!E.T'O-_0O]F/P"(" +MO._@WP```,[]GP3PE1"VY`>@V;_I3Q_^_9\$\)60H.F8"00/"#4/!?&4`!#T +M"PNR"@L!?LLC`)@)!+WTM0\*3_?O_9\$M0D$^Q'X```````````````````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````````````````````````````+^O^2*8 +MK@&RH)BB",3Y![.0`0FSG0.&`0GX__F4\)4!H`G$Z0CU&W0!Q_F*]`L9V4`W +M``"8FP&R"K:U$'Z>/P"SJ0%9`9@/"-D```H(__F4]`L1B0``$/_YE;4)"#Z9 +MGP&R"GZT>0"8"0C?0#<``)61',><:+7Q'[7\';,4`0\)!K7Y'@D"/I&>`0D' +MM?D>"0&U^2#'*1+T"RW'*1,*#O4;_`"S%`$-WW\4```^M9X!WW44```\_)@* +M#A"9`3SYR3Z;GP'9A!0``+R1^-F,%```O)'HE,L"Q`D/O/L@O.O@LY``!O@( +MOR_:0#<``)BI!YBM"+/T`$&@*:#M\)4(M0T/M0D.LQ0!&-EZ%```/)')V7\4 +M```\D +M`0#9G9\!`+N?`O0P^/F"]##\L)$*V?___P#>0#<` +M`/WY!/Y%`=D````1LN+_^66_X+T4!`'74!,``-AH7@``D%4L/A6D`;,)!X0" +ML`8']`PJLPD#)@&P!@/T#`^S``%.LP0"1#X/H0&S"04&`[`&!?4,R0(^KJ$! +MLPD+.`.P!@OT#!.S"0DJ`K`&"?4,^P$^<*(!LPD-=P*P!@WU"%("LPD.M0&R +M`3X5I`'9C!,``+^?V9`3``"_F:;Y]`L0L@&]E``"M2DX/A6D`=U`(0``F-D+ +MQ)X0]`L?F-\.O92R`;4I"+4O!L7Y!+B9`"`"M2D'/E^A`=\4%```?_FUW@NR +M`;U$\93O_V#Y/A6D`=F,$P``OY_9;"$``+4I!=F4$P``O)^8/WZ]%+4A!N2: +M_Q\U(1"U*0%U*@DSX``K?AI]`+.D``JR`3X3I`&U(0C%J02R`;B9`"`"M2H& +MM2D'``0^%:0!VE`W``!^IK(`LZ0`.K(!``,^%:0!WD`A``"8[PL)`;4I..3Y +M`(!SF0"``HG_?___^93:4#<``+7I"WZFL@"SJ0!H`K(!/E^A`9@A!K,9`&`" +MF!D(QYD-]1M5`K\?F!,!Q/D'LY0#)5@J"0GX__F4\)4!H!E^>`LZ``%;(: +MO;1^E@<`/O*A`;.=`20"Q#\(]`L+`00`"SX5I`'3"&$``#\YH%_'F0'T&RBT +ML`JP40#:`)X!``P1LFW>`@$``'Y>1`"_6;.4``L_.?"5`B`YOUFSE`,2LAH! +M!'X`G@&RH#X5I`$!!+.=!\L!^`@!!#X5I`&8+QV8+B#9)!0``+(!O)^8``VU +MG@@^%:0!F"D'`0C'F0+U&S(`"03.=`"P!F"L8?H,U`+.M`"`!L@$`##X5I`&8 +M+AD!#+_OY/D`!/4+&@%)__L!#/_YE*#I/@6D`9@J%[.I`.T`OZF8+QBVE1"F +MG_4;W@!^NC4`F"D9L@%.__L`!;^?_?X$H)\^%:0!VH`W```!!GX!00"SJ0#. +M`)@O'9@N']F>%````08\GYCPE/^[G@?PE`'U"T7_`08`#CX5I`'<0"$``)C- +M"\39$/0+(-X4%```?^^R`0GO``'_V93Q].__M3Y44$``+`1`#"1!+(L#4!^3<(`#@2SJ0#8`+\YM1((#@0`!;49!;])M1D& +M/MVF`1@9$#.9`*<`/92R#C49$``(/MVF`9@:"+WTF*D)M1D'F*D(F*X*M:\) +MM:\._9<$M:\/M:D(Q^D7]`L@F*D&MI48DID(L)8"]`T1OUE_;_"5`O#U`J!9 +M8&_'Z5CT"PD+`GZB"`"_.0X(QYD"]!M1#@@`!C[=I@&8&068&P:8'`@*\/^: +MI`D!WE%!``"P$0`PD00-0'Y-P@`.!K.@`"4`!S[=I@$8&1`SE``*L@X^W:8! +MF!D'L@Z@.3V4-1D0``.FX/4;5_ZU'@.]I#[NI@$*`?0P"/MU")BI!OD2LJ&5 +MD!CT"PK$"8`SD``&^`B8&0K'F5CT"PNR&KVT?J((`+,)$:``L`81]`PEL`8* +M]`P7L`8(]1BG`+,``3RS#0*"`#[6IP&S!!!Y/FFG`;,`%%*P!A3T#!"S"1*$ +M`+,$$V(^NZD$B?__S_#E!/WY!+4? +M#:`>"@(^V*D$B?__S_#E`OWY!+4?#3ZQIP$*`?L1OZGY +M`K*]]##\LL#'F8KT&QV8J0>8KPC>____!_V>!,?_E;;T&_WY!;6O!YBI")BN +M!M___P'P_9\$CP``#/V?!=____\`M:D(_>\$M:X&E9P8#/B&I`;,`%S2S#1C9 +M`SX(J@&S"1Z.`[`&'O0,$;,)&[(!LPT=P`,^5:P!LPD?H`*S#2"R`S[NJP&8 +M'0-8'`0^`*H!F!D!L@VU&06]E+49!#[\K`&8'06ST`!EV5\3``"8'`0_F<2: +M_]F9%```O,GP/HVI`3_YD,X!D/\!O$FT_[V4]`LKWI04``"8&0$\[/B]U+4< +M!#SMR?^YEO#T_[4=`[49`74?!`T6/KJL`;+LILKT",/9`"```+6`[/D`!N8&03? +M=%\``+SYF+.0`".R#0`?/L*L`9@9!-^<7P``O/F8LY``#+(-`"`^PJP!F!P' +MF!\(O92U%!RU'!6U'Q:U&0FSY``EF!D$WW`4``#N`O^?Q;4<"[/@`!4)\/^I +ME+B9`"``M9P,/DJK`9@;"@T,?M(&`)@?`U@>!-F48```OYN0_P%VY0&U'P-U +M'@2R;;`Q`-H`K@$`#"'>84D``'Y>1`"_.0T;LYT`/@'?D&```#_Y#1L`%_"4 +M_2#Y/L*L`;\YLYD"*0&SG0"U_@(^3ZP!^`BR#0`=/L*L`=HX(```O;1^`J4!LZ``8)@9`U@?!+(-`!Z0 +MF0%V]0&U&0-U'P0^PJP!V3@@``"8GP%)``'T$/K.N`;,)!C4" +ML`8&]0CR`;,)!UD"LPT(TP0^!;$!LPD2:P2P!A+T#!BS"0R3!+`&#/4(E@.S +M#1&S!#ZVL@&S`!Y)L`8>]`P,LPT4H`0^.[(!LP`?8+,-(),$/B.O`9@9"KWT +M-1\^L@VVE`3<0"$``+4?$KR[,!F!H+LZD`:`3> +M4!,``#_I,YT`7`28&PQ^@S4`LZT`4`2R#;(N`!\^>[,!F!P-O\_D^0`$]0LP +M!$G_^[(-__F4LBZ@R3Y+LP&8&@NSJ0!F!+^IF!\,MI40II_U&U<$?KHU`)@9 +M#4[_^PH!OY_]_@2@GSZ.LP&8&0>8'PB_GJ!NO_^@7[4>$+]?M1\1L^0`"[]9 +MLYD``03'Z0+T"R`8'R0)\/_IE+B4`"``M104,_T!R@.R+@T"/GFS`0D!LBXU +M&3T-`C[M1X1M1\0Q_D"]!L-LBX-`P`$/GNS`0GPLB[_^90-`[B9`"``M1D4 +M/GFS`1@9/9@<`C.4`!.8&16FG/0;"I@3`SX2L`&RP[]IOUL*\+`1`/^:I`D" +MLCPPD00-0-Y*00``?DW"`+.D``RR+@T$/GNS`;]LM1,4#00`!;4<$+]>M1X1 +MLBX^>[,!&!D\,Y0`#+(N#04^>[,!&!D]/?0U'SPSF0`+`Y@9%#4?/9@?$`SW +MF)D._9P$II_U"_,"LBX-!3Y5LP&8&1"8&Q&8'!0*\/^:I`D!L!$`,)$$#4#> +M2D$``'Y-P@"SJ0"0`K(-LBX`!SY[LP$8&3PSF0!^`I@?$CV4-1D\L_0`#+(N +M#0<^2[,!&!D^,Y0!#K(N#0<`(#Y[LP&8'A68'Q*8&1,-![4>%+4?$+49$;(N +M/E6S`1@9)+\?$ID!-1DDL_``.Y@:%)@;$)@<$;*-^?6SH`,0LZ`$$K.D`B(^ +ME+,!`"`^EK,!&!\D"0B]I+49#A#_`34?)#Z.LP&R+@T(``H^>[,!F!04F$D& +MMI48]`L,F$D&L)8`]!\/&!DD,YD```(^4;,!F$T.F$\/F!X0#/>@;:!?_]R4 +MII[T&Q^8&1&F^?0;%Y@9!Y@>"+WTL@V@GZ#OLBX^-;(!F!P'O\FFGO0;%I@> +M")@?$;_III_T&PF@S;]?H.^8&1*SF0"<`<>9`O0+,)@9%)B?#L?Y`O0+))@= +M%9C>#L?I`O4+?`''Z0/T"P;P]0BUWPZR+@T*/C6R`9@9%)@?!+(N#0J8G`X` +M"Z#\F)D/M?D!/GNS`=[P&1`!O^GPE`+T&PNR+@T+/GNS`;(N#0L`%#Y[LP&8 +M&0&8%!2SF0`:`9@;$)@<$9@=%;)*^96SH`(>LZD#!`&SI`%4F!X0Q^D"]1OU +M`)@7$3Y\L@&8&1#'F0+T&PNR+@T4/JJR`9A*"[)KLERVI1A^0S,`LZ0`!O@( +MF$D,OV^_5PT4MI4;MI0&O)_@H&X`$3Y[LP'X"#Y;LP&8'!0)`;`1`#"1!+(J +MLGL-0-Y*00``?DW"`+.@`&^R#;(N`!(^>[,!&!D\,Y``7I@9$#WT-1\\QYD" +M]`L9F$D,F$H+MI4;MJ48=J0&_:D%?O,R`+(-LBX^7[,!F!D2LY``$Y@?%9@< +M$[49$+4?%+4<$1@9)#.0`$.8&1*SE``@LBX-##Y+LP'X"+(NL@T^>[,!LBX- +M'@`"/GNS`;(-LBX``SY[LP&R+@T4``P^>[,!LBX-"CY[LP&R#;(N/N6P`;(N +M#04`"++BIM#U&Z_ZM1T.O:0^CK,!"@'T,`C[A0@``[(N#0@^>[,!^``````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``#>%!0``'_O]##LV=!M``#Y@O'T__OT,/@_DCVT8.\^O-0!,RDB$!XP)B+U +M#/X`,RD1L`TP)A'T#'@S*0A&!C`F"/0,.#,I!/\","8$]`P8,RD"5@(P)@+U +M#+P",RT!72`^8K8!,RD&8031T&T``#`F!O4,SP0^KK+D!,RDNCPHP)B[T#"DS*2P4"?Y*`?Y-`='0;0``D*H\D-TTT,1M```P)BSU +M#`P*/EN^`3,I,,L+,"8P]0A("S,I,;#S`F-_0,&#,I-=@.T=!M```P)C7U##P//LO#`3,I.2L1,"8Y]0CD#S,I +M.I`1,RT[FQX^N\P!,RE`"!HQ)D``]`P8,RD^I!?1T&T``#`F/O4,V1<^;\T! +M,RE"*!PQ)D(`]0A.&C,I0W\<,RU$7QX^4-0!WD`A``"8[P_$^0/T"Q0R*TD# +M_P("__F4M>D//KS4`=U@;@``W!04```_WW_.V=!M```@DO#U!/'E``0@WV#. +M/LG4`=E0(``!OYG^3@&0[CR@Z=E4(``!OY_^20&0F3B@G[_I\)0_]`L%^`C^ +M20&0F3R_FI*9!+^;O90``K"1`#`!!-S@;0``#1#>S,4``'Y-P@"SH``,,@L" +M`SZ\U`'?%!0``'_Y,@OQE0`$8/D^O-0!W]!M``!8^1QPE@#T'A;?%!0``'_Y +M"P/QE0`$8/D^O-0!\93_?PL#=?D<`@0^O-0!V=!M``"8G@28G07^3P'^20&0 +M_SR0F3B@_J"=O_GPE#_T"P7X"/Y)`9"9/+^:DID$OYN]E+"1``D"W/!M```P +MD00-$-[,Q0``?DW"`+.@``P+!`(%/KS4`=\4%```?_D+!/&5``1@^3Z\U`%8 +M&1QPE@#T'A;?%!0``'_Y"P7QE0`$8/D^O-0!F!X)F!T(\93_?W49'+4>!]Y` +M(0``F.\//92U'08U&3LU&3J]E#490+49#\3Y`?0+$<7Y!`L%M>D/`@8^O-0! +MQ/D"]!L+"P4"`3Z\U`'%^0@+!;7I#P(E/KS4`9@9!I@;![\,#_"@J0D(H-F_ +MV=[,Q0``D)D/_9\$H-F_JK_=O92PD0`)`C"1!'Y-P@"SH``,"R4")CZ\U`'? +M%!0``'_Y"R7QE0`$8/D^O-0!W]!M``!8_1S9Q&T``+^><-8`]!X6WQ04``!_ +M^3(K\94`!&#Y/KS4`>39_W]U^1R_[]D`)@`!"PBRZJ"?F.\!D)D$H)]^S]0! +M,BL")SZ\U`'S`LH`BD^O-0!?C=L``(I"R@^O-0! +MV7)I```_F3.4``A^C6L`T,1M``"_"MOD:0``#%!^-C0`"1#?T&T``/Y-`9C\ +M!I#=/*#9O]G^3@&0[C28^P>\G)"@V0E0H.F_Z;\,#_"0F0_]GP2@Z;_:O^V] +ME+"1``D#WLS%```PD01^3<(`LZ``#`L(`@D^O-0!WQ04``!_^0L(\94`!&#Y +M/KS4`=#0;0``6`\<S,4``+R?D*"I2?``H-F_V0_PD)D/_9\$H-F_JK_=O92PD0`)`C"1!'Y- +MP@"SH``,"RD"*CZ\U`'?%!0``'_Y"RGQE0`$8/D^O-0!WM!M``!8[QQP]@#T +M'A;?%!0``'_Y,BOQE0`$8/D^O-0!V<1M``"_FDOP`.3Y_W]UZ1Q^S]0!?H[7 +M`3(K`BL^O-0!V=!M``"8FB%^NFX`L:8/)_0,:-E5$P``/Y[94Q,``#^9/=3$ +M[__PE/^\G[`^,[P!O_F_SQ#N`?"4#_0+*\3Y#_0+)<39_]$(:!$!E)\$$-T! +MO/'PQ.G_N/P`"`"FF_0>TCYHO`'?%!0``'_Y"PKQE0`$8/D^O-0!O?39T&T` +M``L*M9\A`@L^O-0!V543```]M+*8/YK74Q,``-'$;0``/L:\`8E!`A"_'[S) +MP)3)!+^>O/3PC;_][[S-P*#^E,D$WA0D``&\GI"_G[\9O)]9OV^_&3R?.8V0 +M%A'$N?\_CKR9\+SY\+R=D#]]E/0#E)8$\.3_O/^0\-3_D/\!Q*S_D)4!O-[0 +M$+L!E/,#$*H!T,1M``"FS?0>C@E@W]!M``#^30&8_`:0W3R@V;_9_DX!D.XT +MF/L'O)R0H-E)\`"@Z;_IOPP/\)"9#_V?!*#IO]J_[;V4L)$`"0/>S,4``#"1 +M!'Y-P@"SH``,"PL"##Z\U`'?%!0``'_Y"POQE0`$8/D^O-0!WM!M``!8[QQP +M]@#T'A;?%!0``'_Y,BOQE0`$8/D^O-0!V<1M``"_FN3Y_W]+\`!UZ1Q^S]0! +MV543```_G-E3$P``/YD]%,3/_[T$\)3_O;2\GS"]I#XZO@'$$O_>"&@1`90O +M!+S^\+_YW?B7[OZ\_?#$G0^SU`<,#04)`3[UO0&]E-X(_#-[,Q0``O)^0H*D)'*#9O]D/\)"9#_V?!*#9OZJ_W;V4 +ML)$`"0(PD01^3<(`LZ``#`LK`BP^O-0!WQ04``!_^0LK\94`!&#Y/KS4`=DP +M8P``&)DA$ID",)8!]`P6WQ04``!_^0LL\94`!&#Y/KS4`=_0;0``6/D<<)8` +M]!X6WQ04``!_^0LL\94`!&#Y/KS4`?&4_W]U^1Q^^M8!V<1M``"_F@L<`BU^ +MS]0!"RP^O-0!?CS7`4E0`=_0;0``_DT!F/P&D-T\H-F_V?Y.`9#N-)C[![R< +MD*#9"1R@Z;_IW\1M``"__`_PD)D/_9\$H.F_VK_MO92PD0`)`][,Q0``,)$$ +M?DW"`+.@``P+#0(./KS4`=\4%```?_D+#?&5``1@^3Z\U`'>T&T``%CO''#V +M`/0>%M\4%```?_D+#O&5``1@^3Z\U`'9Q&T``+^:Y/G_?PL<=>D__)"9#P_P_9\$ +MH.F_VK_MO92PD0`)`M[,Q0``,)$$?DW"`+.@``P++P(P/KS4`=\4%```?_D+ +M+_&5``1@^3Z\U`'>T&T``%CO''#V`/0>%M\4%```?_D+,/&5``1@^3Z\U`'9 +M7Q,``#^;V<1M``"_FN3Y_W_PM/^VM`1UZ1Q^S]0!?M75`0(Q"S`^O-0!?H+5 +M`4GP`=S0;0``WE\3``"8R@;^30&0W3R@V3_IO]_^3@&0[C3PE/^\^O"VE`2@ +MWZ#IO^G?Q&T``)C+![_\D)D/#_#]GP2@Z;_:O^V]E+"1``D#WLS%```PD01^ +M3<(`LZ``##(K`A(^O-0!WQ04``!_^3(K\94`!&#Y/KS4`5@?''#V`/0>%M\4 +M%```?_D+$O&5``1@^3Z\U`'97Q,``#^;V<1M``"_FN3Y_W_PM/]U&1RVM`1^ +MS]0!`A,+$CZ\U`'?T&T``+T$F/T*_DH!D*H\H*"_J?Y.`9#N-)C["[R=D*"I +M28`#H.F_Z=_$;0``O_P/\)"9#_V?!*#IOZJ_[0D"L`$`,)$$WLS%``!^3<(` +MLZ``##(K`C(^O-0!WQ04``!_^3(K\94`!&#Y/KS4`=_0;0``6/D<<)8`]!X6 +MWQ04``!_^3(K\94`!&#Y/KS4`=#$;0``OPKQE/]_2X`#=?D%M\4%```?_D+-/&5``1@^3Z\U`'0Q&T``+\*\93_?TOD`G49''[/U`&_ +M"]JT3```3)``?C8T`+\+VJ!6``!,W`&0N\!^-C0`OPO:8$P```Q`N+N<`@!^ +M-C0`W5\3``"_"S_7Q,``#_IQ/[_)OGT".+9Q&T``-!=$P`` +MOYL_#-J["P``N+OA`@#PQ/]^-C0`/?3;NPL```S_W<$0```^O<0!/+Z8$/\! +M)IST"PH_V1"9`2#9/PG$_O\F^?0(YPLT`C4^O-0!27`&W]!M``#^30&8_`J0 +MW3R@V;_9_DX!D.XTF/L+O)R0H-E)(`*@Z;_IW\1M``"__`_PD)D/_9\$H.F_ +MVK_MO92PD0`)`M[,Q0``,)$$?DW"`+.@``P+-0(V/KS4`=\4%```?_D+-?&5 +M``1@^3Z\U`%8&1QPE@#T'A;?%!0``'_Y"S;QE0`$8/D^O-0!T,1M``"_"O&4 +M_W]+(`)U&1Q^S]0!OPO:0$H``$P@`@(W?C8T``LV/KS4`4F0"-_0;0``_DT! +MF/P*D-T\H-F_V?Y.`9#N-)C["[RS,4``#"1!'Y-P@"SH``,,BL".#Z\U`'?%!0``'_Y +M,BOQE0`$8/D^O-0!W]!M``!8^1QPE@#T'A;?%!0``'_Y"SCQE0`$8/D^O-0! +MT,1M``"_"O&4_W]+`@-U^1Q^S]0!WUP3``"_"S_\VHH+``#17Q,``/#$_[;$ +M`GXV-`"_"S\S,4` +M`#"1!'Y-P@"SH``,"SD".CZ\U`'?%!0``'_Y"SGQE0`$8/D^O-0!W]!M``!8 +M^1QPE@#T'A;?%!0``'_Y,BOQE0`$8/D^O-0!T,1M``"_"O&4_W]+U0)U^1Q^ +MS]0!OPO:R5,``$S5`GXV-``R*P([/KS4`=#$;0``OPI,@`/;=$T``'XV-`"] +MU+W$OPZ4WP*4V06[GP(\Z?B0W0&\Z>#P]`'T"PFU[`.U[`*SU"#@W]!M``"] +M!)C]"OY*`9"J/*"@OZG^3@&0[C28^PN\G9"@J4F``Z#IO^G?Q&T``+_\#_"0 +MF0_]GP2@Z;^JO^T)`[`!`#"1!-[,Q0``?DW"`+.@``P+$P(4/KS4`=\4%``` +M?_D+$_&5``1@^3Z\U`%8'QQP]@#T'A;?%!0``'_Y"Q3QE0`$8/D^O-0!V<1M +M``"_FN3Y_W]+@`-U&1Q^S]0!`A4+%#Z\U`'0Q&T``+\*V[1,``!,D`#17Q,` +M`'XV-`"_"MN@5@``3-P!D*K`?C8T`+\*VV!,```,0+BJG`(`?C8T`+\*/QS; +MM@L``+BJW`(`\,3_?C8T`+\*V5T3```_G-N["P``N*KA`@#PQ/]^-C0`O=2] +MQ+\.E-\"E-D%NY\"O.G@&.G`D-T!\)0!]`L)M>PSM>PRL]01X$F``]_0;0`` +M_DT!F/P*D-T\H-F_V?Y.`9#N-)C["[R0"H.F_Z=_$;0``O_P/\)"9 +M#_V?!*#IO]J_[;V4L)$`"0/>S,4``#"1!'Y-P@"SH``,"Q4"%CZ\U`'?%!0` +M`'_Y"Q7QE0`$8/D^O-0!6!\<%M\4%```?_D+&/&5``1@^3Z\ +MU`'9Q&T``+^:Y/G_?TL@`G49''[/U`$"&0L8/KS4`=#$;0``V5P3``"_"C^< +MVXH+``#PQ/^VQ`)^-C0`W5\3``"_"C_S,4``#"1!'Y-P@"SH``,"QL"'#Z\U`'?%!0``'_Y"QOQE0`$8/D^O-0! +M6!D<<)8`]!X6WQ04``!_^0L<\94`!&#Y/KS4`=#$;0``OPKQE/]_2]4"=1D< +M?L_4`;\*2XX``AU^_C0`OP\]E`L<-?F,O92U&2`^O-0!24`"W]!M``#^30&8 +M_`:0W3R@V;_9_DX!D.XTF/L'O)R0H-E)C@"@Z;_IW\1M``"__`_PD)D/_9\$ +MH.F_VK_MO92PD0`)`M[,Q0``,)$$?DW"`+.@``PR*P(\/KS4`=\4%```?_DR +M*_&5``1@^3Z\U`'0T&T``%@/''#V`/0>%M\4%```?_DR*_&5``1@^3Z\U`'9 +MQ&T``+^:Y/G_?TN.`'4)''[/U`$R*SV4`CTU"4$^O-0!T,1M``"_"1@?01B9 +MC";Y]`@+"ST"0#Z\U`$+,-H@;@``?OXT`+\.&!E!WZ!@``#<0"$``+4?&?"4 +M_YC/#[R9D+SIX'_NO=3Q]0"`V7PA```+/74>*34=4+7/#[4=%K49%0(^/KS4 +M`=Y`(0``F.\/Y/D`@'.0`".)_W____F4VB!N``"UZ0]^IK(`LZ``#`L^`C\^ +MO-0!WQ04``!_^0L^\94`!&#Y/KS4`9@=%K/4``;X")C9")C>`4__W_^?]+7? +M",?N`_0+%XG___W_^92RVK79"'Z1D``^8P#@``)00!KP.`!C?C)@)"Y@.#/Y+ +M`?#T_[S_\+:5&+S?T':4!K;E&_V>!6#9OS_^3`&0NS"0S"P8^8P0F0$U^8R8 +M"@NVI1A^0S,`LZ0`!O@(F`H,M)`,M+`+L%$`MJ4;,$$$MJ0&L@R\J:`-0+"A +M#-[,Q0``?DW"`+.@``H-'CXVSP'X")`1`9`B0+$610#U#6?_#1_9T&T``#+2 +MM9$@"QT^O-0!WM!M``!8Z1QPE@#T'A;?%!0``'_Y"Q[QE0`$8/D^O-0!F.\@ +M\93_?PL>=>D +MT&T``%CO''#V`/0>%M\4%```?_DR*_&5``1@^3Z\U`'9Q&T``+^:Y/G_?TN. +M`'7I''[/U`$R*P(A/KS4`4G0`M_0;0``_DT!F/P&D-T\H-F_V?Y.`9#N-)C[ +M![R%M\4%```?_D+0?&5``1@^3Z\U`'0Q&T``+\*\93_?PM(=?D +MF/$-V41>``"@D9C]#ME(7@``H)V8_@_93%X``*">F/$0V5!>``"@D1C]1-EP +M7P``()T8^47?<5\``!"9`2#Y?C8T``M!/KS4`=#$;0``OPK;]"$```PE?C8T +M`+\/V4`A``"8F1C;T&T``/Y,`9#,/+7Y"MFH:0``OP^_F?Y-`9#=--[,Q0`` +MM?D+V8AI``"_#[^9M?D,V41>``"_#[^9M?D-V4A>``"_#[^9M?D.V4Q>``"_ +M#[^9M?D/V5!>``"_#[^9M?D0V7!?``"_#S^9-?E$V7%?``"_#S^9-?E%2=`" +MF+\&H,F_R;R?D*#)"4B@V;_9#_"0F0_]GP2@V;_*F+L'O]V_#+V4L)$`"0,P +MD01^3<(`LZ``##(K`B(^O-0!WQ04``!_^3(K\94`!&#Y/KS4`=[0;0``6.\< +MT&T``/Y/`9CM!I#_/*#YO_F8ZP?^3@&0[C2\G9"@^0D0 +MH.G9Q&T``+_ZOYR_[;V4L)$`"0+>S,4``#"1!'Y-P@"SH``,"T("0SZ\U`'? +M%!0``'_Y"T+QE0`$8/D^O-0!W=!M``!8WQQP]@#T'A;?%!0``'_Y,BOQE0`$ +M8/D^O-0!V<1M``"_GN3Y_W^8WP]UV1R_Z:;Y]!L,/90UV3L^+-,!WB0@``&_ +MZ0\!-=\[#_?]GP3QE0`$H.G90"$``)B=#\39"/0;!?@(WB0@``&_Z4_W_=P\ +M%``!"T/]GP2@Z;_)Q=Z`#0$RTK"1"[3P"PGU_>D$"?[]^02P\0NT\`O90"$` +M`+6>#]G@:0``()V@SSZ\U`&_"9@>#Z">22`#F!\&H*F_J9@;![\,WLS%``"\ +MGY"@J0D0H-F_JK_=O92PD0`)`S"1!'Y-P@"SH``,"R,")#Z\U`'?%!0``'_Y +M"R/QE0`$8/D^O-0!W=!M``!8WQQP]@#T'A;?%!0``'_Y"R3QE0`$8/D^O-0! +MV4`A``"8G@_D^?]_==D#Z#/`@$^O-0!VT`A``"8 +MO`\)`=_0;0``(/G$R03T"QW=)"```;_>QT!&)T,D)D0->T)D.X0IN_T&^?X`/D"T,1M +M``"_"]K0)```#`B0NQA^-C0`OPG?`"0``-KB)```#$H8GB"0FR(U_N`8F2$U +M^>%^-C0`OPO:*"(```P(D+MT?C8T`+\+VM@D```,")"[;'XV-`#[`?D2T<1M +M``#0`"0``+\9F`\LV]`D```,"*"?OQF8#RVUGP&_&9@/+K6?`K\9F`\OM9\# +MOQF8#S"UGP2_&9@/,[6?!;\:D*H8?C8T`!@/X+\9V^(D```,2C6?(+\9&`#A +M-9`AOQJ0JB)^-C0`OQK;*"(```P(D*IT?C8T`+\:V]@D```,")"J;'XV-`#[ +M$=G$;0``OY_9,&,``+_^M9X!F/X!H)Y8_@1UG@18_@5UG@68_@.UG@28_@2U +MG@58_@IUG@Q8_@MUG@V8_P:UGP?X`-[$;0``WS!C``"_Z9C]`:"=O_V_Z;6= +M`5C]!+_I=9T$6/T%O^EUG068_02_Z;6=`YC]!;_IM9T$6/T,O^EUG0J_Z5C] +M#76="[_IF/\'M9\&^`#T,/S951,``/F"/Y\]=!+V`3Z[V0'4Q&T``+]+V01H +M$0'$!'`1`?]4U-3__P#( +M_90$_9T%O"[`H/F_R;P`X)#N`90_!/V4!/V=!:#)O+ZXV20D``&.D!81O/GP +MO!X0#`&@^WZ2*0#?Q&T``+_YD``!M@0#E!X$/)"8A$("$)`1@+PT,/"4_Z#I +ME!\$H/F4.02_E+"1"8SPZ.Z.OOWOO!P0O#XPQT@4]!L)LEH^8=@!2?_]_UFD +MCP`7$;P?$)0;!+^\B0#I[N2M``*\&1"5WPG'R0FF^?0+*8Z`%A&\'A!.[_W_ +MSI3_V964'P2@N;_YC(#I[KP<$/V>!/_9E:#YE#D&E#\#WDQ<``"[GP*\GI`8 +MG0,SU`05E!D'WPA@$0&\GY"_F3[^V`$SU`,:V0AH$0'<^)?N_KPI(+\IO"P@ +M/O[8`=X(/L/:`3.4`0PSH``2/L/:`3.4`@HPY@'T#".ST`,@L]0$ +M%3.0`1@SE`(-,^D`-0$^P]H!,)8"]0TI`?@("BGX`,2_'S/T`!%2Z3!PE@+T +M#10^[-L!,_`!"#/T`@ES[0`'`7/-``(!L]D#_0"SU`08,_D!]``S]`(3Q*D/ +M,Y``##[LVP&ST`4.4NDP<)8"]0W6``H1/GO;`<2_'S/T`!92Z3!PE@+U#+\` +M9_`/0, +M8W.D`&`*%7/``%P^[-L!<^0`4G.D`$X*'7/$`4@^O-L!5>D(]!L]^JK/D!A&8GS79(%H``*;Y]`T3 +MV4`!/WI!91I +M!O"40(\``(#]Z06)__\!_UF4_9\%_DT!ML00D-TD%E&D&\)1` +MCP``@/WI!8G__P'_693]GP7^30&VQ!"0W1RUV0*)```!_P%M=0!LMJU +MW@-^\-L!^V40"Q#T,/#Y$C*@_D$!D!$(LAI^_C0`B0``@+8$$+49`HD```'] +M"03Q!2`0LAJU$`-^\-L!^Q40^5+9P%D``/0P^+*16)`6?<32$(`1`=-0)@`! +MA```#(4```@^X=\!#N3O___D^0`$]`L@F!]PY.G_^W49 +M#@GX<@S]^00)`O#U`;4?<#X)WP'$^2#T"PODZ=__/J7>`>3Y``'U"TL!Y.G_ +M_G49#CZ?WP%8'P[D_O__Y.D`$/0+$.3Y_^\/!W49#CZ4W@'DZ0`!]`L0Y/G_ +M_@\&=1D./I3>`7(/6!T.Y-[__\3I(/0+$N39W_]U&0YR#`\(/M_?`>3I``CT +M"QI8'P3DV?_W<@QU&0[Q]0!`=1\$/N3>`>3I``'T&PER##[?WP'DV?_^<@QU +M&0X/!C[?WP&_*9@><`WW<@S]G02@*;\_"?C]Z02U'G#]_00)`:`_M1D,#PD^ +MW]\!F!]PORX)^`P'_?D$\/4"M1]P"0/PY0BU&0R@+@\)/M_?`=J46P``"RQ^ +M_C0`F!EQM11VM15Z<@SPE08/`;49<3[?WP&8'W&8&C>8&SC9W%D``+"1``G' +M_?D$"0'P]1"U'W&0JD`PD03<@%L```U`WL/```!^3<(`LZ``%7(,#PH^W]\! +M6!D.<)8`]!X+<@QR#S[?WP&8&7&8'@P/Q_V?!/"5,+49<;/D`@Y8&03QE0`0 +M=1D$6!D.6!\8#`KQE/]_=1D./M_?`?@(<@]R#'+P9@SU&_W]Y`___]G`60`` +M]#`(M9\+^U'Y4MG`60``]##XLI%8D!)]Q-(0@!$!TU`F``&$```,A0``"#X@ +MX@%S"08*`7`&!O0,%7,``GAS"0.C`',-`>4!/E;@`7,)"#$!6!X-Y.___^3Y``3T"R"8'V#DZ?_[=1D-"?AR#/WY!`D" +M\/4!M1]@/DCA`<3Y(/0+"^3IW_\^Y.`!Y/D``?4+2P'DZ?_^=1D-/M[A`5@? +M#>3^___DZ0`0]`L0Y/G_[P\'=1D-/M/@`>3I``'T"Q#D^?_^#P9U&0T^T^`! +M<@]8'0WDWO__Q.D@]`L2Y-G?_W49#7(,#P@^'N(!Y.D`"/0+&E@?!.39__=R +M#'49#?'U`"!U'P0^(^$!Y.D``?0;"7(,/A[B`>39__YR#'49#0\&/A[B`;\I +MF!Y@#?MR#/V=!*`IOS\)^/WI!+4>8/W]!`D!H#^U&0H/"3X>X@&8'V"_+@GX +M#`?]^03P]0*U'V`)`_#E!+49"J`N#PD^'N(!VE1;```++'[^-`"8&6&U%&:U +M%6IR#/"5!@\!M1EA/A[B`9@?89@:-Y@;.-G:60``L)$`"P\```'Y-P@"SH``5<@P/"CX>X@%8&0UPE@#T'@MR +M#'(//A[B`9@989@>"@_'_9\$\)40M1EAL^0"#E@9!/&5``AU&018&0U8'Q0, +M"O&4_W]U&0T^'N(!^`AR#W(,0! +MF"E`\?3^_P`"=2\,#_C]GP3PE0&U*4`^GN,!Q.D@]`L2Y/G?_P`(=2D,#0$^ +M].P!Y.D``0T!]0M*">3Y__YU*0P^GN,!6"X,Y.___\3Y0/0+"^3IO_\^!.0! +MQ/D"]`L2Y.G]_P`+=2D,#0(^].P!Q/D@]`L0Y.G?_P`(=2D,/MWC`>3Y``$- +M`O4+^`CDZ?_^=2D,``8^W>,!6"X,Y.___\3Y`O0+)9@N0-T0@!$!O]\)^/WI +M!`G^_?D$H-_PY0$``K4N0#Y,Y`'D^0`!]`L2Y.G__@`&=2D,#0,^].P!Q/D@ +M#0/U"YT(Y.G?_P`(=2D,/DSD`=T0@!$!F"Y`O]\)^``!_>D$"?[]^02@W[4N +M0`T&/O3L`=K46@``"RQ^_C0`F"]!B0``#+4I1HD``#CP]0:U*4JU+T$)!``! +MM2E.#0@^].P!?@+:`0T+4!VL!:``#$^0^VE`:\FI"_F?"4!["6`O"L"PX!/=0P +MX0`PX02]M`P"?@#=`5@I(@`0#0\^?^P!6"\,Q/D$]0MX!^3Y^_\`#74I#`T0 +M/O3L`1@I-%@N',2?'S/Y`(`',_0!"O@(/O+L`0T1,_T"$(`1`;_O`!(-$0G[_?D$H.\^ +M].P!WA"`$0$`$K_O#1$)]SZWY0$8*318+1Q8+AO$GQ\S]``<4NDP<)8!]`P) +M``P^ZNP!<^TR^@8^Z.P!,_0!"O@(/NKL`3/]`N<&Q-\/,_0`%M\0@!$!O_D` +M%`T3\)4!/CKF`3/]`<<&-I4']!L7WQ"`$0&_^0`4#1/PE02@^3[T[`'?$(`1 +M`;_Y`!0-$_"5"#XZY@$`#`T4/O3L`5@I&W.4`!)8*00`%@T5\)4$/LSK`5@I +M!``6#17PE0(^S.L!6"\,Q/D0]0M)!N3Y[_\`#'4I#`T6/O3L`5@I&U@E'56? +M"'/P`EAP]@+T#`QS_0$W!C[`Y@%S^0-)`7/]#RD&/CCI`=X07```/^GPE/]F +ME?0-!7)9Y)S__SV4#@$PD0`]U##A!-H07```O;1^`-T!6"DB`!@-%SY_[`$S +MG0#I!=\P9P``L/$0WU!G``#:8&<``-E`9P``WL!H``"PD1&PX1.P\13=4&<` +M`#^OW#!G```_F3_N/]T_S+"A$MJ`9P``/ZOPE/_P]/^PD0SPY/_PU/_PQ/^P +M\0VPX0ZPT0^PP0O$N?]FE?"<"#*0,Y``"\2Q_SYVYP'D4?__/90P!@#P[`L# +M`3"1`#`Q!-J`9P``O;2R'#(-?@#=`3,)`!0",C<]1+TT/63^20&0F2R\DY"_ +MG_Y*`7M1`I"J0.11__^\HZ"F\?"<")`S!#*0,Y``!K+Q,T0$!CT$,&$`,'$$ +MOZHP!@#P[`L01`&]M+(<,@U^?=P!,PD`NP$S1`6O/JGI`<2>_[/@`6JPY@'T +M'`NSX``:/AKH`;/I`IX`L^D#W0`-%P`I/O3L`9@IB)@O@)@K@=[860``\)3_ +MQ/T/?-G0"0*PX0!0W0\*\/'4\/__^J0PD039Z,3]#U#=#WS9T`D"L*$`\=3P_PKP +M,)$$__JDW*!G``#>P\```'Y-P@"SJ0!!!'(-`!H^].P!F"F(F"^$F"N%,.$$ +MQYGPWMA9``#$_0^PX0!0W0\*\'S9T/_ZI/'4\/_P\```'Y-P@"SJ0"W`PT7`!P^].P!WG!G```_[,3) +M_V:5\)P(,I`SD``+Q,'_/ECI`>11__\]E#"1``D!,`8`\.P+,)$$VG!G``"] +MM+(<,@U^`-T!,P``,M^09P``/_E\4<+PE/]FR?0-!7*L!6"D,#1IPE@#U'\$"F"F(F"^"6"$=QY#HQ/L/]`L1VJ!G``"R +M#+RZL'XV-`"R#.09__^F"?0-!^0<__\]E`X!,)$`/=0PX03:H&<``+VT?@#= +M`5@I#%@O(@`8#1H^1>L!6"D,<)8`]1\[`I@IB)@OA%@A'<>0\,3[#_0+$]Z@ +M9P``L@R\OK"RZGXV-`"R#.09__^F"?0-!^0<__\]E`X!,)$`/=0PX03:H&<` +M`+VT?@#=`5@I#%@O(@`8#1L^1>L!6"D,#1QPE@#U'P$"F"F(F"^&6"$=E9`8 +MQ/L/]`L3WZ!G``"R#+R_L++Z?C8T`.0<__^FP/0-!;(,/90.`3"1`#W4,.$$ +MVJ!G``"]M'X`W0%8*0Q8+R(`&`T<\93_?[;T$'4I#*"//O3L`9@I`PX!/=0P +MX0"PE@7PK`LPX02]M`P!?@#=`5@I(@`>#1T^?^P!6"\,#1[$^03U"W$!Y/G[ +M_P`-=2D,#1X^].P!F"\#&"DVL_0$'#.9`#(!,YT!,P%8*00`(`T?\)4(/LSK +M`;/]!10!,Y0`%E@I!``A#1_QE0`"=2D$/O3L`3.=`04!/M+L`5@O#,3Y"/4+ +MZ@#D^??_``QU*0P-(#[T[`%8+PP-(<3Y@#.9`/<`Y/E__P`,=2D,#2$^].P! +M6"D<2%```,A@``")!W,-(`@!$!U!B`$0&R.#ZX +M\@%S"0D&`W`&"?0,/7,)!)`!<`8$]`P8\`%S"0WV`W`&#?0,$W,)"S$#<`8+ +M]0Q-`S[`\`%S"0\3!'`&#_4(Y0-S"1!-!',-$?4$/E7R`5@=!.3?___$^1#T +M"Q#DV>__``9U&00^\>T!Q/D!]`L2Y-G^_P`"=1D$#@$^N/(!Y/D`!`X!]0N[ +M!.39__L`$749!#[Q[0%8'03DW___Q/E`]`LCM/`+V0B`$0$``Z"?Y-F__[WT +M=1D$V0R`$0&@GSY+[@'D^0`!]`L2Y-G__@`!=1D$#@(^N/(!Q/F`,Y``$>39 +M?_\`$'49!#Y+[@'D^0`$#@+U"TT$Y-G_^P`1=1D$/DON`5@?!.3^___$Z0+T +M"S:_+5@>#%@9&_'T_?]U'P3?____@/#E$/W?!+:4&-\```!_=1X,_9\$``3] +MG06@*3[,[@'$Z8`SD``3Y/E__P`0=1D$#@,^N/(!Y.D`!`X#]0O@`^3Y__L` +M$749!#[,[@%8'`3DS___Q/D"]`LTORU8'@Q8&1ODS_W_=1\$W____X#PY1#] +MWP2VE!C?````?W4>#/V?!/V=!:`I/K;R`<3Y!/0+);\O6!X,Y,G[_P`#=1D$ +M\.40V?___X!U'@S]^02@+SY>[P'$^0CT"Q+DR??_``IU&00.!#ZX\@'$^8`S +MD``1Y,E__P`0=1D$/E[O`>3Y``3U"SH#Y,G_^P`1=1D$/E[O`5@=!.3?___$ +M^8`SD``1Y-E__P`0=1D$/KCO`>3Y``+T"Q+DV?_]``UU&00.!3ZX\@'D^0`$ +M#@7U"_0"Y-G_^P`1=1D$/KCO`9@:-Y@;.-G(60``L)$`"0+>P\```#"1!-S` +M6P``#4!^3<(`<@ZSJ0"^`@`'/KCR`5@9!'"6`/4?JP+QE/]_``AU&00.!SZX +M\@&8&C>8&SC?R%D```D"WL/```"P\0`PD020JD#<0%L``$V``'Y-P@!R#K.I +M`'$"``D."#ZX\@%8&01PE@#U'UP"M15FLGK;0%L```Q`M19JM15VM19Z?C8T +M`-I`6P``VX!;```,0'XV-`#:@%L``+)[#$!^-C0`F!EAF!]Q6!T$#L<``?V> +M!/W^!/"5$/#U,/'4_W^U&6&U'W%U'00."3ZX\@%8&0T`"PX*\94`!#Z4\0%8 +M'@3DZ0`(]0O@`5@?#N3I__<`#'49!/'U``0."W4?#CZX\@%8&00.#/&4`!#U +M"[P!"0^@.;])#_#]GP3PE0V@2;\I\)4!H"F_3[/T`/[9%(`1`:"?OSFSE`W^ +MH#G>$(`1`;_OL_``$;V4H.F_.::?]!O\H(]8&0A8'@S;4"8``5@=!+^_ORSP +ME0+PY0AU&0C9____@/#U`74>#/WY!/'4_^_9````?W4=!/W)!``%_?P%#@R@ +MOSZX\@%8&0T`#@X-\94`"'49#3ZX\@%8'00.#N39`"#U"Q0!6!\.Y-G_WP`/ +M=1D$\?4`"`X.=1\./KCR`5@;!.2Y`$#U"^X`OR]8'@@)_MQ0)@`!_?D$6!T. +MH"^_S_#E!.2Y_[]U'@CPU8!U&01U'0[9_O__@``$_?D$#@^@SSZX\@&_*=_^ +M__^`_9\$H"G94"8``;^#ME0)@`!=1\-H)T``0X1/KCR`?@(<@YF#O4;E/KD +M#___V\GY#Y@I"?!+^1 +MV5@F``&__[^3V71<``#PTP"4W@:VU`.[[0*\Z>`8Z0''_0S$]`_'_W"V]`J. +M```"LL*RYS#1)/_^Y<26_[#A"L$3/@`&$T\"0S\`!:6"D!C@D`"]T$ +M8!$!WP```,[PDP#_'_2VE`>\G9#__A6R:J"12Q$.?N1J`%@O!%@N#%@I`?#U +M0/#E`74O!/"3`'4N#$^@`HY"`A"\GI"VE`2@GSYL]@&5'1:5&1?]G07PE`'T +M"WFS1`1V6"D!W___`,[_'_3>``#``/_^%=\$8!$!\),`MI0'O)^0C___OZ"1 +M21W^_SF4\)6`_9\$CP``0/V?!=___W___9\$WP``@`#_GS796"8``:"3LU0` +M"'[0\@%8*018+PP`!?&5``'P]4!U*01U+PP^;/8!E1D5E1\3_9\%\)0!]`L) +M``D^;/8!,^``#K-$!0H`"#YL]@'''Q`S\``XLT0#-%@I`=___P#.W01@$0'_ +M'_3PDP"VE`>\G9".```!__X5CV``0*"121_^_SF4/EKV`<39`3.0`$6S1`]! +M6"\!V?__`,[_&92.``!`\/,`_YX5W01@$0&4^0>\G9".P"("H)&\_O"V]`>_ +M^4X?_O"5$/V>!*#Y/FSV`;/P`$:S1`!"6"D!C@``0=___P#._Q_T\),`__X5 +MMI0'W@1@$0&\GI"/``!`H)%)'_[_.93_GS796"8``:"3LU0`"'[0\@%8*0@/ +M`SZ-]P'$^0+U"PP#Y.G]_P`$=2D(#P,^C/D!6"X(Y.___\3Y`?4+`P&5&165 +M'Q/]GP7PE`'T"PD`"3Z(]P''&1$SD``.LT0%"@`(/HCW`<!&`1`;R> +MD(W`(@*@D;S]\+;T![_Y3A_^\)40_9X$H/D^B/4]0O9`;--!=4!C0``"/\=E/4;R0$`"')//HSY`5@I"/"4`?4+L0&S +M1``^6"\$6"X,6"D!W?[_`,[P]4#PY0'_'=1U+P3PDP!U+@RVE`?>!&`1`8\` +M``.\GI#_WQ4`"J"1/BOX`?\7E/0+$[-$!1"/```(_Q^4]!L%``A8*0@/!CZ- +M]P%8+@C$Z0'U"TH!E1D5E1\3_9\%\)0!]`L)``D^7_@!_Q>4]`L)LT0%!@`( +MY.G^_P\'=2D(/HSY`;_YW0```$"0[@']G06@^9#_@-U2$P``/]GPE/^FZ?0( +MX@O_LFI^XFH`LFJ+07X%?N1J`-Y4)@`!O^G?____`/V?!*#ICZ```ME8)@`! +MH)^S5``(?M#R`5@I!%@O#%@N#5@M#O&5``3Q]0`!=2D$=2\,?93QY0`!\=4` +M`74N#74M#G4I`6`I``(/"#Z,^0%8*0'?!&`1`=T`@!$!WO__`,[PDP"VE`>\ +MGY#_'N2/`0!J_^\5H)&_V5@N!-\```"```;]GP5/'_Z@V0G]_SF4\)40_9\$ +M\.6`Q9.@=2X$V5@F``$/":"3/HSY`4\?_@GO_SF4\)4"_9\$CP``(/^?-=E8 +M)@`!H).S5``(?M#R`0`##PH^C/D!^`AR#SZ,^0$/!68/]1L'^N0/___9P%D` +M`+6?!?N%"/DB`0H"_]#`60``/AWZ`5@)!'.0``A^#.T!6`D(6`D.!?@(#__9&!H0`:"?DID(OYF5GQCGF6@!O)_PD)D!E/T(E)X(O)N0 +MNY\"MI0(/HP``OKI!+CN``$`N)D``0"F[?0(\?@'O>395`$``:">WP```"#9 +M%!H0`:"?N)D,`@*@GI"9!*">D)D$H)Z0F0R@GH\``!"2F1B@GP\3D)D\H)]/ +M`!&0F02@G[B9P`$`OYZ0F02_G9*9"+^?V>@7``"@GMGL%P``H)W9\!<``*"? +ML>;_`/0,!?@(20#PN.\``0+]^0392!@0`:"?LNG>`/__#[R>D+N?`M],&!`! +MH/V/```&^I\%^`.]])CY#9C^#+_]F/\.\)7_NYX"O)^0IIWT"`7X"+WTF/D# +MO_^4O@B\GY"FZ?08!?@(O928F0W?Z!<``+_]3P#_D)G__9\$WP@8$`&VE03Q +ME/\_E)X0H/[?````0+:4!/V?!=\P&A`!H/G9-!H0`:"=DIDLOY^0F3`.9-U` +M&A`!H)_?````!Y"9!*"?_D\!D/\$/M@!`I+N`;/D`0R_V:#Y/LD!`K/D`/&_ +MV:#YO_FPE@#T'@D.9#[)`0+90!H0`=\```!`H)^8Z0Z]Y#X+`@+Z[@2X[@`! +M`*;I]`CV^`>]E)B?#9B=#$D`_Y#___WY!#XT`@+ZW@2XW0`!`+CN``$`IM_T +M"/'X!]E8`0`!MN4(LKR\OO(*`:"?V4@3``!@GCY=`@*VQ0$0J@&SQ`#ZF,X. +MF,D13P#XY^[H`;B9_P<`_9\$MI0(_9X%WU`!``&@^9C)#T\`_Y"9__^?M)6Y +M!.20_S_9"!@0`90/$*"?F,T0F,X1"0'?2A,``+N:!%*9`6#YN^T"B0!``:;I +M]`T%^`BSY``*LKX^/P,"V0````3_"97?#!@0`;B]`$``H/F5V03QE/\_D/\$ +MH/G9%!H0`=\```!!WA@:$`&@GTD0)[_OL/8`]!X-DID!]!OU/A<#`K.4``;X +M"-X```!`V1@:$`']_@6@GY"9"*">W_CX^/B0F0B@GY#>@)*9!*"?V0`8$`&_ +MGPG`D.X__>D$\/0/MO0/E>T$O/["\=3_/]\$&!`!E``+[20#_O=3_R?2.``$&/L0#`KC9`"``^IX&N-T``0#X`Z;?]`COLL^. +M``$"/MX#`KC9`"``^IX&D-T0IM_T"/.RSTX``3[W`P*XV0`@`/J>!I#=!*;? +M]`CS^`-^"00"?A4^`/L%!-GT%P``O?2@G]GX%P``H)_9#!@``*"?V0`8``"@ +MG]D$&```H)_9"!@``*"?V=5I```@G]G6:0``()_9U&D``""?V1`8``#:$!4` +M`$M``:"??J$T`-I0%@``2Y@!?J$T`/@`^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +M^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX +F^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/CX^/@` +` +end diff --git a/sys/modules/dtb/nvidia/Makefile b/sys/modules/dtb/nvidia/Makefile index 9291ba9f41e..c2b1cf53738 100644 --- a/sys/modules/dtb/nvidia/Makefile +++ b/sys/modules/dtb/nvidia/Makefile @@ -1,6 +1,10 @@ # $FreeBSD$ # All the dts files for Nvidia ARM systems we support. -DTS= \ - tegra124-jetson-tk1-fbsd.dts - +.if ${MACHINE_ARCH} == "armv7" +DTS= tegra124-jetson-tk1-fbsd.dts +DTS+= tegra124-jetson-tk1.dts +.elif ${MACHINE_ARCH} == "aarch64" +DTS= nvidia/tegra210-p2371-2180.dts +DTS+= nvidia/tegra210-p3450-0000.dts +.endif .include