From ffd7bbfe72f95d48edb55cbd92f3b555d3a9607c Mon Sep 17 00:00:00 2001 From: zhangzq Date: Thu, 2 Apr 2026 10:58:56 +0800 Subject: [PATCH] init --- .mvn/wrapper/maven-wrapper.properties | 3 + README.md | 40 +++ mvnw | 295 ++++++++++++++++++ mvnw.cmd | 189 +++++++++++ oms-finnace/finnace-api/pom.xml | 71 +++++ .../main/java/org/nl/finnaceapi/dto/Init.java | 8 + .../finnaceapi/feignApi/FinanceFeignApi.java | 12 + oms-finnace/finnace-server/pom.xml | 52 +++ .../FinnaceServerApplication.java | 13 + .../controller/FinnaceController.java | 19 ++ .../src/main/resources/application.yml | 11 + oms-finnace/pom.xml | 42 +++ oms-gateway/pom.xml | 50 +++ .../org/nl/gateway/GatewayApplication.java | 15 + .../java/org/nl/gateway/InitController.java | 22 ++ .../src/main/resources/application.yml | 10 + .../nl/gateway/GatewayApplicationTests.java | 13 + oms-masterdata/pom.xml | 54 ++++ .../nl/masterdata/MasterDataApplication.java | 13 + .../src/main/resources/application.properties | 1 + .../MasterDataApplicationTests.java | 13 + oms-user/pom.xml | 54 ++++ .../nl/usermanage/UserManageApplication.java | 13 + .../src/main/resources/application.properties | 1 + .../UserManageApplicationTests.java | 13 + pom.xml | 106 +++++++ 服务交互时许图.png | Bin 0 -> 123253 bytes 27 files changed, 1133 insertions(+) create mode 100644 .mvn/wrapper/maven-wrapper.properties create mode 100644 README.md create mode 100755 mvnw create mode 100644 mvnw.cmd create mode 100644 oms-finnace/finnace-api/pom.xml create mode 100644 oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/dto/Init.java create mode 100644 oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/feignApi/FinanceFeignApi.java create mode 100644 oms-finnace/finnace-server/pom.xml create mode 100644 oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/FinnaceServerApplication.java create mode 100644 oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/controller/FinnaceController.java create mode 100644 oms-finnace/finnace-server/src/main/resources/application.yml create mode 100644 oms-finnace/pom.xml create mode 100644 oms-gateway/pom.xml create mode 100644 oms-gateway/src/main/java/org/nl/gateway/GatewayApplication.java create mode 100644 oms-gateway/src/main/java/org/nl/gateway/InitController.java create mode 100644 oms-gateway/src/main/resources/application.yml create mode 100644 oms-gateway/src/test/java/org/nl/gateway/GatewayApplicationTests.java create mode 100644 oms-masterdata/pom.xml create mode 100644 oms-masterdata/src/main/java/org/nl/masterdata/MasterDataApplication.java create mode 100644 oms-masterdata/src/main/resources/application.properties create mode 100644 oms-masterdata/src/test/java/org/nl/masterdata/MasterDataApplicationTests.java create mode 100644 oms-user/pom.xml create mode 100644 oms-user/src/main/java/org/nl/usermanage/UserManageApplication.java create mode 100644 oms-user/src/main/resources/application.properties create mode 100644 oms-user/src/test/java/org/nl/usermanage/UserManageApplicationTests.java create mode 100644 pom.xml create mode 100644 服务交互时许图.png diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..c595b00 --- /dev/null +++ b/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,3 @@ +wrapperVersion=3.3.4 +distributionType=only-script +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.14/apache-maven-3.9.14-bin.zip diff --git a/README.md b/README.md new file mode 100644 index 0000000..356b29a --- /dev/null +++ b/README.md @@ -0,0 +1,40 @@ +## 项目调用参考服务交互时序图 +## 项目技术要求 +#### 1.springboot使用3.2.10版本,对应jdk17+,编译统一使用jdk17版本 +#### 2.springcloud使用alibaba版本 +2023.0.5 +2023.0.1.2 +#### 3.nacos自行搭建,yml配置如下 + nacos: + discovery: + server-addr: localhost:8848 + namespace: dev + enabled: true +#### 4.FeignClient目前通过指定url方式 +后续使用Spring Cloud LoadBalancer +#### 5.数据库持久层框架使用mybatis-plus + +## 项目结构说明 + omsCloud ---根 + |--gateway 登录鉴权 + |--userManage 用户管理 用户菜单部门权限 + | |---user-Api 对外feign接口 + | |---user-server 服务实现模块 + 。。。。。。 +示例:1.财务模块 创建了api,gateWay应用finnace-api调用 + http://localhost:8012/api/gateway + +## 开发规范 +1.所有实体对象统一驼峰命名 +2.controller层参数接收,返回必须使用实体对象,并在api模块定义 +3.各子模块业务上如server有多个功能模块按如下结构定义 + |----xxx-server + org.nl.xxx + |-- 功能模块1 + |-controller + |-service + |-mapper + |-entity + |-dto + |-impl + diff --git a/mvnw b/mvnw new file mode 100755 index 0000000..bd8896b --- /dev/null +++ b/mvnw @@ -0,0 +1,295 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.4 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +scriptDir="$(dirname "$0")" +scriptName="$(basename "$0")" + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${scriptName#mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize http auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c - >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +actualDistributionDir="" + +# First try the expected directory name (for regular distributions) +if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then + if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then + actualDistributionDir="$distributionUrlNameMain" + fi +fi + +# If not found, search for any directory with the Maven executable (for snapshots) +if [ -z "$actualDistributionDir" ]; then + # enable globbing to iterate over items + set +f + for dir in "$TMP_DOWNLOAD_DIR"/*; do + if [ -d "$dir" ]; then + if [ -f "$dir/bin/$MVN_CMD" ]; then + actualDistributionDir="$(basename "$dir")" + break + fi + fi + done + set -f +fi + +if [ -z "$actualDistributionDir" ]; then + verbose "Contents of $TMP_DOWNLOAD_DIR:" + verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" + die "Could not find Maven distribution directory in extracted archive" +fi + +verbose "Found extracted Maven distribution directory: $actualDistributionDir" +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..92450f9 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,189 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.4 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" ("%__MVNW_CMD__%" %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND -eq $False) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace "^.*$MVNW_REPO_PATTERN",'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' + +$MAVEN_M2_PATH = "$HOME/.m2" +if ($env:MAVEN_USER_HOME) { + $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" +} + +if (-not (Test-Path -Path $MAVEN_M2_PATH)) { + New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null +} + +$MAVEN_WRAPPER_DISTS = $null +if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { + $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" +} else { + $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" +} + +$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" +$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null + +# Find the actual extracted directory name (handles snapshots where filename != directory name) +$actualDistributionDir = "" + +# First try the expected directory name (for regular distributions) +$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" +$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" +if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { + $actualDistributionDir = $distributionUrlNameMain +} + +# If not found, search for any directory with the Maven executable (for snapshots) +if (!$actualDistributionDir) { + Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { + $testPath = Join-Path $_.FullName "bin/$MVN_CMD" + if (Test-Path -Path $testPath -PathType Leaf) { + $actualDistributionDir = $_.Name + } + } +} + +if (!$actualDistributionDir) { + Write-Error "Could not find Maven distribution directory in extracted archive" +} + +Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/oms-finnace/finnace-api/pom.xml b/oms-finnace/finnace-api/pom.xml new file mode 100644 index 0000000..7bbe2e3 --- /dev/null +++ b/oms-finnace/finnace-api/pom.xml @@ -0,0 +1,71 @@ + + + 4.0.0 + + org.nl + oms-finnace + 0.0.1-SNAPSHOT + ../pom.xml + + finnace-api + finnace-api + + 17 + + + + + org.springframework.cloud + spring-cloud-openfeign-core + provided + + + + org.projectlombok + lombok + provided + + + org.springframework.boot + spring-boot-starter-web + provided + + + + com.fasterxml.jackson.core + jackson-annotations + provided + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + true + + + + + + org.apache.maven.plugins + maven-source-plugin + 3.2.1 + + + attach-sources + + jar-no-fork + + + + + + + + diff --git a/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/dto/Init.java b/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/dto/Init.java new file mode 100644 index 0000000..bf32b9e --- /dev/null +++ b/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/dto/Init.java @@ -0,0 +1,8 @@ +package org.nl.finnaceapi.dto; + +import lombok.Data; + +@Data +public class Init { + private String msg; +} diff --git a/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/feignApi/FinanceFeignApi.java b/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/feignApi/FinanceFeignApi.java new file mode 100644 index 0000000..a9da8a8 --- /dev/null +++ b/oms-finnace/finnace-api/src/main/java/org/nl/finnaceapi/feignApi/FinanceFeignApi.java @@ -0,0 +1,12 @@ +package org.nl.finnaceapi.feignApi; + +import org.nl.finnaceapi.dto.Init; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; + +@FeignClient(name = "finnace-server",url = "http://localhost:8011", path = "/api/finnace") +public interface FinanceFeignApi { + + @GetMapping("/init") + Init init(); +} diff --git a/oms-finnace/finnace-server/pom.xml b/oms-finnace/finnace-server/pom.xml new file mode 100644 index 0000000..0e935e1 --- /dev/null +++ b/oms-finnace/finnace-server/pom.xml @@ -0,0 +1,52 @@ + + + 4.0.0 + + org.nl + oms-finnace + 0.0.1-SNAPSHOT + ../pom.xml + + finnace-server + finnace-server + + 17 + + + + org.springframework.boot + spring-boot-starter-web + + + + org.nl + finnace-api + ${project.version} + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + org.projectlombok + lombok + provided + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/FinnaceServerApplication.java b/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/FinnaceServerApplication.java new file mode 100644 index 0000000..7a0f6ac --- /dev/null +++ b/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/FinnaceServerApplication.java @@ -0,0 +1,13 @@ +package org.nl.finnaceserver; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class FinnaceServerApplication { + + public static void main(String[] args) { + SpringApplication.run(FinnaceServerApplication.class, args); + } + +} diff --git a/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/controller/FinnaceController.java b/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/controller/FinnaceController.java new file mode 100644 index 0000000..ce71b72 --- /dev/null +++ b/oms-finnace/finnace-server/src/main/java/org/nl/finnaceserver/controller/FinnaceController.java @@ -0,0 +1,19 @@ +package org.nl.finnaceserver.controller; + +import lombok.RequiredArgsConstructor; +import org.nl.finnaceapi.dto.Init; +import org.nl.finnaceapi.feignApi.FinanceFeignApi; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/finnace") +public class FinnaceController implements FinanceFeignApi { + @Override + public Init init() { + final Init init = new Init(); + init.setMsg("初始化成功"); + return init; + } +} diff --git a/oms-finnace/finnace-server/src/main/resources/application.yml b/oms-finnace/finnace-server/src/main/resources/application.yml new file mode 100644 index 0000000..e4a648e --- /dev/null +++ b/oms-finnace/finnace-server/src/main/resources/application.yml @@ -0,0 +1,11 @@ +server: + port: 8011 +spring: + application: + name: finnace-server + cloud: + nacos: + discovery: + server-addr: localhost:8848 + namespace: dev + enabled: true diff --git a/oms-finnace/pom.xml b/oms-finnace/pom.xml new file mode 100644 index 0000000..3323b4d --- /dev/null +++ b/oms-finnace/pom.xml @@ -0,0 +1,42 @@ + + + 4.0.0 + + org.nl + omsCloud + 0.0.1-SNAPSHOT + ../pom.xml + + oms-finnace + pom + financeManage + + 17 + + + finnace-api + finnace-server + + + + + org.nl + finnace-api + ${project.version} + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + + diff --git a/oms-gateway/pom.xml b/oms-gateway/pom.xml new file mode 100644 index 0000000..538af15 --- /dev/null +++ b/oms-gateway/pom.xml @@ -0,0 +1,50 @@ + + + 4.0.0 + + org.nl + omsCloud + 0.0.1-SNAPSHOT + ../pom.xml + + org.nl + oms-gateway + 0.0.1-SNAPSHOT + gateway + gateway + + 17 + + + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + org.springframework.boot + spring-boot-starter-web + + + org.nl + finnace-api + ${project.version} + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/oms-gateway/src/main/java/org/nl/gateway/GatewayApplication.java b/oms-gateway/src/main/java/org/nl/gateway/GatewayApplication.java new file mode 100644 index 0000000..800507b --- /dev/null +++ b/oms-gateway/src/main/java/org/nl/gateway/GatewayApplication.java @@ -0,0 +1,15 @@ +package org.nl.gateway; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.openfeign.EnableFeignClients; + +@SpringBootApplication +@EnableFeignClients(basePackages = {"org.nl.finnaceapi.feignApi"}) // 扫描 Feign 接口 +public class GatewayApplication { + + public static void main(String[] args) { + SpringApplication.run(GatewayApplication.class, args); + } + +} diff --git a/oms-gateway/src/main/java/org/nl/gateway/InitController.java b/oms-gateway/src/main/java/org/nl/gateway/InitController.java new file mode 100644 index 0000000..5814fdc --- /dev/null +++ b/oms-gateway/src/main/java/org/nl/gateway/InitController.java @@ -0,0 +1,22 @@ +package org.nl.gateway; + +import org.nl.finnaceapi.dto.Init; +import org.nl.finnaceapi.feignApi.FinanceFeignApi; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController() +@RequestMapping("/api") +public class InitController { + + + @Autowired + private FinanceFeignApi financeFeignApi; + + @GetMapping("/gateway") + public Init getPlan(){ + return financeFeignApi.init(); + } +} diff --git a/oms-gateway/src/main/resources/application.yml b/oms-gateway/src/main/resources/application.yml new file mode 100644 index 0000000..a4e03e3 --- /dev/null +++ b/oms-gateway/src/main/resources/application.yml @@ -0,0 +1,10 @@ +server: + port: 8012 +spring: + application: + cloud: + nacos: + discovery: + server-addr: localhost:8848 + namespace: public + enabled: true diff --git a/oms-gateway/src/test/java/org/nl/gateway/GatewayApplicationTests.java b/oms-gateway/src/test/java/org/nl/gateway/GatewayApplicationTests.java new file mode 100644 index 0000000..d80a46f --- /dev/null +++ b/oms-gateway/src/test/java/org/nl/gateway/GatewayApplicationTests.java @@ -0,0 +1,13 @@ +package org.nl.gateway; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class GatewayApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/oms-masterdata/pom.xml b/oms-masterdata/pom.xml new file mode 100644 index 0000000..21f70d6 --- /dev/null +++ b/oms-masterdata/pom.xml @@ -0,0 +1,54 @@ + + + 4.0.0 + + org.nl + omsCloud + 0.0.1-SNAPSHOT + ../pom.xml + + org.nl + oms-masterdata + 0.0.1-SNAPSHOT + masterData + masterData + + + + + + + + + + + + + + + 17 + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/oms-masterdata/src/main/java/org/nl/masterdata/MasterDataApplication.java b/oms-masterdata/src/main/java/org/nl/masterdata/MasterDataApplication.java new file mode 100644 index 0000000..299d852 --- /dev/null +++ b/oms-masterdata/src/main/java/org/nl/masterdata/MasterDataApplication.java @@ -0,0 +1,13 @@ +package org.nl.masterdata; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class MasterDataApplication { + + public static void main(String[] args) { + SpringApplication.run(MasterDataApplication.class, args); + } + +} diff --git a/oms-masterdata/src/main/resources/application.properties b/oms-masterdata/src/main/resources/application.properties new file mode 100644 index 0000000..be5877d --- /dev/null +++ b/oms-masterdata/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=masterData diff --git a/oms-masterdata/src/test/java/org/nl/masterdata/MasterDataApplicationTests.java b/oms-masterdata/src/test/java/org/nl/masterdata/MasterDataApplicationTests.java new file mode 100644 index 0000000..06cf4d9 --- /dev/null +++ b/oms-masterdata/src/test/java/org/nl/masterdata/MasterDataApplicationTests.java @@ -0,0 +1,13 @@ +package org.nl.masterdata; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class MasterDataApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/oms-user/pom.xml b/oms-user/pom.xml new file mode 100644 index 0000000..8650fff --- /dev/null +++ b/oms-user/pom.xml @@ -0,0 +1,54 @@ + + + 4.0.0 + + org.nl + omsCloud + 0.0.1-SNAPSHOT + ../pom.xml + + org.nl + oms-user + 0.0.1-SNAPSHOT + userManage + userManage + + + + + + + + + + + + + + + 17 + + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/oms-user/src/main/java/org/nl/usermanage/UserManageApplication.java b/oms-user/src/main/java/org/nl/usermanage/UserManageApplication.java new file mode 100644 index 0000000..2543db2 --- /dev/null +++ b/oms-user/src/main/java/org/nl/usermanage/UserManageApplication.java @@ -0,0 +1,13 @@ +package org.nl.usermanage; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class UserManageApplication { + + public static void main(String[] args) { + SpringApplication.run(UserManageApplication.class, args); + } + +} diff --git a/oms-user/src/main/resources/application.properties b/oms-user/src/main/resources/application.properties new file mode 100644 index 0000000..30174a1 --- /dev/null +++ b/oms-user/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=userManage diff --git a/oms-user/src/test/java/org/nl/usermanage/UserManageApplicationTests.java b/oms-user/src/test/java/org/nl/usermanage/UserManageApplicationTests.java new file mode 100644 index 0000000..75c00a7 --- /dev/null +++ b/oms-user/src/test/java/org/nl/usermanage/UserManageApplicationTests.java @@ -0,0 +1,13 @@ +package org.nl.usermanage; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class UserManageApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..bc1cb4a --- /dev/null +++ b/pom.xml @@ -0,0 +1,106 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.2.10 + + + org.nl + omsCloud + 0.0.1-SNAPSHOT + omsCloud + omsCloud + pom + + 17 + 17 + 17 + UTF-8 + 1.18.44 + 2023.0.5 + 2023.0.1.2 + + + oms-finnace + oms-gateway + oms-masterdata + oms-user + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + + com.alibaba.cloud + spring-cloud-alibaba-dependencies + ${spring-cloud-alibaba.version} + pom + import + + + + + org.projectlombok + lombok + ${lombok.version} + provided + + + + + com.example + baseData-api + ${project.version} + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.11.0 + + ${java.version} + ${java.version} + UTF-8 + + + org.projectlombok + lombok + ${lombok.version} + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + + diff --git a/服务交互时许图.png b/服务交互时许图.png new file mode 100644 index 0000000000000000000000000000000000000000..fa77e57f69fa7823e2cc97abc3444ddf2ee05516 GIT binary patch literal 123253 zcmeFZXINC*wk=v_#fXv=1r<Z8WAxs7>#es@E>~p4x0CH7Baukk zB`#jLN+NBtBat?&-@F#jWbBx|g+I33y{KeHB5mD6{C^GUWiSnibdV%*;p{c*;NiA= zcG3;2^Aom5OE2u+a*oACd7rJzjbSOu`0&~Il&J5@x>ECvbI0E@-Bx^|e8P|I!ib9G zIms8h)}MW-qv2D+KQ~vrAl%E5AIRbpAiZ0yI{!#t=u)0`J16Hh^jP9Mk~F^m^baB073LfNT#o>^ zC}JCaUEu2|smi=+&d?_}emLa+@fJ9j{Ozr`iE97(DfdgS{PPq4&(ptGE4tUJ$=~G%b__k&o2e>7`A2AjbD+Lt|;?8;Ylx&(2`-+R~6>C z!WVRZX>Lr!dixN%!nDxQs1Ozge)5m$c3Avq;Ioi{p+xsSGqPtnz=+m1{v((GJX zhueQjP*t5|`<3N;J9m0k3olg^6r4|CcJ2K6Q#M)a(#ex2+e%!+4Lb6K4j&E|_oO@S zyAt;le?~<|4|4mRP)x9%=qxQQwQ*L({RrIBnm4 zqRKT~I#h507oO#w#NxR6Yc7P}LOI(qK4zbG!Iv++%L`LZBQ7p3Sn4{RQ|`39RV5`E z<^xw}O~NB0^y}jSYp47;IXUr{)HfHsrw8j|V`7*`YD-H>zUrK6rjqcM^kaFe5Nqbf zqH}5=gDnB}8=i!7;SXu!mNY}`E*+=F#mbl5+SQ@<-6dWhKb~pZ;pOFZ=Zo7yZ;-Lm zw!ORe?R!_FGgu!VB!9|Rl3S~SW?~+3LCvQ6RY*BjA)bu#_|xKnfdOwuCFPZl>{c%A zDh>Xv=Vd93jmMro-OSO!$IQ%Jtj$he^z{nD&UafpDG z(f1fx1%DX{iKZk?DeRETZl)yV=<|wiuSVr9PfAUkW@D>rXh^r288mE3tFvs(wlbEK zEPHdoTgP{H5_u5)69-jKrQr)UxJ|-!@iiz+jN#A_}mT}h0KR&HfSMO*})z?>{5aqKR zzJBi9!!#yw6BCmgS>`n>%&t{IyvFq{SzjwF4H0N!U)EzaCna9&@??~-*~%**Aka5Em=#3!rKkw^e~BgUb&EDarM{7>gBq3Tc}0ps?ZfPer*MBI(+`p=)w&GqAU8sd}~=#DZn z7Jm6++5h!y#o2Z&drz5f(MG3r8@I(MCWg+kDEVbuj=c2t4(FYWjEn@xNO?1sP49C* z!oniGKPfrc%)+8>)()6qZk`emaVL;d^MVxi1o>Q)br^Sc=GK{-z4-G;S6|=U{6yDl zB>w)>SG*&Aj$TgFtre@NJ|JY1(wH|^AFtA3Ki3A>Dm?b!!2?|MPklEqxQ*LYy(95z$ND&>4s7xCK&>a8(BQy;((7|izJ9%e*uHFakKtMuXNHOniOS-Z_R`U*C2Lj2IlT-GrK6&XR){U~q&$9Ym%h$*C8YzxcGsh> zy683}vG|`fAZE7B)yq-zjODLVd0I4l{mN9Hg#74wPhhx8xqyk$DaH6$c?pwGv)gD_#moINO-%uSH{Rj?Bg{G?vfKm zhDMK2QBh?{T^n-o@W2iw&lW4E>Rk%qm-mkBEP6&SU@0B1Fr+ChMG>++>;P`yiuG@H zbpM!=va+PN`TY1#d{{a@^X#LIftF?_CQW(vODFS}y-~>Z^=WBoPc$yna-ZCQpM6rzE=fR%ewNrMN=ClP2&?;5eb z+4u0VfVj3S3;fXEuTxXp)Rc)T34Ev8dOI>IYGG+X)pWR#!&g#MS9kB8J;@rS-jcq@4Ut8l7@d4F0qln^FO+-4RQWT@e(v@H z&XeT+=n~|vQfLCe$jQl>(BRk(F&#asPi3&%yzxeogO3?)@$lO>*qEPJh54Qmfreh^>KAv~*RNk=jqDaCdq8A%@7aS4 zJE`z;c4|uhdrS?A3~JoQZ8Y!k`pcIu)6>%{`LVLF@E9~cuM6nv?95vl%~p+8_?B?K z^T&_p&Su1oPQCiw4$1M`&JK^ZWm~8mSBS%^h_?AXe!SkWCk3|&^0d#r7fc{6Ee+)# zS;n(sn#3}PU$-1-UbksSoKkXhfQq59@kxnqGeZriao-{(_HfKtH@?56n4tO=Ar(YC zRAvV2a6KtqTQ+ZgpO!{-R1Ynm%igcI$z~ClckbLl$kF@+8AEiV(&yRC=qdSa+DT_O z(wr*yM&?GIozgaz*eKD$msMW`1yB|7s-d*jEDI@F3f%06vGB%&vfh!lbEEFyf!>jL zCtkhpCG+bEGIT`zkGipkl9JnMR8`4uhU!3l%e>4ovx1`^BN&0CYq)Bb`CHt45=**4 z(>Hcdw*c$$&Z4aa5q0n6K}cKQ%DwsGwm0JH+rm@YA|fJ6eyK|{d;$VXi;H@v_IU9M>YYy7DVkM2~ml z_qymyK_Edv14b?o|Tc2sf$%?&^mbd@Znf}-LPnY zD|lcktK;&7v%kN8z{6idiTQ(-KWv&-?X&{R!cdr~7Mcrp&65>~o_x z+Nh8ghBZolJ!yt5E7P@?{rvpEg2?53Q$dZt>!qT+&rf`QvK4s9nPWawA8&7OkCkO` ztpcJtBCHXy=5wt+noUJTQ2EQEbv!%K-x(ezFtOBKH9i_@yDZ`M=rf&RK9xkD#1YV>=q2Tjw>lCMMXwF?F2z2 zZjn(!{@t~E<3Bzb=l|l-`yMlVnc%u)>;GhD&!|}UaqC4Ya#JC@((RWlWd%dnZ#}$T zbIv=`ab@9+Y=js>zvca{^UBJ~OS2<0GHxCoY`9}YO_3+^(n(ZX!W+e9rrmZ7FsPnm z{Q>O^b~`C8ZFYS8>ky9}LZiTWC=EC{(_e#i1-;CfYqxdsiUIC68ITq z=lG4R6i-j0v;YveZ+^V*%_OBoNf1$H=09t*UaE4u0&V>*z>wq%=AZrjAg;H$`=+O- zH*BR+&39-64+qxhrSh|~R#sMCA}V}JMn;A!<%wQvU0=zbfdM{)Ms~0(P~oFTj(E@s zH3tZ7`L(eX;s$%n`6!eagf0_d_j$ zrJPHvqQ5D*4=Is|kOvvTXT5mw0u1-rj@#)4_*fL3(j@fJtDv}clch(2DIq+DFYykR z0vB*!ub%(L&HKx~0Ri)9-B3~WRlfax0A&Rn9ao*U(;jzCLX3U?eoexg$GAQ2#-no; zc>&7d3fVwA87 z+#%b=rkD_{c3H`fme(jQ{hg_v-r$Ej#TO2(AlGUtA6)@_fx$1#&+AxGQ|O;h*Q)A0N?Zlh z6?s;NiR7F0d5A?!%*~CpW=^$cnt=r8q3UvKmVu7_S{zCw5^snT^gWIKR8oIjjSfD9 ziO&CoA{#fiy!6{D$!piXgPGwL#EU$!bZ&k+fE;<)Q%lXlpK zO`Ft_nGv4C`}j;F+sPQQE$CF_V-*aEom7b5cS`5gfqOPKi@|(mGNFRHnwqIMKdqIm zu{1YVeSh;4AjN8=**7>?@ZO|Gs& zczAfg1IFj(=s7h?P@0nm9XktM4xM+pASOl>*Qvg0e@(vFi7-Ahv1=d9mRiFE?{ONn zW-y3*oHA$}2h^#h>dE^YxrCDZu_rkT?V2--Ed`7fU@2L;&&}k%^saA`a`s6+js6H`fO@e5&#*cJ}uu@4~{u$9>DtdA77njf~HS-W)VGl$FlT~tme`=7WZHeZloU!zaIB zQM!7nEJ@I?8ES{GpC6Czw@9Sd_c$f9$?nq5{*MpVq4hDv1`~`&zn+DSEdeQuk_PSt zM$M)W*9f*#r)Lo%=APnz8i@>AT9{ejyi+l@ZgzH7CCz|fv=d#$s6spUpJvyp2td0^ zC*oj-zLIFe8>jA~fZuk}7`cBr`1FU{MPwtVMeQWKn?be#tNX)@b#(fXJZsmk#j98( zuA%~oyV2AnYhNB=LQm(d=o*Xjxeg|Mbb zBka0LwBj&U>$+YS5;6bRtct2?EA$q#)tv+o1nmAJjHs3T0GR3^v8ZqTY0oI#(K|*( zX=a-CD8yZV9ik8E1x*xip%$P3(9X=t+Cjs9#!r))+P|yV6WjeAO(x0#@+EvfOSvh6 z24dL4z?(4W0*4MAI$QW5Iavk8s!{JGimyt#5ts~M23rS?83w?8b@q{}s_OK{WfV5w zlj_2NlnV2-q@;J(KXh)Qw`0Hgk;GBJZ;S2~WmX*35g<;m(FpOK1yOz=Sx!6Yg*8f^ z6D13kTjJ6sM11_M7~D}~bF<$uIW1@#peEJ5;i#~&>iH{B0_Fi%PqtF`p1$}ySY!#w z`o2qP((*`p$C0B)pKU2Z-K$Os3Rv@NdBH5#muYxpgx9dS8^uiG8v?NV$B%;&-yk1B zObfU2#m1%S)eW{;b&TM3(f)U>tU3@O0Ev*`U`7e$6rCC%pzuQXp4>XV6d(*F$=9vI zO+X_RB_#>(YX}G=f_#E1UvbDz#2GdeEPVm0gC>6fYF+{$8N3y%%;)hMP0dy+mW!7! zS37hO73!m)wIVSCs?~4J_`uP&fB*gqmy|qXPCwhx6ueR;FqSh_CD5dPF6yf89Le0o zWUrw0dyaMGz92XH^t20wsdu)B~|_J1&i_(RFIq+_q;^9&9N*=n=dnEbzIjV=#YrVzufQt#{;DDhjb*;57wSsn_M+1 zJ-v5~5_+l4?~{u&Wcflv-5qkX@~Z~;)P#b(@_T>C$;pX(&L6IRqir@bTpZjr&~)*l z^)XD|>?ayloy(`q8N@@KV~0emJU<03o3|MRtqvxd*{tNYJ3I2sTgX)R4k~H3l+>DC zqfj5q^18I5pM0++VK_PD*MM>RkWj2+@n@0w@Oc~FUU{GNPx`AzOW#z`a!p#P28;AJ zwts4GpD$lSdaeR8{AF6|;>G8TrNZ+6 z-v+*4%M<5qnt1x^)TgF@+)uV?VmtS!&-`qT-e7h*>+@LLWpjfqd70hak4m|#5w2xF zG?nsfCfr6#C`C=|6TK$hIJeDFB{6$*`9avvU<9y?i-H-Zo?-jR_6Sitn>dqb{r8D*NWyM{iyVJG$yY& zDALaKvBGs!=|+=J`otSJTzsHbFzS$1ey{@a-Jo<|(# z!jr!u*_iczJPQ37WLz|8F;=fTZxrIx9@{`UeVs%yKK(y_{eR4x57HMevgcVP@b^i| zx~ZB!qAn^C<+c9jkMlzpWG-Fe9>AxNo^O5o_U%2}lZvN1RPx?_dUm@zoHmD9j4kWW zA4v>cwL~jSJZ^IOq1t|#-czT~AkZgS;~sqZ(=&6KlGz|~VtPE;5@-lc_>CM(aFF`D zo`q3IIc4vhUz50lK!-8)wSP{QE$I%cyj=cFB573LY1Q#GiP&mG@%s}Fs=v?qYhe0O zgP9n${eDP0{ccx@pa0vZD=KYgvaE(q*`>>zAFCT8vthw2jGq~QanGYR?NKYC{QX%h zr2D-4f0tn54gY04_&*q#UZfkkMUyB8J&vBZr{|Xr1TOQnH4mq${HYD2MTRjk##| zwjds!1#1#lME|y&4;~?>xd(^F$ZRM|0$Iw36xc?-e>i`3=lZ}O7S|rf%_)5u>UaMn zl^FBmazNAi^=fp}MI{gEHjqX5>esLS%ubdWQQjc*{M^X7k5QMM?d88lkldKcCyi~b zzQ@aDzuL4mhsv*k)PDU?`Z*L6cGqy`8m4zCma` zg<7#p=&}Ao6qalJAClQ@J~Mh(e``Al)9ZG-(Mv(6jKAdaJ*g@BD7D6ayInPBnv8YjG390@@1t&a(vGZnipkp58!-3FQZOYkItuwI?jqwB?X+;` z-6X30qp~4KsVm*EG%fs`7o+e8YD&D*2Mdajj+=kJ4UN(yP5HC6-i#9Eit((tB%vf% z;vLi)tbP7(#-026HKg8N4x>{7kA5foc=T=H)gO<4MCkqW2dZD!k?yB&_%qnXd9IMz zkVxZce`tXuQu{_?iqG{|q5Jc%|2}`$h#_e!-$)g7Bh01-6r=907$q+0mN&brFiIdw z%8*Jv9$Rq@flFGg{fK$0vChd^wS>EQ=@nj8M;WyEBXrm&_Z+s^oh*v{-pbC&MU2{z zQZ4rbt4KGG{QK;-eC-;i5PQi%w|ft=ds5wZ?dtZ5jrqZN;RYt-u}-on+wx(Csop)J zva?~k-ueWHa5iCl`+H7KygTVXCNDdF6Ka6(o%F9?zoO}A3b+q74=gz-{5>1(couXX zkNte!_F+&$Ahm)J2I*h<*uu=uZ-c2FuTd*={{vFu33m4JzA(ofTep_ywLq!>JuQCv z^l3w;f~hIm3Lm1?gP5RMr;SD%BKHj11NFXhq>5pTsX?AWyDbzBjCSNhn3_K(7Y#xc zV5LJc)l$NijVoM~k_y65Uqhq&CAU7*-lV}<^mWjQm>3zqgAziwXetioF>J;ZX$37V zxMVr!(v`0GaflQUTLi-r6k^fE#5cs$=zwlpL8ipe3IqDMsy1lvkhCFH z+Zpm1`~Yo4Fl@BHKcFk@xTvfji<0T`{KTtQuQ1Fxefo6wg6aLYg+)bZH(6sNFfe?F zwkg^f0)0AUZ3qS#Sy@^ZHkjH&|74P|L4%Dk!lYmc$Zg1JlcalQb5P&aTU+k){9`vh*tC_^4Ke*0RQ(U>c92CxMl#-sCflN*ppfMl z|M20%!wd{&wna&r>S*>@PHt{;a~UzBPp%eLL05#137u)kFBRtp z>o$doIIf^m^k#I)ngY4cLsP}zoPzbkP`PKIiL^lr4K^kyB~t@qxpVE%EvNTEQ^e>x z;YK$8mWFW_=4$d$-}1=^p{Qf_?ZYS$ubdj*>6TtgG$qCKj@={Bt1pKN2Hqiu_KB!a z&9&j?oGe8brWki!wj@^3nidjGABLEv)6ZGTp*QU3*1Ohz7(yAgK{2A{6b3O23|+W% zzR;^!kK0AA1Kb-oY`_#+#gB=Xm$$&B0^4C>VbPYN>mwEc&0gWkmFKq_p}%3Y@x;kV z%ccg+K)h<^w}79eN&9#0dhT3CeI>>KONs`IBgqUSqau|H6LkZL`71A%mbP?b#J`U! zgi=Vd^!tDAarjsQY?Z)5RFufLTs@+t^d@# z#sV7K{ajkoY+=;DH|29tQ4f}4Kd+JM&6__~SLQ@co=l8u_u2_<2+|DRajDBw#AbFl z@KOb|<6qEo_8gTFy!+$6a(pP}kIM0E&|*Cvxp;ayhGd4Hd7zK^Pn729%0u+48dDE4 zAtiKdQN-egYe3tqN4Ggm5?XqrU&H2#l^L? zwF~6VA&k_wl-1Oj;FXX`ojZi8=)RfTz6t4q zU0_j8VP<1vV_+y~Yx@Q1iqAs>b{0ZTITpI-3Om(FHPsyJ3Dpn`t&@>sTD7mSvl0># zxPolkIU`lo;L+pzq0MAk3@Km|nVXXn7Z;~?=f|0vBjuCYVfOV9Uvg)m_7_2j0#rh- z`z8>{ED8N&yGWyPYlaEdu1R$W$qFziGv9^@*nXjxL7lgRlUN{@of*?gLgeMh)GSns zthS~bhglQ3Nw`_+xR{s#4Xl_f!{70(-tI|EObo}JFBdLcFvp-6GkpjzgrZXDvd3bq zLH6x6ywM9rU7#%_V&zOzGzZ)Htw!T$-$3KTJs}Woi)KVg`TMcmP_`AwxBT@SCCtU@ zwQD$xCfy5DeTe6iFg55*%*;gfyB%f}61q|GSpp)Kgv1Ao;L^!aV2D8pfVVl+HQa44 z*AY%mQ|N1uld3q9Sft<*tJFHX?S_EWXhlkY4kksIJ2y5p!5L8g?VBkSDLjRjCm4lo zr{!6{X%pNvnv2r|nEqg00)*|eF!MADLx9S>JS9O9eK~}ml7^-cA&FRdMxEE+H8{wx zQL<}d9;=kUx?&4GCY9B}!GR*=fgo7pM?2J{+5Vacl;lhapCjIkBOUpU(6f{*s;1d` z0l_vlHkd=*g|`3+zW0>Q6{u?=At5R$I-i6}&KLo^2IIdsy}wmJ#i|UI@@k8>xA)=E zmj>-Q3n-5k0u316!=m$7bc@%{fJgSIAE_;FDd=|AthD5x@K+QQxA_7 zRQGoXOw{R`!{sn|LG?_z)dv`dYh%wIhG?#q#zr0OQ49rFfI%R_3}SALh;~dDvQal+ zi77Y;ZER+G+RfeF!qikbS<8L2brqgGH#(t3&;bbRO22Ik_;o@<3JVLnZZU#?z~2*K zqJb2L2qZLY)O6~TYWq*$eFZTWHRD^h0=7kTjS=D+LUn&bVwjG0wO-CW4JFKo_jo!k z4!pr{VxL%IIX{R+khipGWeuA;G^Xg*f=>(&4`Zl5*pNsM7a}EPDnb>%T^A#Zd2AQ7 zF-U4?;oc`Dy#%7ey@pBD^sv%*NJiVKO^0jWcv_Ex;e7n~5exlPV3|?kHr?*$9cY)> zV{0PBtp>lp#i+`gu?}NYEJQewyy#L;0O}n2f{)4mv{_lsOiWD7&R&B2$0$)YEk`!K zvAm?@w0Zv(>~5-*3am2lQO!?Pix@W~gsAo53L!qa8rw{-U%%ek)^><{U%L&Qk6O~pLgX(%X@QUVpa8_#V5p_Y`Dj-D6Rx{yXaXud_ML#p z`Qi2xMhWnl5D~|`46d6+u9VnEU;*KX0&l}!3I5@T(jU7^jS9;P6#R!DO2L>q5!eck zm&M?BUDSiydQ+HNU|4F6yxMVqKLx5FmJ@nq9@YWNS7gZlhpbG;t@py;UlGxr+$`)D=WRQT}(?n1i&L5Q#{zK z)2FYim{5i7)kZMD-Ulk<0MG$kfKA+i*%Q2PX=dnX+VKOx2zVx`gJsKk; zqa!xwNcY20M{CB1R*_S#0=i(e3TXyP6KA|5A-5YhzW>zRY=cQa=T1529S2aLbMOBA zJW#8>U&sbNy5w_D$cXF24qmUCK^+O>)O7tB`53})#Y^s36j8W%8h9L57W#<6rCN^l z-Me?;ypVcvck{Mwf^hF3urI)B2sK?5WgpHHS3mGc1!5HR<}I@%=H@f|h=pvU&m7v( zWV<-63!eZ>c|t-0L1UKCR!2{4ct9F8>*;wYbX%`;Z?3fQ~mk#ZNwh%F`H4M zIh6|dW{W|8!VQ55dc@@oNZ+Y&E+Dh?mZpaqsxjWi46vCB%$=CCx9j`G(7I+dWDItVF$2fgrce}5yY zDe$Pdsfl2X!|O9pO(ndYb{u%A8;lz~rStV*?RhvB8HW%GOSfihkLlPpp2io6spt#^( zP=`jq6fkf`R0}w+Dg`SxRF(0)NNS6* zFJc7Kgz3$OfWa`s=fqzy+xtJnq8EU5ylky`Z^nMQ^MLjVTvMGI=J=w@P-W= z&;x!hse&gOao6m=9!dT3`EzzmsYk>fe){wYxKdTXe$!Ix*Up9Z+@;V^pFalGFoeVP zs~kP^d5L6B8!dPyK3`3$}h`XDLN^9BpElassZ$(XzTKr7y zWf4tzb3evo@SVVFU$Rwm=H%5JYZHe2U7Xz`BZkXKG^nz{Fdkalf!U!~MoqM~v2mq> zZ^*UkclJFWgJZ>7JTx?P1x+c8o^dvq@+~870_lz;v@z#;{_6>5N#CL`(dK>u=5&Ej zR@8plqLji~ zW7ET@(94TMyJ{F1Lbyxe zBZEzlVl2+v$H$*VX|lyQf5XO&FjdUJ$ncH!*3Fx*9z80+iWNl$qU2(}O}Ld%955%7 zxO}-IRp0-5QZKkHKnF-Y00hH&-oA5(L9ZSq5zb;*j$80s^GO$2Qi*oV`KT$v3CJUl zdH3hXTlg&fH18EYC3iA=&XtOiPI+Q_j+z{hy{#dI!zr8@*<42zGS-%TbmipkXJ_Pjy)6r(3Y%@{2`D#6zt>bAB92pqS zzX;p5N`of4u(~=C^FSwOSSjI#6xGg=NLsCZk4q$&BuqbuXD&N+7^0F<)(ER5Rt`VF zR75pWRfXgSjmb0vzA{NjN=Z%4&CN|s2>>!L5|0u%6fRsA7cWNBXg=IH0TPyY?X5RV zVOVdx3yXpcw^M5B3}U%RR0TcxA%X@H3Ye^y=xf8j(Yn$jBx51V9E^kxZ%{PSI;4XO@hdxYds?I4H{AE2wHc< z!5B7|QDPqkuDQAP(Qm-ML|9o_V}IP{^T6G~4x%aIhQ@@por)~yUZH=)y$s`na=N;@ zuHo~GqgaEC3GKaXN8Qt%ug}EXbn%wsNsR;{jZ@Euw_I;_xXI~+0gGzJU4(HnJxs#& z;P0SZUc}u*IQ9D>EW84D0K7+pn}v};a3s4d zMGu%7kRNVj@>;=Uau~EnY6<kCeuNVWn~w#6<#2kqNp4ODxHB!I z+nn;&`bxYqcP_0_$`HAT?W{CKi2QMRY(0VLkfC0_)YJHtKF$m~26`Aqi7fP^gouJR z6>&9u8FzATqVtKR_#*aA&6Y5sgR9*Z4WZ>d*PLd^z|&gKR&E9wXOa&~JboL!Gu-9| z8pqQ_E5o$6KVVJ|eAmyyev)}4qL9U6uC zp_#k0Fk9}!%>*^xGgl~>1O-+7G;vGP4JTsZ=v9uFk&=QL)T{k9YUaSm514xNwYB{N z0%AhC;^bjHpEzSXbf2XhjX^%Vi_oM$o_&W~5IYn1))}CP7VDXwZ z{XUn4$#*IwsP5gp`&+8M;z-;Se2(IFb&M-!wGN-+T5c~d8`^HdFNra)S>9FHDR z-~5yHR&!t#HZ_T*8l-aRRwE5OKClqwN^B%`KZyCPF(XP;RlDAby*U5SW^vs7ABNtE z25~s)%eZb=f4~a5SQsRAc6Q#jmQrFu8k|eK=7e7F2Va2%D}5(}2U&1Wa&Go;(2) zI=uYp5g-72uJ`f&8f0GS;Kqz$2u+gS8eJWesD>3Kl*XpX9j^wO8XKXkr|CDyWZ(IT z;Dq+vLMLRS!@FA$IF7an+a`a%YrQKQL~XKmq;nDNF%=b+f{5F@&7+;~r#C^Vwdt!m zfIY`qGI$ozUZ_a_AcMIJrg>OD<*r_>Pq?v!)r6|nIzAnzWs5@>09siSKgQCI4#NHB z;o-5caP9u#gU60Z$i9G~WnX;=UPmF?1mz2lpDy9h8^f7hGj8zKHoa=4%>unkZuj(RU%xgQ01q&!}XyvI-M}y3uK~Ba^?KvX785Yo)nKqQi^bUuh*dK5( zB{NE(ONWeC2*#djKJbk&DYeM0aozagW-Ly5+*&yE{e`Ad)rX{4@c1$)`4I=7RNaZZ z7jx*{GQ2tY=-Mrd(SlGs(Elpy5d<43Tn zSZVl{KQ=ZtV%Rg%l>7#?_{-QKGu%D4RLVON_E~;DK7#RJ?gqwFUU!)Ek@g5TH#a|j z^XJc<&^Meqj8>q)x3@#fo(nyt>)nonO3LX*@#%*(u3jZX_2buKK3)=JUWN~>t+h2c z1jCLkWMsS5b8!SyTe}aNj3aTxfg`jHUW~dW&kqqo2geV>lD(5Yp#=we>cP2{{0MFf zr`z68$Zj(=;`EyNEC5!Nj4FpqaCk#|@gEq>YC=$a!EMj%0|_tk-e)rvO)$26$5qv$ z;-E5IHSEApksUybEoU~~fC_`o7B*ItPj&H5=&T@pSS%cC`-NzPLJQTPc4!YZH9-sD zhTgPc1I~|0&pi)khGye^#-|-lhd;g-fN?LMjFKNTRSwhci+A|ZzH$|Zn-PasRBMS= z7g~<7(NU9=$|)BGx#Kf3PK(OoFfJXAl(w*yCwY4A91>caDT*$24eYaF9CyUfhU3*Z z(ul(tJfeMgg@m`;!nr(9Z*Cmgn7*=7d5}~w24g(ogn#zz*{s>p<1Kpxg@kbKir1j= z)z!Drm%|dSzTJP|09wW@_};Pagl#sU1UHVZYM*;FYJI2AD)e1HcnC2XaTlvat7_+< zb>yT4B`KTXcInp!cr8aq7`1sZg|hpPyk6T1+bru zsKG?XXTM;43pER=#8Y4m zODIufN2oS*URJq#cO3giDcXci7A;NT`&8Q9WH|I8U@`b2G3lbNOE z3Rn+xwtU15ZL*ELfx$59HP;PW<-!_6FHOFn_$wq0;+*gldDvbw*03exJS*T>NJt1w zZSU`cc*!>TOs-XYGR7Zp-WiMzA2nq-f9BSqv_4|AW=Z}Ly`F1!5M0C?A)94e8rBFy zv&9J=1l2R!@MLN#s@|VJyo^Q!L2WkLR_K5~x%>_&nlt!*U4+zMBo`ahA7cIRP zr*o~)&r>6%( z25CAzH~oxX4~qX0CZ+?>Fd)DQLi~n_erieh%Bw4AA8^_=i6tnKI4A%$PUG`#o|_wS zbL|*6yI=Z%?P-Iyhyk_|xLHI*1Wqj@fzYvPE7RyFPY`&T=j z7~m8Gt7^tqoV-4K_;Y!=KEzwJ1z?I$Kymf}B@R+z)K5w3Bjhy1<2nirax^+JvNg|M zfR*)FIPQ=D;T>BK3j&G|Dv5q`%7E=y?wf3d3Y_|hW_Fc~QpOJ9uvekbTl8KS z>7gi25S9nb13=iiEe-o~-YUd5W4YW1?qPO=qBq2irNp@iKr$9oRrUpHkR&WZrgiTU zx2<;VPSo+0ERv#S-$ED`E=1HkttbWz!W)OQl3c0i=!8*Je*Cy8;f?PCSSr{l(qFlJ z_3btEWh|f|*d_QZp!ZJ0&W(dlU(v6aS8rj?ffE8Jq%~GkeylAZHgF(t z>({%bHcasA)yHK*uQoO|77@uWEW9w0`2}Jblq3{co=JW0R-BkJs*SD$wYvTLaUnuK zRWHnOwh6J!!f();QBzmP9V=0fUKd%AtX&O+doCG8Ts*`ooRjG5>9Ih_!r>1~jy?)% zU><+r%My4$*tKH5n4eI~$>2C?I5DT3$b`iD`s!@6NFkz(n42dWQDv^JxDOQO!r%bn zgL1A-DrW4D9zB|We@I~q4Ua*9_fk2SrB+7CGSWwr zx+o`-t}@$iR{35Ig-y=Q02eFky25O0YD(EPR=vOO2ri8(v5kHnt=eHH;#gT#CAc(P zu+rG1t?kHl>l|DR;JDd0KRtxh`5rKWoK91Z+Ql9YXFz~-G;B4%!Y_ zAoMx-0CsNMMns8MvCO%r0FtzlgXf;2QXU=y;dnP|b~PD0j|$Cq^k^S|1DS>q?^euH z$;gtH_1-+TN0be{J`V&^IvYmQ6w_5;{|eST5l*THzSJCG0onKvtkSFytsdMJXqO1t3X>2J)npV|RMuZpVXG-UdaU=)f-mTx1wHo^ zciNm}53d1)E%?f2XYoZ4z|M0|0|ID9`naJE;(HQq;sfFnm^Wm+0R->B=o|_@3}O(V zlLTW;aDE5k+w{Z)$K{L^pl`X)6DA3q^z`Z(TL&@KCpb6@-<{dHFinR=l@)TZ- z87~9j!A3YM8|M6%Oo%P3@ zvpDgGIk#VM@G@Xq4dM-IrKiwrBPcb?qs@mxtvg)+bgh2k%RT<;P)6iAw<2O zICg!z;h{oE`|H-OjjN}}B$4=b8@3Wie`M-eS2jc8H{D^gCi|=T##cMR`EZhDerXA^ zqB7lj!HL2>ploc+%)~bffo3Bpp`w&cj;cjTQpR51ig{jCUhDRo6j+iSX!EPAsLrJT zmcaviOL;#R6r}3Y;|Lj0^m@?40xEoy2eyM2$L}6)*h**!^ogkvp(Cx$;f!YuLtb{N70^buR%Pp^zql;5{+wx ze?lFGG%{!+T3T9`Zxe$COh&OS@^!_#mwIKBI@6@4!@%T5~ zXH|7|b$Pj*d>sbScrj=Jyap#0N-k~Yz=>LEvFk7Zs0 znT9@V=#mDWiuYEIXPL}8iv_Wrs^m3v(REQTTRS`XwU;N=>jrI0(NiyX+E(H}s>LM> z3kxzfI?gdT0)_G+FCTw3%C%<^z9c-n=iHw@1%)^%nfEla2_XrpY41~t(|n~GWPm4x zdEKKyHW85yiIbFbc81vt&uT*mLxBco(`0$x{rmR`!6L&}Q;7f@(8FP&4Ptxt@5j-_ zet1?nL`Y@1z)U74rkK}0GCZMH z18H};7q#m)(#AMv!l}-4qvTiYJ_Lr&Xg{RnYzHifcym;;uYNkXEKgV0cPiNU*tt~u8% zOjrb}_QgJv?T|xrD>c7Z+|i+)J^9)la8N!$Eqb5)UgP|M7xlSmzqX!e*~^>c^N=>{ z$hDUE!)CfC*Wo*@Oy{LU=M-;lu{OciCiKTpYziB-Gf*0e8IkE2J-HqBEe6vLd^yK5^srw9KbA(RAZCR%G|>X&RU} zovz)>oZd7$LGz61m!yxwY-dTp%A$x)3bYAwrpW=;%7JA5=`Bs zI`aI-k9p^={dDv@WL-_VdnIYaoxYqtu3a|qb&t38ox)wYwI%`h9p}9^Y!he9m%{SY zy_d%-ZH|U>$zOdV6BdPRYo}3jXfKf*`Lsi}@^Dad#zeO+mrt~P#DR5;ZZy5!-&;!_ z)r>eUI+QwH+Cg_#Y~)})IPSO3o1R%EH7)^fz#*B3`l zbaY~Tt{(4tP_pWHoBH!0bJIQN(^b!ghxG~$Npg6!wmLcr#+(V`xy90RuYZdZo#fkl z$UAU6D6Br{;Tp&6TK9&Fca=q{>hL7NHBZt48vgwMY`o$>r2sX&LONlazexx4Wi=cQ;kScq^-j(Jtlbwqv z<`KAUc9aokcP&dwOOLf3iV>h!@q6`|&RF0i4&C|jvYwDmy+IYIm(9sp$0n)~-N4Lb z!<29#^+st(Y>4;r$y~X+>{bapWhZ(~HvV(XhCffF`IIE(%rw*~oOqjdLe@|*yg91t z?9Z}?gPFVQEScVoNM57GrzUjw^(nsIarVS_pSlBoKHsADS#ZX-G(|2N-_5W;6erd7 zwZ99D)oB&JyfQLLPF#zrXu|9ZU9LCMOZX0=$K>bth;1{|vBdk`6|@pgW04URZnw18 zcsEj3a;?SJ>#gNm2D3wFfA12GMHPT%{Q2|gZGUYjp0@4}!N$J3r9o?WcC%Mtp46B* z={%<=gM>GLp`M%i)!Lt|+wN`_l|B42z1Hsui#FZGS^0nLLZh=6!sVeJ!)w zUqLYZ>fO7vgVR;(@7vzCA--UXL@LWKt<~ajGpJ=xs>IdLRBa$#sjB(g#UPm2xAlf? zDDyB`-~aISrqhpE%H589JW!HU!9+%S@z3`@xZa0v9rKp|BKU|f_#qZ8z4T?)9V?@0 zWvOjtX|*_dPLif-bQu3rqqFRoD3(!)SVOwPb534fC9S-))Qhnc+~en78V*wh1wTd! zA~HPVIBs8xv0QkHAlRFESkbmDC9qli)gLRKoD+++YU!fLd$B7!Ss*((yTFS2-1QqL zB;@PFDw~t=j6gQ6)!gUen{(Y&#ePL^ONv_v=)bY|&v>%Xs50Mplcsm$*`Me2Xr$U! zb8e~FH`lahxs}`v)Q`{|8&e53+1zPRC1CyV#9pKCFD4kAdsG^|*6Di4jL^|=fA#nI zlKuSg@h0<)^2cbbzBhVj?m9fVa)eEqtOp9TyUK;O+(Q?l%R8D$86s#TNQy)II(ldw z^W7dflXc8A$37zP@IdDH$$oAg2XhvqIZk04B}*)WKVzxi%f|WsqF<5?4@&(zA7uqy zYoFC?S?XuHz;Gi~y59H~1SHBYZu9?>zins(m%ZcPjvNS^?`5t ziLKd3jJP$1?fuQKPFkElpDo-P_5Icw_XVq|b7Rt^jHAfF?K1IJn!lslNNr?ym3egY zlf55MfH!!tzM;7LEwJi$(5IbX5Ezv1>vV{_Q}{ANJJs+O^2czbyX;R?vAxPGYj{G; zZo^eW2CC<`}kj>;$JTzk@h=n-LjV5&B@C! zWy7KM4U!uriv>MkS6o`6x?#5F_^$TPBxlT-!|w?gDwRxze!pa+z5d!2*YHzDe*t><~x z_kQoU{nxg=J?o9``?}8SJda^N_G3R%0+#!G+p!>_9~-bYS$|G5!O5Y1|ff7f^Qo%R4hXzgR|*fAN=>|L5+cm~S9PY5uzX*T3f7 z!SHPFrX!gZ>s=YoaBbw=G9(Js8<<1O|BMcBj=REFs~kj^PPXjl#?3Mp;g|NaQTlHG zA6(JDuQBmFo`^n1l<4+K42iyb`?f;-4~GW{xT9K?Y|2Ngq`SXr2uSWcFH9iU^sJRj{{jO+g-zUA2? zCfU1}nv}HHr{(Xmy4SRkZk_+1eyZb!VEEbvElx0p=JywN&4rG4F^gM^&A1#=SGQPL z$7@ob?$nlX`ux`JZ>}+vEir~HVS5LL)K=wgeA+1{#%`?ITj$LpCff1PyUb}D79!h^ zO0D}fyC#sbha;|r(z2nnP`fs<--7qMXi#xVql4}y{%bFG-5XZ=#oR@|Ir)0Nva<-Q zrFf-vf#Ai%t*`j-1G1bgVqsm&pV4K;Opj&_-0cXxK}WY5byshORm&eeG}c8$At?3Y zoZYuCzVF|IRCCF=gXc_ZZ?EL!hnf+k6`Tb;yX(2>bq;uK@?ziAh)x+Vm+st-opOHu zj_vQhzQ5qS^=-aicye-Z-dWXvJxyjiJwJ*Ik?(ck!f97Ig#^RSsAO);Pj`#p&&CR~ z?hw_ALQwCY&gN{Jx|}JT_$=Dzm59$3s*TzKqcAbYj#xJK4*;K5 zL62U@zV9lkTRwbAwpn_>ZX0o0@80IT30O`My$i<`MLF;mQPTlU$NS?6cKZb!gB*m5 zz_1e=j}5OE7WDD_Z0a;A>xcIhdvX7FgoD=o2eVYCtdFW!l^2FkZI0l6&6l4$*nftS z&5kqu?pwpeP-y0rszB-4?~WqUEsQb}Q}6H94Q77s?JU>(D9--O^wdqIe#^dt3>E#- zH+kDd784y$%1H+JCV#o=+MzlbEZNMIRI-iOSanfE>vWJQGh0_yxJTbSvt{5&W=8$2qpmuztTez>`!9D%eWe-SJ;NtEYC*Z=re=Krn z{pO>BpT(KAgHM1A6xNhOu@-23kjJOHGdL5p{TlVD7`xO#3;Fdh)|4di@!611soQe2@3-Is8siiu|kNyEGcIofe z-vaab5TfPGQ330o@C7PcOVY0F4}qh$RHT2D{ku^*@`nqwX8iSS7@fZ>to85LKY z+I~vQ-ZRIDc%XU8|MHps{W<;~@BbGgi!Uj&n$I%ZAu}5oy?fWLqcxT;?h1kWysDH3 z7q?m$D2w+iHvS2)0cGo58W9=UpD!531Dx!&VK+yWbz;jA&npcrfxcWN5At@g7cN*a zIVf;Rak&=b&FWVV7VZ1L_|LwL!N5@-umJk46kil-{_7gb%l*z@Tc5POA+4KMebXa7 z`ZK#Y4r}ried|0elx}UVLTHr6i>s)buP@Q!FKCN4S#3x_CWbAXW#psXv z{+}h@YpPOuOCH|5u(kVAM$?_Dj*Q;P`TXraJV4NPezgCL&ZRG+QRmJc@Zx{N+cUf= zDD}+5P)UWf&qdw0W!2U1bsm@0=MC07Z_(^%AdjgQMT;kydcGx8-n`Xh(y~-8e{gWw zh2}})+RpRV-0JFvAHt=3B8Q%)>IUpEdi^8E$J!xV^Wuqup#?0*|EF_-Jv4upQ3+JB z*|u_I{D%!*r`R+*RW^#1X_+3PFG{zlf8F7$n2|0$!!Oq#L!q<>PqO+^33O$17#n{Z z6qAprGL;H}ID+O+cc+bXF503tv(s@r+8HUPt>a_EN}XGQV@BAiX*UH$d3kv%AYDkaN=PI%?}pQl2n{vvj~<8A^wg9% zuQ7WLdLBtra!qP8)J=hzosCR-+WBEfbgX|Wy{W4~drr!+Fib)x^dfst!vv(Q3Iy<0 z4#<*Qe)kl;#?abjvN1!o5`E!S0J2d!FN=r-QIDTyTk_0qpFt1$;eOCRKN|a$dzn#g$bGG-Ja=si6 zl(n_J`J>Tc_TKenxD6J$z;=W?A4DwvG$Vh-csR?^OjQSZ`->i*E#iUU;mL{#6(C)s z2aJ#aQL+KKMlkp|WPMRD!;^6H8=x^dsiT#%7A--feeBjQRV7aME>O21_D0GjXV0ER z4-R<$fRVWcs@Am>mWAilTbi;|9P2-G#Y*q+IDGOB(qKePGUXkQNd5~tN|p?5v7mbl z`Q}fEm#(#gY^duvqR#dT)bMm6{PiHXD^5@(N8coh5|SvGXzj8D0|`CRlRuu8qo8)7 zNfP3C&<-DEffl)PWvyQnC+=z*v>vqof9>yQ#mX@=*E~E#kLp>$iG^o-C%y8XE?GBQ zd%K=L{<0F(fhgwt%2F1%4E_KW$hr0IF4TuV7?aLL)T*X`{T0PBlkm#@P@Vd`p^fIItozQ1GBCNWt`zM zqV_>?;U}mZXE^|FE7WXibRBw8^1lS`87c&8*R0{yD`Z){dZ4CgwkjVTnxF)Afqzqk zYA`xE&HHBB|4s2Cd1yvgBFdd3*h%m6xq3Q_#`YDQ zBH#xvU$%jhi%Q|6qM{=8?c;m%`Zao@yHHKr2+jH( za;VUQdt{57bZ>Y9!Xh|E^VM3#W5+lL@1j8Nh&F`GT~Bdxi)MPwWSjKWoo}9+iUuA1Fwe^G62J}4=$oS`|bZOe0}t>1EPylqb3DU%_U0Xo(jJ` z0>uRoj8Tolb}c2HN=ZpC9G0-n4){1j#qK=%WQfonY(SHJ56@73dD%}WRf_W2=A7dX z1`SXOTp*P6QO=P+ImjfVre07Mu?VKj(fW~I5?nt zT~i~%%}pqy#l3iOpU}02!V!4VtzIHcpuBr|d7+4GjQ@kwnS$?4>y0npzb8r-M#j*~ ztRqtoB$C|~)YVt^guk)td;whasj`#dWoGi4Vh>bqJm5yEYTQ<)bQx&J-Ay@6APX zc-J%$h_T5x(z91VLV<$lloId4UOK6FQBLot{+q?KqiLLN53cec#1iN z00vXPEM5$5mm^4^;2wcal%n~x1FS?Ikw+*af`>ttfj^kY2&=23X>Ks9XeJrDK9l;r zM{xhkmw&eZKrgD4esE1V%hbnFboyUFVmCa>t@!0->0k(sj-*rbvqC@~k^)Btlon7b7rkzQ!?rlM_9i>rp6%U#l9h7 z;!{B5NQIEcg-Rk!f?jneRKDNoRocPS!DK5HXmH_4Tw0NEx-6ZiudqDPSJ2KiK-6Im zDoPVNn(^%Sk8|kh>6tjfPjD!OjYGmX^mrU7VtDcZZws7e1P6rPZL>W)3oRkj=&9r# z=|fq!$i!$nZp|9BSMUk9!0Myx*kt2XI3AE-;6t+HzZjs{Dsv}3!v0-ZQa_RQoSQD6 z`;w*)LSPZ*>wJ=QUj`xv_}7rIz-`G-#l>UC*za2OjPAc%<>^lDrEGr%y7v5n9fxBF z!q|7nO(XeBg1z*Gc6)CY2+trhkz4f$9sLTE4_Yaf7-AD1)-sPE%?*AX$oc1+IG|RA zh=Qnp61L3e6UqgX-HD`>eEaAk$4Vmij2+UX`HYzC1l8zURqw#Wz-#B-yLa!79Wg(7 z!RvF6`m%wT7my{vV=uDq)v~tEta|l5)&d>eG@ha$*i_raU&!1+D1p`sCT2FMtSc&}gHmaj8+L5McmRr%&}JCx)>?m>ugI??XE z5cUmv%QCCp?YHPagWY3SdNJ@A(9xv%O$Qu?R_*bMWTmXs-iY2x9dbgrh%&L7gNWAIq1g@7pKh3zriSL7MHLB(2;d6;!lQmYmSB zgD}H;egomE5HS`J$AuG=LNhQZ^FumXZ=mrvg?3~UaK*kl67ikX!b$laZSWuBAT$Q% zQ8Gp`*)7D3m4@tdIha*74$F-2ku(Wmhzp`SL-gB&?~foaaMcR`3y5*B6hB8sgvzBa zBxK+7wxC@@LqjIc4~Vs{&*GDixQWB`9vS5uw`q=e6m{k%E`9id^QrkRH$bz>{Y41A>AK zO?iT?`Wp6QR2aqyNK4Ow#nCYW>RBQ>D@k87OsIBB4N@AyxI}0KzKxH>;2k^D8%RIq zGaaJ1i*zU#0~fH#zydXDssP&;i-iMp2ImxnT_UXn-FhvFN0%nY`seD5Q)>%nNTyI0 zW;8YG9>uNk_yEHI1i~&2eIWulLP8_xk5YydO2|paw|+YzWAyk8#2s+$kn@X=?*vI1 zx=lfWf!34ngSWHxfKn%O=e3ttoux2LFbMQ-NUs(Ms+WhPvfwn36gJ%CE(JmoYPMdg zjIL!<8n+>V9G6i{Kd^Igm5wHdkHwk3DuJS-x}*as7v)_)oS9g6ORBp3ZO*wi0jqnL z>v;tQPx{3m9wt=sY!k2vbvB<~%7&0E86+iiW|VZNz`Yn67--F2nL|?-uf#@6n9?Rh z@T9vIBedX0J6JoICmL3qHW8@t99zo&{R%_-W3fwZ#UC$fMnHM)+Th}$;yp0=fxf;^ zz_di54nKM-L9ICdD#VGl_eHH>Q-#2vd&`ubRn|2&6&2*HWe zIE#e2Bqe*vL@GSpm4Mgen}Pfk`)w8%y}s_b_$GNeY(#_PX76we*l(gxN)c2 z9(q=l6|VDj8^hD$2pF-c^nKV}(M-iRm;zH}q-dzFj*g-!Nb*Pzy%#7h9>92ntEX1z z*5?k5GTr7M<KqulDItzZmp~L8vP4Cohi7RjrV*$9Qlg ziiuPN9`3Rp>($YM1VaYLN)%O)RO{Nc2jCd);p9A4FDfOaYb?ep?X-RWeock}Os&u^ z<03nrdKt<^U+Kl1re7hZ0$zP(|IjTeRiUxBe~+A7XH6mLT|-2QaHOiKsfn<;&_{`G z_0F&#XV=b}{kJmJUyAhgiM=2te>)RaQl3f`&rb;pIs}s#K4Uzf49#hnEmfxCi~JDP zuglBp>FHnTJiyQ2_uz!O5WA!Ekx8e5wG({BLg9!ZNayo*oBarrVHm?ALoyIgkpU^q z&CShSZY!Nb8MY{r^AKXkhT*(TZs5?zX>(+W%I zNdQSiuqrDNI-6K|ef0NF_S=zxj)2R;-563K+IP3R9|sBDKb`O#AQSw0`L^vTzrHW_ zb?FXQ?`7ri@1a+Ie&9b!7nwoHhGNF?$Hm)jru-ZEptiP3cstc(8RqbCc=2ojqIIWj z%T9;xgm{eAOFjiQuO0T^e3)eORi_DE;|Og#V~4R^S`j|nuKp0FfPsd$fo_H4Kru6x z2K4-C(0l3OmmxR~K6({8h+t8n#%&9Z=Q8>;S*GEcMCcvD;G`qH&a&6ZNu9Li%qvN1 ztz+A{QyGa*wd;mbxIT z!e7A<>fIFJ{Z?MXW^G1}3tF|#MT~#>0Xv2$cnOG+*MoM*kv@(Sp=E((k z1NqEhLr@>gxIxIw9a;t?2yQcoaeJJFVd5oZQcuQqi;nhdhz=q`x51|PB>M=RXs{TF z%11vQTBSH^-%;jBzoN;46r9g^k?NPZTRlfbnqnTlHgKQ!)AHGBt-#p(ym800Hru1` zWV7&<$BwBlD&;~+V*vU$0M#G~BT^JHFZ77WW~~_b`(&gYvAVeD5eyqZ!`A84rd86@ zLEukozt+sS9Kch&WFtjWuC&zCGe0DD)yv+VsDzz#EEq+9*40sGW zdeoU>v1}+`11m^KD2k1nJtZoGz~rPlX1KMIEC;`LeKJ9Btj}k-uTh+zU(GM3GQNBo zc5f9FUeNTvLk?}hli1N{)gm5Pq{;RIHa;5v^7{*?W+DCpmie2l4#&Alu|jT)eEC0R zf)iVH5f7qMka_dwQvHQ=l*i!{=5Eak={VPbgTonV8CkSsFXx+xt|Xyw2sobpCit-! z8Wf|5Ex_wn6p z*Gl&_&G>Ec#Y>x~#>X*7(+&>2F;_Awyl(ovK=}?Na$4z+@XFJ;`5;OL z0|nR-m=T|adV>r$S-P$TKABKyPQw>$U2f&acI*T(>uPT(v*p9nr6ZTJu|c$TRSXw2C#ia2T*KzB*eP!XMch{irN?~2Q*@v}ylbZ`XK}-azBt@v9m^)Pd{v1P+~Pq44blENS4NvYhfXQj(WJgl zaZ2lDmi1%XUCxrbs0B1KZF87k}NIlgU#2|z) zYbXXFcj-o^Rkyzs0|7_te!kGLD%INyQ8m(5K@bSMOY~j-78EpA!tP_qYq{iL^c{>h zwEqAc)xLAVgW-#sAYj&CKQT43j#6_^pA_PnG%4oBv>o2}uDl$|n&^n1o2)59Gu3&k z{`vTN8ha7rd~$ylVk4)C)lR^gA_t}d)x)Z7TuWw~K}rmRFH{>ABj-Ayo&nrJwu#I2 zzUb8`>laoqMnIpCojEiN9VAjGAcG?o!}f#RP;`l5ZwD4Ub|i!+bR4VqgFE%Ya*7*` zzmUzv#igKL1sk-!Pc-NSBnA_x)B+1*{{x{((Z{H`v>F!6Fo5#RgYJl$#M8=w?G935 zRFZ^Y0<7;2C$A(Z8f{s-7SZh%!aYS*Z##_|VAK2M$sxZTM?Z{)hJQ7EGQ$=%AMPN$bM^Cb9oD9T*i@`5M0e(YExh#^}eWJ(NJ5Om&_qRjuGA zZXA9TN8A*)<7$0FzMTd7O%YfpB-ASmFrwqc`Kuc+}CL>Kj@3dC}38vUJCiNR#}3G zXTaOBI!`8Kn@Hhp!Mh*{oQVz6P3Ia%z=#bF?1Yw1fm9Qm_snV zmaLtXLboE0L4`f>5h^USg5z&H}=@SG6%?@U`2f*y&2iW~J?+ zPv{lLx#f}j1fbfqbd(5Y!O+AVo9|Vjjk3JN{2kL&2B33Z2ZM1=3Kmcvu>b5gT z?~#bqMl>gtl{Nk?9S4x$9fXlA|Z2xjy?Yjqo-VJ-|O2bKUD zqsRvW;P=oI5jazejm6GC*YS2Q^QOfuTC_tQ151ljK@22JC9mmbw!^SR=>m5O^7GN? z`WsqELPHaUE@QSIBo-c-K=xz1>jtUo+0{3Bqj#a{gwJ_Gp%&a(XjtiezPx(VCM}$N zz+$uQe9m_0T{v{;kcY=dblU+4G`pk!qB=| zm+x&xW~X}a;B%}Lns83w-Iosi3QaSDl43^K?Qb3Ue{lV#atb3Nzr(C2X~re_N2JKPdPh%t6(CDsCuA5qARz@7)7ocs@=a|5mcTH=gnipKmn9)| z*$}$&G58_e{2m+}p)C(u{r=4i;?vI3o4nXZ;q+eEv5`j6z+WBsYc-p;vO7#nRdy+^ z>dr60QNmSrC+Vtg2kmC|(QbzPC*}56nO|xDvGD(YULE<|g}>=ffL%94(t4drx;@aA z0XV$uSLr8zZ~^`VifOm;U&{Aw=W6);!p4SnvL8X~!|#7&a@jgL6%Kte&qUO^IWi#> z{Rh8p-j{auruLDPZ8!TOJja&`elIP5AawQQw?V(rv{H z%)AnBm1@%Ph4;1BkC>KQDgRX6b{{7^%3eSAps9m4%C8+44b};t|2DX<)e|ghUptdO z!tOr^$$!S>v3K5+76)95F;(RMiLDloIG1+)onQGo|6wsEp@Os45!&G)PG`RF@6bH$ zpZ%8=|Bt;y`^CTUDCP+hl(Q7f`4TjX=UMhY#i#g)v-H5`7Cp4#pfs!{)aA1~WX#X5 zBA@-choAo%Ldhi8f8RR)wq4GaiBNW4_+K*z$>(o?TGHwd^+u&KfnzbIpZ-SWE|K^x z&O(OLu<8$f_?Ls~>Lv&OtTa(X8?mb1OWTnkKT>Jmc8xSDY&Z7QSW7-R_kz;DsA%T% zG`we&i<+6!UB{J_yi>X;>w>sTgS+yE%NDq3|DU*m1CM){<;tce{QkOg>(@zu2x4a> zs*NMyRsLC#+I#A`*M{2c=REA2?LX3GnwO|t`)n&XeCMfsXd9Bio3w-RkAL)RAWRU7 z%Sz-p`yf*RZ`~b!%+4HTAQUH{p%!$$89)LL;$p~3yY;K7TcKnF%N(n81u!h^ogL<9 zC9so6-@APkx*N4KD|2gvO|LMw9kEt3KU72OI!7YA zSikjMA^Dw~cv2KyQq>cyf#mCTZvzB_Hd)SmqUZtC7UGo7Z}S}N?K4rL{On`uf$Hfu zbbZ;QYl@=HaeNwaG*td7KYfDM5Re43nnNHj7$6ZvR0uXhS}p_=)B!moQGu?aX;+5{ zE!jaJ4k&^2-i;Q#6ZK~i-?~Dw^}U(JbTcn+;c8=d^s@MN~bh<=C=YJ)e@y)$a;>%;-KRBt+_yX4q?YzCwNT;($u8OZHPu!+7mw=Bq)N9;W(1C^V0dA7p<6X=(3 zz~D9P0mK2*)6-COa{zlp&JU{m?muj)R6$JdOAJt!965`$y5ogB7+Z`Wc>10}VrNt_E*y=8%*AfZ=2Dy3579E*e zfldInfG%woA;Ij~ZN%%lcpxgTl-Q+ZYMQb`4#8t(?n{|Fh+d(nM0hAU*J4pVaFM6b;jAp#VKw`teG(VK{y@HkH4b(oBI_&!+AK^l_r?6b~M}(Ysd8 z!Om`-ZVq4x^xZRO*i~e^ZbPV094hMKM?0y!Ygk!Rg~B1EFgxa#ZlW!ZxCWb;yIgT48vP{(YCnCFxyPhkVctRczi zG*Ema(5BWZh(z_k2bnf?ZM>^x98QOD)4@Fp_20zp}17yj^zmmBP8Xtx9bq4*x-8 zZ)Vr=6(#XqbHv6Y+HMgMPGFFLj#Qebrj{vB(@khK;BA5m4daXJ92s$dK?nmZ{|Qwd z^&p+Ma@gInJvUI-qTX1j_gEsl6IQjlqi?UCtqQ{cy8jnOpq{3Jk|&Spr@N@ov5Gz} zD#;78S)l6VGz&m(nPk}KCl`*IsQEgqks-2RKPPc=P$v5FT9ANFFNl(sd)V^Be93j` z;7sDqpV`v(#A$r!-w;|DJJNTlPDo7{0y5gyXuMzHmi4tKj8PWHkNeUsTiO>B6H}5# za_FNw6NJK%?qDo!u%F+j91FuC9n{4Fg9h`gdIIqx#p9wDE*ba?1X*&6$*;c1uZTzj zawaz$G72Z$CT$4A5rE}r+s;UXQNw=($|4_8nS|y@i8l!kU9Pzh^6xngKFTPOwuewG zhSC5wF92Z-?{dXP{)^Dgtov35UH~W|U}=Qv2aUdP^FZdjM&^}@}f)FM!lXCdup^iCQz===no+29?=^9GsE`>^g z+f5YF+2l~ENf%qB?H7Y1nWC8|jDpKg9qJxO6d#o?i|OU~NkY_1&JUUBD3Vq&;c?vY zdTx!gQ=_tlcb9MEkKx`gYHjb;Ja^3E7z-ZofefvE;tU+QdK$M)*C&1C@__B?a;=Qz z<=;X10g%FGi14gkD}WL@pjI+tzCnaA;2=hUlo2P{eVI6nI>39#YZL&4rI}`U&%7L`Ldq{(8T0&;6XPENPZCOAplUc3)F5-4`SBUqjeuHtD}R z^c1L*1_QbO`kbB>-Q@Gr>PaCOE&tF+oPNF83>bAP;w+*cf>f;9UG{knAD~3Gb@53!kQ?sQcbh>@&|*v67K8!aD>ez$C zf&+lt4r0l77&}VXBluQM_o!qj6W$dr{>hb^p9W_Qsn(|`)zs-gRXdtWMFrOu?s#Tq zCRqj_0e!%qKg|&jEMC!V(^G8%=YZ)6;50mGxB?Yv_bBLg>yb8cm zyKWHayV+FWaer~HC=NzuzMvk4&7d0bHJ)4U6CC8b`(JTqfLb6dmziiq`2Wui%zGv1 zjI_WUBg9>|c5Sp!xDXNP4dN3izx@;B1SM$S;}8JCo{}Ezli;P=qt4c8p>fjk3?rSK z`JuJN%MbDhRfLAbHEEx^eEL%^&t;=T1)YrI^z^hddul@M1iCv<^Q;w8ToJ&3;&ZMG zhlfH=%dH#B9)t}|wb^10`i-kD=gL?*My?OPF*GR4w=17|p3~+yH89gv!ETMPQBD46 z$Mj-)dbiuR0m8FDx)@PFv0g6F#L@m{wC22k)#xsVZ8`^a22ez>@QEf*M__#!)sUB{ zI*$Y7-O0g$fdYGkg-5-``#wezLJ_Lp9i5$H_+encCqQI3HcyvO;7!As7+n1RAZ_^3lI%;g|haTMwTDYS9!}5Vh;x@ncNtm<3n--%CvUcfN@LK1-Oz%C3qjarlC^_@M`mN}u&D`%p(+NvBSk}S!>o*; zOh`(~3AicB-rdmrPNH50UmB#yck*!$9+2sCy1KfAfVgkD76XyH{SYi}1FaJ%<7G`S zMLCR_PD)%#B(ytNT|}7>GqQNRsXYJ!$HBp<&FS>4_Re&7cSqxh{B;6Q+S=I>e=~2n zz%WO_XLfcLBD#D9!=J$2NL{yH3RSP2GI%e>a37>Lh8#^#HWJMFldEUzHn=#>$K0e& zCMfvXx2;W35&lmTv&tB^i;8|Jn@g;4EkV`7{HqKyW>m3kKww}yoZxT+wFqMVU}`lP zDnK#?y^-jKj;2XlSRicYiuFVVaKHjTpCJ09^;!MFh7qe}P-XQ5OQ|eg)T%os&Iqt~ zRU?O5K085?%Qy3H- zN4Oh|l@NePJDY1p{~0iD5LMw7f^Lf}xvaV9>z&o3N_Pp+c$SxC6Ku|z81VHGC}el( zgF8qj4nQh<*g4-0Zv(VFzz2a&8FA>31Sx|s5O6E+Xa~>1)*1Q`j9H6_wPP86l_))p$t*kcHHFbIAOz(StH zRdTk~-H;%Dx$s28-6zB<>Nna&y_1xf`~Jg*9BSfK2)+=m$K-&NcvLC-f2&4V2F%cQ=yB5oZ1!%5zZY>`gOoT&32tz;P|jL-xL=Uj%xL# zqPc-Luxdhz#^CPXSv?uuZqO+Ft@*fUp5jIjJwOcdL5caPH<8LY3cJ}&!EG8&2<0_75 z(9Sx)ePdvgIdll3nT|boJRxg^ri1B#)4I^6ZU$UI3ePBbL6q((N>xwRS^$rcxq|@N z1UrE!jH3z+D|Yc>4C8iqt(&W)?qd`kvRP1on_;UF))IEr+Sfi%eZshe$o&>^Sy@?( zt@ES{f+(Tx<;sY7$`KtNBXrEL1_h`n<4hMI|AZOCZ^k24$JcjNM8DCoX>9NBM-Rjs zERU+Hs=aZQlw#%5Wy??lWpjlR9^1J_#9^eYi(2DMFp!92yCdz%(5RrHrF!-ptk-`& zhc_tAeei1FR-|)bYu!i>A^Rez88L(ckdWdOc(33PL6P;;^m%o4oI+%n8ldTc($J#~ zVyvxksPN7Hq9S>zH7=JAt5^Lj+5FNsCW_@tz$MEgF1OXxGt{T%ysP~91$Nf9{86TQ zwl^dWto-u`3sFd{xh;hN{TjHq_ES}Rwrx9$;{$dfQWeZdBpD~4ZvAe5zH6Dh$3WXBx2WMXZV#6hM2X-7drr?9Wgp6B^-q@_5Ab&Lm(0$FYWdY)iBrqXQ#op|M4UN*Pg*>RND*Vg^@x;2W7=NUT z=_~azt?+`0-qqwslx%Sri}@~9Cw0M`f&~cb)YzK(C^tsnh;ZB8sFGc}bZK1-DHuHC zp%v~H6BwxYyirX`vi~(mtm9~pzR~~Ay}lIj!xhI380mzakr^AF%)DibB=SCx0;e3J zU@}tp;3ngh`J4uTtcCz;K+BBS;8pxf+VgIqDqE*Odkc}v73~zv>m-*ZYl_B`R#LB| z@rmtWa^3sksq(TwGPrUji9J}9cl&m-fs5-~5e+J1dlE8nrw+mjL`uspeJ&{zg6V{! zZpevy1U@*+fdJxJ1lf*I(#+{e$slAwQK3&a>?dRw1sS@wYjy_WX(9T18 zIRmiHMlt`P>j zrw3dlbdG%(4H;{4NJYp65Z8Z31$`!D|cOQ~O}^ z3)mIE;l)hgfWhsDAo@l(!@H5r&oBaPubO8^Me2iykS*~0IXtT-0O|qNr?Fsda$c1Q zp;AE{yQgN|^{E|xO}}8@jvcPj8l)MU(!$VxZN?*pI@PIQ;CZE~<@Z0%q_j*9tKHiJ zEx!Rdp7kCxS-5*Lmd>{Y&Sdw%aoj~xa${EV-u*|XBU8kg87=0Ab-yQE9?07 z4YG^ku;ZQVrHwP-ZcN6<(0svAoxBm|2Fw&WI7FZr@zOcEoeTxx5qOXeuF- zvC)u(j;ym&f!JWRqiNW&TBrDPQHKG~qv&(cR-h>GH9@x5K-G}B13(x34mQYH_1$KW zj)DrJP*0df0}U4C>zw0&wtFix>H;22$WtL=x;TgFHl(SgN9r0F= zNh@S~9j|G^pu_v(;n6&64yH(5A;Mf|W||6SQe+-NE2v+Cw19KCG^V$$?ZVV+WHe|b zi~rn%bLYm0>J)(!7df3-#KgpOCfAaXl5os29jkJS@?7yRb*2~d`7ihIa=_+z%p(8eXtZ=x;++g;gQ)-}yPR{)?XPw4x&RJZH&7MM6PkrmY z`X)HGF4K3S@vrh8M$erk{@?=qSzRMSH(ZRt;bjyRHB1GARHwT%0q$TEm#`t0M}1+- zrcJr{9|FI8&H|?J#Y~L244FHy6k3tcvVxDaO<*<-F_0!Io85N;gl$YsY4ye5&}V(oxjg#j2TL>~D=*GQ@+;W4u6TUf@52Pa`9 z5BvZefZ>k_PZZ_l*T^7W)ix7j6}P?uKxlG9JAz>C)SBDu@o{l=w?JnhdkM~>^s?Bl zojcd9Ur)r3i^n+V7cWLv3pNc%Fw3Ui>gC(2GF(Moi<|ah*`M~Rd{2#VCt&Tcu&_1C zTSd(en0b(89p!<;wApdZ4X$rD;VD1lbRT(3n)jp%g+U%e@VYbN2eK6aR9ifM0*m~9 z;*>n6l&N-Pk?Oj+<;}u_sZ;liCrhS{y)zqWWC?S^V3F|mZymdE6kWj?$d7}no;P4k z6UqrX4Wt07{@`$7n{&_lNu`qs&iabHC}$=%3G>We#CZXxqtQKrwzTxQgE%-3_zD5_ zVIIh_i6ZS4a7FRT8oW+FTVNZLBMmPR06>35I4FA+p+zYtH8ez#?bLT7?WC?+ch$9U ze}OBoQF!6{=L{(KSSKiUg4Vx(!}G3~mzxXbZ(0&JtrCZyp3;L&ABNay7_{{f8MrZ` zR|@1L$l-Uxf~Z}Wzg3ueiUDTEM{S{Qk&`5CGEPa!F~gk+BH<{!q23dLQJ^(CHkx`6 z9p-iNZ-(<%SLfNYXAjqBBsB`xSsb60Af&}EnMC{Fhfy9(7D&kTeS;1cIFU5R+2pJy z>cwy1Wur~H=DEiR9S7nnb3i_^y;)M0(|S^L=Df11{3pgX{@%&ya{H6u>bmp^i*nC3 zGKg|6U`HW$&faC|Qr;uSBy~Nl_6SZ%qWYoO9F09}*W{FYnPO$i+g$ z$Do`7aIfDssZ7ckR`)Z=P+)ilMhse<@?&g88*O4#oQ0B7*{;azQIXl%c0&f8i=}a& zMHq)5zt|3({Uqbl-ZkTP%7e<%{Z}Vfkra^S^t7JF0v8^E8T<-H`8>OFfl?LF(_wDkNEd&5d72QS$F z@QTXhPqltgzpAkd;7$A+)m#erU(B+S!efFL}BxG$oNaX`+bK>&xxvCT_l zco$+jhkBDNkV!EU7A0cwJ$v5S&wxXJR=OMnuHE`LkoZX<%1b~^fS4!0s<6XEw+ZB8 zKxc`#v|1Z{ljxJKB;^ByDuIr&EzYO!N;V=jHu>`Ss{&s^Iy~K))3@B*0>m!noQySn z{&Qde#o8M;SGz}^BWf2Eim5wLAOBYJRVW`KfXhO>I zL3qwYqdKe|3p4X+RN2=&M4;=&2xJ6P5i#V!2;e56Mq?`!0?OVg5)@@Dea$F46ppzyRNgL!3nWn)Jsc7= zeh?zYNbWe)MljInWu4`EnO_zyNaNi@`uX`&5x>t4Q%_nsgbv zvE(>KDDT*TbU})|oSfeQn-V~z#OEVBx_%1}SLT5Cjgmtj))2MI4XaoCq8|s)7Xk$A z8=UF5!@r@phraIah2bNHPyj&8{}}*N(cn8SK$#}EQ6wMe>v3dzh18MCdP9RK_IGu% z*xT6!*vhdgv&E)6CU6782vWd_h#^=&6kukrkIxo1ZMY8~0Rw@ukTUe%pR+zJ=gVy5I0Jka-5FPqUV-_tZ25AG zWdBVKy7VX)U(JmFS_~Ecb?cC*ey+2uJ|VBDh*{Ez6@GwIK8kmWpCK7WBTQD(MMTsX zKAFn-4qu_L{N{R@>*$uja^}ED?;=5T6N2b~aV8`$6NpJMje(PWgHwU<%9f2AyTI(#&=~)uz=wij+~dbTL9%tYtAh7k zhm(WpO2aRf@tv$7ia(V1#rE5mY2%2~&iQ9#`X4{49QF386eRlUs8z_^!CaE5&~qpU zLFGsV>jayN(F7U{s@=LRaQ|1}zK{#8muUddf+yC3TuZM$x@ut0*U7vpE)E#aApj3x z5nw`N=pA8TL+=-+S89si4VSP}t4s$Y?2C06*EUH>oyzpVvg$`JIEl5jr=75m>rF~= zJ^)7PfnSVJboJe!!w3n*r(w ze3NPQYSqh?nyUUd$2yTkm`OCJCSE3U2NSULkYJ!Q&-!R4TJGVTl2;KNzMfG&RwNtj zaMMZOEl;o*OP5<(-+-Y2&qM^afrI1qXcf{10!}tHVMJ{?Que&rZ|M1e9VbJ1@k_`+ z5W&M@e`vo;%Y)DIBRqYu9nBk)XbC|V4o(qZiLPiLDIBXZM4NL+F0TXnj1{)S_5mQL z2`7l{){K}GUy|8)JUld1+|chH2E8UA7bt(x4J=g6=R8RHsu4v^u7 zV95&s5z5>_^qdlq*?Aq4Fqh#g7262Nju943kE6cVa((_Bb#nFA63RGrg|v_Z*&#cE7D1*{@x z^%je;yL=+1c@QxAJ2(Xi99B3ige`_hFOY(PCpUyxWep1p(A06{xfq%*0RfZD5i$S* zupZf(P(@jekruORrlx)16M)-Brs$APaX13NDc*n&iG&3{98aSeJ%cC;2CZ5!8Qp6j z;-?=W?L%lTCo~3}VKhS#b{FBV0DMK(2bqFVtdaL7p>CW*P9PDp79juNBG~i$1 zgL9$S4|^R6(*sl#cEZlVp~tHYxdRGE9f;H>A9$kk;t;F(KD=*)JOp$HvPUNIqNxle z_bNOp<}fu_)ex)?!O~S#)e1};OUXLb3)2If6pncEZWZDhguIx|GXhT-Ee#BZh3yqE zWi+RRogV+>2;)zPwmnrSzO=4_G}BeQ5gaJx=9y$O31%5`5KyK>L8O@Pl)8|lq$7MC zF2FR^S;xaf2LNhsk+3xnxK0F{C=}{4#IY^Ep_knguNBQZGI!9z?#Z%$5EERg>Qhev z1_Q%S?%1*WKp2r{Vifss#d~Y$LMSzNpjHQO^2T#xw8$YVnR%?R(>wM$gg z7XAa{i?W*Rx!`PJ6-l28GzJ_T-(021T{QrNb0517)efSd0c4LfBO~X;eo=(+JAOP& z#7r0N2(hy(Bce--7zX6ul}D9P7RC$=c;%&Rh{7M5tsv3Ysx4wnTemi$@-oPr-GI$D z!r_o0e?@>*z~DIU#A8)SAEe08E*FBC;D7>x*2N&VMBej63Y66+k`R0)mp?>%C@lEO z-;wlu+znsh_<2mI);x`QRC`gVf&ICR=pON1@9izHz);u%R1Vp#Dz#P3=>30=iYYq% zS-~hmpE^Khq`jyESz?BL3WTHEMZ5ATsbCH-#rg416;zY+(MO`igSUY z7a*(^w5tHIVCg#*dG!9p&PDHsH$a_L-@rh(@Vcg%B($EqH|&!s0=4(G+B-aDo%Jaz z_4{y%R^w^OIND5Rj8hX60bd>>53WQ?1wT$o;X5;Bm$BikGp$=!1xyF9{hpF7E=C&M zR>MR`!mF%Um6`9`caK~vo+F*ahpvJUKjlZ)AJBUEKS1l~!JEza{B#7)4~>BU*iD?3 zG1;|o#LfR2C@#f(WIhd# zIvy(gA>r+UN2W4nIRmFXHII644EKm$X=u>x!NKO`MQh#MO5%bqYjLyTZ(I8N`;Wb; z4J<6pPCDJ6-R6BwmLP1id$(9FB&wGE>(!21n3yhEin-iNpl;e~*S5+)O?BlDc|kGuXK19W zqdLC#qE|DB+p(Ew54X8H(-C3#`>Nm}Gs>*3dwU|jQ0~iFOEHnGb3+}=_KUnW{$_jt3;p?Xyp6vJ6z4oq0&_Ns|MN@CYuW zoK*(a?=%}x$sUPthGF%ZHLb%Xxzy4IPv6AcItum4m%LoB4N^bA6H8cP(zzBDJyv|c5O#zt8CA`UiSKxj+e}1EfzL-M{#Nz%}p^& zPe!s(vLm86gA=Aa|J4cMFDE}yC%vnBbV&R0x3!L?LkT~AoT#nM8~d?OEaTIPAI)Y> zKeD{a7En|^$Z6IVi7ZknpmAX-KYZ1cY|ot;?#<$vt{E(tYOu_|#n@WL8;)k%1m5r{ zFPfljM49#+^P82_T<5}zuS=?(Q*~tDYpkW}NNx{Gth2KVqVjrC1A}bdK39g&W(q}M zcCnhtl&|EsIE!um6HW^!8igIc31?-743$|Hm-f`m#YDh#{;0Lc3F1A?ALkz+d9GM3 z?^N^=m{z)jH|V?;Ech|ae?PJA)U;_H_dh5bueTYQNaPGpYYkYHqWz00u>z_9;=Zu@%Viz1z4^bP4RFBfCg{iz{$M6>mMIap@jWqK!*{H z1ws48zx}l+O$YXo7Ej%gu4TLR4Z5YGE9u_L6S()1BhR|_XDNrH1r|v7Q>n>yZyId3 z=^MzWJ^!-@AD^ePG9<2RnUN*waccWhf>!A-9aVy!P`Q0}oI6l#vQfYpzI0USR*OG@RYu@TUxV#}uKE?}izt-v|ZQ6ht_hQB{)i-($u za;DD}@!^Nh1IkwHOS6;?6#$mLT;}SUv&r4Z* zPfd6w`Ri{jBju6;T6$=5TEfP?-lOsa6sJHW*|FnQmoMGWJ9&%BE)ka;PIt9w(@#aE zG*il=N_i&r?`Hr3HSP2N`3$_yJ7dUqvhm=Gf2&3!wp0%~qRz$5ZTS=W6B&(rvNy7a ziu^zPal>~%Ia{kfJyclLGa1wrK;MDey;hO%Y0&- zx_MR1H-lf!me!wtB6=;nslfVY>$QDm-}Wpu?Z!Zu?$tSGo&ypOkGNF|F@mPyd%5Z; z9W{Fv-8fk<@&;BqOoN#8MMZcgiU+8M*<$52p*CDpH8R$lI^t)XDTI7P_qs*M` ziBzglNMWFi2KRdEAIihli?$1pcS5^b1Zm!v_TNe`iQ2rxG30rUs$ZdB zn>;dAt4H|qY&L`}YdM&d74g5_`Q-aJ=@l!7-2}zfQu^)={5kySZ(mF{d&|MJPoq5^ zP{EJ3pp&>WQoT?Gl5I>yq2s&@J){0&i^ylbJ1Bo^|H8+&|Kaog;rUiVzWLeB^h=xd zb>`9>Za>VSY<*?lBez?C)EicwJw>J7I(nqXIDwPidgrF_)h!QCs+&|vb-Z4P-|$=U z*C8J+*FFj=>K%&~zyPFwSlDypraOa8E*yiqWLj(sNHV9%c6YKCA&D&A;X` zRMO}=WVcX6SCC%QpWEQVM`QycZqhyYr6-yG0YA-^59lo3Ap3WQ3Hdh%_8;2~fA6Aw zfxJlC_3Ym~xQqM~jqdLrD4lFV(0`4$;aJAJL#6%pNfDgflk(qr*e16RmF$bQxcd3) z`{Rxk@TBm$zyAvS(gU>x3paOpaNiRQ7gAIx&#tgUkCdR;mS0W6m&b0+EKc1ni zI$tmn<4=NCCHlQw>gq4qqen7m;f_}s!%r2=eY(tQ(RRZ>c=y}IyMB2#^B5wrvA-;8 z`d%L)VKo@)y5dN@g~eRIbM={$w-q(j-)P3byK+|HQV8zG{3z{S%~j4?e(s%|j4m$q zRO;jqRP@lxIihzo(|Gf6vq|0jJ)5t`>Dpub|WQIHoyX%zLW$QQ?Q|IKg zEbw}iv_yEgqnJ1lBgw__>bK}-`hw?Xk4HbH-PTjTw6yx0l#^!R_g%RD-~u2_YGGNc zyJ76Z+$)>Bp_S2VpLBYcg%@fR`qO%vuq~?2q4_=j?iJ>N+M@Mg=vlSfBMzBJFhHe; zc-Ix7=~0E@Yfn#)?Q#0K*#@O=xmK6K5d@~{Cb)9x%B9z)kIwtW2MciU&C^;Q@H^y9 zHb~;Q46|xk`OdGI3NH!R<}c9|;^B1nkH8d9%E-Ufe0!i+qo1Aa)gM-QeCfh42s!=l zV#V7lztXkX{ez_;maB3;By{Q0><3UpGsz5k=Uh(E{C;cR^1bd+od4DB|IeZC5fFGc zh2Na`PJarMV9l?&EmI+r+Ws+F`0EdJ&f&m36BM)TdI&Ndy;Gej^4{H=|7ATMi92-v z&64+i$*4ghd`)1%<93rL8Z0?VW}V`;S9AV9_P#tE%e`&)X_h95q)0@WlObagnI0*b zrxKA!GE)ha1`6S!h^RbfGL$l<6v~*fWXzDE!H^;IK5uHhYklAM?r(p`vG;%bIo9#M zYZdo%-@p6!yN2^Ruk*Sq?!dTA+!>RQMsL{oTHm2T@3k*{wZ@tM$M)#168tz^GbWw0 z*{@yRPIkY#=+NK2!$0~Uh`j)>XXQi;0Q@&W{@)^nzsLUbO9op~!=y>BBroSJKF_w2 z-Q%}eDb(B4&hUTT@%=yCK7UWBkU4o-!JkvH86rYfYu_4`rI(-n?b^K`3%%sg)>#v9 ztKpyF-9HhLzgDU{8j;v-rTJ-0|C(v|kMPTF4JkG-B&)5LfmEB>s*LtApjU2mFA7O< z8VuB5EpJ?zk25G9k$6a2=+Yow8Uirka%Qi+e?QQF%P#-sr2J$+L8z9ztD~aw7S%t$ z%0jLG!O2*}!l}O>Euczq?faoFnC2O-PD$r(KV=-ac(3%lrUuI#r_v zz3Rgc=FeP0VSTEHiK*brfh;~Sr4kdzdZkt1)*G|WMOHKGcpCtv(D=^#Fwy$kUeEj? zIr7ZOnBRw0?^c~?MK25KCHp^8*Mskf4TflL3lTN`!#;6=eN8ZzMm=qnUVI`^imSsa zv5NTU1YTk$u%8UFc>O&>DRd!%UdY<-Fy`?VYW~}4WPj!{&Hn(SfBF8)#KIGwI8)?` zwZ|Dq8s{3O;`{e#EJ-UOHvHcM%k5&MkMlVY@eAGCsG?HK(0lYhjx3LFURVS!ORgo1 zCx}%p_||HAO3-V?XTH^TwEw-w{<9P0Bu|CM?uw}nBiSAPH=73ewwDz+GvZRqUXCP> z9|3j-C%$!l$Nw#+VescB9cTNq*(g^is~wjgU-$ow2l1j`TK(TJ9-WbQ?)3bs@6LH{ zT>f{GDZ?wZHS$2O0AE&Y`N#k8u{F;&Rp@VUP0cz&a8emwVR-e!w^WC@%g<#OQe0_e zU355zUKE%+E0_2^pa+JDIMUm>+|$H^!9{Mt>U3**ne(;f(I@TB`pv12@5 z{B~ZR5B^$WZ$_n07*Gbub5cayQgdrEu15tn)C$TiS3*Q-?}GxoME?uGEH zUSs3yv5sOR2yo}zFXoJzUYT5DD0;RbM~A?Su6Qth)n(<3<#dLMs+ZE%+HPI{7DS3#yZ)FMh&Qv~s6ZT?faXBZ>-h%i*gf*nV1G zD(#eAy!utj3W=)^xtrC!q%|0>Zm0Dc#%TCDCeJTNg{7GA^=Qc=F6MAsb2FCxSutGy z!pG|$dF3DDO8Vy?uUPr8G=Hdg3wZ3Pp}Rv2|}p)n_U4FFtvQ8+9zNI)YUy9 zNS87|Z18D!PmJwf#S`;8t2?qEylJRZOF?*_ZWtT}kRVYW{thh?kc<*8F9?AV!c<|E z@zGGzh}?TY_Xq>~6BHLg?x%8M35C%}>*YrvV-BV& zil|1QwxIP!GnEE31xk?TwJQ$CXZbbGH7k3uKOZH6q^r3r?Nnp=$H4#rmPs@?6MYqQ9MHk!;wlOpN7)mi zSSI=Bbv)fr_?(_g>_}cnq)6J5;g#ItUv2zAIRpD*914LrZ1OZK#HAk_WX6Jn;M(GR zXRGzA%gcyfK#1mmeRgy-`!{$Q55>SEw$L<^g1QQY=)sr2fo>&2H>LIo#9SB|7&b*N z>}Tiq2J-}Ln&r#F$h{pYv?ysbY~geKRT58({Ww@5bUFoH+Y!#P_}kV!a4J}siNI&8QAu3gnmrs;hI19%abhJjVGSuMw2J@g0 zS3M$f!ek^iu+h{P@Yor!2;^^|@(acilc(yy{?p-K+U@^DW{F(?2_SN_5C$@o;_IGF zXqac-MFY;U4jr&}@YcCFIb}xcv>N*Uz@koQ-)xADIyd!D+z*%!;sv*PkM(2b(N>?p0Y+a+E~qc4t%F)q5}1ZFr*j)FXZ~}-?)Eko zY7|{OHyK<*wR}0U;j!SU=C>5UW~yjAg@y;E3shHgU~T=v}r^j~Rf& z0gl^VwAX+#u?h`lt5!K`z94yRVeNU%%slyeW!2sjPD*%?cv)@rdL~Vk-?rrSaiUDR zXb~F9NcChN|DVbO1+@hxY>$E${3|U{y3k1ZU1r&I6Ad8;uS{gVRBw6GS$=Wprprd_ z>}VB_JikYBjs6=hUBC1~1dLAmW=-MJ-}zp&RCMROBeB~+h=a>GG+x}PXIE^4wkhC(s zOSF}3C5oBPy%Q5A7i5x(P?e`ZxD2d_ykgbS`pwb|!C$Nz^x0M-i?S16^h55*?>wWYAFQzP>5-pX35ZQw zU`zs5?Iqp9asUG)y`=OKe+1Um2I94FsBkb02Q$v*o&zasn^LHj2@RQUhB zE!C2f2z#XM*ysNYFz(;0o3C-xvDN>bM{T{!!Oi$5>qNQk>saK-(;dsix08%ok#+i; z98E>v)2+Z3Ave>{bCv@yUO$v--Ro7wpU<>vF^7(}#*uG~qQ$NBxw|)?U{d==@3&@) z?yY5MObluV)W5ybf4NwNL1Df5e#IlYa(!vveq?(d^thLwOHpLf8<{%y!!fE66z@FC z&(q~Er1Q2X-`D^BB&1oc&z#BoSL(R(lf-Uma8uMK>)+&^qKZ8F3v9+u#@~ts@k+Q; zf6VaRD;-To%hcF+`#2rWocZ2=W5u5oj&_d|(X;$7ufKL& z8okkNgrt4Br1P`Y;$IAdZZbBgRx>Kp{IQ~>L@!N>!*Va*XriS0=M%p==y%{q{7JO1 z%3qZ{1Vp9VeuqZ$Kh1l^Z|MVC%&&8Ha^h_j^y+*LhswyrM7Y_Sl_DY{Xc30Oo6hDP zc>(C?BKXj-k?54MSgWG0-ja7N^U|ePaLZz%qOyj^2~{Al?9rV6wZFf=y(Y+6lRRNh z%ubpG%NmSAOs6_I12IJ~?)uT^dhec5SSA=p``iYj;kwbY%j+nop>bP0Z!wwF^=#D@?zwyzd-OJlRQi6gTw8tVxB30GZ z*Fa7!BZGHW9}6SnQ?M;TP7V!o`XW&Yg`}96F7O8byzOWi`a^}ADcVm2*N|T5t4LkR z=;-JGl@fw78paQ9rw+#*9kIZVqIwj!F z3k&6yl}o^;;y%=bt57Hm4QEYFk9={)cTR#CjCWI{0F3z4r%&Ai(X*aIN2E*(y=gsi z%~vj69GZbKc0pfWVT2|PI}Y&TOJ1X=tgLjVyRSzGpZy*4fo^vlFE9zK3i>fIO9$;g zBcr2)#Qzr|asnvEAa@ae46YhlX|;uV5HnzDUBMNDoR77Y6$He!Fm@}9!PLcNY(;Zv z$!q&&@DkO?WQKK5Aq5J?B*Mku?*}o&Y+@L?HWpwKb{9)aNN|_$H+t%DwmvaLIFQ)Q zplkB|gusc$fdfm~y{mdK(MDxZB>+FFlXe4>`@Is;sN1zHPeY)>QE-o%9 zh=k|lc+;ipH$ybFF^7Yt1Oc)D_@W@b;zg%Aog}NG|CyKj2K!g6x5bXgE0;0*$d1iYt(F*$!T*>^KH&=a4FnX3MJP<(9=U1v>mOUHax%%JQ(ZnyH?R$*&>p>*(u4`TqSobuZe*^u8GVSZKmF$m)4UG~_*Ni`iwd)84_sY@+wqFE{xcuzKjT()WhH zK-XbSAewLjb2ZG&IPRSRMI3j>QX-(AwhfJ>Qtcq&Ccnpab;Rrt9DaiW6;2G0h{OUr ziL3c{ZWJ^|=I%^w)0>Yguxh(lgDM9TFf#Q3Ug0@q9x5gi-Bw${mjg*D?9`=;FFnER zT1%XLB+?DFwZW|D+3_4~-@kWnJ{rm(6$m_`6A$7|Cm`@0Nhl`zZDM9daPk;xZs;FK zOS`T3`E#{1X7V`PB&5~ykmz9hlpT8lBM1YpGu(<$#OPSiB=X*jMoj~j5@H!4a8qi` zfiR%lBgF;#m@{Y2KsT!R zJd}&rE6g$-HhSMKEGz_nUxSP`fHut4a3Q2w5dtM2&E2D>aL2U(GBP$PqEyHRrD83U zdw)W8?5MHv$KqQyuU=?dS@BE_>73v7d%Z{+TR9^iIN%o1E``yTOczvnSkW5^^hW!F z4_ZTM8-g{-fE!`G-QzHX0NY*HzkG0^cO}MU=-C;06MT7s)u2Sq96ig zYKq=8WXig_L}x|E&j|=fYYeyYPys0b9N_-h3r|?4CbdBxGqvyu$)jVp*rl{bR20p4 zn&*S&h(SmWd{6n_BdLXN&TxShb#ih7B!gbWm*>&V7NgH5BO{X+6LY|xS&Zrg(HQg| z@DCUw;F7*L`DCOUWF&6+_RrFF@2_FzRpt>B5{g<=X!C~) zAcVQf-XO38S;}mV;PCInuG4LmLE}@f;Aw#Yd8~~#ziB#*5H0=VgJ?Z)bCW1j#C}lD zDQQ8ximo%fY|JY^U*xx@(eMi~X#>0U+YdOqF`@%1|Gb!hfL~P)TKq%58|!Ikq+x3# zW>Hj9BAQLVDM|P@VF#I-J^%oYbNckD*gf5CbZFkwW3da<)Y2lxnWdR3SU5~lY7isx zrtTN4#s5!FXN80A ztk$rRX6epD5rfCF@8`#O!@9gn6}&Ql8`bNphp^c4j z*IHV&@Q)BpJ@W3RCK;mL?-9C@t*`;niFi(CYl%G|nGAz=R2ICvNaQ|9;Nb|Rc6DW- zod`q7oSmI--n@x}9dYN*&I=>RC1BehOH?Kv8v^L*O*c04J4mA_7pm%C3H>Sllr(r1 zVY~JfoxKh9^+(gqu69)8mxw@Ma^r3ET^-}!__eQ39WvBIy}*JYW;q7~hd_gSN96U@ z%p6lSh!(4>19k2YLKENE;kRI~(DQ6{(R^zFIHGqDb+2E~&OjSdKIb9jx#A5sV`}6Z)Y&+0RCf%wS;L0{H;qR}lWi9;# zh6_u{(LA@^92}QNyLx)cj`E3$5-2j#9sC19xKd1z%m}WHQHCp)!AzXt4jG7T!9pkf z^0zf)6=ZGH5 zQntPLOrIYe*#%dx66iXnIa`~XKY^{ERVWBvo0gFg6r0J2*d(E53O&KMjhLb$Bh_i{ zL_`pR0#=srktOzkDrsnGG1u+>@RY(l^aO+C9(LPldHwMO1uZSDA_bO`bm#Y&w^;Aw z9O@)^HbjtGhX{@C;a#VO>gprL_scViEgJNXpL6s%!10|KNpDmYBtJf7qUjRKjOg@3 zb19)*Tobg-0x}I8-n?^47Ut$M=SNh+0(BbCYK)@sngu#lGBPpJ8_|ti0e1!?RpYl5 z>UMxqO;4UIK89YP2}DrP_WC^JmJEfx?vEaGIJwuaUq_YzZWGb)*M0QJWRcvm102=Z z)r?cvtVtiMHWm;W(ZyO)6nCBda*b6o=SjS;I)?^D7rE2A$!yKyCVBZHI!X)-2~ngG z5b5I=cyZ*SY7a8g;nIy|iT=Y(czC3r&jGx{PoO7s>Ec(|>S!$n$Epd^EQysn=xDgP zd~ZH3dt={>yGOs}qmhvi?N4Or?MpdZ7oBL`b*=?!m%tBnWn$si@mfs504i@V9{>7b z*Nz=ZQn3j2YO;_JjGVsK)n$H3?mdL(Sy@>dv+6`G}s)AenvteBaYlz9SM4j$gf_u|3h z$0mK=aG=m_4EmbvRG%0bc@&Nj@j{rgq`%tX!#lk(cw2At%PFgcV#I{|ETVPD9dgsr zV7xsWJ-ykfQ~K0%`cHe2w{lCiB4Mw|XAZ-5@9ibOxDl$t`E94pqCk}xa~rk}V6rfC zU$JmVbS#1^4D#wx zA_Tg;7l9pg8-IC})&I$`U)ZTgy`CbZ+n}P4foRYH!zGnzcy=u+9lIeSBoyx^@81bi zZT#f{?TZ6c3Z5&I^8^ZaW(LITee>o3S#^{vk{M6{CR~Mug~5KHK^r061vj_1e#ppH zu33}sIp^WzGy;cdzRsSdr03_#BYO_bn_jd@#gw;WgX@GlxwyEbK8Yowqd90|B?@*x z`G_@FECGSFeZUuoDw1gEGJ4-^@Eo5s@>YD!o7qF)UP*?njs z#(_apr2nIrXe@=StGapx{!KS~YHAy1D`W0iP5!XHsxK-NxGQ@WCKlpT{(~D+;Ktry zJ{jsw8#I4h9_kOhckcp1R`PY!9nr&wPeYPkRdscG%@B|TfET=(W1{zzv#x9M2C8sV zF|7a)MDUgVjY^s5-bbbcDMhsZ4xm~| zR#St!GCr0?;fmxF)QtvA^x(m63|if?tC#u?X_!5YraLMD0HMvkx@hI+S|fhH-+=tGc_JNC0ZIVC0D5=BV#s zuZ!9?>$_w@gC?_s5%5qHCLv(ljP;`wZ2&C@mnkd>S+S@~Y zldZ%)Lm7qpBHvm&@|}!W$zEJsj4=Ps*IRym7SgJkWa#Mc&?_oJarXIh zHwbfPC>p}h5|h^~lQ?RHIIeA{Q`A=1mv~3kq z>&5<^n3z{Zt6K*lv=1Mip&=8vBdpy6N~m7X15D&Y(pl0O@~mQ;8q?(Dq=$+P#0t(M zCc<4+p_Gn^)J8@|tgMl6{aMY=v6IlGI&piVYy+;t%xs0ta`vnVRD>xMZ9_vc4_<5{ z%7F<9R;UDqhU%j5j!3*IR(%T&gnGr?{am~h9Lmli=q$q?zbX|)Y7Rwr2+HW{rEKth?}hZ`RLb{|21E@r+d*yZSDJLM`d~G4(+zCf%O1l zJVxIPKSq=XYnDk%k4#5MSeX815kgi*+N%hdbdycWr!mOZ=5wOim!X+7SEba_OdlUr zIk}feHOB|qqF@li!%HVqQc^I_t_Im*h_NA}uS4)&KOo%$7l?o< zIAkS=3H0=yl`|9TU}%_w`XNgAgKl{!Lfpc+MJXDGE)TvG&T9@`{e<{n`QA+i>gHK* zpJ|q^77-QYe=O(A()hG#byO9bm^Co4le-|2jj_DMEJSD#yrX*Q^a8g*%=>N4H+&EF z2}U2uAc{giItK8mN!_|gJ(8p=fKN6v8klidAf?g!?OUExpQcs8wQI#F4uDQHjjP~w zRT9jZ_#=sv%NA(%@qL^T-eTN5t}AwsxU~>_7%Qdk_@c-c$;=no790{1lB1xp#K@=# znhtw$=8+iiFM5Vo3F&)49Z?>WJ{Ff?>7du<2h)gj!q2Y_4zIhEQT_%HmBd1bGVM_N zP&%qbhGHHvrJ2sj50Imm@!o{69gCfx;l zciF0qz(W=65oi#f;V*i5SA5r@4i7JIILrt7s9on_-cjG++jx_xW@C-;+v%>e_yNF& zS`qBBviCbx=7R?80+YV1U_g%mAcfIGK01owo!h4b%>j+!#7@B>qDI_^?q%eIx-1Im z`pQ;T2~fR;A;ktqgkMllV7z+>XX`tzj|Ye1Ef9Q3BxKN5hkv?K_op-@S0q|c-j$H( zZar{6@W@jp(@oeQPcCA!!S!m9J&|YaIWs#`wiyK~XjNX4+jb!|A))WO_OoBO4SW@f zL`XH3Eq(F9o8<8yN%_hHu3cGtZ2mlmg%1fXNkoBuB@e z(7p1$b`8c2wu+dX3z!BjEF)NhypU0lEK=Rz&>+a8Epx4^2b$hI=TkI0)FAKvanC8Q=v4+9c+HIh4!1vKOJ9Y5ZV>c&=B zW1t^si~o+X>b8D_ycYr`gBPtWEf=Am21Dk{v|B`^326w#3JB2vz$~cn6gM%#(%^jRrK`^rNP>gBC(o=Wf$$rKx`AD=pMF)&FNr|HSlr&FU}#m|qN zvf9aKIgNa=rbbh@g^Aa5*sQhLFs475Ofx>)l@ly5Envs zAq$7xH-wFb9ai{MZEOWp!l0+vOjTnlS_J!u(MhGoy9EVPYjzWIoI<9Tg)?V>Ilvu; zeofX%3hhvVBgR4C7KuwneeO=8ARxBC0<*SoFf+1Ee_b~MMhy# zMx7M3cx%9Q0a}vwLmc;zh%g71xWc|x1@(xDV0EdpP0Y{FSd!Syvp!H7k7*_C%$eIM zC|KFpm|gB|RRkVQXn43a=JuREZPeHPSpR#XRu9X6t%F~^iJ%+&4V*({kD*mPFfM!(wM;ZikuD25rs?xT7Ue7k(*&8` zIKa`!y6sP7MCo}Z(*7ax5~aqVHm-bZ(v{0Xz5FJxq=*Ce;C^0iedFEm(-t)q3%09b z>S%AU7{s=^SCj$enDOI1S_$0jeOhxrA3_eDPp7L9u_0GY)g%q1V3CsrMUq^P>^ERk z#HJM(xP9%~wP9wJ?IfrwVs{xkH2h>5+a45KfTN? zQZ$V!K|z@R#4ldC({v3vKIgY+ifAybg%fp*V(Pqq-#hDlHSGv}&IGNPk zEW=nS({wuVN&Xqj=pakxEnDiJWju*D`cU{VRk1~i_tuK&9rCP}q^B<*t%#JGxdR2654^J+&hB>Xe}l3xaPa!OV@VCR8m`+GuE6#>J-A@arpcC__w09g+j-~C zjbCBgQ8j2#aHJ(23viq&LW+NxGT5~5vA)1XgRCcXjoC>pgYSHu1;% zw@u%^aeDLzn|nYzg@4q2&@SzMYU^~=$$0#(#v;zhMePdIe7A|$U30UU$2)$dxBm2e zNJ$jqKF3n>z18#7_zQ)zZTZ{1e+{&@#aRZ#3aZz!F3>XNp1R#1>$uJ{=b`z?`_S~z zg@FmjI#zAw#pA5zQFRi969bKHaXoseSS5|055RA5kMB;pNIm1x+_rDm-Jb~-2%af5 zJR3Zodrs}rV`6H^G%a&+o*&f)lPQ3jTKdVor?tovL!O@Dfb3|dV#Wr7w)y|EozQ7n zzsQT0U?i}0IV%$ zZ8bfW)%8cQZ3m8Glz{nV&0SO3~LdP+^;>jDeKJ+^Ir zFL#Q0RgplA7~EfDVv%+&JFGF@RH2UbP`A>WEoLVt&(36wd|>WhyTHtl8$Fg^`pbm1 zCmegO>;0T;LVh7G5WWs4;ny~1=DFDqURUxXb50zgrD|_Z6m?s8fmQFm;zz|aT=~hL zhvH|5Un~CCuRWd{XLM57xx%^RA-`2T@N`}9N9I3?ujGWtM(9&i(Py8!c27Dk^s2>LfNJ^7Int>!d-h!oQA+SCGTpxN6FwiisHA z`BSl7|DR-!m_MNazVm;=5_v@22&hq=_WuQlJd^Unj%3a2bD*Q{3FB$4tpRLXQhwaP zk4M}5@4o)lNfbPXA0>%CCtG)vN40m!KS(=o_Q%ALyw-6s&~^uTi0$5G*jFA;JjdX& z{r@x#=;rf_w!)l*a*5Do?c@Zgkad`iH z0Y`T0iaVh-E~xDXu)Rb^j{66ic~D(_B|9pns02ZL{ugpBWKNSqofCHMvitVzX~1gv z?S=z~$o-*ItbGx}Ah!WYOoiID@h0LL)Q*f=0k~|Ezk!nbxg~%#p;QH`4elljgE*0M z4l5mk{u&2I2iOg5?mzvWK6PGp3Bs41C~rdW7Rdr+x!`?~L?bfO8GeDmV1zgvx1|2n zn1HQR3fuU2$vRT|&uws(;aO&9N;`*6JgR41@8!!XVRsyn9ilYgKN!mgf)|`BseLc7 zQXC969~DkB>L!$~Ar`j%d)@o@Z{NKO91{Yp2)TG-*V$b1M+}<2m=$>z#l?X|&)As1 z>F02_n*3Yn{_|Y01!f%)8EH`k)p#LM(d4YAnU5&5BJ^Czj(bPeIQ_B_xf=~T@s^Gs zq^epXKSI?X5I#gq!@DD~e~*4q5f^_3IMw^=RqSmH`O&tkCK3q*jCfJ_VEDsFlnSVI z&CPi=(nQhq$wL}&0^_zJXx_2oBmf1ZPk2B)CQ_{awX~#Y>-kv3E5KX85p*vgZg*z; zPN}N;AfEE|g;ZD&Yk6ocBFPVJZ6>z&!RiKz(s&)(2AjvGxEdqvoe;YWbwaT#xd-$TU~ZfC*yt~_TzRz+$%sFO^EEU;WXuv_Uh+N+ z52^qen49%me?KwN&uaGuUHwjE*_fLU_bmdrbZcvC@=>6MC{H-!d2zYB5SYfTp(qqp zrFSa^CQqWe zfGpQ-|2Zhf6G=9xK8NoL?YAdJ7rfhO)c$hs( zZ-YFJoH7q8NcND&1IX70Bpy>kUbVn_xo<^Yj1NjSC(fR&%BVsWR?AfbWXAbewSCp_ z`hJO3OD{vNx~~jW9&-ze^fluUgH)q|&fIhNi43Qg!1{o(lh1QBsnTFZNeXJ&j~+ex z))uU!sE7mi5=Cy%?US!}zD1=OnQF}5QM(~P$%3(`LBA2NvA zU+x0^!8D>|#=C~7 zIzSyALc;91rNBAMCIS52#WcNPWu4=kaI0-Otz&)4DDcoQdui{3wQk6si|!Z%=Sr41+=0%pjG zT%4TvMYMHKct>)j7|TGG4ZID^@ydf2vbaxhxKOi%i`ipccO(BhQXB8vKnclxzz_l0 zPoiH1D9F26e*GyxWZt(?6y}~dVTO3{Mt=Sb+=TuG;4xqt!J1(IXr82pp*)TP{CX%j zGccH&n!d`Yf@PZDHFLzSd0`x|^#J^zQOgmMyDVlj8n-@ZZ$G{@fY7mo-?*mnqv{VA z06>{S&ijxvAw+$NkXpnaWW-Sn_B;R#g{Iq#+_@uUOmRqg@PJ*qyr~I0q!DB+hq&wB z-YTazIub?rDq1DbTCpdMqz-a3fL4U+RAO|r+$SqDGhuMTOkZE))wk0s5AJN8c52a-o8F0)S&&P zz>d^!U?s^h64ANIlb0{$h+uOfep??wv)MN{U5m68zk|X+a^>>Z^tld^-gGFrg_2w0 zV}RQ46Uu^$JL*?PVS&JV5nfoT9#c?Iu(ZUG#mneqKzYZcZ4^ZW6lszGjV==b!J+c* z?(HHXT6%h}h$U)nIYQhXcpfG?V>R*kUqLlPedqrDADQQ!G2;R9k;xJ|mTs zZbIj02I>^NDpH+MSlV9^pq`-Zr94~=;KSS3ueTSZ=_8GK$+U*ZARO!w{j`^vV(Z`} z;h^|;66I{1sO&|sDHcuZgp>1@8!1kq5(2;<3#(o+J~6N{T^~eZkSfcC)6nz*@+OYN zBMJm?fl428Njtz{fLbpsB`Q5VRVG4igWIxFvr)i6tpzP!H*ej7f~?)Lr`x>cKjUdp zqXyUs0sL)8Y4`(GfYo8s>jLV*CeEZUruQ+2HY3ggFhypBGyuyi;&^#@!XRF^AV8|W z(jOKPgLzfB8GvgOROlM94=C#a-+r8%djUQPyh&jBF=0R8V%BXEk`sJTg>u5O6)V&} z7>jTO61X=Y7~ik4E7|dLK{LA%DZhI`K`rqEDmSS8jUi~&;s~@eZk)@V!ouU~A>*N? z7O9L+&ot@UGnFD7#eUOs=Rjm)c~G8)`m1~i$@&VC9rtQp{ktnki9yg2!J+gNNu;c0 z+f!a!tA$Al!8-|Kj>p1Vwx|jUC7qP)1rCiTPAZ>(sAQ%6o7!51bO~YhE(AnGFI}Yq z50x@ra7QLv3&9p@7Vz7;sndo#z9uFm<$_fV4i*4<3@U|w?Inv)H!+Q7gt zvXybqCUgJ*um=?C{G&Mx?D6aSN&-u7US34fUPs^#W!()K^#BU%SeLz2?ryKq{B+32 zQzPX=>AQEPjEpb>;0a;aBWShU>|kSOY-u@l8hF4N8=Ka%<6HcW&Z{cft!2D|g2&R$imuNc zQxAL~^d5R_w5w`C+q$p-07anOV*!DnX>%KjPIQ8-R=t$EEt^{U&s{uGtxNFk1p4TjbfEvl^aLvDbWptk0I8Ec1x zAf$JZ=1^*)81^h@xXG2Q@+3C)%Rs@LpsVfq^HOE35NwAFQbpMv^>T+R*coM;5sL>N zGvsCRxw6It&j}harAO=EIyk5?5c>kk z4hyKJHV;aU^*!~qwHOcDk5O?rn+9v|P#=Jqp7{Ke-g+vfTXd&-_#10(Pf%V_8TH-H zMZc2$Kvr=&B{lU20vS|!k`HzD!&a0}fWbZ-&uEuwRFSx5H?2S;7@|cy@zkKN>_VMVQg!p)s^CJimQPN2E zy=tR$kIwAmNupwe01n2+6JrsQD~YM8!^6WdCtyGjn_{A4RjI4Kq2U6%P1YL)poAFm|DwXhMPaXm8)9ckS1F6o$Q17CO`|At))CP5ya@ zLSvv{IFc>n;LQ7Ru{ol`OLBHdrf_P+!L}HSSK&Ol#?^IvxWQP9OkLT%4l^vIKpRQd z|JKt}ve5)%mG=k>*MN}d@)6b^{CQ%m3HlP?{IQ>#;PhX=R&Y6pw+~~0xZGUtNIJt9 zO8E$!^-q#;&UA(QBErH9>}w2co%g_=-$_7Nm3(b^)6Gpttk4yLKVyo?`6`j=y}gMZ z1Cr&lJV5{sY2c2bRNfOmY`Fhn`67^+(SK62)qgv_`?JIksCs97y{yP_M2Bw+MpT%< z?eT9ca0}G^Lh|vxFf%Det!r&P_Co^!C}vTJp<4y;0;a;^eo7mXK?ds>a$_k0SmROX zy;8@wKfeNFN|5c~%pq?(c=&L@ty`2bS5Uw~1r#-IZn zp%)Q{_?(!sSp&&U-%aC4#+XEU@(*67xuc`rC6A5DD7jE<>@fbB_oRG zMz)2|xaz4_gZK8WmuB0Fd9dMEJZhgRJQ$&sV1o!)ywSQB^5~h!Tlx=%2~(vOM^p3- z42CAAk%Gj;#TgkGbVJ%}%a#rDL}L})a!hP2##hQnOJ6{@bn+o5506=JaKMQLLeo>F z*W7j(?8jq^FTJd)8i3bD_}ZH7xN{41kYe!nsEG?0KL=CYD4erf;s*i&Vm|xh$Ge)6 z4`2N_*^N^I4}oqhP5W~hb;x{Rk8%EC;~ki6gj2eHWBN5dGF=zenu7k{u`7V(a(XxGL;T#AZNjdfVG?2L`^% zXobxnMg)MlhaCcNXb^L8!7ExtON%522|3&_va0T^Pg)~@elVhL>53Km5VJ$y0BccQ zQzI-UHi2?HG1?KF!tyXJP&F=Gm|DoGIy%fkk_Q9@1T1_$A%nx~lm*s<5Q$O)jF?W| z14F2X4>9-%tB&F;IHi{VtR;Ny(&m0>Y4lLxEiX>3hyuHh*a8BslFnIcG zB@9;dX26ZWK?znAktextmJ*#&aO1s?fNSecl_U796yFFhb*j3Y)ltzNSR z?Uapcok9KNaqL18027W;EHCX@qN?ts@H8VE0R(jxlWXCk!9)ahX(M?C`3gYn-v0i? zgPaJvFaG?Z4j3HaHYRxFz;$g6_<&+E5>f;+Ma9J@0XoI-CN)W%EFTA)9N#~aG0uze zn{c9Q;?0DRNau^{SH zCNXhw@K=5UbVvv13;sQ`YZgg(DSyR58WiYP8)afr2N?mZ{9EJ+`X2#135tBKv~NbF z^6`iNz)%*&CnalEV$=w$)xLxvjkmCKC!N$;yy(}d`K|fuvc&Tzlq{_dHtnxZ(O$?+ ztqDm)Q5->AuHEO$fq~WdeqMd-* zSQmIGOkM+yGTM6t?hMv{_%J?3d^}*(u(>g~0;!o^>%%_WEw9V4n+(wm;2|xYi&Dd? ztA)tUG4_&B;z-gvY`>uZM=VrtSK+5mxVGUW(OJcqK<9G+&_388PP1&_wPOYzF8tFi z4=`8Rp+Xl4(3^WP@f$fRVn<$;_jfGeL1D#++!o(*RsJ*L7J}1nVL_E}Kpq2XgfT|r zfJURgJ_KR2&w+<9pK5pfqV`_c!@*IAGYWI9rzeg+6SQn-8Xha^Nd)-Czi)Q8Ya)f~ z;s`f&`guV;{gRiKavXsYVl(5?YV&YDpEOcQ&S#-1i3#Q5rS-|e+emC1e#3L9NPJ2& zy@G&SZd)|PrT6`3B=Ep&5z3n(@;_A+`F5nvL~GhWHN ziacai1VzL>`ydPlc$B5r4bd?O+pZ_{5>^3!H?cA#CMBf>b67(T)+6>~V`D=X0Q8%5 zJ&DQfVVF>jF_H7_gNKQsgH`a`dKiy}6$K_*aUMu+!Niw)iO2F0AwoKVXjy`<#A1R& zm5!DlkC`q{JJ50vE?RyEkcTJ17;}9iBg8TLU0Q~4x$Z;Lm?v!RsguZwiN)}y=oZCG z-Mo1-I;sGRz_Q_~2gKR2PoWx26iQM5mksA{sX=;Cp#OE5$47ezJG5A6b{Gs zPEt*oCKa^mZ(Mxl1cwy3e|8u;rDQuU)~yCm51du!+lT6EkXKM0YQn@u5a_!7F;@}< zy`3m?VC+>%C;UbsGW)}a2lm3TVHQmykOE?~DnjiduDgu^O@)OVxB|c)81GNSBy|u8 zDWRdXSLFj$%rUR~$B)!a*~8fPGwrYDjLIHUsiPQ1XJBMhFdi}gP|=*~x~+#)bv7Gw ziP?WSZ0GPmLw|2N@w8?2^#c&MGFQ@5FxNAZTaj zUY8!=F?e!nz48sbuzuSP$29YIK^WCUdGHD}SJOC61cU0%l`K}?;; zp4OAmG%@i+-30_|WM&yNFvSjHa-~m@uaZlIa89vv7LZ-^n0);zEhUwa17HLnYtFwF zROc(RgUb?rNLAYOC7CrmM~RCu!pz3Tcz^XR@)}mDk^HKeTX-1HUmN>z^sq(!gtw!y zhPOh32v`U5PaQQ}lA|fJ^>IgAPQbVA=nOC+2taYL@zF}}wVQKe5At6~>1yXq$QIG7 z?P8-pckTiUTyy>#(`vyUV&X)3S0=<{)1SXVj)U&@KW!xc1*_yAMeJL#ImC~8 z1(dv^QlCW9&&j2vlic_JuFpNodA%q;VV(%8o2-6L#>3`G&UQc>UKyq!YW($yU#J#+ICR}>=xDDZZ};={)vRYk7z|A8{A}Se9d(-M)$_UD{Po)%zjStr z0Lw&tlPFE+04I(^g26`*^A_PWA_awiW+@2~SJK`HV<@4?%>csPDa7fYO-&PXS9+CN zB}x-l`sK!AY)EeUOJHHL_Xr``kR;9G6;38B;hCaOl#b`b*dl=19`J+5^xl_b33vtVcan-QCF$0v20Ru=*^vcZcfySxg4D=ovAMY7TqhU-$W9y%n zJZSYlUQre=)hyGe&qP%!dAKsic7$?#aEqZ;Iv7NhLk z+zs-G*kHPJQ;k8;o<-My{0*OXb81rPCC1bqm`U{ri9kAGoIRw+O3KP8ZAXogwE5;Y z!HaGGp{w01oLhQIfX|NoDKNdz1H_am_?9BG-Rzv`0|4*?FYRKES|7aC2sJxf^7H{k z#g_aFddkYz>4pnpetLF`9g2`h2lpEoJ={xHYFJ4pAtnKCFYue{y1LEigYOA^fBi5z z1O7aJRLJJY!wffzPJ-S4aLsv5B&#{_R_ha3@*MS$Cvf@K@MvJXF}sn!9kU1g#S# zNkpiblbfI>h13dpKfHy59wa7+O0ba7@kVR;8wq^{s+OQ;Ae%={Avn{`bo%t^J{}PH ziAFO_F@JJ#>T!DdT(W*Td{P?uER)ypd|WmEkY0xsA?J#C!{A=01PB`Vgf`)@WjWo| z;6`_%jB~#>)D551zIkJgdAz{cb#{E8#m^(yLkkDIBYFaIpFdBVMX3cL9g07Af{d*S z3a^Ri4|Dd$oN#jpruzH(F#D+uyj6tT@Y)vFA$h?haICq&WZzf~P$r!x-0Nupl^o>x z4tGqrdCOc3dBgq&g?Ia!E1Kcx%V%PG25*82&N~Yt!jDmmz{07~Kyo2Og%c6ss+B9N zQ8+Tl&neL}dDr3q*lh9Q#V4!oUqt)1Y*Yc@79`TTlS+&7RxteLLJ@g5rsuCFE9jUo|^oIDu|unh%;n1oiqK0uI6a-38- z0-xvP;1wAn)9mS)!u(f+Il^)1vkaGZwFR<;8$>d~O+~?sFLc)&pzSUtrRH4p*1lX% zzj5POQ(tY(Eb>3wk7<`Q`@eq&hFlJb21HV5(#bjZwE^W4i=IH0=g4TFUNeSB?*yO+ zRQM3AAmKXu`Aew5Mm4oE*iGETUTiJ=HN8(v|Ji+V-Seh>VQb4WDiEAwb5K96KBTfz z>&nVbW71{D67;Yj0YZ%qkiWF&>}9Zg(w!@?>(S640eKm7^DbZ<03fwnx&A|ug=k9a zD~AonafB!vu}Q#2EtDe4OfdP-F1xg31%d@_mqaWjumMas1jgHEvwIk~3n%~%96#Fv zGI*od2gHfqbcOZ^LLn|^tgv$@dQ#+XJbpZYqmN(e9P<3ua>2N=XYS?DS4TZ@MfL=W z7OYywz1=oli(6Awc-RsbwGbg9Yo*y$g zpr#Z1hM+7V9p_RtL~C^}tF-kL-r-yklZlMyY%{8~@IVNcsDm@AVcmggw*bsM2 z1g%?go{rUEIbmce2cLi^P?MmU0Pxij*#cY=))SEEo?2q8`)1Uzv*Lgh0{)(b(Zs|^ z^eH~s9TO8f`RfT0;DzUsFrRC)|a0>(ZbvE7468HA6UN8_*687>zF)%Vt{Uf%;Y5?^Z)u0%LwzpEz9v79L8b*ePPqx3BIe5q1 zVD|HMHkW}`0o9r={uN7N<4#k8Nq}>3vAb5b$buZ)i7qH`7P3r&IDw2Dydog5MY?+I z4;Mfnq!=vU*<80tq~X9l+T1$Va5=W1=7R^je(f5_3QutO;ZK0uq-8$)(D0s4o(L;| z97;+~fX{&T5nLV)WW79^`IEGHsY;n+4e0WGpWIm1<_NeZ4K-%@8}OdkXtp?wi01VK zxpwTp?s$gNf|I~8aI52wv=fP{VBYlzu%Bv>HEim4QV1Evj~8g3gjPbV8r&Mp17i>| znf6xp(W2Ma*Ov}m0aHp6^t?lh;K=JC-8q$E3@ohdPL-%qu8~3T?C{+ecnZY>2Qax& zSXTC!G};1)4#`C0>|yA*gi$C@aMhN5vmfDK6kgw%$Uy|D8YFuBCB9w^&}vA(1vL;^ z49=@$r}TZ9a}Ge8teqv<-vEDkj4y*wBT!Fq>pGRtZjh>!?>WuFV8buFjsG|*T*<9_ z4PAE=Y)7MCEz{hrCwS>5Gz=IH1G*+Ylj9vlWp&rHdL0iD5NtvTB7(PXxlz->UfYbS zEN)f!n7W#p-ew$|Bw#67r^!Lu59F_2E{+Hd&AK?{q8fye$}`}@N!He*AuM^OZKuZQ1&8RedO?09Y!*Y=oZ2efEFv?wqC;`y;}pT9Nhr|5#72`Ub- z@s;eTD;`!2B5>CCxn8NLESr-jLyGfG-RH}M9-o)6w^XIqF$Dcm4>S|p!b$Lmuiw8H z+PinA&6CYsTJBLG+urk>s;D;~ja7r6Cyop-?`0*ct@0? zjIZy8T#l@a3_|MBccjIe=~73;0azrzGu! zhb+|i2=m_VZdA_V@H9tKBXYp}f=i&Kp|NvzzBns0hUM8UEZl$hGf630ViSVrFP0HO z`ISBGi+S?-m})x|eT-9dnUrM~-pct0)iIXtfbob)$>>r527GIaxZu}cTf{GGYHD(- zCI)l$@q43lPam5NJu8^)TkOv|1%2Bfu=wvQhHL&dC9kEev&-NY_>Z8~DDLW3JBn>7G8l^FJS+OFcNc zk)#;(J$pgzlz}+2{ACCpD(fECJ)&8?8YSdT14~TjR-`!s-p4b;XO%9E2q1_V&p|P; zmws&fWKRTkW4%|hW9Bk$Fx2^>(j&;W3B2*U8x{`NrYYID%N39var1I7>yd@y2q9j+ zb$uf*_(b`D^MPCo#}@QXf{7ZlF@qz#8|sE9X119oA0EGD=N-lyTiaEy9A8M2IdY}sF>gWRMnE} zf?(M&K=-S3ASmGE0^XXzs^FY~$lHdAxrHsuZhO}K?oyHSsYS0L(JYN$fdhwn5h`dH zw|d0C&ItYJsF9+^fOH9@M^HDv?tpr%+o0T|>P?$B6XQ%9Gb3&y?ox)%%1G^DL>R!o ziqX0S@-?qsswgO4*ezfMV!kpJF91sgV-6n#%%o`M&Wp`{CxIW89y&w4rL+)wwIB?+ z^}3%JCF(JA&=F!d!aE{~+g>O8D;mggX~|QM87cNR2mwSlt0ORsuk_XPg0ATNhuePn zT9$b2n%fqVoSd8|62Y&tN2Gwgo~rSn5QHWST4m))C^0HNiC_LJi!xZqSYQj4B_HFdK^%1-- zIcBrAw1ljS;%`kJr;{vhj8zA7@^B7jym-Bc%;%@n**-lyP|Fp<+m#dbV*6r^JXq>+ zgaAksck}a?15VQ_{D8b?fw|;?C=S=U2KuACJR7^! zYGMb5kyB{haAk{CZT|TaAHK)r5=h7*9rGlQ&K)~mn0FD$+83A=6MHTIEO>*o!kl6M z04j3~tjM$r7rs*uC2==R42ubU?zjoo$t7vcbQrF0b#+KB6B}ZwR#B8Ze|zNY*;1Cv zBGtJ?;6gap5z?Vkr#DPGf<71=q;g_0PNl}k{Ns+_Q!oB&;*mfYf#sl)bjVYYFt zv5$=A`r*|_m*egC=P0@6(^5iC$Qhe+%4o#iS5=+dbQA$D3Q3N}*G#?xd4gwa!B3<{ z!h=hD1;Rp}AWnIb>mgu&ggcKU``o@Wu%zve>s*W__6mWto*FM&>%$fMep|igF%{H zq1shRcn`bap4xuc(m$pAoK)$Y?n5T&E6h{wXV!Plc@&H*A%Vem1q+AQ-H1knQ6IUk zvbI()HtiB^H2mlO%kPyN;_=2AjYWO^p(96B%9itQ1>SG2t*D!RL@n<{cDfhQU z)9ZdfUkIDl$IZ#yr9s;+p{bO`Vzu_ z`JzFJ5&z(qJy#OB0ibBXf! zR{wV8xeB~8i4hb~XKh1jUnhjshW`6~!zV^~;cnAaTztU?J^XB{breMp5QhwJ3qvq_ zSm{{qtyqb3`XM$``VDWmb*r)L&>x%P(03atW!A4}jNA|_G#__{el8~MZ6DjafBz7r zu!S;08NrragV<}=o^4_BL2>{?uXjtHb#O6=Ft68amu3M?Gr8&A2{XMWIbGe?si`xH zOGS3Rvgvu}6dgj&L^(|37X5yO?t~O1r9R&xslW34`F=AOO~0mfp<&`^rg%?&UlEYv zM=f>u&eiGH7IflKx{Z$Ke67UBzJmrO!ej7&R6E}9uVyo7(l*r}V}V<#Pi8a8oV^Fl z#oM=U1;3Z?j!0t3C`8xb=HX;Jv=3S>&9zNiXYdyEYfVYdyXNW_v&3XGNjNUOr(QIV zIBfE*ZM+n~$O_mlfq~_>z583Pv*%Z#^LKB4LCkfQd5sq=_M!jv%Wc|u2jFE8lnZ4kEWYLjEWK1xYJ zCiDJF5<3*ge+?4_4nco3hgx42013Z9*X`R`Dv*!mQn<#PmBN5D24m!N`UIyN1vX$- zyd9N8?;$N;TQ(9`{lcBe4WzHb1G0ew&aCyBZ~{1oL1?Y)We9Gosa8^k_?hHWDKPR8 zd}lLS&g@g;R4k4yE?9gQ^i|l%I4eh*qTJl=-YTO@60x1LQ zTkEIz$e{t!4SQS>+%S)m{@f`weB8-09JY~UL zh4!08yj!`R{1BC2RJQb_Trx@oU@ze{ZrszTxl!g3voiUHV^)uxU`BP5-Btn-3Z4vu z^Zx5}zKkJ|?C)lktYlas`-tj+dGMDE0+D5MbLw_Zo=>V`Dgh`55wTlqQ)R*Ew{Yz= z&fB(cXS&UWH!iKl(OE;mBVZ0l;&Yu#A9Rv6Jgf15{Gc&*Y`Wb&{)St+o(7dZ_DiLzM*aqW>X$Me2Dp1L4nnF2Y5n~vGSu+ zg2->-wZAGmtkygQASU_MlLUCe!r(h%n1y$@Z8Gg!%=Lcs=n)@4T}!JG1ct6R-=^W~ zSK5a2`}RGiklLuUupSHvu@CKo$?2&629Hu6kFtv8%WNw${E&_r9K>)D85`UNDv>>J zgJbtK#bxVdx_=amv5z#bzVmmbwDDR}|2mnxRhr^iS4KBb<@ij)Tk{=c4mc4j(K+qD+=Lyo2O)C zIHC;<)aHF*krdQyNRdQw_0DA+sX{w%CdHapH8N!>ZP|rEOxWqKbMk*@= z&&V(xGN%`#VyABc`e$@(aZ^JD6gH!u5pw6LwwB&pw?y7~?XqR{h?CM|bsciUb)9DW zgtxf=p674Cz*zJM35DR9NUH)K@!&Ez@m0G_sU@kMs@`5o4{<1J35iz}1UDheI7fLe zZlxL1mu)oG260y^itV$AizTqiFLq$T!KYNI;m&rKh339o)7u~|_R^)LMCvt`;@!LF ziCZMH^=9H)@1#v1{e4_oKgDIo4)(&`EdrC-T!#6W)%eIav$JX~+1raBIzM5fT?O+a z&uD7)Ngzew>0va+Waq3|MFK4{H zTnK#g#v4|ebvZsHR7H2TzFwzBXAhCceRy?`(4#(b^}{}$AqG+M5t@5j&NMQ@9yVw0 zDv^n{v5#-~7eU2-MmMSk_0L)m1mDdD274sVQMDJIxg=Omwlr=4P|z)Y_V{rGnKV$_ z39`*FBp>sqGulAjQq{p*2`oKj?e)D%zX%!UnPs!Um3y@98mJQb|x zzKx@}PlAKD;NslK^XC~3Ehs8d$;16w!Pw`!-5CONK>e^ORycIDMIi=_f3S&19(ilk zyLaJt`zM8W5SiQ=IeW>s!R>dcdxmT5id8B9K1rk~2!GqiN`(R7!iAE~;FvzDo1LAH z96We|2zEXJxwJ{YgCN@Po2H}0X>Ke(uCa-?`A(ra=-SndFlpxp{UB7(x5W1q4t%}G zz1I$!r}juiX(6YJ0@R{O;EscrtQ=HFLdJ9IIyR_yoHY*TUkEwcFCG>{2uFw?H{`i+#roQ(}?YHDO?m#zyg%vpvP&||4#yZU61eN$4Vi}fBfD5%;eHV=3#gF0Er zr#QecC2s%ZYUNf0=I!22W;2HlD53j(qjK!^5@q5%LyYS18E`>a9O`EPl^$4mG-U~&d@F?1Ct9Gqpvb*Jqj(eRBVNE-6ejXS26U=Ur_W#PGsk<~-i>I0e&^#ai|jb;FirEQX9e z;e?6t4!MuszTE-(4cgMZM-OX2h=hbDXp_Eu`tYZD)G=kxUQy9_av?lbzmFDTfrz2F1eGnXuWpav$2$MAb!kj5$Ok*78 zKLJ@yjrGZWJD4*7UQ_nFNKYTDdO9%h7a56~2bmLra<-8XmH!w`w}UXF<)B3e z6$~Kh_wBpF&JLeVU*?C6b191mT^jqx!j}LifrcqrxB@D5`uTeui0u)&LEDGrx5b9`J}G>O{0poxlwapP@x6k+Ob&BPA%24;$=i=|c% zptVP`HF(TlyL^h~@3`^)^Jk=Q4Z;aorDWU(63o(ZmF;S7SjNkAG8$WwCI&?C6+L_O zxZY*JTk3H>3rYB080Lit&x>N?( zhZze^_QftJVGM**^7_{A*Q}FcN)h*(e79;=cq{ViYj;x^yod+zZ(zN}VpuCG?a#Hf z*frIW1uI;Yv%{_&(YQo@>*94o`nP<#FyFf@nA*7n*|OEa&l?0f+15cv?1juiPfu9T|T{f z_VVSHwpMo-y0_@%{B&bC3(GsG6?uC_ta7Nhd?Un-+(XWYdmE~n86@9b2!%t15>HKN zJ^y?2DUb2(bI?K$iNNu>dd#DeGfi|**YiCDH{95M+Gb=ZP-n;859;dcjm^x4j$b2q zai@gGNf?~oAZ5_l+*~>D^+Z6dklGt7QpIHrVUAViU*rv6BO@>!sufUA$l)$$*!y^S z3EfoUJUMxJHcO$~TfP15_S(A)w{+=(4aLvdixw5~aaLnSeYcP(!SRfqcac1{(k-Ae zdj$k3BZmAxMu6V+KB}28H-dC7C5wPq;c{M3knL(OKuMj-ON7@LeAk#-lyA1qnI*C7 zWf9>Tet`I^{$jNr({DV;bdNkO`H)tyr}#8{MoYH@Ni0h12J0`A+nUVId)_lRNTgPp ze>CnJ&g`T~S2)Ck7&j(MgVZliZmF9ZKcmjB0ou5QuE0l*X^IyQ&YdDZ001t&-e`7w z$Q$QVxdQrLQwRzFjq40ECA0|^k;gU~`&V#Bsla~xTF3GyW)!&RH$j?cRcHDLV_rw2 zDCFSU2pVxU{-0MIfNZ#8C?| ze3*Xz-?9 zw!j8a5|xl{kvFz~qZ{7{T}0a4@0BV1IxGY`XmE+mvX96L{G=wr5|S;t;MpO1g2}Gq zjcsXOvV8N5c|*exAwlGG!xu!&qnY^GJ$a0#%u~T$7$0gr2y$v+`9fjYb00Ydhmxs5 zVIVjIge8#1r?>aW8N&=Ulbl#^(|_pDWUe45ny@xC>>2aJDtR{V@r1zIbh_AFvK&cH zI7=QL?}jX!_q-f5fo(=C8>s&J0-uS&vt}>dvHIAdL(jITHgRz@BJhB|2x=+Wk3IAv zQMX!V)UXbv(7QM{EQLb^9*~3@zG7h_Rh3Y%3GGf)`{@K%^wI}@|N)I5s4FXjLcgu8FFyC7dJ)T|7& z27Gg-&Xfk0AV6W0SH;ioCW|cE>CNqaLxxkC=wjcd!iGwkcwRg4Xfk=l+AXOs!S&lo_8dG=t}8 zCdf-hB!2DZ$rb--0XX=JaE&DcGqdstfD2AN9H>I@Da{Gped2@#buqK#SkKRgvyEVj ziR z=RYakn0CC&gTo9M2oAA}IB;?C&0dA^Yr_^q`z?dyZKXG7@WJ=eufdJQe^qLuEa{ z_`_y+Q|@_rP){8gFYV5ADH!b+HJeaZ`Nnmo)QgLcohNg1YHZVqFrVsmRqhdIdk)dB z{;kaj^`dPi%A+^Zwabt+_Mt$>m!Y(xViT-m#k+eg!uFh$@Gq=oxgJ>H=3}=NK%>*C z;T}~y@8>_HFG5Q2Y)A|vzUn($TS)CnY6zgzvGnDOt=W?S(zlgjkON^lbLN+C-^h;_ zgWqg1IEeh@BNZd#

