From 849e704159ec54920718f13c367a20df792da7e0 Mon Sep 17 00:00:00 2001 From: hongcj Date: Tue, 10 Jun 2025 16:28:15 +0800 Subject: [PATCH] first commit --- .gitattributes | 63 + .gitignore | 363 ++ curl/include/curl/curl.h | 3116 +++++++++++++++++ curl/include/curl/curlver.h | 79 + curl/include/curl/easy.h | 125 + curl/include/curl/header.h | 66 + curl/include/curl/mprintf.h | 52 + curl/include/curl/multi.h | 460 +++ curl/include/curl/options.h | 70 + curl/include/curl/stdcheaders.h | 35 + curl/include/curl/system.h | 490 +++ curl/include/curl/typecheck-gcc.h | 710 ++++ curl/include/curl/urlapi.h | 147 + curl/lib/libcurl_a.lib | Bin 0 -> 2151830 bytes mdbks_connor_itk.sln | 28 + mdbks_connor_itk/KSDY_DrawToMES.cxx | 519 +++ mdbks_connor_itk/KSDY_Material2MES.cxx | 463 +++ mdbks_connor_itk/ReadMe.txt | 30 + mdbks_connor_itk/Sync_Elec_Access_Java.cpp | 82 + mdbks_connor_itk/connor_itk_util.cpp | 635 ++++ mdbks_connor_itk/connor_itk_util.h | 72 + mdbks_connor_itk/epm_register_handler.cpp | 268 ++ mdbks_connor_itk/epm_register_handler.h | 36 + mdbks_connor_itk/lib_custom_main.cpp | 53 + mdbks_connor_itk/mdbks_connor_itk.vcxproj | 178 + .../mdbks_connor_itk.vcxproj.filters | 56 + mdbks_connor_itk/mdbks_register.h | 15 + mdbks_connor_itk/ocilib.cpp | 441 +++ mdbks_connor_itk/ocilib.h | 99 + mdbks_connor_itk/test.cpp | 561 +++ mdbks_connor_itk/test_handler.cxx | 0 31 files changed, 9312 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 curl/include/curl/curl.h create mode 100644 curl/include/curl/curlver.h create mode 100644 curl/include/curl/easy.h create mode 100644 curl/include/curl/header.h create mode 100644 curl/include/curl/mprintf.h create mode 100644 curl/include/curl/multi.h create mode 100644 curl/include/curl/options.h create mode 100644 curl/include/curl/stdcheaders.h create mode 100644 curl/include/curl/system.h create mode 100644 curl/include/curl/typecheck-gcc.h create mode 100644 curl/include/curl/urlapi.h create mode 100644 curl/lib/libcurl_a.lib create mode 100644 mdbks_connor_itk.sln create mode 100644 mdbks_connor_itk/KSDY_DrawToMES.cxx create mode 100644 mdbks_connor_itk/KSDY_Material2MES.cxx create mode 100644 mdbks_connor_itk/ReadMe.txt create mode 100644 mdbks_connor_itk/Sync_Elec_Access_Java.cpp create mode 100644 mdbks_connor_itk/connor_itk_util.cpp create mode 100644 mdbks_connor_itk/connor_itk_util.h create mode 100644 mdbks_connor_itk/epm_register_handler.cpp create mode 100644 mdbks_connor_itk/epm_register_handler.h create mode 100644 mdbks_connor_itk/lib_custom_main.cpp create mode 100644 mdbks_connor_itk/mdbks_connor_itk.vcxproj create mode 100644 mdbks_connor_itk/mdbks_connor_itk.vcxproj.filters create mode 100644 mdbks_connor_itk/mdbks_register.h create mode 100644 mdbks_connor_itk/ocilib.cpp create mode 100644 mdbks_connor_itk/ocilib.h create mode 100644 mdbks_connor_itk/test.cpp create mode 100644 mdbks_connor_itk/test_handler.cxx diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..1ff0c42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,63 @@ +############################################################################### +# Set default behavior to automatically normalize line endings. +############################################################################### +* text=auto + +############################################################################### +# Set default behavior for command prompt diff. +# +# This is need for earlier builds of msysgit that does not have it on by +# default for csharp files. +# Note: This is only used by command line +############################################################################### +#*.cs diff=csharp + +############################################################################### +# Set the merge driver for project and solution files +# +# Merging from the command prompt will add diff markers to the files if there +# are conflicts (Merging from VS is not affected by the settings below, in VS +# the diff markers are never inserted). Diff markers may cause the following +# file extensions to fail to load in VS. An alternative would be to treat +# these files as binary and thus will always conflict and require user +# intervention with every merge. To do so, just uncomment the entries below +############################################################################### +#*.sln merge=binary +#*.csproj merge=binary +#*.vbproj merge=binary +#*.vcxproj merge=binary +#*.vcproj merge=binary +#*.dbproj merge=binary +#*.fsproj merge=binary +#*.lsproj merge=binary +#*.wixproj merge=binary +#*.modelproj merge=binary +#*.sqlproj merge=binary +#*.wwaproj merge=binary + +############################################################################### +# behavior for image files +# +# image files are treated as binary by default. +############################################################################### +#*.jpg binary +#*.png binary +#*.gif binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9491a2f --- /dev/null +++ b/.gitignore @@ -0,0 +1,363 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Oo]ut/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd \ No newline at end of file diff --git a/curl/include/curl/curl.h b/curl/include/curl/curl.h new file mode 100644 index 0000000..b00648e --- /dev/null +++ b/curl/include/curl/curl.h @@ -0,0 +1,3116 @@ +#ifndef CURLINC_CURL_H +#define CURLINC_CURL_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +/* + * If you have libcurl problems, all docs and details are found here: + * https://curl.se/libcurl/ + */ + +#ifdef CURL_NO_OLDIES +#define CURL_STRICTER +#endif + +#include "curlver.h" /* libcurl version defines */ +#include "system.h" /* determine things run-time */ + +/* + * Define CURL_WIN32 when build target is Win32 API + */ + +#if (defined(_WIN32) || defined(__WIN32__) || defined(WIN32)) && \ + !defined(__SYMBIAN32__) +#define CURL_WIN32 +#endif + +#include +#include + +#if (defined(__FreeBSD__) && (__FreeBSD__ >= 2)) || defined(__MidnightBSD__) +/* Needed for __FreeBSD_version or __MidnightBSD_version symbol definition */ +#include +#endif + +/* The include stuff here below is mainly for time_t! */ +#include +#include + +#if defined(CURL_WIN32) && !defined(_WIN32_WCE) && !defined(__CYGWIN__) +#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H) || \ + defined(__LWIP_OPT_H__) || defined(LWIP_HDR_OPT_H)) +/* The check above prevents the winsock2 inclusion if winsock.h already was + included, since they can't co-exist without problems */ +#include +#include +#endif +#endif + +/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish + libc5-based Linux systems. Only include it on systems that are known to + require it! */ +#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \ + defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \ + defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \ + defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \ + (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \ + (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000)) +#include +#endif + +#if !defined(CURL_WIN32) && !defined(_WIN32_WCE) +#include +#endif + +#if !defined(CURL_WIN32) +#include +#endif + +/* Compatibility for non-Clang compilers */ +#ifndef __has_declspec_attribute +# define __has_declspec_attribute(x) 0 +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER) +typedef struct Curl_easy CURL; +typedef struct Curl_share CURLSH; +#else +typedef void CURL; +typedef void CURLSH; +#endif + +/* + * libcurl external API function linkage decorations. + */ + +#ifdef CURL_STATICLIB +# define CURL_EXTERN +#elif defined(CURL_WIN32) || defined(__SYMBIAN32__) || \ + (__has_declspec_attribute(dllexport) && \ + __has_declspec_attribute(dllimport)) +# if defined(BUILDING_LIBCURL) +# define CURL_EXTERN __declspec(dllexport) +# else +# define CURL_EXTERN __declspec(dllimport) +# endif +#elif defined(BUILDING_LIBCURL) && defined(CURL_HIDDEN_SYMBOLS) +# define CURL_EXTERN CURL_EXTERN_SYMBOL +#else +# define CURL_EXTERN +#endif + +#ifndef curl_socket_typedef +/* socket typedef */ +#if defined(CURL_WIN32) && !defined(__LWIP_OPT_H__) && !defined(LWIP_HDR_OPT_H) +typedef SOCKET curl_socket_t; +#define CURL_SOCKET_BAD INVALID_SOCKET +#else +typedef int curl_socket_t; +#define CURL_SOCKET_BAD -1 +#endif +#define curl_socket_typedef +#endif /* curl_socket_typedef */ + +/* enum for the different supported SSL backends */ +typedef enum { + CURLSSLBACKEND_NONE = 0, + CURLSSLBACKEND_OPENSSL = 1, + CURLSSLBACKEND_GNUTLS = 2, + CURLSSLBACKEND_NSS = 3, + CURLSSLBACKEND_OBSOLETE4 = 4, /* Was QSOSSL. */ + CURLSSLBACKEND_GSKIT = 5, + CURLSSLBACKEND_POLARSSL = 6, + CURLSSLBACKEND_WOLFSSL = 7, + CURLSSLBACKEND_SCHANNEL = 8, + CURLSSLBACKEND_SECURETRANSPORT = 9, + CURLSSLBACKEND_AXTLS = 10, /* never used since 7.63.0 */ + CURLSSLBACKEND_MBEDTLS = 11, + CURLSSLBACKEND_MESALINK = 12, + CURLSSLBACKEND_BEARSSL = 13, + CURLSSLBACKEND_RUSTLS = 14 +} curl_sslbackend; + +/* aliases for library clones and renames */ +#define CURLSSLBACKEND_LIBRESSL CURLSSLBACKEND_OPENSSL +#define CURLSSLBACKEND_BORINGSSL CURLSSLBACKEND_OPENSSL + +/* deprecated names: */ +#define CURLSSLBACKEND_CYASSL CURLSSLBACKEND_WOLFSSL +#define CURLSSLBACKEND_DARWINSSL CURLSSLBACKEND_SECURETRANSPORT + +struct curl_httppost { + struct curl_httppost *next; /* next entry in the list */ + char *name; /* pointer to allocated name */ + long namelength; /* length of name length */ + char *contents; /* pointer to allocated data contents */ + long contentslength; /* length of contents field, see also + CURL_HTTPPOST_LARGE */ + char *buffer; /* pointer to allocated buffer contents */ + long bufferlength; /* length of buffer field */ + char *contenttype; /* Content-Type */ + struct curl_slist *contentheader; /* list of extra headers for this form */ + struct curl_httppost *more; /* if one field name has more than one + file, this link should link to following + files */ + long flags; /* as defined below */ + +/* specified content is a file name */ +#define CURL_HTTPPOST_FILENAME (1<<0) +/* specified content is a file name */ +#define CURL_HTTPPOST_READFILE (1<<1) +/* name is only stored pointer do not free in formfree */ +#define CURL_HTTPPOST_PTRNAME (1<<2) +/* contents is only stored pointer do not free in formfree */ +#define CURL_HTTPPOST_PTRCONTENTS (1<<3) +/* upload file from buffer */ +#define CURL_HTTPPOST_BUFFER (1<<4) +/* upload file from pointer contents */ +#define CURL_HTTPPOST_PTRBUFFER (1<<5) +/* upload file contents by using the regular read callback to get the data and + pass the given pointer as custom pointer */ +#define CURL_HTTPPOST_CALLBACK (1<<6) +/* use size in 'contentlen', added in 7.46.0 */ +#define CURL_HTTPPOST_LARGE (1<<7) + + char *showfilename; /* The file name to show. If not set, the + actual file name will be used (if this + is a file part) */ + void *userp; /* custom pointer used for + HTTPPOST_CALLBACK posts */ + curl_off_t contentlen; /* alternative length of contents + field. Used if CURL_HTTPPOST_LARGE is + set. Added in 7.46.0 */ +}; + + +/* This is a return code for the progress callback that, when returned, will + signal libcurl to continue executing the default progress function */ +#define CURL_PROGRESSFUNC_CONTINUE 0x10000001 + +/* This is the CURLOPT_PROGRESSFUNCTION callback prototype. It is now + considered deprecated but was the only choice up until 7.31.0 */ +typedef int (*curl_progress_callback)(void *clientp, + double dltotal, + double dlnow, + double ultotal, + double ulnow); + +/* This is the CURLOPT_XFERINFOFUNCTION callback prototype. It was introduced + in 7.32.0, avoids the use of floating point numbers and provides more + detailed information. */ +typedef int (*curl_xferinfo_callback)(void *clientp, + curl_off_t dltotal, + curl_off_t dlnow, + curl_off_t ultotal, + curl_off_t ulnow); + +#ifndef CURL_MAX_READ_SIZE + /* The maximum receive buffer size configurable via CURLOPT_BUFFERSIZE. */ +#define CURL_MAX_READ_SIZE 524288 +#endif + +#ifndef CURL_MAX_WRITE_SIZE + /* Tests have proven that 20K is a very bad buffer size for uploads on + Windows, while 16K for some odd reason performed a lot better. + We do the ifndef check to allow this value to easier be changed at build + time for those who feel adventurous. The practical minimum is about + 400 bytes since libcurl uses a buffer of this size as a scratch area + (unrelated to network send operations). */ +#define CURL_MAX_WRITE_SIZE 16384 +#endif + +#ifndef CURL_MAX_HTTP_HEADER +/* The only reason to have a max limit for this is to avoid the risk of a bad + server feeding libcurl with a never-ending header that will cause reallocs + infinitely */ +#define CURL_MAX_HTTP_HEADER (100*1024) +#endif + +/* This is a magic return code for the write callback that, when returned, + will signal libcurl to pause receiving on the current transfer. */ +#define CURL_WRITEFUNC_PAUSE 0x10000001 + +typedef size_t (*curl_write_callback)(char *buffer, + size_t size, + size_t nitems, + void *outstream); + +/* This callback will be called when a new resolver request is made */ +typedef int (*curl_resolver_start_callback)(void *resolver_state, + void *reserved, void *userdata); + +/* enumeration of file types */ +typedef enum { + CURLFILETYPE_FILE = 0, + CURLFILETYPE_DIRECTORY, + CURLFILETYPE_SYMLINK, + CURLFILETYPE_DEVICE_BLOCK, + CURLFILETYPE_DEVICE_CHAR, + CURLFILETYPE_NAMEDPIPE, + CURLFILETYPE_SOCKET, + CURLFILETYPE_DOOR, /* is possible only on Sun Solaris now */ + + CURLFILETYPE_UNKNOWN /* should never occur */ +} curlfiletype; + +#define CURLFINFOFLAG_KNOWN_FILENAME (1<<0) +#define CURLFINFOFLAG_KNOWN_FILETYPE (1<<1) +#define CURLFINFOFLAG_KNOWN_TIME (1<<2) +#define CURLFINFOFLAG_KNOWN_PERM (1<<3) +#define CURLFINFOFLAG_KNOWN_UID (1<<4) +#define CURLFINFOFLAG_KNOWN_GID (1<<5) +#define CURLFINFOFLAG_KNOWN_SIZE (1<<6) +#define CURLFINFOFLAG_KNOWN_HLINKCOUNT (1<<7) + +/* Information about a single file, used when doing FTP wildcard matching */ +struct curl_fileinfo { + char *filename; + curlfiletype filetype; + time_t time; /* always zero! */ + unsigned int perm; + int uid; + int gid; + curl_off_t size; + long int hardlinks; + + struct { + /* If some of these fields is not NULL, it is a pointer to b_data. */ + char *time; + char *perm; + char *user; + char *group; + char *target; /* pointer to the target filename of a symlink */ + } strings; + + unsigned int flags; + + /* used internally */ + char *b_data; + size_t b_size; + size_t b_used; +}; + +/* return codes for CURLOPT_CHUNK_BGN_FUNCTION */ +#define CURL_CHUNK_BGN_FUNC_OK 0 +#define CURL_CHUNK_BGN_FUNC_FAIL 1 /* tell the lib to end the task */ +#define CURL_CHUNK_BGN_FUNC_SKIP 2 /* skip this chunk over */ + +/* if splitting of data transfer is enabled, this callback is called before + download of an individual chunk started. Note that parameter "remains" works + only for FTP wildcard downloading (for now), otherwise is not used */ +typedef long (*curl_chunk_bgn_callback)(const void *transfer_info, + void *ptr, + int remains); + +/* return codes for CURLOPT_CHUNK_END_FUNCTION */ +#define CURL_CHUNK_END_FUNC_OK 0 +#define CURL_CHUNK_END_FUNC_FAIL 1 /* tell the lib to end the task */ + +/* If splitting of data transfer is enabled this callback is called after + download of an individual chunk finished. + Note! After this callback was set then it have to be called FOR ALL chunks. + Even if downloading of this chunk was skipped in CHUNK_BGN_FUNC. + This is the reason why we don't need "transfer_info" parameter in this + callback and we are not interested in "remains" parameter too. */ +typedef long (*curl_chunk_end_callback)(void *ptr); + +/* return codes for FNMATCHFUNCTION */ +#define CURL_FNMATCHFUNC_MATCH 0 /* string corresponds to the pattern */ +#define CURL_FNMATCHFUNC_NOMATCH 1 /* pattern doesn't match the string */ +#define CURL_FNMATCHFUNC_FAIL 2 /* an error occurred */ + +/* callback type for wildcard downloading pattern matching. If the + string matches the pattern, return CURL_FNMATCHFUNC_MATCH value, etc. */ +typedef int (*curl_fnmatch_callback)(void *ptr, + const char *pattern, + const char *string); + +/* These are the return codes for the seek callbacks */ +#define CURL_SEEKFUNC_OK 0 +#define CURL_SEEKFUNC_FAIL 1 /* fail the entire transfer */ +#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so + libcurl might try other means instead */ +typedef int (*curl_seek_callback)(void *instream, + curl_off_t offset, + int origin); /* 'whence' */ + +/* This is a return code for the read callback that, when returned, will + signal libcurl to immediately abort the current transfer. */ +#define CURL_READFUNC_ABORT 0x10000000 +/* This is a return code for the read callback that, when returned, will + signal libcurl to pause sending data on the current transfer. */ +#define CURL_READFUNC_PAUSE 0x10000001 + +/* Return code for when the trailing headers' callback has terminated + without any errors*/ +#define CURL_TRAILERFUNC_OK 0 +/* Return code for when was an error in the trailing header's list and we + want to abort the request */ +#define CURL_TRAILERFUNC_ABORT 1 + +typedef size_t (*curl_read_callback)(char *buffer, + size_t size, + size_t nitems, + void *instream); + +typedef int (*curl_trailer_callback)(struct curl_slist **list, + void *userdata); + +typedef enum { + CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */ + CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */ + CURLSOCKTYPE_LAST /* never use */ +} curlsocktype; + +/* The return code from the sockopt_callback can signal information back + to libcurl: */ +#define CURL_SOCKOPT_OK 0 +#define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return + CURLE_ABORTED_BY_CALLBACK */ +#define CURL_SOCKOPT_ALREADY_CONNECTED 2 + +typedef int (*curl_sockopt_callback)(void *clientp, + curl_socket_t curlfd, + curlsocktype purpose); + +struct curl_sockaddr { + int family; + int socktype; + int protocol; + unsigned int addrlen; /* addrlen was a socklen_t type before 7.18.0 but it + turned really ugly and painful on the systems that + lack this type */ + struct sockaddr addr; +}; + +typedef curl_socket_t +(*curl_opensocket_callback)(void *clientp, + curlsocktype purpose, + struct curl_sockaddr *address); + +typedef int +(*curl_closesocket_callback)(void *clientp, curl_socket_t item); + +typedef enum { + CURLIOE_OK, /* I/O operation successful */ + CURLIOE_UNKNOWNCMD, /* command was unknown to callback */ + CURLIOE_FAILRESTART, /* failed to restart the read */ + CURLIOE_LAST /* never use */ +} curlioerr; + +typedef enum { + CURLIOCMD_NOP, /* no operation */ + CURLIOCMD_RESTARTREAD, /* restart the read stream from start */ + CURLIOCMD_LAST /* never use */ +} curliocmd; + +typedef curlioerr (*curl_ioctl_callback)(CURL *handle, + int cmd, + void *clientp); + +#ifndef CURL_DID_MEMORY_FUNC_TYPEDEFS +/* + * The following typedef's are signatures of malloc, free, realloc, strdup and + * calloc respectively. Function pointers of these types can be passed to the + * curl_global_init_mem() function to set user defined memory management + * callback routines. + */ +typedef void *(*curl_malloc_callback)(size_t size); +typedef void (*curl_free_callback)(void *ptr); +typedef void *(*curl_realloc_callback)(void *ptr, size_t size); +typedef char *(*curl_strdup_callback)(const char *str); +typedef void *(*curl_calloc_callback)(size_t nmemb, size_t size); + +#define CURL_DID_MEMORY_FUNC_TYPEDEFS +#endif + +/* the kind of data that is passed to information_callback*/ +typedef enum { + CURLINFO_TEXT = 0, + CURLINFO_HEADER_IN, /* 1 */ + CURLINFO_HEADER_OUT, /* 2 */ + CURLINFO_DATA_IN, /* 3 */ + CURLINFO_DATA_OUT, /* 4 */ + CURLINFO_SSL_DATA_IN, /* 5 */ + CURLINFO_SSL_DATA_OUT, /* 6 */ + CURLINFO_END +} curl_infotype; + +typedef int (*curl_debug_callback) + (CURL *handle, /* the handle/transfer this concerns */ + curl_infotype type, /* what kind of data */ + char *data, /* points to the data */ + size_t size, /* size of the data pointed to */ + void *userptr); /* whatever the user please */ + +/* This is the CURLOPT_PREREQFUNCTION callback prototype. */ +typedef int (*curl_prereq_callback)(void *clientp, + char *conn_primary_ip, + char *conn_local_ip, + int conn_primary_port, + int conn_local_port); + +/* Return code for when the pre-request callback has terminated without + any errors */ +#define CURL_PREREQFUNC_OK 0 +/* Return code for when the pre-request callback wants to abort the + request */ +#define CURL_PREREQFUNC_ABORT 1 + +/* All possible error codes from all sorts of curl functions. Future versions + may return other values, stay prepared. + + Always add new return codes last. Never *EVER* remove any. The return + codes must remain the same! + */ + +typedef enum { + CURLE_OK = 0, + CURLE_UNSUPPORTED_PROTOCOL, /* 1 */ + CURLE_FAILED_INIT, /* 2 */ + CURLE_URL_MALFORMAT, /* 3 */ + CURLE_NOT_BUILT_IN, /* 4 - [was obsoleted in August 2007 for + 7.17.0, reused in April 2011 for 7.21.5] */ + CURLE_COULDNT_RESOLVE_PROXY, /* 5 */ + CURLE_COULDNT_RESOLVE_HOST, /* 6 */ + CURLE_COULDNT_CONNECT, /* 7 */ + CURLE_WEIRD_SERVER_REPLY, /* 8 */ + CURLE_REMOTE_ACCESS_DENIED, /* 9 a service was denied by the server + due to lack of access - when login fails + this is not returned. */ + CURLE_FTP_ACCEPT_FAILED, /* 10 - [was obsoleted in April 2006 for + 7.15.4, reused in Dec 2011 for 7.24.0]*/ + CURLE_FTP_WEIRD_PASS_REPLY, /* 11 */ + CURLE_FTP_ACCEPT_TIMEOUT, /* 12 - timeout occurred accepting server + [was obsoleted in August 2007 for 7.17.0, + reused in Dec 2011 for 7.24.0]*/ + CURLE_FTP_WEIRD_PASV_REPLY, /* 13 */ + CURLE_FTP_WEIRD_227_FORMAT, /* 14 */ + CURLE_FTP_CANT_GET_HOST, /* 15 */ + CURLE_HTTP2, /* 16 - A problem in the http2 framing layer. + [was obsoleted in August 2007 for 7.17.0, + reused in July 2014 for 7.38.0] */ + CURLE_FTP_COULDNT_SET_TYPE, /* 17 */ + CURLE_PARTIAL_FILE, /* 18 */ + CURLE_FTP_COULDNT_RETR_FILE, /* 19 */ + CURLE_OBSOLETE20, /* 20 - NOT USED */ + CURLE_QUOTE_ERROR, /* 21 - quote command failure */ + CURLE_HTTP_RETURNED_ERROR, /* 22 */ + CURLE_WRITE_ERROR, /* 23 */ + CURLE_OBSOLETE24, /* 24 - NOT USED */ + CURLE_UPLOAD_FAILED, /* 25 - failed upload "command" */ + CURLE_READ_ERROR, /* 26 - couldn't open/read from file */ + CURLE_OUT_OF_MEMORY, /* 27 */ + CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was reached */ + CURLE_OBSOLETE29, /* 29 - NOT USED */ + CURLE_FTP_PORT_FAILED, /* 30 - FTP PORT operation failed */ + CURLE_FTP_COULDNT_USE_REST, /* 31 - the REST command failed */ + CURLE_OBSOLETE32, /* 32 - NOT USED */ + CURLE_RANGE_ERROR, /* 33 - RANGE "command" didn't work */ + CURLE_HTTP_POST_ERROR, /* 34 */ + CURLE_SSL_CONNECT_ERROR, /* 35 - wrong when connecting with SSL */ + CURLE_BAD_DOWNLOAD_RESUME, /* 36 - couldn't resume download */ + CURLE_FILE_COULDNT_READ_FILE, /* 37 */ + CURLE_LDAP_CANNOT_BIND, /* 38 */ + CURLE_LDAP_SEARCH_FAILED, /* 39 */ + CURLE_OBSOLETE40, /* 40 - NOT USED */ + CURLE_FUNCTION_NOT_FOUND, /* 41 - NOT USED starting with 7.53.0 */ + CURLE_ABORTED_BY_CALLBACK, /* 42 */ + CURLE_BAD_FUNCTION_ARGUMENT, /* 43 */ + CURLE_OBSOLETE44, /* 44 - NOT USED */ + CURLE_INTERFACE_FAILED, /* 45 - CURLOPT_INTERFACE failed */ + CURLE_OBSOLETE46, /* 46 - NOT USED */ + CURLE_TOO_MANY_REDIRECTS, /* 47 - catch endless re-direct loops */ + CURLE_UNKNOWN_OPTION, /* 48 - User specified an unknown option */ + CURLE_SETOPT_OPTION_SYNTAX, /* 49 - Malformed setopt option */ + CURLE_OBSOLETE50, /* 50 - NOT USED */ + CURLE_OBSOLETE51, /* 51 - NOT USED */ + CURLE_GOT_NOTHING, /* 52 - when this is a specific error */ + CURLE_SSL_ENGINE_NOTFOUND, /* 53 - SSL crypto engine not found */ + CURLE_SSL_ENGINE_SETFAILED, /* 54 - can not set SSL crypto engine as + default */ + CURLE_SEND_ERROR, /* 55 - failed sending network data */ + CURLE_RECV_ERROR, /* 56 - failure in receiving network data */ + CURLE_OBSOLETE57, /* 57 - NOT IN USE */ + CURLE_SSL_CERTPROBLEM, /* 58 - problem with the local certificate */ + CURLE_SSL_CIPHER, /* 59 - couldn't use specified cipher */ + CURLE_PEER_FAILED_VERIFICATION, /* 60 - peer's certificate or fingerprint + wasn't verified fine */ + CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized/bad encoding */ + CURLE_OBSOLETE62, /* 62 - NOT IN USE since 7.82.0 */ + CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */ + CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ + CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind + that failed */ + CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */ + CURLE_LOGIN_DENIED, /* 67 - user, password or similar was not + accepted and we failed to login */ + CURLE_TFTP_NOTFOUND, /* 68 - file not found on server */ + CURLE_TFTP_PERM, /* 69 - permission problem on server */ + CURLE_REMOTE_DISK_FULL, /* 70 - out of disk space on server */ + CURLE_TFTP_ILLEGAL, /* 71 - Illegal TFTP operation */ + CURLE_TFTP_UNKNOWNID, /* 72 - Unknown transfer ID */ + CURLE_REMOTE_FILE_EXISTS, /* 73 - File already exists */ + CURLE_TFTP_NOSUCHUSER, /* 74 - No such user */ + CURLE_CONV_FAILED, /* 75 - conversion failed */ + CURLE_OBSOLETE76, /* 76 - NOT IN USE since 7.82.0 */ + CURLE_SSL_CACERT_BADFILE, /* 77 - could not load CACERT file, missing + or wrong format */ + CURLE_REMOTE_FILE_NOT_FOUND, /* 78 - remote file not found */ + CURLE_SSH, /* 79 - error from the SSH layer, somewhat + generic so the error message will be of + interest when this has happened */ + + CURLE_SSL_SHUTDOWN_FAILED, /* 80 - Failed to shut down the SSL + connection */ + CURLE_AGAIN, /* 81 - socket is not ready for send/recv, + wait till it's ready and try again (Added + in 7.18.2) */ + CURLE_SSL_CRL_BADFILE, /* 82 - could not load CRL file, missing or + wrong format (Added in 7.19.0) */ + CURLE_SSL_ISSUER_ERROR, /* 83 - Issuer check failed. (Added in + 7.19.0) */ + CURLE_FTP_PRET_FAILED, /* 84 - a PRET command failed */ + CURLE_RTSP_CSEQ_ERROR, /* 85 - mismatch of RTSP CSeq numbers */ + CURLE_RTSP_SESSION_ERROR, /* 86 - mismatch of RTSP Session Ids */ + CURLE_FTP_BAD_FILE_LIST, /* 87 - unable to parse FTP file list */ + CURLE_CHUNK_FAILED, /* 88 - chunk callback reported error */ + CURLE_NO_CONNECTION_AVAILABLE, /* 89 - No connection available, the + session will be queued */ + CURLE_SSL_PINNEDPUBKEYNOTMATCH, /* 90 - specified pinned public key did not + match */ + CURLE_SSL_INVALIDCERTSTATUS, /* 91 - invalid certificate status */ + CURLE_HTTP2_STREAM, /* 92 - stream error in HTTP/2 framing layer + */ + CURLE_RECURSIVE_API_CALL, /* 93 - an api function was called from + inside a callback */ + CURLE_AUTH_ERROR, /* 94 - an authentication function returned an + error */ + CURLE_HTTP3, /* 95 - An HTTP/3 layer problem */ + CURLE_QUIC_CONNECT_ERROR, /* 96 - QUIC connection error */ + CURLE_PROXY, /* 97 - proxy handshake error */ + CURLE_SSL_CLIENTCERT, /* 98 - client-side certificate required */ + CURLE_UNRECOVERABLE_POLL, /* 99 - poll/select returned fatal error */ + CURL_LAST /* never use! */ +} CURLcode; + +#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all + the obsolete stuff removed! */ + +/* Previously obsolete error code re-used in 7.38.0 */ +#define CURLE_OBSOLETE16 CURLE_HTTP2 + +/* Previously obsolete error codes re-used in 7.24.0 */ +#define CURLE_OBSOLETE10 CURLE_FTP_ACCEPT_FAILED +#define CURLE_OBSOLETE12 CURLE_FTP_ACCEPT_TIMEOUT + +/* compatibility with older names */ +#define CURLOPT_ENCODING CURLOPT_ACCEPT_ENCODING +#define CURLE_FTP_WEIRD_SERVER_REPLY CURLE_WEIRD_SERVER_REPLY + +/* The following were added in 7.62.0 */ +#define CURLE_SSL_CACERT CURLE_PEER_FAILED_VERIFICATION + +/* The following were added in 7.21.5, April 2011 */ +#define CURLE_UNKNOWN_TELNET_OPTION CURLE_UNKNOWN_OPTION + +/* Added for 7.78.0 */ +#define CURLE_TELNET_OPTION_SYNTAX CURLE_SETOPT_OPTION_SYNTAX + +/* The following were added in 7.17.1 */ +/* These are scheduled to disappear by 2009 */ +#define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION + +/* The following were added in 7.17.0 */ +/* These are scheduled to disappear by 2009 */ +#define CURLE_OBSOLETE CURLE_OBSOLETE50 /* no one should be using this! */ +#define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46 +#define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44 +#define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10 +#define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16 +#define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32 +#define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29 +#define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12 +#define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20 +#define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40 +#define CURLE_MALFORMAT_USER CURLE_OBSOLETE24 +#define CURLE_SHARE_IN_USE CURLE_OBSOLETE57 +#define CURLE_URL_MALFORMAT_USER CURLE_NOT_BUILT_IN + +#define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED +#define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE +#define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR +#define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL +#define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS +#define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR +#define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED + +/* The following were added earlier */ + +#define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT +#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR +#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED +#define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED +#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE +#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME +#define CURLE_LDAP_INVALID_URL CURLE_OBSOLETE62 +#define CURLE_CONV_REQD CURLE_OBSOLETE76 + +/* This was the error code 50 in 7.7.3 and a few earlier versions, this + is no longer used by libcurl but is instead #defined here only to not + make programs break */ +#define CURLE_ALREADY_COMPLETE 99999 + +/* Provide defines for really old option names */ +#define CURLOPT_FILE CURLOPT_WRITEDATA /* name changed in 7.9.7 */ +#define CURLOPT_INFILE CURLOPT_READDATA /* name changed in 7.9.7 */ +#define CURLOPT_WRITEHEADER CURLOPT_HEADERDATA + +/* Since long deprecated options with no code in the lib that does anything + with them. */ +#define CURLOPT_WRITEINFO CURLOPT_OBSOLETE40 +#define CURLOPT_CLOSEPOLICY CURLOPT_OBSOLETE72 + +#endif /*!CURL_NO_OLDIES*/ + +/* + * Proxy error codes. Returned in CURLINFO_PROXY_ERROR if CURLE_PROXY was + * return for the transfers. + */ +typedef enum { + CURLPX_OK, + CURLPX_BAD_ADDRESS_TYPE, + CURLPX_BAD_VERSION, + CURLPX_CLOSED, + CURLPX_GSSAPI, + CURLPX_GSSAPI_PERMSG, + CURLPX_GSSAPI_PROTECTION, + CURLPX_IDENTD, + CURLPX_IDENTD_DIFFER, + CURLPX_LONG_HOSTNAME, + CURLPX_LONG_PASSWD, + CURLPX_LONG_USER, + CURLPX_NO_AUTH, + CURLPX_RECV_ADDRESS, + CURLPX_RECV_AUTH, + CURLPX_RECV_CONNECT, + CURLPX_RECV_REQACK, + CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED, + CURLPX_REPLY_COMMAND_NOT_SUPPORTED, + CURLPX_REPLY_CONNECTION_REFUSED, + CURLPX_REPLY_GENERAL_SERVER_FAILURE, + CURLPX_REPLY_HOST_UNREACHABLE, + CURLPX_REPLY_NETWORK_UNREACHABLE, + CURLPX_REPLY_NOT_ALLOWED, + CURLPX_REPLY_TTL_EXPIRED, + CURLPX_REPLY_UNASSIGNED, + CURLPX_REQUEST_FAILED, + CURLPX_RESOLVE_HOST, + CURLPX_SEND_AUTH, + CURLPX_SEND_CONNECT, + CURLPX_SEND_REQUEST, + CURLPX_UNKNOWN_FAIL, + CURLPX_UNKNOWN_MODE, + CURLPX_USER_REJECTED, + CURLPX_LAST /* never use */ +} CURLproxycode; + +/* This prototype applies to all conversion callbacks */ +typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length); + +typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl, /* easy handle */ + void *ssl_ctx, /* actually an OpenSSL + or WolfSSL SSL_CTX, + or an mbedTLS + mbedtls_ssl_config */ + void *userptr); + +typedef enum { + CURLPROXY_HTTP = 0, /* added in 7.10, new in 7.19.4 default is to use + CONNECT HTTP/1.1 */ + CURLPROXY_HTTP_1_0 = 1, /* added in 7.19.4, force to use CONNECT + HTTP/1.0 */ + CURLPROXY_HTTPS = 2, /* added in 7.52.0 */ + CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already + in 7.10 */ + CURLPROXY_SOCKS5 = 5, /* added in 7.10 */ + CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */ + CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the + host name rather than the IP address. added + in 7.18.0 */ +} curl_proxytype; /* this enum was added in 7.10 */ + +/* + * Bitmasks for CURLOPT_HTTPAUTH and CURLOPT_PROXYAUTH options: + * + * CURLAUTH_NONE - No HTTP authentication + * CURLAUTH_BASIC - HTTP Basic authentication (default) + * CURLAUTH_DIGEST - HTTP Digest authentication + * CURLAUTH_NEGOTIATE - HTTP Negotiate (SPNEGO) authentication + * CURLAUTH_GSSNEGOTIATE - Alias for CURLAUTH_NEGOTIATE (deprecated) + * CURLAUTH_NTLM - HTTP NTLM authentication + * CURLAUTH_DIGEST_IE - HTTP Digest authentication with IE flavour + * CURLAUTH_NTLM_WB - HTTP NTLM authentication delegated to winbind helper + * CURLAUTH_BEARER - HTTP Bearer token authentication + * CURLAUTH_ONLY - Use together with a single other type to force no + * authentication or just that single type + * CURLAUTH_ANY - All fine types set + * CURLAUTH_ANYSAFE - All fine types except Basic + */ + +#define CURLAUTH_NONE ((unsigned long)0) +#define CURLAUTH_BASIC (((unsigned long)1)<<0) +#define CURLAUTH_DIGEST (((unsigned long)1)<<1) +#define CURLAUTH_NEGOTIATE (((unsigned long)1)<<2) +/* Deprecated since the advent of CURLAUTH_NEGOTIATE */ +#define CURLAUTH_GSSNEGOTIATE CURLAUTH_NEGOTIATE +/* Used for CURLOPT_SOCKS5_AUTH to stay terminologically correct */ +#define CURLAUTH_GSSAPI CURLAUTH_NEGOTIATE +#define CURLAUTH_NTLM (((unsigned long)1)<<3) +#define CURLAUTH_DIGEST_IE (((unsigned long)1)<<4) +#define CURLAUTH_NTLM_WB (((unsigned long)1)<<5) +#define CURLAUTH_BEARER (((unsigned long)1)<<6) +#define CURLAUTH_AWS_SIGV4 (((unsigned long)1)<<7) +#define CURLAUTH_ONLY (((unsigned long)1)<<31) +#define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE) +#define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE)) + +#define CURLSSH_AUTH_ANY ~0 /* all types supported by the server */ +#define CURLSSH_AUTH_NONE 0 /* none allowed, silly but complete */ +#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */ +#define CURLSSH_AUTH_PASSWORD (1<<1) /* password */ +#define CURLSSH_AUTH_HOST (1<<2) /* host key files */ +#define CURLSSH_AUTH_KEYBOARD (1<<3) /* keyboard interactive */ +#define CURLSSH_AUTH_AGENT (1<<4) /* agent (ssh-agent, pageant...) */ +#define CURLSSH_AUTH_GSSAPI (1<<5) /* gssapi (kerberos, ...) */ +#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY + +#define CURLGSSAPI_DELEGATION_NONE 0 /* no delegation (default) */ +#define CURLGSSAPI_DELEGATION_POLICY_FLAG (1<<0) /* if permitted by policy */ +#define CURLGSSAPI_DELEGATION_FLAG (1<<1) /* delegate always */ + +#define CURL_ERROR_SIZE 256 + +enum curl_khtype { + CURLKHTYPE_UNKNOWN, + CURLKHTYPE_RSA1, + CURLKHTYPE_RSA, + CURLKHTYPE_DSS, + CURLKHTYPE_ECDSA, + CURLKHTYPE_ED25519 +}; + +struct curl_khkey { + const char *key; /* points to a null-terminated string encoded with base64 + if len is zero, otherwise to the "raw" data */ + size_t len; + enum curl_khtype keytype; +}; + +/* this is the set of return values expected from the curl_sshkeycallback + callback */ +enum curl_khstat { + CURLKHSTAT_FINE_ADD_TO_FILE, + CURLKHSTAT_FINE, + CURLKHSTAT_REJECT, /* reject the connection, return an error */ + CURLKHSTAT_DEFER, /* do not accept it, but we can't answer right now so + this causes a CURLE_DEFER error but otherwise the + connection will be left intact etc */ + CURLKHSTAT_FINE_REPLACE, /* accept and replace the wrong key*/ + CURLKHSTAT_LAST /* not for use, only a marker for last-in-list */ +}; + +/* this is the set of status codes pass in to the callback */ +enum curl_khmatch { + CURLKHMATCH_OK, /* match */ + CURLKHMATCH_MISMATCH, /* host found, key mismatch! */ + CURLKHMATCH_MISSING, /* no matching host/key found */ + CURLKHMATCH_LAST /* not for use, only a marker for last-in-list */ +}; + +typedef int + (*curl_sshkeycallback) (CURL *easy, /* easy handle */ + const struct curl_khkey *knownkey, /* known */ + const struct curl_khkey *foundkey, /* found */ + enum curl_khmatch, /* libcurl's view on the keys */ + void *clientp); /* custom pointer passed with */ + /* CURLOPT_SSH_KEYDATA */ + +typedef int + (*curl_sshhostkeycallback) (void *clientp,/* custom pointer passed*/ + /* with CURLOPT_SSH_HOSTKEYDATA */ + int keytype, /* CURLKHTYPE */ + const char *key, /*hostkey to check*/ + size_t keylen); /*length of the key*/ + /*return CURLE_OK to accept*/ + /*or something else to refuse*/ + + +/* parameter for the CURLOPT_USE_SSL option */ +typedef enum { + CURLUSESSL_NONE, /* do not attempt to use SSL */ + CURLUSESSL_TRY, /* try using SSL, proceed anyway otherwise */ + CURLUSESSL_CONTROL, /* SSL for the control connection or fail */ + CURLUSESSL_ALL, /* SSL for all communication or fail */ + CURLUSESSL_LAST /* not an option, never use */ +} curl_usessl; + +/* Definition of bits for the CURLOPT_SSL_OPTIONS argument: */ + +/* - ALLOW_BEAST tells libcurl to allow the BEAST SSL vulnerability in the + name of improving interoperability with older servers. Some SSL libraries + have introduced work-arounds for this flaw but those work-arounds sometimes + make the SSL communication fail. To regain functionality with those broken + servers, a user can this way allow the vulnerability back. */ +#define CURLSSLOPT_ALLOW_BEAST (1<<0) + +/* - NO_REVOKE tells libcurl to disable certificate revocation checks for those + SSL backends where such behavior is present. */ +#define CURLSSLOPT_NO_REVOKE (1<<1) + +/* - NO_PARTIALCHAIN tells libcurl to *NOT* accept a partial certificate chain + if possible. The OpenSSL backend has this ability. */ +#define CURLSSLOPT_NO_PARTIALCHAIN (1<<2) + +/* - REVOKE_BEST_EFFORT tells libcurl to ignore certificate revocation offline + checks and ignore missing revocation list for those SSL backends where such + behavior is present. */ +#define CURLSSLOPT_REVOKE_BEST_EFFORT (1<<3) + +/* - CURLSSLOPT_NATIVE_CA tells libcurl to use standard certificate store of + operating system. Currently implemented under MS-Windows. */ +#define CURLSSLOPT_NATIVE_CA (1<<4) + +/* - CURLSSLOPT_AUTO_CLIENT_CERT tells libcurl to automatically locate and use + a client certificate for authentication. (Schannel) */ +#define CURLSSLOPT_AUTO_CLIENT_CERT (1<<5) + +/* The default connection attempt delay in milliseconds for happy eyeballs. + CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3 and happy-eyeballs-timeout-ms.d document + this value, keep them in sync. */ +#define CURL_HET_DEFAULT 200L + +/* The default connection upkeep interval in milliseconds. */ +#define CURL_UPKEEP_INTERVAL_DEFAULT 60000L + +#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all + the obsolete stuff removed! */ + +/* Backwards compatibility with older names */ +/* These are scheduled to disappear by 2009 */ + +#define CURLFTPSSL_NONE CURLUSESSL_NONE +#define CURLFTPSSL_TRY CURLUSESSL_TRY +#define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL +#define CURLFTPSSL_ALL CURLUSESSL_ALL +#define CURLFTPSSL_LAST CURLUSESSL_LAST +#define curl_ftpssl curl_usessl +#endif /*!CURL_NO_OLDIES*/ + +/* parameter for the CURLOPT_FTP_SSL_CCC option */ +typedef enum { + CURLFTPSSL_CCC_NONE, /* do not send CCC */ + CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */ + CURLFTPSSL_CCC_ACTIVE, /* Initiate the shutdown */ + CURLFTPSSL_CCC_LAST /* not an option, never use */ +} curl_ftpccc; + +/* parameter for the CURLOPT_FTPSSLAUTH option */ +typedef enum { + CURLFTPAUTH_DEFAULT, /* let libcurl decide */ + CURLFTPAUTH_SSL, /* use "AUTH SSL" */ + CURLFTPAUTH_TLS, /* use "AUTH TLS" */ + CURLFTPAUTH_LAST /* not an option, never use */ +} curl_ftpauth; + +/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */ +typedef enum { + CURLFTP_CREATE_DIR_NONE, /* do NOT create missing dirs! */ + CURLFTP_CREATE_DIR, /* (FTP/SFTP) if CWD fails, try MKD and then CWD + again if MKD succeeded, for SFTP this does + similar magic */ + CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD + again even if MKD failed! */ + CURLFTP_CREATE_DIR_LAST /* not an option, never use */ +} curl_ftpcreatedir; + +/* parameter for the CURLOPT_FTP_FILEMETHOD option */ +typedef enum { + CURLFTPMETHOD_DEFAULT, /* let libcurl pick */ + CURLFTPMETHOD_MULTICWD, /* single CWD operation for each path part */ + CURLFTPMETHOD_NOCWD, /* no CWD at all */ + CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */ + CURLFTPMETHOD_LAST /* not an option, never use */ +} curl_ftpmethod; + +/* bitmask defines for CURLOPT_HEADEROPT */ +#define CURLHEADER_UNIFIED 0 +#define CURLHEADER_SEPARATE (1<<0) + +/* CURLALTSVC_* are bits for the CURLOPT_ALTSVC_CTRL option */ +#define CURLALTSVC_READONLYFILE (1<<2) +#define CURLALTSVC_H1 (1<<3) +#define CURLALTSVC_H2 (1<<4) +#define CURLALTSVC_H3 (1<<5) + + +struct curl_hstsentry { + char *name; + size_t namelen; + unsigned int includeSubDomains:1; + char expire[18]; /* YYYYMMDD HH:MM:SS [null-terminated] */ +}; + +struct curl_index { + size_t index; /* the provided entry's "index" or count */ + size_t total; /* total number of entries to save */ +}; + +typedef enum { + CURLSTS_OK, + CURLSTS_DONE, + CURLSTS_FAIL +} CURLSTScode; + +typedef CURLSTScode (*curl_hstsread_callback)(CURL *easy, + struct curl_hstsentry *e, + void *userp); +typedef CURLSTScode (*curl_hstswrite_callback)(CURL *easy, + struct curl_hstsentry *e, + struct curl_index *i, + void *userp); + +/* CURLHSTS_* are bits for the CURLOPT_HSTS option */ +#define CURLHSTS_ENABLE (long)(1<<0) +#define CURLHSTS_READONLYFILE (long)(1<<1) + +/* CURLPROTO_ defines are for the CURLOPT_*PROTOCOLS options */ +#define CURLPROTO_HTTP (1<<0) +#define CURLPROTO_HTTPS (1<<1) +#define CURLPROTO_FTP (1<<2) +#define CURLPROTO_FTPS (1<<3) +#define CURLPROTO_SCP (1<<4) +#define CURLPROTO_SFTP (1<<5) +#define CURLPROTO_TELNET (1<<6) +#define CURLPROTO_LDAP (1<<7) +#define CURLPROTO_LDAPS (1<<8) +#define CURLPROTO_DICT (1<<9) +#define CURLPROTO_FILE (1<<10) +#define CURLPROTO_TFTP (1<<11) +#define CURLPROTO_IMAP (1<<12) +#define CURLPROTO_IMAPS (1<<13) +#define CURLPROTO_POP3 (1<<14) +#define CURLPROTO_POP3S (1<<15) +#define CURLPROTO_SMTP (1<<16) +#define CURLPROTO_SMTPS (1<<17) +#define CURLPROTO_RTSP (1<<18) +#define CURLPROTO_RTMP (1<<19) +#define CURLPROTO_RTMPT (1<<20) +#define CURLPROTO_RTMPE (1<<21) +#define CURLPROTO_RTMPTE (1<<22) +#define CURLPROTO_RTMPS (1<<23) +#define CURLPROTO_RTMPTS (1<<24) +#define CURLPROTO_GOPHER (1<<25) +#define CURLPROTO_SMB (1<<26) +#define CURLPROTO_SMBS (1<<27) +#define CURLPROTO_MQTT (1<<28) +#define CURLPROTO_GOPHERS (1<<29) +#define CURLPROTO_ALL (~0) /* enable everything */ + +/* long may be 32 or 64 bits, but we should never depend on anything else + but 32 */ +#define CURLOPTTYPE_LONG 0 +#define CURLOPTTYPE_OBJECTPOINT 10000 +#define CURLOPTTYPE_FUNCTIONPOINT 20000 +#define CURLOPTTYPE_OFF_T 30000 +#define CURLOPTTYPE_BLOB 40000 + +/* *STRINGPOINT is an alias for OBJECTPOINT to allow tools to extract the + string options from the header file */ + + +#define CURLOPT(na,t,nu) na = t + nu + +/* CURLOPT aliases that make no run-time difference */ + +/* 'char *' argument to a string with a trailing zero */ +#define CURLOPTTYPE_STRINGPOINT CURLOPTTYPE_OBJECTPOINT + +/* 'struct curl_slist *' argument */ +#define CURLOPTTYPE_SLISTPOINT CURLOPTTYPE_OBJECTPOINT + +/* 'void *' argument passed untouched to callback */ +#define CURLOPTTYPE_CBPOINT CURLOPTTYPE_OBJECTPOINT + +/* 'long' argument with a set of values/bitmask */ +#define CURLOPTTYPE_VALUES CURLOPTTYPE_LONG + +/* + * All CURLOPT_* values. + */ + +typedef enum { + /* This is the FILE * or void * the regular output should be written to. */ + CURLOPT(CURLOPT_WRITEDATA, CURLOPTTYPE_CBPOINT, 1), + + /* The full URL to get/put */ + CURLOPT(CURLOPT_URL, CURLOPTTYPE_STRINGPOINT, 2), + + /* Port number to connect to, if other than default. */ + CURLOPT(CURLOPT_PORT, CURLOPTTYPE_LONG, 3), + + /* Name of proxy to use. */ + CURLOPT(CURLOPT_PROXY, CURLOPTTYPE_STRINGPOINT, 4), + + /* "user:password;options" to use when fetching. */ + CURLOPT(CURLOPT_USERPWD, CURLOPTTYPE_STRINGPOINT, 5), + + /* "user:password" to use with proxy. */ + CURLOPT(CURLOPT_PROXYUSERPWD, CURLOPTTYPE_STRINGPOINT, 6), + + /* Range to get, specified as an ASCII string. */ + CURLOPT(CURLOPT_RANGE, CURLOPTTYPE_STRINGPOINT, 7), + + /* not used */ + + /* Specified file stream to upload from (use as input): */ + CURLOPT(CURLOPT_READDATA, CURLOPTTYPE_CBPOINT, 9), + + /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE + * bytes big. */ + CURLOPT(CURLOPT_ERRORBUFFER, CURLOPTTYPE_OBJECTPOINT, 10), + + /* Function that will be called to store the output (instead of fwrite). The + * parameters will use fwrite() syntax, make sure to follow them. */ + CURLOPT(CURLOPT_WRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 11), + + /* Function that will be called to read the input (instead of fread). The + * parameters will use fread() syntax, make sure to follow them. */ + CURLOPT(CURLOPT_READFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 12), + + /* Time-out the read operation after this amount of seconds */ + CURLOPT(CURLOPT_TIMEOUT, CURLOPTTYPE_LONG, 13), + + /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about + * how large the file being sent really is. That allows better error + * checking and better verifies that the upload was successful. -1 means + * unknown size. + * + * For large file support, there is also a _LARGE version of the key + * which takes an off_t type, allowing platforms with larger off_t + * sizes to handle larger files. See below for INFILESIZE_LARGE. + */ + CURLOPT(CURLOPT_INFILESIZE, CURLOPTTYPE_LONG, 14), + + /* POST static input fields. */ + CURLOPT(CURLOPT_POSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 15), + + /* Set the referrer page (needed by some CGIs) */ + CURLOPT(CURLOPT_REFERER, CURLOPTTYPE_STRINGPOINT, 16), + + /* Set the FTP PORT string (interface name, named or numerical IP address) + Use i.e '-' to use default address. */ + CURLOPT(CURLOPT_FTPPORT, CURLOPTTYPE_STRINGPOINT, 17), + + /* Set the User-Agent string (examined by some CGIs) */ + CURLOPT(CURLOPT_USERAGENT, CURLOPTTYPE_STRINGPOINT, 18), + + /* If the download receives less than "low speed limit" bytes/second + * during "low speed time" seconds, the operations is aborted. + * You could i.e if you have a pretty high speed connection, abort if + * it is less than 2000 bytes/sec during 20 seconds. + */ + + /* Set the "low speed limit" */ + CURLOPT(CURLOPT_LOW_SPEED_LIMIT, CURLOPTTYPE_LONG, 19), + + /* Set the "low speed time" */ + CURLOPT(CURLOPT_LOW_SPEED_TIME, CURLOPTTYPE_LONG, 20), + + /* Set the continuation offset. + * + * Note there is also a _LARGE version of this key which uses + * off_t types, allowing for large file offsets on platforms which + * use larger-than-32-bit off_t's. Look below for RESUME_FROM_LARGE. + */ + CURLOPT(CURLOPT_RESUME_FROM, CURLOPTTYPE_LONG, 21), + + /* Set cookie in request: */ + CURLOPT(CURLOPT_COOKIE, CURLOPTTYPE_STRINGPOINT, 22), + + /* This points to a linked list of headers, struct curl_slist kind. This + list is also used for RTSP (in spite of its name) */ + CURLOPT(CURLOPT_HTTPHEADER, CURLOPTTYPE_SLISTPOINT, 23), + + /* This points to a linked list of post entries, struct curl_httppost */ + CURLOPT(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24), + + /* name of the file keeping your private SSL-certificate */ + CURLOPT(CURLOPT_SSLCERT, CURLOPTTYPE_STRINGPOINT, 25), + + /* password for the SSL or SSH private key */ + CURLOPT(CURLOPT_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 26), + + /* send TYPE parameter? */ + CURLOPT(CURLOPT_CRLF, CURLOPTTYPE_LONG, 27), + + /* send linked-list of QUOTE commands */ + CURLOPT(CURLOPT_QUOTE, CURLOPTTYPE_SLISTPOINT, 28), + + /* send FILE * or void * to store headers to, if you use a callback it + is simply passed to the callback unmodified */ + CURLOPT(CURLOPT_HEADERDATA, CURLOPTTYPE_CBPOINT, 29), + + /* point to a file to read the initial cookies from, also enables + "cookie awareness" */ + CURLOPT(CURLOPT_COOKIEFILE, CURLOPTTYPE_STRINGPOINT, 31), + + /* What version to specifically try to use. + See CURL_SSLVERSION defines below. */ + CURLOPT(CURLOPT_SSLVERSION, CURLOPTTYPE_VALUES, 32), + + /* What kind of HTTP time condition to use, see defines */ + CURLOPT(CURLOPT_TIMECONDITION, CURLOPTTYPE_VALUES, 33), + + /* Time to use with the above condition. Specified in number of seconds + since 1 Jan 1970 */ + CURLOPT(CURLOPT_TIMEVALUE, CURLOPTTYPE_LONG, 34), + + /* 35 = OBSOLETE */ + + /* Custom request, for customizing the get command like + HTTP: DELETE, TRACE and others + FTP: to use a different list command + */ + CURLOPT(CURLOPT_CUSTOMREQUEST, CURLOPTTYPE_STRINGPOINT, 36), + + /* FILE handle to use instead of stderr */ + CURLOPT(CURLOPT_STDERR, CURLOPTTYPE_OBJECTPOINT, 37), + + /* 38 is not used */ + + /* send linked-list of post-transfer QUOTE commands */ + CURLOPT(CURLOPT_POSTQUOTE, CURLOPTTYPE_SLISTPOINT, 39), + + /* OBSOLETE, do not use! */ + CURLOPT(CURLOPT_OBSOLETE40, CURLOPTTYPE_OBJECTPOINT, 40), + + /* talk a lot */ + CURLOPT(CURLOPT_VERBOSE, CURLOPTTYPE_LONG, 41), + + /* throw the header out too */ + CURLOPT(CURLOPT_HEADER, CURLOPTTYPE_LONG, 42), + + /* shut off the progress meter */ + CURLOPT(CURLOPT_NOPROGRESS, CURLOPTTYPE_LONG, 43), + + /* use HEAD to get http document */ + CURLOPT(CURLOPT_NOBODY, CURLOPTTYPE_LONG, 44), + + /* no output on http error codes >= 400 */ + CURLOPT(CURLOPT_FAILONERROR, CURLOPTTYPE_LONG, 45), + + /* this is an upload */ + CURLOPT(CURLOPT_UPLOAD, CURLOPTTYPE_LONG, 46), + + /* HTTP POST method */ + CURLOPT(CURLOPT_POST, CURLOPTTYPE_LONG, 47), + + /* bare names when listing directories */ + CURLOPT(CURLOPT_DIRLISTONLY, CURLOPTTYPE_LONG, 48), + + /* Append instead of overwrite on upload! */ + CURLOPT(CURLOPT_APPEND, CURLOPTTYPE_LONG, 50), + + /* Specify whether to read the user+password from the .netrc or the URL. + * This must be one of the CURL_NETRC_* enums below. */ + CURLOPT(CURLOPT_NETRC, CURLOPTTYPE_VALUES, 51), + + /* use Location: Luke! */ + CURLOPT(CURLOPT_FOLLOWLOCATION, CURLOPTTYPE_LONG, 52), + + /* transfer data in text/ASCII format */ + CURLOPT(CURLOPT_TRANSFERTEXT, CURLOPTTYPE_LONG, 53), + + /* HTTP PUT */ + CURLOPT(CURLOPT_PUT, CURLOPTTYPE_LONG, 54), + + /* 55 = OBSOLETE */ + + /* DEPRECATED + * Function that will be called instead of the internal progress display + * function. This function should be defined as the curl_progress_callback + * prototype defines. */ + CURLOPT(CURLOPT_PROGRESSFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 56), + + /* Data passed to the CURLOPT_PROGRESSFUNCTION and CURLOPT_XFERINFOFUNCTION + callbacks */ + CURLOPT(CURLOPT_XFERINFODATA, CURLOPTTYPE_CBPOINT, 57), +#define CURLOPT_PROGRESSDATA CURLOPT_XFERINFODATA + + /* We want the referrer field set automatically when following locations */ + CURLOPT(CURLOPT_AUTOREFERER, CURLOPTTYPE_LONG, 58), + + /* Port of the proxy, can be set in the proxy string as well with: + "[host]:[port]" */ + CURLOPT(CURLOPT_PROXYPORT, CURLOPTTYPE_LONG, 59), + + /* size of the POST input data, if strlen() is not good to use */ + CURLOPT(CURLOPT_POSTFIELDSIZE, CURLOPTTYPE_LONG, 60), + + /* tunnel non-http operations through a HTTP proxy */ + CURLOPT(CURLOPT_HTTPPROXYTUNNEL, CURLOPTTYPE_LONG, 61), + + /* Set the interface string to use as outgoing network interface */ + CURLOPT(CURLOPT_INTERFACE, CURLOPTTYPE_STRINGPOINT, 62), + + /* Set the krb4/5 security level, this also enables krb4/5 awareness. This + * is a string, 'clear', 'safe', 'confidential' or 'private'. If the string + * is set but doesn't match one of these, 'private' will be used. */ + CURLOPT(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63), + + /* Set if we should verify the peer in ssl handshake, set 1 to verify. */ + CURLOPT(CURLOPT_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 64), + + /* The CApath or CAfile used to validate the peer certificate + this option is used only if SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_CAINFO, CURLOPTTYPE_STRINGPOINT, 65), + + /* 66 = OBSOLETE */ + /* 67 = OBSOLETE */ + + /* Maximum number of http redirects to follow */ + CURLOPT(CURLOPT_MAXREDIRS, CURLOPTTYPE_LONG, 68), + + /* Pass a long set to 1 to get the date of the requested document (if + possible)! Pass a zero to shut it off. */ + CURLOPT(CURLOPT_FILETIME, CURLOPTTYPE_LONG, 69), + + /* This points to a linked list of telnet options */ + CURLOPT(CURLOPT_TELNETOPTIONS, CURLOPTTYPE_SLISTPOINT, 70), + + /* Max amount of cached alive connections */ + CURLOPT(CURLOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 71), + + /* OBSOLETE, do not use! */ + CURLOPT(CURLOPT_OBSOLETE72, CURLOPTTYPE_LONG, 72), + + /* 73 = OBSOLETE */ + + /* Set to explicitly use a new connection for the upcoming transfer. + Do not use this unless you're absolutely sure of this, as it makes the + operation slower and is less friendly for the network. */ + CURLOPT(CURLOPT_FRESH_CONNECT, CURLOPTTYPE_LONG, 74), + + /* Set to explicitly forbid the upcoming transfer's connection to be re-used + when done. Do not use this unless you're absolutely sure of this, as it + makes the operation slower and is less friendly for the network. */ + CURLOPT(CURLOPT_FORBID_REUSE, CURLOPTTYPE_LONG, 75), + + /* Set to a file name that contains random data for libcurl to use to + seed the random engine when doing SSL connects. */ + CURLOPT(CURLOPT_RANDOM_FILE, CURLOPTTYPE_STRINGPOINT, 76), + + /* Set to the Entropy Gathering Daemon socket pathname */ + CURLOPT(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77), + + /* Time-out connect operations after this amount of seconds, if connects are + OK within this time, then fine... This only aborts the connect phase. */ + CURLOPT(CURLOPT_CONNECTTIMEOUT, CURLOPTTYPE_LONG, 78), + + /* Function that will be called to store headers (instead of fwrite). The + * parameters will use fwrite() syntax, make sure to follow them. */ + CURLOPT(CURLOPT_HEADERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 79), + + /* Set this to force the HTTP request to get back to GET. Only really usable + if POST, PUT or a custom request have been used first. + */ + CURLOPT(CURLOPT_HTTPGET, CURLOPTTYPE_LONG, 80), + + /* Set if we should verify the Common name from the peer certificate in ssl + * handshake, set 1 to check existence, 2 to ensure that it matches the + * provided hostname. */ + CURLOPT(CURLOPT_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 81), + + /* Specify which file name to write all known cookies in after completed + operation. Set file name to "-" (dash) to make it go to stdout. */ + CURLOPT(CURLOPT_COOKIEJAR, CURLOPTTYPE_STRINGPOINT, 82), + + /* Specify which SSL ciphers to use */ + CURLOPT(CURLOPT_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 83), + + /* Specify which HTTP version to use! This must be set to one of the + CURL_HTTP_VERSION* enums set below. */ + CURLOPT(CURLOPT_HTTP_VERSION, CURLOPTTYPE_VALUES, 84), + + /* Specifically switch on or off the FTP engine's use of the EPSV command. By + default, that one will always be attempted before the more traditional + PASV command. */ + CURLOPT(CURLOPT_FTP_USE_EPSV, CURLOPTTYPE_LONG, 85), + + /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */ + CURLOPT(CURLOPT_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 86), + + /* name of the file keeping your private SSL-key */ + CURLOPT(CURLOPT_SSLKEY, CURLOPTTYPE_STRINGPOINT, 87), + + /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */ + CURLOPT(CURLOPT_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 88), + + /* crypto engine for the SSL-sub system */ + CURLOPT(CURLOPT_SSLENGINE, CURLOPTTYPE_STRINGPOINT, 89), + + /* set the crypto engine for the SSL-sub system as default + the param has no meaning... + */ + CURLOPT(CURLOPT_SSLENGINE_DEFAULT, CURLOPTTYPE_LONG, 90), + + /* Non-zero value means to use the global dns cache */ + /* DEPRECATED, do not use! */ + CURLOPT(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91), + + /* DNS cache timeout */ + CURLOPT(CURLOPT_DNS_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 92), + + /* send linked-list of pre-transfer QUOTE commands */ + CURLOPT(CURLOPT_PREQUOTE, CURLOPTTYPE_SLISTPOINT, 93), + + /* set the debug function */ + CURLOPT(CURLOPT_DEBUGFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 94), + + /* set the data for the debug function */ + CURLOPT(CURLOPT_DEBUGDATA, CURLOPTTYPE_CBPOINT, 95), + + /* mark this as start of a cookie session */ + CURLOPT(CURLOPT_COOKIESESSION, CURLOPTTYPE_LONG, 96), + + /* The CApath directory used to validate the peer certificate + this option is used only if SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_CAPATH, CURLOPTTYPE_STRINGPOINT, 97), + + /* Instruct libcurl to use a smaller receive buffer */ + CURLOPT(CURLOPT_BUFFERSIZE, CURLOPTTYPE_LONG, 98), + + /* Instruct libcurl to not use any signal/alarm handlers, even when using + timeouts. This option is useful for multi-threaded applications. + See libcurl-the-guide for more background information. */ + CURLOPT(CURLOPT_NOSIGNAL, CURLOPTTYPE_LONG, 99), + + /* Provide a CURLShare for mutexing non-ts data */ + CURLOPT(CURLOPT_SHARE, CURLOPTTYPE_OBJECTPOINT, 100), + + /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default), + CURLPROXY_HTTPS, CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and + CURLPROXY_SOCKS5. */ + CURLOPT(CURLOPT_PROXYTYPE, CURLOPTTYPE_VALUES, 101), + + /* Set the Accept-Encoding string. Use this to tell a server you would like + the response to be compressed. Before 7.21.6, this was known as + CURLOPT_ENCODING */ + CURLOPT(CURLOPT_ACCEPT_ENCODING, CURLOPTTYPE_STRINGPOINT, 102), + + /* Set pointer to private data */ + CURLOPT(CURLOPT_PRIVATE, CURLOPTTYPE_OBJECTPOINT, 103), + + /* Set aliases for HTTP 200 in the HTTP Response header */ + CURLOPT(CURLOPT_HTTP200ALIASES, CURLOPTTYPE_SLISTPOINT, 104), + + /* Continue to send authentication (user+password) when following locations, + even when hostname changed. This can potentially send off the name + and password to whatever host the server decides. */ + CURLOPT(CURLOPT_UNRESTRICTED_AUTH, CURLOPTTYPE_LONG, 105), + + /* Specifically switch on or off the FTP engine's use of the EPRT command ( + it also disables the LPRT attempt). By default, those ones will always be + attempted before the good old traditional PORT command. */ + CURLOPT(CURLOPT_FTP_USE_EPRT, CURLOPTTYPE_LONG, 106), + + /* Set this to a bitmask value to enable the particular authentications + methods you like. Use this in combination with CURLOPT_USERPWD. + Note that setting multiple bits may cause extra network round-trips. */ + CURLOPT(CURLOPT_HTTPAUTH, CURLOPTTYPE_VALUES, 107), + + /* Set the ssl context callback function, currently only for OpenSSL or + WolfSSL ssl_ctx, or mbedTLS mbedtls_ssl_config in the second argument. + The function must match the curl_ssl_ctx_callback prototype. */ + CURLOPT(CURLOPT_SSL_CTX_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 108), + + /* Set the userdata for the ssl context callback function's third + argument */ + CURLOPT(CURLOPT_SSL_CTX_DATA, CURLOPTTYPE_CBPOINT, 109), + + /* FTP Option that causes missing dirs to be created on the remote server. + In 7.19.4 we introduced the convenience enums for this option using the + CURLFTP_CREATE_DIR prefix. + */ + CURLOPT(CURLOPT_FTP_CREATE_MISSING_DIRS, CURLOPTTYPE_LONG, 110), + + /* Set this to a bitmask value to enable the particular authentications + methods you like. Use this in combination with CURLOPT_PROXYUSERPWD. + Note that setting multiple bits may cause extra network round-trips. */ + CURLOPT(CURLOPT_PROXYAUTH, CURLOPTTYPE_VALUES, 111), + + /* FTP option that changes the timeout, in seconds, associated with + getting a response. This is different from transfer timeout time and + essentially places a demand on the FTP server to acknowledge commands + in a timely manner. */ + CURLOPT(CURLOPT_FTP_RESPONSE_TIMEOUT, CURLOPTTYPE_LONG, 112), +#define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT + + /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to + tell libcurl to use those IP versions only. This only has effect on + systems with support for more than one, i.e IPv4 _and_ IPv6. */ + CURLOPT(CURLOPT_IPRESOLVE, CURLOPTTYPE_VALUES, 113), + + /* Set this option to limit the size of a file that will be downloaded from + an HTTP or FTP server. + + Note there is also _LARGE version which adds large file support for + platforms which have larger off_t sizes. See MAXFILESIZE_LARGE below. */ + CURLOPT(CURLOPT_MAXFILESIZE, CURLOPTTYPE_LONG, 114), + + /* See the comment for INFILESIZE above, but in short, specifies + * the size of the file being uploaded. -1 means unknown. + */ + CURLOPT(CURLOPT_INFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 115), + + /* Sets the continuation offset. There is also a CURLOPTTYPE_LONG version + * of this; look above for RESUME_FROM. + */ + CURLOPT(CURLOPT_RESUME_FROM_LARGE, CURLOPTTYPE_OFF_T, 116), + + /* Sets the maximum size of data that will be downloaded from + * an HTTP or FTP server. See MAXFILESIZE above for the LONG version. + */ + CURLOPT(CURLOPT_MAXFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 117), + + /* Set this option to the file name of your .netrc file you want libcurl + to parse (using the CURLOPT_NETRC option). If not set, libcurl will do + a poor attempt to find the user's home directory and check for a .netrc + file in there. */ + CURLOPT(CURLOPT_NETRC_FILE, CURLOPTTYPE_STRINGPOINT, 118), + + /* Enable SSL/TLS for FTP, pick one of: + CURLUSESSL_TRY - try using SSL, proceed anyway otherwise + CURLUSESSL_CONTROL - SSL for the control connection or fail + CURLUSESSL_ALL - SSL for all communication or fail + */ + CURLOPT(CURLOPT_USE_SSL, CURLOPTTYPE_VALUES, 119), + + /* The _LARGE version of the standard POSTFIELDSIZE option */ + CURLOPT(CURLOPT_POSTFIELDSIZE_LARGE, CURLOPTTYPE_OFF_T, 120), + + /* Enable/disable the TCP Nagle algorithm */ + CURLOPT(CURLOPT_TCP_NODELAY, CURLOPTTYPE_LONG, 121), + + /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ + /* 123 OBSOLETE. Gone in 7.16.0 */ + /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ + /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ + /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ + /* 127 OBSOLETE. Gone in 7.16.0 */ + /* 128 OBSOLETE. Gone in 7.16.0 */ + + /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option + can be used to change libcurl's default action which is to first try + "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK + response has been received. + + Available parameters are: + CURLFTPAUTH_DEFAULT - let libcurl decide + CURLFTPAUTH_SSL - try "AUTH SSL" first, then TLS + CURLFTPAUTH_TLS - try "AUTH TLS" first, then SSL + */ + CURLOPT(CURLOPT_FTPSSLAUTH, CURLOPTTYPE_VALUES, 129), + + CURLOPT(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130), + CURLOPT(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131), + + /* 132 OBSOLETE. Gone in 7.16.0 */ + /* 133 OBSOLETE. Gone in 7.16.0 */ + + /* null-terminated string for pass on to the FTP server when asked for + "account" info */ + CURLOPT(CURLOPT_FTP_ACCOUNT, CURLOPTTYPE_STRINGPOINT, 134), + + /* feed cookie into cookie engine */ + CURLOPT(CURLOPT_COOKIELIST, CURLOPTTYPE_STRINGPOINT, 135), + + /* ignore Content-Length */ + CURLOPT(CURLOPT_IGNORE_CONTENT_LENGTH, CURLOPTTYPE_LONG, 136), + + /* Set to non-zero to skip the IP address received in a 227 PASV FTP server + response. Typically used for FTP-SSL purposes but is not restricted to + that. libcurl will then instead use the same IP address it used for the + control connection. */ + CURLOPT(CURLOPT_FTP_SKIP_PASV_IP, CURLOPTTYPE_LONG, 137), + + /* Select "file method" to use when doing FTP, see the curl_ftpmethod + above. */ + CURLOPT(CURLOPT_FTP_FILEMETHOD, CURLOPTTYPE_VALUES, 138), + + /* Local port number to bind the socket to */ + CURLOPT(CURLOPT_LOCALPORT, CURLOPTTYPE_LONG, 139), + + /* Number of ports to try, including the first one set with LOCALPORT. + Thus, setting it to 1 will make no additional attempts but the first. + */ + CURLOPT(CURLOPT_LOCALPORTRANGE, CURLOPTTYPE_LONG, 140), + + /* no transfer, set up connection and let application use the socket by + extracting it with CURLINFO_LASTSOCKET */ + CURLOPT(CURLOPT_CONNECT_ONLY, CURLOPTTYPE_LONG, 141), + + /* Function that will be called to convert from the + network encoding (instead of using the iconv calls in libcurl) */ + CURLOPT(CURLOPT_CONV_FROM_NETWORK_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 142), + + /* Function that will be called to convert to the + network encoding (instead of using the iconv calls in libcurl) */ + CURLOPT(CURLOPT_CONV_TO_NETWORK_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 143), + + /* Function that will be called to convert from UTF8 + (instead of using the iconv calls in libcurl) + Note that this is used only for SSL certificate processing */ + CURLOPT(CURLOPT_CONV_FROM_UTF8_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 144), + + /* if the connection proceeds too quickly then need to slow it down */ + /* limit-rate: maximum number of bytes per second to send or receive */ + CURLOPT(CURLOPT_MAX_SEND_SPEED_LARGE, CURLOPTTYPE_OFF_T, 145), + CURLOPT(CURLOPT_MAX_RECV_SPEED_LARGE, CURLOPTTYPE_OFF_T, 146), + + /* Pointer to command string to send if USER/PASS fails. */ + CURLOPT(CURLOPT_FTP_ALTERNATIVE_TO_USER, CURLOPTTYPE_STRINGPOINT, 147), + + /* callback function for setting socket options */ + CURLOPT(CURLOPT_SOCKOPTFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 148), + CURLOPT(CURLOPT_SOCKOPTDATA, CURLOPTTYPE_CBPOINT, 149), + + /* set to 0 to disable session ID re-use for this transfer, default is + enabled (== 1) */ + CURLOPT(CURLOPT_SSL_SESSIONID_CACHE, CURLOPTTYPE_LONG, 150), + + /* allowed SSH authentication methods */ + CURLOPT(CURLOPT_SSH_AUTH_TYPES, CURLOPTTYPE_VALUES, 151), + + /* Used by scp/sftp to do public/private key authentication */ + CURLOPT(CURLOPT_SSH_PUBLIC_KEYFILE, CURLOPTTYPE_STRINGPOINT, 152), + CURLOPT(CURLOPT_SSH_PRIVATE_KEYFILE, CURLOPTTYPE_STRINGPOINT, 153), + + /* Send CCC (Clear Command Channel) after authentication */ + CURLOPT(CURLOPT_FTP_SSL_CCC, CURLOPTTYPE_LONG, 154), + + /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */ + CURLOPT(CURLOPT_TIMEOUT_MS, CURLOPTTYPE_LONG, 155), + CURLOPT(CURLOPT_CONNECTTIMEOUT_MS, CURLOPTTYPE_LONG, 156), + + /* set to zero to disable the libcurl's decoding and thus pass the raw body + data to the application even when it is encoded/compressed */ + CURLOPT(CURLOPT_HTTP_TRANSFER_DECODING, CURLOPTTYPE_LONG, 157), + CURLOPT(CURLOPT_HTTP_CONTENT_DECODING, CURLOPTTYPE_LONG, 158), + + /* Permission used when creating new files and directories on the remote + server for protocols that support it, SFTP/SCP/FILE */ + CURLOPT(CURLOPT_NEW_FILE_PERMS, CURLOPTTYPE_LONG, 159), + CURLOPT(CURLOPT_NEW_DIRECTORY_PERMS, CURLOPTTYPE_LONG, 160), + + /* Set the behavior of POST when redirecting. Values must be set to one + of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */ + CURLOPT(CURLOPT_POSTREDIR, CURLOPTTYPE_VALUES, 161), + + /* used by scp/sftp to verify the host's public key */ + CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, CURLOPTTYPE_STRINGPOINT, 162), + + /* Callback function for opening socket (instead of socket(2)). Optionally, + callback is able change the address or refuse to connect returning + CURL_SOCKET_BAD. The callback should have type + curl_opensocket_callback */ + CURLOPT(CURLOPT_OPENSOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 163), + CURLOPT(CURLOPT_OPENSOCKETDATA, CURLOPTTYPE_CBPOINT, 164), + + /* POST volatile input fields. */ + CURLOPT(CURLOPT_COPYPOSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 165), + + /* set transfer mode (;type=) when doing FTP via an HTTP proxy */ + CURLOPT(CURLOPT_PROXY_TRANSFER_MODE, CURLOPTTYPE_LONG, 166), + + /* Callback function for seeking in the input stream */ + CURLOPT(CURLOPT_SEEKFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 167), + CURLOPT(CURLOPT_SEEKDATA, CURLOPTTYPE_CBPOINT, 168), + + /* CRL file */ + CURLOPT(CURLOPT_CRLFILE, CURLOPTTYPE_STRINGPOINT, 169), + + /* Issuer certificate */ + CURLOPT(CURLOPT_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 170), + + /* (IPv6) Address scope */ + CURLOPT(CURLOPT_ADDRESS_SCOPE, CURLOPTTYPE_LONG, 171), + + /* Collect certificate chain info and allow it to get retrievable with + CURLINFO_CERTINFO after the transfer is complete. */ + CURLOPT(CURLOPT_CERTINFO, CURLOPTTYPE_LONG, 172), + + /* "name" and "pwd" to use when fetching. */ + CURLOPT(CURLOPT_USERNAME, CURLOPTTYPE_STRINGPOINT, 173), + CURLOPT(CURLOPT_PASSWORD, CURLOPTTYPE_STRINGPOINT, 174), + + /* "name" and "pwd" to use with Proxy when fetching. */ + CURLOPT(CURLOPT_PROXYUSERNAME, CURLOPTTYPE_STRINGPOINT, 175), + CURLOPT(CURLOPT_PROXYPASSWORD, CURLOPTTYPE_STRINGPOINT, 176), + + /* Comma separated list of hostnames defining no-proxy zones. These should + match both hostnames directly, and hostnames within a domain. For + example, local.com will match local.com and www.local.com, but NOT + notlocal.com or www.notlocal.com. For compatibility with other + implementations of this, .local.com will be considered to be the same as + local.com. A single * is the only valid wildcard, and effectively + disables the use of proxy. */ + CURLOPT(CURLOPT_NOPROXY, CURLOPTTYPE_STRINGPOINT, 177), + + /* block size for TFTP transfers */ + CURLOPT(CURLOPT_TFTP_BLKSIZE, CURLOPTTYPE_LONG, 178), + + /* Socks Service */ + /* DEPRECATED, do not use! */ + CURLOPT(CURLOPT_SOCKS5_GSSAPI_SERVICE, CURLOPTTYPE_STRINGPOINT, 179), + + /* Socks Service */ + CURLOPT(CURLOPT_SOCKS5_GSSAPI_NEC, CURLOPTTYPE_LONG, 180), + + /* set the bitmask for the protocols that are allowed to be used for the + transfer, which thus helps the app which takes URLs from users or other + external inputs and want to restrict what protocol(s) to deal + with. Defaults to CURLPROTO_ALL. */ + CURLOPT(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181), + + /* set the bitmask for the protocols that libcurl is allowed to follow to, + as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs + to be set in both bitmasks to be allowed to get redirected to. */ + CURLOPT(CURLOPT_REDIR_PROTOCOLS, CURLOPTTYPE_LONG, 182), + + /* set the SSH knownhost file name to use */ + CURLOPT(CURLOPT_SSH_KNOWNHOSTS, CURLOPTTYPE_STRINGPOINT, 183), + + /* set the SSH host key callback, must point to a curl_sshkeycallback + function */ + CURLOPT(CURLOPT_SSH_KEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 184), + + /* set the SSH host key callback custom pointer */ + CURLOPT(CURLOPT_SSH_KEYDATA, CURLOPTTYPE_CBPOINT, 185), + + /* set the SMTP mail originator */ + CURLOPT(CURLOPT_MAIL_FROM, CURLOPTTYPE_STRINGPOINT, 186), + + /* set the list of SMTP mail receiver(s) */ + CURLOPT(CURLOPT_MAIL_RCPT, CURLOPTTYPE_SLISTPOINT, 187), + + /* FTP: send PRET before PASV */ + CURLOPT(CURLOPT_FTP_USE_PRET, CURLOPTTYPE_LONG, 188), + + /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */ + CURLOPT(CURLOPT_RTSP_REQUEST, CURLOPTTYPE_VALUES, 189), + + /* The RTSP session identifier */ + CURLOPT(CURLOPT_RTSP_SESSION_ID, CURLOPTTYPE_STRINGPOINT, 190), + + /* The RTSP stream URI */ + CURLOPT(CURLOPT_RTSP_STREAM_URI, CURLOPTTYPE_STRINGPOINT, 191), + + /* The Transport: header to use in RTSP requests */ + CURLOPT(CURLOPT_RTSP_TRANSPORT, CURLOPTTYPE_STRINGPOINT, 192), + + /* Manually initialize the client RTSP CSeq for this handle */ + CURLOPT(CURLOPT_RTSP_CLIENT_CSEQ, CURLOPTTYPE_LONG, 193), + + /* Manually initialize the server RTSP CSeq for this handle */ + CURLOPT(CURLOPT_RTSP_SERVER_CSEQ, CURLOPTTYPE_LONG, 194), + + /* The stream to pass to INTERLEAVEFUNCTION. */ + CURLOPT(CURLOPT_INTERLEAVEDATA, CURLOPTTYPE_CBPOINT, 195), + + /* Let the application define a custom write method for RTP data */ + CURLOPT(CURLOPT_INTERLEAVEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 196), + + /* Turn on wildcard matching */ + CURLOPT(CURLOPT_WILDCARDMATCH, CURLOPTTYPE_LONG, 197), + + /* Directory matching callback called before downloading of an + individual file (chunk) started */ + CURLOPT(CURLOPT_CHUNK_BGN_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 198), + + /* Directory matching callback called after the file (chunk) + was downloaded, or skipped */ + CURLOPT(CURLOPT_CHUNK_END_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 199), + + /* Change match (fnmatch-like) callback for wildcard matching */ + CURLOPT(CURLOPT_FNMATCH_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 200), + + /* Let the application define custom chunk data pointer */ + CURLOPT(CURLOPT_CHUNK_DATA, CURLOPTTYPE_CBPOINT, 201), + + /* FNMATCH_FUNCTION user pointer */ + CURLOPT(CURLOPT_FNMATCH_DATA, CURLOPTTYPE_CBPOINT, 202), + + /* send linked-list of name:port:address sets */ + CURLOPT(CURLOPT_RESOLVE, CURLOPTTYPE_SLISTPOINT, 203), + + /* Set a username for authenticated TLS */ + CURLOPT(CURLOPT_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 204), + + /* Set a password for authenticated TLS */ + CURLOPT(CURLOPT_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 205), + + /* Set authentication type for authenticated TLS */ + CURLOPT(CURLOPT_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 206), + + /* Set to 1 to enable the "TE:" header in HTTP requests to ask for + compressed transfer-encoded responses. Set to 0 to disable the use of TE: + in outgoing requests. The current default is 0, but it might change in a + future libcurl release. + + libcurl will ask for the compressed methods it knows of, and if that + isn't any, it will not ask for transfer-encoding at all even if this + option is set to 1. + + */ + CURLOPT(CURLOPT_TRANSFER_ENCODING, CURLOPTTYPE_LONG, 207), + + /* Callback function for closing socket (instead of close(2)). The callback + should have type curl_closesocket_callback */ + CURLOPT(CURLOPT_CLOSESOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 208), + CURLOPT(CURLOPT_CLOSESOCKETDATA, CURLOPTTYPE_CBPOINT, 209), + + /* allow GSSAPI credential delegation */ + CURLOPT(CURLOPT_GSSAPI_DELEGATION, CURLOPTTYPE_VALUES, 210), + + /* Set the name servers to use for DNS resolution */ + CURLOPT(CURLOPT_DNS_SERVERS, CURLOPTTYPE_STRINGPOINT, 211), + + /* Time-out accept operations (currently for FTP only) after this amount + of milliseconds. */ + CURLOPT(CURLOPT_ACCEPTTIMEOUT_MS, CURLOPTTYPE_LONG, 212), + + /* Set TCP keepalive */ + CURLOPT(CURLOPT_TCP_KEEPALIVE, CURLOPTTYPE_LONG, 213), + + /* non-universal keepalive knobs (Linux, AIX, HP-UX, more) */ + CURLOPT(CURLOPT_TCP_KEEPIDLE, CURLOPTTYPE_LONG, 214), + CURLOPT(CURLOPT_TCP_KEEPINTVL, CURLOPTTYPE_LONG, 215), + + /* Enable/disable specific SSL features with a bitmask, see CURLSSLOPT_* */ + CURLOPT(CURLOPT_SSL_OPTIONS, CURLOPTTYPE_VALUES, 216), + + /* Set the SMTP auth originator */ + CURLOPT(CURLOPT_MAIL_AUTH, CURLOPTTYPE_STRINGPOINT, 217), + + /* Enable/disable SASL initial response */ + CURLOPT(CURLOPT_SASL_IR, CURLOPTTYPE_LONG, 218), + + /* Function that will be called instead of the internal progress display + * function. This function should be defined as the curl_xferinfo_callback + * prototype defines. (Deprecates CURLOPT_PROGRESSFUNCTION) */ + CURLOPT(CURLOPT_XFERINFOFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 219), + + /* The XOAUTH2 bearer token */ + CURLOPT(CURLOPT_XOAUTH2_BEARER, CURLOPTTYPE_STRINGPOINT, 220), + + /* Set the interface string to use as outgoing network + * interface for DNS requests. + * Only supported by the c-ares DNS backend */ + CURLOPT(CURLOPT_DNS_INTERFACE, CURLOPTTYPE_STRINGPOINT, 221), + + /* Set the local IPv4 address to use for outgoing DNS requests. + * Only supported by the c-ares DNS backend */ + CURLOPT(CURLOPT_DNS_LOCAL_IP4, CURLOPTTYPE_STRINGPOINT, 222), + + /* Set the local IPv6 address to use for outgoing DNS requests. + * Only supported by the c-ares DNS backend */ + CURLOPT(CURLOPT_DNS_LOCAL_IP6, CURLOPTTYPE_STRINGPOINT, 223), + + /* Set authentication options directly */ + CURLOPT(CURLOPT_LOGIN_OPTIONS, CURLOPTTYPE_STRINGPOINT, 224), + + /* Enable/disable TLS NPN extension (http2 over ssl might fail without) */ + CURLOPT(CURLOPT_SSL_ENABLE_NPN, CURLOPTTYPE_LONG, 225), + + /* Enable/disable TLS ALPN extension (http2 over ssl might fail without) */ + CURLOPT(CURLOPT_SSL_ENABLE_ALPN, CURLOPTTYPE_LONG, 226), + + /* Time to wait for a response to a HTTP request containing an + * Expect: 100-continue header before sending the data anyway. */ + CURLOPT(CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPTTYPE_LONG, 227), + + /* This points to a linked list of headers used for proxy requests only, + struct curl_slist kind */ + CURLOPT(CURLOPT_PROXYHEADER, CURLOPTTYPE_SLISTPOINT, 228), + + /* Pass in a bitmask of "header options" */ + CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229), + + /* The public key in DER form used to validate the peer public key + this option is used only if SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230), + + /* Path to Unix domain socket */ + CURLOPT(CURLOPT_UNIX_SOCKET_PATH, CURLOPTTYPE_STRINGPOINT, 231), + + /* Set if we should verify the certificate status. */ + CURLOPT(CURLOPT_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 232), + + /* Set if we should enable TLS false start. */ + CURLOPT(CURLOPT_SSL_FALSESTART, CURLOPTTYPE_LONG, 233), + + /* Do not squash dot-dot sequences */ + CURLOPT(CURLOPT_PATH_AS_IS, CURLOPTTYPE_LONG, 234), + + /* Proxy Service Name */ + CURLOPT(CURLOPT_PROXY_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 235), + + /* Service Name */ + CURLOPT(CURLOPT_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 236), + + /* Wait/don't wait for pipe/mutex to clarify */ + CURLOPT(CURLOPT_PIPEWAIT, CURLOPTTYPE_LONG, 237), + + /* Set the protocol used when curl is given a URL without a protocol */ + CURLOPT(CURLOPT_DEFAULT_PROTOCOL, CURLOPTTYPE_STRINGPOINT, 238), + + /* Set stream weight, 1 - 256 (default is 16) */ + CURLOPT(CURLOPT_STREAM_WEIGHT, CURLOPTTYPE_LONG, 239), + + /* Set stream dependency on another CURL handle */ + CURLOPT(CURLOPT_STREAM_DEPENDS, CURLOPTTYPE_OBJECTPOINT, 240), + + /* Set E-xclusive stream dependency on another CURL handle */ + CURLOPT(CURLOPT_STREAM_DEPENDS_E, CURLOPTTYPE_OBJECTPOINT, 241), + + /* Do not send any tftp option requests to the server */ + CURLOPT(CURLOPT_TFTP_NO_OPTIONS, CURLOPTTYPE_LONG, 242), + + /* Linked-list of host:port:connect-to-host:connect-to-port, + overrides the URL's host:port (only for the network layer) */ + CURLOPT(CURLOPT_CONNECT_TO, CURLOPTTYPE_SLISTPOINT, 243), + + /* Set TCP Fast Open */ + CURLOPT(CURLOPT_TCP_FASTOPEN, CURLOPTTYPE_LONG, 244), + + /* Continue to send data if the server responds early with an + * HTTP status code >= 300 */ + CURLOPT(CURLOPT_KEEP_SENDING_ON_ERROR, CURLOPTTYPE_LONG, 245), + + /* The CApath or CAfile used to validate the proxy certificate + this option is used only if PROXY_SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_PROXY_CAINFO, CURLOPTTYPE_STRINGPOINT, 246), + + /* The CApath directory used to validate the proxy certificate + this option is used only if PROXY_SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_PROXY_CAPATH, CURLOPTTYPE_STRINGPOINT, 247), + + /* Set if we should verify the proxy in ssl handshake, + set 1 to verify. */ + CURLOPT(CURLOPT_PROXY_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 248), + + /* Set if we should verify the Common name from the proxy certificate in ssl + * handshake, set 1 to check existence, 2 to ensure that it matches + * the provided hostname. */ + CURLOPT(CURLOPT_PROXY_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 249), + + /* What version to specifically try to use for proxy. + See CURL_SSLVERSION defines below. */ + CURLOPT(CURLOPT_PROXY_SSLVERSION, CURLOPTTYPE_VALUES, 250), + + /* Set a username for authenticated TLS for proxy */ + CURLOPT(CURLOPT_PROXY_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 251), + + /* Set a password for authenticated TLS for proxy */ + CURLOPT(CURLOPT_PROXY_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 252), + + /* Set authentication type for authenticated TLS for proxy */ + CURLOPT(CURLOPT_PROXY_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 253), + + /* name of the file keeping your private SSL-certificate for proxy */ + CURLOPT(CURLOPT_PROXY_SSLCERT, CURLOPTTYPE_STRINGPOINT, 254), + + /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") for + proxy */ + CURLOPT(CURLOPT_PROXY_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 255), + + /* name of the file keeping your private SSL-key for proxy */ + CURLOPT(CURLOPT_PROXY_SSLKEY, CURLOPTTYPE_STRINGPOINT, 256), + + /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") for + proxy */ + CURLOPT(CURLOPT_PROXY_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 257), + + /* password for the SSL private key for proxy */ + CURLOPT(CURLOPT_PROXY_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 258), + + /* Specify which SSL ciphers to use for proxy */ + CURLOPT(CURLOPT_PROXY_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 259), + + /* CRL file for proxy */ + CURLOPT(CURLOPT_PROXY_CRLFILE, CURLOPTTYPE_STRINGPOINT, 260), + + /* Enable/disable specific SSL features with a bitmask for proxy, see + CURLSSLOPT_* */ + CURLOPT(CURLOPT_PROXY_SSL_OPTIONS, CURLOPTTYPE_LONG, 261), + + /* Name of pre proxy to use. */ + CURLOPT(CURLOPT_PRE_PROXY, CURLOPTTYPE_STRINGPOINT, 262), + + /* The public key in DER form used to validate the proxy public key + this option is used only if PROXY_SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_PROXY_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 263), + + /* Path to an abstract Unix domain socket */ + CURLOPT(CURLOPT_ABSTRACT_UNIX_SOCKET, CURLOPTTYPE_STRINGPOINT, 264), + + /* Suppress proxy CONNECT response headers from user callbacks */ + CURLOPT(CURLOPT_SUPPRESS_CONNECT_HEADERS, CURLOPTTYPE_LONG, 265), + + /* The request target, instead of extracted from the URL */ + CURLOPT(CURLOPT_REQUEST_TARGET, CURLOPTTYPE_STRINGPOINT, 266), + + /* bitmask of allowed auth methods for connections to SOCKS5 proxies */ + CURLOPT(CURLOPT_SOCKS5_AUTH, CURLOPTTYPE_LONG, 267), + + /* Enable/disable SSH compression */ + CURLOPT(CURLOPT_SSH_COMPRESSION, CURLOPTTYPE_LONG, 268), + + /* Post MIME data. */ + CURLOPT(CURLOPT_MIMEPOST, CURLOPTTYPE_OBJECTPOINT, 269), + + /* Time to use with the CURLOPT_TIMECONDITION. Specified in number of + seconds since 1 Jan 1970. */ + CURLOPT(CURLOPT_TIMEVALUE_LARGE, CURLOPTTYPE_OFF_T, 270), + + /* Head start in milliseconds to give happy eyeballs. */ + CURLOPT(CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, CURLOPTTYPE_LONG, 271), + + /* Function that will be called before a resolver request is made */ + CURLOPT(CURLOPT_RESOLVER_START_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 272), + + /* User data to pass to the resolver start callback. */ + CURLOPT(CURLOPT_RESOLVER_START_DATA, CURLOPTTYPE_CBPOINT, 273), + + /* send HAProxy PROXY protocol header? */ + CURLOPT(CURLOPT_HAPROXYPROTOCOL, CURLOPTTYPE_LONG, 274), + + /* shuffle addresses before use when DNS returns multiple */ + CURLOPT(CURLOPT_DNS_SHUFFLE_ADDRESSES, CURLOPTTYPE_LONG, 275), + + /* Specify which TLS 1.3 ciphers suites to use */ + CURLOPT(CURLOPT_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 276), + CURLOPT(CURLOPT_PROXY_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 277), + + /* Disallow specifying username/login in URL. */ + CURLOPT(CURLOPT_DISALLOW_USERNAME_IN_URL, CURLOPTTYPE_LONG, 278), + + /* DNS-over-HTTPS URL */ + CURLOPT(CURLOPT_DOH_URL, CURLOPTTYPE_STRINGPOINT, 279), + + /* Preferred buffer size to use for uploads */ + CURLOPT(CURLOPT_UPLOAD_BUFFERSIZE, CURLOPTTYPE_LONG, 280), + + /* Time in ms between connection upkeep calls for long-lived connections. */ + CURLOPT(CURLOPT_UPKEEP_INTERVAL_MS, CURLOPTTYPE_LONG, 281), + + /* Specify URL using CURL URL API. */ + CURLOPT(CURLOPT_CURLU, CURLOPTTYPE_OBJECTPOINT, 282), + + /* add trailing data just after no more data is available */ + CURLOPT(CURLOPT_TRAILERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 283), + + /* pointer to be passed to HTTP_TRAILER_FUNCTION */ + CURLOPT(CURLOPT_TRAILERDATA, CURLOPTTYPE_CBPOINT, 284), + + /* set this to 1L to allow HTTP/0.9 responses or 0L to disallow */ + CURLOPT(CURLOPT_HTTP09_ALLOWED, CURLOPTTYPE_LONG, 285), + + /* alt-svc control bitmask */ + CURLOPT(CURLOPT_ALTSVC_CTRL, CURLOPTTYPE_LONG, 286), + + /* alt-svc cache file name to possibly read from/write to */ + CURLOPT(CURLOPT_ALTSVC, CURLOPTTYPE_STRINGPOINT, 287), + + /* maximum age (idle time) of a connection to consider it for reuse + * (in seconds) */ + CURLOPT(CURLOPT_MAXAGE_CONN, CURLOPTTYPE_LONG, 288), + + /* SASL authorization identity */ + CURLOPT(CURLOPT_SASL_AUTHZID, CURLOPTTYPE_STRINGPOINT, 289), + + /* allow RCPT TO command to fail for some recipients */ + CURLOPT(CURLOPT_MAIL_RCPT_ALLLOWFAILS, CURLOPTTYPE_LONG, 290), + + /* the private SSL-certificate as a "blob" */ + CURLOPT(CURLOPT_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 291), + CURLOPT(CURLOPT_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 292), + CURLOPT(CURLOPT_PROXY_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 293), + CURLOPT(CURLOPT_PROXY_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 294), + CURLOPT(CURLOPT_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 295), + + /* Issuer certificate for proxy */ + CURLOPT(CURLOPT_PROXY_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 296), + CURLOPT(CURLOPT_PROXY_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 297), + + /* the EC curves requested by the TLS client (RFC 8422, 5.1); + * OpenSSL support via 'set_groups'/'set_curves': + * https://www.openssl.org/docs/manmaster/man3/SSL_CTX_set1_groups.html + */ + CURLOPT(CURLOPT_SSL_EC_CURVES, CURLOPTTYPE_STRINGPOINT, 298), + + /* HSTS bitmask */ + CURLOPT(CURLOPT_HSTS_CTRL, CURLOPTTYPE_LONG, 299), + /* HSTS file name */ + CURLOPT(CURLOPT_HSTS, CURLOPTTYPE_STRINGPOINT, 300), + + /* HSTS read callback */ + CURLOPT(CURLOPT_HSTSREADFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 301), + CURLOPT(CURLOPT_HSTSREADDATA, CURLOPTTYPE_CBPOINT, 302), + + /* HSTS write callback */ + CURLOPT(CURLOPT_HSTSWRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 303), + CURLOPT(CURLOPT_HSTSWRITEDATA, CURLOPTTYPE_CBPOINT, 304), + + /* Parameters for V4 signature */ + CURLOPT(CURLOPT_AWS_SIGV4, CURLOPTTYPE_STRINGPOINT, 305), + + /* Same as CURLOPT_SSL_VERIFYPEER but for DoH (DNS-over-HTTPS) servers. */ + CURLOPT(CURLOPT_DOH_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 306), + + /* Same as CURLOPT_SSL_VERIFYHOST but for DoH (DNS-over-HTTPS) servers. */ + CURLOPT(CURLOPT_DOH_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 307), + + /* Same as CURLOPT_SSL_VERIFYSTATUS but for DoH (DNS-over-HTTPS) servers. */ + CURLOPT(CURLOPT_DOH_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 308), + + /* The CA certificates as "blob" used to validate the peer certificate + this option is used only if SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_CAINFO_BLOB, CURLOPTTYPE_BLOB, 309), + + /* The CA certificates as "blob" used to validate the proxy certificate + this option is used only if PROXY_SSL_VERIFYPEER is true */ + CURLOPT(CURLOPT_PROXY_CAINFO_BLOB, CURLOPTTYPE_BLOB, 310), + + /* used by scp/sftp to verify the host's public key */ + CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, CURLOPTTYPE_STRINGPOINT, 311), + + /* Function that will be called immediately before the initial request + is made on a connection (after any protocol negotiation step). */ + CURLOPT(CURLOPT_PREREQFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 312), + + /* Data passed to the CURLOPT_PREREQFUNCTION callback */ + CURLOPT(CURLOPT_PREREQDATA, CURLOPTTYPE_CBPOINT, 313), + + /* maximum age (since creation) of a connection to consider it for reuse + * (in seconds) */ + CURLOPT(CURLOPT_MAXLIFETIME_CONN, CURLOPTTYPE_LONG, 314), + + /* Set MIME option flags. */ + CURLOPT(CURLOPT_MIME_OPTIONS, CURLOPTTYPE_LONG, 315), + + /* set the SSH host key callback, must point to a curl_sshkeycallback + function */ + CURLOPT(CURLOPT_SSH_HOSTKEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 316), + + /* set the SSH host key callback custom pointer */ + CURLOPT(CURLOPT_SSH_HOSTKEYDATA, CURLOPTTYPE_CBPOINT, 317), + + CURLOPT_LASTENTRY /* the last unused */ +} CURLoption; + +#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all + the obsolete stuff removed! */ + +/* Backwards compatibility with older names */ +/* These are scheduled to disappear by 2011 */ + +/* This was added in version 7.19.1 */ +#define CURLOPT_POST301 CURLOPT_POSTREDIR + +/* These are scheduled to disappear by 2009 */ + +/* The following were added in 7.17.0 */ +#define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD +#define CURLOPT_FTPAPPEND CURLOPT_APPEND +#define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY +#define CURLOPT_FTP_SSL CURLOPT_USE_SSL + +/* The following were added earlier */ + +#define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD +#define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL + +#else +/* This is set if CURL_NO_OLDIES is defined at compile-time */ +#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */ +#endif + + + /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host + name resolves addresses using more than one IP protocol version, this + option might be handy to force libcurl to use a specific IP version. */ +#define CURL_IPRESOLVE_WHATEVER 0 /* default, uses addresses to all IP + versions that your system allows */ +#define CURL_IPRESOLVE_V4 1 /* uses only IPv4 addresses/connections */ +#define CURL_IPRESOLVE_V6 2 /* uses only IPv6 addresses/connections */ + + /* three convenient "aliases" that follow the name scheme better */ +#define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER + + /* These enums are for use with the CURLOPT_HTTP_VERSION option. */ +enum { + CURL_HTTP_VERSION_NONE, /* setting this means we don't care, and that we'd + like the library to choose the best possible + for us! */ + CURL_HTTP_VERSION_1_0, /* please use HTTP 1.0 in the request */ + CURL_HTTP_VERSION_1_1, /* please use HTTP 1.1 in the request */ + CURL_HTTP_VERSION_2_0, /* please use HTTP 2 in the request */ + CURL_HTTP_VERSION_2TLS, /* use version 2 for HTTPS, version 1.1 for HTTP */ + CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE, /* please use HTTP 2 without HTTP/1.1 + Upgrade */ + CURL_HTTP_VERSION_3 = 30, /* Makes use of explicit HTTP/3 without fallback. + Use CURLOPT_ALTSVC to enable HTTP/3 upgrade */ + CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */ +}; + +/* Convenience definition simple because the name of the version is HTTP/2 and + not 2.0. The 2_0 version of the enum name was set while the version was + still planned to be 2.0 and we stick to it for compatibility. */ +#define CURL_HTTP_VERSION_2 CURL_HTTP_VERSION_2_0 + +/* + * Public API enums for RTSP requests + */ +enum { + CURL_RTSPREQ_NONE, /* first in list */ + CURL_RTSPREQ_OPTIONS, + CURL_RTSPREQ_DESCRIBE, + CURL_RTSPREQ_ANNOUNCE, + CURL_RTSPREQ_SETUP, + CURL_RTSPREQ_PLAY, + CURL_RTSPREQ_PAUSE, + CURL_RTSPREQ_TEARDOWN, + CURL_RTSPREQ_GET_PARAMETER, + CURL_RTSPREQ_SET_PARAMETER, + CURL_RTSPREQ_RECORD, + CURL_RTSPREQ_RECEIVE, + CURL_RTSPREQ_LAST /* last in list */ +}; + + /* These enums are for use with the CURLOPT_NETRC option. */ +enum CURL_NETRC_OPTION { + CURL_NETRC_IGNORED, /* The .netrc will never be read. + * This is the default. */ + CURL_NETRC_OPTIONAL, /* A user:password in the URL will be preferred + * to one in the .netrc. */ + CURL_NETRC_REQUIRED, /* A user:password in the URL will be ignored. + * Unless one is set programmatically, the .netrc + * will be queried. */ + CURL_NETRC_LAST +}; + +enum { + CURL_SSLVERSION_DEFAULT, + CURL_SSLVERSION_TLSv1, /* TLS 1.x */ + CURL_SSLVERSION_SSLv2, + CURL_SSLVERSION_SSLv3, + CURL_SSLVERSION_TLSv1_0, + CURL_SSLVERSION_TLSv1_1, + CURL_SSLVERSION_TLSv1_2, + CURL_SSLVERSION_TLSv1_3, + + CURL_SSLVERSION_LAST /* never use, keep last */ +}; + +enum { + CURL_SSLVERSION_MAX_NONE = 0, + CURL_SSLVERSION_MAX_DEFAULT = (CURL_SSLVERSION_TLSv1 << 16), + CURL_SSLVERSION_MAX_TLSv1_0 = (CURL_SSLVERSION_TLSv1_0 << 16), + CURL_SSLVERSION_MAX_TLSv1_1 = (CURL_SSLVERSION_TLSv1_1 << 16), + CURL_SSLVERSION_MAX_TLSv1_2 = (CURL_SSLVERSION_TLSv1_2 << 16), + CURL_SSLVERSION_MAX_TLSv1_3 = (CURL_SSLVERSION_TLSv1_3 << 16), + + /* never use, keep last */ + CURL_SSLVERSION_MAX_LAST = (CURL_SSLVERSION_LAST << 16) +}; + +enum CURL_TLSAUTH { + CURL_TLSAUTH_NONE, + CURL_TLSAUTH_SRP, + CURL_TLSAUTH_LAST /* never use, keep last */ +}; + +/* symbols to use with CURLOPT_POSTREDIR. + CURL_REDIR_POST_301, CURL_REDIR_POST_302 and CURL_REDIR_POST_303 + can be bitwise ORed so that CURL_REDIR_POST_301 | CURL_REDIR_POST_302 + | CURL_REDIR_POST_303 == CURL_REDIR_POST_ALL */ + +#define CURL_REDIR_GET_ALL 0 +#define CURL_REDIR_POST_301 1 +#define CURL_REDIR_POST_302 2 +#define CURL_REDIR_POST_303 4 +#define CURL_REDIR_POST_ALL \ + (CURL_REDIR_POST_301|CURL_REDIR_POST_302|CURL_REDIR_POST_303) + +typedef enum { + CURL_TIMECOND_NONE, + + CURL_TIMECOND_IFMODSINCE, + CURL_TIMECOND_IFUNMODSINCE, + CURL_TIMECOND_LASTMOD, + + CURL_TIMECOND_LAST +} curl_TimeCond; + +/* Special size_t value signaling a null-terminated string. */ +#define CURL_ZERO_TERMINATED ((size_t) -1) + +/* curl_strequal() and curl_strnequal() are subject for removal in a future + release */ +CURL_EXTERN int curl_strequal(const char *s1, const char *s2); +CURL_EXTERN int curl_strnequal(const char *s1, const char *s2, size_t n); + +/* Mime/form handling support. */ +typedef struct curl_mime curl_mime; /* Mime context. */ +typedef struct curl_mimepart curl_mimepart; /* Mime part context. */ + +/* CURLMIMEOPT_ defines are for the CURLOPT_MIME_OPTIONS option. */ +#define CURLMIMEOPT_FORMESCAPE (1<<0) /* Use backslash-escaping for forms. */ + +/* + * NAME curl_mime_init() + * + * DESCRIPTION + * + * Create a mime context and return its handle. The easy parameter is the + * target handle. + */ +CURL_EXTERN curl_mime *curl_mime_init(CURL *easy); + +/* + * NAME curl_mime_free() + * + * DESCRIPTION + * + * release a mime handle and its substructures. + */ +CURL_EXTERN void curl_mime_free(curl_mime *mime); + +/* + * NAME curl_mime_addpart() + * + * DESCRIPTION + * + * Append a new empty part to the given mime context and return a handle to + * the created part. + */ +CURL_EXTERN curl_mimepart *curl_mime_addpart(curl_mime *mime); + +/* + * NAME curl_mime_name() + * + * DESCRIPTION + * + * Set mime/form part name. + */ +CURL_EXTERN CURLcode curl_mime_name(curl_mimepart *part, const char *name); + +/* + * NAME curl_mime_filename() + * + * DESCRIPTION + * + * Set mime part remote file name. + */ +CURL_EXTERN CURLcode curl_mime_filename(curl_mimepart *part, + const char *filename); + +/* + * NAME curl_mime_type() + * + * DESCRIPTION + * + * Set mime part type. + */ +CURL_EXTERN CURLcode curl_mime_type(curl_mimepart *part, const char *mimetype); + +/* + * NAME curl_mime_encoder() + * + * DESCRIPTION + * + * Set mime data transfer encoder. + */ +CURL_EXTERN CURLcode curl_mime_encoder(curl_mimepart *part, + const char *encoding); + +/* + * NAME curl_mime_data() + * + * DESCRIPTION + * + * Set mime part data source from memory data, + */ +CURL_EXTERN CURLcode curl_mime_data(curl_mimepart *part, + const char *data, size_t datasize); + +/* + * NAME curl_mime_filedata() + * + * DESCRIPTION + * + * Set mime part data source from named file. + */ +CURL_EXTERN CURLcode curl_mime_filedata(curl_mimepart *part, + const char *filename); + +/* + * NAME curl_mime_data_cb() + * + * DESCRIPTION + * + * Set mime part data source from callback function. + */ +CURL_EXTERN CURLcode curl_mime_data_cb(curl_mimepart *part, + curl_off_t datasize, + curl_read_callback readfunc, + curl_seek_callback seekfunc, + curl_free_callback freefunc, + void *arg); + +/* + * NAME curl_mime_subparts() + * + * DESCRIPTION + * + * Set mime part data source from subparts. + */ +CURL_EXTERN CURLcode curl_mime_subparts(curl_mimepart *part, + curl_mime *subparts); +/* + * NAME curl_mime_headers() + * + * DESCRIPTION + * + * Set mime part headers. + */ +CURL_EXTERN CURLcode curl_mime_headers(curl_mimepart *part, + struct curl_slist *headers, + int take_ownership); + +typedef enum { + CURLFORM_NOTHING, /********* the first one is unused ************/ + CURLFORM_COPYNAME, + CURLFORM_PTRNAME, + CURLFORM_NAMELENGTH, + CURLFORM_COPYCONTENTS, + CURLFORM_PTRCONTENTS, + CURLFORM_CONTENTSLENGTH, + CURLFORM_FILECONTENT, + CURLFORM_ARRAY, + CURLFORM_OBSOLETE, + CURLFORM_FILE, + + CURLFORM_BUFFER, + CURLFORM_BUFFERPTR, + CURLFORM_BUFFERLENGTH, + + CURLFORM_CONTENTTYPE, + CURLFORM_CONTENTHEADER, + CURLFORM_FILENAME, + CURLFORM_END, + CURLFORM_OBSOLETE2, + + CURLFORM_STREAM, + CURLFORM_CONTENTLEN, /* added in 7.46.0, provide a curl_off_t length */ + + CURLFORM_LASTENTRY /* the last unused */ +} CURLformoption; + +/* structure to be used as parameter for CURLFORM_ARRAY */ +struct curl_forms { + CURLformoption option; + const char *value; +}; + +/* use this for multipart formpost building */ +/* Returns code for curl_formadd() + * + * Returns: + * CURL_FORMADD_OK on success + * CURL_FORMADD_MEMORY if the FormInfo allocation fails + * CURL_FORMADD_OPTION_TWICE if one option is given twice for one Form + * CURL_FORMADD_NULL if a null pointer was given for a char + * CURL_FORMADD_MEMORY if the allocation of a FormInfo struct failed + * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used + * CURL_FORMADD_INCOMPLETE if the some FormInfo is not complete (or error) + * CURL_FORMADD_MEMORY if a curl_httppost struct cannot be allocated + * CURL_FORMADD_MEMORY if some allocation for string copying failed. + * CURL_FORMADD_ILLEGAL_ARRAY if an illegal option is used in an array + * + ***************************************************************************/ +typedef enum { + CURL_FORMADD_OK, /* first, no error */ + + CURL_FORMADD_MEMORY, + CURL_FORMADD_OPTION_TWICE, + CURL_FORMADD_NULL, + CURL_FORMADD_UNKNOWN_OPTION, + CURL_FORMADD_INCOMPLETE, + CURL_FORMADD_ILLEGAL_ARRAY, + CURL_FORMADD_DISABLED, /* libcurl was built with this disabled */ + + CURL_FORMADD_LAST /* last */ +} CURLFORMcode; + +/* + * NAME curl_formadd() + * + * DESCRIPTION + * + * Pretty advanced function for building multi-part formposts. Each invoke + * adds one part that together construct a full post. Then use + * CURLOPT_HTTPPOST to send it off to libcurl. + */ +CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost, + struct curl_httppost **last_post, + ...); + +/* + * callback function for curl_formget() + * The void *arg pointer will be the one passed as second argument to + * curl_formget(). + * The character buffer passed to it must not be freed. + * Should return the buffer length passed to it as the argument "len" on + * success. + */ +typedef size_t (*curl_formget_callback)(void *arg, const char *buf, + size_t len); + +/* + * NAME curl_formget() + * + * DESCRIPTION + * + * Serialize a curl_httppost struct built with curl_formadd(). + * Accepts a void pointer as second argument which will be passed to + * the curl_formget_callback function. + * Returns 0 on success. + */ +CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg, + curl_formget_callback append); +/* + * NAME curl_formfree() + * + * DESCRIPTION + * + * Free a multipart formpost previously built with curl_formadd(). + */ +CURL_EXTERN void curl_formfree(struct curl_httppost *form); + +/* + * NAME curl_getenv() + * + * DESCRIPTION + * + * Returns a malloc()'ed string that MUST be curl_free()ed after usage is + * complete. DEPRECATED - see lib/README.curlx + */ +CURL_EXTERN char *curl_getenv(const char *variable); + +/* + * NAME curl_version() + * + * DESCRIPTION + * + * Returns a static ascii string of the libcurl version. + */ +CURL_EXTERN char *curl_version(void); + +/* + * NAME curl_easy_escape() + * + * DESCRIPTION + * + * Escapes URL strings (converts all letters consider illegal in URLs to their + * %XX versions). This function returns a new allocated string or NULL if an + * error occurred. + */ +CURL_EXTERN char *curl_easy_escape(CURL *handle, + const char *string, + int length); + +/* the previous version: */ +CURL_EXTERN char *curl_escape(const char *string, + int length); + + +/* + * NAME curl_easy_unescape() + * + * DESCRIPTION + * + * Unescapes URL encoding in strings (converts all %XX codes to their 8bit + * versions). This function returns a new allocated string or NULL if an error + * occurred. + * Conversion Note: On non-ASCII platforms the ASCII %XX codes are + * converted into the host encoding. + */ +CURL_EXTERN char *curl_easy_unescape(CURL *handle, + const char *string, + int length, + int *outlength); + +/* the previous version */ +CURL_EXTERN char *curl_unescape(const char *string, + int length); + +/* + * NAME curl_free() + * + * DESCRIPTION + * + * Provided for de-allocation in the same translation unit that did the + * allocation. Added in libcurl 7.10 + */ +CURL_EXTERN void curl_free(void *p); + +/* + * NAME curl_global_init() + * + * DESCRIPTION + * + * curl_global_init() should be invoked exactly once for each application that + * uses libcurl and before any call of other libcurl functions. + + * This function is thread-safe if CURL_VERSION_THREADSAFE is set in the + * curl_version_info_data.features flag (fetch by curl_version_info()). + + */ +CURL_EXTERN CURLcode curl_global_init(long flags); + +/* + * NAME curl_global_init_mem() + * + * DESCRIPTION + * + * curl_global_init() or curl_global_init_mem() should be invoked exactly once + * for each application that uses libcurl. This function can be used to + * initialize libcurl and set user defined memory management callback + * functions. Users can implement memory management routines to check for + * memory leaks, check for mis-use of the curl library etc. User registered + * callback routines will be invoked by this library instead of the system + * memory management routines like malloc, free etc. + */ +CURL_EXTERN CURLcode curl_global_init_mem(long flags, + curl_malloc_callback m, + curl_free_callback f, + curl_realloc_callback r, + curl_strdup_callback s, + curl_calloc_callback c); + +/* + * NAME curl_global_cleanup() + * + * DESCRIPTION + * + * curl_global_cleanup() should be invoked exactly once for each application + * that uses libcurl + */ +CURL_EXTERN void curl_global_cleanup(void); + +/* linked-list structure for the CURLOPT_QUOTE option (and other) */ +struct curl_slist { + char *data; + struct curl_slist *next; +}; + +/* + * NAME curl_global_sslset() + * + * DESCRIPTION + * + * When built with multiple SSL backends, curl_global_sslset() allows to + * choose one. This function can only be called once, and it must be called + * *before* curl_global_init(). + * + * The backend can be identified by the id (e.g. CURLSSLBACKEND_OPENSSL). The + * backend can also be specified via the name parameter (passing -1 as id). + * If both id and name are specified, the name will be ignored. If neither id + * nor name are specified, the function will fail with + * CURLSSLSET_UNKNOWN_BACKEND and set the "avail" pointer to the + * NULL-terminated list of available backends. + * + * Upon success, the function returns CURLSSLSET_OK. + * + * If the specified SSL backend is not available, the function returns + * CURLSSLSET_UNKNOWN_BACKEND and sets the "avail" pointer to a NULL-terminated + * list of available SSL backends. + * + * The SSL backend can be set only once. If it has already been set, a + * subsequent attempt to change it will result in a CURLSSLSET_TOO_LATE. + */ + +struct curl_ssl_backend { + curl_sslbackend id; + const char *name; +}; +typedef struct curl_ssl_backend curl_ssl_backend; + +typedef enum { + CURLSSLSET_OK = 0, + CURLSSLSET_UNKNOWN_BACKEND, + CURLSSLSET_TOO_LATE, + CURLSSLSET_NO_BACKENDS /* libcurl was built without any SSL support */ +} CURLsslset; + +CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name, + const curl_ssl_backend ***avail); + +/* + * NAME curl_slist_append() + * + * DESCRIPTION + * + * Appends a string to a linked list. If no list exists, it will be created + * first. Returns the new list, after appending. + */ +CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *, + const char *); + +/* + * NAME curl_slist_free_all() + * + * DESCRIPTION + * + * free a previously built curl_slist. + */ +CURL_EXTERN void curl_slist_free_all(struct curl_slist *); + +/* + * NAME curl_getdate() + * + * DESCRIPTION + * + * Returns the time, in seconds since 1 Jan 1970 of the time string given in + * the first argument. The time argument in the second parameter is unused + * and should be set to NULL. + */ +CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused); + +/* info about the certificate chain, only for OpenSSL, GnuTLS, Schannel, NSS + and GSKit builds. Asked for with CURLOPT_CERTINFO / CURLINFO_CERTINFO */ +struct curl_certinfo { + int num_of_certs; /* number of certificates with information */ + struct curl_slist **certinfo; /* for each index in this array, there's a + linked list with textual information in the + format "name: value" */ +}; + +/* Information about the SSL library used and the respective internal SSL + handle, which can be used to obtain further information regarding the + connection. Asked for with CURLINFO_TLS_SSL_PTR or CURLINFO_TLS_SESSION. */ +struct curl_tlssessioninfo { + curl_sslbackend backend; + void *internals; +}; + +#define CURLINFO_STRING 0x100000 +#define CURLINFO_LONG 0x200000 +#define CURLINFO_DOUBLE 0x300000 +#define CURLINFO_SLIST 0x400000 +#define CURLINFO_PTR 0x400000 /* same as SLIST */ +#define CURLINFO_SOCKET 0x500000 +#define CURLINFO_OFF_T 0x600000 +#define CURLINFO_MASK 0x0fffff +#define CURLINFO_TYPEMASK 0xf00000 + +typedef enum { + CURLINFO_NONE, /* first, never use this */ + CURLINFO_EFFECTIVE_URL = CURLINFO_STRING + 1, + CURLINFO_RESPONSE_CODE = CURLINFO_LONG + 2, + CURLINFO_TOTAL_TIME = CURLINFO_DOUBLE + 3, + CURLINFO_NAMELOOKUP_TIME = CURLINFO_DOUBLE + 4, + CURLINFO_CONNECT_TIME = CURLINFO_DOUBLE + 5, + CURLINFO_PRETRANSFER_TIME = CURLINFO_DOUBLE + 6, + CURLINFO_SIZE_UPLOAD = CURLINFO_DOUBLE + 7, + CURLINFO_SIZE_UPLOAD_T = CURLINFO_OFF_T + 7, + CURLINFO_SIZE_DOWNLOAD = CURLINFO_DOUBLE + 8, + CURLINFO_SIZE_DOWNLOAD_T = CURLINFO_OFF_T + 8, + CURLINFO_SPEED_DOWNLOAD = CURLINFO_DOUBLE + 9, + CURLINFO_SPEED_DOWNLOAD_T = CURLINFO_OFF_T + 9, + CURLINFO_SPEED_UPLOAD = CURLINFO_DOUBLE + 10, + CURLINFO_SPEED_UPLOAD_T = CURLINFO_OFF_T + 10, + CURLINFO_HEADER_SIZE = CURLINFO_LONG + 11, + CURLINFO_REQUEST_SIZE = CURLINFO_LONG + 12, + CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG + 13, + CURLINFO_FILETIME = CURLINFO_LONG + 14, + CURLINFO_FILETIME_T = CURLINFO_OFF_T + 14, + CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15, + CURLINFO_CONTENT_LENGTH_DOWNLOAD_T = CURLINFO_OFF_T + 15, + CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16, + CURLINFO_CONTENT_LENGTH_UPLOAD_T = CURLINFO_OFF_T + 16, + CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17, + CURLINFO_CONTENT_TYPE = CURLINFO_STRING + 18, + CURLINFO_REDIRECT_TIME = CURLINFO_DOUBLE + 19, + CURLINFO_REDIRECT_COUNT = CURLINFO_LONG + 20, + CURLINFO_PRIVATE = CURLINFO_STRING + 21, + CURLINFO_HTTP_CONNECTCODE = CURLINFO_LONG + 22, + CURLINFO_HTTPAUTH_AVAIL = CURLINFO_LONG + 23, + CURLINFO_PROXYAUTH_AVAIL = CURLINFO_LONG + 24, + CURLINFO_OS_ERRNO = CURLINFO_LONG + 25, + CURLINFO_NUM_CONNECTS = CURLINFO_LONG + 26, + CURLINFO_SSL_ENGINES = CURLINFO_SLIST + 27, + CURLINFO_COOKIELIST = CURLINFO_SLIST + 28, + CURLINFO_LASTSOCKET = CURLINFO_LONG + 29, + CURLINFO_FTP_ENTRY_PATH = CURLINFO_STRING + 30, + CURLINFO_REDIRECT_URL = CURLINFO_STRING + 31, + CURLINFO_PRIMARY_IP = CURLINFO_STRING + 32, + CURLINFO_APPCONNECT_TIME = CURLINFO_DOUBLE + 33, + CURLINFO_CERTINFO = CURLINFO_PTR + 34, + CURLINFO_CONDITION_UNMET = CURLINFO_LONG + 35, + CURLINFO_RTSP_SESSION_ID = CURLINFO_STRING + 36, + CURLINFO_RTSP_CLIENT_CSEQ = CURLINFO_LONG + 37, + CURLINFO_RTSP_SERVER_CSEQ = CURLINFO_LONG + 38, + CURLINFO_RTSP_CSEQ_RECV = CURLINFO_LONG + 39, + CURLINFO_PRIMARY_PORT = CURLINFO_LONG + 40, + CURLINFO_LOCAL_IP = CURLINFO_STRING + 41, + CURLINFO_LOCAL_PORT = CURLINFO_LONG + 42, + CURLINFO_TLS_SESSION = CURLINFO_PTR + 43, + CURLINFO_ACTIVESOCKET = CURLINFO_SOCKET + 44, + CURLINFO_TLS_SSL_PTR = CURLINFO_PTR + 45, + CURLINFO_HTTP_VERSION = CURLINFO_LONG + 46, + CURLINFO_PROXY_SSL_VERIFYRESULT = CURLINFO_LONG + 47, + CURLINFO_PROTOCOL = CURLINFO_LONG + 48, + CURLINFO_SCHEME = CURLINFO_STRING + 49, + CURLINFO_TOTAL_TIME_T = CURLINFO_OFF_T + 50, + CURLINFO_NAMELOOKUP_TIME_T = CURLINFO_OFF_T + 51, + CURLINFO_CONNECT_TIME_T = CURLINFO_OFF_T + 52, + CURLINFO_PRETRANSFER_TIME_T = CURLINFO_OFF_T + 53, + CURLINFO_STARTTRANSFER_TIME_T = CURLINFO_OFF_T + 54, + CURLINFO_REDIRECT_TIME_T = CURLINFO_OFF_T + 55, + CURLINFO_APPCONNECT_TIME_T = CURLINFO_OFF_T + 56, + CURLINFO_RETRY_AFTER = CURLINFO_OFF_T + 57, + CURLINFO_EFFECTIVE_METHOD = CURLINFO_STRING + 58, + CURLINFO_PROXY_ERROR = CURLINFO_LONG + 59, + CURLINFO_REFERER = CURLINFO_STRING + 60, + CURLINFO_CAINFO = CURLINFO_STRING + 61, + CURLINFO_CAPATH = CURLINFO_STRING + 62, + CURLINFO_LASTONE = 62 +} CURLINFO; + +/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as + CURLINFO_HTTP_CODE */ +#define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE + +typedef enum { + CURLCLOSEPOLICY_NONE, /* first, never use this */ + + CURLCLOSEPOLICY_OLDEST, + CURLCLOSEPOLICY_LEAST_RECENTLY_USED, + CURLCLOSEPOLICY_LEAST_TRAFFIC, + CURLCLOSEPOLICY_SLOWEST, + CURLCLOSEPOLICY_CALLBACK, + + CURLCLOSEPOLICY_LAST /* last, never use this */ +} curl_closepolicy; + +#define CURL_GLOBAL_SSL (1<<0) /* no purpose since 7.57.0 */ +#define CURL_GLOBAL_WIN32 (1<<1) +#define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32) +#define CURL_GLOBAL_NOTHING 0 +#define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL +#define CURL_GLOBAL_ACK_EINTR (1<<2) + + +/***************************************************************************** + * Setup defines, protos etc for the sharing stuff. + */ + +/* Different data locks for a single share */ +typedef enum { + CURL_LOCK_DATA_NONE = 0, + /* CURL_LOCK_DATA_SHARE is used internally to say that + * the locking is just made to change the internal state of the share + * itself. + */ + CURL_LOCK_DATA_SHARE, + CURL_LOCK_DATA_COOKIE, + CURL_LOCK_DATA_DNS, + CURL_LOCK_DATA_SSL_SESSION, + CURL_LOCK_DATA_CONNECT, + CURL_LOCK_DATA_PSL, + CURL_LOCK_DATA_LAST +} curl_lock_data; + +/* Different lock access types */ +typedef enum { + CURL_LOCK_ACCESS_NONE = 0, /* unspecified action */ + CURL_LOCK_ACCESS_SHARED = 1, /* for read perhaps */ + CURL_LOCK_ACCESS_SINGLE = 2, /* for write perhaps */ + CURL_LOCK_ACCESS_LAST /* never use */ +} curl_lock_access; + +typedef void (*curl_lock_function)(CURL *handle, + curl_lock_data data, + curl_lock_access locktype, + void *userptr); +typedef void (*curl_unlock_function)(CURL *handle, + curl_lock_data data, + void *userptr); + + +typedef enum { + CURLSHE_OK, /* all is fine */ + CURLSHE_BAD_OPTION, /* 1 */ + CURLSHE_IN_USE, /* 2 */ + CURLSHE_INVALID, /* 3 */ + CURLSHE_NOMEM, /* 4 out of memory */ + CURLSHE_NOT_BUILT_IN, /* 5 feature not present in lib */ + CURLSHE_LAST /* never use */ +} CURLSHcode; + +typedef enum { + CURLSHOPT_NONE, /* don't use */ + CURLSHOPT_SHARE, /* specify a data type to share */ + CURLSHOPT_UNSHARE, /* specify which data type to stop sharing */ + CURLSHOPT_LOCKFUNC, /* pass in a 'curl_lock_function' pointer */ + CURLSHOPT_UNLOCKFUNC, /* pass in a 'curl_unlock_function' pointer */ + CURLSHOPT_USERDATA, /* pass in a user data pointer used in the lock/unlock + callback functions */ + CURLSHOPT_LAST /* never use */ +} CURLSHoption; + +CURL_EXTERN CURLSH *curl_share_init(void); +CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...); +CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *); + +/**************************************************************************** + * Structures for querying information about the curl library at runtime. + */ + +typedef enum { + CURLVERSION_FIRST, + CURLVERSION_SECOND, + CURLVERSION_THIRD, + CURLVERSION_FOURTH, + CURLVERSION_FIFTH, + CURLVERSION_SIXTH, + CURLVERSION_SEVENTH, + CURLVERSION_EIGHTH, + CURLVERSION_NINTH, + CURLVERSION_TENTH, + CURLVERSION_LAST /* never actually use this */ +} CURLversion; + +/* The 'CURLVERSION_NOW' is the symbolic name meant to be used by + basically all programs ever that want to get version information. It is + meant to be a built-in version number for what kind of struct the caller + expects. If the struct ever changes, we redefine the NOW to another enum + from above. */ +#define CURLVERSION_NOW CURLVERSION_TENTH + +struct curl_version_info_data { + CURLversion age; /* age of the returned struct */ + const char *version; /* LIBCURL_VERSION */ + unsigned int version_num; /* LIBCURL_VERSION_NUM */ + const char *host; /* OS/host/cpu/machine when configured */ + int features; /* bitmask, see defines below */ + const char *ssl_version; /* human readable string */ + long ssl_version_num; /* not used anymore, always 0 */ + const char *libz_version; /* human readable string */ + /* protocols is terminated by an entry with a NULL protoname */ + const char * const *protocols; + + /* The fields below this were added in CURLVERSION_SECOND */ + const char *ares; + int ares_num; + + /* This field was added in CURLVERSION_THIRD */ + const char *libidn; + + /* These field were added in CURLVERSION_FOURTH */ + + /* Same as '_libiconv_version' if built with HAVE_ICONV */ + int iconv_ver_num; + + const char *libssh_version; /* human readable string */ + + /* These fields were added in CURLVERSION_FIFTH */ + unsigned int brotli_ver_num; /* Numeric Brotli version + (MAJOR << 24) | (MINOR << 12) | PATCH */ + const char *brotli_version; /* human readable string. */ + + /* These fields were added in CURLVERSION_SIXTH */ + unsigned int nghttp2_ver_num; /* Numeric nghttp2 version + (MAJOR << 16) | (MINOR << 8) | PATCH */ + const char *nghttp2_version; /* human readable string. */ + const char *quic_version; /* human readable quic (+ HTTP/3) library + + version or NULL */ + + /* These fields were added in CURLVERSION_SEVENTH */ + const char *cainfo; /* the built-in default CURLOPT_CAINFO, might + be NULL */ + const char *capath; /* the built-in default CURLOPT_CAPATH, might + be NULL */ + + /* These fields were added in CURLVERSION_EIGHTH */ + unsigned int zstd_ver_num; /* Numeric Zstd version + (MAJOR << 24) | (MINOR << 12) | PATCH */ + const char *zstd_version; /* human readable string. */ + + /* These fields were added in CURLVERSION_NINTH */ + const char *hyper_version; /* human readable string. */ + + /* These fields were added in CURLVERSION_TENTH */ + const char *gsasl_version; /* human readable string. */ +}; +typedef struct curl_version_info_data curl_version_info_data; + +#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */ +#define CURL_VERSION_KERBEROS4 (1<<1) /* Kerberos V4 auth is supported + (deprecated) */ +#define CURL_VERSION_SSL (1<<2) /* SSL options are present */ +#define CURL_VERSION_LIBZ (1<<3) /* libz features are present */ +#define CURL_VERSION_NTLM (1<<4) /* NTLM auth is supported */ +#define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth is supported + (deprecated) */ +#define CURL_VERSION_DEBUG (1<<6) /* Built with debug capabilities */ +#define CURL_VERSION_ASYNCHDNS (1<<7) /* Asynchronous DNS resolves */ +#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth is supported */ +#define CURL_VERSION_LARGEFILE (1<<9) /* Supports files larger than 2GB */ +#define CURL_VERSION_IDN (1<<10) /* Internationized Domain Names are + supported */ +#define CURL_VERSION_SSPI (1<<11) /* Built against Windows SSPI */ +#define CURL_VERSION_CONV (1<<12) /* Character conversions supported */ +#define CURL_VERSION_CURLDEBUG (1<<13) /* Debug memory tracking supported */ +#define CURL_VERSION_TLSAUTH_SRP (1<<14) /* TLS-SRP auth is supported */ +#define CURL_VERSION_NTLM_WB (1<<15) /* NTLM delegation to winbind helper + is supported */ +#define CURL_VERSION_HTTP2 (1<<16) /* HTTP2 support built-in */ +#define CURL_VERSION_GSSAPI (1<<17) /* Built against a GSS-API library */ +#define CURL_VERSION_KERBEROS5 (1<<18) /* Kerberos V5 auth is supported */ +#define CURL_VERSION_UNIX_SOCKETS (1<<19) /* Unix domain sockets support */ +#define CURL_VERSION_PSL (1<<20) /* Mozilla's Public Suffix List, used + for cookie domain verification */ +#define CURL_VERSION_HTTPS_PROXY (1<<21) /* HTTPS-proxy support built-in */ +#define CURL_VERSION_MULTI_SSL (1<<22) /* Multiple SSL backends available */ +#define CURL_VERSION_BROTLI (1<<23) /* Brotli features are present. */ +#define CURL_VERSION_ALTSVC (1<<24) /* Alt-Svc handling built-in */ +#define CURL_VERSION_HTTP3 (1<<25) /* HTTP3 support built-in */ +#define CURL_VERSION_ZSTD (1<<26) /* zstd features are present */ +#define CURL_VERSION_UNICODE (1<<27) /* Unicode support on Windows */ +#define CURL_VERSION_HSTS (1<<28) /* HSTS is supported */ +#define CURL_VERSION_GSASL (1<<29) /* libgsasl is supported */ +#define CURL_VERSION_THREADSAFE (1<<30) /* libcurl API is thread-safe */ + + /* + * NAME curl_version_info() + * + * DESCRIPTION + * + * This function returns a pointer to a static copy of the version info + * struct. See above. + */ +CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion); + +/* + * NAME curl_easy_strerror() + * + * DESCRIPTION + * + * The curl_easy_strerror function may be used to turn a CURLcode value + * into the equivalent human readable error string. This is useful + * for printing meaningful error messages. + */ +CURL_EXTERN const char *curl_easy_strerror(CURLcode); + +/* + * NAME curl_share_strerror() + * + * DESCRIPTION + * + * The curl_share_strerror function may be used to turn a CURLSHcode value + * into the equivalent human readable error string. This is useful + * for printing meaningful error messages. + */ +CURL_EXTERN const char *curl_share_strerror(CURLSHcode); + +/* + * NAME curl_easy_pause() + * + * DESCRIPTION + * + * The curl_easy_pause function pauses or unpauses transfers. Select the new + * state by setting the bitmask, use the convenience defines below. + * + */ +CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask); + +#define CURLPAUSE_RECV (1<<0) +#define CURLPAUSE_RECV_CONT (0) + +#define CURLPAUSE_SEND (1<<2) +#define CURLPAUSE_SEND_CONT (0) + +#define CURLPAUSE_ALL (CURLPAUSE_RECV|CURLPAUSE_SEND) +#define CURLPAUSE_CONT (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT) + +#ifdef __cplusplus +} +#endif + +/* unfortunately, the easy.h and multi.h include files need options and info + stuff before they can be included! */ +#include "easy.h" /* nothing in curl is fun without the easy stuff */ +#include "multi.h" +#include "urlapi.h" +#include "options.h" +#include "header.h" + +/* the typechecker doesn't work in C++ (yet) */ +#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \ + ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \ + !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK) +#include "typecheck-gcc.h" +#else +#if defined(__STDC__) && (__STDC__ >= 1) +/* This preprocessor magic that replaces a call with the exact same call is + only done to make sure application authors pass exactly three arguments + to these functions. */ +#define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param) +#define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg) +#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) +#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) +#endif /* __STDC__ >= 1 */ +#endif /* gcc >= 4.3 && !__cplusplus */ + +#endif /* CURLINC_CURL_H */ diff --git a/curl/include/curl/curlver.h b/curl/include/curl/curlver.h new file mode 100644 index 0000000..a21446e --- /dev/null +++ b/curl/include/curl/curlver.h @@ -0,0 +1,79 @@ +#ifndef CURLINC_CURLVER_H +#define CURLINC_CURLVER_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +/* This header file contains nothing but libcurl version info, generated by + a script at release-time. This was made its own header file in 7.11.2 */ + +/* This is the global package copyright */ +#define LIBCURL_COPYRIGHT "1996 - 2022 Daniel Stenberg, ." + +/* This is the version number of the libcurl package from which this header + file origins: */ +#define LIBCURL_VERSION "7.84.0" + +/* The numeric version number is also available "in parts" by using these + defines: */ +#define LIBCURL_VERSION_MAJOR 7 +#define LIBCURL_VERSION_MINOR 84 +#define LIBCURL_VERSION_PATCH 0 + +/* This is the numeric version of the libcurl version number, meant for easier + parsing and comparisons by programs. The LIBCURL_VERSION_NUM define will + always follow this syntax: + + 0xXXYYZZ + + Where XX, YY and ZZ are the main version, release and patch numbers in + hexadecimal (using 8 bits each). All three numbers are always represented + using two digits. 1.2 would appear as "0x010200" while version 9.11.7 + appears as "0x090b07". + + This 6-digit (24 bits) hexadecimal number does not show pre-release number, + and it is always a greater number in a more recent release. It makes + comparisons with greater than and less than work. + + Note: This define is the full hex number and _does not_ use the + CURL_VERSION_BITS() macro since curl's own configure script greps for it + and needs it to contain the full number. +*/ +#define LIBCURL_VERSION_NUM 0x075400 + +/* + * This is the date and time when the full source package was created. The + * timestamp is not stored in git, as the timestamp is properly set in the + * tarballs by the maketgz script. + * + * The format of the date follows this template: + * + * "2007-11-23" + */ +#define LIBCURL_TIMESTAMP "2022-06-27" + +#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z)) +#define CURL_AT_LEAST_VERSION(x,y,z) \ + (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z)) + +#endif /* CURLINC_CURLVER_H */ diff --git a/curl/include/curl/easy.h b/curl/include/curl/easy.h new file mode 100644 index 0000000..9c7e63a --- /dev/null +++ b/curl/include/curl/easy.h @@ -0,0 +1,125 @@ +#ifndef CURLINC_EASY_H +#define CURLINC_EASY_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ +#ifdef __cplusplus +extern "C" { +#endif + +/* Flag bits in the curl_blob struct: */ +#define CURL_BLOB_COPY 1 /* tell libcurl to copy the data */ +#define CURL_BLOB_NOCOPY 0 /* tell libcurl to NOT copy the data */ + +struct curl_blob { + void *data; + size_t len; + unsigned int flags; /* bit 0 is defined, the rest are reserved and should be + left zeroes */ +}; + +CURL_EXTERN CURL *curl_easy_init(void); +CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...); +CURL_EXTERN CURLcode curl_easy_perform(CURL *curl); +CURL_EXTERN void curl_easy_cleanup(CURL *curl); + +/* + * NAME curl_easy_getinfo() + * + * DESCRIPTION + * + * Request internal information from the curl session with this function. The + * third argument MUST be a pointer to a long, a pointer to a char * or a + * pointer to a double (as the documentation describes elsewhere). The data + * pointed to will be filled in accordingly and can be relied upon only if the + * function returns CURLE_OK. This function is intended to get used *AFTER* a + * performed transfer, all results from this function are undefined until the + * transfer is completed. + */ +CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...); + + +/* + * NAME curl_easy_duphandle() + * + * DESCRIPTION + * + * Creates a new curl session handle with the same options set for the handle + * passed in. Duplicating a handle could only be a matter of cloning data and + * options, internal state info and things like persistent connections cannot + * be transferred. It is useful in multithreaded applications when you can run + * curl_easy_duphandle() for each new thread to avoid a series of identical + * curl_easy_setopt() invokes in every thread. + */ +CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl); + +/* + * NAME curl_easy_reset() + * + * DESCRIPTION + * + * Re-initializes a CURL handle to the default values. This puts back the + * handle to the same state as it was in when it was just created. + * + * It does keep: live connections, the Session ID cache, the DNS cache and the + * cookies. + */ +CURL_EXTERN void curl_easy_reset(CURL *curl); + +/* + * NAME curl_easy_recv() + * + * DESCRIPTION + * + * Receives data from the connected socket. Use after successful + * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. + */ +CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen, + size_t *n); + +/* + * NAME curl_easy_send() + * + * DESCRIPTION + * + * Sends data over the connected socket. Use after successful + * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. + */ +CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer, + size_t buflen, size_t *n); + + +/* + * NAME curl_easy_upkeep() + * + * DESCRIPTION + * + * Performs connection upkeep for the given session handle. + */ +CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/curl/include/curl/header.h b/curl/include/curl/header.h new file mode 100644 index 0000000..6af29c0 --- /dev/null +++ b/curl/include/curl/header.h @@ -0,0 +1,66 @@ +#ifndef CURLINC_HEADER_H +#define CURLINC_HEADER_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 2018 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +struct curl_header { + char *name; /* this might not use the same case */ + char *value; + size_t amount; /* number of headers using this name */ + size_t index; /* ... of this instance, 0 or higher */ + unsigned int origin; /* see bits below */ + void *anchor; /* handle privately used by libcurl */ +}; + +/* 'origin' bits */ +#define CURLH_HEADER (1<<0) /* plain server header */ +#define CURLH_TRAILER (1<<1) /* trailers */ +#define CURLH_CONNECT (1<<2) /* CONNECT headers */ +#define CURLH_1XX (1<<3) /* 1xx headers */ +#define CURLH_PSEUDO (1<<4) /* pseudo headers */ + +typedef enum { + CURLHE_OK, + CURLHE_BADINDEX, /* header exists but not with this index */ + CURLHE_MISSING, /* no such header exists */ + CURLHE_NOHEADERS, /* no headers at all exist (yet) */ + CURLHE_NOREQUEST, /* no request with this number was used */ + CURLHE_OUT_OF_MEMORY, /* out of memory while processing */ + CURLHE_BAD_ARGUMENT, /* a function argument was not okay */ + CURLHE_NOT_BUILT_IN /* if API was disabled in the build */ +} CURLHcode; + +CURL_EXTERN CURLHcode curl_easy_header(CURL *easy, + const char *name, + size_t index, + unsigned int origin, + int request, + struct curl_header **hout); + +CURL_EXTERN struct curl_header *curl_easy_nextheader(CURL *easy, + unsigned int origin, + int request, + struct curl_header *prev); + +#endif /* CURLINC_HEADER_H */ diff --git a/curl/include/curl/mprintf.h b/curl/include/curl/mprintf.h new file mode 100644 index 0000000..cb948dc --- /dev/null +++ b/curl/include/curl/mprintf.h @@ -0,0 +1,52 @@ +#ifndef CURLINC_MPRINTF_H +#define CURLINC_MPRINTF_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +#include +#include /* needed for FILE */ +#include "curl.h" /* for CURL_EXTERN */ + +#ifdef __cplusplus +extern "C" { +#endif + +CURL_EXTERN int curl_mprintf(const char *format, ...); +CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...); +CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...); +CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength, + const char *format, ...); +CURL_EXTERN int curl_mvprintf(const char *format, va_list args); +CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args); +CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args); +CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength, + const char *format, va_list args); +CURL_EXTERN char *curl_maprintf(const char *format, ...); +CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args); + +#ifdef __cplusplus +} +#endif + +#endif /* CURLINC_MPRINTF_H */ diff --git a/curl/include/curl/multi.h b/curl/include/curl/multi.h new file mode 100644 index 0000000..3010492 --- /dev/null +++ b/curl/include/curl/multi.h @@ -0,0 +1,460 @@ +#ifndef CURLINC_MULTI_H +#define CURLINC_MULTI_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ +/* + This is an "external" header file. Don't give away any internals here! + + GOALS + + o Enable a "pull" interface. The application that uses libcurl decides where + and when to ask libcurl to get/send data. + + o Enable multiple simultaneous transfers in the same thread without making it + complicated for the application. + + o Enable the application to select() on its own file descriptors and curl's + file descriptors simultaneous easily. + +*/ + +/* + * This header file should not really need to include "curl.h" since curl.h + * itself includes this file and we expect user applications to do #include + * without the need for especially including multi.h. + * + * For some reason we added this include here at one point, and rather than to + * break existing (wrongly written) libcurl applications, we leave it as-is + * but with this warning attached. + */ +#include "curl.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER) +typedef struct Curl_multi CURLM; +#else +typedef void CURLM; +#endif + +typedef enum { + CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() or + curl_multi_socket*() soon */ + CURLM_OK, + CURLM_BAD_HANDLE, /* the passed-in handle is not a valid CURLM handle */ + CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */ + CURLM_OUT_OF_MEMORY, /* if you ever get this, you're in deep sh*t */ + CURLM_INTERNAL_ERROR, /* this is a libcurl bug */ + CURLM_BAD_SOCKET, /* the passed in socket argument did not match */ + CURLM_UNKNOWN_OPTION, /* curl_multi_setopt() with unsupported option */ + CURLM_ADDED_ALREADY, /* an easy handle already added to a multi handle was + attempted to get added - again */ + CURLM_RECURSIVE_API_CALL, /* an api function was called from inside a + callback */ + CURLM_WAKEUP_FAILURE, /* wakeup is unavailable or failed */ + CURLM_BAD_FUNCTION_ARGUMENT, /* function called with a bad parameter */ + CURLM_ABORTED_BY_CALLBACK, + CURLM_UNRECOVERABLE_POLL, + CURLM_LAST +} CURLMcode; + +/* just to make code nicer when using curl_multi_socket() you can now check + for CURLM_CALL_MULTI_SOCKET too in the same style it works for + curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */ +#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM + +/* bitmask bits for CURLMOPT_PIPELINING */ +#define CURLPIPE_NOTHING 0L +#define CURLPIPE_HTTP1 1L +#define CURLPIPE_MULTIPLEX 2L + +typedef enum { + CURLMSG_NONE, /* first, not used */ + CURLMSG_DONE, /* This easy handle has completed. 'result' contains + the CURLcode of the transfer */ + CURLMSG_LAST /* last, not used */ +} CURLMSG; + +struct CURLMsg { + CURLMSG msg; /* what this message means */ + CURL *easy_handle; /* the handle it concerns */ + union { + void *whatever; /* message-specific data */ + CURLcode result; /* return code for transfer */ + } data; +}; +typedef struct CURLMsg CURLMsg; + +/* Based on poll(2) structure and values. + * We don't use pollfd and POLL* constants explicitly + * to cover platforms without poll(). */ +#define CURL_WAIT_POLLIN 0x0001 +#define CURL_WAIT_POLLPRI 0x0002 +#define CURL_WAIT_POLLOUT 0x0004 + +struct curl_waitfd { + curl_socket_t fd; + short events; + short revents; /* not supported yet */ +}; + +/* + * Name: curl_multi_init() + * + * Desc: inititalize multi-style curl usage + * + * Returns: a new CURLM handle to use in all 'curl_multi' functions. + */ +CURL_EXTERN CURLM *curl_multi_init(void); + +/* + * Name: curl_multi_add_handle() + * + * Desc: add a standard curl handle to the multi stack + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle, + CURL *curl_handle); + + /* + * Name: curl_multi_remove_handle() + * + * Desc: removes a curl handle from the multi stack again + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle, + CURL *curl_handle); + + /* + * Name: curl_multi_fdset() + * + * Desc: Ask curl for its fd_set sets. The app can use these to select() or + * poll() on. We want curl_multi_perform() called as soon as one of + * them are ready. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle, + fd_set *read_fd_set, + fd_set *write_fd_set, + fd_set *exc_fd_set, + int *max_fd); + +/* + * Name: curl_multi_wait() + * + * Desc: Poll on all fds within a CURLM set as well as any + * additional fds passed to the function. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle, + struct curl_waitfd extra_fds[], + unsigned int extra_nfds, + int timeout_ms, + int *ret); + +/* + * Name: curl_multi_poll() + * + * Desc: Poll on all fds within a CURLM set as well as any + * additional fds passed to the function. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_poll(CURLM *multi_handle, + struct curl_waitfd extra_fds[], + unsigned int extra_nfds, + int timeout_ms, + int *ret); + +/* + * Name: curl_multi_wakeup() + * + * Desc: wakes up a sleeping curl_multi_poll call. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_wakeup(CURLM *multi_handle); + + /* + * Name: curl_multi_perform() + * + * Desc: When the app thinks there's data available for curl it calls this + * function to read/write whatever there is right now. This returns + * as soon as the reads and writes are done. This function does not + * require that there actually is data available for reading or that + * data can be written, it can be called just in case. It returns + * the number of handles that still transfer data in the second + * argument's integer-pointer. + * + * Returns: CURLMcode type, general multi error code. *NOTE* that this only + * returns errors etc regarding the whole multi stack. There might + * still have occurred problems on individual transfers even when + * this returns OK. + */ +CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle, + int *running_handles); + + /* + * Name: curl_multi_cleanup() + * + * Desc: Cleans up and removes a whole multi stack. It does not free or + * touch any individual easy handles in any way. We need to define + * in what state those handles will be if this function is called + * in the middle of a transfer. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle); + +/* + * Name: curl_multi_info_read() + * + * Desc: Ask the multi handle if there's any messages/informationals from + * the individual transfers. Messages include informationals such as + * error code from the transfer or just the fact that a transfer is + * completed. More details on these should be written down as well. + * + * Repeated calls to this function will return a new struct each + * time, until a special "end of msgs" struct is returned as a signal + * that there is no more to get at this point. + * + * The data the returned pointer points to will not survive calling + * curl_multi_cleanup(). + * + * The 'CURLMsg' struct is meant to be very simple and only contain + * very basic information. If more involved information is wanted, + * we will provide the particular "transfer handle" in that struct + * and that should/could/would be used in subsequent + * curl_easy_getinfo() calls (or similar). The point being that we + * must never expose complex structs to applications, as then we'll + * undoubtably get backwards compatibility problems in the future. + * + * Returns: A pointer to a filled-in struct, or NULL if it failed or ran out + * of structs. It also writes the number of messages left in the + * queue (after this read) in the integer the second argument points + * to. + */ +CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle, + int *msgs_in_queue); + +/* + * Name: curl_multi_strerror() + * + * Desc: The curl_multi_strerror function may be used to turn a CURLMcode + * value into the equivalent human readable error string. This is + * useful for printing meaningful error messages. + * + * Returns: A pointer to a null-terminated error message. + */ +CURL_EXTERN const char *curl_multi_strerror(CURLMcode); + +/* + * Name: curl_multi_socket() and + * curl_multi_socket_all() + * + * Desc: An alternative version of curl_multi_perform() that allows the + * application to pass in one of the file descriptors that have been + * detected to have "action" on them and let libcurl perform. + * See man page for details. + */ +#define CURL_POLL_NONE 0 +#define CURL_POLL_IN 1 +#define CURL_POLL_OUT 2 +#define CURL_POLL_INOUT 3 +#define CURL_POLL_REMOVE 4 + +#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD + +#define CURL_CSELECT_IN 0x01 +#define CURL_CSELECT_OUT 0x02 +#define CURL_CSELECT_ERR 0x04 + +typedef int (*curl_socket_callback)(CURL *easy, /* easy handle */ + curl_socket_t s, /* socket */ + int what, /* see above */ + void *userp, /* private callback + pointer */ + void *socketp); /* private socket + pointer */ +/* + * Name: curl_multi_timer_callback + * + * Desc: Called by libcurl whenever the library detects a change in the + * maximum number of milliseconds the app is allowed to wait before + * curl_multi_socket() or curl_multi_perform() must be called + * (to allow libcurl's timed events to take place). + * + * Returns: The callback should return zero. + */ +typedef int (*curl_multi_timer_callback)(CURLM *multi, /* multi handle */ + long timeout_ms, /* see above */ + void *userp); /* private callback + pointer */ + +CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s, + int *running_handles); + +CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle, + curl_socket_t s, + int ev_bitmask, + int *running_handles); + +CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle, + int *running_handles); + +#ifndef CURL_ALLOW_OLD_MULTI_SOCKET +/* This macro below was added in 7.16.3 to push users who recompile to use + the new curl_multi_socket_action() instead of the old curl_multi_socket() +*/ +#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z) +#endif + +/* + * Name: curl_multi_timeout() + * + * Desc: Returns the maximum number of milliseconds the app is allowed to + * wait before curl_multi_socket() or curl_multi_perform() must be + * called (to allow libcurl's timed events to take place). + * + * Returns: CURLM error code. + */ +CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle, + long *milliseconds); + +typedef enum { + /* This is the socket callback function pointer */ + CURLOPT(CURLMOPT_SOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 1), + + /* This is the argument passed to the socket callback */ + CURLOPT(CURLMOPT_SOCKETDATA, CURLOPTTYPE_OBJECTPOINT, 2), + + /* set to 1 to enable pipelining for this multi handle */ + CURLOPT(CURLMOPT_PIPELINING, CURLOPTTYPE_LONG, 3), + + /* This is the timer callback function pointer */ + CURLOPT(CURLMOPT_TIMERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 4), + + /* This is the argument passed to the timer callback */ + CURLOPT(CURLMOPT_TIMERDATA, CURLOPTTYPE_OBJECTPOINT, 5), + + /* maximum number of entries in the connection cache */ + CURLOPT(CURLMOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 6), + + /* maximum number of (pipelining) connections to one host */ + CURLOPT(CURLMOPT_MAX_HOST_CONNECTIONS, CURLOPTTYPE_LONG, 7), + + /* maximum number of requests in a pipeline */ + CURLOPT(CURLMOPT_MAX_PIPELINE_LENGTH, CURLOPTTYPE_LONG, 8), + + /* a connection with a content-length longer than this + will not be considered for pipelining */ + CURLOPT(CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 9), + + /* a connection with a chunk length longer than this + will not be considered for pipelining */ + CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10), + + /* a list of site names(+port) that are blocked from pipelining */ + CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11), + + /* a list of server types that are blocked from pipelining */ + CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12), + + /* maximum number of open connections in total */ + CURLOPT(CURLMOPT_MAX_TOTAL_CONNECTIONS, CURLOPTTYPE_LONG, 13), + + /* This is the server push callback function pointer */ + CURLOPT(CURLMOPT_PUSHFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 14), + + /* This is the argument passed to the server push callback */ + CURLOPT(CURLMOPT_PUSHDATA, CURLOPTTYPE_OBJECTPOINT, 15), + + /* maximum number of concurrent streams to support on a connection */ + CURLOPT(CURLMOPT_MAX_CONCURRENT_STREAMS, CURLOPTTYPE_LONG, 16), + + CURLMOPT_LASTENTRY /* the last unused */ +} CURLMoption; + + +/* + * Name: curl_multi_setopt() + * + * Desc: Sets options for the multi handle. + * + * Returns: CURLM error code. + */ +CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle, + CURLMoption option, ...); + + +/* + * Name: curl_multi_assign() + * + * Desc: This function sets an association in the multi handle between the + * given socket and a private pointer of the application. This is + * (only) useful for curl_multi_socket uses. + * + * Returns: CURLM error code. + */ +CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle, + curl_socket_t sockfd, void *sockp); + + +/* + * Name: curl_push_callback + * + * Desc: This callback gets called when a new stream is being pushed by the + * server. It approves or denies the new stream. It can also decide + * to completely fail the connection. + * + * Returns: CURL_PUSH_OK, CURL_PUSH_DENY or CURL_PUSH_ERROROUT + */ +#define CURL_PUSH_OK 0 +#define CURL_PUSH_DENY 1 +#define CURL_PUSH_ERROROUT 2 /* added in 7.72.0 */ + +struct curl_pushheaders; /* forward declaration only */ + +CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h, + size_t num); +CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h, + const char *name); + +typedef int (*curl_push_callback)(CURL *parent, + CURL *easy, + size_t num_headers, + struct curl_pushheaders *headers, + void *userp); + +#ifdef __cplusplus +} /* end of extern "C" */ +#endif + +#endif diff --git a/curl/include/curl/options.h b/curl/include/curl/options.h new file mode 100644 index 0000000..c8ac827 --- /dev/null +++ b/curl/include/curl/options.h @@ -0,0 +1,70 @@ +#ifndef CURLINC_OPTIONS_H +#define CURLINC_OPTIONS_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 2018 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + CURLOT_LONG, /* long (a range of values) */ + CURLOT_VALUES, /* (a defined set or bitmask) */ + CURLOT_OFF_T, /* curl_off_t (a range of values) */ + CURLOT_OBJECT, /* pointer (void *) */ + CURLOT_STRING, /* (char * to zero terminated buffer) */ + CURLOT_SLIST, /* (struct curl_slist *) */ + CURLOT_CBPTR, /* (void * passed as-is to a callback) */ + CURLOT_BLOB, /* blob (struct curl_blob *) */ + CURLOT_FUNCTION /* function pointer */ +} curl_easytype; + +/* Flag bits */ + +/* "alias" means it is provided for old programs to remain functional, + we prefer another name */ +#define CURLOT_FLAG_ALIAS (1<<0) + +/* The CURLOPTTYPE_* id ranges can still be used to figure out what type/size + to use for curl_easy_setopt() for the given id */ +struct curl_easyoption { + const char *name; + CURLoption id; + curl_easytype type; + unsigned int flags; +}; + +CURL_EXTERN const struct curl_easyoption * +curl_easy_option_by_name(const char *name); + +CURL_EXTERN const struct curl_easyoption * +curl_easy_option_by_id(CURLoption id); + +CURL_EXTERN const struct curl_easyoption * +curl_easy_option_next(const struct curl_easyoption *prev); + +#ifdef __cplusplus +} /* end of extern "C" */ +#endif +#endif /* CURLINC_OPTIONS_H */ diff --git a/curl/include/curl/stdcheaders.h b/curl/include/curl/stdcheaders.h new file mode 100644 index 0000000..82e1b5f --- /dev/null +++ b/curl/include/curl/stdcheaders.h @@ -0,0 +1,35 @@ +#ifndef CURLINC_STDCHEADERS_H +#define CURLINC_STDCHEADERS_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +#include + +size_t fread(void *, size_t, size_t, FILE *); +size_t fwrite(const void *, size_t, size_t, FILE *); + +int strcasecmp(const char *, const char *); +int strncasecmp(const char *, const char *, size_t); + +#endif /* CURLINC_STDCHEADERS_H */ diff --git a/curl/include/curl/system.h b/curl/include/curl/system.h new file mode 100644 index 0000000..8d56b8a --- /dev/null +++ b/curl/include/curl/system.h @@ -0,0 +1,490 @@ +#ifndef CURLINC_SYSTEM_H +#define CURLINC_SYSTEM_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +/* + * Try to keep one section per platform, compiler and architecture, otherwise, + * if an existing section is reused for a different one and later on the + * original is adjusted, probably the piggybacking one can be adversely + * changed. + * + * In order to differentiate between platforms/compilers/architectures use + * only compiler built in predefined preprocessor symbols. + * + * curl_off_t + * ---------- + * + * For any given platform/compiler curl_off_t must be typedef'ed to a 64-bit + * wide signed integral data type. The width of this data type must remain + * constant and independent of any possible large file support settings. + * + * As an exception to the above, curl_off_t shall be typedef'ed to a 32-bit + * wide signed integral data type if there is no 64-bit type. + * + * As a general rule, curl_off_t shall not be mapped to off_t. This rule shall + * only be violated if off_t is the only 64-bit data type available and the + * size of off_t is independent of large file support settings. Keep your + * build on the safe side avoiding an off_t gating. If you have a 64-bit + * off_t then take for sure that another 64-bit data type exists, dig deeper + * and you will find it. + * + */ + +#if defined(__DJGPP__) || defined(__GO32__) +# if defined(__DJGPP__) && (__DJGPP__ > 1) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__SALFORDC__) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__BORLANDC__) +# if (__BORLANDC__ < 0x520) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__TURBOC__) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__POCC__) +# if (__POCC__ < 280) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# elif defined(_MSC_VER) +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# else +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__LCC__) +# if defined(__MCST__) /* MCST eLbrus Compiler Collection */ +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# else /* Local (or Little) C Compiler */ +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# endif + +#elif defined(__SYMBIAN32__) +# if defined(__EABI__) /* Treat all ARM compilers equally */ +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__CW32__) +# pragma longlong on +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__VC32__) +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int + +#elif defined(__MWERKS__) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(_WIN32_WCE) +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__MINGW32__) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_WS2TCPIP_H 1 + +#elif defined(__VMS) +# if defined(__VAX) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int + +#elif defined(__OS400__) +# if defined(__ILEC400__) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(__MVS__) +# if defined(__IBMC__) || defined(__IBMCPP__) +# if defined(_ILP32) +# elif defined(_LP64) +# endif +# if defined(_LONG_LONG) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(_LP64) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(__370__) +# if defined(__IBMC__) || defined(__IBMCPP__) +# if defined(_ILP32) +# elif defined(_LP64) +# endif +# if defined(_LONG_LONG) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(_LP64) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(TPF) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +#elif defined(__TINYC__) /* also known as tcc */ +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 + +#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* Oracle Solaris Studio */ +# if !defined(__LP64) && (defined(__ILP32) || \ + defined(__i386) || \ + defined(__sparcv8) || \ + defined(__sparcv8plus)) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__LP64) || \ + defined(__amd64) || defined(__sparcv9) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 + +#elif defined(__xlc__) /* IBM xlc compiler */ +# if !defined(_LP64) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 + +/* ===================================== */ +/* KEEP MSVC THE PENULTIMATE ENTRY */ +/* ===================================== */ + +#elif defined(_MSC_VER) +# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64) +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int + +/* ===================================== */ +/* KEEP GENERIC GCC THE LAST ENTRY */ +/* ===================================== */ + +#elif defined(__GNUC__) && !defined(_SCO_DS) +# if !defined(__LP64__) && \ + (defined(__ILP32__) || defined(__i386__) || defined(__hppa__) || \ + defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || \ + defined(__sparc__) || defined(__mips__) || defined(__sh__) || \ + defined(__XTENSA__) || \ + (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4) || \ + (defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L)) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__LP64__) || \ + defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \ + defined(__e2k__) || \ + (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \ + (defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 + +#else +/* generic "safe guess" on old 32 bit style */ +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +#endif + +#ifdef _AIX +/* AIX needs */ +#define CURL_PULL_SYS_POLL_H +#endif + + +/* CURL_PULL_WS2TCPIP_H is defined above when inclusion of header file */ +/* ws2tcpip.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_WS2TCPIP_H +# include +# include +# include +#endif + +/* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file */ +/* sys/types.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_SYS_TYPES_H +# include +#endif + +/* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file */ +/* sys/socket.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_SYS_SOCKET_H +# include +#endif + +/* CURL_PULL_SYS_POLL_H is defined above when inclusion of header file */ +/* sys/poll.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_SYS_POLL_H +# include +#endif + +/* Data type definition of curl_socklen_t. */ +#ifdef CURL_TYPEOF_CURL_SOCKLEN_T + typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; +#endif + +/* Data type definition of curl_off_t. */ + +#ifdef CURL_TYPEOF_CURL_OFF_T + typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; +#endif + +/* + * CURL_ISOCPP and CURL_OFF_T_C definitions are done here in order to allow + * these to be visible and exported by the external libcurl interface API, + * while also making them visible to the library internals, simply including + * curl_setup.h, without actually needing to include curl.h internally. + * If some day this section would grow big enough, all this should be moved + * to its own header file. + */ + +/* + * Figure out if we can use the ## preprocessor operator, which is supported + * by ISO/ANSI C and C++. Some compilers support it without setting __STDC__ + * or __cplusplus so we need to carefully check for them too. + */ + +#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \ + defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \ + defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \ + defined(__ILEC400__) + /* This compiler is believed to have an ISO compatible preprocessor */ +#define CURL_ISOCPP +#else + /* This compiler is believed NOT to have an ISO compatible preprocessor */ +#undef CURL_ISOCPP +#endif + +/* + * Macros for minimum-width signed and unsigned curl_off_t integer constants. + */ + +#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551) +# define CURLINC_OFF_T_C_HLPR2(x) x +# define CURLINC_OFF_T_C_HLPR1(x) CURLINC_OFF_T_C_HLPR2(x) +# define CURL_OFF_T_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \ + CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T) +# define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \ + CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU) +#else +# ifdef CURL_ISOCPP +# define CURLINC_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix +# else +# define CURLINC_OFF_T_C_HLPR2(Val,Suffix) Val/**/Suffix +# endif +# define CURLINC_OFF_T_C_HLPR1(Val,Suffix) CURLINC_OFF_T_C_HLPR2(Val,Suffix) +# define CURL_OFF_T_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T) +# define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU) +#endif + +#endif /* CURLINC_SYSTEM_H */ diff --git a/curl/include/curl/typecheck-gcc.h b/curl/include/curl/typecheck-gcc.h new file mode 100644 index 0000000..d7c7a9a --- /dev/null +++ b/curl/include/curl/typecheck-gcc.h @@ -0,0 +1,710 @@ +#ifndef CURLINC_TYPECHECK_GCC_H +#define CURLINC_TYPECHECK_GCC_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +/* wraps curl_easy_setopt() with typechecking */ + +/* To add a new kind of warning, add an + * if(curlcheck_sometype_option(_curl_opt)) + * if(!curlcheck_sometype(value)) + * _curl_easy_setopt_err_sometype(); + * block and define curlcheck_sometype_option, curlcheck_sometype and + * _curl_easy_setopt_err_sometype below + * + * NOTE: We use two nested 'if' statements here instead of the && operator, in + * order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x + * when compiling with -Wlogical-op. + * + * To add an option that uses the same type as an existing option, you'll just + * need to extend the appropriate _curl_*_option macro + */ +#define curl_easy_setopt(handle, option, value) \ + __extension__({ \ + __typeof__(option) _curl_opt = option; \ + if(__builtin_constant_p(_curl_opt)) { \ + if(curlcheck_long_option(_curl_opt)) \ + if(!curlcheck_long(value)) \ + _curl_easy_setopt_err_long(); \ + if(curlcheck_off_t_option(_curl_opt)) \ + if(!curlcheck_off_t(value)) \ + _curl_easy_setopt_err_curl_off_t(); \ + if(curlcheck_string_option(_curl_opt)) \ + if(!curlcheck_string(value)) \ + _curl_easy_setopt_err_string(); \ + if(curlcheck_write_cb_option(_curl_opt)) \ + if(!curlcheck_write_cb(value)) \ + _curl_easy_setopt_err_write_callback(); \ + if((_curl_opt) == CURLOPT_RESOLVER_START_FUNCTION) \ + if(!curlcheck_resolver_start_callback(value)) \ + _curl_easy_setopt_err_resolver_start_callback(); \ + if((_curl_opt) == CURLOPT_READFUNCTION) \ + if(!curlcheck_read_cb(value)) \ + _curl_easy_setopt_err_read_cb(); \ + if((_curl_opt) == CURLOPT_IOCTLFUNCTION) \ + if(!curlcheck_ioctl_cb(value)) \ + _curl_easy_setopt_err_ioctl_cb(); \ + if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION) \ + if(!curlcheck_sockopt_cb(value)) \ + _curl_easy_setopt_err_sockopt_cb(); \ + if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION) \ + if(!curlcheck_opensocket_cb(value)) \ + _curl_easy_setopt_err_opensocket_cb(); \ + if((_curl_opt) == CURLOPT_PROGRESSFUNCTION) \ + if(!curlcheck_progress_cb(value)) \ + _curl_easy_setopt_err_progress_cb(); \ + if((_curl_opt) == CURLOPT_DEBUGFUNCTION) \ + if(!curlcheck_debug_cb(value)) \ + _curl_easy_setopt_err_debug_cb(); \ + if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION) \ + if(!curlcheck_ssl_ctx_cb(value)) \ + _curl_easy_setopt_err_ssl_ctx_cb(); \ + if(curlcheck_conv_cb_option(_curl_opt)) \ + if(!curlcheck_conv_cb(value)) \ + _curl_easy_setopt_err_conv_cb(); \ + if((_curl_opt) == CURLOPT_SEEKFUNCTION) \ + if(!curlcheck_seek_cb(value)) \ + _curl_easy_setopt_err_seek_cb(); \ + if(curlcheck_cb_data_option(_curl_opt)) \ + if(!curlcheck_cb_data(value)) \ + _curl_easy_setopt_err_cb_data(); \ + if((_curl_opt) == CURLOPT_ERRORBUFFER) \ + if(!curlcheck_error_buffer(value)) \ + _curl_easy_setopt_err_error_buffer(); \ + if((_curl_opt) == CURLOPT_STDERR) \ + if(!curlcheck_FILE(value)) \ + _curl_easy_setopt_err_FILE(); \ + if(curlcheck_postfields_option(_curl_opt)) \ + if(!curlcheck_postfields(value)) \ + _curl_easy_setopt_err_postfields(); \ + if((_curl_opt) == CURLOPT_HTTPPOST) \ + if(!curlcheck_arr((value), struct curl_httppost)) \ + _curl_easy_setopt_err_curl_httpost(); \ + if((_curl_opt) == CURLOPT_MIMEPOST) \ + if(!curlcheck_ptr((value), curl_mime)) \ + _curl_easy_setopt_err_curl_mimepost(); \ + if(curlcheck_slist_option(_curl_opt)) \ + if(!curlcheck_arr((value), struct curl_slist)) \ + _curl_easy_setopt_err_curl_slist(); \ + if((_curl_opt) == CURLOPT_SHARE) \ + if(!curlcheck_ptr((value), CURLSH)) \ + _curl_easy_setopt_err_CURLSH(); \ + } \ + curl_easy_setopt(handle, _curl_opt, value); \ + }) + +/* wraps curl_easy_getinfo() with typechecking */ +#define curl_easy_getinfo(handle, info, arg) \ + __extension__({ \ + __typeof__(info) _curl_info = info; \ + if(__builtin_constant_p(_curl_info)) { \ + if(curlcheck_string_info(_curl_info)) \ + if(!curlcheck_arr((arg), char *)) \ + _curl_easy_getinfo_err_string(); \ + if(curlcheck_long_info(_curl_info)) \ + if(!curlcheck_arr((arg), long)) \ + _curl_easy_getinfo_err_long(); \ + if(curlcheck_double_info(_curl_info)) \ + if(!curlcheck_arr((arg), double)) \ + _curl_easy_getinfo_err_double(); \ + if(curlcheck_slist_info(_curl_info)) \ + if(!curlcheck_arr((arg), struct curl_slist *)) \ + _curl_easy_getinfo_err_curl_slist(); \ + if(curlcheck_tlssessioninfo_info(_curl_info)) \ + if(!curlcheck_arr((arg), struct curl_tlssessioninfo *)) \ + _curl_easy_getinfo_err_curl_tlssesssioninfo(); \ + if(curlcheck_certinfo_info(_curl_info)) \ + if(!curlcheck_arr((arg), struct curl_certinfo *)) \ + _curl_easy_getinfo_err_curl_certinfo(); \ + if(curlcheck_socket_info(_curl_info)) \ + if(!curlcheck_arr((arg), curl_socket_t)) \ + _curl_easy_getinfo_err_curl_socket(); \ + if(curlcheck_off_t_info(_curl_info)) \ + if(!curlcheck_arr((arg), curl_off_t)) \ + _curl_easy_getinfo_err_curl_off_t(); \ + } \ + curl_easy_getinfo(handle, _curl_info, arg); \ + }) + +/* + * For now, just make sure that the functions are called with three arguments + */ +#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) +#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) + + +/* the actual warnings, triggered by calling the _curl_easy_setopt_err* + * functions */ + +/* To define a new warning, use _CURL_WARNING(identifier, "message") */ +#define CURLWARNING(id, message) \ + static void __attribute__((__warning__(message))) \ + __attribute__((__unused__)) __attribute__((__noinline__)) \ + id(void) { __asm__(""); } + +CURLWARNING(_curl_easy_setopt_err_long, + "curl_easy_setopt expects a long argument for this option") +CURLWARNING(_curl_easy_setopt_err_curl_off_t, + "curl_easy_setopt expects a curl_off_t argument for this option") +CURLWARNING(_curl_easy_setopt_err_string, + "curl_easy_setopt expects a " + "string ('char *' or char[]) argument for this option" + ) +CURLWARNING(_curl_easy_setopt_err_write_callback, + "curl_easy_setopt expects a curl_write_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_resolver_start_callback, + "curl_easy_setopt expects a " + "curl_resolver_start_callback argument for this option" + ) +CURLWARNING(_curl_easy_setopt_err_read_cb, + "curl_easy_setopt expects a curl_read_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_ioctl_cb, + "curl_easy_setopt expects a curl_ioctl_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_sockopt_cb, + "curl_easy_setopt expects a curl_sockopt_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_opensocket_cb, + "curl_easy_setopt expects a " + "curl_opensocket_callback argument for this option" + ) +CURLWARNING(_curl_easy_setopt_err_progress_cb, + "curl_easy_setopt expects a curl_progress_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_debug_cb, + "curl_easy_setopt expects a curl_debug_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_ssl_ctx_cb, + "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_conv_cb, + "curl_easy_setopt expects a curl_conv_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_seek_cb, + "curl_easy_setopt expects a curl_seek_callback argument for this option") +CURLWARNING(_curl_easy_setopt_err_cb_data, + "curl_easy_setopt expects a " + "private data pointer as argument for this option") +CURLWARNING(_curl_easy_setopt_err_error_buffer, + "curl_easy_setopt expects a " + "char buffer of CURL_ERROR_SIZE as argument for this option") +CURLWARNING(_curl_easy_setopt_err_FILE, + "curl_easy_setopt expects a 'FILE *' argument for this option") +CURLWARNING(_curl_easy_setopt_err_postfields, + "curl_easy_setopt expects a 'void *' or 'char *' argument for this option") +CURLWARNING(_curl_easy_setopt_err_curl_httpost, + "curl_easy_setopt expects a 'struct curl_httppost *' " + "argument for this option") +CURLWARNING(_curl_easy_setopt_err_curl_mimepost, + "curl_easy_setopt expects a 'curl_mime *' " + "argument for this option") +CURLWARNING(_curl_easy_setopt_err_curl_slist, + "curl_easy_setopt expects a 'struct curl_slist *' argument for this option") +CURLWARNING(_curl_easy_setopt_err_CURLSH, + "curl_easy_setopt expects a CURLSH* argument for this option") + +CURLWARNING(_curl_easy_getinfo_err_string, + "curl_easy_getinfo expects a pointer to 'char *' for this info") +CURLWARNING(_curl_easy_getinfo_err_long, + "curl_easy_getinfo expects a pointer to long for this info") +CURLWARNING(_curl_easy_getinfo_err_double, + "curl_easy_getinfo expects a pointer to double for this info") +CURLWARNING(_curl_easy_getinfo_err_curl_slist, + "curl_easy_getinfo expects a pointer to 'struct curl_slist *' for this info") +CURLWARNING(_curl_easy_getinfo_err_curl_tlssesssioninfo, + "curl_easy_getinfo expects a pointer to " + "'struct curl_tlssessioninfo *' for this info") +CURLWARNING(_curl_easy_getinfo_err_curl_certinfo, + "curl_easy_getinfo expects a pointer to " + "'struct curl_certinfo *' for this info") +CURLWARNING(_curl_easy_getinfo_err_curl_socket, + "curl_easy_getinfo expects a pointer to curl_socket_t for this info") +CURLWARNING(_curl_easy_getinfo_err_curl_off_t, + "curl_easy_getinfo expects a pointer to curl_off_t for this info") + +/* groups of curl_easy_setops options that take the same type of argument */ + +/* To add a new option to one of the groups, just add + * (option) == CURLOPT_SOMETHING + * to the or-expression. If the option takes a long or curl_off_t, you don't + * have to do anything + */ + +/* evaluates to true if option takes a long argument */ +#define curlcheck_long_option(option) \ + (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT) + +#define curlcheck_off_t_option(option) \ + (((option) > CURLOPTTYPE_OFF_T) && ((option) < CURLOPTTYPE_BLOB)) + +/* evaluates to true if option takes a char* argument */ +#define curlcheck_string_option(option) \ + ((option) == CURLOPT_ABSTRACT_UNIX_SOCKET || \ + (option) == CURLOPT_ACCEPT_ENCODING || \ + (option) == CURLOPT_ALTSVC || \ + (option) == CURLOPT_CAINFO || \ + (option) == CURLOPT_CAPATH || \ + (option) == CURLOPT_COOKIE || \ + (option) == CURLOPT_COOKIEFILE || \ + (option) == CURLOPT_COOKIEJAR || \ + (option) == CURLOPT_COOKIELIST || \ + (option) == CURLOPT_CRLFILE || \ + (option) == CURLOPT_CUSTOMREQUEST || \ + (option) == CURLOPT_DEFAULT_PROTOCOL || \ + (option) == CURLOPT_DNS_INTERFACE || \ + (option) == CURLOPT_DNS_LOCAL_IP4 || \ + (option) == CURLOPT_DNS_LOCAL_IP6 || \ + (option) == CURLOPT_DNS_SERVERS || \ + (option) == CURLOPT_DOH_URL || \ + (option) == CURLOPT_EGDSOCKET || \ + (option) == CURLOPT_FTPPORT || \ + (option) == CURLOPT_FTP_ACCOUNT || \ + (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \ + (option) == CURLOPT_HSTS || \ + (option) == CURLOPT_INTERFACE || \ + (option) == CURLOPT_ISSUERCERT || \ + (option) == CURLOPT_KEYPASSWD || \ + (option) == CURLOPT_KRBLEVEL || \ + (option) == CURLOPT_LOGIN_OPTIONS || \ + (option) == CURLOPT_MAIL_AUTH || \ + (option) == CURLOPT_MAIL_FROM || \ + (option) == CURLOPT_NETRC_FILE || \ + (option) == CURLOPT_NOPROXY || \ + (option) == CURLOPT_PASSWORD || \ + (option) == CURLOPT_PINNEDPUBLICKEY || \ + (option) == CURLOPT_PRE_PROXY || \ + (option) == CURLOPT_PROXY || \ + (option) == CURLOPT_PROXYPASSWORD || \ + (option) == CURLOPT_PROXYUSERNAME || \ + (option) == CURLOPT_PROXYUSERPWD || \ + (option) == CURLOPT_PROXY_CAINFO || \ + (option) == CURLOPT_PROXY_CAPATH || \ + (option) == CURLOPT_PROXY_CRLFILE || \ + (option) == CURLOPT_PROXY_ISSUERCERT || \ + (option) == CURLOPT_PROXY_KEYPASSWD || \ + (option) == CURLOPT_PROXY_PINNEDPUBLICKEY || \ + (option) == CURLOPT_PROXY_SERVICE_NAME || \ + (option) == CURLOPT_PROXY_SSLCERT || \ + (option) == CURLOPT_PROXY_SSLCERTTYPE || \ + (option) == CURLOPT_PROXY_SSLKEY || \ + (option) == CURLOPT_PROXY_SSLKEYTYPE || \ + (option) == CURLOPT_PROXY_SSL_CIPHER_LIST || \ + (option) == CURLOPT_PROXY_TLS13_CIPHERS || \ + (option) == CURLOPT_PROXY_TLSAUTH_PASSWORD || \ + (option) == CURLOPT_PROXY_TLSAUTH_TYPE || \ + (option) == CURLOPT_PROXY_TLSAUTH_USERNAME || \ + (option) == CURLOPT_RANDOM_FILE || \ + (option) == CURLOPT_RANGE || \ + (option) == CURLOPT_REFERER || \ + (option) == CURLOPT_REQUEST_TARGET || \ + (option) == CURLOPT_RTSP_SESSION_ID || \ + (option) == CURLOPT_RTSP_STREAM_URI || \ + (option) == CURLOPT_RTSP_TRANSPORT || \ + (option) == CURLOPT_SASL_AUTHZID || \ + (option) == CURLOPT_SERVICE_NAME || \ + (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE || \ + (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 || \ + (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 || \ + (option) == CURLOPT_SSH_KNOWNHOSTS || \ + (option) == CURLOPT_SSH_PRIVATE_KEYFILE || \ + (option) == CURLOPT_SSH_PUBLIC_KEYFILE || \ + (option) == CURLOPT_SSLCERT || \ + (option) == CURLOPT_SSLCERTTYPE || \ + (option) == CURLOPT_SSLENGINE || \ + (option) == CURLOPT_SSLKEY || \ + (option) == CURLOPT_SSLKEYTYPE || \ + (option) == CURLOPT_SSL_CIPHER_LIST || \ + (option) == CURLOPT_TLS13_CIPHERS || \ + (option) == CURLOPT_TLSAUTH_PASSWORD || \ + (option) == CURLOPT_TLSAUTH_TYPE || \ + (option) == CURLOPT_TLSAUTH_USERNAME || \ + (option) == CURLOPT_UNIX_SOCKET_PATH || \ + (option) == CURLOPT_URL || \ + (option) == CURLOPT_USERAGENT || \ + (option) == CURLOPT_USERNAME || \ + (option) == CURLOPT_AWS_SIGV4 || \ + (option) == CURLOPT_USERPWD || \ + (option) == CURLOPT_XOAUTH2_BEARER || \ + (option) == CURLOPT_SSL_EC_CURVES || \ + 0) + +/* evaluates to true if option takes a curl_write_callback argument */ +#define curlcheck_write_cb_option(option) \ + ((option) == CURLOPT_HEADERFUNCTION || \ + (option) == CURLOPT_WRITEFUNCTION) + +/* evaluates to true if option takes a curl_conv_callback argument */ +#define curlcheck_conv_cb_option(option) \ + ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION || \ + (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION || \ + (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION) + +/* evaluates to true if option takes a data argument to pass to a callback */ +#define curlcheck_cb_data_option(option) \ + ((option) == CURLOPT_CHUNK_DATA || \ + (option) == CURLOPT_CLOSESOCKETDATA || \ + (option) == CURLOPT_DEBUGDATA || \ + (option) == CURLOPT_FNMATCH_DATA || \ + (option) == CURLOPT_HEADERDATA || \ + (option) == CURLOPT_HSTSREADDATA || \ + (option) == CURLOPT_HSTSWRITEDATA || \ + (option) == CURLOPT_INTERLEAVEDATA || \ + (option) == CURLOPT_IOCTLDATA || \ + (option) == CURLOPT_OPENSOCKETDATA || \ + (option) == CURLOPT_PREREQDATA || \ + (option) == CURLOPT_PROGRESSDATA || \ + (option) == CURLOPT_READDATA || \ + (option) == CURLOPT_SEEKDATA || \ + (option) == CURLOPT_SOCKOPTDATA || \ + (option) == CURLOPT_SSH_KEYDATA || \ + (option) == CURLOPT_SSL_CTX_DATA || \ + (option) == CURLOPT_WRITEDATA || \ + (option) == CURLOPT_RESOLVER_START_DATA || \ + (option) == CURLOPT_TRAILERDATA || \ + (option) == CURLOPT_SSH_HOSTKEYDATA || \ + 0) + +/* evaluates to true if option takes a POST data argument (void* or char*) */ +#define curlcheck_postfields_option(option) \ + ((option) == CURLOPT_POSTFIELDS || \ + (option) == CURLOPT_COPYPOSTFIELDS || \ + 0) + +/* evaluates to true if option takes a struct curl_slist * argument */ +#define curlcheck_slist_option(option) \ + ((option) == CURLOPT_HTTP200ALIASES || \ + (option) == CURLOPT_HTTPHEADER || \ + (option) == CURLOPT_MAIL_RCPT || \ + (option) == CURLOPT_POSTQUOTE || \ + (option) == CURLOPT_PREQUOTE || \ + (option) == CURLOPT_PROXYHEADER || \ + (option) == CURLOPT_QUOTE || \ + (option) == CURLOPT_RESOLVE || \ + (option) == CURLOPT_TELNETOPTIONS || \ + (option) == CURLOPT_CONNECT_TO || \ + 0) + +/* groups of curl_easy_getinfo infos that take the same type of argument */ + +/* evaluates to true if info expects a pointer to char * argument */ +#define curlcheck_string_info(info) \ + (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG && \ + (info) != CURLINFO_PRIVATE) + +/* evaluates to true if info expects a pointer to long argument */ +#define curlcheck_long_info(info) \ + (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE) + +/* evaluates to true if info expects a pointer to double argument */ +#define curlcheck_double_info(info) \ + (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST) + +/* true if info expects a pointer to struct curl_slist * argument */ +#define curlcheck_slist_info(info) \ + (((info) == CURLINFO_SSL_ENGINES) || ((info) == CURLINFO_COOKIELIST)) + +/* true if info expects a pointer to struct curl_tlssessioninfo * argument */ +#define curlcheck_tlssessioninfo_info(info) \ + (((info) == CURLINFO_TLS_SSL_PTR) || ((info) == CURLINFO_TLS_SESSION)) + +/* true if info expects a pointer to struct curl_certinfo * argument */ +#define curlcheck_certinfo_info(info) ((info) == CURLINFO_CERTINFO) + +/* true if info expects a pointer to struct curl_socket_t argument */ +#define curlcheck_socket_info(info) \ + (CURLINFO_SOCKET < (info) && (info) < CURLINFO_OFF_T) + +/* true if info expects a pointer to curl_off_t argument */ +#define curlcheck_off_t_info(info) \ + (CURLINFO_OFF_T < (info)) + + +/* typecheck helpers -- check whether given expression has requested type*/ + +/* For pointers, you can use the curlcheck_ptr/curlcheck_arr macros, + * otherwise define a new macro. Search for __builtin_types_compatible_p + * in the GCC manual. + * NOTE: these macros MUST NOT EVALUATE their arguments! The argument is + * the actual expression passed to the curl_easy_setopt macro. This + * means that you can only apply the sizeof and __typeof__ operators, no + * == or whatsoever. + */ + +/* XXX: should evaluate to true if expr is a pointer */ +#define curlcheck_any_ptr(expr) \ + (sizeof(expr) == sizeof(void *)) + +/* evaluates to true if expr is NULL */ +/* XXX: must not evaluate expr, so this check is not accurate */ +#define curlcheck_NULL(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL))) + +/* evaluates to true if expr is type*, const type* or NULL */ +#define curlcheck_ptr(expr, type) \ + (curlcheck_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), type *) || \ + __builtin_types_compatible_p(__typeof__(expr), const type *)) + +/* evaluates to true if expr is one of type[], type*, NULL or const type* */ +#define curlcheck_arr(expr, type) \ + (curlcheck_ptr((expr), type) || \ + __builtin_types_compatible_p(__typeof__(expr), type [])) + +/* evaluates to true if expr is a string */ +#define curlcheck_string(expr) \ + (curlcheck_arr((expr), char) || \ + curlcheck_arr((expr), signed char) || \ + curlcheck_arr((expr), unsigned char)) + +/* evaluates to true if expr is a long (no matter the signedness) + * XXX: for now, int is also accepted (and therefore short and char, which + * are promoted to int when passed to a variadic function) */ +#define curlcheck_long(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), long) || \ + __builtin_types_compatible_p(__typeof__(expr), signed long) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned long) || \ + __builtin_types_compatible_p(__typeof__(expr), int) || \ + __builtin_types_compatible_p(__typeof__(expr), signed int) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned int) || \ + __builtin_types_compatible_p(__typeof__(expr), short) || \ + __builtin_types_compatible_p(__typeof__(expr), signed short) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned short) || \ + __builtin_types_compatible_p(__typeof__(expr), char) || \ + __builtin_types_compatible_p(__typeof__(expr), signed char) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned char)) + +/* evaluates to true if expr is of type curl_off_t */ +#define curlcheck_off_t(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), curl_off_t)) + +/* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */ +/* XXX: also check size of an char[] array? */ +#define curlcheck_error_buffer(expr) \ + (curlcheck_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), char *) || \ + __builtin_types_compatible_p(__typeof__(expr), char[])) + +/* evaluates to true if expr is of type (const) void* or (const) FILE* */ +#if 0 +#define curlcheck_cb_data(expr) \ + (curlcheck_ptr((expr), void) || \ + curlcheck_ptr((expr), FILE)) +#else /* be less strict */ +#define curlcheck_cb_data(expr) \ + curlcheck_any_ptr(expr) +#endif + +/* evaluates to true if expr is of type FILE* */ +#define curlcheck_FILE(expr) \ + (curlcheck_NULL(expr) || \ + (__builtin_types_compatible_p(__typeof__(expr), FILE *))) + +/* evaluates to true if expr can be passed as POST data (void* or char*) */ +#define curlcheck_postfields(expr) \ + (curlcheck_ptr((expr), void) || \ + curlcheck_arr((expr), char) || \ + curlcheck_arr((expr), unsigned char)) + +/* helper: __builtin_types_compatible_p distinguishes between functions and + * function pointers, hide it */ +#define curlcheck_cb_compatible(func, type) \ + (__builtin_types_compatible_p(__typeof__(func), type) || \ + __builtin_types_compatible_p(__typeof__(func) *, type)) + +/* evaluates to true if expr is of type curl_resolver_start_callback */ +#define curlcheck_resolver_start_callback(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_resolver_start_callback)) + +/* evaluates to true if expr is of type curl_read_callback or "similar" */ +#define curlcheck_read_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), __typeof__(fread) *) || \ + curlcheck_cb_compatible((expr), curl_read_callback) || \ + curlcheck_cb_compatible((expr), _curl_read_callback1) || \ + curlcheck_cb_compatible((expr), _curl_read_callback2) || \ + curlcheck_cb_compatible((expr), _curl_read_callback3) || \ + curlcheck_cb_compatible((expr), _curl_read_callback4) || \ + curlcheck_cb_compatible((expr), _curl_read_callback5) || \ + curlcheck_cb_compatible((expr), _curl_read_callback6)) +typedef size_t (*_curl_read_callback1)(char *, size_t, size_t, void *); +typedef size_t (*_curl_read_callback2)(char *, size_t, size_t, const void *); +typedef size_t (*_curl_read_callback3)(char *, size_t, size_t, FILE *); +typedef size_t (*_curl_read_callback4)(void *, size_t, size_t, void *); +typedef size_t (*_curl_read_callback5)(void *, size_t, size_t, const void *); +typedef size_t (*_curl_read_callback6)(void *, size_t, size_t, FILE *); + +/* evaluates to true if expr is of type curl_write_callback or "similar" */ +#define curlcheck_write_cb(expr) \ + (curlcheck_read_cb(expr) || \ + curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \ + curlcheck_cb_compatible((expr), curl_write_callback) || \ + curlcheck_cb_compatible((expr), _curl_write_callback1) || \ + curlcheck_cb_compatible((expr), _curl_write_callback2) || \ + curlcheck_cb_compatible((expr), _curl_write_callback3) || \ + curlcheck_cb_compatible((expr), _curl_write_callback4) || \ + curlcheck_cb_compatible((expr), _curl_write_callback5) || \ + curlcheck_cb_compatible((expr), _curl_write_callback6)) +typedef size_t (*_curl_write_callback1)(const char *, size_t, size_t, void *); +typedef size_t (*_curl_write_callback2)(const char *, size_t, size_t, + const void *); +typedef size_t (*_curl_write_callback3)(const char *, size_t, size_t, FILE *); +typedef size_t (*_curl_write_callback4)(const void *, size_t, size_t, void *); +typedef size_t (*_curl_write_callback5)(const void *, size_t, size_t, + const void *); +typedef size_t (*_curl_write_callback6)(const void *, size_t, size_t, FILE *); + +/* evaluates to true if expr is of type curl_ioctl_callback or "similar" */ +#define curlcheck_ioctl_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_ioctl_callback) || \ + curlcheck_cb_compatible((expr), _curl_ioctl_callback1) || \ + curlcheck_cb_compatible((expr), _curl_ioctl_callback2) || \ + curlcheck_cb_compatible((expr), _curl_ioctl_callback3) || \ + curlcheck_cb_compatible((expr), _curl_ioctl_callback4)) +typedef curlioerr (*_curl_ioctl_callback1)(CURL *, int, void *); +typedef curlioerr (*_curl_ioctl_callback2)(CURL *, int, const void *); +typedef curlioerr (*_curl_ioctl_callback3)(CURL *, curliocmd, void *); +typedef curlioerr (*_curl_ioctl_callback4)(CURL *, curliocmd, const void *); + +/* evaluates to true if expr is of type curl_sockopt_callback or "similar" */ +#define curlcheck_sockopt_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_sockopt_callback) || \ + curlcheck_cb_compatible((expr), _curl_sockopt_callback1) || \ + curlcheck_cb_compatible((expr), _curl_sockopt_callback2)) +typedef int (*_curl_sockopt_callback1)(void *, curl_socket_t, curlsocktype); +typedef int (*_curl_sockopt_callback2)(const void *, curl_socket_t, + curlsocktype); + +/* evaluates to true if expr is of type curl_opensocket_callback or + "similar" */ +#define curlcheck_opensocket_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_opensocket_callback) || \ + curlcheck_cb_compatible((expr), _curl_opensocket_callback1) || \ + curlcheck_cb_compatible((expr), _curl_opensocket_callback2) || \ + curlcheck_cb_compatible((expr), _curl_opensocket_callback3) || \ + curlcheck_cb_compatible((expr), _curl_opensocket_callback4)) +typedef curl_socket_t (*_curl_opensocket_callback1) + (void *, curlsocktype, struct curl_sockaddr *); +typedef curl_socket_t (*_curl_opensocket_callback2) + (void *, curlsocktype, const struct curl_sockaddr *); +typedef curl_socket_t (*_curl_opensocket_callback3) + (const void *, curlsocktype, struct curl_sockaddr *); +typedef curl_socket_t (*_curl_opensocket_callback4) + (const void *, curlsocktype, const struct curl_sockaddr *); + +/* evaluates to true if expr is of type curl_progress_callback or "similar" */ +#define curlcheck_progress_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_progress_callback) || \ + curlcheck_cb_compatible((expr), _curl_progress_callback1) || \ + curlcheck_cb_compatible((expr), _curl_progress_callback2)) +typedef int (*_curl_progress_callback1)(void *, + double, double, double, double); +typedef int (*_curl_progress_callback2)(const void *, + double, double, double, double); + +/* evaluates to true if expr is of type curl_debug_callback or "similar" */ +#define curlcheck_debug_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_debug_callback) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback1) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback2) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback3) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback4) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback5) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback6) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback7) || \ + curlcheck_cb_compatible((expr), _curl_debug_callback8)) +typedef int (*_curl_debug_callback1) (CURL *, + curl_infotype, char *, size_t, void *); +typedef int (*_curl_debug_callback2) (CURL *, + curl_infotype, char *, size_t, const void *); +typedef int (*_curl_debug_callback3) (CURL *, + curl_infotype, const char *, size_t, void *); +typedef int (*_curl_debug_callback4) (CURL *, + curl_infotype, const char *, size_t, const void *); +typedef int (*_curl_debug_callback5) (CURL *, + curl_infotype, unsigned char *, size_t, void *); +typedef int (*_curl_debug_callback6) (CURL *, + curl_infotype, unsigned char *, size_t, const void *); +typedef int (*_curl_debug_callback7) (CURL *, + curl_infotype, const unsigned char *, size_t, void *); +typedef int (*_curl_debug_callback8) (CURL *, + curl_infotype, const unsigned char *, size_t, const void *); + +/* evaluates to true if expr is of type curl_ssl_ctx_callback or "similar" */ +/* this is getting even messier... */ +#define curlcheck_ssl_ctx_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_ssl_ctx_callback) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback1) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback2) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback3) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback4) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback5) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback6) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback7) || \ + curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback8)) +typedef CURLcode (*_curl_ssl_ctx_callback1)(CURL *, void *, void *); +typedef CURLcode (*_curl_ssl_ctx_callback2)(CURL *, void *, const void *); +typedef CURLcode (*_curl_ssl_ctx_callback3)(CURL *, const void *, void *); +typedef CURLcode (*_curl_ssl_ctx_callback4)(CURL *, const void *, + const void *); +#ifdef HEADER_SSL_H +/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX + * this will of course break if we're included before OpenSSL headers... + */ +typedef CURLcode (*_curl_ssl_ctx_callback5)(CURL *, SSL_CTX *, void *); +typedef CURLcode (*_curl_ssl_ctx_callback6)(CURL *, SSL_CTX *, const void *); +typedef CURLcode (*_curl_ssl_ctx_callback7)(CURL *, const SSL_CTX *, void *); +typedef CURLcode (*_curl_ssl_ctx_callback8)(CURL *, const SSL_CTX *, + const void *); +#else +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback5; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback6; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback7; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback8; +#endif + +/* evaluates to true if expr is of type curl_conv_callback or "similar" */ +#define curlcheck_conv_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_conv_callback) || \ + curlcheck_cb_compatible((expr), _curl_conv_callback1) || \ + curlcheck_cb_compatible((expr), _curl_conv_callback2) || \ + curlcheck_cb_compatible((expr), _curl_conv_callback3) || \ + curlcheck_cb_compatible((expr), _curl_conv_callback4)) +typedef CURLcode (*_curl_conv_callback1)(char *, size_t length); +typedef CURLcode (*_curl_conv_callback2)(const char *, size_t length); +typedef CURLcode (*_curl_conv_callback3)(void *, size_t length); +typedef CURLcode (*_curl_conv_callback4)(const void *, size_t length); + +/* evaluates to true if expr is of type curl_seek_callback or "similar" */ +#define curlcheck_seek_cb(expr) \ + (curlcheck_NULL(expr) || \ + curlcheck_cb_compatible((expr), curl_seek_callback) || \ + curlcheck_cb_compatible((expr), _curl_seek_callback1) || \ + curlcheck_cb_compatible((expr), _curl_seek_callback2)) +typedef CURLcode (*_curl_seek_callback1)(void *, curl_off_t, int); +typedef CURLcode (*_curl_seek_callback2)(const void *, curl_off_t, int); + + +#endif /* CURLINC_TYPECHECK_GCC_H */ diff --git a/curl/include/curl/urlapi.h b/curl/include/curl/urlapi.h new file mode 100644 index 0000000..e15c213 --- /dev/null +++ b/curl/include/curl/urlapi.h @@ -0,0 +1,147 @@ +#ifndef CURLINC_URLAPI_H +#define CURLINC_URLAPI_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 2018 - 2022, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + * SPDX-License-Identifier: curl + * + ***************************************************************************/ + +#include "curl.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* the error codes for the URL API */ +typedef enum { + CURLUE_OK, + CURLUE_BAD_HANDLE, /* 1 */ + CURLUE_BAD_PARTPOINTER, /* 2 */ + CURLUE_MALFORMED_INPUT, /* 3 */ + CURLUE_BAD_PORT_NUMBER, /* 4 */ + CURLUE_UNSUPPORTED_SCHEME, /* 5 */ + CURLUE_URLDECODE, /* 6 */ + CURLUE_OUT_OF_MEMORY, /* 7 */ + CURLUE_USER_NOT_ALLOWED, /* 8 */ + CURLUE_UNKNOWN_PART, /* 9 */ + CURLUE_NO_SCHEME, /* 10 */ + CURLUE_NO_USER, /* 11 */ + CURLUE_NO_PASSWORD, /* 12 */ + CURLUE_NO_OPTIONS, /* 13 */ + CURLUE_NO_HOST, /* 14 */ + CURLUE_NO_PORT, /* 15 */ + CURLUE_NO_QUERY, /* 16 */ + CURLUE_NO_FRAGMENT, /* 17 */ + CURLUE_NO_ZONEID, /* 18 */ + CURLUE_BAD_FILE_URL, /* 19 */ + CURLUE_BAD_FRAGMENT, /* 20 */ + CURLUE_BAD_HOSTNAME, /* 21 */ + CURLUE_BAD_IPV6, /* 22 */ + CURLUE_BAD_LOGIN, /* 23 */ + CURLUE_BAD_PASSWORD, /* 24 */ + CURLUE_BAD_PATH, /* 25 */ + CURLUE_BAD_QUERY, /* 26 */ + CURLUE_BAD_SCHEME, /* 27 */ + CURLUE_BAD_SLASHES, /* 28 */ + CURLUE_BAD_USER, /* 29 */ + CURLUE_LAST +} CURLUcode; + +typedef enum { + CURLUPART_URL, + CURLUPART_SCHEME, + CURLUPART_USER, + CURLUPART_PASSWORD, + CURLUPART_OPTIONS, + CURLUPART_HOST, + CURLUPART_PORT, + CURLUPART_PATH, + CURLUPART_QUERY, + CURLUPART_FRAGMENT, + CURLUPART_ZONEID /* added in 7.65.0 */ +} CURLUPart; + +#define CURLU_DEFAULT_PORT (1<<0) /* return default port number */ +#define CURLU_NO_DEFAULT_PORT (1<<1) /* act as if no port number was set, + if the port number matches the + default for the scheme */ +#define CURLU_DEFAULT_SCHEME (1<<2) /* return default scheme if + missing */ +#define CURLU_NON_SUPPORT_SCHEME (1<<3) /* allow non-supported scheme */ +#define CURLU_PATH_AS_IS (1<<4) /* leave dot sequences */ +#define CURLU_DISALLOW_USER (1<<5) /* no user+password allowed */ +#define CURLU_URLDECODE (1<<6) /* URL decode on get */ +#define CURLU_URLENCODE (1<<7) /* URL encode on set */ +#define CURLU_APPENDQUERY (1<<8) /* append a form style part */ +#define CURLU_GUESS_SCHEME (1<<9) /* legacy curl-style guessing */ +#define CURLU_NO_AUTHORITY (1<<10) /* Allow empty authority when the + scheme is unknown. */ +#define CURLU_ALLOW_SPACE (1<<11) /* Allow spaces in the URL */ + +typedef struct Curl_URL CURLU; + +/* + * curl_url() creates a new CURLU handle and returns a pointer to it. + * Must be freed with curl_url_cleanup(). + */ +CURL_EXTERN CURLU *curl_url(void); + +/* + * curl_url_cleanup() frees the CURLU handle and related resources used for + * the URL parsing. It will not free strings previously returned with the URL + * API. + */ +CURL_EXTERN void curl_url_cleanup(CURLU *handle); + +/* + * curl_url_dup() duplicates a CURLU handle and returns a new copy. The new + * handle must also be freed with curl_url_cleanup(). + */ +CURL_EXTERN CURLU *curl_url_dup(CURLU *in); + +/* + * curl_url_get() extracts a specific part of the URL from a CURLU + * handle. Returns error code. The returned pointer MUST be freed with + * curl_free() afterwards. + */ +CURL_EXTERN CURLUcode curl_url_get(CURLU *handle, CURLUPart what, + char **part, unsigned int flags); + +/* + * curl_url_set() sets a specific part of the URL in a CURLU handle. Returns + * error code. The passed in string will be copied. Passing a NULL instead of + * a part string, clears that part. + */ +CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what, + const char *part, unsigned int flags); + +/* + * curl_url_strerror() turns a CURLUcode value into the equivalent human + * readable error string. This is useful for printing meaningful error + * messages. + */ +CURL_EXTERN const char *curl_url_strerror(CURLUcode); + +#ifdef __cplusplus +} /* end of extern "C" */ +#endif + +#endif /* CURLINC_URLAPI_H */ diff --git a/curl/lib/libcurl_a.lib b/curl/lib/libcurl_a.lib new file mode 100644 index 0000000000000000000000000000000000000000..6ac27abc3fc108aafffcac99e05028f6f2cbcd9a GIT binary patch literal 2151830 zcmeFadx&gXe&1KIqnUVSte2(9Xf!iY%!C9*kkil89fW(oAGM#;)qNlOBc(ds)#udQ z?yjD$>T}N>^oL`DLV_U>NN|E>lr^XTS7?(dY~R&*+c-hhP2d`fLn-Pix?x{0qN6`t17k(GR`) zN8g{#lNVp|M>p%GQ(HH;H(ddhR_2)jjJ{yD2*1%_L;CH5^nGys@qhN`Mt|t8*Iym|@qgv-{Xkql zeDLQ+AA9|~KR5be_xj6!fAqtf*WdV$Mn5dqfA`MEUO(~+zcczhUCX~V`jPJX*Z8=w>tDJX{n(%S z%};lo{ru?1egLi?U;Osy_k8{8pC0}A_wf1?pZn9J&#oTzwybgcaqUheRln!9fPm_&996G*Z=)*jlOEGpZ?sR9I5Mzm!qG4+ja8o(NDka z`lY`)`svTE&&J@hHSpOQ_(QM;zUKeVsK3VVjK22!asBFVjlT9tuK()KjJ~$*`rE%c z`r04h_4Qx)iP7)sdiNiVzV2Sr|8w;9kGsC}=SN@vUS5CY*G6CePXl}X`frWCzU}(& z-x+=VH~;$R>;Ln2M_>Ot{QU{9Z~V{~M*a22eth(eFa67(?E1++Kl;YD>-evZzVZEZ z{ZD^u^o=L3pZO=gJo>)9{_W3=e&*9&|HnI{pV@Z(!@ocJnT_jbzxuh+@9Dby%IIf* zf3B00Y3NO#Jqzo$4*V?iypg%J6P86-jf>DbIj}d=Bn#W1O1;qDE2^ldleG3ucI?eE z34u>JGe$iA_l6#k{nZ277by)d9uG)J2U>{^nQ&(vbdue5xwO1y|ILb@k zySd!8?>22#l}(c9kJyInwMCE@O_uSxotph9P5iLVnVR|iy8p_4lE+0A6amxd*14aB zQPc)?>7AXP$M*Hyuj)1^8}EL3J-4^3xbnwoH1=+1H_q)g&61`pV{i3pW+(q32+O2x zQ}6N>bCuumpK<@GgCLKYaz8RpUk;y+(`H;XnXhMAruy3U{9s%Magj8!direl&B>nq zE)5*}MVotxUrua~4%)0t$4y;$>&4pX(qT0AgQ~0>Y5VT3U8RSypVe7ZswtKBe`nCb z!#F70V9bJH#^v#_dxuHH!fRM!_xkbeuym5wX;EcGS9;j}!=z2BI%xc^^n6%4ufif6 zv(;$x-jUPhyp8-aiwiGbtsdt0{iqx^SzfmFSatH?(B5zTs%Q#2$(Igx?5catu4R8$ znYVkge{izD&;R$Oo`+SI73?7U(0=lHl%&--@nie&xh+t+8;^z))@+A_}z`|#L)vJBfeAG7iMl1KJoohIWJqUOCbzh5nuxBZi&yz;|5 zD|}mQ-*)0?9MxgQrnXOaY%h+AxF~(!ukF)A+uEZ7+E~YFWS{OkPs=8XnqI zswj?vAa#e`Zm1&&43sagY}p;>XN06+Z*jX=FJ{-4C?B;!mSj=mER=n_Rgc(`O&R!&^I7}! zI35>e2^E53ss9slf3nA)1G;~lhCw|pdF|!m_58MW>C$l;)k#wni8ooiyq&Ed?k&wa zuInnUvpn z(~z@>w(ee@9GKPqxcR&srQ2q`)KaIt=May-d=JGDXJg^k}dQOW75Mx*c0 zmQMy=UexJ0gnGZ2tri#I@^-bppDk|Jc4mUm3!nw(Rn9A3)`}N5|G+WQNR3FkK4xy%Kw|p5oGWc>5S9MX3o6T2g3$NPMKzq}) zEi0Ig?XM2LI!>x_7S;9UtB0Fiix}6ui~<&~I|@5{2m8!9!(cZ-5P4}(6>RR}iFfTL z=iNMonV^lVcWpksou0Hr~tm?fibWhE#p)VRpT^S~yfZh&_h2YywU< zy8sUS>zB)W7L8rNyx7KBSqEu4Xse#xy%ROn{c;ZyFKB}#f|nS)ZAO8Ck@fGs9&{J$lv^bwA;t}}nQerz9k-I>6|tKm+<6ju1X zgJ;jqZx`QrnCF-C+x5nj@M2K}LFngCjGeT^9g-#*7ce)%#WU` z^#k{qF!92Iz2(EH2TNYE=boBtX|FSGsaNGm6*lAW>4rFmP>_1?W?9g}p!21kt_;T6 zIhJ_8iLxN8li)4y4|>`bFwPZ(^Xcz9bR+W$PKYdo(G;o%1<-_!zn}2|_5yTNjzvj*O>^3>wz@Y|$iF$H>z~oWAE?C`?i^P7J&DmU+&- ztcmD{UJ)?1Z+*8+Tlh)Mz{60!^HMoy`+$A_gQ zBwc%*BeCKzNaHq0k=GQt+D?MDmu$y=?IXV02EifZ^~W~0_M(Cn8bii(rO?uogF($Q zoN6!`+82xUYB;2|SB(+WS}2wNKpcjj<^y5kwW-JrKAaX)_8|XZORVV0_8AShGNEuTS~83;DYGkDZ{>3){*s;w1GLqzU76+)gHarKOi7Z3$Ns zcoWN@IFEB06x0ar7rS@2FLn<1UfUg9Lhqw&99D^Uw_L4f*WvQgGK-ZLK%&wrL>Sbv z?8A%c2OLc9;%52Oc@FW5;N&@mM+v@gV3EITY4*X zRO^GfZ)4*HaZ*?CjoxH%lsj)AF(+9PM&3e+p#JrGz>_x&Lp{#MNoJO-mQ){as>X{$ zgw~|g61HKB<#cl@L%Q?pfXZNS=kxVuuNyCIIc;MGP1E`vVJa29-?hSC@u-#qHHn-@TjNuja5R$Gy^yGqsE%EV85Xz6CoR zoiJ{V+LV?m@1oC2z55sadwWq4)6lUd2nb#MlY^vA!Yo0uxOuob+RFaGF;x6xiq;-` zFZ4sTs`UyvIS>MI@M^YtC5zkkNA`SN!0-8q6LO92UZ4Rd|)dUpMQ#Bql{Qmvhf>*eiy zdUwCLncaUhU9GOC7t7nL#Y_G4iv9ECLlNwy#A?2t-Y&0~7a!X?Ze&R&T=)M&aSVWdzZ8IYn)YZ-F_X*Yj&x0zqWi! zUNRqZhUA0A_4U-;w&Qa5u%a^qLM>k&+@4;~ooRNLr@Y!Xduq4b@czT?=9A&V)o*wA zhU->68!TIO=XUW52FP|}eZAV*n_evLUZFvKSghT(@LDTXJK}qsDN*UFYlLN6UIHn?a`5K&W}ST3m<<3le*^>}e}nzaY%VVJk9<)5-s<;lSka)v|zgK)L5)Ew&;5;JEHW-_%{CD^ED6_w92UA&bG!v~9l8TZSZA++N0S*7I9AuxPi4 zgyWL~XN*%XtHUx6!fa3_oILw<*h!|yHZ}9&GRrZl`h#-r+(4S=_cxrogVm6ug3IeL zMnZST)-AYwQYlzeO`9W&xdjtvtLUYB&)BZ59ERaB#Cp_(n4a8%m$LTM%rmbi2eVtI zL(Qq}WCO><{){l#xh37U8s=IR?F+`SSLSgr_K}?2f^VP5IP=;PeQL8oL`*4>h$icM zPReZ)8Rs6V+fpQsVU?m_jbQdJ=Z!L+#iCtN>%ca*K!ciRKE}Rb*|*XXNERyHppNPx z%@Zz!vtAb5ft(78IxF>#t+4dQVN|v4r>(Gxd}vVlX-FQzZ4icSo+0A9bKy>+S^#S9 zudH}N!K!WQFddfr1l>y_F9r~SasShdC&qfrsug<2VX24P`I|ciR7j5;9;lO{8&*ev z_>hHVRus|JVR`$q!5)=|m=3FOIEm|5LKn?Z%^7rcg3ca3xSvAwU0D?%yU>F5iprd0TZyd#Eif-i(X8QFu{7grx?Zb%P1Osao zdbjJ#YkO24w9z=KDulap$eKNvjsg@rVG&`^@ym32h6TK<;0RPo(Iipky;`sDPIgcP zSPjAvO42+X({WV}qnj<42YHy(sK?Z!)6f!kY{w;r1jwFxR7LKiwh8?)iq38%?FYvR z5Sdz}S7~DvS(WqAI3JJGDvi6k+(#w4r*Tz@#^v?mV(xUBuhFyCv@nV%wyp}1eq0ny zSC`cyA5~2i0Vu($C(Sqwokw*5{G=?si8-R}_u42J2Yzb`VLEpn#eN(lAO+O-e5V!1 zQ5*+Ri@I7p8kjVXlL`Xqx82Cce%XKW7@bWP#@JD%h1i2^ZO3H>)+8O9q2F^mjRGM{ z{SxJ)D#xSu>?e`yQ%1{lAV%5OKf{zjGm8}Ei!K?y&%s?xD`yq)PFjX>*5>95*?F49 z6K2uQJ?|800CEGJyAWXEZI@S9tW(Ws*qP(aHbr3&Ri^vWo@v}>ab;T-pi`>CIA^h| z{+yMQ9aI97v-s3~DQz2nES7uqQX8IadnsrASE%j14>`j{BAOa{;C`v_3lK7enMkxN zdsC)t(8IthDnCmjR3xf8_0r=um1PD(B!EMe3FM{SM-9jRETRBY>77sF>E!IRsncnA z`hI(6QDInpp=bc8m@St%Ko5aUy|$Vy46e;M1D0Z{^wU$M4D>uxzkc8L5i=Qwd7LC> ziDdpHo1VsP2_|LQyqmah=IpL~j1gP+0V8Hz$K^Dx!ztf&-z)$eHDSM!yEj?3n{Pte zIZQx_O~P#YmTofzZP~JO8n0Yl%&sfsVkR!;#JER+v$7mf0Nt$0GD3jx(DK}Kq6lS7 z@0SmE?Gi<$JzStkK@=uQjsnvC>ehD)FB;bkO8m|K>&c$V$k{O{J*-C|Kn!{|DNlA- zs_KC2nTPe_X1;u|Y&~)v`sy|UVbpJxj!&IkT+Hv(5y=69C4&DJ&ekd6til$;j1HQ* zx`T~9rWnB0!`}Gc?~I3RgWFcX2ghA|-EtTR3pr~CHLCej8gnaC zeI$Es_28DRa*h&Cg+bYF8c{c{l-&DDWI6{HzyVk%U^0DyqdBsme|LBNQ3zKAzZQ{95lqK7-xLxErg@;lPr>3?-cQ;Ms=D&RMJo4Qd%lcWoCj zdNz3l^EZ??x3u(res^u9KXeX(V005qb#6-s1=mZ#t{}@fHZclj;Bi2P4aY|5nq`?z zsb;|>GO`a=N~KtvMp+x8&402!J*0}4v_0g6i?GA^$#AU>8mbGfL<{W}tlQW_XhDcU8w(BPg z>TN8_(ZM!uVE>UBs(3i0{>675Ko5m7{s2(WbZ0Y%Y#`bKo(MGz0lG4$Lmcrm*@Ibs#qeKi+)>dG~^5;Kopux>G!vbZdY;ST7H>oyT$5o3}SjiJ=$r}%(TnU%C@lOQnXW1)CB3UcTY^<-0ll3Yh}w} znzzFa&efby&+K8nWQ7XI?7?BF;5B2;HNP2BU{U=m@Y-M^Y&(Gf#Yr4vJ|7I{}!`<47-{{|>dhA!=mj{ha9L3$@M))sIi-8( z1&yLcGf^mvnGQKh?dYJ+f)B0O6CJJTXocDCYLt5V;}&cHtd0Tw4Ju^YA3P|FDFTq@ zAA>0^Kx5n+0(Rfub9;1yPDvI5L+EStUOnYR+(C;yb zHJHsoTixNo8a)SzEtYS)7tx~D5rF7sLj&g))Z?m&ojq*O^akK+5S54f-)-#HaYY5& zmLjH0O*t8 zY*k^=6tt)I<2(n9g@?i^daPwk~KpXZp=<>fgb4(I#0ZRFz?9gizGI?uC& z4>W;MLZCI+D39|=6rmK*-V-!d8@3gn$Rm78^b3>8upcm7Wl=^6N^kW7P@zXJz;m!f%tVNKYf6p|rww4>QDkv8 z^cVm?Ai3-1%c-K4+NSK>H7D_-`$Bvk z-TV+9-5?g6PpG?KL2l<=qxPc`gmr~6>&>mecuZr2lugBk0h$5$it%pT8&`f_H(}tN z?1EYPCOXIN(E%@*5TFk#lzzIa=N-RZB_SRB<=;lutxM*O#z$m zZ}-LHCIEsLL$_ZlCX+T7uKHs6aDA!SR7K&Wf(>Ie#WHkuamz6m z0u#E%PUrKQm7j(6;9JABj*g-Zf&djy>kZf$B?yTOu2@b*D*FL}AqHOP`w9A^i8wel zipF1pZ2AClFE2lcm`GLmTul0A5JvzNnZfQ|tBRpyh+{)x)?{WA;Mz zY0F@0YwYyR*4NCI*awZAMiH30`V2zV4JN`2ZaSf#miocR%sm25UzCM||7wiRhh@h% zpDw!o=ngd%%XQE-vvh9P*9N-fE*!Z#m2x{z_qTs%Z_7Jof%Wg~Zh41Ark+1qVn>kx zb~$~$Vt$WH%hH}FNS-C&)56DpIR&iDo)(s9>vmE22|He5VnDnSF!INhG#ky#T@-q8 zjZGy*gZObJH|mT$Iof~_e|&47+}tnOymyPon_J%p&ZHGBTL#!HO!J~5qK`=dv(SC1 zQ}TAJbHBt0f(<9~*7uI;=ODlj6_*KQ03h9#+8)HE4@(4HVB1_Gea;?6G9V($ptL&!-36yo4LqmUqm~c>9OUQ$ydKW-wdkncX$2 zkxTgJ`-RYShGMGPr)I$^YYK{;>Tb5U?`9b(0?&@R&V$Ar%8G1@12|{%C;Mm1NL>J# zoo*ijGnSl&^ZVP`^_D?0Z@}b$`Fy-)&10ns9X|dL=HX&?e>uHGyQ=%%-x7&r#AdmE z1EO|zY5rU-*2~og&X0%hc0WGg$)fvlz47D0ee$sCUR$o0_5c_QtO>=aHbSVeD6ptTHi_`V>I|?wse+BK7D}0_F z4;GIg39w@#7Oy%pX17B2O219A20>+Y^P=BRdnIOy2qd?6wZ7}`?gR6S3XwBVblIK0 zAK(g&caeO-QuBRWdeP`-WAA>wa=sCcv6wc22dLV)8wog|g$D=bXQ|FUDq3viqA$O3 z+YzCQ39-)IE${Yh>ypgJp9S5{deG?HPs#$eP4r1EAglovshIjz#+xGPXkvsu1p|7Xe?)?m(7{Sy?!=3wBg?#Xnk@~!I zzm9@BWggUE+53m0)ejo@is#~-hjVJ*ufr@%>&O>+ytoxZcsI|7IgaI3h@-^Ir2tdy z1J2uVldziB^XuEW9gF7`=!GBw38YKd`Z30%dl?s^@OyJ~I6d4yIlj9PKkVB*D|x{v z=V2bEZRTAsUdUQJ*|F`F-~C#2e*i1SOT(=39UMT~B7|EQNE$mx{jndS&x4mN`>yOD ze}X3vN*CFi;}TyjS%;2S#!i#A*nSW!_(0pgyBh|$He)I!B8%gWu}f439}B7uC}ItI zyLpoOb%IO5uEjL$0d;9wR;_sJeABN_tX5!e>=VlXu~CTc^<`h}UWNH8uP}eg1Ls@& z^fD$wOD@aN0r?UNBn4uZ=^Ze5FvgS`^FUUf`yk3?Q8GBPb=?PfAWmM)q%3XsL5-k? zQ%$ZGpYz~w9Aw0!poFxxyEsew{ya|@@f2`e|Hf`7Eikm*+#ZW33RY$YY6n?TeBuh3 z4gL-Jx8iC}zKI5;D}Z!@IWxx-s&pjm*^3LD3$&cgNA~;Iv0o6%rm4s9I49psO4HH; zoHf6!h`#v&p4vw8k%kQjl12OFNjwFXhJ0(&E$36+>stw2J1sHNpb_ZS%gJ*pkl~2T za0G+JPYG~0WekTT#`J3?Qdxi&=t2c$LUibQtb3m@nhD~ZT*g!I)@cTWvj8ZHlkhIP zlxPC{zq<(#mm{bbF)!429~8_0-$y|k^#AnVYd|Z635eB9QS_~&W*7_Dp4p4l^7;Xx z7NRhk3U(jPVYR+oET=2X7FW}y^4(jFrmt7}hCUJ1`-*r7HR(92{>CL9GyM-(Bl`o( z(nx=)TU^vJ5cvAm@4u2Vl{Rj*^OF2;uQ)X85Fz0 z_whYyN;D^)OjiFo%y!mdH}UT7mv1cW}c_oZ^27Xd+k6j?`w zHh(h{P1MOgj%)Tk+$vhMhn%3q0^?-9$LyvY7g4^53C5n`V48sV5uu<$pKB1vVh0i9 zi&BReeU@F3lpsif58nr#4#SKxo1lg3@kg>8oFj_&$1U-bI0w;x8Q+EP;>-q)yi=Az ztw0w^K|9Lg!4e@~M;sS5t+7?CFw?z8hEpabyCB7XB?i)q_Ty1kWb-IMbyuSuE7ZT7 zZ)Jt^KqyK;gKfg2cX_Q$E24LLT&(iOdBhF?2HJ!86$TEtZTk5Hp29e>Fq^Gf~a1msE_G!Y$UK&kqWM=b2TgoPK4h#TNZS5D?nwV)cQ{y)6kE(akWeb*GMjXH}Wv<0~^NHKaNa1uuSdp>U zqBIrzG#^EdeFZllStgfMm;zk!N5Okgd9eoa1Hh^2-~wf9 z(5)DP-0d|XNoxUesy4YF5T1{?7@>D2#BV7>-Hn{!U3p)}F5y1<-zEBQw{%m)O)CJF z@X2YT+#3H{#z0&{hyHE?1}$(*7!dT~DcMm{XyO5D%2rMw3c^gG8&13P$oQJm0o3#h zP)Jm#&ZhghT`b7gV0^MFg}46nUB;sT$TN{*2#L3ijQ1z4Y)PYM=$i~LQAkueq!6Vw zRST?t3L2yyhY4YbEGsvhEpgRBJyrq(5cE_}?5wCuBn+bE!D5Pd7*)5-D3$0XiTr9r z9I<<{oe^f_%+ab#$G~f*U*8A*H2AH;3@k1oNb1y`Un-ldOs#%jJvUHA6;!~vFJew8 zqLD4XQCjq-7+uX<@o7y_9xmod}2yCLu6>s##b?4hg+fj$Lb7$hWCv^VF|T{9YO}u)ViaSZG*u=oz!k8V1*e8Y$!QM z%mFT50fd>LM{+<7z=?>$IVvg6UPS}%=c4&#?SjG-Ts?g75HCn?Lu8S#Arx1n4yg}k z0QVFX7e12+hbPC(5x1NZgi;kJ0O9J!9?L-o;Nz@&pgdgDOA-s=7T@V&a+=u!K;Xe_Y zbDXHb7|!P(Y_CcQQ<_rS8YzlpFs?Gp&XWf`ELN*49O0!~zy^$mIx!-z#aqeBFR-jd zThxTbO1-!A&Z*KiHUJJ&5>=@NXgYhdxOu<{-8l}l_wxJ_VDkkrt)R4u8M5VB?S91q zrs-k?;f;q|IT3B0fFg<(Jui#)Oipw|Y-RghE-xN#ghp7e535rHnT98QnzRIe z`UC}?;Q^~O9%Fq$r_l*sGNGz@YTu}yc0|Uu6oP@fT~VNy3Snm%O~rev?)A$?A41Ye zTM#+81$-A1{qpI8y*9!1qiNy1Ys{`-2A?7W5=j-j5nQ3w6QT41ER|y;!YN5Y&FU8v zP*nVFyAGPQ*S9nRWd$av&iNyBIG{^$OrW3QlESNX8JW``lpF#Ot|9gpciHWXMhW716 z0mfr&m#96qoA|RqB?-M&5c^DamTY&?0kE_s)`Z+J5+D_Sm%ebaI$KlR|A=+Y*+Fc# zPcyzm0WZoF!%gjpaHeR17G3%ksEB~xnG0uhVYb2)JwV3Euzao8YDXX8NVV6OcFUtP zwyO~Iq-cO!iqLFDk#0seH)dZDxN3@h1Vl&T09fOiBt^V1eB zJ!091n2rzy1~a2he~5=7z0NfCwGuI}iO0YZeI;}#K@$$Ge-1JY{p}bOUC$o$!nbLY!q5l?)fTrl+@#M7Bw-qNC!qLRxnZ9#F ze7MzA#*@?k5|&_TaC^c;bo)TRdMC4_SGT?)4bUfm{q5ip)uaw%UojFejKi;pTJlOyogX`s7PMwfbn~9pbT! z7Xeg{-CN#>k^wzV|HbDRD(ixCk(m2K|Ig?6w-NKwu&!$NYdH~wn*3-n|02Z4O_jy##v(?4I0`HF+pIE~o9!1hGWq{BD zC*`MAgB@egs_+CAE<^=4n_I4mn*^3&^BCjcW=Aw3-Mrg(5BFx`)`JBsL+^#KwI-Se z1VuP8es57h!`}FDTHtIlATTn*C&vRH+Z5id!DhgW8d4;OiIHd(NZ+<31AZEn6?O@| zDiHi;1QnF`RrH|7MM5JhK;M!AYs#Z9t0jNq2-?UA*y?LSFP93+Fuf;TgXkkPq~;OR z&+E8qCJ0Ds+0p=pqLco64XbTAx-P;)B`iC$M&90Z95YElP}XI}si_8mKB~_u(}oll zm9G6h6q10uxT|I$2Vjk~@lKsqX2}@^q>i_zbeWD~(tZeOrXr|xT8qu0>-^?PGPHyU z*WQE@Fe}qzC!}$DwYb;n|EI=~Vt71fxV7i7-q*~ya#>>vyY6WoQ4%mfllms&JDQ^K zg*(94wr`?l?wPW4CwhsDl3T7o=E_o#CPHdD!KEA68{`_Z@YLwpf{}_9-^8Ty5SYt! zy=`qsV@1h|>}pGLUXe*+%+%X?7k`ZF+5Jo5XVzdX5ffGXD$s(qAn_J!q8Ag4V_0w{ zt#nF?$_u@)Eyw{)6c`CHprDfya!AFy6S}07ZW3)#N)7gk2nR7ja*CqUE;uz6YA32s zbS$29lmIcdPKkk>msLT^hrUupwJCATHd2IZk3YL;kE(vRJgzh1rVFU5U+vd3k(wj_ zj5uU^wVR&UaySJO<`oaB%AFT7EGR}u{GEqVwJiw;jp>R=>$pJ~-E~hlr5Z)XyJ_l+ zaYiLDFyn~K7iapc*sNkOPzO#(5VW=#5DtRMiaC{@nZt&~phnniF&QgEQO}mHgCPNw z@qj1(itmh(8>z<~slLU8!fk4{7#;(9$)jUhtk78ZZ?s~oV(!3u={Nd~q^8aAKmrM7 z*-d5ncgNl?ND>^~aRtCxvcE~_R$OF!k9-;Zz07ZjQGxbVK55UaU5xYKCU6R%Q~k?$ zi4u?*CGo@p+;<65R%YV=kDa=Ivr6!QtO*K>Cf?p8OaSmCQ3IOed6!fsxT^xobQ10C zwmBj9Bw5J2lm1P~k0cI01V(xP%-&67f&dVZ16I;jvmYZUI1ZVuN}?z^i)(KTauA1X zywFZ9U}6uvSd3r_+!|F(-$co3MGR*kB}SU*AMFP*+NA~%#A$dI+uI=w8rw`GEH=Vj z?}v;*k(J0yU=3^;)Yf?AFcWBz?fC4ARyrg`HFHthA>M~IX)?A~?K{)4pN^w3G4%DY zse0|=*-uGEg5NW6{7+)ZrxDqGbIJ~tK56Haa&U} z#E2>wmVBZR_ivMfqbxyLoQCg2_AW8WfoF~hMdE(r0Lhe$A!A~>RK7DO2l!s4ypLMr z?0w?(bss-~MJ2Y9#HTu7Xzce7h%U`33CMti6mH`W#&I@AnnwvPg0Qv2*l(72&eue( zBAG(jyld|hogi*-tkESUjJj2>AJi|>lIj8tC-aVvNRjD`~LoH>>v0iStC4f zDrYsZ14zk%<5+WUhvbl$&Y`fQ-We)HM-zUCF5QRoSBpP$>i~4fdI0%D9hqAPT2BJ} zus|p0ZFFwe^K*PGh`Gt~qAm$L)OX}LT6MxAV7#v5cM14o{V;(72L6~RixRWw6uv~x z-@e=tkyK(oN8mNY$oc2ed5hF6InCYjmh-K&O#`q;jrU%ZPg-}JkEkJ_Lz=QVBFjc= z@@m{*HBjg2P%Gahm`;BOh=YS|u3QYSPi6g^w#}z3oFq=m6$Oe?Zd@DZD{R zz(kU@tAcqoBLQXItmT-*Gw`W!j+^h;!8m5f$#e&~BK8&TLxcT|3`Y3ujNo-@Kyo;1 z0#%})5&jJQZQp1NA_N0Sv2b;uE$MLn;2<$v$r0fUtP0i#WK5P$dm2wBsrb-_ggBxx0Jd82b_BQ2qpU0CMcz#U;8wNQ$&dEe8=l zv-#rXtKMv6mj^OJ+`@L%c#)sqet;qa)>nhBdm%}E$!WMiUW=TFe*(f#N}f)?ZUkO6 zBf9#*kfB13L3zL!U=)ZLwzyU_j>GTAqWLTVVW1hM1ZiIB6w_b5~kI2;qTB5PL78tZY&a6MK>o z8UZ_hkm1&RhPzyy%J-e48=WZ}XIim?p|~fS6eXkYF#__8juiq7L%C zz1`&?lI1bwrI9k3Ow-mFVax?erW66|)*oA z68ScK_;DagYREP5gqG-i;I3W73n~^oALsj-%0r+G(EX=KQh|1yybRb5)MJRfFDuP? zg8*-7#COaghKzZB);b5Kgz`yH^bl`UeWC&5bBb*2a1F#xjlv|Z3l1KJNLf=AJ;pjf zd!3~MdT>l06C8w9-!{p+jE&WnS-!Dl=`-pWoIU^ijC65llA*`#2l1CM0!4T$lXz9y zuh#(!VpAAWz8l^0+RZX7mt)l2;-uY=%27+c*I1lyKEOF^e(gAGa3&zWrr?fi&%eBk zuCF6yW+YB?UmS;PoM3Q-DLrDFU*F-mc(U)t8pRPZAuAHWXS~Igf(xvdDCy>wqvMSn zG(`n*FEJ^Wix>Bp4C6P*TneXv;q5#6ui*#Gz12IwqGk=j`h+SO#kJTb@n=_G((frh zlpYSQKCEv!USdR`LWgyA)x~X>pC3$n$2mC0u!%)pDVNJTbXS~6j-$x)1W^P0x1Mi^ zlqeL`H20%*l*eOy4}hKo$`p%E&Usc7oT=a(5cJVdgLO0}uq<4xE+#NZTa1u_C0I)H zNkMA#&yFEc0Qix*q&C#9&cq#~Qzmn&V4V>5hYqmE1fNHJ*n+gw&;U*)`%%tZV37FP zh>C&ly4up?rVPh;E|IxNSLx~qM9&Lu2LTjxf$)mcn6Q!WfL^jhkaviq(BShc`#9u{ zx;Z1LWbKCQ^s#9J(*fdP-hmzx{IZCx48eDZ>Vs4o+KtD(VsUCE~-tKNFNjwcfZyQl)EaphhMs2l)kJPiY60E>ofnIT{q+Dwq=@ zU7%-HZ+)oI&`KBN)=B&ifK8mfs?GuC*}g`|QKU6u!7*MEITAaN0K_+!EJru&^_XG*uUz+=^5+E`` z3Sn8mvl|{THaS&l^C=ka6Bz^s(shQF5WdaFo8(t%#4?Od$JyO7d4cX7u3X z^*hLx(ew-&?2HcY#U*n`f~tP4&SxvcK&@xB;|RPQv=_mXsaue%H!5iW<1;5DAnd(; zlS2qc5#nhR+*U2@yoSStzn#XXr;aWXu}q?qjvLt6?nT{5LI(?|sNV#Q7`5kXw#CAMVQskU}fE!NyhG{nM4j(BV;IHUZZVtbcNK6 zf&>=`re_oVsz9dhC$U@R&>UwX73zN55LKcPg%0#vJ5eS>#UChN6Zg9UFDDHckQ8TM z0PB)f=i(P=ERoCcCQhB>E`$UKV@qmz`%QFbu%{fwq6e3QA1^1xBqV-bo}W4sF9V*>bo5iD^xW5>YzJn|U`qTfd2}wj_#$ zcG1&AX~Opm**26*m)B6#+Zxg97DnKpu`zr_A@KRE* z_pny?b)xnW9RrbiOHbd~(o@3!O1cc~Pbl28014jK)4U|!88Jr(Bu6#hP%4+%%Lzq= zr)U6q5FTAS_Pzc4*!{2;lGB{y!gx?UNz}-$1o|T_F+f`G%TU5ju5kwk!$*vxx8?pc zQ`h>Z7!5hN2JfOt8RIPIHR2p8&|iHPbt!w7PR<%u7}4}%GTL+u#XyjTFl;b=a2Bbc5z|yy>9&h{^)4|Bz&jjzco=>ySi29NZl* zz=)nRQ}0i|)l3xouI+9Qz-3ML&m}Ix+0>MC-$r~P z2|LK^jw5nTZHdFIXU{EB`U#OHup|a}>?kh{1;5v{9s?0kx1H?UOf}k=f|N|yl-UU; z)WBPbCPm=9$O(zgQ0X!ixzwKPi1`Xk?*I#_1lAr6&$ z>LDeyi*)HWD@BzB@|^dTx?0jdQk%|*Y(&fr`4-Qog4h9(Bx66{#1tCWXJ$i&tW@x|I+-3B~~)QxgQ8 z>1#T99|cv_5h?fm7EnUK{+0p0x}Uw&j%jZjU<74Ac4VUKs6O1z=~?KXGPx3Dbtu$2xHSv}1#5k!Iatp_rhiezs1E1X6iFk7-{ zHUxCaRHPCh43HJ8u4Xq2k!YUc_%TQ0(m|f&ZU>S&UQ^jqR8^>gaJCp|ZEDn?KoUV! zn8oPuK~MAqiGt`o%8t>83P4e-ccPkeW2BP5?MwoDPh$KE@G#Odzh$>`I=BTeY7xo- zpy|5=(T4CVS9me4a=dnDg4FEj_krVzQUe5*r$a@s=I@rb5&}b;4puV(Y;O!T*1QUx zHhHCNRlSMksj((-Ko*f_5VfeA-i4JZwaK0^OuuBPx81_~o>MNs%IF9wA2+W=4#7x< z4yIeuTJ2$Hh(v5d-7+rxXxJhg*M=(AE)ImqB&+KgNM(nBVvm( zt=b`Q0@xS`s@F9x-$G`G<{u($6h8bkY-z`8sbN;L$+*d}ukt|b;1&GZ4xTDk1?YLr zBC*8)SaIt4f(9@dJ?ht~_`f*TT)$fW%i30!4> zvW6SRT(G#nA8?^qtk@#r&aE4UrBu?=Y2}~F-(@1r&qTG1P0yHb`RWO7dpbar1qdvq1L>VB%$^1JK zKmmsr6=Xo`2u;wK&@I@+Bx%G{1SMfRig&sI0t^+^qD~*l!ImQ$4KQfH-zd%iwmgVg zOKtK#@sieu2`OiPxCO-`9ZRaNjz?%F6J)!xLb=fE#$ZSWWjI>|cdMP!mBWu=*wh9v zW&^1VBI6b$J3Bd=!Oj^(o>;y0x|e{Bt`6On!XzfP9%Ys4T)1GW7!`sW!2IYy6GAc| zEVdXn8pJ=S13)?xn29Q+4hd(X>{?TNeq~J}C_CLFg_YnW#AM^ldPkY5`89#GIoD)F zSpc?133r9Dn~0%a{cuBMdaaFuaqi+Ryb@~)!zFM^ZbXE7~lijDgbS+>}zBqhQQ%xd#9i z_K~?11G<%6cIF~6q%!-Vsc6yX%IP$fe+*zHFZbhGx%HY{$X>kVjv`4kC{-(7WYY1$az$JUDO2#X!kfXr#qsG5x+WNCb%o7w=LFSzyShFPRU8{6xXr;&_<2Akgb2q zEaDMwOM)>ZNO?_&#;${BVoB(_*3FH~zUpRQ5}zN5p6n+W?;M2(67);TtC>(#`Eq{E zgjnbu-3OqJMxOA${f(cebe%Bn55J0mKa+D~w(j08Ky+S~iC}tS3iGrX@UC zXM8Y2>lT&ZKp=^F=o7_0m?F&JFADnW5HL$0}N=L))nN@Mu)9TMzsW32i(Te?Q|JT zxa0-BTD(+58i=SlxwJvgjuDz%5(R>3XVE$*CHA%36QmcBi_O`kSD!5jUW6>KxMzyZ zRT!(6w_qcAUpO%#c?VjA4J8kgg|7lD%J41(;KZz`&@$cT#}(m%(bf?v)Y2Co*;a@_ z4Lp8JG-am6uw9xos}xpxbJ|FlZb97g0H<5xV?jjEQIScK0B48!Y$lLNJYZk z4F*VTASVZ*VpSDRLrSaosRB!OS}oS2oXDFwK%7A+Lrc3jLr79W?gdU6XP_jQ7iJqg zX!U8L6Pa{}^)uKWrBJ_Ke4qkCSr(LB5P&FJNl)DEZY(~EAuyaQh2gr4iP6#%B6fyJ zOAP5qBT#izqJAu3`+$m~!o&bAy`L$xgMBPEJHnh<1QGs_$T1~ac!iMBOMYNXaYl*+ zlDGpA#M*T{%Li}wRY{t$784a{ogShfmMQ0j5HCK`3AdaYH%etSRGOfkY76patsyf?^ms15nv7;FFMC)pH_RQ2cZ;-$(K*?Vl+ee3~$7Ca6SVm6z^+;JXe7bwNl%82j!$FH6@0z!9!@K z(l|Y+tUi(vTeJ(>gJJj!=LLK%2<~WJQ8JL66dSj+STuZ1K_55X6A`L^D^vp2{6>Q1 ztG`z>L3ApWh;gU5SoII@XCD&Bk?;`nuBE&!AG?@IAjca{5EI-{K67!?eRJCj>-*cs zrMS6XN{rv``|5_SQ1x3H{+)-JNdUmFTm4hFowPw8nQq9R#5#HbJ#y~Aa&jU%H$)Bd zdfwUh5jO~2LcS!Tqd07iTB$3VMY@B7QsLEfxC}@!?(C*+EZ&N@b$*K&*nN8!=&tB> zTEg4+t7E?oE3&L$Nxi?gvAgjY(;HcJP_78?_)@a1_eEec$)T2wfx>v~(<=m8#itD3 zfk8ymj&UgV)QL=TGvZlFN;NrL?YAJm>?Y!u;Np2;U)oZuV9%c3OYD(v?hkfg79R!(#Jcc+AVp$nfrxd|R{%Tlm zmBvBIW_^7iS%`#G75I<2&2*I&UCue`w#6jnb{NzE7zX8xydcU3w@SAhStkH5Pu{>8X~3QX=v!?P-iXhm##U%|;j9Djm_)HWf1n zn57ah`jbt4q8$Fb1U4b*hTFxD9UAOO2;wAO8m^d)a$S|SomhuR*Gj-!6tE5#ZJRwwNXI}_b}} z*xR;9@V!DnFw3kfW>A6<6iXG|f(_gj3AThcFq&XJnof0U?=hl%F$qsoz((Og6wTH4 ztT;>DGj1TMU*1@hms zmneudA2_h$i-_TqH5~0RN7*N-1w#TcYeOJk-EdJ$$IWy89BHzIVq#+uBpVWFcd;j{ zafXQytMCzi>1lASoCEglh4VF2g>@7R>Sb6jrt&IUI3}jgNlA46n&&I598*AKpvajSiFN2uEnY@Q*;=mN=AVRcua!p}$HUHVF9zZn5x51#cFV>gaH6 zpDc=3t53k65S@ri*bLzwHiY%lPd;ZFj;2XS+*=rIZEum`)CJAa#u3#maJL}whXku{ zO&YdfH`u1@gBsBeWh8)#h!rAWi_I-BUSUf}jaH61$0%OUc!a_1u)9_4P?T*VEp%X* zYmh1uOcuQ@w{1f?(_rRs!#C23%9x^i)Ncugzj)@BBrJ@;w=t&M8l886ayfO{f*{Ny zLKfogIG7DFR;q+LOk=30QvT2_mLYS$0L*+0yiNo)J1spaAI^+h4&N=3Wo;b9pQ2{8 z>bRc;m^wBWun>jeMpM6XZHu*SfEkF110}%<+_v}h)-ES?IJgB{ayAhsv)^=(h;H}D zev|sOvPwvqEr^n!AfQ4nvEet@x|G2~m(6505C7z%Dszj&6iCD@LnYvs`h{zXlho*K z#ldIdDa*NS^m!u8NdR!$)vg;>ctLAP%)62_JCF9e?&-(08g&NPW&D|wt|h9hBn zOYrY;+2RNS9!>_!94c=aYFidQh_D&>G+UH|4A79w5R2yISk1OukVQ#QW}>8b?XsMK zz1nk-LPe_>zl=^d_9IoO;_HMCx)_(5(4{+ zr>O2BjKQNbYD+;-_1O4uj1$n#rHR5W>|IyC3axuETdxUsU>gdd2OJcm2}U? z7`8-I#)ODKYqFhe46Cy&?7r5K=*~HRPtn*2fKA_0JdRifrl_NgRz<;@-5l3sX9ZFc z;MGQm4wW^uACLVAlQogsQE9p%7xwXzCo~dD#w;e#M#ntw6ZR;GTKous?w{G)_}0XT z=mFoCbgrm?EKj^&BoPp8_#L2+wJk$pkPz={NvkMrQt@A$IFS2<8EzUxYHw1xfu=)n z85qln!2)!KqV|gifPY)brQ0`Rm|OOMfIWosLCljcPWqM*|BW
+-!}{W3(S&V~I~1myJ0*`tLp`Q={Y?BmtCsRUa+(DW*x{C|7~o|JZ*# z5YNk)m^6~`E9NA4^qH~*VHbknu_u>~q+|EkQ4D_^W#SWtTlU$R<7a$a;I5uFAU5e9 zqjG+h9Q92^i^kF*<|j#FbiC3lEl#u3q&7!P!W=_PtcDPs2mpBrxAXLyBs$6x3HL}S z&NCuAH6nENOJLg&&=8ygYm5wqDfHy$iAE#Qb?O{3Sw*jY$3(}V%{y)yXo(sD-558- zLJT|n?315Gvlm9=97iJ4zvQ&3w6Lhc7H$2H9Y{b9M}-RUFST z{t)}BvzK(L9RrVhJOj$y)2J-Y-7I$o3<=Go0jnFcHs&xRr#9o@`Bnv>Wb%s{=0Cx$ z*iO_WiovlHG~)J2P>Ui52D28ni#F-C>QVhHhQoMRfN1EN`RYT|ur z_w44LgOn4}6%7OcDtC?btwsTrjtQ{*shx@7Y`|+KXq5eFa;_x!Nn@{J<7air^%}CMA`4vdKtKGh(d!8Xj?GkWS2Z3_`?Mq9b22#OCxTRQykii=2 zh|&G4oUyR^Y#E6`>_ZbtK%@T+YbXYZ@D3#PGTqo1mluz2bfY4;=_#NKiFJOv?2R=m zb)TQt3iF`TAM2a?W%rKCBW90TaSfJ4%;qH4W~2xF@wg-7Hr00qIhXYxLkg)m`jj!HPo~ejzgkQ_P?<&^*>*m zo~Z6?^PBFPQNGcRlz>@a))o6q;!dHs4xUgI^RSJu+eYt0|eU2=0%w zZZC=VfE}F*r2j0co0yn)jqmFOfAT>TJqF!_9jM2?D! zFl6r&d0YatiI?h`6K?kaM**Lt?AW^mf6O8^i{}8hKU8~YRJ(=cBx*jCJQoSERapCj zXoiPX6q8Gs;2gffg!P|$9+R@X9+#9*v3#s%?RkQ12L1}2I%;ay%JRGbV41g=y>*CB zyC;uW(j|rsPWgBeo)Q(Yujq(q+c}We(vz@XINdpq#x*fEiIGdROuUcW_)SM7>Wniq zZKe&*KpdCwWSnU@?Tee6xV`t4!BrK2oCpUFo>PP1j?t(u1+eVCL>3?{2NF-I`$RXW za6Q8A+n3qixV>QkRnm^qecsJbrQ!MQ@bFLpi9$|-21yCo9dd8~%hnYF@P`U71tBc8641~omB(tM^Z2>o zir0$doM`UX5*E6@X;ua>Oc*+VP=>SVl?WP9Z?ylm-?+by19Dv>ZJ2)377i(OatY72 zv$`Y<<8VUI^I?{RQ|U&!Q*fzDc7!9=Mf3*J><9T)AAJV9wuJ7sHYcGkO2FRUT$qFi zuT_MOz>eV=?t3yvSlz(-0))WYfc1BC8HxJ}C@lm~s7yEhUD=Q6F+vV`Y<%L%BIujY zbBf+ER>C!?kb!DBidLCWHT?i{B;mMBU@8(R>P3PM$3U^=3#zk-@UoOuSz9t8`h!oh zHf$?HZIa-!lo3z+N9eQ2*`Az6ECGDpV|I>OnBDhJHO|!7a;5G16Sh*xt(mddu&?Py zul zBz&UgzNlCq3F}NiBhyj6YMk8%TSr1wS%6NGc9C4{Hv|ffC6XA18VRbqEhZhn&h)i6 zmL+@1A-Sl?WjP38CpUTa(ZYru}}s zGQy1fHH9dw=6auWe2o}UyMtYhjxbKJ$;RHZo!!0tgTv=X$Fmm~aClXg`;SPC>p&o?Wy_vRYM1t5ADhWmTIJ&d)ylz<#zZ zC3Jm6j)|_MWv!mKAW6t>hQ6wMNFZdx799~CHyulYv}2X&r~hyNhA`+pj8h984K07G zQ`Wj~;j%=qdC{3s&7SI-K0Kc7$`9)l0X!vw6GEjd3Ejd(J!U%iQ@`r|-PeG=4Ug!6 zko4-{BI3N{nL3rQCyEZ+fF9bbMlwpeq#~g>&~Fe{RLYUqHL{bhG5&mldwp{dM5CH$ z#HG%|qRL8nv{!`m1t@I(Pj0E(hI~VV)Ngg~J-b5L9e6~+=Mg-dXL?MOiRRgG2_Y&I zO*JZEFt@$f#kjtEdB2jx#CrM4uTmo0y$kOyK``xYMsU9FA|6aYh#UD>icIF~$i$Pu zjSytRy)EZFlTw2R+NEb(5&dMNfH?ZpU4}xbci6)7J7gMD0U3*NB%vc+zQX;@e1&FV z@6}_1fC*8!TUsU1K2gCdgk=afK=OVv_c5lB$r*GId&SBO`-H2?F=; z*`dic@yyA*vfp5*#sLy-va3+t$2dgzEx;*d?gU0TKqHAp0|`c^k+Vwu(^qnUN;`?M z>B?gw{X02$4v2t(@gBZkT5F|<=K)G63}#sLC2h#Y2cHwY2!|VZ107dvSRF(;F9?5* zTZN;K+(0{Hl*R^#&;jmI7*2^mXta;}y1I+L{fIDiN}O5pzpCMQn{pGl3vq~3s@~K& zKBawy4Q~^iK~ zMiatgs8t8LmS2)0SEXBJ9Bc`>d&2^sl6HpLI*=sKB=_d>^bvcdv}eABNe?^Y5%uV~>pPRVfiC-*xo=dlfmXYj&;x^K6f6 zf@Kn12erh5m8JHGt}_k_`c}=H?-EXr6zZ5z95m`7=@u(=J1F|^7njat9FB>1zRJ~<-Q2ciENC`P)x99$he31 zNz;DobaHn7&b#lu|BJJJj75kiHww7;$93r{)b?WI$1ZCm8G#$QEk*I)WS^*rD z1D6n2*f8m*rfed$sQ0^pLn0uCAa32j);|UbDgrpEGwX@Nz_QD*vcn<5z;^7KLCc8= zLkLRAeTO*}N<#1uNd~Q`1KOnHk#t_tRVMKlp_orf<64c@AZ*H5y-XBp^?yJ z&ptWU^1ZDOzcV73k{v@Na{=9{@5_RxkIJRvsqE%tF(9L461BwJaR=$?vSy+|%dqyQ z<`hKhrsp3ghHbYoa}pUrzoP$EDOU_%ZSF{Va{bC;#bL?z)n)~KPdhB(*xJQ%aBpjj zuX{%`FYXR;xV#~&!Rghb=W7vjo_GNa+?(l#3JUFf7Ok&7 zuk}49&#y4H`>XN$M zcf|Ih_>kev&P1n6nMfM$E6Qr()UMs6FwjWyRrf{e6APL1>f;U>!^=#$YCL{bp?jPU z7+%nQQ4BT1-x6o2qer`7c~B|fymj);Ml7n1gd=2IrJAe0b#~ToFLpov#EDOO!k!tm z44}gpU_`{!PFNRQ$M`H;%V<4)A43b2W+Kd+5f}8xQRE{xS2prk zPUtl zASRWDP&*5J;^OG50ocN;pZSq;_ent+;5=341$VO+p!M(B(E`0!howWlqH4kn%GcUv1-dUUQyQ-04hnk zMA9zxA{%9KAy{cxJ8>jTmiMZ5IkEbpK*}Wp6!~vF+8=}3;(sYjM*jw0Bx4`(45nRa zxJh>@O(2x8q2qd~-A`pjbxUTi!14$?P56hy{r*#Xi1@g%!06{rGO&FDvXjb^%(%3Y zE-Ulmv>`?alG9|pB(~t(Be~MaR1gA?&ei&Iv7Fv<1g@{9Py>0-^Nzh^O%5+Vx}Cn( zPtkQeUBoIvcK4q-{~JwTuWrrPujNPowYVd3Dqx*`XB<4Hj*X!YDUJt+1 zwO`lKx2G%HeX9G{NM}1l@Qw@2#KL-ocGxBM0xCDfD~DiK1`k70ohAa05-^LynUdZ( zM;O6w1PD>qutVh_2PtugeedYS!ZJJi0+B^|1YO*JwYFg{_9f$O*0RJ-_E)d1e8zp$ zy&>?^ll?o#PP&gH7op5V!LxsNX*GTOq}3sb0Yb^i{+k;sdF`iliy4#D+b8?qzH`1m z#=kr*h?{w`|8n7cr|=uxtg*Z(-R;mmw_oDZME(h>eEr7h93n#+P>=U~(B~4skt}wG zT){Qb1NQ^JPrFEyB$=#@|HAIBeb~@!!qQYMp&T^!xF(z3SU|L< zq&xkBPz*5t60N~g41RsYZzw4sx^`1unrnKC|G`(727NfV`8AAX-;1r z)uT^Ow?A+RAWSRbRN8XRu=WKu#zXz=YsWzlAvYvNsHcSriAC!?C63Uzt#I;mCd7G6 zVCxb!_Smdc1^jUygWV>{J5d=90oEsvMm?h#ClX%(ATMxGi(84+V=H|xR zy?p!snX^x-r}L_*`gBzN5$x9R=k(%*bBCN^%S)^<_8pl5r9K_rl38)zx}Up0^^mWe z7cBlzO~FR-eh_RWb|wf8K*0BD6&>h7QEThL)PEk!m*Q`%5vA=J^-$kW(n{!Nvi0WfHJ~Ok{Lp>zDMQ85&AsGq9lnd zq(u-|+p6bex2Yscz4T!4j;O)tI< zD(|CG6Cu|r!NVn;99$#@N<_uysSr5&b&1dS_+8vxBcw7S?t-(vxL>Z8R|q2E@*WtQ z4ym`_HxJMbd6!6Otiyx}suMCGQJLhwHWCTP0(6!bQ}%d5paIcRz=LvLO4dpfV~YlL z2qL4p(3&%$<9)p->Ow*Sf&0SqU|3jUf8zAC0K0R2IlG$@qh@MX40^f(^|AQPY!*Z@ z1gJ|wX<}J4vhnJ{R>`>ql0MIfb+l0>x$}{N zPQtzep!GQW6M8Xr)8-te0nVklxU+%pWOa0{IV@T+Ahv<(fl8eHY|r9I4oR#q#=42o ziXd(x;F``oPYZ%8StL1c8^`jWdT~)WTez^hXc~LLx(k;3$9*D2Sm14iMN%AZ%WUBgl@O&-Zukz31Gj z>e*ehIbB`%p7-N-e&_f2{@_hR2@x?_YjUS&LYI`iPzAC37=a$v^53rtw$BoWHkfb% z()R$ZM`bTT%@5pAauGQxb^VDASd|11EijxXJ@mZ|Z>JRPE%V+#~l6AYoWq6;n5EUr}a*jvRFRy(yOz3vcL zYt%xixn{OH9@$!a!277gu`pb;z2I_jdWG!;=VBW$hB^-6d41U)59`Z7d3;xivqUW7 zF3#)KGzOE6PKG{$+RNj8hSm^7r0H<{6Bs$KFzldQ$5JmaIUVKo;b1+ex1gV#0=F^q z<+|zi%fri5-YZR8x=Zp${yfBGj1voZF#3s^0Jz#LnY{F2wGLh~xGRXp{fY`+vr$pZ z6T4RCLRL?R89}ukE&{}b{$N1FJJ^(jm@lqXc0z|N7HGoAkdgtSD9k;-bTh%{GYr)W z(n<@d3pNHAG#pv1^2`jSaCB>Oi$}MfWJmYG>S6l!@bs;)$GCmn^Rhy?w;=* z9)g26J={+fGVVEF_0(QxC)FAupc*{|sn#%`JE($uj5g5CGKeUIci%qWD(&8Xn7@KL zjXNz^*-7b-khxTVK1_gxgKBoTIW!3R}%;)6ljCp;C9a~+H=o$d8$awAKERFD+UtY>v#o6+7 z0`h=(4Mwe=E>+Awv}_6=c}?tfxGk9BG<6yAg~b=kQwRsN1!^jWGliz)3E)Q|+-*f` zS50t1aqGT*?eFL}zVmot>DT1TL7qV!V52sUIajR~qY)h4_{mM#kW)0SZ#9({Ja`H$Za7gA`6T z*X3laE(Vt!g1~mGdx~lt9MY8*b~Tc?rh`s*;R5x`R+(p`;WQC#pzOr)G0t|*Aocml zo51xILrthWSFf?*Y~di8fj9Y7_zDt{oQntc=eKVID#=3)cIIS4wlWw83 zFkJ&d0ap^{%Nv8_a?tsNTu#^*HV|TWQcFY7!aOsNytfOiOoyWXKY*s~ceN=29)Gk&ad8dWSFP?AXx4E=EV z?pz)q?F|!;#>@@?K-uh5Aij{6$HDLflZk5`2PFbf%sZUkFF!0@Fa@^;oc1GM6TUVq zQb5J7!xj4c&a~1ZW6ZBI&@;Ge;qL(AW?r8+#q`=>Ujx{wxZohN25a!{u?Z>CQUe~f za_1zBMFsoNFa5Z(?yx`5+I9VUc%=QOMxRL8&u^f+#Ot`pVX$-tGy8EU^H37+yR@|OmY(9 zP+{tHamnJu*uS8RCSyN=x-rCVWPRIqGYh7DIT$Hd7`}no1iy3G;&SA@1sv{G0M>vm z{7il-ry&#;Cv=Rr87qj5tkq*eANHI(@Kds7W@Q?ve1O2F$DR>zQ*d2;zTCddlN6UV z&j*i-Xad2fLp97#ySb&pq1CIm;t_{dy8pE@JiWsO3wuf+ce^P@H>W{5r}j~G>}I;E zur_l0y7<(aOJ(WgmS0R$FhS0ef#oO55tmZK`A)isf+v}UQ+A$}iAKw&0k%UElaB|8 zF~mX#Z#>&f`5P!J^MV&I)ONHZpaKzA+tTuT2u>ypRFL#0glk8hWGN*f10Uc`)=CBg z>dOW25$k$lk2yz>^TL_032|j;968_$PM|PHxI1_7>W62TuSu-`r9`CU>=<3C zy9iu>B%$Uz9nIzGlnChe-8;i=2)?Hbfh9-}Wl&6r57+=%2Qc#th4bq1fX?8_%^s9{ zl6tY&Ltn_UZXz$hIUlcU<{)HJ45Lg4pw42Ftt3R4tNWPMQs`*$VbBG>0X z3FPqv(&FxWIrBP@E^$H#(Q4!HF49>)xdfyfOV?0O*_4H@yA0VGmQL>#leBMzhpi8v zq)ksBrR`oteBA<(GC{cDTZPuPPweR-1Z3!=gPBsw=*=90Cq}e@Lk*$#CfH}&Icjue z1}tg@#BAjT-~i?wWFu~OyZd?k1q(BkH;I+p#G@XZ0W3_j2tE>6=e&C%cScVfPiUr( z9zXsbtJ_Z8Kttu9nX+(ClI&Cb8=MAhdgmRlDJwp{yq{5wRZKdXh;cQOGEm6dUgGLV z_z3RvycpX8_V4<2jD5k#ssg~2KP|%<*YGlNJ06>?!mch8&K{dP#LMF(a5O6Sy3KLi z1NVF<9{XEpnP?6@EXZ*yh{s;^RVE}v9Z7e3*PN?jEso*l@|W&jmN#!LCfXHo7f039 zg?v6Y1~*`ip(smt>wK@*u%GHT>hR`{C-Ws^NM1vb13ZL+%lUi6T6;Vg!x}iU>(h&B zfQl-3Gi(7%TV`7CkG(Z{R0-DMVD~71HeSQYe;jwP;MesdIH%U+UD+OTi>dFPAMW{j z2uED2budI!gT17Gy$P>L$V{0L2rVVgunyWT`ZRcFXJO}G;B-MaR^%5GgJAYAMq`2@ zVr5gUV=o;r!0QPXG#H@E>9a9Nuk^l)8!>ThxzAz|XSRGnZ#H7WdDalpXY*hu1PUGz z*}UQnPKSOIhlaEdK>?eMc+kht8b_5QtTk?iY~E(S->ah-#6?W+CU5P98HYpKj9+nH zX0RVN5!4cWkTW#wkQ(I&yn@jXkT!yeND)ExK2UyC+Pr6rAWP5%qR4Jk@L~np2xUg? z_GCKgwr}}`Um2s67=jh&raoPvg$-62w_*-2JX=Ow#tkf>(VyqQ|x6r0iR z4O(@92zC#)Dnk%N4#comCW;{x76*QdcvI5+4Tx{nE2Z|p0YQOe8 z_jy&{#xbr{;M?Pckm8Q-Fpr4y!${clsorRT6aiCo2~+Pph$S>~)ZRCn094qx0ujvg zIfA6+vXW{i`P7=7TbS@5sG~b5Kj5?(lbgq&Z7v@bY_EuGkDp~OQV`FTin9J?+68 zYYcU&vrY)(oT;p5GaT*bjk|ziY4>m)M}wMf8#UlOTe&7_Prn_yhllg4q9Y6di~})m z%BUUSem8DxRm60lMVY_D$_o>Q9qcg{zQnrXunj}iU9Kbp3}`K!E3n{r*<(<)Jwt9y zk6brkUk_lBoqe+(GekziVSR*{1eMj+Q3^&vVu6199a!naR#1 zTYc2<=AqoU!W=zRrO5o8<7~b_v>)7Ik&R)IQIK$=S04`&DK6pm246%Vm5>6E0U5Q_j={asfKPHM$eb(#zsY``HN&B~ z&?pBMuF?9aQ=XISVAN<>Y2c1 zZoJ{>AhI<9BdZBRY2Ykn+}3wjL&TN(8f;(RaY8gU zuv>y@SzJGEV#8JB^WhFTf}V2JI4;*fNL3yFB9{`5nv6TAD|Z6qaDpsjLJ~L8EY1mt zR^UV`nlb4rogn}cR9`7MF~xxM0&^2ibxXm}(oL@2Z!>$0Xr`jK(3~(QEFh8s;_HP6 z$GIcHZhDPe{}8`?=^TonVE1s%NZaMeqX}bj*{?|xF~;P9&q>TSEU)p8Z8_+lpf?uV zmAHYIgt?+~^1l!BHNfj`bD&jC#OW!Y%qX2u4r!78P~^%mqk;r7;g49O95@;gTc2*F zhWR^4kl_v$kI{p?rbK|fDzG@``3W%y^Yvh)n$4Qd(sUm$-y2ue40jN7FC?0VA7s|s zUaqImDz_eQt-XoZ*Vm1vvfkp9eURaC;2tB??zzaa^?nFT$Li9&&l&u(_NWG+Gw18Ph?u4_Moaw-A8~vnFvD zIYU$Os@53SALygbL_6xmpeTrR8mD$PL(?KX4FoICNk9Y~#gi^_B9Y6j z%C59z`D^)r3YQb-D}PF_-0*?|kf@U}<~G<26z(WN3837LlMejiHkR7&aL>0(Mk!AL zlSA-`gd0P3u*>Snuh>C~wwP70+5>P%wnX3T3xLlmuut4H0TkkvJeXf&L4o4|e1KHW z#d9c6!PY|Y6~la9DSRl_ilGST7yTy8YO%=RCPA=20RaFLKG)Minn8^Sz%i71?h23! zeC222Ko5&q~JTmgeyc$!|1q!pg~>Km!-raFTy zo*I>d*9cP6dF|7}6WcGr6R%^l(##sjKs19iZV18$`M_Bwry&x}3(~l-Pr-v!9Wj>- zAFR8nO3%vDk!bZ7=QDjLJ~}AUJM7qdd5K?w=$(Nq*h6%2aD73hOBjFL0W+TyzS<;B zSEehcARJ}V{mle1dIwP#5G2rFa!7QQZ;475VOhToCKNE>!YvCpO2mL58v_Bx!LPFl zOm9dOf0@1CI=Ujcv9}WU1esvy@XB_8h=7NRUnnxQqf6XjF7E(fh^x9MjacnA#-KCy z0fbT&CYch?!{0eew8#VTB<}$pxZNQ^B^4%4*Jeo*hB`Z3AmW!?uM znTRg}hN#|@{L#QV!jWSH<}|7ct%a`L%3u=i?;h*e4Ff0uq}U{!L7k9c)yX}~V;uWJ znihgGXd4XYd2p3LiZujI8!46$5WHB9WO;lt6A(L2Id3dVNP;nqaToxFdf)6_R7WmK zw!X1+bxs;+jhjLx$;&{hPdE@PqcLoiWLkPN$Lo;MV!k;Ke~)~#ht@gOMv}Q#?-G2P zk>rGTjZOPUA#))F;ds#m`pl>wxf!%NT)ceEIlzuAr~YJ!{vB_ z)OtMTmI;pcbh|l82Djj=e1!9xyq3Q$447RU;P=)}BpS^oDlY(&ZX$~$EO1$# z{ooa&?n38P1Br=9Dp|7@D}MX%Xn$|_%vf^VH}B;2%3hhkrC{;d##&ut9i$|PDTV;q zL_->Et=quKiSf*RKbT#BgX6#J*qjQ$=JXh4sM}CHa@owsbN=D!88CkCp*;Df`^N;W zfEc8YuquB0!#A0_H}3p0;FCU(ehtI!o(PxjC+)lUa(N;>=eikbIl4JaQhv^YrMT8548wyvQ0+jZPRJ4Ba92bbW#aV#F3Wo_Mo5ROr}3jNm3}<6)4Zl#-PLm{lXO z^7?hdQFvqlE(CsbvUlZMZ~s-ys*y2!kMvwA5u6TRI?M`Mfh|`FF(3Yc_~VUlH}Wo* z2-Xw>XTc>W03|7Ncfp`qq4-`6Z7y1!n22N;i&C&3nlfVFZXF}9YOS956<0>+Md&jb zd(&N1>H;F;=L?w-;X$RWGSYf6Z;0 z(^)5gK78&T@N$?R0y;X`S^-YRzrm-tfuSi2We)Oaqd~j^6wdG#jUBAp?7YeIZ8SQ~ zPQ8curG-kHe+!%=0V%O~<+$2$d3|d(5Qa5JEopjjT3aZY@I_dYazx@2l;%D6_2Mwm z0N0v1tWUnYP%tp2W~~bHjH|VmN1z#d-2%MT`4U>Q-4$?>zPj{uok<>Hixx(a0A3z!`nyL=E z47CChHA#I+^Mi;o9PD0+rm%V3eUN$XDH(cyTO|^8`ohs7Hd=tDE&vawMTh>c6plZ0 zbA zLP&CwVj$BP5ZA@9tekEk4d}i%LtGSe4jB$6g4om}>yR8OZ!XrsMSx#Hr}uDg5lZH5 zCd`nqP+F8%(J70eT#^9=DLV{uoGlBhBbDoA!xyxMC=v-PX@s{$7EQ%&-(vSOxFw?4S78J^a?>C6hN=!LAT%5ysIyk(mP3rJ5wZ+3m5v^c= zb!AI>XJZd<>TI~X&TF1t*IGkf#aBT{WeG4~(pl#zORiek3?Y(J< zOg)+EWiz#vZzLXWbx`AgKfw57kLV2=DgvBHd?Wpgd6J;B@;R`j!_Oc0b%r|iE^!+a zUJ=|OG6A~y*6heTA)v|uN&p)@?$FuTHOG@%B(-R{7m`o2WMSJp$`zTgmhE%qcZrUw zgGRz>kqoDywFpZ~mmvlNoQ%C5C*$qe;h9B63{(}aW;0j`J2e8_5KL*diu6U|CALmtgh|d8k86mRHhQr#ZEvyxMZXc#iId{`-OTgX*WCJH{U_yptmdX`_DkR>yQ3baG zEkk2~AzXWQp~1@*u`?JjX@9y)iw6Qygm$Y1r#?io7HCr)6O!5Tn0Chx5%%C5uNX!S z%)#*N1S_vp`e{1NBlHAxcb`jAArlrKqKWb%HfK;z6-dwg%#dHSG*>yKT`W*YOs}y-?KQCzaEk}2GD09`Hl>*XpgWF$}qzH*os zDmdBw+5J0Q#Wb*QYd2`4OZFkUtSMYV$*{)2+XiI}wxe1AiECeNC z8v>>ky#z}W&h93~=VyVml&x^CD(X$xpcUZx3M7%OHmueirY z=S5)+62Y>(iV6M5yu&(ok`_oL8Fk+mK&;IYd)P)9bOUIsaXMO!VUJO<0Z3K@<6C?w zJNZJ=Z}*qm+(hJrmKVo($b}776~jLVQ0i6_WsAo3Y^<}^IO5=|L@+m2TqGoIxwnC9 zC9)^>ncG_#&Gi~XZj7xiCU*&#K#uhf%vB6g6)~^2=UYr&Ady4xiOneRNL-g6VbzrK z&%T{x8-hRtEKh!Jt8Y2!U_eC;;Oo+3UrOuKz)A-GoU6(}o;r4g#*$3Hi6ABIGro>E z1N#C|tZl#Q>m?cidQGlfg}a405dp)-mN5&!Rjj9h?miF32gxN0fu;aWmLIQWM9ZG# z_BCRm0?Jg}0lM<0*>>6d>Fk0nHbWpa7NwFsIKay%lPTk7NdzJyvtR+?7Q#|{w`?i+ zjIg@^jduDlU|zrLEHw~ZTpTL;k8xt@J`1$t=6KZ^;dzDOlbIW7g{1;;N1NOV5HoxT zoLt^o*uyS&6sT!FK(FjO zcV_PxIDlhYeP4kLBb-C8jRJiP6-ZIyjR|ynwXjEhKD?3$U5NvMEGA*KF840zS2lra zJ&Vpv>}2HY^C6Oo>tpmH7)%(Hv|FZ=$zW^6@U{X!Jeg>PIf*dT!%qSdl+L`r%Q7E0 zILj1)?S>IUm<=Qp&|yJ5cobW$x=j5e4wglQY&a|f8Co)IKqBIcvy_oZr#8K9hUS}j zM$AzL-5xNjSi=`MCwkzJ5!^&O{f5s51#33AR^yB}cS&7zY6WD|XA~`J0=I>AM#i|L zQ{nVDMiM0Uws=CGCcrbG-^4@%RoKMLvBjAko8Rv{C*ZEw`e$myWfKu3QX2VJ z6s;rj8=t0xRq2(WEEIj0U07I72l?O#coj2>g`!xV5{X27bJYK(6M$3;kfZ{_Wx_lJfN`x)Bp5u|O^UcoYA1fW4JVFi-J~lEDu891ts#t!*V~e&JErYm zDXAH@nmUH1!KK;#!R5*Qp<6RvRZe=%wTJDrovtSLEHesWoh&@?>H;0e8b>Gex7*?V zzW-t}a8u~$6;hDwC|Ruo-ING(>}@Y!sc@hTv8r>iYY2zpdQrZ(&xSNj#sP3XX>1Fv z2Gd@JQuyqdY4&`Sf%14b9ufxtj@E*sq^Bc4$m)-A!Q=3sd^L@AkMZ3ngaFU3_WZH=49$Y^t9ol;BUX| z@-&&UrC#q1K{swzVaxKKu5!Sg=HXH zML~qpL0c!DAW?Zi1gH&mCbxXo);p~lDBj%mM(}rypr|gTm|^Bc5v^R8 zX^c5QCEE$%B#B51JQxwLT$em`5j`$a2knMp=0)o-t1cMhzAF~B^ z0+s|Ls>+JmAT%1H9)gXaA((~>06$fs$V%I`-Mxi{s?S55K~!CsXEIuGGtgmd5CshL z2rdg+2H|*ZG(c_Z&?@tRE(J!H8%;oUi2O%zU0iXtgWhbwDAX0SwR)?$T~8)K3kXV% zIt-6${0s^!Vgn=fWHe%wZ%&$1+UHx1kz|{5415)gO2JzT-hk}@OvKQIiwbm$8$%FD zxgFy64oyq~kM9lEZ;v2pxCPfHgK5{#!A8===y3pKFy}{MlWcGS1I-)9h|~zgw*Yh{ zPBO_bcgBTQZ*qVW4-d5k-t^7ewXSdWW&;>|>~@4sf$lJLE#G8e;^YVWpuQGgH4z1J zq5vt^YyzpeQ_EYiNkFJ}vyPr^|v!dL+D?j+*YJsRtgKKup~F}tm*>a=B7huy3d8*^Jv&d6t7sBx07wZCpHnc zV|R-dt-npo`CHJCY>jUcf*!DmJ}~K{IB5`LICwQ=zaR*-ffBZ8{;E>PiACY=M00l7 zYy(dPD|Os90N(;>uKB7p#W$o<9{}0a#)lnA@l9ZWf)OU%0mv*UajF1Q52nTX(DSnf z5h%D#jSZ7;3*HWRszHY6T)Ei0N*hQwqMk6wJIFwUBI@(CLBWLq0^g(Em?XqH4a!8D z0^}AVtzqqz?Itz`LH`InJj9Bz%~gDUtyW+KvBN-r=IB_j=GT4&kNYkPC*eUtrwgmU z(!ngNJH&Llo5VW+5{Ki$o*gIbbvG`pZ5CQKdlh1AwlOfnL5hQD8t(*$R0U8j9Cw)` z8_(@H95ea`#t=5oTL0ETUnXD%!UIK1*~rLn5<-mb6TWWm83=NWbkb{Vs@I_DBgnlI4N)u!i^H! zuiBtEo@0WHP+iw(Q_*F*G6t9vWjA1Dnup>#!&*E6p^W36;CO_D9QieYD5kv0WnM`=d%hmd!SUS}F7L#>fX2sErT;FEU}q78K?lbg+L?eb}Tz$|9t zOq%wf(_u$4Lqr_}zUL;a9rgP&lQbRf3ZNQrIsh;+)kM~YoKxMf9KePfTt?#oXM|hj zg_%()eXbKYwpfchtOshDPlEvnMnqiw)hph&ZjOrZ$&}NLJAHt%5T(@I3QtKx*qUC9 zb&jI_swwQ^W#x$3fR#0VW7-_mpjcDp*V`vk7h4SdTsXheL2WyLfF=zA=g~wU@G?5D zx!$?SPPTaRCz4yN&21Q$X*_9u$*&I*fuu>4Xt)5a=$NjM4}LohouJZQrRjYvC-UI&jE`kbeACp^Q4S7pDZOiQxyh>A=aPB`qACl*HlA z9^(vu1r|)F@zRnKf+i^hnp;RIOEet@s|4cSsuRr%vvxPTe)oq%fYC5e=!E=gjfOSA zo~O&I18$OvfQYvF-FancB7g%y(1F8n)sd7TFVZ677>se>m$#L1SN-moiJRP-0tb>4 zBTgQ|-i)MB=Q!ks*;Mx+Zd`!EL<3?8cUgyO6E$^PSeMmyZWe|BB$VNpAXDj`LE5PK zoeRV>*ONM^O=@^s^mEw|n87)40I(9R+RedEzM*`ZxZBnNej?r!E0c0|w!1MWQ<1lT zD?&6*?5>1mz?EpiEH9x0q#{x}HYwTObeDxWy3HK|6>mox-u7fdB=%_o7v^@Y05wmI z4PZ6LBMf3v@U~^^g%yAjv4vrqcGP5TnwCiXx3G(CM4YV#k-r#rcU)7ajYuICd?OK( zF?g%JqRYp!fyWw)C`&To_A6$Q*x_11q%k5Ro5<@X3qdT&{3Md9&w0^>ozn(1mSAxf zG3#n23Bi$J3`C$sUvwH42@I)-_{?o9Wjj(Tv@rC9P{p-#1aE9t!fE|xi@7W)JQ;e# zah#b7v@wEXs)3v|O-J947a-xV7Q$<0R6A35_}aM_-rI2J?BHS|6AQZ``gIR$;2A%X zp^%7$p`v@FPo=Xqtdqm2KZLE$#sU(FzudG)*%}NPVf^s4b3Dt;~gw!5#ZdOa-;)Qnry#1 z9XGc_vX530ma&KBrx8ZDFp=PH!>v6(|7a6Cazcd^Yt5yM*y5Ba9SDK=#RojyvScVQ z8W`z{k75ZsImO}{hV6!4K{!$%n<*<`rIhjv0qJf5wgLPW@!CW}@F0nAWh`)!@giX# zmJ*{dJ5m^HP|J`vENn6i6EXg2H{m>Mb!c-f-kAmrgdZ8ii+E29f5NYq^nfXDG!k~T zZ@Wh3rV}lglue&+BZoD9XfT!e3QS8ZZc0u(bScSDTDHR8oj=)#lTB0u3{cRKLRTbU z!E30_1~C%jI|HeZ4vhePmT=O6NQuF1G<484gAqsC%<8Hs{F!Yzb%*=;G#O2i&jqH~ zteAF!i&Wf&QtIxkyB;j_fNKiJM{qYMC1_$XS5(vz8Npr7A96xtmo*%~8;gI|X}=?8 zjMxN4F#%;Ffb5_G$)?BiHFG;!DZ3b!aljx9A(~8Hs!pyzzCfAC{gAT4E*1|zI6V=? za6A((vturUX^*bFFCngmO>M}6nt(BE)+vt6*|IFqF(NjBF2F(IWJJ@PqAYeE5GQuF zY?IUKGXlEENrDpr`2qVh8~ZHjBKwMGIg*K?teC}?Ax0I0yVJeJHcE`$^#eedb71@W z1n`)rYl}nyXlvk|Mxuc#H-<0XX-@`4p@a`^L;~hjcE}p2Bz}n*sjvXc53pRBq-P~ z2yy`AQM4D=2u2FYI)bqNl2*WjW26!b)sLvU>=kbG**tK#6{NjfArX{=dWsBOV%k@y z%~zrQgTZ9!>cJXhR7a(WbR{F?VFz6R1m8y-@8WI(>LI*iK6Y0&9GDKI?qgimHG}XH z1^ESUM;vmTANI}e%?@_cAE%ZxzBmR5tJ;c8A2B{0Hzu!++rC! zgmm!b8apWt=K6~rFXHA7C7Xt#zzSmK%MA-35Vy(av<3L<4$#Aho|_omt|39I2Iz&j zFC%)+d4%xoC}{$o0f)>rcA;css>ncL2i=5Por3B@m<` z9y8)!=OrLmBSF?cjJEhz5cZ<7g4Z!Hkht84cSx^1eg*IvSPBe`Hb|jRd_vU4dFS}G!stE^}7WN35C|#_zEJu;=Pr78rumF&6*Qi&P^7#7cL|? zI^kDfx~!s%mDj+uBVz@Qjf0lp1ciecl`L0XAVN%*wQ#ZFHJbvHEOc%rSDEh^h9pBY zPy|@)ZZDa!e!V@0*}g^h=R6tYba1z1^kbuCaSUXRcbfEk{N%jRYb zHz*D%t}Zs5j#dRNr)n;s*`0A=#uC(j4P>X8jImHSR`iMxj4aC5x%f1W6@LwrmHi-= zFg~Yqg?)l9kO{|8$El-~UzU@3>v&I;H<><~?o0jtav+-HH9>)qHKvTGj-1e8PpU=) z217ImQb8@8;IJ;Jhf#aw`o-d!;XQHr7&&cX*SJ6h$=e~!xJq{t+qf0u%<{*I0#COu_OzZW8R~;=z!PjrEBKj=KL4xK%2D|)2C9C--a!BFC;EAMDce=WTEy@9k@dmeA4qA>gDS=o}K}1UufXW559RdNTvbo(P z@TT8pSl@N=OM_W6+PtXxBEb-tQnYkVkGiA{?F8MXVkc^&H{&TbAh&|cB_+Tmw%}r_ zJJ|m>S?5Ka2GS)O*(VsOm*34zCisUKI+8#Ki0R;v8hcPJoJfdRS_2clkf0olWWQZU zRM5@@)bn-`M3W;j6u2VpXkOCG0j2~aIsN6ASsk)L4a7NPH9_xgqk4^N+c=ws(MmZR zyI8k0QC4TGfziI@RYWA{3f%LR(ZR5rQ=SuPGQga-tb9k`8~kc;6w&4E?`Z!yF{ zB48Cm9}FeH^tgvHICG`;&uu#rpzIRVm8j+t*^FY@asjU?ux2iLFUT=uEX=lty@SIt znm9%B720{o!+n4>g@Y$orxxvlNCB2Gh7Kr z7AZKx5&TPdn`t5nf+AA%8klR#jxQObiqFJ+K|=|74P-9tzZaht)<2lFvh2f~(b}Q5 zPIZ`h9*PvG?z!+gsJ0swiDZ)72<|eaiEwY@8aEJkQE+mGf+8CeP2kW7K){KfD7Pl3 zumFL8MP`U29C8{ncv{#dq-b{9X#4OJ&Gpt=%|SbeA&`J#k9&di>?Tv5>+JwHIk2ZW z**RG>al__L2TK{>mmv%#2EYW@L0+_a;|6rK77Dbm`f9YHdR%Q%k~l9C922;sHX0>t zN6j2AHsqIxHmGGB17erp2M*iDTK2s))4j=OHBa?uXBX z$Kg}qWB@v8(BsVd)sGqPUG+gKT5s?kK9xbA_^+qCv@pm3{*$bDgD3R;t-@CvErRcc z{^rZOJQYx(dw=)nInA(J^hM^WL2Z|Xmv2$|LAGyJk*GtwF^Rx_+1qB9>M~(L zQdhQv%9tu5n&GnLO42LWgW3Mc1^*u&ypuI% z1w|+q2!*N6S7tfs09el6uh#f4f4tsm0ieM(uxgIG!5ybU5Lpb^;8N|)Hu7RmYAQ&W zc!{-EEXFPOZOF^5^l;rKKSt1U2tL}q6ZmCR(8LpI1xY{-gX%LTgltR@Z|t0~*Uq&8 z@^@H7U|uS#8(!}ywu;$Y~pjMPQNbiRU-b0qSmZh0@MKBxpOW$1F$Dzzv zyDD4SEe!cBvWl}S$248I{R=kcT>wLXOT`)~Kvh#I@^UjTm#nzFHstnkn+t>t$3ntp zv5_EE*7Vcey*Fj!?qIm$0I3B(NH_>kLJ?2mmSU+>mqJHL3(iMsFcah}M|(hMON>^` z<=cf4Sqdo&1lLx@yGkJ>Y;x}r&hkL3iA8mC;$3!-19GXTbEKt1&nnkQ<`p9f#4Lh~ z8OZ&tEO~4~!GqVBX?0OSrctld?i;JbIkJyD8Ak!klT56u+d5ilg@xq|65w;+!^RP1 zt33bY7+@F{c?vi%+>v{bpY{?LyasAy|X#_~7#6_(kS0t?L*2*w=UdDvAhxncifZau2 z%sL>kvXjScW2Mz4u6rqewbA6>ghf_MC5clH-faRWJZM3PR6By+5yT_UxS0%rA|i?p zFR=;f-y8=ok(Oe2Rv$iZOt zcHVZh&#%zifMmeue!u)~U^9YX3nFvg*$0K#t&EF%!jb_LZI&aHrH={_Xz8;z@IZ_P zgeKfM=@{FR9Vil16P$*C-x!1d5SB&V=(2~-4tDou{y;&dn4mzygbJE`c~)B8D(?p* z9N_|XXn<&g)RTqoa0#pjuA$TO^V384JoYD{JzP)hkxubt&*%6GE6OqiyhL<9y+^wn zM@Rg1%3rPHta~fOYRBlhS!bi5`^q1Wh#$-C+M=iV`_USrw;o`Hs0x9r3Z6q16m8&aAZlO?YPLlA3)}*5OJIp+m!$j+#_hCc(8sW7yEX)2InbtUa%44{SUREp zG<~AK<^pxX7KSWsf$gOSB6dqzX62Q0Q`V54j5LUKFIW_FJsQQ zYFD|riyYf*4ApFc-aK)QMKiWl@f-~TgdXsjfE$GG0h~>#*!k``9N{j!oNrzVrsrM} zsP`B~*G;M=hIA{gPVmUN4Z$w%r6kd^dN$9#;$;ewuDCu`HFY$%yFV30 z5&*xm*_2O6Y}yk4`2L%Ea}S`w`3$@{zHo2Y3P%qV&=Z*Wi>c{Ufp>lzcj+@@aQ!=b zrl|Bvl)g)&*yI0v?(Ren06SD*d*>PF3U^P;RW5u$uTo+FGkvyq@65H5dw}3C?AByM z%Y&%_6Q{SOH7GdtyBr61j&_gV%$Lhr7yMfQO-I$;Bd!<0bIE)=oS(Z#AQA-6(MQ5< zG^&Pv89X23kV3o#i22(AO2QgOCtUn73ch=`dwS2ONBYLTLnH_WMwnhUY{ae|fQxna z&>!e)oYJVL+0W&jAs-J$N&w58*Y7Jw6ZUIfSMg;U#uC~7wdHP#YQIkV#Akxu|8#A zY(TOvu2=4x=q0xl!~1kknC0xjboRhKyEj|iJxsHouIjb>!VNR{c6ogGzw>%7xEOSWja^481Om-Up5y zZ0l9&IGVGGl86JtX?98$yo7v0TH@Enl^+%fr0_Z~5JUjt<~F-Ect8BN(^$|4DgWhS zA=vHPt}{LxGA)!ExT4jow`<#YcD2R3XZa*`ajvtjgn+B($io4s+rxV3s+@wz7T;{R z^1ezq5!^a})rzY*EKXLu0~s;48(5bkC_|nPO)GYrgtUaG+WSYZ(rUSpKxS zpru?0IUExeG-!8^<3rpO_pc{HW; zs^~Vy{FM>jwuy&UT!--H#e^u{Czw*j1X#>VEu z#~opeS_mLo-a&euFeE!shV93sb7L*r9 zl|l9JfQEY>daVxPJ7K2#RRh}!Um?wD*BUW~$ha>!lo7)-O63(Hk{L!HxKRl#K}f=D zJ7+FjnuaJxf|t0goDUS5b&wT^0WDdtck(yL6O-aDK@lbPCQeGd1}sk~OyO*&N^hHy z%V&ILrz-$TDi~GT=v)B{0uO7>Q0mr1Y#@+k(XZscrU2EMHr)((|bEQ&% z&n#PKo#nVxw9=DBCxp$@B=O2%4h9;z zef9AEp<+mB(g{+LiOaNl^8z@f2Xq3t1_$_{v=#wMycVwR~=AidZa1-l+!U~XWa3zgCPg5L}cDS1~Dg#1)|pS?*bq? z|DKI18tfk!j*6{?xo6DuNd{=odQJOoY9l)XkTs^yGUSdll9-PV- z8Q_D{C5f#9UZq4TiS(dC}n!~p^yXoe9au=R*=_@g%E;%!IHanP#Z7MwQ zb)_kC?OFOADTDNqwouYXx!NrKt|gI9@;Wg9P$Q+-MH!-!E-*nPqYWU#0SIDCX$fSB z>@THqRqdY7*2{!?F#MSCk?}TJCoGjjKF;$tH+L}Mv0f4p9N>`?RaFjuP(;||ulT`t=> zon6HOt^+<`r+Uxdlvd#ha9qQN;@+xHi6Rp7aBRHqc}2q-D64}Sa?h%+6=!+kjV5?3 zpe-Y;(hcq0-}~?nW0_+949jA23aRu7es})XUd|Bm2kR4dN%y;y+UG?h-@sxL^$Ivk z!iqLP;-HW;(!1!C-JE?!{8$JR0;n8_FHWuzW^<=ddiS)CG~2c-H=x8CpS6|M^e?y$J-G6X zmF&ezpbA%7mt zU$B~r*DdO|XSujAec*R+`aqY`LNQK7R(NCr@WK-dANItHpDX^ivc9&tvQjELT7{gLSB4?YA>+sC5k{>fue>;HZ%`tJYpSoG{4KNkI!KY1+r+6Nww&OZHk^p8LLc(ncJACJBm zKOX&Z^YQ56?&Hz-_8yPEeDHWQdjIk0Z~jf5{b!FypZ+f%kAD8QACF%C2R#2DACJEI z|2`f)`B$$+KmVJ5I{HfeiKx|mBKj|fPekM2c_R9`uYD-`-T&xA(dOU!P;~w8d?Dr4L8{ z^w&Nd{U^Wk;poLn3^&?UJ|M*Dsogewp=#L-!(df6T zKN{Wn{U42@MgQ^5fBO?tMJ^@q>>?e|YwB>i&52-MvplKX>;N(eHij6VZ47)+eIv zfA)#!Z-4ZY(HDN=lToMi$>`@gpN#&f|H)|oSO0AEKmE%;8@2w_)6rl2;M37>KmK&| zi>FUV|I1rXM{oSQPe%v8{&e(f|HISKlYhYH|NeCJ*bASEesA?tQR~*HqNo4fr=xHG zf1i$i{ISnO`ycvD^v2d_qQCc*&qRMx`)qWp_u1$Vf8(>!H~;Ququ==b&qg1A`I+dS z-+m_gzoySbzw*^*qE~+HndrCw_A}8Nzy3`0``>*gs{iNDM1T0Z&qTNW`)8t^fA~!F zTYvCO^zeV?`#*jrdg6o6Mt|l{KO4RN!&GCX^3|el^c0`(lKz4eeR5snuXEDA z$lKf0`<&(ZY0~J~HovF*dybqh+vsgaAGcawCf^;NY+I_^q)>@nzKwbIGGq24?b2KI zc}A}v(hj9lss>NL#NW?b+K0S+k9)%!eoo~Iq}QtpeCrV?hfbjIJ$lT-6^ zn>s$vD0LYXwfYH0ct+dQM)l}L%6*>izhLG6g0)05T;sb&XvTP5x6dz(Cv|}mVI9!ldW8L7*9rApI7QSp{XcV-D zl}j~$k-xsdXWv?{`ZXqM(YyS<#_xA+w6v}+crv2)4rwpQ<;LM#lw6_|t%2t)&6E*W z>t80NR?&>#xA}IR-&!>)=Zk!H_&p`xHAYCKUn9*!`}Z96bgTs$C-?3)WBeNL-{nn* z&xefhb$&m=zZtakDeJ9TqxQdOz0z)JSSqE~Kh459HNDHH_D;#3mw56NrIu`@pR#8S zTBi}xd_Te8T0PgJ@7Ub9u~8n)v&KxLrf;G<%6Ba~pauHOQr%#5T+7t<>(sT$jH?a$ z?q*!8P3^oE{UZPLT(xSozDA0-q9^%FeJpXjrbQ;Gge`hr+zxwKO>6_B2EZ0`Oeac$lzq{EE^JqV* zHDgjibrP?71q`zFtMe8r@x$<8`e?EQt5Gv~0=;)R5xO^pg zt-oD=wT9dXJ;?uZ-_;NG{5Af)p3aN*iDpPoRc?uSEYXW=%w^VJJ=IKVtY7BcH~D;u zQ59t=*-UE&UMHt^;B|i7D9&vEi!Qm@c2Ct$x3aIX&O~uU5uW1N1*NM!FQoY|sLQoH zn=O@~b=0$-l{m+>2DI|7F~&OAl|r@k>@TfWN9$hat>|wl+U2b~>s@=kMo&ItsnvJQ z(VndsoyKqQ?*ZxEDtka#+9TS77uIU6LY1O=yZn2Nad?9LtUhk0xm=63d8Uzg2>sBW znv&vz`t(%KpX8s$p+v43eR;`7L6lXaul1;Ty|9|Jmy}WzPoI1C`zd?p=1??c7JV(P zVUMykk`MU)I;k}O->|&Ouh|lH{SzveD*3V1)dx3TOI`6bcOPpbw)<>Nw@A0>GrP^~ri(W{_LjBYzy}+AY zerq0Hm%Q3SHlnLgVxj zUo!Od4Zn4K?=2M#&?bAm^@F~YEs=V*chp2&+|^Ds%P)h zOYunWk?WWF_Z}sx4E0O1eVe};jQ>kf!uW_c`64CVCdEtaPK|ZyCD z_NZT)tLxM>g9}i<6DvveHmvPRziD~iW99)!M`W1r1xoyPA5@a^+9cYjekm|xzos$ z*xkzcB!4OO18bMwf1cVj=GqA=#Zfhtto$WD-H3@p(!9SwX(~&9i8s?<4f{(YqcK*V z>sHH4(Z6o_pJMH4t+*EJt;&Bg+F%BE?XQ>k?M6zUuiG%} z)Lu0ITht?3FM6(%Qg_A!n$5>pW0R zx>(v8pug2#*K*CQM#lA0bl&l# zzEszmuajP5sWqUoUZZ^~+l{VfTD7{g>bv6^G?RL+T6FVp{E%y(a=M$LW=eCV6pmN@ zn3e7NBf21J>H4A+%Bi)a-)e(650!n+r)Z#S#|&;r?Qs-W)X|N^Lq<>I_mDNyuyvzb z;)~3N#^LKW7NWBH?nYLnXdkNt)vx|Mh?`6+&X-rj#c`f>hpX`ki>rk|H6@oxk_-(f7? zfC7J*4h4FTHNN=sL=-cYFF<*h{peJG!`4L$ z-s#^V{~CS&tM;QYc!6*As7ada=a=D6ewlCX)Bn~fu*OfB{T=?)^OOmamKrU6fqk^a z&kNCC;72#u_h{q4!6~p2t*1X%kHMqf=w@B~`6eq`ca(3lde-<<3)iC6=x6Qc3(*&- z`(yc!4yB#tZ&kvwHKJ#F_oaok;#W;6edp5Y_dY)w=Pl~g zNUP`X(B|x?1T}mv`ZxLc%l!OQG>m?7?q`MXKQ;I4C%J_xy?%buMpxsIDsFGYcGD7_r zj0$)_gCA<;_?cnP|0+ zp>N#ACg98~g6(0aBL^=(GFQ0&t^)4?3_nANRxr?0$Njj`?tugmz?iSbf?>hDEHE}+ zZ4hasi*ubC+wwLq%T?mw$>AS?qFaf*+4(B{?ct_d#riDUHmmKf@ItXb#WK@B91@TU zgf|T&0i+sX`eBC%T^L2FY;W$g3SJyBjzFx`^F3b_Xo_gjwOUt$#kNWi0CpC5Q#=mF zW2rK~+iKSU1!+}R{eE5T0aj8yyW=bBfg?k#4*oU7c`MgdK+y={N8SL`d38`jrJT^&03UdD znKi=dU^oD6ss?2CP2aP@5KA_&SJ>GB#ahMp6eC3DMiis)0+b5yz9+$|1Uj7{C$#m( z179wNs-P2F;EUiP0qY<@;gsX=4U7Yhhyk|HDuJTF+rtywc^&uyFyaB_vfSRJxhS$x6r zD-qS9fe*-V*Lz;@43kidwKdFzwOvx2rcUN{ft_*QuM!B)K)Zu4ReN=(@H7F`s$1PZ z_oT1{d>ZidP&`p5)o|`}w3@9RI7Zb;u;)uxnNpWp{Sl-VL{F7+k#|BxPK#4*4=Tf(h_23Bmpk@HE zTj~JEwi z(!}^kRxPzrz&VsKg6(4d3s7EQ)y`A=gzIcXTX$hm@E+iFiqlvNAT~?A+8|*&yZQG7 zzSJWe6~qE0=9=d>O2EqzdX?j#zU^szsYjF}K>LW6yBmxERFueF9CV_~1@@-Y1F*S8 ztO~s5y*YFVJg7E+$3Qj(5u-{lST*1V$JO)8V5a*G;^~Y4IKLi>B z%(sTEF;l@bmx48m=M;|NtWKCPUk359fEi|

~w4JRq%bTa_wD1qHjXTrdlnE6w;q^MF|P^fH$ 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%0A{bavy`0R`w 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�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 F!D1N2R#(BxA5-f&MY?TN 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�Oc8s8k>BRMa0m&}(ntAd-3VN3 z;MzstqWirn0vEYw7Nsw-k+?pMz%_@x{*ATdMcSkGGPe;p@_T0lF48ZprY?`bMfxS&>PFz`4$_N_z>&T6 zjlfa4Y;OdPRz~+V0@ob4Zz6D!s9d@=0!Q_c)CgQ0a3dOlBfqvr;Ap(}N8qB@M@}Pf zRL-;qdT5AN&g3_@5x5xO@*9C8ds7;Lqx9X>2prifYXpwc7ic7IW+QOq_tr+>$nV@n z;ubU#SKUb5;zr=8|K8b1+}(}9QGV}h1djYZ&a7zrH@{>c@HoR)_=!62i$NQ=JOac_G|r;MM^bCzG{*v4?u=3d{x<$Kk1;sOd|`3G+2K z-X=*M1;L9C%SXsh6i9y=K7WoUNek@!5oIs;R@dPN6ZlX-GWhvC%pR3jn!pf_!iDUa zf%9C%UPth6Zlt{`;O@SNJ?iH#Hqzc3z-_sRJxbpY5)ju-U>FdG z3zgp>;6`4=9@WQ$M%tSST*XD~b%nj2Jn7nXY6npc435MgM*joe4hHzXIdk28|E*uwTkIK)0C+x1Er|d|^ z=R)<{3z!svQ_CgH9<{$~fhh{dMM>XcVD1gah1sL}cmL&R_Pzz?L^v+Y z9_6=HF6L?YQ24j@oCM5Jfm6#RioJ2bl!oJ?q^}m32g7k;_Ne^U1G6U_7scLDU`~bO zqS$LUNs@ZuLqW|)6npkb=$rUZP;p`Qs6I+3;YAeqP*8DE?5&!FhXe7UpyHy~tDl5% z7as~LE{eTVlTcrI45s0t*t-gt0pYkP_B_B`7mf?FNBwuEz;MqO?!Q&Q-F*>zMi_Y! znD+(FfbSO?4-NqHoxrK(5|%!i9~dU%5E3qAuLW?I3+#pLQGQbzX)gmf*G246doBXz z_HbO3`gjCjU}Exl!CWZ6WUm`AY2mmi_OgM=4abG0kNU^$ zz|@B0qS$*LnDybfFne8L?-O8t6}W$EFMk8myx`*b#k;qpq2ahF=^F=3emE{HeU#q? zz$_2PMX~oXFmHw9!mfX5z4M^J@SITph+JPI+;@$@(R$8_2wdd)6|L9(9)XMWOSpd; ziECO2a7c)jk4}hh+X!4!;Ce;iBJ)AGevQD7S11ol2^1diIlCyl^SxqQ|L9NGJ_5je{4H;us2 z`S<$>Tx9uO4%~@G;K*;2DL8}#c0LaqC&_PI1TNAq>uT zxSf_^-96c3t)p|g>y#&Jq@EBgj#Pq>~(o-fX z5As(`#Pi+7NkjUlr}iH>adKr*aY4nz;-bk+drSVH)TCL1QZrjQT0qUoDK zqLTpK_&2ckHB#p>u$Ot$MU6o+;z(SB)Eh_Y*ar4qk}H^$j-!!DCLDV(NyhPNCi!vf z!=&*z_G8i{9B~H=R;J;Y%%n0L=}wS=z4n}J8l?F+4rkI597i!}8IEQqt;EsBq{nc? z9Rx6*#W9OXYjN~2=}jCd6$Yse$809;#BnT>_TfmY*ar5}dRo&nNQZEw)er;QClTEl z(n%cYtZR_Y;7I8UtRiC$%1!lVR9Gnmv75(WU^jF4tBiME}(l}Q63-Oi+RNb{Lw zf>g~U8PZ}V`61oOr16kynKTK~GA2!fbT5<2AknQTlpmxAnKU2LBTQNXX*H9UL3)Bo zDhal}>(n&~l zOgaN;E0ZivuX*%!lHDr%q|sKtls(4pA8pUhHadJpvuropBpTAC>>P8>m~1J>>2Z1; zMvr;43+Nm>B7JT;_~~FBO=zE-lg(fJH2*~&jysune8Vk&UZ<6?^x$(_&1Nqk?r0br$~<7YaM-^KS%P~$Egsz zFB3V*_Dg1qZ*-1i_l-s#BrnR&#tPJeLUkh6Cz-E9v{kaZC5Ktcwn*cgZnref=gpC9 zC>Z+dG+QN8_E z7;H<1ZQO~e3+)JH;(PPR*x_waU1eOYxy#WTG5e8g?xMzrt$-K2fJFx-I3#DY>9*2)lJ~YHJcKND+f1|FS%w;;`k#l zB?XTx!sa{mvA71Ud7W*x*k!$Tuj#h(eezO})IfI{K zJ4cSKI@3^@;0*5N->^Z@4S;PpjV;&QND+-F!Y0ZBp8W3M5!$e|jK0iLOvD5(pTBt* ztyfgGezOVwY&e2RIkr|s4x|kQIAHUhbTCqteS?CJ{?QD%!>;pXw%{&%N?mX#H-=1B zUkMuav5T*+2XmwW-{Ke1YN+rL$Z!YmD#NM39o))Z_vj41*RWz56!J(A65^|Ac#vsR zF39yr4{9;KdNTwhVc@YGw&^uxpf?=Lv=LFterND~(ufkoR(jLfjz#g+i$P1NbJI3* zw%}HVaRxsITuE=h8iWOuG}I_^t+J}!C`Eg6!%=z%)7I6%VX7)8-8`moLKBt~4jqVy zsthEHUMX5NFBVlyJ=YyvN6p@za>5)u_f{O*BHzNcssV|57nwCzZMsr|+ED4mW>16- zF6}J+)6lSJSD;(f(I$ZeY{XWXY#Z9IU1h(T*6ohg#t_5kzA!w940j~M7TeGlI!hQrD${G=7s9atRe1Fn1Vd#{TMduo zj=)tMoeOc)fPIv=##S}-j$e8;8i*W34|fNPscQuiC)GQ!>xfztMw%i>_V{%THf$hR zwfPJg40vRe@ie)1Y2st}8lNzKA1LvCsuSnqD{Fsp?S1SEVd#7upTOctV`l!7)-@BUg<~kQIug#o)h$ei%mH%n?zO0X-e~FsZ^u$<)dn9Fg5v5>UTc81XkEWY|Nf`%8& zvANNblH#rnJ_mp9+Nx*qM}_dQRwPL=2*Ag|r3H4rC0dRO7V$ zHj+(ct_-O`b^mQ@lja+-`8KU4@_}_Kq^qEgm6kx7#k%F=kXkd{8;~0CiDeg1ykFB3 zkhd{hZ%Dtg*mOv9na%>K6+W?29*)1USZYTBCM{88pHXACL0Z7Ld)3$kDg@)TT4vCIc;$IWrmA<;xKR(cFlEk3bqK;}c|27JGh>9*j=b^9Ul zT>cJ;50h+rY9q!*cBQ~BA(VlKHm9y^QETZ!+YV2_Jn>#C;rjV>p+G@y%C8j`(zOCM zD_*ExEi6>878a^k3k%h&g@x+X!b0_Gfq9_z&rgGF@YaS-x@0h7WMkVYuTjUI^K$T4 zHlbR^=2CT_S8eKxVz~HJDm8p6mHO{fDYBbDb}urMdi~#KQarM;GpXKeszG}#WAqpM zKVxDgQ*D@U+)Aqx39S0*Y|SMUQ2P80-_uo#C;!9vYSPk%viM$UGuJM>3?{42w42#o z?2zpXF5UMS_M62n&q@!i+LnG4aLiiYwFh^HYhjGe$CWMIwRG!2IyMTLe{`CD(9m2# z!*r&tPWjmpaWq$P$J=&#FbSP#uKKIjyd*U>Z2MseGwsSg@NZ+g0P_)=4I9XL`d0IT zzgT|07A$uS26rt38qglx$t*;R>xV?V%z8&Eqy_lIuqCf6na+Xld}5IUsT~u@P164F1aI6bIw0>5`JVjVa}XyQUyfcGvcVO$ zc2V`$2vI3YLB`waM16}wJRcLk@LN#g*A)*rPnXDkY+f7~(y-ths{!m)e4Y{?Urkw8 zno4jFX9xFGo$EETy(d_G9I;9?i#wLG;2bH-yVfqECJD^82u!>!xLuc=;2!h*^Sx$X z?#bWb3?A?a4mWrWlEN%r3jH6{qygbk@phavLK~5?lEBkRS16cO{oF*ZI&Y}BEG!pC z=~NTHE`I*mUNig2RHF-)P-f!)v%9>xC{U#SJxV=1;-Zy1y&MH)8>wVkQP0n~D!#fC zv*lig);q^6!qm4aEF;23)Pa1}O~oHce-lMOyD9 zi#EkxaE~3cr7O%;XOMnD6S)shHd8Aew;c1jYaLB?#108}b}S8*5PQpj_;rq0VFF3_ z#i0D~*I_Vk`4&57@1%{h@wEvy&t`_*L9}!lBu#F*@TBoE7nfH_NHFhzG*`E?KIDQl zm`S4{r7($lHl1l>>0XlPbt@r_V7kXt-C9U-_{6ZDp21=_sj(kJTEJqdXY<%Yka#bq zwrODuI-heLT_|yTbfLs`)W^9MntgCxDkPb4hpIXgB)W{lMTV-o5t5hbrl`6*A<^6+ zR=Nig_qIxneF0Jqi+x?yeF2GHyB8}RhBS#uCm`LxBwDDso=N8+@${wRJ6%Y|N+uk+ zE*BDQ;v6eYRdp*Ml{4MLs_schrA+rCj>SxR6-RF6JxEiS?qgN=BP7}~I##0JzHl7P z782Nq=ngKR*?}B9E9ZZ14!T#yd1^0Pxo8*PVV#yd+~{fXi)bEa4lZ3ut1;+^iAJ3Wj!hQfo74N zXR$`JGLF_v34#Qm8$N|2tw}|NA_)eH!e~6uS(~~N#w%0Vs*hse2InL)GUF z9(3pLcLZ(A#~LQVO4~F~-oE>>a=$y-fl` zS$d0^Z!`xqv(A*>2@Xmj(AIkV742jz`vN6}ts#{Dl-%A*EHxqIDU?a+r70CpsscnI z!c5hsR>E_ivc<;OHCdr>0v7g4M_xJuLrvRUgzv+ z4xS1AW?C{QaTq3}rX_*Ip|ntsS#`}x6o|dn9K)}A7S+uTUjp2tECJfk?fB%uM%SUr zJcrHD16ZVCqeKQ$a~7Xiw#Cg~O!DJ6kd0XrAn|LlLP-4lQwFIm5`pnE8|ybY<}v26 zxb0JQ+#h<+2P@F-;Ovg}l*7*8XL9f-ckrk^_=i2X%^rMDUi8J>F7a1M=J_KoX>it> z49<9aowH$!J6Pu)zGu#ntlHEVx(V|vJjugonnza0ETx12gEe{9z51&3DA2XdCL}hIi$vV}{EA+Lk1yJA+?tKn23f z*SAk|1{YJ|)?WMT6x=H@DJxu9-$Ign#e+_vCJTq49ByU)CN2y=EW&;ny3&y1PsM&uRCzp}beP_@mEh1VO+ zH(>Ggh6y2y1OeFS#H!~cq?W8IXwiU{cCf;RBVXvd4idj;uKMe$_(e1|96OHH6q=e? zV*HgViQ1uwrs00Mb~Rlb)7%;J@AY)O?5;_15C6TQhqE@*VBXQJL9U6Bhi|QDw?q0% zZopKBeQUZT0bk&R_a`5@QG#nF>>iLR9riJu=Wj-dM?oW^kK8fC{hpof`eA$B_k%n}UH z57DVis?5j8$wY9Zt!%WmJ;Y9F>^#PXJP-|mM0VU^rqe=yg>R_rq3}W1_;k8pCo?`| z`tUUY4q~OdRVg%`OCO^1152t|OR7vs4KP>Kvnz|3D~MWBk#rDg(AQ2ZA*tQUQaea7 zVW_-XF#(21EjPguOk+Jy@EAxu!7Eis#-cz1UGsNzV^A^jD`Ct;K9_58s|gc7K0QH) z!>aloWz3;lH!y)_g=;irWu2DNah=c|dcK&R35hSJo5o~|VYv2%#ASctp3j2gWi5!` zl$oJL^+l87Nbw-mGnUrf!J>}w<95aOu^-wv0w4(JI%n~R7GA06LrlQOh|fTLO!#1> z-Aya)Zdz&g%*SULK9AwE7N0tN_PK*W*75oVX(Vx0ZE3=D7_6f2@$2Gf46b2c=AXqi z;bo|Y`DbxaxE<-jb!+@0np(>!fq|5Caj|dSOjiRkZo5B=Y?*_fBEC27sY>PzbZt*( zi?x*BTF)dZJ8I~{EnAm=hxO4#r{k;XYDcc$O7||NObJlSvhzM7O_vqFB*b8 zx%>V}`9DcK*dd!LjTaU3>kQVOgl!wHYhg^T9W#lKQ8I1}QUOPdRnFiC%Cy2AL^|w~ z*+2@lC}v*%N9l4=uC1aw38IwQ75Mx)9SzV=FjSsG@?=UL{+f8z;nb>DH)Xm9Vvl9O zN}Oipe`KH|4DifSSx{RL1-FqkB9x215UkB~h48PLuXV+;oKq2Kxvyn?OIhMyu#Ng2 zKY35MVQUv8fG_Vq3W<;8UqQMT?L3xUXYl3yTTml((HSezWiXXwth5HwgG@)4yd3uv zq(_+UH&sWAeyf>|mg70j28oaTVB|@UsR5@FKU>TXbx`k7@hB@VhQpy8!ZF84=tU5=d#Q77}O0# z;%tUfvybV10ilKy=$wow3L(XD^emFT;BV?{@r%llS(&ee%XB^xsXAH+J<-J_T_}Ac z=$cc$^l&Sj3OFj8iNf(wpB4p4myj}8qAA2>I2p$;x>^t9r(&A5{BM>i<|Ogek0V_) zIho7~ke*ah^A}%z8n*(Oo+?x15yc*wN0!uMC5dR?d(_$?O-V4zP-^@l?U3Ct54vBAqee)B z6&hiD^+FP8J?aGr!KJT>b&YG8jvUaFG_z_ztFLB}Q0ZDg3C_a{&hw^NdV!`mne=3* z-u4=@1maN>J=VQy6T2&Hs5FD9 zsM$Q*>*9$0;s`vru>ur2ePi>KAPzZc}Uy4Yj`Bz?`9;ZRC z8V>YhMlHf9Sqd>4T8OkvOnwOxs;9*VMb9r1e!_E7G-f9V7*US42FzJ|2hBAxbC!qi zjE7_FK-fuckdD$=IsfmI@ztLJ3Tk}ya}b=hcX7A@4`Wrd-yz|O5^I+1TilY4Bw;>S zRd=2y=rwoH?3O&x3pi4x3yF2 zF=vSS|FwiMjW9QCV^o23U`7NIAsMHwg0qB}Tie*ojQCp8;E7tt>ES)!B zfi9N)o`Byn>Iogc;qV}&L}u?PNc@(q58t^Jx_!c}+yv=$W+ecLTbT`sTR8!VTR97f zTcJ5&0&K=gRgk#72Ox2Kk3!=kLm159B7qHT8 z35nlekB7v$v_B=k!G49R>j{b0Xkw*)ka)d0AoYVTMtWV1y%x#jX(@!neH26DK4w7T zK5m7?eausJZ$RR;{~4r2X8B7SeLiQzG{v&OMPA#QQsR>f2(U+fWcj%IR@pWy= zT2E@_Cnmi@ObK)&GzRs~pB?3X=~f*q#2Td7$s9-JtOOdMIfF~&Q|64$Ev3$Z7ElwQ zNSHqfCZQ_vQ9?8ylemwjO{AuWTQa)}gFJBtU9E75{BZ`MXeCq$(QHrQwgCxE3DqM< z>pgJ0Wb;alT}p^%w^+4HD5WeeWS5sB*`(JFDj}NPa%Q(vpXO3WLw`eylg$q`-4`>k ziJx;Op+!Fz?b8w~>=RN+5qakfy%%nq?ABhycD1n0{VR5at_msRXlbT3 z7xddpVx>!x+nj7w)^ZYgxQY%U(D{a!B$vq3GM*Z0r5KwiC=B|>ag? zLNwbexNS<&;a2EjEtzeFrMJrYR7;#isAm-8_#4gsBiugK66}Yj=t61dw#n{DaFr0v z_7lQ3$0%h&wZzeS54=ps=5rUZ`z*8D$=D3HAiGJ;Pd2Sn#;ilIP35cgf-U%_ggOYk z?zlw$Ut+epCB#Yz0izTr-YcxIsC+q=ta6FUm$L|U93LgrK?t}1I=7G8B5{YWltLNg zoip@aID_nFgR6u(2;sJAEh|RqMz%k`ilszhT*x+O5Q^qRN~nVnZo7`#Moef*sO~sg z?}6JTo3CBO?he)N7GWEI*x56hU0xPsbL&OyzNgwHdt{r!h0@FGk8ILQb(K&DA-o*+ zGrNYCu~JK%QClWADsawR5G72Rwv9@3Idl)3HP)<+44}_zGii?lVbe* z>?#9A=R&QeP6tN`?HQj^&n2??HBU*iCQ`FxZeyte$KMVrgGeRitl#n_CbF;xxi$l#PHS=>n zkAbZ}ryo-iiN9T0nkWriqBLMApt_?GAuya_6$Zs}9Mv6{sO~s}P(OmJglM+ga@zu; z*wy>jJaD^YlOB0fLNvQ{?=ME`Sz*NQhmAceRH*>J#`gK$^qu`zgaRfM81ZVcY;5*O zZ^*!2nt4XPag4Ed&w@VmJM0|%7<{aauw*yeVw8Gguc7HhCD`b(z&Lrfk)ouYmGoDF zt$xOm(g4TW`v7d8UKW^btf-tUHZ|)*_}-Nzv|U(fIcz{tK#H47uw7^$X1W}PyqUfMqwRk8b&`?&fZf==XGM3(2-lKvB+`*D8GH6m zo+XXRwvX;dsT!0#WWtRjjW_hXW`c3#4Ly_7(kkdD;`l*1e#4!MpLt98QFza3m584; z{sstA_Uw{C-Yg^AyT({lV&rcgG4ebhK^4*%o?v|pMfA)U|0?LO`ca z5C-K3AURQTmKd|gSbTo^;k&V{yfnYCq5@UZ&&X;4JHJ}7k!zsPehao_)m0Uu>?M`c zy@i39rR6uX_zE3>He^b|W_HM{*;-s$5yi$Wr=S0Oto(KTlh`+{52a zKRoT!(@ob+tzTUCMBJHIuDq)4iofnM{W*O12d;v?r*6G&?hR#a2kiNEb4Ej)J1?zC z+=2zWPVC*&-E;ksM}HeRz1j9_I!^tidguNp``?k1vg6hJzQ5kND=`rFYrD4#JB*7- z`lGTczvZAoDZl*UI@aZ%PlqOaxBuj>Q6HXqsBry1!#|%>yW^50PkfU3@uqth4*T@! z?A60Y4a#z!U;f9?WAcCRI`rju%V_&U*?$~Zctzm1shRZ+kFR?EQ17<(${{;GYgaWY z@wwWwuh?%~G3b*!YVVmc(y_phJ?vnc0WCkjd((!upZj{)2kFn3bpN~kuy;CKv-`)k zzihdG`O&-U=j6JV4msUy)lToBGwJR6rKXO(qw_n4ao2n_<5bsiEy}8sM&0+v)HQc5 z*?s42k3Ka$Y1-=lwzJ$f@4-(h9{u6A12gY$dhE&nKHu%@p_`g_vpGLn_{WT=etf^M z=c%);COOL=DIA*f)ugFi?%VA>Q-1%~{VLk-=`nKe+}B3UOSt3Xp$DHim{Qw*dy_va zk1kxl{Gsk?BQL$;$tUK#_jTHq+N*c2S-anH?>FzRyZ_{EwI_cbY5DS&H&>M3vG~lp z2lG5%(bR3XJ$M#_DOfwkvHZ2^21(Z-Vf^^Jzl!M<2TLkec<6QpYD74ZFSxc zEbk0B@}MPU|EYHGCkC!gPaTuf^~0HEx3>Q1sx$sXSF1O!J9l!XW$@WAyDvVzdjI-? zC+0Og(#E-O@l!`KKmW|rTw2h4Zo4;D)II$7^1I$C`BQ%O%?)=SoV@!#t9D=QF+RWM z{kyt+d3}Y)xa`n(6_c|b==}JEwr`(ZxUI)a#if6=Ft$z3H_v$bwvql5mh$tqlsA5? zNWJpmhgSX?yQce?sh;Pb88f_O|BIK_?JRCE4c(pE{E2p!m&T6&V!`omw~Z@&`KM_Q z-V^w+|C+ZZkJ{iLc;uRAcNQ+aw*RN2{<`M6l=l~&i<#B>trxn~o;sK>O}hQjjqSGm znf%!5em@<5?#|y=q~6x4#US6}#Q(lEs-<*a$9rG1-Q2%laKOm-{C|0lj;U_`!JCzD z7d*Xfw%&5!ixo*vxckkxzJB@r1A=45OVvY? z_BA~b*SZgGYWn^7H3vQ!UXgC?xc9navB`U$ zIgxZWc}uo?*|fg)-%hRW_P~w1l788@ZT({J*Xuw0WZA402( zocSGJPoKK4$EJPH{CsS2R?@h!>7~1R_WI)6jQMSf=4@J58+*sc=Kbb3SG{#UX$};*D?JX%kfd2{~GzGl=RX|tDmd)y!&>i-4AbZ^qIWx_{ZO7%o_Uh zJp(`cs_8TDt~i;ztLc`Xeh%&`+i>;3(ffLojBst3zD9auWUJdZ4;b>?kBdL=_|S%= zrYk4!9{x+)f*ViY(dMCk72SWSwft~8z2K4WZnT_D+?77JuK5c!U7N4CdUfx%(|_OB z-SS*<#^$G+SO59myuC9=Kl0_xU;Y02jI{%XWjs9Q)Hl_wW)0XH)8_5pH>Vu`;h#$$ zonhNQX3dSydoyE}cRg;MI->S!?~f&)3>Z7i+NR={D*4iWw}1R*$r;(7p? zpWP6&|FGxHqDfm!J&n6YHebHHsK5MZpO@;dk88hcUa)ZDnCe+D9|4 z7(*GL8IblIOQn0kBG8150>en5EQ-;#xOe<@6f;QjM&VNahh0!L(Xr_IDaN2&MU8*? zbId9gR$sxQSUrm_EMg2wS`M$tN0})si(nB(&uY$CN?P*A8wxenc)=o!o<&n%ErtJ? z(`%5%nlD&{(X+6g7E&6mUd_nWSoBl?1;XfA^ee^~15L3h{N2A`uf}?rD<#6{S*@Va zQkXM#7k&n$l*R{wMHoGcylAZIc6r}vtRDo6FnU%S9qXXCJt{}>MNimMAdH^X78 z%wB!fER97AX%q;fXT?LKu_hi$z+)DQFS-FhfiQX&U6yF9-39kPudy-(i!gfDB|6rR z1wZF#tX#n&jGjepN%M8G?o+JSDk)Sh3JIfUwbQYt*v53xSj&Yk!suCaDX00Ws?HAS zU&@jfVf3ua8H;L!!euMZC2PL63SWfLv)V(W`KrC@@k1JmmIWvfM$hU1O^ktB8U^3i zx4^AZ8s`LyFnSg(V`y#u`%@n;*H~QzoiKVJejGl$+31M|y(8;Z_W(pQz^eo)l2a9?ug;hge3~DTT9FGEF^sFnO z(Nbt1c1fMaS|?b9(X;3_fmZTA?^t+`#yTiigweBTNj1hmJ&3{&J3skZWBn;ugweB% z&}ePL+~rdY!vZXIrqcp~5g$FP8#G!iFPpV!qQ*)QEW+qn-5E=%<*L;qnCsPHLo>I;q5Hl7|c z_cM*<7A(SWOU2NbFq%-(V{~(ge$0*_NHgvnFhk+s^@u`E7`^u-#=>cgg~5xvjni1Q zf<+iTt3Nbay*EAc@_icXNx>qFo;856loTf3upnesut}&1qh}3dEKya`n!bO0r}^41 zScK8D2I+h~^X9scy7*DB2%~4=^bnG--HX@Xtob@8ScK8DQgpta{^wbb#-ax5H1Ln*@t6dRDrQ)!nxWOFKVf3t_&}jKGe82t?jdh=35k}7% zrel@7{l*I#YmHzLM$f|30lq}Ew52THsj)T-HDUBD45J~eYw{mBp|L&@EW+qnBN`FTOmV|I!Cvq<(^B!Z{72O$f`3*cihY9I0+owys#Lu?7p4nX^K!tt^bC zoY6A7n0II?vC*fee_Z1ZL5(uQo?wybM!~BURv!-CdtVVtfokH|Yp7dK%r5!hc=)_!)-g z@~t6VZ|t@s5_2uX;AF${wIhBTP8Z>JMl;MRf$6a7VGJALm~4h2Bx@VJ^To&(T3kmyFL>-)Xh=(b@j5-B!3_>* zDk}2xN~W*~yhvGLy%xdR5~2AxLi0m}=2V2Hh0+n>lBehD2u*T?W@LmWJ3=!xLNg~q z^FV~=1y!TueRG6nzp9}$Tk)p(T--w9Wu~ycQZb6=ScIk_Leo;2xTz(7d4#4{gl15L zW<-Q0GeUE{PJ{bQ<@uP+QWyj8XmSWe0wb%MN}+M68hX5uf>+fn6PjyP&ErBdnrX_) zi%J5xF-I(?is3&Kz+*|O=54|9tC~GR<5M;C_#}l)rYSGX&z)IRTud6brYSAK7)CD( zr+g8npp?GTi^Mez$GDh=;^@&!3U*aF;q(L)G)$|Y9X=*HDVhoqzNMY9% zoo3r4WS4~@qP`eL>L0T2)HuZRDNi(z!WaM>2(%TRLHhZ^ex!D1MluStxRfFp%#KDTxCs=f{h)+EGWo*B|M@<_wh zgsHxa!5IfM)>*+~7@aQ~-n47#X9iz?#Hsqaq$MH|7)IwSA6m^R;sRs?k*~j8d*9Spw+a@+=zJCFeDyk6GfHDE6)c9)`MOEx z>(s6(`!v?0g2ga8Uo=K*_4RU}VdWZYtza>X&KI4aVhmJY27I0@zH>^B+BV)5EQZnf zny<tKa1{8tY@hVi=vT62_wbMP*p~d0vUeVn2I@mSJ?h=me?dtGwCyTQ$}h;frB( zzRDO&X&dM5XMWXKty&=xfnjvMWl*8nU@?r&*Br)D z+Q!Yh-s`HdTGOQ+0>kKh-43l*hM#x*?Ng1_L$DY|=W8xwQ5jNSKL70A117a?3==Gd z(fOLE^R>p&dY#5{3l_uZe9dPprM_y~ZW*MpZV)Vn(fL}S^L6c$bFb1^WrD>pI$sMJ zOR2Agt4mWgR+V5ejLuh;&exe&%mX#n3c+F+oiDm_*V_Ej-Dk2i)*8WL7@e<0I$ui< z6~C&nHVGEP=zQJ5SW4TtY(o1QjrDmZ=a_% z)+xba7@e;gov)tq;Ey#{TpL6pFpSREozTV@lziD=oDi?Ex(F7-=zIkki;_a4&0jAJ zaA~amg2ga8UrSXM1gYoy*Yz~3ZQd+c45RZ^tFp+~6X$kZp|QpY7Q^U#-Njf&9I1b8 zd-?gle5$W$g2ga8Uw1Q>lCQ5fKX^i8Ef6e*(fL}&SaCQ~_|LNk|HxE*Jt$ZVqw}>K zSZ&<6f7yMp8tX;DVi=vTdsG(rntx@}pR-h7b%Mn(I$!syEGok_?GDe-SRV)$!{~h7 z$5={VKG*xqJdO30U@?r&*Zn$Q&YPU$HP#8iVi=vT6*^zn&gwf{W1SN$hSB+YK5Kzov%k3OKBTV-Bzvh3m7@e=j7)vR`FFrakRb%ZJ zEQZnfdR*sg`k3$HG}cMMVi@3X?H<>F|&9xDli8@W_Q&mrZr#(f` zd$qTPVi)UUf<+kpeUSg?Sev`NkLJdGV-7A@gweB}WUOX5QfNN=S11(LD}qHBJ?klG zw7b#|PJLyp#@Z!VgweB}*0JKhOU~9)C5MWN55mf<+iT z>lMZlO-EY$N{itdYqVeyM$dYcvD)ECVaCVJ(W8}Go+DU<(X(EICWh|;3+c!oD|%_H z7X^zjde-ZVB~C)p2;=5k}A2sAJ7sXZu`ZJttU%(X-xSETvwbNUX-hLHYKcU=c>o+Qe8i)1h$n!yko= zhu;boVf3uGq0ve{_gqs9Jc_R~f<+iTYcpdhzDhTZ4QU(gMDrw!p7jo6DfQ)hr|2%t zS6{&*jGk4;Sjs%pw*LKhHI^(`gweCMFxKTbQh4I4;9-q5MX(5?XTfwxEhnEIj^?kF z#;bxw7(Ht%V<{=LcHD}}QCPbLi!gfDHpWuQ@QJ~NXEfGf!6J;FwVkn)UfHf75emiE zS-~QVp0$Iqy5mTp_~e?Y8msSRTuT@|s~#HdOw_zzMMzI66fDB%Svwg^8QEIA{UW9t zN(xsB7Gdaim`^m;2ZBWyJ!>~KF$R%sDSu)SF4`1drv-~JdKOMsU^T^& z!ZTy9?yRwfh$cfAJ?lMaw3&k=w*w}Ximx2OB8;B(K4U4qPTLOqHP&r{MHoG6FJoPa zBZY4lWaHGW_*yAggweA;fF{P!g(wJDcn=q9ti6Io7(HtrG%<#5L_wIe`?C~{71y3? z38QCy2#r=6cQ?tv89_;*O|S@~XYFS!6gLZ>e=#DUv2q2AFx=8gp&>BWJgL+457|5Y zBVb|-w0pWftOJApE|C8$utLhn$hDes2M*56l3iYx$6?|-@S2o}RBM)5cFAs+iT31G z)hV*$91@XbHrwrXW=PHn zVb~n9*KX&IvEi`BkUdDJS*DEpumy2QM3%?lu=`{l5yHsK@|azAvy~#SO|i=Gnmkt7 zVYN82Onm2Jlre2xtO5o*tv0L8Z}yn@X2xoS+mw}M_GOtfJto@Un933x9IMgLX8L^| zkDO_;AyV1&SdAa-MV|d`R36_3S&i_S+%^;|k|km?()bp~Aqa;x(`%NkW)uA^HX}{h zE?Gqk%|f$s`7Cx5`Gt4<;8l(EnS8#?Ot(k&ni$)cnUTh~RaPNxlf&6x;`cb*epJ->l#DcN+pNZgi?W~eeG(MNt zZ_hHZ-JVr_x+l}+vUuHQld}J_7Ul3eEV9|Nk#75kstIU#8!jg<*hiC9TGIOqrfcyTfBcH?xlmvCYSs{OJYiAd}+q zXW3n@EUO87Ppbw}9X`JYRc1%C$=3Q~nioKqBQwinrv0f^c#6|vbID$h3?rjeZ8CPk zcA3%X(6UrzioqYYZxe0At*McFm&5IGnrLfoRh{hdWSTM9 z*|eml`fX;H(}BvQ&AU}(3d-B<@i;O~_}RQkoG0jk7haQ)N(z_CCcoN21eqT<4w*=2=7GrBOZfK=kEzp(ITZ{GC6 z0)LST8JAZS$Sf`QR2Bz{%8CnplW!`_4^#-kv_NTzB3IyT1450TqQkvAuOeVCFE1_E zwAv5ULv-3N-!)~#Z{96Y=PsK!j>ICM5zBs^OT_2u!GkW6~lpp&BKJ%G)`V6l*Obk((Km7^30@ zrBiWKawJNp;;58Jluo523dI}Ylp1}Ak{cYD7^db4j8LnI)EnVwBvh|f6RTHqG!m>= zb98FBnxiAsB8%#|Kq>bS1vfY-F+|0U=~POVB2dYpL?tT`sFX-lYN$#{eh87IP&FroL5Zg+X?W@n}^3QF^lp5?@q9WIVTQ3X7;8p@Joa#&qXuNPOh*%(jo zqMwX3YT6lT{4Gq3;G_f;;E<&zH5Hc^veoPG(6yg7=}h%u4(ra!!lnCI?V8DL%JjRv zevi$jB!(4Swk0D?HE1!LaFr^{nYi+RC#Uv`r;N18vqOL>PM5>(q-z6KEV>wI`F67eb75-JH$u_?$3yT(+jG+~a-(;~_Gwog%Y62IBc%PK0>ufufLWpIH z&1A)OqR;BHuw=8BO=YC1XNZhMo1ZAEON+&1u{d#E>vAa>K)f^LbyPaI7qfRJtTJ%rs&Z`Zj5Pi-D^;x~DFv$sxR^Af6w;j9 zHEo(~_h&ggZc@_)zKX}iGgf;1Sg;@h-i4Jhh`kI;1*FMNx5FxXvJkIZ6H3dn%UM3B z)r|-w%}U9uAVH-LvbtSXPnOFHgsMz-*&SZD*8>`ALsh4EWVg@jb)$*Hn#~&$l`NZm z&McP`X5b=UrC@ag7l0Pj8ZVoS)Z|%eP&G-bMAR>t}Q z#o+x}8Ht&0e0C`JEL5D$on_*07|Tdw zuNccnD=NuI-gnKDt!SV?f3oG4xOwQ3n@+I!Wg zMe7Dj3&3Uvnn9)obshS)wTq3(Rtpw>GTmlB7H*@xj4cXZEsS)hC(D=RMT5i@XU0&x zrA>{pxJ*{N)t}|U2%~#*TNHaJ1q^k$xz6c00b6iEskj?c^V3cQmR2-YRAyNdgM^E_FHNxK4z?=@pMX`4oZmk*d zp`iK=OCR0(8U@Vga9k97Wx&h{$A#IW@_PuF=fZJO?Ck{R<8WLQd%pqGL^K>VA5rWX zf$0~Hi()SenCruFQS8kEraBxKW-ku;eL`R$vT&jH@*HsME@F?`!N-lXcL=!S7qLh6 z+wv0p3K|~@|5kn@fRV#-VfiI{Q-HZO92cehRs!>6I4+94cY*md92dpjAB4G-auJe` zFniSBt^{UqI4+949AGAe3de=nqw4w`n4iLNQS8OxcJ*cW zP*CeF+Z=OYaN}_U9ZFq9-2XCcQ?ku z)UWu^V=i;?W_$dRtivXbsVFS3n3z6zPS%&rI&PR9>wOHz{iLn#fD(D5eY2QYYjKv(HtfLNB1$( z1^M)%Tj|ZdR;(;z`M#XCnWpWfjo2SM<%G;PuT!?G_BoT)4VHxx z8(_PGCk1a&U0?_lo<*kvol^GOYAtc*hEHkRU(k*y);Km?OPmzdrr5+8+ffIuOu?%k zY3mUfj$$okzq@8mqCaI9H;WAf7h$i%XHh3Il53LdcVO!$Y<%|VGVD-oO7GXM^3Ph? zKzkdqXBFfiWi>F}OgqBvoO+`<-Er@9n%qsBbo$y@TfO|gqfv`tZoUu zU>jNA%2JQkv#1r>!=AVjv&%D$op9*|+$pD(T4Y_MwOo@1i_+2iDS0)IB+~2HwN@gB7?IQwsb*uUr3z$Go<;j6f3ns2`yk!CrFE#)EyGH*9Q{sqeE0_G$d-(vC;%cbOnXY)ga;W z3(_=5G+DvcyO6pusS`{$H;jag(-u6(;ja-Nsv=3MU`KxFjz4@G2rdz_7t?j?5G!>E zn5DP^6TWLKngMexjh|eik%qI#_S5(%A)5UpMB;V-onx_CRE89nI*O%8VO_{RXAx=y za-@W4_EQikwi7r!f~7`bQ0_QG?}al6_18sg59PLT3{445SGZlh2X2>awr>K62+`7< zfjFcY$IueIkX>FDWOMFC>{4IhcF8%}rf?yrqzv`?mu2+eyS?-*XH}Sm=FH8r{MG_UA|wmc2m;GlSjuTzwq-% zYoDLL=&GxH9o)u_?+kCb>$4`8Z=at!^j_)HvwIJ3IxJl_yx&Kq{lAm8x7q*3xF_!V z@zA?(J=$*dl-k#yyk@}nZ3oGRmVCPT2Fvy(e3w`>chy)AUHawLGRN4M z#b4bwy<3;ZM!g^Z^LIC2yLW!`??2!5=jNG5jHjEu&~s|1=f8S(^80CDWIeLbm27?O z$^5Rj-Lt62?I#v1`77LwAE@IZ6O;wPONwI4MRLkra4 zC=dp$keBh1hZqAjPO@Ct|0fH#ABv%QPmFbE8(4b4x^5O5= zF*YgbOov7ZJQrk330yNp`HH_>Ge1IePlRSogob|Vp#*N{L**;}a?O7uG`|Z?Gs!40 zF(UCzRSoS3MIlzz^cEVLnsCeZ2+f2D4Nb0iP*{s}8s#-ogrQR9FNER@iT#|EX_8Zg zifXW#?&q4#q2Voo3_rQ-^i|u%MP{>kR8^)s34(02!FSZ}nSOW!%VRXKz4{5$Co|%DNI@whN z^iIKI7@e zvAz*3UN52fqRXThgECgqD*&3RC4WY+7)IxdE?KmE-L&VoUo=)bstg2%(dDZHw46op zLp~bxUaaaXNw643=Zh}=G+*CkPjzZ6hhQ;`&KE6hXg`(ztKYO-jWtQI7)Ix-v(A_I zo&n+7@aTrxsK**?3}l{Xsi{2#V|TwU3I?xJL%5?jrEFPF^tX^T@GHz*L#A+ zFgjm!fvlCG_qU8R&DW2D#V|TwbVky~jo<$+3aPIqG<+g3jLw%4TFuw;@y-#NuPX$L zVRXK_F_toJ*az=DtFh7ri(z!Wy6b$UtQb+Ev9bk=VRXKFFqSfI-2Up7*uYyEZD4=} zhSB*-)cMLPUjK&1su3)PVSMG4-1LQaqgMn*)6fgJ`I!MFrhBn?Pk>?!G)__&yYumH z6)V^tMc5&X{-;@2L!-T3zwgwqJsRt{U=c>o>cv=euA#8@ao1su)m9V>Vf3ut&}hB} zJ$AoIWAza%!suCj7)vxbX~QoYXKE~$U=c>ox`wf+z9|uE2DRljXh5D3#+2nG1Fq@wF zzqYcl{Qt1`9`I3AVb}PE4ZQ>r6p*qs1*AieqGmUno=q_cQba-;NhBmOg(eCJh#0US ziX9XiiXBC;p&(dLEC{Hmh@dD%R1{E=|2faxDHr1R&iB4w`~QCL)eL8!IcM%Ow>-)N$|@%1l;#!0;gHn@rFqU@0m%0Z){6 zo+TS!j_{gE9+#h*J-MKwc)~P(O_EAQ?Fu63888u0I`T6Y;L zRRy)>RqHOT>}pe~($jYtsv-aGVXeCi)zE)e)wWAoZ7mP*R%RC^mM4^y2g-|aC&PS% zHx*A`29pz_@d%=MXC!J6ZjD$^JEi;M-;324xc1y)#3`j@_#HJ+0;eoLMQT;7*G=5K*5*MGAoRsQ6?bZt)r?P+8Vmw0C zsPCZu{qSg%m8@r|hFB&6<}+0N2M$z^T=5yIdY)JD3{?t78%|)EYI}w%{Pf}AU!I{F zcp6Whp>o_1;PGF@-(TRZF-9V}+bYjIIWCaM<21*dlJhguzdf7s8;*5K9ghR2@En60 zwf*qd-W*kFV8V4E3g|0C{1T|aS73kQ8+qfqsDbY;Xpp#|8NNQ7yT0n&h?m~k&tk)ug^eR#3Wg<| z+JJAGf1EYEcXdRK6B`ku)m|J%(2&M)F}U$kfaDi1{`xxM$SgyvxSC^!q`~ z!MN6<=#vQ@{9fxi;bNMQgri+2aQbOq|Lor|dbX{~5{+>;3NwC3H|8BHZx}nWo+jd> zF|*9Z6U?P$>H~hrSY`dHu^1DqoIK;_j8plmQ==Ikg= zVYD4!24_3kc0nof)&$dkHrj54)=jj18oXm@4Ueek$bV{!w!CnVZ>RCEnf@)>zKer= zrjEx3@o&+VQCUm>`DptRjx+WDLbRRuzaZ2y(l%hEZ7vTxCE|IX8a$lyIi6yv_9oV} zHezen2@xIVN@+#B{!v2BhZ1M`U{HHI(C#w=Vm}7NA@VTOhFQZsRX-*yLMUEPKjNhZ zbKeF3^^YC;>ZS>&>L=6~JFC9~nl;2zRc{kU0NQz=nhgxI{fq-%1Rsp(iOWtijz-k; zMC8}^L=3{e0~(jpO*SkuF#;Q3O&W-L1R>bW82Wan8{Y4DdB==4*PMLfg-?!5$=mwT zwnht96mI*cd-jm~Zwts6%HKj4RhT+6J~Ey$S@Cf| zf5QMv?eUS_i|Mi1X@~4c$Ge(LJf8k~c|AV9{`=-PY*lyB{LjS4OQ4Xsv4p*e*%emQ zJI!juJl)uL&;adm{QoH84dxU45+ND!x`uIn`6ycUEvnRNi+HPht8+5{sbzk-5&OP7 zjaS?JG8*4LJk|#fL`510!+nripQ&f`JcW`O5M}T<=-2k_{gbf215Tyi;Bk^s8*eJk z?*njRV-4OL|H9h_`zs-oM~cDY@LSvQN??CG6)P^K8N7eLgR^Oral8VPciQ}%x07EUYjDi%zl|6lfwxO>tr4S^HpMSiA#Lu-nqt79*#08IW<9?UC z7hUjpz8|>Y4Fd153m%WxIR_g@s_lH)4uURtYzNscc)Y}#?t<4Iyyso;I)Jy;1&{T1 z$OVt>phGS;j#OK@aM(?9!D|NIOcy-H$we-B{G#$fm%Mc@c>Qp^PhIf3f#=P`#*u0( z7f$xNyWsIWhPmLe9b~%TG2e0*JeKqIE_iG&ce>&c<;<_) z5?t{3MOT>%9={B{#{~~lPS1K5JjRW~E_nQkuMsC-j`VNmJJ1EshvSTK!Rra$bQe69 z^TRH9oxywG1#bX&hg|R&$2(5I#*u0(m%-Sd>4L}jyuc;zVHZ4>%Ns6ujQ8KW;PH~D zLm@Vf^l#^z?1I-6$C>Sd$9dSzE_mmHx55Rl6L{-f@HjvC(glx?nEd8~$NFtrgpDKB zR(_mcb$7vIJRRK+$7=6lj5uT?3?j#OLuv7CFm;PE`-T<}|F=G1di-{S9A%YpJ&K1j2zqsTzxEf?fs;%BQ&*|ub*Brb-E_fV2VqEZ8zvEr-*pH^V z;IaG`yWlaNKI($U`P#ECc=f^Ca0U8!_ZwXBdV=?r3m)$y)vv_Hk!q_q#+U9cc=RvI1&?uKv9?#=driD;Bh|rvJg#xUW8A&X1&{smDHptR!F$IAkL~Ik7d+;B z%mt6_zQt5*9I3W?qknx}@K_&lE_n2BybB)vyT&E&E*Ct;zZYHb*pIfk;ISY5;eyBh z+jtr_j#OJYv;59;!Q*@~(glylyW9nj^?~)QwDfQO)wtlXTpn@3&c=S!Z?C2z0`9@}%s1&?vE*aeT}e2ohpk9VsJ9{c%2E_iFfTYCoY z%;yf9fLC!1HjY$VIXA%m>uTdUen`VZ_;4fhhSPZeh2O)yj6+WUKmH31S+L;0{2L9t zhxYQ3_yyeTgM64;f5+!6SQ6zoapq6rYW5pHU5lydhnGNB*B^*COoih+llq?7e>L|t zoE34)+g{w7p8Eo}i{^Mv{xNgT@$88Cx!@$+rQR4>GxvJdL4xe7TC zi}=>1bKfHTPHsOg@4$l`xVr%i#_9OJ-49JrSQ`y9BX z12=HszyG$+{fGnab>N*2yv2dnJMd};e%yiYbKqMYc&-Cab>I@<*?+b0HuTKwT-9>k zml5-pqxYG;Bh|r-23|Dh(BFTYnsYpH%C+W8Veg7~X>J`zJT(hdXMgY1x2C?CLtn>% z|M<%;g`XVwYX|wGUF(Y(iC3alko;Q%25kwb#QfwM#EH@ZeV+Z1!@ zDfOz~n4$fu8mcI_K)us=`2MN}H6IwpgqqEKg)w8J;}ymXo`G@Mf@T116vWqWZWgoz=siKp zfj$tl3g{z2{Ehpkf;Iwe7xWR(=Yn*tf%XXUAdKu2)C6e1pw>VK1a$>E zEQs%p`$f>jKt}~7038#Q1@xz&@jxd9l>ni*@&8mHuOJ4kdV+2RYAEPFpeBMI2Z|81 z8mNV!^+2rzZ2@X6XeSU}@r5Jr1?nK^2v8?Me*<+D)Bt{5AgCo!PeDGQ-hz4o^%FD% zXrQ1NpuvLDfrbhi3xro_A-5u+C_z;~(Sl|H#R^&olpyFXpkzT01EmUj7U(iTuL5NW zdIxBvplv{71nma8QqV!5@q&&6l zi@jbCCyDh0@f};m_`}Qeu`LmF1GZ&?7Gqm2=mBi`)5CDj6WCrO=p}5g6Z96gvju&K z?G%)HxaS9;xnlbjTcbzS!QAsaX$nn&j9%N?LY;t&KHVFL7hd5WKTvN$SwNoxc|D_m zJ`*$+h?7>YXFL%5rq`1Xv`tVE&{07pKzjw118o#k1++uZRG_y7%>epE&@7-I1kDBd zM$nBwrvxno`d-kjK;H^l0(3|a-(j^+(0xFR4qnf43q5S1$1Su9=q*t^3-qp_)j*#J zdfDQ=YN7QO+GwG7EVRW!A6aM{(8qGToj@A|?E+#P^Lln$yuCnw%ijG!b!6{Bpa?-n zfHuqCqd=Pk9S8bI(BDAD`Qr5r3WZy!frXk_sJVq&0&S6_;DwW(^@7>~{VvD{^pBvf zKnDeN2jUdN>*)o=x1D-D{ea#V8-7IY*)3=Y(076^2KrNwALyi@7@(g7B>?>_Ctp@r{(91xd3wjmk3qk9Fz7(_($ng0cpzUJY0`!5PkARK{+6L4>N@yogeL=f` z8VlMD)KJh~phklB12q+N5U7cuBS6gr9R)J-Rc}5hIpak${dh&4cOs$Y3u8W6%Oy2S zC*jnGo4lTRr>1r`Xv2qG+uA^!xni-3nwH0n&j&6M%cp8;n=o&E^@V3x+Qigs<-2a2 zQ(@y`dL6&y-xS^f*Z%728ZTamz#!C zNz*;}e47kBj{q4V{w1Kc!eekX5JRew2Lp?NI1m{goCRbA`+u*<6y6&7qUJ~A+-p>I z)bzv3Gu7b(*B=;>QnLwlm{9X+%?EPT!Ky(;e6XOzs)$5hlNjZ090pe(4Gd&md>qHc zhqYwQ|EK_2P=@=xtW$~yG74r4&=M(_0wAMcCR#ierBMji0vShH0Av)xoD+Ew^S5IN zO~`xGyp7|yvP&@T-(aaC#9GAh|Ni&C%i;fz?cl$!+}VBqA4+`C%D7HA2dEGJyt15% zaXrD%Ux7evTyIwk8V1``LD4|h2ucFFPEZEWY(b2Ma|PuB%@=eP&`p9WfEEdw4s@%a z>w#_;bQ92>f))eaE$AMg`vg4%v`o+wKo1Fe9_SH4>wq2?^cK*Qg5CpqTF@sz&k6bh zXtkg{Kx+j31hh`juRyN}`V(lqAkK<62;xj-lb{yZzALCLwp#>s#&)Zqp4fgOXaKgK z2^xm&PC?Pwekmvk+ph&>VEe70G1%@El#A^Tg08~$CqWh19uhPi+arRm$M!ctH(~pS zpvBmp5Ofc=e+zmD+f#y`z_v~u*6;H`Sak$w9Z&;7ZvkF@kcjjTdwkw&aF;DzHrvG#%S?LDyrODd;9_FBh~J z+tGsV!FH^mhp^2S^aQp%I?4~*0zvDrEfVw=wi5-thi$2#Pq4jO&==TN3EG3LarL|( zs4v=^*K-i4pCI1X=r8Cf&;UWlfd&fVy^cYGAo4^C3I`f2i1$A(64V4}h@j>`Lk01k z$i;$M0}T_@4(Jj=KA=klbp?tN)E&q#s25N`P(Pq(L4$yTf_Oh=zMzYNVg&htVg>OY zOPrttix&doOv>xweU}75SwM+`Mgb)W;=LH-$m4;M#g-4mX{=Z7&lr14U`r8OIZ&#g zDxfq$Q-RV2%>cSg&@7+~L34pJ1>Fc_9B&~|me_6u8X;&25GT!E&s`SpKA@3eTW;AN z1{x){$ALx*S_L#l(6bhAwS`^=xZ3M~|^bXK?L0fIeFA%5vUb*{MDCi(;oV$8GM}Wo&Ito-G=s3_ML4O043PLCF zlnLTJs&YYCamsVGAl~1r5XAddm4aFVRSDu1?x0ddakm3w)U1$Bq5NKh}J zDS~(huUOC^psNJ&d&}X1c;9ZSAV1JFK`}tn1@Ug(HG)DwGX$jrafa@ddvw$}W;14y2E#qsry!F$VQ!rXxD>lZSS%PAKjM0|;c#hcE+inoV_P;<-KF~rz zY==hVWed7RY^*o7YlkE+uH@L!j>wp zd}DBjpw-ykDd=TvmkN3n+q(p<$M$YP8?n7d&^y@PD`*S0%-bvX&F&X8=S1BpasO-E z08g#f)EHKyhFSpKh(E6^+-TIx`S{Gy4)>FR?hwRL&qMT<#_RET|5e?XQ9w0sSth1rX2I z&V`VnlR`1sj7PZ8!z@A@cM5YF86HB`-TaSv`iSjVRDmM zQ%^Om25agmvWEDF3{QxN{YxHLFudS{3v}7>-~!KS+!Y&|!tI6OY!(xMI^Zu{CLG-a zarkH>=u>Qa3zGYy_FH{f01W&f$cdQG zHMHztTHAvn>JHoDKYR|;HLNqb2DoxBQQ4@3AH8HPvP0Xug6LTan zF|Wo=%qw^k^Qzy(yi;Ie-d!*;??{-q*nzKf;L991)`5pQaBm0hQnBP;Fd7VTB znfMn6-sixdJMae%{H6o5f0@T&FE%mf1}5hG#KiM#d|-w$9;h_IRVK(W!6*}?nIO&t zmzZFX2`-%d2c)#H#e(Hl1hQB&qBBby>bq&C6z54YVG;GwkNz-N#&ChCacFR`hoZGrh z+wp#p`I7^Qn+^z=V%PK$v_-DyfS2-EodBUf1%Tb%Z1H9 zf_NzuhRd#Sx#$QN#Hmz$K^znt3F4s9R1m{+b3v~Iad|jn06a&~cG%ho+5^;1&|#pC zg8l^REQoWoZi47#cR?M1E)>)gsE?q*K>YFP`Cx|x!69qj46cWUnd1-=pyDCEvZ^(@h^a;=?LAO7QsxJ+|e!dtIr3v3KVxO4zIM-V4B=L*^h#L0%&vkRz= zAWmu83fc>Fo*>>{;#9=Az0_XN5!hIZUJq|Cbrf_Q$R~)mmlzP?82;}ph%K&*pawwQ z1T_KTgvKlF?0i8jVY@(3YamW?FcAXkA;<^BHiL^qpbG`DO>qi@ul9i$lra$k>LZ9P zsjr|RK%5|XJr@J@7vu*TASeci@88Bm2#C`sue6#-LFuruh2rua=psREE1X>6t9>92 z40yBzXqX_jkl})gfH?K?dP;yU5yW;8C8!E0AZRL(Ul3cvrGjPwu|Ie{VQm|E+Ez98 zw9UuASq(jH2Q~1t%{XT_s$5%j;Wd0VUVLw$2KdYY?0XnoIJMqpA>m%|JOQ7qdsoTBPAJH!s;(&LWgVa7 zvT`2NHzlXiS6Wtuqg0pX`*N#`OR9Pomm+6hRZ(%J4=c}cl@ecmb%C#{%$FmK{N7c? zlL~zK1$o6>d9IHqSXNzIn;Hc##(>#H^Jgl~dTuX~_PM}s4Oe(7?kUXm^@(Mh0S?R-kSw#h= zY=TjUU^I+)+bICypG#L}`UrM~n)W~Mp`@zG(wyf*uQ0T=PC%F9YC3sm(Q2h7W1Ax|hS zL~YV9$ymx$>I+T;GI>Np>WQtWKt-!v30Ya`1AG%IawhR?OLC^6l*OAov+^nncJU>Z&>`SHmWwYao(!#2Cu%sqxN>6O zobvLL;yl$?%DGaU^2XOar^<)bBrB@=<`$s86!?nS*vcmQu;Nt@v$x?eW#t8>eX-zV zzOSS#52q`KpHNXYNlrk^APvP|Ho-RujSwp{W}&IDLfD<4&nqg(H;YMHgfBfUBTIRs z@5qSFw02~0sY>axDEz_#t8?ZTl;CVx6S>ojf;D8?PF5T)Z$6ilYBXo5E`pIfl{B@ZylktJg2e}r^+)dGyU?U*X9 zp2@}e1}}$|1iL3w>JXW#Zh&GfqLbZA%X~#>f>_qG7lMqm!5&5}R!l2LHU*`H#ia#y z)W)0QOXU+gu++B3L)qjPOvtG&v5Eu7Fh>>ym@^b+sa2wM=#bgR80E?f7&cI_O9V|QrgUVa?DpPn5~QPEQl$9_$ zic2x-o>79zmrT^O87eV@$m5{O&DtYR|`mZ&B;2+Br;P{$jghSe%H zLirM7P|(r_q-b(V7{RBZ7O;YFr4nJjRauQNg%*ajgv(0Rs=4O5IQ7 zvn+2Sx*B;#PU!9E)us6uI`SraGO{w$eZkCvt2rT?lv9OVvA?)+~uMN-#$BE$8Zg zW>Yi{n2v>;QFA;EA7{<~Hm9D~rpa(r6mBT*)pF@RZJnll-lTTU2lR&{hU z2NWLXopRye$&?Q`%?cD?$uw3x`j&Mf2A4&SGl?@UK%~bMNIN%%Om&4JYg-3#)smSY z^FB0n&YL;pTD=B)M_}Gw%o&e_c{TE4bhApr!M}hL)(fm%|E91<>f+LJ&Zk*6yv#DE z7M^s>M|`Em6oJzWcKRH-^qGWtm)enAP&K6hV_`o`TJn8^BO?b!q8=QVPrR|#A;kG5#q{<^Ixg=UcO1ZU@9q|Sb$Q_Ey&B^Aj#QEb#88PWs%wA z<~2ps;n$HR|_>5~Wh(8FX&cpB)RTmka~2PV#>SrpDIe${|b zos}gyl|==WaxB#pDC9&%Y^Im;LC!^xS$Oin7~GJ@2(2Fl8IYvsR8*I7?U6a zn)7Be)|g$Z(xWbSWPr^tsLZP<##FST5_3-+dkQZheYqIOCwii}<-|e4AWNvCtWXLi z#*#7A7#+z7W}Z|`m(c1faq(hI1)K#r3FBlAu7)_Z5;t)~<2FgU0_HqhBA9hMg;PM` z8IjGltMU6ZwtXQ&*K9V{$)@}0NRx`u1NEI&7Pam*rDgy|X)s2bW+?(Q-l7bu&_0+2Eo_8mHJtPInU(rIuESrlL%iP@KR55?gp_M;qd0a;d79u?(D#eE`# zUQTf_olao5<8;_SS_#0Bf=T67(^$1KbvLFv=3K{efE~f;N>}5aLk`YmQh{-Gg-XX% z2BoQHe8$*{8L54OBQaM-8|LL4M<%ne%2W@lLFhYKHul9-zO~<+U+T?8&W$GH+E@SB z%U6ZmWUl^ia}ViL2)&Fe#w3kFQs(BoazPB0%UJU+g51b4M{hY(U$=Z;_ikOL@><8Z zIi<|izV7{|cI!7}R1Z%uV|02}c5HS=?B!|6oZrO;@hK3BPs>QmN=V60Nz64_PZGeMe0q$a1PjZAg2MrNd?#%GVn48+Hp=CstT*imQbGtx3MGhzdw zlx5!rjY85DjzguVg%X3Kl@AVk zMl5Ei_Ibp>|M-kROf1~UiVbF2Cm5SrTLy`#!L*e05UANf93(b1D=`o<3*E6ZB{tJh z1SnsWe_}8Z{Opw2l(Y=fu|$+jMrt6G9h;GnmZ7{=XPTW5NR0`Zg<%@g0~vu7_?aEG$3977tvZZSE+P2Jki=^4~i{*+NX^!KJ zNDV}XV$tT%j?wtEJ<@KnW3xu5o97owi$?=Mi6&aUrUXVA(hQU_+FvjhC2pRGDq-{r zl!a{_5z0zL{bUD%!8Dw^Sv4srgY4*7$Cp0t*V2mKGNmN=!wMP@dMZ%Wh$aM+i)E$T-xH zS)DMCU|DBhmX;}Dz{)5yVMG>tDOwtfC7va!GD0ZJ$O;BBVrpx%r|r~RuD#P}cc(># z%q$6G5&_a`J^ideMttn)5ilze#hRHMJ5u?_aGMfH9Sy$`8xqs)P%$Dk4waOd5DV8; zd}NHW`>6`8wY0bq2qw}lpp6@m8e|oy{G7Y+Z3r8%wMT`4?2NQDvqc%P+HTW&z%lk( zp38v};jIdPh)v>pV(JK^;W_rD+8veFGvmKur8HaPIwGj;mQmY@*&(#I5VnXD${F;h zP-ei)K^Ze*Q)A=P5SOz|zcLf!(K#`$I5UgQP7HC}2_Ya$thR<pU(utGWr_CN3JGN`+(`{deRp0N6 zx_R>t_Xe)})+;~XP#&24+WeLmcO2-yY3$LV zyDseVY5SI2@Ben#!52<;98vmIugBW0OS<>j^({_3TX6sQ&%fI6isy#wcCP8Lyg|jT z{`;RUeY=1B1Hl)ztZex3u`YM|zVmfIcgtBX)f;mAOBcL%|7*EDTfE=>&dLifT0Hi* zNr}nhFWq};Z)VMqlfBnpTNP-0OU1rsU(|p2l@{GcwD_?6g{hCX{&04)6A#@wvUj7E zH{5*9vY~6{UKY{+>Pdg^AJQn0H~fR}j|+>geK+ooh!xKskLxfx@2LNxOSZoLc-FF< z>-sPK`jh+LdvfE_X`R>182D|=#hva6yZ?o~k9aQm{Ds$jmqpJxwt8pTT~Xhx8M`b$ zeO>?6HUF%8{_a*sM&59seeM;5N6q_Y-v<{y+hg9bS!eyx>F-8iP1dYDFu&WX?|=UD zkKekl+;P+95vJ{+>DS`|NJs8Qm86OQw$~U;5#^ zKW}Kg>7K@ahP~|jZuon?QFGgT-~OysJ>Q6&v;Nm9bABDyVt9wT*-0lqKQ`*YlC&mc zf*l_`zi`$Sqdl!Z9(VJ#Kd*cLrPRk)T>RJzw={U^+Ox-Qd16&b(ulU5Rz@6OJ*;(Z z`Q*~TshR8VnULK5@QlI<*G+2uY338d4!!u&lx;U`KX=tH!P3RAJ$-P)!r{X&UtecT z^48(6FMTHMo&D)envQBz^z+g4?yL9Nq=hvjFZZn5u(0j0=hsBvlzz>yR~MDM`T58F zKaN>km_O8WWck@`4j)-rJax}kpNz`;U|{Z$j$<~=`0&B#nSFk!{`-rP3pOwOEM{9- z)tU#_W_0Ve=b=!^^3&x?o|@J8p)rc_P;v`w>Dy4Q<3m9i;g->TQX`tz*8 zo7WB=^-RQu6&cTMzP`@>cW>x*?Z}AF&I?O@s_5}vS01^s?5*+FRL(B`>#pY?NL`%S zui>sMPvxF7f5YN;KWVr9wtk~l4x4s7vb;z9i?=iy)Zx$9Z_5dOxpeE~r@rhr>Zeb) zMiqPZXI&I(_Rk+*fBo4r zl`TITnYnGxh;y23{jPL=&f%Gfk>?y=ea|&7Z^?hGs{O-HUb^b8^I|GZRl zPvMc}=iJ_>@T_-dEgi9ROwIhaHeMXNYqKNxL8CBozI(Fy5`0HMKc6r&TO9}@a zSUTq2$CHO`ss4WX;kIQrg>Ao}=ez|`U%a{O){T@w*K`{S7xPWkhVAFpcp&-06y zR(>A2>y77^-+$T8g0J&eorv#!NwfQ(h+Z{6WnI>ZdpFLdfxI&?yH!$ zr^C3HR_^W*`TeAOPiCwu`SP2k5hE8a`>Ekiuk@Ss!KL-*p0_r(%ckQg<3=z1?V`_WBD?t!Uirr=u+gE&F`VD?7ZqZ$3YMLh$TI7e03& zVddxsYs(w2@A>poM@Oxl`r$u^FM06y^)El3a&p71cP9QiFn#E1AUtx#7y*xuY)YxM*K; zvS)RdyI+d#pVs!dug=N)XX$&(a_04aVDvW``@QLHCXRh=>4WWezx#0h$hx<`e`A+t zGg|yM?(9~PkGvZG=68*n#C# zx^e7JzZT3aEDRpJ;GaW{%df6((EF*gzsdA39DQ4`%RMujrtRJQ^_-sngp%5{-c|Y6 z@d;BJx7;)L*x|9ae7)|mZ2zIFFa0q8@w@i5ub$^g`mA{CldX1rmHF=bJNnkU{n`4L zT{-*QKVK+bw(yE;J{!FJ%9$POb!gxE+KKjo6pG-=6e^6-rjQb8R*u3qbWz*O6tGO}p!FqQc`@X>?U8l{h zZaebrXFBa(;7MuOdB*Nedp&my`Kr|wO%mcyj=VhL+g3MrTy^v2ldHnNn09%?-eq&| zOUkY{@z0xf=bSt^b>-44j*X1(JNoKTHP>(5d*QdC^S@vJ{_4-yje6s$7Iz#?nY_8C zO{=3b-|W&it-Rgdp-;5k_QefXjrw4J;uDD#uXbr)|C#7{oA3Ye)5tcnqN2XI{EwTX zGUx7@_0I6Xtn>QZeQLqz-4#cE8+-8US z7<*u)Z_LhL7wsLfaer8YdyXG#`a=HMp?)*^|9Vs&9skE!8bU2-b7==~3`KR>F?(R~dr+IYw47yA!6 zx}d{5YwtSQ_3)hUA9<>}Uftv?e*XN}!GFdyzh_MDv@h;I^kC;zS^YX)eN&gi<0_in zxBSyzdkZ;Q`^gqJauEE?|fffx9pDSdkY#J+t+9CLGvLnKOT1}?^B%r zc~yAWsZ)IN%g@KL`t<8}YgpJU!_o&g81t$o7f^$T!|+n0zNXyzw@-dSZgpYTOd9Z* z95@@TeJ1ErRWP-x>!ebC_VO=`Pw#C7n!119!^W|l96p!k4db(t{L#;naowZNbtSP8cD zXG5F4cyRf24!!V(-3l|D_4IBw;;%C~jfC?pw)Fnd+v--H$!RPcKBvfHpIFsqmBGOW zJb7!UIv#xKomW(0T6`#dSR5u=n9edO_}8%TOwD9i2ACi5uVINj!!kx$>Uqo~Pg0f! zmSwiG)VD1Bc_LFo%kr3Ekgbsyf1G0`!?MNvh<^>sm&y`u9p^`7scTvOQ5LUd;q#zI zGJWV$KOaj?(=7e*X{2Uhon~v6f%sIYS?F|`W}(wl zGz*=csafdne9c0qZ_zAtda2VgfIctNEcE#?%|f4_(Jb_Njb@?GZ)g_!yjio*=dGHB zKJU;h^!XdjLZ5$dS_abRpEV18KBigd^C`_jpX;N=ST#71K1XO4`pl=~Z4Q0rbMCf< zKJ!U++d`lDthsHW&wN_kvJ9fneDd42(C2u~LZ8z#3w`F(&$fy_XKNPvT&P*-bD3tL z&r>uDeV(aV=<|H1C6YehqFLzkQq4l2muVLI{Fr8;&(CNU`n*Q7(C0Ta3w_?KS?Kdt z%|f4dI4y(e^EaA>KL4Ou==0B-g+3qCEcE%5W}(mZRcw(+GMGL`Xcqc>u4bXn9W@Jm zzQAd@h(7n#EcE#z%|f4}Gz)#^uSu-7aS?q^(=7CPq-LSd*_wqu7it#zT&7v*^Ax9L z2z{QZS?Ke8%|f4V(Jb_Nsb-4iMX@Xr zpZOYq`uM}IU(|@!Nm=aNdpIqUJI{?O;YjX0yk(Kx15S(Np6Im5h<2G~;Za9x7M4$r zW??NCYZlh>)tZI1JWaFE>DiivPA_m;29m?yE;Yozc4>6PCtB>%xWH+V(&+27NNI3m zsiZWboE9mKc&Ei0-z`;tmc~ep!_vssEG&&e&BD?s(=05FDVl{&&(tjRcfMw!)3<0A zI=$3svBr1H=K=KjF^xl?pV2Jzd5vbF&u?fJ`n*}Q(C4k1g+A}lEcE#s%|f4la9XVK z-ST-LeLkjf=<_MfLZ9oawjnJ+dM=DILl=wGGA*3xi)AQt&%#H!0%HH7%bx4-M~kic z-f5Ax@w3w+ZR5CRq0eFP$2yMq(^Rw2XX6)mDzE-5XX96LriJC)UsJK1jo*`*96Ft- zad@gDGz*>1aayEpOwug$d75TnInUE9^!YZ;LJ#lPEc9@tW}$~KY8HCjsA2==2 z5Vy!F4ipcxmvT(=h>QtJ}=TN^!aYhLZ2VeEcE#~%|f4Fb6RAk_pWB4&!1@) z`uweCq0fgj3w=JJS?F_J6uVXOk@Wd2%|f5sYZm(4L$lE5NT)?+dI8NspHnmoeIBh@ z=yQQ)q0d)q7W#axW}(juGz)#cL$lE52Q>?Qe#&W)nciB>LZ9E(EcE$f%|f5Q(k%4( zN6kW?f7dMZISe-^U{tY=J|D+)kro*}htg-hblI|8M9xH~>LPNcXcnH=9H(Un&*B!% z!n3$nv+yh)(=0rT7c>jc;ti)|D9_?+r)3B&?>jC1`!RbY>r5l*;aq%_`!-uoPC?LI+o97M2gkT${tv z;5`@HLKiv0+7`O_sb-;z98YZyT|A&!=;AS_MIyf!5zy=749%o+7MCHt@ zu9eqPr4o*oSA>?=7k^!F%vP;dD&c5(H5XMoY)N^g+f!eAt-L-`D&c5(ou%c~;jfNQ z+o}UfB^)iU7M2RY)9r)N-5OhY@ufOU!qM_N8&jE6{hoNuU%r^A2(hvMk_gWG!^e4c*9sqOz-VJGTl~jR>ee)u3`)H zhOv~Gp6C_+j;%VE#fn6Zu4)g9H>?+TB3&BlfQuKEg(q66$kA0DVDW~T-zR)|eDp)M z>KdgYM^|+e6@6gZ`^q2tY}IO|B1c#GVDX0We3{zcbnS<>YQIwXut!&Qg2h&ywc`1` zwu(#sFp;CHI>X`(V_#spXYqw`wkk!b$kA0@VDX0WXiST)Zk27TCMy*=x~eNI_BV9j zTz~U4TlKV3k)x}+iOQ_6wO!6SV5{~k6*;=9_*g~m#ylDIWH4Ax{77)4KrJBS=w%ghs8=oj;`u0Dzo+e zoiPSXvos!1DspsHA5jg#mg&3tk1VxSToi?g99`8H7H=4PE7SgUpDngkP3s$0a% zeR{*#TbaHek$uQk1(b>$UB$NK4da%n(T=sKI`h1yC>8hWD$Z!^X!G*NCs3TG>KUaX zM^|yy;|+_%mMQL^iI~2assl;>@P;*`1nH@Lzy4#Zy74wD5;?kxxfml6_g|gY zWu2``P%3hC6=yx(FvfqTQTsl2w8ILeB1c!@G#sjH6XsXhd96??a*g*S{f!W2rp z!jacDr6NaHp%X&YjS{3g5{K=w^J=07C~|bwFj%}{oKY~{c5uuhTNP9)a&*;jSnSex zYs8X+wrZkMk)x|F7M0n0m$!?Ew^jEl6*;=<5>c5Ro_+R|9=2+mQjw#pE)`WvY?)qf z@$)`gbyBIw(N$5f*lm7R^jfq%vmJKl!vaX;=qf)fw(7v(Ul65DRgO}TqpJd?2!sjZ%@LtKwkshB4wX4PD#zcU!eu zsmRe)Xh2XQ#7Od1^+Sc5Wq4Sr$k9~^uz17Jj3ljYw%pM+IyW(_$XWbX6)WUc48~NP{A8^4Y2>N=1&Y zN`u8~jpqG(%&%{&o>eMxbXB^j7+sn6T$a4kRvl6*a&*;Yu-Nm%>qjk{WvjZWL4zD! zm7%HfulRk7ts1FR8)9Y3zUi+U6lokH;j>-Y4Ux}`TPc@B1cz^ zfW;fun-ZiK{HstfW?tS1!%B{>x*Qg7m|2D|ZJNKvRt-}sa&*;5QK=&K+*39N&Bx5E zQmM$%Rii}J3R|Yfr}e9_RZEnL99=aU7H`W$JSGqQWg|ez8>#C>1%n zs#sJ5uw`m>{&)w2XkM^{Y}l^LVXKJj>!ty-&8F58jRSzi@Il8J+ROe&MH2>y<7(mRtHYyc4x~d8m`!3e>r-Rqns*_4Z zj;^W}mD=sua{Fx$+p6wr&>%-wO%|03=$>QGOhO1TJKCM_0`f6*`rq=^a|WZL8X;)18HV zx@tBo_6+vx6;lw@&Adh^6*;=%CBQ5qk)^M8A?Ttu39K6bEem&Pu7dJ z>RF{CM^`Npl{#(D%x}I!csBFet5oFZs+%>{Ycc1(Z>w6VDJnU->K0L{gL>-S_l;vT zk5ejgbk(h*!gN7W^4*IuSeYJ9RVs3H)orlY^)+hEi9NPzl~R$Ts}_sOjPpxpp9h1P z*EdQVZ=?Jxo?Aa&*<5u-NxtoBnnfr)a9Gl!_c(wNzA%v1K|k_=4|k)k>uzM_1hii~XI{ z;Wc~VteMw4N=1&Yx?5CcY24Vh(O6scol=pbtL_mMIRwpv zlK=GNFJ4>aQz~+F)qSFBh%M7OOTI!=HS-E66*;=WMh8nb#9aMUJjoE-JH@pM37liMDE!Qjw#p9u$>X zUkAQ@q?N7Or&Q$Vs)t0?0$ZkE-yP?e!PaYUSjo{(tyJXbDopI4 zGRyEpp9dWMYpha{qpKbfmFnuA!aI|8+j-4VDsptyqoPvH)N^OW6US`TYNaAaS3M>w zGak;Gzv5?G^@CE8qpKblm3dx2HxHEBs&ml(naI&qD`BzQ{JYz}!LVbtjZ2h@99{K< zs5)ZHw0V1Aovj+DROINYCtG@Lch>#$OhqpNUec&Lilvm*Q_1SC_{PMt0}y6PEGse^j*zWDrgTa~U<(vKr)z?Zzj;?w^ zR4uV(YTuz|kF7eTROINY)v(xiU@lB9Xl$#x`>+#<99@M;i9^+3#{g80S@M_ruoHpp;YAPsyAS8dwju}6ow zSMBa=s|G6-IlAgCQJH!5On(L;zYc6nW0i^=U9|xg`|e!un$A6K)l{V-M^|kWRRp$7 zJs+Nq#%1R9uu_qutKNpi8)kYKY%}(lt$IhP$kA1sL}k|U9UJpNG4tA|ROINY&7v}+ zP4s(*cG;?CU9c0099{JeEcQtB(&0P1*{Z%uMUJj|S5)n>W%}Wr6NaHy$6do z%!e)0AFqzS(avkGQjw#p-iO7WEq5)tG0?tbtKR9)beUuHA|_;(N!Ob z>RfD@uDG%5U|Y3TsmRe)AH!ltwwm%Cj-K*|Qjw#pJ`q)OY?-#*+#SVfw!?v_aVBzf z6{-h$ne(VlH(Wo$R*h6Da&*-;QCV&NqH!1s%)I6*6*;=on9{!|MlrWaeDy46;7 zxWKTIqpQAw#rClAijF~Bm8w+a=&IeKGG`7aw?0>7tEMUyIlAgwQJHZgY1+BY(Lt%m z(N%jyW%iV+ONTnj@DrsXM^}9(DzoJCm&_Sxdw5Ez$kA1MMP)|p9S@Fu$yW8~j-5#4 z=&F6N*nRonmN~cEsxeAMj;{J%RAy;3UD@=0TQy&)$kA0lh|26=?dsO7uvITA6*;I$VIM^|A8fvTe+@|2$S9-4{i;Y~_Kj;=Z+Dzh(-@;w@Dt6ozo za&*;UO||8~=W(`bzfzH-t9}-hSqGwKTWsuTCY^( z=&GZlGJB;zt*s-n{i0Ol=&IjEWuDi85kIBcd7XD5b|R6ZtNwt+9#c|!^~kYR@k&LG zt~w^F=GZa~Yy95DwrY}6k)x}Q!(u-X6j9R%&Bttqw<#4lx{4)jUmTg)=GJK@NUIZTV zyn;$aj;=Z>Ds*5;#}Bk@Xse2qiX2__4=i?@pE323FKpG#N=1&YIwdNz_0AuXQ)8=M zRVs3H6@R{Ak9tEF9e&(aeWz69=qmYrvi0oTBVqSGW2>6>MkYw)=&CxBml@gW4cs}} zR$Zc0)w5M4N=1&Y3Kx~xQ(`v_TV<=3Dit}ps;;O^59cjik9nF| z%Nvx699>mUROVROZrs6ut@>4|$kA2&&AEME7l%A8ZB>^(Mj4W$s~U)^t+Cs)x3KXv zTa~I*5|w#g7e95|$F}N8r6NaHHP%#*PdNOUt=gqj z{LVaYtz! zRw{CI6<18QAi6 znyFOe=qg!V*!t~K{ogYV*s7h!!k)x~5g~g6+gFC-j zXsa6ZH%fyXT_r0VTaj%}-8N{kW?u4RR|v_`Rq`$d>+0s_cke-QnyOrt7dg60R!+85 zO(JR>wY*TN$kA2&ZLNJ?E8Ew>wE&q7vpUt-FBBdfnS9R3#x-Yr!rM7CkQjw#pe4;Yv z02L$i-nUgZC>1%ns*|YD?Iqp1W^>3^J*QOU=&H`5YNAw!uNvcM8%LCi99`8#R1K7> zeqzcyc3$lU8fJ2ga*a|J+6_yxX6chxG_i8yoD$mZw`@Kuc z)Cas!ur#lHn)(!9P!-CltcsOI$_#eqnWi`_DV9@}Vyulb(j)7Qaow+M98BIFZkS{p zuG4JBvSd1s%avIcE9+j$z2oj?YYxWyLCjT-*?TR2JYc#Z}X? zWwpcXJS^;5T;SPQ@AfoWe@&%$%~*_9)SrC#y8I z?9e54Y3K@v9cu;^mv-&f^^EdUirV%Vn*RT)sbx=8RCdsx-ERmMU`UToPDt>lmPJKM zMfp8yUv!*51uLzjCWq4ej-{`nBFokCOg1y#pOl^&j1Pw5{Bg3zWK^WNwvMp`wnYu5 z_>*E%;!@*MQ~g-)Dk@Ue#g2;1&B>4IuU5v6isZ6;IaN`SWfhh%KGmNbicXJ7NDul0 zQIXan*&rK>)J65PJ%iE`MkB}Mgrt}l2#p1FqlVznSXYTFUW;bxw5Uj~%wuap{$MCQ zF_;h+U8|-DOC6mliH=DKq{XE=6>4#!sK_c5ud(otok@&8J|;CKIW~~&mu0g}2A#vg z*%mPv?N3ckiVwx6r~8dHIin(t)wGS{8tbSUr-TKyZCyGtz^Wecaj2H8^r(SRkyvEV z&c#?=z&M6DYAaD@2`R~;}m~#geM!1fwFk4)^JW0)Bj4Vjw-39AjqXx%OPP;khBr^FB=tBXhVH20SS}FV(A!_Fb}bbvG6=4E+IZ8#UdJOsGnJ;(f;IQtiqL= zm~0MKT$vU;wY0h;4sf+PD-X2vW<1-&)sD)q+|e5ME)pLIjG$D(jYzO+7X} zE|3s|F#;{KIF~atXNJn}beyHJ6gy&JF)CFp#%}9EegxC_w8Z!%e*ouT#cX52P<5*1vN}5p$ri@@ zLka28i5Qdo*6Oe9j$DCS8lJ4wZWJu)+ZLwzlai8S(}Jn~Oj)^|oy?3*XxUu5-3SMz z=-ybs-BKb5$A?1c=_!~A8BJBzXGcqwh1}IhCMyD3nqZP2i-83bqEUfZ-d%AdV%K^I zJGUT8G%+CmuSi1g$brQPJ=fD;(Lv zpg%D!HYE^^4&>;fSo0C_qP!pv3skd@7(y%`ZwX_9{uGS#q4-o)5j+n>4tw!uGz1v1 z(l>pdWD8^cF|lzmsYwZGwYn-<1<_x4D5DYBT`DFXV^wrQN=#Y+^ItC0Xe=;qFj~S(`TaU9VC`CK52)s;5Nx^#NsVRQ0KhJ4yoJ@{V zInk5_?QL>`KbRhy5J-*>T4c^_D>3w1>)cyxPTvxPF|o;MF@CHxigTP$U4o#>wuaTc zF!~$8M^&h$!`w730i#h$y6sXTR!uMDYylI93enkgOtKTuwu7Fye zDr;0^VvMZ_`9s0N#nq2F@Z zRhxx(_m4(8FRhYA-Q5J~=i$aK=PfdM#(a z4j0lf_y^+C1Mt>Z&Q=9dS<4l!um%|9I1|g8Z25#aMKTt8ONvX6@n>XZqTL2F3$Df} zR9uPcNuH@O1)rQ#!dYg}5=O^h5)>1I)fiKiuo7)TMwZj2C29Vcgcz*B;GsUm4?7d3EmpN8NkCM_pxqpub@T2t_6+ z3fLGhD2RlF5J&*c^!ZI6QUDbVAqho7l1(NQMM0Bj;ux1zTy@=5R$a?lR$WD`fFJ>} zAokU@>k_eGS;d<7J@?*Uo0(vA_rLGG`$=Zb+(ea9S6L{##8zX=m@y5a-r@aK0nhI!sth{vk z4U>_%laWo#bkwwBob-ERF>eI=AYLLzsHz!J!7yE^p$_b5V9~1q5I;d*1ntwy^oNQj z3~YEFUFnJ%8ye)*=puH%2OSxT2cLH2=81%=7*3x(1`7sk3}HK-dUY8~JgE`*?Cw}l z4v{VbV+ffK7Q?ayligAh?=;a<`MMnTh%e;x`#e5gw62;ZNH7|oe)J-925E>InHyr- zFNb{4=lI}*en_uL8w$9wx`tHeT&*UdjrnODiMT+<9tuuL5EAc-2BSeJe6bo>9>J1| z9G_$fGy*1_~CRML=WCK7~^0{T2+i_chUScLSH>k@I8I8h;@f$LQ z#A8JbYL#V8n_3ACu}n)LwB>-y=|c}U&dpdgK>tW$p&QmK33r2^h48NPV0y`{cc~35%JE3 zqBwNI@b+vZ8Vo{mBVpX6cW8ou4E@~+ostOZS$jGZ0X4p8%omZN6@UP*zBi!44@D8S z$D9$T6UJpCz(~4i85=|nMH7UM7!AgJutO2ixplSGr1TtuBxZ+|QfYap- zheXUY%Ta@{%nZqd(#9AGohl5cd z;KR7B8bVnuL#{SfHY}-+*EQ(S$@Jx?$C|PD!t%9(Ox_TLm}o6k6YoT`c6b93IT*A% zDTGZKxdOu)YeU^4LrcVT-05<~BC!aBlo~G|xD`3iwFxZ_sI`FrWHn|hk!osdNN^mB zqI|lS+}2SeUccArj6%6*CAJL3SwYrQn(wPzBX&9H_4p!~0W+-BWi-@#I3)YMem_|& z;&qjEY`(~2<%)*d{#CXp=Ahpfb2}okj;cp&sJQ{M!22*q5IR(kxPH6G4I?$F3_4>Z zE3`D}K$nN=<&Mg*d2(q0Nma3I2@PgF(M0VYRE{%*>428wpCiItG8%MX9TA>l z3>p&5hLE%#=p`C9ulD6IK#)eQmLzH~6obK84x!fL7+f$nBRjK-0JA+-FPw6ah7$#& z38o>~>fw#uPAvaC9$r{dPo@~4pR$mPn zs|pa%&X6Be$;fEO6f=3*3u_UL01KKHGDAXReMO~~Yp6~x8t~943@t(}QZe(? z2^TauKeS+6yvgPx|AiqoNko090wP-~R z)kuGJEu@u-Ss3*NU12xuAheExo{F_NH4wAInw0 z5>QuH&kSBLdZ}!pu!s0Pjxg*Y5v&r^gda(&sjFS2q7?drL1zqd*)B6B&e&`)1_ojd zpC=3>7z<9SgtDZ3P&UQ#letBlbcOXsF}%Dq#gkUNORq3TnRB z4=qqvbTrcFOAS5F9}Pon0|-vpABec4_Bnj_2%CE}RFFPI5waG=j6P~nV-n`W z~#Nz@67Eq(b{!%$y z9`=`n9i@<9>b4Y^>Rb@5PHLVE+39eXJN*%?p7=^MGzUfrw63rh>x?QICLDS*D#Wxm z?1PXN7-g8k6qlDqqvePcdWagQmn4|O2a}ILbvZCaC@uF#N=glgSlxtfg+*~CaRM>s za0NAXFvj}bFpogf<1xED#VDA$F|4xdiUm1^F6wo{;G#n-iv%OlIT4K;7LFiWT@Etd zv79n)bBd!8UwK&xEK8-eLhu*Om!YttzSj@Uh}m>j?;DKKG?i-uz%uq<~W z0iH;y-x1O^SF(qO+*qm#rxJucCB|wD+OZ~rRtAy7vxs(xw(EEK!M8l@2}g@{1%jyx z>;dkW&#z*adWx}0q1;nk94*#L4%Q@JAQ*^Zu|{FbYOGv#U@_ZJ9Z|Q(6Y>T%jvO)O zD8{-VxNA&d3Uv6wP*{{kA({cYSrBu7weet9;t2$z*cqTiUQ$wqE?w?&l$S+Hi_6f4 zbbSN%LJaL5D36CgFAriARAZ3sPz3_95R?j@J%pC0?|DECL4$K(V_XtyitIvNgs>3; zGFgYJBV$NbSyOqI_hanU<*D3!9*(r znEYTgjRkxps>u;lnXDD03TSP3;&?r^)Y z>88YE$UDr34p&sqH0UXImIpn$K8t;H5J^#QNSDT#qulK%b!d?W?fxKE2m-YF!fF$d zmP{!tj}@b!O3EsM3K(q{{?kz8&rX0a= zptiX%Hael<2h^S&!)8N&X}K%J#88S%#G)m3eg>dvi{uJ?%zQj)#(50RA?S}zzakL0 zpf8VvO2g&Rh(68eCk}@v<_;*FXGLS>)LKL#=-X)sdkL^7AQ)C^ih49P6?B)V7YiH_ zNN6pSSbz3s&CX2VlwZLD%BE@mU77 z=k)Sf(GnV3v8t`5BxDbwN$7Nt61l9@jsAdvm8#rFElop*bqKk{&IcvoP-%)wU5;XR z4>At~PK<70S!qp41Syh_Ez*Xun?o55H3BYuQbt>JSD(|3Rb3eUM2<_Dn!-lWsJ_ay zj9{M`R>AxpC6-c0vCmTqp_!xxLH)*Vd|9R&LHZv%wpBa8-!{j zYs|$kT3#HD>Ldd#8oJPZV65e-;JTwG6H^obtRXs_*a@e$Tuz}DqLzp-mc9b8^1=#D zy!|LRp$0*xV5R7fl#~?VL(@Q?5Aj+j zo){hwZFw@!2<#3XY_{}pJ=2e_rKVRa4y}n`^%^q>3{xR4r2OR}vS8v9qpwy7Xu<&p zS{*hG@Iru~4wX2RMx-ISu-6#s1Pu2Au^0*WMWHL|+Ze_rpF8Xi3lZioFY&{CR0@qb zIYStZJZ_&qsHxa~*q5<=0ZJm%Dbq~dbo0$HwlT^MuN!kWn%iMQjxT@uiQY8WdL6z1 z>PTJC1tzm%$+F#A37I*atuGF>un9y!>37=5nXz7v$#VO_^Gt`4NGcPXK)lZV9O59~*Euu2MyjuK}=y>0H<&c%)IWSYouBu+p zv?!}Y@xozeXId=W~edIS7|NDXWjliX3GQ1>ybe8wXzIa&| z|KwCW-FtxKPyB+wnUjo{hF=qKI+F3y@Vf&z4<_R!@ykTKF9{q<2f3c|`vLGi?*%_A z+KJxv#BUVvCJ0=$Ty!VJh{sy|`;+)d1JM?2wn^A`=zs!@T~E`;giB_-ic7~BJ)iVAa9;qYrc608FDpk*#Ip+I z=IyrfZJ|V`oOoGI?A`|!5)Vjh<5&!VPWk5I-y+%ZX=PAKRR2J1N<0VU*4N`hDYC(G z;#tKPu^1yB4o-9k&>~I5=VS)iMasXGJGXSh$=zEPHqUfOO<&6o{X`z!-D~6-TbF0# zZQ-e>gyc}33*?R|9ufk&D3uITD2rTVc!!*LMNaJODZ?_j@C=i*;Tbmd>m&7>+@~HM zER4R%QTH$-3kpQyfsSCCrO^W|(!i?zQr{`ObrMH%)R8$AeR60RAWlVCRrpt2I{wEX z5d0}t@RxoOf8yP$FvoW~{-YUx6MCr?{H@?`ojj2vboceZ@-ci%TF*UYTC zc*%8*SB<>&o6WynyI|$|o7TN{W6K8(tG&{+Ns;&ZJhQ~Va^NXP?f>$Q@i(lj*z@~l z$9wzo3+D|PRr%bW7YDZAwCE0V>0i1oc=tr*_p`g?%$>`hz7CNyXUE~0`s^iDuf;8< zZrmzimh5!0EjuS?oyoM8`{)NY6R5Q33=?67xlV;O)El@!Efr^Bi*+ivF*ehNh z=Hm~L>T#&N%qA*F!nx?Q-4&@gBzw&!s$arcv%23}j)Nbpjna2t$;Lu?-II@5^*NS) z!daLPHo4HjTH%NaPe&IjzbP*EKySX{L%Co+(-a>{b3emFq|_J8CaQ6Ad0l-k(w>{8 zHb9Qy7#<=;D+d+z9E#(;l0|-v$^jp8495@`#lo-4A*z4f+`2-eDkTy)hGU3}&K+xU zo&4g&*EOmoj7E|ejv+3LIJ&qb|A!b?sf5T~z`tlzLi+WJ!XWZd^R?@Z-{xpkR|+bI zV~C5DgL>Wetrtc=(Vo%0O;GW&(#Lg}A+EQ+d#_xhdQ?y`979|~7!^qgauk>L6!CN1 zQ(`!Ve38u5@-_VFS9A{;?-NuEhr=e}g)eHil0=tVD31HkeD#b4UM@cuZN$todh+wr zNuK&+&?0^Ms1+|gnjz`>L)p44u_RVv=N#pa|5(^iT`fQ*9Gc`4)ICp_BH+?`+_Ofpf>t;8FQK0G#)G zf%hqJjw3k;*HgSQ!cGEC-Ou2i0lZbfdEsa9sGR=^oR5?7bX^oE66p_L3mp2*93+iw5s9e3V!_uuZh_rAa1|G>rvH$C+5Bac4z_~tEJ zpV+qj$sL_LcRjWH>1UpOZqM_3UwHAQmtT4HwST<+#y{VD>+N^meeeAbKK$3du8;PA z{K==E9r*lV=CIFF9vv&9d6M`rkA(#+#O} zSh?z4p8uZ1|38s`>&C5e2Mx87b)zL?8+B|5P$*rY#1nGsuJ|mub#MIiwS`iAQb^#9 zS_=fpVcjUTY>AJwZXD_)QfGl>U{j9Vz182n1?Ww01c{HD>PxNU~ZbQr>Q?!V;1*G>s~P276xd($Fyzo z7R(u+09wo5_ymzak+Nf1vaB2TvXt4Z8)un#>RR?Ty}=X5l9p+`>WMt0WXm=x1|=O& zg*qr%C>3IT3V523+bqNz&mzW|oblmJ$Eu8X`n$J+_luOaew!$R+d!SS1+)V|GI*%7 zVDRCTc&(8A%?C{l_)Wx{LTAJP48|aMT*oti}Wi9 zdCpKZD6sf=5#c&fSjK8RE~Od`B}H{cnxMv!msKe7RQzP(NJTZ8ifXi|z)aM^;Y}kM zTPh}MAg}y_a!S)mc{wPPw0DO#pYYZ2s=NN!U9{odXTJP*$CziH+jQkQ*WXt>#&g&1 z8_YlSKQs9G?{;lA4}b4publY8+bh0%?ACsL#@zMC=j#_f{K15qmG8mZ>W-8P2 z`|{~91z##~2C6uU?O=fFbEm-Rr}`*2avcUAOaOJ75uaW$+lrv#Ur*vIUWa}5)wqPG z9$-z~3JzA%l!h*w`b|?sjku-?H(>FfOwC6i=_zE&sAv%SK1~>iDm8#^&q~H_s8~@h zV&~HZP}ZjLV2KhKh@f&=y~Ig*0Ol6?xs##bDNbEen5OvfZ)Htk>f|X{Ss+Ji3dc*2 zU`?R~MYKSaO}e?ocBLyS<=4a9;>#qwbaRUw@KEgG3Ol=GPnlcLJ&*rFm;HjeBpiu| zbaR0R;NK5j@)4o;_JsEV@SX$C{nRz#dcrG4ygPw&G<7{aUK*QyHgHZ8cp&T1W-kM$ zRN#^9>S>Ll0XUZ?C*!3_-(KLnn~ax+p9B#yn8XNNPw68Gaa&Oj<4xSrBS z{Kf%iW-?wHerEt@VKQD){Sv7iP8+ zU!&olq96=k$>CV2lH~-cKa!lcU2b=0736IRC0@g9#M<&Id_xHnt?|U(I8Qde~U!7Mbo;lg)iyRnpln>%Xf)yX(E^DZ_mW?7g*Y{ z29{I4&6>%}uOpOYvyOLX**MR{9y!rprt&#`O-3Rxt}vRhI*O!a$}^sbPqAh?ZPuZ7 ztP-N6+GQkZpxlnnzzF;r!M`1uEPHB1EMJsi&8L%O3fA0^AJualeE3v>)UG4&pPCVx zhzv23u_`C4w>8rwC+B4+QV9f1GE=*45M3y>|1QBG~KOk?5 zzulhUZ%5kt%k5`^<2HPa;E}0Zr>ohm0EB^BWIS^=)gWsp&-)Vx(7LQGWS+)4skMbJ znw6W+vvoK5o6j59y~efLAt!>Uq}@%Ko2Yat*)rAi*;tiDrrKph4+I7~Mo=oxq&A_$ zvu2_Ys0dk)(YJ|%@{DcqBU$6zL~4ePNKV8M>nrgY)=WE^h7-kTNA9V$BF|{MKE&-r zDdL+q?ijVhc62FS0yC+Jjs!0%PmZQXP*bK)R1{I{5y)tX?fr;U#}go%+w($bN3waN zqT6;kG!j=iTP{KXTmk;6?1$r@wN5Dukm5!H;LDaABFs_DZ}bq0G$fvZ1zWC`C{#4) za9kQUI7A~Hry{Ix@vk@@PRb^Si2qpp(}FE`3ST1*$ELVAU*bu6rsC4^oq#~IWTJ)U zDH+nh;(qmnP1>a5Xl}%F%OOe)EitE3(V(L^zQ9cB;}B6%S5~M7P+arjp)PF^OpAv+ zE)EgZsmyP5-#$`blq@-AF^qn3JjyeNsC+pEVf_{Vic81ag+MA*G~-{yoA`dJFvfQ} z-u_?7oA}ag>55CoJBq+xlWyYc{2AV5f;W#}DQl`po)TlJ^RgzMG_z1#x-_4OKy7*c zzF_0&H6TYmqV zud9!GscP0qr$6&vV$d?lE5&cP=Ij+0-!yOVKd)W<`P7fUn$|w~iAUeMwPfsE%T1?+ zn}%L-)t?71o7i;Jn8UaEpDVb2|90i~kI$ce)9&m!cU}BJ#c6+BcV>8rXVjP-f4lX$ z-wfYBu6x1yK|jfNy>#Q|NBz|=)-Qbgo-=1vmft_^w<{m0QGU06fAGm2eYRSZ-%lN1 z{Z`BD1D>hFj*bn_&Us?%Uk?6m-q#+#ZwS&>{ zlKGH6V>VICBAi9$K``GC4!Pz03%RkeP)WK__-Iy>D};}>Vc}-sqgin@sipAQA#kV! z*oK8EitUH;&bB8^rV)Z1<%0R-PGP@kbA*CJQj#3y!nlQj`VfCHfpSyln){KqB>pCR z$T1wlk~k?u+LHL4H8aoGs6J;jKfkSD;#;>qp;5s$$sCPVhuT)~;b%vDuTjz40OV-u z2rAu7i{voR7quk&#YEiJ)RQhPcT7r^VHGLe6fDszy*T979~JZ?H`kN?h6|ixxq}`;UIR#85+A+g?5D zdX4IOLB((kaj~sUYFzi*#*oQhQ9K$ihbrgKHxUL%W@oJ6gSV6^b z3~@0HOx@mc^3v-p8r4)m#kDkjJEWOUPjSTr6~i&a#q=XJu1|M;`KA`vIf9DoQ2Mx- zR%GI(BuU16wFoM%IqB<*X+>&WS6%+n1zKF!3o5QT>EmMKD%-Y0^%Yst0okIIJk!PD z%g0`QTzHy7*ETi`xbaSnYOjck;Q$Y-@WO{+<2IS&;bS%(pa6sW2^2**_C)7C%1Ut7 z1()*{aXT{E1aKmpt`D^r+6$$k`10~|t8ojd5e2v8FTm9t0;gwIbVd5|YL2EwAk4>F zTsjZIS?9xfVE_8BddGkwk@S0O8o7^QSC8;xrl2gbsmFjfSv-KC=VtUXY}L`_EG24Q zy2jl{EG{MIDHLizN*tnSQYaLEp2-|t;*}7d)pQ}8MxQw&O}Y?HGo{CP(uHuEsXfx9 z3*j`=dZbAcqJQmzAA7(GMPb_APd%(qKA+$n~!B!}afnq_uom{#Vic%qqIR-w{ ztWfNPcXJXRTcJog^+5VX5IuH0i4Zu_Y0|Ac(C9u(;1C`;hNm0v$&d7uc}aLZSV!WuP5RC2fOwk2D{b&Yl|r^C1SVk{uj)q_7WI~ z>|b9v4^04eoY$1F($)X~&wp>DimCZK%l4tBZzg}*B_f2;x)TXv=~%LBAMvVup6p_$xD%W; z-(jGf4A?|t6D%uedLbo#8{2N*&?g7}lA==+%(Xje^&F!1%k?SsawHpWhOsqb z1v1+f!W~eyIF4J`#@1BX7OaX_H%`LBs7<-g7Z>v(xY|}z(HLhav}%ewMAd!hr!V|& z%I#TS-u~&%%+GFne!#6CWVGBnd(@b5Q~MoPJ<~hyvo}WFkT>YQ7oOQYwJ=i3*I0XjH+GPo+-FCq={Jz_DJcmlazifKb}6Yz+^rDbgkw~lsF9gXb`h?9-4Bo{GB}KbEB6;J z!hy3QIknG;$^}AFbvnZ zV#uaJx2F+r25@`=kD3|7OBz8*oK*wo{9f?81UOeF^Gg~*Df#yb9DvN(GqDFD36Ju( zI|UEt5R>qzD)#gOj|BJ2DR`;z(j4loUf_`x`(Q8dD8IvLXwkWJ`8^5YxxK(U1$c9N zfp;?ST6%#;L(tv5#Cx+BczNJAM3bTTMeQoJoF~HH(F;5(zuI2lQGK-a0&g<#ZtVpg z^@rC|@KW0!4g7DU;HBo5EHEGT0*}h?>t5iIU12;;dUdX+a<=yZkMxaYy}%m>yw$zH z8wv+CIRo?y}+aNWl>|$xpd`1`3>~~kK#SE7kFeVyR;X0WaqlB7kDIx z?(PL1DJPxj@RDXE^Dz({NW%O7*^C5Ni8hwg8RP%LjD+@FjKG-!+;vmtnC+M&cifq^ z0Vi{qcw)23ndyxggU5EV;Zs5llO_-xsCREgxZ_1miwKY_%fV$bjJZ; z%883?7;JDnxYNUwh>+Fu_By$Hho|6_DNWxzObyDP5c?vqpZO^K;Aee=T4Hh2)qrcItTEraTmocaF#^GB=K7Jp~~B@P0P&s*<{J8|}Qo_5!j%OWjwj z#V4wtmuI*Q$I6FyG=K8L*WK8|zkKk8-yd!sAX!_lMXKC|C@X7AD+sI)hO!nfL_G6N zCeC;v;$Pr+2u(l=A8p1Z7 zdZJ4v`2)}pwpgA4hSt^uaY!H^gpUG@V=DyquCQY7UPt+%P*$m|dMUryf}{(l)H`dOlRVnmf&TTdjk=JVGf<;MWDZggi=%BiHnCe2e!B;Sj|wMql{*n$iz;3xw_^`UD1lz{9HLX>qBSJB@T_&#RywGO z))nelCMk8unoaA|KX!L_Wh2zFNh0iyvY5DGAe7jtv{}W#aL86F3J1xNx??gcTa?*h zhB8ZP@0(~|(M4;6B4B_2Bn(}T2vI$yFr+F>nL}e?KsOZul($@wz<)^cp>gT%<)jSmSH#5|9n)NvHy2X zr%h@-6nock2ux08sKc{?9UP(_-;E7Iylc`gblYN^sLI3(N?d62id0jpjORBI-XMB_ zF#)```qN;M@N7s*ol?jual&&A@7sND%Zyv@>9aq>`taMCjU(a}{EpaJ9C63yOs2hs4fykFC>_ z1yZH$w|mC1E;J4UC1c#_$szt~4=X@$6ShMs1u~8oNY^*$E$%j3!gDaOv(w|Ixmdf$ zu9C?h6GTlm^Z-Go@hK2|{sul6bdZPJsM4qpOWo^sf?b-N#Lv(e^u!U7q06!4D$pIT?)Fgad-ca_{=h z_f$G4YBo#>bZaZEMe4?;-?CPoUf%uu0COr)^8scuKrz5H*@UR!DH1|R$epg&zU%Iu z*(ZLS0f&T^g0Kk)X+|ZRZdBr3>LnmzRI;H(_cSW4AeqTVrDcFbVOm@Fp!JJ-4t0b# zdGerl-iZvL_{(lX|D_2k^^;D|6zZ!~)l}u(>xeL2w;4x0Fx}t~M)$_f&ezaXyE=J$ z&2d0eiDxI(SI-Q(GAI)XPl0t~hDdZ0?fw4Vm-AWN~dk&@`bv>&2rHs$C zJDP@NYs>EmOD}=CTHrGVb#oQ|Eo@(6E`u(@Csn3JT8GaG4BC!QngLp*gZP}nAlf%W zdlg`=1~iR9=KvbVpgRFgXV6AKWJRz@TLGQQpk07Sd&RN^ppzN&8X!*l6(BO0TcjTW z@#T#&G&LSt4~X`(SfsV8-!4F8#I{JE0-`yxMH&s!z@Zo*L90Ty10qwXMS24ejdvCa z_kW079tj+Q!pD4&8jWZd_Z;vEdrFypgKT2M=JsG9IXMw4h^M7o#j97L3sqU={yb8Ul;&rJ|p8-k= zP6EXHRtOO9QJ1UGp8>66oNoujQ}vh{`T?MEEOg*NrAOrf;%&$Qh*Qh~w1(j=Q2pqn z9PgLSfX1`XI{@*1`8*)O8Qrs$g$@J6%XAzd9y$w98w))h5RYw%8hWt`-J#O6P*Z4FwO%|JeM;l6VUG%bPS;N3_1Z2Z&$g1E@FO#fOuN$fOtx016s{O z&sIav0mMtU5zulLdY&4(4iKj$Gm~u&j7p>@E5inz18T`4;p|TwbSI#{y@tC9rgvQQ zDVzECSw2abRAP18k=V5l>|uaXrb6sOJARuTJ2kMs4;?4Cj4{;Dspe9Y7jCDR%ePUc z_<-UC#KmO{5Eqivae21mfVglOnKMWlHD$Im$`q0^4-9#G@ScHNGV1%!??+^Cv{jAP z189K=@)?envJ^-2Jib|;LmBu@)?2eQa#UaGuqhL82hxcW-_S3yfr{eSc(vn~;;89x zUK}D`S@jy$XLQL(7oNomX$#bh9Vh zQd)woLd|2gSU)_1PBT zxob54Y;_w<^WgD+I&SyuuR`B{Q(gJT(dXT}eAKrihs}SFRZEB zVLAO@i~o9D=pKLhS8uMLet7vU|2lWx`A1LKE4{V!*`Mz1bIIV%SHJysNye4IK7G%x zzjObnuD36^=G$wo&Y1c2n@fkf=l<)YGjF_o)qxw9-937IVa|tl?s)k5hB?`npFZ$| zr4ugvZs3w_uT48|`MaA&H}5<=vd&45f=btP!U9kCyF(;pK zUS{T59reqWuNeKn_QZ~Y8^&IC#p~l6@_;uOKC!N~; z`haOK&bqn9ll{#4FUtnjJhSMDnibte)qAs+4V*sVwdbdoob~T4M@4Y#iTnD$z9CvV zdDEx;m%REnclUSC54tLL#rapS4E#9fwZ@a~7(U~If-fRp0N4B^Ye~BZP=BURUYOY(7gAXGZevX|3ABKa;Fl7`kk%YNl3$y*+jz; zjr5m>5}SJ3CPc#w)L$u_Z-P3Gky4^dBo;RSU{2X41hrmu828{v-%=d+(J$I^AJUB! z$9<+KKP828QHoC>#fOGx?i8wX6c3fp`6)i@gb&}OL_h9I!Fg2p(AFkCi0@9pdBfn7 z_R`GU$hGW=jMe2kW*XP&ALmCw=7La2&Qe$~NGyrcc_oHo8 z&?mWP^%YF1ag? z8?|4f+9{|A$4CXm7*tel)YRD@%sA}wAk!=ath(;C(Jf{JjA zRHSg4O()@#+<>i%&eN#w5LAR?q@sRrHl0Ew zyKj7Csz&vMpduV271^20CNv1<93AEj8r8Rgig1inOpRCDe3SfGn?{u@L@nVMso3N| zZ5#QQU2?HTRW7Iq$4Esj&}^EFPjZi~JmY$e>S{qnI7TY!k7kp|faLt$DH}AZX9X4E z7^&D)$3*>(T*+o@zDD()pduV26-}b}xiq3GJEa-oUa7BcK}9%5DjIFfCZ)c1-7g>1 zs7?@qfpCmeYzk(gvL(0N({`gqHBV3xj**J`qgKn;j`UunQIR!@9N`$LZ16F&JFNgn zk479xz?4KJx(SeLpxdIhGN)#W%JwWO9^WVW)rwyu`FG%dDBV=EK8>a3xmu7P{8 zPo1jo?l^VHFPG4KSyjEGKxkmddLrPrUp>4?yFA zh$_`Xed%UO#1(cqy?7CrtU;=GzRw#Cd7OChjXxrj%f8g$0=xo=7cm`pj#C(p)F5ZT zE=TbspeGo!_hd}ckYjeQ&*h26LU<#Irx1_&;+a-%Vk*kl*_eu^Xk{obg8qeP1fD7oE z2}`5H^TN)c+waC3VCw7fDcNEVV8alilDY6SQ$P+!y=Zd!D*L%)0zKjn;z47)cHg5_ zOO3@DvpXHKGZMoi=K5GvTNis>9GN9+m#$^FU1)uHWj=%lnt6Vya>-_gM%9F3sKrAp zkPN6nSi#ijCI=ntfw7pqwodgdbOq#~i(WKT?I~)Q(}BlL@enoMLd68$U@KE`@Rk@J zob%#2dc4HQ%3e#0VnHj)hyAUn5C%BiYfnzRC?3NjRnc%n6jibnO^pM!5em5jvNMba z7o-6$6i51{|?qC>o0zIP06SX3)~59w$tquCVOI ztE<0|5bqeuaugZ&8witHmJ+F!QnX(=91cfN`AH2~!L7sD7h%oQ$ozP5*5!=gN#$P@ zT?~&f2curRKW{hM?=;TzT(umP@w(_QNsto^@yZ$AKJ?gO+tW74`=5x87 zcx6$Kl%|yi?17legX2Li17=Sx)&<#3&!`2^0+klaErgINFcymk#WXV^y(p&0&hkq2 z6|rggh04()eE;0(qI?ybP8XTk>7whPcPOe!y3<9MX$lF4dN^J5ND`i%UK7x1ITTFu zq2^>g2NM(|{ny;wN9Ljn{>SG~*{*M{{rt!KzLl$;ZyfRLwf#;C(tMV=|EZx;S4C#T z&J9)~A>xZ>eK^ThAWo+72KRGqZ89FN%VDV0)*P&@{X18Zz7$N;wY8bbWL1ejO+z%=@O%Q7Dm~pvI~)9~ zfzvARsN43$@3+9Yt{40s0?uo_;P)PIK1=48RKGN^a&nKB zo-?wF;k2tLtcw>M!uNQbE6EElm9$B@1-wQk{wr#z@qnT+}FYsvIJ8T?2bk3gU z1RYtDPU{68MR|HJ@E|IrwY|Wjc<=269*keo)4jkWJDN$E)B`4$F2A$ke@qGJcrM_zQl;peJu@|4vMTIM!Aot=vw-(i3SKI|(}3rpMx%4-%7yB; zxfghZ^4DJAQT@Ku3p}dd1HHhbav4h>I+rdVGY~$j7kE@IO_MT|UU}=I8|;*>3B5fk*cLn|gsq;)cG+4a4^qxyKN7kJc7bq1Y7TDqwQy+5z>CNH6fHT$+1< zM{3JGy}+aK?WJ^hI>i$xQU(U}Pm=IxgYmDN8$1A(|La@5X>RZzPYS3k;AlyV7Di~f z>PY;PNt=q2mhMPXwU_9Ri(dHgPWTyj^xeaJ9?ha1ccBi}!~B(7<-`|qVtrNt^E?bF zk|VKCZZD<73@b*267R@~8}<#Ry?`z3{HQ1KxCOX$25zp5Q+{?%(hnQ$R}V_;Y(6;D zdf9XETRUA!?6kIS2Z$hR%Oe0Bo&8Ara;$xPJ87AY9T#7Q-=_FzM{{?-_L?kPIPs*| z%O1w*AskZ(iG!f-#4{p*jy#Iv3yCKecA71wtp_vOTz%|qOU=Y4zMRf=*l`TU4Q6z_ zkUg)|6umasvTFycpNSnRmO= zaGiByzc$NJa>sJK?9}vyY<|Yyem1W8j^JDfRrC-lPn0prFiz)jaR@h@pum^I2``T6 z8BVswr!^m(6`!13y|n(>wG3h|Ie;2aS1AJg2`^ZNaC!ZVowzo9!d8DfdC-YplQ*+# z5}|Z@Gctfr$>T}0#1HGlj&0oA(w8L;3BrZ^IL6{n%m&J{qHy4Wwlj`W<`9oD(@|67 zQIbtoN($>Qt-Elqcv2_|UFy06Et4fQDUI`48u^J_9}Y@0;nG|%luC{y*4h~oj^`$E zM2@7c)4>sEmP$;H#8b^(XINXZxJR%rd|j62F36L;KxDwB1bl0X7lEJ;g3Z>A!G3NC zu!61cW(?W`pZ@rvoXJMF8AqpTl}5FR7KXd1NI(YCl719%9|*RBv*76f5BH$w5!Rnr z=74k@NCDbJ%2{b{q8jMBk#W%y!Qv-Q^H{*4)6pL|`z!T%P|45i1v$-9_GeKG*Gd#J zvHz*N?4t9t8RW$$Wx^uu z#%BeC{((>0*kF;~$7dCTK2!Zhqrz##vq%v@ix@N;5T~dIM7S1-wldL3W|leuEoXku z0ixotNc#a%dMwfaw5xL%bR;0oWj3IC=65zAPO%CQjj9&uPk?BwwMcgXTE?K~0dd+l z0nsRo!#{u;8T4;JoXZgO3sT1|((eJ0;%kv^0koPycLU;h*lQ-X>C-z7+;0MUE=e?t zWCui}yhRECTEn1XKpbx|po^Gaz3O)pAYRT718QZVxUpDJ(6)>9%r6fR=Mo3>JLb1a z^}7Sm<;;(c?Qp!00412;cdFlD3}0=`kB;N;a>)lYj`_s^kqT^rWuf-665~}Gb1{h3R3#5zuMI2aag|oz$@SF?4iwiVz!NdP+nnOGp8d7PtBN@VI=qrk*J{ zJCIzH;1OnBa_|~1+g+vew z<^G8H0E}hU)_;OKf87NGwSUHQ@j!DypZK6o3FXEELKD6XwV%fZ)&ksAf>%Z|yAl|4 zMX8diXSH6k06tLl9Er=;f>83CcXq$iTwtNm3tbAzor`8DsPx9n5MIBb5muHHB^Y5t zS#w$D2|`Y+Eo_KF+FEWPf}|0Tjj%%~`UGA(fg(`=c1(kyd>b-&JPp<t`I`4 z8@T@7idY!q-h0v6JgCY<<*TI|$t>(}vI|AlyBSCSf1 z>WOLdV;QqZpD;~h_>D1CEGs>2tEcwyH}5bDM%~1yn;0!mVMNoEt~XGk{*J*@!{~D= zBj1Ry`J3i~{#4?K2*Rlm@3~L|{dG-?hOVv##H4FlTdl2s!4(6{W!BW5#xC%Wr@sC!!-DESrWk7Y?+x)Prp& z+cw!%4Y0Y8=2Gki&k%I~SSV2g(cSvBwPh%peK>JixD``OJh>t{9+!w&N7*`0Vuy0h zo9>eFcW+1IwlR6mL~nRqc*0jg{P@kd{^;d>$PhKIz9z@xBrkVhd$A+ovos&>M^-LWB(0y&omH3xs*!0ydl5v!aVWYbpTi9R)O>Kbwe=>RKTAsf zNF_wZGTK=F2DGvK4Qyli8`S3QkFddQ-VA&l*5)06uOV&Tf%vkvc?aPuv&}mgUqjox zhvDn+Ht!I89nt2s;%iu&7Y`gej%@P|#n(}7-ox=V964(99>FSuh9NZ@T^}PQlsq7a zmYfEu6G*9JCeQ4#s8t#hdG)g5$6#x1xe_#MA9;@I92Gz>JVQD>L|QD1fX49Fc2t-( z6aE-5E$)u`BdkNcmi;bvS;a#LQ&F3cM>B60X!!Hnfpr|^!!CD3`hwVu)VbSgEsS-z zqp7c66(IG&u2dYU$?>n1JG7?O z^&RVp>W~JxGZA+kh-gzsA&3sCYX{L_WF`^G(!?Z_l_V35v%g9*WfEh$(}GDRk|L^P zdKGse^gJXM0#(Q@jOkREeCX$b>v7VU6R+}G{eD2>5OIA@;{Iz9ASHHmeTy&9n`fGv z(1^Vjxp_-}Tnk}o>c5F*Ci@3qIBeKNSyk#{yxe?np!MQw;05HbS&ejf@vr zR1%b-pDBr4(lmU@GMZ-a`xhqrBA3#B2!>s_S|>@jp;o*iRlK(W@p<3L=#QMA9ne(ZnWaWRe2%vc5J@}S%?*gpwYCD{v^3w` zz(QYBLytn4-opHj2gE7pu*L1n?+n#%KcEws-`9ZdWYAA)s1>62Z_IBvAkO6!K=&~} zy1at>c>s~++#-clzg2)pWwS^Zs(ya}G@kjXPK=g?g0f=*{0Q52oT?mNhs8J2Q z2+&h3^inmn6HpfO`$C1rU?#vzax$RTSZEO-9@~0Ay!>tk^cD-f6A+K>RX}erzqeJt zV<8`SndSm|mxUGr;uO_@K45;!RKEnEea!Dqs^9H^cq_gK5E6@4d?FND&UpqP&e;Ws zbEXRv_A@SYfdcoV$9gYfesR_BdO)8tzgqzDTy6$5j`_U`C?AkndIL})gWd)-jY01N zDqzq)KpqBt3}`xo4gi|LpsxVUWY9rCr!wdVKt&9qTPkQV8)x_d*%_1p$ibk&fSe4X zOB!4Z8V1PCAb;hSP@-ik&EiAteG)^PKeEI}(#NpokNUu-{!!ofK=c(8=J=+jzMFt1 z;pNJC^m=Md7Dmi?79Mq6jcXM6EuVO%GK5DPans>JIq?xKuh>8#<$dkA$3&MzzUFVA z7D{|hwL>>}u3YASj0_2IYy4LClXB-11k)9NG>zwW_tq^JG|}YL7Q&;Mbb})ICINpe z?DdmKNBY~X`(NHfY1#iA6&a1^7HKIyX|ifzjes|ud(=>REwnH*-lsito9Xz$ z((&=bq~ojbT{=iQ9#29ZUwrg|5pN$wotU*m`X)C4|NQm^4pH0mGry514wQ!Bh~Hrc z2E9FCPya1_>n-!mu|7Enlqg#2(ic_KeU#P@z*Y*`yS-d(ij~LU%86T z`PbJq;GKjjfeqAU%bIFwPc@yu2R7)nP@LtM$c}3eD{R26tHBKnbqj$c$#so!+PrN$ zX>8+3?8=3ObxpN8zAOpE(H~nrg<>98Q&))-AFC8bRpYfp@boGvu+`SZZDNacb(O?7 zMiVO~31h}Kj~a$FC`1<*LM?-BQ5go^BJ#?yp$UK)Jxa_eRvqDGFd~TwK>g&tO#Ba>N}GsBkqR_0YeIWs^>(*WhxA zq*78Ux+;6D_(P3n<5q&I@u#S)l=BBR6!Jp0F+E%QFLGT_U0H!z5Y@zY_*3Oj#Vf^! z`es*HRN1J&@We-D%@XYY|368G#-7>?%5j+u*QO}(qgtrf(DM-04M+mJfn(y5s>c5$ zEoIyctX%c+3wmw-bmbls-XEyVRV`_(Sb!5ktXEJ|roP!oeN|jKahh#%e!lI@ipqFX zMGbkLI`-VAv!oRj4Yi=3ZfmMlJDd%7qBK?8>MI)2G^yLU%8GH0ptPK|()@BqS*eT$ zUDG6$)l#H{!g`80lEZ5?UujFYl|@ApX8~*}n95BZE+M+o^pRqI0}N_KT-qXf2Y&a= zPm5YTRi-3Q+?+z~jbCBIvqx8M;5>(|zPe!|imFS1+q4Uz8^LH+l!VyoUD; zT&1$I5{aQ3a8z-oR4oZYE=?#6I!vm;6?F|&Js@gwRg-hLBByD=M5U}KBkHX^T2U&s zDAJ!wq10v>N#5RE$5VwN30I{<7$3EuzXb-QBIKfd_l&+A{gXUC6kpLy2gk$bLtxa0DD zxY>91#5J2Yo_ooq@BjI^Td$id&zUrPS?Kr{UwC@tfxXVFPB-10@snwE!^NJfiZ)!e{p8RCi$^sKSRN~U;>XA*2Mbou+|xE| z(sj38T=+n+ZtbK=HxA$YyC)lu7~qF_#y9@YNsw{$X+F$I>y2vf|sv9eLaB zqc1*X_XF2_fBolWvD#7VmUv&8xh>~~+H;S&@}sj3yQF$f-{Sa(!K?S*=6~|9wsWqi z&AD$)_JI@EWt?Qn+jIZOEmu9eboP1MMu)fEd)%xqU;2K`wbzF-+h2P5$JdY8cE)9| z7GIN{J8knRl~w<6kA0x#?;SboPnq?OR6RHIr0m=8dgjaHz8JLo(*^H@9=-maM^1a^ z;9=W7x_-^vFF(Jp;r?+So_&?)uI7PxXC1p?#mJ`Sek1n(>FCFo{qg9br#^GniX%TL zzxSKLYx-?H@!Cnt=U@5Z4}ZD5_SM!6zIiKdv#*zK8vNMj=f{Se_2SlVzQ5Mqec7v1 z&I&{}{{FCMSD89ut{I0PIj_XD;jHcDAJqC5hOc=4wQWy)y<^+CEBoH@iM9HfRaG~I zk9gvbm*4$t`3vvZ|Ey@hc2a7xmsGtLx0q;U!z|esR#(Kcb8^<1Ol!H1{tyUFmdxrg zafJ)LHdVc#X;D@Q`Sf8pWEC(v{ibWu@69HfXOnwrczG3v=+h!VhGTe!nL^AanibIO zZ{wNcFtMf-=`Zr>%Wz1`r~Lst9-llZ6^Eu3W)saL$o=j4J9ebvz^niqKEKAwQDx(j zR2-TwXzzxFzI*>>A5F#6E!!{}3^ct{GL)hRx-Gk`k<=UT-> zrMfxA=l&F*CsTZ0N%8qW_-GGK9~3_Q)VKywrNCKKA6nrir#)PKg7A@49D9mSG{xs^ z;gbO>K1W=Vf^)9HC-w3n_%v3>d3t#4c#TcDjfgGL@dvPJ@4_AUr&h;&3Tbx)?V(`p z5HPOML0rGZzlxJf_K<(7K7?~CevLz?P;sUb&PpU-^(mybcqD$RKGVp;a-ZI(umC>f zRGeH&&r#q`ZJs~lOGaSREQ%Dl1Z1_ZhNu$mfeyMhSREvm<;TYm#v8ZvC z-7y3vT*?PIvQ(4fDbeSP)(5n>0>jomu07hVTv^0$3~|xQua>Wm>_08ms5XnZ7>?nJ zDJ!EA!P19kdInFlO=Bn!F7u?lw`x?s5mba@q#6bv?WE@R z)#gVvs=o>~Y@M>s~R6X2s=s&wzFgUuS%H-d_Aj8s{S zY8F1p4S)1Etr`_w>`jhvj8tRcV>X>efpBxW4(`>c77HrEF;blfAFUlWjW0lVSL$nn zpduV2)k%y>>0fWW_tw=K)oX%^aEw&r7?sjfsxG_`4P1$9D5;!qgkz){4+K$AXG*j8r5E%_h>A$PJq^%&Spl4dA|nW2B;SL6cE|7jN06QJpEM2**f; zse&$r&!1V1OeiH!t9;}L$4Hd}A8k%_cU$IEjp}JZML0$(l1|!XY=1sujxL3LNo9Z| z93vG}98eKAavwh{q0uQRJWWs$j*$w=6R1dbkt@6Hq0JiA3PD9UMk>Y47@Q=(A~9)v(R!ZA`!gO5fv zWcB__HL9SXA{--C0i&YcO78H+(s>%yrGkoZj8xPDH5s+NG%AOnA{-;tOh%<>L?@e1OK4Q*3M#@eQn8g+ zb^N;f2P_BxgS-0#72z1ENPcQ1f99rhFVd*?3o61fQWY^OlCI=#A0{IrC9V?=QmDT^j(Id9=IVI4juAb~T~obKJh|P|<#FYUs^dh< zBWD?(qJ#7GaOypCENa}q9xt!QJ$T92&Jo|n#yDL_S6=Qb;TP&RxE5C*S z`^kB^8mD59;6FKUa*8iv2uDjjS(Eef^kK8gOFR)be5V*6GdGsF{+7I?5OFu2*7Crp zo^C$MGI*t+<)@A%dUF4qV`ZA6mvTL0XwgI ze$^4~&l6^Gta0HQHC#Mq%G`t4DNJK_mALw02)9e4c|@K_4OC2(xv zLyIh857VuFL1#pbOyrIykrp`A3j@K)PYdoExz8R6I{b1lg&Ip3`aI@i5f)dEL6j)9 z;0oFCLcQ1Hb{VhI6ALjcP8Uylmdl093UPHIyRJ^-fJ^moH&(yy>$L9JrdUg1G&Mf@H)l?FEk;?1|P+vN)xt_Gv!5)mm1 zN-aCBEx4Wbs6XI!`+PyAh!GiINTI5vWfazuIIS8X66tZ{=Ch#R1p~FRnSmFo$Q)nj zS1H_Hd(7>PdV@Z{5)=4i?WHIm%m1i6JM6r*kl9W_U5=xEwlf>r6zE`4FQ*X0TZ?R+(r zHxb@0#hSRNkbERSBSa@~1Op-2=`s+Ch1jBeBdtn@b{UH~Jh&p%Z+G>!T?SE@(Qwdh zR~FofJ$oiaYme|@k*YDF4rGrv;tqJ6h7>9*$?E-;;>J6b(2XwY^29t5MXDj=d<7nb zhie}T#TvZ0|52rL1#oSq>~%ch3hX}ZlA;LiQ3hrc!S8w=Nm1A^wS6f_E69%;}$<$)u^oD^L9Z? z^N?cfQ4m3V2u!-kqr+X~kTRa%V@ z7m4f)hV4z}))*X5MGQAM&SvH$#N z8@Bsohuax}xKQfKka9lK^8B(S`1zg!wI*G-9yAd4Mtm4$6b{-wrP}ra44X96uhIx* zJ1zx|hFoYw%BV+5lWySDmxE3~MeVYTJwg}-4TLF;j%P%T5D5(XT^@*zn3~dF4TCPa zIMv~eI2>rT>BlB5rMe-_<+VowK3@R3%%LI_lO3bR7V-wX&R9(7Phg*J$Sp7TFT<80 zX9e~c>L&;Ma?MFo3MWs&3K46I{t&EFu)<$b7!8uO!`ue{#gS zr+fYG0}j@7m@_MQN&IM;;SJy%NXBCm3QkL(G;<$<@=)%-?}=X~@Ctw@rs;^~d2o2iXg?ot`aJ2al8KqSLdT+DGD9KTcqGIQuHE&cBL-N8L?**-as#_WQHe z0qG%NuE7!Yh3!o{L+wp_I4&Lm-oDV?-t^SNwBw`Q^R%Y}C!0Eb8MIqmPVAOD=_&GV z+WJlnmlLsDd)(j$WSnH$jWd-ybs;As1c&jqq=sZ7r1|_Unbynt0djQAHUURRc>q!1 zNn#2}Jj?y%_WqO^Ys-ri#^S@%hKBg4&IPZ10HxL~*0x&|zxK2CIX2P7k)56c)L3y7 zz&?hBcyKv@6208+!+X*PyW=QwD@#1$5JjyfFkbTi5ceJMQB>Rivt&c)8=8coEE>8% zAe2NeG-F; z9Z<>td(OQxv$MOAyx;Hl|NSPPnVdQId(OG#+&Z&!De^a_;|HnufjJWBpMEq1GmJ3< zZQD|h<|U>cDC_M@{UkBw_?m`3`V9=rBtyNR_?>;XPZS{bEj|^v zW8*zYB3|_`&YpW^Z70x!a9R}yt{s^wz_kNY58+BaW96R$(Ymx%!HTXzt7BH>7hG*j zwMU@{*}9zWj z^23mzP=TWu3W{_Ki7B9ZA}-nyPPZL_5lSBkAqhIDMi}-D3qmjHq*h-$!s+dYzzBV3 zx%A!re*J!0T+W4GWn8#+?yMDCT{jG`PW#)fA6K0CV(-k{XYRAdT(UIo^8VL-QXEyX z<${xIR*%`8`qD==gKu~$wd?p^-)WXGbN>JIYS#hHg#JJ91uQD32n(f|Jf__*w7Umf zfDhU2F)cEMJWV?UM|(^`T*1+nv<(g|V{3=NWN5eeFF5l;I8+z3LtvI^xA-qOw}f!+ zmYfL1E-{bk7>%j4|1ww#u+|^UkH08d3|T6k~ux$1gcV<3U2e zNQ2s*2ul_Pn2xoO5ZkthSIgzif_(h`M(}yHNvx%795MZucUUbi&dn{M9|;&7!Uu3@ zOPB%~T99Ar$t{#Oco~hLMa3SCfjhjQ7O;R%;|g9z58e-^xCnc`G=CL6aIshII&_!-Au+ruiO_&BWBO5XadME3;a|Y_@<;Qne!*J*=+WSf z9F-U^<^VLNe@%JmjdvG3ah0MxA}VzFF@0~71E5=qHod}1p*1+)3BvK1KH$|Q!p(#C zth3{r>3!%<{9MwZ;M=@GWB+*IzP%7*+E{@jj}7-NaoYFqdSL$OD{#~Uhr`i}eOICD z=s!TvWVDbkF9M#HjxV7Lv1I(p^1dg&V9FBU=$-rDGafn7(++^?<0ki!a z`p`Wnhk$807zB={^x+w(5)I69iKBKST>PkScovv%C5~E}a5(CT+g^;cT)qZv5T*J221F%H%j5+y z(L?r6f$0|i*ZOuKxDPNNNt|A8LHSn!+$ms|jTHKt@+<1&p8#e)y}f{=DSecV<-piS zGmOWF;nFb~<)#9&p58UUK|OFd+-&gYBhfEY!f`a^rzr?K0!$ama2!qH{(+1g0Leuu8Q?w# z<|9ftj;8!C8)1V|X!pcLBm?NelyV31{~;@UI2V=@zJ_@{jD^4$K~j zYs&8Bz42Ms#kB=LM`8#^2kQ%3 z1B(H_C|4#OJMM>iY_~ADW@hHUsq% zCmny4e@*s^1?jUxUo9}lB#!*Ksq*+1nA7LbNAc@6 z6PJLaDSiEci#_H>;WY<^#9n9QtTo$_LD2 z68Bf-`z$cK&Y_Ru_p!vBE4{~n`@R|a+Fzk*691d>m#)C|k=UlngW@;7nffLGH}xF) z$X}K=Q(pye{&VOfe|e&r`nCaAdk%dRzb~4p?+4)iJcmB2Z#^-1A4UUs9C|*7=|9qe znH7u+(>`Adj4v1$M&IMWycmoN(nsli2bg2QxG?%Gb1*i+Nr#?}Aboa(4VDqi-oNHwELu#BT#IPXyz_=sO6^d%?IMedK>XNercfj;6}@ci^IE;)&?{n4sf3}L*Jjx z)E7Aq&qQ(3(NuYmKM$Kn2;*p~JjTz%+5k>En$l-SSpGb$Ti~Qa$A$5~$L3+ag_8~) z7vz5wzqjV0kHblajtir&aURy|<}=K|h0!-qVg#~j|4Rfe^&I-BKVR5PeMP|Ca1MRc z{;hAOzNdiOaSnat&mS~X-)F!z1nUc0FSbBm>jk(39FFMdki7}XZkrICBP^~{GjR0W zp+_@t;Nn8;()vrk5M2294Q~dn1@t9`;6m+U$y*s4f(y0V2Drt|z>(dO5L~F; z4#0UraG`c-9eG6vE>s_t@2U`7czw5q;KJ*>GXxi2-+dvtP<`YF4>bcv>zjWM!G+rG z1l+UDz|nJ(+7Mi5{OEbs!Dix)Gy~TS`aTH3g{Fhr)9;#rqkK8r3>^7O+l9CU9Nd2d zwHpHv9vy-UjbC@*5}Jvd+zcFz53Xtkt`Bf4nt`MEZE6OtGjK0A14rfYW;1c0H3N4( z^nKq99F<$U99#m9aOFnv>llIyEjRM}J|VbJzb9P(X5gs(8xn#Gwc8uGG0nhHdS`^- z5Wj#oEdb#U<;)Jk{Wsp}d;u!2`CopgbBU+;f8cFS%8dWJgQ}T$cw$jftp9iM&@8`2 z;~u32PK!ccGH>p2iscmEd#nLMpEXJb=s27fegH^~kA)wB({R$l-yyLvMa?F4Jr+h& zV`ky+RA0c91J|BRsX8?eR9EKRhATZqwkY@DDr{^7C2VX4C2VX5C2Z7y5;hKi5;l&2 z5;l(N)Jagnh8@WngFA~d08}hfaiID$l>llGQw~rx^s!(s1$?u5CSDMZ+us7)AAIQc zRct|^>N}(Qs&7NLh|m9fE^v8kTG5NU5s<4*DE+c5MPoJcQHApLu?ODVhS_&r~6<_c3)7t{a&82-h7< zQFc)QTa}-1rNXr;7a{^1nWDnLXTu9(?by|91`5UD_B~7Si^mJp`7yMi>xbBVr7SAG zrk=JHbzx&lH@-5ySiIxws=m1uHY(~uFVG_U#OJ_$XY1(=X-C4&6UZA|)oBV#R068+B)&9W z*2Dec_;H8#y!1@ zYvs?33*J_p_YJ6fS>g_x8S7xq zGHiW>!v6tvlmYPGkV`1;1J zvPSyeK_SQ-eQ+b97k|*!I|ab1k8PDJAYt1YQCZ_Db^BhoZ9OpVQV+J*NybL2wYbA3 zstv0D2215ZPjva|u^w#4Gl_yK50;&DZl|cpoj_c^gKPq2-c@|D-aQyQTuCoI&=ASn z$CZyATNVLvv^o{O-3=x9Z^i$sRNvYya7EQOH-`3p#r|P^UZM|#7|u{t!?d>Vh%NOs zx8J)O0s1goFz(L8@hb`qqeCmm8G0{rAOExww3@<6OS06I{My>?%}w zA7*E8g8Dm7tD@q%pQ#17KFd@At|OVc0oOa2^5VLZDSBb9im7^B?`C~JfO?pDRC8}< z$^~jOQ!_!`%Q$*@{vqbw4oWm84}m(wJZ{-(BZ6pZ-tF9?|B#B}N=`{w@iywK=MuSf zt6H&#yh%EVETpntltb7nfLl$ONz_+yxaz-EcR<^=yPrfhYa0rwzFR5Rwdy!0Hjb*J z2m933t)c)rP~Ys?wf#UX;gnGR3}z}3)GC}-Wfrb=Oy%Nw3sW9kZ)K_iS5cjebkc?k zG2CuqvjwUys&6uOb6gS4e)1AU_}B6^5VUw=QG?242?Eg z2I^;QDX;l)3yMhpA~o{qCc;H|S3V z#K!^G{b>34Wg2;5P9)Pjs(psMZ}QL1Khs1U3E2L0C79-t=?FJ z{oq<)KRB27l=YegF7I({_O!=}ZFp^4Ta2@Ntm9gjwNe}RxEc>Me4CD}yHMRhpJPH< zC@$M8DbbAx8E3z?gKFEfyR;P$Wyit6hS+dUm+v*_ervR-k*H+ey#ugK2c?L9`Xm6H z4>IgV1o&}UxibC5Xh79)i|T4OEimlGog zN`-T-^GfF&`ZW?2?P40@*xkOH>}nPEB2|5V+YI||U!6FEDDv(fFG3aklohJ5d6SDXVYlE|o`= zjdX5DON7lGSxx%jI#L5|tcHWsx>P%xU`3E`=td(dqse7Fik7RJ({G4S(#ev7f-*u>ae2?&__arTB+3mMwSn z12ht7XzlX7VYKCog)12aM8l-+>`9A2(ca2dr3e)H74}BP^$n(;!u25ztk zp>%~MLB)a+5_3RpD76snYcAsP+t#JK08UP`v@-V+I`m^0BNg8C9|5)nLu z@a|2hjfLPwoER!l^Us?F$+3Q1;J^=?nN!zN>=@DL^3}V1N713Vyr-?U6}upf$hYDW z#SEQ&DB}9osCl z=P70cwykvyS5Q{DW9_t+rgJ-WA9)~SRo^>2r~_CXdpyOKA}Rq!r3A(=N81QzksHrf zx1{YhTZ&;f>uoWjhJ0>-@%ux4+ac~jF$kv?%othGG|H+>!BtQTb?P-x!dE^9MXj4v z`4_H_Gi60m4l!l)4>XVZ&_C1S&m16qTJQR}h<8wTXiGWmtK%M`mX>i%ouIb26FXD+ zC74pytNw`={AgCifYaqWsa2JuRBt2w$vqn;tFlXIM7t27l>J7{NxSkJV;V0ji`<_Q z)2QgJp!@+VenA>dpicX#x%xnD#H}`Duf71~!d)0DJv`6Dvr-JE1|h0qZbEa>OHl!= z%3@I0pja4>f3lp;qjr`Nizob`&Wt zIBH)ubMz+QDn|P`phW)DC^*2gjUC727$_fc{g9%IqTvn4ew2$W+Ukmv9qWI1d8JFh z@``P%zXnAj2FYmH%&vL^;=co@m1jQNnYt6#7^bMUYEu>`rKEiOPL#OfDNy~}c}2?i zmNwVGq;v*tffmQ(bhO)IgL729OfL%GLesoSF?AKx(4o0Qiil}q!McK6jz*vXV%G=CQ#I4FzxQ^kXD*<&k^Ee^A6C9PxJlRWN=&bsdVm^O4 zHg8rjqQeyXJrq_&kY%!#}4XwVlH7388q_k-)Yo~fo zN0yy%ZilFnN^{>x5E%FH@DCZ`wxu3X{ePpr&gF}cgIG5E1Y6q!RvxrvB zLao{miV-qc^}Q#XMc!!GcZ3?Z9^`}AK-i%+((c2ueMBif5RLLR7J4MdKx{ zplBQNa=u4Qxr>7nl&~BPdaG(=7GQ9!t$!d9+919P%@o|l<=cZs38~wIYo z$~k0`oi$UR=J1^qwEp{kcyn=sn=Oj$Z>Z*-f62M7Q}Gjfj-Ge#yzE*k)Rt7JWl`E( zTNH_m4{P?F#F8GSlM|%FQQBD-EtLgon}mR5cCunnmoRlLC^3?!d2t%^Xi0JvPOEYd zSJ5f7K)H!dp#vz-=JeY`}B zx;g^mVjO7@v#MB7LPAVRX>zU=iNNrPYTp7Ga8PgwadA3iTYbYokH+WxWG*y+-}!ogSw< zr^(G8{ROcH(Unj#+*r0vjsFrIq`NwI5!&Rq)`~LXW0(KN*hb!Un3jR{8kqVUDqwn4 zdEz))1KTYsjhHLhDn}uARSZlTYn%zaT8d#r`=s(4xs4g@PRwmAyGWZ&p*nTO2O^?4KXB6$Gp48pzCMqE z&ikaXA0|Io|3%zIw&7D4zqx&O4cSIdpKW4 zBDHy`iI33AlC82I?rd8vRQJh|jSTBX8P{VAc{QdZlMcioV8{R8r@f91zzBU2L|(etl&NdEN?%)kDefBpX| z|GK$-pPw`TK5rubK2NXu(pK394YKzYei&k_ydPzQsj>q;?DlWH9RIwJdT{*{1%ZZ= zO^F3A+J986Z_$Fht!gtQQ~Zv0NU!uL1|vJro%+{qhLS)&31P4B02O8V+MQaxk{%#v z4RQ6##kj+4vl#!J<-2yEa23xqM3YffZ{Ms2x{O>Uz>2FZNtf@C$N*X>sE>pvga-NQ z#1`(pvPG~UI+8Icu6WF$X+Wg`;m*{y^+-3;gJKupA&3O0-@FY4RNv>C_X93>BQJkE!9ykYk!w$Uk2#tx!{AgB5DnD|NVh zH>k8qoh_#6SJo~>py&o@v?96z@(D1qK+?$|8{EmVW@%tH+h+k)D5b?9? zR1zo=zX_m3{HB5u@tXrm#4i_=h~HH@?ixLGIVcgoDo`SR^j#zxs#=x9pvsy0H>l}2 ztx5x~4>Ip8sLPobfvT~bc^yG{nd%Lyf~g^(Rxm}iaW+d_2};Dd5R{1NwK`R;Q+Mdp z0Z<|jz5*pW=pR5`!utLIHJ_4GD58O%CqRzv1yC4e#dBUEQ((sXh zk`_Bsox7wl1)N1oW7;(BwCaDpG76foIxI30eMq8rC(Y9$>5*`zY~UhcuKY5EmNSV| z_Iv3`2A)a1i6<8HTt~Lv`lA?rx^OX&n{Zl{skl;>Ta|oVpJ$4lkfvma)fu&}f>h8{ zhMuen=O!xb%L+lSGW_qoyKqUsHP!C|`*G0tp3Te3Cz&y%3F+qO{l$fBu3`$JU>p^YAsXbkyK|49V>T|`Upu4Ns zEoSNOaM>WX!+q0YDyt97+h$O+R1TU7sSOWCjfl?k}_p2{id z>`I&w?U`P2b|6e(G4!mZEIr|NdM%}_r`tctvfnzmjoY`6pPg}J~ z2R$Q@`c|%Lano0u&Nd7t(DNyn$%(N!i*Ij*1YiuT&-iewh=nR-qP|vwI@wpR-9RYUenWq$|KP77(k&jZZ?{n+iB3n5t8nM zFbt1gH?3P!X~oxw6%-Cgzb1x!jb41=ti8h$X&qivP^f*aPs05_PBTZ z|3R&4s_&HQ`vy;5>-JN*xO}frQK^ml6WWa_JLUA3%hIu}pvR?7Z==OlN&TqP`-&T_ zgyrU;3Ae096w3O^1Zrc>?Nr|>8>wxzi$M?;mD7FvKtwjzdCqD-P5NBE_cS@*0k~=h zm)=sNol$(dLlvpsvsi{dj_g&v-{EQA*;XaJ)a_HJIj2mU=ANo1POz4B+P`8u#j*Ys ziVE;0V=9(gr@F34Eo--b1&w+w^;E}nVLWx4J}oUl6Q)tCrJhm?L}bYg5T>mL%1X+Y zx3ZTNPy=?k>aA;y2t>N8b7JSYUe+EO?q5NRWfnZAqi0_#p2!W#%R}c_31v`cdnIa| z-L~pp&@S7iy*4k68!;_{CQI2DZXa~H{ZCQ(P?vOh{6UfNKc8)E#Pb5mcv=K{8$#u~ zDEF~AvyX2my~xeOwn{$;x!8f+4eTC+bC~*)a5?Pq{gWczJ?}Qe*E$xDKU-2{OYoqy zRvr6kNxd6y6lLK_gjUV+&^LEb6Y(ISEGn;c)n>#+jrd(1{8Rn!h&Y}=cr+&w_0Ivr zp#_WBhcKzF(`GxGqcDi;u*ty|14#o)t5OU~)Cp?6#InI=P^)lS6?#e~`prn7#R#bl zC=t346qSip@q=21)2iHotI)Rx)HV)12 zP7mORE+YCpU_h8VheFwyKq0hpPSF^P2GCaiAfiw*1iY6x&SV!OfQmC`aLXC!#Pg#R z(HYc=p@W!h%6A?>dyJ>G&T2<5S>sa(EBfi}GA`&fynwePR70e5 zzas`q77jGEDjH{%T53q({XptpIL6NM>tfK%r}}iQ!bJ>y`r9$>VP9K6Vi2_##v&9& zkM-6L1x1y^s?a*V$OT#!7P&w*(Z`|Hdg#NT)-vyLP{Jpk1|@vr9L3NIKq>)qF%+{p zqb#Wyo+&6x+(R-E~SID@@AxRLdQIFSRvW@B{6SxFs0DO*hd zC6Y}`mcn7DfufEIqXs&?U&owe#J_7*AX8?-ozX>Ic=%@O&)gKL$)H z-hhI<6K{`tPqnqJ!dDFy^&Y2hO%=F!BL7C?7k)2!HZ0Kiqgx6+*W&pJTXXuptG^gB z(saEYG$1bDyIOJR3;S@AoU z_fYSvdU>0ovdcl@4+5-3W?cZiij`zy8FvjYK**sV#X^>f$hd6ae3cBLmKu+oZB>)N zs~<-SM9TFDCzHh?2ypwJp#>Y?cW&P{9vg^}!fnp-8?msU`meE+{p|AI6fLvCzl$2BdVT`qyPL8`peYI?%3l@jWAExKdKqF`+=b*(h!Z#xmgQ2g$_kC)EwzjdbA8_-HWk0~ zxb!?DiiXC9v8wOxz%eOJ4k2S2k2bWc_?@~B-*--1Dl|@r5jj}(ZP~B}y!Wl$%X+GK zx??$wZD1)IpG!vjQs4Fu8qIv?+oz%ymqQu#=vnj@jp~*U)U`GSf&bA#4ZdjQ=!FGp z;H^p_uHvPYXF#oH-tV}+i8F$~jw;&f^HHLr)ua_P(N@#C84V(>%6w3wf2Pf<1#S~4 z(c;qUJA$_jlxT5lL5aA~U{y?{I-y>Pi4@KMg+w(dF}Zji)ONN;0}T=9e}WRzjITfm zi68aQD6~QX7Y9mo{j>$Hz%2qLI>I8Iw-J=+2q9gn#DA5tN z!H7{zJ8YnYjSE4EX-6WcjU4+@P-~ca64Vh;5y}=&Z!z@(C>p^=DD=+NJ50R{>LaFV zK)uV@L`lFoi`4($l1m&OVaiUnoa zW@Ia+&6JkKgr+*J9Z!G|DHRl@<$LA@OVQ_0wS&?rqy$A$zcA0zsg=@cnoa36vV+p8 zq{HX!irdaZ0Kb(@|LL&d6w-nsX{w~i0nS|>{OJ-DDsW^=P?WnuVkD@dfS85TO}}z6 za+f6Npxia=8y19K(z)UsdTEh9Lh0VWwbFIk?Ml~?x8dEoTNESBczz2bF|hMGPI5@G zyE_xObiyg}K~R)Z`j|UP%!W^^=S1Q2>i9pREtlHEni&4m_(ezxiX`bl0VKP&Qo4HD zC|z?9E0lTHDIGsYAisA@|LLF@328x*bax>gkR9sop}WWecU{h!$}K zyo4_D=!5@4LQo_@k1i0)o-LK0o|f>+D5cGamh(tp2VLaxB>oFYL6IbV+#b2zGeT*N zTo%?u4wGLPIb0!i(7&f}3O#}%J@m0_#K3A%tP2Q(AFqple0>^MAt5M|7$YRQv{Jg{ z;G7nPU2R(`T}DK6xjYmg{fsUxD3ZQZNOOs{Mv1mkY*R#u76nMg>XL#Y$z&nPWrDmK zA!_fq0IB}El%Pn8e!U>mmn5K@0wic^BGM-)lE`FQl&SM>yTfg>D5M$A6@o^fsJBca_vF z>}zpG6DVV9j=e}F>70znXh*m>`&h3fw!IST>8Zr#^iX0)c2{C8os^i9=Y8JgNT-_U zEFu37GA555_%Cu+P-LBcy92LbA83yuS%GQg(;{cWc% zAt;i#Ur10pBkSRCaJA!Q5Wo#h+TlhB8kU^1U4D(IIX?XaYXx* zZ9i{)B&t}ns520%9W<~N_5?-J&#-i#PFAJU-gZjl$hHjDq{zbrmOM;Q)D8$KLhU(+ z{uhOQ){38?OEeXc5eGq$Euoimjt=k#5pI^*DfNPjcq{)=yh%3=owXyJ{@wqDc$3Z( z=g?cndIQV%QY{+z|0+&VLV}_adP7JAcwKgYM2#*XD3W+bNc3o<^zgJ+dZ54Rf&Quo z`l}uz&ifnyiu^az|O+k@{4~2#RFAVhCJ-URTNa8ag5fIDQz}1dg5WXXqiX^C=K;38?skD7K>SSb1L~)CGVB?rC{_%A`uELg}Nb(1k>=WAx ztwywR-j^5$zuQ`goYsaVG->i|Arqrhy>w|p(ey?;!rA#v*pU!TF9{iO5fpj5h!yFi z&ns(3IK6+e-f$zr8JZaW*WnZ?7ZjyD0{)0R3mQKJj?fP1Qi39>)^e!f+dOH)@Kyi zuP!XQw$N_g`O>~57kgS1=9exhwPO$8;-V5yZjNH7A6wC5AH|`}n36UNs>C0@{+g8m z8_Xc%S<1M+rH;O(m(hP*E>qI60r!v@xh198xzKcTiGBFcIHj*^^hh#*Cr+0tc8cGn zO1jhKwx>BnJ1 z#D1)HY&Kk6R9KpOiM?-*qUDY~C$}&^H|JveLTuVe0aJ396nS#(v@c3&sSGtsV9P@z zV}>fzb!!F7?4^s5U3M-C&79&iZ7gbEIKOaVZb1R^G#Q&j&o9ie=grT@EgRu<2i$W4 zo4&UXD41XBvFDbQ6qO8AQm|6Zmq3l}+YD{rhD-fYg|>4pplvmkG&X7X6xrt&fNL*Z zSTY|QvfCGw<>lp;C=eQ|Z_iY@cF(f?3drgLI>wV06w&ZMl(Xz6KhAm!v@niR&_h7pRyNrCU^~N=0UN~EKW84bo`hpc#bWGf~ z_m2ywSO#wSd#~pYM&0(zOU3u}O8eD%!+@dbQ)Vytcfssl6W?1Fwf*4s7vJvl;A;P= ze^2|Zeb2j}n)CNxU;E^dmxrAA$32(5ec|@$|a?+riQv*(Gp31jGUwrnaEA~%`x@)a(>&cX*i?!T``{L>|^99R9C;j7(uY{d;9Z`j%L z{G_-eonI~ZHY$3}(_;&UFMjEdpEf)OV*~F(ep8WRu!yh)zT5%|4#Mg-_i>9r8w&dM6uAKL%=c4O!3eLVh;m?8NPdwJ; zt^IfHJh|}ABk#7U-n8hO>~_1m#I&BWdi|jxofft2<`^>e*?y_HJ2ZPY9kCp^W2tj@ z!>WlxX3j_`8n)@X*4=*mWJ=3VT_5Jf-q+{Qj?3zcDmUi5^>FU{QSLh? z*7i+@#9wALrlr z@>aif<-2-(B5v;X#Nj)3uYWD#NX`5~zfFGc$`?AHTzDek_J1d)-90>S`hcg`?)ail z`%Ob%ig~N>o80<4pBwY(ZRhX2-dlM3;M04*c<_7sFBiQx6sSaHV$;0$a9XrvF~K( zH0zeR*@vIG@!3rS?{gGw{JrJK2djH++A!{uoF$J&T^zN~(!MD7_{+aVPr2sN_JyC7 zUVEh90xi5vtvd0W==uSg{-|e$pG~;(ia)jZ4DZ};*@4MPx!1MZ`D9Q3FCV_$?a~-) zw`)dgcrAV!{+aDJZR|GPb?cuebK1UI{qutK34<=(^YDfK2gV(^ySI14Ki>QEg3Y%8H+fEJZ|KbD7D_eE{Ib+PDcXWI2mra+v`0LYAL*KsO z!u7X4{!7E~XJ=o(b;WmkJM|tEwY5jvtuJitI&eUnK|Ow6u1x;%_&X0As-3ld&aPYA z-1%_7>+hMpZpWE}dy|KDf4|dR_eB&Ac%fI11z)sn=$Tcu|Mn*iJ@(@Ji#_c>S)TsO zQ$M^~fAg-vop=7!cKz)gFDTq{HsR&_-k)*(ki7G^_IF1rj zG`ZxF<-M*v{P>LMdyfn|v}i)=U5giA+wQ&iuirfKSlUICyR}?6?c~XSzVzp~6K`&N z^oJ*Y+WO&!FRJE_I=i&b$9ZcP|NF()i$3}B)Sdgz`{PiXe~y`4IL!Kap)zXUz}Nr$ zu<*K`SLWxuu&3+4&VM!IMHr@lvW~h*T6yJ&Y?+hmXI0nIYu>hmNQa zDH=mYSk~f7IdF5IBZx8#^C6c7lvW{9lm}vqI>P29yg9;<$`!)Mr{LV6IYWeHGOlE6 z*$FSrWJbDFJ#;Lu?cQUU%<9uZ-oG|^G}T`eXoWR;GO#6R|$7D`|(=!lRA3;7it zrE|w23pA-81XCeQ3#D{^X#x4P9Z{ip!Jh-H^GdsJeP_GVC>%{sYZ-aMzWsgt{)!+yVt+A44TRT`+(ilG)I!jgz9#d*`h*rlNuL=hOVhK9NR z(CN|-1LM<^F%`H{xu!mHA(BWM12Ht4jBAUWRZIX?-nbh@5^U>2 z#*C#a&fXQC4WXEe7(;7})PmUNKEF8>6U!J)Ps8p_t3xq;8AELb*?PCA=;u&OKgOKF zmHg+I*9OiF#q?(kttFA3HCNfb4#f;$46PQC|HNGQ;V+?>fs9!!F}J)p8jo3m^Jfra zXl;zzrY#%4x;+##m@${)O6AqAViKB`U_BQzW;k7Oe*3uf$xsYG)3A_-(DBjqv2eFw zJwp)^VR;Q#%Aadi?E51WLp3zQqS<R?S~BZN4B<=+;am~Ip&xyi_0U_QW)8hiYUVr_!r2|d`6Ps6tSxKl zYLuAHdP=)c#o$B3&<~=_oIxQRd?zCaGa-aCFN8xsoDzp-Yh4KEsSwVqA)I$YIR6Ua z{1(FLLRF3r&3fMuPC^K0atMchhGo{XB7}2m24%&bQF~r;dgz?jB&Vm&`BZYc z>zq@P6Qgsmyv@f5ozq=%&SOrgXTB#_#yDQb43L=KI_DC}vFjYS=kSkj@zi8BhEYfYTd;2bt_#(+a_(vvNrnMOpt;Qj`O#*xW^9EzYqwO7aR7V6_= zoLSEZ>i=fzoS^}mR!~gErs^P+4HuoQ@66*%x=WHd#u(G)^YKpWf8S$BWlJf> zm^M166dRkW_ikO#-;laNN-@S{i*m)V_0GnGd_!uzlwyp@7Ui6=sruQ{CvPyMwn-_* zm~2t*8n)shHXb&l-jh;{G1Mbe77?Z6umZEgg@mNLXw^6#S zucQ=XOtvNfYn0aypD#XcNc}0L7-O=fvXtfI=(f_O6k|-bCh1aC%9sDNX1yUbPf9VyWXsJ`GTF+e z%^&{UR<~6mr5Izfm2R^2VrKg;hSY6RiZLcz87!rhSAVCnw1;l%DJjJmldVjXtu=4# zIA};6l2VK@*~(%mDlhWG?PquQ>#5uNMoKZpWNWg?R!Y_F4;oS}+aM4JV@$TDfE!`a z@^JX_)nmHrw)#jZ#+YnPWhu?)XQ(UgHKdZI6k|-brm>XfhpUno{v4y*%8^oxG1;1K zveoJ9uk#G4c# zldah%TScGmi8Z8p$Z0fVOt$8*R4-h~52yUmDdRld)(9!Z7?Z6lO|}m9dvui{<&sj2 zG1_B{ zu9RYo$<|_)($aPFvt&wlL+TMJ#Tb*Vt5}NKD2ica{g&f~ z)NU!o7?Z85O}4(C_lw7n`bC&WNW~Vg-;q%e@ZFFm~1UE*?P9^;dX{p&-Mt! z!5EXRLU4^S_Q$ItHyTojQi?GqTSY8IQK8(JdGEcy8d5W*6k|-bido8zD;)(3J}&8_ zmsgpTVvNbwQecg?cjjk%-ZZ3cl~Rl`*(zZv%{LYotzB`EZi_xBOb263wo1V@Y{lPb z-D^nglTwT^+48WI*7i~xb)jzS3n|4IldUq7Evn0g)bCP?F(zBrm~2ryKTNmPr2_(S zFveu-T5yeY9h4x=%_m#$@XTV2yPB^224L45=MbiZLczH?mX=U2)#j`MC;1>OCpN z7?Z7=Ot#*>dfXaA>L)417?Z7=S&ICSY<2IMA0XAy1{My+m~1Tv*GSiWZ(sblVQZL_ zVvNaFIZJ8jT9g)bsUejvr5IzfRbjIA+?H{}45_Q76k|-bRCKr2_qMufOKHKb-r zDaM#=-NI6Vd3dpI>l!J=7?UlZ$riO6hSWMK#Tb*VH6~k>heLH+&qyi8m~8n?wi;*W zH5gKdq!eRJw$_?#c^7tgd7y6VxRhdy$=0nVTOD?Gh%lrgJ0cJVV@$Sg16TBw6rSAg zC+Be8Rv#(F7?Z8rSxW0G`)+jhGNi^zDaM#=-N90Jy5ijbwf>q!eRJwl=VoR$lhc)<+vs!=)5sOt$W0DXlKk z+`Ox9D^*G{#$@Y$ldUtwGwg;`wv=KFaEfxBxQLj?W6 zG~f_=@v%WEMHutjEDwTXtU|>6)N-g68~n~kN)g5^wb3Nideyt{8d4uiDZ-eg9%8B1 zxYAMj$->JGsnb%5FlMQT!HKYtr_gcP(|2BCNOkEfxP&oFZ34%5P95bL)yI&!SV|Gb zEcJJm(#pNfoX>wSq^3wI!kDEVVJR)I2OPS($dD?QQiL%}J<3u;aHZqv%WrwskXj|B z2xFFd44eo{8xq0s`sp4o8B(uEDZ-egHiHvk(P9{xx$LAN^|6#9j9Kb&mXZT6#e47y zG&Y)!AEgvw%u@egsYqPu$b9((DvBm$m%~rOn5CWo$MC~j9N}kGawItlTw5+OFhR@Epeq| z*f+y}F>LkeD!7C(OFa)xgaz5n$J4i`!+o?;9w(&;W0raW97F1#Po|(qHK|!riZEuW z7g?$su5_%KnuiS2q^^-tgfUBP1;-dmbUfkBF{ECUQiL%}ZDT1d=et$)NHe6qky3;) zOKoQ<%@2PbGcKTI>v|pnaS+BVwF8_8%K!?*k$PZ4reW)1DMc8w6e>KVx|0Zw)_dko zH>7f;6k*I#JHaueBH#UOupxDilp>5->SdOS!Ih5dKDj-`kUAu#2xFGo1x|zo&d0~p z*nTSvso$j(Va!smfMdk)j@sTxx>m}=W#JRXEcGf&$;L=oy!oGP4XJD?MHsVG4NK8@ zjE<+LCrvV>)<~%ugqWpvgJXD<(zYIrgcifCQi?EUsXZ)pKCX1UnHGJ>kosIo5ymW4 z3y$$_>gmLG?F^~jvOox9mfFiwTDlUiy^;~Q;215X2xFGo2afSZ>l2%Q4k+b$Qi?EU zsr@D?=Uu0Bj2MR3wazbZy9U1vybkWz#(OC4aT-ni0nZ2R0&Lu#9pB8*w; zAUH-Ic1}Bu=2LW195!|(ob3UW)b zc~7+vPO0{)dtt7i78Vs2;&*nEonLCYUs6`!$$}e0b z$kJR-S#h?Mr=JP(OZCOMC3!_9OS0()ih=`#C%>>PH;~1@rwd@fM)nf?cyIoqTxI|{rF+{moVq|D3-$w?0S8KXmEkIKk!COMtSSg$4OgpM7mfzNSBbEM8PnIyKjm zf*;lv6wS|>s+Xe-m|h%~t>Kf4$_hRB1*XVZp-YIELKZI0U3j(TejL+}=sm3oSnWS8VFEz8BPU;~t(dZHRg z1)d^q0p%U)LJ`t}I$~;+au*jAnK_GdgE{PSo&qgivNfPATP9p$uO!Vh*?Mgr8k60Ne*Fh zMGe*~;~xU1B!nJ-_>Ii<& z1?lYU2~$AM_HdjGZouaGrbCuY#LTZs?xz@1KfTkptUy^Ae48OI{ zFN_`DM5vH#Dpbgh_)FQQLS=+Gt|7Hc#<+>VKvDeeEf7q%=3wNa89)pX@wiwvz&R~3 zCYF{pA*kVjf`R5_LuRt5^8$eZeVQqDMptJ_M(|iBP$neIWT%MQ(m;5Q-~@s~20wxL z(7-@Zqp8zcz(CnBq2YzOoeVE2fcg!(RH zxELrC6cQ*DIDQNiG4TThj1D3Y9>5I*YhzmOJ_7OPfN&z*zl0MJ0pUdS4k(blX|FVMP=I(5~{VL+{}c83fU2&#R&-& zvhhuX3fZPY!zGqG^l&K^0pUcn9zUFv9u`iJM+M=eL_nZO6T^l;;ie#A)R;yXVRV?o zLlqb!kx=1)FjMy-q8AXV^{ia#A)zLp2njX$L`bN~CqhC^J`oZsWJd~r3JDdmO@)SL zlrcIB&8UE|P(fn^7b+MK7Aj~O<%P zGEy97g>HvCEj1%$Qc|jezE~wS1}h#j!JU$!rcX={1nIhmXC$R&Bqt@iNcSY2ot)ut zxw6tyoLOm(jH2eC)b?jk(1I=lH942G92{HFI~wPw>!<{N=`}_ zSrn*5$BazLoRl?j(!?~%e`5h|jLVssl%AHJ1ksdqX)@I*iIhx3J|kmda(Y%$Mj$XC ze8hxw=cMGM38^wXASlC;oIWAVojfVcK_4O;pD4dXrt3~hcDN_HQ&KWqPBUVB{PI1O_Il zj^yN&i7r=)>Y&emjUPqdJ%ep?DFof>hLfBQRZUmZTqr~OTG;qe(=ti;FS9el;hr!t zDJ6Zvr0_BU**9`RQf5+0R?-9qeP2yC3#Uz+n3n3CO{S=jUOdG!Zto`{3u!i6dq*cEo4$M($(ZNHO(PD&xYEt zkiO5ROQNJGg92n+jwIKltV~q;06X|}8)Bz@)NcGpJz7{9Rwt!pCgFeJ_uK%c54w#X zCE6593BDkwOCe&DvXZk>k~5PXPSaQ3kPz)NZw5NW0pO&GnOQDJvRKU-KT3StjXW(V z{!T}l%Q+!4$(bs>;xCZy%t;yUtVvp7Hi^t|q`*zobQGp=l^`TX!bP8y8$XJ_DTg>s z)Z;%gB`qTBrf@*hX&N;tePY&xEERRsnK6F!_>tnju4z>A zr1aEuH!68ZB}sH;Ia4R4I9(3?8+N)_QkEk#ZIUa~Jt^Ih#^1FYKgxr4lY0!5p!l@i z_)+59cDmTeiE46cYGziF5gqtLcD8E?9vmcL3COhABbIrFjfzVcZ8whLqemqSA09t) zbRZMK!{g#c6K}+*ks}frKCeyA%7w~HZ@jzUcZcyQ*P&Q+T{AF-6aP;8vie}&{fXe~yD~W9? zpYHMu}Dm2WYE zj{>90w-lO6$4LZC0VZjX&`0GME*;l`?*Rtyp7YU^-DL=EjaL*_;H1NfGn_sT`2PUr zf{O{&biJgHjN}0G?2y04y@=r7fO&GLz%>=Waun2Sz)T!2a2@b3T>L(O-S>fcDqi5& zAH%d8GZ5Spm2)XoP#jI!-H)(aftfyvVFoVXMM(;wdRZzl0;wom-+1n$ap<#M*c=GB zTLbhlE=XT1;GSxxz88VpeGYwHpzkwaehS8giC@RjigG?qIw)Vl#gFuj1tv2X7e?O_ zV3q~rg3?R+?gr+GU|bk|2Z4Dn7#F0E%Ht=A0m(;GU$ix7tf)O{NN^J9_vg?@<=Z|{QTpJd zL(k_hCp2fD1KDFi4wy=T$+ksDsYp}p^wsA)J%O|;BGyKK5n0zsqaPLcArCEFU0RN zV1AdlziMA1$0|xkoOCpmf0W)~z$6Fb!uZR4V3q{qg35!+*9XjoU|bk|JAm02j0@67 z={*Kaqs0AHdRvdfCvtxHXokKW z&D6IKxVM_2@B3!z`yIF_nxNolD!t?{eI+J!xX}3#rEgy|a5O(S&5>c6r_M;8GVMY$GZSmK&h*r&7usnU{{znFah53-Oq9_i zTry`mR=7&%B#a)O5I;wIf2(v3y~;FX%+Q39L*wQwD9bO%DVdEF3;^$aSMf z4k^jS+i#`0L+A-l{=y;o#rR5gX=!o(kW#Gw(W8UnF7rArnJ1&wXN#&uK{ z(Efm(m0rq+9{P-x_@AD?u%xK8D9>XbFlC@U6Ys|@$-f?N9oVtPRE&)UN-zz=9^BEq z@jUHojxE^r*T==?LAp`4t9*k z4whNi3^y*j_9dFjvUWtEY`iM){;WAVZ?NPEh4D2~Kkdwjn3%O;!l5<-F`<=hYpcqG zp3dc`hm}R_SLWEZsuqM)9xVG78iJ%~6=FPc!K%1H&BJNsU&dd?yydvRl&OD!%HU9X zvs+L{^iZ)kwCdeaL#rvOZ&plM+wI9j(nij;JLvP$YW0n=adlqWyBr#|JgW8%;5@>v z(6foyjh=C;e}Vc?Fw6$_wO6)v<6z@*XHCxq3xItuTv&vt~*WkwD8Ku%@>-%vk z@LJlS*^WKDvH7}mTTg56smZpgzawhpHv(jQcmu~ppwhvf3w!pe6(?vH zSJfw+C4R43U9}N8;PyR44Q)L3(_R{b-Q(5jX|V&SIk-H02TYrtv&mba#j8nGL@=D^-H-CiA!aMgF%KXZ>L ziMskRt++Aq!*iV5+XBS_@K+$&(U#<)s$31PCC^)(61yaiYMZq&5Aj-rzF;HRw%!h$ zm7qXxwWxlVWpxYHKgCj6Q}(^YAX>KGDbUGrvy}Zt9mo=QM9p?8xIAaI;__!f0 ztbkq3!|4+#57OuIt1Z-s10qwaEl2`VgDU5=Qq8|w9ehCb?rxcfoze4E|FX7PB|zOf zPrBD(-zhCy$XQk2I;!n%?A*MiOoOA%B&Mi>-rccoUmeS+{+Y4dp2!M(3VOR}dNr-D zp)#RaqC&3Y#+}q)^Y{Q6uE}-o>X-Q=J#Mt5m#0@X+A6Cc>hxJ-8xMF-McP(fO`7C} zdsdER`(G_RKa(sY25*omE+ER8qQK((ix|K$4 zPKh1hgtadF6${xr3kL{}egwtAwrxT$=Pq&vlvxVK4u+Cc|4k7xd8+TaR$Ss#-sR(> z6!;=KUG_uU%AX+~#uqoiCdc1a^)E_~_Z5mBwuFC|k^sYl*kmWP4%OZ)WMYE%ON`h& zXkXUN!;l0SsaCI}%;pSt?ji>Wh@aD+dKPiC)YCrhF5k>K60KIfz3f8gE^>L!w^k%p z&3TjR`;(-2A9t;s%6GmAtBPl|%a^ID+m-Um-uv{~`z_>P+jk{h|J8eUzWToUTfG|b zmb&{)H`TXC-F(2R>-w>%?^J!)v)DeI+{IQ^OKL@SkFc$H5qBVjB1v+`1_zV%GEZL3N3y`lP5t1IFSb?jOyE115fr}RsPzDlb&PBax= z>W3oP>HY~;_A1nS84c8vHtdb{?EyeaPKhMCEl*GpyCU90z7db{PGq;1g?TB7=)|3` zQn{ttlD=;!4X{>&Y>|n3l5$8SZjf!o1620@%z>;mX8gyE^zy+t#Sn zR-5WyPOUG7N1}1T@Z~b;Ch7i+c;}XfwGi2&rTf$3(Lly>%f@kY`De^DHEH$7en-N5 z>nNjaGizj3k8iYfOo>fEUo{^7ZnteyJ5eKhDd*#ju_|>GS(MI%c8vg~gGxprma`2+ z>oFNEcyCYVmZ3q>^3NP^i-s&BV%vtn8-`f!Sk>0i8H*8?Yb2WYagNo?kTk6gt-p*T zxs%jW6bA34LUa3eZb7WwzUL|O(sa0nzc+$qgpkDTjTqTGw+vIqo`No0#}=wB{S;!- zF)13S-R;k`<9}Rrk|VD!DYio+HBv}@(!lKw7zHsFqwSRHlEJRsXEClya)Q1zulo8# zjsg0Pmr_JD`5tw$;tc8}a;Qsp@I{jp;9Yu-)1Y7g## zV%0+RHem=d67r&ak(CZ=8ZOqNapp8B;EpP#dO$24Pm^AnpZKg8K~S z-JnzVff7SN+V)gvc^%YZ)^ZHgbxi#TN(}dCY$I^A4T%`;T?uLm5LP7*)b)^vQ1pKjJ2BKEwa^!=E!8M?S-F2XZwU7koJiIjJ1rQ!O661W0TLdz|B=+k;AeTp_xZ8R0HbzuOsdr+T@1!s-HraNMf>$l@Bj4*@7n;o%mP(cn}9bL<7CvuH%7G{^; z1URMJ=XH>a`cAn9^Xgu@JEB6&Z?L*YT?m9R0pjJ74$7L}*rg)a(OI>UWr{86F+O{60-nKdk zh;Kx_%BxOovE2zxAUf2gS{qRpR$tj_e`@;}+qPA-bb$bjL(-!0zn4}QQJsAUXi?Fz zyB-1Q6nKH^D~L^?Dwth677A%a%BmFMn#ELLp6#G`@uDX+8Yo@V|M<7jRol_*(~^?R z9$VE;-2c~>KRfuHSe&8d$}sDm<1kR8c1K^(Ls1NnJdsGT+-WpJ0jl;RN`Z@>F+3Ol zi?2Le2_v)E>*q1_bnM|+nRi3Q2bL*LTwbGK)u>{yTo4-* zyj)s`F$}4zmrVdIsh5H#ji7CnhY;+$of;eR_AGVm9@Un11Puwd3)K~yQ8u(Pl_g^; z7fu%u8x2DiE6Jj}fkJ6Dw+CnzsHvfY3NByu-Go+Xl}OvIq7^!+4*r1x-ELo%)(T~5 z?to=1OgFLQV0ZftOWU?8Y9xi(vHLx(;SHpT2CS@^t$8^EG0T0Gu-=`NQrtbuk~hU@ zUib!L^Oug8Wpc#pwZ#6f_+UHs!G_4~lR4J3WQ(S2p725}5a)t@1x~B-1+Kye{vUg9 z0v=V7wheca5W?DFQG+N3Y#{8}2nmZMBtS<3M1l%}h8RF1TO=Js1x-va#3sUw8!F>I zijI!!2ySCo6xMYgijJz}Rz5n%p*MF|7Pv3Rd^E|blI#qSf zshWv0P<68!NY%|vK*b_w_k>U_zM#@B-@`|Uy!OF3S>JE1+wjj0@*1@3S%_05kaD|@~IH#1617nKq_v0 z@k&i!kFyc)UW#K)Q0QDBCu^;?sOrly^x53=&o!9RC379`a)BK?FgcF_;I{#GglEQb zeplx4qTKU%%i3+`d~)M+IH{S9gzU}6%tk_dQ=n-_<*1QRtNf>$*gzfYi@T<@1;H*r zNlSyX{4y#GvG{-e;JTN#{ z(;UhNGs}vdU{7--Sk*&Kb69d~R9@&|ZGQa*KXWTDG&4RgRGyF*`nX8mUseOvg@~dW zXnh2vis@G%RZK@A1*!`9fmA`H0jWWdeF)hu+4hi+UCOUliv{qkF303a4(rSx> z@N`4i_Oa{t@s?poW5H=VdeEAp#>YelblW1fhCR5*Dt^$(-vRXZA z8Lb|*wB{_}$Uyy!;#-JtnZ_&JS% z_=HnvgMTk_-JW&$IEkd5lXtOq&^zi7{$IG-u#F`SD8y=HTt0jUf4eU#cb{GvTy zvN8$!*+%@nLDl;dp!s5j8yTw0dj^oY0_Fobm$%d6W-+F&Cw?{lBw;Ry52(vPnp<23 zYj1{ayTw(P!nN%9hg}M;2YdQbV7J_^sP?nG)CQ@9d}7DO1bIAIKi(rT(0Q^q*bch} zF+d!eKgpB0;bJxG7Aw_Y<4GQd8lkm}GwRtqt1d;bS4$bo-&NOiKGje3=0)vn_AGCp z>selZR4_ctb1InC`m=)Jsh!oROXJ^C1#`sKs8VsY{VcZ@+Wu-}lBzm?0a6o^ciD)g zp{6GJs=h*tfm9``1yYshCLmRb{tl!n(LaHlN@P!1*^hlHQk~ZQh#&c=jt{yNMcd*K zOBIg+Kq?*+fSg9W`S|=%UXr*M1qMEPNYGu^8Vpfsu!Iz12`LTQeVZcsh-CX=__2i4Va3D@ z-w8q4rA>bNW*w32@-~JXY!~fmmloq`ml9J(=`>3P|D1AExu*~#+8~^}_Rauf9mfJF z4TY%jjBqNPww`uVRXCUjwT}{!V2Tu?)(gUU<6=BtZv-nv@B-?x7>6C?Kmoaz3cS2BhY4dH% zs4Z#gybm5_(Jj`~Z4Q3Z+IYI5OuD7SNts;j(w;Ap)K-XT`b4-$ZIP(Mmq#gnDz6lx z<`=?+mrWH|>o^xcX(>dl1H!cwTi(m8V*!BDR*2d^3g@mtK}#I}3&oe|Q-~TI2}OCj z_iy8gPut*$$5o4~eRfO%XdJv+S-+jDwMKY#;u}^f1`5$$E7U!dBCl3%1&_nhps$i+ z4N)i#NNG^2%vEnA*^X7VA<4tC8x8D)?}VW2(q^Trg^6Uhli2N!dFd{5)_A(4g*;un zt3B$DE((V%L=`yVY@~ge4%hXPLJCwDbO~nK7wGP&1l}?4Iogv!zs<74M zX$kq05|V}_r+AiUq!-~;?Xr@=SlKT%MOLNs%$kKINN{-a7B4GaSUM-6ba7clFrlot zWC2z?UH0SOemO1h{*D1DU2p#In8!~3+t*KzpE>5^wTZ7+^u6NK?7?f-{Uh^B-#>=` zbZX3^m-jBZa>|LT78X3eac^|HMa5~~)7-T3^z4ZSbPXe=eWh<>NP=8n>hV*N^VJYs9SR zKYi79;$;`LdbHxJUrze`&GQoO8oP7Y;_tSmkE&_B__r%gc)2WTZ<}2!K6vlCGWaPAl%#_{uvEx4m>x!l!8)_W%0pG5ZeRJM%%$ihD=SubA`Ds#8}!aMerS zU)8E>-kP2d4d~FdqHg=;*S+}jt?y+Qocj7X550O$ZMW`|KKD;)tm=F1irj+5ue3Yv zyWF~a+U~DCdGP6{Wi0tP)P9j?yeHT*Gx7DP+olC}Z)jyZ-V<{6K|LSY+=e0_! zh`y}rXe&N{yX@|R7oPU*jF%6-(eskk4YgO-&9Axg>*xEOKH}YT6L!Y$S-H!*^UvpH zZyCPo^d(Ictah zJ$K75zwBIe`S;hPUDUm8a{h$WGlsuaojd=z^sCb^_a9iY`(M$Mo#J4UgGj` zvA^E*@p;2fT7O+Z>ksq1&#grt z?A!st7@$z!Wm6rk?o`1M-As!Un^*@P(dr1)=htnwI$C|Gf}?daEr#H%9$)>+KmV+> z@Yx4eAQdIVB0PpnO_Y~C$k9L-^qUcK!WyBJkm7JHwscY6G@QNo4Z8k~Yu#aCSxy|W z&9o2*wAhPeZobgr26RfO&m&*`;q8v_u-d`LS#$oP1q0DFv$Qx~94>rnc zmCW=j|A7vtb>lrpbks=3TrZt{0cXARt!Ixr=xD9fT9h%hSV~de1VpME(31IQ&eEdz zyGldKsPO*^v<^STxNA!%u+EMxf1go4QKi%^;}aRHKDYa7$G+w=?8i7eq`X>u?l?17)NWz`o|kUf zgHCd|%uyo4-ZSgQlQZ|@h8!+)w8*eeL7&kVe2lrda2XlDczKuRRW$0GZ>Kbu;fOEF z%N`5EdbeWxYt3bNbw+vF!(|;BJvgXqxI10PicAn^UPZ|t^}4UQogN~?J{4uo`SeKy z8y;siZc$$LY8apB>wiafhszu+;2)Zf-7JQornOJ;U6nG2gSS2Sb(+Kk!SjCrdW^L;a>qskP- z$coQ#&6t7Bm=T)k3N4lk-j3ExC!3kBnK+x_%ZNOVvYGQW)6HgTHPb~H-Y;a)erO$S z%UrKzI@`?cn(1yc|Io~_HnUSR$J@-Cn(1jXUumX?&HSR7c$;ab66`s_W=_=1aW<2z znFO23(#$b7GgUJ_n<>_eQx;1NX3^Y5C1q>|>~Kfx3#}zGMp%7~u-5oL?B-}SX)Td4!s=&) z)nomi${j5jkV9mQuo8{1M!kOH`Hoh9ttB!>SpEM+SSM*Mkuky=V1)Hh(*7P!ScO_k zWQ?!|ik4M3w$-+}qqSXL^R<@97-0=E!slUpgGDcWKL`!;rKuP%zp5bUcuC+wQ2#Y;2wI?Hs^unW?-f*;D(^?{9gvD#fsfY94 zeXY#V`bKMsj1d;Ea&>(%tatDD^kYY>9jF+1?{Kv4(pn;8gvGYgX%9EV zuE}(E!`!B|M8*hEExp&e3{TYl(~z)=1H^+NhoD|1!nV!bKy8$QWUbGQzs# z*`j5&QM`X0ZHM(IttB!>SYwT_ z*8QpA9!Kj|ttB!>SUI*9fQR+4vmMrhT1#Y%uySoJwg9=S{&bV0wOwn8j1ks2(Q@Zu zcRQ@twU)>jVU0J!di?Se9&)t4)>CmUfUgwA`@(VD8YM8*gULvh5=y1rJQ zb?Uc{)_kocGDcYWMp%!(^jWE+RjIW^#t3VYXt5r$lwTF~TY^!g?Th-`$SZXIe{SjId5I!n(3` z*_Ix5SW&vlh>Q`|R3og_?|#$G(dw?XM8*iK(AEO*RGd?Ddb}Oh5UnLLMp)BqE#`dP z`m677w8m*IkukzL)z$)#d*umsSTnVj$QWVC7~E^Mhum-4(ORLk)HvO}2lVMiST|OB zdpo;1Z_rvIV}v!`)?&K0?K%2JN9#eYB{D|3W{8%%-AJ(0wL@!(j1kruMp*Yxe)b7R z>wT>yGDcW4jj;N5%m2>V5&NLl5*Z_`Sw>jDpK#m^N2^m?c;XNlLH#sCM=N3UV`IUJ z8PiNA-(cL!wVnyRD6dbn@%8&B>2Q*iw_Bp=K+Z z?f7`MwGo{N=zW{8+n?IGOGv$Qn~QPngVhb~rQBDN(n84wU5+!zT@Q8Lb=W0kbGfIf zRw-Gy1j~!tPEiS~$6{J4jxDAtkL|>^bjbLUWgZqEw!tf1UWBE;=Kjz3tWy@lu10&$ z4n{fL&)(_7xnf=NR^nZ|yfu^KUQ8}h?RvsZmRzK)iRcd_o&8aoNpfEt7uh_LPE*o6 zwk|)HqFJe2T45e4Rw_|pUMdw4y_6O=vpX9lDO*zN%B(|*=;ex@d*?hFQEs<@Yd<>` z5fO8-F5$3i%az)2AD5DGk-1b%-pn7@WvMl+>~Z^;x#RXxDX}ug?c<7A*v0LNTDXr( zNv6lT+ zTvoH;!gkvoE^mAM+gl?QWaUiG8;`wDun&+w8(ZmQV_zNl&zU@J%&`1PV}>P-NlQ+# zJ40i$v#?Rh$rH1uOw3a6JdMdLD;bk1Z#~&kX*uIh&Yd)Q+_)^RWNFhWf!wj!&1J&a ztT8EL9GloLWzyJ*9NkfmR!8Z%7Zs2Vd&y;Ai@8*;Q8 zIxIOo70Y>A#~pA#qdmIEV|54B{Td3Xq4=eRcVZ*#$gv%AC1G-r zcH~$Lxqg@|z8XIsoCJxq0{_$CZ-UGmJ$m3@B)OZwUjxr!dUA(Rh$P1$dLd+P*K+K> zN0K`M{AMi!D2K>}tvt*j@S9G336{vW%a|h1uh1v7?@ZkU%XtX?`q5t^9u! ztSVeCEPfpN-2|EY!sQ~^dl52kh0BH6;{g39En}sw zrTlA;%;7pLJnVFY*<*PO(=sB6Q%m-;AvY=9o@?kv{hRSy5N7W`SUL9}Fn9j{^2)gj zOUr}*`P#Yo9LBwzOdxdlQPu^u7(;%j0iUv0;M*j7A(_CAEXlS&T}EKlJHbAIP);mA z>cSWAUGSAuEIYe|R6LkpmknQh5N7Ki1LK^BkGz5g7AOn-9C{Dye+JJ8gnZVz z7YAtmTvx;bplFwg-514Lalo>C11(`C*#a|?Gj{oOK}1!8l7Li65Su%tMX3V(tRs^Be(-d@;w z(k5?m))C3BdVbu}ml01}s`%$ss8X#EQ>~tyhUYGC=+?oTj?z+yTIyM$^=5d+R`zGB(LYffJ@hwKO~`|T%OT10LcmV1j*nP zH$1svVRISYk)ymP;LPKy3y!-+$tPwC>b`WJeXqhogUUZ^<<9zd=J2R17jX3 z93o@P%cB>pwP^9oJ8u5b(W(T)Lu8C+0K7V#_W%}b-gbP9q=V9!B$q>EjIi2+cb*;Y zJgxzcYMFW-|4@JWn??6?6khF^Q|1}JXWK>p)zR9ewM51UtD|Ts-s8EmN9U&;t*^9} z$QbGBBwB327?%IXYw?iWieWpiQWF^?EIwCo(lza_pIkBQr?o`J2unhd=ajU|=jG1Z zIo5lSDkei*-ObKMScQ4xQyi^g9hS%#Ve$TD)(z*)t(96!WQ=rmwY8WVbq^Ll?P&c) zYl#eeJ)S2tL#*ojv(1>-495NBfcJ_h@6A*;jt`;1!Dmr9dv-;|WtdZ)<7T*ba1nNW zRI}Pj3OfidEG^-Lt&FJMszr;JaDQP%aT1jqUwZs{tlm5%Jywt4(OkujN^>R0%bIa< zS#&(5p#91Ih@MI_C9)gBl|U1R0W`OvAM3{EjCO3V5jGy!&1^x z5}f0Y#`435XS&AnePt}4f*N0`t4*Y_e6;GTI2Egfv3zQnT%@r)o8+IuD9TU#7#zCkFBbaJdNf z3LrBlTrPsWOCfVbxLlY$-iq#l%oE{q5$wGUna{%I!tAmBMe| z94)1n_Qpfzv~aly_JWY943`UwAIsxLEyHkmv{W8dKu(#_7?d^fwC*k(O=BAR+ zPPSsA-3R)ZxO4nFyE?JI`M*6kHNSZ2-2cklRP~pM`JuYKNWvsc3AEeHI)XL461QcC zvZH;s?JD=>g|g!~7Zfuol$X%73kyop8&ecetWt^%rec<*m=&)TvmC`Ny|D7nvIk8x zilQpB=Y^dw_N_X^pmkuK^AXr%@bsiUn_EBD+q5e*B^EOkz4Jp;;t|ter~J?aOCY=H zmCd||aV0z~En7bY`=MaIWgjRkOEo1?gSC}#D;!#TzYA}s9Bc--1S#fP0-2i{KrI`b z`p&#{Sffb%qx716SVzBV+eT`P6se`}YYA%}1}3-@kD44pzIAlPv}qUSmv+dlT!~9= zBGOjA11^B=?)XK^8si+SL`#o^6E4x7H8``Q9PN1=XTHK0?Rf|16@oahP)Myo_}DJc zk1`vr*zIA7bgvFXW9yaGmGIc%Veac}L9uc%LH6G<0EX!#oHe17wkF`nB$?)VeGeIg%M)$s_cQKy2quoZBNz{Nnr=*NiK3gW=#l+^7b~fy?$+xR2kNR- z@*9Gcp_e3YMf=r{+7?FJ(Xgs6OL;HMsQT9$*`?}fIS?noqCF1+scQ8N5bv_l9``~a z?3Y@{@c?QnOd%%8FPyhql&9O+xH4aolI;##*3lC{X(>c4PO0bxW9BgbaCK=7`YJhg zs1%9=QW}&x?GJ1-3Y=&}>+?UdO}nLkU_1Tav`xEz{sY^i{!QDo`_3QO9{X?FrrkI; zcsXM8|v0ON7iv5)dSLe@&f9&B~%9l+3^TDn;r~lGx{}0!Fdv4N} zinKGPO-*?Jh1_qxYMgmg&1*k>antD`dl8N{_a*S8)SgO1XI54a*+ReCMKXUPunS@y&+aUoYx-){v@uEO+3Ol0G}W>U@&r zUNU{v$!l*s`mdI|%SSiXQ2CqKnK;ri|{&4I|HFb~9J?(I~8<{1? z|GQKERxK#qwClF!)9|c!QC>^t)7Y4G&1G7P4C^2JV?UhG`}5{9yt1Rbyf3ig~OXr7sp^agAHehZ6UU-`UgAI#Fx2^iYEBH;?oVuWfTa zpB$mJFklP|t34U}v~+|XmJrz9wK9e#d}^$VZEib zM8*h99yr)}Se$(4Q%+b1wU)>jVR69HQdmB9nR!IU2#ftwCtXk8dhQcWSOc_{$QWVq z3T`Q^aav1cjIcO*bHYkkT+_x0Yqr)B86zwXy_}COr$7JN3PSnO>(VfF35 za;c+rjn)zwBdmDQvaYYx#@3fQkMADPS|VeF)!hi|gTJ?5?`XZCwM51U>sZlJxrFh` zc~`_cTAyhxkuk!O7Y*#XamQot?{u_Uu?fMUUPf>~^g9l$Q(iT*U!3V^_0(D-V}vE6 z4m+%vPo^w(v_@zxH8OFBC4Ea-41ppi7u22SXq~3DRR7c6MoGWN4(sND@3|hFS_@OC zzL7hu1WA{=f-p^zJFAxy))hJ|kulQMOSDvbf~ODNk00r1-L17m#wf4eqGi>MS2CaW zIgjt2(OM#7gmt13)@gxDuXnWG*IFWDgynA*mh)Kh2dyPCMp%8Ch2?1Z^leyVAcq-I z%@C{V#w`h~!~775_va`t=M2pw3mWR-8Ykn5N*9*~-EO=sy`;=wO0Z}9VmvTZ&$5;* zSx|}(JtA;oNrd=~OVOOUSb}HC1xk&6MROLHmlT)G*N-Imxr8`X6ts1VGqfF1dEuGQ zI;~Gl@clx$e#9xsS-7NRf!kfN*u~((o(1?02w!%TmqRh^nWvK-#=}b&Z9MN3UguVG z1S zm|kQ*eUwrNCp6Fbs>1HX?)9PG(FST2)7M@m@hsnv)YS+Sg z)KA23INIML-3Ie7%afJme$|R{6Y*OK&z)M1rXxLFW?$XJW%uz`&vcNzGDkh@T~ z(EN)ecL@Bg@VuVG3moj9M|xV#UI#a>?!uu84u;#()2ZViV=ZpMND@oapvNMdWR}!+YK(I`k<6(%Jb;qNR-L-4&_D>k@FBQlkY=NNO!(J3nICAmp=5S6=85pZ&GR#Lg0o- z_$Abz?&L~RLdCJ7Dq`47#t;x6BS#n+cb*{L2smJGY+Sv)0Q(tlW3@?^92kMKDqGIg zsIr|0#P%mz_6k&!B*Qkm-oB*w`dP=l-GAETH^*lU9Gj@E?D)O(w*zz9KUH_|Z13U)*PeL&7tz-8#2bGY z*R=iAwG3L0|J9jE*Ikk=I+hFO8NZDEDMKYXavAB-=8bC(DGix$(1K2cugKd;AS zpYE%6<_|d|z=Jby<|4zq$whfp(}a@EsejPX@{5jo(b&}DZ6M0aQe&uJbz6^0%KIOW zVd@XFZsB2Z1~1CXI>meH-**4>oTD{PYq9ZU{MByM{C8$JXVa+(Vd9xYwwar-ZX)+it(wMFprYq7MBd<{A${U+DE^uZ}j?o##di}5F7@K@o405!r zg-KhQW27}6)g_&<7uftoTV3(1+z=e zt0-MMHwO!5;L6K(drh5-F?hM<<@T8{HyFSOyr6h#@gg^$gD-f4bLr(~>CP<<7Q4Az zHFnpc6AAeuc%}bzg!ZCxF}IH&kAG!vu$EDhEyphta^wEM9^2m%$ebT8C-VkY2&&I>HDqoH zmkWCzk@lW~%&XyY5$t^nncu?Y!t8Ol&;vKVf%@iW=Su{8d5}3ZTrSKW<5#X_tkktM zf~=?WdvRIrWw9t1jo+8eZ2ERQ>Gfa-nBg+~$G8%))>PZxf!i?Z=!ryvK(jSiqON z6FYatTVpi&BDZV(1Z-zdUwp%?HGFYVzRuhzbz&U$G!4Yj0$!i14`6@z*nIgQy6Zlc zVxaCMj>AlCcAEJmQncrEpcR5{0AdH%HH=QcfZ3g*fO;>JA6-uh>}cSov-Sp?QQTN| zbXfA_3tPNz8hTzQsICp)u#4Nwk(=>t@GOi&`PwYr?sOt|8l*0k$jKMW+=o3*@55e@ z`W1J75B*$qcsHbcYq=PnuVxR<^<#e<{Q|k#&AqsNF|Q?0V12glks2aTc4$o{|FI=z z(}$s$>O)PwHER=af2%!!%c*fSlmaC&c&l*r1z-bpwe!)(Y&;Ki<`Cc24XbNEr@Pp3 z@1y$^$NeeY*^YZJ-N|r=j$XApw00UgpJL~2@S!c$d%vlEHg45!lzg4|HO5f1)2e4h z=wk?BQ0?1MTZV)%EsdWcTGda9)3@p^#{51y8eam`QGAC%{u6H74tI@)ontn$3Cdc1 zAMMtO&Bkje_q2A@IYwTl5#~WCX7ml)6Of_v@rT2Ui zju*1}P%B^UaA5;zej1Y;!>`bAf|iQ%)pi!C*-S$_u*iMpI-S43Cs5KeQ2h%E=?jd` z1DQ7^wL<0fDg*CxPS(aox0_X%5fAK5^i2si!%R&>UE#GwD`xZkJyYRCN^ z-K!k;2Xt4!tt-kr#G$S>9>yDsgk{=K0qJkEx^^>#1EL%}=5epb$>^J;fCf|Jy*lMc z5IHI17pNDf+%>WIR|Pt+PD-iqN0<*uh1`ePjp{>DE85A<$c-PsV|8ti8MT`-s9qKA z>+b8o*li)Pb<4hJzjt-*(HLL+xHT>qQ~l95)z7u6{^*0yi=iz|TYR@|UFxg;`GghU zNwsLa0!nq)ihdQK&a+*N-g&eaGnzXI`D$k)9(A?*kiy0p7vqvPI9_j^6h>!ps=8FHY{&g3-BYy{)cG8- zl1M9~9H~8&8stbFFH+de&eM3b#h%~3u9jc1HAaJZlJ|(l!w|#uAdS=)Xf<(R#Pb^a z2)wEjuYs+rO(6NAO+F>0pX6pCb-~>!Jof$bG~TRubz!dsZ(Z1j=zFPcDkv&KE^@2P za;f}El_|DLwx|d>0;CoH0iY5848{t}v*HG@b|czr>t6SApzc1p_aWV$(7whdi0guU zk(u`m+@VfYKdUPE9;OCGavm%)_+5tgKP~UN+EMg<&@uKQ>QVsTNMNqgS93l1)m3?n z67%54m?*g-KXS_~6Pc4Kvj9-f*Z!ClhnLy8_kfNhpMo@=Oo7b%_Ms!?Ta}4OggR~J zE9WD3UeXJ-c4gdVPZrAyZ)SNKkB9JM>=TBz;Jy3&t(uMjt!*|k;XlHRz9W5(Nm5n; zR+0~BT~*v&pzCV$$v&%DRK&-?u9mH#8y^CzO@2X>w>j?pbYJPXzofg`aesoWSY5k; z@m-|Yt8fqeic)7f?yu>d1UK6Vv*+=c zE%)VgBdwPELb?%G%Y820sHB$r47xdUrR|+eHzH!WN6?KMzU3YOH*WzF+2iSmsjDr( zbZ}#wc1)uq3JzUfZ!uZl$FtvpouPfJKfzpgUDb55?}4p4+_@jJduV8`6A>|9oo!I~V}P^kx@Bb7ej$NdxCvmEy!y7S>y75gL!g!4g-!yTcYDb&w# z|3>#Qwo+SBT1~Q*O&-Mim36hTwDcAHmH7{Z>_Bo4$RA_8!9lp~#G&H&Ry_koY7Xuc zWH99Nt$F~Y47(cd0t(cxrH@E8UPB^O8?QtwjL#gpB zobp1rBUK$>UvLtfRfi8sdo+@Fz?!}|S8e@zPg7IX;rDSx_-g%-v6`fkt&s<10R&dR zc6O|eATIRpkzU2}^DP~X#`lCxm-auf>c`*$q=KV^0J=-TvyklNDSDV-Uke-^V5u-I zx2hrF8@E$==3_XCv1ywpargD?PtI2&lkl7s>q)(lryr%}*KMMS{hbj(8EJ&x(6NC{ zHT0Qt`U9n8$i7*LTWrm?6PBNkgfzenSK zyrPScH=>;jgkII&&xiIYlZ`Jp-c}wxN-D${6ri@KQ6%DL4FMakgMU`Wec$0Ph*^fU zyKwulbBhl2tLdq7KOxr6eWaHz7^YO?DYi_dBhxriScaa(x;n^qaw56$ct;0LE5>cK z5ORKIV8>R@GOPs>7UP@YTMDDLh1X55mSuY@*9t!b=6hDWdK^`m1XH zASLT+Ni^OrS}ws*?Ox;wI-p_?A-4@=ZoD5<1-?>U8*5!E2Clo0eB*Sn#R|LHN<^;j zk+mGtrS3*8q7Xi54ehhyh)9rol=aM)+t_%F80aZ8MeT{}aqUw_eNKzW43YN`U?exR zRatSx$?_AA#^;zV|A~RRhz5MAyAiw!;+%*Q9c}*!^v{&csW`^^UefZ_iPz<-inXh& zSYz;(yfa-SHDAx4DT~1itn^xWk-Zt286nMWv+wuf^^*4cW5%U4$Z~tvGTZSQ#51}6 z3@;+Y`J^PC@G&&r5Rueb)^#@Pd8@{96)kBS^tCoyD3<#=tK890ooutQu}+mv6PA~O z2iIO>AKST?&F0azPJ?ABQ2i7!hC$K`dX2Y)Z!nftSKkuPS4=37!Z*c)iTd)(g(QXUqKwCgh6^leCfoKcpf*ndVjuW#z^XoTl zCR?@Re(_xB&kBT|4%F57SF^-0i#TP{svr4s30_3eq`KboeYr1UeM9^`trv7`+L{sF zwc-$$c|?J!vXUFosy%qV8VFf7n}RuP1_sc2pUROVDiQ+qd;n{u11-J|-@5)>YdmTr zb!`wWU(F@Z%L{eV84$|#XXVw!G?q$mEOsVpA5Eha3T>7tw%E}&+u&mR+3alGNi5mU z!m=n5&^c>tWjhn;{2upF)r#XY08is5wzB|E=-zhtxfSj(OgCrg1V*`O45@(;Ne zRtmnFr+;s1`s0$o#VTdccs|5c6`(~c0bJ@uu?)^)N7yW`(Z`GHe>I3=>CGFAprY+aNWbd?{2k3lMoYJ4Lt^}0VZ8lrxV(V>or;9z` zX7{<+Vw>ILVkZi#+VU~LSs4R;HR&XA(?(LQo3^UD$BXo80<9`K;`Z7Agf0)xxRvgeKXrr5thyhriZ+l@ zH_Y02UICd^n=P7dy!S`DwR=G}JzE#Rda5t)1BNxUEBBE`KhRgR9T!&BNnEv|qHUmV z6Z!pZS%YfshEMipR1A+3L2WQZbG4Lh+9IYUf_qGhFPIwrT^)w6Vq(+6%M~QDY;w z*k<>+*y%QVz{QRgmJv^+!BpFsg+6Yh-*y(z_b52kFe1QSVho&BhX+nZ_h{`XnbwHI zxoT@W3?r%!7y4@VA}@|?3^5<3_UY(zU1`BJs0SSytv0O8C9=jX(zwqOS?&_y>S5|y zD|6*vq0R2HSln-kdB3emgZGYF&Z}2~Y3yT5Pe*$3_N9&@o4B?j%Etxp!f2Y$X&O0O zr~-|1Mdf{)O|Sw*Debh`L>J4w^HfE;nFepOh2|qX9eiWG%`SJb+!#@K$0W)Ha7 zi8jkJvg~r@bf^7__SL-qwUxC6uJm*Y7u#fuv65NVK1bfD_yk<+E5hQ0(QsBATDuEv zN7kib>-t1y8w%N_DoaA#Um6Mgs$r-lLdRK~bY<8VXbud_Tp?-y)O2B-V zXB<4AsimKH|A#7o>7W`9q3$c`<(4$67O~Zp`yS7rc{_S4jr__(#c6)HSFY_<#)u5F zodG)g+Ro`pk*`@x%uzX>W#y==rBCB;I6YHK#@qNUMdePANUx7<=W;q<6{pxh?MDw` z#eS9{<9&dY=pkFYlH%N>T=}k}^J?39Go6>&&H_5QF}f1YV9k=misdXiXV|_0I!}gE zmCSNFN5WZkcuNI~;Adud%?CJF9lj0BB};>+SA8)O#S_e`{-R58Q1utBg7MXd+xk}V z34*e6KMXYfU_1BF`I+t9N#~ok^L_@oQ#<96*(OyTr?}51EB^oYZN&8kiBnl+rnWi(60us8yx9VsuURNcLySajr3g&`#@{UO3uPOma zwDUD^UMMb5wPg?Dv=1)cmG|JUYU_rxd2j6EtKAN#t3rorDnZ~~hlZxTY(=WJ>~-mG zfR|$Tx!B8W_JG6gFLzq-EMLtFk~y>&i%i#X*+0dQ*=Wnexnu^a01vrLV~&NEJT9r$ zPbMK2=+)tsm$CpB$zP6_LkhCbDmrT$`2YX-Z{|Rub$DA5MMbw3B8KNSv2Dds*sgtt zj-7mQoeR5k?RJz8+|kFxcP}hF7O2N@g~t~b_B^4mFrlzl@4~_p{Z#4Gw;#@lh5ZK< z4g?r9ct~O4(4^#)R5%LL3WxCzN4okOo{>3XewOimQ{u{^9bR82P=+6IRc?$IC!Siv)2Le4$ zNazLFJ8)tEA4~NK^zD~Oul_vo7@+>td0-$gXt0YI5*X@o0VX8}0x79!fxxhITvLG& z%6H_bKw$JqV*-IJapS_0|6Ju87#9eP2b{3(|45$wr$)VgzrR(KKic2AwLix1ZxahQ zj<%{v^2c@V;_vGBcLQ~l-+%Nm{&>H?yZ>0fzlZ-g5%eGL@996mpWyG+TeTPWMiy;l(ou#p+HhHp))uh;V{9a#4bHJ9WxCq>kZGFg=y+ki_P=+GhN(ZHBZC)7 zfim%nlI=)F2=b$ErCvRKA01PLz5?nC-)PS<7y=Fuln&Hi&|092#9p^ptlTYDPD1ZN zg^>qzop7fBT`%Y^bR^iEMSJ-AoJ$=kZ8{< zKq|ENfVP5*@_Y)!u1J*UXP|*1=R-a!G!{sOQ3Rx3uw4Z-OyvGz%e`#N9Rf-a-(!51 zmEJ(gN~+D3*<8KNJz%3xZPY8y`i?RM=qRx~(?-=m@xrYI;*+Ro&)q;O_D=)h{VZ_b z0M$s|{{+-aI6kB5Er?I9lodY^FDfjD3dAp;qCFWvN+TagY4BlLcafV5q%_V0x?D6a z08$#YKzIcRR;~o97vCFf-#dZuh8%pK22wHo4oJN#d<>pYsL=dC>qM6i9x?F*jk!R0 zvjS)-kcz=YKq{ZFu+gnRDmOOU=t~=Qg)!yZ-$r9>v;s)kyUyl1B%u+fJ=eZ!Mw@|DX&r~Eq{?FkkmBwEQnizB zKq=oGR3H_`3>#f+qpNImw~dZMRZ`b)FCeY}9OdZ`#5K{PJfne>y*wblq;0m%Ewnkl z6Q|^^v(bGv+6#oYR*}1%5Md?fx6ue271^l5Mj;#BVxvtqdKyUO?)x_PrOmZQ^;e?r7_m#rrT(-jcROkmyMpX(YrQkhl@>xaVAi*r1BD*yB#Q1xJ^Jq1ifYZ{sJ^q zxcF%YjZ2v;t_Hph}=of@*+H z60{m z4+C8&Xfx0(K~De`2x52ow}_2&h8PuRxW8*r-(riUyi1C>Ch3pbkJ~g5rQK z71Rx=T2MStjiBRzRtZV~nktCB+%p9w0$nC(5YTc#Nk9_>r2(BKCP`wSo$O)(e^jG+EGepgbwTL4Hi;2$ux3Mo=11y`T)BD+G-KS}Q0E zXq}*3pg#!;0R34|KG2nd3V^N>G!5u#LDPY56*LRzK|!;D9uhPM=wU(gf$kNw5aGusXJI^MPI!v=HcBL1jRn2?_#zA!s?!+k#dAy)LK{XosL0pyvdw26{u#8ldL| ztpj>V&{aS$2wD&Hte_1*-w3)H=zBr81AQ!LBhYJt?g4sP(EUKW1w9P(rJ&6~9}0Q` z=u<%rKtBlD4)m6woj^YcdI9JcLA!ud3-=n(F5&h7Z5Q+|&;dbvfxZ>=3D9?f_5mFf z^d-74fLX*SfC#TbpU!=P#nfno(M1Zpd&4CoUHBM9UX zZaGjZK`Vgvif<**2ZCyVRL!2>4?R_752%l_2c%*e1nQ>j0dZB`D9;KY)iP89^%JfJ z=y*Y^fqDvB1H|V9QJ!@`Tw^23a}`j$p!GoA1#JL2R?y8re3TI7xgF>PK^uX(2)YO8 zI6?OV^%e9mkWbKNpw5Dx0O~EM0jQ&(?LeIb?F32`^a9XPf_4G*7xWqs*Y$|<>;du% zdKV}`&|aWkf<6HnBxoPd06|{@4HR?$C{EBppdo?|0jV4>NW^$rxM@Jif~Etd37Q3z zDrh!PhM+k>!v)O;$`rH^i0c(cdCGwJs3yu21R5o1InZc9D}YWCR0%XjPz}&XL92mM z1g!y5@tfUWtx^)@nFEw9zVm@{1T6#_FQ^PiX#{~L2)EqkR@kW0Mm08CZKE|dT4$rH zY_#4+8*Fs5jcy0Zm2fu#jT2;UX2PvZ@VyjXLe3t@Z9%r>*XR1P_Td`fmNJRk(6q=( zM(X2X>m%Ky)OYxiEA3y!hMfJwFKQm;Bx`-s3C4 zdwhId9D5YI-tL=^ueJFgdzODXl9VKmnodKqPQWi(I)7Ejm}u#QsX;q$+$)7+*FhmK zuCXp-;lwdS{mD5UXSHCILa}g9l8g@D?e-Fv)^J-(A!-%6wAye#;n`FO@T89n{Hw4O zqSg%2k_{7rF(PMa&{xTIuu+_?L8)cd=RR)`1l{$rrov#G^pOswN%kz|MpF~swf zcE=b`$F%mIj#Jz2ZBwSofj3j@NCQyipb$0r9zqmagZz9?As%gc#^;|}81PITmp>&t z*Hbt*I5w3#mL-+k~ z&req`PHVrR>7fhPSABch6))dAa`5`pduA3r@Y?3mwsQ|(`pxgrO%Cx=ry?hXxlBr!jJOu!lcENuO6S-T&A_i zu;T21`pPpFp~Dt#hZkOym(2ow{7X7r-dv`Q$gmpGV&K*X&QdaPpz(1I#zf7LTAX6g zA+Zm|q}uKTiNBgpP^867YbG;aGcg`ZhNEqDSWKNo*fKXZW0%2YRFZfeFn)Qow#8S`Z`#;b}1!C5Ko)Qst& znP^+aT4_JZW=3e4);2StnH|1DWTvaM8FOJXrmh)tLo?>@nrVa3qdbe|E-ERrD+kks z7379lVYAMwy)BY8#agTwHj6xXM*OzrGz2cA7>D82giG5AJ&l&x>vd#khrLUi8O9hc zHW+3QyAh5IwKlk!bf)wHgP|7N7h5ZxDdihb4nsR%xtR>c@K-mJ$yAI*DcV|@)SBvM zu&6R-&P)aoT52*Wn3XaaBz3*XAd2@HOe*ZWX)rAJ&kbf6WW1;tb_|n;p}_jMnN-RY zyP4#4gucvVkY$&d4D8%!FvB6kHw>MyhC`+;DyqX|!17Ro$wcU5Oa{3z#bl7tMJ9v7 zs4y9XwaR3W8&|uT6qdzbO$L_vA-f&JlqBTy^9GX)tq)BGDgDi45Y|yJ;@C-n%m9N) zg`F`bgV0Ym8H8S8GDz3u29t&y+h{PXzE8TD)FjBfZZgQ#Lneb5#-d>Xsat>~gw@Yr zk`cpkCIgxI29t`=*BA`rbFaY+M|pi~Fd4`(FK*LL=&T8RCD6q{YlxdkOF}AgO$IUK zG6=R-S`z9Qwli}vOhwRSAal9NAUCcz8KmNFlR=!f8cYh}^R~$#tj|pbVI4G>RLFSI zkG12Ro`zf<Z8FHQNhSl!XPOLBvB+T9K(90zltsPC zAf^2#M{<*I8#H22<>2 z($f&<)qRzg>Y=3}tT}yLObSFiUz=KBxc|7F^TSc>o@3oi2AL<^3=7%wg_}uELYzRcDu>I&SNHn(03UO+sw~Q2KoGh$)uoe9OVv+twdLY;WgObWMC)5 zWMJn{CIdTnnoJtnd6OB2=THX2#<$UAVEK^2WI!h2Xm^}55Y|wWL0Bi5403Fm!DJ#` z=b8+(DorLGBNvl_oqOC&D(l9V2E#sft7BX-Ol2weHW=n}hRL7=iwuT?kP4H5oshw> zw|u?9u!jE{?+QJQz0>yH4F)pD8Vp;T{szOlLx#x=$J1q#ft@)9lLoDFlYv&9$w2ES zgW+i6A0`8>?Ir`QSKUl{DwtpUsdTCKFf|kXOgF<0wI}6RSK65@PrzWHfs72IRn9WHyNaBsGCVi0W;2E*c?wY8AS11gULkbl_rC* zt}z){zQ@g^GJm!jOd9Monha#(j&r3V73-dR`Wg(|gh?iYEGsb>wxSofnY3h-@>+vo z@!V)IymlTo7`6$|nGE9mxyhg=955J;8Ji4-Io9`hSGv-8lN)9-h;y#VAP)=O%&;Ud z_ZkfEaa=ahzNe&fbh9o|F}h|#hEL5XBTNeWkSpCQh6uxyO}iJ(Q-`&mJ3Y=b>nP<83xPenG9lBX)>_9)?|=BH@ca0 zj#K#5&dDE6os8?{P6fw$Gff7y?mRb>%J!$mV0a(gXfWxB^9v?}IDg<~Ac3B+n;Djj z9Q)4Aq_e-lLzTOGM*|E@Fx$*Ck9q4Kz1Z2CpaF9&JVeIW(E!5-XrZGhvvPCFe*MzX zdP{4GjIkpjy6ajCz|-f&8GW2R7rxb6B4dPw&bceBQPpLb7-2eiaKS4cB4dOlakF=7 z_@vW=n7XmFtlcVA{M|c9qC4seYx-Nu4?9}vIxLYf!b0a0THScYFK1=U{f^cottB!> zy3lEKh1GpV!7N8>p4Ji>Bdj{Bin;fm@w3f&iVM*>u9zxxdGPnEf&VHI7Yb}+- z?(#ay2y4w1JMMI}4rwisF~T}pw3sd)+iF|g;p{Wg0rOrwM8-(hF<_lK|Jl^rK6JGD zYAun`yJwUy6hkrhO7Gv;)Iajy#>57j8I*D@gg`jYX?(OQ(jjv=m9=evuR zW%P%MTwKr6I$zV2F}2WDKv-6-I=A|$L5^0v)}oB5gXz^2W9+WY) zaN~m(rjO*f>if?M94&0*A_rwmE!@Hg*Q!drR#OAMH!XWA2mZ+*m12=kDC$f z9H57Bv_j(5t|vuB#U)FFMWsv5E}B=dxJ0wqg|K*zh0n*4EyTSU zmvaA5#m-w;fvrxJ0ZnOZ)+UZ_WoL&}Ewpe+@tk?33+HOpMWu`8GG;~P6=#dD=yV>O^zu=PcQoS_}9TisCbA#MW7W>kw zh|dk4y>Q9dwtJboG>aDo%a@h7HkH)`^IEBEq9nLfm+k!WV7W^{oJRQxV-=PMp{dvu zRg}+NT6X>%d+VE$ilqyS-1STEQPZ3^_T#kdnVaP}Y?!c>c4KQDCrkWlOVK2McwTAw z2p-nvr7dWrG&f~!TiSv~YI6;DBCG;)r@-d4V1!(jeM_ARdmPMsb&KqAaA%E7&&$i=J0Uhb zY+`o)go$}$$7ab}A~v6%n-ds6Id|;%EcM=q?J+4UFK0qv;)E#^vkK=1$7JS6>oO)a z3+-9nqT+Mrj>UC~T~*UEk`tWck9Ji}PRUG36LIcQlp%W*@iXh~x?Od@l|gDKey>^G zPA%hUVUMCHb|qa$mM3nk`z}W>-sN{Rlgnzht19nm??UcFEz3J5q?l0i)gG@fVk2qSgcM<$9)-oc9QzUzn!1J5J@$6XQ;GHg# z9EJ;?Gqeolctnz$h;&>5xwqKm#L-eZ?uJ|{x=!!0yNH85?@0FMfuG3Eq3ehwhhduM z0myx!Wm_tb(MaGy$Rx9%aWIP_*}Dn+Ly(!u4jhh_^5uE>&4WxbyKFdGl8Z)!#z7{J zohuydN=Ud7_8vM9GOM&4)6vr2Lu(;(gO+0_HPYTv?CWx8)EAGy-kXs5_z3KI(bYSO z-8~$3xDobRN`=graJjJbviE!@WEO?XMX(ow%(dZiVfL6_&Z|8eE*HTb*SG&ZTrSKW zo0iV(q`Hol%A-5v`e<1@U&8Dqz)lWiO0?X+DqpUEf58#hyB0E=j=Im&!2f4o< zfxT@p)X`%ra_LML= zE;)p*&CuL&0Q9MTx?vRF6fV!ZM7>O<=$3UgzDS8(7r$k_B#97 zR}%sgsD8AJ_t{|DgWi4k$Es4Yh--f6rF<^Und?uG^){QXrI;)x9oi#;p>6x8gkHsJ zz3sRrS8MDjQ879n%a9`?fqHhOJZeei`VKP#Q9E<%$2O@2d9_UTX2uu`vCh;x2uYoP84|8y{qF>CYd*Z3>(&;7iUB>92R zm6Q*ZV5hg;!L-W9KW1;KVxUNHr=)pU0J#PfOg@73tn<99TLtQ;da=jEH_ud4*!xWG zsHAp*rX7K*CcY%=tG)xmm5)nF(a(cVC8{4+#WU?eEPSoj6%T}}_ehj-{Ym*;3>#&{ zf_c8_N~?@4L6w3)XpJP--p{*g`)nAPxh+2wQpLrdn<_4MIcZO%*eWc&1^NEJN*27p zd)pTLqCLepj~4U}&Z>~uO;d;;E#-(WKkSJWG!{q|*O@k&1BB;quqRvm)C1;+-p#8k zjGI)K6F;eLVgk!D3kJ-xOakMSWiSh+H>rMN{9_D?<)J=9$uHSC_LUY_8~@|7f!@!3x3h^rLs!)g>YvGcR9`~vFm|! za=6u?-rs&kyxP`p_N35TJMb+IwE`orJcP9CZTj*{>bP#G@2ZB}(5^`%-;#~uvqQTl z`Nm=qZN|6hs#oK2IpRZ_3w&JPnioz$T`mD{8*#~|e7JnF3c15!9(SXERc=vqEjb=2OHfxVkXyi*W?sq_6qiNa@7hqB|xrG6DC**b}PH8$qeuV+w`Lbo>@pyZalh`^pes4FkV z*?~|_9JXzY4~*QhtbbtOmi&=B^L%5sAd2~+hCEy{p#xHq0dF~0u!9`r_ebT0eh7@* z$$bOb>z1l+V1C_#Sp4Gf!?sgDUfepjZs`8G$jWh{XYxXC=7nCc^7H_F0@c4aRZLJ! zXpdxOMeL3?%+LL}hCGaE{WP?ws+u7(_KN>6N`&hEayu@?9c`pYLeKERm5fMzLB+Rf zJ98?#DEqAJGqYzEopt8SZ5%6Yk%FkkIakoFI6olhMVwWEeE_5ijBO1Y)oA(DaFZZ@ z;>h8Dw0wG}s;^Z@s)&*x5vhnC_OBD4#y}`9o+ZU1`Y;bkW0}-n$6}fsdU%Tz6N{*d zYXS#C7sUn!UKICZC7Z}7U(F5p)3=S2Gi$c6cKcRcMzVUOC)k=_i(RBYGDGg;0=M?{ z;Eo~18@<6ZQEdFsEiJT)7f)0}0M)#1VyrHox+v^|g6k!?M1tOt!_FWsxSV+T4;9A2 zEGkHDXa_7?g}QT9!^P17??ifz3vHJYw>|glKsb!xFHIHGb)g?ph2A~&ogFb!>|=It zQ!oT1n{Mt;b=Ly50(OL2@TAm&nBi3Xe~5bzz$mKie|(k=0TN(CktSuqAWa|;0)(j9 zO*YAFvME9+iV7hKf`lX{8^nTup~WSL&)!iiDAtD}h&~g7bdjcj6`u`^1yQO({-1O1 zotd58Mf3f>-}n75WcJLtpL1?6Gjr~}w6ZOz7EobuEf95pp1*7H7slHa(09c!UPhn5 z)K*+yW9l5PqBhWS)Ben(O*}-s$Ok3r#Y|8%oQ5eCphUf(?KVZdKz}mQZKk zMWLwN>i4P%%ei-?m5Z#^X}fPD`a{tsq-O30NiZ7PhT%`HX!KN}|M#HR?Bw6&RQ?!~ z5{pejaZ0MYlZ%!(0+r(X#e=h4OEE>lL@AR_nfnrvJGuB;T%&9YU&fE~4Uo;_ZhS6ZLIKT1Av6{yhb>w>_AIpy-xr^MDPC1Du54R9os7nG1jNj-oMLs|0sb z1Hp#8Z{r8q^?|eDBc5$}e1|!m?)kJ3Aj&(zlkj!LDAii84*0F&Wm;5eSAFxSP3djv zC1`N^Hb;kF-o&<$UcMln&ApRd)pvwpGf?e}5fL!$;)BBqIZRfC&QWSx3TBiS+mQ3? z9gc)R?}Ue#A3A*>Gymv%unS(q@@{E zpw&_0YyLFpE2Z_FMMlP`zQ>}M0K?gWsUzhsZ(IC9!^fOIdS5>OJmpWtMIPS{%v?>! zfz)?HuInk$!so=)H=)t^THd8J#;;?odme#`*~>Pa>Vy#9#a$RLhZgOE768A^yev?H zHx-nFd5?m+oT(a6Lf=uHYKp`NTsu%TjH5+FLW>x=G33c!lseQ*-)?=Jt7xtb%ldeS z`F>37Nji{t~^ZL4(NYrJVyoYcd$W%b` zXhLVt#4uC+2#s=XOqhH}^{L36A;-DrpvV~Kwu^D@9%9lshocS}#Hl&yzBjh>kSWhq z@ol8>NuFgzW8P$pdDqG@FZQp;yo#pP&Wr1Z(7=ZzS7C01*|h3E4>WsVQAzQBg~7S#0c{RC^5ox9*RY8mgbhuF<`;be7YrmlkmrLP2M1de8{EZPpr5V z6u@#boX-8M*gD}dB}(dXpm5E4NJ4We2%$$%q-O&2dNyyOH22a-CqkoN@)bDJD5xk< zLW1;0AvDbie{{4GNz&Kjk5*6%r^UpKF+vb}NoT*m(OV$(qFVir;!Jv{|Bdb&S+^y; zi4s1v3Fm62j6eOj*_TovC`x51^EzJ|fvqt5D6Nh~9&WL_SxwW@u*udOp@C+poq#e* zmp)!-j_Qmk6+w~CSAQy96DD8)V9v#Io{7@6cZ#E+-U4kO%`u3U)~Nh1ov^>U}Vf#woHh*%4XBv&xc(j`La;%%XHDQK>ALD*do zc9)?Y4#ShT>!DwA4*UrXf+7viG0)OHLg|j9w7QS(a;($g4!hgev@LBjIVuO93VlS< zoD+o5ASlxC67$C31)6;-tQsoH3P;&{mn)+S^JkeD*z?L~6hfk; z%%0;MJ0`_`^R&WZdvS@^US3gJT2kgMEKpK~Iy>2lz$n6AQsFJF@Y=m4_5#=-OfSYu zy^>-^L6ZiW1|yTgGGmedm(Djfeztwoi$^o&Jho%d&?EH+`|SB`=IvV-b-%o*=7pHW z|GsbTYlCm;a)ssNFL%Ef-FNTyfYn>K6`S_L(g2beZ#LuZryhI z3+|%$$11%C+un5B{B0ZdW!>{>@}8UGzeu0a=jC7eZN6g95BEO!V!@QT&&He>{>ZHA zJF1))zw}6_W#2m^GJDt}e3!1f-u>nE?>(6MuOI)Y&TH*l{MzsL4{g7t<-jRj`_{br za>Eh}WhdeR+e!ph%o{b&1&;4=lq9z+%P4+g6xn|A8YvXQ>cdoIP-%V~kj9yd)k32Kq3?NnmopgCiZNQxu0HMS9*m*aTUHD8Rq{WQy+uMz&N*I%npfJx#!f^!5Dg@Y^7m_>qe(8 z@8F??^pJ}dKe*aOD7+P=#^i8$Lr61cympIUfteD-nXPj)&5MFKG$N6sjRb@qN-eo? zo%5n#(9@E{ydyagI_Hq&w9q+6B_~qnoROTCI;Vw2u$t?fc9PRd=X95x);fpYbdWQ) zUKk}gMjmDdap>)|a9S!#f;jVoIQK|STg8qMjoeDfiPAa$l$71>SW5n=~ zi4$@Q2dcn4yQa1*Hf*3zcjR==Py$g;Kz)MPj9~}?;B?M#aW7h)v0(#oshydns0}iQ z-r%sKUV=Ha!hs#N7&C@ioWR5h2=_YSCevUxOlC7=N_yKnr@mnr`Ti<%gE1!4;P${8 zror~77Wzqri7Klw#uOIy%))G(6i>S7A(gyUefAw`D^kztRlV%}friwR zQi?IAu)47n)iiP|R~`DjgS6s`N-@S17U7NZvVAmfuOW3-N-@S1R!^29K85w$iEG!l)Wd2cIuw5Dw3@=| z#Zp=x9y@mSaYG7^(d-yw3hNSGiU7OcIQUp|JuHWmVvH#)8h?y*ZLS{mt06U7N-@S1 zR&SQl%4^8nB_mqtVdYCH#+bso)D+g`FD&R_NYSPtX4k^<_N>smjf$tcPSDMc8w)G(7&Ue{YE7*e#M3^~G>rD&wJTC^F# z#EA!=H>9*>8H6!Q(PY4Cp;ksNb3sp3G1+}7gJtz2j9H3CeyfGXK5}h8Sny9n>INxA z7@_H2tr|1Oe^JOtaIBUZ>I_ZpSx6+3UH;S(?=7W;j>MsfiEP}>o5?vG@s4qm zw<3Vo@s%ENuOLBA$k6h^DANh82Yo#aMTu20nBiN?GN{>AO3KEwm+N~ zQ27G|!yh6F&L1N=L7))P^skB0{sN*#`fHUO2@0-M5*xxpiUia;i4Wvz`i(lNDfZ(? zkY8<;AU_UQ#}KPaWiVG6ss4n1LW@2n&Tw-)`YPr4?1kkkX zw2Y+WWS3(!I)}f2x{@6!YKAk*?a6SAr`Ml}aav1GjN=!e5H2Z8jN@0JiE(-u$!U(1 z%w#p&>BI^Z8Id?D9lQojj1%uc6XU!kiE;cURF_Lib7ZHcCc9nEES4)oLUb|FEzpV; zqvi547OY!|8y*8=P0jt?x|QK^!{P;&)~#I3>sD4`4sxyR`a`W-@n5&eunVkPxy^3~ zCY*!Tt#}J(d!uI-OZCc6m_*U8X_vJS9C~aGwXR_bhND-2p&gFMk?K&mWbj76Ga8TfYtL%R==)Aa?|z07p3(!YX$uEKVEf5#N z&c6*ZqZ?%i+=cYfbTI*#j6hrneba%d2*d@%j~@H(1?E+W`>XV>2j=}o==&O&hCp11 z_;te@ihlSb_gCpn17>_6E`+`cVCDznLZtUeU^WEeLg+gL%(sEK0DV**R=l@tNAE6) z#@~hN%Mf6$2*d^GqsO<25<~jPT}WR(a3z1EkLn+tiRSMvr0*%Q6FrZ~k5hc#xnR2D za8cXgyVO+k)>)BoN|L|t{Rs$PsMucilQUs^ zMNentSx5QBq(b<*eD_nzoDCaYRZOkJYfp;lL2nAHtMPUuOBkVV8X_Yqj0{r-Fe`ALj#g%TX+|e4Z_*u;b#g>^+#ArO}wt|mR5dR>SwH@LSB#X8$1a|oHma% z?MI09*>0GA!5Dkw5d^Kc;<^PxV5|9yadFw7GVXm8=60VpeBcz}oDJM+I@) zTpvqI%YzF)o!bqjm$rot3X@*SDp#~eHFVlsUmU#*EHdkgar;iGm30wL-+AY|G*CL( zKF|3M4X!9ZSU{abZHgs>XxoCt(7{1-6k#yb)Am-z`Kiu@A9%y2x>^jdy=8ryD%RA6 z+r8maBR5VZtI~{hZmw#=Mw@4=XhyL7B2SuTimF3zU$g?gHX25OMbVwez|YQ0 z8r;4!Zr?#!vKTR%R*q6CI;dC~6z;4XsZ_u$yTLo&SsAZ*uTp)vumeU}s9fNxZ#M#i zcUXM03bZAxrTG-JmFRh`P!ZGm;bZ_i8K$@1{Ce|&7nq`C~GQZxY{DA5F-(et2I&x6k0!xdXWlw!mA6SjXwmcoM< zf{+B|8LAYVi?8A$zLB8B<=2wtpv0E~KGy?hSdh~s$X7_vd|XhZTSyR!*3M`yl+RgH8ICa8tF$=Q>~PcF)|e(aLZ%e0h^BHz9?aL2 z;a7a|p*RSNQaJ>Fh-a^GrPrq2N=NS=rFp?2@WjD-^h@a$c+xB=(k~=Qe-b(=&4mhs z-#{uoB}9vnIUYiea$D#noq2zw_X?mXkCAA^T|wNH|54mY|1MEgIBucho-D&)fYP|Q zlTLbo)m$jOZg^T1wqHvUI0{K~;wu~Fkf5lfvhfEAwqJ{c1sZJF{Os50!Buk|K?oZz zL6P)W=FK{}`j2ty7h5KMdEGM)T;ICYnETGIn>T;!sb`xVIK5%_O)uSY1KK;amALgxUv#>*C+WakF|FQnAuB)?Odv)LHEx+7f zT=Puny`Q|lC;6F2?;1Tc;(z}0( zR{{R7GpH1;7HZc-oooO3;9v}9cfe2$pen!dwU>7WV^GV1p>ifY-?#YJ9D%_NbLf|x zXf)Jng|kZzeS_7Uz|eOs%?XY}yTz~IjMF)qo_xtMY)UF52iC??YOdrMb{0nMg18|`{G+QlTs)8J&z6zPIoXh;6 zxv@oF4LIZ&WBS5Gt;P7l)N$v5mkp^;SVmYaL;ZbV+xD}^H%TeRn8Kpztq6eu z=MOeRYJ-$wj453-qcPI;`rW%?4XIsHiZQ0JXtXuLy7J>mZyHixNh!vd!lEwGs2k>V z{Vt^#V+xBVu|`-XFGZB95?N{RW4e|gcATC^_^$~$R2ZH8@1vXo+sDP25+(!&~)|Ie!osc}+D%(6)9 zG|3?v-%$NtY4HedIY=HRcPk{sH_I_ag@vV{@s%>w_rRbpfTbncj(0cbP4@z~dkLwKUh=yS$AVMrA1%Q!ee(0i$S;2WD7oF4Kgz@s zx`v6*jQ%JSOQ7O{Q6`pu)U_h=kG;;5K)>RXFh5T42c3w)al?m&{Guba8?$Q;M-dGl zKHP2}I&66C5N6UBonmF(2m7bA93c+XqdFbxi;jzWKz|qFi%t#v%L8zZ5MOj)(WJzp zZ~Tzj8{7@}3-tx&b?`re<<}y5CW513JrvFZ{yJd7>>%K%ZwrO%2Yzci&Mw6txeMWF zC~(?w@pGZ{y^JP*l^tjH_7XrEkV4_&z`ySj7$V`1+=ap&1HXO1TpGiZ7-L|}ST!N8IJP~m2SUjfV}iMx=#(ZC%9roWuc>NvlF3J`uQ zzS4ij3*LpkaEu1-dWoe;1>*wr(NyX7M(SGv+w$2aJ&9SA59H@Y@|L~ zecqDZEWlkTy)-2E2PP>H7vhW9WMGN{aRK>9`tAbe=|EfveKo-B48#TKqx|~;n6rVn z5c)b@2IGDFk-JcODgTlrhJm2qk2BCk@}VZcV8p){j-t!-Ue>--{_Z;zE?i1YimRaRKE^`tAhgi9lQkeeVFXH4qn|kILga zi2=#(Lgo82aAzB#uhSq+(_ibe19zFkUMT;lJklGf?;7By{*69rZwr8VED#qW|K0{> zb097t|EPU@1I+0_TnK#~24kTW{>WV@y;L3!iD4k!N5we&A03F_5`QXixq1oQF4WG1kpQ?Gfur`8+Xx)hziS(Tqk4a15H7gfs2?f~!Ug9GwYS@YaKZYh{>=}< z1?!{qu4)91hO5^afunKt^G4t(|IRc5*9N#|LvitQp~}|=|4xm-(YV#85x7>sB{l+Q z2hP(-Tu~!%G@dOD!UdNv<@4P^xZv`=1i00W!1V%dS0iv#9>*GiqkOi+;^OB*l^eB> z&Ox}~^b)Q|BXD>GReA^Eg7byOne;~B=!N5$M&Kw*ZVZLn`cw(=6&39h4uPj&t#$|2ZiiLK!v ze}v=()Km3R^a?^PtnpOyGld8Cc@L4mI;!K?MATzTIYN1WOg>h5F07&mSldFfvs2^O z9D^#aQ}y{?YpdD&!G5Efx<5p*lDOCxl~AlgvY?5SEO-T|qZxDXd8!Jcb2MN@4kEh>CFe~;Waov9EO8N8LdnRA z%793-7cx77_lr9EVi@Iys8Y^#G-on`)k5@kLqM}hB`j{*=yo(!mBgzbdLc3FHW|NW zUUNj$hLU1=)J0P2SmKTD%Ud08@sJ6W+qYla0G0}*1L6dUQci^LA^JfTnFiJprWbGn z5b;Qf{l-(Zk}>gXcB4gj2d7{!y=K7~46_~Iy@Zfu%BjN+bW+?ga?Md__vSfHzHjqR zbgrZMMQ~nJIFTp^g@bLie9Ivr;sM>nmAX-Jsw&A-WT9+=lIL89^aZI#g@C1xc}Kdj zz#VOle$u%PC8>!Bod9>;zGOn?2lB7)4OZpJ6dKsIELZz=aR)bxB`dVB{^eGgJ2h9(r-0pi2*4Lcuy z2p^cNifX`Y7(;?rLppbEhGr&hx$9Gz*G$%b(Ylwp_$#~zj>Xh>@oI~GJaS_=_ z!ct9iJCxof=pJY%-BR9%SkEc?+FE(e>TOw_a=P-g#kTkdDk0yR$*2Xck!!v|Q?e~6 zB3a-0EtNIkQmMOrCo>V|vOD16Tt`zsEnV6M$Y`2yB$Bd+k(TC~%}h=3d1JPj%(AcE~6)w4=@6$Y1sCV}G)w z+<`PMn9n*{weZ;D!ETEy!1cgxkb3r@5rHH1=B0p&VBUCKn=wUg(8<0J zf!fE^Q=nSmFHCs@*9_+E0~N)*PjMCcXvb07StU%dpn^IX7YV8Z^SXiR%v68fHwBak zBMVel_9aU<5ypL>dNA)XP)^oIyEF(1+Id0v?$doE(Xl5oE&-IlT?dNN9HvYGCA3t4 z>dm}cL5a{-fa=S&7s}il?4rmWTx9WFAaal~m>p1|_t3K)IQhtK+aKoZ?|#F{qI& zTczWc>9{9A(H=Qr$|@a4+aQl--X5Lzvre_fs62}G^#V1PaeY9!nD-W_B&I$BmCDrT zpwgIX*l4Uca_d70yPFat5OOomnko(u}sYdMK)zt<#tfxnWD+p z1f~{%x|*papsrzRDX57|EeCZiQ}=j9=Ja1~j* z4AdvgdjQvDrsQ_CzC#@C$_?~rrTDg1L~P-{9SKw_H{=qNSVRzuqPAroM-81g;*HQJ z)*)YbgTgRH(|Xrw)EL$Gi9U1QQb`svU6~VI#H*PH~ruzOx{;Ka4Lf1#AzSV?s`$p1($z+MOBeAk4NX2b67Xilu51WgDm_wzZj7m+zRn_Pgeu$Y0%+o5S1*=WTa>g)H&- zR?`0ZF5hW)?f39Kv*H6RW^a8KE0oFjo*Zl-SwZ>-GwP4DN) zTi|}vLo*Y;uZVUJIPbRpEGuV4v&xmUf$n)q%iUL?T#r6OR+Jsw>z!Y%SbOb`Qa zG2xxPnY=k;^#V7SLPsb#x{$Rn+~UFByrq;?6)Bh^YY!AyBv4av+h3}xPQJK4k!INl zRA@o8E8e7{8?Z&SRB|y@0r3~n@n9iFUz%!9_F%n$-LHD^3?5rr%cKS>c|z1It{d*E zX7y`_AxY`@3&RmK*chKF8cI@_qHa`BK2Ul13sdgH^?Ifr!&S6T+DwcVorNi@bzTi9 zF*uwAwU_nLU@dsGHI$$hgA(D=a4dLQD?Ide40!7yFCW=rx4nHaZukMCk~%TJb0MgZ z_j53s_$SVjH5TvXc<7^=Cb#RyUj3N8a&y6Cv&X8iiYRPd+)~RjoQD#*jsg_T98){) zA)<-H%4sliGc`JQOb&?ue;v(rDC5PSh>IOR7Nt3^U6_i(mF_IO79x_VzPPq#ijviy zsmZufhiOr!;YwBBqLkv=jVU>%c*V&fc65%~e*0JxX*4SF6n+FE3i7vDtK#Dh8qnI8e)}6vc}$VpJ`ffEXax#USAoyL(T<(JVQA!5RmbzIC4R4sF`k+OqG>AEE!_% zgJqY8^woYM^?0{|9(0#mmJ00*uhLln+5sKN7DwRGPd%YOhQn~;Iz$gmEItz(%e#HY zJhZ6r5Z=aA*kxtnAgfb5QayrJufD50EnSNd`{Vo8^T9NjeBt5#1u;}&rba_0?x_Ql zCt`W%ZO~>OC+TRA13XOX+vsCth`|9)fJfo&nYkf|69#bjz!i>IcS? zQa%wn!+2jaQ5wbI$-zOVR)7+N!zxe$w*izGI_h+u?4iYG^5Ts-rO?zjSA>hM7d>=G z^w2oEM>OXJH8|Kqc)ey3zc7&u>YW2m-5Mt+VxOqhUc9^ZossnbuQhQ*gH{jd@gB;M zUDsST2(bi7P|b0l$2<#On|2t@n@^Kseq5(t zayj@DQi39>8<=N-xwoyLnPS7n*S4Wz!5>*LYVImVh2bhFlAOsrOH^|_R9{3(yb=2Ankas0 z&=t8VDAGn`9_IN=^wZ$@ZNt8lDnXINgUqwE$M)=_qmH#M zZ8f=NP9)d0C*h+x8tO$@f+ESsnMX?tY~O?_5&N;6VH4$!qG*y-+5%6dEvQbQge0Nn z@Z+ z^acd(O1_GgC9ss&f}*?@QiP(s)?6t4weX}IMkYZ&IZZc(E+ks&6on#mliu&}r@2tN zx4_d}f2n`dTqX#ST0v2GA22U>TA@98OyN!TlBss@wCUycvcj7xu*JQ-cTs`8V0r=X zi$62Zn?DWSh43xMMs($c*pJ9eX@ZQblQPxnr<=jj?X)b!$6c|}l0 zvve&4B|9hAot-sCaixq&9_>y_QJh&>*<-VkQDV-FV1ug0EfzGKxqFnobNz;;!#C0)m~Zoc{fD; z1PIw0N^!~r)>$QseB`a|kcTn$^69r0LQ9Ta00wCY-uI9^v=HUSX^a(HK2lyOoLkD+ z;=CzEg;Z^64?b>|Tx_BWjpAynXQ*hT_9;bq#WUBWUCeVKgU!+9a@IXQmu*k)Zmy1V6`%4M6&VsAZU+1Y7- z|0(O56#af+$%IL_47jc2)v;@V=#uKS{5hVmw!mR?`OGl z_wjR2{bSAa@JUh0d4sfLD&pTQdFz^`{eJy^&FdxWJIAz+oVMd+yko$r{N>x8{n9t% z8%@6K+&}NU>D9Pd+P$xA((&!j?z-`%H*)&LKX~?J?v6dhL)Ybv`+d$QyE=9M*|JHIpp5k58pSv?ft{Ics#?qzBMR( zp>ODp({lr_ZADDR2*Y%GNyL{E4i&k|w@?gKKBU|4;x$Nf6J-5D4JZ|ug zrh;GGJAQOx<)}ALzS928i+fA!wtPP7c>iB|e{*8P z@rO_BZPVqaA!Eljdo{e-Z*kX0IG^~Y&1V<&Y_dA_Y@5}Y&YPZHk(;yjgP|+t?R>P; z17G%e%~3Y?L~6@n&;QYOM#c$7Pxo!DJV=sOB!`0V4G4tU!Vp>1<>2Kk^H@sgo z=!x`xcl^@3a_Qq&mk;WHCUL;Iw`avfH1Aj4@0-v6QGY)2sp!GCuYEhI(B7%_(X8KQ zzT33Z{*HTGpZ;>sj8#)|POKdN;)y%@y?R-%-z$FGo`0k5&l1-w4_toq?LUhzj{d#d z@d*zNnYHxapL+J5?mPLOSLe;W<%`%k2M%od%8~Z`xPlfPuAG$Ay3h4*E#wpOc-VI2 zm&`03G`--EH_Xz|K;yS#YGIytP)y8ni)EhR_^*wl#|EoqFw6R12JwEG(L8OU=^3`l z_4j7le_H@6V`#R01E@j0v+-<6y2)B=Qb7shX+b@fnfq-xKr>ydg=X29H!6o;eI05@ ziX8coqlNiqDZ*MUG@l{tH*Y+bZ%ENhn_SZ%DVmpAEi~IEskctN)XI>$7#wn9Ilq4l zX~rcMAd~-&q>OJ3sR6`-qa!QKF{GK2)k5=H8>o-^)lD&^5=aEDd5}~KaIF@a+focy zeKYBxA(aIVxfVfE^yR~9p@O1vx^qwbuZC0sIOOPf48+jSmYknqER>VvzTS2YZ)HfH z96ddeBTN&M6wNcOmgTroTwnS}=^^|`cbEJn45a)@85s>JdcLKnnn#vTL9moUe+)k% z@#1Up*_YGVDdOXgp}e$O=((I?I)6oYT`-2`zg7#)d#Mag&zLJq*!zCiQ&~=Xen3To9+N$T+Cd^w3vMvu3=k4d9R|fpD7CbwQlsAkOWQ z6NRv-zk@B1YT^vRUA>7j z6nDRyI231k3qz?8dMM7lWV+1To3tZIK9mInA9!GFh5xwBXU3SeL}<@a+%JJ@{mXZo z45`e9&k5t^evk9DVzR4ZmAE8d7_t6k|+b@f!`^ z-h{$>etz~(#!(YrN-6Qy!#^x~3uA=!NJ8^6L+YHAVvH%Q&MZagCHG`O)9a0mFS>{- z%e%Rm)5Y&i^mLW&eRjDa)n7`9cPsu|SkRa$wxc1)J-M6945@f2#TZi_c4aB8yxMKJ z?P5bJT}m;=lrDZx!&~1FB=zHo*BDY0r4(aKVRbi!b#+z3yM|Pelwyo2tR5`I;|QoH zMjppGC)zkUM@liq6qel-R#y92ejBhXlTwT^h1HX#wDO{ZH;heeu*VEL#+btD#Zp=x z#(#V*-s);Gq!|=B#+bso1YG0r5<1w%*xqELlwyo2tZ0_f!g~6^&^rvN15%1Hrm%Vk zg=K71QZJ<#V+!k1Q&@9uiT}=!BJ(M7j4_4P2V7%@cD8lDc;na@WDGmTn8NDIQd+v` zKoLVKPD(Mx6c)`MjjeAwZC4&Qq_U+HV@zT7H-*)7$^3sAQZu9!V@zSu?9vG9#AU6M z4XMRaiZQ0JE;EJo>L=H`45^h;iZQ0J2C@{oWp?I6kKU6~j4_2Zh^4eV?0nt84~#>P zK9^FAF@-glrToK+&};8mDa9C5STz0^{bBFlU-;CJY9lK@V@zSu7-iIrlTW6+X&f8V zM@liq6c&wRMp)U-wB?4BLrO8m6c&wjMt}J9)|5fwSV=)w+yN0q!eRJVbOfS+;14i;nYYe#+bsQ zIfW6HbN9Q)45@=siZQ^!P!$}lMu@?!cQ||SMR0}&ajr0N{GV=U{$jOYTF>s!``*E) z450kQL_xG zo1_$B%u-1#rKRhM?|)xlNL5KG!kDF!S*kUzN;Z>8v#k9QhU-$^!M%u=Z=Wx>^OT38KIiZEuWG;pkzK2l`oibqO~ zu-eMTMHsV`%2HHk$gNv4E!U7rmr{f=OS!?Zk_9)rzB^}>7*dr|iZEuWba1Se2qC1r z->dLxL+TMJMHsVG220U=jNA+3tj`)!Yo!!n%u*;+gr%jcVnXH;L+WcOMHsVGCQHdI zRz`fj|0zSNtE^~*F-v8!6wQ#yjlMGC1w$%MN)g5^MeiSsv1#9~k6$ySZj@4lF-zsJ z6g_2-do=QcYD4O7DMc8w)K%bEEs-Pw_sNY*RvA)tQi?EUsnOsVebj(6d-fSp|CUmO zF-whMDXpcfU!UQZu0N#|Va!sfb_h%B0cOQD`1MgZC7vB&%u-`ns-^H&e%amqc_W5b zN-4sarN*(8)MHsWx1eTH&PI*xo`Jo}j z3;*Cx7_-#XEJZUea>ILWa~M*4WmtqUOI-twm@$G-GN1klgOb)pTgk#Fj9F?TOKIhm z)oH8W_?0WA2xFGImZjR@O0I?D#^;Q%?vPT1F-u(sj@4o#5xC}&ZzG$v7;cbKgfUB9 z4~}uP-XGK6_|}m6LP`d0G!n#jN5ymVv4IHE2IN71wU4~Shlp>5-YPv}(dh7Bv zhSX!G~@%H zbcXS*meU4DoU=A5uY#-{D1w~nuwN)I6xsxrGuEVD6oQwGQxHvo3Vq%rkiq9WmflcC zTf~knEh@h4wS$L`XTADFJ@|kqqj1{Nowy=`TuoBzh-*89%NL4ydv^ zJdiIEM71H%$EYWPK1SvR`WRUk=%YsrU*##jTGJ5{T(SJviIcKL2Rg=EQkHiE4#ORS z?)bv}tT-K4H0zn74U3zpWrebR=c9|Jwk^ALSEeH^B{eBK+39h>s4y{(Y?5$b5v7}9hz`54v$Pu_GG4{;DpN(FHWc|PK<*+6fVNB5NAokvJiYt zuP&OD?r^&yoSNkkqSEw_Rym7R1pDdq2IUCx!|P}P(SXR?ZcU7A*k zb3)m;QY%uuNOZv=SxG6#sARVThn;5V?08RhlGBr#lIhT`Bz3D>KKLoPv5wR-cLS zZ1$=H!)iq=~l3lKp zY~+OSxRCrXx9ZH!^rUzk)G6rVsA}0+YF1KKRt|g65w&D_niw|){RcX3WGXriw0SX+ z@;jw=L~3ewDvCeTA?+6prKpGLs2%BPbet|*>?X#!U4Nll7fnJJmX?;BoRR9Gx|oWv zT2YbZY(T8C5dYNF%!~{_ z#bi;dt4($~aLR9znw*?us3im`C2OI?A%>-GfO5!YIo&xKIq9ejTC_FUziC24bCTWZ zsadWRWR|Ikqu_F~)J$gvdRt+$OVx*sb}uvxB)c5h*={vGD=EhqaoCvG@7Q8}6vBgo zk@{puT1K`rLv^J&goUq=K$S&JjX}t;@}*!g_^_R?E{Wns?aEfEBi1C@^q0{F%#H3P z&5e#Z#7WAmmP~?mcwA;mvNOeb6`kZT#P`|nFHZ`<^ax*;U&5Boa}E`N%w>CM;oe`T!=FVHUSVDfD3izKsYd` z@Tb{-&}$psYd*wY#9=Kt z#W3Ojk9Q5kqCzY>#c73d1vSJq1}e#0sFb4V+8w(BPfrXbN$xU zYud3oc$cQy`x>2ih{dRqLuVnCIfh^r=(z*CqaX@efTJcH>eP~tf$NC;{;3(m zxI%`)JqPbXw6sW41gGl@F)|fOj6li}hu=SF98vLa0dAqhQj&ON3eZPi3swTNLE;eI z3+}T2J}`U!MqgLR{{l=T^-yqnxFO=#516<>TtNJ&agG5dKM)r}-+W-I191WRD1NJf z*%F8gq3>H@ehtJ0=%e`A&@yJXSl!f$fJRo@4y zE$NFR@KAiaD^G`cTSH{wt90v%o?Jg?p0Lrt&XqLFVVu6_#RoL$X@mV7m~D#!<-3S9 zZRUz$nX20EsGVvnKiJ&5XR7Uvn)P4y347kUd-}$V@2SW@poQ z3>j4{SX&c?EhQ&o+YL;Jx~cnR-jbae~l(l?!{*K4TkcM~xiX zPhh^Pl@cB{A<&T!loP&fBk3 z9^YroDR*b1%UA;f{!6f>!gK6i^e z>7}QT9->8_z@|dx3FVB)ldC|9^p6K6@?@^gTdq@Llb2RFXBuZs55rm0Wl^Q@V+?BwT4@>83;+YkoMqCTud83YAL~{=~BdakA(l9c7)+B`DI> zoq0VmpX%uCszm1YR>FowGhUMp>9!XSOLS%h$!Uh0;OcnFH} zROlt0Oa4Z0f1pWkI5wfcBm{9+{zq{q{U82K7%?&o{J=FX?xd3@shSIwCsc2+$pvlD zfo(k^Mu(RY`Z-Mmzceinr6njTt;?A=-Z?tUos~AqE;fC*xiD{r9bd@{u&Y6NVPSz1 zGh}G&u(;tPM#kq&$uB6Js;_sCnlkv;Z{~M=b9MZqRXLmQy5+N&x-I**J~8t8ieAHq z-1yZa?}evdd2iv`W?RJys~)ANt> zdy@)#?tku?CpVtHd4E6O*)z(|U!{JNRx@+d)Arn_ye(VZyZwio&ujjZzj?6I{g}Gs z{-;{b99Yqz*XtjpZ#@2_lWG9FkAC^H{OGC^H{5dh zPUG~D_r{}kKgppL$xRfh2GhNQB~}{~Jwjq=PTGWN)x@D=z%`5&KD;V!Se(RAyvz^Q zXmEZH)?dzhW~T9oJXuOH#`IuKk88$*^^?WX-3+NRDa9C*r9V}B&x98FE^wfmQsu{g+&i0#_E=DKijd{ka|T*F~$@YP05Y0w(p<+nj!VR zlwyo2EUGoa(w1^Oc9dhGA@!M*VvH#)8ilM}DA{8!-7aB-n@jg(T1F@?oloF3M)A2;~r zMz)j^-JpM1Jj}5a#iing1>=o%U{j@(7z+JYG14@|$iv8=dleZ{G)*DL7-f*(lOGSi z`r34X(yrS2W5zJ^ap<9TBRKv~d^{Lf?2N)GV)vfEPLXXA`#s6f31haQ>i~{nz4-Bl zvCkM%KT9dXh}PXs{BRi1ADP!Z+LGlvGb@dWs`(&Ol$K$_w)= z%BFj7fl*G$jOqMsYUBtUbFI6-`!*F9CtoPq>D!c*-zeUT+DiR3xlnHumkKZAdVx2J z8w>sZrhv1K#q4OPb;qoLp5g{Whj;J+gP7wWC` zEYz>NQKy>HU=2s}gHUgyF+EhK19Mj5s9J`?QJoE=A>7Y}!ciOQ+6Wvyz(h9!NBVLb zfg^p_HUifG+*06tG_ioALJyUWrO1dEfQh3?0UXUJLg5mC+W|~C4d`$b-%z+W!5;@q zBn{zkG!%xyje@=&z+6p3G~9*CZ8;RY3rr>rop2XQ2Ys`i0nG1R1dgH^D%^_^?y8Hi zvoKA^;4YMoJovTi#t{9&`U2i=Q?_{na2I;Jy#To75=-d__4R`Ez0yd1{{n9N-{_<2 zex#B5ekU9~|HJ)N{JKkwK+1H4_}VZCxKWMJH=&XGrUB>u8+}xs|7fJXM}T{-5&AYY zQr}MC4mLvH$wuls4_t(NxlsMP95}TR`lbSNYalK}`91{9Gl94e z?PDV_djoMH^c@4{&p=#&zP?Cf7du|?;g1}e^98>qdF)t6hd*+9{`u{9MSL1!X4#1{ zoFgjuD-m@+bL|F(s8Be1N_xOfzJ?2hqk8(h-M|nP3P(@muiDAia9q9t=^%Y;?FNRZ zQ2MBU|CgP74HpVW`aZB57@|VqNZ&_x@-exqgK)uT zxef;Id=M_U9y|@)z@E7HIY(4Z&{xGc_%? zw*cIKFz2R6)m#6|bMCT|8?ZTW`F}j|Hrr+4Bjq7=%X~Y%3WD?hvPfqdl6{t+G1bXR zTIL#MTYJp5ur;z&t=urJ3B z(RJR2XK3zFfere7yD0~RDh`4^c20<`*;2Ve&ZdP*)^-Vm`rt2&&-bD?=3#uI)c~fR z!BtSd=@eNt?OHbX7S!h=LIa1XFy@fI}Uy9iN)Lx6!Ffv)pf=8uRtD zk8ZLn?u6}g+NjfO$r?_5*nJA;Gaal)S=924J7MFT7V7kazb2wo!!H>agK;Gl|QOOV)!b$pHte!YlRUyfSkQ&e%Dgh$nU zQ4!`-3D&7q_fP@WxqR~p;Plm09)8bRxz&MFL|itt1_B_e*i*HsyMZThlA{V?lKT>J z_>y@cIT;>|66xa}K2Nhfq9eAUYCV;gQS)JuIDaL@W;vqnShC?+_}bd6ISh_kwc!|k zaCchVH5Yy>#2wf4stpt~HGV@3^3pq;Gmk7E?IQO;X@-gGfV=%790n=mDy1@39lxP3 ziC<}ps^oxC1UO+7tw&fq`r9|^YB=1gN*O~IL!F*X28;C7Fh`tpB5L7cy=ZpnR8Y_G ztFwAS1BYrDZ0_byoZ*#!w6HDijH>6Urtb-gnqTMiEuBZC+q$*kD_fhzHIxnF1T^Hf z-mc*D8hkb{rhL5sV0UQIb*13f4_Y^ye)_DNM?dy;OX#Qby!Tk2ZQ%lF70NB^mcvV} z?%Iq#eV5pxIABpAQLSZhm})W`iK+>;s?AfYTCAaB9~D6gU}L&?1uI99P)oo?w>Yg@ z{1ADG{sbq$8A+G3ILf8JafCGbi=DU&<8QVuP*y&ru%Fbvc2aF0+ zNAEy>HFCfR?$gCNtmxN+PTvda)3ve2JK7Zde>%<_y#altX}sXVrw{ge+0z>oQJ@1s zi2>j$Py_H6#;0Ql>S^5XVBU+kif(^5DB;^1MIi_th;Y2-i_k(lSxtOT?QAnB5|Jb6C!&+76N-qlDq>PFZ=SUyJ zkFAZ6<%YncU_5m8#UD=M)F~ddFw^+Nd85m#}sOVl_ zEo3+0kxJ9sUDMk~_$g6+bicluUnHc5%A3#;rYiM3{=)cp9;z;3+=^dj>ULa5GW8^` zuQBy5uJpcGoMpR~sdk9`dZz54-eGDWC?Tu*HmOw;qSUHsIQOYk*tMa8aoh$*Db(s9LvDSwF0vIwJ$DZ|14Gn?jbc%0wkh_-IaR zx1a9%zM9fr7f|Y!NU4?{1oA*rLJ_IC0mle(}Zr zr;hqI)*k6$-CZ3v+FCPUtGha^i<*B_ty=I)6wqpQN?X-hV{5Zu3yBC74YgIQs`5HOo<|(!kx`F=S}2U8Yoo9*)W=Bs#KrAarQ3aSF13f#WC16j`bcT=eI5P=jQlj^&X2UeC| z5piIp^JJ~vTL2+0&xPCWn2_mP90N2=7)9O1S)}t%qsLJ0xK#DMk819&ZW)Do9&Xfg zw{NinB8;zZie+LOR`;kf@mlghVVOq}gi1DYbfO zG^JOyWuK?x#s=)eL7;A1)#pfs*> zc%zV95$^{n;Q9#MbEJH`GX=;~9o^hx-R_?MC+Ax)&bJ@kzS_*{u=dE2+SB1~9PnFv zG|^+N#j{a;Ynrem-dEWU z7x$ELbTffGSI8T5Oel5gRaI&t4sjA6P#Ao1Kr6MKz9b}U8WAlDOss!WeM_T{k($_@ z91~CVW6{*0+`fq;-M$$Px364v`@UvF(CeJnPO9q#@NWExnaxI~C{p4<^$Ae#GjFBN zdjslddJv{;(y9GAH3Ln26#L$(QxEGD?OrW>x9HR-Iz_X)tt^{{IgN-xE~rbHR{$!J zDLfU9#F=~^-yS?f&b|1!ElT!TZ7jC6O`8L=#0h)nO(QW=Xm{*`)m1m7T$1VA>OOVY zGhn-W&rzyiwMQe}m1pwjUW@AFo?aW(8hJKgtGcdgiE!#EOh)#owP%~EFq7s^WH)Nr z<*Id~I%DhQo&mLP-*yiQL7N89!G89)F?Wy+Lj?a;dR19?%Ak!DwvR%M!d&Qkq-3rG zq0Yn00ndOMbzRfjf4lMDSMO2LM`&}E+Os$vSqnLoa&5*zK~iFm;+G9i9>s4Me+LoN zJ-DZW3{zI%DrO6ZK|O`PFy)-iBfHyYnAZ`Mz#-BeI*$6RWlnSV^cotok*WH?pHPG8 zmta$Ob*2uf<8i&4(M!8eeMLPYM)-%(Zrft;fCe!^Xqa0kP7RF2(zgi3Rwhmjq;H~{ zbAS+LjDn)l9m70J+i<1rG%|o}sYLuk7(h0_M{`aPLQ+s9c{THd*<^$gQ6{9`)I{)` z#E3ARBB@Et3l&rPs;IeSMv+UrQWH zcNH*(k+7zh^3(|52tnv2o%DTHbD{L!4Nn+L4{4?JDCnp3$nC527}iJWVX-Tnj&(TP zes|j%VRVf%0f4mQ?@Ihx@rQ*O;)iK^78Lm*D9VrfnKy9YDE_bX9!gsfjOra@`c-oM;DYXm*af9okCUyj26zRz7*_ zr%zPIW_;1^<-CSZT&wTex?2}$-TmXYJ$m4p-cL(56lEu3oug(D;`%{6)V-KG zg2?x(exGvV{jpzv(DwTI>8sw^l-S+XEv(|~;=27UYqGC>ykWuXQxD(WIk#>9osK7B zqwZLL$>!Zn9)5h<{MRQ&PS{+ybK}qBM&5a3(L)ct^uZe+bea9!irUoAzVGz3((%nN z9!%VDb^pl1vbs}WAIltFQu%OpT#p4kp4i!adG6%dBev!DIui9q&HI0TdUQm`ywle$ zfAIX&!C|v64_ox%na9t3^-N^Lh&4k$U6#9L@8J(0C|x+`svTQ)M-8}Y{j6)ot^DNG z>^>jX7FcqA7=HZoX;JYrlV(plwWQbBH!ezk=KWjWu5EWuvvc{o!+7+hvi`rbYT6{~ zlHWDhXq<*V>Kgl(xBDa5Ae_20tA)mM>Zj+AT>eQghNeP>b=17cKRp+Wp|>i=Cb;`@ zf2|0{G-FH*uH@dTy1j2OhB`4r&*u$e-U-Ig^u%h>^i+8VcMHZ)imetJys5{uebM%Z zU<{`8z|gR11J&Z8RQdvZubWJs8u9F*M{;&)+Vu2EkHp`j-VJgU~~R zA;qlI!v{A6V<;9lHVR58&c8qMNNq5NhA^vzh5<6?Ir4HWMwq~`@IVR-4b>Fq#q|x> z1Y=0rYRSWu-1R5kUnDSeM|DDTO@w`I(5iO|LpVF98m3DcL(w=|3DF=X#>9jmOpfII zf9$;pcofCeWBXC}YofB)ZqdA{eXJkvRI z>V40tt*fhRx~ufp2densxl0UJFn$XgD0AG|gvHqi?wM zFRAIIVNOd;TTRo|Bvc(WO+TrL&@^MEM$f6;prIG#M`MXhveXqUv$8OEaT0Gn2~8K) zc*-m2n#Rt$v4+HH(vC&bDg$|kgpdF zn$h@1Gnbk#+W$#;+n^!$aWaJ>7vw%GP@|QGZijqPptf&(wd4Y5^aaT8xitQS{*uVU zuu6e3hSvu$B@7n#9*{QN>wHgVy(n3XQ378d=)tUL94U;P`R;xC_8sp?7Gn&)dIGEa z`ggkwtOQPdHifSxi!laYy$~x{gj-u_8lZ2TM9b$;V2r_6479qh`a?a}>Z~r}*@x4EgFE;;WMV5&FUA;rQU9v@ z8g<*Mar#yv+oUhX7<|PVeC-?j_mw*9J;`E>!B>BSFJE4lx4LL$_z%fqjKS9cgD;bP z$tybRxMVTL;AqZi^CWAHVYS?albaLMsAI%|^j#TbJxOwz&^wRwUJo43%Zv#ydX#u$7J zHTe2*?cj@a7T#&&z!-zCOPED^I&sfD{LVf4mNiw9#TbLHVa!tVRb2Jhtvc&b$zqIQ zbIW*U(HM-vrrYmB7G>os>b6>h!D~JN59D16joC!~357rIJGEVBeJp(u#>g5DjsB8R z-}P6e>#X+FRU;6_$Ql8Sex~eBoqJ4Yshd_2#>g7UtVkRwtUftM#>k?vfZ0U#Na19cAoEukMrL$7oktIbTj40P4 zsUfY=4sHx!N4++E;=Jxnm4ipvB#SV@POZUCPGPafTcJ)>u;qYh{u`N@yx)8rFw2M2MN45VeXAS%!UD*ah0lu{3*e(L%f;r#TH=ubmQsnXUp4FQ-7&<29Zt1QMqbf7vI&P5gs7Rq3#v6zE7 zL9vqTQE${FT>mZs+I^b@=-(wkt0S&4i3(DRS2Ppig4E&_%@DOfj|z_tQ3oeOG?n0V z2(4UQeEj6})bz>O8P-V?@Rz6`_4hKJRy$Vqc4Rwjyp}Fc00W7|bj8$ipsce}tWK=a zospfE$t*GJEEe_^wD}r#oHNCpoo-LFGg3@PYms9oXQyOMu}$GPo}$*G#$`G)v(wXT zDI6!}t+hz3;_J%7nzmSFnvyC~J%&@wGuj$(oFgS=N;;Npr8qW{sl{bmU8(jAyBo_P zhcl9{0mo%e$wneGvUMu~k;p=dBOB{wYc8e-Fx}297gn&=BeS*0Q4Xv=ZA){Zdd6zX z)NJcyw=E?t!^w*qXTWF%7P^&_?O0=0&bCiVqUm-l6pQ)xfEAuIQmyu^bda%ZH|m3z zTBdYOO5*u%RvFalOne}8R-u+0dm55s&zkJYruxJ3!LY@(E$|g=uw|WQF9mDX+OWEA zc4{gX^A*$QSOHkfpBtB_&7qxAimhW3#utuB&_kG)g-4D}NKC?vz8YG3k27)n=rQ8m zVtSABdGW6BEJc|lM>OHyd4So~ z08s1h@jaEY6p~_ zS0#plID~uOsU7rNT7jd{`}T0Sp!Q-x!gm4pA>BD5ko|Dwg7K-+8TW~KbgzieT)k2L z7D@~QaR_H`IrL?%z|qk8ByjO`w~5f4UmBPv0aMZfj$W%+49q^d4@GFM9nkIEAHc-Z zohL$bemfx|2^bsQYa&GA6E45BF33t?j?24}=FZ>mz%PaKX>zWzx%#*gxYfWMkvOeg z1=a61;LZcHmF^i4nzNUTxYNKS&|M-zbM^?A1x!r~xH{mT24)`JKO!_&&P9lO7??J6 z$B59J-%C+`vB0?L9uc7)gLXyvH$D`Q+^{&RrxOxGI0|ep=>1k) z0+m04aLv8X+smOS1M#6i<;=Jsdvu+#NetmAG-odpxT{-X@1|DT^8vTI1$)s*&-1Oc z_cn0*TChj?{l1mTo`-x zz#It11=*wWI}XfW!MHH?dZ**f416eP`3PgrAu$5ke0!MzTy6{Yy2HqAt+aP9aF4fO zkEVFuZl%55z{g2IGS4MIn8?Txw3m|K|Fae!#^`Y;)yD_FS#BcO`Jw zwP26Vk6T)4&kx*#E!d;_eZ7_Tb^`Z)3-&0#$69Ic6mU(guy^rf7!3%`)yE*TTQc`ewZ{$P14?cERD`WEa_`R!<>y$0YuZowY)&nJOtpCJm6uIJ5_-vz+* zlep%}kMestFjofS!kllVz}ymy3p(GZJwFW0Gr_np_8NfsI2adXkJ5KiVjyy8F28Nv zc%TCx3eDx0>SLtDFc634?2Q91wH5YqTWPNdIByH~Iw3vxw$k3?z-?;59+lrdV7>~* zg{hA}fQif$rP5sak-b5{ObEt>u{RT#ykK0I`dtpp{lT~}_Fe^MM=&nP9<{%(fH@wF z3uCV%CM9~&!~{Zf`6YWvz&L_&VeI7rQyPp5lfGJD{uYc2V{aQU4Z*k|d(Z*L@U$t~FH1S40s(p~{@H@0Ap(zm*m_8tUoLo4j< zY^A+@zT0( zdyfORsReu7Key7}SHLv}+Y6eXr13!HR5hpKzco5KWc{DEh>8lqg|0h9<=?p#IIjAuc1Xn@qaRukaMf}*dyr6|JguWdn%RqSTPj%A4t#dpimfwPdq-~ zG|`1bgarIE@!JdiS)x;yE`uh1w%EebP#o#hGVw$-4N6V?hADmtg=EFCH%m@Unggi^ z>(=0y$kIbN3Lonr2_G9F2_IV^2_JQkgpa+DgpY%egpWg-bOMs_5sU25l)gzB3W+*1 zq!iK+mT2L5$~jUBiMnhP-rAN6R3+?bgLlCXV{w6(5Xo!1)V$Ocvp~MOC}-2o2E3DkeT&my@pQ&IGUTrTdBFNhk?`*q37-~|>9<8;51^>3eV+c6+dd||w{xc7 z74590>wt3XB3pxrXaow-10SD>^tZEBPEfpNT3>@+Pj@cgbq4*K`bM){#O+v|5gHza zwKC$I{?r&+g22DOp|TPs)gGQ@33?+F_l>t$9M}PAHm{k5op$J#qPy^kQ08e;6{I^^ zM=^eu{)XcnEIo%~4NKG#dg7WLp+q5nv;cmDLTjsB$WjudMU102JkH<~pFKAGvFm#>Kj7*HRsd1}0ho zl8{}8H~yV9sf*pU8`e=0M2u|*H^3TSC3LddUH(t)HQU~U0t+MvGqNE#{U5vh@3YF~ zU%QSZ zXAm<6-?ViHMe-8&LEqQbu;LxGLbM3Qf40z8bJr{Qb}VuSRYKyv%H(9P8BVL4ELEu} z2Agj?quqX#tymXDtdN3o_l&Sv-dI8OLKwbi>o-mKv6Fh^!sMNHi{qT5hPlTg;e?F1 z{iq3AvSuh6Ob4uhh}ZpX*X7i^{EiqDq0>J-Zk9Mjs2$1JMu`0K^WFF_)+Bp@C2A0l zv2-JjV_5RxxSSsC|Um z6ZUn(l0**F-1YYHw||5p^vrPAc7{DfeJq=ftSfJ_)1MwA@<&}#V%-GaD*X2hq`k|~ zQS`RGYy!(+*^KVs0JD7C2%&iYsdkf=H|~843Tzw9@w6x;zN+ULPDq@b4L;IQ2sovv zx9`Kbqw9k>_a{OU{XsdT3Vb5?RrQ-$x(CN)EIp2+dg`frEYo5hF}AC44koy%5KcP% zSE84@JsS1ztbLOT=eJ7gvP@Y1qxNxo^C<_ki(cPhaSv;%-u8 z&9{TIZnW^%?=D)y=p^tDW3SmT--{#?^VFx6oBMpnzFStlP7a$0lSq zr=CXZ)P#b&RGdgxqp;4>8ZiD}I8Dyld-)>c#}?EFoH(8OtJfQCg_M9oK>l;;RRCW) zxNJzxIlmZ=Z^b7h7 zbNSA+Sv1$>JKDzS+ttR>4;^ZoiLsuDiS4}@qU>@t?LBs!Rz(`%+)9hBpx_mkWxGAP z2{996Z|dT-Y}i>51%&q~G_Z?ChviRfdm^I6l>rUV_s-CI*=?dd3ILabj9Ut$^bz|; z{=${}kfy`an28D{lN(2J3%eSp!*|xvzhQ?+H#N6LhyN3Y z{~tF0pGc&oYAUQ#-+;>q4FGV5jV%l(VW6`Lg*UN-rD_9o6FYk*O&sCrc$tL z!;&yX}MIwygqLc>Z)ma2Ua-2MYoY9o>} z6eoSj3w=791ly?PVg4b#&F*Ojx&% zQb+@->)gqlt@7y@*wJ{BGEV2g1rxzEA|ASy}HY{@^PQ_yCrg&ktrM$Rrtk|%!{$mskm3xG;0Ol{_#!sUz zp?gl#y{75@tx0@->SHprMsWqg5cUjuUwJ9%N0$-1W%B{sOLQqwFB1Wm5#zv(o+1+c zW@24ERZw}%mf?=6Q*G#~(dlAYpa#BAc*#`ndy~elZMp^Ha{97D%Xvx9nR-$xiu}1?_Q?_iSgaD z5dYsA-?=fqbJgDU5alEOG)8)cF_VO z+b(kLxdLN59vT*+{D!?rV>@2%s4)3mu}`VZ;;6IL@K{n*1GVy;dO7F|RME9TjJv8K ziILTMNR{|RC@iC7xi%R5mTF!;mWiOSnhuEQZn?^Xhv^2ATZy=VwC$lfs}T+C%KyvmAhCR0Gk1`d&9!yt-?agf*7NWHVJ=EV z+zrwwNZbule=Y6?pN1sH1G^!KtM>bv?gvQvkSKP>RXo-!3tZ9APCG4ct)saLr~e0Z zLbOP^Ehh2Hnun;XNUUq5rMR4OI9&5q+&Un+f5n<}=u*8=wduVZzhZjzUTWbD_2Rm} z9}^Ch6QdOG?-G7LMcZllEio>3`l}y;ZE<_mR9`tU23U2B?DXGHk%4frRIuPCeo6Z( zTeXWSx=VMT1oaX^S4+)H6V?}Rz+mH#=yFVq)UM&|*yF6~aE50GYVQ|!0%F*TY@y@K zifLF*Wq?sItcjdE{caSPT+ohoI^IZ;zIV!O*I$2KJ>3n{`{fb5bk}isir{6mXcQj7 zsBj10c$?(0a9IjYh}ZpTO5G5A<|62~W4qH^t#hw1+6 z|DuU4|6Y-;RC!0+9to!v_TIt5#tD!`zvF}?`kjT4M8D&OB(g~DSY-QAO&6||^)e1q zo^9%oe`;4&lb1Eu~*)x2c%RzLy&%1qlu8jE!O3b&T|!HLK4Z)hKsnJK8HO;$P`^a zXe#+I+x`D1mDNdQ`tg9~U?P;EI8s*~!9Nt-!BQHIH7wD0aq3c+C{Eo5NaEBz07;bn zaY&+BoYr*RP(O0Wfctpgxp>cocH9#MY*?~|x@I&D++t(47(18nMG`upv_OdGUbj1> zmH3FOQnZ|qxf$~a*aHN$OLlR4Q@ff5#%dEP!v!`0gVl@Z?l%wf&oMP@pRNRQqT0Wb z<{>dq7`T!zQEg}i<o+TQZ4&{tdm#1e8 zGXlkNu~*@KLtJcWaEgw8D@}Vi5`S|x?4kB7XOWxs*vF3<=lz}Lv$2xtFiZ6}Fy{1~ zk0>9yeA2Y(?rGjmd#dT|H#NFY70V~hnC6)3?c}SateP5W_8;iBmfPbwcA9OP+fq&I zN>$z#5o@XL0ZCvZFzRXR^!?P@T#5+2pN9?SMfOsaHuSvE9ObioZa z2qtf1;|GAa{9gm^>E*O+k4Ofn9f8U*M^o=i{<^%;U5hak-=2yQ8O-ab5uE^U1Kinx`s)Jtt z30&BRU}Bj@wd%CzCLZF}Y!W~W`ZiKBM3JB-jkg_i2Grsc!F@_KOON3wr;z{izF`EH zpx!rFr_GQj&eburj`DIkZ?xYFPp-k7psjLZG-eKcXV4i1R`Zr9B#16j*I##SJ)Ke6 zber!x7h$=b?m|;4m$o^7g{As=$XlqfIBO@L$386_8?o28@{3y6r)(pqIX@z;ms)<-y z-A_mnhYG<3mKDN|yJj239*gw(>+rt~{ieb*<5qbJ6ymokI*sJ1KwoKaASapatG3Yz zqs|Ud`_2}lIrYAUTa+xF(MVE1F8OhgR^k((P`QZtmIg?#v+i3QX|xcb&?P}sHr;WE zal{}<;;cx8Bro7-3N&zV`nFKRLNThq+r>CLrtiXz^2rea!_`=^< z7=bT?II%Q#5Q(L$n>f*?Kw5`Sgrfc+fZo;>Lub~-d`a1F@RJItI*?iZ5R&bzy_-)2 z8pw1;q*}hXpwN(pYfBWQI+jtJ*|qgFVm4!RIB+xNMycAmv$=POSZ511J`*+iI7YnwdM{)T-(RvEp#aXIN7@XSi z%iUr}^+&isnCTnOF556~>pO#8n>In`%-id)qRXJ-H1BCT;`ZMZqn)U$>9ob^gwwTh zVprVA+o(eN$f{7iA7 zWQ9026YHdb82KBm^*l=>C})Nr~)Vr~^640@Z<0 zx6?^2D+d!&vbPMrJE7SMOZ6cXfLi z#%B8BuGuVr=`r@2mny-*Qys~&2cVIUrWYLyHv3h7`N880)&KgVsp(iJd(CEI@+s-B zr%MRN<HYiYW zX`=dE$+0x(5|<_)Bynka9Fn*+y$nfQn%;*bE=~V{BrZ)ffD?T$4c4A!d($C_E6UZ7 zgb&&sf;yiFWeKEpEIkfM+yQ(A=?T`IfV7^a^N_?HfEnGFuo4GJ-0obe=`taStHe}I zcLOAGmGD3kSBWY}BBj*p2?oss3(GyxC)cvy%OF*=lnF`X{6iDp)QgjC0pIlnztH1_|`iz8W561QMVKiCFts7tFdRfQ1W{^d%%>(M_>g z5t}1KVgrbFiewNL*AD_WCigf8rp?S>ZYe-E_2<$-FKYDUkqkSI>rC7ZNlj2gnF`#2)Q z*GrvB!~Y(PB5y*X5wxgg)NHx$zj9>_f7)`7b?XI2DVYFxoSt$Pd@;hA;mxvOhVCJ zuNp)=rA$af|*8rDG&{)9yA^bmhV(5hiQ1i=szF*2EPVITBi zV|pl^KWcv@a!$K!V$8>fTI8$v(4|7`G|B=FPv9eL35jgcv#sb)qS`1?9%{ilgJK1a z+MSTdwqT?|a)PUdaJFd_s`pjIpg=8K_pf^pcF86!pQ46vc5~RSC~uVYbd)vPQ1{WI zyuVYa_)o1vQVSnzJn!gz5sW8p7GG5w-ydObN9ifi`*&cFE=i zE!bVH*$phc=In~HAe-4O*u7t~OSvN36q>Uu>W^#&w)t@7@F?3gUC}|g;@9>{x9J^~ zZWz0C8{Oqdr?QT7$j9!0ls%2_qIC(0N@=~YK-Ys5!sAR9|M<8ON5K#hF`gC-?xQ2M zKAJ45;TZ^mB_v`!AL3`63djFvHHMIg@v2}1^wH%3j7=ItNW`G22zhOjc?tCKoW>9m zF?I+>Gkr9TO4aZ@1d%5p5u3^u{yL+_Ek|#Aux*{WtPS_Lb5$Dtzo0RNM9lrn?BBDU z((_kb=kg;lg6P5=l}YEZz*GM#q!^7!D7xKHgNP@EkjTe}!iR*Yc8wT;rrtxOh-{u{ z!S3fG*L-z1j@7S{zUbeJ_=xfn5~b)X!3?^(Uq)~lUc!ID5)!e#6|83Jh!$&813d*L z*g_(9BeRuMTeeLZRH4vMJPQ4$gUy~4Y@@YUvEfluvGbE+n=##K6!EH0R%z@4?4nW< zo9p$=$KFy!dAXjV(vsMP1z6v;q^M$HMQnw)tW4|><#tV*u1s}Ip9){(;mR4V=}LO3 zC)Qh1u(+%s54%WV_pGwS;S~kt*bpnWyr812w4|bd(-m6+pk`|XbhfF}k>1$+f|4Sv z>1;D5ATPHhub{X%G=f%UF37(ub`U6ec?A^}(!hw=L3v8HZQ3+S8RhkIC7yDxbnY;s za|cD;)ygsM&Gn|mS3m22dhK85Z|I!%$-#?yq;LAh`@(%=XFqZ7&6(xH$Edf%$IH{4Q^)bGh9&zk3VS$5>wVVw{8 zwtso;y|HUHzf=6pTmSX=8z=vKvHZ|gFGZg0Hz;H2`P9q5nV6jTS?=FDJ+d^q^7nu2 zO8C^#vEi@5Zx4MVzp>Nf-N(Gre%+lJ4RNPlKKSmho>2{@)&I=wl>d(Ho{KZj&n(?u z_}F`ouH5y|glGOWr+EMRZu2&G-TL4Szqk4E(AxFe+Pqx(%5$&L4~@3e5Zx95O9Z^b0cTGx50`u!5u$hS8fxgay|z`;*C z)NGhnbb8hgl^eTO|LUuon6+_C!}U+Re?{f6{crZ3d-ay@wp_U2xx#yrM=ZPTvpd_5 zey#W2Z!S1pdf>#bo$j%(PfO^O`oPPtX5G`T-}IM0>Y&=&;XhG%f2Wbpt$O&q;oatS z>}4IE{PJK&!Pa9dCl8-_)%en5(H9RIJ~8fZ6CAVS+#i4P_0^kujcxzo%C^rAn*7J3 zA9y!)wZ68b_Tf7}%Q(1t<>q@!PE_3ed*s7^zwN%XNkuguw0-;c2`7qv`gg`p->bWc zUA+3XzK*T`)lvO^(FavETMMo_clf#=mt^1YM8Ri~?t3QJ_nV;l`>}09m%+CTe|Y$+ zc_)URT6?<9(uJ!>j=0UOrtj8+roH#vXxpiNUvbX`cWwN(T*=(@^o-<^kDgcar^eTv zpY`R*Z5uxub?^7(`-hm1c5mo3d~Tnib(eh7r)1|RWiNbNusy?b>|aT_hZe87VATG0 zF`q9@-ZFAe&!>j|SJJgt<@ew9)Ye~ap17$--3@Jy^}q*zoOt2is(sb}$(olZY{=a` zYt5G*-g#f$E4#bwIW+F{yqh8y9qn<+WvS2kK3e-&w9^p#EHb9H^tAK{a|cxyjq^`?ssokk{b2Xly{qk zTRxqWe#M|6hrTL${_OkL4>|6;zk0;{LvNnBV(Pnhr#Q~_p84~2Pfpxh=y>t^0m*86 zo7p9H!tvhA2CMZua>GyUd;Ri{sjB_l-EXh{>HX!Gl#J>4SktRZ9!g$*@y{1t{KGXP zFPrq}jMLv#&AR9HFXmXf8hU&;C#hFyho>G$duPp=kwacz zds|i1g}-Kv`};k;K0UqRve$omA#%h=eFr?e`k71D?b?)e-&-A0zR8Kp`EcLbyY?=* zvFOl0-@C2Pbss!)RrDk4mfg0;_TJN$Q)jO1&|&70+LN8r-gx!YKOg;P_4P^TZ|whN z=ZBxXwfB;Lo{O2^wEe&*9saod=-k&QAC5}Ax4k{4^MjYqc)Wd|-8H?BJa%mJ#J~64 zTs>92N?G$t7nY4E%0KLhFg0P?!mL;e3vxXp5)#&!OqD_txI{5s;LO_22dWiJSmqbZ z_0Egq;aVHU)aj8@3f#$q?)=QAIWTu2r1u)SFVW%ZC7&>43lFg1vj!ib30%6Eux1m@ z=yitl;}7dGnMG-&>sn5}xWkW7V!;e#(Ttbbw49FkjQQzt++Goj!X@IL(l&(E4l!oa zDFDgW9RsI-qq7nvt6c~yl38^)lJxPRS1_}x`m#bpAu@zTqXo0+E*z-@mi0d<^Mx=S6aP-)YVtO-%#`JXNZtZX| z42EXo%_h1trZ&1fs`8ppI~OzNI~=K;FI)0?Lnwylj%ocMZgu^#e?s+B$^y%W&QP<7 zW`f90!peJQg<@hELvue=AG1#0@IWZ0zX5a47q{IIib11?uR0v53`-reaN-81XCPyW z=!nnFwqa;u!I(J4(C;+VUo7(d4tOwT5M$`>nA&W^&Asjn#SCW5(>PLkF8Xf3p-{{a z#?XCmB%}}HE_^u@Gn6q0=!nnXxBZ+Kin)X_|9yIfF^1~BJ*0=e4E3^;zQF48o=N==NW=|U$V!U#>%M{0Vqrow~WnFK@`sbS(Jrmv>CTx$AjnrTuqK+_aU z%|K1FOltaQnl(~$v8H)WYWiuKol+C4X+D;kVVdS=sTrbaBB(1th}Se1OU+OF7p_-;fYKCi?N2R8_rg=$fdTE+BrKY#0X^@&8n&z<7DA0(8 z{DVQWuwY?c+07!S0)u^Ilg3B|jcvrft%;+=>?HT1wAbt?DEL=r(g@6GNWI}i*CawS z+@K-L)do!xG+oiobkC&TrL&2#h$mf#97=te!8EQM8ZvE!c=XKU`$r7W-z;?)Y zUZxoGh|eCSYLU(|(_jlh+?|aGSnl$2X!U%(cIAO~I_pBoVvHeQS1>D@j`(b7I`fmx z8Yx+fG30BK!B@&}{YUF8hh#Cv;LFM^@91r*zh5lEoNaK;#XIW-mpCH@a{#D!YE21*uV48B|%i+t_vQ+Kz{N|7wa7<^4;7T@1N z`ZD#(M|9R4$zqJbSBAmYdp}gC>8wi0VvNC;n^|g`kNfSxp*m}wWHH9zE7Ra>!w1Lj z&{=ho#TbJxnz7M$^rRi2FVf2Jh-5Lw;A@J(*R9juuhv~F8LJd(v2 zgRkit3j()!egE=W$zqJb*9?tC?QnG3+>dnDM#*A~!PiyHl0~e1IAOO%-^+QIWHH9z zYo@_h>5*M=I_pcxVvNDpEQ2rVH~MPzbxN`rWAJsg!Pl%)cRsAM@KYWK#u$8Iq9mXl zlCS=nFKj)}fiVVO*D|XU9r1~u^7J8{WtS|*7<|oUmfH93yZFMJ2WY->C5tfzU)LFY zQ9rMMH48C#E48C%irIz6h`+xaaXZ^?& zS%)NxF$P~Z7<^GXjMaSoDp`y%_*!7_Mdz2!>OxHhfiVVO#n6f#o8n)$fB4)m&DRjg zVvNDpLXAZ&YS!V!=X6$vWHH9ztAtrypH{8Y zSvw_*F$Q0i%nHocAkEiTlEoNR-$Av#^9@pS%LYwMDsO8vKV9VRc-J^`O;a%lEoNPG>H2BIHD3*q#TbLH8esJ@-1GDY z_voyDN)}@bzV2XFA3EaG=9Bu4I_sQdF~;D_Z}8Rbj)I4ERu7qQ#u$9v$t<-$9G3Yo zc4ch~9fbtRVvNC8En@Y2B^{q}TxVrS7Gn&)?qZgV<~fJ%ny*5sW{kntYJ)G^IoG{9 z%O_ckG5A`eu^{k$N-xdVyN&NPU@`BC5th@;r)22A-N45ls`f=?YeRVAB?}Y-v^!9WYVJ{2`hLOTe1ja zWZlm!wKXJV4%(`-21^!UjI0NkMde4~iWly?OlMs#S%fjN9)w1Jir}l6?|!VaW=Ixc zjI4*4rS>*|M)k%isOGC!vIt{jJ#6sx=_BR|I_nO}B8-vs2(vokNa04;=V?0Y3CSXi zk@YAvW|PW_^d$AyS$idmFhjdC8a;)-j+;13XFV-hgfX%~o;k@T(=q!(95yr^c2#wh!GoTC|eaUH^^|WLW#>jex zS!(NbrOr5{vp$wA!Wdc4GE1#x+x=(rb=FDAB8-u>$-s*2Lu=`%W!Onp2w{w@=M1b( z8-KOytRa#`7-1=0tyoPn&7c_(u+hu&Y?-!tF@^##QoZHHIe1t-zqp`0haPDP)l{gD z@0An?DX+Ao1kbBWby0=k`$BKArznSizFnA`H(!9}6?iI2^A@Ovic01Qv7*4^Ez6O7 zJUK74Wd-GhrR58A=&5?40m4&M;w=bN@gwd53i!xbh$q@}=M^ZECgr4Ba}vg+Wu#BZ zbY!MlY0YS>s!p2X$Vkt$XJ)f{nx;?8nryc@(8=%6@DJ`S-7Xsq- zoC>qKB@C4BIuryTQRC$@MFJ|TOhEVn(3{GO@S8q6FDfZ4mBmD_BuFu@xCoYW0&r#X z$}6T7cJ6F7z4!+BbuS7Jh!BxP(`CmM3Kon zddf@kaw|}X3sGij#;K&m$&gc0S~9m7ZJgRRXOSYP-IkXY3q__qDWK)hH!uB+C2i67 z!lIJgVkHl*7w34FcuKuR{3T~$MM+tCQHiHeoDJm#^Ss5mLf}RHvM>z;l zs+kCh;8P>m1f@6x>4nn}Wm#@TMTk;nAy`jcW|7*@a(fEsemHY{MzSQkNs;IL(z5wz zo_NR_?3|qRX-?6nr_L`xzng>7K(i|H+?K-m0vjy~EKIzplIG(DKd}XV^YP&m&;4Ndl#8fPT2NORN)84XOau;R3{*oz zAcd|Q`gkXh6BH9j3LF3hQVjY)f;!IP{ydOjj0i_j`$|J=Q)zl+IBMWkA)He~d{_f? z^$5%4h;S6Xyo95O2+__GWII!91>J}0CTx^ojcT41HY#lLjMuub2@QgTGoxM>!|}Da za74azhGU6{K#I72hFn_%$<09wrQ94ybP2M&n*$k2zB!PvBjA&Q?y`>gF!jin?{r8qy0EIRIeFzm=_W^OCM5LqKgCU_9`h=2$ z;zJGS!?93uKwKCi&gka6>cct1wOACIKCBD%7!VigQ6Kt+5(DBwiH6}}DAyPrLRUwT zAw(@AwB2h_p{-qu3T@+BRA|fAq5_i_JfsawVMtsck%zs3XrTy%sN>;4l&a$auHBXH zm^M8JcUtle4fi(k?kg`Zw-|SC>I^|bYF2huip`m7)g}kVxNO-jM_QKCO6vt^>e2R$ z)C`v^%Wj<%mzq|g>BmgTNO7iR+q12-tbnE-my(*9p6W`^u+l;Ulahi+SyLvb+MR3) z>knuww>2v@BirUoPqorZ`H~jQc3a(Pjx2jdio;58@Hc}Rm+rP_IWs3`27)wCqq0&Q zS*atNn2xK(ik0T zv$`^Dj?9ddOhCoL3zL$>$_qMZvNa<+HQSy#1(g(3F4}SoIy%Fe=AM$84vWEHu|&h9 zM3Mh|osw!z&&tfQrB2SUinSZmG)x*Juz4DGoFmocO1EcWh6`&t1eat|Y6d37+$mY2 z3B=j6G-49;X^zx1H`Rfg8k-)KkvTa#J)2smEo;(PIOYFV++4aAV$v-Ix1WX^O>v7k za_p#4iLrVZH8yEHG-JjFDiJ*@Az|#;vGjlJ=rIhR(;p12p#YVhok5c9F|HPXkl>;(60a{(*gk@0-td9et`imF!Q=H46pu%$4vt6 z6fmRZbi0galXg2*2Fh2(4 z!r1Eoa8Eh?-kd%9No5Q$_F!BXdvk#)3C0DbkDAn-5(AM#bNRgwxOFYqqv-9ewD%Ek zU$f_H=+Uwo}b&n5)=E{#uT_G_H#G$$TP6h7zR@hq#%$i_anEH4Dm^XuQLG?lP zdkC1L!MHH?+V#W>;P_BzF27WM2@=CV9Gc6o6S(Ou*rWDR-b#B*fLqZDdr!8~-gCfh z3APvT!aU`V^7~ncJ*zeF#d^Zg4}U+k0!QVl^rC|vxcq|r4nedz1Q+U;(l@LXI0tYk zA-HU7;16z;_dfDt581q!j9zS-}_{7=jk0BMa>6eA!<3@}hGa_O3TyIfve#PwK zqPeVHls9V3@Wo@t3@{w&T(e^PPaK_s1qC0Wz&A2O3a>=Sd;2a`of-H zgLMzSn-dgl1?Zcg&?bwvDCY!QbcGo^gJO$McMV&?2JYCqLvC-tdu?L-imJGmV8l)P z&ADh}T$lfl6YvD<>n3apoauj&x5cUH@2-i>^jo7{d8=t$WnJ}L+#2vQYR6zRiSy3* zTVmX_QO7b2j0)FStBzZ$Dj+(lzq3@|0Kw_Mz@4{`mQG*f_NPXU@E~ejt#7%Zy&K7}jNeN;D-ek`8W5W*d;|hR?EWLZGgn%wwgHL7^w+_pYN&A`bgsO*#N#g0$|%Tg zQ))DA6nvMDY}GC@VV9n!hRQ2Cc;_K&G1$GA_o!7(t2*QmtNd&3XmR^lutpWIkrQ=* zkU-Fe>{!0jKaID2kN-v8)YR#}liL6crtFCrfh46ytJ^2CyBd?T zA(b2Eo+_?&#hLuGXOc7iuVZKr?AZC?QRjrz=tarc#n>|ltKmCqZi$jrS7UafOlMQQ zV|NGg&*@QZy8NfzH49=An=G3}o03fo_-N##Vuag&U))1Td*f4oVIN_!`+!=KymiU3 zZoDn{v5wd*IC4*FESCF!2j`-bHvp#XIB2_>XJFwnd?I+QbkRwChwt=oQiO62$5AX@ zj7mvlX)&ZEmhOZ!nk8C>fF2f#;B6igSh@&Ro6OS9knUvZZb-r#z4DKzWx)6hlJMd5 zzvHg4#<**ovD0|F5wY{_EVutgZ2K@L7Q5nL+f;YW;*H!BG-5{^Z#P?Q`Z(ljme|%f z2U)`QIJ0<5TrST{WV$wEmb$YRHL!i~Yp=DoQMYVBG(#zl9{(V`s0${Z5i<5(s<{O% zpqe-KK?g)#T@1=qbU+_W`VZ8kQ_!OkA=i?gT}++pcz7O)5B=9VS2AtG&bGX{v!MX4L>>lk+0MbSKT8!j zKETpa9AjCc+Kyw1YGNQu=znGB{0$`0VgCk6)c6q8v+TNY^?8%}>PAHJeNbQg57@Xf znyMg%HcQKP<}IfiEbI<_LhN~qPL=i(!DcbnWLu(BtdvKq9#l35?x(~1Zivum*X$^9UeM;p8gfcuw&+u8d|K=En zW%CiSDJ}AiO9!=v|1A64MfTIJRZZR$nUrQ7 zSDM=NK8=4NhqR9mUCbO+-+7{K+mE6OUCCeH8s+w%I%anJe^1n|6IFGdNV-NS$7VSv z+?wFM6h{SZ+3&#h))8GHBa_211_PC#Zoh+VPyD+w{U2mn9J{ge$qz1he)tc${d!_B zXi@jK^+fKVIf!Ff)CjV*)`QW?2ZpxeKZ63l#P>&&SKVMuwNZOZpJUP0U(yz?S79*n zLDP)I{xkjtckS%BIWGUT<6Zs*ID@}M_rhIfeKy>QRzTwz(K1$Ry1#3>y^yH%A~4ER zJ2=`RWCH8PXi^@ev8-DHX&g(mdb05GBqX|GM<|;i-OJK;NV3C3>x&8KDKW6Skp?U7 zn*6vjm;Y=gZ8D9mKDnptU_-AouJISxPRv1u5~(^^ni8fiOL! zyCx6aBTn&J?jdV3V)z_xwuda^t9h6nGLw49vd|u~toa@?0nX7w=AnnoGxU%co#L!s zOj{gRQo=D7Rj(BFDNu-hl6uVk_(UlAIEsF9A*5K=(JLdOpS%N-=qI0rB&vw2SM-zL zLlXUD45~=PntFCndQR`I^c-`6(({#WC!!B_sZ*Df{s-`CmZ!r7gQ zNG#<{i%rYr->FHf;c^HfmqMbH%wnBbZoUhao9~R}<~u3f?-9$*H>gznzk-pJMj;XV zde)h;+bh}F93bY2?kBn(iLUEX);YUV0-_LT&Q1-JAPE0LA`AJfGhqs|>zHVzYkB7r z9gnoHi!2jM{!<>+V1*#qLL&AJtmDPm^Ti~d%Ai<*qY@Mn)sbKjYFI$ZL_Fn9NW?C~ zN3SE*t`Q^97w?^MYs1n(fvrbgIr>BI%Rj1Wk#24HP{$U zUWG&{Tgp1F<#Mt3{t{@^kOD#Y6cRCRXIN(Xslc6go@ZoPX>oCEL3w#;ITl}5^6)?y7KWyuE@(06Seo>V^^}&z&MlgU|FPoH zT}6whCr;_+TKtNjI2O|)&qa$0VuQUF<1w??;)0TSp82qzR{%`@rLlvSVJ_I{me@2TL|=eev7P5ns%|X4=_3hi?CFhBsq(a?1S6 zSB<%E*j-;PQ_3?3Kl{pz>XR#nUoiW@PB*;&k5MO=`7b-&BlfT7dcHWm=C@Zr`SH{H zCT@zIJFLr?!uwV~^4sPIUVEYD#trJ~y6Wn*SwD^J(D3dfYr8hR{q~1HE&KYz^fhVw z)^2{I_o2`J_SLU%-@E0e&G&A+CEsEI8!t(jBHvhi$`Mc)KY3N1JY{$sbv} z_t>J{h0B(sHE^)v=iL7_tG>RYy3qay{)|CqgxN%mwhca+x4yhVyty8Tp$2R=(WyX~ zO6zMcg<|Nza7wM|G{adH)PBv>aM92 zR$n*ciBJr6Q)UxgLde#2cbPLoF`XGhT^M=Y?sWYwF#Mx5){lo0A(l&6_%dq5g)$Hm zD*!mEtPvp^wR6=m86lW!LNxP2G#;txr1@GQHMF`ewF)tcqyHT=&3gKZKx@tl%o{?% zE8YstZmFTQVuj`tsfp4w|B@P7HCSL!cpS`{rh`dn+G?7Mq=r`V6|8uv(Mw}&h{hJ8 znHHkCE<`gwL{kx>sSeT5t{)<(DSXPH30+SOnuVo{3IbSIJuQ(2XB4O%^6F{h_$z;t z8XBH+p!Up|(JF|}6roY=P+MiqSehE4KxdrMGMx=Z4fQ1L4DTP(*`U9VU3$&^NFntT z6!^Xh{~2R=|B!|o`a7J{@?N=8XMHNmhcO0UGz1ZEI#D{F-*;8E&iYBR7-R6&)!^%c zW9RSJS?xum;njYz+El<#J#;RL^~=cDj+%er#z4(ioMbV^;Ohc|ubJQ0b=6suB#SWy zU)`BSm`dZ24AtvQtNBy zuw9SptDY^AEXEjo^*8vM*Zqmtb=GRhVvNDp0A{IeK5tNJmAjzgmLcRZZaol0_IJi$<7wzCQT){9iijfMgNI$ckr{14jyN`~9A# zv;LAS!hjXk|K^f_ce3c4{!Ac!%gxU(5j^^~ z2www;xam?~!lPL24LtgSJ1fEaAAW(57QW3eKmQBE*xb3Gxl5z;`(1)1hIb1Z!0Dtgun?8B{eDflsO$bwNP!Y_VF? zGF>VoC^DGJ%^{c~ltED0R)VmqHn^NrJwLP(rx%i{4=y29FYtQtsQRG9Xe~7;Il4ZG zpuaC0#0ZE8qJ+L}rIu+x46E`Miidv17e4Xji^C}{>y*qChbz;SWfc=A;^|SEf|-;g zt4w<`G9?ucbJ}h0DeerQX%c7BD4NBYl*H3G8g6uUs%vsumfayAq0}N$omS_Rbi3P? zKG`ZJd;;Ck$pELNcb_q`9Fp?M*o3>BV`AD;p@E%M!Lv6(IJ$cLOk<~j5boI^ z!kua*?)O&W0+&c3_s#ijYNb6h-Nyuk=Ilkb64$YnI7=&W>QXLh5}Qk3uU6XY-AY`) zR^kS>5;vrkxcFA$Mz#`{*h<{ER^TF03CXR%(eOJZ1ZNF7kLc8$+zK2`GfZy63nDZ^* z=vkL;xOdK!_s`AcgUWd(FxR($+loQ>d|>)h$BaO?(Bbki8v2ol%q0LqbAG2HZUHcF zOI&mLJqX-~z^tdcZv@R=z{C#eDfycuhQ3qa{wmBfygPu~FR@e~j0>_ylX8u%w09af zlbri*&K|X^ei8$bLv!gH0$gG%>|NPPdshQj&kr&;iEXYv$X-S(?d1Tspapw$$**apJ*?`iJk^3dYA^Mz zw6`C)&s(rZ`90lAd+jlg)Pv@d5VZ0O>c=lbT%yD<5C>~?Xg^Nf^1@c&=zLoi4i_*% zKz?G;QQQ%Pqu*vQ&izlGz1|9ww;(H}Xao-nCWPrnGINIsu7(@c7s1d*I2lBwJW*=2Xn zq(mPiyv#f0H`5@`WQNcSXRClol^G@(FCEaRMIkv&z`5MgWZFpYkTyx4DGPD-d6Gq< zV`cNtur$<<7(p81-j~QcVL0lTwM}5SCWqIE*Qd|-Drx0K%CuaMGR<3} zOwKJ)(hBA(nYrbPtqi+P=iaPLCcU>98@JC>rWKSaQ?Q<1R_P+eUXZ82Rz4swS3&<_ zvP4KQT+S+3rx-Z!;*tu%%M3iI%dfnQcQ)AL#-rsl9Yx~sV6LaP?~Do0gErKW5>E^c zt#|qX(WS(FPT!d(r^UXLb#!A;jSoHj?2e0?2Fv2{WjuT-ANGgUKJ-9pSF_XA4cv!x+TwkZu;%YH49gb`s{c@PCYdPFZ;0JxTraAvHVsECoAzw zXYJ*{A=&5f9Q8@3B@Lh8E?*zKP%pXA?M?_Q0ZD6 zDBIb1_8nQzslN!;qS*C79I3~N;P$kfCCXP6J!`E$S}u~qsX%g&hVcG7{SWx3+vNyu z_Xe+?xM+H`8wGh%W;^jqOFwjkc(EWL%dyCEC(5#;{NJ2Gkvrs@nh&zLAU$egu#Qf6 z>S7}J#FK7i>$Fnqv{F&Y)`Qy2(aZK0`E=G~{_IFRZm%i8`!|R2?_+%GZT|P2H8Z|(`2TeHe}&== z%Vx8~{~n}m4*w_kx5GyIh5K#(KWj2Sud1_D(Qkdu+9XPi?`%6u?PvII>8DsW?^Uza z(Xu(!o*73XcocexCSI6)8L`syWrxVexhCP&KyaSXr z{?Y{R@5juU{?j(!pH1G&UB2^XS#1vgztB?87s|@R!|$2DtIn#Qq;f!`wKcs1V&u|q z?6q^6Y`&%@?^uogS79N@Rg@K!Ss>p#UvL}1=(O}(d+p*T->o~Eyn`gy=08oXMR(|( z$jxPs@4Tb@U$VJm_Hrh^#|ffmmQRqAixIwI2O6!wy23Ux9)J6zqb3m zZ}>A|nF|=T(X>;Pd-ZBu;Tjj>GO8D;=R@DE^-ZXr25&iv4KI-Frw6fzx@$8(#`k)Z zG+tA}yBM;#IW4|3W^a3E9?<4P$JUSmZ;~W4kMK+s?;%M}8*jAaz+HXg45}V#?23Q9 z_;1@nvtrKL8Q&un_L`wWYxkd!umtgc!g!DDyK2T)|7NNF5V^9+cK}cnc0XPl$o!tF zsl?^q>5Q*O_Z;D!Yg>M1G1|0c^_S#i!gW7ed>=xxY|dz^wSBtrFH7|grox_|!$9WE4&ek8)5xeX5e zGu{wBqr6LeXPdlUd-7RtS@MV8;w{hnznpLL?}cfw?Ea5zJI{5pu?xHTpsi?EG%mIF zni<>T_i_?`Z{&YShTVUz>0R5-pZnR(=L`v3uq)r@KNx?oX2u(K|1XVgDHStN``eI@ z{SLelmFPRyWT}1uLls-CwaIs;?@c`&{uA~Z#~Tff{m1}bw>#YU0Y%e`1PbgN>tOSp zH(9EeK#BBQs&9k%G@3QSY z6KV6;p+@cII$6Sc9s76M<99vm`!92Cr#7yCi#_z&wp3Cr_Oy)ORs4mk`nhe8Ex@B;hR|(pRi2(sWgjZebnm4=ki7Al=Hk zO`7giO?q3C4nVq{aU*dq(+E34dj}c=io=%8QC0gq7g{#&<4%W%9ZeXIm^s4xy%<#W z0#B3`z2F?}Mt>EGttW1d(|?xD(93HWL+w|`P`C)k!i2cmtK%r& zI|(`0Ut2!_dM`c^eE$=6=;Wj^7>#oh>)d%5o!R{#JM$XReofB*hq*TajG{=}$2-Xo zLO41catLaWpusZ`&_qyXk{RfM2}A+G6(txzSdheIhC@JzlL%uo-s`<9t_Lc*vbq9- zNgRo{>aFXotE>25$g|$! zqwceJ8@13E;xBXWk6*|Pyajm{wMb0^vT=>R6MvKT*jYDzz8zKUxS#npDDo}*PKn99 zHCoel=2Mw-(Z1766nXa_w9|TOv$r50Z=d!Eduya`#ZPicid+u}w**Im;>ZJuYpDDq z?ziDCIV44nRl+SHHBm_&lq~#k!^OOA2O&8mMUE$gTcjVH;xMl}Ku8Wrk>eTR*6XbH zN}s`}Dt!{VDQSm09qh0>wK}D=ZIRqKB6ojboLbQZ8aIVQ`sP&yLdumCl7T0)Hi^q{z8dxJ7R57-XRNCnVl7q>>`XPT?j(>UY4uBqeoxqSA(& z;&AO2cX_)7f24nsA~)YBDgCntUg^rq$JZZ5YTi+!eFbC27G8SUxbfJ@Kk16!O}(ag z+VmOM&Ybo8*>kR&TT*&`S-C$jZ~lUXH(aIk&l)uCBJ0+FuI&JN-jOvwU9NplpM9*u zl5U9&cTdRMamvMSj#&NDpLyy zzTZvnncZcp$G>G2VE(;J95WyM_Nnlak{=!_yX&Ek zM$|ua&gDn{ciU%|kyP=(Ta@JHOucm!D7Fu;IPFPYpab^}(NeefiMHH@ZH5 z?v@?zt@u3qig*7$?}_q@{`CBdV}7Yk`_p=N*~hPJdTGGaOa7|;dF&exBP0{gQH~0Ez>HfUU=O4O1FMIC~UEj#?pOG`Tw(9cte!1=SZ*cVDC#&6c-#Zs? zo3GFIK7G+U*PQju%1d8x_Ih|-yVn*c);`|jmxtc_Ie6fUe_W97|FrapMHd%-l~?xb zw?(gZxch~-&o5ZBdcx4Td!Ox6y?suTGk53Uwtw!L_m|5j9jN&7qpcICKX>kmYY%6B z_op9jzO(DCPkvISTzAEXr|xUI=z}+RXldK$z5by2{)KrreR9>gD?eLsM#}1{J=M3m zA6|50^3->}-_-T9x~GEG=cK>crLlt++HO8y(*Ml;@6USnSn;miZ>5GFz4n!x9Y0<( z=&`5FZ7A92EPZA0^^NcRrA@cVC4uyAo2Dl&-Szdh$40I3zWn>o{?umHbCUxNU;L%} zpGQs381mFQ*6-r_-`jq&-Soox8#$AU{t}kzIZ=*I26g4-msMIYG(7SmCQ*Z?RA?V*Y{kmd*9dvmatLy2*7uS#S{(%>|<_f~)-Y ziM?zt4_R;#6U_zdGJ@-a+de6@xvnG&E@Gm&STWck95{Q(RW_GdaS{{FMH9&8dg_&5 z57=C+8hH^D&6Nrlo9hGL&rr3gjfcpBi_(Rzq&2+>?!qPT)H&qFpc zLpaLtis(lc>y}K7BTaK6A(+evze{#&J>t%M`EAigzEg<%oU> zT#1SHy(e7k!J z`qnI)tF7TFG0|MT;bOy#+JRy@9V zj?Hzs!9`4>;=ciZaP7uVrUjqo0+WV{*GQd+H8-acmoN%>1V#AyvFvSL@V`fJG6ESc?yoTaV?%??0AD@UhLtvPDiFqO`;eivwj7$bO zG{2eN?=M^Y`iXKf1%{?8zxNM#6@^4YV{9?L7!;=04&I?Hl-$Z)Y^@oba}HVh6n<@5z1 zH~N__%n8vh%&WpB*Tk??3YUQc4JVf6=&gTe!^J*$j7MPFhk|c2!Xq$I+iK1cTx|CV z>GaKKTWzlW2A9A@ZQ(iB;sT+(z2SmK>_a-gFt`LJ%CGY*Ey}gS^INMz2Rv>|i@{8KF{hGa@_7wY&=`6!9fr;{q zCEfO`$LnuDYje2`E`f>iD?7?B#>+l1exku8Fj0OnBiVlS|KO?(Hdnd9B`{Hb4G~-! zxF_Iu`~L6&`@r2>4K9I+^6P>qzs~-+;z65hmBA%2QGQ)0xVquaYk7Y0_x6GDe>J!S zCdw~iPb66R@Q&j}HrEz|OWGWf+d^4D>^x7u>;vQX8e9Ss<<~`m%k+y!vD#e!G`IvN zDqd_mgkrYunn72A9A@`86!cuSu(?U2Su1#viJ;x%wGg0u$xeaKUA!SJQi^6xs(rbD)%$z(o1wgsbgWpLwSw z+gy1Dm%sprRmgBLV-s!dxbQY9f!gNPw@V%FW^;3kA%~b~t~|IT$(3KA9A&QnX>x5f zxQL17$`@QrcV1tVeeki(^`pT>jFgm~EMVdWIT35w+;B@uNH;ySV1vLRHnq$bCbA%} z!;vyG&F|Z17rI>|N8?NLSZZKx56K?m8tL(l@f13-^1ya2(8d<{T%%l0tV6I}y<hp~Cjl`GAomgpMyXKE6aF6x@ zxzKj=x-rg%52ZV?7Q=S+<&AXZjT}81u5)Zx?}$+&JYM*P^%}P8$dNn?U{t;nD>!Ud zZpay(=W;u-ro(m}RXA$wh%sIlzMntOb}bm~${U04z&o+-!*ab~l+WY#xJQcQfw5q{ zxG>M<8ks*Lzkn&kg&@|OTy7p3;TkPcNv;;L-sNbn{Cw|dcx|p9v0hy;%9CF(W^{p< z2^J|Y$2%r(?AWnm#xl{w8WWpm?ASu@2-hekoMaJM3w!n!mQN`T;DjoCICkE2=kS5U zhtr4~G`+N>c&5{t>&(UH;c>{q)HyiQY}%}nDZ&mk&KxYqyII$jPQgiK;vG-8D8Y_P z!&o$lDRWGmv=A>CY(8VF)!Y(!TpkWQ659)<#BzU`-#mhER{6A9*P3TH&MKceXKvs+ zSyK3b6V!}Ni~h36v;K<3fqdn2{3YeHB)~9FMZq$Bn}S16O0oDy9CIbS7q*@(cD5c6 z+<)_Iwuq=3d*C8njLmO`nhb#XWV~efrT8;w2fR04)(eOlA)5beV8!sYK$#@;% zGJFa@U5pKYXdKw#k;h_SpdUv=KtvRQXS)h3aE=^V=<)cp(Za7dz{ukO%~Ki%U6_OA&*s(A zPQM{T%zc48r6Eb|^t%@(o!Pd=+v&H`YM%@u&Q8Crc(o}8CwBTpw0eBaQJAIhFY3Y& z48s4Ptl-`NIseCB&o06C<~h@*mj2fZxXtOEj9)qiIwo9LZ>r>fZ&;s+6n#Y+CG0=h zyZvn(Ez{KVFUY+fqIon04Vm31>b_7Wr&B>>Z9$@`{(wFtZwcHIvV>V{q|K z1Id7-AA##_*jQu{JCvF3<*btay9ad=kF zx=M;@P8TFu)1ymoyXNtu`=>p6-vj&luN(ctPIH>>6TSU)SO(!YCHZhrcq{bT?e&SF$1pekdn;z=qs*CyxUF_7_e18*&6Ds^i6eirw*g zX3nrBHWxdRyaXny%YvQ>xR|}8FAhLTdu>)pF;0gQpN%k%LN>FK)q+cd%yyPvABb^9 zT{C#_pns#T8Io;oc4uAFP1H3HA&+>CkjATP22-1nS2J}@aSSeAT{8jc%Fnzkrq*zE z#xLIPNRD`%0X^0+C*$giU%WbrBl>9_h_J8b>ZEgk%Q3JFs=&q6ap`cs9GH0qj@hs| zdCP!V87nVh_7$vRobPD^!)IPXUJQ=o;Lo-K$0Gf=6L8KGb`KNxaw~Ams#{OM#ovv* z^90<9{xVtjoq#)09wGZrz?~?M1^v?#a3{*+4D4qo;7*iB+_&*?F>TW-;C_z5{TFT1 zix4;e|91D>-0A4x{nrf>!X3MQ-!CcV=o7~+C7hqounQQU+&7_NkzEw$VM?sLi3t6fjAi04Re!aQ~K2|3JBdT7LtA3@LBN5rjp~Qexu(ixdk&8+!`@ z)B=MgmS2nL@>As8E`WuJ5g(|}vetsvvhmfy`c%Vb< z?Z^|uzrH7!Ci8^2FfGccH=HNz5^vWeg!2t+M<$^R2PflwkL^m zMjo=VVL_U442gF3!N{Ell^I2N<%?vp3CQ)R^0A#D&`n+E&L|p|>Tk!Rak7SW47`zj zL<=LW+gA-PY#Ip7)RBUCcT6vSli@*m+XR>r>viNaC%%}eLu4ThA6t(J1 zRLc6BSkPbjB-9>kNKh+pk%a&3;4v&n|0kY|oh>{~rh3`1Bqi`8Q=w`nUS%I?sKp;_ zDDp2^wirq6$L^zj<{2nRRwi@9DnJ;30bI_j*B6|W_@gw=V*W(g+h^w4(b-2D$Dim~+gDK}l*WtVy`jKHL?NmwMgTj) zmrVL1zG10_rzGGg3bm>pi}^*VXjlSDcpTq{mpaVk^m zWUgK=)O1y=+Tl-@8PpdV?y5^pKzgJrYGoc637QlOIun?N47_D8ne!UO1e!2#o0!OG6R(4o+J%Z;afNRF>8w?v2B{OM3QgDa)X0o70N-eFM*eL5(8rgc*K;9LHE@Gbv7 zm-Rf{{b0AxN#jcm^YDy{v&%K0OuX9qBlM~cL@jd?CZL8aqI*O7C<=5tm z;5kRNm}Uqbu2t~eyx87InUbQ+(}Y`@U%|KVurio`X5zzL3h1eUIeukM$+ffQVm!LM ze11vUGzIe~9)+h47hZH5>A2a>+a8+O*TwDhM(f3qe3`GezAiag)V95T7r zIh%Vw@Rvu=oB#6aZ~yu9!`;euPn$9!Gd=n9D<1fAXWmB_zj?;{mt1;1Go!ei|4%=c z&XlIT;469?Ljp|p$kj$nvZMs2TwhQ#k0f9yb6e1nUaXfD>>_5e;|*}I^PoqPbWWlM>9B zOzP4JmACmsqm36a(OjZ7PM~gi{p0N40cmm_H@Jw2<`Q+h#pONh8Etc&X0Q_@$$V3w zloQb#XWNe22KVS|0yyMg+Kl2kCE{3a&aKYC9ALRMMLK=%JY#%q{;av#gQm>jjD$HE zT3$M}*!VuHn5B~~Lp~=GF`pVcIXdOKsikGJ=K5#I*-r`nwPH-Hr1AMfzw@xDf)u3Bb^bgxAl79Xm7r^uyBOeIed`i=yQ%5k)Jj{Y+qPHgHr+JRJL!j{)=AKmc&D{*Q-y8t&&0!q?L9aAa3#eT?6-7z;zoeQO)_=fY-x->2DYe&Bb>K0+bI-^#xKMdlK>dWov#X z7w|<~@o=nv?{6h;O)GG$bzf-(?quNh0M}?>o6~bXa6bT(lLG=*bGQt=%QG+nh+Dk) z?t=Ra;D&Gz4OesdkNpQPFf$EYbN;d?SO&}u#^Si<(v4#717?qbYffGo0(1bFMh@uV zV*4I19wXs?%EkE7Cw{z|lQ#e_<^ppsY$aaJm5({V{RGUlP5~44YCL~~cwGfdic8{} z%g<$ymj%q9^CYghe0myiekAf;Zi!>Qjpy&_aDNAwp9~z>;^MkOe{DSIEmA?aI^h>j z-s2GP7%*P1fHkYX5qLcgnEMSJ#K)CK+_S)Z*8+~gYC8&_hQg0mbMnr_yK8_68Mx-+ zOTF9$%!@7H*e}`)%<&d*y@7MU;)=ZD>5sV6T7jdDd{HZLBU*uD{d^g4%M5IDdg%+? zEx@d40k;FV7lFCa2Le}f<(K|G1k6qY*POpSfqToqP#&*%`b&rVm#x5Iwpr;=fHf9{ zlqAPW;>mj%0XpeY)GwDw9If$qxJ!UrG!9$S$4gvu<)bTJdnQPXd5B>6X8j_$0u8N2K7sdtV%8Z@5A_BHq_~<}XK(J$z`P%eizDwR zVA_T#UDg}%^vC+XKQI>?IHp^3`Wp$%xEADz_ySWEi;EM!M}c`R78es=%6kKtk799g z}2)M6WA+Nn|O8RYiU4c8zz&58phVSB5%JTqsX$$h0z9ql}4cu?#zc4WOw?f`} zU|x&G#Yqp&D*h0Qi%AcrZ`YL=N5GGlrI$GJT)-5>;$q}cf3ppY5QtlI>01um(iY^g z{QeP`7h`d8!nY5Y4`XpL;bVII0!-(y4Bc=xuPeM7C3_Xpq}X+a+2ySbI}>VezW3VGkQQroa<$YXg6w^H8yz&+jyd9|&Sw+pxfEy!bh zkF`=>!d=)#fFCbQ&oTOA`+K&55kTCU(_cPtV_T3%{ax2ec?*H7YC#_J-=n~+kHy8w ze}4z&qgY%_d?~L9n67t&z-8$rj=X`uTpWvwBkxLJN@8(wi0J zm|tRXapd*B2YDL5mg4ILWr zEN^Y@HA5!3y`fT@VZ#mMUhc@G2gLM$$hygk6Y zAB&5T$Nc;gFzxS?akb(RN8SKnhQ#9H$QuVtaV##5yb55#vA7s{Opi4NMuxEY{IVXn z+7{$de;)z!Lo6;%_`2SY{x5#KEWN~pkMb@C=F(VP9C;=cA>-eB4N&an4f4zX~Z(y6#AH$d5N_nG!o7f6@ zfmX^}0$ivS@>aJ}-gCfhYC#^$$2-7$6^o0LzU?2v7&(5tn$sWU4FSd*i;E-gT42g! zaWVOY`R@*39*M=pk+&I`*J5!o@|eC21_q?Kn#(WW0{2TR}(f?pIaMjqqqGB6U^eEFCF+|(B2F?>r~DepGm9&ABgI^?|s z%sa8TIPv`vn4~|;SXg?Ai7(~#1;!PNiz9CeFtcNEG4dGS5HR=0;^N3#4@_+=E=C^1 z_Yp7&kAlFJfM0X@uRSn53|w>ZW%z~|7|P?-oIDS3m$o2}`K1JyU@R_9d>;Yk*;rgm zd>OvifH@G0izDwCFl`=V3?lM<%sS9B@vfhN5kTCWaZVXcg8Qfwa3}7kJ{P!x6L8KG z_L-jt+zqY3jR)?@6L5tm$QudV&#l0n0bKs$xJ6v?;@cnZXSD)%7I3$=0+$KghF0PZ z#=}LdY-iB-!!SvCf>gwninR~_**AV(gp~i|edhQUnt#^+#6I%~1^oY-%tGk8;Fq8j z;f}NdwE*{yf@1%gg&XHO2EWXys}P$pG#$qh`7+X78OHAftr_YEG569SEs z>K69I`8XQ3zV?&I@VFcg4jc^Mw#s2L^YFUYVs7K|g zc$@L$P=?^n?K}=;ET|uZo7mrPczsL@UE0$Z_G0%a4%WGa9{RYG{mv(CuY>&FwNH00 zD8PPDY@*($>APG_yCo451{SMVg)ftE?;w1R^v{aw1+9td3Gp-zA*^@F_y>7X-)~2o zp7+E-dW>(OPk(7Qf`u~}y~X=+gb=nHtCfclNS;<$$`s4;Vb}QrbpUp*iU8s)NNvNe zAIE+2_=8*1wI9D$2Vg(%46k})wN`Vyt)_3$Y7Py@={&Qxa3iKKX$$wcr=NXz)<5{1 zG(IB}Ti!D(jyv;IWpP(;*qI={84$jy`jx{?fM#m?y{kGQ09AYaXK?qirYGi3%JjF_ z^vlxV82F}9HSz*bGDw-+YaAYYrB?HqgPDZvNk3+PrFLGoA9UzXhfFATA^S&Y`oq$P z1OAI<+^(kGOc2gp(!%2@2XPjWQq!D0No2`{sj6PuLDL&G{YnJmKw!Hsd~3Df`@1iE zv!JBU5*^$;2``aJpgev7p)}AgxVeZ<{>#<0<$Ou+vP7Ynp)N%XqWzlX)o)wNqzT_U z6X1gIay|*+h(i~g9A_OWxJzoG^LimQwD~^Zec|O~GraQZ_exnt++>uzAt6(R`kXwn zZyCJ{ZY^|8nR0dQP&{nH&!N1DyDU4$KvfGjepKsaK}`iE^Y_D+8#iPBL%e+*)Z0jR zhw>JvHuyP|6mOkYnbSie8&>U5E4d6qGt_4*ZGkUbA)soj$s;AlkHlJQ06@dC=*@l~- zCna!_rdR9-!93f+aP%jwO{g7IUCTl&kM&&kl0b`tRNwWdZAc*pszKw_P96s)Q(Hfb zZ#NWW?=`E<;G)6~{IG zlM!m1YX-0NI&N||jz&En;-A6KA->7+nV^1;yUaAVf-)*aCjN(b6z7_0jNwd8Kd$Nb z3(es4Qf#BId;tK~O-_C}qX-AMqQ2rlo=ZfWbyW__Rgo6fH^5mWuutdrQ~cL!dVY}) z=b2@BvYY5|mQNo&(-R))s0&hu2s=J~GA4(g>PW}Qs7<@w`ce4`Uw3(vC!v)JdD1U> zgBsHIhQ|W>uu(rN(6%mENr5c=P$@$Twcw1+tr|+!VdDx2dkH_q{Fa6Il1v(fmQwrzmfEY4DHb#0E0zICP0XxUPF>Sp>Oc#( zfvcjUvSKR@9imn?zYG%*3H=|45@RW1iX1aR3y)6E-YXtKIt?;=M_q6k<5(Yb;txN< zQ6DS?HO=H*5e)LhNz%9A0z6RZZ8W{Mafwm)*~$~uuJi<;o|>-pG`vKWWx59rMd};$ zGSjojK*tZT^(_jNZzNI?(+2q~T7#!S-b(@#)~ zKy4AY5bo~^>OS0=pbq6xi(-QB6mENPr&;U}2W;01>KEL%3#vV&$}DjbDCx#eyGXY| z7RA-?2Ly)~RE?mp2lrVSfNzlj0_`{S z1}m%8E9tNJn+})tBD@UfsdmK|K$C0LjL9o*XF08P%5$oNFBLMVJV~*V&B3ylSm^L| z7HVB&Fp+Qg%@r=C(9zmf?Om9m1veED7wDh|XM#Yxp181FO%vr~BQtU%KDZL3M6d2l z*M~FdI0QhB0k{b z$v)!M?_(3>)eo`mpXt-TV4b(XryoNF>YpsCG5Z`~pPo%sr6V>l-WH{aa)^g9!t{Yn z5>fn?o-7QnFvY{x6`|7f4`HVVHn2>UYQb0d4pt95WZ5cWJ1{fQSF5k0ZNe+Ny1uH& zpb;0R>uT3kI1p7$8-WI>iZ+Y1z&Z;Kul@%ngb^S!EZ$HRT}AFO1Wd=XG)NYMl8y1V zproNeb?SL2^ILK&s*w-M%PARhrm+YzkhA9%<= zsINO5aXQld$y%^Fv#~Ak6b;mqP<4Hf3TLs>LZef(+_5SCPMSUvC!tTmk?8qpjku4- z(-i!jlGZe`XVb_&2m&ShJ8xv6lo9wv1Q&i%D4K^tJ$Mv`WT=AoC}#&!G*rQRgtNLX z*pP}178Sgs3ZQ%@yWxQljyz%Ocmu>jfR$D){lr_fN2SwU_P;S|-znZR$80$J|U zd9FM2BCRMhFEW|T%++3+gy5xx!1(A_K-Y6JaPe9wg>z?U zKKX$Q}vpEaDkra8(LF-j@~tU2l^zP$?wZ`zn0?f z-c&PmXW4f{cLq8Hk2}lTqO<;5N>dUlLYH1sQ=R6js`Xz8b}!nn^7Hf_+4$C&#a~bU z>Y-b}zs2USPiblk{zlXW$C~^-hQ6te{kCbFYfp_gxFsd{OB;3NRD`QQpC{r~H5d;X zK5EE#(IzX*u6BhkY;0qcH-0tGJXJopbrQR#SJu*keGlc^p)3S-E_CHkuEu?spxErm zzEM5PFtX{tXjNP-l^wX;P;{U`3ok_Jk-cZuV#74O2U|EcaZDrVFlj7UU|FMCe0t3Hcnea!9Z!~A)_hu&j z-!=1vg-`8C_O1S=mh@BV*`}V@yubk=_Al#ZYOwFe=WRO>DIMDdCYR z;#-Yc=x-UfQ=VR)qE#L7V+ds#9#Kf^*jzcS+8-quHns=f7d#U9Skon!nhB5iHScsZ z7HcVn0l`3*IiBXz`7R{vY!0Jl2o8ZN(4AKi->7#0jH3!5a!yG1B8yAF5lD)Z|4IJ*p>by>s=v z!r-BH!J}>FciqV9P=;6^E#9j7xbgT@BZh0Np>!igi_(!|uc*n$6>q4zal}fJN0~I zZhU!B3%ODn9a?B4sxO$SdOikurE{8aPHP&AD&J@;bhHg->WI#;Wh|O0#@ChsGNtxm zC_r{2)`OC!2wR08@N%Ak~Xjs$;>SR!|ug99{m~hJlbtZleg&q12gd5Mv zkWwDAD1M=_Cw>m)8{B24hW(kwG5MbS3T^s04#8$(JdE=#uuA3wXXew{pq)8le9@nZ zYJoi>lqiJ)8N3I!=JBRQ!z5l`Ny= zBbEG?J)d=Dt(aT!WbZ)7*60OdG@~O55EPwtrO29ssy!PXGm#wP@Hd$egz?e5WMmGH zzWsk*GJ?yo+w|uX3c@bgFf|kCbF4sL3`z!?rLvD<$#pa9!(`FLsg*?$u~ceL!A*{- zAbZ<2H$Og`2{Rf^k5SJ>*W4U+fd`p}2k97pSpa#mi;=zerFIa@wr;0h!>nxeF*3zG z=2LhJYXWsnSJdQk#9Y$~ATY_>^ieiO?W126M!fRsX{h;fJF9mCrlZs4{qZm+(`s`s zE%axGE-efmR|9DD#8_C9)<-MeVom>a+d{cXTGPiO+MQ)6!~jx_Pv40Y)PgmLN@1pm zv#?P!YdL-=hv0?1Orx@=97s~r61~OMzVKf~J>GlGFj6$z|D*KZo*uSucnEt&9wx6sCHrBC))-2oG#w?rJ)Rgrh`Z&S5LEpvCNnrNv9=)#6F0` z##h5(n4wEp@g?iJNb9T;HiUxKoIP#Dqpm|r%W2@^FVw0x;U@K}>-SliPt*0=@qn2N zUucurP@R}B{EG6!;?qN$HIlqcb9$=1Y;){}Xy6a1>v|Bm{>)wD-H1TKGf zv$d`IDv(-L{nAPvcoVJWRY~~KSBe1cIR$dg>K=z z0r*6AB|?sR7G`RPs>dlSX*)8y0nfzhiLoTO`z~w;!rG`XDzu`bQYBi| zn8Gp@h0m+^p#h!+OAQLLstc)yMxQ+}*XR_ZpQd>uOfXAK{3K;Yitr1Ga>z;)b^(}# z`ZlBuog03^N2;0Cr5(=7dN}%TT*Rxe`=2xI2{VK}mUwLA@t%cY@k1 za1VfzbG3BX1@*q5-T@_f4}oIxIFuhiNq=cz`E)PlQTCz`s+9}ipYAFQR{s(_ z+D=_Q3y)^v+~?LSZvwl5brY_pgI;|vn;FrrdG!ie$xLz$ zLQu0LC`Ox?z1J0diTX~|cLvg3IiW4kPymGhMTAx4Uhp;*mKvNcJ)voP@TfZfBxEc3 zGE#7XUcmx`mX0G#eigyTT8B`gzFT;S*C}`{-lZ0V99zP9Y3iC9BP4bV(UM|r_$)E5 zM77wlwACcEXf%GeGpMb(*k?Q-azGX+cDj?4JWzY_lVgaT;pR{%e4W7YxvOwv8TeG- z`03k8_$4X#;XYYV58-~LpjP32g`jA-OX^8bzY}iHSkzijoY+fJ{)RipyOI>@OH!iO z$+4oIvem)dG0r0?(2t>iS7~(QF`533(7uMrA=oh?KIo$h)wJN+_Ncbf)ZnqCz`0`X zOsqy>b>rk5kW;YvA{Lz()yNIOV-7i}z?w-+7m3k>zGYr`O}H_)NVh~tm9@z!pw19}sOu^!KveGax2+Qtrf+qO z=@ep?L`#`4P8b#8nUBD*V3UCL*#8%|UnW(9F z&_WA#`$9$A-8p})gb)5Q=*IQxSr8($iW2I={J+^jUsS023o(U4L%`_7)AH08Vd$XA ze};*}FhT1U=gE{q`%ZyA3}tV?UwNX1OI^2|adr-B@??MNT(M-nYsF@vgld0^c`ODp zYS@K3v;F+8zTD!TYUT2-95$HU)2si`*x4Woa;KyDrGmq*UxP@7ae00GVceECIzxI-BY54C#=@O1?$xTp4DnviaMZRy^%?)%}i-1sBwPqDDu8% zy}`B~YzE8f=CgmErf;G^LugdaZ;H(M81WLA=$sEt{mhK7-nt|WE$dX=wBr22;L$X7 z`TQ=_hp2{K`pRYSMDZqVZ~DkgDL0n@sa3-<90L)Feibi}u&7{VXk4Q9MJztFXLkc7 zu9s1*HgW8*b8c0_Crhut^c$4N_ zpWqDz6qeqG1IQqzW&(z0%=~6)#i_3Qwc)QoMrwwRnjR>DhN?cmVKr=DDsKk}8iHA_ zG*p5{%J^&GpYW>$4w1p3G=v@_SFC~kgHiCs9HtBpGJps)OMqILP2T8I&~O^uFfX#o zuyO(&A&Kn((jIRFGn4NqT1*H@mSP!Xwek?$5Ka#BG`t7et4~0QEO;=Y?hzqd@*rw2 zfT+_I_{$)h-nBEl^S3j+!r;-OLM)r22g{`gBC9MC9(W8rtLs+OBalbl!77pJBs^skYPSTYqLYE}>PwVCJF<_g zC|H_vTQ&7NAm_Hd;;+#SQrGR!a!a#BAynPlp>JRt7)uEZEVO5o^}|pHmGCTH2R93= zGSJSQvzq$$PXxg@`A-HR$^mK#IRuN&O&dsV9Bg=s#n_qbdv`H10@fx{us^x6JsQV^ zy5$UF0&+X%DBSLx=}QAFtZiAFO2wXsss|}Y>$l-_(0H42LWY$|-Eh2}P@bu&6BYG7 z08CPjC0&3)8)3NT7G?PdAj2+|K@^Tmg2F7+2ZkCJBg3ofJWCrpu1$D}VOil>ifA&s zg&;F{tl2RA9rE2@wE!1ViI$u-Lfg7!oa;%@gFH9L7Y^=5 zOX}A3?f9dG@4AnFbe;7!JDyEtw zs~y1_70Y4N%7>92ToQw2=NNnwF{KG)HW_#CgmhV;0ziraW#o}}k$S=7?bOOWAds<; zJW9hh&?wz|n5Rz)9#6$`R{0k3R~l9emiB7p0LT(cew-^d)rmTNAIopJpvfI}{v-lx z_~HkPEBNb$Y87oMh^BohM<1Y?)xOa5)uz&+u2d9cRzIkqO;>0jqM&Pf0a}b5{>jvB z@aTnp>Qs)jG_-?PSdnJ5=8-kOC`xgx31K%NwJ6mPvK2L>QJWYp&%?zGjI`bQAIGW% zDMr2rrS#nX`cdEdEYrqpj)5@K+0N$U?B10wY1?2# zIZ+}`(R49%X$)P#m<*)Wi$a3bMs?H4e=71W3!)L{BnI`Ey>8ra{!+x-Fs{*1A?_)% z%r~B_reVFr1Q^M$(N-3@7YYDkxJX@@ut&t$Sz;g!xp}fb)$Y)NO=kG07O7z=JjB|| zOvE?4iB-W6dZXWUn2lK2vtCWp50cb%C;p%bUQN$o%&(3Z{MU~{L>5I!{65pxM^d9fyAOvoo`j^$ z@vBT=Y4kMQKxTHgj5MYpFa>VD-07=b>L2Pol}-Mu@e+O71fi78Xopa8r8y^D(6L+X zhIt!RAN59JG*=%*R7TlsCJ{DK7QcpMHnUss*OUhT11r&<-iI)$RX5=c9&X2j|0-Jy zG98^f;Ssc_wGeAv0W!i@fbbc0C_M7_L-mIm7lShOk@c`B5o#3&fEpb}AJ1+DjZ$_q z-bQ*HWWYE+iH^O8-txKOJ+vOMaPIea5_Xog_EY3QE+s)Q+^YNVe_r~8B#y!w9bc-S z{kZ`idEzJ3-%+&S=*uYD&>!tAuNJ_zkI3h?!BQAXg+3an3X z6Pxt5Xs#9&B0PZ-|Fx*GAXaI-8cwPor#{AvV9ewqNOEwxJ=HpA~myj1dn!7|5y{O z=`^&)e=bZ3JTH#0B{7t3Y{=2?u0c>~O>&QnWo9rIfzgP;?JyEqLQGw2&?Js>q`N}So(1}LPpC8#gC8;!7*K&`gvfh3TN)GZKwche*IXTG7ZH`jjxuE1E!Vpkw;V_8+ z>YxbAHK0(1!Cyb9Zv^!yD7hbIr{#7S)c4|T2UPiz>I3R?;Wh%4oaeq86wgJKC#%Xy zt1>)G9dO!E(+=uqlGH3%F{X~}yr%yFqJ4HVZhBq?)1eI#%< zfRggw0@X=K=?GI*@&-Z4u-pSmay$x3a`Z?s-~J8MTOyV(gOX{q6O`mQ1gcT^Rs@4w z^4d$+5+9dmogPmzHMoIzh>h`a#L~E(Rs#-2zH-JPk_5Z5JrX zaTJu)Uow;|alZp4Yntmo$(m*XC|T3203~ahw?KU%V(vh6Wc|_!l&oL6gGx?dDx7Y; zJqMJmUj|!m^Q^a%LCN}MhV`}tl&oL;mfH$YGM0~nl3}g}CFAh{C>i>1LCMhn3`&N+ z3&winBz9j=heYTHf|9zr3Y6q61tobGfs(vBC>isIKz%KEp9dww@*yahV?PH4)u1Hj zbTezImqBrAK1rztHCIquK}{9Zc2L&{>UB`l1hpGfv7p`pHC<5qLCp}`5x4Df;tLHhUI5aCBn^^Sj9vn*7J-PlW+Q$ zn0s4>7)37X@t|Wh9RphLzOKF5vGW@#Q*!}LKH9%6~1vSIkqZpNS*=C41) zv$-Uj>&%@wFL0R7kGYh2DGh&u3wP+ybUk~9y}XK}`{4<@O;beEm!`m~^c)5*@Cnw~ ztC^nN=#i~OM`bNVz-O$i_DJu2I$qd|u+s@9!d`-H0JY$fwMyUxu>jkVQFSC@1vbWT zj|6{B@MoE!I}=8F;Pl9u2!she9ERxA1}CEAV#BJq^ty&YAiS9J#qbJTe4)TvEGDMi z;d&MIFuR9qJ$ju`6^)-8WK_3Hhj4-HEc1=qT=&C01)6>-CMoxFX^vQj=dN7464C-~ z-Jy-$AQvLdU2_pK0$XE}rMfW{JLZg?otplu{D=T2Kc&*EO{H@@V<|iHkq&_?pv`Ki zenVWx43YEdS7KjT zx#rbBp>gJ#Jmsp|)8NiAA&24uB^ST{&Z5?UlFQ)V0YzKgp(G+bNkx9M1oj0>kM$LdbTv(Wyg?j{@E9PWm6;yqtR$dQ_%T=*Nd{RKID&|wpv!Z@V342l+ z6!=qhWMQh9!)^GN5RZ%rSFe6miZAq7#sY>2E0N~OIe#sDx7hS$78y4bZ#ZoL67vyn zc4&7d!>}sm_={5THni_0Q+lht!!Hb&8+rYIkSuP=RHP!6F%8o55 zE=;bLy^Q6gs4@=(ZfCj;_Udnl6vtMM!By1@+6}E!eTT8gL_=Tlv5dp;H$UvS#8dfc zSWCd91*t>}lzro@BB=OM{@UU+rVyCZ^dN+5hRcvL#h~jwF zl&i0*6}v~U;}u1g34oyu>VB|?U)|xF{sR3v?23c3&%}dVMQg2RG?imU0nEPe--HTX zoJTv@*hO&I_26WruKMWrTKyKGMg3@bf3Mz28@jXn6nz_amnT(k9)MspZPP*>u*M4& z#f*@zHYGeJO1huqV6z9-h#UZ8T!zXfi}Wo!dgEFYubh!Ggu4t zshJTPUz5_PGX5RUrMes8Mt2J6sFR0n@;quz80f^2Am zpH4wk8h#Q}EQ>QR&hO6{W+j*pAHbLd4WQ9cD`|LY;VCI>_ttk+*KNs2II2RYo60RLqFU&|t$kgC@c``luPg09MN6A4UAdK31%tt@+rY zCB3bM5?$*0>KX1(UW&TD{gIjke`lA}qdPPz1zRYEE5;&ULLpXWw1;90q{E*wBe*?{ z&rRE!>a<{O8nxvbdPKb`4{>koyKHermcorI(6J1M=wvr6$J~_&23G8LLQYjHC!oee z@onVhMXv6ZQ>0=@acN(;xgkRHhGoQ%-_qgcLI#&op*NITbO)4%b0B&n2o4c?^w0En z-RhW+-Jxk2Il1FAhN(9vK{Nc`NMWO6#_d=K818VImb8P5OlPW_{ku}t^;lt6pr9I= znZ4K2-DEdXekOL59;qJS(yP@!Kr4G@1a~?z2H|mr>fWQS-#H_=BQe8)hn?K(RfN<# z=I@7KEIrkO#=V!3EUqSuPZY4+Na>B28!zC(7gmgJyjZUj3DFOp?Sk-xs%jmTxqFxC zciIM#B=Ei8VRii$Bt~M@5dgN#2zij~vMV#bsBW zgjzAT1l?Jx?27ekSj7#sw9AFNKMD0-qy{=kWK;bfguO0>AyR@(ZOR^XBa}J(ECUt= zF15p4HPMKdR}b4I(kfafWYX6cz6K?` zpM6kV+kzh(tUx_2IQ|Uk2|@8}M#<6LqMiXIeftWO#PvWUDRGyBdQ$MR8I^wUOL#K$ z?}ADZzKOjU##gZxI<@fiPTGbZ_Ca7?pT+@Bb5#OjBF9NZ-iPHWw}M9x`qu@y$_Ycx z(VLaCzzcUo?-JZ)zmC?1wBG2O_(A{{9Qv`IRDNaPik{g`&J`DNH?`h?@%L&d%YO<8 zF0JrmCQ*D9Ps?4974X$1CSX)>p7Am;+c38Eqe%Fo;3lRI25NJHVwuOO%QkV9hvM(G zY!g>`;DZ;YO@L({4hTBe5N@vWfTfM0;WxO*gAzM5CSloUU627upyezg3*&{$M4hmz zuswSMm)3}Xobi39jToB2931ZeqN+D$olS-MxM*&ChGuwSZfInAG$HtFiiSt1 zSFx3h+uQLU&+;h);1k@J%97+}LwSr=g zuTD@8;w}q?*qJE5@1wsfVsC51X$28UdSxv}mkjp4ptcG@T2p`gr6ps?6FTM!e4*Nt zY+*T4wOrjU;+R?68%#1%z@w&aLrHOTX)@;2wgsTCh#tdox}Z)5)lX3De90(BnCjs< z8GA5zAlnMzgV?X_K~Hsy7Aknohp%~H4pGDM`FhXisGYI@YQpEBzY%o3=SSl&|1`n9 zE&qxjd9uIKLJwuo5Jx{!b%(CoEOgFf|E)QK>M0-MDO?cSy)Cu}x%WVv-Nh27tnn0>%ib(GEg zx|$A&9`(_q>N?D{FZmG9YW`8zis9@9_%V678e0L2Zx?d0w&B))!h1~|;i?VI!ivx) zY_h9PfxWu;n}!{H2M*WY64Z5fCol@mi{4f%$>XYg%b(OV+IeJ4BLBKwl|SQezSDW6 z9!va~*P8O(4eV24P3129un!fB%ulwWfHqWCo`!8dMHIA{GNx8?Z~nhi&L-@VK3LMJ z(tn8H3`W=ztU!`*`?&Z9v*AXlj2Uf~{mR?HqvyM^GN~!MI{0~FZoX6fLv{P3Xm9;( zau;R!Jw83~T!DUhQ2_=$vJ3PvGlc;Qf%-pObvLuNK^u^dPurnNaA5_DbW^bB0&5EK zHnb?K(Lo`YP=DKn4gva4%s}2IO!`lF+ZS5$p$p&cSaJaqx#4wTg35&%EVfDmhXbtA zX;vWe)gtlAvl?61yv0Abb2l)()mt;*j2!EFc?BMsvR-`{>Uzu&-q=+ex_H~?YUOKu zgO7*}ty_$oy=0e$5A3OxFT&MIxn17K@5qRrnOb?5kXW!f4?7)Ch(|k!4i4Gn)7^gXNJs^d$9+J|g<2e96A5s2cQw9_G*y=JE)# z`=`C|B*%-c0VU0uk3nt2&!Ieyph=3htE~0k1SM;Ij{eA6|1(gs*8dumtOAozlgL{C zLW|lDO4k2hSk!l*WJ^$tj3s^h1eC-j!UU5Q{diCpL%KtmZBciFqG^Fvi7g1sCyvyZ zTV60?lP=YRCLbe&5g!<|-0^`yv)o}z>6PL;YxN@T)Xa84or${)%|OeIR+My$+`AjO zr*{i;`wnA`uSc&5baUra(EJIYht~$|$mvC;#%3w?W;*!vI}~WctK-W#=syKe^Gz1~by{4KBG-+=t#6w|rOmWtfi*e! zR^r&Hl~kI=K@=wn%qyO3mcb;YuK_XTGOo7&whuBSl-V^Rrt#$7BINe!)kaDEbMj$F zX;P8YE0P4V8OEUkL60xv&A42`mHtbLF}z*4iTHnt`9fSK2j5B@<1Z=7mK;P)!_U0p z$!2Yi_#<gM=(yRTmvSkyum!n)w&c=xQy0z2 zmAarzP6nA*yzo9L3-aM8ZNl{LpLLNx zMaVTd=)2^I_C<0Kwbm4DA)~|ofs~E6ks*o3*gi;{2eI}^hr|G(P7~xYBM8soN(pEw-QGUN{Z&8;b&g) zWFL{T4T#hD8|}aCgOp2|K?BJ@@#Ow2W6FGZnJj-JA~-ZFmXcyT645?DH_dQ(Ee=VM zgYA1X$H)jjMp+z^B1b35(Je{omX}tlW=Z(tK$;hqLCN|=QsnAp`!h(!CDI?C#UUwj zoGdva>MZtm&8xuTkQ6!6B}d0(rQ_f{k%J5V zP^NvUitp2oiqqdgQOB!_I=GXf-r2s0%uB#!UgIqZlA?r}Qi7VKs5iAQO)ZjGtc0?z z2^N>6$Te4R$vRdH5Gp1I-%1?QUQ$eZ$wAav_?cHc*<8Aav}e8=pCaU%9L>p=97MTI z!T1|b_6@e|Puq%+m>kW?mK;RQXhHTeTlV+KA|xh9bFw7|QLnck`(`N{sK}5w@GN5) z?Sqs{nfqIiyV8;yslDdpN?lOq`z^@5(~=vR;?2pG=|`D|T9A96C6_=m&ow7k<~ho2 zXhH6ugxrMll9lt&156!kTN_;1VqTY9B|%cu`eTB#*IgZyyS8>$t{3?++B&X zb6T=;+V`r`1AXo`gINyca#j9iS(JFTZjxf_COIjeLlNc`&yRJ|4`HEp5{qO_4u(K- z&`(LxKgmH<7(erhC;Me78<5D5P*oBg?Sqs{nNOHPEo3y$7E3OHrWT_ycF3hJD3dd3 z<`plz+l5>?O3^_{y;F`-3^!Tum$P!R)|M1w@TRRn!#*%M_*UYmK}k`Al7pyS_?cHc z*>4#!#h-smHsyX|3dY}fvfnjiOPCpEYEh!2LodTjnMWjpxW|)wP{IwA~@LdmK>5IN1EV}Rs)|E#pK|V#4*Jr z#n?y=qMpIeyyD63E@dl-_~3s>Hs$`!6pX*|WcM*-OPCpE<_3w54!sOBWs3DLk}0m- z(`^k7O3orMGL_OT4N8i>aFZ%hDI))58uIxk!{U$>InJ{=jGWLnf}_91At`bU7973$ zw#C+pOeN(oTA$LSLYXHNB?}yEIqa6~0=Ssh8J0XrQQk#Do*WmFErrR!w-U!xmlRW7 zau5Zx)VkuycAgNsTnjHhYb*2MnIc^DkDFTz4I27*IU@X=rjQ(xB8N|K^y-&_5$%B| zwCqLTh}Op=5g|Cwk|!z3<7yGK(cK(Mx2@+ZDT77AD<&5;A+gkiq$po<5p@@2npZse zlcanDV#;N1wZkAO`X%L3CPxm;|P3byVRl44(9`1OseJR89v>hmA5JD+aUs6o1QW+|?GSlQZfyu$Q z5=T8sifJY}i24_P<`qx&yr>wPa;X*Df7=HsmohJjNU3;o7t0u9b$YjH_+gx~8+z#7 z2BnD@zhwpqe}`BxmK5W3ljQD`j48O@O6SAs!H!uS3ds~Xj&q^KDJgQUkny=IMY-#( z9*REgWF=*5PsQQqgqO|D+$?!$cS?%3vE-&7_Y-1V@%*{f&>Q@OKMMT7f*(vpaJ@up z{h=REw&2g*hCebWX6%_hcAO=}93aClWS%5Bc#jwU2ZY>SXQe8Aru9<#4DO-y`B#_2 zX$L!1cPMQyG|hyfcI;Y~ma%!|Sh|-Kb-zl;Oh`*s(l82;Hm$vqR@UJlIXt`>*F_em zq{#V%jHR%nQU%WB;9H4f{3MlTaS-)K{LCw!>}R4hXv(DqZU1c_WJoA;hbh!TM)N!` zG`_ucEr_Y%_!=FBDu77H=U+G`2TsFPDWX`-< zbFWSJ&$@2C=?|RA!8r@nuuzmd`*W=T9w9FP%Pj z8WeC&`rMNF>He~X=~L&H_-9TpQ#7b-?$qn1r=Qus{7eCzQ4*Lt4cbe0j~SOA%ch@OHvRg*bm+Wz>YO>(Of8F>@5$`(I) zaN6uYyjR&l9kyZp>>*3?hu!Zx@24|X5BuGLy>r(5(*MC5PWxd<$M>!ee|+`xGiP42 zE9Jd+CjWZdgc~P}`r^=!&mH~4)xLEvj#JM+wEgvuvftMpTIhJ_gGZmde*I6Iw!ZiC z$K@A3TXEYPx0G}&-`V54li%%<_jTTP`|i7E-TJBHmK?gNa^fSG?_QyQQaNx{cu?)W zdoMlSdqA7(K0ou?wY6`q>i6Isg@2ncdfIz?R;~Zj&13rCJ?7wNzvyeecy{O2fo^9U zef*w_zI`fV`>jumId7jYbmwKKzxDacy|Tt6ygFg+otuBU=l>(_J>a7%x<25$*#tt} z(5tXO=q;pRD4N}5H|)Zu&_TfvQXrT{vY`nY2!X^Uh+@}AQ7qUIm5u}g35cQ~C`Bn^ zA%F-72)2CZoS9o@@8%)z`+mRgn_u?k+%y0GoauLF?!9x*Kbbo9r=#z`v7_eb`}J2$ z+j8D|F{#moR}Vd2f70taKA3Z6-sju?$b0?w=+uuUuNro}@zw^7cV@k5K4(1mY{oBt z*mgcXe|6$1Pluvg--j6zo(-n9eVhK8a%)n>?Z|a< zzU{g_zI3ur!LqE$y-jn^_b$xXa?Q_B-DdEp-2?Al6q?_>dxytMZ>_ZD zCN%B;(7B>__s@>nwXXHRtR6>qZ+C6_`$$k!^9{Bc6W)tBed)#RWv^zIuP+H6T`}Ji zy2Nw&qnC0%>)mYM;I+~7Mt6CChv$`wy?xu?JAU}o-SH{o_y6-rc67?mc{3_cv?+hr zcy}vHyO%dMIIz&KZ0cfZ-ID3%+)2-DYhh@z`NiMtj!OeppKCqSleXl;&l<|MHBh1_4Scc zefB)r`mk;F!i4dyb>r|0#`5o9d-}G?`@Db2j4Qox*cf#dA4XX}K*}Z>d$?z?+ z|NO1jry27$Ey?-q$tPp4UHLIBa>k0tAurgDN1i?O$?p%JKlQ{f;r;)7;n!hd{T|s7 zKKtVFU*~xKNXUEr=9EkR#>j8J3mNid+Zy-wk&nE$W%;N-*Zd^y zetlf!uQekK?cW&Ob5`uPBQrj0e$e*py2p;a{pRVpeST-F9G5nsI16j-S4yL`b?%;dt-|qgz1J~-Gjyika(b7{-zjNfv1M}V-mlpp(LGTa# zd%lx(yl<2F6W;t|=VOJ_=RMgepwYp47bgAi(S@nbGu_7xs(7H;?COW!KE3po35sJzczlAVOf5^2jZtY-(U9q8{c1_xF@)6*}{s~zS^|!@2nfc0z!uV z_`rY`2`#1Pwr6)NzVGkVV@k`j=kNb8@xtScp8WcWjUB!{d~EET+;=}UeDX^9U6Y3W z{_cH|m#;^?v~%BzrThQBp62IVn>lIv3D59N&)wVgBX>XRYhyOQlJRnR%NJh@`?miR zli&P!*re`XytnK?r$@K6lm5cuiDRD`+n~=MlbTsRUQqVjif^nx=d_p~cQW*qhMR4}duQzJ)3?vS zU1N&dTt0Ai>pkbLzw>v!7h^x#^`HCSd7{D29#=m4IyNe!^kBe_Kf07xcg~NlclD{O z&z`^V{K|XAT=J_4&f4wh({zxjcgD-Z(hDlwk9}I)GVJbYZ$FY!_3dwEBgd>Nz4w!V z#v86zI3IuL$rW=qElv622f03)Cyt!c@%(`0lhE|wA=s&n&$4iI4esTPq`mY?>{`PaR9YbDe{m;H1N)Nuh=EK*%duRQEtjVW4eO)v3 zlpMYspT!vwJ5rJsh0FCjCGx2Qe_R{fBD6AlYrFVmZ-rLP{kToDE~j38um5|N=PU2p zGd8)fiFH+H8Q=ck($Xzy6aJLXGdm`?9~1k|zq@ZV_-(DUqj=gQoqs9+H|w)0In~29 zN1EF8tQYsyp1($XvTM+Yb*o=#J@bu&s|v@ya^K|DA2|HJhzMMNqsQl8_HDlXS=s-c z+g(n*VC~!D_s4!3K0C}f<#hKC*SicU6a7kCzPWQi-$5g>VSQBQn=_imy%OAX)(7=kWS%-PIP7E3;LAfIR&1XTFn8eP8&z?gzyD9svXhyo z|A>FLb<~bo=Z`rY^bboeiH<-I~_M|L-TQ^FwmmXTS5sW3FKvPBiQ= zb>-0^&0=TNgv`wy7FuZ;I5g^o@i$H{?J_I>>|Mt)U+r1{{H?dX2<`6q`PYvPPtVA6 zgh?x-Mt=5y>CNL;ju#j1Z;QT-f(WPQteQ@rypZu=3xy`8PK#EjqDT z9@$z_a1GwD^ylGXwU@^ z3#9`1nc=6#X9b)w=N%th7cd%dSr+qU;p%&Kv5>WKu1}aGJi_mCb-nF+3{HcL2E2ie z)1w2Qgu+bF0FpMG286*WJf>pYn5kgg8-r}4VE`P_C$Heu33^N;!i2yPUCyM;)p`t0 z#*Bt{;E1-K?R3qo$It?@0dIR@x<P1Ivdguz@wcQor? zn5lcGi|U7=IfF>Q|MKxpJ*FA>8Wqf<`X#UHF&Ki;AkWE*4y}Q?y|=9vgu#hE`ZR5T zd*payFa)C^hGTaB^W8!{22*S_1j7;CfJ-f)s(FXg8hnffyfK3HC-tRvHa!M!4Hylb z;fU;aR&<8-8Sij#B5yR{tt2dqPyAM&)?;vq#Av|9OJtwkIA@O@gQ+$ef*>;3W^O%l zhgkH;?w(__qp!KHMpXa47!FVkbX5T+{}0VWMB2m`Yy zY2%E(Mgu-Li#5B^Z$Clh^~Q7~%f`n(>~lQ4M1_#E5a=1o1O7hy1Uh%wJtyg`rYO&EOC6ET~%+z8iW z`Va*f?QP3Km~L=Hcdwtp$MwPr zK1KsnVse+~ghMCl9Zoc1w!#rd1D{x@zO2W@5C-Fn=}IuIS*6F=2!poJ!W$t5AN_`% zFc=PEVqg6mh92JWfuus5vG>68nv>b)pdK@VF!(SEUNwI&&ReO+I0%DByzaD~*c=k- zZOciR|K8q53K-x0#wfyIy+Ai0y6+QuTQ2Z18nWStd3fLEhCB6`IKto+3S+vZ*%)Zt zD4~0a{i7p>AW3i0ksX+3hfZ@?r}J%^K_c!It|`n665opPJ=IuiI}50 z%}+YbpE^xr>|DsnrDN7<`sy^pb((mcCP}Bs(rIw>ZqfP^I?Wq8%?_RBm`?M%PSX&( zKXP(P2kJByoo0+q^MFp1rPD0dX`a++UeRfA_jfUdpXxMU=`^Qwn%{Jqe{`D0aE%vj z!5w2SO&^`cs?&_tX>dO%bZwN@UBESgie@p_G*C3Fxu&6_d5vpYE1Hd5Q%})+!8P?2 z&5vBuT+#f=HLVnli4O!CDVlCv(^AodaZOW2W9OP6MU%!g%@oZtu4$oYp68k-isoIe zX{=~y_W;N-lcM>FW7Hm!-qECdm22-`I!r(y0pK8Gn(H*3b((%U&2XItp5*3E4mm@o zS*X)Iq0_vn)8M|V%*i1i)M?J@G*`H01f-O8Y5#CdTSe0phjHMBDw>X5Gn_P8`R-(Q z8p8}wFyS0yCyhIAW^(>ahH)ww3&)I9GznZYO3~cUH4a6S$u-f6W**nXD4L~QV^cJ^ z-z>U*q`}xErKggnKWX4RBRj)QnplOkhO-7Ln)kRST+z@+CVilztGL@1hYt{J9iaPM4ncatWoAk&?Zl$wK@Pz95~F=2{k zD%T8FG>oh%N zO&HGG(RG6#g@cn>a=4B`8pT!{Srdk{VszN-Sq$ZbVFe{ks2oshSu+UN5zyf!fiOy( zu`?AlIHO|W$RXoAo-~7G>rG@$s9Y8}hawD>&XWdsNDDMZEJ3n`vvAZ9hH^eutDz{* z)oLitYXlAE7_Mt7;S56SlesMxLyR-74J(+z_{1OXwM**>7@u&I@Z~G~Ppk;cpE9jx zF!C=$7pq_>?Ok9zp=d&pwOOkff~-d&lNHRM5U`G)IMQe!iantC6iq0``4+SmRf8Gy z9JCfiL#?1AWU{Kkw7;g+42po9{tJpm!3>IoeElv+qZvFHf?m~3qZu>=Sol~OV-1+6 z-gAiu3+l>t?xlZccBZ*BsHIN4EfYo>kgKv1h=uh5uTYc!9|(?G;;boJAPH)@X%=w*1V&7gg4SoJAPH))<8af>hWk;Br^RRtaYjMzA$jVWF+k zXPpY!U(pe z2)06U`#i6*HgXnW1Y1)DTSr!1H><3#IEyfXtp|uDm)E_88}CtB7dVSBf~_RM);;fR zHK;6q?3lq3MzA#vv~U*&kMNt=Y25oNs}pAtMzEDkEQ|`WRt&5BPGv=M7GVTi(}{&w zD0Gj1FzcmWO5GU4S%eX6r2tl~hket=Zc|yaIEyfXEgTcVT`DvL4sCT&Y%S(2!U(o- z_$%5{SM& zyWOnV!q2OsBaC1x1GH+o^3PW+Q(6CV7GVTivxp_PufZGE>{nTB@!}7TFoLZIL95zY z`uMY7t1NhvmmFaPTbaa?>*33OPe!RM`pg>m6GpI=MJ%}^ z*TmZ!Uhb&mVF_muMzDoLZ#7-gxbsyiYb|FHMzEDjEbI@lrF`|;q9rP82WJsRur*t- zHFb9RL6vo!vj`*D$|IIsUX_L26I9j>&LWIpD_^ixdH?W-R8}(+c!DF0V9O0!wcq&g zg=glftp1!u7{OKnvE=e{&R(}oWjQ&EFoLZ)f~`xR?tEBfrEwNv1Y2_jTNhVXr>d;Q zoJAPH);xs;f^_#EUwzR@sT=>{EW!x3<|`~LndvzXAwrQ^(e7;W=ThHe0VfavGp`( z5k|1(5o{fLuw9hOdYiKdBiLF&td4kuUze9wO;=evIEyfXtunz@o0`-gRMuh6B8*^b zC9&jwV_H_+A(izDXAwrQ^_XDG9M@yK%KDqL2qV~9MJ&uiOxHb&j`4X{YF@Iz>)?^c@5(%!U(oj3$|Vw7u`r@jpr=F2)3Ri zmYj#TJXIc*mCad%5o|pr*jmzLeVocF+`OJ* zt4RygNfKcMTQ7iCtsA93m-?x!ew;-Z!Pbik3q!?q0NAb!MQ|fIi!g$%|A4P*Yu4F% zD^yknXAwrQ^%Akt(@K)4k2#R9P=`7GVTiYlzhrj_B?^pFOLo zVrwI3tpOkCu{CQcub_sWN5WQlV5`kh`x2E^!dZk7Y`rDe z`l$Qa?ka07XAwrQ^|oNE#q73SRMw}QMHs=>JA$oMFQi{kS;skxFoLaji6!?@NndV! zQDxy*z|av!u=O5j)w&URYeJ#QGPNR-L>R%=`^1uMO>edAXO-25vj`*D`arOC+Ptnx zW!X84FoLc1f-PgCg0(7Z8fOtku=Sx}>zjr>o={m2aTZ|&TN?yhmRobDsjR0ti!g$% zj|5v&M%6p4vOeT2!U(oLR&0SFRUWwbVPmB&f6iHi5o~=T*gEl7&p%YwMb09OU~40> zg5hX@-|Syjl#ftsHE0bgaD)+TZ33-YH$FZVXH{99IEyfXt<4GxLoNC4*QmCNtx(P) zj9_bv!ouEWU&r#tRn{oZB8*^bE3xD;TX?I#|5jNkoJAPH);7V`l5L4=Rn{WTB8*^b zJF&1KVGKVo%srv9p5ZLQ2)1?zwx(U!FhXU0$XSFDY<)^BxqW4iuHRl|9pEg&2)1?# zwgL)AKB2OH;w-`lw#o%t!8f1jrLt-`i!g$%U4pIKhRHvutafd{6C7a#Tf0H4Ucb71 zv~}uGrEY|A7GVTi6$%S;{*d+8DJsj!S%eX6?ID(2UZ1y_byHW!U(pi1Y76Qat5lbwVXv5!PY)v$#nx(iGNaATRDp` zg0206t)rit>Zzwv<-@(PW7c#g^nhhBiK4fEIAKP9q#?5%F5s@!U(p$6l@Lr zH0hkmdX%#WBiQ$+R9U}q7GVTiM~Ee->+`~SFWMDb0qwvO9AN}oM?tHm zOM1BDYbvW9XAwrQ^$oFPTPfXRmO2z${Wyy-f~{`_Ta%8@`%`7vIg2oYtz&|%lcD>% zMJu+Zau#6(TgL@kf8O_MjLMqLS%eX6ogkK6=R1D2Jy2yWjBc$t`VC&rc)qPaf5Y8fuVCzT07Ot}mRBSmoi!g$%p9EX`rhgZq zvZittVFX)06RRT}4e)Dqan8fximln4MHs=>FM_T3(MNw$SxY&KFoLb~#FFcL;DnDl zsH~?si!g$%YQa`3+nB>D>ut^=j9}{mvE=f?JZz_=>r>7mj9}}cU~7V7$@41fIA;+? zuysjiD?+jLJ7*C_u=T58Ys$U>JylkN4&VunFoLbipfwug^78y{88A$-)rqqRBiQMzHmdU@Ld%vX@lW9L^$)VC!FE$$7XuCgu7)N*+GR zS%eX6)d;qJo;Puc%6gBp2qW0SE|=Yh1-kUl$KOwhRBY|#EW!x348)S#7v8&3S>JOO zVFX+FK9JF120Pf6^S}MKKxJL$EW!x3;9WgUdChaa{)@_Lau);yjxd5Pf5BG9DQT(7 z>cLrr5o`qrw#=iZ1*ohj&LWIps~)lBy3w|a>3NkkiL(eJ*s3qss;mqfud-%y7GVTi zfl9hSkpBHp>NP|uuSYqHFoLZHf~{SLD_g6qmpO|tf~|(c!gQfqv&`BnM6vY|XAwrQ z)kv^a`uU<{mGwDi5k|1pm{@XK-o2#B0hRS5XAwrQ)kLsWo^0=^vi{{P!U(pSD(S*{ znAW4uF_qP}6D5|uXeo}_OoFY;r=NR9WrcDUVI+D>D?dMzg#^zJlHlSPJYky2I!&se z(e6_bMAm!qAOkk^hAAuy1yGANvaJK0g&2|5f>;AMt90LZf0b3QGgBi*WVIyLIL?|pwfH`jW#ufyh^$t`8o^m- z`aW~N%38=-h!I)%_My?xgR^#SN_kpkZQ?A%h^#im>dsjMMh(*B;Z@E;jL2$BtUjFO z?>hR0YAeLd)QAyT?TFQjv+nzM+G>?Gld}*bvf2x*Py6Yd8xrOm~cH&t0%ScX`J zNKx52*=d%ju&5|%4+VJpDJ=;hc?>{m*kcekElf(!OG}fcr={oQr6s}UdhkC>!WS`; za9^0rG}vNKib_WXGe_^5Xo4YVOhSCTJ!YJgl$4Q`o0Jbb{Bd#OSZhpXPJWtwPFl8G zqsxOGX1ta5?1HTLH22(`yax%Muj1)^Y+5G7S5?AZifL}IfXC`I6O%LCu{n8h_!b5v zhliYkuXD1jqnA!J=gFz5Ni&nPQ!~>fjh40#O!MK9o(i$hBIklZ?RjoaW~TOhZt{a^ z1-V*{oa-8MxC>#nh|0)L&q;!OOVv{Ib5b4@%`;6B>^BM9QR<;dusxzy%PWpn1?kDj z6_SvgpPw-!oAs`=xnxFqIy=MND&6e8ofyng`8+=@&z+PFTk>dOEDyDs6xiTVfTY3} zj(Iur8HU~wqT->j=@d#wl~Q=STHa9~@L)h*<_~4T-NzsYr}#5`>n8 z^_0|kv{h$XUebfGCnr;7ilfhE3o*x-MP>gP-npib2BniQJ6S%}Bv+25Yw*SE&BHoM3xUH{XGjv2r16MNK+1 zQh2$W7i)6r+&riv>@*)X1I}^Nf5s zigM9oo5GD^RWcBu9q?+GJ0maO23&B)`yGC7I%N@a$)CRK^1_Nv1m$!^#Mccz?n?44Nl zr1?}+=L{Y8yrj9w*?18mF!W8(+axKQypj?!RHuV77c!mo^}Jsv7Sm)U&r8CVrim7> zHLAZm$DQn>S`nZCDjj?MQWGfEMIK`o3|>^^Ze9aK>k!S9g1kKFcOW3B+F9H__V>J( zO;66q7CE0fxIaxSBlX0n-%gPxr+&L*ZnTmqNLI$%l44TIXIwWWb zGoVp1uhg6*44t2`MndC7%wr{R9wjVZMMv>aPdP;LZl=r(T>e;bazngSc^uMUfTk@~ z$a-0klr&97`&=X`2 zJw?8B=sAjyk5Wc7EkMh&_GOkcc8ebpTs`1rFn0Lzh z*vcNYQRFFSZA`_#_5fg>RXZC!eNfqC)d!7x=qY?QtEb2woDzd05n&w6DLy>36h2Va zf@Kves?cBxK~~BYSWq%#m@lN4k|D!=A-$CPNb(W9KB}?@3p_*{xa=iYN=>w7FUA^F zJIkk+HhRMBK^r~MLrc+5FSI-#zFM+oC3*>^C3*>^C3?x7hbDTWEnby&hrS(rR=uwKs+ z6B?}dVfDe6595T@%JJpHIN`N&eEBd=M6DcOK0E_h6_Do?JoR2m7JNvsmzt$pr)KC- z-)Nnhp~HNmb!r}Im}&W()AH!o>MbXvR)CzOS^+GCLBX{GSP1_Gz?0y0Z-K|$Tg$<; zj3%!wq{_Xpx0Zvo6MG)4pps$U6MGq})5`?S#9zj0RdVKnF=!)f9f0FPf(0c*hKfp- zab8M>4D*HbQmTlHj0Q6~UtEkl4YjhrKlszu3- zhUs`r20 zYwd>nuq*0>M0l;n2+8*L6HCF{mqke~4{u*FQ@ni{SI!=9UmjuTDcCZUybQ!6tJe!D zRF{Q>#A(!G25UUTT-JCnMg-4ljR#}+@L-I=wK05n2#JtqM=X3+6J(tLgr?^65~S6$ zxX2}?^5R8o5TCE; zW8y8*cH77VS7Mw6Zt1em<3V7s7zkm)3S?9SeIbv9ieJf7sR@=uXMC(Jab&y@soJ>; zHP&v4k9Li)JL9buy{L%kU<~FfQA5~0EtTiAIAa|)TU@l=B7aaXDuTYK z7ZpLvm9QKf6+t%~A>vwIVvH>|VPv9J&%>n@{KTG?mz3npN}iDxot&Qrclg!SUAC?} zaPZ)e5VPtA4UUK$G$<^5aHy(72{vaNJa{nt9}*EBMqbkzrY;*NZT#ZM^a}&w31@f~ z1D*DJHh2zRQg{=TG_GL~;M8y0piepcQoL{$DJWX|H37sW!LM6W_=G9^(BX4H=AguB z-Z*@=Wes5VavVm_7cMXW_Q?axw=Dnw4jv2giNhzxo@<2&)%glAKw;2v&`XSfHSBw3_Hi+6f^gMKT=AP$|c_{D?%9N-4E zA&8{JPxF-@^g-M(z?9wr7YDf2fH`vq97gQ|$AC!ASNtNeK;aSMNd8kaB4dCZ1yf;C=6fk}Hqhs)3 zn@`;1pdSmEA2|-9%W#^#Qa~l)bF;TN2G7w^eWvRwJI5p9{Na(mApY1N<{#m_!o$b2 z25=0B&%hJA{Yvd$o??y$!gHcL)!k5*zAv}zq)E5t`tF1g*0?y2_wUr0v-@SDVFBWiP?hqcv zFSm~2Ed|^v@9=z#hu-%Uo)-?=;YT`LkZ#=64R9apa26d7hhX2<0f(3SOLfFG=m%hp zvjpkwVmbBD;q>D_Oh<1WP9NR?z`5#xGXZWv9dI}lDy;(!hiR|Z0S7~Dsk{z2tXBu? zfWv(Gp$<44KL+5SUgLa~2aXRq)&Ym(*l=Gs%@gKmY7GpOMtb4!V|*}m8fde}TF1M_ zxt!5MyT*;35Hn_6S5cYZvc+5D>|?vqcUG=Ka38~Oj%2{mp%gQ8%6NF{G=ECu;6agL zQ*1eN;W63d)ch$aa9g$i-2)=S2ZT(SUI34h=1U`DTBiM&l?;LA9IH(Vt!hG ze6lVhr9VD*+dn@)H={p2xRjli**|Ccto}fok~Q1y9snosafIQ`r0K9xCww@pqjcPj z9}r{z<1$k6a`JQ1-R53ndYcn+VRay50Zc#5G4RY*MkaoFzH~}(;6z8!C9}hGywXoP zj|uSHDlT_-wt31OWi$hFcn&aqmBTY7IK)x3$DCB*@WiyG)2hN-^^he=RfT_pgd@HQ_g6Fr={SRrA3I^9 zb)0p)b%J%G!*dD94u@xQTYK0|muCxxVfFm$@GL&x7>s&;aCojdN~cb8dEU7KUY3%f zah?%@j#7JK9Hg$h)6?1E`I?di$@AP|wu@`r^*vS9nK0URc&1LWd5SP?N;Vv1_!QE@ z!L&RWkt~Tcb1L-b(~}A{`vJB zMYsI())K!toHyMWh!KmTh>cGyt}zvdfgA?`#d#_>6goWzlKBd3G0_dBkD*pu(~1Tz!|Z+&OH2-s!l~5oSyd7D!)*$3Ds7iErznN>sWSQ&(JW zD*guQQ`KUuSoP6v6`W%7U8U<0VJ&>5?HN-sepkw?l&YWQNGOJBR0fbSiPkNk#Y}g2 zR$;YJN}~WOO58MrK(&x_$5FIsnxAP!!SLNj;*Yqzr*tq)?8be#m_4N&>-Y$ z=_(DgR{94UFpq4d>oGH`KLwV{^Ke_I=aj>X}&7zvoHk17i ztEUorI)^pM`haz+bxP6$_fM_BRi#?pIPi&upFb_OvA%I3oa1Ye{u1^D!^rmqIO2!VzCn^p}1HiFL^MBCLgc?*@tC5*1xns5iIBw+~3n#(0nz zE*m7qeGMdhW!+zT3nUiu0g%R!?i@(?%DumI5hRul{G1z0$0W!-sJh^b`FM<^Lm)BV z6N+>Lq)Fr(;V(<0L1N)e1&J}z6{!TI8^l-z5{uRIitnq6^f5@|Sqwl5q8zFMi7_sL zbU*kSr7Iv!A?Z3uQ%Sl7(gP&@4H7PeLNs9|k?H&u$>CXoosY9r+6@1s3U(pf+6!d3 z43~{O&f5kwl}4L8pq4I$j?yCRE7-;L{t8?XJpn&|DQ@&QtQ7zMy8EFyg2Rax{>b6z z&OqOHX-N`#1d`Mij*Uo)gd>hV4Uz+nIAQ>)=+DOPdMtC&W2*cErN-AxL56EFre?N4 zKaVvqrqmYLFs!@+#sIw>DYoE5m*o2miDTM0pqMz)g|1*|4q0!-g1<>gM(<$1=Mwn69f+Jm?tEPyWne1mwo#FCRVJ#fqQ7X9UD6ZLpWp3SyHNs}H9da4Jb{W5Q6rXhaJBxPv z#g#=jw1@qQBZHxEolU0;S{*Jxd*K4q*sNZFZaB-L8##=X80B7$dmuF?s2^AbtFZ+- zJo{Xw+k;EsoHaR@=N4X|8d%Flbf~Tbgv$fOu)|KzmsB{;vIK**vObkp8C>;QiIv3$ zM$5%zrEhZ40L%f1;pjo-2Lq#YJb^MKmbEOdk>`pd<&Xm|O_4Z|bJXlD9NvpE@1UdT zpT_QXF3(==pyJa&jQF2$fROx$N{wAeg_eQGXlNTl{UExQ=u+FzhFYGr%-+tCvd>Z0 z&jdN|p5Q3j>xUQE#gHG+VA^pk#E@df%)o2Fkb0;*4nTUwLD@pni79M6un-1{CTqz; zlfhB6%g zQGBzYIc2}o^Q{~;&lM;MR#Z;UO00m&30AkTlg`qYRIR5HPEqgjutIitT)_@U*yj|! zt87YeqSJG~#p!v_;q;u7ufMd(6TWNiFZF~x_#S@#63*Yxkc1ZkrW**DW28#}X);Nv zAh9<2JVcq)X(xO7Y#M z_&Yux*5!} zA-2O~@*HDD1$Co}E)|-|BwiiZpaA;?m0lc!2lQt z?so3F0K-um3{2r{U*UcjksdZ}JY+T5zOq7>Q_`{>bqI$GKBxFXs_?o29o>FDWOjH; zX#ibQUO3zU?GH!HbMA`s>{CX|p54$rhp~$VbiR=lO10ikb!jtXD_*4|D;8Eb`4{t9rU|`XX2>e7Mx4b_8h}0))_## zpoP!Go)>!IIL~hPV3+40blH^2eIQ$F8}rvxVvjqG_qbm<%SIX;DW@DpKB{*>4+s5e zK-r`Y7Z{&`|VFuGiI03=WQB+~Xrau!qo?J&+<1mV@!#E{) zCU#sfvz2wOGJlxKf1`8|$CSagtlCCp<2lHxA9ew`N=@YJ89b*wkP)oxu%WT0jbmii z0Ea44ydq5niB;E`AhFWU1&NjR!yvILT&hTxu~-Gh(Hch4r4WZ_HY^O>h6M~1;le(ARHi1i}r-jBm$-o zQ}3^UnNZu{E5k!f#rRRVs%01${HfFAsnD^131z`@*0a1VG)gEdcL&F?V-L&SHbBUK zTNF?)K2LLFrg2m)zXdvUj?$MA1gkAUu9U~FgB3^F(%?c+xrW5Ssz4P^hTsBhc9~-1 zpwD0dVBK@yRdj2#sW=L*L%c!BzSVs}=klzeU_c3L3I%ecSd5@sm#PB*1qQZa5%YvF z%Rq7Twu3Q#YM|IUJkMaH2`LATbjTqX3#joj6~Fs0M5$;|kYp-;1x3#YzT(0rg8^u~ z1U!bXG8KOSCoF?$)a029CHgcCFCZIAz|*>gsvug0UD8L{YOWON3cI&*36= z(K4D=v;#|~jmvNn90`0=aUdyd!Lx@h!)dUo_>X^TY9glu=b4Is1*!O?srUl?_ZjU& z;4vH)P4*x_Ug2XVt(El*)gOYs2;%b>{QRXS;K(jdZ-ewN={CTT)$lzaSxJXm6tS6L z2apW#^Ow58k#VE&oOCutcRxrL;ueDxP11irx`(7d=o49ZJwRf($3epK^Ov3jiG_?8 zhaeo}w&gu5G$|_-KsEHM*pi&Ej19=2=8h~a`EVXXI_eSFB_X3N_5g4pn1YprU6k0Wj=Y%Tf@=hzmV2c zM3;=CejfYt&mAd$#g&B*b(Y18D?5Q@^Ey;N3V~{uapb<b}O%ODm}lfqO}-JhYu^gtmk*ZBq{{1BXEtS&Jt(O ztmEGW(lPk?OFzMJ5=lKFqnU(@XtAWjO91QcCxFBnLpn&TyU$T1EXuYx*Q08QP22+A zJzs`|dI?Llusn>tm3BcAy2gTJtc?z02%W;hV29trDAOhg$+XcGY=srcW=r=MG=Vw@ zH7^k>T@v*Ey5-3)d0VH9q$!XFKL`@VS{sg4ER@8RaKr(Gzl2i(mPASpj#JD$P4nC0 z^u^)T!$BIaLSKu0AeqCyzQE>{AikPj1PL-O?8?{ppnJ0vw8HYY4y6^ofOeoaXiczOhSg6bO!hwc=K_MrRL#{q~>Fqo@t!hXc~A(ui=3^tf7p} zBxEljodG5r0pU<8;KtIC9Y(-E#$XaM3Q1>xUfVw!L~xkHvU7mI7)(OOGSbz?a4HNY zAp?gmM#*5RCz(>~OC~5YQ)nY9vpDdP-6#;4EhZroFH1(LUH67k>v1il*5S>i)=xA) z6ZBQnaydsZUTxtwfsk;Jy0e6%NOz@Jm{{SBR4<+-sS8|r08O0M$$-N}W!WWwz!*$I#zxW^LhDPRKh~2P zOs6)I$l4eTYBlA7&4#g=gzW8%O|_#D)Q*OdX$-3!kAsiwMuWhZOhV>v(iw)-mxf?J zFumRx|6JoVxozUJf3h1xNGt~?A$uR`v~6W1Xk>@&hS_5hG7gf?U<$+-UTJWK_Xa$r zZ}`bvwzSOHxX8@v-4T-TJ}?XkGBe<<8ne@8hAlT{xM!NPGV-&MVSl8w)S>44yJr?m zmB!;sZsrsQ%t$r&?4I8flxca{$ysUUjC`{@C&!$boHrv)W+cMPio1=|M%Yq#rFxD(lL(Sb6q?)JCcc2N>VoS(5E z&73wb1vYMhEjsMr%vNwCtj>7YStD;wTAo?mQwR}xc{zFJ?x|+ncn!m+IHFmzyhRb- zCWmj(gXd5)ZC3-im^xKbpX3)q91Hi|)6CfrfA*?Js(C)_GB)StJAX}ZoT~bvh5gZ# zIcxeAEVn%NUOANlfhvo-TB#NGJ0)39Ubeze{fdGcyZr)4iLI_WB2^7f;- zqZ6;LnE3BseGVVHKECkEi6af$>^;8F*0Q+AOAqv4xOZvXgWF$>`uIIx4YPNxdgs&eqp$B?X>QbV+R~!Gq?9CgzmBi8m|&lo*!Qo8*6qEJ zGsHe6*!A_1Q-fOcn7?myblSz`Bl}OB5ScS&%#xlfPvxEK;b$LVeEr+4N%uUJ|4oGP zs_g&uxbUXCyEd%4=izGq-&qOesEU*k{MTe z{r=L8$s5}YZg6OMfcJUImtP%eSh{wGtHqIby51gmX6C1^&xdUOV8^)5gD)LRkM6y+ z>vJFcHn~+q%GR+jl$~4n+sZlPo`|-6(($8+hfnQk{9S?^|8@0--M_sk=fIEO?rP}% zz3JPz-wu4eUz6`ot=pHjV)TG-?rmPaFSEun&!_j^7oULD-H_u!(x(>qLfch)1< zJUveQ^4GYZ3fm0)aMz-+vx7XTy*Fh}7?D~$?$?Lq^n5gD$+@ZhSNweOo(|K0POqFB z-BhaF*SoVJB)r2Bs$&JM`T2XlKupHEW)_D{b?%Yte`2J@>=xr+;1W z{>Vnl7Y+H(!97*?esWdrS1kD6;DC(O<8FTgF1s2fOFHZ`I3OfsmBCQRG}&+3 z2Fi5hzxJtr?6i!Aa>Y*;v`@Ckrc4lf%DJSxu1wEb=&>D{D7C!XkT0O=DK1KtMXz;#Z>7#G( z64b^yh%oZ?w#ELNke%M?YDSo7Ji_n&5_bnZra58cF>Z&u!Y=DEEeL~S7z}58>4%V= z-nLp221g8-lc{@^3dm@`HL8?C{}r|9nQ^xNDW)j=&AL~^%$(zM#JN9#5O!L^!=R-11FlfkePhh*Rat?l4MN*JJo2G z>ogcTb295iS)qi3v1Crhl*l*R)hLpKwhOX|iUs9rrL5O%=>uj%lT6zU3OVOwS9NthB6@-1!&^I?Q>{;BKzm zp(fZBKWGs22KdMW_Gw1c3_-wp_@SmAXk65>nIUvp6CWA^eqm7cR1JdOO?GTzv#l3UXD_~ITX!Vgb{3Y2CQnU zdHDB>RTe&cgN`tQEi-7vFRH5F5S_tUgb{3YAr@T`K*BHjsH{ggi!g$%uEfHA5?zm$ zu4}E8@_L%H2qW0)23R#+bE@kPP+99Zi!g$%U}DMT)x__gQ_U4y^kg6S6GpJrU9g2; zds114xGlm6w(vTy<{^GbrIBLmJZBL`u+>wrb^5C|!&TN_oJAPHRxh0`^&5vxSO+H& zMzDofe>D%$mdfhHS%eX6^&u8sXVJa6IN?|I+l>P_i!g$%zJOJ24gdDp4JymVS%eX6 z^&^%Uj?h6!e_#E4hDpi8$(%(P!4{71R9nktoNc4BvN?+|f~^6>qU$wCm*&5 z7GVTiI0ja2olBY(ud<%yEW!x3u!m!#N`%ZR+xWi9dY`ihBiI@w*t&a!p_9tm!&!t8 zY=tT;5U4+FrsN?$5QmO1f~_#ns_9y_ck_cP>l$YfMz96lJ!fI44_CT0Utw$jy)`<* z2(}_XtJ-?%a><&uN({Sm7GVTicui2-7k*i)g~GCM7GVTicMG$?Yp|R{B2mTT1xAAv(ec zwuXULwUzU6pK~hf6V4)xU~4$Bau#6( zTe!-umKXNDL5eMW@DUwh1Y1#{Rc&=YHFdMf3c>*bIKl|FETCmyVn%=I!um6<6k9zx z%K{$a*D|cAQND22wPwd(D$B}QgaI6^U2+Y|tYe;`)8q*n?YrO6z*6UWZ|seSVFK^o zrAIgmG2&b=hFI7as!nD-%~^;MSvJrZ4c$0pLFW$7s_;8V_>q%8dRTY5hJo(pkd!CLqzDI*}tf)ah!!1k%jYXqXEaL=$1@+xlmiItkax@7?G7oEIH@{vw~)T=AE%|6!IE5xkw@RJ23caS2k=Ttt>V(QQn=2^f13F zVBZsvH--t1O&k%Q5R(vX!F6j3+lhv)JLe@KhiP!vQvH7D>;^!RX1{*=LVhg1@IoHJ78@2q5J=O)9q8;Bg{wjsMh zfZR=@`w=_>1=I6W@-n9LV&IJYg6Rq&w_rMawPPlOvy@OQ$s*=nl8pEt@4L++ouh0d z#wvocZ!7nPDkAUn!~m#}H%U_Kj);L<7a~Ygk+evyS{o)6j0l9U)CguZC8h;x)jUK^ zfpVl)qXE%kiw45ZIe_nK$4j51yp-A`$W=odIYp=J8HE|BXqEk<1g)}Hl%Qo;*e6QR zY9pYjj@meA)mpe$ZPik|y|gs7LTecstriRwn^$)&SfkZ~#m1l|c=>2aa%0fK6`dBS zX-ZnGR;`5#Elo=hJgCR1;~rh%F|i|Uaq)J$B?bB@WiO_XnE1r_XsaW}qNrkQmJtcj zaW01|#=`EkMnyPnxM3IGZH38x*o@cGN5sMQV~LJY z7Wppj|9~DkYGiC&;s|>@>^zoWjS7Z6u;gnGWJJ6x8t$;hCs^eBzigv1xc`f3#(xoT zA2=!k?(qsfY8VNYQStF{3D%Ji7^DWTVwfBUz=nEF)s0Mvn> zh24jaics5rTB-tsTum71h>ng+uv_TnG|M=MB)>x~XA<6{#(l(Q7bx6lhb6|DXdgMs zX}9p}1$6ybIcU)rLt?ctRjeXTi!C4netE{WOTm5!&!I< z;3_$`w)nw7T>1(y1$=^o>GBm`KhW<5%vFx7Eq<|p3xI`>QGD^Ew)}e#a2bF(!f~~Q zhv_&Em>$hQ09PCCHSik>m{S~ATRNHpZU7uCD1fUiJY1a_2bh%{S6e!!0q$MEG;RR` zxZ1+&4}NCA#N7e+2;hMKb*;D@fZ^kP#x#4!Yf1BK_crxDuu-V0aT9y(V6_YcQn zc@WM=cpb2^YFusM4FudUj;$>`OvmIphL;Ao*>?yJ>*Zs04DT7ht*t|NyXqL;e!v~A zLwLW}F}%M3S05`jxZ3g$)7zb62ndJT%A-HvhSVXviFFJw32+bIA-u*ApVB&p_Y~k> zxkGrE-ko&}uL^Kq*CD*Cbqwz|-~tA)T&}G=FumP4h9PS&kAZ+2R)_E=*D<^_z|Fox zcz8K@td8Nm47hjh5FVDt{yK(t2yoxuAv|1-`m2uNwSYlPXZWG3tvv9~@;!i=%yD>~ zuC0Bf04Apn;gtdAEpMEUJ?E+b^R+k5t3So^xC$6U2ngVmbodCbGhq69)s}ys0B)CecwXZ~f8d|?6`l{=xjNvmJb%&Q^n0P9 z-Saw}ey=fHw7*mb9Olba9S+93n)OV8NQrO(zwL$lKkR`8Ypv4!|Bv^;V&6*qKW~F2 zg$xP}3y*+l&5-2jDXD4cGiGMYdN4C9J12K`UcS3v&fIzP7hsmDIBRqa>=QP^;T$>2 z6&Ih7IC{+3aqwp6q{;Uou2*(OW^d&`zTAcHpW&-Mu3;hY9Zhna?Ao=vIxp zY2iZfDyUEUQNT;a@CFd`l()2qtY`z!iST1vYK8ufut&$+ipM1ci6rV8bYQf6a!kuI)FlJrjU#mfxJ65^UK5 zFI>WFg_*(d8W?Uxk!W)4VsGMf0h5vN^QZemc(1aK#xaJy;B{k1RRslJx)5^-5>K&# zh{)!(M(JfIi??M5Sml;I(Ls(O(Si9v4v$|+prgjmQ4<{qZ?;uzMk9R76^G|U3G7;7 zW!VcaCBs`8I6VJoDiSSM+%l0bE8KCgD)V{(t*bf^(2)mwP6#|$5KYv=ekdp|hqjc7iPuxD_SqMuL z6kA9oZhZrphFLX1T1a+Slxw$hx!dxX;<9*MBapHRUxdXu)c=K844Ri^a9-ft=_bT09d^VR&7$#fCh!v3oKGh zKPyFjHNoh!YJwe-CNtC>hH%3S&o$G=24OYChm!8MxTX-`iyE6gHI@zES@y{Jvf=Yg z8({;G8nzh#ysP;g!#vWda9D5w><=@_0C`v16yF$yYNzZ#MCVZWs-^>kj3w?*PjxVf zZEs~|dt~q$>EU}^L3~Df`S5pi!6yV_SX6$d=+=F6?~-%=S<}X)Fm4gIS`00R>Iz-L zdf1W%|EI4)1UZ8NUPebp&!E9kc1)`r@s)K2t7sJg1EGNEfNIGEA+?79{pmGBe29f@ zZh05!u+L>W2T1q|u|K_HmH}r*+AL-kNp3hkND?-MOp>TqrGA4tNxowQ+xL=&6435l zxbxtC7t2nU=K>V8)l+TvoV7(ZFfDyM0QLxiU6YnVc<^xaMkAChU1x`PHx(}h&q!lI z6IoZC4+_)9Mpn;NtLOIrrkVs{HEHB1i(!L?i+*7>#WiJigRN|l!DO#;mC-ELI&2Sa zfnYNwoC&LeT|1TdVKwR{7qI65s}EMsCDw+aB3Ns!B0ZHVVp<*n^}_KiY&p5K7pB_k zSy7DtoyIRU^pL*IH8rv9FYt%cK=?I*9;Jqbj$6U>VrAjERecTi zo`94Bq$#BNf7fR<$I1v6cx8mm9F0~_&9HxLo?mRH_@Am*(!LilH8j4hE`&4KWCli@ z@6s+DHJ{mFN3cRj1a2DjEc`F}^AXeXU0AoUn(`J$)oxqStuWK_5@_3wXJN+#)-OS| zTLLVocCZI5l&T};Gia!eGJmJF%C;AB9Ci-DU8217{-}59_1M={<15=OBWsuw1d>xwDsqv z`F+Yp)D+!^>c;4$AR7Gd z<1DAmWH71D4@IMT?jKOEexNA;6%86TGMO5inwU&Dx~`MMD?1zA-~iqVKY!^}MfzIt zy#*2*Ej5IWiH(eKryw?33RZN{AY}p8D2)UunH_)???sr9M1T~cT4pgL`yoKe~ZQXxqR_1Nd1j1umx zl|wq*n)ykRra&i#IbxKifs{uQ>~SF#kTesdMI>c{g!68rlnWA$291&%q&Xzb1L+}> z7J{^pq(YG9k+c+~1tgV#G?%0mAk8Of6-ZB!6ci{)WhAu(=`oVpg0z^Vjv$qiWCrO` zl7d0Pe!?jA0tq`3qtp*14@n^)tt2TNq#}|cL0V4IaFCXgWC3XjN%)}WGLjr1m5}5D z>1mRdg7i2^C5p5{kye591o=Lx=$-}X8PdI|NNW_|*AyK-^oi3+cp-ZHSb5vEvUh_6 zf2*n4d<*Uup9fFL(f5pYSJdM2AnYM;;outB0S?=FMqs3zZ1>eI-9a9@%iRw)Xo8I}tu;qrk;1gJF(6GFN5Gt|s-^;|e?dxz zcP}_zeE|gS1Ly640~ncxkG$4YR9C=1&%Usm=g|;Ec0l?nKBR<6VSN};!hn*-lL=^m zqhL}N#kKU7&CS*pywavT#eZ$9;WVe9E}%lW?!9NV?v3 z997nMjA!BJ(_s6;wtt-FA;aY;#^QX;o%33zsU|oC;dwqACktw$8Q}Ci^ z^VmM0W-l(cn;d&Dwy=5*L71le`mrAHzi703_S(ww3^vbY+$=ECy6ab?wdf}U6^+Mr zB$0N_dkoqo3CE%NlCS_;KF?x04~6rh+eTCI)6i@-W2QUG$`WCYmtI*7o%haqi za!Ye9dB4v&=iWPaW=MYT|NZ|y@6mhbxzGJR&vW+ma*hGL+~OKgDPgEUf9T4#EkBfC zO1_*Zw$);hN}IEkJY(=3i;&Fj#QeSK%}Sz&K&!tX~_$WqZT;(>GRp( zV6^saI=mZat1VB$Q4jv-$AHWHU$ZFa{9yhNXs3sMc*w$UPyE80-=-rF_4D!_zxmqR zRvs#>e6$71DjPm2rL_Z)m1Xp9;aQ9?aD0ST{@JU->!u|?VB|m$)AGZh)G@WYt`h_k zy3W6e2Urit^EdB6RUlRL#8d6O`*5!#YB@3UXWoIjP?AjpOR3(9tEgk%L1RJyYvtu9 zMq!IaO!}HpCCSB~d<-b-Vq!z*lH|hcw$5hfSIQg&?V-F|zH!Csyo|xIZ@@A?x$+=D z_TP98D=sE+=kBml(r;EzoXsl;4FXutizIx1-h@ZGQAydFX9llni?$ zQnU-(XpV1Q?fjmlZRMd#v?{C)mr)m0mLYL}VNpGi=Qefd&R zYrVnNlqo^ts#<)Q7V^{t@)XO$_Ebv#2nZ=z=|@BeD;sz*@J7P5Q4(U?)?{m{3+6AX z0?T|VLbm3+a7mK50ZcQ~F%UKHC`<^LDev~cNX0*|D?;1R^)wR21C@sqFN}pE7TmLy zhvZ6(o(d_&<=D&f+GD3#)8={*QLy0*t3Uvby*&3PR5qq16^L8P?7!gG-ChX1t=T&d z1h;p7Gf2m!8t|^I9X#5acD5B|O~cc)vEn~#F>8Z2bW|$=mSSrFK|vg3uvG4*X4ifS zUMfrlm%NmMUyt&q=^v}=Ki?iCQu^EUWaOT%RD5g=aIf(QGHgEt0wde&75yB)-4KsO zs6Wj+QRJnH4h&r*dD7*I7UqHhlD!6D>s!iqBNJD`U-1Qfdt-}r+KoGcR_hj8V=)xl zo#6baEic+d{XVf%F3#G(JW)ki5R5*6%U2@vVMrdnj7gQFuQV0+QH**Y_s;Ast*)9G z4_ihHiZ<82kG<^yY6yG#I4DYPjEYoVJygH_+1oBiQ*I*)6#8_)-BNje=(TWOcYx5x z#M^g3g)n_vK~Y`oEBWGQ9HZP9)kceL8nIwx!?t{6Tp7hpG_#Y8dn~somRD(M)qvqeqsakMqfyux5krGUBLZ^(V(~}6 z`+ov5D~v4GmJmfgs_! z@E>;1z@6LR6iIAhJVTH{3K9~OPZT#11ef3xN$g}i1NJ{LE#|oC{D<8qvA5(aPLaee z#&h2?un)M3n+$^6;S@>jV?0AGgH%iSjG8FLWrE-moFa+CjK^YF_$(b9#Zjtq2~Ls3 z_l#!<#>S4XHqL3p;uy!*DI)lt!VnZ5PLb4)jK{-MM+$h#F9!_WhM3t5K~kI|sWXh{ zZR<%I=PPam2<}Txk>okXbKSc0r~=3DNcNU&af&1^GM=GzEvfay=9hy{H9g$8q+w2j z^!h10uOe>|OgO4(xJ^#ct80uGjDdG+!vLRv%l@bQO0cD&*lv^#mTCmVScbxljqK@{ z-2J$?K2DLo+l<#H#7_#zZfOYmwx5sxc6DZVvi2ygVb`v3=DKDVg8@2!IS&>^ZMjzil z`0+ar_jh*wb3<@m?jLiNEdaZ{cCl8|zkVEX&cAuR$0jzMxn|I&{qwuFzIA-Yr)v)n z`TIzt*w^2WUNrahp8encv(>lVewZ|S&e>WS4ck3^<=Jz8Jiol3vW20tCE@t+#Q1n) zcDb_U;pj6vOt}+p|M=>f8kg^E`X=w~i_*z1`7!l=?KgH`J=2S;rv9D!N5T5~g_{~4 zJa;^G|ALnLqfRDvh)gWM^z^Kf*K<~t&KYJ3I^X{HsKpJht@v&Dim6Apb)8u+H&fBC zgm2u>i!cA$*|256rng_tcG&(_wievq=a)}D`Xu;)`8!i`ex2}oROrTQm$EjeREi8G z#rX)qenaVI^aKDdAhZFfBl875p{vcC=Z(i1~1m(hU0Fg?@G9Q)N1)0knX1*eqj z+j`SpPfQbrp*A`JRK+9LKk~#hWf*E#$ZGr2P;^V&{Y>pAFFO>j#2*4%aG$y6v0#Rw zlqF~Be{m1jLr)Xw23JE0VIksc5}e01@fm+TXPxqhU$TooQeb!5z)jKfmEhE5oIL(n zE#n2Lm}3G%KU~jm9-ONxN72k8fpHa1J%a*LIJAt-ox-6pmY&nwgG2L=VCnY z4gRDw3l0l#WAQqzxcd&5=NPAT(iZs8g(?pNYuqs`c*C@N^35 zVB)aND7!}k6zIz7Md`KARjL2hkUqB#~~knrsI$gkLWn$!wMaTeCUVHkLttTh#sl6E2n!jK(w~1#u!DR zG*RR_UJA&Evs^jdBjBM!I!+Vhav-vk~5t+uJhu zAwRTf+&zR`K&}}s{q|n;X{olo*NW}0!;^~Cav{Yqx~;^}#6rr|mbR(ot3rxlblaA- z)YYFgjb*x8*(rAsyY)Yn`?c-d-WaFgjbURVhTVbnWzeahlX|A;mB{ zTOmveiOU>qpQmj?s%%dgf_M5jY(pG%i?mmdMn0-Z8OS^w!{}_a1y|ep?Znc}+1f^v zn59yQ+Z3E4L!WP5mY_-$b3Z8fT z15GMbNHL7gR(qW-YX{pW_0$|SQ%Et4&Q=GVtzqV*6`GVoNHL7gR!5z!X$xiy(KgUj zHkxD@ovltfTNidL!g`jH=RXv-7)EESvnmC`ZOh0ng%rc+Y=x;(1o>oG-A3A$ktc){ z!{}^vVNyzZeN~YEqP8I;`|1nt8AfM|`t4diTskjrq9#=n^&B~d(b?(>u9gp1emL!A zZ6nu~LW*H@wz@GXB_D2ITX9&EqSK?vF^tX@)m~az{^6sDqyRPMtwM@nbhfB=*TQw~ z{QGA#sfj|0VRW{r1<-8W_tCZowT(gN2`Prr*`iiLvqf9zYEsLE6vOCjQPr(&h)>(U zYMVd4E~FSnXNy`J%~oGWj$M-~6;ceNvqi0qmR_{IvbG`PPeO`ebhfA^(QMUNc&v^l zrR=WHFgjb*8fzQI^?$M;Puoy9R1_J8(b=LFTeJ20j=BdmDQeBgF^tX@8@(E+)j)?y z3VeCqFWSbS!-Nzc;dXWT(^gt9(QG9Yu6#w4nj)kaMrW%plj1FuByAhe^leS*Q6a@J zx^VT=+3Gj-1ose)jJ6n$!j%#V|Ts19Y~AzH%W`liDk!7)EC+ zj!7xu+GKD4t0r|uNHL7gmRVJ07)(ji=nwv~d zKYJbwj?tivdKm<_aOjvZdtPR4+T^KIrrPo(drpq_FkqH_#*DZD*oSJsfXRGrBrR)p zF3x4jii?Yhi;)K8*>dq0zi|T+%vC|s(q_z_lrbYM&o+7L>@=Zdc8+c8>{)pjcu$>~ zla`j2F)7!UHg)#Iv@H9qNrIb|W49@Enh?j_@66e=(&j1?HK1k*l`|xjod%jICf`k( znWH_~X3yX|I!?`F;pGpLADWd$oA7B*S-F{FuSa@^X@*(ayBwR?A(CFvUXN_UHhP#V zrjKYZwzQeLhb-Nb;(ZQOf*|ony_UIpNj2mG>n59_Gc#9tRMIYC_6%&iHqw?$TPrF| zOWtsM#*C?1Q!{gi&gKa99c{hVU40TsFJ;U?l2WYj$(KCa?A*+W_N**S#QcxA24^_>%`a#WON}O_YYEjes!iBBVt>itO zH&mt$s^(K2R^tk=l3{hZScrIk=O*Yar@P5}g}ABVg~ClxFx{X^iE#s~Y`!gLWT@hO z^#xB4FE6-6R8_Q+uE-fM|B_U-luxiItHix|NIS`4}3eZ?&Ew)i5g&U`~QuiQLU@6%)@CU z3s;rh5qLLFU>FcLZ+1IE-}}IQN267^09@X1wZUf-&IA&U;oSDIIShRX7{fNAQ6gMN zTyauLoa=Hg@u`3HI*kck9NTBdO&`VIyVb;Ps0NPgeo_rwec*O@;Nm>OK^^V`9yrf^ zb_n-%HEmRn83Bg~z(gl<90l8(zM|zR zz`YJ!<`67^Te+^P!g~m>6M<=z%yCuagCls|5t!QoSCzgT;CdnP-lPPCt14bz#Jdf^ zScfrKmGN8(1=D~D8_sdm-c=PZ-vQH~IuvkKg(DU3Mga4Uz*UtVdB7b3CUGQbt2!L3 z@opF}zX)7a`Y7FMkHYdfE^<}*?>OEq1195s24hooRfTsIF#iZ#Rr)qVP2gzcKV0Pe zae3310)CS*_!|yfvv;&wJig389>Z>()HwKss_rSFQuJ%|g zr{E%2mH!svT`yoh5xA=C_5ki1fgye5yu}MmO4ob3`aRTbV>@NTrgFd%N;^c@5L zZ{QA41p-%9ehG!4zkvy!z;O-n<4xZx@Q(sBEsf)0O@*FYBc%2>$EM z?i3hm3EYwlj;Si1Q3Xk_0&_v&Am%k3bc*N=U>=yn^;H$m^k?sw9+aGu{~PxVUcUlN zugw3($w+{~z&u3-6fOvtx9~m${^Dua0~Hs!s=`6}xds~R7pTF8s|vRo@7@3=W(I?4 z<=kzbPwGcZ7Z{F|s@&&uK5$C~mePauJKgkA`G2FD`rZd_>pk=}g1)1`RJh|@7Jta! zb#T?1i4RL~k*mso6y7Lc;@xpx^ko1u(;ep}yiS2(hH+!@;zi#o;9j|hJ__$=zZvG>E!Lu+4kBgidFJANw0cMOl&P^Z1pBU0^i={=dp3o_B^+-0C?9kZ7zV_xs`TgyoVgnM(yFO%I&kxRSig`}fdC z>9N0>`c44%`#tngdeq24p20=#zw%3OVB+0zZs`#S9T~vPamRT{-zR~2!5!yC-&TQP z9>lGx^xX^GclXdo;k^n>%{g2f)u&bIs}D>|fm7qf&40A$8Vk%Acbu2-+JRZ*j&su& z2z{>r^PxM=i@pQE9CydL>7(%85EzimRTbXax!5%l7rCm!OXaPnz%U?gRp~PWmwXR> z6yE98)HffvrPa{)Mm6<)0$k}m^igA=mqhd%P()78}X25=kip^y4MhpMUXci^txLm#C_eH(5ruB!NJ30x8aygdX=p*zm4yixqU2Fyq9I4}CX2IePsoELp}1V#yRRpG5|NBPA?uBz}- zf32s$Fd%MK>FWoasc|kGgZw z4&owLRs2!<_68=&9p^<~CNOi{ac=2L<@ZT}A-m+NN{@Ge`}7|AsC;}^O?{_0trx{(I=7{G3-!eGcHBtcJe#tEulZ;P&1_AJqrH zS5x05;OFd$s?uW^aO3WwkLnkGyo92yYJE>b*SdS? zBmaFaFp9>i{C5<%U+$rg($_Fw(ZqkN(pMk2mI7N<{89ZETTOjQz>U0zKB`~l08{9W z^U}V(2F!=a>scI?{;9y-EnU5NBVvR=9W9oi@v6qB)^X)%HgVtKS~cXFvHz(Ui8fd zX1+Vl&3~ltIbhy)$9d6L4$L?1I5&NizE=bWBy&}jk6Xaic$8zR3NMx4`+$jc$9eJJ zSYR^Uac=&j@H&85<&N{BZzC|Dx#QgQk^fEz3=c`w`S~hvmG{s`{%c8#7A~%;_zMRv zMqsOozZTFl2ADi|oR{#f1m-1ooLhLwf7^lC?~e1L?>sPnyW`ySQGRJyfSZe}D!k1L zumvqHa#e+w>eIvmLTIikeZvbR=|NoNRDEvW@zDIz`~pH~E-o<8<9iyCUr?Z7h+=l# z^wkA_VFA6>TwI{%cLk*Hi2@BnlsA1?K9`;>ptqW<3b(pI!w}^S*9!dS3h1roy!nsf z`O^XoLzFjMWAMug=&k0w;V54nE6^}RdBX*Rf3ASuYR(&u>RrPk4MUVSTy5|hR}&Xf z4IHggg?ZpSzXzdw5blBV%m=lA>r)L}C~)!Bz%>JIN;Pnl4;EDeNAdhhHE;pIeN+t` z<%7>Wa48<=wZ)<0IN*k(j{xy$WjCBfX1?D#%4!+dr)~1c(eWcjwbe6+SrdkulM_d_ z4Z&)kbOqPPxaR&ZpVu~ZX6FC#VQq9GhCl6VhYbOLuoQ1yi*U%!Bph5eCQuGLEEk@z zo3Q!vU4B>%&V#`*MzKH0rlcS6%GOXW9uq_x-5L2VuuQVJPLNC|j?w8hMZ>WD9SIGF z-Yy1Oo|c{F{4&d;QnF-qmRg(^e~Z%$W2JK85xc)!UV;NIaKK9JVOTkgZGsDr*rKq@ zskK&+d6|E5ahzev-u(KON;A$OD1HiQKs#aou%xE7Hn;(9M&e& zQE2AT7U!Z3WSQ?t8Ff9G&h+^Kd!WWFS`WU-(F(q_I9HPQWXElJZd=)L$H%nz8lJPt z4Rr%#N4XC+P4ux8eZ(;pc)a6lT6_u!i*preu{a%ML=MB5RyU2N#ryCu$h3KNvn|9e z9%!%>IS2<`z6jdtAjWr8_)?Hc&)@_!_S#ze2t7ga368*9{wBHh*A|>*RC=xf?f)9F z%)p=OI8F`V471?)nH^^aXk4Foz$2HLjR=9S#o<^BPxuPo!teBGiD9-)i|-;GDjLez zRI{F3oOJj69=ybpEhv#T_5GBd5bnIj;F$_pXn4|{e+93y%FRCg`e~Zk``9l`OQ<>L z@#15z3%`EcY%6g}fAgn^;1N`MCQz>Zy{ro$f6@i8l6e$1NVz4JMY*ksT>6I}!VGPV zB9{&Kv2YZ{v=Uy~$&RiHq?7lMRoP~k3vfWogt8DQ3dcpc)RHe3?p^51a#H19dCTbg zxsz|4=YAQ0TrY2FzHfTR57+JRvljb4O_hPASgs_<*S9s4rPw!xWk(!hMkZ;abJ{;$ zIfN)g6uiW!6ISOif9wQ$*^2UKb>6l*Pn(?;$+7!Pj$O!?;_M%`2QE;fVuH4Viyeh` z?n`i9g;$qh({#D?rmy3)3AtuTXS|dgr%Z?pevHqugwWyi(1~7{oqO;+B5c2D$xC<) z+i$bR?l%=K1r3Y2HR6_Bw})AZ%|4dcFXq<9lWEBSn8P6#1vicMN$@~IOz^;h9UV!T zuYJUJYP)b++VB8)rXtx=S*oh(rB`zkz=|$RL6D-rXm9SWF#yU^`faDKOu>Q{!vbtm zWT#0s?w1|6tn-H0$I6H-s;Df+gRV0kt#Gaig{ptot z%v7@TswMX4c|+KFf{0Ix^Q&{vBFToP5wQ$ks?@t~Dz zyrP+Se1T^3IP?zs0dIAjEV+Dm4bmCxP-9+>M^QlDI3Ap0#fCHmY%yy`Z;Iyy6@N*?H_7D0G)j*gEk8 zL1T}hJ6neSooi2;j#Xp*WZtpH;UV?h5bQ1bD-6&OD$nBL$G>vQeUoY&n@mT@Qs={Y zCF%m52!~c?kMk$)Asoa4D{W*aj-OQe?8k^zLoV{Gs0F`^vpx$?Y-tWtro=B{yJOk} zoG3-T3EIommu1#kjG}DT4%Mo9Jh3e_Pz)#d;fH9W`7tinlUf*Xkc)Fzs_@CMbYaRl zEQgNfo2NZz<0(gZ+gdJuatV2b4h=EYPx6mCV%|cBxPcDB)e%=TE*V!UE(j;(a~nmi zS@agMi3Yjo(`8VDpB41O&bBCDx&?~xAAMOGrcey?O~+e+`U{t@6sA%=LGi#Qs+1N1 zPlDH#MGDIu9wQGn$ST}x8>{RTURhSqH(0V`UwTq3MO9jy*X80awO7c_Cg?HHSOz=b zqY^-#DCp}0q#S!J*Caa+;BXKYKpZaGu@aeMcc7y(Aa@TP9?H%Xoq=OJ5WYAW=WxiZ zdoiI5naGIoQo?TkisO+mXU65rih6)IPwV=p$lr-kXPtx5TmGYPuW3m-Qk)(1@`*w` zsSuB&kkWwo}wGk2=fFpYo+hZ@o1eJSAx_Bj=fxY{Hu?(`=fF!r&++S}qDQ zZ=w3tT9l6d-G2PwfaG+fbzDf6>HD|{5q4Wk*?CY=b!at2}N%e0GJHL&19z^8E9aQEwR;QkwLbdq|SNW z8k6O3tI4<(^U;g-r-AMO**OqIiLD7TfedP|tqumvh=s4gwO7cof7zRpZVbw4W(*@u zo)fs9D7olS9H7Z#vM4D+$!Q8_UL48>LYS6co)m;A!Vus`*_jw;b>;^ao-h@LBNdf1 zMsS*fX~{gq6FUQ>9^Py%!IKi-Jn3#AwJpw8a`Cby&_*Tn2vR9fDW7p6c#6OkhbskF zI<6d+NODmtx%@Gu^d%I%SpWsrqBocEA1b2OqPdtF7!*YD;U^d61XlQ3islC5Tm$?d zD;{KulAQ|!oyRC24W_}r^AO`A!_9`@tj=5n?%`;wb0Ut~&BXy!)ADJ&x?}>KTPZR? z2ichxCyr>5V@vG~Wap3&9!@%?C_bd3CURjV%|#R?b;N~v4T{Bu6q_NqWL)`j(bBc> zG=A3eA0@vOCAsF0qNN4&8s|7PMlT(rYrX^H7 zS(s!ekMzZqd1=tSpENo56sLuW_iEVl2;v+OqDIFt$IWK8_Yg~k7QCu>Rdzm*j|d52 zkum%qE#k;$OE9pnwAaF!sR_}ctx)aY$YPQ16kv+$yJQ;qh+4P??5G2b*Tu0z&ZLlp zWf_MA9PspSej#GCX zdvGS~ywswk7P7POSr+VJ>4<7hJ}6oaL}ohk5G5BY9!MB)N^B#bG)HzmC>j+2b3B0H zl%TbC4$B5Go67^3O~CtHHG)%Oug~fmHGaz~a4zaDs(w>wV3$hOZ#t`a)65gh51PlP zl~M2OCN5vrZwf^+`$~)PJd;uHfvSn9@Revjgts!gL2-#qcoWNT+d$E#?Y`1ixVL50 zN!&vj)d_i?Yn~2@w?-d>x&=+X(mqgJADweU5$`M22gR+u49cJJc7oz<-)>M`g3kK7 z$g~(yaqu>>4Jd9c5fmRO6!M--T_sWKcKlX)i(!e{RA`m2xjyV%;+PS(MK?&k6_N17nLqS zh*&nGvMo9bOAEk6-de_gSZ6`2-+4bF5%09NK9C(Rjh>gwoK6Z(MS?#tkCc+=ykx~O zxTMJJyo6JwtDkpjEN)6@;*SvN2NNGf*dz}Y%Lr&ebE&~QD7Qz%v41`(Mzf5;mW3xfU+?xM8OfG zfgCeC+lJG3ShuFaXmwtt_E+Z5_7+wrYEI{uXke6RNiLopVl^e4s~AQ{;mG8l_=Mv4 z0E_dW2%-|QE*8_yK>?1NvGdwu8jJpDP;x%;7z>#3U?q-JJBy|Q=IzF0=M5w(;!7O+ zLvc35HO{E7r*za2XRTPAHSA+=T#(<0;;fOqHjXyZ#TTY-5M>{ne+bDWJ6{Z4ODf>m z0nB7)+;i-qti6052(KY96`D!7xFz#*k zn9*J6g88sS=Po9MpitxoQ-d(8xoE!j^565BDEa7PpyoPa3)cxzlVV3tWq)zD5K=o; z=evRiCa0;^B91CoaaOpuJrK=FPI8nLIhA2=}*GE zeMv6FActv9cJ78ZZo$r%ib8AgLd@TZX7Lx}qRwhgc(4p*Np;HH87e=6mpL{sEKNdD zqH+GmI-;S2w?YM==!jZhb_8o}WDQ^G6nK@me5F5ePhf9vs61*R`P-JDlGt0CcI8vH z^jC)ynQS&Fu8+1vkHck@Xi}C+zfpPv_fAaqV^D(`^#v#{K^u}MGhSyvM8X;puQ7${t*A?}YT>QCr}*2F988!LnnazhsZc7zXY8UfVD>e8k%zYRsG|U>>0{ zC5D;KeN^{jOnJ-RiS)RSDYww@-92pR^lKx`_y|!67h?Wqew=6_JUC zcmx&2=gUq9tA(8NF-D;igfS#Y36yF6tJ1V=C-hv8Z{cGq{1}w%9GOC?5D|4f0q1HW zf;z8|odNE1Fmcg63>XYKNBCPDB|cVT36OT2@HQ^hVuacgwozGG>XC)Av$m*adGCyQ zjC;gLT{G%$)D{-#=tVZiW1u-6$8I0lh>S1}Np-^hsa!nBhvFg@7G;(=$gZd3?DWarp83JV5WtV*{v z%tBl!tun9WFOl&OmX{M?L{hSPG;)#XELfa4znHZ$XpT$JuJ5yAMv~fi5i2~Q9J`{+ z0-&K2E4Ph6@j8TZ9!6XX5=fB7dDM!!88t`#>F`% zwYY;k*AW*6>&SZ;#p9B3VW93<3#Is3&wn=Hrzk$C$WcJg5Q5TDuYpRqj^MLLBQ<(h(361LK&Oup-(2Fm0lQfIL7@n$%&yBWt9k7oA|+; zk2c!+k69l|o$3v*l~4D{5PM@bQ|_+h zKW0aE`vzeIK+S-}W=CjN$z@tZC6(C`rW#SF`LH`gdCf`l&pf=#K=Cp7Gobj$n`#3- z@}}B=kIO|{r+gP9vi230yZ_*gkG%$BrJ}othe}&J9L?6A z*Ytc;^2l-$`A|Ro%ax@*Xj3whKceh>0g9BCd+2x^T7U_$q9CO!6PECVsW=5q zmfAJ1v7J^4!JtFl#mtlWbDGbV%aeFh%IDp1KCSacMI=72K+6zj`ZOW5{Z=|UBI~}= ztx^GgF?)&mGmO93jHH^8&`h)3CKtUIx|Y;Zj-#u0-cEm4OmdZ8;tx@vCgGT$-%BVw!;Sz zF*Ki`R5Aw;;A~hG)65jV2cQC8%Ql-5e&(>k6QEDhgxk+D&Z%7sIGv=NO$X$r)0byf zWYH+`(S~DJ4xP4I8=z^dUZn4PM0Nyq6_>9x2KT=iMN67|l4%R5=14$asSH#zMjZ!5 zUt9P}f2cU>tenLYPE1uP>Qr(qbOsIYDo<1?nw;fti&Wkxpu%v8bu>{vL|@QePpzax zF|a5xRvyoy3!NI8^idY?isCWSFR=%@R7^q;5H0I*p1zLx zfszfyd_iag^#talCO(9jb5y3V>?K4O`>N>X9uLJZjHx;__u%!E^gV z=`Bkfw|=;5huCXP?KIPraZ~jCFlBs5nKF*2DdVE}7O10ADP{sNF80F|GO?(J(p9Bq z80UjQH{)m^bcEiBh^lD zQC41?~Kc?9ELn0!m9u@1r>x)9s)i&5_ikI7@1`nfovWAARq)9~9e zhuqN5w7K?@y|!Mm6Q!)2#zys{18jX+ia1JWG-^qN1$~41*jv$O7RIuI=n#8j8hJ&t8F5q%ylPZRDa!;jD&d`L zWz2CL^^Ht%T2HiFGSYAgmoNLe$fdx#b%>N{2XraUBV*hB zEX8qmEASPq8P-bdZSl2ph;H~qBO1J@CB~5zSc%)COi&z9+EfaaTR$omp6S9W+&ECz znAd1TaE4KC^`Ke_BP-ckQi2CzLPF;KGp1av%TQpMhq@wyy!x~;&ndi{sET3Gjj3bj z9v2_u<3y?qY0?CrSF2x;Gd~Yg{X8GkFU-%bNh8*7^=V)NOc(RYqzk&B7ANwFB_Dak z5>~VVK%Rxs$7-Z~`_AfS<`X%#j0PvHJ-{gbNln5zCWLTvjK!uh6m~o$BL^P0 zi7^~TuHF)XCZcW}tK378I560&jef8mhdKqr!pg55H!E%RQT`g?<7j*wGB>1nkfEYE zeK;mnG%DIo!gA3^%lHoqEsJfJp*YJiJoaf#{2-vBmZcTHTjb{m6b0K1n#YNzhB*f< z=~%o&Ee}3E@)&~I0X{E~Cq^!LXaMp;aA95`FCRWw%YDFtSM(8utSB$2=%WH+Gaq4U z!F7T_tSq42LLaHK_*lo8hAtBN$MNV7Bq?1arSnTj>LMvUH7#5;vgTbRvdgz@Yw*%%jc}lD`w|4)FGxN?;x+aem5>pO2U%Jk646Db=>qfEuD|| zX6F-yFd$is2P#if=Z>wUJCf3U&JV|H^w87K(R=(ggKu7st-b^;ewuN@_RweWu?J-5 zPqJwcrcDo`1aPoHEL;XdMR`(+AMjY}#P>K;($7<+t*XUJpsgEpcg(B5wIi7+9utC3 zoS?X3i0mjihF3m$X~N=GmTSVj!&?ZrZ(f7~C(n`>q3=I@X`crl)^zbz&6z^~75&LxAG-&LQ>fKcFJnTN;l1(fv2%}X88o|jFRW!*EV&2&mAViF5Nk>Gw@H@@6;B6dDNV8AoFsD8&j+bWo#ECC* z%FfyORHw49MQKj`9R9GuwCr6d#7CZ(Q(s4_on!C`L#8 zX()wBD z2Imbn8J-chA0Xa_mnsz6C|hV9rtNbxa6Ur%<$E50zW0%Hh>8c#b!Ob3pNCjS7yxwFrY%_C3A+ zQ?8Jx3(4e7%*I_waQ@1ARnMbcEWY1Yp7dA&l!y_v)wy{YJvo13Ju5nK+4%$wR#9#a zRi3^+sD%$J&T`QQEVUEADB|MIL6`%2jAYM;LkQn-*jtvfS9n4Ke8ALlsq?kLv$%cx z#UhXr-y%NzO2UV;Sn^;xxh6EPq=^il--!n@g1-Y8lv*WA`pWGS5y3eko6vqT4E2t z9PgGM@@8u@6m4T2L>|ROYYL!2i6#2j2=rRcTF-wr;D<*j^%mWdhE4c8c2Y$unU-{h zJibD+I4|H^z_`dtmnv9xK1PbVJ1%4hRTc3i$)cSLaA3hZwgB_=1;5f4*fwUdNP1gQ9c$sA z;-<3_uY7=uZ;%|12Kn&B^Jl?!Emx@foI_nJRk>)EoLqPo9>#dBtl|R}Rrk0J#CzWH z9uMk%WB{YI85Hjql!D^@0{Zh6UI$UfnMoNXVP5*+g7KAA1wI zc!EJT9>X`O_5iFes9)AC^r!CM=VImxS&#L;)a5#wFyv9ms&35-TC*HNe^7HCzM;mL zeN$r_Lf^n(F#z-Nwb2gZLmtIL=*t=l`gZI?K0|MTZ6u)l@l9z#-vHEm^jF44G+O+- zj4i@PD5tDn?YdBjMuwJDxc}nVKtY+>x``&5+FG`e0!>Q`O-#!A0&p#MU zev)Z&P07>)zmc_b@IqQmH{rUm?0|eBaf&QVW;{cHj}#E;M}{O?%}`u~D#0m|n8tW* zYWPSsY&2bQN9!$cy`(c$QK};KGIMz- z{d^?9NS|~9)55Ldy0f<=!6~w`fcu1nk{S_Bg5Gi*g_2VgN-jZqd*V`@H{FXh-AE}{ ziK=vS3DWzTq8Pv4bT8w&@zzzZK5Uxrxn9yqO_t)k>7_XZqtu2b6m0*K_#nMBZ=pDE zx>qyZh5%nF0P%r*$a3yfMFhW*3_+pb6vfl?_mqlKr8q@WYwsyV)jsA+faMfPy~(9m z`SO=cqfo{~`I7NgaXnQ@PLbq$jK@j~!bVP!ptl@H`G`}LkGKS(Xbwnm-gIx`x&=hh zOFq}^YZka(()psIR7L7#sQ+t}ywxW3X`kYHsiEZ*g=Z(@1vmAT{EztN7}I?s2u-Dv z!bp8Bw0v+>^D3^ls)tjgXBXqOS>Y$G7}ZD$KU-I-ag8)+k`z-M-$`Adx^<3e6(gp_X-8JI(+*o_FdXoe(< zoT89_&!yeU!f}EN7o$pXillzzQeNu+JVgw@eN;(Kk>nXJ*|dh#bYR1r2I=)v0$G~z zKPFd%V^v8`k>oip>E_dXMFhWnRVhx9)I~1k#iw7oNcK}DIYpA!xMYhuQj5vBM%9*D z^azkzLXx>F6@W^;flUinQFW(tf2PhF{u3h1UU`B1x+HP%450q~IP6 zrQoL;Uv7A+{$W!|-JCk&;=G=tT5LJRxBoWFbngvMBY_+6jD09tF=9;0*HH&O= ziUiluO*pHnfm5V`KH!IMU2Jwx;P_2eB{)SA5ln*D>J(d;USxN^T?NNcnsAEJgi8>L zRumQIO?NM@TR;@OWJR;DS>Sp}=Qu^Fiqy;CkJBlX_b5LUn~JNehMZFr@_}57TdB`h zMDR-}o`*R_clvV(*ltowYJ%_in@q-cSfh+mlO8@2Pa%8&=wi3Ns)19aVJO$Yd|wx( zA2mP^)BtX!zoUzmrm7ZBk(N<2AA&QCw0L%pf$<>`nx$K;5rUy zs7i8*By+i>mwI_2i3`_6mE;sj=5tBjw~ioS8-b>uAXS1>B=M++M68Phtwiz^;1o$L z;SyEE3XOmi*G!e>6iGi`W!TmzV)$*YN^*)MS9tg|+C`#;D#0m|Si>d$qc)RTQ?!;%(ONc* zYmDFQV6ng#9?(z!}esv`9=yLm`mN{{QfhrVm$ zsmmz}$5&jUo{v;7GJutB*A_BVmEaUf9MR$hH3B(Bg5Gi*#S5n>UbqCITH{ijH{HiH z-KcR~C92ZRB}lJRQH)=2x=(W5cC7Pwy0c@&r8yy-ow>LrvC7gg!yaX~td zDN6C{P46E}ufZi{=#z29(RU*}EjdNLzs!9?`5duVL!^!(MQOsZlqQ^_(GHg)lxwZ- zP5*UWNEN*lQq2#XB3oQ9>3klS;=Jkohllh(YB|@MwY?g0PEp8da|4v{RyCwnXMLr{ z=(+h0ZD3>iljoAl$1MBil05pmO0B7KI);IObNRu)(r>`m%_tA#b?awU<=8ZJUL{lEiZFM zR!Bx(NJdDWePT{Vu1$&!nK;`%YcjS4>!;JvC!}2-{gYIaayC|gM_JhIkWSo(wch)?R{>KAhleVS}er{Tmr?w>@_-ux$^{77{z1jT9UnZY??MTfU zjeEAbX`B4=s3Z31X{-DO4SKxig?Xn}M;$xmY&faeJ1c%WH1UFcMS|hhcWncKj76CxuqYBeEZ_@kBf369CXD?I)>K@ z>|iL`|3+TDakVlUJoW9jcTf19UO4Bqm>1t0zbo*k(s%EsmhC;a_eO5l%4hQ*>-Kxv z-^q32+gBES+b*unoY!yPT(@m%ujwB*+tl~ZzDW(|T<%==<)#J0qF;NmhHt-bQUfX@ zE?+CJbz$$E)9W8z=F@GUG2zquRweq~>agzFo;?>ido~+4Wy&8DQ)h0zFth%9J8y)A zgg^L4yH{3p_~X)yq_vJ_BP~z87+-5n&d~{hwjZ9Tx#-5iK|hS{)pzXfwJ%&*8~)Y2 zb$?v=YssGVBNsoLFzACNpUm0NbN}Gt>34$eI%eld&mViP{ej@v_Fa=|1lCPx;Ai~I zIOOAp8*T2Abf)&6PlkN{);DLG^fwiZl;8fd!|>fH(odrY;|QoDH%8Ph+_5q|CCV>p zvBTWtujjJvc71vKPs2_IpW5|V)2F{{*!#kPhrXEo`=Qvo4|IOA+ns^+Ubz)B>+${1 zW*mJzKK1yE|2{IwdZxty^XX?V}J&qWOJ%N#wV*R5IY15B$b`k8}!J5HCpdEU9{{Dk1gbKYIL?y-e$ z*4<(&>{Dm^ca#6Pn6+k2-ESV5nGusXKGgcnwjacIsa{`anXH$ z{McrD!{2tl?I`Ke>a)RzHa7inp5njf_8AYCWOTlv=r_ON7<8rP;ZncPjC4Y4??={> z^Ui#Des^Z#8$qc{M|W$tajoIf{;TrT1v@qu`#$!q6gKq3wNn@M*|EUdGWhZDmv0T4 z72jh-qqjRWU+H(^v7vr#Zh!ytjOTmqQ1p%6+_YD%ub0*cUpD1($Ez>@9k_DyyK%XH z|D9iF`+Loc|303+u=VdHcW3TX-uFuxF@ET)*mHeo$@Gog-dodu*@FSszinI6CqkN> zZ~isxhrm^DKhyhEL&g98&Bx0-x0gmL;Z08J-0zE5+ZLA&9UgOZ-pNf}$1nf)(x=V0 zjx^LL5Bu?j``@ZPq1M6n8>cIHqpjAG{#!rn>XZA{PqQ9*uixnvxr<;Z>*>XaWKYi@R_T(q;pRVA)8Mo{67eBuHkrH3c`xGp`V%~D{ ze*gSKD_>c)ec#^i6TkiVz{RzF0ya1w{{`+J`&*V*KntXGA z@wJ+U-d5S)cmoAkFS3C z>XJ`iJTs!x=9=+au1r|1_(v%(tvj9E_O)}$b4q$HE1ejSSW)NiKd;y~FUa%1wlO90 z%@+skh`oDdaEA>Kd{p<&sadmQ9zI#8am~n*`{dcCX3xE}u5J1QX?s$Q$2Rrb8Lj9W z`SVu;=GWbNdECnL-;X^qc5q42*38kjmGpk&-xrgT9+`7$R*%{*R(|yGvzG?TvMzY~%dtD>w4U^+T-n98=fa7;F?)R8t@q=;e@$}2%-zR6_+^vt z-Sk=+x1Wl6dDO?-57&F6qQjcuue|xrxV_H~d^hy3?U~y@3R$r)cW0;csJ6Brd%qKt zv$>$fOY*<(ovqxGoYKkh+_vLOBcu0~oSc?kzvrXY!eZ67Vy}$pibl2i0&7PUlb?W5fHeW+!CH3~=vNAJlT_Yk^ z7z_oR({*xg<|NzPOp>AQq|wk#5m$e^PR^WYpAt%cWJc4{z?2ZFb6sgC)zF!7kX zFxj}1#vId;I8Nb#t#r|^Q3}E3Dn-e{OiD&f}kUG$SC z)t)nP@VUDbjZ2LNngt{uu6|)*CrwJ3bMf<#s>!5A2(8lsPp;6Utb$w9LyCIHMgz?i z27nsU=Vc5S$SS#XcBffPcOTZm8>6ANc;9kwL7^sgpmzR*VJ;9l57NzZk&NnVt&h21ghlofM5lwDfwaAPfx39ps+l zKWrUNFI5+BG^zNe^OtK<8-x^L^iuVhl;XoZbIY%5QsqL5FnTEylcHH&at*BMO*E-f zjE8Ts@arRq9f&0)C`%T=EJXHDuQAw?Ly6pec|TMzwsKLVkIYnzZF4Cj3ZPK4L^p;E5t z89s5{dx{KSNyBS4f1Tk2szWxx%d=8vED!sgwac}S$eg$iEP+mlqS_xND)Ra zMdNy{R1UoM^Gr=@kdPvbUMiSLQJq8XrL^s*HK|M?MHsyl&7Wwo@loekOgsxPo6{y; zgwadUcNki1T=4sIpC(1K#pDR1mudlyX6xyB+g)sZB%}zVmuktRsN9jeki6)OW^2EY zB8*;&jsenaeSBX_Ori-en-d~kgwadU44xMAx6i#cM3bT!5psmlOND@=*}C+?9v~H4 z9fTBN^ipk@l#-*e)3SDGQUin(Vf0dMnUs>s#~a?grAg6tS>y<#m%0xe&4-~ce~JlN z#fNqwMHszQD3hYPg50o%OTX2m=yN}Egwad214pxUFtguSO=^>nB8*YJY zSxsu6kRlAET>1bVnABXx$DRsrH?;8f%N0Xyl+iGq?zn1azm8-_<)G7ph8dVIai`k< zp%-hd@Wgaxn02^Q%w67HFy0dr#xS&APiav4!O#*HZNh-Ov%j}7XWSDWdlZ6KZ>m+z$q8KIycVAq;4J>)p6VroXl=9v-HWNAA-Om&& zMguZ2a}6#`?eB@{#W1hqPT~5l)yfw=F})e)5bl(wtL}`0S$A8}408l`($nFmW%qev zC`3j>4(=p9^ZFumF5LC>VHkLV<-;}cn7Z)5#4=1NM5(Q{zq1D!(_K$rhM};NpG||D zUh-i-hDpVp;yJbPX(XV#9z+@ZoQFHTG5qk^B2UZ!hFOg}>Dh9olid>&$1sY2Du#XR zB_Em@<~Z)i($ctDqftEE{WDOfXGZ+SGoF}uhS`j}Kd!#P&;9F(Nnn^1+{wa?mD%$= zG4LY7PAN-q`1FWpAM?ZvVwgwhj%$!#2GqIxIf-G`2uzR1K1Sws$H)xR26uXs;XCS4 zPmG0O7SbKp%Plt{OS1`|Wzqw&&<6`q(83`46G6o>B|8=C2fL6L(ViY4+-(&&j#cw$B| z4E1>_4)>P7ImZ)oKf}In1(tImPT?XW#w}N9PZ!xE-Gib;B-@RnA1gv8bFJ!5OS_9u*u} z92K1VRnB?A8KrWJ)SSbOQ91Pm$EtGL3eGT<(^GJIs+_@sldN(c6r2>5lPfr5Rn8-V zGeYG&AvjSg=Ow}ErE)e1j+T2%b)1=*GbiOxwapymaBybM=98e{2~J+7O+XkY)H*a; zd8Xc%p9D^K>RXeeex07vTjdZ%E)EyRC>-iB>Nx{d4)vtTQSX#vXgolUyumm<6zkNl zV4Pm`o?Hwr#=+59+?f@Q8Vc%XGK}IKHfyNYLt`Sw>8^;O<10A51dGO2979&gkxx0N zCw$ZcwGtaQu^8(KYqSZo#_0jfas%fGsUG;!PlxG==%8(yHK_>bIfR;>I9#e1FfZ!# zL_p6sdW;CGD%DGgRdmFK9);6Y;Xn&_-4srDCCX^*DXa?&#W&|fQgom}X8kb=JBzOj zFp0x4WDDI77Y@nq({U(Kry^XMR3um@bsS2bLwXJ{p$PjJNE=n_nRp@&v(A!hxhto8 z1k7L6ame~6XjY|IP6$T0G!7{mqT_T&zz(4rRxzZ8ou;XBSlP)2mtHX+c8>y;?#f|> zAYO2opILTJQ8`^*4u7W+uF(*PJGr+O4ZARa^{D9SxTpab2B*WZPcP^NJNV9Mr~`^x zjoRDxy{k!G7E&0<;jOE!2Z>`)s+H+m%3AhQZTZ#0OE`wn*_r^ZW=raPZIUL{Qb;k3 z&Q=G`fTaCk2LW*H@wkGRrJre$P8%^qc zA;mB{Ta@pO1|<#yv)5kNq;?A_hSAx|(%GtL^wtJV>a>tz7@e&tI$Op2+oGyM)y3RD zLW*H@wz8R&5{L8G$?G+#rU6`nLYo;m%LTYzlY`Zu$4qp~h z45PC(OO>MByJGw6hcu~AgcQT*Y|U1sKrmZgsEn)O;buFgjcF)NoO3 zd>qv+UXxlQq!>nLD_>`8K>MHn(xf&DDTdM6dPubeg0(5pY8-wgq!>nL>tUU(j5*N> zn$#~sieYrN<})dZLo~Nij~51CiB)ag5>gDKv$a5H>ud9c@tRa4N=7(_(b;+gT%(}{ z-Epm1^vhyRs;iJ<7@e(0nUs<@3dbhh(WC|oDTdM6TF9i7I;!8h+kVxgvV;`F=xi0} zY`uP{N4zGrSV%F9&ekF(MR7=OY5b&XF=`yXETkAlXKOLATD!brWy*V+6gx=^?-@pC z%b`kvVD*Mswe_{I#V|TsOH?U}`Q9@}1Zz@%3Mq!s*(zjG6o=%fZ_{73imAB^SwwhFkkYX5}t))y#vE?}XcfF3Ptr#K2Fgjbybha++SX8V@jTTZ2qq9|{ zN`YW;*hRIKE2J1kXX|lQisG={9zRDhlXlWH-!|#=xja7 zq+G)lq1vinkL*hl!{}_S09Uj1o8OT3npA|4Vi=vRl}sv#RKj)1z4>XlYHO&FVi=vR zr-0RL-M+B|qc){Slp~}VMrUi4Dn+&mTGhDNU6ooXq!>nLYqcsxd1Lq0_V;U2>xC4< z=xjaBq^RB?si*ez8K+6@6jBVMv$cjvQK2QNEyL?PuStC`q!>nL>lr3R=|xhVgXjFI zNnI3D45PF4ER#}f4ceWTt4aBp@Dh$;bhe%YSL*{%p6{y0VJjiUFgjb$|3B2d31AdO z+CJWs3=qx%VG+=U0fQn429iK9Xl9a`q$imiD&PeM2mvBTVlo4$s9+Kyj!|^I*8}fk zUBwF#6aztm;(>U97oe_!=n5VPc;x@QZ&hD2J(6$t`*wf-g6UMh^*rxeS65e6cULh> zv$b>UvEvL@x@0lNV(YKWO2U!c+hbpGovPa^kSxYnY~2a0Q8$XSE=V(2(mFvA(=|%B^}J*;#$s!Q#a8j` zXMQkPZ%Yj_w z@(q?-vKV8r^?=3JqVAnOGFX|C#TbjN2bpDV4~z6XoG4k0vDkXZVypi0`@c3=7fTjn zEVdrjS@7^ZB~iB(ku1hoY(1j0=&J0twp*gXdO)%mW3lxpv$T3xT)4r}Ubpq4WHH8K z>oJS1=l!4DX|T3S7Go^7{>CgV4__XC-IOHV)(?`!7>ljPEw)~p)#W9F)wu@(;TU7F z^>;|cRY~DA{yIswHAu1;W3lyw&Z0a#_O`5x3|59@F~(x+Nu33ca`$4#pd8&+p=2?} zVr!+&B3tgAw|6&KWs=1hi>;@07Cf9TpKfcRWHH8K>uH@uw&uo@+cF&10TFpI8b za?}?+SGRSqWHH8K>serp_HgYr1D-Kh&r23#EViCwmaGKIioPdrIbXN+x@0lNVr!Mf z7R`MbtWPD2F&10TTWrxiC7|2-PO=zdv9;P_Yg}zr*kH9g27z#lvDkV6Qe&R&{zrEF zsOq-*Nfu))w$?C9yMJw-_HnwwN|7waSZuA0u~nek@=F$DEVf>>*cw*+@OFbWNwOGY zvGo$O%ylDIw^c1!jIr2SXR+n2n=r;;HAog?EVf=|mR2{Yyz+Eg_ed6FEVh~~w&uU| z-Cl#WO0pPZv9+FA+P#v>%dgvdU9uQsv9-ZsYqL6JqQUxHvKV8r)yyod?WI1zMBUb5 z$zqJf)<%o1JumqO8?5d<5eUZ^i>+56O>}6sZoBHr{0X|P6D5l=7F(N`rPaftQ(yHO zERSR{#$v05Sz0^4cK4_2#_P7ulPtzqY;CsK`sVSThYZ$blEoN{tyeASx}fCoPtVb9 z-6>g&vDkXeVyob{G2IN-(~`v)i>)opGS|bPZmUJI7-O;Zy2aMyhgKXkSi2;PF&0~I z=qz}YFSWsJqvTg;+hVjcJ4w0|0`;gZD| zi>-(h#nv{9t%Pn9R~f7&lEoN{ zt#_DZzLwMVJiJS?7-O;ZuEiG3!5XYJlEoN{t@kXpo@uxA#X{ZI`;x^Ni>>!9wrK2N zuntHTV=T5lU={^a9-h4G(`OA<=RZLN#~6#P?T{Mx<=HQ|M;fe?B#SW?TRWJg*$R}U z-e<6KB#SW?TOV3%Ire>0Ww1&mi!l~kA2Ca-8%xh#u*_gxCRvQJ*!tLFYu~ete>PaR zN)}@*wmz}gy8pc{jRxx($zqJf)~6O*uRZngZwBiv$zqJf)=p+=^^odDiC#DMNfu)) zwsu);eLnoMZw*#bZv?{a!p}NKw3{T{&Qsm^>ciXLF<8lx#TbjN&zPlM%eTDzk3xf$ zEm@4Qr0a8LY31c=Ic2=TqHk5mF~(x+3rLN6cz%!D-!@oRNETx(w*J8^?fymg%JcL* zyi>9mW3lz6#TNAe4Azs9#TbjNub4&YB6s?4KVR25Y-y zF~(wRFSF=gN#*t1&TBt2SpSqP##n59ZLy`Ca_Z>@tNpPEgky}w);>tZTngEmeOK~F z2CKhhF~(x+8)j*Btd##n6q(_(9)det2U zYo=r|#$xL`odpk%iAL+Tu9PgsSZwXrS(F>|_jVXzuIGCp$gcdy6mn_0qzg+m9Srj{R$2~_qV~zEVWD&;7`T>$eM^_xleNywO z$6);?S%k5&euN~^q1oDT*%&C+Z1tCy9bv4jpP1DSM{*5+yK$+(8Y5YRv9bhaeGGC9&oe4=6NPk4hF{tgOS# zl1;O6-0P z%KDXAbYCVnJ#k~uV4W*jgt4-IgT(j>>6NEu(0DRk8?U zWhF2xS&)?8SA}jdSjqi_m@rmWBC}+$^2!y(w;QYqDJG1Sg+*)-L#_6fU3GZ5!Ma_t z2xDcnW0qFRn-1KD235<^ZIVS8E2}-TI>~f>9!zx`tY0OIFhWz`<0KG&gk-QqVs6Je zux71>uXu0mlNtw40ws$uh)>z9*)^lnSalM!Jlf4bH+LZz^2^@Rd6iYASO90bMNm_5 zX}K;KGp!fJX7UgDp{n>ucw2FCH!pEb?fHYrj zNnRkJdOaDiZHR+vL0)!ALAHmYq>D%A`*Z!ddH#Hlh?gFao$bl-s$PFiuGe#MxH42e zJ!@=Lb;Z2U)M<0dftp(}w_NzMMrLJ|*OX1IDlf%5?^uq<;~DE2t7OpHD74s@WrqdbK<>jVREYZbFaxt6nv@Vtjpskr@5>dr8oys=JB;mI$4UMECN<^on zWz$R?xi(mhNi+)$9Iav?QZ}ceCR9qXFP%C^q;FyAf{J;mqmbySB88e@MrBp`Jf>-q zsbyv5HCV_?zs8X6QlZ}@q^#oHFmPpa%BRkYl1&d+MM?1Pc&VNMgIrZz4q&-7WH!$Y zssZG}G@l}2(@haGwFo9@7!eDja+D!e3rlM%LzUr6Mey`X=9O}}vralgdgmEoI5SSF zLe=7A#?*>AGlUllol*WQ6lXP@_eeI^?{c#cmA)L%d6fv2@=$fz)S7Zyj09=dW%JBJ zigD@O`BS-FpP_KQ)ACQ;d^qBCXW;5c0OTfBE6SSksrd9sKf_G{ zB^8>ba4CkXO10akP=p)XoXX1CQ>h-5mRHUZ@xaFcA_^QUI^)YrKjRCC�D_Qsovz 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

r&?d?^5cleAAU$VedQk?+n;)J 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

g5l03CGhBq~a;>*y~@ADE)(&9A&09W04$8X|= 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 k2W>9KuqI;6EyqU5F+*SC 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

l>85th}@jznjmy@s>^Lk~%GP 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

>D4stkX9gWcx!!*S)g3UF(8guZKlW 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≠F}l#Qu>fnPqJbd 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 U38Q`328~5 +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "mdbks_register.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using namespace std; + + + +// ַתΪ curl_slist +static struct curl_slist* create_header_list1(const char** headers) { + struct curl_slist* header_list = NULL; + for (; *headers != NULL; headers++) { + header_list = curl_slist_append(header_list, *headers); + } + return header_list; +} + +#define MAX_BUFFER_SIZE 10000 + +size_t WriteCallback1(void* contents, size_t size, size_t nmemb, void* userp) { + size_t totalSize = size * nmemb; + char* buffer = (char*)userp; + size_t currentLength = strlen(buffer); + + // ʣռֹ + if (currentLength + totalSize > MAX_BUFFER_SIZE) { + printf("Error: Response too large for buffer!\n"); + return 0; + } + + // ׷ݵ + strncat(buffer, (char*)contents, totalSize - 1); // 1Ϊ˱'\0'λ + buffer[currentLength + totalSize - 1] = '\0'; // ӽ + + return totalSize; +} + +char* sendPostRequest1(const char* url, const char* file_path, const char* proCode, const char* proName, const char* fileCode, const char* productCode, const char* fileVersion, const char* file_name) { + CURL* curl; + CURLcode res; + char readBuffer[MAX_BUFFER_SIZE]; + memset(readBuffer, 0, MAX_BUFFER_SIZE); + curl = curl_easy_init(); + if (curl) { + curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST"); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https"); + struct curl_slist* headers = NULL; + + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback1); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, readBuffer); + + curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); + curl_mime* mime; + curl_mimepart* part; + mime = curl_mime_init(curl); + part = curl_mime_addpart(mime); + curl_mime_name(part, "ProjectCode"); + curl_mime_data(part, proCode, CURL_ZERO_TERMINATED); + part = curl_mime_addpart(mime); + curl_mime_name(part, "ProjectName"); + curl_mime_data(part, proName, CURL_ZERO_TERMINATED); + part = curl_mime_addpart(mime); + curl_mime_name(part, "FileCode"); + curl_mime_data(part, fileCode, CURL_ZERO_TERMINATED); + part = curl_mime_addpart(mime); + curl_mime_name(part, "ProductCode"); + curl_mime_data(part, productCode, CURL_ZERO_TERMINATED); + part = curl_mime_addpart(mime); + curl_mime_name(part, "FileVersion"); + curl_mime_data(part, fileVersion, CURL_ZERO_TERMINATED); + part = curl_mime_addpart(mime); + curl_mime_name(part, ""); + curl_mime_filedata(part, file_path); + curl_easy_setopt(curl, CURLOPT_MIMEPOST, mime); + res = curl_easy_perform(curl); + curl_mime_free(mime); + + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); // ֹ֤Զ֤ + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); // ֹ֤ + + if (res != CURLE_OK) { + fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); + return NULL; + } + } + else { + printf("Failed to initialize curl.\n"); + return NULL; + } + + return readBuffer; +} + +//// ʹвļ POST +//char* send_post_request1(const char* url, const char* file_path, const char* proCode, const char* proName, const char* fileCode, const char* fileVersion,const char* file_name) { +// CURL* curl = curl_easy_init(); +// if (!curl) { +// fprintf(stderr, "Failed to initialize curl.\n"); +// return NULL; +// } +// char readBuffer[MAX_BUFFER_SIZE]; +// memset(readBuffer, 0, MAX_BUFFER_SIZE); +// // ò +// struct curl_httppost* formpost = NULL; +// struct curl_httppost* lastptr = NULL; +// +// curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "ProjectCode", CURLFORM_COPYCONTENTS, proCode, CURLFORM_END); +// curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "ProjectName", CURLFORM_COPYCONTENTS, proName, CURLFORM_END); +// curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "FileCode", CURLFORM_COPYCONTENTS, fileCode, CURLFORM_END); +// curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "FileVersion", CURLFORM_COPYCONTENTS, fileVersion, CURLFORM_END); +// curl_formadd(&formpost, &lastptr, CURLFORM_FILE, file_path, CURLFORM_FILENAME, file_name, CURLFORM_END); +// +// // ͷ +// static const char* headers[] = { "Content-Type: multipart/form-data", NULL }; +// struct curl_slist* header_list = create_header_list1(headers); +// +// // ִ +// curl_easy_setopt(curl, CURLOPT_URL, url); +// curl_easy_setopt(curl, CURLOPT_HTTPHEADER, header_list); +// curl_easy_setopt(curl, CURLOPT_POST, 1L); +// curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback1); +// curl_easy_setopt(curl, CURLOPT_WRITEDATA, readBuffer); +// curl_easy_setopt(curl, CURLOPT_POSTFIELDS, ""); +// curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost); +// +// curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); +// curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); +// CURLcode res; +// res = curl_easy_perform(curl); +// if (res != CURLE_OK) { +// fprintf(stderr, "curl_easy_perform failed: %s\n", curl_easy_strerror(res)); +// } +// +// // Դ +// curl_easy_cleanup(curl); +// curl_formfree(formpost); +// curl_slist_free_all(header_list); +// +// return readBuffer; +//} + +// ԭͣһµַвԭַеκοո +char* removeSpaces1(const char* input) { + if (!input) return NULL; + + // ȼȥոַ + int lenWithoutSpaces = 0; + for (const char* p = input; *p; ++p) { + if (*p != ' ') { + ++lenWithoutSpaces; + } + } + + // 㹻ڴַ + char* output = (char*)malloc(lenWithoutSpaces + 1); + if (!output) return NULL; + + // Ʋոַַ + int index = 0; + for (const char* q = input; *q; ++q) { + if (*q != ' ') { + output[index++] = *q; + } + } + output[index] = '\0'; // ֹ + + return output; +} + + +#define MAX_ATTR_LENGTH 100 // 󳤶 +//jsonеtokenϢ +const char* extractValueFromJson1(const char* response, const char* attr) { + // Ƴпո + char* response2 = removeSpaces1(response); + printf("response2: %s\n", response2); + + // ʹþ̬飬עattrᳬMAX_ATTR_LENGTHַ + char attr_with_quotes[2 * MAX_ATTR_LENGTH + 3]; // ˫źð + snprintf(attr_with_quotes, sizeof(attr_with_quotes), "\"%s\":\"", attr); + sprintf(attr_with_quotes, "\"%s\":\"", attr); + + const char* value_start = strstr(response2, attr_with_quotes); + if (value_start == NULL) { + return NULL; // attr δҵ + } + value_start += strlen(attr_with_quotes); // ƶָ뵽ֵʼλ + + const char* value_end = strchr(value_start, '"'); + if (value_end == NULL) { + return NULL; // ˫δҵ + } + + // ȷҵǽֵ˫ţǶֵڵ˫ + if (*(value_end - 1) == '\\') { + do { + value_end = strchr(value_end + 1, '"'); + if (value_end == NULL) { + return NULL; // ת˫ţδҵת˫ţ򷵻ش + } + } while (*(value_end - 1) == '\\'); + } + + size_t value_length = value_end - value_start; + char* value = (char*)malloc((value_length + 1) * sizeof(char)); + if (value == NULL) { + return NULL; // ڴʧ + } + strncpy(value, value_start, value_length); + value[value_length] = '\0'; // ֹ + printf("value: %s\n", value); + + // ʱ + free(response2); + + return value; +} + + +void CreateDirectoryAndFile1(const char* directory_path, const char* file_path) { + // Ŀ¼·תΪַ + wchar_t w_directory_path[MAX_PATH]; + MultiByteToWideChar(CP_UTF8, 0, directory_path, -1, w_directory_path, MAX_PATH); + + // ļǷڣ򴴽 + DWORD dwAttrib = GetFileAttributes(w_directory_path); + if (dwAttrib == INVALID_FILE_ATTRIBUTES || !(dwAttrib & FILE_ATTRIBUTE_DIRECTORY)) { + // ļвڣԴ + if (_wmkdir(w_directory_path) != 0) { + perror("Failed to create directory."); + return; + } + } + + // ļ·תΪַ + wchar_t w_file_path[MAX_PATH]; + MultiByteToWideChar(CP_UTF8, 0, file_path, -1, w_file_path, MAX_PATH); + + // ļǷڣ򴴽 + FILE* file = fopen(file_path, "r"); + if (file == NULL) { + // ļڣԴ򿪣׷ģʽ򿪣 + file = fopen(file_path, "a+"); + if (file == NULL) { + perror("Failed to create and open file."); + return; + } + fclose(file); // رոմļ + } + else { + fclose(file); // ļѴڣرմ򿪵ļ + } +} + +const char* extractLastPart1(const char* url) { + if (url == nullptr) return nullptr; + + // һ '/' λ + const char* lastSlash = strrchr(url, '/'); + + // Ҳ '/', ԭַҪIJ + if (lastSlash == nullptr) return url; + + // ƶ '/' ĵһַӴʼλ + return lastSlash + 1; +} + +char* getCurrentTime1() { + time_t nowtime; + time(&nowtime); // ȡǰʱ䣨197011 + tm* p = localtime(&nowtime); // תΪʱ + + // ̬仺ȷ㹻ɸʽʱַ + char* timeStr = (char*)malloc(sizeof(char) * 14); // ʽΪ"YYYYMMDDHHMMSS"14ַ+1'\0' + if (timeStr == NULL) { + perror("Memory allocation failed"); + return NULL; + } + + // ʹsnprintfʽʱ䵽 + int len = snprintf(timeStr, 14, "%04d%02d%02d%02d%02d", p->tm_year + 1900, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min); + if (len < 0) { + perror("Failed to format time"); + free(timeStr); + return NULL; + } + else if (len > 14) { + //ϲᷢΪΪ14ԿӴ˼ + perror("Formatted time exceeds buffer size"); + free(timeStr); + return NULL; + } + + return timeStr; +} + +/** + * + * @HandlerName: KSDY_DrawToMES + * @HandlerType: ActionHandler + * @Description: ͨhandleͼֽMES + * @author: hcj + * @date: 2024520 + * + */ +int KSDY_DrawToMES(EPM_action_message_t msg) { + //ȡ + tag_t rootTask = NULLTAG; + EPM_ask_root_task(msg.task, &rootTask); + //ļкļǷ 򴴽 + const char* directory_path = "D:\\log"; + const char* file_path = "D:\\log\\KSDY_DrawToMES.log"; + CreateDirectoryAndFile1(directory_path, file_path); + + //־ļΪ׷ģʽ + auto logFile = std::make_unique("D:\\log\\KSDY_DrawToMES.log", std::ios::app); + logFile->is_open(); + + //ȡǰʱ + auto now = std::chrono::system_clock::now(); + std::time_t time1 = std::chrono::system_clock::to_time_t(now); + std::string timeStr = std::ctime(&time1); + *logFile << "[" << timeStr.substr(0, timeStr.size() - 1) << "] "; + *logFile << "=========================MESDrawstart===================" << std::endl; + + //ȡѡ + char* url = NULL; + ITKCALL(PREF_ask_char_value("KSDY_TC2MES_URL", 1, &url)); + *logFile << "ѡKSDY_TC2MES_URLΪ: " << (url ? url : "δ") << std::endl; + + if (url == NULL || strlen(url) == 0) { + *logFile << "ѡKSDY_TC2MES_URLδûΪա" << std::endl; + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ѡKSDY_TC2MES_URLδûΪա"); + return -1; + } + else { + // ȷurlЧٵextractMaterialInfo + url = extractMaterialInfo(url, "Draw:"); + if (url) { + *logFile << "ȡDrawϢɹ: " << url << std::endl; + } + else { + *logFile << "δܴѡȡDrawϢ" << std::endl; + // 򷵻ش + } + } + *logFile << "ѡKSDY_TC2MES_URL" << url << std::endl; + + char* filePath = NULL; + ITKCALL(PREF_ask_char_value("KSDY_MesIntegrateLog_Address", 0, &filePath)); + *logFile << "ѡKSDY_MesIntegrateLog_AddressΪ: " << (filePath ? filePath : "δ") << std::endl; + + if (filePath == NULL || strlen(filePath) == 0) { + *logFile << "ѡKSDY_MesIntegrateLog_AddressδûΪա" << std::endl; + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ѡKSDY_MesIntegrateLog_AddressδûΪա"); + return -1; + } + + //Ŀµ϶ + int attachments_num = 0; + tag_t* attachments = NULLTAG; + ITKCALL(EPM_ask_attachments(rootTask, EPM_target_attachment, &attachments_num, &attachments)); + //ƥ + for (int i = 0; i < attachments_num; i++) + { + char* type = NULL; + ITKCALL(AOM_ask_value_string(attachments[i], "object_type", &type)); + if (strcmp(type, "Dy2_DYDesignRevision") == 0) + { + int count = 0; + tag_t* tags = NULL; + ITKCALL(AOM_ask_value_tags(attachments[i], "IMAN_Rendering", &count, &tags)); + for (int j = 0; j < count;j++) { + char* tagtype = NULL; + + ITKCALL(AOM_ask_value_string(tags[j], "object_type", &tagtype)); + + *logFile << "ʼϵIMAN_Renderingȡ" << tagtype << std::endl; + if (strcmp(tagtype,"ֱģ") == 0 || strcmp(tagtype, "DirectModel") == 0) { + tag_t spec_dataset_rev = NULLTAG, ref_object = NULLTAG; + AE_reference_type_t reference_type; + ITKCALL(AE_ask_dataset_latest_rev(tags[j], &spec_dataset_rev)); + ITKCALL(AE_ask_dataset_named_ref2(spec_dataset_rev, "JTPART", &reference_type, &ref_object)); + if (reference_type != AE_PART_OF) { + continue; + } + char* pathname = NULL, * origin_file_name = NULL, * new_ds_name = NULL; + ITKCALL(WSOM_ask_name2(tags[j], &new_ds_name)); + *logFile << "new_ds_name" << new_ds_name << std::endl; + ITKCALL(IMF_ask_file_pathname2(ref_object, SS_WNT_MACHINE, &pathname)); + *logFile << "pathname" << pathname << std::endl; + ITKCALL(IMF_ask_original_file_name2(ref_object, &origin_file_name)); + *logFile << "origin_file_name" << origin_file_name << std::endl; + char temp_file[SS_MAXPATHLEN] = ""; + char* temp_dir = getenv("temp"); + strcpy(temp_file, temp_dir); + strcat(temp_file, "\\"); + strcat(temp_file, origin_file_name); + string filestr2 = Utf8ToGbk(temp_file); + *logFile << "filestr2" << filestr2 << std::endl; + if ((_access(filestr2.c_str(), 0)) != -1) { + if (!remove(filestr2.c_str())) { + remove(filestr2.c_str()); + } + } + ITKCALL(IMF_export_file(ref_object, filestr2.c_str())); + char* id = NULL; + char* dy2_drawingRev = NULL; + char* dy2_projectNum = NULL; + char* dy2_projectName = NULL; + char* dy2_productCode = NULL; + ITKCALL(AOM_ask_value_string(attachments[i], "item_id", &id)); + ITKCALL(AOM_ask_value_string(attachments[i], "dy2_drawingRev", &dy2_drawingRev)); + ITKCALL(AOM_ask_value_string(attachments[i], "dy2_projectNum", &dy2_projectNum)); + ITKCALL(AOM_ask_value_string(attachments[i], "dy2_projectName", &dy2_projectName)); + ITKCALL(AOM_ask_value_string(attachments[i], "dy2_productCode", &dy2_productCode)); + if (*dy2_projectNum == '\0') { + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "Ŀ벻Ϊ"); + return -1; + } + if (*dy2_productCode == '\0') { + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "Ƽ벻Ϊ"); + return -1; + } + if (*dy2_drawingRev == '\0') { + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ļ汾Ϊ"); + return -1; + } + *logFile << "id" << id << std::endl; + *logFile << "dy2_drawingRev" << dy2_drawingRev << std::endl; + *logFile << "fileName" << origin_file_name << std::endl; + *logFile << "dy2_projectNum" << dy2_projectNum << std::endl; + *logFile << "dy2_projectName" << dy2_projectName << std::endl; + *logFile << "dy2_productCode" << dy2_productCode << std::endl; + char * request = sendPostRequest1(url, temp_file, dy2_projectNum, dy2_projectNum, id, dy2_productCode, dy2_drawingRev, origin_file_name); + string requestData_new = Utf8ToGbk(request); + *logFile << "requestData" << requestData_new << std::endl; + requestData_new += "}"; + //洫ݲԼֵļ + const char* info = extractValueFromJson1(requestData_new.c_str(), "info"); + *logFile << "info" << info << std::endl; + const char* lastPart = extractLastPart1((const char*)url); + *logFile << "lastPart" << lastPart << std::endl; + char* time = getCurrentTime1(); + *logFile << "time" << time << std::endl; + std::string fileName = std::string(lastPart) + "_" + std::string(info) + "_" + std::string(time); + *logFile << "fileName" << fileName << std::endl; + const char* logFolder = filePath; + *logFile << "logFolder" << logFolder << std::endl; + std::string logpath = std::string(filePath) + "\\" + fileName + ".txt"; + *logFile << "logpath" << logpath << std::endl; + CreateDirectoryAndFile1(logFolder, logpath.c_str()); + //־ļΪ׷ģʽ + auto logFile2 = std::make_unique(logpath, std::ios::app); + logFile2->is_open(); + *logFile2 << "ݲ" << std::endl; + *logFile2 << "ProjectCode" << "" << std::endl; + *logFile2 << "ProjectName" << "" << std::endl; + *logFile2 << "FileCode" << id << std::endl; + *logFile2 << "FileVersion" << dy2_drawingRev << std::endl; + *logFile2 << "ļַ" << temp_file << std::endl; + + *logFile2 << "ֵ" << requestData_new << std::endl; + + //const char* code = extractValueFromJson1(requestData_new.c_str(), "code"); + char codeValue[4]; // codeֵ3λֹ'\0' + const char* startPos; + // "code":ĺλλcodeֵʼλ + startPos = strstr(requestData_new.c_str(), "\"code\":"); + if (startPos != NULL) { + startPos += 7; // "code":ĸַĶźͿո + strncpy(codeValue, startPos, 3); // 3ַcodeValueУȷᳬ߽ + codeValue[3] = '\0'; // ȷַβȷ + *logFile << "code" << codeValue << std::endl; + } + else { + printf("δҵcodeֵ\n"); + } + if (strcmp(codeValue, "200") == 0) { + //ִгɹ + } + else if (strcmp(codeValue, "400") == 0 || strcmp(codeValue, "500") == 0) { + //ִʧ + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ͬ쳣"); + return -1; + } + } + } + } + } + return ITK_ok; +} \ No newline at end of file diff --git a/mdbks_connor_itk/KSDY_Material2MES.cxx b/mdbks_connor_itk/KSDY_Material2MES.cxx new file mode 100644 index 0000000..dc621e6 --- /dev/null +++ b/mdbks_connor_itk/KSDY_Material2MES.cxx @@ -0,0 +1,463 @@ +#define _CRT_SECURE_NO_WARNINGS +#define EPM_HANDLER_COMMON + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "mdbks_register.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using namespace std; + + + + +#define MAX_BUFFER_SIZE 10000 + +size_t WriteCallback(void* contents, size_t size, size_t nmemb, void* userp) { + size_t totalSize = size * nmemb; + char* buffer = (char*)userp; + size_t currentLength = strlen(buffer); + + // ʣռֹ + if (currentLength + totalSize > MAX_BUFFER_SIZE) { + printf("Error: Response too large for buffer!\n"); + return 0; + } + + // ׷ݵ + strncat(buffer, (char*)contents, totalSize - 1); // 1Ϊ˱'\0'λ + buffer[currentLength + totalSize - 1] = '\0'; // ӽ + + return totalSize; +} + +char* sendPostRequest(const char* jsonPayload, const char* url) { + CURL* curl; + CURLcode res; + char readBuffer[MAX_BUFFER_SIZE]; + memset(readBuffer, 0, MAX_BUFFER_SIZE); + curl = curl_easy_init(); + if (curl) { + curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST"); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "http"); + struct curl_slist* headers = NULL; + + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, readBuffer); + + headers = curl_slist_append(headers, "Content-Type: application/json"); + headers = curl_slist_append(headers, "Cookie: JSESSIONID=64EF3E9DDE22D9A15B9586AC83E60F15"); + curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); + + curl_easy_setopt(curl, CURLOPT_POSTFIELDS, jsonPayload); + + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); // ֹ֤Զ֤ + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); // ֹ֤ + res = curl_easy_perform(curl); + + if (res != CURLE_OK) { + fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); + return NULL; + } + + curl_slist_free_all(headers); + curl_easy_cleanup(curl); + } + else { + printf("Failed to initialize curl.\n"); + return NULL; + } + + return readBuffer; +} + +// ԭͣһµַвԭַеκοո +char* removeSpaces(const char* input) { + if (!input) return NULL; + + // ȼȥոַ + int lenWithoutSpaces = 0; + for (const char* p = input; *p; ++p) { + if (*p != ' ') { + ++lenWithoutSpaces; + } + } + + // 㹻ڴַ + char* output = (char*)malloc(lenWithoutSpaces + 1); + if (!output) return NULL; + + // Ʋոַַ + int index = 0; + for (const char* q = input; *q; ++q) { + if (*q != ' ') { + output[index++] = *q; + } + } + output[index] = '\0'; // ֹ + + return output; +} + + +#define MAX_ATTR_LENGTH 100 // 󳤶 +//jsonеtokenϢ +const char* extractValueFromJson(const char* response, const char* attr) { + // Ƴпո + char* response2 = removeSpaces(response); + printf("response2: %s\n", response2); + + // ʹþ̬飬עattrᳬMAX_ATTR_LENGTHַ + char attr_with_quotes[2 * MAX_ATTR_LENGTH + 3]; // ˫źð + snprintf(attr_with_quotes, sizeof(attr_with_quotes), "\"%s\":\"", attr); + sprintf(attr_with_quotes, "\"%s\":\"", attr); + + const char* value_start = strstr(response2, attr_with_quotes); + if (value_start == NULL) { + return NULL; // attr δҵ + } + value_start += strlen(attr_with_quotes); // ƶָ뵽ֵʼλ + + const char* value_end = strchr(value_start, '"'); + if (value_end == NULL) { + return NULL; // ˫δҵ + } + + // ȷҵǽֵ˫ţǶֵڵ˫ + if (*(value_end - 1) == '\\') { + do { + value_end = strchr(value_end + 1, '"'); + if (value_end == NULL) { + return NULL; // ת˫ţδҵת˫ţ򷵻ش + } + } while (*(value_end - 1) == '\\'); + } + + size_t value_length = value_end - value_start; + char* value = (char*)malloc((value_length + 1) * sizeof(char)); + if (value == NULL) { + return NULL; // ڴʧ + } + strncpy(value, value_start, value_length); + value[value_length] = '\0'; // ֹ + printf("value: %s\n", value); + + // ʱ + free(response2); + + return value; +} + + +void CreateDirectoryAndFile(const char* directory_path, const char* file_path) { + // Ŀ¼·תΪַ + wchar_t w_directory_path[MAX_PATH]; + MultiByteToWideChar(CP_UTF8, 0, directory_path, -1, w_directory_path, MAX_PATH); + + // ļǷڣ򴴽 + DWORD dwAttrib = GetFileAttributes(w_directory_path); + if (dwAttrib == INVALID_FILE_ATTRIBUTES || !(dwAttrib & FILE_ATTRIBUTE_DIRECTORY)) { + // ļвڣԴ + if (_wmkdir(w_directory_path) != 0) { + perror("Failed to create directory."); + return; + } + } + + // ļ·תΪַ + wchar_t w_file_path[MAX_PATH]; + MultiByteToWideChar(CP_UTF8, 0, file_path, -1, w_file_path, MAX_PATH); + + // ļǷڣ򴴽 + FILE* file = fopen(file_path, "r"); + if (file == NULL) { + // ļڣԴ򿪣׷ģʽ򿪣 + file = fopen(file_path, "a+"); + if (file == NULL) { + perror("Failed to create and open file."); + return; + } + fclose(file); // رոմļ + } + else { + fclose(file); // ļѴڣرմ򿪵ļ + } +} + +const char* extractLastPart(const char* url) { + if (url == nullptr) return nullptr; + + // һ '/' λ + const char* lastSlash = strrchr(url, '/'); + + // Ҳ '/', ԭַҪIJ + if (lastSlash == nullptr) return url; + + // ƶ '/' ĵһַӴʼλ + return lastSlash + 1; +} + +char* getCurrentTime() { + time_t nowtime; + time(&nowtime); // ȡǰʱ䣨197011 + tm* p = localtime(&nowtime); // תΪʱ + + // ̬仺ȷ㹻ɸʽʱַ + char* timeStr = (char*)malloc(sizeof(char) * 14); // ʽΪ"YYYYMMDDHHMMSS"14ַ+1'\0' + if (timeStr == NULL) { + perror("Memory allocation failed"); + return NULL; + } + + // ʹsnprintfʽʱ䵽 + int len = snprintf(timeStr, 14, "%04d%02d%02d%02d%02d", p->tm_year + 1900, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min); + if (len < 0) { + perror("Failed to format time"); + free(timeStr); + return NULL; + } + else if (len > 14) { + //ϲᷢΪΪ14ԿӴ˼ + perror("Formatted time exceeds buffer size"); + free(timeStr); + return NULL; + } + + return timeStr; +} + +/** + * + * @HandlerName: KSDY_Material2MES + * @HandlerType: ActionHandler + * @Description: ͨhandleϢMES + * @author: hcj + * @date: 2024520 + * + */ +int KSDY_Material2MES(EPM_action_message_t msg) { + + //ȡ + tag_t rootTask = NULLTAG; + EPM_ask_root_task(msg.task, &rootTask); + //ļкļǷ 򴴽 + const char* directory_path = "D:\\log"; + const char* file_path = "D:\\log\\KSDY_Material2MES.log"; + CreateDirectoryAndFile(directory_path, file_path); + + //־ļΪ׷ģʽ + auto logFile = std::make_unique("D:\\log\\KSDY_Material2MES.log", std::ios::app); + logFile->is_open(); + + //ȡǰʱ + auto now = std::chrono::system_clock::now(); + std::time_t time1 = std::chrono::system_clock::to_time_t(now); + std::string timeStr = std::ctime(&time1); + *logFile << "[" << timeStr.substr(0, timeStr.size() - 1) << "] "; + *logFile << "=========================MESstart===================" << std::endl; + + //ȡѡ + char* url = NULL; + ITKCALL(PREF_ask_char_value("KSDY_TC2MES_URL", 0, &url)); + *logFile << "ѡKSDY_TC2MES_URLΪ: " << (url ? url : "δ") << std::endl; + + if (url == NULL || strlen(url) == 0) { + *logFile << "ѡKSDY_TC2MES_URLδûΪա" << std::endl; + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ѡKSDY_TC2MES_URLδûΪա"); + return -1; + } + else { + // ȷurlЧٵextractMaterialInfo + url = extractMaterialInfo(url, "Material:"); + if (url) { + *logFile << "ȡMaterialϢɹ: " << url << std::endl; + } + else { + *logFile << "δܴѡȡMaterialϢ" << std::endl; + // 򷵻ش + } + } + *logFile << "ѡKSDY_TC2MES_URL" << url << std::endl; + + char* filePath = NULL; + ITKCALL(PREF_ask_char_value("KSDY_MesIntegrateLog_Address", 0, &filePath)); + *logFile << "ѡKSDY_MesIntegrateLog_AddressΪ: " << (filePath ? filePath : "δ") << std::endl; + + if (filePath == NULL || strlen(filePath) == 0) { + *logFile << "ѡKSDY_MesIntegrateLog_AddressδûΪա" << std::endl; + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ѡKSDY_MesIntegrateLog_AddressδûΪա"); + return -1; + } + + //json + char* attrArray[] = { "item_id","object_name","dy2_partClass","dy2_materialTrademark","dy2_supply","dy2_material","uom_tag","", + "owning_user" ,"object_desc" ,"dy2_partSource" ,"dy2_ecolor" ,"item_id" ,"dy2_surfaceTreatment" ,"" ,"" ,"dy2_weight2" , + "dy2_weight1" ,"dy2_supply" ,"dy2_wunit" ,"dy2_length" ,"dy2_width" ,"dy2_height" ,"dy2_size" ,"dy2_sunit" ,"dy2_cPurchase" , + "dy2_cSale" ,"dy2_cStock" ,"dy2_cProduce" ,"dy2_cOut" ,"dy2_cTransfer" };//tc + char* jsonAttr[] = { "MICode","MIName","MTID","MISize","MIPinPai","MICaiZhi","MIUnit","MIManageUser","MICreateUser","MIRemark" , + "attribute" ,"color" ,"tuhao" ,"bmcl" ,"ydyq" ,"zl" ,"mz" ,"jz" ,"supplier" ,"zlunit" ,"chang" ,"kuan" ,"gao" ,"tiji" , + "sizeunit" ,"yxcg" ,"yxxs" ,"yxkc" ,"yxsc" ,"yxww" ,"yxzczy" };//json + + //Ŀµ϶ + int attachments_num = 0; + tag_t* attachments = NULLTAG; + ITKCALL(EPM_ask_attachments(rootTask, EPM_target_attachment, &attachments_num, &attachments)); + + *logFile << "ʼJSON" << std::endl; + // JSONַ + string json_data = "["; + + //ƥ + for (int i = 0; i < attachments_num; i++) + { + char* type = NULL; + ITKCALL(AOM_ask_value_string(attachments[i], "object_type", &type)); + *logFile << "ʼȡ" << type << std::endl; + if (strcmp(type, "Dy2_DYPartRevision") == 0) + { + json_data += "{"; + //ƴӶJSON + *logFile << "ƴӶJSON" << std::endl; + for (int j = 0; j < sizeof(attrArray) / sizeof(attrArray[0]); j++) { + *logFile << "ʼȡ" << attrArray[j] << std::endl; + json_data += "\""; + json_data += jsonAttr[j]; + json_data += "\":"; + char* attrValue = NULL; + if (strcmp(attrArray[j], "uom_tag") == 0) { + //ȡλ + tag_t item = NULLTAG; + ITKCALL(ITEM_ask_item_of_rev(attachments[i], &item)); + tag_t dw = NULLTAG; + ITKCALL(AOM_ask_value_tag(item, "uom_tag", &dw)); + if (dw == NULLTAG) { + attrValue = ""; + } + else { + ITKCALL(AOM_ask_value_string(dw, "object_string", &attrValue)); + } + + } + else if (strcmp(attrArray[j], "owning_user") == 0) { + tag_t root_tag = NULLTAG; + ITKCALL(AOM_ask_value_tag(attachments[i], "owning_user", &root_tag)); + if (root_tag == NULLTAG) { + printf("δҵ\n"); + } + ITKCALL(AOM_ask_value_string(root_tag, "user_name", &attrValue)); + } + else if (strcmp(attrArray[j], "") == 0) { + attrValue = ""; + } + else { + ITKCALL(AOM_ask_value_string(attachments[i], attrArray[j], &attrValue)); + } + if (attrValue == NULL) { + attrValue = ""; + } + *logFile << "ֵΪ" << attrValue << std::endl; + json_data += "\""; + json_data += GbkToUtf8(attrValue); + json_data += "\""; + if (j != ((sizeof(attrArray) / sizeof(attrArray[0]))-1)) { + json_data += ","; + } + } + json_data += "}"; + json_data += ","; + } + } + + if (strcmp(json_data.c_str(), "[") == 0) { + return 0; + } + + //ɾһ + if (!json_data.empty()) json_data.pop_back(); + + json_data += "]"; + + *logFile << "json_data" << Utf8ToGbk(json_data.c_str()) << std::endl; + *logFile << "ʼpostMES" << std::endl; + + *logFile << "url" << url << std::endl; + + //postmes + char* request = sendPostRequest(json_data.c_str(), url); + + string requestData_new = Utf8ToGbk(request); + requestData_new += "}"; + *logFile << "requestData" << requestData_new << std::endl; + + + //洫ݲԼֵļ + const char* info = extractValueFromJson(requestData_new.c_str(), "info"); + *logFile << "info" << info << std::endl; + const char* lastPart = extractLastPart((const char*)url); + *logFile << "lastPart" << lastPart << std::endl; + char* time = getCurrentTime(); + *logFile << "time" << time << std::endl; + std::string fileName = std::string(lastPart) + "_" + std::string(info) + "_" + std::string(time); + *logFile << "fileName" << fileName << std::endl; + + *logFile << "ʼ־ļ" << std::endl; + const char* logFolder = filePath; + *logFile << "logFolder" << logFolder << std::endl; + std::string logpath = std::string(filePath) + "\\" + fileName + ".txt"; + *logFile << "logpath" << logpath << std::endl; + CreateDirectoryAndFile(logFolder, logpath.c_str()); + //־ļΪ׷ģʽFF + auto logFile2 = std::make_unique(logpath, std::ios::app); + logFile2->is_open(); + *logFile2 << "ݲ" << Utf8ToGbk(json_data.c_str()) << std::endl; + *logFile2 << "ֵ" << requestData_new << std::endl; + + //const char* code = extractValueFromJson(requestData_new.c_str(), "code"); + char codeValue[4]; // codeֵ3λֹ'\0' + const char* startPos; + + // "code":ĺλλcodeֵʼλ + startPos = strstr(requestData_new.c_str(), "\"code\":"); + if (startPos != NULL) { + startPos += 7; // "code":ĸַĶźͿո + strncpy(codeValue, startPos, 3); // 3ַcodeValueУȷᳬ߽ + codeValue[3] = '\0'; // ȷַβȷ + *logFile << "code" << codeValue << std::endl; + } + else { + printf("δҵcodeֵ\n"); + } + *logFile << "code" << codeValue << std::endl; + if (strcmp(codeValue,"200") == 0) { + //ִгɹ + } + else if (strcmp(codeValue, "400") == 0 || strcmp(codeValue, "500") == 0) { + //ִʧ + EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "ͬ쳣"); + return -1; + } + + return ITK_ok; +} \ No newline at end of file diff --git a/mdbks_connor_itk/ReadMe.txt b/mdbks_connor_itk/ReadMe.txt new file mode 100644 index 0000000..0f2f6f5 --- /dev/null +++ b/mdbks_connor_itk/ReadMe.txt @@ -0,0 +1,30 @@ +======================================================================== + 控制台应用程序:XNY_itk 项目概述 +======================================================================== + +应用程序向导已为您创建了此 XNY_itk 应用程序。 + +本文件概要介绍组成 XNY_itk 应用程序的每个文件的内容。 + + +XNY_itk.vcxproj + 这是使用应用程序向导生成的 VC++ 项目的主项目文件,其中包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。 + +XNY_itk.vcxproj.filters + 这是使用“应用程序向导”生成的 VC++ 项目筛选器文件。它包含有关项目文件与筛选器之间的关联信息。在 IDE 中,通过这种关联,在特定节点下以分组形式显示具有相似扩展名的文件。例如,“.cpp”文件与“源文件”筛选器关联。 + +XNY_itk.cpp + 这是主应用程序源文件。 + +///////////////////////////////////////////////////////////////////////////// +其他标准文件: + +StdAfx.h, StdAfx.cpp + 这些文件用于生成名为 XNY_itk.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。 + +///////////////////////////////////////////////////////////////////////////// +其他注释: + +应用程序向导使用“TODO:”注释来指示应添加或自定义的源代码部分。 + +///////////////////////////////////////////////////////////////////////////// diff --git a/mdbks_connor_itk/Sync_Elec_Access_Java.cpp b/mdbks_connor_itk/Sync_Elec_Access_Java.cpp new file mode 100644 index 0000000..6bc97e7 --- /dev/null +++ b/mdbks_connor_itk/Sync_Elec_Access_Java.cpp @@ -0,0 +1,82 @@ +#include "mdbks_register.h" +#include "ict/ict_userservice.h" +#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF") + +extern "C" int POM_AM__set_application_bypass(logical bypass); +using namespace std; +int Sync_Elec_Access_Java(void* return_data) +{ + HRESULT hr = NULL; + _ConnectionPtr m_pConnection; // ݿ + _RecordsetPtr m_pRecordset; // + _CommandPtr m_pCommand; // ¼ + ::CoInitialize(NULL); //ʼ + int ifail = ITK_ok; + tag_t attachment; + ITKCALL(USERARG_get_tag_argument(&attachment)); + char* flag = NULL; + char server_string[10]; + char** pre_values; + int valueNum = 0; + PREF_ask_char_values("ITK_Conn_Access", &valueNum, &pre_values); + m_pConnection.CreateInstance("ADODB.Connection"); //ʵ + try + { + //m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\172.18.11.83/eda/EDA_1.MDB","","",adModeUnknown); //office2003µͰ汾ʹ + //office߰汾ʹ,Ӳɹ ݿٷг ûаװ,װ <<ݿٷг>> + //m_pConnection->ConnectionString = pre_values[0]; + printf("%s\n", pre_values[0]); + m_pConnection->Open(pre_values[0], "", "", adModeUnknown); + printf("ݿӳɹ\n"); + char* item_id; + AOM_ask_value_string(attachment, "item_id", &item_id); + printf("ʼ--%s\n", item_id); + char* describeSelect = (char*)calloc(1024, sizeof(char)); + sprintf(describeSelect, "SELECT ItemID FROM [%s] WHERE ItemID = %s ", pre_values[1], item_id); + m_pRecordset.CreateInstance(__uuidof(Recordset)); //ʵ + m_pRecordset->Open(describeSelect, m_pConnection.GetInterfacePtr(), adOpenStatic, adLockOptimistic, adCmdText); + + if (!m_pRecordset->adoEOF) + { + printf("鵽ݲΪա\n"); + _variant_t var; //ӽȡݷŵvar + char* name = NULL; + var = m_pRecordset->GetCollect("ItemID"); //Ҫȡֶεơ + if (var.vt != VT_NULL) + { + name = _com_util::ConvertBSTRToString((_bstr_t)var); //תchar* + } + //޸ + string updateSql = dealPre(attachment, item_id, pre_values[1], (char*)"update"); + printf("ҪµΪ%s\n", updateSql.c_str()); + //²ѯ + if (!updateSql.empty()) { + printf("ִеΪ%s\n", updateSql.c_str()); + m_pConnection->Execute(_bstr_t(updateSql.c_str()), 0, adCmdText); + } + //AOM_set_value_string(attachment, "lb2_sftb", "ͬ"); + strcpy(flag, "Ѹ³ɹ"); + m_pRecordset->MoveNext(); + } + else { + //һ + string insertSql = dealPre(attachment, item_id, pre_values[1], (char*)"insert"); + if (!insertSql.empty()) { + printf("ִеΪ%s\n", insertSql.c_str()); + m_pConnection->Execute(_bstr_t(insertSql.c_str()), 0, adCmdText); + } + //AOM_set_value_string(attachment, "lb2_sftb", "ͬ"); + strcpy(flag, "ɹ"); + } + } + catch (_com_error e) + { + printf("ݿʧܣ\n"); + strcpy(flag, "ݿʧ"); + } + tc_strcpy(server_string, flag); + *((char**)return_data) = + (char*)MEM_alloc((strlen(server_string) + 1) * sizeof(char)); + tc_strcpy(*((char**)return_data), server_string); + return ifail; +} \ No newline at end of file diff --git a/mdbks_connor_itk/connor_itk_util.cpp b/mdbks_connor_itk/connor_itk_util.cpp new file mode 100644 index 0000000..e79e364 --- /dev/null +++ b/mdbks_connor_itk/connor_itk_util.cpp @@ -0,0 +1,635 @@ +#include +#include +#ifdef WIN32 +#include +#include +#else +#include +#endif +#include "connor_itk_util.h" +#include +#include + +#define ARGS_LENGTH 200 +#define ARGS_NAME_DEBUG "-debug" +#define DEBUG "-debug=" +#define MAX_PRINTLINE_LENGTH 2000 +#define MAX_PATH_LENGTH 2000 +#define MAX_ARGUMENT_LENGTH 400 +#define MAX_FILE_EXT_LENGTH 10 +#define TRUE_FLAG 1 +#define FALSE_FLAG 0 +#define DETAILLOG 1 + +void ECHO(char* format, ...) +{ + //if( !YFJC_OPT_DEBUG ) + // return; + + char msg[4096]; + va_list args; + + va_start(args, format); + vsprintf(msg, format, args); + va_end(args); + + printf(msg); + TC_write_syslog(msg); +} + +FILE* logFile = NULL; + +/*=============================================================================* + * FUNCTION: current_time + * PURPOSE : get the current datetime + * INPUT: + * date_t* date_tag // current date time tag + * + * RETURN: + * void + *============================================================================*/ +void current_time(date_t* date_tag) +{ + time_t ltime; + struct tm* today; + + // Set time zone from TZ environment variable. If TZ is not set, + // the operating system is queried to obtain the default value + // for the variable. + // + //_tzset(); + + // Get UNIX-style time and display as number and string. + time(<ime); + + today = localtime(<ime); + date_tag->year = today->tm_year + 1900; + date_tag->month = today->tm_mon; + date_tag->day = today->tm_mday; + date_tag->hour = today->tm_hour; + date_tag->minute = today->tm_min; + date_tag->second = today->tm_sec; +} +/*=============================================================================* + * FUNCTION: CreateLogFile + * PURPOSE : create log file + * INPUT: + * char* FunctionName // the funtion which need to create log file + * FILE** logFile // out: the log file pointer + * + * RETURN: + * void + *============================================================================*/ +void CreateLogFile(char* FunctionName, char** fullname) +{ + int i = 0, ifail = ITK_ok; + //date_t status_now; + //char* date_string = NULL; + char date_string[MAX_PATH_LENGTH]; + char logFileDir[MAX_PATH_LENGTH]; + char logFileName[MAX_PATH_LENGTH]; + + char* session_uid = NULL; + tag_t session_tag = NULLTAG; + time_t now; + struct tm* p; + + time(&now); + + logFile = NULL; + //current_time(&status_now); + p = localtime(&now); + + memset(date_string, 0, sizeof(date_string)); + //sprintf(date_string,"%4d%02d%02d%02d%02d%02d",1900+p->tm_year,p->tm_mon+1 ,p->tm_mday ,p->tm_hour,p->tm_min ,p->tm_sec ); + sprintf(date_string, "%4d%02d%02d", 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday); + //if( DATE_date_to_string( status_now, "%Y%m%d%H%M%S", &date_string) != ITK_ok ) + //ifail = ITK_date_to_string (status_now, &date_string ); + //if (ifail) + //{ + // printf("!*ERROR*!: Failed to get current date time\n"); + // goto CLEANUP; + //} + + memset(logFileDir, 0, sizeof(logFileDir)); + memset(logFileName, 0, sizeof(logFileName)); + //get log dir + sprintf(logFileDir, "%s", getenv("TEMP")); + printf("\n log file dir: %s\n", logFileDir); + //try to change dir to TC_USER_LOG_DIR + if (chdir(logFileDir) != ITK_ok) + { + //not set TC_USER_LOG_DIR + //log in to default TC_LOG + memset(logFileDir, 0, sizeof(logFileDir)); + sprintf(logFileDir, "%s", getenv("TC_LOG")); + printf("\n TC_USER_LOG_DIR invalide, log file dir: %s\n", logFileDir); + if (chdir(logFileDir) != ITK_ok) + { + //still can not change to log dir + printf("!*ERROR*!: Failed to change dir to TC_USER_LOG_DIR\n"); + goto CLEANUP; + } + } + + //get session_uid to make sure the log file name unique + POM_ask_session(&session_tag); + ITK__convert_tag_to_uid(session_tag, &session_uid); + + + //get logFileName + //sprintf(logFileName, "%s_%s_%s.log", FunctionName, session_uid, date_string); + sprintf(logFileName, "%s_%s.log", FunctionName, date_string); + printf("log file name: %s\n", logFileName); + + *fullname = (char*)MEM_alloc(sizeof(char) * 512); + sprintf(*fullname, "%s\\%s", logFileDir, logFileName); + + //for(i = 0; _access((char *)logFileName, 4) == 0; i++) + /*{ + memset(logFileName, 0, sizeof(logFileName)); + sprintf(logFileName, "%s_%s_%s_%d.log", FunctionName, session_uid, date_string, i); + } + printf("final log file name: %s\n", logFileName);*/ + + //create log file + logFile = fopen(logFileName, "a"); + +CLEANUP: + //DOFREE(date_string); + DOFREE(session_uid); +} + + +/*=============================================================================* + * FUNCTION: WriteLog + * PURPOSE : write log, if debug log File not null, write log message to log File + * INPUT: + * const char* format // debug message string + * + * RETURN: + * void + *============================================================================*/ +void WriteLog(const char* format, ...) +{ + va_list arg; + char tmp[MAX_PRINTLINE_LENGTH]; + + if (logFile) + { + //get the message + memset(tmp, 0, sizeof(tmp)); + va_start(arg, format); + vsprintf(tmp, format, arg); + va_end(arg); + + //----------print to command window for trace--------// + printf("%s\n", tmp); + + //print message to log file + fprintf(logFile, "%s\n", tmp); + fflush(logFile); + } + else + { + printf("*!Error!*: Log File Not Exist\n"); + } +} + +void CloseLog(void) +{ + if (logFile) + { + fclose(logFile); + logFile = NULL; + } +} + +char* getTime() { + time_t now; + struct tm* p; + char date_string[30]; + time(&now); + //logFile = NULL; + //current_time(&status_now); + p = localtime(&now); + memset(date_string, 0, sizeof(date_string)); + //sprintf(date_string, "%4d-%02d-%02d %02d:%02d:%02d", 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec); + sprintf(date_string, "%4d-%02d-%02d %02d-%02d-%02d", 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec); + char* dateC = (char*)malloc(sizeof(char) * (strlen(date_string) + 1)); + strcpy(dateC, date_string); + return dateC; +} + +string getUUid() +{ + GUID guid; + char buffer[64] = { 0 }; + if (CoCreateGuid(&guid)) + { + printf("create guid error\n"); + return ""; + } + //_snprintf(buffer, sizeof(buffer), "%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X", guid.Data1, guid.Data2, guid.Data3, + // guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3], guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]); + sprintf_s(buffer, sizeof(buffer), + "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x", + guid.Data1, guid.Data2, guid.Data3, + guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3], + guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]); + + return buffer; +} + +char* GbkToUtf8(const char* src_str) +{ + int len = MultiByteToWideChar(CP_ACP, 0, src_str, -1, NULL, 0); + wchar_t* wstr = (wchar_t*)MEM_alloc((len + 1) * sizeof(wchar_t)); + memset(wstr, 0, len + 1); + MultiByteToWideChar(CP_ACP, 0, src_str, -1, wstr, len); + len = WideCharToMultiByte(CP_UTF8, 0, wstr, -1, NULL, 0, NULL, NULL); + char* str = (char*)MEM_alloc((len + 1) * sizeof(char)); + + memset(str, 0, len + 1); + WideCharToMultiByte(CP_UTF8, 0, wstr, -1, str, len, NULL, NULL); + return str; +} + +char* Utf8ToGbk(const char* src_str) +{ + int len = MultiByteToWideChar(CP_UTF8, 0, src_str, -1, NULL, 0); + wchar_t* wszGBK = (wchar_t*)MEM_alloc((len + 1) * sizeof(wchar_t)); + memset(wszGBK, 0, len * 2 + 2); + MultiByteToWideChar(CP_UTF8, 0, src_str, -1, wszGBK, len); + len = WideCharToMultiByte(CP_ACP, 0, wszGBK, -1, NULL, 0, NULL, NULL); + char* szGBK = (char*)MEM_alloc((len + 1) * sizeof(char)); + + memset(szGBK, 0, len + 1); + WideCharToMultiByte(CP_ACP, 0, wszGBK, -1, szGBK, len, NULL, NULL); + return szGBK; +} + +void starTime() { + time_t now; + struct tm* p; + time(&now); + p = localtime(&now); + WriteLog("start time %4d%02d%02d%02d%02d%02d", 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec); +} + +/** +* +* жijǷΪItemRevision +* +*/ +logical checkIsItemRevision(tag_t objtag) { + tag_t type = NULLTAG; + tag_t item_type = NULLTAG; + logical isItems = false; + ITKCALL(TCTYPE_ask_object_type(objtag, &type)); + ITKCALL(TCTYPE_find_type("ItemRevision", "", &item_type)); + if (item_type != NULLTAG) { + logical isok = FALSE; + ITKCALL(TCTYPE_is_type_of(type, item_type, &isok)); + if (isok) { + isItems = TRUE; + } + else { + isItems = FALSE; + } + } + return isItems; +} + +int checkIsInType(tag_t objtag, string parentType) { + tag_t type = NULLTAG; + tag_t item_type = NULLTAG; + ITKCALL(TCTYPE_ask_object_type(objtag, &type)); + ITKCALL(TCTYPE_find_type(parentType.c_str(), "", &item_type)); + if (item_type != NULLTAG) { + logical isok = FALSE; + ITKCALL(TCTYPE_is_type_of(type, item_type, &isok)); + if (isok) { + return 1; + } + else { + return 0; + } + } + return 0; +} + +int getPrefStrings(const char* preference, vector& pref_vec) +{ + int ifail = ITK_ok, i = 0, j = 0, k = 0, num = 0; + char** values; + ITKCALL(ifail = PREF_ask_char_values(preference, &num, &values)); + for (i = 0; i < num; i++) + { + pref_vec.push_back(values[i]); + } + DOFREE(values); + return ifail; +} +bool isTypeOf(tag_t objtag, const char* type_name) { + tag_t type = NULLTAG; + TCTYPE_ask_object_type(objtag, &type); + tag_t item_type = NULLTAG; + TCTYPE_find_type(type_name, "", &item_type); + bool is_type = false; + if (item_type != NULLTAG) { + logical isok = FALSE; + TCTYPE_is_type_of(type, item_type, &isok); + if (isok) { + is_type = true; + } + } + return is_type; +} + +void Split(string strArg, string spliter, vector& ans) +{ + ans.clear(); + size_t index0 = 0; + string one_arg; + if (strArg.find_first_not_of(' ') == string::npos) + strArg = ""; + int len = spliter.size(); + while (strArg.size() > 0) + { + index0 = strArg.find(spliter); + if (index0 != string::npos) + { + one_arg = strArg.substr(0, index0); + strArg = strArg.substr(index0 + len); + ans.push_back(one_arg); + if (strArg.size() == 0) { + ans.push_back(strArg); + } + } + else + { + ans.push_back(strArg); + break; + } + } +} + +string dealPre(tag_t attachment, char* item_id, char* form_name, char* deal_type,tag_t classificationObject,char* typePref) { + char** pre_values = NULL; + int valueNum = 0; + WriteLog("(char*)tableName.c_str()============%s\n", form_name); + PREF_ask_char_values(typePref, &valueNum, &pre_values); + if (pre_values == NULL) { + return ""; + } + WriteLog("1\n"); + tag_t item, * forms; + ITEM_ask_item_of_rev(attachment, &item); + WriteLog("2\n"); + int rev_cnt = 0; + ITKCALL(AOM_ask_value_tags(attachment, "IMAN_master_form_rev", &rev_cnt, &forms)); + char* item_type, * rev_type, * form_type; + WriteLog("3\n"); + ITKCALL(AOM_ask_value_string(attachment, "object_type", &rev_type)); + ITKCALL(AOM_ask_value_string(item, "object_type", &item_type)); + ITKCALL(AOM_ask_value_string(forms[0], "object_type", &form_type)); + printf("ͷֱΪ%s--------%s------%s\n", item_type, rev_type, form_type); + WriteLog("4\n"); + string sql; + + + + if (strcmp("update", deal_type) == 0) { + sql.append("UPDATE ["); + sql.append(form_name); + sql.append("] SET "); + for (int i = 0; i < valueNum; i++) + { + WriteLog("5\n"); + vector one; + vector two; + Split(pre_values[i], ".", one); + Split(one[1], "=", two); + char* temp_value = NULL; + sql.append("["); + sql.append(two[1]); + sql.append("]"); + if (strcmp("ItemID", two[1].c_str()) == 0) { + WriteLog("6\n"); + sql.append("='"); + if (strcmp(item_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(item, two[0].c_str(), &temp_value)); + } + else if (strcmp(rev_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(attachment, two[0].c_str(), &temp_value)); + } + else if (strcmp(form_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(forms[0], two[0].c_str(), &temp_value)); + } + else if (classificationObject != NULL && strcmp(one[0].c_str(),"classField") == 0) { + ICS_ask_attribute_value(classificationObject, two[0].c_str(), &temp_value); + } + if (temp_value != NULL) { + sql.append(temp_value); + + } + sql.append("',"); + } + else { + WriteLog("7\n"); + sql.append("='"); + if (strcmp(item_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(item, two[0].c_str(), &temp_value)); + } + else if (strcmp(rev_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(attachment, two[0].c_str(), &temp_value)); + } + else if (strcmp(form_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(forms[0], two[0].c_str(), &temp_value)); + } + else if (classificationObject != NULL && strcmp(one[0].c_str(), "classField") == 0) { + ICS_ask_attribute_value(classificationObject, two[0].c_str(), &temp_value); + } + if (temp_value != NULL) { + sql.append(temp_value); + + } + sql.append("',"); + } + } + WriteLog("8\n"); + sql.erase(sql.size() - 1, 1); + sql.append(" WHERE \"ItemID\" = '"); + sql.append(item_id); + sql.append("'"); + } + else if (strcmp("insert", deal_type) == 0) { + sql.append("INSERT INTO ["); + sql.append(form_name); + sql.append("]("); + //ֵֶ + WriteLog("9\n"); + for (int i = 0; i < valueNum; i++) + { + vector one; + Split(pre_values[i], "=", one); + sql.append("["); + sql.append(one[1]); + sql.append("]"); + if (i < valueNum - 1) { + sql.append(","); + } + } + WriteLog("10\n"); + sql.append(") VALUES ("); + //ֵֶεֵ + for (int i = 0; i < valueNum; i++) + { + WriteLog("11\n"); + vector one; + WriteLog("11 1\n"); + vector two; + WriteLog("11 2\n"); + Split(pre_values[i], ".", one); + WriteLog("11 3\n"); + Split(one[1], "=", two); + WriteLog("11 4\n"); + char* temp_value = NULL; + WriteLog("11 5\n"); + if (strcmp("ItemID", two[1].c_str()) == 0) { + sql.append("'"); + if (strcmp(item_type, one[0].c_str()) == 0) { + WriteLog("11 6\n"); + ITKCALL(AOM_ask_value_string(item, two[0].c_str(), &temp_value)); + } + else if (strcmp(rev_type, one[0].c_str()) == 0) { + WriteLog("11 7\n"); + ITKCALL(AOM_ask_value_string(attachment, two[0].c_str(), &temp_value)); + } + else if (strcmp(form_type, one[0].c_str()) == 0) { + WriteLog("11 8\n"); + ITKCALL(AOM_ask_value_string(forms[0], two[0].c_str(), &temp_value)); + } + else if (classificationObject != NULL && strcmp(one[0].c_str(), "classField") == 0) { + WriteLog("11 9\n"); + ICS_ask_attribute_value(classificationObject, two[0].c_str(), &temp_value); + WriteLog("11 10\n"); + } + WriteLog("11 11\n"); + if (temp_value != NULL) { + sql.append(temp_value); + WriteLog("11 12\n"); + + WriteLog("11 13\n"); + } + sql.append("',"); + } + else { + WriteLog("12\n"); + sql.append("'"); + if (strcmp(item_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(item, two[0].c_str(), &temp_value)); + } + else if (strcmp(rev_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(attachment, two[0].c_str(), &temp_value)); + } + else if (strcmp(form_type, one[0].c_str()) == 0) { + ITKCALL(AOM_ask_value_string(forms[0], two[0].c_str(), &temp_value)); + } + else if (classificationObject != NULL && strcmp(one[0].c_str(), "classField") == 0) { + ICS_ask_attribute_value(classificationObject, two[0].c_str(), &temp_value); + } + WriteLog("12 11\n"); + if (temp_value != NULL) { + sql.append(temp_value); + WriteLog("12 12\n"); + + WriteLog("12 13\n"); + } + sql.append("',"); + } + } + WriteLog("13\n"); + sql.erase(sql.size() - 1, 1); + sql.append(")"); + } + return sql; +} +//ȡַָеһ +char* extractMaterialInfo(const char* input,const char* keyword) { + const char* start = strstr(input, keyword); + if (start == NULL) { + printf("Keyword 'Material:' not found in the input.\n"); + return NULL; + } + // ƶؼʺַʼȡ + start += strlen(keyword); + + // £ǼûַҪֱӼʣַȲ + size_t len = strlen(start); + char* result = (char*)malloc(len + 1); // 㹻Ŀռ䲢һλø'\0' + if (result) { + strcpy(result, start); // ƴMaterial:浽ַ + } + else { + printf("Memory allocation failed.\n"); + return NULL; + } + return result; +} + +/******************************************************************* +* +*ǩϢд뵽мļ +* +*@param file_content ǩϢ +*@param item_id id +*@param file_name ļ +* +*******************************************************************/ +int Supor_create_signinfo_file(char* file_content, char* item_id, char** file_name) +{ + time_t now; + struct tm* p; + FILE* filePtr = NULL; + char temp_dir[MAX_PATH_LENGTH]; + char local_path[MAX_PATH] = ""; + char date_string[MAX_PATH_LENGTH]; + memset(temp_dir, 0, sizeof(temp_dir)); + memset(local_path, 0, sizeof(local_path)); + sprintf(temp_dir, "%s", getenv("TEMP")); + printf("\n file dir: %s\n", temp_dir); + time(&now); + p = localtime(&now); + if (chdir(temp_dir) != ITK_ok) + { + memset(temp_dir, 0, sizeof(temp_dir)); + sprintf(temp_dir, "%s", getenv("TC_LOG")); + printf("\n TC_USER_LOG_DIR invalide, log file dir: %s\n", temp_dir); + if (chdir(temp_dir) != ITK_ok) + { + printf("!*ERROR*!: Failed to change dir to TC_USER_LOG_DIR\n"); + + } + } + memset(date_string, 0, sizeof(date_string)); + if (item_id != NULL) { + sprintf(date_string, "%s_%4d%02d%02d%02d%02d%02d.dat", item_id, 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec); + } + else + { + sprintf(date_string, "%4d%02d%02d%02d%02d%02d.dat", 1900 + p->tm_year, p->tm_mon + 1, p->tm_mday, p->tm_hour, p->tm_min, p->tm_sec); + } + printf("file name: %s\n", date_string); + filePtr = fopen(date_string, "w"); + printf("create the temp dat file success!\n"); + *file_name = (char*)MEM_alloc(sizeof(char) * 512); + sprintf(local_path, "%s\\%s", temp_dir, date_string); + strcpy((*file_name), local_path); + fprintf(filePtr, "%s", file_content); + //fwrite(file_content, sizeof(char), strlen(file_content), filePtr); + fclose(filePtr); + + return ITK_ok; +} \ No newline at end of file diff --git a/mdbks_connor_itk/connor_itk_util.h b/mdbks_connor_itk/connor_itk_util.h new file mode 100644 index 0000000..a3e8a52 --- /dev/null +++ b/mdbks_connor_itk/connor_itk_util.h @@ -0,0 +1,72 @@ +#pragma once +#include +#include +#include +//#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +using namespace std; +//#include +//#include +//#include +//#include + +//#include +//#include +#ifdef __cplusplus +extern "C" { +#endif + +#define DOFREE(obj) \ +{ \ + if(obj) \ + { \ + MEM_free(obj); \ + obj = NULL; \ + } \ +} +void ECHO(char* format, ...); +void CreateLogFile(char* FunctionName, char** fullname); +void WriteLog(const char* format, ...); +void CloseLog(void); +string getUUid(); +void current_time(date_t* date_tag); +char* getTime(); +char* GbkToUtf8(const char* src_str); +char* Utf8ToGbk(const char* src_str); +void starTime(); +char* extractMaterialInfo(const char* str1, const char* str2); +logical checkIsItemRevision(tag_t objtag); +int checkIsInType(tag_t objtag, string parentType); +int getPrefStrings(const char* preference, vector& pref_vec); +bool isTypeOf(tag_t objtag, const char* type_name); +void Split(string strArg, string spliter, vector& ans); +string dealPre(tag_t attachment, char* item_id, char* form_name, char* deal_type, tag_t classificationObject,char* typePref); +int Supor_create_signinfo_file(char* file_content, char* item_id, char** file_name); +#ifdef __cplusplus +} +#endif \ No newline at end of file diff --git a/mdbks_connor_itk/epm_register_handler.cpp b/mdbks_connor_itk/epm_register_handler.cpp new file mode 100644 index 0000000..4d905d6 --- /dev/null +++ b/mdbks_connor_itk/epm_register_handler.cpp @@ -0,0 +1,268 @@ +/*=================================================================================================== + Copyright(c) 2011 Siemens PLM Software Corp. All rights reserved. + Unpublished - All rights reserved +==================================================================================================== +File description: + + Filename : epm_register_handler.c + + This file registers functions which are called when Teamcenter is being initialized + +==================================================================================================== +Date Name Description of Change +2011-8-21 Ray creation + +$HISTORY$ +==================================================================================================*/ + +#pragma warning (disable: 4819) + +/** +* @headerfile tcua 头文件 +*/ +#include +#include +#include +#include + +/** +* @headerfile standard c & cpp header files +*/ +#include +#include +#include +#include +#include +#include +#include + + +/** +* @headerfile user's header files +*/ +#include "epm_register_handler.h" +#include "mdbks_register.h" +#include "connor_itk_util.h" +#define LIMITDAY 2016 + +int checkvalue(char* str) +{ + + int i; + for (i=0;i + +#ifdef __cplusplus +extern "C" { +#endif + +extern DLLAPI int USERSERVICE_custom_register_handlers(int *, va_list); +extern DLLAPI int USERSERVICE_custom_register_methods(int *decision, va_list args); + + +#ifdef __cplusplus +} +#endif + +#endif + + +/** +* @} +*/ \ No newline at end of file diff --git a/mdbks_connor_itk/lib_custom_main.cpp b/mdbks_connor_itk/lib_custom_main.cpp new file mode 100644 index 0000000..d0b4cc2 --- /dev/null +++ b/mdbks_connor_itk/lib_custom_main.cpp @@ -0,0 +1,53 @@ + +#pragma warning (disable: 4819) + +/** +* @headerfile tcua 头文件 +*/ +#include +#include "epm_register_handler.h" +#include +#include "connor_itk_util.h" +#ifdef __cplusplus +extern "C" { +#endif + + + /** + * @fn extern "C" DLLAPI int liborigin_register_callbacks + * @return usually return ITK_ok + * @brief liborigin customization entry + * 此函数必须有规范的写法,必须以dll的名称加上"_"开头 + */ + + DLLAPI int mdbks_connor_itk_register_callbacks() + { + + char* log_file = NULL; + + printf("创建日志文件\n"); + char* TO_SRM = (char*)malloc(sizeof("Main")); + strcpy(TO_SRM, "Main"); + CreateLogFile(TO_SRM, &log_file); + + int ifail = ITK_ok; + WriteLog("*******************************************************************************\n"); + WriteLog("* mdbks_connor_itk register_callbacks is starting *\n"); + WriteLog("*******************************************************************************\n"); + + + ITKCALL( ifail = CUSTOM_register_exit("mdbks_connor_itk","USER_gs_shell_init_module", + (CUSTOM_EXIT_ftn_t)USERSERVICE_custom_register_handlers) ); + fprintf( stdout, "\n mdbks_connor_itk registering USERSERVICE_custom_register_handlers completed!\n" ); + WriteLog("mdbks_connor_itk registering USERSERVICE_custom_register_handlers completed!"); + ITKCALL(ifail = CUSTOM_register_exit("mdbks_connor_itk", "USERSERVICE_register_methods", + (CUSTOM_EXIT_ftn_t)USERSERVICE_custom_register_methods)); + fprintf(stdout, "\n mdbks_connor_itk registering USERSERVICE_custom_register_methods completed!\n"); + WriteLog("mdbks_connor_itk registering USERSERVICE_custom_register_methods completed!"); + CloseLog(); + return ifail; + } + +#ifdef __cplusplus +} +#endif \ No newline at end of file diff --git a/mdbks_connor_itk/mdbks_connor_itk.vcxproj b/mdbks_connor_itk/mdbks_connor_itk.vcxproj new file mode 100644 index 0000000..4333661 --- /dev/null +++ b/mdbks_connor_itk/mdbks_connor_itk.vcxproj @@ -0,0 +1,178 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {8240A4EB-EBA7-448B-B846-2FEC53074C73} + Win32Proj + mdbks_connor_itk + 10.0 + mdbks_connor_itk + + + + Application + true + v142 + Unicode + + + Application + false + v142 + true + Unicode + + + DynamicLibrary + true + v142 + Unicode + + + DynamicLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + NotUsing + Level3 + MaxSpeed + WIN32;NDEBUG;_CONSOLE;IPLIB=none;%(PreprocessorDefinitions) + true + D:\WorkEnvironment\tc14ITK\include_cpp;D:\WorkEnvironment\tc14ITK\include;D:\moduo\include;D:\moduo\include_cpp;%(AdditionalIncludeDirectories) + + + Console + true + C:\JKTC11\Siemens\Teamcenter\OTW11\OCI\lib\MSVC;D:\WorkEnvironment\tc14ITK\lib;D:\WorkEnvironment\tc14ITK\oci\lib\msvc;%(AdditionalLibraryDirectories) + D:\WorkEnvironment\tc14ITK\lib\*.lib;%(AdditionalDependencies) + libuser_exits.ar.lib + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + NotUsing + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;IPLIB=none;%(PreprocessorDefinitions) + + + D:\WorkEnvironment\tc13ITK\oci\include;D:\WorkEnvironment\libcurl-vc15-x64-release-dll-ipv6-sspi-schannel\include;D:\WorkEnvironment\tc14ITK\oci\include;D:\source\锡压\mdbks_connor_itk\curl\include;D:\WorkEnvironment\tc14ITK\include_cpp;D:\WorkEnvironment\tc14ITK\include;D:\moduo\include;D:\moduo\include_cpp;%(AdditionalIncludeDirectories) + false + + + Console + true + true + true + D:\WorkEnvironment\tc14ITK\oci\lib\msvc;D:\instantclient_19_12\sdk\lib\msvc;I:\tc10lib\MSVC;%(AdditionalLibraryDirectories) + D:\WorkEnvironment\tc14ITK\lib\*.lib;%(AdditionalDependencies) + libuser_exits.ar.lib + $(OutDir)mdbks_connor_itk.dll + RequireAdministrator + true + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mdbks_connor_itk/mdbks_connor_itk.vcxproj.filters b/mdbks_connor_itk/mdbks_connor_itk.vcxproj.filters new file mode 100644 index 0000000..bc8a36c --- /dev/null +++ b/mdbks_connor_itk/mdbks_connor_itk.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {2799e3e0-5454-43a6-a04a-5627cde49936} + + + {88c2de69-1cc0-4edb-a6ba-b56cb3ec6551} + + + + + + + + epm_handler + + + 头文件 + + + common + + + common + + + + + common + + + epm_handler + + + common + + + common + + + 资源文件 + + + 资源文件 + + + \ No newline at end of file diff --git a/mdbks_connor_itk/mdbks_register.h b/mdbks_connor_itk/mdbks_register.h new file mode 100644 index 0000000..642b8f2 --- /dev/null +++ b/mdbks_connor_itk/mdbks_register.h @@ -0,0 +1,15 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "connor_itk_util.h" +using namespace std; +extern "C" int POM_AM__set_application_bypass(logical bypass); +//int PFZD_check_type_properties(EPM_rule_message_s msg); +int KSDY_Material2MES(EPM_action_message_t msg); +int KSDY_DrawToMES(EPM_action_message_t msg); \ No newline at end of file diff --git a/mdbks_connor_itk/ocilib.cpp b/mdbks_connor_itk/ocilib.cpp new file mode 100644 index 0000000..a9bbb21 --- /dev/null +++ b/mdbks_connor_itk/ocilib.cpp @@ -0,0 +1,441 @@ +/*===================================================================================================================== + Copyright(c) 2012 ORIGIN. + Unpublished - All rights reserved +======================================================================================================================= +File description: + + Filename: ocilib.cxx + Module : OCI + + This file describes OCI library Package. + +======================================================================================================================= +Date Name Description of Change +1-Feb-2015 Ray li Initialize creation +$HISTORY$ +=====================================================================================================================*/ +#include "ocilib.h" +#include + +#define NUM 100 +#define USERNAME "infodba" +#define PASSWORD "infodba" +#define DBNAME "tc" + + +// 定义句柄结构 +typedef struct { + OCIEnv* p_env; //OCI environment handle 环境句柄 + OCIError* p_err; //OCI error handle 错误句柄 + OCISvcCtx* p_svc; //OCI service context handel 服务上下文句柄 + OCIServer* p_ser; //OCI server handle 服务器句柄 + OCISession* p_usr; //OCI user session handle 用户会话句柄 + OCIStmt* p_sql; //OCI statement handle 语句句柄 + OCIDefine* p_dfn; //OCI define handle 定义句柄 + OCIBind* p_bnd; //OCI bind handle 绑定句柄 +}OCIHandleInfo; + + +// 定义错误句柄结构 +typedef struct { + OCIEnv* p_env; + OCIError* p_err; + OCISvcCtx* p_svc; + OCIStmt* p_sql; + OCIDefine* p_dfn; + OCIBind* p_bnd; +}OCIDATA; + + +// 定义执行语句时候的输入参数 +typedef struct { + char value[NUM][NUM]; + char type[NUM][NUM]; +}SqlField; + + +// 定义查询语句时候的输入,输出参数 +typedef struct { + int naIntValue[NUM]; + int nIntNum; + char caCharValue[500][500]; + int nCharNum; +}SqlSelField; + +OCIHandleInfo* ociHandle = NULL; +OCIHandleInfo ociHand; + +int InitHandle(); +int _ExeSQL(char* SQL, char** inputValue, int inputValueCount); +int _QuerySQL(char* SQL, SqlSelField* pOutField, SqlSelField* pSelField); +int GetDataFromQuery(int* pRc, SqlSelField* pOutField); +void QuitFreeHandle(); + + + + +/**************************************************************************************************************************************** +函数名称: +函数功能: +入口参数: +出口参数: +备 注: +*****************************************************************************************************************************************/ + + +// 初始化Handler +int InitHandle() +{ + int swResult; + + ociHandle = &ociHand; + + + /*create OCI environment*/ + if (swResult = OCIEnvCreate(&ociHandle->p_env, OCI_DEFAULT, NULL, NULL, NULL, NULL, 0, NULL)) //环境句柄 + { + printf("environment create error!\n\n"); + return -1; + } + else + { + printf("environment create success!\n\n"); + //return 0; + } + + /*init handle*/ + if (swResult = OCIHandleAlloc(ociHandle->p_env, (dvoid**)&ociHandle->p_ser, OCI_HTYPE_SERVER, 0, NULL)) //服务器句柄 + { + printf("init server handle error!\n\n"); + return -1; + } + + + if (swResult = OCIHandleAlloc(ociHandle->p_env, (dvoid**)&ociHandle->p_err, OCI_HTYPE_ERROR, 0, NULL)) //错误句柄 + { + printf("init error handle error!\n\n"); + return -1; + } + + + if (swResult = OCIHandleAlloc(ociHandle->p_env, (dvoid**)&ociHandle->p_usr, OCI_HTYPE_SESSION, 0, NULL)) //事务句柄 + { + printf("init session handle error!\n\n"); + return -1; + } + + + if (swResult = OCIHandleAlloc(ociHandle->p_env, (dvoid**)&ociHandle->p_svc, OCI_HTYPE_SVCCTX, 0, NULL)) //上下文句柄 + { + printf("init service context handle error!\n\n"); + return -1; + } + + + if (swResult = OCIHandleAlloc(ociHandle->p_env, (dvoid**)&ociHandle->p_sql, OCI_HTYPE_STMT, 0, NULL)) //SQL语句句柄 + { + printf("init statement handle error!\n\n"); + return -1; + } + + printf("init handle success!\n\n"); + + return 0; +} + + + +// 连接数据库服务器 +int ConnServer(char* username, char* password, char* dbname) +{ + int swResult; + char errbuf[100] = { 0 }; + int errcode; + + if (InitHandle() == -1)//初始化句柄 + return -1; + + if (swResult = OCILogon(ociHandle->p_env, ociHandle->p_err, &ociHandle->p_svc, (text*)username, strlen(username), (text*)password, strlen(password), (text*)dbname, strlen(dbname))) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("Error - %.*s/n", 512, errbuf); + return -1; + } + else + printf("数据库连接成功!\n\n"); + return 0; +} + + + +// SQL语句的陈述(执行SQL语句) +int _ExeSQL(char* SQL, char** inputValue, int inputValueCount) +{ + int swResult, i; + int errcode; + + //设置绑定变量 + OCIBind* p_bndp[100]; + + //准备SQL语句 + if (swResult = OCIStmtPrepare(ociHandle->p_sql, ociHandle->p_err, (text*)SQL, strlen(SQL), OCI_NTV_SYNTAX, OCI_DEFAULT)) + { + printf("prepare SQL statements error!\n\n"); + } + else + { + printf("prepare SQL statements success!\n\n"); + } + + + // 绑定输入变量 + for (i = 0; i < inputValueCount; i++) + { + char errbuf[100] = { 0 }; + if (swResult = OCIBindByPos(ociHandle->p_sql, &p_bndp[i], ociHandle->p_err, i + 1, (dvoid*)inputValue[i], (sb4)strlen(inputValue[i]) + 1, SQLT_STR, (dvoid*)0, (ub2*)0, (ub2*)0, (ub4)0, (ub4*)0, OCI_DEFAULT)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("Bind Error - %.*s/n", 512, errbuf); + return -1; + } + } + + //执行SQL statements + if (swResult = OCIStmtExecute(ociHandle->p_svc, ociHandle->p_sql, ociHandle->p_err, 1, 0, NULL, NULL, OCI_DEFAULT)) + { + char errbuf[100] = { 0 }; + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("execute SQL statement Error - %.*s\n", 512, errbuf); + return -1; + } + else + { + printf("execute SQL statement success!\n\n"); + } + return 0; +} + + + + +// 查询SQL +int _QuerySQL(char* SQL, SqlSelField* pOutField, SqlSelField* pSelField) +{ + sword status; + int rc = 0, ret = 0; + char errbuf[100] = { 0 }; + int maxNum = 2048; + char chTag[8]; + int iIndex = 0; + int outputColumn = 0; + int errcode = 0; + char nullValue = '\0'; // + sb2 sb2aInd[30] = { '\0' }; + + // 准备SQL语句 + status = OCIStmtPrepare(ociHandle->p_sql, ociHandle->p_err, (text*)SQL, (ub4)strlen(SQL), (ub4)OCI_NTV_SYNTAX, (ub4)OCI_DEFAULT); + + if (status != OCI_SUCCESS) + { + printf("SQL Preparing failed/n"); + return -1; + } + + + // 绑定int类型的, 定义SQL语句时 :1,:2, 定义输入变量 + for (iIndex = 0; iIndex < pSelField->nIntNum; iIndex++) + { + memset(chTag, 0, 8); + sprintf(chTag, ":%d", iIndex + 1); + if (rc = OCIBindByName(ociHandle->p_sql, (OCIBind**)&ociHandle->p_dfn, ociHandle->p_err, (text*)chTag, (sb4)strlen((char*)chTag), (dvoid*)&pSelField->naIntValue[iIndex], sizeof(int), SQLT_INT, (dvoid*)0, (ub2*)0, (ub2*)0, (ub4)0, (ub4*)0, OCI_DEFAULT)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("BindByPos Error of ociHandle->p_sql - %.*s\n", 512, errbuf); + return -1; + } + } + + // 绑定char *类型的, 定义SQL语句时 :3,:4, 定义输入变量 + for (iIndex = 0; iIndex < pSelField->nCharNum; iIndex++) + { + int n = 0; + memset(chTag, 0, 8); + n = pSelField->nIntNum + iIndex + 1; + sprintf(chTag, ":%d", n); + if (rc = OCIBindByName(ociHandle->p_sql, (OCIBind**)&ociHandle->p_dfn, ociHandle->p_err, (text*)chTag, (sb4)strlen((char*)chTag), (dvoid*)&pSelField->caCharValue[iIndex], NUM, SQLT_STR, (dvoid*)0, (ub2*)0, (ub2*)0, (ub4)0, (ub4*)0, OCI_DEFAULT)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("BindByPos Error of ociHandle->p_sql - %.*s\n", 512, errbuf); + return -1; + } + } + + + // 执行SQL语句 + if (rc = OCIStmtExecute(ociHandle->p_svc, ociHandle->p_sql, ociHandle->p_err, (ub4)0, (ub4)0, (CONST OCISnapshot*) NULL, (OCISnapshot*)NULL, OCI_STMT_SCROLLABLE_READONLY)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("execute SQL Error - %.*s\n", 512, errbuf); + return -1; + } + else + { + printf("execute SQL success!\n\n"); + } + + + if (ret = OCIAttrGet(ociHandle->p_sql, (ub4)OCI_HTYPE_STMT, (dvoid*)&outputColumn, (ub4*)0, (ub4)OCI_ATTR_PARAM_COUNT, ociHandle->p_err)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("Get OCIAttr Error of ociHandle->p_sql - %.*s\n", 512, errbuf); + return -1; + } + + + // 绑定int类型的, 定义SQL语句时 :1,:2, 定义输出变量 + for (iIndex = 0; iIndex < pOutField->nIntNum; iIndex++) + { + if (rc = OCIDefineByPos(ociHandle->p_sql, &ociHandle->p_dfn, ociHandle->p_err, iIndex + 1, (dvoid*)&pOutField->naIntValue[iIndex], sizeof(int), SQLT_INT, (dvoid*)0, (ub2*)0, (ub2*)0, OCI_DEFAULT)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("DefineByPos Error of ociHandle->p_sql - %.*s\n", 512, errbuf); + return -1; + } + } + + + // 绑定char *类型的, 定义SQL语句时 :1,:2, 定义输出变量 + for (iIndex = 0; iIndex < outputColumn; iIndex++) + { + int n = iIndex + 1; + if (rc = OCIDefineByPos(ociHandle->p_sql, &ociHandle->p_dfn, ociHandle->p_err, n, (dvoid*)&pOutField->caCharValue[iIndex], 1000 * sizeof(char), SQLT_STR, (dvoid*)0, (ub2*)0, (ub2*)0, OCI_DEFAULT)) + { + OCIErrorGet((dvoid*)ociHandle->p_err, (ub4)1, (text*)NULL, &errcode, (ub1*)errbuf, (ub4)sizeof(errbuf), OCI_HTYPE_ERROR); + printf("DefineByPos Error of ociHandle->p_sql - %.*s\n", 512, errbuf); + return -1; + } + } + + return 0; + +} + + + +// 释放Handler +void QuitFreeHandle() +{ + // 退出服务器 + OCILogoff(ociHandle->p_svc, ociHandle->p_err); + printf("Quit success!\n"); + + // 释放句柄 + OCIHandleFree(ociHandle->p_ser, OCI_HTYPE_SERVER); //释放服务器句柄 + OCIHandleFree(ociHandle->p_err, OCI_HTYPE_ERROR); //释放错误句柄 + OCIHandleFree(ociHandle->p_usr, OCI_HTYPE_SESSION); //释放事务句柄 + OCIHandleFree(ociHandle->p_svc, OCI_HTYPE_SVCCTX); //释放上下文句柄 + OCIHandleFree(ociHandle->p_sql, OCI_HTYPE_STMT); //释放SQL语句句柄 +} + + +// 执行类操作 +int ExecuteSQL(char* SQL, int valueCount, char** value) +{ + int i = 0; + + if (i = _ExeSQL(SQL, value, valueCount)) + { + printf("继续操作1\n"); + QuitFreeHandle(); + return -1; + } + printf("继续操作2\n"); + return 0; +} + + +// 有输入参数的查询 +int QuerySQL(char* SQL, int inputValueCount, char** inputValue, int* outputColumn, int* outputValueCount, char**** outputValue) +{ + int i = 0, j = 0, ret = 0; + + int times = 0, temp = 0; + + SqlSelField infield; + SqlSelField outField; + + // 初始化参数结构 + infield.nCharNum = inputValueCount; + infield.nIntNum = 0; + outField.nCharNum = 0; + outField.nIntNum = 0; + + *outputColumn = 0; + *outputValueCount = 0; + + for (i = 0; i < inputValueCount; i++) + { + strcpy(infield.caCharValue[i], inputValue[i]); + } + + // 执行查询语句 + + + if (ret = _QuerySQL(SQL, &outField, &infield)) + { + printf("SQL查询失败!\n"); + QuitFreeHandle(); + return -1; + } + + // 获取结果列数 + ret = OCIAttrGet(ociHandle->p_sql, (ub4)OCI_HTYPE_STMT, (dvoid*)outputColumn, (ub4*)0, (ub4)OCI_ATTR_PARAM_COUNT, ociHandle->p_err); + + // 提取最后一行,便于去行数 + ret = OCIStmtFetch2(ociHandle->p_sql, ociHandle->p_err, 1, OCI_FETCH_LAST, 0, OCI_DEFAULT); + // 获取结果行数 + ret = OCIAttrGet(ociHandle->p_sql, (ub4)OCI_HTYPE_STMT, (dvoid*)outputValueCount, (ub4*)0, (ub4)OCI_ATTR_ROW_COUNT, ociHandle->p_err); + + if (*outputValueCount == 0) + return 0; + + + // 开始分配内存并且存储 + ret = OCIStmtFetch2(ociHandle->p_sql, ociHandle->p_err, 1, OCI_FETCH_FIRST, 0, OCI_DEFAULT); + *outputValue = (char***)calloc((*outputValueCount) + 1, sizeof(char**)); + do + { + (*outputValue)[i] = (char**)calloc((*outputColumn) + 1, sizeof(char*)); + for (j = 0; j < (*outputColumn); j++) + { + (*outputValue)[i][j] = (char*)calloc(1000, sizeof(char)); + strcpy((*outputValue)[i][j], outField.caCharValue[j]); + //printf("outValue[%d][%d] = %s , 地址=%d, 所指向地址= %d\n ",i,j,(*outputValue)[i][j],&(*outputValue)[i][j],(*outputValue)[i][j]); + } + i++; + } while ((ret = OCIStmtFetch2(ociHandle->p_sql, ociHandle->p_err, 1, OCI_FETCH_NEXT, 1, OCI_DEFAULT) != OCI_NO_DATA)); + + return 0; +} + + +// 无输入参数的查询 +int QuerySQLNoInputParam(char* SQL, int* outputColumn, int* outputValueCount, char**** outputValue) +{ + return QuerySQL(SQL, 0, NULL, outputColumn, outputValueCount, outputValue); +} + +// 无参数操作 +int ExecuteSQLNoInputParam(char* SQL) +{ + printf("开始操作\n"); + return ExecuteSQL(SQL, 0, NULL); +} + +// 断开连接 +void DisConnServer() +{ + if (ociHandle != NULL) + QuitFreeHandle(); +} + diff --git a/mdbks_connor_itk/ocilib.h b/mdbks_connor_itk/ocilib.h new file mode 100644 index 0000000..cb7ac1e --- /dev/null +++ b/mdbks_connor_itk/ocilib.h @@ -0,0 +1,99 @@ +/*===================================================================================================================== + Copyright(c) 2012 ORIGIN. + Unpublished - All rights reserved +======================================================================================================================= +File description: + + Filename: ocilib.h + Module : OCI + + This Header file of OCI library Package. + +======================================================================================================================= +Date Name Description of Change +1-Feb-2015 Ray Initialize creation +$HISTORY$ +=====================================================================================================================*/ +#include +#include +#include +#include +#include +//#include + +#define OCI_FAIL 1 +#define OCI_OK 0 + +#ifdef __cplusplus +extern "C" +{ +#endif + /** + * 连接数据库. + * @param username - 用户名 + * @param password - 密码 + * @param dbname - 数据库SID + * @return - OCI_OK or error code + * + * ORACLE 数据库的连接与封装函数 + */ + extern int ConnServer(char* username, char* password, char* dbname); + + + /** + * 不带输入参数的执行SQL语句. + * @param SQL - SQL语句 + * @return - OCI_OK or error code + * + * ORACLE 数据库的连接与封装函数 + */ + extern int ExecuteSQLNoInputParam(char* SQL); + + /** + * 带输入参数的执行SQL语句. + * @param SQL - SQL语句 + * @param inputValueCount - 输入参数数量 + * @param inputValue - 输入参数值 + * @return - OCI_OK or error code + * + * ORACLE 数据库的连接与封装函数 + */ + extern int ExecuteSQL(char* SQL, int inputValueCount, char** inputValue); + + /** + * 不带输入参数的查询SQL语句. + * @param SQL - SQL语句 + * @param outputColumn - 输出表的列的数量 + * @param outputValueCount - 输出表的行的数量 + * @param outputValue - 输出表内容 + * @return - OCI_OK or error code + * + * ORACLE 数据库的连接与封装函数 + */ + extern int QuerySQLNoInputParam(char* SQL, int* outputColumn, int* outputValueCount, char**** outputValue); + + /** + * 带输入参数的查询SQL语句. + * @param SQL - SQL语句 + * @param inputValueCount - 输入参数数量 + * @param inputValue - 输入参数值 + * @param outputColumn - 输出表的列的数量 + * @param outputValueCount - 输出表的行的数量 + * @param outputValue - 输出表内容 + * @return - OCI_OK or error code + * + * ORACLE 数据库的连接与封装函数 + */ + extern int QuerySQL(char* SQL, int inputValueCount, char** inputValue, int* outputColumn, int* outputValueCount, char**** outputValue); + + /** + * 断开数据库连接. + * + * ORACLE 数据库的连接与封装函数 + */ + extern void DisConnServer(); + +#ifdef __cplusplus +} +#endif + diff --git a/mdbks_connor_itk/test.cpp b/mdbks_connor_itk/test.cpp new file mode 100644 index 0000000..febb5c3 --- /dev/null +++ b/mdbks_connor_itk/test.cpp @@ -0,0 +1,561 @@ +//#include +#include +#include +#include +#include +//#include +//#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "mdbks_register.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +using namespace std; + +string getMEINH(tag_t rev); + + +string getFh6_BOP(tag_t parent_rev, char** itemId) { + boolean isHaveItem = false; + int n_references = 0; + int* levels = 0; + tag_t* references_tag = NULLTAG; + char** relation_type_name = NULL; + string json = ""; + string ktext = ""; + ktext.append("\"\"").append("KTEXT").append("\"\":\"\""); + string datuv = ""; + datuv.append("\"\"").append("DATUV").append("\"\":\"\""); + string meinh = ""; + meinh.append("\"\"").append("MEINH").append("\"\":\"\""); + WSOM_where_referenced(parent_rev, 1, &n_references, &levels, &references_tag, &relation_type_name);; + for (int i = 0; i < n_references; i++) { + char* objectType = NULL; + AOM_ask_value_string(references_tag[i], "object_type", &objectType); + // BOM汾Fh6_TechnologyRevisionǹڳƷ汾Fh6_ProductRevision + // Ʒ汾Fh6_SemiProductRevisionBOPFh6_BOPϵ + if (strcmp("Fh6_ProductRevision", objectType) == 0 || strcmp("Fh6_SemiProductRevision", objectType) == 0) { + // ȡ + char* objectName = NULL; + AOM_ask_value_string(references_tag[i], "object_name", &objectName); + // ȡ + char* fh6_cj = NULL; + AOM_ask_value_string(references_tag[i], "fh6_cj", &fh6_cj); + // ȡɹʽ + char* fh6_cgfs = NULL; + AOM_ask_value_string(references_tag[i], "fh6_cgfs", &fh6_cgfs); + // ȡ汾 + char* item_revision_id = NULL; + AOM_ask_value_string(references_tag[i], "item_revision_id", &item_revision_id); + // ƴƣobject_name+(fh6_cj)+ɹʽ(fh6_cgfs)+ƷƷ汾ϵİ汾ԣitem_revision_id + ktext.append(objectName); + ktext.append(fh6_cj); + ktext.append(fh6_cgfs); + ktext.append(item_revision_id); + // ȡ + date_t date_released = NULLDATE; + AOM_ask_value_date(references_tag[i], "date_released", &date_released); + datuv.append(to_string(date_released.year)); + string month = to_string(date_released.month + 1); + if (month.length() == 1) { + datuv.append("0").append(month); + } + else { + datuv.append(month); + } + string day = to_string(date_released.day); + if (day.length() == 1) { + datuv.append("0").append(day); + } + else { + datuv.append(day); + } + // ȡid + AOM_ask_value_string(references_tag[i], "item_id", itemId); + // ȡϵλ + string MEINH = getMEINH(references_tag[i]); + meinh.append(MEINH); + + } + } + json.append(ktext).append("\"\",").append(datuv).append("\"\",").append(meinh).append("\"\""); + return json; +} + +string getZZBOM(tag_t parent_rev, string item_id, tag_t** ZZBOM, int* zzbomline) { + WriteLog("%s -------GETZZBOMSTART:-------", getNow("LOG").c_str()); + boolean isHaveItem = false; + int n_references = 0; + int* levels = 0; + tag_t* references_tag = NULLTAG; + char** relation_type_name = NULL; + string json = ""; + int zzbomlineInd = 0; + WSOM_where_referenced(parent_rev, 1, &n_references, &levels, &references_tag, &relation_type_name); + for (int i = 0; i < n_references; i++) { + char* objectType = NULL; + AOM_ask_value_string(references_tag[i], "object_type", &objectType); + // հ汾Fh6_TechnologyRevisionҲBOM汾Fh6_ZZBOMRevision + // BOPFh6_BOPϵ + if (strcmp("Fh6_ZZBOMRevision", objectType) == 0) { + if (zzbomlineInd > 0) { + json.append(","); + } + //BOMWindow + tag_t top_line = NULLTAG, window = NULLTAG; + // WriteLog("%s BOMWindow", getNow("LOG").c_str()); + ITKCALL(BOM_create_window(&window)); + //öBOM + // WriteLog("%s öBOM", getNow("LOG").c_str()); + ITKCALL(BOM_set_window_top_line(window, NULLTAG, references_tag[i], NULLTAG, &top_line)); + tag_t* children_line = NULLTAG; + char* id = NULL, * objname = NULL; + int itemNum; + tag_t* items = NULL; + // WriteLog("%s ȡBOM", getNow("LOG").c_str()); + //ΪݹȡBOM㼶 + ITKCALL(BOM_line_ask_all_child_lines(top_line, &itemNum, &items)); + ZZBOM = &items; + zzbomline = &itemNum; + WriteLog("%s ȡBOM%d,ʼbom", getNow("LOG").c_str(), itemNum); + for (int itemind = 0; itemind < itemNum; itemind++) { + WriteLog("%s %d,", getNow("LOG").c_str(), itemind); + if (itemind != 0) { + json.append(","); + } + string itemJson = "{"; + string stlnr = ""; + stlnr.append("\"\"").append("STLNR").append("\"\":\"\""); + string stlal = ""; + stlal.append("\"\"").append("STLAL").append("\"\":\"\""); + string posnr = ""; + posnr.append("\"\"").append("POSNR").append("\"\":\"\""); + string vornr = ""; + vornr.append("\"\"").append("VORNR").append("\"\":\"\""); + // ȡϵ + char* Fh6wld = NULL; + AOM_ask_value_string(items[itemind], "Fh6wld", &Fh6wld); + stlnr.append(Fh6wld).append("\"\""); + // ȡѡbom + char* Fh6kxybom = NULL; + AOM_ask_value_string(items[itemind], "Fh6kxybom", &Fh6kxybom); + stlal.append(Fh6kxybom).append("\"\""); + // ȡBOMĿ + char* bl_sequence_no = NULL; + AOM_ask_value_string(items[itemind], "bl_sequence_no", &bl_sequence_no); + //sapʱֵԶǰ0Ϊ4λֵ + int len = tc_strlen(bl_sequence_no); + if (len == 0) { + posnr.append("0000").append(bl_sequence_no).append("\"\""); + vornr.append("0000").append(bl_sequence_no).append("\"\""); + } + else if (len == 1) { + posnr.append("000").append(bl_sequence_no).append("\"\""); + vornr.append("000").append(bl_sequence_no).append("\"\""); + } + else if (len == 2) { + posnr.append("00").append(bl_sequence_no).append("\"\""); + vornr.append("00").append(bl_sequence_no).append("\"\""); + } + else if (len == 3) { + posnr.append("0").append(bl_sequence_no).append("\"\""); + vornr.append("0").append(bl_sequence_no).append("\"\""); + } + else if (len == 4) { + posnr.append(bl_sequence_no).append("\"\""); + vornr.append(bl_sequence_no).append("\"\""); + } + else { + posnr.append(bl_sequence_no).append("\"\""); + vornr.append(bl_sequence_no).append("\"\""); + } + // ȡBOM + char* idnrkVal = NULL; + AOM_ask_value_string(items[itemind], "awb0BomLineItemId", &idnrkVal); + itemJson.append(stlnr).append(",").append(stlal).append(",").append(posnr).append(",").append(vornr); + itemJson.append(",\"\"").append("MATNR").append("\"\":\"\"").append(item_id).append("\"\""); + string itemidWith18 = ""; + if (strlen(idnrkVal) < 18) { + int zerosize = 18 - strlen(idnrkVal); + while (zerosize--) { + itemidWith18.append("0"); + } + } + itemJson.append(",\"\"").append("IDNRK").append("\"\":\"\"").append(itemidWith18).append(idnrkVal).append("\"\""); + itemJson.append("}"); + json.append(itemJson); + } + zzbomlineInd++; + WriteLog("%s -------GETZZBOMEND;----------", getNow("LOG").c_str()); + return json; + } + } + + WriteLog("%s -------GETZZBOMEND;----------", getNow("LOG").c_str()); + return json; +} +/* + ͨ汾ȡ̧ͷjson + rev 汾 + props ҪȡԼ +*/ +string getTABLEJson(tag_t rev, map< string, string > props, string type) { + string json = ""; + map::iterator it; + for (it = props.begin(); it != props.end(); it++) { + string key = it->first; + string prop = props[key]; + char* value = NULL; + ITKCALL(AOM_UIF_ask_value(rev, prop.c_str(), &value)); + if (json.size() > 1) + json.append(","); + if (tc_strcmp(prop.c_str(), "bl_sequence_no") == 0) { + //sapʱֵԶǰ0Ϊ4λֵ + int len = tc_strlen(value); + if (len == 0) { + json.append("\"\"").append(key).append("\"\":\"\"").append("0000").append("\"\""); + } + else if (len == 1) { + json.append("\"\"").append(key).append("\"\":\"\"").append("000").append(value).append("\"\""); + } + else if (len == 2) { + json.append("\"\"").append(key).append("\"\":\"\"").append("00").append(value).append("\"\""); + } + else if (len == 3) { + json.append("\"\"").append(key).append("\"\":\"\"").append("0").append(value).append("\"\""); + } + else if (len == 4) { + json.append("\"\"").append(key).append("\"\":\"\"").append("0").append(value).append("\"\""); + } + else { + json.append("\"\"").append(key).append("\"\":\"\"").append(value).append("\"\""); + } + } + else if (tc_strcmp(prop.c_str(), "Fh6kzm") == 0 || tc_strcmp(prop.c_str(), "Fh6gzzx") == 0) { + ITKCALL(AOM_ask_value_string(rev, prop.c_str(), &value)); + json.append("\"\"").append(key).append("\"\":\"\"").append(value).append("\"\""); + } + else { + if (tc_strcmp(type.c_str(), "C") == 0 && (tc_strcmp(key.c_str(), "PLNNR") == 0 || tc_strcmp(key.c_str(), "PLNAL") == 0)) { + // + value = ""; + } + json.append("\"\"").append(key).append("\"\":\"\"").append(value).append("\"\""); + } + } + // Ĭϴ + json.append(",\"\"UMREN\"\":\"\"").append("1").append("\"\""); + json.append(",\"\"UMREZ\"\":\"\"").append("1").append("\"\""); + //json.append(",\"\"ZGGBS\"\":\"\"").append(update).append("\"\",\"\"bom\"\":["); + //json.append(",\"\"bom\"\":["); + json.append(",\"\"STATU\"\":\"\"").append("4").append("\"\""); + json.append(",\"\"VERWE\"\":\"\"").append("1").append("\"\""); + + json.append(",\"\"UVORN\"\":\"\"").append("").append("\"\""); + return json; +} + +/* + BOMʾļλֶΣMEINHȡbomӼ϶Itemuom_tagԣעϰ汾ԣ +*/ +string getMEINH(tag_t rev) { + string json = ""; + int n_references = 0, n_references1 = 0; + int* levels = 0, * levels1 = 0; + tag_t* references_tag = NULLTAG; + tag_t* references_tag1 = NULLTAG; + char** relation_type_name = NULL; + char** relation_type_name1 = NULL; + int zzbomlineInd = 0; + WSOM_where_referenced(rev, 1, &n_references1, &levels1, &references_tag1, &relation_type_name1); + for (int j = 0; j < n_references1; j++) { + char* objectType1 = NULL; + AOM_ask_value_string(references_tag1[j], "object_type", &objectType1); + if ( + strcmp("Fh6_AuxItem", objectType1) == 0 || + strcmp("Fh6_MainItem", objectType1) == 0 || + strcmp("Fh6_Jig", objectType1) == 0 || + strcmp("Fh6_RawMaterial", objectType1) == 0 || + strcmp("Fh6_Product", objectType1) == 0 || + strcmp("Fh6_SemiProduct", objectType1) == 0 || + strcmp("Fh6_MoldHalfItem", objectType1) == 0 || + strcmp("Fh6_MoldItem", objectType1) == 0 || + strcmp("Fh6_Guest", objectType1) == 0 || + strcmp("Fh6_GuestOther", objectType1) == 0 + ) { + // ȡλ + char* MEINH; + //tag_t jbdldw = NULLTAG; + //ITEM_ask_item_of_rev(references_tag1[j], &jbdldw); + tag_t dw = NULLTAG; + AOM_ask_value_tag(references_tag1[j], "uom_tag", &dw); + AOM_ask_value_string(dw, "object_string", &MEINH); + json.append(MEINH); + return json; + } + } + return json; +} + + +string getKTSCH_LTXA1(tag_t rev) { + string json = ""; + tag_t item_tag; + ITKCALL(AOM_ask_value_tag(rev, "bl_line_object", &item_tag));//ȡBOMLINİ汾 + if (item_tag != NULL) { + // ׼ı + char* fh6_bzwbm = NULL; + AOM_ask_value_string(item_tag, "fh6_bzwbm", &fh6_bzwbm); + json.append("\"\"KTSCH\"\":\"\"").append(fh6_bzwbm).append("\"\""); + // ı + char* fh6_gxdwb = NULL; + AOM_ask_value_string(item_tag, "fh6_gxdwb", &fh6_gxdwb); + json.append(",\"\"LTXA1\"\":\"\"").append(fh6_gxdwb).append("\"\""); + } + if (json.empty()) { + json.append("\"\"KTSCH\"\":\"\"").append("").append("\"\""); + json.append(",\"\"LTXA1\"\":\"\"").append("").append("\"\""); + } + return json; +} + +int Connor_BOP_SAP(EPM_action_message_t msg) +{ + int ifail = ITK_ok, target_count = 0; + tag_t pRoot = NULLTAG, * targets = NULL; + char* address = NULL; + // ȡʲôַ + ITKCALL(PREF_ask_char_value("PHZD_sap_mbom_url", 0, &address)); + if (!address || tc_strlen(address) == 0) { + ifail = 919040; + EMH_store_error_s1(EMH_severity_user_error, ifail, "PHZD_sap_mbom_url"); + return ifail; + } + // ־ + string log_path = getenv("temp"); + log_path.append("\\BOPSENDSAPLogs").append(getNow("yyyyMMdd")).append(".log"); + CreateLogFile(log_path.c_str()); + + map< string, string > bomlineInfo; + //tbop["WERKS"] = "fh6gc";// + bomlineInfo["PLNTY"] = "Fh6rwqdlx";//嵥 + bomlineInfo["PLNNR"] = "Fh6rwqdzm";//嵥 + bomlineInfo["PLNAL"] = "Fh6zjsq";// + //bomlineInfo["VERWE"] = "Fh6rwqdsy";//嵥ʹ Ĭϴ1 + //bomlineInfo["STATU"] = "Fh6zt";//״̬ Ĭ4 + // ȡbomlineϵIJұbl_sequence_noԣsapʱֵԶǰ0Ϊ4λֵݸsap + // ұΪ10򴫵ݵsapʱֵΪ0010ұΪ399򴫵sapʱֵΪ0399 + bomlineInfo["VORNR"] = "bl_sequence_no";// + // ȡbomlineϵIJұԣsapʱֵԶǰ0Ϊ4λֵݸsap + // ұΪ10򴫵ݵsapʱֵΪ0010ұΪ399򴫵sapʱֵΪ0399 + //bomlineInfo["UVORN"] = "bl_sequence_no";//ӹ + bomlineInfo["ARBPL"] = "Fh6gzzx"; // + bomlineInfo["STEUS"] = "Fh6kzm"; // + bomlineInfo["BMSCH"] = "bl_quantity"; // + bomlineInfo["VGW01"] = "Fh6rggs"; //׼ֵ ǰ̨ʾ ˹ʱ + bomlineInfo["VGE01"] = "Fh6rggsdw"; //׼ֵλ ǰ̨ʾ˹ʱλ + bomlineInfo["VGW02"] = "Fh6jqgs"; //׼ֵ ǰ̨ʾ ʱ + bomlineInfo["VGE02"] = "Fh6jqgsdw"; //׼ֵλ ǰ̨ʾ ʱλ + bomlineInfo["AUFAK"] = "Fh6bfyz"; // + bomlineInfo["CKSELKZ"] = "Fh6ycbhsxgbs"; //ɱر־ + + string err_msg = ""; + // ȡҵĸ + // WriteLog("%s ȡҵĸ:%d", getNow("LOG").c_str(), target_count); + ITKCALL(EPM_ask_root_task(msg.task, &pRoot)); + + // ָлȡض͵и + ITKCALL(EPM_ask_attachments(pRoot, EPM_target_attachment, &target_count, &targets)); + // WriteLog("%s ָлȡض͵и:%d", getNow("LOG").c_str(), target_count); + string jsons = "{"; + string tbopjson = "["; + string tplmzjson = "["; + tag_t targetObj = NULL; + int itemNum = 0; + tag_t* items; + tag_t* zzbom = NULL, window = NULLTAG; + int zzbomNums; + //BOMWindow + tag_t top_line = NULLTAG; + for (int t = 0; t < target_count; t++) { + char* type = NULL; + // ȡ + ITKCALL(WSOM_ask_object_type2(targets[t], &type)); + // WriteLog("%s ȡ:%s", getNow("LOG").c_str(), type); + if (tc_strcmp(type, "Fh6_TechnologyRevision") == 0) { + // ȡֵԵֵ + char* fh6_cdzt = NULL;// ȡϰ汾ϵfh6_cdztԣֵΪգıʶCֵΪɣıʶU + ITKCALL(AOM_ask_value_string(targets[t], "fh6_cdzt", &fh6_cdzt)); + string update; + if (tc_strcmp(fh6_cdzt, "") == 0) { + update = "U"; + } + else { + update = "C"; + } + // ȡֵԵֵ + char* item_id = NULL;// ȡBOM汾Fh6_TechnologyRevisionϵitem_id + // WriteLog("%s BOMWindow", getNow("LOG").c_str()); + ITKCALL(BOM_create_window(&window)); + //öBOM + // WriteLog("%s öBOM", getNow("LOG").c_str()); + ITKCALL(BOM_set_window_top_line(window, NULLTAG, targets[t], NULLTAG, &top_line)); + tag_t* children_line = NULLTAG; + char* id = NULL, * objname = NULL, * guige = NULL, * jishu = NULL, * shengc = NULL, * biaoji = NULL, * paihao = NULL, * yuanyin = NULL; + char* type1 = "item", * type2 = "itemrevision", * type3 = "revmaster"; + vector ids, objnames, guiges, jishus, shengcs, biaojis, paihaos, yuanyins; + // WriteLog("%s ȡBOM", getNow("LOG").c_str()); + //ΪݹȡBOM㼶 + ITKCALL(BOM_line_ask_all_child_lines(top_line, &itemNum, &items)); + string relation_json = getFh6_BOP(targets[t], &item_id); + // WriteLog("%s ȡBOM%d", getNow("LOG").c_str(), itemNum); + for (int itemind = 0; itemind < itemNum; itemind++) { + if (itemind != 0) { + tbopjson.append(","); + } + tbopjson.append("{"); + //ȡT_BOP + string tbopjson1 = getTABLEJson(items[itemind], bomlineInfo, update); + string ktschAndLtxa1 = getKTSCH_LTXA1(items[itemind]); + tbopjson.append(tbopjson1); + tbopjson.append(",\"\"").append("MATNR").append("\"\":\"\"").append(item_id).append("\"\""); + tbopjson.append(",\"\"").append("ZGGBS").append("\"\":\"\"").append(update).append("\"\""); + //tbopjson.append(",\"\"").append("MEINH").append("\"\":\"\"").append(MEINH).append("\"\""); + tbopjson.append(",").append(ktschAndLtxa1); + tbopjson.append(",").append(relation_json).append("}"); + } + // WriteLog("%s ȡBOM", getNow("LOG").c_str()); + //ȡT_PLMZ + string tplmzjson1 = getZZBOM(targets[t], item_id, &zzbom, &zzbomNums); + // WriteLog("%s ȡT_PLMZ", getNow("LOG").c_str()); + tplmzjson.append(tplmzjson1); + targetObj = targets[t]; + BOM_save_window(window); + } + if (tc_strcmp(type, "BOMView Revision") == 0) { + } + } + tbopjson.append("]"); + tplmzjson.append("]"); + jsons.append("\"\"T_BOP\"\":").append(tbopjson); + jsons.append(",\"\"T_PLMZ\"\":").append(tplmzjson); + jsons.append("}"); + WriteLog("%s ׼:", getNow("LOG").c_str()); + string cmd = "java -jar \""; + cmd.append(getenv("TC_ROOT")).append("\\bin\\bop\\sapjco3.jar\" BOP \"").append(jsons).append("\" \"").append(address).append("\"");//connor_send//sapjco3 + //printf("cmd:%s\n", cmd.c_str()); + WriteLog("%s cmd:%s", getNow("LOG").c_str(), cmd.c_str()); + log_close(); + //system(cmd.c_str()); + string result; + char buf[8000] = { 0 }; + FILE* pf = _popen(cmd.c_str(), "r"); + while (fgets(buf, sizeof buf, pf)) { + result.append(buf); + } + _pclose(pf); + log_open(); + WriteLog("result:%s\n", result.c_str()); + vector rs; + Split(result, "@", rs); + vector rs1; + Split(rs[1], "#", rs1); + if (strcmp(rs[0].c_str(), "S") == 0 && strcmp(rs1[1].c_str(), "S") == 0) { + // 2501 + vector rs25012; + Split(rs1[0], ":", rs25012); + vector rs25013; + Split(rs25012[1], "&", rs25013); + // 2502 + vector rs25021; + Split(rs[2], "#", rs25021); + WriteLog("rs25021.size:%d\n", rs25021.size()); + vector rs25022; + Split(rs25021[0], ":", rs25022); + WriteLog("rs25022.size:%d\n", rs25022.size()); + vector rs25023; + Split(rs25022[1], "&", rs25023); + WriteLog("rs25023.size:%d\n", rs25023.size()); + AOM_lock(targetObj); + int bvr_count = 0; + tag_t* bvr_list; + ITKCALL(ITEM_rev_list_bom_view_revs(targets[t], &bvr_count, &bvr_list)); + ITKCALL(AOM_lock(top_line)); + for (int itemind = 0; itemind < itemNum; itemind++) { + //ITKCALL(AOM_lock(items[itemind])); + string plnnr = ""; + if (!rs25013[0].empty()) { + plnnr.append(rs25013[0].c_str()); + } + if (!rs25023[0].empty()) { + plnnr.append("&").append(rs25023[0].c_str()); + } + ITKCALL(AOM_set_value_string(items[itemind], "Fh6rwqdzm", plnnr.c_str())); + string plnal = ""; + if (!rs25013[1].empty()) { + plnal.append(rs25013[1].c_str()); + } + if (!rs25023[1].empty()) { + plnal.append("&").append(rs25023[1].c_str()); + } + ITKCALL(AOM_set_value_string(items[itemind], "Fh6zjsq", plnal.c_str())); + ITKCALL(AOM_save(items[itemind])); + ITKCALL(AOM_unlock(items[itemind])); + } + ITKCALL(AOM_save(top_line)); + ITKCALL(AOM_unlock(top_line)); + //ݳɹԡfh6_cdztΪɡ + POM_AM__set_application_bypass(true); + ITKCALL(AOM_set_value_string(targetObj, "fh6_cdzt", "")); + ITKCALL(AOM_save(targetObj)); + ITKCALL(AOM_unlock(targetObj)); + } + else { + ifail = 919080; + //ʧ򱨴ѣֵΪʧܡ + //AOM_lock(targetObj); + char* fh6_cdzt = NULL;// ȡϰ汾ϵfh6_cdztԣֵΪգıʶCֵΪɣıʶU + ITKCALL(AOM_ask_value_string(targetObj, "fh6_cdzt", &fh6_cdzt)); + if (strcmp(fh6_cdzt, "") != 0) { + ITKCALL(AOM_set_value_string(targetObj, "fh6_cdzt", "ʧ")); + } + //POM_AM__set_application_bypass(true); + //POM_AM__set_application_bypass(false); + //AOM_save(targetObj); + //AOM_unlock(targetObj); + if (rs.size() > 1) { + err_msg.append(rs[1]).append("\n"); + } + else { + err_msg.append(result).append("\n"); + } + } + WriteLog("err_msg:%s,ifall:%d\n", err_msg.c_str(), ifail); + CloseLog(); + + if (ifail != ITK_ok) { + ITKCALL(EMH_store_error_s1(EMH_severity_user_error, ifail, err_msg.c_str())); + } + return ifail; +} \ No newline at end of file diff --git a/mdbks_connor_itk/test_handler.cxx b/mdbks_connor_itk/test_handler.cxx new file mode 100644 index 0000000..e69de29