From d239665a02d9ee82aa5e0cd340596e5d38342bd9 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Tue, 14 Aug 2007 19:55:24 +0000 Subject: [PATCH] remove the static build of libevent --- libevent/evdns.h | 367 -------------------------------------------- libevent/event.h | 340 ---------------------------------------- libevent/evhttp.h | 219 -------------------------- libevent/libevent.a | Bin 235604 -> 0 bytes 4 files changed, 926 deletions(-) delete mode 100644 libevent/evdns.h delete mode 100644 libevent/event.h delete mode 100644 libevent/evhttp.h delete mode 100644 libevent/libevent.a diff --git a/libevent/evdns.h b/libevent/evdns.h deleted file mode 100644 index af7962e19..000000000 --- a/libevent/evdns.h +++ /dev/null @@ -1,367 +0,0 @@ -/* - * Copyright (c) 2006 Niels Provos - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/* - * The original DNS code is due to Adam Langley with heavy - * modifications by Nick Mathewson. Adam put his DNS software in the - * public domain. You can find his original copyright below. Please, - * aware that the code as part of libevent is governed by the 3-clause - * BSD license above. - * - * This software is Public Domain. To view a copy of the public domain dedication, - * visit http://creativecommons.org/licenses/publicdomain/ or send a letter to - * Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. - * - * I ask and expect, but do not require, that all derivative works contain an - * attribution similar to: - * Parts developed by Adam Langley - * - * You may wish to replace the word "Parts" with something else depending on - * the amount of original code. - * - * (Derivative works does not include programs which link against, run or include - * the source verbatim in their source distributions) - */ - -/* - * Welcome, gentle reader - * - * Async DNS lookups are really a whole lot harder than they should be, - * mostly stemming from the fact that the libc resolver has never been - * very good at them. Before you use this library you should see if libc - * can do the job for you with the modern async call getaddrinfo_a - * (see http://www.imperialviolet.org/page25.html#e498). Otherwise, - * please continue. - * - * This code is based on libevent and you must call event_init before - * any of the APIs in this file. You must also seed the OpenSSL random - * source if you are using OpenSSL for ids (see below). - * - * This library is designed to be included and shipped with your source - * code. You statically link with it. You should also test for the - * existence of strtok_r and define HAVE_STRTOK_R if you have it. - * - * The DNS protocol requires a good source of id numbers and these - * numbers should be unpredictable for spoofing reasons. There are - * three methods for generating them here and you must define exactly - * one of them. In increasing order of preference: - * - * DNS_USE_GETTIMEOFDAY_FOR_ID: - * Using the bottom 16 bits of the usec result from gettimeofday. This - * is a pretty poor solution but should work anywhere. - * DNS_USE_CPU_CLOCK_FOR_ID: - * Using the bottom 16 bits of the nsec result from the CPU's time - * counter. This is better, but may not work everywhere. Requires - * POSIX realtime support and you'll need to link against -lrt on - * glibc systems at least. - * DNS_USE_OPENSSL_FOR_ID: - * Uses the OpenSSL RAND_bytes call to generate the data. You must - * have seeded the pool before making any calls to this library. - * - * The library keeps track of the state of nameservers and will avoid - * them when they go down. Otherwise it will round robin between them. - * - * Quick start guide: - * #include "evdns.h" - * void callback(int result, char type, int count, int ttl, - * void *addresses, void *arg); - * evdns_resolv_conf_parse(DNS_OPTIONS_ALL, "/etc/resolv.conf"); - * evdns_resolve("www.hostname.com", 0, callback, NULL); - * - * When the lookup is complete the callback function is called. The - * first argument will be one of the DNS_ERR_* defines in evdns.h. - * Hopefully it will be DNS_ERR_NONE, in which case type will be - * DNS_IPv4_A, count will be the number of IP addresses, ttl is the time - * which the data can be cached for (in seconds), addresses will point - * to an array of uint32_t's and arg will be whatever you passed to - * evdns_resolve. - * - * Searching: - * - * In order for this library to be a good replacement for glibc's resolver it - * supports searching. This involves setting a list of default domains, in - * which names will be queried for. The number of dots in the query name - * determines the order in which this list is used. - * - * Searching appears to be a single lookup from the point of view of the API, - * although many DNS queries may be generated from a single call to - * evdns_resolve. Searching can also drastically slow down the resolution - * of names. - * - * To disable searching: - * 1. Never set it up. If you never call evdns_resolv_conf_parse or - * evdns_search_add then no searching will occur. - * - * 2. If you do call evdns_resolv_conf_parse then don't pass - * DNS_OPTION_SEARCH (or DNS_OPTIONS_ALL, which implies it). - * - * 3. When calling evdns_resolve, pass the DNS_QUERY_NO_SEARCH flag. - * - * The order of searches depends on the number of dots in the name. If the - * number is greater than the ndots setting then the names is first tried - * globally. Otherwise each search domain is appended in turn. - * - * The ndots setting can either be set from a resolv.conf, or by calling - * evdns_search_ndots_set. - * - * For example, with ndots set to 1 (the default) and a search domain list of - * ["myhome.net"]: - * Query: www - * Order: www.myhome.net, www. - * - * Query: www.abc - * Order: www.abc., www.abc.myhome.net - * - * API reference: - * - * int evdns_nameserver_add(unsigned long int address) - * Add a nameserver. The address should be an IP address in - * network byte order. The type of address is chosen so that - * it matches in_addr.s_addr. - * Returns non-zero on error. - * - * int evdns_nameserver_ip_add(const char *ip_as_string) - * This wraps the above function by parsing a string as an IP - * address and adds it as a nameserver. - * Returns non-zero on error - * - * int evdns_resolve(const char *name, int flags, - * evdns_callback_type callback, - * void *ptr) - * Resolve a name. The name parameter should be a DNS name. - * The flags parameter should be 0, or DNS_QUERY_NO_SEARCH - * which disables searching for this query. (see defn of - * searching above). - * - * The callback argument is a function which is called when - * this query completes and ptr is an argument which is passed - * to that callback function. - * - * Returns non-zero on error - * - * void evdns_search_clear() - * Clears the list of search domains - * - * void evdns_search_add(const char *domain) - * Add a domain to the list of search domains - * - * void evdns_search_ndots_set(int ndots) - * Set the number of dots which, when found in a name, causes - * the first query to be without any search domain. - * - * int evdns_count_nameservers(void) - * Return the number of configured nameservers (not necessarily the - * number of running nameservers). This is useful for double-checking - * whether our calls to the various nameserver configuration functions - * have been successful. - * - * int evdns_clear_nameservers_and_suspend(void) - * Remove all currently configured nameservers, and suspend all pending - * resolves. Resolves will not necessarily be re-attempted until - * evdns_resume() is called. - * - * int evdns_resume(void) - * Re-attempt resolves left in limbo after an earlier call to - * evdns_clear_nameservers_and_suspend(). - * - * int evdns_config_windows_nameservers(void) - * Attempt to configure a set of nameservers based on platform settings on - * a win32 host. Preferentially tries to use GetNetworkParams; if that fails, - * looks in the registry. Returns 0 on success, nonzero on failure. - * - * int evdns_resolv_conf_parse(int flags, const char *filename) - * Parse a resolv.conf like file from the given filename. - * - * See the man page for resolv.conf for the format of this file. - * The flags argument determines what information is parsed from - * this file: - * DNS_OPTION_SEARCH - domain, search and ndots options - * DNS_OPTION_NAMESERVERS - nameserver lines - * DNS_OPTION_MISC - timeout and attempts options - * DNS_OPTIONS_ALL - all of the above - * The following directives are not parsed from the file: - * sortlist, rotate, no-check-names, inet6, debug - * - * Returns non-zero on error: - * 0 no errors - * 1 failed to open file - * 2 failed to stat file - * 3 file too large - * 4 out of memory - * 5 short read from file - * 6 no nameservers in file - * - * Internals: - * - * Requests are kept in two queues. The first is the inflight queue. In - * this queue requests have an allocated transaction id and nameserver. - * They will soon be transmitted if they haven't already been. - * - * The second is the waiting queue. The size of the inflight ring is - * limited and all other requests wait in waiting queue for space. This - * bounds the number of concurrent requests so that we don't flood the - * nameserver. Several algorithms require a full walk of the inflight - * queue and so bounding its size keeps thing going nicely under huge - * (many thousands of requests) loads. - * - * If a nameserver loses too many requests it is considered down and we - * try not to use it. After a while we send a probe to that nameserver - * (a lookup for google.com) and, if it replies, we consider it working - * again. If the nameserver fails a probe we wait longer to try again - * with the next probe. - */ - -#ifndef EVENTDNS_H -#define EVENTDNS_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Error codes 0-5 are as described in RFC 1035. */ -#define DNS_ERR_NONE 0 -/* The name server was unable to interpret the query */ -#define DNS_ERR_FORMAT 1 -/* The name server was unable to process this query due to a problem with the - * name server */ -#define DNS_ERR_SERVERFAILED 2 -/* The domain name does not exist */ -#define DNS_ERR_NOTEXIST 3 -/* The name server does not support the requested kind of query */ -#define DNS_ERR_NOTIMPL 4 -/* The name server refuses to reform the specified operation for policy - * reasons */ -#define DNS_ERR_REFUSED 5 -/* The reply was truncated or ill-formated */ -#define DNS_ERR_TRUNCATED 65 -/* An unknown error occurred */ -#define DNS_ERR_UNKNOWN 66 -/* Communication with the server timed out */ -#define DNS_ERR_TIMEOUT 67 -/* The request was canceled because the DNS subsystem was shut down. */ -#define DNS_ERR_SHUTDOWN 68 - -#define DNS_IPv4_A 1 -#define DNS_PTR 2 -#define DNS_IPv6_AAAA 3 - -#define DNS_QUERY_NO_SEARCH 1 - -#define DNS_OPTION_SEARCH 1 -#define DNS_OPTION_NAMESERVERS 2 -#define DNS_OPTION_MISC 4 -#define DNS_OPTIONS_ALL 7 - -/* - * The callback that contains the results from a lookup. - * - type is either DNS_IPv4_A or DNS_PTR or DNS_IPv6_AAAA - * - count contains the number of addresses of form type - * - ttl is the number of seconds the resolution may be cached for. - * - addresses needs to be cast according to type - */ -typedef void (*evdns_callback_type) (int result, char type, int count, int ttl, void *addresses, void *arg); - -int evdns_init(void); -void evdns_shutdown(int fail_requests); -const char *evdns_err_to_string(int err); -int evdns_nameserver_add(unsigned long int address); -int evdns_count_nameservers(void); -int evdns_clear_nameservers_and_suspend(void); -int evdns_resume(void); -int evdns_nameserver_ip_add(const char *ip_as_string); -int evdns_resolve_ipv4(const char *name, int flags, evdns_callback_type callback, void *ptr); -int evdns_resolve_ipv6(const char *name, int flags, evdns_callback_type callback, void *ptr); -struct in_addr; -struct in6_addr; -int evdns_resolve_reverse(struct in_addr *in, int flags, evdns_callback_type callback, void *ptr); -int evdns_resolve_reverse_ipv6(struct in6_addr *in, int flags, evdns_callback_type callback, void *ptr); -int evdns_set_option(const char *option, const char *val, int flags); -int evdns_resolv_conf_parse(int flags, const char *); -#ifdef MS_WINDOWS -int evdns_config_windows_nameservers(void); -#endif -void evdns_search_clear(void); -void evdns_search_add(const char *domain); -void evdns_search_ndots_set(const int ndots); - -typedef void (*evdns_debug_log_fn_type)(int is_warning, const char *msg); -void evdns_set_log_fn(evdns_debug_log_fn_type fn); - -#define DNS_NO_SEARCH 1 - -#ifdef __cplusplus -} -#endif - -/* - * Structures and functions used to implement a DNS server. - */ - -struct evdns_server_request { - int flags; - int nquestions; - struct evdns_server_question **questions; -}; -struct evdns_server_question { - int type; - int class; - char name[1]; -}; -typedef void (*evdns_request_callback_fn_type)(struct evdns_server_request *, void *); -#define EVDNS_ANSWER_SECTION 0 -#define EVDNS_AUTHORITY_SECTION 1 -#define EVDNS_ADDITIONAL_SECTION 2 - -#define EVDNS_TYPE_A 1 -#define EVDNS_TYPE_NS 2 -#define EVDNS_TYPE_CNAME 5 -#define EVDNS_TYPE_SOA 6 -#define EVDNS_TYPE_PTR 12 -#define EVDNS_TYPE_MX 15 -#define EVDNS_TYPE_TXT 16 -#define EVDNS_TYPE_AAAA 28 - -#define EVDNS_QTYPE_AXFR 252 -#define EVDNS_QTYPE_ALL 255 - -#define EVDNS_CLASS_INET 1 - -struct evdns_server_port *evdns_add_server_port(int socket, int is_tcp, evdns_request_callback_fn_type callback, void *user_data); -void evdns_close_server_port(struct evdns_server_port *port); - -int evdns_server_request_add_reply(struct evdns_server_request *req, int section, const char *name, int type, int class, int ttl, int datalen, int is_name, const char *data); -int evdns_server_request_add_a_reply(struct evdns_server_request *req, const char *name, int n, void *addrs, int ttl); -int evdns_server_request_add_aaaa_reply(struct evdns_server_request *req, const char *name, int n, void *addrs, int ttl); -int evdns_server_request_add_ptr_reply(struct evdns_server_request *req, struct in_addr *in, const char *inaddr_name, const char *hostname, int ttl); -int evdns_server_request_add_cname_reply(struct evdns_server_request *req, const char *name, const char *cname, int ttl); - -int evdns_server_request_respond(struct evdns_server_request *req, int err); -int evdns_server_request_drop(struct evdns_server_request *req); -struct sockaddr; -int evdns_server_request_get_requesting_addr(struct evdns_server_request *_req, struct sockaddr *sa, int addr_len); - -#endif /* !EVENTDNS_H */ diff --git a/libevent/event.h b/libevent/event.h deleted file mode 100644 index 4c39939cc..000000000 --- a/libevent/event.h +++ /dev/null @@ -1,340 +0,0 @@ -/* - * Copyright (c) 2000-2004 Niels Provos - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef _EVENT_H_ -#define _EVENT_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include - -#ifdef WIN32 -#define WIN32_LEAN_AND_MEAN -#include -#undef WIN32_LEAN_AND_MEAN -typedef unsigned char u_char; -typedef unsigned short u_short; -#endif - -#define EVLIST_TIMEOUT 0x01 -#define EVLIST_INSERTED 0x02 -#define EVLIST_SIGNAL 0x04 -#define EVLIST_ACTIVE 0x08 -#define EVLIST_INTERNAL 0x10 -#define EVLIST_INIT 0x80 - -/* EVLIST_X_ Private space: 0x1000-0xf000 */ -#define EVLIST_ALL (0xf000 | 0x9f) - -#define EV_TIMEOUT 0x01 -#define EV_READ 0x02 -#define EV_WRITE 0x04 -#define EV_SIGNAL 0x08 -#define EV_PERSIST 0x10 /* Persistant event */ - -/* Fix so that ppl dont have to run with */ -#ifndef TAILQ_ENTRY -#define _EVENT_DEFINED_TQENTRY -#define TAILQ_ENTRY(type) \ -struct { \ - struct type *tqe_next; /* next element */ \ - struct type **tqe_prev; /* address of previous next element */ \ -} -#endif /* !TAILQ_ENTRY */ -#ifndef RB_ENTRY -#define _EVENT_DEFINED_RBENTRY -#define RB_ENTRY(type) \ -struct { \ - struct type *rbe_left; /* left element */ \ - struct type *rbe_right; /* right element */ \ - struct type *rbe_parent; /* parent element */ \ - int rbe_color; /* node color */ \ -} -#endif /* !RB_ENTRY */ - -struct event_base; -struct event { - TAILQ_ENTRY (event) ev_next; - TAILQ_ENTRY (event) ev_active_next; - TAILQ_ENTRY (event) ev_signal_next; - RB_ENTRY (event) ev_timeout_node; - - struct event_base *ev_base; - int ev_fd; - short ev_events; - short ev_ncalls; - short *ev_pncalls; /* Allows deletes in callback */ - - struct timeval ev_timeout; - - int ev_pri; /* smaller numbers are higher priority */ - - void (*ev_callback)(int, short, void *arg); - void *ev_arg; - - int ev_res; /* result passed to event callback */ - int ev_flags; -}; - -#define EVENT_SIGNAL(ev) (int)(ev)->ev_fd -#define EVENT_FD(ev) (int)(ev)->ev_fd - -/* - * Key-Value pairs. Can be used for HTTP headers but also for - * query argument parsing. - */ -struct evkeyval { - TAILQ_ENTRY(evkeyval) next; - - char *key; - char *value; -}; - -#ifdef _EVENT_DEFINED_TQENTRY -#undef TAILQ_ENTRY -struct event_list; -struct evkeyvalq; -#undef _EVENT_DEFINED_TQENTRY -#else -TAILQ_HEAD (event_list, event); -TAILQ_HEAD (evkeyvalq, evkeyval); -#endif /* _EVENT_DEFINED_TQENTRY */ -#ifdef _EVENT_DEFINED_RBENTRY -#undef RB_ENTRY -#undef _EVENT_DEFINED_RBENTRY -#endif /* _EVENT_DEFINED_RBENTRY */ - -struct eventop { - char *name; - void *(*init)(struct event_base *); - int (*add)(void *, struct event *); - int (*del)(void *, struct event *); - int (*recalc)(struct event_base *, void *, int); - int (*dispatch)(struct event_base *, void *, struct timeval *); - void (*dealloc)(struct event_base *, void *); -}; - -void *event_init(void); -int event_dispatch(void); -int event_base_dispatch(struct event_base *); -void event_base_free(struct event_base *); - -#define _EVENT_LOG_DEBUG 0 -#define _EVENT_LOG_MSG 1 -#define _EVENT_LOG_WARN 2 -#define _EVENT_LOG_ERR 3 -typedef void (*event_log_cb)(int severity, const char *msg); -void event_set_log_callback(event_log_cb cb); - -/* Associate a different event base with an event */ -int event_base_set(struct event_base *, struct event *); - -#define EVLOOP_ONCE 0x01 -#define EVLOOP_NONBLOCK 0x02 -int event_loop(int); -int event_base_loop(struct event_base *, int); -int event_loopexit(struct timeval *); /* Causes the loop to exit */ -int event_base_loopexit(struct event_base *, struct timeval *); - -#define evtimer_add(ev, tv) event_add(ev, tv) -#define evtimer_set(ev, cb, arg) event_set(ev, -1, 0, cb, arg) -#define evtimer_del(ev) event_del(ev) -#define evtimer_pending(ev, tv) event_pending(ev, EV_TIMEOUT, tv) -#define evtimer_initialized(ev) ((ev)->ev_flags & EVLIST_INIT) - -#define timeout_add(ev, tv) event_add(ev, tv) -#define timeout_set(ev, cb, arg) event_set(ev, -1, 0, cb, arg) -#define timeout_del(ev) event_del(ev) -#define timeout_pending(ev, tv) event_pending(ev, EV_TIMEOUT, tv) -#define timeout_initialized(ev) ((ev)->ev_flags & EVLIST_INIT) - -#define signal_add(ev, tv) event_add(ev, tv) -#define signal_set(ev, x, cb, arg) \ - event_set(ev, x, EV_SIGNAL|EV_PERSIST, cb, arg) -#define signal_del(ev) event_del(ev) -#define signal_pending(ev, tv) event_pending(ev, EV_SIGNAL, tv) -#define signal_initialized(ev) ((ev)->ev_flags & EVLIST_INIT) - -void event_set(struct event *, int, short, void (*)(int, short, void *), void *); -int event_once(int, short, void (*)(int, short, void *), void *, struct timeval *); -int event_base_once(struct event_base *, int, short, void (*)(int, short, void *), void *, struct timeval *); - -int event_add(struct event *, struct timeval *); -int event_del(struct event *); -void event_active(struct event *, int, short); - -int event_pending(struct event *, short, struct timeval *); - -#ifdef WIN32 -#define event_initialized(ev) ((ev)->ev_flags & EVLIST_INIT && (ev)->ev_fd != (int)INVALID_HANDLE_VALUE) -#else -#define event_initialized(ev) ((ev)->ev_flags & EVLIST_INIT) -#endif - -/* Some simple debugging functions */ -const char *event_get_version(void); -const char *event_get_method(void); - -/* These functions deal with event priorities */ - -int event_priority_init(int); -int event_base_priority_init(struct event_base *, int); -int event_priority_set(struct event *, int); - -/* These functions deal with buffering input and output */ - -struct evbuffer { - u_char *buffer; - u_char *orig_buffer; - - size_t misalign; - size_t totallen; - size_t off; - - void (*cb)(struct evbuffer *, size_t, size_t, void *); - void *cbarg; -}; - -/* Just for error reporting - use other constants otherwise */ -#define EVBUFFER_READ 0x01 -#define EVBUFFER_WRITE 0x02 -#define EVBUFFER_EOF 0x10 -#define EVBUFFER_ERROR 0x20 -#define EVBUFFER_TIMEOUT 0x40 - -struct bufferevent; -typedef void (*evbuffercb)(struct bufferevent *, void *); -typedef void (*everrorcb)(struct bufferevent *, short what, void *); - -struct event_watermark { - size_t low; - size_t high; -}; - -struct bufferevent { - struct event ev_read; - struct event ev_write; - - struct evbuffer *input; - struct evbuffer *output; - - struct event_watermark wm_read; - struct event_watermark wm_write; - - evbuffercb readcb; - evbuffercb writecb; - everrorcb errorcb; - void *cbarg; - - int timeout_read; /* in seconds */ - int timeout_write; /* in seconds */ - - short enabled; /* events that are currently enabled */ -}; - -struct bufferevent *bufferevent_new(int fd, - evbuffercb readcb, evbuffercb writecb, everrorcb errorcb, void *cbarg); -int bufferevent_base_set(struct event_base *base, struct bufferevent *bufev); -int bufferevent_priority_set(struct bufferevent *bufev, int pri); -void bufferevent_free(struct bufferevent *bufev); -int bufferevent_write(struct bufferevent *bufev, void *data, size_t size); -int bufferevent_write_buffer(struct bufferevent *bufev, struct evbuffer *buf); -size_t bufferevent_read(struct bufferevent *bufev, void *data, size_t size); -int bufferevent_enable(struct bufferevent *bufev, short event); -int bufferevent_disable(struct bufferevent *bufev, short event); -void bufferevent_settimeout(struct bufferevent *bufev, - int timeout_read, int timeout_write); - -#define EVBUFFER_LENGTH(x) (x)->off -#define EVBUFFER_DATA(x) (x)->buffer -#define EVBUFFER_INPUT(x) (x)->input -#define EVBUFFER_OUTPUT(x) (x)->output - -struct evbuffer *evbuffer_new(void); -void evbuffer_free(struct evbuffer *); -int evbuffer_expand(struct evbuffer *, size_t); -int evbuffer_add(struct evbuffer *, const void *, size_t); -int evbuffer_remove(struct evbuffer *, void *, size_t); -char *evbuffer_readline(struct evbuffer *); -int evbuffer_add_buffer(struct evbuffer *, struct evbuffer *); -int evbuffer_add_printf(struct evbuffer *, const char *fmt, ...); -int evbuffer_add_vprintf(struct evbuffer *, const char *fmt, va_list ap); -void evbuffer_drain(struct evbuffer *, size_t); -int evbuffer_write(struct evbuffer *, int); -int evbuffer_read(struct evbuffer *, int, int); -u_char *evbuffer_find(struct evbuffer *, const u_char *, size_t); -void evbuffer_setcb(struct evbuffer *, void (*)(struct evbuffer *, size_t, size_t, void *), void *); - -/* - * Marshaling tagged data - We assume that all tags are inserted in their - * numeric order - so that unknown tags will always be higher than the - * known ones - and we can just ignore the end of an event buffer. - */ - -void evtag_init(void); - -void evtag_marshal(struct evbuffer *evbuf, uint8_t tag, const void *data, - uint32_t len); - -void encode_int(struct evbuffer *evbuf, uint32_t number); - -void evtag_marshal_int(struct evbuffer *evbuf, uint8_t tag, uint32_t integer); - -void evtag_marshal_string(struct evbuffer *buf, uint8_t tag, - const char *string); - -void evtag_marshal_timeval(struct evbuffer *evbuf, uint8_t tag, - struct timeval *tv); - -void evtag_test(void); - -int evtag_unmarshal(struct evbuffer *src, uint8_t *ptag, struct evbuffer *dst); -int evtag_peek(struct evbuffer *evbuf, uint8_t *ptag); -int evtag_peek_length(struct evbuffer *evbuf, uint32_t *plength); -int evtag_payload_length(struct evbuffer *evbuf, uint32_t *plength); -int evtag_consume(struct evbuffer *evbuf); - -int evtag_unmarshal_int(struct evbuffer *evbuf, uint8_t need_tag, - uint32_t *pinteger); - -int evtag_unmarshal_fixed(struct evbuffer *src, uint8_t need_tag, void *data, - size_t len); - -int evtag_unmarshal_string(struct evbuffer *evbuf, uint8_t need_tag, - char **pstring); - -int evtag_unmarshal_timeval(struct evbuffer *evbuf, uint8_t need_tag, - struct timeval *ptv); - -#ifdef __cplusplus -} -#endif - -#endif /* _EVENT_H_ */ diff --git a/libevent/evhttp.h b/libevent/evhttp.h deleted file mode 100644 index 16744163d..000000000 --- a/libevent/evhttp.h +++ /dev/null @@ -1,219 +0,0 @@ -/* - * Copyright (c) 2000-2004 Niels Provos - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef _EVHTTP_H_ -#define _EVHTTP_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef WIN32 -#define WIN32_LEAN_AND_MEAN -#include -#include -#undef WIN32_LEAN_AND_MEAN -#endif - -/* - * Basic support for HTTP serving. - * - * As libevent is a library for dealing with event notification and most - * interesting applications are networked today, I have often found the - * need to write HTTP code. The following prototypes and definitions provide - * an application with a minimal interface for making HTTP requests and for - * creating a very simple HTTP server. - */ - -/* Response codes */ -#define HTTP_OK 200 -#define HTTP_NOCONTENT 204 -#define HTTP_MOVEPERM 301 -#define HTTP_MOVETEMP 302 -#define HTTP_NOTMODIFIED 304 -#define HTTP_BADREQUEST 400 -#define HTTP_NOTFOUND 404 -#define HTTP_SERVUNAVAIL 503 - -struct evhttp; -struct evhttp_request; -struct evkeyvalq; - -/* Start an HTTP server on the specified address and port */ -struct evhttp *evhttp_start(const char *address, u_short port); - -/* - * Free the previously create HTTP server. Works only if no requests are - * currently being served. - */ -void evhttp_free(struct evhttp* http); - -/* Set a callback for a specified URI */ -void evhttp_set_cb(struct evhttp *, const char *, - void (*)(struct evhttp_request *, void *), void *); - -/* Removes the callback for a specified URI */ -int evhttp_del_cb(struct evhttp *, const char *); - -/* Set a callback for all requests that are not caught by specific callbacks */ -void evhttp_set_gencb(struct evhttp *, - void (*)(struct evhttp_request *, void *), void *); - -void evhttp_set_timeout(struct evhttp *, int timeout_in_secs); - -/* Request/Response functionality */ - -void evhttp_send_error(struct evhttp_request *, int, const char *); -void evhttp_send_reply(struct evhttp_request *, int, const char *, - struct evbuffer *); - -/* Low-level response interface, for streaming/chunked replies */ -void evhttp_send_reply_start(struct evhttp_request *, int, const char *); -void evhttp_send_reply_chunk(struct evhttp_request *, struct evbuffer *); -void evhttp_send_reply_end(struct evhttp_request *); - -/* Interfaces for making requests */ -enum evhttp_cmd_type { EVHTTP_REQ_GET, EVHTTP_REQ_POST, EVHTTP_REQ_HEAD }; - -enum evhttp_request_kind { EVHTTP_REQUEST, EVHTTP_RESPONSE }; - -/* - * the request structure that a server receives. - * WARNING: expect this structure to change. I will try to provide - * reasonable accessors. - */ -struct evhttp_request { - TAILQ_ENTRY(evhttp_request) next; - - /* the connection object that this request belongs to */ - struct evhttp_connection *evcon; - int flags; -#define EVHTTP_REQ_OWN_CONNECTION 0x0001 -#define EVHTTP_PROXY_REQUEST 0x0002 - - struct evkeyvalq *input_headers; - struct evkeyvalq *output_headers; - - /* address of the remote host and the port connection came from */ - char *remote_host; - u_short remote_port; - - enum evhttp_request_kind kind; - enum evhttp_cmd_type type; - - char *uri; /* uri after HTTP request was parsed */ - - char major; /* HTTP Major number */ - char minor; /* HTTP Minor number */ - - int got_firstline; - int response_code; /* HTTP Response code */ - char *response_code_line; /* Readable response */ - - struct evbuffer *input_buffer; /* read data */ - int ntoread; - int chunked; - - struct evbuffer *output_buffer; /* outgoing post or data */ - - /* Callback */ - void (*cb)(struct evhttp_request *, void *); - void *cb_arg; - - /* - * Chunked data callback - call for each completed chunk if - * specified. If not specified, all the data is delivered via - * the regular callback. - */ - void (*chunk_cb)(struct evhttp_request *, void *); -}; - -/* - * Creates a new request object that needs to be filled in with the request - * parameters. The callback is executed when the request completed or an - * error occurred. - */ -struct evhttp_request *evhttp_request_new( - void (*cb)(struct evhttp_request *, void *), void *arg); - -/* enable delivery of chunks to requestor */ -void evhttp_request_set_chunked_cb(struct evhttp_request *, - void (*cb)(struct evhttp_request *, void *)); - -/* Frees the request object and removes associated events. */ -void evhttp_request_free(struct evhttp_request *req); - -/* - * A connection object that can be used to for making HTTP requests. The - * connection object tries to establish the connection when it is given an - * http request object. - */ -struct evhttp_connection *evhttp_connection_new( - const char *address, unsigned short port); - -/* Frees an http connection */ -void evhttp_connection_free(struct evhttp_connection *evcon); - -/* Sets the timeout for events related to this connection */ -void evhttp_connection_set_timeout(struct evhttp_connection *evcon, - int timeout_in_secs); - -/* Sets the retry limit for this connection - -1 repeats indefnitely */ -void evhttp_connection_set_retries(struct evhttp_connection *evcon, - int retry_max); - -/* Set a callback for connection close. */ -void evhttp_connection_set_closecb(struct evhttp_connection *evcon, - void (*)(struct evhttp_connection *, void *), void *); - -/* Get the remote address and port associated with this connection. */ -void evhttp_connection_get_peer(struct evhttp_connection *evcon, - char **address, u_short *port); - -/* The connection gets ownership of the request */ -int evhttp_make_request(struct evhttp_connection *evcon, - struct evhttp_request *req, - enum evhttp_cmd_type type, const char *uri); - -const char *evhttp_request_uri(struct evhttp_request *req); - -/* Interfaces for dealing with HTTP headers */ - -const char *evhttp_find_header(const struct evkeyvalq *, const char *); -int evhttp_remove_header(struct evkeyvalq *, const char *); -int evhttp_add_header(struct evkeyvalq *, const char *, const char *); -void evhttp_clear_headers(struct evkeyvalq *); - -/* Miscellaneous utility functions */ -char *evhttp_encode_uri(const char *uri); -char *evhttp_decode_uri(const char *uri); -void evhttp_parse_query(const char *uri, struct evkeyvalq *); -char *evhttp_htmlescape(const char *html); -#ifdef __cplusplus -} -#endif - -#endif /* _EVHTTP_H_ */ diff --git a/libevent/libevent.a b/libevent/libevent.a deleted file mode 100644 index 78cbd9ca80fa06b05c90e2061dbf22f7d1053361..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235604 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 z 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 z zhYI~<(yy@fC;cm2_@DTRPirg_{Yd{aF3Ncibf-Q@|2=T0K8U{te7q|izESI-?^7Op z4btF$;*UYUz?DuHI=}m7eM~~UGr!&mb+Mbi1AeIoAAxk#_ae|8eVOiT;Euk;PXHbr zYnPvRcaNOUwT}6G4BV-I^6&D*zXclgeGPQS?w$+UuYlK1KmhYZ;*Ged-zpD%z9(G` z_$aT`MK1#FCS2^NSBac4h@UF*F$KgPLCmkDT*NW0QE~t< z3>Wg!%5hD?bu+FTaTVjb16KvEDY$OHRgG&VuG?_kf@>nKX}GA{b+{^V72=wK>v~+X za8==&jw{8FxjFhE>*x##)9xKAVb(G3WyQmGzd^#Z8EPavTh^Il zy$|7j68;Ej&zEp2)&p`R97K4sgilL_t`aUsc(H_^#Jbp{5?+tBPt1#z`~s}|Zj$iI zvo!6G3_}n4bvz*Sj0{aXD&a?mz+WQf;A~UAk2{@V=y?WijteB*J6DY{TK}Y4Z4lb) z0<;ao0}*Dw41k~dc1L?KY++6GTcKy7u5JX4^ixrGG@l9&Kz{cNe+_haTX-6@LB1;`{2}U=pORCb(FkKa zRpCz&zE5XFccT4zNg#Rl14?<7gighzGUyt%;O1KK)8$=)9Ihuwg zOU2K7dz{cCXKC7I;mk3bDg_~XB z39j%OSNIt8bma7M(Z6!hZ*Eb5a?`g{F5z|*WaUX1g=cw`w`dlnq$&(=+wm>1$|p1(!yz-pYUi zZgq>`>%OQaT*Dpnjv6lU71bSc2o>2Ij2%`_McJE%V}gKUPceNzmlrAj@=mgfSru@P zZmVrGvC-6q+@gx=Im+d;R3Ze#;=D;ZV+9S)qa82nXgRf&yS%g*y$^n-;Tb(dH`v9~ z`0+r@^K})9Is99U5-`kt*}N~*26p)FhEr~&5fAM%%VsLi<#Xcx$KxRs+4do? zHgMZ*iCafGXa`h|;^~%Nc_ybLaMroX%JF>;@ydt1<9Xff)ZObq-F9A14&~w<8HmOz z%Na%Ja?C7L5N3}vVeHeJ<^aLH{^gSxf1$H&sgV&sbj zR;lOn1x4u~4*TgzxN@jE*$OknYcxL0Xq!N5@z|VL( zFyoUR)B!%E@kBefkSinQz~1>Jq=OK4Vz&U-_y^&g#!0;wvBzOpsF{oX@v%nd@UCKF z6gPW}XtPy@Ym{?#`xaKMS>#l@(*>R6(r~V_I>UnWf@(VFcD{N6EsQSessgpq-j&+j zm(gk^_%KNIJa(y~atu5*)5~z%bzqxSHaAA8#?4q>G0z#Qh0md?!P-fS!Gt43QT+au zn3=^h%8HcGP6zBFemWIb3SVxaGop*ls$seKl&vhDR#xeLlyDg3vl`zg6o)I>b8)9v z%&f^6K5PVryMGyIiz+eJ#j{Yls4)S9acNmi#;}o@BN@$JHXVa~~%*^4#hNY)xjTj=#Q+r_Wsl*7G!Fi?gd+VFO zajLFiilSzPoEa`)WV(&3F!4@)4-1XydD*i{`fI1}^>~7!qRGMQX~cSdPI?!))(NAW zS&rr`zz>yk=n$t`P|mW-vXYQpOmF#E&O=l*-PU)xqqLK;z(KHSQZNT4bjk-aPyPO# z@?l+GrDuYXn7_j$qT~Bo0{)7MO3)mfx!FH&9Wg!39PL-k-1UP>u^(jM%c6Ki7Zr`o z<@XKFZ#`tdjL^102GgyDec=%YJ#Odi9OBnvOjlHNWq!dm6JxEl3o;5o-|tC?`Exz_ z5iRXqQiX3j@x>qUj_pl57}ITS80x|O>*=Zw>emlfI_zWGF%w`Lk4D=7sQdv`|6+4d z42q(`1U~L>9~e4|hgXZNCb#oq9Gu1Dmhly}IX=aNd#eae0y6MnFHhd#F>24Fh~_n^ z=5@(**XfFQgc0~?8fOwkmKN@ePjmHy=xL(oP6^OZ%b&SurlSm#1G7f@akt4zV1g-Dlk6E~{`O`!k45EM3 zpPzB(rI`Nv-#xO{7w#$Uknnl?3Fbnm-w(dN%wagBUb#Y2q*RC551$7-t;-yfhI9MP z(FuC~UOzrX&kStN%WMel4V}9-1;@BUkGIg4C@{}x(HJ=ZM~0xZjKXTXhI4mDWFHL; z4Qw8#(w(o;;mo%OJER+zd1er<7WVSsJRZ}x5V7h&{osC_Jh%_ajp`P-w?FEI2OZcS zFQf6qt>MM^YMd^o=`th%2cI?XOT^dx=5_w&PZQvnrupMUcp*?{^1*{4D*2DN@A<+1 z09G+bJgpCngqY0|gM~%J&~+YSl*i8}B<6FJ6Rw=?80Aow#vP^oLB-&7Gvwcme%09M za)^w<}flc7YlmVaa5_F3nfC7fvLgYAh!?W#Az0L1Qk@XFI{tcY~R# z^3+GwJ6&yH`vrLZTO6^X-^fJZdjb$2{tu;o>CiqR-npJ;d<(kpDX;Rjjb@|acp4n5 zh*9nI;HYm+iJkla=e&%Ee>t3SjxMw|Db(A5a|7i7xAi2XG3O43-?;1{3&)sO`CnyS z>0fsVjC;q*OK*-Q;yjqP1mDi=EwjJLelv6u{2N4ni*Na%fp~YF&h+_*j4UNR0Y_L} zGuU{m`7@lFcL?`C?jrS({=56S`=2+jBdeL)&lr8bV)uv6?ZBSgDSH~&RjFKlA27mn zR;nbhv|hz~T}ri}bZtT?%lM+XHPOg#Hzy|P2l~^s=P~1pcbniS?@a$aF|8v0`%!w_ zgs3LJryxo*rhB*P%y>c4Bnh=+*0vXS);SM=P|d>CC^HYoW7zJV|D@1l2i>mF6bId? z(3o%NXBFDdiG56=bPJ;-Q`v9Txv5!A##euT+6X(%ItMZKQ(F^5F*qf7_2iT4J@}*9$Dbdnv9zzE>hW0?7Ox5&SNJw+g&MAl{!S{zid65qJ;Y zYp|{GTZ83BZ80v&4GY9FvBI$=t00z6RepT-Q*^38KD&u03*_KI9I_My;GD*PG9Z@4 zWAg##Nm*DL)hIiFi!%G-!jim(Wmt_eIj_J}L%R?{xgNa{S26JZiCA~We8pKyWq-RC zbgsj)ubnMn_Q4zpb81AHu)dHY#F2?@vtU2O6S1f$8E1c{KuXFJ)afNrf z!jHJZue-trU13fooP77Y=uf%AM_u9huJHf3!n8;@v#zREW+;PLWuT>G)9sZh3EK-F ziXUbT?CO#jTWLj2b#Vya#yjas%lMf;7&=?=9t|A{@*Q|y`3I4HS(o!K+bKu3;IO&DzY;XZWRGfq;9;l;7)c)x1M=`3En z^rb{`Xg#K5*xse4W4{N)bnHA%$5>^~bd0Yp)pQJ=Uez<1W3_h@<~EQ9M}G>zJc_B1 z?*C*CHONe`{I&c)tQM27y5>(X#J&1%{;C7xY5BjTK{3(KBfP|L z!VzHbD$MEMNlF#?T8CMbh_IMN14%~ow-{h;vxw)b(n2^2in5W+W%VeMnpJ@O3CK9~ zwEmwgW^fNHP^_fZy$CClCfUs26IeHPTi3wm9p#+4zls=RhrTWG@Rojo;Euyvl(n>< ziD3twptMYZO=XUT+ePjP(P}^Thx+RIFivPAr7~`qudO@g-%w;$)?t`EFqLTX>=#oB zy4?uf&;(*Cjf1JQUztjX8mrU}4a@$@F|nLq7<7=@U4DU+(T4h^@qYoH$cM0mKQ z*~iTF!&J@Qu^^;>(|>XD=5&;O6aTa&TBG|KM=k$9fT#nnV0F;tH5zL;q_A3-AqG;6 z+~np1bchc33d+dh+jCUY45TpN%ajpglqK~YsumFwRiacQ8znLeFz4Q9<|but2`sOJ zK>bMn#ocTbx>>_C%>uDF<8ojOUCaQX+ zA5`NldR&F@YV;7+3!=*-TBO4FR?_t;9lZ+1@YTnny z2(}wrx?GoB`%yxuZ@E6rf0V}+=O2pr?`BC3=VjtK)^FtE0A$LB%P82wrhkdy?}3w%op2vJi3u-- z&^!O2k*sVlmaG%&hVvQtvsZ%$`o@b2jhQn~C^TlyJgCr^Im6!lt@1bFwO?i;hEHkD zFaTUXSYx&=39J`_XLCmO>`7NaXNBn1ehCD}{cGz^esb zE-+KzWZX35A0QC+MdK>O;kV{Y$l_d<@tZ~NlLD6tJRK0fUSFV3k&pf)2zdq`;m-vo z2y6p0>3+0Muo^Nr*?mrAY{yN+vbcXg^uA*QWaJ{jc23A$zyHKO_zp5~ zJ8QjU@NvX+W*>~ifWfhA0tOY@>>NJ|BmwVWUKGRefaB2detsnEEZ$i%9~{N`!7vam zg>IY_y$FaITf^zdfJOqxFULrDjXYSh4b*caiPjU1aH0-}=))!bD!{fOMqUaM(U6Q@ z!-%eUuAc5tR90L_44-UvWu8}&1yk5DfUS+pFfTa=!0Z~)pxiODYk4HcFA$3s(2Hsj zrYOEV9^uUx}`qy7`)EZ&FiY=gf6%A3Ct60mOh0cXz?+a zZGB#42r@zZ9|Wn|Q-qNCOTae2V;IHe)g3LP)m+QQt0TNx$x9xU=MNWKsqi1TB16p>^*Up@j*LH#ZL8}t}k(F>>pbjk))^RBj$Mjq_1{l*kz zTNy7UBOp@^WAUBEcE^_gzC&kE3>0lDX-+4`lenPtd3%+nz z(A!*;1iOx_{- z-p6WzJO#e7(6YNAP2ou}X4#F}{CJ6FyKuAL;E?MDaOuJAaMi)LJJ~@v&beNUtO*_? z>!)}Rg35H})icdSgDp(#9ZQrpsAG^C3wPo8?>*lf!{7IP+N+#6)P9sw9tak`5C1#w z8{z%z0%Dr4;1R@4@O8{3cuQw*V=UF|RMqgO3F?ND+6>w`2kQCC zf+L<{M_v98GH87m7~Z=SSi$cV55oobH*-)m+A)W}{L?O5QC)e#F&sFpwDyN4{M#~B z9d?v?pUCVfGF|nRDFzNa-KX+q=Gd#ovcI4#t`|7F6dE&e-Ub@MP>8?w%^Jy5k2;LS zHWBTPdZclfdh0E%G=c2-Ma;JO(Y1xa!k|zyO0Xtgb4hwBmQ71|!tk`&RWopGvYlp> zI+!@jb5AoAo4nnbp{7~Ph|hig`2OQLw8@Xq8a>gw|BS)!e{C8mi%8RQkOxF3_7RvM z@bAcj^v!_CHgSeP=bcS=!S4eT<1ZA*ccV=ACTydw_GD#EIcTrpBHuI{_8K94^mt4D z*TGA;S|Gk5YJAWx{~9`+GK7Acz!L!>uNS`AQR!a5w=bsfPX+Clz;ATnj|ty0fj0x< ze=mM(!+b9ic&@-SfqezyR%k8AvqD__oapwfSBv!x@(VN?Ad$|#EwpVIA7v?i?$tyX}$+y zdj=7v-Ntzw2Ta;t?4Q{ZX5TzT!tAqyCCq-S9yj3U?-pE4I}z8J5@!F#e`UjQzB(Ua z$M)Lh3a@pA-S*l4xad1v;h(y~_qf8VUEw9J@N`$W+7{s*ix@KnsgE=asSayAD$3nuX$zB2R_Id5g`w>8-Ei!G5*&mKmw zHL$7%sBOD_&np?Xafj?7%-(7@`+MxKp~rbYGbA(ie#Tbn`1aRG^b0NBZucE*{7!!L z=u`YAkP|}3{<3e0fA9UwKhQs!p1%+TT**KO`>V7#R7|4%^X?TpVvkW8=gT6-VU59} zqG@;!7XNu=q(k>oiAFH?a~JuC-V=QbJ>Ejf0*@YUoqouMdlUC$0c4!vG5-D&8}3vT z0Akd)QL%y`(3uU#?{-c_+%OC#V^LVQ4Ts{Wy_Hmj;}OT83PG|A3;gqw^LzpLF z=90uZwsd@H?w;Q~32ia63a49oJ2K_`+`_&Xo5!*29s`pz_u*;1clM-5 zmm?q8HCEm{NKxh%HD)@tq$BIfc!qb!GW@A0!wfq^^#X(f*o-FRB4cVvg-;}oD7eIB zV#It3$a1ROVu=cLjwUQ2JLg2BCbcZHmf$y+Dmwed*8av)Z7wj_Q48myntdFHZOkYPZc z9#J8u#>i~J{~&7Yx8Uty2Ir3P3vSNyC<_spc4(>PXWpflKEn256#iVFH=;laM zpN|}n-5Gd=gW@a%X1BsS3?cnR;A^@zVA zF8UWr8mVthiYmM~ikQfp>)TH94HZs3W>+^~c>;pN+KymOEZihCg%UE!GbDN=zx+L@7T1tN-bfT4~YO@Y9B1=i+&zzD5 zr?v1%)Q3vTy+Zo}yF2mMu9}M(hpHK(vR4HiPAPfw*v@92>eqb78Od8f3RGd2qI~@1 z*`oZS;L!ZyQZsYxg4pwQJhscQU7RL8)ETw}wFas3K0ADgI95q7uHge7{twcpo?UZp zkN^FQ-eVHj6a2s6F2Z1#_>RC9f$%up_>Ah{_@*1Q7lHHnf}g@42Y$CJo_n(>rv?!J zdyNx3Q{dmwX&E0Ch}-aSJ~t_EF=+4d8-I~U9Onjfh<{qr{Q`UiF1|;AJ9;sl=}E_% zlKI{RNWEqVeyKq2;bQ!EzIcAmp+g{i#Pd60{8T<` zfIE6o9&J(bRRdB#&aa7ICGZmPCrWzG@iSfNiJvWeumu{^kr2N%q;r6vJlYMk6Zrh* z{GPT0Z4}xJd@ggHmNo;QzQP<9Oc(U7X#y z9dmKk@R%J_RFpC4hWxR?y!1)<0wg#VO@v?KKFoyCp0fH02<6L5P?AnY%2m_V30ie4nJ zN?@(P`vm@6AiA>R$B?5SObrG9Ebwz1_DIxxXBFU1PZO9c@J4|(0`C_1fWTh~d|lvP zf$cVg^`PYTJWb#TfkA=S37jDiKK`gj&nE=FDNy7kr`mY(FoD+yoGG5|}6OMjQH}C-d=@2_5}Jr9*owh<>JEv%o(HY_p+%vgkS0 zh6ymw$e)Pij|bZUpAd+CqVU}Up+E7i&|ASX1me-7@M{I$F3=FTR$xTn`vO}9errRX z?npV^P8W#sD}1~_Jn|G?EfDRY@J9qnKHWA5zC$3&O}-?QQ$alH6g)?u=$}*|IO|>Q;kVq6H0ZY!L)*Y~ctaK-j{$SOPa7GEIeQ*KQ-3b~M~6}C+C6REf41)Lj9bL8 zDDa}$)}_64_&)2lSobmO{<(E+IYqRePH*{DMEmLR&y8DhQUxwjw~~Lf?$50I2jfmG zvTmtyLr+?LvctMV*8LmnQXj2v&R7>cAYnO|s9p4rc9CoCF0yXDbXE`WZf0kz1zBLt^1I5JB=IpjtYG9AhVKx zu(8G%O*V!jc}cqNg~+~j*na=@kwT4Gu3BIA%XX?w^9!*ktA!1W&XWM2* z*=&qFXy6;9y=jDy;iof~L_c-*ONJiSG3m@i`e^lec@3a--N%-%`|zrJ>O4GN+^T!{ zo?GMCvFldcTYvAza$$F`y65g?YjR`nksG(R<{s{kt-Sl*Pplj}b_8y1^lg2NFSb3% zLn3x|l?|;kUP0uG^rkr@A|D$S+wzEf950)-wX1{c&b|n)gpUYnOK%3Lxj5~WYo=}) zpaji5YhM)KW7MK$Nu?dk1j>f(bkBrx#mpazgy~DNw)Q4ztNzTQet`g1nK;u0{8=^8 z{)mwR;)j?T<;F0J8V@wWfv;t>T4b9_W) zi?^LLHw!Y{Dh)o0T#+2T6f!+CH=ls*S30kjJJSa&aw}kuKC&^BgTX@g9-G37oj-+W zo?KRYTF+Q$e=X~u+h=HS|M+5$QM4dX*)Nyw{B@(-;s^dFH^{iD?U!@xZHBG zgPA5pzuu!CmBmSO=rr+NfiOD|vA{31U&`$>Wk(%_p+#?&C836K~t&3FgA>?ml zOs)v$pb&&e83tevD|&3ByyG<%6Ea2&&AgHN-4bOYt)@U}7;@x=7zTW9uZ?;{%xInL zOD`lG{Z!ReANRWIyIeHP=y%LKoiF5MOZ289Ik6+(#DXDXzj0*%j5_*3D(_JnNvz}E z?;BTFc@}H*+hTU!B*fa6Tr>xz{d{qw-xf2R_xgi0M*e5kc#185qA}iLv(4-;Y}6BF zW2DLS6H}29&z$}Ho^8u1#7MQ4byGz4RXmS-qh3DCyva7^ZB%RX8{>9rcIjY&M))%K zH<{05u5)G&uIttvc@Eu%7)FgRa~whk4OZ>-&P+(aJ7A&l`Oi&gKe)urU?O1fXb((7 z$>8-6+VdJ2Q=t_>YYO$2b~c!~@|sCL(sJtcL7Ut&q+&JV?`r4OZ{t+@Soc{MR^Mjd z^Jyy9(?WZp^}S#I{{I1;nAqhHtFyxD9ZV?|x8WeRin0D~sv{ltf}0XRv1??0%wXTo z`$ID?nfxlqORcQ?15K{p@dp!s>*UR_En7Ej*xbIQ^U)0pN8gFX6sZCUPWC{9!cMRN z9I65wVO;r(uUmKRGZ!RDkdFG@Bzd7@VJR;4&;I2*F9D85=r|0HcgO{f%wNWz@7#vv zVaVpp>zrpMB1j9A9)^b&x50y zWZ)@3iR-5Wdz-#ugQMf&)55d(Nnc$L%PR3t;Mc%U{%8;V!#=04Dr3L7+TTJKh-~eQ z_;ZH2Up%A&Nfo%%Tdd-}6{@tma79A}l;u*^1Y1^xEo;D(wQZv*3s;x5t(p97D!y%k4qp^}LL>Bf zbuAtIwkp^4l`_M+&L^mIsjYJpbuP1Y7CQdjb(Z>4@3O%^S8=Jgt~31i>e@Tk^0q?r z_CH$R(%w3FMH@hKl=|rUF5C0&6?X+Pfs_meRrx)xiqj@1UD~7P$*4-LzOE~=CooL7 ztoJ5WE@A2}GSTAY;XCK0+seWB1UN`1Z8P`;?GPH-HsFZ6!3-ZG+cwy?+2CuN78M`- zf-2SJ0bhXhFZ&Yo8d((isf7;Be_apLZW7N!b1FdF#8Xe++$DACE??cXfF6_hQgASd zPW9!B+4h!v9pI1Xx=;o@FB3eHU$^m1M%D&Ju7e}%13n|yZdA+lSh6;_T9r}HxaFUw z8@`k;ZZiDd)}qRVU*s)Mt-7vDczIPmBJZRvAH_##l>W30zDR%Cb~7>#A51?B3_z#U zCAZDWd~K%t(|@qd%Al*XckDLXk>&k+YdzjC+w)#SPTRKk(qDC3(5})BqKl+0;GvPL z)xLJH{GiM@@=@C3wFCV|^MkhZ_(A)X!XIe|LnC-~JH#!1)Jso7{GA z4@cL!pd${1s(hhF3ZnqS&0qrk!cM?W!6FXHza8SoEZkgbfvMhb)1z$#PpG#j#bx+^A{IAuxo(sV* zd-9ujLd9#@)pmn7oD}{@8`YOV%Z!39@Wwn?&u+~RqnAmWcwUv)_V9M%U-SF1p2PgY zX};l{(_gBb1Gyw$QBJ8LD(K^^tbx{mOu( zNgPr2qHDwtocWiO$@t@6i!ILVuIN#D+ zs`2c+{+#m-jptDfUvY7M%`O$#z8pPOL;6)0=MOGdAx-NpP3wO0DR|bT`6c|ZeP8&M zYB9X(PU0uN_J5OpF*US0{oWzX&tCc?eAN6rI=3s8n(pW6K{uotQqQZ!$bO}JURBmo zU#Yjy+VkaKbUFP~cRBl}#(GZthCUEm@6J#S9YGac9EaCW(6`sBF#dqEJe?lIFYpC> zWHEWMYY;!Oejc6S5EsCIMB3itYtM0`&nV-F<_+b%Ec9x5xb6~pLgZPC8%D>RkU0MD9k z`uN~D6&<0YUYR>;Z0+5x8r^+rP4`ox|3k9`pVlKI`qGpxX?xL)((ayYEV&gril$sR z_=2iBxI*1F_`0ea{E14k#;F`!p{n`S4;H8jXmN2H+*MO9h%UBzxHP3EcBE8b2e5?D zsbvQ}Yx|@tI+{6lg~+Sux=i|zO%F~P8<3wcvQweQ!Cl~4!5W_QdJVHnMI}G;LtTd8 z&hTV?`kmC{M&2dfuN(S~f^WB$k4v>Gon{Pg=p)?MtwK#|Qd4TRTD)wOo(>*ynx|Aa z{Zo?8@$2ZflV|OpsczGH3?1FOR8`w{jeKn*bpmHc0y#$Rh37rTe$(X)sle*=m1it0 zoC6C3>$b2Uu$V7j5E&^0Ur6c;tkwsk|6W>9Ssy`ZEs5cp)-m^gt*s zX(X)SKHcDNd(jKjRe8J|0s9DbTOK{ti+nOJXVRoTL)#)l($~E)5>oZJ3+)5{6XqP9 zzBxx5Wp>CIzc`*w=Zx=NBB#0!wWv~LFh1DAe2%pY`a-X361&h1w43xxTrPbh zpJqPtFHcDu2u$V<)R#6*4|#pnuW!HgKJ_W>S=})tavta!TdzhBIQu3YGkSFrU-e0uem&^lVLM%$@ZK+5rSO;SzVW%X+N*m_l$r{^}k=+MP8m~ZpD z?<3JW(YvwkTca}X2oV?Y!mNuz+h0O1tj_iHEjAF*gI%DJZhcc0Sp#-l1Ra&A)agws4}uhT#2m~%XODyd2y6};e7?%F^EoT1*@ zKtynEKN66BqxGy;Z;^Z2wn5~kgE^w~MZ)zd7k=Uj96eZ%ZoDm3cb)X>F!9yQF)J8L z>1(WaW~I-2`X{yP=FB)M`iAw-py(OINTJUf`d&~KsZXoLefOh-mN1Tu);(LD=92wR zf5{2w_{4#vitMxNg5j}s%;iNs9aGD?r5-&hx~R&hvtp#FmcD@8hyQj1>$j|)LKpq( zuN;?tvR*k!HR0>%j9S_uRGUzf7%NrN^5u7R$3GGy-syQNs(m|ddPet zM4Boet)l<_tNQ^J?z#CpTK9Q+PsTiCDlGk#HtvAd@XOLJKD{S>RODWCoZ|+{eB;DH z>ir6BxK(KK<~dG(1RG58Pi20;MCNou;C?(1b(fc%>zz|_L3pAEGI=%DRK zk^7^8Qhs6lW$-J-udC*X2^XE2fw1!cI%p=c`GA)3IIhxbIO^-K&*0-KL|;<2-Ads} zh&f@%j6>;@)VD(7Bs_XvTH-kSBFuS<-;n--Os&PgSoa}Wdr_v1?{JX|pY(ilx^1t`mDZt zPC*x8k}~=Pcsf9PaYp~$I_#(rq47U4J{R!+H#h$m${iISE% z_|?|nii|nvmEN0*c8Y)S235KJuT=FH|5YXb_ODbG{(9WoWPY;kL(I9B|Bt4@PpUe` zYZq7M-C{?~&cSX_3HJuoP&1_0PcG#?ja)Uscj>DQQpP7=EKH$O-QEqR%lb5^P>qpYEI{o{v z$r_xpV*)478`7_ZKH9+*T_An?oABM=x5cKCdU38<&wK}7Ux3%L_E~vdSNAQenfEe3 zYMS2F{m`eoWX_Wc6<~`9N73Q6BFm|PoAsQ{=mzEy50O^#ldtygAo}>Fr%4;tY1^3p zxaqV`JEQ`cbl{b=Zgb&Y(l-eX#;voGN907-Sdu68m)S7_`H;CwS>Mf!2P?e3jU2;w zcX?6UAiCO}rlLK4Kk4eJ`@Ybq{5oPmUpl>P&$uSHj5Q1WW7$!)M#evxpRrbnCe=6{ z9t=X8!P$cC$s&W9WFGsNDsR(KqP> z7GHx~(=49b6lb_0>7alls}3hVG#HsP5lMHOcwsbb4`cd4lo1ba9i=hy4m0KlRdf zXt56xw+p$e9q|NI!dXl zXP2o@1+9GwTdvesY)(R}r0GH4@mC1`?weLiyx0`WB%ZoQ#g5rKM``<%-iy%j=@!~7 zVt5&-cw|@wnG?pPPBp`}P7jQ%6Z0}9?Z0dfW5{~?v@7XCZ)v!+4fQp;JtQ*TM5 zdAD3mT0F<_PT&$xIkmbzM{?~>!9O_7h5b&y^ot_aQ_PPU@8+|0^^^wv2BPe5m=9i4&?5liF_)M9R)cqrQT!UUF z{v2~w8C&XvZ_+D6OF%#6$=Q!|as0FPUE6uy>o)^0UZ61)itxo@ct3>~;PXDSzuM5zNq9X&9l8xoox_j+;brRj%ln3AsM`*bW;^vFO|26|KdZuOi8}~v|8AD1_p3VU zSn0l^l75|rz0B$>RknW__9oq)>0#^w%JN~*<3nQ4?|0Gmuw`ZGBH%4r}vTz4qH@ShRn3N5z9J@!2hN^b1a0;MSSqv%A16_scmB`S9k?jfhsW zDq0_#x3u-Kbq}_$e`rhmmiXf3+LZXNhW_5|N3@0)wnf2vW(76 z9q}bg;`iLgJGxRHSJE}@@lCDG9J$@NWmA0pV;oubzFTD;-u-y;-cPQ(du3zt-a5)@ z-?+i#(GO7F8K1qSSam{Sr+m7tIlgpByvhr6FWyFw&vH3F%a$)R|J(m&UPO(({*s#c z4(c)SoJKJ7+yOQ7f(Zwjc%kGRKl)wZb=(s+{V`wq!=xX!=?6%2n6H9eG3jQU=gdv5 z!CQLjfSPf}gp1mhDn0d*ngQNfS3Ef3li=y}g()xI=!MBoIg-ApQt}f%V$v7xwPDJZ z^o9KrhK{76dq&i{VdIuHa72gtl!e57NtG$^Uhv9!Nlk}-KONIAkECPzMU%d$)Ra42 z_y^q{9n&xP=>Q+~nsvs9U+U$n=k#Ma_^FqqFM?jF=X9x;AO9gge!j3m1*AUH4x0K* z+a>3vyz&mHX**50s6+6*q^1pwY?o>9OWMh_3wTH;e3@2He6aud@O z`4c)zFPU&rn}qpM50S4@=#9{B=`?Y>2t%hQZ>77)cfi0eH3^*XegoJ1q%Nhl4-mF6}UtdVA%@ z8V{(cT_!vM`eTjU^r!C9Kc~_zI{jMY=a^|1ogRKjxP){%ebT0@BmST-9py^6g#0=k z_0jko%CqtsYlNO^(mn0VS83ppxa5Pr3Ii`8pQMk$-*{a%eQdu8Pq=8xiS0Gz#C9M* z$f5k{e1k^bO!$C`!3TktTrlOtTmvsTXYr&g9^ub<4-fgMw}d0$lX}H8pK#%?@a?)` z>$XdN!c8_@X51-P4Bjc1sh8~!Qx3eOrd$HA<%H+juS{F58NSLT&}KuxY2iEnbkz@zX@@I~Q|&>g)v5>NCU z(yh(niBfL~N2#;W89nRAOI(-G^^%%IdwOy|spEi}M7)Hhev>+YH-X3UdlGUtX{`xQ zQNU^ENfA@OiKnf5*t)Kvb0YY?_MBMxlA0*^I}M#W+)3EtpICW7O>8&muM6{9hJ@Qp z`YA~phL4h7+D-D83=+0_xMU4sfoH-8R0;G;SmdN+4L|UR{6!8KIwR08{KU!7HKFMx zHQ_RJ*mjxFbU=w75W1(vIASVc@CkhC5ef4fGI%EJ%)zsR@D)>Eoo~Q|r|z+do4cdF#;cSdi`AIlls7i3?AV>{r>vX7LO}<@OM~ut#OO482m+) z7e8j`3wOSxiq0B*ia#AbL)gkgxbuK2I%U$!_@cunP5M%u9ys-r^f!Pv+{s<@!?rwI zpQ5LM@As8AVDe|m>o@sL7qw*JaXY%A<@C<*l*xY9zkjR}S=geAM--H~BK< z)S2|9QCm*Jq|cO7Ytox~y`;jY38%97!>3GouO4CHi;r*NV1sT<3KgzN0p&FUU5JLDor>D zUGWOwF~XG=9tIvU;b1xN@Jl@ZO1Q$nZ@h4T^VB9BOz?uv1>mO%ms|J=;3rKuxEA;c z;D-puEqp(4{z*941$;m79fWN^zi|NI(A~|orFtm{x;z4CLBBnybX9G;h2Rd zf!CXG@Fegg@M^+Q3$FlPX~Mw^z$<{q2uCbD3_N1O1tH+@NW!-@;No8>F7XS*g+I58 z8@Fzmb>X{?2d{Rc)&-9agGamI(Jm;oTZLynKkzEvgHZGM-OR6&pDf!x$Zs~k_nYok z($3{qLI3!^c>`$z^alUg_#;>F|K9jZpsAq9_@hJkXH4X5CVWWnUqHTdA+m+{QF-f# zF|`SQpY`toPuTcpo&-2-{NWbT{KEK4hw&e`e#!fy@n64_^xrf7V!VL~#$R#}{{rKm z2w#IUjDO~7;_o*8Np1M=wElYh|GV+W>hNE&=?~!lk@1&4jsKh0AIJYCKiI@3SK)>z8m<4|Igo!V#CVrjqPXec^Hhz43CffMJmH7YCraytd-T22Hz~5l} z(!bOs%Ufs;J`Za(ck%zJ&;K2t|G)VB-}3qI#4mp#^71@!2G2ZS{CevrS@0{qG+*-h zyRv>Y&6mEz7az~Yt2tSJFq!d>^@xSNUzNGIr9I|um-cE4!8-4W1oQmDh{q5zF!OxE zwP13!Pj0z;*v5L`VXTK4Mn2)7-@owg%L+Ojk$Ez}yOt%8F(bKN>Jg%I`ofv?zBu0_ z8gjom=ZTEb?`U|H8~IX&v6*<~+Iwe0;s|oNEi0cqw`|hX`QO&?`!z84A&%T|CXt8I z|B8nOX0OhfrpXO+xvg2>!xdT|+T2N4wQOzY0xY+_)@|TMI0SR4xxK?&(6*Q11b6n` zVwj|F?>^YFo;%W+FUpt__4{C?&|j7GJqPA*VgEA<=It+Qm$RJG#y4*Hd2d+=u^un% z&0>iX{`rC?m-omrCa!gxHb1<%bMwO+o3DO21Hkl@mGva4Mv$S;%4sdY3=|1?(fN*Px7lEL*;qgYFE^d{mXxUFYH3w zFy#-Dg>onM<2vAAOwxbc-)pvyG?<9dcL0kMKt4hF4Y<&e`OEn8-u@LXE41$WxHngPinLTdat=3BHh#G`$2g|{B%V3KhA-(xd_~k^S5v_R8(O49-cicQ*1~Ml<`)eR@xdy}6>h9XUIibEkm# z>fUDdp}(Nd`j>IWBLt%q`@?b`D#{sA*@rD>FI&zzagTz1!<$t!6$-{ub)2sto-|?Z zlz^kcoEqBo-4n{Wg;&;kuySD&AxoiF!?WJ&ixPd^{FW5wbX)L@UqP8 zgR!qA=U}}(v9i?63ty!UCG6)(U5ardaweYrunRrAF6wjO#0}Lv&K@4;HIr)mFH?V_ z&ly!^_B+1?&zg&doc^Myv#+S!X;ufR!%FXr6MS7OdwHgAh4Y*;_FWUu>RwEw{`gm4 z<=jej>i%EHQZp`o^{JbnEm+veUUW%!ys%T~!Cx$Un6kG>I1DX8jl1PX?618ykM?fr zS@C_nmo@6ll;ywh+AlZkvqgp9)aOk(`=-zO?vb+yW}ByEq5&hCW~9oxjU% z2RXy~EN3{5WX=%{fkGiqQMu32^FmP015~7D{!@(o(**m*P7n0=JoyuNI_`&7ek&Z| zbKeEMM?LT?du1Os*?`8yad2?HX++(v z93z8~RPfeVinWKd1?{k_=L!19E>!`|A;X_>yV;l2eMNAwHya-8)_tX8?jDt1wp&GO zhS{KJZSl#s!nNE(Ab{e`XIk+lSwK)Rxr+J_TQ+(ieoLlzS6$QSdu~r&?*J_2AvZS%p5W|Aco* z@m%jHdXBs$nrO)uFHN8v8^Ehpe zOp9!%nm;0STf(`3sOX^7kzj1_sHJ~q4*kfpzJu^qmVWeG>9+&UHNE$93NboI8V$aZw);9h>D-3A<8 zA430!w>2Y&=T&I%82&o$i0x4+@{i!X=oS~cd-`e5h`ICRYoB_reWY!KH;idY($x&f znRI>bvr^tQci|2CY?GWH;~ZzHy9YUeFYKqUl6I8z(hsDqH9zcKjZA-+vEWPQP7Gxv z{C8sHe4{zbt5lOxs_$kg>kn`C*3xF2L*bmPoO@QOrx@=xPKovOuSq0c$vp?7{)^LG zQ10{>lsd-?>bTGTYR}#^4LvKr-?bfC>v<4;hMwnqN|ETRWv*)M*{$`8BWEut$DFS? ziX0r#a^T2W2YqIO^K|Z6+TNb!qP}GgcWVR&or^@qIP=k1Gi+ozGrs4Xk@e))32>g~&q4G&z( z13!}oek2ckC=a|p54{8YzxhFS`ZsNU zWNWcfcD>Oojhycc1!>vf-`vTu2EIbY7C+0LmW*`#dp+SMreCkqox{d0Jj^tkaN&@+ zFR4N_QnCA-MqgMcD}Gzi_~$FDSKPG>fD!D3>rl zTYjM}fBYpw$GBsLj&aZ-^o1^%aOi{$qaB3Kf_JQY+PdJ^@!%6zY?9iAF2NIQvEgzP z4%mEwBNC78_K=}hDjcXHe2{R$)K7;G5I*IFvF+|R>5Bwk72&-meG%&m9fp2MUnKRY z;eiw|4) z0Pu(jOI?cwUedPi;zJhRc0k*@B`oC>wE;g(`hymp1b)(l18u;Qzz-2VVBr*G}C+fWT>wW(Feg36czxo%OScxIfj2G)hJ{9Yk+bl5m8QQFE z%_fjTY2I^*HY)R|o(<=`REtfuS(_3qc+|_b-s^o9ZjGeb(Ae+lj($RyjAHqHxbwkl zm@3z;+w$S8g_5H6IX~V+-qgIQL)n)ECDeh*64#g(Z52nEDK~Cz?&K}9$F@9d3NEj& zTVDThOr(6nz+!%I6hyGMJwi|C?`q#Axb3R;#%f2bjbd-~TGT!nrX}hscE@(5;#%Mk zANu@Qf5i!415kyVu{#z>%J*k?EWBd!E9_|#PLS;mY=)9u|Gf{pBk9BxR|E}WcP#0` zO@JeeD}UG>^S!mjq=-C}FE~IZXE(H-5}TpuEBTW`&}nksLq0P<`5mG}-%Q}wz)$`p zjr>G^h`sL`?_^E73_Q+n#9zjq#hOmvGkJzPElsQetWC>t)md4mvW^+@?jvE>`-)y` zJR$df!mrA@nR{pZWnE18Yc_m{O8!~I*TpNgleRdw| z_NddX8gVyaZ=v3WvvCjL&JaAAHKfHuym_aBut!%D<;xFSzF^rI)p9t+t{hhT3P5B)ehs{wz%US?T)-lAnlmp z(>VRsgFh~VQ{Jz6>vpeQhlF?XbH}Sg3tVkajP$q_Vn3-vmi1j2`1F+_WQMz zWbk=)cQ9?vVS?XKMLZruHHKUT{rHaMq0U4<=h z4)k=8XV~(+McZuPwb*H}!<@8sn)>%gTj&|^#i{c$(x1?};HWw&I6eDNru}mIg>D0B zQ_Fwb7lrp_ZmT)~52KdGo!HjUZ~D#~_m6^a_;`MZ@Yg+l!>o`4NnG0+ zm?J}C7rlyZ9fJ01WZ>F52E6d#2U0fmZqWKy^39-47*mj=tLi86jndCOZb7boHoD8l z4_ME=pt0@=1@hR70(tC3fjsu2K*nBlmGTEXd(u_l?Rnr0dEnJ~;HB4wt1Efn=kmah z<$>?d1AjUXydw|1(SwT&{Kx(Zk1+*(ovHZK)~&EE^H{O{j6Y?<;|Hu;W!!PY)?I7e zdh6C&*QOI&nBWg}iTjcYb>bc|_Yex6KA=KvHca{gXb82~^p(afIAdLlr{IVUgHPxy zs4(H+CF}0Bu4~qd+lIBDI()=gR0mK(735u20HEjA$S+WZ+?*a3-uN!z%_spm{1 zaK2Y;JrWLGBr3{p(54%J)|4+D^h>y)-KOg>Gjt?Ur+n1$~L&OZrDJ+!TC2jQrN z4*-1Hgk{Yd9-#bA!VwE^15Q2(i%m7$2E37Q*us;*>rGhBx`dO!s|klJyaITo2?x#s zuK*q+Y~?8&1|Bitz-8cJ8nqVF6m^j^E7}F0cB`xlJ{_*GZn<^i)-AIx{M6|vPrFg; zQl1V|mUctdrAQt2)~Te|HaoG^u|u1&=XrKJ%F*vSgI|BHa~iJL;r@g91HUonRSQz| zheG3L8P7F*YeQ?pZ_io=F5tgx;tT8WR~ml+-YLJmZi zi~noJUy#869pfJ_<-TS8?|^=Gfd7c&FYpVW-)A=q%=g8w_4)tG=YQ4bKjriPna}@! z`TX@h|2dz3i_gE$=RfH4f5zvJ;5UCGzF+ij_?VKh`56P7IgDpaaQ+w$1nN7aBg(*( zm-!rrKe0YisLxLNV+H9oztHsW{SuSE5c{R6tDjBu9XmAn*5%qbeWxkP9z zi=bgw?s-v*IM)zrEv<3{Q8UN0wMxWDD`$=gG-EQAl=>j5XHE21T{1OeY4pcw5{SI& zcL42oEuGQybqzl^iNM&=Flxr{wg&fUFF zdtw22CBMQBSD3(cSo-6bzx?*Zf^(!CW}Z}yiy|t*QKjHOf9gN%i5s?Tu>o;Lzum8C z_X-tzp!b*Uf_cwEhK9(*-GT9!aQ!$k{`_{$knossp|ITGC>q8UUW#4Q@-*K!1Y{3X z7%2OuBj}L)j4k?4Xri2ADTnc+_zEuVIKnnsKv;fKwisMJe&WsjE0Vk=xv`nGN7BCO z^ARRv8$#zZwkKHw?!I}etZBXVEN3A42Yu%sw%M}}z#Z0s6{+!Z9;@J~)B`_{$si(U zuXge_#WEK=%I;EGuY2}1vtAoxotb$P2z#byD@qN`-MVAe9}ZGR8Sj=jjvK<(S};q> z*ck|YC`tWyLW6$Sau@GmkVb3=bNdRe2>p~>A!}yhHp#oK@jW4xdXO`Ef@>fC=3mFK zS(WJbdxD|*1+HG7n{!Z{7ZF>TXJ?_T6zg|+qqPparFJb}DS4geLlNMzz7GPg!Y$y8 z$ps7JEGg$-Ogik5ytiZgrT8P(U*?^GbY7*eHHVT;f5@JH41U&`6&huSly>yBPinAN zr3RnNo>P&w*~VEFudU=vn6#7FIpxhJ&a6D;Slgdx_xlgv3|O3t{u6Nq4bFGp9t)?o ze`8mnJ_SBLj5@31)nE7_-xkn3(Di@!DI*(!g;H-1pAT1Fp3;6_ccs1humkSHw%??J zoMl_+(d*fIGkr_!6v(&8y04sT(o7j2l`;gslq2=!?Z5BJc_v_w(iKMhW%_rU|BV!N z!CM<&1)k>(6m>99{vCPXU3uVZJ-EDxAr+Dv3U}Rgm(pK+B+P9Dr9aw;|I@R#+^-+b zkc8L#D>#X|eI1o~jImPOgErh`!}T^CwQktN%Y8aYA6#o)8!u-{^jVYrsPkjbnX-pi zpY0`l!3(oK+hyQ-uX~8_P6H3oWJ=QSAbiA^e$a$NWfnd__^=P&Z^9wQ2c17f_@EEo zWx^rqq2V2b_xs@OCalL_DW9=D#90jeC-gO#a7e}?fm2TC9UnYq!XfyjhTsY1==+rL zB{Y;xCw2e{hXgU{WL>J)>*uUHY~3}6kFu`Ilq2gp@Jcvzp1fh!eTN92H~2#X!1<@c zv`c6J_zv827TyN%X&V-Pv;ptLJ!|1f;O#an`I5jJanD$I1@L+sK8RZZyc+kkg@=Jx z+VDx-Fz^`eDFZLK06b#D7mzi60+&1WQZMZS*Die1E{xJHNwiBkJ+8~ROOM*yn%E=kN3RTkxAdd&`K~c+Ll0EnwuQVEvbs z?Dt$VH=QycgY|#(RrJfX)-7^SVXTt{nHA0GqXp&z(%jAg_h!CEg^%-oN|XPf{=BeW zjM&o(%y@+!?;6)N&m%ZvuNxLEssbW^_WNb)_)_dc+zq?tcg)0A78f21+n+Yf&i!BR z=LeBFxtE_=KQNDfzv~A%Qz!Xlt{XXmn{xk6>xZHQw8feFHYmM*i0;BI2M7H||FM3^ zdk?CKlpm!04&2Oq-|x@A2GRAWkLo`^j;xsGKNm4TZuk+|i3^U&!Vg&x$sArUj7+@D z{ioF9r~h3?ef8Q-`nT{v{-k{Q317v&B=i5P{K-2XneW$S(&%{(`&Y6r>&>xcpIpCb zIkR|Zfve=KJ9~gdTg`cg;vvG74*UGx+u6)N0xtX5PJeNud}qbkSKK7?NAk2tI)VAW zzanLF-XV~g??BDs^~z!1E^ikyUsuTv;4;Tgy*RO>drn|S;}eBTQxlS3ZR8va@X~Dj zEq9oB;Oe@r#{RdLI{UciGhx+N+3$q*^kL5H%K};MUPPR6>Gv8{;nK!n{Eh+2lC*kG zzmIqN_fZZo!6R!3&Ns9|zh0mC=fmHUdktrKN0qszoPGD#WhZlP@TJH*NACl3ZlCqU zWbMz~$qAQuct_nk5ZvBdsNnXs$7dnKHdJ6KXr zDUZ7jQTG+T1tDc1XO!8l%apk^v|D-)Hqqwt>n-P=Mhp9jPwBPX;J|7I`Q^w7Z#nYj zVVJdB$|+(`cEv>ASR~DE)$Z_4xV&RpU9-orCP1Lf^h+PCq$_ z9O?5lspitlRV$!3I4$a(*>Rc)+p`+%!A9k*hTP4W>#9KgZWWg|De0$b0Bx}oO^{iC z&|iJ~#Dl^w`SpTh?tlu=XF9p3BX`Y0i^H4~8p8h*Roct_m0s?zaOWi^=Xa1jSz9KB zr|`da+bosfZbZX2-WKIfM7`W&qMh#7d(ONy%$m52eR)k&DlsLd^AU!Zo?XD)DH8f@ zy@VgOZ3lhyt^LoV@7-5KPY8{P?7658kH>yGxu$J6Aty9V6$Lcr#ndkbdpeU3ks8msRNF0CYA{W^K02EBd|{{7v=| z&)J1&&$FCcd4)CU9(y*0ehaO9Gr-(Q6q=-O5w}QmqTI#Y$%r$mEylXvMSs(MTxcDs zuLkuP@_4Al^zq;i-J_uv(G^0!$g(ZJNtfxKlX0feeIV2#eB~Tbl)Ih*XzJDD&gbqfFRs;JyfI-!z5M(hQ(l7Ah932z zdo);`<@J?cdi3~s9j|$gI_(KoYaSt6+-KAB58w57uaJQ%#ti+P7)diYojQ}Abl)@h z(q{!O?E*}{XD?%npLV+HRsTdMNjr6qu&o3Vp6%i)@bWzH@U`LUojmYUdEkfgz<1_> zr}Ds?Jh$`;@u+&cQIs~vhl}q;`iHl zW)>sT?_}D{nS}75Kb|+DSo=u2U^O@eZ>`N=l}%STM0};>$1SyZB02D|jfZ@%+(K+B zg;z|tfb@c=@SNbsJ!0?`wwru~Omj2&z$JSGVp}Qn(;@Mi4&uxG=_w~}%h^jB(v3fD z@Qy!`O*cMCJp2+qj2|Yx{W&Fn|Spk(bQbj3y%wDgx33c!3wwemY!B7}Xm6~wzkjWQ_5w*5;Px}0i z`}}wL{H;F!cAwvWmgHVv`~jc;7X0Q9GbW>>_Y~E`&6`_V3Fud{B!1KSN4B)B=X#S# zW`kp-5Hq8Fzsi?yog5W;O!Bw1=A!OsZT*agSN!X+Qa;q#mWf)wwS6;(M@GgrZ+>{o zqnmhN%Fy%Z!#MhOh0wVTB?}xRyv$d-; zn|}1WQ3Cr=m&vcN9IUEmjQ!BR&2CF_HNHuyJ4-=^y?BdgjFUNbTO=t<$Y?s2oHN}q z0WCtu=)e57-=*iMI(e7n;>h63Z~GM<%Db!jFO!c@whQOA{jNMu`jf0qX*;RQ))w5` z`ANHoOS|MdJM!U!B!iFgbjJvO$k~wx`N^Nq2hUSGab2Eg#0}$)I6ES`Uw(`Dt+p=C zSbu*aI`yGkh^%k6zn#9~(4efZLb4X})~aGhPO8PT95TsTi?wOYd{=GhN#a-K-aG39 zkKe{3Yg@gxN}6*ith1};61Qv@Z{_r1(`{ma-J{~QAHkNgVd#`yuv*rQ;nefI@3V|=Bk?AXS!XX^BDNY=^7?F1-{Q_h6Z;O|_K~`39*S+)))~4BQ~$`_v}GzJeAV9w z>|etBJd0;zuh^P+UY%##Uh(Eip)(XxH9t%a8#~yCS~-^^?>rroF#KAORCj*Q8D?Ts z0H3&5_UsGfdtC+QGb35{MOC@rPfZ>48JX9Xm@_ii#pN83(_A;~>{}8C$5))K$zkyE zed;@V7svHCEakgtacO5~1Do&kj-;v?*SImX)Y^r;yEqYNT5@=>4BkAe+baCE8p`~l z*b_8Q%XHboujO^agMX~!Je#GKk>2$x^s>F1+1=3_&+t)fyV&+~+sn3<+#$7Xwdigu zC#AkNIxqHI+O58KDYO||wtO=w`|V`$m#L7zv90QFCksy60sEM=`QqOizAygei1yC0 zIcu4sZKbV|?(|6`0cel&_#x?rRANYQ{(OXi- z5#_8YTY-*b`2k` z-S!|NqvQt38RiTc{e*g7^v^F&SF*3FA8nPe;>LfZIy`*J9>m_f$EYrp^c3_Y7O zUPRdOg=Z6%JH`@EyDplFE9W;Q9zC#V94_Dg^YAVFE#agu{8OP%=$8KB^$ptXWS;&T zmU#m-Hqn>8zS@Z2>#IrGGsKRa>8J3vy7y)uZ`n`FeDhxXGu1hPqg%D!X0Pl`Xgw>m z!p9Tv{EX-&%B;F(8wFLWX9-EK1_iH|iF5!%$o+okdTXck{Q)HhxJ7-w5H>qyJE>E40 zs>9j7zGy%3->`3k4k6P4#&+6!{!h_SGQTLz_LW8Sqeaxgd>c8b=9zaJKCi;yEI03r z-u6ph`okvu{BMw_&dBh*zYrSe*Aeo>T=Gi!l2`ig_D|EN=vVGq+Kq4EZr^}GBBj6E zJz^d(s=vv;j@7BMuP*iQ_&|Lw2_LA_WX246qc3~@x4HU=(_hVeW&TuX+$FlcW=N^O zn6u!Me=E5hW-+ON)Feko<{~d{= z&m7^K^J-{?8a}wvw=XTai7`R;KRx{2S5sD;yVO2CuyBT%f6V=X$RRX4(w}J} z<;|BfddK3`vgkWk4(|^_OP$rJW%R?a?BR(FI{mkIu^)LjsTNG7AL==p3C|xV`dq?q%)CZ;VfVef_LjDm{Ws)umW-)V*P17)ST8B3aoqT&sj>=rJ6HO9 zskD`hmCSM24_zSl()C?!=h@rQ@$-9YUg4pb8QC!beKD-*CcWf!`WK!f-S422@@|!H z2-`8cQuJT;4!N(*bicK{^7t?Olpk+)R3c;gdz;d~poj0I|NeX6Un??0`Im@G^e*w~ zJI0QTz7zjU-t+{{+X`l$+AV!-!F{G37u?O;3yt<0l=@8!sfVApq^&@PS~Be_I>tM1 zLc8Ylt(gC97kHrGb;nab_onhii;}n)BJw`l%}9^e<>isyUBR zrz6r&H9uX=uQ>5bq;7I11s+C6>ZDBG#X@h*u;`?JeH%QTqT@U~@-2D#UUZN(M^aVj z`5U-md_(*2_7^lPW?*yl_yMfe=&?CQ|1<87)MHi5>lW}m(ewcATTlBo=)T~|*;svH zbRRy*7=K3etJ8e_UdC+Bk6=%b_er1N+{^9OZr2rSu&+8$%p>@aK@D5VC(x z%g>wY9Pl`A=p0F^4^Fmvw-kDF&O6M%|r)AqLl@xmkzeav*_^svFwEb1H-b<>vGvv&G)?v?aM(9;Jzw*JS_~y9q zNxq9b!E2iu=2cGf{GGsgHzhzHxiuhh@@9$Q^L+Z}Eq?*bK{mJ#!gt|cRkeNVIm>z) zt+o0+?3`1frv7xg=gX{ns8dqSo+U5|gC~@M8`wCV54$HcCM3P&C7lcJ>fl3y^yt0v zHy3=#^nLeb&bB>^&e!=X-k|*0$hh)_md+~r)lV6-#HtbWq@~=z_6ym6h=^<|iF8MpEA~`hO+;e{K^n>HkBEn~=o^RO8~MYOP+E zKA_fYV{DN2mo*i#--5h15!WdFn{$4j)on)E)T08P6+^2&e?lAj<}a1Z)pR)}p01#N zvnaFDdrM2=;qMgZcyUVX0ZDc9+d7Um68fZ%NLbh3rwhIDPWpnL8!#UG#%h@x$UI-} zdL3S!zBrpX^fBhufo0F3ygZ*j-b0o9T_^RhN-Wj{>Qkl z(=BzDF(q+SRSdnQhTWs;NOrC^_Z`6jA7qgl| z0+*fUIgZmmXN_}wj>tg?{4)G`LN(3pS8|T9j`@MNmSgVz!HrTjw26(QUg(2<-8Op8 zX5TZCb~58>D6Z3p+-Bxizg{bOy?K(XxrD!h$Fq-IbKFD^3miQi5}DX`lZ-vTY88I+ zJ@IAe>9ZDhnU)*kwcKRNfA?fAO`d-B-dfVKH2S@(gNZ$y(S+}!ACTWF-d{S5tUhY{ zcIJEU@b#F}UlB{Ho2FSg);1?ihqdL z)`Ssc$=H@N_%57=ujg&r3e8s;Tg-b^7c%`PV@vY2O(srdzae4gWip=o`qU8hon14G z{IMoNpNCT)xcJr7gu>3nbJK6leM*&K7d|C(gHK1KX&;yb%*ejOV?Zls^ww_*I!#^upFQ_KG@ z<_1-Dr;JBWsCwYRR1xr-#)MbuyUxhUGt3E|nWYv#8&G$m1JKDc7a@zmR8wImW%4eh znw={9*;hqAWsRAdPXDxaN7i^rfuTn@Gtaz+`n(L^M)6YS7@qCNH>OHEFrOG4+|62$ z^*?&>F8Is4V0s>O(zIRKIBWCCnFrr|#MyTyN7T!*u z11%2otXk@_)_HbzT+YQ3KiSzeyPUbF-1$xbm!FeVANZZD!TGL5!qSjnUh-QxS1oDf zuC$B`lAbx_JV^(=``l&BU!Tx4N9An2=uCLC!`O%8PYQp8C!^+CtS=VRwt9SE-XrrZ zPuBF^i(~ry@sKkd3M`JR;=6v#1Ibdq_ZD_KFE89dpWkTb&kkjp`7`x4vR6)9PJfDe zm(ixL3Xg<-3o9pYiSzhE+BiP0u_d(B`TW8i)M>q4x5!(CvWF04T@+@$a+btO8d$^YR1q_(4ytnzed*cA))Q6dm-_)qxV8eze1gSdm+rZ(M5*V(rtaO0;A3C zyQVv&eS{Wh9YCf(YWF)TM(j5rd$gsdAG>5V^>nFI!j~7BD4S~M0kW?#YQMqkXWYcM zl;YU?vNk<^Prdmj=GGEFZK2(Na0Iv3X-zWL#JSgH;F8z$&r)yygYU|uPa|K(HX`z# z)1F6PO`q|2DEh#Yb=uPv{kZhU{L<*hn`RC6arcBWF0md~J>}n#xo$A2ZkVR)c9gQ= z1^R-xvL{8RNqbIYvE~5|x`-@(n)epylklj)ov!ys#EurDpUC{Z%+~LKyBqx4ru);$ z;LzV}GU4}1M4px%O`j1yvX@c?yb<|V=nTjC%UL^&&ba;!+R~A=rf$ol>HW@M-RSY= z+xni=Ovavq*Sq8`Q^~VBeL=5J!JX3OQ6(K`c8Yw*je7Yf?T@NN4_aM z^xKx0hx+?RN0WWy_6fDN?-=^xTY8L1X#3=DX}jxxYvrSYxQNwr71GYM?^@tLu<#i5 zZR>k0V~3J;i|~2P7>tsN6eTK zlsTlIcc;mp)csRr(q$gM@5YnvYtnb7eMNZSfJ^k`>hyo_W?pz~;Fzi$IG?RYZ-_mq za>*-osgk;!N*yokO#QQ0muaopy4b?jkI%M^mwCK4lgU-s>S@BHBVF?Xxk zYje=ElqGuLyAnqo;K$Ti=pQqO$$f8J#%RV|J%{nlU&Kzt9(ARW3l+sb&&aUeZx5iO z=kcpVwq@^HbaJW4vCs;SPdNL^n2-Ea&P2o*vp*$nW-RJ2s{>9y|H+FZoM!Bq{nM(P<7Io1qxHfEXprxVB}HcwH&4$C=+Ar~YAf|O z`}&08krG|(^iLe{<_W9QKh)<*z9n;ApZz@LyH5sBhLY;KMP5B*{C89I(f$vdcJ_VX z-0Ji{{ZP+GxQ8d-yrTWzm9%olw&%m&*K<#&e>%D$woRu)uP|rnhPLefjkV`dPDJZZ z3A6T2`Oj@(*VlT~p4IB>!zQEUK;P+Z()z>=3`!m491}d<@6BE1EEBc_ZJVT>n6FQr z-S@I;oL>N)XG!n+oRJ@qu2(7N2}BS(ktzeRFhw^_1dBLzQ{+t4k0Vg zXdYvel)emqhvD5q$qS#qE%-&}u?{fzo=G!SdEnor`JK}rWbe{9W*x--&OX^cJ|}W6 z{4x6CCsXMMm9>dLppl0o`39cMTjboHPv)n!AS34)%jDgDnTv}pEo}72Ww|3gdJodt zHdm+rVU4Cu##Y-`{WM`OKC9o#Vr?llJJz>N-kG7Kinco*pFB-?C3Rb!zPvKiXQWSO`pl0)S=-(JJFMxJxnl0PFSL92A7yRCU3-sandgaq z;d^@JtQ+HQ9rDXukNz7;t+xX*W3C)K;~bxM47scVM@05`I%u0^qwT@}&6l1sC;dvVm&Vuw zLe>qhWsXXlicE^UW%bO@)_Qu4I_Wca=z!UhR_5ORw4NPO?h%VEQtN2noBQxl&T0-a zCzUg=)$Ts*)7YRr`?LEVI6@uGyYB-XW}PxE z-1DdOormPUa^y*Hv{9EJc64nsfVZdVuQH!MLA#vfeSUfOVU1@ym-oX&9(8{|{_~jG zBbe|C^*bqeQlV(og8qq7@=(8tQJro`&TW1FRh`D{;hhA3o5*?%xK^jn$hnOA-i?f@ zU$A3IkqQk?&}TxTuK4AA4{&#t3W?2c+XmLiFQU_mRK5F@*fz88_xCQPPcpVMHXo#I z&DiT-Pod86dAkxuuOmO+oKp8J-s4* zp|4-n!M8(ZJPgSBkA(i#=dJ*AqCnDp#S5#QLIdxctQ0#SHn$4{W$?n4Hj{IA6WO0+ z9@9&|7?QE8_)Weyn`nZ!-p@;q-il*Ga>RDz+17}YwQ5{+T1}H)cZG4ajR4#WRQtD9LXGS3cW)`Ah{=bZTp?8IIWl{vm$huQV=w60sfcNyN>zkEPH0@Sm%3p%?sijjzvr zbAPN}zEf@TDA&{fGFM~V;=J=j=E$_8*r$vSAnRwd`q0@Py-XAJpnv^u$rHPV770#&$CCz#%a9iw>}-;5T0 z=jp@jJmGi3KOHagO#i$9nLj;}_Uj_1-sAN78`B|yrpQ)h*@IsC3N zd>+5i^2)cDIhpyy1m=q4?jFTsI|pRF=URS^tXl^DJ9(qQ)QvXPb<4nhZ}uFoVy~6C zZtoJ`IGB4TO~ygsawg6BJm(V_2U(9C)AM0m=)RA0cHUaHgLF}!{YKBpon0mLr-Hw* zbr745XJ@O_eR_zG4D^>Ikh3D2Ms!EHudg1d8P;Q{*aiZL=M{aL`B}GF2dz%OWApKD zg^7!io;k=buq%pAPoF>zGxNCGAEQTx#s{6|V)}aVPUrY!${V-IjK6=s)#xj}MX&9k zKf=b!T-eM%nt&-)}LdEO@} z$-GZ8Hh)U$y!T740m@L==9o$VF(uDj>ndzRPVyJGbm%1y3ZRwu>((aJ{EaPP-4+hPpj zt%f@nED*0+z;oriZ8iJRJL3{IPvl()`s;h@lCCrZJS%-v$w>_M50Gqw{*s5cf=ojWb-CsRkE?MVZp-r zRb=t}3&ro{f2{S9EmGc95!ke?j|t`8iy)6af{99hAVO&Lzt1IpUKMG16eDLg-qz2i zHSm#fnMXBvZNr1i?kW-VYWD2eRky7%`26WKtcAx0T042MgO^Mm-0b)3=is+&ZvIRw zC;d$Oe0bf*S2ljQj>Zw%+Ba_LcCOAw0DZ5Zh6SMpM7+*_@qqpE?ULx7Kpe@((qftk9t46ep9Q|+hf@n zapqNg!6WjrzPY)z1Achnjz>0kZf@S(E_IL!c=3<4Zt38$jaI7J(rSUy8h4VW;gQW< zTj#AX^+$M!QlDvU?U=W|edA-TO8Ftp?VGm{rIzV(=dF~-YJ>yG8~?O)&Tg4MyG3x5 zkM`)CS8v{wQM21yjLhm3@!2Bg{&bC7I|Q|o*GU$%b#7{}i8r_L_DyT&l2sqScb?-c zT0BpLz44Lt4{v#}^^t7prk)0yQunU*;gIypR@HxW-G^6w?Bk6Uw^-4zU2Dsn_>v{k z&!pViWaHiSOKYW@FDg-h=?{q>&Bo$*zh zI@((|QQ_7W(k)zCyy{_I-PxGw(;G7#y0(GL3p5f^N};-6ET=s`X1cr*gdg7g=)-ge zRV%z$THD5FhL+ZLZtQGtU0PjL9nU1GU0@<>7nmd)Hn(gg`NE~X6ohI!mNvGvdP)WD zbl=D7rO`gOev1fl{6Q&B)DAMeC63}km&~tS(6O|3fx)QT1X7#Z9)0*Tyx(J4xutV` zXREMrbN8(`!0awkn{ zzWJb&YWy)Zw(3)@^qh0sn0UMAd9XESmKmtUvHx5B-NQ&J-`TsTg{_qybH?V@iwSiP zvytFmUf?t1e52={8sQ_X;?a*AyE`p@ot=Em7TL)Zv`V(qvpTY0O;34nUUdzwyEP8IOwfWG0 z%09^_TS?eAl`mrK*;=mD{bN>N;VUtC-l&nk<(iSd<)RITZ8&7|Z#f75kjY;%a8_+e zB>kcBVA3BY0|~VSdxU?!AAJP(8~#~hmtaEi->eS7e4eP=mWO@fmn~siE_zmuJLQtE z$ly8HrSlT63D>DOF*%HTQGhOgwB@DV?5FdomHDh;J4rZ+Z0Qv&Eylh4}WVs zWatZhf{}U7=(oAohEW?*jv%t{j zo?%oHoM-6%LBUFGykX>Qq#U=Ljbl7=nn=poczL>uYRSZo^_5`b@YEKM3Et zt2RU*!A01o!wVwstSTDjbCn}z9ABGAsG@|yKc?KZ#EW_@f6VfuUzHuN)+Wf`l596R zf0LnS;|GoF41FPbYk9kk9YxxIEcUD& zpDu6h82n91d226Em$&wkp$EGf3NAWVOacx{`g1E*qWSFs&EK7 z*f018UcuzUUTJr0GOZq@S9y&;3x~*$p^jdH3-O2JPmx!M{ldSb#>g+cZul2_|edx@<(ksRgB*^9e(mhlH>bo$zNjVOVCGS^pr~>{FQ$Ry)GF3 zl`RRCKWgv_>U$++RIkRD=)gr#~#5eNY{MUuKZfkZTr&lstsO&9-1#~(S%a9EB`p@Q+_5t`2-ukqED^m6T7DJ!xu5w@nde0)jMcI>=VD{D)_RJ`memD z)MGCFS6(;t6@y0qmDdctMC*T6tsJNSD<^+Kt;8>ar9Vo$UwN5dU)^%iFBvTTP1EsL z#SItzg26%T7Qe3?F#cJIf870GCGy?b}f^tG7V9FPHIlUHF8U7snEb>?AatW^+c`L4w-}Zy$*UzdI6JXnpmS0b( z71BHbhUUx8>+L<)0>SKl;aQxlPFFGxX49@(M;@q2~q#b9EU#mX}+( zq)R!=ba`jhvI~4E?TV4NtcvtuQ|>bS`~LH;^dXxr{%vv66KdHRgY)vpEBVn^{Im?c zME_-?Ppyj|e+$mbviu#EuidQ&`P$s&Qx5(YJvSn6Srxd&&^MA#my2CeZt#{3Zx}m+ zV>ZNI(I+@W`87tLU=jS-qtgdTxAmjbwf+eu zmZGO%xsQ{z(xZswh z*MdVXdX2#a=&AEZ!2uV&%HRU@*Yt95mWv)XSngW_MPE@%O7MqWUu0hZ7lYdkzs5!2 z8W%1|q35OGPznyF;6MuYr{Js<>`TF!DHuOa(^pN$+4#{-&%T+0@#8f5^%RUBr_m=; zFn*jyA5Xz!DfkN5woCDE_GNHY(!bf4Qur^X;L#L(0o>x`KdZ9Oaa_p-g9G%}>_LO& z4DA4QncZdDadte}U!K3 zab7|##txwu_{k#}JA__HeJ{@ALQgG^^0mCC6nW?onJ{|k{BnC7BN5G?Mv#RaVFUImqpC8a@2+J%f6W4MU*FY z7NU>FHx0jh+I`VD*F{tAqCOi^UsCQO^jX_)%JpACPMg7ZV~^~OE<(QMt26Q`mUQy% z#%?=~>3p?@E_;$1*BJWRYgP_=h#wY(th^xfsdAAQNRf|U9DB7q{2}~nwO;5c{=nX; z^1OzBO~jPvzhTPrC!{>m228pBKGvkQ#@>b4>&Fj*XW@s1SKy0V{&vfcKb-cp5WD@Y z=+WcK-(u)%>m@((nhd?@yp^}x%B!;aV2AkApP3?8^dED{Rnz4zyk+P`@QI!auN%1w zt$ho%eWdr>^y4^?jBqbJ& zZ!+}tRs76HF!~97J>_I^&95=#&-aO3@>9>N`%L+o-)r#QXN3Q(%EF&cdGlyrS?AHu zt~chM6=G{)~b9F*{^nnOAFvL2DYImHPz2mJ-hbK5z^Tye`6qrS==KGNH4I^}L3chbpU zWpFX&==>4kBfZ?@-;CdNdeG?UyCrl!?Q+e?^Ie6n#K`jvCzKC81aHP(-!Rv4%im@A zXWuaXQvA&hpH;K3!yh#HXNMDNHgctYOEeukVdy24Gds+6#mJjIYQqtu*KF-)Se@#8f4XAHgMl9k_U<+fUVTTd z4YmGf)vOCi`Ll|_*yHs3S=8?=SN)6z5XhxjoQeRbGxL+qA*l!<*hz02a5#jQ51vtgDEGi|6$ zICXw3_B(#exXSskP2gc;U&d9=hqd*-tyU?Gkt_6Vw9kyI97SgRa+mmp`jbB`NBm;v zah)%0=u>h^41F8+X*ogBi}C}ccR6w>AN>Vy8!&t`ZW+EAlJQ{?c}f#|(dItzfPp zTVAg%uZMSeTCKd@$cr1i-Vg6?F8n6;dab_R0-G-nn{0bbXC3Z^U$BSr($T@|Gx^df zPx7ZHY2 zeA?asa_oGd<@ycYPAGCcgGR20@?<@0yO^r2SXmS55B*-!OjEbo?f`0zTEm6}IJ+kZ$L7 z<)@rtgDWn=5V+6M3!oTONfz1n#i(0_X{YXVpM2fZhvkxAaWt#|@s<3Oy5gJGjlz%O;?cE_fF0sB8jy zE!d7XWuwrm4W4xd`Y7}gaEr}92))SQStHN~q5Hv2mfj8BXYi~s=-p>k`VDZsrMDzh z`Za@R-Gtr({W7@D(xcEX8ax}hWl`uu;N6y906k&wY}#{K0rXyQt)*u|KW^~sYUr8J z+rc%4UOEB2)!^AJ{6b>_dM&ux(nq0_Pw?z6=%dg}z)?#dgkEIu>;dS5(EZ>lOYes6 zGkEqe^lrwv8{mkgw=fP}Gg#KGr7dPW-C1twQRo+;gJoS@8ihUtX8w@B(gNrSgMC?o zq4$DIEIkwYaf5wD&@-X8gNqG)+XVDhgXOar+a{pbf{QGD6neG6z9#6S&`ZDtmOcm_ zxq^Lh=!4Mx;5;*P$0c?*;oUJrnwIgXj35XF_iWXBm2U0(z^#a|#$LC!p7YeU?57z1rY8 zRnSMFmw+=ZeGqz)!E@@N4?_2Yy_Vh$opJ@wi9zpXJih@}mfn(3>YBlFpB8R`ewp`f zZ&`X2`bC513_*`VC%pfrr58Zwf5CGuK`$`##r-!dJrm+_=-@fmpl3pF2VXbzdnTZ_ z8ay|Xckd^l*MhHE`Y7~jgXiW!ABA25p0M;m=tTz4jX)oS?gwAB^ls=rgXh*k@21g? z@|B$$!V5MWu_66Kr_&B}IAp_fHbj(8AGF~a8xGiz_ND3gQHQ-Y?6Ki-8=`}zciAv* zL+VGTci6DqhHW-%wPA}5n`~HbL+sP}ciXVmhS;jpt8EyyVU-OdHY~Sc*oGxGEVf~h z4GV0TXTy*UgEkD<&~L*m8~SXRX+y6Kl?^{hnW}eaN!Sy@6>myuzB|<&P^&ze&xIWBRGORT<_cSLV_c7O9pY-^dWdT;*GIV?=K9~smR;P-{QcZ?tYTk= z_)q3~Brbn<`D}cU`0}|KlD2b*c%g|uDDe`*lYWW#6DFQ9O#I^}o^_S@e>U;?!k;kl z<@oxp*GznEKk-W@zG#H_kBt2H3;)k-{5<#89vi5q&N-(=$x#J8LH zV-k;=_>&UrSBf6T;}AwTT}6JOm2zqQdb4o}de2auWmMH64SoA|pXzNQ9# zkBLj4O8>NpheWp>CLScOvi`}qO!|K^>C2Jt-EQKW(Z{>i#MdX_|CEVuY9(&%O2?fXO;tGA#OP2pUI{emDw^JEEC2rx2H(c>1SA5JB-`2CEtW3te|3@-D zqcs`N_?u*W#zt5CL^7W7Em!<2uK0_t_&_r5eJ2^uaOs~BbESXA6)#T4XZ(gM{@;^v z@2zA!<3U$E*A*{I#%Fvl8TY#6%y=xBp0OtxpYiEr-1}NGp0UssUz&`2znhHDIO~cp zNX9enO2%h=$rWGXiWes1-W$pIjOt`O!=>|#S+4Y7Cga}IuK26Tc!s;K+mq>DiJQMY z_6q{$g9XZg`gier_CE6zzt5hYIE9|tx4&tR`Mv5?TFZe$?QI7Rwm-#Z6Q&XmHa~sf z6V0it{M`6p`yTz1R;N$_scc4(jgUv41sUO+znU>zrbejP#E%}DRlvr0Xs_(Hs zivCsPgU#&+_cbS#O3AH%&Hvt>;m6c_+L~RJ_}*?g)J$a_Y;J3PZjb(1_>>~e@@0VL zJ@RDPHcqtVqYjZvV72>~CtFs;H^59ade0`Te?EwnKKS zs~g&s0GH=%^u0*(IfgR9G?nHwK-)N{ zwLn9Yq-0e;-SDy7`;OFBTf;|_3hDZ5I^b%}I;HvG!2`+u>#F4GPSItgD(dpoG{L%; z%9jMDOq$k-U4@|K6i+f)H9gnbwC7O!Gkf>!WeDM`6ZE;(Hff@Js+yl_c&4@ek!SWd zS089>kU@m6lI(AMx=qoI^@lxl%AsZwlHUnXx);*<%*RId&^qiF1f+a3ict{_O~%{y zLnx5=2!JqanT-vHnsq_;`y+eI_dP^{usz#waDRsb@GE7?w`I_)p|$luqeBrkEv~h( z4G*ECORe^UhuRFa{eW&?A{e@pnVuq1tFY}3F7;hRrxRML`J_oQuMEyEZW)&hCr;ke z+=idppR&Gn%*HEx4}nDUX%=z3@w@(nf`($zlzJl55hN9<#n}e;(T07J!6N%{lWAE+ zkXR23Ud2t$CsSM{G#zZ%XWZ4;g1-;#H^t>uSM8|&Anixn;F&!~XD@PSGkF77+vUQu7GDj3bx z9-0Q$Zz8+&A&G8sq9x)Jo4TcVN{llWH|;yr*3jPAGDVP4QI8+2Kyo*3*tjW_{M)!O zycM-JZY~amwiIuKVE)}$T)efUBox{l)&c4DvzkBAwExh0*+x+6-JksHw+I$!VAjvv z)uxT;M-LjO?Y6X(;1TXa(#F^hD1va8y;%RVxv)pRU?VZ}w`Wi7{kyr_nEqD91< zEe`T!+=?sj6w97HZTlJzJ@@q91FbURZMh-DjnNWWke%T1AK`zNa&U^m1&POi$h6= z+-^%$d|ZxND&disk@1-V!YN-6 zr`*1P7jjh33ze#uZ@Nb18`NQsipM^c z+YyeZah6a`C^o~KcO~C6jjF1K_(y8wVW0knxqOScZ<%LOzCG@Ib3Dv9Pvd;k-T8*G zquYshCU1r7`E?lIICbfEZhNOvN7p{wCf~_N2YrTEe8Zt`5GhJ|cGT-Pmw^hidBltemqkdF=&cRDP8+JCP^fTs7az_3jKezVBkV>wVY4 zZ@=$GRNY_Mv+LnDIbQSH*Gro%#frZD=(>N1AzCG{ZT!ygYXOTm`sLhx6D`cm~IhO#wfJ3J|g)9{wX9L!C zPJvTrZo8-ZG3^X~o51>;wYEK0p7cbdP1f$y=e%;>Z0b3$ z@*KlM^YPHOJ@ge%9ajri=>J0(1E(j>b)3sD{tEBi8I^uw&o6zs>=iaY`DQ+C|M;O1HNsg6k)HsC?%>_QfC5FCvFyum6;DEhd{Rtw_q3F{>}gxY5sd z*X#MF^bj40=SUKN@v@F*%6WqH1$|D(SH&OhGy3cqOw!)T)9OC^P|mk>zA+tD6(8n1 z)N+pD8}FlE-ABKwDuC~_bdGQY{oYV5FY`TW&hGS`IKm6A z%ayn9BWmUeo_25sieJXJ&MJFugFYwyt~_%F%Du14SS@8E?~kN!PkmQD<*bD_PETIe zx__TKzggCCc*%Vohqp5p+B!e{p$~T89u-fYys5|BH$1@&oIyifgb33J^9UJ#J>JqU zO^%oT!{jx58X|s`_;v9w@d@ILy_|FOS3m1G_E&sWhIYc3eFHxRqH6oP*eA5VMoxUs z%qvlK?>6}cde0}6mojRZPX=Gzsxn`_Tg^K082@{oP_$k$$FF1uIGxUZJ83eMfF77#Bmb6ojJ zTeiRQjmb-|{#Ug?z7rlls^#Upi2l-M;yhX6ENf2>q1ZO9?TBApZ6`KS)=~QhjEUpQ zBXjGv2zk-n`gwr)I2;~P9(#7FoQ zllTkY{PF|X7N;%Twzi0kZtf6X@u9;%<=fNDn|eJX-`4--ocHq2pUHW6oHbHLy_V&w z0VglE`s^7kzRvP*&}KN#!L{-QdA{h5S=$HsL1%Q;_Oz8_Cp*uIRoJ`+uNz;im^ z_(y%NC~bbM?32oKf;`Aci=3Q1Y03U{yO7G>Ut@1+qqOTu7w*b`omon!{N6h zl&9o8KCkqR%G<`989#CH@^XCnMtEhd@?O0E)5RNNJiUxv`kWxfTgm$;`kasD)D`Qd zFgEMDvFFA^rw^F3C#21ljZC%obM;Eb6xK$R%NmI@XH*{NH4H!gR#vH;Q61YGT_06t z-;FQh+{07o)<1a_x(^v1yG|@%-PY21Qs>WtPxXL>N6uv`duwu%vx~i)QJ~N4F!fOO zDQRQ$k@@gBXD9_bPe!FJ%XyYwWO(Jw2stmpo~IC$vl+GYQ^nJ>IF?OjA6DADAD*BgptAYu(p5-)WiZ!FPK6W3DQWs%;N(mXYX_ zi=OtpqHRy;v*TZ`Xm`$o-Zgo{W9@U!tY|$pOxEXB4b;>%b<8jfi^cj7wMZZ3)NuOgNwu_y#wM6m^gP(OzwPAa{#MGLia&olx zl(#~UJFg|r&|`hz?ajHF#W?Mkd0E!aeHn75-n-v~mR9+E+PN~1sw%7WTqw&?K1m;7TclCfc7>t z?-cC;P1_AE6WS=W8B?^!G)>OznFZ}Hpk+EVBmE-jvs~%EkB8!l^ly>wbJ8Qv zzkB23B^`?J8g`64x+UYwQMKhqv1ertefLV3x}#1}y%2FMdItC+{EX`R-XY%-OGbrS+`uD&>q6&cBg!6FK9Q@i}s2=LyDG z4`b-h_1VIe{pu#?14Xv2RB4^3=tKRS(UGRSu_qU-e<6ppAN^MQtX6DS7h_L8xIWBz z_DAkJA$4Z_`KX-pw{4yD5zZ_0p-T>9g{+i>_&Vpe3{y9pLwTg?L`Uf%>3dsG z#vfPbkKUt(DbG{8BdfIY_a0c^vzW2s#5ox&s!u%2-0`d$;yfrX=f3zjZ!$}tH_3c0 z=S}vI&e@VV%m;&ykJvG%Q8DJ+(-6lGagk-m9nu~;@(-_}=RNns-y!s}5jzf^n!Lie z$eAQ}U6+3GRoc6I-u*K(hCAyiJ?`ON6~7O=c1%vn*`a zGY9$60vf zTs@<2%GgWa$a2bys!d;y?bGclh>sQPYY$_+uZOvUFq2TvVYm4ZnW^)y?2*I|SDdHb z3%OpB@_WGAXD%I}jp+H$buNu--(vtfGi9#pUQSzztM#1sb3^QtGl6O2*+(RM8es zW9>}8>S3-s@q6?UXRpRJZc|RRd)~gy{=dWiBiqlLdXe)3-_>Ud_K+s?>N8lT8jS% zq+GM9d_Gy5Qs**XDLHGYv*H^aW%TKLiA!7WNh>e!Sy~>!hB)`4`hFDIVdBAKM`V4n z=_jvp&;Rl%^*cwmmsiK1ERRZ?)oqeE{n~%xZ_2Ar{H-eHDnU+&c3X1dEmhp}5mgdj zR$k4$ZE^g=@Vo^k?0o48V+$YLgNBY-okxD)te@kKo;`u`8g#1?KhoFr_~-ag`_HzK z4c%%|?``~BSqJx-9kI{TPX2ncZYR=S4&TH5E^XyVcd1|QgV@8mxqc=-eNjb@eSsGY z-+fJ=4T|2?an=NKmKOb%acZMkADvRg!4K26c6`-;bS3u-*v`7GNcfnGY0De`FxJ7^ zD`76oyT@7%J0BuzRs?}2=Ugi8d0&w{?dOq zl-_YJjXBjLYaCBY=MM&I%pQrSHujOf^ozecKc5w;?DvF4cjhn|SK|1uM0AO&4L`Jf zDv$Y7EkjpbN5l^oe%0Tzk1?T;`h9@1zxVAgZ~m(6wRn2vd_%pr@(I~n*^txu7o3;% z^>^Du-`L3-e=PQZKUSYBb9MszdOLqGV)atPQ+howwy>0WZ@nJ+f2vnmhxF0)pK^5T z{BVuGv-|-Wo62L4t@Ot}m#h1{%vJcKNZJr@`gvlFp5EBqPe}g^===Bh1G4T6cWo{b|JyM$rq|d<^}a4= zFs@(6Ix1|&C0%EX5ox>S{I<$dX*Gx9?6*9hrq3;xb}n@x{SuiayCx^*#6KMF)#t9V zzp-ob7y3*&ne%%NhuPClGkaZc$$XktqSwH3CgOms;WtOo=>t}$y6HNtd+BzaJQs{k zo?&$IRzB|;*0x!lkXO5F^8Y$4V~FT^;;rIA+Uba^O!m1pGbXLqXH?S0TT{x+momF) z<5ExTDb?EYszpcET%O2DNmG;JE8^(SezW*DsRL)u{f}R`bT|)Bxl4yR=x_!dp0IYe zP1m95^mH9KD_Pfr8cph;#_QEDCv;t-7x%)KXfvZJdeFE3$H!fIP^KDk=`j;M#-eK7 zx3wN`u+J&?U{h_PC_6=usMRAP_T!65`ctOpVCq5@r<6azIj#TfDu0ObOQc;B7Ky(I z^F)rxKY5+Laz3^^-O8IBXKX5-S|3O|ckO4r!8%v3EuS}S-)Zx`IX~-Rj7-QmsAjJ7 zs0_lM+-GoK5sRdE)GBX9z2aWyBPx^eZ3p)ak)svr z{2%48##yd` za_)5JfBDCbBVRhpc$_h|EoTP%WWV^Kv&X&Ri+a4SDhr|4=@}tpX2lOr-YDB9W6IhO z#62^D$n|x;#Mse4IU)N&GJbS^><7#tGlG%+^gvX30~?nzj{mEtcf)7kJDJubWBA(c zj4|T7v1NGkQsx-whoAXt|AsFxc0Mq=K5obJbF+1xVx6Z?=gE^iho9NuFZ~|ll;QP? z&B6=qeCO}VJ=Y}t8egA~{=(c}p$6psjW$0-nmm80B|Ax;`dw^?d|eI`8K`_NgCW%fI}D z`{a&TUv7ug0c)b+*wRoohNb7_tL$iF_|KemlAkM(dm~oz_R3bJNd7RsK6tSHu&M zH#nb}vA%3T_C5b`S=pPmZ6Bd+vj&N(f@gHw{##_86kkkEY}4a|r#k+II>%TPDMPsF z6RQhF)~?APe|M^Xu#bt1jZ^)DejzfXZ%Dt0GY;teEs-@spLthh9p&CLstP}>$Gl-R z996469#7ZfeJ<)V1Sx`S$_>~n<&^cmdJKQf8mt)H8G<{$LApW(NEN`0*QEy=@L zjefKGsFbPo>sM8FOl7ZVqj%Tj_-UbGf06OUKjv$`Q#@A)+C5a-tvNIJS_Zt_Q~KHt zH-4x??hU8y4cN7*jH9u3+N0cuvo4jjeh<8{@9;e4r)6d>VeVtvw%=>k=SK^RcgJ@W z)X8)2&H=UR@z?)}HOp$*|LG`eR8Os6Mmu^@WtD~aG0iqT-Zx1bD0@?t%Ne(guTM@U z?alr6=?1l<^K)`9FnR50d2y5O+pLk~S^GemI^G#)O)C4NJ5;grtQ{ZtI-lq1(y7Vw zk3Q$E;EY}BHMg1jRn~!?0r4fi?$PDe2`&Fe8_-MFSsm@3^*r_U+mHROx1#bTl@dfi8U(HeBSIbq8O^>q1O(#7PRvt5+1l5a{Rs<~rS|0O>hnJnhuLgOK!N|*k zb{DivX^*;Z2i5Nynz{jPCiC_+o8D*B$4H+|`emE`MOphE`7dWXj!ZC@$oc2^F+8Gt z+d|T(es)^wKNioG{jJ^3*x315e0fs!NT2Qe&Fc~3UC!7Tdvc}!kKa^b@%JCUrN@>Q z&39b$)y1BC#4mOnjyHC^%D5@(AY@nd1i7ci4*YWbMV?>2Sf~7?`Cg1MHpo3_z3vm- zEC20F!q*eyLzzMDuY&r1D@)pB8M2~uE9Ueb!O|v=%DUF>SxsBl%5y@yZ|#20$$GX& z?hB8WuDf8{Nl4mBoPEDe`WpL(w9Vu@8R&JPOphr!53p8|w$W$X2I{xgP)Qj0$L>ve!3U3BOWU z|M;hORy_WhPggwN{dR@PpSMM?=UzcZJ?)~auyxnu*x~q-_=Yizdi66lwQx0^`0I5S z=rehYVJ-NoiTm9q#wZCi}Z2)qT&y%8`1Y>gyd@?EuFAVY$cwCzWR)B z(G}bOP;?ZXMPJcV>x=%Pr=v4@KIPKaBl96T$9GNs;On%Bwy86sQ=Sq385p^xu}^YO zL7S0#WXk-$)F=0}S^9oBqPC!4J^KP4>ZKfCb6=D5C~MeqS{UP>G74_nTeJ*J;Do97NHgfD93xu*1waO0{g&ORvX;~PSg zbSF*r8Su>(&SJl)_snD;jrS(p<>)^1pQ*RuRWW^b{b{jdWwz}PEqadWT7^$@ocSbt zh&o2E;v|30kHoK0wcOh8DaQVCTQ>H4Lb`5c9_w0lJgP$9xBa0QS=>LWf^h$;82k8? zopaKZt**(sz|Lh);KMPOj9z5ueLd=|$;zl>{{M;intX-2%_n6(V9J}Ekb918A;yTk zYr1%s$p^omb}rA@AM(zYrZ>6D?Wf#jR`+W17E9YBZJ+EBNPE-wG|#VM zO-ub8V~+xxWzTKbj4 z%DcI1^2%vxi|9k2Tb50KkmpT)J+_YM=hH7y55v+<%SNP+E_>A2;TfPGv`}BIv54+7 zA)99gZMT{Gue8YXo)~$M>uJ~PAD*wu_#u6T`AD97(*HfXWpAB0gn(?>Y8* zK@IKo<9cuB=wy8)KG}ut8I;j2Wt%hCZ+%nhll9D)UH27>AMlB^*?M@(!^-F?{AItV zJS>BmdvAT7`_qW{uJZZGOQIk7W`rB_Ms`j9+e6SstlZ01ZWe7YQ|43bqW%8p8JW+~ z{o`hDY}t=!BO}t5bUR5IKWGbgNuQp2_VJrC-shsnFNbwIlKW%s#f2wjzC72RuHK5N zyV^VBAz4SA={u#~Dm%uw$sA1ie>sP7-?IQmCb z(CnYE=3qVTb>=JDC3985VEC1l#gEQ3WB;Qwc-P{tPxGF|+ZB}cDLu9^7U}1Kj0<9G zxNGHg=UvTRliwYl8sk##`Q`l)XHDSr5g9+RZzQ&y@f{n`zwKyxs!ppfgkQ<27M&b@ zr2dUg!GG3$-^`(`vsad*!#192v|{Jyse5@>!pD`#dT~VN$M^&J2{ShmI^%JQuF~d2 zUtMR*@0;q=cD(n|FVoRADEX)A+{&Qs_{+L!%esDo^LaiqLc5W7o)YY>XX?6zPrtWIJ{0rQc@KFTBzYA3qZa>-yWVEHBozfIhP{TaOLzS%<3w z;a5VuC-Yu)xb)5UuEU%}vJSs<^H=#rzvtqt>rUmm{W2i+sMnjPJS|d(qPO^4+SR?C z^sgPOR9WGQZe52`m$a+S{BP)bG<|7lzOGB2vD05Xa?c&^3XSfX{0`5aawn#q^%0K@ zr@lMn;k}e#G~5+z3BMhhh^p+Ds2{(`6IqNk^x5y^$XF1LFa{2*R;dSR6FqgbVOtk^ zOnWaoPVpN#F&e*5lIzf-R!Cr{^cZzj(gXp>QO_XF`p6)cPM zJTYCpX?3_pni*S02;Y!-BjC~VXj~PM=jTGlC-PoN0c|@NRf|2bCgwnV#@P04#@`b5 z+q|8}w2gV}waN2S4}SAVS&YSRvLrC%cvj%6LSiu_e+s(S)NL@_z zn?>d3eZ|FdlJ&Ht79DnUJmd1TKUIRnU9h7R(~O)-c4jvfaDOFyPhYJaAT1@3V> zp00wn{%W_ck+CEv%dADXpW2s`)zio`r$%|E#WSiM#P@O!bss*M2`!yxRPd8lV)OD0 zpFaOU4toRdMs1qUCC?|aMCNl|R+;!SM`vzs9>i_7z0q|g&Xg#4tL$%8h(4}8Eo({H<))i89Q}*cx7?_?eBCh z%68is?piv&Yx0{7?`_L9c~0)K<<>*imbPDI3wC?ncyscK9wV90VqZwkWwG<@!}5HW zw$Ky%MOg>_DS}^qlacbi>dc;S zTxB0A<7@P6Yw{Zp9U9PU z{Svunkael-OW3x~Sn%WTyV?fr{$Dpr+d!8h^r&~|k+I*&_nN)WqhDMWzNvPUdjBW* zKc;iRuF1c6>DTDYd&)n~pRV&S4*xrJ_PBJGJ&0ee^X>11=sh`kC*F>wK7VxTvwvI=>o#M(smbj|#Vj|0s8CA=S1!kk;e{d+OE zxM%5-aQH#m!ED|s%U)8_^W>6Ze3C<3bKc*f>^aZL{2+GATBY-IGEVUhZ~2n)fA>6L ze%E!5vh_T1Zn>Ew;&sSy_SeRil(WB9!ZkH#vyW!pD+w+sXFXml{G^pgKiD<-f1f@! zO#YL4+$@lHUs&J&j$IS@EYIO%$m=|LUDjz=k78duu%M)qd%g&JuScI-QX;29p{Qas)InYD)YvzPwD*e-Pet+)s5 zjHhNTv{>z$9Gx%k;Y8KEr&)vLCHw1@7sT(_F7KolIO$O}_fs~#z}!a#x@Aq?^FW{* zAN;oXK$mw!+Rof3#219}&i%AKFZxt$YOjmu7-FNWNo4Gk`$Bmp!5qf>y_5QPhh?W0 zpQ9}mKmK~CqVwGR(BrRSZ8)VvMwCuD47?eHmy+q_q#AIO|5_8uEsJkYau@nFxs#mr->TJ}=q zT`BD!{chBpAL7p}Y+h#X`LsVsYb9-_@yDFXcyRH6eqP4&R@Zy|L$XE^|4MoBPcH83 zfv+cRaliF{G4CY%DA!M!UL(u*b65Urk|(Ns@0|F-;y&sBj;y2X(aYF?tX>)8WS`zW z?%MSr@6`R<52dbTtQ9^tkNdvQxp(Jfzo=+R9 zeg3Wro+a&&wo)7MR;-Ql?#Icr0kN}I$?yE;mUpgH>v?|3?}5_7mHla5;q1v<@Oj|V zYppoX=Hff%W_HH2=tF6(YhO}TJQI$HjK>T0Zv_Yc|KAFFLQ36swUZX-GQSnXU*W%> z%O0s+!~Xr;A>ys#N7646ueb3l#A|K*8u6%&-y&Xa;`3or&MP3EXX7%K25h{B zxX;FS%RNTtDt+G^F>60RbI0s;Jm(FXb?HByrZ7owEI}>#rYGv zCch@nX63nOrRc*N`JrQDjEkpatoKBY#dvSvW%-S+r-brC;pe$`>*qd?J)6!hc=}bx zu{u>yHh^5cH;AsX-^#Ocv%Z_D-=B-f`cCeN>$vd%s zpF?_q=qT$8>67SqbJyfs9~OP2|1;Lo-_@Y-31;7Gon7zsA}=&G-phSk*CJ%TB{EG} zjCE2DcCtQuNA|hxIxzFJT?f|C=L(LNv%W(%_7)wDsStBQfs89JROn|>MK7>cq)rOl zYeM$Xzo~u8x{!50dj`Bmz+Q>06ZM!qBIEU2@*E%#JF`|l69xZ`@%cY~-<_9tM}E$j zG$7+q>ORLCp2?Bg{`dH82;)m{&cF09Pu4kOAioWH^VsjrZ?p4uSjJ8ENR(^t&N4py zpKp@xIhLHi$L(4{Kc^D?S)YBt>>H5__?wOk*J~30 zu>fnJ=SO4?zQ(+I?MUOxrv3*!^w}BNhj0kLH@SQ$k~WWdq9q<+G8o5~__N33siJ*E zq)udB{^C)6Sbcf;O~P^c4awJDF!OF&G0#TI84tXjC$o6yFFs2Pmi`O-hhG?tp!Y~= zXmYYNqSvz%j=YzVcjT3`9WHt1xmdqvocXeR+gg>Tf7jLTxfGtwbEl6yDZfc6mw8+K z&$H$8+jcQWE`M7A#Qfa^zp>;nJ2dV zk@YW7j^>}4E`7OfL$BhU9Z&fAKE@dnFZy^$rSoj3I^N)^el&Fbjoe)9d`U%QZ#b5n z-qHEOc^yCU&#!eneot0uZ1z|E=3N|5ptdoK=U(a@<@u0bZDgt|;%C-szQ`N=?i$~U zPmC`-)!}h9NnhMz*EE;i@?ShE?@RJ~xaU<6c|BHMx0NSpG4!P_Rlm{qor+(tZ)j^$ zU)56E2tM_sKlX_wez||;ebb-EE3w_9%BAes6AS#Y#cA?xly2)i(6B+~pg?T)gYrA` z^3q4B_ZQ>%`Q3oL=Okn5k^Ikf9C_+xFabtx!S6K=VE{q4X7A_%pLz2R^szh8 zNA5sBa|e3&9q6rhpx4}iUUCO|;MdbLZ{2}Deh2!6JJ1L3KtFy5dfOf7wRfP0??4aU zfvy}n!&ihWgG>HAT}_b>^U(tbn)b*S-r)O0^T9)*?b}1e zB3u69D_)^P&+I+)+@bd7r$dKYo@oy?9e8%X`p~2MKenGpNPk8yBwt+ou;kf)z@$k0 z>3xTuI&kpmhW2*UFdtu3rVOi_@KY`ln-7KdA7~FXckJUER+?4geNVTwHb2eRe` zJ=pxzGlz)jPhp1I4?eTMk#Dp$g$^7H?Q3maCuM2AXN+p_=?{s9F7xlF#N4jyl1Et>MQ ze}ql#Z#vL^sFbgyHMeVBG!{kjo0R?jDbyt0rdbZ^x}js8O%pLwa!B9z^fOO~l%c?pa^Ve;bL1W}3EcYKDGw;A#1OBK@J^ zU}Fm(+;5XEN(14qhVLQT_Hdx}6YKe~+fyO=*rAlYKU5y#TZf1EH0HkFXy#dQb9>_k z8jiy#`TzZGMINv4f&HnzFAa0wq0ruj#*c-bY5VuclKMR8YJDPcy1bT#L$rkMfzx#si#wAobPQ7FtUM$k#XvR<7UIwpEV=D+{R>KH|7mD&@da1wAa~m}F1`VSGyImXpREj$+iUsRn|%1V zi@(cYUyblnE`2*%>!LFP3C;*ud9_v!{13Og_^J(-EkmtemhjP95~lnec?MS^N75ss zHtZJqSx8KBHyN&;(-0jy4UId?%yM4^^k68X;=;bbc^cU<$j^-b<{4rDB_9BaeHh+N8 z_qr>;&tO0H>-?FL@2o0Ek6o7?KJWy+s@lN`RX%R$^Qi~XyBs}*9w5KSDYtr*Tfdd} zTDkDQ|B6da++aWS(kjY9?+5x_^bUjP?Y4CM{Xnma-fHl?8cWCD57_po^{O{`Ua_Sk z=YdvN{#t|Q6FGoE@z5qet|ni|#Xc?vSN>!Q(EvGI(yk(7&R}(6ij0F;#jEd=uPZ z`32tqJN^-T9bE6CV@J8qg(p(*)f7CQg2z%Yc2ARcIR#%z!T4bs|7Z%nkb*~2@Nfz~ zpMvq@H2LRJa3Tc{rr?Tjr{L}s+?9gkDL9sbJ5q3a3T{im zttq%A1vjPO`V?H3f_JCj+7w)qf~!+-GzC|s;7AHCPr>07T#|x|Q*coVE=a+7DL9mZ zgDE(Wg8eBtD+T*faApejreFnj#xweJ=`FBbPe}hSy$N>a6TvsY&iEzxIyf)c-%GE7 z0}ei`O0O`kT(g+*u=J9}gJwJ`9cKKgcF~6no{Qcxo|X23<1YGfgXdCDGLMwvFPSH| zp?6J@;S2XA)Hd`IyqNsqKIm7$R_|~hzh)UX^Ub!gl=O=>{T%5fjy&=wz+o3g|D-(1 zJ7f44_e*(TLZL6FEM0z=J3r;er5wTz8#dXn&X!*VzxBJ$9|1>P<(IqVQC`^aFGdet zeu?2mOSl$3>z8|mD7V^;krOpI(9M~Flo7^H z;^#2-YI)eBvCry}$@*f*_~D+Rgt`Yi1us^T|E#(PJsiJp^?^HRf3_YpZcmoK6`A)m z8M*gVk#7B=)2To4?>!~%bZ}7$&Pu`F>3Hji8!NSS(AcvTpNsshz0j?HM8B;)V3)pI z#U5MlqSw~l#;;pzv3tPyLFcQ%PU{zqtHHevJ)yQ@pYR7LZz~6FZN)y}Uw}Ru<9Fd- zKt1UE#qM(9F9748CGctfJVRd+wm1Yv?|BCev17|sv7d0rhG%Tp zW&E-wj=o(+|1EV1wIyb7HhOHS<3f(kuS{5S-G-M;{*sHy{3V=SSu$$#kMTPFAXmHP zZ?XK?;fxQP{m_d{J(Zxhw7(K`mhv`Vvmx>{?l<+Zxz(LNp*AB|4SV7%ZE*dut^Max%W>Y+H4yie8gf(9?WV#}xAocmTy_Zhqr zJw(3^*y)U)8^Yi*H%_Px$Ps!@Cj3Ib1h(U=#-k}Xk%9-@7j|~~ zy1^^3V;%AJ_)Gfp`f=Ke^@HZaPlA`!TE5Gc?;`s^tkdLA^9>uksNC|Mx8)8|PMeGG zjKM47mQVYM@>_+UuwLX7VuubRHVl|>ot3+;Cuw(4bwaH>Zg4Jk7FC~B>yYoP1B;Ng zE@t#u*TL(i<3=Byk8%Zvs3*>+b@Xd9{42VxeyxUom9~#G{HeRLJy(8##an|HS$Hy+EFWK1V7pO)_nLu@G|t#d}l0QZ?e8MUzfq& z^Og_$r2VdKGIp%>CH=dm8~wa)jDFZ5{>jI#HTY!BHIskMRg-_sICft!_O0nos5O@j zURiGWsc-Sa8p?P4AmywWC@+*OPv^tGQr^m9$%h=jp%+lDmg6;c7Tz@S3U9ENYUc;xFPt!V z5#IG zkMgAb6=F}dT~}y6>=B$dV)-%+U%?gf+xtx66FGtlXm=v70KH{=D>!HLDCjlz7W5#` zj*qMB&Z+|Ji4GZiG{zpMpKH0;B>ee)kxMx-!=Hnl8h04}oUkpo)|Q8!(jHe^Jys_y z?l*d^rW{R2p4hz_In}j}9tpL&-Qc{NM(%3-CH21=KUEhPK54tFgEl|qRo6J_1O_!C|XXS`LUHYuT zF7f*+{HDWJ%hv*5B&px3dV^O{FIvCdmcPb^RW@IFiu?kbo=3W^f2|*W5WMQRl}CN) z@|EzDX6?@(Gx_tyUOS&k{`|`Zi{7G7{;1^}CVk32_|6-=DrWimOgZ^rsmJ^_=(hdl zSHUlKgT=r3*p$E9@>~7#t$umejGlRvE&Aql+pyNi&BHIdZW#ZqY)`1Xh{4k5R<_IQ z>qg%^{Ns#AnlET@VZHF3Re6Erc%k#5hpa>MvP`V&vzZ2itm)@^a6(F~@!l7<+R2(TjC}{E42qJq8!Hn(}jx+wwcy_8<>io$*!Y z!@pv$u@5;-)9uLJEpjNg+RCF2obgWQFEKb+Ys(E7{*^avIBvsBHasukS+$b-N!poE zE4vI{cfrV68L|8!Q{Oq*BkeJy^Alpf$O+Yx&-TL=S4ppt^n?nLU($=4l+x*1FZih! zXJ2K-Rj?Pna^uGpSIMUgy`WC=CDe*rhF-ke$XPLH^jKl_SrIe!v7!S%_8U1%*q2+; zX7EPjFXA$A)pE$8yRQxyyC^ z5Qc3!hDiD{n@{f7#DB|dda&JKsW;(UioQCGn)Ic*{Ig2-Nu1}oi~AFLA4G8RkWzAQ zy`)I^;e&rym$6^-1r6RjVfeBMMSixn=d8-U2)!f8pFLvm<}u-iem+@GA}{-#!Nq5+ zyo4z?dysr~+}3>PBzUvcFT38B8Rk83Er&bLNBHqJCA63fx*S-Blc$J z*>dsYu7FE_zrmYhhA)5}VsGGrDK{YYWhVIp=qFhAU&P)3_Bi)3Qf>f!1Q%nUlp7c@ z5?FB^Rp4;y_J!+*EUcX!<4 zauY6sU;Mi0xP)ibBJ^_l@4}m4^mE38g*Ovwk?2SNF0WEb=>F?q{3?GMUroVdDHuJb z@uUAVd=6~ela@!lO~V6jeqKZGHG2CyNVns>&esmM^MvT_Z!`JIt3^+6E0}W1sW*-5 z4SzX)S$GqEqt5gQiUu)vm=1wZ4V{OR(b^G8SzTlpagk)Ju8KL3`MTF`q`Y}! zHjJ6{dF?i=x1raBbH{CH{XG|1l7DWkO^?{H$c6zE&Z#l>%&Ddy4w&}g8&0S>~fPn>zWPGTjb657e=~2{@UpQpb0oQMpIMbqndFmw{K^4- zo`#K?+W%)&<{;@8jlP*xVB|V}*BE}sA6ibI;jio#Imqob{1NI$;~v8wsS%94IQ-{b z@?$CTJ5uB$NBAq-t-RJ0`7Lhw@Pv%rca7VS@}yne)nvnJ8)CCgFE-(f2^(sE@pC>W zJx|ilsu|Rq?k|eh>DeEd;WPLy=o#3aL3zTLF^0b9jC~pGvt(RJ+NUw{9sh}(jEjc9 zs=&z27&ZL&67D{u22iaIK4uzXb0bwsb$3c~$2|fL$!8^Mw{W>@+DL?(1!87tJtytCfY zuYkv0bg3us&ZyA8qS7z%bBfEBJ_5eT&q1qQcogi|C-e*85*K}h{EmE~1VaxVlup?{%<3x$&cnBoHI}(y? zDGVSZ;mFw`jDm8ft;KtCp=Ic>$!DdCt>dc51``sKoc4;_a&E~LxnsTB#JSa8 zk&3sD-Qs)%?(=j%@95PaJa$~QwSU}Oygbj--|naT?e6!Tx4-JQyUeB@7x+6=W>1#c z2g>Z{%It|Ud%VovS7wiu*|f`o@)XPLLYYlFEr>rW zGCNUbN6Kuo&<^Dh4SYO!B3-sbuDWHW=^7PN`e z>dN7*Cf#wDkBygheyI*)?H1?P+0(`&KZ(Eog5cO(my~<`d9~|Z{Pm|beO)l$myDr5 z`0wxH-^^j_^Hltq*PZ=v-laFR-+X-VGtPdP>$mBtM}IzoW;{7pa#H?MImgewWEx>;!P80bJ78yL!!# zK2q)M1oe?2efR=)%Hiwh_}x42>;&alKL>sWTl?ku8SvB2PGrGnz>i|rYWgYgX=f+6 z?)6jP6WBG1kAd%Vb^^J6415S%`}z7l@Vv9-J#l>>IQeu`Yx)d$yR#Fgz%$@2*t{>x zvAzMk(bX*G+*>U|-PmW8nLoU6ltP10TYEL-9Uv!o{u{1MdUR zV(WdqE(6}~YQ0;XRvwB$k8?fe%jefNY^$4eiZwd;#1)K6MHH5 zY1(cnkKF;tk-9 z&R$vsZvd~sKBRa8yxQ4I4}d4^WtmtjlKOm-K5L393o3_IQcjBxsLZRRooqPev9eR; zW|f;%avc^Y4=dYMa-G(0Q`xF=waTQDNC>E-+vQjSR7^a zQGE{mtkahqLI1VWml8i_oSr<2ev{LeHK2b?^*s80s*^VMh|}M59DS?PZ%m*UoPJXy z`oD4dEi>o`+;x4n9sN5l{KNFE*pHlkzr^`#r!Q|ozj%FIF8$$2xQVESA3*9^IRcRBs`^XPx*^hVk-{wGfV_$<1X;X%q7*ZR4g{t*9fF3z2_X8eCS z{cg&UxX$VK974ZE+q8(j!iC>UnN7nDw!Na1$2;uw8!3Z%!|69n6aE>eCy8Tjbh`Ye zh8}SGtwZPuz)Zw~0s%yeCdZcDv5C0~hCj$Ck z1@sdEeNRCD-^wL%IBpCvuN(HyYBr zb7yX7M~?5l`B2#pt8$F4uF8=HhIUqT z)GZ%sFO1cl-!a(xHm*b#qqxRJJVA}=1yMnA%{%>=-8*(|9||rn;sb8wgIsr>ufWT~ zNM9CWm!pt|@xyJhpxa#6cA8_?pscvzN0Nqg3oFcrENC3}g?lOf{73A${sFlPKUn|> zgt}!Hanm~ zDLcrCJ4H2F4<%35z1zA6$c)O`-rG$gyI_fHQ6dlRAP%yJRVN6PCZv#kI|hfO>aAm! zyY*!I!Q(r7ZH2QsjB6^AcW)!PEN?<34d0k^&3-MulU7szO#?sqmkm`4?^$!l>t1NJ6XV><@ZT&+F!>@K`ax8$+)N<#F zJ83!hOr_#X;C9Uo^mlKS3meEko$IDs%90~4f`2Oo9<9Xd>IudxdxlC^;Qk-{G7D*x zYFnPkIoC-RiCz{hziY5hf@Cok`XS9pU+HEwpR&O1y6jI1!ywJR@;$!*cUZLsOCbn_jOt1KoHc&g>{JRugimIaG?{bfZKAaeT# z3T9VRDQjQ9U3aqT)WVim#I0N9-*J8=_QmMO|`A`2}(cFA@OG_$shx})c&Luo}@;o4$WT5IFmw)}{U!uQ9 zZFx1|*!0OjQF9ejG* zmK}NdnOX4;d?eIOY6%DRwc-w~0TGqztL1J#I`!3?=V!!K*CO@A=vcV4lw?Pp3D33I zkvLAZ@M160){)ec9pS#cdWyBW^isD=PLp;;(J<7~qjEjj^u$hd@E`eBOG~ukqf}41 zTsK`q-a6fJbzLV~L2hw#99$b~RNLO7%)$L>WIg=is7VyRZz9D%lyy&I ze^g|hV6~b26?>X+Ls(Mwuuh*u|Gue_HK@UM%l_}I(b|H(tVoZ$orYs=?ONIUF5R7A zZQ|I|Zhv>rt|yKC_pGfgdpL{|SJvUS`x_Ac(^ajkr=Nmxf%7bW(Ihv1YVOUA55+DQ zmL{7D<}=L$Au5W!7FUsO)ufG=Bwj6cXwUbOP3SeNPO|=JAU^9gOPspy1CTyHPd2d* zvE;dW@_Ex-D8^gZ=X51;8u6VJ-)`TM*kOy0g3I1elg8UKn&QLk*mrdu>o(bk!TNdO z8h%(qmH3ZM3NC(Rz14X?y{o>!8r~~Sr1*Z;-To$>=J_j0X|ptI>=(VO*QK^?sC$BB zpMT?o?C0sPnJ;a)@p}y|)PIC^pcC1;H%_qk`x@C>XX7^;TDZOo?1PbDUD%}TWeT=j zFv8CfE_>BhYxs2f$4 z@H*N%k}h(se?BAY(YYR`F?I?7U2Z;k#E%5^3KbO30TGkvd6l~ld z+kCKXTo?9dQh)ouY9jQX8rT0~dCK>Hr2k#BUJqWm;P15(sLvxVeUy*HB5qH-6YP!A zX*}{v5%yzU6TJ?bJ>V{PN&Ax5cU}Lnd(uc-x;-i+57xvj-H&3+K2f_%d)FSJ=w`Cb zG-q4mX}vG(K7g_Zx9tz=gY}EYM(RzY+-tHXb}M`J6(6*98@cUkhCQiS!@2Fo;dGTr zWzF21)I}mYnpnMORMv^Ua&gZn>;Jw$8_}=XGvmdTe8(#5GII|}zyc%D>qp?|0XbN!#+1Zsa4b{JTRBHCg|i@voH1F8G7=O-Uc9 z1MyQZ3w+qJix26Kr8bxKl4p7n@CNe7_9K5SU z<-O)z9@Y8Y;xC-n@Xc!T zn3TCE;WjRz;~=>br-i@Gw>mpoCpIV7XX8Z(&$xKrIpPst?3nmHM;tA0NOba(xiVI2 zIb}|Zwfj`It0WH_PJUM6SEP49<*3T6%GFL9^=oJgiEqY4zGVM~nrL<9v>$?yuh@wO z;?!~uX#5_P8I@_5Ud9gz{abQ^zvar`;;lW7gyJ zZ^`jFa0wTChF9V_@Cj`FTXK8`e4pB{gU^5uVNbd8$EU#a&h{vJd!@OEc= z)L(oIyajtw@jmcIXM0>p^-*|@lyMXWkAb&f7ZvXVZ*+EuwvY9J*I*YE&wy7uJ4Ct|eL?z&*NP;bl}VMv zvvxvdL?uzf5}$rq+kvE>t;C;|%_=E}wHs8{t4yh+{VY!YR+7J!sUHw_4*QPi$uuc$-&= zzb^&bY<==xe;Ad!|8mz(`v)?0;Q!G>%^p7oc>Lb&`~jil5>l|ccaTfQ?Nv;^&CmU9 zpsRbR|0#$#AqjWPUoHHkUHRJbZ9X9cdlcZ0Ae9#5+ge)u=$%UjcI5Lu+4e5@qhtJ5 za9<{nzY~A7*`*g=WXTLZKKc&%qfYLDS@ItsE&S2ai^$c#1Amkv{|?d$KjR-I{hjki z*PX?Q@HeI7ZSqGvJ4^f#^=hAA;zyoia!8qK)%-mkXYy>uUcetoJUJwtoZ{yi$Ms_X zj0_eY@_zY)w;UTM(is!KPsSUqC)mHM)5zGE@pAm{b!=SY#>BCoR~i!s$4QN};19ej zvvzMB#>a(!H_vmdWX~nxIvCG27uT}4v`KCmS#C_H`Sf3<9|-^52W}0|6+-6U79O}f zP%w87pm*%PHB__rW)mqsZK`)K|J3lF$SaH!V^QI)WZdt#tLV>);d1UOew=-@eyiNo zYIhB>ZH$c?*++MtyR!S-#y04FZpl@ha8s?8o4QoI*;H@bQkyP35UQC9nb_?`%RQZg zYpUfMaYX;3oYQiCqCZ_F`wo8rp6y#F*<~VYGBg1|>2e_BX$%qlIPsa7afpnHQ5Zxyip5=A$*qX0-XNCKawv)a4;PPZ| zqXFvqmNm~)hn*%x{lM2iD!(5N-Ak7>?Oys&(}H|{0k44%;>RX8Tb{`0NK%vd$iA4ox03;( z_4gR{_D9Q_G@j2V)%)?JfAG)KxJijC^|heiXq%TfANFP+Sh9fgxu|`iTDYGPIGpq> zdxFA46@HXyx+`Yu*7`X8FB1f=*vb?tW-lIrmdH zA1{7Pcd39?O_#(c#?k_^;k@TWxwng1tp& zjoJNS_9Y8#YTDiVo|=(|*bgqctm)ZL*>XfkpS0INyB4a}G)X@vtfmx}c&KTl+f)-) zTUfiP$zAV5uKw^{_~okMx8R<7;fexWllL?1AlD@PYLILCkJv%3>9F(x?oGQNnD9rO zi*idv_^wXk`um9S{OrSIkFdq|1Pj&p{KMk7cd-I~t^$6t0$yRyDX+qwQ(lEVr@RV# zPI(phHLn7{W-9P&rUJiaD)4Kj0>5TT{F=O5N;~_!QOCpW?PB{c-Q4D_V)Ht)na9Nh zio_q{CviqXfA=G{37@Ypeyvkk?PT$@c{m=* zCw5fQqlY^+evOkM^&gs5Tm6Na)vk5Yn^XC!%0`vy$77Ty`O65Y#NCWe8-stbc zVEY`-7~c%!qui{N9VufZ;8`abY#XNL%n_0h)Elh=yGwlb-bc-Bs+jHo1P zSmM(^-b)<`hh$~5O7gdMgG&0DwNonTU)CmHE6LYN^0ktDtt4M7$=6D+~C2qnZnIXqERH~$#WCj4#LccqP&b%EmLAOOIBFTXJlM(iI34(zatw{VoYp4C2mHX3Y{Vo8vmI& z7#jYq=IvaIce(p65IH)RY_+qi-tD{{`JPXB7m@Zpk$Z*F^V^-@B+(_k@Ci#hkq^Ez z-bK=TljJWx$oINoWXn6`T}UtAAj!8Yme)Yo;~nrWLf6V~ntb0TK5pQ-W9vi0?NOO` zsUp2R=j0nW>!SlH&lIGahE{L;ORlit;yo_zn0I z#wI!!A~8X{)fD<(y@s$xkS^Xm2r!d`*|e3V&71X=^5o`eyn3hH}8Ua z^f?C!FO7#}OsR8e3eV5;OLi_4W5kg#90p~eOr0Cx4VY77Zuu5t+0kFZ4Mct3pib&d z%Aw)?!VNHI!Ke)&)923=EEe6SG>&1c?srIQ9kN0Qpns} z1D{|RgGWYon}m$p3yGCY&wkiMp50;+&pu$P!IR_6R}yZdD077ZW8~5`uDLQNT$)^; z^d)JRKz|x%&X?KyyyIBl(#%Ts7-ygJbTP_D|0X=gJcZS86-nU^_WY|~4i|rGs=4;H zw7ao=>nqG%`G6hQCilGX%i&c;X%}+_ZepZJJ>1TNfIf9v=iy9}_QiDTl`F(KKKVft z8wkZ*+4}s9(QtmAF#ocPzqZjZfNnJ@6J))c3bdA6!Io?;+E;G9~xXl{fM2 zJ^LZEnlr;6Nkq1?AN>8uw*3c9nt5q*Z!H76KRsg7`+sOM%-vZj?LgTt$US23#nH>D0hd>hRm9Q}QZCOyhz)obOigKTf+-hAa49y?8#CeyaKGqb)innH$u}>lb~s zBikCeU-~V1M96D^Jd?z6*A=`b%}?@@JY^0|d49J1rE9zNnC2<-1Un=TKToa=e#p+} zvU{t4zkF_$-1GGLLZLLbYMkVTI_MbS=Z@2LfC5t2HloTc{Awy^a@ z-Lp6Q|9x4@HzUs2%Vh4F7CWzbn#^;G-zR?1n$UeVH^N!4^ z#d)9q&kI%Ht^V0~A@}Y&&+B~Zkqv7%@cY4j+o>M@%GoWOQE%C~V=LP-ySS_DF4ntb zH{T{cOn2|T-E<3^#-Crb)xOJ1Xkt?SXAF9j*UHt#c$;|jYGW+B&xOC!|6`X({|f0( zt30l9T4g(VfJZN=Jm$iqht!TZ85vjEDmd$yP___!jO+svKE*mFybp?fxgfSNkp>q( zJnH;~J5^RY89FPH^)SwG%@+?EIYOIQ593v5$0o(*JSp)w4>&1&jpc_V-mFXK4Zx#t zeTnnF4G%Ko@c01b7{I1Xg2ySJCt-S>p5%jnPp(I#T!+X;mGvs?M3PS}evY|(Of`0m z%ZK7KZYQ6lvlEol+FY;1PfUx=IqUoxy&mCDBtKJBnOC`4qBFc&G&V+H#Y=s@+{j0$xRUD{D(V!K-*f*crv)RfG?+_AGcG zcow@&@eFvo+LypH;FPC|{vd~)JJslHTYn9%-l|qBPUQ%1CAOp!UQKwbs>m@OEblZ)JJ47VMPb4d9K=7T(J8YBkt(iYLIUogE@Po}kib zFRvAeZ6*E6O5#~b94jL#i5iyp&B`N@pXHMpRMx9Zsic2coP4Y#A1lenO7gLie5@oN zE6Ku2nLk7tJI?btDdDb!r;>R^OF3oih#w;yl|Sd`ou<(>6hf`|SmrnlUNS}?8pb{5lah*zo z-oKsC?S|gQ$HM+!E#^P&)!#w+Lf6jhaWj7S9N2!5tG{Oc2e^)>dW&g2K_ZKC;mmzc zw^P2S^C#@U9R=q1+SvZA5q`SEje(nL=q}Qc|Z<&9A!3E&o4$lILlbdvY^~ z@F8-_#N4;}9bJU`P|_Pl`c+4eUt(w|$?Z}3`>;r>O=@BjBoLlS(zW74o)L1Sa=D(a zp)P00|5tyP6>BA!Ozm$5<+%FD<+d;#YyP;}hrRwDjS=)g-MORkcWSXVVxFZO&mn_8 zN_u6kD$aAuv{IJ?&WD{A#52pbi%2=dUoEfrqQf!Cn$cbcU7krD637wOQ`%B){(lJP&|W&aztn&Jy)Sik$ZK=`kSR|v%0pnfG@ArS9nDi`8}bJ7&kUo~TlaYo7K z>zYr5aCo`!O4h{jaf63iZ%Q!{K8{>H*!z>DNbz z-&uTa*5qW^H1GXW)4-UV`7!179l4l39GRhP{i}1-^H&*9^8R|?CnyhNUgpr8lDcFJ zxqAPLkz?a)2x~PVByAMlAUuqYCuPn{5zKzuBXunuEWO**OFb}dEfW8*;9O5>{kv8E3 z(xYMf%@t|uHvWkD7L?ESN7}sb!24>_qmki}51X--x5B+3NANqo)QlEC8GgOE#n2|+ zk2w!Y9{VL6;kTZ* z_ey~Od#idZ zhE4Hy+J~{be7{+b|24L(A2db!A3Pe^2{x?JI$ixYwx7P7?hd!4M?=%;pM`lq)HT_TQ+Q|Y3@)|*z zmhZYZ<rOKg>H=_z?Cv7e6$u z_E{G{+#)vTNzJcQCGQK8e+WNTl3vOoyhTjMx1r70r_1c)*k@chLYv_=jyO9qO#027 z2+8?a=pcXpDBk& z@MrxTa(LvT`pKxDR=IM=E16;PORG&@W|+8*5)bKLM?}*B$MP;eNoOuOJ9@#TlfP9; zIyYbFCHo$_ApV)M_*|cj&vnW5$v0;H^_gL8vWRUCkG`(?PpH2h zm3qCVE#Q~=Nb+tQYg4~6Uy17%zcIq?{G}F$$B^~~w?WHSFJqKIx|Fly?Glf6y@0*R z;W79KX@9Z3X8bjPpTW*54j&%z;l}Yrl!kfbVm* zHwr!jK7_4&QgjMD?`&@pdoxrtc)PQO_l%5zw_v9f?*ngi zcIX&*A9xLRo#GkrYG=!Hiq~&m6ZsUY14)0f5`R|G{#N48O8S$P^d~D*D(h6%sw6*) zQ-4;HpOp!f5tU?V!-X#ren@^o@L}gMF^|BGyJQe2-<;vYj>Yh82f9m9_{&D4(s85qreyIZ}rLVn8A^w+P*Zw+9*Nn68M)S0jU3F^V z#HYYpl1_-SACx&tiRGI3M6Uk{`HoB$w{xNXS7l76Dqm4fBlOI#9_K;=