tJPSNir>}+eDK7G1S=L6{=)I2p|3m)}{%>w`(zt8knof}&; z&ha^GILjGL7J7vpziw~;VSs_JCbr-BA0q-c_7U#H=9*JD2~lxJB2+R_>LoADN{y3i zgLv~tjvZUDzn!RV+nm0Jup;nTljUql6Jn10=J7e>nv(8;I;3s`7U#^2Vo#&0wLZEBEf%BM@B78+%RUB|MxagCcel$BupW?maMv&ARr0dwuBI}B61W4;UWXM|_YxZ;= z>A_^@DVSq{iG7p7shMrM<5^VRor&%yBS((pLY~&JH|3YO+3RT@(89jR&W@piHaN(K zbkvl&vFP%rLRPKRP;^|rbjkNV+4Dz3gZj9q^+xB=UCE6c`F`HEfudcxMn2&i!e)pM z)R@xLbIY6QPyKIY*A(9r+1;=SJhG$p zN;7K*x*)y0`OKxRU3_^#WowjUULHK4>DzV9FT9R7*Zi!vm#@{`a^I)l>hZ4%@}rh! zzl}XL%{xHN(dwdt*}16(Q)~CV*(oXARNOBjC97xixAYo{`-neIMihiEbM_>}q0Jue z^v%txxXEhP^_@pUb{b#0HnMB=uhF$v7AMRr-Yv@MDcnY1Sr!O<-Se-iLh^Z~#mLPy z&o@+GykXy#6k5A5R-tQD#OaUW*H*OV4NpEWU8LC51NNq2@@@US-NQAnShw$QW^AnV z_YOw=sCTa~l>R8v9m2X5-J@;{n0-@h*lO+8`{fhY6sOXY^DnW%hc3>};!VaWb4$gU zL@sstUjhe`?N=aV173Bf;^K$j>|T;T_DRLC+M~XoHtBWgZ&bY`;iQzB$vejzx3&Ip zk(=Y{~P6~A3&udrKoZlj${|g27?{uW^TL{&Y;{f;tdzpFX{mi1NkI~>_nv8(HVcJB`Tqec*k zg8xPNigKiXKSIC1xA4cIMzdzCD0^0&9N?bnvvlmUY~THXfl=_NzyF2n8-CUtxp8aP z`lbYz-1&J-K6%{%55>Q8=~ zLp&6UeSU`xC&jhLYvdj12mXGCqT8_P`g1*pY8W^erap41 z{ZfBs>5lv@h6P1mGGiX5%+lTX$)lm6Jn62Wq!eEFRv%>R=HZJ=PQRF{_c{4v>Li1M zA9qi2Zok(*rr<9p%g7y*wr4s@O|!94E^E1PLE+}!sh{`1J+f6QtY*!p*B6$C96vm0 z;GCcT3+vmbZcO{MzMKv1tABld(rx6()A8#pZBlfP)PFf%|3&TW}#)FJ8j(` z=g-hj=l->>RNtO&9QypK)2n$7MndGag2;^U`986a!TR@Fbs2S|dgOE!Bq5(JUjLUO zBtwy9n_HJh{yp{5ZJPhL!R>bW9Q=nK7wOyoLotg)F8jI4COto7x1W~k-0{C1;Pf$6 zlWk$$HE-#glxN7VuZNWTho=?k&yDyuDW1S!{&|IJ?1vI)l8&^E`7)6&tj&0Q-F5D8 z%jo>ay?g!nC%evBMCTWVFRgxhpiTnGF=14no ze8*jw++A{TcJI*sy4!Y{UYMtRW@M;b$+C`K3Y-5mfaJ12{LAWT=XXs0`z!DMu3Ufr z$N%~?|Lc2Cbtf)2*`ejhr9Ayxz$0JdEay@3WJ8Hx>EZ#Qeg9V>#D6`1zrW4@i^$_E z^E{-};bWCz|1NI$bIkvT%lePteoa{qTX_`ey_IlknPQ;BDtVLli2vJo3v&rH0an$Xwnz zUyT-Ct5b$d=9S#idd{bM)=s;;%z?%xBj%rINR5vfs=G^j36@n6H;?;d{L# zFzais){^E?v-%AGF(am9=cT^YsD*C3O-$Cg!{6yfX2!N8M;iA*k)bs0zD96$Oohu- zzcseQ`u&W|Fn6z=Wxq}Ke1MW%@KS(@X@hh&YK81Yrxg6HcgD`FQ@`JUXHS-24{!)n z^J@`)T%U1ojO6_$_|j;7ZTQUBO9x%~B{k9`?bkDv-S_+3-3|#EniqJbs5`P_cI zZ8hBIc>6eKrADxz*nvh*9Jt+81l9!=9d_&i~lqsWdd&({uKihizEDW9upZaPxiEKk~L1>PtU0^?)p(vep!W9xgHb!n+im}U9S7KAN+sU zMg9LO`cOx>sH%V1U^{P~t?l#V-o0p*z79S%MnmKBGD@jjmI>x&#GWG6|NgA5Pq|p3 z8ZSFIsoLCbcpyL7y^BxS%Gt#y8w=9noo?j*gRsjA{iFJ3)P*Pn zMg-&w>O)wSpeuAw!XIYGyc@Y*qkv@prn!e|y0pFQBfB=0kYh4GDl9X<4o1bp>)vYC z!rRTnUJiLAZSDAVuUS_bly?s zE*(3*bGac1>SNUvD4c6 zHQ2CTW655E%PJjs7>R)cbwEOb7SI$2dwb7iz9{zYhsw&Ebfie38D5goF0p+7H89Ru zO7%t3CC7E2=iFR3smq;<@8^G&36L<*^*ol)caY4WJ`I}Mi>eFiADX3%Owkx=ma}Em z@6RiWk@ey8f=Yu6E?=<%s7?^MBTuXu!wr_5x}SYG%YYlvE{`2ECe7|CoOTGhHMng9 zG5Ok0(00&jZu{Ti5D2{>YX}Pu66P!e9C^Vy_GZG&S+lIK{07wk}%J6WQL|ev}l~na%KgnKWpu zOWLRE6Gs{b9xNM{+2CKJb8}6R^p{V863g@aYnEtla#>duUVCeo?W`$5^8|Eggxpw0Q8~Gmd#ztG;8Uwlq8(!%GaRU$^-Q_#`48V4_vN{iS=DYBF`%i*1GLVIO&&*ptwxW^|Xgm8? zCXao5{BJ+?Z!U`{+-y`*;UgU85r?%rO1&(sJ9^LvFs4l*-ot-~M>F`>y<{ z65lmcZbY^9dnW6^SF>68mzr96L@j9{LTV637M;c&LwNfOm=Kg{6G*_U0QPdIOGU9< zxQ5G8;7YieNDq@e404^i@!Af=i!{V6q2TJwS7nS9~P8fu`fSlP2Ar zCl@?)+VpK9-{%+3l*&>mZ8y_LGqm==7pab2WwU~sb=1`}GBV7IvCkD=i3^Oh1Ez7g zwu4&%ET5X-G}?nnsA8le8)e)uC%P2OV-~_i=a-#`so_R}mqUpT+%1rm^QIe*A&$Gt zdSE^Sq<&=0EK}1L{&8uFOvs4!?%OwPjXnQ#JWkr9S=s9j#sb!hB8BIYm8ngL9?;nM zZSqD&#c`et@c!VzaD$gCRnFDdL%eRyiH611DB3L?}8WZ6bFJQX#6LJGUnP4kf%<3n}b9dX}!q? z$IBoWf*;gjgkkk)*Gv}s+j&lh5I&d4{O$6TI0-%rn}sZ(mur%VA!?|n;$Fx-Q>z)j zb^9G{dQv9PVsA#5SMIDxzCR%=RW8)fRZ_a&x5f?sN>|-(riE{4i&nqBdGCz5WlVcXoJpxX*|GtiB&&(bjVO*b$X?JIj*%Rl3V|`&!*^p6u}KHc(FAqj3^t zEKe3de82eQWFdURXE-ZOJ*$R_!s<&QDp*Kg12L#JMmuFaVkZ_pe7FL-j%&#CMm;KN zkoYA_2e}i#WFS-+=R_F4-~=+AyPd1e18CV%ROCAEDLd?RuX zUI6AcZ*OnP%*<5DbBXA9fEhhPj^Fbpgdf)}@xc1|y(ap)<)wx7@FtFGYoS9B#ei(( zOVx{si+_F@6LL(?G(AOSYDp zr%yT?VU;&wIYexKj0{t=W(y)`9`8SASZN#(kQ~a!)06vnHH%jO5I0AM{ zt=oV~lTTs)0qNN_9~Vrq)&r&cX0hmO=+F?v5tnW57CwDCTj!SWXnn{(&5_}WV)mvk zq^+frxCHjevnI&xKQGM+Cn%%kkuX^EHc`+sa5TTvH5R|U2kC&H&_r$R_mZ2L5=S0R zJKT_qrP{zsq@;{#T`#(VTc3t0>XLp2zQm_pA$if?bw}GcEL;$MzII{5%z=(;-1Y#1 zG{iUekJ;MYze?w@uJ!lihUyC&Ld0e29tUMZAqbyeKf8zV8L4T;&0qOu&Iz~4@%>a5 ztXhiKjT6km?ViIJZ!eO`S>$y0+k&$vvaHw<{7rC%E_7P622$!h9DhU)qv<@Q{KX>B za%O=x>MbKvfcTaJsF$xxWhvnI1G^pWDo>hT*@OIO<^|aj?LmJDP+h&ZNc4a{{TyyxRyPi1n z8XKoOydz(soDZy#XL_38`@VHLl1xWJ-}x-z-T<)A*=?^zn#bZ177z_FDx_?e{3lOT zSENj2Tm;z+>kA-YWjx`rB25RQLI+5N!WOJ4(tYF^Mp*Ccyc)9+DB?@pvbAI3{t~v- zp2=;6SEA{{GbH-1Fh>zoruucLx?-C?$y@EUizsGym$v;R%AoHRX=kUdoE>uM#Fs^z zm`fa0v}IjEyv4*2XQ6P=*|g?)j&bn@A)n|QTO#jnvJPyJu`?2m<^yr^1g2eP@hf}{ zE1{f&@`e*VxBiCQ$u(!9@`{u19q553;@!qg)Cq_bc%zQ6oK$n_OJJ81DO4c>xlRI& z0lTjJiw8tVHTV{rONpgnkkhNLE1%EQioh4-uSpc7MG;ugFTY6z&N>uOx(V!YpBvEkVn<#YX`@3y+T?FMEb9LkNymKzv6z`z8fQg}S1 z8JEd-u%C#D5ilt^RKQ@;K7OJ~=8lt}m!gm&cul~3*w}{yk43-fS^kQp3=tATvHUn1 zYj;P&xm{vs5Z-@EguE?UTfO9>b{6-l93|GrAcz{3K_B*Lx_9a1JM2IEzw5bzELSbF zOpv8~^V$ArbltXc0c-KeYTW4??o0_BE7fc6Me_jz2PW?sgK^fz7}aYGbJGG4%V<$1 ze9T8H(A34=Jc$GQTdc~OzhisR;`wutBvLe1Ic zyEB;KOA@%s%>r_Bi>i32=3&4S2#@dzF^9sustDVUDzIoHv!84PLd~EG46;j$V zcJ6h$#1x1~J}oTm!iCi1c!9Ngx(*n)IL*TB-O+?mRyKF;hvn4c{P*H&6lPxzR+mqW zOIGY8(tnA|_D;;_F9l6lwS2kHw~Mh)#~01ihCC0kFm8Y=6_T~G-v{boRyStYd1GH^ zdpYqeI)dFkYFX$`F@~EHH7_HR6VDpxHj0(>h1CyuIPO5lV}LfVkn30X<%=*gO|14k z!K1xz%NlG$6-Dz!#mDmQR2aJ8F^8;({^cbqAtEZPlGRw%M zHu;Lv3=y3=bIvyW_pdRAj?>}muyN|@tRvkwKEbW7WQwdIQH^JL3)D3Ia;4tjdmk&e zS|{dSy|iF<@wImW64a$XhU-!fb@l z5(xw7XjModXjj6+6R3v;M<1bL{Q7JL@+Zo!rSap;$T_?EeEb^dEUl6Ce*VSh&KDME z-%q-@)o*yrsD2w-^Qx+J?r*8>cmUEuagxrC#`IT@TvOh4opy}*WiOY}MHngT@VyDE z=$J zFuv=1wf1atd9GEH={@zplT&(DK8H`Kz8GcYe{)T7f?bhm#jw}27sqd@d46r~R0a1` z9{DH^hpM@GG>I3{01~yK?q8oVDNIk*kM?0fv@ox`#$L&|a?O$MtBrlwJtA0gT8qEP zJYjyYi9TLfB!r5L!FhFt3>X7~QxGfzkPfT8K7NsdwG{M4!eDW?5z$C9WDWh4+ng%* znMANQC`0=d4sRCoD_|uMkEx`dMr5V2`ezd10qxl$9IL*&Oovye8a*c{#vb?PaMjX!`P98k&(}^MOotN~Y z*>{WE_~u8^_-dWe41zOJV&`q12=w~+)hkzaFmf#Y?6%Tn7#t+G%*VL6$jYSj;Ois0 z*l`FqYTBV1DrFh~6(pejm%44BM1{Uy`!=!Q^=mi67~XM1cQh_bam;M`fw+d^W!j7x zH({5N*-Y$-_CdTb zwxX^4Ua>~r(es+s+P#;!$j%*|P}D79-OP_t331_%`;3b2KFTD@`tV^dBZD;yUW{6+ zR3LHqka-^zJsL~SXFh3Zb*-&+d#`izyrET0<%%|~FM757FHiG?d+^JxcORm$kWyW^ zOQrI<*{W5FekT25qHX5S7j_1r$2UDa-g6b&4qL|Lj;dFoFP7|PN3+)FN9@8&*d_Il z(WFmbR&xeBW0B}>fS-J^@#7-Br zix-)661<;pyF?)jqm5E9l4DtH<&2#7WwmE24D6FYvIA2*s1?LpX-ccir0+>@? zp)^fe$c9{gA;QNMZdQe!}me*GBX^apZj zXmT5QqG0YaUz%qW8QmiL#Vu52@DCq&&JPf<Zkw-nex zwP3+{^C&88T)zy(=p8ItR4F9c(#9aMff&=?8t}U3IpG{1(zSSWl zyZ^ds^lUBJT_hr$^rkTiqp!b?1V4-yR?zWWCCF&uk|pk3+0rmY$&AS7lC0f9Xm&+V4W1hwkomZ`BF!7t zbslpzZ$|#_%*qC85%ED<`X2jx8xWqie|g_C*mQ!X=A%)JPY}BM4-u9sp_r7jiNAgw z84+bzJyn)g*KPC`pv`?u#aQ`Mn7niH+mxDHQgHx`=$G?eBx1V>y9Jb*j7kz{Nw`M#*}i|%Z}LKQI@&mA|lPd0wlp;xXX zkqa(fyvXU<$rKfj=EjziDV2<}GG|~-S`%Pa3hiCHL=NpLsJ8&Dn4tcEO+;+>uwH|; zpX0Uq^l1%e2ehC5{p_<<#L~;AaQ0MJ)55QjrH21lM7vBj9^7=rES3+A&3(CBB_(*8 za~dFHU0i>4pp%tkya%Hg<|&)Gt=rC=J$v^uS4Bjw|Dk_Ca#T7vaYlx4>@cF`rgQ5* znalCO-rJep{DV6^`{?4P^0%8#%KUKu+St|L!u7B2_Sv0w#T?epDd53&nI_@V`a+30 zv8brA1A2Jh?u)r9)`bk90`l{shz=Pr_H17DEq~1^OP0LJ%j+9LI1@l;TlI-!##{x( zdhmutRmi}pql_fWkb>87y*ssMkMBHTO*C!B>?9@BIaEn$}U z#E%b9sGxFU0RxQ-0IT-~b1HX+Fc?(^mt*mEytZ-9rXHA?<>fhZ{osL_JHu;WYg_9i z?{;!)NNHR>9QqKC48H?6yKm5SXP6yF!Ppo-m6#WvYP74XP}oYkT1W60P&J_LLaA>&!5vD2A(`AwlfwQ zCg;_wgD*=TZTsE2MtHo>3Rby1MCE*F=v6*4wXd{xL5AWmrk4Vr^tAYU;RS0OBbZ8dPYGTa-KZ6~>$OH{A$5ot7CN5G3F9-1;wO3^l;E@9z4l3G-~JXDn5k>py+ z=+9om94Ha^9hzPbryc7Ptj`7Qy9(CXV${*p{(N4w;h9Zrk3=)zIbCQ73=IuYHw)7) zE1wLgpTZ+TfY95~av>^8T1sl9+4=ZWrwZu`j@~?S_%PXtL~M3_mO$ZWRtkpt2s`c~ekv|^E+zL_KSc#kM52oA3 z*XqxoKc9L3CLO_0etH-0v<8J-#-uiG{BW<`*wT+{^R!pks!R9p<9&fpu=Z4E!=Pky z_y{)t;NUhk>qf}9)l%z{H+_^k@bFrEyuW*|hq<|ZWam-F;1SPB1v}!JuYg$dslX4e@V%b0CH>p9s4m*ILEU&d$y;m8qYbaBOkB!aXZY| z2rn+N;DP_r-9Pdo`$VI^D_3r?Hxnw7sxe%g*6Zy=wtI8>vFk%tu20t)K^wlU=YdcB z)mXnm{6HM$-J=I=oo8v;|M=>cFJ7#)w=Yi}T=zyYXplQS9cLwX)pg?ZahY-5EV~z6 zTXBFA?!W;i4JNQ!Ar}Ca4TxMNvSx`m7x1*}^(BbGpFfv;ne$g%0Sc1jM`pcP;+43w z&FR`>&d;q|THX&gbQQ;B0L#fi+8kDmYd52!90=pCI%CGvabO=^0l%V8%04~exMG=i zNJwo})vGC!P3O{b(pT_WsUE2HQ?>d1AmO|Sue$lWD6vY4{C;T(_C6sFb&MwLJnt>! z^Mk6*O3V57Fj=dLOL(_Ex_0gD@S0mHt_@6ca^cU|vu9=HSdX>he3zE;D zG!Lr$=dFtLMu;ItOIorgduKOTn2Q&|u< zrPy5|*A-}l1h9Fwwfd0bl^;KS;tHrH*h*ZD)iRUh2YN{70;(~R<}Fzc21ZR(UPE5N)ZK)Go-8TWk+1R_Zzg^q zFRA+@C$DqomN$#H4boojZS?0fVbOhLk8qw&e@{5_7be5y55%dQv6;Q{NKY$gD=3e{ z-lKTL=ZD5oNb=c?%F9#N+PvOta5nALK<-LNh|{`tdca5Qr}e%|L(f5DP48AXQo-{_ zMPuH=Vfav_n9L1EuR+lL@4xSUD!dP9(XAOh7H2r z=G{|EdxgA@cly_}6WVu5jv$0v|0N9iXC< z{)1Qm0Wo*Z9QJ=5aNXAvqzq8Hw;F5rNN0}N@UK{*!N*3|g5$O=iML1Ry;weNl4ScO zd)P9UUt@z2uYxt33GQpx)_|3*U)aRD0=gj9;r0tQ#n5mET_>#t6tA&d9}M>A&JTRL zl09Ydr~_7>^q98HV&&oOc>mwiz0dMHFI^|OKvGY z4(O`=GCx1vW~$n-VWDTw3aAYuCuQ3Of)%`k=WFqA+c5S_OBm-dGs?CxO_`nwN_~k1 z8#-(5up$|sK0OnI)NkK<8!!lE$zE`rA%t`y!E-=Drg_`eSSR~=GV3KBEG}QX=u_!K z!eP{H-(s%whGDa;tfX(2Y>B*jbv>X*qdGT9IlH7GCqJJbcmv~?$i#7?r74_Az6_ZD zeCV)`OAld>NF@@46e2Q61!(|2&A8vr8u^7Z2|+~xNt=fGk=LuqIyzkVfioiL)v=ji zJ6K6Y#lC=Elc+$byQ^HZ4XU_{kX?}7v3s-V&6xJ%_l7y#(elF24fnP@E8Ou$YlkYtsV&CkhPOuh|q{A`)MzG&~cE!^ zG3o`a{wGt*jl0k6egEfzeo|7npPMC4;&X-Xdstd>1`65N-nM|6Y5k>w2M@~fW^@Sc zKtYP#*a8GmFJ62uh&wQAM&UBF-K>};JSte zlbJJ5#5sc?=?05hw})4Wum^XT5$!#2V02hm94+4KJ$tii zM*mvoyEX#8oOl)YlKAlGD4ElS73dmumoL0BQrhy z{>&QVPa}8cG(kiTx7yvo{h~hi4XKtM$L>OR@BxWm-q<^%=Txw?GkiyKrn|j zlPJ$AS4izbyK$hdsfF#d#Qfo9M`zygF$$;EG1kqbM91%$Q*eMC%uO5dJ_1J$#;F+V{LS;W@=#4rCAnz~>+TS8z^#N*I=H0EuV6&uc38(C{SG#tNm+;}dhF}L2 zmpOZ2V}UQY!=h`~35aX3v!XydHgvL$TMQdno3l{g%%fugK00g|bd9?ox9}3IUdWE0 zhgQ8?uSGxaqU}zDPJ7+B(q`E**Vj3P=mL~lonL_WWu1`}g?{l)w{6VpEb{6}p(3h_@bmRuL&SmLAxUE=FjdTI(IS&i zhvJSO`uRW|brm1De#T<^To@N*FV@dluF_XFJT&xP<(KW>K8#~Fj0lP6FD_iH_J#!> zwKOR)za7yN{av?G0i6VXZYO)4g(u{b`l-sw%I8gkm35_EWHFJsRpfdv;Ipo;S5W@$*rg$bS}QP&dzmT)~EO_lRV~lx&?rpv4<6q?tiM zTaP>m=iz;+Rv-fZz!Z{W-*bkmMKe0 z5zx5afe_xix5I&l2!)UMtv@~wrYNV~hd|qeL=Tw-BxK9qS2EZLO&dlZ#B}(NUqyH zb>>HAU_-LUdb(bwiRKta=#fDBl+( zo&|G)!{cA~MBYoZS|0s1W|4c#0}S*i3 z<~estY4NASz!1o`7Qq}MUxkSPn`L;iQD-v`Cn~dV-@i{6!(14ksccVeY-I=0y&s-v zn0N)w8hK3bVeTpJ!!BK+Hrumf=?d%X`QEaEYCfr>b>g|Gs6(cL*&G7RCBr1}Ih2&e zNqG&m!l4YFxwV+tD4i7;vY zAm6{ja_-z~2v%S$aQ-4E%>1}u{``F*sR8!0yi0EA53Bq7l~w{xo`4@_Wnl;R0ZHDp zkxwc%Hn}C?YDIY=IJQxn4VQdeUeAs2_Vp#im6Vt79Z?9#PT(cRQutVp-U9sS{+ z*feFO<_#lTzja=^j}|ubRrLAuBhUO^YdUAn7!C})yv_HL_Pa|2jgg-F?dx_%SjG<< z;(|^Ms8N1Fm;4tmQnL4z9A687gAhi47?9DH&6`Ii$zdsbrBm_q=iyhbnCeFDa$3hA zKA2^xRLiGMt*zjb!;de=z{T+0x}n4*ZzFEZL$$ozTr#MK&OJ5V#_W3^jjtP9Srx$F zk(p;i<_TD?wYA{ly>%sHM50|W`}ch6sNMdUO=dyD?4-Belk-YK)SbnSh;qiUD-u^l z53m0nAq5k8!gZd5gObh4s~x(JD~ah}dUDPD`F@d+_85;*=nIa&Y#U$qdVr+lyV}~A zD_2I33i7n*9&iOMeKF6IRo=(umTT!sh{r^r!NnQGHbkxd6LNAS>EciEKq{KuP z))fmL|C{y~$0{7x2+_^@^vO!JwKT|W&X9k!0HI%a29e1hnvO_~Ckq36)Q~MW4!f|Ph>5YreB_-|P(sNER531y0+3pihcmy*esxE)aP7`6c89UgCSz+}qP#H=%YxtTfN zAajOS{rHwLZSi1fb;d_a;zsG5CO3|uwJaDfCb}F;mvrtv)-#M%yy82?qs;_?Xh~XK55HwNwB}Z_>1+f`N zfFyV_o>5B3crLK8IC1ji!R>-MerxxwPT^g<>xv2 zcQGEOe__(Mh5D6_t5)5UzOOrkRdS^}P1u-KmM&TrYndiFdjIE=lJ#I4sDnE1#ja8I z?L-BINL`*Z8ut3*+7iW@x~AP5yBowGqaem=^ePMOY##$qNVNhLY#Eh4|qG$ zJH1o(up&-qx8L=dJguk1*7bazTZ$e8jvajlMPIohW%d2A!P)C!=f}w61Oa=%f#795 zy8n#B-@bljqi=76f`S5E+9@%poOITghEY@dVytQ^k7<*9Uul)D#H{ zpGTS0YJf{XFnZg*iYZKC&++DG=cYX?(HAd%fW@U@8$L6zorCIu z9s?)3Ews;Wf88@KPQ%oU{ZNU?$&=T?x0EP|7omIrb7hnPV~{8~ViIP*T4#6~Aeh{0 zm(c-tNEVkasj3I6x=px{l=QZ^c(SbQ6xguh;^M5V(X?f1z8`99YfJ=+2 zEG;Xms%~))AHJDlES4`*;E@>$DFt(1qd$M%Y*urlpBh>ST_dyGNp%-k{c6 zsY72gv$HO@JQr2zQh3%}xVoFdg*%UulD9EfOR}}jVcm>uaZ!$Z*N(xHXlN`u{;mac zNyqumpAYDf!cE+_BKE)YQFzUS_?#kuZy4pUhr1RTsh}5yF9S?qy6wil{u(y-f~3Wq zIa-in;F;ffc4jWcN0ZsnAY}#j-hs+|c3a@2`n>y7EUC*|7?>;HHjNLrNQ7@btMyM|U z9TZH1m?V&lDth?W7$zCh@XAkQ3UyUd4`2)(OiD2g@p!g z$C;VYuxPw6r96AK-Q+&Ib!hYGlr0n`9SRDVXe37PxxpxTT4W7h59td6Z~$-HgPN>% z8PFwo@vnV9CO10e1R6Tt)er?&{deq&fGg@Kw59g~&d0>;EPK>-x4wR4-o7Ft0WaI3 ztJkamwndA7L)c2_kHUYbv3dtVhyI71jeRSoghRDb$b#^o)Y$td9nmsk0YiezyHQ?7h*ywNQET)$ z(nC}?$`xXf42MbnQM+l27cFwteaqpH`@970G5#*x%f~Csg)t#+Jk=S*Lpcl5wSzxb zR)R)qmFm&q;txuNk`ht{^38{#Y$_F9r$9ruLi@mhBtt@P?!C`bH01Qtm173*G+mC4 z)=*a;uJ@oZ{WuaI1a;++vnZ4SwkULt-PpQq+hMnfAT3l{AO&-68y=Mp6S?gL3<7*+ z`PcrQduIrHaS4j8Z4{E)?M|exDc((&#?#TT#Xs0tu8&o#AygeVcd*v5kwN1M&bM8b zKaqaR>!2ZW+tqoR!^(Q>Vtfxtba)NLCI*PNjy|OPO|Twq;}i}e#SG$=E8>z@Jn481G|jgBAPVaFASrv~a+ z2AP3ckAC<88_`k8#@AUQco$u;*hR}uRBFu z%sEt)JWN;k%mR6(g@rQ|1ImtK97*`n-a6&$wI*%*Dq&WY@_3)^(qW>uwZDO*&ZCun z&*~2w*ikT_0=D^RtDt`K@WWEp76nh*F7t2N_oPP(AT;Hd+MmEDu&x;7u(0*UA^{uIQN zM5Hhsg%q#S^;&exJe2_K@E)!K`okD@P*GH*v{(3P5j79Rrf@xPZ|W|~29rUhO-4r~ z%Wrf6Zbj?U^6S^M|EIk#kH>ob)>a9XN~MqtQE5U&k|7i#BtTy&zUm4*R5gy_St)%^E>Cff4!gg`Rwey^$g$Vd*An3*SglV)*6K< z`vyNu>VZWZsFx}YqBl@QXLc~6J1A&g^i+R{E$Z=h@zSM_k8Fl`iQ|O>dKiTW zdZohUgAop1U2^o;v1=~Hh(U2bSK5st*H~FbF@A{q#LLk52y%&+XXpRC+RL-egVr<; zhlWhyufdxFgsw?~fgJ6sl&e)jearj%*(c!N%+2`$bX8PHxewZVNjhhjpEz|2<#D8= z{*M9)tO6uW81uNvR|eXRd&rPny3_-Ig@OsFwr=Ql<8It4u*b$hev|zwWL%nRYH1KH z!;}IYeh@U0l6s5RGtv?=7E|m+jv4r6E^z(46jtN4?Z@U8a)Y&2lI(^ct&!iKgiBzT z@E8ySIC^(Kn`S*)WMeM#)Rg_zQgHm}(8u2U6uWN;br9qd=u``_kq_w-t*X1}BXqC) z{4(nfX=sR|Zgj(jRwU8!oq;NIc|Z}M017?Y-XiUUbSc`tA3@dvLKpXo6fhq6%JZ+B z#=;`oa0;v+jC@tJh8-X!sKF&6GVFA8b!Z9RJUjtSXV}qa22)qaer^(Yn1!VfCmCV# z7$*i5{Lg+j`Awuk3~blCN^b3z;R&!j5;Q0xU*Sa-y8$4Ek(LVFr=A{;8|~p|Ri&kL zY&Z8myo7=ki0WY9vwgqd(y>_}K*1OL*4JQ%zXP%A?cp&AF+Fl1B4BO6?4rlx@Ps|? z6Kvnn&9`xX5c{Mf)!1477yt&e0j?Xvh4(+KPqSLS9s{~Hjvu$gG}xSbcxgcCPElBK3!nHXUbi`)ySP< zGy{&3=K-|SLvIV}z(bxbui#*@f6Ko^mc7CVIchQz2Euh5f)zBBFgi`(tYG5s9sthR zUAEm-+;c&&s=B`oG(L!f=oc^a_e1+Z3kwV2fTfETZP~s(5L1tlg4_>CnbA21PmLi0 zD+Zed)TR3R^_vcqqss<<0wBP<=~PGj=#uc0zQk7=;N5i}x^yJG+(s5WhMz)dPR{yM z>kNZ;o^u5S;dubvqF`h$=M>RA#CzG;*%k1;Ktcf}e9bGs{R%-71)!fU2a#Mug9E5b zG_#kHlM6et88}`8Dq>^FPr12}#J#Ji7zVZg#(~@kkQR25mg*dU3}y)(Q6+-WrZ^ps z0a@faw**Iep)hqlH@8CY{Z*Q6B8JDDaIvA=5C{)MET#DEn_ka?J90~y!eB5AKI^H7 z@G)+IErrPc)00a`JT@T@GY8nPZ#Gof-qnL70ld#p>xc3+3zUx@jf;&nv9dy*mh^J9 zrlxW+fr1uD3GDdQQY_1a{XQ@0oC0RpaLDlPe$f6>jC>4Qt-{upe{JdOLw1u_U2e`| z0@BcuI1dl;yZE920&3|QQ6n3%zg^zwy{E(;LD%|Iy+n7!WGB1f7KXnzuF(vn>#lsk z5UYUUP)nEU&`Mp6m~#*m6f1p&?TB;x<1r&Vmu~vw7oj=gb9=MnM(wHO-@oqQ2z~P7 z7*d3&HqARQK; z^#T-rm@0~WF{*oggzbnDTKqZ$w?7t2`==L~dpXg^(EaYz@$((&1=o2`Wz>BHbM?+Q z?ek}ZxgoklA4VSRyer*5)*K`Mnfes0oNs7TH6w$8g?8Rw-Ui}|*3Ro;)uxt)elb?9 zCH&(Ng@Mvx4&D>w)xRG5SiGb;L1h{dDs#2aRPN8eIO9M~`-XYL%4e5Hp2kOzlW)KB zU*q^)!gkUWmwBks@agyCvgHaIAv-E4MQDC5{I9Xd;ts5p8V_MZ{Cr(ynTz@CA)gI{PE1oJe2?R%39aAXAK%sMgqjXd=9OB$CzpAbJCk61sRCnj9ZU$_Kwl9bEcJ3FuA8 zZgEuigMNJYWh2l={lcedW=ixvzbp=3hNF74qh~JbMFFTTs%sl5+San+Yg-@l9QI`Sur$}El~;UUkGK=;Rw#F z=nToYZXG1^h6V=Q=U#)l#=I3=xt*O|efIfy#4c@t%U#|e1kUD$8-_dpQbIser!?Mp zjNQU;?evE1?ENY#Bk<*M%Oj3HLve4e91_(q3*Z}{KHUt1=8lx2J&%7~Y3b`WQwS$; zJvFm!(43if9JzW^oc$>@J7bT}Ak5Jo%935LF)K+8XaOj)7Utt48qqHf&?(^*0dR5K zZH6=q@&TG8m`E{@fe=DMkHGOL14azd`RglRajI(0AwRR4ItY3>R2Q|SaMXk~Zyv55 z5B_0(etC5vEwuB52m%8KJl=Noq{yKAy*#C?iG(X+BxJ7xb}fUHLy*-LdZ+qbNcaan zyFmw)If@G|j@cvlx|W2^g?)x$;IE9DcntmM z9SHD(3j0-%n@FCW3g)Y-uJ%Yk@tZyTzx5>iZd+Sh?rp@DEbG>7@J63Vp7Q;h{2-cd zLpxAJ=S)l}Sv^!=d_KM)Kfl8~6&XsGH>Y_@mwp~q4>xzDpEOith+8L#`6F?$}#j8fC2?!MtwPu z_}PAhIjH~M(EAAp1kDkw@tpEoy6!vw^E5EcL%pW5b)nmLhnje_LpG&+G zG%EVZgI2xk?~e%#9bH{F#$@H?>k$b6TgZStn?QGdV{?#jC(x_~>>2LOIDv52a`{$v zmS^9S|B75Aq=TqsCe>63hgYUSiQ!UGejE`FoSjj{di#A^=~M-(V`SmSEpL8koipic zVEE=z%=l$FTIk-;*Q3V_&{6f)-M}!orZ2rv-6B^-CMQ82?`I-&;si;=1O^6f_}aJ& zsU*KGy(a?2ATJQs&ZDz=67l@`T1LjFj~~C)-i4sqgBesThMFg<8)Bi2mmGF~eDqn? z>`dA?J6Hh(UuftfL4yV^99M66c$k!o>XczCmw$Sz zv7v}g(_Cm8*`f`nAl`M;f?VwLUBtX#yz}oV>ga5YWkHK^2zt}^V8H|h8A%rYCel~9 zLPRZxCLQuhO8i;OktxhFvC)5Yt)MN_W?1^H?v-yk-lzzK4h33Jj+WHS@aU9Uvu#T{r?~ zI%o|dBU_>nN#T*+y6U<*X5Kf@2zt=fzC7bHWyS{$eSCaQ9VF>c#Dfn=zD0FyzXT1T zvzUs$7?-Vfmn|L7M)5Ket?NLSCFrC{ND$gW*1yx)z8u_a$QeqirOZAdkES#G93_21`TN?837dt>G{#1Jzl(wwAw=g@&UEJ#C@1U~&Kj zhNOn$cr!JkuH)2^fWi6sT{ZC$xyD5D27(2*0IQ@!o84v#%L*Hh7C&ui%LbgnA3sJO z2sg^Ef?D7W9WNmK#t^I!Wte(C;M#+3JVD({un0nPJ zPC6QtNudM))zeq3l%9Qr`egl80DiocNg;#N3A+7=hT$uc7y3t|K4U)(IOXQmOIGYh zNV0yH_D&vuISyZxa=L1v%3{Tm4Yf5j&7nkmdG;*Fe!aPFFGU>Q0I`xZvg)F75P_zr z1KY?h5kmbpz6rXVYmC<&Ra3JA$+L12SoKw6NZYJ0XvW}Rp0pCUR~^bAY}w7RtqafK zh$3oPVbq`Bzon{^O}=zQN32*m{8n<&(U7^Cx7SW;)m~^r^}6~Il0F+Z>b!AY$g&Gs zTrtpK@JGtZ^ecGj`g7V$nb)pOR_6&Q;^F1xoyqqgRBk0<^mfHTB?>~U4@R1Wj2J1OI!7Cm^EqMu2h)R(AC|oQynut zUz;*0;K2i9bHxY8hqZ+%-6c_ck=-N(rwE!^epCD$tcBj!J;u3M(YA z0MR}?%~wG7jlDc$5u75zXJ1R1Y9~eEX_p`PDpio2dvRgNL7Q*P13?66#L8 z=!mf$+PthlNRQOjYCe2;R=EnYJksbTJT^RBQo59>`^yhN%=E9Uj@DUpqj_DuaL$$q zAYF^NAD11+Dbb4~^54WOm#sG>sbGirWtm~IF+&6rsDxFqH9aWyaj%IHR4vQNX(7q` z#6%?KS2}72zi)x+G7O|P_!MlYJA#6T)xfTgqU(L8L)t(z@FD8Jx;i@0st3x|&|$QY zY|Ron1G=^RC~qwCAjlDpE}cnSMRSC2xz|LoWzMN~fNFGCfS}OQzZwW1l5(YkC9yde zaC~A^Aqanq0N6bVQje3`Hli0$Ouj8`^HtDH@JCr$PMG+Gm>?@F3v<^o=^;9z=b!U; z_8bx?f+=)NOm+@_mV!Z4YMciiY2C7e=~S@*dBt9&<|}LMk_!kIDP$!jl(%j@3ioB2 z0tuKS)X*5S0nFoEz~sZY)A{XLoYFMS0YY!-#F*eoP?#Lm9@RAfgJ`~QVP%EXT&nSPA~#i4MX|=AQ=LAF%HSN{ zHXUO^?|{oXB6(BoZ*q!*7ed;8GgF!Omu&220n)O@kxaaoMo#X$Ux;o~);2aQdrh?g z@w090QB89}isUS@?Va3#>id z+gVj@?N+=udKv*uY12o3%5)I+c#9nI_s)nAH|b^9TW}~NDv%_Oh>rGlIf3*Gyj=kzwkAqLJN`DkbWv7YpGsC3*V zbP-@cD4EAPh2$U>1=3_>A*J`=*HE!TDcRB8jR_?;l$DVQ^mKDWJa^I15Y`g0-RnIR z=nm=rM_MmEG$i@ft(6caV8T+(DX3*ylM7y2)%UUXe$Vee7a0I8M{I>SM!FpDW0*0x|{_nCa5 z+^>g8RYQSKSyE^0YVU~M3-$Q?YMtz1r_!2u0$Ri)t`HhDZwOt{)DMKcd^sQ&Yz3kV z#5Nk4PI*r z?k)DDf)zt%u@(0M1wn(wj>CnHl=8dFgh=9?j7NVUi6?$Cv>oYe zJmN}{AtY>VZAG2uE8CD~h~AKp$H-4;-q+JJGJYy8HHP+WT_o5TaI8jVW~dZ^T026V z9dQ>ZF%+o5Nh2)@8WYm|-1vp+JY#T`0NZavP{f7DMFdh?@0`-o@}Wa*d~RadB7hix zDVQnx`;5ydk;ccM#0wCgBv0+UhS~DECD8feSVFpi7+w}qLXeU0IfUOpo!9scwS^%i;2u%9&ALmQrfe3M7Uy*91TwuA7Q5XgckS90 zmypndP!F{c0GKDXSAp9@F$3y!ajmF5tn;ojH9duCb*heYC16PDtS0P_xHGg2&845< ztAzBIp|Juw&Y_~VGjfre^~BI)6!;q>PlU(fMppD%6Mk2imq$|nq^!kfqa`WJ#g@FL zh9JtA2=`Hvy{P~DK=T4eHg|b4SQ4lSykraYyP8X*09CmqZi0d|yh z{sOu2KC3Q!kC!*A=-Sn*H`?C^fsO8C9KJGGceGmoY0k0H93%iCN}=336sW1Er-w#m z2v+lkigJV9jLu0SX2WNT8!oFnKLU`SbD#HeRno? z4Ualn6CDK}jnNXjP_Ww4jb~;qw!-JBc(*zwfED~9`wj8*q+Lg&ufO7Q$(0Ymk&)4qavEwI_v=A3)SG;Q9c?f1I1A>9WWm^kYPRGA z8Dgv?*mrhKG(12=jLbP!0J%}b9?Ja;0QwQWgzPB*w=BFlCr`mIE?k^7nyxgV94S5)O+W9hkrq zJbUqC6&pWF!ANb%BY0bJ_Q&_gSR^3lhrlTy_NIz*w0Gf373=fvLnaMf2M##&eUK1f zPi@tmN4?4K!lg@7SXngo@=)FgcVdl76AT3>(xTXegnINRgG3RI#@aeLVdr2Gck_@i zB;;VoNcIMI4~;A3A0DxHaCpnG{mv#aF|G6+Nj-~2G$!V_JlJv8IkFn5>@}>cGswDI z@>(5NRlOdzp?6dJBYCt-k@Q+}fhe*$JEjJj54h`Wqya|85E5@|6ix|wKUsejewc1Q zI7-PSu`<4hOm-Uoh*?Cp9JSB z`O;OaTl4b|`GyXM%lhGl8=|ru&1~`Qu3n`?FL|JKL;_4rTM<^mVbQGj-Oz-11n$0> zgz)tA3A!b$dz&h7mwb7z9=B*4OHg3=L49VPTntPz(`e9Dze%elPs4Zs7OsSkfnvr* zX2Z8v9V5^hBZk~J9ghyHPQY)9O!KINzM6iDj7?$f8wy;!WPr7&6UYvyLGV^Xj2 zhW%^dr?9NP?_kP7QYYA6va}RX+Icb%4Pahy<}G;tq^)o{1i^yz_<%3X&AvfFMcTVS zWP&9}9Mk>vt1BNRj+n~}B|ruepB9)kFJ8{^!s5f{j*iW7H$NjmiGp_23k}E#3#XNr zA5E`cGwPnj+B6^h2e=c|qC9&FEoVsG+K94o#%s#eGjUSjX19cA=euyG#2u#;I z>8zj9SU*EUIzFOb3#f#Z>(-&yWYEo<;-nW(2zVRYM>5xv0hR=I?`B%NcCqScGKzh~ z#VMAZfUu+;aW{@C#LkdTiX-q-3nBx)ByZgwtWNY4cEfQu7_ptpxm~_Qf;}a-n4LVe zU3oW=u^G3tc%w^94+Qz{{s1A8ZcP46i7#I=;=X{d0y4>q1@caIjK%1&7hJn`?mP)e zgUmVnorr{Pb9O$dN!r;5J1%F}CBn&h!1|hajq$ZAfz=zye5?OjdAiQ&8O-?R&Fqf~ z1sB%k<;l#LeE?s;HA6LTFQ_&$(jCDukfdbUKy>Ja_3GH+>i0{OpG*tlpsf4i%Jihc!y#0-rp49heMXWznh0Vx;OKnSW8PXxx8}Tg6 zDlJtGT7x13gJK5`2aJ#e(|EOD?P<71WXJFmLJdHt4ZboElXiUSTtw*%t^E#0Pk?-! zZPM%G%^MU=qOr%(&9gBXcFSX)i>!K=F?z^zp=_kvB2z|sx`knP-Pe?S^p4WoG8%XB zal(nRl2!S#n_1{}E?Oki-mtx*yY&>em{^ZQZ|J#*$JU{m^fxgUmog!W{b}xcXL@5$ zMg@Jmu5|NH)@<{rA7jgC+@LRJW1U?Pr`R|h`3NC+wZ56ya3Nn=TG*pKlplk%(zlgS z2H3mA!CXL!Z||a7)xZ++{bR(V2nPW}z$OgoY(ZusjC$4dM2QnC8cd*H9oeP8M1eH&OGcu+ys0J(4^WQw}UnUx)^lT$Kr=LjMk)eE$jaj%X!Lvy!krL7gwNh zHoPKMp3VC66|LFt)hX)H086Nv`w((`-`9KRSkd23KPF?;$Z4_;11KGGmhQ2iD9|$8 zF|;Kj@Te7)k_MiRp0RqIyDub)A?xtq8R*rfZ*oRj=1IOm=2SF?g?kh9tUK@~YcgV- z6xlXdzn(|U-*#U$trD>Z>d_^a2R|Qs+z~z;AvWEKuzTw3o~-+*XGd(zC4Y}@`c7x!o&-&}@;?PzenrIM)K_>5*(nRm9)3}+{ z^EJQ-yJIq%$NRj`Obgp=GUm!NFSo-uY_ZW#=SoD!)R7kHLsx8DYF5nT`&N2jxk9jr z4R)ETy2)GB%%M9Ss!Jx`SD`fk8IcN(8fRhYJJf&mR%gwOKy_3I8rOEotcF!X;;;^; zJ{y{sr$-w(4hJYzU*esyz0@%Hx?Yu`r}Ks0dIZRrRk?34cNNxTWzgXUo5N!m;+l@0 z-n#{}CUaLQ+IKyRz)0!Av8-9qQE#(^D3oWKlu0qbS#=}LkcIBuVf_2PcZ4BE$!tui z#&|dRAfeqf&R7Bafj87}7f2RdXP$jrAl#oGkL)z$F8KZeGnDBW18Dc^$-JizJqWjN z-MSVb)S2rn0%x+XqU6&K18<=<5*e#EvzkeI4E_ZgGFvoN8bh~4KgE3$5A>sJCU%TK zV+vKMP1Q+Vhkm=JG>CDLN@&JBJG1=TTSm_7qv&VD_xEO?*5UoKMyk{>X)_775KUxf zM`D~B(9|SrG%-fQ^utE@5DTqJfL6BYj)Qm#8Hdm)Ds7Q;beeDB=@9>-^LDC^Q+4(7 zjK_I3?wL!AzXGu9@sgST5;yk5x$+lL22Qzo`P8M~k;`G@4W( z=$!3TbV^0zpnmj|gNk|`zBU37-sI2Dn=)V6_FqEi1r~#Po$+g&gTCYz?=WwnE^G*9 zjBT{a91iLzbGB;*T5GbQ)fdIdiV-dflW3Y5P2x>yy#;fUh{ zIm-_&?ND^+I@UBhGX^Kb>e~G9I_raiHqcGPw=-^P}KIgMB1J`$B1c;_h z+a0|x7vZq+u(6pS{bTX9*l7%tn_W>tR$0{S%52#2@mU3qLsy$6*1G?~Nxh(DnBqYS zVKEq>G0d0O0!6dxcq@f0M`U>v#Cq5+06hX96bp4nZi`Ol5E@kjBM#MiQlss*CPs(O z$Ns>zw+h;j;pHdA(45j!)BR4sNv#NZe1y85rj~UrW49fxL1(p|8r_hL;bDpZ(pw&b z{yJ7Eio_zHhCNtsS!ci%WPX&65_XpncM!YB0n-b_Mm`?%M=dBi5O=F&HuCj#;kH+x zVkX%7i~Dk1JSydgDI~iM3_vDke50cq2p#Pif9)k}wxg?T4{q%zfG&7hb=%IzWfUE_ zE9evx0l*hmz*ARA>FKgesN)JXE2--(*1drUDk~!1CycXBSgxUj{_?A*BTKm{Pc2Z; zy-bBPIUbPg_bqoCKk(7PJ9xMM?T&lHh+-R|OVx`T_HmkO!KUQ}xq-yo!F49Nm{{N~ zGL#2FTB6=sa9hwESD?rttkLk}ldR4s0c7u>qpP)IScA!Xmb9*T$q4tb2g}#;cl5-U z7;ZQWlYvzDkkcrPoFW8cLajFsK=OD~to+^w?V$y3yY3g_bz|jnywlZA)74T88uVVq zQNku8Z>ZUz<~%=>b6~mXw<8M_#DR>h)Y^|tS~8l?}u!~G{+9u+;rZfaZ)@ykYY3LjbqJx^v{w3fUjWbeg4HnfJ6G>aXbyezvVws)kpUp&h2W+ppRfEMr zR-0DnM5t*QOJxdCBPV5cBkS8^UW1xAlzX%?H;qff(0o(R#ASEm>{z2ODDJv(tM5S+ zE}P&0R>O27MnG3yGDBv|u_s__+OwDNijW1x&WHI#)xR|u2f#JjoE@||_%2AR;g-Rt zR!=v9#v#qN`(nTJ+qVlV%s$)ABSjqHQ@IMJ(4FsD?RsMIqc^d72BzpnYRN<_?KS$K z(I~s%==Ag{Y`K}nvCOdotr=4^bpdd}nbfbKPD5&^i%V=mHbYThW?46qSTo-u#JG8Q zSmA3w*1HFq74MA*G|k6`XLJyR71t2uk8F$`gt1QX{WhdA1N+jJ+8y1Elon@-D6}l# zzO53V+AxCxDB;2}M+*H`H%{;5_F%h5BlmTKC&ejqg2?j}}jk-z!2ICzjtUXiGR(>kKU{DS`J=A1FJ>R_U-tPZYIT2H~CQ zW=Xc7D~8~sHvg@_l&9!^dS<*jYvo%$DUCgVa#fuu#Fh7}gT)4EIAL0*Ce>D>6I-VF*|QM_5p7A^~)) z!F6K42N-3h0LOvGb)0DP596X1Xuu_Q3j_fyrAGMFo6^$@w@fKaV1m6;^3e zC)^8!BQfbi`M3Znvk=IEHSZZ^AdtXh6e(TDZbwHb=HcGFt4Q17<&Fa`vr{Frp5FWW ztH1?6GP|uXRtMh{=Cf}tI!!^gfe&1@$IU7G0X9SiUN6wH zZobAg^_e=U-c*jW8clb3Y!6Ps7eRikuBplDz&HVK289bUOG6=hyCdWKGR7K##e$)-0;O z#=dcnTHLwoI2BfZ;#hpO#Nx>FEt6%BA|s_(69SS$Fm}UhT}e}v#`L~T511NoJ1+?^ zPtOkn%tV?qeQKy+*eB*vF19EvTxQ3fZJ=O}bI8WrW;c3RZUc@-UHbze>z^v@B8ET~( zWfLm3AyFIZPw~Y;Z)10jXfem+tOkOF1%%3E48ZG> zao`}az6IP#fq>y4ZGcn{xYAC*%{o;m>}h*ngqq#+AD=3bIXLL+0rr1((8ozTz6M`E z=uFA1dDqM>+(*1j>X^h(G&aemnPY)~Nm%1!V|)ukqZZ{Dj|{z))t#4c5i>6Bo`CTJ zyvpo}D`>PIE_ynd9??)IIs%M9rUheNW9+^TGGvXvWwELsBxa}}YpMW9N6er$0YHC5 z4PYC47RT>Z-Mx_M9^GyhO7G%D(#JfRVPG9PQ`&>m@ZM{Ere0`GUsMgMVw)X*zjU8- zOmNe5pVjPi(<}?+8xk_)t-qfBty~Vup($Os5VI0dD^*@5xDCJo=mW^_kvE;ha=y%2 z=8<{3pzWOxn-+xrD5abl0R(EQ&Kym|-OT_lke~}h(+!KT-mSA8H|>DliIN}Bsh;e@ zF<0&P10b+9dr;hv=2-8pmU3}KlX}a`EM?V$9)=pr6omZODD`7XA$U)QX@mMD44T%> z$Qj`#@b-1RF@Zs6!*yX3fu&JWQAr$L2=76XhF~9jg!_^^dKcDQdW8UItvO-iXIr_% zKFroWK?seLZrFOV620JSk&P)1y9v6A(|Q^uDU=a@b9q10Cb;8JbLu&eDfD@X5>* zd%{biS31meD)8&CLNYm)39@w$U=83^#sn(j4H>qtw7<1Z_1CILyAE~z4d zCG9A!36*e(MkyWo7O=rRA=-n1DFUa|51&V6N9PM5GtL(>QHbzF-Rg!(D^9(Bc$9I+ z!|RQJ@Z8nr9%x-`52l^ip{(h;EEfE`tn)4LvWU4LP88mg-~GKA@CwW7*k=~fjlDSI z2gz%ou$3XPOv_5$))oQLl)`S}ZkOdo@XoaHIxTYkeD9pM`#ups#$mDBw#48dOcdx< zOqXkGW1D3^t`ZT}8CcMEJoi!O(Ob}~SM?Vt@9?kP=;Q79QA>GJG{5;_OZhk2IPK4%qJ^ZZq}|Ow2KdG25>$&ih2N) zGA?xGIIf{FUC38bZ(6_&_PRmEYRNUZUs?cH1nEelV{5`a!)ux0`J;DY>~)aAC0W<4 zTOWwnn3`wu_QS8&yfRRuql92&HivEIh?VAOv}F9TVTE>-IkYhgjo1@6J}lQCNh*d`De>Je1X)!gGF*s~2AF6~xKCKbn!V7#GVMH@%j+~z0O2BW^~J*dBJF`@ zj}BBcO%z*o1?i9$TQFE*NjYTp3$|3{Y~YgEZ3K=YwnFfQ{m$IY=HM@+dRuj5RzAV; z^t-}r`-+Ua1#ONK+3zdXZ}sU@Rq8VsN50#@->;Y=ssJw}Jt<%wExW6Tg2-RfwiCB} zmFSv&R8={_2=KxRYAC!G>wc>>cTCch#1`D-#R$qs0~rI35H731%!HGtpPTEgliv zjcw5$-p#JVo6Qf*3enX51_S>2b5L(j!m9yq`03&qlt~ z`)nZ)APUsY%*MbRqaU5#b8B0)d+KWYMcBQ1npHJ>1?LGZW>CmV6W01Sw5*V8cEYV<4l3{Z`l zr=0{gBUnMyg46;Mq?%(+=wDTh1aGQh=<~@9(Q8I3WBMd=Oz^dd-GpQ6Q>PiFF|>k34kf$S)^ngVV=2hYLJxM=&wG6ouv*t3dmOpn+OjK zsW1K(#d36%@Z2~{PME3T!tO?O;9yaQZis^=l0QplQph)p(ao@;3bxE2IKv=1nj6VZ zbC*YL--VhX;U|Z?ZN|?ycz2w1l!-V`wcJ^rPb=$8PMXt6l?>Y==H30(tztIvZDm?% zp|N}8O9e)Hs>M!e@4DZm<8kXSHN}IC0Y#(HQ{zfY@9&7zOx@AxdHMK3*r(Me5m>^6 zlE@v%S$>ll;%%$0j~5WHp^D1%TkGp50qBL+@MIX#>Tpoaru;eR`H3}S1C2983e^F@ zfk~Kz2KyrgcDxJ3WDG{0ejoUB&WA&4Xc&n5o=&d1!p!bh8045rz1?-IL)9Un-WH zQ|U>$(lQNA;&?m>Fud{o4tgOK-rE@_?S)xrMfesdnVUe|z=_B;z6NGZ(nFm^=_V8f z%F5>DvRsv3_HB1mzea4>qa+Z};PGS_QfaH*?_1uB&6s3%5@wZ8DC1J`e z_?SSR!M-xfo5DQWeV22VmS?o~Tn#$NG(+Z1@(lgk7 zWiMMq9Sj&<%k-^SgG4~u;d`|M;k}sr0FDQ7y#>x+lgjIg!@^Mrsex9N1`t>DMkO_N zRmU_1Z(2hs0ogOM`LJdTLB}(3YT*gLzvXo_QB}DJMho~6`FAvP^r2#||1(fyry*P# zW-egNLs0F$>2DQILw+F;@JKR@Au_?`J${@vmo7^{(=U{{ch-Cv1 zVm0Wc@3T?Ur~CIe@bzBtQN4fqTi&(+Kb4c$7YJEJgADF4)st#>T0>3Y%-+$MD3@>| z<)TG-3V)^6%!G3D9NuK0kP$^}=WvqIm2iWaS@xS63Wm(5iev-291_8rPguaxwWvht-CuU8 z{RX3L+PUZp$HSOD3BT}9Dt{(ex<9`_Y^JFDd6zkV5K>k7Dr|co5A2#fxa^1`qpP8T zcuRKpDp>T>Ax8&Gv<_!YHrg#0-Nn~wZfR7!g!e1g73H390TvXe6)%ulH@b-8)om)% zVymLq?v>RB6sM^7`SYeTMr|YhlC|#gb_%_Cep0LMR`TUiy3?f|kv)?3`lZV&~JHaczEgxwFo7 zB?Mn*t7>-(Zo6)N(Q^DhF_m266ch^Kqz+Ad>WRA8;N{WYemgzsZ)b`ocQ0Y6-mYGM zh;85KV+q}c$(*`d#q%jfS0Felb^QkOnl)NzviaUrRe|=d%7Qf;gO<@3UyZE}o_@<` zG}|m1Q#h+pp3+n99wK@M>rNGTMV&9%V)R&DRqHm!24lw;Tww4$_2kKCftqW}++ z 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