pax_global_header00006660000000000000000000000064123373013560014515gustar00rootroot0000000000000052 comment=2e1431af600187bcef672f0625dddcc6c5726557 erlang-bitcask-1.6.7+dfsg/000077500000000000000000000000001233730135600153355ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/.gitignore000066400000000000000000000000601233730135600173210ustar00rootroot00000000000000.eunit/* deps/* ebin priv/*.so *.o *.beam *~ #*#erlang-bitcask-1.6.7+dfsg/.hgignore000066400000000000000000000000641233730135600171400ustar00rootroot00000000000000.eunit/.*$ c_src/.*\.o$ priv/.*\.so$ ebin/.*\.beam$ erlang-bitcask-1.6.7+dfsg/.hgtags000066400000000000000000000024161233730135600166160ustar00rootroot000000000000008b0bb31cab94161127eff9a5f07263e729b2c4b6 bitcask-0.1 8b0bb31cab94161127eff9a5f07263e729b2c4b6 bitcask-0.1 8470bdfdc4fc8c2f9636954408990e38dde44c1e bitcask-0.1 8470bdfdc4fc8c2f9636954408990e38dde44c1e bitcask-0.1 d08f4bb7f4dfa46236f8b83ee3f94d04631f3996 bitcask-0.1 d08f4bb7f4dfa46236f8b83ee3f94d04631f3996 bitcask-0.1 57df4c063cc44e33a0305094a56f7eada9f40469 bitcask-0.1 097d2c76556879960d8c2e276e9134b26b608439 bitcask-1.0 097d2c76556879960d8c2e276e9134b26b608439 bitcask-1.0 803b5ee9e34fbd0bd4b933345e8f97f665290c54 bitcask-1.0 7c84be60d99f57a7abe01c6b8d6d0410be7cac11 bitcask-1.0.1 e6fc3f1ff3062f58e2353023d4bd9ff15ed0a86c bitcask-1.0.2 6a74d3aac4fbb9aab2fa7c387a43f3d2e7918cc4 bitcask-1.0.3 6a74d3aac4fbb9aab2fa7c387a43f3d2e7918cc4 bitcask-1.0.3 0000000000000000000000000000000000000000 bitcask-1.0.3 0000000000000000000000000000000000000000 bitcask-1.0.3 aa4c2e1f22c20cdbae2d2faf5823982fee1a1487 bitcask-1.0.3 1f1a46ebff5ba68577bef15e34bd9aa930d6b4cc bitcask-1.1 1f1a46ebff5ba68577bef15e34bd9aa930d6b4cc bitcask-1.1 63da425db2a0aa0b497cf1df9232801b67238dd9 bitcask-1.1 cbce79a1610b5ffbb63ef17bdd827b71517ec85f bitcask-1.1.1 0e0ee5a95a7d07364bbf8ee6feec20abc7a6c1ac bitcask-1.1.2 bc69f75cdff33b66480dc267959418c3d526a2f9 bitcask-1.1.3 5596285d1d37c07718be7838f859a02893599e26 bitcask-1.1.4 erlang-bitcask-1.6.7+dfsg/.travis.yml000066400000000000000000000003311233730135600174430ustar00rootroot00000000000000language: erlang script: "make test" notifications: webhooks: http://basho-engbot.herokuapp.com/travis?key=8b53d962594d0253d20002380cfb837fb81b928b email: eng@basho.com otp_release: - R15B01 - R15B - R14B04 erlang-bitcask-1.6.7+dfsg/Makefile000066400000000000000000000040651233730135600170020ustar00rootroot00000000000000REPO ?= bitcask BITCASK_TAG = $(shell git describe --tags) REVISION ?= $(shell echo $(BITCASK_TAG) | sed -e 's/^$(REPO)-//') PKG_VERSION ?= $(shell echo $(REVISION) | tr - .) REBAR_BIN := $(shell which rebar) ifeq ($(REBAR_BIN),) REBAR_BIN = ./rebar endif .PHONY: rel deps package pkgclean all: deps compile compile: $(REBAR_BIN) compile deps: $(REBAR_BIN) get-deps clean: $(REBAR_BIN) clean test: deps compile eunit_erlang eunit_nif eunit_erlang: BITCASK_IO_MODE="erlang" $(REBAR_BIN) skip_deps=true eunit eunit_nif: BITCASK_IO_MODE="nif" $(REBAR_BIN) skip_deps=true eunit # Release tarball creation # Generates a tarball that includes all the deps sources so no checkouts are necessary archivegit = git archive --format=tar --prefix=$(1)/ HEAD | (cd $(2) && tar xf -) archivehg = hg archive $(2)/$(1) archive = if [ -d ".git" ]; then \ $(call archivegit,$(1),$(2)); \ else \ $(call archivehg,$(1),$(2)); \ fi buildtar = mkdir distdir && \ git clone . distdir/$(REPO)-clone && \ cd distdir/$(REPO)-clone && \ git checkout $(BITCASK_TAG) && \ $(call archive,$(BITCASK_TAG),..) && \ mkdir ../$(BITCASK_TAG)/deps && \ make deps; \ for dep in deps/*; do cd $${dep} && $(call archive,$${dep},../../../$(BITCASK_TAG)); cd ../..; done distdir: $(if $(BITCASK_TAG), $(call buildtar), $(error "You can't generate a release tarball from a non-tagged revision. Run 'git checkout ', then 'make dist'")) dist $(BITCASK_TAG).tar.gz: distdir cd distdir; \ tar czf ../$(BITCASK_TAG).tar.gz $(BITCASK_TAG) ballclean: rm -rf $(BITCASK_TAG).tar.gz distdir package: dist $(MAKE) -C package package pkgclean: $(MAKE) -C package pkgclean export BITCASK_TAG PKG_VERSION REPO REVISION APPS = kernel stdlib sasl erts ssl tools os_mon runtime_tools crypto inets \ xmerl webtool snmp public_key mnesia eunit syntax_tools compiler PLT = $(HOME)/.bitcask_dialyzer_plt build_plt: deps compile dialyzer --build_plt --output_plt $(PLT) --apps $(APPS) deps/*/ebin dialyzer: deps compile dialyzer -Wno_return --plt $(PLT) ebin clean_plt: rm $(PLT) erlang-bitcask-1.6.7+dfsg/README.md000066400000000000000000000005541233730135600166200ustar00rootroot00000000000000# Bitcask - A Log-Structured Hash Table for Fast Key/Value Data [![Build Status](https://secure.travis-ci.org/basho/bitcask.png?branch=master)](http://travis-ci.org/basho/bitcask) Bitcask uses the "rebar" build system, but we have provided a wrapper Makefile so that simply running "make" at the top level should work. Bitcask requires Erlang R14B04 or later. erlang-bitcask-1.6.7+dfsg/THANKS000066400000000000000000000002101233730135600162410ustar00rootroot00000000000000The following people have contributed to Bitcask: Eric Brewer David Smith Justin Sheehy Andy Gross Ryan Tilder Jon Meredith Bob Dionne erlang-bitcask-1.6.7+dfsg/c_src/000077500000000000000000000000001233730135600164265ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/c_src/bitcask_nifs.c000066400000000000000000002140401233730135600212320ustar00rootroot00000000000000// ------------------------------------------------------------------- // // bitcask: Eric Brewer-inspired key/value store // // Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. // // This file is provided to you under the Apache License, // Version 2.0 (the "License"); you may not use this file // except in compliance with the License. You may obtain // a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. // // ------------------------------------------------------------------- #include #include #include #include #include #include "erl_nif.h" #include "erl_driver.h" #include "erl_nif_compat.h" #include "erl_nif_util.h" #include "khash.h" #include "murmurhash.h" #include #ifdef BITCASK_DEBUG #include #include void DEBUG(const char *fmt, ...) { va_list ap; va_start(ap, fmt); vfprintf(stderr, fmt, ap); va_end(ap); } #else # define DEBUG(X, ...) {} #endif #ifdef PULSE #include "pulse_c_send.h" #endif static ErlNifResourceType* bitcask_keydir_RESOURCE; static ErlNifResourceType* bitcask_lock_RESOURCE; static ErlNifResourceType* bitcask_file_RESOURCE; typedef struct { int fd; } bitcask_file_handle; typedef struct { uint32_t file_id; uint32_t total_sz; uint64_t offset; uint32_t tstamp; uint32_t newest_put; uint16_t key_sz; char key[0]; } bitcask_keydir_entry; static khint_t keydir_entry_hash(bitcask_keydir_entry* entry); static khint_t keydir_entry_equal(bitcask_keydir_entry* lhs, bitcask_keydir_entry* rhs); KHASH_INIT(entries, bitcask_keydir_entry*, char, 0, keydir_entry_hash, keydir_entry_equal); typedef struct { uint32_t file_id; uint64_t live_keys; // number of 'live' keys in entries and pending uint64_t live_bytes; // number of 'live' bytes uint64_t total_keys; // total number of keys written to file uint64_t total_bytes; // total number of bytes written to file uint32_t oldest_tstamp; // oldest observed tstamp in a file uint32_t newest_tstamp; // newest observed tstamp in a file } bitcask_fstats_entry; KHASH_MAP_INIT_INT(fstats, bitcask_fstats_entry*); typedef khash_t(entries) entries_hash_t; typedef khash_t(fstats) fstats_hash_t; typedef struct { entries_hash_t* entries; entries_hash_t* pending; // pending keydir entries during keydir folding fstats_hash_t* fstats; size_t key_count; size_t key_bytes; uint32_t biggest_file_id; unsigned int refcount; unsigned int keyfolders; uint64_t iter_generation; uint64_t pending_updated; uint64_t pending_start; // os:timestamp() as 64-bit integer ErlNifPid* pending_awaken; // processes to wake once pending merged into entries unsigned int pending_awaken_count; unsigned int pending_awaken_size; ErlNifMutex* mutex; char is_ready; char name[0]; } bitcask_keydir; typedef struct { bitcask_keydir* keydir; int iterating; khiter_t iterator; } bitcask_keydir_handle; typedef struct { int fd; int is_write_lock; char filename[0]; } bitcask_lock_handle; KHASH_INIT(global_keydirs, char*, bitcask_keydir*, 1, kh_str_hash_func, kh_str_hash_equal); typedef struct { khash_t(global_keydirs)* global_keydirs; ErlNifMutex* global_keydirs_lock; } bitcask_priv_data; #define kh_put2(name, h, k, v) { \ int itr_status; \ khiter_t itr = kh_put(name, h, k, &itr_status); \ kh_val(h, itr) = v; } \ #define kh_put_set(name, h, k) { \ int itr_status; \ kh_put(name, h, k, &itr_status); } // Handle lock helper functions #define LOCK(keydir) { if (keydir->mutex) enif_mutex_lock(keydir->mutex); } #define UNLOCK(keydir) { if (keydir->mutex) enif_mutex_unlock(keydir->mutex); } // Pending tombstones #define is_pending_tombstone(e) ((e)->tstamp == 0 && \ (e)->offset == 0) #define set_pending_tombstone(e) {(e)->tstamp = 0; \ (e)->offset = 0; } // Atoms (initialized in on_load) static ERL_NIF_TERM ATOM_ALLOCATION_ERROR; static ERL_NIF_TERM ATOM_ALREADY_EXISTS; static ERL_NIF_TERM ATOM_BITCASK_ENTRY; static ERL_NIF_TERM ATOM_ERROR; static ERL_NIF_TERM ATOM_FALSE; static ERL_NIF_TERM ATOM_FSTAT_ERROR; static ERL_NIF_TERM ATOM_FTRUNCATE_ERROR; static ERL_NIF_TERM ATOM_GETFL_ERROR; static ERL_NIF_TERM ATOM_ILT_CREATE_ERROR; /* Iteration lock thread creation error */ static ERL_NIF_TERM ATOM_ITERATION_IN_PROCESS; static ERL_NIF_TERM ATOM_ITERATION_NOT_PERMITTED; static ERL_NIF_TERM ATOM_ITERATION_NOT_STARTED; static ERL_NIF_TERM ATOM_LOCK_NOT_WRITABLE; static ERL_NIF_TERM ATOM_NOT_FOUND; static ERL_NIF_TERM ATOM_NOT_READY; static ERL_NIF_TERM ATOM_OK; static ERL_NIF_TERM ATOM_OUT_OF_DATE; static ERL_NIF_TERM ATOM_PREAD_ERROR; static ERL_NIF_TERM ATOM_PWRITE_ERROR; static ERL_NIF_TERM ATOM_READY; static ERL_NIF_TERM ATOM_SETFL_ERROR; static ERL_NIF_TERM ATOM_TRUE; static ERL_NIF_TERM ATOM_EOF; static ERL_NIF_TERM ATOM_CREATE; static ERL_NIF_TERM ATOM_READONLY; static ERL_NIF_TERM ATOM_O_SYNC; // Prototypes ERL_NIF_TERM bitcask_nifs_keydir_new0(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_new1(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_mark_ready(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_get_int(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_put_int(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_remove(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_copy(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_itr(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_itr_next(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_itr_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_info(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_keydir_trim_fstats(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_increment_file_id(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_create_tmp_file(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_lock_acquire(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_lock_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_lock_readdata(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_lock_writedata(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_open(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_close(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_sync(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_pread(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_pwrite(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_read(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_write(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_position(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM bitcask_nifs_file_seekbof(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); ERL_NIF_TERM errno_atom(ErlNifEnv* env, int error); ERL_NIF_TERM errno_error_tuple(ErlNifEnv* env, ERL_NIF_TERM key, int error); static void merge_pending_entries(ErlNifEnv* env, bitcask_keydir* keydir); static void lock_release(bitcask_lock_handle* handle); static void bitcask_nifs_keydir_resource_cleanup(ErlNifEnv* env, void* arg); static void bitcask_nifs_file_resource_cleanup(ErlNifEnv* env, void* arg); static ErlNifFunc nif_funcs[] = { #ifdef PULSE {"set_pulse_pid", 1, set_pulse_pid}, #endif {"keydir_new", 0, bitcask_nifs_keydir_new0}, {"keydir_new", 1, bitcask_nifs_keydir_new1}, {"keydir_mark_ready", 1, bitcask_nifs_keydir_mark_ready}, {"keydir_put_int", 9, bitcask_nifs_keydir_put_int}, {"keydir_get_int", 2, bitcask_nifs_keydir_get_int}, {"keydir_remove", 2, bitcask_nifs_keydir_remove}, {"keydir_remove_int", 5, bitcask_nifs_keydir_remove}, {"keydir_copy", 1, bitcask_nifs_keydir_copy}, {"keydir_itr_int", 4, bitcask_nifs_keydir_itr}, {"keydir_itr_next_int", 1, bitcask_nifs_keydir_itr_next}, {"keydir_itr_release", 1, bitcask_nifs_keydir_itr_release}, {"keydir_info", 1, bitcask_nifs_keydir_info}, {"keydir_release", 1, bitcask_nifs_keydir_release}, {"keydir_trim_fstats", 2, bitcask_nifs_keydir_trim_fstats}, {"increment_file_id", 1, bitcask_nifs_increment_file_id}, {"lock_acquire_int", 2, bitcask_nifs_lock_acquire}, {"lock_release_int", 1, bitcask_nifs_lock_release}, {"lock_readdata_int", 1, bitcask_nifs_lock_readdata}, {"lock_writedata_int", 2, bitcask_nifs_lock_writedata}, {"file_open_int", 2, bitcask_nifs_file_open}, {"file_close_int", 1, bitcask_nifs_file_close}, {"file_sync_int", 1, bitcask_nifs_file_sync}, {"file_pread_int", 3, bitcask_nifs_file_pread}, {"file_pwrite_int", 3, bitcask_nifs_file_pwrite}, {"file_read_int", 2, bitcask_nifs_file_read}, {"file_write_int", 2, bitcask_nifs_file_write}, {"file_position_int", 2, bitcask_nifs_file_position}, {"file_seekbof_int", 1, bitcask_nifs_file_seekbof} }; ERL_NIF_TERM bitcask_nifs_keydir_new0(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { // First, setup a resource for our handle bitcask_keydir_handle* handle = enif_alloc_resource_compat(env, bitcask_keydir_RESOURCE, sizeof(bitcask_keydir_handle)); memset(handle, '\0', sizeof(bitcask_keydir_handle)); // Now allocate the actual keydir instance. Because it's unnamed/shared, we'll // leave the name and lock portions null'd out bitcask_keydir* keydir = enif_alloc_compat(env, sizeof(bitcask_keydir)); memset(keydir, '\0', sizeof(bitcask_keydir)); keydir->entries = kh_init(entries); keydir->fstats = kh_init(fstats); // Assign the keydir to our handle and hand it back handle->keydir = keydir; ERL_NIF_TERM result = enif_make_resource(env, handle); enif_release_resource_compat(env, handle); return enif_make_tuple2(env, ATOM_OK, result); } ERL_NIF_TERM bitcask_nifs_keydir_new1(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { char name[4096]; size_t name_sz; if (enif_get_string(env, argv[0], name, sizeof(name), ERL_NIF_LATIN1)) { name_sz = strlen(name); // Get our private stash and check the global hash table for this entry bitcask_priv_data* priv = (bitcask_priv_data*)enif_priv_data(env); enif_mutex_lock(priv->global_keydirs_lock); bitcask_keydir* keydir; khiter_t itr = kh_get(global_keydirs, priv->global_keydirs, name); if (itr != kh_end(priv->global_keydirs)) { keydir = kh_val(priv->global_keydirs, itr); // Existing keydir is available. Check the is_ready flag to determine if // the original creator is ready for other processes to use it. if (!keydir->is_ready) { // Notify the caller that while the requested keydir exists, it's not // ready for public usage. enif_mutex_unlock(priv->global_keydirs_lock); return enif_make_tuple2(env, ATOM_ERROR, ATOM_NOT_READY); } else { keydir->refcount++; } } else { // No such keydir, create a new one and add to the globals list. Make sure // to allocate enough room for the name. keydir = enif_alloc_compat(env, sizeof(bitcask_keydir) + name_sz + 1); memset(keydir, '\0', sizeof(bitcask_keydir) + name_sz + 1); strncpy(keydir->name, name, name_sz + 1); // Initialize hash tables keydir->entries = kh_init(entries); keydir->fstats = kh_init(fstats); // Be sure to initialize the mutex and set our refcount keydir->mutex = enif_mutex_create(name); keydir->refcount = 1; // Finally, register this new keydir in the globals kh_put2(global_keydirs, priv->global_keydirs, keydir->name, keydir); } enif_mutex_unlock(priv->global_keydirs_lock); // Setup a resource for the handle bitcask_keydir_handle* handle = enif_alloc_resource_compat(env, bitcask_keydir_RESOURCE, sizeof(bitcask_keydir_handle)); memset(handle, '\0', sizeof(bitcask_keydir_handle)); handle->keydir = keydir; ERL_NIF_TERM result = enif_make_resource(env, handle); enif_release_resource_compat(env, handle); // Return to the caller a tuple with the reference and an atom // indicating if the keydir is ready or not. ERL_NIF_TERM is_ready_atom = keydir->is_ready ? ATOM_READY : ATOM_NOT_READY; return enif_make_tuple2(env, is_ready_atom, result); } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_mark_ready(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { bitcask_keydir* keydir = handle->keydir; LOCK(keydir); keydir->is_ready = 1; UNLOCK(keydir); return ATOM_OK; } else { return enif_make_badarg(env); } } static void update_fstats(ErlNifEnv* env, bitcask_keydir* keydir, uint32_t file_id, uint32_t tstamp, int32_t live_increment, int32_t total_increment, int32_t live_bytes_increment, int32_t total_bytes_increment) { bitcask_fstats_entry* entry = 0; khiter_t itr = kh_get(fstats, keydir->fstats, file_id); if (itr == kh_end(keydir->fstats)) { // Need to initialize new entry and add to the table entry = enif_alloc_compat(env, sizeof(bitcask_fstats_entry)); memset(entry, '\0', sizeof(bitcask_fstats_entry)); entry->file_id = file_id; kh_put2(fstats, keydir->fstats, file_id, entry); } else { entry = kh_val(keydir->fstats, itr); } entry->live_keys += live_increment; entry->total_keys += total_increment; entry->live_bytes += live_bytes_increment; entry->total_bytes += total_bytes_increment; if ((tstamp != 0 && tstamp < entry->oldest_tstamp) || entry->oldest_tstamp == 0) { entry->oldest_tstamp = tstamp; } if ((tstamp != 0 && tstamp > entry->newest_tstamp) || entry->newest_tstamp == 0) { entry->newest_tstamp = tstamp; } } static khint_t keydir_entry_hash(bitcask_keydir_entry* entry) { return MURMUR_HASH(entry->key, entry->key_sz, 42); } static khint_t keydir_entry_equal(bitcask_keydir_entry* lhs, bitcask_keydir_entry* rhs) { if (lhs->key_sz != rhs->key_sz) { return 0; } else { return (memcmp(lhs->key, rhs->key, lhs->key_sz) == 0); } } static khiter_t get_entries_hash(ErlNifEnv* env, entries_hash_t *hash, ErlNifBinary* key, khiter_t* itr_ptr, bitcask_keydir_entry** entry_ptr) { khiter_t itr; if (key->size < (4096 - sizeof(bitcask_keydir_entry))) { char buf[4096]; bitcask_keydir_entry* e = (bitcask_keydir_entry*)buf; e->key_sz = key->size; memcpy(e->key, key->data, key->size); itr = kh_get(entries, hash, e); } else { bitcask_keydir_entry* e = enif_alloc_compat(env, sizeof(bitcask_keydir_entry) + key->size); e->key_sz = key->size; memcpy(e->key, key->data, key->size); itr = kh_get(entries, hash, e); enif_free_compat(env, e); } if (itr != kh_end(hash)) { if (itr_ptr != NULL) { *itr_ptr = itr; } if (entry_ptr != NULL) { *entry_ptr = kh_key(hash, itr); } return 1; } else { return 0; } } // Find an entry in the pending or entries keydir and update the hash/itr/entry pointers // if non-NULL. If iterating is true, restrict search to the frozen keydir. static int find_keydir_entry(ErlNifEnv* env, bitcask_keydir* keydir, ErlNifBinary* key, entries_hash_t** hash_ptr, khiter_t* itr_ptr, bitcask_keydir_entry** entry_ptr, int iterating) { // Search pending if present if (keydir->pending != NULL && !iterating) { if (get_entries_hash(env, keydir->pending, key, itr_ptr, entry_ptr)) { if (hash_ptr != NULL) { *hash_ptr = keydir->pending; } return 1; } } // If not in pending, check normal entries if (get_entries_hash(env, keydir->entries, key, itr_ptr, entry_ptr)) { if (hash_ptr != NULL) { *hash_ptr = keydir->entries; } return 1; } // Not in entries or pending return 0; } // Allocate, populate and add entry to the keydir hash based on the key and entry structure static bitcask_keydir_entry* add_entry(ErlNifEnv* env, bitcask_keydir* keydir, entries_hash_t* hash, ErlNifBinary* key, bitcask_keydir_entry* entry) { bitcask_keydir_entry* new_entry = enif_alloc_compat(env, sizeof(bitcask_keydir_entry) + key->size); new_entry->file_id = entry->file_id; new_entry->total_sz = entry->total_sz; new_entry->offset = entry->offset; new_entry->tstamp = entry->tstamp; new_entry->key_sz = key->size; memcpy(new_entry->key, key->data, key->size); kh_put_set(entries, hash, new_entry); return new_entry; } // Move an entry from pending into entries static void move_pending_entry(ErlNifEnv* env, bitcask_keydir* keydir, khiter_t pend_itr, bitcask_keydir_entry* entry) { kh_put_set(entries, keydir->entries, entry); // no need to delete from pending entry, it will be freed as a whole } // Update the current entry with newer information static void update_entry(ErlNifEnv* env, bitcask_keydir* keydir, bitcask_keydir_entry* cur_entry, bitcask_keydir_entry* upd_entry) { cur_entry->file_id = upd_entry->file_id; cur_entry->total_sz = upd_entry->total_sz; cur_entry->offset = upd_entry->offset; cur_entry->tstamp = upd_entry->tstamp; } static void remove_entry(ErlNifEnv* env, bitcask_keydir* keydir, khiter_t itr, bitcask_keydir_entry* entry) { kh_del(entries, keydir->entries, itr); } ERL_NIF_TERM bitcask_nifs_keydir_put_int(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; bitcask_keydir_entry entry; ErlNifBinary key; uint32_t old_file_id; uint64_t old_offset; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle) && enif_inspect_binary(env, argv[1], &key) && enif_get_uint(env, argv[2], (unsigned int*)&(entry.file_id)) && enif_get_uint(env, argv[3], &(entry.total_sz)) && enif_get_uint64_bin(env, argv[4], &(entry.offset)) && enif_get_uint(env, argv[5], &(entry.tstamp)) && enif_get_uint(env, argv[6], &(entry.newest_put)) && enif_get_uint(env, argv[7], (unsigned int*)&(old_file_id)) && enif_get_uint64_bin(env, argv[8], &(old_offset))) { khiter_t itr; entries_hash_t* hash; bitcask_keydir_entry* old_entry; bitcask_keydir* keydir = handle->keydir; LOCK(keydir); DEBUG("+++ Put file_id=%d offset=%d total_sz=%d\r\n", (int) entry.file_id, (int) entry.offset, (int)entry.total_sz); // Check for put on a new key or updating a pending tombstone int tombstone = 0; int found = find_keydir_entry(env, keydir, &key, &hash, &itr, &old_entry, 0); if (found == 1 && hash == keydir->pending && is_pending_tombstone(old_entry)) { found = 0; tombstone = 1; } if (!found && old_file_id != 0) { UNLOCK(keydir); return ATOM_ALREADY_EXISTS; } if (!found) { keydir->key_count++; keydir->key_bytes += key.size; // Increment live and total stats. update_fstats(env, keydir, entry.file_id, entry.tstamp, 1, 1, entry.total_sz, entry.total_sz); if (tombstone) { // If a pending tombstone, update to be an active entry again update_entry(env, keydir, old_entry, &entry); } else { // Add entry to the pending hash if iterating, otherwise // add it to the main keydir hash = keydir->pending == NULL ? keydir->entries : keydir->pending; add_entry(env, keydir, hash, &key, &entry); } if (keydir->pending != NULL) { keydir->pending_updated++; } if (entry.file_id > keydir->biggest_file_id) { keydir->biggest_file_id = entry.file_id; } UNLOCK(keydir); return ATOM_OK; } // If old_file_id is > 0, then test-and-set fails, // then return already_exists. if (old_file_id != 0 && !(old_file_id == old_entry->file_id && old_offset == old_entry->offset)) { UNLOCK(keydir); return ATOM_ALREADY_EXISTS; } // Now that we've marshalled everything, see if the tstamp for this key is >= // to what's already in the hash. Otherwise, we don't bother with the update. if ((entry.newest_put && (entry.file_id >= keydir->biggest_file_id)) || (! entry.newest_put && (old_entry->tstamp < entry.tstamp)) || (! entry.newest_put && ((old_entry->file_id < entry.file_id) || (((old_entry->file_id == entry.file_id) && (old_entry->offset < entry.offset)))))) { // Remove the stats for the old entry and add the new if (old_entry->file_id != entry.file_id) // different files { update_fstats(env, keydir, old_entry->file_id, 0, -1, 0, -old_entry->total_sz, 0); update_fstats(env, keydir, entry.file_id, entry.tstamp, 1, 1, entry.total_sz, entry.total_sz); } else // file_id is same, change live/total in one entry { update_fstats(env, keydir, entry.file_id, entry.tstamp, 0, 1, entry.total_sz - old_entry->total_sz, entry.total_sz); } if (keydir->pending == NULL || // not folding hash == keydir->pending) // or the old_entry already in pending { // Update the entry info. Note that if you do multiple updates in a // second, the last one in wins! // TODO: Safe? update_entry(env, keydir, old_entry, &entry); } else // old_entry is in entries, add new to pending { add_entry(env, keydir, keydir->pending, &key, &entry); } if (keydir->pending != NULL) { keydir->pending_updated++; } if (entry.file_id > keydir->biggest_file_id) { keydir->biggest_file_id = entry.file_id; } UNLOCK(keydir); return ATOM_OK; } else { // If the keydir is in the process of being loaded, it's safe to update // fstats on a failed put. Once the keydir is live, any attempts to put // in old data would just be ignored to avoid double-counting problems. if (!keydir->is_ready) { // Increment the total # of keys and total size for the entry that // was NOT stored in the keydir. update_fstats(env, keydir, entry.file_id, entry.tstamp, 0, 1, 0, entry.total_sz); } UNLOCK(keydir); return ATOM_ALREADY_EXISTS; } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_get_int(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; ErlNifBinary key; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle) && enif_inspect_binary(env, argv[1], &key)) { bitcask_keydir_entry* entry = NULL; bitcask_keydir* keydir = handle->keydir; LOCK(keydir); DEBUG("+++ Get issued\r\n"); if (find_keydir_entry(env, keydir, &key, NULL, NULL, &entry, handle->iterating) && !is_pending_tombstone(entry)) { ERL_NIF_TERM result = enif_make_tuple6(env, ATOM_BITCASK_ENTRY, argv[1], /* Key */ enif_make_uint(env, entry->file_id), enif_make_uint(env, entry->total_sz), enif_make_uint64_bin(env, entry->offset), enif_make_uint(env, entry->tstamp)); DEBUG(" ... returned value\r\n"); UNLOCK(keydir); return result; } else { DEBUG(" ... not_found\r\n"); UNLOCK(keydir); return ATOM_NOT_FOUND; } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_remove(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; ErlNifBinary key; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle) && enif_inspect_binary(env, argv[1], &key)) { khiter_t itr; entries_hash_t* hash; bitcask_keydir_entry* entry; bitcask_keydir* keydir = handle->keydir; LOCK(keydir); DEBUG("+++ Remove\r\n"); if (find_keydir_entry(env, keydir, &key, &hash, &itr, &entry, 0)) { // If this call has 5 arguments, this is a conditional removal. We // only want to actually remove the entry if the tstamp, fileid and // offset matches the one provided. A sort of poor-man's CAS. if (argc == 5) { uint32_t tstamp; uint32_t file_id; uint64_t offset; if (enif_get_uint(env, argv[2], (unsigned int*)&tstamp) && enif_get_uint(env, argv[3], (unsigned int*)&file_id) && enif_get_uint64_bin(env, argv[4], (uint64_t*)&offset)) { if (entry->tstamp != tstamp || entry->file_id != file_id || entry->offset != offset) { // Either tstamp or file_id didn't match precisely. Ignore // this attempt to delete the record. UNLOCK(keydir); return ATOM_OK; } } else { UNLOCK(keydir); return enif_make_badarg(env); } } // Remove the key from the keydir stats keydir->key_count--; keydir->key_bytes -= entry->key_sz; // Remove from file stats update_fstats(env, keydir, entry->file_id, entry->tstamp, -1, 0, -entry->total_sz, 0); // If found an entry in the entries hash and not folding, remove it if (keydir->pending == NULL) { remove_entry(env, keydir, itr, entry); enif_free_compat(env, entry); } // If found an entry in the pending hash, convert it to a tombstone else if (keydir->pending == hash) { // If not already a tomstone, update stats and make it one if (!is_pending_tombstone(entry)) { set_pending_tombstone(entry); } } // Otherwise add a tombstone to the pending hash (iteration must have // started between put/remove call in bitcask:delete. else { bitcask_keydir_entry* pending_entry = add_entry(env, keydir, keydir->pending, &key, entry); set_pending_tombstone(pending_entry); } UNLOCK(keydir); return ATOM_OK; } else // entry not found, should not get here in normal operation nothing to update { UNLOCK(keydir); return ATOM_OK;; } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_copy(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { bitcask_keydir* keydir = handle->keydir; LOCK(keydir); bitcask_keydir_handle* new_handle = enif_alloc_resource_compat(env, bitcask_keydir_RESOURCE, sizeof(bitcask_keydir_handle)); memset(handle, '\0', sizeof(bitcask_keydir_handle)); // Now allocate the actual keydir instance. Because it's unnamed/shared, we'll // leave the name and lock portions null'd out bitcask_keydir* new_keydir = enif_alloc_compat(env, sizeof(bitcask_keydir)); new_handle->keydir = new_keydir; memset(new_keydir, '\0', sizeof(bitcask_keydir)); new_keydir->entries = kh_init(entries); new_keydir->fstats = kh_init(fstats); // Deep copy each item from the existing handle khiter_t itr; for (itr = kh_begin(keydir->entries); itr != kh_end(keydir->entries); ++itr) { // Allocate our entry to be inserted into the new table and copy the record // over. if (kh_exist(keydir->entries, itr)) { bitcask_keydir_entry* curr = kh_key(keydir->entries, itr); size_t new_sz = sizeof(bitcask_keydir_entry) + curr->key_sz; bitcask_keydir_entry* new = enif_alloc_compat(env, new_sz); memcpy(new, curr, new_sz); kh_put_set(entries, new_keydir->entries, new); } } if (keydir->pending != NULL) { for (itr = kh_begin(keydir->pending); itr != kh_end(keydir->pending); ++itr) { // Allocate our entry to be inserted into the new table and copy the record // over. if (kh_exist(keydir->pending, itr)) { bitcask_keydir_entry* curr = kh_key(keydir->pending, itr); size_t new_sz = sizeof(bitcask_keydir_entry) + curr->key_sz; bitcask_keydir_entry* new = enif_alloc_compat(env, new_sz); memcpy(new, curr, new_sz); kh_put_set(entries, new_keydir->pending, new); } } } // Deep copy fstats info for (itr = kh_begin(keydir->fstats); itr != kh_end(keydir->fstats); ++itr) { if (kh_exist(keydir->fstats, itr)) { bitcask_fstats_entry* curr_f = kh_val(keydir->fstats, itr); bitcask_fstats_entry* new_f = enif_alloc_compat(env, sizeof(bitcask_fstats_entry)); memcpy(new_f, curr_f, sizeof(bitcask_fstats_entry)); kh_put2(fstats, new_keydir->fstats, new_f->file_id, new_f); } } if (keydir->pending != NULL) { merge_pending_entries(env, keydir); } UNLOCK(keydir); ERL_NIF_TERM result = enif_make_resource(env, new_handle); enif_release_resource_compat(env, new_handle); return enif_make_tuple2(env, ATOM_OK, result); } else { return enif_make_badarg(env); } } // Helper for bitcask_nifs_keydir_itr to decide if it is valid to iterate over entries. // Check the number of updates since pending was created is less than the maximum // and that the current view is not too old. // Call with ts set to zero to force a wait on any pending keydir. // Set maxage or maxputs negative to ignore them. Set both negative to force // using the keydir - useful when a process has waited once and needs to run // next time. static int can_itr_keydir(bitcask_keydir* keydir, uint64_t ts, int maxage, int maxputs) { if (keydir->pending == NULL || // not frozen or caller wants to reuse (maxage < 0 && maxputs < 0)) // the exiting freeze { return 1; } else if (ts == 0 || ts < keydir->pending_start) { // if clock skew (or forced wait), force key folding to wait return 0; // which will fix keydir->pending_start } else { uint64_t age = ts - keydir->pending_start; return ((maxage < 0 || age <= maxage) && (maxputs < 0 || keydir->pending_updated <= maxputs)); } } ERL_NIF_TERM bitcask_nifs_keydir_itr(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { uint64_t ts; int maxage; int maxputs; LOCK(handle->keydir); DEBUG("+++ itr\r\n"); bitcask_keydir* keydir = handle->keydir; // If a iterator thread is already active for this keydir, bail if (handle->iterating) { UNLOCK(handle->keydir); return enif_make_tuple2(env, ATOM_ERROR, ATOM_ITERATION_IN_PROCESS); } if (!(enif_get_uint64_bin(env, argv[1], (uint64_t*)&ts) && enif_get_int(env, argv[2], (int*)&maxage) && enif_get_int(env, argv[3], (int*)&maxputs))) { UNLOCK(handle->keydir); return enif_make_badarg(env); } if (can_itr_keydir(keydir, ts, maxage, maxputs)) { if (keydir->pending == NULL) { keydir->pending = kh_init(entries); keydir->pending_start = ts; } handle->iterating = 1; keydir->keyfolders++; handle->iterator = kh_begin(keydir->entries); UNLOCK(handle->keydir); return ATOM_OK; } else { // Grow the pending_awaken array if necessary if (keydir->pending_awaken_count == keydir->pending_awaken_size) { // Grow 16-at-a-time, expect a single alloc keydir->pending_awaken_size += 16; size_t size = keydir->pending_awaken_size * sizeof(keydir->pending_awaken[0]); if (keydir->pending_awaken == NULL) { keydir->pending_awaken = enif_alloc_compat(env, size); } else { keydir->pending_awaken = enif_realloc_compat(env, keydir->pending_awaken, size); } } enif_self(env, &keydir->pending_awaken[keydir->pending_awaken_count]); keydir->pending_awaken_count++; UNLOCK(handle->keydir); return ATOM_OUT_OF_DATE; } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_itr_next(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { bitcask_keydir* keydir = handle->keydir; if (handle->iterating != 1) { // Iteration not started! return enif_make_tuple2(env, ATOM_ERROR, ATOM_ITERATION_NOT_STARTED); } while (handle->iterator != kh_end(keydir->entries)) { if (kh_exist(keydir->entries, handle->iterator)) { bitcask_keydir_entry* entry = kh_key(keydir->entries, handle->iterator); ErlNifBinary key; // Alloc the binary and make sure it succeeded if (!enif_alloc_binary_compat(env, entry->key_sz, &key)) { return ATOM_ALLOCATION_ERROR; } // Copy the data from our key to the new allocated binary // TODO: If we maintained a ErlNifBinary in the original entry, could we // get away with not doing a copy here? memcpy(key.data, entry->key, entry->key_sz); ERL_NIF_TERM curr = enif_make_tuple6(env, ATOM_BITCASK_ENTRY, enif_make_binary(env, &key), enif_make_uint(env, entry->file_id), enif_make_uint(env, entry->total_sz), enif_make_uint64_bin(env, entry->offset), enif_make_uint(env, entry->tstamp)); // Update the iterator to the next entry (handle->iterator)++; return curr; } else { // No item in this slot; increment the iterator and keep looping (handle->iterator)++; } } // The iterator is at the end of the table return ATOM_NOT_FOUND; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_itr_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { LOCK(handle->keydir); if (handle->iterating != 1) { // Iteration not started! UNLOCK(handle->keydir); return enif_make_tuple2(env, ATOM_ERROR, ATOM_ITERATION_NOT_STARTED); } handle->iterating = 0; handle->keydir->keyfolders--; if (handle->keydir->keyfolders == 0) { merge_pending_entries(env, handle->keydir); handle->keydir->iter_generation++; } UNLOCK(handle->keydir); return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_info(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { bitcask_keydir* keydir = handle->keydir; if (keydir == NULL) { return enif_make_badarg(env); } LOCK(keydir); // Dump fstats info into a list of [{file_id, live_keys, total_keys, // live_bytes, total_bytes, // oldest_tstamp, newest_tstamp}] ERL_NIF_TERM fstats_list = enif_make_list(env, 0); khiter_t itr; bitcask_fstats_entry* curr_f; for (itr = kh_begin(keydir->fstats); itr != kh_end(keydir->fstats); ++itr) { if (kh_exist(keydir->fstats, itr)) { curr_f = kh_val(keydir->fstats, itr); ERL_NIF_TERM fstat = enif_make_tuple7(env, enif_make_uint(env, curr_f->file_id), enif_make_ulong(env, curr_f->live_keys), enif_make_ulong(env, curr_f->total_keys), enif_make_ulong(env, curr_f->live_bytes), enif_make_ulong(env, curr_f->total_bytes), enif_make_uint(env, curr_f->oldest_tstamp), enif_make_uint(env, curr_f->newest_tstamp)); fstats_list = enif_make_list_cell(env, fstat, fstats_list); } } ERL_NIF_TERM iter_info = enif_make_tuple3(env, enif_make_uint64_bin(env, keydir->iter_generation), enif_make_ulong(env, keydir->keyfolders), keydir->pending == NULL ? ATOM_FALSE : ATOM_TRUE); ERL_NIF_TERM result = enif_make_tuple4(env, enif_make_ulong(env, keydir->key_count), enif_make_ulong(env, keydir->key_bytes), fstats_list, iter_info); UNLOCK(keydir); return result; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { bitcask_nifs_keydir_resource_cleanup(env, handle); return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_increment_file_id(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)) { LOCK(handle->keydir); (handle->keydir->biggest_file_id)++; uint32_t id = handle->keydir->biggest_file_id; UNLOCK(handle->keydir); return enif_make_tuple2(env, ATOM_OK, enif_make_uint(env, id)); } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_keydir_trim_fstats(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_keydir_handle* handle; ERL_NIF_TERM head, tail, list; uint32_t non_existent_entries = 0; if (enif_get_resource(env, argv[0], bitcask_keydir_RESOURCE, (void**)&handle)&& enif_is_list(env, argv[1])) { bitcask_keydir* keydir = handle->keydir; LOCK(keydir); uint32_t file_id; list = argv[1]; while (enif_get_list_cell(env, list, &head, &tail)) { enif_get_uint(env, head, &file_id); khiter_t itr = kh_get(fstats, keydir->fstats, file_id); if (itr != kh_end(keydir->fstats)) { bitcask_fstats_entry* curr_f; curr_f = kh_val(keydir->fstats, itr); enif_free_compat(env, curr_f); kh_del(fstats, keydir->fstats, itr); } else { non_existent_entries++; } // if not found, noop, but shouldn't happen. // think about chaning the retval to signal for warning? list = tail; } UNLOCK(keydir); return enif_make_tuple2(env, ATOM_OK, enif_make_uint(env, non_existent_entries)); } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_lock_acquire(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { char filename[4096]; int is_write_lock = 0; if (enif_get_string(env, argv[0], filename, sizeof(filename), ERL_NIF_LATIN1) > 0 && enif_get_int(env, argv[1], &is_write_lock)) { // Setup the flags for the lock file int flags = O_RDONLY; if (is_write_lock) { // Use O_SYNC (in addition to other flags) to ensure that when we write // data to the lock file it is immediately (or nearly) available to any // other reading processes flags = O_CREAT | O_EXCL | O_RDWR | O_SYNC; } // Try to open the lock file -- allocate a resource if all goes well. int fd = open(filename, flags, 0600); if (fd > -1) { // Successfully opened the file -- setup a resource to track the FD. unsigned int filename_sz = strlen(filename) + 1; bitcask_lock_handle* handle = enif_alloc_resource_compat(env, bitcask_lock_RESOURCE, sizeof(bitcask_lock_handle) + filename_sz); handle->fd = fd; handle->is_write_lock = is_write_lock; strncpy(handle->filename, filename, filename_sz); ERL_NIF_TERM result = enif_make_resource(env, handle); enif_release_resource_compat(env, handle); return enif_make_tuple2(env, ATOM_OK, result); } else { return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_lock_release(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_lock_handle* handle; if (enif_get_resource(env, argv[0], bitcask_lock_RESOURCE, (void**)&handle)) { lock_release(handle); return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_lock_readdata(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_lock_handle* handle; if (enif_get_resource(env, argv[0], bitcask_lock_RESOURCE, (void**)&handle)) { // Stat the filehandle so we can read the entire contents into memory struct stat sinfo; if (fstat(handle->fd, &sinfo) != 0) { return errno_error_tuple(env, ATOM_FSTAT_ERROR, errno); } // Allocate a binary to hold the contents of the file ErlNifBinary data; if (!enif_alloc_binary_compat(env, sinfo.st_size, &data)) { return enif_make_tuple2(env, ATOM_ERROR, ATOM_ALLOCATION_ERROR); } // Read the whole file into our binary if (pread(handle->fd, data.data, data.size, 0) == -1) { return errno_error_tuple(env, ATOM_PREAD_ERROR, errno); } return enif_make_tuple2(env, ATOM_OK, enif_make_binary(env, &data)); } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_lock_writedata(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_lock_handle* handle; ErlNifBinary data; if (enif_get_resource(env, argv[0], bitcask_lock_RESOURCE, (void**)&handle) && enif_inspect_binary(env, argv[1], &data)) { if (handle->is_write_lock) { // Truncate the file first, to ensure that the lock file only contains what // we're about to write if (ftruncate(handle->fd, 0) == -1) { return errno_error_tuple(env, ATOM_FTRUNCATE_ERROR, errno); } // Write the new blob of data to the lock file. Note that we use O_SYNC to // ensure that the data is available ASAP to reading processes. if (pwrite(handle->fd, data.data, data.size, 0) == -1) { return errno_error_tuple(env, ATOM_PWRITE_ERROR, errno); } return ATOM_OK; } else { // Tried to write data to a read lock return enif_make_tuple2(env, ATOM_ERROR, ATOM_LOCK_NOT_WRITABLE); } } else { return enif_make_badarg(env); } } int get_file_open_flags(ErlNifEnv* env, ERL_NIF_TERM list) { int flags = -1; ERL_NIF_TERM head, tail; while (enif_get_list_cell(env, list, &head, &tail)) { if (head == ATOM_CREATE) { flags = O_CREAT | O_EXCL | O_RDWR | O_APPEND; } else if (head == ATOM_READONLY) { flags = O_RDONLY; } else if (head == ATOM_O_SYNC) { flags |= O_SYNC; } list = tail; } return flags; } ERL_NIF_TERM bitcask_nifs_file_open(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { char filename[4096]; if (enif_get_string(env, argv[0], filename, sizeof(filename), ERL_NIF_LATIN1) && enif_is_list(env, argv[1])) { int flags = get_file_open_flags(env, argv[1]); int fd = open(filename, flags, S_IREAD | S_IWRITE); if (fd > -1) { // Setup a resource for our handle bitcask_file_handle* handle = enif_alloc_resource_compat(env, bitcask_file_RESOURCE, sizeof(bitcask_file_handle)); memset(handle, '\0', sizeof(bitcask_file_handle)); handle->fd = fd; ERL_NIF_TERM result = enif_make_resource(env, handle); enif_release_resource_compat(env, handle); return enif_make_tuple2(env, ATOM_OK, result); } else { return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_close(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle)) { if (handle->fd > 0) { /* TODO: Check for EIO */ close(handle->fd); handle->fd = -1; } return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_sync(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle)) { int rc = fsync(handle->fd); if (rc != -1) { return ATOM_OK; } else { return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_pread(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; unsigned long offset_ul; unsigned long count_ul; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle) && enif_get_ulong(env, argv[1], &offset_ul) && /* Offset */ enif_get_ulong(env, argv[2], &count_ul)) /* Count */ { ErlNifBinary bin; off_t offset = offset_ul; size_t count = count_ul; if (!enif_alloc_binary(count, &bin)) { return enif_make_tuple2(env, ATOM_ERROR, ATOM_ALLOCATION_ERROR); } ssize_t bytes_read = pread(handle->fd, bin.data, count, offset); if (bytes_read == count) { /* Good read; return {ok, Bin} */ return enif_make_tuple2(env, ATOM_OK, enif_make_binary(env, &bin)); } else if (bytes_read > 0) { /* Partial read; need to resize our binary (bleh) and return {ok, Bin} */ if (enif_realloc_binary(&bin, bytes_read)) { return enif_make_tuple2(env, ATOM_OK, enif_make_binary(env, &bin)); } else { /* Realloc failed; cleanup and bail */ enif_release_binary(&bin); return enif_make_tuple2(env, ATOM_ERROR, ATOM_ALLOCATION_ERROR); } } else if (bytes_read == 0) { /* EOF */ enif_release_binary(&bin); return ATOM_EOF; } else { /* Read failed altogether */ enif_release_binary(&bin); return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_pwrite(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; unsigned long offset_ul; ErlNifBinary bin; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle) && enif_get_ulong(env, argv[1], &offset_ul) && /* Offset */ enif_inspect_iolist_as_binary(env, argv[2], &bin)) /* Bytes to write */ { unsigned char* buf = bin.data; ssize_t bytes_written = 0; ssize_t count = bin.size; off_t offset = offset_ul; while (count > 0) { bytes_written = pwrite(handle->fd, buf, count, offset); if (bytes_written > 0) { count -= bytes_written; offset += bytes_written; buf += bytes_written; } else { /* Write failed altogether */ return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } /* Write done */ return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_read(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; size_t count; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle) && enif_get_ulong(env, argv[1], &count)) /* Count */ { ErlNifBinary bin; if (!enif_alloc_binary(count, &bin)) { return enif_make_tuple2(env, ATOM_ERROR, ATOM_ALLOCATION_ERROR); } ssize_t bytes_read = read(handle->fd, bin.data, count); if (bytes_read == count) { /* Good read; return {ok, Bin} */ return enif_make_tuple2(env, ATOM_OK, enif_make_binary(env, &bin)); } else if (bytes_read > 0) { /* Partial read; need to resize our binary (bleh) and return {ok, Bin} */ if (enif_realloc_binary(&bin, bytes_read)) { return enif_make_tuple2(env, ATOM_OK, enif_make_binary(env, &bin)); } else { /* Realloc failed; cleanup and bail */ enif_release_binary(&bin); return enif_make_tuple2(env, ATOM_ERROR, ATOM_ALLOCATION_ERROR); } } else if (bytes_read == 0) { /* EOF */ enif_release_binary(&bin); return ATOM_EOF; } else { /* Read failed altogether */ enif_release_binary(&bin); return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_write(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; ErlNifBinary bin; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle) && enif_inspect_iolist_as_binary(env, argv[1], &bin)) /* Bytes to write */ { unsigned char* buf = bin.data; ssize_t bytes_written = 0; ssize_t count = bin.size; while (count > 0) { bytes_written = write(handle->fd, buf, count); if (bytes_written > 0) { count -= bytes_written; buf += bytes_written; } else { /* Write failed altogether */ return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } /* Write done */ return ATOM_OK; } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_position(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; unsigned long offset_ul; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle) && enif_get_ulong(env, argv[1], &offset_ul)) { off_t offset = offset_ul; off_t new_offset = lseek(handle->fd, offset, SEEK_SET); if (new_offset != -1) { return enif_make_tuple2(env, ATOM_OK, enif_make_ulong(env, new_offset)); } else { /* Write failed altogether */ return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM bitcask_nifs_file_seekbof(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { bitcask_file_handle* handle; if (enif_get_resource(env, argv[0], bitcask_file_RESOURCE, (void**)&handle)) { if (lseek(handle->fd, 0, SEEK_SET) != -1) { return ATOM_OK; } else { /* Write failed altogether */ return enif_make_tuple2(env, ATOM_ERROR, errno_atom(env, errno)); } } else { return enif_make_badarg(env); } } ERL_NIF_TERM errno_atom(ErlNifEnv* env, int error) { return enif_make_atom(env, erl_errno_id(error)); } ERL_NIF_TERM errno_error_tuple(ErlNifEnv* env, ERL_NIF_TERM key, int error) { // Construct a tuple of form: {error, {Key, ErrnoAtom}} return enif_make_tuple2(env, ATOM_ERROR, enif_make_tuple2(env, key, errno_atom(env, error))); } // Send messages to all processes that want to be awoken next time // pending is merged. static void msg_pending_awaken(ErlNifEnv* env, bitcask_keydir* keydir, ERL_NIF_TERM msg) { ErlNifEnv* msg_env = enif_alloc_env(); int idx; for (idx = 0; idx < keydir->pending_awaken_count; idx++) { enif_clear_env(msg_env); #ifdef PULSE /* Using PULSE_SEND here sometimes deadlocks the Bitcask PULSE test. Reverting to using enif_send for now. TODO: Check if PULSE_SEND is really necessary and investigate/fix deadlock in the future */ /* PULSE_SEND(env, &keydir->pending_awaken[idx], msg_env, msg); */ enif_send(env, &keydir->pending_awaken[idx], msg_env, msg); #else enif_send(env, &keydir->pending_awaken[idx], msg_env, msg); #endif } enif_free_env(msg_env); } // Merge pending hash into entries hash and awaken any pids that want to // start iterating once we are merged. keydir must be locked before calling. static void merge_pending_entries(ErlNifEnv* env, bitcask_keydir* keydir) { khiter_t pend_itr; for (pend_itr = kh_begin(keydir->pending); pend_itr != kh_end(keydir->pending); ++pend_itr) { if (kh_exist(keydir->pending, pend_itr)) { bitcask_keydir_entry* pending_entry = kh_key(keydir->pending, pend_itr); khiter_t ent_itr = kh_get(entries, keydir->entries, pending_entry); DEBUG("Pending Entry: key=%s key_sz=%d file_id=%d tstamp=%u offset=%u size=%d\r\n", pending_entry->key, pending_entry->key_sz, pending_entry->file_id, (unsigned int) pending_entry->tstamp, (unsigned int) pending_entry->offset, pending_entry->total_sz); if (ent_itr == kh_end(keydir->entries)) { /* entries: empty, pending:tombstone */ if (is_pending_tombstone(pending_entry)) { /* nop - stats were not updated when tombstone written for ** empty entry */ enif_free_compat(env, pending_entry); } /* entries: empty, pending:value */ else { move_pending_entry(env, keydir, pend_itr, pending_entry); // do not free - now in entries } } else { bitcask_keydir_entry* entries_entry = kh_key(keydir->entries, ent_itr); DEBUG("Entries Entry: key=%s key_sz=%d file_id=%d statmp=%u offset=%u size=%d\r\n", entries_entry->key, entries_entry->key_sz, entries_entry->file_id, (unsigned int) entries_entry->tstamp, (unsigned int) entries_entry->offset, entries_entry->total_sz); /* entries: present, pending:tombstone */ if (is_pending_tombstone(pending_entry)) { remove_entry(env, keydir, ent_itr, entries_entry); enif_free_compat(env, entries_entry); } /* entries: present, pending:value */ else { update_entry(env, keydir, entries_entry, pending_entry); } enif_free_compat(env, pending_entry); } } } // Wake up all sleeping pids msg_pending_awaken(env, keydir, ATOM_READY); // Free all resources for keydir folding kh_destroy(entries, keydir->pending); keydir->pending = NULL; keydir->pending_updated = 0; keydir->pending_start = 0; if (keydir->pending_awaken != NULL) { enif_free_compat(env, keydir->pending_awaken); } keydir->pending_awaken = NULL; keydir->pending_awaken_count = 0; keydir->pending_awaken_size = 0; DEBUG("Merge pending entries completed\r\n"); } static void lock_release(bitcask_lock_handle* handle) { if (handle->fd > 0) { // If this is a write lock, we need to delete the file as part of cleanup. But be // sure to do this BEFORE letting go of the file handle so as to ensure consistency // with other readers. if (handle->is_write_lock) { // TODO: Come up with some way to complain/error log if this unlink failed for some // reason!! unlink(handle->filename); } close(handle->fd); handle->fd = -1; } } static void free_keydir(ErlNifEnv* env, bitcask_keydir* keydir) { // Delete all the entries in the hash table, which also has the effect of // freeing up all resources associated with the table. khiter_t itr; bitcask_keydir_entry* current_entry; for (itr = kh_begin(keydir->entries); itr != kh_end(keydir->entries); ++itr) { if (kh_exist(keydir->entries, itr)) { current_entry = kh_key(keydir->entries, itr); enif_free_compat(env, current_entry); } } kh_destroy(entries, keydir->entries); bitcask_fstats_entry* curr_f; for (itr = kh_begin(keydir->fstats); itr != kh_end(keydir->fstats); ++itr) { if (kh_exist(keydir->fstats, itr)) { curr_f = kh_val(keydir->fstats, itr); enif_free_compat(env, curr_f); } } kh_destroy(fstats, keydir->fstats); } static void bitcask_nifs_keydir_resource_cleanup(ErlNifEnv* env, void* arg) { bitcask_keydir_handle* handle = (bitcask_keydir_handle*)arg; bitcask_keydir* keydir = handle->keydir; // First, check that there is even a keydir available. If keydir_release // was invoked manually, we might have already cleaned up the keydir // and this round of cleanup can noop. Otherwise, clear out the handle's // reference to the keydir so that repeat calls function as expected if (!handle->keydir) { return; } else { handle->keydir = 0; } // If the keydir has a lock, we need to decrement the refcount and // potentially release it if (keydir->mutex) { bitcask_priv_data* priv = (bitcask_priv_data*)enif_priv_data(env); enif_mutex_lock(priv->global_keydirs_lock); keydir->refcount--; if (keydir->refcount == 0) { // This is the last reference to the named keydir. As such, // remove it from the hashtable so no one else tries to use it khiter_t itr = kh_get(global_keydirs, priv->global_keydirs, keydir->name); kh_del(global_keydirs, priv->global_keydirs, itr); } else { // At least one other reference; just throw away our keydir pointer // so the check below doesn't release the memory. keydir = 0; } // Unlock ASAP. Wanted to avoid holding this mutex while we clean up the // keydir, since it may take a while to walk a large keydir and free each // entry. enif_mutex_unlock(priv->global_keydirs_lock); } // If keydir is still defined, it's either privately owner or has a // refcount of 0. Either way, we want to release it. if (keydir) { if (keydir->mutex) { enif_mutex_destroy(keydir->mutex); } free_keydir(env, keydir); } } static void bitcask_nifs_lock_resource_cleanup(ErlNifEnv* env, void* arg) { bitcask_lock_handle* handle = (bitcask_lock_handle*)arg; lock_release(handle); } static void bitcask_nifs_file_resource_cleanup(ErlNifEnv* env, void* arg) { bitcask_file_handle* handle = (bitcask_file_handle*)arg; if (handle->fd > -1) { close(handle->fd); } } #ifdef BITCASK_DEBUG static void dump_fstats(bitcask_keydir* keydir) { bitcask_fstats_entry* curr_f; khiter_t itr; for (itr = kh_begin(keydir->fstats); itr != kh_end(keydir->fstats); ++itr) { if (kh_exist(keydir->fstats, itr)) { curr_f = kh_val(keydir->fstats, itr); DEBUG("fstats %d live=(%d,%d) total=(%d,%d)\r\n", (int) curr_f->file_id, (int) curr_f->live_keys, (int) curr_f->live_bytes, (int) curr_f->total_keys, (int) curr_f->total_bytes); } } } #endif static int on_load(ErlNifEnv* env, void** priv_data, ERL_NIF_TERM load_info) { bitcask_keydir_RESOURCE = enif_open_resource_type_compat(env, "bitcask_keydir_resource", &bitcask_nifs_keydir_resource_cleanup, ERL_NIF_RT_CREATE | ERL_NIF_RT_TAKEOVER, 0); bitcask_lock_RESOURCE = enif_open_resource_type_compat(env, "bitcask_lock_resource", &bitcask_nifs_lock_resource_cleanup, ERL_NIF_RT_CREATE | ERL_NIF_RT_TAKEOVER, 0); bitcask_file_RESOURCE = enif_open_resource_type_compat(env, "bitcask_file_resource", &bitcask_nifs_file_resource_cleanup, ERL_NIF_RT_CREATE | ERL_NIF_RT_TAKEOVER, 0); // Initialize shared keydir hashtable bitcask_priv_data* priv = enif_alloc_compat(env, sizeof(bitcask_priv_data)); priv->global_keydirs = kh_init(global_keydirs); priv->global_keydirs_lock = enif_mutex_create("bitcask_global_handles_lock"); *priv_data = priv; // Initialize atoms that we use throughout the NIF. ATOM_ALLOCATION_ERROR = enif_make_atom(env, "allocation_error"); ATOM_ALREADY_EXISTS = enif_make_atom(env, "already_exists"); ATOM_BITCASK_ENTRY = enif_make_atom(env, "bitcask_entry"); ATOM_ERROR = enif_make_atom(env, "error"); ATOM_FALSE = enif_make_atom(env, "false"); ATOM_FSTAT_ERROR = enif_make_atom(env, "fstat_error"); ATOM_FTRUNCATE_ERROR = enif_make_atom(env, "ftruncate_error"); ATOM_GETFL_ERROR = enif_make_atom(env, "getfl_error"); ATOM_ILT_CREATE_ERROR = enif_make_atom(env, "ilt_create_error"); ATOM_ITERATION_IN_PROCESS = enif_make_atom(env, "iteration_in_process"); ATOM_ITERATION_NOT_PERMITTED = enif_make_atom(env, "iteration_not_permitted"); ATOM_ITERATION_NOT_STARTED = enif_make_atom(env, "iteration_not_started"); ATOM_LOCK_NOT_WRITABLE = enif_make_atom(env, "lock_not_writable"); ATOM_NOT_FOUND = enif_make_atom(env, "not_found"); ATOM_NOT_READY = enif_make_atom(env, "not_ready"); ATOM_OK = enif_make_atom(env, "ok"); ATOM_OUT_OF_DATE = enif_make_atom(env, "out_of_date"); ATOM_PREAD_ERROR = enif_make_atom(env, "pread_error"); ATOM_PWRITE_ERROR = enif_make_atom(env, "pwrite_error"); ATOM_READY = enif_make_atom(env, "ready"); ATOM_SETFL_ERROR = enif_make_atom(env, "setfl_error"); ATOM_TRUE = enif_make_atom(env, "true"); ATOM_EOF = enif_make_atom(env, "eof"); ATOM_CREATE = enif_make_atom(env, "create"); ATOM_READONLY = enif_make_atom(env, "readonly"); ATOM_O_SYNC = enif_make_atom(env, "o_sync"); #ifdef PULSE pulse_c_send_on_load(env); #endif return 0; } ERL_NIF_INIT(bitcask_nifs, nif_funcs, &on_load, NULL, NULL, NULL); erlang-bitcask-1.6.7+dfsg/c_src/erl_nif_compat.h000066400000000000000000000041021233730135600215550ustar00rootroot00000000000000/* Copyright (c) 2010-2011 Basho Technologies, Inc. * * This file is provided to you under the Apache License, * Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain * a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ #ifndef ERL_NIF_COMPAT_H_ #define ERL_NIF_COMPAT_H_ #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #include "erl_nif.h" #if ERL_NIF_MAJOR_VERSION == 1 && ERL_NIF_MINOR_VERSION == 0 #define enif_open_resource_type_compat enif_open_resource_type #define enif_alloc_resource_compat enif_alloc_resource #define enif_release_resource_compat enif_release_resource #define enif_alloc_binary_compat enif_alloc_binary #define enif_alloc_compat enif_alloc #define enif_realloc_compat enif_realloc #define enif_free_compat enif_free #define enif_cond_create erl_drv_cond_create #define enif_cond_destroy erl_drv_cond_destroy #define enif_cond_signal erl_drv_cond_signal #define enif_cond_broadcast erl_drv_cond_broadcast #define enif_cond_wait erl_drv_cond_wait #define ErlNifCond ErlDrvCond #endif /* R13B04 */ #if ERL_NIF_MAJOR_VERSION == 2 && ERL_NIF_MINOR_VERSION >= 0 #define enif_open_resource_type_compat(E, N, D, F, T) \ enif_open_resource_type(E, NULL, N, D, F, T) #define enif_alloc_resource_compat(E, T, S) \ enif_alloc_resource(T, S) #define enif_release_resource_compat(E, H) \ enif_release_resource(H) #define enif_alloc_binary_compat(E, S, B) \ enif_alloc_binary(S, B) #define enif_alloc_compat(E, S) \ enif_alloc(S) #define enif_realloc_compat(E, P, S) \ enif_realloc(P, S) #define enif_free_compat(E, P) \ enif_free(P) #endif /* R14 */ #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* ERL_NIF_COMPAT_H_ */ erlang-bitcask-1.6.7+dfsg/c_src/erl_nif_util.c000066400000000000000000000027211233730135600212470ustar00rootroot00000000000000// ------------------------------------------------------------------- // // bitcask: Eric Brewer-inspired key/value store // // Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. // // This file is provided to you under the Apache License, // Version 2.0 (the "License"); you may not use this file // except in compliance with the License. You may obtain // a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. // // ------------------------------------------------------------------- #include "erl_nif_util.h" #include "erl_nif_compat.h" #include int enif_get_uint64_bin(ErlNifEnv* env, ERL_NIF_TERM term, uint64_t* outvalue) { ErlNifBinary bin; if (enif_inspect_binary(env, term, &bin) && bin.size == sizeof(uint64_t)) { memcpy(outvalue, ((uint64_t*)bin.data), sizeof(uint64_t)); return 1; } else { return 0; } } ERL_NIF_TERM enif_make_uint64_bin(ErlNifEnv* env, uint64_t value) { ErlNifBinary bin; enif_alloc_binary_compat(env, sizeof(uint64_t), &bin); memcpy(bin.data, &value, sizeof(uint64_t)); return enif_make_binary(env, &bin); } erlang-bitcask-1.6.7+dfsg/c_src/erl_nif_util.h000066400000000000000000000021111233730135600212450ustar00rootroot00000000000000// ------------------------------------------------------------------- // // bitcask: Eric Brewer-inspired key/value store // // Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. // // This file is provided to you under the Apache License, // Version 2.0 (the "License"); you may not use this file // except in compliance with the License. You may obtain // a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. // // ------------------------------------------------------------------- #ifndef ERL_NIF_UTIL_H #define ERL_NIF_UTIL_H #include "erl_nif.h" #include int enif_get_uint64_bin(ErlNifEnv* env, ERL_NIF_TERM term, uint64_t* outvalue); ERL_NIF_TERM enif_make_uint64_bin(ErlNifEnv* env, uint64_t value); #endif erlang-bitcask-1.6.7+dfsg/c_src/khash.h000066400000000000000000000407731233730135600177100ustar00rootroot00000000000000/* The MIT License Copyright (c) 2008, 2009 by attractor Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /* An example: #include "khash.h" KHASH_MAP_INIT_INT(32, char) int main() { int ret, is_missing; khiter_t k; khash_t(32) *h = kh_init(32); k = kh_put(32, h, 5, &ret); if (!ret) kh_del(32, h, k); kh_value(h, k) = 10; k = kh_get(32, h, 10); is_missing = (k == kh_end(h)); k = kh_get(32, h, 5); kh_del(32, h, k); for (k = kh_begin(h); k != kh_end(h); ++k) if (kh_exist(h, k)) kh_value(h, k) = 1; kh_destroy(32, h); return 0; } */ /* 2009-09-26 (0.2.4): * Improve portability 2008-09-19 (0.2.3): * Corrected the example * Improved interfaces 2008-09-11 (0.2.2): * Improved speed a little in kh_put() 2008-09-10 (0.2.1): * Added kh_clear() * Fixed a compiling error 2008-09-02 (0.2.0): * Changed to token concatenation which increases flexibility. 2008-08-31 (0.1.2): * Fixed a bug in kh_get(), which has not been tested previously. 2008-08-31 (0.1.1): * Added destructor */ #ifndef __AC_KHASH_H #define __AC_KHASH_H /*! @header Generic hash table library. @copyright Heng Li */ #define AC_VERSION_KHASH_H "0.2.4" #include #include #include /* compipler specific configuration */ #if UINT_MAX == 0xffffffffu typedef unsigned int khint32_t; #elif ULONG_MAX == 0xffffffffu typedef unsigned long khint32_t; #endif #if ULONG_MAX == ULLONG_MAX typedef unsigned long khint64_t; #else typedef unsigned long long khint64_t; #endif #ifdef _MSC_VER #define inline __inline #endif typedef khint32_t khint_t; typedef khint_t khiter_t; #define __ac_HASH_PRIME_SIZE 32 static const khint32_t __ac_prime_list[__ac_HASH_PRIME_SIZE] = { 0ul, 3ul, 11ul, 23ul, 53ul, 97ul, 193ul, 389ul, 769ul, 1543ul, 3079ul, 6151ul, 12289ul, 24593ul, 49157ul, 98317ul, 196613ul, 393241ul, 786433ul, 1572869ul, 3145739ul, 6291469ul, 12582917ul, 25165843ul, 50331653ul, 100663319ul, 201326611ul, 402653189ul, 805306457ul, 1610612741ul, 3221225473ul, 4294967291ul }; #define __ac_isempty(flag, i) ((flag[i>>4]>>((i&0xfU)<<1))&2) #define __ac_isdel(flag, i) ((flag[i>>4]>>((i&0xfU)<<1))&1) #define __ac_iseither(flag, i) ((flag[i>>4]>>((i&0xfU)<<1))&3) #define __ac_set_isdel_false(flag, i) (flag[i>>4]&=~(1ul<<((i&0xfU)<<1))) #define __ac_set_isempty_false(flag, i) (flag[i>>4]&=~(2ul<<((i&0xfU)<<1))) #define __ac_set_isboth_false(flag, i) (flag[i>>4]&=~(3ul<<((i&0xfU)<<1))) #define __ac_set_isdel_true(flag, i) (flag[i>>4]|=1ul<<((i&0xfU)<<1)) static const double __ac_HASH_UPPER = 0.77; #define KHASH_INIT(name, khkey_t, khval_t, kh_is_map, __hash_func, __hash_equal) \ typedef struct { \ khint_t n_buckets, size, n_occupied, upper_bound; \ khint32_t *flags; \ khkey_t *keys; \ khval_t *vals; \ } kh_##name##_t; \ static inline kh_##name##_t *kh_init_##name() { \ return (kh_##name##_t*)calloc(1, sizeof(kh_##name##_t)); \ } \ static inline void kh_destroy_##name(kh_##name##_t *h) \ { \ if (h) { \ free(h->keys); free(h->flags); \ free(h->vals); \ free(h); \ } \ } \ static inline void kh_clear_##name(kh_##name##_t *h) \ { \ if (h && h->flags) { \ memset(h->flags, 0xaa, ((h->n_buckets>>4) + 1) * sizeof(khint32_t)); \ h->size = h->n_occupied = 0; \ } \ } \ static inline khint_t kh_get_##name(const kh_##name##_t *h, khkey_t key) \ { \ if (h->n_buckets) { \ khint_t inc, k, i, last; \ k = __hash_func(key); i = k % h->n_buckets; \ inc = 1 + k % (h->n_buckets - 1); last = i; \ while (!__ac_isempty(h->flags, i) && (__ac_isdel(h->flags, i) || !__hash_equal(h->keys[i], key))) { \ if (i + inc >= h->n_buckets) i = i + inc - h->n_buckets; \ else i += inc; \ if (i == last) return h->n_buckets; \ } \ return __ac_iseither(h->flags, i)? h->n_buckets : i; \ } else return 0; \ } \ static inline void kh_resize_##name(kh_##name##_t *h, khint_t new_n_buckets) \ { \ khint32_t *new_flags = 0; \ khint_t j = 1; \ { \ khint_t t = __ac_HASH_PRIME_SIZE - 1; \ while (__ac_prime_list[t] > new_n_buckets) --t; \ new_n_buckets = __ac_prime_list[t+1]; \ if (h->size >= (khint_t)(new_n_buckets * __ac_HASH_UPPER + 0.5)) j = 0; \ else { \ new_flags = (khint32_t*)malloc(((new_n_buckets>>4) + 1) * sizeof(khint32_t)); \ memset(new_flags, 0xaa, ((new_n_buckets>>4) + 1) * sizeof(khint32_t)); \ if (h->n_buckets < new_n_buckets) { \ h->keys = (khkey_t*)realloc(h->keys, new_n_buckets * sizeof(khkey_t)); \ if (kh_is_map) \ h->vals = (khval_t*)realloc(h->vals, new_n_buckets * sizeof(khval_t)); \ } \ } \ } \ if (j) { \ for (j = 0; j != h->n_buckets; ++j) { \ if (__ac_iseither(h->flags, j) == 0) { \ khkey_t key = h->keys[j]; \ khval_t val; \ if (kh_is_map) val = h->vals[j]; \ __ac_set_isdel_true(h->flags, j); \ while (1) { \ khint_t inc, k, i; \ k = __hash_func(key); \ i = k % new_n_buckets; \ inc = 1 + k % (new_n_buckets - 1); \ while (!__ac_isempty(new_flags, i)) { \ if (i + inc >= new_n_buckets) i = i + inc - new_n_buckets; \ else i += inc; \ } \ __ac_set_isempty_false(new_flags, i); \ if (i < h->n_buckets && __ac_iseither(h->flags, i) == 0) { \ { khkey_t tmp = h->keys[i]; h->keys[i] = key; key = tmp; } \ if (kh_is_map) { khval_t tmp = h->vals[i]; h->vals[i] = val; val = tmp; } \ __ac_set_isdel_true(h->flags, i); \ } else { \ h->keys[i] = key; \ if (kh_is_map) h->vals[i] = val; \ break; \ } \ } \ } \ } \ if (h->n_buckets > new_n_buckets) { \ h->keys = (khkey_t*)realloc(h->keys, new_n_buckets * sizeof(khkey_t)); \ if (kh_is_map) \ h->vals = (khval_t*)realloc(h->vals, new_n_buckets * sizeof(khval_t)); \ } \ free(h->flags); \ h->flags = new_flags; \ h->n_buckets = new_n_buckets; \ h->n_occupied = h->size; \ h->upper_bound = (khint_t)(h->n_buckets * __ac_HASH_UPPER + 0.5); \ } \ } \ static inline khint_t kh_put_##name(kh_##name##_t *h, khkey_t key, int *ret) \ { \ khint_t x; \ if (h->n_occupied >= h->upper_bound) { \ if (h->n_buckets > (h->size<<1)) kh_resize_##name(h, h->n_buckets - 1); \ else kh_resize_##name(h, h->n_buckets + 1); \ } \ { \ khint_t inc, k, i, site, last; \ x = site = h->n_buckets; k = __hash_func(key); i = k % h->n_buckets; \ if (__ac_isempty(h->flags, i)) x = i; \ else { \ inc = 1 + k % (h->n_buckets - 1); last = i; \ while (!__ac_isempty(h->flags, i) && (__ac_isdel(h->flags, i) || !__hash_equal(h->keys[i], key))) { \ if (__ac_isdel(h->flags, i)) site = i; \ if (i + inc >= h->n_buckets) i = i + inc - h->n_buckets; \ else i += inc; \ if (i == last) { x = site; break; } \ } \ if (x == h->n_buckets) { \ if (__ac_isempty(h->flags, i) && site != h->n_buckets) x = site; \ else x = i; \ } \ } \ } \ if (__ac_isempty(h->flags, x)) { \ h->keys[x] = key; \ __ac_set_isboth_false(h->flags, x); \ ++h->size; ++h->n_occupied; \ *ret = 1; \ } else if (__ac_isdel(h->flags, x)) { \ h->keys[x] = key; \ __ac_set_isboth_false(h->flags, x); \ ++h->size; \ *ret = 2; \ } else *ret = 0; \ return x; \ } \ static inline void kh_del_##name(kh_##name##_t *h, khint_t x) \ { \ if (x != h->n_buckets && !__ac_iseither(h->flags, x)) { \ __ac_set_isdel_true(h->flags, x); \ --h->size; \ } \ } /* --- BEGIN OF HASH FUNCTIONS --- */ /*! @function @abstract Integer hash function @param key The integer [khint32_t] @return The hash value [khint_t] */ #define kh_int_hash_func(key) (khint32_t)(key) /*! @function @abstract Integer comparison function */ #define kh_int_hash_equal(a, b) ((a) == (b)) /*! @function @abstract 64-bit integer hash function @param key The integer [khint64_t] @return The hash value [khint_t] */ #define kh_int64_hash_func(key) (khint32_t)((key)>>33^(key)^(key)<<11) /*! @function @abstract 64-bit integer comparison function */ #define kh_int64_hash_equal(a, b) ((a) == (b)) /*! @function @abstract const char* hash function @param s Pointer to a null terminated string @return The hash value */ static inline khint_t __ac_X31_hash_string(const char *s) { khint_t h = *s; if (h) for (++s ; *s; ++s) h = (h << 5) - h + *s; return h; } /*! @function @abstract Another interface to const char* hash function @param key Pointer to a null terminated string [const char*] @return The hash value [khint_t] */ #define kh_str_hash_func(key) __ac_X31_hash_string(key) /*! @function @abstract Const char* comparison function */ #define kh_str_hash_equal(a, b) (strcmp(a, b) == 0) /* --- END OF HASH FUNCTIONS --- */ /* Other necessary macros... */ /*! @abstract Type of the hash table. @param name Name of the hash table [symbol] */ #define khash_t(name) kh_##name##_t /*! @function @abstract Initiate a hash table. @param name Name of the hash table [symbol] @return Pointer to the hash table [khash_t(name)*] */ #define kh_init(name) kh_init_##name() /*! @function @abstract Destroy a hash table. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] */ #define kh_destroy(name, h) kh_destroy_##name(h) /*! @function @abstract Reset a hash table without deallocating memory. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] */ #define kh_clear(name, h) kh_clear_##name(h) /*! @function @abstract Resize a hash table. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] @param s New size [khint_t] */ #define kh_resize(name, h, s) kh_resize_##name(h, s) /*! @function @abstract Insert a key to the hash table. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] @param k Key [type of keys] @param r Extra return code: 0 if the key is present in the hash table; 1 if the bucket is empty (never used); 2 if the element in the bucket has been deleted [int*] @return Iterator to the inserted element [khint_t] */ #define kh_put(name, h, k, r) kh_put_##name(h, k, r) /*! @function @abstract Retrieve a key from the hash table. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] @param k Key [type of keys] @return Iterator to the found element, or kh_end(h) is the element is absent [khint_t] */ #define kh_get(name, h, k) kh_get_##name(h, k) /*! @function @abstract Remove a key from the hash table. @param name Name of the hash table [symbol] @param h Pointer to the hash table [khash_t(name)*] @param k Iterator to the element to be deleted [khint_t] */ #define kh_del(name, h, k) kh_del_##name(h, k) /*! @function @abstract Test whether a bucket contains data. @param h Pointer to the hash table [khash_t(name)*] @param x Iterator to the bucket [khint_t] @return 1 if containing data; 0 otherwise [int] */ #define kh_exist(h, x) (!__ac_iseither((h)->flags, (x))) /*! @function @abstract Get key given an iterator @param h Pointer to the hash table [khash_t(name)*] @param x Iterator to the bucket [khint_t] @return Key [type of keys] */ #define kh_key(h, x) ((h)->keys[x]) /*! @function @abstract Get value given an iterator @param h Pointer to the hash table [khash_t(name)*] @param x Iterator to the bucket [khint_t] @return Value [type of values] @discussion For hash sets, calling this results in segfault. */ #define kh_val(h, x) ((h)->vals[x]) /*! @function @abstract Alias of kh_val() */ #define kh_value(h, x) ((h)->vals[x]) /*! @function @abstract Get the start iterator @param h Pointer to the hash table [khash_t(name)*] @return The start iterator [khint_t] */ #define kh_begin(h) (khint_t)(0) /*! @function @abstract Get the end iterator @param h Pointer to the hash table [khash_t(name)*] @return The end iterator [khint_t] */ #define kh_end(h) ((h)->n_buckets) /*! @function @abstract Get the number of elements in the hash table @param h Pointer to the hash table [khash_t(name)*] @return Number of elements in the hash table [khint_t] */ #define kh_size(h) ((h)->size) /*! @function @abstract Get the number of buckets in the hash table @param h Pointer to the hash table [khash_t(name)*] @return Number of buckets in the hash table [khint_t] */ #define kh_n_buckets(h) ((h)->n_buckets) /* More conenient interfaces */ /*! @function @abstract Instantiate a hash set containing integer keys @param name Name of the hash table [symbol] */ #define KHASH_SET_INIT_INT(name) \ KHASH_INIT(name, khint32_t, char, 0, kh_int_hash_func, kh_int_hash_equal) /*! @function @abstract Instantiate a hash map containing integer keys @param name Name of the hash table [symbol] @param khval_t Type of values [type] */ #define KHASH_MAP_INIT_INT(name, khval_t) \ KHASH_INIT(name, khint32_t, khval_t, 1, kh_int_hash_func, kh_int_hash_equal) /*! @function @abstract Instantiate a hash map containing 64-bit integer keys @param name Name of the hash table [symbol] */ #define KHASH_SET_INIT_INT64(name) \ KHASH_INIT(name, khint64_t, char, 0, kh_int64_hash_func, kh_int64_hash_equal) /*! @function @abstract Instantiate a hash map containing 64-bit integer keys @param name Name of the hash table [symbol] @param khval_t Type of values [type] */ #define KHASH_MAP_INIT_INT64(name, khval_t) \ KHASH_INIT(name, khint64_t, khval_t, 1, kh_int64_hash_func, kh_int64_hash_equal) typedef const char *kh_cstr_t; /*! @function @abstract Instantiate a hash map containing const char* keys @param name Name of the hash table [symbol] */ #define KHASH_SET_INIT_STR(name) \ KHASH_INIT(name, kh_cstr_t, char, 0, kh_str_hash_func, kh_str_hash_equal) /*! @function @abstract Instantiate a hash map containing const char* keys @param name Name of the hash table [symbol] @param khval_t Type of values [type] */ #define KHASH_MAP_INIT_STR(name, khval_t) \ KHASH_INIT(name, kh_cstr_t, khval_t, 1, kh_str_hash_func, kh_str_hash_equal) #endif /* __AC_KHASH_H */ erlang-bitcask-1.6.7+dfsg/c_src/murmurhash.c000066400000000000000000000072371233730135600207760ustar00rootroot00000000000000/* Murmurhash from http://sites.google.com/site/murmurhash/ All code is released to the public domain. For business purposes, Murmurhash is under the MIT license. */ #include "murmurhash.h" #if defined(__x86_64__) // ------------------------------------------------------------------- // // The same caveats as 32-bit MurmurHash2 apply here - beware of alignment // and endian-ness issues if used across multiple platforms. // // 64-bit hash for 64-bit platforms uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed ) { const uint64_t m = 0xc6a4a7935bd1e995; const int r = 47; uint64_t h = seed ^ (len * m); const uint64_t * data = (const uint64_t *)key; const uint64_t * end = data + (len/8); while(data != end) { uint64_t k = *data++; k *= m; k ^= k >> r; k *= m; h ^= k; h *= m; } const unsigned char * data2 = (const unsigned char*)data; switch(len & 7) { case 7: h ^= ((uint64_t)data2[6]) << 48; case 6: h ^= ((uint64_t)data2[5]) << 40; case 5: h ^= ((uint64_t)data2[4]) << 32; case 4: h ^= ((uint64_t)data2[3]) << 24; case 3: h ^= ((uint64_t)data2[2]) << 16; case 2: h ^= ((uint64_t)data2[1]) << 8; case 1: h ^= ((uint64_t)data2[0]); h *= m; }; h ^= h >> r; h *= m; h ^= h >> r; return h; } #elif defined(__i386__) // ------------------------------------------------------------------- // // Note - This code makes a few assumptions about how your machine behaves - // // 1. We can read a 4-byte value from any address without crashing // 2. sizeof(int) == 4 // // And it has a few limitations - // // 1. It will not work incrementally. // 2. It will not produce the same results on little-endian and big-endian // machines. unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed ) { // 'm' and 'r' are mixing constants generated offline. // They're not really 'magic', they just happen to work well. const unsigned int m = 0x5bd1e995; const int r = 24; // Initialize the hash to a 'random' value unsigned int h = seed ^ len; // Mix 4 bytes at a time into the hash const unsigned char * data = (const unsigned char *)key; while(len >= 4) { unsigned int k = *(unsigned int *)data; k *= m; k ^= k >> r; k *= m; h *= m; h ^= k; data += 4; len -= 4; } // Handle the last few bytes of the input array switch(len) { case 3: h ^= data[2] << 16; case 2: h ^= data[1] << 8; case 1: h ^= data[0]; h *= m; }; // Do a few final mixes of the hash to ensure the last few // bytes are well-incorporated. h ^= h >> 13; h *= m; h ^= h >> 15; return h; } #else // ------------------------------------------------------------------- // // Same as MurmurHash2, but endian- and alignment-neutral. // Half the speed though, alas. unsigned int MurmurHashNeutral2 ( const void * key, int len, unsigned int seed ) { const unsigned int m = 0x5bd1e995; const int r = 24; unsigned int h = seed ^ len; const unsigned char * data = (const unsigned char *)key; while(len >= 4) { unsigned int k; k = data[0]; k |= data[1] << 8; k |= data[2] << 16; k |= data[3] << 24; k *= m; k ^= k >> r; k *= m; h *= m; h ^= k; data += 4; len -= 4; } switch(len) { case 3: h ^= data[2] << 16; case 2: h ^= data[1] << 8; case 1: h ^= data[0]; h *= m; }; h ^= h >> 13; h *= m; h ^= h >> 15; return h; } #endif erlang-bitcask-1.6.7+dfsg/c_src/murmurhash.h000066400000000000000000000012261233730135600207730ustar00rootroot00000000000000/* Murmurhash from http://sites.google.com/site/murmurhash/ All code is released to the public domain. For business purposes, Murmurhash is under the MIT license. */ #ifndef MURMURHASH_H #define MURMURHASH_H #include #if defined(__x86_64__) #define MURMUR_HASH MurmurHash64A uint64_t MurmurHash64A ( const void * key, int len, unsigned int seed ); #elif defined(__i386__) #define MURMUR_HASH MurmurHash2 unsigned int MurmurHash2 ( const void * key, int len, unsigned int seed ); #else #define MURMUR_HASH MurmurHashNeutral2 unsigned int MurmurHashNeutral2 ( const void * key, int len, unsigned int seed ); #endif #endif /* MURMURHASH_H */ erlang-bitcask-1.6.7+dfsg/c_src/pulse_c_send.c000066400000000000000000000040301233730135600212320ustar00rootroot00000000000000// --------------------------------------------------------- // - Small utility lib for sending messages from C through // - the PULSE scheduler. // - // - The caveat is that you can't send messages to a named/ // - registered process from a NIF. Therefore a little bit // - of machinery is used to keep track of the Pid of PULSE // - and to enable message sends to PULSE via the pulse_send // - function. // // ---------------------------------------------------------- #ifdef PULSE #include "erl_nif.h" #include "erl_nif_compat.h" #include "pulse_c_send.h" // The global place to store the pid of PULSE ErlNifPid* THE_PULSE_PID; // Send atom, initialized on_load static ERL_NIF_TERM ATOM_SEND; static ERL_NIF_TERM ATOM_OK; ERL_NIF_TERM set_pulse_pid(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]){ if(!THE_PULSE_PID){ THE_PULSE_PID = (ErlNifPid *)malloc(sizeof(ErlNifPid)); } enif_get_local_pid(env, argv[0], THE_PULSE_PID); return ATOM_OK; } int pulse_send(ErlNifEnv* env, ErlNifPid* dest_pid, ErlNifEnv* msg_env, ERL_NIF_TERM msg, char* file, int line){ ERL_NIF_TERM t_self = enif_make_pid(msg_env, enif_self(msg_env, (ErlNifPid *)malloc(sizeof(ErlNifPid)))); ERL_NIF_TERM t_src_loc = enif_make_tuple2(msg_env, enif_make_string(msg_env, file, ERL_NIF_LATIN1), enif_make_int(msg_env, line)); ERL_NIF_TERM t_args = enif_make_list(msg_env, 2, enif_make_pid(msg_env, dest_pid), msg); ERL_NIF_TERM pulse_msg = enif_make_tuple4(msg_env, ATOM_SEND, t_self, t_src_loc, t_args); return enif_send(env, THE_PULSE_PID, msg_env, pulse_msg); } int pulse_c_send_on_load(ErlNifEnv* env){ THE_PULSE_PID = (ErlNifPid *)0L; ATOM_SEND = enif_make_atom(env, "send"); ATOM_OK = enif_make_atom(env, "ok"); return 0; } #endif // ifdef PULSE erlang-bitcask-1.6.7+dfsg/c_src/pulse_c_send.h000066400000000000000000000016471233730135600212520ustar00rootroot00000000000000// --------------------------------------------------------- // - Small utility lib for sending messages from C through // - the PULSE scheduler. // - // - The caveat is that you can't send messages to a named/ // - registered process from a NIF. Therefore a little bit // - of machinery is used to keep track of the Pid of PULSE // - and to enable message sends to PULSE via the pulse_send // - function. // - // ---------------------------------------------------------- #ifndef PULSE_C_SEND_H #define PULSE_C_SEND_H #include "erl_nif.h" #define PULSE_SEND(env, dest_pid, msg_env, msg) \ pulse_send(env, dest_pid, msg_env, msg, __FILE__, __LINE__) ERL_NIF_TERM set_pulse_pid(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]); int pulse_send(ErlNifEnv* env, ErlNifPid* dest_pid, ErlNifEnv* msg_env, ERL_NIF_TERM msg, char* file, int line); int pulse_c_send_on_load(ErlNifEnv* env); #endif erlang-bitcask-1.6.7+dfsg/doc/000077500000000000000000000000001233730135600161025ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/doc/bitcask-intro.pdf000066400000000000000000011717431233730135600213640ustar00rootroot00000000000000%PDF-1.4 %ÐÔÅØ 3 0 obj << /Length 1927 /Filter /FlateDecode >> stream xÚµXKsã6 ¾ï¯ðQž‰QÛj/ÝlÛéc·‡n¦{èö@KŒÅF]RJêýõP–g:I/DB âñÁ7·o®¿O‹…ØÄ©(òÅíÝ"ÝlâM¹]l’m,²rq[/~nôPIw¿üãö'à_/Dgù:Eþ•H·q‘‹UšÅ¥ôÁÛå*-’è½Ù¯>v¬†ÑªšÖ~®!êv¹M"¹k½ÞKÄ÷KQDÒ ôöó2-"…KÇëß–BˆH¶#ò­äI)—Eá•ÚæqQP©Œ·Û-©ôÓèÝÓw¥š%H\®D–e g™&уf?vzhPîbUÆežƒ‘`[¾!A¸éùtïÚÊA–{gMGÔwVWDÝX…<*{Ò4‰Ë¤¨i¶‰E™ÂàÄŒw2ÁE›$RUÓ›Öìµr,BÌE¬²2.¶p¢€‹HIÆŸÞÚov(*®LwUë/_Žõiá’2 DPg]Äy¹&Q· z{-"cõÞ{é;z†Èð/ÚÑsÐþ²‘2ü 2ícçB¦Ý_µdQ5ðY½Ãk‡ ­†ëTL¯?².òéÇ÷K‘„y@çsÄÀVÕ‚cà*ò$º¢%+¾k ÙEΑߛÚYD£SލC;î÷=º°ÒšJ¶Hæš'÷êkÚè•´í‘hÙ{†F÷{Z¹¿~X¹FȾ"ªdOÄîtfMb%ŸÍ®%ÀpΪ1>Q`…O¦ÕÃU‘£ ¸Aí#g‘œw2D·z@5!dÛ ØšÖì­rŽÞ|¨Ã“½ ”¿cxz¥‘_Z¡Zý%HpcÕ0o#^›´…Ò–O¨ÌØÖç"uJ ÷ð'ˆ•=ƒr#,Ä\5#W"+¦CÆ’? ÃÖÝ“­ b€ÂO˜GIA§|à«]®²´dk³tÂ_IäBO íÈ&[«d}¤ Ïþ7$Âmꢷöуۜ´×›ÏÔP¼ÐC¸ŠWƒ‹7Ê’­š)úíÍmûBlîý–¡½w½‚“_Ì ò>¸çǾ7Þ†˜kV£,{N¢›<„o{#[Gä#383î¾€ÇFñíøÊÜuÖ'rS@!5…²S]…êÌîúŠjÈPÍ×Pò Ôåq¾Í A¬Á0®sŸ±¹T·q¾Þ‚í±€/<''ÓÊAõÕÌ:ÌLR`P].ÉÎ =îÑê¾» Ù*œ·Ž³BüWÕ½oBøZôéaØÊT¥!5OÝŒÊL¾•ýä>Ó<>€ Ýy‚XÐïÐV÷zÖäcSaBƒ¸'6plÀ Øœ8˜º),Zi—bíÃU@Ýa³~}û¾fyµÏ‰½•5uò×¾’ÊNˆçÎjÊc†(Ý™š`]•íܹ§ï0y'DdU5+†öîCÌ—ïã¦û«'¤ôŠ–)ðý¹¢;Y݇' ai…òðêÇË RPS¥@‡„øvPï[ÅnûZY7€N'Àù9)’IÉ¡](.‡ƒ±ò‡8õ€)Ï>±Ò{8ÙÚÜk'à ´®†“þ;Õ0n UÅ[ÉY¢h/DGUQ ÷qñ´MéB¯ø¥iÇVWªÁàµ<Ãó™BíÒ•²alù£1È ä¡‰ï[   ØU:eÞV¦¶rªm¦SÏZÿ$ÔÍ,ÅMî‚ø¨›Ì8ÿ¸|ïLp ÌKˆµ½V¿˜Ñ@I*àÓ£$ˆò%QÎú 9:_Žý …çÖ-.cðÏ,EÉUÄŸ?Š’j0ig ŒDOÚ¿ŒFøÜ:N.€àÖi¤kE@Z„1 (Kª=›+RöôóQvv³I{vðìð !³†ãýÔQŽ«¦—FíÜØ'ÅxÈÃ1è4äOC½=àQŠ^¹¼„V!é1»XZ€ÉRB¦AXÿ¡o%@…:$Œ†DtŠÒØcâ¢Ôª6dÎÐ3m ®pàv,»“¡îÉ¥ˆÜ³v,>EáV•Îî/aò÷?¬M(÷O?°¬2±†ÌÁÈ8 Ñ‚@Áÿü}h±±ø ÊbÜò)„¬ / 8Aë¿FÅ2h¬Â,3Ö5úråfÿX Óç$IÛpÊ”Z¼aÑ ¸S«Y 2‡K'¼˜¢Ü&~ú)ÂPSÀZÖ|aËÖ>Z2*ü„—ã$&ú–§«¹w¿ȪX4Mll5.<ѽƒX  ŸVðä1ÿŠu¤Çl„+Ø1AnУSÎ.—È’wš¶Êç‰;›Ê9æYãôж1m|jtËì§ÿ$`ý‘¢’vè ¨0"jYÄ…kóŸq’'Ô±J¯ ¹£•â:‘„9C^SººPts&ÍŠP{uèiëî8ùöªWÓ?J䨨uÊNþ*NBC³å'Š;H˜¤žþØ4à y8@ÓöÑäÎO¡KÝ—›Ä7´:)â"cüòÎðô£ÕÓ¤—&"a€ö/z-Rh—›m¹€dŠ×‚E :6KfǦé&Þlr8Þ³à×ùuêñÉ›ïnßüá÷Ža endstream endobj 2 0 obj << /Type /Page /Contents 3 0 R /Resources 1 0 R /MediaBox [0 0 612 792] /Parent 9 0 R >> endobj 1 0 obj << /Font << /F25 4 0 R /F26 5 0 R /F21 6 0 R /F14 7 0 R /F30 8 0 R >> /ProcSet [ /PDF /Text ] >> endobj 16 0 obj << /Length 1085 /Filter /FlateDecode >> stream xÚuVK¯â6Þó+² ÛyAwsÕŽÔ.ZUBÚ.Lbˆu“˜‰¡ô×÷Øç„„ö">¯|>oóv\í>‹"â,9°Žç¨È“CžG% K£cýµÞ¦<‹;S«É‰T_«ÉñŠçÅèþBVÚ5Hi‹geúJ]Ý(ÛöŽ’ïkžÇj ÎêîÚª™Ox¼iWIûN@½u0ža%µTå €y¼!U_?\þëøK´å+ÿV-4öª*ßa/ûÙîd¾%Á?ªíyßÄŒ†8Ü@È~Pñ!a\5 ½Ç©ÈèÍAÛÊ!×Á~áûøþ»lF»Á/$Jæ¿1ÀøÇ©Çz´èà ˜ÿDyd3’Ø#%?Úa­î•¤&Ç9¬¨›Cþˆ(»hp­ì«v.öÉþðXf© n&"ˆ9˲ÀÙ~ÑÎéËvž1§n.“CÉB3‹²LÊý!‚]–O³ð¾í>§li'À®ô÷¢ ãl—íD9…ñ/£È8 endstream endobj 15 0 obj << /Type /Page /Contents 16 0 R /Resources 14 0 R /MediaBox [0 0 612 792] /Parent 9 0 R /Group 11 0 R >> endobj 10 0 obj << /Type /XObject /Subtype /Image /Width 341 /Height 271 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 17 0 R /Length 8549 /Filter /FlateDecode >> stream xÚí{”åÝÇÃe—•eQ‹¶ÖV8r8 ¡õ†´§…X8ò–ËXZòzPÛ÷Mßb늴%žž9Eâ9,)ˆÁK@ P‚—<Á’ Fq„b@R J°DÜáÈ´ ì¾ß™I²Ù{ö¾a¿Ÿ?`™Ë3Ïü~Ïç¹LÂNu5!„B!„RXÚ“‹Rmv„Psv „Pvv„®ì%%%eeeƒ2dÈ¥—^:hРôïßÛ‹‹‹‹ŠŠz÷îÝ«W¯ìñø[Š p ŽÄñ8 碔ƒÒ°!]®<Ü„•„­0ÿ¼öÚko¹å–éÓ§/X°àñÇ_¾|ùš5k^|ñÅW_}u×®]ï½÷Þ?ÿùÏ?þøÄ‰©TêôéÓgΜQUUÓ4T âglÁöÏ>û ÇàH³"‘J@9(íÉ'ŸDÉ=ô®rë­·âŠèpuÔ5A}P v„´—ò‘1òB+ó‡Q£FM›6íá‡^¹rå+¯¼rðàÁS§NUUUuíÝɲŒš >¨:‡Ñ£G£¶¨3jnþÀ®€Ðúf1gé}ûöýÆ7¾1eʔŋoذaß¾} îöQgÔõÇ]à^0[À}™k ö„ÖƒÒÒRÓwŒ˜óçÏ_·nݺ|@ï p_¸;Ü#î÷köˆûÒs¬ÇðWRR‚YñüãÕ«Wcæ|áÂ…1Ü5î@ ĤE69R(Ö 0˜3gŽÏç;zô(CWÄ‘A|Ì@!bìHA‹™-šñu×]‡õïÞ½{/ÖY}»¯+D qCôò\0n¤›ˆo~¼>jÔ¨ŠŠŠd2ɈµD1D$Ï|¾xÀˆ‘.³Ö¡C‡>öØc~ø!ÃÕŽ9rQElóùvÃE:S|ÌQ1šÙe—]‰D¢n2‚¼4Ñ 0D¤íîÏž=»²²’!ê† /È{Òîc¹iÓ&Ƨ›ƒ!SìHûŽû;vì`| ‚`0È礽Ü»víb| 䫉/0>$Oý1î/[¶ŒÁ)8Ö®]ÛØs‡äã~¿~ýzè!§@AîAö¤uúóÿì.È]cÒ´þ}úô¹ÿþû™‚D©?iéÐ饗nÛ¶Á)h^~ùåÁƒs@Zªii)ÿßn¡ƒ 6ö CÒ„þàܹs NAƒ òã?Ò:ý%Ibp dú“ÖéÏoù:›7o¦þ¤uúO™2…Á)hAêOZá>¸òÊ+8À(ï¿ÿþСCùýÒ:ý—,Y"Aw!‚¬!wÈ õ'­ÓÿÂ… ?øÁf̘Á(¿þõ¯'Nœˆ RÒ:ý±÷‹/¾À TñÔSO]uÕUŸþy³ù%Ô¿éæñé§Ÿ^}õÕü…‚9áÏþ VêOÚ¢?8~üøèÑ£}ôQMÓ±n ²ƒqÔ¨QÈW‹òK¨ÓÍ«€I“&}ûÛß>xð ƒÖ A^ä™jE~ õoºyœ?þé§Ÿ¾ì²ËV¬XŸºnrŒ /ÈNý¼PÒ.ú›$‰Ûo¿}Ĉ›7ofôºœ-[¶ ÈòÒ.ù%Ô¿Ùæ±}ûöo}ë[cǎݽ{7cØ%ìÙ³ñ3f rÑîù%Կ髪ªü~ÿðáÃo½õÖ 6ð©`ç€8#Úذaˆ³_Ê¢þ¤ãš›Á`p„ _ûÚמxâ‰T*ÅvŸ}ö"Œ8#Ú[·nÍóñ õ'Ð<öïßß}÷•••ýð‡?\¿~ýÙ³gÛv‘Äp¨"¶ˆ0âÜ%ù%Ô¿Y¾üòË^xaòäÉh«sçÎݶmûV[è!†ƒ ºãŽ;UĶËóK¨>œ·«DLÄgðàÁˆ"VçÛ;ÔŸ¢þY.\¸ðÎ;ï,[¶lêÔ©hä#GŽ|ðÁŸ{î¹÷ß»zTÌÏŸ?àÀgŸ}@ Ä‘A|Ú=ÔŸt·æF¾oß>ÌlgÏž}Ýu×õïßÿ;ßù†?ŸÏ/þýï_dAÆá¾pw¸ÇqãÆá~GŒ1gÎDqèÐÞú“nÞ<*++ßxã?ýéOè F]\\öØc÷Üst3fÌUW]Õ§O,Ÿ¡Þw¿ûÝ;3êùóç/\¸½ÄòåËqüÆ·lÙ²mÛ¶×^{ Âîܹóïÿû[o½µwï^ü‰Ÿ1÷ÀvìÅ18ò¥—^ÂY8%<üðÃ( e¢d”I;®…+âºV«u@M-Z´zõjÔ 5ìntRrÑ7Y–1ÈBdŒ¶Ï?ÿ|EEÅO<±xñb§Ó‰qyÖ¬YwêÔ©“'O†°&L€ÈcÇŽ½é¦›ð'~?~<¶c/ŽÁ‘3gÎÄY8%¸Ýn”†2Q2ʇà¸óK¨?a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ÉEÐlôÖI«ì¦þZÜpÙЪãºýVW²Zõë;-®P\ÓR>»Ù¥Ô¼“×,ÜiLb~GFÿªÉ¿~¶àÅ%“Ñ€»¼Ü‰ËɨáºUj-Œ#}ªÞŸyÓefõWE£o"IEI„…º½G7Õ¿‰#,§ÙßiωuôobšÑX™ÍÖ¶ésëï¢þ9ùO\öÜ‹êúÒz¥Z‹fÅÐÊ9«?Nwë2:ßa*z Åo¯{#îý³CpG-r$3ùo ÕŠhê/OËkÎ~AÌ­]æH¥ýëÕÈUºµþMœÏ/0ÉSÕ– ˜ç¹-:¾Çºßåú+¢>Q·:} UzÓ;ÑøÁÑ M„½N'FrÅÔ¿Îè¯à¾¬[Ö`BC‘ÆðnñF1ÖÊq1GÌÏ L".cp7ôSÅ´ª VÃü\ÀÓµñhÏT-©?/¨£¿Ú¤þŠ9ú;¥”"§b$Ž`âRú7í`Ãqý§ù Ùù»ÜìL Ÿª¶èÒÔ¿Cõ£Sc ú©°¹Ð¶û¦Êx­ªZínLÀsõ¯N†2Kt9Æ›Ž }æéþxÍT;*O¯ø}^{fíß`5ªÓÚ ¾ðþ¿\ÁhÄožnÕZú Mè_4¦(§'ðýˆ‹”‚ýó^ó¯LþCyË“éßÒÊSÿöŸü+’33§v8 mAµZÉïÔ¦?Läž®WkÌìµ ¦µb#ÕHzÒº?Œz³Ó~»± ðŔܘ9£¿/]fÎçþZ2ê´ekä'ÔêÑ¿‰x‹ôoõoAì8ýóé¨GðcR©”¬Öýr*§’ÉdJÉÝ®©é/Ö5Љ¶^lÃ{õ²’W5²—TõÛðUM–-¡'ÿ­XJ·â`ƒ¾7[B>§ä¹‹úw°þ¤&ÿyå­³¬±kåÿ俉OîøäŸúSÿÖ}ð×Dõš(¤Y›=,Ï…I‹Ni¯Ò¨?õ¿èõ'ÔŸúSBý©?õ'ÔŸúSBý©?õ'Ô¿ÇêáÂ…O>ùäÍ7ßܰaƒÇãY¼xñ‚ îºë® &Üxã#FŒøú׿~ùå——––ö1()))++2dÈ•W^9lذqãÆÝyçóçÏÿýïOý õïžüç?ÿ‰ÇãápxíÚµ¿ýíoï¹ç~íµ×}õ«_…ųgÏþÅ/~±dÉ’•+WnܸqçÎûöí;tèбcÇR©Ô™3gªªª4M;{öleeåçŸ~âĉ£G¢ßؼy3NA¿±fÍêO¨×C%I‚•K—.7oÞ÷¿ÿ}^\\ Ù¡ü½÷Þû»ßýî™gžAW€áܹsÌ/¡þ…¨ÿ—_~yðàÁ­[·.[¶ÌápØl¶«¯¾º_¿~£FaáÂ…þóŸ1Ž?~“|æ—Pÿöº"V»¡PèôéÓpƒçÏŸÇLãõÓO?½hÑ¢Ÿþô§·ÝvÛСC±9räÔ©SùË_VTT¼þúë‰D³tæ—PÿŽk±Xì‘GÁh[ZZ:bĈûî»ïøƒßïß½{w2™l€XžôÑG{öìÙ²e‹¹š~àn¿ývs…~Í5׌?Sw,ÏŸþy,º[}!æ—°y´ ˜Tc¡½zõêßüæ73gÎ;v,e,´‡~ýõ×7nÒ¤I3fÌ€¶è"î¾ûî9sæÌš5ë®»îúÉO~2qâÄ[n¹½‡9ŽcÒÇQæíæ³t»cÇŽ#GŽÄ ú6jã?Øb®Žn“íÛ·oÚ´éÙgŸ]»víºuë0p¯_¿~ãÆ›7o†Úo¿ýö¡C‡>ýôÓ³gÏ2ÔŸ°yæ—°yæ—°y0¿Ì/aó`~™_ÂæÁü2¿„̓ù%llÌ/aóèœæÑ«W/ © bBýIOП ¯3cBý õ§þÔŸPêOý õ§þ ;¡þÔŸPêß*TEÕ¨?¡þÕÔ×gg^çÙóY,‚¨´²’Çfu‹ìÔRTJ4_´– ë/·zzel¨Œ´b Ký õoyS?#N°XVˆr-õ 㢭Õ?æmBÕ‹*æa±óX,ΘR­ÉR AýDêO¨›šºò8Ì 8½aÝoµFÿDØkÓ\»ÓaÍŒþšpYõíé㵸Ûnw{=š=µ: 9èÖK¶ÙËË‹Í#šC¸ße7/çpSèüNóŸåXý½5}D<(W\¡T2Rîô&´ýÕ„¯\Ÿàbþh’úêŸOSzà·ÕÅ"ú ¬KšÑ_1ÚZìî@4ì3̓þñ€n´'Ãúñ‚WªVD!-¬OLeæZ¸'Y=¡HÈë0ŽU6Úb, àÂåá¤é n1¡Ôß›ÓK%‚z7eˆÉ”ä5§"ýe½“²:C¢tëu $4êO¨3MÝXæ»"éa6î·ÃW%£¿ˆžAð›")zW€å¶ì¶ZlÞô|[ô 8^VuýÁDí¢å9þ†œ8P?+%…C".§©r s«;ŠJøl(SjdoÉ¿GÕkí5×þ¦þÆs K ®G%]f§Dý õoº©+"†MWTÎ<߃VŽxzí"`O;«h—’ìu*móBâ‘”ú%{2Ï ¥ÌÚ_–‚kÍÙÆ”@ÁØm. Ú›S¤¤ë¯Ô×_òÕ©”à©?¡þùèŸ57ÈýOø™ANÏ`å˜Cè㚦*ªšŠEC‘˜fê_ûQa’£n«¡¿¢ÏîË Û_Úú¬þ îm^cfb 'UMA¥)›ûúêŸ^5 Þ&β¨?ƒƒï™É"×­˜\­%½vsí¯éÛlî¸.hÌ¥/øC ë_-ëJV!›ùT­»O—:a>jЧ÷²ó|WHixo£ú׬ý•(VvoDÕ—~KÎ|†úêßÄ^-©™Ï ~ °BÿÜ?åÏÌÅ­vÝ0QÕ%,ÏÎÏ­®˜’>¾îäßø˜>w¥`ÎäEŸ3s®ÃåÔØé ¦ î­¥¿5«¿ ©5Ÿû§¢Þœ›km‹ õ'=DsjŸJ¹AkäT2%×Q[376ÿõ;MAɲZûbr*•2¯…ÙzºUM™¯Á½y¡*Éü*Eý õïáY þ„úSêO¨?õ§þ„úSêO¨?õ§þ„úSêO¨?õ§þ¤°šÏ?Ï?é±úæ—°yæ—°yæ—°yæ—°yæ—°yæ—°yæ—°yæ—°yæ—°yæ—Dóà7~;ù{¿ÔŸtŸæÁV×É‘¡þ„úSêO¨?õ§þ„úSÆœPêO¨?õoª¢jÔŸPÿŽjäÆK»Vé/ùÊÙ¦¿D[•VVCò¤ßðÛZBŠJ‰æ‹Ö’aAÿ—7¡WFÅgö%_ÔŸPÿöiäé|×zK¦fm­þ1oú«úûùò°X‹y,gL©Öd)ˆ ~"õ'Ô¿M\ yfœÞ°î·Z£"¬¿Øbµ;õw}š£¿&\ÆK>­é㵸Ûnw{=BÝ÷üÊA·^²Í^^.dÞÖ­%ý®ô›?î` =ƒ?ýZÏò@¬þÞš>"Œ« ®P*)wzZŽþjÂW®O p14Iý õϧ‘Gõ÷p[ýÑXÌ|§6$Íè/‹m-vw ö™æAÿx@7ÚŒŠa¯ñÞ^©Z…´°>1•]˜kaýMÀVO(ò:²oø•<Øh ˆ±X4€ —‡“r®iª¢ª©X4‰i¦þµÖ)9ê¶ú+úì¾<±]ñ¥­ÏêßàÞæõ7f&ÖpRÕTJ‘"!1Ϩ?éñkcÕ,x˜8Ë¢þ ¾g&ÿ‰ \·brµ–ôÚ͵¿¦o³¹ãº 1—¾à5¬µ¬?T<(YM„læSl´Zì>]ê„ù¨AŸÞË^Ìó]!¥á½ê_³öW¢X}ؽU_>ø-9óêO¨hÉHÍ|^pÇÕôúçþ)f.nµë†‰ª.ayv~nuÅ”ôñu'ÿÆÇô¹+s&/úœ™s.§þÀN·Øè\0=hpo-ý­YýI­ùÜ?õæÜDXkÈPrÑëoNíSI 7hœJ¦ä:jkæÆæ-Ó”,«µ/&§R)óZ˜­§ QÕô—ùÜ›ª’̯RÔŸP&‚úêOý©?¡þÔŸúêOý©?¡þÔŸúêOý©?¡þÔŸú“Biü=ÿü=ÿ¤ÇêO˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_ÂæA˜_R@̓ßûí´oüRÒÝš^gÆ„úêOý©?¡þÔŸúêOývBý©?¡þÔ¿U¨ŠªQBý;¨©W©ïÛ-½½*s7ž=Wl™&*U­«Ã?VL¾ÙýN#;µ„ô¶”¨l¶sÉ7KïËoXùQì¹¾–ñ¨Ì?ž¼£ñb©?¡þ-×ÿ̾ –^ž÷>¯¥ža\´µú°ê¿÷TõZНÈÃâs±Š2Ë/bJÕ9ùÀ¦À.¹ºú]êO¨›šú™×V,0+ðKïëŠ>ú×蟯¶Yz[gÿ¯ãÆÌ诽øƒÕÒ«·å†ôñÚQ÷»ÛëÁÐüT­Nãtpé|{»ý‘òé'y Oµ~×=æåtÿ%…žá……æ?Öß[3ýˆ¿"ÜP„í3\¯žL¾ù¨³"¡åè¯ó=2{ûØæ¬§þ„úçÓÔßZ1"û£|Y#!iVÿSâJlùo÷Æ·ÂÏÂwSÿ#/=„Oßz7¬?û¿JÙñ aŸSç²Súð#·¢dOh×kÞÆ‘{UÀ8Ì"âD7£cY´ó“SñíXk” •õ÷ÖTT9¶Õ³ Ä2{“xü¤ô´9ÉèÚ;¾¬¿õB¢´uéq­MÇÎQBý›nêæ2ÿñÈ¿Ìyaî–WfôwÅäË…çÌm•âJc¹-»G_2éÏ{Íãß]uŽ?¥êúÿ_ðh­’«?.·ôÍúúß+o6Fÿ”´ó¯âItª|È5ºäf÷nŒÜ¾ï—Mòîodo­Éÿå–å*f†þbFÿ³±çtåãgëžpYŠf¥QBý›Ò_Ù‡Aöñ·?Ï<ß{º¿åþ#éµ20ûrÓY]øwSìÆ@Ÿeˆm%ôG!Oø¢~ÉO‰éÿȬýOI/;®/ΞnL Î`ì6— í­¡RZ ý•úúKÏÕ‰ä Ï^êO¨>úgÍýè¥ÜÑ?éŸsÙe®7²=ƒ®ÿéC} ÿPÓTEUS±·ÿùàœ©íG…uJ~kém†þg<£û,ߘ!ñ}Ð×­ÏêßàÞæõÇÌ«Œpò¬¦ RŠù«ØÜçÔŸPs՛؎ —OCð»}úÐüQdþ¨AŸÞŸöŽê£ëU¥á½êŸ]ûW)ï`õq·÷oXœ”^ĉÙù õ'Ô¿‰½ç’ofçóeÂãj•ù@À£îÿ™ÿ›Ì]7Ø…Ël{•÷˯ïgntÃïbJúø:“£ä7rW æLþÝg~eþ³ÄzÿçDt/ºÅ«îÈÜàÞ\ý191õG_$©5ŸûŸŒ®©¹ûu­m1¡þ¤‡èo ¦’@nÐ9•Lé³ñ\4scó_¿Ó”,«µ/&§R)óZ˜­§ QÕô—ùÜ›ª’̯RÔŸPÿžêO¨?õ§þ„úSêO¨?õ§þ„úSêO¨?õ§þ„úSêO «yð÷üó÷ü“«?a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›a~ ›óËü6æ—ù%lÌ/ƒCØ<˜_ÂæÁæÁü66æ—°y08Ì/aó Ì/éiÍ£ªªŠñ)hAêOZ¡iié‡~Èø4È òHýIKõ4hжmÛŸ‚æå—_F©?i©þ}úô™7oãSÐ ƒÈ#õ'­Xû'“I†¨@AîA®ýIëz4žŸýìgŒO‚Ü5¡?ãCš\rÉ%k×®eˆ ŽeË–!wúI[ôEEE»víb” ä«Ù—Š2J$ýM‚Á UìØ±£éqŸú“–êUä¦M›«nrÔôã>êOZ¡?())™9sfee%#Ö A^fÍš…å™MFŒ´´èׯß!C"‘#Ö­@Fd‡î“ŽÓ?; ˜6mZ<gܺd¹ÈЧþ¤ú›ß Äsîܹ§NbôºD~Þ¼yÈBßë£þ¤ƒzóy Æt‡f; D1Gäó|ÊG÷IGèoÒ·o_´Ãï}ï{áp˜aìPvî܉8#Úˆy«óÅ0’öíL ð•¯|åÑGåÿn_OD±E„Û˜#“t\`®ÀÈ‘#W®\Éÿ1Ô=Ä‘4CÚöÔ0¤¤z€ìÿ(**>|ø¢E‹Þyçþî |@”+D qCôòùþÝ'ݳÈ>(--ÅÄuÖ¬Y>ŸïèÑ£ŒpDñA”«¶,íé>én=@îó’’’AƒýèG?Z½zõÁƒ/\¸Ð˻ƽ#ˆ¢˜´}]O÷I÷ïrWæH7jÔ¨|pݺu¸X׸/ÜîwŠû5gDí8·§û¤;܉Ù\sÍ5“'OÆúwýúõï½÷žªª4Ô5Gýq¸ÜQvÔiñdÓ%…ÕäÒ«W¯²²²öîÝÓcŒ˜S¦LY¸paEEÅ+¯¼‚™ó©S§ºvª€«£¨É«¯¾ŠZ¡nÓ¦MC=Q[Ô5Gýq]=6Zrt .àä***‚\O¿ùÍoÞtÓMPoþüù?þøòåË׬Yóâ‹/¢—صkFáx<~ìØ±d2yòäI«(ÊÙ³gÏ;‡›ÂŸø[dYÆ^ƒ#q<ιðå 4”‰’,X€«Ü|ó͸"®‹«£¨ êÓ ÓxŠOØ äóŃþýûcäd=ÍU6À.‹yxî ŒŸ±Û±×< Ç›R”ƒÒÚåcwŠOØ ŠOØ ŠOØZOØZOØZOØÐzBØPyBØPyBØ!PvBØ!PvBØ-PsBHûv &!„B.&þR™–¶ endstream endobj 17 0 obj << /Type /XObject /Subtype /Image /Width 341 /Height 271 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 4251 /Filter /FlateDecode >> stream xÚíÛ{PSwÞÇñÜ ¹“œ$%‘ˆD‘p§‚hA(¼(ÍZ¼Ro(ŠRPVX±¨x™N;Îì8î¥;e·ûGŸÙÕÙý£q¦ÌNûôí,»nw·ëÌ–ånãoçZûl§ö©5>ï?ôœãa^~¿sâŒ"B͓ijIÂ}všo ÉûI¥2™,j¦èÙf/Ð?“JgœAö5˜R2Z®P(”ÊM­Vkžs—c”Jz<š–÷¿9yͰ%•Tk´Zm¬Žaô–eF£‰fæâè9½jÐ3Œ.–Þ§QSß°nØœÜtrœT“ÇŒe i²¤m®oí»ñ‹ßÜù߿ܘ¾ = ïOOŒŽÜûˇw~ó‹}/Öo.J³š(0ÃÄò¸Ô6L;§6ìI§S©RSM=k4g=[ßùú¿M…¦ÆFÇýä«óŽÑ;ÿvç' •Yf#«§¶j•’›Z^vž‚òž:†5.,®éÖ_“£ãAòÍ ŽNþzë¥ú»‘et¼ì|ƒ¥¢aPM,c0:ªO¿ýI`lAžL—³Xfî°Š%²h¥†1¦Ü˜ºOž\÷§n¤2Z&|UnLªXvѹÉ'IʳNž[ÄÆª‚VnLc´zóÖM’'ßä¿¶šõÚ«XBÇTgL~}ŠDFS¯'utX¬*¦K_͘WÞ›&‘Òô½•fFM·±€çT£óN„HäšðÆé5‚UåM –Ò)a•Y îá9µ“ˆkºÄ¢¨ªD&W1qiÿEjèiqŒJ.“qPctæ„7¦IŽê f]ŒGU"Sh¶¼H4¥ªy6£V!¼Q•D«‹óz„¢^wZU´ÐPÅR…ÖdwýDfpÙMZ…Ð^«èŽJ5ûÓEý4›Ž*ÝU…¶úÕ¬-ÅM"5wŠU mýKäZ³#ñ¨ž ‡Y+ªT¡³8sŠ#µ8ÇiÑ)¤ÂB•)™Éy¥‹Zš—¼€QÊ„õðRl.wyÄ¢–»]6ƒ*J,0TÖžZP±¨•©vVx¨F{záúˆE]_˜n7 UmJH÷x#ÕëIO0©…‡š˜á©ŽXÔjOF"P ÔǃªªFX¨’hÙ‘¹rCÄ¢nX™é0k„õá¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P¹¨CõüO@¢Ô/ûѬ#_õƒ‰¤£/|(& Î6Ì£Šª"òeÿËÒJ¾Õáêlçi Oêȹ&½Æ“‰|ˆ ÛEÌɉÚññ¨ƒç¸å·ÉˆSÄ Öbä¿2‡Œ ÉÚµô€ J8Tß°l>£6»“äð¨Ä—CÎI‰c5©‘afˆÈmÆG$9ÄšCRí#¢áð ’!¦‰­dØ9Äo vÒF5%ÍbRÁÛb"ò缞T«]$áGu˜ŽaáöTBÇR.ßçËé‘ÄGÒª±’ÛámÁÊÑŽ´Y‰,|(jâ`)ª„þmÈíbÒöš u„^åwSn¡‰Œ8èúÙ@7q_"‘ rSn¥‡âÏ6×ÛMÜoaÔÛMüQs·O §Šé©óuäšL4ÜÄO*ý5•›T1Û9¸6ÉSá9ÝèdÆ›áÕÎßüê9þAE'•Yo1±·ñüFõQɶ𞪑‘kUB¬r²‰î¶F¢¡Ï1ù9ºsÞn£¯T©ÄÎ=§è"O%ÖÏQWÓíá6‡j%Œ(Ÿ¢Ò¿‰sóÕGÈÈMÞfˆ®òa±„ØD#D’OïÍ¡ÎdpdDÃ}¡†{Oäw…Õü†Á[Ã9H¸ý–.z@*¸§>åϯT29ý¶g¾{ùÌ5J%æå2þDóÅŸRó^˜ä³çrŸ¨ð1¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*P T ¨@*Pçj†'‚Q=‚CGiL‰žêˆE­öd$š4Qba¡ª€ª*PgPCj*jBºÇ;¡¨£^Oz‚ðPUF{záú?F(êGë ÓíF•àPY{jAå›þˆ4õ¿YYjg…‡j°¥¸Ë‰h(w§Ø Cɔ̂äÜÒíïD¢jàí¥¹É ¥LP¦"©Bgqæo9ôï‡gúð߇¶ç8-:…TX¨¹–ûœê­ëFÞ¤öÔy¹O©Z¹D`¨Ñj–nªeÛ/GÜâ¿Ô¸½Œn©¬:Zh¨Q1ŒÅ™]´¡®éU$íý¯6Õm(ÊvZ˜˜(¡Š¥ ­Éîr¯«©?~m"r¶€àĵãõ5ëÜ.»I« ëáÏ­ÕLOeíþ–¾"E5øA_ËþÚJO&T•ÐV?E•)´F[ò²"¯¯±¥óéHxµ L¿ÑÙÒèó-K¶µ ™àPÅtWÕ™\yÅÕ¾ýÇ;.½|ð„IÞ½Ôq|¿¯º8Ï•`ÖÑUh«ŸU¹Š‰s¤./öÖÖmï¾öþe}|ÿzwûÑúZoñòTG£’ oPùQUhôGjnQeÍ®ƒ-½¯¼xR›@ ðÞ«½-wÕTå¦:,zBˆƒ:£j°$ºžö”múACSëÙÞ[cÁïÿŸXCÁ±[½g[›~°©Ìó´+Ñbª)÷ZÅÍjœ=9+¿¤ª¦nÿQÊzñ§øßç{ëÀÿƒŸ^¤¤G÷×ÕT•äg%ÛãôÂ5 «ª³Í™–ë)­Þ¶³±éTG÷…·†ƒïg^Càð[º;N55îÜV]êÉMsÚÌŒZ%ªixPéŒÖÄäL÷ª²êmuûŽ´´wöö_yóý‰àã~w 'ÞóJog{Ë‘}uÛªËV¹3“­FJÀsV•EÇhõæøE)YîUë¼[wì=pìÔ™®ÞþË7×|\®@Ð÷÷7/÷÷v9uìÀÞ[½ëV¹³SÅ›õÚ˜h™ M9Uº¨bÙ¸…I®,÷ʵ•›kë;uº³§ïâ•×~÷çÉÿ»}ÓzàMþùw¯]¹Ø×ÓyúÔ±C uµ›+×®tg¹’Ʊ±tL¥7V¥†1Z&¥dæ—{·<·³áàÑ–¶Ž®Þ¾‹¯üòÝ»Tö;xzÑgRhò|eàb_oWG[Ëу ;ŸÛâ-/.ÌÍLIZh12¥àÇôóa•Çh6ÎæHNÏq{J¨kíó{7Ÿ¤°=ç_º4ðòÏ;ôñx(èÿVO°PÀ <ôÛŸ¿Æô ¬:ö©øgJÆÓÔµ¬jcoçÞÆCÇZZÛØÕÓ{¡ÿò•«7oÝùèŸÁ‡A¿?ðàk?vúýôΉ{ݹ5xóê•Ëýz{º~ØÞÚrìPãÞ¾šUeTôéŒgBüS¬nN‘~ƪTÇêM›c±+#Ç]X´¶Â»©ÆW·gß#ÇN´¶9ÛÕÝ{þBÿ%Š{ýÇ?ûõ­wÞûðOÿóÓ±©ûþ@ðA(ô0z øïO}zïã?}øÞ;·~ý³_§˜—ú/œïíî:{¦­õı#öí©óÕlòV¬-*tçd¸Ó!5écÕÊ9F:Ë­PiÖL]KÓ³sWxŠÖ–WmܲÍW·»¡ñ ¥=ÙÚ~¦£³«»§÷|ß…þþ‹—/\¹zõê5Úu._¸|ùbÿ…¾ó½=Ý]gÚ[OR΃ »ë|Û¶l¬*_[äY‘›¾Ôé°YÍ,£U)¢çi˜U"£ãvOX´ÄEaÝ…«JJË«6l®©õÕíڻ‡›š·œl}±ýô™Ž³]?êîîîéé9ÇE§g?êêì<Ûqætû‹­'[Ž77>øÂ¾½»ê|µ5›7T•—–¬*tSP×’E ñ^”©L2IgÇU¥à\ ¦8«-1iIJZfNîŠÂ•«×¬«¨ònÜR³Ý·£nמ½ûö¿pàÐá#MG›››Ÿ8Ñ2Û‰Çé•£MG:ðÂþ}{÷ìªÛA5·lôVU¬[³zeáŠÜœÌ´”%I‰ ­q&'ªˆ’Iç¬è#®t^5± ËÁÚÎdWZfö²¼ž¢â5¥åÏVy«7nÞR³­ö9ߎçëvîÚµ{÷žÙvïÞµkgÝó;|ÏÕn«Ù²ycµ·êÙòÒ5ÅEž‚y˲3Ó\ÉN‡ÝFAY&VÃÏè\}dˆVð°£Ù²€Ê&-¦´Y9ËòÜùÏxŠV—¬)--+¯¨¬¬Zï¥U‡ã×WUVV”—•–®)Y]äy¦ ß·,'+ƒr.N¢ž ,f£¥ûè^õ_ê* êµ:†5šã,ñ6{¢Ã¹8y©+-=#3;gYnÞr÷Šü‚ÂÂg<öLaaAþ ÷ò¼Üe9Ù™éi®¥É‹ŽD»-Þg6²ŒN«ƒJç“èaå¼l,£§´OÅYÄ/´'8IÎÅK’—¦¸\©ié\áøã´T—+eiò’ÅÎ$‡#Á¾0~%î)Ê©gbyOù<ý 6,%W(bTj µe ,k2ÓɵXÄÛl ív{BBâç%$Ð+ m¶øV L³‰e ÕÔ¨U1 …<*ì9oA¿0³<-Z…’ÇÕjcu £§À¬Ñh4q™) =§W z†ÑÅÒû8L¥‚›NžSÎÿšZjKqy]…’úÒÔ4Íçq§Üå%¥ä-£daMp~.奾0_ôl³èŸI¥ü}ÀüæÀ³Í΄B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B!„B¡¯ì?Úf#‰ endstream endobj 11 0 obj <> endobj 12 0 obj << /Type /XObject /Subtype /Image /Width 600 /Height 170 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 18 0 R /Length 28647 /Filter /FlateDecode >> stream xÚì]\Ë?ÿ>õÙ-vww ˜(‚‚ý|v÷³»°, [D¥»»»ûîö?»{ww·³sÜþ>>ÞÞìîìÌo¾û«ùÍ,—‹F·4‰—P‘´·“§„/@–IÎ^SõEžÚ$Þ"R"¯Ä+A©>ˆÏŠ +ƒ+W ®\)?®„/À„Hä§Ñ^,\"UUâg…‰~£øe;NU-Õ³$Ö@Õ`Hh;Bu™xËá%p†È0ô(­bpÅàŠÁƒ«J„+ñQ“8Žâ‘8@(v¼òXJT(’hˉ·Aü¯xOÑí+ÚN‰C‘Š·ÒˆuDÕ 8TàÖ ƒ+W ®\U"\Q±BÅq%ñ]cpÅàŠ‘W ®\U"\Quêé´®4mb³Á=zH$>ˆ‘ªx­Û.qtà1Ú×M†  z¸>.T}ØÕpa锊ãJ´„¢jˆÜà2¸bp…,¯¨"#¯h­&ƒª1 œ§–bMÉ<Ç ¯\¹rëÖ-ªzd˜™EŸš‡´JáÓ÷3OQƒ®‚¸âpDßn6›-Q,pð‹§¸BÅ¢apÅàJækTV^ƒ§OŸâ/‡#-®Pâ Ì×*‡8ƒ´zðÒ¥Kׯ_G±ZåÄÕðUIyUåq%ÐeÖ×÷6dÐàaSu޹ƀ’Ì›µËèÏ500Ð7˜³xÙ±t7ò£6hô0pȈQÿ¬¿—[ºCbp #\1òJ"7ÊN*3®$¾–––Ç'mQÚq¡ C‰ŸËoW¸­…Â@8¼É ŒŒŒnÞ¼)î¼§§§GGGË™‡LÅ7Z˜æo—jAþ|†*+á÷=?4œÅúk¹áCW7»Ã;²ª5wÌÁ’Þíc±X+]¾pþêù}ÍkVï:l~[®û0«NÿϾ;zr¶‹5~Þ]¡qD¢Qа“ZêQï´ôý„,æ¥rău ®”W^!úƒUX^JNNŽÁZYY8qBÄ„¨QôdT®4 «è ·rVˆ:YƒF@Þ¸qCð3&&æÉ“';wî\°`8Ercˆ¡R0ãâZ0ãgM럃Žü3É=›±sÉw8Õºk~i’íÑúúa؇uCYõÆúðʃ,V³þ×Ì5½t¿¾4ÙµûÄ«o1äÏTÿw'öÿwÝô58ÍɉýíTHž(ÊtwvK+Æß¯Ö·ž8˜ˆ;—…ÙI!a1ñÁ?š}?ã~ž9~äì£÷iüÆÄ{|?ô„{tbJR\z.Þ‰¼— §Ž˜=û€>õÃCH@ßÍœ9sÇŽwîÜ .èA º$‡ÉC¯çòåËÆÆÆ@ý]¹rEOOoáÂ…@ Þ»wÏ×לÍÉÉÉÍÍÍaˆ!‚ ðàÈ |±©mó¾\+’¾X”Ç7×NÌû£-:vqÏ帢r6]Õªm î–«©ilIznD4Ùî“}j~É nyxÚ_­zÌћـźöÕ?ÜÙ´«ñÜyKõnÙuÜ匨/ƒ›²,¼SÀ•~æ‹;vÕO8­7¾cÇA õ5tóàW–õgL£Æ j7Óú÷Üï§W»Vo5g妩ÆÌšžakØ¢I㱓§NíÞ¾nÏ™?°LÏçë7Ÿ¢g0b`‡~s/ ½hÅÅÅÌp3¤l”Íf³###>|¸ÿþþùGWW÷äÉ“aaaæææà@¢?H›•$1ÇIbÅkƒøƒ·”K½.Uª» ê’ìœÁŽ;öïߟEP5¦OŸ¾iÓ¦9sæL™2eܸqê 1¤®®¡¡1dÈÛ·o/Ž'ãyjõÔ"‰ )î˜óâ1Î uîÑwÊ” C6ÇÚçŲ¨}¶‘d– —+2p‹‰kQÈ3«ñU×püêÜjƒí'gwl¢ì~IžGߦõnÿ Û5»Ý°5Ï@ÁÊ¡jc 2¾l¯Íjõ1 +Ì96¿W3Í ùinmXÍOÙ%€k~™ž2~ø-37×ñÁΚԂr3§t¬·äª=îf~¹ô«Ç×ÈÔCY“þ½ ôiªçËZ,ÖåŸI‚T[[Û#F0øgH IGGgýúõõë×'åvß¾}?uê”°DYŽ!ÑW¢Š£øƒ•4_ÔÈÈèÉ“'àÀÎÎîôéÓ»wïÞºuëÙ³g===™C2?ùqòÐ;[5áÅ?IµöýàÑËwüÎ4mÕÖêWh€·G€¿ÿæ™›ÚÎ.iÚJg»]I¾h~ЊÇ\xïKÔ£–ƒ42KÌ5nuz<‰æýÚ6¦×|“Àì'šv›š‘hÛ½V;Çl,Ðj]“š¬6í\»rÃú•úËÜ‹ôû4º›úï,üû—s5Ï]´L[kPýŽýC’‚û÷Tûœ@T—åªÑ³¿M@Ê–¬îc5¶lÙµqÓ}½{?âEúÈCJHááá—/_‚ˆkà¾{÷~üøQܤÒJT«ràÑT.õFmTù'TÑK mÁ,b6|ªãÂ…€Ÿ×®]œ®·»»»‰‰ÉÒ¥K>Œ‹«üüB†"ˆô•¸¤;—êÔ¨6Kë€ ‰œâÈ÷5X¬îDf}?Ѳs·¾&‰µÝß«»>8°Ù=žU­Çï$^ù½ÍƒXz³yj1ÃÛ”U·õ—Xb¦ãØâi«÷hµk»Ë<Œ˜ ôîÖ¸Ö©/@I%êôiZ£c³‘ºg@±·ÉÒº¬1Ñ´œ;nô>7þû€¶#¾¤â›Ñ…¥½ÇŸ ü}£Q×>qEÉ}Ôªí±òÇŸõùJÃꃿGÄ,k_óß#ßðû3|­Úþ#,OðBa 7CÊF™wïÞÕÖÖ¾yóæÏŸ?322¢ûñãÇÂy2ð†R%¨(0. ¹—6.ŠøPÙâ¢Tù¢âþ5<’L¥v1)÷ëƒWÊýúÐÛC‹Úå®*…+. |³ŸÅbµë£³cýüzµj œyª«ÏvT«[ßÏ[Áç£m÷³ª±>Fá‰4Û‡¶dýÝBÕ:Cê³ê6=õ-L7bØÝæÍ:öX·Æ !‹uÏ1ÂÅr ëoµ û©÷jÓºÇ.r"ñÓé¡à‰&öÄyA³Çvm;zÞ¡í‹þf5»ø2‚÷¦c­®_q=ˆ_Ö­õ  ûwmد;¸åì;_OÓmíÔžÿï² µ«±þᔀù¿>ü¿FÖî;8¹c»ÖíV§ ƒ«Š’WTé\9ö­\òŠê¹âù¢T¸Bœ „ç½@?ÎÜ»ï€Ù+{^H!1àíû÷Ùl^´´8=üñSk¯H2ä™÷ÑòöÁ½{^ðŒLÇÈå %ÏJ³¾{jïco}ɪ_ßßµ}ûÑËùÍK‹|ló=³ˆ\Í7:udÏþãÖvÁø³2¢¿½ÿš†ŸÅØi¾÷ŒíÜ{Ö-0êÏ£‡o¾:¥¦Åÿúúáå3çÏÛwhM]]>>Ù³{—á¥Ç±yðÎ2¸ªxyEÛ*åReä/#i¹¹ùÁƒ±Òë¥Í“‘WÅ=åŒ+¸‘)ÎUàM?{ö ƒîÕ#3®h ©ê¡9튘 ‘W*‰+Œ+i‰ŸÐ¦1âš’‰66›#~uÉŠy‘)9±º9œR×p$Ý"8bKšà;8f`óÎkÝü]÷êué;g{š„Æs¨’Ó\)ƒ¼*k=X©åÕ§OŸLLLÐóEibx¾(Õ(À=zZ†C8’/ _¾AÅUA>íXКÊTg1´} iã ð´[x-„  Ç¯TW¥«@ÙåCäjŠ.ˆÖMÍR µ »«üS8Îó½6¯]#ƒ+WUG^U(ä´+0f¿>f¿>´È—Ù²já e²ŒÁƒ«ª*¯hã p>PÅ¥ÚOFák Qˆ1ûõ¡‰ÚhlñvW ®\1¸R6\q‘·ëTxþUHŸ*¼À…~Ò“i[Èl $jRÎ…~%ƒ~ËŒ6&/qáv>bZF·ÛU_\1¸bpÅàª²à ¾þB¶80Üf£mWšïZbÈÄEûÄ'$ø ɼ¢9Êä;Nò.vpÎÐZk¦å´áx3\1¸bpÅàJ9qEËI”BÄ|8dÀ•T!íÜqÙá }Š¿œqE+ à€Áƒ+W ®* ®àz–‹¶-6úʆ+Úèèë\1¸bpÅàJIp÷Ç!-Ç PòÑí+ijˆ B7?0èwíi KÄáCŒf£Ì HÛA¸> ˆ±W ®\1¸Rf\¡\IktAòÌ;ce³>¥Ž2M`A±O0äïH¢¬Ê‘W2›Áƒ+W ®ª®h9‰2Ÿ‹ˆ+ˆÖ– W²M°–óºTŒîã/R­K• WˆË‘P€ ‘E˜¢÷ý`pÅàŠÁƒ«²Æ³.+ûu©˜4yÈ2¯K¥¡VÔºTŒn±*³Þ™Áƒ+W•Wð&!ºäèCŒâ£Ä¤ÂVqßó¶ÉE´‘dÆâ| ­íIù8W ®\1¸ª¸¢Ò¶(Fˆ<éR $ úý)”ÇÉv ¦¸ïyA¦§¥ê¬< ¤­“õ;q ®\1¸bp¥Ì¸B G3yȪ™‡ÌEXÍÉogpÅàŠÁƒ+%ÇÆìÏ ¸'¢„JØ…ôŽ6oжZ.³ïƒ+W ®*3®à>,¢}×׈†G¹ÙWRyýˆö•Bâ t ¤³eg€ÛWR=±ÊãJ¤'²áªÔëÉàŠÁ#¯” Wðü+.ÚZNeÈ¿‚çI…+Äü+Ô¡ç_Ñþ¥å¿Bò¯ß;U› ‡K=¿O£KµƒÃàŠÁ#¯Ê Wt½*º”F*¨Òæ_!Þ‰£¿8\éó¯à@¢ÍøBÌ¿â"¯ÙáÊ—EÕ.tÛ‡*‰+¡ ðƒ,?³m›þKÆ5!W¢Ãÿ/iýbí¥‡®d2¸RU\1òªBpÅ…~ªžK·Ä’«ˆõ8ÒZ&ÒâJ†Ô2Ú¨‚üöd*Ÿ«¬ßµÄ±Î«ÊàJ˜²ý_mÝ~4AìÕc³9{ ˆ#VI¾ûí:×}áÍ¥žÙgpÅÈ+F^)WÝ~}T& Ü^âJ¿_&ß>E\èʉÁjD£‘+ë>EˆiNpË qXiE4&ë~}ð–c²î‰"Á”–„ \Gã=û|pÁõ]~vXt —›çãòëËç¯NÎÎnžî¡±iøu±¾w>oñ­9%” ¡ó“|ÏÞ{Èøa ñÓúäâjcÿĦ³Ùe•¢PvlQN\1òŠ‘W2àªìr~¸2­K…dË¿B"<*"[Çeô‡Jg'ÿJ9fä-¹¹¹ÙJI999à¯P¿8çö.ªÝ[këÚ¹uš·\ó> ó¼Ò»¿~–zlÝâ9KV,ÑÍb±–œõÁrúuï0XcîÔ F,Ø•Ovÿ›òëÕˆZ¬Ñ‹'öì֮פÈÜ´í}Z»¶]³É<†Ã<] )++«¸¸X™qÅÈ+F^Áq¥¨ü+iSq˜ü+™ó¯¸å¸.1J£À¼¾ùóçwëÖmüøñêÊG UC† IKKã·=G³çßíŸÉàbÞŸ¬,ì¢2Ï·o99W]øé“ÃÛ4j:+ÃŽëÖXk.K~Û…ÅÚqËKÐû³Zú÷qœµ ]=õcÎÎz÷ZŒOåBð$22rÀ€&LPWJÒÔÔlذá«W¯ X­p\1òŠ‘W(O„G«Pø€I¹.•[f$Õh¢¼\(’íYpkDª¶AP'·¥zŠ¢p¦L™’ššZ â¢ÄA°õ<Í¡õÛt2yÁc׬l÷+Ý:ÌŒ!N™.\»f_\!ÆêÛœÕfÂ;¶¬^½fúhÝÇ_|3Š›' ÝwÏ“üñxË qÿÙåºéÕsIf-®,±â3gÎܸqCž7«LqÅÈ+F^IU³ÄÀ2ʼ3J23ï¬yg.ÝÇ—•*ŸA*\¿ÚÚÚ~~~à PY©¤Ù™AÇOŸ ÏÅÝ¿+«Ôí±#!à^÷¶3»h{B«Qýú¿3Èë WQÓØýïcvì郻¬œcù.Ü¢ÙnêŽÄqîÜö &÷ÊÿeسǢt¾$9S¨ÄZxàÀ»wïÂ} Ä#¯y…‚+” 0J–²ÄÐuª9Í )WÊocѦ-A’“i“~ѧ੘€2K‹ÂLÚ`©Ò›Q¼C#2àjÆŒÁÁÁˆ¬¨X\aXÚæéíëõš|þÒ)õvMçmqÈó5jÙÒÀëÏí,@Õt ê3dç…o1®g»7f-Ür`F'Ö€….%uù|Ū«¿zß‚1[uíŽaq6;7ÑN%㢕W‡¾sçŽ2㊑WŒ¼¢Åm˜SľµegÀ÷­… Œ3 ÄÛiã ´ö'†¶_ŸlñvÚ‰ô8 ®Dô 2ãŠ÷¸Ì˜{ŽoÛ¾ýÒm[àrÓÃ>qOM ùðò‘¹¹ÅÝÛ·®_»eûÍ\úëíÁ½»N\¼™Æ%R_ˆ|Q¢ÁáN¯íþoÿñ A‰Eàg^bà‡Î…˜\ûÉ”'®„õ r⊑WŒ¼‚׌)èûΞ‡L›ƒD›¦Kkpeý¾³œ®7&åjSÙòÑã ´V4mf8W=¨ì¸ÂÕ˜È5”·pØ¥¯#ö‰‘hÖs— Õ®ä¸÷•WŒ¼bämdž¢ §ÓF­™x{Õˆ·C ZZÛ•v~PX*9®0èžZ´üä]Vê•W(þ`Å⊑WŒ¼BœÄè¾ïÌe¾c¢’ß1¡‡k¤Åd~Á•râ â*®yÅÈ+Z×O†ÕšGÐz [ÚygÚ0üí(Ÿygx5ïŒÒ}D[1ú7eeÕly2 ®*Wây2ʆ+F^1òŠÖõ†O¢Ì;+vB¶L绌xœóÎÒ&pË÷;&ŠÊg@Ä•xž ƒ+åÇUæÉ0òŠ‘WŠÍ“¡µ˜ygÕœwF .!f˜£àªÒäÉ0¸’/O¦œqÅÈ+F^¡äÉ`tû©ÒjvÚx;Üð(·x»TÖb¼¥UˆF¬Ìö•œV+†¼O‘TÎÒâJÜdp¥ä¸’Á,\1òŠ‘W(‘ á£$ðÄ'S‡Ë|Ï‹.ÿ Åî•!ÿŠj8 íAl|*_*\Iô\)?®ày2Ž+F^1òŠW²AH†yg8ns¥³†h¸t_XFlâ¼3ºÕa¦<ñvÄôøHѦpví€Ëòd\U8®Äõ RኑWŒ¼¢ÅlTÊ—6q—Ë|ײê~×" hÃG´F¦ÈúAWÊ+¬"Ö2òŠ‘W ÇJœ ˆ¡‚!ì×'}…ž%C³iã 2ÛWà!ÚWðLœ‰30qQW2àÊÝݽQ£F¤lÓ¦ðÜ.epU‰äJê,DSKeÉÐÚN YÚô]”6p™u©ô^\Ië2¸ªX\ƒ¿£F"õ ®®.øYXX¨l¸bä#¯à¸’VéË`Q ›=´Ö—>>f—ä©*唓“þfeee”™™)ø›žžž!%‘·dó üLKKµ‘?ÁSÈp@–€Sà'(Ün%d%äe╤”Ep%´ÍË”Dd%$Δ¦üÊC_.ñkPÞÇò¯D9‰Ä@!A¤ÉDjFÈd+©ÁõàF°¨¨¨ÈÈÈp‚BCCCT†BùX!8 UaÀ Àp@ž%O)êYàÍ6lاOŸ   à<=!!<&GŠ,TôøÎ¾¾¾‰‰‰@•ÄÆÆÆÅÅÅó)Nz\ˆˆpuuu#(99ˆðúƒwww/// t€®ñóó?Á @Ôæéééáá AÀ-àéàØ“ Ð0p ¨\~úûûç@… <Œ;¸Œl¼ 1±ÅÄÄ‚\*Æè{```A I¾# \. çy‹Ò’ y ƒIII`(%ÑÑÑ`+ƒcPÊ÷‚ëÁ]à^²0 üã(¨0P¤Àd‰•rž¬\@¾b$%à¯p%àáåä-è`€àh-@/ðïÈÐÄôR  ƒ¿TõêÕ›µ|ñâÅóçÏŸ={6#@2›ônÔ¨Q€·nÝ%ÀTÆ!y³³3(¹wï8 ð¸, P²qãÆ!C†€ÂíÛ·ƒŸÀ2œ¯Ò AƒÌÍÍA‰££#¸—‹üÑɲ`œRµG¢ÄÊñ e"z°òâJâYÙp%Ѓ•Wòw!$Qªš¼R ®ª€¼¹ëÍ›7ööö@ÍAô`RR¸àÏŸ?'Ož÷!í‡Ï&Su®Ö%^Ce– ¾V\ºï;K´a¨üAHG0ºï)C^ªVarßþÅ ;± J$ÆEÅIÅ(Ȩ!âŠÊ¬t¸¢r+¤Å•ˆ?Xq7ïÑqñUG^) WU@^‰sèA;;;Ræææ 'S‘z’zøƒÂzež”É­ÂùW"-aòE‚+Äyœ*œ/ é2“/ª ¸ªòJœ²éAE¹ÛpŸÖ«¥ºѾ’§ _ˆëA§n ÑšpðBª.ô[ápÎжGä$.Ê¥ûò©BÂ8㢕Wë]Z\¡øƒJŽ+Ðq‰‹ªŽ¼R ®ª€¼)W¸”3â-O%ˆ÷ÊÖ!‰zPÎvr•æS_æÛÇrЃŽ+…T׃•WèÊR íü *È+⪠È+…èAÄüveˆ3`ÈyȘ²æ‹J¬Å*Óü+ø‰ëAŒnK÷Á/©pUqÑÒ¦Lq%OüJ¼~x¾¨L¸Uâ^nYáŠv–J渨ªÉ«@‹Ž*Ê+qÏZf=HåªÃ¨° ÷èå™w–x/]®KÕlòdJ(µv ¾RòÚ/x!J<Eõ@ä­dAÙÉ1Ñ1¹Eð´.‰‘ W´y22à çåÄGG'¦fsÄÆ¢Œp…’Ï@ˉþ J\ŽWD ——\D–—®¨X„W\C5?¨RòŠ'3%1:&>§€ ‘\AFG\•«¼RÔü •N‡gA2h1_C_ƂҮ4K¹iýAñgç$ù{»†&²©3IJõ¢8ÇÇÛÃ?$ºˆƒ D |a‘lñvZS“5_”¤W7×±X¬ÙFvà˜Í¡©V\I›/Š€+¼Äßl}«ãxýXèt’¢pE›)„Ñ-LFŸ„'^B#r{ƒQíf‘'pËWˆù¢´Õ¢øƒU[^ Õ?O³3‹Ui€ˆYŽˆ+ª³òãªÜä•óEigl¥Í*]'Íd¨XOÅ].1Bk_Q¹ê(þ`é¿øÅ‘ïöÁñW‡±tÓÐd!;ú5¸žU{‚[õ¤6i K–œ¢¨0ÉšœÅE zf¼ôcÑEž”„pªà›t¸’k½ä þ3äùŽê,V‹aÓãè {Ñ!@ˆ£øƒ"cÑí…ž/ŠA—lSŒ;On Fµ£]X°”PVq…˜/JëIÁýA9冼ŽCȺT ¼¢àLÂÌÑ-ÁàmˆñÅ"®¨ž¥\!í§G•W уR%ç Ĩ’—¸”yM\äÄ©^.ݺTyâ¢dAÊóMY¬VôÒéC1¤¤ù^¯‹ÕLÏ;Þ~«J M‘k8Tfõ-´ëqDJ¨ôà Â\rÙ^à–¾#yT¡tB÷r)ýÁÒ‘¨q©±SÒ¯ç»þf±ÚŒžI2IŽ`s)û„‚+øX£¤SJ›/ŠØ0!œdlûƒö<=(z!J¤Q™x)‡ 5aµ)œˆë•!. >¢Ð•8vH=¨«ÑŽÅª¹óADfIœÄAM9p%‹¡²äiå•Âç¨ «’шŸ˜ÝðàÁ“§/"R‹ÈÇ_¿ÄX¿ üŽ´/6æÏ^:åó_Ítg«‡f>|dþÄ+,™|É8i]eªÉŸYY_oíhÜ»nc?ú§äææñÍÉ´ÿôæñãÇæY>ÿ‘Ï— Ù™™¡öwjISð‹Ÿ~ÙyC<7!èÃ3+K+K ‹—ß’QV6Ošädž…„ƀ¤wO-ŸXX}vãUšûÑæ•……ÅûÏNÙlRÿŠ““â¢cSñ@lzøËgV -/^ýÈ#o!ü7ᨗÌzðR’ŸìdçGF†ù{ûF$¤ò^½ì¸ÏVOÌÁ¿‡l¸ .§(?:",4<""¼„ÀРИ¤lx\ã%Å„…Ä&æñU!ù4NR|\`PPrJŽ † ·Ÿ8O--¬ßØFe÷,äO~yATxpPhl‘”æeEDD%px3ˆ6iùDù<µ²xöìé»_’óHshq%Œ!0ÖÏ­žx˜=0ÿê!` · +<8¸4Wp IIÏ_å£ÙD·r2‚}ÓsØ3Ä×ÕÞÊÊ0áÛO×bžâÃØ¹!!!¡aYù‚éEB[åeDGÄå²ybô`©zŠóâ"CƒÂÓŠJR”ˆ±ÑQê™|‚»;|±´°´´|òúýǨä-уƒˆ*³ÂB‚Â"ÙB°)ÊM òŽKå©\Þ—v œí_XZ>³zníè-ÑÀV5=ÉS•}=ߺ¶grCV 5éÔ÷¸¹y™ùÆ‘,VÏ«ß,ÓLœE”ÛÜþ·cµ’[þjÜfµ¡i²Ö+»õƒ¤•{nvЪÿMÿ-3þ SýÞMÕU¨£¬îSW}!ðxûÈ<üw5^—f®¼FTVøàÌúž­ë ÝQwøô?Bqã’¹(PkpÛ&}§Ü¼A£Ó_ükê-»ôÌÙÑjD禂ۆi¯ Ì"ªÌ Y3³WÛ~ê'¯]ßþoÁ=‡-ûæ“ÑíC"| E’ã{x©FZÿ«Ý~èsï\T>½®Þ¥™0&¬I „f^Ø©íX56oLP£FÕZ¶nß¾]Úý{òȃÄÖMdŸ\§˜8^®ŠyßÃÒÜþUŸU·Íz3_ü®P§ “FÕû«äéõÔº/\eœÇ÷äzok‚Ûìn¬íFòT>XÙOÛ6¨Öxèªè¼’Ƙ^ø¯¥Ð@uì;fÓ¾iÆEYçõîö®n-ëq¥ÁŒÃ÷q†eú<®[³z£Æ"ÄÌø·Õ^ÔŽu~Ë*F ôH¶ã…F@P žJʉ˜¯gç°«F´àº4W²oæ?‰ŒŒ¼¸Fh¤Ä÷2ŽLÀŒQ» îÈu¼w½Õp2‡ƒ0¸G Üsè7Á#¼$eyŸD­-.?åeè¼<2Gô¨9xü´(Ì`$Á¾Z½ßûòªÍ xݾ.Á䈗ƒ#Ÿ\ëÁ›ÀOÉß7‡Tö­ÌóÚ÷æÖ&P 6ü¬àú §3„ïõ5V¼²$ÝjøÙ†S¿Gs„] q=ˆ}ž{ÿ®¸üÝtêà2ãÕ½@Iß)׉Թτð÷“_%³Fk§â|žqE‚Lþ=¹9°f¦E ùƒ„P˜N˜Ç¹æ„#XéoÁ@XŠ ’zý§‡äÓàŠSŒ7Übk\×z(¸æÓ…M„ñ73SܶËpIŒq§‰ÿijyˆ+=蜉¿ïJx}­»oKæ_öÙx9Áƒ!f>Y|T¹ëj„[që®âè{ûqÝÝrÌ·(¾ªŠ·'çßæžxÙóe*¥y7ǾmP-½ðáŸÉÜ6gìÌ øÛãt‡ÀB”’{7ká˜_´ã•¸Ìt{lå†×åÆù×w§p)<|éퟚ†K¦6ƒ'…ð*Lüz¯)a˜mºâ l×1zPªöSµóîjMœá——ML´8=Û TFŸ¸à2[Þã)ÛPþyw'j-û8áóEEl6.F’‚Ÿõ­Ïª×}[.|Šó ¸¸¢¹Tcõž:úìpƒaxzÁõÏ$ÇÉ©€×GôAa‡Þ»ñ™ž¢bùã¢[Œ­Î­F8^=_º& n}?[§Ã ûtÁ-¿íßY½³KÊ#ç(‹‹‹‹ˆFØ´‚,§ R(õ q“ѲAàúÞóöñ|µâ‰„–ºf‡ÛÎ쬀‹§_yê,ÜàG;ð ´†>LFIÒƒ!ļ⭹£À¯ÿ^(ÍŸÎÍqßÝäC Ü$õà£Í}ÀÕÇ-÷I˜SÅ?Ÿ=yóÙ¥x-Á8“ ;rÖpÂ6h­áD\ÌÊõ-£}ÕøzPÝê¹åèzD }æ±DA K\Ô ïξÂ÷æºß T¹nÚq<º¶Ä%é±G.³˜ÿÞsJrtžìM^wü©»ðDåº ^KŽÇMâѽì"pž„ÛìÃõ]–[Ò¸×'æf×.;´kËìQƒÈöLš+µ Æõ {Ûи†Ð_üÐâñÍ×o\¿~ÍøŽùÝÓ-[Ô ÿ‚•°u/á/õ4_ÉãJ:ô×^ºñÞÞ™ß\^ÒÉ•œ Sû×õxà–)pËr?ògêæa8@!÷3o’ £…4X|É0ÚªC'˜š_¿qãºñ»¦F†ˆâ!Ήx%&+qáÜkñb¿xCÜü×ð©xÆ|]¶Ï“‘Y^UÐ~28{}žï$ôžf4Áì×â3€ÓŽ›Až?Lïݾrþôþ¦ôîNN$­Ü'­?¸¼BYÎ&õÁR£×®s&îß¾Èøº‰¹Åñ¥xÈ¢­Öæ¤BLQ¸*çýdä_?(g‚2VÌÆ_ê•÷|KZ\*›š§—+‰ Þ1\€Ï.my)ˆàA6oA·OPHªýEKëA¼‰noWj÷ž¿kغ»ÎÁ»¤=,¢y¼9¸“pÞ«VS\•þ-¤û¶­Îj:à{ &¤qõ±ìªÆ_¾—åj*¬uÁßðk´@†É·.·:±Xµïë›Ï 1ÊîzP¸Õç_ø ßïüÉlÚÈ^ÂW4jÕïøÍ‡!qïôˆ77ªyÌšŠÛbóƒä)KˆpóænàÇ }ÜÐZ°÷ ÿ¦‚[+t« ?»výMiõàtá¸hfOâš6mðÎ,j:óÄöÕáBoVï'œ'Ãê _‹'Û´ÈS'úðf£Kë‚2Ø_”¿~pXéAm« €IÒþ°:º¦à•$:_'®áÆ-éc[|ö£«…C–H¸Ý)SýE‰•Åñ¿‰IjÖ5‡tгCñ9Œƒ¦Nü Qâ1õRün\·!©Õƒë…õ ›í2.Šç̘m­A=–uÆ®I(”h÷-#¤Å¤ß¯œ!ûwvoBh»·³83#2"02ú×Úœ"ú} ©õàsBÖoÛÿOt̾)„óÒJÓ3K$‡èõÅÚ|ÍâYM™0õo½æ©ó‡û$gú¿Šñ]Aq\Q­|}iÖ™îõ&RÚ?õ䙎Æ:dÍ3Öÿîì鞇¿Ù5wè`zP;Š]¢S<éÁ‚Ýcð0Õâÿ®…EGzyzxòpwóð  ˆ MÏσûƒ¥_× ¯ßÖn¯ÒRŸF »æ9®—’œZx £ï/ŠÉúÝpа-Ä ü€ ¦ñ/ûÈÕZeÄŸ°òƒ·¶Þe«¯!8<ÜÝ=½ý¢"""bÂóx·¨/~ãi—,·+Ûð8¼ú¢4~¶âæŸrî/*³¼’m=Š3“Wü—åâ|²côú·X† >ý¯6Þ™?dñ__2ްòøÝŸ®žA1ÅXÞÙCð LnÈ!¯Äƒþ¼8†W1làTâ—Óøðv˜ðÂ1 4ÀÇÇ´»«›OhHDddTb&›‹) Weêr¡ß£/#P&ÊÿOŸuÐXtZ¸ÔÖ5Ÿ†š-ë,¢-Oâg[öš›Âàá’ó;1YÜi~’"¦¿ëyÜooï,]±Éì“PÖVpæ_<žÔkëC!=8ýO,>"1Ÿ Ón†Ðô7dÇ’ÚŒ-ívˆ‘Bê­ Ô,ZØ·<‚§àvkH¨Ábùód–ÿ&æ2l:oé„ådRSáÛ+{W¯ÛäŸ#d÷D-TÇÕÕ.c[â­µK¤¶è¡›"2µVúmÏ%Ofº¿Þæ_j#®[_(á±+>î¹ÙD:Êæ»Â 6߇GÆÏ½,IþÂõ «—W&˜Ës¹¹o_›D\;2ÏѱûIi6äܽzdËcŸ€|øì1å{áä®Û„àË ? O®ìŽ™„ß÷›Z°ûâ  cxžŒüþ 1?Øó!~?ì[DŒj³ÛŽç C'¿Ï~ˆ+ý~û9°ýÀ×y|@™Óнõ÷ý3Ô‡þÐ:ƒ²½­Êð=z=‚˜Mxi^á}g\Ú®‹+Äe†|èälè߈H_ù"|×Q½á„”8?øØm·ŸOÊOBD<ÞŽ C÷€Êõ¸[ ­úÇèÒ)kï_ìÙºÉô]±Ò°±ü¿7¡ð¾—û>ØL.¸ÿ™¯ òt{âáíY†xâýý]Dô`¦ë#B´þoûÅ_‰xD¿¬ÃÜóeN…ÄE#mŽ«ù੤Å{kód܇~Xøš''q±0x—®#^ãþ_ó~„ëes˜X‚¥çQ2±•²G'Öè¡åCæu±ý%éÁ1p=h0W:­þËo~Z€mS"mw‰19òçÉücôg¯˜E毞þƒ«CšøôÝì#V·œß0uoÛZ"²~‡Á.i4‘Iß]âMfý3­«ë¯ÿáÏÚdæO$Tá'ÎÎÄãÒsv—ðô—eO"ÃêBÞúDÁ~2ø¢âD " ýÀþ^‰ŽZÝj6$ô ¹dÀíÆF]ßù”d¼?´„ôh‰ô!È1„‡µÓX(0ÂŽ˜Þxî5.ü)Ärþ´iŒ¿MFn‹£•u\t®»ÚñÖŠÄëíæ&¶ ÷ü\Ü+iÒË ®;9‡'â3§5zÿ'˜PJt0üÕšYÜÑ!Y²€´ïœª|w‰‹¯æêÛˆUŸ\’\óÒ×4~Mî†>¸Üy³D.<=O®Þxž7XÂëïá²²Fó»n<‰êkÕ»> ¶ÞM˜{±Úþ"´í•’Vd¹LjA,_Úl®$æ„ qQù×"æÉÀýV"ÄmÚŠ±äôJ׃—îY=¸<¦ ‘ŽVwˆ7‘NhºŸßYqÞ\ø¼¾i¹ÐøŸíç­­ÌØ ¬™;%× æÉ nú'(D‰‹ xýö.Ak·Õ[¶í¹g&Ûÿ Ρ“ç<ýðýóûW‡×O#ct7¿©ŒÑ„?Ȫ?Eo•ù{,×¹51õ·ºÁ£oÌïœÝ–¿i@‹î[ÏÜ‹ÄRpÿ5Y-† ëAã¸ÀZvÍQ ³]MAKj÷›§íáz·†½aï)×ÍŸ?ºv¨i]\6Uo¨Ë)¤B‹ Cîå-<;biÉ:ú¸ùD­q0¤þ¶ÇÈN _sòÓ—/¶6O–#æLk uHľ\ÑÆÏUcý¯_×a³õ4ÇjNcü„1ƒºêí¸ZXZâû‹ ˜ï|s}Mð*7‚c€AIHöûY}rRpþ¦³oÞXŸÚ»T0ñÑm ¶‰'¸&Ôz/ íÇê–YÒ& "9¤~»Å'ŒožÞÔƒX`0Z³ÝÂà\þ4w{bˆÚ]·øbûrÝbÒ=bm>÷+Ý2q\qˆ„gÛãšä-Ž^þdg÷Öâæ´Äxw›íøˆ®ä6 Íš·X¨7eô˜q8W4Æöï7z­ákḫx\”ät#_A\tžÛÝ.œ·Ž>ú›1¹ðSçàsÜŠ øHN¶ì=âö³^˜hð¦MÕž9§ 9}I G‘V›ÙF˜ÐNwð}&QÞVLÊ}¶¥•W($*‹ï.±‰¾XïÒbP«f6ÚiDŠ™n¶nign=qç­õÓ]k´ùˆþßÐIÿ–·@}Àü®g&‡[Vw^qç;ßZÎߡك,ì¥OX{š¬mPêÚž‡.ÜZ5‘7«xøð "[×j£³°¼´z ±Íµ½?h‚ßÐabP!‘/:X{ugékÿ-¼OM÷©_ýb11ó\†¸¨…¾”lÁ¥ï„kID­m.“ýžyà-øùÔPWlö½ï½·¸2Û9œj‚¾åÔÝš<^ƒñËrûi£=—_+íפ­ž1T¸Ú^–Ü4>Z——0辨×[ˆ%™ÉEòïWcš £³Ó¾C{pµÔ\7„¿©;Ég‹VÒím¸âØUr \™› ‰t¹Y·a&Þøôâæ.jTlo`R.y2é+p=×ákX‘ Èx#¹…šåOœÿ±?Ÿku/•çüÃû¶¥SA1‡ó«H0œ}ã‹É·š¯ÂýÁ2r‚D»IdG¼¬GîvqÜ–÷j“—å‡ih/ÌõqÛ®žÛÊϙٌ”ÉqA²ÁŠ›²6¾¡N—‘‡vm"üÁ‚mÚìk]im†L¶/"ãEÊð1^™=t¥Z7Áÿ& Ñ7ûøÞxÏŸÛ~ûE®K"÷fÌN÷õõIÊȆ™ìfÿì©•åógol¿…¥“ûé±¹\ŒÖ¾*‡<²ñ…鑎vßþvŽMã-Hp·ºwã¼Ñ¥ËFWnÞ³ô'W—ó²þØù)N?¾ÿpüCnô‡Å8™›Ý¹mrÿÕû¯!Qò">¾óÙîWJ>9‚ƒB# „BöÉñ¾¾~I%›¤q ²CýC¢ˆUNÈ)ŸÇsr»;yòd²3’||}“2y 8ÁŽˆ ð‹K&YæãtïÚ¥ —Œ®]1³´ JÌ% ;-Áß? 80(È?88¤„‚¢{“Ò|o‚·v&)<Ì×Ï/=;§$Ïû[îܹ}ÿ±Õ·ŸnYDò[¸ï¯7oÞþreç%x‡Gãì"±–—þíû7o^Û|øƒãiþ¾Q‰ä¦£|1›ïüíÍ»·î˜˜>}õÎ-$N`!SïÏ×Î_¸|ùÒÅ«Vo¾&f“ãÊMŠð"Hˆ+Á!ñ‰9pÊß‘2O†àë_\RÈÉM öóö IIÏç­òɉÿøêÉ­;€æ¯>| N!6«c ’×ðÿÇ}:…[°íJ&¾áo%mžŒÄƒª²n‚+dаcƒƒýüýs yQ/Áù©__[ݼ}ëå GÒ®öþóí­­»_<‘›îF£˜€+!ˆb|>½³~ÿù[TþªÆûúħ‘O%¯ÉŒô{þðÞí[·žHÉï)‰ó¾ßÌp±ýZÝN_ã1ÞF8tò ÝÄ ß,#yUz.¯$Ë ¤z¨Ä)&QKR¤åƒ+åу´áÖJ±OQùì/Š˜ÑD»/Tó›¨ûõeL$ö*»bŸŽÉ·O‘DbZÈ6¹…j~Pyp%E¡»£ ãªŒöU“gHò8ßÍøü™¦y§ñ¯É±¹h¨WUc_59å•ÄÚ*™¼¢kL9ï«F;[ ÿÀ’QFN³“ä'bÐ1A‘*O† œèkoiB .ô£çB_4K{ùàÒ!ÃK¾B»C›‡Q|m ¥µÛQÒhqE¥•WR(Bè×ÁÐqEå–)®PÆ‘“ìyñĞ͛·^yüU»“ˆ+ ú•"D\¡èÁ*/¯hµª’Ë+Z\I%¯0…®›€$ÃK•á O“¦š#€l—J¸âeCâ¢s…6ã£þ 'mœSbK¨ÑÅ)=q@3š>Ë㧉ÑqE=?X™p…2uŽˆ+q°|p%‘]¥TZ±Ù%iKÔÌ”WâzPÕä•qUQò W¨òJübeˆ‹Rg,”kœòFHô¾å‹¢ÌIIg M”âRoç^þqQ©<$i㢕Wòǯ ëè•Wb¹R\”õÎòàJ±qQWU@^)ÄD¤K%å¤ÅèÏBœ±9K¥¥ê5$€ ô…´Œ’*ø/¿„3 }±OYÏV,®ä1,iõ`¥Ãº2‚àJö“©J¸ªòJQóƒx¸bç!ðF™A@¹«¢òdh *”À8­©Ã-›ïy‰¢òddÆ•´zP9q™-Rˆ?Xép…¢eΓQy¥X\Uy¥=ÈEûÞ„Bö)ÂÊnÿörÚWMŠ`;Uô^É÷)Â$í«&mµrâŠb_µÊ‡+ÚQFÄF·¯šòãJÎE ´ëUJ^) WU@^qåXGÿçωz6êKkÛPå¡,[ƒÏ;£xåˆIPâ…TzÒ 9gL"KÑÍH©b,ð×®§$æÉP½w´áypE›'SYpÉ÷ WˆqQeÆ<ýW=¨:òJQ¸ªòJQë©’…P–¾ÂÍLî…¨ˆVrúƒ´­*7ûJÚâbt l! f踒èV:\Ñ^#›?XIq%ÕÓ!¸¢]G_åå•qUä•lzœ’6_Tžéf…ä_IíW’ùAÙ¦ãË"Þ.í<8d~2Ï®(¨PÍVF\!Ž…Tóƒ•W(ì¢Åm¾¨*È+⪠È+L,_ÔÞÞžÔƒyyy"̀”””   —S§Néëë“2GÅ 0aåÊ•oß¾e¸ArããÇK—.­@nääà[L«««¸3ƒ¸±wïÞû÷ïc % Ø K!Àp6»dq 7@‰°ç%~‹H y YB8®D*&¾˜½hÑ"Œ!‚6mÚäèèÈð$`&­]»¶Â›1qâDf,^Øk×ðOMåÊGÀÆHOOò¾éd‘§²" A 8…‚[Èk Ô™ ûn¤È”dgg“’™22ðÌŽ;–CéóçÏNNN@Í¥¦¦ ð)ìwƒBp*,,ÌËËëáÇ 4ÐÐÐ1bÄpÕ&ðNµlÙ²gÏž£F®ò˜Ð«W/555À–ŠjðaÃÆŒÓ¨Q£¡C‡V¾¦‚f—Qå€mÛ¶íÚµë¸qãFD¾¶#¤'p×ÀA  Á3fÌ8wîÜ™3g¦L™2dÈAƒ-Y²äÊ•+û÷ï0JжmÛ®^½ºnݺÁƒƒŸãÇ?vìØ¥K—æÎ;˜  .jjj‚J@ÉòåËÁ-»wï°e×®] X›àdã¥"²Ë IÀ ¬PWWïÛ·¯p”ÿg¦OŸ~óæMÀ=ðr΀¼nþÀYp àϾ}û@ÉÊ•+ÁYp èòÅ‹oݺ¥­­=ˆ ÀðÛ·oŸ?ðð\¬Vp `88 *£pøðá{÷î-]ºtÀ€ À±Ë—/_¿~]KK <Ü¢¯¯÷îÝS§N‘¯(£*Ù¾};8&îĉà¹;vì–¶B$ŸAã­­­½½½#""€½'QS œŠŒŒzÐÎÎμ€í›7o^½zõ¿ÿþûÊÐR‚V¬X:Pôßÿmݺ¼ìkÖ¬…äY•âýeË–·0à€¬Zµ –0€ÁãÿÁ(€AÙ¹sç† @3€¬ Û°DY ´X•ººº€“ŠªsñâÅà/¨t À'Q›lYGЙhãÆÊ…ÖóIÎz@ƒA÷ÁK „Õ‘#GNž€ƒòçÙ0d3cq‡ ådÝÓ§Oûôé$¶¢^"ÐÓÛ‘]&‡@˜»æ=yòÄBeÈÒÒpøùóçÖÖÖÀz·±±yÿþý»wïÀÁ›7o^½zÊŸ3¤’ôÃçÏŸFsww ¾9 ^\\,®Ùlv~~~fffRRRDDP…...À‹:ôãǶ¶¶ïU†Þñ‰ª\üT•g*d¯møD ÊËmP$ÜòX9éׯ_ƒ)0,U'è/ù(‚×¼¤Ÿ úNÊQ@Ê999ý&È™OäOÀpö§ ÉÕé/-‘Hððððóó ‹OKK#A‰)Ê °°°¸„@¯¨N___///P p']U†u"៮ªGdÇŨœ¹áBAÊ̺ÈÈÈQ£FmÞ#…³B€X`ëzzzz{{ ÖWe7‚ R+444„OÁª‘Ý'ÿ2$„àÙÅÆÆ&&&O0''x|gP|]?¹`\“••”&І@{ÆÄÄDGGG©$E à$øKª,+"Ĩ<¹!h€ð`D"•• ÔÕÕ] ÞD…W.è>xOc ï,xßT† Â*999%%üM¢‚’UƒÒ.^¼¨££œÐ÷d†HVõ—™™ ÜÀ¼¼»ŠT›*”t_ä'ÿ2ÀÝR%|n‹Vˆ—Kñ\i›[ ÒŠæÉOÊ€A* 8Ák¥¥¥Nf£)œâð‰4wU“Äw¤T‘Ž˜ŒÕ¬Y“Åb™››“S] C‚J÷Q}ï£þÒSÕ&±ÎJb ÅVç‚ …Oß/úuîRå"¦ˆ-ÝEO´5\Ùã@ÅA¢’rÊ”)ÑÑÑeW†T”H$ìÝ»—EÐСCI=Èp.IP6±WM,J‹õÍ:êïéRTú²ì¸W¯0!áÌñüñÝ?!WX»Hù¾È(¦P°%GIÑA~a‰ÒµüËMöððÊÛÙ77ÁÏÞÑG6iɥփʆäJ­É“'—…Äô†*;‘{«Ž5ŠÔƒÀ+ eà!Û5d°6¥Dˆ•S•Ê7ôr××}«[²ôèÕ®]—‰®qxÉã=ZµiÙ³Có®ã´rJn¶^Ô{Ð)¡[ ÎÍYtε‹û²v‹ qa$ìÔ^jX$ö¨Ü‹Çw¿ó+¸OŽ.Ò]A¤ÉúÓá~#w<¹zDW{“K ®æÜ~MMr`òßu:¿üÊWyÎßrŠ~}qrqرzñÚÿÌ€ÊÉp6íV«ÁôÕ÷sùͰ6\¾t›8Hõ¿xÎìÕÛŒSøºÅá™ÑT-½‹¦ßHóã™Ñô©sŽ]x…?5äqï6ž¼+ƒ?œ¨Ïª~à†MRrÌ/ÏPvfô'{çŸÖ÷-Üô#2ÛçÃysf}ôJ&/öx{u¾îÔÛÖÎäÏÀ/÷êj­:ý·Œç·iË͸fõz»Ô@oùúKQø—Žòì~8;~Ú²àŸ;v¡©AvkçOºúì8æî`g÷íâ+v\L"”*Gúw°JâJX*ðû8´"B!ßÇAªïúɦ†$~+–‘WT 355ݲe‹¦¦æãÇííí\¡ãJª^”u@²ÂÄÉOþòÛ=·0?ÖÿëÜñûÌœ Ý®›|%Ï.Új†á'ÁÅÉvFÕYÕ´twoÖÔ¸Ó(Ÿdì´Î ¡7þ»Vƒ»¼y×åÇ®Óß*{´° «~Ÿ »wö¯ËZvÚ&Áýa—ºièŸO-у+Ö6‰ó~Ñ™Õ`ÓÑkëæŒ`X ô›íÑùMk>zîX纬/|Zט5ìÚ# ÍÁûì~‡%X÷l5Öƒ¯ï®Ãbm>ÿÆûÓÉ!:FX’]·&¬îÃìX4®:‹5lâ´u‹&7í>(öŸ—W4ë=ú„‘¡Fãv[Ï|M °hӽ﵇´û° v>»±èÁ5§¿e¼éÊj¼ãü£+¦ýoÜÆ¬Â¬ušõj¶·Ó¢ÖuYjÝìÞ±ªa£focr-×b±j韻º¨Këî×§^"ƒ+©üA%Œ Ëüi‡^žª&®J¢1üa988ìܹS¸Á•´J\±ßK•Òèö•´Öľ”D¾»ªÑíoëgßòbÉîúÃ:µmßÏ?%ûûË;vzò64úû‘¾£v÷ä­èÕjÇEÇ+k‡_t*‚,†iî&õ*qsÌZ­>/#±+—{‚û;kGèíÛþÑ5ýš+ˆ‹=¸åðë›§N_C„U±¤q}ßýl7o@ûcÏpï2èù•Cf?¢?½·}ïä²S·]kýÛXÒë^-Çx”ÄEÃÔ‡ëûq° û½½¦^ÅRì{6lóŸuôhÝNÍwlz5éùÊ7hrûfo~ÍKOxrnIý~ ?½8ÁªÝÈÒÁ?>*øç¯ÐÂô?㻨ÿgŒ×ëÛÖa ±'µkuŸ——¹t`ë#OC@Eºc[¯¾ëêµëµ¯ÙR~ó®nµ×Ø®ù‘=Sq\•?X%¿— ÷ygÔëׯׯ_ÏàJ\Qù‰´©¤†PµÒ$‰ƒçµBšéWù)1~A”|TÝÚp妽§ÿ›7f×íX¢ [gR¯S¦W´ÿRÒ5 ³Ý;¶ýwÍ–•sÚõYe%¾îÙr -,ö1@Ç#Kÿ±¿ßÌÛXüÓãÖGäcXª}—¾Æƒ8m;äõïŸ:7ïg°f禵ÖoÚhh–^Xduãĸ^ÔZuØëYFÄ×íF8eaé!ïú÷îïݨýk\ð³\Qùƒâ"ÞMªV! ^q^¡:ˆÈEäªDŽA±fWU<\2¸‚× ™¨EÁ•DC‚WÖ–®$µ!gåÔa,µþzS†©5«óÊ3ÉýÅ~‹ÕwÈÐ~}z·mÓæ¿'ÞDú1?hœjÙWsTϦ}ç‚’#SÚ´ÏÃ’Þµd±V\}ÅëdAôÒQ,C¹WõÚï³Á½_¦»´gn{tú²iFó“a^œ·bÇõÌví[Œœ:«w«6£—=å¿­OUoÖYsüºí‡|‹É6Û>¢]ûn“uu‡ŒìÁj3íî;Ó¾MF»ne^UŠA›j½fîrÿ~ªÇ,c,΢ãˆeáÀ3ËøÑ¬e£Ïàù¹†Õim<Åë5ž®;½}CÖÙ×iÞ·:7bMÖ_2t`¯I»þ´auÚýÒõí±ŽjNŸ;Üô±¬ºí×›=]¨7ãþ/àæOÔh—¹xäÊîv¼ò±Ý¢2lº^÷†,½Ýx‡]ÌàJ=(±Ù£î€ÐZÂå­ oU3à.\€3òŠj8õ ƒ+™qw<å3À»ô¨2,Î@þåd9~|mñÌÚ/ OôÈËNðóötäáêæ•–'¸¾¸ 3:,ØûÇÇ׿3)q‘iyàˆãæìÃ|qRldv7#!25× Y© ñx535ÜÁñOvïÂܴĤdܯËI²¶|üÖÎM°!Òç÷Kë·Á±Y„ƒ™îôáÕëoΙy¹ž^îI Q ÄÌ ¾Ê÷jÃ]Ü}²ò²b’2±âœ¨ødü œüÈȈ|P#§ ."2»pi~X=µv&½],1Ôíéó7_3‰ÚRc¼~øâÒ;ÄùÛ‹7#Ò bC<‡'&§$eàk"âb"Ò²ñ•)Ñqà÷•Z›®»üüòŽ×r_UWÒëAÄøDš¡ÏŒÈŸ×'[ü 2R(qQWeepEÅ(Uˆ·K@)Ýk%œ’Ž8î9~«8œRåPçZÓ5IøBшÞFµÑŒX;é¦ôÍôèüÄÞ3ö¼¢z[UWÌü #¯˜ùÁJ+tÇý§lëúµo€;Àª)]$)·J¨x7…N•¾Lì„Ø .r!ÅÝ4\ÀDžC5{"\!e<„¸>ÎíW@X-nU WÂz½fÚUy¿ å!ÒÆUZ^‰Õ#Ïü ƒ+Ä-Ú¬-yâí äUš¢’=°’~ñ·^‘#ÞN‡Û9(¹px;¿íåoòs‘JUWðùAÄN)dGb…UfGÕä•òÌV%\aò- å–ý>E27€‹¶ž…œRóó ËÍ͈Oâ”>Íá ÍAÐ'3-9#·çÄœ¢”ÄÄü"Ž<œ„.¹ÊJœ³àJ³J‹Š3ùÙ)iiáÁ©9œ2]í¥„¸¡2ZG/ó µr ²Ã•*Ë+ZèAWRáJbÜQÜʽOï̯‹«æ>Ozý`¢3Ybõø¾1¹ó_ÀÞA“Æ´˜#6»f¸RûøãßXÉVcœÒsmbú.Þ_o°–U*ß«x”%Ï’ñç~6øÑ#Y<†)2•É‘<Èi˜ØD „»í_3Õèýo㽋7ÜT1\!åÉÀÓfP$dîL*¶pË`½3m{åÊü ÊâJ¼ke´Ž^EpEp í Ä'¥š –ʽ-‹ü+Þù—q]ǾÎDz¢ÿx…æç¤‡FÆDÿ6Î^ Ñq1o^6}óSàØ½µ¸~âìÃ$þ8’}>ž1Ó ¶úm:¦ï¬€„èõ3ÇýHÌXÚ©õÆçÑXêçî-:½ê2®Ù;'6Ó>üü4? 9~Õ›KË{ZEt+jpçÚwxÞ¸ò©ƒ€-én§›°ºÚ໑¦.ï]}â¡?XžCû-{4o×m ¾ÀÑ=ÚÏ÷sî¹Ï9Ïs¾~ûïû€Jæšù£‰˜å9'}ÇÝ ºÌG_[Eû=õÎ]f½Åõ ñl¿Óñ¾Vö“Ã×wõ"C÷ Ü8²Nk™]TR¨ùB3¸™EmnÔ²eúÿ<¶vá”›UàÚΪî˺‚+8Þõ"ôàg¯ÅÊw¡Ò¹âºÖÒs‹ùlÓÍy܌ߊ¹C·G§nÅõàÑÛ“Í9ê&‹ÉYX0,Ì Tæ­ßé@“|áö‰…ð÷Yc÷××¼´5вX«7Sï8÷·a^‹T,vÖ°ß­Y¢¡Ô§Û8ukÙEÑ[u°ÞŠ«×9Z­Y¹tŠ÷.¯)£u¸z3'ÐHß+ ÿðèâæc-?!}pÅ{´^Ì·|H8£ovA¾å7%­:ºá åC6jY†zðÔƒ¯³ãõt?‚R8iN8™õâìšùZޱ¸\Ú£çžT˜{’zÎ'(õiÊöà éÌ¿L†Ö¸ˆ|ø“P‡Å^AW¢Xu¬ _eò¨Áz¥ø¨y‡´ÕÉ匩†œžq–ÑT»“…·Ž-Õ¶…z°:+Bo±óÅ3‹…SÿÂGg^;zÀ¨>}6ŸÃ=Oöûªšú>>¨k6éòI†Éʤ {3«­A­çŒß4ÖG—Æü®¤â¿Ïaøxw¡¼ †k9d¥Ä$d–ãOa5[iâª@÷Å¿j:Á)}.:â”xéˆÜO#c‰òžpãY ÎzÐyÔX§ÚÕÉH«N ýé'¯@ë×É \Ñ0Þžl?a¾%Ôƒg¦»¿|py†ºF¡׎p³ä¿é²£/¾ø°Á Ã€Y~þž¿b=×mc¾Mó•ÕJ¨"oÙ¤'‰=š‚Ì4¬vœËO –8ÂÕ{‡®– †ÉDæû,ëx0±qâ¬âØ© ˜6ÃÃvé„^t^áÞ¦1‰õñþ‰™3çä®PrÊN¶ÍE ›†;•E—6öh™×êX\ÐA½·WÔ: þ ]÷’é?Éõ2rÚ¼jÖxYe;üŠ`K•nr¿Ý«h¼q‘©f¿1:–Û—ÿ0hZ\AC3ÿù#ºbªá¾!cÃVulúêͼ›:ºï¨E–ž‹þÛYõVÈ:eÔ£·ìîP}͉³íŽU”Þê!¯dè´ÕN{šüÿLß°A ù¾c4\=]vÃf¸GÂgóøc¸ $J­©e¡ü óƒû¼$Ìã´YŸÊ~_ýƒí W’hU©\,‰}%ªu×B½hIÊLÅãÎÖ»Ç72}ª,IK»YEìÜäk¥µàãÓÐ#QL\5²®ïvpv ¿VÉ£¸«‘fmÕ½”ëÏßi¹Ì´¬pµÆN<dkë“üð^ldÄùœâ‡7ò ëû8DÏE93e“‹½ó&Ÿü2Xó<ÿNJ̳±*ž§ßL¯úXýàFâK"ƒèb2i¨Yô% cfŽ0„Œ-uÜýmY9iñÌ·Ð+{’yûN.þ¡(㪛½Íúm‡ž®òñõÍ| ÷õlÿìØ¸ÞmKרï¢.œ*"úûŠïǧÞÍðÖU›nä²w—×–}¡Ä"T—dïðp¶sÙœÌäjÓ÷ g÷ØÛØzî;U÷Ê•yÉÞ.ön[‚˜oˆÔ”ŸÞëåà”|#1£×Ñås•d¼“`¬”ÅæÐW_Ѥj»ˆ¾O•g ³¼úŠþ`»Ç u_jý‰8gë£M¿b³Xü?oÚã×Ð?ÈÓÛW×X)è‘ÚñøúÙ ­‰,_[â‡Ãvº}º ½ž •Ý«[·‡§4*”ÆÙÔ±Ø|ã×V÷e46·_’¯°ñʆÉ:)4 Ìø2ÿ ×$ß*±ùŸd²¼rÍpÕFùA B«¦c¨ËOrñP}›çé‰+:øR‚»ôLìÝZa°§n‹rš±YsHسõ=Á?e~Ö‡/fp•ð[7e‹kÊèÖ"¡ÿP÷NN¼ÿ ð1–ò ΢ÙpMÇdÝJHÊyREsÔQуè@‡äGs=ˆêêUhV/s¨íkÙª¼µ€2__³GiØêòîŸÒš¦ß~ÙƒpIBqwŒÕÀtÊeËNJ ãµ^—#ñ¾–¼{Rph…«¦#H—g[B\‘·QKWÂöKÂöÌéñšlíWÍÏHeÞö+Q劷s„m§¤ÍSÔñvñxŠP|·ùÁö‚«/,ƒ\{I \ñÝŠ°ëè(¯Z‰WòŠ"O‘PÝJÝ™jñî Í믄 ´¸Òµ¯Z¼PF©æï”ŠÉ--ûJŒ÷Es\‰]/Ú~qŲ'!öêï ÌmñîfZÿ!å”ç¥ÁñŠh+¯ZÛlßòŠ\Ë]~*ý8¢ò3P·¯Hˆ€$±¯Dò@[Õ¾’?ƒ¨}^´Âu>šàªI=LѳÎùxŸåR949Øu<…X,Þª,»Žgì:¸3 {ͰNÓMN7ÍÌÓK^µ%Ïv{’W€ÂëÒŠbqûRIf$^ý•„q1Ê<˜ J®ÈaWyÝá^ö8Êþg¹¡‰0gúOϽC1#]ezLùA‚Ïò£õp×Ðnö/ö'ò®¼O^‘wГ›Á"uYŠQ‡LÓ&WëB“>‚n-4ÈÌ!%Ú%ùŠÄƒ I0‘ÔSÉ[Qiz´È³`äMÊWW<'á™Â‹d1LÇÌzɬq½Tþ,ÀzJwÓ“wwŽì‚aØ/Jª3UG*L5Í~õÚm‚²|o•Õ«fËvÅöÆåñäßX-TÀúMYkªa}öœ| @õåN&¡L„+$¯D•W‚êu© H•¿]ê\ ’·QùßÂvp¦ØI$ê«ú_ Däo'OCS¯9Ôö@¸¢+®ê/ËOŽñßµÍïÀñ\‚þÉÃÛeU¯r$ÿ}=îê•èË—ÎÇÝ,ƒ¬ºå1'öûùLÉyÁ36_ý\vh箽×9AvÍãìÛåŸxã¢WH^‰$¯„v=“”ä Š$“û -š=T45Åź>$MÅŠ#ñk8¤;€£NP€¤ø„z“,¶=ŠPó’$ž€p…pEWþ¼¡@fú–¢bœ–Æà%!lá É+êòŠ¢eB…ˆÙW’ØWBÝ¥Ö¶¯D*ÂÂe\)ÇHÓAÉkm2Â’WË+€êÛQ½¨Xú&®®®¾\qwD’,¬N´ygŠ Ì×'’-Z™R OJ¼8õé©ò‹"\!\!\!\}_¸¢h ´øBkâ“!µg8ˆOá á á áªÍqõ;g£ endstream endobj 18 0 obj << /Type /XObject /Subtype /Image /Width 600 /Height 170 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 1182 /Filter /FlateDecode >> stream xÚíÝnÚ:€á½ÿCŸ³¡Úñ!G2âû¶Û©½ø§%vœ@33òæçãf÷ÅÝÿ}IL¼ÕÑu¬ÔqûôßÇÛŸ7?´í¿þ!cܦ½}¥}Òî¦Ü>ûïï¾?^y„öIn¿ºò·‡Œþ¼ÇýéX¦£Ýb·ADÜo%í¦OüCòÍ‘÷wÇÿ¬ï<êFÙžêxB»;ˆòÕ‘g:RDzæ%:̯ŒƒŸÒa;סC‡:tè0o7oסÃõ¢Î×ê˜uÞÙv®C‡:tèÐaÞnÞîzQë‰_Ùa;×aeå<Žù®:&w?t\1o/ƒaŸêµó;±½Øµ\©ã qÐø¡C‡ëíÆAï/ 0‹ñCÇÖ}tX¿²¿²¿²{¿>ë>:tèXÿº¾²ßŠ1ïFÕÌ:ÛnÚ_â¸}SŽ=tæn9¦Y(úÎy»³¨¯Í?ݼ>dÔé@Ö¯ÌKt˜_ÚÎuèСC‡ù•yÉw¬3Àlç:æwÄøÖþµKpÛ‹±¦ZþFÚ0_ŸÒ¯çQDë}þ.ŽÝßÎþ!ë kuØÎu8ã<ÎçtØÎuXo·~å}ÕŒ:tè˜Ùñ¸Ì_Hjf endstream endobj 13 0 obj << /Type /XObject /Subtype /Image /Width 580 /Height 360 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 19 0 R /Length 31597 /Filter /FlateDecode >> stream xÚì½ß¯åæUðï?!*­(¸ R/0jIËûª´ÄiA¥*㪅4-†ô‡â·¥ 1¢ï…ÜXHà D,!Å_P±¸0HX‚šLõ­;§A.­£â’ºÉ8·©â6ž9ž$ž™g’ó>?ükï³øì³÷9{ï³ÖE4{o?^ËëYŸg­gÙ9<Ù"yõÕW_yå•Û­ ]výXöï=Pg¨Â†4šyëwÚt:Ý÷Àfºú⛲–È€åU*Û 2öoܸñòË/¿øâ‹UUì¬T­à_¿~ý`÷ex;ð¿¯]»¶¹„OÞÙpjèµöf±N©=“ꈀ€¬ÛÇ00nÞ¼‰‰†y±µ »uëÖK/½ôàƒþ>•öBÞö¶·=°_"Šâž t:rÇw<°ïr×]w=²1Á\À€¸ÿþû1Ñpâ³…Ù¾$ 2ÌÜçŸ_ê>UMåW~eÏêÀúЇöl Ó‘·¾õ­{¿Gðîw¿6J@6-÷Ýw_Y–g8;Û¤ìÆ/¼ðÂ3Ï<ƒá ,Ûf¹çž{öl `Ùºä×~í× Ò‚lZî½÷ÞgŸ}öÚµk8Ú¶Ô ã'eßûÞ÷â8Æùã>™ýïxÇž9Ò?øÁ=ètä-oyËÞ™_ýÕ_…H r «Ü§žzê?øA]×[Ȳªª²,ûÏÿüÏO}êSûdö·¿ýí{æHwß}÷ž ,[—¼ë]ï‚H ²iùÀ>€³žçž{îå—_ÞB–\¹råË_þòïýÞïí“Ùù—X,;',{ç;ß ‘dÓò¾÷½ïñÇÏóüÅ_ܶnF̲k×®]¾|ùÒ¥KÀ²-—ßú­ßÚ³€eÀ2’ .|å+_ùÎw¾ƒY¶myB³ì©§žºxñ"° X,–€Ì“÷¾÷½Œeׯ_ß¶¼ ³ìêÕ«˜e_úÒ—€eÀ2`° X,–Ë€e À2`° X,–Ë€eÀ2`° Xv®XVy–—ËŽªó,+*´…,K,‰ãİÚ&–Õ¾¦;Šö–eu$b£›1°lg¥²±rR\ƒ)€eûÁ²Êà±KK`V…ø(^·e±IÂj´e,»Àqöe‚m•·ËŽÅ22o6°–í+Ëêª*˪ž•Рzð5ªËyÇm–eµE¢’YM^ýÿf Vl(>»9¬žwÉX»áoøÃíèYFë}l–ÕeÝ,›aʲñyÙ”­Fþͱô:m–!t|•€e rG|´²(ËÆ.Ïâ†˶…eujÊ׊bx$÷©…çÓ±TâIF„¿C¡­v‡ ’ækKû—°¬NT¾ÙN°[W¾©ô_ÉfZã£ìî(^²ðA¨ˆôj¢b$lFÔ1ÖNÒm“jG~Òœ$våöïe3`Ó!uTŽ—-ÇÛ“¨V8f¦,cYÎl®8éL]IMRáx^hD畸š3J5|>AMú‹Ëu‘ç-C ìгŒhÚØ¶5¶ƒÕVçʸ?/š~:fE½‚^eYl?âe»š¾<^ÖÝ‚|Y˜Ïáëé\e¹oz,;±D¦ŒMmFåÔ7VÜÌèÁ,—¨˜fYËCŸ<¬2­j†¿u7Xv~X–ë< þšmé,b+nvX‘”!>b‹}!¶¥JôoD{]0[Â2”·C ²¬úY92©ŠeÛ‹±¢}5óU‰jÀ ŠîU‡¥IÁlL-vÉ©›}"æóª®‰½¦¢ª),d›4¼Æ¦ÔÍ Û6ØO’¬Î22|nÐ!Íßfê‚¿OpàÅ¡‹$µs|F¥¥¹4m ¨‹œVñÐB;t,£—×ÿùh ¡Ö×M£YV¨Þ’辚^›cYd1%”˜®Õ\µñ{Ãl—r2±‰OÖœ-Ò;3ËN*E Ó)çw>BÇ2^9¤Ô[ð43ñ4S›PC'ËeSYvE[0©Ëν¡À²s²Ü׸~¥Š½Íkbuì(V˜³)MÝKô›)Σ°®"öˆ#¢5F«f~Kâ¶4£#:èî0­16{ýUD3·›IDUæù ËD±ªÈ`XKêþ£D—Œe}PæÒ #'Ë&É–Iq™±OÔ|´X—^R6M'Y0»ì.P„ºÐy¡,“æ±,¤èUÝ6Ë=òYX¼w¹¢^›`™dE‘£°[Ì@”:nOÒ1ò…›#¶Àæbð ˜׺Íy~kŒ(‘ÙôAý:AÐüƒ§t𢓅¸[á,bY·ï°à†ËÎ Ë"ƒ­Æ«¾¤aœ3·ÁHÝÄI“¦dý¾C•Å~•kò”1½¦Ø­Áš@MÖ`¶&Yß·XMz;"Íi¾g³„‚í¸Qíx=þ•h6U޲,›ƒì‘Ó,߉žÅ²A¦ËÝçêÒV÷Ì&‰óÑâPªô‚ý[Í—ÙaËš´Îâ$&’$Ì-ߎ_M¯µ³l`t1('î…¨{I«’«wii®ñv3fÆl­ù<ï—4íenÆÖ v³.D%ñÑû¨ë°ÄŠäG±lá – –±ÂWXÎ^Ðvá½Nì)–­Wưl¢÷£JÁP¿5áí•§ñÁâYϲN»©92É2q¸\U(žh¿L¤Ñ»)¯Q³ÏÕ¥Œ,¶: ŠñF— ‰M×b;t,Ë(aõ¶ Rk„š>¬ÚÕ‚Èz‡®¨ï—­¨×æž•Nm¹Ë‹@£%©>ábyb‹­¦¬Ê `Ùº$išpHiÜ­b;NçÆì™²M²Œ¦xmåÀîªåËn(°ìô16+"N1ÝÀgA‹Óp”™Nç‘Ë6Ï%Ýý¦v$»ëÚXµ_&І2ÝNÊšîs¢jEIz퇣ó‚y» ›^|•utŠ„ž­óm?¢ÛîŽg±å…Úö%kù{$÷äc °¹ìst)’vÂóš¦*ŠŠE‘U/«Ô¦<œêåmN½ÈËjª5]ûŽÑ Î Þ´C` ¹A8Ê(# ÕôÚdO~¡7­&iÛAÇIšE!{ðd°TëÍ(èY–O ¿q®ϰÍË Ç|Gº¢tP Ÿ•nƒ•l8×.7Xµ|Ù –í?ËÈãeÞ°Ö¬˜AÝz× §ñŠ0xþÃHÖWŠó+úTSGE¨LlÅð†Ïöç›vw|TyX9êà¡*Íj<ÿD·Q¦ö˺ *+éû%YœÇ£÷ŒwX‘¼ ßh‹X£•âÎÖer£§óÈfÓ•Øö9wË€ùv wùÂÃ̵?ØVSè£ ‰2ßngàÍÒõîjzmb¿¬Ãnû"éëÀ—§/OÔârÂŒB³ØXÿD>÷ÏJ³×Rõ>óôÁN¬ê8ì#TìàÆŸ‹Èâ™øvû‹o(°ì°ŒÍrVf.—E(Ò—åE¹æÌ}ä»…}ƒD×?PdIœ`I'/Ueÿê€2ÏÒ4k/•Eq¬—–4ôˆ(MY-”óÕRótYÛ@#í@_z™Ï~¡e]âS¤Y^¶¿"ü ö†#B¾,ªÕô:Ýw ãË£*G¶?K_ØØJðÞ9³;gþ…w+‹²ší‡4ï†ËÎ ËÎX¶ö=ù+¿Dñ<¼'?™ÓàÈqGÞ66ZÎþ=ùu‘$±­ 3³``° X¶‹,‹hC,;-9s–Ua[ì’ì -îe À2`Ù©/ÒÓ(JVx$X¶£,;¬²À÷È{66° X,Û–í*Ë6/À2`° X,–€Ë€eÀ2`° X,–Ë€eÀ2`ÙIXvíÚ5`° X,Ù]–ݾ}³ìòåË/^–Ë€eÀ2,{ì±Ç®\¹‚©qëÖ-´n¹Ý 嫯¾ ,–Ë€e k—÷¼ç=—.]zâ‰'ò<¿zõêµ ÈÁÁÁ‹/¾xãÆ ÌJŒ§c±¬Û/{ó›ß|ÇÉÿðß±_òš×¼fÏu†ò³?û³+ÿíë^÷º;@@6,ozÓ›¤¢lRþàþqýúuL4L¨‘ Z×ûyäeûš—íŠcCnÂäþûï/ŠãìæÍ›Çeô~Ë€eÀ2mO|âW®\ùÁ~P×õÈJ#fYY–O>ù$° X,–€lƒÜwß}qçyŽS3 ©1Òí—AX,–€lƒ|üãÃð™gž988Ï2ö|° X,–€lƒ|ô£}ôÑG/_¾ŒS­[·n‹ePc–Ë€e Û ùÈG|ßÇ`*Ër$Ë ÷X,–€l˾øÅ/>ù䓘e7oÞ–Ë€eÀ2`° X,–€Ë€eÀ2`° X¶Q–UEžåKÿÇõužeE…Î\££ˆI,‰ãİÚ&–Õ¾¦;Šv˜eu$b³š1°ì|Éö¹.° X6Že•Ásg,Yâ£x=ÜB–Å& ºÑ–±ìÇ]Ø}– Æi«,;s–m›ë˶„euU•eUÏJhP=øÕå¼ã6˲Ú"1ˬ&¯¬"R¾‰F6D«ç]2Önøþ0G;z–Ñz›eGuY7ËfØ„ñ‹Û)[ü›céµ~–!tü‹–m›ñÝSp]cYš²Àµ¢É}êDá9Åt,U$éP„¿C¡­v‡ ’æõº.a ËêDåû‘íó òM¥ÿJ6ÓewGñ’…BE¤T#a(©c¬¤Û&ÕŽü¤9IìÊíßËfÀü>uTŽ—-ÇÛ“¨V8fJ,cYÎl®8éL]IMRáx^hD畸š3J5|>AMú‹Ëu‘ç-C ìТicÛÖDØV[»+ãþ ¼húé¬¢× YÛÄSxÙ®¦/€—u· _¦ÄsxÄÎyQ¦‘;£gÀ²³ÁÔ"×e7q0ûe'*6ïº »È²\çYð×lKg[q³ÃŠ”£‡øˆ-ö…hØ–*Ñ¿íuÁl ËPÞ)ȲêguæÈÔ1˶5樢}5óU‰jÀ ŠîU‡¥IÁlL-vÉ©›b;snU×Ä^SQÕæ÷& ¯±)u¡Ð¶ ö“d'«³Œ ŸtHAó𧙺àï–q¨Ç"Ií\ž±ÝÖ„\:ã骃ñß"§U<´Ð]@ —×ÿù#êXn‰nͲBõ–ÄþÕô: Ë"‹]¦ÓÕ˜«6žm˜íbM&Zû$trzP´‘¯3°ìl`6ßu1§d6ýL<ýÔ&‘I´I×ÙE–徯õëX¼hõš˜Cý»€æÌ%¨‰~XxÖÕÉ0¢ÆˆhÑ¢ô¬©ó A3:¢þ.‘•6­16UD3·=CAT̲g™ÈâY kIÝ”躎±¬³Ê\:ädÅç°LŠËŒåx¢æ£Åºô’²I¨8É‚ØeóªÏ>†ºÐy¡AšBŠ^Õm´¹G> ‹÷.WÔk5–IV9 »‰,ÅC©3áØ$#_¸9b¡„Á+`†:æF&°l2×u‘§´ðb“ˆ¸"]ùlÐuAv’e‘Á–4U_p‰‚0Ι?à ¤nœÍ¤)Y_®²Ø¢rMè1½¦ØFàÖÛÉ’ÛvÃ$ëû«ÉÝDšÓ8 |Ïf«2¶ãFµãõ`øW¢ÙüU÷ʲibB°GN³¼qË™.gtgœ«K["1›$ÎG‹B©Â8KŽcÿVóevš´Îâ$&’$<'IÊjz­À²YÅ œ°¶¨{I{ѮޭÞsïÀš1Cw¥,[o™q®ë¢’øn‚}×uX~M õ›t]]d+|…åìånÞëÄžbÙze Ë&z?ªÔlõÛX»'•§ñÁ¢]ϲN»©=—I–‰ÃeáaÛZ”e‚›µ!|ž.ôž³‚¾ÖrÄ@lŠÉ‹hê!5ê‹ì0? LœÚ„Z~†,ËÊWÒëd,ëwIÚ’ø´èÔ×™²:¾‹)1”püÆW`ÙzeŽëæÉOßCiËNìº »Ê2ÎêKf( Û+uéu±‚ƒâÄesÑ9¹è8)興j'h^@o »*`ÙYff³\·ÝÚL/ÄÞW7K”é¼lí® ²‹,Kl’sË]3uÒ0ÞQîÑ”Ñõ’>í%Dkjþϲº7:žÐ*:]ržœm˧u;YèV—hÕÇc™DW‰í‘U(žh¿L¤Ñ»)¯Q³ÏÕ¥Œ,¶ ŠñF— ‰V5QFžm‡. d”°z[¤ ©5BmÓ€bw:£„ ˆ_¼é°¢^'yV:µå.×+Öû„‹e‚-¶šê¥Ÿ^ßce떮ˊÿ8uÇЉ#Æh£® ²“,kW>œbºÏî<§á(3ýØrÙÖº¤û¡ßÔŽdw]Ë›QûemnÒí¤¬éŽ0'ªV”$¡gÑ~8ø2s~A6½ø*ëè7=[çÛ~D·Ý Ï2bË ‡5íKÖò·L,îÉÇ@aµ¿˜£K‘Èm¨Õ4UQT,ЬzY½x 6åáT/oãÁ";t¡¦ZÓ5°ïÍà âM³¶D£Œ2ZM¯“õäzÓL’âÇ ‘4;ŠBöhÉ`1ÖJÑ• ,;9êº]^f8~à;ŠÐ«ƒjƒ® ²›,#—yíÅ êÖ‹ú%š›YŠ0xÎÃHÖ·¸ó+úI³åŠP™ØŠá ŸíÞ7íîø¨ò°rÔÁCUšÕ4üÝd™Ú/ë*¨lspØÇ(Éâà<νg¼ÃŠd ýF[Äúêw¶.“Û@˜G0›¨ XÎ7(ß-°¹Ëfv¨ýÁ¶šBUèL”ùÆpÛ¯h–fä«éµÚ~YÚg I_¾ux¢—†šåÄ* ,[¿ÌpÝÃÌÓÛ\ªã°|PlÐuAv”eÌX=¹\v›I?\–åšÝaä»…}ƒD×?PdIœ`I'/UeÿŠ€2ÏÒ4k/•Eq¬—–4ôˆ(MYÍ~”óÕRótYÛ@#í@_z™Ï~¡e]âS¤Y^¶¿"ü ö†#B¾,ªÕôZ·cã  ]Ùà,}¡}â X¶Í‚ªœùjܰ,Êê„® ²¿,;cÙÚ÷ä¯üÅóðžüdN—ÇyÛØh9 Ç®‹$‰mU˜™çË@@€eûDzˆv0„À²Ó’Spì*lËV’½rk6° X¶C,«‹4Š’ –m-Ë«,ð=ò¤ÿ Î,–í˶1À²3`° X,–€Ë€eÀ2`° X,–Ë€e À2`° X²Ënß¾}íڵ˗/_¼xX,–Ë@@¶Še·nÝ:Ë /–Ë€e [Â2œ^=õÔSÇbÙÁÁAš¦—.]ºãŽ;~‰Ê[w_°?ò#?²7ê0^÷º×‚:§6ЩÙíµ¯}íö{¾¼7¼á {cöN~â'~â­ ç@Þüæ7ÿŸË'>ñ‰O~ò“xñù»¿û»ÿñÿqåÊŒ§ãæeA@^yÙ^æeoyË[`¡{Vòö·¿ŒpäÂ… ²,cˆ<ðÀ>ø r|ùô§?ýGôGþçþ7ó7ŸûÜçüñgŸ}¶ª*„F½W‚±ŒåeÀ2`° X²‚¼ÿýïÿ“?ù“?ýÓ?Õuý/þâ/þò˜òÓ4ÿîïþÎuÝG}ô[ßúÖóÏ?ÿÒK/aHgÙSO=,–Ë@€e + Œ¤Ï|æ3ÿðÿðOÿôOîñå_þå_<Ïó}? Ão~ó›ßýîwnܸñꫯË€eÀ2`° ääƒü eYŸÿüçƒ øêW¿úõ•äßøF’$W®\yî¹ç®^½Z×õȤ X,–Ë@N.÷Üsã8>úèO<ñíoû¹ãËÿPùþ÷¿)Fþ§’u™”z?pf,–Ë@€e «±ì³Ÿýì×¾ö5 2 £—W̯7nܼyóÖ­[˜MãAÆX†Ç…g¥eÀ2`ÈIXö¯ÿú¯ßøÆ7Š¢ù¦Žõ ¼Ã X,–œœeŸÿüç1Ëžþyœ[Ë€eÀ2`° X,–Ë€eÀ2`° X,–ËvˆeU‘gy¹ì¨:ϲ¢Bg®ÑQÄ$–ÄqbXmËê_ÓEÀ²1²¡;,;+¹?ÌqÜÃÑu`°ìYV<ö;c ̪Åëá²,6E £-cÙŽ»,'ºƒÀ²³eÙCQyxÎd¿YVWUYVõ¬„Õƒ¯Q]Î;n³,«-H³š¼²ŠH=ø&&GѤÝjò0ßœKÆÚ ÃæhGÏ2Zïc³ì¨.ëfÙ ;P–Ï˦l5òoŽ¥×N³lûËNKèÔž¸=Çe½½hL±·,«SS¸VÃ#·¶NžSLÇRE’‘ÛB[í$-Ìëu]–ՉÊ÷#Û Ž&•o*ýW²™Öø(»;Š—,|*"} š¨ DuŒµ“tÛ¤Ú‘Ÿ4'‰]¹ý{Ù ˜Ë¦ŽÊñ²å˜b{Õ Çxó2–åÌæŠ“ÎÔåT´Žç…FDQx^‰«9¡TÃçÔ¤¿¸\yNÐ2´À=ˈ¦m[a;Xqó±Œû3ð¢é§#l°Š^»Ã²áœmŸ:sâZ^wO*ꢲm§‚»Ë²*¶°a%=D5GhM‡¶4 ªÔÓ,«ìjp§ðì¦Ãð ë }À²õ±,×yü5ÛÒYÄVÜì°";)C|ÄûB4lKe÷U´×uG—° åí‚,«~VgŽLc†bÙ¶Æbˆh_Í|U¢ð‚¢{ÕaiÒ_ðS‹@rêÃfŸˆÅU×Ä^SQÕ’L^c³9—ñI ö“d'«³Œ ŸtHAó𧙺àï[åq¨Ç"uÓhÆfM;r¾]u0þ[ä´ ¤‹ìбŒ^^ÿçø§>íc¹á‘nͲBõ²ÅXM¯`Ù‘;8×>(¥,—âvž:±ƒÀ²u']lFËÝZ.lM2·™é†e›šHo–S,3iÙ§ìáhvÓ¡tv…Ü^±ñØ].Lî%Ër_£º]^sh(Ãw× sͨ«ˆ~3 YxÖµ>¢ÆˆhÑ¢Q¡¦q[šÑš4bУhÒl¢ŠèºÙmÏPU™»6ž/;Ð`ΞÔýG‰¦$Œe}ð¼àÙ”YFñ9,“â2c9ž¨ùh±.½¤,>*N²` vÙ¼êç2!òB; X&ÍcYH·ê¶¹Xî‘ÏÂâ½ËõÚz–½ƒ‹ìÒå¡Îüì¡MI·µLµÓ5F_®å2µ55›ZÐx+Štº"¦X6µ…1`Y®‘KA»Il…Ƈdwmµ—,‹ ¶ïî!Ê¢ ŒsÊpR7qÒì ¹×YìQ¹¦Y9¦÷c¸pb'“†í†IÖ÷-VÑÄ~"Íi¾g³3sWªßU$è_‰m凹1S–Exs‚=ršåÍl³X6Èt9£;ã\]ÚêžÙ¤>Z­áKxQ¸[ÉönµìxïG“‹ex"PïrØ *#U8âþËX–: ›MÑfÆí5w·¡uY6œ_( )ZõñX&ѧ=’Vß/iônÊkÔìsu)#‹ušÅø £[‚ŠV5QFžm‡ŽeÏz»­Rk„Ú¦ÑÀîtF A¿x¿lE½¶¿÷ãÈ\f6w˜ÎƒÕ °lý2w;S“¶A);hoNB×Q,D XÆë¶w3V 'e D[xµkub {Áˆv×PûÙÇØ4upŠé>›”œ†£ÌT´'mrl÷C÷C¿©Éîº6±Gí— ¬•ÈNÊÚSXÓ¡%IèY´N a˜î|‘þo/¾ÊŠ‚â¡gë|Ûè¶»ãYFìcyaà°¦}ÉZ‘÷ä·½U‚_ÌÑ¥Hä¶ÓRÓTEQ±(²êeõâÚ”‡S½¼z‹ìᬦZ“å‚ç;†ÜÆ^úSÂè#nŽ2Êh5½v¥'pÑ2ûtEÈ&S–mLÊöá™®r‚ýæUš„~÷ /™i5ñ|Yн5/ð´¶–ÌJîÍί zaä73ˆï÷€e[Â2ò †7ÜPÌ n'„A¹¥ƒÇ…Œd}]©cÞaE€júiQ*5pÞðÙº©i–ÆG•‡•3(”‹še5ž¬—´qj¿¬« ²ÍÁa£$‹ƒó8côžñ+’÷mëTÜÙºÔ‘4«HoyÀlz 2`à|·Àä._x˜Ù¡öÛj }T¡3Qæüà2ðŠfiF¾š^[ý«9wp©}Øã ]¦ ,ÛœdžJ³¨þ™¾Ã2”N¨Û6[lhaÙ¼Ã*¾Î–°ƒY"YŠY[–®6±UÚtw˶Œe,ޱZp¹,B‘~¸,/Ê5׊G¾[Ñ7HtýE–Ä –tòrPUöÏ÷—y–¦Y{Á¨,Šc½´¤iÃFÄ@i𿣋äÇ|µÔ<]Ö6ÐH;З^æ³_hY—øi–—í¯ƒ½áˆ/‹j5½vøÝÂGìÓ/ÃhÁCó·=îï{?ªœÞšæÎ ªÀ3a†“·¹Îu²M†ÏQÔ»ÿæxãædkß“¿ò+øÎÃ{ò“9 |'éòÚ³÷äׄ垼ݕ–ËÎ;Ë"ÚÁËNKöŒe´£Žn_ºÙö_-° X,ÛW–ÕEEÉ „Ë€e‡ä•‘çyA¼Û+À2`°l_Y¶ýˆ–Ë@€eÀ2`° X,–Ë€eÀ2`° X,–Ë€e À2`° X,Ù-–]¾|ùâÅ‹À2`° X²‚|èCú·û7̲¢(nÞ¼yúpûö탃̲GyX,–Ë@VøÃ_øÂžxâ‰ïÿûgβw¼ãwÝu— wî¾`-^ÿú×ï‡.¼á oسNG^ûÚ×î™'¬]~þç~CÓðŽ;‘wKÞô¦7Ý3B0Â$Iº÷Þ{ñøÒ¥KO>ùä /¼pëÖ­3aÙµk×Ò4}ôÑG!/ƒ¼ ò²ó)ûØÇÀ Cy÷»ßýÀ(Šò‡ø‡Ÿþô§ÿïùã?þã?û³?3Mó³ŸýìW¾ò•gžyæêÕ«g²W^y³ìé§Ÿ–m¿Ü}÷Ý{6° X²rá ©¿üË¿ü«¿ú«‡~øÿ›%ý×ý·û·ÿ÷ÿ¹Ï}î±ÇK’äþç^zé%œ"I^†1ŠYûeÀ2`° „ÉûßÿþÏ|æ3ÿøÿˆ9õ…/|áÿŸ#/^ÄûÚ×¾ö­o}ë{ßûÎŒnܸñꫯž ËØ~YÀ²-¨1Ë€e §þùŸÿç8?þø7¿ùÍ'çÈSO=…S¡gŸ}öùçŸÇ «ë3å Yy° X,éäƒüà¿ÿû¿ýë_ϲ sê…9R–åÕ«W«ªzùå—oÞ¼y&ÕÅŽe¬÷ãÒ¥KÀ2`° XÂXö¥/})I’¢(^z饛³äÖ­[¨•³JÇ:g¥eÀ2`ÈQ–=òÈ#8ÍÁ€À˜Øþ †wXË€e À2™,ÃicÙÙæ\À2`° X,–Ë€eÀ2`° X,–Ë€e À2`ÙFYVy–—ËŽªó,+ª³ßý<Š˜Ä’8N «mbYákºó¡è¼²¬²DŽÌj§& ° ß8;.'Å5p X¶s,« {¯±fUˆâõp Y›8nŠÑ–±ìÇ]8Ç,3e»É2rã6°2–íËêª*˪ž•Рzð5ªËyÇm–eõŒ%4ÂWe°8C19ʈ&톫ç]2Önøþ0G;z–Ñz›eGuY7Ëfزl|^6e«‘s,½¶-/£oW“óùcÙQÇ¥7nüÊ¡ã;.°lYV§¦,p­(†GrŸ:QxN1K%NcDø;Újw˜ ia¾¶  ËêDåû‘í{på›Jÿ•l¦5>ÊîŽâ% „ŠH¨&*Fœ¿Ž±v’n›T;ò“æ$±+·/›óüÔQ9^¶SlO¢Zá˜I±Œe9³¹â¤3u9$5I…ãy¡QžWâjÎ@(Õðù5é/.×Ež´ -°CÏ2¢icÛÖDØVÜ|,ãþ ¼húéR¬ ×™°¬læ+ñØD¿ FÌC[â§½=¶d¬¿Ý)BSž°°ì˜òfTN}cÅÍ4L}Ù‰Ši–Õ±a…9‹fÔ“ð’µY¦Óð(¬«^=¢Æˆhرjæ¢$n A3:¢.O7‚iQ4é"­Šhæãv“†¨Êœ¼a™ì@ƒa-©û]é1–uöA‹xr²l>Ìa™—ËñDÍG‹ué%e3Rq’±ËîbB¨ ‘ÚaÀ2iËBŠ^Õms±Ü#Ÿ…Å{—+êu,“ì,õšL“på¹0)hñ‰­P—HÚHÛ(RÇtÁ ùPcÕ„ýÛ/ H}¼ñ=fR»Y,¢’8n‚×uXbŪô£XÆ\ZÔ½ö6&®>Y|–íËXá+6ËXރ¦­_ÌÑ¥HÚ¹Íkšª(*EV½¬^ª<¬uðP•f5ÎŒ¢}ŒSûe]•Uï‡}Œ’,ÎãŒÑ{Æ;¬Èb¾ßh‹XO•âÎÖ¥ŽfÖúÍ#mÓ•8Ý%¾Àä._x˜Ù¡öÛj }T¡3Qæà ¼¢Yº´]M¯ÓÎˤ.î-Ù&Ý4,]mb³ièm=¦©I:ééÇ=}Vš½–ªiªiî€ê8̓AÅnœ¼ˆ,~𙉽½ÛŒ(Buè„¢—{h;`Ùpn²Šr¹,B‘~¸,/Ê5'é#ß-Œè$ºþ"KâK:y9¨*û·”y–¦Y{Á¨,Šc½´¤i¤GÄ@iÊÊö£ä˜¯–š§ËÚiúÒË|ö -ëŸ"Íò²ýáo°7òeQ­¦×V½[˜Üôk\1…à½Cé\½÷U9s:Ôø`Y”Õlç¤iÎä¢ç(ööWÀ²í‘­}OþÊ/Q<ïÉOæ48v-+ÈÖ¿'a¼E®ÞöÝË@€eÀ²`YD;B`ÙiÉÖ³¬Ô§Z€e À2`ÙÖ³¬.Ò(JVx$X¶§,CixžŸgöî`° Xvj,ÛS–½Ë@€eÀ2`° X,–Ë€eÀ2`° X,–Ë€e À2`° X,Ù]–ݾ}_*¾à‹/Ë€eÀ2`cÙ¥K—ž~úiƲí¿`̲ƒƒ`° X,éäž{î ‚ MÓk×®í Ëð¥>õÔS8üõ_ÿuQ/\¸ð¿ñïÝYùV~îç~®û÷{w\˜wÜqÇFÕé̵éNÙ~æg~fozåÊ•]a¾H|©¾8„¼ ò2ÈË /ayfFCUU;Tc|úé§ñe˶\î¾ûî=X,ÙNùЇ>ôå/£a·ò²Ë—/?òÈ#À2`äeÀ2ŽeW®\ÁÉô~Ëv1À2`È9—]ìý`,ƒý2`° X²»,c½—Ë€eÀ2&ìYé]ìɇ÷~Ë€eÀ2)–Á;¬€eÀ2`° d§Yïc–Ë€eÀ2`° X,–Ë@€eÀ2`° X,––UEžåå²£ê<ËŠêì;yŽ"&±$ŽÃj›XVGøšî|(:¯,«,‘ã³Ú©É,Ã7ÎÆŽËIq –íË*ƒÇÞk,Yâ£x=ÜB–Å&Ž›b´e,»ÀqÎ1ËL`Ùn²ŒÜ¸ ¬ e{À²ºªÊ²ªg%4¨|êrÞq›eY=c ðUc,ÎPLŽ2¢I»áÃêy—Œµþ†?ÌÑŽže´ÞÇfÙQ]ÖͲv ,Ÿ—MÙjäßK¯mË˨ÆÛõÀÎùcÙQÇ¥7nüÊ¡ã;.°lYV§¦,p­(†GrŸ:QxN1K%NcDø;Újw˜ ia¾¶  ËêDåû‘í{på›Jÿ•l¦5>ÊîŽâ% „ŠH¨&*Fœ¿Ž±v’n›T;ò“æ$±+·/›óüÔQ9^¶SlO¢Zá˜I±Œe9³¹â¤3u9$5I…ãy¡QžWâjÎ@(Õðù5é/.×Ež´ -°CÏ2¢icÛÖDØVÜ|,ãþ ¼húéR¬ ×™°¬læ+ñØD¿ FÌC[â§½=¶d¬¿Ý)BSž°°ì˜òfTN}cÅÍ4L}Ù‰Ši–Õ±a…9‹fÔ“ð’µY¦Óð(¬«^=¢Æˆhرjæ¢$n A3:¢.O7‚iQ4é"­Šhæãv“†¨Êœ¼a™ì@ƒa-©û]é1–uöA‹xr²l>Ìa™—ËñDÍG‹ué%e3Rq’±ËîbB¨ ‘ÚaÀ2iËBŠ^Õms±Ü#Ÿ…Å{—+êu,“ì,õšL“på¹0)hñ‰­P—HÚHÛ(RÇtÁ ùPcÕ„ýÛ/ H}¼ñ=fR»Y,¢’8n‚×uXbŪô£XÆ\ZÔ½ö6&®>Y|–íËXá+6ËXރ¦­_ÌÑ¥HÚ¹Íkšª(*EV½¬^ª<¬uðP•f5ÎŒ¢}ŒSûe]•Uï‡}Œ’,ÎãŒÑ{Æ;¬Èb¾ßh‹XO•âÎÖ¥ŽfÖúÍ#mÓ•8Ý%¾Àä._x˜Ù¡öÛj }T¡3Qæà ¼¢Yº´]M¯ÓÎˤ.î-Ù&Ý4,]mb³ièm=¦©I:ééÇ=}Vš½–ªiªiî€ê8̓AÅnœ¼ˆ,~𙉽½ÛŒ(Buè„¢—{h;`Ùpn²Šr¹,B‘~¸,/Ê5'é#ß-Œè$ºþ"KâK:y9¨*û·”y–¦Y{Á¨,Šc½´¤i¤GÄ@iÊÊö£ä˜¯–š§ËÚiúÒË|ö -ëŸ"Íò²ýáo°7òeQ­¦×V½[˜Üôk\1…à½Cé\½÷U9s:Ôø`Y”Õlç¤iÎä¢ç(ööWÀ²í‘­}OþÊ/Q<ïÉOæ48v-+ÈÖ¿'a¼E®ÞöÝË@€eÀ²`YD;B`ÙiÉÖ³¬Ô§Z€e À2`ÙÖ³¬.Ò(JVx$X¶§,CixžŸgöî`° Xvj,ÛS–½Ë@€eÀ2`° X,–Ë€eÀ2`° X,–Ë€e À2`° X,Ù]–ݾ}ûÚµkø‚/^¼,–Ë€e Œe8ÁÁiÎ~ðƒ7nܦò*•­eÙÁÁAš¦À2`° XÂäî»ïþ¾ðõ¯ýÙgŸ-Ëòúõë/¿ü2†ÎÑ^yå•­ÍË0|/]º„#ØïP‘öBxž—öKîºë®=ètäo|£´ïòÖ·¾õ$þáX¡ò;­|ò“ŸüÔ§>õ•ßÿýßðÁï¿ÿ~L´í,9Â~äe—í¼óï„TdÓrß}÷á ã 'A[È2¶_†ó2`° X,™'÷Þ{ïw¿û]ŒŒ[·nm[jÆò2èý–Ë€e ‹åž{îaÝ u]oËpªÈjŒÀ2`° X²@>ð|ãßxî¹ç^~ùå-dÙÁÁÔeÀ2`ÈbyßûÞ÷øãçyþâ‹/n[7c×ǽÀ2`° d\¸pá+_ùÊw¾ó̲-Ü/c,ƒ#° X,Y ï}ï{Ë®_¿¾myôäË€eÀ2`° X,–Ë€eÀ2`° X,–Ë€eÀ2ˆ´ À²s˲ªÈ³¼\vTgYQ¡-dYbI'†Õ6±¬Žð5ÝùP´·,«#ÝŒe;+•}”“âL,Û–U]ÚX³*ÄGñz¸…,‹MV£-cÙŽ»°ï,Œh«¼Xv,–‘y³E °l_YVWUYVõ¬„Õƒ¯Q]Î;n³,«-•ÌjòÊ*"ƒŠÆ.D«ç]2Önøþ0G;z–Ñz›eGuY7Ëfزl|^6e«‘s,½N›e_%`كܭ,ʲ±‹À³¸¡À²maYš²Àµ¢É}êDá9Åt,•x’áïPh«Ýa‚¤…ùÚÒþ%,«•ïG¶ìÖ•o*ýW²™Öø(»;Š—,|*"} š¨ ›uŒµ“tÛ¤Ú‘Ÿ4'‰]¹ý{Ù ØtH•ãeË1Åö$ªŽ™)ËX–3›+N:S—CR“T8žEAày%®æ „R ŸOP“þâr]ä9AËÐ;ô,#š6¶mM„í`µÕ¹2îÏÀ‹¦ŸŽYQ¯ ×FYÛÄxÙ®¦/—u· _¦Äsøz:×F™FËN,‘)cS›Q9õ73z0Ëe'*¦YVÇòÐ'k‡Lc«šáoÝ ––å:Ï‚¿f[:‹ØŠ›Vd'eˆØb_ˆ†m©ýÑ^Ì–° åí‚,«~VgŽLcªbÙ¶Æb¬h_Í|U¢ð‚¢{ÕaiÒ_ðS‹@rêÃfŸˆù¼ªkb¯©¨j Ù& ¯±)usö ö“d'«³Œ ŸtHAó𧙺àïxq¨Ç"IíŸQiiB.F(êÄ"§U<´ÐËèåõ>AC¨õuÓh–ª·$º¯¦×æXYL %¦k5WmüÞ0Û¥œLlâ“5§E‹ôÎŒÀ²“JètÊùÐűŒW)õ<ÍL<ÍÔ&ÔÐÉ2dÙT–]ÇLê²so(°ìœ°,÷5®_©boóš˜CÝ;ŠælJS÷ýfгð(¬«ˆ=¢ÆˆhѪ™ß’¸-ÍèˆÎº;LkŒÍ^ÑÌÇífQ•y~Ã2‘E¬*2Ö’ºÿ(ÑåcYg”¹tÂÈɲI2‡eR\f,Ç5-Ö¥—”MSÅI Ä.» ¡.4D^h‡ˤy, )zU·ÍÅr|ï]®¨×&X&YQä(쳥΄ۓtŒ|áæˆ­°¹¼fƵnsžß#Jd6}P¿N´ÿà)¼èd!.ÇV8‹XÖí;,¸¡À²s²È`«ñª/©DAçÌmpR7qÒ¤)Y¿ïPe±DåšÏûeM{™›±u‚ݬ QI|4Á>ê:,±bùQ,[xCeç‚e¬ð–³´]x¯{Šeë•1,›èý¨Rc°ÔocMx{åéC|°xÖ³¬ÓnjŽL²L.ÛÖúè¤,ܬ áót¡÷œ•¼ðµ–#b &/¢É…Ôô¢/²Ã|–‘LœÚ„“£²,+_I¯M²¬ßji æÓ¢Ó™ÀL¡ã{œÒÄaÝm±ç™e,’ð$£ë^g•ž<0ùé»!ƒe o(°ìܰŒ³ú’JÏ24ÞY^6xN§LC× ŠS̈,c­•uUÄ¡ojÍ–±Mú?úË.C½©åEI^”M~1ÈËúI±„e¼?ØE¦‹ÉÕó2ÅŽ—î´5º¹º~ ¥Ùâ©G „2‡^¹ï¨ñ-°,¶CDzȜÌÐs·5kŠÜ4/r*týœ¤KÊ7«éµ‰#vÜ4óÙN*+:±r„âÄe£RNTŠ“‚^¢º šÐ[Æ®X¶&¡ô¼†d ³­çf C0½{Yݰiv^Ö/A1añ ––%¶Ü{TÁHcÀdxG¹G SFÔKú´—­ÉUƳ¬îFçŽ'´ºN×`ƒgcÛòiÝÆyºÕ%ZõñXFÔì¦OŠ'Ú/iônÊkÔìsu)#‹­Nƒbü@…ÑeBbÓßµØË2JX½-Ã…†Ô¡¦«vµ ²Þ¡+êÅûe+êµ¹g¥S[î2Á"ÐhIªO¸XžØb«)«rƒÄX¶.Iš&@w«ØŽ†Ó¹1{¦,F“,c‡)^[9°»jù² ,;}ŒÍŠˆSL7ðYÐâ4e¦Óyä²ÍsI÷C¿©Éîº6VGí— ´¡L·“²¦;Åœ¨ZQ’„žEûáè¼`Þ.Ȧ_e‚â¡gë|Ûè¶»ãYFìcyaà°¦}ÉZþ‰Å=ù(l.ûÅ]Š¤ð¼¦©Š¢bQdÕËêŵ)§zy›S/²CDzšjMׯ¾c4ƒ3ˆ7íØBnŽ2Êh5½6Ù“_èM«IÚvÐq’fGQÈ<,Õz3Ê#zVeÇ“Âoœ°ë3ló2ÃñßQ„®(TÃg¥Û`%NàµË V-_vCeûÏ2òx™7¬5+fP·Þ5Hçic¼" žÿ0’õ•¢Ç¼ÃŠ>ÕÔÀQ*[1¼á³ýù¦ÝUVŽ:x¨J³Ç?Ñm”©ý²®‚ÊJúÃ>FIçqÆè=ãV$/è7Ú"Öh¥¸³u™ÜèéÄ<ò€Ùô@e ¶}ÎÝ2`¾È]¾ð0³Cí¶Õú¨Bg¢Ì7†ÛxE³t½»š^›Ø/ë°Û>Hú:ðå©Ã˵¸œ0£Ð,6Ö?‘Ïý³ÒìµTýƒÄÁ<}°«:ûÈ;¸ñç"²øÁ#d&¾…ݾÃâ ,;,c³œ•™ËeŠôÃeyQ®9sùnaDß ÑõY'XÒÉËAUÙ¿: Ì³4ÍÚ FeQë¥%M#="JSVË%Ç|µÔ<]Ö6ÐH;З^æ³_hY—øi–—í¯ƒ½áˆ/‹j5½N÷ÝÂøò¨JÅ‘íÏÒ6ö€¼÷cÎìΙ¡ÆÝÊ¢¬fû!AÇ»¡À²ó²3–­}OþÊ/Q<ïÉOæ48rÜ‘·–³O~]$Il«ÂÌ,X,–í"Ë"ÚÁËNKΜeUØ»${C‹{`° Xvê‹ô4Š’ –í(Ë«,ð=ò€,–ËvE€e»Ê²Í ° X,–Ë€e À2`° X,–Ë€eÀ2`° Xv–]»v X,–Ë@@v—e·o߯,»|ùòÅ‹eÀ2`° dË{ì±+W®`jܺu ­[n·‚Aùꫯ®Æ2ÈË€eÀ2`ÈyÏ{ÞséÒ¥'žx"Ïó«W¯^Û€¼øâ‹7nÜÀ¬Äx:˺ý²_ø…_øÅ_üÅ7ï‹üÐýЛ÷K~ôGtÏ:yÍk^³×ùÓ?ýÓ+ÿíÿø¿d“Âè (Êl^|ðÁëׯc¢aBLÐpZW–%ì—A^¶ÇyÙ®86äV Lî¿ÿþçŸãìæÍ›ãYÆò2Ø/–Ë€e Û ŸøÄ'ž~úéïÿûu]¬4Ë€eÀ2`ÈVÉ}÷ÝÇqžç85Ãó'l¿ìÉ'Ÿ–Ë€eÀ2müãa>óÌ3ãYÆž/–Ë€eÀ2m~ô£>úèåË—qªuëÖ­c± z?€eÀ2`È6ÈG>òß÷1˜Ê²É2x‡° X,Ù6–}ñ‹_|òÉ'1ËnÞ¼ ,–Ë€e À2`° X,–Ë€eÀ2`°l£,«Š<Ë—þëë<ËŠ ¹FG“XljaµM,«#|Mw>í0ËêHÄf5c`Ùù’ís]`°lË*ƒç8ÎX³*ÄGñz¸…,‹Mt£-cÙŽ»°û,ŒÓVXvæ,Û6×–m Ëêª*˪ž•Рzð5ªËyÇm–eµEb–YM^YE¤|lˆVÏ»d¬Ýð7üaŽvô,£õ>6ËŽê²n–Ͱ ã·S¶ù7ÇÒký,Cèø ,Û69⻧ຠ;Dz:5ekE1<’ûÔ‰ÂsŠéXªHÒ¡‡B[í$-Ìëu]–ՉÊ÷#Û æAå›Jÿ•l¦5>ÊîŽâ% „ŠH¨&*FÂPRÇX;I·MªùIs’ؕۿ—Í€ù}ê¨/[Ž)¶'Q­pÌ”XƲœÙ\qÒ™º’š¤Âñ¼Ðˆ( Ï+q5g ”jø|‚šô—ë"Ï Z†Ø¡DÓÆ¶­‰°¬¶vWÆýxÑôÓ6XE¯²,¶‰§ð²]M_/ënA¾,L‰çðˆó¢L#wFÏ€egƒ©E®Ënâ`öËNTlÞuAv‘e¹Î³à¯Ù–Î"¶âf‡)Gñ[ì Ѱ-U¢#Úë‚Ù–¡¼ReÕÏêÌ‘©c*–mkÌQEûjæ«Õ€Ý«K“þ‚?ؘZì’S6ÅvæÜª®‰½¦¢ª)ÌïM^cSêB¡mì'ÉNVg>7è‚æáO3uÁß'8,ãPE’Ú¹n{†‚¨*˜eÏ2‘ų*2Ö’ºÿ(ÑucYg”¹t:ÈÉ2ŠÏa™—ËñDÍG‹ué%e“Pq’±ËæUŸ} u¡!òB; ‚4/ „½ªÛ.hs|ï]®¨×j,“¬(rvYЇRg±I:F¾psÄB%6ƒWÀ uÌL`Ùe®ë"OiáÅ&qEºòÙ ë‚ì$Ë"ƒ-iª¾àaœ3ÀHÝ8›IS²¾:]e±Dåš*Ðcz?L±À­·“%·í†IÖ÷-V“»'ˆ4?¦qøžÍVelÇjÇëÁð¯D³ù«*î•eÓÄ„`œfy;â,– 2]ÎèÎ8W—¶Db6Iœ„R…q–Çþ­æËì0" 4iÄIL$IyN’8”ÕôZe³ŠA9amQ÷’ö¢]½[½çß5c†:îJX¶Þ2ã\×=D%ñÝû®ë°üšê7éº »È2Vø ËÙËÝ.¼×‰=ŲõÊ–Mô~T©1Øê·±&vO*OâƒE»ževS{.“,‡ËÂöµ>:)Ë7kCø<]è=g1|­åˆØ*“ÑÔCj:ÕÙa~@ ™8µ µü Y–•¯¤×ÉXÖï’´%ñiÑ©¯3eu|Sb(áø¯À²õÊ×=Ì“Ÿ¾‡Ò2–ØuAv•eœÕ—ÌPx~”¡©ðÎò²ÁS–kÚ—¬åo™XÜ“Âj~1G—"‘ÛP«iª¢¨XYõ²zñ@mÊé^ÞÆƒEvèBMµ¦k`ß1šÁÄ›f l!7ˆGe´š^'ëÉ/ô¦™$ÅŽ=@"iv…ìÑ’Áb¬7”<¢+Xv rÔu»¼ÌpüÀw¡+VÕ]d7YF/ó†[ ŠÔ­õ;J47³a𜇑¬oq3æVô)’fË¡2±Ã>Û½oÚÝñQåa娃‡ª4« hø'ºÉ2µ_ÖUPÙæà°Q’ÅÁyœ1zÏx‡Éú¶ˆõÕ)îl]&·:1<`6=P°œoP¾[`r—/<ÌìPûƒm5…>ªÐ™(óá¶^Ñ,ÍÈWÓkµý².:µÏ’¾|êðD-.' %4ˉU<X¶~™áº‡™§¶¹TÇaù Ø ë‚ì(˘3°zr¹ì6“~¸,/Ê5»ÃÈw #ú‰® È’8Á’N^ªÊþež¥iÖ^0*‹âX/-ié1Pš²šý(9æ«¥æé²¶FÚ¾ô2ŸýB˺ħH³¼lEøì G„|YT«éµnÇÆ@/º8²ÁYúBûİl›U9ó;Ô¸aY”Õ ]dYvƲµïÉ_ù%Šçá=ùÉœ.1Ž;ò¶±ÑrŽ]IÛª03Ï–€Ëöeí`e§%§àØUØ–­${åÖl`°l‡XVi%+<,ÛZ–VYà{äIÿœX,Û!–m?b€eg"À2`° X,–Ë€eÀ2`° X,–Ë@@€eÀ2`° d–ݾ}ûÚµk˜e/^–Ë€eÀ2-aÙ·¾õ­^x³ìÕ,fÙåË—eÀ2`° däÞ{ïõ<ï¿þ뿾ûÝï^½zõÅ_|饗^~ù庮oݺ…±ujøËƒƒƒ4M1Ë~é—~éSù_»/X‹û±Ûu˜F¯ýëOASèÔìöº×½nû=_ÞßøÆ•/ò'ò'ÿÈ^LX,wÜqÇoþæoJ’ô±}ì¾ûîû?T>ùÉOâué<€¹†zå•WŽæe˜e<òäe—íe^ö–·¼eï×±ÓœùÔ§>õ /àL ãl˜u5F`° X,ÙrÁ Ú³Ï>{õêÕ7n S3ü̲K—.Ë€eÀ2`È6ËÇ?þñÿþïÿ~î¹ç®_¿Žs±©¼ úeÀ2`Èö˽÷ÞûÕ¯~õÛßþvUU¡!ËX^° X,–€l³üÎïüÎc=öôÓOã,ìÖ­[SyYš¦ð¬4° X,Ùrùíßþí‹/>õÔSW¯^bþž/–Ë€e ;Á2œy±W‚ Yï°–Ë€e ;Ä2öz+öJ`° X,–Ë€eÀ2`° X,–Ë@@€e'gYUäY^.;ªÎ³¬¨Ð²,±$ŽÃj›XVGøšî|(Ú[–Õ‘ˆnÆÀ²ó,×ã‡9Ž{8º¦–mË*ƒÇþh,Yâ£x=ÜB–Å& «Ñ–±ìÇ]Øw– F´UÞ,;–=•`ŠóÀ²ºªÊ²ªg%4¨|êrÞq›eYm‘¨dV“WV©ßÄGc"‡Õó.k7ü ˜£=Ëh½Í²£º¬›e3ì@Y6>/›²ÕÈ¿9–^§Í2„ޝ°l«…Ná‰{z<–…KËÖtïSS¸VÃ#·¼NžSLÇRE’7@¡­v‡ ’æõº.a ËêDåû‘íó òM¥ÿJ6ÓewGñ’…BE¤T#a(©c¬¤Û&ÕŽü¤9IìÊíßËfÀœ9uTŽ—-ÇÛ“¨V8ÆÏ—±,g6Wœt¦.‡¤&©pŸ &ýÅåºÈs‚–¡vèYF4mlÛšÛÁj«seÜŸM?aƒUôÚ(Ëb›ø/ÛÕôåñ²îäË”x_OçÚ(ÓÈ}Ó3`ÙH[øJz0ˆ^Ž@&,¹ÅyhKƒ@¡ZA=ͲÊ!3ßî¦Q•Øøî·n?Ó%@v…e¹Î³à¯Ù–Î"¶âf‡ÙIâ#¶Ø¢a[*óÑ^Ì–° åí‚,«~VgŽLcªbÙ¶Æb¬h_Í|U¢ð‚¢{ÕaiÒ_ðS‹@rêÃfŸˆy¬ªkb¯©¨j Ù& ¯±)užmÛûI²“ÕYF†Ï :¤ yøÓL]ð÷ ¼8Ôc‘º :c»­¹ ß®:ÿ-rZÅC íбŒ^^ÿç¨c¹á‘nͲBõ–D÷ÕôÚË"‹)¡Ät­æªßf»”“‰M|²&àô h‘Þ™X¶ I›¹r·f uz¿Âen3£ Ë65‘Þ^=,§XfÒòNÙÃÑlÝ~®K€ìËr_ãú•*^–zMÌ¡Aßu+ÌÙ”¦.$úÍgáQXW'È#¢5F‹ºVMã¶4£#5%²–¦5Æf¯¿Šhæã¶g(ˆªÌ›!²ˆUE›IÝ”hJÂXÖÙÏžM¥e.>‡eR\f,Ç5-Ö¥—”M2ÅI Ä.›Wýá'D^h‡ˤy, )zU·ÍÅr|ï]®¨×&X&YQä(쳥΄ۓtŒ|áæˆ­°¹X° ˜×ºÍ ,;‰øêpÍ–ÑR‘’¢Æÿµ ñJétåM±lj«¢cÙ—›ïË"ƒ­Æ«¾¤aœ³ €3º‰“fçd±`85–M,¨X &+(Û “¬ï[¬&÷Gi~Lã(ð=›%Ì©v|W©¨X·[4to¦,‹ðæ {ä4ËÛg±lérFwƹº´Õ=³Iâ|´x ”*ý’•ý[Í—ÙaËš´Îâ$&’$<'IÊjz­e£‹mœk”u/iUrõ.-Í5¾ÃnÆÌ˜­u‚ËNVf4»5û·`°^/TWE–7÷\GWÄ1,cy7¾ï ]dXÆ _a9{AÛ…÷šT•'X¶^ò '¬Rc°ÔocMìTž>Ä‹g=Ë:í¦vU&YÖa­õÑIY&¸YÂçéBï9+yák-G Ä(L^D“ ©éE_d‡ù,#™8µ µü Y–•¯¤×&YÖoÿµóia%)f ß㔘QXw[,°ìdÒäbxR/rØT*#U8âæËX–Ò„°l¡K€ìË8«/™¡$ðü(CSáåeƒçtÊ4t½ 8żl脬µ/ÃâÐ75…m»Ø¤ÿ£¿ì2Ô›Z^”äEÙ䃼¬Oß–°Œ÷{À´è´z^¦ØQâÒ¹ØÖèæêÒN4²ÅSe½rß'Pã=ZYl‡Že‘9™¡çnkšcø¦y‘S!9^’¤KŠ/«éµ‰#vÜ4óÙN*+±r„âÄe£RNTŠ“‚^¢º šÐ[Æ®X¶=¦’†Z?j‡m¤éNœ’'L‡³øËúòx·„[ì ÛϲÄ&å"¹kf ³˜4L†w”{´0e´A½¤O{ Ñšnôx–ÕÝè¼Ññ$¦~HVPƒgcÛòiÝÆyºÕ%ZõñX&ѧ=² Åí—‰4z7å5jö¹º”‘Å:M‚bü@…Ñ-ME«š(#϶CDzŒVoËp¡!µF¨m%ìNg”ñ‹÷ËVÔksÏJ§¶Üe‚E Ñ‚RŸp±<±ÅVSV¥ôÓ×ÞÌ,;¡àÅF×®HÕ%ë uÒ„®—Ø­°ŒÖmãf¬ŽY¶Ì%@¶emS§˜nà³ Åi8ÊL?˜ƒ\¶y.é~è7µ#Ù]×¶è¨ý26”évR֞š­(IBÏ¢ýp Ãtç‹ô{ñUÖÑ!(nz¶Î·ýˆn»8žeÄ>–kÚ—¬åï‘XÜ“ßö\ ~1G—"‘Û`ªiª¢¨XYõ²zñ@mÊé^ÞæÔ‹ìᬦZ“å‚ç;F38ƒxÓ-äQà(£Œ€VÓk“=ù…Þ´š¤mŠ“4;ŠBöàÉ`©Ö›Qѳ ,;u)Û‡dº ö7ºÍ©YAèwÏÚð’™VÏ—MqgÝžÖ–ii}‰K€l;ËÈÞ°R¬˜tiC×ï(ÑÅ¥ƒÇ…Œd}…ä1ï°¢@5lT„ÊDmœ7|¶ñ‰ÿZ ¹ï¾û>ü©O}êÓŸþôý÷ßÿÇ?þ1Š" WQM–mmm9sÆqÌË0/üì`Êg?ûY4JS>øÁ~ùË_þÊW¾òÕ¯~õÁ|hyòðÃ?òÈ#Š¢<öØcO=õÔoûÛ_|ñܹsY–5YvóæMʲS§N=ðÀȲU˜œlXCÈ2dÊjÊ¡C‡¾ÿýï>~ô£9räñ¥ÊO<¡ëú/~ñ‹£G>ÿüóaž?>ÏsÈÅò²³gÏb^†,C–!ËPP¨|üãòÉ'ùË_þú׿>vìØñ¥Ê‰'~ÿûß?÷Üs/¼ðÂ?ÿùÏÿüç?”]»víÖ­[M–Ñõ2ÈËe+.XcD–!ËP~õ«_û5õ{Wàͧ!Å z-…e)]‘ì¤4bì"7èí¾ÞýU7©/ájí>»!Ëö(^i@NóÒ#ºÏ†ycè·M/dYî·›Žº“›åØÖ³!Nȵ;ÝY¶±,‹; þŠ¡whÄ–ºÑNV®¤4ñáëô€ ºL¹`Ì fXVÄU“|»-ÛQ™mS%Ý0cãbdË"р㥎•í¤ù~1€Zô¢™ï°u"êÞrGzš ²"Ñ­‘ðêkb= C¥_‰F0;ËÊæc•4É+ü6T82¡D¬cê¢JÕPÑ%ƒ^­bBèåe%«k‡šeäöz_õ2\.ˆõ;šÊ¦²·Àlz-+/Ñ›Q¾Hœív©ÔX`7™îd¾FGH5eI l/ráfÃXFMÍÉví8reÒ¸Œ= ÆžÌâAM–yý¥˜¬ôv6?É»2‹nªVMØÛææ-²!Ëʨj+ÄY K‹Åâ!àºÓhF< ¦¬lšNÂ#?¯zõ5Æ‚„=§.ZÆmÞa­ÄåÉB0©1 ™¤eÉ|ºõ )U¥NÎX&8 =Q¥X òÞ¯"™éQ–Õö)"ñÚÁ¤ñ0‚e¢ŸF4Ç»¯KOB:"%3Ó½í:&¸žy¬,G±Ì%è•»U.[åïüøµËõZËD# -6a W¬”7&:Õ$>0$âAi™"¹O& Š5ÆÛˆkA›Ž©¢gR^qà KªáEFPé‡tÚ3Žeõü¤;ඓÐÑÜ7­Üˆ,+Óy•ÎÆk&‘ç¸~L=†yÎâ¤FR²ÞÂJù¶ã¥srŠiö~hr ÔåtËèºAÔÛ·˜õ;vQn~ }ϱ-ƒ&tq„hÇuœæ_ û+:÷¦ÊÒ¯5B°U^fò¢ó0–52Ý–Z_q¤.UuOcIœ]Œo¨`9‰ ô³O²Ã,ciêø_J8íÖä•÷ÙôZË*i›U¦™¹™¸ÓØw´šYtÈt碣î/t Âæ­—9e}œù5©Á&‹EZ:nŽÛ5ibE«ôS±Œº´Ð±ªn ºþâ²lƒXF _îî¾ÍûÂ{,›¯Lò¾eú,T @½e¬>ÇάN´DÑcY­ÝÀpèg™ÐœîT[ë½Ûeߪ>JÒç¶B«sZ:EC4ò¤À(Òüt¬F³¬ÌĉMú~S… @ŸI¯%² º^¶\ÏfFãzeáÄfS^]|¹j3Ÿ/Kl®Õ¿Ï°ÊËTÓvlSâëJµ“5Ÿ•®"X[5Kã›%t¶Q§%*†ç¹ôñ¢Æ„Y¶Y,+w#[Ͳ²¤9yåHÌlŒ—øÆ£j0¿a<Í;¬ÈP¬Ü]$®Ô·é6D³íîpVº“™rã¡*EgÎ _‘}Œëeu•Vï›ûŶиŽ9ÞCÞaUNæ{ mÝS%u‡ë’{CkýÚ®mƒ ¥Ž0¸K|ŒÊ^>t„Ú!·ËjyT¡6Qd«Í• ˜ÑLœÚΦעó2±Ž{¥–t,¦]¥o}“mè­<†Õ$Ípñq`CŸ•¦¯¥b›jXXFȦÉ”p2z2sòÄÓ¹Æ#dx{½‘¸rÓ ÅO7ÐvÈ²æØ¤åtR„*÷ÃEq’Î9IŸòÝÂyƒD½ ‰? ûo§ÈÒÞ[Ò8 èºá"M’=½´„m¤/J…!-ÛO%{|µÔ(]æÖДv /½Œ‡¿Ð2Oáa§Õ·oØ%åÁ$›M¯•z·pÙéhœì2à’Þ¡t ÞûQd1uº‚ù`š¤Ùpç$iÄà"×H6öWȲՑ•}OþÌ/Q<ïÉFlp¬·üÍ +ÿžüðæu;Õ¾;d ² Y¶,óÈY¶(Yy–¥- È2d²låY–'¡ç3<Ž,ÛP–¡çX–&K{w² Y†,[˜ Ë6”eËd ² Y†,C–!ËPeÈ2d² Y†,CA–!ËeÈ2d² Y†,C–!Ëe((ë˲7n ËeÈ2de€e@Ã… ®^½zcj¹yóæ­J̲K—.|Ož<‰,C–!Ëe(( ÷ÝwßñãÇ}ß?wî\š¦Ù$¹|ùòo¼±½½}åÊ•k×®ÑTn‘8–mmm|!üÈG>òÑ~ô^"ÂÚʽ•¼ãï¨? k.T‹;î¸c¿ÕYXC‹ô„·¾õ­ã ûd¢»ï¾M„R»Áç>÷¹/|á _üâxàÿžNþ‡È—¾ô% Úõë׉3 '° ò²gžyó2ÌË0/ü å6ðwþüyHÓ(ÎÌ2ÈËeÈ2d² å6åóŸÿü+¯¼’¦éÕ«WoÞ¼¹0–]¼xY†,C–!ËPPæ"ŸùÌgNŸ>ýÚk¯moo߸qc1ÖëeXcD–!Ëe((·/¢(þùÏ~õÕW³,[$Ëp#² Y†,C# ÌK>ùÉO>÷Üs¯¼ò À¥(ôÆlš—áÞd² Y†‚29|øð©S§Îœ9pY0ËðYid² Y†‚2¡ï Ãp‘ï ÁwX!Ëe(È2”¹³lÁï¿B–!Ëe(È2d² Y†,C–¡  ËeÈ2d² Y†,›™eYGq:é¬<Ž¢$+–®ÑnĺØj n¶J,Ë=¸§üÐ;¨,Ët¡Õâµl­ ²lb·àÖ-ÑÏÑȲdY¦ràŸê˜e.œÅuÜd™¯AܼcÙ¡VëÐf™†,ÛD–•ݺóFdÙZ°,ϲ4Íòa M‘7y:ê¼ýeY>d ]ää?4¦_…_ž¥zývƒÓòQ· Ú5¿ƒ_FhG®2µÞ{fÙn]æÍ²!v ,›>/°Õ”³'½V-/#+|eCfŸ[’n~ÞX{wkdÙJ²,µ6ߪDR­2÷ɉkIš©Ë¥[¨+\C®OãEÅç–ÃO`YÈ\¯e#ÍlMêjkagõYœ¨ÃIEâuª ’P÷Î}ÐNìÑ®üJ1¿Û®þ¾­9Ô·CSnqmÝÔ„ê"²îNãö“XS›Kf8T—²&)µ8Žg"<Ïq’Ÿh¨¸/½›‹;×╨c‡ËJM™m+tŸýšú½+p‚f‡Ób½–²”ƒ®ÈvR1v ‘ôv_oƒþª›Ô—pµvŸÝes¯4/§yéÀÝgA Ú¦— ²,÷ÛM7ÞÉÍräëÙåÚn‚,[c–ÅŽÅÐ;4bKÝh'+WRšøðuz@P ]¦ƒ\0æ³ ,+âªI¾Ý–í(Ì6‰©’n ±‚q1²e‘hÀñRÇÊvR|¿@-zÑÌwØ:u`¹£=MY‘hÈÖHxõ5±vtÃPéW¢Ìβ²ùX%MòŠ¿ ÕŽ†Ìñä߉uLR6©*ºdX«Õ¨Ï½¼¬dcíP³ŒÜ^ïÏá«^†K±~GSÙ´B¶¢ñ˜M¯eåe2z3ªÃ‰Ó¡Ý.• ì&ÓÌ×試 ! …íE.Í(–ÑŽàd»v+¹2xH F¦#SfщŒ¯&˼þBMVŽ6{É»2‹}ªVMçÛæA[dÛ–ŶBÜÁ`±$±XÌ!>½®»1fÄW`Êʦé$<òóªHOQc,HØÑsê„eÜæÖzAœš,õ’£ ‘iXæ‘̧[‹RUêÆŒe‚“ÐUе ïý*’¹eYmŸ"¢¯Lòø,ý4¢9ž ØÅx]zÒ1'™Á˜†èm×£ÞíðŒÈcíÐ`™8Še.A¯Ü­r±Ø*çǯ]Ψ×X&Qh± K¸b¥¼1Ñ©¦é!—ªXÊÉ}2aPl¬1î[Ô ÚtÄ=ƒóŠ_XR /2¾J/¥“¢q,«g/Ehö…¾„Žõn|°ÊÃ2O¥³ñšIEä9®S€až³8©‘”¬·°’E¾íx霺}š½Z£Du9¡2ºnõö-fý®[”›CßslË  ]!Úq§ùW‚ÆþŠÎ½©²4Âkl•—™¼¬<ŒeL·¥ÖW©KUÝÓXgã*XŽ@F=ý,Ç“ì0ËXZ§:~à—N»5ym}6½–À²JÚf•if®@¦nÀ4ö­f2Â9‡è¨û ÝdpÐÖËœ²zÎ<“Ü`SÉ"-Ý:·îš4±¢5ü©XF^èXU'ÝNiY¶V,£…/wwïå}á=Œ–ÍW¦aYß2}ª Þ2VŸëfV§‰Z„豬ÖnÀáûY&4ç~;ÕÖzïvYÆw£*„Ò…ô¹­Ð꜖NÑM €¼)0Š4?k‡Ñ,+3qb“¾€ßTaÐgÒk‰,ƒ.Oî0É|>2I2iAúFr49Zlð9h,£Á‡+s±¨œ¡q–<;7ØCâX¦‹C;¹ã"ËÖ—e-½W2+Dz½¨ï4/ÓüÞ¬:t»–“,0/k²Œn­Ì³ÄwmMaë¿F¹ÿ£wÛ©ÛaµªV=xÍrÁ1sƦáyYoÖÚ#4¿–L¿êä¸tk?HØ‚ÙÆ°, c¸]of ¬ÜÐÞ‹Ø"…)µ ê)yÚ‹÷æÔïÓ³,¯[çÔš'>-ûÀ„й®ß(ŸæUœ'JÐ󽱌r¾-zyåîÉôÚà<óÐŒ.‚˜µçÓgÊü¢Ÿeô´2‰¦4ê{â(¤ÆØ{•Ö èt Y¶v,«¦7-Ië:6 Z-¢Ì`n^t%ºúѱ]›ÕŽÚÝy ã©ÖËxº¯ÌÒœ,û¶Y÷‚Àµt²Ž89u]¾­YþEZ)⥮ãZF‡«ö#v«ÕÀéYVÚG·\Ǥ›öÅÞß=³Œæ=:0íd„.IP^NQdI’A¤¶lEùø†ª”§%[ñN³b6Â5ËrºC¯œèڦʧ§["K uÏ1¥©ŒP̦×Rž•¦Ñ‘HÙ“-öñ²åz63×+ '6›2ðêâ Rñù²ÄæZýû «¼L5mÇ6%¾®c;YóYé*¾µUÓ±4¾Y`gÛxZ¢bxžK>jLבeëÆ²r7²Õ,Kš“W®ÒÈÍÉÆx‰o<Ì¡óÆÓ¼ÃŠ<Å ÚEâJ}K1œjÓI4Ûîg¥;™)7ªRtæ®ðÙÇ8°^VWPi}¾¹Ql ë˜Óè=äVåd¾·ÐæÑ]SRw¸.¹7´š¯íÚf0ØPꃻÄÇØ¡ìåCG¨r»±¬&‘GjE¶Ú\›€ÍÄÉëlz-:/ëÈVjIñÈ¢aÚUúÖ7Ù†ÞÊcXMÒ |ä³ÒôµTlË ë-«ÓèÙ4ÙcNFOfC ñt®ñ™c¡^ªH\¹é¢‚â§β÷ޜ֌ÓIªÜÅI:ç4|Êw ä õþ$ ü$ì¿"K{ïHã( £ê†‹4IöôÒ¶‘¾( †´0?•ìñÕR£t™[CSÚ¼ô2þBË<…K„QœVßp¼a—”“l6½VêÝÂe§ q²ËT‚KzK¾÷£1Ôcê’óÐ4I³á®KÂÖˆ¡G®‘Ð7^áû—²ÅËÌ/Q<ïÉFlp¬·üÍ +ÿžüðæu;ÕÎ:d ² Y¶,óÈY¶(Yy–¥MÈ2d²låY–'¡ç3<Ž,ÛP–¡çX–&K{;² Y†,[˜ Ë6”eËd ² Y†,C–!ËPPeÈ2d² Y†‚,C–!ËeÈ2dÊgÙÖÖ°ì™gžA–!ËeÈ2”udÙ7€eÐèÉ“'‘eÈ2d² å6åðáÃÀ²3gÎP–-¦Q`Ù¥K— ÑS§N!ËeÈ2d Êí³ìÙgŸ={ö,$J fYEÏ?ÿüÇ>ö±}èC<Ï¿÷½ï½óÎ;ïXC¹ë®»àæß÷¾÷½ÿýïË[Þ?áó{Þóž5U§©ÔÝwßý¶·½ ~Âg82ß&¨}F5´vÖ»“ô;ÌgÀÞüæ7SOØÓ­©4M}ýö·¿ìŸÑ>(³¹xøÏ=÷ÜóáøÞ{ïýÓŸþô¯ý+Ë2@ÌÂXöÆoœ;wî…^8zô¨®ë?øÁ¾õ­oɲüàºÉC=·ýÈ#|ûÛßþÞ÷¾×étà'|þÚ×¾öðÃ÷®¡P¥¾ño<úè£ßùÎwà'|ÞÞ¡ ­%¢(Ê7¿ùÍut*Ðã  ¨ðÝï~Ü~‚'|ýë___O˜{wSQ×¢=N] íƒ2ƒ@à/zì±Çžzê©cÇŽýíoû÷¿ÿ½½½½0–ݼy3Ïóóçχaèºîo~ó›Ÿÿüç?ûÙÏŽ9ò“5¸íÇîÿÿˆšŸ|òI8r„ÈOÖSàΟ ò¿•hšöãÿxî ÁeÁV`1hšûéOºO -@4" …^ x¡öü Je%èeêTðŽ”5íq”å 8Œ2ÀäD”P.\¸påÊ@ÌbXvëÖ­k×®]ºt úüã¯ýë³Ï>ûôÓOÿîw¿;¶†rüøq¸ó'Nض ?AzdMÕ©ÜÔ¡ªÁgø?÷£°µd}p-F;ýpú™?†Òß³=Ž‚2[ì…xû‡?ü (yíµ×._¾|ýúõ…±Œ–¯^½ 8K’äÕW_={ö,ÜI°¶òw"/¿ü2ü\kEšrúôiúó¥—^j™¯ÝNW²×_¼Ðà µWÔÚ¡Ô=Nûz“ºeYîñðqîܹóçÏgYX-fC~gmooà lmm½þúëÖSàÎÓ4}HóàújTËùJÖܺ[ > stream xÚíÁ! ÿŸÖF à)\ #ZŸõ endstream endobj 14 0 obj << /Font << /F26 5 0 R /F30 8 0 R >> /XObject << /Im1 10 0 R /Im2 12 0 R /Im3 13 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 24 0 obj << /Length 1040 /Filter /FlateDecode >> stream xÚuVMs›<¾ûWp ž‰±Șc2ïÛ™öÖÖ3=´=( Çš"HÔM}WÚÅ6®3>°Ú]=û½òãn±þÀ7QÊ’’•i´ÛG‘”BDEÊ–E»:ú?ì–+^ðزïUW#]™¶o”Söžd~u·jUk†7¾ÛÙ9ß$Ï1®o‡T¹ å€T!iªjBOÃóÄ?­¼ÐjÙVû¾öÙ)ÅÔ«„¬Ýá «1•tÚ¡4—â.´ÚQ…ÁÀd‚änÒ1M}ž¼y··­ÓMjP˜~P*éy|f­íË=²ž–œÅ£C>Œ4u7È/T”¬-ò„Ç£UÈÂX€h –ŒÑðX=Y•ÞÔ/*uCÓzº»¹Ê½ðÝ4&ÔW™Ü°êÂú°ÌY|F¼Ñå-(¥ÛøYa'÷ƒ©”µx àÄltn¤j ??­ñ\McAÖILa6£ ƒÝ*ÒH)Žz‘ãÊçkÈÅå–ãr ó_wàÖFÙî·âq¹³PwP¯£ v4Q0ÆMºç†„¾9ˆ«ÔK‚zß–[“Bc )Œ=Jé½È¯VdAÅ 3ÿ¶«ÀD\Õ›ê—M‹ ˆý`Z¤ÀR‚—ÐÈò­y"ASÔh1Å')\Äm:-¬×Ó‚á[žðre‡ÕQøýòý'‹jB%ˆŽAµ²„ÃbQ}… uc ñ­HD‘¬°B º¦Àzcµß³8Á3ZàÙiÑzápŠ^ŠNÝHIP…ë¾0cŸ ûc‡ çY<™ÀyÒEo´ÅW]@k,Ó»ÖE¯Ø\! f߬SíH‹Ì$ò‘㋱’, @T²B´ lb¡é®;h¢$ª¶cu@ÆÞëI‹GàL~„=n†î…+G¯hFºcþ4ͤ¶jšküw¯ªð÷âö«Uä nz´6‚-";gø‚å)¿x´Ä»Örê–") †ÍRI±-£l 3AC‘y×Ö2v©ÇA¯È8¨p–²u¾æÅÅ_Jº† endstream endobj 23 0 obj << /Type /Page /Contents 24 0 R /Resources 22 0 R /MediaBox [0 0 612 792] /Parent 9 0 R /Group 11 0 R >> endobj 20 0 obj << /Type /XObject /Subtype /Image /Width 507 /Height 346 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 25 0 R /Length 54914 /Filter /FlateDecode >> stream xÚì <”ÛÇǾfߢ´ÈvQYŠö¤þíÜVEÛm»ÕmOåÞ¤’¤MÈZYJ¶”¢e)B²e_Æn0ÃŒ1‹Œéf^¤n7Š$ß§æc¶3ç<ç¼ßç9ëûþ=Ôꧬ;(((H¼\d(((((ˆz((((ˆ}H{(((¨_ù#¦ŒµlÕAAAAõ[7@F<ð85 §›!ð¡    ð!ð¡    ð¡     ð¡    ~à|?Ô0þ¿1ÍõÓŸ90 ¡˜#T¿TaÁòþj‚y¸¿'· ¶:::Ú¬Žn;Ù @rÒÄLOu|Ní#W½›Ê¯PÞ_MŸ4ã_¡1ƒ–Üþ%ð{8ä!3x:ˆeGÒDž‚?¾ö=œïí˜Fü‚ü=²½PoÎxoþËÒ¾÷+#»1#”ñúÄþä°­­N§WWW¿xñ"$$äþýûAƒ¡àà`ÔÇSSSñx<øÄ ßÛ#hii‰ >xð$4Òõ+”±wI{?B$vkÄ— 444´¨¨¨ŸQî€ä ¾µµ5??ÿÊ•+VVVžžž7Unnnû÷ï·µµ-++¿°ÿµÌG:à»h4zçÎçÏŸ¿ùkhݺu'Ožü {êÔ)333''§›P#QFFF.\t¼ OY[[âpÑh4ÀØ/ùC|d<à—B¡ÔÖÖ:::º¸¸€8ü{Ì®¾{÷ÎÒÒØ¡©©‰J¥z÷< ïíI$Raa¡½½}iié/2}*˜îúD?£@Èáíí j.Û‘²°°Àb±¿HaAp €i@WÀØ/ùC|àz~[ZZž2] ÂfÞŠººº9Kƒ"çÃb:Þà×××…‡‡ÿý÷ßøøPøÃø{÷îåååáË—ðDø€¢T*DÚÉÉÉÑÑÑC`àe>|xãÆ‚‚±÷sT§ø ƒjii ?Ì¿{÷îôôtQÿpà›ƒx\Y  ÔÑÑ177whì<˵k×À‘Qþø&Õœœœ||(üáü;w¦¥¥X555ýXàƒH›N§¿SUUuëÖ-www74vÈÊÊÀ^¦¶¶–H$ögA>>p àóÀ†÷ïß?yò$>>þ0þŽ;RSS‹ŠŠ¿<|=ÀG¦AAfœ}||@=4v=ð/^^^À×ÓŸa|||(|üo>²q•B¡öfddܸqãñãÇýZÏü ð2Ú [ü>>>>þ÷>À;‰DMLLì2;€‚h_¿~=;;»¡¡¡Ï- øøPøø~{{;‘H¬ªªzñâ…‹‹KRRÒÙÐ;""ÂÑÑ1%%Ù’Ðgç ÿ›‚ÇãËËËÃÃÃ]]]333‡Ò NNNñññÕÕÕȼ->>>>þ÷>²D䡤¤$ ÀÙÙ¹  `(MŒ¼LTTTee%@àS‰MUå ÄF'££<²­Ïd°o¹1(=ÐU)³“Ao¥µµu|mc,àƒ ´±ÊÜ9œ¯‘Ÿø팎÷PøÃø­­­X,¶°°ÐÛÛ°·¢¢b(M:àG?~ jY¡úå60pàç¾ß²nÙo**¾™/£-vm;vѵ¼¾‘\ŸsüÀ.Ó=—rÐõk…ŒhûM«÷‰|ÕLûŒÿªÎ ÿsËú½}Êê›ð O½·˜mv½רB‡Àu௜;¸ÂøÏøÌêvÆ/1üŸøÈ>¦ºººüü|ä¬þúúú¡4ENNŽ‹‹Kpp0èbàp8ö}ßÞd³ÙXFØd“µSB˜ç4-%ƒu»³ÑUø²—3õ4DuÍbß• ,öeø7/Áó·{`‰öï· cnë¨+ÎÜb•[ñuçð;œ0FnïE¿š¦VüÁQ{½éÒ©|‚ªñ…´üA>©êõöåsÍþºŒkí+8aþ¹vÚâ­ù˜aת‡ð) ~nn.¸¾|||ÂÇfd475”––5âÉ=¯Ñ(øJtþ»œlcó7²øß××t1@Gt7¾|XôÏ –þµd¦˜¨òÇÀšFb}^ÄV“E;-lÐ5 „Фyúš²ú[_æT øá®ÇΜêv?ª™ú8ÇÝÕým‚ÑŽ3•_·Ám°€äyzâØ ìƒjñøƒác·¬2à—ÔJ(¦Càð›òžNRš½¢¼…ÚÇG;qKgN@q©=Ë#@àŸ$©¦¦&;;ûÆ÷îÝüÿèmD?'+}×oF!£Û :þ¡çÉ©ãÔtú…'pÔ²¢¢\×·nÝ*((‹ï |&!ÕÿtEõLc³Ë>±8¾±¦àáýÀ᯽FHõèÐûa1)v©[êKÜ.Yo67[ojzüÌÕüÊÆ® ÿÀ/¡wtæ$ÅøET7’º+§#?5ÞÏ?]Kè¹Ð1ñ–‡·nÜ`j~ÐêyšÑÙ¯¶Å ^D&¦QñÕ—ÏXl4]¿qÓ¡˜·I{zûœ¹éÚÕ«W›î9ö<·¦÷»TlÉõó'Lׯ5rÈò&–Ô6l_W”éiw|¼0ŸØ¸©¶~ùÕxP&ççb·qÃúÕkÖnÝió®‚^l'×EÜ÷ÒQ•Añˆ>ïð2³´»Ns®Ùgº\,¬Ý+]C¬Ì꫈  °$Z;Éïúé LÿØ{4­ŒuG×w1!;7n4Ý`nïJêº:²_ÇFÄe¶µÒB=N›š®[oj~;<å§>²ë Y„Ÿžžx.ÀOWÂ|fÁë óÅêR*'í|±ä3’ ,gôº!;óßå/|®Œ ªGð6ïø a*•úmÀ/J £;‰›Åâµë¼{rT É=ã'ò*1]C:ÝÀg¶6ݹ°Ks¬'Û‚¼ÂSf=KÍ¡÷ }F°í.åq¶>qdp51žZhHs³Ó—ž0~Œ€ßŸÑ\¶×l¹œŒìŸ‡ä®6ŒÍX7OGZí£ÔâÖ¦òËÛ×OâäèjÒr“,/aÉŸ?Ù÷Ì4u5+Ç` ­«Þ_ÙOT½áÔݦVÊÍ¥‰;–é ñr#éKÉ›î;^G ö'Ã5™ÏŒçOáãáêʇÈüƒ« d&³ùØ.cIqQA¶„„„DDEEEFIëmM¯À#zàc2k))ŽQž]PÕÞÝÇKò9:IQFk‹-OªO^7C[›»ûªâ¯´è~\! |ú#à·»îY  7'2½²ÛãÓÎÛ()1É="¯íX‹^ÜžûÛX®îê‘UT²÷yÔÖÞww™V¾túD͹F+æpsqu}†ï“üv¤gÑÙìaµi´OwÍ£dU \âòÛØ¿K¬Ê0]¤ÍÓÕ¦u·Ÿ.'Ñ™Ãø¯=+ˆ ³ ÂÉ#1öztRwtëQ~®²›·.©º…Z8UYž‹ýQ.^ÞMGn²F’LÓPäü@A>õYËSЬ&ó§Ä˜Iówí5ìNL}º™Ï%;MÉQÈSN^ñÍûï°aD>f4MJvÎŽÆ"<]·ñŽdþlÀGv]UTT¤¥¥]¹rÿÓ•nà»zÇ`K_Zn7”’5ÿóbQu÷%ßÙ†ÎN¼p|‘Ñ‚M{?JxÛLk¯*Éö¹íùKa¬•Ðèá”Wþ)â°XìíÛ·]]]³³³ÆAôþ_ÀG£Ñááá #2 Œ–››ûµÀ¯Í~µiù Qa!.Ñ1š ­=¢2bîΟ¬dh¶/§¬æ#à3‘—­~““â›»êãûµUÇËdÙœÒÚ¾j™áfýDiþÓžAX½2ýÁ2ƒI|ܼ*Z:;6/ÕÑQàb¹œDÈ7÷oQZ±÷Zqu׈å«@G‰ 6Î-Ã$ݵÖ/%$!g¶×ÒÉáºE:¢B¼Â«ž¼)mg2>þšãå-/ß#·vÑ&òž­´¤ÈŠcwpÄÖÎ6Ü?‹fŒâá–§±ËÂú¯¿K pppZß kií#2dvÿÙµLXP`ì´•—œ½ÎZ¬+/Æ)$}58™Lo9ÿ÷ní)Zªl©)+âæë(õ éeM?øíø²íÄ­½_· Ö`RÏo]."ÀÌé>‘BuúÓPL[AM÷Ì7‡ó‡ôÔ@“Ð5·Ç4‘?þÝÓÄ„¦F¼©èþß­âå‘s ËmëèlA¿^.#0£¨¿ÌÚÖÖÄH—›‹SXJáÁ›Ê޾â|zuú\M96Ù W™Ÿ:thÚÄÑ\²ã7æ6R@Pã¶W–Ÿ—KPÂø¨í­ë—©OäæäàS3ySEììl÷8c&ÀÇ-£1ï‚£ý)³qrb\‚‡\£hmŒaüÜgwfé ðpñ ‰Ì^<#<½êUàYaA>ѱZ‡Ï¹y:×S—ãääX~ôf3&gÏBcYA^¿â4£ãž± î¶›è3V6r¼}ÇÎꀢŒxj~Ö•¸ÖÚzÀqsO¢¡7÷ПËG‹±r€—DäLÖnY®£\&ÿ„Y©µ Sê¨ «²Ìêìi# ^Š_V)¦óà øÍÍÍøoÞ¼±··ëO?Äþ¼Y«®»Üq·Û¢4ZØÈdBZEÜÊÓCw­œ*8JJqÂ$y)q©© ®„¾LOx²ÎHÙ,¦•g&l1™o°j׳ìOo¤ÕÔÔäã〢}ö_vxúô)€Ã¤I“,--ù333>|øµÇ#w6ç¯^¬'¢¹**£4ñêÔ C-%#ó¿rË??1§‚ÞP²Çd¶„¸è>Çkñd~T – ‡¨ž×“4JYŒ€s'J Zß¼%“îØï/'®¹rçó¼Ê6æûÒ”§F3fñpñ.Ø~Z¤ÇdÕ±*“M“³Ð¬Ì ÝÓ¢é"ÂÚ¾O2©íÿ®¥ÖËËþ=þ3;ü•w‰´²¸õ±’’ŠÊ!/³è ‡Gu;²MLH@uÞþІ>Ö”¶7™Í#:^3*ƒÌÁöG%E…Ì»á‰ÇâÞ>›+'ÍÍÍ·×Þ Onýqcøín綈6Þt Ç^¢ÐŽ{·v޲ „FЋR¹zåT%^^9ÿçY4vy ƒUd%U¦l/©#0?¾Ë}±Q:‘½€ÿÏþ5¼<òÎáøÌGçw òñhÍ7.Â’ÁÛMeÛçê€&±êàm*­½/àgÌŸ¬º³MÎᨬ¡§†ÂX݉œ"6¾oiÔ³š<¼"fç¼[鬤èÅ&ò wyÄ;ŽFÇY,Ï'.𶶃]#‘îg„øf.û‡D¡Cà³bëÒçú²BꆫkÙcøûçðrÙ=L¥³ P’xŒ ô¸UÕ$*ó=qµ¡*ŠJ\ ë“m˜ìY²œbÊOK»š:ÒE”¥½é4• üÝú€Ùbê‹öÕ’XïÞ9³Õs’¾ÀzÞRºJ[Å¥à_ ªï°ž:xSFϸ´™eÕNbù–¹ŠÀ?ì°êø©€è€,2sñâÅÏ?ÈÕFGUMeâı2‚Ââ6Ž!=S}4b奓LPÖ:dïUXZùÌÃ~®š¢ÉÇSRߨ4Ó™fè÷ø%ó=#)Ìq‘žæž¿Ý꩟Dø§OŸázdddBBBbbâ«W¯ââ⢣£Á+aaa¡¡¡!!!Ç=z4R™9sæœ8qâØ±c%%%ýof4l¶ÉB] “ð”€íÏ?)§"'Æ[O}Üo†ÛÒò+»+†áôÏI‘C×ü0„ÖþÿÌíµ•Ù»éHKH»†½"¶!)1ƒœö+)ˆøøª7ëæL–§êPk}ÞnCíÑ ZqTFkL¸ßÙóÉ95ô®æˆ·X½PJtê'éÔŽ~ßø„_#±å– Äák›»@Çåšè–§™UÙöŹmzS±ÙlEQ‰qN‘vI©@úúÄ¥æÑ{]0Éuû7 òóLüý`!æÃ¢¯2i›é¦"-®2ÿ÷ÂÚFP¸’Ø»ª²†›‹ðL:ÖÃñÂiçlKWíËStd•µ·”Ôáû üO‹Ú(5f)sóŽóYÚ³b¿$éÎD 5ÃÍ•„VfŸÀ×”á’T ÍþÐx|y/0àšíž™O~’Ó˜ñ¶ÔS9ñw,„xõVž%P°G–)ò ŠYú¿¦³}V[]MðíÛaÏÓÚ:Ãø„üH|µyÆå,¤3Ýào° ¤"-›FŽõñ¾w?† ZT'Îxž Š_+ŠuÓq×--®Üôëñ Tô+y!”öÆÓ¬å>­µ»@„/,ëX‡¼›÷Øt&-\ï6œãæ%(¯óýl|ëÀ佨;Ò|(5Çðí?ðrÑhtJJÊ… ÿ ü`·óêcÅXƒZœœÜÜ"ó7ZÄåwY©*+ê“Ë6Z¤ãØáDÑ™g-7LI¿u㬚¶žG0¥•àgwX_{®Ã½¸{Cðë—/_644466Þ°aÃöíÛ÷ìÙ³ÿþÇ=z ÄðVVV¶¶¶[¶l‘’’BŠÃÅÅ¥¤¤täÈ ‹oþ“ÿþ뜊ĠËGk­8ö<1'ç]VfVN^ŽÛIãñ2ü›N¹—cIýþÙÛ¡¥ïbçèiŽž¾îUº§‚‹cÝuÕÇt•½Ñfßï2 '¯‡Ô7ÓÊ’Cô5•&íN-¨Fê¶­ÞˆÅäf¾}úÀÿìÎMÊ2’üBSýžöø÷‰x»}KDe_ ÌÈÌÊÎÎÿߥ=Û>WFPnR@Bñ—œw¶Tî^¬&ÈË!>z¼ù~«§/Óq-­ÿ±xx뜴ø(Ni=¯ø‚֎λJ‡^›¶Dw¿´Î“´rÀêP§£RbB&'}‰lÈ3;itruEéÛW±^î;f óò¨io+í7ð]"ŠÛšr¦Èr‰Oñ Od(7?9ÜIC‚_VwE^µOàÏQ“Ò5ÎÇ~ødfð Aþ%[m^„Ý%$0ÓÌŽÔkÞ¹2%|œ° ŽáÉfJ³ÍFM>nAÉ1ë÷œKé?jEÑ7ÿ½ÿiA>n.™…ë·ß} º™è~tÏ0 “A#«Ð…I /|=×­˜ÅÍÒ3?ƒ§.̤×õ]ÍþÝ'!j‰ùÅžôÜ7-E¡ø\¼c_…R~QÐÔ“±ÖŠ$U)Ù¹»0dæO |;;»ÏFøÁn6êcÅ%'ÍúóàióåF2ŠªgÜüZ^íËSCUMÝé‡Oþ}áâ¥óÖÇ gM8mɈÔôˆÛ+ôµ·t(*È<µgÍ쥦ÏÞ|æÐ†¦¦&á_¹r  X‹Å’H$[À,mÝjooq¾²²²ˆˆˆžžø<èí²Ì~ÿ™§•ÚX©ÏZÒÔÒÝÐÒOàd<›©«®0m[Ò»žžÂûú‚Xõ/Ë s<¥*/i²ïŸ’š†'·T$¶v©À²òF®/»lùç¸ÑR¬Ñ^dþ;e>k?÷g¬ 2Ö5Yùå¦ÎLö·Ÿ©>†›=EÈÉÍ'7^ÍÚé^žÜƒ}\Vô‚q²<(Îý6ÍoRûAË2IgL GññÚD“iM§Ök”öˆzGe·öšÌøÕFÂ]óvÈŒëWßõY ¥"eŽº ÇgŒ*ªõ¿\ ¥³/àÏRS𳦢ñ««’ýT„f­Ûõ8ÄIHH`Þa/J¯¡¡Ò¤9aA•ËkÈ”Òø; Î…´ .^Iù –W¼ÑdæO||É«ujü]“Ý\B"âf‡Î§WâX-êSà3‹R­Ð—äî±5«NÛÔüº" +Jºwà ¢PË69õü´Û¦%€¯«„ÐOD÷jämeqŽñkrqí?ðñx<~rr22¤óïIÛ —³S”ÕvYº”á ¡w®LV’žµxsL š=†`¾PEh”ˆâøñÊ,©¨kh.Ú°ça|vCIò³ÅË·îð÷غtƺÖyŸ Œq8¾““Szzzee%¸Àÿë8À:`4GGGð±úúúo[‡ßàoÀ}de¹QrJZ /]¹r¢•&&¿ÿ¾úªt=±_C:ç¼B³“LUQÐØ–”ùøu9QúÚj~m²ï<íñãçlMÊÌ:½s•”Œš£\3µ£³­éƾucDøÅeugÎ3^³ÉÂr×\ͱbÂSïþðÿþðMNú7bK-Uœj0…qV›˜¬ÙöW|>¦­«T«ÞÅœ8°yѼòb¼ìË”g£w=‰eÀNöÜ&–CùmîòwU¸O@÷£ÖáÇyþ%#.¸âÈ­ÚÒ×sU¤&­Í(od°zTY§(ÔHW3üßÒµ[÷Z[« "¨úŸÀ×ÀoÿøQ¥ø¼ƒ1ÂÜ£dæ.\öÁ¦+Wšün²õ„]%Þg„?SYtÊR³ZÒ‡yê×wðg¯ßöÐþ!ŸÞÀ¯NysÌ솳ÆHt­ä™uàJ¹í§>+´nD;ßµb±¡Š¢$'ÛsÉ/Û…ÆQ˜ÌÆÞÀ'T¾ÕÏš¥•7\Ã[vîwe}ˆð‹sbfêiÈi®ÏD÷|-ÿ™›¶ê˜…~gkíQãùRR:NÎWM ~S5Xø"³ ƒù“µtºš„ÂÄóž!˜fä2!Û®Y"/ª}÷ócø£Ûß!·v™ýãa)1!öNÓ…½ D$&ø¼(híÌ·Ó©$*½ÏCP:;éxŽÜÆ ¾èäæœÔ­—ÿ¿íï0¬Ò¨[ÇÆH )¨¼Ì§u|jÕ|l~¼¼ŒêÌ?¸+%blq¥‘ÈŠ“ï]—™4cyÄ›\dÄ›^“µ`ÌhUí­ŸÃ7ž–‚îò‰í-Ç6/àáVp‰(ik|g¨)&¨¶ðÝÇÁ<…L¢ÒúHÀŸ­&.¯oRÜkH'9ø’„ ¿ñž‡Ý˜µÖ‰Ôk‹wÖ³›BzóŽ6RhÄF,‘ý+­-yoã®ß"ËÇ#ªeø¶–ÜÉþÀg¶š-ìi½<ÿíÇSZ’|\’вê;:ñ½î~pOIcëÛ®³b•Ic„?Œá#ÀÇôøz“P(ø¢krZŠâ•Å8G/ú«–ÊüIéÒ¥{÷îõ±ñª³=á±¡Ž²ÖÜãÒ«Þ>ûcÅœ%¦{S YËo¨¸’ëgoúóHâ;ô{&=î‘›át5>aaUý•¾ao>[B ãîîÞø_>€;mû ü7an“UÆjÍÞ‘šÛ™wøŸ<2Gkò•{OÉô~NÚÖ”¾Ù8sª˜˜¢û£W-täúføY˜ -ºpvÚv†ØR’—ÑŸª%#*þ¿mgò+X b²¢OUÓž½-3¯k1­þÝú…ÓDFMõ{šñ/àÿ£9^jëi‡fvø÷žI´Ù4M„Ÿ—=iKt°X/:Jø°}Hsw‘i˜Âóf,0N-Ã}yG):-t¦¾®ñŸ8µçê]¬¯"8m}ReS]A¼¾æX.n‘ß­î6¶|fiÖ>“\rõt©ÑcæiLäç}É?ÌŽ–_ß³“•Ùk{Ð=ôT˜0^VRM{úßÀÿs¦˜à(ÏçéÈXPkCæÚiŠ\\Š.O‹ÚHeËôÇqó+Þ}QÔ3i[õâá¼ÉZÆ;7´Òúþ<-i>¡Éo0Ý¡G‡óÑÕü¼|œ{‚N}0a” âä%¹ ”žÊñµÞ(Àǽ脦8VŠæ\Ó+Nü Wý>[gœATA#c_}¾I…Ê$—¯]:Ceæ_E˜ž©í¶Ë‡ŒùÇ8Ç–¶1,à LŽ)di!v[÷ŽÜü°=*?òš'JÇülëûo¾ Å{ùqFϻɷÎó¡P‹öÙ¶öÃnÃs ÿÊ•+wïÞýô†¶mDgë9ú‹»€Ï¢zÅåã[¥…¥7컚SRzÁr§”¤ÊŽƒ)oÓíŽMRTX½Ù2§Œµf¯<õùö¥³¹P܋ͧ”4~6ò€ö7nÜÈÈȨªªÀOÊ©À—¦­Ÿ1U@DáˆCP-¬P”|¡î$~¡É·BSÈ_^žòaYfŽˆu>±TA‚g¾ñ¡7¹Õà ­È[5W]€›c0€ÿ>+öžÞô üÜ\‚’§o=Á’XÍ·êMÄB-Õq¿MŸÖÚÞI&6¸ߣ()Ê+¨sïY&øÖ€ïo­9QJeétFL°›2ZTųÒân#‘–îï8FRLN{EØ[4Ád´âï]Ú'!*¤>coI}Ç(aóc´GËÈ)ý/&½Ùm„Ny¬§$5ié®|téÞ KùyEU–E¾É®¨FTUQUOië`þPà~Þq8,9FÅÉ%­2#¾{Mi¼§œ¸ÈBó#è:VÁ±Õ9{ § ñp«jo/¯'0½ßᲞ˜÷Ê#WÑØfj ÖûŸEyxÃóÛ::ݶóóp¬?YÚ@I‘›Š›ÍáåáZ½÷&¥µ¿Ë2ÿº„Áƒà²3ýù=Y A”€â­W•íøc])n.ѽÖADöVLaâdUyNÎQq´†¬ÙRÂÂ’^ +|js^ÌT‘לŸ^3L#||îÓéÒBJ3–çap Fãúx8Ç:Å#,R}ñîeSø%Ç=dEøM+æ*£„T¥Uvtv†\úpoæ~G"Û¢õE‰ •Á+:›ÙÀ§}%ðuY«t”§n.j`yBÅëÕúò(×i·Wý)ìp>°<þµk×¼¼¼š›?^_ÝÖìëpB[sîe¨n33"îO›$ùÛì«A/rÞ<3[jÀ Bq¢¸5¦Ý‹ˆGDm(¶=¼IDlžӷëÉŸï®\;88¸ºº)ðëZ–Y•4Okâ'Àù®¢“Añ¶?0NN %­ºõ°•½Í‰ùÚ <ówŸzWí{ãÕ¹Wdzz|®–ŠþÊM¶έ˜=~?«FŒ¶ðÉUéÛ–è KŒž0ÿAb.2þK©ÏÙ¾|º0/ölkÛí—I‰³6rñH˜lûûMn™¿»•’â„ýøM­˜ôGFS”¹QÜê+Ìì^7VLT¥ŠwÕ±;ÄVzSé¦Å“ùy8åôVÚ]u:µ•ô(~^‘sq¤¾VŒwªÿXò›/§†áew7ÛùzJ¼Üœæç\3bBtä¤Aƒáãæœª¡ªÕ% å)«ŸçÖ €ýgé ã|ÔÇKròók/;\ëòkÕ)Aªò’(‘UÛŽ\¾xn:/{±˜ŒºÅÕûØÆªÍ¿ˆkų/½ð@L-{OçËÿ›¡ÌÍÅ¡¿åx•6<Çð‰…ÏgÅ=JvùÆ}1yu÷/¬äç‘’ûÛÞÑû–Û“<Ü\23Wã¨L&aÃ\€eÎ Vù>NÍIðfíN_{ô¬ó•s³'ñ#$”TŸíx/œL©ß¡Ë~mw+Î qŸXÚ ø7ØÀ¿ß@ Å˪î©s×]sº¶jk}8÷„Yõ´Ÿ øÈÆ«òòò7oÞ8::zxx444|<ÛQ]V÷º´דÅöÖ–œôÔ°ð'¹¥eíÌNtÑ;O[[;'¿”ÌrZ°éM×ÏÒ˜³Ð-ìåA<''ÿöíÛYYY È#‘Hßï,–ûÂå,›«Í«aò8üÚô°Ù“Uæ›íÍ+«n®Lš9MS|î¶ø¼ Ö°s3ÆÅjßXñÎYõGl6º?G+Ü=·j¼´Ø¹[aä¶÷ŒÖß«SÆË#[¼9F^»Ù\u¬Â’Ýg «|xƒìxt‹¼˜ÐÌÍ'sÊ{εf$GÞ›¥:¡{y ×Ú‡NÛ¥¨ BÉ]½ýô–£å$űûkšiï;¨®W•—èÚH¨=ïäžR£„ÿ÷Ï=,{¤¥¾0ÉtÎЇèJŒ›·†ÔŸŽìûü7‘«fáçùÐç­Ù•QÑXùêÑdY)ÎÏ´Ó©iȦÏ|F z®2'Ç!÷ˆ£TsÅE„ºÌ0jôßv×~_6K€%¾ümN®Ù2=~I­ ×¥4“†¯:¹~¦p÷'c³½‹æòqK_{–ÏÕïÌŒ¾«-'ÚcQù‰.Ï2ÚúžbGø¿ÉL˜¤¹l‘.ww¥ŒŸµáuae'›!LJ£ãá-£x?]eΚ¤< rœN-ú­™á8ž^‹„ôþgÆ ýþý=ŸN´Û5 8)Š÷ÌãÜæ¦Úc§óò|h;òÊ“ýRËØ'JuF»þƒ¼¸l«Ãûö—ƒK>´,.-;gï YKï$5g–77ü¡‹”Y_Ó ü¼ g`²œ{~ùúz#PÏN!ù¬W¿¡xÕW/^Æ×žøUŸ¸Â~vî´MKKÀwrrª¬¬¬ÑPByªÅ¶K~ßý*£ö¿>„Úæçç—]SSó…£øL½ª]PVCbŸ…ÕA#W K+këÚÚ;í­e¥EUuÔ¶®FÐFi~›uËÍÅÕÕãáÓ˜ªú¦Žþõ{‰¸ê⢒¦fr×uÔÞš—šàëéîîá“”ÞÔB¬)+«®oüÚÝ.Ÿ=-“ˆ«/),Ä`›Ú{ÛÑVúîÍ=Ÿ[n·¼"b“I”:1=åeTÌ«š:<¡ [R\ROhAŠÃ µäe¤> yö4¯¢®ƒJEV5¶ôœ¸…¯. ¼sÃÉé–×Ý„”L2½½ÿyÆUæÝ÷q¿dwÉ/$¢× ¸ÔFi)+*ÊÏûTùùåäîéázZfg}yYA~>ü‘_cP[^?âæærÛ/(%³´<ý":".)‡Lm­©*/(.k¡uí¯#7Õ$ÅE‡Ü¿ÿ8òy®¹µ [_„§´õ$X™“æçéêäèt7(4³°¢³M‹5i«*¦0sUz!úÙ£gç{ž”bš{»“BL~ñØÅñªƒƒSàÃt]SoºëŠß»}ÞÖÖö‚½OPx%ÿCnBÒÿ «’^Æ¿zý¦žÈ:XF¬}þ0ÀîÈ¿›W`NiUém¤´×/ãâ_•V²î4ÑNmŠ rvrôñ¿ŸžÇÚŸB¬Íyú$,1#¯­³SžWXTÛ3ÕÖB(ÌË«¬ý0-K¨©ÌË+$°—##“¶1™eo^Ÿ5ÂMO¯›ÞÊ« Œ3ýkÞÓ6/&Â÷¶÷4­Ûwï'5•¤ÍV­·²÷*ŸQ?Õ¯HìWªqøoûþ0<-3##ÃÛÛ°7++k,Ô†¿}éØX íÙ›Eå}¡RìííÝI(”Êóü~‚0ûÂ… ±±±CfGÀ.kkëèèè‚‚‚†††ï}Ç«ŸZà øß[¿&ðû¾dê²OSüm¡º ÈD99_GTtnb1ñÛ¾? obì'OžØØØÌöö¶öŽŸþ6Š?ðß3€ÑÛÚ¿9³Ã ø ´vLLÌéÓ§}||u‡ÆŒMMM7nÜ^p p<¥Ñh_nøøP#@?ð¨á|N¼ãp8“W¯^;wÎÁÁ<;dggÛÚÚ:::¦¤¤ ÑhÐ'Í ð!ð¡ ð!ð¿ øàwÁ¯ãñøÒÒÒäääk×®?>//ohì}êÔ)__ß´´´ÊÊÊæææÿ:9  àÀŒENWùñòò~þüùütHHø¹ÐÐОs ð!ð!ð!ð!ð¿ð{–â§§§#w‰ üòbøAˆç=<‘Á`Éûœ/†À‡À‡‚À‡Àÿfà#Kñ„>{ö øúõëõõõßÛ………/^´··ÍÏÏïÏ||(|üoþ{ö¼-²PP7..PÅÖÖ„ÜßÛ€ó§Nºyófbbb?—è@àCàCAàCàø  %%%III¾¾¾G ý®l÷ôô•ìP^^ÞÜÜüe;@àCàCAàCàø€!ÈjoÞ¼yüøñ±cÇììì0Ì÷³@zzú?ÿüsîܹÈÈÈÌÌÌêêjdÆÿûÆï¡htt´‹‹ËÎ;oß¾ âðïQü¦¦¦K—. €Þ2€ßÐÐ@¥Rû3Sܳ5877ô,--AÇä¹F®]»–œœü‹„ø$ ²qDêСC _ÿ‹?''g×®]iiiVx<þË—ð÷>BÑÖÖV,‹l¿‘3éÚµkóZqƒ*PËׯ_߸q#èD€Þ²å ÀïìÇ™cHVëëëóòò=ztøðaî×èEDD¿ü+öùóç *A j$j÷îÝ€€9¿Bað322ú³½t€Œê€œTTT€®ôÓ§O½¼¼€ Ö××;v¬‚‚‚¼¼üè $’š0a¼yóþùç???Л@î{B$û3žÓøÀ7ú-_¾\YYyüøñ Ÿòl‰vÓ-¤FF|aDz5âËû« áR§ƒÅ–aÛ’ñ£N:XÂÝá|dû™LÆ`0ùùùÀ ßÃÄXgΜ9~üø‘#GLÀ}=zôĉgÏž½víÚ­[·@|Ž¡¼<•Jíèèè?ð‘)æäädÄ7]¾|ÙÊÊÊÂÂüÊÁ‘¥» Ú (&øÔxônF^aAK¥e´¶¶>ÃÖßÿ Š^yåý…T1¨PPËà\³à)xñÀ#¯¤îýýýcbb233«ªªàö‡ù4 ǃ ?++ t¨óoÞ¼yýúõ‹/ž?þìÀtîÜ9{{{gggooïÐÐPàVrrrª««û¹>§§3>ŒtF€A! ÀÍÍ 0ßÖÖöìH°°ÿE¶€Á#()xq¤””W®\ÕŠ4?Ð~ÎBýü©eD=ÕŠ8÷‘TRP´ .888€àöÁƒ/_¾±t¶—ð¿C"‘êëëKKKß¾} ‚ð{÷îÚÓÓÓÝÝÝm_î >000<<Ðàtpp8…Bégxß3úÔÒÒRWWWXXú‘‘‘ÁÁÁ>>>Ïä0”;[7»x%ý/·‘(PXP:PLÐên³þFÊ;R‹üKÉÕյ瞿]\\FdKM×ÏÏïáÇ ~NOOG&¤ú¼©ßÐY«‚|Ðãn¨¤¤ÄùIII «Ñ?~4………Dž={üHrrò»wï@ñºÀû’r•Jmll¬¬¬ÌÍÍMMM‹‹)<“ÃS P halõüý˜­‘ZØOÔSöYä_J¡Ýq/ò÷ˆ,)h«OŸ>ŽŽ±= }QQà* kŸ«S† øHXJ @ü € ú óæMr·^“ÀSRR™AÇ!;;Dæ +ŠßÚÚÚÿð¾Ç1Ñétà)°X,H¤ÒLKK?ñz„ª·å¿¹~–b‚zìio½ÿáÇk¨Ÿ\‰‰‰ Á#Àà«W¯Ù‘5‹´^€úœœœâââššš¦¦&ÞÆà÷f>€0@1è}—TUUÈ_ZZ bþ⨔­òòr @=ˆÏ±ÁõsqÎ'£:ÀG€ï‚@:H&Ñh4H¿xÄ©¤—þýtäii¥ÝBJ:ðæ5Lê<±â´¢nàÆ ˆW]] ˆ‡ÇãíA¤ÚçhÆ¿'~8ý2™ °ò   àß00aÙIîH);ø¡Î¯¿ß÷'™lnn®¤ ÒoqÂþ·FpaA{ûäqD–÷WSO%Öwkd!@(M©Tj?‰7”ÀGpŠÄÞ ‡ Y¥ †¨lÛÚÚ@âà'¾ö½;# È$’2e„ŠÚ­Oþñåí- ÔȪßÞOGvañ£â!tVÀï}ªˆ:,$N¶eKõ'9”LO1>§_ØÁm~Pð1#O…Âöõ?øPPPPPC/|((((||((((||((((üos`C1G¨~©Âþ‚åýÕóp~On{fÒÛ¬ÞÓÖƒ²Pç“uDƒ’Éá©ÏÎþ·\õn*¿By5}ÒŒ…Æ|˜ššŠÜç 1È7ÄöZZZâãã‘S˜@âA#]¿B{—´÷#ÔHR`·F|IñBCCC‹ŠŠúååY: ?ÈîÚüüü+W®XYYyzzÞT¹¹¹íß¿ßÖÖ¶¬¬ üÖW•ÙÞ#»€ÑhôÎ;ÏŸ?ó×кuëNž< ø+öÔ©SfffNNN7¡F¢ŒŒŒ.\¸0èxž²¶¶ÄCî9ÒçY‘CyZ&À/…B©­­utttqqqø÷˜]}÷%°CSS•JýªóÓzNË$‘H………ööö¥¥¥¿Èô=¨`ºoèýŒ!‡··7¼‰ùH•……‹ýE ‚[|HºÆ“ã‘‘sæ[ZZžð¥¥¥à»§N‚À‡À‡‚ÀæÀ?pà@aaaUUˆo,ð‘éZ6ƒðPÔÕÕ588øËYáp8¶#Ðéôþ¿¾¾¾¨¨(<<üï¿ÿ†À‡À‡‚ÀæÀß»w/x,//'_¾„‡ Â¥R© ÒNNNvppˆŽŽ#/óðáÃ7n€ˆ½Ÿ£:=À„ÐÐPKKK||(üaüÝ»w§§§ƒˆú‡ØÄóàÊÂ`0¡ŽŽŽ¹¹¹CcàY®]»–˜˜ŽŒêôøÀ7¬æää„„„@àCàCAààïܹ3-- Àª©©éÇDÚt:øªªª[·n¹»»ãp¸¡±CVV>ð2µµµD"±? òðkŸ6¼ÿþÉ“'!ð!ð¡ ð‡9ðwìØ‘ššZTTÔØØøåáë!>2 2ãìììããB衱ìñòò¾xœþ ãCàCàCAàCàð‘« °7##ãÆ?îÏÐÊ xà_€—ÐÝ àw ð!ð!ð!ð!ð¿ðÞI$@hbb"`ollìÙ@ûúõëÙÙÙ }nI€À‡À‡‚À‡ÀðÛÛÛ‰DbUUÕ‹/\\\’’’†Ì€ÞŽŽŽ)))È–„>;øøPøøß |<_^^îêêš™™9”¦HHHprrН®®Fæm!ð!ð!ð!ð!ð¿ð‘%: %%%ÎÎÎCi `àe¢¢¢*++ ÂПJlªª(oh$v0:íà‘m}&ƒ}ËAé¹€„þ«J™ z+­­­ãkû`d UæÎá|ütÀïìèhgt¼‡‚ÀÞÀommÅb±………ÞÞÞ€½Ci С?úøñcPûÈ Õ/·?÷uø–uË~SQ±pðÍ|m±kÛ±‹®åõäúœãv™î¹”ƒ®X+dD{ØoZý»Oä«fÚgüWuføŸ[Öï½èSVßü#€ÏHxê½Ål³ë½¸Æ:þà¨åÜÁÆÆgV·3~ ˆAàÿŒÀGö1ÕÕÕåçç#gõ×××¥)rrr\\\‚ƒƒA‡ÃÑh´ï üö&›ÍÆ2‚|À&›¬Â<§i)¬Û®Â—½œ©§!ªkû®l`±/Ãç¸Éx ž¿ÝH´¿]s[G]qæ«ÜН;|€ßqÏåä„1r{/úÕ4µBàŽÚëM—NåT ˆ/¤u@àðIU¯·/Ÿkö×e\k_Á “xôϵÓoÍÇ »V=¬€O¡PðsssÁõåããC >6#£¹©¡´´¬OîyFÁW¢óßå`›ظ‘Åÿ¾¾¾ ‹: »ñåâ|±ô¯%3ÅD•Ï8Ö4ëó"¶š,Úiaƒ®i T$ÍÓ×”Õßú2§b€Àw=¶pæT·ûQÍÔÏÀ¹8î®îoŒvœ)¨üº nƒü ÏÓÇN8`T‹‡À¬»e•¿¤vPB1ð€ß”÷tЏÒìå-Ô>>Ú‰[:sŠKíYÿ ü$‘H555ÙÙÙ7nܸwïàÿGŸh#ú9Yéë,¸~3 ÝfÐñ=ON/ ¦»Ð/ÀGáWUUeff^¿~= àSž´µø;Ÿ™£¿ÄÙ;†|ùeè¥ÚRãÔfºøEQÛÚ¶1Œ'[yyyàï>—âøTBý‹`ûéšce¦Z]t{›_Õ„«OMˆMNÏm¡Òðç}|íå÷{¶šššŸ¸t3¯¦±£³ÌÊÂìçѱ%5ض®/t¦<»{ô¯æf{<ü£RŸùêi) øäÆW/"üƒžWãÚ;»òÄhmNŠ }Vibt¾g´cB¼öíÞ±nýúÝû?ŽË uu7>~]qöÃз9匮Bc˳ƒý_g”µµwU‡ö¸zp˦ ¶îñKl¡}…Ç!Tæ\8udƒéº5k×<ç‹%²/[&=#éE`@ÀG·±¼w?<O¢1ð‰5ï>Eè5z@ªG‡Þ ‹I¡°KÝR_âvÉz³¹ÙzSÓãg®æW6vMø~ ½£3')Æ?(¢º‘Ô]9ù©ñ~þ!èZBÏ…Ž)ˆ·<¼uãSóƒVÏ3ÐŒÎ~µ-•ð"21½ˆŠ¯¾|Æb£éú›żýøëLÚÓÛçÌM×®^½Útϱç¹5½ß¥bK®Ÿ?aº~=¨‘C–7±¤¶a üº¢LO»ãã…ùÄÆMµõð˯ƃr0)8?»Ö¯^³vëN›wðb;¹.â¾—Žª ŠGüðy‡—™¥ÝušsåÈ>Óuà"Ø`aí^AèbevP_E…%ÑÚI~×OoØ`úÇÞ£ie¬;º¾‹ Ù¹q£és{§PR×Бý:6".³­•êqÚÔtÝzSóÛá)?ð‘]WÈ"üôôtÀp~ºþ#à3 ^™/V—R9iç‹%˜‘a9£× Ù™ÿ.xáseQ=r€° ÀxŸÀ S©Ôo~QJèÝIÜœ(§€Ð¨]çÝ“£Mæèï<‘W‰éÒé>³µéÎ…]šcE¸8Ùäž2ÓèYj½oè3‚mwé(³õyŒ#ƒ«‰ñ<ÐÚ@Cš›Ž¸ô„ñcøøŒæ²½fËådd/ø^’ÏÑIŠ2Z[l1xR}zôºÚ‚ÜÜÝWÏx¥E÷ã iàÓ¿ÝuϹ9‘é•ÝŸvþØFI‰IîyílÇZôâöÜ߯ruW¬¢’½Ï£¶ö¾»Ë´êô¥Ó'jÎ5Z1×€›‹«ûë3|Ÿä·#=‹Îf«M£Exºk%«jà—߯þ]bU†é"mž®6 $¨»ýt9‰Î–Àíy\AT˜]N‰±×£‹è”º£[—ˆòsõmܼuIÕ-ÔêÄ©Êò\ìrñòn:r“5zô`š†"ç ò©ÏZž‚f ø0)˜? $ÆLš¿k¯¹`wbêÓÍ|.ÙiJŽBžròŠoÞ‡ #ò1£iR²svl4áéú°€„¼w$óg>²ëª¢¢"--íÊ•+øŸŽ¨tßÕ;[úÒr»¡„¬ùŸ‹ª»/ùÎ6tvâ…ã{ŒŒlÚ{üQÂÛfZ{UI¶Ïm· È—X Ë`­„†èÐ@Ÿ ¼òO‡Åboß¾íêêš 0¢÷ÿ>a`´ÜÜܯ~mö«MËWˆ q ˆŽÑ\hí•swþd%C³}9e5ŸÉˆ¼lõ›œ¿°ØÜU·Ø¯­:\& Ìä”ÖöUË ÿ3ë'JóŸö Â’è•é–LâãæUÑÒÙ±y©ŽŽŸËå ø B¾¹‹¢ˆÐŠ½×Š«»F,_:jLTX°ñpn&鮵Öx)! 9³½–NÖ-ÒâÖXõäMi;“ñðïœÐ/oyù¹µ‹6‘÷l¥%EV»ƒ#¶v¶áþY4c·ä8]Öíø]JH€ƒƒÓúfXKk‘!³ƒøÏ®e‚c§­¼äìuÖbÍXy1N!é«ÁÉdzËù¿wkOÑReKMYi77¸XG©oH/kêüAÀoÇ—mט níýº±“z~ërþcN÷‰ªÓŸ†b‚Ü jºg®¸9œ?¤§¦š„®¹=¦‰ü ðoìž&&45âMEðÿþk/œSXn[Gg úõrq€EýeÖ¶¶&FºÜ\œÂR ÞTvôçÓ«ÓçjʱÉ&h¸ÊüÔ¡CÓ&Žæâà¿1·‘‚ª·½²ü¼\‚ÆGmo]¿¸L}"7'ŸšÉ›*bgg»Ç3>ny}ìO™“ãà<äEkc Càç>»3ËH_€‡‹OHdöâáéU¯Ï ò‰ŽÕ:|ÎÍÓḞº''Çò£7›19{Ë ò¢8ø§÷Œu·ÝD˜i´²‘ãí;vVeDÀSó³®,ÀµÖîÔŽ›x ½¹‡þ\>ZŒµ¼$ "g²vËruà2ù'ÌJ­íœrPGéX•eVgOhð¢Pü²J1ý›/VÀonnÀóæ½½=èXú!6ðçÍZuÝ去Ý¥ÑÂF&ûÒ*zàVžºkåTÁQRŠ&ÉK‰KM]p%ôez“uFúsWˆÍf1­<3a‹É|ƒU»žez#­¦¦&|píÓh´ÿ²ÃÓ§O&Mšdii ÈŸ™™ùðáï=¹³9õb=ÍUQ¥ ‰W§j)™ÿ•[þø‰9ô†’=&³%ÄE÷Ù8ÖàX‹'ó£ ´T8Dõ¼ž¤QúÈbœÛ8QZÐúæ},™tÇ~÷x9qÍ•;ŸçU¶1ß—¦<5š1‹‡‹wáÀÆðÓ"=&«ŽU™lšœ…f5`éæY3ÅÑ2‡l18âÕ#ŒÛcíR#²{ñù›MÖö}’Imÿøw-µ&(X^öï‰ðŸùÛ௴¸ÓH¤•Ũ•”TTy™Eï=<ªÛ‘mbBªóöW4ô±¦´½©ÈlÆÑñšQù$`¶?*)*d~Ø Oüh<÷öÙ\9inn¾½ö^xrëÃow;·E|”°ñ¦K8ö…vÜ»µs”%4‚^”ÒÈÕ+§*ñòÊù?Ï¢±ËS˜¬"+©2e{Iù1ð]öè‹Ò‰ìüö¯áå‘wÀg>:¿[Gk¾q– Þîh*Û>W4‰UoSií}?cþdÐ5˜mrGe =5ÆêN”à±ñ}K£Ö˜-Ðäá1;çÝJg%Eo,61½Ë#Þq4:îÈby>qù€·µì‰t?#$À7sÙ?$ }Ÿ[—>×—R7\]ËÃ÷Ø?G€—Ëîa*]€’Äûc„¥Ç­ª&Q™ï‰« UQüSâJXŸlÃdÏ’åäS~ZÚՄБ.¢<(íM§©làïÖÌS_´¯–Äz÷Ιm¬ž›ôå€Öó–ÒUÚ²(.ßøJP}‡õÔÁ›2zÆ¥Í,«vË·ÌUþa‡uPÇO|@|`y™‹/~øA®6:ªj*'ޕװq é™ê£+/üc‚²Ö!{¯ÂÒÊgösÕMþ8ž’úÆî ™Î4C¿Ç/™ïIaŽ‹ô4÷üíVOý4  Â?}ú4×###_½z ^ 9~üøèÑ£‘âÈÈÈÌ™3çĉÇŽ+))é3£a³MêŠh˜„§”løI991Þzêã~3Ü––_Ù]1 §6(HŠºæ‡!´öøgn?¨­ÌÞµHGZBÚ5ì± I‰ä´_IAt€ÀÇW½Y7g²ä8UŸèà€ZëóvjVÐ ˆË 2ZcÂýΞwHΩ¡w5G¼Åê…R¢Sï|øèÑ£é †·²²²µµÝ²e‹””R...%%¥#GŽXXX|ðŸü7ð_çT$]Ö˜8ZkÅ¡°ç‰99ï²2³ròrÜN—áßtʽKêðÏÞ-};GOsôôu¯rÐ=\뮫>v «tè6û~—‘P8y=¤¾™V–¢¯©4ÑhwjA5R·mmôF,&7óíÓþgwnR–‘äšê÷´ÿÀ¿×HÄÛí[""({øj`FfVvv6øÿ.íÙö¹2‚r“Š¿¼à¼³¥r÷b5A^ñÑãÍ÷[=}™Žkiý÷ˆÅÃ[ç¤ÅGqJëyÅ´vtþØU:ôÚ´%ºãø¥už¤•V‡:•29éÓHdCžÙI£“«+J߾Рðrßi4[˜—GM{[i¿ïQÜÖ”k4E–K|ŠWx"Ë @¹ùÉáNü²º+òê¨}Žª˜”®q>öÃ'3ƒoHò/Ùjó"ìÆ(!™fv¤^óΕ)áã„u O6Sšm6jòqsJŽY¿çDx\–HýQ+о øïýO›òqs‰È,\¿ýî£XÐÍü@7ð£{†Y˜ ™X….LJxáëé¸nÅ,n”žùø;u¹xd&½®ïjöï8 ¡PKÌ/ö¤ç¾i) ÅçòàøÊ(”ò‹‚¦žŒµV$©JqÈÎÝ…!3RàÛÙÙ}6Âv³Q+.9iÖŸO›/7’QT=ãæ×‚ôj_˜ªjêN?|òï /·>n8kêÄiKîD¤¦GÜ^¡¯½ý CQAæ©=kf/5}öæ3‡6455ÿÊ•+eÀX,–D"ÑØfiëV{{;ˆó•••EDDôôôÀçA 88øk—eöøÏ<­ÔÆJ}Ö’¦–®è†–~¿ ãÙL]u…iÛ’ÞõôÞ×Äè¨|Yf˜ã)UyI“}ÿ”Ô4¤¢ ±í´K–•7r}ÙeË?Ç–âà`ö"ów_ ||Ý)óY£ø¹?c‘±~¬ÉÊ/7uf²¿ýLõ1Üì)BNn>¹ñjÖN÷ªðäìã²¢Œ“åAqî· lþx“ÚZ–I:cj8Š×. šLk:µ^k” ´GÔ;*»µ×dƯ62èš·Cf\¿ ø®ÏJ()sÔe¸8>cTQ­ÿåb(}–Š˜Òœ5X]•ì§",0kÝ®Ç!NBBó{Qz •&…È ªÌX^C¦”Æß}p.¤UpñJÊO°¼ân$3àãK^­3Pãïšìæ7;t>½ÇjQŸŸY”òh…¾$w­9XípÚ¦.àïÐåQXQÒ½»_…Z¶É©ç§Ý6-ù|]¥ÿ³w&ðPnoû¾/‰’¤¨¤¢=-·öEûz«Û¾ß¥Bv‰²–• YŠlÙ;c7†1Ã0ÆX†þÏÌËäö¯(’xŸ{}f¦™óžç9çýžç¬/F@;ס6Rs4•%8”V§›þ,à“Éd~tt42¤óÿ“¶>6—Ç+ÞsÖ&\åwÿ渑2Ón ŽÁ±ÆÐ¼6ÍWUTRRfJEm¬ú‚ ûž„§”çD2X¸tÛA/O‡m‹§®Ýe˜Vð•À˜H$𭬬 áÿÖq:À:pš¥¥%|@ üÜ:ü.;úÈÊr"r#5æ/\¼|ù2DËõõW¬XuË3ˆ@éÒŽ‘‹_JÔ * c·G%}~öµ¶æèî¿4Úm¶¦’ÒÌmQIÉw¯”–méVMkni$Ý9°vˆ¨¿Ä ­i³õVo>yvÏ,õ¡âÂ|øÿþðõÏxVVäžX¬*$ 8AgÎ2=¶–ééë¯ÞþOx:¾± «T‹>Ÿ>´eÁì©ò⼬۔g£é=B-Ó-ô £ÍÌe̬¥‹ˆ_€îw­ÃsüGVBpÙ1çÒÜ÷³T¤G­I̯d0{TÉÇÔH+ÖýkñšmûÏžX£ *¨úMàkð›¾þë\rZ ÎanÙYó—|öéòåú+ô·6-¬jè4Ÿ¦,6~±Aiíçyâ÷÷ø3Öí xb ÀŸsĵ#ð‹cüG Ž›}˜PÇlR+rÞ_:að—îô!’m+y¦ºYNmü#€Ï ­+qVW÷,[¨«¢(ÅÉj¹ä—ìÁëZ[+;¿ªðƒ†s–VnØx¸‡·îÞ}üÄ~nˆð Û€?‘CRq]YÓÀ·ü:ð5‡cä—&á;Ä$5™GŠbF®I­ü#¾™™™——××—eN]lëY¤¦\Ù¾BFHißyÇRJcfȃõs4Wì<™œ]ÂTi.—_H¡Ö7×à]Œöê.\ºzÛß³gL3´¼KùÚô ÛÑÑÑÚÚºSà³Wïüô²ÌÒ1;bЊãV9eÖ2©uôF§»²>GøÙØài“ÆÊ©¯ O±–þÊNSuÈün¿¥¾ô¸Þié‰VÖ·ôuƨêÌ“”ÑÜú Ÿòzñ”Ñ’ #®:úâ«‘Û„j¼z‘¼˜æƒ¯á>evŸZßæöÇ–G¥Å…XC:$“ýsE%‡»¾É¨ïÌ75Ðji ‚ÒÒÒ@&©Ìà«Z}crd¬°€Ò_;?♥¯O ‘RPóz›NoþÒ«¿ øéá:ò²ªÓv<¶?5TZTïäÍJ 3 Œö0‘—5ui`\*2âÝP’N&4·;ÿ™ý1àÞȱÛ>d¶Ã(Œ"üy >¾‹ÀŸ4 ƒžõyMNMV¸²8çàÿ”ÒZÿPà_¿~ÝÃã“W-Mþ®º•5f-{–PôáÕŽe3­ß“É\~C#æÜ¾ttóßÇ"?â>µ6„=µÓ2šOXXU{¹[@ÜW-Äãñöööÿý#ñ»¹Ó¶‹À °§2TcÆ®ØTvdÞìyæØLq7=^TRº8i[’·qÚqqEû§ïjû›ánxh¸ŒØüØiÛâkvd¤¼¬ö Y1‰¿¶_J/`&ˆO~½pÂhÍÛ“ÒÚSÑ ×ÍŸ,*2ÁýEâÿÿœº’ô¶‹Õ¬ðïS+åÊæÉ¢ü¼¬I[ŠÅÉub"ÂGÍ|«ÛM¦ã3Íž¡3W/6øý¥¸x¿iÚZz;«hì»w¡¶ŠàäuQ…¤²Œpmõ¡\Ü¢+.<¨¬ùÊÒ¬ßüV*á̪)Òƒ‡Ì;‚ŸwðuÏ*+Z~ïa:HRt¿±GUûÐSf„—Ò ©ÑšÛqÿü¿§‰ Š8†$ cAõåIk&+rq)Ú¼Èj¬Í[¢=Œ›_ñÁ›,ö¤mÑ›'³Çièí>U^Oïø³5dø„ÆÆáÛCfëã«øyùv=ÇÅ>."¨8nQjy»pÜ 7 ðq/8íŽÏÕ¯>kýÍÏ'~4­˜¡Æ3LçuF%£_mŽ~Q­•š¿fñT•iÿdáÙSÛ7Žèñ ±ÍmdT1/0.8“¤ùšnîsú¼=*ý¥¹('fâ¦ËõŸ~ø£1Þþ‰ìv¾Ê‡Á,8`\ß¿õÍ1ü›7o>xðàËÚ6R<­ gj/l>“ê7Nm“–Ùpà6'×äìni)•]‡-b>Ä[šž¥¨°jËYlsÍ^~lÈÎÅ3¸0Ü 7É©üjò@û;wî$&&õàGa ȹñë¦NU8fáSZU^ÈŠ~4_k¿Ð8g¿ê÷—§|^–éK¤TXŸ^¬ É3GïH\j1Ü¡‰+g© psôð?%‡zLš2œƒŸ›KPê¢óóŠZfõ-Š œ¯¡:lÌ”ÇáñõM-TJ¹ý©}ŠRb¼‚=^%±€oøøž†ê#¤Uæ®Ã•Ñé”/ÓñƒÅ1<ËO>¨¤Ð<-‡H‰Ëi. ø€k`´2êÉ×HŠ ©MÝŸCè䥊ô`ÍÁ²r#ÿ NÈFvábü'”µxO:.wÿ†E‚ü¼b*K^Æ¥#**("Ô56·þVà?ï[•"„áä’Q™Þ¾¦4ÜñŠœ„èüMÇpeLÃ+бûu§ñp«jîÌ'Tµ2:¿Ùæàlq!îåÇná*ªi5÷Lþ!*Èëhý,½±¹Ån›?·Îº3¹åµ•”}Ê`&/תýNuõ]]–©÷Ïu<‚Ë–„A’‚Eçw…Md¬ž–47—Ø~C k+>3rœª<'§ˆCX½OÅ7w6^ÀŸ?NA€9ýȵtÛá›&çUe988ÆÍÐíÖx%yd‹7‡Èà5[6©UX´÷rfQ·OcP-o•š¶å 6Ÿ}®5#ú¥ÇtÕáíËk¸Öì:rúÄE FîÖÝΖgG)=há]RMÿÔL{j~JU^²m#¡æì3ûvI‹ÿuΣ‚5ÒBÈŒZ?s<ô!ÚãæßkꂯíJGöSzÜ˕Ӈðó|®‡³WïI,¨,|÷tÜ iίÔÓ ñȦÏß|F nµ–2'ÇûÀÏ£Í4£Ã¢Bmnü¯©ùŠ%Óøx0K?`S –Lâ—ÒðyŸKg´ÒÉEgÖMn_णg°Á,>nóWé¬Qý–¤ šrblˆÉ°y•ØØùô+Â#;|”ú’ZÜí…¢4}ÃûÌÂCZë*-náýìt•™«£ÒðÈq:¥¸ºÃx:,šô×úp±÷ðïêyø Ó=Ó¡‘Â`x/ù§V“JOlœÂËó¹îÈ+sÍc(Õd{ùpÉ6‹OM56‡}®Y\¦Ö÷vÍg.½“RŸ–_]¾C #(»®¤øi>Öಹ¬ÙW¾½n”³•o:sã•Î ¯Úª…KøÚÓ“¢ê–ÙEcûàNÛøøx¾••UaaaO†VåǞܾlÑŠ½ïK¿õ%äÐ6ww÷”””’’’ï­Ð#Àoe4à2òJjYga5Ó©¸ÜÂҲƦfFS}A^nVQ­±­4ÖUˆxílgckëðäEpÔܵ~/…Xœ•Cª¦¶ÝGMõi±nŽöö.ÁQ ¤JI^^1¡òGw»|õ´L ‘“™‰¯ 5uô£1÷cœ‡«³³K`hTem]s%!æíëàw%eä*RENv¡ª1‡A¯IKŒ}êëû$àEZAY3†ËÎ,ª¬aŸ¸E.Î}æ}ÿŽ••³Ëƒˆ˜$jCS×óL,L{äjo2½îîXB¬.5ÖÕäee¥§}©ôô|jûôðo=-³…Ÿ—‘ž^EýO»Æ Õ¼ynggs×Ý'&)ê {…¥ÒêKŠò3²ójèmû먤’¨° ßGü_†«ëIéYäºFv‚…ØxwG[+K«>~I™-]«ZÌI[Uq…i+2q¯žzÙX[{<~ž‹¯îøë–:JôË[VÞOqe¤Žt¡”eû{ܽjlllbæêó¬°‚ü[BÒõ ÔVE½ ÷>Ž@a¬G§”†<ñ25ü›Ú¹xcs‹Ø®c4ÖÆ¿þ.·ù¤‰&)ô™µ•¥«ç£„4æþJ)öÅó€ÈÄ´Æ–f|~ZfV){ª±¦*3-­°ôó´lUIaZZfóp9*2iœ”÷æ¹­µ“«wbÆp²¯žÀOHH°µµ¤dffö@q2hØ„°³‡6­~ÀЮüÛ‹‹¡gannîííÝéY:=üî‹N.óâêt×ÙéžÓÿýçèäö&"­æ×,rëSÏ´-KŽ÷qsýªœ]œî=Î/®btã˜éùLÛ´à@·»÷¾Qµî>xEʉŸ¡*1xÒòŽ«tþDýQO¼ªem¼R Ë ÿÜïûài™‰‰‰÷îÝö&''÷€‡Éw¯Ÿ*)ª9cóÓ×iß)Ôˆˆ33³Çc±Ø_}£‰Lª€ ””~]ä*£å—‚ÐW¯^oß¾M ~µ233¯]»fffšžžÞ•%:(ðQà£Bÿ§ÿ‰5o‹,Ôꆅ…UŒ!äþÕNΟ?ÞÉÉ)22²‹KtPà£ÀG…~7€läääDEE¹¹¹?~ÜÏÏï—zØîèè…îëë ~ÈÏϯ®®þ¾Pà£ÀG…~÷ AŽP‹‹‹ó÷÷?qâ„©©)ÿuHHH8w‘ÑË—/“’’Š‹‹‘[ø(ðQà£ÀGÿë€ ã³)dcc³{÷î»wïBþ+Ì'‘Hׯ_@oÀ///§Ñh]™)fo NMM…ÞÁÙ³g¡c2@îssóèèè| øµµµ(û¥Ž9ýú|,»gÏžøøx€™Lþþ-ü«P´¾¾¾¢¢Ù~‘3€tÍš5À|@+±G¥|ûöí7B'zÈ–+d¿¥ gŽ!Y%iiiOŸ>=zô(¤@‚Q`` ´ËÁ؈ $¢êÚ»w/˜3Œˆˆà'&&ve{i/Õœ@WúÅ‹...Ðkkk:TAAA^^~p·‰@RÇŸ={ö¹sçÜÝÝ¡7<÷„B¡te<§#ð¡mú-]ºTYYYII ò)ÏÒàþ(ð8¤]H‰ô{c‡²ÔïíhB8€”iO±¥ÏÖdEEE 0êüùóÀ:wûð‘íWT*ǧ§§C{A¾ƒƒ„X—.]:uêÔ±cÇwOÐ|?~üôéÓ—/_677wvv†ø9BZyÖÜÜÜuà#SÌÑÑÑHÛtãÆ .œ„ÞMÿ3jX6^béßÿóáóþgïRÄP PÊðîYx :t¨ÿYŠàÎÒÒÒÓÓ3888))©¨¨ n;ð!ȧÓéd2‚üäädèPóœœnß¾}íÚµ«W¯^ŒŒ®\¹bfffmm}ïÞ=???hV°Xlqqq×ç°;#ðe¤3„>‚———0ßØØørø ü%p üKáÃþj,X6B°qóæM(V¤úAý¹ŒêÏ´àH)#b+Ò¸÷'KÁ4 n?~üöí[ˆ¥»²½´€€ÚÚÚZ››ûáÇÐÐPÂ=<< „vtt´···ë†àçÐ|ê½½½Ÿ={´\C‡H$ÖÕÕu1¼g>ÕÔÔ”••effBáåË—>tuuí~&û ìYrjTø –BÿË®? ŒëÀL¨uwY‚׈½ýÕä%[[[ö ök›~Y“¡êº»»?yòâç„„dBªÓ‡úõð‘µ:äCš¡œœˆó£¢¢ «€hÿ§ÝP@@$òêÕ+hG¢££?~üæ———ºà]?É9 ‚F£UVV¦¦¦ÆÆÆ†……AÊÝÏdߦ°Ä~íÏR5ö ±mï—&(ùµ 0q/òº_Z uõÅ‹AAAÛí³²²€«@×NW§ôð‘ XZUUñ3ú ‡ÇÅÅE·ëýO ~d†ŽCJJ DæЕóëëë»Þ³¦††h)*** H ÒŒ‡K¼ï§êèùŸ.…?ÅL(Gv}ëøÂ÷¨þpEFFB9Â_Àà»wï"Yê—%‹Ô^@=‹ÍÎÎ.))!‘HÞcûð;2 (†Þ4IEEE@þÜÜ\ˆù³»¡\–òóó!A@=Äç@l¸Pç|1ªmüR€tLâp8H?»ß)§ƒþÿmÿ3©i¹íB,í~õCÕGÊþf±qZV»úqeâñÈd2Ð"ÕNG3z øìøp ý*• ؇|TþåÝSKt YÄv¸PË?ïû‹LVWWCÓ )CúåýNßV?6êÛû¥½MìB$´«‹ ¡)Fë"ñzøN¢Bì 9„@²Z×¢± 666Bâp‰Ÿ }ÇΤIA&‘”ëú©híúâu¿··£êPõ¯òíø¶ ÄF!ÄCèÚ§€ßûT5w[H:-,õÈ–ê/rØ#™ì›b|MýÞØž­~¨ú`eFÞc»‚úß|T¨P¡BÕûB *T(ðQà£B…  |ø¨P¡B…ÿçÔÚ=õ‚£Zû©”±ÐÞ&´2÷5à³sËžIoê¶:N[÷ÈB/ÖõH&û¦¾:ûßÔÕ±ª {𾍯¡2÷ÙU:lÎ#ùDÈŒ¬Éï)Û‘4‘·?½ŸÍùŽ S¿¿A×ý»uC–+±ª ~¿¬ÌìOúweF(‡œЕ@·÷wÚ"»™Š‹‹ß¼yãëëûèÑ#ŸžÐÇ!©'OžÄÆÆ"ÏùBò±=šššððpä&Hܧ¿k ØØÑÒŽQõ'y·«ß[ Ä„úùùeeeu1Êíͳt ?ÈîÚôôô›7o^¸pÁÑÑÑ©GeggwðàAccã¼¼<¸Ö•Éï‘]À8n÷îÝW¯^uZ»ví™3gÀÁØóçÏXYY9¡êš7ož‰‰Iã¥oÊÐЈ‡|ø}¨(û¥> ìõ{¿]§A_UUU]]ÝGÎÃGÂ{Ào~~¾½½ýãÇi$I¡P\]]ÝÜÜ •§R©pézâü¼¬¬ èwéÒ%ø(ðQ¡ÀïãÀ?{ö, pמx…„Í›#""µ‚ƒƒmll J‡V¯ëA>òX.äÙ»aaa.\@ ü>ücÇŽáp¸ÒÒRªûCÌÙŠ…üx{{»¸¸àñø_í„´´4hY^¿~ù]|îZ‡ÊÊÊÜÜ\øíùóçQà£ÀG…¿ÿСC™™™EEEßþ^à#Óµ6Cxµµµ}øðá÷³Ô#"‰®,!Nhhhè:ð BVVÖ³gÏþý÷_ø(ðQ¡ÀïãÀß¿?üÍÏϯªªúþ-Ü >P”F£A¤maaÔ N€VæÉ“'wîÜÉÈÈ€ˆ½‹£:làCÁÏÏïìÙ³(ðQà£BßÇ¿wïÞ„„ˆ¨;ðÁçÏÃ…Çã¡–––©©©½ãhYÌÍÍ###àȨNW€md‹Åúúú¢ÀG ~ßþîÝ»ãããV$é÷"톆hwŠŠŠœííí‰Dbïø!99€­Lii)…BéÊ‚|>4 ð}ðá£GΜ9ƒ>*ø}ø»víŠÍÊʪ¬¬üþðu/™…ÌX[[»ººBÝ;~€ÀÚhk ÅéÊ0> |ø¨Pà£Àÿ9à#Wëêꀽ‰‰‰wîÜñ÷÷ïÊÐJZh_ •hC·Úø(ðQà£ÀGÿë€x¯­­„FFF{CCC{Í`8@ûöíÛ)))ååånI@ |øÝ~SS…B)**zóæMTTT¯ùèhiiƒlIè´s>*ø(ðø2™œŸŸÿìÙ3[[Û¤¤¤ÞtEDD„••Uxxxqq12o‹> |ø(ðð‘%:‡œœ///kk댌ŒÞt8Z™×¯_VUUõðiRQA~y%¥™ÑÂhn‚¿,ï·2XÜ葞 $ô­"mma4ÔÓ›´²÷ð!L›[úò=òÇ¿¥¹¹‰Ñü  ü¾ üúúúŠŠŠÌÌÌ{÷î{ zÓС€‹úûûCé#+T¿_ºüÔ÷϶®]2FE夅[ÒÛ “{¶Ÿ¸f›O¨¤°§íY¿ï:Gè^-d9˜m^µÂõå»júWÚ¯â¤go]·ÿšk¡úwŸñâÞVƒ-¶a•5 (ð{FÍä›F‡—éýžTÜÄCÿ'ÙÇTVV–žžŽœÕO zÓX,ÖÆÆæáÇÐÅ ‰t:ý׿‰te‹ž¬ ød³¡UD€ãd‘:k÷¦àŠÈyo§M+¦eú1¯{±/Ãõ”¾’$Ï¿öÞåµôÿÿçÌà»Õ§m½Zðcç÷ð›=lÎ "·ÿš{ ©~Ϩ‰°~ñ>AU¯ðLz3 ü~mÑûKgüsƒXßYpÒJ9þ÷šÉ ·¥ãû\­îSÀ¯««০¦ÂýåêêZUUõ_72ªIå¹¹y•d*û3z¹—þ›QQYÝÍÊ,þwssƒ.t4 »ñýâ» |%÷ŸEÓÄÅ”/Yz—TRiÛôì>yWR^U5[[}ö¶·Ø‚nÿ™í‰ùÓ&Ø=z]Mû œ³Ãh>o×¥ŒÂÛàÖSÀ÷q¼8bèðCf>¥dø=áWl]©Ã/¥é‘Ý€¿ç€OJ{1^BhäŒeù5´N¾ÚB\²¿¨¨())éöíÛ^^^_ò¤±ÆÓúÒLíEÖ÷‚™ÀgPßú]Ÿ«)=lô4÷×´¦îÖm<ïÈRZZ¼ît)~w€O«"¼yh6E}ˆ ì„ ×ì>¤‘ˆ„؈Ðè„ÔZöÀgÐß>·?´oÛúõ›N_wJ+©ìÚèlkafJHPhNIEcÛZb^=8þÏ®Mû<_Ǿr›¤1²;Ào¦V¾{èéó<»˜ØÔÒ–'F}uTèˇ~¯ ð$FË'F#%Ø×åÀÞ]k×­Û{ð”Xbm[wã?À/ËNyâë÷›ßÌh3º"?å¡·çûļƦ¶‚¨#ânÞºyÆmûîDÖРũ*Äšœ?¶aýÚÕkÖž1r« °nÛֆĨ7Þ^^ÿyŒµ·Ç£gaäZzëo>¥$ãÉ#ïÇÏÞUu=¨%àüyÇÔ±¬®!äØ]7ܲÉ`Ýúõ§.ÝJ/¬l›ðÿ üœ†ælT°§O`qem{á4§Ç†»{úâJ«Ø7:>#üìÑm7¬ßtøBH"ŽÑÒ¥ºÅ UE¼y™E#߸trãúu7 þðߟ·Ò_Ü5Ú´~ͪU«Öï;’ZÒñ_i9·¯ž^¿n”È‘³Nµ}øeYIަ§”„ùćM0vpO/&ƒ­uDwÓÖ­Z½fÛî+ ªàÃ&jYà#—‰ª²‰£W-Þ&å¶—)öæ±ë×ÂM°á¤¡}AUÛkk3í] O@½©ÖýöÅ ÖïØ<>ùD×Á¾»7n\¿a“™•_mÛМò>40,©±žîçpqýúµëÖoºû,æ>²ë Y„Ÿ<ðË•ðÿ~kÆ{ŸM Õ$¥UΘºUP?ÏHBXÎèð@öÖÿ·>øšÕ#ø€Oã¦Ñh?ü¬¿™Z£¸91N!‘=Wí£_{ëÏœ¤·ûtZ!¾mH§ø­õ¤û&{Ô‡Šrq²<È+<~Ú¼W±Ø†Î¡Ïxh¼g¢ò0cW"î&Fˆ·¡ÎXnV:B2Õ†ðÍïðÕyû –ÊÉ2q}RIm«Ã©kgO”Ñ^ó46»ž”cçºáBœm@FnÔÙë>øJêÀv»4Ymôˇuô¶rãc6Bqð†óH5Ì”«s#w-ÑâåFÒ––_àTY¥+.Iz¥7g<W[&8Dç¾V\Emm­>±GOJBL%!!!Q111Q™IÛ Ȉƒ{øø$‘ŠC”Çe5µ÷ñ¢\R”ÕØjŒ'ׂÖNÕäæn¿«x”F.x–I‡oÿøM¶ûæ*ÈÍ|™PØÞâÓ¯žØ(%9Ê>0­‰Õ°f½¹;kÌP®öâ¤8ÒÌõicSçÝezqÂâ)#ÔgÍ[6K‡›‹«ýçSÝž§7!=‹–j‡ ›‹ò´— ü÷ާÄ„Y†pòH½”ÕPWv|Û"1~.6Ù†Í^U\C+Žœ ,ÏÅú*/ïæcNÌу¨Ç“Ç*r~¦ ŸÚô¥18æ€OkþoÉ!£æìÙ¿I°=1µ)®×MÕ¥D·œ¼[ÞgÁˆzbÞdéA3wmÔåiû²€¤ü•{/[ÿ4à#»® âããoÞ¼ ÀÿrD¥ø¶÷‚+rߞݩ+)4hÓßײŠÛoù–F\J¤É©}óæÍݼÿÔÓˆÕô¦¢œ×»v>/ßVÔ1V_Uäçíàê“–ÿ%â***îÞ½kkk›’’‡èý[ÀÇápÏž=ƒŽdœ–ššú£À/My·yé21a!.±!êó ^'?˜3n¤®Ál^É€ßÊxyãÂ9i~añY+wœ:yPSuÜ&s asK;+e†ç¥u#dø/:úTÔ6&<^¢3Š›WEcâ®-‹'NTàb69Ý>DÈN·*Š -Ûož]Ü6bùÎÛrì…¹¦æá£j(I IÊì?kea²vÁD1!^á±+ŸÇå6µ2þüû§Õ•äÏÞð Ö·Ñ楇±Œ”è²÷‰”ú–Fâ¹SEx¸¥†ÝsÒðŸ]+¤…888 jê;‰ [›)çö,:yùuk—Ë'W•ç’¹õ0šÚPsõß½šã5TY­•Ó_³uéD5h2ù‡O-…z^wx¢ Ò¡*K.\¾8Og,/Ã?hdp׿ úð«««øqqqfffбþòK,àÏž¾ò¶Í}{Ó­# ÏÓ?_À†[~‚ßžåE¤‡’—–ž0÷¦ßÛ„ˆçkçiÏZy(4…É´ü¤ˆ­ústVîy•ò僴H$’««+Ñ>Nÿ–^¼xp5jÔÙ³güIIIOž<ùÑã‘[ªÓW-œ$ª¾òub.TñâX]‘ó6ý“šÿø‘Ø‚†òœ}ú3$%Ä\±,!2O¦¿öÖÑPá›äò<¾®“,†—ÑÆ2‚†N*¨µ÷Íö*ÉI¨/ß’VØØú)7æÅ¼©Óy¸xçwo ?þ¥Ã8Õ¡*ãÖG'㘘QëtÙ@q°ì‘+Þx"åÖ±ƒÅÅ÷Ú)¬^|úæSD…5Ýž'Ñšþ üg5†+œ½áÉŽð_yš𗟼_I¡ç…y© •’RTö}›ÜÐ =<šÝ±íâBª³”w²¦´‰”e0uˆ˜’úët<0?4;.%&´é¨™òŸñXâ‡W³äd¸¹ùö›¹©õ¿o ¿ÉÎh«„ˆ°ÞæëDÖ…&âÇ53•%Çú¼É¥S‹—OÉË+ç’LgÙ“ùPe”Êø9eU­ÿ¾Í>mq‘‰/;ÿÜÁÕ¼<òÖÏø­O¯îäãј£—UA…n&åíœ5ªÄÊÃwiô¦Î€Ÿ8gœt fèiÌ¡§òÌP­’œ¢WÜ>Ði%sÕyxE ŒîÕ70“j¨ÌÖב‡Þå±{aôâ±…ò|ò^J›Y%òÒþ’ß´%çjëú ð™±unˆö !5ÝU¥¬1|‡ƒ3x¹LŸÄ6° ȉ|4DHPfØÊâZZë'Ê*]U ÿø°æ7ñ)Óqrˆ+¿Èm«B¸—6b<ÍÍi,àïÕf‹«-8PZËü×û—¶3{nB27¼"˜ïkrWjÂp)¸…Bñ¤ÿ(;I/·šéÕJþÖYŠÐ>ì2ôiþ£€ôàƒç!3×®]û*ð}l¯LT­2bÄPYAa‰±W,}ÙS}tJáõ3;†+k1sÉÌ-|å`6k´¢þŽS1±q¦‡ &NÖu÷Ûú‰`¹`’ú¾í´/‰ªª*ˆð/^¼áúË—/#"""##ß½{Ÿøùùùúúž:ujðàÁˆ9²²²3gÎ<}úô‰'rrrº^Íè)úóµDÇê?‹ÉløQØlð½IjÃÆènO/l/†Õ¹ R¢GÌÝñUõ]þ¥»K Sö,˜(#)cðŽÒˆ¤Ôêcup¤‚X7O.Š[;sœÔ0U× h€ê i{u5+hx…%ÒõÁÏÜ/_µˆÆ–4´UGòÉUó¥Å&Üž@kîðõN»WRjœ/%š?©nB1U_{°Ô0Í—É…ßÛn eÌP“fõ2±Ž@Öà¼Ý\ÃbÓ:Œ]´RËnÐäç±âp&þó¢¯ß2i›øÒNEFBeΊÌÒJ0.'ôê ɱº[²ËÉ­ –&­}+jÚJŸ’3Qa²æÖœ2rçEVc]ɆéÊܼÃ<ßæ²WìçDÝ!)0ZwKaU}k§ÀW—å’RñKùÜ𿱸z§cAÒó1âBrc§~(¯eNøý“B¼“–_®ª«8¶D‘OPü¬çûV›ÕXVòðîÝ€øÆfFß~UúKþèÙzùL¤·ÚÖào0õ¦!5›N u½çñ(˜ 5ª…¨7[ïñšu7 nŸ=yÓÉÝ‚Òpïä…0š/2—ûÔ—î_xнÈ2ä_Óüí¡0jþ:r»ã,·,Â`x­¥@bð ½£?÷>BïËðaÆ®>AnúÀÈÅáp111&&&ÞÞÞÿü‡vWÕ†Š3µ89¹¹Eçl<–Þæ¥¢ä×;ôç.Ùx2>›È '².Ú8}éú—1 Îw.ÖœtÅáa]}•»éQmÍYaÿßÂÕoܸ¡«««§§·aÆ;wîÛ·ïàÁƒG=~ü8 bø .oݺUZZ1‡‹‹käȑǎ;yòäÏÿù·ÿ[éscìˆÁËŽ„Db±““’±iX»3zJ²ü›ÏÛçWÔvø—ïúå~ 9I}ð”µï°8vg‡Úk© íî*†Ê+VÈJ*œ¹íK¨¦çEûj«1oolF1R¶ •øÔ¤/{^Þ½YYVŠ_h‚û‹®ߣ’B6=°HTpÐÑ[Þ‰IÉ)))ðÿÇøW;gÉ ÊòŠÈþþ‚ó–šÂ½ G òrH VÚtð‹· Äšúÿ±xâl$#!Â)3É%<£¾¹å÷®Òi(_¤5Œ_fâóø|`µŸÕqiq!ý3®•ä[[è Ôâ‚ÜïB½\ìwÏ›!ÌË3Zs{n—o˜ÝHJ7~—Äx—g‘L‡‚RÓ£ŸY•䤵,­ŒÖ)ðgªŠKké¥W|þfÒÃ;’‚ü‹¶]ypGDH`šim‡yç˜gÄ'êž©®«¾²Q›CPjȺ}§Ÿ…ÅWPh¿kEÑOÿ“çE}A>n.QÙùëv>x ÝÌÏ ´?ˆ=ÌÒÊ S)E¸Ì¨ˆ7nŽ–k—MçæÀLÚt þn-.ÙQï mÕþãc+! fѦkìôì7/Æ`øld_ƒQ~“Abg¬¾ JUšcЬ=xjë |SSÓ¯Føí®¨ •5ýïÃ7-'«¨zÉνéÕ¾õZ¯«ª®5åè™M®]¿jxJwú„“ÝŒM¼»L[sça‹¬Œ¤óûVÏX¼þUÜWm ‘Háß¼yPÞ¨¨¨¨­­¥³nilWSSÄùÊÊÊ¢¢¢“&M‚ïCàáÇ?º,³‹ÀåxaôPé¯zrýY[\yMŸ‘øjš–šÂäíQÙ=…O„ŒP‰jÝ_–`y^U^JÿÀ¹œ’òçÖGT$·_´)¨`æJÈ»qöïaƒ¥98˜£½ÈüÝŸ\v~Ót~î¯xAt¨;s²òûU½5ÚÓlšÚnÖ!'7ŸœÒhC+"2•}brÐÜaƒx0œ¯xWÿw“ÚoZ–Y{i½®¯©W•N:¿NCDPÆáõG«¶—$…¯š§#,Ð6o‡Ì¸þðm_åÔÄÌT“åâøŠSÅ4þJÅ×µtüé*â#g®.¨üÌê¢hwaék÷øûZ Ì>êR×ah(7ÊWNXPeêÒj]nø}èƒs!µ‚‹WJ~øÙ›÷p•ÔÖ?øäœwkuFó·Mvs ‰J¹šPHdÖ¨/ßšót™¶7Û×Ìz8ysðwiqˆ*,Ëiß]ÀÄ`–l¶b_Únó¢ÏÀ׉ЎÄu¨ÔMe ¥Õ©Ä¦? ød2€ éüÿ¤­ÍåñÊ£÷œµÉ#WùÝ¿9n¤Ìô…[‚cp¬14¯MóU„DD•””™RQ«¾`þ'á)å9ч .ÝvÐËÓaÛâ©kw¦|%0&‰|++«„„„ÂÂB¸Á¿uœ°œfii _#?·¿ ÀßÀ‡>²²œˆÜHù /_¾ Ñr}ý+VÝò "Pº4¤cäâ—õDg‚ŠÂØíQIŸ_†}­­9ºûÀ/v›­©¤4s[TRòÅÝ+¥eG[z†UÓš[Iw¬"*À/1HkÚl½Õ›OžÝ3K}¨¸ð„ßþ¿ÿ|ý3ž•¹'« NЙ³Lí†ezúú«·ÿžŽoìÂ*Õ¢Á§mY0{ª¼8/ë6åÙhzPËt` ½Âh3³A3kéÇ"â û]ëðÃÿ‘•\v̹4÷ý,éQkó+ÌUòÆñ#5ÒJ£uÿZ¼fÛþ³'Ö(ˆ ª~øZü¦/€ÿ:—œ¨3D˜[DvÖü%Ÿ}º|¹þ ým§M «:ð§)‹_lPZûy¤øý}þŒu;žXðçqíüâÿ‚ãf&Ô1›ÔŠœ÷—Nü¥;}ˆdÛJžé‡n–Sÿà3CëJœÕÕ=Ëêª(Jq²Z.ù%{pĺÖÖÊŽÀ¯*ü ¡Äœ¥•6îá­»w?±_€"|Ã6àOäT\WÖôð-¿|Íáù¥Iø1IMæÄ‘¢˜‘kR+ÿHàC„offæååõõe™SÛº†@)…)W¶¯RÚwÞ±”Ò˜ò`ýÍ;OG&g—0Uš‡ËÃåR¨õÍ5x£½º —®Þö÷ìÓ -ïR¾6½èvtt´¶¶îøìÕ;?½,óG†tLÇŽ´â¸UNY‡õ‡ŒFj½Ñ鮬Ï~66xÚ¤±rêë“p쟥¿²ÓT2¿ÛÀo©/=®7GZz¢•õ-}1ª:óß$e4·~§¼^^YG§TVPXWi®¯IûvëÔÖA|ô”á¥4Hj´ævÜÿÿïiâ‚"Ž! ÈXP}yҚɊ\\Š6/²kó–hãæW|ð&‹=i[ôæÉìqz»O•×Ó;þl >¡qqøöУÙúø*~^¾FÏq±‡‹*Ž[”Z^Ç.7Ã|Ü N»ã³CµÇ«ÏZóó‰ E+f¨ñ ÓyQÉèÃÀW›£_TGk¥æ¯YoJi.ʉ™¸érý§Ÿþh †÷†"û_£¯òa0 ×wÁo}s ÿæÍ›<øò¶OkÃ™Ú Û€Ï¤zÁSÛd„e6¸…ÍÉ59»[ZJe×a‹˜ñ–¦'F)*¬Úr›Ç\³—²sñ . ÷ÂMGcr*¿š€<ÐþÎ;‰‰‰EEE}øQØrnüº©DŽYø”VÕ²¢Í×Å/4ÎÙ/†úýå)Ÿ—eú)Ö§+HòÌÑ;—Z whAbÀÊYjÜ=üOÉ¡“¦ çàçæ”ºèü¼¢–Y}‹âçk¨3åqx|}S •RnjŸ¢”¯àDWI,à~¾§¡úi•¹ëãpet:%ÂËtü`1A Ïò“*)ôOË!RâršË>à­Œz²Çõ’bBjS÷ç:9F©"=Xs°¬ÜÈ¿‚²‘ÝF¸ÿI#¥G-Þ“ŽËÝ¿a‘ ?¯˜Ê’—q)ÅˆŠ ŠuÍ­¿øÀÏûG¥†a8¹dT¦†·¯) w¼"'!:Ó1\ÓðŠbì~Ý)B<ܪš;ó U­ŒŽÀo¶98[\ˆ{ù±[¸ŠjZMÅ=“¿Gˆ òð*Z?Koln±Û¦ÇÏí³îLny-$E%eŸ2˜ÉËõj¿S]}W—eêýsO†à²%!Äc¤ F@Ñù]a«§%ÍÍ%¶ßЇÂÚJ€ÏŒ§*ÏÉ)â–A/Ož!-,,¥óô}²Â§ûfšŠ¤„úœ„’>á“S_L‘9uižÈ`TîÐÎÃ9ÔÚ'édÕ²÷.Ï/5ì 3Â'-›¥ŒRy_ØÜÒâ{}poÚAK Ë£„¬ÈºÊðÉÄ-,àÓøZÌU:ʶd•3[“ª‚÷«´å1®‹vïºbl_>x€onnîââR]ýßõÕÕn§5ÕgÝpxÝâÖÄÀz“GI™qËç 6î•ÁbN0ƒáÄp2Ï#0A­<ÛøèfQñáû.Þ%P¿Þ]\[XXØÚÚö*ðÇ´-Ë,Šñ™­1â à¿ýXШ»gvh˜œ8FFuÛÑ fWNÏÑTàᘳ÷üÇâŠÎ7^mŽl¼¢6$„ûhiŒäÀðÏY¾ÙØÄhÙ %~f‰ÌÛÙÀ§%l_4IXRDxøœÇ‘©Èøo»séa^Íú†WŒwn\"-ÁÜ<ÈÅ#©¿ý߸ÔnÎ cU5Ú4VyüªÔ°¿ñ,\˜«š’'?¿æ’£Ķv­8ÆGU^Š#ºrû±׌æê¨ñ²v‹Ëª¼õ¨¢²hË  MŸpæâ¥7ާIc¥ïügÏ]aÖé¬B¼ŠViР'=U"ÊÁÁ5cýA[[›ËÔx¸91ŠšÏSñÍðçS`N?r-Ývø¦ÉyEYŽq3•ÖÐ[?5Û™àãÅ`ä÷ž4¶·º1WGƒ‹‹søŒ£¸Jz+£úâ&M> ¦Š†™ƒ£õ¿¦*ssqho=UN£÷Í1|JfÈô!"Ü"ƒ–n<œVöÈd ?·¨´Ü¿f–÷œí¶êOåáæ’¶<›Hkm­Ú0 °Ì9uîJ7ÿXl„‹0swšÄšã—­oÍÅPJm†¥Ç3ja—ø¥íµ8Ù× ¾±¸ðï°€¾Ž†—YÜf­5·2_9•¹>œ{øôDýÏ>²ñ*???..ÎÒÒÒÁÁ¡¼¼ü¿C±ÍÅyáaïs ˆì,6Õ×`bž=OÍÍkjmÁe}tu´166µ²qIʧ³Ý@º}õÈØ™óíÞ~ âX,€÷îÝäädòjkkÝY:Ìæ‹ˆ]2K“w¬¾<ø¥ 3Æ©Ì1ØŸ–W\]5m²ºÄ¬íáiÌaçj¼Í…Ce%Ø>œ¹rGh ®+G+<0Z©$#näPImüĨt»5^IÙâÍ!2xÍ–MªCí½œYÔíÃÓTËã[åÅ…¦m9ƒÍgŸk͈~é1]uxûò®5»Žœ>±GQAƒ‘»u÷…³åÙQŠCZx—TÓ?5ÓžšŸR•—lÛH¨9û̾]Ò"Âó¨`´2£ÖÏ}ˆ¶Ä¸ù÷šºàk»Ò‘ý”÷råô!ü<ŸëáìÕ{ * ß=7Hšó+õtB`|²éó7ŸQƒ[­¥ÌÇÉqÄ>ðóèG3ÍÁè°„¨P›Dÿkj¾bÉt>ŒÄÒØTƒ%“ø¥4|ÞçÒ­trÑ™uÓ„Û8éèì_0‹[ÆüU:kT¿%)覜Ûbò#l^%6v>=ÄŠðÇÈ¥¾dw{¡(Mßð>³°…ÅÖºJË£[Ex?;]eæê¨4Gìý#ü»z~ÅtÏth¤0ÞKþ©Õ¤Ò§ðò|®;òÊãÜcóX'JµÙžC>\²ÍâSSÍáEŸk—†©õ½]ó™Kï¤Ô§åW—ïÐÂÊ®+i~š5¸lîkö•o¯›ålå›ÎÜx¥3ë¶já¾öô$†¨º†evÑØ>¸Ó6>>€oeeUXXØS£¡Uù±'·/[´bï»ÄÒo} 9´ÍÝÝ=%%¥¤¤ä;G+ôð[ E¸Œ¼’ZÖYXÍtj.·°´¬±©™ÑT_—›UTFkl«uÕ"^;ÛÙØÚ: x‘VPÖL£á²3‹*kØ'n‘‹sŸyß¿ceåìò "&‰ÚÐÔõ< Ó¹Ú›€L¯»û–«Ku5yYYéi_*==ŸÚ>=ü[OËl!äçe¤§WQÿÓ®1h5ïCžÛÙÙÜu÷‰IÊ€:CÆãÞ†Ea©´ú’¢üŒì¼zÛþ:*©$*,È÷Ñ#ÿ—!EÄêzREFz¹®‘`!6ÞÝÑÖÊÒê_RfAKתsÒVU\aÚÊ„LÜ«§^6ÖÖŸçâ«;þº¥ŽýÆßÆò–……•÷“@\©#](eÙþw¯›˜¹ú<+¬ ÿ–‡tý(µ•EQoÃß½#P˜ëÑ)¥!O¼LM ÿ¦v.ÞØÜ"¶ëµñï߆…¿Ë-d>i¢‰F }æcmeéêù(!¹?…RŠ}ñ< 21­±¥ŸŸ–™UÊž‡j¬©ÊLK+,ý<-[UR˜––YÅ<\ŽŠLÚ'åŽynkcíäê˜ñœìk‡§ðlmm)™™™=Pœ 6!ìì¡M£G«0´+ÿöâbèY˜››{{{wz–N¿û¢“ËÃüŸ¸:Ýuvºçôÿ9:¹½‰H«ù5‹ÜúÔ3mË’ã}Ü\¿ê'G§{ó‹«Ý8fz`>Ó6-8Ðíî½oT­»E‘râg¨J ž´¼ã*?QÔ¯jY¯TÃ2È?÷û>xZfbbâ½{÷€½ÉÉÉ=à¡FòÝë'†JŠjÎØüôuÚw 5""ÂÌÌìñãÇX,öWÜ#"cãé/QW¥ü5JýÀ±û…Å¿S} ø1·Í¦iŽSQþªF*«.|þ&·±éç‰? ßêºÃ@MõN5bâÔ³9IïgŽf?“€¿·šVùGÿS‡ ç½¼¼nܸH鉚ÛTž—ûö]v!þ;ýÿ–––/^\½z9“@ ðéPz ·Ïh"“* %¥_¹†Êhù%OPéSÀo SËÊðßðAIi¡þGF~Pà#¢ÖT•|Ë©¥Åå¤êú„ªârZËPà÷&ðhÂ`TBúðÙü„0ÛÄÄ$44´×üìòôô444 ÊÈÈ(//ÿÕO¼ú£Õ§€ÿ«50ßù-S–²p²â˜ù8 ü^SÝ™9ÅÄfEfS~î÷}ð!æ`?þüÊ•+OŸ>ýþÂÈàÝÙÙùÂ… ½óL[ø(ðÿðQŸÖ¦¦Æ¦æ?þ1Šð?1ÀéM?Ù¾|­!À¾xñ¢««+P·wÜH"‘îܹ­ p ¸ oétú÷ë |ø¨úþ,àwS}øNÞ‰D"ääÝ»wFFFð¶wü’’bllliiƒÃ᪪ª:¥ |ø¨Pà£Àÿ9àÃuáêd29777::ÚÜÜüêÕ«iii½ã‡   óçÏ»¹¹ÅÇÇVWWëä4ø(ðQ¡ÀGß}àc‘Ó ?...@à^p\Ú××.çççÇ>W> |ø(ðQàÿ:à³—â'$$ O‰õööþþbøÄó/^ LIIÁãñ@òNç‹Qà£ÀG…þOYŠ ôÕ«W@àÛ·o„_í„ÌÌÌk×®™™™…††¦§§we‰ |ø¨Pà£ÀÿiàbÍÛ" u€ºaaa@ccc¹µ€óçÏŸwrrŠŒŒìâø(ðQ¡ÀGßMàC 999QQQnnnÇ÷óóû¥¶;::B¡ûúú‚òóó«««¿ïø(ðQ¡ÀGß}àC#ÔâââüýýOœ8ajjŠÇãÎ;gddôòåˤ¤¤ââbdÆ> |ø(ðQàÿ:à#ÃølŠÙØØìÞ½ûîÝ»‡ÿ óI$Òõë×ÁЛ@ðËËËi4ZWfŠÙ[ƒSSS¡wpöìYè˜ {ÄÜÜ<::z€B~mm-ÊÆ~©#GŽ@¿~€‹ÅîÙ³'>>`E&“¿ ÿjà#­¯¯¯¨¨@¶_Aä ]³f 0ÐJìQA)ß¾}{ãÆÐ‰€Þ²å Àoé™cHV BZZÚÓ§O= )† Cíò@06$$¢‰¨ú£öîÝ æ c#""ø‰‰‰]Ù^Ú ÀGFu 'Е~ñâ…‹‹ 4ÁÚÚÚC‡UPP——ÜmA"ÔðáÃgÏž}îÜ9wwwèM Ï=¡P(]Ïé|h›€~K—.UVVVRR‚|ʳ4¸? üiR"ýÞØ¡,õ{{š eÚSlé³5YQQˆŒ:þ<°Âݾ|dû•JÅãñéééÐAïàà!Ö¥K—N:uìØ±ÃÝ4Ç?}úôåË—ÍÍÍ!>GŽÐVžF£577wøÈstt4Ò6ݸqãÂ… 'Ož„«î_bû šH¨3`&¼€¡wÓÿŒ…šÖ†††—Xú÷ßÁ|ø¼ÿÙ;…1(”2ü…{Þ‡‡ê–"¸³´´ôôô NJJ***B‚Ûß|òét:™L† ?99:ÔÀ|''§Û·o_»víêÕ«—»'##£+W®˜™™Y[[ß»wÏÏÏš,[\\ÜÅõ9ìÎ|錀¡àååeggÌ766¾Ü~ÿ_c ÁRø°¿ ÖlܼyŠ©~P.£úó-8RʈØÅŠ4îýÉR0ÍÄÄÄ‚ÛÇ¿}ûbé®l/íà# …v§¶¶–@ äææ~øð!44‚p¡ííííº!ø94€zooïgÏží×ÐÁ!‰uuu] ïÙ£O555eee™™™ÐGxùòåÇ]]]»ŸÉ>({–œÚ•þ‚¥Ðÿ²ëcÁ:0jÝ]–à5bo5y@ÉÖÖ–ý‚ýÚÆÆ¦_Öd¨ºîîîOž<ø9!!™êô¡~½|d­ùÐã€f(''âü¨¨(Èj`` Úßßÿi7‰¼zõ Ú‘èèè?‚ùååå€nx×Or@΂ Ñh•••………©©©±±±aaar÷3Ù7Fi,±_û³Ô_ýBlÛû¥ÉJ~í BÜ‹¼î—–B]}ñâEPPÄö@û¬¬,à*еÓÕ)½|$È–VUUAü @†>ÄáqqqÑízÿS‚ÆÄÄ™¡ã’’‘yAAt%Àüúúú®‡÷솩¡¡ZŠŠŠ HRƒ4ãããáïû©:zþ§KáO1Ê‘]ß:¾†ðã=ª?\‘‘‘PŽð0øîÝ»H–úeÉ"µPÅb³³³KJJH$„÷ÀؾüŽÌŠ¡÷MRQQ?77bþìn(—¥üü|HPñ9.ÔÅÅ9_Œê@¿… $“8ÒÏîwÊé ÿÛÿŒEjZn»K»_ýPõ‘ò…¿Y,Aœ–Õ®~\™xÅÅÅ@<2™ ´‡HµÓÑŒ^>;~œB¿ƒJ¥ö!ŸU€y÷TÁ$ÝH±.ÔòãÏûþ"“ÕÕÕÐtBÊ~y¿SÅ·Õ…úöÅß~iï@» íê߯"Ä„BhJ£ÑºH¼Þ>‚S„¨{C!†¬Öõ„h,A‚8\â'hß±3)@RI$åº~*Z»¾xÝïíí¨:Tý«|;¾í߯ñ€Qñºö)àwÄ>UDÍÝ’N K=²¥ú‹öH&û¦_S¿7¶g«ª>X™‘·ÁØ® þ7*T¨Põ¾Pà£B…  |ø¨P¡B…>*T¨P¡Àÿ9µvO½à¨Ö~ªeì´w  ­Ì} øìܲgÒ›º­ŽÓÖ=²Pç‹uD=’ɾ©¯Îþ7õ_u¬*ÁÞ¦/ªñ@¨Ì}v•›óH>2#kò{Êv$MäíO¯Ãgs¾cÃÔïoäuÿnÝåÊ_¬jCß/+3û“þ]™Ê!çt%Ðíý¶Èn¦âââ7oÞøúú>zôȧ'ôðáCHêÉ“'±±±Ès¾‡üDl@ ¦¦&<<9… ÷éï6v´´ã_TýIÞíê÷–ñ¡~~~YYY]Œr{ó,Ȳ»6==ýúõëçÏŸwtttêQÙÙÙýóÏ?W¯^ÍË˃kýÐQ™ìðÙŒÃávíÚI9 ­]»öÌ™3àÀ`,Ô=+++'TýQóæÍ311éq¼ôM#Ïéô¬ÈÞ<-ð[WWWZZzûömkkkˆÃÅìêÇ\PÖ$‰F£ýÐùiìÓ2kkkÿ×Þ™ÀCµþ œñsM\D•DB…Jû¦n{ZUÚ÷å¶iï¶j‘6!²$”,%*…¤$Dö}ß—1f0†1f0¦÷7sº7%éù~îõš9sžå|Ÿß³œç¤§§_¼x1;;û7™¾777‡¬û†>ѯ„ŽŽŽè!æ=•ƒR(”ß$±Ü‚ð!»‚c»ÉöÈØ>óÕÕÕ>>>ÞÇÇÇÿ¸ ¼råÊ»wïàŠ†|ø†ý𡱀3ü¡‘$N‡øÍÉÉ Zyƒ_ýŸžx/--ûA6"á#á#ð»¹ð= ÊÝu‡'^aa3œ „ÍÁÁÁvvv±±±?:,--!J‡V¯ãA>öX.ìÙ»AAAÇGÂGÂG áwsáåää”””@PýÓbÞú X877·[·n‘H¤ )))¶¶¶ÏŸ?Ç‚ü>÷ „­Cyyyvv6|  „ßý…¿{÷îôôôÂÂBˆo®ð±éZ›!¼‹ZYYÝ¿ÿë§ô] R©Ž|°L`³Ù>™LÎÈÈðññ9vì>> ¿› ÇŽð3//F£}ýî‚,Êd2!Ò«tA&@+ãééiii™––{GuZ…ooï#GŽ á#á#ð»¹ð·nÝõO>ä9Äópe‘H¤‡š››'%%uM><þ$ ÇFu:"|h›àTá$¡½@ÂGÂG áwáoÞ¼9** dUQQñs…‘6›Í†v§°°ÐÎÎÎÚÚšJ¥vM>ÄÇǃļ¼¼JJJètzGäƒð¡i€÷C>xð  „ßý…¿iÓ¦wïÞedd”——}øº „MƒÂÉ@xïää!t×äöpQß¾}Úhq:2Œ„„@ÂGÂÿ6ác7®ÖÖÖ‚{ccc-,,=zÔ‘¡•ï´,ŽŽŽÐÊ€´¡[í>>>>þ>车¦  ì²|€„{xx\¿~=!!¡¬¬¬Ý[ð‘ðHøHø~CCN/,,|ùò¥••UXXX—åØÛ×××ÌÌ,""»%¡ÝÎ>>  ÿ›…©¬¬ÌËËóññáÇÅÅueV›››¿~ýº¨¨›·EÂGÂGÂGÂGÂÿÂÇ–èÀ9dee¹ººZXX¤¥¥ueV@&X[[?þ¼  €F£uð™ôŠÂü¼²rz#§‰ÓØ?ù¹Ïåð¹ñ]z.p /)·‰Ã®cÕ×7þ×Êþ½„'PÏKsSw¾F~9á7566pß#ð»·ðëêê(JzzúíÛ·!ÂÏÏÏïʬ€|éãÇ¡ô±ª_¯~ò[ŸµËfUQ9hæ÷&àà–u.Zå’+jÉI‡vo^¾ýRb¹sµ`gºz±¾“_Hë3íWqÜÓmk v\tÊ%Ó†ð9ÁÏ×®±¾T^ÍFÂÿ>4V^1Þ3oÁ¶à¸¢Îo!1$ü_QøØ}L¥¥¥©©©¶¶¶vvvd2¹+³"))éÆ÷ï߇.•Je±X?Vø g×,!à!OVŸ²~b;ZSIwÙ–„œ¢ÊÜq#‡u s;ûrœÍ )tÔÆ½¬†õïNqK[­ÿ¸µ'“òË~†ð]¬Ž ì'»óâ½¢ f·½F~1á7—Ïþ?QU·×é¬F$üï&üšÂ·çN2üûµ®½jÏ­Þ¿m騙ëRIuHø_ñgmm-?99ÙÚÚÚÑÑ‘F£}œœªŠ²ìì¼òJFëßXµ•9)‰Ii”òªNVnlñ¿³³3t1 £ݯoÝIá7ѳþž5®Qù´¹[qy59ÅwþŒMÏæ—ÑòßNÖU—Ñ]û:)¿“Ârsÿôq#n>ð¯b~&ÂÏ º«3t Þ¦3©ÿíßKøîv§) ØmêQRY×m…ð«Eø”µ‹ÆŠJ¸œ‰„ÿ…_‘â;\‚ 4a^^5³·6QgˆÃ ñO¡!áÅŸ555ÅÅÅ –––...àÿÞQOw±øg”öT3ûçØè6‡M{hwpÄ‘!:zw}B;9j™ŸŸoee=‹´´4è\ühá¿§¥.úK[läŠ 9ŸäxE^Oø£;/üvè.¿莄ÿ…/‰„ÿ…_›4FVl¨Þbrm»½ÑšÅÓ†àZÁyÝn ²û[„_XXwíÚ577·O}ROwµ<=^w¦¥ã žð9Œ7Þ&Ó´¤úgåâÏlèlÝ&‘H¶¶¶666)))ðºÝ¥ø>“Vúò¾éh ùÿÉ ?~ñftjAµì]ð«ð˜”j&›öoásXožÚìÞ¾nùòU‡/Ù'—wlt–[ð*«˜Rßü¦ÿ;ûÿÞdh¸ÝÖõy¤¿ÓHÍA~#ƒòÒ×ÕÃ'³¨¼¡©ùœ8u´°W~÷½Ÿç“*8Mï9õU/<wnݸÌÀ`ë®Cƒbkš» ¿43ÁËÓ;:)·±%m”¼„ûî®ocsëš ¢–šc{uÏÚÕ+V¬Û~ûIH5ë?ì¤J+HºpÜhÅòeK–.;b|‡Bç_¶\vlX »›ÛG±v¿÷À'¨²†ÅýI§§y=pèB«û`ŒrŽ÷÷'/"jY¼ë¢šœuóÒ©5« –/?tújj•Óô‰ð³XMIa/\=|‹ÊkZ §1õÝkWÏœZë…NJ{}tߺ•+–¯Ús"06‡ÓÔ¡ºÅaÒ‚_ú…Æd0+‹.Ÿ>¸r¹ÁŠÕ{_Düq.뙃ñªåK/^¼|ûÀäâ¶ÿʤd]?wd¹¯Döµ§Ô4t[á—fÄÙ™@À÷ê?â¼­KjQ%¤ƒ[Ku±2Y¹Â`ñ’¥ë6ŸM̧Á¥¾nk«ö–ØwÎìM\vK™&]1Ú¹|\+ž²É§5G8ÜFfˆ¯‡û“0VCËõ“+V,ß°cT.‰/<7¯\¹|Å*S ïšæ+ 1áíKß ¸ú:–·íÉåË—,_åàñË »ë [„såÊþ§+á?>7õ­Çê™Cþ”V9bâLa|¨*–sÚ<ûïôÀ>—Fˆêoݺemm yoWøp`&“ùmÂÏŒðš¨3XHP@P'JÛrÎ&ü¹»þDù›¥”6é´Ÿ[Wqç …^8A~ ‹ 7Íÿ]"»;zÞ?·Y[¥ÿ9§ÇTX‚è~jÌÐÞB8Þa½è'*Šá§P¿MøœªÜ†sûÈÈ^pzXÎh¶%ÙwÙd-)Ý¥^ï²ê*ò.o4 ñGóÉ H÷Q>zɃT^û‰ðÃ¦zÂü~-«¹Ü_z˜*)Ê­8~·¢š7Q•²iŽÃŽ#&-·|ç¡RZ‡¦›‹ãüLŽnþ¬€ qÊž‹E4—[u`Ë) "¡¢¸¸8‘(5r]L~Öòt½ðIq5)ô<, ­°¡¥æd4HQFsíù’ÊrLÀ²1Z¡–ä÷Wšñ (ïþHø ÖÛ§ÊÉŽ÷)¨o®-¬sVJJ²ñMƦt3_:Lª€k)YE%S§Gõ íw—YE1³G+iLÒ›7IW‡kùøXç§© XÏ¢©ÊöÄê>D|KÉ ÈªŽ± JÁbzaìòZ¸Ö$ˆjo<™WÃævK῵;$/.ÆOîÿ$®d°kK÷¯›)Žo=þ“—…U3‹BG(ËcÙ‰ÃãWÙóFÂŽRWüðVüñs#rx>ÜZÒ¶1’ý”§lÙ±ŠÐòµÑ†N—L4$‰Ø¯8¼Äš]wøÈ8 7RZv⦕ ˆÂ-')wÖÑû« »ë*???**êòåË®®®ŸŽ¨´ßÚñEYö›c§þI5Üv1£¨å’oªÏI»ph»žÞÔÕ;> Ž®b5f%:9X{ø½¡Ôò2¬ŽVàífãt?%ïÓ˜–B¡888ܸq#!!4Ñû—„Ÿ““ããã8aÈ´äääÿ*ü’„Õsç‰8Qñ~z§lŸÇ¾¸3y˜òÃI¹Å ŸËñ»t|hi¼˜ÄÄEü[Ku€0NPÏpwbvq{¥Ìq=³T©7þ„¥†]ópŽ®2^HXES{ÓšÙZÚrx¨a‚>DÈö¯U'ÌÛq5£¨yÄ2ÄÝ\]©ï´•û’sI¡wOj”&HÊî8javaÙ mq‚0A}ñ“Ȭ.§­ðßÞ=¤9@îèeWF]³müîï-Eœ{À™Jg5Õ—ÿ3c Q'Ùè–ƒ'ÿÞ´Hš " ˆ;eÿ¤º½I4n#ýŸ-sÄ" £æ™ZÞ>sp‰‚\/Aúêýp›~îØV­ášª|† D‚vXàµѹåM?Iø •¹5ˆŠJœ¼V]ǯ„ÜÚsëçEEX< ×2-¶M– ÉÑ9}å¦Ù¹=#UåÁœ:«LK*ŸÿÆVí? Ãü"óZ…ìïExá>O’ê¹Õ9oçÊJ€fúëÎ9yþ¼¾ž¨[LºïÃÈ‚Æöâ|vQÌ$ Y¾ÙD§.Zu|ïÞQJr8AA™+’Ëk!¨zqs‡¬ˆ0Žðç‚ýço]7™3DI'ˆ²0²ÞÔÔ`sÚP/$£>ù‚¹“éqÃþ}Äq„½ÖÏYõœn(üdçñzº¢Â8<8~æXŸ˜Â÷3b¼¸‚Æ^c[³C#Õd¡Ñœ»ß¾Š”´}úY^@¯8JïÝ«÷\æFý‘MrƒõÌح(Ã3ùª3Ö<ÁÕ•l)RÀ «œ¸wÛ\9 ÞB(Q¢¬þÒ5sµÔ„DŽWõ¼v– &R•9'ΜÔ£ïÆË*½èØ|A·~UU?22òâÅ‹ÐÅþôM|áO¿ÐÌÊù¦Éz%9¢žþ®7Qù­rË‹ñÚ<„(QJq r_i ©Ó®x¿‰ ~ºLOwҢݯxNË‹ ^«?eÌ¢-þ Ÿ>H«¢¢[ ‡hŸÅb})ž={rPVV>zô(˜?..ÎËËë?OÚV¥,þkä‹ýb³ Š½ó˜¢9HoÕßÉy„ÿ&)Ÿ]–µ]‚¤qçYó"j|05ÀMWSEH\Çñitm;YWc%ÂIûF³é–}$4æo L)¨ç¾ÏŽx¦7vœ®S>¼Žò³¦ª 2Ìàm|¯sjìάT”ë½÷¬[ µúêþõrÛOÝ(¢Vó{ñ)«gŒ&Ši;?c6|$üp—#šå]vc´Døþ®& üùï€ðsƒÜÔä¥$•=ßij¡‡W{ÓhATuò®ü²ªvüY‘a8V8@ãy* ˜ï›î—'¬Úw³‚þÑx,5ÚoRèáw˜:T2ê~Þ~ƒµñZèv课Dá/Qh &,¨,*©îñ2›Å(ž?B /,ëÏâ§'=ô¾Š¬Ôàá3KiÜO„¿}¤äZþm„ÿÏ®%xá¾–>É üGç¶ðÂSdPP“+r7NÔÆ /ÚãÀlo¸Œ];e˜æ¾ç„>1›1R}û1k2óÓéPþñãÇ!\÷óó  €¿êc£ËjZ çõ`õ‘óÏÐj)FsúâE%޹¾ÅÚ¬úÒâûO£ê9ÝSø´T?¾êäy<¥s­÷Ná/7qgb5›ÅxåäxïÁ Ô¨&ê‚É*8¼æs~Ôͦæ_?zðŠýÝÖ”™Ò— ¨µò$o¹O]ɈðÅdCK±Mydåé•-g¾fDñ–à`˜ðO¹‡è}¼ºÓ/ ¾ä@eÃ/&|PnNNNDDßÍÍíß¿󬚂¯¿#(ˆê5eåÁW©Í¹Tï¿QÚÜ•#3yîª/Ï8µ{åø9¾±·nœVÕÒ1¶½_[Gs1Ù;J{Òµ{Aÿn áÛ/]º4iÒ¤ ¬X±bãÆÛ·oßµk×¾}ûöïßJ‡xþĉçÏŸ_»v­´´4–!!¡Aƒíá=ß&ü'_~hR~¨Çeu¥>šóö> KJJŒ‹OJI²>2o€ ~õqÛ£ Þ$e·pæ«›:j ]¥Ã.?»s¡Œdß#fÉU¬¼pO]Aõ¶E¤be[_Ï.§’㢟=t=³e•ro)Âð»Ïb;,ü{Tz…ÉΙ½²FWÝcââàÿÄ(ÿ“úú(»µ·¥©º`ë¬Á¼ „ÜÃ]'ž½‰¡V×ý{ÄÂë–qo "®÷ÈÛ¯Óê›~î*VIÔlíøÞZÏ¢ÀÕ\o #i ‚þ§r:_òÜ&›Q”ŸòÊí¶Íf½ bxaU­õÙ¾•o&»"Io¸ÌÿI ¿íÊËP 95ÜÇBýÏÿÉêÌK)­mWøU%¤u¤P>¼3îÁ I‚ÈÌuç^>¹A$ˆŽ5¼PÓfÀ­ §ÿí©‡«jégWªã… RòÛûERèu?kEÑ7 ÿý½“ú¼ŽØ{ºÁÆ»^A7óÃZ„Ð:ÌÂå°ôœô°à—ÎvæËæÇ Œ\uþf‘ÿ“ô–Ü\í=-³V]l=žÍêÙ |«‡‰|áÆ ~™VÑzbuùaªR8ÙI[H n¾±šÂŸ’Êã·î9¹jŽž´¢Êé›.ÕX¯öëŠiª:£÷9váâ¥s§M¯¥4j–³ï»?‡yºÃ6í¹ž‘s|û’ñ³ ü#?³iCEE…½½ýåË—Ae ¥¦¦†Å²¥¾…††ˆóÜ«W¯‘#G^¹rº÷ïßÿ¯C:¾¿Ý UE©Ïæäò£Ö9eÕ~z¬ÿ8µ¾£Ö‡&¶öÞ—¥½£­Öùe™OÌÿQ•—Z°óŸ¬â²§7öªÈK¬?i•Oნ{ùèvE9)Aþ46ÂwùO¯$_5Ž(‚ûw&\x“•_¯êÜpWÓqj Büg/;@õ”ŽÂJF«ö©ñϧ)Ê àþ>ëVUóѨÂOZ–YsÚ` QÁ-€Áª8n F•²}žÈä×öâ¸×‹õƈ‰4ÏÛaS„ÿIøÖþYµùáÕz·N¦·E\ó¯$£©=áW4qI~ùᆻ¨ˆÆ-ÛòØÓœ@¼ïvm›¡¡ì0OY1‚ÊØ9Å föë;“Tqüj!ˆÃKöxäŠcN9ƒû‹¿2ëÍ2Ý!øæìÈ«öž‹. òjÔ§ÂçfD<š§+Õ:3 †£V7 “ޱïܬ–¤cŸ³Ú¢õ«o®žõAøÚƒ„DuCsÚÔFF–Ö` ü€%ÉÔ†_Kø••• üððpww÷MÚV{X¦löÊ’šãŠEoAøã 6>ñ²áOÙëÔVøE”þ ›¼§´–Wo)YoO0ükêø~’ÿ‡©pÜî+eŒú_Bø¼Ðº<ÇâÜ–y3§ª(Ja.—›³%‡ÊàrËÛ ŸV­9€7K+Ûøìùó×nÞ¼ÿÀQDø§š…¯-"©hPÚ’O-Â7ÿ¼ðG î;7ŽÔæÂ¯N×V"â-M.ÿ%…þÅ‹ïÝ»÷Ùe™ÆÎ²r „S¤$œ]¿PŠÐÛq»z}úË;˧h-Úp8$>£˜GInNnN^Q×X]zÛxÛ”Yó¯Û6yÂØ“æ·éŸ›ÞuÛÚÚvDø­«w¾yYfÇ#üu%Yýý–Y¥m¦&9õŒZ›Óî]Y"ü¬¤Àq#‡öÑX—Óú±kí! Ãç ³Ž´ÁdIi- Ë+úºCUÆL—ÖÈ}OJx>{ôɾJgí9ÍmbýÀšix!y+ß,vyâT ñÿ ™žøq0_˨a²ÚHáOPýSNW?³ÍNøýK’‘ù.>¹!F·Ô¢†ùAà þö’QÉûËkYôr ÿ-uÕ)ÑAW­•Å ÷Òœ]Âhâvás«i´jþ0‡—}Çü¸¦¤NJña<¹±©²­ð}lŒÀ{ƒÔ×E§7ïÃ)ë'öa >©ƒÂ×QÆ ¨¿Îø°&§:ãõ`q\Ÿ—0¹¿¨ðMMMïÞ½ÛÎWM Á¦jÖœ4ïaPta´ÿ†ùf-ß‘^Âk|©Y×Oï[½Í($1û=—ôèæÔѪx‚˜Šî|ç'‘ŸM!‰D‚뺭ð¿¾%~'ï´í ð#ŸØ SQИ°ñ]rAËi7º1š¨9ìò½§åí„C&mK²#WŽ!.¡xóQH5»¾9.§v ì-ÞyáCax^Ú;¨¯´îMq‰ëϤæóº ¤øç3G 1a}\Jób*69Á@o”qÄ¿‡tÞÞ=¦9PzíI³*~ø÷žK?»z$QDˆ?iK7;¸Lœ(¶ÏÔ³ªeµ?‹”¾{Ò]½ïr)_¿£4;Ê{¼®Îüm¶T³õê©«Lµ<¬ ¼4-HWC'$¶ðÄÝòêÏô˜~–ð¹ ò‘Å#¥åúMVWú^î’ëkl°ëí=YIâŽó÷h-û#¥» •RÕZŸóoáo#A³ ŒÁÆ‚êÊâ–Žî'„S°z–Y_“;GWQHDñîËŒÖIÛ—^“‡iÎß|¨¬ŽÕ®ð'kJ †ùF’ZBFËý‹Dðø Æ>¹ï¼Š‡ÍJ.û0Jã|j¥(^húaRæ+Ýá“–_©jmØE '¨ ÷ó<­œÓ…?dŠ~a-“ËÈ[:{¬Ê¸¤Ö©‡úË{çÿOTÞòUv=‡Æ¾è°é¼ãž&ëÀ{FönJõ»FÄ h¯:S÷þ„¯ ¯/?Žmý×ð[çð3vžïÈ,H÷ÿtéÿÓÚò„r¼î_͇›šùÐziBï•;¯&fe™Ý,)©¼qYDt”¹ÉežKÖMÌåÆy‘fMÀ ÍZµ7<«ü³ç’·´´´°°ˆ-,,ìÂIʯ̎23‚@”72s/áùª>=Üs†Ž2ž0ÌÁ;‚ñõå)­Â·@¡S-O——ÄMY°ï]r!\¡±>‹&©‰ |á¿å2r´’ ˆNTòÄ­§Ø]“…‘¾Ó5Túåù:º®¡‰A'ÛÞ¦(%.LÐvñã ÿôá»ÔT’<Í 2‡ÄbуÝ.ïÓKT@xþÁ»T:+ÆÕ\^J\VkÞ“è6‡Ë©«¸wi§¤8AmìŽ,r;Û(QRµúô–ôW@ ˜—c9F*õ4{KjNö޳"xq•9¾‘ ùE…ù…äÚúFîO>øÓÙlŸ¤ü8œŒÊØ –5¥¯íÎõ‘ N_e”SÊK8¥(iÇÔÑa!­yd—ÓVø7vM’ Í7º’C¡3«Ë/lS"„ðŠ–>©õM7×-Ò58’]V ‡bTd2œ€Æ-Þa_[בe™}q8Á_"UBpÙè"#AU¸RX_™´@GR×kç)*þ¤ôÐaªò8œ˜mP«,n‚‘ 5æÑÛ4l…OIÒËq*’SbŠ»k„Ÿì;Zú¥±sRHåNùÝxœ‚¥Çk¬“UCÎÜ:g¸ˆT/^„_1oÒ`AåQTAcÄBx£U»Ìéü%g„®œª Ñ^Ã>ë? _›·JGyÄšŒ2^k®X¬ÛW@wòfHGÛÝ„9Ÿܺu«ªêãõÕõUÎf‡†iL¸dû¼EÄÜXß» F’:áªÇˤHÃÙcù÷,àp꣧¹ø¾Æ”Ä,Ë<¿oU/ñ;N:Ÿï®‚®á{­­­»TøC›—eD¸ÿ[ø¯ó›8 GÓݼÛRz«®ÛwÜôì‘)Zò¢Â‚S¶O,¢´㕱Á@ÞW vÌk‘J‚"“ç¯>á̼ JD^‰èmü{é0 cÖÏÒ“$þ1p²gh2vÃ$“œ¸qîh1¼Ö„ù§Î^ظr®´„oŠKøOýõÇ"“s\mN Rä ¿¸¢®4æ‘ÞðÁBBCæîÞjÐOœwß¡¨~Ñçr:‹]‘½z¦¦ˆ0Nvä<“«–Çw-ê g'»Õ´·b¼±¦hì¡¢xAõ1S.[ÙÜ4»0eä@¼n•±uì Oí>½á‹ð8ÜuUÍfÔ•‡/ L.Áû÷ÒÉ rRë/…ËhÍÙ›O¥cÅ]á¡*'%(@\¸ÞèòÅ3ÓÆ¨aw÷’Q;xõ¥¼pͱ‰¯y‹—íÉBž‹JÍÞ¸sËŠ©büÝY xE‹')РÅ=ÒèKÄMX¾ËÚÚjÃ<5a!Aœ¢ÖÓdRc{ã… üéÃúŠò¾7wݞˎ«(Ê ›¸»¸šÅ}ßxÓd·(/( ·õày‹ËÓÆhâp8¥ û²Ë븜ª“«FÀi+¨hšZÙÚY^úk¬²NPwí¡2&«{ŽáÓÓÇˋሲsVîx‘B~`b@"J÷9fjîxëæZý1ÂB8™qó3©µ\.mÅ$Ð2nÌ´EÎß%ßãßÙ¾tÿË+Æ”ñ˜ ¥Ô&˜ßóaÔ’7éð„_ÒR‹ã=-à³Ûÿ_ø70áÑàßÞ;bÒ²k×å­8>–Ìúµ„Ýx•——yýúu›²²÷ìmj,ÊM ÏÎÿ º†ºê¤˜ˆ'>O“³s¸M9‰Nv7Ο71·º—Çj6»âú¹}C'êY? þ’Ä“’’ÌÌÌâãã!È«©©ùq{éðš/jÒœ‰Z"ê Gñ„_ã3aØà)†Û“s‹« ÞŽ¥.1iý«Þ+»Šdub§‚ŒDkNX´áUB6»ý®/çŽñü2ij·S ï9u¾ÎW‡Ã»ŠÉ-]³JEA~öÖ3i…ðßsæû×ô• Œ[s$1¯u_kN¸ß½ñªJBÍ'Ž[ºiÏá[å{ ô¹êðì–ùeÅ~»Ì<Š«Xï™Ìªö•l¾‘Pkò‘í¥ˆb3þ¹Gá´ÓÖO&Òº=Nd«ÉmRM‡–ó¥Fú-ß·eU )K¶Ää—„x“•þ÷êœà¿¨|leËO>§:w‰ö {™ÅîÄîÙ¿¥ð¹N ÕT¿©ÊJÚcfލ*ÂO'#áwµð_¥”ÿÒÂßæ(ày77·K—.R¾GÍm(ËÍx÷&$³€ô•þSS“ÏÙ³g±m0Éd2ÿÇ>¥ó½}NCeN ¸äóTV38M?ä *ÝJøl£´”ô…<(.)%×±;µÑúïá3ªiÅ_ÊÔ’¢²Šªº‚˜ ª²:óð»Rø;yC:*=Bø­þ„0ûüùó/_¾ì²|w¹ººž>  ÿ›…ÿž?o‹-ÔëUÎ;!÷Îðü±cÇìííCCC;¸D  „„ßIáà Àidee………9;;yyyýÐ·ÛØØ@¡{zzB>äååUUU}=ð‘ðHøHø>8ÛB-22òñãÇ üóçÏ“H¤—111G=}ú´ŸŸ_\\\QQ6c‹„„„„„ÿã„ ã·Z4 ÀÊÊjãÆ‡ÿˆäWTT˜ššnذzØ~YY“ÉìÈLqë­ÁÉÉÉÐ;áCÇä7¹F®]»þ›B~MM rcdï޽ЯÿM„Ÿ””´eË–¨¨(Ueeå×/á-|Ì¢uuu »ý ‹œ/^ εR¿+PÊfff+W®411ÞvË6€ßÔ=ǰS%“É)))=‚jG þûúúB»ü;$600ðÒ¥KR=‘­[·‚Á9¿CbƒƒƒAø±±±¹½´ „êÀ™äççCWúÙ³g·oß—Ž=º_¿~rrr}úô‘í4p8Tÿþý'OžüÏ?ÿ¸¸¸@o{î NïÈxN[áCÛö›3gΠAƒåååûð‘í‰@¾É·Ð·o_¬Dz|b¡îýéýÝÀ<€ë÷rK·­ÉP‡ÁxÊÊÊÇ×A¸Û„Ý~Å`0H$Rjj*´GäÛÚÚBˆuúôéC‡íéÐ|ìß¿ÿðáÃgΜ¹víÚ­[· >ǶÐVžÉd666v\øØsxx8Ö6]¾|ùĉ„oÙÓ³hÍ7h"¡Î@2á”üqß¾}=/±PÓ uÆS§NæsìØ1H>ü½ç¥÷7+b(P(eø ×,ü ܽ{wÏK)¦;sssWW×/^ÄÅÅbÁíO>ù,«²²‚üøøxèPƒóííí¯_¿~ñâÅsçÎ鯯ÆgÏž555µ´´tttôöö†f%))©¨¨¨ƒësZ;#ðf¬3}77·›7o‚óÏŸ?¦'ùù‘d ü„”Â{jb!uF6®\¹ÅŠU?¨?g¿>Ђc¥ŒÑZ¬XãÞ“R I»pá‚™™·>|óæ ÄÒ¹½´ „‰Úšš2™œýêÕ+ÂïÝ»!´ÍÍN‡æTïîîîãã¶]C‡J¥ÖÖÖv0¼o}ª®®.--MOO‡>‚ŸŸßýû÷œœ:’Ý>ö-@åŸRèÝì‰@b!uL¨u|à5–Þžšäß kkëÖ­¯­¬¬zdM†ªëâââååñsLL 6!ÕîCýºFøØZò¡ÇÍPVVÄùaaapª¾¾¾ èÇ?êOž<ƒøûûC;ž˜˜É/++uƒÀ;¾“¶“É,///((HNN~÷î]PP¹ó'Ù=DAÒžði}ý˜OOMì'´¦½G&ù·Â»РĽØë™R¨«Ïž= €ØlŸ‘‘^»¶»:¥Ë„ùàRñ3ú ‡GFF†·ðö›€FDD€™¡ã‘y~~>t% ùuuuï[&6› -…BãÀÑà˜QQQðo{(msþ›KáWI&”ck}kû·ˆ_œÐÐP(Gø  åÓ#K«½ ú¤¤¤ÌÌÌââ⊊ ïÁ±ÝAømCÂÂB0vv6Äü™ ›O^^Tñ9¾¨ƒ‹s>Õ6> G€ã`'™““ÇÏìqdµáß¿ö¼Äb5-»,¥¯~ˆnR¾ð3ƒÄi-ôàÊ Æ+**ãUVV‚í!Rmw4£Ë„ß?ƒN¡ßÁ`0@ûpž UYç ðCA÷‹¥¾¨é¿?ïû““¬ªª‚¦Ž Ç/ëqP¾LN,Ô·O~öÈôþn´"¹…žXÌx PM™LfוÂÇtŠbo8C¤áTk¿L>pÀúúz88|Å7ؾmgއ‚“ÄŽ\ÛCa¶ðÉëŸÞ¶Ô"zVù¶ýµg'ŒŽÂŒ‡Ùµ[ ¿­ö1©b4vì8M|¾Ë-ÕŸœáw9Éî çsôøÄ~ßê‡è†•ûõwHlGTÿ…@ ˆ® @ ð‘ð  @ ð„@ $|@ á# @ Hø@ÂG $|$|@ÂGÂG $|$|@ÂG >@ ð„@ $|@ á# @ ð‘ð  @ ð„@ $|@ á# @ Hø@ÂG $|$|@ÂGÂG $|$|ø­„ÿ+rîÜ9ø&@ =L‰=[ø@ÂG ˆß\øÈùñ›Ø @ ð„@ $|@t[á#ç#Äob{$|ø}„œ@ ¿‰í‘öâ÷Q}O’?ÚL @ ã!@ ˆÉÿK2*— endstream endobj 25 0 obj << /Type /XObject /Subtype /Image /Width 507 /Height 346 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 1791 /Filter /FlateDecode >> stream xÚíÙAOÆa°gb›™X¶'1Xª°#!$P¢ra7”$'¤MÒ’ÒJ=‘¦MõPiSÔt7=,iÉöCmOý8隀ZíÅέäçùsxó—FšúÎà¡TÇØï+uÝé¿=0•JA†g: 8Çcw—)Ò­WàÏáƒ0“ÍEQ|¶ q¢ç^ wW)ŠrÙLü!þ`*frqþÜp©œ$ç;”$år©T*‡é¹b±5u¹»J¥ásù8— Ó'Ú·Êg£üËßÞÀÏÏžýƒSðìÙÏoÒée>ʶڿ>ú0Ê¿ÑÊ…8þ~ö© ’q³ôƒñ¤e‚öÙ§Â\¾<~Ñ,ýàâx9Ÿ ÛéÓ™¸8Z5K?˜­ŽãLº>›O*µy³ôƒùZ%ÉgÓ¹ÂHµ±l–~°Ü¨ŽrÁÑwÞ`84<6=·f–~°67=6<¶ÓG¥‰ÚºYúÁúBm¢H_™Yjš¥4—f*'ÒÇåÉúʆYúÁÆJ}²¿NŸL5V7ÍÒ6WSI;}êÌÙóÕËWo™¥ܺz¹zþì™”ôÒK/=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=ÒK/½ôÒK/½ôHôHôHôHôHôHôHôHôHôHôHôHôH/½ôÒK/=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#½ôÒK/½ôHôHôHôHôHôHôHôHôHôHôHôHôH/½ôÒK/½ôÒ#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#½ôÒK/½ôHôHôHôHôHôHôHôHôHôHôHôHôHôÒK/½ôÒ#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#½ôÒK/½ôÒKôHôHôHôHôHôHôHôHôHôHôHôHôÒK/½ôÒ#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=ÒK/½ôÒKôHôHôHôHôHôHôHôHôHôHôHôHôÒK/½ôÒK/=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=Ò#=ÿ£ôƒaœL5V7ÍÒ6WSI¶Ó—'ë+fé+õÉòëôQ©2³Ô4K?h.ÍTJщôµ…õ—oòÄ_ù7§â—_ߤÓËõ…ÚĉôCÃcÓsk··w¿Þûaÿà_zñâàà§Ÿ?¾¿ÿOzj¿5ó?¼xÑi¥ƒýö¾Þݾ½67=6<ÔNä #ÕÆrskg÷ñ7{OÿÞ¡ïŸ>}úÝÞÞ·Ožü{òäÛ½½ïZƒßi¥§{ß<ÞÝÙj.7ª#…\p”~ Í'•ÚüÚÆÖö§»_|õ¸S_}ùèÑç~öàÁ.=õàÁg~þèÑ—]Dúb÷Óí­µùZ%ÉgÓÇé3qq´:»¸Ö¼½uïþÎ'ùxgç£ûÛ~pïîÝ;wþJݹs÷î½>ܾÿÑÎÎÇfÚ¹oëvsmq¶:ZŒ3íô©0—/_œ_~w½¹±y«#7onnn¾ãÆ{Íëׯ]û =tíÚõëÍ÷nÜx¿5ùÍ›uÚÜh®¿»·°´²zµ«‡ÞYY^¾reqq[\¼reyyåW³wjeia®^«Ž'…(´Ó¦Âl\(VªÓµ™zãr'F½^Ÿ¹téÒÛµÚ[ôT­övkè™ÙÖä­á; UŸ©MW+£åBœ SÇ_y­³O‡Ù(_LFÆ&*“SÕŽLMMMNV*.LŒs &.\¨T&'[³wØi²216’óQ6L·þðìÓa&çÏ —ÊIr¾CIR.—J¥bq˜ž+[S—»«T>—s™Vùßþ°}*3Ù\Åg»ÇÑ¡!zîÕÐqw•¢(—Í„Aêdù£øé ÃðLçÂ#§àxìî2AúÏáóJulðȧâxî.;Ùú˜ؽ6ÿgþú¾- endstream endobj 21 0 obj << /Type /XObject /Subtype /Image /Width 400 /Height 412 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 26 0 R /Length 62568 /Filter /FlateDecode >> stream xÚì½\[×Ýÿßñ´ýçßñ<}^M›¦iŸ´™MÒ4»ŽíLÛq¼'6¶0{ï%†X±ˆ-¶ØKlÄÞÓˆ½AhBH ¡Éðï ra8Œø~^)•¥{Ͻ÷ÜsÞ÷ó=÷Œ{÷!B„"Dˆ!B„"Dˆ0ýdGBò "Dû JÊ!Bt8¸„p "DM?ûÙÏ~ùË_>õÔS¿úÕ¯àónü‹_üb›#C„ÑÃá7¿ùͳÏ>ûÒK/½°¢·ÞzëôéÓŠŠŠ–––nnnx<>***--L&×ÔÔ444ܽ{·­­­«««¯¯¯¿¿¿§§§½½B¡466Ö××—––feeÅÇLJ††zyy988¨««_ºtéÃ?|õÕW!ý—_~ùïÿûïÿ{\ˆ!Œz°þçþç_ÿú׉'€!% ‹   üü|àÏÔÔÔâââžž§H$©ªªŠuvvVSS»råÊ—_~yäÈ‘?ýéOÛ·dÈG„èP2êç?ÿ9X& ¸ÄÄDð?àˆš¶/¡P«««cbffvêÔ©_ÿú×»!:ô¤úÃþðÿ÷ï¿ÿ¾‘‘Qzz:§±±1@°´´t ®N"‘LNNR©ÔŠŠ ww÷“'OB¬úç?ÿÀ‹P ¢ÃA*¨Ñüñ­[·"""úûû¥R项j‡«¡¡á™3g^|ñÅ_üâµ!:ˆ˜úío{åÊ??¿òòr°%ÅDíLb±¸­­H$êêê>÷ÜshïBÊ "Dû‡TO?ýô¿ÿýokkëÚÚÚ}Õõx$‰CCC?ÿüó¿üå/[…ŠHùA„èÇ…Õ3Ï<a}à¦,?YVVQðK/½´iœøãÞ¾}•"DÓSý÷ÿ·––Vaa!ŸÏGri:::°Xì /¼°UøØîÚº¾ôѽ×ß’~þјìûWß_þç¿ÞÞY²ˆís^ýú׿~öÙgåääòòòæææüy€ºººLMMÿùÏþîw¿Û¼‚/_ÔGÇÚ–?¯Àêõ·Fã”!Ú·°Oõæ›oâñx$úÛ¾À‚ž>}úOúÓ#AÖ¦Vmû}Ãd¼úäø½×Ž®‡Õ»ê÷^{oùË7ß–|yrù›×þsï­÷–pz˼qöÞ¿Þ¹wú¤á¢þö·¿URRª®®‰DHþ<”èt:~þùçwî~䣌Wßþdž$ï§|ïÞ++_¾õÞ½×V>h^¾÷ò‘åÏd­š1+åÄb!Úÿ¼zê©§ôôôúúúw…½@ÞÍÍm#²våmÓh­ 7ðJ¨yõ¾O~õòò÷o¿·Œ£×?YþüŸÿÐ^T^þðîû=÷Vhö¯·û‘Ñþ‡Õ¯~õ+99¹ÎÎNV»‘D"±¶¶þÛßþ¶3dmÕ„þƒ¶j#¯Þ|[ðæ2p±dëû“¾þ-^^‰Ož•E‘C¯íÿHðâÅ‹µµµ‡©ú¥™™]]Ý?þñ;@ÖŽÛ¬6òê“ã+ííoËìsÙ>­éÈ|>wóÞ§gï]½º¼ýKÇV9&ĪT#¼B´ÿ#Á˜˜¨hHÎ<µ´´¼úê«»´X»l¿úèØ |þÛÍû,:ùñػ겎 3Ÿ|r¿Õý³7µºÍ›omåô!Ú?¼úꫯ(Ê“Öe}ï$ ž}öÙµbm§Ùj+²-û¥¾Ù½òñ½Uïôï“÷[Úá¿÷>ø®ŎÓX!ÚÿÁ “ÉDræŠ@ ¼øâ‹» Мµnûµ¿nçÔï¡Ñßûæ•w€WÂ<½Ÿ ¼B´ÿyåéé9>>ŽäÌ#TZZÚ.yµË¶úíîuï¾ãz÷}¤¥ÑÁà•±±1FCræ Ç?÷Üs»oÂÚÁ}ØS}ëø½#Ýû®›Â+Dû›WÇŽ«­­]XX@2ç‘hvvVAAáñÐA„èIàÕþð‡dÎîµ´´TSSóÆolœsÉDˆvϫ۷oëêê––– …B$v©ÑÑQƒG5œ"„Wkžž®¬¬\YY)‘H,Ú±&&&ôõõ233wÖÞ¾§w¹Aˆ¯üüüØlvJJŠ¥¥eCC2ØyZ\\äp8&&&X,vzz:77÷…^Øo¼B…èðÊ×׌üÈ266ÎÉÉáñxÈ@Âí LiGGöðð €<Ü'¼BbRD‡•W ðW`†††á„?¨……¡P£¡¡‘––¶Ú¸?y…Ü/D‡ŒW ˆ q8T@"‘Èd2‘­­HÅçó+++uuuÍÌ̺ººÖvAx…ÑãáÕ½•Ö˜¶¶6ssóôôtƒÎ‰W£?úª««555óòò6¾WÝ'¼B‚ADO¯Vá¡»»»–––··wooïÜÜÜÛ­.‹¹\n||¼ŽŽŽ¥¥effæV=@ö!¯’èÐóêÞÊš¡x<^II *iaa!Nóóó‡ÞqÁŸe ÖS(OOOyyy[[Ûòòòééé\>Â+Dˆ~^­º ¨¡†††ÚÚÚPs³²²zzz 2 2Ó Œ‰DWTT„……™šš*++`5€úSؼB‚ADO,¯ÖŠF£A}ôòò‚Z,cWII ›Í†àª9°ëÀù.8a`”T*öòù|°Rzzzúúú±±±mmmÛÁÂ+Dˆö¯d.ý¨ªª‚ªmff¦¨¨hll ¤ººzxx˜ÃáÌÍ; šï7‚Éè'€ÅãñX,0*-- 褠  k¯ËË˹³Þ³ûWH±Gô„ójmõ.q¹\ ×ÑÑQRR222rww‰‰ÉÍÍ­­­íëë“ <@¸hì)Çd\ZÊŒŽQ-øÃæææ¢¢¢ääd uçÎ÷\\\ Èe2™°Ù.g[ýÑy…˜+D¯¶)¨ï¥¥¥QQQ>>>ÎÎÎVVVð°–,??¿¥¥…J¥NMM­rL& ŸtEóß×·Zû¥lKØE¼"”æV®©«««¢¢"!!NL œ€¬»œegg·¶¶>¸ñá"D‡˜WëèÓÒÙÙ F ‚¬¸¸8Ä044c#''wíÚ5UUUSSSǰX,xˆ+ãããÓÓÓ'àÐ Á••••———””ÉdÀü”™™ ):::00ÐËË Àhmm­­­}ãÆ¯¿þúÖ­[`öàOOOHRƒÝ’CCCÉ=µvûŠWH™G„ðj7’Åhà…e³³³pôÞÞÞúúzQFF‘H Gäêêêèèhoo!›¥¥%ÍÄÄÄÂÂÜš¬°`F.55`nª½½ð¸jÛ~”×—?.¯s…ᢃÈ+ä^ Bx…á"D¯^!Á "D¯ž@^!7Â+D¯!Bx…ðêqƒ?yBîõaÅÂ>) ¯ž^=`ƒ>øàÊ•+ŠŠŠ7oÞ”Û©`_%%%ggç²²²zDY&&&Päv!Ø]iEÏ>ûì£-í¯žX^­þtíÚ5 åµ"Ï]vÏÈÈ`2™|>ÑUbb¢··÷.K‚¬,}øá‡ùË_ö9¯„B!\õÌaÑÜÜÜ.{¿ÿ(¼úÁíþ822‚ʈČ.ò…câk¦ç„3<F˜Þ·aKRq¼ñí§ý¶]pÖVQ2PN8zâZ^C Ž3FF¨4ÞôÜ«÷¤ñj~~~hh óƒW  ¼Tx¶®‹à'.—[WW×××·w‘/ŸÏ¿{÷.¸¸½;$…ªánÓ€JyyùÎVÏܦ¤RiQQÑØØØªÅ:p¼’ y9¡®ç>ÿâèG'ÍÜBú錢ŒˆÛWÏýä´_÷ù;/¾rü.6ƒ2õ'&ûÚ¡ýˆ¬ÑBÚØÔÒênûù'?ú\Ñ?¶bbZ$#NKEæ¯ÎùåÙoý[ÁŽ8ÜÓæ¬ã½w?=yîj|19ÐVí¿ûÍ‘+uM•ކê_|zêâ…°”º9Ѳy›©¿|ä…§ž:ââGÄ:™¹%T UGŸ<§TÔN½[}õóãÇŽüGÍ>p`tfˆWÛ?ÄV¼’E‚à‹ÚÛÛ¡þàac¸×ë,ÚÑÑQp_===¯ö¯***öšWPÎáI·Zl¯æÆ:íTnik^;òþg'’RÂÎ}qôÔ e}¥c^ðöõ½|òèÇ·õRr³Ô¾>nîÇ;¨»ª›’›ot“<ÞèÝwÞRÑ5ùêÓ7>8~½¢eÀ½( «œûÏÉ FÆ*¾ó9tl}^ü×g/¡œ¬Î½û§«f±¾Ž¯ýùùëÁ¥™øsg¯XØ8ž{éùcŸÛÐÙËENÈé7>÷Á³ÿ”‹M˹zùã I=åQ§.(“Š •¾ôŸKwÌ.ÿõÙW½“æD O&¯Øl6ø¢í¸‘#˜±©©©ußÓétxàB´ˆðêIàØrˆÍ{{{%É啈7èëhòÍ ¹¾ñöggÁŽ—Î}äŸS;Á›li¤0Ù4”±‚m$‰1Òmpãsó Øº’„KÇä4ÔuÞ;þUxn}¢ã…w^{öÔÅ+ç?{ëø™óù­Ýâ¥{³Ã·O¿¡ëEžàãLî(ÚÇ´7æÊ߸ö͵oÞ~ééë(ŸÁŽÒ/_ý4°°›ÕF2TºrýÆÕ÷žÿãGg¬hìûE.Fíú{rXæCMîó¯“{Ë£¾¸¨œ”N<ñ§¿|pä‹ëß\zýùWð¹3ÉæÕö·\Ë+àÌððpMM „xÛ<(ì[UUÅb±Ö†„Pz!T,,,Dxõäð*--mmcæãµ!þ؉F¾OƒëŸŸ¹á~ñ‹ã&nÄâÔxŒcES±ö55çÖ–zÝkŸÄŽÐúlï\|æ~ûÆIµÚnZ®—Òñc﹇ÆÅâpø°d¢Kçêq9LQI©Æµ/¯Û„ܵþ~âfdzšÖÉ×oØxwÝ-8ùœ"Êí?|÷ȑĜLÕÏþõéÙûþ |k˜êÕ]vdN ©^ûìŠð*òÔy¥TRòÙ¿¿¤¢ï“““âŒö(ªKž@^™ïî¯çp8Û<(ƒÁ¾A °öÝÐxµÚÉAöù)¯ýui³MW»_÷òjO×äExµ{^±»É7/ŸüúÆu…Gß=~šH"ÙÞyÿÝSÇÿùÆùËò•w›=ÍÔ>øô26$Nëúi›à:o&oñá›/ª8Ç ³ç˜íùêŠW.~sõãþó–¶yµÜMA2ˆG½ûæ±SŸœz㥗na‰9‘èw?:­®rûË·^;£‡¡´–ßþð_Ÿi`uã­÷ßS¹£÷þ›o~rÑphbj¥¸ÌGèÝ>*ïÎâŒè)WtO믎»xC³¨¹•`zý‹Ó§¿ùêäËÿºžNîK¯v<ûñZ^A‘¦P(À«ux@]ƒø±¶¶¶§§gm{×x5Ååôtuvvu3XL:ƒ919µiÒ‹ RæÈÈôììâÊ¡ÇF™céüÂöyµ¸8Ï`Чgø‹»Å#ä“A‡‹]XXܼZJxSSk{þH$bÞÔôƒûn^-JÃíuy¹ -MµÍ­ô‰™Y³®œLÊÎëep$ óÃý5••”^jWGëÈ([<¿(ätµ518Só+ÙÆ¦õ•sóJ*˜“³«ý æç¸-õä’âªú†gnj¬¾¬0·ÜÚI©k˜šîª-.¦0é¬ÊRrVnuks3¥£mö~mZïï¡tÓ$RQOg7ƒ#˜ïìéŸIçEœºòâ,RNsK:ÿÝ];ˆ¼z¨Wy%klolllhh€R‰ˆÇåÍòù@‹)‰7Mjrr²ººîøÚ&w°O›ò ¼UYAŽ-ÊÚÝÛ;=-)(,2#¿L, P›ÖrE"˜I%F¶w÷ŠÄb@@Œ MÉ*äNó7òŠËå®tV¼'ë ÿãóg…°›p÷¯¬§Ì ÅË¿Îϯt÷[,÷¾o$°H(„‹…ÝçWV§’Wà¡æ.»Aø°ÜKsaŽÏ…ð!$(0«°’7=·Úw¹AU(˜×QbiÙÎÃŽ"±D–\©ùî³è¡ ¼‘WŒÁ˜˜¸é™Y©X<33 yC슌KžåÏK%p½b‰TF!¡nX"óç²3‹E³³üuxxu8ôDñ êB]]]ss3”:6‹–Ÿ“WR\’žKŒ¡3 PÂ…"‘dEb Ô¦{SSSீ«ÕŠ4T.*•º‘W"Áth ¯‘©eJfnUe‘—`tRÖà@_nvfaqé({â»~taMUAo£4df¤éë„Ä¥px³ëxÕB¡PûÚ;»fùsLÚpßÀ`ånFZjnA FuÁ¸ff¶wôñúû{£lÖÈpvvFv^sŒ½°†üi^Y 9>1¹«w »«£¨° --½±¥c|‚óP¼ÌLQZ(Mœ1FWOo_WGvfFzf69ŠusM"54Pøü9:<Â-.ÌIIÏYkg¦8 u©ÉÉù…em¨7#-%#§€1ƦQI¤ôŒ¬Ö8gqqiǼª+L;î|}Kkmu91.¾±µ“”õå¥ëí]}͵U ññeUõ³³ÓMõµY¤´ìœ‚Ò‚xb25ÖÛÑYT»ôQ×zE„W¯?¯ ü©©©ø€µ` F‡†Z™c\0•5mÍñÄ8RvnEumggwggGWOŸXºuüUee%äÒÔŠ€T+ZÇ«)ÎÆÁVN^ í„ Àúø…ã}<”o+(«ªGǧò…÷K»˜Ï òqÍÊJ±0ÓWS½}ôø1ß°¸É©õ¼jkkk©.±µuhíèŠ Ç‡"¬­Œ t¿þæfbj–£³[DX¨7ŽF£âýRs¼]Ð:ÚšW¯]ŒKáM—Z%9CM]]^Aknjðþ»ïZ»ø Ž0áÛçÕÔÕÆÒ¢ºánVR”o@ˆ›£±‘á•Ë_‡Ç¤889"c\Иþ¡´¤Øð˜T‚¿¶¦æõkW1^¬ñï*]Os•¢üMe%åkr·’S3]ÐVzúz×åå ÄdŒƒ•º–ÖÍ[wrKj"ÉŽyEŠ üÏ‘Ã"ÂänjkªšÛ:{º¢ßÿð³LR®Ž–¾Þ×7n57×*]½¨tGåó?¹yCá—gƒ"’lutän(ݺ)gŽv›œšAx…ðj¯¯À+  §©© x5ÆÆØY?úÖ7¸§§+<ØO_O×ÚÆÆÜÚ&0’_$ž_˜%“É111eee`´ÀžEFF^ºtéìÙ³îîîßt$™©¸à0!<Àëæƒ37·473÷ Áb1ž>Tç[^MzcPŽöö˜Žî>7g;¦þª…¢Ú¡¬SSRl¬­2HÙ±1q9Y™:*ê!16.„@wWw*uÄ×ÏËÓ§ p+2:Îck㈦7mlvb¸‘™ExxDVy‚Ãm®.V×ÐÎ)®š˜ä¶=Œ¿ZŠ=œícâ“Ð6VÄäôØØ¸œœlk#Oï k;BTŒ¥moß@b\”—_ð­›ò>ø°Èœ¦®Q{Oÿj"”²©98ïc¤¯¯ ¦×ÚÙS˜F´±uÔTUpõò!„G54·o¡o‡WŒ®&#“rrÚ­ÛJqèØär––±cW{{hhHA~Î××®ç“s•n^mïî7Ѽ“’›GŒptöÖ•¿UÆèTPVë]µx¯^푹z¯x<žŒWîŽ ø{{jjê¸`½âãbÜm \±>>ÞÎhÚÙµñnûrð23SZZš››ÛßßÏb± ¯ œ Áãñ ëÛÛ—¤™¤4ÿ`Bddçîæ304RQVRQÓ4ÐÓ &0'x«¼òs³135pò £3Ù‘¡þÑÉYÞ̆ö«–é)ntˆ¿…‰‘©uUeÖ mldtæÄ|`”­#†äæê6<<äíåî‚Á\¾|IGGOOGëÌû®œtÞuq°¹­(ïìƒoïlG[™â‚£Æ9¼´·ç§ÅÚXY¨kêVÕÔà¼ÜML/=ƒuÇ¡líW6¨ÞÞ¾¸èpO߯/_RÕЂ7±F÷SéßñªšìŒõ¤Òr£4Ô”T mú‡èu%¹vv®aAþ¦ ·n%ågæ„;çUw£±aOw»§ Zå¶¢¾…mfNª®©ssC®¶™‰ÑÇ'NçæšêNNN:˜˜WPÊ3’1Ξ&wt+º³cÊê:ƒ¬„W{#YS!TC¸kPΡBQär¹p;8\2{Eð³"¨¹`6`Ëk×®=i¼jhh€RÇ¢ ¥§¤“ Šã££œ°nXwwÏøÄä’¢'04n#¬år"³d°‹@ X›Õ c“þ¢KÒŒ^EDF.óʇ²A;9c¢â’Ò’’rr ¦ø÷ë dŽë‹µqwµ7µ°+.)±0Ò ‰Nâlˆeï›+ÉÎ|aëêWšG2Ò3N'‘Ltô}ýC­m£#í¬¬só²tÕÕ°ž>ºz†éYÙI±QiYk™¥Rr~FV^J\„¾™¥ Êâ›·“2HÃ4g’û°¼b t(|sIËÕ\_mlh”œ–鄲tuÃYXZGÆ$XffgÙšaÜütµt"âRr2S#c׳­¶X[W?7¯ã`‡vpPÓÐ/(,ñ÷vÀÀÃ" ¼¼ÜÉÖãÆŸÜ1¯˜½-:ÚZ$R!*¡²Œ|ë–bxL”šžuÞSYÇ¢¢²ìæë©ÉfúÆvÆÆä²»åéI_}…ÛaIåyªZ†´Ñ‰%$Ü…d{ –L“q 3ÀgllŒN§Cl÷:555**ÊÏÏÏÉÉÉÊÊ ÎVKKKUUUIIéöíÛðACCCWW×ÂÂÂÍÍ-88øòåËO¯ »>ÖÍÍÍMs'î66Ñ{»:r²³“S¼=½bãS;Ú[ÃCƒ£âÓdCœø«Â.?ø~ðÞÒ|EeyJFvNnnj21:!953;&*ÂØPß•‘Mfs¸“œÉeÆF–W”¸¹8™ݺ};‘”?ÃlÊ+Þ8ÍÖÆ*»¸Š6Üçꈶ°0»£¬âŠõõò ¨¨ªrÇ8ê*(*§ç”D…[£¬5´µ2r‹¬±I™¸¼òÂlkK3#¼…¡¾¼¼¼––vXTò0Ùú0íW ©ˆu±‹N$²ü¼<,-,ÕUU­í\1n^ä²ê_¬±â …¨¸Œôd¢µµ¦–zhlÒ0•¾z2Í•…r_¥ª®¦­o^Uی󵰰ÔÔ5,(.ö÷DY[ëf’Kgwá¯f&è–&QqqFz:v6(+G—ÆæzãøØh}}”µ¥¼üÍ`B˜§ßÔôL˜®án_KEqTt¢‘¢ÒõÊêªJ‘ |i¿z(:ÉÐ5evvô4­££ªÔ”äädàååegg§8RSSC¡P>>>)))ðô¯¯¯§P(===CCC4¨bð¡··²'&&†D"m5eÊ>áÕRÞŠW²Æs(Û²NM«oë–V^«K¥ó ó=-ÑÑQuMí²_æB¹6—¶îµ4'ÌÀÝZ¶¸ÓPæ„ÂÙé©Þî®A¨±´‘ªÒÒŒŒ¬ÌŒŒ’’Jê0],•r'Æ;::i4úìœ`ݱU^Ÿ›âM‰DbøyŒIïìîf2™ & ü²H)°ûúû™¬±9ØB èéìèb³˜%%™™Y™™¤ìì|*•Ñ×ÓÕÔtìgœ ñ#Dm££““¼ô¿šæq—{),-ÁÉ·wt‚Õ¤Ñccã‘.¶¯¯ ÛôìÜ‚t~ ·§³«{Š;Y_U•EÊÊÈ$eeç%F…[ÚÚçИ£é¼?ÓÞÞ:0HK$Bþt¥¥£»W(|ˆÎŸ›õ]d2è¼é:m¨®®žÅž€ÚD§Ñ 3‡zººûÇXË“ÏÀ³¾çMr…"‰P0¿ÚéÅ'e7Ým]×Úpye``ØÎhÙ‡Šæ C ןûÓÓð‚“¤R©PMÈdr\\÷ôô„ªtk€‚ðè‡-W‡5=~=N^í`—uý¯ »€?[öo_Zd1hÝÝ}«Vªp©¥¥emuØÙxg‚ÒÜ [sKûÜù‡ÝŒÇáOqáX••P‘«ªjÇÆ'7íñŒÇ‘Š„m­U•Ë‚“)ÊÍ ‹ŠcŽŽ?ªôaÿöŸ–Žáù ½^.¯ÌÌ̼½½kjj ÄB±‡{ å òjyr½ͯHÖenþ[Á÷÷{õ¬„rPq`G)°X¬áááÆÆF¨ø`™\\\ôôô pÓ××wpp€È.::\ÜkÈ.ØxOÇn^G‚G@AAPh›I… [»ö‰€ŒÜ¾$"8âü÷;óï^MMòD›õ£8¸¼‚*** \–ºººµµµ,þ‚kø Ö«¹¹Ê@ÛŠZW¥¾‡_KJJòòòdMLþþþnnnVVVšššÍA‚®®®T~~>qúÁyB`ñ#§CÆ+YÁîììøwwwo3$‡{—••)@‰Exµ?…ŒÜ–½çñàa ðÁáp.cccSSSÖ,--m¿•ÍŠP(| ¿”d¡¸&"‘(C›Í^[œ¯ÀåB윙™ Qávò\ @EÈÍÍ[»ÍñΖW‡"¼Ú¼‚»ÐyµéE‰—Ç+ÍÈ d–GyLOC$ò#`?¸¼ÚY²˜Ož`qÁ2­†í› ~…8===½¸¸žM›Î'ÓÞÞ¾w @±¢lüà ® ,ü=ЋM@å*++㯌ŽÜ#A½grÈxõdê±ñjg{­›¯OdA<–˜˜˜°µBCCÁC)]÷  0“É„¸â÷¤¤¤„½QLLŒOttôƒOr—‡€»w‡x Š‹‹suuÝÓ«½Žïëë;pó‹":м’H$ ¬ vË-deea;///_<¯dý²üýýÈ.…úVp2{‘>$kcc#kµØ£C<6ÉÚaöH9 üN?pó·#:¸¼’¡fvv¾©®®†3ÏØZ6Ö××CÜ·1–_\\œ››£R©?˜Èn”™™ qkæŠöè~öŠöîAé+JKKƒ¿{tˆâââÎÎΩ5sj^MOOŽŽ²‹ 7v<‰ÙA䕬«D…cccÀ¢ááá¡-${E \ZÛÒ¾6à”„'²c ¯ÑÐÞR¦®hOòx·xï‡ÌgÅãñÄbñ[Ï bd‚‹¼½½wùzè`ñêÞ·SËÆȺÃm*ˆa›­`¾:`ó)ìRâ5:¸‡x<Úëó‡-›¨pm8¼ºsçNPPPáaÑgŸ}&aòjÇ ng=zDˆv£ƒÂ+##£Ã4ŸÌ7öíxç=åÕ’lÐàÖÚf¡}p"»‘ìi¾wé?žC<É®â1â ò ™ÿê óJ6Q•Jíÿ!Á6³³³›‚A‡Ó¿—’L‡¿úA}}}íííðwOÂ`0Ö¾&>T¼ZZœ—H¿›3iÂßíO¡¿<©ÿÂâCö.]’ˆ–§‡H~a~q~^º°„ðjóöv@PGGGSSSϹ¾¾¾³³sãü²¡ˆP dKçì‘(JAAAKK ðd‰“Éd8ÐÞâ1`E"‘àïÞ Ìê´‡WâvG]Ý8wjá>Jx umŒ‰ÙmŽðœdv·°gÅßÛ|A(`s¦%[aL:S›O®j꯭»KcŽöõÜ™nYO¯à944ÔØØ8::*} $ ø«††x°® áŸ\.`L“¦¦à<ÁÅíÝ!&''ïÞ½ ¥Y ¤¤dfffï!‰ ¡Ì¬Z¬ƒÎ+‰p†:ÐßÓß?Ͳû«l•TJ›ÛùsÓ´Á¡á¶|Eyó¬úÞ9Ñch°¯dš/ZXLs'G©ÃîÔýù+–¸læàµ0N,ä¦9cÝÝ]Ã4–h~žUWìèA Ð&Ä¢9êÐ@gW÷ouí¹ÅÉ!òWG¾v Éöt ª¬­ ô1M¹;*HÆÔ®þ!ά`+Îí[^í&ÁðJÖ¿—Û™*xxp¯]ÌK ²X¬òòrxòî]¨þÆ;Co{Èùúö¡àÉòÆ;gggÓîÀõoß”W ~sqÊÜXKO/&¯º‹Rd~G½¨¶®º0mjca¨üñ'·³ªZZêò½m, l‰ùutZoR0ÎÙÈ$9¿š7·\¦]~nVvh}õsÖQƒŒád‚Ÿ¾±•µscïPާÉ__xÛ+¹¼»1ße©­©91+Zi0’£Ì^ãtL^ELDbSs#ÞÏ2µ…Aí¬ôwwб´ LÈ.X^ífßµ¼_[WW700°t€K²¨¬Îºïi4Ú&ó!4^!ã·Ï«ŒŒ x<­Î—r y5ÙS‰ÒÕÆ…Å#ݯé9G'ÄÝÑJOº£«ëŽÄ;™}~ìvbR¢‰®¢­«»¯ꢺ}|J¢ÊÉ“ê:æÅ”ÁòjË’|/3-=TL|´Žê9óÈüž»Ù–úVñ¤L«¯O[„f”0ŸVH«lN°röv»qñjYߘdÙšÍ÷”‡ò‘yyc½š‚n©çc•Z×ì¨~þŽ¥w\”וO>%Ö ç—žp^gà q¸£m&%ë Û¯ ‘ùdž@^¦ù)¤p;¯ö!æ¢pØÜÜÃÇ/@WY+ÔUCØFe/°tµPx¬óÍë VÎØ`?çË·¬ÃÃtoª6´ß÷=ó85¥R G¸X•‚rL)ílo ò 5¸tDÞ-©»0RËʱ“:^“çÆ»Yž=y"½‰&Ziå’Ž–É]ŽP“ÓŠKÏ÷Ç¡sS?ûäCc'Ïà€;ŸŸòHm™-<ἂ‡#9ðW““Û]Ë€Éd¯€rÛŸOæQMÄð áÕñª#?ÚÌÒ¹‚Ò;A­×7vÃ…è)k:©( ÝÊ;ƺsî(ú»;©ÜTÆøG‡;ºGçd'ÝV.inÉJ·„í©¯äM,eg…X£“+ ž—5tCã‰7>¹íß^®jhUÝÔä qÅÐ30:{ñÌ©ô¦ÑJûŸˆQ|åbô«_UN3&5çkŸqùäyàÄøH{GÇ ]üÄû+(Ò â»íC€Ífƒëîî^ÛÞõ^³µU•UU==]=½Túè¦-‡ qg[ ›Ã‘½èaÈIß&¯æ%Ý]]ã܇~“¼'¼Zêéî¢1ƤnÖÐÝðJ*ML°×.Ð, ÆÙœ…=;d¼šª·34qò v¶SAùgdØéçfÇX›`üÑíW²ùÛW$„>“Μœä2GGÓ3üM“âr¹555pÇ×6¹oµ>ÎÒÒB99ÏÍÕ•[T”C"—KEbѺybçEü¢\ÒuD"Y~÷”DŒLË-æNó7òŠÇåÊjÙòêHðaiy¨5ì%ÏU7µÍ %²S’ù:¡PÇÚhñ$bÑÜœ`ay‰¥yÙP£ù•)¶ŠW+ 4-¿v– GZZ~%1'‰—–ÃÃBrÉÕ¼™åU„`+Yø, á×u=ydl…B!œÅÊp_ø¢ûç¼$˜›‰%eQ7òj‚ÑOœš™…k™åÃá†ú;B#føsK óp½+羜¥b1m~a^*Šd'6/•Ì Öp?tëã,tåx9¢-í°ùM}“lZUVÎÈ»¯!ÏÛÁùx“Fyƒ ù®ŽV(לªÎ(­:+›:Ê^í‚&æÒHx´%ÊÖÙ5§±Íèôr±¶wKˆ !R™Ô¤ˆ€°ü†òÜdG{[ >&š\PÓ*’,' JÉoãÏq²R ;z›ê‹{Æç8#­XGKK‘Ü$oþ:ì‰âÕìì,ƒÍÍÍPêØ,Za^¹  ‰•œ–Îc³Ç'ySPnÅâåaPþW–„ÜX­POá3F+..^Ç«¹Y®¿7VUC'<*ŽœOòÄᣓ2Û)ÍÑ‘aÄÄ”Áúj%Šçȹ¤¾þªòÂÐ å[Á›­?np »£¦®~jjf ·“ÒÖQUZMLêëïsqqMËÈ©oh†ëj¥4R½­Ñ‘ááÑ1ƒTÚÚE¸lVzJÎ? ¶©¥¾®šˆÇ“ËjYcì‡Zϋϛ¨,¯ds¸Ì‘Ʀ» 5UQ„ððÈî¾!WW×脌ò²ÞÔô@oWGïm¨?)>Béè^k¹¬‚Üì`<>†˜Æewµ6ÂBB"bF˜-QQáa‘±Tæö}ãF^•gÅŸ:uª´º.'+=‡+(­Lˆ :ñå冿¶üì ¼@*);9AÎË &DF'ÆÄúútõS«ªãb¢}½}[:¤ßŸYÏk?hòj—I=`ýÁêêjà ÖÈ`8>ÀPW×ëY[ßÔXWAOLMË- 75·455DҨ˕••¥¥¥t:}|Emmm ááá×wæOs|½°j:†žÞ~áAX_ÿ  _++ K«˜„ÔéÕõRù¼P¼gFZ eno‡:wî,Ž?¹W“ŽÆj´ƒ3œLL(~y­y77o¬†ºNrz¶ƒ³[!̇§Ó!!ø„Ô,O \®³ž6!6e’÷] Y–—blfnei›”——‹÷óüâäIW¿pWª?ÃÌ$ËÁήº®)=>20”àçåáåå©­®—Švp"Dź9a††3S"âÒ‚|¼Ðh´™‰!Ö;€Îú®Œõ¶T«©©Y[£45tââáá‹rÆ` õõC£‰NöVÖvöæ–6Eõ‘dǼ*Έûâô1q‘ªêj'Ww\0Îã³Ó_£íl|¼=•Ô4››êÔ®¢lí¯\8¯£g¤©¤‘dg` £o޲0¶´Ã°×dà£åÕVeá«ë;¯ £al>ýäsW¯€övJ8ÞGGKÓemm‡ É/*—Ì/‚u)**"‰‚Ë‚[˜‚‚*''‡Ãá:;;¿.-ˆSS“¼qAaa¡~X7o?s k}}= ”‰±Ökdô~;¿˜ÏñÆ ì-­°Í­m®ÎváÄTo=¯Z(”Qúƒ-*>!em••pãŠ\@p”­†èŽq§RG|}½<}pׯɹ¸¹™hZ¡]EßÕ_Q[O×혖 N²”¤ª¦UPV3Á™l{˜xpA*öÁ £ââíQV‰i¤es¤ª¨€õ£lìQ1v¶}}‰ÄHo¿ Åë×­lí¬T4õÛ{¿ë@ÒZC62µlhn‰ ð62ÐWÒ0h¤tä¤ÄØÛ;ꪚ[Y;¹`«(Â]ðŠÚ^§§¯_YšsKQŒ>(²° ]]ß®«½ÍÓÃ-4úÜ¥|r®²¼Üݶ5•ÈDRFT¨““¾¢R|fñP/EAE£odlñQ¯G¿‘H¯^=˜WMMMà¯Fiƒx?_c#S¬‡Otd„ÆÑÎÞ. 0p°³²sÀ4S–YuÌUnnn?‹Å…»ø•˜˜¸q=úL@B Q²õè½q††Fº:º6ÎXW—È"‹3õ-¯¸~n6f¦úNÁ4æ8!Ø7:‰ÄáÍlÒÞ>Å%†èšÙ”•¹»¸xy{)\½këˆ  tsï¼<Ý0®®rr×]±XwŒ#>4z”½ºÆâR¥óCYšc|ëëÑ(«ðØäIÞÌÚÛɤD #5MýŠÊ*?/wWÌÍ+W ,®ß”WSׯò.6¯¾ôç_xù¥_üÅ/~ñ“G-Hó׿þÿŸyö/G><úÍ7ßèèè899…††’H$¸q4mãÀ„¼bõµ¨ª(§¤$A`žuõæÍ(bŒ¢ªaˆ¿çµ[ñq1€ÇÆGéMNNÚ–6—¦%:9{é)Ürö J‰ SÕ6fŒO.ÝÛ^mî¯tuuKJJÆ‹¾úê+øûäð à‘ÀgvŠÛÕÑE§ô••–æcãò J:Ú)!1‰és¢åz幬¬ x%~ðýཥùúÆú\rq $˜›™–›G.ÎHKŸ8yxû–”ޱ!·GGÇǘô´Ä˜ºúêà@Ws óœ¢J¾@´)¯¦'˜ÞžEU L5çëáî²F†D†FD765…ù»`œÀ6–Ö¤%Å{zzÙ; É¥•4s|ùÃv]E‘‡;ÖÙÙ12&ÎÃÙÉÈØÔÁÁ15“LcŒ> ½}qq±»»;:: ñþûïÿò—¿üÉ>ÐÏ~ö³?ÿùÏp>Ptõôô°XlTTÄæpª«0áO²Ü1Îé¤LgG/OOO¾­ƒâääBÊH‡Ìñöñ135ŽON „EÎÎò#¢Z;‡;êkÒÒ²M•ïhj™ ¬ÌcS³BѽƒÏ+KKK77·ðâk×®±Ùì'„WP1«««eí—–—gÁXѼt^"Ïòù"¡¨¯«5)1±¹µ[öló '!×ÎÒ°uÿ«%(ÿÜ©)HŸÇãr¸¼þÜw²³½­·o€:<\]Q–M"e••U  Ebö“BiíëïçMÏ®U½Ê«Å…… ö8_ XZ\¤ a††©#4&kT ޳˜CÔ¾`nvº½­µ³»g”N¯(/‡ceeeçä Óº:ÚêëGÇÙL:­§»»½­m„Îâp&7ú+¨’`¼÷»ßý =~õ«_=óçg^{íµã}ôÍÕ« òòò75Ô5,­¬]œMMŒŒÐh}=•[·nݸ!éÜÙ÷>øÏ™s“]¹xéÒ§Ÿ|òÆo¼ðâ‹@!Hm7(ûéOúì³Ï=zôæëÚZZž>>±Q‘À™¡Æü¼tpp€;9ÙÛÕÑÚÖ9<<8Bš/,,NŒ³ç"Áò2|\k Ý踌ºúæåž{ÖŸáq¶_uttdUUU­Ì{ˆy¶ª®®®´´”Ãál±ëÒøk pfö¾›‚¸D¡PÖ†;3Ããuw.ÏcqMggßÚÇ÷ævÑ¿]83ÝÕÑÑÔØ\Ss ‡;½¸Y÷€µíWgÁ­TTTÜ S@ƒ—_~xäîîž’’²ÍaóqOwsS3ì'S[^œ˜š9>±ù-Ë`0à¬à6%&&úùùYYYëΞ=ûî»ïŽÀ_í Æ„"úÅ_hiiyyyeee­5ckÑÕÇXÛä‘óêeYç1è‘ój÷é< {KKKnnîððð6“‚"*+Þk;|²ñƒÀOUUÕßÿþ÷ë ðáÒ¥K...EEEë}ïX²Î™‹»èjN§Ókkk“““½½½ŒŒ®\¹òúë¯?÷Üs?ÿùÏ*®üÛßþvâÄ MMM€<»ûúú¦yS›vÑß‹ööí¼=Dxõ$ó ˜ÓÓÓ“™™ÙÞÞ¾Q~PJÁŸH$ Óü÷{^ÕÔÔœ:u ŒÓºÛ÷Ê+¯ØÚڮ뭱oµÚÞ÷…J¥–••EFFÚÛÛCøyüøq37^àVú¯ÿú¯—^zéܹs€Áàà`ðx²¡ñ{ןa¯Û¯\^A©ƒøøSYY¹(XQ\\œ——Çf³·?Þù@ð "ܯ¾újÝ]ûÇ?þÁüt°JàŽw …2Ÿ ~L[[C¸Òí›±ßüæ7ï¼ó ö…ü u¼Ú*}„W¯¶šÿjrr’L&'%% =ØbÁÆñññ·•öù¥µïeíZ{ê@öˆW½½½/^\w¿ è«««; %pgóõI¥R¡ôúøøhiiýôS¶ª`;Á_m\îà œDëO¯d… ‘«ëvm*Ø`u¼’­‰,KD²Z·²ØÎT^^þÇ?þq5+Þyç …òhñ$H–Ek_o³?Ãîy!üÅ‹---CCC‹‹‹¡¶¾üòË7;}útCC漸:ôõ¨§§ã“Æ«'AauÄØ* ³®Æ!ÚIÿöG« .¬ë‹‚ð áÕ¨J†††«9ðôÓOWVV"„Ù'¼ÚSˆýô§?ýúë¯W»Ùl“W¢éÑ»¥¥¬ îý癄[^ÚHŸÞæãmb¤µy€5ýýålDslδt«Ibç§KS³‹kºKKkiŒŽ¶š¡ ÁüâÁãÕ#Od#¯d5ôööR~Hýýý[Í]^ell¬½½²gjiiill„¿µWssóùóçW/‡¼¼¼­6¾{÷î±U__¿×W±v±Ô{k>d€€4}ûöí>ú=ÛjçÖ××÷^-J…´á¾á9‘˜;TÑ3¬níKÌa*­³DG ]Ø<(š—ŒÁFŒ9‘diQ:ÇŸá0\ÞôêøÊiî8u„^žŠõH¯¢rE‚™‰žîîÖÄÂâ³¶ØÁ=¼y„3¿ aŒ vv÷rù¢oW&‹Ψ%”D„%4µ4G;fµ çïMŽÑz¨Ó¢ù%„Wß³ééiY½¦n­ÚÚÚÖÖÖµ3ɬ&"[úª uÏÔÕÕUTTÏÊíïç|îܹÕk?sæLww÷¶‡ÄKJJà@Ôƒ,¨˜P+áïÞž\åååk» ÿ(ó·“H¤m¶zÁ¹EDD P¨Myµ$™®+HóõñtÆ8ÇäVt4𩍑k«Jr“ü<}Ýlõ?ý該¥®‚âí‰Áxók¨#ýi¡öèü*ÊŒp™Ûƒw£‚p¾8œ©îËè‚þÁÎø0¼—¯Ö·¡g¨4Àþ•’WG©H÷ôòuwu‰ˆ#±gWV/\×¥cÞ}ë ‘\†®mhð3Omaö5áý°>žAñiÌiá"«•7ÑP©Vl6{]›ó:Á¯ £©©‰F£­{E(ë'_SS5]ºgæ‡Ãáls{(–.\X½pUUÕ_ ˆËå‚Å‚k‘dÁ³£¬¬ œðÞB(²X¬Õžx? ¯üýý·bÔsÏ='//¶víò­ü§§ÊÙÜÔ/4*–à©læALŽ3VÑJO Ö73÷ Œ q·:ù©rBR’¹¶ÆÝÇÍöºKrz²öÅ‹ƶ%mý‚å5¹ÄE8;S3‡˜¢‰Ö‹èü¾öRŒsTb¼ÅÕ³6Ù¥‘.Ÿ~y=µ¢¥ ÆÃÍ'”àëpëª|yߨòÒÐKÒ®²™”5Ôë¨'fúûZ¥Ô6aôåtí|oÅ3ç’j7]ßù‰â”1Ù —ŽŽŽu]@7TðWmmm›öo‡:¹·w-$²õq¶9êÔZge``°½ ñ‡Zobêñ¬—š i5$üQxenn¾ŽQ ááá[µÐnÅ«öœH+k×»}tál¯±‰»^oy}gÍÛN¾Ìj•¦šÞsýÊ7†Övî«s V¡ík i¥uÓÒ•g÷üNóvPRÉèÌ\Q¼µCrYgK¥»“½¯¿¿ÎÙ÷±Iy5St+•Usvõôv49óù‰Œ»tY+—˜Qüõ¥h&³OUN3:5χJÊÏ8õñªf¾¾®òŸðÉl㋞p^/_´ÍxØD…<omÇÙ¸éMæC~Ô¼ÚæøA8Ïëׯ¯^²……Å6¬ï¼}^¥§§Ceùq×ó‚»ü׿þUQQ‘@ ý`‚[ñª3?ÒЩº‡6ËlÖ1Àøéªh…¸ªÉ£\ªû“}9ªJ†îNò×äí=|"qîZÆ^ñɱ†JwJîvÜ¿þù /Ew"™53“‚B'•—Ĩ™š‡DFi^<"MîÌW3¶mjoó5¹mëæmûéç_dÞ¥Ë $f–|s)fŒÕ¯v]+&=Ïß×:±tñã昀¨Ø0 MxðWÒÅ'œWà‹à.d“„lG°}uu5“É\Ç«}5?ƒ––ÖêõÚØØlÿ¯¶Ï«ý°þàC |¯xCÎ&fön>>h+uû@R~¦½Ža)ÆÖÚÄÁÃÛ«sö¼fJz:m†ñö tq¶u‰+*ʶ×Ô-o鼿¾ó¢¨$ÊMOåíãyû«sÖÑE¥1>òÚ¦ø°Xcµo¾Òóh)K°à³ìÕ¯¡¼‚ðÞgÏœ!ä5¯Ä’÷DÌry•¸ññAÝ[&ñYEÁx»ÌzJ µ±©³_Hˆ¯¶µcÃðÄf¸z²xfŠ\}}ý6'Æ©€W¾OÆÅÅeõbõôô꯯V[ñji^ØVšè‡ É«ï£ÕÒFY5…aA¡1a!Q¹CLvw=9&<8À7$§¬É ÖÐÇ8«Õ`–ÕŸàádepŒÚK$…Ä$§%EÆ‘èŒáŒÄè´ÊöjrFhp0!!=:&²¢¥W,]N`~v$“Ü9'àd•võS)Íý³Ìž&؇óOȯâòÅKO|{»l~QàÕök(ä ø1Y»úvx5J§æçäç·¶QZÚ:©ŒM{ ÌK„wêcc²UŒ{»Ú{‡¨¢ï¯Áý`^-ÌKZ[)>~ß5ÀÊËË/=Ô:î’WKím­C#L‰ta?ðj^"æñ¦Ö¾%‹E¼©éÝLjz˜xµr "¡P ­L”½t¿ä¬|)‘JîÏž½´(†‹Ä‹+¿n,] ‘@$’Î/È~‘Š…¢å™c—¤RÉÒr83?{..ˆÉüÂâÂòˆ‘ÕÃ/}›æšÃß“ˆE˧´u)Þϼz´ýEe“É466644áŸF£q&y,ÆHGGÛÚÕ× œø+ …²vHøÖ¼Z,)Èvsu‹Ž‹'æ…E¤å–@ †j²î^KE|r^æun#ü’KH&LNó·Ã+Ù(!‰hVOO÷ç?¿?9̉'dD]ܪ;”› å`÷¼ZµxÿÌüоhÝA·ls[sžP°Wóg9Á‡¤îF^MÐzá1=5½2/ýÊüƽé™åž—nòªeí17fÔ!äÕÁÔ“Ó¿]¶>N]]@JÝƒš›•“›•†'&$³9\øuN ® \X8/ë¬þ vY­²ÁÎ'­ãÕ í‰AË+*†Ed{âð±ÉÙÍÕnN~!½C#kx5GÎ%õç§;ÚÛ^»öu`TòÆõè)­­Ý­Íäâ²I.¯»ýnmCSav¦£½‡O`n^îÿ÷íÔL¯¿þzqQA÷ÀpOk“»›ÆÃ«o€º°ÆKp'Xàë-,¬KªëÉä<w7;;û”¬":kü¡ÞNO°rssYì Ú@WYeueI¡Æ íèÖÖÙç†uŠOÏÏ-âLr;ÛZš[»iC}~({ÇÆ–vÉDLŒÒRãìP(\ƒ5ÞÞ\íâhïˆõî£2ÚZê]1ŽNXŸÞaúÂâÒŽy•—H8vüXnI1:ÌÌÌ,5·(2Ðëè'_TÖ6¥£,ÌÌB£&'Æ2’œí±¾>ÞææÖí݃d²Ÿ—§‰‰YuS›ôû3`#¼Bxõ˜yð³ÔÜܼ²¾óﯭ®æéåKiëª.+rǺ‡S3««ëªªªBÉ<Ôeø\ZZ €‚\b³Ù°{hhh@@‘H\Ç«¹YnÎG×ÈÌÓÇ7,‡õÅyùúûy{9;9Ù£ÑáÑDÞ·ËîˆùÜ _LbB¤‰¹‘««Ëù çpáļjmkëhª¶µA7SÚ¾aáGÇAýŽÆÿôŒì÷»ßÕ×7âbÒlP~þ8 3È8öäwËCä§ÇXÙ9x`ÝB#cÉdrlTØÙ/N¹ø„Q鬇âŸ;fgiUQÓêêìaalBˆJ²C;"ã\Иþ¡ô$bXt’—³£«»—3åäêMe|÷‚£»¹âö­[W¬¦º!2ÆÂÔÈçoflˆ !X™yøúÙÙ¡óŠ«fçD;æUE^ò… bcÂTµµ"ÂCœL.©„è{vv6???<<¢?ÙZ«‘‘‘/^<{ö¬‡‡ÇºùÄiiÉÞAaaaþ~X7o?S3Km-Cc3mMU{g·!æÄ·¼šôÁ ìlÌl1Þ”ö.'BB:‡·žW---lÕÑΆO´´°,(*MNˆ÷psùßßÿ¯ìê~ùË_êëêS©#¾~ÞÞ>r×äP(;õÛÆÖC4æjR%$âMù¦Ö9¥ãlN^j¬òí’Ú&°m.,H|]#£cm,ÌRIùéiÉþ~>×.]tÅâP¶ö„¨[K»Þ¾Db”§o ¼œœ‘‰¥•™¼²F[Oßj"”²9Ê®©¥5.g §£¬mÚLi/$%Ú£1z·TÔÕ]ܼ(]ýéüŽy5Ò^§¯oP]‘åòySs˸$RYI¶ºžíÐ@hŸ›«ã''¾Ì'çª+)vvw›j©'¤fÇF8»xÜVKË«¤÷(©köPGùzô™W(*11qtttæ°*ï­[·v³dêãUSSÓ²¿ ²·E{xxBC=Ý–-Phx!<mkacïÜÜºì ‹ .ƒ¿âr¹SSSýýý@°Œm\>“”BˆŠŒÄãÜݼq†F††.î>Áx|J:‰ÍYõW~n6f&zÎ!4&;"Ä/:‰ÄáÍlÒ~5ÅKˆÒÓÔ04C•äÛY[xôèêèV- ,Öxåí…urÁܼ©à‹Ã€×Jes¾{÷=ØÛ™”Ht@YX9¹W×TY™›Ó²§fçvÐ~Uš“bj¨GC·¢²Âmçíço¢«íç²Ì«Èh[K›¾þÄèpw€ç5 O! Fc}·†8¥šì„õ Ò²"5Ô”îè£ú‡èõ%9([—„ø„¸¨0MõPb çûnó¡xÅèn255éééHML„;«¦¥Ÿš``éVJÎÑÖ1Œˆˆ¼vãf9ÏTßprrmbL.¿[‘‘Œqñ2¾£[ÕÔ+áO¨¨iwx^yyyY[[ûùù999éèèlÿýþæ•l=ú††(Û¬‘䄤²ÒêÌäD[”µž®Ö÷˜\äŽqrtõeq–k1 êBmm-Ð㾉Z\{¶ÅzôÒ´tðW!aa¡~Þ.Î^vhg;GŒÆÙ1Œǽ?sš„Ïuw´ð÷sUUÓ úúÒYŸ¨Íy5=ÝÝR}â³½C*‹óŽ;¾zi}üyt$AKKÃÃÓõÌ©“nžê¸ [K“@BÜø^%F‡¹`½Cð~z¦f 7®žüò¢›»wiE=sŒý°¼âŽsñ ]3tks£Ž^`PˆÒõ«Æ¦öú†Æ„˜xõ;XoÏk—ÎÛ;újkc<|=0ö/60œ5ÁÝ1¯˜}-·äoátõÍHé)òŠ qÑròê8Oçëªz±QáÇŽˆ××Ò›àLZëêæ•4—¤& íÝu®ß0´pô÷p¸­¦?Æáèx°¯¯ÌUJJJÜáRIIÉ“0²¬ý vuu5yéù¹Qæ(7ÅåLô÷õµwtü?öÞºãZüþ¿8ÏiNb;ÏΗâ8~©~>¶ã¸Æ½D²šÕE‰j”(v±÷ÞI°‚ì½÷Þ{ï½w$€hDH}ܦÙĉ öÑr±;swvæ·÷ÎÎÞ©¬¨ììŠg‡·:_L&WUU!¯þ~pEÔÓÛ]]ßÔÜÒ\S]Y\UÝØÖYSQêhoãåãßÞÕô£áé@žŸ-.ÈJKг±²rtr©iì`sy›òŠC_LJLèèLIN–,àòᇟ$¤¤ ¤%ÆÂCãŠmêèo¬©ÖÚ:º´w÷“ÉP”%¶ Ç{½<œ Ó2r"ƒÁª´´°°LHÉ#LÍtíò{œe?;-±ª¡•±ÄÔÛØØzxxøDDÇ&töåfØ;Ø:;8•T5õvµcÝ\Ì,-«ZæçɈ2à6W*))jÜ¿ïá469U]Zhgeeñ«-Ï·³±´´±oéØ?ÈcQý=‹+ªü½\᪃c§‰x/¬gyY¹‹“­ƒ#ÆÓÕ9!5)-9ÅfdfG»ÛËJªM”ÔÔT´õôÊë[×* [¼ºråÊ­[·À{zpä*äÒ¥K‡“W»=“ÉXAÛCk5@èʪ,‹DðO(þ:X(ho®‹ŠŠíøÏ”­ÙÙYà9Ü÷µAe·™¦|- M›Ï à`ƒÉLŠñòòÆb±1±iÓS3"‘ˆÃaƒ2ð+œ°î}˜„W !”ÞÝÓó‹_ü¹¨÷ßq‘ ;…Bq :./A±t:Î`ÌNŽ'ÆD{{ˆÄž¾ê"U| —Ëf‰Ý@(º*•¶—ù \ñ%âQå¡hæÒ‹Í…|W|± &o5@+sµ &…’’ ^‰X¿@¬‡‘¹m{Ws‰Æ*ÔRpø|. !tºP¸‹y\›Ì]YYb2¹<þ“¼ݸýp$\,hÈ\bŠç´p¸pû¹.'„Çã™(«ç•4Î/Pøß_„åó ®¨¤¤$** ùsbb‚@ <8¢öƒ……ÅááÕþM¬mæ_¥üÙ¦ p¹œ%æ’dQòÉÉÉ¢¢¢ÎÎÎïMGÜÓüvèKKLÀ‰¸¿0Ù»¸vþ˜Jÿû¿ÿ‹\ÑË/¿üÐñF‘P–þa¶°UÍüvx0°YKeÆz KJɋԃÊÿç·ç&¥ŒÁsdý­9̼£ýôéÓVVVMMMž‰ŒŒLNN>ò¼ZePPPÚaVȺÀ‚ý³O^íV$¼‚¢?ùäÉZÃ===UÄcùLY.·¼¼ry¦£P´ÉsäPñª¦¦Zõ¹sç$&=éúððj¹mÅ+hlÙÙÙ;ìòÐ ZZZ€W`` ¿?{ðQòêæÍ›’¸‘ Ì~?¸SÛø±ò ¿@.OOOètèºÏ‡‡Wû4±¶âxU[[»“W L&œÇüüü¹¹¹Çõ½³™™™äZ<<<¶”W‡ŸW^^^'NœÐÑÑÙÏKü##Ð ÷Y€WûY×{]<2™\TTmojjê¡ù %%%A_XW«ÒÒR°Ö¤wk ‚ò’ QUU=ð"Ølv__`YÖ›qCCƒTy’‘‘ñXxÕØØ¸ŸKƒnLLLôQ SSÓCÈ«ý k›ø¢,«££#88ØÍÍ ‡Ãm33ÍßßßÝݪ ´1¾(‘HLMMÅb±Rš§®® r¯¾úªŸŸßáããcoo©ô®âÜ)°B}}}¥WÔÔÿðð°4â‹n³âê>ç‹‚:99…ùÇ?þÝV&xµól·‰ßÎçó‘O•¡“ZZZm&°ßÚÚZ)Wà ® žŒ¥àTBÕm“É~äöíÛ’ä_xáp¼PÞÆÆRØ6’Y1YxìJ/gg眜°É%ëum[¼ÒÖÖnii92k×¾ù曕••‡“W»BÖÚŸ¶á2‰ šgn-`ŠpšÖEƒAÖÇ™˜˜xh&{0~þóÿLµ‚‘)ÉÊÊ‚n˜ ™2+«>¾ôŠ(++Ç™J¥Jf¡ìWëšñºs¥Á+]]Ý®®®#3~uíÚ5°-¯l±”äNšÁVëÂ#rii šÁôô4ßtý&Ø¿’Éd‡³q¢²œ=pª€v°KGA×,"ÿÜsÏ•——o¥ä>²åÁf€¿*²»¤×öK³í¿¢fffV{[pSóiWïQ^ɯv‚¬mìêM×wFbX!ÓзdZË6;cBq˜,Áš»ííí’51Ÿy晦¦¦ƒÍã5J/“]yúCë[;áÕn{Äãâiq¬»g‘ÎD®p™Oïí™§²vŒ•6;1J"³ùß_óNÄ&Ý* !«§¦¶µc´¥¹›HšÇ’è܇ÎÈ3ãÌ™3‡ŸW¶^°ûÁÃÖò–¡õèV¿úÕ¯$°B‘?̲)¯¶²ó÷ó~Pj¼Záñ¸ÜÕXÇ4|g€µmËà(XÅãsç{¬|«»ñ¼•â¯Ê¸üÕxÈ+@l‘€/ŠV¾sUp|Oelhaë4·²,„·ú1}¨79½œ°È^^ F ûEß=úWø”^ó;Æ1)ÕÑa‰­]]©±>å <áŠPÀãðx[+..îwÞ‘ ^=”K²Î«úúúgŸ}Ñù—¿üeCCÊÙâÕÁ~§/]^- 'û[£#Bü‚jº'z+ î–µ´ õ4%†G‡ûØø·bNCïÄhwFTx@@L]ו:ß\^”V×Ú»ÄûÅúlE^ZTLœ«Å]‹è¢QâL]Q.Ÿ19K®÷øø³ ±åí„᎘È0ß’ºŽ%d…‚~{ž÷¯ ˨ˆ onkÁyš¦·ÏPfFsSâýB‹š:™ß_Ë;;»Ï?ÿüð_í‡Zy…ÌjÀãñýýý}[Hÿª„­¦¾ K<÷„8;;KÞ¬’““Ýz{{û¤&Û\¾l \Hww·´‹X»¸3ÒŠäååô£­ãÕÏ¿’¯Sý¡nŽNg{CLHaaº¡’Z^Aª›‹ƒ½­›£Ùý/?QHË)òsvuƸ8ع†WV”XÜQÐRÓÉ­ébˆy%hO³2µt÷öÖ¸{Æ<²px ÉËÉÕ/8ØüÎm\vU!ÎúÝNDå×W¦;¹ùb-ôîwÈ«‹6ó3=>zçvnU­¥¾CNIÎË2³¹/ÞÛÚÚ ëó0P×­è'òEëÍ,OOÏóçÏf^=t€}·¼B¢4´µµÕÖÖB#ØZ€‘…¼÷­ººz`}áîÝ»mŸþù¬¬,ä'È?77Tš@æùùùR-âÀ*55z¥T‹(++[;mxzzú…^xê©§s¼¾­x5X’`jd[×94Ol×ÕqÁùjÝUò6U2w«êÆw*Þ4õñºqEÎÐÆÁÛÕüäƒàÐpÕ‹rQ…sK«M"Z¨–6<{Œ8“llŸT¶™?®}êCE·¤îœpÅûVícÄšÔ¬W@«Åé/¿Îî ë¥.M–Þ:BÀ)]U‹ÍÈ÷÷¶N+)8÷Õ¿”MœƒÜ/¾ó6£ƒ¹Ùú·v¼}'îWðˆmmmŸŸn+`jjª¥¥Òuc­ˆqÕØØ-Y¸¡ÑhÇ—¨úÚk¯ŒŒH~E¢¿... ¥& ™J¥ eYx<^UUÕÒÒ’ôŠàóù¥¥¥ðŒ FÚ™L¾xñâ!/º¯:²ÂL¬Ý{lj+Kczn>¾þZŠ8å{N¸üœp®I[ÝÔÏÉöÆå›ÎØ`_wmCÏä¤Ý;ʕ߮ï,˜wQVÍm s—ë’1˜ôêú¬DC3‹€Ð`ͳßõL(ŠÑ4qê‹v2±r÷õw±vž4®zM=6£ÐßÇ&5/õË>7v†…ꨨÄV ­Ày%™ß¶“@ x¨`Duvvöôô¬ûØP$wPYY988¸Ÿk422’è †®$„©äm¨º“õ÷,€Äî]Æë;„ò¾„ÖòͪÄÅÅív>Ã!ä±³ÜZ×È; <>À]Í›œš`xO51 «gläl}æ¤rtd¤µ¾ž‹wP8ÖËÉ%®´(ÃXánY[10EKižæFf.Q±º·/™F¹]¸§Ÿd¬pö¼ŽG{Q’Âm¥ðŒ|³ëçM°ÁAÞ'¿ú*²¸û?ë;OWܺ1OU¾¢“Và‡5O­ª³V¹gì‚‹‹ 4°r¨|Ø0544tÈç3l“áýÁ7Þxc-¯fggëëëÁÄÚIé`G¿vÔºuÀW¡¤¤dŸß; JZYYmœ8±óõè÷,è÷ÎÛØTp‹‘ODÁÄ €Ç“$¬LóJÄ¡–ÅFaì,Íl#sêFG{3#¢†*Ò£0NöN¶–6¡£µ9qÎN6&öቕ#=™áQøéoó+³M!Î+=]ƒ¸²Îñ®zW;'o¬—›­{øÈP·Ÿ‡sh^mf„Ÿ£ƒ“›oMVu'‡/,††×2󑸸Æöžò¢ÔÂB_U®£­•[X aqýl ¨ÿÄÄÄ#Ï+%%% gÆÇÇÀ:Ú¡Àºšš"‘¸Ö%<¨ø Ðø###›››7ýåÕcä4°¦LLLÀ ³ëM<Øz>ƒˆË¡QÈ *W ZYñ¹\ѲxΕJ¡ÒÌ%Žpyþ¤S)8†ÿŸc„kFVDB!Si ._0h‹ d*›Ãf0˜p${‰ÁäˆWl^$“iŒ%‹Éá~»ÊüŠÃ¬wå‰ÃÒòyBx^¯i‹‹ó O¸²™3ÒÔÔô$ð 1`«šØK;I1==]WWÔz\ñdP^=2^û/ ÑÙÓÓC&“×Þñ#Æ+™°¯ GÈ.¯vxß¿þúkSSScccðì Iwtt¯vùùyxÔ‚S°v¼k^QHM u5µµ££##c3¤ùM'¿‰øü¡ÞÊâêL¼„É1<‘Äû~Ôâíy%ñ¡ò"M´@Ç«•ñÑÑ™¹Ptx–†!G!Ç߯ñwss;}útBB¦ ¼:$räyµ.~{KK ²Ø ËYX˜§3–)sc`oš‡¡³³smûßšW+e9ö6¶þAÁÙY)ÞÁÉ9¥§‘ˆ=A#3)ºopD°}71:4!£€¼a}çmxÅç0½¼<«»¸|Ñaà•ŸwF^%}‰sxE™ñ÷ÅÑ×\רH·O`4Üîuþ8²ŒTu||=¯¯« ëæä69Mú®ýó9M 53³³µv67®ËŤnäpr »½º¦~‘Fèiîèª-+¶µ´ðòŸ¸¦eäÖÖ5Ñ錶–Æáq~¤ßcçæ›œžY;€¿D§D†ø›ÕµtVVyz¸9;;gVMÏÌíŠWô…™Ò’²y2…„©mlnk¬Ã8ØÚ9¹ŒL¸»»Æ$e––T-RiC}=]½Ãó³ÓÁ~–ö޽#kƒ¢Sæˆù¹™VfþÁ1só‹cým6–Nžþ“3scƒÝŽv6θñéÙ•}ðª 1ìƒ}X\Ó–¥­­SPQìõ¯O¾¬oí*ÈLÒÓÖ OðÂz|ðþ{ÖÆXßàÈœ±±T`sm]ˆŸ·žQgßðZe—WzzzG€W“““ÝÝݰ!///+ßãìŸW0–õèI„ñ¨Ð -5w¯¡‘úÊ"s3wo¿ÄÔÌÚº†ššÚš†&Wˆ«_ñ²P,üÙÛÛ™––¶ŽWK4²—‡«’º¶½ÆÏ׃õõôössr022ÔÓ7À…DÓ¾]/•»DÁb,âbCUÕMÍ >ýìSlH …¶~>CWwwWc•¡¾I[GwˆŸ»/NOKËÏÏGIQ5"6ÕÆÁ9"8ÀÍÍ}r’àååŸf®¯ãàŒQQRð Šš§|÷N3;)ÜÐÜÒÆÒÂÙÓ/=#-Ðßë“÷Þ3¶óœîÙÍ|&™h¨£]^Ó”sÃúêhzyûh©©áBb­líÂ"clL­†‡G“â"pa .Væ–¶†Úšf¶˜ ÂÚõR+ÎþÆÔÌüê•ë!¡QšêÊÎÎJŠ·=üõuÔ0žšššIEt&{ϼ*ËŽûúĉÐP¿[Š÷ý}Ô5|Üœ¿ù„D"=!¼Bkû x57=na¨õê«o:x ôuá¼­ wÙÙèèúzcýýq%Âeqw¸@__ßÔÔTØ(,,Äb±ï¿ÿþ[o½eccìúžS´"ÈÌÍô ‰ˆŒˆÄùº»`}õ ´´µmì1ÆÚ–ö#„9 ¯|\,,Í l]}‡Çñ¾î‘I™×wîèèX˜²·6OHH012-©¬)-)޹tæ¢_@¤•Sx0Î}u=z_/Ï«×äÝ=¼, ïkYŽN~ð¹09ìêÕ«ÎnØÆÖ.櫾,WQE«¦µ‹¶ËõWVDÞ.ö‘1ñæ&†éy%å‰ñ1 W¯bÜü-,­Ã£Ä¼MŽòôÁÉË]µ¶wñp¶¹vû^Gß Ä^ê¬+±°uìN‹ÑTS¹{ߨw`´®8ÛÚÆþÞ͋ʚáщcx¢P¸¼g^Û Œê+óNœü·ƒ³[Ye}]MÁÙ ·=Ü=²3“ƒq>_?YPœ¯¦t?=m©£SÒP™‘äè„ÕSP.¬î`§ï*«LÌÈúzôÈ‹ƒjÙ—Ë—/‡††ÂÆW^8b¼âóù$ühDpˆ‹«gXH°«ƒ…®žž`xx¨­¥±¹C{—xâ ôåšš8 Î寮:55U^^^\\\PP°q=úÌìtßàpÖ*¯|´utÕÕTôŒL]0.©™y ßz|b^¹Zèk9z†MÍ,Ä„D§fo±=-!<@[CUÇТ¢´P_ë¾™¥åí«7‚CcWab^¹‹yåíîèì$wå’¹…ÆÉ!&9ƒ¼øÝhÌÂ,1-)VùÎuucë–Ö&=-µ¸Ôú{ãWyIFºÚw•5këj-ô MÌTnyyYX­òÊÌjlx$%.ÒÍÃëÊ¥‹ú†¦Œ‹o@Øôìw &¯œ=°ãø©ÂÔh¥{·”õmF&¦[* ­¬1EùùÁ~îç¿9í‘°Î;Þ¯¦Zõôt'ñE9ºšÊg®\ç½wÞyÿ³Ä¸H¹+ל1ç._-,Î7Ò6 PmôõK+;ª2“œ<îéÔuŽ X‹Jª÷{ÇfD²Ï+‘H„|¬!Ó–ì\&[þ 4ìææfhuÄɑĸ„²Òªä˜hcCCs 3S3ÿ€¢Â'pœì\¦æ¨ÈøUUUUCCƒdò9ö ¨µÙzô‚´ŒO\phXˆÖÙÁkfamim•@¦³$¼rw0qw³QQÓÎÌ̸wCÎ;$†LÝ|¼½§¹òó?°Äø•ågéêdgeÝ•¿éâ†32µ  ÖÔÕŽ‹ ¿rþœ“+VIY55+7ÈÇ#8<~vaQ’U|dHPX\~V²Ž±©â›g.݈ŽOî™[ ï–WóS#çO}©ªkÖÞT¯§«›™k ¡feãªoh§¡z/2.FåöuOÕ{J!ÑIÉqáÎnÞâwOü¦ò[·SÓu45œœ¯Ë+¤gæ;ÛZZÙ;ik•”{ºØ8ûOÏ’÷Ã+¥{Šînކ&¶mM7oÞprÃÜVÖõ÷t¼§g]]YtìøñÄÔD] 2Å\S³°¼­<-ÁÖÖýþµknqÁ7î¨ç)GÀDEvy}v]]K<Å›Ócº½½­¦¶:1>¡´¢–8=”‘LjIN&“+++›ššØlöÃß®ˆš² JKËÊòr3’³sÀƒËÎHQWV24³¬mn…¢Uá±èéÉQííA~X%EE%UµÜ’*&‹»)¯–ç|}¼ª›:( ³XUM-MŒ‹—o@P{{W »²²²š†NquKAVš¦†Ú=5š–N6—'úVFzÛL µäååƒÂ"œm¬nÞ¸qý†7.zl|ºk—ßã, ¹aA¾9…T*=,ÀWIIYKKÓÂãîá ˜¢¢ª¤¬¨’œY\_Sn¬«sãÖí¬’r“%Q¦·¹âÖu¹K—.êÛô d&Å©)+©h´uöä¤Ä¨«*)(«–7´qù‚=ój|°çã½ÿîûïê¨Þº)oçæ=::`l`”ž õ£¤ª¢¥}_Õ7äÊd.Å…†wöŒu7Ô¦¦f+ª\ºpí²Ü•Ôür.ò åÕc䘔+°—í¿•eñÌÞÕp£`87ÕUâü[;ÿ³P×ÜÜ\EEE[[òâû!¼úÖü, W³o,Öànl ?:4㌕Bæ¦IP.ø˜¬%›Í×/ÿÝ|†•±+ –ðÊ ô‹ÃZãÁÎåÕ8l6ì£P(~A¹ÍŽE†c0ð}\ܼ»º‡â¥àp0Ëe¯ /ØÛ|Ä/F6@y¢Ÿ/- â pñP§Süh .¦Åƺb\@Œ+ÖÇÅÅÈÒ®§Î[^YS˜ &TØpðÁÿ…3veöoäUT”ømÈ‹K¥Ò@?ñTj.î * æpx«ˆ\Åò24¸cB3åûù%cÝD2”WQZZZž@^AGK ø³uXa--Ñè É»làRQQQggçÚî°·ùí<w‘B™››R©Â‡M­ÜÕüvè‰p°Äòù‹2RÖüüàdÓ¸ÎÒžßµ$þ”I$¢ÑW•™_X ÷¶5$¦fæ¬CÊËË322 wï3«¸€Ðî~üÆ%éQ^=FqssËÍÍ}yÏ}°” Â6ïÀÖþ588uÕ××'ùÐõÁ>¾Ç‘˜t;9xW¼’““ƒ‹ýñ|êÔ©ÀÀÀééé;(Kz¼Â_¼xñ¿þë¿(ô’kGLPP°ÃJ؉À£äÓO?500€›²Ï¬ø<$öï”W‡GÔÕÕ×½ˆx…<ˆ¡Éeeev4V³¼ |ËÎÎ_[ò~?øÜsÏ­»o½õ–µµukkë6d¯ Ä³gÏ®ÕÄßß_õÊ#Sqà1”˜˜xT×£Gy•œœ,Ü0Zò$ð œ&à 𪾾~'ñ¯Àç.pvvöï\UUõúë¯oú­÷o~ó%%% îÚWÒàUccãÉ“'× ötêTõ®åççwæÌ±ùHâ_¡¼:2"C¼{‰L&ççç²AÍ̪”””òòr¶ÖJAxUZZŠG’’@3˜ÉdîüÐ :òñãÇŸ~úé¼Eà X;“““Èñ@0èƒëâîA ŠŽ;¶¶¬üàW®\ééé‘FÍ{ÁçE"½ ÒÐÐ U^dff¢¼Byõ(y…¼"‡Z{@@<1·Y×8-- ºvxx88ë,°µˆD"‘µ*ÒXSPéããžÎŠHHH066þâ‹/~ñ‹_ljtýþ÷¿?þ<8Œ^^^III{» ¨ƒuwlªO>ùÄ××÷`k#88XMM ÙNMM]§†‹‹ T—TW©FâõIlE”WF ·‚7ôdòêÁêËkPPP€Á`ttt444Ô·===, –‰DZç>¯( ¸ŠnnnºººÛd²g<µµµõõõAÉû÷ïï9èã.\xë­·žþùMÁõ£ýè¯ýëW_}uçÎg æG}´†@*ÈJ^^þÀkÊzå•WN:µé¯P?PWû©¥ír677ONNžšš’  ¼z4boo_RRòÄò \Bƒ122RYY ã”-žààtÔÖÖ‚KÆÕº!kÈ„ÅbA¶UUUˆ!$ I]0*C°€3ÿüç?7õ6þóŸåää€äÐ7·Éä›o¾ùéOºö\ÈœPpE¶À|E6,,,ÀbÜê°¤oEz7pÝÝÝð’Dð@yõh£»~¨lñ šKàÎÎÎNLLÀO£› 쟜œœ››Ûtî"’ NŸ™™ JGÆWelU6çÞÞÞÐÐÐ7nüö·¿ÝÔèc ¼EpÁ—œâĉüàk|öÙg555›ššVÃüüü{÷î…„„ìäà‘oEJ7êÇ/..®Ó‚òêÑHQQÑN}‘9^I $d‘&ÞêšÜ› _þgŸ}7ý`ŸzV§˜"=Ñh´ý†/my4¼òññAyu°¦;Ê«£$`7B7ùë_ÿº¯žzê)°ÇÚÚÚ„ZA[[ûæÍ›‡S˜WóóóOlS,))©­­=Ø<³²²^yå”WG@(Š››ÛƧÏ3Ï<ó³ŸýlSv½øâ‹·nÝŠ_»šÌn%,,¬´´ôÀ ¶#À+“í¾;êb``°Õjw{¾kÁÁÁøÃP^É´444v~ô£­{cxòäIpýVÛ/C˱µµ}ÿý÷·éz÷Ýw­¬¬êëëwb&µ··‡„„Èn=^?~ŒX2;VÎ;·vVðþ…Åb©¨¨lœÛƒòJ&dii)((èÍ7ßÜø~m[Õ˜a ·oßÞj¤ëÙgŸ½rå XMÈ÷2EWWðˆ¬ €òj^ýò—¿„´ÍÂ=GXAggçÁæ Ó×^{í©§žBy%[¬PWWÿùϾîƽ÷Þ{QQQ;ü¶ú,<ý¡†?þøãþð‡›² š‡¾¾~II ä)ù²¼¼\¶¼¿ÇÅ+/¿ü©=´ÑîSFFF6ýâåÕáhöÑÑÑÿú׿ÖݯŸþô§JJJà£í9g`QZZdòÒK/m5Jåz{{ š|d¼zæ™g._¾ÜÚÚz€1 ž@ö©§§÷»ßýnÓÑ ”W‡MÁ Ûvæÿþïÿ|}}vÕûþþ~OOÏãÇÿøÇ?Þ´¾üòË***ééé[î‘äÜ5ð¾‘užœ¶Ÿèº ''§?ÿùϛ åÕ¡HJJúüóÏ×Ý §Ÿ~Z^^¾ººZzEs8œÂÂB0ºþö·¿m35ÂÞÞ¾©©é{‹Õ¢¼ú¾@A.\HLL|rƲ®^½J$÷ŸOcc£––Àj«! ”W‡A&''ÍÌÌ^|ñÅu·æOú“«««Tg!ÎÎÎBÑ×®][»ÇC§Û*dÄóÏ?/''·Í(ý‘çÕöÈ‚z{ã7ÀN‡úÈû† ãôéÓûÌØžðïÿû׿þõV–Õc‡ÕÎ+°RòòòN:µîÁÃåâÅ‹%%%` ÛÍÍ-##c«·ðÐ×jkk---ß}÷Ý­Zx©à½lŒ1øÄò ™4ò‡?üáòå˱±±$I¶,Ò] XæûYÇ™ËåVVV‚Yõúë¯oúu?Ê«Ç.óóóÎÎÎ/¿üòºÛñÒK/õÏU¼*SSSYYYÈöÎç Q(ðqîÞ½û»ßýn«p7_}õ°««ëP½R”¯Š,ÄО߼y344¬Ö'vvÖ¦²´´Ïk}}ý>øà…^ØÆ¬:$°ZwÓ¡©ùÂuuuòòòëž#p§Nž<™ýÚ3pòܹsûɤ··wûQz°ê¡“‚i177wªýöíÛÐ#=¯ùÉO~¥¿óÎ;vvvmmmà@asë¡Âãñ ›GEE8qÐ'êÈ ¯À{ÕÑѱ9 ªæÐ(NÓÿøÇu·nÖ¥K—Às—¶‚ámll\ZZzPÙBV....\ØøÝ„Dàªá]]]ËËËwž3€ÝÏÏ:øþƒ­­í›o¾ ÐF³ÿ;–ÿþïÿ~î¹çþú׿޻wH>88(‰Ø,Ó¢¬¬ ¶÷NŽÇ¡¨¨^€'ÚV»Ã «]ÝqTPÙ¿<Þ ¶4<¤ ·~ôÑG·nÝÂb±²;Åìç‹/>tü!>>þþýû`PÁà  ½qÖº¬À å*²Î«½µá§Ÿ~ú™gžyñÅßxã ð¬‘`£££2¢G"`·ƒ½´n'‹Å"‰­­­ÁÁÁrrr|ðÁïÿû_üâWva…ò Y‡Õ>›1àÕñÛßþöÕW_£ËÓÓ3==½¡¡@ òy§¢U………îîî‚‚‚°°0}}ýwÞyçøÃ /¼LÞ­5u˜a…ò •£Á«iÌà-B‡nìúûßÿ~ìØ±7nhjjº¸¸¤¥¥õôôÐéôÃðî•ÇãMNN–––âp8CCCEEÅsçÎýãÿx饗ÀÕ}öÙg÷èCK*”Z¨RxKvÝõ³Ÿý ºÿóÏ?ÿÊ+¯¼ýöÛ~ø!@ìæÍ›àmvttŒŒŒ€%633FÍfs¹\¡P¸[²¥„Ä©f2™ evvvjjjbb¢¯¯¯¦¦&..ÎÕÕUMMíÔ©SŸ|ò xy@ÔÿùŸÿùå/‰D]{è„„#+Ù•ÃPíkË’¹{}$[²4x 4øïUyúé§@0°d^Z•—_~ù/ùË»ï¾{òäI0uttt,--±X,0-222666>>>11155<ÍŒŒ ØHNN†=@¡èèhpâ|}}ÝÝÝmmmÁ^RWW¿páÂÇüÚk¯ýñDŠøÍo~túùÏþ“ŸüÑDÖŸ,(©ãÓüÈW©ÌµêGi="4{ L°Çž{î¹_ýêWàWÓþ¿UùÍgS²ü ‡½øâ‹p<`N(!Ã4™PRÂvø¸4y¢žèXꪣ"C¤z¢îò‘iü(—PR=™¤zbïõ‘é (£P9òÞß“fY¡FŠ)TPïe .S(©¤ª zSž(‡QF †¶À'Ö¦B+Ôè:äC›Ùál¨A…](ÁІ„’ åÊ.TP‘-P¦?¨AÆ'³êÐzxÍ*´G FÊ+TdÅD{jt¡°Bå0à õþP£ å*ûi‡¨A… Ê.TP³ }<¡àB2«ÐÖ‹²ë(]/zë<¬Ð»Œ‚KÖ›ÚŒWsz4…®Û@e—ì² }ìUX¡w•èH*²à¢”]¨rXIòG›*G \(H¬Ð»‰Š´ÙuôDï×#k èÓÔèB›·¬Ü}©>qÐ[‰ÊQÚ¶ ¬Ð[‰ÊÑöÑF.Ó°B£òä€ }(Ë.¬Ð{‡ÊÅ.´ÁX¡·•#.tNÎc¹}¨÷‡ ®ÝvеsÑŠ•X¡Ö*O¸P'Bv=AôÆ¡ò„°kˆ¶y™öQAõQ9̰B•'ÜâB…*¨ æZùh £‚Ê®: jq¡°B™ã .”W¨ rغɺý{‹h­¢°B)u“ý÷/”ZÈ+´6PAå`y…‚ 5®PAåq9ƒÞéPpãêÿI_ЛˆÊ0ж}Œ«¿ÿýïׯ_¿ÿ¾’’ÒƒUUÕ³gϪ©©JGlmm w~¼»»û®Žß›JÛüšû­”••%$$@ÝÐЀ¤þþþb±XøÉÛÛ{Ó 2á*ö£aeeeʪ ëÒˆˆH‘Ãbbb´¹¹ym Gî¹tÏ?ÿj\íM.]º”••U'©¯¯÷òòòõõ…v/ rvvŽ‹‹Ûáñ †””ÎÀÅ‚>‰›IlllUUTKyyymmmiiiSSSAAAKKKNNNGG܈¶¶¶´´4ø))) r[—ì±··‡½iºP:hw€ :”””@¹ Iggg^^^ww7µ¯¯/;;»··¶‘ö@:44”ŸŸ¿g@ªÅ…ÂJÚΠ¼¼üÂÂÂÊÊŠ”®ºÆèè¨P(”Fæ‹‹‹===ËËË;?º§H$’Þ]›Ýse"Âçó·9 0'»­®ÎÈÈè¬SRëÑWó… ¦¦¦vÕåw%ÅÅÅàA°X,idN"‘À0Ø9 ³?¥O8Azù kjj †ì¶ê¥¥%99¹£Ñ©Qp=Jã )åܹsRåUQQ8 ÐJQ^¯ª««ešW ü7ß|s”ú2J­jÎd~öìÙGÀ+&“)m^íÄ {(¯öéï„Wû)âðJz#ˆÐéôÓ§OÉ^üÄRëQ.+¿C^mlÆ;lØëxÅf³…¢åµ¹°Ù¬=÷ ¯<îüÜüCóÙžW\sn~_CyåÕ²?=3#ÚkÒæ•H( ’æDÒDÖæÕK­ÃÆ+.‡5C$RitŸ…ºHåpØs33äEªða¾ØZ^-‹ñq1=#x.— ùp¸Ü%úBdX‰²Èçñ`›Ã]^Yáñx¬%& ÐÆf1˜K ›€Ïo3ßcÝ^‘Fzœm]¸.‡Í-/Ãét6¸\Î’XX‚U† ¼âq¹|ÁêŸ<œËa³ Ážþ†R{G8Z$-–‘am›½±\q°ÙÈYB®ÎâòøåB4±v 3àl6Ìãr 8QW¸ªÔ .m^-‹„<žxT”‡+€ 58\už ib=Oe"Õ…ÔŸ'þtDy…Rë1:ƒ;ä4í¬¤c#C'·†š*';[\`hfRœ™‰±™…åÀ(^´-ëÖò ºÃ7'{'Ô”c=<S3+ ¿üì_¹åÕu%^XÏÈèdi®¸¨ $Èåõ›œn­¯‹ wõÀ¶v÷ „¢¼"ô·i›&Ç33rÆF†C‚p.Þ}#øêŠ’ À //¯–Î!ÐxÕÐP?ÔÝ^YÓ]²¢´hpt<-!ÆÕÅ¥¤º©­"[ÏÈ ¹¹iObQçËÊ*tjJR¼»§GC{ïZd ¸ìÌ„8Œse}Ë`W{Xhˆ·76¯¨\ ¯¶O£.Ôt G'ði©©øé™’ÜT'G‡Üâ²öÆúªúV V^NÖÔy+ç x57=‘WT ”lo¨íèî//ÈrsuMJË›˜”WÖinjêè ¸Å%e”EFeQ–‡‡{^q åJ­Çe\íWı>…Û …E%>Xl¨¿×… r²²î*ÜÎÊ-ÆaÝ Ê›¸<ÁyE_˜¹vå²WpÌM9y€©¹YJRâÙoŽå—Y…_<{19½àò¥óŽ.îg¾þJUÛXCñ–xœ‰¢Â}S7'›{F¤êF^‡:µ•ÔuÔ5ܱQ ¡>×5\ìmýCêª+<1¯þùï™…u` ¯š[ZZÊsn)jÍ&îÜTÈLOÓ×7 ñÃ^¼~·(3ÁÜÊ‹Å$—4ZÕ5´"BnÜUòqÇœ“S .Ð$íi6='u^á/]º6†ŸÖWSŒOÉ0ÐÓ =sòlaI…‚–I\ÖË'š½D¹§|?#5U¿¿ß¹3gš{F–—WP^ µPãêÀyÕÖX¥¢cFš] NO¤ÅZ;8Œ v¨¨ëI³sÄ)qV$Ú©}þ‡™±Qim§£•²ªº£ :»¾¶òàØPÎßÉÑîߟ|•¢®­O\XÄØš”4t•dDaÂ,´tÊjº™T¢ªºÆà䬤ÓHx5?ÞûÉ?ßø¿7Þën¯)¸}뺱‰YvHtg #;Ï`Ϊû#öëêÙ ŠÊ=¥o/=#»Á¾NgGKSýŸ•+L3³2Çb]ÒËZ¦Ú´µ´ÍtÔä”ÝÝ\Nº449+ÁÈ,aDEQA[G/8,葦¤¦O¢Ð€'ÛóŠIŸ;õõ§ÿû§¿W6ö¥…{?}ÑÝÃ]îÊåìü| 5UoO7#+gîÖfÌ_­ÍõÔqAJ*Úc£Ã^nö6ŸøifnÑmM“„P¬,k‰¬ª®ïlgyüÌ%OÏ+—/Ô4 EË(¯\¨qu€¼šíWQÑ())uuv ñó´r°'NkÞ¿Ÿ›_ꉱ/¨Ø…}õ`…od —ž[š’šRQ^|[îJH@˜ŽÆÝ¼¬¤kWoæççß½*ž mb:3Oq²1)­ë(L‹ò Ž0WUNÈ몯PUÓ™$’W6±¯ÚµU5­­0¥%ùÅþ·UµC<Ï]–ïg°8kÇÛC±Žï¾ûQza]\0öž†iaNêy¹9ÉQæV–Þž˜€˜Ìм”;*ª+3#kLYI¡+Ækañ»Wœ„¡žÔ´´Ì´„³§Î§'';v¬°¢a‘JGƯ¶ñiäiåûZ¾XWU]Ó„0Ýêš*w'—qâ,ÎÙúŸo¿“Q\»ÍàŽ·—g'|üÁ»îA±­eÙr×JËŠ¯ž;Ÿš™¯ iœácá€ìn¾"wÛÏÓýŽšneU…§›ÇÀØÔò j_¡È:Ô¼ZYæ¤Ä[š™yú·6T§gg²ÙìŠÂ+KK{'÷IâÜömøûöÕ²ƒõ ´47261ÑÐÔ©kh²6Ñ‹ŠÖÕÔ477»võª 6ãé½@¥…ú6v 6–å$fd[¨«^ºpãîíëA‘IKlÎFpvbÀß;xŽ8©§«ŒÃ©¨¨éëé`ýÕn߸,'¯®¦‘UP-Š$¼l«½v]‘´Èh®ÈWRV136”“¿ìˆ«.É»}Sáî]#kÛΖF-u m-uW_ÀÑÒ·‚îRQU166¶°Æ8Û˜þûôi5U¿Ðh_°½}Å ÎyúáÈd2T@~q™™‘‘žžŽ¾™ÅY_˜úáG_f)ÛÔæòŠN&Ü’¿ÒØ=<=Ú£¦¬jnavñÂE\P¤¹‹OgkíÛ·î«+Þº£ÙÓÛoª¯k ¯£e`Nœ§íÿÅáΫ#F­G¬üNç3¬,3™«ïÈVV$Ä<|bäúù KLèøö÷ÏÌ‘EËËtê"ÉZ$/Là 4•L^¤3ÀÀ¥Õüy<.‡ÃqÖ7NJÈXgºHx% ŒÕ!2•ÇåN&‡†ùd7==Çãéô¥µöÕ²Høm¯_ƒgfæhT •F]Õs<ßÙ…ƪΔ…Ù‘±q¾PPSY+þF0:&¶gxŒÞ°“'ò¹ìE*U(Lãã㌥ï¿F"NŽŽltäÎ-P¶úßÛlgá̤ÓI3³´‚sáT•"Îye ]×ëójeYÄ`0àÙ ð—X,—3K"-)Ë+Bk;»ö<›%®.6›ÅŠ„|¸ 3”E*Ê«£¬Ç¨ÏŽxµ²Œ***¬ol™™iknniëÀ”UTÕPèŒíG—×ò*5÷ù‰ó9yù®ÖVVÙ%ŽFjWn+675øzzXYš‡Æ¤u¶Ô;º¸ØXYYYÛÚÛÙÛ:¹õ÷ øºz¸`œ¬mlZ»¾¯O«â„PWW\VrrzFqAVй•¥ƒKïàPb|¬£µÆ}Ýá 8e³ssíé Y…5L9  µ­ÙÅÙÙÒÂ<>3?/)ÔÑÍ55%adšL舋Oìïîtrr´¶¶LÌ,\û±$…„w±³µ²´LË.êl®õóöÒPSLÌàoñ½óDOƒ±¶YyqQxxü@oŸ»»›µµUX\rFJ\ni-“2ïï›§ÐWd„W<öRzjÚØ È„P¬µ Ƶ¢(ÇÕà ‡u¹vM-96䆊N^NÚ™3góò Õ”•’S¯œ¾PT^åãbmë†ÐF^U¤G_9wùì9ùö®a'3mSGŒ³CYmëÈ`¯•‘îÕ;êS$qšÙÙ¹®®®²¬85=‹Š‚,-}‹¢ì4'7¬·‹­ü=픘`WWssƒ¦©®Êl=}S= «ö¼œâÜâw³Ê»›Êå®Þ ÄyøM§ 3“N;žœU,Ý”W„Öç.ž>q6§¨.Ò #¯¨‘yñòõ/om#Û²¼4•ûÔ ¯$-¯„\–ŽºRnYC ‡oHŒÆÞÝË[îܹشbM=½´ä$= }8ÌÊÌ0<.CAî‚“»×Ýë}ÓQ^Éd‘Wýmõ J÷§gæëªÃïkëôt5ß½«2†'v4Ö5w ðù;åU{•¶¹sscÆÉ^[KÓÎÙ')Гmhdlf¨{éÂݸÈ@—€â䈶¾™B±³4‰‰IP¿«=66Y˜kè€]¤16òª<-òË/Ž]”»ÕÙ;”—–`nn¦tO1¥ ¢² óºüºÖ^Ä‘°­½NžQWQQ¾§œ˜Y’™¥£gl¤£vé¶*\ÆÃÅÚÒ¸¬e "3N[OOçÞm5-w' M“êw¯ ˆCö¶º:ZF6ÃFZª®>!‹4ÚVãWSƒm§>ûìÔɳEÕ®Æz×nÞÅzzª©ë´5·hßW»wW1&¥P°û‡yü lQcs5Uµ–®>_7gw/¯K_ŽN×ÐÓKOIÖVÓâñyÆúÚXÿÏ?ýÌ/(ÌXWÝÅ?啬›XW™ðª§­AEÓ¸`¨®º*-6ÌÚÑ~t¨GU]§·o°©®ºwp|ãÀËV¼ëkÑ6ÛW~¸ÀȰ@M³ÔH{gŒ»­™•sh ÷ͪá¡A¸¨"~ØÜÆ–LYôpqHKͼrò|XdŒ•‰~Tj>‹ÃÝľʈ ‹L ñvupõò÷òŠOL±57°w÷–¿xNÓÀ,%5}š´~«d¼=ÄÃþØÉ‹`tyc¬¬\¼ƒ½]oÜU‰ ð ð÷ĸbƒ ,=Kë(/;'Ϙè0OŸƒùŸod¸ÜžÆJwo露(%E ¬«ý—ÇO„GÇÖ6µ „ÂÍí«þŒ½GIf’¶Yl` ‘©MRR‚½+…Æôs6û翾žœÙèVf^Qf&/žþJËÌž„»qùRBj¦¦â-¬´Ž‘qAA¾Š¢Bumµü…³Q ŠwR³r½Ý]ò+P^ɺ‰õx5Ù ¯”Y+Sc//}}£¸Èoo yÞÅÎÚ룣¥UV×¶säefd@óHˆ‹öñó¯kéšÏÌÌììh OHLHJ­ª©ëì^bÒê9WÝØB_$'ÄFúùt  tvvÁ¿ŽŽ®)ÂDB\ŒoUC[ei~PhhppPQyÍV¼¢Sf›Û…|N~n~r:'5.¿²¡•Ť‡ûºè™;mº”Ãá~?(Š‹,«mð9qáÁnîžnn®áÑÉñ©ébL°Ÿ£³“£#¦|¦†A§#06ÛÖ?‚LÌ «3TW ú&ˬˆ÷#gq8â…8(¿/^­ðcƒ 3¡@ ŠVV–á’ùB!h(üOä1á~f‰ï›Wÿ ‘:=ÒWR¶qëÊÞrFy…òê`yíïÉÌL/­¬™&j«*këGú³33ó ‹éÛ»Wky•zEA­«§¯¼° -=}xtÜÅBSÏÊvld¤´¨ --­wh‚€///KKM-/¯JOM­ªk¦,ÌÕUUff¤–VPéK+›ñÊÏÚ$+¿¦§£­`¤·«=59¹¬²~v~®¢¬4; ô,csÄñzz{§&'jk© LjiëÊÊÈÈÌÎ#S¬5²Ë«[Ú;¡cŽôõHsS£™ééÅeê÷¾[$NŽg§§eæäÎÏ“[êjóóóÓÓ3çÉÔI<~ï¼Zæ˜j¨µw·66ˆs#ƒ½9ÙÙUõÍSS­Ý@ª¾îN^~“3 #=mŠwóÊë…«¾ øƒó ©‘8+G¬¥žNVqurLDTtŒ’Â57¿C•äì e]C‡àdáåëwìó/#bbMõ5m1k?à Àb´õM°Xlc[yžd¡§ãÅáò'÷5~%0P¼öÚ«¯ûF¤u×—ÿêëøÄDMå;þ!±ZjÊq±± ŠjÄyÚž_ì–W}Í7凞竪6Ö”{ùábÂ/È+dÄY;`,m­Š›ºÇ»k 4­u5´Íl2RâN}sy–ÂAyu°°Byµ+^õw4*ß7ììì)*(HŠ ´t°éUS×îèè*+ÊoëÚ¹}Õ^W¤kîTS]cmf ¡eèbáìfcbdnãbgvGAÏ×Û=,9°£NßÒŽ2;ml¬ŸŸ rW·««ë`›¹ÄænäÎÁTßÀøö­»5õM© qá!çÏŸMÉ)ÔR¾aáà>:6)\5K€W`¨Çû¯œ¿ wCyrròî­ëX¿` ¥[N^vJi¹Ùw”Õ‡†Œ5U|.žú&$"ÂÅÉ>=§B(±¯–E…ÙQ‘÷n^s÷ñw·»zS¹g`ˆÍáMNîgüŠg v[_×@CÛ¸$+ã쩳ᑑŽv6µM=©‘þÇŽ}m縖™Ò效Ï67кuS!$6³8;IIMËÆÊäôå›y)1VÎ66Öe mUÙš:š†ÊŠ÷Ô´==\ô,( .Ê+Ô¸zŒ¼bÑÉŽV–ÎNN&©±QÞþ¾ÔE²·«“£3æþ}­šænþ¶ñúÖòj¬¿ÝÐØ2",ÀÊÁÑÓ ƒqÈNµsqõÄ8ØÙc­Í•uq¸ôš‰vwŸêÂëž“™qò³¯5Ô5›»…kŠ“ð*>À§¹m çáî…³±0  602ÄáŽÿû˜¥µ/.ŒBc~;Þ>½²,0ÕVµq `1i¦:>þÚª÷¬]=|œ-«›[Lõtœ0.W¯^Î)©ðr´óÄú”VµH¾:¤Ñè¡~nOo[s3.Hîòi5}Ww‘Ééý_ñ¼1Î##“–&ºII™VF†þAF†Æ]ƒøñî†ÿ{ý¢úîG<Þžüî‡_ôOãB¼ŒmãÂ/^»‘æ†õ ðö´uòr²5¹¯oìkeï’cgïÁá£þàQƒ•lñ d4UR\Ø;9M"Læææ@ ¼ú²¼{*Ú¤Å}ÍaÛ¯($BFVO œ› ôŽŽ‰«­­jië$NŽø‡GF•W×2h”ø˜¬·O[Ï :Þ~ô`%s¼Ú¬åÕÞ„46‘¶Ädmüé‘Í]¢Ózº‘¯}Û»{û¶U–Æ|Q›îêl›’Sº}ÜiiðêÊ«C>l…òj×~’HÄßbÜæI˜ß¾"*ZÞ¯Î(¯PX ^I5^Â+)ÅëkllÜÕ÷ÎÀ+¸Ø'ó{œ²²²‘‘‘曯¯ïÎ+™ø’ñððêÌ™3ccc’(p+gnnnee%P…+©®®ž™™Ù¹2HŒ)$ð4. ˜öööÕõ›RÉke]:$îÜ6÷9qºôõõ!qðÖ ïn‡©P(Dbèm ¸5@D"Ñò·ò„ÛW²øÙõãUãË/¿¬ªª8hþÛÒÒÒÐ gdd ÊïäxP¦¨¨¨¤¤¤_:j?Ï›Ö$¦3 °9±*ð°@v$+ön&CCC€\Èmè[AvJÒ­®=%%¥¢¢Ô˜\(I¡tPÊERI<@0DA‰ûצH8,$ÏuéNôDbvuuõööZXX °BcÚì\Ï>û¬¸¸¸]:ËÏÏ/<<\Biä_ZZšœœÜÚÚºÃã›šš¢££žRº^Ð̘¶¶¶ŽÍöCo•< ·"ƒmø v677CZ[[ ~kçf™€þH|ÎMeÝ$W- ©P—@„  ´B¢xA º‰DØ)ƒ¶áD8kQï¡UHÿâ‹/Þ~ûí÷Þ{ïã?þÛßþödòJ†`uØÆ¯à¹)½!€!ô¯ýaØFÈd2ô”¯ï— ÊHo½ ðO¥W™ @~)Uæ£&“‰0J&úé“9º~Èy^€TÇÛkjjöó~pÒ‚e²sþðù|°^¤·âÌn×óÚ­ Á>‘R0±G#t:̪'–W²eVN^òõQ^1^:u …•l]þË«¾Ò~¼' ¯–E".çá_®mÏ+‘PÈár÷s±åÕÊÊ2›ÍÞóK›Wbõ8©69àÕéÓ§wØìÍdV²È«M¨²3Î|ŸW+ãcô%6œŠd¸,àˆƒòí \^1)óµUu¢‡ÍߊWHÑäé p]…» Û-¯xlfIE‡'Ü®¥Ç+D ‹^TVÍæ ¯ŽŒ&[Ë[^-.Ì÷÷÷ŽOà™ arr?E¥,ô÷õŒq1`-¯x\¦…™I~e3‰830Ð71I˜Áéé¨õŽÏ’fûû¡‡G"GF†GFÇÇÇLJ––Ø”……ñ±Ñ¾Aqܼ5\«©6]s•J L-1™ãcc½}T:s~–„¼[=QÌ+P†ºHž_Ï2›%ÑLÂäÄÿÏÞ{·qdû¾ówœŸÞ»óÖ[ë¼¹ç¼ykfî=ã3ã±e[Y’%[™ÊbÎ9çœ3 €9“ ÁœI0'`#I€ˆ "RoƒmôDQIØ’¦¿ÖÚnª«« ]쪮޽¼´ÌÙ̶yøxs¸™BeЪ¹\ž^¯ÛÚb,¯¬Ä’ã\9<0ìlm--.q÷R‰hÃø¬5Ö.jrúûÅümO_ŽP²µ½­Pª9¬m eÍá«$C•Øl–òíMzQ¼R+å»cè?±`O$‘ìîl///3·Ù<ÎæC;wÆGÍupÀápu:=—mü”½Ë½ûfòê“0~ì¤úèx¥QÉKq™þþ¾a‘}]¾™Y˜’¼\?_O/Ÿ¹ešþÔ ÇyÅgm^þú˘t\vR’¯otBr[CõçŸý¥®­³“àæá?=·èokïdokß7BªÄæøû¹»¹U5î‹ÓnâkuÖÏͯ·£-=#o¨¯ÇÃÝÃÝÝ«£¢¹©64(à‡[?´IPOàÕäääôPOfN©|_–™š426æë城›èiô ¨¯Ç̬ whYÙ¹«‹”à OŒ‚ ¹òç»r’=Vˆ¯¤ç—ÖL ÄFG=¼s;WªÕêN÷¯€WŽ>=ÝÝ I©‹‹ ‘!Þžž‘qɵ•¹•ûRq|LÌúö[ÉpQ¼ÚÙ\Œ‰M–ìË« 1í½9)‰~ð}FÌSæŸ8út5Zú5jYjzöê*55.Ü××7":žËþ*¼údfã? X}\¼b®Ì=yöbbjº¢¸¨(7óÁ«þ¾®gOŸŽMâËŠz‡§Õ™¼Òª÷]jšz­Ÿ½HÍÈMNKè#Ú<¿Oš%§$%ÕâkîܸU^Ù`õèqGï€ý‹‡é¸Šœ¤ˆ4L‘Ÿõ‹l\åp_Ç3'{ïð ^q6(¿»uù›«-Ýã-Øö®y¹Y•ø›U‚Íüçµïg–iƀ퓓Œ%²Õ›Éñ‘Ïì‰Ä¸øøê²‚ëwv*CƒSSc ½S»k³ŽN.©1aÖŽÕåEW®Ý¡Ãq:0m‘tçîâ¢ÂôlÌ.—;ØÙòí•˵­½z½át^IEœG\þúRi]{oCÙÍÛVuuu÷îüP‡{ií4Üßóâ¥O(³´%óž<|02A²þ‚80SOÀ_»|µ¥½ç™‹E^jzf¹R!²±sÍËκuç_ûÃÍkĉ…ó´ùWãÕ'+‹ò꽊5‡Ws¤a[×@›³A£vÔ–…ÆDoPì=˜[læÆ:s›c¾õê•Î×Û«khª´0Ü;;ÇžÎw——3Ó¤ _ߨ¨ðË_\*)Å»xûs¢¸ÿ¾‰…ž†ÒT\a°‹G‘¼Ç¢9:º®oñLÏþšxÅÛ |ûÅß/}u¥­wdqv<4ÈÏÑÁ.[D]]°~lUÛÞ¯x‚ÁâÈG}Í4ß>ÖÕøíµ–7Y½ÍUö.Þù9™=«©(LNOm&Túø‡ÅF†¸ûv5Õû†fg¥%§cE"™é¹?æê|tlLvV†««wVjÂ7W¯&¥etu:ýéóWà_E%$/.Ìzzú676ùúâpØÈÈ8žHÒE(ýÓŸÿJYß:xû4ÑηoQço]¿Ò6HZŸ·±µ/((°ºw¯¸ ïž0LlsvóÈÎHzüÔ¾HôõõÇâ0Q±Û\Áùg°NçÕ'65ýIÞ2°„gu¼zux°²0ÛXO`mÑPºÍõ•¦Æ†ÎÞ~©Lqhö|;”E™#O’ç&LJ B{‘/MŒ Î/-{[[Û::ÚÇIÓS³s*f™2ψ9ÛôõMz˜³ktT*¾¦–º±uüþ‰W ©haŽ¢Ñ¨G††–––Zšê ”åվΎú††úú†å5:2Dx%òúúÕZ½ˆÇnijììèêèè˜_˜[ Pø\vsccskËèä”L""vwÔÖf–) óÃF Q7imµµu㓳ä‰<œÑéõ§ûWZµrvÕ 1¶Ù¤Ñ‘úzÂðø¤|_Z…I³wÊO{µßòJ¯QöõvóÅûj…¬»£Ú¾­­<37>=/ :Û[Zš›zˆC™|lx ®?02¡Òê,=ßþQóê€íoÅ+3Ýió×3¼™ÁÌ%[o[/ª×éN,ðÄ©f|~ÑìU«}ÝoyÛzQã;ûNrrN\ÏpxxðÓÆiç¾¾¶B"M‚&&H;\þÑ«õoæ|ßõ¢HáÀÏÌĸ¾ÑéÓWSXl=Ã!âÔ½mžÿŸ`zßõ (©>ùùö‹žS²¾ËÚÝßW¾Ù™~Íõí‡?ëmýúÌëÛÕ ùêÊê;‡|ëÛ?™õW¿;U¯>!ý óퟯÞ&ôyœO˜W¦£õ;3ôê““åÆƒïõ-£¼²¯ÞVŸÃc:sù###çá+ÏpLÈŸGo½?n¡’¯YSúyš*ýúuóï_ï¼3_¯>QYâ4OäÕ;º|ñÅýýýK–Ñêê*‡+//Ÿœœ¼ðÂWVVÀÙ¨««[\\4s—ùùy¨ …BY²˜ˆD"‰îMAúææ&“ÉDbôÑh4€•J…ß °,kmm ,lC†O +++§§§—Ï*Ø×Ùo}}ÚpccŠ ÍÇ…&b0³³³P7ø-€º½f‘8~P™3øòË/ßk}û¯ƒ‚ßO¯>uYˆWï;„‹éb :ƒ)))!‘H~(|pp°¶¶º˜™»@7,++›››£XL½½½H,»7?‚tN8€b ½Å~,T ,ôhïÍB€·Ð˜gn1` A~P6BM …:@UNP°È¶)…ÍfC g®ürýãÿxçú«sáw¿–^ýËÈ¢·ÍçÕ7à*Õét˨½½¨"•Ja(qá…CßÞ £<3ó«T*pÉâ–4#¸O§”L×#Ûú#!•W«Õ`•J%¤Èåò·íŸ I$’óTòð !wÌ·ç9ºX,†KîÄ+ów‰^ýKÊBpáëÛÏ©ÎÎN4^:ß~|þ .¹'.P@ýk"ë½*ð+Ì·"P^¡¼zs¾åÊ«Sfà?íûƒæÜ·z'¯ÎyóË^§©Íç\ÿ‡?êþànø)þàaÚ-¤´ïÿ Ö}úGý’)<¡úÀR^{Od¹1ÛÜO©x㟺ÂåŸòÿò_áü»[Ï´ž%Ï'€,Ë=NøðŠÉdÈ*ôZ}S«×“WûbþäùŽÖé¼înOLNžg-÷;y¥UîŽ+uKóê•äàáF~Ç`DÊ%=a×¥ ?~hâ•1ÿ­7xõؘÍī£?sK?ñêÆcÝ[Gÿ.éÊ—_™Ï«3 Q\|€¼ú5ïšÉ+…L²HY`²Ø*¥ŠÇålmm+d²åÅE¡WHÏ_ÄëSÉ’ã&æDB¸ÍÞåíÐc"BÖ[bHYX`l³u:PÀ§Ñ¨tÆÖ“¹ºFUk´2©t›A§,­È•êyµ»N‰‹S«Tì–J¥¦Ó¨ ”e…FËåofmnÒÅ’ýÃWH¼¾Q‰H(–Ê€™"!_®T±··Ã„’ýå bDtoO¡ÒtZÀø¦{öÎ6e‘"#Ø2wg{nnN$–I%¢u*uccƒËã¿“WR!Û/4R Sïìl+ÕÑÞ.ÔO(’ˆEb‰1¢ 4/JâüãÁF÷#¶D¢9T6EÆoYM7üì¹ô§ûW¿äUùk¼zlxß¡ï)ëEQ^}ÔÈ:ÿwôÎbÍá•N­ T§¦¥&$¥ ôÅGF–WÔÔU•¥¤¤EGÇ̯l˜OF¼·sóú·)¸Š’¼‚œìlL^AoGÓå¯þÞJì«-/Áb± ‰é‹ËëØÜì´ô´àà°ä”Ô°ðqò\seyJRjllLms—â:L¼Ú^ñwê#—ÔLŽ'¥¤¥¦¤‡¦û»1¹9ÎŽŽ}ãs†£x}¤Ier¸´¢A­V–æONNb²³r³2óKkÆ{|ý};:ÛÈKt1‡YV^A[[ÉÌÊÌHO-Á7*Õ?;>;395;3½’и4;]\TàåéVTIÐÅë;ÅC“ìm;xú à Š€ry9é¹y…=mÍåø•\µÝÚå¿mTú^¼â u#áà§a݃Á©ô#Ϫã üÈËš’ŸƒWPÆ–®‡ñé†mý¹xõ^?µ¨>djYNïäkcÙÁÞ¡¹¥­0¿ º÷ðUsc½£}}cK1;F^ÖêôfòJ!X?{V„oq°~éí××ÓýðþwÓi‰ñ©ÉIß^¾V[×úôÙÓÊZ‹ÇbS1±!¾9EåÁŽŽñ©˜úšRWßm®ðÄx}V7¿¿w÷a]So[mÉûVa¡¡øÆÎ•eJjlø¥¯®MÌ­šâõ­ÏO<·v¦Ìm­Gƒã¢BoÞÚÓTœž‘ØÐ7µKssuÏËLyøôeBLäµï­¶v>îuþû›ß‡‡‡§gçÑ7i •Å_~þ BÇ;ã3Åë{xçÎí‚ B_sí­ïï¤$'ß¾ýC~ÖÞÉkzrÔÚÚ~wOtx!óíò£!Þ%=G~Ä–[d0è4N¤¾z5w.ÿŽÃóðêø¿)ù…ñÊü9 TÿRÈúì³ÏÞ¯oÈÚɇ/-ÍÏÕWä„…Ѩó/í\¸|me²B×™Í+pÖü}}zFf°ÙYéééþÁ½Ý^n6só“Qá‘%ÅE·¯Ý¬(«sòôfsEÑa¾Ý£³= %©˜‚ g·îY —icëHÛ>!^wƒr󛯿ºôM{ßÄÌ(1&66>&2+¿ŒF]öór¯nèTiµ?Î_©åWç¿ÈøìѾ®àШlƵ;ºê+CƒÒRãêz'™’³³K°‡³½‡_ue…µ3ƒõsô'6c-.&|8Ø—É gÄGǧäòÅûïŒ×'sîÞ¾ùõ¥¯Jk;êŠ2oÝ{V[‡wsr÷uwñòpMŪ/.~;2$L+: Vk/Ÿÿq0_dˆ?rº~dÔO¼ŸÄ«^Î[xuKO—òù?þ3glx†çQ¡à:®þóŸSSSo« ›AuvrÃ×à““’Ëòr¢£vwèÞžžUÕø¤ø¸ÁÉóý«W‡úÏŠºÌŒTóðÎݪÊ:g»Ç5Õåï[åææÜüöZzf¾»_ ‡/Œ $ŽÏu7”få—::FÆd–æ¸û†rxâ7ý+ÖÚœ—³wY!ÆÝ+ˆP[“–šàéèâ{åÛ›UxÂê:óxü+BqÎ}öEÿÄBsEÞÃçö¹I—¯ß—àBÂà qA‘ɘôø§v…ÙiöÎ^˜ìôàÐX±La:©m*%>>>#=ùÞ'˜ŒÏ>ÿ<#7‚<‹ÄC>-^ŸíèáE¨­†bkÊ Ÿ<·+ÈÏ÷õñgrxUØô?ÿå/}ã §Äð|_^ñ‡ô&çaÎ`ÄëNüäÿÄ«7æÛ‘ öð!¤Éã†;?óí}߆ò ×9õïÿþï!!!B¡ðÄ:è5êö¦ºÜ윂’J°´ww)•ŠÁžŽœœÜl nsk×pph¶uÐÖDhj먩*Ë+ÈËÁàVW×+Kò{ûúó0Øâ’’´”dBc;¾±e_®èéh¥2vV秆I“!NNžA©)I=ýcÇÝ¯Ä¼í¶–.¡€W”_ÐÓÕ•Åä¶tô`ÒRcã0ÌäÌòñø¢;ËÉÉ™"™bcq&=3³´¸895Hìlíh_Y˜IMMÍÊÊ(©ªÙ\_ËÇb1˜Ü†æ®Í ÚÑ#}Ë‹‹‹ÔÕE &'?/¿¼Š£Ô ðˆœÜœ¶Þ~­îãA¥\ÒÔÖ.•HÊKJ¦gç+ÊÊòóp¥•5Ò}EO}Ùµ›¸ÉÅÜ<>$<‘øÕϋک‡bþ¡Xrˆ?rÀÜjß}~ëÇû}0„aàRÑL ÇÂë~^ñFþ—tn(¯PY”uŸþù;ïj4*ÖζD&×i5r…Âø´¾NÃb±„"ÉÁ»,½¶žA!—I¤Rä•[Ü=!W*Co ù;,¶X,‰Å2Ù>øB ù>tF­R©2ÂcZšû錭×|9¯ zÝþ¾Ñ5@þ]ö¹¥ÖhÄBáîî.TUvä™xu ×I¥Æ^x`Øeípy|‰X(‘HöårHáì²y{|ÙQ…|s ŠÒ..̉} Þ^"}‡-àïÑh2¹r_&år9¬h ä}^§ðêàÀ‡0‚d_e*dRÈ¿¯Pî‹©QaåNw‘¼zõª=àh’ªéØ`Ðîg§HLÖÿ8$ ™¶êM×KÔ÷ÿ忇”W¨,Å«WÏzÑùIò.àö:Íõí±ˆËåòx<°r…ò-8:ãúv¹TÔÑÚÊ6H?¼X^]ˆäüÃíã?õ¹‹By…Ê|^½™u:3¯Ì ‰õ¯¯Õ¿¯Nɼb³ÙòêÞÕÓÓ3>>®T*-Q8x;³³³æóÊøfœ±± ŒFþ&O, ÿO€Wr¹Üüx}¨P½Æ«+W®@—g±Xl üŸªªªæææ èȬ ”¿°°ÐÕÕ.™»@N¨ÌÖÖËbšžž†£œØ¾··'ø|¾P(„m±X V"‘x î| Fð)¤˜ò@:ØÎÎÎÝÝ]‘HyàO°€/Äî ²ñÞ"ؾ&“É8lÐéth H4Å‹Ä „ #>Ev ŸBÅàkE,”yܾóz@JøË_þ‚.Eu6^}þùçÐå¡—ÍX@sss™™™………0 ›½hAáD"±ººÚü]&''‹‹‹¡b³‡£¼ÙÈÑiG:zDhÓ¯¸±¸¸¬@båÁyA:dDLLL@~°ŸD"^ÚÚÚ`w2™ ÛP,äüH|?H_ZZêïïlä—‚ö‡tøí ­­­-G‚¦¦¦ööö†††ŽŽø`XWW×XpŒkkkÁ"à¸PX¨ ü n*ª488ˆØ©©)û÷¼Kp¸äädh¥ÆÆFøíÀb±úӟОˆÊL^]¾|y~~ù}äZ@555Ð/ Bù{­ÕÕÕ¾¾>¨¼™ù!'ô8óóŸAÐ<'6<"ñ‘`\,“×d ~¤@‹'à °‚̈L™¶ÁÂî»CNØ ÈZ?I´‚‚ÀæñË@Ë×þr"veeÙFb¢B ÀUð¸À"ñQ§{áÐf†DFÂAƒÀåè»…öDTfòêÚµkàÿ[nþ ~¬á·ØBóWÀ‡÷šo‡œà$XtþjhhH£Ñ|€ßµB¡ßÆr÷Î&ð ÿøÇ?¢CBTfòê»ï¾ƒ_FËM¯,¯œ½×ýAËX4žÞÀÀ€J¥ú¿kðÜÀ·ÔétT­À1ûÏÿüO”W¨Ìç•Eoi!þÊ+”W' Fôÿñÿò Õ‡É+¹\®;2ëðà@.ß?88ãhÔÄ+­R¾ÅÜ6¼«œÓy¥”J[[çŒÿy^íKEÏBcó ãÕá¡L*Õé/fLò •%xTA.QȉÌÏ(ärÿq^èZšV7Y@ ¸æ5Zz_\W[ÉJ y6Ðø¾•¶µZB©B^Ë¢ÕhŒËü²/›x%ÜÙÀåäk»h!‹J©ÊäG€Ò=4Æwмúi½¨F£Fž)6ô‡‡z­F"‘ÂÆÖ93'G©V#oA°¦×ie²œCH7îuphÐë‡ÐhtGï=¯VÈÃx|‹N§×éŒí Ój”JÒ H†£·Ûüæþ•®©¦Š¹{1\Ey…êbyux`˜%––×64ѨÔ&¡£³wfr¼´¤¤¼¢šÅåŸþáq^É»ïÝÁ–7 ô•—–[&Gû¾»~¹gtb˜ØS^^VoØÙåõvwÂvQIiMu W@ÝÜš­©ªÎËË›˜ùE8¯Øk³~n›Tj[[}“V‹¯*,,šY\#“Fkjj099Ó*ò¼óøø8}…24BÖ ÃýÄUêzs}]qqIwÿÈüP›«‡Ç4yj¹«” …B~K¡¨¨ppbú¸G¡Qîw67ôŒÐ©Ëµµø‚<\[w¿^o8¯Æ;«“rWæfˆýcÜ]¡®¶´´Îb¸¿g˜.àû5:ý¯Ã+F5?7§Ôè%î uƒ¹Imom%öÊöÅ.öýS+kpÙl¬-‰$RÖ6£­µyd|Jóž~Ê+TË+1o'ØßƒÅEEFãËKŸX=‚Nâï“™…‰ $½#žÌ/x%ä<¸óCf~•›ƒ}`Ph\brW{Ëo¿êìÈIKIKIypïQG瀓£]JFÖÓGÂb|ÝŠj|‚B¢Ó“ãýCãŽG00ñгAqxjœWXÛVWnõÌ:*<‚ÐÜ;99––ó·ÏþÑ5DFâ‹N&I®»;;Þný1‘‰1‘/܇:¾¾9 }“ÆŠ¿@+¡ÖÞÉ%!6ê…ûX½]æªÕ½1Ñ1ØÂÕ%Jeiáå/ÿ‘‚)ÕjuçáÕTo½«£G°`C3±ªãæíèTÙHíi ŠJR¨4¿¯´*YtHàâ»·¹º¨¢¶º´ -#ÓÍÝm„D r³«kjMÎÉǵ0+vhd835!95ÍÇÇktfåªßWKä±ö[¬ÝÙ)¡¼ÀÅÓcafü…ã&cgqvr~ySg6¯4¾ÞÞí“ñÑ‘Q±±¡‘î.Ï–æcc òo_»QQVoíè¼¼Nõu¯mh®À&då:º4¶s¶×¬m¨L®išÊÄ+>cù»¯.ýåÏŸõŽÎOuyyûÄD„UÔ‹„ü¤èÐÈd_tøS¼>©`×ÎÚ¼#ïЩ±áð°ð£28&G’»MóòðŒ7Æéã EU%Ž”U ñ<¼šhúâ³Ï¾øú»uÆ®÷‹‡îþa¸œt['O|iw`Dd OAu«ö×ò¯ôñ!¾ù„P¯úvbnzbFVÎí[×ÀÏõt.¯Á»„«ÔêØÛƒØÕ––žèíâZ^„½ùýíæ.â.×øòÓ|;.%öË//WÔuw4”?³qÁd¦|yåFsM±ŸovfJRnYOcµÕ‹—)‘¡ðiaaž‡»ÿ.Oúsœ@ÆjrJRVzªÕƒ'­Í ßß¼‘‰+ÛØdÂó<¼šì©}öÌÆÙζ´¦ÑÏæ¥g@h^nFpX<ƒ¶nýäþµ[÷Vh¬ƒ³Îaþjz¨ÝÊêÉs—5*ÕÛÓ5¿°èî÷×ò+kƒÜ+ñµ6®¾\.ÏÝÎ*'=õê×—K+ª‚ý<ªê{Q^¡ú y%— ³R’ÒRS£cÚjq…ù±°“•’šN¦¬~«è—¼:‡¡¤¢6++‹Ë Kˆ ®m¨ ,ÈË÷puÅå—§fc’ýŠ"ìe}j¸«¦©=ÄÉÉÅÕ/.*[Xµ,–‹‰W‚íu\n¶YWS””œ–’žƒð÷±vpÎÊÊž˜¢ ãA„WKä‘'O¬7wxSC]¾þ!…yX'çB5&7Ø×;92“™ƒ-áòöø|ÁÑÓÆ:%.!‡Å„GÄ`ÒïXY¥¤¦5µwëôúóðj‘ÔWo% tÆÄ§5ÖTÅÆÆg¤§—TÖ«Õê@×çVö¾2ÅÙWJœWJ)ÿÙýïÓq‚½];›çÙ˜<ÛgV‰™˜¨?bÿ€““s^~ÁÝ»?´¶µz{å`°ÁASs4”W¨~C^X[›ýDâüÒªÏc0ÐßùVÿäôœJ­=ý¯­gØÚÜX¥®ÓÖVûúˆãS3 ¥jm…BglSæf†‡G§g¦—×Ö7èà³íl1DR¹DÀcq¹±ž¾Y™EݽDΞàøâ¯4J9cÓ¸aei‰µÃ"öõm³v)3ÓCCCƒtûà˜¥VÈ(‹KZýZ.Ÿœ™&Ó6it&S.“@ÊØøÄ u]§ÑÌOOöûèÛlÊÂl_?àˆH$®Ó³ä©îîž•uú&mmhƵs‹+P“óðJ*ÚÛÚÚÕkós "¡h|dNy‡ËߦSÝìmªš{ϳŠàL÷‡ûz–¨ ƒ^?ÜßUSGhjlì˜åñùÝ5µµõMœ½½òDUUU}s»d_‰ò ÕoË«óèBÖ‹v×7­­o¿ùâ°_s½è“¾°°@¡,‚åì O¼›o¡õ¢+ó¤´L ‡/>Ï‚ó®g8<Ôü´ÚÄ”t|êœÀ3\C(¯P}z¼Rìïk´'@æ_d}»L*Þã‹Î¹Þ ]ߎêÓà‹Å²4¯är¹% çñxÓÓÓæó z«Eã‹‚ÁÓø¿kàU{{ûÈ«?üá(¯P™É««W¯®¬¬ˆ,#‰DÒÐÐÐ××···§¸h)•Ê­­-ð—Ày3s©TJ$ÍÏuvv …Âý“„Öƒ<@o¤þ°Θì'½¹ ’í<x‚W ¾ø. @8"¤œn!¿F£y;ö'’íEhM%P(”ßÿþ÷¿û„Òà£àÕçŸ].› ~=sssËËËÁ Z½h­­­MNNÖÔÔoÍÜeii©ºº©˜…ÔÜÜ CT8Ðâ‚D*• ÞìΑØl6ð†´HÅ V¯å_^^ž˜˜˜ŸŸ‡3¥žI°#N‡ÝÜÜlmm…mØ@â|"–Ãá ±C!ùÉõDìö‘ ÂHW¨3d`2™°#d »ÀY€wŠB ‹#=~ˆãB*ß \!ð£3>>í3330¦†Ö€Ÿ9hîînhðÒátÛÑÑA5>ÈÐfJ;55-ßx&555YYY¡4ø(xõå—_"!|w, ¸ ËÊÊðx<\r[-¨3\óõõõHP_3×9 `Ë2‚*ù¡|èÎ'~j Ù‡8Ÿ<.\ 7÷êééoÒ·Ï*àŸÏ‡C€‹ åÀ60Žk|›Ph²H XÈiÊì ÌABŽ?!œˆðè]ip"±¯õ¦}­p°HdØà-¡((šÒ¡‰ ÒD`áŠB,xžpj¦øö…æbœI°£§§'êe}¼º~ý:|Ý–›¿‚ñÑÐÐ C,Q¸^¯~¯ù(øA‡¾`¹&EptQ1ÀÙ°h4ETˆBBBP^}¼ºqㆥïR,ÿJ«Õ¾¯`„¿à–#€ðHU>âú¢¼²´üýýQ^}¼ú¨ß?ˆò Õ…ÈÏÏåÊ«7yÅçó*µ©ûö¸œ3?ÃkâÕN3CšÚW¾;vÁ)¼:0h§ÆF¥ç[=õ6^-ÏÎpyïÍÉŽWr™„±½‹ò ÕoË+S¼¾Ã÷Œ×wœWz­:-9¾kxZ)—oÒ¨\¾P.âÆ„ù/Péj•jsc}—»g88P(<›ÅæŠÅ"©Ñêሡ€FÛPª5'òÊ ”Dù°¸R‰T¬Pª¥"ÁÊêšR­SÊe,‹ËåJ$2¯öxäO­F-“˵jumË4ò@O‡õ­ý}ÅQ×“é ‡†¶NId¯!ã@¯ÝX_csö¹<Î.›mœšð¾W¹qäôg©ìðð€¾Aãì z½TŠÔD%Û—D¼2­yCêfÐëö–ØÍ“B’°ÆtøÏø¡ñº:4è Ê+T¿¯ ãÝIñq¸Â²%ÊBiaA¾~l 7=9)=3›Éæž1à8¯¤|Ö÷×þ–”‹ËÌLŒ‹ˆŽno!|õ¿VÔ7—åa’’“üƒ¦¦³2ƒBB\œœüü‚<\]j[‰øj¿€@?ßÔ,œP²¯äB'×>â`|L iŒSX>EMKKµyñ41³P£5Ò•4Ef¬ÌGEňdÊž–Úš†V\NfRRr@`àâꊻÍÃ^bW~E­V§+ä-¬­b³cbb‚ã¨GO šÚ¤®´ 6*6$4„1c½í+4¶DÀ®¬mñ8Ùiñá‘ m݆C”W¨,Ë+>›áéáZ]ƒÂT<¶²ª#Ôy¹»–UT'ÇÆôÏ 0‡W:ÊÍÅ©¢¡ËÛÍÉÓ7 %-“<5aûìöèôlEq“ûý·7«*ëí}‘q©¸†ŠüðøŒ”  ˜ìì씃£óÌÝô ¡‰W‡j©£Õ½Kÿø&¿¼…º@º}ûVt\BIE­@ÀìhºrùJsï˜þÈ% ‘HÞŽ³ÍËÞ‘I?§žÁ‰BlVnnÎõ«—ëÚû½ž64ÕøD&ªÔšHo»òªŠ›ßÝÄ`qîüPXÙúóãr‡†P?w'W¯ÄäÔ¥uú6“îãðÒÅ;„/‘Á`óD^¥y~ýÅWái›««n}—”‘ãâ`‘âîhß;<îãìÐ;6ûæ’,¯æF{<ü©ËóNΞã£#É)iY©q÷­»zZâ Âz†(,Æ’GH)6ÃÚÁ­´ ÷æwØÊ+TåÕÂÔˆ‹c{g}u¥_êíïG™›°qpÛdlm®/Ó,ý©A~9uàïÛB$Õá+J‹ ìmí 5µ^NOI“cÞ®N%ååÏïÞ/-©öôñ\fr0©1M]³c=!1‰ñþEmr¹ÔÞÁadnM§?WîßùávHL&¶šÅåd¤Ø8»S–ý=q%5b™Ü4„±mc9î¹µ­£Ï2eÖÞΡªÿàÎõêæ^Oû§õõ•nQ*•ÊÃÖ*7;ë›Ë×£#Bš:†Lgz`Ð6ªJJK­­ñõÝ͵e®n¾k pÀÞ6L p½çþs;÷2ùêß”ã Yi‰Å¥õey/¬m_Z»r…’h<¨ðÜ‚ýcÓóÚÞ~é‰1ßÝxÔÕÝê˜åÓ3²ÈÚXxjçèn÷ØÎ£¤8ßÁÉy›/Ey…Ê¢¼Ú\™{þÂDš*ÌÃ妆‡o1i¶Öö㤲|lßø¬ùþø%Ñ¡I™yQáÁqqqV÷­õÍžOŠKŠŸ?|}óڵȘ4ŸÀ@ÚÎ^Qn2¡c€2AŒJÎJ zôØ!!6ÒÑÝÉæ™ºï±ù+Q›Çð𨣭]qq‰—‡gLdØ3{ç„Ȱ¿ü¯¿‡Õ:ïx%‘ÀÀtãÊ?þ–YTÇf¬Þ»76.áÚן'fa½]^ŽŽ­>MNIùú›Kí]=vÏžEÇÆÚØÙMέL­dÐe$FFÆÆ½xô(-#çú7Ÿ?xn’žu¿Å¿Jjm%†ú¸áòÊ|ìÃ""ìí›»FìÍÏÿú—„ÌõIÍøáη”c’þô¿þk|žZ™›dë䙞ýߟ])«*sJ*M ÷M ¸õЩ›ñØÆ­8ãäî'‘«Q^¡²(¯4ÊýÂÜìèÈÈøäô¾ÎÖ¢²R™T\S^µ´±e0˜Í«WÔÊôìe~¦£½£»o`o?7=±¼B%Œôö‡ISss ”}•†¹Ieqùo¶™˜ÐÔÔ¼°¼¦=6ÉóózƒviaQ¥R/Îͬ®® öµ¶¶’çf¦ÛÚÚúûúfç–ÚüxРbq…:rtd°—Ø?4Ð73;·0G–J%ã£Ã½½}ýƒƒB±d•2ßÑÑ>4:±¹Iëëë#û{{{Ç'ÉË”ùö¶ÖîÞ~:ÞÙÙÖÛ×788$”Èß6\_^‹åŒõUÊ•N]éììèéä %L*åÖw7'×O|©Ù‡|p‡¾ZVV¹¯T3×q8,¡¾./¯ppd¬gtj‹¶”‹É­(+mh#òy»•¥%ùùãdÃÁ!Ê+T–oõJÀç­./o³v÷¥’=>2KD‚µÕUªµï¸Eø¯ z=@æÀ ß—ÉTj5tDN«ÓëuZ­B¡0¾ÁK£EÖS€ƒÆ×jÀF[eU‘$I^»à¯¿úi/p¶ ZZ*•é p½Z­>zÌVg"댣ȣ ³\®Ðét­)Dg|˜Ù>80Èd2¨¢T"Z]^-/-o0˜_&“*Up ‡Æ§wá*5Ô÷m¼‚ŠAœŽÑÍ;<ï’5¯ U¥¸ÌÜâ·ýye0èdG_+œoO(‹%hIh“c O(É‚ÁJDB‡«Òh?ØŽ€òêSâÕQ·=xgŠ9¼:›$¡l_ùf·ý5׋¸´?锨,ï¹^ôp—µÍ¼µ>èzQ”W¨ÎÀ«3 ]ß~¡¼By…ê5^Yô‰Úžžà•R©´DáæóÎÀ÷ëhœû£5¥@û›¬éSøsff~MÎüí ¾úiy§Éþ4þ…=~èík57ùØæÛ¼èóƒ ¯þö·¿õööÎÍÍ-,,Ì_´(Jvvvfffkk+‘Hì»h ÓÓÓÁ…3—œœœ¦¦&KTÔßßO  ðx|MMMõIjkkƒ<&[__ù[ZZÀ677×ÖÖÖÕÕ…?áì`£ç'Á7ÕÙÙÙÑÑ=ïœ#^YY G)++ƒ£”––"ÛSSSåååd2,lWTTH$¨08ŸpPø} ŒŒŒ466‚ûÚÞÞçÇ% 6à72@QP7ø,$©ÁQUU¶¡P X(±§ ÛÈAÝ û¶ 6 ’ð4œ |Ç;00;ÂAa¨lƒ…íÑÑц††¡¡!È Øôþ‚}¡=ïÝ»‡òê£àÕßÿþw¸J‘(@Ì‹”‰Ãኋ‹¡k˜Uï½zœ™…¯­­Áõ W¾…‚õ!!¡-ž$$4N_^^ÞÜÜ„?i4üR¬¯¯Ã)ÀîðE,--. ¹]àSÈ ÅšÊ‡î  €ó]3CH!Ž T‡Še³Ùˆ…Ó6dƒOa_‡R©Tø¡zpyllll 6ÀåCŠ5YäXˆ…½ 5YS:䟌/¿üò¿ÿû¿ÁÂå÷c‚?‘į¾ú 2|óÍ7¯Ù+W®·±ÿ‹/¾øüLºzõ*ã‡Ï+¸  i4e¿€ðû%àZ à°··g~áÐg¤ª ‰k‡ÌÉŸ(O!ê ?º} V¥R…Q3|öø×ñZù€¸ÙÙY$°ð;õæÑ‘D½fMµ2.f;fO’ùxïe·¿û …áÃçü<Áo¨åæÛÁÃß^*µÔÂfdþÜüüðÏáp,7‘ò¶õ %pu¹æ¿bãŒïP^¡:¯®_¿nÑûƒíí탃ƒº?_^íîú ãqS¨ÎÆ+K¿Ï ƒ–[Ï€òêcT? Tgæ•Eý«ÎÎÎã¼RìKÙÞñGx„|_(>sL¼šcîðÞ ŠSyu0>лËž6ïäÕâ …Ê8óùZšWs³S*óÀ’Π¼BeQ^é4jÚúúžP¨Óje2™q>Y£ÞÜ q¸<ûúÝk¼šîŠIÉŠ$<öÎúæ¦V«!gTVËå {‡¶I?ŠÎ§–Eê“íË¡{Š¥rƒ^¯ØßgÐ7"Éká¶L¼ÂÆG Ž-¨U ‰T¦V*ÖVW…b”¿Ëfír8B‘‰Ö¼bílK$’ã'J¤R™A¯Ý¤Q·YœÃø籹e©ÌX[¥\®Õ ´=áë¯84~Üëà€ÇåßùÂçktz±X|:¯*J1•­jµŠÇ@6ææú&sNP$éé´j±DzÊîÄ«C©Tz´níhÃ`ØÞ¢oÒ™ðmbrSŠë{$©áð•Z¥TªŒO(ïlÑ·Y攢¼Be9^4ª²¼ ??/¿@bg§·‹Kz&¶¬ ×Ï7ÀÉÉuв¦;5žÌ/yuX˜wéÚÚ:BdXx€¿wM]“»õ½'Ž®=Í!aþ~Þ¥Õ­}=mÞ~Þîn®Î.îîn1É˳3žÞ~¾¾ž~A«›ÛÇŸ"4ñ*34°©•˜‘ÔÕ=”›™ž0=?—”çboãè ’*xµÄbÒ£b6X{Kä1lAY]yQHh„·ÏÄÌB¨ûóÖžž,l±V«mª,™^¨¯* õò ˜§Ò{íu•ÁA¡^>Þä™âܬ?Ÿ{­ÒwĉèT^àÒó«òsÓ»úÚý}||Û:ºâcb©¯=¯¬Vûö§2/ˆW9éýãó¢ÝÍ”Œœ®–† À@_/¯æ®‘ä东âÚœ\¾T=Ò×^ß>8ÒÓèïééÕ=ðc 1”W¨>X^1×ìGH$|uuuqÞó/ûˆ]výÃcõÕU£äE­Vo¾Õ×Zãâ]”‡½oõ"#3³sp$3Ö/)'wlˆˆÅäGx:º„â²Óü"’šjK>µèírqui&àŸ=´#…ú”:*Í›¼ÂD~ûÍUÏÀ¸-ÆÆÓ‡·#b“°¹ŒöÒüÌý›×#Só”GÏÛ‚Åçqâƒ}*ê»s"peõMøÒ¢ââOîaJë"=mêÛ}U*uNlPAiÙƒ»wpùùÖÏ'e—‹œsîïîäæ“•5»De26Â<ŸØ¸ò„Æ×y½Ã¿*ÎþæŸW윽˜ŒM‡çO¢R#ƒ½]¼‚½] íýGëÒ½}ÅþEk Ó£R±íµ%áqYý½9¹8g› ˆŒÄä„ÜâŠ@7W¶@^W‘—–ïjý,21=:ÈËÞ#@©V£¼Bõ!ójŽ4hëâ¿'ÑV–«‹ÂC©Ë36îÜ=ÁÖÆÊ*më}ü«WSCmAq9ÓdrNVN€WlR6.1¤¬_Uâgo˜›•Š«nYšr ßÛÝöóõ®­¬ðt %E™ µ2¹òM^eEø~õå—O¬Ý¹\¾¢09!öÅKëÙÕÍê¢lï€ð-Ök€Wp¤«ÑÞÑíåÓ—3sKÁ~>ié96/gçWyÕÒhëé¼J ÷ÏÈÊøú˯qyùaÁA%•-¦ø¢‡bGsjJ²õËúV"y„hmí4»LìóW__þúû{O7hÔ®_MÌÈÍJKJÉÊël¬rtt}þüÅ*}`ññà«mꬽ½£­uq,/-6,:!ØÓÑ/891)xåëäÀ•¨jJr"¢R¿ÿîjLrVFJ|lJŽæ"b, ¼Be9^q¶hÖ/lÊJÊ‚‚ò³Ó‚#Â9,¦‹ƒ}aQY¿o÷(Yó>þÕìX·­‹_Q^vtŒ<"œÝ‚1 ÁqqîNAa1àhüpçe|BLQ]çòô gP$Ÿ³ #Ñz|ÍÍ+?TVVÚ={ÚÐ5¬ÖèÞäUzˆoY%ÁÕî9&¿(È×·¤¤èáƒ{i™ÙÿëÿŽŒonï‘+Ô¯8<ž\ÌûáòO÷¸¬{?ü›Wðàæ·A1©ÎOÛz:ïݹWYU}íò¥¢ÊªÇ·ïâ ÝíZER=HÏÄxؾŒŒMº{óò;—ZB=‡–ôt^`Ó2 +Âü¼R³ò=lÂâÓ£BüÒ1e|ëÛ/?³u’)Ô¿Â|»A«ör|ôõõ;¬]®ýóÈø4O»§Om¼B#±w›‡˜¢Òg÷¾‹HÆy:ÙF%fÄ„$çk´:”W¨>d^鵚‘þî‚üüÚúÖÊLÿРZ¥œž.Ì/(©¨Þå NßÄk¼ï±+*ª'I㥥ÅX ¶oxru~ _ß0@ì-È+¨ªª*,)ïêî[¡ñ9[=ýÃJ™ŒØ×;ÚÓnuóqNFfyžÇÿÅÔ·‰WDæ6oŽ4ÜÞÑÛÖ܇ŖVU&Æ'äåçãëšö÷äÕî.¤ö†šñY­VÝJ¨),*­(-!45w·70ÙìÖz|AaI^AþÚ4Ü_˜Ÿ_R^¹¾±ùã#–sóK+kãÃýX,‹+œœšÊÊHÍÂ`JJËwx‰X|úüÕÂÜÔ2¹±Limï]˜›)+...)^Ù`êÔÊgwoV4ôœî¯^àýÁ‰¡žú–.­N7Ú߃ÃåW×T––VwtõÌ­ÒFû:`\€ÃÁxe~¦¨° ¿°piq!÷ Q^¡²¯@µ’ÇåJ÷å:­F©4Æ¡Òj4{{<±Dzð®{F¯ñêàÀ ‹U*•€Ïßåp”j^§rT*%lj‚ÌjöÀ S(U‡‡Æ×{­N {GS×hb‰ìð-÷U …N5”Éör›ÍK$j¥ñ@P²@ BféMërãQ E¾/=zá—D*S” ÂÛÛƒ­ÞúÃáÅÁÞîÑÖÄžžž¡Ñ ™BÎáìòøÆçŒ„Bñ1œ½=­NÿÎñ Z­‚l½T¶oÐ#ÝñBÃÁA{]% Q·8üÓ[ôy¥Q)‘xzð-`¼S Ëö÷5:½æèë0~SjcpÅ=—·Ç×.fÑ Ê+TåÕyô¯Î&¹DD]ÝÔôZÕ_m½¨^§•HŽx*ÛÞ¶ÿ™×‹n¬,-.¯½“ èzQT(¯>p^Ã"¿¥†ŸÌúvã[ªÍm¡¼Bõ/Î+‹>ÓÕÕõ/õ<Α&>¥|ä£÷µ¦ :>??ÄÜCbú·ÇçÑÞ‡ê ¼úì³ÏÚÛÛ'&&&''I-2™œ––†Åbá'•dAóóó{{{ͯOUUU[[É2‚úŸ¡=OlLhd¨‡Ãà€¥P(\.wiiÉdWWW!}}}ˆº¹¹ ¿#àM÷»µµÛl6Òa¯‘‘>Ÿ¨!E"‘ óo{{{r¹2“—ßÐÊÊÊôô4‹J¥"±°À")&‹DÊB,Þ µ‚Ìp,°P`&øP7°L&*ŽŽ„ÌZ?U………¿ÿýïÿøÇ?þGú·û7´'¢2“W—.]ššš‚+eAŸÂáp€¸Œ‘?/\ã#6æ=ȉf[F@¤ÁÁA„0o * P(/`y<àRÀù+“ïv xhð¨'dFvh€…mèò8X@àR 342ì¨ú½K>%£££À.ØFÂ"‰þw¢…2pF,‡X |ŠTì;yš››ƒKnvv6à»‹ŽŽFÝ-TfòêêÕ«pÉ!±Ú,!$X.ô£ãË/P0Ø„^c~áÐA [Y¨2 @8*Z­öm r|ìf²¦8ê¯EσrôGo@{38Þ‰áþ` ŸñÕbGo1;.Hßø¨D>5Ç"¦!9ô‰Vm†^«ƒAy…ÊL^]»vÍ¢óWð›ã5p,7õ^óÛˆ3f¹ù+ð:Àñ\{žG}}}à }huËÍÍEy…ÊL^ݸqâ÷WoGye¦ˆDâÈ«ÌÌLôv!*3yeéõ õõõ–Ž/Šòê£æUFFÊ+T¯†††L¼’ŠøTãxüÝímöî™oÄ›x5ÖÛµFÛ~ç¦SyuØÓ\GÛ✃fçâÕ®·­mO µM/ŠWBÎÎâÒÚE]3(¯P],¯Tû²™é)úK¥Tíq9››L…|~fšºA×ë ïÅ«¡îFŸ—¿¾²8>1)“ÉJsâSsóÅñê2R¤2…\&ÛÙ¦OM‘Yl™LÞbqµ*w—Cž"Ñè[¯…`2ñ Nš•ˆlO"æ m2X ¥|yiqqiiƒÎÔê G¼ZÚÙbîì°ô†­FµËá*åûSãcs Ë@Ñ8G"‰¼ËكžL¡ÔiU¤‰ñ5ÚëAujyb|naI«Õn¬¯-,.®Q© ¥šÁ8¯Ô‘~^ët®p+’ì+å²i2y‡+P*öG¥b¡Dºÿ«ñJ§Õ"1éõ:øŸV­‹%PùÁö¸äL¥R‰¬üBÞW )‘ÊP^¡úmy¥UícÒâƒCCÜ=}Úœl¬3r°Øô¤  G;Çá)ŠöTdý’W‡e¹IWnZU”—†F†•ÖÔyÙ?~éêÙÞLˆŠŒŽ ÈÎÃw¶Ö;»¹ûxº={aëãíë139ángæìâ9³´~ü¡¯r#Cªª›bÂ"{{‡b£ãƒ"È3ó¹99nv/ŸÛº ¤ „W¬-z\hð5?6ž“WQŒ‰Kòñô$ODxY×w´'¦gk4ZB ¶gh¢—ëéé5D¦ã\[šíïïÓ?2/+Š ¸vãû%šñ‹çà•2ÔÓµ«£74 bvn)#51:&Æ7(¤¥¥!26E¡Te%Å O/ÎêØ¼/¯ÆûÚÛûuZuYIñÄäD|LTP`P9¡y´£&(2¶¡¡a•ÎÞcÑðu5¬­Íø¸X?߆î¡C”W¨~;^m.ÏÙÙ»L‘g:ÛÛëÊ llí‡{íìÆ&ɽ­ÓóT­NÿþU'Á-0¡²¼äöGÑqqƒc˜Ä t\il 3#+ÀÝÑÆ!—“ÑÝ‚òÒ‘46ìâêL¨©~ùÄazz6>"(¿²Y®T¿É+llðßÿëo.>Ñœ]–ÝÓûþ™™Øí]•2{÷ÆõÔ¼ ÕQš£x}ܬ¸liCV\DQeS[]EvNŽÕÝ2òËc¼lêZš½üU*5.>SPxûúµ´Œ,›gVQ)ùíÏÑŸ#?·KJJ™Y¢î²¶ƒÜí\ýb“É8Çü•ÖׯêïýGf>žB¼qíFcuÿvjîå‹““¤çO_¬1Ï>\}_^-ŒvÚ¹¬¯QìÝ'F‡2³sqÙiOì\z+ã¢â¢û§—”Ñ  _LR´G@xU1öÖý'B™åªßŠWs¤!g?¾@´47C(Ï __™±¶wãñ´•……·<†ü6^M wÅfOŽ—”ÄF…†E¦b‚JðÕEÙ)1 i áö¶À+\uÛêì¨{`˜Ëòññªª¨pw ÅEéñéø×âõýè_EܾõýýG6 æv]UyQÖúÅ‹á酼̸àȤÝ=ÒËW¼=þüXß“gÖÏž¼œ§¬øyºU¸9Û¤âJ£WÍ /]¼”*Ur˜ozfÆåK—«ðuéIñ¥U?Çë{u`èëh)**òt±/®jèh²µs[¡Ñ$çš¿:ÔxØX]ÿöšDêDoûÕË×ðµuñÑá}ci1!¶öî~rÅÙ#|¾/¯öÅ\G;ûØÈˆèdÜh_‡»‡wtdÈ^t5T…Ç$„F„öϬ0G|}Ü<^<µsöÈÉLqvõâKT(¯PýV¼â³™Ž¶véÞÞ¾E˜ŒÈ.gÛËÕ%5=ÓÃÕ86£y^Q&û_Ø»à²üÃ"#‚|]½ÂŠÒ#Ã#‚½\=}ƒ¼]í¿»õ,>>¦¸¾kmvÔ'$JÀaùûûÖáñ׿¾uxþäq[?éxÔ8¯r¢‚jë;‚½]SÓ±>^™ÙY÷ïßMMMÿ¯?ÿÙÍË¿¨¤J,CƃÆçU ‰Õ֮ͫ">ïñƒ;ñIi÷n]ó ‰õ°n#?|˜‘•ýÏo¾,®©uzö41%ÕÉÞ¶¥kôØdÝ!&-::1Õé峨ØÄ®_úþÑóì\ c‡s.ÿê@èæØÝM´yö¤¼´êñÝ»éÙö6v³Ô¹Ñ®ÿçÿQÑHÔé ¿¯^°ÉáÿóÿýóàÔraN¬‹D~Vò—×ná˱Á‘±á¡)9%9I‘Oml‚|Üýà U¥îAr•åªßŠW½–<1\^RÚÒÙK[]#MhÔê¥9rEY¾¾‰ËŸ¾6à5^ÉDüæ¦æùù¹ºÚšÒÒ²‰™E:u©­³k’4^UUÕÒÚR[×4<:ºBcŠ÷8ã$²Z¹?111Þ×õøû§¸ü†ævø·ÏL¼¢L‘v8Âõå¹þÁ‘Á¾î²Ò²†¦–¹ir[YUÙÔÜ%—ÿ¯ïèþàÁ0±kœLÑëuC}•U5ÍM PÑÁ^—7D쪬®Áê6™Û‹³äÊŠ 8Óq£&ÆFǧffg§Iååeå•Õ”ÅÅŠò’²ò |-Í0çêG$ùØP/yš2>H,--%4¶ié‹“ÿüöu›sž[‡g¸?HŸ Œ‡ P¦†BÃC³23CÃ#› MmS£ƒá‘1q1…å´åù¤ÄøÈèèæŽ¾÷ é‡ò Õòê•ñ}^¡¯8zèC­ÑŸÑi2¹â ™^ã€b_¶¯ÕédR Ÿ/8Š\§Ûß—kµZ±HG“¨éäXjµzcn2:4•AgÊÊ7ãõ!¼ÒjÔÆ‡l z¥R¥Q«øü=™1À V*•JÄbcĪŸÆƒÈzÍQܼWGaë„B‘B®ÑT*(RÄb±\®Ð 

è&h¼¾Af¼>”W¨Î0ßn9^¡ñú>¡÷Q¡¼z'¯Î¿þÊ^GFfPèt^ô†ƒó¡ìœ¼º¾£¼B…òêBxÅçlOÍPŽ:ØX™[Yß8Áïl¼j¯®˜Y ¾3Öʯ޶þê°*?{aqhœ/^Ÿ¦º¨pgWðÇëc3¨##$ý½ë媋å•xo·­¥yzaQ*¯¯®NMÏ ÷¸]mm£äãä1‡W­µEmÝèŒí‰¡¾ú†F.—áåËår‡û{ õÍl®P àÍÏN77·P—ZZš–×åréÚÒrKSãøô¼öØÃÎÇy•Ô38»»ÍX£ÑÙÛôšêÊ©Ù%±X4ÐßGì뛘šU©‘x2KÛLÆÒâ¢ZkPÉekë4!Ÿ×D¨ëèPªÔ/:GHë´Mhö6C –ȥ⦆º¡q²î—ÝS!·5:ºûr9yb´—HIö™Læyâõ»9®3¸ Ú‹+ó9ÆÓ_Ý‹öLcèT6k‹Ë?û*÷÷å•R.G-W*äàxÊÄ¡Õ{êƒ"c%©˜eÐ+”Ægp¤b!skåªß–Wj™0Ä×-(8øéSëòâÂ[W¿MNI÷÷òóztÿ~[ß/¢%¼‹W‡å¹Éÿ¼õ8''ÛÅÉ+2<(»°ÄÓÞÊÖÍ›P]à›[[Qt÷Ñw‡ËW®{¹{XÛº {ï^¿òðáãAÒ)ô5^a¢C óÊ\ì\»»ú=\œâ“RÜÜ|FIdLnγ;7¯}ÿ˜/–#¼¦ù:ÛO,І:Œqð0iqq‰iÎv/ëZº£¼m­ÍÞ¡Qjµº8=¾¡½'>"(*&Þæå‹ÆžáãeÇGù†{{ºµõô×”x»ýé/_c0·ÎÃ+U˜·{Me“ÇôÔŒŸ¯WLlìK;ûÒ²'7‰l?ØË81)«8>з®e «¹6#-íö÷×S1¥1Þ¶u-Gñú°ñaY9¹ÿ¼t)9-Ýæù£°˜lµægg2+)úÞçñ É‹ÔÍ}™ÔßÑ.4.}_©bœkþJëùìÎÿø?þ¯|×âÄÀ対ÎÌÊzt÷VjNõ˽=ÝOž¾Üâ ÏOò ¥$]¸þkÁsnM@èEOPpà½;w¼IÔÁÁáÔxúåŒûóêUrÕÃÃwäx;ï93/'/÷¾ãÑ#ÌŠÇÁÞ篤+U¯g®_I¥òí÷ƒƒ³PØqÒÉéNVN°¿×ÅÔÛt£_Ÿ³§ïkµ:šê{ñr¢Ý»‡ÅiI‰÷sKgùõi+Ê 2óÈnSnÜ»‘ìFú©_nP’Eúõx\O’ª‹´û¾°¨øJB\EmSFbŒý!%"^=1¹dׯ&Ç•þd’¯Ï©‹×2YÜI>±ŒÈ#NÄ’Ü» WáQMq[u`¯ÞË'0%9‘vzP9ô ±\z¥’I”¢é浤HFô \I ¦âñ„ò'Í Ò+>·ÆÙ•œt)ÎËÏŸà›™rÞŸB‹ñ'{û‘=N8t<:†qëA™°å 5*fPÚNËù-ÛÆÂŠBqøÑ¡ª¡m¶gÝ»óÁØÓÊë/0h§£ã|Èîôhž€‹=÷íúõn^ä³1—ÇÞ¼õëÓi'ÜûPbGG†ˆ'އEžÁÙÛzSÂ#ƒ¼Êªª]ñŽ!ÔPËÝ;îå2iÞ$ZDä üñbÖŸ®0'ÆF††{¸8Çœ»`m¹õž!èZ´{ ÿSn™x"ãF¦Ç |ä:àÔÐ*µÖ~óõº>95µ ´L!ëMOMfÄœ¯ojGï›@,£^$K¯×h4ºY¿;æÃÎíóê Õj þo“P€ÆP­ñ¬@´P‡=ÜñÆP—¡Uðñ¯9éBÚ€\1w}F¯ôú)üÙô4ËjµÊ‚Tí¤­væ|Ó+ȃݷ Ÿšš˜Ð&º°ª)3ûûÆhE)GZZš›š@ظ­íÏ&t:H×LNbÀ`•L/ҿݸ³†&½}ÚÆ¸SÕPXH@zf®F«{³´zmW«±^U*Uª×€F3jH…ãñ´jllD©ü»f¤WˆO«W‹á“Ü/ªÓNŽÍïeºd÷·ƒÂißñ—ºa–ûÛõS2¹lö[–L¯–¤Wˆÿ˜^}ô<Ò+ÄÿJ¯Ìê·™››[SS§Nf*¿±±qddÄôü@*•šo»»»ù|þ?S¯Øl6òëCü«õÊÎÎÎðÎ÷W¯ºÍŒÜÒÒÒ²³³y<žØ<€¶´´˜ž¿´´$~¶fjˆ3 c浂D¡Pÿ0È‘H$"‘"lÖÎDè4PTö÷÷Cfˆ#ج‚(“Éà#Dly&ÊårØ|Þ`þW :Ö˜ R©Ä½ /U(*•j``"Ô;>>Q­V÷Yè7„N§#±B˜¨Wk×®µ´´´²²²4ÖÖÖ6lظqã¶mÛv˜;wnÚ´iûöí°`bþÍ›7›žÿ#Ú³eË–­[·ÚØØXÍa×®]PûÞ½{¡7 ZXX@„^²µµ…UðDZ{÷nHÙ³g,C ûöíƒUX„tˆˆ­‚)X„ ÐÏXÜ¿?ĹUÃ&ú *…Z¾3Ø#G#ÇŽ#GuqqÁápD"ñðáÃííí===8@"‘°Æ›^8¶ïëÖ­Cz…0Q¯€U«V­X±âsóð™‘fc¡…/o{°µsã°råÊ™ºt¿0²zõêÙqÍš5ðµ™ÓKÆZéÂt½B –ôcD ÉB ±B @ þ–߆Mž€ endstream endobj 26 0 obj << /Type /XObject /Subtype /Image /Width 400 /Height 412 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 10122 /Filter /FlateDecode >> stream xÚí|SUÿ‡ovÚ¤»ié¢i  @YeK‘YFÙC(²—ÐB/«l¨€¢ˆ€8AöªÈ‹ Xq TT¯Š ÈVFG~ÿs3 ¥+I›æ&ý>÷Ch“sÓ“óä¬{Æå8UQ&öÐ fH$R©L\ág©T*á_…˜JÉÌ‚D&S(J¹!í%ü3FøyGrö²‚½ÌžA†±U¹$–ÈäL„ÒE¥R»{øÖhÜqà¸éKV½úÖ;[wìÚ³g÷Žm[ß~ýåçæ¤íÞ²n §»›Jå¢T*ÙIR1Ê±Š„MRVI¥.^ÁµbÛ¦Ìzãè÷§OŸ½xë^.!ïÁ?WÎýþûÏ_ìÈ—¥Õ¨eRV ÉX!†”¬€ŒÁŠ ¹B)•¨Â[ö™°òÀé»9÷ud÷ä]ùäÕƒ;Ôõ–HYÇÊ/d“rRz*µGTÊ‹»_Î#ë¸ýýÁéM}ÝYù%—JPtY3ä ©BÙ1óÓßnåSù¸wîÔ¦AqA®2¯©kqÁJ¥Ì«Ñൿš]>•Eîõ}“Ú±'— .±¬{!•³bªöøgs©b¹ñÑ’fÞ*… ómH ¿¦/ú—l@Þ…ÝCUJ¥FÌ,©.Jß.o\Ö‘­È9::ÌÕ…1?R>ïDM*©Rå´åÙ”üÏÆ…¸¹ÈÍhlIçEn)”ÂqYt£ð‹”îô™ÃÕ+nõydkn¿ßÑßÍŒ,¢¡ Ž;³…Ë’>‹è±ðcÉÕ©uH•jÿ¾‡ÿ¥Êà·5<\äÅɸ‘½î¤†‹¿AÙ®n'éd|-òb)?6C¯Ã5›Î4çÖe+¸ø“‰®”åÔÍ*W÷ iè¨rÈÙã­’©ÖÓY+ŒH[‹(›Èý’”N|N`° "ýÓÚå”Ȳ‹†»A"'Î.îÎP¥‘¿¶Ž—ªH!–²H›M͹lÒòåÕÉ3F¬èÒR6—Dë4,cð•ÉI;oÝ¡t÷u–*Ýó5½\e…STL'9.…÷Á£ "­ÑÇ™-|kèÆ0kÑ4–÷áå´×Gän^ÝNäU¦º•ì©,|ý„H niOR-±6^Ä2ޱ¬pÊââi¹È+>ˆ/ÕÈÍ™ó‡Xªòyé:U.Ù üÜ+±¶Ð ¾†H¡ìDVt±òÉk¾þHgÍ^êãÊê“læ†ýÌ,1ÎZˆåîš6Ù9•ìãʰOIᘬ£3gX)µœ½œÈ¹e$±Vm _:õay¢9{z u†ú 7'-®\}‚úýJ•ÍœHµ¬Ðw|l††å Kl…þyöÀ÷â*åŸ=ÉŠ5&¨–³ú¹U q¦Ò},ñRò‘Á?}¦Pä‹Ô¬–Éâ³¶ó!wŽw¶Ò}¼æãR¸ÐŽÍH|,vñÒÇã;6…$wÚÖ®DᥞôG¥ûXPËÏUŠË¸E|¸úDÔK;Wé>Ö´|"@-Cúõá[£AzåûXÛ&*>Šóá?í|¥ûXÿdt»Ù>ÄqŠ*ä£ÑôÊ÷ñjÛ |dÒq |Ƈú>9íõªÇ}¨ìçÃÃ\½ˆ¾©"å•Tå_»±=|$Æ{ÈÍŒäÛDsáC0>d7ˆâàC0>:<~>ìêãU¢åð!’«DMáC0>Ú]Á‡`|¬#zƒ¡ø²â*>ãã)¢s"øŒ×‰Vpð!rÖl‚ñ‘DtšƒÁøØB´>ãÃõ¢øŒ>D?pð!»‰fÇ`|¸Ý£G§"ŠÄ¢âjâÙÒ׳ ÜÇÓD_›>œÜ'4,<¢(áÚjþB$4¬˜ØF„iµ¾2‘ƒúx—hª)kÎ?õCñ|ºo‡Ùy¼„øžÊô‘8¦ï"­áG±²ö&rvk•b‡ô1ŒèsSD=lsûëz:¦ÿ¥”ù´Øã,>5ò‘9¢ï\Ò…˜|ø=¹ßY||ÐÜÏ!}°â곂ÖUµvYÎâãp«jéƒW“àC0>¼rH ‚ñ1˜è8‚ñ±· 3ð¡ºGT>ã£Ñ·|ÆÇF¢ øŒÉßD àC0>šš& öö±”h-‚ñq’( >ã#€è >ãcÑ>ãcÓ#sø°¿¥xøŒD7%ð!èð–Çða_ë Wðagßµ†ÁøpÉ¥|7øŒ„ǧµÃ‡]}L$z>„ãc3Ñ8øŽÿ=¾ˆ>ìéC•O¹ øŒÆD§8øŒ‘†½óáC >^&šÂñqŒ¨#|ÇÇM¢@øŒP¢¿9øŒ.DGáC8>f½Âñ±™h$|ÇÇwE7…ûù> r‡Áø¨MtŽƒÁøH&:Âñ1«˜,áÃ~>6€áøø’¨%|ÇÇ-"?øŒþ>çU͇&H!Tmn²TU|ˆÎ°gÓêcÔãs}œßG:iØ?…0},-nKQçöÁßÿGªß¸S€>¶ ¬b>RŽK!Waú8QÜ퉜½>Wd6? ëDÕªšÓ¾ÂóáIô/WÅ|$,ힺD?U5g((::Z*Hˆ>¬b>D†§µ‚ô1Œh£“û¸¶kFû‘ƒ\/™C´ÈÉ}èùçëwæö«§¼uDc«‚ºs¬žð”V,\{ˆz:¹o_ÙüéÕBÏÜû~çâ”_!úøø±•µÎZŸû$ ]¶÷§œB/\ÿbóÂÑ½Û ÊÇ)¢èªÓ¾’Öì2åÕìË…_¿û@@>.™K]úç ÍßúÕûE©d컡¬r>LCq-G¬Èúé_!ùåsUÕ‡±>_ø—p|¨Y˼ªûR}®!º ÂñQ½˜É¢ða?¡ð!(AD‡p|ø]†áøð&ºÂñ!#ÊÁ‡púç7‰¼àC8>N?rWø°¿O‰ž„áøxƒh |ÇÇ4¢àC8>’Þ$>àÃ;ŸrÝàC0>¸¯ˆºÃ‡p|,&ú>„ã£{¹ |Æ—M´>„㣠‘®uUõQ-å•T¡í·ÄþrUÜ?Ñ7š“öÎÒLh>¯ýPÕ|mÜ×U û‹¶Ë%ú-¦ ;½š¦sœ_Máî§ß› ¹;Ò0Róc•3ûPK8åÆñÑ¿_Qw~îä1},7ÐQ§õÑaÕ¹Cܰö,Tþ¦.øÑ!…úÅh9n@#™ƒÜOX¹ˆŸ‹Ÿ»e3Zí]ì0÷cá·*ࢰËÅ™|Œé/ã¢ýgÿöx2,àjò~Á [œÇÇÕm©^‹%¼iA]ÓûBœÇG¶c]/i¾îF)OÉÂõ+{•W)&Š‹œó;|ØÉÇX“‘äŒ8®ø§Ó–¾–uüôø„‡½‘ð§f|‚ññ({úèC"øØõø€ø€ø€ø€ø€ø€ø€ø€ø€ø€ø€‡òÙÈ>ÚÆÀG1H\ýìå#È]ðá>¦«ô(­ƒ|h"N:]Ù1Ê[õdt |ç÷fÔ¹•£ësZÕ tƒ¢>\¼#â“vܪÜé¾y¦y”¿ >Šú{ië·›ñCåf›/'7­åç"…¢ŸÓ=8ºÍ W.äWb|îgïÔ ÜÛE E>§L]-2¡Ûø-—t•§ãÈÌþOF‡x*DðQäsJ\½µqO Hßögeå.ÖµIMµ >Š«@<"›$¥ÌxëÔ½J©Ê/X4ºWëºÕ½-©>ªŽ±ÄÕ'4¦U÷áÓWr%ÏæQ¹óæyãúµ‹¯áï&ÃGqD¡Ò„ŵJ–¶ló×m[hÝÿ1ë¥cú=Õ02À]iIöà8¹_¢Óø8ÒÒ¿d"‰ÂÝ/,¶EÒ ñÓ—½õÙ%›µ|u·NíZ5'uh϶ñµ½”–Ôü>â¾-ß¾~ëN±\=wÆ"Î^5ÜÀ,ïæy3B_9[âû\ºiºšîÁÍK¿|ýv±±½ucWcM)]/±Tá›Ð¡ÏˆÔ¹Ë_ûø÷;¶hjÝ¿tòL;(©U½^.r±E:8©wTÒøù+ž/ÊÊ•™K/4ŸÕÇ åù=KÊ ºüІ²‚¼°ÿÔ?ƘóÛûk¾°hqæÊbbûüŠ»Öñ–”V6Knš'â[w02uÖ’5;?9w¯B•èòþþúÀkË3ÒÇI~ªiݰ¥Ü²ÜÁŠUuHý}‡ -JÊà§ôë××LœÐÉ÷?L/;줯šõ¾Ó·œ2•*׎®nx²ÿÀ§‡Ý~„¨Ký62!jï ˆ˜¦‰ÝŽH1Åk;??w³‚nJ˜wçÊwY›^\<{ʘ”ž›×¬®q·\«Ð=ƒ"câ!>¾~½Ø˜h³ˆŸg¸rzvYB™aEG'5‹6—Fc7›–ÿê~ØðL½èè˜Ø¸ñÅÅ7.2ȳŒ‘8±DáêéW½v\B»n†OŸ³øùµï|ôã¹[å­Þï^úíËÝ^\6oƤQƒ“;¶jP',ÀÛM)sûËTÞšbðõõöö2‡Èç®éÓëPϲÃúÚëe)ÑÏî¹nüÜÿšÞØÛÛ·Øèúxº–]X³JDåí_=2®I›N½˜>s~æ ¯î8ôé©Ë÷ò¬hçåçÜøõËÃû6¾¸bÑœé“FéÛ5±Yƒ¨ð@_7¥Ürz#"‰D*)±D½®Ïð·VÕ4'ôŒ™b+4žý±©è:ÿz?Mñ±5§pKä.nÌH­è†Í»ô4l\Ú´9ó—­\³qû»Ç¾;íÖûfe݃oÝüëç/íܼ~U梌Sž9¤o·ö­šÄÕÖúz¸*%Öé(Í÷ëkÄß'º™ÑthÀqëÿ”[×Õ¿#ÿÿµ’Yù6ìë§pQ{ù‡„?רe»ÎÉ†ŽŸ6mÖ|ÖNxyÝkïì?üÅ©_Ïœ¿xåæ¿÷rS£Ë½ïÖµËçÏþþÓWÙw¼¹~ç×Ë—.˜3cÊÄÑÏ<Ý»k‡ÖMÔ©àÃlHE¢Ê·Ñö#}4?I6ç«ÐakŸrÿAíÈ7L=ଠ‘V‘+Už¾LILÄ6OuIîûô3£Ç§¦Ï˜±`IæÊ^zyý[¶ïy÷¿ïxôèGe3>b~ÿÐ{{wmݸᕗV=ÿÜÒ…óæîÞžöì˜Cú÷êÚ!±yã¸:5µ~^n. »Øhÿ©þ;³§©Y¡ÅÏGUÈ_•4™ó‰©è:»¾——Uo"fõˆ‹›§oµðZuê5JhÝ®S×侃R†71mÊ´™3çf,X°hɲçž{nùŠ•zV,_þÜsË–.^¸`^Ƭ™Ó§Nž4aÌÈ}ÓûõîÞ¹}›MêÇÔ®àçŲ†Ll’ªóú¾Á³¾¤Íâ*ôo{ôXc Ï?>¿™ÔšLÂ*¥«;SQ»NLƒÆÍ[µmß¹[rïþO6|Ôèq&¦¦Mž’>uê´iÓS§¦O™’–:iâ¸1£G K2°oÏî]:´kݲi|\Ý'jjC˜ OW–5ÄvÈ\§¯ô½Wª›Øë• ^ƒð1{nÜÚ3&ª\"‘)”*–Mü‚µ‘QÑq '4kÕ6±}§Î]»'÷ìÝ·ÿ€ŒA<ìÿýûõé•Ü£[—NžjÛºy³&ñõb£j× «XMãå¡rQʤöȬ?Æ'ýƒÌ Þ¤µm¢!m6ïsSõôšîîV)‘ÈõN¼5þA¡a‘OÔ‰Ž­_?¾q“„f-ZµjÓöÚ´nÝ¢yBÓ& ë׋­U»FãzÁÕü½õ.äR‰}dp±ôÃ-+«™¸æ"ÛFƳçú³F%¹Çf7²"IXõ.•³²Kåááå£ñ¯T=4,<¢fäQQuêÔ©£'ºnÝ:u¢¢ž¨]«Fx¸¶zp`@5¿]1žžjVFÉe{Tàzª½Æ7¼ègVè¾;»Ø>JµÆg™6*º¶í™`ë]‰Œ•^.®*µ»‡——ÆÏß?ÄÌ?ð¿U«æÇzž^^žn*×ÈíJ™L*±— åLþ“ç¿jÖw—ãä•/Y«E'L×XÙÞÅÚΉ„×"—+\\˜•Zíîîîa„ý¨V«U®ì%%ËLDÂSœéñÿ÷›ÕrõM›\¹‘óíÿÆŸF%÷M®ký‰D"±˜ïñKezä ÃO2ÃU ‘HÄ €°wùÏú]¢y¡³F(+?Šu'2 _x­·çÄÈþs—}Ê¿FJÌ«ÖêK+»àÒ~妫}ŸÏmb»FOföÔËo#—¿ÆœTÚWÓ¾ßàg¶]+¨á‡Úæ¼m¿(Ãï2þUC³7›dÿì,i2· sò]æ“ß®¨¹Å~®ß¿›jFQ%I2îJ.¼ú¼vÁtùqÿذ ®MCìö¹óÜOÌ)ƒb¶d ¬Ú«;åÓ^Ü?¿Ð^É9>ê·ødªYãÐh~×Î/™FNî¾7!ÂÁu„Ï>ÇO1elH[¾¡òšUÂËoD û‹¥h·âGÓ\çwË[›ô\hŸ1†µQî)3˜;Ç=é™=tô>Ó´®ŸV&Zßè’fØ%þóùŽn£²BÕXÒ”säíVþljtíÀ9’õ,ÒÇ˼®µ³»ˆs( jÝWó‹$ÖbþSʨ:‚D\œs<”íW™]W6öñ°ì{úlC{èØÈâúféƒÓéû¸éX+õÃãXÖ‘T .ñ¤Î±Gl7°x®.#Ì”¡*ÇnÍ»%¿vÉÔ]|®¥Ä¬sêN¶G0›Eqmiõ‚gŽsáQüÜ/cY×Þî[vÉ%±K,{±(¾^šŽû;pNƒÿ°½Ævpîá ¥~FûØ#‚ Xûã}iiß‘I¾œS¡ì¸Æ´ßÌ7õJ Öj¯Ì‘ ü“•§%Žu¸ Nàœ’¸Ù¦’ëÛûmtÝaë$’OXYZbƒ#tßt%笌|Ïx=øÆæ^7V¤œ¯Ÿ="5“•£mJèÞ²þ_0çÔ¨{½m\prwïàGÇàŸìÌÙ¥ãÛ€µÊÿSì+Ò^Û¹ª€ôÉUÆiv9‡Fïˆ+Yùª·]"ãú3Ñ'Å·ê¦Ï 㪠qs¿5ÎÙ>–ÊZ0švº°²†èv É^«RÔ˜zÜX¿ŸYZÝ^×èš±(¤pÀ@ð„£†iºÏSí2b.ù†h<<ÄC3ü˜aQ´îÓI•?sfÑ?!°`B6x{ôL9h¸ò¨ûhdåVêÖÔ› Ì™m¼á=ìa\Îþ¾•8£iÑ/rh0U÷hQá3âC]rgSGiåÄ –Uæ!ÂØË(Z|ŒûÌÐຼ¼R¦6í%ÚFvÛêŸõ“AÉWl~©7žõ~ê@„‘×+Ô_nXiò`WWÛ–[ˆÞ)íu‘´t$UE•¸í&ÃŒˆË‹mxÅ¢ ˵K àÓ q“RhZ/ÈÏFøúúúøúøxó‡·¯éa5_ÓáÇ>ü¡).d9¾Þî#>5\N9ØÝV™ä}¢M¥HúöÌï¥pöô±£G*ÃGŽšØ·kÏŽ][v¼½uãÛo¾±ëÈG†gx¸˜ÓöíÏÚ÷îÞ÷ö¼·ûà®ÿî4Ûr{ùÖ†ÔZb˜?ÿç<›ôØêå•:ÍB>ü:9×ê—ó«-é´_ßÎÛiƒÕRËʪgo+=ó˹áÞ•6åY YpQÿ^_ö¯àb«Ú¢¥™©7…åCWNw¬ˆ®¶´çúxœŸZ¡‹&ç}RF–æd>®u® ùcµ×ò«]éö¢Šë’(þ"êÖâ3K?±îÎÒŠšw“Bô‡>¬G>ä{ý&™sø8ÑT>ʃ¨çIý»N¨€š½6ëþ{ÃGyôøF¿‡Jù·6YB´“ƒòÓãþ³j”ó‚Ìy¢.ðQÈ&ó©ôï˜r½I;¢¿¤ðQ1hÖòöƒåY ·™h%E?wëï^VŸ¯fÝ™Xø¨ÀÆïb>‹,µvÒV/¢o9ø¨Hšòõú6¥ÕÅÕܪ裓 §Š¨ö°¿ð©UÝuKg3¶Äpºë‰×ºº»¹><Ô*ãaxp/Š›%# âL~ßkzëí‰N›ÌmâµÜÒȳ·{F§ËËg‡þ!?O÷ð0¼¨3ÒswÇ•/Ìya.;2VÎ[1ùÂÌÅ™‹—.]œ¹pyæê—Šð¼Ö¢t}&‡è+ЬµD+Ìñ‘z]W*Ba‡þ¡ÐQoýÀ•a=ó‰v[V^U:·ÛYxij;i™¥>²Î >ÌàŸ.–.çœE”×ÀÂsf½i֔д*ï#ÉâÉ´ï}má<¨‰ž†ù½C”jÑÊ{Dða#Üx¢óUé‰D?pða+ò+ÎQ_J´ >læƒOß–„ÿ?¢®ða;áD÷,(°Üò)Ï>l烻LdÁ6mYƒŒƒú8lQ2“h |ØÒÇ¢ñæ‡Î" ¶ô±žh„ù¡¯Õ‚[úØ^æÌÏGˆ ºffP÷)vö¡+òƒCø8BÔÖìÀýˆÞ33¨Ç¬[•œþù&ø¼<ã#CWüp#Ÿ¿Ô^€ÎøËç #ùÆÇ|Ê¿{î"\¸xáOþ0qéÒå"\ü_{+¶‡“Þ!ªnvèÅDæÞ$ÐwÉíJp²x¤E§{dÀI?ú”WÌ0ˆÎ4~Eºÿ-X8¯à˜ÏŽŒ… .\R„Œ1QVLmBtÆüÐïõ33¨¥û¨ >mQ¿AÁQ:ÑÕݬX²ºŠèuóCÿAdî­—5sn9¡#!jsqUXqûGWVéš·¢ûææAéÎØ¾:¬álÊD¢_Ì·ØœèsúOvJ~6ÝjÌûÑóƒ$zËliða1/ýfA#9“h6|ØŽD%AŽÛE4>l†ïE¢w-9á$Q#ø°²‰®ø[rë;úÀ‡­ØÀúœÝÞè&6b&{û™oAs>,$,h¼èBt>l£c{ó–3Ü’k+ða ÓØ{g[º¾dÑbø° Ñ öÖŸ©-=mµ%yçôqÄ>ä›xÓnŸ·ƒ¨ù>ì6>¨3.¯1µò$ÿöÍ×vÛ`›PßcìÝw*,?ñQ{ó}L½YÆrÈÏÍãv<`ÿòŰÊ*îܶeݰŠß¼ÎïLÇZkîOñ‘ùK~w}·¼+²nLMNj^ákl»ßfY/ͪS¿#ŠvÜú£Üë9ûGjÔ¼K­d ‹ÕíÎÖÌ2VXöÑÅM"©àÚÜÿ{ãÓu­<û/"MöQx?€Š(lÅowÀËÚÓ¯ù‡t*÷¢D3òXÕ1Ûú,‡üQ€–ÊíÃç{Ó¿Ú–ãXîòƒýW›Î”×GSþŽ«—g›%î"‘?|ðdgkÊé#-‡ÅhiùZkçJʨиUIÄyQyRÒsþ ËYâ$Š+m.ÝV ¬´j¾ŽÆZ¿ÝO_¾]õyõò6—2õZDë8 ¥W 'OžaOX{?;-_‘ÓÊòß‹{;Qï’^såËÓU¦½«±¶¼jñƒÂs¹ò³†hbiù®ÕqzÖÔçãOé/¯RW€.•X¡Tr÷† müãüûõ=aÙ”®V|ox§£¸ ¡])75ñÝÌ-äÌ>:ò·#ßì[Åzµ¿îsã­ëo¿\a7A d-(q‰Í+öA"ŒGQÁPTn~n^~Á³ÅùÐåò ¨ô&ùŽÞÉåáÇmœÅ·ÊJ0Eh‹A3׿¡à=î½?Æ«8X3­C /¹Qº(ˆ²ÉéöÒ«‡¥òJÿ;ÆÍaéâot,ØL¯ÕúÔ}|!“Ò;¤v|«ÎýFLž¿jcÖgÿ{ìA߯hïRá3è¶—ôZ>‚R!Œ×|÷õGåÕÕj…ŽâÊ«§Œ>Ú3>ó`Ô”Œåk7íúïÇ'~8ÉL¾_“wxT±õú^}4ÿ˜¨rúñÁ‘;Ykv!'ž0Þeýê+'õ}ªIlíš5#£b4iñä÷¦¸/ðsúë%’&s&Á't0·ÌØß{uî7QiøŽú ÌÔÎÏJDÖcúêíÿöç_Nÿöëÿ~øöÄñ?ÚEÕåÁ‡ñ(ˆü=ãæ¢¼²7ᆘÿò|;9îW$=ø`RÍ*2%|šlè¡vâñ(WÎqŸl·ñÓÞ{†ý÷ ž-vøãA±öï$/¥Rì°>¦Ø{<Ê0>˜÷ÐR1Aïÿó·õä˜Æ áöúéS¦¤8°û•LY"_Wú6£y9qÿÁƒûúüaÈ_溛_½z%>U uvÔË9×;ëzJàCH>zËà>à>à>à>à>à>à>à>àãQ½¤ŽêÃ)ï7¡ëë"“ɤrÃ!áÿ(Uƒ ²’»ÐïÇRÌ*]IËs¯Œ;füègGN1ixê°Ôaiì`ÿž’^„©5÷g†SÞðêÅ?ÿ¼tþò¹¿þ¸röÊÙ«g¯žù›=^¹pízQ^–ŠäcjU¿$½­ç´ˆmÞ"´¯Ä |À|À|À|À|À|À|À|À‡]}YabØÈJWÞ…QV³ËWH>¦•áC¿l¦"ùçŽqMÍk×®]½våãúõë·ïÜ-.´ieÔ?üqÿ_ýq÷;÷î^Ë)tÜüãÂù çôÇŸç/ž»ø;Î]:ñÂ_E¸|áU!ùðšsËÂïóã«ÎЬB+ë¶Q9†Í÷rsîÞ×§ªÜÜ<é¹…ï$eX•ûàá¡Ov=øþôÿ Áô+®ŽÍŸgbþãÇü…EX0¥£‡€Æ£|ÊôaÃ’ëÑñ¾‚góË K¥¯¥ÚÚ²a¼žì(ø¡à—Çið„¿\@>¼þsK`Õk~9Ïß榶•«L@Å¿;'óñfDd ˜_b[o9ìbgAö?à>à>à>à>à>à>à>àà ®_ùqŽìcšÐ|”w˜p_›¸ØØêŽêÃs–Ю·[2vRûÕ‰™"õQæø‡Î!ue)Q^ ‰CžŽêÃ9×G}àë –“οúPððððððððÎácú-gôqÔQ ½f;¥üÕÇ §:R ãQBâ°£–Wιß+ÚWððððððððð¶À-Õn>òîçÝÏ׺º]n~.¿Ë[NÞv°—òî•çú®¯ƒ^ßuë¸~ß’yïÝý{÷—ÆÞ]»÷ú}çŽROØ·kÇŽ]zvnysó›[6¾³që[Û6m{{ÛÛ[7o}gë¶-Û·ìØ²sóî·÷¼µw·>àŽwvì;pÐl}ÖÛA}(#Úöºd~z`© è? ðïýú (5|ßäî= t/‰†á’ºõ4Øv©£vP·j¡á¥VÚP­¶ðï¡¡ÚRÃZLphX„%„{8êý9±TVR©…¯—q‚T*¶™…Hu9'N§¤W›zþnrÃFb¹›D½6½,PªŠz‘Lí×:ÉRHnî§6î4ÎÔkÂb[vG²Tº·Œ Ó>mÚfZÊfLŸ>5=}ÊäÉiÀ¦Lž<%=}êôé3¬4-müðÝEiýÜ•Ó0B퓘Ô{àУÆXÆèQ£FŽ>왡))C† 6dÈ””¡Ï >bä¨Q£-Ô4jÄн“b"}Ô “z±ÌÅ]R3¦Q‹¶“º'÷²ˆž=“““{tëÖ5©K—Î;Ò¹s—.I]»uëÁ’¼gOË<%wOêØ¶E£˜š!w™¸`,P¡òô ‰ˆŠoÚ¼eë6–К§UË-š5KHh lLBB³f-Z´l¥OvËDµlÞ4>6*"ÄÏS¥šÔ‹Ä2¥ÚS¨ˆŒŠŽ«g qqq±±±1ÑuëÖ­õ°)QQuXBGǰ$g o™¨Øè¨Èm ÆS­”‰ ÆÈÅ™Råîã\]aÙÔ‡ðð°0­64´z¨ª‡ê'Àðe,ó¦­àçã®RÊ$7è1÷ µ»—·¯ÆÏÏßBüü4___o`s||XRk¬³äëíå®vQ0óLŒ‰ÅR™Bé¢R©Ý¬@­Vñ¸›£Ohµu–T*¥B&‹ O‰bò%ú™ZrËy8Ó Øcb[§I*•<.Þ¨ŸÇòyx‚¼Å­óbLn+=!ýÀìK`38°’ÿš¶`Q endstream endobj 22 0 obj << /Font << /F26 5 0 R /F30 8 0 R >> /XObject << /Im4 20 0 R /Im5 21 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 30 0 obj << /Length 2032 /Filter /FlateDecode >> stream xÚ­XKÛ6¾ï¯ð-6`k©—í)A4жè¢=4=p%Úb#‰Ž(Åu~}çEYÞõ¢9 ¬†3Ã!93üfè7w÷ï’õ,VÑNíâÙÃ~¶Î£]žÏ6q©töPÎþš?TÖ/VÉ:™{ÛkƒtOŸO"äŠ|_ONÊÎG †¿5z°gZüå!Î^´öü5º¨˜:vÆ›V&|\Ä ÃYçÅ:ŸG´•[©÷geÐ_»„‚Ìãy YÈœ“|uíSEg4Ý ÐÓÌÂ#@ž÷2"ïȱvt_`7ÿö<¥3²} Ä¯ã̈!ß|X¼ò j!oĮ̂­œ—mWæ¶Iÿò |\$j>ˆólë{£ËkG‘»ºë" ?ÓHòàÉœ£ó–/)Ž8 ðö‹ùÊUQž™-\A?º¶ä¼–œ3LÜg¾{ûpC&ªY`7ͷѹhî>Ý©h£H<ÄÎ㜙Êóþ}³žýàî~ƒ¿`q%&W›o^Äû4Ë#µÙ\e_Îø§“ÛšKÓMkJæ=žE¿eÙÛ®Ö|ö$`Ð’%¶gnQ™â£gšÒdÞYb/‚ÊPvá<ÑÕ5¤xyf¦nª°äÆš2µýŒOr@Ý•Ïÿø™9 ÚÈáµ×PÞ$ S¡ø&bþû=s½[2ƒÏ»†L!°9Sô®;ó¥€Â]ÉÅ{ͱ„/_]‹•sœŸOËó³Cçˆ$x‡<'!¥äÃü§»”5Ù?@UZö-Z|£þ’¥— ܰC×a^ß(’W´A.v3Èÿ4Ø‚Ï&¾×]O-Ât7/VÒÞHæxÕ rK™' ¤rßB¸é‹L÷TýNÑD,ùå‘ ¿uƒ¯©&-™2¯c…ãy-5qh¶³tï•D—§*x* šK ¥\Vië—o"o:yrÖ„sL…P¥P‹¡Ró½L:&N×L l(+%s±*Ìë#În`éÐBþB”¨ÐZ2ý׫)*ÝZ߈MÞ1£ãû7`üîs+tYR½!ƒà]ðh($c %dàF{R„ è:”=vÆ|1’GúÁl>Ü#ôdçP@C+§ý7xÿ.Îf»h‡åjAeÛt¶J¶Qš¯yËT¼aÍë²±²õNÅÛLŠÆbKµ>£.´Åsâβ±ýÍîX2jqSµÔAǰŠÄùœ­¯v7ð9eÖêHϹ6bÁì¯).2…(‹R„®›uÆb :#ª!Å Aª&ý±±ÔPNÁ€@:ÀCU,ki€4$ö¬Î¯d\Nꦅ7§h^’p'©ÓšÚæLSüÆ0­•¼VÑìÑÐ¥Q wÖDàCåyïQAVBª¤(º¶ý™ Çé–v°Å( D„oáJªè@–ÆÛC»|2ql€IÐG> endobj 27 0 obj << /Type /XObject /Subtype /Image /Width 515 /Height 404 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 31 0 R /Length 45995 /Filter /FlateDecode >> stream xÚìy@Sgö÷3ïL§³ö×½Nk÷N­c¦ÓNgº—Ô]Š DÁX\0¨ q'®qAâF·5nq‹ ( F0a „€pƒ^ ,ï¹ ‚ "`HÎ÷Hî}î’çžs>çü›o¾0`ìX&ììX& Œ eãn Édb¢Á5šÝôÅ_ØÙÙ1™ÌI“&Íž={Á‚7n Ù»woxxøñãÇÏž=kvÛË—/›ÝÜÜöúõë …"11þÂg˜Òì¶ÐÚÃRgΜ9zô¨H$Ú½{÷–-[Ö­[·|ùrÿY³f¹»»ÛÛÛÿý÷t:\ÜÖ¼c àd}è¶ÏÖ„Àf hÆ=˜Ê!CX,DÝõë×CT‡ƒ Æššš››[ZZZ]]m9?¹¶¶¶¼¼-- *ÀDpp0‡ÃqrrúßÿþgÎZ¡Žxî¹çlÖm;ÿ«ß|óMs&üÃ?xyyA™U¤ÍZ­¶®®ýNRR”Mö—¿ü¡€ê‰à™­ù$4ûý&&&Zk’ßs‚ª?66vß¾}sæÌ2dˆùÄ믿nnÛ™AB0¡@äß¾};ôôšD÷Š p̃Θ1ãË/¿{çw¨.»í /¼`¾vÎÑÑ‘Ïç_¼xr,Ò»WUUUéééÇ_¸p¡ô6äÉJêC†ôꫯÂúúë¯/^|âÄ ø±µµµxÜ{MZ­öÂ… PpÙÛÛƒ;? ØcÿÍãüPZ8Ð××’Ф¤$ˆTØi½¦²²2È“¡Ìg±XæA¤ŽÇ~-Óžþyþÿüç?}||Ž=š““ƒGÖ¤×ë###—.]úí·ßÂz饗ÿ[êƒ>€°ûÞ½{“““1í·Ý¿?..nãÆÃ‡‡\îïÿ»…¸m{ûðÇ?þÂËwß}¤T*1ó·dåååA¦çää‰ßË/¿Œ8°e@üÿüóÏ¡f·´ë6Q-URRræÌooïþýûwPÝ?Cúío ÁäçŸÞºukjj*¬¾¥¢¢¢#GޏººÂAlïî6ì%«ŒÿIþóŸÿ¬X±"!!Ó¶¾%‚ ¤RéôéÓ?ûì³7Þx£wܶ=C‚€Ý˜?~bb"+ ¶mÛ¾úê«~ýú!¬æñÿ)S¦DGGc/õu †ððð!C†À1…œ¼çܶ½\JØòòr<Ö$È ¯\¹µç»ï¾‹8°2 ¼ôÒK_~ùåöíÛ ±‹¬Ls¹ÜO>ùä‘O<ë üøã§NÂIÖ­””//¯GVØ9}/¾øâ¿þõ¯°°0¼øÇº•››ÛºËœ^xá…ÿþ÷¿'Ož4Øá6¢ääd×^{ YÐw)ðücïÞ½xئpðÞ{ï=¥Û¶µ¥÷ßÞ¼yA`'Û Ž9ÁKƒ>G ¸»»»V«ÅαA]ºt髯¾zõÕW»æ¶m͉N§_¾|;Ö–UXXèêêÚê²"ìK¦@¿~ýŽ;†=cË*//÷÷÷ë­·žÔmÛšÓ_|¡V«±KQµµµ&L@ô ¼÷Þ{×®]ÞAæÍ›×jt· •žžŽ=‰jf››[«»Ý±[,7nÜÀnA5+  Õí7§·ß~{ë֭؇¨–"âÓO?EX,~ÿûß/\¸»ÕR$IÚÙÙu îîîØ¨¶Š‰‰hƒ,°L|ÿý÷õõõØ-¨VJJJjusP'óŠ;v`ï¡ÚêþýûO:äˆê €–.]ŠÝ‚j«êêêÎÔòmoBÄ+…Pí©Õ#±C,GÅnA=R_~ùåc/%mûâÈýû÷cסÚ*;;»35&Ꙁ`Μ9Ø-¨Gê±·˜=òÉT®®®Øu¨¶ŠŒŒÄ›Ë,Ÿ}öv ª­îÞ½ûX·}ä­Ä?ÿüsnn.v ª¥ª««ÝÜܾùæe‚`âĉ'NœÀžAµÒÊ•+ü¤ øðÃE"|À+P-I‚À2A‹‹‹±sPÍŠ‰‰™0a‚««k@˜˜èãã³téR|iÊ,¡Pد_¿ÊÊJÅ‚Ü*¨ÚJKK±P ¦'Tƒadee¹»»w €€E‹-[¶¬ººûÓÆuôèQ0¤ŠŠ øŒ °L ˜A³~ýõWȱ.@)•J&“ ás—AÐ`zªÀªU«` ·o߯^µMét:6›]VVfž‚ °p€$ÉèѣϜ9ƒe›‚ì}ëÖ­cÇŽMII1Oy˜uõêUggç’$±‡mJ‘‘‘ŽŽŽlY", ¦ }ßóæÍÃÒÀÖ”––æææ¶råÊ’’’æ‰O‚ÓË1W¯^íäätèÐ!|Ï‘-èÊ•+“'OöññÉÉÉi5 AÐ'@ª««‰DL&388q`#X°`Áøñãccc[Í꘥Ñh–/_88~ü8¾óÈ*¡#..ÎËËkÚ´i lƒ è+ 0«¼¼\(Ž5jëÖ­:»Î*•žž¾páB—“'O>ò¬n7‚ ¹ä tppX¿~=uBDXXØØ±c§OŸ,è %‚ o !!!ŽŽŽ1Bºˆ¯·AB.‘H¦NêææùyMMM{-»féõz¨:]]]a`Oðrµ>*’$/_¾¼hÑ"›7on;„ °˜¹bDDÄÌ™3øûöíëÌáFYfåÇ:((òeË–uæ =‚fÁ>¬^½ö¬K,áa²|UVVFFFBü1bD@@|îüE‚¾ ‚f¶nÝ:nܸ‰'†††fdd`—Z¾jkk¯]»¶~ýz&“Éf³ÃÃÃ!!ïä²= ‚æ=LHHX·n$–>>>`Z°£ÑˆÇ΢”™™yèСùóç9(ñˆð¤+AXš•––¶sçNw“ üråŠÁ`Àîµ(Av}æÌ™ÀÀ@ˆÿ3fÌ8räÈÝ»wŸt%½‚–5Ë­[·vïÞ 8>|¸¿¿?Dž¬¬,“|VÒjµR©”Çã£!ý މ‰yšsýkA³²³³!Â@’Eâ/¿ü²k×.pd¼DðY©¼¼üêÕ«›6m‚>zôè•+W‚?Í|/ƒ ÕøÄˆ<žžž…Ù³gïØ±~]ó­I¨žI’pøD"ÑÂ… !…pqq+:wî\w]1‚ °J4 ù¤¤$$ŸÃ† ›:u*„#(óóó±Û{tØ'##ãĉà­nnnööö ,8|ø0dÑݲþg‚–ºwïÞõë×÷íÛààà{µtéRø ¤(,,D3xÊäáÆέY³†ÍfƒóΜ9sûöíÑÑÑ=qõ8‚ÀºAÐ )))b±800püøñšB/ /\¸>ˆìiÕôí©S§ Uöõõ…TyòäÉëׯ‡œM£Ñtûæ,­”——wéÒ¥ÐÐP ¤¬PBìÚ¼yóñãÇ ðÁ§í ÊC¨ÙÏœ9åx¥³³3$PmAï={6==½§ÝA`; h%½^wðàAà‚‡‡ÇСC½¼¼ø|þ¯¿þ ]NNN—/Ú¸ NKK»xñ"d¿CX†Þƒ´mݺuG… ôèX&ZÉ`0ÀÇyóæAî1dÈI“&-Z´($$‚ž\.‡ ĦîbŸ‚büæÍ›R©tïÞ½<̈ Y@Óì}à•½‹‚ÀfAÐJÕÕÕÜ ƒ'W4€Û‚ó‚ ƒ#ƒ; 3ŠÕvŽ d°à’·oßŽŠŠ ‡8?kÖ,'''HøÁ aaa0+77·—O›ö <ÒÆ òƒ!A¸Û¸qc@@ÔMЙýN™2ê@pàÀ`DllljjjaaaŸ{J*¤îÅÅÅ™™™P?Ìfûöí-üòË/`9àSnnngÍš5(ÆÁéºp‘‚AЛaÊy°çcÇŽmÙ²è0uêTGGGÈ~'Nœ8wî\ŒŸ ‚jµZ ™0ØRhh(Ø—Ë…Èi." a†à Gdþüù+V¬ Ú¹s' äÔ©S—.]ºqãFrr2Þ;wîÁÑìÆÇè†`ß °CŸ••l‚>”Éd/9rdÏž=›7o^½zõÂ… !¶C±Þu̘1P\ûûûÃ,H«À¨ÀA`YK¾AA€ xRUUUA|ýúuŒpLHx °…è4räÈÁƒ7ÎÇÇJ‰åË—¯_¿|Ò¼'N@þŸ’’•¬ò=½^ÿþýîJ§F#Ü ø±r-Àä–À2ØÕmÛ¶Aõ½dÉ???HéÁþÁy!/…)íwa"##oݺ»g±çM¬ ˆƒ8 f#—Ë/^¼(‘HD"pj 8d@ µ··7$'`xp4¡Ä°³³‚0™LHÂå0}„ @háÚÓÓ5ü…C¡?]]];ЬÂ\ô™WâààaY¨YÀª!ÿû+[‹»ëKËÉÉé»õ2‚Aнª©©¹{÷.a ÅåË—‡‚4;882m(ÿ}}}Á=<<ÀïÀã ß#|ØÛÛƒB6åââ³ÀõX,V[·…a:Ì…6ÐrŒI­VN -§M›ydk˜AæùdqËAFwóæMHAKJJúè)r›ÁÓ$ó@>•`hUƒF£$!Ó$°ø 9 Ì‚äìV§ÓÁ"¶ötn‚ÀdNæËÊÊ 8ƒ3‚ÛjµÚ¼¼¼f·ÍÈÈ€¿f·…é0Ú@KhKucY @Ù ‚… @ P‚ÇÊ|9¨5 jL´%uƒÝAн ðóósppàX‘ú÷ïF… °n Û"ºp¬¬Jµ¾_„ @ Û"hQº-‚A€… @ Û"hQº-‚A€… @ Û"hQº-‚A€… @ Û"ž•B©%Œd¦ÄÑŽ«|âÇöR>‡/U·šj$´J…Š0¶»˜^!f1˜b•VÂe…) Ø:›+1 E!’Q«Rª´D™hç(R=ñûîÕR>›/%Û‰ø-ÅàŠUj —¦l Uì@‰nÛ÷A`TÒi4¾’0je\6_õä cÐè|Eë©JFW´¿6)æsU%àIÔ„AÁ‡½Ð#‚Îù¶~gÔ†p8’Ì'JÈ Ñúv¢A{KiÄlð[±J¯‰ð%ê2~ m`¼ݶ/€À¨qÔzéL¡L З 9¦í0Ò‰ys=EÊr T•)9tº@¦ƒfal:[¤„Ï4-Íâ«ZˆJʧSë`3©)Œ:9×¼G–u›K7}f‹ô-§k3 RfÞ¾T…XE”Á4Z0”JÂ7Í¢ó%*´( ƒÀ(ãš}#”çh¢„f_e ¢’ijÂn&ñY,±ªPÌa°2XLiò[¢ðXf¿•¨ô-2~©i*“ ÿBâ¡àÕ ”úVA£1½3-KcßJø<±ªTØÑì„JÂlœ%Ñ£ÛZ$•ˆNcIŠ06uèuJS*¥ðà@³·%³¹be1Šá˜apDÙRR/ƒfB¥Þ”ºóä*9eyi“=Éaa&_¢ («(T"É—+£¨®©$\*sPêžÞT8jj6W¬#uB:ä5z3Ê´XW¢‹)TIµF´(‚€¤R2¾D.£ü–©Ð)™”£AæÁ†ÝJ‚\‹ò 2Å´`…^Iù-GcÔÁl¦P©¡ü–!V(ÅÊ¿›B¹^@§ò/¹Â„†°àáàpGÕ žÞ”’ÓV•zR!`Ðùò&hÌ‹¨Å¥Zt[ äê&º)ÊÃX”Á˜g`o`@%ää!…¡A¦Ä…!ñ´ „iJç)Ñé¬03î 5ò#'L%*Šð:yXóF€ $…†‚lh5½91 cÀRJX\Ð…Ôj›6F£ z´(­VÚ0ŽÉ÷L®wƒ*¢Åü¶ÉƒÈF€ßBüŽ.Õ5(Ô²&O‚”¥ áSù&¿U àaú‡ƒƒ¾)´ Í~¨„p@’¦Å©a3 -‚%T ÛZ ¨#NãjH½„c‚¾œ{«!…ØsÔe ˜Í“i›AÖÂ6Wya**bÃ1f µ„V*äñEM‡X«ôj Ub„¦T€ U¦(L¤`DiËZMoa.A±iÈH(×ê”R—¯ÐaE€ °QÔY6šDC¨©ê˜©(–S'Qé”&"¨‹Áƒè<™± ¤¨qàFZeò[¹V¯” ¹<±® .T9Á‘è 5ÀÆ?¢1´ Ä0‚b¥)HÈõ:¥Ç)tè¶–84¤ {°j:WmÐXßxuƒQÍ3Qÿ •r8*Lç}d&+‰2OR#e6-,R6§dŸÙ¼V¦PaÂJS;ŽÄ¨¡A£ ®><ýAEÀlÁƒ¡¡Áê$fSc16"l·" ì~+Ñ”E5ù-ƒ'%ÁSLçÞøW®:6‚ A'£r<^”Ö<úÚì ‘²yš(þƒµ2à Z²1\ŠxzSFF @1Ú€ÀР‘ò›·<ÕŒnk9  JI’ H£¹¨l´2½Nßâ"1’4v¸>#Ñ´‚–" }ˉÍ_›6b$MŸÚLŒ¨½%ÈŽ‚A`íCC”'èvR"[̌ߒòÛÑ à`^kÛéñ[#º­ƒÀ „… °9 Û"ТТt[ö?Z‚A€n‹ ÀþG‹B ÐmØÿhQº-‚ÀZú¿¤¤$%%åÒ¥K‡ Ù¸qc``àüùógΜééé9nÜ8{{ûA& 6 >=zâĉ¾¾¾Ë–-ûä“O”J%š‚AÐË*//OKK»råŠX,Þ±cGPPЊ+,X0kÖ¬)S¦Œ?ÞÁÁ|̲ÙmY,–Ùm?þøct[›^¯‡£¶víZ???77·!C†8;;ûøø,_¾|çÎÀ‚S§NEEEÉåòÛ·ogggUVVÂâµµµUUUð™ ˆÜÜܤ¤¤Ë—/Ëd2´%‚ ç\R$mذÁßßßÃÃcèÐ¡ŽŽŽl6{É’%[¶l·•H$/^ŒÏÊʺ{÷®Á`hå¶wîÜ1»mLL šŠ-€ ¬¬ ìA*•îÚµ Òû©S§Ž1‚ÉdΘ1 8wîœB¡ÈÏϯ©©Ac@ ,Ám›cþ¾}ûV¯^=}útˆöà¹ðÁ‹wïÞ IZBB‚F£ØŽÇºï‚’pˆÉ'Ož„Ã]WW÷ô¿ Ÿ‘‘åááǃƒƒ¡0œ4id NNNóÁ–öïßv›3gõ(‚ kn{âÄ ð#H°Ÿ~'I’„Z;..îØ±c[·n]¼x±———½½½ƒƒƒ9æCþY”äÑá1µ>€œ9sfýúõpÜô´‚‚‚ÂÃÃÏž={éÒ%¨ì vKOOOII”>É$ˆó 8p`Û¶mÛçÏŸïãããææ6jÔ¨‘#GªÀÀœÀ¨À´ÀÀ`+x|‚îÙm7lؾ6|øpÿ7‚KBe ‰øl¢•ÛÆÄÄÀR¿þúkHHŸÏ_¸páÌ™3'Nœ8zôhHÕÀ÷!mƒä R8ppHçÌ#9([AKUWWçääÈår(vìØ±nÝ:ÈÀ6fÏž qªB0ø ÙÈÒ¥KÁê I8räHDD,’ššªÕj1ÉG z-USS£Ñh$Ihh(С=·]´h85¸ö¡C‡€±±±áß¹s§¢¢‚… @õ] ‚A€B E¡‚»… @ ]–Á`H´.eff¢-!¬Öç¶fÅÆÆšïD³åXô¬î#pppàX‘ú÷ï,@X7¬ÏmÍúî»ï ðé§Ÿz{{Ûl,Âg u‹ðéU«µ¹•ý®®ýÚ‚A€ @ Ж‚A€¶„ @ üE‚A`i 0æJ¹|éƒ'Ç‘J>_ÒùɩıºMsB§Ñí.CªùL¦H¥‘ðù*Cn078Óˆ @ zÏÈI•˜/V·™LHøUko6ê4¢}UKù ¶XK­P•+ æK3»ÿw‘*OL´øÊçŠÚ>5ÏuŒ-ÂŒ”Eç(uJ>ObhåmdPði4¾þÁaW0è-¾>NJ>“'kÝœTðh\y{‹°E¶ÄØ`T+”zCü@ÚÀxƒù‚eý PòéðPR@gÈZgpŸF—µC .Ö zµR­WðÒã»ÿw2]ÐbôJÅ#’G~Óƒ½WP€Øé MY«(‡ 0u£„Ç4m„%Õe0lhšÈb³èL¡¾” ÙT:;JCBþÀæpa¶@ÑØÏ„JBµf°Xp„zèlƒN‰ÉSêÕ<µ¤HE(Dø@§ÑybU³±‰¨3$j­„ÇW–)ìhv­LH7mO¥A ÍÙ/| Åà ø&¿eƒÃ5!Ûäf,ÆØ ó8\ð5¦¢@Åg‚'186åt7¿5ù&ƒÍf0Šu½„gòfhÊ‚PÚÒm5¦Yt¶ˆhéãDóÞ‰¨¹R­Z©ÁvùŠÖí( *±YÔ:ÙaJØj TÐ3,6‡mž¨ 5Ó&9J²qÏLa†§¢*qAc”{(¬Ù8ôr½@(…4ºÐÜEy2.‡W-fC0Ö)0KOµ¡>(€™¶™¶:0Ž0°R ÃWè ¥ÌfH9t(ôr>ƒ'ƒ¥ÅêaKZ ½Ž›ç èL™Î‚bƒÆ¤`N(˜`Ì$‚A€ h¬®!¾‰5FB9-’$9Ω”ÃÉB&C TÀ„ZÒsB%,Fù1_Ѫ™ŒKg†Qs%”—7@Þ ~JªÅ:åD+·ÕóÌ(}C+oöf>x1DÈ¿yr3Zm´;††L †º#ŠNc«Ëâa3zÓD!•…Âþ³ÕFè&O¦k^ÈôRZ9ƒÎ¿cŠrŇ5¶A ç18Q:ó(“ÆI1uQŒ€É‘j›«0¹ˆûÀd1™,ƒ-*hÕo„œAãj›{[®'ÔQ\&ƒÁ r(“UP&ä2è &•Î.Õ™×jöA³? 蜨Q½•Ûê)?%Zùx3`®œl ‚¸VûÖÕ šF"ÐåñŽƒõ„œÙ8ˆÝ#ŸŠE-††à+Ñ`¤š™A x8¬Ù8´k:îH ª‹R!E0U/Ðwà/[jÊýe<ž¤˜ª-úM …É¢ô|SEyˆ.6¤!efP!2:KMÕŠa€ ¾ZrLdÑ ¹|VAS „¬ÚT+S>Øx[¢59¨/V)L!P†AĤ<Ñ^Þ¦Y²ÉËu¦ünjoÊÁ=Í~J9,C^ÐÊmõP¹C¨oåã-A {­÷­[@ oþ ¦‰æHbÿ¡s-@`Šry‡5Ò¶AÐ@¨¸Ô "5Ü(”ëHeÍ.Ä`žHg0à/3Œ 5|* FÝ2h#l™ÒSƒŠb.E}S¡’ÐH¿RYK¤SS~Xb’i[PÛ kJôÁ¤™ `Éu Gš£‚$£¨áOjuL̈ç‚ÆQ9ËIÓ@.j¼EAj¤”ØüM¦3š'š¢ºŒMoôc¶HÕª¡?ðr¡²9"ˆ8?K¡W?ì¶:1&‡¥<ìãMÑ€hªL¾BâhÜzߺch¨±`3Ôб.že¬ožHÁˆ:µ¡6í¨’|¾ Îåk6~ŽÀœèu:=Ùv¢¾e&tú.3ú–³IBO˜VH’¦‰Fó?™¿’»Fšv´=‚ÀAбÇ<ì° ÔÅœB‘\k> ÀkLnf¤ÜúéáÃÞü°Û6þkíãO²o½ã¼ÆÇïØcš O A€ @<&ʩě.ëÑy-ìç Жúú(_zs·ñÎb‚mÉêAЧu:/‚4kÖ¬˜˜kzÉ‘ƒƒ‚ w@мÎGƺö¦wÜì‘ÖÞÉMtr©–³ú(¬ÏmÍš:uª5ý®®Å¢g‚ˆˆëxP³üüü Rà™ƒ k1¼k”é$t:àNßõ¹­Y...“&MòõõíL{ˆ™3fÌè}HMž<¹b¾¼e è$:ˆðYù#ã9­ÓêëJ©TB˜uss3½°¹¢¢"GGÇ»wïö¶(«¯:Ểö ðØá#AŸSii) @*•ÖÕÕõΗ,Y²ÿþÞÙ‚e Agt2þwy¼+‚¾¨”””]»vÁ‡û÷ï×ÖÖöæv,XÐk[D ú:qÕP{fÜ*w`íYí#K‰¶_ÛûŒ °p•””øûû?þÚµkVÿc¨¾‚']m'w©Gu_¿ÀvTQQ=zúôéÞ¬šuïÞ½òòr A€Bô¾ÒÓÓ,XŸëëëŸÉ>èt:GGÇÂÂB A€zÒ˜ xJ;öäÉ“Ï f-]ºtß¾}½¼ÑgƒÁ`e÷¤dff¢!,$ùG<‘ÔêÆW$_¸p¡¦¦æÙî #Þ¹<õ™ƒÀÏÏÏÁÁÁšîIéß¿?²A`9£@‚Î(++kÉ’%ÎÎÎØø¬¡n>kȬâââ·Þz«óÕ™ÈÖ ¬x7T~~> @,WWWco ݨ;wvp•~{ã½­x7K£Ñ?~¼Átƒ˜E!’¨1cÆôò9b‚ 'ÎõöÛocE€J¯×óx<'''¹\n»·|ùò°°0¬Ö!8l¤’Ï‚×:«Ä±ºMsB§Ñí[ŒšÏdŠT Ÿ¯2äsƒ3Ýù‹(Ao*??ÕªU7oÞ¤âI¯_ŠóD¥ô³§²d|ÿà­vFƒÎïüKî”|&OÖº9©àѸí†l‘-16Õ ¥Þ?60ÞпA€êit@[3Ñàà`GGÇôÚcâú®, z iÚKª! Ê`-ØÐ4‘ÅfÑ™B})²©&tv”†$Ub6‡ ³ŠÆ<ŸPI¨Ö ‹A(ô z‡A§Ää)õjƒZR¤""| Óè<±ª™"jÅ ‰Z+áñ•e ;š€@+ÒMÛDiËAgÊ1Ñæç6>|øþýû¾·eee¾¾¾:AðrFB0W ita y2.Q^-fC0Ö)0KOµ¡>(€™¶y´GǣєD©†@ÏWè ¥ˆ'¢B½”C‡A/ç3x2XZ ¡¶¤•Ð[Íst¦LgA±‚AcÊ ªZ`Ò˜ A€ è«ãEVo¢………ëÖ­ƒ˜Ö‡ö900pÏž=X´”œÇàDéÌ£@L'Å‚“#Õšr}äør öÉb2Y [T`ÂÁƒABΠqµkcòäzBÅe2 &ªô„B½B~”Ë 3˜P 0,Þ4—0A}KD Lج…£$%*;;ÛÑÑ1,,Ìò«€fÁ?~¼%\ÅjQ ÐJ84nõI#†°]  @*aÓ8Qõ]pþ²¥¦Ü_ÆãIŠ©Š@Ð"¤¥¥•””XÙqY¹rehh(V( AÐ^¶¼sçN¨¬ò ÜºukܸqUUU‚… h¥úúúÓ›Y‚‚‚žùã×zNáááYYY–¹o‚Að¬d0vïÞm¾„ÆšÎô9!PÁ3QXX˜££ãúõëûú}UuuuTTÔ½{÷( A2’C-Àçó-írúÒªU«vî܉ A€B˜/žô÷÷oh:/` R*•...–ù®äg H­K™™™|‚”––æèè¸zõj+>ÜVÀ»àààÛ·o[ø~>øùù988XÓ}ýû÷G ¬Ìψ»~ýz~~>A³ð”Õƒ ºº:<<ÜÉÉ `›G¡¶¶V¥RYÔÃå‚ 7÷! 00077×fš5kvìØ‚A€ °)@ö{äÈóu’6rEP{JNN;v¬…Ÿ#F ‚î•X,vvv^ºt©í\Ôž .\؇ž•aÉ 0æJ¹|é ’J>_Òy¾ªÄ±ºMsB§Ñµÿn;RÍg2E*„ÏWrƒ¹Á™ÆîüE”õÀ|;XAAÁ’%K,ö ¨¾ ƒ‚O£ñ¼ÔÓ¨`Ðùǧ’ÏäÉZ7'<WÞÞ"l‘-16Õ ¥Þ?60ÞпA€²&ÔÔÔ?~|õêÕ”wØíͪ¨¨¨««Ct5lê%<¦i#,©†4(ƒi´`CÓD›Eg õ ¤LȦšÐÙQ’T‰Ù.Ì(ó|B%¡Z3X,] Ð7è“§Ô«y jI‘ŠPˆ8ðN£óĪfJˆ¨3$j­„ÇW–)ìhv­LH7mO¥A f¥¥¥;váÂ…P `‡·ÔÚµkCBB°"è2ôrFB0W ita y2.Q^-fC0Ö)0KOµ¡>(€™¶y´GǣєD©†@ÏWè ¥ˆ'¢B½”C‡A/ç3x2XZ ¡¶¤•Ð[Íst¦LgA±‚AcÊ ªZ`Ò˜ A€ °iÔÖÖjµZøpñâÅôôtìêVJII3fÌýû÷]œÇàDéÌ£@L'Å‚“#Õšr}äør öÉb2Y [T`ÂÁƒABΠqµkcòäzBÅe2 &ªô„B½B~”Ë 3˜P 0,Þ4—0A}KD Lج…£$ àÌ™3ãÆKJJÂ~¤êëë½¼¼¢¢¢úÜž[´kêCÂv‚Aª„MãD5Ö tÁøË–šr')¦*A‹ð¬²AJÁDÏ7UrÝ  ›ÎWäü|0…NãRSµbXg ˆ/„–Y´B._…‚ÀVA0{ölÿÔÔTì^ë“e# T\:•ÃV„r© ¡Ù…Ìé üe†¤†O¥ñÔX¿@m„-Súêb!.•Û•„FÒø•JþY"šÊðÓLë„’€ÚVXS¢O(ÌF°ä:…#ÍQA’Q|¦y{LÌø¤¿A€ èË €*@*•š?ãCT½xÕQ¯Óéɶõ-ƒ0¡Óí_¤`$ô-g“„ž0­$Mæ$42%w½4íh{5‚àüùónnnóæÍÃþìŒ6oÞ¼{÷nA7 O A€ °2@þV­T*±3;£ÔÔÔ¾xŽA€ @ Z©¾¾þÂ… æÇãXòë´,MÐoS§N½xñbßý ‚AJOOŸ8qâ¬Y³lù1q]Seee_É‚A€ °e@6«×SwÒˆÅâ7n`×Ù¦ž  눉‰±¦7”988 }ÑÑÑ“'OV©TØc]–H$†"º ˆˆoookzC™ŸŸŸÁ`@§@ô!Ìœ9ÓÇǧ=!Ó 3fŒœOÁ—×£6‚æÈAO©úúz6›‰CC(‚ ¯€ ,,ÌËËkΜ9Ø?Ý¢¢¢¢äädëø-‚ÀF@0zôèØØXì‚… °Y Ûv£¤R©u !Pª JKKsvv®¬¬D 1 }ˆ‚nÔ´iÓ"""¬é= †Dë>˜A`É@t£²³³ûâ,~~~ÖtAÿþý‘ ¡ ¡úðT7ÆÿV@ôœ®]»† @ XtfŒMô)•‘‘áäädMçˆuPAÐkòññi~_‚A€ @<ÛøßòÃc1 èݾ};<<ÜZ%ƒÀ˜+åò¥ÞZI*ù| Ù魨ıºMsB§Ñí.CªùL¦H¥‘ðù*Cn078ÓØ¿A€ê¡A€²V|¯ƒÞâëã¤ä3y²ÖÍIÆ•··[dKŒ FµB©7Ĥ Œ7tç/B º†€†Ï zZ&!z z iÚKª! Ê`-ØÐ4‘ÅfÑ™B})²©&tv”†$Ub6‡ ³ŠÆ<ŸPI¨Ö ‹A(ô z‡A§Ää)õjƒZR¤""| Óè(€™¶y´GǣєD©†@ÏWè ¥ˆ'¢B½”C‡A/ç3x2XZ ¡¶¤•Ð[Íst¦LgA±‚AcÊ ªZ`Ò˜ A€ °¸ AÊŠÏ[&ä<'JgbÒ8)&ʩ֔ëË Ç—‹X°L“Éb0Ø¢ úr«m\“'×ê(.“Á`0éTÕ 'êåò£„\Á„ñ`ñ¦¹„€Ñ‚è["ªH`Âæ`-% @XÜ@‚ çtíÚµàà`«ÿ™­„CãšîÝÖˆ!l((¤JØ4NTc½@Ü¿lu2ORLU‚áYeƒ”‚‰žoªä<º.6¯ Èùù ` Æ¥¦jŰÎ@_-9&²h…\¾ +A¯ ucA @õ-4*.Ê¿a+B¹ŽT†ÐìB æ‰tþ2ÃRçÒxj¬_ ƒ6–)}u±—ÊáM „JB#iüJ%ÿ,‘NMeøa‰I¦uBI@m+¬)Ñ'f#XrÂ‘æ¨ É(>Ó¼=¦@f|Ò_„ @ôÊX‚ '¤3 AÐð ®2êu:=Ùv¢¾e&tz¢ý ;„¾ål’Ц’¤i¢Ñü„Fæ¯äã®…¦mA€ xºˆÝð¸û½/µZ=zôhy9ÞPÖ-B žm € èv͘1ãìÙ³84„ @ z ÝzFAÐíŠŽŽær¹¶ó{AïW Ox_‚… @ ¬½Ó!‚§‘Ñ$AOƒ`Ö¬Y111Öô†2ô2Á³Bt£²²²FM‚ §AáíímMo(óó󳑫 8„ èFÍœ9óÌ™384Ô @!p,A`ŠŒŒœ6mZ}}=‚A€BêÞ{ï½ëׯc¢Z•Ÿþy[kéýØ`u÷t ^}õÕíÛ·£¡¢Ziøðá¿ûÝïë¶dÁ?üPQQ}ˆjÖúõëÛšSo†b+¾/ [@úàƒRSSm­+H’¼víZMM :i[ýúë¯üã;ã¶´¨¿þõ¯ °Ùw=£Z RÍW^y呦ÒûqG{n úÃþ R©lª+æÎ{ôèQ4‰¶’H$ï¿ÿ~'ݶ=‹ŽØÛÛbÚ²jkk÷îÝûÒK/= Øòéà®)œí\Jíéé‰çˆÛJ,÷ëׯ=#y"‹úýïF…´µYedd :ÊÃΛ–Ï ÈW¯^mõO]«©©Y´h‘Z­F{h©‚‚¶ø=Ö¡:6ª7Þx˜«Ñh°‡mGC„BaE†h¤ÀÓ³à…^øá‡®]»†e;2'Nœøì³Ïž{î¹.¸-íqúÝï~÷á‡úûûçææbo[=vïÞýÏþó/ùËc ‚,f½óÎ;...Vy`mmm~~> 5÷Æ©S§¾ûî»×_½ËnKëœ}ôÔbiiiØóÖ§ÒÒÒ½{÷8°ƒ± ž¦ÆÿîA3\]]ccc­)lΛ7O,£@ævúôéï¿ÿþ7Þxz·í¼QÞ{ï½Q£FI$|õƒu(!!aÆŒ|ðAgª€žˆØHžfèí·ßþúë¯CCCu:]_ÿá2™lòäÉÛòч„œÇã 0àµ×^ëF·¥=¡`ëŸ}öÙòåËãããF#zeŸSfffHH”“ÿûߟôèwoðGô ÌÏùðçM›vþüù>z}xuuµ——Wrr²mñÂÂÂððp&“ ù#oíyJ·¥uI¿ùÍo ðüç?ÿ9þü˜˜¼­Ãò•’’ µä»ï¾ûüóÏwá woøÂ#Ò› hyÈÇìééyúôi¼cÈò•ŸŸ¿wï^{{{¨Ü_xá…u[ÚÓ ËþýûCÉÀ‚låH§ÓI¥Rÿ/¿ü²_¿~OšHtWÜÆÓÁų^yå•>úÈÑÑÊÃÄÄD¬î-Gh™L¶jÕªŸ~úéIGnŸÞmiO­¿þõ¯ï¿ÿþçŸ>wîÜsçÎeggã1í}GGGóù|ƒU䫯¾úôG¶»Æ‚P–†ÐsÏ=Eâ§Ÿ~ ¹ÜáÇ“““-°À‡dæÈ‘#ÖüvîÜ9zôht†m»Ñmiݧ—_~X6`À€‰'†††ÊåòÊÊJtÛžPmm-8/¸ð¬Y³þ÷¿ÿ‹ÿö·¿ýæ7¿é–ãˆA¶À‚fýùÏûùä“O˜Læ† ¢¢¢,ásLL̤I“¬ï1¤Ê§OŸ^²dÉÏ?ÿ ÑjöŽoèå+:hÝ-øuï¼ó·~øí·ßN›6 ¨)k^^^}}=zqTZZ ÉCxx8¤IC† ùøã!óoû¤èg›Qà@PßÅAóy@È(Àm¡Æg±X›6m’J¥™™™½\/TWW?Þ žžqïÞ=¥RyâÄ œýì³Ï øCÂl9nÛ FÕêJÔ·Þz ¬ÿþÎÎÎ\.wÿþý€µZ]UU…Ý*ÛÏÏϋūV­¯„œ Àúȧ Z0þ[ Ú^1¶÷ÑG :Ô××wÇŽçÏŸOIIéÑGCLè‹×«C%uóæM‰De³ÙC؇„íÿþïÿ,ÐmŸ­]µ, ÷øÀ¤ÿþ÷¿nnnûöí3ƒL@«ÕZý™,(ŽŠ‹‹Á§.]ºtèСµk×z{{ÿôÓOàt@Ì·ß~ûiNáéÄAOJ3Àmÿõ¯A–»`Á ÃéÓ§¡bÕh4¶pÃQyyyFFFLḺcÇðqذaŸ~ú)¸í»ï¾ûâ‹/Z¾ÛZ iµ*ÀÌ 3?4éË/¿KóññY±bÅž={Nž< E”Zyyy}âìT¸………©©©±±±gΜ9pàÀºuëüüü ì…láã?†ß>õæ›oþáx&þ”æÑ€÷Ø*ZÑᥗ^‚ŠÕœ× 8ãÔ©S/^…mTT”B¡ÈÎΆúØŸ>röìÙg؇uuu%%%™™™€6ÈKÃÃÃ!ÚxxxØÙÙ™>üÌ¿ÿýï¼1¿"à™ÛU{ÆÖ[o½¥–ù@|òÉ'ÿþ÷¿üñÇQ£FÁ1.CM±uëÖ_ýõøñãx/^¼Ô¾víÚ­[·ÒÒÒrrr ,C^ZZ IÐ×P}˜oɯ­­…¯$IÞ»wÏ`0@3½^VE_nn.¤·oß¾qãv°m©TzâĉÇCF´fÍšyóæM™2ÅÙÙyРA_}õ•y<Ðê!½å•WžæJN ,ˆƒNžŒ~ã7š³;(xétúwß}7bĈ &LŸ>x±iÓ¦}ûöÛ 5²\.OLL„$ 𑟟ovÛ²²²ŠŠ pLpÛªªªššóÙdø ŸÍJ0Ú@Ë“ iT«ÕPwß¼y3..2Iˆí‰äèÑ£[®_¿*šiÓ¦7nèС_ýõ€Ìû Î hƒ¼ôY%i–ÿ-Ü´[V©_~ùe0?G¿~ý€æ˜üQ 5î–2×¼¶¹¥ù¯¹¬’Hã_}õÕ^xÁrì¤7oÃ`‹DèöLïOú8ï‹/¾n AØaöÊ–žÛì³ôßæYð·¥›ƒÛÂÚ ûÛßþ±6Ñ£§Û¬}×´PüQè¶6ë¶h]¨ž¸®Ã)B…ñ­Ë¦¬ˆÖ⾤B…Á­Ë¦Lƒ?B…‘ Ì–M)€B·ÅÈ6f›öÓ¼9´[º-†}´1[34`z.†}´4·´gz.F{´:4•–;ŒF޲qRà@Ù²ëao °E¡ÐûP(K(KQ(Tïèí·ß2dˆ»»»Goi’IC‡?~|‡]urrêÍyzzŽ1ÂÙÙyâĉ6 8@vvvð׳}AWÌ™3çØ±cS¦LÙµkÇãp8‰ÄËËkçΫW¯ž={öéÓ§§M›& ƒƒƒák``àäÉ“Û[¡···««ëóÏ?^‰BõrêõÁìÛ·/''§¤¤¤¸·¤Óé:”’’Ò…eaWÏ;—™™YÜ‹*--=yò¤L&»{÷n±mèàÁƒz½ÞСîÝ»WSSS^^ákYY|€.‚éZ­¾j4ø Ö•m~FhR©To¾ù&ú& ÕË xë­·Äb1ør}ïêüùó]X ˆØØX,½¼ÃW®\¹}û6D¶zÛ$óÕÕÕ]°+ókgáoó#ÜÍ+ìÌ‹†¯½ö ¡P½ ‚7ÞxC$õèÛ B€RÇ., y#€’Õ^î®èèèääd«A^³N:Õ5<¯¼ò ‚…êe¼þúë|& (,,ì²抠´´´÷A‚ §A`~‡;º' … @ P(”M ¾®¾ÛAP÷$ë|¦ ¨7ª÷QPÇ®ûvA€BYôw蠟¥—=4±R¯ËLO)(Òu/*KsƒwŠ’³òëºdéáÖ EJVM]·uWàºì,?ø@yEeßAÕú MòTmm7aA€BYjÕ²ÓV,›£¨¬¬ÈÉJOÏPW*“åçWÎ?r:¢Š¬ÒÝÕ&ßNÖÞ-®­­«¬4èŠîæd«µ……%ÅEêŒLC%IÞ«,//ÏÉÌÌPçÜ'«:AE¡jê<^Ü팚êJXÃ=ò~¾&û֭佡ÎX]¨Õjr4wòò ‹t55ÆfÜ-Ì+..®ª®)åe¥°{5Ud¶:=95­ÂpÿÞ]ÕœS"b¯ß-.¹GV××ו•é+© EÚ¼ÔÔT}yå£Òðú¼œŒ¤¤¤2‚4VÝ»“ [ÖäååéŠË ¾è2ÊKKJË °†ºÚê‚‚"cm-QªK¾}K­É7ÖÖIÅ!îlž6¿°X[©«©ºWRTJ]oc¬ÊHKMËÎ5kÛ$áF}yEñ]í­[·õ•}›£VÝLL*¿G…nØê¶2é¶ªÚØuvÞSOËsŒuµwrs $Žš UJJfü„в’’² ègØŸ|mauíãa @¡,•¥‚þ_}ùŸKWñW³\Ç9ŽqY¸|õÞB»o¿ô[¸|ÿžíÓ=]™ŽL–7ç˜ôÒÞÝÛ†Û6l؇ÑÌ¡C†­Þt@rh—ë8§QÌ¡ƒ~^ªÕ•µ‚òBÕ´€Õ²¸kÁ\΢À•{¶yN™4v´½Ç/s®ÆÅ®]¶Èk²ÇÏ?ü—éæ›’‘kA¼üÚU,Çç—ó²ëä==o¾ÿ¯ÇN¯ \4ÞÍ}´£ƒ/w…òæ•9¾Þ‘/¬Zp!öæ½ûkV¯<­¸tZ4e’;ÓÑ~üdߨ¤Œš‡CSô‰ý®.c]\˜ã¼8²Ëgÿ2Ís’û?ï?mA0€£Ë 8sPàå·º¸´\}-râ”y±ÑÒIœ'Nœ0b„Ãþsqg‡LöY%ñ™µº¸¸<÷Æe¿™Úü\þ¢¹cœ\FŒ¾rËž2ý–+¬©(œ>~¬ãè1£™ö£\¦æ”œÜ±ZŽc:0'ÎÈÈ¿ºv¡Ó8Wæ°!³–l4]çïH–÷/׳¯_â2ÑSSpwÓ²æ(g{ûá‚Ý’}‚I³ïݯJ‹=í4î—²{ª¯€ ®®6^*ÚÀ_zôØ¡¾³fø-9vìèñ’HIxðº%ÇÏ‹:6l¯Hzöø,ŸÙk7†¬ã¯ž>gQdÄÙù¾Ó–óÏœ8ì¿0pۺţÆzJ/]•ìs™à}=¹eÐm CQæäé3†Àšw#i­ï´‰SýNœ9µ#tÏí´ìââyäQÆ7?,[¿÷n©¡©"ˆ+)Ö.žá½.äðMÙ9Ïiç/^ܵc뙈Èc{¶¸¸Mºp^â7‹y~ÞÌI'/Æ*ËüçÍ =pØÃÕ™·aKÌÕ+îãǬÚ~ °”hÙ!kçLvtó»péÒæà-©Ùyw‹ŠŽî\ßÿ“¯DgãÉjc—AŸ|eÐ {EznèÊ9³–ÇÉ.ð7l‹õŸ6a^àžã·yÎà_’†;Ÿ{·¨4+ö¬çD/ÉÁÍvƒœOEȤá[¾ÿqP‚êNËÔ¾ZŸëðÅÿÖí8‘—›í>|?xëàŸìÄ‘ñÚ;ŽÃ‚wûí—þüíW/žÚº§¢ªGAP5…=ÉÝÍãÇÉn¤fÄøïWƒOFÆÊNïÿæ«oŽIŽþðÍ÷)ù%ÛûxÍÝp¯Maˆ @¡, ÄKG…[V_M¸qþدžîㇱxMÐEéÑ]Û×J/Fžïww›àææ2|˜ãêu[6 Ön ËÓdoÚ°~KØ‘”„Ë‹ øKf-ߪÊ)0¦zLš!•%U×¶‚’,çQCÿþæëÃ'ø¤fæ*åQóf°G6Îk–<%»¬0×å}ÎòÀy3ý—oIV&nX6w¬««»›Ë÷#\"A õŸ5ùä¥xÃý²ysü6ïÜ5hÐà‘£ÆxzOsv- /*}èW§Ä^ðñö>l°‹;9§èÎíhûï¿„-­ RÙ.ƒ ®Æ0s¢sðΰ ŽŽ'eÊWϹwñðôa÷gÉŽã¢íf8»úÔ±g&OœºwãÜÏ¿üÊÍÃËk²ç¨±“o¤i[‚ ª8›5lxLrN]}ÃæÙ“¦ýâýýäürê,ÃÆ™7ï:w$Ì}ŒÓ !ƒ§/ä—÷{Æ)®öï¼Óï“/Yw ‰g¶|Ü¿?k2ÛËÓËéz=Yí3vè¦]ûÇûùØå[ÆÚÇS!P(ËÁÍ(ñæ¼#GŽí;qñÄÁ©³üø7·®9°?tåâ9KWnŒ‹¹0ÛÇ—·Z°qCðÚ °üܬ õë·ì«ä—-\¾uí±“¦Ç*RáNã¦\n¿"¨(Lóœ1ï¾ã6nÛ´>øä™ËŠ„+®£GnÛ³gî 1“§G_»U^a0šîTm>Y\žŸê9ÖñÓü{¿äÒ͘³.ã<ŽŸ‹Š<2f¬›ổÙ3¼"/œŸåå²÷Xdzb4s¸ý¦PGÇBQª*}ݲ¥á’(=A¶Ø§ªÝV¿së¦|ÔÈA¼maÎö?x/X­ÎÍ7Ü»___ÿ4'‹#núÏ¿é?Œš”[  ^Àš<{EJjÊï ¾ w;°e’?Z>È~JzNþÁÍË;»‰¶/ýqÈØ8Er¢Lêë7?#¿¤åÉØªÒÜQ_½ód4QVì6Ânåºu_ñ]Ô5õýʲ±#­Ú²cÉÞµ¤Œ¸‹‡¿ø×¿ndk»v"·“»ÇÄÝâoæ éK·]‹Øóï¯ñÊtÕuÙ´iÓ³Š+/ìß8pÀ€oG¸ç—Ù  e9 H»å÷ËDÎÜ9ÜsÆŒqr=zæüåWy\_ŸY3ø:9Áu ÆO¿LŸ°påÖPqA^®0d{èáSé7®®^µ!tÓŠïvÃF bØqùÂ;EÝÜDQ&gÙErú™ƒÛ'zûøÏ˜æì2ÞÝm¬½›×®Ý[ýøõ¿¾øÏˆ‘#§úÎMÉÖÔ·A}mõæe~ÃÇz]WfkR|\Ç9ÆùÏ×?¬^Ä™=#N¡Y·ÄÞÁ~säß9pæÊþ›ÆuçÌ=fòå„”‡O_Ö åµwô˜ä:rô„uk—þã}óÃO£¬ÜPVA< *òU#¾ýßÒàð qdËOv × î€›!ön›ë}æ ²Rn¹ :bÄÈጟœX“3Óý¦¹9u·ü3gõ–’V×Uä9ÿ÷ߌ‡93†öHÏ-ض<`Ð`{–»ó0—ª,ÍŠ_ÜFŽ›èæ2r”'G[ÞÅë‘:yŽÀg¶ß¥6=AúƒÝˆØx×QNîÌ!?³¯/#«+ Òþýîßg¬Ù{¿ª¦3E P–‚êªûy¹9¹yyùI7¯_»¦¸£-ªª" ´y9¹¹…ÚÔä[·SÓ²²ÔšÜì;ù¥z¢ÆXÁY_ATß¿W¬ÓÛä5w•Dz!I™R\ZÞêò– ¨5V߯®!ïîäæét…)Ê¤ØøøÌœ|¢¢ 6¡R©RSSÕY9÷«ª¾|´\Wt§ ¨ªº¦®¶¦P“uóæMh–ž‘q'¿P«-€ö†ŠÒÔØÓô,ÍŠ{de¥!#õöµë׳só²R“víY»fÍZ“vî=Xp·ðÖÍWãâÕ9ùz½.=-ͼiMž¶¶¶–zÄDWAP_gÌÓhJ+¨K•ªî’•‰7oççßQ¥«îÝÕ–kj rÔ‰7ofeeçkóÆ}qâÆõ›‰·Šõå—Ï Ú°¾iO×9&Ë`={!áZB®VWWWo(/»¥¸§¨¤¶®®¼D›M[\Úåë:;y¶ ÐPe¬3Våd©Ë ÷Êõºׯ]W$êJËjkª²/ýôÕO2en'¯/E P–‚†¦G‡™ow2?=¬ÅÄócÄÚ¿•(æ\ø†í‡rò‹y·TÇwSÛ««k¹'-WÒþ}Mûùð[ݯeú5ÔCyIÊmåM“ ÅíÔô*£Ñ4÷Ñ›îÆû¨.mz2Û£úüA/™§ä™Ѽ«iÉ7úúÞÊ.¬}hWÚóº‡û°ç@ðȃkÞí²ÜäÉã® ½GÖtrY eQ xJÕTW‘÷«Ú»½×"1a-Ôqógøˆ‰Ö;ZWWYYY[׳÷#?ý#&êŒ5:]1ù$—-!P(kÁc“F|Ö… Ÿ5„B! e; 8|øð½{÷zyë‘‘‘]{I’ׯ_/++ëåúdffÚΞ=Ûû?LA€Bõ>þüç?»¸¸,Y²dÅŠ¼^lhåÊ• ,èÂF—.]:mÚ´E‹ñzQ°ÃÞÞÞ³gÏæÙ†à÷º»»CWvÐ,44€~äÈ †T*=vìØåË—%IDDÄÉ“'wîÜ eÅž={` |=tèо}û–-[f^vñâÅË—/l’y£ðáÅ_D P½ ‚W_}5 àèÑ£çÎ;Û+2o¼^$AôxÒÅ!Úlܸvølo vøüùó|>Xí¬ Ž‹¯¯/Äó7n(ÚQbbbjjjrrrIIIRRR¶I01//¾Þ¼yóêÕ«À(ß`"|50/ _aýýë_ÿ¯Iÿ_yå¨OÍf‰î‰Bõ&Þxã HÕÊË˽+ˆ®Z­¶ W\\ÜË;|ñâÅõë×—––mC[·n½{÷.|¨{œš.5_il~=1|¨m’¹Y󳀿¿ýíoiíÝ…êeôÅw÷þÉbÁºuëz¹£ž¡¶lÙè)oFè@AAA¿ûÝï(”%€¯BK‰ß¿góåøkÝ ‚òÂÔ)s—Ç$e´|5o]}}—@иTåÝTÎôI‘W«j»°oõ½ #‘7jĸhEVM õð­Þn\÷théùª˜ÁîþÄ=’Ðç+“Ó ¾ çòåK·³îÀFÓÓÒËMoR.Õi³s Ú;”Ê’A`(ÉßÄ›ûïý›»bÓ!Q˜—ûX÷ÉÂ=¶~ÿ¿ûÎç]ˆ8½’;Ûa¤gájù­”ógOøùú¸Ž;uÚ/?_g§1F_:Ã[¾l¢‹‹Ó˜qáÒ+÷«ÚjêÜ•×ng^8´sƒôÌq?ß_F¹l0-E¹né¢)“'³Xã}VeåhßYœ Iå¯Z}ãv†±¶*l»àô؇÷O™Ä²5:(T”›vcîL¯ˆË—v 7Ë“TdUeØž]²›išô›‹ýgŽr°_²zk޶¸U„ʾ?‹í6räðeA¡É×b}™æééé6Á™·~_9q/ª« ¨(RÏ›·ðVöÝÚººmü5Ç#ã£Nìa¹8Ûdòw-)Îí赎¿&·¨¬¦¢`ͺ Ì‚òBMª¿§ƒýÈ…ë¶ÝÕ·z«‹1,$ÈŸÃe?ÒËwQ~©¡T›>ÛÛÑé0³´ Ôu+fêÄ1#F[¶iOEWÇp:AZÌÈ©K5)‰®Œÿñ¶íÏLŒq` r7îûï¿;,½0}¼Ã†ýU5µ>n 6„“í¼‰A€BY2jkÈ Gwq|÷„…ΟÍY°xݽ¡‚ûvm[εÿPøÝ!«Öl8sâÿœµ›v¬^½Äi¼»@°q⇠S|6mäÏò_.ܰäû†n =¸s-—9aªüVz]; ¨(Lc,[à4Âáˆä슙ÞÓý—9}Ôß~Tü¤¤¤‹gÿøÝm:O}G×XÄÉ‹µêÇoÝZ“’àÁš|äøÑþsö‹%'÷oŸàîy1BâçK½ªrî ‘±†Êò9~sŸšÃžÈ]¹>ò¢tì—Íû$­^ã¸ÖÏÓ½,:ú›ísåFbBÂõc{7÷{ãíe[Ä•U]®êªÊ=F :Y’Ÿj?xè¹Ë1¾^ž"Éùˆc{¾eLHT*F3=ΞOpaÞÊ.¬.ÉbºxÈ•ª¹“&Ìš/ˆ¹ä2øÛ­áÒ‡ßA_=ÝuØçi2Y´û°ïnÚ7ªóØׯÇ{ü>`ÞÅÓÆOœ¾*.6j"Ë3%¯¸k•A (ÌŒûß á?05`UY…a­¯‹Óä…7oÝx uŸ³?h‘ÃÄÙÅÙC¿ùî|BF{OIE P>4”xé˜pËšË11!ë¶³s›ì-:z*1î|èÖ5Òè+ЏèEóç±ÜÇÚÙ _µv˦ÁkƒöäQ¯ª\·eÏ!UüåÅ‹7¯]2cѦÛyD~ò$–ôJbûï,Îv²ÿù¯ù“ë¬Å¹w¥¢ŽÃ‡8:¹nÚ‘¥Õk A>ãY>ו!¥ih¨$|Ûª9‹7ìܸÂgÎ åí”SCfÌòçìðͧóÒÆwÏ›éqâbœá^y€À–» ¶s`ŽýÅgºÝ÷ß,^¢Õ=ôÀ¢ˆƒÛ¿·³c޳jãVHÂk+ò½íí¦Î]]hjö4CCâ­‹XÞ‰ÝAã¦øk‹ í ñšÊžäêðÙÀ!ŠÄ‚ÿÏÞ[ÆÇ‘Ýé¿÷Åîýܽ7Ÿd7XÊî?³ÉdÀ$£l‹™™É’Å,YL¶˜™-fÉ333CKjI jfîö=Rkfì8’¥ÑdêyQªª.8uºu¾çWž–ú]Õ…m4¿­¡kÞ;Я(ú¹²–­“ô«Î…„ÌbÙ›¤¿`±¹í%qJê6j·ïö/À9\^OY‚º]DuVœÈí»ê:ºQÉÙØÓz¿èíÉßýö·ÿçþÓÀþ)Éò3¾GRÉÔÜÆÂÄÄ9(}o}TJL2+-ZFÅø›Þj Aú! :;=ª«opjt¨««#%*ÐÐÊ!>9!?'¾®®<*ØÓÉï½½ÁÛÝ;6>#119:±à¾›ZX½2Þëç÷4%ÒÏÒãéÒ&³:¬«oÕ5ºÀ}‡g1åpÃÄÒÁßÏWRL¾¢®­§»w°o¤¡¦TAF,¿º¾ -LÕÀ´jžûºDzÓFp°:b¢cx÷Æ´’¦™á6m½´‚жšç&–=MnGA‹«­Q}ÿ ·42JHË•WN-›ÊNNih"Qß*$ùì¡¶¦ÁÑñ†e¢¢w3_t¹™iY»ï!… ? °[“šŠ2bï%TvïÎvH‰‹åUÔ ´—‰‰ëÎ/ΨEUÚš*khqsH\B¥g GùáÍøÜ걉™ì„è'­Yv&Ú eíl.¯,Æ[ÃÔ]éîͦÉ-._Pë¤öØ¿­¾vxbª¾ºèúõkísÞiº€¾û«ƒº.óƒ"Ÿý©´u(ÜIKß1 ‰Ä”§„yEe1˜tŸGêÿý_ÿ”ñ  $H?PÌõÕ9<Òuvu°µ”+o ²NS‘^JúfáÁâââ.žŽ¿úÅÏÊ«<~l›‘G¡Òº»OŸýÄHáß{kfëàp}TLô–§§—™¡ú¿ÿÛ'ÙùÅÒÒÚ]½}Zr÷tÌÌõUþü“[#K[‘Þ²jFAÞ·î>¨é›arN4»˜(~yGÜ×ËãêgŸ´ ¥ùXß‘Tº{í³’æî§zòú–1ÑOEDDš'7¸§z7ô¾ˆ6iìM£3ª2Â4-\çç´UTUJÊÔ,pyüáªôÿüï?¬#ßsg ]rP‰Øþ®¶îþÉɱœÌäÔ¬¡ñpÌøp_[g÷äÄheq~qyUssCww{ßÐøÊÚ.N]]]YÛÙ#cÑó³ U¹ñÆöžáѱÙE«;.ïžÅylzK¢pˆîÞÞù™‰ò’üøøøú®áÝÝÍ–¦†¢Â‚‚‚šú¦C<áÕÉ^CÛ‹³}£Ó2Ïc÷tdgfÖ·¶½xY;0<14<Œ!v×*J KªªëÛ»·x"ÝXSš’’ÒÚ3º·½=<4ÐþZC£ûû°¢œÌظø†öá­Õùšê*pß‚üüÖ®&‹uÆ^C;Ë3]ã [ÀçŽöµ¥§¦Ô·u7Õ– MLvv âHôµùñœì¬ê†ÆÆ®•Å$V•&'%·õ£{}½=o’Ú;4db¬ë—˜˜XÛÖ‚6WS–_ßÑÇd±qhxNFrL\|cç“}Ê©¤ß7Ž€Ç¥S6‹D"ñy<ðåmoÁ08"ˆ>H8Tf ½¶y …þ¾þ¥ Aºä 8ž7Œ{9  \ök¯aáÁ•Y,¨X‚=\áÀU¸__çm'2^$˜ÃfsS$LÕqUœÿõÉ\á«)¸xpr{¥´¨@!õH)E/H4:øÜ| ‚óZÜãK‚£Y×þ’Tp#pYðp`§0©Â¬ÉÞ=J)< fw-/';õk¥äëëhç7NÒÌ7ƒ‡ÿ:ÓŽsRø \ÞéÇÿ­#‹ÿbîü2WCC«ozãýfš Aºä 8»pèýÍí}Æ;ú.^†‘ÅGÄaµBÔqþŠÁú÷8²@„ý¶8œÍÕe–"8Ï1h§žbâh4âX*C €éïÂI‰ß]CSLœ‘bç>šk$ç]ŽA ¸ä‚@ Ò 4í‚ï~jÏbƒ1>>~ñžÅ}}} ìúñ€ 55‡Ã ÎíõSJJ H. ~þóŸtvv]”@},A¡ÚØØ(\ÿ›ÎIÍÌÌÅÐ Ü\¶¶¶íííkšˆÏèè葞žžörrr ÊÊÊ@PY\\ jEEEUUU`O^^øV²³³Á:X_œð\°¢¦¦Ù“A‚tI@ð“ŸüDEEÅÝÝÝÇÇÇû¢äå奫«ëààpŠ›º¹¹™˜˜€¥÷ÊÏÏÏÈÈÈÌÌ ¤Ü×××çG --­÷牋‹Ë“'OBCC]]]ƒƒƒ===Á°bii ² |¹¦¦¦ »´µµÁ|.~fà0p.ÈCPýHLL¤È|K=?ýéO¡ÿMH.B«JǸ@1™LÀáðSœK ‘Hä'¸§§gqq‘J¥2~Ï[__O¡P˜ïëX•·7Ùl6X‚ë€M:.Ü/\yû\ag­·¾Ö_ýêWÐÿ&$Hß  Æâ¿ªþþ~.—û#ùy444€‚ú‚oº»»û‹_üz; Òƒê5ôêëëƒ@p ø×ýW A €@ðcÁÏþs A €@ú÷„  Aú~A@¢v`›ʉQf 2~w{ƒ#|\ÐñðÄì’¥­ƒÂú! `â÷2Rã§—aœ7.öœ@09ЕXD"Ó.ÛÏãÃ@Àމ‹[Að>ÒŒ Aº$ àóyÃMÅ¡AO:Ggy\î…B2ÙÜÕñ¶È§žÕÍ\ž€B&ìÈÔW¯‡N£âpX2™Â S1hÌQ¯ÀãÉÑp‡h4ÇápßjÙÄ9ppnÿŠG$‘ÀÁ,ߣ³X¯ø<2™ˆ'H$•JÎÞ)ƒ¦Ó¾ÞÃbЙl6_ÀÇ¢H›Ã@-;Zµ N) ÎQÑ-`0„+¯¨$<`±¾»ˆ#`Q ,b'ä² G)"ÒéLàô `Ш &ûx„.ä3_ à0iû{{<™Ï4•§j› y4q+‡ ÎæŠB PXÂwÌ*$à3Yl²··Ïzý)î±½»Ëy=#b¾»‡:˸àSÏÄ´vt d‘€c»Ð¡ˆC<¸5|C_Ï:È'‘ȼH H. (˜½?‡?üîSG€ÈgA Òb·H¸ûû»_ûâVÎÞù9ɦZò"7D”t-«[{žg'IŠÝ½yãê;·Å%%®|u-$¶¨¶4KCUEôæ«_}œ‡Ä‘ß ‚Uk¯ðÑÉù$_7uuå;"×4M†¼låe®ùGI•G «Û¯¾6¯ŸØ]êµ67kéŸd1HnNù•µáA^’RR7DD¬=gܬڻ:‚|œ[¦è rHP@m÷ÔP{¥¶ºÂëWTtmÇ·¸'ã…Á†é‡wn_W6vìílÑWW“—•ùô÷¿1vˆÀ(§AMN¤±CO‚MuhêØ ´(ɈKŠŠÜ-nk®Ê4³‹ê¬1· Á`ˆ;ã¶–ÎH$"ÎÏåÞí{W®_M+¢ÐNØMrÈHK U1qq‘ëW¥5,8rK~ôí›×E¯]‘Õ³‡£ ¹1Þwïß¿öÅWþñTÖ)_ï| Œ-­»f÷ê“C¤ä•6ÓžzÞ¼qëʵkÏÒŠk²#u­è æÆh£´¼ññ¯G= Aº,¯†‚©®êÔÄÐÚÚJO{¯ÀøÞ®¶êš—mõ™IÏš:ÛÛëŠJk¦¦Ÿ¸x„E¦D„?µvñîîîxâ`åÙÙüÒõ‰J¤¯¬’~ÏàÌxS±²ºqïø"ï]V•è GM9YMñÙÅgÖfV.£ã#™™YÓË›}m¢[âÎ=ßÈ<Žú:"ÁãPÞ6æ‘i•sƒÍ†F–-í­)Iñýc“C %:ºÆ­ÍµÇžÅ-îöÆ/;‡©4¢»›{Va…žºRTZÞÚæŠ‰¾fpr! Oy;C‚­uµ,—V—ã£c6áT£»:ûwŸ|YÜ0Ê`sO ÄR߃r³°ýœ§Î¶ }í Ï¢3¶w¶ƒ]Íý²^”¤™ÛGu·”©éº¢ÐxØp“™¡E]qÂí{ªCÓ+“­…wn‹Ž­ì½{l®쟿 Ϩ#â0šî†%¤Ü½q£¦{šFÆëÈÜ‹ÎÌSøòOaÏ_nÌ †E¥™¬óËÂÚÂÌÔâú—"Có›ÛcuŸþ`pnku¸îú—×jë«n‹Ü^CÓ|›¹DÑ? % Aº, xõj¶·&39|hrº©ü¹²¬øâáI™Ã= ¹é‘­Ý]=-5†zZÒÒb÷îI†G¥$ƧÄ&£àI ñE/ÖÇûüýŸ&G¸†g¯í¢¸MsS‡Ö¾wš×ÓpÛªrÿßÿçÿV1w[ßA,Œv>ÒÓ¸qCÄÈÁ{nsŸNÜsÐQtòÛA~°¼n#è¨H³s ñpôL^]]ÉŽ”WV’¿)¥ÑÖöµyýG³º®Q*ƒäéá‘”™-.!~ÿ”²Š†”˜xtz!Gzû©—‡;t5¯^½jbëC±[ã’W¿ˆ{^M=vÚ:}Ÿak ’ð¼X_I±n`ae~ÄÂHG^Qñεß;ûgÖ–¦ô´–kè{ ñ°‘fs«¼—?õ•œ‚Šª²š¸œîÈòþÛv“,ì¶‘‚âøúh²<,--LEU­0ÇQCº«yHrnSy¶ÔÝ[Wnßó‰Í&1Î5"àZèÊþÿôOŸÞSD‘éÓõ‰ÿû»ß)(©©(k<”T]Ú²ÖOÌ/×’ºÿ¢oéC\r @‚ty@0Ó]–V[W×T_;:=×ñ"ÏÔÆáidDNFLEYn°·SptòÚò´¿§oxTZB|RT‘y}BlLJAõòX¯Ÿ_Hj¤¯î#ç™åÕ¾Z5móÞÉ¥wE$ÔÚ#'¿òò )™„Œçé9CcK°µ9]%‰äÜí¬fêq€B?s³rÎ 0³‹êi)•V³9@ak²Ã¤µ “}%Ö`ˆ½åÉ  §Û(ÂÛ lü®Ê»…mc\ÃDQ<82ôæW¢#KHž€­«$”– G‡ëÿüûOÆ6N×û±©iYÓ ±ôûà¬ÉÖ‘; Xìî²÷¯]³«0îOüà Y=$éƒZÃ!@‚ty@°2Öac¢ieûØÖö‘´´”¢œœµ›_k[³¯‹¥‰…¹‹“µ¼”¸’¢ÂõkWŒÍ9¹ù'¤—#à;ÉI‰é¥/W&‚ƒ"²BDnÝ»våK—g){è}Þµfç9»¼Õ\œ¬¦kd©¯%.-§©¥,¥a”ž{íË?ýþÓÏDEïéšYÏoÂø'z ñ|l*N.l`·,Ô”åäÄÿðÙW¡Q¶6–ƒ“I¡ž÷>¸õÉ—· êûòÓ¢äe¥d$ˆ©´γN¶_æÅûŠÜ½¯g %)§äöË_þâê pº½ÏS‰ @°tZÐÐ÷ÿü©ol‰Êl-I¸y뎺²ÊÝ»×ïˆ©ÆÆ†Y8Æl-ܹͪ}ïžè+_ÈhènnÌ?6R’•×Û¦^8Ò‰WX¯(µë_\ûê–ŒøýÛâ06ÑÇþúûjªÒ·eM×vö]µ¤EÕµU¥¤ ìDêyFL [»ŽÔöLÇç_\ks0U“R“¸}MÃÁŸ@c11[ŸÿÇ/là ,H~X àq9h$‰F¸…ÙÉÑñ4–(àó°ô> v®¯,­ll"Q$r‰ÆR¨t—K¡)t—Å$IuÉÖ¾1 mÝ‹«4ó›/KÞŸÇÁÉ,WÀãb©ÒúòüÀÀÐ. Ëb2@2`0ØæÆÆ|yÜîùv÷Q…Œ#R8Çïð¨ƒÙ™©=zoo‰Â`°8—Ãe36×W6¶wQ,żâïl®ŽO"‰[Ë…Ïsâ^+¯¤‚H¡,ÏÏô÷÷ï! :yookkkccã‰ñÈ»â0˜#çúãÜÝX^˜œ[$’ðÛ°M,‡Åu"¡ó³sH$š€Ç‚üa1È3“ã3óË g†Úkdß$µºö…ž´tC{÷ØØžÄ8º¦€·4;988 ÊÞ£0Iã£CýCcDúé|8<žÎ>Ê“Cä>‰ÎâsèSc“³ ,ð¥ðyØ”ÔmñÅýì_ ¤Ë‚³«§6ÿYBlûŸ^†e$ r|t¸÷X===#Ó öûj­ß߀2ÁÖò¸û›¤NO ;š[Ìm£ÎÕ­òìÊðmù‡þ‰ï²®†@ Òß78lPg¾ËYY|FÑh4.ï|]‹Ï‡‰Dòþ–±  Aú{Áûàò šb¤@éz¡/;‚ÓyS©TpÁÙ@°¼¼üãAcc#‡Ã¹à›Âáp }/ ÈËËeòE`Ñh´úúúSœ{xxØÝÝ@ .Ø´ kjj “ñãPUU‹%‘Häw‹É<ê@§ÓÙ"…à.¦Ëàsàøèý\ZZ‚ü Aºxüä'?‘••}üø±½½½í…ÜÈÎÎNMMÍÜÜüo½)8$UWW,m/J ‘ZZZ ¶?G–’’2444~·ÌÌÌÐ]\\5’’’BCC[ZZÀÎÊÊJP»ˆ‰‰éèèˆŽŽ®®®{233ŒŒŒ¾ój&ÇÒÖÖþ§ú' ]0~ýë_ƒÿP’ãñxÜE T5Aѱ²²rŠ›‚¤‚Ê9 »È„†††ááa:á~ª¨¨U}ÎHè> áX炈H$¢P(°SøÓqÜææ&•J}ÿ¥¶¶¶ «JH¾”——_pÐYÚFFF¾—6@.¨à\¨½‚éâAð«_ý 2¯ÿ@@½†Î[g1$Hß î£. ^C A €@$H @ €þ=!AúÞA€GÁ×V1Ä;iôúê"ù¸  á¶ÃsæŽg×ÿX `àv㣞ϯ³/½gñh÷‹€ð,Âiçý¾AÀ ~:°°yC‚ôw—Ó[÷Üß˹¹‚A§Â·776aca¸)Ø×©¬¶™Åæ`1¨•åä!é Åìîî ÐÛ‚ÑLƒN¡Rà°Í-œù-·Ä“~+f.ACóë\.…Fƒƒà;‹‹Kx2]Àå¢{ûûƒÁ ½¿ö,F#p8‚°[ •D Ð<kw{kyuýhÄzÅÉÆ¸m`òG`2Ù‚#Ï\ýhåu°¶ºJ¢Ò¿³ä:€o.ÌÏ“il‹¹¿î|€D"pxŸ/85ÈD<‘Dã°â¢1\FÄ.--nï¡x<~sEš®yâ…ÇÝ…Ëbâ±Ä£¡X|öÖúÚÆÎ8þ[å‘É<öä‰ñuÇ8lmvnžÊ:>XÀ][Zœ_Úø/˜³€i`j^7 ãòûp*dokme¶ ž…L"IÔ#÷e>…:ä|ÀäH Aº$  `÷¢ýþôéŸ<ýŸúû(ÈHÜy(áàîèëvóÊg6®ÞYi1j2wïÜ•×4+­oËH‰¾{çÆÍëW®_»zGTô«+W}ÃrªòSd¥%Eoß»úÅçî©û‡„wƒ`ÕÆ+bht2ÜÉÜÞÕ+-šòû7•tõôõú:Û«*)|ñé‹Ê™Ì/Ã^½ö,†/÷™èÕw1éO;ëç¥5þžŽ’2²wïÜ6µ÷œì;ò,îl÷q·iê§ÑI~¾^Õcµùêʲ·o‹H«šöO­qNÖc;*³d%$ÄÜ–Ò´èjk6ÒÖRVýŸÿüW]›°3yg…iZúb‰#MŠjV}] jRå$o\¿]×ßT•in9Ð^m`âwxH€¶YÙìïí9YÝ¿výªwT‘rÂÕ…C:0”•¾#z_ô¶È]im$®*Ù_D䆸›÷7ö“D%$o_¹jâú”Â8W«J¦±¥M×ôNñS7 9å­T¸»-H…ˆÈÕ'‘é•a*&4:s¹¿æ¤‚yC‚ôCz54ÛS“‘ÕÔRëëâìêÚÒÜXßÐÔÛú"7-¼­·»§½¥¨¬f ¿ÝÕÞ942%22ÔÅçÙøøH§K@dÊpO‹‡W`J¤¯ªŽÕÈÌêê@º†IÏØ"÷eÔÃMk‰;7ÕôÍ®lƸÚZØ?éèîÌyž¿¸¾ËâršdJÇdTcIôWo<‹ñ‡!®6¡IÅ#m5&æ6]=ݹYiýCm•Ï5uŒÛ¾ö,nõ°7©ë:ò,öp÷È,(ÓP– MÊš›Ÿ5ÖÓLxŽÄxê' Ó'ÃããiÉÉ«{(›ÝXpåˇõ}s,ïÔ ÀlMHŠÉŒ.Ã}mÜóFú:£³|ŒŽ<‹K=‹[ËÔuÝŽ¬*‡›Í-ªr#oÝWéšjÈ»uKtdÎ}«jÏ&ì*\I+ëf1¨¦râ‘·DîtL®ó8L ‰ˆ´,Í[×’ fF{âSž“Ï×¼žýÈÊXUIõÊUÑyØÁÆ@ÅŸ?¿ß9¶0ÛWsíókõ-÷oßšÛFƺšÚù§}ÈdÔ Aº\ Hœ˜ên¨2Ó×| &îý,¦£¹:'=²¹£½¾2OGS]]CIJR!<úȳ8&¹µäYœ^ôbm¼WèYìš±º‹¦®™™Ú·öͽ˳˜ŠÛVW”ú¯ÿø7E=Û…5Øêô —½•øÃûªFG6PÛ æêrQ)Ì×1Å›6‚Á†|G_wk ßðìÕå¹è%uuM å;ršíGžÅGV•ž¦µ]£*ÞÍÕ%)+[BRRJNEßÀT]I%9·C8ñÔë“ýÖf÷Eï©è›Ím!ÖG›Þ¸žÿ²Sè®uú6Ëã‘î³øu¥öñõÉÁF=Mu-]=‰»Ÿ»d½ñ,V×ó@â×LŒ-óc]¿ºvMCÛÀPÏXUçÑÔ:⛞Åò #«p¾@æfaõØBTùŠrDÉDGÓäÜ®†J}UEYz>ÃPç ®¹žüo~óߟݔZ; Ì4&ýþÔÖ36Ð3UV3œY‡»+ý߇jV,!ÖUÓÄ%l{gÛ×ÎÔÁ'½ª(ÅÌ.ª¿½JJÑlau3'Ú[BC¿<û™”¢ÁÌ2lu¢ç‰Oà6ò¤g1®tëVry ¹§-ý0&%Yôú½†þ%<¡"'•‘ëí¼¸y0?T÷ÅgŸNlg±‘™ùËžY]9c׈ñÎÂÛ÷äæ6÷w–F]œÝwñŒášÌßýŸÿ¾«l~øa<‚@ ÒåÁæì€»™³‡›——«²¢¼²’²G`ÄÀ`ß3?[û?MyHI‰Û;:úFdÔ¡öžçæ¼lÙœ@ÈM ½û𡘤ä½{÷ž¦¡N¾„9`¶¼ÂS7vúë‹L¬ì¼ì­UÕ44•5Ì 2¥%ܸySBBÜÈÒnqkû¤g1?7ÊWÛÌeam›x°ánf¤¬¬¢¥¥rûžXXLâ“'îsó©ar2ÒR²’7%•ª:FkK³µÕ••d¥U5Ìú'V¨ óµX,Ö‹ü81I)m]Mu=ó„øàÏ?ÿLôÁ —Àð3z3°»šRâ19 :k !_JBBCECIYVNY?55ÁÙ/}wcÅREAìáC)11}K8|Ý×ÅTIQKLôž{L&OÉ{“T6nWóÖÑ[ä¤Ä•õlXRa|ðQ uU9c8ng(®¢©¥*«çxx¾ËÍ˧o\—ì› ñ4“”U“½gœHa²Y¸«ÿóŸO’«™ìÊ7 ]ðù<2‰H"SèG½†¶Ö7·I”£©†©2žD¢Óhȃ} M¢ˆD<8 Nà&(«Øl—à3Š’í{G&÷hÖ·¦¬y>Æ`÷o€BžÍf!v——W°D*¸…LÂb±èÃCðˆ¬s˜L:“%ì»H#á···ñ$ @ È*Ëç x\4 ‰ÆbÉ4:çøÝu°±¹E¤2÷×çÓSƒƒ‚‚•’O Òva‹‹ËxÇf‰„Ãc‰$ÁÙ"‚£äQ©œ×}xûpØî“ÅÀ`ÐT*ø„®Ï$“àð]až÷0bÁ¶6vvx<^w]Yxè³×) .®¬Ð—–éžXߨ¤³¾Ž´öv¶–—W¾0ºÙX[^ZÙ`rÏ»×Ð+~ásß‘ק€Û\ßÚ9zmÅc3WÆ[¥Eå'×Q•@ €éò€àìi¯NÉ©#¿»·ÿePF%áÖ–—ggg玵²ºÉzo!ÿ=(;ØÝZ˜Ÿ“ÔµÕù Ï'Ë»˜KîYL„/™é©'²Ø:yHþž@À;÷]vµÐÈâ3ŠÍæÎײø#€€ÏãHÛ¬¶ Aú{Á_)" \zASL@‚à@pÏb A‚ôAPTTD M×À¾@µ´´ìííâD‰@pxxx‘©™#Ngÿ8T__ÿ!e€éàà£÷€ÇžÅ`,Á:Øö¿½)\;Y,Ö_3 &“ùfsggçŸÿùŸƒƒƒ«Žµ¼¼üפ­­ ¤3‚à§?ý©MnnnéÅÊËË+--í'>þ<$$$;;û"S[VVæïï Yúw§’ï’»»{EEEÍk½|ù²¶¶¬€eõ±@A]WW·¾¾^YY911144ö7ÆÇÇËËËWWW_¼xÑÕÕ555>íììÌÉɉ‹‹ë 3Á¯l†……EFFfËÕÕuvv|Ë­­­ ááá ´ú]zö츈……HΤ¦¦nnn¢ÑhÔE @€Rü›ŸâÜ­­­¦¦&PÂ\d‚@‚‚ýýý ¾ï÷%PžÓh´w™ +ðàPɧ‹Á``0D€` ¬‰DP½Kø±ðxüÒÒÒQO`4zccœ¸²²"ÌIð3 P(` "D°D |X[[C"‘à€ àøÍw €LøK†þ£!A: À¿Ò÷âY|ºÆâï˳¸¿¿ÿGåY h{ñm§ˆD @‚tv@½†>D?¶Æâ À÷$ @ € Ð4$H>ŸÇç N^íýæÎ³ƒ@ àÑh Þ·}¸Î>v4ï#f×9€ÍbQé Áy¾ ð©2¡é„@ Ò9µ³:56¼ˆKÿ£òÿ ŸžÞ„ï KrÞk(Ž%dÄñ_þ«×{Îäóß*fÓ7,eje‡ÄŸ£ƒ§§øÚ×ÿZoŠÊ× Àñ__ÜTø™ðD°ÂÀl…y N¯°¸o޼¾5ï=Ðáõ‡ÿî[ŸÂüyóàƒë×û[ËÜ|qòë‡xõfå]¹÷õ5…_Á‰”ÿÅüçMV\$øT´Ÿ³É:ŠÄý¤Â”¼yjÁ›Gä4ðA €é<@Àe1ZÊÓœlUµô¢ÓcƒCcûHÔxgµ»ƒyNi5@ØX^èêê™_Ù 1˜XÌáêòÒØèÈÜüÂÚÚÊðÀò@Ànoo bpDþÉï7<‹-Ü‚‡ÖIxÔòÊ*››ïìèÜØA0éÔµ¥Å©É©Éé©¥å :ƒù#èƒ 2•J•ýÝmÔ!ž€?œîêéßEa(Èg[ÓöÁ‰ Ø6‘LE&¾ƒ#RXlöêâ\oO÷Ö.‚Åýf9Éa3f§†ÚÛÛ`{‡tavzjjÜ{bmkÐáÔ @ímoî ¹<>›E[^Z£1û›«Ý]# T:³µ*]ÿQ0|<œÃá1É„Íu‡Ã¡1Cý½ý£Sd õ…¦€ËÞÞÞY[^èììÜÚCóø6“>>ÒßÚÖ¶‹Äb—FÂõuw¶uôcñ´S¸§eßZOlA¤q3³t6—„Eôuw ÏЬ=Ø2yTµ P‹+ë‹ A:Pñˆ¤PÏ›7nxøú?ñPVTUPvt÷zøDüÞ Ÿ ŒähC-%EyE ÓÜòº¤øÐ;wDÄÅDE®]¹{ÿá}Ñ{žAÉ¥™±bÈJË?¼#bë ;8|7V­½Â[[;¼ÌõÜ}ƒžùªih¨*È(i[tõö†û{›èüù÷¿•7_ÝyõÚ³xomØTG«ªe€L@9[Zä–V=q¶QÑÔR”•Ô{ä89ÒíæhÕÞÙæédQ×=J¥Ÿx¸W´ Vå%h¨«*ÈˈËë¶ Ì19'êÛµ9±2’ršŠjÆí-ö­ôtÔÿã?3pˆÀ©§A}^”¢3â?ßY© aÝÝZ£$%n`¨}÷Öí„ÒŽÆŠ s»¨¾Ö M½'èCüÖp³©®ÅææŠ³‰¡¢‚º¤Ø];ïÐCâ‰Î½⾦èí{â2ªJò7D6àöÄ$tUnˆ©Î®í/#º½¿w°·«¤üEwW£³cXdJTTÄ“àèÅù™PÏg ÙÓCÝO|‚’#}µŒg7vÆÛ4µL;GæßãYllùèöW_hšØ.oîÆ¹Û™Y»4µµ—¯lïs¸¼ÙîzY ù´ÂF…õ&"À°žÁ±…}e&}ý%9í=}%êÚFm-uoyPiDOÏô¼bUE¹g é“ÓÆzêþqÙ,éí§Žr3W5rëÌÍÎÞ:Àr¸ìºì(‘›²ck.ÿÔ îÎɈK .¬Ç<±ô‰ËŸéKLÍ›žžò²ÑwöË|yìY|lUyäY¼}äYü¨2ëÙÍjí}£ýµÏoÞ¸7¸¸s³¿«tív^Ý(‡ÇµQ–ñ ¹ù`xyŸ'àÛkɆ%eêÜñŠÊêN^JeqN÷ó84”…Šˆ”Ø­›²–(2£!;ô–”êÄìBcYêŸoI·Õ–߸+·ƒ@KßN­ƒ^ A‚tÉApìY>41=ÔVogi,&!æäÚ\_ñ<=ª©½¥ª0CCMUWOSN^%âµg1ržŸVôbõ-Ïâ•]µjfêÐÖ?ÿnÏb˜†²Üï?ù­¬–åÌÒæÆâÄÓ'®2RrZF½ÓËðµ1Ce™°¤œ7go‹ÇZ‹Û{:šF?_Yœ v·QÒÔÔ××¼/¯ÝqäYlÙÞÑæá`Z×5J¦â]Ž<‹¥¤Acbf¥¯¥›Yø{²¦½5;êãî )ö@ZUgl>ÛS)*"RÙ6È8v×:Cc1Ç×ÚÐ?ÞQýØÁ5ä‰«šºº²Š¼®µ{EYžª’ÜÝ»wÅ%Ä ¿Ã³XP’øÌÌÁoyNFmûÚX()*éèi‹KÉEÆ¥øûùN-.Uä&(*ÈÊ(Ê>TÖyÙ3Õ^W¢¯¥*/#©kh;:»AgþŘÉbµVeJIK«k(ëšØf¦„ߺ)ò@LL\\Ü% 쌞Å,‰ŠrjI•Á﨔—•RVTÕÑQSÖ4ÊÈHö É=ØÞtÔÖ{ø@AV3¹æk« ¨&&z?0½K ¾íYÌÂíhß¹&vO\Z\Lï‘û!‰^“+þPBYIFÏ:‰%${=SRQQ’4÷ŽÆÓ˜ðhè`¯G»úÆXœ¢öäòŠ›•®’ªªèM±äÂz6‡‹]úí¯órx$H—GºÇe#—Í¢hÆñ«fPÑG“ x"™Ìb³ êÑaÜ£>–\Ôœ»5r‹RìSÆf— D2÷[=ËO (ð9Çç¿:îT>"àáð=“%ð…3›Ñé a/Ä·ÇÀx_wHb3i‡‡ lË<öð:ú„L"R¨t6—+¬Sˆx$>Þ[›IŒòñö9’·w\j6‘JÅcP»p8É—e/¸/•J9!8ó8.÷/ïêIx,CyE9ÊC6‡stM‹‰ÃaÙl‹Â#ùhƒ'€m¯) ðó¦ÔÇ'¿¤DOZ¦jD¾~úW åpøþëÞY|Äþ|y–á §G àpØÂ{‚ÊqßVH ŽH;bSišŒ¼)‘ý1M@ €éœ@pvMôÔe7죿{j¸Ë0²˜A%Ãá»0¡¶¶v÷ï€ö=Ž,Æ¢Û°×)…ÁövÖ¢‚‚W÷Î׳ø£,^Ÿî×ÓÑ.jù¸é„@ Ò¥¨¾zwušb⬙{þ‘?:ø<.~Îã{@ ÒeÁ{Ë—^œs(·!@‚àmœÎ³X‚‹÷#‚€Édò~jll„&ƒéÇ‚ììlA¹@îÔÖÖnnnžâ\GtvvÂápÊŪµµµ££¤yçG íímP= ‰ôcï äF+Ât°Ld0 jÔ+@h[(6Á§ÂÃèï‰Dv×Ç ¯öƒ•7›`…ô^sÁ$HgÁÏ~ö3Àð_|Q***zòäIjjê)ÎÍÉÉ ÌÊÊ*¾@Ìñ÷÷/++øhrrÒÇǧ¼¼nííí :hjj(K°¬´´´ €Úøòò2ˆìz{{ñxüôô4š°Xl?ØN¯©©^á;ÃÂÂâãããââ|}}óóóÀzJJŠŸŸ_^^Þ³gÏÀ&X±···´´´~‡455!@‚tFüú׿.((À`0o÷T?oŠ([vwwOq.(g@!ƒD"/2Á@ æ¹ººúãi#HJJ:88àóß7'„Ó¨²Žûý #a€ Ü|O+ÁÿõQýGC‚t\¼g±@ 8‹g1ÔX|JNN´}?Î¢ØØØø‡€@ Òeмê5àÛ _й‚àÿñ! @‚tI@u…@ðm¥¤¤œkD'ôŸ —Чòý ðy æY§…@ Ò%Ð Qð­òêØmðc{óyt“÷ÁN·èYL§Ó9Ü€g1—IÝßG|\{åó¿WYßËâœ)+ @‚tÉA@!`öá$*CáN&…vâ‰!vx ¢ ¢~sý$ø°IȲâ¼å­=îÇ{±qjðù\Îë2“Ãa¾òy\ÆqW{°ŽZê~lc³Æ¼ž~A𺧀Åb‚ƒ¾ÓÞ$\ ÀŽûº Ç‚Í×¶‚“›û+}õÜ4B"‘©G_ ‰ˆÁâ‰DpG‰Ä:vp`Ð($H?D€bj´µ<*̯ktšv4€ @ Éêòx{l„_mkƒA#`1‡8<‹Å¡Ói8‰B¡Ñ‡8‰DOØI'ðh…BRAiö>Ïâe§€ÁÙu*•„Çét*ƒ†ïíáD›C"à1 ˆA£±x÷¸†/‹&ˆ,6(3 41z”Ôƒ$‰L¡ –¬ŒÚ&0ø£BIŽ!S˜  Ëa¤"8éÛs¢rXL,¹·» `ÇfõS·F£ÑD"¤ÿÔ ·úÇè –€ËDâ7–gªª+*j^nî͵ê®Á6ÇÆGÉtŸE› И$<²µ¾¶´¢rqÎ>É3›>9>ÞßÓYR\22½ ‹ŒC6ÕVŒÏ¯³¸<ÝRWYXX8¹°Îæ’…ïÁÁÚ Œ‰‰.ŠŒÎ,Âc’CýLŒíÜýW¼|›‡—AöVç&¦µ°ß8@ €é2ƒàȳø™Çõ«7¼C¢³RãõµÔu ã’3£ܹêìRÿ¢ÂÛÙJIA鑃wûÀxey‰¡¾¦º²¶ŽŽ©¹)ØŸ’[×^Wjok§«¡¡¬¨œTøâH}7V­<Ÿõ O–$‡…FVç>²0UV”wñ‹œŸ™Žö·01–—7±öÙ€í¿úÚ³x¾:ìëéÑ36Ç “ãBƒ_4uäg%+*)úE&­/Œ¸9ZvtwÇF…ôŽÏ3˜ä„øØ¶¡¹©ÁVg;Ke%E;÷ ¹µ]îÉ ótoƒ‰ž†’²‚“_ôÔH¿‹­­™±øƒ»žÏ²ˆdú©A°;Û*v_fbmµ1*/§ÞÙÓ¥§¡bnë )'aå±2Ü`hf>;Ñk¨£>¿fã¶Ô´MGf—Ÿ¹›©êêëkˆ+šÌn¼]·g÷•o\“W·²0¹.">4»æl¤ ¦åøÈüú]™‘eXA”—˜”òcKq%½MñtQÁ{@€X’Ò·‹ôt{(5¶´UžèsWÌ ¡¥Í^>"w¤gw°€O •"²KcÜ,åõìrsòp”ôÎä'¿ýÍ?ÿóϼŠé,Ž·áƒÊz~þ!¶Fê2Æ^SÝ5ⲪÝ-Uâb*0ä;1¤Ë  ÙÞY©‘ýÃ#eY ê*JzƦ壽Ï3¢Úzº‡º›=\ÍLô¤$"¢R’cSŠQð䄸Œ¢š‰~ÿäÈÇ ”Õm$ µbflÛ:0ûnÏâmuEÉ_ýò:6O–aû=ue&zÚêšÚž!ÑK°}~?ÐÎÔÎ%`c!<÷MAsIŠ£GH¸«›üÒÒbifœ­­žú]YÍŽöú¯Íë=‹i4‚»›[RVŽ„„¸ª¦ž½£³¢ŒthÒs–øöS÷Õ©k¨©kjy†ÁX lVOF,(>L¥¿:[cqmN˜¡…«¾²BaãèòD—޲²™­­…¡º‚‰ëtÿKC‚±C]õ¹í}òÞœ’šAQYÞçŸ_·°rtuõ074ëžcqþ’},ì¶¡¬\ߌÃåÆ9Ù;Xß“3ÙÇ‘xêJ÷e”†—÷N×Rð 7†ïHéÄG†ˆÜ˜^ƒ[ÉØø5‚ ,51ñù ûHMFA^ü±ƒùÎië @‚tÙAÐS“RÛÔÜÛÙÖÖÑž¢ÿÈ.:1!;-ª´4'ÄÛÉÑ÷££ÑÝÙ=,2)661*¡àKˆM)¨^ëõó Nò3²õŸYì«Ó1²í›Xæ¾#" £×Íl<@±£"£œ‘WVSý²«k°½¡Z^êAFQix€£¼¶Qçð8Ž@àòxoƒ_0×Õ¾òÅͼ—s#­j*š™Å•-•Ù:ú&­Mµ.öVmn¶†Åu]Û+úêI9êêZ1©…£c“iñ‰M#äžÅìöê²ÎÁ‘öæ—÷îފɯz¬/§aíµ¶¹E$SÇm§¶ª$î-Š}õ§Oo*l`ÚK“eU‡§f3m¤4õ5—šš-Ík+KÖ¶V¦ýéŠD}K“‚œ\yC×ÜDÿc ›Pæ¿Pqp…ë×ücŸOŽõË>¸ÿ¼¼\ñÞƒô’æ…Ù1 É’Æž0÷ǹ/Ú—¦¤ÞÊmŸåœª™à½mCÊÖ!4:ÕÃTÅìITcY¢„‚Vfj–šL`f%‹Í)‹óþÙOÿµvp™Ë@ €é ‚•±Os'î®.v&æ޶–.Þu /Cý\œ]]¼=LŒ ímK<³utñ OΪBì獵¥fWÔ¯M …†Æd'ß½¯gd¦® í;À¼}ý¯†×]‚ãæWaÕÙц¬éëšXzû¸iY¤eÄ?¸÷ž¸´±©©W`èúÞ¾àí^C|v¬·õ9½±…uäú´¥¾ž­Ãc­·îÇ%§º:ÛMŒÇ‡¸ihëè«}uãaamWZL°¡±‰³½’¢v}ç(žü—¹1™LfZ˜»²®q@ˆG‚C¼~ÿ‡ß)ªkš››G$g“©´3up’ƒ½B’ËHT:¶äbn¤£oà俬ihQRZwˆÁ¬±¾¶ìX¥%%õ-&ó=ÇSL0iÌ[:<ØÎJNÞBâÏu@ò©A°³2ÝÒÙGcýw3 ý݃€J"`°„wõ!‡¦˜¸ü‚æ‚ Á¹ Áç:û(H.Š‹‹!| ~~îE©©©Bß¡‹±p…ZÏ_Å’¬ÇÇÇC €éò€ ++ üË“/P$éåË—›››§8@tvvîîî’/V­­­ããã8Žü÷¨oÛÇÄÄÌÍÍ!‡Ãµ±Xìþþ>È4}xxH ÀG€È– "‘(Ü)œšl‚¥°³Ø6Á’p,p@spý;w»ÇÆÆNMMe㱂ƒƒÁ&øM‚u°ü^…‡‡›˜˜@4éŒ ø—ùWW×ÊÊʺººÚ ¸Q}}ýÓ§O ÁÊßzߪª*P™,//¿ÈƒB)222-- ð«þïN555Õß’ŸŸ_QQÈçŠcnbbd> asssSSØ?›±±±––K Ð‡ #_¼x1==]ZZ:00ÐÑÑöƒMx‚¨ @¼¤¤ÄVééé`}tt´  `oo| Ι™ÉÏÏ› Ià\ œœ…œïRnn.ø yzzB €éŒ øå/ þA= DýÜ‹›Í… CNqSPYíïïµÍ‹L0¸Www÷“Éäþ݉÷- ¨ÿ[߃ ;¯‚%ïxèø–Á¬³XG÷ŽfCåñÀN*õënÀ—EB›T•€Û„/ýÀV@Ð~œÄw ¤2)ƒ飴@žÅÒF°´´ôãi,¬°$¿äHΨ×ЂàGÕkè‡ð½@ €  Aú¡ƒàoê¬þ øèàÏ ‚óë«ñ ¸øg@ Ò9€E§’ˆx&ûD[!—Å ‘ðtóむäÌ.®âH´œ0áC@ÀcRççf $þÇ›…áœ@À NLNÒX—®î}p³ãÃ$Æ…M A:ðù¼•‰žŠÒü™Õ-“Ça1X“¹¿:]]ž781Ãæ°)d"…&’(<>ŸÅbRH$KÛ28šÉâpØ,†Ã`0X,û[…çÉi¨×ì½ÃG6Ùl‰Bf±ÙD‰BQi >G"qGýÏñ$2Ehpÿƪ’J¡ =ß4*ƒÅæ²Ù8…>¤1YtÔÚëîÑY…v<õ™€N?Z¼â“ID4 ..øö„l‡A"Q4:“ÇeÖàpxpk ….8ƒU%‡Å O1wäªI&³¹<‹~xÔËáòóí¦æ0ŠB=2Äi P¨¼ãb²¹ßŽ!h4xcP–0åxì!¤ çÿço"_o^ø„£©Â2’Èå°AΧà²h ‹#€Ç• :ó¨jÁã0Á· ¤Ë •X–®¥¦ššW1<Л—•š”–ÕÙ7P[ša¤£•œ5?;õ²¢(>.¡¨¢v}>=9Z˜ÿ<-5)+;»¨¸01!©odaun²ª²23%5!1y`|Žv²Dú¦U¥Ç³Áɹ©ö򮾩䄢‚çq±±U íû{mõµùùyɉ y%µ‡‚##cˆ¥—55;û<»«¥qj~e|¸?'+3>>±©«›q³·hïlmmZÛ9àpX]]Ë[û»ë•e…‰‰ •µ­‡„oÄ ØrAvj\\tUc|{³¢¸0?¤$¦ºiÁdŸ‡;sÅ¥5x2Ë V—UlìÀ»[ëSÒR’’‡fWà³ÍÆÆËë+µµ/‰4>8¦¶‰#ÃV¦r²ÒZzÆ(tÖ‰Üc‘k+* òãccK^´’(tøòtzj|\TTE}'‘Æ8Ø\ÈNMRÝØEe²~~*ØH-îa§†{rÊ_âɤá¤¤”ôÌÅMøpÇ‹¦Þ .—·5Û_TÕü±^!A €é<@À¤âË2"t´Ô¢bcŸ8;jkÚÚÚù‡¥Ä‡›ê«E&¦äg%;ØXº8;hè˜$dFGKÉÊÙÛ>–¿/«¢ùØÂÌÉ+<'!äÁ})'' =ýÇs뻂wG–n‰1q´µÒs¢¼5u ]œìL­œú†F*‹ Ÿúº}õ§ß«›x®o#¿ŽFÇÛóVúÚÙå-û[ LM˪_úz89¸?q°4VÑ3èmu;v(sµ5~Ù9L¥Ü\]òkZ#\ŒÌÌÝÝ]Ä¥”ò_v‘é' ºç^RrÚ^ÞîÚFû‡3RR<ì-þëßþË5ô9‰Â85Pkƒ’÷%úf·¶'Ûå”ôúzÌ u=‚i+:- Õƒ$ÍŽ÷èk©Îo£Ø¸-U-“Þ‘I's Sk{ÛÛ⪃ [oÏVÍÆÃå¯^Ñ0´{tïæýÆ®Wus{׸°»w%ÚÆæÓ‚Åe´ýüMc1 e ý¥™•…è}ÙþéÕ¢ô/oJ…EÄ= ô³³óAãqÞ6úf¦VÒŠX$H— ƒ¡AîqñÑQáÏÒ³òÒcžøfçå&FDG? ðvñò ,/É354ñö{›˜VŠØÛMMJÌ(­] ŽÈŒ ”WOËŽ t3³÷zÿ«¡ÿ¿½3jãºð;=§§¯MÚwâžœæ$}§yÍKOۼ潶i›&&ñŒccÌjlf›Ù7!Ä"@bß‘%ØÄ*v 6aÀìû¢M  ´/àw1I ŽíPÀ„&÷ûc˜‘îÌܹŒî7wfîýÙûDvõö‡y::{øºØ; cS©…æ¦7ã“âôu?9od‘š‰¯ª§­ˆÄÛE • ïß¹ñþ§j;ú'{›ÍŒÍÓ²H1çô rHD„˽æÖ·»>!)¸ÐOtΤ‘Š=\ìüC1å%%{JuÛš|[E·®Â»…`Skë¨F×.ù Pÿóûÿ¶Bøä’óhm]J•j?1‹¥Ë3ýù¯Ÿ™0ùôâL}“’ŠJ´»Õ)óڲ˻Öã#½æ×.`’3p¡.ø«^ms³ùk¸t•’cei×=ÆÖ¬ï¸5tñÏ´÷£äèžÖ-©®³4¸•VU^xZ÷"•Þuß™€oh žÿìT}D³§˜Å{»5ätëÒôâJ$ÂÂØ!°¶Œtá’aYM}fL¨­+JªPv”¦¾þǼ£óð4†"€@^’xœ)|J\Ÿ—Gòóöpu»O,¨`²f s²SÓ rB|üƒBQÁié©„\J#½W$à755Ò»û™S•Ôêœäˆ‹FæÖ÷ì\Ü=«Zz$Šo¢n|u‰\ZË^\fö$¦¤Sr A~®®ÎáIøŽö&thˆ+Â@„FÅÎÌ-lì|}´­º8);Ÿ»ÈWJ¹)ñža~Áä¢2"‰8ËávµÔøûyÝ÷÷ @G3FfÇF¡ÎNQ¸ŒÑñéé驱/™e t7ÝwwC¸""°5%`kn®„‹KB&I"•íïõQmafRfaD®\]dÆù»¹»c°1ž¾!•ÕÕÙÄ‘XD-Ä#\]!˜$öòjw Õç¾§³£s±ŒËáLLL|™Õ±ÉþökÇÿ~ÏÚÎÉÑ›J–«Ô­u..'\V±\­ìjtuq‚ŽIãKä{;=ö"…˜LˆçI”ö``j’»”—ëæææèx¿¹kD¥TÌö5üïo?èœ\<ÀÓŠyI"ØŽTjõS7¶Æ§¼9jгת+Hó‰Èš`.>óbôÅ=‹µPg(ןsCãýÔjÍãžmûpc}Ç]ˆu­v+ÙÜôpvzjä—¤rW¥2°k¹B±ñ¬£:Ð~όݶ®Ý‘U­¤Úüd¤»%‹ý*«™i f—¯<šâ(· ·®Q+¶½šD&—ï'‹Õ³X¥Tn‚yfLèý[vÁŠísE‚öÆÌH­­W –>þçEðbjˆ ­F-û©T*—+^êý[bB­RnÏꚈWN)žç¯¾Ô˜Å>Äwj0**êáó`ó EY|Ã=8ÖБŽ5@@@@@ ßß¾¸5Ýšyü$&ÅW|µE|["Àápãããó‡ÈÜÜh†ôõõíaÝÉÉÉÒÒÒ‘‘‘ÃÌ0pVQQFc³Ùóß9ØÏ";;{ff†ó„ééiP -6;;+‘H@S,‚V$“ÉS°6¾e±X@ÓKKK[‹`#à[·•,nÅéOÁtí à[°Öó 8ÁW`G =øjâù€3$#“ÉPÈ>EpìØ1ooïšššÖÖVú¡Ðò„¨¨(PŸïauÕ¤¤$Р "  G @»€þ£®®®úk P(p±Ýö„ÎÎN ¡PØÓÓ¦ãO5|GG˜‚†R?¨ÉÁ)ªî ¸¬*sðƒÁêBU7Xu>Ø&P —Ë3@.>:yò¤½½½©©©XÔÑÑùäY|úé§gΜùðá øŒ>#xIÏþÙ˜Åûaë¾hbüà?ø·=ÑÁÁR^^~ø‹A£àµ×^ƒ"€@  ¾Ï"8vì´EEEžÈ÷Kë*•z÷¯îJ›ÛT­od×Û—$­V£R©àé±Kl–óÁ…"€@ŽŽÒU‘/ßHW­‰„+R™|ÿ»Þ.•BÌèéç Ö0f±F.îîêXXý˜Åó쉶Î~…òȹ`w"дµupW$¥\(䈈`]«l¯y™Ì—ɤ¼¥…ù…E‰TÆfñÉ´ö.¥B!¬p9\¾@¤Öjår™PÀ_Ü MË  µT®T*åk««`U°®ükµÜŽa¨Çl<í“ …T *ŠÃáˆÖ¤ZµZ à/-..-óÀ¾4š¦YY^‹D[Ñ%kb¹dJÆ[\ärçÖ¤ré☫ãúöG|áª47o€µ@e»±¡ Væ¸sâUÉׯc7´êeÞ‡Í^•Ê4Jå2lo‘Çã‰Ä’ýÄ,–®­Š×¤›©´êÍ£Ðj×D.‡³¸´¢åP˜jf¼°À‹7³¤U)Åb1˜Q+e ssó‹<¥Zûõöø øËl6G,‘må|ianó½}©bSÙ*ù—ÃæÌË÷á—݉@aq׺‚1£Q+y¼%•¢baŽË]XRk×e’'¾yF©WøÂÝ„E€"€@Žˆ!1uùâ\:±±®*ÁRkë $_9ŠMîyØ™ƒO E¥d“‡Æg:Û›“⢣Âcc±)©)a¡au´žî¶ìììØÈÈ0º®µû騻OÅ,ö@Ò½íµ%yEÅ­M)Iñ¡¡HB^9‡Å,/ÈOMND£BÓò–["èèdÌOæ #“,PéQ)…½tZ .‹ +¤ÖÍMõ¸Úß®k¦—–ŒL±U µ¼œÅš"d¦¢Ñ¨ìœbö_»óB–5Þ—ˆB…"ñÔÙÉÑìÌô¤¤„àba£L®Ü³µÖ ª$2ù g,-=w–9OŠ ˆÂöOq+ ’ÍlÃF1ÄJ‰D¾2;šG(úëh FGF¡1ÑMŒGŠC•jâܬ¬”äd28Há‹%“Z£#ÃÁAYä²ÑZOKuXXDQ»TÚ=†€Ù¥Ìn[SSôĔä9ž°«¹ƒ‹Ä4uõõÐk³ÈJµ†ÇŒKÀ vžPÈQR*.ÊÄX˜ÇÆÇy:9šÜ¼pE ÑÉñ[«±É©ø´xgG__/#c LBV8:ð³ =Ü]/~vRÿê „“ƒƒ'25:èc3^>Á>ŽV†–޽£³/ŠYŒð  1½r9)ƒáépÍä–Ÿ¯‡•µsS;£¢„æÿ§÷~wí¶Ï$sññ—1‹—XÃ6&†IÄ ÖXï-K2¥ØÛÝÉÓ7ÈÛÉæ¢¡ysc¥«“um]•‹­ ¥n3f1ÂÅ9+¿2ÀÝÖìöÝÀ@¿gΧæÕˆ¤;ª¦”×s—L¨@#Ó;-Œœ=ìþó­·ïGÄ’½Ç,fTNœ»1Κ«ÌŒ¼nu¿šãúMLtäçz'½1¹e¹‰·ì#+IúW]—øÓ­ƆfMTýÓzžÞH7[“sWÌ&9¼í#7«ìsøÃõ;®‰q1ÿù£"j½áyÏ€Œ¤¸?ú´¨¶ÙÚà´¹ƒG§“…ƒ¯H¦x™"PZÞ½‹‰Ë0Õ=eŽuë?ðõCXÖ7, $~tòâÜŠ¨$1HÏÐI°öÍ7¡ #"‚Ç_Ä,Æ4Ñi H«;¶áQ˜‚âŠÎ'1‹k[šÚšê±Ø¸x\„é stD|tt *:}Ž5—™;ÞÝâë‡ö½ã:4ÉÍöÜ4¶®iP=7fñÌu£+ÿõÖ›Wo»ŽÌpó1·oY£""bÓ7c¯ ˆØPss;ZçR½#T%‹ôˆÉ¢í=½ÝyÙ)‰©)‘Á^ç.×ìŒY,•‹ÝÝÜãÓ3uÏžuöôÃ&×.‡`3çWDÛšzÕävdtl 6avQ(àqƒœîÞºç73ÇßOÌb¥xÞøÒyreƒ‹Åõ¤üÚþžöÈÈèÌŒÌ[×>Cø¥çlŠ€VMþÜØ}‰'˜n§Þ2»û Öãƒãºñ)Y¸ðO>=×:ÄÒl+=¥€yí“SÕŒIíÆã`«ë.Ž|zyfyó& òŽaPt¢ŸÅmWðJÌÎ[Uìñ݉͟@meþùoó›÷u.pWV©I¿}ÿo D|*îãuê;º¯ë~œ_Kw0º€#Ö©ÔßÜ6"€@ŽŽúhEñ˜àêZK]%.6Êæ–±™­sFVjZº 0'í{Ãĉ ¸id†Å`°±øyö,˜‹ÇŽ1h>>›1‹o»‡0úÇgÑnšÞkìÔÁè2ÉÑÚ¡¨ºU,Uþc´M­è쎫¨(¾qýª ùÞïÞµtöÊÌʪ¢µ*”ÊýÄ,f÷7ýåý÷,Ý"" >Ü妵[IQ‘¥‘©u!g‹ˆíëlÐ?w%>)ÕþÖu½æ­ £ë72 …±(7_&O Ý6.¨RÀÖÿÓÿÝE³Ó?;«WÕØr÷Úç>!qEN»ZVßhc|3™T\LJ8}îâèüÊÞ^éÙå­!k{ÇæáÅ’ԙ˦í­5W .¥‘(¹)Ñf6.sb9{ éí×]µGIÊÝìŠ9:"XòÚ›èííÝÝŒ¢‚¼œÜ‚ΞA¡ßÃh£µ´twwU”RJË*++è­ÍíŒÞ±I–L&¹b>opp8? cl㛘š›W8<ÍQiv„'Ü.µ|õaÿ°@,,qšZZûºe%"‰XÝÔ9;3Q]YAÞ$·¼ªvY$z*fñôp_KGpUªUÉ67æçåUVW—”Utu÷u2:W„"ÖÔHIqaaIIYuý쟷Àª©(Í!ëhíS㣵5Õ”/(ªilaNIHU ­#}E”¢­]ƒ‚P(Uûy}tC-o®­×h×…JûïY¼µiÁ"»±®®´´´¬¬ Lë›è2åæU«ö95ç·Ð³øËbéí¬(/ÿ*«mmt_Ä({iãéRÝØ] ^PÀ¥|6ÌÇÓ?feu·}O  £)‚½±¼Àž˜fÉäª=‰àEÔ ¦Ôîஜ¿Å!&žÊ¨F)ìëI/u§ûbB±Ê¯¯­›Û}o(ä»$‚o¨ÙàXCG8Öò½ANNŽD"9Ì]ollÔÖÖ.--ía]©TÊ`0„Bá!Nƒ1‹_*\.ŠùVD˜˜8>>Î=\€}úúúö°âää$¸X>ä ƒF“Éä~?ÈÎÎgÅÌs˜žžE±²²¢P(–——e2hTŠÅb¥rsˆ ð¡\.ÊÞ3@(ê'€vXñyÛÜ ^öóŸÿŠ9düìg?366 A"‘Á‡Ø …²²²òòòÚÃNýýý­­­}}}ƒ P8 Ã`§NNN‡VJß"[Çkddäãããçççû‚‚‚âãã ¢££Éd2Grr2…BIJJ‹@ôYYY¥¥¥x<¤ÉÏÏŸ€`›ÏÜØØu``àOúS(äEðãÿø•W^¿¾W‘W_}õ'?ù ˜¾ò¯Ã¿\†÷É~ô£þð‡ÿþÀW @@sòwÞyíµ×Þ~ûí7ß|ó7Þx÷Ýwñ‹_üú׿þÕ¯~õË_þ,¾õÖ[ï<¤yýõ×_°Mp*nYŠ9d@ Gøó„@  Pº@ @ —Êÿ¦Äâ× endstream endobj 31 0 obj << /Type /XObject /Subtype /Image /Width 515 /Height 404 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 9305 /Filter /FlateDecode >> stream xÚíÝ\SçÂÇñ“²I˜2Ô=dª CÜ (*"à" ¢U´Ö8Zo‡U»|«µCÛz»ìí°·Zmm«­·C .T ì yŸ°µ ’*JùÛË…úÉyžßyÎ E<¬ÛaHúó葇Ȧq=}5.×IýAÇíz‡£þldqsôØ£GƦ§Ñ£‡¸sðXZ2ïýÐx<>_ Šh‰aØAÚAý>}³D,‹DB¡@Àçóy\õF©7H7ç]½ÃpÉPtŽžX|ËèÝ:v7G`õè‘4è$è~ ê©§gžÌ»@ žròper#3{ï¡Qã&MŸ‘µzÓã»ö¾¸oÿ«o¼yäßo½ñê+/¿¸w÷“E9 çÌHŒ‹ õu¶ËÈÖ©7JHr càèB ûžzÞɬ‹ÉŒ“i–ÉîAÃG'$ÍL_’¿áñ§÷¼°oÿÁ×½ýï·½NïùÝOm{4oÑÜÔ©F…¸XÉe¤ ‰„!¨c -<”È£'Ùryê™'Afdë9afÎŽ|ñýù’â’KWË*jê[TÝjm¬­,+½|±¸ø¿úÏëÿZ9wR”¿©ŽA‚º„~9ù;}ÇÌ}\né1lüŒ%›^|÷ø™_Õƒw½¢ª®©½ÛÁkkª­,¿v… ^Éÿ¾ùì­gצO4ÐD¦ŽA¨N^RÜìsô¸\òðÅdîå¦^ÑIKw¾õåï%%WËëºÐ=k¬¸z±øÂ·ï?›—2ÒÏ’¤ .¡Ÿ…À¢w²ß E²Ï ›”QxðøÿŠK.ߨi»Ák®¼v¹¤øÜÇ/­3.ØŽNA$$»‘ž^o‡ ž}™|©ÌÈ=væ†7¾)..­¼ŸÇÞ•šk‹Ï½»}þ_“ޏúý õìóèÉ'»½cDRþË_œ/¾RÑÜ˃×pãÒ¿|¼+3!È‚^P…|.··: @Ï>‰W®>ç‰O/)­S=PM×/^8¹wÑh©¡XD¯ÌÍ€Åæ¨gŸì:B’7¼ûsñ•ªö:x-å—ŠÏÌ›à#7”ˆÉND/¦÷?ýôØD/9x¶äêžü¿…p­äo¯ç 5 Ë3èœ~²ï›†ÎÞ}ªøRÕü¶ò‹ç?Þ’è%3ï#²ø“é—Hܧmû¼¸´YÕÚn”|»gvÔ^ 8 ª€ÞyøB±Tf_ðÁùKµ}1x*eÉϯ.nj(¡Wƒ\zþ%†2E|ÑW•ª>Uwñç½ÉîRrxcHdþy|‘¡Ôldàà•'˜Iô;Ÿê‹Ì¿cb¥q ôûø8 4¶t”‰ƒWŸh)å±:—2 ×Ð2&n…j’µ”Û·ßÒ›9ÿ—‘ƒ—¨0ê<Œ²xRk¯á_2q#~M´“ ú6²ÿ¸…ý›‰ƒ§Lr4r:)|G02Ÿ¦Ù úö|PßÐÊ+â]&ÞNfÂŽ3)ßÈÎoÔWLÜŠŸ“M„}›Wjãõ>¯,ÅÅLÜ‘[`dÀÐ’û:rµõþ€‘ ¤ý•€ÐØ>`ôif&àd*êÛø2[ßLM`€äÏÆ {MÀÎ7 $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $ðÀs»éåå æ' º¯]üŒ 0=ØõÔ®]ª‚3*•¡RJLö«EªýEêÈÝ»Ž(÷Scw©ôΨÎPì3ª#”§JåO¨T™R•Cy!¦'°ÝRŽe«„Îg,•”¥RAÞ»@U©? w+£¨ Î9gXE©TFNQuÄNÅf«8*–bì®ÉT‹­DLO`=I@ÈRQ–ªÉªcÇŽy/ð¤ô”êÈÝXTFFN¥Ô£,(…%S9v¡:c"¡W$Ð/V l–Še©r>BñŠ**u¥T@¯–Ô~çœêˆ?5¶€¼ÙoMÎvŒ¥B.d°)• 0>Ÿ<ê ›^”¬ Tž–(ê˜RyDý}º§R^ ‡ÊDuFÅ“©”gèÓ€Š|¢:vRAýéOýV6™Š*ºùÁ=½[ï¤?Уÿk<ò†Mn:&CŒO Øç¶Ø”Ê›óN¹ûw•xø¾¾;ˆ@·6æY"ÝNàuUÛûSøH@§ ”Ï#¾UþùáÔÎVìÛ·¢svâ_ڷ͸ã]ïÝûv{w¼k¼mßKñŸÑ ŸüaçCøßÚ`$з®v$àD¿ïÔ1;—É»s:Þ}™¼ûrÇ»sÈ»—;ÞíO.þó´_‡ún+>=˜Ô¹ díÙ“Õ¹¯ŽÙ½g£¼ã]'÷<éÑñ®|ãžÝc:?£>ù¨ú´“ÿýX4 èì¹€JuãÉ0œ èp-oOàâtP‡8»ÔßÐå¦øâ»ƒø1@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H $€@H Hà8Ðéâ²c>B:œ€ËÞWGã@ Ã X Fã\@‡ðû—-Nu:/Eâ'àB±†³ð¤PwðÚ^ˆï èt~/ǰ€î&à>œ²`㻃º›€Má|ƒX‡УòGsð3ÝM`àFŠénœ ¯ŽÃO u8KÊ N?,ÖÝ]ët:ÁoLÔCº›€ÂŸräâª!ÝMÀ|õ!\8¦Ã °¨¢D®ÔݬV (..ÕÝ8ùoNÃÄ:œ€œ²œ.ÀE些À€Ü• ¿G Ã „¼•Êï’ènfÎÔ 1~›Hw0ÊzË¿P¦Ó ìž-ÁïênÆ )JüϾ ô§8‹Þžƒß,Öá„”Kº!~¹\we,¦8x}N ôí…B¼Ä„î&`hI…Ëñ*#º›€dî«û~•$Àä^É4¦€Î& žJQÆ÷wALN€“öÖüû¿¬ 06.˜cN!M@˜œJñzáû ý'K äÍ<ƒ^º¾”/S0?–ÀÈ>`43˜îh"ü§ dT¼e¯ýh‰'µõÁÌR]ÌÄ·&ð•Ž$ÀŸzج7¸Ü?àÙûú’‰[ñCò?M€uø›^½¾€Kˆzµ•ƒw-íÖìüF¾ÒÎÀ­ø5ÔÑø$À‹¡Ø½€OÔºj^i¤‹™¨3žŒ¬eE5ÌÛˆ¶OŒš&ÀNx#£÷¯4Õ7´òŒÈ¸ÁÀÎ u6ÞLÀÐÚ3rÆy.ey¾vr¾f °©ˆµvÔH@bá:lÒ'-Œ¼Úõä(Úùr}K×Є-Œ[Ìê¿îm-åir½¿~|ü?½$LÓï1ŠÍƒã²®3n½;Hats Õ›9õv³6¢áûÉ¡®ú$0äµõÒõkg"c{¿Ø”­ ;!l»0#ƒì? p„r[ïÈ©‹Ž0êt îLú(S±^O“¤' f9=°_=eó¥Vîa é»*˜4x­ç—ŽìlþçþÃæ p<6-û°²1QùʼnaVRA×{qƾjH=@,}‰™cÀÈKŸ¹ÒÌœC蹜ÄH[¹PÿÏ#%Y<Ããgçîü¥ÛÐtå¹S¢ýÍ$Ü»Ÿ rnø`_„„#Z¹…ŒK[¶ùd-Cå¯.™4p€ÿÏý‡Ã70s™0{Ù£ÿ¾Á€3‚–Šë2¦Æ´”ò9w9àSbWêcs%& ï°ø´Ì‚}%õÚ?xíÕg7/š>f¨›µ\ð×yKO àì9afæ#[?(ÓòZ”'·åÌMŒ vµ–‹ôî²ÄH§<‡ghæà6>eñÊMo\¬×ö¾zyú´ÑCÝmMÄú·D9äP`áä6nzzÎÚí^­ÓÞoÖ—<qj|T «‘„w—E`ôVêa`Ó;½WÈèió²Ö:_£½Oš+¿Ùµ*sVBL°»ÂT"лuðH²^CcÒå­+<ð}•VžÛ´Vý~xóÊÌYSF‡ù:[É»/€q¿—„ý³ÌžÁÑñ) r 6ïý¢B+ϨÚk®¼·ý‘¬¹ÓÆFø»ØßVYÍô…R3[7ÿ°Q“g.Ì-ØôÔ{竵ì€ÐR}ù“Ýëò3ç$ ö´³‰¸œn/=.§iÀÐÄÆÅ7täÄÔËÖlØñæ•Zv@h«½ñÅKëWfÍKŽâåhi$æÝ~ eqô#K{ÀˆÑ“S3²V­/ÚõÞoUõÚrDh¬¾øÑž krÍœ:>j°“‰T¨ßu,6µÜ—z˜H<‰ÌBáî6jbÊüÌ•ë6ï<ü²V[žb·Ô\;±osAÞâ9ÓâG 4ÐÖŒì>]œE‘ÍÉL­¼ÃGNœ>gÑò5=yèË«5}¿egßzjãš¼Ìy)“ÆDö¨0—Iøzì.áÏs©‡ŽÍá ¥&Vþa1ñI³f¯ztóãŽW÷ù>ÔV[ù¿÷ön^·rYzj⸨!ƒ\í,ä~—‡P²–ͬ=B£ÆMN¿dù#nÞ¶ûoKkêû(èö†š²Þ{¾p=™ÿùiSãF„y;+,ä†ÂnÂçŸ  úY¸b©‰µ½‡_H䘄ä9‹²WlÜú¯Ã§.V×öÕÏšk”¿}òòÖ+—-˜=}Blø`;KcC¯Û'Rd3²عú…ŒKL™·(;¿à±ÂmO¿ñÙoÊš†‡ÚA{cMUñÉÃÏn(ÈÏYÃFŒ4}ö‚¥y«Ý´õ‰þx£ºîá>Oh®­¾òí;/mZ·jùÒôYI c¢‡x:)ÑÜåyiYŸOb pr÷3~RÒÌô%ÙùkÖo*Úñ›Ç~¾VSÛÔþ0ù¯Çßz~û¦ÇÖäçf¦ÏNž<>6b¨¿×@…•©Ì »Bö̧ú‹DÀIÌmÝ|‚‡E™8%u¼GÖm,Üþìëÿ9{¥êaìE­u5Ê?¾zçÿž(ܰvU^Ö¹)SãGG…ù¸ÚY›É î@gäœÀ@nje?ÐcPð°¨Qq““gÎ_œ•·ª`ý¦-ÛÿµÿÏ$ÛR÷@Jh©¯©*ýå‹w_yºhÓ†²‹çÏœ‘7::,ØßÓ…l‚‘T$è&*þÙÁTß"èq…2K…“›O`Ù‡¦¥Î]˜™›¿†t°íñßþälIEMmãƒ(¡µ¡¦úÆùÓ¼¾gkáÆu«WdgfÌI™:qlLÄÐ@o7G›ÆR± Ç:W4=._lhdneçèæí?$,jäøIÓRf§/ÎZž¿zíc›Š¶=±çµwÿ{öµªšÚ†æûo¡¥¡¶ºúFñ¹Ï?xmÍ×­Y¹ùú׫•Õ5õM÷ßBkc]MuÅ¥ŸN=üâέ…›Ö<’—¹`îÌ鉯ÄF„òt±·±0‘KÈÐÍÞÓÍR ˜YØØ;»{û1&nÒ´3ç-X²,7Ÿ¬6mÙºý‰Ýû¿wìôO”*«kjjëš5<âµ57Ô×ÖTWW]/ùù›c¼¹÷ãäÑo\W°:ù²Ìdß'³?&&rX°¿»‹½ÂÂ\. yú]Ï?åóÌ#JK¨—¾È@fjn­pr% 9~â”äÔ¹é‹—ææ­\³î±M…EÛw<³ïÐ;Ÿ·sÙqÖ¯]½*/{é¢ôÙ©I‰ÆÅF… ôõtu´³`,“ˆøúÏÿ_g\ÙuN®ž¾ƒC#¢G0™„0{þ‚%Y9yù«Ö¬%-l.Úº}ûÎ]Ͻüú[ïýç¿_~ûýÏ¿ýqñʵååÊÊÊ*òX«*•åe×K/ýñûÏçÎ|ùùGï¿ýÚþvíܱµˆÌüz2õ+ór³2¦ÏM#“?aü¨˜ˆ°Á¾^nÎö Ksc™AÇüw· [†QÚ¤£¡D*§3ptq÷ñ# %{ aÖ9zþ³n®idQ#‹É`€µÂÁ™tà4dXdÙ–‰“§MO™9g^Ƣ̬ìܼü• ztý†› ·lݺuÛ¶íwÚFî(**,Ü´iÃc®+X³ze~^nöÒÌEóçÎL¥çž<ü‘aCƒý|<ÝÚ+¬-ÈôŠ…üîÖÂ¥…è ôyd1 3°TØ9ч†5>~ò”¤i³ç¦/\²tYNÞŠ•«V¬]·þ±›žxjKÑÝFoË–ÂÂ7¬_·nÍêU+Wäæde.&ûÍì´I‰ qãFˆ àëåîâhgcIO¿„œ<‘ýŸ}?‡6:‘ÄPnl6ÀÊÖÎi ›§Ï ÀàaáQ#bÇŒ‹O˜<5)95mÖœ¹é -&›”“»|yÞŠùwZ‘Gääd/#³¾0#}Þœ™i©3’¦&&ÄÇ3<‚Ì} ™|w§ÎÙ—ˆ:¦¿Û‚Å;_£´TgBz'"Ø(ººûøú ŒŽ5.nÂä)S“SÒfΞ;?cá¢%™K³srrÉu7zË—çä,ËÊ\²hAúü9³ÓÒfLŸ6eÒ2õ±Q‘á!Cý}½<\:f_JöŽég÷Â9(ð…tF&æ¬lìœ]Ü<¼}ýƒ†„„…Љ9zìø¸‰ ‰S¦&MOž‘’šÖ¥ÔÔ”ääéIS§Lž41>nì˜Q±1Ñ‘a!Cè©÷ñ sï PXY˜›ɤ²óóôï6ýeM ŒdQڌ΀trcs:{GWw/?ÿàà¡ÃÂ#‡ˆ9j̸¸ø„ISžZ;=99%µ»ÑK™‘œœ4mj⤄ qãÇŽ:tp ÿ o/wWgG{[2ù¦Ær©X$àqõzcúÿÊ@ÝlŠT&715³°´±µspèâîáåí3È/€ä0tذðˆÈáQ#ˆZì-ȇôíÑQÃ##‡…† ð#ïåîîBv{;… ™{3c¹zò|’/‡s÷×÷ŽY°Øêxê½H&36!%X)H dGr÷ôöñõó 9„ Kÿ`xdTtçèÝ6v£5|xdxذ¡ƒƒýýy{{¸» tv´³³±¶`Fï9dòÉÂIfŸÃ~¯ÏÍîØ92ÐcDR`aiMb°sptHÖ9:ÂÇ×wßmùúúúøx{{yzx¸¹º8;9ÚÛ+¶VdæÍMdôÜ“‡OOþÝ÷ýN“^ަ˜ƒî€CïEôŠ 1$ûÂK+k…ÂÎÞÁ‰ìLÞïLò$£çãÓÝèÑ#ëåéîîæ2ÐÙÉì5¶ÖVdæÉÔ“Ç@""{>Y7{ußïz[ÈÚÆáè“¡S [Êdr#c33º²MÖ¶¶ŠnÙX[Y©gÝÜÔĘ*3«gK—fßy㲜eYš|mö²¥Y½h骿¬Îœ–“<{Á¤…IɳÒ§Ízäæ]ù+1»=µöܧ¬d˜ª[T–W–W(Ë”eå7*ÊÊÊ*n¹o4æW“xCŽhøãÔû¸^­·/ßÔðóÙ˜` E~Ð7óøHáb‚5øµ8æCÆ% éCIãa‚5HÀ '0 è||L0$H @€ $Ht“€Æ?,f ™¸^@,Ñð7«ªkzT]YS©Á§u©ª²²ª¦UU·´þ©¥±µ±¹¹¡¥±©¹¡©±±±¹­µµ©øüùó¿ý|" ?,Ö(ˆ# M=kllh¸ãóÉ?š|i]e}S/j¼Zu÷½ÿRöœY³R& 6Ç* Q‘ï?ø ½zùÅ"¯)ï~ÿï£|ÝÜ\íïý°ëXQGøé`kCï&p½òî÷ÿ:ØX(ðõY˜_NG|ȸnô”@ fV»žöve=œ ü$ÁÌ"@€ $H @€ €»& f`7zHà—A"̬ÆXâè÷š[zÖL»ý6õ¿|mcu“FŸ¨©âŸ.]¾ÒéüOß~÷ý7?|}æ·’ËÅDÉ•ËûËpÉˆæ ˆ"ÝúR}Ý©¬TV*︵º²J“¯­(S*«zOeEiÙM×~ÿþÜÙsß~÷Í·?þðÛÙ/Oú©¼ìúÅ“Ÿ~L|€ùÕ(È÷Û5;ÜóbÞNôê¯ܪÖÚÖÚªþòê;®.ŽÇüj”ÀC¸v°¯^zr¬Éé`tÿým¢Tü¶<)ì«ð eH L0$H @€ $Htõ0^k¨hOÆõ%ùfMm]jkkjkNƒ¯¬#_Y«Éçi¬¦¡þ/•믔W^¬¹z½òbuéµÊ²›wÔÕUÄëc‚5H@õ~[»&4û¬ÞþÒÿ{m­í­míoÚÚþv_^wP£†÷ß¿Y<×jt ˆ>ÚoOñg«5zFПÿlõLœâI!& $H @€ $Ht04ü¤P“úñµƒª™Bîßá…»ÀÇ~ÔñÂmLp3?¯kkmklknnmhmnlihnjhjþë/Z×?—Ÿw‹åËò˜ð.Äü‡q«À=/ð tµ 0ð\àžÅèaÆ»H`„%‡óÃ~òŒàžMÀ³D]O`¢3Ž $H @€ $º˜~RØEýòzææ–¦–榎7Í755ŽÃõwb‰FmkÕDKë½ëånl¹ûýuÇ:zò³O¿úðÔç}ýy§Ï޾3 ¯?ÕU |ѹŠê»ß_2ò¤¸Iâã&'ÄO7¾ÃèPs¼eW D1/²ª»ßÿ{Œ«-͆üCÿÛÁÆBÊÃkQv•_wðFåÝïÿ-XÆ»WŸƒ ˆ»:”0ðÁõø5HŒ™íßO {N@‚™E€ $H @€ €ž`ÞËM]»kíí¿â'…šcä+Ž]¿VߨX_×XWßù¦¾ã ý/ýr¿³5î‚‘®ë2Qi2¹ê—úëâFM¿´wܼv°²¦¦º¼´ªT©,­¾V®¼¢¼v½ìrùÕÒë—®_¹rµø—÷^핃¯ÜæÀ˯¸a»J ¶ß¾îà"pÙP?9ܳѸ|´‹tê¥'ãð«$ýäIá=Ã/”!$€0ãH @€ $HÜL@‚t=±.]/ë*ý7º•eUÊNe×G#;±Ä1µ3ÆÍÕ³¸Mý·–ÛÛÈ»ê7ªŽ7ôo>}êÿž{zÿ öîÜ<×v•@?þËåáááaᡆxÛJ9˜ñ.ˆî¿ ,´41û‹©\¬×ì'Ï4}(³„œ¿aãâþò}ÀÕ¢HŒ $H @€ üI!.Ò$q´f§°ý>hïå|þvQ»ª½3Šö¿ßÙÖ2 h€% (ü쫯{ôÕÉã_Üñi§¿Ôà+¿>}êħ¾î=§O}qì³ÿv:yòÄé_ž>ñíÉÓßž8{úë³§>ï¼çØÑ!8h’ß&jVÖòžä.[”±ðöOËÍÉÎYÞ³ìÌ —æ.ï5Ù™ gÏ™ÛaNzƼó,œ·8}Á’ù™ .]ÐyÏÜ™“C-p© & èØx÷(ÈÏ×/(èï· VÿÓ³?ÿ€ à^àãåîÑÉýVnô¿7ïqu0á:1ÍÊŒz$—Édò®n¿÷/½Wr¹T"Ö€€‹?P«a,ŽØçÝÇ—vóßc±Ø=b±ô@?‡½@ûü?_. endstream endobj 28 0 obj << /Font << /F26 5 0 R /F14 7 0 R /F30 8 0 R >> /XObject << /Im6 27 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj 34 0 obj << /Length 1925 /Filter /FlateDecode >> stream xÚµXÁŽã6 ½ïWäÖ˜xd'¶ãÞv¶h^v§è¡Ûƒb+‰0¶••ä¦ùû’"e;™íí%¢(Z¢¨§G*^Þ=Ÿ‹T$•¨ÒÅËaQäI•ç‹2ͱY¼4‹ß–ïûfµÎr±l•ÿf•çKÇ]c^I’žZR$lÙꪓäY.'Õß9Åß›Á»úýå§çïÓí¢Jª|ŸÖe²-³ÅºÚ$¢`§>‹´$Ó[ÿwɶØ-Öi’î¶dÙšU–//ì³ôª¯Wi¾¼’â¬, Ú«Ž$«¢«†Ç.V{ø×[ˆÅ:Û$yšÒì´¯¥ qØ.µ£ö°J!(Î'ÔýuµKEò¹•=I†ÛÆèþHbg,›ù“±f8ž¨·ŸO´¯<¿3¦â¡U&–ƒ§ÎE{þ ûu§ÛV;U:?˜ôzÖµl±³YvªÑrÜR [Ê9^7!Ú”ê\È0t¾ (‹¥lÔ—AR¯\žôñb 2µV½×­rðqJJÝSk¶RÒ¶«4®â•óŽÄ O)- °…ÏBd ÌÉÆ§9pB³¦–<ýž¿éÀ=66dÚ)ÀÙl¿ÛŠ6L!ÏJ53'°ÈËŠd“~51Hñª„ó=þ‰ V¯µlÛë›kècˆªX©ûÚt£Öy-Ãׯpf¦›Àínà›‘C?òtx¼p<œŠGe¼nnŠÃ­÷¹b]ÀÏåî®,aû?<%¶”{ÝjÃaâ&ú¦e÷é%ûÓ õ)È®ÒÝò˜ò6?¾ÿ™7òÌó:!G+a2múG‡óè´˜I îÑ<àFäÞà4Sl«åàÆAjØ[ ñe¤š*: ºTŒ¡œÅ'˳¤¬rpŽÃ(²¿ ãn4¢íAgP¸«c¢­ˆ@÷e€ýi¢4t›øªZº!+î§7!J §I¶»!-§ý-€jØÖ1^ç½b êHéSÊŠÒx˜[@ä5nliNƒë½¿ÇÿHá@ÿ„[ìÉò‡G{ êïÒd£ÞúÍ å¿Gum¥c—V+@³î•‹wuoâ~tôRÙÎÝúóZÌ“õ |ö ŠcÞë7bñÔßÃJ›]J¡A! ×*³ovb2ì0  Üš#›Yu7Ÿ“ݨ Þà$¸UTqÌŸ¨÷v_¨ÕÑCKª1‘¢‚€à“ÚFpÀíAÆùœe[« ¸®Š|™¬JT{‘6uÛ‚€ÄÈ){¶ã ?ãªN¾âI©;¸9/­˜ÀÏÖÔpü³ÌÇÎüî¶_‹;äs £½¬_£#\,prÒp|‚d‡S¤%ï86Мxˆ ô©V Ýuƒ—û–»òàƒh ]Ì'úbô"Õƒãï.'¬lÆ›kéb¯u;iɾSH8Úuì…£ölÕAYºûë#8Œd µI?V#Å`™™>†0QÊà¸AIf#8àÒÆË9~žˆtõh0Q¸mo ¦–hk@¬Á™ÿ 72î Ò‡Æ2ÅéîÜ*f¯¡o”x÷ Ÿ|ØI,[Æõá|66 „kÓÀîÍxGìPû!nœ`ŠÜéNúG8ßAÀG­Î~ Ê5£ça¸Ux4Q'XK4'ï(0ŠrƇ‚Kdfd%°´v,!%`;Eèn…NöòˆèBø¥ò£ž‹;ºú=p8oâ;¬¬ó>]õi|,)ÿmæûj$Á%lt=óñm9Âô«h,æ³z¢ÉÖÜ¿ ÇŠ/ƾ4íÐ=ä±_x‘ª¼Y¤ÚM‹À/Ú‹‚çö¬p†AÙâëôJ®¢Árz…‚º1Ô^TÛ&4þ‰U”À-)ÃÓ }‘¼²é[ö'ÎŒ“ ¶u£Ñü¨« Ï«”)XZl6»é‰ŠÜøÐ¶<¦¨õØÑÑ–2+HÄd(áÓ7!1$Ê ;É3‹˜b°®"ÎçØ.êa¹Põ‘?Ôbа U S5‡ýrtÊ›G»âF^“Š]ƒ“•È$.È0Û²÷Êmh;2` ßÙ^ô kꀼH¸Á6*Èo¤œ"è«°Û¢š¾çúù@㤛¨ïíŸGK¥8"L÷Wjñrî“x AÓ™!”- s‹ë¢e?tûpŠø¹ñ…§'Ö-ñiåx.d=ñd)ñQá“#¡¸xÇàj( c®D[ÖÃÃÙØñóGÇieíuÓ‹t±Â¿/å§ <:û[)ü÷2¾bás·Óyf­¨b½¾ôfy*“ñµ¶}ÃZL³?|¸]±SÝ> endobj 32 0 obj << /Font << /F26 5 0 R /F14 7 0 R /F30 8 0 R >> /ProcSet [ /PDF /Text ] >> endobj 37 0 obj << /Length 2061 /Filter /FlateDecode >> stream xÚÝ[Ksã6¾ûWhor•ÁÄÜf’Líf6›MâÊe2Z¤<S¢BRñúßoƒ(R”hÑàVmMù [ýøúC7¿¿»zóÊÁHcMwë…H ±P„"ÌwÉâÓòîKz}K^¾û÷?ì «ìçŸû¬vßUÙf—§o¯?ßýxõÃÝÕŸWdá´q„´"‹ÕæêÓg¼Hà»1-žš™›"Ä5 óÅoW¿ EH-¥tLÌfH€+âýÐ>Ef diD#e ¼ÏêU\=¾-véö,ð÷Y™®ê¢|þW¼Io¬}?ïê ¾#C©  ¶z…z]ܘ>‹…TbÄ¥ê›ø3˜f ‰íÇ6½¦bùd/ŠÒ~¦×D,ÿ“Uu¶}°wÞ[ר‹$®ã üâBþ”Õ_œÌ$Éê¬ØÆ¹“·3W:KC¹r–‡ˆJŒ‹àIuEø)8D)Y_ýͨ}ìUÐE2 ›)à–ïÀ-·IžÚé}¹Rƒ"ÔOÿjݲ>)˜ JÚ™iYB08^:ØÅ[’gƒJ¾ãŸâa©½€‡€NvØ ¯óù€vþû5!dçYr}Ë8õ2l™mWù>Ií7e'C#™Š~1B5Sc2Dkiæ„‚,"`Á*žÊ†ëŒ&ÙÚªVÉ*{wW«´rþæCѤR3³°·î”ر¸%” ¢$ ,Ú?f’R €@br¹-j{çë¾r£Ø~—¤ef¦{D,«çíjè+N"4ZHE‹¢ _q ¤I#‹DNýb{âG™FZŠy~”Ãõt·wNñá1ž°á1w».}º&@Rû•ÿŽC‚dX™,bŒC¸€‰:…Ad¿~ÛËM“.ftï&˜|‰ïswÕd‹˜°nß»Ç]†ÃÈeøÍá1ÜÇM±Í]”‹­‹qË æb?·‘ï/ɽµö°¸žæ;.%&AЇe,V!(ÁIîõêžšu¶IÇ€€P©RAµ¢ ÕóÔŠD!¡ùµâ âd†¹3‡Ymîtíú_ˆkÿ˜ðí!1â•I‡1 xÊ@@õ«£©Ž:]bŽ0çßvq8Ù_l¾Îãg ÙuyÛvxÝšŸ¸AžwW`G´™ÃsæèË.ftŸ`iù¾¹ûì—vßÞ:Þj€×:8UQÕ‰HB«>O[,4b>j‹ÒÚ@¬k‡À†#RÂî›®ä_sØéÖ3ô×´.³N™ÖãÁ¿Ìý8ß¡äÑ”Ör—¿e±9¿œ·Ì8¦y,@AÌ#6 í WÓžiO¶Œ‘¢¦xX[F0CJžžbëboë°c+ /!X“I¶xtØöéþ$‡sxóKˆurH†ÈÑ‚+@F\t\Ä‹\%"¨ZÅ<\%)’}¦‚𦺖b9ˆñ ô5Yïaç0½¥¯ƒí¿ê­ø 5µ å—eÛ@ ðŠç°€ÊyË;‚\LXÅã©ÄîÏy‘7Xhq]Â!“½4„_€ˆ6Þ2:ñVQPk' MÅ,š‡C˜@ÄïsxIÒ<­Óð’g²žÃ ÍajË][¿ol§*šøhC“Ê#=AP‚@µo‘ &{iˆµm¼dtâ=Þù¿È˜5¯±fá¬ÄGUFžU§*]¢Q$eóH„EX¥K"L÷¾“ŸÕ€œ^ ¢É.Âc¯¶TԵ럙ïËÛ>¾kêL¥J€®ØHk: qÍ¡T¹¼·úÔYu>ŸìvRŒü½Ršî°êBDøÐ‡Èè„^é Î‡CÓjÞhÍÁJ<‚¦ÚïzxVZy2¬Y>ì·7ïV+<ÎÓ•FjûòbÚ€È}²^à¿Î´3AïØ°íŸ4²»tU§IOÖ¿Ì-ÖG;³ë¢Ü¼µÃ&1>Þ@·Oõ²—5Ç”À"<ÅÇcø pr?TË òáШóyZ&ð‘°€ôÈgÉH¢åC:qKlºbC Îa[‹Á®q?y£Üæw#ߟt2rbïÁìÞ^D=ž¥<šÝäùê<¨¼æÁ •ŸiÌœìÀ’}ƒmÕt/ áù:GŸg×Ó«b³‹Wõì;¥™WÅM»•ìWdȺÒv{vmÊmÀ£_Q«:.ëýnŒÖÓA ÒA‡~Þ¼ð›…ÖÌ™("ú´fÎûLlµ¦ë4„ÌfµéÚeK©Ò#Â¥JçLRuö¼Sá·`«Ç1\Xïƒ ½¡À3µY@BʉÌt&°“õ6@Dëá³q/eÓ¬y“6Gæ1­`Í=êfVyQ¥SoºRƒÍb—O½ža្ O¾‡ý¿o´ÍöÕ—£~g—n“öŽKß³™âtèÊ0ž§‘aoÞ"Ì‘™ÓõÆýu¦‰{×¶ö0j¯4!“X5Ä@;¥_z+y”óïÏþoƒJéŽE¿sKÆs±·ƒU¼õõ²ß2é!ýìÿŽô]²¯RWÏü°ýZ˜åù…´ÂÖçÀðã‹[Ƭs®4’v&ÃÝ™æ™jwì)&ø C•wû–ki endstream endobj 36 0 obj << /Type /Page /Contents 37 0 R /Resources 35 0 R /MediaBox [0 0 612 792] /Parent 9 0 R >> endobj 35 0 obj << /Font << /F26 5 0 R /F14 7 0 R /F30 8 0 R >> /ProcSet [ /PDF /Text ] >> endobj 39 0 obj [278 500 500 500 500 500 500 500 500] endobj 40 0 obj [777.8 500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 762 689.7 1200.9 820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9 277.8] endobj 41 0 obj [277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 319.4 777.8 472.2 472.2 666.7 666.7 666.7 638.9 722.2 597.2 569.4 666.7 708.3 277.8 472.2 694.4 541.7 875 708.3 736.1 638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.4 666.7 666.7 611.1 288.9 500 288.9 500 277.8 277.8 480.6 516.7 444.4 516.7 444.4 305.6 500 516.7 238.9 266.7 488.9 238.9 794.4 516.7 500 516.7 516.7 341.7 383.3 361.1 516.7 461.1 683.3 461.1 461.1 434.7] endobj 42 0 obj [556 556 167 333 611 278 333 333 0 333 564 0 611 444 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 180 250 333 408 500 500 833 778 333 333 333 500 564 250 333 250 278 500 500 500 500 500 500 500 500 500 500 278 278 564 564 564 444 921 722 667 667 722 611 556 722 722 333 389 722 611 889 722 722 556 722 667 556 611 722 722 944 722 722 611 333 278 333 469 500 333 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278 500 500 722 500 500 444 480 200 480 541 0 0 0 333 500 444 1000 500 500 333 1000 556 333 889 0 0 0 0 0 0 444 444] endobj 43 0 obj [667 722 722 667 611 778 778 389 500 778 667 944 722 778 611 778 722 556 667 722 722 1000 722 722 667 333 278 333 581 500 333 500 556 444 556 444 333 500 556 278 333 556 278 833 556 500 556 556 444 389 333] endobj 44 0 obj << /Length1 1652 /Length2 7931 /Length3 0 /Length 8989 /Filter /FlateDecode >> stream xÚ·T”ï6Œˆ´Hƒ°tÃÒ)HJ·t¸, ,±K,%%Ý‚tKJJ‡tÒHwHw# ¾«¿þß9ï{öœÝçš¹fæž¹¯yÎYFZ mN) ¸9DCpòpE2ªÚÚ<@ÈÇòb12ê@v¿ìXŒº'g(&ú/†Œ„@ÚdA$Q(¹Øxø<‚¢Äq[sÿ* ãáùíäùeFöàíéwX"Û€xC-!È,Og+€prx{þÛñ_„Åð€‚sˆ†õOv¤bùFÞ¿Ô`DÊüõùûÉ©0 8ÌÎãúï+æVÐQU×Õfÿ³å¿ÒÒpw€'§ €“W ˆ¼ÿ›æïüÕüo«úçáþ•Pf ˆüÑrxõáú§0XþÜVÀ+¨Á‘r†XþQ¿1PF~ñü?ïÀïÿ?éÿÊòUÿÿžHÞÅÎî·ŸåÂÿDz‡ÚyüÉ@ÊÙ\ U8rA`ÿKÕƒü±Ïª ¨‹ýÿz äŠHÁ¬ìþ$ÔYê±Ð€"ÀÖ¨è¯{@¦·ƒÂ pgè¯7€“üréÀ¶È·Š3ò¶~» ÈúoI9nñkùx ''©0^€'rK- î¿Å àæ‚ÁȲ=o€%Ü ë׊¸A¿L¿‘ ?!þ†"Ânó€ü7âGR‘«oÿOð¯ãs[ü "Öÿ‚nè¿  €Ûæ_™ÜþˆÔ57ì_À ÿ§42Ô)ø¿Šñ ³;ÿ ")ˆAd—.ÿ@^d:A^÷«ßð?£»89!ß;¿åœû_ø÷Kq‡€±f&á`±@›ÊÀOWR”nœëƒK+-a1Ý¡¦©,Ok•)ÏÇ¥_Z”’õ'jLNzQ²\ ¹·§ù-&(d"Päº×¤8³û¾Ÿ¶[A¨-àVÃB‰akc5Ÿà¿4B3bŽÓ›¼ êàÛ,ÛÈýÑâ¼i(² °ä_Ð&P"¢¤2ZvQ# hV_ Œ ¢ Œ’\t_ ÿ@€F_JŠ$ÿî±füea¡7­§;‘ï$G¹³\°4ø19Ñ+%ÚŒþ·ŸÉ‰cÓ”êœQ˜¤.dŠâøÇ;Q²ú¿`Œíáx›kvži¦'ºÞ»ÿ ¬ŸbW·6þ€F¥>“BX.ÏêöÔœëØÞ„VØ3Ó]™ðh@Œ¿sšš¹E;·ÐœÐ++)›ö€­BðÕ›Hí™}ÊA ¦X\YpÒ:e®Šâî…‰eiÇ£þ—¦… ¢šã”ÉLûgjڔѤ¨áUcÆÏ t“8ÎÞg ƒž¼¶Îc© Žþxïy?-/DØJßÈ ñ”rýÉ3/ç>WªJc*ÎÅÅ»oŸ2/ÌkÈõ2Tuµ—Ž]Oa¦×d¾Öx/ŽdöÄ9ÃKöÔ%ÛË?•#´0dïá73¦æâ;r–<ñ–w:ŸÝÿN}jey»«, ¢Ú¾g¯>븙·í+j_Ƭ€AM¯o|5\3¾ikH`òOj’ zK­)÷åëÎFÄC½$¬Åš‚ÕOI ˆ¼£ê#îTÍz2Ïñ_ ëËwN˜5*åúú{·‹n—†Ð¡/ÞŽ/ÿ, ¶¼<çÐ.Œe¬¹ßÔv'Ò{önHÞ¾ ¬]—VãCÀ}!,¬®þNT2¿†m×øE(^²n_·kH¿0F}Þª§1Þ&K<Î"ÿ­ÈV“¦\! Ð`—¶@bv[JNë¶ø>úgª Åâ%[¥¾0)Á˜Ïá;mⵜw$CC$ª¤âÍ ˆR¹hã?ØŠòjÜ>l³Êë¿n¡dÆz i,ËpÛ·Íwœ²‘1|cZ³¥è ×—ŠgC_pÎ`%·‹PÅÌúÅgŠe);RÇ%‰Xü(Ôìúšà?„0µ:ÿ(Äëžì„+¹ã`©Û6{ÿÐÄK©6ëÌùaÂ3jHó÷yŠÚ ¨esœ¸™Ð<ðT š‚MC¶kÞG8W•”œW #6™k‘Ð"Kʰh-#/®–îW²M™âø‘ëcD¿‚*ÅGtµ Û¿&º:O0¶Ž,ö Á0¸§ýórG”›4~º»1)Ì|*Þ¼.A¬—·R;¯P"õâ% ±CÝñGß»…ZIÐd­â‰¾LõÛôq ^¬’8#Êwlí”ñ¸‡nW-”ÒÿòUFU·Úã³™‹C“³ï¾Áƒ§¤Þv¹«:±OÚ*hk£å.v±Ö¿|~@9œ§•fE“Z*#‚»ÓvD°—p”3a`ïlÛ÷$Щ@R¬S}I‚Mç¹N ã"|vð;.£¥°Cˆcù­gÙÛÆ¦†Z\U(ÔgE'w§—‹Y"c0ú’FÊÙ¨†£‚¬ÙOwËFˆ—rÍ~ß"t¹Õ"P»g‡çÝ©'Æ>Ró(ÿrŸJ¦g$ØBýø´mïhçóóËÇ?ãƒÞÆæ;õEKëBÂí_:Iä Sêj¼>ö¢*ò¾¯»Ç9õÐôòÊÕ/ÛiøIÌ^6ƒpô™‘GŒ€³¶Æ3ÝÝßE#{6­ƒå­€ä% cê{«û’úQ臛Q¡1Δ†²p«¿JUl÷3tW~É=˜Ž˜Äm[¬ »éjL½¤o'}­÷I¿&äDÁ¿(Sñ+Gö¤Ëžù%/)3jWrµYɦ÷>E˜’Þbß˃mG›!¹Ro1¬—åÝÒBD^^ðEüVÊbY¦Il=ºÐÓ/( ªÄÞÞÄ¥jÃq‚Ç9Þ¶6wh-ãsMËd./VþDeOjùØÕ-½ý¤úïF4ßå(Φ¿L³©%%ÉÕȬzõè´Èw¡•¨>WfëêõíÖté‚fŽa>S\›=ádÇX£# Iò?x¯ÊÍ\Qbü½}×ò®uÉñzŽ£öV”“^åsìÜã:*GpØÑTöTÿzyEQJwe":™>ÖnÊ.¤v†XX¡Â‰ðûîOêLlpF†ÓS4è¥ä[ˆWZg-Ó|¨Fç !› #ùcFŽö¥¸‰uãFÛú´j­ü\ñý{îèçýôÑŸ>[fì,<3˼µf2î¼dX²ÒK.3KGùæ˜Å/6¬»?›J6^1*Øø3¹R¥¡»O¬A€4~0‘Ë&Yd³xýXä~iïÉå×^7>ÍG&q‹®òÓ£eµªp) 2;SÌ­Àd¹]ÊcmžÃòì*Ê"þÁ›ÄæŽAÿµ÷¢±v—GL=`’‡†ÁÄŠ5‘«frJ[Qò³G“¬UÊÐÏúS®¼ÐG½>á`7Ž@ñPø®©P8¨Nàž[pX‡¥¿û£ü†˜;܈u×/LãÛß{ž·øÞÔ̬ÊïV¥÷%jõG©¤wì£í2É¢vVd¦Êš6Ññ&¯F¹W3^šÒ=Æ1¤4fò“¿cXáî"žH”¤ˆ|šÜOì¨2JCÝ3>Ö² þaÿªøìe©Ãu L'6÷ª•aœv¯fS·Q¢(±%vJ–0ý ;âÙÁãC%´¾µ¢‡«+A}™Û11pLJ¹²u\kЏPŸüB‡îèpä•?VEDý¡ª9 Ãh¤VTJR±n¯4ö9^Õ<É ±©ª¡O÷£žuº#CðŽt?pä@›þrUÛ¤RF÷Ýçø^¹HÌ>]¨ùãtˆ÷)>MDßm‚Í1¯M@/\š‚‰ˆÕs‹Hmwè~ ä[jb×þ TA´E/HI¶.ñ‰$‚Þ J¶ågaôÒÞÓZØÞIð!OˆÍ2Ùµî5Þ§R¶-ÈWaxÙË…FZ{è7F÷| rÚ7Ìo†‹V"öDÆ.]9AÚø“€ƒÐŒáô©#P¯* ÏP¼Ì›ÈtŽ“÷Öz?Û–;‰òîK~Uš"[B&J³~Ûb™¿•ð{#_ÅI±âGáç¥>=ôry‰~ÙˆÝÄcbÝkD¢íp#8JÁ¼d—îU›¦˜²ÀŸ’¿µüXŒÇ(¶ÌYVÅ$Ÿ6îŽï[kÇꓹ£Q#u v>šëÐǾGp4¢LéÄ®ì+!âH`æµBŒ.~í[Šøq\®ÚkóªÛw9wÉ@àä»H:-Ð ¹¸>ÏHõ\Qè>‹íÑ,h§æâùÖÑŠ,Ð òÕmûImæ!3Æ[–×Jø}„Ö³Âï{²ÕÚ)„Ys™B·\™üLCu멦Ÿ&gù¨›k+íwÉoA8Ë/ô¬Ä[ÇOn8挹:&š$vKÒ¬Ò9ÞEÊ×q³éúñNAîhÄl Q–&Öe¾1º‹_(ŠN¹Þaª&Ä×DÚºmKŸuh]Y¾†¤+¹¨·Xàîtí£­žX۞ؕȡ²•q|üùþ¬# ¨ñð©ˆOfKÙ9×qöÝóöø­X¼þ ~FTj 8[?¢dÃÚ¬©‘\#Åpã'¶Ç‹Hi4kŸ¢û³&44!ðxÌ'Y¯äÑúúŒhvA€3‰Sõil*#ñõXt>:ˆ< G ›–0U txø=aríË&ÌïËVìÌ l£àR™Žf‚7Êïœo·‹-Òøì'º-\R³ó.;J=„âwÃ=-±Ò$ÚO®),…|´Š˜LÝ‚—fÖf›‚øüHCäJy½ˆ\ÏÞgKhÆ]{ñOÁÃÁ„W7Ý®|¶œ°•ÒCüÑ®»–‰Õ§Dy×2ŒÒœ|¼ù|ÇŸ¯‘ô|5§ d&’±Q“sìl-Ò%Ç–RËj_ÍvéÌA[óo®|¶„VVë…üA|æÖeöíÆÆô ;®¥ii€c9 ÷njU½àJ¸à5ÊÚ¶GŸ‘ÛØÎ'“DrºèYß¶1Ù’8÷ðõ, Y›ÏÖêK' À¾äÄ ýÙ5©0ÆŸg[UjŒ…9Mt5¥B÷˜Onpj²NÜÌ-/Mñ€ çÞ5JÈ:òÄnÚ+…¨ÒŸ¢?úG²\ÊvsnñŒ[©÷v«´/6'äý¤žP`VQSÆ2 IáM§›|4Q²j•îÇ3þ6òíìªCx–ÙC¡.´ÎsMÖª §úÀºÇ@„Y(ÍÁ…V˜^Ï5+‰ VÑ[A^ò]¬–Ü›.‡%•Í}–â¿S޵{…ŸKXcܵX —}±ñíèì5Ç'²³[Ô¶º‚Ÿ4Ò|Îdør¨—©o.îó»ÔC†• £ 2nUt9Ž=ϧ4FøÌи²KÍwœ~(‚M:5NcsàÜIß×ÈXšŠ÷äÍ»Ç.C~ŒuLǘà~}å›èIj—õG˜]Cù¸'±ŽÂ‹ƒcÕL{¿åÉ“Wå†ôøÎ+¡â%¢uê…@µÅqœ¥#:ii{Eñ³ú#C´•öêëÁªŽò>Óçï){¢el-ßä2›q à|1¨Ëïý5¼u0QLbÓêaÈ.`Táƒ+5à ±AR[ûÀ§ ªœ-}áAK".‡u 8ë×5å#ð¨Þ² u½¶Ðiíå=ÁŽ67ÑÔÊV‹úBì[gCW>1m'–³¾é§L- ÉšiŽ7¹i-ôx•ÓYßà…±¬qJLšÓŒd:faüƒ}ÔZt ˤ8F£µ¡“ÚE‚?fM£rŽ_îÈxïqÒWÙñXE bdØòÜ>fºf¢ºzŸób_Eøpa—õFN +TKCz/}ãëò¶IŠá“¸+;÷WR‘•3æ{+5E;rgéCp™¯¯¨E=t´7Ù ÷šmx‰Y#öUÄ\ew¹™j÷™±“S;%ÇvH{òLœ,9$d¸½h·ŸÓ¦qx`-ÊàÈ8FKL­²¤&%}lûÕ ]â/º"cº˜@¶syoZ@ô†t‚ù5+õ¨öcIõmã9­ZçHÒžu1}‘ šFÆrõ4¯>…õ5n…sëA¼y{A¬TàìO2ƒþ§ýôKâð‡Óí«M´kõ›%í´§Ñ?è,Dô÷ÏŽD_ðýPeÿ~%ÂÙººÖs=lئcblî$³~µ²2êÎǸ+qa»á$•zMFõ3œòG¯’]ªsáûyž5É$i§²»:¦ÕÆS+íÀüÉfIϸ}ßd{Y§wøds›È©¶¾yTêÝæÓ1PrÓmFµ{Ô¤}gR.DeØ>>½umگȄ÷|N@ü•`;ÔÖ¶žÿ4|…ÁœžÑF 2këf€¿©ß…P„“û?v¼o5z¬Ú£;,“ÓbÕò<˜hÀ¨ÏH,81”¯†„…ì+*{›ÛâŽCRô~†/&ß «~.sþ<˜µ.Í\=Ý%Û|· e¥_ä/h3¼ Žznlöš¸Â¸áÛ—½l&Ԙ銛üEï À Ÿ@Zšp'†ä½<ÿph˜D«öôX¾¼mÂN†àÏka—ÏaÃù;®n„9éÚ:‰·ðò# W“sj³-A»3SSìTÓ¤/†Z¸¤2‰kl–[úϰHÞëC*ô.u)ÉžÕê’¬æÐÑ߀ùï-¾‹Q5ØÑÓyZçÅ2¦¿›>@«Ú]Ž-;$³(ýÌWxš ·æ¡ëÝî«{V1n$¤¹wÏ Û[]õ/uÉ·{4tÙx‡\?G ôˆtÔ’0^¯Ü’Ålî>£´i~S˜/þìÇň†f~˜?ÇžÙ}µ Ë¨¾¥=~.æ°eƉ½cÍùÏç|LSn ÒÊdTÕ1§ªÁ£?ç„Z ÷?ª‹%ަ©þΪbWmQC³4mC¢K±râ4®á`A g[„Q‹OÈWhGéŒ$+<ü¦ujuô«¤N¤|ChyÔtöC0ˆIÎ;]ZÊùÚ&a÷:8zqŒ2*1Ÿõûp ,?ÉZcÎt—u<6ÏQIÌ4ñªH?—Ä­ñ[MÆ1R»± 1ÍÍSc¥§1eöA$Èg°$L|Øs;ØXÇ(cKɇ 4 ZÉðu>Í+Íïœ;ÿxJ:¨®ù’Ô8ßm¶[^Z‘×)hZ®Å¨dážÕœ ƪs¿¬” žsLÎ4œo§õ¨qÍâ›5<"×H±`å¼Áço°c 0ÄRä4µXýFÚS« ˆ(MPÐéßòñlº =fåG]»}iÅÓ¯×,6«“)Àl·`®©Ú¤Iy–—œµ¹xR'[ÈÚý®°yAÎ?G9ã¦Y e쮩jå2HáP¦Až¯Ø<%eù1³@Jˆ­·lO°õ'Ð-jX1]ÚŠÏyÅK–ÈÒò¾Ë f5uStôBž=+ÍÐßRG³Ã}Ý­ SÊ“:Hž€æ'$g£\"=°.01£¶;Á¸ÕS¿©‰ìÑO:Ç™5®ëmí—ðó;)æ¹³ÄpÍ’‹@¥\eŽÃ²ÐÌJ1=Ï\†{Ax\%ɧ»iQÙ4É¢J¼·—Ú_ª–…Ë]–Ý9¾+=e†\Îÿ|Ö}Ð7ß!y~ ¤ˆ½Å»z€˜ÊZ=õÈÇ!–ëýÐjxßC3gD¢ ÆVÖ;.hÁ€‘(Ù`×ÿ°”7§à:•ô{@µ«—*Nìê!xØšÞ=-ZùeQB>f ÊÞð™C: —‰5Óƒâo2½]KCôdI¦C2*¯*Ý=ÆæçäòV®{×T²¯Nߦ¬†.ïìeDš,îŸû¾pÍ4áiZ”yþfjhŠˆjn–|”msŽ•óü©í—õÝ_R„t—šˆñÇhEãf¾M^æðþO/ÜE¨g%4Kw=‰Ô—ÖœR}¸–|Ö¬ÐMËWÔ!zk¦t^/ö]¸KÜ×\ŠŸ)3[é'(‰['C„q’CƒhÜ>&í±â2K2ÇÎ`.]çUIôµÚ˜èŸšU?Т}%vSçïs¸ÁËh cøb{Vú°~¯Éy„h-›¨…-1§Bö|ŒMgü–êB;в2¾Á>‰OÑÂŽýÁ;³£õóèWZsÚV¿¯@§J†°<1ˆm3LC>=Û.öuÞ{» ô¤2GÁmÕƒÛHAÕêmËÕ"'_G%ªñ8 4LhK|ÓÓö¡ôoóÁ³–´EF•ˆyÔàˆÆ`aFU¿ãƒÔd†™%@^¬¨Õ#y¾¡Ç¬“v$™Ÿïá´Óû¡|=uH€°–@¹µ›¼þOÔUåæÀ¯>Ò‹ä/AUúƒ)‡ˆAy°­ UV Û*n¿Ë³V@“ ê3iòÊeÁŸ¾q=>΄ÝlŒÇØ|b¿­½ Ç}´$R»&òæÁVÉHp=ZÏŸÛÛ±\QX?áÛiûbtj:ß»×ë7—ÛY«ùšð³K-5«oÂËÔtª•Úü=¥ÍwzífiZ_B’{|ü˜¿Oö2„E0ÁÕê=è—Ço–6â®p䯓YÊV^öˆ†~UMø.¯>?¸T8­IW-üaÑd«,·gIbÄ¡ãʽP>£+p­1ê-¢£”B˜¥u-UL÷ìõ;ßmèì=ûDájv³Ï©ØÕl’ÆÿWæ~5 endstream endobj 45 0 obj << /Type /FontDescriptor /FontName /HTMOVS+CMSS10 /Flags 4 /FontBBox [-61 -250 999 759] /Ascent 694 /CapHeight 694 /Descent -194 /ItalicAngle 0 /StemV 78 /XHeight 444 /CharSet (/a/at/b/c/comma/d/h/i/j/m/n/o/period/s/t/u/y/z) /FontFile 44 0 R >> endobj 46 0 obj << /Length1 1510 /Length2 6790 /Length3 0 /Length 7798 /Filter /FlateDecode >> stream xÚxT”ÝÚ6"t HwHK·4’’Ã0ÀÀ0C ÝÝÝ!H·€t+©4"]ÒÒˆ ßèë{ÎyÏÿ¯õ}kÖšyöu×¾ö}Ý{f ½Ös.+¸%XCpñqóŠäÔŸññxy¸yyù±™˜t!(øo›IììÃÄþÃCÎ D 1y 騇ž¹B|>!1>a1^^?/¯èߎpg1€<Ð bPç<ƒÃÀ.ØLrpGOgˆ-YçïG+ˆ À'**Ìù; ãv†€€0€:a v@V¡€çpŒðüG Ö§¶„£»»;7ÐÁ…îl#ÉÆ p‡ l:`°³Ø ð‹2@èþC›  k qùËðnp:ƒH a.ÈW˜Ø€¬x®¢ÐtÃþrVûËðçp|Ü|ÿJ÷'úW"ìw0‚;8až˜ À4Õ¸NfõËu#ãn@h‰tø½u @QFD2üÃÏä qD¸p»@ ¿8òüJƒg ?]à´@µ·F¨:Œ˜â‘×3úÜá¤A ’ÄœgÍ.(̲‚rå© ÅaÌ+hÂ+?¦ Ú\m4äjú4¹ÖÃg$r{VN©Í7³u¿óà’·$EÚrÖ¦3Ê2ÕX¡\ e×@ózÑIiõ]‹wêSðÒ²K#5Ô…¦L¿`³í ò+‹Ø¬D>~ÓT ¨ÈàçBY!-(­ã°µÁÂÍÓT1%±– š½ÝšëðcNîo…ýJCºdØù—–÷C=á'pÆ#’ †Yû}{‰Í*‚ŸõÙ„uª³ðns¶øÜø)¼\t­ö.%ñÒ¢s ñúøùº„³ºj;(ŒÄBe¦ðˆíÊi^/T ¼’j‘H àõ[œ8¹'¯}OP·ñP»çû}³Kç~,3Õ¼®¶¥,ÏO Mû 7_d>žϬäÉþÔó7'.ó3ɳŽý÷mç¼ñ8ÏP¦>â42¥û£ÿ†yáMç‹8ꌷ½,©;Ê×è'Ä–CJbƒ !ÅÐʦxÁ6¹å’H=ã ZÇy –sψuÓùw>ãKñ'›Žf_5ŽT8ÉʈðYæBE6ªÕ˜E½Ñq"ôýåq¿‰á'ƒøg`Ü(¶ÖMØ›P)ÕÒ‚}cÆè–(Âúk%Ç“‹^êeâ¶:jžgƒ^ K´â E‘nZKŸy 5…Þ{ÊÀ»ëŽüöwL œ¨äƒÔ[1"Œž¬–ž…µÅOj)œ¨Ýòo˜ó·>¬n-‡+§zcó‘y|¤xôa¥»Ã•§Ž{uqm AG£“¥rZr˜Ù?…zþƒ9e#J§xGjâ¯FˆªcË÷šV1×òkIõ¸/G8WîÊPR¼ØÃŠBíf= æ°'ÏQß?¤«÷½„JQƒØW"ŽªÍüuª¶M+Â6 >AJCT+4?|Œ£WyófêÍòo:„?ÍSâ™Ý#_3]¥YW ØGJ‰§ê½ÊñöÙøöMÛ(°¥XEKí:ñ@¯¢Â,úˆHR6)ë©^¯§_Ð_™ø‰+×6ô(X^Ÿ¾èÖ–{$ÕSŸB'ž’S'1¼$É2°QZÙeÂPù½)5‹lRç𾛎\ê\1z޶¼-6Þ”´9gî ép~§=i¬¥5tGFåJË µ¢>Ó}>‹¸ÄJ僲—=+èR ØãGmÔ‡ÀƒçCzZ*õÖÞªcå£.”¡8G£F5ù‡<nïâÇó[ÌѶ¨1iæKïg*‡%=]Ñb‰{V8¼èï–8Í9ÀØÀ`«Wª.u^¿/µ–ìÈ>"ì†7K&±¨Åç⻡„Ÿ,]¤‘$hv"©»U/bÝ ôÔ. nÕd iÀ­âžÚþÈ„ú D §è:IÇ«øìÌz×;|ÂŒPÞvéüéfwfæºlêðÞŒïõÛù\~k¹3Ï•õZóÁ×S¯¥MA´"Éu0Ja'–`Ší{ª7Oì5%ÈVJÏè’Ê– œËZp…è²m{ÔO™ìxÂXNhÆ ô—×Ícs_¦LàíAf³ŒÍÌ1[g§¦„"ÐÔøÍf—Væw< ëëflYôº[}@Ü3Ôµª£ù‰ú5ÒÀÎç ùâñ_Ro\ÍPžGbËžf ÉJ.¸Á3u7°ª3ãëÆ;B'/ˉMy0F¹ü}½#&>HçM¥qDSgAðîÝ–ƒ€cް‹ SŸ§½+p5ʃPŽm™\¾WìžäPZg×4ŠHƒ6·ªô6ǃ»åY¦ç_¤¦9qPO-ùÐä [¡Ä;Í·óR Ý‘zÑ„ç34­CzmÇËï¨.[….;Þ‰׿HûÒ=°é6G+jãIGÚ¨œäé(N)ÿavlGqÈ—3!v¢bZµœmé¥$'ÅÀä^.v§ÿR—6*;\¬£õ…q»¹Uì®óÛ‡Î8…Çs_Š­Xªz·º©¸Z›pÞó£ðPõ˜¾Æù†ÏwSÅÌ-‘á8 ‡Ö¼¸¡ì+PÃ{> >k‡?šG­ŠÊVS.þÔ¦ºt~֔˖ñ Ó)—cvdä™Ú?Ú^œ—}›Ø\}$æÖ‚Kº“—Hã–ŠåÁð©÷åO(´·ÚHªCò=_û$Ç/¸Ñsø%åÑö¥(4‚â>½™GKR؟婾 !ÝGÌ…¢Ý(ƒ³ÂæµävÝ4Žv”„|qJp0órMùòeÈÞÆ¤pøìÔ²n¶êO]R*«‚ ©ZS<òZqÎ3?”ø¡ÄàÍRñd8ÌPPÂÚMÞ›ZvLáųTß4ïõQ­÷EˆOk¤ü=Ú'\øß×x›¢(_<¿n9“\ ¯ÂЍ¿F1×"³™Òú®íªS¾Í7FÑ ôpS/  ÕŠdox—Ç—X—t¡¸Û/„“Ó^)ó± c•ÅCb'zƒyiæ~6TöêKAº‰ˆ"½ÎvDú}º‹%­îì3b¼ ˆ—c=ûu8jú‘~çïïn®pAc¸¦L¸J,ÚËÍ_k7C¨ý)7ß^ôÇÑabº$¡ zrÇ£Q}Íöu›º@7ÿ¥äŠO5¯À¾²r$ÊnÙ¿²‹ ÆëEV¡ôšfÎ)²9~Xn ½Ëä2EþìMëœaeABÅ“·¯«}êqd¿qòã"š`ùÇ Ÿ‚’kÙ+˾խd¸;kNYÁ„a‹?¢Y‹³×PŠ}ëÚ‘ìÈc]Q£±F%éMb&Ù‰sÐx“´ó†?`›XI²é­Ueß 4TíA]Ôobñšq6"C³Àövt1þ°~Z·#…°73aQmlïÙþñé®™<¤ìÖ¸äDÌåéË¥þú¯Vô¯}²QÒc|ÔÙ·žÔ‹ÚsÒ ô½¼ùè#q“…ü=Ó#¨é£Õ‹ñÅ%Kôk)mœïæV2;6 ‡£Lg-ç; »J~AB¹AÂÙߦq’ŽÓjÓç¨ ü¹wy˨¨>´ó¤!trÖÚ¢P¹¨ÝÁ8¶”ÝxZ¯À›3ާGÏÂá Òµuëiwæ'{2ýJ×µIv»eiõÏýOD ÚHì$°£M¥•_^z»ß¯1Ǹ,V<²™ê®òR6óËföLY%ÑZ§Ó›ñ“a|ºÕ·+“O1£hË&Žø^kY“zPuÆ9ó¼?Oè|£ã>õ+ç¢RãÄåwnŸq:ë~Ä’wû{\*1ÞåQ…ïsûæ·Ž=Ii.#[ïRÍLÕÖe%IW¿³¦'»GÇ>ÜYÁÁ³ãŽÑ©#ÒÆ*=?å… jé”îÕ`VqHÏ].”4¤ï þ:$=%Å3¸cø¨/§üåê¥È'{²éÄûO=¯r4\q)˜{ÅeýÜ%Ǩ†â¾(ÿ‚{Óp62õ+|ÿ¦çÛwFió°FÊ X ŒÌøiæ2v³8šÁD–4 þ:ù s󟧫cýEé—]´“”‡µDw{ó) ¼ê€¦§ù~ž,.O3õvEéÍ»PKµ;¾m²”hd+5¯ÝÏÄCí/}kgÚ@;0”|–ï%5/ ¡qz¯Ó†KëíDfiÄ*É0/Âþ%ºëè}™§À|=ê e p©¼Ñƒ/ï¾ÞzeZ€ÓI•@²oõÊ[!‰d¨¸7Ú=pžb-“›‘DmÇ–‘sáeÏhoÏhúd¿†ýdÝ’]CÐ.‡n&}:|öCàåEº#T»æU²övf$ºåZ ãٽƳWÔºÉN]Š“"èæ?§e“ºaûÄÚŸ0ï Tã¼™½ÄŸNwçb:œnC„GÆIös ¿²°“Þ:èÞƒ"žRMÇØŸò`I•ó;P°å[Ÿ·Ö¦®­\y>fݨ±`Zð® "(¥ïЦÍááevYõh=·Þ‘­ä¨švŽ>VX=6FL.ØhªRÇj2^3¾‘xDù9h6GjÏJZÄF`*PA™†·7M=ÂÄ®î«LÝK™¹[œ+.gU¸–qÿƒ³c'E-ß#»Û”¥éª¿$õæìžÉùå\Þjµ@Ôýà|­dfaõÂUÉK\ÕæÉÂÙd,­x³+Ãn½øõÒóÔ´·Îá“›or~õRÝÏ‚Ûy’„ô¸ky%w0PÏ9–Tµ§Bx)†¦*'%ö¿ºì®{ÀŸ™®ÍVиßi.sûFç ö‡ý O ôׇËë9ª‹›«ªßÞÐGÕë¹e½ž)ðÜÙêKÆÔÍ‹‘¼Qr¶Y×Ãè#aŒOaö©oìŽÂòK]VªØœÉMßÃͯÁPwÛZeµ#C”o¬p¿ŽÀ¾f›Ž™ök£Ž‡jÎ%RF8àqÇÆUŸ<Ð1î"›È€k<µ{¼õ“%h§¯ƒ¯šxï­¸/þI¨‰ºÿKÐ «Ø8¾Nê"4lƒøEæZÕ›pôòþ/E=å;øÄÒ19ºU)€iàÓ€ª…¶ªïç‚÷§®òa9É‘x¾gÌ·}"¢Ü·3¥í;–”n² …n)œ‚%ÌPÑsÃV-É ˜ÍùÅ1©DÊ\Æs=Í1О¿œƒqñçJMaÉ@{ƒkûâ‚òNÔaÖà7G4%¤9ø$=OõJßÌj,ЍÁ­ì]fñÂ%q2SQ~M›D°¦Z‘ˆr(×hlb`eZňx÷›žÆ8´¾ä §x8ð• ·}6Ž¤ØŠÒ"Ú5 Ã(íâ';Ü‘ø|7“>S¡O륰¢œ|¼ÏN _tý´š!ûM²lÔ˘±þy­£¸sqY3íxÍòdïÝì²êƒ]aíhŒÍ«*x{wyæšàŸŸ°é2ß®Zùr‰’hóôo©×ƒr¥æÞ ~ØûXÛx–àÀvÍ4ªÄò¤ûÁínû^¥ùÿÓɫѴt‚uOE­ñxN]ųüŸåšÒELê‰*A+»¸ˆ’Æ97Œà°iÊVËÉÞSu}E’!^Á»1{•-~QIë4ßòfÁÄU_Ó¹"¼©ò®-ß®"¬¤×‡¡´aûü(a;oðƒ1É”Z”mjœI=Û\PØždõgòc&Lå$Î*1Ÿs—ÃbåÜ§Šª„›ás÷GmK¶¾š Eqà\™´}Îeð‚(mì9KsíåDÙæ’»ÆÖËz ´B,’ñJSpUk3Ľ×|"R7Š^uE rb˜Álkò»ÓOQÞ:k…VqG‰ŸCÖ Yîl{%—Ãi¹áýÀ¨šß¿î[ a•:&ex·¬–©‘É¥©ÞÊ¡ñ¸×¾tx„Y¹4ôüãkí´“rjçg‰-¤î>w•Є*¶¬dßgÆõcÙTH– ói·@ÇïÇqûÁtE·P£k|šÁ0=£F1(¥ëQÚÅ®Vb„xF Ü<¦Å\­´I]_xš?z£kÅ\QhɱóN3ÌtZãñ™EÈýtCÈðA·¼*­&&Å»pëlViwSëýÌáã=¿ý>Åï»´fø2nU×5³Ý>ÖP7ñßsÃÁöºÞÒmY¹æ_~dùø"ûžq¶—çxÒ4#:˜¯jÑ~Z0ÝJGæÀ‚µ?TÚ;Aâ¾§d÷IĦäubÍŽ§ôvÿ]«ÞÚ5Öï¿z•ÅAÞi'O=e-…Ë¡ôÌñm'÷¥ËÃ?§bqYå£/vºnî™ ôŒ¢n3dø_²¸ ùÐK. üàmˆ%ëí(4›~BÎ6ÉåݬßZ«9sÍO SÖÓ€ïñþË>]„v?Ö¹»¬ÍDâzÇíóÛöÜl†Ù h¶åÉ…—xk]†Šç´‰ÂìýwÃ{‘ŽÎeöê8ÍÒÒ=`æ·¯R3 ½C‘ˆç—Û}L4‡l_xu¯VæßV0ó7ºbg(€“¯8úæk]J_œ²Pb=ªk-ý–ñyÇ2Bû åùIís(Qž]ÿ ‚Ò Ó…`%`݉›XÕËDãQ~TÈÎÍÆ%©Â&çXŸÿ#¡„:œ˜íWà3Рþç"±”zóü“-’ø"fß'3àwk´½ Ö¼ý6™ø„]ÓëG7¨åÌ”RiÄ|³º477N°'±/L”bDžÙpqõþdSF6¤²ª•Ê“#u3•¹†k tánÐà¹#ÌIõžK„j\WÙìûl(j‰Ð¦Í+ùéòbu<`¾wFÓUÄä®gü0gÒákíú÷ƒírždøB“¶ø5Ýã¼[m¯YR…ãqo¦'‘˜Í•nÆr$]–¶_¾Ps“ìÉwf&Ÿzûf)ýš*^!{Ž ‡‡‚%jÁ“(§S°†`6ç°î>èÔþþ/fJÉѰiþÜø´Y 7Nè«HæÜe[óu©GX é55“hÂÈowrÒS«ìÄ7¼y­¨zð-Ìd™/¨ù#œ9Pb–ËËÝ_`"vyÙ´íC 7~%ìîWÇw÷±§ÐÜ"¡Öál&MQ¥búoF´ ÞÁS².ýO¦é ÍF韅ח HOzáÝØZŠßu…“û®éÊ6H¾Ã pRŸhÓÔ%ÞVàš^›t A73h­Ž×êÚ-&ŸjÎ?¸±Êv½Ö‚b»Õ9í“w\HBⓤÒßK£Hâ8^*8£=ލ6=3`,Ó=ð×Ððtàø„z¶JXðÙœ^Åiû´Ñ¢˜mqáS©l‚š˜Þ¦è@oºXï±±ÆÙ}þÓì3ói-“*;8EF4¦Ž¬1T><5#\.¿0±"c:•=¢ËÝø0MmósýhЫTJ‰Ã˜Š€èýn¸%³Ð6~ÀPôˆ_¬“·à¬]ªøaª‰Ëj¼‘éñŠ}ñr=KWNéKu.Ú%<+QIK“v¦¶#ÛåÏçj¹ –4dì—”+ýx‡_:¡Köê™éϹ{•—ùœ¤(›"¾s2Ôjzm*T¾Ÿíà6[N.>¼Ù!žZ§›b¹H3›«Ã_ôˆ²^1wOg›uª{P&dèÉÑv­Ë<¦Ï’œÖP@eç#Ø}ì»g"Ób:ýXqºñ¯ê"yèj˜³AP°>S} ±…ÉLËAx´zì‚H²'h„œ=ã/O†=J³<í84Qû£»ÈÙ_DNÇŒ¶.ëôImƒóÁ4 νkÚg3DéÉV‹ñ±!žqg¡BL&Ám@Ì EAÑM0~ÎH¥o,ç8›lwk™ì‘Ï‘rê– ç z:S¾¯ïŠ9$ É5²+˜Ÿ¯ƒ’>­Ô1B¥L]?/=‰÷8£EQõ:¬ŒœDu*,e³Æª±·lêÏé’GÓ//iåb}ÎÝÔíP^ø6JiN.´ŒmgÜO.;Ȭ43mô¼HÜd$o³Tš0û~W¸TínɱÕy­…½Ó•jJ2š‰™â-ð×”?gÐç5Þ«·¯1.äË@¢ÊÛ_:hbœKTâfÒDàºîO÷>ö3Æ—ˆÔå&+¡OS÷#ºýa(/óŠ5jT›Û1œqûU$»—m±L©3cGþЏÈ*¸^Ý `Þ…JÀÆöú¶ŽÊw>\¹h®[.OŒ£Ém5ó$™ Â!O¿¯Í]Û7K«VíÛzsÙÐ=Ô"½¢k,LZê ÌmvÁ˜{oç~Ê VB§`³‘¹_õÑ‚R%4ºïGÌ%õ)W)çh5FT^RéîCŸ%šMÜ­öËB¶Ý·ZÀx<:h»Ú¸i¶Ž›õª ±¢¶Y)á§:Ùc²ÿ‘eƒ endstream endobj 47 0 obj << /Type /FontDescriptor /FontName /MMTFBW+CMSY10 /Flags 4 /FontBBox [-29 -960 1116 775] /Ascent 750 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 40 /XHeight 431 /CharSet (/arrowright/bar/braceleft/braceright/bullet/multiply) /FontFile 46 0 R >> endobj 48 0 obj << /Length1 1626 /Length2 6036 /Length3 0 /Length 6860 /Filter /FlateDecode >> stream xÚ­WgT“Ý–¦7Azo¡ƒôªt¤é½’„$HUŠ U)‚ô&Ò‘" €(D¤÷&(A@éu¢ßÜ{g}3ógæþÈZïÙåÙÏÞÏ>g­ðq™˜‹Þ#\!Ú8FTRLB`õvõE›!¼ò÷D !`(k—%ããÓ@A€(® Ä@Ö0@HI$åååÉød êîZšY ‹üËò;àð6 u‡ø±÷!0ÒÇ`!þωæã¸Aa€†±‰­ž‘@PÇÈ CP@ÀÄ×îAA8"pC °¿†þn -†Åº‹h$ŦAüAäo— AyCÑhì7Џ£€p v Á|Á¿ `ínˆ?„(6Âë™ Ð4Ebت&šÚñÄx1¿k£¡X7á†#@¾¿[úãÃÂ`½ Ž` þ˜ßµ\!0„°µ±`Hô _4îþ/"Ĉà h4‹ý{:ÿêð_º"‘°€?Ùˆ?QÿäÅ !0712I)lM[Û 'ÿ½+zp7@Râ/;Øùß}êπŒ€Ã`ˆ™¸ƒ- ü¿©,öïùß ñ¿Eà‹¼ÿ?qÿ®Ñ¹Äÿßûüwhm_Ìè]€¿Þö‘ÂØwpðû¡ñõþo)@o(,àKú{´5ä/¶êøï>= ;’»pw¬,b¡hm¨?lÅ€<n@v^ì–p0ƒÂ!X]ÿŒ *)!ñ7Ÿ…äÿ-€ì_.üwúX©þ7547½«#ü?<®M°K€±@b¹ýg+†ð?¿aÔÕþ€ QI¹;QiIìÝÃ’—“xð?”ü$ù¯³!ƒ‚úì±}KHþéþ?ÿ:9þ F B€¯9c7ퟆßn/ …øÏåÇvýóŸ‡@ü! ²™IH1Â3=+SØ×óYÓ¾£M¿'YRgñòEh¢5$=zI¾Âå¢:R¬~Páª)`b y¹¢kõcL õ9äGÛ¡öÔ üïn ¯†‹;•Pd|·ŽÚ¿·H`''aµúõ³©™Sñûà;iÉî±P(Ïý¡t¼GÈ›Ai¯è[¨êqhj ·¾ó?Û8>èêëíénÝ'l_aÎM åS2>LÝâJÁ¸ ê@W„g÷o#q,û|‘vú3bIà†æLC·W ·B²Ä;…_Ùˆ}¨®:úåm˜jî¯î}T¬iê[½1Z«ãCð¶«k‚§.1“«ŒðÌ2±íøI† ªoíˆlø¶„¬x ¡¾teM£`Œ{mÌ&Ž('A©¿Lb_ ²”lêÐ˰Zׇ²F*®™«q÷훸 êåwl3§÷Â>RºÍÙ”+‘ìs>Ѫ7åË4 •ž«p/_~6PpïËG×Þtü|"µŤd¡>›§¯–\?q^|ÉS­Þ˜õ$ c„ÎNÒe¬~ynsà^)ºp­Ìz=õˆY¬ÿ—m¼häžðç•6¥¤B*ÜùPâ\K™½AaŠì¿%ï>' °¿CBóÌÉÇà-Ѱ|C;cçC.îW(aoZzþNZú&ǸX;½Îë[˜sCcè$MjþúœEx@˜¯rÖ{¶nãX k‰Ïðè—zc {vìöš—X‹¢Zc°\ˆßA}¥G¨/íû0’Öì‹16›‘A-†$aµQ3µ ¨®´Ó©ÓBb:løzÄQ7àmWÍ#ÅDϱ#m°&‹â± +=g‡QËÔC¢³£öGsbw^csÐ[ïÜÈI;à­ŸUfÆáç‹G8ŽWvO’‚³«ÝnëÜí_ª×|Ù­ú:ks?ÎãV¤ó•[ëGqdZå'ïÌ⃺CÓ†ý…R¢æ,ÇŸšùç2 WÁ¬c\³.D®uT~Â~òÖùŒÃôÍþ”I¹Ó‘ÀD!öç;¥Ò~Éž¬Êª·jPdz,¼j­êæ³â›è\dIÈ®C ùgé#s’Ð%Ò4\|!;ÜV·<Ò^úÒþì5þä³Ëëå¦V'†Å—àI¢.¿•­Ò$ð¯Ó<0úƒ%«ˆe*mÄÓ¡{þ„â6i£J]gØLVjÞUûë â4Å*𸻿¦i÷¨kJ$ÀY'ü¸™‹ý&Õ± dhŒÜõ‹˜fBGöb¯™B¨½Ðfu'¶É+Ô¾WÓSrܱ)²ãÊÔÁ͵ñ5†ŸHÞ™t‘pØ”Ðíâ>iaže ?zÜðMÙ>À3CF>'Û‘ßÔ'_Y¨ž.t̺ßvÄZðì§Õž†üîÈs’j¤¸ø[e¢Dã%ˆ2Žªþq îöŒ(_ >aG0ÁÊØ[#òBaƒ;¨ õUÛ7˜3…/wU®Š¡oŸóL=™]%J½$ÉÛr]h¦-ÕP˜›)bÊl{Û¹qèæ¬{¹f3Nó¨ 5ºYH³ÕÄcô¨IŠe†nË(¼îc`…È»ÆÒ`RùÛ\„/W¦µ2¾vkÌc47¸„ÅÓ"Ô¸Œm2¦DÉ–ÉLÓ5†ðˆˆ¶>r Iç %ÔÕ~Ͼ ªÓþŒG5¿ä$/5ú¶cÏÅ J(ðòûȾ¬ƒâäB´^/þælÙÏgëüúÜ,\ívK:dÒ÷©WõSü>´².™<–¸Ëß|Ø©l]<ŸÁç³²9çŒuQ}c«(ÞÄ9ÝðV»[PMðn•Hq~Ï‘mz….ˆcØÈØz{îF_d,ð¿Ó$ÿM÷öìTséàÀ”;¾°£‚ª.Ám)ö+1(—X9pKàòŽx™‚òBÃQTmE̵» ®s`˜uyëe £á§£p…ÛlÕ‡ž,ÞÏ ÷92õºœÜjiSÊ´ã$*ÂŽ0 K¶:ìû­[sÝŒÏo¡žÆ‡UÛ½ ëS $g[¶M N@Ol߀Îs¿¦uøh§ñèWh/ò‡f…[qú˼®ŸÔîŽïÓ呯©5D÷nqâBª}¡¾ÞVºÉ›»éúMFû²Ïb}¯¯¿Û k@¸|}þš g"GZQ½”ʦӠód…4ž{5ßDÞ—¶·13¬Ðw:cõäL€Š¼ª¡f¥ÈYzóyÓEÖàØПoÏ6í‚Ã<ê¹{ylëaW',­CBhÔ6{€èBîÎt¦°¤¨Å%°>²š~ ¦ýÄnÇÈðšM‰Þøƒº&øMX\-òÛbƃ¢›é±l<½)”Ž|fƈ˜…= u3Óck‡0úŠùX¶:š.ªV83b¶†<[í¸'U隘ƒáö¡F);^§ˆ¤HÈzÉ+Ë Îe·¯ÃýU•(i›ø>Úž£¼/2JË*Œ¸ÊÆkê!Cï”÷„гjÝèv-HÝÜÿ$“q %mOÑž›šnGè³hÖuuÆät÷¤Gޝ|€”á%8îðC‹õágCŒE¦Ù/¯…³„=w‹<%XÙÆÚq¸<ì™>ŠŠcG(rÛ¬nÿÔõó»çÍ4Jûõª¹ÚÕlÀ óô!õ°ñªbŸ7U$`f0éÙ,—+׉ú%¥¼ë‘1<´¡Ñ(ƒ^ø",˜§‡·ƒá<ˆ·Xý)½ŸÙEÅU2à ‰b‚‚½ÏÆ*Kܶ>F€fïCqÀw—™«Us‘!þ-›‡òÚ®R ¦ï77ÌTn šL< èoþéê &ÆV1Á”ãmÆ»³Ê f­é›wýÁ’iJÊœÜÿäXK™¢ó¥RžŽC?>2¢ð©µ&gŸZ¶j‰Œf¶¢Ììb Ò÷CÆON4M!Çü'¡ì½H”Lkwi¬y—¿Á#øGAÎ|Qƒ¾žÓ‡K|sˆƒÌyXt›æ°ÞæN±6!Ë T$åÞ‘‡k-Éæ1üˆ?T½#[$?O’¸×Jæ9§mNÐK›#­Ò„¤Y¼-í(dS|Å|›¹¨uW¥¯osÐåÆãXsétü­ÙFÃxi1n®ê„¾ž… [S—t»ND¢ÖÉ>žP“.“ti“Ouây±a[µ¿¹´'Ý7þ¬™æ=W|ŸÐ3SzÓú%uÆHºm&Åå[Uùˆ·”ÈÊìwž8huÐúû8úº…†®0(k \s_ݪk…ÝᙪUÍwãw+¢ô²È×6®¦€]ñm³×wßJsí¡³Êðß¿(SFÓ"²<ÚxăÛËy1á@uþhªæ{N# Ϥ%.ñƒép›sÛÔºøì"Ç@÷47^òî)nDG%ÉL¬¥š ªõ0SxŒxk{ÇVFiWKÐoüµë¸HñDhD®­ê¨íµ¶¯èÕ·‘õ³zªö&BÏöÞ´ †Í¯3t=Ž‹;÷™ 8Ú‡¹­4;!â'´°˜ 4¿v)Ÿ(ÓÖÉ!B ¹Ü}å=Lmu«ü㛸÷½6lì¯2“NUvF9‰ŠBK^ÊöEšŒVÎ H´ã¢Ûu2ýÈF_0ê­1~Ê0·9¬^ŸŒÏÞ]É6œÁ˜ªC„˜Ê"bÈ]ß:9 Xñ%Íu ˆ·#ƒœáxéVó_Öö´ûøT5Uœ]«ß%öʇHó‹¦.«åKe‘?õïñuêÝr8\Ònž:tL¦Ö±LÔQÄO½!‘Ü[‘#Óã¯h¾h1½{Qçcݾ}áÙœ½í,Üîô>(Š'¬>yÓãpÃ6Q¤ý®‹¯@ê÷KÏ­h ~&¢Œ?›È­^ÿѰoP:Ì©À¡Imoå¥@â|®T ]6Èâ¤ôÌqK îÑrâ] åÑÙI“Á¼@àmáà^q}„I˰^ÿi‹.Ç|Í#jNV½TЬø³êj É?œYi·”a:ÜæØÉšÖ7mP[ÝŸæë,É0è”ç©‘”7Å“Ó[Qº _9šÒ/„zHGáÝ£¹Y@í—rN±7³ î2ê“R7î%ž_»q,ð»Æýà“ç=z ®ûÅíÍÖ<Nü¢3šô,M#xKƒÉØ4³BüÊÏCº$ýÍ~~YvEéƒB{sáO ÝT-¼¤döY?X!8U(kOþ³A1Œ1o³nÝIdgð„>/!’^XYÕêiöÊXð m²ÀP6B}@¨»ÿÛ»±ìBmh†%Fñô{‚o3ïóºMºÒ34ßòÅòŠÉlYtÿòC6á´Ÿ¼îe—Û,>¼çc³¸˜#‡3UÚ™´\]Tƒðk:2Ý å.à ùiFÂß»v£ƒ Ý+ûàW›{g¹ww:»<Á‰ãÓí?{Yû\sˆñ4—¸QÌ^ËÃu±%ëíËíâÏ9kºsŒrA‹ôÅ8;Œ)ÊÃTu‹úŸ8ßV>„LMw_\Ö3×Èš‘Ù†RBöÕVèÙàJ‘ð0.è3oÞïp{õ™{%t€È›ŠF˜¿;óp5Ĥ»À¾Ñë 8‚²ÀŸFÄà.¸¹–Óh_¥Æ„FÈIé/‡[‘~–¡gNJG5 øŸøÑu¾LÒ²à7¹y— éßMǬS±)†®Ð(u0~¥{¿•c_n`÷ײÉëÞȾö£¤Ç ƒ:0šZuf93¦öüLÒÞ šbàâYË7S;Z>ú×îªëåãÊÔ¦ZÓ9„k>oh‚ àõÎ÷z*#nÎè™dÛ—¦±¹7Æ"tÒlœÙºç”ÏÜì´_Q[z¦ŸÛÔ(¾ÎáFMÛW§èB<æzpWyؼ»Š2=%m‹æ~é'JzªVÚvH®ÁÀG+-Fªõf§¢ë–Š'Ϻd™˜Ÿø]*Tßg¤1ó €—P7¬|Ñé6ù ß¾ ˆxS¯?‘µdÚÖÄnPó9¦|zêòÃuIom¦%ݦpG©œÝ¯?XbI•ñþsŽŽšø4Á-f-^w6îv‘ì_é`|QÀ_jãû¡ü$Œi\7çù øÕöc˜Ë S(}TP%¾î°-¯GlÎŒõ£¾©n¡q‚ü- ÷A®uåCZiô–¦Ê"—t^³Ì1'ÎX³š¶^轌ÂqÕ77Ef ÏÎûi× 6êí Ç-va7àîù¤ èÕ¶žUUwêl¦V‘ìsiEcS0±/'û/ÌÒ‚w'M ëždòxš¬9‡×'ä6rúRI&ø¶TD³Á¿âÔ<è“Çwâ´ŽõÄ·.æƒj£«wæ½®¦ Ë1G–}§»{v䟀c½G¾~•÷Öü‘xP©}ÛVZQ`1óÎÜ{žÄß7ùǼpõ3†z}TG;¼÷ÜÔl(ûú|r“³©Ϙ‹.ót£ô=r¶OÕˆàQZ¦ Nä{·Üš*WI©ˆá³Äá¢O ]k=·èVVûa]Ó"|7³» €„ÉZŽ»Ï” ߯[ÁM#iêVðzè¯! /·aXÅiOkˆtjȤÔEÃèg¸ºöÀJý÷ûcÓÎ8UЗÍôŸ ÊJꋨ âzfÂ;`Ï5ž-‘’+ ›õ¦þˆzýŒyCá,9ºóE˜4À‚¹8&ªƒÀ/²VŠÔÑ´yŽ9`}k¥ótV‰ñEy«ókq!~OUš*ù­zåÚx²„@1|¯0Ñå4w÷:ªÏ C\ðÑ72˜ž—ܦmJû5ÚjÄÇCöêìœÿF± ë×[RX’Lòßž©MLÚŠé Lå/üZË. endstream endobj 49 0 obj << /Type /FontDescriptor /FontName /QMSQAG+NimbusRomNo9L-Medi /Flags 4 /FontBBox [-168 -341 1000 960] /Ascent 690 /CapHeight 690 /Descent -209 /ItalicAngle 0 /StemV 140 /XHeight 461 /CharSet (/B/a/c/i/k/s/t) /FontFile 48 0 R >> endobj 50 0 obj << /Length1 1630 /Length2 17171 /Length3 0 /Length 18015 /Filter /FlateDecode >> stream xÚ¬¶ctf]·&;©ØIݩضmÛ¶m۩ضmÛfÅ¶í¯ž÷íÓ§ÇùºÿtŸ{Œ½&®‰k®¹71œ"5¿‘­±ˆ­5= @ÆÜÚÀÙQÁÖZÆ–]ŠZÁØÔðWÎ CL,è`¬ïdnk#¤ïdÌP56ôììì0ÄA[;wsS3'™²‚*9%%ÕJþ1¸ÿ‡æ¯§£¹© €äï‹‹±•­µ±Ó_ˆÿkGEcc€“™1ÀÄÜÊ (+§..# •QˆÛ;è[äœ ¬Ì Ræ†Æ6ŽÆä[€Õ¿C[#óJs¤ù‹ÅïÐ8Úšÿu3v34¶ûGE°3v°6wtüû0w˜:èÛ8ýí“-ÀÜÆÐÊÙèŸþÊMlÿ•ƒí_ 뿺¿`r¶ŽNކævN€¿Qå„Dþ§“™¾Ó?±Íÿª¶&-l ÿ)é_º¿0µNúæ6Ž'c7§bŒÌí¬ôÝÿÆþ fç`þ¯4œÍmLÿ3*€ƒ±©¾ƒ‘•±£ã_˜¿Øÿtç?ëü/ÕëÛÙY¹ÿËÛö_Vÿ3s'Gc+z†¿1 þÆ65·¡ýgVÄmLlôtÿ–9Ûý‡ÎÅØá_ "ûgfÈÿ&¡odkcå026¡•±uú@öÇ2ÍÉÿ ÿ·üßBïÿ¹ÿ•£ÿåÿ¿Þçÿ -âle%£oýwþ½c—Œ¾ àïžHþY4Vúÿ?}ks+÷ÿ“×µV5þwºÿ0q'ý¿má·1ýK  Ý¿…æŽ"ænÆFræN†f}«¿=û—\ÙÆÈØÁÊÜÆø/·ÿj+€šžŽî¿è”ÌÌ -mþ!ùß*c£ÿZÁ_ºþ•?­²´ªº ?åÿfÁþËPîï 8)¹ÛýÍíT#mkô?ÿÀغ<©éYØÔ lôïß߄ؘ¼ÿ7!ÿDÿŸgi}'s7€æßºéèÿUýÿxþó¤ý_`„m mþE'}£¿Óö?ÿ¨ þ’ü¯ð·êÿ8ÿkîÝŒ aÖ–m 9ƒ,R3Òœj1r†'…4û{éA‡ƒíJ” óýªm{|SÃvØ+ô>j‚i§9¾ÚÜ—Îì>$(G{Ñ­H{’¯òp½ Éûò‘6I:X)huJàÓÎU£<¯¥¶Á4XèTw'åtŠ? ð¦; ®ŸÉý]òýP‰žì| SêcÑ:k ÎÎINžŸHÇF†‡znÁûp(³c¡‰9õ1|’ÎÜõ ¿Àß\X+—2[T«‘”]=pÞ—=Æì Ð§]2â›~óïÓñ-ÄJº^…†ÀÆ0ÆóPýœQ’Щë\?_eùsQÏÑj™±Êc{Ô¹,šJXȼõ…¤BÆ'6¸˜¡òÛHL…Ž 1M^]%’{†•©›—X˜!’¯Öo¬Ä-Âa!f¨Yb øQ—Ö”ÎêT¢Z ºÀÙ¡‰©iRÿ’!l k°ºë+õ1µ)ø¢â ’XẑÛfIBl·íåâ’±—›S…F¸ß…¿ôäÜÛ䙌¡>W¤e×f·1㑹žgVh`9jX§š Œ¢4ÅÓ%ß$Sæ–ãâ¦d¹õ$•)?ak,E¬Å)éEÙS%jDX¡6ä+V_$•%TÅlhíRªìV稂øäâh‡Jÿ˜/ÇÈ$hfPCúqÏY¨úRõ <‚ÑØHS7({OžÄ(WæXkÍåS¼,unÕ«ÐÁ“ ££®›9:Ón¿û]ìº)OŸ%4Ï…|¡>"Ý÷îb_ž° O8ð˜Œvö©T°Ö=Në¡ÐQèÝ^YÎjˆÆ¢L¹ ÂBzoªŽ„ z9µÍ'»í©=цšïôªééõ–xà¦Ð'c­dáÙÔ¥ÃñÂso–Іr%ÝGŒwA(¦œjÈô—¾VŒ×/ýÇG6µjt Á¢­Q„bʸ’åeJµ¿)0=¦É+-¶ 3½m™§*ª”éYY8óo6Ú?ùÞbß\EÏ3šð¦€ÉqzÑè×7μë¥ÒAAÆÂ-p©f±°W#gk™)™­R}ÖôY3”ûuFÃ…,°¸9H{Ä µögÒËä~$ƒàŸÜ½˜„ú¥V0º0öÒ ¬„ ›£entiR?èÏ<_໬ÝöÀMߥª>×{l¸’9 õçÈÜW"†Û¸0}OÙÅðùæô¢çð2k,_ât‘êóä'Ä)ÈÒð¤+òìû¸Ôz ¹Òòñ\Ç’îÒÐi4…ˆ­¼ái–‡;Pµ ¡vå‚w©OßùV)µ, ù#{íU=±–ø£oæ—a ‰æÃÄï2³ð˜4"÷¸Ê¦¨öëOš°`f~AªLÆbÚ+Iw^²ã?E=sÜ4þ÷ß?QÑÑ— Oxú¢ðæž—AsôÑ‚tÞ©ÁŠ9 ®­õ#îk’Qû÷CÞ}FÁÙ$Àl œyR¦qaѨMvÅv‡Â8²óÔ•†6¦ŸýR¦Uü.ˆ×zþ6¤™Í7)S,îJóƒ™ä P sÜM“ù·»ŒÜiœ¿{M\‚óè¥îñ†*®vS€üƘϹ)H.,¬¬ŸXÁ _“1÷u_Õ]Ó-|@À›H ÍãàH±/ŠtŸM˜nß½"#‡§×MÊ+%^qzg†šýÉžSÏˤSdCô*ÚöN!nºxÞ=ÏÜÈÚ² Œ¨_w­¦mw×/›žŽÎ*Ådr. Åjë©”F›õŸšf2>§Ëÿ\sÙ‡V£ZÌËT ìžîÑçiC+ EÅµÚ 6±Ì`Xuøˆs¡ÿº!‡ö’U¢ì±1‡ 䣿B]¸Wãr‡a_ßð[¸¨$øà²¤+’)Y‹ŠÁ šÎ.ˆ<ØwÝJOaëìˆ0û™W݋þƒ"r¯›ÿÏmMdžwÍÂåþHÈJùRƒ§²WÇÙ6±à=>žx‰wÒGžsÑwO» “1Ó5†Z샺ºáNÜG\Ê®YAýM=tºpõÑLK¾àz$c ¤žâ®=Á£ea4àÖU®ÂÚrѺ:ºñuÍZ°I95G’=vÕ³ÿ+RεÆýaóÃY·ÈËgpÔÚvÁ³ §2wæì ÚŠýݪ“ýxìý¤”0’oáW&æ·>Â=—Â4x*űÍDÏ|P¸NìÂq ¬Â2óMæo=©V‘€Œº•bã—`$®ù½¶î5¤s^÷ñ«ÅöŠÌ?T Ÿ ŸÊÄ<«•bEƒ×]ÈKú&ð ¸îÔYÞ¯lyßdþ ÏP‡Û5 }ôMåÃ/úPLV D’Èø„Ï{&(‚ú¤Óßò÷AÇ-fK@ݺÁ4UÓ_A±0r ì(9¦Ævi}¤[Fúša繚ӟØbáä[‰„|…0u’‡#Æ…E0ã7Ž ª?ðŠ9Ò¥;’–reÝrÙÓç˜c7dP4ÿЈ­âI‰u>ˆS,ƒ.sé '½Rº$~”9d»b¦?Øþ‘Ùù²\}dAH‹Ñ­Àœx$‹„/eR>R¨¨Á9ØÅue•rùIÍ[ÕC>LÈcÛ;æ/ë ÕáÊNLh®Ä+(Ñj—»="[{Ò[j{0¾ ᱕u&@Ä»«ðH¸Ì–+jË|ýû€?štC«ò¤Ñ.c"`%„IHSÁG«“ (MÎÕúR®"âz )@R °ŸqÔIvÉj@Ð(%¨eËî-¾ÿ“‚UX%"TùÒÛ¼QÊ®ÒD69àºþ²Ô¯Ïc4ÞÓ×”"ˆ„9f ˆBoÅ”RæJåYwA-Í##/x‰Ý5Ž?–F`q–9’ ¶ú·&GlÏH‘­ÉÌd žz;{cTé6+ð*ùÙ@˜ÜœÖ¶*‘cJœµ÷QxZÍç ‡¨ÑHn1…ͧøHUŒûºU Ö¢öé*w­‘cí&{V`Z4L@½žò¡µDlÃÓá„”pͺ2ág“KUøËåM莡i7ËÎÁ t[|óÒ–0Ò$K,ýEØó¨Ÿ…âm˜ŠïÞP§­Ó³Ê I¿þœZΚ½/5ÇÀÓû¡{‰5Wó0=껳ãšt’¤¨÷úÜsùì¿×ƒ /eh-ûåäSÀ Ѹ…¦ ´°r;MÔšuê"¹×0†¿ÖKà”MYâà›|¨Ž,ÕöŠ’y„.(k¥€ù#Ýô¥<9Ýõ$ܘy‰*yªŠBð:ª¤P}M%Ë]nÖ’|} k q@‹½½¡¸O½\úŒQ¿¤ºKP|ž `õ¨wH²'3¹:݈|{pþãûÆÆ.½ô‡Ñ; ò©yù|ßçÚui(ùú¥ð•ÿK_©ø©&âl± 4ÅÍ5÷Ùõuþ))ZÀ\_š »3 ²#¾K0´ïqÂ11Ì'$ê"òb„ŸbIˆe]ê¦ÅŠwÌ>š’á̘ZgFKÅ"'jØÂQŸTŸžé¬>/ÕDIülˆ©ÚÕ“L¹Z©Âaaƒ×Ùs“°J×Ù)¼8ßÌ¢‹û{k—Ì£ýÖã÷÷Ég÷PŽ‚$«Ú,t&ãulJ³åm—xÚ´Õi"¥Á´6—/2ßgÂ?Jžä\/ Ò4”_ö)¥F#Ó +|pî£øÓø¸âaŸ7Ž/î'ä:9ÕQmÍÈÏû¬Å0\;Ñú гB$ìÑx_}t8£ÐÀ' OjÙÌ |Ð=|M=?‰Ëøyœ‘)aëe½•ñüü¸ëÑp˜‹„Í‹² c…“P×âÀj&HcëñØ}ˆíaëø& ^!**Q*zÍŽ]˜ÉÂOáàëI¨LÇÐØe!pŸ¦&Ëc15«f¸[ÉI¨êVÖzs`pèñ›»&ÓjŤ]¶Enº8ÔÕø!ž"uÁ‰ªŠˆø€±((ùpY–B1PoÛEUÊþ¨budû«\Y¾¥²#›Å‡)NŸ¿ÖL7Ï‚£@‘ ä_ËÂÂV6Ié¤õ]^Ïv¿ÚÓ+É{ë’x:óšŒkúh/÷ Þ efÇ÷Añ¶õ À¸œ_d+ë2õΫs±FE*-OëÜ;ëÎj9Âl´ORu ë %²ŽN ›Þ€ÓØÝ5žn§SzÔhÖ9UÌÈô€1=ð…Ö!pZ@òù N¼‘cLþövi¦ž  V²‚¾2ïÄ'\C'Ñ=z_sðCøvîÓLó^Ü ó$!z%íI$Ùü¸46Šž´F¸K¤e…Œz,‹LÆkäÆx_÷Û—na¹Ý{†kxiæŠqãÉ-̵‘Ï®¿`  Q~ò`̈¸\©US|¹yýÄ Ä:2®Õ@\a?š)¹Ÿ\¾d­µ%ÒÜ)§ØsÍ$%§K·AU›Ù!Zn‹±ÉSS®';œŽ<Ř.pñ^L764³È÷v†ÿ¸[Ã/h,4Ÿ{#îò#–ÉküÉL›`¶@kª/àá|ç*(¤V*gÎÕÅnPé,¢—Úc.`KOÄï+Àã³l+!j%E³Âõº¡ºte;ÇòèVD竪á7®çuúñ¦¯ oY…å½2°P¢…ŒþQGÑ¥¤î/æî†Ú_ØÈÅ@†µÄ‡ðg ÕzÜ3FLÕ)Ož›ð˜©­ƒÙ<.„ìI!åaÅ ÆvXx2éÓu³Ù" z½ú“> ò\y’a ïwvÙˆrtXQ?!v4¬öò`&U4 Ìäô‚Ãe6Q̹¢¶?¢©‘Ó}¹/ãç ä1ÅREÕ9훚b’"ÿ°é„ÜÛc“40ëŠÂ­AZï²<:ü ïúüƒæ£³\Æ!•vhëj¸óç{œs»áW£¦öB‰¥4&q–!5Ö©jk±_ŽuÝ‚S'\ÍÄ©G qFBÌ)”Ô>ÓÑ1šÒ ÎR¸™’»ûº9­_ª|ñLï Þ׋/ŸjÔEúyôµ!Oψ´ í8Nk-gjÓb]±Ä’È‘CvSy1þM6ma·xChÂ)=üäã_ë8 ©ú`¼ õ7& ÊkgÌ ‰²*®ÿâE=Dí®ï3Ñò°Pìò‹W@Ö ½ôÚX›hGè³Ðš±xz¢ß'™wëŠÀ·¿í9–Žn=ædªP†Ð{üð7:„*¤Ú4“¯ÞB Pðc}ã‚ß-¶a±IêÕÂ!˜pËI«?‰ÎâÈIÊ…^šþF:´[Wi¡<"ɾ/¯^€4Ês²BÖ•2À“»/]þaH§$Bíx;‡S‚LIS="ùÁ±œÃ`94˜ŒÓ êT¯uÍ¼Þ H6ã®nfVægüF»œ…Pˆv)ÙÅð“(êÆgËÏ<ùžYMýþþ¶; ¯cߟ÷D_›{¼Iý©ítR{?¿½Û@ú]yû³-iÛªO»-¡&ýlšŸë—4õ%\£‘¼£”¦¾BgÑ^É«jˆà‘~»ÊÖw—M‘p4"DrUPïn ¨›`Üh†Kz*H$ŒQ~Îöç¿,G7%•,™®ª%}ÚNà LHW4}›T[ÉFÌîÍö’_Tß°ªÖÀ:º¥(Âk’äá®5£asårÍ?µG[ª|È@ú` -œ62J8ÄŒÆïÁŽTžÔ‡£0¡ØïŸsýË>€Isè;ìû1á–¤J>UêT¼ÆØD©¬=_:Çý† 1Å9È V&Š—0n…#ÊO\^¬M RÌNal5"2·UíG5½ÃïÚ­ÿ$ +4¢wb°ºŠ³KPp‰…|bpwè2‚‡Ìœ?rRŸ{9gW–D>‘Ä/û O)x>®‰TðÛ»Ïû”×)ÕR°*>iØZ:X¢âIx³-0»œ|ùÁ“¢ì©ñÄüRvÃ1©»õf¾¸È¿yGHsRI%Ò=ˆBÝÈåXRÉ»nXÔ™ÇêRqß4v«AûÇD„.&ÚÀH¥½÷h–[¼Ên0“ñ»¤Oó’×VZ‚Z!†ƒ±™­“áìÛ>û›Þˆ6Ó—b&ߌêDÒd9¶Ì¦µíä:T/IÞÛD®i‡lýÂI/ùn>šk@ÞÑÔ€™÷šº'Óä´ƒÔ”ÍGm°’Ôü™¾ô\ðÝ3ªck«ïE¡úð«<àŠ¨· ÕÔûEüŒ?^Øò}¤,KHÖÀJŠ“èL’«ØX²ç+!( έ~A°ØP½ò褯VWfÁò˜Ô‚lÒ¥ Rƒ¼¾?‡¥Ö E!»K4QN„o6[æ|ûã&oÀl㊠¼4–|Ò’ÓšbbctZp¦n'‹p(ÉGI¿0]ä×}ûJ·/ïiðf\beˆÃÀº§n²~­€°”bE&tWj”"r:ÉEÚ:7ÑG·”ΛhÁoÖ‹+àPhî¼W:›Ø¦Š\dw@qEÚ@Éä5Üé|âÃ*ä…ÿ7/ Žtp§Õ5GIÿå—˜3¨»“ˆÚYµï"ð†C®—¯–ýÈó])žó…·n*XS&Ÿü‚jŸGŽ’Iºßù9–cÝ®¨›’…î:3ÎðSRåüað7cÍz)㩤óΰ¹9aæ˜ ˆ“å¥$YÈjï½VŠi d©q Þ@Z§´?‰Þ/Ã/²­—¢¡ú›†]¼†sèá ƒ»—ó/.my†®mu–6 êÆFPoº‚¨íó_Ö/F]$ÉGmÎxß3᧘·vM7¶(°é "ÔWÐìÀ9ŗ̱D8XiØ6´±dYìÌ•üLºŒ!„÷z9›‘œKJ+¨:Ç'£Aõ¾/r»Òƒj³ :‰¶ÑNL"“˜5½ö°ìEꛈ¨ÖÎû/–iO€vÉ:Ó´¹ÍÎK€¾=™³Õœ4²ŒŠwáñ»ÚUNQÚxdy-Hh1È]HÒG«µ2µR „J:Á#ÍYœŠbšAÒ’Šåü~>Ô€‚ªÞÐŽ¾@B£_ŸCciŒ·¬ÔB¢Ó z#ÞÁ“…Ðò˜—ª¯uЗØ-Mg+c,Å;du×âŠÑM} Ì!Å%˜d=ð-œÏñ„Ù›­ŽÝl„D¹mv‡`¤§ˆä¸è#PZ03€‡ùާ’Ëò8aIx?¹3]Å3HøF=gfÒÿ”cEa^9$PZËž³Q”_x†'(½=GóX˜^~ø rCªòe˜…ž¯WÚ»E×XÝBl¿þFð´ Õ-ŸögÒ÷k8ºT@Ë—Åš„²ãPÒ.Ë×8 ù…ó&€z8|Ħ˃I2@ê`§$h{7»LyÝ'ñúqš QóŠgÚ† y¿‘vÍÀÔÓº ‚x»cž#G0@¢Ô‰s»º&†{¹ÀmbGÇÿ4ìPî–}e–‡BPèãk‰»/uëò÷jJ¨-Å9•}?¦×&O)Ç”¯5oTa)£ÛdÝxIâ@ß»à‹KŠY¨—g½77ª0 ¹Ü+J{&ÂЬê'Œ3Ÿ GUaó"Ýçòù¨”ží¬n¶À<#åðÒ|MÎÐfy‹Ï")ƒ ŒrzˆL iÆ`¶ÛL.=:M‡ÍyK1¾1{H§Ù i;â½¶ÖºkÿlGc?ËæW£Â¶™£}rF°`ÝŸÓ_^·ðçÅभ¤Bm3<8C£éô±…Úãb`ØÛDLuVûq=·ñiYÏ2cÿÑJû­³!»T]JJ :8²’õÄç,ÙG¦œ@þÌ mì ’(l«2ÜF¬iÜ!HŸ(9ɾæ¤KèAçñU×ÛmÔPŸ„„c-!ò“JÙpõ©Ýâøzæ0‡òìŠQZ. ¡µNF«¶i jãL7þŒõ–øò–Æå&ö¢ŒA}Öâ6ôÖ <úbtÑP´~V‹f{0.?ƒpû¤n=ãK(eÍnòïmØi±KÛÙ«t?ÈH˜þõiýï@“`Hl/ÁW%S‘ÜŠªÈmžø_Âíù3ñáËÑצßÙ¯¡ÓÌ&×;CÙÀòDßåyhÔöñ(„á͇a2> ¤ˆž·*DìˆåÄý¹WîŒf§ˆ^þ Âíã •(‰]ŠqÉ/"ºô~¥­…-#oõx÷ECtzuㄇ1Äq18¬ßãlòÅÿtStáKƒ/Eð oš³…j^éªwÛÌ~ˆçjÎêîZdµ¥ugýaõŠÂÔ85z• 'VBLºc¿ Æ0‡ñÆ}‚×ñâ ™êÓ÷]ÝN—¾LUÂ:ŠY7cµè­ýö®†íãÁó^¶áŒŠ¯ŒhAwîrT䀇ùúÑÌ’\=%w.ú¤ù;êÄ<\ýkä{âƒ`æçêòˆ.¾ÚhW\ÙaÏ ØòFL¯`Å:ø˜ä¡Ÿ–èNGa‚ØvÊàÊÏ5ÜÌ5À¢3`÷ܯ¸¦B„Ï…j(„°Ïmp¬öFv œ8ÛxzÓ’œOö3ÃTeÊ‚ ¹.—úd^Ìɬhy’»ÊŒ½)…ÍÆ¹˜)²ƒyšÄ÷k„ ¨Á¹ÌXãÍãD`)w’þ:‚`íùu*˵…R1$')ìÜÛ_xžâ®´µÎ®ºöôFéÊÔUÐ0Ô‹Âü‰9ópo6…F™hsù}оM_áh©áA$é§·Ì<º[0-ë1ï.H‘]¥±×ÜN46Uˆ”5¤÷µÏ(C=ï~6å®’xRåVAõè‚é®uÑsÆJztc„ÙBccÔXÞÑßõhÐP”%I?*_¡ÅY²;£œÛóú@ní ÆÒáÛ–Jäb2oCÖ%èt—wË!‡€R¤ª§nI¿4–»æÇTŠ$¶€8ŠÃ`¼†ßÚmðÂñµpFžÂ;ÓQÚ²[.V²bc×Ý;Ë<ð2" ­Ý;‹´tŒÈü×´„{¾aGK~BBâë.—96§NÛÏÆ«'‚p(êÍWenæÚý §LÓ¢»€ýÅ¡L‚ÉGhÔ¦4.ûüiyúgŒ"¿4,Z$åª`J°¢ŒGh¨>ÞÇgýJ~™å6²3Ìru¨$É@–8•ÃrÀ ¼ªÂoƒ¤-À´è0—â=ÄwÉ~A7ñ.%±2¾/èÒ –e MëD¹ .yZt¤ÔmØî©Ãçãê ½ùépÔ’ÿ’f—ÖæpYÊɈ9ŒèRŠ86¤¹¨$/Xç¹ÉÞi#x³ˆO‹w¸ÊÎjcäè¡Ýôê©sR1_'ÉuÊÍŒêcÄÉ›¨x•è…Ó½$|ËŸc\o+³zÏ},¿çê;Ã¥ßÙXX|Ï]’û‘ðƉË!ød X8ÏŽî§Þ„~~]«˜éW/ÏBQßµR¨7\-u#IKû%2›dg_ÂG‹D©Æ¶Õo¨„aÑݨ„ÉÕ*¬jÍ+6Oë‚ò!ƤöG”ù¹ò¨ÞãxÇýÍÆƒȲ`äDÅß(gÞcy^5·íXi™o¿É˜ƒúÄ6SËb *™âqX¢xË踉œÌ‹8ˆ±pÝkÀ\Ý1OË/6B)w}-³yñrÈ ™©)—®Ä+Ý`ï¶IˆlÉ4~@ª j) Ì0JA衺LÉí}­Õ­™Ý8¤kàá7bw˜¶µc0ì(kÑ ;6w°Õ¨'ÂU¨øåÛ@àÑêýfu\]^‹³†ß´ÝCñ?_9vwàÝd‡¥H–±Ð|òžó>þÓ0_½YT u^íƒJo}v}Z¤žS Å<ºïô£%ý€e¹9E8ÅÎX>‹ÿ+W{Ï5¿iÎAë^ôMÒ®¦[­F–$i1k4D»æhªìD~â pŒ‘pC>ȱ¼¢ÕÆáKïÎ=  ¨‡õòñtõ,¹„]'6ÆÍÖk(šä3»ÝU@öØRŽD¼‡ëݧÃDÊ€Õü¤|’Œ¤Õy6Ý1zÔÑ·×lÐc:¼ƒX¤½Ù£hq#•Š’åÏ{û¦·‡e$Íô—Y' Uk·Ö¯ þö-¤¤;ÝQcJU¼¼Óqî¼Ïûõƒê|—ORψL@Ï5YNU¿¡5”Ë0”à›?²š¯¦îœE»pô+·p5_ =ýûëÏ•Êby®Ì=ì&˜ZÜ–2ô,/c¤÷¬÷ü¶%¹šÚºž¬HÓ´ƒYk홣ƒfêxa‡?Z[LØÅÌ#¯±¶ðºÌÝœ¥Ý®9¥—šAtP«XHþ(ÉJR÷9¥ð»ä:Rº1ÙÌ,gîª )ÌVO*–yaSèEÍúØž¢KUµqC®Ø*kÉ´í籪ÞU†Ž*ÒM68Á%s™˜úF /ñO ޵lÑ“ †O÷gy@,M܇Þo«ý<-·Œ…*bgP¨Ò¦¨¹KHâ*yó¸VM­˜}7aþ/øWT¨@K®§ ïy'óéyÃϺi®g’eqÆnÏøðߎë¦áK3\$Š`p~kŽ­xòJÖÖìC¸çñˆXøüUîwƒ$¢V šm5ä̲S~:»'G1èÞàJj½7V®î1]’€Nñ‘ZÎø&ïÜÇîðÇ?¢¹Âøz½¼çH‡ˆE…\fn(\¹¡íþÕÎþœ—¬½®íÁYÞzÔ8#÷OVû°‘mFèŸßAþîjТ~>@˜ "7¬vbƒµ³:ñ¹¼S”‹SÖõÛü¦²ÓPÅ@F’!Ô{LÏvð9§L9ÑQ~ü\YDu{ùn®X9ÊS"xb•9­ü0Ü{[é¤4jˆp_vC¯‰—ËUÀšQ%o¹Œµ¸áëï”^—Û\E…I·% Þ=¿ãp]z,âE%D[ÆðF6_Mç_¬k~H·ưXÛícs† v_ïŠßåøç¦S)Û.U¢:^rã”@s^ØFðS.98.Ã,üøeÇß®¹ðNIˆ&Ro$ôÕòz[¯ñs#»VHñ#6(GÙ ¤ßŠC<ÌÕ¶È|–EŒD˜Å×Ç“?Ö¸.Ž–•Å’kü˜ûš×‰ílɹ4ŽNy‰e}nË*œuÙ’µõŒÓœfí—úÊvUÇ;rÒ†:yÞ§GèÇ÷²ýU›T¯s+Úp¡²øázpbÆA9Âqd"§ûDa5ýÏý_ kW#›oÞ¥àœ«Ïo]ëh#*Q,co?¸û7ÉIì·"ô8q°H`›‚QÖ¦”£ƒÖd{©ÜNÏjÉ®pS‰í,²røû鿝䴏L›˜.£64ÝœX‹(bØFÕmAÐÜà<96*ôª‚E®çøcgßÙ’aX¹,¢b$¿Á{]U¯O±QÞq<‘|Ü­âÄKÑœTYf›Šë{¹i²AZFžû:A¯ó”Åýv9Y¿¸ïëyGz. öà³g€pfWžYxÁh˜aA­.&°aÐZm¨ØZ{O´óÒH?ÝÁ>p=”DÎI&ü4ÊŠïGï`l`NKˆ èá:å¦M=3ÀcYì{GЉÆs.“VXÌñ›Qs6ztLƒP3ƒ?W¨+‡À]Pª¼ÂK•«±Ô*î’GÊ0ÓsÐQôÌØc AS /ëÈq›ë`=î.ÝÊD‰™³Oø6f‡ÿ ݼ²«õ?Sõüž}Ô«¸•–äñ@ì$ç£o¼ü(¸vŽ=† &1•ë!»Ķ€Ñ wÛh`Ôô׆yÈIûós~Íô<Ã×’-{ ämŠì»GÑìû0ø—Ã}*WÓ©Ëú:5JÉGá¶ä’£ ëZ©C§<ïÀ Ôt¯(C°Àä(ùîªÏØy>^lïXõ©?5±ù?Çw^z²Wï§à²³ö#çÇBEÚÆÞmKÑ4ÍjŽ«ÈÔ­|•²'¶3XƒÙ ±*ëAV¨3CH¹;Ž®è7¥H࢟®ŠrëËré ¢H5·_uXÈóUý=ž:¶Íû *æ3d*è^[àâ¸8Œ6|71yäG0šÊÚ»æ‹ç³}ÅRmµ[ÞUC}?îX÷#Gwa˜€šÏûV>åkÊx¯Ú(¹2V‰×Ø{9䤳 Šy%ïj”}&¥éšä8-Âx'~@òe@|}ª²&«¹ÅÝ}’-”f¤‡¥Æ&îÈìöõòcø¡4ë²îe´¨ÉÛ+_`Û@Õ/Â=·ªÂË;¢Ð="(Šî~±$¥ý DÂ~•»!Û‚ÖoV³@ G}QM_b𲀓ôÛ[Æö6˜i#i<8Ï<Š .Î3a:ß’sJJÕöÑ×u¢ÜB–8Êg1|¶¿¬[ˆóÛ¿½ w¿Kš‡…í±4ÐM’ºÕ_»š,îÊØ&úÑoªx:ý$R4ê~7È^ð§p‹ï.RØ'€“£ÅÝfï£$@ã!dR–Ä/˜Ëì˜ÀZK¤ÞÃÆá Ìhêbø¹¦§ý¶„ÄÍ8ŽiÜucJyÕëkÛÊ5v9·êùIk¹!ðŠþ냀†&vºÄ†÷¹8ÛéîHj˜$‹2¦I0ìA`~y«ã<¡kð>È:n ²o^“m·¾Ø÷£ aG)¦¡ë}ò=å+Âg,¨¥”;Rs·;ëÄ‚ä^© }Û‡t¢­ÿ‚duŸ-­/]†\Ü£†òÔÛLµ7ó°úA"“wöÙ-—Ì"±'†«Á\¶Øã:ùf4†á°ã@^‚F¡*Ýç5•ëªøìû§”XqyÊ…¼dF6‚°¶óäÉ@ÅžÐk@7àÍwV¦¯ÙX^\ ÆŽzì:¦).Š¡¶¦v3=‹*_.e_ntòÁ)á‰Þ\0àxe¦â’›TŠÃ;јNŽ%ÚVLFs’‘çžW‚îçËŠ*”ÀÉéetQ{Æ=óYH)7åZ;ßUCä(¦ò¼3V Òi:r‰ø¶yO3¸¤å;¯ÓÙwEø”[òIÓ€Á\Ó©i7OÓõW°lÆ5XðŠûqí´*²Ðî¤ÄfQêúdΦ¤/4T³p“ Ù}ŰßhUj¦<ï¸ 2}…aU§Ùº.QP4.W#ìÎøf<‚Á¦nÄoäbˆqG6ÀþÔñA‚Ij§JœÜü!x9´oCC³ÇWp«íD6I.½Pí=¸Œ‹¤–±Ç0¸ FOŠ”×}»ƒC …¿œœ<ÁY›Ù¦rÄš·^L‚Lx56{:á~EKúy†Óz€ü0xJ›B(Rå”ýÏ4®Þ¡ü*ŠYÐ2Èéß«ê³ÌqWÛŠ·Ã9q øk×µ¾%²á·ÐËËVWÁ”Ú9È!€u-p2’ì–òŸv B)é68y÷fâì ]s>ý^PFߨì”Ъ•ç4g‰)êü&+hJÙåßÄ®`»*µ"ÛÊ Í:‚qciÈv>ƒ£žjº‹¼VnêAðEª›Q0Î.غ¡á¶TÝ"ê?:~Ñ—gC)Ûf’˜ZõGœ¨”X~RoN;±³ ·ëq‡ÅjhyÅ"W…ýa#÷ð¤#ë(¿†ÝH‘_V V‹ÚäW=í:±z0tÔ–=óƒp(½ÇÏóéìZ¾Ï£:ŠÑ¢In¬Ö-8º.ySc’×…^0H1“š5J+y¾æ×»M—ýÉyN¼íÏ€öwÇ:þÚ_¼`·Ä&É´±îP%pw§¯´üh2ñƒ¹õ\j…ÜX„¹¯2ÿncë}…aò‘I`wsÞe8äçoè«qùåB 4(Ø#â埵H£=é{£ù{¸žS#Dƒ'SÏme•A3FúŸœ÷r—XÔWŠ|©]£ ƒôן}…ÁnÇ« a[Nî?Ññ]ÛW!­\Ü%í}àåi‘%p+û¶ Ë8µo¿Û;¾ ó—Òy¡ÕðÑÌÚòºŠèVÏÞJ<»À.˜„œBÕC@SÏïè_|éÐì_ël6ø6¼UèF'Õ>iNS,@çNeEŠ«®õ¡Ï‚ÿÖàThM)9›ŸYxd·t0JÀ늆üý“¹fÑg¦6 uÇŽaalß,O}ï7Ã5Ò%¤¨N>c4þú(Yâ™üü>”©~ò`Y@Ü‘ðìÓÀ³‹¹oîäVDƒB=‚c.˺ ŒÛB³[s߀¥×ÐeEé^èH0Žô›L¥7ÕYœ¸›F WcH(`øÃS+çƒ/¨ÇO¯ºJ"`ÏÙ‡H”}Ç~ cš¸VA¶S =“F‰¾×š ÷*ñÙ™0Ãîªë»ÐºÒŠ«Ó(`;tÄÀõ&¾'¿NæiÈ•_4ºY<eu­Z$#+8‚Ïb˜¹>&–4õçåãBT¥O8G^󜌭&´‰V¦‰Øú ûõl·êd(] x‹ÉÆ¢ñ¿ìÏG'_—Ô §Ò™wÆ4uÇGÃÔyZ¦‰ òi,M|à+üËŠW¿€4 ê9¶ìú Ë$†‚oÄ›Ö1T FµÖ˜‡&ü¶Ì“妬OQÀ9=&n©ó+²1`&ê½çiýk~£!+ÜÙÉXHs²)G`òÕÈÊ'þ‰¼ µÅ~‹ @ðÇ/~IXµ._Æ1ôFõãwvQNÿ›,­4+]_-LZ"¬AÆ>g:;æOÓèåŸætßKÎð ­¹ŸY³£¯ø—a£t±œŸ»G)»eœFßêà’ †0*rlöÓŒTõù\‘^‘uŸ¸ãö(ðò¬µ×u¤Ì¬A+F‘TnÍVÖÝýAƒ¾GƒAáö. ߉L³•}Ü;™£Mx¤e«Î;ü´ãòÒn†üøAÄ6?êH”]p7æ«„ ¬Ý ï­ân´"P„ßç'^s"öîé{‚ªÓdX®–ËoÏð‹eýO\λß4¼õ>Y*,?}Ât1œnCï|¤Ls€"ˆ >®Í;­|‚QB,m6÷*TA_sÍkXÁX¿²¢ó¨2k„>Èâú-ñ[*w6ªÑ}›T؆åTœŽ(’×Lx”îMVÄ­ݰ$8Šëw ÏFõvE¬Füþ”Ôq¤×¯ôîÁ`ŽS•@±ü㥒{0©!/W/‡ Bvˆš«K¶ˆíwWY¯ïÀr½'C¡‘OþÁíCÃêvöAäöǣƂWw3§ÔzdBw9‹€ÖÀÆ«©Sž2 ¾ÄFkŽ–ùFÿÖ/”Aí…K[™š8©å0Õtê¶î‡ÜÝ?RÜ®8•$‚{Ñ nV¾nÌDIú'f^2C4ÛÌç!£=ûV¾•,v›¥ÒÃAÏ6x9cºä’Rg¹Išàd Äh òç$”“¿k±ÿÒøÃ|0+zÿ|$ž¤·¼éNmð§?nwÿ˜½Ã&$Uº­îÅÁ 8gœ”swˆ™˜è,(“?×j+[Ë>5«Rz{¥Ýn4±ÍÃým³ð¬Ý‘±F•ӡö'&uG"5&MHÃ„áØ Ã/ÍÁÊ–Ë£ËG(§ ì=–3ÓïWJɪØ'ÒT Õ7€˜k=Çúé`Á2¶Í'£Ã“Mݸٯ|ò|_;´EÜeq‡Bäí›H…·–’*êe‚“³ Ï|Aw¤Ÿ=Ð:¼Öš1¼";Ö¿PÕÁºÙ?ÀîУ—qZÜ{œ0büby±còNèŽËýb¸ù²LHU1rõ°=Wr±š)Ð~¦hë»­_¹r-]?øSVs9åÞ±®Ÿ™s²Ù¿¶6a>oƒ—®á—Η¦DzÄÖßk§sÞ¼@j{,‹\TCA‡¶šx:¤œ6‘ýÁ)½×p;‚<únhKS2‘—™ã˺cµôˆÙ! éì3G¸¤—=ñaÄ)žy3·D³Pz pÓ‹?ÿ|«ç]ú"Î ‰´€=º*­¹ÿAŽ%eº$ˆ(Á7‰Ähf?lHþø«Ûã©Àý â·ít÷vƒVÂÅ °šP;¹˜–L©¬Ü÷Ìñpè7 Ùúp#)öæ.7i徂ÓÀ]¹?wÔlÎN/\¹f›˜HÚ?6‰uZhiU&Sö«qº„ø¥¥lÝ9qåÍàiügþÔüÑo+ªÏ/^—<ßéQãj ü §ð"µê@ÇŒûO‘ ˜dgîô¸¸'ÚˆÀí3”93J™Œ¶×k ªíÝ8}i‘n¡›' Òê€Y•½ëŽ€†7*×üQÈmÄ €aƒØo“ þÄ_\‡ótc:R¤ß½(,aø3׎Z¿xY¾L†Â+'˜)úɾ&’ûÌ#x­•#Á“&¨pãĉó·Hô]ÃãËiñdµÒ}. 1£x¥hU ×¾[½méÖ¬’–.[z ÅúôMqA®»g…›X ¥Tn¢ÌéèÍÝÉUBö„g¹ÏÜeRß» p®Ô‡¢**ûh·»:)•fÃþ:…‹¦Él<Æyìôx2A?P,R!„d×ÐvNÉãöd( ãhÁñ÷ç]ÊÀ£žB£Cp—¹›ì$Ôgð¦B©¢}&‹PÉõïÙ¯”‡–¥pû¥Ãr‹2~KÚ¨žÅµóné“ú ëbœì\¦Vmèž 2z­²QªC”AGþp}®s§=„å…êí»¾4Ë\T«¨&$Õ“½È1 •6 ‰S}]œÁAZÈý“æP.»e¿Mñ QfÇ‚>ƾè±úª_o$/†ÌJÊ\ó°‹fWeF-i ®ÂEW›êŒ¬tÒñG¸V…y ì€^Þ«i+CE6—æd¾>âa/F™‡!Dæó©&æ¯!Wú|kÎdn*O¥x½ GêˆÊÏ àe~µøÇ°«ÑF32¦‡°ˆaĦ‚ZkÚ"ˆ¦~¸\(ãpê÷RÌ:ÊÃÄgvõ¾{Ï*B=—ômÐmùÍvY” .Îc•òßð‚H‘,â‚¶ôðÄYöˆ{┼Â@¤?±/fYó×9¥8¾èüS!ë˜Ù¦Õçnêod;e?È'c¨Ñb 8iÌLñ°4ü%•a·oßÕ´ x?›P\?:_R¶bRî“åêTm†ê\Q!I²Ÿ¬>ÄG£‰‘çsyT,÷|T9 øÉ£|ö‰w<˜‡H ê¨‚þ]~JMålêKÃh¡{ü'D,ÐeºÍ­jÞŸMA«ÐÛÊ# fJ2ܱ¼á·éZ^áÎ{ß[ONÒ F¸s)@0þª/Ú4zF;ø®œ\D!Ùìæ·dºÅjÕ¨,oÑ6]&¬ L]¬-±Ûª _@ÿº{Œ‡È<,²ÎëÊTxûˆü4Àêѳ,b~ÂÙ ßVÁ!Æ]éìå«Afi%Å56ìËç©§ØšýMvïÅÑ¡ÃÝ ûO8 —ÚÄÃЯ\ÔU•kÒ<:ÿgñ•abD(¹Ë Yf¨ï˜([£Ë¨£Ö¼ÁjÉèŠ1#à–W~MËQ¹“–É…³ëÿ|E· Ñ½Hwg:\¼i,æGRÂÉ+\$ÕGzg bPPãi“c6ðq^t°'Ší0Ò¯½*âÎ7ó¼„q?¬ ûXyÏï§ð-ͱÏ#´8Hi6;ße—Æyƒ!{h¦MDx1·‹„wÅ€ós¶aÕQeJ}ÅoJL×E"eu¶t;9w0›½o¸<)ËY¢BVà”÷Uuk.Xߨ‹{Z†=I·Ç;/(Çþ`ÛåhËW,Cpå^y¨ƒŽÐ£Râ5K$(¼ËÈ ²¼ì\±%¤Þïa¥:¬[³åqÅäâ¸$rn»—ñÓ*WhaËHÄ…¶APÓ¨"Yµ-Ó.döË•OjyH[„ÓïDHÊ&ï{¼òoQ-çÜL²˜@ ¨ !<'7!#ÚíBÙ¹¢Mï'ç×_zŽ1ˆóÊœJt`lQHm°8ì"x›?/~¹_Xö²ï¦ÂãÌs×ïZ¥åúë¬æ5´RB:Ûñ¾^}8Ì“w´á¹ôæH•ËLy^SÜs¬Ûã!'Â' ñ_cþÈ_Ýߢ-Ñ¥eäLÇSùÓκ2q>|Ò¼Z÷.0zsú£äãü„þCTV¢Ðqxõ –ù|&S[Œ¥´viúAC8VJ’ÃB¥öÔ•WaWp°î=ˆžÝë¨Ù‚kx´ +Pš³Šéœ¯o)t>á‰6ÅäN[©_¡ÉDIó,A_îÅÞú³[° %!iËìÃAÿ[]+hW€jdÃV‡Âj*èæÛdË®ââšæVR¾gÙJ¾ADL§ ä‚iÌ?*ûIL~ˆ}2A¼ôyIØID50¥.¡Äz&Üù¦\QïÕ¬§ú&cÊeÀ~ )²‚±À–/”î¾ö¥îÞtÂÄþ(/|éQ&›‡—Э§@äFV¢7Skað¬b/ 3ßFÿ¼HNÎ<¸É¬DD¿> ú$ ‰-²„aù“æi{Ù‚å·A¥¤”딃~(Æ’«Z\2©j o¿²‡dvI­‘*ò@÷w)]qóXꢳÒà”ÿ/^¡ú¦5\!Lý7%Äß­½šËt|ô_ÿÏï>'1>˜Ùs*cZvÒ“Z2r!•‚1~ºèI&ßÒÅ)ŬɄ@ê*–óÇqõ¼¼p¯Ê4iëòAƒÃSCÒοSJœ°H"z–%ÀZµÇÆD!3ßP5úà,­ n¸9ª LUÛša•—XÕ>Èad;€«®¶qÜÚ†Â3Á,áÈórÑØôˆÎ“vA¶]»l˜>JRûE‘|ì‚ÅÏ÷‹&„À»òOà¸$Ï%bÈÃFÿZ­Pɶݿ¨eä{„l›îf‹Å”n¥^ÂB/Ð]£ÿ»ðï2Ý;(Š1¨ØÈû2^œU‰Z]Úc4J£ø…E&ÄÜ-U=D’œ¦–U™›ôd:ÐüW â^oÄ.õß͘¿‰+ c¦  sÒé¡Û¯Èó…{‘m\6tSõU‰Ð|$¬á”„¤ ð2^Ö|ƒCæZ%Úª3åNó 8X{Ü¥˜+¶Âà $aµ× ÎfV¢Óݳ·‘"4‘’ù:ºúU õ½ìhìÁ>Šè³nõpαʚ±à›âîé|ÃT>þ;î$á5}A—~,ü²¸@CM÷*€ƒ›ø{µ¹g7S“*QvÊUVßÿ¢ÀÜ4„ÊÅŸçx,ä!9Ø”õÃìdÔ¿ÌÊv6GBŠ-]=&.ˆêPCŒbÊJ+{Ÿt,æ*>Éù2¿Ü»þ¿ø˜ [Ù¿E±Ì˜Mª¥[ÀtÂ{žÃ,_j½Âô¨«ý'« ² güvVÜ´t«ƒØÕ¸«¯›¬:?]âÎð›Á´‰ÛHdø< ¿X$V"e"WàMÚ#áÄ3¹„Í#÷Á‡GÝJªýóv”tPæž&h$莴ßê([Ùygi!ŠY˜g73 RÀß+^¥í)ZšŽ qÑתSJ¶Æa¸“÷"f޶ÎщtUÑÓ¹Î)!ãÅìG.z•,ÛE-\W$s ÉÅœNX°ÐÓ<Šg³ ÙÈe~OŠþì¡¿ï|§eRý§y÷–æÚ£u¦°78GµÇÖëwgºæ”Å¥ó¯<ôo’JÚûýu (¶øßðAçh¨5D{ÐqbFi Š:Ùï˜ÞTQ÷Õ9”Ù2“I íðeJ0'Kª˜Ï’L¹î­˜iÍÕj4 !(›¿‡ú1+²qTßýõ)÷¥Ú:üŸÀ5r[¼³âÕ®‚‘ÚÿY™¨ ^ÃÉõFöKodÊîGÇòJo­]ï0„«=™mP›#2¿¬‘!U(=±@Ím¹÷ÀKæ$Æá©P5”×´ìØ™d𠍑J®°«ÌœrçFi@˜; 4¿ùE{I²EšZ²fœöÑø½>s´¥ endstream endobj 51 0 obj << /Type /FontDescriptor /FontName /UMWYCA+NimbusRomNo9L-Regu /Flags 4 /FontBBox [-168 -281 1000 924] /Ascent 678 /CapHeight 651 /Descent -216 /ItalicAngle 0 /StemV 85 /XHeight 450 /CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/Y/a/b/bracketleft/bracketright/c/colon/comma/d/e/eight/exclam/f/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/quotedblright/quoteright/r/s/semicolon/six/slash/t/three/two/u/v/w/x/y/z/zero) /FontFile 50 0 R >> endobj 52 0 obj << /Length1 1647 /Length2 1691 /Length3 0 /Length 2488 /Filter /FlateDecode >> stream xÚ­T}<”iF¥(ßS„tÇŠš˜å3Ù00Ä©X5žÌ<Ï4ó 3D,õ&_Q(m…-mµI>j5I¬ô±vjCJíÊFë£U¤”¨÷™±mûó¾ûÏnÌüžû\ç\çœû:÷±\dãÎEÙ E0Š-ÙøÃ|¶XÄ@ùþ¨3݆Eн1à˜½¦¥¥§ba0ŠPYäB . B`g(ÎÎΚ–ÀH…pd¬ƒ!KˆÄe- À–~@ðH‰€ÅøG ÄC|ÁpŠA‹‚@̃€çº€Þþ^ÀÚË?xA$Ä›³y0Ða„ˆ % ÞäpP„ +ZÙâ\î"À"Äñ0H h@B>,áßH! Áð;ÀP#ž˜«(·G Ê‚B÷àãN€Š0G 0€g  Ò&ëÄ¢X˜"·Æa€Fàž\”#V´¤ÄpÅX0"$Á¹ØàÂ"%Åsãd!¬,C,‚‘È,B(’%äò ‘§Á¹·ó±Oð—îYOªŒF•^Öc"ˆa«I±Ãsr0v~|ǼРFsWtjnŒÿqÁ›ì»Ô 7“r£:N"[ÛÛ Õ5$ôá6U6¡ë°Öªi³÷)ûf·ù`Á½‹ïkI —†ÞVùfF‡æÌsu—¹«ìîÛzGå ±­º—V;Ro¥º‡y"]οFm¬/»2+aDÐnK3M’õ×—úÅj9«µZß<µ®Qîöì–~uнñÒs-¡Ó%õÒŠÃrùqK¿öÏÒk| ñ´‹¬2û‹{øgªÊ=ë$ «çû}–SWÒê<Ë6c´(ìRª³ËIÒ³fð  ÎŠ}×ÚeÁŸÁ—Ïø¤gLÄ=Œ³ôy6Žj 8á ŸW}ñ«î} ¹}ªTþêb õ›s>ç•FU½¿ÓÍ®°Ó›¿/‹î(ÞU´IWïÖH÷µA5Ž)]1—M#ù6–ÑNḛ́V ýÂÁ›>„úÝÎ1Á«r]·=ÙUíçÓnyinNŒ 5³ßÚfj\Ê>™ÑÒ#Ykîí¯‘Ù8˜r°#õ†¤1klµ»a0ضÈÿbMÃÁ1ÊÙ7¾2ºOUÄô§B 4|_Ý[<¬ãró‘ö15´¨-CoŸ•yb ,z¯Øó««ç7[]ÅBT§ìm}¿¾™sýÚZ¾i3Meù[Dñë§êá stn½<’ýüfþ©›Ùç’™sÍw¥Am°‘>IžÚ6´~‡ÏÀíM„Áž¶î½«ÝŒûÊêÚ|í‡'[ xòoé’éÂçºÅ¾½hš×ßÔ)[i¯¯¦ÃΊ/DŒûßhû8V¾ž9"gŒ×r—޾ŠÑw¹v–d­©°­Õ?ã»®”°_' ±²xèQÐüª½á¤ëLFRé<ÿ!÷õ`æ³ÔàYêW “išÌû¯‘` ”2 rN¨²£zYO®;š¦÷¨8i[úÏÊ´oÆtínÛ®ö\6gà²àó5— šÖßÃzO MýbœDKÒÙ+ìsÊüúÆÍvn¶˜É,àv%1²7'=Ðw'O‹ê3Ë–u>ÜÚËDï‘Þ/,> endobj 38 0 obj << /Type /Encoding /Differences [2/fi/fl 33/exclam 39/quoteright/parenleft/parenright 44/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon 65/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P 82/R/S/T/U/V/W 89/Y 91/bracketleft 93/bracketright 97/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z 148/quotedblright] >> endobj 6 0 obj << /Type /Font /Subtype /Type1 /BaseFont /HTMOVS+CMSS10 /FontDescriptor 45 0 R /FirstChar 44 /LastChar 122 /Widths 41 0 R >> endobj 7 0 obj << /Type /Font /Subtype /Type1 /BaseFont /MMTFBW+CMSY10 /FontDescriptor 47 0 R /FirstChar 2 /LastChar 106 /Widths 40 0 R >> endobj 4 0 obj << /Type /Font /Subtype /Type1 /BaseFont /QMSQAG+NimbusRomNo9L-Medi /FontDescriptor 49 0 R /FirstChar 66 /LastChar 116 /Widths 43 0 R /Encoding 38 0 R >> endobj 5 0 obj << /Type /Font /Subtype /Type1 /BaseFont /UMWYCA+NimbusRomNo9L-Regu /FontDescriptor 51 0 R /FirstChar 2 /LastChar 148 /Widths 42 0 R /Encoding 38 0 R >> endobj 8 0 obj << /Type /Font /Subtype /Type1 /BaseFont /XCOFEZ+NimbusRomNo9L-ReguItal /FontDescriptor 53 0 R /FirstChar 47 /LastChar 55 /Widths 39 0 R /Encoding 38 0 R >> endobj 9 0 obj << /Type /Pages /Count 6 /Kids [2 0 R 15 0 R 23 0 R 29 0 R 33 0 R 36 0 R] >> endobj 54 0 obj << /Type /Catalog /Pages 9 0 R >> endobj 55 0 obj << /Producer (pdfTeX-1.40.10) /Creator (TeX) /CreationDate (D:20100427141334-04'00') /ModDate (D:20100427141334-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-1.40.10-2.2 (TeX Live 2009) kpathsea version 5.0.0) >> endobj xref 0 56 0000000000 65535 f 0000002125 00000 n 0000002021 00000 n 0000000015 00000 n 0000322391 00000 n 0000322560 00000 n 0000322112 00000 n 0000322252 00000 n 0000322728 00000 n 0000322900 00000 n 0000003523 00000 n 0000016692 00000 n 0000016762 00000 n 0000046960 00000 n 0000079355 00000 n 0000003402 00000 n 0000002237 00000 n 0000012263 00000 n 0000045600 00000 n 0000078748 00000 n 0000080735 00000 n 0000137809 00000 n 0000210868 00000 n 0000080614 00000 n 0000079494 00000 n 0000135840 00000 n 0000200568 00000 n 0000213228 00000 n 0000268897 00000 n 0000213107 00000 n 0000210995 00000 n 0000259414 00000 n 0000271135 00000 n 0000271028 00000 n 0000269023 00000 n 0000273474 00000 n 0000273367 00000 n 0000271226 00000 n 0000321752 00000 n 0000273565 00000 n 0000273619 00000 n 0000274224 00000 n 0000274684 00000 n 0000275246 00000 n 0000275469 00000 n 0000284577 00000 n 0000284838 00000 n 0000292755 00000 n 0000293025 00000 n 0000300004 00000 n 0000300248 00000 n 0000318383 00000 n 0000318880 00000 n 0000321487 00000 n 0000322992 00000 n 0000323042 00000 n trailer << /Size 56 /Root 54 0 R /Info 55 0 R /ID [<4EEA612D2DCE15C378DDB5CE211B78C1> <4EEA612D2DCE15C378DDB5CE211B78C1>] >> startxref 323301 %%EOF erlang-bitcask-1.6.7+dfsg/doc/bitcask_silo.png000066400000000000000000000577301233730135600212720ustar00rootroot00000000000000‰PNG  IHDRUòW¿žiCCPICC ProfilexíZgTTM“î{'†! 98ä%GrÎ 9KÉ Q$¨•¬ ˆ¯ €(Š"TPD#"¨¨ H({1ì·{ö|¿vÿ­}ν÷™êꮞ®™éšª±bO %„„F†Û’I{œI¸W b@ÜÓ;‚¢cee†¨ü›¶ò ÑEÚ°ÔÎ\ÿFé߉Ã@VˆÑÿöÙÁ^¿pìމ¤D":¹;Ø;Àé‡*,ng£‹àPáýbê;Øë'fœÚÁžžáþpÌ#ú$OOs2üÂ^;XvG{û#ós"kÀ2…ú†""ÄVËÇ7ÂáDÇÇ'Â;*`rHHÒ/¶³'¢Þ”pd¬rÁ½CžH£Ø .€è–ÿKæ• @ bƒaö_2Adçè‘÷ÕYý/Ù¢ÍÏý„XEøí–ÿ9„'€ÛÞ^WÀVþööÆÙíí­jP£ÜöŽ þ© Ð;  ô€8/¢@ Èe ö}`,pnÀ€b@H‡AÈ'A)8jÀКA+è]  €!0^ 0 >y° 6 ÂAxˆ b‡x!!H’ƒT -H2…l 'ÈòƒB ((Jƒ²¡¨ª‚þš 6è6t‚^@Ð ´­Ã0L anX–†•á=° l ïƒý` §ÁGá"¸ ®‡[àN¸~ ßà%xEƒbA‘P(eeŽrBù¢(¨ÔÔ T%ê"ªÕ‹z‚C}F­¢ÑhF4/Z­Š6@Û¡=Ñaèt6º]‹¾Š¾ƒ~ŒGÏ¡71´NŒ(FcˆqÀøb"1é˜BL5æ ¦3Œy‡YÄ¢°D¬ V«uÀúcc±YØRl=ö&v;ý†CáXp"8UœÎ GÁ¥áNáþÁÝÀ âÞâ–¨¨¨¸¨d¨ÈTTû©’¨ ¨j©®S R½£úN§æ£V¢6¥ö Ž¢Î¦®¤n¡ ž ^¡ÁÓðÓ¨ÒXÒøÒ$ÐÐ\ ¹MóœfŽCËC«@kJëM{¶¶ž¶›ö5í"Äkâð¡øL|þ:~?K‡¥#Ñ©ÑÙÑ…Ò¡;K×A÷œn€'ˆÈWB,¡ÐHè'¼§‡éyéÕèèÃéÑ×ÓߣŸb€xÔö2D32\fdøÂHÃ(ÊhÀèØÆXÅx›qœñ““ SË,ër6kvBödŽQNC.1÷`îäQ££ÇØŽ%›>n~¼%'/#o.ß!¿³@´ ¿`½Ð§ðá åU'iOFœ8erª¥ˆT”Sô½Ø«x°D­¤¶”©4©ôs™cYO¹\ù™ |E\ŇÓö§»ÏÈ©¬¤¯L¬üRåR5pVíl]5guvõzÍþš×çÌÎuÔJמ9Ïp>õüÒ?¾ÿ¼¸`r¡£N¦îl=Ký‘ú‹aß]r¸4РÝp¥Q´±¢‰±)³ióòËš]›‡¯_鼪tõR‹`KÙ5¦kY­Pk\ëB[`ÛÛvçö'×M¯÷ÜкÑÚ!ÛQwSðæé[· ; Y·Ñ·Ý^ïŠîZ¸rg¦Û¯{²Ç½g´×©÷YŸmßã»wÜ3¹wÿ¾áý¾~ýþžÝ;Ⱥê<ì$Þy¤û¨{Ho¨ï±áã{OLž<¶zjûôÙÈÞ‘×ÏÜžM>÷}>ó"äÅÂ˨—믽F½>2J-|Ãñæô˜àXݸÜxë„ÖDï[³·Ã“Γ“ïö¿û6? Oç¼g~_þAèCãG•wfÌfž}òøôésÔçí/Ù³¬³Us’sm_õ¾ÍYˆú;¾È½X·¤¼Ô»l»üv%låÇ÷ÜU®Õº5ÕµûëNë7b7©6K¶Ä¶®ÿ0ý1ºú7ø üþÆc¿±ÀßXào,ð7/ð7/ð7/ð7/ð7/ð7/ð7/ðÿ7/@ñ ÷ü  ;ìçÀ·óÐ9À<-êÛÿ«Žò+Ú(¤´#˜¤AÜÐIXDÅ¡åÐs˜6l).êuM í;:B$ý+FS¦N¢Ë([g8W7‘×yWiŠ_HÀA0C¨^øžÈÑ9±U H’BI£e`Y”ÛÞ +À ÛŠ[JëÊK*³ªÓj¯Õ‡4z4[µêµÏì9©s‚|R÷”^‘~‰A¹ái£*ã“ZÓ:³KæÍ­–VÝÖmFm?Ù­:`‰{ùœ¤Õ]ŒöÙºz¸íwñHõ,ðª÷îõ÷]óg ÔÛïœRz-l€2q`!Šdˆ"EËÅcmã|ãcf%”'6&uzžü)e5 JÇg°ÎT:bšå}(§2÷îÑoÇùòìòÓ . ¹µ…SÄ"¥â½%±¥Åe­å#Kgˆ• Uºg ªjLÎYÖÚß÷ï…uIõ¹Ë/]jèlìo¾üºùí•WçZ¾]ûÞºÙ_ÇÝ t°Ü$Ü\¸5ÒÙ~ûtWú nÛ^¡>†¾»S÷®ß·¹ÿ¡?q€e áéƒO * ¾}t|hÏÐÊãkO¢‡•†WŸ^I|F~NõüÑ‹â—^¯¤^­¼¾1šüFoŒzlp<Âþ-ÇÛ7“•ï|¦$¦6¦‡ß7~Èù8côIø3úóØ—k³9s®_湘¿ñ-/]žûº†ZoÚ þ!¿½ýÛÿìP*L€+Qú¨%t-Æ«Œc­RÃ4ZI¼]aœA†±ŒCL`ÙbK`ädä2æNçéàýBâæÓæwˆF>9ÂÇDrE‹%ЇKøJÚKéJKÈe6d§åÊ_Ý]®¦è¯dª,¥BP™WRkV/Ԉд֒ÓfÔ^Ü3¢ÓN>­›¡¬og i(dDo´nô:ïêãæ«áÇé·êÿ< %ðÄþˆ ›`Ùú¹Ð‡a)¹B­##9"·¢ÞFwÇÔÆfÆÄM Jø˜8”Ôs¨=¹!¥:µ8íXzZFÌá L÷#¶Y†Ùj92¹ÂGyޱ'äáò¡üÍ‚ï…ßNÌžœ95Uôºø~I{éŲêòŠŠÒÓ¥g**««êÏ^©¾YÓwî~íÃóOLûXÝûú¹‹« ¨FB×eÑf…+ZW [¬¯¹´ú¶…¶Ç^O½‘ÛQtóì­K ·k»*îvéIì¥ôyßµ¿gx_¥_l€ûãCºAºGÄ!þÇ*O‡“ž^™xÎùÂñeÅ«ÅQ73ão¯Nß¿ý¤;缨µÆ¸ãÿ_õô3«@µ9ŽlXŽp:)™Ï@XÀŠ;U{× d¤¬ýûü@!•lf¤Š-T!p~ ©T@;R•sHš‰@jä Å@¹P-t‡¶`X ö€Óá ðcx%Œ²Ce uá¯hQ´7ú,z#ˆ Ä4bV±dìQìkœ$. 7L%A•A5IM¦®¡¡¦¡Ð¼¤Õ§mÀ³ãÓñßè¼è† †„úÝô—DÎ1 2Ö0‰0Õ3Ë2_%ª»*ç3VÖ%¶ÃìœìMÆï8“¹x¹:¹=¸·xÊxÕyGw%“„Hùbøùù ¤*ÎU ;‹°Š<-óŸ“h“L—²–&I/ÈôÈË…Êì&íÞR˜R| Ô¢|F%[5RÍU]_CR“QsIë™vëžS:Ñä}º&zjúRü†œFDcFS&3Vs !K+5kC›ȧö™£öÞH§ Îãûˆ®&n)îmó^bÞ!>-~¿u@MàZmpc(]XåQøîˆ¢ÈíèêXã¸ùƒ%‰ºIsÉ¥©†i+µ™{³TsVŽ]É8AªºD¸ìôiÚJ»³•5sç5/äÖ¿jiŠh¾ÕBßÙ>Öa~««K½ûzŸÖ½¾Û‡w†Øžc5°yØiœ®·BåHuƒšŸ:—z•&ñ»í]¼þÝM‚6¡›Þ˜þ1ƒ ÃGÆh&,S ³ ó]¢ñK9«:ë(Û!vöû899û¸"¸ù¹Gxrxɼ»ZHø¤ùfùÂå¿ ÝαÝ%º Ö+^.%i)%)—ž•’½&W!x÷E%eMEUi5qua AM~-~mþ=:Bd]1=I}9C²‘¹±³I iœYŽù‹+–ýVomp¶švQö3{ÜË\^¸²¸Ù¸ç{ y1zÛøœô}å/x3ˆ>Ø;äF‘B90!y,j%Æ;öi¼ÉÁ¾DäGÉ®)óiG2÷ñ˦͹vtÿq±¼Å‚G':N]/î/ýXÁxFµÊ­:ã\ÃùuÐEñ›¦¸æ3W{®¶­Þ`»©ÖéÙ•ÛÝÑûõžp¿Çƒ’Á+C½O†ž>yÖÿâÆ«ÚÑœ±à ³IÉ)üô̇¦ŸÏØ/'çè¿FÍ|#.Z.%,W¯t~Yý°¶°¾¾±½ý€·¡ŸþÇ <^Äû:À‚$pa¦ÜÏï=â” +h?”ŽpKº Iœ1fp\ß…—‘³f/ê8ê>‡6FG¿Äcâ0ϰJHô á‚q¯©Ì©z¨µ©oÒì¡éEü=¢#ÐÕÌ ôe F kŒLþÌ|Ì#Ä\CV4k/[»5Ç'ή|î@}^þ]ЮIR/ßþãH„â!d&¬&"!*(Fß%Á'),%-­,£+k%ç.¶;Eá„â¥.åQ•u5.um Í|­[Ús:|d;ÝL½ý%CY#ŠñU“M3#ób‹Y+}ë ›1;’½C½ã²“ŽsžË;W·|÷YOS¯‹>t¾a~Ã*§ƒpÁ”Ñ0Êp©ˆ³QÜÑ—b5âúÚ'Œ&yšNñK}Ÿî›ñ>ÓÿÈç샹ø£§Ëåõ¸~;™UÄW|½Ô®ìkEÎÙÊçgSj¤Î½>Ÿ{A»nùâÅ¿&¾ËcW*Z´:µëßPº)Ñ)Ô%Ø-Ò+sWí¾É€ËÃÀG¡ƒ‡ÝGŒŸ‹¾Ø|Õ7š9¦3¾ü¶öíÔöû3efš>ïúrp¶mnâëÆüʧo}‹åKÎËËÝ+ßé¾—­Š¯¶­)­5¯K­×n0lÄoLoZn6lÑlùmÝùÁûƒòãö6ý¶ûvãŽÿq°vÎ@£N2ÓÕûùòÿî…ð¼~6&äŽ ¶Øáv±"×GO=SäÉ\?(Á?ypˆÄéjp¼À– õ²°üµü lŒŒ…¬(‘äÌŽ`?J¤•ÝoyR|€®‚ñˆü„o„þŸy*÷{š ü0@@äÍáQ6öDðíˆh[}3 x*>ÀÎñ·Î’¯Þo9 ûÿÒ™#wl‘?`üAa¦;k@lÁJÀ_…0¾|A( 3º@ï÷] 9Y=‘žh¤/÷AF„!cÂLú­§û?$?Çù#ãþûŒ$„_†Xûcó—5bóÏœÀÁ䞈¾ÕE¸¦þËæù~®F¶^vFvóÏšÐÂhy´"òÛ®‰ÖB«šÍ ¤Ð h´Z­Žô©0…Ììÿg;ó‡4ûE‡Å©9 ½;ïÝëO/pø©øŸ¯ÿÇ @àà—Ö/V€ð'r‘XÄOå5;¨O7=yçù_[¤oìWè†QâÂý"I:kÒW’dê--I’—•“ÿ–éñÅ„d^+ pHYs  šœ IDATxí} |•Å™þ›@¸$.^ *ˆP¯AÅ õ V­«5ô_ÙÚ6´ÚÝ¢¶Ý‚íZ¥TÜî.´ÿJ°»†¶+Z…Ú¶kÁ*ðDã%´!¨\%ˆ‰$rœÎ!ßÿy¾sæ099¹AßwòÎï÷fnï̼óÌä9óÍÌùNšã8¢NPE {Hïžj´E@P" ¤ªó@PnD £ëÒªEà8!׉¦ÛÓép[…êt†”WISœR~Œµƒ>DÀ"ÉdDhÒŒÏÚád=î(Ÿe:"M;ß„o·é¦õVVRµ§‚†B  Ò$ñò3>-2é‰ivÃÆ%Ó3yñm¢´Ã,˸I3¾ž˜fç1Lçê¤*é*©FYÿ*Çy&’œ!I¶iÂFÇŽÛac_bZbÜÔië›pbžI·‰iv<1̸I3a7eítNÌKwÓüN¶JªFuŠÀQ"då™Hv<f Û: ›ƒc“otyö1 rdx,L?7++khffæà>}ú䤧§ç€477¶Âa„›!t¬Ó„邵}“oëÚù¦ÝL÷¼SRõü©^D F¢†$ÉÑŽkÏ…>~*&§ 4hlß¾}OD"'ƒÁ\øýØ4bĈÈðáÓO>9}Ô¨Q}GŽÙé’”uíddd¸b‡Mê•Diºiô÷îÝ+ûöí“ÆÆÆ¸0NÙ½{÷Á>øà ü溺º´úúúŒ@ Ðu7õïß¿þ‡ÜÝ­è×Θ|¿b¶#ß&W;Œ*\Žõ$É*©rxÔ) Љ&#L“ÖU“d@ÆCÆaõ÷霜œ ´±8á022vìØô3Ï<3kôèѧvšŒ3FN:é$ÉÍÍ´¢Þw òá‡ÊŽ;äý÷ß§yçwBÛ¶mk®©©!ñf0à#î6„ß øôŠÄû.d?„Dy(æ“tÛ"^Ï’¬’*FM" "5$Iv3aúÉ$éçC&`Åø<6Ÿ‡Gæ¡X]†Î=÷Ü´ /¼pÀÙgŸM á¡Ú;p-[¶¸²yóææ 6€ï`ÕÛ84`Ëa#Vȯ· ‡ †\}«!]FÒñ]Å*©rÔ)1,"M|„OFž\…2},ä2<ŠOEù‰$ÐOúÓÁ+¯¼2kÒ¤I}'Nœ(çœsŽoV›1(zÔãvé¦M›¤¼¼\ÊÊÊ®[·.„nm=òÊ÷ïß¿½Ù!‘r5›H²&n¯b¹Ëx9%ÕƒZò*m©yl'i2l”þH>V¡ŸkjjºÿøW]u•síµ×¼üòËÝÕ'ñ¡¢îhÀÖ€»¢]¿~½<ÿüóûW­Z•†¬H¿~ý^Çjvê&ÑVA ÁÒ7a)Ã=N°Jª@]]ïCÀ"Rvž h붉”$š ™„Ãžëñýç4îsŸ0eÊwïiêzîÕ¾ôÒKòâ‹/(--å85àƒí/8X{á2or5k¯`¦;f+X%Õ(Àú·— `‘©!Qã›Õ¨ñI¤SñHÿ5œb‡G‡n¾ùæ¬o¼1ƒó¨§— æÝnò©žÛË—/<ùä“¡ªªª>¸5ñÿ°Uð¬^I$XC²\½’\ÝUlwo(©Yu©@2M¶"å}Ðóñ8ÿ5H>ïá®]»«WçW¿úÕþ­[·:Ø‚ù¶ –¢[<ðŠ@Ú[ÁvÛÊUIÕçIÍo6ÈÔ¬Fé“HyÝéqÇó{X™ûÖ·¾Õ÷ë_ÿzƸqãÚ¯\s=‹HU{ì±Èo~ó›ƒX¹îÁ}ÙE0ö! ml·¬\•T=;-Ô°£A 2%‘’POÅ>é7¡ûË.»,mîܹóóó¦Y-ëAÖ¬Y#óæÍÛÿÊ+¯p#õ1ì¿þÌ|•«M°öÞë¯\•T=8 Ô¤£CÀ"TûŸDjä<âÿñé………éwÝuW¿ñãy/_]*#ðÞ{ïÉÏþó¦ÇœäY‚­ðk!$V#fßÕÝs=’ýV%U ©.5°È4ñð‰dʃ§!ø&ÏíØk»ãßøFŸÿüÏÿì7tèÐÔè¼ö¢Óà+µrÏ=÷4a{àöÎÆ7ÛŠQ˜ï2àÁVâʵË[Jª Uô2¡šÕ©Y•B½ ßIèꫯÎúå/9_ õrwÔ¶@_•ïÿû^xá…Þ±ð/hrÄ«Y¹Æ·:»jURíÁÓ&Ž-¡ÚP\™R†ƒLïÇ÷ÍoøÓŸþÔßr:¶Æhí¾CßÞ’/~ñ‹A¼‡áÏ ×{Ѿu‹äšx%«Sû¬üTW§ø¡rBåÊ´/¤ä\êKø‡ùÂöíÛ•PˆºÖðƒ–óƒó„óçB888ŸÌÜJÍ7$µít¥Ú66šãq’¬PÍê”ÿŸÁEðß-[¶¬ÿ—¾ô%]q^q~Á\®VÍJ•ó/)&MôA_ÕÄ^ˆ€u@eHÕ<ú÷ÅçM»N9éÕ)ÝŠndák'¡R>þÛ[œ‡œ–îV€iTIÕ ¡¾àäåœ5¤ßÀãÙ§ø#zêîF¿7&¸ð)ÔËÃ*’j»Vº§ÚÝ# õ3° ™"媔ïA͆ †¬±º¿u°:E Û¡ öëYßå½FßËÊkV¼¿±÷Uu¥ DÔù ³Z5'ÿf Àý‘8_õDõüIí˜3þf_•üÙâÑŸzJª1´ÔóœÀ6©’X¹rå$—wß}—ž:E [à{XcŽóÌ<ú›ƒ*3'Ž’j ø3mbå$§È’%KüеÑg<òÈ#Æb3× •ó1ît¥‡B^F vÂjÈ”ó–b&7}÷—5ß~›ß(T§t›6m’7ß|ÓTfÏ73észƉ• ê¿!`È•>'ºKªwÜq‡üä'?á²ýֵ׃pýøÇ?–oûÛÆ:3×ìùgòâ¾’j ø³*pW °ÛÇ$Tüj¦ÜtÓM>ꊚêUð“+‚_bu?¨c6¶˜oH3ó°Eܽ¨)Q¼'²Zj&ºà·§ïÔ!C†ÈÃ?,\¹ªSއzHð²qãFw^Åêà¼s?Àá›9H¿…SRm‡F|„€™Ô49>±,~ø¡\|ñÅî*/WñQ—ÔT/ €Ÿ³–{ï½WöìÙ# ? iæ™=÷Z™¬¤Ú Mð;'t’”••ɵ×^+ rÿý÷ ~EÕïÝRû1øUU÷ çøƒìܹ3‘P;ݺYÊvº€**~@`Ô¨Q²~ýzyã7ä’K.‘Í›7ûÁlµñ8!ÀùÁyòì³ÏÊ+¯¼"œ?Gê”T9-w¼0`¶Ï­€+VÈw¾ó÷WŠŠŠäÐ!¾°]"E€óó‚/¥æ<á|á¼é‚k5•T»€žªWì},¶ý¤Æá•mòOÿôOîVþöÐÙgŸ-üã“êjbïB?YîÎ΋òòrwžp¾´ãìùfÂT·Ã¢/TiAÍò¸[Í7Fù¦ ¾He$22 RÒ™û©ýë_åî»ï¼Í]~ùË_Êe—]†¢êz¯¾úªÜyç …dÁ‚rÍ5×tØýØÝþéPÜù€ìƒðÅ*|iuü¥*ºRêzüÚ°aƒ|ï{ßs_>|饗ʓO>)<¤P—ºp|9Γ&M’ÂÂBwüÿö·¿uŠP»ŠŠ®T»Š˜êºk¥jÏý´çž{N|ðAáK3fÍš%·Ür‹Œ1ÂVÓ°øøãÝwBpßtܸq2{öl¹á†ø&ÿ.õJWª]‚K•{+üǯÈš5k\r­¬¬”±cÇÊõ×_/¿ÿýï%äÏ©ó7®J9ާŸ~ºp\ùáÉqÆ[ü»L¨]í¿®T»Š˜êŽÅJ5YG8 <Àxâ‰'Ü+YÓ§O—iÓ¦ñ7à?Wœ¬ˆ¦yé‹/¾(Ï<óŒû­:>æÏ˜1C¾øÅ/ʀ܂?:ו•ª’êÑa­¥{ž"U»;µµµîе´´Ô½ïÊk7_øÂÜÇÇO}Š¿®¡îx"PSSãÞ+åÝÒµk׺ߢãJôæ›o–O<±[MSRíV8µ2/ pðCŽäùÒK/ɺu뤺ºÚý€ã¿=×Åû¥]²PIµKp©²8Þ¤jcÔÜÜìÞkä?7åå—_~5–{ùå—Ë…^(gu–ý"»¸†;¹Ê›ü†qÞ½{·\qÅ.ÎÄzâĉ=†±’j'MUü…€—H59’lEE…ûÿú믻[|4=ÿüó]‚å?ÿE]äž>ó~¬º–455¹·/ø2h^§¼õÖ[Â-¾‡BÍËËë1mi!n÷GßAÝ©{ªº§šˆžÆ=‰€—I5`@À]eq¥eH‚×¶Hü)m®déó^¼qÀíƒØ?n²ê|ŸÆ/fðñ}ûöí·éóÇô¸¥Ï——ðºÓ„ ÜÕ'?„¸ÚÏÎæåzÃ)©zcÔŠnDÀo¤š¬ë|¤Ý¶m[ ByçwdëÖ­Â=ÛÓN;Í•SO=ÕõG-'Ÿ|²{o–¤Ëû³™™îo&«þ¸¥ñ'œëêê\!qòÕ‹Üï´åý÷ß—œœ÷„&ö ?Tºzo´§;«¤ÚÓˆk{ÇT Õö@âW& ‘€þàƒ„Û$,’…«7’«!Ùºiƒ r}æSH`$`¾òÐ;ß22Bb4aã“è]á/*˜0߆o“(Ó=ôù†'®È͇}~PøùJš’j{³Wó|‰@ª“jg…ï‡5$[__/Üf ©Ù¤Ç8‰DmÒø6y¶E¶LçÞ¯MÔv˜„Í—7rÏÍÍí¬ù¾Õë ©ê›{};ÌjxoD€F?~|oì¾/ú¬/TñÅ0©‘Š€"à”Tý2Rj§" ø%U_ “©(~A@IÕ/#¥v*Š€/PRõÅ0©‘Š€"à”Tý2Rj§" ø%U_ “©(~A@IÕ/#¥v*Š€/PRõÅ0©‘Š€"à”Tý2Rj§" ø%U_ “©(~A@IÕ/#¥v*Š€/Ъøb˜ÔH¯"žž.|³ºžA€o‹â/-xÙ)©zytÔ6Ï#@BURí¹aн‚¯ç<‚–ôñÿ@Ó"Š€" ´…€’j[Èhº" (G€€’ꀦEE@h %Õ¶ÑtE@PŽ%Õ#M‹(Š€"ÐJªm!£éŠ€" JªGšQE -”TÛBFÓE@8”T4-¢(Š@[(©¶…Œ¦+ŠÀÑ# I(që‰À†Ž¾Z/× ¤êåÑQÛz ‘†-²rùJÙR¥Å¯dmØwl0m¨Úâ íש“×V®”Õ¯më"!FdÝ¢Û$-³¿ô¿æ ©Þ²L233åšEl¯Q–&iÓ#”zNI5õÆT{äG>zI®+¸Nþº;JªýG^.7Þ8SÆä£×sddº„hê¬Ý2çºë䪙Ïu‘Tkä³~ÊóeÞ·'ÊМ“dva¡|~ô€Ã S)¤¤šJ£©}ñ [VÊÓ&`¥9A&L&,{MB1Ëê6.—Û¦M• &ÈÔiwʲuÕª^)wÝóß®Æ3?%‹WW‹ôí'99¤oß}òÔn“iÐ]½+J¸»Ö-–ÓPïS[Ü2ÛV/–i¨íM›ñ€¬ÛeZk GõºG]½ ¦É‚ÿY#ä´œ˜JR›#Õ²ø®ŸÊêTÌ’Y‹V¢!ÙðÔ™Šö؇i3î”åëbµ/$+˜% cÑàöw¤&˜)C‡¬¾™FÉòëdù‚;eVÎ&L•Û,—Ä-eïÍ[vŽÆG/ÿùvbH#ió½hccoò9/Qçhã¨{¤áhëéjy´9¾±ÿy°­:—quÛÒÑôèÛžÚÂøç¾lȉ± ù› (Úó®U»Á § :ÖNÁÌ™NAž;îNQyÀ W•r¸’_ ç9+Ö—8èD4ž—çÌ)©t*¾Ñ/,¯wÊæGug–lEÃNĘ́€S_V«'ß),4uÎt*ƒ-±V.鉓³‰¶•;N[6¿ò¦3/?/^.v‰óþÚyñöfÎ,tò\» Šíœ’Ù¦\ž“_Xä”­-vËå³='à,)@ò‹ ;+æÄtó œ‚ühßòæ¬jÙX¬ÞIµº?16nœgœoœwœœ‡œœ—éh5úÆ28"UÖ 7 ’ 3!íhÚJ,‹úHªHnÿŸ²»óѦMªØýàHÖò”Tr|€¡OHu«³tþŽíB:Eªœ¨í:l–ÿâÄä¾6”÷"ýgÐù{Lo±¥w3ƒ¾#–Vp:¤Äèï@x4óáçZé _Át:„ïƒ[nqþ ÿYÈ/’Y–í½ayÖ;ž:ðÙË|bê&a¶rÈ¿(¦Ó€ÌG,…qSXŸÑa]¬·ÆH»²rŒ6Ì,Ë4سdåHߦweîí×É 9£dú¬9Ü~?.jD®˜8Úõ/ýÞb0Ä[rËyÙ G77›ÂA7Ïþ“1öj™%¡<±^Ö®['Ü©,øö4)á¸ÚÜëÎÀAÐ rëѤ–Rþr©›qò)\\‰œy]¡»är#íÙ<Ü-;áôSä“ÍÏÉ­“Ï¡£&É ·iõP/×dYÕMüE¥T&Ê‘œÑWIÔÒ9p¸éÄ"žŽ·ú‡·­Å?ý]ˆÿ2òiȽH»~27‰ÜF¹2z$ã>2ò-Ý×ñIÃWwsÜ™>ò6$Nº“¤™~'dê! ³Ý{!Ÿ‚°%H;>Çó uÜù!ã Înïß‘÷ôIžÜ9gö•}| ò.¤…ƒîh$¼¹r5„eŒ;+ “Ÿ:7Bh?uâÿUì7TnAÚȵˆG7ÉQ—4nø½LŸû„äÍ^"UÁ ”a3 æÂèY÷ÞO¢Ã^½Ð;ï|@Vn;|Þ§å­Ý¹ñÎB$/”«&ß ?O¾ùù³\µÆXÑâ² êeky™¬ZµVn<%JUѺ²eìø|7˜%ÑÏñÐŽÍñ‰ÙžÍ‡Ù²ŸôÇQÕ‹ÿ>Iþ£´Bæ•Tàƒ FŠ¢ÕF›±ÿ¶bY;Ó ƒ8£]˜-µ©¯­’òµkeÕÚ_ÈødPXE½l—Taô2ÈüóWÁß!yÙd‚¨ëHŽÿzBÞD˜¤òˆqÒ_d>Wo£¢©r&â SmŒ”®DøšXú 1=zçÆÂ‘Ç6>©‚ðólʾ4„{-~oÁjïBÖ ù9ôØ—ï@Œ‡t’éõÖ—ˆÍt¤¿û l $Ñ¥™è°_Yo˜4ÔyÂ$ÔOÇÚ2Yê§ {Þú³üjVtÝÕ/3CN9w¢ÛË»'O}j±ÌºêvY¸p®Ì{pÃý÷‚E²n§NKwæ5_•Æ\þ?É•§‘³eÊ4’-Êýê Y³¦T~0q’\uÕdÙˆ¸éæÏØ‹'¹ÁY“fÈ¢GË·&Þn²Zø‰6Ó.—ôJŸ‘'Wo’ИzßòÆÿþJf­až„D£dÙ¢úÖ‘ì“ä2·c å‘ß?/«þ¸P&NžŒç$è×ç8üs“è’ á“´Ú;é\aêAœ+@êúÜs$á0L²b½PoÝ.Òÿ‘y Â2”¿[é$ü~·.+½Õž­Ñ±ÛCÚK®N[ØbâðãÏ,çê›:l=„ïü[Lï>„ý;æjÚôݤwû±+U}`Èñï áŒÏ°œS@ò!ÜëB×{Þµj7PÛgŒÎ™³£{£y³K±·pV̋…{¡tAb¡#nZÞü2TEË=\Ñëwbû¥³Ý«X²Sï”$ÖYÝ75Q?à”ZzyQ; ŠqpÔ®Í5Û±y;ßy·,º7µ¿À),ˆ2-©LØTÅáèÞÝ‹eN°b‰[‡ÛžÙSÅ>-óÂÜ›PEë鬪jqòï ó‡‹ÚÕ¹=Õ¤d £ÝtTDBåþhÓàv@î2ùÆOLGœDÂüG o“* f4ÓMyúp÷AB¹B=Š©‡é$QÖÉ­¦ß1¤Ê|¦-³ëÕ=šyv:â; ]%Õ_˜:PÖ|pЗTá3œk“v‘øi“éÇh„i¦.õ[¸&b̈­÷I†ƒBœÚÚZ§>vc‰‚õµNMM ²óÃN0ÄSb‰ŽãÁ@}¬Íöuh»¶>Ý"Ø »‚ư`´­ä´×~ûmç†úúŽëåÿÎñp±ÿY~xçCøaNNã‡;?ä9/ã‹0NÔŽÜ«èD®$ÊÑ_¢Û‹„ÐɆpuÊíkî§ÛŽÄB7ò!Ð媔>Éí^ˆ¹ÌÇlÏÏ!t|¸˜Ùäf¿×BŒûi|0áƒÄWPßhø¶3í}‰È7}!éuÖ=Å ,ɔ×âïɈñ ŽÄZƒð·È©FüþXšé[‚ŠFý@–Œ1Br³ø¯ÐÚe厑#GʈìÄü ÉÊ®gbrë*Z¥deçÆÚl•Õ"!mÈ%$ºl†]Yư¬h[ÜÛê>—!¹¹Ç¢Þî³°³5uDªw¢"‘àHb¿‡ð°*Y¹·€„!U{Ó†Ÿ½Üçä>æNu¸wú‡XÝ ¾:uðÝzbéŸFœevCHFÜëtby“ÿ¿¸Cùˆü²#žˆÒy´z5dy¬,Iÿ;H'ñѱDÇ>Çt_D„uׯê0yq½X}Ô!±2}„ûÅÆqk‚éì; :×d¨¯(©€»ÿØ^WðÏÏÍ>à÷Îâ­‚Lyæ!œitMºíCÇ WŒiÈ뛨ä~H?„tw·z»ä… ?f™Ç•i—ÊÒ>®´ùäâÖÝ¥  Œ:ZØ–¬|L‡ûÑN‹C³dúšÖ1±±ã\$þ|¢É ƒ”Ħ‚=ç`?´{®Á^ÞÒñ›íÂM‡ìpÆä>yˆÜ1ÿë>h@‘ä' Si­\,Ï%ßV™±èÄg`,ÜJé-ÒÊtêP1Yû¨‡wÄåYg¢mm´Cû[ô!™ž¦)Š@ê!ì1>õz©=RE ‡PRí! µE@è(©öŽqÖ^*Š@!ÐážjÙ¡Í(Š€Ïhnn–]»vIuuµ|ðÁ‚»ºòñÇÇ¥®®_¥ Ⱦ}û÷qã …Üžó%ÖFúöí+ O<Ñ•“N:I(~pJª~%µQðtÉ’¤YUUå’'ÃFvîÜéÞ•=í´Ód̘12lØ0>|¸œ{î¹®ïÞÝÅ]Ôþýñk– 8P:$áp8.l‹dK’þè£d÷îÝ®üæ7¿ñí› ¤Ú>>š«ô*¸‚ܺu«¼÷Þ{-„i\uŽ5JHš£Gvý)S¦¸>ÓN=õTw¥y$€eà‹’­íHÎ~sJª~1µW8J8à®4‰“q>¢;VÆçÊ%—\"_ûÚ×düøñròÉ'KzºÃt¿’jGi¾"Ð÷ß¿\zé¥2iÒ$2„ßE8¾ŽÒï¿ÿ¾ìر#.Û·o‡÷îÝë®4Ï8ã —8Ï?ÿ|™>}ºæj3vÑýøvÂÇ­+©úx}>WR IDATðÔôã@ee¥<öØc²`Áyýõ×ÝÇãË/¿\HX|D6ÂU^w÷¹Ïøá‡º{ŒÆçžã¶mÛ\âäÞ&Û㣳‘ø‡ˆ‡»Ë–ã¾7-èðkªÞ4[­êm€øÜÉE€§¾¦jO¿7mÚ$eee.Áñ0ÇHCCƒœrÊ)îžavv¶ 4Hèçää¸dËÕ¥-øæž|òÉ'ÂU¥-Lç‰8‰‘§áÆç ZHà$Qîoò]]÷!û@잯©vŸYZ“"Úp¿ñ¼óÎs%±§<Éæª’׉ñº~ãïß¿_"‘ˆôéÓ§…ðІ¤;xðà’x“ØŽÆ?úøüÇ@-èð•~~<ÉîCÓí]Ô£¼n‡T+TÞŒ€’jo}í»" t;JªÝ©V¨(½%ÕÞ<úÚwE@èv”T»R­PPz3Jª½yôµïŠ€"Ðí蕪n‡T+ìMðn*/ä«ëx Ÿ_²ð²SRõòè¨mžG€„ª¤ÚsÃûfSÏ5x-éãÿ€¦EE@h %Õ¶ÑtE@PŽ%Õ#M‹(Š€"ÐJªm!£éŠ€" JªGšQ¶Ic(ÒVf¯HWRíìô,¡2ׄŠ7îkebhË£x×ê4ÙÐØ*ëˆ6.š*lè |Dª7¾&«»Öpd×j™–Ö_r.ý©vmŸêÚ¾±(_ò:l³“|”­¤ê£ÁRSSHXv¢[Mø%ÑD½ïÖ9‰šgòߺˆ¬Ì›$yx¯CÍ ·¥TfKå˷ɨ'JIÉý2&[ºÕþíy4¢¤êÑQ³R FY¹è6÷-ÿ¼kyçâÕâ®nŠW¯^,S‘Ÿ6a†Üõàƒ!G¢ïðȆ§ ÌK›p¸|d›,˜1C,^„Ubš,ÚÐ\ƒ,_mwêŒÉïV¬‘aY1•È.YöÀŒ¸M·-X.uÈÚ²lŽÜN•»'ÊžÚ"Ò†^¬× m[.7}y 垅+¥!ø‰lX¿Y‰;¡jyôGÓ¢mN!Ë^ÛeW“asyYýè%nÅÁ›8à¿ €¾¬}äDÈXÈ|ÈM ]ϻζ[V”¯]å9KË*ʵÅü –“_Tî8Árç³/,¯wêË‹ÜôÂù%NÙª%NÒE œò€ãl-™éæ•–9å«¢å Š+'Pî¸zâÌœ¿Ä)¯ [ „UsòP.Ï)Z±ÖYQ­£ íÂU1/ß))‡Me%€t欪qê·®p YgÁ|§¼*ЦžÕì¨rJ‹X!ê«qj+hc¾SÛË~Ö9o>Û¬wŠóQoÞlgEy…S:¿:â”TÙ6·¨µU¤³x·*x” lÂyÆùÆyÇùÇyÈùÈy™Ž&¢_1õ½I&:.±‰êgR V¸$5om-†3ê¶.-¹9‹TËI¼KC1—dóAªõÎü ‚`'C à %Çc.ózTçÛ IÝ®z¬ÞúË #sïÂxÛ5Ôí’HF¶ŒÀ ²¥‹HC]­›—‹p/cä„›&Ì÷E¯Jª@C÷H Rõ>Î^·Ð¤ª{ª^ŸEjŸ" ø %U_ —«(^G@IÕë#¤ö)Š€¯PRõÕp©±Š€"àu”T½>BjŸ" ø %U_ —«(^G k—ļÞµOèaxÅ'v‡±‡[îÍùk%ÕÞ97µ×Ý„@s³{ß»›jÓjR}üO…QÔ>(Š€gPRõÌP¨!Š€" (©¦Â(jEÀ3(©zf(ÔE@H”TSaµŠ€"à”T=3jˆ" ¤Jª©0ŠÚE@ð Jªž 5DPR%ÕTEíƒ" xýF•g†B ñééé]ø)¿õλöò«ª^þ&›’ªwçŽZæqøÛTÿ}*wÆGæyýûÿúøï£É¤¦*Š€÷PRõþ©…Š€"à#”T}4Xjª" x%Uï‘Z¨(>B@IÕGƒ¥¦*ÞG $¡ˆ÷Í<†*©CpµjE CBe®oÜ×J5´åQüªÀ4ÙÐØ*ëˆ6.š*lè |Dª7¾&«»Öpd×j™–Ö_r.ý©vmŸêÚ¾±(_ò:l³“|”­¤ê£ÁRSSHXv¢[Máp«ÎEï;¤uN+ÕN'döëŒjDVæM’¼?¼×åÃ:·¥TfKå˷ɨ'JIÉý2&[ºÕþÃy7¤¤êݱQËR FY¹è6÷÷¬xÏòÎÅ«Å]&ܯ^½X¦òw¯&Ì»|äH¦‹CD6<õ€L`^Ú„Ãå#ÛdÁŒ²`ñ"¬Ódц†Ôdù‚h»SgüH~·b ËŠ©DvɲfÄmºmÁr©CÖ–esävªÜ=Q~ôÔ‘6ôbµ¸^hÛr¹é˳^(÷,\) ÁOdÃúÍHÜ UË£?šmsê YöÚ.»šÔ› ÌêG/r+ÞÄÿm\ô…`í#'BÆB.€äCn‚`èzÖu¥Í²¢|G$ÏYZVéT®-FXœü¢rÇ –;ŸExay½S_^ä¦Î/qÊV-qò.Rà”gkÉL7¯¨´Ì)_-_P\á8r§ÀÕgæü%NymØ!쬚“‡ryNÑŠµÎŠâhÅh®¢ˆyùNI9l*+q¤3gUS¿u…SÈ: æ;åU6õ¬†`G•SZÄú Q_S[Aó2Ø^¾ð³ÎyóÙf½Sœzóf;+Ê+œÒùЧ¤Ê¶¹E­I#]Á=iGÈ6!œgœoœwœœ‡œœ—é¨6úePß›d¢ã›¨~&Õ`…KRóÖÖb8£nëÒBK‘°HµœÄ[°Ô1pI6¤ZïÌÏ ÇÈ5”ƒP¾åIª³K«b5Û^•3y$JãVÌ'dW[± äF›ÂN°¾Ò™‡6òæ—!t–€üòIÚpmë¹Ùñ?áJ~(¡4jˆ‘*? ©+—DIt+5èjœy°Ïýpˆ&tê/¬SzÝ©Ä6!"U}üRêcŠöKkØ@ßÃÏú£.¼B¤b“ÔÆC²ý5’7õL‰k™ ÐÐNÙX!²æö‰ñGõ‰·—Š ‹nPõ˜1C[w¡q”!õ¤!\LEݨ3±Ð EòOþtë ¨3Sú=Kæ¢1ƒ¹Ù–&ª4EwsÛÖ‹Öcþc›¿mîÇ2¦ŸÑ?ÖQ2×jÇÔãw_IÕï#¨öûÁât)½ý2žÊÏ‘'ÉAô¤bïþx2£›©"™2©³K·J8”@0(µ•e²âþ)î³§[ gçxùxÀÔƒ„{÷Ä’åñÂùõõ%RUÀÒ/ XJÀeÓxI:«g—I‡Iÿy²ª&(á@@‚Á€T¬]!s Æ%/àÓT%UŸœší#²ÇÈ—AX³~ºLª¹JlØ §?‡É “¢dÉåÓgŠÌý®<µ‡M8zìg<.Ê©ž!×#ká§¥:˜%Ùá*)>k’\÷DUû  Ýin»KÜvCÕ+eÎݱƒª( Ž?]NËÍ–êuËäÖ5¨.Äå$òÀ½{öÖ‚RÛÓk¿yæÚ«Öìq—JTÈ’gßHv¶4¾÷¬äM¾NžÛm£ãÚ|¢}wsU}ÅÁËsÿN\øö *\³6zøÝ›sÜ­ÅØ~ëŠFÀ_ë,ÉÃ#wÿÎÉ+äAN¡SÎ-È@…3{ž&Oòæ9•Ø¯Äæ¥[oQ#­]¸fUËvQ·9¨*_2Ûªo¦3ovô0Í=\*Æž/tópÀÔžžÝb {ªÜ'FbtOµÀ©€íñƒ*ô°,zÈfúQ0U|Ù®«½0Ëö´‹ÙÛ©=Õ4}uŠ€·À5$’*–¹‘ȧáA,ãdd¤¤§ç2¯Fu­ÍÔíªÇê­¿œ02÷ðÞ)Œ·]CÝ.‰ddˬ [ºˆ4ÔÕºy¹È³vZª%Æ"RWÛ(CGJ®¹NÓ 5ÔIc$CrGОˆ46¥?V‘¬; IFVV4ÜŽ^bsÆC²«>„vr%7»Ó½ˆWÛuÜãE8À6á¦C¸ò „{û  Ü4‰`.4Ã%U¢ Îó¤©zf_èuRÕ=U_L#5RPü‚€’ª_FJíT_  ¤ê‹aR#EÀ/(©úe¤ÔNE@ðJª¾&5RPü‚€’ª_FJíT_ ÐõKb¾è–©{xµ'vñØ7¦-Äð:æJªñ¡Ò€"Ð5š›Ý»Þ]+¤Ú)€>þ§ükE 'PRíI´µ-E@Hy”TS~ˆµƒŠ€"Г(©ö$ÚÚ–" ¤<Jª)?ÄÚAE@èI”T{mmKPR%Õ”bí " ô$Jª=‰¶¶¥()€’jʱvPPzýFUO¢­m¥ééé]üI•”ƒ G;į¨zý›lJª=:%´±TC€¿QյߩJ5z¶?^ÿÞ?ÑÐÇÿžÚš" ¤8Jª)>ÀÚ=E@èY”T{omMPR%Õ`íž" ô,Jª=‹·¶¦¤8!i ER¼íwOIµ}|4W8¦8¡M2#­,~;Ъà–Ç¥_Ú²¡Ñi•w¤ E×ÉÅ Þè xDª7¾.«[ÛÔ^Áð®ÿ'ÓÒÊé—üZª`{fÚg]Û+~¾m¶W³¿ò”Tý5^jmª! ËNq¤)nÕ3Þwl–€´Îi¥Úé„Ì~iÐÈʼ+åª?¼Ó ]K%P)«å;²ný2êÄ äÉ’y2&;­[í·ZólPIÕ³C£†¥ûdEÑ·Ýß´â]Ëï/~QÙÁ„›âÕ«#SÓҥ߄¯É].ÄÇÉtˆHùSÿ.×'-/^Þ‰ì…3dÁâEX%ö‘‡þ¶'¶Odùü;Üv¯š1G_±^r³b*‘eÙ·Ämº}Á3R‡¬Ê¥?•Ûå ÔÝ}‰üä©Í"mèÙ ·='Óÿqúôüxá iî• ë7I q' ô¾<:çKn›S å÷¯ÕØÕ¤FØ\^V?z‰[qð&øoã /$r"d,äH>ä&†®ç]gÛ}uáçt9ÏYZ¶ÙÙ¼ö×|žw®.zÝiþÍù¬¤9E>vö”ÿ—›>cþœWW=æä!½¯|Á)4;ïýïwܼE¥¯:o®Š–ÿ?Åwšs $ÝÍ»mþ#NyíA „°³êžKÜv‹V¼äü¥øWïÿ¿áê¼µð3N†LqJÊaSÙÓN>Úûñêœ=[Ÿw QgvÁ8åU{¶ô¬†'Pí<Ý-¿åIªß/Ý+uØkvÞwæH†K”&uŬ“œ‹@ætµ«•å!v‚õ[œyçdüÖ#t–LÎv®iÓµ­çfÇÿ¬üog¸ü¥ç@ŒTù`Hõ@åï¢$ºõ€[¦ÙÙåÌ“L‡u ¯Îªv«Û…tŠTõñH©SŽ)Ø/­áÿd¿ÃÏú£&^&¡›¥6þxÜ$;^SFO=óðŽ@f?×,'T#75É ·]T¿èŽ‘áÑüê}úÐÖ]hÜ#erHNÌÅTÔ<‹¬P4ÜGöË¿q êÌ”þCÏ”¹›Brê`.º"Òĭצƒ®bÛzÑzÌß`˜¼#mï¡Æ6‡o:c€Ûô´‘2—ÚMݹkl¬9~¾’êñÃ^[îe p˜T?ÚøŠdw¶œp8I¦9²cïþ8*™ÑÍT õû¥ïJ8”@0(µ•¯É²ûóÝgO·@8ÎÎñòñy2æìmˆ…öÉ_ù²<ù…Ç¥ª´ì4 V§ÒØ%F£/ÒY½Ã%Ú …ÃØÃ9OVÕp Á`@*Ö®”Œo«ˆ/Ó•T}9lj´ŸHË-_ž2Hæþd©Tc•è4ü]Šþñ1I›~ÁaR”~rÙô¯HÃÜïÉÓ[êÝáßýÛ݃ª´>§Ëõß.¿]ø´TûÉ pµŸu…Ìxb{»0°Ýih÷§?Yⶬþ«üèž×bUQž6þt9-7[ªÖ=)·®ÅÑYˆ«FäÕ’={ëpðÔž^»Í»™ö4{ÜÅòÙ$=ûºD²³%ðÞ_$oòçå/ÙZ×éy l<¸›«ê+^žøGòõAÕÁš—Ý}UôƒKA÷hk°UÑýÖ¢{³ô[Ý|êœWXàü”S/ð¶3çÜ~ñ¼ÁçÝëTb¿Ò”_´ñ”oíÖ¬iÑ.ë5Uo>òƒx}YyÿìÜ?ûsî¡–{¸ôð­n˜ÚÓ³[Ü[ñ_î>o‰ÜSå![l+~På8•ý&Þ¦kËüâ{Èv]m…Yæx8¶ éÔžj „®:EÀÛàI•ËÜHäÓð Hdd¤äxÌe^ê|»!©ÛU]ÄþrÂÈÜÃ{§0Þv u»$’‘-#°‚lé"ÒPWëæå"ÏÚ9h©–‹4J]m£d yø:UL'Ô€Õh$CrGОˆ46¥?V‘¬; IFVV4ÜŽ^bsÆC²«>„vr%7»Ó½p«íÞZÒi¶ 7²ò „ߌØ9i‚D0šáã…’*qPçqRƒT=²Ìó©êžª&’š¨(þA@IÕ?c¥–*Š€PRõÁ ©‰Š€"à”Tý3Vj©" ø%U ’š¨(þA@IÕ?c¥–*Š€èÚ%1tHMTz^ñ‰ÝaìÉf{m[~ÀZIµ×NOíxw ÐÜìÞ÷´ŽA@ÿSd µŠ€"à ”T½1j…" ¤Jª)2Ú E@ðJªÞµBPR%ÕHí†" x%UoŒƒZ¡()‚€’jŠ ¤vCP¼€’ª7ÆA­PA@I5ER»¡(Þ@@IÕã V(Š@Š  ¤š"©ÝPo  ¤êqP+E EPRM‘Ôn(Š€7PRõÆ8¨Š€""(©¦È@j7EÀ(©zcÔ E@H”TSd {i7ô›¢Nè):œsJª=5ÚÎÑ"`Of;Ìz•X]-ßìyfÏA;,JªRu¼„€=±½d—ÚÒ;h5•T{çDÐ^+ŠÀ1B@Iõ«Õö8ÍŽÓjÑÐãFhƒ©‡@l^uú•TSoô–ÙûXÎÀ÷mݺµ·ô]ûÙƒp^q~¡Ió©mϽV–(©¶‚D<Ž€™Ðf‚sádddÔnÙ²Å㦫y~DàwÞ̯:Î3ˆY±&ÎÃx×”TãPhÀG´ TØÝ¼oß¾ÊÒÒÒƒ>ꃚêžy晃˜_›9Ï ‰ÄÚªiºÕ Mð ip0+Ò’Ɇ † …œÖ·oßwìØ‘9räHDÕ)GÀ®]»d̘1áƒÞ‰Úª!õ½FÈ~HÂó¸Ôý°×•*ÐPç}bÖ¬¸b0raJ²ág?ûY¾:E [ˆÍ§ ¨ŒóËÌ53÷ŒÏéižžôžj· ¯•ôœ¸F8¡Í$ ÌÕÄÿ.Y²äÀ#<Ÿà=e˜¶“züâ¿p8Ÿ8¯8¿ œgfÎqþ™¹Øb¾éã?Qç°À'«LH?HÈ ·†@¸@Ÿ™™yç‹/¾˜1yòdDÕ)]G`íÚµ2eÊüäû)Ÿ@øèÏÛAH$Œ…*IÖuúøoPß/pU`V©\=P¸§ÅÉMه͈åË—#ªNè/¼ð‚|þóŸç¼ú/È3·8ÏÌœãŠÕ¬V<ì”Tc¡! `“ªûس9éy`À•ÃHäÑéÓ§|úé§[<š!]"Ð&œ/7ÜpÃÁ`0¸J<˜â|â¼âüâ<#©šm%U€¡ÎßB5+UNn³J5„JŸ§²ïb/ìÑÂÂÂ7ß|s$à9ƒ:E 9œ_ùÊW"œ/œ7ÐzÂydÏ+’*ç›Mª­ˆU÷T:ÿ ÛWåÕ*î­òz•Ù[å+^¯²%ñáýúõ»߈û†W^y%’Ô)‡X·nL›6-²ÿþw›ššþŠœ!üæÕ)[H²f/•äê®ZíýT¤éé?APç;ÌJ•ûZœØ|4£ðQ“žÂÃÊÇøGY^__ÿçk®¹&tã7†·mÛ†du½ÎÎÎ ÎÎ`BB5sÇÌ%Î+3Ç8ß8ï(œ‡­œ®T[A¢ ^F ö%~ ĬVy`„«Us#€«TÞ  0yCúôés1äB<æ¥ýüç?ï3tèP$«ëM€@å‡?üá¡Ç¼ùСCƒ¼þóT߬D ©rµÊ0É•y$W³`È•WT[ìÛ+©%uþB ¶ÀCV«ý-++…$jÈÕ„ ±r»`0¾}uyzzú§¿úÕ¯¦Ý}÷Ý}Ædu©ŒÀ»ï¾+óçÏ?´lÙ2§¹¹ù쾂þ’LÍ>¼Y™š''™šÕj‹=ÕÄG⧤JÔù „ÕªY±rÕʯ¯’4ÉÕ*W«Ì£%/ʸäzÎ¥—^*÷Ýw_æÔ©S‘¬.•X³fÜ{ï½á×^{M@¦›"‘ÈßÑ?Þ9%™šƒ(®DÍJ5‘L©ÃÇ®NÍ •ÿ­V©HSR%êü‡@Äʃ+n\ y’Hm1„KR¥žù"ÁÙƒ ºpÀ€ýÿùŸÿ9ý–[nI7n²Õù÷Þ{O}ôÑæßþö·Íâ…(ÐÍdâ<®B ©ß-É4ñ‘¿MB…®’*APçObÄÊm³ÀÕ*…DiÈÒ^¹’PI°f¥jˆÕ+Iùdl œÿŒÓO?=í_þå_2p2œ¦/i"w|ù nx8=ôPdûöíÜçÜŠGüJøBøØnÈ”DIÒ4B"5øôM:õ)Z¡BÏuúøoPß—$!Vûº‰•„I±‰Ô¬bMšÑ£Ob52ºÿþgáqñS§žzªƒû®} Ò/ºè"A»PSw<àùЛo¾)xåcó“O>yèý÷ßOÃvÎN\Ü'‘VAH¤F ¡Ò7¤Iß&QÆÍ)?õX–„Úâ^*Ÿù‘Ö¦SRmÍð I¶ì}V³%`ˆÓ¬N}C¾‰ÄjV¿£ð{:F{ýð­¹öÚk3øuX¼Î/PùÞN¼ÚQ^zé%yþùç#þ󟹩‰›PMUøàÛŽÎÕ@̪Ò)}C¨†0 y&úÔ³ÉÔÞ?m÷‘åâNI5…üŒ€E¬f;€+V#$F›\ Á"µ}æ1+VC¬ôI€s3ÈIDATعS±{*þ™OѦã€Ë¹îºë2/¿ür9óÌ3‡_PQw4àPIøkëׯ—+V„W¯^mƇÛGØ#}uS $ë¶…m³.~}+¶å‚l‡Ã Ýþøc¤#½Ú;û›€;ßö€ýüÆ’ù†¿òɯ~roÒg¢ŸHt$@C„¶oˆ’¾C¦&nûv= "¥ß-dŠz\§¤jP?¥hƒ\ ¹Ò#±IÖ¤‘H¶ÉÕÖ3a£o|»~»M†MÜ^Q3ÍÄo®ßÝ ùfÈúá}}±ŸëÚ2ÎÀ÷Ù3°éÖƒ0ÿÏ]‰…Q½[¿\eé»Â0òÔÕŒpé$ ê:ˆ²AÂM K>’›½IûZ¯'™•žíÛ¤e“˜!6æÛDç¶K3aCŒ›°ñ™FBµužI£oÚ³m0v¢ÎD¡žv’j»ðhfª!„\ iâKô ‰2Ý„ Yš8ólBeØè]§Ÿ(6¹B¥Ž±Íö6q[…M>óè·]bœy‰§ÚvÜ%YKÇË™°Ñ1q㓼˜Ç¸Md6¹™°!½D$qš4†©o§1ÏÄM}SŸ©ßøÆ6ãw™¢M×)©$ÔïUXäÊ~"3äF?‘øLœ$Ép"Y&¦›x2]¦± ê$¶•hƒ!Ðd>ÓìtDݸIgœŽqãì°IK$Q;Ý&Ó Aš4;nHÊø$1†R3é$=æ1n¾ ›t;­½°]¿6íÓ7ö"ص}è¬SRí,Rª—²XkȈ>‰¾MzÉÂ6y²L¢t”o×iÈÖø6Á&Údl£o ËgÒg¸#GÒ¡3¤EÉϤß&)¦‘ÈèÛ$fÂ6É1ÌôÄ4;n«n‡©cד¶m26wûª6´rJª­ фތ@k“›6ä—Ìgš–I¦cÒMž©;1NB4y 3ߤÑO ›4dÅÉ”i9’íÇ é$.7aÓ7i&LŸù‰q“ÖžÏ<#v=‰eìºMØØèúݵW {:å”T;“*õF,‚e÷Ij†¬LØ]2?‘;Š'«Ã&ËD"¥>}Û.¦™8}Û%Æí<ílbb: ˤ1LgÒŒOÂ£Ž‰ÓoO AŽâFÏøv[&Œ&Ý£=+ïÈ)©v„æ+@ `mÒb؛훰M†M3u}Óž‰ߤ'ó9n&á®8Cž,cÂmù$8Ch¶N2â³I×”ëlšÑ7¾Ý–kgO¯HÙh2§¤š MS:@ ’5dFß`G¾)“¨gê E&Ïè&úÔ±Ó·óÚr$©D׊¸ `§Ùa’Mz&l|£oâùF?Ñg;=²?ʆºê”T»Š˜ê+Iˆ‘,s q%’›!D꘰­Ã0ÓéL~{áIJÔ5i Ó1Ngüh¬ý¿$0:ã›°‰'%8(‘ 队,l4±|2][ÇÔé²(#^wJª^!µÏ×$¬hÙC|†èÚ‹'æu¦¼Ñ¡OgډƢí4X¢³ÓÆðXÆ„ÛÒIÌï(îÖé•ÇøDP:WRí,Rª§t#IV¶¬Ý¨ ›MºM†&lòŒnbÙdq[71l$ó’ÅMšñã‰ivÃt®ŽßÉ3Ú•Ö•T[c¢)ŠÀqG  Ò5vÙ„š˜f≾)“˜nÇmB´ÓMØÎ7aãúnZª’¦ÝÑda%Õd¨hš"à3,îÈòd䚌[ÕÓ[I²$(©vf+Š€"ÐÌicWʨ®" (Š@übW B3j IEND®B`‚erlang-bitcask-1.6.7+dfsg/doc/data_file.png000066400000000000000000001703161233730135600205300ustar00rootroot00000000000000‰PNG  IHDRDh¶f䊛iCCPICC ProfilexíZgXO“ï™°»,qÉ9ç 9³äœ3’—$I2ˆ  Y%%‰@AA@Á€ b‚‚‚• 7èß{ïž{ÞOwßÎ~ž™þmuuWíÔNwmU Yæ""ãbL©nî¸g@€ó ˆ6°³³BXþM[yŒp#mTvk­ÃôïÈL1ˆ@ ;„5ø7ÜÂþ¿qÒNŒ‹ŽCxöoá€?dªA°LŒ“ƒ!‚ï€'ÿÂtO¶°ÿ/Ìôn ûùÅÀ9ð øù#˜‹ñ7öß [8! YŸ ÑˉXÝ@Zlb'žÀÀØ€ÄñÀÔˆˆ(d\rë™HDÇ s%‘ ˆl=;¤GZT4Uˆn'þEó“ ­†[ÿ¢‰©@¾@ÏÀ¿h‹¿ž'Dy´Mé×r‘ æÕææ¢¸6Š77×NlnnÔ€z@wx@|LÂ/^€Þê0€+à|@HY Ô€ÐÆÀØ'à¼A $‚T°dƒPƒ P N‚³àhW@'¸ úÁcà˜ïÁG0–ÁA8ˆ1C$ ICŠ:¤ C–äùBAP¥B™P>T•CµÐ¨j‡º¡ÛÐ0ôš„f h†aÌ óÀ¢°¬ëð#ìÁÑp2œ €Âµp#|î‚áGðü^‚7Qô(6”J¥†¢¢¬Qî(*•ŠÊEBՠΡ:P}¨Ô+Ô'Ôw4Í„æCË 5Ð&h'´: ŠÎG—¡O¡/¡{ÐÑèÏèu Ã…‘À¨aL1.&³SŠ©Ã´bz1£˜·˜E, ËŠÁª`±.Ø`l6[mÄ^ÇÞÇNb¿âP86œ8Ng…óÆEã2qGpgp×p÷q¯qKx<ž/§â]ðaø4| þþ*þ>þ-þ‘NN•ΒΗ.ž.Ÿ®†î2ÝÝ$Ý =‘^ˆ^ƒÞ–žFŸJ_B–¾›~œþ3Cà%(, „]„RB#¡—ðœ°H$Eˆ:Db$1‡XK¼J%Α°$’&ɉIÊ% u’ÆI Dq*Ãv†$†R†&†A†)2Læ#k’]È1äƒäFòmò;Fˆ‘Q‹Ñ1±”ñ"ã}ÆY&z& &¦@¦L¦Z¦n¦ ¦ŸÌ¼ÌÚÌžÌ)ÌÌÌO™°p²h°¸³¤°T°\cyβÎÊ˪Ëêú—õë-Ö÷l86I6K¶¶"¶¶1¶o.ŠÅ—’I9M¤|fgfWawgßÍ~‚½Ÿý#™C™Ãc7GÇmŽ9NNuNoÎ}œ œÃœ+\¼\†\a\E\W¸^qc¹e¹¸S¹ë¸‡¸y¸y yÂyñ\ç™âeàUãõåÍçmå}ɇåSàóàÛÇwï ?Š_–ß?“ÿÿS´€‚€§@Ž@«À+AzA5ÁÁBÁNÁ!6!ªP´P¥Ð ÐwaQaGá½ÂMÂ/Eˆ"š"¡"GEúE–EEDD3E[E߈1‹QÅbÄêÄFÅQâÊâ4ñ#ââß%¤$<%Hܘ—’t–̑윕â—rÊ’j—ú$Í'í -}Uú³ŒŒ‹L¾L—Ì’¬¤¬·l©ìmÙ ¹mr¡rUrä òò‰òäß)p+8(ä)ÜTø®¨ ¬X­8®DV2SÚ£Ô®´°Mj[À¶ãÛÆ”ÉÊfÊÊÊ+* *a*õ*ª\ªÎªEªCjX5ªZšZ‡Ú²º¢z„zƒú”†°†¯F¥Æ3MvM'ÍÍZ$-K­<­m¬¶‘v¦v¤£¯“®Ó¥óSWW7M÷†îO==½t½n} o Ÿ¡Ëc`jk0H%Rm¨ÅÔQCŠ¡›á1ÃWF‚F4£3F³Æ ÆqÆíÆë&ú&Y&ƒ¦ ¦Ž¦å¦¯Ì„ÍB͚̖͵Ì÷šX0X8[³xc)e¹Ó²Ý X™YY=±°±¾h½jCµÙo3fËgl{ÑvÍÎØ®Ðˆ}¤}‡ÚÁÖ¡Âá½£¢cªãm'V'_§óN?œMœKœ'\d\R\\Y]ý]›]ºY¹U¸Í¸«»g»yˆxÄyôz²xx¶x¡¼½ê¼–¶m?¼}Ê[Í;Ïû™ŒOšÏ°¯oœï€§_¸_—?³?Í¿#€àp)èx‘†¡yК‚ÐAîAMÁè`àælˆWHK(]¨Oh[),0¬sËŽ;zùÃcÇ"„#R#Æ"å"s"'£4£J£æ¢M£k£×vºìlŽ!ÄÅÜŒå‰MŠ“+ˆûo_¿žàžÐ–È’x?I:)/éC²qr] œâ›Òµ‹o×î]/RµS¥®íöÜ}-;-5íEºNzUúæß=={…÷fíýažÑ˜É9ºOu_ù¾õ,߬Þlñì‚ì/9N9í¹¼¹{s§ò¬ò.æSòSóߘ\ØÏº×þ7Ì4d?˜vð}¡uáå"Þ¢¬¢ÏÅ.Å]%%Å%«¥¥÷©ª=L8xòˆÅ‘ËGŽýVæ_v¿\³üTsEZŧc®ÇnW<^]I¬L®üPå\Õ[­X]SC®Ù]3[ëY;tBóDCW]~Ýêɰ“Ïë­ê;Oɪ>Íx:ãôÒÚ™'g-Îv6È7œhdkÌm\;uîíy—óCô.´6I4U635ç4¯_ÜyñCËö–ÑVóÖ®Kª—Î_¹|¬¹-ï t%ùÊB{hû뎑«–Wo]Ó½v¥S¡³áºÈõªœ7J»ºòºÑÝéÝ«7n.ôDôÌôõ¾¹åsëEŸ{ßã~Çþ‡6wo[ܾsÇôNÿ ñà­!ុԻ7ïÜ»yŸz¿çáƒÞa£áþ‡¦oXŒÜµ~äøèñ˜ÛØóÇÞßŒÓÆgžDƒRG=DÇ`1ϰe¸¼0=™@"2‘DtÈ^Œ9LטWXµØvQ9(œ¡\7y8xãø†dK…¹EjÅdÄ[%¥Fdh²«òEŠbJ½ÊÛUVÕÊ444ǵSt¹ônøÂF &6¦Ëæ•–T«»6,¶öv…ö÷INÖÎ]¸1º;yñßÎåíéSíûÆ_4 ,ðÃ2ÓñÑëãæ§ªYíÙñ¹ÈÏèÏG¾ˆ}i×™ï_°ZùêñõÝâÎÅ¥¬eÒrÑ ËJñ7†oyß1ß÷~ßü‘»Ê±Ú»Vº^ù“¼¹‰ØŸÔA’+²š`nx¼Œ FM¡ÃÐk˜B¬<ö%îÞ•NŒn~’ðø€ôœá3#‘IžÙ—¥œõE=𣛋ƒ;™ç_,ÿš`¶0³H•˜¤øeIM©›2TÙ[ò JJÛªUHª‰jÏ445Kµ>êèêé½2¢Æ^4zf™J˜Ù™'XTYÞ²š±a°ÝfçjŸâPéxÃi¸ ¸é»ûxìö<îumûSï¾?fŽþ@QšLR°zˆv¨~˜áãp£j¤>ò»PÞ)#ËGŒÛŒ_Hx™x3©>9/%r—SªænÁ4ú´Åô—{î콜q"³hßî¬ðlÏ«\í<™|Þ†ý`ÿ×ï>)¼WÔSÜ^r¾´îPÅáÂ#YGSÊ"Ëý*W®©b©†ªkækO¬Ôý8¹V¿qjãôÆ™³k ?¿[9¿tákÓ׿ù‹ó- ­‹—¾µÁWHíBW¥¯)wj]§Þ0ë²év¼éÞãÝx+¬ogÒÀÞÛywJ í»›z/þ~ÄÚ°×CÇ‹QýG*c¹Ç‰ãO>=}ò¬ïyó‹²—©¯¼' &E^ã^ϼz{á]áû¨)ÛrÓÄé™™[«>%ÎÚÍI&þñej~laàëµÅæ¥ÓËÕ+eߊ¿çþH[Y£­;oPÊn²ÿ²ÿï÷_Ú£a?ø!Êu­ƒîÆc±®ØO¸=x|;=LžàM¤ï’r,Èdòc S³> +Ë4k7[;eˆ}šË%ÊMå¡ñfñÕóÌ…EìDãÄŽˆ·K¼”ÒB2Ʋ¡ròM #Š+Û¸•ÕTÄU)jxµUõ9IÍGZ·µ¯ë´èžÑ«Ò?l°ŸºÏ0Õ(Î8Â$ÈÔÇÌÃÜÙÂÎÒÒJÛZÔ†d³lûÒnÀþ¢C…ã>§Hgw#W97w´ûgžý^-Û«¼ |’|i~–þ"þk#´Ì ¯`åbÈûÐëaGvD†GðF,EEÕE§ìtˆ‘Œ±ã*â}„¦Ï'Å%k"þÁ]%©^»Åvϧ]KÏÙã¸W`ï\ÆÕ̼}®YbYKÙ½9%¹~y ù ¸ vÌ£ƒ”ƒ3…E…Å%j¥ÄÒׇ®Þ„vÔ¨L´W>S1tìÂñ¢Ê¸*×j­Ztí̉u—O«ß{*ä´í³Z FÖç\Ïû_ˆhJjξx¨¥®µõÒ­ËÛ¦¯¬w0^½¦Õép=æF}×ÄMdw©¼õ¶_f ùöíAî¡è»ý÷ù$?Ù6Zôèóc›ñ¦§äg‘Ï×_öM}ñÖü½üá‰OFs‰_¾n[ºþ¶*¹ß²ÿï|úÖ™€U ¾ä̱ 6Ñ $>€ ' /÷Ø»@ÅŸþóüÀ yl^$­@0’§.A2ÓÝà ˜‡è aHrƒb¡B¨º}€1HÙÉçÀ ð=xEAi£P9¨FÔ0j̓6Bï@—¢;ÑSFŒ&&S‚¹™ÅrbͰ‰ØÓØq§‰ ÇUãFñ8¼6>?AÇNgG—G×C·A¯NGßL?G&„ξm‰§I€äIjc`aØÉ0LV ——‘ìéu&¦ýLË̾ÌC,ê,§X)¬Ù¬ßÙÂÙ&).”{ìÆì78Ô9†8C¸p\g¸-¹çyÊx©¼_ø*ùm‘Üä5Áx!E¡áV‘$Q}1z±qñSI’ÖR¢Ò@ú¥ÌUÙ ¹Ty#Ei%¥m3Êc*·T/©R/×8¨™¥•¦¤“¨»K/C¿Ààõ¤á%£~ãç&‹f æÒ––QV‡­»l>ÙqÙ[9ìq¼â4ï"âjá¶Óý˜G¿çÒvo7Ÿƒ¾}þ @70ÖŒq=6®Q9­»³.V$îT‚lb{²iÊ‹Ôø4æô+{ý3™ö dïË5É'<;ÐX¸§xOiîá£GÏ•[¨¨ñáz>8Qÿö܇™Y›ù¦¥‹ßæW#×Í7Ú~NÿÚ?p€¤ðAl_ŽÔ#Œ%ˆR‚ì¡h¨©'x}…Y`ØN+á›ðŠ€R@¹ RPU¨Ô4š­ŒöBïCŸGc Œ,Æ“ƒiÃLa)ˆÕwa›°ïqÜ8'ÜÜm<ÉÑgà{é°HF¾˜î)’ƒ ¿JÀÜ D4ÑŸx“$DÚGšf°f¸Dæ%ç’—ýG˜Œ˜®0Ë2׳ð!'…õ0…­œÂK©c—f¿Ì¡Ç1ÎÇÅÌÕÂíÌýƒ§†×œw™ï$¿³½@`š¶Ð¦pŸÈAQ/1YqHü™ÄeÉj©ƒÒé21²ArÛå]l-•̶™*›©X¨Úª¹¨{k„hÆkeiÑiÐíÒן§ %ŒLŒƒMòM›ÌžX ,•¬hÖÇmÛ±Ù»9T9N;«¸$ºžwûà!ìàU¿}ÖGÕ7Ão$@,0•ö(X>ä@è§ÖáÍ‘¬Q)Ñ“1º±Uq› ‰÷’ÕSΤrï.N§ß“ÍÌÉ¢Ï.ÊeÏ«)Úù µð!bcÅCo”•ÙVŽ VTÛ×òœ˜;yóÔñ3»üÏÙ\ÐmViQ½dÖæÙ¾ój~çéwºçz9û,Òï\¿ î[ W¬Œ9:òóJu2ðMỎ©·3¤Os¡_j^, ®D~ï[Ý(üe âAŠ •+. ”ëà=D†´ ¨ yã×aE8®†Ÿ"µ ¨l¤êc-ˆvE¢[ë`R0í˜ïX ÄÎÝ8 R›q7—Â'âûé(tÁt×èÉH…Åu…Mx@4 ¶‘dH'ø*Èä2F.Æ*ä=>ǬÊÜÃbÇ2ÉÆe«¤(Sqà9š8}»p§ó¨ó,ñ¶òÅñ«ñoô  y ˉ‘1ÑsbYâ~z’bR‚Òü2ü²BròJ ºŠ6J~Û’”KTšUGÔV4ø5-´’µu–õ¬ôOS1†4£Û&²¦‡Í6-vX>·¶²é¶S³¿è(ëtÎEÖõ²»®Ç—Çö9Ÿ ?NÿÖ@;Ú—àâP•°áÙ‘JQ¯wˆ•NˆOâMØ¿[8íÑžÜ ½ÌoY-9Qyòù_÷·Ü]´­¸¿ÔóБ¼2ÁòkÇÜŽ/VÕÈÕÞ«‹¨'j>cv¥ñØyƒ ÓÍE-¢­'/ µÕ´óv”]cé,¸êJêžëñëí3îo»-q§bˆx7íÞ¿á±óÑ®1åÇ OŸV)‘ϨŒSÊ`ä—q½²Ì!Þ²[ù#óCÖe£Á’‚¬U& e‚Qv"Ý1¯H"|Í4åG¶+òwûí·«Ÿ¬C¡mÍj㦊ßïGMMÙprƒ ekoo/vìØ±Úò8éò¾ûî»øíßþí¤ÇK©$K,ò.‡›ÿøÇøÔ§>µQ¥Eÿú¯ÿŠßýÝßM‹´p"˜@2 HHþäC×éÓ§a±XÂL“w2Â6"©ôÈDý÷ÿ7~õ«_©¸\.W2â\µa~æ3ŸÁÙ³gW­üÉü‰'žH.©$K²xÇîîÝ»S&â•}%Ü:tˆy­xŽsÕ(++ƒÏçSòKIŽ­Fc.ª– ‘!ºuënÞ¼©ÎWc‚Xæå'J#ˆ©$Ëòçǘ²dØ@ìŒy”õgµ¶Ãa Q P ‘×ë]µ Š= ãw¹Z39þ”Æç#•¸¤’,ñQLžkf[æ/vÍä@ÊÌÌ ¤!gšV«1"™©ÙI O}q£0;K™Él&Ò&•¸¤’,sÓbÛT'Àe(ÕsˆåK5rݱÔäq5ן0…H&ÄPŠVs¢’UX˜I²Èr¸L up=O¼`IV9*$G‡¤þSf»lŒ„­Žl`)S@*u ©$K*ä ËÀ˜H6©ÉÑ!cºL.¬^Æ!2:y4ÎWc‚Xf&À˜`L`ùH…È0«Y‡0"™C2ŽFùȘ`L€ 0t&¦¥sB9mL€ 0&À˜˜+Dó‘a{&À˜`L`Í`…hÍd5'” 0&À˜˜+Dó‘I€½wb #cSq„äÃØÈ&¼8ü¤®ÓÆRú®M º½©+ã‚’ùzQJ;&l®Þ®yĪ„X•Ô÷­y ‘¼¸P*¿™UŠ>íë‰ œÃb&VˆL‰>ñ¢áà&lÞô2bV‰¼?á͛qð…žD ³"áùoišeEbO\¤ÓTNâ‚Kû¦oùÓ>œÀå%@O ãÅM.ZË ~Å– ‘JûÔ”¾(#z fØí€üLÁÍÓŠf¦9[HÛ0¿ kÈC²ËÏ£x½;Yë!½Ü9[…(?¾¨Œdð’“/‚‰|ƒhtNÈ<ˆðfH›üã|<’³ÃB|¥R´3W~ÄN ð‰[æ…<ÐKÜd¹ «Ó ùáûiN@o‡æhˆîÐS>»eŒ —µ ±I`e"ßêË‹‘•“ƒ reY‡ê³—´ߪ‹èº¾5%°deá\¯k  ûB ÖY²ÈÏädYP\zÝcÊÅJæ/É^S”…c­$ÄåãÈYWŒ òÇ‹Žúj%{¥9'' Ååõ"Ñ}Pd±By©Ü‰¢ÒFrM©èÅibd¡ôJ÷’QIõY¨àd}}ŠSéé ¨×9e“’“-軈rb˜Eì$§òú.³j!†Eåhl©§i‹ÊvMc·éFŸX3¦ò[¾´«ºeˆ‚žŸ‡Œw ‘X¡¸¸Xÿ• „Î‹ŠªÑ§ >Í/^`'‹i˜½¸a½îN—‘ýIŒý‚|#bPÜÌüÔoÊ< 4•7ö]OõiùFìe~¬+*A}‡Ls<&‰|âc nû¨®›¢ò ª<óœÊ±±¬+Bù鋘PqL ¾”òFæohuŒàd åeÉiŒ,AöºüzëËiª«õªíÆoØ7ªŠ¬•ó"£’õ¥¸-½Z©úÒϨ¾•GÖ7øÐRMeGo75—Fý™«¬Í •-˜€z÷½vHzˤ qõêUÑÑÑ!***”}òþŠ:+å°:jESC°Ó¹¼®jbºG8ôkiGC-¢©ZxÊ `®¦átXµk{“˜Iž°*ä½{÷ƃT48ªË]VæíÃ3b¸¹LÉjµW‰†¦&Q[f3eŸn§´Øµk«MTÕµ‰i1)Ü6‰­ªN45¹ƒéu4ké ådκZ“£ÆÍ.œµU¦³t{¦U»víŠ1Æ%:‹àÐÓ •w JxT̈V§^_­ár»E™^¾Q¦•çöZ­NÔuŽ›ÂÌxBóÌ´NÚÉ’öZ x¼³N«oÎö¤ §ªeÂC}Poa-nj]Ôvm—ÖvL‹ÕvP["ë}D9ÓžÖÚJ››jµ4 —5ÍÿO?ú£?ÝÝÝâÝwß4û!èÕ‰vÙÃ/cTf¹¢ÑöZ­¢”5Qǯ›ñ6­"HåF/ôRj¸2ª9 ŽFS’ì¢Ýl/ ¥Á6o'i¿ÔcÌ ‘ŠÈ¯Ub[ƒ®¨QU´Mtš ö‹æ2ÙÁ;Tà üÕ±ÚÝMTR •"SÕ"ú¸¨•‰Qñ‰“ÁÄèC¦{\G«Sô+eDê—š£A ÛPˆ¬!üýízÇ]fú ‰xÞÓ îDS(m“í+CöÚvRD¤‰GXpƒÂ©+ÐUÍýawB/Be1Òl iŒ¯Ôi®R cä®iu4…èŠKSl­ƒAÑFÛ4EÕæÒìà­¹ÏÇg¹"GCèi®2Ë ®ƒ ÿ`³² -sBŒ ·CÖ«hõ Ca•y­œÑiä™ê 禕H[VˆHÓ߯?P›¢g¨¡àÚj;)"¿h«Òr4åG‹Û£êñà›B¤”&jeóKYK`*×|Pé¢ÍZÞBšù²˜ëok ‡Ÿ.ÙFŒy1ÜӉ떭ÈÄuÍÖñ<¶;_{þÎÓ™Ýõ,Šó O¹x¢ÁƒÞõãÁ,Ã.Ž3¸¥Ä¸…:fÒ߯ûî¦³ËØ¿·®G±{GþðyúTJ½.¯W[1h.JÍÞÿ4&Æ'1Ô׋±‰q¼÷v'ZtçFæÉÙ#kÝŸaŸÎ$û½   âlËÔ[´YxïtøªÄŠgŽ˜ü3 £Ž´ŽC§nà—Ò™áW"þƒÌÙó°n¹& ¯|»X_SÍýŸB}Éý8å!õ¸¶õÈ6óN´“lëQ…Jœ9õ*j‹±-c¯œ¸L^œxh»”-6¾Ñâ˜}o ÿò†œøîͽIÓ–}(-–;±QZ^îÀUï×±Û,ôÒr.“|>sźT;•ãÇvªzJ5?üK(Ôpÿ4.[¶nÀèqÑÀà¾í²´¶bøº™;>‡ZN{öL3úOÆö̼®çÙçw,m©â³ÿDÈØG­ />û"Þôü/lÛ‘‹Ÿ¶}OÅò•£»è˜Ï?çÇdÍ8¦GÐ;6†÷o¼ƒï«:dÇ¢Ö Q¨±”5äç&:µÞ*'`ô©Ëž ­¶c÷–ÐF.;ö¡@JãÓ"ûÞmf¿lYê6(rvÁv+OA»T83wÿÉßÂ5ôUT¾x•OJuÏ WPûÔnd̪ý^\úë :tk¦+ÇÂÑÜ—1•µ¹½²íÚ%°²‹ªé©°ÿFØêI t]BG°7´S÷ß”8™;»멡n\¼Ô… Z$›Ê&`Ù„ŠúÌLÃs¥îÚ*È.óÔ±=xM®¬Ž0SÝ/hʽí=ý¥‘"!&A늀ˆ~5”SD0Q.¯á¿t¤†£‰ñQuªú&Ãr‰Çª¦ô·Òª³;g¾† C-ßÄjLi <¯”#ÞgºvšP$Óvù-t¾ùYñäC…Ê.¾ÊýóëKƒå“­i&¯©]ÒGmhÅøè(Få¸ö£ðtTIséûÿ]?hWç_y¸(Ar0ËM sÛg@ëEáiù!º»5·ìÄa¨mZ }B)C6¸Û®`pt4ËZ+JbF4N‚çOœöò2Ö²6‡W¶ZÃVL!²d« ü¸w8ˆìŸP¸ÿ<÷SS! Þ²î-P Dë«—õ])òî^>²öC÷RT!ÒÔ·)œÛM»jŠÎŸ‡í»‹QþíçpžF0¤yÿ?åÄšfrt…ïZ÷[ÊÂõì7Q¼còóréÂ9©Pk®êžc>È^Ùƒ†×{ƒ>¼Ýø®šžØˆ»–¸¦lÐìøò‘Øvø› uD¤Uâ[èdaS½¸ÿ¨ÓAçøs4}¢Ç!£àÓp‘ÙZy*i˜É^?È×”™Åð½û¾O¨Ø}¿ ¶î–æ‰h´H)<—ñòòó‘/¹Ó8s! ´,ÐÌA-#¶Dí‡þ¶ã»M´´œÊ˜½â%¥ì÷wªh®ýûMäæé\ˆÍÀ÷¾ŠBk!þyT{(ÈÈß§”þËÏÂ~)¢ù`|vë"2?‘‰â°–@ ‡«©,xžÅž=Ç(‡¶iáѼ©R{(ÿünlÍÏ£ ¼õå;Ú\;ÛèOk­ãæ=_ß?à99Ь›XËšážL@X1…hÛ‘g Ÿ^|²¶Ö_DWÇ”nÒ”ƒÚ²O›Ód¡Ù”‘'«È†:Õƒ¥§ÑÑݳå£R޵–ÑhKе™·ä(ÎåspÒ–ø©,L{YÓåàŒåñ˽ËLÆ;3رµž¶Ü»;µ]YúŽ2»[ßÊl J[Ú«ôíêúVf[™KôwV.~Œo—™ÜNê±üÕ]™þñ+¢ÊØf¬ÛËÝ5®vc+vpk:PG»‘¦E³3<­öÚÚÒ¯oÏ—nô]faœôzæn5ɺ¿IɹËÌQf„¥Éi¯mŽqToèή ­Ü6/·]ë[eõ=úv«ÜE‡¹{N“ËàhׄÆ'Ïç”e²SÛám›oÐO,|µ‡_0ÊáŒh¯3¶k²Ué¯:̓áv—¹ÕÞÙQ×®ï8 Jí,Q|–s—=䣌ɴÉrG³%T´”2MÎÈ:`¯Õ·å‡Ð <£=òg ÙQr?‰§¼Ë,p§E“ÚMHm¡±Vf¸MÛšoÔØœ¢¹Ù°³Ò®\Ão°þŽ÷4„Õ/ùê·l+õ]f2è˜ËZ2’»ÆÂL—]fëd¾QAD€ÞæùÁ`bbï¿ÿ>ZZZðüóÏË[I6>LŒMªÁ‘¬ ùÈq”G~'lò&°>‡¦%bõ´Ä”ìÛ·]]]q… 7@ÏÐäVVv¦¾ê$€‰‘A\§2 ýmܼ5"Íx§È½´.3S›Ú™Á$¹ÏÙ°QOkSSÈÈÎE¶î&.¡Èq_} ¬Ç³áñ¿Œ¦Æ0:=C/gÜDÓr1f@H„>ú(^{íµ›xNâOXÀbdY _Uþèqu}ö=ÈËÖòi–¤¾)ŒŒN"!_"zruw²½1M;Ïæž—¤‡XÖo ¼soKçóÉO~?ùÉOf‰·r2M#˜dP™3Ò!ÍTŠ7Àå²fÌÔ?2çˆq„„]ƒŒ¬ ØD»¿dòÉ/ÐY^î<‹îdý’õh}ŽZN0w,1”µ¹=²mzè!|ûÛ߯}÷݇ÜÜ\¬_¿·Ý¶bPqHîtž–<ÜQr¯2Õ:‹xãȦ5óT“xƒJªû ZP.'Uð‚mÚ‚Â9cÎ@vD›_1Í’Ak0Ô’Ä9CˆÝÒ ?)Z™Ärk"‚‹=â— ñqš¤ÓÅð©üeæ¢`«17~ð•c(T¯1ÚÍ:³¹1ÝQNegåùÌ’mÉ2M[箾 _Gï÷¾CKð÷3¸¬ÊÐ’“Æ,Š@F6µAá %2©cúx&ëWÁìú.@”²€>hÁ Öÿ­k*Íú²¥5—þ•Lð¶§Þ€xj%%Hݸ½?k@ážš€Ž&ñøëèÙëÇ–¹vq¬²´°¸éC û_Bg»~Ë=øý};"FWÓ'œ&ÀR+D©—'Ë"QfÞVìX±i²eI"G² d`_*¾eu5²d™™ˆ‹Àê[õWòØ1`L€ 0&À&À ÑÂŒØ`L€ 0&æX!Jó æä1&À˜` SˆÖ­[·°vÁ˜`L€ 04#`.ª6”!y4ÎÓ,­œ&À˜`L äËåï׿þµú}øá‡Iˆeî CuC‡ µ›Û×l[S!š}‹m˜`L€ 0&€T~äögffð«_ýJ~lÙV¤tûí·###C½%[¾)[^ÇcÌOwH­ÎKŸ™0>Ýño|cU¾z;žÄÇëöêÕ«xðÁãõ–öîGè3 )‘ÎT’%%€éÎä¿øî¾ûî„á–Ÿ.ú­ßú­„…Ç1t' õ‡ýû÷«d.fd&Q|dÜR9ûÎw¾£>d(G±ÊdŽéŸ43´gÏžeú–Y¢P$?œÅ|Ë,ùR­| ‹ù~X²¤N%Y’•ÆxÃýÚ×¾–Öu™¿=o‰`÷L } üéŸþ©©’)”ŠP<ßT [Tm UŽ ;>2&À˜`L • ª¿uë–-Šg-S˜B$!V†R9«Y6&À˜`L`>rúîƒ>€Tˆ¤rNc*Drh)ô7_dlϘ`L€ 0T$ G„nÞ¼‰ÿþïÿV#DñÈh*DÒS¬ ≀Ý2&À˜`L`9;Þäè<_ÔQ¨ ñêÏ™`L€ 0&°R¤þ"G‡ä1^]Æ!ZŒç•J0Ǣ`L€ 0¹„ê3ñ(E¦B4W lǘ`L€ 0µ@€¢µËœF&À˜`L *Vˆ¢âá›L€ 0&À˜ÀZ À QsÙ;1†‘±©8bðaŒ>ƒ1á Äá'u4–ÒÎÅt{SWÆ%óõ¢”^Iasõ.è4mƒbPRß—¶Iä„­b\GWq楖è¬%-?¼h8¸ ›7½Œ˜U"ïÏphóf|¡'iR-gÀþ[š&dYÎH“×4…™“„pW[Ó·ü«Md–wà:ºF2:ÉÉL …ÈG•šòÂe`$àó!ìvÀG~¦àæ)Éð¢oAÎra»æã $»ü®×ë3l´cÖzH/wgÎV!Ê/*#ˆää‹`â#»èœyáM“i9þÏÇc9âÖãXˆ¯lpcæÊ¸ÃI>1ËLïþå-¬®Æì™2hôvjž†jEëh4±ùÞª!°² ‘oõåÅÈÊÉÁ† 9Ȳ¬CõÙKÚˆŠoÕEt]߂ƚX²²p®W޵Ð}¡ë,Yägr²,(.=‰î±åb%³€d¯)ʱVâòqä¬+Æ…9ZâEG}µ’=‡Òœ““…âòz ‘è¾ (²X¡¼TîDQi#¹¦ÔNôâ41²Pz¥{ɨ¤ú,Tp2¾>Å©ôôÔ뜲ˆIÉÉ ô]D91Ì"v’Sy}—ÙQ µâr4¶ÔÓtˆEå »¦±Ût#ƒO¬Sù-_ZÝ2DAÏÏCÆ;ÐH¬ŠŠP\\¬ÿJPBçEEÕèÓŸæ/0„“Åôöõâ „õÎc8]RDö'1Bö òˆAq3óS¿)ó€ÒTÞØt=Õ§å±—ù±®¨õ2Íñ˜$ò‰GŒ9ÜöQ,¢4•_På4˜—T–(Í–uE(?}ÊïêK‰¹Ì·ÐjÁÉÊ£’Ó™#¶Js1ÖQ£l픬OÅåhéÕJW$¥å­£‘±óõª&@{ô•ñûý‚F\ÄÕ«WEGG‡¨¨¨0n%é8*ê¬OXµ¢©¡NØé\^Wµ 1Ý#úµ´£¡ÑÔ?-< å° WSƒp:¬Úµ½IÌ$IR#ؽ{÷§ÑþQÑàt«.wY™S´ψáæ2%«Õ^%ššDm™Í”}j¸Òb×®­6QU×&¦Å¤pÛ4&¶ª:ÑÔä¦×Ѭ¥w&”“U8ëjMŽ7»pÖV ›ÎÒí™V²{ÜGâ_&Ãv™nMýÑÓq÷èÑ£6Ú¥Ç-Óc=*cF…Ë®§¥¶MɇôÒßäV›]Øíôss¦G…¡¥ "4LAy ˮͥ¹3Q¦ó¶[·‹Ò¡_;Û¨lÇhÅgÉu9"}= Z9ª„G¡­N½ZÂåv‹2½Ü¢L+§íµZY¯ë7S?ã Í Ó:î“Äí‡=¤Xꨃz» k™pS»é¢¶ÕhÛTÛBås¥êh*Pd <õÔSâ?øø·û7199)è›fá¢\É79*³Ü Ñh{­Ö1•5Qǯ›ñ6­ KåFo„¥"ÔpeTs@¦$ÙE»Ù®JƒmÞNÒ~©Ç˜"‘_4HÀÖ +jÔi¨Ú&:ÍûEs™ìàÂ#5¿Gu¬v·G•”B¥ÈTµ†ˆ>.jeçjsSwN†8LŒ¾fºÇ¥q´:E¿RF¤~©Ù9´° …ÈÂß?ܪwÜe¦¿ˆç= *!áN4åÒ69,ܺ2d¯m'EDšx„7(œº]ÕÜv'ô"T#ÍVg»éäJÖ1+Å0F¾á­ÖGSˆ®¸4ÅÖÙ:hÆ+FÛ4EÕæÒò-xgž³ÄñI”Bähè=ÍUfÙÒukálVv¡eIˆqávȲm­£~a(¢ ²¬å¿F^ô˜bÑ­Y!ŠÎ'•ï.XG©´´UÉrdO¯¯×åõj‹VÍÅ«Ù;ÐáŸÆÄø$†úz161Ž÷ÞîD‹îÜÈ<9{d­û3ìÓ™d?°4bT<‚m™ºcËêÄ;¾0¶â™#&ÿŒ‚è#­ãЩø¥tføÕƒˆÿ sö<¬d®IãÂ+ß.Ö×TÅÀCóDÿ§P_r?NyH=®mÇ_=²Í¼í$ÛúET¡gN½ŠÚblËÂ+'.“'Ú.e‹o´8fߛ¿¼!'>{soÒ´e$J‹åNl”–—;pÕûuì6 ½´œË$ŸÏ\±Îg§ròØNUÿ¨¢ó‡ …<ôÿ@Kï–­0:@éÕŒû¶ËRØŠáë^dîøji˜ìÙ3Íè?uÛ3G𺞟߱ ŒùÄbûUN`á: |þ9?&kÆ1=:€Þ±1¼ã|_Õ1;f¯¶ŒH¢êh,q±›ÕDÀè¥Æ‡ IDATS—]f­¶c÷–ÐÆ0;ö¡@JãÓ"ûÞmf¿lYê6(rvÁv+OA»T8ÓT˜‹ªwÿÉßÂ5ôUT¾x•OJuÏ WPûÔnd̪Ý^\úë :tk¦+Ç¥ƒç£¤ÂgŸGÛÏÏaû]—U^ØêìZ}ŸímÖë(0Öõí?zŠ0s÷ŽôËäÔѹãbÛÕJ`eUÓÓcÿ°U–躄ŽÞsaoh§î¿);q2w„w×SCݸx© ´H6•MÀ² õ˜™‡çJ;ܵU]æ©c{ðš\Ya¦º_Д!{-Ú{ú1J#EBL‚Öýj(§ˆ`¢\^ÃéH Gã£êTõa†åUM=èouR(—a?vÎ| A,<†Z¾‰ÏÊQ*x^)Gnœ²ì´Ó„"™¶Ëo¡óÍ7èÌŠ'*TvñðUèŸ__BTsÉròš9Ñõ }dІÖÁQŒŽbTþˆëð`?úÏcgŒíørð1ÒµÐQRH‡ÛÕèã‹Ç¸8¦U8ÿ´Vˆªš=˜¤tªôÊ4¢ßÓcEZ®>tTEséûÿ]?hWç_y¸h¡¨ù~šˆVG妑J²ÁÝvƒ£ã U µ¤D%¢ñÒ9-gMó¬YsÉ[1…È’­&ðãÞá ô±BáþC8ðÜOM…(xȺ·@)­¯^Öw¯È»SxùÈØýÞKQ…HSߦpn7í¾): v¶ï.Fù·ŸÃyÁæýÿ”kšÉѾkÝo) ׳ßDñŽmÈÏËE`¤ ç¤~sÇGqd¯ìAÃë½Z¤ò¿·ßUÓqW¸Ît×™l°ìøò‘Øvø› uD¤Uâ[èdaS½¸ÿ¨ÓAçøs4ÍWäÊqFÁ§á"²µòTÒ0“½¯P-†ïÝ÷}B…ëûU°°u·4‡FO¢JṌü—Ÿ|ùËÆ™û Qx¤ežf<$uº<|"cvm?ô?°µ ßm¢%ãTvì/)åöc¿¿Sy»öï7‘›§§—Ò<𽯢ÐZˆÕ”ýŒü}J™¿üì!ì§‘"šçÅg·."S£ É÷VhuTο*µÇQòÏïÆÖü<š1˜À[oh£æ´ùv–Y¾::+j¶XåVL!ÚväHÿÅ' ikýEtu\@é&M9¨-û´9MÊ7#ÿ NV‘ uªKO££»gËF¥K-£Ñ–k[oÉQœËçà¤-ñSYx°˜®=•(­iDïÀº/5âôKr.ȆO=HOÑú°L뫃úK}øø^é¨ü†»ºqéÂiìÜl׆ޝýoö©ûKùwþøNT7^BwW Ê÷îQÛþ Ï×-%pݯZSBc;O»dZežW cb¿oí<¦‡àÁÝ5¨®®AM Ëkpidöˆšî8â‡/VÈB£çñÏ™k¦Xß[´¹Ùû¦<ê@ËÙrì©Ôçl5u”‰#Þ "{²ð 8{± ½Ä¶zg¡6]Wm‹q”+;zyIƒÌÂGcmÛÖ'¾Ú!JZæqÔÒëòöý1­Ê¢Ë{Pzòz{»Õ«2ÔȞ͢ôäâ`H^”8 s)àÂѳ‹´%0¥ÅwZ}=g[:¨Ÿ ºT|6…N­Õßïšõ€±|u4m3dí&ÌX‹¾Ü»Ìd¼3ƒm[ëi˽»SßN®í(³»õ­Ì¦ ´¥½Jß®nnmv‰þàÎjÃeÂñí2“ÛE‚J–úÕ]™þñ+¢ÊØŽ¬ÛË]8®vc+vpk:PG»‘¦E³3<­öÚÚÒ¯oÏ—nô]faœôzæn5ɺ¿IɹËÌQf„¥Éi¯mŽqToèή ­Ü6/·gÓîMD=úv«Üm‡¹{N“ËàhׄÆ'Ïç”e²SÛá…2m7Ÿé)¾Z9<ü‚QgD{±íW“­JÕAh ·»Ì­ö†ÌŽºv}Ç¡)@Ô“DñIÄ.3zxFÙ‘BËòD:寶CRÊêŒ,ÛöZ}[~H2)/ÔÎIÚ=Ü)r§¼ËlÐRÍ˼uTˆá¶:Õvõ6§hn6쬢s|åêhªady„XÊ.³u 4è ³|ð&&&ðþû¥Ï?ÿ¼¼•dãÃÄØ¤ÉÚÜGyäwÂ&oëshZ"VOKLɾ}ûÐÕÕW(zô Mneegê‹«˜Äuš!³Ð߯Í[#Ò€wŠ|ÐËí23µ©©±L’ûœ õ´051…Œì\dënâŠ÷Õ—Àz<ÿËx`j £Ó3ôrÆM4-c„Døè£âµ×^ ±‰çt!ñ„,F–ÅðUåFôÖg߃¼l-ŸfIê›ÂÈè$ò%¢÷ Ww ûÑÓôð;÷¼$=œÀ²~å…œ{[:Ÿ¯}íkËT—¥¬#˜dPY2ä 2Õâ p¹¬3õÌ9ácÁ˃‚Þ;² ;v°z ¼ô]ÈñddmÀ¦ü\Õ–úä— è,/wîEyK©£«—K~ìØ18|ìcC^^î¼óN|ä#‰ Ì<-yL~ä(S­³ˆ7°lZ«0w5ˆ7¤äºÏ %árR.Øeª Ù<7¿ bš%ƒÖj$b²Á ?)Z™Ärk"‚[Ê…x,*и<-†oLå/3[i*4 ¾r …ê5æ7B/mnLw”SÙYy>¡bE?—²n»lû&00|½ßû-­ÜÏüaB”¡èòðÝt!‘MmTxCŠÌÜܨeh)u4]¸q:â# Q|³ëÄðߺ¦Jän²ÄH–þ¡l{ê ˆ§Ò?¡)ôþ¬…{NhVŽ&ŽœuŸ0 GK¼è¨¯V²Ë—Råäd¡¸¼C$ºoàŠ,V(/•;QTÚH®)µ½8MŒ,”^é^2*©> œL£¯Oq*=}õ:§,bRr²}QN å;rÈ®¼¾ËT*‡ZˆaQ9[êQ²Ž^–EòȰk»M72øÄš1•ßòeYÕ-Côü-߈½ÌuE%¨ïiŽÇ$‘O5ÜNi±k×V›¨ªkÓbR¸m[UhjrÓëhÖÒ;ÊÉ*œuµ&G›]8k«„MgéöL+Ù=nƒ#ñ/“a»L7ަþè鋸{ôèÑíÒã–鱋•1£Âe×ÓRÛ¦dÆCzéor «Í.ìvú9 ž2 »¸¢%cV¼AYü¢µJ+®žIÓÝLƒbl­jþù&vŸ9Ó£ÂÐÒ¦ / êuy½Ú½é[ú¾ìèðOcb|C}½›Ç{ow¢Ewndžœ=²ÖýöéL²Ø ±*Á¶LݱEûfŒw:|q`Å3GLþ‡QGZÇ¡S7ðKéÌð«ÿAæìyX7È\“Æ…W¾]¬¯©Š‡æ‰þO¡¾ä~œòz\ÛŽ¿zd›y'ÚI¶õ‹¨B%ΜzµÅØ–1„WN\&/N<´]Êßhq̾7…yCN|÷æÞ¤iË>µÓb¹¥åå\õ~»ÍB/-ç2Éç3W¬«Ã.Z¹ŠÑÃ'ZqâõãÿÚw¾.œ¡ÄÛêŽ`«Q±V –r»¯NÇK-ÿ¾¾£Þ¾K8%óØõ˜–Ç;*03ý8nPûÚ×û6Fß¿Ïå·æ m~kúEð¦÷=ôP;ëÇð‘_  ïºlHiMèÇ´6ËóÞ]ÇÖ~å³å"°bU_ëŸíؽ%´gÈ@ÁŽ}(©÷]W ì{·™ý²e}¨Û ¢ì‚í(Vž‚v©pfTòî?ù[¸†¾ŠÊÏ£òICI î¹á jŸÚŒYk©½¸ô×8t"èÖLWŽy¦N¶ÜugÐBgZÓÈ‚öagR²c×™a¶›¤1"š!Ÿ%J˜«Å^¼7G*p¸@#² M'Æq©cØÝø{S¡ŠA†Œ­xŒæéÎT¾ˆõ»p¿EëôîÇ¡«Ø1ó›E)•ÚÂë Ü¡çMå~É2Òľ<;é|"E[µ×¡å*6þ™[? š²Ç‰3Í|î0n¶}O¥þïZµXðpÙÛ?O>¤úŒüe1®¿ñªrPaß©9œò öá8%Ÿ‘–`Fÿíg¦oï;Ýj(<§°§Pª_áÆsùx© ›»' wËWËO`eUSÑ鿺|-€®Kèè1;†vêþ›²'sGxw=5Ô‹—º0¶xVsšJÿ–M¨¨ï §’qx®´Ã][Ùež:¶¯É•ÕfªûM²×¢½§£ô$#Ä$h]ѯ†rŠ&Êå5ü—ŽÔp41>ªNÃÇ‘Œ»‹;V5õ ¿U6M—a?vÎ| A,<†Z¾‰ÏÊ« žWÊ‘§;í4ÉJ¦žü:ß|ƒÎ¬xò¡Be_åþùÍ唆šK–“×ÔÈ¥®é#ƒ6´Žb|t£òG\‡ûÑ?x;cl —ƒ‘®Õxœ¯\iÏ ñÏÃájY6ÎãG]ÝøA•1k->g©®F",s8<î–y|—»»ñ¦lGl.Pd>´|]S†ÊêšáÆ8žÓôWxs^Ý2û'yûæ/þÓt•u÷fÕ¦ÃÑ€áÉq­îSý§ú?ØïÁð«ÿ“•!“V꬘BdÉVøqïpÊØ?¡pÿ!xî§aÎpuo*l­¯^Æ„aIÝëËGöÀ~è/ð^Š*Dšú6…s»iCÑYø³ó°}w1Ê¿ýÎÓ†4ïÿ§œXÓLŽ®ð]ëÖ†o]Ï~Å;¶!?/‘.œ“úAÎKÅ‘½² ¯÷ê±ÒÁÛïª)¥¸+\ç º‰ëL…úò‘Øvø› ‰¤Uâ[èdaS½¸ÿ¨œÈp sü9lÌŠI’Œ‚OÃE dk娤a&{5þ _SfÃ÷îû>¡âõý*Xغ[šCd¡Ñ"¥ð\Æþ ÈËÏG¾üåNãÌý…(<ÒbªT!žæ8]>sD¼ ¬¢•«ØùoûÜ“ª=9¾Nx¨”U”è#‡«‹Â‡Žª<>¶gž%UUvý¡j¿Ð_Û· /;£ÿ&Û&2Ýše@{عüÞ6$GÐöjp?cÓM!ò\ró´ºOõ?ó½Àý…Vû»ŸkAñÿ”$°b Ѷ#ÏP7¼ød!m­¿ˆ®Úþ¸ISjË>mN“…RËÈ?ˆ“´=DvªKO££»gËF%5f(£Ñ–Et˜¡á'úü–Ź|NÚ?0•…‹éÚS‰ÒšFô  ûR#N¿$ç‚løÔƒ4ö¡Ë´¾ú7¨¿Ô‡ï•€Êo8q‘žb/]8›í¤Æ¹öc¼Ù'磗fÎ߉êÆKèîjAùÞ=j¸×ÑðLpíÑÒ‚W¾ý*]¹xÚ%Ó*ó¼ ðøø |kç1å^*n?t× ºº55t,¯Á¥‘Ù#jºãˆC¾X! fœÇ?g>¡=°¾·¨€Nì˜ò¨-g˱§Rk³Õi&Žüyƒródápöbz‰mõÎBµFÅQm‹q”+;zyIÌ*<Ì]®2bçŸÿ¨ÖšJ}päp¢`‘ç!‘¿fÛñ˜M«¿ V `‹Ÿ§öè¯ÑE}‰|mI¡z£æõÿ} C¦Òcž‹Oì”Ãó´”^õr‰f3N–n†z†4œdlÇ3u䆦Ì6Ó+?.u÷¢ƒÚí½;“ +ªh›&`¬j_î]f2Þ™Á¶ˆ­õ´åÞÝ©o'×v”ÙÝúVfSPÚÒ^¥oWW;h»s™Kô7 .~Œo—™ƒÍNAY¯~r§üŠ¨Ò·ÑöTI„«ÝØŠÜšÔÑn¤iÑì O«½¶¶ôÛ8ɾË,Œ“¾ëÉÜ­&Y÷7)9"w™9ÊŒ°49íµÍ1î‚ â ÝÙ´•;+äkhÛ½¹«Nˆ}»¿•vÎEåaîžÓä òҮׄÆ'Ïç”e²SÛá…²°mÖ´?$¾Z9<ü‚QgD{]ð•R®*ýU¡y0Üî2·Ú²;êÚõ‡‘RÏ}(>é¶Ël¡r%iÆÊßxµì a;‡æÎ‘Õg»–w™¹5ܦµÃV§|ÕFˆ™¼b¾C«£VQG¯C©Òw³ÖR›mì2{ÁãÕrcå‘ß ›¼ ¬Ï¡i‰X=-1%Ô¸ «+üE_  7@ÏÐäVVv¦¾»*€‰‘A\§2 ýmܼ5"Íx§È½Ð/3S›Ú™Á$¹ÏÙ°QOkSSÈÈÎE¶îf!9"ï÷Õ—Àz<ÿËx`j £Ó3ôrÆM4-c„øè£âµ×^ ±‰çt!ñ„,F–ÅðUåF¾Ögߣ†Úç”Ò7…‘ÑI2äKDïA. ÉK ûÑÓô²Í¹ç%éá–õ(/äÜÛÒù|ò“ŸÄO~ò÷šú7ÿPCJq?mp¨mÅ·‹µ¥ö¡÷WûùþýûÑÙÙ¹Ú“‘Dù½Ç ÕÑ{6åCUÑ€SdçæbîæU~sò5àë‘}Ožæg }ÔGþbôÒÛänî°æð˜¦V?þ8 pÏ=÷à®»îÂw[R#ÑZ ½¢²dªuñŠG…7^O+à>ƒ”„Ë™¼‚m0ß0K¦ ªˆá>ró "¦Y2hzzþf9¯…~R´2‰åÖD7o<Ñn,Ä#šßÄÜ[ ߘÊ_f. ¶ÒTh„|å ÕkÌ#n„^Úܘî(§²³ò|BÅZUçóð—iðMŒ`øz?žS»=«ðÄþôS†VU^­˜°ÙÈßÞÞÒ“&¢7¯™È§N}!³²íêBÒñý¹¤€B4—Xl—lþ[×Tú²¥dGÇá‡ØöÔO…Xðé²ø™{3öÈU¶dœ­Uüî! ÿgkš+Dk4û?ñøëèÙëÇ–¬5 €“½¦ |â{жkwn²bßvZÓ…Ït¬­Ñ¢™·;VlšlBçd§ ì‚øü³)#/ ˜@ò ¬Ø¶ûä'c`L€ 0&À˜@lX!Š»bL€ 0&ÀÒ˜+Diœ¹œ4&À˜`L 6¬ÅƉ]1&À˜`iL`–B´nÝ:È&À˜`L€ $‚€Ô+n»MS9RUÏ0¢Pa ¡Ã`L€ 0&ÀÖ6©cÜ~ûíJ)’ç©hæÝvÿöÛoãÀ_öпò/›L2¯]»†ââbæA}ll 6›üèáÊ›T’eåih¼ûî»\nW83~ñ‹_àî»ï^V)d›533£ò^FÌíø²âO»È~ùË_âw~çwâJ—\‘?©ÉOÉOuddd¤¬R¦É #+‘LÀïýÞï-Ó·Ìâ⻢Žå·Ì:::VT†TŒ|1ßKV:RI–d¥1Þpå·Ì¸ÜÆK-±îŸ~úi¼ôÒK‰ ”CcËHàСCôI“<¥ÜHGê òÍHèÎ;ïD.}îÞ{ïE…5<ˆ IDAT}£ó#ùˆÒ1¢ù[©{¦Bd$Ì8®”@ïê#Je&•dY}9É3&Àæ& ™üü|úèx¦ú0µ1ý5·k(eIŽI÷ÙôMÏ 6 ‡>t›ÊJ‘©…N}øá‡ó¥‘í™`L€ 05F@*7ò+õR¹‰U©‘~¤"%GŠ>úÑ*…H*H )S+…ÖTˆ¤rªL*Cü”½RÙ±:ãM¥µ ©$ËêÌM–š 0&0›€Tbä(üI¥ÈPlf» ÚH]Bú“J‘¡눂®Rç,L!’bI¥ˆ;•ÔÉ –„ 0&À˜ÀJººë®»ð¿ñê\ŽE3R!2”"éV*GÆ/š¿•º–cÚŒ¢•ÊŽ— 0&À˜@j0FyÖ¯_¯KGSˆ eÈH‰¼–J•<¦ª1¢Peˆ¢TÍ.–‹ 0&À˜ÀÊ£;‹Eý¤rM!Z —«ùbF#C12®ùȘ`L€ 0I tÀ$ô<èÌRˆÒ!Qœ&À˜`L€ ÄC€¢xh±[&À˜`L - °B”–ÙʉbL€ 0&Àâ!À Q<´âtëÃÈØT¾|Á„7‡ŸÔu:ÐXJ; JÐíM]”Ì׋RÚasõ.è”ÄJÀ‹ÆÚŽ[\Õ\4bM-»K&/.”Ê­Ý¥èó%3{-`…(i¹ìEÃÁMؼéeĬy†C›7ãà =I“j9ößÒº;ËrFš„¸¦)Ìœ$„»–ƒ¼µ–ÏiO(¯jf¼¸éOh°Ø$ ‘JôÔ”¾(#Ÿa·>ò3o4O+š¡äl!lôußH9Hv/¥Ùëx¤ÉZéåîÌÙ*D@ùñEe$£‘œ|L|dS2"¼EJ¼ëùx$/ÆY!/ÄW*E‹1såGÜ᤟¸e^Àà ܽ-˯/VûCoóùš  ·Qs4RFYšÝjƆʕ,_\ºb`µœ¬¬BäB}y1²èƒo6ÐGß,ëP}ö’6¢â@u]×· ±¦zCæ¹^9Ö@÷…¬³di‹Ë² ¸ô$ºÇ"”‹•Ì<’½¦( ÇZIˆËÇ‘³®äcŒõÕJvù‘»œœ,—×cˆD÷ \@‘Å å¥r'ŠJÕtB`¢§‰‘…Ò+ÝKF%Õg¡‚“iôõ)N¥§/ ^ç”ELJN¶` ï"ʉ¡|»hÙ•×w™¨…•£±¥%ë,*dØ5ݦ|b͘Êoùb®ê–! z~2ÞFbUT„ââbýW‚:/*ªFßBs-!œ,–Ó25kíÆpº¤ˆìOb„ìä@q3óS¿)ó€ÒTÞØt=Õ§å±—ù±®¨õ2Íñ˜$ò‰GŒ$º5²Æ7t¥”×rеcB³ë¾@vZùÍ¢wŸ„Öó¾Ærr[„³ÝaÒu×K{£¾…Ýâ‹#Ыòªõª] gØ7ªJ®Õ"£’u©¸-½áùnú¦ºXYáCK5•-½MÕÜu‹Ú>ª£*Kå§/bžPÍàù$Í Ð{”ñûý‚F\ÄÕ«WEGG‡¨¨¨0n%é8*ꬄWXµ¢©¡NØé\^Wµ 1Ý#úµ´£¡ÑÔ?-< å° WSƒp:¬Úµ½IÌ$IR#ؽ{÷§ÑþQÑàt«.wY™S´ψáæ2%«Õ^%ššDm™Í”}j¸Òb×®­6QU×&¦Å¤pÛ4&¶ª:ÑÔä¦×Ѭ¥w&”“U8ëjMŽ7»pÖV ›ÎÒí™V²{ÜGâ_&Ãv™nMýÑÓq÷èÑ£6Ú¥Ç-Óc=*cF…Ë®§¥¶MɇôÒßäV›]Øíôss¦G…¡¥ "4LAy ˮͥ¹3Q¦ó¶[·‹Ò¡_;Û¨lÇhÅg×®]1Ƹ\ΦEƒ, 67•q!f[M>®ÎQ%ÄxgV`¥ºà.§^7dÞSvN{ÜÚýªVÊGà Š*ŹLx’ÝQÆxüò—¿£ËµãÌÈc«³=$ÑÃÂ’‡ƒz› k™pS›é¢vÕh×´vE/K²Q…)¢.ª§µv”Ê›Ö̈V§ÞoXÂåv‹2½E™Þ®†Hħ/}éKâG?ú‘xçw”® uúöiZá‘/YRf¹¢ÑöZ­c*kR¢b¼M+ìR¹Ñ;©5\ÑIÙÑhJ’]´ë‚›šmÞNÒp¹ÔcÌ ‘ŠÈ¯7ú º¢F•PuÐ6Ñivæ~Ñ\&;x‡Ö€û=ªcµ»=š¨¤*E†ý µ²Á0*·©ÙE§ÎdºÇ¥q´:E¿Þ1vŽ-lC!²†ð÷S™é/ïügA%$ܦKŸ”UˆMbx°ÍTÄÝWŒJ=*jU^;Ì2-õ7U©ríhùotœzÝ!›®ìRK5à Ñ9âïר½ÑµZ#mµäÁ/Úª´ MùÑÂð¨úe<Ŧ…*àþÁfUŽBÛ>!Æ…Û!㲊ÖÑ Š=‡ÔkÖj-(D³–·ö½,æúÛÚÂá§ËB¶cÞA ÷tâºe+2q]³u|íÎWçÞŸ¿…ótfw=‹â<ÃS.žhðàwýx0˰K…ã ´…£·0CâdÒ߯ûî¦³ËØ¿·®G±{GþðyQ¯ËëÕVNßÒWfï@‡ã“êëÅØÄ8Þ{»-ºs#óä쑵îϰOg’ýÀ^ЈPñ¶eêŽ-ÚL»w:|åaÅ3GLþ‡QGZÇ¡S7ðKéÌð«ÿAæìyX7È\“Æ…W¾]¬¯©Š‡æ‰þO¡¾ä~œòz\ÛŽ¿zd›y'ÚI¶õ‹¨B%ΜzµÅØ–1„WN\&/N<´]Êßhq̾7…yCN|÷æÞ¤iË>H”ËØ(-/wàª÷ëØmzi9—I>Ÿ¹b]V»óOb³^4Êš‡Q¾[/ÀÞ÷ÐCy ëÇð‘_  ïº"|LËwÏ{ct³Ðã©Êóhûé_c;þŸ¶}O‰_]²kY“Á‘-’@Æ68jmxñÙñ¦çaÛŽ\3¿rTæa>ÿœ“5ã˜@ïØÞ¿ñ¾¯ê—‹Z3D¡öÿ@«Ÿ[¶nÀèÕO­‚â¾í²ÕlÅðujQós™(ö¶š }ê²§AëŸíؽ%´gÈ@ÁŽ}(Òø®+™ì{·™ý²e}¨Û ÈÙÛQ¬<íRáÌXìg@Þý' ×ÐWQùâyT>i( Ô=7\AíS»‘1«†{qé¯+pèDЭ™®óLl¹ëΠ…ÎtÔ­·í”&™¶Ëo¡óÍ7èÌŠ'*TvñðUèŸ_-u—WšR§ì'¯©‘K]ÒGmhÅøè(Få¸ö£ðZK OËÑÝ}Y=°”8¬c¹aä„R†lp·]Áàè8hh)%+¢áŠHhŽñ4a//ýӚߪf&©L©ú)ëèð ú=ý8Vo+3G$lµ* ¬˜BdÉVøqïpÜØ?¡pÿ!xB¼ dÝ[ ÊÖW/‡ì˜ÂËGöÀ~è/ð^ ÔuêœkêÛÎí¦Ý EgáÏÎÃöÝÅ(ÿös8O#Ò¼ÿŸrbM39ºÂw­û-eázö›(Þ± ùy¹ŒtáœÔ¨Æ‡«…ºç˜²Wö áõÞ o7¾«ž²7⮥®‡);¾|d¶þ&héD•ø–êøæ1ÕÛˆûª1tŽ?‡íáƒYA¹£œfkå ÑØ«ñùš2³¾wß÷ ›ïWÁÂÖÝÒ")…ç2>ðo@^~>òå/wgî/Dá‘–šr#¨åácĶ"G[ >·m+žø‹6U¯_|òK¸D³a›¶h ‘ç*›§ñ#†™ïýî/´âØßý\7_üŠÔ¦Î`ÿž'éh…Ã.1جù8\Myèy{ö#±mpÒ¦Få\–R](ÿünlÍÏ£Ù‚ ¼õÆy•<Úx;ÛèOr­ãæ=_ß?à99¬›ýþNuvíßoRñÒë'•¯ï}…ÖBüóèì‡SÃ/Ó›ÀŠ)DÛŽ<©ç¿ød!m­¿ˆ®Úb»ISjË>mN“…âÏÈ?ˆ“´DvªKO££»gËF¥O-£Ñ–Et˜¡á'úü–Ź|NÚ?0•…‹éÚS‰ÒšFô  ûR#N¿$kª ŸzžJŒÊüêß þR>¾Wz Yo8q±«—.œÆÎÍvmøøÚñfõK4çïDuã%twµ |ï5Uáhx&¸öh‰áKïjŽžÆvžvi­Ò‹OVÐÖêx|ü¾µS6ÒxðCw ª«kPSCÇò\‰µÑ¢N³BÍ8Î\3õÀ"ønÜR :±ÿaÊ£´œ-ÇZÇ"M¶z*ÍÄ‘?oP×O~g/v¡—ØVï,Ô¦ëªm1ŽreG// ã£D]ö¡ëëÿyœWOýª¨ÇTÆv ?g¡ül º.Õã Ö'µ6SÂÍÛ÷Ç´Š%OìAéÉ èííV¯vQ#Ñ6>»5Å:–€±d~¹w™Éxgh‡ )E‚’iþªÜúvrmG™Ý­oe6¥-íUúvuÝŸ­Ì%úƒ;« — ?Æ·ËLˆÁf§™®:Ú+ì¿"ªŒífš­ÂÕnlÅnMêh7Ò´hv†§Õ^Û@[ú-ÈäFßeÆIß¡gîV“¬û›”,‘»ÌeFXZØk›cÜĺ³+h+wÉ× èÛaõ=úv«Ü.‡¹{.X6Bˉñú€Ðøäùœ²Lvj;¼¹;¾Z9<ü‚QgD{±õW“­JÕAh ·»Ì­ä†ÜŽºv}Ça¤Ôs_'ŠOJî2“;zìÚ¶{-õÂÖת2ªíà›­µáœÃvœšÈfM¹)eÍ!»úÌû©q»̢åôhR;¼ ꌭ²ºóá6ãõ ZÃæÍ͆•vì~ƒu{¼§!¬îÉ׊¸e;ª¿æA-ë–3²-¶×ÒŽØhr®í{ka—Ù:™ÅRï Ð;?øàLLLàý÷ßGKK žþyy+ÉÆ‡‰±I58’µ!¹1*çò;a“7õ94-«§%¦dß¾}èêêŠ+”½z†&·²²3õU'LŒ â:ÍYèoãæ­iÀ;E>èea™™ÚÔÎÔØ&É}ΆzZ˜š˜BFv.²u7q EŽûêK`=ž ÿe<05†Ñéz9ã&š–‹1B"|ôÑGñÚk¯…ØÄsºxÂ#ËbøªòG¤ë³ïA^¶–O³$õMadt ùÑ{«» ýèiÚy6÷¼$=œÀ²~å…|>^:ŸO~ò“øÉO~2K¼Õ`á£z>ú‹dЋL7ÞCS&³PÓwÑJspì¼W¦ßˆa÷Þʤúé§ŸÆK/½´2‘¯òX^ú&ä8•¬ ØD»¿dðɯÐY^®CšBY÷d[Ÿ£–Ìv mdÝÁt ƒÚ>£¾Íí’mÇ{ ô~B5…ý›¿ù›øèG?ŠÛo¿^„º.mðÌj^–?e™jE¼ñfÓÜ„ËI•¸`›¶hpΘ3QÉsó "¦Y2hî[îÇYªñÂOŠV&±Üšˆà%ÎB<h\žÃ7¦ò—™‹‚­ÆøP¤ÁWŽ¡P½Æ§› 0„X±m÷ O Ș`L€ 0E`…h‘àØ`L€ 0&>X!JŸ¼ä”0&À˜`‹$À Ñ"Á±7&À˜`L }˜ ‘ñr%y4ÎÓ'™œ&À˜`L`)ä{œo»ÍTÒNW¦Œ(…&t)ÐØ/`L€ 0&>ä@‰Ô¤R”®ƒ&aÛîeB ðÚµk())Q׆}údmì) Íø7nàðáægÉe-ƒÍüǘ\V‚‰!‡Ì‹•–%UÊC(ù9.·ËŸ3¡y099iæÁJÔ‘åO=ǘd6~£££ê<NL…Ȩ¤†¸eË–eú–Ùê)6ò[f/^\=/“¤‹ù~X²DK%Y’•ÆxÕß2ãr/µÄºço™%–'‡¶üüqé‡~˜¶³Iæ”™¡Ê£ü`&+YfRŤ’,©Â„å`L€ ,•@¨Ž •¢t4¦B$GˆäO&4]›ŽÈi '`Œt†Ûò`L€ $‚€¡%"¬T ÃTˆBÉ QªeSjËÃJHjçKǘX*ГtmóM…(O;„Òàs&À˜`L Ý „)DRë“ÊPºjéž™œ>&À˜`É õ‚t× Â" QN—¥{¢“QX8L&À˜`k€¡#ÇtI³©É„¥[âÒ%“8L€ 0&ÀR@:ë ¦B”  Y&À˜`L€ ¬VˆV‚:Çɘ`L€ ¤VˆR*;X&À˜`L`%°B”DêÞ‰1ŒŒMŃc##˜ðâð“ºNKi×b º½©+ã‚’ùzQJ;/m®Þ²ƒX xÑXBßH*®Çj.±¦–Ý%“€Jå÷¶JÑçKf<öZ À QÒrÙ‹†ƒ›°yÓˈY%òþ ‡6oÆÁz’&Õrì¿¥uw–åŒ4 qMS˜9Iw-yk-'žÓžP^ÕÌxqÓŸÐ`9°5H %"•è©)/|QF>Ân|äg ÞhžV4C-ÈÙBØî€ù]C’ÝKiöz#i²ÖCz¹;s¶ P~|QÉà%'_ÙEç€Ìƒo†´É?ÎÇ#ù1›1,ÄW*E‹1såGÜ᤟¸e^Àà ܽ-˯/VûCoóùš  ·Qs4RFYšÝjƆʕ,_\ºb`µœ¬¬BäB}y1²rr°aC²,ëP}ö’6¢â@u]×· ±¦–¬,œë•c-t_¨Á:KùÙ€œ, ŠKO¢{,B¹XÉÌ#Ùkвp¬•„¸|9ëŠqa@>ÆxÑQ_­dÏ¡4çäd¡¸¼C$ºoàŠ,V(/•;QTÚ¨¦½8MŒ,”^é^2*©> œL£¯Oq*=}õ:§,bRr²}QN ³ˆäT^ßeVü¡bXTŽÆ–z”¬³¨<#†›Ë”¬V{•hhjµe6Sö©ávJ‹]»¶ÚDU]›˜“ÂmӘتêDS“;˜^G³–Þ™PNVᬫ59jÜìÂY[%l:K·gZÉîq‰™ Ûeºq4õGO_ÄÝ£GFØh—·L]ô¨Œ.»ž–Ú6%{4ÒK“SXmva·ÓÏað”aØÅ-³â Êâ­UZÙpõLšîfúckU›ðÇÈ÷0±ûÌ™†–&ˆÐ0å,»6—æFÌxD™ÎÛFlÝ.J‡~íl£²£IŸ]»vÅãr9› ²,ØÜTÆ…˜l5ù¸:G•ãuZ]€•ê‚[¸œzÝyOÙ9íqk÷«Z) 3(ªç2áIvc`DãñË_þrŒ.׎3#­ÎöD gHêm&¬eÂMm¦‹ÚU£]ÓÚ½,ÉvF¦ˆº¨BžÖÚQ*oZK0#Zz¿au—Û-Êôvez»"Ÿj¾ô¥/‰ýèGâwÞQº‚ÔèEÎi…G¾ŒQ™åVˆFÛkµŽ©¬I5ŠJˆñ6­°KåFïd¤"ÔpEk$eG£)IvÑ>® nvj¶y;IÃåR1+D*"¿Þè7èŠUBÕAÛD§Ù™ûEs™ìàZî÷¨ŽÕîöh¢’R¨jôƒf\ÔÊèܦBd:“é—ÆÑêýzÇ`Ø9´° …ÈÂß?ltLeÿ?{oÔÖuçýÝH58…§Ä nŠ]bdÆbjƱwk»vÛÐn,ƉÓ$ûÄM ^š 0Ý<ö‰;#wÖÅ6–gãïd`ð&ÍïtáÉHá¿©iþ[‘ .¬¡‰ZÔJ©‘+%÷ÿ;çÜ{õ›>—÷ÜsÏËï|ÎÛïž—{uÁxg7•p7By ´MŽ(U²ØÚÕ, aÁ )Uª]Þ4v'ô"T-Í¡ îå¡„rÅ0J¾á ‘hçRˆ.ÛEç]Õ2ÍÕ*U³]m”ƒ·f6ÅOÂ*DÖFed¨UWÄ—µJíRl<¯­z™fŒËy¹¶Ö±ü×:NµîÍ”SUv©Œ%Ú!¢rÄ? >8P{£jµZšm]äÁ¯´–‹ ¡üˆ0œ¼~iEÑ)D¡ ¸¨‰—£Ð¶OQƇ•ÅeRZ\A{©oY«[A!š¶¼…´ïe9®½+?Yò R´Ób¤· ׌YHÂ5ak} îÎàfï{ï Lû ä§kžÒðxÛ~çÇödÍ.ÎS GobŠÄI¢¿MwßI¦Nìß[{åìÞ™‹¯¿Ho¯UåõŠUž›êêÀ”èð{01>‰áþ>ŒMŒãýw»Ð¬:×2Í™j¾‡}*“”m{A#@éÃÈNRÅL»×¾ò°ôéÃ:Cæ!ÔÖQpê:þÄœi~Õ b?±œm€i#Ë5vØñêóùꚪ(xOôßÚÂ{qÊIê±­?z8[¿3—!ÅôM”£ gN½†A[>² Ãxµ²“¼TáÁL¶èøÎÇô{nü÷E6ñ |6íM[öƒ¡4oÇ&fÙÙ+Þg°[/ôÌr¦céùÌë²Ú5ŵh7 d·Z€½ï£—ò¦{ðÉ? ¢ÿ'Ü#òÝùþÝÌÇÃ4äxª¬­¿ú vPáÿUëO¹ø…»–52²0dÃj3ãü‰óxÓùCdïLÓóð©#, xà?&«Çáq ¢ol \ÿ-~Æë— Z3D¡¼%êçÖ¬p Rýwï`­f F®Q‹š‘¶ÀDIo«™€Ö§.{DÿlÁî­¡=ƒ™;÷!“Iã»Æe²ìÍÖûeã†P·A‘S2w Ÿ{ Ú%‚I[ì§AÞýwÿûðwPv¾eG5%ºçºË°=±†i5Ü‹¶Ÿ”¢ 2èVOWªn↭wÜG ø IDAT´PÃñ̹•‡©QìÚ®õlÙN“;´¶gš(ÁÐaºˆ7GKq(S™—)€Ž“á8kÃ,ü›®PE!†! R§y¦ì<~>`ǽÆnœ!oVÇcPUì¨ùΛ‘+•báµëÕ¼)ÛÏXFÑ/Ï^r>‘¢­àõù†üàágÀT"ïo{øZ:8OaOΩiR9; /•“…Æ‹ËZPùF/þ÷>ZUe×Ì•ÝiÞ¤EØuä)àD'^þÙ»xfççñËCS ¾ª>Éu¿Œ‚ýÇÁôãðcæ¾ ÜÍ,WjÃÜRY€–Êén|LA’Ç-I`eUS³7p=t1tƒÝmèèÕö†vêþ¬§c}xwíîÁ¥¶n¨k1…›ü0nFim¦<ãp^n‡ÃVÖež:¶¯³•Õ‡»ç%¡ YlhFŠe´®ˆèWC9E3ÇåUüQEª9šwqc<Û„òÆ^ ´Ðʳ;§¿† ÃÍÏâ5˜ ±ç«%ˆõ¹-ušt´v¾ƒ®7/’É„£æp»XørôÏÏ—º³+¡ÔqûÉ«|äRÕƒÔ‘A3Z†\w¹àb?â:24€¡äEÙ–/.ÿŠý³ e`´à -eø?¹$ÉwnáõÖ:ŒLŽ ~Äpœ 81òÚÿâ ¨!ó˰³ºpæÿ¢»çm0ÕÉbXJž 4‚ÁŽ~Ï&ÖÄ‘ª*|W{ÞáöÏ"g62ÒÓíÆ9¦PW UÏQŸX¯ìDÝ}AÞü˜?eo‹ \ “5<|ûðNdz´Žˆt¢2<Ç;¾ùy¸ûêqï>¦ƒ®ñ°#|0+(÷&­Ól);€4šK¾”!”™…ð½óîûxl¾? [OsSˆ4ZÄžN|è߈ôŒ d°_šgîÍAÎáæyšr-¨åá£Å¶"gs!¾–…Ç¿ßÊëõù£ßB͆6o ‘ó –.øä÷ÿ÷æ˜pì_ßSÅMÇ7ŸbÚÔìßs”Î&X-ìC«‡@UP:O`Ïžc$¶Ö15Êæ²¸êb-EÉ»‘•‘N³xçbOm¼~¨Or-ƒãú=_ÿ¿ã6¬÷|1›®þÏ *^jý¤ò5øÓï Ç”ƒÿtM8ÕüÊóÚ&°b Qöá§ÁôüóGshký%twÐÛÍB9°YŸ& ÅoÈ8ˆ“´„uª‹N££§gKBO-¦Ñ–t˜¡áÇÛ|“âtžCm‰t'c{>];ËPT]¾ÁAô´Õãôˬ¦šñWÛé©D«Ì¯ý3jÛúñ…½ÌÍ üC.u÷ íÂiäm±ˆáã«¿À›ýÔ{,òh8ž‡Šú6ôt7£dï>Ua­{:¸öh‘á3ï|ŽžÆvž´‹VéüÑRÚZ=/\Çsy¬d‡o;ªQQQêj:—T£m4ÚF‹:ÍRVhÄQuükúš©m à»ik&¨rÿC”Gh>[‚=´Ž…)ü©4 ‡ÿ±Ž_ÍùÎ^êF±­ÈËÓuæ(G¹Ræ./qãÃE]ö¡ëëñøS¿¥µpvàéú¡)³-ôÚ„¶ž>tPÙß›wœä4¡ 4>fžQ–É.±Ã ‘Û±£á+Êá¡—´r8¥´×h[…låê«Bó`¤Ý®o%×ä¶Ö´«;#¥žù:^|r—ÛÑcÛîEêGZ_Ë˨ØÁ7©´ØÂ9‡í8Õ‘M)4åÆý7…ìêÓï'†Aî2›+@ss3^|ñEvk‰&Æ&ùàHòÆ ¤E©œ³ï„MÞ6¤Ò´D´ž™’}ûö¡»»;¦Pôè)šÜJNIRW01:„k4Cf¤¿M[²"Ò€×M>èeaIIbjÇ=6ŠIrŸºq“šÖÜnRÒ¢º‰I(rÜ_[Óñ8ý¯`›{ .Ͻœq3MËE™!>òÈ#xýõ×Clb1ÎÇ#–°€…Ȳ¾¼üÑ#醔»ž"òiš¤>7F]“ØKDïBšê.@ö®ëÚy6ó¼$=œÀ¸a#å{>^<Ÿûï¿¿üå/§‰·,|TÏ]˜‚^dºé.š2™†š¾‹V”Šc \ö\Œb÷ÞʤúÉ'ŸÄË/¿¼2‘¯òX^ú&ä8•äØL»¿Xð±¯)=!MO!«{¬ŽmHåK ¦;`6¬nÂ0PÛ§Õ·™]J[àÑG½ŸOaæ3ŸÁ§>õ)ÜvÛmô"ÔukÏ´æeùS–Ä×YÄo ÍýÎRb jIÝhAI¸œT‰3³Å¢Ác6 %¢’§edFL³hî›íÇYìá…Ÿ­$b™à$Î|<hLžÂ7ªò—”†Ì,mü?(ÒЫÇÃ_c´›f2;àé(¡²³ò|¦É¶Œ³—ÍÆ†éÁâÿ»DÊM¤Ù¾—°ÊÐ2âZ“QR¨} oD‘”–6ã² «{™Óëž~ŸXÝÊš£-w-¯Ö>PˆÖ>äDL¡ÿæU.–ºl)E\³2e?qÊk6yË”0/îÍA%ÍŒ~zß2Å+£‘$µJ@*Dk5gçI×}½Þ½~li§Æ<~åmI`å ¤à!z‰«iÜmyû1Ã@ÜÊ‹(%$UE@*D«*»â'lRzv®Ø4YüÒ!CºU E/qͺU“/Ó- Hq'°bÛîãž $ H’€$ H $ ¢‚“Þ$I@$I`í ÑÚÉK™I@$I@X ©-œô& H’€$ Hk‡€¾¨š½\)ô·v’(S" H’€$ H‹%ðÑGÑÆ°3ûi/eüÄ'ÄØŠv½ØxVÊ¿®14…h¥„‘ñJ’€$ H’@â`Š{‹þ7L_R`J{Û>{[53kgM9J¼Ì/‘þé¦í±OwŒcllŒ¶#)I|ÆAýºÇü¡­qN§&“üšvd6³ò¾èžG"É’<˜ ½½½ÈË_øN™YŽ+W®`ûöíqñã?æF\•IË@ tÔ‡}®ƒ)<šÒ£ ¢0ýáôéÓº‚êgDŒ[úSz4ŇUÞtú4Äò|Ë,niYò€Ø·Ì^yå•%gµEÀ¾–(\I–DÉGö-³DÉŸDa2—”¼æ$ïIŠ‹‹áóù¸-S†ØhÑj<ÂUkÚž¦ý­ÆI™%I@$I`ùüå/áSiìÌT´Á•å“ >1…)DZ"´s|¢¡H’€$ H’ÀZ%póæM®¾Øzµ¦SWˆ´9?© ­Ö¬”rK’€$ HËO€-¶fJ;¯fBWˆB6U¦M›-?R£$ H’€$ ¬6lQ5S†ØtÙšš2cÚK<$I@$I@˜Ó˜BÄ#vh3NóùK´ûúQè0×jML¢Á•òH’€$ Hk@è Ó%Bõ‰Õ”v]!bBk‰ÐΫ)!RVI@$I@J L!Zh ÒŸ$ H’€$ H«™€TˆVsîIÙ%I@$I .¤BŒ2I@$I@XͤB´„¹çÃè˜;†|Å„7ƒŸÄu:X_D» ÑãM\ç•Ìׇ"z½ÙÞ7¯Ó[Þ±*$V…µý·< ž¼¸P´ŽÚ’"ô‹¯CÄ3p–$  ‘Ž"Þ/ênƖͯ j•ÈûklÙ‚ƒ/õÆ[˜ ÏShBƉ=~‘z(¨Ôø·æCòÜô¯ù4Ê.//oJ¼¸!‹Öò‚¿ÅbK…ÈG¥ÝíöÂ7ÇÀH€>v;à#?nxçò´¢™iDêVÀ¼út5yHv/¥ÙëxÜIÞæåΤé*D€ûñÍɈÏ8ù"˜°îÍÍ)–Þ4i—þ<¥Ya>¾L)ZÈ1S~ÄNð‰Yæù<Ð+þY¹ «Óóù‘÷×8µš¡!Z¯¦|zËYÖ¢€$0+«ù†Q[’äÔTlܘŠdã:Tœm#*¾ATäÒum3ê« aLNƹ>6Ö@Ï…j¬3&“ŸHM6"¿è$zÆ"”‹•Ì_’½:7ÇZHˆÎãH]— ƒìÇ‹ŽÚ .{*¥955ù%µ&Ñ}ƒk4{)ËCnQ=¹¦ÔNôá412Rz™{ƨ°â,xp,¾~ΩèôÔªœ’‰IáÉf ö_B 1L&vŒSIm·Þ 7ÃÜÔ7×Ò4‡‘ç »º¾GwÂï1Æó›½çª¢y˜‚ž‹w°žXåæ"??_ý¢Ì¹¹èƒO³‹ÆÉ|fϯÆ`X¯;†Ó…¹d£d?/߈87=?Õ›,(M%õýA×î~‘oÄžåǺÜBÔv°4Çr,!ŸXÄX„Û~ª«¹Ä&·ä/ÏÁ<§2GlŒërQrú&x¨-¢¼aùZ£8YHyYx£‹Ez]~}µ%4Õ•‹ZÞvã×ìëyEå+NªèCj»S±â vÑNm§Öv‰¶Ã£Ôñ¶ƒÚVï#Ê™Ø#ÚJ³ƒj5;æ/kŸüó7£ôôô(¿ûÝïšýPèÕñvÙÃ`/cäÇr+D®v›¨(ÅÔñ«Çx«¨L¹Q =S„ê.»„êh„’dQÚõöRS̳v’Zð‹=G­ñˆü¢›ëTE*(ï ÍJ—ž`¿ÒTÌ:x+o¿“w¬‡SˆJJ!WdÊ[BDWl¬1Ñ*>qÒ˜h}ˆ§×.8šª”®Œ0ýRØYëDØšBd áïiQ;îbÝ_HijƒJH¸¡P›¢f¨¦àšm]‘_i-9Bùq;yÒ|¢Sˆ¸ÒDí"k^£)kqLå-ÔZQˆ¦-o!Í|YŽkÃO–<ˆ-ÆôƒéíÂ5c’pMØZŸÂ£»3¸ÙûÞ;h “Å~ùéš§4<^çĶßù±=Y³K„ónr1nbŠÎIô·éî;ÉÔ‰ý{‹`¯<‚Ý;sñõé5絪¼^±bP_”š²~&Æ'1Ü߇±‰q¼ÿnšUçZæ±Ù#SÍ÷°Oe’²m/hÄ(}ÙIªc£˜…÷zÂW%–>}XçoÈ<„Ò: N]ÇŸ˜3ͯDì'–³ 0md¹Æ;^}>_]Sá‰þ»Q[x/N9I=¶µãGgëwæ2¤˜¾‰r”áÌ©×0hËG¶a¯Vv’—*<¸ƒÉß¹â˜~Ïÿ¾È&>ϦݠiË~0”FãíØÄ,;;pÅû vë…žYÎt,=Ÿ™b]¬Ïñcy¼žRME×ÛÿŽšxKpÙšµ®Aâ"Àà¶`äšI;¿ §8Ó„S‡°#io¨yöÀÎy¡-V|é?Þ Ù°ÚÌ8â<ÞtþÙ;Óð«ÖŸòXž:²‹Î<ð‚“Õãð¸Ñ76†®ÿ?ãuÈ‚­¢P£)kÈH‹wjex«œ€Ö§.{2DÿlÁî­¡œ™;÷!“Iã ‘eo¶Þ/7„º Šœ’¹ùÜSÐ.LÚB@ òî¿û؇¿ƒ²ó (;ª) Ô=×]†í‰Ý0L«ý^´ý¤•A·zºRu7l½ãö …ŽGhdAû0S£,ص-\ëÙ²z#Zí1M”0¿ ½¸ˆ7GKq(S™—&€Ž“á8ëK-ü›®PE!ƒ! Ò<Ý™²óøù€÷»q†¼YAU±£æ;wlF®TЅ׬Wó¦l?cyD¿<{ÉùDŠ÷ë4´ôcß;DÈj…h©,@KåôÈ|\WÏ@a©'Ž7 õ½sØqG'Ï3sE´ Ó½I›'°ëÈS¤ávâ埽‹gv~^(¸¦|U}Zë~ûƒžw"Ž™ÛûG3_FUÖfö*mo]+»¨šž ®‡­žÄ`w:úFõ…½¡ºÿëÄéXÞ]»‡{p©­´H6‘€q3Jk;0å‡ór;¶r°.óÔ±=x­¬Ž8Ü=/ eÈbC{ï\4R¤(“ uE@D¿Ê)"˜9.¯â*RÍÑĸ‹yߤY.ò\ÞØ‹Z5@£c–cçô×DÃc¸ùY Æ”Ö¡Àùj b}¦Ë³Ð„"­ï ëÍ‹d2áèƒ9Ü.¾Üýó«KƒÙ“­~L^å#"ª¤Ž šÑ2ä¸Ëûב¡ 5 /Êv~9øèiˆ“'R\‡FÚù(åùcV\Óï…­¼É‰IâÁ¹06#CpàX®ÈÝœpiÚ~ö_è~«›Ÿz(7NÊ`–›@RöW@ëEál~==BÁ-®<> M ¤+¹2d†£õ2†\ã Y~ÐZQ3¢qŠ€_ôñýröàÀ ¿Ò¢àM ù³™\hy­SÝ•ÂîºñÊá=°|ï'¨B$Ô77Îí¦]5¹gáOIÇŽÝù(yþ4Ð;>ø=›XGªªð]íy‡[ØO<‹üÙÈHOC`´ç˜~@­A¸Z¨zŽúÄze'êÞè úðöàÇ|zbîX\àj˜¬A³àÛ‡w"ûг uD¤•á¹ ƒd˜Ÿ‡»¯÷ác:è¦OÔ`c82¿ ;)-ep Œ†™,øR†PfÂ÷λïã±ûþ,l=ÍM!ÑhWx:ñ¡#Ò32Á~iœ¹79‡›çiæµ –‡[<Ï–‚¿FVf>~ÜHKË©ŒYJ_æJð=_ÌãÑ\ýŸHKW¹›ÁŸ~9¦ü§K<2öq¥¿óDöÓHÍã«Y Èüx&J†µ8TAeÁy{ö£p̰d‹ðhÞ”«=ÖR”<°Yé4#0w.R¾ÓA›k§êÓZËà¸~Ï×ÿïx"«G´eMs/Ï’#°b Qöá§ÁžÎÍ¡­õ—ÐÝqE›…r`+þ²>MšM†Œƒ8YN6Ô©,:Žžœ-yel¬µ˜F[¬Í¼ÉFq:Ï¡Š¶Äº“±=Ÿ®e(ª®Gßà zÚêqúeV‹Íø«íôt¬Uô×þµmýøÂ^æ(û‡*\êîAÛ…ÓÈÛbCËW7ûÇøýÅük8ž‡Šú6ôt7£dï¾íßZ÷tpíÑbWýòµ"4¶ó¤]´Xç–¢cb_¸ŽçòXãÉ'ÞvT£¢¢ÕÕt.©FÛèô5á6ò:¾YÊ 8ªŽM_3µm|7ms³•û¢<ê@óÙì)w bMÂá¬ã‘ÍùÎ^êF±­ÈËÓuæ(G¹Ræ./q㣑‰ßY[—õøøÈZŽÃF¯YHß÷·´z‹”ÓÊ=(:y}}=ü•|ÐlQzÒp0$ÏôÑ„ø‰(CZfÙßü˜åÑ—b5wü0Šéf4œÃÙæê¨®äß%¦È©5ú׆n®0i³ÿ¼‰Ôüœ)@ÉÙft·Õ⦣¢]T‡i£/kªò$ 0ÚòøåÞeÆâjØZO[î]bW–º£ÌâP·2ë‚Ò–öru»ºº•Ù\lW‚;«5—q?Ƕˌm'­Rbö«¹<©øÇ/+åÚ6cÕží®±·k[±ƒ[ÓÚäQšªÂÓj±ÕÑ–~u{>s£î2 ã¤îÐÓw«1Ö\ŽÈ]fÖb-,!§ÅÖå.¨ ÞÐ]A[¶mžm»V·Êª7zÕíþ&¶‹h.úî9!—ÆQ;k¯™g”e²Kìð‚Øæô _±³ñÐKZ9œRÚk´mÁB¶rõU¡y0Òn×·Úk2[kÚÕ‡A æ2Å‹Ïrî2£‡E+c,m¬ÜÑl •±“’¥©*²Xlê¶ü”g4°GþÌ!;JCî/¡Qî2[ ¸¥‘ï&¤¶PÛ«F3Ò*¶ækõæ*¥©I³3Ñ®\Ío°þŽ÷Ö…Õ/öêk+Õ]f,è¨ËÚR$÷ s­ì2[Çò "ô6Ï?üøàƒÐÜÜŒ_|‘ÝZâlj±I>8’¼1iQŽò°ï„MÞ6¤Ò´D´ž™’}ûö¡»»;¦Pôè)šÜJNIRW01:„k4Cf¤¿M[²"Ò€×M>è¥uIIbjÇ=6ŠIrŸºq“šÖÜnRÒ¢º‰I(rÜ_[Óñ8ý¯`›{ .Ͻœq3MËE™!>òÈ#xýõ×Clb1ÎÇ#–°€…Ȳ¾¼üÑãꆔ»ž"òiš¤>7F]“ØKDïBšê.@ö®ëÚy6ó¼$=œÀ¸a#å›{[<Ÿûï¿¿üå/§‰·r,M£ð Tæ´tFHãî@þÆè,nÂTíÃ3ŽGøˆÛåÁƒñÖ[oÅ-<Ðü^úîãø É±™v±åc_" SzÚ,‹îXýbõhC*_N0s,Q”µ™=JÛ<øàƒxþùçq÷Ýw#-- 6lÀ'>±bP1Hît––<ÜÑÒ^%ñu±Æ‘Bkf©&±µ¤î ´ $\Nªà™ÙbAáŒ1ѤedFL³h _’8cÑ[zá'E+‰XfÅ#¸è#q9§Kd\ߨÊ_R2³´¹ ðC¯CyÐnšÉ쀧£„ÊÎÊó™&Û¢-Xš²f®¾ Ž\CßO@KðÇÓ__VehÑI“,ˆ€!…Ú ð†IÔ±ÎùxÆêWæôú.Àe-Ü¡¼’ÔA â–#à¿y•§Y]¶tË¥%œýÄE(O¬¤‰·÷×uÈÙS)´6âqí%F‰+²”LÖ!Z#$WY2î{ì ôîõcëL»8VYZ¤¸k‡@Ê}ßBW» ~ã]øâ¾£«k'2%’€$x¤B”xy²,%¥gaçŠM“-Ke$«‘@J&ö%â[VW#K)³$ ÄD`õ­zŠ)yÒ±$ H’€$ Hó ÑüŒ¤ I@$I@Xã¤B´Æ3X&O$I@æ'¦­[·n~Ò…$ H’€$ HkŒ€¾¨ZS†ØY3¯±´ÊäH’€$ H’À`/wf¿>úˆÿ>þøã%ˆeæ CuM‡ µ›Ù×t[]! ½¥¾¼:ÔJš%I@$I@˜F€)?ì ûSSSøóŸÿÌ> ¶ì+Lºí¶Û`0øîZdŒ IDAT[²Ù›²Ùu,‡þé¦Õyé3Ú§;***xÀR9 â¼rå ¶oß´&N`dd[¶lI‰$KB!!Þÿ}ÜsÏ=‰"NÜåøÃþ€;ï¼3ná²O}îsŸ‹[x2 I`-`ŠÓöïß¿ìJÐL\™röƒü€ISŽ¢-ÒGˆX‚B•Ÿ/}éKËô-³™’”˜v ù–Yb¦$¾R-äûañ• Z"É”jeMßýîw×t]–ß[Ùò%c—‰ÀßÿýßãÆü{jLŠå›jºBĤiQÚ9‘)e‘$I@$I`.Ú‡ê™"ÄFˆØˆQ´Sga»ÌæŠDÞ“$I@$I ‘ °å?lÓ_þò¾È;tæk>¹u…HŠÅó|Ëû’€$ H’€$ ,6"Ħ̘BÄ̱ºBÄ<1¥HSŒb Dº•$I@$I`¥ 0%ˆíxcSgÌË O˜B¤%$–4?ò, H’€$ H’ÀJ`ú bçXu]!Zˆç•L´Œ[$I@$H¡úL,J‘®E(¯%I@$I@¸UH…èVÉi™NI@$I@˜•€TˆfE#oH’€$ H’À­B@*DK˜ÓÞ‰1ŒŽ¹cˆÁ‡±ÑQLx1øI\§ƒõE´k±=ÞÄ•q^É|}(¢Ý—f{ß¼N׬bPH kû×leÂV1YGWqæ%–èR!Z²üð¢îàflÙü ¢V‰¼¿F}ìàK½K&Õrì¿)4!ãrFºqy(ÌÔ%wµé¹é_m"Kyo²ŽÞ"½ÄÉL…ÈG•u»½ðÍ10ðùv;à#?nxçò´ÄðæÞˆÔ­ä¼aßGažHvö!]¯×Dò0/w&MW!ÜoNF"hrÁÄGìææ˃oá²-åÕl<–2Έ°çãËÜ…¬ÜFæGÌá$Ÿ¨e¦w°òVW£ö,JsPÛ©Yª­£s‰-ï­+«ù†Q[’äÔTlܘŠdã:Tœm#*¾ATäÒum3ê« aLNƹ>6Ö@Ï…j¬3&“ŸHM6"¿è$zÆ"”‹•Ì’½:7ÇZHˆÎãH]— ƒl´Ä‹ŽÚ .{*¥955ù%µ&Ñ}ƒk4{)ËCnQ=¹¦ÔNôá412Rz™{ƨ°â,xp,¾~ΩèôÔªœ’‰IáÉf ö_B 1L&vŒSIm·ÞQ 7ÃÜÔ7×Òtˆ‘ç »º¾GwÂï1Æó›½ü³¢y˜‚ž‹w°žXåæ"??_ý¢Ì¹¹èƒO³‹ÆÉ|zÑh~5Ãzç1œ.Ì%û“%ûyùFÄÀ¹éù©Þdy@i*©ïºv÷‹|#ö,?Ö墶ƒ¥9–c ùÄ"Æ nû©æRšsK.ðrÌK*K”fãº\”œ¾„ îwµEÄœå[h5 Œâd!åQáiŒÎ‡´Z㢬£ZÙÊÕÚ)VŸòKÐÜ'JW$¥å­£‘±ËëUM€öèóƒÞì¨Ðˆ‹råÊ¥££C)--Õn-ÑÙ¥Ô˜ <Ådµ)u5Š…Ì캼eDQ<½ŠU½fv4Ô¢4xg•»,н±N©²šÄµ¥Q™Z"Iµ`÷îÝ«ç>û]J]•U1©rW)í#SÊHS1—Õd)Wê[±Y—Ý=ÒNi±ˆk“Y)¯iU<ʤâ0 &æò¥±ÑL¯µI¤w*”“I©ª±é7‹Re+WÌ*K‡ÓÃew:4ŽÄ¿˜…m×ÝXæN_ÄÝ#GŽD؈K§ƒ¥Ç¢ôòŒq)v‹š[+—}.ÌË@c•b2[‹…~V' â\ɘoP¿ÒR.ʆ½wRw75PÇ›Ê[”|»¯œéåaˆ4A S¡<`e×ln”)§R¬ò6[‡Ò¡^WµRÙŽòˆŸE×åˆôõÖ‰r ”+NŽvJi©Rë¡ÉªØ¥X-·(å´Ý&ÊzM׸žú)gh^èÖ18³é!DSGeHm7a*VÔnÚ©mÕÚ6Þ¶Pù\©:š¥ ážxâ å­·ÞR~ó›ß(“““ÊÍ›7ÃÌqÅÞäÈåVˆ\í6Ñ17Rǯã­¢ 3åFm„™"TwÙ%PG#”$‹Ò®·«šÒ`žµ“Ô‚_ì9j…ˆGäWê˜`®S5ê4xmVºôû•¦bÖÁ['ÓüNÞ±ZN!*)…\‘)o }\±±ÎÕì îœâ¤1ÑúO¯]p4U)\aú¥°³Ö‰°5…ÈÂß?Ò¢vÜź¿ˆg5•p'By ´MŽ(U²ØÚIaG<‚RªTº¼i ìNèE¨,ZšMUíº“Ë5¢cæŠa”|Ã[ÑÏ¥]¶ ŶªeHWqµ EÕlù¼3‹)~|â¥Yëz•Þ¦r½l©ºµâjâv¡eIQƇ••m“Òâò+š" *Ë"ÿ¥KË‹^½BÌÂbnk©ÍÍ'‘ïÎ[G©´´–³r¤=X‰Ô8ySŒ¦)DËUG™ì­+Ûb¢iË[Hó^–ãÚ»báð“%"E‹1ý Fz»p͘…$\¶Ö§ðèî nö¾÷Èd±Ÿ@~ºæ) ×9±íw~lOÖìá<…›\Œ›˜¢sýmºûN2ubÿÞ"Ø+`÷Î\|ýEz½x­*¯W,ZÕ¯¦ìD‡ßƒ‰ñI ÷÷albï¿Û…fÕ¹–ylöÈTó=ìS™¤lÛ ±JFv’êØ¸ž¼žð…±¥OÖù2¡†´Ž‚S×ñ'æLó«û‰ålLY®±ÃŽWŸÏW×TEÁCx¢ÿnÔÞ‹SNRmíøÑÃÙú¹ )¦o¢e8sê5 Úò‘mÆ«•ä¥ î`²EÇw®8¦ßsã¿/²‰Oà³i7hÚ² ¥Ñx;61ËÎ\ñ>ƒÝz¡g–3KÏg¦Xg³ã9y,×?ªèzûŸÀ’‡·Dz·fm„kÒ+Œ»w°RØ‚‘k^$íül4LvâLNÂŽ¤Q¼¡æÅ;ç…1›XÒ~•˜¿Ž¼àÇdõ8<®Aôáƒë¿ÅÏx³`újËh€Ä«ŽF—t³šh}ê²Ë,úg vo m Èܹ™LŸPˆ,{³õ~Ù¸!ÔmPä”ÌÈçž‚v‰`*ôEÕ»ÿî_`þÊÎ7 ì¨¦$P÷\w¶'vÃ0­v{Ñö“RTÝêéJÕMܰõŽÛƒj8¡‘íÃLL²`×¶p­gËvêµhUÈ4QÂü.ôâ"Þ-Å¡LQìæåÁ£  ãäC8Îú\‹ÿ¦+TQÈ`È£4Ow¦ì<~>`ǽÆnœ!oVÇcPUì¨ùΛ‘+•bQ§ëÕ¼)ÛÏXFÑ/ý\r>‘¢E}Ý‚†–~ì{b‡ð¡ô–Ê´TNÄÇuð –ZqâxZß;‡wtò¼0×XD}ŸîMÚÜ æ­£ÀX÷Ë(Øô<qÌÜD8R/—¦ŽÎ—´]­VvQ5==\[e‰Áî6tôê {C;uÿ Ö‰Ó±>¼»v÷àR[7&h‘l"ãf”Öv`Ê3çåv8lå`]æ©c{ð:[Yq¸{^ÊņöÞ¸h¤HQ&A늀ˆ~5”SD0s\^ÅU¤š£‰q7ò>L³\ä¹¼±-UJ',ÇÎé¯!ˆ†Çpó³8p‚ê”Ãùj Òb”%ÏBŠt´v¾ƒ®7/’É„£æp»Xørôϯ.!ª¹d9y•œ¨z:2hFË ã.\ìG\G†00Ô€¼(Ûñåࣥk¾3/&¤´óÑÇóǬ¸4&*œß# Qy““”Nž^–æ‘! 8p,WäZ΃Gx4m?û/t¿ÕÎÍO=”;_Ôòþ'0We›F*¹2d†£õ2†\ã U µ¤D%¢ñR9-g]ãYsË%oÅ"c Ÿ@À/úF‚ÐÇþ9û pà…_é Qð&üÙL®@´¼Ö©î^awÝxåðX ¾÷T!ê›çvÓî›Ü³ð§¤cÇî|”<ÿhƒüžM¬‰#UUø®ö¼Ã-ì'žEþÎld¤§!0ÚsL?H]¿ÈQÖ+;Q÷FŸˆ”ý÷öàÇ|cî×9ƒnb2±Ë‚oÞ‰ìCς֑NT†ç. ’a~î¾zÜ{„é küšf‰)rîØùeØIl);€e4Ìd©À—2ÄÕBøÞy÷}<\ߟƒ…­§¹)D0zå O'>ôoDzF2Ø/̓3÷æ çpó,ÍxHܸ<|"cëÚRð×ÈÊÌÇiÉ8•KéË\¹½ç‹yÜÛÕÿ¹´t5½”æÁŸ~9¦ü§K(û†Œ}\™ïMÊ×q'ËɆ:ÕƒE§ÑÑÓ³%¡Œ¥ÓhK‚µ­7Ù(Nç9TÑ–øAw2¶çÓµ³ EÕõèDO[=N¿Ìæ‚Ìø«íô­Ë´¼öϨmëÇö2@Ù?TáRwÚ.œFÞ‹:¾ú ¼Ù?Æï/æ_Ãñu”„ÃÿXÇ#;šó œ½Ô>b[‘—#¦ë*ÌQŽr¥Ì]^âÆG#3ÿY[Û–õø@;DIË<½>!}ßßÒª,º¬Üƒ¢“Ð××Ã_•ÁGöÌö¥' Cò¢¸òô¥€óG/]¬Y³×QZ|'êkÃ9œmî ~‚êRþ]b Z«mèžö€±|utÍfÈ­›0m-úrï2cñN µFl­§-÷Ž.u;¹ØQfq¨[™uAiK{¹º]]ßÚlW‚;«5—q?Ƕˌm­R¨dñ_ÍåIÅ?~Y)×¶#«öl޽]ÛŠÜšÔÐn$ÒTžV‹­Ž¶ô«Ûó™u—Y'u‡ž¾[±härDî2³ka 9-¶¦(wAñ†îì Ú²mól{6í ÙDÔ«n÷7±ÝFsñÐwÏ ¹4ŽÚY{}@h|Ì<£,“]b‡ŠÅn>ÝS4|E9<ô’V§”ömÛ¯­\}ÕAhŒ´Ûõ­öšÌÖšvuÇ¡.Àœ†xñ‰Ç.3zxQ´²Ã„få‰t"Ê_±C’ÉZY¶-6u[~H2)/øÎIÚ=Ü)rF¹ËlÐÍˬuTQFZkxÛ¥Õ#˜«”¦&ÍΤt¯\M4ŒREYÌ.³u 4è ³~ø!&&&ðÁ ¹¹/¾ø"»µÄ‡c“|p$ycÒ¢åaß ›¼lH¥i‰h=-2%ûöíCwwwL¡è ÐS4¹•œ’¤.®`bt×h†ÌH›¶dE¤9¯›|ÐËí’’ÄÔŽ{l“ä>uã&5­¸'Ü0¤¤!Eu“P丿¶¦ã)pú_Á6÷\ž)z9ãfš–‹2B"|ä‘Gðú믇ØÄbœG,a ‘e!|yù£½ )w!=EäÓ4I}nŒº&0°—ˆÞ…4Õ]€ì]×=ôð;ó¼$=œÀ¸a#å›{[<Ÿï~÷»ËT—™¬£ð T–4ù#¨¸;¿ñ:‹›0UûðŒ#Á>æ½CòFlÎHãm©}©€Léi3/Ê[L]½¤¤äÇŽƒÕjÅ=÷܃ôôtÜ~ûíøä'?˜YZò¨üÆÉQ_gk`)´VaæjkHKëÞ@ JÂå¤ œ™=ÇT)<-#3bšÅ@k5â1Ùà…Ÿ­$b™à„r> 4&O áUùKJCfM…FC¯CyÄÐK³žŽ*;+Ï'T¬¹ÍLÖ¬™Ë¶oƒ#×Ð÷ÓÐÒzÀñô×㢠Í-¼»VR¨ oH‘”–6gZL]+Üd:b# QlK×ñ!à¿y•ÏÝdñ‘l퇒ýÄE(O¬ýt†¦Ðûë:äì©VÖF<®½Ä(Ô‘4K’€$°‚¤B´‚ðW2êû{½{ýØ:Ã.•”Kƽ6 ¤Ü÷-tµ›à7Þ…/îÛ1jº6Ó,S% H«‹€TˆVW~ÅMÚ¤ô,ì\±i²¸%C´Z¤db_"¾=uµð“rJ’À’X±m÷Kž2$ H’€$ HQ Q” ¤3I@$I@X»¤B´vóV¦L$I@¢$ ¢(AIg’€$ H’€$°v 苪׭[öc‡v^»É–)“$I@$µJ€½sZ}ï´~ÖÒ:›Ž£+Dó9Ôî˳$ H’€$ H‰H€)Aìmÿ7oÞÄÔÔ>ñ‰Oð¯hƒ>ì|Ûm·q{v/T9Ò?ÝñÑGáÏþ3ÿtÇûï¿çž{Ž{` Ö´¬DLürÉÄ ]¹rÛ·oçQJ&‚<ãò»ßýŸÿüçW¼œ$’,ËU.狇1¹zõ*¶nݺ&Ë-KßÿøG|úÓŸŽ[ùcŸ.úÜç>7Zy_ˆk ØÁ”¡-[¶Ð§¯’ø';4å‡ÝÓ f÷ÃþßgvìÇŽ°"­“g7óòò–éûG\ŽUño!ß2[ [¤ ù~Ø"£œÕ{"É2«Ë|ãþûïÇ;S̱®Þèä·ÑVoÞIÉ%h<ýôÓðù|ü!jýúõ|”ˆ)TÓUkJQ4J7’€$ H’€$ ¬&ìcö7nÜà£IlvLÓ{ô"¦iCNÚÍÕ”@)«$ H’€$ Hó` ÑŸþô' ýÇüè#DL ýÍ ¼/ H’€$ H’Àj#À"¶àú/ù‹®÷°4è »ÐF‰Ø‚#yH’€$ H’€$°Ö|üñÇ\bŠ3k³ba ³dJs$I@$I@ÖM! ]?ÄÒ8M!Ò”¢µ@¦G$I@$F`¦%BºB¤ iŽ$2I@$I@Ö"6JÄŽPGWˆÖb‚eš$I@$I@ˆ†€Tˆ¢¡$ÝH’€$ H’Àš& ¢5½2q’€$ H’€$ ©ECin¼csÇàÛ‡±ÑQLxׯ.¿Áú"ÚµXˆo Í©¯E´óÒlïK4ÉObUH¬ kûO6)‘$0û|gµ£ïÃîJ«[€Tˆ–,ǽ¨;¸[6¿‚¨U"ï¯Q@¥;øRï’Iµœûo Mȸœ‘.A\ 3u Â]«Aznú×jÒdºÖ(›evfmLÉJ…ÈçõÂíöÂ7ÇÀH€>Äv;à#?nxçòŠx;6"•}`ܼ>ü º,’ÝKiöz}á‘&oórgÒt"Àýøæd$‚&7LØGìææ˃oá²-åÕl<–2Έ°çãË”¢…¬ÜFæGÌá$Ÿ˜ežÏ½ëŒ•˰:=Ÿy_X Ñƹ¼É2¼ÀÜH\o+«ù†Q[’äÔTlܘŠdã:Tœm#*¾ATäÒum3ê« aLNƹ>6Ö@Ï…j¬3&“ŸHM6"¿è$zÆ"”‹•dN²Wç&ãX Ñy©ëòqa–xÑQ[ÁeO¥4§¦&#¿¤Ã$ºoðr&p/eyÈ-ª'×”Ú‰>œ&FFJ/sÏVœŽ¥Ñ×Ï9¾€Z•S21)<ÙŒÁþK(!†ÉÄŽq*©íÖ; áfb˜[‚úæZšæ0ò<`aW×÷ènXðñ=Æx~³—V4Sгó`ñÖ«Ü\äçç«¿B’97·ýbðivñÃ8™Oßç˯Æ`X¯;†Ó…¹d£d?/߈87=?Õ›,(M%õýA×î~‘oÄžåǺÜBÔv°4Çr,!ŸXÄX„Û~ª«¹Ä&·ä/ÏÁ<§2GlŒërQrú&x¨-¢¼aùZ£8YHyYx£‹Ez];¼ýõ¼\îK”o¸ù¬.ÖŠ) (ÒÛ@VÞò©ëFhñ àEs•¿"­¬Š;^j›×Q9m8³ÓêåLe8š4­B´Ÿ~¿_¡åÊ•+JGG‡RZZªÝZ¢³K©1A!dŠÉjSëj ™Ùuyˈ¢xz«zÍìh¨Eið(Î:+wX{cRe5‰kK£2µD’jÁîÝ»W3Î}ö»”º*«bRå..®RÚG¦”‘¦b.«ÉR®Ô56*¶b³.»{¤Òb×&³R^Óªx”IÅaLÌå5Jc£#˜^k“HïT('“RUcÓ9 n¥ÊV®˜U–§‡Ëîth‰1 Û®»±6̾ˆ»Gމ°—NKEéåãRì5-¶V.û\<˜—Æ*Åd¶( ý¬O†E¹,’1-Þ ,~¥¥\” {ï¤înj Ž36•·*þ(ù"v_9ÓËÃi‚¦ByÀÊ®Ù.Ü(SN¥Xåm&¶;¥C½®j¥²å/>»víŠ2ÆE:‹àÐ['Ê;P®8yL)-Uj}5Y»Ã¡«åÅ¢<·ÛD¨é×…™r†æ™n½d†,YØ2à8ÐÛ½beÀ órZ~.+þ‘Ñž‚ÚE{Òè ¶Qísj.‹6Áë|‰»9ÃÛâ`m”ÙA-Cðð8ܨóó—á OiJTGUÞzë-å7¿ùò‡?üA¹yó&•½”ˆË­¹Úm¢c*n¤Ž_=Æ[EfÊÚ¸2E¨î²K8 ŽF(I¥]o/5¥ÁÄÓkMUÊWF˜~)ì¬u"lM!2…ðg ˆè¸©‘Qý…D<«1¨„„;Ê¥mrD44$·ÅÖNŠ;¢àÜR¥6fåMawB/BeÑÒlªj×h &W £ä® Er.…è²](¶U-Cz¼Š«U(ªf{XctiŠŸåVˆ¬u½JoS¹^U\ñ5q»Ð2§(ãŠÃÊê€IiqùMa•y­ŸëR;9G¯^q"aÅõZ*DqŹdµ«Êu°.Ž(UüÁ£\¢Â£Õ[WP½ñ÷Öð2hQ^""Ñf;‚}IªES†—,Á2ธM!2Ð(Š×Þ ‡Ÿ,y)šé1ÒÛ…kÆ,$áš°µ>…Gwgp³÷½wÐ@&‹ýòÓ5Oix¼Î‰m¿óc{²f—ç)ÜäbÜÄ“èoÓÝw’©û÷Á^y»wæâë/*PjUy½baŸ¾(5e':üLŒOb¸¿cãxÿÝ.4«ÎµÌc³G¦šïaŸÊ$eÛ^ЈPú0²“TÇÆõÜàõ„/,}ú°Îßy5¤uœºŽ?1gš_5ˆØO,g`ÚÈrv¼ú|¾º¦* Âýw£¶ð^œr’zlkÇÎÖïÌeH1}å(ÙS¯aЖlÃ0^­ì$/Uxp“-:¾sÅ1ýžÿ}‘M|ŸM»AÓ–ý|¹¦Ñx;61ËÎ\ñ>ƒÝz¡g–3KÏg¦XkÇsüX¯§TSÑõö?£¦€Þ\¶fm„k¸°2f4â¶`äšI;¿iå'Î4aàÔ!ìHÅjž=°s^h‹_ú_Ev=V œ:Ž—›ÿ_<³3Þþ6œ"ùÍöG‘ÅÇ¥˜ò<†ëÔ~ö÷½ ××áì|'æ!ÚNæ1š2ŒŒ´˜ãƒ€Ö§.»4¢¶`÷ÖÐF΀Ìûɤñ …Ȳ7[ï—BÝENÉÜ|î)h—&­iwÿÝ¿À>ü”o@ÙQMI î¹î2lOì†aÚZj/Ú~RŠ‚Ê [=]©º‰¶Þq{ÐB Ç#4² }˜‰©QìÚ®õlÙN½Í‘O%ÌïB/.âÍÑRÊDæåÁ£  ãäC8ÎúR‹ÿ¦+TQÈ`È£4Ow¦ì<~>`ǽÆnœ!oVÇcPUì¨ùΛ‘+•báµëÕ¼)ÛÏXFÑ/Ï^r>‘¢Åýº -ýØ÷IJZ!Z* ÐR9=2×Õ3PXjʼnã h}ïvÜÑÉóÌ\cíÂtoÒæ%²ãz´!èÔ¿côŸòqíâkœD©%Oq;a{(§Ø3Ð"×o~ôU:—¦ÕE`eUÓSáÀõÐåm v·¡£oT_ØÚ©ûo°NœŽõáݵ{¸—Úº1¶xV8M¤ÿãf”ÖvÐSË8œ—Ûá°•ƒu™§ŽíÁëleuÄáîyI(CÚ{à¢'E™­+"úÕPNÁÌqyT‘jŽ&Æ]Ü>ޤÝ]ع¼±-¬éê„åØ9ý5Ñðn~N°­ÎWKë³Wž…&Yéh¥'î7/’É„£æp»Xørôϯ. FèÞÁÉ«|DDÕƒÔ‘A3Z†\w¹àb?â:24€¡äͬ×kQèçåà£G'/N¤¸´óQÊóǬ¸4c ù¿ IDAT&*¦ß# [y““ăsalF†0àÀ±\‘»9áÒ´ýì¿ÐýV;7?õPnœ$”Á¬™xŒæ[A*sgOÞdí„ÙŽüˇæg„2T\ÓçÐÆitœ¦¿¢HþM½ÿaŽoüá÷ºŸh˰îAVSˆŒ)|¿è ûäì/À~V 5ÉŸÍä DËkê®vÇWï¥àûx?A"¡¾¹qn7írÈ= J:vìÎGÉó/ F0ØñÁïÙÄš8RU…ïjÞµŸxù;³‘‘ž†Àh7Î1ý uý"GqX¯ìDÝ}j¬tòöàÇ|zbî×9ƒnb2±ЂoÞ‰ìCÏ‚,’NT†ç. ’a~î¾zÜ{„é küš>‰)rîØùeØIl);€e4Ìd©À—2ÄÕBøÞy÷}<\ߟƒ…­§¹)D0-â O'>ôoDzF2Ø/̓3÷æ çp³®R…xšÁ¸<|fˆxÑV–‚¿FVf>~ÜHKË©ŒYJ_æJð=_Ìãa_ýŸHKW¹›ÁŸ~9¦ü§K<2öq¥¿óDöÓHÍã«Y ÈüE§Dè˜òÌ*íÙƒt./·¨MSøƒÐ¿a}æaìÈÊDzЮ߰¶‡Žˆ‡ja3ñ®ê´¯±õµà}´eX„'ÿ¯6+¦e~L·?4‡¶Ö_BwmÜ,”[ñ—õi²P †Œƒ8YN6Ô©,:Žžœ-ye´¶Å4Ú’`mæM6ŠÓyU´%~ÐŒíùtí,CQu=úÑÓVÓ/S' 3þj;=«Ã2-¯ý3jÛúñ…½ÌPöU¸Ô݃¶ §‘·ÅB] W7ûǘiQGÃñHOöA¥' Cò¬¸òô%ƒq”Sµú 0å¹Tt” 5‹ú ªå™[Yá£öæGõ覾‚½–$‡?`Qóùÿ¼ƒa]éáÎè_îËcÃï´Î“^åÒF³'‹¶€?#ªN¢/ÃZ˜ò¼ªh˶—{—‹wj¨5bk=m¹wt©ÛÉÅŽ2‹CÝʬ J[ÚËÕíêêVfs±]n$Ð\ÆýÛ.3EjªR¨0ðÛæé¿¬”kÛŒU{¶»ÆÞ®mÅnMjh7’Giª O«ÅVG[úÕíù̺Ë,Œ“ºCOß­ÆX4r9"w™Y‹µ°„œ[S”» ‚xCwvmÙ¶y¶íš¶Ý‡lêU·û›Ø.¢¹xè»ç„\Gí¬½> 4>fžQ–É.±Ã Åb7Ÿî)¾¢zI+‡SJ{Mð•LžrõU¡y0Òn×·Úk2[kÚÕ‡ºsâÅg9w™ÑCŽ¢•1–8Vî¨[¢r vR²4UEÖ‹MÝ–‚ƒòŒº&ògÙQr r—ÙÂ]‚ GZE;kªb¯Ò9&/믿uФÔÐëNÊÕݪ6j“µ]f/9½Â£ÇQ>éõv±c²NÝ.uE‹Àl»ÌÖ11©° @oÝüðÃ111>øÍÍÍxñÅÙ­%>|˜›äƒ#É3å(ûNØä `C*MKDëi‘)Ù·oº»Ã_6_zôMn%§$©«N˜Â5š!3Òߦ-YiÀë&ôÒº¤$1µãÅ$¹OݸIMkî 7 )iHQÝÌ'GäýþÚB˜Ž§ÀéÛÜcpy¦è匛iZ.Ê  ð‘GÁ믿b‹q>±„,D–…ðååFô6¤ÜŇâg”ÒçÆ¨k{‰è]H£!{vÈÞuÝC¬fž—¤‡7l¤¼`so‹çsÿý÷ã—¿ü%;1þ±4Â0P™ÓÒ!™»ù ³¸ SµÏ8bá#n—½£$náÉ€V’€cÃ㘢:x׿ ð*ðbÂ@JZfn>Ù7%¯S½)w¥ ?Ó’EžæGZ$ «ÕŠcÇŽáž{îÁg>ó|êSŸÂ'?ùÉЕ¡+%j_gkì)´!ʵ©±W÷ZP.§é™ÙsL¨¢†ûHËÈŒ˜f1ÐŒxL"xá'E+‰XfÅ#¸‘›Ç‚ÉÓBøFUþ’Ò™ES¡ÇЫÇÃ_cq#ôÒ쀧£„ÊÎÊó +>f–¦¬™ë€oƒ#×Ð÷ÓÐÄàxúë˪ Å'}2”Ä!‚Œ¬ðö”ž$1wó™„ŒÌÌy’0GžÇ§¼¸Ä#kâÊ'%["þ›WyÈñÜM¶D¢®¹`³Ÿ¸å‰5—¬¸$Èûë:äì©aYñ¸ö£¸„.‘$I`vR!šÍš¾sßco w¯[“×t2eâV”û¾…®vüÆ»ðÅ};#FWWYb¤¸’€$°ªH…hUeWü„MJÏÂΛ&‹_:dHkŒ@J&ö%â[V×f™I@˜N`ŶÝOEÚH’€$ H’€$°2¤B´2Üe¬’€$ H’€$@¤B”@™!E‘$I@$•! ¢•á.c•$I@$"0M!Z·nØO’€$ H’€$ ¬EŸø„PBu]!b–Ì{qµTˆÖböË4I’€$ H’Óqn»í6þ Õw¦m»g7Ùï½÷ÞÃW¿úU® 1|ê>n9’¡°Fésìµþ·2Р±.‰$K(£•4kLاx´r+Ëîì9¢ñºqãFÜyMNNÒç[6ι¼# $8·Û¬¬¬U9`Âê6ða?ƒÁöy$þ©23;­î‡)DLéÑnÞwß}Ëô-³/!â±o™Éo…Q ù~ØôPâc“H²Ä'E‹…}ËL–ÛÅs\LO>ù$^~ùåÅ!ýJ+J   ›7oYщlžÈ5e()) )ô)-ö`’NßnÙ°aWŽBÓ +D¡–Ìz=O|òö-N ‘ÊJ"Ér‹ ™|I@XC؈ÊÝwßõë×óS³)'6€²mdˆ)AwÜqÒèþ·ß~»ž­ßÐ"mJŒÝ`fíz5$VÊ( H’€$ HKGÀh4â®»îâ_†gŠ»^- Ók˜¼ìÇdgÊ-bÊKƒ–]!b™§>úHŽ-]™Z“!'’òœH²¬ÉÌ–‰’$[’SØÈ û¥¦¦re‚­†ƒé6L~&¯6ÂÅÎ욆0…ˆ%ŒyúøãWC¥Œ’€$ H’€$° ˜nœœŒOúÓüÇÌlòj:˜òÃ~LnMAšU!Ò¦ÊäSöjÊb)«$ H’€$°ôØ:"6ª¢M;­&…ˆ)@ì`£Eì`ך™[Ð?]½ U†¤B¤á‘gI@$I@`ØhжGÛ¶¾–ÈL["®)Fk)‘2-’€$ H’€$°x¡&¡æÅ‡¼ò!LSˆV^$)$ H’€$ HËK@*DËË[Æ& H’€$ H H@*D ˜)R$I@$I@X^R!ZBÞÞ‰1ŒŽ¹cˆÁ‡1ú^Ú„7ƒŸÄu:X_D«ø ÑãM\ç•Ìׇ"Ú•`¶÷ÍëT:ˆ–€õ…ô6üüZ¬æ¢mj¥»¥$àÅ…"öe…"ôû–2ö­@@*DK–Ë^ÔÜŒ-›_AÔ*‘÷×(ز_ê]2©–3`ÿMÑÝ—3Ò%ˆËCa¦.A¸·r7oåÄË´Ç•€—73^ÜðÇ5XØ-H !"•h·Û ß#Ÿa·>òã†w.O+š¡F¤n%Ìëƒï6Ðä!Ù½”f¯7â‘&y˜—;“¦«îÇ7'#<ãä‹`â#»¹9Àò ›&íÒŸgã±ô1ë1ÌÇ—)E 9fʘÃI>1Ë<‡õóܽÍʯ/VûCoKó-A@m£fh¤´²4½ÕŒ •+V¾d銂Õ-àde"ß0jKò‘L¯߸1ÉÆu¨8Û&FT|ƒ¨È¥ëÚfÔWÂHoÅ<×ÇÆZè¹PuÆdþÕÚÔd#ò‹N¢g,B¹XÉÌ#Ù«s“q¬…„è<ŽÔuù¸0Èc¼è¨­à²³WŸ§¦&#¿¤Ã$ºoðr&p/eyÈ-ªçÓ ‰>œ&FFJ/sÏVœŽ¥Ñ×Ï9¾€Z•S21)<ÙŒÁþK(!†ì¢ŒSIm·^ñ‡›‰an ê›kQ¸ÎÈó€…]]ߣ»aÁÇ÷ãùÍ^†UÑû]J]•U1©rW)í#SÊHS1—Õd)Wê[±Y—Ý=ÒNi±ˆk“Y)¯iU<ʤâ0 &æò¥±ÑL¯µI¤w*”“I©ª±é7‹Re+WÌ*K‡ÓÃew:4ŽÄ¿˜…m×ÝXæN_ÄÝ#GŽD؈K§ƒ¥Ç¢ôòŒq)v‹š[+—}.ÌË@c•b2[‹…~V' â\ɘoP¿ÒR.ʆ½wRw75PÇ›Ê[”|»¯œéåaˆ4A S¡<`e×ln”)§R¬ò6[‡Ò¡^WµRÙŽòˆŸ]»vEãr9ó(u¬,˜TÆej¨Eçcïrq!Æ»jD]€‰ê‚C±W©uƒå=e§Çé÷Ë[(µcH)看çR7Z”Qž¿ýíoGéòÖq¦å±©ª=$Ñ#JUH©m&LÅŠƒÚL;µ«Z»&Úµ,±v†¦ˆºÈCöˆv”Ê›h ¦”–*µß0Y»Ã¡«í,ŠÕv5D"i¾õ­o)?ÿùÏ•ßþö·\W`:}ækMáa_µçÇr+D®v›è˜Šy£È…o…)7j'áºË¢‘dP’,Jû¸*¸Þ©™gí$5—‹=G­ñˆüj£_§*jT ymVºôÎܯ4³Þ*p¿“w¬‡SˆJJ!Wd¨ÑãŠ5ZåÖ"‹Ò¥2ñôÚGS•2 v šµN„­)D¦þþ­c*ÖýãÝTBÂÝåÒ69¢8TeÈbkW;°(x„7¤T© tyÓ@ØÐ‹PY´4‡6¸—k„ÊÃ(ù†+D¢AžK!ºlwUËPP4W«PTÍvµQÞšÙ?> «Y•‘¡V]w\Ö*µK±ñ¼¶êeš1h,çåÚZÇò_ë8ÕºC6SNUÙ¥2–h‡TˆfÈÿ€úà@íªÕjyh¶u‘¿ÒZ.€„ò#Âpòú¥=E§…*àþ¡&^ŽBÛ>EWV—IiqU줾e­n…HÿtiÝËz\{W,~²äA¤h1§ÄHo®³„kÂÖúÝÁÍÞ÷ÞA™,öÈO×<¥áñ:'¶ýÎíÉš]"œ§ ŽÞĉ“D›î¾“LØ¿·öÊ#ؽ3_QR«Êë«=7ÕÕ);Ñá÷`b|Ãý}›Çûïv¡Yu®e›=2Õ|ûT&)Ûö‚F,€Ò‡‘¤:6Š™v¯'|åaéÓ‡uþ†ÌC¨!­£àÔuü‰9ÓüªAÄ~b9ÛÓF–kì°ãÕçóÕ5UQðžè¿µ…÷┓Ôc[;~ôp¶~g.CŠé›(GΜz ƒ¶|d†ñje'y©Âƒ;˜lÑñ+Žé÷Üøï‹lâølÚ š¶ìCi4ÞŽM̲³W¼Ï`·^è™åLÇÒó™)Öeµk8Š-jÑ(nAÉnµ{ßG/å5L÷à“Dÿ5N¸Gä»óý1º™‡iÈñTYZõì Âÿ«ÖŸrñ+ w-k2dd $`ȆÕfÆùçñ¦ó‡ÈÞ™¦çáSGXðÀ ~LVÃãDߨ>¸þ[üŒ×/ ´fˆBxKÔÏ­Yá¤ú)*(îÞÁZÍŒ\£5#m‰’ÞV3­O]ö4ˆþÙ‚Ý[C{2wîC&“ÆwËdÙ›­÷ËÆ ¡nƒ"§dî@>÷´K“¶ØOƒ¼ûïþöáï ì|ÊŽjJuÏu—a{b7 Ój¸m?)EAeЭž®TÝÄ [ï¸=h¡†ã™s+S£,ص-\ëÙ²&whmÏ4Q‚¡/ÂtoŽ–âP¦ 2/S'ÂqÖ†Yø7]¡ŠB C¥NóLÙyü|ÀŽ{Ý8CÞ¬ŽÇ ªØQó;6#W*ÅÂkÖ«yS¶Ÿ±Œ<¢_ž½ä|"E[Áëó -øÁÃÏ€©DÞßöðµtpžÂžœSÓ¤rvþ^*& —µ ò^üï}&´ªÊ®™+»Ó¼I‹$°ëÈSÀ‰N¼ü³wñÌÎÏã –‡¦|U}’ë~ûƒéÇáÇÌ}A¸›Y®Ô†¹¥²-•ÓÝø˜‚$[’ÀÊ.ª¦foàzèbè»ÛÐÑ7ª/ì íÔý7X'NÇúðîÚ=܃KmÝP×b 7 ø?`ÜŒÒÚLyÆá¼Ü‡­¬Ë\þûgAËÀiÁZÊð. rI’ïÜÂë¬u™üˆá81pbäµÿÅPCæ—aguáÌÿEwÏÛ`ª“Åþ°x â!ɉN )û+ µ¤p6¿žžNþÀR\yˆ+ÆlÃH%W†Ìp´^Æk´´Ž”’ÑpE$4U{°g—~ð[ÞäÄ$•)^?Y€sÇrcmefˆDZ­J+¦Sø~Ñ77öÈÙ_€/üJWˆ‚7äÏfò†²åµÎÝn¼rx,ßÇûP׉cê›çvÓn†Ü³ð§¤cÇî|”<ÿhƒüžM¬‰#UUø®ö¼Ã-ì'žEþÎld¤§!0ÚsL? ®ªž£>±^Ù‰º7ú‚>¼=ø1ÊÞ„;¸&kx,øöáÈ>ô,héDexŽw|óóp÷ÕãÞ#|L]ã/`Gø`VPî9LZ§ÙRvh4– |)C(3 á{çÝ÷ñØ|¶žæ¦ h´ˆ+<øÐ¿éÈ`¿4ÎÜ›ƒœÃÍó4åZPËÃG‹mEÎæB|-; ¿•×ëóG¿…6š 3lÞ*"çüÿí L\×™ÇÿN†œ@ v‚•Åq•<¨FŽ]­ídHÒÕcåe·†n§àEV j».t›Jx¥¯¶1Vâ€W¨ç›G]³é‚#¥&hwh Jp kCØÂî˜q˜äî÷{φæÅpîëÜs¾ó;¯ïžs¾{‘š®ó#†‰—ÞÁ½9VìyýO†¸éxüyÖ¦Ž`ë¦Ý´µ¢ÀÎÊ-Ø^Fyèx›6í!±m(ئOò\–P] JPüèFde¤ÓlÁ(>8Õ ’G†·Îx’ké1¯¹zÞÁK<Âl¸»¿‘'ö.þù*/£~RùêûÕ÷‘cÍÁo‡Nå½jߢ¦e?±¬çßC¦õ§ÑÑN&¶«tå ²èsšÌ¿%ãa"3îT.<ŒöÎv-~x<µˆF[æÑaz‡êýk<ŠsöÊÉ$¾o< ÷åÓ±ã +êÑÝׇÎÖz>Á5Õ†oÞGO%²2¿ù2j[{pÏf¾f~TŽÓh=yy«íúðñÅßáÝê=èö塬¾Í(Þ¼ILUÔí÷¬=Z`ø|»˜£§±½Õz«t|w ™VÏÂãžOñ“ìÇwê 0‹ZT‚ Ô G¯ZÏ Çp´¹úªGù+ôésj©^oè “\ šOyÏ‘m(>ÚŒŽÖZÒVfï$Y˜R¤Q2Í_iÍ9Ü\·(³×¦Ì¦ dÒ^j˜«÷ÙŠªµ^eµôòíܬÌ4­¿©ÜLWÙ Oœ×J¥y§™f«VÝ&M±=¦é@Y#9µ¦rß´Ú+ëȤ_š “ÃÊ̇“a¡gZ«1ëÞF!‹¿•YA‘ KÏ{eSVP¼Þ–]ž³lį0Ìa ]†¹¿•Í¥gâaZÏyʆw9‘¯ðŽ÷§•eìœnásì`øêåpû«²NjmUÒôW—­ÔxÕw ´U›¦äR6ÃâÐ_êéCÅ'&­ÌآǮ›Ýë©Ðh}­(£ºߘÖRéËÙÇâÔD6©Ñ”›¸¯¨É˪ϼ;ÊÊl¦|pj Z•4•5¼œ‘¯_Ðó¶r­©Iž³’Å®¼×S·Gºê|ê¿V¤†ÛQã54×­rÿ¶Ø^I±3ɹ´¯-+³eœÅ¬w¹éŸ}öFGGqùòe477ã•W^áKav.Œ‰Á‘¤´ ¤©œówÂÆ®ËShZ"Ø›˜’-[¶ ££cN¡¸é Г4¹•”œh¬:qct°Wh†,þV®ÎòK³ãt½,,1QŸÚÄùOI[i¤ÕñÑqX’S‘lø™“Pä¹§v¬û’á˜z kLJ1䜤—3®¢i¹ 3À+Âgžyo½õ–×™¹ìÎÆc.aó‘e>|Eù£GÒåÉ+ž¬çS€¤®q Ámá—ˆ®@ªáÏMç‡>u’åÙôó’ôp‚„åi”ü|¼p>÷ß?>üðÃñà Õó¡¿LÂB/2]¹‚¦LPÓwÑ S°§ÁŽóÎSAXïE'Õ{÷îʼn'¢ù"Õ=Aß„¡2”†UdýÅEÀÅ_) ½ôT1†˜B®{\Ç–§ˆ¥ø ×­A8Ýjûd}›Þ§: ìÚµ ô~B1…}ÇwàÖ[oÅ7ÞH/B]7xš—ȧ,Q¬³˜k¼É4÷{ª0× ÂêßB J|å¤Jœ™­/œ6f ’ý*yjF¦ß4‹…æ¾Ùg¡nS¤h%ˬP7/qfã1¯@çtÓ|øUþS‘™%Çÿ="õ¿±9â5æžs{¶8Û‹©ìDŸO€lß’fF¯òÀD¡vb˜€,üå2{ûí· %ˆþÉësI‚¼‡·¿øÅ/DxR±’׿^(ýšê¬ ,ÐW_}E¯=όзÌB™œð†Åß2ûõ¯ÞHaèóù~X¸’K²„+s —¿e¦Êí\©…Ö¿ú–YhyªÐ0¯¯‘IDAT?þ.Ú矎$ún';©E3eÓα槜" (Š€" (á À±æY©/¾øB ÂÈA™pÄl˜>šO,¬àÊŸ" (Š€" ,Nn·“““B!’‹µ£S!â©2þ±RÄSfÊ)Š€" (Š€"¬]½z}é0ïÈ¥ó‡0Hçgåë@p3óÓ¸Èy@i*®ïñøïÑóØs~,ËÝÚvNó\\ùÌEŒ0ú•Yãºp…”×<ÅÚ>ªŸî¾¥·±\³ÚìšÝN¿ɓðkçõdÄë‘eJk)ÕËFuטéo²·N0¶–žÑ¦‚仨=x¤K„¡§ šw˜å—][µîG›thEo±­©¦tÇåg¨léBÅgÆ AÆ)oN­ŽË‚­†Ê¸¦Mö·˜|ªÏ !FÎUéuVª 5Zu¹Q78ï);Žýzi å£týZ©à\¤9ÂÝÈ(ƒÜ>÷ÜsAúTÞü Ȳ`-oóº4 •{åu¿Ñ¶ÂZ¤ÕPÛZMí¯lÿôöÇ(s܉BçWgEÈN½½¥r©·“ZK¹Ñ¿X ´êš­ÈhQd´¿^©Ý¹عs§öþûïkü±Ð=X¡5Î-ûæ—1 i…h¨­RE£(„9£bVnŒN†¡ºóz#É®$Ùµ¶Cp³S³]·“”>º Z!M~¡¨Qå´M;gvæSZSwðz>嫽ơ‹JJ¡Pd¨Ñ÷¸­’YiM…È®3˜8»ªuŽÖr­×è乂:=l©Y½øO ÈŽ©È¼Ïïõ÷1«4jýgLE¼æ¼¬ÔCZ¥Èë³L3£ÞÆRQ® ê8ÿe‡hÔ:3é0”]*c±æ”B´€™ê50¨]2´_™×¶Êsð”v¦TPÒ•=.‡¨‡òá)8…È[QŸêoåͻԴ­¦€ã²j-CU|©[²·Æ¢B°¼…´êˆ¸+Ðï-þ6’eŒéc ë®$d!Wô³Ïcׯ ±?ñ§Ð@{öêŸ.oJÅwëXûßS¸/Iž‹…í$ô…£×0Iâ$ÒßÊ»n§½³Øº¹ÕŸÆÆõ¹ø›Wè ᵆ¼új?ç5cÕ_òz´O91:2† =ÝÁ¥?œC³á]fÏY«~ˆ-“äµ›A#@ÉSÈN4<'è3èNß…%ûŸ0ù[2·£Š´Žm/~Šÿcoò^#ˆ¹o8g`Mã\cW7~–o¬© ‚‡~ýGíŽ{ñ¢ƒÔãÊ6üÓSÙæ•™v’­£päÅ7ÑW™l˼qð,ÝRŽo¯cÙ‚ã;SׯñŸ§xâ¸3õ*M[ö€Q&$Ü‚•|òl;>šø6š…žONçÂÏgºX#z®a7VE£¨iŪÇzEÆ]ë¸umÁÀjy3RÜx|$ È>5’qЏôþÙŽk¼{ 2×oA&ûp]þ웳Í~9a¹·_qYüKÎ\‡|q“ç\,ìÉE|òÆ¿ûT_ø>oÀÝRI î¹î<*ŸÝK@Í@ë/K°í Ç¯™®sO쬹íÏ #猦<¬FÙ±a­¯Ö³ú>šÜ¡µ=¢xB_ÀÞ)¼;X‚í™:‘Yyˆ˜Üh?ô$öqÛd¯Á¿š UbX²°‹:Í#ŽãýÞjÜ›Ð#t[AÍw`¨ØAó9¶¡Tê ¯-¸ÙÈ›[™¥¿ ~yvØùø‹Åãã -øÇ§~V‰&>îkéàx›r^ ÊqöcLP9°Úi¼ø@ ¾Ý…¿ßbÅCÙµ e7à6ubØðôóÀ gqâ7ÀÖÿÞæ¼¶Váã‰o¸ã¶mÝÖ£}Ýô}†¯Ÿë xËÁmh9èÇÅ ’rqE º‹ª©ÙëýÔ{1´}­hï4özwêSW¹'w³ow=~¡§[;`¬ÅÔýÄàwÂ*”Ô¶cÒ9Çù6ÔT–‚»Ì÷lÂ[¼²ÚÏw¾ª+CöJ´uõbˆFŠ4m ´®ðëW½9ù3ÃáEü¯Tz»¡¬ë¥]èm¡³ï9f¾† šŒ‡¨!õ8Þ(Æ\ŸÇò¸Ó$wæì8÷î)Ú³b÷·sĹ¹ð7п)±Ôt¥Nœ»(F. =È´¡¥#CCâqèïEoò‚l£#ÁGȵv´ôö£‘\¡åþádŸ$éöÕ¢^  c#:?b8B û{xóo…jÉ|Õ\Žü;::ß«Nöê§ô*’ú/³­9…£ù=tvž6E· š K eȆš3çÑ?4Z)ZoJÉ÷kàü€¤È§V¿ó|8åÔï-mr`ŒÊž¨Ç\—úÑëèŞܹ¶FÓD¢NŨ)D Éb¿ëðþ7äl݆‡^ú½©y.IwfІ²åͳ^«üÇñÚ›`ßös\r{ûŽ}]}DZd¥{SÉéX·1Å?{ 4‚ÁîòÿðÄšîR …ïbçâDõ ?Fþúld¤§Â=Øc¬PMöU ›ƒÞp¯ì@ÝÛÝž;&:ñÏâ){%n[XàF˜Ü ØñÜ둽ýÇ uD¤ÀODÇ7;ñîzÜû´ÓÁ¹‘—°Îw0Ë#÷ {²Ól9ð¢ÑØËð׺23¾·ßõu›ësOaëlnò’€F‹„ÂsŸM¥!=#üKuâȽ9Èy¢y–&Z>2¶¨lm;ð­ì,|÷çgD½>¾{'Zi6̲j®9>RÓu~Ä0ñÒ;¸7ÇŠ=¯ÿÉ7?ÏÚÔlÝ´›¶VØùC¹ø#íe”׎°iÓJž Ûô)TžËªKA Š݈¬ŒtšUŧ2Ð tÆ_K߈yÍÕó^â‘hÃÝý<±wñÏW©õ˜Êa߯¾k~;ø+ïUÛÅI j QöûÁúûñÝ9dZídb»JW*‹0§É¼±Z2Æ!2#áNõáÂÃhïlÇÑâ'q€ÇI‹h´e¦wø¡Þ¿Æ£8g¡œLâûÆ“p_>; °¢Ý}}èl­Çá\møæ}ô´!+é›/£¶µ÷læhVàGå8Ýщ֓‡‘·Ú® _üÞí¡Þc®a_Êê[ÑÙÑŒâÍ›ÄTEAÝ~ÏÚ£†Ï·‹¹wÛÙ[­·6Çw—iõ,<îù?Éã†ïÕT ¬¬´-®@ë`°uš%\htW¾ï[æš©µóà»rM¦èàÖ')ÚÑ|´›h »dñ´™ˆ'~Z'Žwç<†£§;ÐMlËòrôéº2[£\É3——ñ¢FüŸ÷ú:d<Šñ4ïÀ¶’ZŒ[Öa ýДÙjzmBkg7Ú©ìoÎÛGrZQê¥ôd=²“jál{ñ1+O©müÈ~|§®(s’ŠJ°šLáè• â¤áŽ6·S_Bõ-…>ÍN-Úë Ba’+D3+ï9² ÅG›ÑÑZ‹Ç¬»õ¶ÕêMßò=ZmHƒ—7¡ðÐItwwŠWÀˆk[5ÉŠ±ÇÀ¡6 —¸GÚÊŒã$ RŠ4ßü•Öœ3ÌÉu‹2{aÊl J&í¥†¹ºqŸ­¨ZëõXVKŸ!ßÎÍÊLÓú›ÊÍtU‘­ðÔÈy­Tšmši¶jÕmÒÛcšT‘5’Sk*÷M«½²ŽLú¥ 2ù1¬Ì|8z¦µ³îm²ø[™ɰô<°W6iåÁëmÙå9ËVAüšÃÌÕ¸Ðe˜û[Ù\z&¦õœ§lx—ùúïøxZYÆÎé^ð7dž¯^·¿*Ëá¤ÖV%MzuÙJWxçÁ@[µiJ.å.¨j3,ý¥žþ8T|bÒÊŒ-uìºÙ½žúÖÍŠ2ª[ði-•¾œ},NMd“M¹‰ûŠš¼¬úÌë±±£¬ÌB‘N­QXxA«’&µF°gäkô²[¹ÖÔ$ÏYɲWÞëiFºê|ê(¿~¤†Û[ãu4×Árÿ6Û^I–³¡HÏÒ#­Ì–q–°>å¦7q~öÙgÅåË—ÑÜÜŒW^y…/…Ù¹0:<&G’Ò2¤ÒÍß » ,O¡i‰`oZ`J¶lÙ‚ŽŽŽ9…â¦7@OÒäVRr¢±êÄÑÁ~\¡²ú[¹:Ë/ÍnLŒÓô°ÄD}jg|xcä?%m¥‘V7ÆGÇaINE²ágNB‘çžÚ°îK†cê5¬Æs’^Î¸Š¦å‚̯Ÿyæ¼õÖ[^gæ²;¹„ÌG–ùðå5—'¯@z²žO’ºÆ184·…_"º©†?7úÔI–gÓÏKÒà –§Q^ðsïÂùÜÿýøðÃÄ[ '\Tχþ2 ½Ètå š @MßE+LÁž;Î;Oa½TïÝ»'NœˆNäK$V÷};r„ÊJRV‘õÍ€öÒSÅR ®£\—§ˆ% ø ×ÁA8Ýj#e½œÞ§:<]»vÞw(¦Äï¸ãÜzë­¸ñÆéŪ˂$Ä>š—‡Dp‰bE}¼$ÓœîuЏ¿hXhA‰¯œT93³õÅ€Ó gA²_åMÍÈô›f±Ðœ6Ûã,ÔM`Š­Db™Šàæ%Îl<æèœnšß Ê_b*2³ä¸¾G¤þ7ö G¼ÆÜs.`ÏVg{1•èó -‚'®_6ݾ@uí¢ßX¶´˜“²èdÏ~ö´gØ1&ðîÍÁA!• /ïßcò)qE`±P Ñb˱Éûõï¼®ÍSX3FˆâPÁ(á#Œ'é%®Ö‘)¬ÍÛŠiâµ YPâ’€Rˆâ2[gOTbzÖGmšlvù”E`fdÑK\³fö¤®*Š€"4¨™Ý-¡ò¨(Š€" (Š@˜ (…(Ì€UðŠ€" (Š€"û”Bûy¤$TE@P0ðQˆ¤ý¿Ü†9n¼" (Š€" (1AÀTˆ¤Ä[¹*!E@PE ®H=ã†L5$꺇GBͲpü¶HåE@PE@ùfj©…+ž`à 0»goºé&\¹r=ö\.¾øâ |ùå—0¾òlØ‹Þ+‡Þ¿K—.áÁÄW_}%xðv©1‘™*¹pyÂ<`2a.‘p\‰˜ÿl²H‘)ÚqȆś ×eYn9oä/Ú²ÆküþyÀy1<<Œ­[·ŠòÊmi¤êH¼2VéZ\¸NðOꉉ‰BÏ`]ƒÏq‘õ&š)óQˆX0‹Å‚›o¾EEEøä“O0Nß‚q:¸víšèð¢)l$ãæÌ‘™Ä<ø»Ṡ3þÖ”·’¸Ô”"Ɇ™ð™sá3Š”“²p^q%cDz° 2"%K¬ÄÃ,d]æGæ¯ó‡·Ìh©•ÛHåóæçÿä7똷ÌVˆÿH刊'°n‘Dßèäo–¥¥¥áÎ;ïÇR)Š ¥²sçÏík_ 'à¶ÛnËR«ÀÌ„;ÎHnØØ1þqÇ"Ÿò–æÀl˜‹Ü;ô|VFøz¤œT\¹ã‘ ç ïGZ–H¥y¦x˜;©I¿ÌC–[Ο¥Xn%‹Hl9äã“e“·ü‹d‰DzUŠÀL¸=bå‡u Ö/Ré;s¼/ªc¡>˜#D, W^ø–[n–•£Ï?ÿ\(Cò©r¦ÇÛ5æÁoeÂûÜÉÊÎDnã-íÁ¤‡ÓÎJ7îÌ…Ëo#ÝØË<à 'eá-;¾ -ž¡ò#ÓËyÁ޹Ìʲ+Ër¨âSáð.w²NÈm ouFˆ\þ¹f½bùòåBÏàÁ>–×Ѧà£IaY(Þ—£Cò©?ÚÂF#~Ù¹ÈNDv*Ñ%Öâ”>oùÇlØÉó‘—óE*?ŸÌ'™o‘!Öâ X.Ù K’•<Ž5ÙãEæË¬½óB¦MžSy ‰¨íR ÀåÛ#V~xà…!þñë±P–Qç¥yg?IòO*A\©½GD¼ýÆû>gÿ$"¹åtËÌó>ï<¦KŸwú%“éüEòË+²D2ÝÞqIEˆÏIÞ\¼óÍû>µ:’»TB9dy.t±¨ÅC€Û%þ±äýãs±P7"F˘ÜhÊßâAZI9“dF±bÈ™ÈløœêTtÖÌA2 -}ÚBp#3]îÜBâQ÷^Ÿ€l'T¹>#ueià:Á?©qêc¥ÿ˜V!š.{–j#:SF-U&³àHsQy4]½~#éü™^ºø?«Êeüç±JáÜÌT'æRx|ÿ?œŠÏÞú¡¼IEND®B`‚erlang-bitcask-1.6.7+dfsg/doc/file_entry_text.png000066400000000000000000001374761233730135600220360ustar00rootroot00000000000000‰PNG  IHDRXªq£1ç CiCCPICC profilexÚSwX“÷>ß÷eVBØð±—l"#¬ÈY¢’a„@Å…ˆ VœHUÄ‚Õ Hˆâ (¸gAŠˆZ‹U\8îܧµ}zïííû×û¼çœçüÎyÏ€&‘æ¢j9R…<:ØOHÄɽ€Hà æËÂgÅðyx~t°?ü¯opÕ.$ÇáÿƒºP&W ‘à"ç RÈ.TÈȰS³d ”ly|B"ª ìôI>Ø©“ÜØ¢©™(G$@»`UR,À ¬@".À®€Y¶2G€½vŽX@`€™B,Ì 8CÍ L 0Ò¿à©_p…¸HÀ˕͗KÒ3¸•Ðwòðàâ!âÂl±Ba)f ä"œ—›#HçLÎ ùÑÁþ8?çæäáæfçlïôÅ¢þkðo">!ñßþ¼ŒNÏïÚ_ååÖpǰu¿k©[ÚVhßù]3Û  Z Ðzù‹y8ü@ž¡PÈ< í%b¡½0ã‹>ÿ3áoà‹~öü@þÛzðqš@™­À£ƒýqanv®RŽçËB1n÷ç#þÇ…ýŽ)Ñâ4±\,ŠñX‰¸P"MÇy¹R‘D!É•âé2ñ–ý “w ¬†OÀN¶µËlÀ~î‹XÒv@~ó-Œ ‘g42y÷“¿ù@+Í—¤ã¼è\¨”LÆD *°A Á¬ÀœÁ¼ÀaD@ $À<Bä€ ¡–ATÀ:ص° šá´Á18 çà\ëp`žÂ¼† AÈa!:ˆbŽØ"ΙŽ"aH4’€¤ éˆQ"ÅÈr¤©Bj‘]H#ò-r9\@úÛÈ 2ŠüмG1”²QÔu@¹¨ŠÆ sÑt4]€–¢kÑ´=€¶¢§ÑKèut}ŠŽc€Ñ1fŒÙa\Œ‡E`‰X&ÇcåX5V5cX7vÀžaï$‹€ì^„Âl‚GXLXC¨%ì#´ºW ƒ„1Â'"“¨O´%zùÄxb:±XF¬&î!!ž%^'_“H$É’äN !%2I IkHÛH-¤S¤>ÒiœL&ëmÉÞä²€¬ —‘·O’ûÉÃä·:ňâL ¢$R¤”J5e?奟2B™ ªQÍ©žÔªˆ:ŸZIm vP/S‡©4uš%Í›Cˤ-£ÕКigi÷h/étº ݃E—ЗÒkèéçéƒôw † ƒÇHb(k{§·/™L¦Ó—™ÈT0×2™g˜˜oUX*ö*|‘Ê•:•V•~•çªTUsU?Õyª T«U«^V}¦FU³Pã© Ô«Õ©U»©6®ÎRwRPÏQ_£¾_ý‚úc ²†…F †H£Tc·Æ!Æ2eñXBÖrVë,k˜Mb[²ùìLvûv/{LSCsªf¬f‘fæqÍƱàð9ÙœJÎ!Î Î{--?-±Öj­f­~­7ÚzÚ¾ÚbírííëÚïup@,õ:m:÷u º6ºQº…ºÛuÏê>Ócëyé õÊõéÝÑGõmô£õêïÖïÑ7046l18cðÌcèk˜i¸Ñð„á¨Ëhº‘Äh£ÑI£'¸&î‡gã5x>f¬ob¬4ÞeÜkVyVõV׬IÖ\ë,ëmÖWlPW› ›:›Ë¶¨­›­Äv›mßâ)Ò)õSnÚ1ìüì ìšìí9öaö%ömöÏÌÖ;t;|rtuÌvlp¼ë¤á4éĩÃéWgg¡só5¦KË—v—Sm§Š§nŸzË•åîºÒµÓõ£›»›Ü­ÙmÔÝÌ=Å}«ûM.›É]Ã=ïAôð÷XâqÌã§›§Âóç/^v^Y^û½O³œ&žÖ0mÈÛÄ[à½Ë{`:>=eúÎé>Æ>ŸzŸ‡¾¦¾"ß=¾#~Ö~™~üžû;úËýø¿áyòñN`Áå½³k™¥5»/ >B Yr“oÀòùc3Üg,šÑÊZú0Ì&LÖކÏß~o¦ùLé̶ˆàGlˆ¸i™ù})*2ª.êQ´Stqt÷,Ö¬äYûg½Žñ©Œ¹;Ûj¶rvg¬jlRlc웸€¸ª¸x‡øEñ—t$ í‰äÄØÄ=‰ãsçlš3œäšT–tc®åÜ¢¹æéÎËžwç|þü/÷„óû€9%bKGDÿÿÿ ½§“ pHYs  šœtIMEÚ ,Æï IDATxÚì]w¼TÅõÿž»ûöڣ㣈Š(ņ¶ bÁŠQ£ˆ]#Ø5ö š…hÔ$F±¡F ŠQQT0±aAĨô^¯îÞ9¿?vï¾¹³3sツò¼ûùðÙÇݹ3gÎ9ß)gΜCB"ff‚ò!"íó OCëôʘÙW¯üÿŸÓ'Óg-} ¥ÛÄÆnÇV‡îy}õ#dÝF~6¤ÿDÄÈTN§s>"|Døˆðá#ÂGX|‚3…áuÒ{@ö¹ô ÞsµNföÞÍ~<ªïHujÿïÕiyÏûtô(}ÑÖ¯<#S¿äçò;rj{Amêú!óO.§“‰­¯&™XÊéøŠÙèúbí£©¼é£òÚÄç"|Døˆðq¹€º’ô”[^ùjïýíûÍë„T†‚V­6&èV¸ÒjœlLªCZéfûbP¬œ>µ+ïLJ!óV@mü”QÛo¥?¬ã§*sµî€ËSDù= °°²TôLÕK­œt<ÖÉË4ÐEøˆðá#ÂG„añá(…L„!ú4ÍG¨ïïèóó“U„è}"|DŸHו¿¶œ£þv‚ו³-2;myÛoaióêZ¬•“i2ѦϺvêÃç0ü1ýnSó•­™ŽúÔÄ;Sº‡m°7é@„¦Å‡öýŒŒ8@Ÿtueðáã6ØÊFóGÓâÃHÆÉ]~‹È¶7¹RùÌX%Æ÷›Ò`îC ] &5õ Ôvöí§5åÈ?Ž×õKúΖQÌŸj:ÿ—*Yæóƒ>È………4zôhH×9OªÁyšˆKŽìÁ/<›Ž¸¿_¾švþî}žðØ$úí­÷c÷6)8¼wÜt;>ø²’þ÷NPå<Òý@Ìßý<ù×{ÑfÅ,>bäyôã:Á³žûmæ´1m grd11“Á!Ÿý}ä8™ÎâŒËjÖYW‚z\Ä`8þŠ„àì.ÜûW ÇñX#;û A>¢ùC?vjê4ñMµEó‡E÷Ö®]K©T ]ºtQ ³V, ËÚ>Å3ÊÆ2À4ÄÁtÍV6œmíhdó›Þ×Ü`h‰×3šêñø#ß,€ÿz&,ý5š­•ò9[¶lÞ}÷]þä“OhéÒ¥“n€—w‚DÇbŒMsiäÿå³nyÞ¸?`À>Ä›;â²qãý¡­PÖkÜrû¼}¦®ý y§‘ã°wbÉ5£øÃ–Òüÿ¾Š¾…`` ¾¡o¹÷i7à“ ¿å¥^Ûé̬—ã×?XŽ<ÃîÊ@ëLÃø§ßâv;Á…gG\±-¨à=÷Þ Ç’›1ï³ÅØ~ϽÐ6îò¬©Ñ»_näSG]‚ÞJ¸vË,YSK-ÜùÍ9•8ã¬C±ò›¹üääé Óù§ÉmÓÍóÊÏÞÁ¤©ïñ¡ç¢î….ÇZt¢Ò’W­ú˜ÆO|•;ì¼uÒ¾[hêÎ8ÂGóÆG¾ó‡Iî–çlÑ£hþ ³fÍâ§žz ½{÷Æ®»îŠ¡C‡bÇw4…ˆð‹{mÆuçßÒV*èšmÎÑ•ô®O¹Â\³•‚ê¢Nsvêš­²ו“û¢^³Í)#ÑÊtÊW>UzI9_Ζ'i´B`Ù²e˜2e ½ýöÛ(**B×®]©OŸ>8çœsзo_ª¨¨`¹­€¾Úž•£<ëfKAßÖü|d‚^ÍaúΆ²œgÛ¡w›!Þ¥rl>A¿ H$ˆˆ°ð­gÑ©cúý˜ývÁL §¦¿9‹ÖtØ ë¾ø7¥R)l(mß2P?¬\J-[”b;÷NYBž€¾…XÈáKï¼qzù'¤çÇÓÿþ¿_oLøóÍøÓ[_ã˜VÿÁ®û\‰ãF §Å/ŽÆ¸GoÄG“úã¢a‡Òuo¯ÅˆþíñõäKpÂm+ñù¢øóI‡Ñ„O6aÿ}ZÓ>ƒ§â¡ç^Á™}¿Çنዚ q=z—|ÓOýö8÷7¨xóBL}~_zsês¼ê;iÐi÷ ÷ÀÁxsÒßñ®³Íxûeôûv tà…è|ø!´ñŸqïsWÐG“¯D¢nŒ@*•BMMM„fŽ<Æjý¶¿9OÞÿbçf¦O<ƒÆìÙ³±`ÁÜ~ûí(//ÇÀiäÈ‘œL&IÒÁ¿VðœÜ51´ÃL;Å„§®ÈÒ3Ÿñ€ÍöÞ9xåê}èŒ=úóöwO§±Ãz€ 9Ùn¥\x,†äâQ¢×(<øñ¾t@ ¼|b{ÔN¹ Î{ Ïß2˜Qõvë~ ]þïÏñí]ñ¬ÎÁ'œ„QûtÁ×'¾„žLÛú,O]ð¾Cÿáì}ð×µC±äùߢW»até;_ð C:ã?OÜ…cûâŒáË¡C.’¿\¶—õëŠNW¿†'/ýÖ¿u?u>tOÿaM;©=ÒÿôâÄßròó—¨løî9«éòý:²ëºˆÅbxã7pÛm·!‘HØÆÕÛ(>àäžÇØŠ<ô!š?BȲmÛ¶èÚµ+Ö®]‹iÓ¦¡¼¼œpÿþý±eË\pÁ¸á†|NîòZ!®XhXµ Òæˆj]²Åé΂Mç±ê·iA¦ûÛphÁ2œáÛÐ¥&PƒÈÕÔÔÐwÞ‰SO=³gϦ¹sçbÆ ¨©©¡²²2œþùØ}÷Ý£H´CßæwèBòü ;m×N¢4‘/@,îà[ï ÏzœŒ}˜Úo× w=1•voQÄ ñ×CÏNz ¸z?8Ë6ÓüéßÃz€ÀrÕ‹èü[ŸÃÅWߌc€•+–¢Ë^»ã¬-†_ó7 çÏÐ{“¸ãÜÁiúŠ÷Àá»vÇ[ó“xä¢ èÑKÿM«[bö Lœµ/VM{ʼnôôÔªJrZöÇð]÷Æê•ë°ýÎ}0t¯Îmvܳn¹³^ßÕ«ç¡°´39«yEQ ºöä_Úí3ì:‘ªªµ1Ð’oŸÂ-¿[H®¨ÀðSN¤ViÇYŠÅbB`ذa6lX„È‚Y°¶òüñý÷ßãå—_F"‘ÀÅ_ŒÖ­[c¯½ö¢£Ž:Šg̘A~øa½ò\7,‚d§Lh«sÎ…åß4W.³ï(Ñaå«9×\á?UË©ßZz4}P$å+³FŸõ:ªÚgä^ðÕ©ö[V,"âuëÖ 2„‡ ‚ŠŠ Z´hòÉ'4nÜ8ôìÙ“ÇŒCÕÕÕ¬8Äÿv °‹ý9Z°LusHþåC[>2 ³ó­Ï÷'ß¡Çb1Äb1ff0v<èDªªº‡GÝò¦ÿáh¤~|ÿÃm<ò‘sèÜT’ Š‹i÷}vä]2>ê×_2’g\¾èÔówácîMÿ½auLoÆ&^?‚}² 7ÜyK¶û­KKiåÂEøh9xh0ùgbâÒnèÙ¾‚>ý?œzÚŒä—xõ«ï輞­Ñrè(>0ñt|ö>úZìßø²¼’jjà±ÜMÝ<ç©{ñÖúíСm*ªjhK ¬Ç5çž:ùq¼rçÙXóß Ôûô‡¸¤´”Ü «ùÍÙ pèÉ»bÓß§y‹âÜ¢¨š6¯Hðþç¡ûo;˜±é+ºíÚGyç®m¼Ô pB¤R©Í[Á‚E äý/fþH$üè£â¥—^±Ç‹SN9}ûöE›6m²õ¬]»V];¨k‚‚…‚™³÷' N„ò ÏÓ/ ïKèÞ¶R»º÷mô±©œR'ÊÑh⯠µ=[›j?î¿ÿ~1aÂVÚ’ûÇ®ë ïÔWLär¦:L|0Ôø\­Só<`¯û6¾†Ð7«LTYGøh|7%˜™¿yå÷€èÞïxqõŧЖ…¼çqwŠ$3ÿï…«µhÅó*X0'™™yÉë¿ ˆé?23¯W ìÂ(êÄ'ºF¿w+íų–¥é‘h¿ï„ŽÜ¡ç.⢠NmñØûß‹þy£¨3_rÓ­bHŸ®¢l—ë¸*ÓÏw Ä£³3uU.ä_ØKtÛßzÕé¢ĸ¿bù+¢ga/~k]º_8wgQ¶×!â÷×])öÜ­7w¿6_|öø•¢{ëbqê9çŠCЉ,æ®dþúåÛ„Sº_xÓ-∞ݹ¬ûh±6„>Døˆæµ:z-sC4ààGÙþ?ÿüóâü£æçY{>X9™ËÕ[nPr÷¨~RêorÐçýÉÉì­ ìÅŠãYNûºØPºè¯–R9ïÕ”ñ\ýÍ –ˆpÏ=÷ °°—_~¹‘¯ò±ª‰Ë{ƶÃDnQ?ëŽWóÍ`okÓ–%Ý$7µŒéø LÖ÷‹ôïéxXK濇¾<ë·0v|Ξ>J«Xý Þþä8èð#ÑÒ9Hmü“ßü ý‚Ýz´P…Ï?wç}§UG>ñôóh÷¥‚AN:*|ºÍ ˜úèßðŸï“8ਓpÌþ}s^ySßþ-¶ˆ /‰Nòª6üˆ—æþÇ~Zdؼé{<0þ ¬ÜþGœŠã‡ôBjÓR¼7wö8ô´-Ü _áÉ'ÿ‰¯WµÄÈsNEêÃw°ª¬ï¿gOZ4ïs,\SŽ>í«pÒèûð×w>ÅñÝ€g<‡f~ŠÖ]öÄÙŒDYqÞEøˆæüèU/Eóqáý_‡gžy†,X€;ëúB-©NîÖ8&€°Æç*Çÿ*€@²@SGÎB£‰Âšø):Å´Æ1ÑôÙçäþì³Ï"‘HओNòµkˆšHSÛN€ÀrËS'[UTºT hxÇÂúðM ¬¹Ñªóí@ˆx:> €ÁéXTê¤ÎB¸ä8^$÷tdv ëÄÎÈub1'wQ Dº÷™´;Ì RâÌùbce}Ä_yÌ fÒÕɩތX:nVŽ/ЭîEVìËoü{Mþý)x…ŽÇìÉ÷¡m®' !ä˜Y>¢ùÃ8ØxÍM‹7ß|?þø#Î;ï<Bä„(af².°äP &k˜•¢Á°‹Ð2S ¡ËÔm Vf]å­rMLTwd¦ÔºP9J!;ýšø­ŽÖùߦÄ>°†¿9 5 lšø'°kfCõœ8gº@v¶ÁÊ´k6”Õê–n ŽðÑ„øH;4z ðúl ˆ¨›¸ê=,Gè4ô-ÍB€wí~½$øªPB°dŽuÝaN/!ÉáêÕ_Ðõ·ÝÍ‹¿_ImwÚwÝs;ºkô¶®Þ>ç0øˆæÆÇ3³4oñW´Á´Ê£0Éò©‚É1%kÚÈq·” µ œ0fÐ0&Ë0õ;Ž“ ·‹Å|têr7éøeJ†R>F:óH4>su=ùTß²j`>9æòL¯ᣠðAä7uäN˜9¿©mød*Õgæ{z¡ÄÜo…T#ݺ2éU¢fAEvÃãŸòß®bŽæx"äá#š?Âà#š?™Ø•ÌÌÙy[û¾gÁRÏÝUs™*K Ñœ°ý†à˜AWF´Òc¶Í—Ù¦kCÚ :«ÖM*¦ðýAUóCйzºd7ä =_yùTôEkFšC"|Dø¨>LúâÝ>¢ùcŇ#3_ A¯cº’ôMù•Ô:óX‘³†ù¬Q”Њr÷¥ËźœEº\RJŸÕࢾrò·¡N1pûvçé™PÕ„Ò¦6 -sR{èxdã‰o¶ç!s­ß‘Úæ0<Žðá£!øù¥ëS„ÑüÑüæGg¦ÓÝñ<ézÒ<³šþÔ²“¦.à˜&—¢–žœ6‚ʙޱ™TÕºÔ4B:³¶œL 4ªi›tíý.·c¢WÇoCNE2µm«Ëô›z\`K^PŒõ:NA<ðÉJ%>"|Døˆðá#ÂG}ðAJ¢çœk­ªÃše% ËŠ5ÐIÑPöö‰É¬§ifG×üü/‚úlóQW¿ºßœ åU5éx–¦YiyhØIèœóâ•mWa3?‡õ‹°?˜nð2ÂG„>"|Dø…§1ͤ&·­ö~c·e*³5élÌþm tçËï snÐÑÂÖäW„>"|DøhþøpÂVÜÔŠÝBÛuÚÎróhC€¨ø54:?ò}/èý§”k>ïêøá#ÂG„>"|„)ësr— [‡íG›3]uj·Ö¢7ßr&§:…n¨¿¡|å0«m©,‡m# m±ê7ñ /'Å …~µLh'Þ>"|Døˆðá#,>DŸèÓÌ>Ûª ;úDŸÑ'ú4|—}SrÒÒEGõÝ.@@FnóX˜ uºöt7Fq5Ñc¡ÁóT³Ñ(—Qé$“^£dCפœàÞå”ÑEöd ÊWŸlèÖºò™­~Râé°A/t2³Ò¬D7Ve>"|Døˆðá#_|Ä3«µåôžRÈQS¨9¨dà¥:0*…z E¢;§Y5z­ßr§¯C¦ÑÏ;_;Ùrò9±áö©ýöâ|hn%¨4êòQå(›f¥­¬éê²VFò ©Ü’ðç1¨¤© Ч“êÀ(+Ã@¬nZ~kLÀ¤ÈBŽƒá#ÂG„>"|ä…Gá®õo%L謹Ë)-teÂ:ì鮞Z‚ØÍj9]ÔÝ lÜaÍŒa3€ç{;!L?óýÝe8Ù…¥#_ùç×°¹ÅteÂÜ ‰ðá#ÂG„>løpòÉÑ$+—N¡lyˆlÚ‚‚¸éžéÙ„N¥Ã–Ó,Ÿ4¶AÅûgIªiä_XÞ™® þ…‰¢Ö4@© Sé²ÉßF«î7S¬[,–°I\óÕË>"|DøˆðáC¥Ë ³ê £„¶ rõY!®†\¹çSŸ)ŠlCÛ “$´1û¦Ýú*¦I–j?Ln¬OP?m@¯ï'ÂG„>"|Døû‰g^dà ˜¥UžÉaÎç‡ôuItˆÐ:ôr1ÉhjØz;)*|a®–’¦ÏºÁ$‡6Ë `ã­úœ59¾K:þjÞa•çÎÚ ›èÕ8švs¦å5)fX ÈýE:¹š7Ú&'E  ÕD“œwÊÈWƒ\M ! I3ÀGøˆðá#ÂG„yá#®î$ šåÛ°Ò5^ÁU”J¼Œ•äÚ]Š&Q'k¾}ô¨WLÕþva®’’G“²&ÛnENV©®ÊeÞÊŠnÅ­Èħ8†þAs«$ðj¬éš´åú4›ê²|™Õ1¬ÛéÚd©9ë'5»Ž.U¾>"|Døˆðá#ÂG>ø !„É,ƒy×èÈ'ÿf«3àyÎ.ekÆÓ%nÔõÍäxToCË+€1¾`N΋.›C 2ˆQÞ5¶¬lr±ý_MÖòá#ÂG„>"|„‡6UN&¼¼–(CØz“ÛÃ,7B¥:hJç>Ëî'æ0©äoC?%ÕAÈ~³nW“Oªƒ w‚x`ã[}RXÎÏu´ä $ÂG„>"|Dø‡É]vTÌ9«eó¤ñLW!2Ÿ+n}æJÉ\Ü(Ȱ]o…?ðú©u4ôÙæ¸gcyÐ{9tëÀ¯ôÇDo>;G+]šöl&_“##Ù®«2â€Ct‚êdá#ÂG„>"|ä‹ã¡b6“CÌç`ÚÓšiCš+&Þúš[ØFóeÒSª®ÎŸÒÄ`5ÒsÔÛ­nâ CCC@"|äë'½•÷f80R7‚ð¡ÐÂ`¶nW#|Døˆæ[ NˆU¨Î©Œ•ÌÞê"UÇ8ÉTÇð;A².K¸f—¡3õùÊ+m@CŸZ.§/š|Ï }2e•ç ¿Õk»†zú«ÊlÛ̯šúrx&V›å\#[[{9úÀ'6Ñe(úÔ*=‹ðQ|0„ä€Ã‹fÀgà>¢ù#š?~øpt牚lHWÀA+SÝ Ì¿œ[òsµƒJ9ÖíÔU¸ÜžÉ4(ï¨ ¦VëJ_°å,X{nlÈEÅzYå!`š–ç& ËôÊ+t›_DE3p䜡kúdóIÚMÛ×q=|L"|„À‡† Šqù×OâªË¯ÅZ8L~«yh|¨ü†gã5¸äÌãpÎmòfr"|DøˆæhþøYà#.ŸOz“ΫɫLY±‘E¹Ôxj&n­YP=Ë´Kñ,H÷ž’((¶E`|’@úLŠ@ÈÂ#²Ñ¨á9«É,9á|™ú“C—.ù¨jî–éÒñ(ä·Vn@ÑY«, &{’M¼™@ÓV„øðWâ©k)¸ \€à82½®+‹9Ùgò5vï[0ûr{yíTöa=ýÁxn•)ÂG„hþˆæŸqéeVVÀtά ,h—òLTgÚU3ƒë2©çuvt–íõÏ–ù\å—꘩9ƒÏšC=gP5°žŽ†?éäbsâTi× `JtfÒÈ]{Ž/ÿ¦Û¢'çÄN1™^ù‡I>›C§&ߙѡTæacàC·²Ý¨1½#éŽjÍ¡ úBîÜŒ;y• ‰Dˆ1ç±ñxeñ rÂ98bàN\Üs(]~åèÄU<ÿ“ϱjc%•´i…ÂDm:lËÚ‚—Å=úHg‚äNº£f¦-ZHütïMgñ­SWã‚!mèïÿzg>ùO({šúù.Þûl?tñølK!J~üšžzgŸy÷—xòâØ}Àé(ØnêT=7ì8Š&?v/w/eüâiÝ^Æ1ϱãÏ@Ñçÿ¡EÔƒßûh2=0¨ÆÍ_ÁW>ôoŒ½äh{”ÊÊJH“‡àm|Ë !žçHÑ‹‹‹Ç›>¢ù#š?šãü¡Þ"4®ÈÕ•pØ[ ùîL;ž0ô5ä³Ü ØÍ²*¬¯>·@L;¸Ÿó-ÆÐÍ|ñ1räH|üñÇèÚµ+4‹¬mîã8ÊËË1cÆ ´mÛ6ó´‡÷逅oÇçO^‡%3'c~b_UòÅܯžBëT ˆÅ"üøã>|8Úµk×uÑ>‰D~ø!ž|òI ><”õe[ÁG4DóGs›?â:SªÆ„È̬»îÊr~ÂцÌE IDAT„¦3Z2Ríæý1˜ Y9ßÖ*Ÿf/H6µ¼ÃÐÔCÄx”Oœyw¢¡#§ƒ !ú£»ÞªûÖéŠÖ [_¯B3L&^ÛQC}ð6lÀ|€víÚYûR¬ø@#Åù q|V'o"Z`üßžÃÍø#ºwÿ;z÷„«ï<’'A………éwà‰³ö¦?Î>ªšŠvX‰W7lĆ sø¶kG›Ë«y—ýO ½{9R?*°¹¢+ùõa™v[Ñq'îŒñ›+áÆR`&0À gÂ5ôèÑóæÍC¼5¢ ãü”͉ós÷ÝwcùòåÍ ÑüÍÍqþˆ«æ@1¤[å¢ÎÕ´B$%ãtNÂHÍJQ>·%ÃjÑx¾]9ÓmΩ5}ÎqŽ3ìbB%µôÂðÝö»N††]v6º87¤¶kÙ øú ‡•µ…¿ZÝ …iGcsL­> °jÕ*´k×µµµÄÂèåùncÈëW¶Ï›á¹¹ q×Ôñ\‰Àƒ£`Ôi·Óâ©ý@.PÐcÀï^Z„·WoF_ÚaïB­Ï¸˜î¹ë7à-Ëéî»@¼u[© ­Â'óØ€JLyq1—·…Së‚Y€5øH&“ å5Âó|ÔZz‰ÊËËѾ}{+Û">¢ù#š?šÛü2éþVM¼:³¢ÎIÍd&2!kœ#­;[yÉÏf®Ö•±™B5AÐ5W#Ï4·ھñV×7SLƒ…©ý€HÆÖkÐ:^ÛÞ3™Âƒxh⫉_ù˜‡óÅGAAr%yâ#d„åFÃG˜#ìÿ[wÀšÙa·'ÞĘчàå×—âØO@k÷#lNcé‡à¸›g Â]À÷Ÿ/ÆaçÝ‹1¿C;§Wß ž7 ÏnÜ]]&ŽáÌ®ÇÀÃÎÄ)åW ><ÞOl9Wï† ¯=…Uk6Adö2}‰D¢^ø°ñ7ß±-Œ›ÆL]±´(}ÙÖðÍÑüÑœæ¸l“V¤ê ím((×`u6¶ s§áV‚ê°ø¯?ZM˜!Ì€6™ õʦM›IRÍ~nº©`â«”tfTù¦…Î$­«SgâÕE_–Ÿ«eu)2 ¼e“£¦º3P“)¬le^›nðÈ1d uç¤ûh> ן›>ÒeÚâgç`ÏLÄKÖà„[&aô¨¸hc==é tݱ¿úâÓX[§ªŠM¨=àPìØ¯ º¸Ó¦õåǧΦÂãoàÎE=Ú€…HŸ1ö>ôüonwL|é]v¼™n}z¨x>ž{v3ZŒX̳Ý7K|äÄ!Pth[ÅG4DóGsœ?ä\„Ö”nbÛmíL+é0»¾ ò6§º ]QØUtÐîÓT‡­o&²Í94hl3c†é£-oSPŸªº¾鎉Æ0»ÝúX.òÁDZÇ‹û�zõ ´·I|p&°ºÖ]©î#\À‰)o /J;{ÄåÔ"„ Ç{‘˜ù:Z³ÃŒ3ݺuÃùçŸÚ³-à#š?¢ù£¹Í޲âôV¬‹¸kŠÄkø \÷±íNt;ùoÖ”e“àe—(Dû&J_N^%gxÀM•åðY៕7:ޙ䦪Õ64+sc¿Tó¶‰WºoSÝ]±Š4XäÌ^±Ì׆âÃÒFóÁÈÑ0D–—&|ê.€œ´¿z¶ ³÷¿ì‘SW9œm,ÂÇ6…hþˆææˆ9UŽñÌ\>s4]ã´¹êÒ$È+>Sº ÝŠS¥C=gbž®œéì[×vÐG:¾…ÙéxWßÁÁ–â$ìŽ+ìÎ+è7Ó®@§—AõÛê2éusCñaâusÇꋠó_°õÍ4®‘7úJtþrñaÒËmÑüÍÍqþpl ÉYû[PÙ0@ jÃV^ü/ŸÁ)¨í°üɧo¦"|äƒ[{Û2>¢ù#ÂGsœ?rrz¿CIØh¸ªhÌ»eÊêt5U“DQ`—sK¢±uyÁtW~Õ~jRƒà©7 ê›KÊ2Øør`é;5ž.Qª$¶|QÙüK†ë× ¯´5qR´ƒvˆÝ¯O7 1_|y¿4ésr­Õ†Q„yá!snkøˆæÍqþˆËÎr†B9 Ÿ/Ê—§HêÊ$£s›¼Ré‘•Æ+§Kü¨©ž4×4YàM¾þlºQÉJP4ÖíP ÑtÙt>¯ C“/Í÷\R0_9]äb)¼-4;KÖÝ6áÜ-£/“œPU’….MT^–xkºB«ö²¬uüõLÎæÉR§‹d½Sô“lªÚP|húá#ÂG^øP2Í Ñü᣹ÍqÓªÎMwv´Ò:£µ]™ s}Òdþ 4N¬,(¨£)ÇRØ`wa®v }5½«sÖ øÍ\-è^åC}®çZ¢çåÏaÚM†åW}ñV÷#|Dø‹íÛ">¢ù#ÂGsœ?â€/˜jî#ÍîCÝhhô1åÐñš€a¾4Š Øpœ“2ÀrÛ‚lgâŠ)Tk6Vͼ°§‚ öY=O¶ý­æø JÍ`IÅàëîÜØD³Î<.Ó¥ãQ>g憣2ÉJÃ9µY蜠v’~’øŠ…¦>òƇŽöæ‚hþˆðÑ\æÇ«À”ÀÀpk@2•ùº´–3t홸í*¬îJ¯ú®®œm&쾉¦‡i7aâ³éª±z>,M¦U¸JéZ´­ùîÔÛ9¦«ýªüL» ÓŽÞ0XùkÓ¡ÆÀ‡ºã‰ðá#,>t»ôæ†hþˆðÑ\æÇp¶ÏA—Ï@-ÑZY§8¹¿ÔsO&"VÃÔ›jŠ»£+gSJÍ9µMð> ùZ1‹kƒ¤œ?mq=X—I=ó×ñ@Ó†&À›ÇsMûl‰AÃ&󳦌,/+gUÖŠnZt:bY£o:§Ý>~øÐ` ÂG„?ÓùñíëV­¶Ð÷A~¦Õ°m§oSPCfrë$ ažçå×VÞÒ?(€^Ø]b˜za-/õé{>ñNò¡5äh­¿DC?ùâ#žGøˆðÑŸm Ñüá£9ÎŽîØ‹Ãt6k&ÕcPÐÅ1É9³£ô À¦~•wþåœ#úAyò(‡î°¼QéUã˜äÓv˜Ä¦:ØøfãgÀàN!媟 ÅG=åá#ÂÇ/Ñüá£9âC{Dh2©éê 4oíÕ¼Ãæè¦üp¾4˜$Y÷Ý|å|øm:zÈ·í0r1ñÀFG#é‘©L¨~Føˆðá#ÂG„ùà#–Ê V¹!7ÞF ÁÊ;ÙG ¦Æ11­ •@hjÒG_L™v5`œ²ºç U®.È„œŸC®#\jY^º`kòÎòS ¤Æ:Yü²·,4áŒ`1õKÇžÉò3•Éé‹I^ùað!óÉü/ÂG„->ä[u‰D………9–†mÑü᣹ÍŽ,hÍí ò˜¬¹JJª VŠÎtæÕ%›ì²e:rÞ·<“#•¹=µœ¦ÞœßÕ÷”>Ú9å«Ê¤¶ÌZS»,t•wÞõWé]Ò˜ßI¾&«ðAgZöñFî‡g¾o¯¼¢¬d¹¬3‘“eÐSõL•ŸhŽT4 l9}SøÚ`|ht,ÂG„Pø "¬_¿›7o¦Õ«WÓ²eË(ó(to³øˆæÍmþp”Õ¸J8l«g4 ô¹¤¨êE#ÐX.̺N1™¯”g)lmS¼ÒÅ¢i”3ô°´(€µŸ>"|üÔø7nµiÓ<ðn¼ñF´oßO=õåÙŸ>¢ùc+áÃÑ]}Õ#Ì-0QcMWCƒò5ÙbØbY˜²k‡é—a· í³®=ÛUW[ _ÕzÔøAY¾MQ…mïõàx9ïéþojÓvMZ'›ÌlñV‚"›®†×ažGøˆðaúüæ7¿Aiiiöÿ]»vŰaÃÇámÑü᣹;@£–¬æÆ2òïA ²• b¬îziÝê»¶k«¶+›A×]Ö·=×Ñ&° ­|ØraÞ êGÀ„)g’u¾€Ó¬¯>4>Âò%ÂG„Ý'•JaÏ=÷DŸ>}²Ï „^½z¡¶¶v›ÇG4DøhŽó‡£0Óe·–½ôe§º¬Sšú›!KeÕày,Ó¡óÎWŸyå¥÷XnC)£Öëë¤D˜šß}ï)}´íÒ|ujn²èú¡uØS‚Ç©|WßÕ&ˆ•¿)|0ÑlâMN;jâM9Ņ湯=­Úrø¡é‡úž¬_9z¦£EÑy4>9Føˆð‘>'íÍq饗fi»ð ±Xl›ÇG4DøhŽóGÜ;/ô'ÁÎzìsIž{g¡Ð¢» s’cé<_iÞ5žE«þj’Ïè;€ºÛdÉOå B½a‘C›æFkΰ}ÏÚÔ›¦sc¯œœiÞÔgO|üÔ´AªÜ$gDÝM§E…W9¼ÐÈYÎYÜxnná¤ödY‘Ì%oW£âC|„Aøp‡àÈ#$"Bii)?üpàÌ«Ùà#š?"|4—ù#”ÊfN³E5 “ÉÚ–áZ—Oª>fƘ -!ýü Óg[a[Aï™xk3eµFnaé²ñÀFGÓ·Ú§|¢§ëê·å~«>L‘­#|DøÈíÚµÃðáÃQVVf”ÿ¶ˆhþˆðÑçx˜Î«Ø&ŽÆJµðS|Â(nXE;4E³lXçFÕ¹¯©õB§ƒAUCih |lËŸ?->¼÷Ƈ¢¢"íBb[ÇG4DøhNóG\ב Õy'¯ ]B>y€Â¾ÛX;‘ §¸ §È°õæÛ¿0éòáM>N~ùÒÄ»ÆâE}ë 3™…y·>ޝ>"|ÔBì¸ãŽÙ¿m–¤mÑüác[™?ÂÜfK²‡è”þ„Z†ø=_m¦mül㘼Ó(qLá÷0eëC[ƒâ˜4B_êKKX=äèEÎN-ÂG„|ñ!ËÇ÷f…hþˆð±­Í†ciÊjR°!hWΣBê³UPëÔ–·H¶ãKaÎ14fÉ0|¥F ÛF/ô¡¾íš5mtÔ(aiAÈ~rCô»&„¿ƒr†ébÔü¢ðQÌûwǪŒ”q1ÂG=ðs*›Ž%š?~¾øˆæÜ ræo9åê–vr— ×Ý}•RxÿäAGD´©ÇD2eMýŠ,l&Øh¢Óq·zëÇÀçFÝ¡CÚÚZ¸®ëÅ.ÊÁ‡-˜ z£'ڡׇ.\×ÍŽqŠOüœò¢-Sy!€tl+fF,Ë.\×3S<Ï*±‚\×M;Äë\g]×%!ÇA,ËÒm¨©T dz !¼ºn»ÙðåÇôQ^\y´„À_³š?L~Hž^èx¢)›3k¦(ãccXºsxizÞ,Xê&ÁqßæY ÈJ@Ú‹•³Effd@ŽššlÚ´ ÌÌòî;Ïsìzeý6”©è~6õÜÖu]´lÙÉd200#(òdÑ€]ÝÖäo%:BÕ¥FB ‘H ‘HЖ-[²1V¼c!7¥.—••aíÚµX±bZ·n•µü®<fþq«V­PQQ‘sSF¹ßlðÑzJ7¤\cœL&Ñ¡C ªªÊ5»¾Çq¸ººëÖ­ËÖݽ{w´jÕ +V¬ õë׳·HêÙ³'b±~øáÔÔÔ€™ÑªU+tëÖ ÕÕÕøî»ï²:ЩS'´oß6lÀÊ•+½AŸ»wïŽââb¬\¹›6m!‘H {÷î€%K– ™LBÒÒRtêÔ ÕÕÕ¨ªªòíµ¥‰=éuÊ:+ë§4W03£uëÖH¥R9ü àñ67Ⱦq±X %%%`æ,– ‘H ¨¨ÉdUUU7c¨®®öÍ -Z´¡²²®ëz åìæ­²²2[waa!²ZwII ÇãqcÝÙF<§’’v]Ù:ŠŠŠH$P[[‹êêj¹nÄb1$“Ißómqþ0Í'DDŽã°ã8 ".--EAA9Ž#Ç«‹Ê/Íàœ¥R)ŽÇã´páB 4ûï¿?WUUÕ×ÖÄl3—6[oaa!}õÕWhß¾=:tèàí09äû?oXº~2o,Æ °zõjôë×555°Ë±5pH}ô•¸®«îà}cfN$4oÞ<ìºë®,¿(|ÔsìÈ ‰Dß}÷Š‹‹QVV†d2ÙèøBPË–-¹}ûö”J¥P]]qãÆa‡vÀ¤I“ðôÓO£¸¸íÛ·çGy„ð5×\C .äT*E‡~8_y啨´iþù`fTVV⪫®âÃ; |ðÝ~ûí())ëº?~<¶Ûn;L˜0S¦LAaa!ºuë†ñãÇ.ºè"^²d ÕÖÖâ„NÀE]„™3gâºë®Cii)\×ei¡µHe&–lœé¹7ÁP&ØcvwŸY°Qaa!fΜ‰>}úøŽQšãüQXXˆÚÚZ®¬¬¤½÷Þ&L@uu5N<ñDlܸ555¸à‚ 0zôh|öÙg\וÏÙ²Bö¬QÞ»™²9užëê–||´èht| 2³gÏþÅͦ㺠ßshv]—TÙy õLÐY’tE·q#“n¹®Ë:}Qý‡< ¤f‘$ë‹OFRùf7èê]³f Ç¡ÂÂBÊGò~,Ï\îº.’É$%“IÔÔÔ ¦¦Ô# „$:òÁÒ—Ë~' TWWcÆ 2Ÿ£[ —µï½D"uëÖeM×!øü“Þ’J&“Èì ±nÝ:´nÝ:òÁj<ýÏÑÊÊJlÞ¼Y7Ö5*>äIÖÛñº®›õ@p‡2~T”qÀ§x<îó£bfÄãqŠÅbBøŽÞ u£  ÀÓ/’°ä:ê‰õ,UŸ=ëZmm­7ÿ"æ"BAA˜Ùg•øNßI•÷ÉEɲ#Çqàé…T7™dš©›R©”Ïç0ãï‡d2™õõ2Ô­ê IôÁqœœçÍaþ0yË–-Ù…•g½’\|²FÙ[}fÀÉd’ÊË˽4 (((;X=Õ÷›BXÈÎ60I¦6èt«WƒØVuP`M”ØlÉ\ÎÊdgÛ5±«F›ÃÛQ°Ò®œ"ÀÄG_U&š…Ü]²ìtýðñOáÇ#_z¥ORɵ;cYÏT¹dSèÇãY•ÌD£ã5[tŸÕ6šÞà\PPóâ/4*>2$IcÝVÁ3³ã8‹ÅXòu"Ô¥Àɱ>INîYß(""Ý-9¿ûðÇY4î8‰„Ïm¤±ñ‘Ñg–omþæïÿ>|džsAA¯=oQí½Jr¢x<î£ß»u®Ži^Î å9{—$ýÊ2Ê[€ËôIã%Õ©bZ~^yøÓeëiNó‡&œoÙ²©TŠâñ8ÇãqO6ÙWÕ¼—±`É9+ÄLGIý[*—ÍÍ£Ülðý¦<ƒæ¹¯cÈCºº ôÀP&§/¦>I·+uôeÿVnQdë³\Y¦»}H±B’á]m422ÉAΩ•#3ï7…GPx›JþÖõË@Ÿ,µÏÚ2:š 7¦H³'õ6”¦l£âCó,ÂG„&Ň\®)ñ¡Ó©hþˆð±-áÃ+SYY‰šš$“Éìí_ùwG€wDXSS“s@½v«º²ãÊÛ<§yGMÒè»fšOhÿsŸVquÑZM×g½¿Uz¥]3é¾ó5OÚø*ƒ3ˆ7ÒN‡L´êÊÛêÒñH¹ÑG¦oCì52Ñ¢ûÛtcá#…á±wTcø-ÂGáÃPg„&À‡An† >"|lkø@ÕÕÕTSS“ ‹â»zõ¡½)eÕœ>¦ô>~Þýˆð±uhÉ·ž>¶E|$“I¤R)È>mòÇñ¿›]`±÷’i%é½c[z‘NóL ©;ÏWÏÖ¹)v :~†LhÉ ml+§~ëÚÍ“Gy½¯á%kvYœoÛ!è2òÀÄ7?ʃL½¡ú©‘±uá£qða‰ácdž>¶5|àd2ɲõJOè»Eè­Ð„äùc˜Ë‚Ò!ͼÂ4§3=ÛUWšj0;K4Zh$§õw5j­Í¼ªž«›¢Ýªu¨ù”³g‹곘kúL¦¾›ÌÏšÜKÚ|ijFrL|SoÍ©ü0-r”ʲ¬O?ÓÌ®£5Œœëc:“¹ÞDWž7ùô©¹ãä»…úö¹9á#Ì8Ü|äÃïhþøyá#š?ì|5µ§Z°ä«Õj²"mRNéê$4 ‹e“_¨wÕ¶d±ìD©{7¬ç£ìÕ}ÍÇ:ßUl5ØŸÊ•>)z2+Ž‘9ô%ëVêÌ‘‘©ïÒõòœöLíêú óÀûVn‘øè³õW·«Té×ìDXÍ|nã¡’Ø“•‘'êû¥àÃ6F46>,úÚìñ!ÿ¦$¹n|˜t9š?¶|ü’ç>l§ Pú) a͹)É kLœl;s•€©‚[Ë(%â,kBà«eX21²Á(ÇÏ!TE yþë‹Ï¡SR›ÿ–ZÆô®D/[||±I$s,[S]ªâ›À£ë‹®_A|ÒÉR UÓ-Û/ÝbLF‰M‚Ä¿D|ÈýPeÚXø€&NÜ/¦±º!ø€!Z4üüñ͹ø°lˆ}?Äm“ôÏ5g÷¶UžéÝ0©Ôg¶k˜d Mwm40̾ZåJŸYÓ/5(›Væ™14gã–3ykªÕwA­šCdtg¼tƒˆeb!ýÑñ¡“Ë/ š‰¬Qñaèg„mÑüÑôøˆæ;>4zÔHÕJ9Y J¤jÝ·ªtÊnG©ÚÀ;uÐóÕ©–Ó9qÊüTÚ"MÝ92“Íþ¦H¼ X³ÃcÍ ã£O2+ç ®^$^Um4 ÌQ/Q­Í¬Dh×ò»1ð¡› ¤öY¯ÙvýäøÐY?: VÓâ0{s˜OAHs~ëâC.'·§ÿY•i|X>ÑüÑø €„Œ>Õéà:š?–S(£K7Ðä¬h%Ó gçª÷=Ë=•AéåëÑ­ŒuÙÖåµýU#líCwË@í—zÓ@#XíJ×p›Aç_CºÛ¦¿u»3ª¢å¡Š¤3d_ üSvPLÙa?wÀ$ _¼²:å÷õQý?‚ ¬ ¤ÛÈ-ºd´¥§5PrËZ¬ÞXC-ÛuB›’¼YeYömhT|Ø,+‹t?SU´vÝ8%¥èЮ%0äñæ§À‡J¿Îb Ç‡vÒ²âCc­QwÁº¬õÀGÁìbÃÊÕTÁèÜ¥=¤gÇ̹uñá9çšx)ɉ4·¼BáC§ÇÑüÑ8øHa›×­¥ÍÕm;tD‹ÂÙdš/>lóGãâãç7Øða³†:Èã£4¢ †UmèºÃþt³£¾í릮`m}4ÝpQ'Û†òÆÛ\Rk°àËO±ð»Õp•8LA·&ˆHU`þ—ŸaÁâ¥HŠôûœ;Èäüm2©kvWÐìxCËËtë$L„ä‘Ü}ˆ˜6éVtëÞ ç<2 8øÆ‘Êï¦ÂG¾ú‘>Ò4};ùNôîÞƒO:+•±â§ÂG˜›šAz.¿›ÿM×÷Ñ£gLY IDAT`|x·àÖCËнlÌý±Ú~–°ð¡Ò䮓¥ 6¾DóGÃð‘.±£OÝÝ»õÆŸûV6±5 >Âȶqðñóœ?ÂР~Ù4'­ÌXw~íí’ˆ–Íl¬8˜©·TɹI ïXäuÇÙ`Žìí–d“²¢(,ß"ñ6‡º#Ùd¨ÔÃjýŠƒKÁøØkS2³J“\Vá³ú·¯Ü„¨é—Ïþ úì6€û =WåšÝ³Áèd¾ÉÊè®|‹ûï¶'÷Ùí,þrM¦mÿm¿aÚÜá“¿$Kϲ\ç|èÉXê£G‡¢CZý‘ä('JcÍÄës¨UËè1í¤˜t]€"‡VÕé”\Stú·ÆÁ‡ÅŸ#Š3±ªû¹W^ˆrø € ZV£@eE…×xýñ‘áGFêC Á:Në#ÛËïªrQ±&÷YÒ+–ŽØàL å˜Þ1vJ ÊØkƇÌÑë?ÇñúàC3I/Ø€M > s6fÃñ`“Ρð‘{Å?šr[}þq‘a¸ÔoâÊÊJå\› €ù#T‡aŸMŒÿãCÑsj"|èôYKâ§BùËû?œÇ´€’PtG&¬˜ 5ï{cµÖHÞZÀr ”öhð( ½U5õjëQ‚µ)}Îñ/Pó$…69† Æ—slÔ¢U{´(Ñ©%z³;éŽ>¼Ç±V­Ñ’€--ÚRA±â£žÀüudžI^àô@OòØŸ¥=S^0ÃÉUõ-ð)ù-ÙòÌCu7¨q`dݎцôn#K‡‹ùÍóª.3 †×ä’/¯“‚‚&¦»%ȳHZŽ êÑŒ`&‡ Ê&[žΉ¸’{ÖQ'³ ijr—Ü,Á ¥ãjfÊÑ›¬~pF](o|°W¯Ä,Ÿ3Àêlòµ1ÊHw,cagÎÑPîq[Ý^Á‰@į ð‡f…!£ž£ éÆ îÒ“˜`dô%SV\:œè|žLÉ’}øÐÍùæG94hû =Ò±¨´”ÓòÜô3CñÀ ÌPR)#O“3<üÎà,ëÄ $K‘ÿ R#d_Š•)ÈÉ¿iñ‘sªuˆqD¨u~¯Ïü„ÃNqüL?Þ¢’(}ŠùÃ{oböwKŠ¡ ¸%öz,¶oW‚ÈÁ¦Õ˱|SzôÚ -hÞzm6Ôîˆc~½/Š2¬Ø8ÿ#Ìøô+TÃãıû~‡a·:€ˆ‘™2±-|ÿðþ³K¾_‚jQ‚ž;”¡@£9YŽ%?,–¢{×Îp€Y@ÀA Àº%ó1ëƒ/AN %­ÛaŸ‡¢C1,²+º¼Ž~2‹¶ÊU‹ðúìQ“b$SŒî;€Cöݾîh»¦?,Y(FFd.Ú´-CûÒâŒ#ÿÏë#˜s€ŠM«°zÍ&Tº@×n;¡´…“•ÊWŸ¼‹ù‹WÀq´/Ûî7qJãHÔTbéÒH‘ƒNe=Ѫ(ëÒr€dÕ&¬X¶ µ­PÖm;”Ĺ£Oc+D@ª +–¯@y ¡´C7tj›ÖÓô„¤°|é TTÕ¢Sç®hÓº(óv óÞŸ…K×$Pܺ=ö8Ý;¦ç@U†™ÿ¦ªÊ±dùJ   zôè„XFç‰ÉÊõX¶l5â-;¡Ûví@`×…‹¨ÁGニïVP<Ž®»ìýûuAxVèÐB03 ×uEEE…X½z5óÍ7âÃ?ä±cÇŠ#FfÌ,„ì•WÿÉ¿‰ôò?í;êûÒß^e‚y£xè†#D@ ýˆv;ôç?Lz'[÷¤K÷À®âÁ§^çž8 Sn ÿ˜©óß?‡{R¶@ÄÛvåÑz\ÔfhÔÐí‘b¢Sîsot¼’Ë{¼=z´˜6mË|²Öë¦é¹ç×Û ¤ˆ3qîÃo fë¾zM½_/Ï„™å]ï#GñÌU)ÁÌâïcF¤ŸeùzÜùeÚªOþùb±kY+ᯣ…tôHñîâjÁÌ\+Xpí7âðÝD»þÃÄ„‰÷‰ƒvˆs¬ZŠsÿòøþóbðŽíY–á>Çž/¾Ùœé׿oÅÇõÝv"Æ>ô8¸G‘¯Ý]÷9—g}Yå1…múc’åÌ™3Ź瞫ÓEff1eÂE @œõÀléùF¾íìƒDI¡#Š{ ÿúb-3³˜?ùÿxÈN|ú€‡žr¯L¦ë­üî]qdwˆ‚6EÛ¶m¹mÛ¶\ZÚVtîR&zôè.Ú$â✱OjñQSS#˜YtÐAbÓ¦M™2åbìE‡ €ÄÁ'_"*™'këð¶þqÖ~­-ºŠ‹Ÿ˜ÏÌ,jÏåKÝO´Œûu¿eçÞ|Ú¨‡¹’9«`ßN¹N¢ëþÃÅZfÁ+?á_ï Ѻûiâ—3lMëNù7“E·Ö$ÚÅK*ý¼|ü¾kD—VY93ѳÿ|Ù“ï¥ûéº"ó …ïûµ¿_Ç;w)ñ@k>æ¶Ç¸:óþ¦/Ÿ-1QÚ¶­h›ùWÚ¶wéÞ»wí,J:ì(®zd^º= [·Ür‹xì±ÇØ6a:ÿçùwƒ!€yöwUÙ¾nš7•‡ôì q1ð¨[ÄêTæÝÔ qíè_‹˜2ö;ød1ñóõÌÌ"ùÃl>¾-w×>µÀëg¶î×'ý^¼ó^Šï\,’"Ÿ1K ågŠL}ãymm­`f>à€X!\×mÚù# œMžºq×Ä©ï¶zꞥ~äóŽÛK$N½öžì˜ï‰(ùíKâ°Þ1ö»‰q3W13‹5s§ŠÓ÷ßCÑ{p»î{ˆkïxYâ÷J>á îHˆkŸZÈÌ,Ö}ôlÞyðub3³àT*ËŸùÓï-ˆ^ÇÞÁ5+MçÕׇ_•‰ÃO<oI—K¹Bˆ&ÆGÐwž:á)h½ç…ÁÌâ•W^ï¼óóÍ7bÍš5\QQ‘Õm!{ ,6,°xĈ2`ÔïyŽ}¿çû®`ì¦ÒOÿ<¢WF±¼ß!—òߺ‹wß©,+ü'çodfæœÙ“BŽgž·ïÌ»ö?“+™yÚ'fÏm{ö=…~ð>úàÙgW<ó.:™Û!© ,-? ,–X>ÀIõfËgXüاrÉöe˜bÅÜ{—R¾}Ê—Ìîq@¯xš»Áwÿ'ÿíÏp¿éþ ¾€Ë™ùõ‡nçþ‰Ž‚r|§=ùÌ?LefæþyC–Çûu ?=yßpÉ©\’w!§ðjªÔ×¢O’ºÅS¢3ŸpÉUçþ«Ó¼(êÍS¿d‘á„`fþ|êÝ™z»ˆ·W33WòMCŠÓÏZtäKo˜Ÿžø Ò#+Óþòa¶îo§\ÇEwÝ8¯ef^=—‡”€¡œY`±H“7|õtZÞ¥'ðâŠ:º'\ut¶îýŽ>ÿòÀ_ø˜2ò‹ñ…O|(ñ<^{ßϼ+[ïÀ“®Ï=û_þ`Žg W'}™Y¬_ð/nWÚZtîÒ%ÃóNܵ[w.‘tð·÷.T½¹å–[Ø[`éÆ0›~)¿ ý˜&á7û|#ÿn0Ø™ßZ˜ž¹Ö9Uìä¤u£Ãñw›3ï–/ÎÒ-ÃÇBqÙU|ßÍ×s¿ÂÌb«å^üÂוÌ\ÍW×›ðžÇ^ÇI¿Vñ C;0îóÛñ‚™9•L±e|êX¤ÊJ飺ÀÊþV[[ËÒ‹]×mÂùƒ7ÐǺq^ëmsA½Ï䋎Oëb·aüé*¹ß;Z±.ûñ"ff÷[>}‡Ì¸]ÖWÜ2n"Oü¿±âÈ=ÛeÆÛV|Û‹ß³´ÀbiÅ?šÈÝ.èü[ÞÂ,8™Ì é×oOÓ±ÛÕ\©aóW¯ò@oïØ—Ï»ñ{ýi\ÁNÙ€#xQ3sÒ£ºÉð¡ÖiÛ|étE³@Αk>ó‡f ’XœY`eu[^`…²`W]P“… üj3ý½vö=¢@øÝïÕÕ%–‰ÓwI+Xcf»Svw~Â¥·‹ ^«K§‹½:¤æà«ÿæksÜñƒÒJÚë:‘´ô+`U¼Õ-Xé5Vú»üýûD)ÀÉ›3¿-}ënÑñ^ñ™þõóN™‰}Òœåég•ïŠ"@ ôx^XY×ß1‡´Ä~×=íãAÅûãE@`»Aâ½å™çî1`—N€h½Û!bÞJÎ.PÎë×:3)tL^–íó‹cNDÇýNK™×~'NÙ7c*ì+¦Í¯£eó‚—EiºO¸úôN/éZw :Y[°.N[°&ÌÌU⦓2 ‘¢íĤÿ¬Ì–}åo— ÜyÐݾz6Îýsº|¢xk™¶ f^-NØ£sºŸmŽo/qåÑÄjÁJ2 ®üTìÞ«P—Ýùšï‡G÷¸ÿ°ÿK×¹âM‘(Ï~°ÂWöþ L/‚Žùk–¾ Öšÿð!@G‰%Škã‚çÒ}(;•ÿ·%£ &‰V­ÄÿGês…øãÙ·ÜýhñmUx|¸É$3³xîw»3>öÖ§|2›qßeiž'61  oü÷ÍèýCÏ+Ré…©Æ,Ù‚0>5‰ëÃM,ªMã^±ôXUÖûJ±Fzç͇ÏKó»ÕÞâ‰/7×ñ`ó§â„½JÞ÷¢3óÂÇ~ŸÞu9@Ìú±NÿjWÌÝñ¤Ï6 f©Ö"“å `Ìó=²`5æü²ÛêkÁ A£Ï²&˜™—½*Z·„¾Ê—›øÊ#KqÜ%ofæ¥sÉÌk;‰ykýt_~xï§_=ÕhÁÚôÉSÜ à6=/Ì‚Sɬõåã×îDÁ ›¸*SïG¥çÑ®ÿ«®›ïW½õ˜hŸÙÌ\öWo.MŠµÎ†Z°lóiHYÊ´„²`9MqìØÐëçž‹ÆKO¿*]‡ž†›Î:Ãu 2\:vÚ(¨\ŸvÖÎ\ ØiØUxáÁ[Qš©cîë30o-@]úáÎ1£$áº)À÷^‡þ­€–Nk›°?MÁ_Ï·yÝÆ-i'òT Ö¦¤ß¤–þˆg¦/®{±í¼÷öëxöùãà~mU«6d®OÔ`íÚÚ¬ÿÞгïÀ˜±÷ã•;O÷µèÒÅEi÷½8|÷WÄpõmcÎHûJ¡=ö?zwÀŽ'ß‚ËS†Tu À!á5€õRØR À!ÀMFþå¯8²/À® ×ZírºödÀ'ÓÞ‚ Æ¢ t0ýN[w!î½dþô¯Ñ¢ã®xñýy8mPç:‡|‘ftùªgñîâÙ·Ûì{þ3û5<ÿÒôo›9‚wSH¥’pµ³×>xñ³ô}ÏNusÀ‚ÓÇAŸ¤ ï‰ó~Õ0sÞ{¨ô~K-Æ¿žýpáM‡§oˆ¶è†»îº ü.NÜÅWU‡mÒò,ɇ3úONxúæ‡P`ð9c0áìAR‰üþñDZcG`Ëç_âÙË|8óI‰4ߟ5 ó7Ô=?ìwã0ç…gñÊ+·¡(ã7çº.R©¸?âø#ŽÅPvžyá t‰.(d؇¦ÿl‡ÿ½ù<†îu¾u]»Ÿ~1²¿¯ÆÄ?N\ûð“8«_«ºW[퉧»ðÁã³°¨ Øùì“QÖ…€•ïãÝÙg‹.xã,€]Fà°þ­Ó;òô; ›º!ül(ÿ·¦üòIöLD.€²a8k@{ÿþà£:_ò þýúFqñZn¿'ÆÞq3›1{´÷×Û±(í»YXÔÐþ¦ç ,{f,ÐOšž…u%:r.{àÝ9Ó±Ùz/ë絞¨O=ÕfèT9Jà-R“Tªïh®dæÜ8Qsù…®Ã»Ë—2 Ý÷ttÌÜŠrÒGØ÷¤»°žï"N£äÄc€aÇÿÊÜëó%ßè·ÛùØ·%ÈMœ‚8˜{„/6K 3c®tk 'â®|»,@@¾i–ÜF~¿jC®ªÜ¼Lirb1'»*e.m×{î×4{Õÿpý°^?ðPqü±è³ó8tøñ8µ¸®½x<æy£ s‹N0ѯÎþÿJ¬¤YÓþ‰o\ƒµk×ÐâEŸãéÓyi5¨°$á»ÕÂÉZzrÏîÝ27ñÒKÀêÊt>tßt›‰@¼°=PÌavœté…o+:èW™k}NV–½ûF&Ófþ ËttQÚ•@yd¼}¥‰Êœi]É)¨ÍüÞ{·Qøõ€N„d-#žîóîý¡ãQùç4¤WgìuÀ±¥§ÿù,*6l3àrÚ®C%X‹›6è Þ­·Ýï`>6¼ûõïüòë3qøþ{Ò^{Ä'  v]F,F±¬Û~.=öh¼üßUvÁ“¯¾Lû¶M7Sn¥æÜ'"ñ«˜†YZî‡:V*É•[Ã.„("à œrÒˆì;玾€p]rb1FíZúfE ÀÆo_¢§žøå•µp O´@Åê/Ó/Vý@›Ê(Þ7;~ûñìë3qÃé{£)üížW Î9ûXtr¼Q#IE $©ËÕ&óFE]YlIáKÌ©ršbþPiԔ͹IhÇuu¨s<0›æÇqÄéÂ+ÎÃC³ïÁŒ‰OcéŸÎF·ðÁ«`!€vG]‚#ºÀh³Ý@ºé–Xôù{xb⛼yýz¬Z±M›™_-L“þÝ™ñæÌQà(_±†Ö» ZòœW'Òæ\l©J *,m‡å߬¬]·‘jj$ÐÄøðש“š³1 ‰;ä8¨ø@©rذYU¯¸æ\yõÊ™®IšÞ zžn;ŽxfÑTØ«+|JSwµ¤ÄJ­ª¨ðý?V˜Ö‚xßžbK΃ܠcJÚm@4´üÒ$¨ä|øV÷¾É¨ ë6 “§½Ê¿¿õFúÇ«_ð÷ÍÄŸ?š™¶²”õÆÁ¿½ó[oÍ1R8|9ão8û‚Kø“ÿ¹¾B…í;¨ÌÑâÚ¤ËhßÛwm¥Y'€8Y#h,ü)h8}á‚8¼SçDfÚ¦lž‡Î=[ñv–TüÊ«Á(ònÝèõNŠÕ£™6Õ·Û¨•ž}úÖM¸ïÅ£qõ »‚ÒécxûÏÁ;3¾õ–»0탯ñéûSðéûSJ·Û Wßvnºà ÄÒ›&Lº#ÇÎI[]îx 7ÿfO<8i<´Øã7ú¢¿¢âVèÔ¨\þ^eÎ Äq”íïfÔRÚ9{òÓ˜=ùiC_’H¥-•,Ež0⃇`÷ÓÁŒŠ®øÃƒ÷`ö•˜5ùo˜59]çŽùw<€›ê ×LއÀÏ]u~}>àOý gîÕ`N÷‡MY[5 ò,數[šcªTûtòÖÿgï:㨺ð{fKzHè=ôÐ;"HSP@QAÅŽ ¨€]?Å‚)"ˆ4±aD@¤J¥÷„ÒûîÎù~ìÌfvöÎì&$ˆ¸yž<›ÌÎÜ9÷ÜóÞrî¹ïy|÷í5ñêâ'=…U›œñÖ(žah+!YÜöÝgØ``æßØ?ïW™õ"¥¯ÆÂ3‰ê¡W—žÐ€ÄË“¨a½ÖIÔçé9• t`hã¥1~ì¹D\þH+}Ç7nv€.ábÝ…ß±ðÏ4 ¿.‚çÌ^~WOHêºÅyc Äè…ëtnö.¤gšÖƒEkxŽ<&XœÚ·y À±¼0Ä0PJn>dB)âCœsа0Hö,˜{-ÌìÎhü òJæÏ¾Y=ûkDùNº™¤çW·¢Ñ^Óï¹Gû«–)ºî.C&—"³+;WéåÝdV$œét2á<Ÿª¼ÏK^ϯ,Ëîï³r¼®Éù¹töÄ!:vî9•Âuu®>FŸÐÉ]¼îÌÌ…z3Ò™ûSP_AÙ<¬Øêš±hNŸ:H~_BoŽ@ã¢(ýô!Z8f(½òùzÒÍÐ ËIý›:ö~ ÛŽ»(¦rújÉÚµw?%&gÓ¹?f Z(/·ÀÛ>ÀÉ »$l•§§°Îì;ëW9‚Róœ¤ì yFö gÓ( ÈÐhD†‚ {ëWßNz»ƒþý¢•¨rOTõæôשD¼Ò³ ùôüð‘´+S™Õ*Ÿ¶= _7í¦£wÑÊŸ¿Á°ûn£rÑ¥ÙM¯=öÍ\”¤ªPÒ†9Ôá¾±€šw›L+^ëK€L²w hêæ ËÑÀ÷|ÿÍ{ðÓÊÔ¤þwôÔgãÔ»hجÄÝòÄZó÷NÚà8åä¤Ð¬!9 Æ÷¯äƒ/GNžNÆpŠ´[ Ý÷ü'tìTíÚ¹ƒvîÜI;wlǶ»èø±ãt"á(í¯<>¸°]z<ò­ÝušöïÚŒŸ¿žŽGnoCQ6б-¿Ókƒn§•I€Å"‘DÀ¶o¢{'¬ tÏÛßШûšX&7iÉ …uÖÙL°¬·1˜´%ô}•JÖbø:s`5‹òçÓÈ'&>MQ6ˆÄ¤VÑ‘ƒhÇŽ´cçNÚ±};vîÞ‡“'NЉÄÕÔȽ5MÛö£{›‚»–~ÙIÛ¿[J‰) ¸.íé¦ë¢L ú)¡À¨þ"=éÇ‘-ë1ZÒã‡È»%*STvQ~ ä6?BKå6Ôop'@sçnÒWÐ[² •ºá¶ž×zžûþåî4zá:l4tÌLlܺ“J„#åíÞ“,Ö«Nç…,µê𯙓ï7d€ÊW¯L¡!îzÌßp€Ž؃;ÜÞ¾uí9z„N$$ÐyPy+J>í³>Âߘ©›¿Ée:~øÃ‡‘mKþV($zôa×ÿ­eˆytD쿚_W'ŒË³;ÖàØŸ¿{É+§<¸ZñÜö¡én9]úk€Šb|~ã\Ø*¹ãÔð™?¿A•Úñ\·Ã“œJ^uaý¬XË/¨³Wþ&Í30R‹Vȸ€…]ïÁÒ1ÔºÆ×,™‰‡†>É_þ~Uª7@Çî7óèä½'.àý‡ÚoÜs‚õ+VüEI[çL€Ø[xýžy|ßÍ]ѬqC®V.œËXs@ù`@òò>Üdb²ìãe³¾öÓ½C™Ë{6že ¶oÙŒt€ËU샚d‰XzÍl‘ýÉ¢xˆ¸ßË3¸]õjxsƨg~ç§Ÿž®x÷ °dò+öÄ“Øv6ë4hÆ7ô½Ó¾ZÈÉOàž.edòÑS{Üï8·Žïî1˜ büíXµz„›{â_t¬Ã:ïf!5á.]» âFÎlý“Ç|Šƒ)à*nâ>Í-€µqÅq€>OÎäÅS^å®m›sÃøZ+gXmÊÖ‹² ¨lõÊÜù(§9I]îûOü¹¢U\vŸl Ë‘R-å¸võšÜ¬y 4oÞÍ[´D«u°rɘ0~’ çäþð!\§yü»ÿÃÐç&áà…2ܰÙ5è{ï#˜> §ZŠU¤Ÿá‡ÏŸûkn¼ï –npßGüͨ{Ô,ê¢~NwíÊÖ`åÌú, Æ}š—Kƒã†˜ñêƒ\9¾ÆtÇ<®˜ñ6flÌp?É¡ÈB~™†\·A<·hÑœ[4oŽ-[¢y=`öÌ1sÚn.t-Tá› tŸ´~,Oܰ¸{·§8V]¡‘ÍéeögÞ2Hßgé=þô]âã‡Ùóüj™ÌY÷7‹ôÐø•TyŠt IDAT~ÍÂý{ @4€#ë>ÅÄ·f"@Ç›oBÛÊP0•?–'*åËxÆ«CСusÄׯ+Âp^ñhëßt»Ìùò1ÎT§ Jrdý2w;° @d¹òì”ÀHÌ@¥šñ\'¾ Z´hæÍ›sËÖ­¸â¡]˜6aVmÝÁL(E|xìúì ~vƒ|lÂ@>ÑØ`j‹þðqF¯T9p@ô; Ð}fxûñP ¾£=`í7S1gåyÍ>àA|ö倯qo/IÂ48Ü«W7Ôpvÿ|~wÂf@²*Ê+ÀÌ câÚ´EÀˆuPï4ì(Lti¦_ö£[3Cv¹ l±Ø9R™(Zþ#¾˜5/šª“!„kÖ¯ÍfQöêd÷xl'ŽŒr§ë òÝ·W 3L+ãE¼<êM$°E†!2V›Ǩލm¬vL›ðN»ÙðÜöÁßðÄûî-°ŽƒnrË(If6ÆÅ rwƒË‘ëÞV®q3}õ6€Õ³_Ãû§°ó_¿|„éŸNæ1Ÿýª‹h¬ÁM¤0{D9ðx¿®XŸDŵæ_7Íçr*¶£[v@»ÞõáÌÞŒgߘ‰\y¡ä™ ‡Øò½ º¸ùŒùè[÷Ño{laùú ÙÉù.ØVf¬VàüF¼üÑ÷(£<§†Þöh/à%¾†¥{3¼lwÙëóБoð¤IŸá¢%ÔÛi‚YÃâÄü±ð¬ñOó¬·zÝ,Õhıå#ÈCDD ý7Úôz)2PöÚg°æ«gé·¼°f`;,Šz]Y ;‘›“|Ó;ãp{#0ŒQO ÄE°×FïMcŸ~gdm9Ùxã–ÛñÆÛãùýùë`±–ߣG7ÄY€}?ŽÅW+·2Bkáá‘íܶaÜî7¢¾Ð¨üÇ€°Ï:ÌêcrÉTgD q}oæ&Mcø|Â<7~vxÿcî]Åi£œŽA¨½Àë=úˆ?žÿpxxYµñ‘Áér² à¼3[°d{º{ü“û~ÄÛ36"€CfvÞ¢7ºG[×V¼0z²w½2·bЃýyìÄÉüÓ²DX/>ŠØfŽ \„{‹„Ÿÿ5YðÙpÀNZ§¹zšïnæö‚Æ6é+§2óþeo)rZùšaïðŠ•+åeK¾å‡;7s_·µåõç˜W~ÜÇ­+KÍêq»~ý¹GçNܵkWîÚíz¾®U=îÿÜd9_€#–¾íÿžö„l·‚ÅZðþÇ¿,[ÎßN{“Û¨}³~|0‹™ÙY䱯¨øt ½”¶ tüÌwÜ”=‹±—8ѨX‘ž-ŽBD—}T~¨{Y·}!G¶ìÉK¶žô<4spÀ÷½7Ç[n+ã7‡õf‹~ ¤j ž²`£Og«—шPιY½>͈FŸ—ÙÉÌœ„îæ©S‹W—23Ë?Íz+ØwÛÇÌ'yŠpt³” ó…Í ùºr:¹#kó+£_âz€Œ ·ó‘¹;Ïïá§nŒ÷©'P†‡¼5Yš«HøP9‚FÞÙÊWß—¯ßŽgíÎaf–Ÿ¬[Éç{ýo·;g™ ˆå¢ô_þë¥þ›ÊCšƒ8^u¬ ØÌînG‡Ó¥ŠX øˆ¼Õ/ѨþºY[•Ñ(ɲÌDY–9//ÙÙÙ”ššÊ´|ùrìÚµ ß}÷ž¦F4 ºÄ¤†G'EÇl½®,³ûÔE6¶ÿ±IY­(S¶·êØž*ÚÝ[\$IÈJ>“ç³Q¡ZMT(£á‰aY99È8²}=v= —$!<¢š´ï€Ú1!»À°x%=Ões÷99¨?9£?b¤/ÁÑR6ln¿ývôêÕKø^ý{ÔÓÀî\y ÒNbË®ã ÐÄÕo‚ª±a €Rv`åª?q2#6X] ×]ßMkUroò+10®¼‹ø{ËrJá¨Wµª¹]ÎgþI«6ïA¶ÓŠJUãФI[Ô­ÅÈM kwC ¯€–×´C¹P™ŽŸ ¶sÍš5)Dã?NO>‹¤ó©¨P­6*” õ$ä•ó³øxB"!¬ ×®Q…¤ì£< s ÌÛn¥¯w&¡OÔ>,[¿YùàØêõѹ[gªêno}è ()§VQê=«V­Â×_Ù³gëݹYét«×A…èPv7ºV'$$p~^lÑ•©V•òLßû'Ö¬ù©b;I]¥.:të†úÃfd¥çÄsid•$°L ›÷i<Ùåä°2P­RYõhŠç;‡ÃÁv»ºuë†_~ùÑÑÑÛp'N&_8qróPµFMЉŒP7:™ `HÎÁæ•¿cwÂ9X#bP«V=´iÛ Q6àÄ¾ÍØs,ª7A»–µÀ¹É8~ò,¬åP³z’87õ6ÿ½YNHö0ÔkÒ ªÅ"õÐ>V–êW¯²,C’$yزæwì8z Ä”¯Èu›´¤Vu«ìbÅè þ¸¶î8y>ömZ‹µíæ\²‘ä’P­~tíÖ#­˜ÓN¤sÙy¬Ò„H^[É —‹S™+WŒP“Oƒˆ0zôhÔ®]ƒÖ'VöaÚcèúûE÷jëSxªÌ…ä¤#8Ÿ:õ«#ÔZ˜°ZÎ¹È §ÏSvŽ«Ô¬FecB™ÈÙgiåÊ58~> V[8ÊW©ÂÛ\‹zåˆ]N¸¹Z ëuæ÷±¨qãËpÕ¸{¶/F“r…{ ºê¾;Ðþ[JK›<—™Ùét’ÍfC§NðǸ¹úÜ'DKgü0©ƒÑ³—ú#è‡ ÇBÓváô‘ãœîtRÍÚub÷d „zo^ V¯X‰CgS9¼Lª[··mÓ„ìïù{ %\ÈGµÚ-вQeœI<‹9N®R£• ³B–ÝÔF)I{±mWç¹\d ‹â&­¯¥±¡8»o/ÒËVEƒÊ± fÈL$pÆÉýôûº?q1Çа(TŽ«¶×´Gl(AaCñÚ+ |ˆìB4†šÑ4˜\÷’Ëßø¡FÇZ¼x1¢££©råÊ([¶,ÂÃà I’ÜE\Ž ¼QD'[ÒA’²#@Â}RƒLØ^EiËø÷L°Tãõ%lô" 19^¬ Ôä8–Õãñ$ŽSò.[f°D*@Ø‹¿Qß.úº{Ú2ëèÚó¶1}¶ñí©ß×&mr^ŽcÇl‚¥Ë¤î­Cv“€jÒK»'þ{ÔÚDü?â={_,?,w“1“6”F[WÕÉ´Y;qEa"d"³ hp¨iL"£‰°ëâVŒ5…lWRCO° òÓ¨áõwá©oC¨¡¾yL y~q1^ø¼¼¬Â*hU¥°&(Íì3訴$Žûp/Ü©E ÛñõMðÖÊ}8æKüðêýZÕûn-N‹:ÁRïÕqQ;ŽbO°Š;~\É,Ö€´¢€[ÿœ  iúa•€Ú[¯…Fcȃ¥ë[ ñãiõ€ËU:Áò‡@'XV”òÑä&@D£I“ç;ÖŽQfAi$¾‡dH‹tåÿxtËÞñù:Cи/÷ÏóʪßH_Þ× ’¶‡€÷dÕ€èÓÜ6d§x¢\Êvi¸ZQ:ÂÂïµúõ&jTØD¼lÊdñjâ†ãëg€ ±C¤—KÜæ¤™0j¯ª}"{Ϧ=õÉ£ê[’ó‘œxy+,’É8GŒ‚ô,TLÉ.ŒneÖØ«bËJ}Œ@F}ÊeÇ©fNTˆ½\äÕ§ù.Y`*…6G$¡àÌÌýmÎ^‹·Vî"jãñ¡÷pÙâ>´_Ì~;ÀE[‘ûúÒ?®ðÎ[Ø·øÔUiWß®X¹4_HF¡¾|ûïU6‹ÈÐ<÷·‚)‰6¾~¬:ÝŠ`… ¯õz #W¿7#õ2P²~åM‚ÕÁÏêZo°Fª~Å­; JF0ûðˆ ˆHµ÷‘=“h0ÖËåãâèLY)úL¼îUP£g;7ÐîºWEüÚ¶îÞ:qQêE7Ilì+„Ù€ ñä’ôÔFz6Ð5ù>â! $Ñ„µ4ñaT¦Á;HdÓàC¿¨)¼.lÆ€ð¡ºÚ=²Uèˆ/VÑZ¬Ráö‰:á‚>ŒÍd0ù„–z4Ò1™ô9Ň·=¶…ÖµõÏ®ÃÁáÂè®×æàúÊ€ÓXlž×Fuz›4±ídüзݥŒ(íñûÍÉãÞT>;>e˜Ù!‰'wW©öYÖí \‰øàžqàeüÐ1º›Ú¶Õ×Õlà‚´©+Qç¢5Ú2‚à˜¯(UéŽY’™÷Aäb4ò&èH¿À,[»_ëå’Ô=Çä½o¤?ö»€†.pAyÚÀ aÝuõðqã \ØfkØp ·BB+òÈ1Ð)Ô=>Üg‹F¿n´úÑËé§í¼lK§}]ØÈþŒ:ßKŇٶܿÊCňÁ*}|ØÑ?Šíˆ@ß>ø°×è„qo¿„çóPïÚÛ0rP€ÅfÑNF…m'·DðafËÁñ#8~\N|\Êøa„£6x‹P¸E'¸ný÷z—¾(%˜ŒäÑÈ}†Û6÷˜%<Õ¢YÙþÜ¥&ñÂm‘nô!ª§QÝEõ1{^ô½ ÚÕ³ XcÑïþ§ÑO]…«tר™öúTFEñù»ßH§¢¶¸T|ø³+>ÌH#+m|˜µõ•€³6ñ !•oŽgF5/|Æå‚;‡Ž·§OÔvF“KÅG ãJpü(Úøq9ðq¥EÁGqÇ3›d‹Ð/˜nF*b']‚K}ãŠ\½¬s2{稃è=º2}‚¨´A‚‚àKˆ¶Eµ9¸ô®MÍña2fbB‚ /– Aµ+/Ý þ}˜m òkù”):<àK‚ç¥ís,È»èu¯(ž¸gbMÚ¯d¨D’Ã[h'’.ÐÓ¨N¢v8!­h+ÜÈ{bˆÑê¨4ña°óŸÄ‡¾MK ‚•è†Â|v‚$ËÞòy¢ã4m.IÚ¯` K˜ØÁ%ãÃ@ßÁñã_€+üÅ?ôø0 Ãõ±¥ r¿”@5ÑÌñŸ”'Ð2ÍöèýÄÿ”X=-¯(ž–â–o{!ÒUq—¥]ÍÞ#Zᘹ™KSîÿ2>Š‹§’è—þ-øíÅfŠƒÃ@ð?þýøŽEV*ÊÍzW] ßg 2Ðûým©\êû\‹¸“K[¶¢ê¾¸÷”TÛ”TÇWÔ¨—ò[zà—>Š«£;>´ŸÅ=¥V’ºâ£øø(Í6ú¯Ž—Áñ£è?V+Mï*§B™¼‚âÈdÿÔËíiÆO!Êx®ó øpQhÜt^Ÿ&Êez÷E{úB¿?¬–¯?I§†á;ô\ Ú{4:%ýý¢rýñ·èž…I½…\#"}êOU´…>°Tk$ú?PÝ}¤¯ƒ Úz‘IÜémZ+§€^.c½ý•> øüOâC{OiàCäôù¯áC7AòâÚ+ |@pRNïŽW&>‚ã‡/>Llšò`ù›åù9Þ+tï¹üDkþÊ}§‡Qf÷ùsOšÕK½;`üéÚÌ}lô½¿gÕ½¿¶3sñêË}çOÖ¢ÚYqV#þtc¦‹ÒÂG nôÿ>̶@JÅí›®&|²ÍTø(ŽÜÁñãŸÅGpü(ºgË(ÈÝ+XMëÅÒ¬ôÑûžï fª,˜Äi³§«^£*÷é?…+ WN R<èO:诓€a˜õïÓʪ÷žp!û©þØ­¼ÚruÌÒ¢YºHWÚg|ÚOËÅ¢•K° `Lj‡VÜ»í ƒáÅLí×ëÅͦ tÔ¬lµÜ/¬á‡aý Y§W/]«u×0êõ¥‘ë²à¾é|þsøÐÕ§TñMì z;+ |ô?þEøø/þðq»/MC r¢YÙÑ\3Cý€dôw Å%Dg:+7:¦+’Õì8«™^ ˆFª‡HFõô§W£#±¬øŠ–ºÂò‹J4Zœ•L úò·ú*I|º’ú¯àCdo%@ìý¿‚#ªƒKÅG v?®L|ÇÃíl¿Þ@m ë]n’$‘,ËÀ¢ýFá¡“8 V4Ìý=o¸ïi"ñ{#"±@zò£€Ýn‡,Ëär¹ŠžÙ@6sFíRÔ62Ûcæå¢ÚH4ó/©¶ôúßn·ÃårA±g*((`?íÅ«–¢è»ØøPs23œN'dYþÏáÃ%†»ÝNN§SÈN q>T¯wè¾]÷’K]¥«¶¨dZðÄ|¸\., €dYf%™6iX«ý†  O²kµ?—e™dYVûv̲,{2>h®ë¨ëãEYä6`æÖ+Âáp ïU1~èè4e³àúzüÕÅn·{æJêäÕëfY–Õ=oÎÏÏGNN¥§§sVVíܹÇG«V­8//L@?†E~:Í@”@ExoIýú³ÉŒ‘ª=9r111ˆUW¤àó—*·™¼\„v T.*Š—¤Hmg±X––†””Ô¯_:V õdïÑÆýÖ™Ùn·ÓÞ½{Q¯^=h¼W%>ÏJ‘S”>l6Š*UªÀápx¶41"—„f¦‚‚ %§Ó‰J•*¡[·ne«V­Brr2dYFÓ¦M¹]»vtîÜ9^µj9@;wæ:uê`ß¾}´yófH’„ÈÈHÜpà … 6бcÇ5jÔ@—.]ŸŸU«V!55ÌŒ–-[¢U«VHLLÄêÕ«Y–e""\ýõ¨Q£:„õë×#$$DlTd|hóuªíj±X’’‚ˆˆ/½\ã‡ÅbËåb§ÓI•+WÆm·Ý†ÜÜ\Ì›7yyyp:hݺ5:wGò¯¿þJV«‡ƒ{÷îúõëÓ† °eËX­VØív 0€#""hÑ¢Eœ””D¸fÍštË-· ##?ýô\._{íµÔ¾}{8pË—/‡ÍfƒËåâ>}úP\\¯]»–vìØ›Í†ððpÜqǰÙlX°`.^¼È²,SýúõѳgO\¸p ,P½èܹ3Z·nÝ»wcÕªU¬îÂôë×*TÀ¡C‡°fÍuÂqUŒ:o.$IâÜÜ\¼ñƨ[·.EEE¡L™2 EHHH!aªv‚UPP€ÜÜ\ÊÈÈàôôtJMMÅ™3gÀéé锕•…¼¼<¨nÇૈ,u±Z­d±XX’$ŠŒŒ„ÓéD~~>dY†Óéd§Ó)bù N°üQ;ue¥I’ ›Í†ÌÌL03;NhÝðÿäKÝÛWeµZ­LD…œœí6!˲LÆê->"""0wî\tïÞ£££µÛ ¥2ÁRùTO½ÅbADD$IòL®dYöôqÚí´KÁ‡¿cò—š€dy:‹=Á²Z­êä€ív;Ùl6DDD -- .— ùùùìp8ÈårÁår‰bkþ•ã‡6À^=î¯z†Ôzª;E’$™Ùår©Ûk¬xDHcƒjßÀpo×±&pœe³º•¬ÝrVÊ&"bu»XS¶¶ †²u­–¡Ý–Ô^w¹\êü¹=×!Nªý¯›`©Ûç6› !!!ˆˆˆ@LL ÇÆÆ"..åÊ•£èèhDFF",, 6›Í3Á²zIÄ‹6›BBB‚ÈÈHT¯^ÑÑÑÈÉÉA~~¾ÚÑ"t [0s {¥¥õCŸÏ,{·W&p‹ÅBÚ}x!{íyC.*:R1Ê.Nì ]ÂûÌ&X¤+ÑÆ­”-[Ö£g’= À…|©ö#ŠuñÄD¨2ÇÆÆ‚™=qX"¾˜3>"##Q¡BÔªU‹bbb´^*iû×r©‹:0¶^ÔEW>Š(K‘ñ¡Ú°Åbf¢"Btt4”I9íd68~¦óRÃGpü?§ö!!! Edd$Ê”)C Ífóô#Úç­:ï , ìv;‡……‘Ãá€Ëå‚ÍfCXXòòò ^+¢ëRVÅ|µy°˜™%Iò|ª ¨ìY0Õ3r9=XEyïe]˜¥[P½·E\¡×.Ƈ6R JVWZ/ˆîú¿ªk½jÕª\®\¹Kñ`ùý^ÝöSmCÈ«z½ô¯Ïawµá£˜}ƒ_|¨Bí$KÕµf1ééç ”Áñ#0Û(éñ!8~èdQçF6› v»aaa稨(„……‘&Ëëy¯ w6› ¡¡¡ž!!!ç‚‚R&WÚ-ú`»Cðêàõ©ÎéÓQéd¹‹ëàÓ.ìþÑž¢òܧ?†¬9Ñô¹Ä8ª+-÷ ¸Þÿ•ø([¶,BBBP©R%TªTI4Ø–h»:ÉÒ,nX=¥’«æ‚-«ÿTo€¶äsMœj¼±žm'õ~u‘®žz$ˆŽ&“LÕCODl ¿à!©‡ƎÉf³±ÝnGhh(«ÕÊV«•$IÒ&µ†Us׫Õê!êRbW8,,L\A¤iÌ• ýÀ®%iÓx±ôÚEº Ò4xÌÖ ¯•×±rÁ|³N±(ú.>ü`K4éþWã£|ùò A… Ø`‚Uâ4 :/ —7K Î XW-I“¬€ñ¡Å”:¡R=ZºT*žvÐlÇ“ñCïéV¼Ü$I’Š› ÍO)àCÕµæô.«ÛÞÊö ÚghmVÝ*Þ‡ z³¬V+Åd IDATœN'´ˆ—3iíÕü#Jf©É_U*ÙÜÿ«:6²ÙKIíQZòꢯš6ªT©l6Ê–-‹ *¨´—åG«SµÕöÁ¾®øzÕÚ­ªgm,d ø þÿDEEaêÔ©X»v-~üñGdffŲJȦµñ±Úíomß¡µg«–MíX4…±“å9 ‰a@1܇ºN¯j¯`€Ô&VeMœPÐÅk¼j ÈÅ+ðzq•h¾¿"x°´1b¢Bmö]i\øP\숌ŒDtt´h‚U¢[„š>ϳE¨††V&' ‚[„EÀ‡n ^oë¬ÄÇÀõ fFHH~øálß¾OŸ>Mqqq*Ú%á#8~@˜:Hã¡b!»ÅŒÖ9bÕäòt4j,‚,ˤÄ"xrøÑ gæ&õ·}‚\™¥íâ ÄEê¯ ¬ØH3hºïa¼¯yžu¶ Iòf>fYVŸ¿K–’@øÖ€V¾@Ÿ¶3ÉŠÐ$h+·=…¸En¿"µ¥>ŏnÒÙê¯õ$)>ôÁìºÜ`W>, ÂÃÕ¢Ä@~³¿¹ˆº×o{1œ ¼È ž€\àçeÁG2_2> û)ßíûàøáç’$áĉ´mÛ6І »Ý^¢ø(‚Lÿ |h³3h³hþö¢W²ê¼(^« ‹Åâãº5úDVþ~®ÊS ºÔÊ'kÛÆ§!¾ù”¼ÛT÷rf0‘w‹  Ã3ëR^rÏñ´Þ3á uÿ§@”É¢ç]L ò¼³ð‚û^U¸K;âóN¯X%¯Ž\w¸À¨ìì¡(7ØÕŽ-÷—Íf»,§¤܆ž",e|˜´ApüÛ- éÓ§{RØM˜0÷ÜsŠ¥à)ÂˈíDKÿ¼–vfÒÉ#@¡ƒ<&ÞJ={ Ié ºñu¦é[Î;€óù64jT6Õ‹¥x§²ÎÄ¡d;Z7«­ñ€1v­ÿöúíаR¸vvãn49ÿ±[^‡¸2V“cƒ‰¸xÉŽ2hT»b±yL˜ÈIÆ®ÃgP¿y3„{ûyDÈ9·Ÿ¶•ѹcÎ2‹Ø4²ðÓÓTêþkã‡ÀnÉétbÍš5ž{wíÚ…cÇŽ¡N:€Ì6ȃUmg0±òz^ÒÄý°¦#g'‹¬Ñ,øÕ:`„×÷ ÿ×<ïóœN6’GG#¡}Îë³wA“GÌ@N/§“QT=®5ŒWi…·wãøzݱíŒûžo_nÉ­»\»zw@ã.·òÁlOìÀÙ¿Æàþ¿gMÛ0ààågðâ$ãÌ*<þôlw{©²:ÒùÇqŸcí9¯z«–ÁD9<áí—xé~—»íYWÎ~£Æ}-h+f™™].o]°,³Wé¹N NüÂwtï‹ýîû db¢³xvèœÀyb>Ϙ¸œe~DºW¸r¼Ú›e—J!RøN" ÷?9h8Ê/´]í¯‹ íØåt ÚO†ÌÌ…féû|iãCÅãÕŠxÛ`/â%¯Q›é^t]Ŕֳ©¹Æš-ÖÄhiE×ÌžÙ§N&Ã_ïþÀkE ³{µ}¾I] ¿&Ð ´eéÞ =Àä½ÜŠ®ûѹö}†í"h³¶ƒþX Ãz êãóƒv3|ç/¿ü‚M›6yþ/((À¸qãômaØ&FºÈćlڱǒvå(XÑ|³¨{®ëÿÖ”E+ 2x–+X£çf³>åëäñ'ƒÑ÷FrúÌ^õºóº7{;ÝöîçxmÃØwƒÀ;3~FÖùæÌx?ÿ}Œ@JP“-šî|i0zV#ܼŠþܺžv?áKÈ¥où‘>}ûSúdâ×È)¬,…ÙBb!H9°Œîp; {v*.ºˆ$"²XæM¢Þ7ÝA¾X’$’$ÖÏ›D·ô€1ã!€0 ­ ›R´]Y> 3g½Ï¦ýŠüºaø«}‰3ñû[hÓÂÏqß½ObýÉ,Ú»|Ý= /­Øì9­±sÉ'Ô¿7ÍX¸$Y IZ5‡îí=úþO«?M“¿›JSç¬p{w/¡‡îºƒ† ŸH§2@Ê¥ ëÖcËÆßéé{ÄÌuÇrxÔŸÌÛL«Çwl uëÖЄ׆bèópA– ‘ÌA|”*>ˆËÄ¡‘ï—G&ƒºzɯ‹Ñó§OÕÙà=¤¯·^nÁJØPV3ÏŒ@¯>rilÖè>3ï¢&648~üøhÕªæÌ™ƒ§žz =zô ¹sçbРAA|\aø´³/ƒ\Pf+t¯¿u«ìâz°´œ3~žmvù¬Zu<6^3NÁÌ“ý­p Êñ9ެ•M{¯l©Á 7ÿ…‡ÚÊ8}`5ŽeÖGÃZÕa+[fýÆ}j@(*†…q^^>ÀêjG¨=ûþϳWå¢FØz¾±sWìMÿöþsüÝþvfd®d\LÍ)”» •§ýïI¬Ë°bËǹÃõÃ8/¶ 6~ú †¾ÿ+çY-,[s8;õ"ò¼ôIŽâ3{ ]£»8¶y¶œü坯éÿöÖ ô½çKîpSKþdøõ¹`o;· ø†o¾o Ö}ó ·zi)βìkt›v1.¸‘-ãÜŽ/0|ô"¶äÃýÚñCï¬@eÚnqQ<øý_¸lhÐ'lúx(z¼ø-švíÂß îg>Xó¿çÿˆ;ö¿ŸÏ|5ïzñ=¤Heç¥Ùup1:7¿ŸË_ÓŸ«æ/çZ}Frf“¿Ó×ÝþG–wáõ›ë¢ñ-O¢Lµ:xuh^’”ƒ“ßä®]{ñ¦2-‘÷ó8tê0iK²+ˆRÄ?‚X= øª„ºÓË%òªé½(ðMc$|‡¨l}›é<Ú^ŸªýhuåσÙ¬ÞâÇžàdz)<…§·¾‚ø¸ ø "¸\.Ô®]>ø ˆV­Zñ AƒÐ¹sgõ´W>¬Úøu›P›3Oc ÅQbi ‚3y¶X§@4ÛdT¾àšß}\ý3–m¯÷é¿“BËã†kÊãäÒOðÀS/ÐÚÃøàùh ©Ø? ÊOÞûoîMçËÓŠG¯ÅÚŸ§aÑÆ3Ô¶ëƒè™†F^ ßæeÂë”ݸ.>ÿj#âªXà´ÔÀ}#žÄÇû¶cÈMM H1lá.ØÀYg4 ;Ÿ<ÑÔËÄ KWQ¥ÿÃmwÌG‹‡GÙBE»½M( ŸgLGÃaðñè‡܉=Mãé§•÷bÅüxjîj¼vG ªƒ¯3S¨ZÛÛøÛ¥C©N]FBœûŽ%Reuã‘Ü[„ ¶ƒ†¡íÄcôØ3}PuÃFÊÉ$‚ÅU SÏÅ wâÛu=1jÖ¯è[ë Ö”ë‡]ûÓ”âîW~À³w5¦ºŽýxôË™¸¥~cJ:•ˆ µÛaÆÒÃ8~ZB›ø‹ÔmÜ^ y¶"Ïï¦ñÓ?GÓÛÚá¯YßÁöÇId¹9ÉÑxeÊçôú€º¼oûjªðÐŒÒI«ÖÓºm'ÐÄU@Íîú?Då‰ô,’GW.RW?+[q†Z<þê¡=«"Ò‘¾Lƒë†?ºÓK¦mYŒX›µ­V_Áñ£ôñÁ̰X,ž¶HIIAvv6i¿ âãÊÁ‡¤QœO<ƒ–?Hû«7~ýuA\„×wFnQ¢xhâC„ħú2ÍÈìüݱ±ªHF+%"BÞÅ$ì?œÈ5{ÀšC¹<÷¹ë0}òl€-ÓG£aí¶pv|;v¡a9æõ+aþüEX³ù ì.DWo¤´f´ŠãÌœÓp! ’‘••WÓ ‚D°Ì‹F|ã*€ÈÈjhj‡ÜÜLä:œž¸)õy¹ ÇÎerÓ6½”ka([¹2.$îDŠ¥_ײ ~ÿ‘xóNØpz+ž|¼/Þýè+N•€Ø˜h¨®«ÂìÖœÙÈÏ/à‚\€Ib«-pœãæ}Q7Œ”  Et(€ÌL” e%óA+ñÚUßãõÑo`ýñ<8¨'ÚÞò"~ÿ<>y¤Z¶ï%;·#7= iùpåiy‰üêÄgñÂÏcÏùlÄTŠ…½ r­¶ˆ¯U@6œ°p剠ŒdE˜Ý –$ÔlXϭÈ:è…Ô< ïñQÒø0ð(øÔC«?òIïf:×ËkWæ£?õ3L>ÙÀÆ„ú0 à×±éYâåLu?J&±•¦öÄÇ?‹I7ÛO×nL?ô ÂF1ª ?Ôß§•UGÌè÷Tè>=‚^¡þì|õÓyæ7´k-¶9Ü÷…GÆ@ EÚÑè7â3¼°4 ó'Ž@90òòÂ0jÊ;² ÓÞº!6œÚ¾'G±ìϽhÔàZ„R¾û¤!ç#›²|d‘,H€$(Üp’Œ|‰ÜMŸ Ø,VENõ!‚5$õjWÂ굿¸¯¥îÁîƒÙhݪ3b¥SXú×Àœgº û3ã1Êô}{1>Ÿ6«Wƒ#­°[@AöVò)îíOX@\°H¬@’ I¸d6‚.P™Ê¨eqâö»Çàƒ?Å“ý¡¬äÄÖ…Sq"ª;ÖíKÅÎ)ƒ1û­Ïp$'eȆòQÀïÓßÇ߇ŸæÍÅðÞá<—ˆ $‰a•$‹Õ§âQ—­0ÃFNì\ï¾vì7,Þ†¸J¡\A|”"> —оÛ†åšéÒ`uPyúgi«@ëg&‡YYúÉK õ`°7µ13[ â£tñq)l÷A|ü3ø°xIü”T™úàÉ+9…Œ "›Þ…Aí§¡Mèß2¶îÅô•³pb×$$9ÎãÓ§û`Z^RÓÒq÷¸eøðî¦ Ç©#3ѡ٠ÔvnGæ5/ãéÕñæ¬$Øò]ˆ¨]ék‡cè'7cæˆÛ”V–‘™–‚|›‘‚ì÷TGÎËFNz.;b,g1t@_ôL^êî I³3‘ zy4Þi}:ô^ŠŒ[Q¹×{¸©yKļ:‡Þ‚Óc±é°xã£89þ¼úÊ@ìœ×ϤâЩo1kÓ]°äÉÕ¦’ت¢Á…µxpÐÿ0÷¹XäRÀ@J^6n†¤¦¦@INWÊyäFÖÆwïE‡â±åÆسêWŒøjZ×ÞŒG;wÀï ïGÊá-h|ï(´iÔ•\ëqÓK?ã§.=‘9ýmÜ2ð2sq1é$žûa3‘åpo£f¤§ÁétëÅ‘šŠ‚'ÊEEbïì·qÍ-û¾a>š>6·VdC²ñQZø(éwRþ¥È`ôŽâ¤1 4-–¨ìâêÓß åÏŽ.‡Íñqé¶ÄÇ?‹RÀk9°Ô=sobK&£ÔÚ™«.žÏþ¹– Bÿ¬z]›6Fóiʾ7ÃÝç‡èŽDdŸ:EkY·=uö<§’`Ê™¼qå:•!sókºR£1œ›•L'OE~¾22˨P«!׈ ó<ïÌÏÀÙÓç‘–tœçFÒÝ;p¨ºxæ$¤˜êˆ #$mߊ”˜*hZ»šBæé¤ gN#¬B ¸RNÁUeíÈÏLAZ6£RårÈH9Ý.p‹vmisW0'õ<²]!¨P¾ gŸ;L¿¯Ýkå†èÕ¥”ùŸÜûm;rMÛuA½ªQ@Aÿ¹f]°Wå®íÓ‰#‡Z¹6Êäå!¶Z%Ø%€eI„¬Gø`Z>5ˆ¯ÉYLÕb-|*9—*W*Ï6ÎÃÉÄsT±ZB)gNCT•ši’®§»/¢~ËkѲ^%ÀùcÛ±î¯ý­Ô]º¶E´¤$íÆ¾ôXtj\nYC»Î:кSØ.D¢¥2êDì‘å>“t¡e*#62„.&žAÙêUðÉ=ݰ¨ü]xoP<ŸwÄÒM]ZÁâæFU9\ƒø(i|èÕ«fΜÉÕ«W'>Mu Ûç9ƒúi¸yÙŸ´ý¢~ú]÷"E4kMû ‰õìþ"îBÝ÷Fƒ”¡,Úrõ¶¥×µ¶ƒãGéáCoêç¢E‹hÙ²e˜2eJW >Š4Á2P.égu— Tl€Ì’½Ò• ú:£ñÜhjnhœêóZƒ–5{½Ì²Û$èÎd™=©iX–AJ¦{…ùÜÍQ*ŒzD…ü”Iܧ\ƒ!ó6ƒ=‘Lîø/•~^ ´×2Ík¯kÊ„oþÕã§Ó•ðG–ÁjÞYYfRõòQ÷&X}Í{XüÞm^L¥‡³ –ˆ4±¤õÀý–è¢û¼j'XA|ü»&XA|\:>¬Ú›Œf£Fû”º¼y¢{<‰ýêäðb?ìµRqÝ™E T˜1ЉþöºWÉ©ªNaN72rò–Ëý¸VïAR&1îï$Î|²YjË$M¹Yܬ•— )ƒ ’¯›Ôó~¡)éqØgž4Æe’¥È¡•Yý›H+·»\Rg™^rHd`›ªQ,I"»ëî6Ö{ÆÍFŸ˜:^œFî >Júuš:ÌάëÉÏvûa4¸‹òBŠò‡ tAĤèënƽcXW£6óÁ!ıIz;´/ Ú8ˆÒ?Ìm#ˆ+’v­en5ÛkÔ1ºšÍrÙl/Öè½.ô×÷”èþ·€gÃè{y Y\5“ÂɉÆ[èž «[ˆO•Î ä³ ðxD˜÷šŒäÖæÔÆk-ºÀTl…“)Òé^réW°šQñp±¨]ëu@ŒE¡mŠO€xsØ0C–UZµG|í `™Y¿2pÊñQL|˜l©@ÏDmtŸ™^ýÔ­¯±] ¯™]×÷±Fºe£O#9ŒÞifK:fnÿøðSÿàøQzø0² ø?ÄÇ?Œ«æ!Ò<™€Bû?™¨/3PèËôq±Ñ`¼")[«Ñ©Ýu¯LñnïA¢,ìß{qµË"-£•+WPwàT· ÉìNt«KììW¯þrDº¿—‘‘š‰A™p+ ö¶ Þ¥¸=eR’S[¡6Éß»ÉOG¢Õ)1$IA´Ì_²=¯2õ1&úÑx§L혼A®™xJa‘—uù‰R/\äèjuP6B"#» âÃ?>üÕ ^ÔJé ˜øÐ†Â2ô6Uø}Éq¹ð¡÷ ém.8~”>ÌlB  >®|Hºd"¾ S¶Tƒg‹œ‹ÐäY£k€Ÿ\kÚ2r­ùy—?9½¸W””l KÞ<áYŒþe;g¯ü…ï{þsÎÖËMÄ’DØ·x6Ïœ¿SaéÕ±ÜÊ.ø««ê}ñýN”còÂm /‡û”!» jÞ¡äô:”í}eJÊ»d–Ù;a¡NX»3©ùdÈ2ëóA±$WÎýšWìLf’ˆU¹§–W}eͪBTו³,Ë>¹Ù-€N6÷e= ´î^ì;Šïþr3Ÿÿ}6žúß À˜8ˆ¿ø¬N"Þ‘<ºrª+Lò1ÈÄfï(ê3:¾&ÃO¿í‡lŬ|Ãþ_Ô~ÁñãòâC`#A|\ÁøðâÁ2Úÿu{ç’ðW¦öºž}Î+ÓýY£ýî@97Šºr_w{Bpq+^˜º ¼º]÷ÿ7¶ì4;™„Ä#á½w§bg‚ @*f}ô*^;'3‹8»{=ÆŸ‚-ÇSɂܔ$=ŸŽë¥M[÷"ád".œ=‚)ã'á×?Nºã°$òÓðý¤ñɬïqNáÛr\<üü\|²;NË•ŒÓÞÆ{³— ]ñ¢%'% á\:¶¬ú “§ÏE6„9V.ÎC§p0 L$Î?„]“@’¤‰#¹pä0Î''áËi“ñÍÂÝù§0ãã1õsw®@ȇ1uÂh|6ókdzV2XÙRݼôLœöÎç’œŽ ›6â\. I„”{±e÷!œ;—ˆ3I XòõÇøbñ&å]€<,ùþS¼óá׸ëŽ9#É{Wàƒ÷ÞÆO‘G.ä`áôOðÙ‚un£SîÝóÇ"|þëœÈ9 $çâš'FЙ…_aþî ·øA|·ÎÅ.ËŸ>ôõ „G¨¸2Åã˜ÅØ\ªNá‡òW_ƒ>^_•?(8~”>µÑ >®,|H·iO0h>I”ê@QŠabKÅÅFÚ(~í3𓤠XÓ^cU6í}J~RË×¼º2E÷Aÿ~L$¨/ ê¬(ÒýÝÊy_Rr­f¸µ^([õý e¦¡§nª…kzŸ–|;7wîIíÚ‰?¡ oÀþTÇ~|zõìK[¶®BŸ[zИ?²rj!º_O{ÜËk$ÒŒ'®¡z=†Ñ‚EßÑÝ]ÚÒ;³ÇnÜw}%š¼d;m]üõºîÊ I²¸éF‰Ü“«ü#ÔçÆèéoÿ¦5s½Q*€“+Þ¦øºÕñÚ¤i4m̽Ô㉩”‹ŠŠŠ…ëÌ*ê}×½´×Òiì==èÓŸ‹:÷'hɔǩYß—1oü›xjÂ" ‹# *?}>ýn€ËÅA|J¥½ƒU’©š%sõº®×‡®\ˆô§ÛæðÛ~Z™Uë¾ói ݉'Ù5rÛLû©}§¶­ R”˜µeé3³æèm@Ÿ"&8~”>>DrñqeãÃ*p1BÓÚ$ž^GIõûΚ°Áþ©i œFÑú½NÖïBwŒÛ htÇ) ¾ijž÷ ~õqÚ“-¤ XÒº!“RrQ«á5€ ©ÈÍ ƒäÊ©œjôáÌy<¨aÝи&o“›Ò˃îä3咽qСËÛÜkìŒ} +}÷rg~ìé»hÐ'w ? ¼èX*®«šÄÞÍÂàQ31ñžÚxe`<æ/]E«WCã;Þá·yֳѶû4œÈ"Y`³È|þÔ>lÙsšj5mós_â?ó:ãÔÆ)ÃYÜÙ"cfŸ¤û]™\¾VgZ¸ðW¶þõº ™“y·AräP­ëúñ5¯à³E‰˜Üí ~=fŤ:ªm¡Ñ³ g/æPßçEot§¹¯ÝÈ3/¢ÆÇò‘º·ÒÞÓ8EmêÆóêôÍxàá¡Èiû®­ ÏŒ?mû$L›²_íØB7·pñ&ñø»iå_ò·PÊã!·~ŠÇ ¸¯M8Œ*]FbͬÿQÖcݹÙÀÏðcû úöÌkÏüŽ8Ïö«q“¾À£ÕÖ`oJ­žö;†ĦóexÉ”ø)§)mÛð+W:½–ê5íÆ}]óÞ[†ÉKöшaøxÀ5¼&#P§u{$¼½œ ÞéG6–‚ø(>´e ¼z:á1vÝQ}}Ð«Ï Y¯?ýuÍqkQ€«žŸË+Å mÈ`‹L;Øù;Wß%ŠÄ€x‚ŠX=qR¨sŸ{5'ëXc¢k‘®õm?.>4åê© ¼èq‚ø¸²ðaTܧÂú~ƒ¨86 >ôë‹óó¼áýf'¼†÷•cvE÷×ûRŽžCÙØJîï-6„Ú­p¤ç#¾cGîØ"¹kÍxDKy\àt ß&3òÒÁáǹӑÿ×O¸˜$ãÖ:ó¹ädT«y+ÚVž uáÆ®µ­j·†ÃžÏ‹ƒ}ËÜ¿z3*Ú’‘!—A X¬!åá«GâùÉ[¸ß££ÑIv¢ç 7" P½º\‡å{¶rF‹´é8”í‘ѨÞ$p0@N¶„•Á½µÁ˜_`—}¬uû£W°oÏãDdl5îÕ§#pÝZíÐ85ÛœBûÞ“”Ûªq“5q!=ÝJG¶yéFrR>üœ0 ž¨=ˆâšô'uMd,jà¸ð9ƒÓnÁñã2âC«o#» âãŸÃ‡¤swBänü/¼nà-Ò³:·( \ŸFez•§uí \š>÷ÉhTŽVwz=FU‰¤”¼³î{•mC’΂Ê-p—›Í.0ˆÙа…B”–^–F¾:>™Œ7ž{šZÔïDUcdÊÍϦ\w­Iv9‘›ë.3GvPTd(-ùâMzk èÛÅ?Ò¼9o¢nÕh’ÈŽ|Jw„Òs¯¤¬ì ´à³ç¨š+“–ï?¢ÔÃ…yçG…@IDATUÛ6¡j›VÊ©äŠp—ëpºàpºR0ˆò\ û ¡¬¿>Ľ.¥»Ÿy–™²2 TŠs•&‹˜]”›“G(Ï•OÉŽŠåÃéÐÑÍÊ=i”p壢(ß‘„†(:tÁ”׈F¿?•>›ú =Ô õ×'¤m¥»'Ê•¥ŸGÈêrQbÒIw]Îî õ›3)¾am:°Ác#Ç¢¨ðp:°a õ#ŽžN§—›eã±!oáDŽõ[ À”ÉÒÇߤž×ßOâ«Óá„ÃØçÎÚC{ÿ:GÙª³7‹$„Ãâ>ÄG1ña²MDFýHo‚más‚-Ÿ-Á6‘¾_¶AÙ†rùÙFòÇñã³ ¢×¯Q[±Oyt|ì08~\^|ØHW(>¤âÌù Ž3‚„(È.Ä–þHeG7zŸ¿ÀYI ýÈÕ«YÉÇwºÿÉÏBJz\Î|¤¦¦B=˜|©ÙÄ7¬€ßfÿ “êbÄð›ðì=c¤7ЫóãH¸XQ–\œ=ŸëžŽË.¤§$#_É¢œŸ‘ŠäÔ\Ä·hŽ‚ã˜úÎûè?höY…æ;3‘ãD„Ûßx ¶½€>Ã^Ç3wuÀrG7¼po-œ?“Œä·§†œ¹HOKÓåBVJ2Ò³4¸]jY±çL<>°*~yõšŽ@rÉžECfÊä8”$×¹YHNÎÁm¿„ÝK^Ä}/ŽÁoÂûÃÒ¥jXObü“`kšÂÅ  æÃpgü!ÜõÀ¼÷Â`ô³ÕêZ0¬Q[Tn9œ¼ÑË_ÀÓV!®J V½?Ã^{×w½7Ü„§FŽBlÁb4ë7o<Ñc~.×_œš‹=ëcü¬¯0ï`:ê^×÷>ù’wÍÃàßųwÜ‹Q/ý‰f}ƃڽ;^yã¼0ÿwd…º½lIÛŽÁÕ¢l  >Љ¢änŒHBV3Ýù x ¤luó„+*;P½ÒN;'éppü(9|\ªÎƒøøgðA²,³Á^¶pÏÙÄEGFî7ƒ²Ìö6¹Ï‡&_Ÿ`ÿ˜MÞi$£×uí3ÚwΖ’ѳ GÇ×éÕõ«¸[Øal8áB›:1ض÷85kߣ, }ëVpHÃnT7*‘¿øv EwŠÛØø·™“°âðjÔ¦?¹³åž=€µ;sùÆž­`qdb럛Q©UTNí܈ÔÐÚÔ<¾VÍŸÉ‹þHÀ·ßJÙ‡p<·!]S? ÙQñܨVy·¼,ƒ$ §ú“?ÿ9¡UðȈ§P¯œüÍÇókRç&•Ø•–ˆ¿÷'¢IËæ8ºíOªØú®¼<øZ,°=‚Ó‡ ûįÔ÷–oøÛ½ß ‚Ó ¶X@$cïÆ•dkД·ÓÅc;ùèE]Ó®1'lÿ¦½”]åѰáøv4}d7¾_¸måC Ë2$IgœÀ”OgSb†{?8]È´àç¥ÜúÆ»).BÂÉmËù¤\kß}+Â;¢‹0ÊãO<ˆ (çìžüéW8W‰~ƒG¢KƒYXùýLúuSGÕm‡‡†ÜƒZá@úþuôÉ— 9'"ž6„T°)øvÚ'´5­2në^£ª·D«8 wݺÔiöÕ5Ž\2³E¢ >Š€£¸%UD¹á¶ÂK^Q¹þêjÔ&fe™õ‹FmãﺾÌâ‚ Ë÷§ÛfõÓËå§MƒãG âè-”T9®@|+¬C‚ÂI·—I{œf´ülâR3,S”K ¾yáJìhgQ’ušÔ“4⃴ì÷à³¼±`Ò`]ev¹ˆ,ßz(y5×]€šfY–™ÝÌœ 09 «U)Ó§\MîAÈ2 IÞûÔ²ËE’Åý—ˋŢ+#3ž½¯¶¿ü{õhlÇ™ÍÓðEB¼tggvÉLÿ¦Ó%Ãj‘ôï÷Æåt‘ÅêyËÌäN -yÉÇ….¸\ ‹Åýß‹-ãpú‘ŸñõðVI]² ‹$yÉϲ $Y|ö畲¼ÛÀå‚äSðöϞƛ¢èðœ1A|â:ësÂ0·¥D:óW¯\k~ˆÚ¨(mn*—Q¾QƒIÄ™Yòa£\kئOJQBààøQºø0² m. >®<|X^x)?—ZžŸô —]Ö¢¼¹ÛÚB¯÷'"méI8X½P‚Å"n\bíT`– ÿUø™Ô÷X­Ú)•æ9Íß…Ìä’Fn]²döšÐÀb±¬?Yy5ðæÜ×У±`UÚ?†—Ú»ßañPÔ>§N®T]yõ"Ì,’æ+ŸšÔϤés¸°purw=÷*þßÞõY]UñÏù¾·À΃0å ‚"˜…¦TŽ!®‚Ž¢ŽY˜Žeeº2ãÔl%jþXgÐaTúAS* Zaš¤3‚¤f«™ÚhDn€Y‚®±±Ë¾ïé÷ÞîýÞwν÷=ÞSÄûfvv÷}ï÷ÞsÏ9Ÿï¹ßsï9ç­if\³‰5˜$'VgÏ%¨ ‹r9pôv68eFȃ5⣴ԻïwƒîFŽW½pe·¹íGÄGća­"ŒfØ¡Xù{ÀX–ŠBš†Í¼fôc‡ðJí$7rE±N©M½i•“Q+½kE*Qªœœ#åqøÌiã<®ÃyvÒž®UÖH_…[t‹|®¤IœSñ”;#Å´-_·•‹ ²´€„œQ8ZãÑ@ÍE{îÌF±gwQÙL%OÜ1.,;÷ÊœCŒMäÊéåú8¶ÏWAŽŽÿô,.E”D|ÔŒýTÌV+FëLJgZ΂ºv ©½]~CÇE»³˜­OÖ]öo’¾7ña¶ ×i?*ë ¾ŽE|øñ!é†í¢òÑŽø¨ Áø({°Ø2Ò™<&’SXµ äñЊ'º¾s쫲PÁºa{èBÍ(\Ílç ©ÜÛ%˜P ÂË(˜´¿ !ïŠÔ¯¶gm_Óò˜Hí¾š,Jhð»¤äíbJ('ÓU‘Çr^Ÿû]ÝC›;~¥¯f-4-¤˜^zϘ :IBå ×5ãCÓ{š¾Ù9s„ü?Ç'ÏO–^.&t¢3¨:|höÃH=”Ý/â#¶š:G¬ˆzà£vû‘”ÿp¤°'¡d–Évà»O3ÄÓ¸FBø$„Ð_;ÌR{-lXk'ŒEBv`H¡®ÚÊ](å`†¸ªŠú·Æ;s,é^Ï|Ô1¬þH¹Þ,\ÞAî’NTÈÛÖ3È¡¼¶.Vè²å-³u¿">ˆ×[uÄG½ñÁ)QP±zVnûÜtó‘$Y#÷ ¥œD<±j ~èd¬ÝôjÉBE|ÔË~ 2]BÄÇ>b?òöjÎr‰eÞЕL¼\k&^(ÑŠ€7"»"BÞ@Lú•L¼âêÚçî„’ÕV ÕÞ`‹«ˆ:ã£P(Péœe©ßbŠ•ñŽtêp²u´ø;åþQ>7ÈÃB1T¦‰Sô#0*qÿžù&`Õu|Ч~LsŽ8¸ìø¨ƒý°t*âc³ysÑíÐÈÃÕÞ/¥Éß›>]ú¤}Xé×5ý{3jèùöÖëqˆU›Ó;qX±ž÷ÚµˆÆáƒ™‘Ïçƒñ2¿ÚkÅk-ýûæVÍœ|¼U¬iŠ\.‡­Ï®EÇŠ{qÀØY¸êê‹0¶‰1óìù2~^ÿS'ž|ù5 ÉÄè1CÁI fÌü†çú±òö›ÑÙµ\ÖŽkÁ 7ŒA” ·qï²%xä…·qÆÅm˜?k*vþy^ê†ÇC0„rö²–¹Ô‹P^‡èFȘ¡xÕ+›n 3Ñ~ì;ö#oé°£ï!ª]“ ’*ihÓ ˜ooëð¹Þ”Õ±ív’ÑÕ4†ôjØ…ï^¨¦º$mü>|úàÓ#-©›Ô(-!÷»äñQ|twwcË–-€={ö ~êóaf´´´ ¥¥¥Èï$Áö§nÇ韽 ­ có—¢õùõøÝCwáû_œ‡·.XƒË'>ŽU?S'€;nùvM_€WžY‰OÆò®#qæqã Ó?ˆKï_‹+N›Y:Š˜x—´ÎÁê§F¡í²I8ç¤YX¼t.?¡ Û^Û‰mk×àåo´búèæùïØ±»wï~Ç#Óö‡Ï¨Q£°uëVôôô8ŸÑ~¼{ö#o»½¬Ž3Å(-w 7žÙ)Ù.<³/;Ÿ…µŠ·]¦+Ž%÷g-“0Û5X1†â¾ÎêQPúg)Ù-vJÛ…I ß3òB6’ÇÞ3&ÉÍntAB®Ó]l/å1!»O…÷¬¸g% @+½„1iÁBŠ‹83O)š)â£1ø˜7o/^Ì---Ðh°tzM.JÿN|c…ôíćBƒt¯ÖNãzzz°hÑ",X°iʔ˺žz›^%Üpê<:ñÒ3ÑùØKèK÷ Ú‹ÿìÚÉs¯¢ûæ‚_^w®¿qyå=XQXB OÅ—ÞŠù} §œ×„¦¦!È—rà½òûtøœëñ­•@ÛÌðü^ÇÐdYu+ÖýozÇCçŸ~4RƒŽMÏnÃÄÖ30%_¤é¨ãOˆž§ñ·»)Ÿ0zúû2‹ƒ¦¦&êèè¨UNÑ~m …Â@twÄǾc?ë0. pƒ«a+™c«½—…ûÙu¯8;ëLL{Ãì»§Ì/c<†rPÓXõj|®ךk¼“*¿KÞ2MF® öZUy.å '”¹³¦+&?«=£Æ[¡[öŠM½Ez6Üþ;vŽ5Œ{ òƒ> H8øÁUòÙÖ |‡ëòñlŸ±«Eg5s®Ð§\.íÇ>h?òÌ1“ÉÉa匨ȱa»íHÓ%gõ%®6[Rx¼Bgƒäz™6f~²Å¡²ÜYF "ÂàÑLÄÉýV´ŠÈWÃåKÚ\…-)‹2 9e¹kó Iffâ5Óm+Ñ"éä{6í¶ í-ݧ³ÒJˆ ">">Þûø(p üõñ‡ù¡§ÿHéȉ8õ¼óqäC±åÅgÀ¦bøë›Ñµý îéÝB_ŠÞ¦±4ëäcÌ7ñðÊ{ñ—7;û >qÚD#§3Qôþ›îÿÅjîúg/Íh= ³úöqׯ(™ða:zØ@儈ˆýÝ~˜ ,˜iw­Õ›æ´þ@*ò|¨‘ ö8Oj{ ¤æ ÓéÒ í7$ZË9¦ë£×ä‡/2#$¢ÂÅM¶JÿÒÛ›kõ_õ˜Jp€(/-êÃú;ÃK—L">">ö'|”˘Ÿr©)k ÄU?FÂÒŠS•W)'¥!Ó”A eJWE|D|ì¯ö#QöF+öô•Úvlïû+ç 2×µöV)ŒÌ^§Ô¯+Ü\Ï' ¡k×¥„“Ú^°ÑÞNŒÆ oÕ½{ûº2WvñÜæ·–ÄO‘»úòÉDHgþfVöé‘2&Ûmù†žñˆøˆøØðA€ÅƒRù'3‹x…n15‘•Ñ7`°ßRŠøˆˆ÷…ýÈ›ÿ(+^醅6d2)$¯£–k÷®ÔÌ^­ÀÀª2ñjý”=BÍ%„¸Y}‡åì}ùÐL¼¾š`Âù€ L¼&4ÞIß›¿µz‹šûVê[ᯘ±X’‹vˆV“‰”‰×KÄGÄÇþ1ÍG¦Vª&¯’—Ê‹Ãø¢¤<ï;û1°E(¤b?RKúåqíq5{è’À\.¸×aà^²8—k¹š¾]®T-9[-{ãž’ ^º|îr®z¸x«•—Ïåï™ {ª¡ûÎJD|D|D|D|D|D|¨ã$¾½LÍ­æÊV-]—B<¥”ø¡%)lw]¹ÿ²Rˆº=¯j2φ”4Ю…ºŸ«-zÝä…+;m5² ½Ïþ©†þjøRmI‹ZyññññññQþüã;=§(…*IEND®B`‚erlang-bitcask-1.6.7+dfsg/doc/keydir.png000066400000000000000000002233541233730135600201100ustar00rootroot00000000000000‰PNG  IHDRûZËô™žiCCPICC ProfilexíZgTTM“î{'†! 98ä%GrÎ 9KÉ Q$¨•¬ ˆ¯ €(Š"TPD#"¨¨ H({1ì·{ö|¿vÿ­}ν÷™êꮞ®™éšª±bO %„„F†Û’I{œI¸W b@ÜÓ;‚¢cee†¨ü›¶ò ÑEÚ°ÔÎ\ÿFé߉Ã@VˆÑÿöÙÁ^¿pìމ¤D":¹;Ø;Àé‡*,ng£‹àPáýbê;Øë'fœÚÁžžáþpÌ#ú$OOs2üÂ^;XvG{û#ós"kÀ2…ú†""ÄVËÇ7ÂáDÇÇ'Â;*`rHHÒ/¶³'¢Þ”pd¬rÁ½CžH£Ø .€è–ÿKæ• @ bƒaö_2Adçè‘÷ÕYý/Ù¢ÍÏý„XEøí–ÿ9„'€ÛÞ^WÀVþööÆÙíí­jP£ÜöŽ þ© Ð;  ô€8/¢@ Èe ö}`,pnÀ€b@H‡AÈ'A)8jÀКA+è]  €!0^ 0 >y° 6 ÂAxˆ b‡x!!H’ƒT -H2…l 'ÈòƒB ((Jƒ²¡¨ª‚þš 6è6t‚^@Ð ´­Ã0L anX–†•á=° l ïƒý` §ÁGá"¸ ®‡[àN¸~ ßà%xEƒbA‘P(eeŽrBù¢(¨ÔÔ T%ê"ªÕ‹z‚C}F­¢ÑhF4/Z­Š6@Û¡=Ñaèt6º]‹¾Š¾ƒ~ŒGÏ¡71´NŒ(FcˆqÀøb"1é˜BL5æ ¦3Œy‡YÄ¢°D¬ V«uÀúcc±YØRl=ö&v;ý†CáXp"8UœÎ GÁ¥áNáþÁÝÀ âÞâ–¨¨¨¸¨d¨ÈTTû©’¨ ¨j©®S R½£úN§æ£V¢6¥ö Ž¢Î¦®¤n¡ ž ^¡ÁÓðÓ¨ÒXÒøÒ$ÐÐ\ ¹MóœfŽCËC«@kJëM{¶¶ž¶›ö5í"Äkâð¡øL|þ:~?K‡¥#Ñ©ÑÙÑ…Ò¡;K×A÷œn€'ˆÈWB,¡ÐHè'¼§‡éyéÕèèÃéÑ×ÓߣŸb€xÔö2D32\fdøÂHÃ(ÊhÀèØÆXÅx›qœñ““ SË,ër6kvBödŽQNC.1÷`îäQ££ÇØŽ%›>n~¼%'/#o.ß!¿³@´ ¿`½Ð§ðá åU'iOFœ8erª¥ˆT”Sô½Ø«x°D­¤¶”©4©ôs™cYO¹\ù™ |E\ŇÓö§»ÏÈ©¬¤¯L¬üRåR5pVíl]5guvõzÍþš×çÌÎuÔJמ9Ïp>õüÒ?¾ÿ¼¸`r¡£N¦îl=Ký‘ú‹aß]r¸4РÝp¥Q´±¢‰±)³ióòËš]›‡¯_鼪tõR‹`KÙ5¦kY­Pk\ëB[`ÛÛvçö'×M¯÷ÜкÑÚ!ÛQwSðæé[· ; Y·Ñ·Ý^ïŠîZ¸rg¦Û¯{²Ç½g´×©÷YŸmßã»wÜ3¹wÿ¾áý¾~ýþžÝ;Ⱥê<ì$Þy¤û¨{Ho¨ï±áã{OLž<¶zjûôÙÈÞ‘×ÏÜžM>÷}>ó"äÅÂ˨—믽F½>2J-|Ãñæô˜àXݸÜxë„ÖDï[³·Ã“Γ“ïö¿û6? Oç¼g~_þAèCãG•wfÌfž}òøôésÔçí/Ù³¬³Us’sm_õ¾ÍYˆú;¾È½X·¤¼Ô»l»üv%låÇ÷ÜU®Õº5ÕµûëNë7b7©6K¶Ä¶®ÿ0ý1ºú7ø üþÆc¿±ÀßXào,ð7/ð7/ð7/ð7/ð7/ð7/ð7/ðÿ7/@ñ ÷ü  ;ìçÀ·óÐ9À<-êÛÿ«Žò+Ú(¤´#˜¤AÜÐIXDÅ¡åÐs˜6l).êuM í;:B$ý+FS¦N¢Ë([g8W7‘×yWiŠ_HÀA0C¨^øžÈÑ9±U H’BI£e`Y”ÛÞ +À ÛŠ[JëÊK*³ªÓj¯Õ‡4z4[µêµÏì9©s‚|R÷”^‘~‰A¹ái£*ã“ZÓ:³KæÍ­–VÝÖmFm?Ù­:`‰{ùœ¤Õ]ŒöÙºz¸íwñHõ,ðª÷îõ÷]óg ÔÛïœRz-l€2q`!Šdˆ"EËÅcmã|ãcf%”'6&uzžü)e5 JÇg°ÎT:bšå}(§2÷îÑoÇùòìòÓ . ¹µ…SÄ"¥â½%±¥Åe­å#Kgˆ• Uºg ªjLÎYÖÚß÷ï…uIõ¹Ë/]jèlìo¾üºùí•WçZ¾]ûÞºÙ_ÇÝ t°Ü$Ü\¸5ÒÙ~ûtWú nÛ^¡>†¾»S÷®ß·¹ÿ¡?q€e áéƒO * ¾}t|hÏÐÊãkO¢‡•†WŸ^I|F~NõüÑ‹â—^¯¤^­¼¾1šüFoŒzlp<Âþ-ÇÛ7“•ï|¦$¦6¦‡ß7~Èù8côIø3úóØ—k³9s®_湘¿ñ-/]žûº†ZoÚ þ!¿½ýÛÿìP*L€+Qú¨%t-Æ«Œc­RÃ4ZI¼]aœA†±ŒCL`ÙbK`ädä2æNçéàýBâæÓæwˆF>9ÂÇDrE‹%ЇKøJÚKéJKÈe6d§åÊ_Ý]®¦è¯dª,¥BP™WRkV/Ԉд֒ÓfÔ^Ü3¢ÓN>­›¡¬og i(dDo´nô:ïêãæ«áÇé·êÿ< %ðÄþˆ ›`Ùú¹Ð‡a)¹B­##9"·¢ÞFwÇÔÆfÆÄM Jø˜8”Ôs¨=¹!¥:µ8íXzZFÌá L÷#¶Y†Ùj92¹ÂGyޱ'äáò¡üÍ‚ï…ßNÌžœ95Uôºø~I{éŲêòŠŠÒÓ¥g**««êÏ^©¾YÓwî~íÃóOLûXÝûú¹‹« ¨FB×eÑf…+ZW [¬¯¹´ú¶…¶Ç^O½‘ÛQtóì­K ·k»*îvéIì¥ôyßµ¿gx_¥_l€ûãCºAºGÄ!þÇ*O‡“ž^™xÎùÂñeÅ«ÅQ73ão¯Nß¿ý¤;缨µÆ¸ãÿ_õô3«@µ9ŽlXŽp:)™Ï@XÀŠ;U{× d¤¬ýûü@!•lf¤Š-T!p~ ©T@;R•sHš‰@jä Å@¹P-t‡¶`X ö€Óá ðcx%Œ²Ce uá¯hQ´7ú,z#ˆ Ä4bV±dìQìkœ$. 7L%A•A5IM¦®¡¡¦¡Ð¼¤Õ§mÀ³ãÓñßè¼è† †„úÝô—DÎ1 2Ö0‰0Õ3Ë2_%ª»*ç3VÖ%¶ÃìœìMÆï8“¹x¹:¹=¸·xÊxÕyGw%“„Hùbøùù ¤*ÎU ;‹°Š<-óŸ“h“L—²–&I/ÈôÈË…Êì&íÞR˜R| Ô¢|F%[5RÍU]_CR“QsIë™vëžS:Ñä}º&zjúRü†œFDcFS&3Vs !K+5kC›ȧö™£öÞH§ Îãûˆ®&n)îmó^bÞ!>-~¿u@MàZmpc(]XåQøîˆ¢ÈíèêXã¸ùƒ%‰ºIsÉ¥©†i+µ™{³TsVŽ]É8AªºD¸ìôiÚJ»³•5sç5/äÖ¿jiŠh¾ÕBßÙ>Öa~««K½ûzŸÖ½¾Û‡w†Øžc5°yØiœ®·BåHuƒšŸ:—z•&ñ»í]¼þÝM‚6¡›Þ˜þ1ƒ ÃGÆh&,S ³ ó]¢ñK9«:ë(Û!vöû899û¸"¸ù¹Gxrxɼ»ZHø¤ùfùÂå¿ ÝαÝ%º Ö+^.%i)%)—ž•’½&W!x÷E%eMEUi5qua AM~-~mþ=:Bd]1=I}9C²‘¹±³I iœYŽù‹+–ýVomp¶švQö3{ÜË\^¸²¸Ù¸ç{ y1zÛøœô}å/x3ˆ>Ø;äF‘B90!y,j%Æ;öi¼ÉÁ¾DäGÉ®)óiG2÷ñ˦͹vtÿq±¼Å‚G':N]/î/ýXÁxFµÊ­:ã\ÃùuÐEñ›¦¸æ3W{®¶­Þ`»©ÖéÙ•ÛÝÑûõžp¿Çƒ’Á+C½O†ž>yÖÿâÆ«ÚÑœ±à ³IÉ)üô̇¦ŸÏØ/'çè¿FÍ|#.Z.%,W¯t~Yý°¶°¾¾±½ý€·¡ŸþÇ <^Äû:À‚$pa¦ÜÏï=â” +h?”ŽpKº Iœ1fp\ß…—‘³f/ê8ê>‡6FG¿Äcâ0ϰJHô á‚q¯©Ì©z¨µ©oÒì¡éEü=¢#ÐÕÌ ôe F kŒLþÌ|Ì#Ä\CV4k/[»5Ç'ή|î@}^þ]ЮIR/ßþãH„â!d&¬&"!*(Fß%Á'),%-­,£+k%ç.¶;Eá„â¥.åQ•u5.um Í|­[Ús:|d;ÝL½ý%CY#ŠñU“M3#ób‹Y+}ë ›1;’½C½ã²“ŽsžË;W·|÷YOS¯‹>t¾a~Ã*§ƒpÁ”Ñ0Êp©ˆ³QÜÑ—b5âúÚ'Œ&yšNñK}Ÿî›ñ>ÓÿÈç샹ø£§Ëåõ¸~;™UÄW|½Ô®ìkEÎÙÊçgSj¤Î½>Ÿ{A»nùâÅ¿&¾ËcW*Z´:µëßPº)Ñ)Ô%Ø-Ò+sWí¾É€ËÃÀG¡ƒ‡ÝGŒŸ‹¾Ø|Õ7š9¦3¾ü¶öíÔöû3efš>ïúrp¶mnâëÆüʧo}‹åKÎËËÝ+ßé¾—­Š¯¶­)­5¯K­×n0lÄoLoZn6lÑlùmÝùÁûƒòãö6ý¶ûvãŽÿq°vÎ@£N2ÓÕûùòÿî…ð¼~6&äŽ ¶Øáv±"×GO=SäÉ\?(Á?ypˆÄéjp¼À– õ²°üµü lŒŒ…¬(‘äÌŽ`?J¤•ÝoyR|€®‚ñˆü„o„þŸy*÷{š ü0@@äÍáQ6öDðíˆh[}3 x*>ÀÎñ·Î’¯Þo9 ûÿÒ™#wl‘?`üAa¦;k@lÁJÀ_…0¾|A( 3º@ï÷] 9Y=‘žh¤/÷AF„!cÂLú­§û?$?Çù#ãþûŒ$„_†Xûcó—5bóÏœÀÁ䞈¾ÕE¸¦þËæù~®F¶^vFvóÏšÐÂhy´"òÛ®‰ÖB«šÍ ¤Ð h´Z­Žô©0…Ììÿg;ó‡4ûE‡Å©9 ½;ïÝëO/pø©øŸ¯ÿÇ @àà—Ö/V€ð'r‘XÄOå5;¨O7=yçù_[¤oìWè†QâÂý"I:kÒW’dê--I’—•“ÿ–éñÅ„d^+ pHYs  šœ IDATxì]`ÅÖþÒ{ï$$$ôÞB‘Ž"ðQˆÈoCô©<{ïŠ>Å‚ ¨H³#EéPC 5„ÒHo¤'óŸ³É„›ž\ lvïî”3ßÌÎ7gæÌ¬Ê) …€B@!Ðr0l¹YS9S( …€B€Pd¯êB@! P(Z8ÆuÍŸ¹JÂTv¯oÍþV•s4ÝQå³fŸ+% B@! hÁTÁK2Ç-–ŸêÂK5qX)ˆ,>ë^·409?Õ‘zuÏ$ê¬P(×ÉI•¥XݳÊü7ç{ºü#¯ù\v]ùWIöHž‡û4y–× _·$@9Oeàñ N>«p[ýT( ëŒ@eÜ#ïÉóuIoÉé{1¥"Ëk>³c*Æ×!z‹ ^F¥×|–Ïø,A•gºuC: PÅ3g¦²{7d&•Ð …€B … 9Gž9[òºâùFͲ.÷ðµ$÷¢Òkyæüj„O®1¾n†+%{òÀø`’gb—GZé}:ÝnýúõKºwïžÉ¹544” ß™W¹T(ÍââbÔCCCmÆ÷P3·±ÅcN²§ƒ Ÿve~ÉÏ’¿× ãëhõ’à¹CÀ‡  •Œ”Ĥþ* …€B@!pÝ` žœ+t–’øË çW¦ÙK^jõìÇ”3:”S( …€B ù `N¢h¬OgÖôå!‡û5I+#{~ Ÿµ{Öè™è9Bå …€B@! h>Hnf’g‚—G9 +#ûŠDÏdÏš½E¹ê‡B@! P(Ms3¼4Ô“dÏç2WÙóC]—Cø²÷PX]( …€B@!Ф07ó|=“=Ÿy ^ëÓe‰ã›eNÇ8O—ìy(_~™_u¡P( …@“#ÀÓìÌÑÒ¨^’=Szé—#ûR‘ù¡.Ù³öχ2Ð+H …€B@!ÐL`n–<Í„_FöºòUFöü\’=?—Fz$ÑK²/'aUd/=I²çHªšß—~ÕY! P( ë‹s3s´$ûJS¯ŠìåP~E ¿ÒHÔM…€B@! P(šIòR£—ü]N˜ªÈž=ɺ„_.°ú¡P( …@“"À<^-ѳtÉ^—à+^WôÛ¤¹S‰+ …€B@!p ÑWän "Eદ( …€B …# È¾…°ÊžB@! P(Ù«: P( Ž€"û^À*{ …€B@! Pd¯ê€B@! P(Z8Šì[x«ì) …€B@‘½ª …€B@! há(²oᬲ§P( Eöª( …€B …# È¾…°ÊžB@! P(šÍ—ì„^¼k`Ó:}ä«isÔ¸©WWF »š±VøÕŒ‘ò¡?ªªêÝ­óª°«9dý|\W²×­ÅÅÅšÄ|O÷~ý²Qy(]0ùZþÖ½®Òm qJìølhX2È.ïé#×…ìe£Ã/¯eæ8Sò^cgPV<ŽW‚XTT¤]súº24$íŠùâ´øŸõ•·†ÈÛ\ÃÊòR¸Õ¾„t±’øqhUïj¡òY?¸îI§ê›D¢ögÆæ!æ >øZÞ¯}Lµóy]ÈžEáŒ0Ñr¥HHH@xx8RSSµßüL_Ngdd„V­Z! ÖÖÖZº, ßoˆã8ä‘Ç#%%E»'óÛøo¦°\VŒ¥ruC@âVñ\·X”o…@ýÐ}g¹*W;$±3uêÔ ~~~å¿v±ÔÞ—ÞÉž+“LêذaÒÓÓáåå¥õbj/ný}bûöípwwÇ´iÓ4â—•´!„Ïqp¾øHLLÄŠ+àãã77·ú {“†Ü¼y³Vá?cc½WÍ…rdd¤ön¢EåMe¦ù#°zõjŒ1ÎÎÎ×­Moþ¨ÔNÂèèhœ:u /¼ðòóóµ¶;MÝqÒk‹ÊD(ÉÉ6-- Ü scôàƒÂÑѱvh4’¯cÇŽaåʕغu+îºë.MTö°êšŒnþ¸ àïïI“&içºÆw³ûç‘‘áÇ£sçÎ q¹Ù°äÆbÿþý˜Ò¯²k½“=“/ÆÅÅi†l ×ÔÎÓÓ&&&¸|ù²¦‘ËžTC´{‚æ^Y}âhj>^›¯çáóæàxY2°&Άƒ,§ìQÕU>™Wî(4dt ®é*ÿ …€B@!Ð2ʦ<ë#Wz%{&?&R&T33³fµÑŒ\Ê£,§$ûºjæ\8F÷ÐGA©8 …€B e" •F]áëÆtz!{Pjº<_χ¹¹9¬¬¬SöÅņ‚–––Ú–½LôúìQ5HPX! P( D ÑÉ^öL˜Äñœ}srÜñ`²çQ&{…`¢oìy’æ”g%‹B@! PÜœèìYc–š=*Ï7''5{–‡ñ¥f¯È¾9•’’E! P(Fÿê“%Lž¬-Ë›ðüxss,kø<ú ɾ¹È˜žŒ¤Ô ˜Y;ÂÉÁ‚öï70¢­† A» ¨À˜¦#ôá¸£ÆÆ Ü)¢dªt¢˜>”W#cÚCÁ¸Z¿UFr°¬d–alD_:4ÐK?÷:åäæN¦˜Ú•"ª“&Tç”S(j‡€^Zqè‹g°{×fœ¸ƒ\Vñ•»ñùÙ· ›·ì@\ú(®¿ñŠPJœµ³þ5÷Íù‰9uè|‹t<óÈô»ýœŠÍ‘Ñ©s èeŒ ”'“=kõ•èÑÐtZJ W_½£+œ­ËÄͽ’‚Ë´ó^z¶Ü=<àâlOÃ×ëX³gÙ@É^vTøÌsùMኈÈ/'&!ßį}ú&ºo Œ/£“ŸL|ZÚ  hÓæ0±ž†£ÚøÃ¿Cgx99ÀŒ¦ªr†Æ¦„ܘÐCaV•lï›°¬„™I³žn¨(·ú­ƒÕw3š~3°(™Šiš·TGuYoò3SqhÏ!d¥ÓÖåÃÙµkã©Ãwúø!Üo†¨Ô\tò¤€ÊÕˆ@Õ­xA«öÀÊä)Öìåy¹PYøkŸêlüøK0¤þX”—‚ +>Ä£ú`ê̹øggåÂ7ðw@X»ç=‰™à›\«§üç#¶8" † ë‡VÎvpï<Ë~ÿ‹?zm[»‘¬´¼‘ó®•^ÃÔã›ÍÁGðè”Ѱ·l>û#hâ5ôÞpk¨`*|­PeXk¨š«Gs KXÐ"-s3SXéQ­;n†æ°0瀰hf†ßÍk–«Ñ5{]­^jö¼ôŽ ÿZǽs#˜’Æed\Úï(ÊBð†%øòëo‘jÞóžzwÝ>¨ñ%a¸Âö,§î!óp­¼ú½“½›×!&ö2 а}ãß°5_Sœ;u ÅÖ®èÜ1@¢Ò£(—楗áçõûZŸ^C1ýÞ;Ñ¡•3iÝu‘] 2ìÎF%çSøx¸ÀT‹ û6­ÀÚ¿vârª »=‹É8¯ñûŒ…YIØ»ÿ.%£ÏÀ@øRL K2Q”“†}{÷"&ÝýûÂËÝ (LǶ?Áï›÷ 1-®>{×=Ø6UtVâÂC±÷Øx·ï|Èp¯$ ¡Ø±ÿ$Z·ë>]}¨~–A^I<¿_€=GodÛnë[óúu†R#cáâ¥8~.šæžÿ®ãðô“SàjG+WDï BxTµ‚ô_§E! ­<1rØ8Ø–[—¢½Î~Ó£OcëÞPóV1ª¸u/u™ñç±e÷AÙ·ÁÈÁ½`E8fÄŸÅŠï¤r9‡<2BõéÐÌœö^N0*-¾„„fÓr<ºƒGF+'jSØG!NíÂáóI0t$ü<ÊFsbOïÀçß,Cd|. ]ðÀŒ0¼‡_%ñ_M©²+… Ú»ä÷C/_K|¹`Ž„E‘å f>ùFôª§ÈÅúï>ÄÊÍÇ‘CÓH&®¾xèñ§0¼S«rig'œÅ7ß,Á¾ãQX,ÐÚÿV¼øâ ¸ÚÔ¯žU&{Sß‹;së~݈ø¬B¤»€oüwŽ‹­aˆË–`CÐQšB,†C7<ýÒtñq@Ñ•8lÞ¸cR€üü¾â+Œ!=ýµ,¥GÇâO¾FHt¢fÐìÝa(ê´q(1…Ùúgb [câ˜nøù˰~8,ZáÑg_B_?GÛü3>_ú+2…!z˜„Ç¿6ZPˆÐ=»“ç€Qý;bý÷ïbõö0Ò¹LqÛ}s0k|ÿ¦†µúô™ØäA>¹µãeC‡méèIÇp:&ÓA^«vD˜‚´d‘––&"##EHHˆ˜?¾X¹r¥vÿšyébÅ‚×ÄàÀÛÅ‚ïþ…¢Xœ ^%îÝQ8:·Ͻ»L\ÎÌ/ŒF D!¥Ágé8ÝbùC÷L÷U¸¸¸8±xñb±páB*¢££­4õPEˆò·9]ÚO Çá׬Y#ž{î9qæÌ™òkù+lï¯bpoAýAÝ aae#f¿µPìÙ´RLÜGLxè¿âÄÅ‘$†vnýfˆÇ"#Qœ$–¿3[tñ²ÄY¬÷P´ÝŽ÷¹ÔjÔÞŠÕoϽ|ÄÛK ™y´Pl^ùªèßÙE“ã·rp¾mZ 31jÖkâÔÅ„Ú'Q‰O®+ÁÁÁ‚l(Daêyñè½ã„»«›xgé/"13§,ÄåãëÅ”¡½„KàdñÛ¾3";邸ðÁ»…¯ƒ• †¾$ï$Ÿ‹»¿xþƒU"&1“ˆU‹^~^¾â‰÷V‰èäl±gÙk¢oÇâåOW‹¬œ‚²ø·¬z_øy{ˆ{^ú^$¥—¤›zv·˜5¶·°25.‹ßÚÙSL}lžˆMI+ [Û‹K‡7Š Ãº 3£²ø``+†Í}OD¥dRµMÏÌž œì-[ÕÚBØÚÙ ;[áÒg†‰H²X<(¾úê+‘žž^[®‹¿˜Ã¿‹®m½Eë€îâïS‘"ÿêk+‚–>-ü½]E×éo‹˜ä ò·˜2 §°4¾Š11§hÓöV±fÛi‘à .‹éwöæŽ=Ūá"· _|ùÈÑÊ}°ØrQäI@DŽxë™iÂÉÑ_,\Bä–$¶e‰Òɋރ2Üݼۊ÷—þ&òò¯ÖÚ€“"Æôó]†ŒÿÒ_ÐÊ8ˆeëNŠü‚Ò÷®(U|ýòýÂÃÖ„Þí«uÔ­}ñŶ“$w‰|i‘‡ÄÔ[{ #ò¸KÑûÁWÄ…ŒÜÊÛ¹Ú«g?sçÎçÏŸ§z[»v&xÑ<ÑÊκ Caâè%þ÷w˜ÈÍŠOϸ]Ø™_Å’ÛŸ¡SDPTº¸µ[ôð¤{hø™šŠûÿ󖻈 ŸEßÎÞDÑWñÌDÇAãÄÞs)šŸâ¬ñpGÑÚ˜˜ýè}ÂÒèªßŽýîK?xWtq²)ÃÞÐÔAü{ÎrjýØeŠgFöÎnƒÅ¬i„­ÉÕ°ŽžâÍï6Ô«|˜;fÍš%öíÛ'ÂÂÂ}¯EÑx­°ÔÚùnfŽf®fÎfîfg.7$Á5Ž/QeèNc9Ž˜ºvÈ߬ÝWç¸ã”|n7¾ÿv6¥`̤™˜yÿpµ. áíó¡AxÿùÇ1úöј1çyü¾3D³¿tî–»«7îB•’É€œÔËøç÷ÕX´| NF$Vš4ËÄË*å”çJ”Þ¤JuëÖáiÛ<ÀÓ5寺øä3k gø¸w€•¥ -làä_˜ ==™ÙY(.ªÄ°Œl6}ñ)>øü7œK5Ä ‰31ïÙ9èéëDÚÍv|´`1Â#bµš)Óªé\XŽ´´ËÈËÏÕ°‰<ô;þ÷ÙO8r&~{aÖ¿Ç ½¯)bc‘“[ãšš.}nd× =`š›…½."%õª!ΙgqêÒetõk kÞ° ?lÛ†ÜóÈóøì“w0åÖ^ÈÏŒÂ߯Æá ñ(àf¥¢3àï6d 4„Òj«ùÈ';“LÚF9+—¦vèAq~">zì¿X³9æí1ûÙWñø¬;`ž“Š5 ?Æ×?ïDFNíB,\ø9¶‡k±ø`Á·xýÙIðò0Ä®o?¡tŽãJ¾!ìÝáíí //¯’ÃÓÔ»DFF&r¯æ¤õU’«Š¹lÒß.>]Ñ×ÜÉÑQÞœ¼ÂyD6¶ï8ƒ„Ä ÜÖ»¬ÌŒ°fñûØzþÝñÚG_á“·žDŸ®ˆ¹¸|ûR2²+ÍKqq&®df‚z½åžgÓ*›ÌÌ,ärcdœßƒgî‡àS—Ъï¼úöÛ˜8²7’c"ðö¼9Xw$FÓ¤ËERÍÆþ ízz÷VüµëO¸/=ù$i‡Hº´Ï=ñ6Τ±­ÀæE/âµùkPhƒñO¿Åÿ{c;ú!ùì~<óØ‹8“IíPV}÷1þÜEtŒw>]Š÷_º—ÚS^þ1>ûa½r²³Án€G¶Þ]ЦOg˜Ó¨™™•5û¶F[' X÷ ¾Y»pé„§Þø ‹>™‡>Ýqi÷ÏxïÓÕ4¢f‡þ>}h~ŸxÌÀ­º†Gâ7ªOo}ô>žŒ‚[ÀH|ºd9Þ}ù x»šátðz|ñãJpËi@}¨¢Â DŸ ÂâEkàÛsž|x<ìÉߟ0û¹q¾À 'OǸ^aTеë¿AH ¿ß(HMGÒåÝøv埰ó‹—_#ûwFQJ,Þ}á l9™ÚlÑoôa|Ω$L>ó¼=judhhlAæqøuíV¬Ýx=G=€Ù³î¡¡;»RàŠqd=>xãM¬Ø g2Ö;z›öÂs¯¾†áŽذr9.Ûöƒ‹gGŒèî‚ø‹aX±| àÓs0:WR<„Ï;yÍsøò^%A´[Ôû¼yó´¼Mž<DëÖ­µpå†[«Š Šû\q—ÿè„)÷ÌÀ–/,Yþ!FõòGìþմΞºhÚpnùÀÜ…*H¸€?ƒw žÖ»?øß7ð-…kíbS£aÖ¼×°}ý^œ ?OX™ÔŽ î Q ùع场˜Œ€1Óñ¿÷^ÆöŽÚ¿<ýv8X^¨Æøe`†cÂ~óv„ /'ND±— ‹2væ2s 0ªc m¬ð7-ÁJJ+Ŀ美çÜ/;2l¼ß?ä„L”rL9Ñ(o%åÅÃäWŸhy¦Ÿ|žà"-}ü-,¦¾øš†˜ÇìJF‹yèlû8^üf5V¯ØŒ™†À– Z¸Âôx\†ÌáÔ¢NY%4`E‚;îž•”#—1?0À6j#¶§g¡Ó° X»zÚ¹Z£è‘ixø®)ø!øV¬Ø‚1Ý¦ÃØ¼TÁ¨ßµ?¹]£÷„¸eÂsXýãsp±4ÃLÀ¸qSp$n=~[þSܱìçÝH)6ÇÔæcÉs÷Ó\µ þ}ÿ]˜:~8Öø«¶F·{»à̾(¶tŧËV`J¯V06|ÝZ¿Ž)O‘­ß…‚Ã`nZÒf]+Ïs§ËíÓ±Éߣn¹FaÕ/? ••%-ÛJd\ˆ?]Œ§'ô… sïÛ#ÈòþÀ/‘ùú}øjó÷Hˆ_÷šcÙŠ?1<Àù±¡„ÝaØ`ñ†_1Îß–À˜Ž»¶Gï‰spê\°†ûýíMPü)¦†áû]‘X½æ cª^¦)Ù¹F'{IôR[–¿«’’‰53é4~Šœ¬x¤øbÆð¡è×·MYÜôh¬]»[Š0û¥ðȤ‘¸¸uõô¾Bк¿pËÓѳs[üL†|±OCtwD쥣ˆ‹IB[ïFÕ¸Öq„;#ñdõúôií÷¼ÓËÄróJÖÜÙ<óõH»ÊMàý÷ß.·}ûö0`@YçæÚÔjw'Ÿ4š¡ S1òóY³¬>·cáÇ‚~ î=îÄ“î@+"zvFOÁ´]àÒ¢ 8~·ê+‡ºY®rCZ|A[C¨±5Ƽ‡¦£o€7L)aÿþc1ûžM¸uBK¯±ÿ´%hïê€mQGq&!Ý ü`˜…§Q`è†À[ÚÑ*St>;vÅm'ÂÕ¡¤ƒhéêw[²5H¢fžúôZƒ_7 5A>¶mÛDK f¼þ>FõîH 7¶–xð…gð÷ž¿t1§ãÒáI¸›V?€¥ @VÔ»$¤¡Ÿ‰ŒÇ-þn0¡|ÜÔÇð…{W¸Ñ<µU;‘‡7?þ!iiðþ×£˜ûï»à`]·²¬[îË· imýáb¾aÑ{‘œó œ`‹ÇCq<<¾ÝÇ¡gG˜™bÜ¢‡a;Œê×^#z–À£•7¬©žiȽµ^†*D60$ò΋ÁêMÛ‘/<ñüÃω¶Ê&ÿÆN~xþÝ'±cÂ#dὓ–€Ý o"ûZWÒÆá€§ß˜‡RÛ ·#ðÊ#Sqï«Kºë0â»yâèá8tè­2#¢ggæÜO=z/¶„.Àîßv!çnRIx£ ¼ z_#qWw"{CŒœø¾3ñ‚¹O7 ÛèM¶&KSü) ¶Ž(.D>½¢<RlX’¿cg"¨ìMdˆ€>c°ü‹/gÕZÃØ øJé ·‘<ªh ab‡É3ŸÆ~Ýq›FôZÔðh× VÜç‘Òê#xtÔÚ ó^}Y#zöÙ»g Ų ®†cÖÔ¡| °õÇÐ.=ñÛ‘mÈHä=DܵÛüç‘gž×ˆž¯ í|1ïµ·°qì ì;ySáXÛþ"Gpœ^j¥<$éW•Ö¬r²ã~)MÓþ /aÛþý¸åÔ 2\ñЂ%D„!,,ûŒÆ}wŽGøÚßAÀ†bË…(¤ #¸´CöîpDqgÓÐlÄÉ‹È(rD»ÎàL3U¹””æM´-}™ìÙp5|>¸C {æý._&:êH—œœŒØØXí^M£2LmεipØO:-_Ìɡ‘•âb/áDšçÆ IDATQ:õŽ‹aDbR”MËôò‘œ’EÆ.•©·ÕKBº rh7¿°Ô|ûCW_OØ2Ók΀êΰ§/Ö¯®>mG7?tíê‡ô…ŠFf¿ÈŽ8Púµè@FWî.°4²À­ãïÃÐÑù´A2ÎA$iŒ!›6â #È*ôj€öËù,DbJ5<ôöÒ’Ÿ á§5c*ίa~œÌèCJy™HKç]é. ÔäLLÌ`MZLAÖ¼>kLºÓ¦Ü~=:áîéTÅo«cõß!ȵéNCÅÀÇÕ¶ö„T“@z~Þ¹[øyÛb ±ž‹Í¤rs‰G‘Lû[ ê7ŽdUm`f‡ç>Üül$ÆÅ $4 gφcÛO+ž˜‚Ö®×jîµ[½ÉMCbVš¸#—FVN¿RÒ42AvJ,¨'e¤jS7µ—ýäáM´'#V]BoŸN0'­ÿJÑeœ¿”KdhÖµûx´·5Õ £d¾í†ÀÙè+gåPyšÂÁŽ4ÒüKX0w*.ì¾÷ß=½:cʬY7Ly˼Õýl;Ê?—×Ú÷ŸDÒÑ͘>í> Ð Ãi3¬’Š•ÇãK|ÛÌ\Úà©wß§é­,ÄÃ¥èœ;së×­EÍþxR;.s“‰¥ ÚHWT˜¯õüÝzÂáªWqâxG¦Ämh†to'ƒjç¶~mi”ÑIÔ6åæQ;PËÔr‘èù‡^È^Wf.8íeÓ½Yîš›M8ùÂä±#Eój›ƒ×açÎîèp/Y£";#…ŽDEgá§ïL°ÙÞÅ9IØuø4âòÝ©1.DOž¿5-ÂÅS1´y »D]‚‰»:¸W9¤ÂGGGŒ%+PŠwrrÒ>ÅËûÈÕåçßýõö’5x~~>Úµk‡©S§¢wïÞ Ã >|¸l£\6õø#+=ƒœüë3L¤£2H½Yž®+àì ÙˆòUÆÖ£LhXV/ÎÌÝÛu¦ÞünF;‚̬Á8„ÔÔT ¹³ÜœJ´ø¬ø,üìC|¹üDÅ'køó«É¹5·òj˜hEy¸’NóÁÅÉøôÙiø´²ØlÍPDu©¶=C[o<@¤~"ê Š/ÞÆÊ¯?‚kk_üß^Ƭû'¢µƒué'ý_¾ýÒh?ŠÇÞ¤ÝãzûÂB®^©LžfvϬUúû!øD0­<8‹a]mq(x3Í?[bÌð^ÔÉ.±Ð>º OÎ{ÿðÚkš¦aÇmlM£[5e×€")à¹{)CZ(fM\i»Vù%J =•M{¥un²lv–&°Ô!~ìäegJ73û²òí4~2q¥a`žÓqT¿X7ÍÊ=,a‚iÿ7[޼‚à3—°æë±vñ§ptk…Ùÿy=0~ÎÖµ–M'™æòö?ƒq›Ï`Ý3زæ;:–Ê”‰‰¤µ?ýŸ‡ÑÓÛ¥\géjÆÎì_‡gŸz›BR@öŽ%oº,ë(Ð]? }A:Àź|[Æ! ,ËáË£ 市l«ÌLË«îή°t°§Õ3)HÉ)„§´5+¸i”Ïm#ÉÂ='v|–DÏÄZÙ¼=™ÂÔÜ wMš†ÿλ¡Ùâx؇ØòÇ?ÔsníßVñ4&ã̈ð0üšœ@C~ 4í OxÛ®m`miŽÖ­:Á·­+.¤_Àá#–ˆŽŒ…‡ç­ðrm­ÉRÙ–‰kòldÇZ»<$ÙWÎÍÍ C† !­³+î¸ã-lBB’’’*ó®Ç{%MRiÞEypoÛ]ü[Â4zÉë4%aDËûvõ§¥Må+hmã—$?'› ‹ MzÑI×ÑÒ­œuï5æuï~pw³Aèñ2æŠÃcQH)pE`omIÆsÉXöÖóXðã_H2²E¯CÐÊà íÈØç¯M é¶Š¯ë5âUÕ°ku·ð ri䤨À=úßB&}§€ZxÙ¾&­ÑÚÍ–ê÷5QWqÃî}+»ô—K~ÀZfv2ôâ#Ãðæ“3qöÊ"|2皆°@qn~ü&^&{‰!c0{ÆHØÒr»ËÙ`èˆNXøÏ~ì9…é}­±ûh Ì<‡¢o;OzŸ ‘—tÿù6¿kïötßNmào(ûê|—”b¥eI•86é*È̆-_Øv´dE"=çoNØ· „}ß¡êD®yÂmœ5 Ó`M¹pL ä Èf©T+4`;ñ ÎŒFxÙÜ´-mödÿaÓ±öO|µèKì=‰S¡h)nÞŸ÷ vÓRØ_Þ 7k—n™Î1€ì–hjvñ×`sÐ9„Ÿ>†s—RðÓg¯`ÇÙ(ìZö?êð\[B©‘‡0eÚ ¿˜wŸîèÙÍ.ÔN;Û™"°°|EånldÉ#ù•8Y)*yÄ·˜3œaUÑ>‡¾»a@/(Wªˆ¦)në…ìeF¤V̤ZÙQÃiëì‹4çíëè§¡·âÄà`|¾v7~ýk+:uôBQn!ÍŸ[áÖ)à™'f¡3¿ôÚ|††Êœ]\aUœJqøàÄžüòO’2 0´«7Îñ „ÊÏ¿ó!;$•ûºön`` 6ÀO²É—5ͦq%ÓÉÛ ¦4ýПæö>|v<¤a#IU”OZ­é¥ùÄêv«J~n-lií²± M d£€†µ9Uùº¥Æ\ ãʬ²ßUÅSßû=F¡·×2œÜs‡‚¶â؉3p¢Qœ.d¡kM sü±l9Žl¼ôêxðî±dY˽ó,¼sö5—k`{Ú呿 e•å¼’˜@–Ý%;*ÂÌŽmh´E>ž$ízê¤ÈÜ“qd^6r‹ŒHÚÙðêíj³[L›&¥%gÀ‘¦"Þ_p+ò³Ò~òÖ­üŸ}»{w!aÙÙoþñC,ÞŠb§¼üÖ‡hçéT…fSm’Mþ°ó-“ág±g÷ïÁ¾v4Ý–’‰ÂÛÑ<Évàï ØIk£[ŽÅgŸ’mYB›’mD^ôQXŒªuU7ü( Q™ÉœÒðz­`4 ËVúÖnÔ ¶7¦Õ¨Ýð9­ÐéâI£TÒ/¯deÂÀØ–´r .޽S®à -ÔÔÈ*$jÛ:Xµ…¥1›yR]‰É(™êÑI 9-´pŽ4þÈq:m?mæˆ×çD!MGž¡z±iÍ2ZQ³'vlÀ¥ôGàB“Ð¥ý˜ZÂ¥@Fj ŠL=ñÄËß`.zDœ9ŽÝ›Çü·æÓÊ¢¿µU >N×vv‚6þ¤}ÛÎ3°êç÷iGÉüzQd0Ö,ZH#oe5£ ¨kï”=ªú‚:÷d†ôL^tµÓÌä,xôuƒƒ¥^iµjÙjx¢[ßkðZ¿ÇL¤’쫌 ‚V™jC]v^0䎉èÒÞÁ»×aÿáã°´§¹YkkšÉ$KYkÍòÝÑ,þð9^ÿà3¿ c'øv뤞Ç_¿¬@|ü|»Â¶Ü«’«&ò—óòÜQà8šÚ™ZØ“])Î8†”ä´« óO/=±ñùªHÊâú9.K ;øÐ°Unô>„шIVžÌsï=M[gÖ-Ò:ø6´ðÀ€ÝagMS8˱÷tm´2Ô»¦6T#rZ• ß!7¨<5¢§Aˆø 8F#YT·ª.OÖî h¹f2~éí»}*$ùÚǸ90†…•3 r’¾£pu‰]nlž=·¿hy'­ðª•‹8´ãÇÁ}sÓVÑÙôeC{t ‰_{ M½hC¤,d\¦Í_^ûl íoˆ[g¾€[{øÁü¾×ÃÅ»†öoƒäˆÍøü‹_˜aE#w}i÷´õŠòÈë­ã¦a@Gè9|ÄùÓ¸@ÄÍtYecÅsqmÐ’V¶t.'å± ß|EÙçÐÓËkWþ€“´þÛgà\ŒêJ›g9äbøè\ssgNÅ™¹Ã¡8¿¬\ŒçSÑû¾¾híH+„JXM]JÓ72f[CDžÁsϾŽ'_zchmýêÐ_ñòœiˆ»ø<hÈ~Ç_?`å?'àÐo,º´²¥NuuÊù+gðáóÿAúÜçÐ+ðº·{¾{™¦aˆ‡ ß¿‡ s%#5‘![ðÍ Ú ìŽ¾eFÝ&‹ûõÜ'нÇbJ¥²û4’Cëyqöè¸çî\ü{R­šßöÇÁØwâo¦Žëj£:©!󙉞‡¼™ì™X¯qÆÖ1ñøô ëcß>µºŸˆ·ÝÚ!"6~}Ѿm¼ù?OÜzÇnÄÐò{/ô8=è%‘M ¥½¬HÃõêÚÝúÀÙºú^º”I+û5²^§l­[@Ÿ\z¡‹KÅ72±@‘Q7Ø€ˆ LIE>u!Ù‘î}øydgáƒoVbù§o—I;øÎ™xå±™hïér­RTæëÚ‹"²Æ4'elhA ô<o>_ÿ»Öýˆë(]š'Ÿ4å>ß±&j c! Á»“bÑÑ× ¯øëKµÑ6ƒîÁÂož‡ ÙrпG澊ü„t¼òÕJ|3ÿå²èÛ ž„ïÎCGòGxyøop>v2Öî:ç©#(]ŸÛ¦âýWçÑÎqWç‰å³õlçÛãÆtCȲ½X¿r úL}O=ü =qŸÿ‚÷žª,kž´GÁŸ|J#·´L“vΛ9õN¬Úõ.önû ^ƒ1cñ,¼?w-æ,Ø„Ÿ?y?sH£®xwÁpþÏÿâÛ-AxëýbL÷«¦8ÑæŠåˆÝ¤ˆ¦‘(H^aiï³4eÞ]“)¿X[…Ä/ûj‡»FûbýßkñÌ®µšO‡ÖíñÉ·Khsžæ[>ÄW[ ";Î)wx"Õpk:x+"Vi¬kuýÓïrŽŸ±¦LûÅÓV«´®•†U÷ìÙ£ ‘O¤ O|||ÊùoÜ©ðî›oãDš'^|åU ¦¨ªsGŽ¡%~;iG>gͲž—ÞÙÓ²>^z'çå« Ïsöüy\ÚœvxKí‰C‡áÁÔ–äU¶ªg‚ŒR.]ŠÆ•b3´öt… ÖÒ–±Ñ1ñ´;¤<\i=/™É]¢o²ç[ÑG`œaY:<Ÿ% ÇBöãè©s´yˆ1Y¥ú¡Oï^ðt%óŸ:ª鉗p9%N4ßhoGƒ›Ü*äàäá´ú4r­„èÒ½ÈÊ?'‰–»YÚÂÍÙ¡l®µªüUwÿã?Ö6&êÓ§Ï5_ILOŒGÙ#X9ºÀ…†ðMØPF:2B öž¾p ü<ìËiáÅWÒ±ß>Aïg± <|üÑ—ìixßÝŽrz\8vlÛMgôÎS½hÕ¶†oúHŒÌD5r5Å£'i›`>|}}IÆÚ ™™…c§. ˜Œ#¨¼ÝìÌɰ2†6ñÚEóâtŸT Gw_Ü2d :ûÑž¥íXQ~&‡Ð>ùðòmWd'c÷Ö-´=z­®Ž§FG"6=žÞ~ôÑ©|ü§oO|b†Óv¹4uBs÷&´ë^ïÀèÕ±~üvìØ1, (Íž=[ãæ!­ ¬ ËÒçS¨Ì“éH£ƒçT³èཥYÃæmýyЂÅ«MIc= “=[¨3î'C&ÄqãÆ¡C‡œfã;Ú8æøÑýøiù·ôÕ³PŒ¸û1¼ú߇áfU¾—V1aÞ 7ÔñôôDÇŽ5Ò·³³kR²¯(ccýÎM¹Œ½»ƒ‰¨RI·-ùRNeqódAÛv}зwl¯óŸêȾ2Y›Ó½¸£±+ô$è»M•’³&+¿k´ÓרQ#àM Jé4c£dãÆ ûFɪ^#9¹yB¢hÓ,j¯¶Œå“ÔÖiÛwÀئ¸cühœ·¹;Ö¯Bm_\{š+çþ«¾dcå;“Ⱦ7‘½!¶ÚƒáEüëEö>Œ/sÏCøÜë`-™¾à£òY£ŸéÓ®¶®§½­×Á¹ÓÜ:p\k z–;!<ÅÀkꥼ5õ¤]öëavL~[ú-¶ŸGž´f½&m"*aNÖåóàO½èëMö׈s݈ܱ ¾ÿ‰V<q•rƒúÃû;Z¹ÛÙWß­2õ@O\¹î )3Ž«4!²c±q¹ý¿_¦i_µÄ¯4„ºÙÂ`ãÂÍ5*Ù3QòÁÄ)Þ¤†µ}^®7gbƒMž.ý'ÂÁ§-|éƒ/5õ°y…}ÎV#{ÞTGÊË2¶D·ïÔ¯»ÏÑ’2&£êð±°±#¸ŠÆ”z+½qÏGÇÏSÿM–ßUS½¦+ÒÞߎü5¿ê®E”Mí3a€ÉŸ~QY´ùNuÅHƒËÆæ6°Í:Ocî Wë¹öÉ+ŸÍúà:ÉX²L¼Ù [AÀF%{·.é3‘²öÌÚ½Þœ Ühž–Ú:¶-à¹v–M×@I¿%:CÚ©ËÑɵ%f­YäÉŒöðð`ånd¬mÀGm\>}Š·ru¤ýܵM=kHù¹0¤¹t[Ú¿ßš>ÔT?;¦Ì¼^È^jÉläÆDÊš=%Ž –?*Óœm` Ÿe””æ ›’A! hþ˜ºwúà³4LVò±¬êFËšn”„5#`…wþÙ‡7I¹¯n;õšãizc^IøL¤¬=³u>Ÿ› Ùó´6ðȃœ³çΉ"ý¦©ˆ*U…À ‡MYš˜È…¿7œôJàz `D½Î: zÄÐtA}ÌZ’¥${ž³g‚gë|ž#o..::ZÆçeJ,+½”™ó œB@! P(Z z!{IžL LôÖ´¯=/Çã/Ã5Çߤgk|^W/唕æ"£’C! P(@£“= ÅdÏÄ)5e&T2‹‹k ™[ϲ ;Öìåð=Ë«œB@! P(Zza7Iô¬ÕóÁdÏqü½w>7µ“;Þ1¹³MÔìe'¥©åSé+ …€B 1Ð+Ù3‰²ñ‡ÏñññÚº™úÄÅr° ••ئ€eãN Ë«´ûú ªÂ( …@sF ÑÉ^Î{Km™I”µgÞ†–çíy®¼©]l,}“Œ5k|IôRö¦–O¥¯P( ÆD ÑÉ^ Çd/5{^ÞÆ›IIIÁ… ¤—&9³íÀ¹sç™™ M«gÍžee²WN! P(- ½‘='“¨íèõ”µ¹¥ÅÓÛì˜/%ÑëCF½= Ê^‘ì™\´Íl/^Œ7Þxƒ¾V¬×/GI2fíÝÛÛƒ ‚———Öùàˆ${–µ!•”‰žÓ8{ö,¦OŸ®m ÌË åRCõe¬ª«¯ìÕ2F\/ØñµÄLž«Žáæ}¢‹×ß/¾ø¢ ;‰›<ß¼(©œë Ù¾rüýõ—Ö†r}Su®zÄù½eÎჹãî»ï.#ûêCÖÿ©^Éž+ÏÙ3 2ÑóNz¼'}ÇŽáéé©]óoþ@Ž$ÅúgåÚœ¾“Ó·±¡ÏRÒ&:,Lö,ËÈ~ëëäÈü=úè£Ú4k÷¼qkYüMUù¯EW·|CþÍw3®|͇rå`œ¸Á`ܸþJüØW~~¾†¬w ¿òØ©_ƒ€¬ƒ\ÿ¸}“ï®î{Ë÷”+cÂJ&s»¸¸h¿§ÌWü^ë7½‘=gO-ÏÙsÆxù7@ì8CL´üLŸdÏ év6\&e&~Iö,'u˜ýËWx¹fŸãåÎ;™?í‡ús ²b3Y±cL¹áÐm0® ¤nh0v²þÉkÆNÖ9nëÖ9…aåø©» C€ë™|‡eÝ“¿¹Îév–RË Í1'1ÿ02énðÆÏ%Ž™s½‘= ÉKbgâ“ g”É‘É_9Êg™9N›eàŽk÷²'Åé2È,?«/¸2œއãç‚còâ‚äŽ dè#o‰SSÆ%1”Ÿ%qéÞkJ›kÚ»Ê䫈ü]™_uO!Ptë_ó! žë¦r•#ÀØHÎ`ž`¢gNâkæ)æ}à§W²ç¬²Ð,¼$Cù[­Ë¹Y ‹n’÷êsætä!Ógrg@åÁ2qå”´¾épüœIê²×¦Û‘©OÜ7K.'Ýr¯øûfÁ¡.ù”ÉŽ‘ +ïËß\'ùžr ÆF@Ö-~w嵬k|–×îŸÄ†ù‡yƒyI*ŸÌÌ'úpz%{YØRxþÍ“$CÒçC’¤nƒß™•$ÎéKBæ´`Z+å¬kš²Ð8nާÉñs¾”TõˆVÄË¿²{ÕÇrs>•u¯"fòâç|-ßœ(©\ë Šõ«b=¬Ø Õ—7b¼òÝeÞ`Ò%}þÍØIîjÌüé•ìYPÎ;ž3Å¿%ñJ#,®(LøítÓæ4YS’<ÿ–~ê›6‡çCæM¦Áy“ùR nåèÖ{…]ÍØ1ŽŒSÅ3‡TøUŽŸºÛ0d]ãXtëXmÞ醥|㇖1WH¾œÄ<%Ÿ7vNõNö,0 Ï™’ל!&w}iôZB¥$p|–@²,º2éú¯ëµŒ‡+<>ÇÍg&{vº/B]ã¾üËò‘XUü}3`Ð<êâU1U÷*"¢~76²þéÖ5¾§û»±Ól)ñ1N|0gèúÊßu!{^V ™)® ºB÷º13+ÓÕ=ËëÆJ‡ããƒó ÏÜS“N_y“ñßèçêÊCaW}éêb'ëž ¡°“H¨³¾Эœ†n¨¯4[J¼ºØ1/²Ó½×Øù¼ÊHsñÉÌÈsÞnÈÛœ§–˜¯²0”Ð …€B@!P†ÀÕÝÊn© …€B@! P(ZŠì[Riª¼( …€B ÙWŠº¥P( –„ÀuŸ³¯ <}5‡ùs}ä«* oÄûÕ•‘®æUøÕŒ‘ò¡?ªªêÝ­óª°«9dý|\W²×­r]=ßÓ½_¿lTJL¾–¿u¯+Y÷»2ºùѽ®{Œ7GY&•åVbZÙ3u¯]üøZ3Ýk…—B@èÖ?ŽŸë\Åz¨t[Bœ;>·k|ÙèÈuõ\P2s|-Ÿóuc:Yñ8N ,¯—àêÊÐt+æ‹ãç{|ÖWÞ"os +ËKáVûÒÅJâÇ¡U½«=†Êgýàº'ªo‰ÚŸ?>˜‡˜/øàky¿ö1ÕÎçuÓì9#rW¹„„„‡‡#55Uk”ø™¾œŽ7ÔiÕª´påäƒï7ÄÉxøœÃ‡#%%E‹[æ·!ñßLa¹¬Gåꆀĭâ¹n±(ß ú! ûÎrT®vHbgêÔ©üüüÊ~íb©½/½“=W&=>˜Ô#""°aä§§ÃËËKëÅÔ^Üúûä½ê·oßwwwL›6M#~YIBøç‹ÄÄD¬X±>>>pss«¿°7iÈÍ›7kžñÓÝ”è&…£NÙŽŒŒÔÞ­ÀÀ@íë‹u ¬<+ˆÀêÕ«1bÄ8;;_·6½"7›àÑÑÑ8uê^xáí+°Üöq§©±;Nz%{&BI†L¶iiià?ûàƒÂÑÑñº~ìØ1¬\¹[·nÅ]wÝ¥ÉÁ€ÊV]…ÑÍáŽ?|ãïïI“&içºÆw³ûç‘‘áÇ£sçÎ q¹Ù°äÆbÿþý˜çÉ>77W;7$¾úÊÑÂqYpÙ0žÊÕ î(qýãú¨œBàz#Àí¿»ªþÕyÆMò+Œúâ½’=< Îwrr2x¸Â××]»v­;"¢oß¾ppp@XXrrr4ÙX¾úTR™?. .,npQ5RA©h …ÀM‚€${>×—j‚Jod_‘£¢¢´¡ &û†Ì‘×”¡šžÛÙÙióõÜ›Š-u¨OoJæ‘ ‡‡`øPd_S ¨ç …€B@! ‹s+‹R³¯éÆWÙµÞɞɇãââ4£+6kjçéé©}†öòåËšF.{R Ñîyš{eõ‰£©ñPé+ …@Ó!ÀüÁDÏ\¤/…Q/d/ {'œ.çåhÖÖÖpqqi:DKSf#SSS­Âº!ËðLöúè‘59`J…€B@! ÐRYlˆâY“pz!{¶p×âæ%i>^›¯çáóæàxY2°&Άƒ,§ìQÕU>™Wî(4dt ®é*ÿ …€B@!Ð2ʦ<ë#Wz%{&?&R&T33³fµÑŒ\Ê£,§$ûºjæ\8F÷ÐGA©8 …€B e" •F]áëÆtz!{Pjº<_χ¹¹9¬¬¬SöÅņ‚–––Ú–½LôúìQ5HPX! P( D ÑÉ^öL˜Äñœ}srÜñ`²çQ&{…`¢oìy’æ”g%‹B@! PÜœèìYc–š=*Ï7''5{–‡ñ¥f¯È¾9•’’E! P(Fÿê“%Lž¬-Ë›ðüxss,kø<ú ɾ¹È˜žŒ¤Ô ˜Y;ÂÉÁ‚öï70¢­† A» ¨À˜¦#ôá¸£ÆÆ Ü)¢dªt¢˜>”W#cÚC?ÍX¥×&À²Y†±}éÐ@/ýÜ&ÏãÍ @1µ+ETÏL¨Î)§PÔ½´x’8™0XkfÂàÏÚ67' YF–•å–•¦”õÄžuxtötŒ};æÿð;ŽoÁóýžÿèk\ŒOBVü ¼ðôc¸ÎÇ8~>ž¨¿±]¶.™™S'cù¦ÝHË-¨2èÐ xò‘xê“q9­JMÿ »6~Ù3fâëŸv")#¯éERÔÂ|òî3ô‰ê9Øqä Š¿ö×](B!Ðüht²—d)É“µ{Íò½¹ÁÁZ=ËËš½”— ¿I]A2~ûz 6­ßŠSôèø´td¤]ÄÎ}»|8W²‘ŸŠà½{°é`(é·>š»Øó{´c=Â#cWPõ'g¯$%ààÁ}=}Ù¹ùM ]õ‰ D_<ƒÝ»6ãÄ¥䲊¯Ü‡€ÈGȾ]ؼeâÒ¯@qýW„Rą̂=˜õ¯¡¸oÎGHÌ©Cç[¤ã™G¦ ßíàTlŽŒNk@@/ã`L ì˜8™ìY«¯Ô@†¦ÓR’h¸ú ì]áìh]&nî•\¦÷Ò³ àîág{¾n\Çš=ËÈzLö²£ÂgžËo WDD~91 ù&ÞxíÓ7ñÐ}c`|9üü`âÓÖdèhPhDC˜0‡ Œõ4íÔÆþ:ÃËÉf4uP•346%¬h䯄¦š³ªd«xߨ„eµ ÌLšõtCE¹Õo¨¾›Ñô›EÉTLÓ¼¥:ò¨Ëz#Ÿ™ŠC{!+¶./xÎ4ø[«ò¤ßéã‡pp¿¢RsÑɳù×=¬ºo@¢L Lžò`Í^™—‹¶ ­ø÷O †Ô‹òR°aҸcTL9ÿì=Qö¬\øþàk÷¼'1|“kõ”Ãâ|ÄçAôÂaýÐÊÙîÇbÙïÿ`ñG¯ mk7’•–7rÞõ¡Òk˜aücó±9ø2ö–ÍgM¼†þÑn L…¯5ª k Usõhna Z¤enf 2=ªÑsf ÍaaÎ-`ÑÌ ¿›+Ö,W£köºZ½ÔìyéþµŽ{çF0%Ëȸ´ßQ”…à Kðå×ß"Õ¼'æ=õ,îº}Pã JÂp„í XNÝCæáZyõ{';5{7¯CLìe$aûÆ¿ak2¾.¦8wꊭ]ѹc€&D¥/FQ.ÍK/ÃÏë÷!!µ>½†bú½w¢C+gÒºë"»@dØ1œJ†O§.ðñp©A1ömZµíÄåT wz8“q^ã÷ ³’°wÿ\J*FŸð¥<˜–d¢(' ûöîELºúö…—»P˜Žmþ‚ß7ïAbZ&\}0ö®{0"° lªè¬Ä…‡bï± ðnß=:ùá^I>"B±cÿI´n×}ºúPý,1‚¼’x?~¿{Ž& ßÈ·Ýu&ÝÖ¶æõë ¥FÇÂÅKqü\4Í=þ]Çáé'§ÀÕŽV®ˆ<Þ„ð¨j è¿NŠBZybä°p°!-·.E{ý¦GŸÆÖ½¡æ­0bT?8pë^ê2ãÏcËîƒ0²oƒ‘ƒ{ÁŠp̈?‹ßÿHåryd„êÓ¡/˜9í½œ`TZþ2| =ͦåxtŒVN6Ô¦°BœÚ„Ãç“0`èHøy:”æÄžÞÏ¿Y†Èø\ºà`x¿J⿚ReW< ´wÉï‡^¾–ørÁ ‹"ËAÌ|ò ŒèU!N‘‹õß}ˆ•›#‡¦‘L\}ñÐãOax§VåÒÎN8‹o¾Y‚}Ç/¢°X µÿ­xñÅpµ©_=«Lö¦¾wæÖýºñY…H;wßþø+î;Z; ;+–-Á† £4…X ‡nxú¥9èâ〢+qؼq#.Ƥùø}ÅW07CzúkYJ>ŽÅŸ|èDÍ Ù»ÃP<þÔhãPb . ³ôÏ:ĶÆÄ1Ýðó—aýþpX8´Â£Ï¾„¾~Ž8¶ùg|¾ôWd Cô0 =~'l´& ¡{v!&Ï£úwÄúïßÅêía¤s™â¶ûæ`ÖøþM kõé3±Éƒ|rkÇ5ʆ7:ÚÒÑ“ŽátL¦ƒ¼Víˆ0iÉ"--MDFFŠ1þ|±råJíþ5!óÒÅŠ¯‰Á·‹ßý# E±8¼JÜ7º£ptn'ž{w™¸œ™_.ˆBJƒÏÒqºÅò‡î™î >ªpqqqbñâÅbáÂ…"44TDGG Z= hꡊåosº´ŸŽÃ¯Y³F<÷ÜsâÌ™3å=ÖòWØÞ_ÅàÞþ‚ú=‚ºAÂÂÊFÌ~k¡Ø³i¥˜8¸˜ðÐʼn‹1"%"H ì"ÜúÍ;EF¢8;I,g¶èâe+ˆ³Xï¡:h-º)6î;&r©Õ¨½+«ßž-zøˆ·—þ.2ó(h¡Ø¼òUÑ¿³‹&Çoåà"|Û´fbÔ¬×Ä©‹ µO¢Ÿ\W‚ƒƒÙPˆÂÔóâÑ{Ç wW7ñÎÒ_DbfNYˆËÇ׋)C{ —ÀÉâ·}gDvÒñáƒw _+A }IÞI>wñü«DLb&…-«½"ü¼|Åï­ÑÉÙbϲ×DߎÄËŸ®Y9eñoYõ¾ðóö÷¼ô½HJ/I7õìn1kloaej\¿µ³§˜úØ<›’V¶¶—o†uf&FeñÁÀV ›ûžˆJɤj›*ž™=A89Ø Z¶ª´/„°µ³v¶6Â¥Ï ‘,d±C§ˆ ¨tq%j·èà)H÷Ðð125÷ÿç-wA?‹¾½‰¢¯â ˜‰ŽƒÆ‰½çR4?ÅY1âáþŽ¢µÿ01ûÑû„¥ÑU¿ûÝ+–~ð®èâdS†½¡©ƒø÷œåÔú±ËÏŒì+œÝ‹YÓ&[“«a-=Å›ßm¨Wù0wÌš5KìÛ·O„…… ú^‹ £ñZa©µó%ÜÌÍ\ÍœÍÜÍÎ\nH‚k_¢ÊÐÆr1;*tí¿Y»¯ÎqÇ)ùÜn|ÿí"l JÁ˜I31óþ;àj]:"@ÃÛçCƒðþócôí£1cÎóø}gˆf)~éÜ1,ÿv!VoÜ…„+%“9©—ñÏ﫱hùœŒH¬4i–‰5&–UÊ)Ï•(½I•ëÖ­Ã)Ò¶y €§jÊ_uñÉgÖÎðqï+K+ZØÀÉ7.¾03,@zz*2³³P\T‰aÙ>lúâS|ðùo8—jˆAgbÞ³sÐÓ׉´›íøhÁb„GÄj5S¦UÓ¹° ii—‘—Ÿ«ayèwüﳟpäL:ü:÷úö®°Š¢ëž—Þ{¯$$¡BïˆÀO‘*ˆTùÄ "ØÅŠ )"  "MD¥J/ %„@h)”ôBz#å¥ìï&^ IÈ3w`³oÛ̳³sæÞ¹3ƒ™ÏA 7$¤$ ¿ Î5J¸üº¦©#|,,¡S‹ÓQHϸëˆ~å:®ÅÞ†·»<¬¼w~9rÉ c<={¾]ú Æ êeN Vü¼Á·’PÄÕʽAÁë6d£˜4„òb+Þ¡$?“šF9·€ºvèB©2_¾ø¶ ž} Ìzý=¼4sôò3°mõ×øþ÷ãÈί½s¢@VˆÕ«¿Ã‘ÀØtŠÏ—¯Ç¯³½N¬_Jé\Æ¥̬ìàââggç²ÍÁÔºDvv îæ¤õU‘«{sÙ¨ÇÖ®ÞðÕÓDZ\ ÎÄ!¿°¸L!G…#9%Otò‚¡®&¶­]‚ƒ!—aîÑï¹ K?š‹Î-muŸ¯ÿ éÙyU楴4wrr@­ÞJ×óh”MNN.”Å\ÙÙ7Oaþ¤¸ Gß!xïã1r@'¤ÅGâã/c×…xQ“®I Œýš!4ôäaì>q ½F<·çÎ%íЩ±g°ð•žÉ´®y ïµ ÉÅÆ>ïc¬ýæ3 m厴ëg1ÿÅ·p1>‡ê¡"lùñkü}‚0hÙ Ÿ,û KÞžDu‚‚7~o9FߣÔÙYƒ`À%—¶hÖ¹ ôÈj¦kh?_'4·ÔGà®ðÃö£€uk¼ºxÖ,]€Î­ì{òw|¶l+YÔLÑÕµ3õï)ôàØ¾ì[¿QyúèË%8w5¶ž°lÝF|úÎ+p±ÑEhÀ¬øu3¸æTPª¤8q7ü±vÍ6¸ùôÆÜç‡ÁÞŒî ü ³¾…›E†9v †ulÍ¢ lßó‚âùûV (# ©·Obýæ¿aê6ï|ð.tmƒ’ô|úæ+8t5£É¢ßàf|ΩD˜¼ç~{&ÔšÈPCKŸ<ÌñÇöÃØ¾ï|Nì™O“éδ¸D^؃ψMÇâ`EÎz¡!°ÿôy,|ï}ô³ÈÆÞÍqÛ¤ ¬Z¡{k$E…aÓÆ5ˆÐð„«O/´©â° Ÿ7Òoî×ÎUñˆxŠZ_X°`˜·±cÇ¢{÷îprrŸ«dn­.‚jÎsÁÝø«%Æ==‡â±nãØÑ g·Ò8{j¢‰æÜÊsª(ùþ8†$ï>ãÅx“†Â9Y›áÚÀ˜¹à}Ýsç&&ÀÝÕ†Úµ£…ãÂ!JA¡ÄñCp-* žC¦à›ÏÞAo2{ǜ݃Ùó>ÉÀs•…jˆ#….: í³ƒGH+'ŽD©³94Jrˆœü" lå cCüCC°R3‹ñìœðÖË“álmJŽ£ðüäéøûtÒ’sPTÎ1•D£¼•½/6“ß½"æ™ù]A }Ü{7|O&æáݽÉi±mL^Â[?lÅÖM1}Do˜pT‹Pœ•„¨+— iÓk7|þ-¨‹bZYÍÇ‹Ÿ­Á…Ó¡Üï|º†¶»¦íÇØáSp*5“§‚›A¹Éúî=Míilè<¾v~õ.ñGáÈv€¾ŠRo äVŠõ›Ã·é_i8t6yÅVXùÝ:ŒîÓŽˆ@Cúv§Š÷Eä\‰ 5ʪȠ‚ n¸ßs­ì=ò;æ ¡:âhV.Z÷í[7ÁËÆ%³'âùÑãðKÀlÚtCÚM–^¹‚qO|÷r½Fß %ÐsÄBlýu!¬ tñÊì6l.$îÁÎ=¡ðg‡ ¿ŸDz©&¼ùÖ-œL}ÕÚxvòhLÞ{ÿ–ÃÁh7©-ÂÏC© –mØ„q¡¥1 íœ>À¸yDd{N hj_èé”ÕY÷Ëóèœiûäì÷pÀÀž£Ýz ¶ìøކX³á0‘q1ÞZ¶óFøB—Ìœý|}ÑŸ<ïwìCÎÏ`ÕÁŸ‘ÜßœÖÆM£Ÿ§” !„]0fžX»÷ ó0!0¦`|÷è4òe\»‘„:ÃS»iˆÝuh5`þÙ±ޤw´›Ž™‹7 ØÐŸ~¿ &ö¡Öá ŒîÛ;/E!ìz"ümËÞ7ÅaÓy޹ßÃL¥¯’b:¢/~>­Û ßâ jév¦d*48ÙKD/iËÒquR2±æ¤†bõÒäç&!£È SûõAßfdÅaûö]8V‚YoŽÙc êðjé­‚ÿ®ÝèùüXø´iŽßÉ‘/!*B{ $Ä^Db|*: žlÕ¸?p„#Iäõ*®qÏ3ý±L,7$`Íï‘öü;00´«lP7–,Y^.·E‹èÖ­[EãæþÔjwFIõPP‹©J%k–5?ÇõXÄ%EÄ®ÃS˜6f‰è9´<Oü…Ø5{q)"Oöh Cóºy®rEZ”v þ‡ƒ¨²Õ‚ç¦À×Ó:”°Gס˜õô~DÅ\Ókè?͉ZؘãHÌE„'§ ]‘;4Òbt<E¶ðëéE£8tЮ_üú efÂåÿ^ÀœgGÃܨnï²n¹o¨»µIkë k½]‹;´ü°„¢.‡àrDÜÚƒO[ èjcØ´è á…]ZˆDÏØ;ºÀˆà9ÜZ{ÀÇPÈ "ïÂxlÝJÁ‹ wKš*›îײtÇ¢OçâØˆÙäá}œ†€M‚ ‘}­‹ iã0÷ļÅSa^î»aÛ²?Þ=“Þ[‡ÁHj瀋Á‘°ôl‡×¨®Ò%¢ç kå…W_˜„C!Ëqrç ä'•„' *̦ï5£ÛÛÙk`ÀÈçð£¶3ô\Ûѳ ^e‹²4ÆŸ"ªë¨qès IDAT8¥ÅPÒ'ÊR²ü] ¤z°½ xv‚+V ÑÐIÄXQz§ÜÃu$[ h›bìôyåÞOˆD/F {¯v0ä68DÊ‹ÀÖQ#],xï‘èùÎN>~ËØt뇙úð)ÀÄ}Úú`ç…#ÈNá9DìÄÓügöüE"Ñóo S7,xÿ#ì:g®žCvÑXÔ¶½ÈüKA-%‡‰RÚ$Ò¯.?¬Yåç%!"6SÔþ54bqäìYô¼ÖƒWìÅÇ’#ÃVã™§†£¥‡5ÜÌF°!8t+‚&¬=½w2‘DÜydš¼…ì xµi +꘩.¤§§ÃßßÔo"NéËdÏŽ{¬áóÆ Õ=Ϻwû69ÐQ#@ iiiHHHÏ=È* =S›}m*¾'‹†/æ*¡ihŠÄ„X\)É¢Öq)4‰@´Kòh˜žié¹äìR•z[³$¤» Ÿfó ËPBË£/¼Ý`ÂL/UÔm`F+Ö¯®9m [wx{»ã8}@a×âÓ¥ò"CB¦_ý–äteg M} þ ú VÒ|i¸~9Ѥ1í߇¿ü/ ·Øù!´_Îg1RÒ“©â¡¯—†üÜŠ©8¿ÊDXêÒBJ…9ÈÌâYé,9 <(hk눴˜¢Üp|0s ÇLÆÄq£Ð¥CkŒŸ2­Ê(vnY‹­ÿ¡À¸=™ŠgÃÕÆ¤ö„ô Ô|½M»Îpw1Á12±ÞHÈ¡÷f‰+W."æ·èÑ¥?,È«Z¡«çç,B2)‰ñ ‰Áõë8òÛ&D¤¤ÃÉæ~ͽ¶b‹Ö›‚L¤äf“£‰ Ȳríò² ¦6òÒ3¡O%85;C캩m¼|_I‘æÍZ¢9±ª:º¸¶†iýwJnãf¬±ähæÝ~8Z˜èˆŽQRn^½a¥¹ ¥¹ùô>u`nJ©2ËçLÀ­““0yüXøulƒq3g>2ï[Ê[Ý÷ ˜Rþù}m_2©bÊÄgЫ[Gô£É°Ê,4+Ûã˃ôµéZ7ëŸ.¡î­\$Þ Cl\0¿{+Yœ8¶àH)qê‰Þí½¤GÅ}s÷ædeT •ꦂBªjiA­‰šÔBöª2ó‹?6Õ“•~sµ©€¥GŒÚ¹Ô¯v0`ŽoNž“È]yÙé´Å#&.¿ý¨ƒff(ÍOʼnàP$*í¨2.†÷ßê” êZïµçáãb]©±t7cÂÏîÂë¯>‡ýAé DzKŒ7ý¬h(ÐY²м -amT¹.ã'4•ðekC¥@Wo•®NeÕ]ßÊæf4z&éùÅp|Í*=ܸ•sÛ@²pˉï%¢gb­ªßž\¡£g‹Ñc&⓲ۗþÀ¡¿ ‡O7 êÚ\´xj‘sfdDþHK&“Mó“ÞÜ»Œ ôàäØnÍmp+ë‚/ .:öƒàlã$ÊRÕ–‰kòìdÇZ»´Id_Õs¶¶¶èÝ»7iÞ5j”ølrr2RSS«º]çʪ¤BÒ¼KŠ a×Üm=œ O½Äë ê’Фá¾Þ4´©r­`ü‘(óóÈ1°b§íT ߳깆üÝ©‹'ìlr9žœ¹x)éE6èв5ÌŒ Èy. >Z„å¿îFª¦ :vë G{gxy’³Ïîý î¶{?×ûÄ«®bËnñå¤T¡ƒ]{’†IëP /U„¯¶¹œlM¨|ßu5'è6i!6·íˆ•ë~Áfv5ä<’¢ÃðáÜé¸~g –¾ü4uC裴 «¿þçn“¿Dï!˜5uLh¸Ý£ŒÑ§k¬>p§ÎÅ`НN^L‡®Cøz9Ð÷¬ÂÔ‹xcúsØ{ùŒ\ZÐy7XÚ7ƒ‡U ~Y»·ïêó]ö«|—Tˆ i’®¢œ<(højo¿Î0Õ§!+ÒK¤ë¼æ„™—Œõi}‡ê¹ï ×qFd&cM¥çL  òY*× ì'~OÐ%Ë÷#ëé4§Éž4áÑw ¶ÿíUkVâtp4®…ÒPÜH,Y0'i(ìŽOçÀÖˆíÒg°ð$¿%êš]ûýç8è¡—p#6¿}û.Ž]Á‰ ßPƒçþ7”}ã&NÅå¨lع¶‡O;XS=meªMŠÀêÊu½w-M¶äW¤BQÅ%>ÅœanÃ{ýshÝ møª;Š©;2œÊÅþmhDÍf\9¶±Y³aMÐå하‡Ÿ²3ÒQ¢ã€WÞùsÈê~'þ‰¯>úŠFý#ŽZpµ¼¿±ã¿ï7‘è›·™Š-¿/¡Qeýë%Ñضf5YÞ*JFP÷Ÿ©¸TýjÜ“c²rxtÐÝFwvbrÒraïk sµÒjõ²=àŠjyÀ­õ»ÌD*‘}µ1Ћ Q¦¢©ËÔ¹5z‰¶-´prÎ_†õÍQLyʉžïºyøû—ïðÁçßâò­h[­] ã&vïØ„¤"K¸»yäÜ«“ëAä/õËsCãhì £oF~=:¸x éi™w+<"æßÞ^„¡ÝüðÝ–}HÍeƒaÝ¿}S¸’Ùª î ÂÈb’[(å¹Á§CiÊ㜺EZ‡»5ôíÑ­{{˜êÄQÎFœM¤‰VzÀžZ×T‡ŠDN£2áêÖÃzt†ƒHôd„Hº…KdñÈ¥²Uýûdí®ˆ†k¦á—›,hÞíkAPŠ‹ÿpu }C+(ŠRt•ÖQ¸;Ä® ! óÆÃÇ#†wÒ¯Z…Èó{1|ø<3g-MG+šÁÛoÞzÿ}r4u¦ ‘r‘S$à6Mþòþ·Ûhx šþ&up‡Þ#d¾WÃÚ¥%útm†´ÈƒønŤd’åΗfO+S¯x![^ ›ˆn­YÇÌý| Œ?…Á`Ä´o™G>2ú&hÓ¹æôºùzPWf>Ò²i(¬”Ìc²çï“ýU‘…™Ï G×! AsÞ šºpkÝSæ¾G#C;¿ ä{T*ö£Óýôœ4¡W!58Œ ‰èù8üÚYðˆM]TÛÆ8?W}`B¹Žsa‘•n¹zÒ1™¥hëi šÊ¹)†j¿Ÿ‡VµreÓ="{¶ß¸ØJ[ùUòœõíÞCtGRðYlÿý²Ližö¶-tè0Ö­ÞŠ3Aç°vݬüi;iÖº05²¤·©‹föžp³´Bqnšy4G ÇZììdÇË+m÷ËØ´Ï0zôA´$ƒ—öcëÁ3H ¾]2¾#üôNüthÎÝMykI¦Âº›ñi–°óK·žö0ÔHÄÖŸvPÿy<µ”¨à=øãØ!$ÑR¼ê ð ¡7æN† EZ‘üˆÔ­,ËFÓ¸c½ž~ ·Èg‚g&Ëͺ KWãÌ…ҺɱKœý%¼§4°ç3}§Î"")ƒVhÌÂñ-«°ã0 £1öœwb š«;Œu´°eëFœ‹C!¥W’ŸŽ¿~‡M/ +ßÔo[‘ÌÀ0¦qÅùäSxˆ†£ÝâÙóÊXâføu¤¥¦Ã¦H6/ÎÀG~N}Ü·aäÞÿÞŽò•‚ØØXÚbhDŽ(³²< ¹&qYad…Ö=»Sžã¡Ñ0nÖŒ=+ú>•wŠÅá¥×CÏ#¾_F>9ö2–/^Fšsk6KïïžW(žàn=š3a÷ÞcH¤²˜—Œ-4_Gpx* ³bË+5äô›áÿZ¶‡VIVýð¢SsÅ4rÓ"°âÇeÔˆ¼-mO'P7Í^AÝ;Åù—±††dÞÇÔ—âü¡­ødÃ~hÚ¢{?o¸ó°·—®žÆªU»iN†²º0!ÌK·'ÇY}Œy²,L- …àC;pìâÍŠ†K|Äu$'S9 î«&>cb] wár;LIs/äТF¥4·ˆqz"Ïü'ÏÒpÙ²xNRn\¦w¨ GZ?ECQî¤Q@ó+p"[ ÀÙKg‘Uî;îi¥Ðlþ¼$¦»¯üÔEbºWlh(±öƒe¿%>œu _­[M¾šèÚ¶7š(×Wë»VGî¿]"|&{&TvfcO÷ÊA Z€\²ÐØ þÀ9X»b@ß´êZû{wÀð§ÆP¿æü´|6,ç&‚ZuéƒÑOF ÷²Šß¶™ Ü[4ƒáéx¸¹Ó¤ öæeVó—W»ãFH•‹ôTóÌ¿všÀð`S:£#•WUX2sk'GöÂÙÈ_h üûH§¡p­,”Ø¿sÎ^I@×éo¡Kgw‚RU ª±ÝýÍi³V/cž@Yt2vû"püï5XHc¢võÄ™}?áxPi&t¯$ìÝ(ì—‡GK´¥ v È'ÂÔí[6£^YÃ…»0\\Lqæà|òî'¸ô„/âBOáoZš75#šÚQ4¦z;‚fE-Áíx"J¿`ªŸXÖÊæ¿cÓ¾&ZzûQ£ºAÖ,¡Y“#á”w ›ÿ>…ܼBqØUYÿGþ«ÃÙí´|³â&R—Lо•øu8ŠÚcú‹Ã¨.¨[ƒ˜õ<’âï•o¡$7}½Œi²–µdÉG»ž#1¤½-´Lñ$ù$¼²«?œ‡’¼ðqÖÁöÍ¿à*ÿví>½iò,óôì‰sÛ1gú„Ïy æ¥Ùرy-of Ó3¾p² BKX]ÊÓ×Ôb_ D_ ÂÂ×?ÀÜ·ßÁ[¿5ä¼óòD$F-‚'™ìíþ›\y—¡hëhBêBj”òwÂñÅ¢×5g!:úõ¤s?áÔ‹ñœN&zÛ+È|ÿüo”Yj¢ƒá‡M4Ø(ߊ£j•Åízn¨žc1%¥ŠódÉ¡ñ¼¸~ñ<=¾ÏŽé ÿ-_açÙDh¹õÀ¨§(þ&¸¬6h4dÞ3ѳɛɞ‰õ¾ e„þ#§Áµy»yª´©ðî7Ûz!2!î­ÜТy3|ø:‰xÞ`læŒ.Ý{ }$Rh`f CÒp½›£]gOXÕÜJ—d’fÀS•ý>Yÿ¥ì­[D Ÿú KËÅ×ÔÖG‰‚‡¨¬ bSR`¡¤&$ߣÐ4Ĥç!/·Ÿÿ°—}\!m¯§¦ãݧ£…ƒõýJQÅ]÷ÿ(!o<ú¤´4ô©‘¡@§^#ðáü8¼õÁRœØõ+Ží¢t©Ÿ|̸gpùØ1hs¿¤š*!#Ç4w}k8Šf=ýàEóäë–§ehך柃ðïâ¬ÿ_¸@5ó1væËp7ËÖ-⯠?¡WÏ0% BA]4žFt¤qlÿ^žr q_¯GèîM¥'}ú`ŸÖoÚŠ;º´neJ×Ò_ÒœEÿ{ Þ‹·‚(óˆ¸þ÷á7xnXWÕÁùQËØ¯/þ ™9ÿþÀ£xãÌѲøèoŸ1³0oÊxXÆúS·@Y?5M‹‹WÃ+î)û¡MŽ“ìkpÏé&|جS/´¶´À-òXî=|Ìhø¡Tdœ;§1è§ð&½‹ä„µ“ò¡EåkÁâ/êÿþ9ˆ¯>Ùˆ O´"7Ê7»çÆ+EÐcìK˜vØ+ÿľWŠt1 >ùqøñh(Šy¨(ýwöA3t®ÀÌ©¯àÔÖðßZ–©ƒ;>Y³OˆÔø¨-ŒÅd‚·#Å¢•›.þÙ´{ʵÑf=žÆêæÃÞ˜|9èßì9ïA™œ…wWmÆ_½S½W¯1øqõ4³ ûh—çÿ€› c±ýÄ,¢† :?1KÞ[@3ÇÝí'–®=ª{S7_ ÒANcÏæuè<á¼úüR¼p% ßý„ϽZ‘5š£àó¥ËÈrKÃ4iæ¼éžÂ–Ÿâô‘0wî…©kgbÉœíxyù~ü¾ôüÎOjzãÓå¯áæßo`ý!|´¤#†ý!*N4¹b%b×.¡n$z¤°¸¼õYž2Ϯɔ_*ŽBâïòÂèÁnØóÏvÌ?±]¼ÓÜ©–®_G“ó4Ý÷CÜq·¶ ²ãœr€;ÒX 7¢§"bÕ™l娮z?W |5eš/ž¦Z¥q­dV=uê”h"Iž¸ººVº¿adDâÓ?Æ•L¼õî{èE3PÕ.\¸@CüŽÓŒ|V¢g=½3£a}<ôNê—¯éyî³çåqi>ršá- 4'>Ο?3fˆCòjz¶ºk9¥ÄÆÆáN©.œl`LŽuÅ4el\|Íi{ÏKnr±´&{¡–!-cƒró¼òN&.ÅÅk7hò-òJuGçNá`Cî?uT²Rbq;½–ÔßhfJÆM®•‹òq58Æ@‡"_ ‘mÛ£#yùç§Òp7ØZ™WôµV—¿šÎýõ×âÄD;w¾o•Ĭ”$$“?‚¡…5¬É„¯ÍŽ2R 'ÄWI¾„lúX]Ý[ФL`¦C W\5ÛÐ|†tœš–cköÒ51))Ȧ1ü¡¸~+¥:úhÑ®#MäcŠè¸h[8Ùиbützì œBtr&ôŒÌáI‹uòiK^½uÓ%±S¢¯âØÑ“¸ž@ýÔ˜sñl‹¾}º‹füâ¼ÄÅ%¢€¾§»_¨ô$ÝNC„\ÜœÈ+¸lZ‡4?>žyæ˜ÐP¥¦J‘… ê·sq£ÑTq«Z’—³§N „L¶:ÆVhÓ¦:¶õDnJ4.c¦ £ôõñ@f*9CQ7‹£‹“ø}p¹iq¹t ‰©YЦwãCeÈZC‰¨Û°uuƒ99µIiE_>‡“§Ï‰C¤ÌíœÑ¶½ ñtUK­"T ? cƒ1pÐDZöÃ_ëiMö°@SŸ 37øuë w{³JZxé,œ=s ÁWèû,Õ†½«|ÉŸ†çPm(g%FàØ‘“äpFß<• Çæ­Ñ¯_¸XÓ"1R&j«1.Í¥i‚ysss#k/dNj .]»…RrŽô¤÷mkªGŽ•ñ4‰× ê§ó¤jXع¡gïîhãNsf”×c%ÊÑ<JœÝZÀÃÕEyi8yøMžc+š× +:‘LVüeø_ˆ„©Csê:jÔèpd+ÍàáE3–‹ª¤9nÅ&§\ïZ„3⢑•wZtJ‰×|}°,H‚iº\ê: ¢¾{mšu¯“_7tlU?~»té–Ó"J³fÍù‡yÈØØX¬„eùõqôÎÓhˤûTsiã¹¥YÃæiýÙhÁŠâݪ¤!Èž Éž=ԙϒ£ â°aÃвeKN³áMsùâYü¶q=­z‚þã_Ä{o<[ÃÊ­´{æ™ðxB´jÕJ$}SSÓF%û{el¨ã‚ôÛ8}2€ˆ*ƒtÛ²•rªŠ›; š{u†o'O˜üËC|j"ûªdmJç/žÃ‰« u›ª$gQVþÖh¦¯ûÃ…*”ònÆÉÆ£Aö ’UµFrõà^ÅФYT=Þ­+')ŽÓ6k‰¡t0jø`Ü4î‰c{¶À“¦/®=ÍUŽóQ?ª/Ù?ZùÎ!²ïDd¯#×N¡_+‹ÿß"û7ãK¹g>·:XK¦|ÄMºÖà{ZÚ5ððšÛz¬ZÀ î½aó¢g¸Â] <¦^’÷A-©—ý_Š0/>;Z£¡(”¼YïK›ˆJÐ#ïòð Vô¿Mö÷‰óˆ>vËþF<qµrƒhxÀÞ¥=íL‰ìknŒV|AM8·y¾8TáWeBäÇbl=]W¯Ð´ïzâWù„|ò1C€ µÐ dÏDɧ´ñ$5¬íóxtµmcüߨYhÛu$Ì]›Ã|yP ›GÐr¶"Ùó¤:’¼,ããHøf­;àƒõ?a! )c2ª }cSr€»×™RmoﱈØgöKø}³äù]=Õ‹º"ÍýmÁ«ù=^uÅ»©}&»læÒä;5½F2.kéÃ$÷&5޹\ã͵O^¾³É#@ ®“ŒeÃÄ›¼°÷Ø d/Å­JúL¤¬=³v¯¶ Ð†-õÓòVÛÀ¾Ü×β©:è1é?ŽAƒfê²°´y³Ö$ò¤Kó?ØÛ³‹‹eŒLÌÁ[m‚’†â©\-h>wqRÏÚ<$ßó# A}é&4¿-ÔT??ÆÌ¼ZÈ^Ò’Ùɉ”5{^%Ž –•i A²6°†Ï2J ”¦ ›,ƒŒ€Œ@ÓG@Ç®v\'3YÙbY5YËš~nd Œ€!>9p’r_ÓtêާqîPóJ„ÏDÊÚ3{çó¾©=w+°µ-RŸ=7NdÒoœ‚(§*#ðÈ!@]–ÚÚÒÀßGNzYàz  I½Ê8 zÄÐx4¸ÍZ"K‰ì¹Ïž ž½ó¹¼©„¸¸8ÑŒÏÔXV&zIf΃dddddÔBöy22ÑѼö<W†k*פgo|W/É)5TšŠŒ²22222 @ƒ“= ÅdÏÄ)iÊL¨l2OLLl™:öže¬ÙKæ{–W22222ja7‰èY«çÉžâx½wÞ7vf¼crgŸI³—)-Ÿœ¾Œ€Œ€Œ€Œ€Œ@C" V²geç7^‡÷III⺠™úÄÅr°¡¡!ا€eãF Ë+k÷õAT~FF@F@F@F )#Ðàd/õ{KÚ2“(kÏ< -÷Ûs_yc‡„Z“œ-,,Do|‰è%Ù[>9}†D ÁÉ^ŽÉ^Òìyx/6“žžŽ[·nI·4Êž}nܸœœ˜››‹Z=kö,+ SiQ IDAT“½ddddd7ÔFöLœL¢ÒÆýö|.,, ¬Y7V¸zõ*¢££Á+ ±Ÿ"¬Ù³ù^6á7Ö[‘Ó•P'j!{&uUÍžûÅyA7Zþ5û}ûö©wúÜjãUø>,v%ðr»Ü½À›*á×U»— ¼çg¥­äÓ5 cW8¸$•[iÿ€ÛåË2 Š€üíÖNÆN•GT¹¤þ±Þÿ¤ZfГ*ɌτÊdocc#šó÷ïß/J2tèPQ«¾_¬†?Ã}ôýõ.^¼(®]Ï–vdÙ$Í^’».©K…œ÷wp£‚ã—CÝàwÄŽ“)))b¬nOÿ·ïfܸkбã2(ž³„G[±µ´>õè¿)kSK‹»·90_JD¯ÕBö,(¿ð{ÉžÉÕÓÓSœÌfíÚµX¼x1­VªÖ•£$2fíÝÅÅ=zô€³³³ØøàˆDö,ëÃR&zNãúõë˜2eŠ8503”†Ê+cU_|¥V-cÄå‚ÿ–0“öÕÇðß½¢Š—ß+VT`'á&íÿ»(É9WRýÊñïÞ½[¬C¹¼Ée®fÄù»eÎá¹cüøñd_ó“õ¿ªV²ç‚À}öL‚Lô<“ÏIߪU+888ˆ¿ù˜È‘H±þY¹ÿIN_“Ó76¦e)i–ƒ7&{–eä{ë$Ë;ü½ð b7k÷j¤2Èåë7éÛUýnùœ*#À˜°’ÉœÄ`kkkqãï”ùŠ¿kuà¦6²çìIDË}öœ1~ÇÎ-_S'Ù3hª —I™‰_"{–“·ºÌ÷K-4.ðÒ˜}Ž—¤ü‰òŸû 6“Æ”+Õ ã¾‡ä"ŒTþ¤ßŒTæ¸ò™raQÁsÙ“Ÿ“Êœ´¯k½*Åõ¸î®ï˜'¸Ûƒ‰_Úø|}¸¨6X©ì¥J›—ˆ ‰ Ÿã@aa¡xNËÀé«Ëš½¤ÝKäÌ÷Ô7HiðË’Hž‰ŠãäcÖ²Ô‘·úÊÛ”žcì8¨â/•©Ò`ìäP5Œ•Dò¼—*WÞ«–9êñ“Ï>\ΤoX*{Ò1—9ÕFÀÃ¥ôx=Í1'1ÿ02©NðÆ×%2çj#{’–ˆ‰Oª€8£LŽLþ’ÉQºÖ™ã´YnX°v/µ¤8]™eàkõWÊç‡ãáøùÅ1yñ‹ä† [2Ô‘·†Ä©1ã’0”* ÞKÄ¥z®1elªiKØU%ß½ØIÇUÝ+Ÿ“¨ªeŠó&<—M9Tc#qó=sÿfžbþP~j%{Î* ÍÂKd(K¦u©oV‚EµIçê³çt¤MJŸÉ•6–‰ §T@ë›ÇÏù‘H]jµ©6dê÷å~OªïýÞãÿ uɧ„‘Ô0’ž•ÎKÇ\&ùœd©lñ·+ý–Êï¥ß „ óóó’¤|2w0Ÿ¨#¨•쥗- ÏÇ\9IdÈ&}Þ$’T­ð"³‰sú!sÚ 0-+ÉY×4¥—Æqs|8MŽŸó%;HՌ轸óû¯ê\ͱü7¯Jeï^̤oˆ¯óoéø¿‰’œku!poùº·ÞÛU—b¼Ò·Ë¼Á¤Jú|ÌØIÜÕùS+Ù³ œ1,dìj~»ªØIeOzBÆNBBÞ« ÕòÇi¨ÖêJóq‰W;æEªç:Ÿw©¡c®&>)3Ò¾šÛÉÓœ§Ç1_äË…–¨@àîl§ä2222222Ù?NoS΋Œ€Œ€Œ€Œ€Œ@Èd_(ò)Ç ½Ï¾:ðÔáLÔúÏÕ‘¯ê0|Ï×ôŽdìüFeüŒ‘|‡ú¨®üÉßîƒ1¯»?Y¿;þU²W-Ò¸z>§z¾~Ù¨ú)U0ù·t¬ú»ê'ë~Vʃj~T×=ÆÿÆÒ;©*·¦U]“Ï•! ŠÿVÅLõ·Œ—Œ€:P-?—¹{Ë¡:Ò}â”°ãýcã/U:Ò¸z~QRæø·t7d Ç)Ëãß%pUex˜tïÍÇÏçx¯®¼=Œ¼MõYé}ɸÕþ ©b%áÇOËå®öÊwÖ.{RË›„Dí÷ŒoÌC̼ñoé|ícªÝÿšfÏ‘f•KNNFDD222ÄJ‰¯©+HÀñ„:ŽŽŽðôôàÂÉŸ˜ ÅÃû¼¼<#==]Œ[ÊïÃÄÿ_z–ßã(‡º! ávï¾n±ÈwËÔÕo–Ë j‡€DìÌA­[·†»»{%¯],µ¿KídÏI7&õÈÈHìÝ»YYYpvv[1µ·þwò\õG…&Nœ(¿TH†ð9Îo)))Ø´i\]]akk[aÿ£Oq46rú2222‡ó=s‘ºFµ½DxÜ:á °¹œ‡£ÁÚÚºñ-O™HtttÄ7Dè‡XzžÉ^-²FL@F@F@F@F@mHÊâÃ(žN-dÏîª&n’Æf 333Q£~Pê¾nii Ñ¡äÎ;"Ù3I? QóËâMjè¨;rü2222Lò’f¯®©…ì%¢—0))Iì¯góyS<¬­ ¬‰³ã Ë)µ¨ê*Ÿ”Wn(<Œu ®éÊ÷ËÈÈÈ<Hʦ´WG®ÔJöL~L¤L¨ºººMj¢i<([XN‰ì몙óËágT7u¼(9NÇIiTåþÝA-dÏJš.÷×󦧧CCÆ”ý¡âbGAqÊ^&zu¶¨JPùa‡D ÁÉ^j™0y²VÏ}â܇ÏcÛÙ)®©î³çË'9é±ÌrxÜhp²g€$“kÌN_©¸Véù‡<àk÷<'1|£kõ”R%J !xvDï¾]àhe »6C±áÏXûå»hîdK²ÒðFλ:TzSM ñ+ ¸€Æ †™AÓ™Aïaÿ¨ ·‡L~¾ÖÈï°ÖP5Õõô  Oƒ´ôtu O®Gµ"zÎŒ†ôõøA}è71Ç力5ËÕàš½ªV/iö<ôŽ ÿþÀ­sMèÆ¥©UÞî(ÉEÀÞuXùýzdèù`Á«¯cô“=^P† ìOÀrªnRî—W½gò2’púà.Ä'ÜFQr Žîû&ÚÃàf­ƒ×®¡ÔÈmZyŠBTùa”P¿ôü¾ç ’3ŠáÚ±¦Lz -­H뮋ì¢Ã.ázL\[·…«½5tÄJqfÿ&lß}·3´ÑkØ(t°(%缆o3ç¦âôÙ@Ħ–¢sw?¸Q´5Ê2Q’Ÿ‰3§O#>K.~¾p¶³гpäïøóà)¤dæÀÜÆCG?þ~ma\Mc%1"§/Ý‚K‹èÐÚ•÷Êò‘‚cg¯ÂÉ«+:{»Rù,s‚¼“r¿þ¼§.&C©i†'F?ƒ1Ot‰^ýCÑ—±zíO¸|#Žúžïa˜7wlLiäŠPˆàSþˆˆI¦ZPAÿU^ P C èÛ æÆ¤åÖåÕþË÷fÅ…âðézŽè?° ̹v/9I7qèä9hš5À^aH8f']ǦŸ¥÷r…ä„êÚÒÓ¦OE gKh–¿éù2zDŸ–ËqEè5 -©Ná;Šqí¬?‚o¦¢[Ÿpw0¯°æ$„Ãw?l@tR4l<1mê4ôëà^EüwSªê[áüOŸ!ùÝÑÑÍ+—/Ç…°ò´Çô¹¯ Ç{â °çÇ/°ùàeäS7’¶ž{éUôkíX)í¼äëøá‡u8s9 Å¥œ<á­·¦ÂƸ~å¬*Ùû\bøìúc’r‹‘yãÖÿúž:-, ÈKÁ¦ ë°×ÿ"u!–ÂØ¼æ½ý2Úºš£äN"îÛ‡¨øt@Y„?7­‚bØpôöñ³”wk—~ ¸ѡ٥e¼ôê443/sŠóà`Š0rH;ü¾òKì9}sG¼ðúÛðu·À¥ƒ¿ã»Ÿþ@Ž ŸncðâKOÁX¬Šrêâ Í1°k+ìùùSl=F:—žxæeÌÞµ±a­9}&6i£;¹¶ãeL›-mÍió¡­mci£[«D˜iÉBff¦- _}õ•°yófñü}Of ›–¿/ôò{RXþã¡X(®lžÜJ°°ò~ºA¸£¬ôY „bJƒ÷RàtK¥Õ=x«&$&& k×®V¯^-„„„qqq¨ë¡š'*Ÿæti>ñ9~~Û¶mÂÂ… …ðððÊ7Öò(ìôB¯Nµ{j ú†ÆÂ¬V §öoFöê,Œxî áJT¼é/ôñk+Øv™*¿)0¥y©ÂÆOf mMâ,Ö{¨  í»ö¹$P­QûP,lýx–ÐÑÓUøø§?…äœBz´X8¸ù=¡kkQ>ŽßÐÜZpkæ$èëë g¾/\‹J®}UÜÉe% @  ¡8ã¦ð¤a‚­ðÉO;„”œüŠ'n_Þ#ŒëÓQ°ö+ì<.ä¥Þ¾˜1^p37¨¢/Ë;Égmç!,ú|‹Ÿ’CÏ [Ö¼+¸;» ¯|¶EˆKËNmx_ðmÕRxgÙV!7¿¨"þC[–î.öÂÓoÿ,¤f•¥›qý¤0sh'ÁPG«"~#+a‹ „„ôÌŠgkû#6xŸ0¢o{AW[³">(L„¾s>bÒs¨Øfóg,ÍM¶*n4/„`bj*˜š Ö§ A‘i‚ôZÏ;'¬ZµJÈÊʪ­ÿÊ}ñÁ ÞÍ]'ÏöÂ?×¢åÝÏVðÿižàáb#xOùXˆO˃þÆuó ´îbLÌ)4k>HØv$TÈ燋n Sžê*èYø[ŽEEJaåìþ‚£]/aoP”P("ä ÍŸ(XZx«÷\”Åe ‡Z'ôníL߈¢w[—æÂ’Ÿv …Ê»e 6àäÇ Cº¸ m{þ¯wWFƨÄÙMذ몠,*ÿîJ2„ïß™,Ø›hÓ·}·ŒÚ¶è*¬8r•ä.“/3ú¼0a ­©Q` tšñ®p+» êz®6ªùž9sæ7oÞ¤r[»z&`ÍÁÑÔ¨ AÛÂYøæŸ0¡ 7A˜7õIÁTï.–\׸ö'øÇd wbN <Ò=D|4ut„ɯý æ.ÒÿwÁ· Qô]|]¡UaÂééâ=¥¹ñÂó]-'¾Â¬ž 4ïÞÛªË$á§Ï?ÚZW`¯¡c.<ûòFªý8äóø V¶½„™G&ÚwŸÕ·p>üqo½ÞsÇÌ™3…3gÎaaa­×"Óx­°ëù2nfŽf®fÎfîfg.× ÁEŽ/SeèLCŽ˜½tq“ŽY»¯)pÃ)íÆIü¼~ öù§cȘé˜>ylŒÊ-dÞ¾â%‹^Âà'cêË‹ðçñ ÑS<öÆ%l\¿[÷@ò²Î€üŒÛ8ðçV¬Ù¸ W#SªLšeb‰e•ä”öU>P~’ 5víÚ…k¤msw<(5Å']3Ò·‚«]KBCß–n~°·vƒ®F²²2“—‹Ò’*ËÈ÷aÿŠeøü»¸‘¡#§cÁë/ÃÇÍ’´›£ørùZDD&ˆ%SJëAûâ¢,dfÞF¡²@Ä&úüŸøæÛßp!< îm:bæ³CÐÂM ) È/¨ƒs̓.¿®iê Kèäât`Ò3î:â„_¹Žk±·áíîk#ïÝ€_ŽA²ÂOÏ^„o—~‚qƒ:B™ƒ?oEð­$qµroPðº Ù(& ¡¼ØŠw(ÉÏ$‡¦QÎ- ®ºPªLÁ—/¾mC gß³^/ͽü l[ý5¾ÿý8²ókïœ(bõêïp$06†âóåëñÁëcàl¯ë—R:—qG©3+;¸¸¸ÀÙÙ¹ls°µ.‘ƒ‚;„9i}UäêÞ\6ê±µ«7|õ4‘ƒ€3qÈ/,.“GÈÃÑcáHNÉÆ¼`¨«‰mk—à`Èe˜{´Çû_®ÂÒæ¢sKÄGÆçëÿBzv^•y)-ÍÁœP«·Òõ<e“““ e1Wv@öÍS˜?i®ÅÂÑwÞûøcŒÐ iñ‘øxÁËØu!^Ô¤+ERÃc‡f =y»O\B¯Oãí¹sI;´Gjì,|åc„g²­€ƒkÞÂû_mCr±1†Ïûk¿ù C[¹#íúYÌñ-\ŒÏ¡z¨[~üŸ ZöÂ'Ë~Â’·'Q ƒà_ãÛ_ŽÑ÷(uvÖ Ø#pÉÄ¥-šun=²šéÁÏ× Í-õ¸ëü°ý(`ݯ.^…5K s+;ÄžüŸ-ÛJ5StuíLýûÄc =8¶ïû–ÄoTž>úr Î]­ç,[·Ÿ¾ó \lt°+~Ý ®9Ô†*)ÎFÜ ¬]³ n>½1÷ùa°7£ûì…oáf‘!FŽ‚a[A³(Û÷ü€ xþ¾(ÊÈBêí“X¿ùo˜º Å;¼‹]Û $=Ÿ¾ù ]Íh²è7¸Ÿs*&ï¹ßž µ&2ÔÐÒ'óDü±ý0¶ï;ŸÓ0kæÓdº3-®‘öàóÅbÓ±8X‘³^hÈì?} ß{ý,²±wóFÜ6ék‡VèßÞIQaØ´q "4<áêÓ mªxlÂçƒô›ûð¥sU<"ž¢Ö,X æmìØ±èÞ½;œœœÄç*™[«‹ šó\p7þj‰qOOÅ¡xg¬Ûøvô@ÂÙ­4Ξšh¢9·òÃÜ„*J¾…¿Ž!‰Æ»Ïxc1Þ¤¡pNÖf¸6°f.xG÷œÆ¹‰ pwu€¡víèA¡Á¸pcˆRP(qüÐ\‹Jƒç)øæ³wЛÌÞ1g÷`ö¼Ïp"ð\e¡âH¡‹C»ÃìàQDÒʉ#Qêl’„…"'¿[ùÁÂØÿЬÔÌb<;ç¼õòd8[›’cã(…´ä•sL%Ñ(oeï‹Íäw¯ˆy¦C>GWECw†E@ÇÞ ß“‰yxworZ,D“—ðÖ[±uÓALÑ&\Õ"g%!êÊ%hÚ4ÇÚ ß£KꢘVVóñâgkpáôE(·Ç;Ÿ®¡ín„)Aû1vøœJÍÆä©ƒàfcPn²¾{OSûE:ï…_ý‹GüQ8² o„¢Ô¹býæðmãCúWA^±V~·£û´#"ÐÀ¾Ý©â}9W"¨D²*2¨`E‚î÷\+{üŽù‚G¨Ž8š•‹Ö}G`ûÖMð²1BÉì‰x~ô8üp›6ÂvS ¥W®`Üßý‡\¯ÑwB ô±[]k]¼2{† ‡ ‰{°sO(<ÆÙaÃï'‘^ª‡ o~…u 'S_µ6ž<†÷ÞÀ¿°åp0ÚMj‹ð3ÇPj`ƒe6a\GGhiLC;§0nÙž(šÚz:euÖýò<:gÚ>9û=0°ç(d·ˆ-;~£¡Öl8Ld\Œ·–­Å¼¾Ð%3g?__ô'ÏûÀûóÁ3Xuðg$÷÷çõ°aÓßèçieBa …™'ÖîýÃ?>mšãwräKˆ …ÐÞ ±‘ŸŠƒÆ£ƒ'[5îÜáÆHyý‡††ŠkÜóL,ËÍ# Xsç{¤=ÿ $í*Ô €%K–€—ËmÑ¢ºuëVѸ¹?µÚQR…F=Ôb*…RÉšeÍÏq=qÉA±°ëð¦G"z­ÃÄ!vÍ^\ŠÇ“=ÚÂмnž«\‘¥Ý‚ÿá ªlµ°à¹)ðõt%ìÑu(f=½Q1WÄôúOs"6æ8sáÉ)hWä´E‘†-üzzÑ(´ë×Ï[x㉑#ac^Ö@4°±ƒ± ù¤R5Omz±Â¯›„"‰@‰#GöÓHS?X‚ZQÄ•­f¼9ÿœúþQMÌ‚á®S³K€¼¨uI7’†„ž¶Ð¦ |ØïOŒ IDAT„±ÂζÔOmxŸ›ˆ¿þA™™pù¿0çÙÑ07ªÛ»¬[îênmÒÚºÂZoÂâN#-,a„¨Ë!¸‘·öÃàÓÖºÚÅ6m:hxa`—"ѳöŽ.0¢xŽ·Öð1T#²BƒÈ»0[÷…RpÀ¢Å_ÃÝ’¦Ê¦ûµ,ݱèÓ¹86b6yx§!`“àBd_ëâBÚ8Ì=1oñT˜—ûnضìwgOÀ¤÷Ö!äD0’Ú9àbp$,=Ûá5ª«t‰è9èZyáÕ&áPÈrœÜyùãI%ቂ ³é{ÆèööDö0ò9ü¨í =×vôlƒWÙ¢,ñ§ˆê:Bi1”ô‰²¤T£,—Â#©ìD/Hž‡`ãŠH4t1V”Þ)·ÀpÉVEÚ¦;}F¹·Ç"Ñ‹QÃÞ« ¹ Αòâ#°uÔH Þ{G$z¾³“Ų6Ýúaæ„>| 0ñ@Ÿ¶>Øyá²Sx;ñ4ÿ™=‘Hôü[ÃÔ Þÿû†NÅ™«ç]4µm/rÿRPKÉa¢”6‰ô«ËkVùyIˆˆÍµ X9{=¯õ Ç{ñ±äÈ0„…E£UçÁxæ©áhéa 7³QlÝŠA†  kO/äŒ@$w™f#¯F!»Ä^mZŠ:fª éééð÷÷õ›ˆSú2Ù³ãkø¼qƒ@uϳîݾMtÔBZZÄs² HÏÔf_› ‡ïÉ¢á‹ù…Jhš"1!WJ²¨u\ M"í’<¦§DZz.9»T¥ÞÖ, é.ȧÙüÂ2”Ðòè o7˜0Ó‹AAu˜Ñ ‚õ«†kNÛÂÖÞÞî8NPص8ät逼ÈP„éW¿%9]ÙYÃ@Sƒ†?ƒ>ƒ•4A®_B4iŒAû÷á/ÿ È-v~í—óYŒ”ôdªxèë¥!?·"BEg*ί†2–º´Ra2³xF:KN ÚÚº0"-¦(7̃À1“1qÜ(téÐã§L«2Š[Öbë?A(0nO¦âÙpµ1©=!=H 5_oÓ®3Ü]LpŒL¬7rè½YâÊ•‹H£ù-zté òªVèêãù9‹P ÌCJb<‚BbpýzŽü¶ )ép²¹_s¯­Ø¢õ¦ )¹Ùähb‡²¬\»|§¬¨©¼ôLèS NÍλnj/ßWR¤„y³–hAN¬ª„.®­¡GZÿ’Û¸«D,9šy·Ž&:¢c””†›WoXi®Bin>½O˜›’FªŒÅò9pëä$L?~Û`ÜÌ™Ìû–òV÷½¦”~_Û—ÌEêŃ˜2ñôêÖýh2¬2 ÅÊöøò }mºÖÍðê§K¨{+‰7ÃáW°g×v$SïÕãR`nÒ60F â)”+Åö€‡­ÌïÞJ'N-8RJ\‡z¢w{/éQqßܽ9YH¥º© êZZP+E¢æµ½ªÌüâÄMõd¥ß\m*`éÑc‡öG.õ« Ø…ãÇÛ£“ç$òF×@^v:mñˆ‰ËÅo?jã ™JóSq"8‰J;ªŒ‹áÃý·:%ˆºO“§Ù%&ÚvöhåiW­I…"J^ lŠ·´´—âåy¤Ñ÷ÊÏÇ»wïÆiòW*•ðòò„ ЩS'c‚ƒƒ+º1*eS¹YÙTéáêîo1’¶ª‚µf¹ÿ¹>¡ˆ?ò ÐÈ—@¨\dLì½ MfYµ]+´÷jC­ù“dF»€œÜ^òGFFz?Õ¶–eZ|nR$VûVnܘ¤4þ49·z†Î'ZI!îdQpi–½>˪ŠÍD%T–jÛâÑ0qÁ4"õ+1+ƒM+>Ææï¿„“þ÷Ú;˜9y$œÌ*H?åâ¬üx2i>Š?¤Ùã:¹A_½R•bê¨,SRèªTµWy£ÊI–ÍÔ@*Á—-Í`EéæäÅ"Wi*ò“¶ ™¹[L%QùbÝ4·à rmLüߺð.Âc±íû/°}í2XØ:bÖkïâ¹iãàneTkÙT’yd~>ùì| ;Ž]á8´íGÚ6”‰‘¤µÏ{íyø¸XWj,Ý͘€ð³»ðú«ÏaP:Èß±ìãM?+ t–ì4/HKXU®Ëø …A%|ÙÚP)Åä[¥«SYu×·²¹žIGz~1$_³J7îAåÜ6,ÜrâÀ{‰è™X«ê·'—CèèÙbô˜‰xcÁ$„ì6Áå°/pè¯èáÓ ƒº6-žZ䜆?Ò’ÉäÇ@Ó¼ð¤7÷n#=89¶†[sÜʺ…à ˆ‹N€½Ã 8Û8‰²Tõ‡eâÀš<;Ù±Ö.mÙWõœ­­-z÷îMZ§7F%>›œœŒÔÔÔªnWã¹²*©4ï’¢BØ5÷F['è“F/ñº‚º$4ix£¯· mª\@k#$Êüñª«ØÅ²[|d9)Uè Cמ¤aÒ:TÃKU€á«mî'[*ß÷E]Í ºMZˆÍm;båº_p†™] 9¤è0|8w:®ßYƒ¥/?MÝú(-HÆê¯?ĹÛä/Ñ{fMn÷hcôéß«œÅ©s1˜âk„“Ó¡ëо^ô=k 0õ"Þ˜þö^¾#—tÞ –öÍàa•‚_Öî­À»ú|—½Å*ß%âBš¤«(' ¾ÚÛ¯3LõiÈŠôé:¯9aæåc}Zß¡úDî»Âuœ™„ÉXSé9“…‚|–ʵBû‰ßtɲÀýÈz:Íi²'Mxô‚í{`Õš•8k!47KÌÀI »ãÓ9°5b»ôã,<Éo‰ºf×~ÿ9úß@Dè%܈MÇoß¾‹c×cpbÃ7Ôà¹ÿ eDŸÇ¸‰Sq9*v®íáÓÎÖTO[™j“"°ºrEï]KÓ€-ùU©PTq‰O1g˜[Áð^ÿZwCA¨Tª‰¦1N«…쥌ü?{×UõÅ {odïå(î=RÓôï*-G6¬L[–mˆ••Yj®Ôr2·¹Q@eˆ2•½7ï΃Ÿ È—hïêãû¾÷î»ã÷{Ï=ç\iV̤ZÙ—QÇi`æ„´æídb Ó¾ƒq¹÷ü¼ý4þÜ{­¼ìPVXJëçº<~&Þ~}ÍøõP¡ XÈù ‰ÊÌÌ- [žAi8àòÙhìü§©9*èÛÖžçØ¡æÀëï|H’šcÝ{ÖÇÇG”ð•|ÒÆå™æÃ  ÓÔÞ´üÐÖö¾}g*ܬ$ÅF*UY1ÍȦ—Öëò„W[ù¹CÔ6 Ûe5uZÈG ‰µ9WéuËH¸AÊ•¹U¿kK§±ç­: Bg»u¸r6|"ärLIŠÓ†4tõ¨cN ÄþÀPäë[áÃO¾Áó†“f-Îsñåµ8ê(n݇íÉË#­JT.g^ÊmÒì®ð¨Mc˜8’´v1æÐìzbOšHµ'åÈ¢|–µ ²gÃêÓuV·œœ&e¦eÄ–".ŒâÜLD^¹€=›Wâ§5{àw·§’þ‘ýá ßbÕ`”›ºá£ßÂÝÚ´–™MY>ô‹­{ƒ³öv\ 8 wZnKÏAi>°7Ñ/²;´'É6ÚÖg8~ZLº¤ ­AºEñ—pnë$P««½&à…Ú䈞™TS¯‘‹@bXÖÒ׳¤A°‘Y£¶ÃÏd¡ÓÆš¤TR\úÌËÍŠštÈr !•½RÒóGÆ"u5RˆOF*õmžº.ÐQc5Oj+ ÙK= ¤eÞn„äÜg‘ûiM;Ì_Ô¥´Aíâà¶udQ³—OìG\ÖL˜Ó"tåøA!¥Çá«€ìŒt”iXãõVb6I=¢#Bqúð.,Z°ˆ,‹‰V ¦÷v|l‰Þ¥õTlÙ±¬8*Ö×ËbÏ`ÛŠå$y«jU@Ý{¦êRí_hpOŠaÈÊaë êAwvR2rÒraÕÅÆ:J¥ÕÚËvŸ+Šíý>Qw™‰T"ûZS AV¦¢¨ËЮúŒ~ m<Ôqæô…BLjÖfõôh=&‡4eõDÍwÍ|ìþãgÌÿæ'„ÞH„š¾)œÚu2®cïÎH.1…³S[Ô{måºùKëòùýd}UäÆ`Æä‘è6l."Éç½ÐBN­¼1eÎ'd¹0êåH$Ý£rqâÓ}’C¯"$pEú,Ñó`‹M¶.ªï`œï«=0¡\Ãùðè;¢\9í‹›™åhãfråÜC­ïσV±seÑ="k¶ß¸ÙJGåUÒœíÒ£† ìä lßqY†ä§½Åêå[áx«V¯ÀÒµÛif­ C=Szššp´rƒ“©Js áèê²c­ vV²ãƒË+÷–±yŸaô\é…ð$}ƒ¨ƒØz؉´¶KÂwDøý…µGöàü Ë[S6\ŒO^"ÀÊ/Ý{YAW5 [×î¤õó)1Aûðç‰#H¦­x•TáJ¦7ƶº8†´Uø©›™VX”’Ý1[/¤§_Å Ò™`Ïd¹Y·°î‡åð¿I³nRì½ÿq ïj ¬ùLo€ß™D&gÐY8¹ev%“0²±çºKw®Ð×PÖ­ëq*<E”_YA:vnø/]DV Lhݶ*›û€¡OvŤSrÝ`ïy,q=âÒRÓaM.’K3°àóohûôœ{ᥑí¨^)ˆ‹‹£ã&Y@$“uD…”å>Ù5‹Ë*zfhÕ«uà8 }GGRHt«Zû,Î+ÍK¯…]@:½¿Œüí¸P,ùl1Íœ³è·*ÍféùÝõż¬G>öî?$j‹ùÙ·±…üuE¤’™K^i §íˆ'=ÛC­,ËV®Elj®˜GnZ$~ùm1 "¯BMÝì6³W¡åÒ‚P¬ “Ì[¢M}9.ÙŠ/×Da Kôèßö¤<ÜÖ]‰Wü°lÙ^òÉPÑ&†û⇭'IqVcŸè C¨'Ä èÈNœ¸t½jà’y ·oS; å³fî1±!—pyVL¾rhS£rò-¢ŸžŒhÿÝøçt™ËV Às’cu-–ža ØÐþ)ª*•úGª…ä_x”ˆ8ZBU©;á‹/h§Ðl~½$¦»§ý4¤ÄWhcÕüň¸•%Þœs‹V/'Ý‹èÖ¦š)×ת»Ö@î.>“=*+³±¦ûA Zˆ\’’í¿àtÌ0°ß@Úuí ŸØï>0rÌXZ×¼ŒµKÞº%4h e Ékr4ló¯bóî³ÈÍ/Í®*–hTð$éC,;zÛiûf•</ßÎ{Y³ßC'Ÿ^tn-Îþö^ÐÈD+ß ߨ IMlà¬ÜHÎÀFw©0*vY<®ç1â9.¦¤¢Tuž$9dÏ‹k—þÀÓ ñÜØnðݲ$AÍ©'F¡ô›ià¶Ú¤Aš!ó'=‹¼™ì™Xï jzðÔ48t íc'7…1µ Úö _Xº#:1Î^NðpqÄç?ZcðèÓH ó}#;tíÑè%‘º@#SèÒ ×®­ Úy»ÁL¯îQºT&ÉžbÙï)ë¿t‚µuKhàSH/tyeñ[¨k£L…‡h¬BÄ ¦4E1 !9ŽJ ]LzyòsËðÍÊÍX¿ø‹ªÒö3¿:Öæ÷NŠªbÝû¥Œ´ñZ“RSÕ¦A† :÷…ÏߎÇóÀ©=pbåKëäcÇOFè‰PçuI%uBz6仾þñƒc/¸“Ÿ|Íʼt[¶"ÿâ³õ1|ÿÆE:h˜q3fÁÙ([¶ìÂßëÖ¢w¯ž0¤„ -m=¨HcÓ~fM9‹øï× lïF„Ñvûb®+ÖlÜŠªJÞ½÷Xü¶|.M(mðòòg+q=q¶ŸºŒy4”‚÷‰XøÉ\òW½N,]{T? º`İv\ç‡}›WÃ{â+xãåðÊåü¼#_Ï{£ªjÖä£à›“ä–Ì4ÉsÞô‰c°åÔWð;öŒízcêªX8{;f-9ˆ?ÌǾ³E[|µäM\ßý.ÖñÅ‚…å5âOqâDÎï võ2ZF¢[ŠJ+GŸ•9³wM¦ürÑ ‰_6ŽåŽÿ u¾CÛñö©íbLc[ü°f59çi¾Ï‡¸£º· ²ãšò€Òx®G»"â©3Éʱ]1>ý¾#ð5ž)“¿xrµJv­$V={ö¬("Šž888Ü¿iȈ>‡¯>ÿ—3­ñÁÇŸ 7y ª+\¼x‘LüN’G>3Q³žMïŒÈ¬Mï¤uùºîç5{Þ—ü‘“‡·4O|\¸pÏ?ÿ¼h’W×½µ]H)%..yåš°µ¶€>)Ö•’ËØø„dò© + ²ç%5¹8Ú“½HM—61ƒN¥x¾8/!¸t5Šœ‡¨‘Vª3¼;w‚µ©ÿ4p:•‡[é…0¥õF#Cnr¯\R€+AçÈ: YB´iN¤å_Jæn:°43®Zk­­~uÿþûïEÇDÞÞÞ÷ì’˜•’ŒÛ¤ kbs᫳¢ŒH 1ê Í„ƒBM/«ƒ³9eê# Ú¸âb°¨¬ÙšüèÒïÔ´,蛳–®¾ˆIYa6Ùð‡áÚ8”khã]'räcˆØø›P7±&±¡~•ýtz\Μ9‹ØÛ™ÐÒ3†mÔ¹cÒêmØlP*vJìœ8~×i½‘sönmЯoQŒ_šŸƒøø$ÒûTý†JwRt2²w²%­à 0´È?>&Ož 2Ujž¡ÉÑ1È uñ–öNdMA·BAËò³pö‚Id«¡o†Ö­Û¡S7ä¦Äâ")fª’e—Ž®ÈL%e(Zf±±·ßN#7-Á!W‘”šuz6© ™«#æV,œ`LJmR^±¡çqÚï¼h"eÜÒmÚw$O[j…BÕñµ(.ƒD´iü½†öd?G6õ©0²v‚O÷^p¶2ºc^ž—…ÿºLïg¹:¬\Ñ…ôiØï€â@9+)'Ž&…3zç©]ظ´Bÿþ=aoN›ÄH•¨£\ãÒṙ““•±þ…ÌI½‰«7PNÊ‘nô¼- µH±2œx¢uq:OS “–NèÕ§Z;“ÏŒÊ~¬¬8AäG£XvNpu°@I~N=BîÑ“¡ofM~ º¡3éÀd%„Â÷b4 ­]héÈ©±È.6‚«;y(¬,j1ùX¸—HJœÖp°©–gÄÇ"1«ÖöδéT1ÞìÒ‹5ñO¹Ë¥¥Ã@Z»W'¯{}º£“Wãø-$$Kh¥_|Qäæ!}}}±¼–•×ÇÓ3O£#“^SÍ¥ƒ}Kó ›Ýú³Ð‚'ŠÕ]IS= “=k¨3¢ âˆ#àééÉy6} Ç1¡—°iýÚõ,&¼ŠOÞ}–ºwŽÒîΘ=á±Ckkkxyy‰¤ohhøPÉþî26ÕïÂô[ð;}†ˆ*ƒæ¶;åÔ”6/¸¸{£Kg7üË&>u‘}MemNç’.Ç©à+ }›j$g±¬ü®‘§¯AƒÀž:”ÊeÆ&©Æ£AöMRU¥&råð~Þ$§YÔ=V÷Œwf)Úiybx Œ9×õ{áľ-p#÷Åõ§¹;Ó|Ô5–ì­zçÙw&²Wű«gÑßˤIŠÿo‘}“‹ñ¥Ú³ŸGDÏeàA/1°M½TÞû¤š¼ìÿR‚ù 7ñ×Ú58‰"I›õž¼‰¨-Ò.Ÿ WEÿÛdOq¡±'ŽaÉï›Èâ´ˆk-71ˆª+¬ìÛæ¥!‘}݃ÑZ“‘/( ç7oÄ·g«”ãj̈ôXôÍ' ÛÒ‘U3íjMüïO>f°rᣚ”ì™(ù`â”vRó}¶GWZP×Ç“ã^D›nOÁØÁN´áËýFØl!@ÛÙŠdÏNu¤òrGÂ7jÕó׬Å{dRÆdT>Úú†¤w·2¥ÒžÞc‘pÇ™¯aÇÄçHó»vªçŠäûÛ„wó{4´ê‹gSÿJ¨`Üâ_0(—œïÔõI¸¬¦¥ƒÜë48ær‘럽³Ù#@®S+ÌÄ›}aï*`“’½”¶"é3‘òì™g÷J *ê°¤uZ>êX·€×Ú¹lŠ zLúcP%O]&¦cÕšE4Éÿƒ•«¸ÈáQF@ÏÀ|Ô'ÓÆPìÊÕ„ü¹‹N=ës“çF@•ÖÒ È¿mÔÔ8=‡Yy¥½4Kf%7&RžÙó.qL°¼©Ls’´gø\Fi€ÒÊ&—AF@F ù# Ñ²öœ¹Fb²ŠÍ²ê’–5ÿÚÈ%¼?ºøò|N“ûºÜ©ß?‡CiÌ+>)ÏžY;Ÿ?› Ùó²KXò ­ÙóàD&ý‡Óå\e9hÉR]]2ü}äJ/¸´ ½‚P#Rxx·4¹ÌZ"K‰ìyÍž žµóy¼¹„øøxQŒÏfJ\V&z©Ì\©WЀ IDAT9ÈÈÈÈÈ<.(…ì%òde¢×#¿ölŽÇ;Ã5—À{Ò³6>ÛÕKå”*Í¥Œr9dddddš&'{.“=§4SfBe‘yRRRS”ùÓ`íYÖ!àÀ3{I|Ï啃Œ€Œ€Œ€Œ€ŒÀㆀRØM"zžÕóÁdÏ q¼ß;>ì y¼crgif/ Rvùäüeddddš¥’=“(+¿ñ8ü™œœ,ºÐmÊ 4&-.ëèêê‚u ¸l<(áòʳûÆ *ß## # # #Мhr²—Ö½¥Ù2“(ÏžÙ -¯ÛóZùɉ´';) š˜˜ˆÚøÑKeØå“ó—hJšœì¥Â1ÙK3{6oãÍfÒÓÓqãÆ )ÊCùdݨ¨(äääÀØØXœÕóÌžËÊd/Ç ¥‘='“¨tðº=Ÿ ϬV¸rå bccÁ; ±Ÿ"<³gñ½,ÂXOEÎWF@F@F@F@™(…ì™Ôgö¼.Îâ8Ñö‡<³?pà€rÝçÖ‚ïÂwôèQq)·Ûåå> ¿¡³{iÀŸ|¯tÔRùtÈØÕÎ}.IíVú¼Otù²Œ@“" ¿»‡“±SäE.i|ª÷Þ©zR‡#‰ñ™P™ì-,,DqþÁƒÅ’ >\œUß[¬¦?Ãkôÿý7.]º$î]Ï’Vä²I3{©Ü É]jäüÉéð2*8}94 ~F¬8™’’"Àv÷;6ãÆKSŒ·A9Èü›°Ï¶¶biicúѳ¬Í-/^ÞæÀ|)½2ʨ²ç‚ò¿›ì™\ÝÜÜDg6«V­ÂgŸ}F»„•+uç(‰Œyönoož={ÂÎÎN|ðD"{.ëƒ4R&zÎãÚµk˜2eŠè˜Í %SCyg¬Ú›¯4ªeŒ¸]pàïfÒgí)üw¯(bÇí÷—_~©ÂNÂMúüï¢$×\YHý+§¿wï^±åö&·¹ºç÷–9‡æŽ &T‘}Ýw6þªRÉž¯Ù3 2ѳ'=öIïååkkkñ;ÿæ r$Rl|Uó—Àäüõõi[Jr¢ÃåàƒÉžËÆeä¸ ’d€þ^yåq™€g÷츇gY¼'€ÜøïEWñù0†ü›2fÜ&ø;r¸Ɖ; ÆÛ¯„Ç*..±“ÚŒßØÉ¿š© rûãþMzwß[>'‡;`Lx’ÉœÄ`sssñà÷”ùŠßkeà¦4²çêIDËkö\16¿ãˆWˆ‰–¯)“ì4ÅÁƒË¤ÌÄ/‘=—“†Ìñ¥7xÉfŸÓåÁ©~âùÏ=H ›ÉŠcʇb‡qÏMò ÆNjÒwÆNjsÜyȃL¹±( ‰à¹íIÏImNúlh¿*¥õ¸~2Üß1Oð²¿tðùÆpQ}°RÙK6\"B&@&vn|ŽEEEâ9etL\Î_XžÙK³{‰œ9Ncƒ”?,‰ä™¨8Mþͳ,eÔ­±åmN÷1vñ—ÚÔi0vr¨ÆJ"yþ”:WþTls2†5ã'Ÿ}0¸Iï°Ôö¤ßÜæ–Óãu7cÄœÄüÃÈ|¤èà¯K86eÍ•Fö\H.°DìL|RÄerdò—DŽÒµ¦¬çÍeàÏçË søZcÁ•êÇõát8}~pL^ü y Ã’ eÔ­)qz˜iIJJÄ¥xîa–±¹æ-aWSùîÆNú]S\ùœŒ@cPlSü‰à¹mÊ¡f‰3˜'˜è™“ø;óó‡2ðS*ÙsU¹Ð\x‰ ¥ß’h]Z›•`Ql@Ò¹Æ|r>Ò!åÏä΀J—‰§Ô@›§Ïõ‘H]µ)d“öå~NŠÏýîßÿRO #i`$Ý+—~s›äsrhj¤¶Åï®ô]jkü)}oê|õô$l˜˜7˜—¤É'só‰2‚RÉ^zØRáù7wN²HŸ‰$;ü¦¨¬D✿DÈœ7Ì@KÀJålhžÒCã´9=œ'§Ïõ’¤êFônÜùù×t®îTþ›W¥¶w7fÒ;Ä×ù»ôû¿‰’\ke!pwûº»Þ=UV9Åt¥w—yƒ9H‘ôù7c'qWSÖO©dÏåŠqàÂs¥ø·D¼’7&ü¦Šysž\S"yþ-ÅilÞ|?Rݤ<¸nR½ä·ft냽ŒÝý±c§»?ùN¿šñ“Ï>R[ãTÛX}ÞéËùÑ¿[ˆ¹Bâ ‰“˜§¤ëM]S¥“=˜ Ï•’¾s…˜Ü•5£3ªü#ÇŸ\Å2)Æoèw)nðLøœ62ÙsP|šö!¾ô|$¬îþý_ÀàAꨈ×ÝéÈmïnDäßM€ÔþÛŸSüÝÔy>.é1N|0g(ʪ߿Bö\x©QH•âÆ Ø ¿7ee¥|?¥ïM•§Ç×Aú䑚”U7)ýGý³®ç!cW÷ÓUÄNj{Ò2vò§²Plœ‡b¨¬<—t±c^ä x®©ëYÍHMr-éI•‘>k‰öHžæ:=Žõz$†\h*ª½!T’¿ÈÈÈÈÈÈ·¹»Û¡2ò}Ò”°ãÏÇF_êt$»z~PRåø»t¿7e§)Ëö︊ex|ï®§ÏçøSYu{ò6×{¥ç%ãVÿ'¤ˆ•„ß-·»úc(ÇlÜö¤ ·7 ‰ú2~|01_ðÁߥóõO©~1ÿµ™=WDò*wûömDFF"##Cì”øš²‚;Ô±±±›››¸é7N>øüƒ)þÌÏÏGPPÒÓÓÅ´¥ú>Húÿ¥{ùY1Žrhnw6,9¶Œ@ãP|g¹ Ê¡~HÄÎÔªU+8;;ßAøõK¥þ±”Nöܘôø`RŽŽÆÞ½{‘ {{{qSÿâ6>&ûª?vìZ¶l‰I“&‰Ä/5Ò!|NƒëÅGJJ 6lØGGGXZZ6¾°ÿÑ;>,6xÑ¥ñ†FU;66V|·|||ÄÝ•ˆ|“Œ@#غu+ 33³­OodQ›Ýmñññ¸zõ*Þÿ}qXvÈÆƒ¦¦8)•ì™%2d²ÍÌÌÄ?ÿü#vF/¼ðLLLþUàCBB°iÓ&9rcÇŽËÁ€J#¬†F±~¼Ão|ãêêŠqãÆ‰Ÿ M￟%#ýû÷GëÖ­Xâò_Ã’;‹€€±íéëëÿת/×÷!#À’ZîÓ-,,rI½ìoܸ͛7‹[¢ó¤‘ù¨±œTWí•nzÇ…g¢ç™=‹¸™{÷îý¯=ƒÐ®]; 4H”*DEE‰eâ²q˜ð¹n\¯ÂªÖØôþË÷ñ³ÈÍÍñü/ãИºó@‰Û·G9ÈüÛpÿÇï®ÜþŽ<ã&ñO„êÊ]©dÏž Îd˜––†¸¸8¸¸¸ mÛ¶u•I©×ºtéSSS„……¡  @,—¯1Tª? ~XÜá*ëA)9q‡†€DöüÙX>º_á•FöwáÍ›7ÅuX''§‡*¢544×ësrr˜˜X%uh IKuä‡STT$ü]22222õE€ùƒ'‹Ò̾1|t¿¼”NöL~,^dbåuV{صò544pëÖ-qF.¤dvÏ"h•ÉAF@F@F@F@F !00Ñ3)k¨²—H“G'\—³9šÌÍÍ‚Râ² “=@x Â@?ÀÒýLöÊ‘)9Qf€4Y|‰çý*¢²g wE7›¤1©A]]ý~eRúu^³geVŒÈËËÉžIúAˆš’†Ò+.g # # # #Ðì`’—föÊ*œRÈ^"z‰yͶƒVVVʪGƒÒåå&{ž‰³â —SQ5(!Š,Õ•IþA¤ ÍWŽ/# # # #ðx M6¥OeÔJ©dÏäÇDÊ„Ê3úæ°^/(9½ao~\N‰ì¥%)Þý>ùáð=Òq¿øòuE¤I£Ä#Ò§bœý®²çBI3]^¯çCGGºººZÞ&»Ÿ\&vôÃD¯ÌU“ZNHF@F@F@F@F 49ÙK#&OžÕóš8¯áóz=+Å5—ÀÊ‚ZZZ`Tò߯҂¤$ª /(+åß*P£A‹2?3r𠈲©5å´ PQ TZ¨–¼5c­Qú.k ©e¨µ U”2Î}èuü/ œú•2jgêÔæä # #P?”ÒãIÄÉ„Á³ææ(ÆgxXa&\F.+—[¬Ô>åĺ|v^yñ9 úý± ¡gŽ`Þ«/bÞwËœ†¼äËxÿ­Wðì¬ïr=™¨¿©CŽ®Y„éÇbýÁÓÈ,,©5ƒ„à˜3s*Þøa¢oeÕïá_(é¿ãÅ©Óñ릓HÍ.zøE’KÐpJÓñÃWoãÿ›…“ãPRÖô­¿á…’ïhþ49ÙKd)‘'{âÙssœÙóº=——göRy™ðj(IÃ_¿®ÆÁ}Gq•öˆNÎÌBvf4NùŸ†oP0ròòQ”Ÿ‰3~g±ÿ|0nÓoetw‰Q”߉½ˆˆM@QIí›ûä¦&ãüù‡Ý@ ššoÓ§þÁ•¸DÔQ§æ[¹dŠèGŸ@bVd®tÛDÎͳ˜ñd_Lžõ-R °¯ˆ·gŽG×'¦ájbÁ£ À¿\r¥ÈÁ˜@90q2‰²rž¦¦æ½U#Ñtfz*‰«óadb3½ª8…y鸕œ„¬|Ú<‡<ï™›‘øºiÏì¹|¬ÏŸÒ@…?Ù\ða„ò|ªwJ* [ØãÓÅŸã…É# vË^Î.Ps°ƒž¦TJ[SÚPƒš’ÄÑ&NpõL€½©4ëX*PUÓ$¬T¡­NK  ³ú>'5uMßkS9Õèóá<ßú–UŽW ÔÖ4µt ¢£BϱÉç*µd*ŸVÅ9™¸p&9YÈ-™3mêÛê“‘P„°Ð ¸à¯‰›…heݼ”¿ëS…‡G)o‹DòL |ð̾Fû’\ìݸ“&ÎÀ;Ï@š?–e`߯¯1zPgLœþ:ù]®ºÖ” ñ„g÷<³g‚è³zªœjy ËIaÐÃ=ûu…™Z¶Žu»þÁêï>†‹­%Ê+SJ™Ò‹·À¨W¾Çá3ñÊø'`¤óð÷3hÊçN»I““{Èð!€Þ´YjÑ$P[SZ4Ñ&Õ£z=AU ÚZ4yÔ¢û›™âwÓ"Ô´©5ùÌ^qVÏäÉb|^³g¯)¨ªÐ@@]ƒH·rÜQ–‹3ûŲ_×"C«3æ¾ñÆ>Ñ“æ°MxÂdÏåT<¤:4}Žu§˜Ÿ‘¿Ã{x ¥·ËpòÀ?0V's-D]½‚r=K´örE­#´²BZ—^‡ûüq;£úâ¹IcàecF³ ºó¾óª€Øð`\»™‡Vmà`e 1røÜ€í{O!9C}FŒFG“2RΫµDw&Û€_¥¹)ð 8¸Ô2x÷è'S¨«VT¢¬ þ~þHÈREWoص4J3ql÷_ØuØ)™¹0¶pÀðÿ=>m¡_Ë`%)2~!7`ïÑZ9‰Š{\ÄÛÑÁ8p¶îÝàÝÖÚg…d^Êulø} Î^ºâFü¿I7¤ ´jnÛ÷«nFl(–¯Z‹Ð¨xZ{\Û>‰·æŒƒ…!Y®Ðì%èìiDÞL¡^PåNI“P U]k ìׯúZõï$ïW %\ÏŠÃQ¿`Z60¨+Œµ«%|9É×qäôy´0rÄÀÞ «¥ìäkØøûz.Q("%TÏ.˜6} <ìÌqo3ãö ˆ:-¡ñ%è=°7lLõIjÃ)ÅÕ_]OE÷¾álmÌ0Š!1ì~^¹±É…Pµpô©Óпƒ3¥_¡"Ú}ÿ–ågÀ—Úa #gtrÒÁÒ%Kp1ü&u+œ…6Æ(ËKÂᓆrâ–]—AeÄHôéè*Ö"+>«~øñ)¢B³½g_¼öÆT8WÌþ…Ò|øþC}l©-Fk‡K¿Ã¾€HhÛà•w>Dg„ÞŸ×þ‰A»Å«¯¾Ø”"øìI$™`P7/ìûý+l=N-PC&ÏÂŒ‘Ý’ È’‰M:è6îµÙÍ>–t¸ÐÑ‘ŽþtŒ£ƒ¢Öˆ0"w\Ð ±±±B`` ðÝwß ›6mÏßsgQ¦°qɧBOŸ¡Â’ßþJ…ráÊ™-³C=c3wá½¯Ö ·rŠï¸$B)åÁŸRà|i¶{o óµ„¤¤$aÕªUÂÒ¥K…àà`!>>^ ð²"¨åŽ;Os¾ä!P¼ïß¶m›ðÞ{ï wF¬ç¯¿BïÎnñª@úâ‚¶Žžðâ‚åÂÙƒ›…§zwF¾0W¸“(¤GŸúú´,ºNއD ŒDy~ª°þË…6võY<ï ®'´ï1@8à,Ö¯J•%-¶.xAèäî ,X»K¸SDçK…Û?ºµ2¨ÓÓ×12œmmm aàŒùÂÕ˜Ûõ¬iÍÑ-Z$œ9sF I‹Pšq]xeÒ¡¥…¥ðåÚBJNaÕM·B÷ ãûvL}Æ ;ý#…üÔ·ÏOt«ëNõ7ké*Ìûf‹’K÷–›W|"¸Ø9 ¯½YˆOËήÿDðöò>Z¼UÈ-(©JÿÈ–…‚³½•ðô‡¿ ©YâùŒk§„Ã; :ªØRúzfVÂÄWç ‰é™U÷Ö÷K\Ð~aT¿ö‚†zuzPÑúÍþZ¸™žCÍ6CxûÅQ‚©‘¾@f«U‡¾¡¡`¨¯/˜zO£S…ÒÊæ}þüyaÙ²eBVVV}‹ð¯ÄKÚ%´u±lÝÚ ‡®Æ ÅÕ¯­à»öMÁÅÞBh;å zÙBRà!a|·Ž‚N L .88¶  øæ’[”1Ým“ÂÖ‘BAI±°tfÁʲ§p 0F(ªjç‚·ŸLL\„åûB…âJ "ެú´²TUUªž£¥½³°pí_BQqu¨87…a]…6} Oöñ¡÷¢ºÜ–öÝ…u{®Å%•¨,Cøõ£g…–úônW¾ŸôiéÑMøåØe*wE¼ÌØ ÂÄÁu…´m¡Óó 7² kîçêSX%Ç™={¶pýúuj·µ÷·ŠE8³b®`c¨W‰…ª fb'üx(\(ÌMÞš:T0Txϸ/sè;^ð½™%äÝ<-tpµ©zÏU54„Éo®“ŽöÝ!timO]/Ñ™àÙs„à•.Æ)ÏM^îf"غö^|e² SÙ—q^]' k¿ùJhc¢_Õ6T5Œ„çf­§ÞCŽðö@oÁ̲·0ã™Q½ªâi›X Ÿÿ¶¿Qχ¹cÆŒ‚¿¿¿.Ð.±)× K±Ÿ¯àfæhæjælænæpærU*¸ÈñM>%ã„9ÐCªŒÈž½®À§TR Û°föÎÀ°±Ó1ýÙѰЫÍ–ãzð,œ÷†>1Sg½‡]'EMñ¸¨P¬_³ [œ"…µŠÅ€‚Œ[øg×üº~;®Dß®1k¶±çµy.«Tn鳯*OR£Æž={põêUQrÁ˜փ]ms8´ô€ž6­IjëÃÔÙVæNÐT-FfVròóPNË"÷Ò}8øóøæç¿™¡Šž£§cî;¯¡£³®úÇ¢%«/¶Ì{î­åDiY&2IÒPT\(b{a~\¼ A™piÝ 3žg5$Ü&e·Â(×Ô’ßݧ[Ú £±)4Šràw.i¤×!…ˆË×p5îÚ;ÛÂÝ\ö¯ÅÇᶪžž9?ýð%Æî„’ìX,ù}o$¢„»•»‚ R€¢‚l”—R«/³Éh^.r © ÓùòâT|÷ê»Øvø"´¬<ñâ;ãµc Eú[—_wœDvŒ„Ò,,_þ Ž ‡e‡áX¸d æ¿3–$*8µú{Ê'yÅäbÚ¬%ìagg'ö6´k$mËœÍ.žóhé‰ wo­ªëѾ™;´E’ѦÅߤYp Š*Û¯‡ã'#p;% C:»“.J l[õ‡„ÀØ­#>ýn~X0ÞHŒ9ŠoÖü´ìê6 X·òò,&BÙʵù¤0𛓇âRîì€ìëgñÖäwà{5v]†áã/¾ÀS;#5>_Ì} {.&ÐLZ¡!(fRÃwÆ>ÞÉ«§bï©ôyê|8gÍ­çw__€ˆLV pxÅT§­¸]¦‹‘o}U?~…ážÎH½€·^ý—²©*Áæß¾Çî“„Wo|¹x-~8‰ú \\÷=~úã½5¼ÿ5”­¹Ÿ2°o GïÖÐRW…†Ž.|ºØÂÅTçö¬ÄÊílj®ZaÎgËñësáíe‰¸Ó;ðõâ­$Q3D7ÇÎ0§õ}¨hÀ¶}oX{¿ ùXðÝBœ¿r–n±xõz|õÑë°·ÐDø™}øeÃfpëP¡ñXYiâ£NaÕŠmpêÔs^+# „Û„ï}€ë%:xjÜsÑÑ -J2±mßJ&p§‚’ôl¤Þ:5›wÃÈi8>šÿ1vk²ô$|ñþ,¹’Ñl¡W†tüâä5{&ºȰ…š6i˜'âÏí'ˆ°ÑiðT¼<ãiÝVW†è‹{±ð³Øx"Ž”õŒ|ü‚0ï“OÑß$û7ÿŽ[]aní…íÍ‘ŽëW"RÕ Ž{¡u  Â†¼BDÊßù`±>Öhô…¹sçŠúãÆC=`kk{ßûêJ“¯ÙPÃ]¿Áã'NáD{¬\¿C:¹!1`+ÙÙ ¢œ$Š”Òâ!FÉíØMâ¥äÂ"¼ðîÌ#S8;s#\ÜÏ¿3'öÅ…g’áâ`]õzÒ+?‘"+ßA¥'ŽÂÕØT¸Ÿ‚¿þ}Z9àfÀ>Ì|ë+yJÅiºOMtÑFGŽ#òÌ9Ú9q4Ê팡Z–ƒ°ˆä”`‰…õõpèR)y–bÊìOñÁ¬)TwRl| /?û<þö‹AÆí\””Þ[´Šº±ßÂDñHj©M¤™±4[æÏÚiÔ’L8'5œFpŸ¡ ÷Ò‹0µ_téâXu[QV<¶oß‹#á¥xéÃï0sìÄÛŒ¯ÞDlë IDATXßÝ{Ñkæ8tlå‚þ—‘sBû^Hˆ BRB : n-«ÒRüÂ./‰ó&úïgOLö|ž±ÎX¤Oþ~îÜ9dgg‹÷-\¸ððð@÷îÝÅx¢É_L³Ì2QÒPŽâbR¼ÏDƒ;¸È_\ˆŒƒeÇq˜6ö)ØÑsh5dž¹ ñ+ $2Cz¶†nåÚ•¡T£Ò´8säòJÔ1÷…©èâf ÊØµÛp¼øôDß¼\”Å•HÀÃÂGo#òv Ú—8C5-hFX¢Ú]{yÀØDíú ÄËÆm1ø)’óKN/µ…Zè“ÕB*õÅÔ¨®;PŒcÇ )[À´ùß`Pg/ê€ø…×Åóï¿CgàtŒ/Â’²aM¸kð-÷ å\CQŠˆMF/WK¨S>bâ«ø¥e[XÒ:µžÎ!7 Ÿÿ-32a?êUÌ~î0Ö{´ÕÑ­KwXhîFX¼Ò ž‡ôBm2ÎíG Chª—bÄ´è êŽA]=D¢g­lÈ…œçä¨òhí>/C-¸«¨’t°(&ÇP,XãýϾ‡³©®Ø$ÔL1ïë981ò\ =I&`“`Od_ïæBGcw¼õÙT˜Î‡–žðñ̉˜ôñ\:„[í¬qéB LÝÛá—Ç‘BZ…´RÓÌo¼: ‡gþŒÓBÁš’ðD£(¡‘±ÓÞŠÈ^ŸzkÕí åÐŽ¬šš¼Ë®5åŸ.¡Á‡òòRÓ+ʲʉVpD4õ»É–*ܼ‡aýÒ_¤k cÂX¥<¯RÃ}$ûË =NÔ 1nú[íÜCD¢“†a.NpX RÙ|hÝ“6kÑÂÜO>‰žcvîàCoô:Xö€ûVÜlàŠ¾m;â¯KÇ’IçªydæÛóD¢çˆª†N˜; › ÿ+ç‘]2Ô-5» ”–ÃD)\cþ^[`b,ÌOFd\fÅLJ5ÇÐëjO hEbK ·¢Ã‹ÖÞO`Ò˜'áéjg£1𻂣×c‘.¨ÁÜÝ y¾ätæòI4s%™å¦pkí3Z˜©-¤¥¥áôéÓ 7Æa²—÷x–ÏÅOöpëÖ-‘Ô¥49ÄDÓÀàAˆ^JOú¬O‡Ãq²È|1Ÿ, Ôt ¨ ¸\–M£ãr´ Q/Ë'Â+Bj:‰3kšÞJ™ÕòɳÞü¬tGÒ.ýÑÆÉ ÌôbPAÇ6­alP!á—µ)ƒ±¥3Ú¶uÆÉ+ç~%9]‹PŽ`ýjyÒ̶¥tZhcðÈÉè;´˜ü¤áZh boD"ðÐ~ì:u‰(¶ðL¸ž%HI¿MË'Ddã}=2ŒúŸ ¥Õâ$˜j’S¦¢\Zfa—ËTÿzLµÕÉPëJs£ð錱û,&®Za”i5&ñ×–UØzð hÆ?çe8XÖŸšò¡4"­Ví:ÃÅÞG鼞˜CÏÍ—/_DzQ!zvSÒªVÑÔÆË³ç¡°8)I  ¾‰k×"qlÓFD¦¦ÃÆ’¤ƒÈ›oáwR(Ì@J^6ѬPH’•«¡yÀêÈOÏ$3Örr´”\ZºiH(£wÞØÑîV¤«ðìíIDM™¼²ÛˆŠ+F)šµiÿ$< hÉO!'÷¾0W]ŽòÜ|zžš064¦ñe~š=×OOƳÆÂ§S[ŒŸ1ã‘yÞ ÕkàWR_Â}Îö¯g#íÒaLyf2zwï„þä «Jª©ðˆ¤žHÓÜo|µ–·r‘t=qñ ˆŠ¸Œ}{¶#¹@€µ8p¯(Ó‘šŽ<ˆG¤PVZ,Z|¹Zv„±ÂÒ¬\þ#ʨ¤ 7ôiï.Ý*~º8»ÀD_©)ÙÔPõ• Þ‘Šr(…ìVd&˜¸öĸáu‡ÎìÆ©“íáí6 ´¦“ŸŽüœÄÆçÒš–:ŽÐv¹å©8ޤbKêŒKÐÑÅn%¸y5ñ17~3–-ÑŠfõµU’¥ÆÆÆxòÉ'ѳgO˜ššŠ¿Ù/€d=À…"ó÷½{÷ÂÏÏF•ÅpwwÇĉѹsgb‚‚‚êÜ4 ›úÅÎÍ¢uçÒDìý £é¨)øD‚Tgjºtßs¥¥E åIÒôСãN4 ­Ü¡NbY¥M3´woEܧ„œÜ^ˆ¸à‹ŒŒ4ôÓ-ɇÜäh,ÿé;üBúqäa«É¯&×VS‡Èž#56”!/‹×ƒSðã;ÏàÇÒQÑ·¥1õë¨ØcÚs3p9v)"b±é—/°eÙ·0·wÂËo~ŒÏ’tÆX¯ŠôS.ÂÒË™™‡W> ÿëì mÉz¥†ò4·SZ6žèêêß+gufKd_}L^µ1¬'dWhèÇ_:…9sßÇ?¾K.˜9p{?éÖýê«B‰”æäVHʲ‚1cTïo1¤÷™ß‘Š©Æ(÷œäø†dí¡«@ÉÔÖf$òÍÉ¿‰Üb}‘H4,ZR}îl%Ô¾ éTnáeä êxæ¥wq$ècø’¤nÛ¯ßbûÊÅ0niƒ©]¼8m<œÍô¬=ßSƒæubØsoaÄ?øû|ŽlûŽuÐÑ7À˜ç߯o¾ŒNöæw –ªK/ "`Þyãr6–^1ðæ‹¼ Éýìü|µÕ‹à½úøGþþ=;vÇàn.´ÆÂÒ7hVõgÚmù1ÐäžLçœÛ:’i•ìlZÁÑ¥%nd]GÐ%-Ä“ç7kë!°³°­µVÒÏäYÉŽgíÒ!‘}M7[ZZ¢OŸ>4ël‹Ñ£G‹÷Þ¾}©©©5EWÚ9s(ÊJ%3”b´tiƒÖ®ö q‘ðøš ‰ÅZOý.m]DÓ&>×Àϯ¸€I‰½X¦ÈtòRj+\kНºº¡¥…>‚CÈÙPΓ$§Ä<[ÁHO—”çÒ°îóyX²iRT Ñ©{_ØXÙÁÝM ç÷Â¥Xž…ßõÂÖP0Å\º,òJ P˜žBÕ&‚n>°¥²¨ûH)ª¾êƶ°µ4 ö-Ýy¿OtŸô6·é„¥«ÇE23»„äØ|>g:®å­À³žFK}šoÞÆòïàü­¸ö†—h­Þ@¿Ú|í~95ëúè;¨–ÿs~çobZ]œ¾” ›~ðv·¦÷™6£J Æ{Óg`_h4ôìÝÑÅݦVŽp5KÅ+÷Vá]k}*{óšž#÷ôEy¤°Y=sôñéCíêw„¯ór¢‘»éžJ­™Ü{›¾®žõa¬ûQx/ **dšZÙ0TXOü® IKºÔ˜´4\E'A®ý¦`ûW,[±~A±¸@¦¸Ñøfîó8}3 ~5–”ßãLÜú`=M¦Výú ûF!2,„$#iØøÓÇ8ví&N¯û<ŠHW ‘{㟙‚ИX:´G§vö0§~ÚÌPË\~çŒðVWÓ%¥Ð{Ó©˜"Ô.ó˜±tïÖÏ!S¡ •hã\S²u$ùo]R ÙK…—ˆž×¹k&{Z£)W‰`:zxÂÉĦ}‡àrï³øiÛ)ìÜ{­¼ì¨Ã£µóR] ÷ Þœý<œÌt) "!v†C#3s è–gRN¸ìƒ‡J–£‚>d#mkË5©\5_­ý¬¨”Ç1xW¿ŒŒŒÚ#+ñŠD9&ö´†Nü>O½„ïÞynV3^1ë²bQ4©Nk]šÔ¡54ð€M›DkªjdgBZ¬¤Á v¼R{NK¸Ž’‚ -iiðÑÐ<êŠoÝa:Û­CèÙùAHh$LœíÐÆ«%Y-´@rH ö_E>Ùøé7˜1a8iÖòè<_^û"âÈCbæ{2âZ”Ñú_ñA^Ê-šÉWxT„¦!‰imi‰¤s¾X†‰}<É[ T{òÓújaY * {¼'ƒO”—!3-&žI0Šs3yåöl^…ÅkvÁïÄiÜžúÙUkãð†ï°êÀ%”ÑúîÇ ¾…»µi-3›³j6'[÷gˆ 8?÷HD§ç ç´np0ÑϯÎÚ‹ãdmç3?-^ˆA¼ AºEñ—pn«/Ø–¤ÖÇHˆÓkÚ䈬jÄXô JŠhLï%õ/¼F«kiK¶Ô40ÓoŸ×oEk’œ( “—›Cú¨:ÐѺw¶§힯ªôN¥¤ç#¯€ò¦®Fjññ·Jà¡ë5Rä£;‹Eû;k‘ž™2Ü„1Éy “•J“;Ì_Ô¥´Aíâ Ín¿ûi3.ŸØ¸¬™0×Õ¨’úÜS Gú„€ìŒt”iXãõVb6I=¢#Bqúð.,ú|®Ðà=!¦÷v|l‰Þ¥õTlÙ±Þžëëe±g°můÄ3wâÎ0Ý{¦àÑà¾,1Y9즷zs·ì¤dä¤åÁ¤«%Œu”J«õ(dÍQÛ{Í1ð,>½4‹®)96!bqÏ íZ¡Ïè§ÐÎSgOïPt ID¢¯‹‚ü¨k鉚連ùØýÇϘÿÍO¹‘5}c8µk•ôkØ»}#’H«×Å© êÀ½¶r‰3ºš ZyNÒÖoì`¡Ž¤uISÛ-Ô4pýÜ%¤§e)4âRlúp†w÷Á’-û‘šÛp9îýZÛ‘C¤|äÐï­°ãøô§­HÌTÁé`pgh=Bâ{E0Ìí½Ð·›=Ò£àç_v"%[—$wÞ¤¬VÑa D‡Üñ º“ã(&zÑ×Ãpƒ¤V<¬µ³¢³PD4I¦sé7I¾óé.ê[T4õ ­kˆ’èHÚÇ!”¿ªÖÍ£¤½MËxO¿þ>n°øªþõbRI“E}œt_)ü‘G Â̱-œ-­i]^ñ‘KNdªs.ùG­ût¤ÁÀY 4£¦ýˆÌüb¨Ñ{×Ú»?Þ^ðºwuFI&Ò²ÉVÊæ1ùä÷Sœ‡äÆ`Æä‘è6ìD’Ï{¡…&œZycÊœOðÜsC ‘_†Äô\j'•C*Òª—zÑ Ã¨93«ˆžG\ —ëôüiRXßÁ8ßW{hA=;ÃÌ”™(”’Ý1+#f¤_ÁuÚS€=“å’ÖZÝù_ŠDQ5qÑÔ†cßõ’&Ÿò;ãÈätÚý0 '·,ÇÎ#dVÄÂèj’w®žÐ£N}óÖõ8Oi’Dª ;7üŒ$~Ïη!|5ª³á¬êºúȽ‰sGþÄżs[K\'rJ#åC+r‘lL|þ-B¯Ý‚¾K¼8²Õ+qqqtÜDÌÍd2E£%”:òiN—TèõêÕ åª8GGtéàNkŸm²8Ä õ° HÏ­ ´Ûq¡XòÙbÜ&: ˆëÝw=BñÒ@(À¾ýÇ‘”‘C:>·°…üu…Јµ½¡íˆ'=;@­<KW®El*éaÐ]¹i‘øå·áv…ôtÜÈN a3{²õ.+ %“Ì ¸%ÚÔ—ã‘-øâ·Cdn‰ýÛÃÖÍ m=´pù,–/Û‡,ZÓåî‹¶ž"OÚ÷Dg˜ržz|,ìĉK׫. ´!Öm²FÑ%¥N³fî1Q¬X}ÿÐûÅïo‘“•rò-¢Oöê1þ{ðÏé’æV Às’cE"|fÌ6´Š*5QÿH¥yä_¿”GY•RË€"÷ÊM:“#|ñíšÃ¯—Ät÷´Ÿú¶2ž¸SŒ•ó#¢r—ÏŒ˜³X´z9Ùí¨¢[›>h¦\_«îZ¸7ºDò< fßó¬ÌÆšîwh¡¸“[Ù^H—޹öß“§qèÄ.tîÓOŽ‹ËÁ—±vÉ[X·„SQ…W×~ýôPx:Wˆ­-ìáâé=¿x89·…“U!Ü™gõ/©\¬×ì!á!6ìZ È#'/<1º7b~Çâ¯ç#Lá¼LJq𠭣œˆ4+ìâí ÝúØ…)äC”F/¿Hè9ìXí¿“»—ã=!•t)\áàwœ<üNŠå•J¬H|uuõBZâ ×%˜†mÑÞÓ‘x 2fö¶äxÆþ‡/à«?G(¹¯;‹Ýh›«ªM6ÕÛáNƒ…rž½W¾ì4Ùƒ“{'•ãı˜ú†[—⯭{i7µ|¢xr¥Luçèm†Ž@ï5Ø~l?^z˜óôäÅ'?ûI£\sfGK£ S®úT×ÄÎ:˜#üØa¼5k&¦>;zÅ騶i5BbÓ0~jÞ¸„€¤}O’„Ò¨ƒøðùë(S•Ä—å( µå4ØèK®ViÉûjèÕ¡=,Õ´©V ×®äZ—-«ÄàÚÎÖÑ5ptãj¼C¶‡‡!þ½¾"ÈŠ¤É ~XFvðs§úðD]Tèµ€g;4aϯ Qš Ûü0lÞ}¹4;f ÆŠx*x’ô!–>ŽsÛ¿Ãt•<Á~‚aOuÅÖK;ñá¬g3n$²?±÷wl>JÒhc£Oƒêb”‘›óü|3ïMdÍ~|zѹµ8ûÛ|¼ ‘‰>V*$¾ÿ¾Q’¸ØÀ#X¹‘œîRÝ(ÀÃã‚Ý݃U 7ÎÓ Ÿík£.ý§'â¹±Ýà»eþ HB §ž=†Òo¦¡S½ºk"Íù“ò˜ìyöÌÄzOPÓÀ§¦Ã¾ÃØ9¹(Œ©UжÿSøÂÒ Ñ‰©pör‚‡‹#>ÿуGŸBBJôŒláÓ£:´u}rÚ:F¦Ð55‡m;´ñv…Y Ú–Šeà2q%xŠeWŒ÷o~W%íÑ2Ý(ãºr’¡¦®‹RQ«”šwtÔARÿ‡bR2*§8*-ô0éåyÈÏ-Ã7+7aýâ/«ŠÜkÌt|üê4xX›KÜ[QFUM¼ôÅb¼0¢™íÖŸ$ÔH{ÿÏ!3‡4‡ÏÀ»þ'*Ò£¿ýƾˆ7§L€iÜiZ¨èzŠiæréJDUþÂ{J”c¡Ê(w\k®?;÷A+² ¸—Ž>#‡Àˆœ¨H¼eë=oÎ<‹y‹Vc׺±‹ëHíë½Ï¾C˜ïŸ8tä–|±‡x¡Œ&‚*IxðJ ô; ÓŽúbé®s8ðÛ2±ú>£&¡SA<~;v¥l*Jÿí:ŽÂïkÁŒ)¯ãìÖ_໵)Ckg|±b5†ˆ4ø¨/†Ü·µtn/'MÜð öUJi{>å+ß‚5)SòÄÌÙŸ ˜f‚/ߌ•‹>ªJÞ½÷Xü¶|.é+Ñ{¦J懟­"óıØ~ò2æÑ@P ‡LÄÂOæÒÎpÕëÄÒµGõÓЩ F o‡óëüÉ)Út!?o¼ô=^¡e‘Ÿw\À×óÞ¨ªš•[[|óÃb8™R›¡+§Oƒ-§¾‚ÿ±¿`b×SWÍÀÂ×·cÖϱã‡ùØAwªª¶ÅWKÞÄõ¿ßÅj –cÔˆ?ÅåbÚèôbW§—ß¶¢ÒÊÑgeÎ¥¢/€Ršô0Ur RЃFuÂÞCÛñö©íbL#[ü¸f59çi¾Ï‡³Ut(\bꬹ¦ƒUöT@®è`/%‡¯>_€Ë6øà“OЛ)Ö•æ">!™V*taeA‚š\\í3O¥vlk^iRœ—‰Zú¸DÞÞŠÉŒ§¥ƒ3¼;w‚µ… ubR·Z[ÎwžÏJ¹‰[éE0µ´‚‘! 7ùö’\ :G6Ða(4àÒ†´^Ûº¢ •ÌÝt `Iž ¥µÖ;S«ß¯ï¿ÿ^tLäMb{¶P Y)ɸ– ]Z¦1'ÂP§AdU %Ĩ+ŠlzYœ=еK‘)fðŤ’²fë6mH²Q‚TÒiÐ7g-]}“²Âl„_ Ã5§—khã]'räcHfž7¡nbMbCšITb—…3gÎ"öv&´ôŒáF›uîØ†´zëOôUe¦/)±Wpâøi\K$q3y+´wkƒ~}{ÀÚÌf9ˆOB!½OÕohõÝ*d"dïdKZÁ`h |Lž<üÊ6Ç@3ôhòhHëâ-ÉÌЈœ)¶Ê²ülœ=…àk±ÐÐ7CëÖíЩrSbqñrmþc‡.]‘™JÊP…lHªÃï§‘›à«HJÍ¢-!ŒÑ‘Ú9¹™Ž¹•AÚÙN0&¥6)¯ØÐó8íw^4‘2nIÊží;’‰§‘ƒ£~Ø‘ã®Aƒâ†iì^óRÂÏÑ@&FÖNðéÞ Î¤(«˜dy^h`t9ŠœÈ¨Ãʼ’> ûP'g%E’´‰|ÄÐ;OíÂÆ¥ú÷ï {sÚ$¦aE¬_Eš Öṙ““óH½SÌI½‰«7PNÊ‘nô¼- µH±2¾GOѺ8'j5ié„^}z 5)æJϨ¬8AɬQ…&Š´·ƒJòÉûèQrž }3k´mß I&+!¾£ahíB¾,ÝÑÉ«qüB.¢—Ð&J/¾ø¢È?ÌCúúúbx?,+¯'ÀÓèȤƒ¨ré`­iža³[\°Öꮤ)Èž Éž5ԙɹ¿HˆlËîééÉy6}(ËCè¥sØ´~ þ<| ƒ&ÌÂ'ï¾Ë»_ïÊ™=á±Cxy‘ó33>T²¿«ˆMö³0ýüNŸ!¢Ê ¹-k/×xmÔÅÝ]:»Áà_6ñ©‹ìk.mó9›DíïTðUоMµb+NÃÉÓ× A`ÿÿöÎ'Öª£ŽãZ(úxï,$¤*cš7èÂDÓ„Hꢑ .M nM\‘‰W†è†˜ÆU»1‘H ‰bêÆÆh7,#BBC€XRµÔZ°çsÞû^æ7÷¾÷î=sï=ó¾“Ì9sΙùý>gîùž9Ãeñ2c+NtCì[q5k%—óZõæ[¯Ïœõÿ|Dá3Õáç6Wß8òBumöKá•Ô¯VŸ¯/^½Ìeucì•+öc7t¤ï±ÿBûÕÅ?¿Q}åàŽ‘jÓÊãûÖOãËNsÔÁuúðŸ:j^ëi ÿñ·¯…w[ÿªúÄg_¬¾öÅ/W»Vzlà±9nÒã™zÙ»Ò‘Të¶©Â÷o½UýòåŸU¯ÿåju_w³.k›§"¶T/ù^õL8Š·Ø/3§C7~÷zøèÎ+á‰.ô ᾔτQ³՞§¶õÎô[Úåã&ð°úÓ«¯T?zãÍÞÍqI Â3ô³;¿Y=ÿÓ#Aܶö£;ñ“k¸°0á“tó¨U±G(‰§"/©a´°f ›f«¯¿ôíêsÏ¿Xmzõ©§÷¬x„Ícw÷—²{NË^l,Qð·|®:ùòÏìØ2D”IDAT«ï°ð1‘A#Í·àš7SfÛzETüùï|·úÅÑo…›ûK}}Í/|8eGxrâ‰èYý"áĆê¥ÿ¤ú*¯®´ÃÉåÇ·ÌVsï]«¥~Ð ´E`±= N.<&Þ+ìH¦U±—ϱè#¤*×¶³…p³Ò'ÃuZâj÷HìãôýÃÆððOî*ѵ©ðé‰ðþ‡Ý»¹Åš˶Îm¯ˆ« „·ß…-=9?Î:|^Mm^fú l ×ÒçªÙ¹™ð¡¦áîÓ™¤YÄ^£dnrCHÙó•8–ÊLCÀ¦÷·Áác£P¦Á6Û`&0ý6?õluî÷ §>–e¹Ÿþm6š…3Õý‡êá¬Ï ×©ÖF¾µ³)¯!Eä¹;Ÿþ´ˆ=—¸—€3ºfÏÁ‰E?_gsÍ&PpÉrSýBŸ¢¼²3<FôÑs@–œ¾Y­Ÿ³–XJì¹fOž»óIOK¸yóf}ÂcJ؇ÐËf|p000Rd{‰'ÊH~ëÖ­µÐóe¸i |“ž‘=Ÿ¸•:P™m‡ ˜€ ˜€ ´A u±Ç(ÄáÔHyÇŽµ°Þ¾}» ›G®ƒw ð"ldd¯Ó÷Øë`&`&`¥È¢nzFõDÞJ‡À¾ývø.x¸1nÒ¡çwêƒî)ÐÈ^)“¶Ï훀 ˜€ ˜@›²Š="ÊÍo¼XÑ¿sçN-øm:0L]ØØsy{ °û°×£ûaˆz00i&кØëº·Fˈ(£gF÷¼F—kå“·nݪŸ±çòwãKèeû¤ísû&`&`&Ð&ÖÅ^Æ!öÙ#¨¼wžÑôµk×´ÈDRnÊûkø>4ܜǨžˆ­ˆ½ƒ ˜€ ˜€ ”F ›Ø#œRRFö„+W®TŒ¬'._¾\ݸq£ú™™™ÞÈ^7NÊ.·k&`&`¹d{„>Ùs]œÏÆîß¿¿º~ýzuáÂ…¼ÆéC‹¯ð]¼x±¾”À§¹¼@Ô©üanÐÓAB¼®ÏôÙ+ÃÍìV€Ôg¶¸)í³˜‹M ÿw‡Ç »XG¤%mÿ—³¼AOFê4>‚ŠØïÚµ«þvüùóçk2‡®¯—iõkòBŸ³gÏV—.]ª¿]Ï™nÄ6®Ù ðêk\XRœ”z¸LÀA…Îd¬µ¾õ¼<Ûˆ—/ñÔ`«'7¾õ;ú ƒ Œ“ß>¹{÷nÅÙRíÿÇÙ~—Ûâò6½V‡Vã±§a6xSì×Ô;£3gÎT'Ož¬Åã±K^¢ƒDÄÛ°‘e‡ :3À ǯ/0ºçã?Œ²ø&€k9ÝxûÀi"'‚}‚<Ña)8±Ã€ýWüXêÁƒ5;õ;ó[ÊÎSíP¤ÿ±Ó7þßRæ°”Ld¢IœÞ¹sgùŸ¢Wü¯spË&ö¸'¡åš=ŽÍÏÏ×;qæáB˼œb´ø`¸ˆ2Â/±ÇNâZ³¼ŽÐèðzfŸz9˜ È¿zÂ?˨c#V˜²ãˆwËVrAMvêÊÃN}އ2ÝYrÀÓ÷(SŸSºÖýªê*5…û;t‚Ë¿"åÃhÑjXe{í´1\Bˆ"ìtÊ8¸ÿ~]–cÇ„ ´ƒed¯Ñ½Ä™e† jƒ%‘G¨¨“iFY9|ÖÞiZv„˜¿úv°sH€•DžT;WҸϙašŸKG#@?ÓX}OÓô¹ø `´–ÊZFhúƒ¢Gˆ¾ôˆùâØ¦çÙÄ#1XÂŽði„£ˆ#â¯SŽš×¦s´ X0º×‘í˜7,\ù‡?ÔCýl8Ä‹ Ç §RsøÖ&§IÖ%†ÚYJ¸â²IÚ8­m‹]ʾ&;M§–u™ C îSä‰xú¦Cšl¤èB&‘G§Ðü²Š=®b4ÆK 5­Sëº6+,qRÙ0)í(ª}Ä ŠØDçT¶êljºŽÚâ™aê^/ë°âíÞœ^/Öâ§éÀHëª\ÓôIÊL mê[üw•W_#U¾ív»^ŸØ ?躤Á'ÚžäYÅ^[Æ3ÍÎIbÈ)}¢D2Þá·á¬Dœö%È´ `@ ¬ì\k›ÚhÔM}Ú¤~üò Rƒ‰6¹³ýSeƒkYŸsÕ÷šÌôb>yM¯OJö:fÿjöÃæAh.;ºX¯þ»è‹>Ó°“vµé_V±ÇP#`¶šÿôh-wm1B+¤Ò$tJóÛö4»Øc0Æã”ò8„¸çÑ× -þ©@bKlS¼üZóª‡àS7)bOˆÿk­{=,¯í#VÍéõÀ`c^ÍzÜ÷šD<Ý6õ¿¸¯QO·Ýf)õÁ‰ˆfÄ1—c{ŒW§St†¸CÄù6U»qª|[íP”r¤¦Ë7ÕßõtÐö0»Á[7f§¾§5ÌN$œæ"÷?Úˆ÷¹Ú,¥Þ˜ºHˆËÚöó‘"µ]sŸúäŒÒ>‹u²ŸJô«“ÃF›€ ˜€ ôĹ)g>˱<ëõ;Sfu"Fœ’×4N(¯´ŽÙH0(ˆ€Jq¼¢¦ã”|Ž ÿ7ÄB|?ćønˆÿ ñ!þ3Ä{!RÎ|–cùƒÆ×Z•Ù3ƒ¨Q=ï‡H›C|,DË0êUY b‹¸8૸(Oê`&`&0úXàÑ •cUÒšXÌÉkÀ©r-7>ËÚo ­Ao©£Å|,øh3å,C”f!é=JìòKFöT‚³¬–—ÐÓ bO9:d;šB®éfŠc¨´sÎÚ`0è( xœÆâçqQÓu·oœÑ;z ¾NÙÇ‚/±_â¯Ä;.DÀXXG8b/!×)}D^B¯ùZ&ÌêTh+ÅxqPžiÍo¦,ã`&`&Ÿ@,ò´&1W9:¤¼æÇ)ù.ôXš >¯Q>Œü‰ñè>L.„”Ø3GB'Á8”Øsê^§ïÛŠ:$ܱ±”)RŽß-«t¡Ô¿&`&`ã& ]RªÁ&ÓŠM›´l³|š§Ñ›Xð%ê¤Ñ“özœK‰½* b/8”3MÔi}RêûÁ ‹Luˆ…»™g:U†CqùT;hãLÀL 0Ò¥¦îhZóq»_¾+H¤CÝ£Á ºIã½Êt`°D£–‰=ôÁÓh ¬¤ ¨0yè™å»b(ʧR•uÍ?Ûk&`¥ˆµGÂÞLñ]e]ã€î(J‡5ð&Õˆ^eµvÇ7çáð2±§0‰šŸi5‚¸#ö€‹…>Lv&¶äw3MÍ«W𠘀 ˜ÀÄHÀ•bˆòÍtbFŽØp¬GÒbRÄ]V*fžÖ Ù…°ä¥:*$]Ý –D])åä äµ\]PÀ@)]J•Åó70”ö¨Léx,Éß Ú#ýAØ5­<)A½–[( ¿}Å^K4Dx¨”Eã¼Víjº RäÈ yÑbΚ€ ˜€ Œ‰À ý4oLæµÖL¬?Ê“öò)‘Wë+нTº(þšTZ PA“_½tÄÞBΘ€ ˜€ Œ@]’ÅêÓZtiÍb/zNMÀLÀLÀºA@×Ý»a­­400X3ÿÐ` pl8IEND®B`‚erlang-bitcask-1.6.7+dfsg/doc/merge_silo.png000066400000000000000000002313531233730135600207440ustar00rootroot00000000000000‰PNG  IHDR”¨P!1QiCCPICC ProfilexÕYgT˲îÙ‘´‰›œ69çœsÎ9`“·äTD” "‘ (xP¢ "ID‘  € *ŠJFä z¼ç¾ußû÷þ¼Ykz¾©ª®®™ªéu‰€  0("ÌÖH—àìâJÀNÀr@8¢gxˆŽµµ9ø_q0G%tý¯bÿ3ƒÎË;ÜÈf{x…{Âø.]ϰ[0}(:"ƨÇ0ƇÁÂxúûþÆ+ØãF£~ÉØÛê€f€ŒŠH óÇÓ Qž¾°œ>ú /R Î0Öôô#zÀšˈàn {ü›ßÃD¢Ç¿t‰¾ÿ¿Ÿî ¬O  Æþºù¿l"á÷õë ‡[ª Ëß0ÁçG/¢¾|å€ÏŸ!¿|Ë@lÞAv0í‹yXZý5} ma ÷…¬C"t0üÎ Ÿkû¿éñq~z–0¦‚é9Þáô\=F4=ð5Lo‹´u€1?Œ†GÙÀŽ(h>ÎÏÞéo™5/oý¿é„ÉÐä· ‚žar0ö9¯°Ù ðXE`€7ˆap$€9Ðú·ÀaNÌ þà=ŒáÁpŸ`þ–ÓûŠá¯~¾p¿ÿ®‘QùÁ±ªŽ~0÷àÙ=þpã/iÒ¿îÿÃ@\j^úcÞ1ðw€^pHlÉ×/‚ ¹Þâ“ OIq‚¬´ŒôûÿÍq0gý6ö»í¯¹bzþ-ŽY5>8¦Šÿ¡y$ÐÇ/í—hü4<¨ðŒ ‹ú­upA @G(+à|@~ϲ@¨m`L°.à(?~p †hp$‚.‚Ë ”‚ pÜ  ´ƒNÐ ÀS`,€Ï`l€]‚°b€X!nHƒd!eH2€Ì![Èr‡|¡ (:†Ò¡l¨*ƒª¡¿ V¨ꇆ¡Wд}ƒvHàD"¤Ê„Âqá‹EÄ!’ùˆrÄMD¢1€CÌ">#Ö‘I‰dBò %ÊH=¤Òéƒ CÆ#Ó¹Èrd² Ù‡EÎ"—Û( ŠE@IÀqjŒr@y¢BQñ¨ T!êª ÕEÍ¡VP?Ñ84Z ­Š6A;£}ÑÑèt.º ݈îA¡Ð † #„QÂc\0Ç0Ç1˜L=æ!fó³ŽÅbY±bX ¬–ˆÀ¦` °7±°#Øì%7™,™!™+YYY.Y Ù}²²d»ä´ääªäVä^ä±ä™ä•ämäÏÉÈw)è(„(4(ì)ŽQ$RäSÔQôPLS|§¤¤ä¥T¡´¡$Q&PæSÞ¦|L9G¹MEO%J¥Gu˜*’êÕuª‡T¯¨¾ãp8Aœ6뀫Æuáfp[Ô Ô’Ô&Ô^Ô§¨‹¨›¨G¨—iÈihthŽÒÄÑäÒÜ¡yN³DKN+H«GK¤§-¢m¥ ]§c “¡³¢ ¤Ë «¡ë§ûH¥¤7 ÷¢O¦¯ ï¢Ç€dàcÐcðd8ÍPÉÐð€Çà…ð&øcøtü-ü ~…‘žQžÑ‘1†±ˆ±ƒq– É$ÈdÂÀ”ÉÔÀ4δÃÌɬÃìÍœÊ\Ç<¼ÉÂ΢ÍâÍ’ÆRÏ2ƲÃJ`5`õgÍbmf}͆be³a‹f»ÂÖöĎgWc÷dOco`Ÿä@pˆrØrç¨àxʱÎÉÅiÄÂYÀÙŹÄÅÄ¥ÍuŒ+‡ë>×"7·&7‰;‡û÷'#A‡@È'tVx8xŒy"yÊxyvy…xx“xëy_óQð)óùðåð=â[áçæ·à?Á_Ë?)@. ,à''Ð'°)($è$xV°Y𣋉PœP­Ð´0NXK8T¸\ø…FDYÄ_¤DdH!ª ê'Z$ú\ !¦(F+G‹«ˆ‰—‹OHPIèHDIÔJÌI2IšK&I6K.KñK¹JeIõIý”V®”ž’¡—1•I’i“ù&+*ë)[$ûB'g(wJ®EnU^LÞ[þŠüK …³ ö•Ãë•ø•ܕЕ&”ñÊÖÊÊUÐ*º*§TÚU¶UU#TT¿ªI¨ù«Õ¨}TR÷V¯T§Á«AÔ(Ó˜Õ$hºk^ÕœÕâÑ"j•k½ÕæÓöÒ®Òþ #¢sLç¦Î²®´n˜n£î¦žªÞI½‡úH}#ý4ýAzƒBƒC^C_ÃZÃ#£ãFÑÆfÆYÆ&œ&ž&Õ&+¦J¦'M»Í¨ÌìÌ ÍÞš‹š‡™·Y ,L-.YL[ XY6[+«KV¯­…¬C­ïÙ`l¬mŠlÞÛÊØž°í³c°s³«±Û°×µÏ´ŸrvˆtxäHãxرÚqÓIß)ÛiÖYÊù¤ó€ › É¥ÅëêèZåº~ÈàÐåC ‡§?"t$æHÿQ¶£G;Üh܈nwÜÑîNî5î?ˆVÄr⺇‰G±ÇЧžgžçg/m¯¯Eo ïlï>>Ù>}5|/ù.úiùåú-‘ôH…¤ÕcÆÇJmú[ù_÷ßp ¨$ tl ¢òêæ Ž  I ™ U ½ºfV… o‰ÀÛç‘‘g"ç¢4£Š¢¶¢£ïÄÐÅÅ<Mýgwí8ê¸çñG'xN$ž˜;©s²,Š÷ˆtŠïTò©…£„‰‰þ‰Ï’¤“²“ÖN;nKæLNH~wÆèLm uJXÊÄYµ³¥çPçHçSåR R¦y¥=I—NÏMÿ‘á™ñä¼Ìùüóû|. f*f^¹ˆ¹tq{ÃöFwµRuu GMf-¢6²vñæá›C·ôoµÔIÔ•Õ3Õ§ß·#oúËý¯ñ³†Gw”ïÔݸ[ÜÈИÖ5Å6­4û5϶¸´ ·š¶>jSkk¼'yïz;O{QcGæ}ŠûÉ÷÷Ä=Xòp©Ó·óÝ#·GS]Î]/ºmº{Ìz÷övõéô=x¬ñ¸½_µ¿õ‰ò“æŦ§ OŸ)‡|Þ]JùB÷¥xYxùîWí¯OWœWVÃV÷¿e|gý~}M~íѺõúÌFàÆîfÚëÖmåí¾§»Ñ?°?ò÷DöÚ~šýœÞÜß!†íp‹ðñàÛu8‡ps‡!(þÎ)~IÀé ¼…@À˜œ†8 ËqÄ 2%ƒZF·` ±Éd§È³))ßáø¨#h&éÌèà§™ƒY™ÙÂØ»8ñ\®Üe„y^>Gþ3µ‚…^ /‹l‰AâR%…FÊ™}9„lwÄýè1·h÷$b¶G­g×ïm_?q’þ±£þéeAMÁð··EÐF¢d¢ucìb½ã¢§ž(>Yßuj"áSâÖi(™ê KŠàYÅsf©ži§Ò¯fôÿ–ÉsÑ>ëtvõ¥g9«¹ø<Å|炘Âü¢æâ±’µRüUù2½rà ãJÓkVUö×ßð®­‰¯Í¸Y|ëV݃ú'·Gÿšj˜»óñîrã·¦Íæ­ˆ6ì=êvÆêŽÕûcZ^éL~äße×­Þ#ÐKÛ»Û7ÿ¸­ß¶ÿÓ“ŒuOÍž~zvŽ¿¹ç™CÚCÃM#Q£Š£[/ÚÆNŽëNM<™ÿÊcRbrcêÞtÂkýò™Á7Y³s¬s¯ß^}ç5/6¿»0ú¾þCúGÒ¢ñ'ÁϨÏ3KM_Ò—|•_a_eøÆóÝdíüúòfÐ6rçö€Ÿ²ûûûŸJBP#®" k¨*´/F KÝ"GP )Å©q©ßÐJÑ1 ñ'÷˜O° ²Ñ±›p$s¶s-8x´xðEÁ1.xA(C8Eä¤h˜˜·¸ƒ„ž¤˜^jWzAæ™ì]¹bùÓ ¾ŠfJÊÔÊ+*Cª j—ÔÃ5l4e´è´¾ké´ê^Ñ;£``o¨a$`Lc¼c2o:hÖj^aqÁ2ÎÊ×ÚÉÆÐVÉNÄžÃÖí¸ã´âüÁåµëÈ¡¾ÃGÞr»î^F,ñ(ðÌ÷ÊõÎõÉóÍ÷+$å»ä1à|`ZPjðÙäÐÓaIá  ‘ Q‰Ñ§bNÆ‹=s"ödL|Ü©“ I‰g“.œÎK.;s+¥ýìÀ¹©ÔOi;çÙ.ˆeª_´Ì"fG\:—“}937#/-?µ ­ð|QVqnIÉ•ªÒú«me½å£³•_®m_Gß ­f«á¯•¼©|K·Î¼Þé¶û_> þw‚î†47ù7û´mul3¿§Û®Ô!qŸ÷ãCÔï㚻²º}{Tz1½Ã}…½ú¥ú÷ž <õ{¦2H98óüÎPê0qDu”itóÅ˱Öñ‚‰¸—®¯T'Y'·§^N·¼.˜I~=4çÿ6ð]ä|ÒBÎûš]_/nf[2ÿ’¹üaåÈêÊ÷ÊõØÍ€íèݼ½Þ_þ§ƒ³‚‡t!„(A ›PŽh4º ‹5#"ÇQÐPâ¨qÔ4%´Ãôt .øTÆÛL“,XVI6+vŽDÎ,®bîBO:o Ÿ¿ŽAà‡àP¡ðQ^‘yÑ*1’¸¸ø’Ä-É ) ©ÏÒ52$YAÙ¹Jy¢«Âˆbº’Òžr“J°ª°êµl>[¾~¤œcáþ¶Ò4ËAÏ‚o†d„†Ù„+D°FìÁ«tWtUÌÙX¿8“ãÂ'ÈN|<9ß}ª5¡.±")ÿô…äÓg¢SüϺ³K5JSM—Ê<Ïy1“ú"6 Êú‘½yé[Ηˋ¹óySùý­…7‹*ŠKJ ¯––\­(«-¿SÑQÙ{­¿êÙõ‘/«gjÞ×.ßܪCÖSßfÿK¸AþŽæ]£F›¦CÍÞ-A­1mI÷2Úó:ÊïßzP÷°ª³äÑ¥®sÝ'{Bz=ûõ+?àxJ÷ 7ˆ{ŽâVqqslv‚í¥Ó«’ÉïÓî¯ßÔÏÝÇ¿Ÿû¤·ìú]s›îÀÿ¿kKkF€ œ˜°zÀ•‹p™d.›l`À^ ˆF­PÂ?ëÎ8àlS ¨#àW;¢àŒ2Î#[áìq,Ãù"‚T!KÈІ2 *èôÚƒ3?M„;œéU#†;HA¤=ò ²ù% çj娷h~4 ]ÞÂèbÎc¦°âØxì(™Ù²·äºä•ä!¯( (ë¨X¨’©¾á¯_%iÛß. >òN×A­EÝEcB3L{ˆö#]=†¾€AŠ¡ïÿÉX̤Æ4Í|Š…¥Ÿ5”­—=œƒ—cŒ3K—k—»‘Ê#Éó…·Ž/˜_–S CðŒ¥0·ðªHh±X¤¸•„¸$•ä©!é&™Ù¹Pyw[EC% eIUQ5Au~ ^M^-^m>]!=}qCe#]c WS’Y¬yºE©å«'Ös¶X; ûH‡zÇEg~7×¢C/0µuËrò ó´õºì=éËçDêð§ 𠼌  —ˆ¸¹íó"ÎôxïI£øç GWNŸ;ßÒ}Î'2½éü±L‘‹ß³Ÿç´ç¶å?)üXBWªRv´â̵ºë/k ›¢u¶·cJïv7M·lÝcîP}@ìÌèjïùúXð‰ûÓ‚Á;C=#C/FÆŸ¼¼7Y5>0kþV|žjañÃíE¯Ï˜¥ËË4_#W¾á¿[­X¯Øx°9¶õa{uggwú‰Ø‡~ù ×›¸`ïë@ñ Tƒ‡`þîÑ'¤YCÇ d¸Ô ½E à5ÆŽ(FôÁµ¤32Ù¢LP™¨WhAt,z£ï>!lvŠÌ‚¬›\‹¼ƒB›¢ö÷,U$ŽWKmN½JSDkL»MWOïËÀÃ0†Ï`4bB1õ0§²Ø°²³~bkgÏâ qpñrCÜo =<Õ¼™ðÅ]À\PUHL˜_„ Ê-Æ#.(!)©$¥'m-ã&,—(Ÿ£P­Ø©4­¼£Ê®¦¥î«‘¥y_kY‡G×^ï¬~»Áš‘´qˆÉ]ÓæÆù–_¬ lJlgì ^޵Në.:®½;¢|4Ëí ÑÌã¦Î;ØgÔO™tÅ8lr/L"¼<’#êVŒzì“ã'¦ã=N-$ú$½Oö>óþ¬ï¹ÏiÇ3¨Î_É”¹Ø›}èÒ·Ë©y<ùm…öE_KÒK¥¯N”'VJ\›ºžQ­U³~ófÏmž¿fî”4†6»´ÜSì{ ÐÉß%Ô#Õ§Úo:pèéyÐpÀ¨Û˜É„ðË“½ÓggtÞ¬ÏU½³›ß_úQjñögî¥ã_Z–g¿î®l¬~úÖû½xÍuu½kƒ´‰Û,ÚÝjÙVÜnؑةڥÝÛ]øaõ£nbÏgïÑO®Ÿ!?îÓì»í×ø?ÜGNö`õ•.\~œÙßÿ.6€½¬ýýÝòýý½ x±€ÿ< øý¿â@C @qåêÕKN8¸þûñ_>¯~¶ÐŸsÄ pHYs  šœ IDATxì} \•UúÿÅMÜSRK3ÅlÛ,°ÍÑ‚i_´[Ä)SÆ_?å˜ÌdêL¢Ó8i5Y’ÓB…”iÚÔ”ej‚¥¸K* &(ÿçûÞ{àårAT–{¹Ïçžóží=çû¾ç9ÏyÎòú•––B" (Š€" ø.M|·êZsE@PE@ þ Cý à'æLï$ZUãœ)ˆš^Pê å{õõßÈOû÷º¼Äî:rW?^»ú™ÌÝù»ó3ñi»ëøÝù¹‹kâÛm¾*\ØaQ·" Øø^UüÉø› ÙÝvÝù»ó³§©–gÙ#ŠÛÄ5¶ ®öZùž©¢íS€íE' ö—Ò¸]§M̵ ·ÛÆmGÔ5¾ s·&a®/5Ó¸úñÚîgÜUÙ&{:{\ã6ñ ‡P¨Q¼ßsåC¼6d*ÇkÃÇì~t»‹küí6Ý4ŒïjÜù™8vÞcüŒíÆkC&mÏn7ÃåÓØÓ›8Æö9¾×¨„ÛKÏgm^:c›ÜØô¯I˜‰glN­´ j-ÔB¨¥Ps'ŠÝ¬I“&­Å4oÞ¼¥P ^KùüÅö»‰PS^;í¦’†ÄçqBìÚB¿:m^“~s¼¸¸¸°¨¨èHaaá/ÇŽ+”øÇ\ˆ~G…Žýâ´‹Äv}ù͵±%JYÓ(ØxŒÛij_û\£!HjOA@xˆácÆfÑ ¿2¶á{îÂL†¹‹G?ò:ò=Ú$ò9ò>Ã÷h7kÙ²e«-Zïµò÷÷o&E pò<ò;‹$mñnâ/<­ yœø~gxŸÅïÈ÷„ç—”” ¯û…<$ñÉóŽ;mºÉßÈóVà´ymx–]0ncK´2!ÁøÛfò¢_£ã{^+ ðe²žˆã‡nÓÌ‹mÂí¶q3Ý$¾Øí„B„Ú’äEnß®]»®òbw `X°¼”­å¥ä î/}|i›6mü„š´oß¾©Ä jâ´Íµ³fÍhQÓ¦M!/?ŒmwÛý䥇ܧŒNœ8a¹-åÀÑ£GqüøqHã€4ŒB%¿üòK‰ø[ÄëC‡8|øð¯¤üü|ˆðP*÷9*¸ý"÷>,EžøíËÉÉùYÒeKs”ç´sÄ6>†i´Íµ8ËÜöpúKQuP£ÔÒv ocvÆmø4vºÉãŒÃyÍNœüÎð½6ÂB„—uÞÖYøV¹Ui¾­Èó$^ó   Òàà`‹çµmÛ¶)I:}¡¦’Æ_xÝÂ;ý„@"ÿ#Ÿ³ó:W7¯]ùáuvò:áWÏûWò:ásÅ´…÷¿áe'òòò,¾Gž'a”8 …~‘ºp`”+iöKØÏoŸ\¦Ÿyùí!#ØmÃßì~µŒÿÑM¦g­koúñ a@^L¾À4æ¥6×öݸMGñ„: …ÊKÚ©S§sZµju¶¸;˃k//r€4tìØ1@¨™„ŠÝB„?yá!6$>$žE|Á½Ñ°9rÄ"i<Æi<–}ìçŸ>ºoß¾c(¢Á—š d¿4´]â·MÒÏr}ÀIlL”Âi—ä*(Pâ7ˆ6À®B‚ ýUÜ#àÒñÞf:w&2~v›þä{g ‘ï… u í)yÇt“ö, ’¿‰Sáẅ́ߊÝRüš„„„à¬³Î‚tîeûì yé›H#`ço‘Œü%šWØ_‹`‘4ËÞ½{÷‘;vݵk×qqÿ*Ò:Õq» ~aâGq³áìuÚÅb»6»°`„‰¦APã›TÑñÛù›á{fôÏ0Žê-ž'wákýe rŽýÂÚ:6žУG@á{­;wî`xmlÔ¸G€‚ùžáy{÷î-žwdçÎDz²²¨}8.É=20Ú"<ïѰ’çív§% _3¼Îð@ÞÐîö8¡Á…[çïÚÁ³ðå7 áÁB½„Α—€¨éŠ»»¼àçž{n³óÎ;/èœsÎiÙ½{w 8–ŠJ⨩¨Y¡{öìÁöíÛÿøã‡·lÙrL„Î÷í—ó½„'£‘mrûL!jØHŒÆ€6¹fc¡¡òÀh>ú«4l¿··á{FàÜ’)Õ r/N1¸ãyäu6ªUa@_~vö¦ÐfC`àÝCTýWË–‘²Ø¥÷UW]ÕrذaíEð“….¬Æ×à‘ !$ÿ“O>9,«~÷ËJßÅÿÁf£…6#X D®ë¬‘HÞj·8yžá{f cø¯;]!Ó™7ɔ砋/¾¸Åu×]w–ØþýúõÓQ¿[T}ËS4£©Tˆ¶´ðã?Α©†|Ù¹Z/®$¾*2<|Ïhj•çÕŠ0à”ˆMC m6Š^"Gˆº+ªC‡=n½õÖv¢hÁÑ¿Žü5Õ"ÀÅ:¢1(yûí·ˆ$+so+„>”DÔðÐ6Ž ‚[ˆø©Qê 'Ï3Bùœ]è"×—‹-SŒ9²Íˆ#ÚÈt'¼y›^©W@€Ûe ÉÉÉÙÿûßÿòe}ÕESš"‘¾â.£!- jƒç¶0à"³!P Í½zÁÒÑ û½,„9ç–[néÙœ’°Eàtà– N¼ûî»DµvP¦^ z™ä·Gˆ’3É4”Z•š%_5>Ž€çQ0<§®”AÏ=2ÿ?8**ªÝõ×_$ZOô0jN®³ï½÷ÞÁÕ«W犠°\*¾)¹m¢0`4ä{<±ö´B§, 8;~Ó ŒDL»¿4„ÛeûËÈ›nº©ý]wÝÕFŠ·E v `””T¸xñâlike1ÎR¹Ãj!.Ä1ÚKr>“"y©ñqlB€Ñ~šA¯Ï–5¿“5·:´Ã}÷ÝzõÕWû8bZýº@€Ûßÿýÿþ÷¿÷Ëú‚Ÿ„ËBDjIyº¢} tZBÁ) Ò(Lc m$bÚýE"ž û]/衇:>¼©ìƒo5Š@Ý"À“)9/Y²dŸÌ·m—•»ÿ;²P(°7ÕÔí£h”¹;yž™ ¯£æ“Â@Ùõt¿LŒ|à:ýîw¿kÁsMÔ(õ×¼ù曇eútð¼Ê®…wå¾F(à è”55lÚ6’ú‰ð20ô±Çë$ób² †r‚E þà ÝgŸ}v¿ÛDS@¡à!ž„hTiØHÔ(Õ"`Óžg„€nrLùC²ú¦I“&u¹ûî»eM4¿Ñ£F¨„ÏáùçŸÏ¡`· D(x]JaB–PPSžwRaÀÙ(Lƒ Àƒ1Zʘ1²fìÔ©S»Rsê ½£"àîé={vÖŠ+¾OI”ÝB ¬éƒš67Y«— à2ø1<ÂÀ-râ_ì”)SzÜqǺÐ^/©"…‚þóŸy¢-øNŽOþRl®)0ƒ ~’¼¯ZS­0 ‚BUdll ˆ&`†ì Ÿ6mZ°|ÍJ¼Ô(ž‡À[o½uìÉ'ŸÜ.Ç…ÎÒQKÀݦHû8ýÅ6žW[-Qm <ÏL…’÷‘ç‘zÉN¨©² ð22;Éú€Ú¸•æ¡Ô:«V­*‹‹Û#ë þ*۲ߒØ·%V»– JaÀ)˜µl\-{éÀæÍ›×ëšk®‘K5Š€g# _$ßþô§=Ë–-[";fKi)XZ‘tÊÀ³_½–Î&صdGÔßçÎ{ìŠâ`H"àÑÈgëñ׿þõðk¯½–,;®&Ka žW¥†À­0àl”ŒM£à¤Øåƒž/jˆî<P"à-p‘á¨Q£ö§¤¤,àQ)7…ªÏT ð–Y‡åžgvGžÇŽ †6WxÞù—\r ýÕ(^ƒÀäÉ“¼òÊ+_ÉTéÝRh®#0<Ï­@P•0@A€  …Pw¡oEÝ ùh†8Õ(Þ…Ùöµÿõ×_Ÿ/G~.Ò³qP( êLïzœµ^ZçÈL…’÷qkÀ&9 óW9+€R5Š€×! S…"¼(Û¯§Ká9e`x^% ÒK.‚‚€Ñ Ph)ŸÆœñÜsÏPA@ÐPã•ð´KYuÛQÞá{¥‘áó=çˆP#àø.a •—þ˜,ŽÎWAÀ‡_ŒFPõ§žzª…öw›Tåb!3ÀwËó* ’€~¦apÀ5rˆÆEüãé§FðZ¸Øõ…^F?^*Á†AæßÄÙxm½´àgŒ€}Š€<ï2ùxÐ¥ùË_‚Ï8gÍ@h@‘ÐY¶ÂÆI1ønžW©?¯ 8™"†‘ùA!9Y«}ÖGo­Ô2Òk!bõ— Ù08 V©QÔÚÍ4#G@xùù Y+À÷¢Ÿäòø*hjàgdlo‰ÔRÈð¼JÚ Â€D´KÈ9¶jÕê&Q­25Š€×#À½á"àòKrç Qè¥0àÚÄK `ø>p±ôÕ²k*ÔGê¯Õl促ôã­¥šƒ…øŽ³?§\A pe‚¼&•iät-?ùb’x©Q¼Ù 9 ‹ï8×ÃT)%{Mµ5D ÒHÒ•~ùå—z¬` Ôhž€|àˆüŽÃó\ûþò‘MJ`’%%çççw‘“ÜäR"àýlݺrlgG©‰‘Ù(*IÉÞ_S­A 0šÃó¨m±råÊ&×hŠ€g# ; §R !ßã»Î÷¾Fš²†!_!ÜÆÌxÜ¡EÀ›8~ü8ä+‡¸ì²Ë¶J=(Xê2±ù¾«ñMìÂßjóÓÃò=yßDDkݨxñÅqíµ×æI¥ø~žg ‚쥇«aã s´ˆzà «¡§·ºB¥×Þ„À¿þõ/ÈÙò\LÃ#‰ù~›wÕ¨ %ÓCÏ `2JòÄ&ãLJ|‰r¤«Ï€ m||ñÅØ´iä8í“òúr‚&ä³Û®Å4ï7m5¾‰€yLí+¼ wß}7H=ô–/_n⨭x$¨Ë§Œ1cÆ <ýôÓ0`€»r²ß¯ðž3’«0`ÿ (ÈÖ”ÁŸÿüg"w¬Fð,>þøc<øàƒµZmÛ¶õ¬ji< ·<…¼ùæ›­)&ùÐäã/ª%ð´'§å±සƌƒ¼¼<«oæôþ©® 8esÅW”1Ù{î¹wÞy§¥R“3 N9/M Ô&ÿýïñòË/s‘ äSÛ¯ÎÕföš—".@•]YBfDDî½÷^œuÖY>ŠˆVÛS À]Rùäkw€¦9sæètÀi#ª O ãÆ³T¯^½Ú æÎk òq7}'OXMWj>¹+`ÕªUHMMÄ¢0J»6M­ ¦P!!!–*ê´uëÖY+¹å³±Vàƀ„£85Š@M ,gÅã³Ï>Ãúõë­²(|rw‹E !à;xýõ×[$ǾZšª¸¸8p ùù^Ÿ>}²ˆzo/C€çùבçñà 9 \§òꫯ‚}l]˜Zì…¤äBbÅ(°bœJèÚµ+Œ‹/¾\p5ÏkO§nE€ßà;³aÃKpá…ZL•ëTlg(PŠ€G!À«<—€Ä…]\ÐJ-)á‡ä}ÔšªQì8pk×®µønݺY_öYàršhÔ¨Q–vÈ“jÒà€+-[¶´F‡!³gÏk/%Áå62ÚGޱ„ƒsÏ=ך[¡$ݽ{w p9sÜ$U»žàÇ\øœvïÞ½{÷ZŸ…723j„n¹åË­L­žŒÞÆã p@Á˜d weQ{ÆŽ„‹g¹Öjß¾}#Ï#¯#q^™¼¯6¶–™{«]38p%¿#ß#Ï#¿#qË3׎ïqðzÍ5×X‚û6O6' ¸‹/<‰«)¡0À'çâvíÚe5>vJ]ºt±â3  O ãJf:÷l<5»¸¸\àBÚ¿¿EÄÝœó4xs~þ•AÕý§†³ÆVˆWŒóÌ û¹Í[¨O8-JáœäînòÃóh:tÈÒ.˜NÐðò¶sò<ÃëŒmçyt“ï‘G’Ç‘ç’÷>X—£b®¯°ó9ò>ëãyäs\¬ÎžõfŒ dxëMüLçOèKÓ™N8Y#4/5ç°«3¦Ã¤´h^2¾L|©xMÕÝŒGÛÝ Ê•sy&Ø@øbÑ6äîš#uC(!3# *®üÎÎ÷讎ߑçÑÏò>ö¼Í=hsúוç±3çÀÐð= 0ìøI¼¯šŠøœ0P±úU_™•è™#µÒ6;mÓ¹?^Ó˜ÆÃ—ÕÞhØxMiÜtügR.M«(Š€\Ì4‚ÝÿTÝfôNáÂð9cÛyý8¸!Ï«Šß¾g:~^«©T¨\ËreÇMR£(Š€/ À Iw! b–w=/-­" (Š€"Pë4˜øÆy'n TSÎoqKžE@h\(Ïsÿ<•ç¹Ç¥¾}Làç¶lÙ¢ŸËÿðí“U pF//G@yžû¨<Ï=.õíÛ`ÂŽÄÇÇW:' ¾ð´ûñh^Ž Ô(Š@ãB@yžûç©<Ï=.õí«kêq½Ÿ" (Š€"àa¨0àaD‹£(Š€" Ô7* Ô7âz?E@PEÀÃPaÀÈGPE@¨oT¨oÄõ~Š€" (Š€‡! Â€‡=-Ž" (Š€"Pßx¡0P€ŒõéÈ*(AÑÖDELEzÑ™ÂV„•³c1{e¦ÛŒJ ²¾>rË“šÜõI¤Œ,¤LÅéV9c¦¦@7 ž> (•(AVF:2² Ì3"¢°4ã̹IæÊÙˆ™½îÙg9Ÿ­TWÜõˆ‰©IÈL™Š˜ÅéRΠ̈™ ÷™»æ ×€€÷ %;pçE‘¸£þ-CÐÿܶ¨ ÷­LÀki‡ÝæT²# /º[j |½äv$:t BëNç¢]K $?‹ff Ømîê©(Š@u”à½~Ñ/q „é!tÐ9h] 'Äï\‰Eq?¡ÐÝ­m|Ö]°Ýoç§ 1-ñ_Ðþ­;¡™ò´( y5à™ö¼ÔÝpxŽ0P’…¥±‘Ö¬ü£±ðó,A¥Ÿ/ŒuøùEbþÊÍH™<i7p¾Ëû»÷‰èY”ŽØðpÌÿ<ÛJ³8&1KE:-ÈÀìh?+}øèÙÈÁÚn2D2—/fùENDò* } tÜÙ_cj¤3Md,>ß¶ 3FM”di3q)r]óÊßö¢ŒÅžÀ¨kò¿-8^”ƒã”šËOsKhÉH™í¬O8f§dˆ¿E@ðMJðõâ©eü váç 7Ù™º‘äKB1óS±1iÆ ¸1¢iÌFþÁƒ8^rIÂ/GÏÿÜ‚.}q Âc– Ç,@JühGžá£‘’‘k…›Ÿ‚Œ•må¹_Ó‹hÿJ¼w[>›žëŽ7;sÞûÄí‹ä" ËR¾Æ¡#òIc‹é5C{ù£)ÈHA´³>£g§ b‰¬(úãxŒ0P°u5f%tŲuëðòe÷ç÷¾CÇ%`Ö§ë°l0qøQó› IDAT¬ùa F$ơߴ•å|ñÃã6kÖ=ÞË$$Xhëǯcyð,¬IûCV%àÏïâ¾ø)2ON¸û]Ó(š8L`Ï«`Åœ2c®éޝ%`ÛÑra¡$+ý¢â0eÙ:¬y+qQý°Ò&L˜|ÔV@ è¼>w9f-[ƒÿ¾< ãþŽ´ìtL6ÁóV`0½E‡!ãÜ;1E˜ÞÀ)ObDØ ¬HLÄÞ£Íq^x0'¾ƒ%ÙH³aƒ gå4DMÛ‹·Ö¥á­È4Dõ›«&/ß9‰ÂßÖÃÑD‡ï‘J¼÷c\SÎg;ï¯Ì›ËÆU}p»£pxü¡k€+‘´Í®a݉™ý¢°}Ê[2Fz iqQ˜³²¼D΂©åÔ‚²©vjÑ¢}/DFÉË{Ñ«³G°mÝ’ù$Ü9="SQ<¥D¤Ø&¾Îë‰@mÓ4CF<"Ò°wñÎeTQÍÀMüñÞvq¦%aÊxJÀ1ðà>K* ï‚-_c•ÜiÍÃ7cpPž8oˆû^áÛ>CFQä¢Ð=Ãz0çôé€öG]íhŽŸÀPœ+å^ÓéËÃqI‰°sŸ4«.,‘E@ð)Û#<2 c¢†` Ån¢pl— |„·¢nÄà7¢´x Jü Q(ƒl_)Ÿl0â‰9 Ë’ûbšð’· À¡ÿé­Â‚Ç&ŠÍ‘ùnX,&HœE{*c—YkÆo¡å¼$¾ºá½­{†•ñÙ¶íVâÍåCœ@„õ Gî>!‰ 1¶‰Û#‡°Y|Ò–/ÀDazí¥ž»wîŸ.Œ¨ÆƒðÍÀÿ™‚„e#°£p5â'9êÒo€8°63TƒLFfQ1òÅ÷p^™ljEîpy4Æbî“€Q/ßn½j–¨0j<—%âñ;oýÃÂt»AÝ/擆×?Ì@næGxCI0Žâ±c°lÄ äý†ˆ!@¾dR\ìèÖórò܆[pþ8b–7X{˜Ë`ërüÌD¼1ïqÜ6å^\Ò­T" øéI“° Ëväã'L¯y~—€ÿmÌÍèbø 9ó˜5°8t8ÏšF(éÃåxm”hLo—I„Qq¸¦à`1£03ñmÌ{\4 3¢PÆbDø¸Hǽ¾ ¹2…šlÍ?ºá½þÅå|Öo®8Š$G®Âø;ƒQãgâí7æáÎÛ¦`ø%Ý«ˆ¬Þ ‰€Ç=#îf¢g‹vˆâ¼û¡8ÞÿNÌ“—ýöÞí0PÔ`3–M@¯Öm8ÈÇ´¡£°þx Dtt°€Q3dX.*…1#úŠ„»DÕ•8]ƒ»bø¸$t@ Öi¤!Í…„Ûû¡]ï(‘¥Å4o‰ËcÇJ1†#¸E?C¤{Т}OÉu† ¸ wæhYÍÅá…Coá ¹&°ï]X!÷7¤+BGRá9ëP±Y9c«¥( žWÊF´=ƒÑûvr›íØóËy˜+L/A¦CŽAČ٫5z ‰@Ú´¡xö›BÃñ$~ ®;ËBiƘkä è{×ß1+*Cº Ï>…½DKiÅàOÜ÷©ÄOˆB»à~˜F¦Ü=ÜðÞå|öॕyórÕ€0:azTB¸3—筘…ÄqCÐ.t „ c€hXÕx ü’I êØÏê-t‰ÐÈ^½z}»aÉR»fÒ¤I¥®ùæ—æ;nTì´å*?ç@iN~ù5#šxŽØÕü—æçç—V½0?§R˜Ý¯¼ÅÏQ÷áÕÁ%Ȫg~¡‹¯ãÒ.n#ªçi#É•›£…ú… µj"ZmAmßÀAž¹ŸûP* 9R¸Pè¡]yÓi¿l¶„nÛvq¡ð¶Ê¼ 0'§4'§¢qaaiE.hËÜÅY(<¯Œ—º„Uà³Î° ~åL¯ŒÏVî’uÕ—ROòawåw‹KÕ9iÈi pï½÷”÷zŒGÊ…¨’ö—¬ÊxžG Kýež½Liî_^´ Ê’d``y¸Tªã  ²\+Å 2åAv¿òbøÃÜÒ}xyú“¹¬z’©QßFÀ?!nØS`Hˆ%¥ØÁñ¬9ÓžWUì |Öyƒ ~åL†ÏVn/_µn©gPPU%ª6¥Ö3MPOõÕÛ(Š€" (Š€ * ¸¢—Š€" (Š€¯! Â€¯=q­¯" (Š€"à‚€ .€è¥" (Š€"àkÔtž¯áRãú:tû÷ï·èÀÈÍÍÅÑ£GqäÈËþå—_`§¢"9>YŒ¿,Ò!È>b.p ‘C¤>ø÷ßï¯E@¨O>Œ}ûö•ñ¼œœœ <ÎÎïè.,,´V¬“מ׺uk´k×ÎâyË—/WžWŸ°Š{©0P0Æ›ûž={ðóÏ?#++«¬ã§muä;v©K—.ÖËݵkW´jÕªJ:qâJJJ,úõ×_-‚÷! 6  0·W[PzE€8yÞÞ½{­NŸ¼Ï x(Ê®†N:YÕl4¾" (§…€½Ã7¿áyÅrú ù5ä}çž{.®ºê*‹ïQ0|ëTnìŽçñj<øE® `ĈèÛ·/úôéƒ&Mêf Uö”nI”lí6Ý”h9ª7/ÿ•W^Yæf˜E@PÎÃó~ûÛߢ_¿~èÝ»·5(8Ó|Ý¥çt¤+Ÿ³ó>–Åð<ò½ /¼7Ýt“Õù·mÛÖ]–ê×Èh0aà駟ƧŸ~Š~øï½÷ž¥‚çH›£nJŸ;wFpp0Z´hQ¨^§Ê‰êuÎ_’®*¹ ¬øÌļ)‘^zé¥e÷¡ÚK" (u‰€áyxÿý÷- ¤çÑݾ}{kämø^Ë–-­éD;Ï#O#Ï3üÎÕf8×-ÙyÝœ~4~TÝ«Qì4˜0À˜ZÍñãÇËæäÍâªî¹øÄãP¢¥j'ÚT±·iÓÆ"Î]QÚæ5 㯣{û#W·" 4®<êx³‰< 7oÞl-Æ«ŽçQ@0¼‹Ž{ôèQ‰ç‘ÿ©QN\ ɹùž={Zä¦×Š€" 46¸Þˆ9I"ÐÐÔÍ$}C×Jï¯(Š€" (5F@…C¥E@PƉ€ ó¹j­E@P#Ð`k¸ÝoëÖ­5.¨¯Dä*_.‚T£( åyÕ?Oî€à¢qî¤ÐsWXÕgÐ`ÂÀ´iÓ°eËíø\ÚLJ~ˆ””ÅŽT¼åyÕ?Áµk×ZÀq%ÏzÑí@}ö & ”––">>ƒ ªþ ñ±ÐØØXë»>Vm­®"ÐèPžWý#&ïûýï¯}‚ ¦úìtÍ€ xu*Š€" (¾ˆ€ ¾øÔµÎŠ€" (Š€ l`¨SPE@ðETðŧ®uVE@Plx•0P²k%¦Î^‰"[P”ŽÙ³S*úÙÃOâÎHš¤Ì 9–§(ÈÆÎì‚òëª\E™˜¥;‘2{62Žì¼©ó°µ¤ªê¯(Š@à P”‘„ÙI™Uܼ@xØ|d¸e‰%ÈÞ¹5àk™+g#2& YÖ½2°kå<Ì^YÏ[É‹20?> 8¸øÍžºGªª}öNd»T°(s%F‡Ç"=[úšøq×U‘Ÿ7y{•0Pt0 3ãÒPhGØ¿+_˨èg?‰»x[*~ȪcYŠ¢-Ï£çÜÍe×U9 6¿¸Ž÷㎾]ÑÿÚáèˆ,¼4ó%tÛ ªÊEýE@¨Š·áµõ«¸Qv¼–ŒìbwÁ…x¹çÍøî¤Â@–ǽ†ñSG¢KÇ 1üÂŽ8˜ö⾩êžîîU ~ÅÙHNÊB€=«ÀŽ~Û¥¨ê;µ[ž¿s7Wì6¿=-Ÿœ€ºáÚá(q×Ùïá¥nr‘m}¥ÐÏo4V5 ¹ÀÜ\nyØè?ÎÅ¡°6â_„ÏÆ8â‡Ç UâSމŠhùÒáüõåòaAFŠåç9Z¤ÕíhÓJ’ç®Gld8ÂÃ…¢ã‘ž›‰9MfŽ•Ö/•¼%L(>)Ãö¸‹ðÞÂ8`Q>È<€ï—¯Àž’fh/4YŸ/”4~VÚù©;méÔ©(>€ŒTãcb15&RxD$âçÏvð&¿¬ÏtŠvb¡æ‡ðÑó±S:â̤xÄN%?ŠÆúŸe¤n¥qð&7iP ÷‰$ŠÄÄçV"¬S….)ñæ‡ÈÑ‘œÖÍäÖ®eµíygoÚ2\7ý”æ|Š5cžCfQV½¿ÅÜ¡oÌÛVØ¢1 ±·ë͘9# 3ž›*‚‹³0}q?ýžš€¾AG±2iŒb¤ÈMŸc“‰j»6už_ƒ:t²šýôÑ*Lzâ KØïD¥-‘¸§•ldž͘4nؽÝ0 ñ°-}-–ˆ1£Wˆo>"†<(š„cÀÀ+1¨‹$¨`›¼ìS8ÀJ»äAÄλM'¾9‘/ãŒàPF.A»Ð‹@1Â\ÞÃù†É4£ðŠ6í±}Ϥ§¯’Në1ŒN –îy»h-(Ñ"/A—À$&µÇS_ °à6j¬>â&M>¾z ëˆ!ƒ—öÓ³’¡`û& œ4ÆÑö&y"ŽWÁóȺÈ[V旎ܿ›UT>HÀ1¤¯uS{ÂÚt;±½¤—”º¨­°æ58X8Á¢]†„œ…;‡È/”:Ïg‹[Qùܬb·h)è'ÿÁ¶òír×çØÂ½Í鱚OøDÔ:4{·I—†爻}ÏŽHøÐ¡ªÏݼZ:\ K¯s±+¼$ÉÏ>…ˆn­ošvÔ }°iÙôÌÅgÓ–¡¹¼´›e ð‘7ššŒø±E[ Ož÷c`Á&ÄŽÞØ˜ŠäÄ·€C.yÚó·¹›‡vÇ@LBb²”iÉÜ9¤3äæjE@(C 8¢“5°±ú®´2oq´F¯sbì²D,ò£ãѹµ“XÆ•ÁÉŠµdf%øüi8ÔÜ]š¶è;$ ¦[L›?zMâ•3¢º -áX¡Âë^­i³#Uð¼CŽNÞ-¿´]ÜÇ]®9Å[e}*Å­b[Þ›‘šáßmhüAáŘæ†zÆ×f;û¡Pw}Ž-š·9=Vèƒ)ˇÁ/RÖ ô¼ϯ¹!Ñ®iŽî±˜’*aᑸUæwŒ¶á÷aÖ–á_æ‡B‡¢Í5—¡5ãGPÔ³›ˆ}k†‡ÊüXä­2&Ju;…@°Pñ‹Ä¿·¤!nî{(:«VÅ]„Å™Á1p&BE@‰Ÿ(ˆ‰x;½À–i í… ²æÛ‚ŧYÛK0wÖvt•yºH¿®XÑé2ô6ïŸ-µ:EÀG>Y”†–ê9€üj “_5F{áá÷ÍÂþ¨®ˆŒŽDèÐ/pÙÕ½eé”#Œ*ÆQ‰ÿÅ¡ØP„G^'€!ÝZºIs"bß’iJÆ‹ÄX™kS. øw¹oMYŽP?áoQdU@WvqÃóJÐeÈ2 yh1‚ÜðËrŽ()1]©ðF<¬2KÕÜÕÇŠ\?NlMÖäÉÔj·—‚0¬L âßÁ·ÛœÓqCÆ—¯p&v>Ñü"ÐÙ¹ës¼š½s.Š$†‚AK¡³„z ]"4²W¯^ßnذA¢Ô®™4iRéÉó-.Í9p 4GT6 Ë)-v È¿|WO—8¼,ÎÏ)Íq‰X(~ùÎ{:3).tÞ£°4'GV)X‰ KM°Ã£úßœÊ÷ª*EÍp©*µú×ø¨V’‰ Q¡B­„šHZ«-¨í8È3÷"ÿ¦®8LèB¡„><9oªÉ›V1Îé·má=nxsߺâùÒ×ÖìWaé²±(±ÆÉ£äºRšâüÒ†‡U,šu•/|ª"KtÇóŠK otË/Ýä[ÙËMÙ$ÒéãSùgâS|*Ì]nTÓ>çtÊT[˜Ü{ï½ÜÊ1F¨¯Pg!Ê þR¦2žçáÄ×3?B:t¨¢h c®h‚ÜøUŒá¸ò ±8€=,PüŒdè„Æ?Щ4 DHˆ3TüL<{úªÜ!åùVGýE@p€ðžî9NhÏöx³_WÌ’„í'½…·COã&ªcA§*wý¤xKŲÔyR®Aβ}äôÛ-×,?Ëô§Ú;ýfKZ –Ð#¶EàŒÈÉÉÁ3Ï{±P²e;8äZ ™™ ù0žU’`„ sfÀÉàááy;vìÀ“O>y²¨Þ`ÂÀ´iÓ°eËíø\^?ü)))Š‹ .z©œ!œ½ÁIy"ðìƒÅBg4U#éÕœ!Û¶mÃâÅ‹ñý÷ßãí·ß¶r»öÚkÏ0×úM>hÐ ë½ú½kíÞ­Á„‘Ì‚¨¦ØØXëHÎruÕ&DFFÚÅÝ"´Lè-!·F:)`í±{³¼·T;»5÷w@¢>“«òŸ–øÅ®d$n¸xr?>·îq”úœÄÝ(v%#qùYñ©BfŸþ»÷ÝJZæ ȸ[ÉÕVbðù“~z]ˆ‡6UµèR‚ÔÔ{÷îÅäÉ“­¹ö'žx¢.n¡yÖjX>¦Ô*ï¾û.²²²ÚI¦Ž‰H`ˆ¸Ý Ò©RÅü´½â—$ñ»ŸÍýœ¸»Ø®÷ ¶k»óq¹°oDæ^þ{íln ±¶ëaâv+ h™m(9œçVò©èÁðiBì‰Ö™ÓÅ©¦.عs'Ö¯_ßýîwÖÖÀÿüç?hÖ¬Y]ܪÎóäàbܸqÖ!CÞºVÀ€¤Â€ABmŸ@€ |f̘qhÏž=Üb·_(¥ªŠ³Ó—ΕšíšªfÑf”Ñ 8tž ©l¨aÈj.Äé¿„ª2Ìç!£XVUD-s%d~Ÿ³+ùÊ.Hñ³¯Hc¼¯„ø^üFHM-#››kuš6l@\\œ•{»v”˽×üóŸÿ´v8x» À' Â€÷¾‡ZòÓ@€ÌçÜsÏ=(ÂÀK’œ#ÁÃÕe#ë³Õ…ÛÃ$îûrM:©‘¸ìtþxÒˆAâæˆ5¥&qGË\©ü Wå8…ó¦“v‰ÍéƒP!5µˆ@QQA­GsZ€×Þn¨Ý)Gkû£·×…å÷ªsJv­ÄÔÙ+Ërg ŠÒ1{vJE?ú×Ðd$ÍGRf ‹ ²±3»ìë¯UçX”‰ÙÑÑXš±)³g#ãÈ.Ì›:[Oºë»ê,5DPê¶Ê÷„¸Ã «5?iBjj®xúé§ñÜ-“OsÞwŸµ6 1¬OÏž=­EƒÞ:ÅÁ:ØW EÓ03. …öøcåkýìá'qoKÅYr,KQ´åyôœËãã«7›ßF\ÇûqGß®èípùÞk^šùV!cTŸ›†*Š@ ÀÿOB]Esr³Ð;â.®ƒûh–‚À¼yó0~üxœ}öÙ·0ñ„¯ ÖæÃ¡–±±ÄŃ…\¤ÄGó@t¡ÑX¹SzÖN¯6—ƒÕËÃFÿq.…qÁp>_㈃T‰_”‘„˜Ø©ˆ–<æ¯/ád¤X~~‘£1{åv´i%És×#62Üzqã㑞›‰9ɺ¢™ceÄ_€õKc%o ŠOÊÆá½…2ÿµ(dÀ÷ËW`OI3´—?š¬ÏJÖ!óSwšDj+Š@ý $·,¸Ð\¡õs[ß»Ëþý\‚ã0;wÆë¯¿nÔ•Ýÿð IDAT¤‰w3¦À§`çååaâÄ‰à‰ƒÉxìSÊýú9D­ŠF¡lAÌO»Ão~¦;Ïû|¢ÖE#_¦_×iÛ¡$}†.ŒÆOìa?÷h–ôÑ»ñèÞ|<28Èùܲ‘Ð/ Ñiù(ý`:ÎZ•fM1ìÉ@»ßÀÆ1+, É›ÚaÂÌYˆ˜ñîé lËìŒ´ÂØ¸7I·§ˆ8bL †ßÏxOáæ^AØ‘ô%òÌx£h=F ]Eù¥(Í©Ã&b½j pj+uŽ€tþ¯ m¨óùð öíÛ‡9sæ”}<ˆPÜqÇù¡ÚxLóçÏ·¶ÄwèPö)ÚȶÁóðXaà§VaÒ#¬MØAý.ATZFY¼cÃfLw=ؽ÷ºa"ÄÞ–¾VfþÆaÌèhŒžŒˆ! ¯Ä .Fë‚mX%k±® ~½p׌(cçݲ ßÈÈhÄ%¤YÚ¦·¼” ]¨Hƒ¿‰Dô¨(¤E´©°ò²<žDu(˜Dz2ä^Ë0EÊ=~ò#Â`+†þ(Š€"à½lß¾111`ÇøÂ /xoEjXrž4ÈOß{ï½5Lá=Ñwójépesw/Ù.XŽ4KӋϦ-Cséô7Ë4@á#o 55ñcж@6Zð~ ,Ø„ØqÀS‘œøpÈ%O[övgóÐîòúIHL–2-Y€;‡t–ã5í1Ô­(Š€w!pàÀ¬ZE®+C%9àµ×^Ãþð‡F« °?ÖwáÂ…j­€©ŸÇ ]"b0eù0øÉHݯçíx~ÍÝáškš£{D,¦¤JXx$n+óúaÁh~fm.ñ#á:m®¹ ­?‚ë ì¦bßá¡~¢¸2Û6þè> ÃBÅ/ÿÞ’†¸¹ï¡è¬nXwgcÄÀ™%r|¢h &âít3iÁ¼\v‹ K—,>ÍÚ^‚¹³¶£«_$"ýºbE§ËÐÛûwÔ”ÕTŠ€"à;€zðÁË:þ®]»‚ßSñsþùçÃ?O\“çã¹ç õÅÓ‹19[f烒bu¢ãPêHaêR¦²<µ3~H‚¬šÅ 4µ2 }o{Åù“e BBO£PüŠ$­Ü«¨¨DöÂú£´ø”øÂc!&çKÖ2½P"‹­ GÞAƒAò`‡û‘Ô%–cY©ó\˜Ç“QøP. ým÷ª\$õQEÀ#8qâ„õÙà_|Ñêø©  ²M½zd©k·Pü°¿JÈ)‘é_£ñ\aÀBÛ!U.Ò`Xå‡Bá &Æ?(®1ÅÏ Ü)8Š ‚€å”—À*‰W“{ÊËs*ñk’§ÆQE .8tè50|øpôéÓÇ:v·E‹uyKÍ;!!Ü!ÑXï±ÓûVhÁE@häp|™™™!ðñ4˜0@I”¤FPE îàH711ï½÷žxâ ë†çw^Ýߨ ï––×MøŠi0aÀWÖz*Š€"ÐÈ·¬¸q€ _zé%ëøà†,“§ß›GÏœ9Í›»Zçé%?ýò©0púØiJE@P<®ÉzóÍ7ñÛßþ:u¤I“íéyµýîºë®ÚÎÒãóÓs<þiE@85/^l}L‡ÛâÌ×õë1º§†Lõ±?.ß§IÅÑ£G«ØCU3ЪVIP|cÇŽYjmjø1!n¤F@MÍøÛßþf OüF¯Õ øÚ×ú*Š@£B€ —,Y‚'Ÿ|ÒªW«V­ðøã« pŠO™§ r«{c?i°*XL3@éU÷ÔW~,Üj©[ +ã¢>Š€"PüÑêø‡ ‚É“'[üüü*GTŸjà"KNL›6M>Pç›_’i0a€ oÙ²E;>—WôÃ?DJJŠââ‚‹^*Š€jöìÙc}<ˆŸ^°`ø)a5§¨‰'ž~ eƒ ”Äâãã1hРFcíU!66Ö:™±örÔœE 1 ÀÅmï¼ó޵C`êÔ©V•.¾øâÆPµ­^âÀ”djìߨèª+”†)Š€" TD€k¸€ŸÓ=ûì³+êÕi#0gδk×}ûö=í<CBÃSÔ:(Š@£C€š€eË–aĈhÙ²%¨5Ôݵû˜¿ÿþ{¬[·ÎZ€Y»9{_nº›Àûž™–XP9ü@ÎÝwßM›6¡E‹VmU¨Ý‡Î©ê¥K—Z /}uÑ Q¯Jv­ÄÔÙ+Qd¯AQº|m+¥¢Ÿ=ü$ùHʬcyŠ‚lìÌ.(¿®ÊU”‰ÙÑÑXš±)rägÆ‘]˜7u¶–T•@ýE@¨ˆç®i~þùgë\|ª¯Ÿzê)ë(áŠ1õª6à¢Á¿þõ¯¸ôÒKk#;¯Ïë„¢ƒi˜—†B;ìþÅXùZFE?{øIÜÅÛRñCV…ËRmy=çn.»®ÊQ°ùmÄu¼wôíŠþ×GGdᥙ/á`2FUù¨¿" øÅÅÅx÷ÝwË>!Ìg̘a-hó=4ê¯Æùùùøõ×_ëï†~'r‘mIÅ~~£±r§ô¬ühDs Â/ÈH±üü"GcöÊíhÓJ’ç®Gld8ÂÃ…¢ã‘ž›‰9MfŽ•Ö/•¼%L(>)ÃöX‹ðÞÂ8`Q>È<€ï—¯Àž’fh/4YŸ/”4~VÚù©;méÔ©(¾ŽÏ ¸çž{ðí·ßâøƒ‡¿¿.åªë÷bÖ¬YÖA“&ÜÖ5.ù{,¹_?‡¨UÑ(”yü´+1üæW`ºó¼Ïç j]4ò%lúu-‘¶ýJÒaè‚ÁÈaüÄþ&ñsfI½îÍÇ#ƒƒœUÏFB¿(D§å£ôƒé8kUš5ÅP°'í|7nĬ°$$oj‡ 3g!bÆs¸G™nËìŒ´ÂØ¸7I·§ˆ8bL †ßÏxOáæ^AØ‘ô%òŠaEë1jè ,Ê/EiþËH6ëU[`€S[ðI8••eÕçPUMêܹ³OâQß•æ ×®]‹ßÿþ÷õ}k¾ŸÇ ?}´ “žžÔïD¥e”uÀ;6lƤq׃Ý{¯F!Bìmék´q3:£g'#bˆ„HÀÀ+1¨‹äº`Va ® ~½p׌(cçݲ ßÈÈhÄ%¤YÚ¦G3¡´ ÍÃÄßD"zTÒ"ÚÀ.»—Ç“¨…âXV†Ük¦H™¢ÇÏ@~DŒ `ÅÐE@ð(,_¾ÜÒdgg[Õ6lÎ=÷\_ ÁëÉEƒÏ>û,Æ_¶0³Á å!ðXa »¨ë>IwÀ´w›t©aqv¤í{vD‡U}îæÕÒá]zIƒ»ÉK’‘üìSˆèÖÚÑñ¦«uP'ôÁr¤Ym1ŸM[†æÒéo–i€ÂGÞ#)“?v h ¤»çýX° ±ã€76¦"9ñ-àKžïPvÕ<´;b“¥LKàÎ!` eQÔ¡(>‚À£>ŠÏ>û Ó§O·¦#}¤ÚUM.|ñÅeÐéQåò„Âx¬0Ð%"S–ƒŸŒÔýzÞŽç×Ü®¸¦9ºGÄbJª„…GâÖ±2¯Œ¶á÷aÖ–á?~¡CÑæšËКñ#¸ÎÀnz ö­ê'/Ä­Ù~´ ðG§ðHj½$ÿÞ’†¸¹ï¡è¬nXwgcÄÀ™%r|¢h &âít3iÁ¼\v‹ K—,>ÍÚ^‚¹³¶£«_$"ýºbE§ËЛª5Š€"Ðè &`åÊ•eõœ0a‚µH°_¿~e~êP<»¶ÛSÊä(GP_<½±“³ev>(!V':¥Tˆq„ ¨CH™ÊþñÔR<Ìø!!²jƒÒTG|ûoßÛžFqþdYƒ„GD`ÀÓ(¿âI+÷***‘Vø£´ø”øÂc!&çKÖ2½P"‹­ G®AƒAò`‡û‘Ô%–cYé2‡ÇãÉ(|(…þ¶{9BôWP)üÆÈ«¯¾Š.]ºàÆo´j© k؇ýüÃ:ÁñþûïoØ‚xèÝ=W°óGˆl³qoR)ˆÂAMŒP\cŠŸ¸S° Ë(‚€3TüL¼šÜ+P„“S‰_“<5Ž" x&ü+5ÿïÿý? 0À3 éc¥úᇬ)~êY{<\p_hõUEÀSࢴO?ýÛ¶mÃØ±c-mÀܹs=¥x>_>>‡~X Vó6¨0P 8¤(Š@uüôÓOøË_þ‚¶mÛâ±Ç³¢ò;j<£GZ[7y˜“šªPa jl4DPJp¤™——'Ó†!Ö±Á'NÄE]T)žzxüÒ#IMõ4˜0À•¶GŽÁwß}W} },”ójEÀ3àÖÀÅ‹#..În»í6Ï,¨–ÊB€"jÖ¬ô9ü…h0a`äÈ‘xå•Wкuë“—Ò‡bôéÓºê؇¸VÕkø¿ÿû?pùç¾}ûzM¹}µ xçw¬]¾ŠÁ©Ô»Á„믿$5Š€" x*ß|óMÙWíøíðÔ'U±\fÑ`LL t GElªºj0a ª©¿" ( §/Ÿ{î9´iÓ¦LPA ¡ŸJÍïÏãžyäôïß¿æ‰|<¦ >þhõE ­—-[†É“'ãòË/¯¨ž@hh(HjjŽ€ 5ÇJc*Š@ãE \ªÖ[ˆD)úóŸÿŒAƒ5ÞÚ6âšñÀ§¦M›âºë®kĵ¬ýªyì· j¿ªš£" (•è)>ºGè!š‡¥¿Þ†À?þˆ^xA5:§ñàT3p iE@ðnäëu-¤EBÄÞÚ,ÔVHuË‚·ž4ÈEƒz®À©?ÁxƀüÀ¸ÕR·VÆE}Ú@@„ž4FhŽÐ.¡—„(PPãÅlß¾wÜq‡~žø4Ÿaƒ Ó¦MÖ-[´ãsypüÚYJJŠââ‚‹^*gŠ€ÿ<Ú-–­g;åÚïLóÔôžƒ@XXHjN¸4>>^é¸<·ØØXëdFo½TÓ@@úû¾Âk2œ²d‘*×¥§‘•&ñ`xe»K.¹ÄƒKéÙEÓ„žý|´tŠ€"pHÇ0PˆŸ´>^O@̧ü9ì4‰#@ ó3Ï<ƒóÏ?߃KéùEk0Í€çC£%ToD@„® ø“ЫByc´Ì5G€‹ùéh]4XsÌÜÅTaÀ*ê§(^…€È<€ï—¯Àž’fh/4YŸ/”4~VÚù©;méÔ©(§Š€ç Í”t!δψ°\èÄ©æ¥ñ½žQ‡Î;{o%<¬ä+ ä~ý¢VE£Pÿæ§]‰á7¿Óç}>Q뢑/aÓ¯k‰´íÇP’¾C Fã'öÇ0‰Ÿ{4KúèÝxto>ä„> ý¢–Ò¦ã¬UiÖCÁž ´{ð lܸ³Â’¼©&Ìœ…ˆÏáùtù¶ÌÎH+܈{ã‘t{Šˆ#ÆbøýŒ÷nî„I_"¯ØV´£†®À¢üR”濌Ôa±^µ8µ# @S¡§%A¼ÐWÒùg3±Øº.€@ø˜yöÙg­Eƒ<¤MMí `Tmµ“[-æòÓG«0é‰7(yö»QiK¤îiÝadž͘4nؽÝ0 ñ°-}-–ˆ1£Wˆo>"†<(š„cÀÀ+1¨‹$¨`Va X©q׌(|ÄλM'¾9‘/ãŒà4“À´ ÍÃÄßD"¸ý*¤E<ï “ 1þüe<1…€å<–•!÷Z†)££,·ËCïÅJ©Q“" @Wéð÷JDêレ&׺ç¤È5Þk×®Åyç§‹kù{¬f »¨ë>IwTwï6éRÃâq·ïÙ :Tõ¹›WK‡ téu.0v’—$#ùÙ§Ñ­µ£ãMÀn‚:¡–#ÍWäâ³iËÐ\:óÍ2 PøÈHMMFüØ¢-Q€÷c`Á&ÄŽÞØ˜ŠäÄ·€C.yÚó·¹›‡vÇ@LBb²”iÉÜ9¤3,ÁÁIŠ€"P z Q ð0EE`i² • ò9,4qâDŸ«w]WØc….1˜²|ü"eÝ@ÏÛñüš»Â5×4G÷ˆXLI•°ðHÜ:VæõÂÑ6ü>ÌÚ2\âGÂ/t(Ú\sZ3~רMľ5ÃCýä ë[!³ýhàNá#0,Ô:×úß[Ò7÷=Õ «â.ÂâÌ`Œ8¡" DŽO ÄD¼n&-˜w ‚Ëndé‚ŧYÛK0wÖvtõ‹D¤_W¬ètz«V  )u(î!à2ñç ©Q,²³³ARSû84ᵟï™çÔOo,Æäl™JFˆÕ‰ŽC)ÕbaêR¦²<µ3~H‚¬šÅ 4ÕßþÛ÷¶§Qœ?YÖ !Äð4 ů8@ÒÊ½ŠŠJèÒâ[Pâÿ…˜œ[,Y‹¾¿D'ÚtýAƒAò`ÇI]b9–•.sx<žŒÂ‡rQèo»—½0êV.üí)0œ%#ÿoÅ&·¿[ÜÇÅV£Xdffâ±ÇÃ’%«°Ô.ž+ XõôGH‡UÔ˜afAqy 51þA!eË‘Mü@ñ3w –¡ `9Ep†ŠŸ‰gÒVgŠpr*ñ«ËKÃÆ„€¤>c… MfÝDØJ["`G€' >ôÐCÐEƒvTjÏí±ÓµWEÍIP< üœezLì…¨ Ðs<íAyHy>ûì3ã·¿ý­‡”¨ñÃÃ5p­‘"àˈ ÐMêÿ{¡g…xÚ×TÔT‹ÀÕW_ ’šºC@…ºÃVsV'"4'×ë^*ô¦8% ë„š*()qì$õ÷×îªJj! ÁÐ=qâŽ9‚ï¾ã‚a5ž¬¥Fh,ˆÐN:ü©×ìškÆRG­GÝ!°mÛ6<úè£xõÕWd;/¦îné³97˜00räH¼òÊ+ºÄåÕëÓ§z÷îíâ«—Š€w! B@g)±Ý%§‡âǃÅV£Ô.|ðÁU¨1b§±Á„믿$5Š€"иAàJ©w¼+ôÖNRÚjš"ðñÇ£¸¸X Ö°3Œ×`ÂÀ–[“+Š€! @G)Néóû¨Ð½â>âAEÔ¢x\0xíµ×ò /+¹wW·zçsÓR+€0êöB’Â,² !`½ ñx¼ºÍš5SA Ÿ  õ¶ÞJh„<#uÊ%ÀöFX?­R=#°{÷n<ðÀÖóz¾µOßN§ |úñkåSC@´gIŠ»¤ãΙ2Vµ§†¡Æ®9sæ ::Z—WS­‡ªf Ö!Õ Ƈ€M…þOjöo¡²Ïvª ÐøžuCÖˆ‹;î6SS¿¨f ~ñÖ»)^…€-¥Ãç‚À>B<ýe´\öªJha½y¯À­ÕóçÏ×µ ðÄThÐõ–Š€§# B¿øu·yÄ|¡-¬3ÄV£Ô òΡgÏžu’·fzrtšàäi EÀ§¦|•Tø!ò‡YyNÐV£ÔûöíÃO<_~ù¥.²×ò µš¾€<'`Œ ðš×XFƒ„Úõ@NNþõ¯¡°°°¾o­÷sƒ€ n@Q/E ± @3g].›§ƈð|c©ŸÖÃ{ˆGçÎÑ¢E ï­D#*¹N4¢‡©UQ "pÀ­BܰXh£߈­FhpRSS­oÜ|óÍ ^-€ª4úíq}C/E@+¥èK…º ½Ãjˆ Pv„0¯ÕTB@y^%HêÆƒ‹óòò0sæL4iRUT7÷Ö\«FÀ®`c°Si©; ñnìïº×¿ç"P×(~®Ø„þ(nž ¦ ŸRÁÍþ0¦×¿ UT×c¼¹hð–[nñ˜òøPAÌ»ý«Ôٸ˪_±¬R¢²ÔêPE@:³@!LM€µ>@ú¸wUhÐÇ¢7¯‚‚,[¶ ǯ"†z7®Â€½ã§»TT:”žª|z_E ÖwšGëzýK-í’uàÁÞBEØ/¶šSCÀÎó˜’£¦Ã?ÿü³¿|j8Ö(öôéÓñ믿¢Y3³®µFÉ4Ò" ˜Ÿ”ç¹ æ–– ¥ÜöÃ?¸6OmEÀ« ðã?’ípÜ«Þméÿ› Ýà,;… ñB»œ~j†ç1uÆ;ï¼Ã/5ª©EV¯^Ç#**ªsÕ¬N†€ð¤¥¥ñýÞi‹[‰ï¹ Œ@ÉØÐ‰#GŽìùæ›oôë6Õé½dffþ*ªJÎ¥sAiÆöØŠ‰ÐDè6)àR¡^,¨4ò_U gdøì ßã艴ï»ï¾Ó—gkÅÄ%%%Ø´ižzê)]4Xš:¿Ú½{7Ž;ÆƒÅøN³o§©Äó\…F2‚¿]NJ{÷Ýw³¿ýö[†©Q¼jî¼ó΃òe´•R‰b!ó®WjžRI β\-ö¡ÇDXà)åk$å0ïù…ì;vl’qx­¦ð÷÷Ç„ÿÏÞuVUdíïåå¥wÒC ¡…z/‚bïí·ïêªk×µ—µ®ˆ ;*Š; R*½’Þëkÿwn˜xó5…î$ófæÌÜ)gfΜ9Óî¸11rÀÅP͉[n¹¥ŒíùG¦)5T[—,Ô¡{ŠÐÈ,C<$ 2¥#Á,gDßÝwß}%ÅÅÅtÊÀÀɉ‰'Vpv’ÍÜÿI-m]Ú¸jóu:á'T‘ °P_ÄL(™êŸì¢OR§œÐŒµ¾ÄUý‹)Œ€L+—Gg¼üòË\"m}%næUVVâÏ?ÿ„Õ*É¡š_~ù¥cñâÅe”Ì,eºÒ¾Iój™]‘”¤cˆha+Åf‹† RÍe]PÃj`àäÀgy•|&u;ų̱´kÑÒ9¤½‹n1ŠLÀfF–äÖÀ…’12FÇD4FPèh±*©óvïÞýiŸ>}ì[·n¥ÓPNjǩ©©°X,Ç…ñÝq``úôhóÌš IDATéŽÇ{,•×=?ÀÏeW4Oѽ:±º2Š0J‡¥SÈ~r®³Îcç˜{å•W–îß¿Ÿ Chù¥O>ù¤œb[^^žˆ×eP•ËÐ¥}×rÉlO¨d€ €;µº—µ+óö(³ô8u!í†j: H½«“¢yÒ>„îíä¬öÃK/½´€“¡¦ËA+Ž™³RÈ]$B.C5¾ýö[ûwÞ¹7%%å ¦)4DÆriß2¶«q¾Íse\;†pÒ1„€–’ÃXûì"vŠ¿ > §,‘—Ž¡ç”ët ú5›" ÉCî" ð„É|H½Cì†jr (š' Jir’@ډ譛6mšÆKr2ycžÕxT‡9J%Ë/@FÜØ4x”8kh0‰Åõ×__Aš·•Ò˜w_µš)š'“ µ5@¬š2‘è({ €k•´ˆö¢ö§ nC|À ¡1Ž„6öÉ'ŸôŠ'ÈPZ„`O:µúùçŸÏc‡˜Í\­¦Î; óiQ—P Ñ—bc?hvæ–L€ þŸRï¡þˆyØFÓPÍŒaȘ¤Ô…'µ<ñ,4Oèœh¡}b†ŒìÕ«W÷W^yÅ·ÿþÊÀ@ËÀ€œÖ˜9s¦, r´€ŒØ2æLhžœ"[IE:PL- ®&! ½¸VÕÇ HÇf@:‡ˆ-¥sRQK§Sss‡h2䚸SÔ#..Ž^†20pb0 L7ÌØ¸Q°„›^·rË|æDÖ´¤3¨!¦pÊÒ)DB ‰ÍØ1êrÅôh u`àéÏä–Ó.}+–ö-M‘–çÑa€õ R¹š]˜™ùRk4ŽfšGwBllìÈAƒ…>øàƒÞýúõ#ÈP®å9YN–W ÷\±ÓxnÁó¬Y³œ&L(%’-“Ÿtj=½»L~„扤_$2ªCóêcä"ÅHç†@$¢U†@¸g‘)èÞ®]»¾<¶åíµ×ztîÜ™`Ch ÈšäŒ3lœ±•’ ØÆý-¿3åLj‘(-œ±Ø# ÑrV¿Y¤tÎdz×SÿÆ4E„g¨€Ö‹Ð<Å3 Z5Wš'ôOÑÂŽd  6¬ 'BÞdŒAÈQêÀÀÁý d˜ˆ™ø,X°@1{³²²ä´Àj™ýëižÐ=¡y"F@Ѽ:RÂq3 kÄfÒ9Ôrâ–Ç,B1ÒiDSжmÛî=zô¸é¦›¼O?ýt“ñV51c¨&Á/Ò倊_~ù¥‚±HV1¡,jiüªSG,vÅ+1YíBW™a]q¼9‡‘žF=…émlôŒ„ÖÐ;EóÔ$HIF…Ö ÍSÌ€ÐAa ÄL$ÍëMvã7zóv=sXXÁ§®Z²d >úè#|ðÁG‰ Õxàí©˜6mšõ믿.'ÍÛ““ó'cO£š'4N½)ôN1"I¨½>šW/3ÀÀ`çZÔwaätÕç,Bì ËÑ:îòË/÷7nœEÄirñ„¡ 4;wîÄüùóíŸ}ö™\¤‘»oß¾¿ßvjð¥á«A_LŨ!B:C“3—1LKÄq 饙K·¡Z(êaS ~Eë„9ÐÓ2gÌpG¥Øæ’Ýfš‘ü Žö•Gõ¡è¤ÄÀš§˜¡yB§”)4Lh–˜B·ÄO1z§7…Ö‰[Oóí cZ¡¤y1>>>a”œzr9ÁLš'S³,§Êo-m¿•l¼îºëððãwïÞ,Ú©«ÊËËÁgÒ5½aÃ+—;«yþßÁÉNiaaaib±#4Ofþ®4OèŸÐ3e*ú&¦0 ®hžÀ¦1µ‰Í£’0\­:ff@¾dƒ•Ž¡:‡˜®LêÒȥѫ¡:¸.Z` ®Â«Î!ñ(D»ÜiLN:BÄld|ÈM›x¯…¦…—™¸Y¢==%JC55Ôå"òf6w¹bûöíVnx©¦ØËQTTd%÷›Oq6E`Òøe# üÒˆ¥ÑJC–\u »2S^oŠ]}§˜Õ)šŠ Æ4o ^Eà]š†:E0 £yŠîÉ„Hh“Ð*=c h˜¢{z'DIüýSn £hž>>_ÂC¨ƒ(%ãÉ„0ÕóíСƒ™w./x9pã}Íã^,m~Åͼp88•Ž‘Ë¾&¡wB÷8Ù±“æU Í£tÓF\ñúóÒ¿lÖ†l"º'¸Ð'¡Uzš'4P´¢mŠ·‚)»ŠCO7…ŽJ¼ÇÍð[M3Pûq]¦@ÀŠ)P¦tièúÆ®Üõ™úÎ!þê{Å(SÅ/G:K ˆÙ¸ÿ „ R˜_ÚÝÈI»‘Qpo×®…’5ÈHhÚ8æH,…’ 5øEùàÅš)".Îø­äxí\ã´‚¡˜œoפñË1?1ec‹4Tœ¥‹]´²‹©ìªÁKGQpIx1®Üêé—øÅÞ$Lãø"gQOayÿ˜¡N= ¸0Š1p¥Kzz'4JOë”[e×ûëižø+FCÑ<1…Æ3/þBóÈ$ˆÝ’ i‰#÷öíÛËæ7¡wŠîJƒ5ñÓ Å¼ÍãÀoçŒßÊsþ¶½{÷:)ݬâD§„áò…î119Ê,Ùß$´HÑ&¡_B£D+Ú'vEãê3Å_Ñ<å¯CâQôNLÙpÌ’~SG5ˆÐÇÄÆ¨ö¨¢8gÕˆ¥aKCW \ßaôv}»«ÖÇ!v¿2Uº²4HíËߟ»y(z“‹‘îŽ n” ˜ØaÌ¢yÊÁ{L„ƒ&^Ó­u¯‚ˆöDŒO¶ŽÎÌÌ´‰æî};¹^‡pÀät«¨Ë9»/aÃ/¤ÈKyðEK'Ð7Ni´Ò@&ZÜ®¦4t £ºø LÜ*¬jü“°*ñ·JCé šæ@}Ä2 {TŠmz0V1Ê5´Ër@êQ}h:%0p€æIY…æˆÚ'4I´¸…v‰]蛸ՠ/´JM|}S~⻄Q0eWqŠ[´„˜JO–'dÿ•?óæGZ@F!€%9öèMZæFZg¢ÕLA£y2iz'tOhžØ¹¡›ÁN½ôÒKÚ}|§æè>8¡Dz¡èžöq¢#“gõv¾e"³{ìå~rNrJx¤¯˜·šÊ ¯§{Š. ýš¤è’žN)&~^¹ÓøÆÕ_ÁýSi‰[”Fû˜ÏF¡yÆ ÔäM›AI‡P €¥ÑJƒU Xuq+»˜ªã¨Î¡‡I§PnN¹ÅTZÅ©:ˆÀÅ®Ò×Û¥ãˆN[ßcçñ¡˜ýÅ×—ËÞÇyÇždÌ™ÈuK'1±ÃÃàÆãBfjéHf///ðˆ)Ë®Zà"‰;ºåF.1•vu‹Ø]´4\¥]Ýr¥ˆæôš4d€W&Çl¼³z;M§¸ÉÅ:Ù®\«—pN–YùJ6|èËé_BnWDQ²9EÖ¨¤ñ‹©ºx¥ÑŠ]ß8Uñ“ƪ|}nIxFßè&ñºšFà·J»ÑÆ-R€Þ4n¥–öóÛpþ†20P/Ø^ÍS¦žÎ(º§n1¦è˜r s àÊϕbÔwb*ú&íU¥'¦>’7‘FÍ-é ƒàC†Á4ʇ4Jh¡'‹ãΉHóL²ô@º'tÎ$´N螘Be?ÁáÑG…„WtOÑCq+:§LWz'nWú¦w‹]”+ÍStNL¡ƒ¤aÚ&ôN4}‡hÒ=æq0×h£²²? Í«à·å„—Ò:§èžØE+§è˜J+º§hž˜Š†Õgê露+¨ÂKÜŠV*SüÍ¡wâf‡`\µªÑ™Ú˜iÑui”ª£¨Fª­ø©F,¦«]Á\M}gpõsS¥¥ÒeW¦Ê£¸%¯â%qK”ô¤)Ž^ƒ±yRüæIî[”;·…0w6~Ñò<­¦ùħÅÉzÔpqÀ$¸7Z- m¡Ö:úi\Ÿ¸EÑqhá\mì,¢¬ÔÇm62šb×s®viªa«¦5²p±+­Â‰[5N1\5\e*?åÖêò‚K8¥%n=\ŭσ²kø`x¿ñ;ãÜ¿Dc£ÿM܆20p´`ÛQtN™ªß‹)´EÑ¡+StLÑ0ñW°úLÎÕO¾sSŸž¤%þж)?•Oq+?Z5ÆAÒ:WG³ˆÒ»þõ­ŠO²ØE‹]ï/nWS”r+»l„ÕXôQI#¥üÇbWK¹Å­àªÑ‰[ï§ü¥q+?Õø%œ.þJ«¸ësë¿Ó§«ì*}q‹%㿲×@ñ—mPÖRÇSË:ë”FŒÚˆÊÀ€Öx‰†ÚöëÂHR4D™Šö(º£hŽ+ÒÓ2øå{ £à®áU<Ê_âWvùVÙ­SéëM•G1UzbŠR~5®·‚+XCMÁ£Â¥2…fˆS`zSOO„‰¿˜¢ÄTþbê镸­Sf}0ý7Ê®âUnýwSy¸²‹)Z`šÒ• Ô,f³IŽTæ@‚«F§¤jpâ–Æ­ÜÊ®¼«©¾Wpý÷ &¦Äçjª4T‡ #~õi‚]Iã¥oDúF¥àÊtm|âV01UCUvå¯Üâ/J:‡Ä©oìz?õÀ”]…wÍ‹ø LiZ›vð—D±­Å²Ã¥ÑìLg õBº%†20Ðlpa„vˆÒÓ)z%¦rËà-Jè•¢aê;ñSᔟ¢k‡úN«°bWß«8•¿2G0LõŽaiÔNšÄ.ášB)Z¡LICOGô4§>»‚©o„NI\zzåj×û­Ÿk:Ê-q‰]”2›uö_“tý¿-†pÍžŽ9/i”¢¤‘)­ïúF«¬ §:‚2UXeêë8¦ìÊÔ‡“¸DéýTzÓ+»ªú`®aôniDJéíw}Z›‚«F/áUƒVv1%¬ÀEéMõÄ#aôZ`*.×tôiëíN”¾¹`¶©^LûÔ˜ö‡’Ch)Ð1’%EOÄ®§3Ê.¦ÒFÑ7E›”[1*¬Þ”4”[¥'newKüºQ_Hý"µôc}x:k•Ä¡”Þ®`‡3Їq…)º"aÄO¹õv)¸2Å_OãÄ­`ê[W«©ÂëãVa­–¶˜*3ðK¦\•j(®ðî&±¤*¥Ù]Õ`%Œ4HQSv1gWßK˜CÙéU§±×ŸJSL½Rq Loׇ9{mƒ:ð‘¸EéM}תü^•)pÕø¦àÊ.þ ¦Âª¸ô~FÁi­koî_2 Wl;—Ñ-DìcæežÞϰh 8ÐG¤Õª ‚êŠÆ(zRŸ©è™2UåV¼ÀLìz¸þÉ‹ '›§Ï¥þ€:›Z…£U³‹)Jà¢ôþ5cÿÕÓùZáBŤü\ÜzZTŸÛ&áÕ÷Ê®âÕ‡u #y˜„QJ…iѿʬÞl±’}&d?Ða$˜kã“F,JW°úL}8eW¦ /ñ‰]ÁÅ­·«pk¥£¾AJº¯m˜ìú®ìVÙU\z˜ÞOWö:æ‰ô%3J±]t§½‚yÚE{í[i×ãD5L'\hžä]ÑE‹”[Oô~Ê®h™*¿Þ-aôîvtËþš-ÔJ©t3¡àMe =¥è’Þ­àõÑ1Õï•)aÅ®Ü*>Wne \o¯u·$š'™:^Õ*˜C^×a$ˆj´ÊT0å®ÏÔÃŽÅ^_–Ô÷õù Lâá”ò×7n ¯àb?åV¦ /þSpåÖ›š½¥7~Ö{fô&jÙp;ó+×ÊÀÀ)ÝÓÓe×›Ê.xQLƒØ®ü\áÊ¿>¸ø¹*+ühÝzzTß7Š~©pzSÙUù^Ù•ß¡L [ǯ¥Ó=ÉpCT«fŽ1ºŽ#Áõ WoWQ)˜«©ü•©ü•[Ìú`zÿ£µ«ªÂ»º]ázÿCÙåͯ54xÖéÇ,Ï4ê9,Z¡ÓP ttÏ•.Ê-›mK©3äsêú”®·×öhazš¥ÿæHpå¯Lõ­Þ]ko tOðxÍSž8Äé:’ú¼±¾Š¯!fm—HN…FÎúBu1Ë:^ÊL·Ù`†20Ðp °? d,wPÿƒZÏ\t¯áèm11´Ø „-Cõd¤ž¶Î\Ï'¨ 0@"%÷=bàÀ¹¹¹n|nÜcìØ±E3gÎôONN.—}RRRä‘!ošÑª­*MÖ­ƒš9¿ÿþûoøíÎC…3à­3Ðzê²Õ—äÀ`cêСC·'Ÿ|òÁ#Fœ+/«qÖÒbÊ.yùõ×_Ñ£GÈ[ò U¥¥¥Ø²e :vì¨=3ÛÐøó{y‰nÉ’%Ú³·:uÒ^älÌøO…¸æÌ™c’çùÈÙQWîaX;D³<ÄzLdLdÆäuRyMP^,3±Ý˜È8ØÉ,hŒéWý /­RÕ1ÀôôtɸŠÌíÏG•9#ÐIcÏÀI]}§dæ-œ©ø“qö$O¬¶4Å'®òÔ5 oƒ³&Òy_žñiƒnƒ#lä˜/­¬œqjÏt7rô­>:Ö­ƒ¹›<~,JÚ„(=!̧g„!åk‚š´¡mÛ¶µR¶ËcbØ(ñ‘ç…ý§ãTGòŽ%›FØ“3pU–‘U î$P^|>ÕCŸè–¤ø¼ª–™57FÞT_c㊃³XS*¯FkŽOîÆR ÿª>$^Šûk£×ÛkG°°={1ˆŒò°¡Z1ZÌzk+ƱQ´ÆÃ€Œü²,`¡nÑm·±ˆ¼ŠG™‡ÊÆ‹©%ç­ñJÙd1µ,nÖ¥˜¬[ég-:.Y6œÇ‰MP³LÆg­F›mÝõk”®eaÀèo-«>š,7FE7jˆ Ô`Àéhg!ûœ†óÇŽDqQ²s ˆÐTV–£¼¬ ee¥ððö…§» ŠÝî&;ª¬6ääÀjrGÛ˜(x{ù{u96mß…ƒûÃ^]†ýù%<"ˆæ+¯¨1±ñö÷@vv.ªª­ps7Ãâá‰6<=`±üÝ=­Œ'7×ÿ€@xzXPT˜“»'¼-f¤§§¢¼Ú‰ØØ8¸[˰}ËF´OŽüü@øûùÃÛÓEEE°xùÂÇÓ9™éL»‘Ñq ðåFÇúZ‹é{vjyŒïÐ~dfåÀΩ;7¥yzù¡MHÍŽöú¾>XQ~ìnžZžà´"+»aámPQ”ÔŒLxù·A|Û(äf¥â¯Í9(+)µÊŠ6°[+YŸ• ‚›ÃŠ»vÃáá‹„Øžrø{Ê—ÓaCaI9ì•¥ÈÈÊGlBGûÖÔçž][QPR…º"ÐÇ{5qº U° k—Nð`»8‘jÃæÍè2¤š‰8–š†àðøq›ßŽ­;`u÷A—q(-.€•ù €ÓQͺËGXD<ÌõVö‰,Ž‘v ÁÀßÔ¦…dÈȆãÅ@eqÖ®û Óg.D™3›~7aͺu(æ@Ù½G2üÝJ1wÎ|äTy£2g–óŒü¾¼rø‡·ÇE—œ’Œ-øþ‡¨.«Ä¨³¯A·¨*|õýTVT£¬¼ƒÏû?Ü|Õ¥ˆ :lvEšëææ[I!Þ~êmäx…"!ÌKV­GI~.|";ãæë.ÁÒ9³°coR8ùÇÂóOýIã´¸ÝÌT¦âÕ7>Å™ÿw#FöMÀ/¼€Ä#°wãr¬Û¶U¥Eˆë67]6‚[Èy’¡¢µ/¦³ IDAT¾ù"œq%†$'àÝwÞF÷!gÁ·d+>ûvò á’€»î¹ý»'Ââ2H,þñ3¼÷ÅtØ8¤˜ÚãŽkÎÅw_ƒâŠRlZ¿ÉgÞ‚ñßtز«çÒ_>Ç«ËðÂã·¡h×J<ýî\Üzݼÿîd8,d†Jñw>ŠJ<,ÄÉÞm+ñé›ðÌoCùÞµxíã_pÿ÷ã³wÞÀÊÍd*K0ôìËqû W ÈϧNvl¥¹xü–;‘^å„›³vh¼ñúx¬Ÿ1ïý¸þî¨ ˆÇKãŸÀâÏÞÀ¬5)på"nÀ™xþÑ;8øÛQÀ:‰7È!,€™ƒºß¿ú4¾ý+/MÞ{‹Öìd»-g_†ÞA¥ø~ÛÜ„‡¶vyýg¼ýÞ+ˆ ª‹‡eÅø¸UaÀ`ZUužÚ…ñ Ç€~½aõðF»Ä¬Z¼ l/Ö &7 üÜÊ9›7#®ûº9Ñd Î óÆ¬™‹±có6¸ÙŠÐ¶S_\8nü<ÎÑ«ÿ¹éV+J~¸íÞP² ¯}¹;†¦Dg·3Ù2“¨*ÍÀÄg‡gh<ßðÛÔw`3‡àê›.Avf.C¢pã÷b×ÚExäÉôNîÃËaBj+Óa·Á'´óoÃ_›v#\îÈ.Æ€@o”GFáÚA#Qµo¾š¿Š³éž\OwãlÐŽ‚¼,”UTBŽ;æçbÚN,™õûŽÆ?õÄ»“ÞÀ¢ßW Cl$"Cä™ú¿Õò%¿¢Ì‹;o:[þÚ„ÐøÎxäég°ô§©XþÇvŒ>ÞÞG–Œüã‘m½{÷ÆÄ)/"5÷j¬™;AmãXoîHê7ÇöÂOÂ_¬‹! ÂÝPIiÉþlJXV[U9 )éYµè'ü²<÷=x,ùëñ¿w>ÇécÇ¢O'è'ôNÎöSw¤aÄ-ãÿÎì…‡o¹Ó¦}…y?ÌÁ-ÇÐn1xøßÿ¬Ùó°tú$^p#.è‹•[sà8L}¹” a‚‡[¦N|iiûðÜÄI¨Þ󾜵þïi„TíÂCϼƒîÿ»W}ƒ=ù·cñ/³›ˆ¶}C8N¬¼ëP¹2àŽr±š/éñóñBdÛDŒ9åÙÛ1ùƒ±fë.¸Q¼îçç oÎúÊJò0î |úù—ر›³>¸‹/âH4»vîŠÈ¸DÄÆ·Gûèp_Àæ4¡]÷¾h×¾zèOÑ»'**lˆŽQÎÒ‹Ó¶c%%…6wãì«.G„G&¿ù,_‹2¾çnËÇS¿@ßÓÏÅÕ—CX°¯.b'LfoÀ}°gÇ̘> ñÝÑ–"ôÂŒ|üñ|?ÿ7d”×>À./RkçÎÝ8r1ÿÂTT”`™ˆå‹᣿ Û?.EuÐ¥Uc=ï’«ãSˆW&<%k6pô@uöL™ún}ä!œ9¬'¼ˆÇÆTQú k´'–,þ Vîʱ§÷V¬ÿs!Þ}ÿ#lܶ6›Už¥¬MV˜QÜRÈ?7.¿ìEaa¾úü|;g Eè±dÖv;‚‚1xhoDǶÇÀÎÑØ½u*üÚað€ˆŠŽE¯¸p•W។žd¬œ‡''¼Ž\&ªÖ?ÜW›•f²°,%¹ømÉ"ì/w ¦m,ÊòÓQPºß~ñ >ù~1ÚD·C\BotñÁÜÙ³ðëŸÛpö¹§Ãã(o9l¦‚É´0 Ì@ «#; Àœy¯®¶!cïnUZqñuÿÂ-WŸ¬Œ4¬Þ¼‡bT'r3öâ¯õëÔwüûftîÐŽƒŒƒ3hŠü—'´»`8èP€nvÚ‘™²™3ìlÿ‹"þŠ xy»‹Dþ°ÊA‰B`\2þ7ᔦᗹs0É ;ëÿðìÓœ· «W,ÂsÏ=‡}î‘8÷Ü3ìÇ$]hº …ŠÔ5ørÆ2ôHî†ê¢ ¬Ø’ƒ«®½ ×_p"|-°kå°kŒ@ey÷<” cÛzJ>¶k˾\úsÎÅxà?÷aPrOíÊd Eðu”£Š³ÿ8ýÊbÂøçP™» ßÏš…{~QÃÎÅ9§ âºyÍMwu¾k ÃÍâ‡óÆ §˜"ö9ƒ‘œ‰¥3¿€GdO<ôÀ}èšØ‰L[ c#w; ꋸ4TT^å«ÿD:÷{X¸×# $wÜ}/îøçåh?OOTG‘q,**Ä–{QFñÿòí{Û¡ì™;°mû~T”â]Ú^‘?Ö¤áî'&àÙ‡þ…å?=¹Ò$NâÞKžzu2F´uÃ+oO…•L¬Ÿ_$n¿ï?¸ÿ¶ëÉÛ*#"qñùãðÑÄ Èp‹ÂÀžíyÑë *‘‘lËÀ@ã²ö-£LF.Na ø„ eÇìÎ(äæ:`ûŽáä€èν‘ܳ;–ÿ: ™ÛÒèmÆöõ °}ÓŸÈÙŸ‰ŽÜ …¸ö1Ú¿%fŠÁÝÜ-ðõõƒ§g2SdzO> kY œy%⢻D Õ`â †} Ô\‚¯­E¤§KWþÁüÙQìOg9ÖmØŽÜR&<µm»âž{îD×öñuj2 2É݉0úµEl€•qVâÓß·»{Ó³±vs 7zÁ/$ I»à›)¯ã;¾o´¯”ac;áÒóGcæÜï°bî4T›‚q÷Ù‘ðõq÷»yÀ?Ђw'¾„ÈP_®§‡Á«$›vf"¤xîÙô;º…‡î¼¹NþÃ1hÔ™{û+ôs&‚üýѵÏ@üðö÷xî™­Ü—ƒÊÌÅHŒH†¯bã’a‚{n»ÎÊ2øÇ´Ç€1aÕúxyüxT²^O»!þ^1²9ÔB¦çËWÇcö Ê=ãpÙ× ¸<—{îFT„'Jüºàâ³ÇáÛ—ÅSÏ?‹ gbúŒF7NÄ\4Fá*'‚C×¹;†=z?nzèUŒ{cûEâù'Ÿ[i&"ž…? "Æž÷'^EòˆÓB|¹òCG•œè”Á@‹zäå”ÁºQÐãÂÅÞ2µñãìƒ_}õÕûÏ;ï¼±®oTWU ;+ ®5˦¸lôÕ67DÆ´E8wççq×>gÏ^pŸì^÷án{37³F?øsð().á JF€»õ‹K˰äçÏñóÆržB€ø˜hÄÄÄ€/#P2P—ÄÊúü¼yóœ½zõ2EFFr¦^…ž ä “Øs¹q…œýY(,«@xd,"B| Ï£DêŸ÷ðôF´œVàRD wÌoذ]ºtÑÞ&(ÊÉF1_•oÃÓ”g§§!3¿\~°Û­ðöñ'ƒâD0÷ثʖžÁ …Üýïа0J8(5IÝô+ gY.ù¹ÜS Äï!‘mqî™c“±%”®DFÅrW:O!dçk ‘¾øø¢mT–.]ŠP¾ÁЙùswoøÜBvùïãZ¸¼`_TsÃâÎ];y"Äáa(áì?8ˆeuÐÍúÌÙ—Š,žø b=ÁûùK s‘²w—V<¸Ô¿ÏÅÚ­{yD$&5M¯CÇL{óm\yÿ£ˆ `ûh¶‘¡(/)Ân¦WZeÓND‡£´`?¶íJešfÄs/J$qëRíÇÕžå£3f8Çg:–· 22÷Sú ³©©é ‚‰§HvîÚ'÷ÆÄ·kGÈ©dÚþqóÓxöéÒË%ǘi¾¨ˆ>}úÜÄ>gWw!O 4¼÷žÅ42yª`@R9®§­—Sæ­ °r·¿¨È¨˜~@7߉ª êêòðŽR¡­‡Qìڵ„ž=z#>ºMm*Ì¡L3ÿE†˜ysÏBlœŸ4´M¸¬HÔ>"ã¤åS˜Ê¿ä)&®=x¥ÂAêÑ矧”Æç Rõ‘>>ki¦>Ñðâ¤y/E7ÕÝóÈ-­¥¯|¶»c‰Bu?J£.?ð±0¢eéÀ&|n­3Њ+·M#œ¤M ^‹ojÜ4ýl¬xšº¼FüLJÖï ¿–Ì€ úÕÌ‹bޝ0ÆW'5Ž=©‹jd¾•`@Ú¬!Žn%•i'tìfSú“1û?Å£Á œâ À(¾-N¾˜YUYݲ3iäî¤Ç€Á œôUh@êÊ íqŸ*ëÁ{žlÕU|ù®•UÍGX«Jó0÷×eHÏ.h–©—µ4¿Î›”}Ùàc­R9ªKðãÓ‘žu"Ÿn>ÔæìY‡»žz“Or«ý}Í—¶‘Ò©ƒƒ8uêú”(éŽÕ ñý´)ØÈwêE9¹¡O­»ïß¹?|÷ –¯]ßl¸¨,ÍÆ×³æcOfîA7·8m_Öߣ~uYfüøvîÉgl°r8þŽ»Á‘5RŽª"|4ùsìÚWÀ—!õDa³Õ»¯Íõ‰Â…•/qîNß7–µ¤`6lÚ&Ç Q¹‹-ÄÆÝit;±}Ûv•Õ0 ù9HIÍÔ^™¬-€a10p ƒÃëäÂ@iÞ>ÌûõWLýîWœ™éÀÎAXüë|äTZ0vÌØ wã˯DŸQ…°gaÅ¢ùX¾~{Á•W\€Âôí˜3g.ögåÀ/(”Ï{ uÏ>\|õh\Š_—ü‰›6£ÔaÂå7ÝŽ³GD€÷‘.2Á wxò9å…_OÆò½Åè×­æÎ‹;S™—óñç Áô¯¿ÆÖÔ}|n¹!Ñ=q÷¿o@‡vÑZ¸™ÝQ’µ¼»cο½ºÆá³÷ßCh§>°å¥`Ƭ¹ÈÊ/¥ße¸dxg>¼ã§µŸ}0 ÝŽ^]bñÕ_!¡÷0Äù–ãƒ>Âú-)è=ä,üóú+ø cèA›0R6.ÇÄI“°+=ýÇ^‚ˆ%áý¦¢„R•ªŠ"té{îºåÒƒ¾kH‹)ÎÞ…g_ú×Þv_ Ã{/¿ˆ¨äQ,Û‚)_ÌDA™#.¾7^ÐfÞ|X•·¯½2 WÜp+¢¼*ðÊ{_áÒkþ ¿ê ¼:á%lIÍBÏ‘çà®›®Ex°¿K^møøÝIؼ-[wlGxB2ž~òaxWfà™'ÿ‡”œ|Dµïƒ'ŸxéëðÂ˯!=¯N¿÷Ýz5ø\r³)®è{øx#ÏVÉ|'œ‡'ï¸Äx¨¨Ù*êäNÈ œÜõgä^‡ï€6èžÔgŽŽŽmý°våzFõ§Eia>üB1ö´aè—ÜûÓÓa ˆÅ­·ÝSi.ýºkÖ¯Áž¬b 2•¹éØ_dÅða°bÅ"l\»süAg\€³ú'à«O>Ö{šíë²£Yå½=“ÙŠYŸNÆÛŸLGç.]±jö,TyFà–ÿå9)ØW\3.¾ W]zR7oAn©NóßÏ"ɬÏ70©[×Sª± û¶­ÇÂß×¢BšUë0êÜËð¯ËÎÀJ27;öîƒÃÇˬUزa2³ó!·nذ»8è½ñÊDØãqç=w`ËêŘ1ÿwä—T¸fÓ>zùèˆü2·®Až›®þÇM8wd2–.\ »—ÏÙuéÃ/0ÙÛVcÁ²¿P˜¹ ³æ-„—ņŸf.ÁY×ÜŒ»n¼?}þ-Ò2yÎd†­<kV-GaY%™Ÿ ,ÿsòr3ñò“Ï 2 7yø~ì˜û9¾³ e­¹;ðços°.µ<ô *·-ÆÛS¿Ç‹O=‚}ž xâñÇ`Ûþ+^›ò ¦¼ý&*ýûà‰ÇÄîÕKž[Ì÷A(k2€ÌÛ½×]y üúŸ;¯¹ßMy–øxä±'pÙ|øÙ/4°Í›…’ÜT,[·£†÷å¥PÆ|¯É*¦•El´”VV¡§rqÌ/„†#>6 í» Š¢ÒofÍBjz"Î9÷|$E{ º²a‘Ñ÷ˆÂÖí3ñÕ—Ë‘¾¯§G·‡g Ø_8öj;,mâ0¶k>ÿù7ÎØ^#Έ‘#ïÓË6¾…‚Ârˆ4Ùã0G»Ý,ÈÙ´_.^Žsÿqz÷î ÿÒt¼óé·xçfô1íââáI_¼‡¨¤¡¸÷Ö+Ñ.F÷â7¹yaØ žøsû6ÌÍYßðtéØ^å9˜óÛläìKCZ‰¥fiàÀ@ÅkxA0ø/w”å`=EÊÞY(Ø—‚ܬtdgepsEËþÞušNrßþ˜ùÁ4J6bÀÑèÜ!¡æbL~æ{Œ»æ6ÜzÅXøI*R'Ê#:Ü<qÞ¸~øiõr´¯öƒo\/ôJJDñð˜7ó{ØJ3P˜[ÇÍr¶^Žæk íf2'…ÙØºk#ÜÊÜðé»È(T`ÇžlÞÆÇŠªó„/éñjƒ‹.½FŵaÒwÀ=s?î}"¥/1¸úšK0ii®ê3s¦|‡—rÿ acè«¡õˆj¤&2†y»·±n«Ñ–Ò — öcF^-f­+ouN2¦Nßÿð-ÖýºDôû æ x)fQüŸÕ#ÁëWf`þº5(±{âÚë®Ã¹¿ÃÓÃ3]'/×wÓ7MÎÈœlä^eUU%¼¤ÅÊ’"TÚm° 8Ò=1N†óJÂÝwÂËVcÍÚuì„~¹)x÷ýɈk SöF,N/Ç}÷‘aè–P7aøi£ñË“oáãÝ»qõ=œ¹§á³Ÿcä9"ad‚?Ș˜™Girý,qAfÄTY„üÌ DµkwK Fœ~>†õKÂÆ• ²Søº.upÐñ ÃøñP± /N|mÚuFæ²ÏQض/^½ïFD„5Ímˆ£Î¼_Ýý^_[† n{ÖŒ øà“¯qÕ-÷ 1¸{_ø‰ŒÔ‘Ô‹V›“"t'Êò3P“'¥fýû`ô™aHÏüµ¬-Út#ÓÄúuUN»•uZÁz7!/3¾¨Î²q)ÄJ˜ò3Rà´À?² ^{ã äîÝŒg^x àª1=`a;ke­ªDÜ€ 0ñ?—à¦nÆ‹NƒopÚ%cü#ÿÂâï&c]¹¡q=Ñ?!ÿÿþñØ$øy5.³Öe5Ò8q8¸‡œ¸¼)h0Lnüµz 6íHãÚv9Êmf„Xd6å^ߺcíï(X¿ &[²óË1ó§,_¾IÉ‚ð˜mÓ•ÍaÓ6Šˆ^6“Y8³^¿äLÈOCEæNXÚDTDܵ÷ÐÙv8¬pó Ź—\†h/+¦}ý<)Þ¶D")!Õ–äìÙ€/>ÿ|ôÖëXÐ×\ ÛÖìP±G'öBÛÀ ¬°y¡k§8„xÁ^Z„M«þÀêœ]X¹> ɽ“PX\wo?øð©€&½„o-•X´b’Ϻ»Å`Å’9ÈMYƒÕ«¶â¦û{iëï* ÍtóàRÀ÷Xšêà€ÚŽ¢fOl]>_LŽ®ý‡á¹§ÿ‹NÄ×Í×\~€ñ¨óuƒmÚ÷DB°;~ßlÃȾámOƒK[Vÿß2¶cÛ–õ\Ù„Òò x†óÕª<ü÷áGa.Øõ{*ᇡƒ»cÎÌŸP´3³[‰’Çjƒ{ÝŒyƒîM™ôrÖÏÃ/3fãî—ßEÙ’Rüïá{ñ×ð>˜9}>n{vVþ2äùá´ä82f„…p‰¤†ãªe¹,^ˆ‰‹FB·¾xàÎkðõ7ßá¿wÝ…µO¾€[ÿµ’§ *pß³/³ž¼pî¸Ó1uÞVŒ;m°±DÐDõÑZ£=á·_µVÄåj| ËTÌ/<<|𫯾zÿyç7V=Ô¢R+-ÌÅšÕ«a³ø €7¯[‡¢*úôŒ]â±uãZ”ÛÑ&л·mEµ»/B¼ø ¯'ÌžAà2C¤¦¦QŒì‡(?ìIÏÆ¶Õó1cm&ºÆG 4<ÃGŽA"—#ܹ1P¯d—÷¼yóœ¼o^^ƒµ¢k¶¤"!![ VoØŽPŠ™7oÞÄõü$ôˆ^‰áؼ‘{ò䨜~Á¡Ü«0á\ò())ázÿtéÒE^¦CÊÆuH-u gRgúZ°ê·ÅX¿}7"âÛÁÆw Â"b(Û°¢S×$TsOÁÒ¥+`óð`ztï`O+–.ZÀÓ ùHìÖÝÚE -#¥§+åÀ¥–¶m°pöœ­oÄ’ëÄ¥/Ÿ@ 8¾Ž"Ìøy6öç¡S¯èÝQ–„v¢ªÚªŠ¾´8å½IIÀ¶ñ]zcܨ!0WcÆÌØ›Q€Äž}pƈÁ(+Ü~ø …å6té9cGô¯WÒPù1X&Mš”w饗Z"""ô× ë£éRi…þ~Þ°òxlyE%í~(+-Dnn7»†ðÝŠ”s‰ä«7žÃ‚´6øðÍGáïsdÉûÑ·~ø>j´™§nJôéöS †dàÔªïV_ZßÀ6:j ËIÑ>Çéž=“5»Ùݬ‰ÞûVƒzöNî+ãš&&®Yyæ;ÅÃò]§N ’å {HÒ7/FhX{œwáyèÜ.’¢jÇ×ej"®ûkñöG¿^ÄD¤ìôÃÈáZü]90 ã`v·ÀbꘘvÌKÍb¿Ä{¨;æã»ö@œøXŸè;b4’‡ŽÔf¾òÄ ¹’ï¸øòµå0Sº!!Îä©a:Ì<¥º {¸ì_$K ò¥¡ÑèÞ£®¸îZžÜ™GI..¡kmáDŒîÎ4šBÅwé…XDÃèÏuú>ƒGSüÏô¸4`âæAɧ”1¸{_´ç@.3v)xMžÂqá¥Wju+eÎOÛÝ;w¢¼ö~ '|ƒ¸ÇÒ^}Gà²1ݹLÄzø¹oä‚K¯ÒŽ,juÃzó Åuÿ¼EÃ…‚5E¹§‰õäïWCª-ž¤å϶îRÛ×ýö3ænÌÂ]Ý Ÿæ<íp¨Œð“ 3pRU—‘Ù#a f ý»Y{¸ìî«3ëœT4 IDATÈPë‹“ñÕ‚%Îc.D§Á@LTø1Š_e`?— âPmðªM¡fƒŸÎyH«6 ê|e@?¥Zc•ÛrPù¸å)ß —Å$rh­aD.ååsÄ*H­iá,½9”ä[†{¥ê–Qï#Ì›™K@uaò…{%” 툫¯k¯œ5&Ë8œ’¿ÐXœ^,óßÞîüöïD8==<þŽïï'ÞVÃÀÕäcðYW¡ÏWÂÇÛ§ž=''>¯FZ6ê´ù–U#wNBÂcÂäõÄ÷Äå¦ñR–ÁÔ­žÁ´ñR8ñ1 sQß`Þ¡S—‰Ê‰Ïb£äÀÃË›û e`àø0`0LJ7ã«S ­ 8Ū¯Þâj¾ÞÀÐÀ@+Ç@óÈýZ9â5+´Kvåܼ¹7kêGHL˜š}:¹ó¾9œ·”StK¸Zj=§-Éõê©Å‰b6™¶¬ÉÎÊF¸¼º%aÖÈ˱bÀ +ÆŒð'ÚÂ6oÔslÚ´ÉÖ¦M«··w㌺P*tîtj»ÿ«ªª´Ýÿtwþ$¾òòrÓ®]»PPPàôóó;xE!ùãIÇÎ;­Ë—/w“ü5¤¼%ÐÊÂlÛ¶­|òäɹ%pwÈ:–ðÜËQI]ÅA¼’PÍò ÝÖêêjO//¯Jö see¥ŸÝn÷à 3aÙ4fC˜g†3ÑO输nÇ‚ rN&…RŸP.¦hÞÖÓPðÞ†Ñ1`-lµÚJËDb%„Ò‡ƒÎ€ÓN;íÎŽ;Ž"Q‚ØRJ¬ÑÍ={ö8ÃÂÂLþþþânôÄ›ÇÇrM¡¡¡–õʼn@çÞ½{”8x4ŽNž`h`yOD9N`šÎ;v8åÍ#NÌ8ÈÛÙJy„³ã4˜S±Ö200``ÀÀ€ f@‡ Ãj`ÀÀ€NE ÌÀ©Xë­¸ÌE¹ûùðÎN””TÊŠâ|ìMÙ‰¾Ø\ªKlåi)[Ÿ7®±¥EùÈÈÈ@Uí+~õ¥€Œï@•ͧ­Z.>¢.d Q^^©½ Xÿ—Ç­ î+*«Äë Nе×­•eHOKc™èv8‘µ/«Öí@ñQV&ùpÂa­æ“¾š]Ê»ŸåÛŸË'¡¾^E¼U²üå%HKKG•.\^vRXn+_•T*#-{Óöˆ_AO„éÀêõë‘Y$e òPQ]³Ñ?+c2²óµ²Ê<±z¾~ûm1òªÜ0lèpø›K1ý§™è›gFiÆV,šó 6ïÉEDB/\ÃU(NÛ€/¾ø%TÌOxùø  ·]{zFUàÓi?#;3eUå8÷Æ»ñï«.AT›€# É ÞrìÎZ‰7»;*ýÐ+¡ fÍÿ ûɈD' Á½7]Ž_»vcÿ¾½j7 '<†]Úkq»™-(ÏÞ‚'^ùÜp;Nëßÿ{ü¿è0p427/Ç‚e«5&¢ïȳpÇUcááé SU^ÿžu-Fö눗'¼Œž#.@˜m^÷¤¤f :q0}ü?è›”Àg”ëcéŒÏ1~ÒdJXJÚqî»î,¼ÿöû(,/GÊî-è?î6L|æöº5Ð5ëË·ðÓú*¼òôÝ(IY‰_ü÷ÞqÞ~ñd’ù)-îzæe„ð¥F__ìÚô>œ¶ þwÊRþÄ‹“ÆÏ<ˆ/ßz ß/øeÄù¥ÿ¼w])ü}ëAµ–dáÎü; ŠQFF,(>¿?ëg¼‡gÞùîd€|; Åû¯=‹yŸ¾ˆ¦/Cea1†\p=Æ?~;ü<ú(`±rðç/øó‰âYo?‹I¿ü‰·'ˆy½ŒO¦ÿ†j‡—Üx/ºZöá›Õeøhâ£Ø·~>nf¦|ñb‚|ŽÐ€ \H€'/üCÛâôÑ#q××à´¡Ý‘·?=Ÿþû õí…Aýûãæ›®ÁçŽFTdÆ\t#Þy÷U$EaûúMÈÎ-Bbï?a†÷í>ÃÎÀKÏ?ŽÂì휙îE™ÝϼòÞýßýX·p!¶íJ=âlËÍd†µ</?ñ l+À5×^ýmBh|o¼úæ›8}px‡Dá±^á ø}C1pÈPí"U» þ‘]ìiÂ_wcëêeØ]Žˆ  !øïsãñÚw£ -é™yœMsó·Ã†R.‹TRòÀ³â(.)GvúN¼ùî§è7öR|öÕrËÆì…Ë[ÈQÖE-øy|âGbò”©Ý#mÚuÃûŸ~ûoº”R•`œqÆ(ø¸ °.Q³sðàAØûרÇüü:ëg„wî[EºŽ¸~0ç íˆUKÖS"b×.Ü©¢4 €¹åsPrQQQ‚• ¦á›E)˜ðÖdL~î.üüéûØœš{P=9íÕHÛ¶g\~7æÎ™ƒ€Ü­øøÓ©xî­i¸üûÄËæ¯Ã×?þˆï?ý çÜp/¾úôMDù[ä~Þc.[ã}À+‰ÍV|öÚSx惙xê…‰pOÿïL[W>ø_Nú/~|o"̰wÍ<¤VbÞŒˆéÜÁ^ÆÜ¯ñê¡õÅd0­¯NOÝñ65¹Ï—ô„µMÄÈaÉØ¼b}fv숿¿Ü-¾õn†‡Ù†93¾Â#ù~!zôëÁ¥ƒ˜ùÇNÜõÀÓxñÁ[Ñ)2P»F |•¨¨²¢(m;R¶l—­ ðõ ĵÿ¾|ð>®¸øBtl×^»Ý°NzŽ*¬Yóî|òUüðÝçÈÙÎ¥—o¿n¿ ç߈.=>S7ºróÆÅgƧ¯GŠ3}»DcæG/–ŒÉ|ˆ³Gâ-‡5éjc;™˜’ŠR­žÖn\‡t.a˜=}Ù¶^›ô&½ðönˆ ñ­e TžMd‹¹bkJ÷T`Ù–]hÛ©#ª÷lÁÎ=”68«±xG:qV… »+ñá7¿àÓWÄô÷^ÀÖô2*¦æ6í°zEbò7sÑß'ÏMü _„„uÂkïNƇ“žÅà¾)ùŠÁeœ‹÷^x{Ì1Ü»ÜÔX›»(Fz- ËÚ·¨¢™91àÅÁnÃê5X·u/F;vîÜK)€;Ú&õEÿÞ=±döH/¶#ÄÏÛVý€U‹g#33I½ú"88 íÃyà gÕ"A°pÖÉ™§…‡'°{ã|Üuûz”æcÄ%ÿB¥Gº_æž~þèÒ³n¹>“g.D¨[%¦ýðB-(òˆ†{U>,Y’jîüçÄ$vÇ£=ˆî‰êT¡_d"’»¶Å^[ ’ÚŠί B%xã…§`r”cgj>:té Nø·Ab|Þ~áQ¼e²"£8·m'\rf¦}<?Nq ´Ú=;Š×³pzåæÉMŽù¸÷ß7qæjK(L¹aÙšh›÷9.üõ[ôäʳÝ­}Õ˜óäÁcÏïø÷0|ôÙð÷öEþ#ñí¤i¸óæ?•·NlDù €›ÙqqIðΚ„+.½UeEé„!g^e+ÃÝ”$”åìF˜+àÍ' ]2)³d7n¶|eø<ÄÅÓ×Þ‚ ¢LÜyÈñÂ~k4ž¾ð|¼÷À?qõï å^‚¨þg!6,ð øôèkZ»î—KÄÓžÆù×?ŒsN;ýˆ›oøÜJSÔïlx™0ô¬ `~d<ús/IPS0oM[P#öfÆ€ö E3§i$g`à¸0@±°ÌÃýÂÃÿúê«÷ŸwÞycù‚[¸ì6+rs8sã îE1vúÞ”U›Ñ¾C{„‡øk'*mø’8æìß»»'‚¸|¹z3S?_mÖ[Î käàÍѾŒëÖ‹~šŠ_¶Wáœ}Ð>>VÓ¾Þ^uÒ‡¬ÏÏ›7ÏÙ«W/_ãÌÒŠÂ’ ÎÈ}àÁÜË./OdpBV^ â:vF$7ur–ZVQ©I$Ü=½/nRãësÚ“È]8ȇ„„ ¢¤åvü}¹vìF±ø>¤fîG›¾'Ãupw‹¼à†€ ˜¹o€/(Âiñ¿Ÿ/ü¹´áãiÆÞÛ‘_ŠØv‰p”d`Áâß¹o ¸¶,Á1¸èü³‘Ác˜²Ÿ }Ç 4wE<± ÝWϧ#ý™Çp,]²|õ’?¾^XGC,y¬?æUÊo"C·cófYMH‘x^>üƒ‚Y_„û£$'{¹©3,"’áÍä2Œµª›7m壼~HêÚ «ÎÄ2‡Vn T*®C;|÷ö»¸êþ‡èŽ]¸¦È—l›Ö¯åéjtK&ƒèë {eV¯ÛˆJ¾üÛ39A>'™1c†“n™Žþm'òò àÍe¶ïìÌtx†ÁßbÇÚu´ºîÑ£<¹œ’³g®ºúüwòT IŠ¡Ë…#RÈ8„)'IúôésS~~þç”6U"˜n%hœÞÛJaãäÇ€ÙÝ‚ˆ¨èÚ‚s†¬W¡aµNW¿ZZüýÿf298pÀh„nÝz¢CÛúÅøúï•]N„ý½V®yuJê‰N*͈¨º»Ýu^u¬ÞÌ—>dÅÁ¢ëW$vêzW»Ä.hwZdª@—¤¤Úch²ÄàåÈ¥/$õL®óm[Ÿ¿qRÇ£‘mø âßÊŒŽI=jA!µv±FD£'µ^yz ¹ß€ '— Ú£§gpí±@)c Ÿ'÷•Ä’KBÏö‘߷˽!Ýz÷ÓG³W  Zvâ&´!S¨Tx”<*X£úö—å®Uºû,þƒ.c/B?J»Ž•Pñ橃ƒ8uêÚ(i00ììÿÃ`Ôöàë­I†EauëU&$$õBB=ìL¸§—Ïߌ@=aNVP@TG¼þÑ4„G„q)ëØ$'k™|7 3Ð0ü_Ÿ"°pÓÀßóûS¤Ð­¼˜¾¾­÷̽™ËEQ‘/cµò*5Š× Ȭ¡ œ”£e-M©<)³¡ùSñ(³¡ñ5Å÷nÜ™o¨ãÀÔkK­Û–š¯ãôñÕ‘0`HŽ„!ÿ%a@tÉ¡xg57²•ó(YcmZk¬BÊÂ*^ô#×ÿŠn¨’2VVVjqyñ&Ö¦TÞ¤¬-­.Z®êËàM® ¶ðtÃÑ ¾²ÑPÚ´ oooí(¬ìïå:m1Å-º>&M»r›ßMZܼêd8¹Óø„¤¬gÿÏÞUÀGulýÿZv7Ùdãw)Z ®¯òúê¯Â«}uo)” (”()P¤¸/AC€¸»mv7YËîwæÂ†‚& Üùý6{÷ÊÌ™3“{Μ9çüùsmÃ^h¾òµ¶!èEhúý÷ßµ{÷îÕÐËO@Ø.Lôò¥w°…åý·¸¹¹ -DÛ5/›Ù Ûd2YHX”J¥EÄ2*ÙIa}%ú,¥¥¥œ'¼««+@vCŸ°é’dͧN¯\¹ÒÒœà>ÿaºuë¦Þºu«GïÞ½kKJJ¤$´Eäõ¯Þ³gkbb¢F«ÕŠªªª(¢E}øðaeXXX=û!l ))¦””ÇK)l\YÛt¯žþ×4txaVªó‰ã·{ð¡…í~oÐKŠ GŸ^ï½÷ÞäÛn»m˜B¡°«9Ì”zQ[è¥, :›<دu”èÅŽ'N ** gîµVÕêÏ1¶sçN … ""ß •B [P;®pÓ¦M ‘°ý&¨9%“þ̤, (ISÈÌFHV3­þd±PØ­¹²²RHÿ#º?±pW‹TJy­¯ äçç#99ùAªc!Ík^!¸žµç[xË@{½[—v ­”´ú:;;ÛXîÊ `yZZèÅ Võ•û´´¾Ö~žhcãÀåà•«ç.91Z˜uë*”[A.²ÉO bs… å+n*¢àà`öƒ{†òs47Ýq‰FÓkm›—x‚¿Ôž9pÍ&ÌöÜižövÍf 2³'[…Û[!º8’Z‹6Võco}µÒÃÒ7óåÚ8@ck—ó˜õæÌfÊ…­‚qm埲{ðÊ€ÝO  ¬+¶9o=¶¹Ìòà9К ÿ3¦ðÿk­ÉT;­‹Wìt`x².Ê~Î^”5üž­Î¦ðÊ@«³Õþ*ä_¬ö7&šà–æ[£“ ±ðè¾Mؼç(zºƒºÅ¡¢¬úF!|ýü{âþX³ÑÝG`â¨aP«ªPQQWOoøxºN¤Õ@Má|R™¤3XS­‚¯?A“(7£\MyŒp@@CÉ»ûïÙHõTUÕPd‚K,£QÕB Ž! ¡Õ7"ˆÐŦz俤#^UÇ!!ºPÊ]©LŒ:•©rBk¬$¤ÃjB#ô †‹ââ¹ù‹ò3é¾z„DÄÂIlF ¡ ´#Xº©܈ÆÖ,u m°è ¢‰ÐË+k(JÁzu r‹J ÉÐÁþÞ¨®(EzF9h¬,4&®n.0õ¨SëàêîBš•™3¡†ùBLñùs#ê4õ0P\Z ˆh(å§Ãûò³O¡Z­Gdl„„‹ §ÒNB)âc)„’Ð"o\± =3 ´rðŠ ó¡ôô‡‚ ‹³N¥ÃH•Ñ¡ÁШkiÆJ T*(K€ eåÕ`PûIUqãXÈ·Ü,ξmš½ÌŸä9Ð~8P_[ŠÁ²•›QgvFÊÆåØ»jô@×n=á.ÕcÝÚM(mp„º8 Û7nDn™Jÿh<ðÐ=¨Ë?Šy¿-&aB#ù':n|½F‹Ñw>Nþ:Ìþm´$p´Zß÷$^xô>zœî%‹€”ÊX_‡)/?ƒ"‘7âØð÷~Ô’bᘄ—ž~›–/Åñ¬dg¦B:3¦¾ƒñá\Í ù°¡*ï|ô&<ú†÷ŠÆûo¼ŽØ>Ãsx;öI'hc¢ºôà ÿ ‰ƒ }5¦2}Æ<‚=b0åóOÐià(µ'ðýœE$Ø Ø'o¾õ:zuކä~î’=¿Ú‹ÿ€…ÿhðÝ'¯@•± /~¾ÿ{v,¦::‚ë­,Ó≷>ƒ?ÁS;Rö½¬ã;ñÃ‚ÃørÊËÐdïÇG3Và½_ÃO_|„-3 ºÃïz¯>õ ÁTŸ‹C`T—âé»A¶V‘‰ £Ã0ÿ—ïp`étL™· ‚6¹Ç`ö_`ݬ°xç ˜~:zÐ|ûÑ+p–ß8À*‘D )ª‹>žŒŸwg`æO3ñÍ—ïcÕß©0Y44éß説Á‚=5øíûw` žz).ù þnçòájLj¿ÿæå¯ ܼc{ËõÌÙ3Ã÷‡3Aú…Gc÷†mˆé<Ãúw„±Q‰ÁžŒï ƒr·0„8cùâµÈ9‘1 è1p<î½}Ö.] ³GFöˆÀòõ{Q&2AæŽw>{ nšSxcúÈ4¾^n_½J$£¾6o¿ô \B’ðÎÛcÓ¬iðˆÃ3Ï=<²xù…áí/¦#}ÏzL~ë+ ?þdy°s£ ß8„ù¸âØñ x™ QÖ À?‚åÕÄbÀ˜»ÑXz ³–m£` Ì,ЂrÄu´ò¥gYˆ˜ž,UÅÙX¸ìwt:cöÀÔO>Àæ¿w!*Ô~ç®òSví‚SP7¼ýô$Þ·ñ]0gþP¬_øÞ*Ôá¾{FCAV…Ö,ý‡ Ã÷ ßD6­b÷­^ØÝà –£÷˜û0rp/,šù9ŽÿsñÊHù§Œf#ô ”+—–È´Ò·PæÜ=aÝ¡2|ôéȪâåæ`ܘQèë’ïMÅB«åš²Z<ðʧxìöøÏÄqøù—Ÿ°áÍøè»Ü1OÜ1Ëþ\ë÷`Ð}ÏaB`l;ËyŠSS¥×å@ß¼óòŠªðËÒE0goÇ‚õ©˜þÓ xêÒñس£Ïçï¡æ—‘YVƒM+V!±W?¸±|\2ùFÚxe Ý Oðe9@/z%)C÷Á¼…¿ãÓ)›Ñ{È( îJCˆF£ j²"¬^¶ F‹‘¶ Ì ™X‰?%™¢àî ‰‡?<œä‘¹ž¢ÁÖ¡ ÜÜÝ %%;ÒëÁ¥hÆ ÝD#™¨Õ…™HÏËGÇ®Ü6À˜îCåœ_ñÉûïÃ%( Ýû ¦à¾üò[ô5÷MO¥­ eùÄ<¨'l%l¤ õ¤ ˜‰N)ÔÖ±í¯58¾o7t&c#YL´À4“cm0áB’žnçVÖBÚÃÎ;‘‚’â"Ù½*½Nδ~if7Ò^¶Gto|÷ãl( ñçê5$¼÷¢ßøGñý÷Óá¨ÉžݛñöÛo£ZŽaCú“ð¢U/¥=¿té5Æâ£øcÓ$uއ®:»SËñä3/ãŇ&"ÐEư Hð[HF ‰ò‰¨BÎÑ}HO=IÃü&Üó0>ùø} è“ ò¥p xæsŠYm›·bÄýOcîÏ?ÂR•Å+WâÉÉo"æ¶{Ñ¿k t°c&‹C«ò˜0fÏœŽj?$†{aûsá@ŠÏ?ýɺRÿØ8‘€šÑvšc™ïwìÝBòõ¹¸“¥%o¾ûÞ|éÄDbç,‡Ëd}–Z \mu>ŽªÒBl;–…è¤N@ñIüs(ÕUÅØ’QDŠ °iÇ ¼ñÅøáÓÉØ·fm-UQßÏÖu}¨ÿ2_|õËJ 㣩?ÒoWxx†áÿ>ø½ù$"B|áîé…‰ãÇáׯ>C•S:Ç“ÒwVº¾4ó­µð–ö0J"ìœ~;z† W¨sŽDB˜?‚ÞˆP ñãWŸÓ (,©Ãá:)É)Ò;&bÑÏ_a±ÀL>røQ½÷O4á·¥sñ× r ÀKCn'¡ ÑÚ³(xú8cê{oÀËS ±{¼å¨P`Üþ'þ½k-:ôÊm}°gZSÄtî;Ñ ‘“ÿ›ƒE SÁ߈ 襛3BÂ*š‹çŸ|œ¶jð‰ŒEïwáXÚÇxû•WiÅ\‚®ã„3ñÆHÛBg2êqÝ’4—’KàâéŸbíl$žq´õñ¼ÕøâÿžÇÏäêÕ ÷Œƒ¾Œç_þ/<$ ½ !d‘¹‘rÕÛ‡„½^yïÜ÷Ô›PÝ=·õÞŠ—Ÿ}Bm"†Þ wG²Š gËè;l\¤¼UÀ:¿ùïæ9`·©0›'—?{+s€„³d)(Çz¯iÓ¦M&€—¡,o¿m1ÓÞ±F­&³>½ài…]YFfcŠ&` A. 9´5…ÜYhK@ U-yä“°vr’q^é¡„"¤´R‘ÙÕÈ™ ™c 7-û ë2̸ó¶>´ò ‚·—;™É/|Á²tÄ7n´b…¡­ûFÔÓ Õ+&OnµZC‚ÛUä_£ª‡·ÜR’Vo0rÖ1ÕëBÛ¢‘épìØ1ÄÆÆ2¼N1’ø•”­ˆhÓªªQNJwOl ]‘‰[¹£ "Z>—³±„àn!'GF1í °h‚Z^ä[¡)NǪ [9Ï}¶ÏЇî¿÷NÔW•¡†&ýƒBÉÓžVá}k YaÖ¥Ò;vìàp }­…M Õhà@ôJÎxí—Ç|ù|øûzB]WG}!y2‡³qÓ«ëP^[KÊ›;7Þr¹¥¹´-#;"(ÐÛW/ƾÔ,èÉúc5DÄÅbíOsðØ»"ˆü>)ªÃ‘EP)ÈÍ¢¾ 9Ek€,%Y4o$ˆˆŠ ¹ÓzÕU«VYFŒÁ!?r_Á 9µJÉ’ñG­ª…˜úÌèÌÎÊ"ã a4?-d‘J?¼ ÿ}ùk|<{ºDù^µ“——BC|¼ººz)Rº+ ¿¥s€· ´ãÁãI¿B2»(]›.‡1Áq¶(œÏ*Žvw±";#Øu9 SOZ‰Åé Gß• ˆ'zq[‹XÉ/ ~Ö³€³‹W¹$!,{[ÄIéŽ0ú\¬øøú]p‰)^gΊ}0xð04 M÷,lÐQ&…[H8lH„ëùÛ ÔÜ:'œ玙…@Z‹Ìë,/Ù9ñ-˜>¶E –"<"ªéTL§ð Kà-fõ`EFÀ}™:Ñ„’…ÇëëFPhDÓ³ÜPŠ(²ìØKQ(ÎÎ[g›¹ÝDbmi>ÿòô™t’Bo¬%£‰(þÀ®9À+v=<²ÂB[£¾–Òcû¼­¢ÂhcýæËÕq€Í]6¶¶¼¼\ ÌJÅžaßìyöaÇl®°z؇3‡NÛsl|Ø5öÍžRø©õk“³z¬çØ=t,x÷ÝwEK–,áro'$$€Ž/GbÓõãdzûT¯P4qÅ>xeÀ>Ç…§ªyp/N'ܽ{·E.—ÛÝKæèÑ£ÈÉɱ¸RxbK õ•Ã`/U§K8<¶´kyž –´´40§H?ÊWÀ _.äÉÁ‹Z`:„††‹m$ i ñ–`…ÄS3 ~έ TA\\œñðáÃ’°°°F¦„ )z…;Gã`–J¥æììlQ§NL4>"¥RÉæ";'tssäææ ë(*#((ˆÍS.„ÉêòòrDDD€®s‘+ÔÃ#<Òwüøñ¾4ûFS.ˆN1eÊÄÅ £Ÿî3ÑÜ`{ߋ܋ÝËŸ·ðÊ€}ŒOÅ•s@ “É,‰‰‰–èecWá±lUÅ^æ´‚xQ~–-%Ò9yò$÷’¦¹ÝYAH£‹  …D2¡Â—+çñL0zôhNÀÚÄÄÄP8§œ¤\8Å) ì˜Ñs¹²ÿ~Ì™3g7Ý›Gmð“ãr »×yeà2Ÿoúš8À½PHYXîk¨Þ5ÕÔF1áÈ–g ¥EC1÷lÅÆúÊêµ·ÂrXûj»ºµ7:í•fía›}®¤°U9+L¸[ Ô¬X?;fÂÜö›³±²6ŸX!+ƒõTÓ|eÊ™"°ÞÇkéÚµ«õð²ße”çƒ #™.L«É®òÅ.8pq;]ÇÁs Yp‹ {\hXWqÍR} 'Y­Ÿkx¼Ía´1Ó1_x4ÇæÛ@Ū 4w ÎN8À+v2<WÄf—dsöòöÉ+ªŽ¿‰çÏëÀþö:0¹¥MðÊ@K9È?Ïs€çÏž—âSÞyþR²ƒk¼2`ƒÀ“Ðz°³U#öoÆWÉ |ɤÝ֣ܵàÜš,„v¨Õ6\?S:õ]K¹ë²ßÍZ z=4õ ×uí›—fÂ㨣yoßTòÔÙ7xeÀ¾Ç‡§î*9P–ŸŽÃÿìCQE5',pÛÓfºª¼‡îCVAW+Ûß?}í´“³uoÞª00å¡Ñú†=³wÏîgÐÆWZ´•9øø«Ù8œ^Šîæb¸Ù³\=Œ®31Z¬Ÿæ••³Ï²GmÖg­u±ó U¹˜þÅØw$zÓY:më´ò„Ý©ÂøÀ ƒ­íXécß¶õ]ªŽ«¹få¿õÖ+¬¯lïÙú{ïÖ?ðÎG3Q]K€T6X¶ÇW2N\{Ô»×ÚGÖÞé~›Î9gËcv=³¦Ÿ¾õ²ÊU4ÇNç °ÒÇè¶ò›3Meó©é‡õvþûæMp þÍÖu“¾‡önÁºÑwìƒÐ9 …yÙК$M‚âãû±xåZÄöÛ† ²¤ù%•ðòDDh4u¨¤ð*…]É)K*FUy5?,Q[§EEq1Œ„ˆ w%!Á]ÚúÙØhDiUt&ÔÕe(*«¥È/2^EUB¢âä킼œ\hf—Ôs¹ÌaaAp”ËÎ …”5¨‘UU B7bè‹Eùy„V§$d2Oe¢NgB$y†»[ ¨(/%D …å±waaœ\< p”"'ýJ+ª‹ÀªãÂüFCŽ;ˆò* ÕÛ¾.¤ge“"Ĉ 7?Bo¼©%sª¬xÐ(Ch̦df"$<5EyHÏ+„ÜÅI Q¨W×¢„øÈ«+k). u(,­!Xã µµ8tô8œÑ)!†"Nب-4¹Å0_ ŠËhŒ“àFê÷áCP]×€¸ÝèãA\H9Dè—`žôîNÔ×’~·øY‹‘Ð9ó94ÎúÚ*œÈ)@BB"Œuå8|ô$ wtJŠGUI,rùº£¾¶ 9¥uHˆ‹¶¯¾´˜|×Ê^¸VÎñÏÙtÚddåbï?Gàà€£ÛVãÈñ4,$¼ãâáådÁÁCÇÐè SUvünm=™ÓeÞ˜pçhKR±hÉJR¤ÐÔi qR ° ÉCîF'?fýö'Åx;A§©DüàI˜üÔ#'ré" °1¨I }òå˜üb(7bû¡“°è4ht Ä O?ˆý›×ãdv6RþÙ·ÈÁ˜1í]tˆ 媊Ä0hŠñÑÛ_bô¿žÇˆä(|ñá‡H4éû·àda%55pŒÇËÝ‘˜ÂÏtÕ˜õ¡Öÿ7†$ÇbÆ7ߢËàÛ!,=€E«¶A§k@Üð¿×_Ç ä$ÈT¯MYóëwø~Ñ&8+E¨1»ãõ§îÅŠeËQU[‰[¶`à=¯áëžµy¢å‡û7-ÁÌMŘùåÛ¨<º ¯¿/ÿ{¾œ:.>žÈÍ,ÀÏ¿H‚‚–IåÈ9¹ßür3¾zšÌ½øðëexóÃÉøöƒYY]}b’GáWŸ‡·ë¹€=&M9þ÷н(•¸ÀÓI„¢ZÅÃ]ó?ÇÂ'àç"CV³~˜ŽÕß½¹¬®„"®~˜ò”¤TÙO\³ †ºRüß;ï¡À1_½(ûÔï2ƒ34•Åè5þiøjvboU0f>«çLÅüT1Vþü ¯ ØÏ@ÞPJxeà†²Ÿo¼59 p÷Ç€>É»{Óª7»ÖoAHLwŒÔ"‰ ."ý<ߎ´}àì?/ü¹tÊò ¦¿wâÁ C±rÉBX<¢0ª{~_³ƒ„ ž!ñÆ+ÏÁ­>“§,Dv~)‚ý½é¹‹÷BD(‡õUYxïµ…èØï?òÖýð9\½‚qÇ„¨ª¨…H$&¿ÓÇw¬Ák¥jŒ»çœ]u›MpòŽFlˆ/eüËwc! hGDÒ ZfìŠ!ã£`(>9+wd:g¯w¶­Aϱofï¦ä³¨.ÍÅúeëÑmè8Œìß _Où»ÿÙŽq¡ð÷<8ýÄqÈýâñì& ëÄ „%tÇ—ƒ‡`íÏÓ‘•[G˜@‡Ó m.Þû«»Òð̘7Ùe•Ø»q#:öéCʈ'†Þþ úõê€Å³¦"7-!ñd §.rÛ.gB×™*#tàà–eØC‚ûƒ÷_…¬& ÿûhÒï¿î.ÎÛè;}=ðØÛïá1Ýðü„ÑX¸p.6­;†é?/@Ï8ü÷®QX»~=Ž¥œD—qbbŸh¤œ*¥L‹6]]Ûän“­¯«Â«Oý uÒ$¬\ü?üóû4¯vÄ7SÞEÙ‰xí«y˜úÚ£˜?å”×<‚5ëwbäÓӹМ6!Н´Ýq€WÚÝñ_Šl¸Ñd„³{Fބߖ.ÅÔ/·£C¯¡Ñ#’Ûë6Òª¸¤4,_‰L •Êßðh2—+àE¦ww2§»ûAâáGZ1;°4»3 Ó^F©w==Càìä Ú }W¢æB+ûYIphËŠP¥Ö@Yo„^oÄØý Úy ñõS tõGp|8ŠðÅôè?þNLÝnζ+O&Í…4¸'æ¬>ŠeÇK7ÞnÎØv,…VúëàLÆ€J²2Í„EßÜå¢g{îF=e¯k€Z߈ݛ6!ãÈ!Ú‡w@ §l¥äÊ'=øjç/À‡oý„J_$öuú|1k)&0 }:SÆÁfž;Ûñ«?r ‰G·h¬_½G–á…úÂT}Û7ü}{·£ºðâû ¢ŠYÿÎÓwô4æFês½º Æú"Ì™ù#db„'t†“LJWØöãÍéÂM]i &†Ò(“˜é£d½‘zG"<ÐÎ îç5$xþÝ·ðËœùxqõ<„&öÃíÇC!½²$AÖöÚò[@iÕ55(ªBá­Û©¦9^[R†o¦} ±È„n´Û³b½æbÑoK‘]¯Àû:µ%Y|ÝíŒö¥â¶3æñäÚh=LûåõHO=„“ùŸíîÇðú3£AU#ÐŒ(É9…£©©è˜<ÿûïsˆ!zJõÊÙJœ­™£Û"g ÔÌ#»‘›…]›6C¥×Á‰$p3Ûíç0¥‘êtJÆ73g#•øcÅøeáÄõ‡o¾úžæjÜ· ¯¿ñ6Ôd‰HîÞ &Z²ê)åëù¥cò˜Kcåö#HìCmŽä¨ñäÓ/á?“†ÃC&$ó¿Û×R`$\ƒ‚‚B¤îÙ‚ÔÃÇI¡ 4µn®9é¼óækè˜ 7ÊJ'¦mŒsŠY5+–¡óˆ{1ë§àh,ÇòËñääwpÛ=H õ†ª¦öª)Ï©ÿ¢?$¸}ì0,=j§Ä{`ךßáÑ ¾÷6#c¨:Š”`΄ Þ‹ ª.E~q!6lÝ‚µš”8_¸{…ã¯ý&?>>NœIŸñöÈbS]Q‰»SP›Žµ‡Òß­'Ä%'±}WŠ r°>­.ŽBü¾tž|k fMy©;V¡¨Šõ˜na'ÅLŠ{`.]…8q.¦ÌZNé‚]á…·?~OÞ3R…<\=0aD/|ýùGˆì>¡n¶ §t†'ã†q€· Ü0Öó ·”žää·%µ8:ˆ°jõ*M"tì5Cú'cëš(¬«¤=dW¤î݈Ãûw€9ËE8:À¢ô§U¡'ÄRxx{’½C&w‚/9üÉ-U$xŠñÙ‡ïrÊÂøŸA49«]N›‰à‹À<ñÄý˜ýçnu}Áܯñk£ŽdŠp•c‡AˆÊôCøðÍ4ø‡Çáµ×&#>"ìÉ\1°_/ò;èŒrš töEœ·?LûŽÎr¨H¦e•ÂÅÕî>蕜ŒyK~Â*’ƒr ŠNB¬¯siÅ¿nÑpñŠÆ€ÛÈòA.$d› ­Š£"1•LÌ eyÆ!LQmbgœ aøÌ߫ѱïP¼ýòiŸsÅlS-×tС÷PôHX†n‡‚Rõöu¶L…žß¹“ 5ûQÞƒRçz <’øà²¯¾øe´mƒÞ#ïAzfÞ~ý¨WU¡ÿ}ÿ‹\#…#ÚF@ œ$økηØ4ßR8î¹ëXÔ˜ñÙkXà,†{dÜsûx,Í܃—i{ÈZtû/„“ÞyºÅ5õµµ²bãL–Ž@¼ùÁ«xþƒ¸ïó÷Ðe×¼øìSd!Pá®g^$ ý‡ …ì½ÙçèÖjž¯ç&á€]¼Ü$<å»ÑF °&{ÂÒkÚ´i“ÇŽ;”¦ØöÂ×Ó‹Ÿ™ÈÙ^~mm ô./»œL»zZѳhA -éµ5-ùÅä½/%OFf¡„V›Ú&X² °æXƒÌÌþ×o?`]&ÈŸ`0¢C9uq3{Ç,ŒkãÆB‘pØô¬‘d€2,ò€ÅÈ‹)½ª¦j­ž”o8]F£‰¡a}aíʈ&† §&ìØ1ÄÆÆž”¡P±F¢ŠÑÈ„°A§¥( í­n™…à ¹³D"¦z¨SÕB@ ‰TƬbNˆ©k«)rÁ7wTäÇ«7¢Œ¼ò¹ ‰žáxôá{anÐ@M÷yzÀ‰‘zƒ‰ ñcv9ÙPK¶¨!(Þõ¿üЧ>ù‘þžð! ¶5ÀJuE)ñÇ„À n̈±(.,‚É"FP /ÇWîÆVø³fÍ 6ì| ¢«¬ÙÂÍ19޲.è(ƒ„ð D#Ñ]JVW¸+Éñµ[Vý†¯çïÇï+~†+ùX´uÙNócàÀwP;kiÞ4´u{|ý×ÎÞ2pí¼ãŸ´C0ÈÐÙ¬ÅÓû\° ©ôì5W·³À-À¹&S&8­…Ä8|ƒÐ‘PAõº¹ž«€Xïkö› -›½uŠT`ÅÍÛ>gŸ`4Vš³g/<Rq–2`t‚7}N—óÌýtÒEy°Æ¶&gWwìäŠg@ER¸sù¸$èE$DH˜H çIE 1϶ª69¶UXJwOXÝÏSþD4ž6czš /_ÕûÙ¥ïDuîÃy °LpQž‘Iè~¾¿ìeãM@€>^´ÕÀ=iý#„?¿ý–Ó+VúdŽ €É9tdÅü•ÛðÀS/^Eà4 üßöÂÛ÷J{¡™§“çÀuç@÷AãÐI‘3«ÇëN@5(W¸ ˜>7sñôñ‡g3üß;ïÜlÃÙL/ÏžŠìØ¿Ìï‡+DH<û$t+p€Wn…QæûØ  “jÛ[U[N¾Š+倽èuÌšu= ËWÁüCøÂs 9ðÊ@s\áÏñh!ZûßÚõµ°{<ÎÒÛ;m'˜ÿûÜå–èd{G^hÏ£wkÒ΂Ì-,|PCŽcö&€Ø‹½¡âùÉñÏѱåIy´Z-*Éêk-½Öœ6¬¯%%%œŸ†=Òך}míºØ\Q©TÜø2eŠ«RÅœG®s»Ðÿš‘èÔÓ3®ô?Øp™ñ6Sû:R™"@¡*¼2ÐÜØÓ9^°§Ñài¹"Ðj¨199Ù2jÔ(! -d/5{)ìeM/LKRR’ÀÇǧÅd1ë)”)/æth¡õ•unçÎ Ddd¤]Z.Z<m\ÁîÝ»ëûõë'öóósf«ý˶’gÂÝK›ø &ÉÎ1áܽ{w.âƒÝÇîa Á¥ öª—^ziÝSMöÄ„7{ˆa`³ß,D…bu¹of•cç™Ü`çš×2èfꨣO }*éc?ÿ¤D _.ä¯ \ÈþŒýs€™39éõu»v0Å„ÑÆè² q¼š:lïeæ^rÈê³·¾2:Y_|¹673Óû•>m+Ü­óÁúÍê U>W•í¹KÕM÷ÉúCc˜O÷ZÃ…ÑÆ„¾õ›Ý`{Ì~7WØ=lb°:Y~¦DðÅŽ9À+v<8³€I±Ò UÖ™ÿî ÿ‡çÀ¥9Àû \š?üÕvÄ&4ŽïÛŒSÑuðD$'DÑ QMAÅÁžØ‡¿¶ì@D§A1 :m=êõHdr(δz7©'C¸€0$&€!½\"å]á„‹Œ…ðk„èÈ/Ãme›¡âv@DL,|ÝX‚ Eˆée­…Vg€µëBP½õD§Vó̪!”8À•B&Å„¬h-³µ5µã멃˜A Ia!´E5¡/62£ÂY¡¶»wl{H"¼Ü\à¢p¢h4$@$è#šI˜ÔQr¤r”.΄fxášÀHÂTUWƒ†z¢‘úª; N­á¬*,|R*u$$…•¼VùV•åáXV%ºuí¹Ä‚û $:ÚÊ<NK‡Yà€É} 6 ®#~iU8”—…¸ÄÎPˆL8p8 ±‰Iêk°gç>Tâb‡.É5Hð½çöÑb¨ÇáéÄ÷:•!<¾+º$EB_W¿ÿþ•ªÄuî…Žñ0i*9tÆ •ñ“Ñ!>’Òúž[_«0à"•„Ecm q[½è;”:Fⱉƒ±`æ÷8p*Ÿ`ŽhO-þ\¿ •e¥¤@1ô®ážqÃáíz9($Á逯ú:¬üy)2êDˆ ñÄÆ­£¼¬œ“xdÒ0¬ÿs9Nf硤´^aÉxó•§Èñžå”×VfáÇ9Ë1tÒHN ìo§#´SoÔÍ[v@uM5:õއFu? ñkTãן¾B×·£g‡PÌž= q=†ÂÓR‚y —!;¿A1ÝðÄ¿ABT0) çnÛ³_ý8ÕZÂ; ÄC£{bþ¼E¬B^^.º {o<ÿ@«Îº² ¼óÆ—ø|ÖOÑê^zåÌþökÈ}‚Q—“†ÍNáű O쀆ªB|3õk¼òé÷ˆuÑàó©3ðʯ`óü)8P¨ƒ‹Ð€Ÿæ­Á´é#)ÜŸ ŽÏöÑX_÷Ÿy j¯Dù9ã˯gã«™ßbûÜO°+O‡g|3ó7|3ë{¤¯ž‰¹ÓºÚ s—ü…™t.Â×õ’Aö­É–CÀlTaî—Ÿ`ÝþãøtÆCØðÛ ,Ú”‡×^yëç~Ži?)ªËÃÂ%«Ð'Ñ‹ç/Ág?¡˜›³}nMšøºn>\?õöæãß#;〣‹7ºtîˆI†¢S¬?r3 àÒ“F†”V†Á¡7f$úôì=™ÝƒñäÓÂÑ\öüƒ¬ì˜å®¸óî»á)ÂÁÅ÷Þ5'Sèsi™Å˜øàðÄC°ñÏ?q*«Í9'ØðEHÁ†:,øîKü¾>½úôC^Ê?;àñ'ƒ³H:³wýëqðê)pÈ:CÕ³¤;”ó  ýVî8ŽQãˆ'?CÍI9™ÍY]l‰°Ð–„Häˆ'_|ßÍš‹á ¬X<+ö—á£/¿ÇôYs0$ÌÛwíE)„rÏ`Œxî?œ¬g-6¶u¶Õ1³eï]…O‰Îž·?Œ¤È`ùgÍ!3öíÞ³ƒyE51vŠNìAÊ®M”åÇÃz'|öõ¥µ­xÀ×Ûöà-mÏc¾…ëÄJ¢…“#<Ü]ás\–¬ÙŒÂ" 2¾ ÔÕVÀ…¶  ö§FÚ‘=t½þ!Ñ9z SÇH èÛå%åx£{¬NÀv”{A‡ŽI’aÙ–SdAÐÓ^-H¨\¼ƒ” 5™±kÿ œô(‚‚ƒá0pŽ/Z޹¿f ²Cw–±®ÎÀ–5!¾ç0<óØ$ú¸ÚTJâ]¢ÀÀݱîð ¬Ê«…wh"BC¡)LÇÎÍë ª.E™ZHÂѺ¤,uÄe¡ã„& ˆúZä—עƘMy!t´WÞ¨ÓÂl²î»Ÿm²g¿Ø;ïÌø.Ñ áåá ç†Bü±d5î~ö%<8®7œd­« œ1jx,Ý´æŠSùÄ[d¶¯Âæµëà˜ a])Ì¢Pn±Ëé`Ä{æÒh1Ò–zêž¶zt $$·mÇI…”¶âáïîráví±;‘UÇ×—2X’Ó¥¿—Ùêj8(ýàé,¡s&(]ȧ cïzº¿ÖâçYß¡B ÄõJ[>Šs, g9×úGfòkð‰è…g‡&`႟q×mýi®:"Ð9ÉɽPé«D ÍÉøîý.Ÿ‰©ß|¨¾ãàçæxݬ­ßk¾ÆëÍÞ2p½9η׶ é`0èÉl^¿ð8üçÙç0 S8vÐ>ðßG29á]U’Í×C/rÂ}ÜŽ‰qä˜ÖÈ­ iß¾‘|˜÷¿‰s,cÑB5åùä°UŠœSé¨'!$—ÑvÃeþƒ˜ UuÆ[o¿]ö Ú{þÕFzüy<ùð]Hý{5þÞµßMÿÿT4bÂcàî"‡©OùdК‚T,^½ ‰]’`ª+Ä’µ»Ñ±×@<0á6º;¡ÑHôÝœi™ú¡ÖhQžŸIV‚\.ý‹R龃nÃ÷?€Q#G£S|Ïd­k³z“O¿ø ž|ô>ìÜô'þX¿o¾ù: a=qïØþä‡Aþ LS±ªMÏ·à`àˆq(JY‡Ce@ïÎ(ÌHƒJèŠ?öºGøÀ@N jŽZ°@,§}ôz5ŽIźÕË‘•[ ¥«7‚½0lìx<|ïXÎO‚ù‹œŸêWH\Me96m؆#)»±áhºôWu.V­Û…´c)ØœN¾ÁX¹düh«äý÷Þ…L_…U,‹N zyu2'Hψ<ñÜK À7s¡ë ‘(Í?…¢ÜlÜ´–æ” B©CúuÁ®]GqÛˆá—ME|uTðwßìà-7ûßbý“:º ?;y¥udžo@9})eBøxù#:<©ûv "³ršùªÒ<¬\^‰äœCÂ͉o ?­®ÉaKNÎvLØ‹%”â•9ái‘yŒ„ö7ÐW!¨Ûpù{A|Iȶl]}ýÐè(øJ°b×v8éëHÀ9!,ÀN¾‘0“~ݶ4ŠðëÌï°)$ >þ0¢‚Nû X‡Ð=0 aîÈR‰O¦bo©žNÙó7jJ ̨ iÙEˆàHN¾>X¾`þë‘VPƒ‘¾aÚ;»ÉɲÌÉY¹UøwRORûø#D“sÝÓÜǑ֚bÑ•ú8qÂ8Ô¸w„—Ò ®Éƒ·i?¾š:¾~^PÊ (¬ ½ü¢0rÈêãL(©¿]ú&#¶cO<÷hæ/š…%äï”|B|\Ȳ¶Iyáˆ&N'räLݺ ÇwZßo&‘™=\fÂŒ¹?aûŸ@Çþ1fH•â ² lu”‘ÇpŒìÞ¬Ó¥uœZûÛÍ7 Ï?äH¾'r¼úá4ì8tжNÑâ`Z†ßû&Œ)qþèÜ{ z$…—™œ­M(__»æ€]¦tm×å‰o3Ðj—­ÃÞÞÞ½¦M›6yìØ±CP‘mÑÑJ1+#&‘”<à%Ès› ‰$äY ?sîô—‡‡÷9¿/öÃ+0^6#IÉ¡O³…ü' ~Á¥ý£Ç™³…ä\GÖ 6ÄBYh¥ñqØèqç<ëågíÇ9§Ûüs s¦+Š"8¿ÈÎßæ )dÓZb:&Ã?ê\Y È$Nðr÷ åì¬"Àž‘+\pîÇZÕGþŽgÚå‘›Oüú÷ë}EŠ€]v‚'ê†q€Wnëù†ÛºDò³S*Ï ™öDÿÅhõ"GË1ô¹™‹ÌÉìsnñ¢=øçÎ=ÕÎ…ÆuAh\;ïOþ 㯠Ü0Öó ·'°$CŠöD0Ok»á€u+¢ÝÌzSr€WnÊa½ù;Eû›¼w” ³5²ÀŽHj¤"`i¤ÈæÇÀŠ•LA`Ç­©(XëdíUÏÕÏü?­v‰/·(xeàøvÚí¦—Ë'Ïœëì­°,£M£Ñ ŽÒǶ´°z¬}m+½–ÐÈ0}¬¯Ê©À—æ9ÀæEs…ø'¨¬¬Ô“pf@Brä£È3µE§Ó‰äry#ùs0þrç¤R)锚 ;g0(…„)œC8;¦z¬Ö.)Ü1ó IŠÁ”j‡=£ïÖ­›¼wïÞS§N• 8Û¶mCLL GnJJ ÆŒöíïï???¬^½š»v¹?¬þ“'Oâ×_U†ËÝÏ_¿±à•˾õkà½èDô’¸ººZèÅh71ô¶°—vjj*ST,D[ݵˆ>ê«¥°°¢*)ÄQÞ¢º®Õ}„õ• –ãÇvƒ3¡5 š‹>t‹^`‚™ åæJmm­ËÑ£Gu$À‰§,¾“Í£»»»177WÒ@c/eÏS>''Ç‘«®®ëõzaPPPCff¦<00Ð@Š£@«Õ CCCõôÿ!£kR(t¯0**Ê––æ@ç( Ȳ²2E¼œœœ¤ï¿ÿþk …B{êÔ) µÑH‘ J„eq¤ÄFlÞÑ9.bD©TÂËË‹s®eÊÄ¥¢Øü >™kjjXHÃûôIk®ÿü9ûáÀE'©ýÈSÂsà4èÃVC z!õ™2eÊäqãÆ a¡…{ÑÞ¾±—ä¦M›šB [J½Ü)©ÎÄÅÅq¡…-­¯5y†cûö휀 aÓf¡…­Ió¨ëô´½°e6–ëׯÇðá-KÄêam°o6ÿ˜’FÖ¶ò§äY\¤)Íœ‡}³sì:)œu}³gÙ\cгòâÉ {•JÅÍ;R(`K¦ ”””pÇë—mOwíÚÅ, ƒéÜ6j£yÈöþø†q€· Ü0Öó _+è%Ä­J™ÙÜjö¼ÖºZû9ö¾c4Y?-­ŸÕcí§½õ•õÑÄVˆŒFöáËÕs ¥2Ò*”Ù·uŽ0E€öÛzŽ rë9ëu&üYaÏZmsw…‚»nýf?ØVÁ•–3u±†Ùä¸0ïõ•VÄß׿¶y |<Z—Üê‚)-}‰¶.Y§kkmšZ»¾öÐç¶ ‘¯óÆp€Y*¨0g’Ëg@º1$ò­žá¯ ðS¡=q€mðs¶=O+ÏÓŠýcç3±Úùñ䵜Y]·Ž\ïö®[Çš:½7Þô“?h MäYÁsàZ9À+×Ê9þ9»ä€¾^Um5t† ·'Mú¨TÕ¨o`¨w×§uj% ¤*•– ænëVu¤;‚ò!ëµuk7¦þ‚¡N9xZ=­Æ€±Gì…ªÁtc„oõ¦à¯ ÜÃÈw‚q€ÁêfÿëÖþ‰ÙùÐëP]UòŠJ4èt(Í9­ÄÁÔ”ß5!Ù••–¡V¥æÀwôzÔä=]UU‰ÚZyZס¢¼:É1X޶^‹ªŠ TP¸•b¶¯¤4¨ŠñÓ‚åÈÈ/¡:H¡:õäÉ][S’ÒRh´ 0“w·JU‹*ª·†Î«êˆ‚P¶-³µFº—•­ $ MTWõ±´¬ZúÚ",˜û#ROåø–Ã`9eê‰v†9@kjÔQ[ZƵ}QŸ‚t®¡zKJJ©ß:4š `åUUÕju}«GqIY«£>ž¦ÉBãSG|n„^_r¢·¬¼’€œˆ®üØñÝ÷(#ZÔHÄÁ ½jz¶‘9¬ÓqUeõ±œ”‹Œ“ÅÌyÏ3^”––@Ó ?Ínz¶š ‹‹KP¯;£lмâΑ}Ó¹ÓwÛÅ_³®s¾ûEµr¢ùP]ÃñÁDó­ŒæXeU ÇÓzŠè?­$7uÜ<³‹ðDØx÷_»žˆÖà€‘ §ìÅë÷a ^ކ œ:qj“ñ qÐÇÊ•!©¯.3²N¥!·¨ ž¡èÙ£ 4UÅ”# „¤b9…WIIÔ¢SÏA„î§Ç±SÙ¨&å u×^ýÑ¥C!^œcÛ&ؘ@3éµ8¶ïo¨LòqÅ|“RQƒ è$ôî‡Ôƒ)(¡—8SFž¡=|¼½Ü¸ªôšJìØ¾‰]{"<À»wlƒk@58JÊšàz£;tF×0gÙϤ×`ß®m‹íD÷{bÏžÝð£ÄõJq=víÞ‹’òjø…Ä¢Oïžð£vh£m)Î9…›·¢Š„~PtôLÁž]»Ñ@JP5 áàØdŒb…;²}òÚkJÒ±aw&FIãcÄú5ëѱW/œý¢¡<[þÞÏ ø˜½Ð·g'8;ž:²Rg& ¢«×¡NWOŠC¼Ã0fX¨ NbÍÖí¤lÛ#ÂX[’‰µë·@MÊW0ñbä°PHíéÕiá”3Í‘váP~-&ŽŒ“vâ@j„)» u9P# ˆ¾]w|?vghpÿ£x'뤸ſíiFßâCÁw¿¥`«^ ’‚P,€¶º+—íBNq5<=•¨ ë€ ½ÂB¸ïIˆ¤: ±T†û¡ª–àƒks°aë^ÄÊ ƒ>†³7B<‘]ªE’¯óþø:w‚PSˆýiùxõågÑ!:äcÛ~°-Ö^ʶÍ8¶@ú®uØŸSMJGO圮3YêP‘ŠeËW!¼ûíœö>OÈ/SÒZüµìwT!¿/Å1㑺oê,2@U‚mû`òî"Kú·&a·áÏßÑOì†/G¬]³I}Qvd=R TðñPbåêͨ·H0qD?¸8ž«Ô¬[ü+nÏF×NÁØ{h1|þó0jˆGY'aѲ ¸óYw ëßÕ¶«->6äòܾCA+›²0û·x-Ðóæÿ¯ðXTŸLÁ¬*¼zWEbjK±xÁ¯ïØ®.ZÌ_° ž>þX>ë¨üà%7ã÷•Û0å«©HŽ?öؤ­ÅÌÏ><¾'ºÆøâûÏ>&*'lùõKÔ:‡"Ñß_ÓuWŸ/‘õ×OXº§½»‡bǼèÔ­"|/„¯n1®µšc´ôǡݰ|áb$¿¥§þÁ‡Ÿ|ŠøîP“ŠíGŠ1ªžÛwXH9pA"’`‘ÓV”Vä”ÝÚ´@;Jèy­¦õ9H :ß¶Þ m’Z³m5ô‚¶²YYÙíÜÉ"Ñp‡NäÁ?4 ÙšÌ_½ãx‚¶" %ëÆù¥ïÀ¾Ø5c –ì-Dÿ;ƒ“ÀÀeºùÃÝAG}&¢×BûáLP2_æ+¡ª*#Ó~%‚è·…buEÑ‘w7?„@N}9·4"¾K2jN"'ý(ö>‰€¸®¨;ºŽáÍ?@ Kë ‘ £oë‹WA§*Âc¯?€Ú’¬ß´‰={À@òLfÊ_C}d~ŒC&6´S¡- ?:ä]¡´ j)"Âãàïé~áX‘2!–±„IÚ¨£ñ¦äÉ¢•‰£y0‰ o0 ›æ[cƒ]ã;",®#zÅ{`ÖŒÑàŽ>î|CöÏK¬iìŸxžBžçs@Dû£µ´ïžzxö¦†Dé…¾½ºÓž1½ Û¥žJvF:Êh¿>$4ñ±±Óþ¯FSGŽ‚&$I’Š%”ÝeÔŠÈb … ç¬#ûiß~ ~_²JƒìéáZ˜^²XH@{†wÄ˯þúÄzaÓÆ X²x9ªL8d™ð•äØxßÿô+ŒŽž0Ñ>øAò”¯&'ÂóKx|7xŠÔÈ©Ô#1>”lõ1:wè„0_ˆŒzT×h Kà s¤Ô±rKÙÕË— 3»r…’bÂ„ÄØHÚ2‘ÀÉÉ™ëë9mÍ;·oDIŽá£F!ÀSÃû·búìʼnK@IFN%Å贃݅jË9µ]ÕFÀTt ðFçØ@Ú@ªDr·®ðv‘à&GË:¤:)á 0ãï­[±tÅ ”Wkáå‚1AŽŒ@bt9Ò‰á¢Tœ¶ØP" 实œ5×®Zƒ ëVcOž }߆HE/Yí›×!¥T‡qQعiÔBwŒ?žrêê ¤pXí/6•Þ C3)ž¡xóýÏ0®›/~øyY›"äë†ÄÎà*‡Y¦€ÂQq#bÍŠeè6˜õ…Ïtƒ†Ì.›½ûî»vIOÏó9ðÞ{ï1¹ã@à*A#FŒèMÈjá,׺ma/ùòÒ 88»“žòÒO ¨²]{ôÁ ¾=¡!EÁ(tDXx(4•e(­ÖÀÛ×>d@dT$‚ÉDOk-øøù“ t‡@âKC ÒK(@Ma‹ÆM¼ H KiEi[˜ÈÎΆ¯¯¯€å|g äÀ$2³W«uHˆ AqQN’É?´c_ôêM÷‰áHºGeyTÌPã\]œeï0™àIDAT¹òåååä÷à 'wZÅ‹hO½3úvï?˜êª‘–žŽFÙi¶åàCÀ2I;ÓêÝ™'QÕ`Fd|úĵ•G¾ ÇŽŸ€$9/vK„N«kƒÒT’~FÚ«?¸gNed#*©úv!W¤>WDÀI´ŠO¢-™’âbÈ)Í-£ïRÀ5¶<ºÔ±ƒ)X ’zF÷¤(ø0NmQ.Žgd@%ñ48,’ð|Э[¸@;rä(õß¶X:cØÐáH uÇ}ûq2#Ýú £­?ê_ùTœéc%gVß¾q N( ¥ƒÆáî £⃔}»‘™“‡žC&àŽQÈ‚¢ÀÞÛž™K“A¸c49^ÆqôR}´½–AýŠˆˆhJl{íJ-d «£ÚØŽ½Ð­c 2Ó³Ðôð©°gÿAU™p×}w#„”‹QCÎ)xùÝ×衸Ò&®ù¾¼¼<Ì;w1UA²æ"¡×\=ÿ`+r€*jEfòUµ-ȭÄ¢ÖkÚ´i“ÇŽ;Ô6zs­)ôŽ 9xÝóW° °…9rN…gö ›«ƒÛ¸d¶åˆñð]´z õ½¨6ۦظqcPÑÅêc¡zÌ;^B9ä…—Øn`0ÍÇŽC,Y0lóÃÛÖk$S93ssΊtÁ¶ŸÌ2! ë†maÛ”„€=Sœ†[w¡‚òX‹›o îš8Nd11˜Ì‘ÂÅên®0 "޾¶Ã& ˆ ‹t kMs…õGH9ømK#Y-Ì…!¡>¦Ø-»¡æ‚µx¸:bÛÚ-xqÊtćøž¶¹h¦HÌFà³ñÒ ŽàÓšeÍš56l*ÔšõZë2èõä$+åækuq.~ùù+vÄwß¼ Ùe¬ZÖ:ZòÍæÁ"ßAu¬%E™Á4óÅN9Ðü—Ë“Åsàj9À„íÅŠÀ…]¿ˆ¬kz4"¡ Äþxº9_Thºù DbÚ†¸‚¯à‰<_dŸ¯°ê˜à´ê¾!Ñ´j kj…Y6„tQ*#BL‘·M \Óࢊ«î|E€‘5ǪDuè‰PÚb±ÖG³‘¶<üáãF[ lkȦi›Ev^¿Ùx1ËM{+6–³z ½m”zâ©§î¸.Š@{ãÕ­No;œÞ·úñý¿ïŠðÑp·)"ÁçHŸ›¹HÈ”tƒóŠÆNœpÞ¹›ûg m Mžœtsw’ïÝ5sà:Š®™6þAžÍqÀ~<·š£Ž?Çs€çÏvÈÞ2Ðí'™Sh¿Ÿówa&_{*œ šüØwkÐÆ|¬uµF}­Í++mV:[»þ›¡¾K»ÆxÇ>¬0?æŸÁ¶°L”QùaXÏ1Më9ëýì»ÎÞg×Ù5ÛsìØêûÁŽm¯[ùÌ®Û>c=ßÂoÖ¹sók·°BþñÖç¯ ´>OùÛž–ÚZ–SžòæS¨ =ö"e9üYîëKµ%ô±þ1/VŸžœÁì©0ÁQUUÅõS©Tr‚Ëžè³Z˜¿Xac[L’3~ rrt¤è ‰Â®yQ4…Fs¯¢hþ¿½+ŠòÊò¿*(ö¢Ø dWEÜ·(‰[’N:éÌœÎt2=IÎLÏä$3}Nºû™?:3=î>Óœ33‰I;‰Y5‰Fmw\PTPA­ØªŠZçwK+‚"ø½s>Šú¾ï½wß}¯Þý½ûî}×5¶ÄÔh4º¾V«uÝ áÁXŒ!A` ÷ZZZÐýžä•ߌÛàVÞ•rd¬Ê3IRƒJ^¡AÆomm­‘}k4™LétШUö•îNóË{·-7¥"%y$0à‘Ý¢Õ\jN®*ÕÕ«W2‘ ‡Ðí§¾!ÝvÓÁ P&s§xÜo’I_„… !EðzR’•¥Ð&4 0ènéItŽ6-¼*Ò}%òÏY]]ýÒ[Æéçç'‚ZEîl¥;¬$yƱ¥¢ vÒMR%«Þ“ü*Ž×=«ÕˆÈYQQ¡ž4i’ƒ‚]%‚?..ÎY^^®NHHpH¿Ñ•TÅߎ“¿!Ull,nT¸v횊@ÂYUU¥dü¾þúë§g̘qÏ‚ùÌB0ÑURR¢ãoÐ"yúK|f'p0`ùN-/ÏRáõGøC|_q-|ˆ;¬5ŒÌ>œ¨–Òµðçƒq-é6Ê=×ÂÁÒ5×ÂÁ–õ Þ×ÂA¹g”I×BçÚµkUnÍ€'P% V~j r›ÓGºÑ%B]~‡}£›Û/ÊsQÛx šig¹wËÃ×”4ZP4£Åy¥Þûဲʸî)y=†Ý%O!ê&æw[ƒ7é©](#m¢êŠÁ¹üFeDòÉþ–ò›%<9)`À“{G¡­7dE"×P&¥Þe(ß($ä  ^÷j°" €x‡ê%y40àÑÝ£× (Iá€Â‘ããB)*þ‘c÷èÔ¤¬°F‡ïJ­ DÆb±Žœ*ØUâÇ 1»ÝæâéÃ2„z·S<…±³ƒfÔj„†…3ôñÝñ5jñ›wâÇ/þÁ ›Ëó즣­€¥ Ú0h§•tZY/+…7cÑë±P ¹“ÃnE+ýÄýéîÃh:Ú[ÛÀF^v´ÚXÇéT·×â‹O7âñçÿ™ïy!(Пn‰ò~äõƒ¯š€¨…î€] ÖA˨}}Jr²¾Æ¦Fú®[¡ à‘Å^h¡‹›ýÖa6>¾¤ñ¦º›Æûý씾bDà ú¸;l¬¯“lZ˜ØÖÖöNxûø#\†¢SGðÙÁ:ü.1Úå¯ÕÒ½”„:LfúØÃn5ÑG¿N†h¿y_Ím>~G#5(mä‰aŸe èØŸ:©—í–Ž”($<Á~ìï52²ô‘úAõûwõ û?6|ðñGø«—‰ : CV¦‡£IºhTkµR«©VÒ,¼a›š  qéa'I)p\p@㢕F,¦vœ;›‡mûN Äκ+(¹p6 f¦Í„±î"vïØÔ@°Æ‹ Qy­a±IX¶d!:šªqöl!L&#Ãõú14/}½š1éZDiÍÈ/.ƒapMóYÅéiÐô ¡Ü»'dq.§®ØI[þѨnw"!*…EÅhl6 aÊl¬Zœ†‚S§PKáÛÜÜ„`ýT<ûôDG…¹Š“`C–¶8p²³=‚äÄHd8€°‰Sak­ÅÙâRcÄÔYó±dóP% ¡j³³ö!9u¦$èqôèÄM™…ïvÍ: · ÓñhÆ#ˆeg¯^>ãU—Ïc×ÞL:̈:ÌIBÖ±ã.ÓØp“f¬Äž\Ö»¹÷õýÒ¹×Úñì“«`nªd?žÅêÕ q:ë0ªšÈG?¬{æ9 eá¨-uÈ<ß„gŸÉ€¹á*fŸÇš'3pñlNæ—ÀBúÅË3\ýä×-˜“i§Æf×7[ÑF@ÖÔxú‰©øÁSkÑ|¥;3¹@›´û©õ¨,<ŽýŒzh·:1wùj¬Y9>ôù­D `ìÖâ‚38•W„N éÃû÷b_f²ŽÆ·{ ®þíÙŽ¿ì?‚†×±cïƳÏć?C½Á„Žº2|ðçM(«¼~WÕ¿¸g9mfœØ¿ ÿûþÇ\¡uâØÎoy<ŸZ‡69tå5õPQXu¶Ôá«Ï¿ÀáÜB®roos ðòV#kïNdå1ìp ¾Ùº •W˱g÷nÔÔHS%6}ü).WÕËé4pZ:pdßv”V\cø_3fDþ¹óØøÞ»8pâ Wü&†³ý{žA»ñv]î®Ø»åìND§LE ÕУ“+b*˯ÃÊc}|tXùèÓø»çÅW[6Ã+|"ÖΊÅ'Û»¶¦/X…~ò·ˆónÀ«ÿ¶ Mí°r~¥æ½ß¤¦Ú¶íz Þß’ƒôõÏceÆ*uÕãRÃ%øG 5& bâ—š Ce Rçeà'¯ü b#o—é°C£Æ²³PTV†CMÅðLDòÄx¨Úf ‰²¼³Î kU›kýæ^² n'xqÛA©UæmuÈ=WŽ”¹‹0iòT\>_Œúº®‚M ì©áÐqû"PÛÊPÆ!X4_xj!R“bQ–—ÕO¿ˆøÑÐr b8Óœ¥!ú½/qö|)r RV=ñ2"&!}þ<„êBH£fª»íÑ7k‰†[ .¿xnéÈ©}eY¨ër`]b,ü'hpºä¦ “béÚ­ŸA¡z¼ôÊO±fa2 rp$sònø`ó»¿À$} j󡏸<"'Äñ=;Ââ'Cå:Ó8Û=´²ÔPw5âÃ?ý>QÉxëï_BKîg¨h3áÉɉ²kqøäײq>Ÿãx~Ž=õOÿ ‚¸¥$…ýq@ýqF¹?&9 ‡¸˜::a¦€L››;÷É/æá|y5V.œÁ8ö6´rµáòäWcfÊDjÕ®3Ý®ýzK¸¨Ô>PQ€:yŒ¬K+M­ƒ“vb|Øâhs­¾5Þª»xàdf/ï ¬\³ õÕ(-)Eôô9X¡Ñáò• 8°/âãQl¸„/3sð×/ýR’ci£p§õßò•ËõÎgø*» ëü*|&ìÛqSåk! xÃú„" ¤½“«æFÖÛÀØqÉÓ¸ýá‹ÎQ’&r !¾½„½È¦¤-À:ÿ¥‹ÈÌ>ÈäT4åmű+MxóÍEx0íîªÚòÕEã±%©ØþåGZ*¼¼ ç÷½ƒÇK±b‰Ë^ÁF'žbÉ&ҎÄVÚ_\«©F3m>TT“kTVÚE`¦ÀŸ5o>"iÛ@¬Ð31¿Z£"ÈkG»¡®@n @µ·µ Ã׊‚Š0?¤¯}ŠGõÖ ´ø r/5bõÚÕÐÆ„»¼èYèH|sÒÎAEO šZ“Ç æ«â¶m Zši'`AÚ¼…Hš8k–ÍÇ×½‡†f/üãŠY=lPF‚R¥Ž±ÅnXyl®P«p /xSøZ (ÊÏűÜ\ž”â‡ô9³Æí5ÕÜ4D»|¹Í­F$Ä' >&†i…G—+a®U^ðæ*ÊLJ‚ÞøQHøQM¥(—êö}øôË­ð ƒ>B ²ú¢âö=qÏÖ'Í«?{ÎMÀ¡#ñÍæ¯QÙdœù ICšk.aã'_ÁáŠÖºjäœ<‰¦Öö;DmÂôtĘQoTcæô$ .š¨0cJ2"‚Hw—‘;Iö…O@ Ç‚P›m›· ¼²!‘˜—š„HÚ"ÄG‡ÁÊöú°m²Âqû²áø‘ݤ± ‹—­À¤˜(”Æ/ö ž…‹çrq‚†˜]tq“Ô[ÎÞnýPÿSaÍã£üÜYÄOŸ‡˜P-Ì4Z ŠÇ4jAÔš@´4ÖQMo§ŸÕûz¨ŒµØ`?¶î9 ™4c>¢#P?'¬*'|¸-$ ìvûdÓÆœô:ÙµÛAÛ¿Áé#V®þRBíØòù6ìß· ”S±ëë­P…ÇcÕŠEòeAé™;±ÚP{ï;თ^û%^{q=>ßô,Á“ꢇ¨`5mdìð¥½ËÚï?ƒÓ™{>u&F…Ü ˆî‘%Ûøä€›`|öë¸lW»"zƒ›` c¼ÑWl‚ö–(*,‚]ãÏ-/TV\E—M¤©)˜–ƒ+—Ji4ÆÈnœ,ë®UQ€øÀO£†–Öû^-#¹…SE £ö Bdª®7 $g/¾Í«ÇÂY\…Ìš¿ˆ†|±ÜGï‰DàtM`¥]@Á¥jLž˜ÐŽ¡ðb%B4¨âJ³«öˆØ)˜–†‹¥—`hë`óœÔ…c1 #‰®ƒÁbŠŠŠ’’âŠ2W~¾€{Ãv¤ÍLA0…\>CE]‚5Ðb±!&&Ž3¦°½M×]n6•7bÒfÏE :p6¯À6ô1Iô¡Ü_®tí»ß4¬?Di‰zœÉ?GOõø„DLŽBQiùMÒ¨MIJ…ó‘›sÒe±/ôI¸ÝûMNz=|”šˆ4$'L@{S m9NÀl£%”Žš &&Æ£Ó¬Áœ 8w"åõ ŒÐFµ0ÍKGyÉ9_ª¤¶H]¸h®FûPØõ&)$xDêRû´ê-ŠÝ[}mKÜ MÒF/ ³á*ï^h(Ð7¶Õ1žŸyâvó[ÆÝ­äú͹¿(Ÿã“Šf`|öëxn•LLƒÁ਩©A`àð‰; Œs666¢¶¶V+<¸Ïdârú /R Î0Öôô#zÀšˈàn {ü›ßÃD¢Ç¿t‰¾ÿ¿Ÿî ¬O  Æþºù¿l"á÷õë ‡[ª Ëß0ÁçG/¢¾|å€ÏŸ!¿|Ë@lÞAv0í‹yXZý5} ma ÷…¬C"t0üÎ Ÿkû¿éñq~z–0¦‚é9Þáô\=F4=ð5Lo‹´u€1?Œ†GÙÀŽ(h>ÎÏÞéo™5/oý¿é„ÉÐä· ‚žar0ö9¯°Ù ðXE`€7ˆap$€9Ðú·ÀaNÌ þà=ŒáÁpŸ`þ–ÓûŠá¯~¾p¿ÿ®‘QùÁ±ªŽ~0÷àÙ=þpã/iÒ¿îÿÃ@\j^úcÞ1ðw€^pHlÉ×/‚ ¹Þâ“ OIq‚¬´ŒôûÿÍq0gý6ö»í¯¹bzþ-ŽY5>8¦Šÿ¡y$ÐÇ/í—hü4<¨ðŒ ‹ú­upA @G(+à|@~ϲ@¨m`L°.à(?~p †hp$‚.‚Ë ”‚ pÜ  ´ƒNÐ ÀS`,€Ï`l€]‚°b€X!nHƒd!eH2€Ì![Èr‡|¡ (:†Ò¡l¨*ƒª¡¿ V¨ꇆ¡Wд}ƒvHàD"¤Ê„Âqá‹EÄ!’ùˆrÄMD¢1€CÌ">#Ö‘I‰dBò %ÊH=¤Òéƒ CÆ#Ó¹Èrd² Ù‡EÎ"—Û( ŠE@IÀqjŒr@y¢BQñ¨ T!êª ÕEÍ¡VP?Ñ84Z ­Š6A;£}ÑÑèt.º ݈îA¡Ð † #„QÂc\0Ç0Ç1˜L=æ!fó³ŽÅbY±bX ¬–ˆÀ¦` °7±°#Øì%7™,™!™+YYY.Y Ù}²²d»ä´ääªäVä^ä±ä™ä•ämäÏÉÈw)è(„(4(ì)ŽQ$RäSÔQôPLS|§¤¤ä¥T¡´¡$Q&PæSÞ¦|L9G¹MEO%J¥Gu˜*’êÕuª‡T¯¨¾ãp8Aœ6뀫Æuáfp[Ô Ô’Ô&Ô^Ô§¨‹¨›¨G¨—iÈihthŽÒÄÑäÒÜ¡yN³DKN+H«GK¤§-¢m¥ ]§c “¡³¢ ¤Ë «¡ë§ûH¥¤7 ÷¢O¦¯ ï¢Ç€dàcÐcðd8ÍPÉÐð€Çà…ð&øcøtü-ü ~…‘žQžÑ‘1†±ˆ±ƒq– É$ÈdÂÀ”ÉÔÀ4δÃÌɬÃìÍœÊ\Ç<¼ÉÂ΢ÍâÍ’ÆRÏ2ƲÃJ`5`õgÍbmf}͆be³a‹f»ÂÖöĎgWc÷dOco`Ÿä@pˆrØrç¨àxʱÎÉÅiÄÂYÀÙŹÄÅÄ¥ÍuŒ+‡ë>×"7·&7‰;‡û÷'#A‡@È'tVx8xŒy"yÊxyvy…xx“xëy_óQð)óùðåð=â[áçæ·à?Á_Ë?)@. ,à''Ð'°)($è$xV°Y𣋉PœP­Ð´0NXK8T¸\ø…FDYÄ_¤DdH!ª ê'Z$ú\ !¦(F+G‹«ˆ‰—‹OHPIèHDIÔJÌI2IšK&I6K.KñK¹JeIõIý”V®”ž’¡—1•I’i“ù&+*ë)[$ûB'g(wJ®EnU^LÞ[þŠüK …³ ö•Ãë•ø•ܕЕ&”ñÊÖÊÊUÐ*º*§TÚU¶UU#TT¿ªI¨ù«Õ¨}TR÷V¯T§Á«AÔ(Ó˜Õ$hºk^ÕœÕâÑ"j•k½ÕæÓöÒ®Òþ #¢sLç¦Î²®´n˜n£î¦žªÞI½‡úH}#ý4ýAzƒBƒC^C_ÃZÃ#£ãFÑÆfÆYÆ&œ&ž&Õ&+¦J¦'M»Í¨ÌìÌ ÍÞš‹š‡™·Y ,L-.YL[ XY6[+«KV¯­…¬C­ïÙ`l¬mŠlÞÛÊØž°í³c°s³«±Û°×µÏ´ŸrvˆtxäHãxرÚqÓIß)ÛiÖYÊù¤ó€ › É¥ÅëêèZåº~ÈàÐåC ‡§?"t$æHÿQ¶£G;Üh܈nwÜÑîNî5î?ˆVÄr⺇‰G±ÇЧžgžçg/m¯¯Eo ïlï>>Ù>}5|/ù.úiùåú-‘ôH…¤ÕcÆÇJmú[ù_÷ßp ¨$ tl ¢òêæ Ž  I ™ U ½ºfV… o‰ÀÛç‘‘g"ç¢4£Š¢¶¢£ïÄÐÅÅ<Mýgwí8ê¸çñG'xN$ž˜;©s²,Š÷ˆtŠïTò©…£„‰‰þ‰Ï’¤“²“ÖN;nKæLNH~wÆèLm uJXÊÄYµ³¥çPçHçSåR R¦y¥=I—NÏMÿ‘á™ñä¼Ìùüóû|. f*f^¹ˆ¹tq{ÃöFwµRuu GMf-¢6²vñæá›C·ôoµÔIÔ•Õ3Õ§ß·#oúËý¯ñ³†Gw”ïÔݸ[ÜÈИÖ5Å6­4û5϶¸´ ·š¶>jSkk¼'yïz;O{QcGæ}ŠûÉ÷÷Ä=Xòp©Ó·óÝ#·GS]Î]/ºmº{Ìz÷övõéô=x¬ñ¸½_µ¿õ‰ò“æŦ§ OŸ)‡|Þ]JùB÷¥xYxùîWí¯OWœWVÃV÷¿e|gý~}M~íѺõúÌFàÆîfÚëÖmåí¾§»Ñ?°?ò÷DöÚ~šýœÞÜß!†íp‹ðñàÛu8‡ps‡!(þÎ)~IÀé ¼…@À˜œ†8 ËqÄ 2%ƒZF·` ±Éd§È³))ßáø¨#h&éÌèà§™ƒY™ÙÂØ»8ñ\®Üe„y^>Gþ3µ‚…^ /‹l‰AâR%…FÊ™}9„lwÄýè1·h÷$b¶G­g×ïm_?q’þ±£þéeAMÁð··EÐF¢d¢ucìb½ã¢§ž(>Yßuj"áSâÖi(™ê KŠàYÅsf©ži§Ò¯fôÿ–ÉsÑ>ëtvõ¥g9«¹ø<Å|炘Âü¢æâ±’µRüUù2½rà ãJÓkVUö×ßð®­‰¯Í¸Y|ëV݃ú'·Gÿšj˜»óñîrã·¦Íæ­ˆ6ì=êvÆêŽÕûcZ^éL~äße×­Þ#ÐKÛ»Û7ÿ¸­ß¶ÿÓ“ŒuOÍž~zvŽ¿¹ç™CÚCÃM#Q£Š£[/ÚÆNŽëNM<™ÿÊcRbrcêÞtÂkýò™Á7Y³s¬s¯ß^}ç5/6¿»0ú¾þCúGÒ¢ñ'ÁϨÏ3KM_Ò—|•_a_eøÆóÝdíüúòfÐ6rçö€Ÿ²ûûûŸJBP#®" k¨*´/F KÝ"GP )Å©q©ßÐJÑ1 ñ'÷˜O° ²Ñ±›p$s¶s-8x´xðEÁ1.xA(C8Eä¤h˜˜·¸ƒ„ž¤˜^jWzAæ™ì]¹bùÓ ¾ŠfJÊÔÊ+*Cª j—ÔÃ5l4e´è´¾ké´ê^Ñ;£``o¨a$`Lc¼c2o:hÖj^aqÁ2ÎÊ×ÚÉÆÐVÉNÄžÃÖí¸ã´âüÁåµëÈ¡¾ÃGÞr»î^F,ñ(ðÌ÷ÊõÎõÉóÍ÷+$å»ä1à|`ZPjðÙäÐÓaIá  ‘ Q‰Ñ§bNÆ‹=s"ödL|Ü©“ I‰g“.œÎK.;s+¥ýìÀ¹©ÔOi;çÙ.ˆeª_´Ì"fG\:—“}937#/-?µ ­ð|QVqnIÉ•ªÒú«me½å£³•_®m_Gß ­f«á¯•¼©|K·Î¼Þé¶û_> þw‚î†47ù7û´mul3¿§Û®Ô!qŸ÷ãCÔï㚻²º}{Tz1½Ã}…½ú¥ú÷ž <õ{¦2H98óüÎPê0qDu”itóÅ˱Öñ‚‰¸—®¯T'Y'·§^N·¼.˜I~=4çÿ6ð]ä|ÒBÎûš]_/nf[2ÿ’¹üaåÈêÊ÷ÊõØÍ€íèݼ½Þ_þ§ƒ³‚‡t!„(A ›PŽh4º ‹5#"ÇQÐPâ¨qÔ4%´Ãôt .øTÆÛL“,XVI6+vŽDÎ,®bîBO:o Ÿ¿ŽAà‡àP¡ðQ^‘yÑ*1’¸¸ø’Ä-É ) ©ÏÒ52$YAÙ¹Jy¢«Âˆbº’Òžr“J°ª°êµl>[¾~¤œcáþ¶Ò4ËAÏ‚o†d„†Ù„+D°FìÁ«tWtUÌÙX¿8“ãÂ'ÈN|<9ß}ª5¡.±")ÿô…äÓg¢SüϺ³K5JSM—Ê<Ïy1“ú"6 Êú‘½yé[Ηˋ¹óySùý­…7‹*ŠKJ ¯––\­(«-¿SÑQÙ{­¿êÙõ‘/«gjÞ×.ßܪCÖSßfÿK¸AþŽæ]£F›¦CÍÞ-A­1mI÷2Úó:ÊïßzP÷°ª³äÑ¥®sÝ'{Bz=ûõ+?àxJ÷ 7ˆ{ŽâVqqslv‚í¥Ó«’ÉïÓî¯ßÔÏÝÇ¿Ÿû¤·ìú]s›îÀÿ¿kKkF€ œ˜°zÀ•‹p™d.›l`À^ ˆF­PÂ?ëÎ8àlS ¨#àW;¢àŒ2Î#[áìq,Ãù"‚T!KÈІ2 *èôÚƒ3?M„;œéU#†;HA¤=ò ²ù% çj娷h~4 ]ÞÂèbÎc¦°âØxì(™Ù²·äºä•ä!¯( (ë¨X¨’©¾á¯_%iÛß. >òN×A­EÝEcB3L{ˆö#]=†¾€AŠ¡ïÿÉX̤Æ4Í|Š…¥Ÿ5”­—=œƒ—cŒ3K—k—»‘Ê#Éó…·Ž/˜_–S CðŒ¥0·ðªHh±X¤¸•„¸$•ä©!é&™Ù¹Pyw[EC% eIUQ5Au~ ^M^-^m>]!=}qCe#]c WS’Y¬yºE©å«'Ös¶X; ûH‡zÇEg~7×¢C/0µuËrò ó´õºì=éËçDêð§ 𠼌  —ˆ¸¹íó"ÎôxïI£øç GWNŸ;ßÒ}Î'2½éü±L‘‹ß³Ÿç´ç¶å?)üXBWªRv´â̵ºë/k ›¢u¶·cJïv7M·lÝcîP}@ìÌèjïùúXð‰ûÓ‚Á;C=#C/FÆŸ¼¼7Y5>0kþV|žjañÃíE¯Ï˜¥ËË4_#W¾á¿[­X¯Øx°9¶õa{uggwú‰Ø‡~ù ×›¸`ïë@ñ Tƒ‡`þîÑ'¤YCÇ d¸Ô ½E à5ÆŽ(FôÁµ¤32Ù¢LP™¨WhAt,z£ï>!lvŠÌ‚¬›\‹¼ƒB›¢ö÷,U$ŽWKmN½JSDkL»MWOïËÀÃ0†Ï`4bB1õ0§²Ø°²³~bkgÏâ qpñrCÜo =<Õ¼™ðÅ]À\PUHL˜_„ Ê-Æ#.(!)©$¥'m-ã&,—(Ÿ£P­Ø©4­¼£Ê®¦¥î«‘¥y_kY‡G×^ï¬~»Áš‘´qˆÉ]ÓæÆù–_¬ lJlgì ^޵Në.:®½;¢|4Ëí ÑÌã¦Î;ØgÔO™tÅ8lr/L"¼<’#êVŒzì“ã'¦ã=N-$ú$½Oö>óþ¬ï¹ÏiÇ3¨Î_É”¹Ø›}èÒ·Ë©y<ùm…öE_KÒK¥¯N”'VJ\›ºžQ­U³~ófÏmž¿fî”4†6»´ÜSì{ ÐÉß%Ô#Õ§Úo:pèéyÐpÀ¨Û˜É„ðË“½ÓggtÞ¬ÏU½³›ß_úQjñögî¥ã_Z–g¿î®l¬~úÖû½xÍuu½kƒ´‰Û,ÚÝjÙVÜnؑةڥÝÛ]øaõ£nbÏgïÑO®Ÿ!?îÓì»í×ø?ÜGNö`õ•.\~œÙßÿ.6€½¬ýýÝòýý½ x±€ÿ< øý¿â@C @qåêÕKN8¸þûñ_>¯~¶ÐŸsÄ pHYs  šœ IDATxì½xÇy5|.zï½;ìbE‰ê]–\ä"¹ËŠK”Äö÷åÿc;¶—ßO'n‘‹G¶ªÕ)’¢Ø{;Ñ‚è½÷‹òŸ³À’ @¢\4r_<ƒÝ»evæÝÙ÷Ì[fÆÖÝÝ ‹,X°8`qÀâÀp9à2ܬë-X°8`qÀâ€8`ˆÕ,X°8`q`DpÑ]ÖM,X¸A8`#9£*tÜtþÛMXgg´+‹¦zÁ¡?@˜¿ûoû×È<ßÿø`@áx\ûŽ¿•‡0¦ÿ±þyO©ß€L©×eÖâ€ÅG8höŽß4Ï›[ݦó]L¦7·:gîkë˜Î Fý¯5ïsÜ:îëz=_¤}%Ñåý©0€ô¼@ë¿Å‹“” ¡J + ´•ð5AÂñ÷¹Î¿ƒ˜B™BzS‹‹‹¿››[ «««OWW—Ýn÷äV×*/W&åmæ¯gu2 Ä{;x_;ïoá=ͼ·Ûž¯eªaªvHÍÜ7ÁËó7O¤¼Í:éY}ÎOFp±¤çÅYÿ-X˜D h˜B»?(\î­³¸ô^L¾L>LÞLaLñ~~~qÓ}}})ÔuÌÇßß‘‘‘®±±±¾AAA<æÆkÜtN‰û \•Xtvv‚ qyË|ÑÜÜŒÆÆF3u644tò·½¨¨¨¹¬¬¬µ¼¼¼£¦¦F÷µlê¸Í¯­­½Èc—X¦|¦&‹RS S“êiÖ»ÆïË€B01AHç&Œ,™0Ö[¶8`qÀä@¯–a‚†«÷o ÐîK  ,"™â˜¢´OHŠŸMP˜CЈ&h¸ÅÄÄt%&&z0ÙÀßàqPcà-C­­­     yyy¸téR“­ªªÊ• TMPɺxñâùŠŠŠ\SKYÎTÈTÌTÇ$^ˆ'&I[OD]¥XÒó¬ÿ,Œ#ÌR¦Tw s_ÛX¦åL‹Ùƒ›?~̲eËçÌ™F-BÚ¢££5á 1Röµ´´€š JJJ@1¶999 'Nœ¸´ÿþ¦¦&ɦ½LÙLíL—MiÜ—6bj'†f2^€b9o‘Å‹ãÃ~š† †Ú`’"9,,ì6š“V "׬Y¾víZ¿Ù³g»„„„@áíí ™•nTjooÍaFÊÏÏÇ¡C‡Z·nÝZA­¥ž&²tΚÔ*Lò·Ø™ÆÒJ.ƒÉX‰ ä¶E,Œ-(ì%ÜL“”#pøñøL¦9Ô$VÍœ9óvšžâׯ_ïAà°qîîruX$TVVâèѣزeKGfffCvvö‚ÊúVÎòô9&ŠÉg‰aê+Ÿ‰ ä°E,8Ÿ½Ú†„™ÀÃL&xÈq×ë7nܸôÖ[oMKKsKMM…´ŒY»p§ÛÚÚ@Á™3gpàÀÚ7ß|ódqqñúPÞå3Î3É/1“ &¦ï„§FG€ŒŽÖÝ,ôã€p<ÌÙ. þLÓÃÃÃ?AÇöm÷Ýw_Òý÷ßï3wîÜ)ë¿èWõ û)'=#¿°}ûöΗ^z©”Àr²´´ôyš¹ÒY¨J&‡H †‰Ëæ- @ žZÿ,XpLU†z»2S­ £û±E‹ÝóøãG<øàƒ¶ÐP ɰÈÙ 0`×®]øãÿh§f²Q_/Óĵ…Ï)cÒûP2€d´¦­q5ªÑ””Æ:ÿAl°8`q@æ&i"†©uÈTåÉ´:00ðãŸøÄ'îzøá‡CV­Z†Ûò°EãÁ™·6mÚÔõ_ÿõ_‡&ü"Í[oó¹è(‘V¢$ĘgEÛáS„íH½ŽõL{²¿©qs£™3×v?æÑ`ÿc¤ÕÓîŽzÇ0w9ÞqµÛïw±Öž:ž¤k‡E½ÏTÂ7ùÌŸëfëb‹FÍ~ƒW#¨¦8>Ïè©>ó™ÏÄ®[·ÎUƒô,šœ;wNIÃ{ï½w¦®«¯¯?Î’hð¢d爵½xg’à&ü4Iý …{ƒ­Û- {Wy¸NÎî•9õPòˆôYæ«Ê?Ëô6dFµÈâ€Åqâ@/xHŽ(TJÉŸÀqçôéÓöÿøOÿò—¿L¸çž{,ð§÷1ØcRRRðÓŸþÔÿç?ÿùÆ•+WþGä–×jP¦´D½7·ÞwÉݡӠÂ̾ËTô‹é·L'˜ ÁÏíR&ëfÚÅäÃ$™ÀCôëšYÜOd’€¿L.¶MóVã»îÔ<gNtÅwz†æ/ý|æ-îÔEöî´ÅíïÙˆ5ºqÞ üvѲî]ÿñ5›*Œù÷aé‚%8q÷ƶ;øó#½Ü³±þ[°80–à·-’üPòèMŒªzê‘Gùɯ~õ«Û>ûÙÏúX~ޱ| ÃÏûÎ;ïÄóÏ??ý™gžùC¤ÿ_æ0ISÀ\½Ø¡ælFHô¹ž÷ÿ|§÷àn×õîûòœ´Œ#½¿w÷žkâVh–Ö{\…ŠfºM¿©%h Ëeªl´ÿ²§„58“žÈØ3Å1Ùf¶7©Pînî»Û;ìë *í{žyÄ=©Ã†[GǺ-ç‹Ö~ØÖ^ï¸wÙÓÇœÜÜÝÝÌrÉ®w?·2ËÉId‘Å‹cÇ}ÂCðpëÇÁ}>õÔS_þ›¿ù›Žç°BqÇŽ÷£Ê™S¿à[ßú–»——×'ó›ß´ÐÉþÌPS¦˜$«Îd¨À@ô“Þƒ!”Å Å›ô|ïÎZž»•û‘ÌGÆÊsïpÿI¦¼ÞclüñÌ•1æ‰9`šÀÃÃíÒîô#¸Õèþ Î¥—äÿŸ®¹ø±öKëê¿®­Íð›äÕþËfTè7éRÏÆpâõîZ‹œÍöÑ$7 F_[/OOÏYõw_úÒ—-ðp6ÇŸÁû·ëÂà†/r¾°Ïó r;H“Ô;uí}Çܽ6] 7ž$˜šÃëd³G}7µ]¢ˆÔ+”\möágÌ傦6Ï­_û/fáÍŠbû‘ʒ܇t]Û4üN[‘«­$_ÝÐó«Ïû´~X°8à4Hn¨ó¨4ãî»ï^ÀYr9¼Ãßá4cFœ¤Ô çrv€…|¬”óýª³pMÒ…W1ä<ø_LAL LyLñÜ Üù“LW0‰6òx ·UƯžs_ç¾á;!˜\Ðm3âŽáb³ÉéŽK/¢¦#Àý£Ú/©|ù‰Ž}®naîk;»½ƒ*i¾²Ñ‰îíÑö—í{’e^O­%Oûþ>ßÒVÄüU4&™Ý,S,²8àdð;3µYÕYTO5RS¬sz÷‰\oÃÉU½©²óññÁ‚ ¹eÅ%«"êPT÷¸¸? ©!\E¼ç+€I¥v&ÓÁÝi°·ÁË¿£Ô º;O`¢÷»¸1F›þ™€Ò{h#·0Ÿÿé½ÇáÊÁwßþm¶b^A²¥,²w©À^î%ïÞó‹Ë#Ý…Pÿ±›ùg™×[[‹Æ„úÞ”ô)†3ÀÚ43¬ES—œxœQïTÚ‡¶ê((]“táUDAü] üxâ^&É^ÛÆí°I÷1/9ÙUΈˆv©îE~îÏzÑ v`÷ôÿvÐ>ÔRþñn‘Å‹cÇ}Ã}s’w.vdÓL°\!\5‡,šJÐÂUœtœÞäò;eùõ"ÍwíhêSµDWPðçqó+í–˜×ÑÑæ¡ûÓ÷˜å¹âæ`ÞªœSòwF­<,Üà`˜ â©ÃmÇŽ—™Ep°bg,š* üÄéÓ§ÁåsÁ¥sõ^… z·æ{ˆ JºÁ"‹, ‡*Jp]ca# !­ïmÑÔá€LWï¿ÿ>n¿ývpa³c`¾ßëVÄë²ÈºÀâ€Å~p4.Ë–-³mذúÓŸŒåVµž·E“ŸøÑ~ŽßÁm·ÝÎc¦÷*ðöav®Y‘AMX×¼ËÉ'é#QÁ5çÖyªT–7ÎÉüµ²³80F0W½ÃêÕ«¡-מ§5QX(4]†E“\ÕÕÕøñlø­8[2öíÛ'·…©yh;$šÂ’þˆé˜LV³"ZäÄ"‹¦dGçw ŽF7JûòË/C½[-¥ðP³hrp@ÚaVV^ýup…H|ñ‹_4–Ö; M8€°qiøê×z  ·ŠEÖ D‹,X˜|¸&D89þú׿âìÙ³¨höWkŠ“‰}‘Ò¯½öš¡mhZwiœ†æZ»æ»Ö ,ÃÝLŠ= ZàÑà ë¿ÅÉÆS hk¦«Ê¸|ùr$&&BšÈO~òp5BÜzë­àhuh?‹Æ6¤§§ã•W^1ãk_û4}É !׿{ÕVdn{~õû?äa‡2½é°oíZ°80E9ÀÙ]ñì³ÏBkr¿úê«8yò$V¬X:Ü¡E¦ä±L[c÷r¥mp` ¢»sçN‚³îbýúõ×Ó:†U¨ 6 M‡pŸC‰9=‰E,ÜÐÜXr¦+>|»víÂ|­rï½÷"..Î’AzÂ7 ƵrŽÛívçÀ–-[ S#« à~î¹çœ fÅ&@XˆÛ™ŒIX¸ÕT)'Ì‚Y[‹nȬ•––†œœH>*'®ÂGçÎkh%2o L,Ídhï]Žo†ÌTM^PP€?üÐ0W%''ãñÇÇÂ… 'ùXñt¢ä1V ´h•Ãik×â€Å©Ì…÷jÌãÉ'ŸÄÁƒAlo½õ$ð´•´N+n„k‚FK;éûÆpTVV"77׈ªâl¨ªªÂš5kð¯ÿú¯ˆŽŽÆxLp9aBDÔ`Gÿ‡ }ÛŠõËâÀ É™¶µ…‘òóó [½„àîÝ»ÑÜÜlÊ¢E‹ššªnLtïXõ¦'³¥a(IÃ0ÍSÒàäWäOø~êSŸBJJʸ€†#Ÿ& @XˆõLZ‡WTÄtÐØ³þY°8pSq@a¿J\˜ %%%ÈËËCvv66oÞŒ^xÁˆÞ’æ¢È!i'…Ÿ*4Øs;g…@ EN)•——Z†‚ÄÕ]ZšBp“’’Œh·‰°9‘â¸vÇkdÜÈF²LÅc•Ùâ€Å«8 CŽu%l—C¸±±çÏŸ7¢¸þò—¿bMØ(|(êë·¶\–ÕLLŠù{¢4 ´H˜@¡ßŠ–ª««3^ÖÔÔ@©¬¬ š£JI×Θ1ÒÆ>÷¹Ïu”)Puš 4!©ç>êÀ.(e‘Å‹z8 a/§º@A`¢$R¯\SÇËa,Ó—FU+êHI¦/…®ªG®0bŒRdd¤2卑ô<‰3B:˜ÅÇcýû¹æomûïKø‹µµµÏ‚k§À -§O7Ê#mÊ—«|ke@i‰C³víZc«5ËŸo–y²l'@Xù L¦ùª€û& C¬rX°80y9 a«¹’I h% em5ד×*1~+JIÚŒ„¼„²ÀDÂZ`#Á­¤¼õÛ9¡.ÚJˆËa&9²µ/ B ¦2˜f'™Ê mBçz–ü>DiLÓ¦M3öU󸶓,L~;n' @>æPˆWùR-ó•C¬]‹†Î h%-håH¦óÙúÒ¤¡XL°15me:Òy™Ît ÚJD™€bŒ¶2'™$­Gû*‹@B`¡}ózŒn¤È²q"¬æ2xÄáE¿ä°oíZ°8`qÀ) V’7Iš€¦T±È9˜OÌ],º9x0—È~Ä9U±r±8`qÀâ€ÅñäÀDÈÇ*ø²Ã¾µkqÀâ€Å‹Sˆã 4_ù7:ðÇ2_90ÃÚµ8`qÀâÀTâÀ¸s?“o/ƒÎÑ|uj*1Ë*«Å‹,\áÀxˆcô•¥}\y֞ŋ¦Æ- ‹æ+rç ÙÿÁ{ÍENœîK-Èéy:ÔÑÚ½É9ÐÛvÍ}jºVÛu6g­ü†Åq–J'zõ–.m?k°’ö~tîœÚŸÓøq¢0ÆeÛ”»g¸ÇÞ×Í‘®]?üá;9ÊÕÎADÖÇ8\&Z×_“\HÉKm—ƒÉœªé«Ýªý>ýôÓØºuk#G5×±  \óuX'Ç€ã u(ÿ æ+m#ŒCú¿Ì‰Ãå€8œÝá’bÙ,kùŒJŽmwvþõµvo>ظú^…»°9­ã#6ªÝŠœÁvÿ˜Ó{ÔòP§qâù§‘Ýæ ¾¤J£®†Æµh°¢ÙFá(3aeCXÎ;Êz­¹¯ôuh°aÀúõ듸rÙ< û·ÈâÀTãÀG?êØg›Ò@²8e†ÌÃMü΄)=0ÍãÆ5×÷ßߘój\:ɦÑìO=õ”15Êd(ê¸+ª‘çæpЃläyר¼Ô}O&_Î)㡈E,\Í~GšvÃÓpøñ¬ÌÃíW_5ulÚ´ ZÉÐqÞ«©[ç”ü?ø{ì±›@w`ßµ´]& DÀæCð&b‘Å‹ƒp€ßˆ'ADã«´@›Ò £h¢Á[n¹ÅX wêßt‡÷»ßMªUêÜèmöš¯nï='Gõk]×ï˜>w:͵µÈâ€ÅA8@-D&êhÝpߊ4,‹úr`²ñd̄՗ùÊ4•É|UЗ%W~l¤}(©\®¼VûY°80ø¸0 <Æã[¤ÖᛕãÑè†c¾ºY߃Uo‹,L9Œ)€P¡&G6ôre¨æ«)ÇD«À,X¸90¦B†>ÀdF_¦ª]x32Ùª³Å‹nD˜¾‰±ª›ãºçuöCHÆ¢óCÉWî3]ïzåk¦ë];VçUV•a"i2”a"ëo>{2ðÁqÝn³\Öv`tk-rŽ—°qHL[k=°nðpsç÷?ðõC9ÚÑÞ†Înxx2Ÿ«nê6–¿½êT¿Ýhf™\\÷À! 6®jèÞ¶ö.c xW—«sï—Ťú9fÂN³îjñ(“œ ¬ZwXkgœˆV&ÓŠdZûx0Ò²—Z?YK\N¤W½$4”&ŠT|•½™IëZ«íL$´tª–IÕû¸©I}ªk5Çîv”•” Ë#¡Þ­Ø»c+lÑ °tÞlx›Æ~¼^žŒŒÎÞ·¹n1ذ|.¼=Ý(XŒÞrt´5àÒÅrEÇ 8À×€ê¼ÓxyÓ!DÌ»nuèˆ\„ qíØt$«×m@B˜\¯U¿~EŸèŸc ¬˜&N4ç¾:Eaœã¬Ê <òòòŒEë9/Ð>lƒ¦FкÅÓ§O7Ö2¨<¹¹¹ÆºÉ›‰mmm¨¨¨0–Þ”à˜ÒÚÐUUU ”WQ®ñ~¦ÚÚƒfCp\u<Ë¡2¨C³téR£4mr<ë;೨M´67¢²ºžývàï‹ÎöÔÕÕ ÕnƒŸ_¼ÜkðÇ_ÿ+ZîÀ“ëfãÈÞp_„¸`t…Ãß×öæz4wظ^¹7:[›™g\ܼ/Ë`ooE}5ó&ÿwýõ%l÷Yƒeó¦ÁÞÄo£®n^Þ Duî!üíÿw=û-|òÁE°µ7¡¶¡™íÅAAð!p ºímØú«Çw{ Ïü, ¾EPŸ‰…ö<üú×[:s1"ý\ÑPUŽV–/ 8$W©dÌÄK‘ÿä7ÌÑnÕ+.++3>(Îa…ÈÈÈ!e©°  ¥¥¥¨¬¬DLLÌUà kNàñññ˜5kÖòvöEÒ¬²²²  ã]ÎÎ~HùÕÕÕ ””ÄF0¤{nċԦ‹/†——Ùßšr  víÚe´M__ß›R ±·ÖáÃ?ÿ¿~ijì]X}ßãøÂ'îÅ¥càÿü²Ë;±lí½¸}® ÛÞÿE>…óy Ýî^ð´5áý?þ µáKñäGnCîæÿžÊ<´qÒ·½—^;»_4žxúóøèËÈ÷ÜmÇ™ƒ[ðËŸÿE-]°—!úÁh*ÏÃó¿þÞÜW‚ ¨p|öo¿€Ú]¯âÀéí¨x- Kfvâƒÿ{O\„—$øô³øøýKàëåŽÆâxeÿ^4v…ó­™6yÁß›€E›—ÜmÈØÿ*~ô/Ï£¸ÙŽ”»>ƒo~éI$G\µñmy×Ú˜ØGØC’ž}ŸÃãßqØñ®LJú %Üd†â$‹CÎK¦ õ¦%8w¤iô'3 ‰EÄÉÐãW»Wçæfm—íuÅ8|ð<æ§bAt#vnyé‡6ãç¿þŠÝ"±45G?܆œŠ.„D rz2¢CXær@šˆzs29ö.ULåmÇ`´ŽOÔ69eÉM ¥Ù‡ñê®XþÀ'°"†MYMp£ ¨ÛÞ¼3qª5‡Oå`õÑÒÚŽ†¢RTUG’g4?QþFÏXŒsþ‚ç_ù„-ýR’¢Q“ Ÿàl¼ÿQDÛkQÃ9\©!¸Q˜ÛüÂà„ŠÜK¸púÎÁ>«Gv¾‹ýånø§gÃáêó¨µ)‚Š ÓÞLÀ)Çžý?žŒnüÃÿóml+Í@1ˆ²£­»ÓèkÞK½ÓÉÈ-£¸\]‘ũڧ-¿Þ‡©y¸eÑ,FiMNðPÆ @îîå˜6ï9ìjW‚]æ%Á@ÚÃP2×}2g™fªáFµô¼ôž0_ݫߎ 4Xú_§ßêv\i\ƒÝyíãýó½öÕ“ëìT.ûäâä_ÿ0Ló·!ÿШ(ÏG]›?ÜBgcQÊllzõj¦ObvÖÄé*|a·uZˆ¾vWo:ò½øé»ÂÛǾޮô¸ÃÛß ±³8Óî¼|z3^(èÄ©œ0¤¬zˆ¥­”»öát¡0fqÓz‹,GÃvg_=0™¯D™¯†"̨-™Húš*:âËh'uA`P{ 5óöEXhР¯¹«ÓŽ’ÂbøÑgãïçG‡˜ e¥Å„oOFqÃÝmd=ŒVÃî§ IDAT®®—À?€Ñ%ŒHQ¾S‰Š‹ ááíòÑÕuLÜqcÆŽN{;ꛨÅ2ÀÀ1Ժ㚚[yÜ¿Ïñ1+ÈM’qØôÕøÁ?Y…ÕŽŠ YÇq Ix`ÕÜ}öÊ:0{á2$EaNð?`å¥ð‰ˆ‡ÇªTø†F#Âß>þ ’Ö|13â ·ˆ»ñý$ãLfÚ\ý° m󽉧xì3ÏaÖ’;QÙd‡·¯?Âb“ï·¿L\‰ªvbŸûZ:ü˜†ïüî·È-ñÆœYX°ñ,j[|ðµg>ƒnŽ òí• ®¸÷«ßÆ¢„Fà«ßú:ü"ë׉ù§åˆKLÄúïÿRD)&yµ¦(ʇÉûm8@Èú;Úô> õ&‡ß#Þ8@dV_¾ …Ù562œÎÃá|­Æ 0F4 ú*Àpˆú›ª®§Ih­žGaûžýtœ…aÆ´X”U7#*.÷ܾ]í,› µ#õ0®Tµ£­÷íÀ¬E+139]¬Çö-›à: Ö­BH –s¸šT_%•YvPeÚMÿM3\ݽÑ݆·ß~ ó—¬Áâszwq ’×køH3œÍÕ ^ž‡:·Òdgþ> HÐà«î‹ ÍÊØù?•Wƒ« €&ß:©p)>¾¥¹…e¢)‘ezïÝwœŠ5·,FÃÍ÷¡{TÇ.Î¥éÍwé( U"•µKa-ÔFÝ=àÉ÷/$ob޺ד¾. "ëùíÆßÌÃñ…Œ¼Z—ï¬.+ÀæñàC‡uiikåJqþ(.¸€tö>òà]Œ¼ñ@3ËèÉpO•Q¾5;;.Æû!/Ú;:áëãmÔ»£ÃN?GCQ)lœ\ÖË…žÂ;.>Hš¿‚©%°âÖØ>ÓfBé* ž†&GŠH˜… L‘œÞ‹nYwÕ©[ÖG]u,(e%’RzÇÆÇ\u¾ç€ ‘3çÀŒ9gÞåëæ™GÃXŸÛ/Ÿì;c w8Tz³Ãþ¨wM‘ö!©©,Ãñô³Œ†óD]ušìnX»vëíJµÐƒ­«$)‰ò 60HÌÊÏ$ý–VâxÌÈ:ó q4ý$æ,gl:…ì@dcëk*QTRŠDŽA¨¯.gäHÚë“{¾Á˜?7µu¨./Gî/LON@QQ¼ý‚áÂXôã§O ¼±h{Va—y¡ç52vþè±£(©¨EÚBÆ®w¶¢¨°õ͈çÇ—wõG2P9;ÖÚØ€¬ yHHNFWK=Êki³î²#+;vZN—,]²×Á§¶Ù™ÙHI™‰Úê Ø»Ýáãá‚3§£¦©‹.DB|\-­¡¾™Y9È¿TßÀp,Yœ†–úr?qšK‘ùcé’EèjmÀ‰S§Ðeóá¢DKø>BùÞP}°‚ñø…s'ñÊË/aVj*ºškùN‹13uJ²ŽâåW7cÉ¢ùh¯+Gv^¢â“±$m2ÏCIY ”¦ b^ie=V¯_‹–ê*ð½•WÖ`ÙÊ•Hž–Àv:y{Cd‘uÙMÀ±õ|sšùJyJÈ«—ªš@ ƒÚHyq!223àOÍcÍú;ÐXSŠý }ó¥Y'ˆæ¡PäÑRÑ6N „ºOyȯp`ùBD¢cr®F­ìáVVT¡˜Bý,…smD{•Œ” pßòn&Ž2Dî>(-¿>|?ü¼{4! v:uô ªûöìAuMÎfä`Úü•—A¦ÿ3|5¥… ܋ǞøNÚ‰V Ãâ Y¨mj@~Q5ÿØÇ¨ÊÛP]v s2øØÃØöÁGNGIæQ\ #±¼²Š¥žÀC÷ß…à@ÿËI?¼ ~í}Ö—u¢p pÉãG±cÇ^l|ôһ'ÜN¡úú+/áîGž€FßæVp<A¾¼¦y ÚØÊÁ_ho®cÜþû ÀéãûQÓæM»rŽÍä`Î*d_,Ägž|1‘á—Ë^|!ÿñ‹_3ÇM-œ9àQdŸ9„ÒêFTTU£º®e9éÈ+­EcS;ÁÖëW-5‰]Îd”;åe|VNŸ8‚Ûw ÐÏ'3sáÓªò2äæä`ÇÖw àn(|g3þÏß}¿üÙ¸Psò³/ *6 5Õ´åw£øØndU71¨'sòñͯ?Ãv{ó޽嫱nG8@(Øg°ìq½å¯ã6Ý™u15ÓÔáÂ^ZQa.ö8‚žx’/öíÚ†Sg³á„ú'ã¢)Ýh_LÆôÓ ¡(ЀB’œê¤ŒŒ ¼ù曆‰lýúõÐ ÅþHÆÜ´4øE&°iCKc5oä_ä {šL.[‹Öú2 ²¦á2€HÿiiiÄ öøá…¯=ý,Þûë‹DäÙ…ÑÿIË.D&Lƒ­ëCädœCfn!–ܲŠ#mÝä‡÷ßÜ„êªZ´K“¢/ÄNŠøÒN3IQA.NœÏÅíïddH&.k©%9H…³_`0nY¾1±X±l f%Ds­«hR ðóFSíÀÚÑÕ¥½úˆ?íÎ~^ÔŒr{.3,CW /Rb?ãõk ØmmvÃ*×ÖÚb”ÝÎp™:‚ìÉCG±hõz:?[pèôomi¥I0$:Oæ38¾{+ìæ ®–nüý׿‚²ÌãØs"•%Hš»¬c˜œ#¯ËÕµ/Z†U«/`f\ö°s²ŠÓPtwº±œ^¸Pá‚™Iñ(O“ö‹çÿø¿¨àˆfðžû»oã¿ñc¤Ýþ(ÂÚËpôbjjñðÇŸÂÚ¹áøö¿ü;°‰ïjòˆÖ±›“N²ðV6î¡Àï1ª;Í®£yIûÝžþAaH]°mMH?v •å•Tÿ5çãµ=\iÞ)F‡›–,çÀ:«ÛxŸÌ_¡ŒÂˆåt=#{e“ Kvj PÈ­cF¢›MæãÊ¥6:Nhª¬­‡?GœÎœK'_Ǹ&IkàÑ3è` BdD8\<¤¡ ,ØT?_ÿ`L§P?rp?µo„ ëÔ1¤§×!—æ›”¥=Ú˜¤0½#jh´«Ë¿ÓHS×ÑÇXR;âfÅ26š“º§2ó°gׇ˜¹x¢ðî{›‘ºh9–¦Íãäs.ƒ”Ì!“kìºRX¦Î}GSëhÂí±‘H?¸'NGNfVE÷€¹²?CÜAÿM—½•¾‹Fœ=u>†&yÕp²,<<‚þ?D„ÓÏp^¾qôåøSG¸p‚º%KnAÁëìÉtøEÅ`ÎõmœH ßì"¿#ãfbÁ¬Dú´Þçs±!8Í0¶ÐÜyöÔIšç2¨©Ô…°°XÄD„ À7ˆÛ¸QëàHúHü <‘ÔPA3«– Ü*œX~+«q〾euîL Š9ÎLÇuÌeÜ7·*˜)k´/³»~Kn™gŸ äl¹Å¡R{öº+&̦Ã:–öåÙ) QYVˆ èðôCtL #4@sÖöÒmˆˆê±éë^½J€ø0îZ¤9²ÒÞ^‰ؤ Fæ‡Í¾žKhªöó d~áˆOœÊiOþöõ¾2í…^¾ÖV g¤Vyy²2Ï ã|&’rÄÏ L|CýæÍ×Þ| ×Ý{c-ÍcõX{ÇzηÀ‚ÎvtÒ ¤ ‚ºúzœÏ8‹\úâg¥ .> 6Þ{]Ü£ Gò•çt£ ¸)‹VaÖôdì9™…Wþò"2ò*ð8ý22k¹2Ôp´”º`!^üËkðO…·+ãõ J°bí­¢Ó™¯Á0Aº¸¸SëkBFv&2Ïž…wH"¢©],¦ágC£k|éw$™!‹ ò‘y>ƒ ˜‹è¸$j}U4eáRV&\½ÜÐØjÃ=÷?‚=nÂ…‹—а”Zç>rÙ\ÜÐÁYU³²³;O­Z…ßýñO4N'€7#ý(ç9êöÇSÝͲ•§Ml1e zŠ*Ԏ휌ïô©Óè®’Žw#àÀYeµò;˜²H[s_!`PÀ8Ám=¿O™É•4U‘Ìç:&kˆ5«Óg^/Ù¦­€C[ur5‘fÍñêäN&r6€,s¨Üa‡}§ìJpˆôrôb|ýü9É]C#h*ˆä¡hdÔKq~>}.ˆˆŒ¢p‰‡›_8ÂBä ¹âG1_¶qÿ mÂá¼y¼ïÖ†NpÖÑåo:z[}=à×鎉Ih®­À‰£ûèñÇŠ•·¢f™*NÔfà £³BÃc?}6îÝ-ï½Ëè­,¢Ûã:!¼É³fcá’%X¾l1äˆ8šŽCû÷¢–½ô06¾ÐÐ$ΘmÌ@ºuëV†v`܈ ôÆÑChþ©ÁÝ÷=Êè'tb8±A^—îÙ¿m ¤Ä(½ O—ìܺõum¸ý¶UbJßêóW$£Óæ/JCÔô%ˆeÈå4F§?|¦·J„¹2 šZ`|<šªóé{ùÕ%U¸}Á:ÌaXäñé8LsÖâU·sJͲ۩eUÑDõÆ›¯1€"ÿØc8K½cû6ÔQË{øá‡‘wþ(> ?šÛ±aítšäz: ì —Ëç¦yŒjZpæØ\Ê BìŒ9X2§¢æ×|lݼ…QW.Æ„}14Iªó?~pw EL\7*2lØ»}3Nùv8ï2¢òFÇùA‹m!$/$w´55ý(io%ƒ¶µµµ—ABûuRÕqÕfÍÅ—’’b̨!3º´l 1Ðuæ³(z†òÔôKšÜôé§ŸžTsÓ9 @(€Õ½Kí}?ì_âØßÕ ·IÈ DL¤ Ç¢`3Ú‰“ÎUX\7_p¯²ÏŸ¦ÙÙ ³èÏða<¶È|ùúM@2NðŸÿšD`É’eÆK5´ …ªRµp§ÐE3Öòå·p†Nxp>æ,:Ù+!Åþ&Çi„ÒÁ?Á,Š‘SóP\Vi4‚`šÑ|¯1µ¼ÊD³ÇsÏ}“cM Êh³§>ûYTÕ72ì•cP˜»œfüL=‹&´:öVü9«h#žVàâÅ\¸xú ÈÇ“ZÕ9 ;ET+´Ö©© ñ™„dF]µ"1)QŒ¡°m4BI€àááfDñ†“»—¾ôÌ×9ÜÅ›3xᓟúŠX÷à @òMQq*{ V,šÇè¤2^ãÃß!ðc=ç/`l>ccóŸyî<ÎЇ ž»zèÍUÅ ™\€µ«W² aÆH¬ùssñ"gr"ÌtݲÙ9=õŸÎ¹‡ô|gR@x,þæšJ7¬]I-£Âˆ8‹ eÄW4($V¬XŽ»+³¾²x±-p<ÂcO>I“C·»b‘œÖ\š—ч2sF<…ŠÂ±=œYÔ)›—¾G¹è{—`kÒó$°%#Ì­)/t#íA‚¼œQêÒT>iÒ ”4ñh­ÉŒ>ÔVI`!p¸ÉiBæ,b2óËàËhp6äÒ)é…©Q‰;Éêêò»»=hS`wÙ²•ìåÆ]¾Î¼×´+™ ù§€î5y]u ül:îE5•œÁݽ6KM‰Î0Zù!<5’•i¨¤1AÁ=ùêEïDõ {7²ò¢O „É‘æÌëÁóÆÚj 4Fõè#äG"³‘)>!–öú+}Ý0\¹_ˆ3(0øÊ„—ª÷€ugïË¿—wæ3gÌžcìکɉ—v–[ð®€ojJÓ¹R@Md±Ñ½¼tWø´9~•òƒ]°PMr¬ˆæSj·"9¼ã Æ&ÅÓ|*l&å`j=DM–;±‰ ˜“2 j(Vøn/oô =°ÿ~C˜›þJSÇO@³C©z¾ý+[ÇΠöÍßæ¾Â1™ @hÆoÚ( (dê–ßTf$¥¸¸8ìd“ßô*_ÝåšÜ¸;¦ÀwF ÍWGœ‘aÿ<̆£—­—zM¢™&&.1ý.’ÍÑìÑô×@ú]:âŸÁô‡(Mòc¯~áShM–R ­î„7o0ð6 ]ÞÚÎÚwh™Lò«žxú3ÔH82Ú>oêË_þ2öЇùÊ+¯ß»Ì?á_%`VRo_æŠÅeb†@Bß»Ùq”–  ?„¹pœi"’6¡|¥5h™Má¯}ƒæÞ@˜ÏëSЛø‡3d¹ foC/R@ `¸$Û¢ãdŒc Ã-—uýð8àÎIô”n b$™EWs@f ¥Ï0\[¦£ .àÒ¥Kœ¾§9g#¯oØ´&8š¹LÑÖ4G H$G<ÒH3fpZ“^3“€B dÑÐ9àLn-ux¬ÓèÊ[E jê5È>9œ®'àQƒ™j¯C¹'Íîd.Û¤aÒMR«-ÐLÈ($­È¨äH&8¨S)€P'Q$ž™à" EÚƒÅGGÎ9gß)Â#[ÂŒÞ"up{Ê9Å뛋„l‘jZòUöJõ"†Ò0:²k*’A=ˆòŒLûè`çÇò¸ùls;–Ï,o3d"Ë0XÙÆó¸ø d:VÇóÙæ³ôl³Gm³¶=PgPI¦%‹ÆŸN[ÞZSg²±÷L™ëäú˜"ûäéÓ§ñ.'ãÓ`2ÈP>0Ù<¥ÁÌž={À‰ò‘F#MåèÑ£8þüå“«rÍìÔ“ÐãÜIú0†R·kf8‚“*CuuµQ™&¢ #(¶Óo€j)äÂÂB#h"ø ©¶«¶y­NÓ+oehqà:p€8z9ÇDû0ë!íCñÔÑÑцpËç˜ »k‘€ABPÀ£hÙ?í¥Ž÷JÕ•#Mù^dXèõòv¼×Yû"iXêýŽ·Ð¿TmU Ññ.ƒ³xéŒ|TwgE¥ ·O ­ˆ)ó˜Çoæ­:¾êOMÔY²À᥎©"ÆÉ!mB"çÙPzéÝgúPúuL@£¤­Bÿ†’·CÝG½Û¿\ññ¨ f9Ìç›ÛQWp f º›üïâë¹j»2ÕNöÀgófóæÍ†)w Îž³Ÿ5Uò ~îsŸ3:Á“¡ÌÎÇe^ÆLÃôA©A $ä‡ÚKð˜÷†Þæy3o މœ*‡#ݬepäÁDîë}LÄ;0ë¬öªä¨šçnäí|`D]%%%ÝÈÕVÝ~ô£ác\ÆAV”É@£~\ÓX‘ÀÞÊTñC+ëŠéƒV Fó|å«ÕêõŒ†‹Ö½FÏ É•\`+K(XÔÃ^xaLäÞHù;jჵ. 7~dö Ííµž<\°1ó4·×ÊÛÙçL€Ô³'âùªÏd(ƒ³ù:’üL>˜šîHòí=fF›ÏT»¢ÚþdæÓdãÉ”1Q3`jtêPèfƒ0PrFFr+_¥‰" +•CZÐpÏYež epV]F“Úšül2—JOÉÿ!Gºü! ­)ÃEÉ\Üîl¾+k·s ®ÏsùØ ·t¸KkÔp„‚+§™ùÛïæìÜ\𠌮ä:2ãã¹Z§ly¦wÜ9£5š3ðªðgƺú 5š\±ù¯!çâPHQã4•‰¦GÐÙŸ”·çEEEFô‡F¿N©^ô¨peùcT®ñ&Í5¦^Í=$^MDÆ»Î=O…sË?Xè÷@÷9ó˜ju|hÑÀhk¨Dö¹\„Ïšc,ß `øn{—j.@Ìô$D‡ûK„‹jJ³Q܊ĨPø{ö½»³…K$4Ù9û5—ep˜”ôªØplç!t†%µ£“»F£µ¡„«ÎE\ˆ÷”gȸš°Ô3×(t 8͈©‘èC! @Í¡£™65HOS,÷ïÝëå«H3Tx(y;ûœW<×ʘ(! OüP&‹ÃÎÙ|J~zjo í¨Ó1”:ã~µ ñAX'ê]Èt¦6©ÎÊcÇ&µ7âôþmxcë>T·Ø±òžbIt+Ú\Ýx® '÷mŶN¡¥£— 9žÊÞŒ¬{°ó½¸Ôàåwß‹µ)Á8ðþV.;| ³î|w¬]Š`_OÔeâ­¿¾ƒì*.¯\z~«V­eغõì=›Ë2Ãñȧ?Žò}ïãùßl‡ï´éðLlÁKoíBeU5毼=rÂü9ÿ'å8¾çdÑjòH¼–Tæbt4aqEK›­åÙ‡ðî¦Ȩnż´Õxøî ˆ â<}Sä%›ÓŒ´¸3x£¹RJwýH3Ê}2C©w®Iþ†ûA 0$¤aècˆd.P¯SϺ™I‚ÊV3ˆs v§v©vo½“îÔæ¦sEÊ9s!Ö,ŽÇ»ïïÄÑŒRØi¤j(IÓ‘7ÎÎ×\œ…_ü3j|C‘Ý…—ߨŒ½‡O`Ëko#¿‹~EE“‚hÇW^À‘œ̓ĕM¹Ö¿{ùY?YŠ·ÞdîÁ뻹ê$W'Mš1æ-?dÞ ÐX³0»_gK8ÀY"ÄæÎ¥®g#,8 ažØ³}/2‹ª™/!¢­ úÅOp¢Ú+ç„aÛoþ?ì8W„ÖŽ©ÓI•Bö¤ô¼Nãÿ˜kúx ÚÊ70\R¯^ " D "ÓŒ£Kù*Ýìà1\¾Z×=Ô&•Ô>- ²²` ™Žõ6`^t;NžÕåu†Ð®¼p]1i¸ëÞ{1Ï'ç‹ßFU^J*»1-ª^þœH•ËM×Ò|å‘€>ýI¬J›ouû;êQe÷÷l\$÷,ì€':Ý9õûÜ(4ÒÞÌk*«Û¹(ów`6¬««‡¢‚FÔÐÂQ×\šzB6^•¦ÏšŽ¨PÌŽ ¥&ÔIõ‰Sé”ï¨ÎÃŽÌ*,º£ m^¦S½¸¤wy®³Ôõdi£Õ@äÜXWJ¶`™˜¤Ò÷7? õÙÒ\DÊg¤ãHïj­ë,X¸6ܨ-´µ·PP7¢ª¬œ½vF-ò‡|RÛ¹è£4ëQQ%iºýäÅ•8ýý¹ìq§ÎFB¤?­4Q*8Ê|¥~;ãkjP_Ë%l«Ù¡ìvEÑ‘]x÷D68ý¼¸D´ý$\øvZ2j+ °í½¿âý~ÁŒø’X%zôb½ä–]h¢*ÿŒŽw»¸"Ð=”Kû!Èßqë×bþô0x¸V,›•ûíh5GÿGÆXWŒ—/©#Qf/iæ(Ã0XV\ˆÜ\N²È&Â&äÊ6€„¸èA_\/]k’‡Çйj,#››“I{¨¯±$kê<|îuv´#++‡ËÄF!Œ‹9.O;üÜÆûŽndp¶cÿDG…Ã}Šô¸L.ÙÛè‹£ó5$$Ìñ4·©g[ßLÿ\ßÇÔfù§Ê6nÖlxo9…Ý»vã|c!½ÃŸÊs>˜¶p wÃþíàŒý,JË;óà4Pܹ.½­®õuœ,Ô-þ>~†¿ñ2€¸b!µ‘×ïÃÙ8´ù4bÚÉô0¶Õ` ûVßpÔ1J²ÃK7VâÌ¥Rú:ÜĨÍî4q¿¾¦–«jÇ‘š”Ô >aôy°=xyû² †)Ý'$ %£€«§ºÑtVXÝo_^w¹4“þu8@(ÇŽÔë7œþ ÓÁÝÒ܈êª:ö|g]o|¸1\3<0`ðÐ^ò IÀt-êf¯#ãìi+)s梲¬€vRŽa=3sr©¼aŲ… I®EÁé A*eî,ä^È‚_P$:«pˆkšØ]<°~Ý­˜F;­ãšÛÕ ܵ{/ K+°tÅ*¸t4sÉЋœ¶¼3RaÞœé†0¨lC9Ö\WôS˜=oìMÕ dXp{3Îgd¢&µkס¢²î~8uü$,œÇúÒ/¸wâࡨ¬oŪÕk1wÖŒ^gÏ“k*KpäÈqäååÃ'( n[ƒºò|ä±Wol ]¼­¡G‡½Ûë×߆¤„§jhçÒ⥗ÿŒ¤9sÐ\]²bFêBÔäŸÅË/oAÚüT—ä"7¯‘ ɸmõR;|ù…Eô«z×6ðRv~6ÞwšX﬋8Öߎ…óçP#í§9”·4•¯qÅÜ;î3’c-Ö<Ðó3êÌZ~ã)ÆúÞg—ßÝçX˜y½ÃQÏ<ø•oàA‡cÚ}æ¹ÿÛïøô³½Ç–ãVÀ@äŒô>öÜÙ{ ¿/ƒÒðÍÿ;u§jq+¥ fýͽj)ŒË{92fõàL‘ ï 6Rp1gÎg &>kn‡âKpæ\|h‹ô÷󧙉ãDØ»vóðÄœ¹s QD‹z¯Šï7µ ÜÓNêÅ*Ö^ëô§n=ŸH`c¯¶¶ºŠB·Áèµ×”—`_yòÞÕíÂkl4)…!Яg°b7{yyÙìÕ4ãèq‚ eeå•h§ÝÖìøô–´€VÖ[w2`À§íF§g ªJ Ù“·!óè)†2û0BĆ: °â‚Kˆalû! ©€ÐxeB+¬ ‚ÍÅ݈Ðà+ƒÐNÛÏ(”cð$gddÓÉç‡Úª2¼õÎfÜÖ቙Ó-[ÿ²ô»‹€¶cû6¸xz£üâ”6²÷ÝPM»± 2/ÀÓËŸ6ìt´5âàÞ,Ä&DãìéS¨nó@[EÊèàlj¨Ec³f¿ÄSÃ3©¢ð"^óm†b3ÿÔ9j(ÈÍ<Égù¢²” Ö©,÷ Zº=ÐÑÞ‰Ä䙈¡™ÌÇ«¯fhæ7’m‡´5š ó28Fc?’§% ýè š88;4ßI mC`P>{‰1ÁxõÏÿƒˆ$:uOCtâLt6ÔÀ+0Å'÷£Š@äÝ¿¾ù¦%Æ#Âá]¤|#¹‡ßT8ï“*ù=·$ëž›‹#²iŽ«Æ\ûг J"ˆ ?àªÊRœ8}‘Isàçã†Ã{ö"ýL&ü)t\\=ÁÝÓ¦ÏFJJÏ$Œòh@¡ñrªKãÐêƒï¼óŽP«W¯î£ä?RÜ´Dt¹Ð<áJI ¯óB15€Ö–xû££¥—ò/¡¶ƒM¡§¤±®%.P<ðÐÝðòàŒÂh2ó DªgDT4l-8î,2Ùýe%à [ÈÑzŽ//¯‚™4¡–Æ&£ì--­h(ÈÃѧ1ñ"¸»t!çBí¿«ûH'A­•€æJÁJà‚…‹ájoDBÒL,Z02‡ÕÓ8Rò E€— Ÿ‹ç³0wñ ´ºÊlcG;y%ÀV¸4ÑÍŒ‘ï"˜¶¶Ó¯@*ýÐÄÍLA ¯72mSËÕøâq@Zišó ÅC>†swâØ¡½¨iµá+_þÊsÒqä 5) pÿŽÞ¦Ó”f¢Á€z¤õÓz4³gÏ!0„cË#³\GŠ'%Åa&C@ã£ÃqÆß¾>ÞÆ³Š‚';~ä#øŸÒ,\½A[p¦ ˜‘:¬~쓸eN(¾ó“ßP«mAXPà >µ‘–y°ûø-‰=¹L‰æ5<ôM‚ÈOÍßÖÖâÀ@ €ÌrÈ0ÓaÌwez2“_#*/† {¼éÇÒQÞk( FDRøÒgQεÓÕKoé‰nh彌 ö 5˜PÚFÏ÷ÓPb.“Û¿"2+)úÂß^µvã»ã ¯6Ú멚¸ÓÖâÇgGGÑÌFÛÿeâ\:»FÚÃ"i8àݨÉH€DÒv|üƒ0cZ,ŽÜKà‘ÃÏ•Up¥\up·ñüô•Cmê"ÙÒÛ 2›Éwß°‚¥žeR7¢f`ÞÌJŽÎ/Bn~M\á8À¸øënÃÒ´TÃF?pÉÌ<®½• qÞ¼9øp÷!T7ubCxNäe¢‘Z‡|%…ù(-+4€¼øR>:þ» ²Î¡²¶ …ùyÈ)(¤/ÕZZ7þí§?Fª´E~eñ%dV`Ó»>¨-¹„ó¹¹pñDnN6ì4ÁÕÖÖaÆÌTúìÈ»THͰ˜fÀ™çi 21yД[–/£/® ¹—r9Â9•>9/†sVRˬeÅÛˆÊa5©h$ÄF#„£žã£à^Ý×".UkSÄRë fŽ+:z;I׿°SÏþ=sKdŠàwUÁïá¸ÿnÁß–&BfX40F IY^pس] z‡zçÚŠ¢è‹˜9;•½¸öv/–)BÆÕq×Éñ8TS‰6O„s*‘î•#]‹Fi:ˆH£ÔµVºzÆYìõF]ìñËÙÌÙ˜—|+]ð "XõŒMññÔâ?ìÁÓ1ÝK”ñfÝˆŠŒ 0»ˆý{vâÈÑt,X!Uʼìê-bîÜYxù¯oañúàÚÕÎQµE˜7ëÀ©êjÑÖÒFÁêIMìvîÚÎyNRóX‰Ð°PšO‚ÑBADm̃Žå+d£ð®€'£Ç¢ÂšqŽ&¡7^ÎÄÙœ„Ä&Òn_€øØ+=þ+÷ mO 'OžÄ‘gðÖÛoÑ”æ†Û6Q˜_êÕ:®Îç½-›útxû÷îî{®÷×–Mïö9¾ùÍ—úü–¯Ìƒ€ÿÒ+¯áœŠ$.6ÆXˆL“jA2%í+Éd9œ©2“ÕQ«ÈÈÌA‹Ý†™3¦ãõM[1þLÔT–ãìÉt\*«Á¢4FºÛÛNÊ¥9xLoÛNÿ›L±.l‹2‰ÚÛ°‡m¢<›“ºÑD§üµšEŸJ:çÇO˜ÍϽÙý·:6ið¡÷â±ÚÈÔ¬i‡Ji–´¨‡²ž˜²o2ðd4’ìP©¿ãB5,%?öäæÌCNÓQ[<£bÑJ³HuyC[£b„Yz‡Ä\6ßèÃU)/“烿 bbã(xƒà% ¤%Í]îðf¯¸öúóçi¦ñC@ š9oN uÓn£àŸ–<1‰Éð¥$/÷ý‘H cÛ‹îZ”Šž¼?ÙûˆBç?jè9Ê v¥É,-êá€9 a²ðcJˆ>r%@ØóŸÅÞ¾|! <~Z25‚NC(º3|5ÿb&{ßa˜ÎH¯A­{%ôŽ¢28pô¾.j)sUD„+ÁG¡ªr˜Ë´ÒEûýÌ™3áæÉ•izÉ¥9Fƒœ¤¥0|wáÒÕˆŽ¥³5Å¥•ðñõ!ÀE]×±ë…O~êSð¦ÿÅ—þšû|šGƒ2êâÚ3WVppb¢9:¶žt¸K›r힇܋yœÚškÁ3¼4›ªž¾)n.P•’2÷†D0Ì´ ‰ÓŒò7Ð"f”«¦WËë­ýåzAï¿ÿ>£^ƦM› {ùäuv$€ƒC‚Lp§¨Þ¿CuÅ{?†»ó˜?ySÃÞ½zçAœ- š *›Þ¡®Íõ5(¢`ct–V¥ìä ¯ZÎCTE m¥‰¬É˜yYå*©MhÆ[% ­HíEšJbb"é4¢†ç¸þ„¸xš°pÉrš¨¸ÔòÇýÌs³gÍä7}#^ôǹe•¿iý÷×Û8ËkôŒÛº+W¯! PhöóvÐ^*‡³‘÷£X?Å¿Æt?Ó÷x¼ÙÙÏN~O>ù¤13v¯l8wÞ¸×~õ«_° V⪳d\ºúJêݪQÙ4Ç¡Î`ôòä §įÇÝ[{  "™±úÈ@ ê{ÌF§ì`cL| Vœª€TÏ©R4ÞÁ“ƒ”$˜|©±DÑ\&g®7µ¤¦¡’ÆN„G\1'ÅOK¢CùjòñŽEdLß|ç/è l©¯cTG¼\4V_N >mZ|/ø^_]]]Ÿƒâ÷Ö­[ Ðxë­·® â«ÀtÙ²eÆjrIII†ÐÕV¦ÃáPa^¤£¾QÚ… no¬F~e#ÓWSS|6fMW£)üeÑV2QÊ$â¸hè˜ÞÕµH §•öïßÕ¥ê&$$@v¥3f|Ð69™š+ÁSNSfyÁ‡;©K#mÙRj€1}B­{/— ßÙS|Ð{–ĺæõîOØ&55JM^8ˆß¡’-ˆW›‹e4³±¹‘RBIà¡P ½ékOånCdmÞQ}륵D"ʧpúžwƯ®#¢4YÈ›ƒSR¯„ð§\xþùçñú믺Ȗ|I‹åË—iéÒ¥FÂpž3ص ¿žÉq0ޤ@4j"Ò\®Eêí+É$u=R§B@RXXx9iÍ™KôÛÈD'@ÕyÓü9P~Ù .©ÿyµ5•CÀj¦Y³fAéÞÇ¡Fâ?‘àqË+ðxßò;ýËný¶80F ÌÌñ‹Ì,sg×G¨iÜõ¡ Ô#° •$$'c+jy&óugÏžÅw¿û]lÛ¶m@Óžžxâ |ô£e´Õ¼q­Š+£×|˜œIÒHµö‰’#©³qèÐ!u&//ïr’}>—’€CZŒÚä@$í&??ßH~øaŸK”¯´3PÄ[ík+pz¾÷Çù=9®ïsžõé‡ç[˜¢p€\Û;éDÆHà«G)Ðк2e™f¡f^ƒõ$/sîÛ‘™æ›ßü&Þ~ûí«jöÐCáÛßþ6V¬XqÕ¹ý€Ù†ROµË””#õ¿^Z³ÀÅ …Šk_[µËÁÚ›4íãÇÙíÝ»¿úÕ¯Œ}•+–Aôó,¤yík¤±úˆ$´Q%0v$ù4n»í6ƒz¶®»^„’ãý7Ò¾ù>$ Çê=ˆ_Ò(”I‘df8²:@ i-ò»¨ÝB»¨79^ lB‰cØä³~×CsÌiûÿþïÿ™ä¾ÿýïãî»ïÂW.‘F,ÍìfmwW8ÑwOü(/Y²dXæû¾¹8ï×ÕRthy›qˆººlh·8ç* W­$(Ó•Lê©_ãC2*! àãêÙ+ŸH"Ç¥îÑǬv¼IÏ€H`™É™eP#”ööâ‹/öáÂM¿öµ¯]6 ª ºv,ÊàÌúŒe^ª»Þ‡¶"í'éy2ÛJsV»4WÑT»”¯å©§ž:Åq+ûÙÑÐĦ‰L³˜‹mVá% t“#µòY9<`h*Ü TŒÄºW:^8Ô}€´Ö{V­2€D3%…4ÆH`©°ïÉÒÛJ¹Çúù~5 ì/ùKÃ’2ÖÏ»^þ#Ç`þªë=Ä™çMGº´ zgê¥_Ž´‘Žéœ­®“öq£õ€4†á+_ùŠa’1y¦ôßø¾üå/÷ÑÌÄSpš×Þl[ÇúÔfƃz?jµ‘4h9ÒØPI‡ýKÔ%ø«X^;Ë©ïsvošã°¯9ÄÝ™"F×  ¥>Äüjx ›Is‘IZŒ¾ûZ¦AIQg&iÜÌí·ßŽõë×@²fÍóÔ€[ñ]ÁëÖ­3ê>àE7áAùÑ~øÃNšš@dw5i\D(*EÂÞüÀÍ­Y¨þ[}xæ¶ÿyý6Ï+oò¼^¾å3šc*ƒ#9óù0>JÙ×MÒD”¿ÿýïû8~Dz æs­íÐ8`¾ µÛÁ´æþ9±Íè›ÔHÇ>£™—¾÷$&‹ ,ÒXôûÊhUþèGÔ´¼7õ;…–Ÿþô§®Û·o7Ú"õÌä æM;wîäZ0kq×]wÑ~;4݈¸Áê:Ôãê0;S& õ¹ƒ]7R™0 Ĭˆ>¬üæù‘n•¯’ÙÓi>“í¾?üáxæ™g.ûtÔ«ýÞ÷¾gD^ U0M¶:Yå(xd•&¡Ôg&J¶y45ÁD[¥™½[?n#oùДŠàì¦-[¶@é0€äf Œ7SéøHÄQ©žJ¾ÙʪÞÊsÏ=‡Ÿÿüç—«®(4,WOÐ"‹âÛI7š쪉À.Ñ<.015Ë ¦&ÍÆ2bÒ<Š|ôÑGÍh¥¶Ö•àÜñ D¥¦“^ÎöjìÚwÓRf!>2+”*.D¾=3â"èÕ÷îN®|ZÕØÁ¹Ý¸îN_ËAŸ§tÔaÇ[{Ð=.m5H˜žÀY²¹šfôB$„úë­÷¹~ ý6€°1éÞ:r¥ØîÖñ®¯„¢œçŠ’,Ìq 2™ÎH9"#ùSä¤RŠoe°|Fs\õ““T–´¡‘’ÊÿÝï~×ø@Ͷ¼ñ6ÖqÒÐ@/”•£³9¯¾º~.„«nz£‚³27rÝôè¸øxØ8ަ…¼žëÉø3@áÊt2uÕe¨iàò G·àˆË*cULw‚Q~Q%¼Ã‚ÒôƒøýÞ<Ü÷ÄCH‹ @iaêš;? Á¾ZÛ^ÕèDÕ¥#øÃïßÀêO? ÏÆrøyâÌáº2ÑÁ>ÆrÌ\±3šãÓ¼øÍ©ö“ã¢a‹-g›I-æÎxmÕØ4šÔ2Jº0ëÜ–¥Á^soíØ…’¦v Í†5>€¦ã{ðçPã™×K%øðh>gµnBX|*gÍÞˆpÎvA«aö©#8_R‹{B=Ð\­‰`;ÑÄ¥œýÙA+H߆m‡¸ÐZG+›Kœ©9:Ð=¡ÃáÞÄ\;éYè»§¼ã ¦† ­zdZYp(”ÀAŽqƒzJÞßÏ¡k¤ÑH€+ßþ1ùãõŠ$¼•`œ5w¸$¡÷ñ¼x|þóŸ7Bÿ†Â+=O“Uš z-m¸e›j×Kx+rM@ªH¨‰ uÔ³W›P‡b,|ή×@ôþÏÐ7xë­·‘YŠÎR¹IÿôOÿdÊ=·€ÿŒTL ¨Äö‡áº,šý}.8‹Gs1-i.‚»È/×4—dã½c»à”ˆ—¼³y'Ü[fbç»›á># ‹¹‹›«ÄvNnz‹K »bÁâ(8ÏÁŒúk.G^A bR’qþõÿÅ;áÓ±Á׃¼„úz¢ìÒt¸"Ü»;ßzÉË–S ñ檡.œX5”ï- 1îxíØIøÇGÑdèŠîÖüÿì}`UDZö¨÷Þ ¨PDŒ©Æ`ŒÁÆÜmÛ‰SÞŸòâ$/‰Sý;Nò^þ÷’8q/Ïà†M±)¦÷ŽèE !„*ê]ú¿ïH+Ž.÷ éêÞ«+é ŒÎÞ={v÷ÌîÙÙ™ýdÙë’ëúztä™Þ˜†¢<ö®>º«?é³OrrÃ>Ú€+&S à £PH—÷ÖBNú9©p“ÛgÜ"Cc*åÐo¿¼ì y Ζ’À!2mÎIq(‡Î®’¢‹ôO–'ÑCÂq¶N½”–c(ƒ<%P¦/˜/ã†_0ú"9y"SÌzLn7IbšŽËNœYWïÁ£N®âšòŠ<)ͯ”ˆ‘Ñ2hD ì%…—½¤¾ºTJêJqúd®—×içÙx¸zÈ<î-ƒâB¤‡›ÕÔbÛ+öX•\’M‡/H¤a˜°áL!ŒmÙù¬`?§{[}‹µt²÷sÖ0ncüx¸;›L„3óÎÎÄÈ08PÂÑt?óçlƒpwïÿ°¦|>óØcµa?ýéOåÅ_´ªõ”Áʪ—ëa±O:C¿ì(Ù¸¡„@1 ^iÞk+pÅøZ…ƒÝªñÍâà¶|·.`8ß ë… æR‹{uuÕãHa4çæî%AØLáU'ý#Ýpô´§xâøà`œìéMæÑun8  OuöB»È•ãir¶¤JÆÇà8kwMkMp+fVWV Gšþ“%ªÁWª ªç Ù:PbÀ<„Ž“,JðV5`">€ÃÕÂ$8ÌKüSBùï'ní)äU%äj ¡) ‡²Ih/±¬'p&I&B·JL¥^D]YFO8¿÷½ïɲeËÔ«È/ùKmÓVk„è±`Ÿ´fRÑ]/L§ÖúÁêHc—ð 'dýçŸÊ¾ê<© î'II1R|ü´Ä »I’÷‘¯¿øHö5¦KvAƒÜ6p¸Œ‚úv5]‹Ö%"$–U>ÚÀnÑ<â»Èè ÃeÅž-ò¯¼49²õ°Ä-š‰1§cF#&˜Øƒ/W.eJíÄ$i¸ºSvaÅR\V^Æå"¾^nRx ü†X.å‘5Î1 Ã>4ˆÈ¼&JZU®Þ2aÎ=Ré²].—UÈè™óeĨ$ Îc†æ IDAT5¿n³”Ö7Éäy‹ed•·„) çVHcl¢Œ½ïA9qþЏÅÊý.‘Äh0¦fÊ»&ÊâÂÅ? TÜw‡ô’$µ±žâ×€ŒôAY³å€T×ÔÁ¬~– Œ¹¶ꎦëT™Ö0Ø&´‚%·­ l âœŠ]‚µòhʲɀ˜5 $'+CŽŸ<%5SÆÇFc)ë˘`IJ€R¾uÍÚö­ëk«$íð‰ìŸ(18ž–KÔÓ'ŽBþ ð·åíeêkåØñ²iËvùÅ/~ÑZ(Ï’¦#;ç†&9š–&~4‰=qŽ|Oµ[VQQj ÖŸTÝkjp&{UÁ$”ýÌûPÀÅÝGFÍœ#ƒ'ÃÝäVÞ8.šäŽŠê§I($:JŒ™&®Ð%¸»yà>ÎØÙ’œ:ß,'  ɈKhN¯«f@ì ¹ý~Ú7îÕ‚;VH*‹î/ ð«‡ÉkCCt"ž{_?ˆÍpÔ¶ “q7׈«§˜V‹Yñ9‚{@¹óÖfOsÌdr¶íê1^O!˜‰··Å1DËÈ ÿXÓáyj… ˆ“, ›­ilàž „: IýGUE¹vÂ[Aa±dcIyìXšs?”eàGMÆA¥$¯ƒF(؎ɃG Œ/–¼Ü˲gï>9râ :ÄšÈÏœø« KÔÂÂ+X=5»!À«È‘ƒû$íØi©@\gtÐèQ_£¹!ùñ~Øšý ½õÖ[¸¤nà|µ²XGëÞ .²}û69z2]›}]W‡8†5}¿ÈÄõô×Ê"±íŹòÞ{ïIiY¹–{G@VÆ)yûýO¥ g¸êëô_-ªõiÕÝ­é© ÜÞ°ŒóõÅÀ«ÍÞšu Úë´ÜóÄ ß|±P>xAdåCfÓ2lY¾Üûôs9‰Åèq7I\¸«$œ.–A“1Á8 kº¤ŸÏ«05õñ–{-ƒL—q3nÿŠËräb>D›M2ë®ÛdÂùÕ‹ÿ£YôD„÷H‘Æ5 u-Äþ@KIîùâ„Ï€f p3)Åøœô:XûUñ ™)-/‚ëFG¾ ‰§! h 4·ß×îR+û÷ÐdÒ¾þð‘ÔK–¶C4@&N Ód•|Ž®9eÈ!¡H‹n¸Û˜ÖY2(S`:M4ù§L%jµ4.B…ª‡‡fױؕš(a1ñâ£w_ì=áþ?l€ ‡’5"JÍwÖÓË7H%ÆAijUÜÂÅ£¡FŽ=&ë! QÌ•§Ÿ|BâúÅkÕmÄ \]M›w‰ˆ —~1áâ+þ&®[RRå®…8ûöKp€‡lÛ{Xn»Œ…ÈÈ¥±Y,fJƒŽþvsó”Q#‡Êš Û¤¢·9ðù³;‡}B"°? òe/0r¾>ßÖp¤>ŒFØì×#.í‹”˜ZÈHA«6€¤ˆ ÆJ‘ÊêjØü»úkÆ õþþPH6É”·KCm¹ìÚ½b¤þš¢><8 M6]ùÑ,"u—°Èxyb§ŒŒ³²eóz™5ûfñÁnñÌ k]ñãàØ/îvð/+“hl`õ÷õ‡o¥pñ‚$Ø‹wîOˆŒˆÔº6¹jкR·Þð,7ý¦ÁÈ‚ît¬5˜é t0}JMÚ;Ï4½½[Ë@xβ2‡€ÔÕJ„COPp(V#¥¤à’H;Š­?nRvµX|ý‚e\êp)̃òÚÅ+‡æVÍfÈD¸Ñ" D0º­àqš–€úÎòëÀ(‚ª‡a9]4Â"ª¢ª¢â2qóÆ&GlXT@VTS‹ÍKýcåȱC²fe£løj­L¿D%1Å+uôHyýÝeÆÂ‡Á´šdã–­² ‡ó( éÏTؽw¯|üɇ²qí×2ã¶EàÇÀÔ.gž‘ŸÐëØÔþ=»$=·L¢qÊݱ —äå¿ÿUr‹a='‡Â#pXQ’*ÂêkêØqòW_“è”)äë#yùÅ’'…ùÒä úÁ2EE9òéê/äÀ–Í2tÜl‰ˆÐ+¤Â+ÙR¿}\©èÀ[Ça„°Lš!‡-Gaذéë ræä ‰îß.ØóOD»b5qe-V›¶Ö//'G6oÞ«¼,™3s¢Â„êêZˆUÏ˱´z)ªiÀ ²A._Ìl¬Rkቺ¸ÚšZɹaf]‹]É5ÐW}òñr9έk`JÉõD…ª­èKiÝñøieui«¼{z>§xº£·ºû}¬e 'tŸ¨ Û5H™9EO\Æ…FÆÈÔiÓ`ýQPÃ`–:Fª¡Ã(„+8,RÂ=á­3SüÃâà³™Q( ÅV\Q(PŠuõÛüÕŽS$<ª ;W]¤¦ªRª0c ô”ºÒÙº};á2kê 6YÅXóBºgÂã妛ÆA÷6Jª«dÛÎ=2}Î`$7Á»j 5Z*k¶¦ùrÏ ÐGýeúÌ™XýúÈÔÙ0'í-nápÊ+ë/Ÿ‡è®@Î×yÉcK…è϶uÕUÛ©ƒœ¸=÷ÜsÚf_ºßá¹ß\O:…¥©þÇ|ýMÇXË@8ŠqZÈxö ìzó^»¼†&BÂÀO&@âç$Q1¾-ã\ÜPŸÓÔÁ°ÂÆîèÁ½¨¡— †÷]¯W|ŽÏ“¨M‡+ ÓÀ!)CµY¤+˜Y¬«\¸c³äQc' \W)€~eÝêUPfCGsÔðˆþ<10ÆFIÜ;̾ ¾¶P¾7ìÉ= ¿h¼±ÇäNX"=wNžzú)­L¦Ÿ4i’¬\ù9DptÏâ‰|ãdV9,ßË4i(CGp…"¹@6|¹Z®€ÀÖ ïî &s‹<þÄ3ÚÊÄGcÀpÉÚðX§ZäU\Ô1wÜ–êï 1ÖÜùwiâ4wXQÍ]°Pf̹M£=Í"cšêj{D0 Û¨ÿð×é@ºRëz÷ÝwÃõ¼– eŸ<ÅÞ„; Tø¶v}ÈIÒqEå‹„üý‡Jlò`ÌÔÛÜú4=)|ë·k+™ÞÈ<¶mÛ&[a²oß>Y±¢yˆ`þüóϵï¹'µ“³ÔuéÒ¥ÎRMemeÞÖ=8üdÝo»ÉDhvËÏ«è,PtEÆC`>\8;<ùä“ÂÀú~ðÁ2räHg¯¶]ëÇÝ¿ÿµî0¶kiöÏœ«´æ³(ì_–=KàÄŽb)ýI„dÜõÚk¯µÍU<'ƒô| X=‚BŒESÞ­:ü‡.l— ;:¡2ÔÎZhpõAÆÃ|h…E†äÌðÇ?þQs—¡êø§?ýI.\¨~WƒNC÷ß_AÌÊ Ž~bö£ýHSÝHZà4/âäá$˜¦¼Î]añ~ÜÈ`!ä™`,›µ_vøÃŸ?eËyyyòÌŽvœñèLºu×wt}ŒïNæB1Ý—_~)øÃZ«õ­o}Kþýßÿ½õ·½œ%²ÝI{¿cGòg_³¨÷êH6Hãdí@Ï<à$ '‘LžÚRÆ4\»ç€ü-<]Ðô„OÆw8‰¢[!cõrŠàj ¸—‡Ñƒ)`ÂÜÑá>Bgä¬å] ;(wQÿ(⿃ûj Œ( ~Š¿”Ÿ®Âýù¸¿eÅŠ<ž½áƒ(Cûøø2lÏ™ óf¾ÉÛ\^‰;vì˜<øàƒ­æ((ÿåF+G”o®®zuWÌÕËÑq¤Cw¿?ëÀ>ßUæ|æ~·ïb³?\X‹<ìñP[^$Yç/KHB¢áDH¼Qcm‰œ8™‡Ó@cqŒüÃuò-¯æ^‚¦‰Å‘ ¾žmŸnl¨Åpz oV,C}…ÝuHjüq†P]¥Äö‹–úª"ñ K”(øjë¨ß3z':ØŒð¥ÐW “r)ü)P­³¦"|ñ\üiÒŽGøQ a&Ï݉k-°C€ôÚGÅËÖÀµ«kGëÄ3H¨ãP¦ydkÖ¬Ñ\•t4#AS àûà,‰†JñÍe´ÜÅõ}à!ÄÝXîÛòó^š4)Ý yÂ@eáEY÷Éç2þÁ‡%^¯¥ÞK²dÅ'›dú}wʤ`ÜÀs6Ó{xá˜[PˆîqxЛv,-Ž{PSKYÛ€óϳNí=ÕCdÞäñÁ}ž]î O×^ðâP†£ ÖÏ“É3'K|¨¯Ôá8cæç I‡›F~R®IjK.Ȳ7WÊùwHSi¶¸x5IÆQœó3îA õƒëž¦Z©ƒŠQcDªfˆÎÍ—¹¹¹fît_”M_óú.w¨?|è$~øî}„+— zÁæ\üþx°ÏÀNxÕ¥+êqT–råqÓM7õ/j{ à›\¤êwª|›œÄõÀq§ËÖ=‡¤´ºQRož!ñ®Wå|f¦ .+‘ G÷É¡}§qð[†ìØ•)©·Ï’ìô49¼c¿äVzȨ)“eXÿ 9{è\<IbFOÂÉ—)âïí!U%¹²{û¹XT-WNo”ÒÁR É;÷àøê —Å/0FfÜ2M²w¬•¿ýï© –éñ.²eçAœT ÒSå¦ñ#ÄL K9¶ûkÙ¸ï¨$ß hðGÏÝyy9âZU‡èÒe׎½’qµZÁõÒ”ÑÃqÖ‡ÌëbnN0 lÆ@Ði}ÑA+ùr¸rYü Äq¶óGà å=¨…®ÿÃ4Ë€d4íò×\’h;Ëù»=@=´Û$>u'í™R$F_=\ØSþÅ_ȯýëÖ2È<^}õU‰?~œ4´(jkï]mqôºMmQNOȃ´  ­=Vº}Ö!ƒû.E¬z`;as,Írbœ„Ѐ߽+Ú¯^ø§'AnX½VrëÜàpóª|±ÆUfÃtÕKª .Èi§àZ¢¥š<¸Ï‡Ûü‚,Ywà°””¡oCôôùÚ:©›ÐO6਄Rï`™›2^ó+R''¿^-›öeH`t¸dfçKð@‰]š%ûœ÷ð`9³~…Tø‡Jru)V@UðÆ\-çqNOV~øÔ^‘/?\&áýž•‘ýÂÅNWéhÓÍ'B¢B=dÏöóšƒ)5ŽÖ®/–µ-—ÓÁ §šï¼#ž?–›qz¥'´šÇ/ög‚ö$w®':øx$®ÀµM~èÀ'€Ü:Í)õúdÈÈ[Àë©×ò0?ÊOáliZ-”ÈÉÒ• 9øÉ“'ѱÈß®æÍ{™˜Åp©h)¿®Ä³Ôÿú¯ÿ’Ÿÿüç­Ìƒ‡ç¼ƒÎC%¬+•÷Z]ºR–µÏ²Š¼Z›OoxŽÌƒ›·xí®÷aÙì·tÃÃ>ª€fæ6l…û³תðFš£À^Ë<øþÙ§ŽHz~½Ìš·<ù%RŸ[$çÓó¤¦ÁE Î3¥^2ý®»ä‘% $1!\Š/œ–m[K>ÄZÞž8˜mÿ 9“ž%¥U2nî<™0«Îü*äàæÝ2h‚Ü}ßb™5yœ_z mE=\Å¢«ò¼sràt.t 2rÜWœ1Ü,áž/²à™4Y…•Úq×LɈѩ’=UF%FH.Ú¬¤¼ "3VrQ–¯\/9¥Õ8¾¹I.ìÛ)‡Oãè„Õ pW{“_3Ø=ªít¦“Åa ŒGþ ¨Vfs@gÞs‘žŒdÐËlÂæÈû[îÑöü: Å÷JðC‰‰‰šµ[wÔÁÊdãŠÔå:ú~œüp_7˜rïÓ7¿ùMíQ&Ó¦M;g…ÃjütGóë éªøøøáDJ‰‚á új}c¦ž8/¦¸PšüúáÌú ‰ó#Q©.‡wé&OX`Ò@Æ[%¸j§púIBb¼ûC™MÂ4â<¡ê:œ4!AaÑ8›&DÎA÷Qxþ‚dàXâäðPiÄi¤Mнzà(_<çÙP#¤Ó¥Ø3N<ÁHšÜaŨS×óxOw0.øCý4‰>®MµR†UR énž8’`ìh‰öÕéOœ¿¥ºÄ@ðzt › ¤¿#k«›‘®=æÛ‰@ Ö8¨rvNVüxhêjº¤oûDÛ_aaašhŠ:ŠhΫ•?gÝ\*v&o}>–Â/¼ðBæAßAï¾ûîurM5Ó¥ØÄÖu°T7ÓxÖåwgLëÔ¿É@¸"c;tW[P”ú׿þU{}N@°?ã;ÀܸïAdB’xm>-_¯]+iØ¢}FÅ„JÖ‘ M*'2dãW«$Í墜Ï(”q§È€ÂÍ<ß½¾J¢pêf(kO,-¨HçÂNÛ}eà8Ù³s«¬,L—´ûÅû–±R^%éyå2lDø†„Ê¥‹™R5<^Êr.È^wØ8>Y|qô4+Ì/Âöˆªð 5±ÕºÓfúð¸&Mqßþ8oø©vóoŒÄîQý$©_N½^ÃI³Ò•:Skw‰`ÀÝŽ—ÙŽl®=Y¤áhý#‹ ®¿±`ùòåxà6wÈ<¸JàÎú("Óá3̃³|S‚(.àËYŸ­AŸ'O^ûíokQÏAfÖÀò»»ÝùþÝY6WÀt£¯m#»ýöÛeÖ¬YÚÚ³”2F¦ƒ^âB–œ¬jIÓn5Ùö IDAT•±Cáv§¬NR&O¨€½²çÔEÉôr•Ñ8òy䤩’ıL¹XÒ ýá!8¡˜Ü4}†Ä†ã5f»ùÉÍ·ß)E+6Éeœkïš(#â#e`øÍ29ƒädåJôè©â["‰Ceü¨óÒè(o-Ç/H{˜Lž>UB¼q¨f+â#Óo÷o?G;óf”/•þc$$i° }h‘|´åˆœ»P#Q #¥_¨S•¹FíO?ý´[6_«ùP—ˆ.K_]ØRðqÜKî8¤¥¥%½øâ‹­® 9sàçÅ~ΪÉDŠŠŠ´|(Òbœ5hÚkàä „.)芀ç˜`PÀ”»víÒå±üä'?i½¥MjìÕ7[ ê!7Ÿ™yß½އ“ˆz½`Ñß?~ ÄAž28)QFÏ‚M+œ‚ºa#¦¯·¸ ˆ“‘S+!êr¿¤Çè—4H\‘þÚ@è"ÑCÆË#ß"•˜HòTM:pÅªà™„!ÐO¸`Ÿ˜—Ôã|{_föo%J/ƒáéôòJä…Iª¼à9oÏæ\=BâZø ÃOÜ<¸*Œª¡Ü~ó$nä©mhÂ;á˜805Ó Š—È@Ì­ÚŽþ¹Ë}éÒ¥jfD÷E pBDÝ(&ÐÒæÍ7ßÔ¼!ôEztæÝp`\0PžÞà"èB€m¿ƒLâZÓëâèjêFLž–ÀàÐk©Znºû+%ô+8JÚ,¸¸ ôðP!ß jèu—`Ñܨ¥¾ÔÙ@½…Ýë…Áz? !Z0oܤ9â@à¸Ûn»mɘ1cFSïAÓV*2&X+æ NB1W45Ï,ÌÏ‘sçÎk3†˜è(XS@‡3¸££#-î(m@YçÒÏHhd¬vl©+àÅŒtiòð•h(ë¸)Éh€9â…ó™!!ÁAf—¾Öäë˜gšäü¹tñ’ìòõ€¢²'A#„Ùu<ÝDÖ€Miõ°¢ñ29æÖôÝØ÷hGQÕÃ?ÜÊ@úúaa¦t2~7SàÛßþ¶S’âšüÆ9ªGîp ˜Ü “KO=õ”æPKz*4•9%u5ÕU°¨Ê“XG^‘ Ò.k÷MÈ0˜‘^'ÑîC­7›ä0Üz¯[»AÒŽŸÇËšuëeûþ4,‹-ë,`¥q2í äåj ;f·së&Ù¹÷°”UTµæÞÙ@vÕ®Z½RŽŸÉÄ™á¶×Ùt¶>M¿fÍjÙ³ÿ¸TVwØAg‹°[úâìóòú«o ¿•¶)#ãü yå­eZŸls?8i¡þŽÀ•-ß{ï=Íiü1(ÐÃ(`ÝÔ÷ú—,h‰²<Š^ÿL§c8à“yå^’Ý{Àu€§dg–:·@¹÷Þ%ât”#êõš™fþ|Žñd"¦",®j˜7Edæ ´8O=$闯Ȁa©,ç/BZ#g„…ÕZñ Ž’;nŸ/‰ñ×Ô=®ÁÆôOÂ*!@öl]+›·í‘S§ÏÈ´y÷˜+F‹c³3ÓåHIµŒ9\Šr.JvÜÖ]‘¯7o• èD¹cÞL¸V¨—‚œ,Ù¿¯ZFŽ*çΜ€°Xñj(—>ù¦Žá²øÞE’Óæ½ÊK åãåÊñsÙ²²äºò+rð`šÔÔâ܉1Sdì¨!ëÖ‘%ùÙ²ïðI5f4Lë‹$=§":Y¿aƒÔºúÉâÅ÷J5`yùUÙ·k¯ŒŸ*ùÙYRÝä%1á¾²âãIVqµÜº < Í‘¯…W.Ëœ³{÷^‰ê?Tî[t‡”có؇ËWˆk`´<ôÀ}ÒPzE–-ÿT\ý"a:}$ÅG›•-wä]Ì¥Ù»}«¼÷áû2hô)»tF¶î>$ó-‘ü³{eÙ+e<Þ§äÒ)Y¿i— N$Õ%Ùp޹\æÞ:S‚£Hˆ;övdäÊøÉSå̱ãräð~ü¾,=ñ”Œ2°Íûš+¿/ÄYúû»ëß1##CJ1Q5jT›oXŸ¦»Â6a ˆ—ãˆvúD%†5¥´$_l<( †Êü…3%ýØnùëºM/ñqÀˆ™h;ÿ5cÇŒmYqÂY ó#câæÁCpkÀß´ðâìÐ\!uƒÂŒL&ýÜ))ºûòzOÉͺ —O’ü«%Ú†¦5ðÞòЋagÞ,(­¯­”[ÖJd:63íØ¥YSdaCQ%VP´7.³U–ÈÊ_Šäâw¬ƒûT_É8{J’”#÷c_K°TC™WšŸqÐ)¼o òß.!‘IræÀ6ñ –¬c{e¥·â;%2,¤µ¨_}.Ç3®ˆÄmݶ]R’bÄnV,ÿX®Öyʰ! ’3_·ÖLÚ ¸bcÔÚÕ_ˆ«·¿ä; YWë%/ó¬ÄAi™}ê¤lÚ¼CJ+ª%¤ªL¶£ýú'ÄÉa ¢…ÕÞR–yLÊ`³_SZ ,ÿDž~â1I‚3<¹™gäÕ—ß”¡£Fʶ _‰'6x¥Ü!Qý’äÂñ½òɧn’}îˆDô$—3Nâð±#(AdÔ*ãN\=¡” BžO­»Ë”±£då§+dHÿññ “<ô‰•«6`ŸÆùÛßÿ"³fN…ü]¤¬ÎU¶-{S"`jê×X)Ÿ¯Ü —ö-ùîØâ"{éyá÷¿”(][u¢Z½*)¿Ï¿ÿýïN·ûÚÑD>pà€¶ŒûÒ.]ºd…äÄ~5¶ ±_õÚæÌ{µrÀ+gO— [öÈCGà ɧ  ðŠ’Ù [íx\ݽ0è…³2ø¹©«Ö6†?^xH½îrU¾tŸN1ÃwÞ))))m Ç/?Xm%¦ ÷Àñ‡UFey6ü_ºtQê1› Éɽ(ùÅ¥­ „ÑLðê“4ZÄ`žó‘xà]Ì‹žÁÈâ“%ÐßMΜ:.é eöüIØbµ•)ÅyùRQVzÀÜÿ\4³_Z¸KnN¦¤gçÉøØDlLò‡þ圔"­žxb€ÏJ?+©ã&ɬéÓd8ò=ºg“ìƒO óo•p¬–2±J±ü± +>&\Óõœ=}AÆM›+ãSGʬï*–R0ÛÆzî±h.KW:2¨®(–#§ÓeЈ1Ð+…ÉþSçäjY)Þ0¶•ÕR÷0bÂ$yàþÅrzïÙ¼k§T¸ãLîÅR’uBÖí<"%…y¬Ýeò¤›eüØâ‡Íc¶„!ƒ‡hž† LÃú;šS°ú]$Þn%òõ®Sš×ƒ»ΑÜì\lH‹Ùsç O^•ïÿÛwåõšJ™xÇP~QvœÌFÿóÃÊãi™2,B~ð󤻣#BC,êÔlùΜ×w¿û]í[uæ::¢n\@¬mœ¾ »ëé¹ÂY G1=Ñ4fÒÐ(”–„‹GC•ìܹGJŠò¥ 3—¤˜ÁÒ/Þ]².œ•Z·¹ij´`©Æ|¸»;55Uèºâ"Z80Ž"2®BÚˆ¿Z ÖÆº† §-Ð$ 0÷«¯­Æ ]‚ J±2`È 4™í"}UM-D¾âk –ÛäfYÅ÷óô ñpì¶E\|áWn¡W­\%^A!xÞG<[”ïÍrÖ ÁÉ\=˜ ýýH@H´¤ Žú¨ k×qÓçIÄEk¿úR² ®Ê‹çËÇŸ¯–[æÌ—QC°›¡º.X­1X¾Ü°S *%2ØGÖ~þ©T»zÃZ¥Ùı\ÑW÷&ØPW+õ(»¼ôªø@D8eòMš’]%Uuòó÷_0?_ø>ª«wØÚ{ÁD›«Ó¦&Yüà“’ }ÄÊß“2˜H>|÷)ªç»zeû4Ô×IlÒ0ùÁ·¿#_­ûRþû‡…«#qñ“¸˜YòþŸÉè1©Úì‘õð ì4“÷ñ€Y)"±§!¾šªï¡/¢[#Öê=Igb_†Ó§Ok,¸ã'¼Î–G0g©¡®J&ªV!èX>~þróÔ`áðYtVJªi2ÇÙf“ÄÅÆÁ&ÛS\°"‰À‰n>K¤ŠÈ‡ºЬ¦OŸ®mÜj¯È\ê4&Ck8dÃo?˜ò…ErÓ×0  ’ò’Rm6­Øò§º…èèP¹x6MìÝ.[6nÆ÷ ­ój}jvÁ¾‘¡’–vzhxY€âðäñã5‹«b¬rª«`Ö Çl™ÐƒìØþµlß¼]\Ü|`r.c&L–©‚ïzŽJ:XÿÕ)À¾hÑ]p‹\+/¿ôw9›]& µU’ué2ô]c ,j8¼‹ž=sL<ýÄÜ»g'Ü)Á^.ðŸt¯ 5F¨§ ˆ,7ß4F*K‹å*Ҳ߰ÏÖÁ×£6 MjáÇ»²âŠlZ¿^V­ø“Œ: €‹oSŽÙåÚö¼ ø*½¤ú^ûâ•g «ÓíMÝÑÂ=j¢wŠs¥%&MÔp:@bQQY!—/^–ð˜~2tP\—äc'höf{m>Ç 9¹~•Á°b.–ÂUbcãÅþu|=áô°*\*Ý%$0XªŠså«/׉ôw-š(AØlDfCÀɽš-qðH Àjb5V.ðæ9 ±¿&V³\žHÒÀ¡rÏâû%¢˜áÉ1’†=«¿\ƒr‚¡Û©•~ýãdôØIЗ”Ê–­»% b+*fǤô‡…Øj©Â¦©Ç¿1[üZëÃò&Œ+o¾óŽlÁîÙ³çH‘§4ÀÙä:è-ŠáZzÁ¼[XñöªvÃ{lƒw.’È„’4x¸ |ïþĆpÝÑ]Lt¼ 6Žä*eÓ¶­ð!äW#dîŒÑòù§_ÈåÂbYüèãз©»Ö°âüxÙûÒoÀH¹ûÞûdÄ€½²vÍgÒè$ß„s½ì³‡åóO>”ÊF7ˆ‡jŒý†îD‚Z8V8uÊo(ÀgL-ÿï¿ÿî¸'É’»çÊk/¿£‰!r*ý+ùàÃÕè‡I’_X$C†ÀF1/– ñ\D°¸úô“áÐkí»xb½-rÄ£AîüèkÚ®;Q-#©A‡R G1µ|# jg£û«­I"b hshœ+,Œ}öì«Å7Ÿ‘Aó²ƒ:g6Š!u˜âËL?±eI06¡ fEx#äÜ·#OWÉÉÌß~K²5³Ý‰ŠN† s.˜O”ŒÀ òfÔT’Ó›êÑø‡DÊ·žùt˜á™ïüàY¼{#~£T”ME7ß…+•ÇAæëŽ••KÓh™zË\M\Rš›-Ëß{Gr ŠHè„|dÞmóä?~ù{­þ>X7qF $¸Áà ºªRÊˬ×0Wwoyô‰oiŒšu|ôÉoÉrwoó©Z]!Îi3BîZÒìÅßeӕرà9 d¬º¾úü3IǪÔF¦^â‹x¢“‡Ë£.–Ið‰äí%ƒ“d6\P¸buÂ÷Iž"Óç.màB¿m=sÛ¶ç€üàߟ•ÛæÍÃ*×M*±šò†ž… â·ÏÿN+oþ·£ÎÍnõø®l/®x?öˆV/iJ¡ ùA¬¼¾ñíïˤ àóòëq{bØÖ؇ÔÍÒ±é„ ìS@smôêbæ¶~œ „ÝĶ &º-ææÁ¢IF¤Ž—”cÛ8+ät>Ë4mŸïXmÛDzY$—Ûðå ˆON–‘QYpf—AлP¾M7 D: -ƒŽJÏkøhy"_®ÎÒ Þ2dH«]Ïø~rçÝ÷´ìá9#®óe^ÈÞ,À@Ì& W†õ¿Un3‚çµ<0;¶u D³Ì—©0W&°\ÁŒýØ…\˜Q‡kžUµxÐØ¨ÀÕ4§Ù“ €“ôuñâEùþ÷¿¯åøøãKÛäLý‹2,Å-æà p&ºÐp˜:Ó‚.(Àß0ß5G°>·jÕ*M¬î¬$è‘ „L@mȲLXú¬C_“’ÏqåÇÍÁÈàŒ'ÎIV` £RÏvöúÈ#œPj³î[n¹E.\( ,Àת˜ud}:[ÿÇËïÿ{ÍÅ=Ûç]h»´•"•u……RJj#[ûw_–K§—œþÛ¿ý[g_§Céã1qÇj´+fÓ*ÈHÔã(@Xt¤é¬`ŸÔo˃>Ín¹‚ GÝ‚ 󠎃‡òðÊ|ìÅ@X/ÖWá ëiÃ롌%Éòluº@èׯŸŒ7N~ó›ßmÊÕ`lÃb»œÕ~ìð§‰"\×=²Ž\º3ž §%WXí1ÎPRR"999ZÖ¬iøüóÏKBB‚=ŠÓÎó6˜‡]HÛã39s¦&MpÖé1 „䀯­*æGΕDg€«îèäDo¾ö€:S'[§åáTæü)q“$Rr&M‹3ZvðX]nÖêNؽ{·ÌŸ?_«룀móÐCµž¤âíyeÿàÆ5®â”û\lìµMŒö,ßÈÛ €)–,Y¢‰rMãåwb øÉ@(~â©‚<·¼3ÀCYxŽ:WʦÚÜó4º“¹PöO9¹5+¤3fÀì7M2°ùèoû›Ì;÷:½g×ôrÌ?%âþÒK/iÏ(z(sIkê òhïºqãF­n7Ýt“¦_PiYÞâÅ‹åô8ï¿ÿ¾E=‚JoË+Wo¤=æYê‰,é2lYv{y±Nöj‡öÊ5î¸ì/D¾Q :qŸƒ:?hž&HÑgÛ<'ŒåFbÎ(yœ-™7(q€6eüÍ•«ž·Î³° 7Ê»¯Ð¡¤\Yqç{²¾kêÀAâ—¥K—ÂMÈa¸ôا‰°¸ S@QÄÄï}ï{ÚÀ9ûLèw‡'>ÆÄÄhÌÖÚ:¨rxeð¼‹+Vh;µõ÷Hû©S§j̃"7ž_O´'ð˜X®Ì¸Ë—@ey4”ö8"¶µXÖùܹsš ökÚ¡5³.Øha0’.±‡=Ê1Žâú)Ø;å¬ÐcåÑœ¥r—&Ü}Ø\qp`:t¨æ àš%LÛ¦a:º  «ÎäÙ€7Ê»m]û¥˜ëÀA:[ ºháJ,+úÿâáZz ¯"y2kÒ™t#*f¦Oß‘0Û‡æˆ<÷Bϼø,ß—>~ÆAGÃc„™Žho`ÛÒ• ûƒþŒzÓr9`s‚ …­ÚÁ´Œö~³||F/ \} ¤=jõ®{œÔMž<Ù©_ªG1R’+šjW äÛRdd ”góƒä ` LGÒ¿íC-..î´žÅ4Ok~³^í=hQ¤wðàA ;Ö†–t8ÉU‘uáy,<Šîd˜*«zZzGæÍà믿¾N×Âö˜ !­Ä¸ŠtP)Ï›ì t_ÃþÔèé߃7iLÆA½UoÕÛµGÿ¾|HêÚÿzœ°æü ø!QÔÀíýT|ò#oo•ÀgÈ08ƒæÒ¼ÿáz ¦ã½ðpî/ðÑ,™ôˆ£È¡*õNêj¯òçÌ™£eMq•Ú›7o–M›6i3tU&ë@Q‘f€éú…:ŠžÈÔìÝ»WÞ}÷]mfoJ?¦£’šHý‹#€ –]<õÌ ®7*_O{öGË$“c_gßU}ÃÑõ0ST °xàm¢f§ì-eÛ©ví‘ „geäóÐèæ(ÃL„WK㙆+™”ÊÛ\~öŒ3­ßÞÍ–uáÊŽƒ;ë@QÒêÕ«µUuzf@ÑÅ\DÒ”z2õ'NhLÆ´NSqó¶VfšgG~STG¥øƒ>¨é:LiÛ‘<ôÏ8²-TÝH_âVK*½¯jp1‡‰¬²Vº9õÛÁ×µuc Šˆê£R¿muå`Adþ}F-Ä_üâš[mê (’úꫯ4=Š¢ Wæ€+”gŸ}V³ôÒÄæÒÚ*ŽÔõQ‘©}ðÁfE–¶*¯¯çã¨víët¶çû[Û†=–Ø“˜FÞ×S€Y÷ß¿†dÜ/AÓ_e©výÍ1Û·o× híĵԡXÛY-•¡âéj„çŒsuôöÛokÑzÑšJg\mJ&I`af,JlIUš”sDñ°#€†.ø®;m­cL³Ñ:½¤ î»ùóŸÿ¬lCŸP¦Ìƒ2zŠõ@3Ø;vÈsÏ=×*æzì±Ç´U•ì¶~tTÊÿïÿþ¯±â°%a¯ÏKq ^k°'«Žú3lGµkq<6 Mdþ°ÌħÚÀFìèJÕË` ŠÆÕ"¨ÿà OK Ÿüä'mögp5Á•¾Ñ"Žfº{öì‘ßüæ7šÒÚTȽT°?üðÚõÕĉåW¿úÛÙºûÛbELnÐzìµ×^k}òÉ'åÖ[oµÛ §µ #ÀAFÍV¯buY &RÏÉ‚¶¡U¨tÐ\•ÂJ‘;³ÙˆªmÕDÁb5 –EÒôí4yåNðþóŸÚ~SjÐ ë‰'žÐ6*Ò¼Wd Ä_ÿúך·êN¨7ᬊ{PpÅÌÍD:P¤¸‰aTÕnp•^ýá¨åýãÿXm„íOÅ<8È0\ˆ Ãlz„~hˆ »Þ'qÆoÌ€ýtMdbx å5»oËH,VÃ` IÓ7opƒÝË/¿,g£`Í8¬$cøÎw¾ÓzÄæ¨DS]Z@¹TæªÌ„H“an”TpõêUùè£4d÷i‘ÌÙÓ¦MîKáEU³fÍ2V5úÇt€©ÆÀs¦Ýð7h0ÚÉ{© °žtCãGÀÙ³gåÕW_-ÅFÙXA^E™l_~”j¢Ðî*Ä` Žh%'/ƒòkîí ã ¸ÊhÒÌ Mt‹B%¸µ@qwœiÙE‘ݵ«Õ w{ëáøñãBüË_þ¢é4ȼ¨È'C¡«zN®:¸W 2ôfÊÁ& Vx[1ÁØ"ƒŸ«˜£Z´G~0Ôà܉Ý?PÂ]ÙlS5³Sâ,D]¹ž&}&æÔ©SòÊ+¯hû$¸ëÞè3ì™gžÑôjæoš¦+¿™ç½÷Þ«!óáÅLèJ¯˜¥|ÌM18ºXQ¢®Ù³g·®LºRãÙQ@ÍL9Àp°áaóe€ŽÃã@&³°ß' ®W\ºÛ e‡ÞÆ ½ñÆÚF×®LÖnôZ4ˆÁ·_³råÊð³¶âdê?áÄ€ŒC‰)-fg0‹¤é7(_å®l®6¸ãÜhùÁAŒƒ;Í dXD€Eß[[¶l‘O>ùD¶mÛ¦ù<Ó×…~¼0ãÕ›?é3ˆ …Þ‡é²ÞTy¯Öw‰j`Q̃çðüÊ"LBá 7ˆ>§Â y4VŠ®†N¤ó´¦5!WÙöŠŽ±7ª{ºöb£íN0\”Ud[*& Ûº]0H»äé=7¹#›.g7´„2*¿ùÍojŠñˆˆÓÛùMoÉýë_…§°}øá‡ÚG¤>$2 *á¹B¡o-½SF®Nh*L¤E•´Æ"3¹‘2Þ!/ÖK áf–=<\(ÆâêƒÌƒî½€ù0Í>Œö©'å±ðå4“oö-C¤êtدiÀB‹G[uŒ`Mo¾ùf6›åÜa0K(§È6,²M¹Ñt]ls„-‚Á@,’¦çß •wŽÿãÿÐ^þÖ?ê;ï¼S[m8ƒù+Í{¹z E–)PdEG¤â³(2"OYÔ¿7R§C$pUCfBäÎxêt °šP8¸pá*„3VÎ\9Q?âŽA° Ž9K1`ÑÄw0Î …˜ÑN3•!(ÔPì§7Mo'i‡o)w<”CêpÌÂíydÀ™$çd dlKÅ@:´q¹ƒA~ŽÌnè­Î ‰cDÿŠ-05u\zfI\ap¥Aýgî¦@ñO$|ê©§´ó>Lï;ê7•æ´ÊâÁV®$(Žê,PžËe?Í…‰—/_¶˜erw¯wñÜ“–YµÅgœõ¿]øÛˆwþfþ§QÏBÄq`·+€^£@!œ€’ÓÅ1ÍãˆôÒŽ „5vü@ÈóyÁLÛ•æÙÖ´3ò4 àJ†b`ÞVƒ}Vç±*LÇ·’ÉV6²!ã â“ç9ðÊ ‘¢,M‘޾D&Ò.8aMÑ9¹ý28êOúÓ÷au³€îÕ ¸1(¡{ê L]ÜsæÇA“º;Û?à?üáچßýìg6?ó€néÉH¸:1UÆ›R‘³bµ÷„WG¹–7­‡µ¿üñMXeþâ2"1Nô¸ ™ „¢+ÚíÒA` òû%3á•Ì%n9bà©` V’I0ÁGt§ƒM'ó0Œªöl ©;÷ZÁ›vÓ²eËÊ`Ř……àiè¥(ª¢¢¼ HæAfÁ«^|Eq$Q³²C_jW|…t⌠„+v¾a«|{æñz IDATCÇ]vÍãĽjدWÁvDëq€å© —~ðŠ=Çu¾àY¸¢›rÈ¢Ë0ó»áŒÂž è‰b3®40èùaÀ®ÄŠà†´+uÂå—6»ùàêY×ÑH—SbbbÌŒ«`2\ÃÕÖZ‘aC|qš;f|öð߈ÉV#NåÜ—2±I\u!½P6¿G"¿M2I$ÃPŒ„W~Ë*.ô Ó=[<öŒDÌœ9ÓtvIJJÒŽR@Ú> ÑrrÕÙ£`I¥€ßs5˜8£Ÿ_™îIŒù (™ÅTdŠi0ÌxeA–bmåݸaœ‘pVÃŽ LF9ñ%Q—Ròw‡ˆ†tΜݦÍíÜâŒc?ð°»™#ë7˜¤ÅGw³äLĵ­ó.Dè€â ‹@ÎÄ`G€ ƒÈ¾L´5a?åGÏú\¦s€%` kk0¾‘Œ™íL$IW^ù-óªâï¿i‘ÐGEÃeGLâ"pF‹Š O‰ì‹›¹rà&]J:ÃB± â©FH§®Â,ÿ"˜FtP¹˜¤#2 Ф*&Â+‘ñdìKÔ}°_uÊ3¦32vFÎd(G’ypÃŽikB‚‘qð£c˜ Kó/çû;Uº8hJv‚íÀµ@|Î1¨Ä#ÀCÀ¯ÎFß$ÔiT ¦àÊßáFZ Å•¡9`»è‘iLÛÊÜs# ùás&IE(‘F%ˆêÇøi0a"”‘ðûå÷ª1 Ý•LDéLxŸéü`: ä’8¸ß'BOåÓlO®LxÀÏèéízâ}…Y#’ŠŠ ¡WÐ6ÀÒ­ «Œ*? †‘ óü«X…*¦¡DQd ³Ÿ’I¨«Šç=ŽÔytšyà§aqVÃŽÈŽ¦f1\"³cÚj&§1Å@ÔUÅ£(§¾ÿB âd35ËDÜ¿€Ÿ- jf³[vNB"/—Ëά7Wu7o&-ûÊIà.àN ¤²Ÿ*䄈a‚º6ÿ²þ/ËfY¤±še’yp p8´ˆ³ønd¾j5¢V$üŽÉ,Ô÷¬¿*&Bºka0 ˆ¹‚¨3Fb³©?D\AØÝîñ¢+DΚ‰+¯ÖŠQ–SE»2Jè´4fAƒììln²­‚>¯2`EÀK¼â2öN(ˆ +dß`˜iV« ^É8¸Â&²/5Z3ùpƈþÃc'T’Ó– ˜…š±©ß¶,£«yqõõðÀP“ÌXßõÀWMîu×O2þ»·Ÿè®JذÜxä5«gàÒNÞœÕínjÁ³-i¹ò`Ÿ¶%°í‰q4‹\ë­ðœÍ …‘ð}ù­ò»åć}‚W2‰VFÑVÌEÅ“‰ð›gz- Q—V&Á`&`þ°ê ‚axdd$ݦxТ "0·Áƒ mp¿GYÕQéÍU½ïB—Õ€=P.Л5ÀZª”¸à ¦ éÊ¡¿ †ÁU'}ÅØþ #QLCÿ[¥azÅ<8öu©ß8Á iв4f˜’À=À^ùZ[×!xðÇÀ‡ü ôÀ™üÛÀ¿ÓÎ?EeØ^o¯8SÅlPö¿ñÀ¹À9@®P8HZ‚K¸A¿HÑWa¶‘€q8MÿÕ­FÈD#!QŒ„ŒA1ueœBÇ«z¦•¡xCÜåײRñ¥.…€Í£!0Èð…^Å–t®°öòC!ºÒ²ŽÖ^4á¦W.ô¸À+ž×â8ëGÝQ¤uÀÕDØôö@+H^‰Œ§ËtîO‚Ø© «Š:0Šz„ëÁx W ÄSÅ0Å.E¸y•!Ÿ¬0*`€A& |2VŒƒ¿sPWÓ8¦%òy"¯ì: [ NË@¬~£ü :ðTTÿ'À@ÓÞ|qÿ|î b*~pü°SQŸ¸òwÂù ÷vÀ»àgÉPnZ~¤d&Ä ?à^  ê»œL°¨U 'DDÅÈ(ø[1†M™ˆþ•óÕLÀ @ £h_0?0 ?®XÈl˜Ò¸#ìN‹NèTÜ!ó„^ÅèŠ=»‚ù¸’±É±(æÂ+_‰L‚V‰ É Àš°Bh€ž¢{/šp­…W…zˆ¡êàÞ¥Žñ€FäSÆR‰gÊ‘¾Œ¥È•k-â(aHnR¤¤{ý•ŒA12 õ[1¦e˜iô¨òc?dX“•¡vyâa0P³»s6êðp†™ºì@Ü_€+ÐÞ]š-˜ÉÛê(Ôy^ üõZnuF½äAÐ#¯2·Ùž´’³”Go’™¬ýNãÚë4Ñ3®FôŒ„>™ºêWй(fA¢ÂꪞÓGK>,ƒÈ8uUebüvõ£!zIN1ÅxUŒH=£îéÓ2Už ó·>Žñ sào† ú+Ãjç• ÿͰʃá ¼$˜2 }Z-?´³*¯ù‰núk0;}?Ùþ_àR ;ªÎ2È8žGûç©Hg¹¢Þ÷£.‹o£~«œ¥^}¹h“Áx®LÈPféÄp¯É ¶BA^²”°§ÆƒÔÕ7¥¿ª_åý¥')Ô …aŸ1ƙڦ¿µÁéô ‚iT<Ãê·JÓq¿>T+•ÖthC† bæAßöFvÿüPÿ¡³³¼ ü5úC&®N¨s0êt•Bx .œÅ’Ñàd@ûPÅ6R …º4sƒª9-äÈLˆ[Ñ®UêFo»‚6¤ƒb(|=Vô1½Ïßú{úgV÷6ú]1¦Sƒ¿þ¾>NÅ«8Š/ýÑ6ëÌâìq±Q ¡ÿÞ¬þØß$Ë•øý3t§2wE}ÃQ/ÎzØh’k@£@KÎAµÉPˆ±í¼õm[¨Ö¢Íµ“¶×ÜôŒ@…ÕU½'›Æéï©0¯ŠèãTXÏHôi[ŸÝ[Ãꡞ|5H[ý3 Yü HÓ\=Å¡¿P¤àt€z“±}|uäàb@§Út^AéN¦#̱%¸Œ\™|Ü€>`X×Y¢”o‘±Hšöoàc¥8áYà/t§€ºç€oà£T2Mu¯Û®¨/Ejá¨S+ß­¢+þ6 wQíË>I&B†B´ì§Ü{BfB¦²ýÄt6hlI´ÑpäÇïp‡-óud^±‚ÚhxZW½ ­{œÜ+ÀŸ£Ch:ݽn ¢®”?¤rüǨÛÙn«ŒQp·Qý …+ÝÉ­‡¶S¥Œ× úLv;i[VRmòý èKiEƒt¢ÙÐà4ü9«®@ÐQÞ3èœÅ9 Î7£B3´¬ºìT•3*Ó-@Ÿ Õ÷›pe2¯%lj‰„èVàGfBÜŽ~TÛzÇXE´Á <ø[Ð’“» é`Ó¡Á#é‡@Z¾( U ÷KüÁ)ÄU-ƒÃ|Ô‡:Šª|æ¾ ˜¥ú½ Ì*qWœÙ„Í‘t¹ Hfò%úÖ…æhãog(šSwʳ8²:󜳥5HZý’½Ô›æîÀï'МF$„zŽB~¼„zýW tšèGTÆseB†2 è´§qCc&¸nA¿«¶”Јï}0H;mЉ ãÀGuÉøPŒõ?øXœJшú>zqG•©êèl€èS¾¨Æ,  q ÐpE¾ø%p úa:®ôb  ÄBãâÃIÆ-ºTçlLÁ)îLJ‘¦"ºóŠ:rÒhÔ‡Ê{ ØèsPÉí@22KÀÕù б:@?êQ_þßíy\{4 ÄLó¡‘g#z9Po©ò&~ÿÝ)ô ¨#Ejüx_D(F0À €C)€>HÑÖt b(CÛ©¿êN4†‚>Û'u' Ù½ Á¼? qz< Ĥ ÑÀßFÔ߀Ê*¥áo¡Áß1IêðŸ¨[ êQÊ‚¾á¯„Q A @ŸLÀ-®Lˆœ„ù-Wóš¨ WºYéõ–] Wd¯à}spíñ`0]¢‡ŸÏé¢höz{¯.ÎáAÔ‹rç'_ .»^£@ƒ¤ú¬'™$3™LZZv­®RwÒ+WK/ۛ⠂ÖDgçjãŸÀ§u»áEè̹º8‡Q·a(”Œí=àç¨O“Ã+ahP ‹@?NBd$d(íéNØ¿ÉLˆûÐåq5À )Ðç:¶+Úå] ~Cå´‹Ñq»Eß:Å¡ül2‹–p>‚½~‰w6 P}Ú¯ÉÕ  ‘+lKu‘™Ð d‰¥„Î÷åõ»À]¨¿Óm6î Ýú4AÃ’y¼|LGDê:žBC×ëâD}‚PÐ7SQþ])Ô(Ä @7Sýž›tïhA*å=,T‰ßä6 7É®Â7B+/§¼ßQÉÔ—’„^}¼ŽÖ|R×¢/¡‘¿§ûíÐ :ÚQ`!p9êQáР8ð  s€d(\D-­ÉLˆ;ðÍ4XJØ]ñxn¸ ø7Ô¯×Iú,AÃRY®Ÿp/Å·ÑÈÓ1 Á(s2Šü Wêb|®b؃}ø\@ƒq@µ:0ãÌ@RÔEfò¾£nu¡ún¨‡Ó15sij6®O24ì} Ør êŒc=‰Æv$ó Â~!ð(Vc `PÀ € à»Â­@~7·ý€æ€¢®­À@Z.fšKdÏ8Ôu$ò§³ÐžåtwÞ}Ž a9£açòm!>Íé|Ðî:”Ý:#Aø(÷=”[ÐRãbPÀ @)€ï‡ŠøY@22•~@Kp7èU‚VŒ´ð²+ n3Põ4Ä©³kaÝœyŸb hØXÐ{We¨!]Õ~ÙéÊõAÖ‹çPÖN;cdkP ÏRߨh¼<™ ±=Q×EÜט ®[ð=Útâˆzpbúð§Èû<®½ú AÃÒ”n ðæ–¥Ì”Ìî–(7åüÈ €ÿòªq5À €A;Qß\ ²&#Y¼è4œ8Òdÿ3 ]Ó[m¸‚2Ýñ|=®áÈËá<\{=ô%ò ´æó--ÊYÇ\4ò&{´0:‘'òÖ,.†2Jñû’=Ê2ò4(`PÀ2ðýùã.}u‘™Ì†ÍWÖ?®Ä÷Zl.‘¹8”A&E˜ÕsLu˜.Õ\}×'Ú”z®”}ù/ÐÆ/ØšÐ(Çy²£.AþKl¿‘ŸAƒÖS åûä>î±"R:`¨·àä’Ìd¾å+æ!?J5þ RdE©FŸ‚^Ï@ÐÈ”I¦´´ì\g ±mn^‡²~†¼©ïàñ±ZÊ3. 8!ð½ŽFµÈHî޲PÅFÄSoIfò)¾ëL<§Ãษ@*ç™®ÏA_` ÿ@«~»¥eËpMµ×àŽ¼»ÕwVŸëÁÆ °ðíD6d$ĉ@ 9È@ä¿€W²ð½÷qÞ÷:èÕ ‚ sº>Pá ´÷Û×QÁˆ0(`PÀ @ 0nÄ#x7Ìd¢*S ãØ\üãJ–i‚¾ð»×2t6ú~ —©Ê2Ù) 0(`PÀ À )€1$‰<s=äÊ„¿MÌ„:Öˆg.›&è­¿{3ù.íï- Gó¼¡}u–Ð[;¯ñ^ìA0Û<œŽ1ã)U⃦‘ÌýÀÙ@e”ƒ`+™p£ò@®Lzµb½W244•[Ü$¨Lö~ކü~`PÀ €Av)€ñãWH@FðOŒf=E M(îS¢±H3^Z`š­¹è¦è} Mƒ+Môôß½•¼Ž†y²¥qÎâ:§íËèé fÔß €AÛS !cD sF¸ÂÖi }£¾„ÌdâsS(GÄ W&ë‘?÷¢õxèu ™ŠV9TŠsú¹¢—N 0(p0fpŸØBŒ¿¹îf'#¥d$o²ðøÄ¿|eµ¦GD÷FB.O¥ž8U¸9ÆøkPÀ €A0茟Ïb¬¸ ‹îrù&#“‡€d&C,dÈ=jo?@ù…Ò8mt¯b h0:Q£³D7öŒB£×~ 0(`†7B0N›¹e³(”1™‘™P9k&cŠØWß®A}z„ˆ«·1Õ >ýÝ–¡ØXtŠÍÌÉ?U¼²íwØ;ªòF9z;0D¸â©'Y ¤Þ„ž2L"®7¯á{¶éªÈ´ ®þî5  3Ä -6«á þ)í—ƒþ :4lìØ±‰!!!î555.õõŽ›Dxyy¹äääTÇÆÆæ¥¦¦Ö9è•[‹¹r劔——Ë€Zã:à³ÌÃÚç;S–¥´,?*Šgµñññì_øøø4ååå¹DFF6]¾|Y ÔtöìY^<è‚þд{÷n‰ŽŽvE:7´­{Ì‘#G´÷÷÷§ÿ?ÛÁ!Cóóó5`DDDÃæ®.\pIJJj:uê”+ŸÉÊÊríׯŸvMIIi8}ú´›þš™™éZXX¨åk‹ÚVTT4®Zµêê¦M›÷áØ¢âVæ1+Ò$x)p ÐØÏÖ_ò x§£‹9Ó3Ó—è)¿§«(å‰e,{øðáS–,Yò|xx8;†ÅBWO›9³Ù»woƒ››[¶ŸŸ_=®Ž._ŠŠŠ$ €V,~/ÔY*++…WÔ½ÓÏwõÔ¹©®®Îõwi¯|N ¦ÔÝݽ“WOOÏz Æ®ôkpõ@| 'ÞÞÞ5`4n¼ß¿ÿ¦   @WWׯÆFW–eZ_ôWóo mSâÄ®óD4Í¿™¯‡‡GYLLŒKCCƒ Â,à eÔ{â]jªªª¼®ôÁ½JÔÛïR^ZZê¾ Þ^îïëë[Ž÷òGûhW¼O) ‡˰$''ÿyeÛ"?gÏt+E_#¢O Æõ à£À8 «z&f#Í븾Žç²pu`ã÷t%)_d/&’Krô;¡LÏ|ð)Ì2‹0H xÇömÛ8ûå@èðÂ1mJKKk euÙ˜©7a@²úù®>ˆ\“-ÛNÑŒ¦CUÛ¹sgSuuu‡ÒöÆD Sá³Ï>Ëo™gkôøqÉšwÀ»söD1ü@Žej\SWÆQé³5ùÛúr¸Þß׽ć ÒYÝoG=ðñû»M,ÈÎ̳‘Ìæ†‰{iôˆÅ‚ðz½I2Ò©ÖB?à ŒJô;ñ`ðy`Ž.2˜{Û±"Ù |Ømôêñ Ä‹1Ðø¿uaGÝ0±qm"z°¦â„ºs¶¦ÎÆ3×(€öë¶¾s­ÝÂ÷ã qš7jÐãÇ%[PýÞ~ŸC^ý÷7õŒ øÍ‰0þŒ°C¡74Ô·A15ÅÛ‚p(u…9Ë€zèjÕ=A{ÖÁžyw”ZÎP‡ŽÖµ£éºûP¾ ™êÛ§©i{.”ë~œƒ{ÀTªWéÒÅ#üGàE0‘ÿ äÎx‡@f ”¨ôŒŽRݵúÐU¡sAt ³XŠ7›¸HеêZ†šS¢ÌÊÊ »‰‹êjª%?/ß.ùWW”I^~]òn‡Œmn5Ö×Ê圬¡M|OþÑP_'Ù¹y½êzr{Xª;Æ…S@Žyý€\äêÒòdÄŸ306¾ ×ݳK°G3P„û<"[(s×ÏZÂ=âR]U!9ÙÙR|µDj €Õ‹KUU¥äa€*@¸¾ 2ùƆ:YñÙ'rò|–@7£å_…kyi,ÿð=ÉEþµÐ]°Üʪjê_ÓŸT”—I™LiY¹P?P‡úi¿‘ö:†dBí‚‹gå—ß’šê©ª¬’<Ï5x'æÍ¼ê·zÒ½¡±ûMcC=èÔüž|wÒ½uc«ÐN¥E9òâÿüC ¯–·¶‰¢k-&LWSëpëðŽ7JK &R¤~$¸x ¨€và?’‘ü ªnØúÚmʽˆ~õñj; ¨*h)›†úYûŧ²ó@šGÊìieÓ¦Í'±!>²÷PT‰žòèÒ§dpr?qkQÈZÊÏ\|IaŽ,{Œ¢Â]®“ý‡JLÂI ÷–wß}G“†JˆKìC|pX¼Ü6g†M;(™ç¥û›|\%¯°TÝ}·ggÊÉS§%§¸Dn™s›¤Kwª|®‡ºº0«’wåÿ³÷àqW¶ð™AÎ9‰‚A$˜sIIE*P–dI¶dI¶dûÙëõ†·»^í·»¿×~Žë¨œ(Q¢²˜sÎ9‚$@äœsÆÌncl€Ä0 QßWS5ÝnÝî¾·â=ù8wþ*&Oľ}{P^Û‚ÕkÖ¢,÷&Rn¤Sp5`Þâ{1mÊ¥=2o^CAUæÍIÂÑÃ1WOÅ­ì|$ÍY ï¶zTTUâÚµ«ð Ã8wœ8w3’§bçŽíÈÊ+`™+1#1¶,Ou-õØñÕ¸‘•Y —#ÐÅGOŸEm]-¢c±béB%)?65‹ÙÐ`h£2¬BeYž=äÙsqóÂ1œ¾xSfÌA°»j ö˜;c öîÞ‰)3ç!Äß—Û›Í9ä7J rpæê-ܳt®œ9‹7*òRqöò „EÅcæ´(”•W)üÏsô@B\:ŠéÓgàòéý8{%± IXºp>œeà?欔yÒ+x—ïí{ ¢—QI"½8úŸÒ?Çû¯0ëÂí½3þ±„»ý…Y¢´a,ƒ ‰eu³LU ߯ê]UaV¾Ø¶K–­€»“-®^:O¡A~øzû.Ìš¿ !>ÈÌ.dv`zQÏÍ.®î\‘lÅk¯½C¥ ÇÅó§ST WwWèÛ°cÇnž½pÅæÏ>Æáãçðú믡¸²Û¿øGÏ^Cú•ÓØ±ï >}óuœ¼” ]Sþúê;(­¨6Ë[4ÕWá7¿ü5Ò2Ëqêà8E‹2õ•8pðÏyØ¢®²¯ýéUäÞžŽ²±µCuiÞzç}”äçà½w7â:ùrìÌ%x¹Ø³ÞWQZUG戣G÷ãÂÍ,Tfã³Ï¿ÀÖÏ?ÅW;÷ÃÞЂ_üâW(*¯î´Ú˜•z ï|ô%Ü\±gÏ4¶`¯7bã»ïàÌ¥}µOóñ3Û.õ†ž|44×ã/¿ÿ"õ©R IDAT.¥e#çúy¼þÎ'ðññÅ»¯ÿGÅlBnF:6nÜÄÑÈÀžŸZŸE¶&¼ýú›ÈÉ/Âï½M~Ûv€·76¼ùn¤Àž|M¥"èè¨U lù3šÖ‹­ýrÍ«rßÁ+‰‰Sñð£`\ /¦MCìÄ0Ø9û yú<¼þ1ÄO 7ÛÓï­‘~þàÉbLŽK@l|4ÒRS©8ü0!:Ñã#°ðp””¢º¢œ®ò‰o=û,GÉxøO`íêe&°uñĺ‡Çw¿÷<7ésJ©®‰B·{ ììlqþÜQì>z«X†‰'À¶¥å̈„Äihª­Æ7¾÷c¬\2ƒ#…ö‘L3§Hâ“çÂI×€¯¾ø ^A‘äG|½=—‹jNy)øyB€ë`«·aL;._ðu¡ ÌBظDNˆ‡£ f-Ç Ï>{;»îÓÍU½½ro]Á—[ö` G;EÙi¨jlE G3zŽ2Âcãag¨Æ×[6#8z2ÆùzŽèèCš‰a^ع}+ª ®˜•qÁœBÍE-Gt2õ&º“,¥×+<¶µuÀõkQÙÐÆé®f*{NqU(Sݰeì’p@Q#Fã UE¢=Ò ð;©D6ÓG[‚ÜQ©@Øx¡û›¼£‰Š¨¿¯÷QTáÊ勸àý÷‘[P¬|´Î®ì7ãüù+¼þ®²—ÝÒ:À,{Õ­œû®®,E •Èãë×âæ¹ã8}ê"d­áÖ• Øwè¦&%#48PIkçddQ”·Äpþž¢Z ×@òrsžr“‚ÙŽTæ¦dd iÆB<±v1ÞoªšlñØãÏ ÌÏŸ}ñ%6}ø&NÞÈÅ#k–wnéµwöÀŒø¼ýÁ§˜¿tÎr¤q+¿óæÎ«£Z ­TÆ¢ü<¤¦§£šë8îî^ DÒÔD,Z0Þî.èkæÏ=÷=€% fp´ò9öìØ†?¾ó1•ô#p Ôç§¼7|·z}Úx^e\t"~ôò·ñÑǨ´l4. 3gÎÀŒ©É˜L€÷>Ü„9óÀ–¼qÇÑè²Å 8âz§Í@EÖu?s³çÎE€Ÿ7Ï ´‘¯FÅ @qE rÈ×ò²RŽØ<ŠiÉI˜=s."‚ƒ -9欞|§eM8žþïé¬Ñ«ÊhDv°ÊJÂ/£1µ¼˜áS|Ô!‘1X½|íß[7_$MOÆÔ) ðòÄC«WâÔñƒ¨38aRLìí(€(4ÂÆùsM# —Îs*j×>¸ú#nêdxÐäHaeý<9t„{ (aO4È?¦/lh»i\]àééÍ4>Ðé øú“øý«o iÖøzQ@›á¶½b&%à;/|-5ÅH½™Š¯¾üéy¥˜š0 gOœƒß¼?þúרè´"¼´EÍ_¸Q&bÎÌÚ–š]K99 {Ž4Êë›hò#I 8±ëK¼ÿÙVøq¤³%9øzó×hf7ÚFg0-Ôs4 7ˆb÷î]8~ê’gá{ÖFðûbÓ»øð³¯:™ªH´ôtëmì@[Qxü©gácg€Gh,‚=ì¸aá p³€ͱLMJà´¦O™4"¦YºÒ,ÿ§ÏÇiæÏ™‰ÀðñðvsTÖÝZ¸¾V\TŒq!ã“0 y©çñÇ¿¾ Ggw,Zqiˆéë¯YT÷šª‘úÇÜðs€ï³˜¥ø5kž@/ÛÕÞ(Ÿ*þL%²>ˆñ¹;5= jM™Øà}Âô÷·dÐß ¦ððpUNÓ–fÏž­LÕÖÕ3»I±ÜìLèmá̵"#Ÿ¶\Cqssåˆ(6Žpæü¼¶2NÅ•W×#<<'@Vn‰Ò[¾ŠÒ òtEAq)""#i$¢™Š¥ŽëÜ.àêoOˆ1DÚ£êxæží –;ºÜÈ뺚jØØ;r„Öˆ|–(ù-x÷/@a›;þáÿ¼Gõ˜’¹É2Ž€Äðí6§›ÍÐÇ;Õä½ ùjÑVIa>êšù LÏ^FJž|f¥E\#ÛçÂgã®Lqå"8,nÎ|'†Èq§Wù“O>ùôÖ­[uCTÍßt±”Sü@“ñS4Œ(cü»ä¹˜Hé—`×¶_uX41 [ÔÖi }W]Q C77’íNUòO„¸%œGéjˆ‹‹kð×ÃKÖÕèÜ\àÝÍnq׎úÛ_‘$N!E°×9>„Ê£ç«,†»»·¯)xxz)Õ„„WBù±÷õí«ï¸¨‰è© Ú•‡\ÔA›W“Œ=æPí_øøÒ·_Š›œ„ñÑœÆjŸžróðâ¨Ë¾þ¦22ÒÈoO0]Œééé:í¹.tt½Gp-ŠÀbiZH0¾õÖ[õl—ºXÝ]ó­æé¬ã3ë¾ÿCÿSasæu1_nºÖm0ª[°”^ÄMgã.uÛª‘¹h,,,48p À;­ê‡4\¤°>]JJŠ ð•@ÃUµ"<ˆ^§(õ»^á•(^)CÖ>DñÙö»œÁfDBâ¹(B²»²„&" *·ˆ0¨ ( ‚¡ä!“Š.‚VÚÕÕ‰ð“ûòœº¶QLÚSð)y»ÞëZNwÿùÞiûLÇgo¤U[È;PÁó=¤ÙÀzå¦ÊÆ£<'** *RèéÈw#±uRFii©ž€R¶KÏvø^ëÙNù£g;;®ó™ée­N„37oH9 ˜Ø_“ƒ‡äƒŽ¨‹üj;”¯ðI:;¢,IÍ÷4ð•Ó3Ï<ów¸ÍdÝζªæ»àIEPÎЛaC/5Œˆˆ¨dîäe óº’¶:òÖ™mhd^{¶¿•<µeî£hS”é0ðž-±šÉG¢ˆ$ó[ä…KKKãöüž>“~T8>Yk¾×þ•^>b9¨ý5¯-ç}³ÓY£Mh§¯´Ã.¶uä~Ö¬Y:~tÜär§ðj ¥GD9U>Êá¤A‚¥pLÐ_G¡¥ Eö7¿%Ò‹À… |3Ç;鉋r¶R)BP”žC åHÜœYYY ¢ÞÑNÂàŠ5ZsY{½NÚuPø¯”#Ïï¤Ð+JƒMRFOJ(…±.îPF £ JÛ„’‡JDhÔIl¯Žè„J(×å¿âyôòÚ#¼×í‹9j!ùAzÕYÕô•%½S~dÒKS>L•Ðá åHXl" ‡ÓI½¢´¤nýu"X¥ B«*B¨¿ù-‘^ Jýí¯Zï%J{Å©¼¦àè5“XÙj-|êKú^ ì[õ¨½5”Üj¼×PF’¾K(ׯœ‰mÌÑž ß!AU”ÑȨr¤ù3Òþ‰–‘ˆ8é´ÿœ^Øïpê‹uÇ +¼LšMt3á6ZÜmß&)½\Y•ëbö|0'™ÓRÎaóÁËxú±‡¡£9ï:Z\•Ñs¶"½R‡u܇&‚Z‰%V/Gw¢±ÂJîÚp)G'g4SÙ:paÙ×›&Ih~¤žïíkÒ•c'¬/Ÿ8ˆ´ ¬ˆÆi!×ÙÑ¥¥eŠ’À @âh”*€K¢^ü‚yÿöέÊò2Ø:q€v¸Š‰j(ë"eLßB)¿bYÀéì |û+§éum4IÒ@cŠ4mR_ €!ùÒž—;Ͷk|-*,@ÛæíãKÓ1@%×<”Ê™&ï}½{>i]š“ŠO>Þ‹ÿô%Zúm€/탕–“' ðñõçÖ&.(Û9ÁÝÅQALôòæÂ³¼-]£9n$.J ÍÁ¸qó€4hMÙŽV *Ø9±±³ç»æ7Þ~>ú bÃüàì⬀’ÙÒô‹ž&rJøNˆ¹o¯Ñ̆»–vŽB²({ÿ™ üƒ©‘Çÿ¿çõŽ)€Q¡@Hü|zeá56 ÀÔ Ñðd¥§âzZÜhj<2lœbÛÉ@C}þ^®4@ÈíœâSh]Ö›¨²… Ÿ­M¹x ;wîFü„p¤œ?G»G͘>g.;†‹EÍHœ…“G¡¤¢a1Ó„­û£…Û1 ­Š00Ø:âÑWcïÖm¨7½ÉÖ­Gb¼y@©6 “ªŠZÚ»mvžpÒWá³ì]ñÐ#kqåÜiÜJK¥í¨jüŸŸü&Dpi‹ ´¥À=ux/šC°tö$|öÙg˜1s:öîÚ«?MJž*»Vn“=tp/ç܇š>I“ci^}+·Ž6bRÒ<¬»y';bŹxïÍwPGE”8c>¢]päø‚d]ÇŒE+ñÄCb Ô¼3p[Ï÷œ>y™¹e4ô˜ˆ­´è+g~Âb&ÃÛžÂÓ+‹’bðÉ'ŸâÑo< ? ÐQ=ažÊf‚íÙµó—­Dmq:nVÃÓ¦ ç¯]§]7=Ö¬]C3üyD×ÌAEÎ-,[±§Oƒx,ŠnáÄ…+°wrǪ{ïCá ÆœUrà5Rõ3z±zB¿’~;½âFË–výã®}ÔU–á7^ÇÁDZñÃ8¸o~ù‹_P0Ä»o¼Ýáã ïãòõ ¥W­>°þ„Á!ãEáVS^Œ™ùÜ!æ…‚¢Rù#nÒD‚:•¢ÁHË»ÞîØ»mnÞ¸JøÛ̘‘HtS‰¬çãdÄÖ݇”ž·9Zìhê̱ýxëÃ/i¸0çOAïHkº-(*­ÁôiS<2âƒÈ¨GÑŽŽèiE×ÞÆ@«Á;qæøQ¤¤å¡,/mTb¾nöزe'ê› Š%ßó΢¼¦E98K…ôùÆ÷WÞ„o|¼ñTÖÔw"//ûÎ]KCð¸ dfeÂw\¢Ãƒq+ƒF]im¸çOAì{åeÝÀo~ûgb¦„ãäžÍ8—’‰Ø˜Hlûò+ÒÒðn*ºS'ãRJ:ìx¤wß=´oN»Œ][¾Äõ›8zäªiHóàέ8pì"\9‚¬#HØÖ¯¶* Ø»‡‘OœÁÿþþQYߊc{¾"°Ú¾»9wI‹ØY—ùÇ·4ÍyNWöújÿ[kü®[ÿÑGFi#^zé‡xò±µ´æZ?\±l.2 +ñÂ÷^‹Ï=gNg Ô°ƒ'§e\8•Í=ò"ƒ––Ž¢‚BÕ:s©±Ñ+PBË«¹ùD=d¯^pG¦N§Éõ)ˆŒ™ˆY³f (ÀG±XëëJŽ˜˜ ¨eÏSݵÔÝ ##Ü2B¾Ú:؜ȈÄé´°ÛR‡[Öåì±çe¤á-åþàå—4½t£b8yÞèêJ°‘fÚç.XD<ôZö` !Ö`› •ÛFËÂ)%`Rrø°¼RpÖœN*SP«¨T‚ýýhÑ·³øö!TpAµnpÄQS€zÒ±oß~,^ý–/šAÈàÎé»¶‹Cwb×Ë4A:Ù&â·47 °¨þ<1“¸¨/$ÝÛ0Ñr¸ÒJðÝîl]pÏ¢Y8°k .¦/dš2í*/lß‘zlÉ\‡ð®H‘MÍM!6£¢8Y…í¦áýhܲ¾¡³²¿Ûù6 Û'£ÕÝÏçÙÑÛꈨw­-$±b–vš‰.ÙcyÀÕÀ÷8ð¬¦Yõ¶61£nöÈ”yá†Ú4sÞÞÙɽ㞅›9F8pý‚زíH„ž~HJŒ§Â(„ ë¨åšÆ N589{"2*‚!M ´êh®›‚–]i¹–* WÒà„RBÇàhéØÉó˜;‘g^¨ØÌ8ÞO<ý¦%Là¯;¼|0>Ð;wíâÇ–†{1QajjpØ,™7 ¾)Ü%5øÆ“qþß ¶\“ˆÃ®Øs ç¾Æ)@M´‡îáíûW®TF/‚Ù®gß…àB•¼Q 3pïÒyT*æ{ØQ%òovDhàB®3œç"¼;N9‡ S0;yÎûº¡‰J³‚¸ê‚ÇÑuˆµjí£M˜ ‚]­}ø1lß{îžÁX³2„¼aHžðr¶Ãö]û0yꦂ 1f<¶mÛ‚²ª,»gG¹ìÙÊè[¶$¾Áá„–ÍAQY%¾ùga¬+‚³wZëPGì‘ÞœG@(–Þ³Ó¦MB‹­+â''ÂãÌad°'½pùR*7YŒ÷À¢%KÙnp Lç÷F†ÕÝ÷ ÅC?‚À 3àKEzï½+›™Ž°X-s$Jã,Â)'b~N:ñNŽ ~ú̘5 ¡:?w‘ë|šmuí#è\å A4¾(Å.Ž„Vë8ù÷_&ÿBò’5K:û (•}‹°¢§Î#lÂ$D‡ø°šSMÑ(çÿÐÑãð ü™É•˜ïíkyÑ ”öþ@ã•Æï¿¿ß|áIxyÞÆ/Ñ–wåÊå$úx*«œD§½%ÅÖ4âÂËiíÁ9Ξ9ƒªêöˆjô ôS¦Sº+[¦är PÕ@©îòçe\Çþü|â[˜™Ë)1µÏÓ9µ,ºŸãúÒ¼yóîÎQ y-#>9¥/;çl¸1¢}:ÑÈé«–N#׆ú:Ø;8ñywϫΜÿ.\¸P—œœü8wSî4­ŒÂ{¡’òíÏLò=S²°m”øhÌ6-Á M|ÔGâb!^u~ã”h‡õ®W/xèÆí³O=ÿ$·k¶ƒ(8A½ Çôd¸Ÿóò ÂË?ú1Bˆ-Ïmø*¶¶šØvÕÄ‹]'4MNÙv™ötr–iÒ17J8 ÕM*ÍÚ‹ê5k G•Iá¡Ö­†–z²ÉÓëöY K•«-ÇÒ4kËîO| tÈô•øÞœ”ÏÞ[oÉÆîqÀÚ8 =(U¡gÕ „[ U7ˆ—óû©n!­“êeŠBŒòÉ4Îp Ù•$¥~1>\õ‹P”vKbi¶¿BXÒ Íb\òd l0ïƒÔ/SXê³ë~9è)m•…rmÈëFš׉¥^íu™’“ò¥]4unä=r€”ù¥.yNj¨¾7ê5T¯K(Vp»šUÑM^¡Ûȶ*÷T…`¢Û("l»àšèÙvÛÚD~—’ß¶´rÝ*!ÍÉ·’϶ä³|Ö³òY¡™|kÁ*I‡‚zÄ©í–ö2­^x%ujéhœm5ܺu«†a3žå´Ò@ ²P>>;hheqªZ´U@Hä•P†ç5qkŒÒ‰­ ñ0t¤~ÜÃIè¥K—A3qâDEhi?Ú¡¦C¤, ÷Ǻ–&ùÀ%/…ĈðNl6Qpé0d¶~UˆRèè„V { C„‘( þbªL'‚_„±ü!%ÿÕPÞéQ«ÏGÊÁ&\ÒÈÉ+ UÊÞJ(ÊH}¯{Dò¨ŽJJQH¢„äúužw)|•<â¬îN9)×DÀK¹ªbaÙ%´+¦ÛÉ·C‹°UFX¼×kH… czÖ@Ú£u¦ºT,¥n¡[”ŒÎ$~‘¯º7ælß¾}G¦:¾mš²QC*î6‚AÙ°mTÌ6¤»JφÊÖ ˆt –žåq¶œH‘êzá«¢dØ&…É£¥o qò½‰m-b9,£s£Z¨uäK&êh&Û˜­’5šÈe•h+ ¹ñF¯n&n'ÂJ„™„"`ºCE“>éi´^éaK¯[x7œt«ü%B†õ+BE½n./N …vqÒqRž8á‰8iWØ-×5§Þ\vv6BCCu¢Ô5ïâÄ|AjZ U«½&9{ûo®t5_×ûêõŽPF—/_ÞÅ„uTòrÝØ5ÌÊÊR®óžv-w¸þËžô*z™â¹›Èãî×Ä­~V‚†Xk‚¯ÕÕ5Px7ð߈½8¢<´½Òʆ)Òµ§ÙŸj“·?õ˜K+õ4 æhÈuQ†Ò«íŽÊOvüdÒwÌ»[q›d˜#Lo¥oòX1±}!9é=£I»A·^BÂ¥Ëf"V^"«^@'}ÍàÍ|áGLˆò°ô8G¢ozVcÁ,Éùž©Ük-YèXY}怘tW‡Ï²ö±_›søçY´µ÷׎>Rø‰V·fgä\« aG̉âQˆªT„VraYLž…+¥)–:¶Éúe%%ŠÙzë§µÿ¶Ð®UmNð÷¿änsð•îf§Û¤c-ŲܛeýLSÞ(‡;u­YÄi·öõ•ÔNÌU/š <îØj2í\’(²*Óµ¼.vœúS |cÚï¬0‡ÖQŸæÉà&%¬ãÉìj¥ì—Nã•k¬·…ïäz ¯R–SR¿ì"#Jj ´ÆššjÒD…d®A¦ë‡wn¡}©,lw- IDATeGäokkU€wDlJÉ¢°ì(º³,£²p,ÅÈ{ªìèbúj.«ÂjÇçq==›t¶›)imeùL#3‡Õ4à(míÖ±<¹¯–Ó@~B‡ìt à+[°ýóÏPXÂ-Õäe+ UŠ‘Iá!·è(|…tqÂÁ%±~w•±(+VuO+Ûkï¤{dá‰ï¤gìÊ9ðÌ'JDÜ-úW•˜æÇšÑ£5tÊÐé®r¢N4' Fâ¤Ì™;©×.Â}âthÃjZb2n\‡mwékpö<1Gx˜oæŒdx{uÆâÈËÊ Ù÷ó0Ø9`î¬ÙÈJ½®˜Ži$¾Éü…‹z5çn¦©æ/?äꥋˆ›³Å٩𦚚½/ø›gâØ‘âßÃå¬ûeMýÿÄN]{¯MsÑšH”†NÑ~w•«©(Á[o¾[¬¬ªEIR6}ú%,]޲ü x† ¸î~X0#öÌBô54u^C‹¨'ŽÆ¡ÃÇáãEt?~ØeåU¨á®©k—ÏáÀ‘S¨¯.ÅÉóHŒvÖý'ìáŒËi9HŠEAù<óè¼úÇ×i/ié¢äœ±dÎtDuÿúÂbÊùSØ»%‡àSaËïÁ`ÏÝHF;¸¹>Žk)W±‹mí&`æìYŠáØI1©þÕ¦P«sE[ÁœI+Gk ®ç–";íÁ D¿ÚðªvîÁä¸XÜþ%œ#§àÆñ¨2葟CEÙø"½oI'D@)÷tJ.·ÉcŒUyiØ`­çæ"††Ýdݨo|í[*dÙëqdÏNdÞwýúµøð÷aïâ¼ü|,_²„&/á?þýÿâÝ7_ê'^$¨’7AX”ˆ¾‘ÚMªkgŽâtV=¾óÄýxï½wiZ>voß¡¼O~ãc±x’?w ÙcÇŽ˜:gÆ9×â“-{°€~òZiê>$n­ öÿ8æF ¨<äÐà{ôê˸•ÊãÓî`ÍOV«@Òº#~4_˾•ŠÂ:^þÁñü3OÂ^g@ø¤XÜ·| *šð½—¿üàŽÜ:žbÛ›0‰ Ps0Ž‚ÉÕÝ㣢‰]DÁ;sfL§yLˆC¦J‰ RCãƒÓçÞƒgŸyœ&Ñcñ£þŽ*§5Û(…ÖEÉqŠùs™v3çtú6lÚø.šì=139ÎTV3;a|üƒC°bÑ|Ðé[ß~žníÛ_ezÇÖÉÉÓpøÀ~=v žróð&½q´Tì€|b™È;ÝÆé¨ (™K“¹øb‚N§0Nœš„¨Ð@ŽRR•é8-}<wB§Nœ8 äÅÒ+áãîÇŸ~QDƒ”©5k9G¼’bÏ¿Fаȩ3ࢫ'`WÁ´¦Á–„› „ØlÀ¾=»Q\kÄÄñáÄN±žÏ14"NŸÀÙS§“_MTI#üCÂ1sz.œ;KtËös,¹…y¨ât`s=q^r³°yÓ&´qÔ¹„ÏøàŽí(¯23¥h9N•dAPyp:Ñ™Š•î9SüŽÀzÞØ;HƒVÜu#=š-mLäæ#¿°­œÒ’i{ž/p`¾´0Ÿ=ÕîäÜù¼éÓéÕ××VÒ<»§f ²$Ÿ½ÈÝ\÷°Ÿœ8xéY9Äò¶Sh %¨——§2pæô–=åm¬¡£0l㾜€®!ÒŸ‹i§—9"d>ɪ{ÑXžMt¾4LŸ9¡~Øp7NŸ=‹?üá·Šš„‰áÁ,BíäÈZ€s.ÆušI¿Y\Oíaر{Ê«8£‹V®QÑØÝÍÊÎB&•ŠX|u£a>Yñôñ'p­árGZ‡#oc'Åaê”X\=w GŽœÀÇn´’z,]0[YoÑÑ‘mPÒÉÓX¹r®_8…"®…8R‘ʺV qâ”D,œ•ˆwßÛ€ÈØDørÔw›ƒªÙ"™Ã&LF˜Þy;óPÍóÕ«×q‹Öš[Ú`hX/€$ÂVqÑåä}—têëQÇxFv.b‰ó€¡g¬aãÀ_XÓ2Sm"zžåè£È\íV©@¨ýI°zò±Š (3×€Ñz=<2áގؾm3vï=H!èĵ/â"6"ÛØ{ûbó.6³7À¹/?ض6P*…Š"^¾ EpXÊË+¹>á W*¬Ö6ôööÎð¢s àTQöô\w ‚+A¦rÒS°uó×H˯à¼}, €eÎyr>ÿ±Ç¿…%³ã€¡+œãoâôR‘ˈ q#£º–Zlß¹U5uÅÈbspÄŽü1)1‰h…ž º Ž§”mhâ£¹Ž "~þAtµÇç_|‰¬’rDDÇbÁÜdÈ”LϹSùU¨K„šøJެnq ¬¨¬Šíg;¼šQÞ¨#Ž|Œ²È/¨‰nîÄ™†<®+Ìš7W9…=¨ú,œYÞ…9Ó¸>à óæÍP+½ù.Lˆˆ€ƒ­‘Ó‰Ípsqåz.<‰ŽqÊ S“§*&ñCˆ âÁõ2ç>BX˜ü±âÀÊÝa6íhãß({·ôTT÷“Ø=åž{ašj24ñ»&êâáKØÚpxãAÑåBw%!@݈š÷ÌsÏsAø<î[)œç·g{ .,*ß|\‡€àqÈJ»I8ÙzL!d­‡£áÙy\ðôÆÍ›7áæéMÌžžvuã‰iOBÞÚcý: 9/<üÈc¨ÌICdt<âãã±zÝØ41šÏŒœÊr‚·0Æÿðûì çáþÕ÷#,4‹’púÌYÌ[¸ Ô¸tñ’²;‹ìxJ|õ£ßÄ•‹¡w˜ŽÄ„8ÂõN§ræ,Vé­ÀûVÞ&Ã1½-\¿ž Î!xéå¢¡Í çLÅÙK—1kÎ<ÄGâÔ¡+˜3g1¦ÄFpÄd}}¹9KVáŸ]Æ!*$>«Ö vëvâÓ»bíý÷²‚ñ=ìã‚-Ûw‘Ç“0;2 ÉS&AÇŽF^Iî_{?œ¸4欟TG*ÿKCéûüvþ[ó¿Û¨µ*@ µ…šø]õ Å=ôª“©&qžD\¶üõò€C;âr˺€¸@ژҺĄöÝyAT.ݹ0ö.Å……†Â®¹Vé% MíP·Ýå¸}-P¯íÎ1TBâÂÇG·_â¯:½Úq©S$$,¢ã(G$â»:w*]*ÞÛÎH„+•¿µ}øR!ËÎXY[±áÎ+o"=._±ª#¹·º;±ýRueyÇ=ËDlA*.ˆ;°T·ÚÔ¶–ú*9u+W?Àu.õ¶U…²o݃íÏ2 4/~÷åné{ñ{ŸÏO}»Ûtc­“T? e¿ÖP·—ñç5ÿÍFGƒ)0KýØaá@@D  ‰âˆ¡oȈÃBT•¸r%Û•­ÙÙrôõÂ÷~Ä'"óÞšÛ7FÛèà•Ç?’ÒÿÑP{ˆñ5}ôi÷ÃhP £j¢y#µ4 z.HÛÓ÷ä¤ÎÁÖ;Øü=Ñgm÷h:—ÖrU –§ÎÏÃòTõ¿D±®0æ,Ͼ"¨~E/SWª;ÎÈýTõê…ÞÂÑ @FÍDNËInñòâËüûp9yäd³œf—ܲÛg8Z§´½¿N¥]-£ýÝîo)O/õ ß„·ž„–<ÓîîKrO Eê¹×Ûû iÅõ–NIÔÔ#¼/Ï£ÓŽ4M>©GÚ"ïmC)Sò‰WÛØ5ÔTÕkTm»˜rWã’‰å|¬WêGWòW¦Þ¤ÿ¦†ò}Œ¯å;Ñ/›cÖª@4 3»…L“Æ*¢‚A #©Óp&4AŠ“èbJ\5'>õ‹ð@%H‚çÑ_(Bƒ8p¦áV|ÂyV*RÀžÄ¥9úå:•Œ‘¦Ù ‚wAžó’`6餧 £°{h:Þ3‹BG®„âÊu†f…¡Ð æ]Ä<¼VAIrOJ]B·9'ù Kx*yUóÚ2$ƒCÙ&JTp@DébæE $sõÚPÊ”g¥*\Q$R¦64GŸ¹ë¤Õ@ó2u,GÀKŒä¯ÏEv7ðè1æÍòU ~A?_SØgŒ?I÷»÷g­ Ä]Ó8±¯?*?H½||üІýeç‹¡“ºE¨IÏSÊp:Á½(**R—’þ:?ºqㆂ4Ü´ ­"Å6–øžè%A¡©‰2¹Æç® öñ¿˜ô×S¨Àõ9j#>Š £JGß“yu)‡¸ˆŽŽV„µ†ŠrâÿŽi{epD„ìì²Q¼Ø”òÅñ5Q‡\“÷Dœ(i¿(É#¡(u UE!x/ò~© Fþ‹Â‘¼RfW'õ©¾ë=sÿ©ôš^yå•£ä[5éhc]5T §˜~Ø¿'s4Žæë|Nñ¤3ýxM;^eü%>+n9鿳Vâ¦iJ&nÕQ ‰¶„„A㳺ó£jâ¥-(rÓ§ÓÌH§í±C]3”у4œ!¬ö,{Í`ÁÒnYC¨“üB¿(’‘pR·ÐßÓ(a(éR¨ôòÿVŸxç9lÿEú³ô)ôÅôû Ç ïGÅaCÿs¶çszUyˆL•VƒRÂ#khH¿u¤Q#ézé½)iRwOÓ/CZùXác°8å'ÂM”†ºˆçGG¨WaöŒd”²–¼‘~‰†ŽtÆ$K¯h® 8j­#íɪQ¥@ü$†(£¹oÏÜuK!¸" CÓilã(¡óî#édºX¼Gf¬44-WÚÄ5‘vzÂVQ²pÞçÅsæóiÚ­©~òcé¹@¯UÛø?™|µˆòöZ«ÑÒu7}§ÂóNά ·H§Ë¨`ŒÞ‡§ÖehiB:q@°(R£^ïDØ þÔU–áÌ©³ŠÆAÓ)«JcEaÎ3¤•Jj N-g yÕ<Í u8zò4Åz ÆY¢lMqÃUin¤5ÝÃÇN£¾K›†…ˆAVBaùSQÌP+7YêèÌNˆûgR/§ÉM­õŽŸÑ¯æó®0]³H`­SXÒ`ÕYÕ‚¢J”%Âò’b"ÖÃÑɆ½äTƒÎ®Ž((,!ž„ƒbüÐi€'À›kñ&͉Ï]ñ’&„Ш`…R—ƒ®úÃïðÜ÷ GTVTž¦ÔƒQYI8ZZW›T64áÝD³Ý¡!¡h¢Ð¬Ä?þ‹ÞžæA®*‹s°åËm˜<%ÕÄ#ñ¦…_ÙRZOð¦q!!hi¨¥ÅZe½Á/@Êj?PÇŸ&å+ÑÒ¦‡M‘¾ÖÑ™†ËK PTOX(J»ŠÏ·@ô„h¸¸yÂ…Ö^Kh@Ñ××›Ö‚s(Ýòóá®.í>ðÊÍÉUÐ}M%%e4wÒ¦”ÐÞzsõuø|óV¶/‘4V³nT—“Ž øøо—-Z 6Š1Èüü<.ùóÚÈžâo¬¯¥iõ:>cT–•ÀhkF¢#VRøèd׈w7}Ž˜˜ |ÿhT“öÁ ‹ŠÙ6_”磌†*=½|ÐÛ&ƒÞØgÑû|^,ð—-t”F^øô÷èïÓ4A¦Ÿ â…bq7¦@,ÎÒ¾ØD!ºùó’‘K®X6';wîFHd Ü z”’–MAÚ†§ž} ±Q´FÛÿÎUui1NŸ>'ÿñH?}ÙÅ%DÃóÇÔ ãpöôY̹N&JLËÉG w?õô7±gÇ—ŠÐ/-¯!•'*x¾ãѧ¾…«gq9#ŸÛ6k0eÖ<úà*ZcmÇòèÚb1#o4´âôñ£¸šš¤ÉøróvNùè±bÍ#h©ÎaýçqõÚM<ûòO±rÉL¥Ù:z‹ WÇ®àÙ§×áã7 iÖ"f†Àñz‡ÆbQœ¿bÚýØÑCðHDœ¿ >ùj7–/š?þœZ ‰›Žçžx”V„:H«*-Àkú#9“8 IÑصÿˆb`qæòðÒ·ŸPÒª=òŽŒf":é.Ÿ9‰ó—®â¾U˰í‹OQRYw¿`$D¡ xêÑûðþ;ïâ¡§žÃ„Б¼%xïãÄtù.)?ƒGX,2 mœ[L%ªsÆO<ÈwÌ7ÎE=¡°ï_‘ŒŠ{WÞƒí_nDaÍø?åÅ_$J¡WÏQÌðÌÒ—)0EÛgÐgÒGÐÿÍ:²bÿ1}¨† ‡ŒïtæšE£ý—J­ÞlaÚi«Þ»„f‹±Þ©Ø{ü|h=â"BÅ)¥œÂb‚'Ç£'qïƒë0+qJi‚\ð´â<¨,b¢'"*"h 70$‚fØõpñðcO3¡Áì]¡pJb"òoÝ@ úå«70ÉJè›+1 ‚p‰øé—hé6$2­Y…Cû÷ ”=RíCÒÒgCôĜ̛øÕïþL¬‹É¨*HGUcâb"PÁ­Æ3gÌ¥ÅÜ Ô·äCKÀíX†>‰ŒlTZ‡"ô"ìï+ì\¹‚CGNÓ$» ŸI ’gLõó'‘SLóý6(-ÊF6ù$8í))7qxï.>GL—éÉ|¨pÙ±1X~ûòê}{d(7 Êä»%æHÒ«ÊC>Í_Ð/JåÁò­v–vrùv7R(BÇ!uÉ!ÆF2^vƒ ™“©G÷@„r½Ÿ—nò#ž0yÂB‚ààâNõDÐ’-¡`{2ÞNåDá%ȃ œtõz*{òu4>™¦Û]`Çé›r ôzâ‹Ws:£€LÞã(„qñX &Z¶ WJZi®ÛÑQ1ˆèI< :µÊA19˜v'Ò+©ª.C«3sÂ㦠$%ƒ¦ë¯ *Ñ…'¾Ëp„JòÛßû>&E…1M{!mÜÊ2a:Âüœñþû+ØèvœzÊ-@cm9²Q‘r[F 2ÝÝÜÔÈ©-52r¤TŽú†&äæc§¨ô]–÷¼ˆQ2=q".]¸D-7ŽTj±oÿ>ÌY¶«Ïé—AC9'YG~ˆqb¤=ørZòm$2¢`‡{ûøb2…múÍ|ôÑ'ˆ›>¿uñNN ßW/ÌIš„O>úNä±+¶ðà§ÁHó-bÖžísù¶|͆f‘Õ(SŒœÒlhnä3È!ªd0A±ìz9?øµÍxdÈ“zl˜¾úò ¼ñö{œb(U>î5—–}}<›™Æùï*DNˆ‚×5Z(,\q35Äc÷#ÌmHh…q¼ û*[=i†ÝsùŽN®ðå…±µ;·~…wÞûápòñpáÈ¡{ªÚ8Á±øžuøŸÿøìÛ¹•£š4¸z ,8Õœûµ×QÝjCp©TNcq”Á3ªÓ±w¿úžÅÈÈ)ÀýÞ‹Z.È·éìÂßV55s”âÃL(Îً϶탫;q@#4ˆkœ¶š”wbš4S¨Ë¹ ñµUhå㌞‰Ö–Flýò3œ¸r“=ñ&.ˆŸá¢|; |æ*)fC!wÚœ%øÍo~A0¥Cpô RŽ3•uPpÆÂÂÙI8uþ*V,_LT¾!{ÌÒxç î[³†À`©XF”DðyÖqM*†€`oUÂß×[ôÊθBå·‰'ÍÛ<{¦ÿÅ…ë"Á¡Tp% •lð™8iJ²3P)Û|9‚q&Ú¡¬™hÝdNqýݽ|ó ×Eh0:ÁÎÞ OS$x\&q£A0©À'î±xë"äli¯©œS\Ñ1“8HGe"8ánPNßcúÔD*ÉL›¹€£¯:ø‡‰BÕA̰¨$ðùkIé6îäìûW­`[b±þ‘À©Á?"Qy%) ûåDJLž·áÁDvìƒRê¶" _ƒïÿðÇœ²Œ‡(YûG:<þÔS‡‰q1‰Ï·®ÉÀ¦1ñ3 G<Óž6„].æý©ðóöèvÔiaRûRœ6÷>}„DèþDÿ½z†D®ÝU޲)‚ ’vÞG¯u¿åŸäû+'ø‡ÏÉcmž­ßD/_²øG‡š>ÖAI¤Ô¥WëâÙîöŠú¿·iÝ׬YówÙÙÙ•<ÍÌä}sæÒš»ÞS©;vì09rÄHSBÝ&k¡q¿îœZww[¹öÑkoÏž»nljRì?Ý‘Ž&(ŒgΜ1šìCÝqŸgCŒ-í¶£î¸'8J0>|XNòßqß`¸ÍÏHTò©m¹‘rÕxüø ã‰'ŒÇŽ7f‹ý*Ú »³|É(ù²²²º­ÿ‚Ì\Pë®,-4þþÿŸqÏáÓ=¶Y[ŒÐvðàACUU•ù‡ Í`‘¸ÁÈÑŸRROÏ^˜{®!ÃTHeeeÙýtü–\x©Ïr‰é¥Ã'¥ô9ÏhKËö- ßH/¦ TÙ(a6½˜`‘¶[뤔LQ»ÁCëÈ|é±(Ý`jødÆWÓËüâ‡ôCêÌ7w}0ÄØÒ€^wN­«} Ö] `ѽ«¸øî9àÑŽÓb}Ù´Ûû{ëÌ«m™«|ejk¤mâ‡r:I­ÛÁÑ÷¬^‹ˆ(Ù=7ÀÑ£Jø†´\`üõôì…„‘²OÖŸæ³ Ò¼=ÚŸÌV˜–í "YÓ—^ !j´óôÿÂ6Øaë~ÓÚ† E¤Q>0ùœNk*ñgü¦æÿßlT¦€F“…e’ÃN¶#á€'ÅMözÿV+¤-aÛÕ 0>ž×>mü ø‘™…ô÷Ðs¡ “é»sxQ¦«Nuws8¯Y«Ñµïªy-Γâhß~eô!ë"#%‡,Þα{ç@{Â|:~´nö–¾SâþH¹–*K[ §Õ”r»£[­“ÓWÊÆ m(#ÉÛ5”Q–¤“ë–¦WÊ£ïÌ`mczˆ3ßTÞþú‡èeݪé•c ôS4aãævÊ®PYïù3ŸÛU†Vá¬UhOfõÐtŸFWe¡Œ‚q™UGß›“]¡"—¾ ßÀg(JĪœU*2*Ÿ@°ÐåÈZ„ çvЕ»(³ÎŸ2ø½Ì×ü;ý!ÒÒçó *ôÜds:³Ÿ#™u É"C‰Ñ IDAT膋©OÚ­Ö«®ô§õÚüýÉgÉ´B¿Ús¼“ût  ã¢D^K(‚™íP½Lˆ~¢@Á f%ä5W6óê¤ y,Ñ.©GõR¯Ð®þWiPGòÌxMÆb\h”¸Ð!È€Bõ¾(ÏÍŽõéØnÕQêì­L&_Ä4¢8–w“V䯀Ëvdf™Nr1yWMÈ-{ŠYt9/&6xÄ‹Œò¦çÖ@ÅËÔ·\ˆ“Ù—]&/ògä-\öÐ «T &z·2|Ζá)>¤¾4²¯úcú_šêÌd¸ÌïSÀÞ¦1Š §!!!œ‚þ½òìÁÊÈC7‰[eeÂ6õ‰nK$’Þ;Û8n=¡Ô_'&Ã*ùe5ÜN¡Œ~Pª·úÉW¥|o2ÕPÊ`ÛÒVGÄ?#±-tÒÓç¹í¨¢Û‡"e°çoŒ•mÅݦ(Oø.vû@X'›¢ °;…¡¡¡ò_O©CQx¥©»|Áø xZÔ¼#A+yWÇ|ó©Ìt/ò¾{þª… * U/C>õžÄ‡ããma=·è¯ÑŸ§?+žÏ¤˜á¨qÃÿ¥ö51és¦äò…Gææõ={ÿR²ìM¬ãSæ’Iö»Êv¹~9æ7ˆð: DêTëîMö«a}H,u³ýJýQ *Ý$Hì1‰Ð®òoõ VºÔ%ÓYJ(е7Ç÷MáŸJCoéûy¿[A/m¦c0°p|º£ ,O4šïNÜDà^Å‘|GÆ;/ØóÒ_ï¼<¬WDAˆ2ȥϢÏ4…Åq‹Ï\ÒŒjgµ „ÌÝÃG´òtzy!>çÿE¼Þ8TgÙ2·ºyƾ¶Wâ}M?–nŒÖÆŽj:”‡I™ai•Σlí—Ù"+¡ù ^N©Š¯4ù †e&_°œò¤×©8¦ÕÎjˆ‰«Ïp½t‘fÒ¿Iÿ$ý°8¾ÀËX‘œÊ;=,Z ÒlR_„|;CEËP–Ý×–Ët•(ì‘v%ÇZ±äeÊ©Ezœù dò^–~»®ofÒ¢Þ×v¸?¸±©ÿ\ä™·Åäö„4ÞcÀósÚp|²'Þ·Qæz¤Õ½ÿb ~qJ‡÷Û"É4ú˜×þóÍ4l°ÃsQ¦üjMøã·mñÜÔ¾¿|®2Ÿ&øê(Ó„ÿÁøKô²c©¿n33ÈFQªW(³ž4Xfa‡•Üínä¿€8Ìy€·£Iò_¬ýô4׆2*ó­§Lu®ÊІªìÌÌ T×5põv †Öfd¤ßB3'…«©(Á©cg”ÅeK—_–Ÿ§N IÙ}¥µ™àKGŽ 5á¶¾f²t~qze(@Ä$]kŽAQðÖa&•‡(”m¯ª/€[Ωq¹×ÞµVDlûßο"f»¬išEqM´¦¬u‘“ȓ璲=±ZêøíËÎ1™²ò£ŸMÿ3ú#ô­ô}qï3ÿßÓ¿Bÿ+ú¿Ò˵ÏéwÐËõúkô™ôÅôµôcÊ£/Ü5¥±öˆùôr"ó ùC·˜þ…úÏÊK!óŒCå|L/f¸˜u^bøÿè?b½}}‘™¼{WGð¤ôÌ,¸yû"€v¦ªù¿±©¾ÄáÈÌÊ‚=¤ °5Þ¦†j|ºécL_°‰1¡\ʃ‡ øðýwððÓßA€» -­æÑØ¡/ ©ªåå4™înɯolÂøñãÑÜØ€Êò2TÖ5"22’XjöζՔ`÷®=Hœ6…¥eð&(QAn1GZ=qjÊKhý·Žk¶´^ëOO7¥<Õ´ÊHƒŠž\Ю`:{s¬*mk ˆBaÖMìÚ{ѤÉÙÍ޶:„$v‰7òsshJ½‘Ñ1puº“¾Âœlžp–c£kå¶ãÅ„¹+Ëñ§-«¾ºòu+Û7eÊ ó©FZ¡ãA‹ùÜjeCƒ”œ*€›§7œúZ|ÿÒyêñè¢6\¢9žbDÒ ²· ö9O˜‹¥5¦S¡”ß.vÃ&þ~®M‡eYô»cèq;ù1™O¾Ãqó9G0–(üÎDKŸ4ùÿä7(/ËRzõ°¹Îd ÓŒ¹!急Ÿ·ÅÉ•_š§Yð5ú£—/Q¤ƒ oÆ{n¢ß´–^dï*U¦°ž÷éÿ›õÊÈè Ö)Ãâ~»šPßþõÈ.© á:æ&OÁÑÃG1Ž€RŽúfd”¡¡¡«z “'FPª¾¦ G†Îƒx#—Ï¢Žf¹õöŽˆñÅ¡Ã1eÞb\*ÈA9•BUu#î»ÿ>=¸‹æ»[PVZ©˜¯©¬ÆÊ5¢äæ¤å— ©¥ÑñÓ 8´.ÝiaDk[ ­ßVãä±£HÏ)E\t0< nï/©¨ƒm[R®§áê•«X÷Íç±xV¢Â?n@ÈN½Šó©¥xì‘UD5ü'OÁ9‚b‘ϰ»xñAö¨£©ñÓgOÁ/4Ñ>zlÛssh rûî=0Çâ-ü®p5…¶]Çs©,ÉÃ&$é)ݯÝÊDbd(N_¸€+W.#~ú<ùèƒJZ>׎<æ"Ü»‹jÒp…Ø7Ò2°dÁ<سƒF+IãÙ ˆ&ÎJQÜ¿Ÿþ9î[»aA~œ—1Wâà®Ï^Ç‚©@vì3â%*£{ÛÈÚ{Ú'.}ÝÞ©þæÛ ñ×møô çjm0³÷µý¾vÅ€_ý…gS{ÝMœ*{âû6³°„á{PC¢¾2y™ëŠ`|…ÉË”³º}6€ñ17ÄhƸ’ÁÏ—F†³ÿÍr’èkʳa\z#²ã"—/S ýnúßÐÿˆþ1úô³éécé'ÐG™¼Ä'ÒÇÑO¡ŸN/iÐK¹Qôݹ0^ü}6ÓI¯È¿»D=]+ÊÍÄÞ#§EŒ _öÀs3Òp)åÜ]ì°ÿà1DDFa{ÅuuMÊ‹žÊ2wÏÞщæÜýàEøÙ“§Ž##;%¥ìuÛ:Á‡±nÎÈ+(T°íÝC@©8~ê4üƒC‘Ïž~³Î‰Úºç‰ãqúèq´Ø8a"­µîß»e„Gí}ÇôÕçïJÕ:¬»Oh'ãóCZî´_ìï†×8Òyרø ïP8dÛ]nSJ¹ ÓObEû^õ¥ŸCÿïôEôcnˆ9`áþÁÐRË—$…Âf>k‘é,YL_N¯mƒ¼@rMüp8Îô*[ ÿžážÆîótZ On·Ø¸bîܹ(âôÎ+gÍsQøzÇÌ›?WR p°ìqq÷ B‚Ç¡yêTšVoCQ!ñE8)à7=r3BÃCˆ‰mKaÝWo?,^¸WOÑ”÷,èŠp¥¨ F½’’faÖ$oötO*Xé"k»ëU‹¬¬ã:A-qÏÝ\è@ðSâaÃY¿b*0»¸0•Uâ;/½Œ©ñQ»‡èÂâãáëL³£}Šè8èÚѦw f‰;G6é ,r¤Á|Ä5i&Ö‡àšgË)vN†ED"(£˜J—ĉŒ4 n[޼fÌ ir*¬Òâ"Öiƒœœ†’ŽtLˆŸ‚ÔkW•6DÒº·‡«J çz{ë#NOIkÎÃíÓWµ Ø¢TiÄoñÁ§´×¿e£ÿz_çEóžVÄJ¥ßßÓˆ%B‡¯ß&€¦¯žÒ·“aÑ_Ê™î:aò-{¬°î9Ð÷¯¦ûüÃ~•/‰ØŸ–cý÷²rYù.ýú*ú‘r2¥öcÇŽýÓ /¼àL³æ½ÒáOÔÞð..^Ï„±¥ŽæWòÛ…½EdëèŠYDÎ;pìæ/Z€²‚lNƒåQQ4C¦ýªdíDoË‘š3.?Œíû †=ÿñ<Àɹ@ õR$s …ŠWC_*ò€‡©)©Ä~ߌMÛw“'vHKKU”‘ Ž†$nΉ•áE|ðçpüÐ^´ÙºÀ@VÕœîsàó“ÑãTâØ:z ³fÏR À*óe‹îÍ?´¿-ë—µÿ?óUûô•ÜÛð6ÈèD§œÎÈfSÕÕRªqMØlн©¾…Fäå·_ òÑ0ØU‡`Oým¯íÙiŠ‹ÞEÕϘJ¤”ÏâUñüðåmŽ ŸJ?‘>„^¦–d” }!'zY?¥É9E.ËW!_X«ÉKÿIâòÝH|1}”¬Ž˜úÍ›7sj*JAÎcþn]@p8î½g>²r‹áIDÀ¸Iáð!–¶§OV¯ZŽ«©™pòðFh ßÀÖñLÖ¼ysÑjë ½/ª9ý3oé2$MK¤ð®„ÿ8,¦¶c¯|ÑÒÅD% FPh€²=-yþ|apž§`#Š/œFeiJ=qߪ•œãI÷n[Æ“˜^>X²b9æÌMB«a3OxÓ ¼})‚¢1=<y7®`á|È´’,¦s<Ñ©¤Y ãá²6ŽN¢QîÚŠ™åp!èÓ=KÂ'$ 3ýC5.U{6× K-‚ä©0Ø "4`ÚôX”ç#7‹3ñ|-dc=Û=<lcÕëÖÀY_‡ÅK–røÚ¬,¼³W¢ÐÀwª-Ýý±srÁŠeK±dþ<4Ô7!zòTNÂÛ¡ â9ÒóâÁA_?o*²(ÄÇ„Sáõçê®ÆÞ¯ù)ÓX\L—¤z$K׊[t?ø²=ï/>²Å\ù¨%v½ÒŠÿ2 ¸A±Ë!WÒ«¹u÷+[ÌZÂ?Wh™ðGü,^`;Ž𩲠¯ÃY¡WÒJM~9!1þÛ6øý7‡¾í* cáðs`T+-»øáË—ŸaòÚ[ŠSðx0ce2³ï¦Œ€ö,\¸ÐwÆ ?¦ ÞÎØ:8bù½«QR\W* .ø6±íääŒùK–!:®„ð¬®ð"žùÀíôX²|ZhZI¦hhSJž„.õB0uAaš<5ˆ„Ípe^(#ž ˆX;'‰¨Áé ó;‚1#i&OS-ã”Ñ’9Þ¸|ÑošäpÅÃ>Â5L&Ìlc‹õ¢aÖt4pêIÎR¸»{)VæT'ÈyÏ? îóŠŸŠõ„ùÕÛ9ˆ»›d±ÝÕÙ ^DSÔÛÚ“gŽp§‚ñôòB •d``R¯_A7(H·B¦³¢b'áÑGEG AÁÐqD5oq½²náä⦌¶Ôú{ ݰlñ"¸QQ¬{ø!¢8:bRôx*¢*¢/ú²ûQ+\È_ûðÃð"ôï°8Nc=¹Š d­ >£WNÔ^çÎ,©|¦Ë&r}ÉDÈŠ'uT FìÝl@íšÛÝ€²Ìö“píÉÚéägíðÛêVü˜kŸr£ÝéðÛ¯MgI4ëó³×&Ó^cî®æÀ]£@†à)uÝ¥­"•¶Òo£?HÝÕL…ãîééùm¢ÞâÐ!¡aÉììe€D!nç ö´:®&âB¼pÕ¹ t«Éyxªg³(¤Õ‹šÐÅUMÛþŠ,ºwüÃ#èïݱf¡IÞ)jÃEf7·ö OOåžÓ¸ÐŽ4ŽT(ÝÕ©&Ð3¿‡G{~×*‚CnçUÓHĵ­óñ P,ÙɵаøPQ(##\ÝÜ%éëw{¿ƒ׈T'ʬ¯NÖODyˆ“rÇ)=YsWK¼ñØ©ÉHœ1‡#ŸáûÄîÿ9 þ\!Aùqjƒ+çe°ÝÙyͰåõÛ×^?ßó(ážÙâÄ“Fp ¨8ÿÐÛʈ[Ñ[þÛ5Åî6 ßÛ=ú8§U 2¥uˆ^”ÆV* Q Snꬣª½ž^2_32Î…£ª{xÀìßÈP5¸Z]¹¶Ñ®2WÎXc Äüó”®Û›ô¢4vSiÈTU¯n$íQIo[¼¥ÜõÚh&l»ÕüBÿH8•w½M=ö…¶‘jC_h³æ4òÞ’w2wÖ>fÍĎѦp`L˜y¨0ú½PÀuT‰yŪ¨™’‡æ2ŸN@@(??8R”ÉÐÔÖ¹Ti«Ô-k,rÚ} BX¦¤ŒÜÜÜQ€Ò"Ó³ë±~Áý Ö‡‚›ÁǬ´Up,Ä|»˜qóíòÀ”„’VLÕóº<¹õ?Ó+×%”³3S2Ò¤½`‚‡¼GÊ3þjãBk#wÑõ6í&´¤©–™eç¢dSÊ“|R¾Z¯Ð#t‘^®'9 Ši~1¯/–„I·TƲ”PîÓä¼ÐdKÚÄ~•Â)Wž½ ¶I_´QÚÏg 7)–¡ªHÄ:vßçûZéXºAs`L š…· !BT> ù †ÓɇkR ''G¡_F æœÔ" E ‹E!`Z y\ÅFù/u¨¿’_†ðY”˜¸žè”QCzz:PeËtVÉ…f•~¥ þÈ5uä ¡Ð ÏRhdbNHÇ÷ZQ”%#*îPÖ+(Ь£cä¥*yÕòû² Ò»ží”¡‹2Ê#̱„'ùLô…‰ÃœfLXáÒ«“ž¥(ù ‡Û‰0ÁÄ|XG j;¥'+JL„O(¡ ùû[_×ô"P¥~’"{q}y¸:þtjØ¡,䧆қ'È…¦Pý¯„ò<ûëdšI¦§L™Â]ÏbKeÈÊ“®a*–¼··Æñ•‘L zñ{¥=6ÕnCÚN=“a¨ï®®‚‚“·vlð‘j¨BÆÃí¤Ýâê„f¡]üH¹Á¶a¤èî®^kàgwtõ÷š´ƒÏEް¨Š©¿EŒ¥BŒ) 3w$FÚ&ŒtýZZÆâc,L ‘Sc²j°Ì‚üce˜jMEÊNšÚ¦Ò:#G µ4G®ÔÞ°P¼¹¾Y™Ùö¥,T¬RL=ñJ2ˆ•2˜ÑŽ%é马šªr.+»òzJ6:ïq¤XÍEõ®ïÖèlÌÕåÀ˜(ç,”O¹úŠP”1âê(ø›L‹¥­Ê@sûöìBZV,x*|±>šêª°}Û×(®¨‚ÓÊ"i¬PœL4ÒÒ¬üonn¢‘GA34*[,ßÖ®Þ¦™jÊ ±cëN´‘~Ù $³R õ4„XÝ~”FÊ•EÞ&Þ㟎æÉè©xm¦©0‰‹ªV¦¯¤™‰—ä¤bó–-hd^á—Тnmmi&(—yûr_)‡¦MÄò¯BÛÔÒí¦Äö!’C •C‡N’¾6.|·ó·…m©'OÅ ¯U×>å¤þ!¹ömߊ¼âÒ^߇QК1ȱEô2n°ÙŒ4A~ž—¯§Â‰'—“â'áêåËD!ô :¡ ®ÐR®ÞÖ¶¬–#8Àw@ö°ji¬ð£±2µ$ÛYÙ9¬‹ý\°áý÷à ÇÆdÄÖÞóüÿí½x\Ç•&úFÎ9‰Äœ“HQ”DQl‹–£Æc­=»~³óvßÎ¬í·³~žýœ5ÎV%Ê”H‘")1gˆ@d"çœs¿ÿ\ð‚ €@£ €Ô­`uß¾UuêÔ½çTüÿUÈËJG-ñ¹?Ëž‹Ébô×o~µ(,«Pˆ”Ó–!ð삽H^ºÃ](.­D ·þ.Y³) ‘J6²ã§ŠhÁM}Xµ2gŽƒW@0 ²3ÑÜÞÿpøèÚˆž[„ܬ«pö D › Γscå9}ü8…Û›„UKRFx8nØGxùωz\ËmÆaÑ÷wÇ¥Ìl"è¶Â7$nZ7QUfu­µ±’:oE!å¯néEBLN¡WœrBê2t5”#4. ÎÜtt)óÖ¬] ›It:+ALH<Ð׃œÜ¾¤®”\=‰œjkkP\rè\CŸxšßyš‘ ~4˜-4À®¤·uCiþ5Tsawˆ†¸ºŒ/|A׸.µ€Îž.ØNÞÍÕ…‡åˆ˜ËÃmv„M'/-0{›œÚ*-.…ŽhÁzßÉ›Ìù»j}ËÆ8{ê8Z{øÁ¾NÒãfbÿÞp:ý“©ÖŽëd´äàêÔX^ó=¤-[…ƺ2”V7q=e½œúéæÔʰÀӓ뤼¸W8 ÕB&E{Ê-CÖ|½}IðÄïc®t¿@?Âæ[ãZf&Î:†×ß݃ؤØ[ùw̽Š0føOÖ\B"ã想çÏÓàÚ)NTÖz¼=½±tåZ´V^Ã…kåX¹8…çâ¸Æô*fA‡»yó:;ð*Zû„’òJv>¤$Ía{Èú•P ôÒ™·qê°¾¹‹¤_„égs:98òPhÜØÒÂý«ÍÌSÛ„3ì•^£QvuóB0éqšiir Î=ƒË™y O…é[suìíø‚·³Ïž;Ç9„d÷#T|pP:úàK~éj#b£aAË ½b9á,#gG¸zú 40€t´Fd^¹@^ñsHI[ /!”šÄèêÉu²|Í&ì~éE ÷´‘ƒ£C18Îägöç\y1<ÉÈX^˜Ç5é½Þê"W­]C‡„Ë“NwoWX“Ñ0:<˜ì¶ GB|Z*‹‘ε"CX89T62orÐ#cÚ IDAT™DÄÄpÏg9rhAõrA_6+O|$¯«.‡Žsù]MÈÎËWzÐæ~ì=°uÛ£xöé¨,-ÅòM›àédž~#"¢"IÞ oW;ŽŒnR°ZQN ÃE)iHJˆƒ§¬í\cCkG’ÓR`C:YòZ8;Øaݦ­ xÁÒßþƒF”œ8ïÐhDÅcQR2ˆÉ4YpòôÇ–­›b“»‡³ ¬J‹h8‹Öºj´tv)ŽÃÇËCq\¸¹!‰dZIø‡ÿü ½à¶‚Üñö¼ÇÉ©\pæ(-™S'ÞQémHÖDççæáÁ5“ŽžìPßÚIãƒúÚJ:V%o•ÓÉlݸ‘t¾­X³1‚h}ýä.O¥ <OHÓI»&Ó•g¿AøºÀÖÕÁÁAðÉ½ŠŽÞA®Å$¡¾º ]ýVؾíØQï -Ø»xb÷׿÷ÀH¸±có•gžRÓÚñœxjß^ŸÈõ²hèzP×Ö‰§¾ü,/]†`núÈásíë¿Q·r¶,´:jòÌNš™þf•:»ŠäO ì +Á‹óóùgŽ1šMdÌÍÅ̘8.n+!xô÷±d28 á‡4Rã†$¦""<¬…S\mȤh™ºˆKHP² ºiH‚ýoä=qdëàŒE\ìV‚£ V­^;áã¯'/^6z_Ùp'´Ü’3dÃ$€rF¤!ôˆ™ðȘÑûï´5yôÆ|p¡Ñåþ%$§$)ñÊ5ëG.ðÿÜŒbîÂJņ•‹ÔôÕ¨€³®Ý´eôëÚ [9Õ: t2Ä)«5>[·q›²4Ž˜?ÂÙD'¦p´Ç…öÑÔÚ‡ûQš¹[õ.Ôiõ–M°"ƒâœÇ](Ú¤,CBÃbRʹKhˆÆW¢àÅÝl“ÌÎ0Ó)‰s–2B• :‘d£Îcä;ÐGõ³ß¿Ðˆ™ÛÖôõ ó r7dp HãTAÊœM¹³M?•lÓùM-6u˜N9cï‘©½„¸c/›íó\ÖÅlBOŒÊ"Ù­ eܧ]š{ hÄŒ:'j¨E{{û¼ áÊ!†Eq(¤îRŽÔõ³ UXY¦’‡”ÁÄ-eœjô»”-Œ‹¤Ò-áO•AÒ•Eê æûýï}bb¢à0ë$õÑñÞAêÑšä^½ÜigG …nÂ×;w–••9 †vr‰8KL¢0—ððð¶ÂÂB—ÈÈÈ6õºÄLßCÒ*GÖq¬s2¥ TY¼÷Þ{Ùüò‰É™ÜC 5b¾Æ" …yNx%L1¢³E^j¾ŠñãÆl6ÙÍ(­ÔUŒ¾ðOˆQ”Þ®)A%YšKÙU9¥46J»‰'k?¹.Du2ªA"×ÅqÈg òÛDùˆ£•{EW9U¦™Æ4èB­«$clA£+í¢PÎJ,Ž€FY‰å»È:öº$”ïKz‘Mâ±ÎP­¯\“òäI#×Çç-¿K%5½Éu‰Õëjzù.ùH,z“û¹åœiOðó^S¨¢©_K¦¤“Ñ3ß~ò¥Øð™éå{gǶë&‹½Ä¼æÀÏ]ó·N–éÄÎU§z÷­Ç¦Ÿ0vær ¢'N¼MYQC¬ÏÜö$¥ñæ0hČʦá7•ÉÍŒYO++•Hн°9ˆpb4ÅHÙ|Ù§%ïø›d%ÃÍÍmüOsò] ä}ŸM@Fw r6Eˆ«&t0wJÿü}„k’Š«Ï‹´›µ nÄžj,õ»zŸJì%?š#ÐÈC &]æÈo!çqû{!K»°e“Þ;2#ÃýùUzmò72H™³-WÒ‹Ÿ¯N›ôªg[‡é´»Ôo.Ê™Ž,Ú=æ××md8?ó°æ¯Î”9jdJõÌìGq 3KaÞ»Åy˜:}d^I´Ü4 |q5À‚ØUÓæqï1µiäk°™Š+ Ó]„÷;+H¼õÄÚê'žÑÝÃ}¸|î:ºG¸MÌYÆðP?.œ>…6ë“~™€ŽÍó6Bšëúš£¼Îv€xQ ÷§42Ïí:–PJÀeë¥sJ ®ý¿þ'/f£‡DPÅ…ù¨mhB¡ÖÿÛŸãZI9É£zP\T€êÚz…ÈIvqÕÕT¡²ªVA_½^RÊÓÇ#[B[›QXX„næMŒ„¶øäo’K¤­m-ä¿èE[s#r¯å1íº;Û•õYóhmm¿%«A:Ÿ¶¶R¨þ¾^òt޾ùyy”Æ{°ûàMԑȨ£cdй“»š °8Ä´…ùhfžc¦ZÀ0Ó䡪¦^³¯«©æÎ±je÷×tœéñO÷ÑÖ[¬ƒõb<á^RTˆÊ"Um¼&¡Ÿ€í#äYjÙ÷k,Ó~jP§œSˆÇ$å_ÁŸÞùHùÌÉIÆ2E92P€Ë®®¹ï(Âhÿ™E¦­vš¥è/x&Dâ=sìNŸO'1R ’pùâEèÝâ팋—38‹j‡Ç¾ô‚ýMÃjêjkÄÉcDÃ5:£,ã ÚˆµÕ×vñ¢=~!‹V 󸧍#YSsc ±¹žÆù3h¨;ÐÞÜ {GWô÷´cÅ;àØÝ€éW¹á~žáxá¹/ÃÃu’Ã…átѸçg_ÁÅó—±~ý*|vô ÷ZÁÕ7Kâ 8}öI¡2™¼ßûÖó°!"®…Î ]Muø÷öãåïý'\:¶̓vh«¹Žöî~4NüËÏ=‹nµ—æàxm;^xj'ö¼ùG$mØÎû¡¶© =Ãxî…ÝÄÇò¿‰qE}ðæk(,¯çï=xôñ]ÈO?‹"Rïæ—Ôà_~üx9[OIÃÛÝÑúÊ ¼zä#,Y¿µ¥9È%æá=ÖòÊå+xé;/ãÜ=è±óÁŽmˆcv¿b—OEm·Ú´{>xŸ6‘8êqÝz¿„XfƒtöM8}x?ÜB“áÏýû?¿„më–â­·þŠÆö~,"AÙŽí[AÊ-ÜcÐF óÔ` Dƒ}ÿ£ý$äF[}52ÉØwäó£$NÆž½`1ƒm(,®âa*Ó¦š 6Ȧ+sôA [GâLy¼1ŒÆ54$ˆX„z^³G~V{‹„w¿Ž”åëIe WŸ`¬Yº¹99¸v5NÞ!xâ©'Px- ¥• ìõO¼ä3B(U‡Ÿüè'ð&a±®ddÂHàCžS#çGJt*ªêÃu›!ϑԕ—‰8 Ÿ>wwO§XpW™²3.#¯¤–œzöp[QÀÑ‘@Š—çájú||àÜ=þð]dÔ̯ýùtü·ŽDUkñÂÖÀýÿ„/PýWWU¢‹½ëå+Wâ1²î9;èáHÈò@´÷Y`Á w>ñBƒ|·nZ3éi¬íy&ÄÙÙËÈv—N㟋²’ ò58Àj¨W®ÀÎÑ .$›ÞnkîÏ%Tº—§'‚ÂBj¡‘&o8§ˆü|Í)ˆ!t OÉDóD7ôÍ-i4æÎd[,…ÞÞ[7?7{+œ>wÕuäL?r;Ÿù*Ö.K¢ƒYo”)[WlZËÞé_ÿ„–!{¸Ûàâ•\ÂÝ{ÒÑYs»ðR®‘S'ý$Ãâ\ZH»ÛÑÜÂé±AnõF<ц=ÜœoÙ"+¨»iK–bIZ"JórI\HJáSè³öÀËßÚͽNÌwŠ ±^ƒÃƒð ^jjÊÀqäÀ误u…pvÖ,OÅÛ¯ýͽz$Æ„Ý3¸a³yE¢Áº· o½ýˆˆE_k§k鼇ÑC¢/™µ’ÍýýÝ:#‘•ý¨C˜˜ZÚyÒ€i–iž„½ŸŠ•Ãjýä騫®ÁÉ“'ÑÐÔ¢pU¸ÐPZp.¿ªª†ß'QÎùú!“·³çNF¿|Bˆçqý¡º®ä¯&:í®×ßÔØŒòÒ2´tw¢Œë:½-¬iÐmHxekm+:/k‚(ê­,ðù§ûñë_ü–6Î"›ádÀŠb¬ÝɇýÝb¦2N5:¼ü|eÝ`€k8Õñùét”]#óà‰[FXƒ4<«7lBMQ./%#£ZÚšPJ>®mT”sÔdo4–á׿ù ²KkÂQÁÏ“ë,×PV]ϳ8>#0ñ7‚‡ ´¤ˆö5 dJueþð‡?¢üÝû÷}„r¦¹¤»5éY¿òüKr6âÜ•kˆ§“(¢!ÌË/;Ù$בï£87Q‹R)÷Ü!Ìç{áàâÅ)Ñ0ìçhqýúµ¨.¿ÎM‚âA2®™Õó¹fCÀÁчŒ÷ßý®õ’“%Ž $ܶÍçÁRÏN Ì´pïiàþž ]ÀíÕ‹ãqäÐAX‘bvI|8àØÌCtžØÈùáãG?c¯©_ûUÃzRü‘H}úÛ>ˆNÝiŽÔ<ðü ~$. ‡op ¢}ìÑuäGÚxnQÖ,‰ãh÷G²xâIò‹ØkdT§÷ÐÍÌScÙØ;aÇ®]hࢲº‘©.‘‹±B(õàöG‘ÌтޖS8þ7×L5"*NÁÈhÁÖMƒi [2º¹ñ°,_~ ¸w@à#”©!Y“äötp2‡Oôr¦{¢(&1>aXœCÚ]…)qRqtÖˆ‰Uò‰[”ľ(™ÂÑÓÛÏž(aB8í?‚¦£ñ¾mŠŽtªKW¬b½­'µ”N¯Ÿ|%>Ì´:òr‹ŒKH^ÔÏ)-ÖI¾»¹$" 4 ¶¤·íá讟;¾è?”Ñ– DH ‰»B °âÌŽ#,9 .;ßD>qµ¶Lí@Â…é²¹ºFs*Mæö-áíË·³¶Âá}gÉó¾±ä›·”éš/Hð‰Àc^t¶°ŒÅãîÜôÁu*Ñ^bŽhm©Ÿ]_"A¿Ûðù“u·í<ÂŽÁ;îS?O_=Þ‹ÕÔÈ<¶š§—§zøRÝXãP÷4¹ráØÙÕ}ôúlDÔѰª'šœÕ¡½þæAY= àøpó@¢NVoÝÊ©+;3ÙѨßÙ8ªp&â”ÀL¬i8F‚%§~ôÔôr¿¤ãlÚmAÏ‹cªA}é¸Þ3RG+Ò®†s¡\ "³8I½þ&ÔqÔŸ•øNk £uá^4½~dö×qæÞˆõ›¶AGVG1¤_¤ ã:†³Ó—èÈ‹„R/N;Ž ®Üh0>2öªöù^ÒÀÔoñ½T“{TVÕyŒ²ëãﮜ’¸—‚8k®ÿÌ]°€`ðܧ•¤i`h@s fnééN§‡næb•ìÔroŽîF)ç)o¶NOÒϧþDoĨâ@äÎx\rȪƪVø]j936<¹OA“½QÇ;ãÔL§‹‚¯%uÃ}ãcÑíD×oÔù–º¨uš(QÆÔG‘Lò–²g«eM£ª þêG†§_ˆmeš1ããØÜܬ¿Æ]@"/“¼s¤¼‚‚1\ÔC—}®‚§ÜÜ\…TjìôÓLÊÏãisr3(°ôs)»È(å‰ÞÈŸÑ+| ´ø$òyO¿` L9ãaÆ–D"̸^Hµ®\ªx]ø5T£k%ù²Ž:k=V-_å™Yšþ³#mO>áÉ„Y©‡ ÔJ,ü,ÇÄÄ äççë%¦žõÑÑÑ|^¬"""†¸ÃM2T^^®#ò9mtä×&j°óQ8;X¥"›*<uuu:©«ÔYhÉ@Po©G rm›šš,(ƒ‘2ŒÆr¼)JÞS ?§L×Ãïmä Ñq§¢Â/":%AêJ=r…š]áa½Ô%Ó³L··÷ ßC+Æ”QOôãúúz‰%¦Lƒ,KʦÌz5¥ÿã3$,ƒäi61‹{.™æ@Ì×d:>@6| N¹v bùð %_~åe–ksh Œ48B¤Ì™”-²òl…¤aéçVp *åÓ©;1Fri"ùÅÀó^#ïÕÑAXÒ¸‰R†œ áu!qR¨ ÙÛEœ‰ò¾ñ܈´“ðLjÃPÊ‘òièÏÒ1ÄÅ}>>#k,É0Ñ5‡g`–:#!õ²'‰YŽ144T êõ”M ¬žFw4–ö¢Á—﬷%¸z!w² ñUˆ¦èžé$ˆœD\C’öRÊäoJ}ä>‡ Ñ”8:J¥î7bѯbüoÄ õèFȼäù%éSÖ«¯¾z”ßr]œêx]ˆ±—NŠ8©§BF¥’RÅ ‰ÕØxìïRe¶4‡µPÇmtÌ9ü<@M¿ J½ƒæ@Ì×hbLžyYÆ?ôæ+fòœ„„2X Åp©/ûä)Ìû‹ô6ÅXI/Ø”²ÅPIZáS1%ýlkCÃ/£Kqbw*ŸíkE££LS‰!Ã-1 ›j<F¿ÆT™RbšëKA'²-ÌCˆ%Û—f¶~3™¼RŽü&òÑÉ(rŠcïS¦ÑX~g`™i‰§Ò©Ü#Ž@½G-k6qQQQÕÑ£G0Oɚ̫^UÆÆêo“Åcï5×g)‹'&!#/È—æ@ÌõèpC,_ÆAyñ¥çÅÏæËyš9I¹êßøFÓÌbV·IÝ¥ghjÙ¢3I+½B§YÉbJb‘]ŒŸèpå+=n–3Kzù>>–ü¦$èPê/±™ƒ8 Éò¶øFYªÂÇÇS‰¡Ö}ª{fô{ð‚ÔYÁ¿Fþ‰A¾—‚È+r’Ò4ü¡{©¶”Us æk°!ŠA¾¤óöЋcuÃP˜¯fÓÌIŒïlƒ9ò˜­ ZúùÓ™;†AâV nÛŠ‡Ü¼ðÉ‘Þ|ãm ÿiÀB¯㛈"@¢îæÆ¢[Äë§cjmnÀ¿ÿ⢓—¢$? tƒF[ìxl ŽD²¼¤C¶žøÑ?ÿ7¸“ƒë»ô}øÝ/Ç_ü:zk q*³6ƒ¸ZXAðN<þ̳<_A,rp¼vþ¾¹û+8´÷]xD§¡¾ é׊ÑKL±çv‹" \RׄOöüÎfä³®Ýð{yÏ  ¬%å5ø?þáëî4ñÞÝ[j6ò¥—¬ŒÆÎ¼þ§‡gX"\ÛqèÌy ’Ìj݆Ôûe<µû›¨Ë=«U]øêÓ;¹8>½Åô Š3Ã%#Þ{ãÏKYäP'üù½ƒˆ7øáä9áðèê#sd?†IAûÁ›oâÑgw#ïÒQÔ÷:À[߃ÇNËl[yœpûËgði†ªhY, h#yjŠŠë8›^ˆí;wbir"j+ÐDÆÀĸPœ½˜…­?Œ« "H°9^7-XµÖ€¸¸$t¶R¶¨¾þÁpñò@XX(ãc”ó">þ°·&áER¾Bgïƒõ«ÒÐÜÞoEc]Š8ò¨®mÅŽÃI×OŽŽôöM>(U¿ÿå¿¡¬m±Q8î4aä éíÁÃmÞØ¶e ë\K¤V·«ýž-°sÄp_+ο‚Ÿ…µñ®t0‚ÑT_Ž ö­hØO‡—_\¨LÍU•#?'ïÿm‚ƒƒÐVW‰Ã‡OA ão#Y/¢¥³†à¥œ Û¶ÁšùØ8ºÓ‰ó!]½™fòOøÞk¿Ã¥Ü ’c…âÝ>$(¦7œl†ñégÇ©ï:\&ƒã±£ÇÈÉBn’1Žlò\ïæ/–p$D×ésçpöÔIòÕ ×–ð+!0öµã™1y–œ:àh´¿Bñ[KÊß>ï½ûl\}án|øÑ>þ&›Œ´ i€;5%ÌZZ[0¤wDtdR“)FÔ78~^´´AÑo/I&mì쌓³#œy®aQJ ÒP[Q†+3aceMN RÃ’#¼¾NAI&÷¹û„EE#‚Æ›HÀñ$—²'Rm™;G"<ÉŒ_ONËtȬI•7È©¨¾Á^42o;'<ôÐ68èpáò9ñ^d¥ŸE`l^xò"ÙÞì™[ÉwÕê•8õÙ'¸œ[ŽÅ‰Ñ¸”žÍé—nr•ðÐGJà’Nÿò{ûI¡ÛÞ‚ÆÆVee1©¼Ü\oá÷ÔÝÕ„yöAVf§æ*ÐPYŠª ¼òÊ˼ßefsÿ,ÛHèùN_É´P}c#ù\ˆrìáƒÐP Á–ãóýC~UÒRïÆ¶ÜIu?Ù+W¯EU~ö9Åg+EÙ¨çt¤Ð ŠS9ÓÈúpLLA™:ìïì@eC½‚€ìäî…àÀ@RÏjfc2Ñ®kOÂ<µ¸¯_†»špðã}øËëo¡‘\Þòb:»x€à$9ú¿ûÃ_P^W?3Ã6®>V„ÏúÜ«WΣ¥·îΨæúÌÏ_/*AVö5æo¡Ìw74ב{¼Gà–Þ¸%åáÆ.Î,ôÜ’¼l8¸çÓsè ë)Î7Ðàù¯}®º6|øñ~\½šO_NCuàøáøíÞ ìº-2H]ÛÕÝ7*õ¦,[‰†â«tðAŸ+ )§ ù":›šQS_Ë)ª~¯ۢ­¢{>üGÏ^„7_wns+s[s“‚Ê;vMCFÙW¯ÀŠ<ïö|ês²®à§?û)ú __t-uÌ[§z çþÈ“/ 1Ô$¿|`¹Iú9m×H]Ùbñòµ(Ë» ½‹Èr'²ªé–;›û q`íD IDATtâ(¬iCrÙ)ó9ÚdG¢›S¥µu5è$‰% ÅúûÙf{ÞÅÁ‡;„ÒiÈf‹Îvž¨'ÅÀÈC1I´´÷‹Ô¹ƒû¥>÷L=¼ü‚ñ³Op¦I‹—#!Òá-ìÁzã…翌LNÕD&¤ 1ÂÀ­¹Ó7lã` )ÓÚe͈Œެ€=ݎع*þθZ\ ï%‹¹ˆZ{G Cðó%µ.GnÖxp™äH1ûÀ–a;D.ÖÆ&¬ÞòV‘Ö†Ó8“…e·À/<‰áÞ¨nî#ƒ¡+Íë9‡þ"ý0н®î ½))>Fƒ‘»Åd*h÷7¿ {ß(rExâÙgv¡¾½Ó}»`Kî§d[Å/³O?Ž:ÒÊ>ºëi¬\¶qA¾ÈÉ/FòŠ5Hˆ BNNöÈ¢/g­ ¿tåZ\Í-DtÚJ¤pTàæ@½’Pª›S‡ƒ2MHAn®˜ŒŠ4á‡%ËVÑyÃfù"\+­Ã¦Õ©È̸Š! ,cOßÕÍ´À^X»vìlnް&ÌlŽ.ê¬mÉiÿë·lç”ÕÈ©ô ,³³K&¤Œœn³ ›¡#<éØºÈ‹.„RöäuG?BHhdMº‘YÆÝE²ˆ³ûBà•’¶†H’B±×íêL–Äð0e Eîpã”W'9¼åótBtl"‰’ô\¼‚ p´·ƒ@G@:¸s$tðƒ·aë‚5+RÔ‚sêÒÕH¤Ã–Ñãâ«·HÍÉ:›©‚åùCh;/ʉx[Ž@lÈ}âɳÑB§€3ŽÝ˜0]i÷Ü¿ÐÈ<¶­ {ô>¾²ûh$¨äHÖ„óðG¾£Þ3ÓX¦eÛI‚ ¦Ž n®#†ÛŽ ~û‘ž3á%•€ç¾€°ðŽˆîüØØ1ÍHÒ§‘roZÙÒàNÄ!ÜÂÒ(ãÃÈõ1W9o/8Zì‘––Ê¿ð? êÁ‰ŽÚ™j0rEÒÛŠ¡½\èŒ$Œ%RŠŽOBp\š²i` ?{#‡¹‹lØÖª»æF߉Ú^8çÇ]÷æô£4 Œ×À-ÁøÚ÷/¤„v7’¼âó“2S¥[Ñ»ºÞδ8Ó|L½?4Jèouü›î¤˜©%ié4 ÌŸ´Et3ë~ªi3u[vw³lÉû^q·)fšfRGõ`àd±Šó˜ìwõºˆ¦~–xìgY¸–ïãã©v¿M³ª ö6N¡ÊŠ˜@¡Y[°â~áÓF f|HÀ£ÏÌÌDEE…blUc`Æ"&ÍJ –YÉ4•‘ÏaÒ{ïÆb|srrF …fZ†ÈO.e÷”§§çL“Ïú~‘Ÿ|&ÊÖd)²¶“ë²NDâ%5@x8„@ŒÐèÜFÜI«Æ’y6¢]!É‚)™6#“’‡8©·”-Â'Â{-„Jø1¤-…´JÚRbYÇ’ëòÐùʉñÉœºä'$Or¯”'i%Aú½Á½¡\ì4ù]bÙŽ,uScqT"Ÿ™žÛ¤!’|ä» (½ÔS¦;…E•Yê,²L'H]ø ¸…‡‡Ç§¤¤ø3²$Et†"”O'íž¹Õ€æ@̧oáÑ 9æ¼·./©¼´òb“Hy‘§ûâšKbH¥îÓáÓ_¦È*H ’ãÉ ãøtæü.eŠñ“:¨†s¢üå>1˜"³è[¾‹á‡ ÆÒb€Å ¨±f1äâ„Tƒ-i%¹F¦>iC… Qî•?1úr¯81îâ”Ä ˆ—´ò7Q륥¥£í!÷Hz)Kbù]ò«×ÕXÒÈý¢ ^3òOàÛ•˜i¾‘{쟚Fb¹>“ úKMM]õÖ[o…²¬A–-eaïÞ½Ÿóó™ßÌ2œIáÚ½&i@s &©mÂD´6,¤N²;Ù‹=aJ3]¤áªU é‹a“—.ƒ,©»)Dä”^µf!äškÙ¥|é-‹q–:Lå@ä^i_q"§8õ»Kzq"ò]œŠÄÂÔ(±ÔQb1˜j=Å6Êg5G*yȽbD%­|ÉSF1ƒA¹®¦™Æ¹.8fBiKfB%/5ï™Ä’§ä%ÎCž)‰E6‰et%2Êõ±±È,ßÅqJY3 ¼ßƒ÷Ëßh`jøEÖþG€¹FÑ>Ì·4b¾¢QN£¼<€ÃûöhQø@æ¬Ô9+¨©¦‚XjyÊZΜª´ 4 ­Ìcsô:#7?n>þðãbg¹:ºúàKL¢BâVÙ¹¸#<4„󨦝gd\<…}§rñý—¿ŽæZ4Õ6!>‡?~MxñËO ¶ª-í=DÞM 3É‘vIfÕDhŽ@ÔT/Ë/ˆò¹ ¹¥•epõôƒ!$pJˆŽìKçní _{tõ GËYWsáÎú¹¢´„l~ìTÚÙ;"8(ˆÐRG."L±²² ~\Hì#yU\„xzâr%ÄGãòÙ£°ô …ñXü|½ÐÚDCBnØé-p™˜M"_OÌŸ÷ ˜dùQ¬ì…òÒÊ6 @¡…pôfî‡agOEHÜb膹•Ðô¶VFä^Ë'Þ˜N6èî$À¥+Ú[›a´äáGBÄ,” $g–ãΗ„^nù¥>ÆÕÕùWqàR1¹‘@6Ù!VÖ]úÉwÓMþWBñháþÕ€æ@æ©mû{:ð—?üU-]Ü¢Ù‹ÍkVà ¥¢’Ãf  íh!páÓ_û–§Æ›Ê'bDYq²²rñ™Œ®ÒP±÷NtÞ¬´Z{áÌñÏžÉ^ä`Ò³JîgE¸ï“°ÓÑ@ B/7 ß®[HžôW:;ž{ èã‹ßü’b#èD&Ä‘!°ž(À¿þ|–®^ô‹'`¤1j?t ;ß‹äÉ¿šŽv£#~úÓŸÀÓeúÄ‚nåõß¿Š‡žûŒõ…8–QO{2çÕv¢…4¼[ÛE>Š~"îÖãsçñ½oŸíûΆ$Ô䥣Œ½ýVîæÚñÌ XJ‡8F¾ßy׮ד© [¶?ކë×GDÚ‹Yùø_?û78 @˜Yð“^’—…7NžÁcO~ '~‚Žž¢÷bõ²ò›\Ç^ù^ûÃï´áa¬b[릱€oV1'ÉìâÉèëµÃìÄÛo½ÈØ?r„œ^‚,W̾‡¾8xð ÉÈ–Áú›ÈÈ—±jé¼ñÖ;h!Tü²ÍÛ±së:mþißë—'~ûïõZÝòW )#¿ vë¦õèéàá1 +¤Ä‡ãʵ<ôè£Ø¹cìGÊäù „ ˆ&`žGy…%°´u$¢?ù>‚B)OåìE/¡º3¯d’â´ .Þl^¿ÔçK;FWg·„–ÒðY`û£;èiG§smJB)Kö´_ýÅÏPÛmÉQC ™ÎÑ„/·Én¢Ã¬!:oââ%¨#$”">˜£Ξ¹€“'NÀÙÕ®ÄÅrv¶' }Ñv‹Àmtxä\¯T¦Ošj«IU›‹÷€ï•‘Ö‰dLù1¡”àŠEeÜÚê ¢å®Ù¸™|m‚¯§;õlæ%,_õv4á'?ú1Y c`Õ׈Ï>?7ž÷¨*¾FYPV”ƒì¬L¤g›‡ÇOAŽÎ?:ØXÒ9&1ÉÏÎeò|81’n Øß“„]GÐÍ‘¥žp-9ù¹¨¡³èj®ÃÕŒt|üîÛ¨kïGR\^ÿóILv®Î+¡xW5 9»ªÞÉ3oçôÕ°•½²Ÿ?ÈßWþ{3öõv'$¸5 ¼¡¡ÁÐÛˆ¹4=Ø9Ð ;:y6’¨¼›a9؃s4®;ëêê„Ü+éèà4НŸ7t r-Nâ ¸ûx!2<Œˆ½6Dñ‚“³§"¯7§YºÈ•-ç& Ã<àÍ饆š2òw Åw;¡éƒi`. ´ºÇ}ЍÅkñôcD C(5LÄ×5k×ã {ê—¯•#51 'Ï^"wˆ ö„;ºNéË©¸Dûù(|&£ò‘ü)°ùÖ,CMy!ùIr”PC¯ßûî7àN]˜}½†Ž_è¯\ÜQ]]…®Ž.…òÖÓÉ ˆ‰K@Bxþøç¿ÂÅ7^n³B^­«™>„ŧ@×ß‚÷ßý±dîBIq xR^\ËÚ6ÿÉT—2ÿÇ)¬òÝp¤ÛÝцÖ7ÀÛkÊçÄL¢jÙÌ“42OŠ䜻¾¿o½ñ:þòæ;hï$™çšÝ¼àb=Œ7ß| ¿yõO|Y[9©cz°%F ̳²Ò‘½œsؽhá)f9ŒVp­%×Ëx€¯Uµ¨á‘P¾Z“çCœ–^g¥ ~äÜ‚œ)(&›Ý¯¿†“é9tp¤…cøÇKH:*<ùìKˆðµÃ‡ûéW2ÐÉ9q™ò¸tâ(þüút´‘Pë“Ch¥¡QÃGÑÉij­†•+9Ûý<È#RE­®ÕÔ ª²ý\˜·#MlS ~ÿ‡?â3:o?D¤’¿ÒÈI/ÿ–Þ<§… 8g_MÖÂ>NU–áW¿ý%»ÚñùáOQF’-³ÒÉÙÙ»àïþþ4]Ï@Qu<Èý^SS‡RnpsóÄúu«púÔiP­b›, Þµ-œ\½È+ï‹·÷ì#›ãjäçe`ÈÆ >doFÍ6ênKŽô®œ»€OUøY¤3bçèލ¬t¶ †E­—›OÚˆùt9£œÜ¹pþâ‹_áüu¢ãê‡hòe¸¹yóúóÈȺ†€  Hˆ 3qýcDœÐÈDìx°!͸䣛¬y[HTåãhï’JR¹:“Pª”péŽXÚ;Ì‘ˆ'™áãbƒÛmàÈSÇ;v성[³Ýá@˜ïG¾ô4–§wƒNe²°fë#p ŠDrŒ)Q;a™h@yež|úYH(åì@ÃÂÃpîÊ4ˆšŒjl¹ÈýÍ¿û{X¹øÓ¡ºã¥—v£²® ±/ì†ÎÆ®vË“§ÝÏ3ïV|õ߯âÅ˰8Ê@¨|Ö5 q¾¸p#-ºBáºÐ“ýpÙšÍÈ¡Ó ØŠ¤E 0yÓ9“ƒNÖšÎp€ŽÅ¬ÁR‡H‚•¼„|äFX“a1<Ä›kPUØüÐ#ˆ‰DKY+‚C±$-~ÊM f•kº™q4¸aó6NCÚ")&îX…²†ÏÐËs}«§ÀÖÑ‹SCàïj‡GN ×FG­µX˵§¿í?ˆÜ’ lx`#)‘533]•ßk÷i-;O-&T¢É$Ž ‹Š¥Át$iAìÍ ”FLBü‚Ã8}eK û[{Ò3”×ÉÍ7n$/¹- Nû Â…V$xòò¥ñ´F¡Çþ\浄WÇÈV: ¤r˜5Ø•×2M¹6=ð™ë¼á@>©v-Å$%+t©Þ.4c›cÝxb]É‡Ë ‹Œ¢açØŠäQt&· ²úqáU›(Ëò•ë8r!˜ GM2ee%#"~öZµ–;}ú8:²æå¡cò&㬠õ¡®v„ºWÔéHA•˜LçÁ|­àL‡¬L[ÉïŽtf•¤Û5o°BÚÒe”ÍK–­&ß<,£HâD1{îȲÄ«{>º­“±QFLæ-ݹ…Å.·ýÂØy°‡Ã¢%øšO0GjÖüaU¨s®㢰XÊgG®A¹p×Ü3Îîè$G qá`½Ì¡-žîÔ”0#èaã5*À(D ¢`™#XÐ@;Ý <²vq½%K'§‘„5§{& ¶ìQJ¬'™nwh¤§³­ØšÎo$XÒÐŒl×[æþÍT?;'g„ðïNa6eKÚÙ¤+›Ž#)gçÉ§ØÆÞ;_Ÿ-õtr©™«ÎóU­Ü/®4r—Úþnôf§U5B²† ‚„:—AÊ—r‚\â™9ô':35ýLË¿”?Vî;µŸÜ«¦™N,ù‰ŽÔxlùjYêoãã‰Êš. ãtï+ÏBû¬>Û M.Mm ˬÏù0¬OŸ>m!|ªQ0kSd&Ó_Bè$ÐáÂ!ñ\Ê F4++ õõõ œûXc<…Ø£?‰¡+..V`Ë.e!¤üêêjÒ]¡&+_®‹®Iz„òòr*dG ÁTMM §{|Œ%˜8—vXv!z’iAq–R®èNò•Ïâøe‡œJ(%óÒ–j,iN½²²RÉoTã>È®9!“tÂ2› õ•úHÛJÛïËXâ,!À.•@KÊ“ú ¿‹È; e³]˜êè>„™MËÌZmb¾6ÐÑ8è> 1 sä%þ1.²è=| ò~‡……™Ì"°ãÂ1!Fx®õ'm%FQŒ|TT”b̧j?áå]‹Ìb,å»è\¾«±~qËæ¹.†]åg¡ÖS>‹±6II#Ab•=Pü.ßÕ Æ\œÎDvUžù]¸YäO-GM;ÝXò–2DqR¿±±Ô[: ˽KXÊ”t¦–-ùH=¨;Y†×–âE! ,hÄŒ Bã0(FB Ël^SE¢a2òWˆD†¹b,¤þbPMéuŠÑ‘?‘Ý”ô³­¯”-†\œØtÚOœU×j½åºÈ/# ‰ÅèJ,ŽDb1´j<™ÌªÔ<%™D¿bÐ%¯;ÉXTT¤8ca¨¼Ó½“É¡^—ôªãSc‘eªë"óDÎMÍsº1 Ì‰jdº ›Ãû4b>eÑ( ó…šÏa¶B(%Æé^ ó-ûlÊWÓŽUã=þºú}:m¥æ¡Æªóš*­š¿85ÝT÷ßé7ÉGÂtcµü;å;ßåšùÂÚ42Ön™ævžev².øÔ|±ÍÑãšMEåå6ã‹;Q´´ó¬ù~ÍU}:?q F>×÷nÏÈ\ÊX`ùhļ 2Ÿ£¥&æèišC%24Ì©š»†ˆËu·ò6·¼fÇ×2·€Z~šf¡ÍÌBy÷BÒ†šr\¸|•'Ðo.¾ŠÜE¹W[PtÑ”¹êtˆ¬W®(à‡3ËóNL#Þùóo‘UXÊÅÛ»ã f&ïw÷á¿ü Õ²«kŠûîÑŸª®çãäÉs Ö=ZMìYj@[™¥g“¼¥¾§Ï]„oH"ƒèVr-„ûáâ…Kpôð!FR’'bj9çNÁ»G2ñÏÿøÔ…¶º©«V­ÄÇï½:J½òÝ(ÈåöÛ–n¬Xµ6V$t*¯@YE5 ÜQUz½!á±Äpò!a% Š àhÀâEä(™L±´àô~q¨#{{ŸäNÂÉÓg„Hƒ¿Bì$à¿NnH^”;[Y˜ö~ädg#‚ø`Æþ.”U×)x]'Ÿ€5рׯYÂÜt¸Å,†„# ¨a6ÌÇ–3G>;7ßP¬\–J0È[ù=ºÚZpôèg°´sǺUK‘›•Ñ·@¡,JJ1Ë:Á­ídDNæe¤mØŽÒ¢<è¼à ë'ºð„DÆ#ØÇ­í½ "qW9q¾@è±`¦ »¹#MGXÍìîêäiz{t·7£‰|0Á!¨.ÌÆÁsùHLŒ…·'[··¯Ÿ'þíÑÖÒD’²nÂÅݪíÛ}¥ÍÌSsö¶7áßþ¿Ű51˜>ø˜ü+°ç½=Xµé|ÒPØ¢ª´­_¬I›ùvò*ÑÚØŒÆ†f’U}„¼ÜëÜÚItÞ–6TÔÔ¢ÓÆ§ŽDfÎu"ªv#›ü$qÁ¶xÿà1ø»9à7…•Hˆ‰@Û¾#xþÉGñ«Ÿÿ1ɉ(zw¾ñ÷ßÇÊ´E7˜o—À’Æ»¢ ¿} ï| ÷â{=—]Ï<‰¼¼<œ?zCNøó{Ãð`Çįýû¯±óë?@UŽgPf»~´PÅÑÕK–<æÝÕZ‡ß>Œý×ÿŒC{ÞKd* .Ç€•Ê÷@sçWñÈÆU·À®üù·¿Beû{[ÈutÖ–!ójŸ¸ˆ?¼ö&Aï4ú¹½žS_áX:§ô3ÇpòØy¼øõgñÞûo‘ãÄ{)ãÚUË9:ÌÁÿçÇoÿÏÿÁú'¾J/w.R›[Ž©¥œì×3Gö¢¨Õ/>µ ¿ú寔š„O>ú„«ÙFÇ$aY˜8 ¼ÿÁ{H^±¾6]Ø{ð86­]…WI>ÖÛщ„µâ;ÏíÒð°&Sò=~]›Âš§,.,@]—/îþþáû/ÃÅV‡àØXlÞ°U­ýØýÒ×ðOÿõ‡ˆ˜C"ãbøâ/A¹9jê«0@$Õ˜èx,âõ´Å‹Aü(wt²w^VtÍÍ-H]±Ï>õ8BxâÛ/‹€Ž:pk׬BIQ6ô|žœí¬QSUÍvkÆ f±ž‡>þˆú|‡Ó£½ˆŽ¥ó&P¤³½5ÚImkg·°A-ÍÒÖ_ÐLÖûj²Ñ}ÿÿ Yyð0 Ä×U¡uv÷ÀË÷ ®desÝ[™j²ž…a KÆË_×Ã7ÐI<™,‹Æå™žIDATñ‹’àÊ™ž¨òxÒ‘”•À‰§¯eë­‹³+\%ïJöÝÏúÀÙÃ/È©­ê:‰¢°tñ|é©gØÃ†ÞêÖEê±Í·}×spr÷!%m0§ÎÈ€¨£àÙæ-ÛÈ}ᆴ%‹•³ÅÖd¸sÃ"°:+ü—ÿçǰ²w#¡•+~ø?DqE-¾ôèvp€'$.äþéQÆÞî— öê7.MA&ñ¸ì·=ŒÐO:øé.G6ä\y䩯"ÿZ.*›H)5+DzÏ–\{pã4{Öæ –6øòî—¸ !ÿð_þ/rÞÛcãêT¶y!¶>´$MA(̨@G"‹éu hújD ذíqü‡PÄ…ùÃë‘'ÐIvBko<ûÄ:øP„Ä:#ÀÓ{?þ6>‰XnÃòä8üíý(­mdz_}vÖ“?'æT·–×Ük@s s¯s¥DéÙ„†Ã+ X!pÒqžÉ͓Ɠ Ä^œnZïéÍ©'¡’]ÙØ9"9-UÁQòQ@IU«·QvÌe©à+ùûsE1^#pêr–D&ÂØ•냕}J>kÖ­ƒ›‡ÛÙó ¡œåà¡F8À…ŽD¦ÑIædÅi2+~ña™Ê”§B&b6 Ž¡–Ê"mxT<‚ tXÔ… " é.qäo' !ë ú³psÅZ:<ùÞË]Cþ~ÜêËhì% É”9*üüü92±TÊnrõ°œìnomRÚÆ|ÿé#ŽA‡ˆh–%ú5Â7(T!ðîmÃ;$”ÚöÈãðòXXÓWª|‚ñkùJl­Ù~1xé©‘ò˜ˆðÂH[ñyé!ÊNô(»¶žþÊó¤ò•gIÍO‹ï/ ÌÎ:Ý_º˜óÚˆ!¼$5ˆ¡‘ nÇ^W75Va/¬…©o4XÐ L-LV–ºHä  !8ŠxHÓcHç7,FwB &”ôw ”º™žn„åÛÞК^b ^³w]ð¸$X‡)>>Aù<òëKÇBaF¯©õ½p>¨m:¶>£z _úwðCnuázÔM¹î‚&g)r˺œie l‚Ü÷jl†G-ÜÿX˜Oíý¯÷{®†ByëÄ¿{%ÈO¯_àK|4Î>Þ>÷ŠJ595 ܦþ†Ý&ï‚¿ LÿÈø~‚ôvåo.zÖUO¦Ã¤|S!‹$½üÍW˜ïòÍ]oyÕ¹óžËüL}žæRÆ/jYó÷¶Þ7’«Á(¤DB4×½”'DHR¶3 4ù\!VÞ Þ|¦å A“9HˆfZ®z¿ÈßÛÛ;Êe¡^Ë"?9;†i>H²$+ª’«CÏi©^'ͽÍÛ€³eV[KÌÍ ôéz~´¢Ab´í–ÜÌE¶?9£iÉŸ†9S¤ÜÃeK&âWÝ cI«Ä’'˲U×oÆÊw#?å’@I{0ÉÏ£”¡BËS%/ÖCé¤7‰L W‰LËɹx—6”)-!š’ éL ò\“ Jô$:2ûNkSåÒÒh@ž\MfÐt'__ßÕÑÑÑ;ùÂúÈ o†l§›…À¸×ÕÕ‰e¦ó°ä÷é¦5Ë}¬ÿ0ɘ†hPDŸ« Ã$= Ñ ­‘éõL?§£c–o¤ó9Ä`²ý&,ŸÆÓHÇÑOR¥þööv= åëmM‡"FÝšõïg=lØýünÃúôÓ)Œ:Öm€ß¹ÀR‰èIA™åg.éèX숣àw=ï‘{­yPfývtÝŒè¤:˜·3“ÊÉÇÛ^`Þ?Ìz ’9Њ†Ýš÷[™ªOÊ£°-ÊCÂ<”"ËVøHX…¬J:.BÆ%Ëßß_aK V:2”䌎 O™Ôú쨨¨8“››û¿›y›œ BiInÑ€æ@nQ‡é_øÂÊêmøP¾4Þ|ØçÒ‚+ÆšåŠ1¦1½"¦§4ÒØY¶È2#çq£HI¯gb¼MÉÃtéiY¾t÷˜‰È1iù7ê©ô¬E×ü®ôÌÕx6BŒI+åK{N$Çd×Õä┆èìd4#;'¬ù>). -define(OFFSETFIELD, 64). -define(TSTAMPFIELD, 32). -define(KEYSIZEFIELD, 16). -define(TOTALSIZEFIELD, 32). -define(VALSIZEFIELD, 32). -define(CRCSIZEFIELD, 32). -define(HEADER_SIZE, 14). % 4 + 4 + 2 + 4 bytes -define(MAXKEYSIZE, 2#1111111111111111). -define(MAXVALSIZE, 2#11111111111111111111111111111111). -define(MAXOFFSET, 16#ffffffffffffffff). % max 64-bit unsigned %% for hintfile validation -define(CHUNK_SIZE, 65535). -define(MIN_CHUNK_SIZE, 1024). -define(MAX_CHUNK_SIZE, 134217728). erlang-bitcask-1.6.7+dfsg/package/000077500000000000000000000000001233730135600167305ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/package/Makefile000066400000000000000000000020301233730135600203630ustar00rootroot00000000000000OS = $(shell uname -s) KERNEL = $(shell uname -r) ifeq ($(OS),Linux) PKGER = $(shell cat /etc/redhat-release 2> /dev/null) ifeq ($(PKGER),) PKGER = debuild PKGERDIR = deb else PKGER = rpmbuild PKGERDIR = rpm endif endif ifeq ($(OS),SunOS) PKGER = make PKGERDIR = solaris DISTRO = $(shell awk '{ if (NR==1) print $$1; };' /etc/release) endif APP = $(shell echo "$(REPO)" | sed -e 's/_/-/g') # Assumes CURDIR is $(REPO)/package/ RIAK_PATH ?= .. RELEASE ?= $(APP)-$(REVISION).tar.gz: ../$(BITCASK_TAG).tar.gz ln -s $< $@ pkgclean: $(PKGERDIR)/pkgclean rm -rf $(APP)-$(REVISION).tar.gz working rpmbuild debuild packages pkgcheck: $(if $(BITCASK_TAG),,$(error "You can't generate a release tarball from a non-tagged revision. Run 'git checkout ', then 'make dist'")) $(if $(RELEASE),,$(error "You must provide a package release number via RELEASE= on the command line")) @echo "Packaging \"$(BITCASK_TAG)\"" # The heavy lifting is done by the individual packager Makefiles package: pkgcheck build include $(PKGERDIR)/Makefile erlang-bitcask-1.6.7+dfsg/package/deb/000077500000000000000000000000001233730135600174625ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/package/deb/Makefile000066400000000000000000000013771233730135600211320ustar00rootroot00000000000000BUILDPATH = debuild/$(APP)-$(REVISION) build: $(BUILDPATH)/debian \ debuild/$(APP)_$(REVISION).orig.tar.gz export DEBFULLNAME="Basho Buildbot Packager"; \ export DEBEMAIL="support@basho.com"; \ dch --noquery -c $(BUILDPATH)/debian/changelog \ -b -v "$(REVISION)-$(RELEASE)" "pants on head" cd $(BUILDPATH) && debuild --no-lintian \ -e REVISION=$(REVISION) \ -e RELEASE=$(RELEASE) \ -uc -us mkdir -p packages mv debuild/$(APP)_$(REVISION)-$(RELEASE)_*.deb packages $(BUILDPATH): $(APP)-$(REVISION).tar.gz mkdir -p debuild tar xz -C debuild -f $^ $(BUILDPATH)/debian: $(BUILDPATH) cp -a $(PKGERDIR) $@ rm -rf $@/.hg $@/Makefile $@/.*.swp debuild/$(APP)_$(REVISION).orig.tar.gz: $(APP)-$(REVISION).tar.gz cp $^ $@ $(PKGERDIR)/pkgclean: @echo erlang-bitcask-1.6.7+dfsg/package/deb/bitcask.debhelper.log000066400000000000000000000001141233730135600235320ustar00rootroot00000000000000dh_installdirs dh_strip dh_compress dh_installdeb dh_gencontrol dh_builddeb erlang-bitcask-1.6.7+dfsg/package/deb/bitcask.substvars000066400000000000000000000000161233730135600230550ustar00rootroot00000000000000misc:Depends= erlang-bitcask-1.6.7+dfsg/package/deb/changelog000066400000000000000000000002261233730135600213340ustar00rootroot00000000000000bitcask (8) unstable; urgency=low * Initial release of bitcask key/value store -- Ryan Tilder Wed, 26 May 2010 16:20:40 UTC erlang-bitcask-1.6.7+dfsg/package/deb/compat000066400000000000000000000000021233730135600206600ustar00rootroot000000000000007 erlang-bitcask-1.6.7+dfsg/package/deb/control000066400000000000000000000006161233730135600210700ustar00rootroot00000000000000Source: bitcask Section: net Priority: extra Maintainer: Basho Support Build-Depends: debhelper (>= 7) Standards-Version: 3.8.3 Homepage: http://basho.com/ Package: bitcask Architecture: any Depends: adduser, logrotate, ${shlibs:Depends}, ${misc:Depends} Description: Because you need another a key/value storage engine Because you need another a key/value storage engine erlang-bitcask-1.6.7+dfsg/package/deb/copyright000066400000000000000000000020401233730135600214110ustar00rootroot00000000000000This package was debianized by Basho Support on Wed, 26 May 2010 16:20:40 UTC It was downloaded from http://downloads.basho.com/bitcask/bitcask-0.1/ Upstream Author(s): Copyright: 2007-2010 Basho Technologies License: Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. The Debian packaging is: 2007-2010 Basho Technologies and is licensed under the Apache License, Version 2.0 # Please also look if there are files or directories which have a # different copyright/license attached and list them here. erlang-bitcask-1.6.7+dfsg/package/deb/dirs000066400000000000000000000000351233730135600203440ustar00rootroot00000000000000usr/lib/riak/lib/bitcask-0.1 erlang-bitcask-1.6.7+dfsg/package/deb/files000066400000000000000000000000371233730135600205070ustar00rootroot00000000000000bitcask_0.1_i386.deb net extra erlang-bitcask-1.6.7+dfsg/package/deb/postrm000066400000000000000000000020321233730135600207260ustar00rootroot00000000000000#!/bin/sh # postrm script for riak # # see: dh_installdeb(1) # summary of how this script can be called: # * `remove' # * `purge' # * `upgrade' # * `failed-upgrade' # * `abort-install' # * `abort-install' # * `abort-upgrade' # * `disappear' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package case "$1" in purge) if [ -d /var/lib/riak/lib/bitcask-0.1 ]; then rm -r /var/lib/riak/lib/bitcask-0.1 fi ;; remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ;; *) echo "postrm called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 erlang-bitcask-1.6.7+dfsg/package/deb/rules000066400000000000000000000021331233730135600205360ustar00rootroot00000000000000#!/usr/bin/make -f # -*- makefile -*- # Sample debian/rules that uses debhelper. # This file was originally written by Joey Hess and Craig Small. # As a special exception, when this file is copied by dh-make into a # dh-make output file, you may use that output file without restriction. # This special exception was added by Craig Small in version 0.37 of dh-make. # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 package=bitcask CFLAGS= LDFLAGS= build: ERL_FLAGS="-smp enable" make touch build clean: dh_clean rm -f build # Add here commands to clean up after the build process. make clean install: build dh_testdir dh_testroot dh_installdirs cp -R src debian/$(package)/usr/lib/riak/lib/$(package)-$(REVISION) cp -R ebin debian/$(package)/usr/lib/riak/lib/$(package)-$(REVISION) cp -R priv debian/$(package)/usr/lib/riak/lib/$(package)-$(REVISION) binary-indep: install # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: install dh_strip -a dh_compress -a dh_installdeb dh_gencontrol dh_builddeb binary: binary-indep binary-arch erlang-bitcask-1.6.7+dfsg/package/rpm/000077500000000000000000000000001233730135600175265ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/package/rpm/Makefile000066400000000000000000000020121233730135600211610ustar00rootroot00000000000000 build: $(PKGERDIR)/SOURCES/$(APP)-$(REVISION).tar.gz rpmbuild @echo "BITCASK_TAG = $(BITCASK_TAG)" @echo "REVISION = $(REVISION)" @echo "RELEASE = $(RELEASE)" rpmbuild --define '_topdir $(CURDIR)/rpmbuild' \ --define '_sourcedir $(CURDIR)/$(PKGERDIR)/SOURCES' \ --define '_specdir $(CURDIR)/$(PKGERDIR)/SPECS' \ --define '_rpmdir $(CURDIR)/packages' \ --define '_srcrpmdir $(CURDIR)/packages' \ --define "_revision $(REVISION)" \ --define "_version $(PKG_VERSION)" \ --define "_release $(RELEASE)" \ -ba $(PKGERDIR)/SPECS/$(APP).spec mv packages/*/$(APP)-$(PKG_VERSION)-$(RELEASE)*.rpm packages rm -rf packages/i?86 packages/x86_64 rpmbuild: @mkdir -p rpmbuild/BUILD @mkdir -p packages # In case it doesn't exist because there aren't any patches to apply $(PKGERDIR)/SOURCES: @mkdir -m 0755 -p $(PKGERDIR)/SOURCES $(PKGERDIR)/SOURCES/$(APP)-$(REVISION).tar.gz: $(APP)-$(REVISION).tar.gz \ $(PKGERDIR)/SOURCES cp $(APP)-$(REVISION).tar.gz $(PKGERDIR)/SOURCES $(PKGERDIR)/pkgclean: @echo erlang-bitcask-1.6.7+dfsg/package/rpm/SPECS/000077500000000000000000000000001233730135600204035ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/package/rpm/SPECS/bitcask.spec000066400000000000000000000027341233730135600227050ustar00rootroot00000000000000# BuildArch should be determined automatically. Use of setarch on x86-64 # platform will allow one to build ix86 only # # _revision, _release, and _version should be defined on the rpmbuild command # line like so: # # --define "_version 0.9.1.19.abcdef" --define "_release 7" \ # --define "_revision 0.9.1-19-abcdef" Name: bitcask Version: %{_version} Release: %{_release}%{?dist} License: GPLv2 Group: Development/Libraries Source: http://downloads.basho.com/%{name}/%{name}-%{_revision}/%{name}-%{_revision}.tar.gz URL: http://basho.com/ Vendor: Basho Technologies Packager: Basho Support BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root Summary: Because you need another a key/value storage engine %description Because you need another a key/value storage engine %define __prelink_undo_cmd /bin/cat prelink library %prep %setup -n %{name}-%{_revision} %build mkdir %{name} ERL_FLAGS="-smp enable" make %install mkdir -p %{buildroot}%{_libdir}%{name} #Copy all necessary lib files etc. cp -r $RPM_BUILD_DIR/%{name}-%{_revision}/ebin %{buildroot}%{_libdir}%{name} cp -r $RPM_BUILD_DIR/%{name}-%{_revision}/priv %{buildroot}%{_libdir}%{name} # I don't see how the source is useful at the moment #cp -r $RPM_BUILD_DIR/%{name}-%{_revision}/src %{buildroot}%{_libdir}%{name} %files %defattr(-,root,root) %dir %{_libdir}%{name} %{_libdir}%{name}/* %clean rm -rf %{buildroot} %changelog * Wed May 26 2010 Ryan Tilder 0.1-1 - Initial packaging erlang-bitcask-1.6.7+dfsg/package/solaris/000077500000000000000000000000001233730135600204045ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/package/solaris/Makefile000066400000000000000000000030571233730135600220510ustar00rootroot00000000000000# requires GNU make PKG = BASHO$(APP) # possible ARCH values are i386, sparc, all ARCH = $(shell uname -p) SOLARIS_VER ?= $(shell echo "$(KERNEL)" | sed -e 's/^5\.//') PKGFILE = $(PKG)-$(REVISION)-$(RELEASE)-$(DISTRO)$(SOLARIS_VER)-$(ARCH).pkg BITCASK_LIB ?= lib/$(APP)-$(REVISION) build: buildrel pkginfo prototype cp $(PKGERDIR)/copyright $(PKGERDIR)/depend . mkdir -p pkgbuild packages pkgmk -o -d pkgbuild -a $(ARCH) touch packages/$(PKGFILE) pkgtrans -s pkgbuild packages/$(PKGFILE) $(PKG) rm -r pkgbuild/$(PKG) gzip packages/$(PKGFILE) @echo @echo Wrote: $(CURDIR)/packages/$(PKGFILE).gz @echo # Build the release we need to package buildrel: @# Ye Olde Bourne Shell on Solaris means we have to do it old school PATH=/opt/erlang/R13B04-$(DISTRO)$(SOLARIS_VER):$${PATH}; \ export PATH; \ echo "Using `which erl` to build"; \ $(MAKE) -C $(BITCASK_PATH) pkginfo: sed -e 's/@@VERSION@@/$(REVISION)-$(RELEASE)/g' \ -e 's/@@PKG@@/$(PKG)/g' \ -e 's/@@PKGNAME@@/$(APP)/g' \ < $(PKGERDIR)/pkginfo.tmpl > pkginfo # NOTE! The instances of riak below shouldn't change prototype: echo "i pkginfo" > prototype echo "i copyright" >> prototype echo "i depend" >> prototype echo '' >> prototype echo "d none lib/$(APP)-$(REVISION) 0755 riak riak" >> prototype pkgproto $(BITCASK_PATH)/ebin=$(BITCASK_LIB)/ebin >> prototype pkgproto $(BITCASK_PATH)/priv=$(BITCASK_LIB)/priv >> prototype sed -i -e 's/basho other/riak riak/' \ -e 's/buildbot other/riak riak/' prototype $(PKGERDIR)/pkgclean: rm -rf copyright depend pkgbuild pkginfo prototype erlang-bitcask-1.6.7+dfsg/package/solaris/copyright000066400000000000000000000236771233730135600223560ustar00rootroot00000000000000 Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS erlang-bitcask-1.6.7+dfsg/package/solaris/depend000066400000000000000000000003261233730135600215670ustar00rootroot00000000000000# Same dependencies as Erlang P SUNWlibmsr Math & Microtasking Libraries (Root) P SUNWlibms Math & Microtasking Libraries (Usr) P SUNWopensslr OpenSSL (Root) P SUNWopenssl-libraries OpenSSL Libraries (Usr) erlang-bitcask-1.6.7+dfsg/package/solaris/pkginfo.tmpl000066400000000000000000000005461233730135600227440ustar00rootroot00000000000000# Set this for the default basedir for relocatable packages BASEDIR=/opt/riak CLASSES=none TZ=EST PATH=/sbin:/usr/sbin:/usr/bin:/usr/sadm/install/bin PKG=@@PKG@@ NAME=@@PKGNAME@@ VERSION=@@VERSION@@ CATEGORY=application DESC=Because you need another a key/value storage engine VENDOR=Basho Technologies EMAIL=riak@basho.com PKGSAV=/var/sadm/pkg/@@PKG@@/save erlang-bitcask-1.6.7+dfsg/rebar.config000066400000000000000000000075401233730135600176250ustar00rootroot00000000000000{port_specs, [{"priv/bitcask.so", ["c_src/*.c"]}]}. {deps, [ {meck, ".*", {git, "git://github.com/basho/meck", {tag, "0.8.1"}}} ]}. {port_env, [ %% Solaris specific flags {"solaris.*-64$", "CFLAGS", "-D_REENTRANT -m64"}, {"solaris.*-64$", "LDFLAGS", "-m64"}, %% OS X Leopard flags for 64-bit {"darwin9.*-64$", "CFLAGS", "-m64"}, {"darwin9.*-64$", "LDFLAGS", "-arch x86_64"}, %% OS X Snow Leopard flags for 32-bit {"darwin10.*-32$", "CFLAGS", "-m32"}, {"darwin10.*-32$", "LDFLAGS", "-arch i386"} %% Patching the nif(s) to run w. PULSE %% , {"CFLAGS", "$CFLAGS -DPULSE"} ]}. {eunit_compile_opts, [ %% Uncomment the following options to enable pulse testing. Note that %% this will (currently) break all tests that do NOT use Pulse. As such, %% this is most useful when used w/ rebar like so: %% ./rebar compile eunit apps=bitcask suite=bitcask_eqc %% %% Also uncomment the nif-patching in the port_envs option above! %% %% NOTE1: You'll have to do a "clean" to ensure everything gets compiled w/ %% the new flags! %% NOTE2: You'll need a recent (1.25.2+) version of PULSE to run the tests %% and a copy of the pulsified OTP componentes (pulse_gen, etc...) %% %% {d, 'PULSE'}, %% %% {pulse_no_side_effect,[{erlang,display,1}]}, %% {pulse_side_effect, %% [ {bitcask_nifs, keydir_new, 0} %% , {bitcask_nifs, keydir_new, 1} %% , {bitcask_nifs, keydir_mark_ready, 1} %% , {bitcask_nifs, keydir_put_int, 8} %% , {bitcask_nifs, keydir_get_int, 2} %% , {bitcask_nifs, keydir_remove, 2} %% , {bitcask_nifs, keydir_remove_int, 5} %% , {bitcask_nifs, keydir_copy, 1} %% , {bitcask_nifs, keydir_itr_int, 4} %% , {bitcask_nifs, keydir_itr_next_int, 1} %% , {bitcask_nifs, keydir_itr_release, 1} %% , {bitcask_nifs, keydir_info, 1} %% , {bitcask_nifs, keydir_release, 1} %% %% , {bitcask_nifs, lock_acquire, 2} %% , {bitcask_nifs, lock_release, 1} %% , {bitcask_nifs, lock_readdata, 1} %% , {bitcask_nifs, lock_writedata, 2} %% %% , {bitcask_nifs, file_open, 2} %% , {bitcask_nifs, file_close, 1} %% , {bitcask_nifs, file_sync, 1} %% , {bitcask_nifs, file_pread, 3} %% , {bitcask_nifs, file_pwrite, 3} %% , {bitcask_nifs, file_read, 2} %% , {bitcask_nifs, file_write, 2} %% , {bitcask_nifs, file_seekbof, 1} %% %% , {bitcask_time, tstamp, 0} %% %% , {file, '_', '_'} %% , {filelib, '_', '_'} %% , {os, '_', '_'} ]}, %% %% {pulse_replace_module, %% [ {gen_server, pulse_gen_server} %% , {application, pulse_application} %% , {supervisor, pulse_supervisor} ]} ]}. {eunit_opts, [verbose]}. erlang-bitcask-1.6.7+dfsg/src/000077500000000000000000000000001233730135600161245ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/src/bitcask.app.src000066400000000000000000000057201233730135600210400ustar00rootroot00000000000000{application, bitcask, [ {description, ""}, {vsn, git}, {modules, []}, {registered, []}, {applications, [ kernel, stdlib ]}, {mod, {bitcask_app, []}}, {env, [ %% Default max file size (in bytes) {max_file_size, 16#80000000}, % 2GB default %% Wait time to open a keydir (in seconds) {open_timeout, 4}, %% Strategies available for syncing data to disk: %% * none - let the O/S decide %% * o_sync - use the O_SYNC flag to sync each write %% * {seconds, N} - call bitcask:sync/1 every N seconds %% %% Note that for the {seconds, N} strategy, it is up to the %% API caller to execute the call on the interval. This config %% option is (currently) a convenient placeholder for calling %% applications. {sync_strategy, none}, %% Require the CRC to be present at the end of hintfiles. %% Bitcask defaults to a backward compatible mode where %% old hint files will still be accepted without them. %% It is safe to set this true for new deployments and will %% become the default setting in a future release. {require_hint_crc, false}, %% Merge window. Span of hours during which merge is acceptable. %% * {Start, End} - Hours during which merging is permitted %% * always - Merging is always permitted (default) %% * never - Merging is never permitted {merge_window, always}, %% Merge trigger variables. Files exceeding ANY of these %% values will cause bitcask:needs_merge/1 to return true. %% {frag_merge_trigger, 60}, % >= 60% fragmentation {dead_bytes_merge_trigger, 536870912}, % Dead bytes > 512 MB %% Merge thresholds. Files exceeding ANY of these values %% will be included in the list of files marked for merging %% by bitcask:needs_merge/1. %% {frag_threshold, 40}, % >= 40% fragmentation {dead_bytes_threshold, 134217728}, % Dead bytes > 128 MB {small_file_threshold, 10485760}, % File is < 10 MB %% Fold keys thresholds. max_fold_age will reuse the keydir if %% another fold was started less than max_fold_age ago and there %% were less than max_fold_puts updates. Otherwise it will %% wait until all current fold keys complete and then start. %% Set either option to -1 to disable. {max_fold_age, -1}, % age in micro seconds (unlimited) {max_fold_puts, 0}, % maximum number of updates %% Data expiration can be caused by setting this to a %% Data expiration can be caused by setting this to a %% positive value. If so, items older than the value %% will be discarded. {expiry_secs, -1} ]} ]}. erlang-bitcask-1.6.7+dfsg/src/bitcask.erl000066400000000000000000002436661233730135600202710ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask). -export([open/1, open/2, close/1, close_write_file/1, get/2, put/3, delete/2, sync/1, list_keys/1, fold_keys/3, fold_keys/5, fold/3, fold/5, iterator/3, iterator_next/1, iterator_release/1, merge/1, merge/2, merge/3, needs_merge/1, is_empty_estimate/1, status/1]). -export([get_opt/2, get_filestate/2]). -export([has_setuid_bit/1]). % For EUnit tests -include_lib("kernel/include/file.hrl"). -include("bitcask.hrl"). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -compile(export_all). -endif. -ifdef(TEST). -include_lib("eunit/include/eunit.hrl"). -include_lib("kernel/include/file.hrl"). -endif. %% In the real world, 1 or 2 retries is usually sufficient. In the %% world of QuickCheck, however, QC can create some diabolical %% races, so use a diabolical number. -define(DIABOLIC_BIG_INT, 100). %% @type bc_state(). -record(bc_state, {dirname, write_file, % File for writing write_lock, % Reference to write lock read_files, % Files opened for reading max_file_size, % Max. size of a written file opts, % Original options used to open the bitcask keydir}). % Key directory -record(mstate, { dirname, merge_lock, merge_start, max_file_size, input_files, out_file, merged_files, partial, live_keydir :: reference(), hint_keydir, del_keydir, expiry_time, expiry_grace_time, opts }). %% A bitcask is a directory containing: %% * One or more data files - {integer_timestamp}.bitcask.data %% * A write lock - bitcask.write.lock (Optional) %% * A merge lock - bitcask.merge.lock (Optional) %% @doc Open a new or existing bitcask datastore for read-only access. -spec open(Dirname::string()) -> reference() | {error, timeout}. open(Dirname) -> open(Dirname, []). %% @doc Open a new or existing bitcask datastore with additional options. -spec open(Dirname::string(), Opts::[_]) -> reference() | {error, timeout}. open(Dirname, Opts) -> %% Make sure bitcask app is started so we can pull defaults from env ok = start_app(), %% Make sure the directory exists ok = filelib:ensure_dir(filename:join(Dirname, "bitcask")), %% If the read_write option is set, attempt to release any stale write lock. %% Do this first to avoid unnecessary processing of files for reading. WritingFile = case proplists:get_bool(read_write, Opts) of true -> %% If the lock file is not stale, we'll continue initializing %% and loading anyway: if later someone tries to write %% something, that someone will get a write_locked exception. _ = bitcask_lockops:delete_stale_lock(write, Dirname), fresh; false -> undefined end, %% Get the max file size parameter from opts MaxFileSize = get_opt(max_file_size, Opts), %% Get the number of seconds we are willing to wait for the keydir init to timeout WaitTime = timer:seconds(get_opt(open_timeout, Opts)), %% Loop and wait for the keydir to come available. case init_keydir(Dirname, WaitTime, WritingFile /= undefined) of {ok, KeyDir, ReadFiles} -> %% Ensure that expiry_secs is in Opts and not just application env ExpOpts = [{expiry_secs,get_opt(expiry_secs,Opts)}|Opts], Ref = make_ref(), erlang:put(Ref, #bc_state {dirname = Dirname, read_files = ReadFiles, write_file = WritingFile, % |undefined|fresh write_lock = undefined, max_file_size = MaxFileSize, opts = ExpOpts, keydir = KeyDir}), Ref; {error, Reason} -> {error, Reason} end. %% @doc Close a bitcask data store and flush any pending writes to disk. -spec close(reference()) -> ok. close(Ref) -> State = get_state(Ref), erlang:erase(Ref), %% Cleanup the write file and associated lock case State#bc_state.write_file of undefined -> ok; fresh -> ok; WriteFile -> bitcask_fileops:close_for_writing(WriteFile), ok = bitcask_lockops:release(State#bc_state.write_lock) end, %% Manually release the keydir. If, for some reason, this failed GC would %% still get the job done. bitcask_nifs:keydir_release(State#bc_state.keydir), %% Clean up all the reading files [ok = bitcask_fileops:close(F) || F <- State#bc_state.read_files], ok. %% @doc Close the currently active writing file; mostly for testing purposes close_write_file(Ref) -> #bc_state { write_file = WriteFile} = State = get_state(Ref), case WriteFile of undefined -> ok; fresh -> ok; _ -> LastWriteFile = bitcask_fileops:close_for_writing(WriteFile), ok = bitcask_lockops:release(State#bc_state.write_lock), S2 = State#bc_state { write_file = fresh, read_files = [LastWriteFile | State#bc_state.read_files]}, put_state(Ref, S2) end. %% @doc Retrieve a value by key from a bitcask datastore. -spec get(reference(), binary()) -> not_found | {ok, Value::binary()} | {error, Err::term()}. get(Ref, Key) -> get(Ref, Key, 2). -spec get(reference(), binary(), integer()) -> not_found | {ok, Value::binary()} | {error, Err::term()}. get(_Ref, _Key, 0) -> {error, nofile}; get(Ref, Key, TryNum) -> State = get_state(Ref), case bitcask_nifs:keydir_get(State#bc_state.keydir, Key) of not_found -> not_found; E when is_record(E, bitcask_entry) -> case E#bitcask_entry.tstamp < expiry_time(State#bc_state.opts) of true -> %% Expired entry; remove from keydir and free up memory ok = bitcask_nifs:keydir_remove(State#bc_state.keydir, Key), not_found; false -> %% HACK: Use a fully-qualified call to get_filestate/2 so that %% we can intercept calls w/ Pulse tests. case ?MODULE:get_filestate(E#bitcask_entry.file_id, State) of {error, enoent} -> %% merging deleted file between keydir_get and here get(Ref, Key, TryNum-1); {Filestate, S2} -> put_state(Ref, S2), case bitcask_fileops:read(Filestate, E#bitcask_entry.offset, E#bitcask_entry.total_sz) of {ok, _Key, ?TOMBSTONE} -> not_found; {ok, _Key, Value} -> {ok, Value}; {error, eof} -> not_found; {error, _} = Err -> Err end end end end. %% @doc Store a key and value in a bitcase datastore. -spec put(reference(), Key::binary(), Value::binary()) -> ok. put(Ref, Key, Value) -> #bc_state { write_file = WriteFile } = State = get_state(Ref), %% Make sure we have a file open to write case WriteFile of undefined -> throw({error, read_only}); _ -> ok end, {Ret, State1} = do_put(Key, Value, State, ?DIABOLIC_BIG_INT, undefined), put_state(Ref, State1), Ret. %% @doc Delete a key from a bitcask datastore. -spec delete(reference(), Key::binary()) -> ok. delete(Ref, Key) -> put(Ref, Key, ?TOMBSTONE), ok = bitcask_nifs:keydir_remove((get_state(Ref))#bc_state.keydir, Key). %% @doc Force any writes to sync to disk. -spec sync(reference()) -> ok. sync(Ref) -> State = get_state(Ref), case (State#bc_state.write_file) of undefined -> ok; fresh -> ok; File -> ok = bitcask_fileops:sync(File) end. %% @doc List all keys in a bitcask datastore. -spec list_keys(reference()) -> [Key::binary()] | {error, any()}. list_keys(Ref) -> fold_keys(Ref, fun(#bitcask_entry{key=K},Acc) -> [K|Acc] end, []). %% @doc Fold over all keys in a bitcask datastore. %% Must be able to understand the bitcask_entry record form. -spec fold_keys(reference(), Fun::fun(), Acc::term()) -> term() | {error, any()}. fold_keys(Ref, Fun, Acc0) -> State = get_state(Ref), MaxAge = get_opt(max_fold_age, State#bc_state.opts) * 1000, % convert from ms to us MaxPuts = get_opt(max_fold_puts, State#bc_state.opts), fold_keys(Ref, Fun, Acc0, MaxAge, MaxPuts). %% @doc Fold over all keys in a bitcask datastore with limits on how out of date %% the keydir is allowed to be. %% Must be able to understand the bitcask_entry record form. -spec fold_keys(reference(), Fun::fun(), Acc::term(), non_neg_integer() | undefined, non_neg_integer() | undefined) -> term() | {error, any()}. fold_keys(Ref, Fun, Acc0, MaxAge, MaxPut) -> %% Fun should be of the form F(#bitcask_entry, A) -> A ExpiryTime = expiry_time((get_state(Ref))#bc_state.opts), RealFun = fun(BCEntry, Acc) -> Key = BCEntry#bitcask_entry.key, case BCEntry#bitcask_entry.tstamp < ExpiryTime of true -> Acc; false -> TSize = size(?TOMBSTONE), case BCEntry#bitcask_entry.total_sz - (?HEADER_SIZE + size(Key)) of TSize -> % might be a deleted record, so check case ?MODULE:get(Ref, Key) of not_found -> Acc; _ -> Fun(BCEntry, Acc) end; _ -> Fun(BCEntry, Acc) end end end, bitcask_nifs:keydir_fold((get_state(Ref))#bc_state.keydir, RealFun, Acc0, MaxAge, MaxPut). %% @doc fold over all K/V pairs in a bitcask datastore. %% Fun is expected to take F(K,V,Acc0) -> Acc -spec fold(reference() | tuple(), fun((binary(), binary(), any()) -> any()), any()) -> any() | {error, any()}. fold(Ref, Fun, Acc0) when is_reference(Ref)-> State = get_state(Ref), fold(State, Fun, Acc0); fold(State, Fun, Acc0) -> MaxAge = get_opt(max_fold_age, State#bc_state.opts) * 1000, % convert from ms to us MaxPuts = get_opt(max_fold_puts, State#bc_state.opts), fold(State, Fun, Acc0, MaxAge, MaxPuts). %% @doc fold over all K/V pairs in a bitcask datastore specifying max age/updates of %% the frozen keystore. %% Fun is expected to take F(K,V,Acc0) -> Acc -spec fold(reference() | tuple(), fun((binary(), binary(), any()) -> any()), any(), non_neg_integer() | undefined, non_neg_integer() | undefined) -> any() | {error, any()}. fold(Ref, Fun, Acc0, MaxAge, MaxPut) when is_reference(Ref)-> State = get_state(Ref), fold(State, Fun, Acc0, MaxAge, MaxPut); fold(State, Fun, Acc0, MaxAge, MaxPut) -> FrozenFun = fun() -> case open_fold_files(State#bc_state.dirname, 3) of {ok, Files} -> ExpiryTime = expiry_time(State#bc_state.opts), SubFun = fun(K,V,TStamp,{_FN,FTS,Offset,_Sz},Acc) -> case (TStamp < ExpiryTime) of true -> Acc; false -> case bitcask_nifs:keydir_get( State#bc_state.keydir, K) of not_found -> Acc; E when is_record(E, bitcask_entry) -> case Offset =:= E#bitcask_entry.offset andalso TStamp =:= E#bitcask_entry.tstamp andalso FTS =:= E#bitcask_entry.file_id of false -> Acc; true -> case V =:= ?TOMBSTONE of true -> Acc; false -> Fun(K,V,Acc) end end end end end, subfold(SubFun,Files,Acc0); {error, Reason} -> {error, Reason} end end, KeyDir = State#bc_state.keydir, bitcask_nifs:keydir_frozen(KeyDir, FrozenFun, MaxAge, MaxPut). %% %% Get a list of readable files and attempt to open them for a fold. If we can't %% open any one of the files, get a fresh list of files and try again. %% open_fold_files(_Dirname, 0) -> {error, max_retries_exceeded_for_fold}; open_fold_files(Dirname, Count) -> Filenames = list_data_files(Dirname, undefined, undefined), case open_files(Filenames, []) of {ok, Files} -> {ok, Files}; error -> open_fold_files(Dirname, Count-1) end. %% %% Open a list of filenames; if any one of them fails to open, error out. %% open_files([], Acc) -> {ok, lists:reverse(Acc)}; open_files([Filename | Rest], Acc) -> case bitcask_fileops:open_file(Filename) of {ok, Fd} -> open_files(Rest, [Fd | Acc]); {error, _} -> [bitcask_fileops:close(Fd) || Fd <- Acc], error end. %% %% Apply fold function to a single bitcask file; results are accumulated in %% Acc %% subfold(_SubFun,[],Acc) -> Acc; subfold(SubFun,[FD | Rest],Acc0) -> Acc2 = try bitcask_fileops:fold(FD, SubFun, Acc0) of Acc1 -> Acc1 catch throw:{fold_error, Error, _PartialAcc} -> error_logger:error_msg("subfold: skipping file ~s: ~p\n", [FD#filestate.filename, Error]), Acc0 after bitcask_fileops:close(FD) end, subfold(SubFun, Rest, Acc2). %% @doc Start entry iterator -spec iterator(reference(), integer(), integer()) -> ok | out_of_date | {error, iteration_in_process}. iterator(Ref, MaxAge, MaxPuts) -> KeyDir = (get_state(Ref))#bc_state.keydir, bitcask_nifs:keydir_itr(KeyDir, MaxAge, MaxPuts). %% @doc Get next entry from the iterator -spec iterator_next(reference()) -> #bitcask_entry{} | {error, iteration_not_started} | allocation_error | not_found. iterator_next(Ref) -> KeyDir = (get_state(Ref))#bc_state.keydir, bitcask_nifs:keydir_itr_next(KeyDir). %% @doc Release iterator -spec iterator_release(reference()) -> ok. iterator_release(Ref) -> KeyDir = (get_state(Ref))#bc_state.keydir, bitcask_nifs:keydir_itr_release(KeyDir). %% @doc Merge several data files within a bitcask datastore %% into a more compact form. -spec merge(Dirname::string()) -> ok. merge(Dirname) -> merge(Dirname, [], {readable_files(Dirname), []}). %% @doc Merge several data files within a bitcask datastore %% into a more compact form. -spec merge(Dirname::string(), Opts::[_]) -> ok. merge(Dirname, Opts) -> merge(Dirname, Opts, {readable_files(Dirname), []}). %% @doc Merge several data files within a bitcask datastore %% into a more compact form. -spec merge(Dirname::string(), Opts::[_], {FilesToMerge::[string()],FilesToDelete::[string()]}) -> ok. merge(_Dirname, _Opts, []) -> ok; merge(Dirname,Opts,FilesToMerge) when is_list(FilesToMerge) -> merge(Dirname,Opts,{FilesToMerge,[]}); merge(_Dirname, _Opts, {[],_}) -> ok; merge(Dirname, Opts, {FilesToMerge0, ExpiredFiles0}) -> %% Make sure bitcask app is started so we can pull defaults from env ok = start_app(), %% Filter the files to merge and ensure that they all exist. It's %% possible in some circumstances that we'll get an out-of-date %% list of files. FilesToMerge = [F || F <- FilesToMerge0, bitcask_fileops:is_file(F)], ExpiredFiles = [F || F <- ExpiredFiles0, bitcask_fileops:is_file(F)], merge1(Dirname, Opts, FilesToMerge, ExpiredFiles). %% Inner merge function, assumes that bitcask is running and all files exist. merge1(_Dirname, _Opts, [], []) -> ok; merge1(Dirname, Opts, FilesToMerge, ExpiredFiles) -> %% Test to see if this is a complete or partial merge Partial = not(lists:usort(readable_files(Dirname)) == lists:usort(FilesToMerge)), %% Try to lock for merging case bitcask_lockops:acquire(merge, Dirname) of {ok, Lock} -> ok; {error, Reason} -> Lock = undefined, throw({error, {merge_locked, Reason, Dirname}}) end, %% Get the live keydir case bitcask_nifs:keydir_new(Dirname) of {ready, LiveKeyDir} -> %% Simplest case; a key dir is already available and %% loaded. Go ahead and open just the files we wish to %% merge InFiles0 = [begin %% Handle open errors gracefully. QuickCheck %% plus PULSE showed that there are races where %% the open below can fail. case bitcask_fileops:open_file(F) of {ok, Fstate} -> Fstate; {error, _} -> skip end end || F <- FilesToMerge], InFiles1 = [F || F <- InFiles0, F /= skip]; {not_ready, LiveKeyDir} -> %% Live keydir is newly created. We need to go ahead and %% load all available data into the keydir in case another %% reader/writer comes along in the same VM. Note that we %% won't necessarily merge all these files. AllFiles = scan_key_files(readable_files(Dirname), LiveKeyDir, [], false, true, false), %% Partition all files to files we'll merge and files we %% won't (so that we can close those extra files once %% they've been loaded into the keydir) P = fun(F) -> lists:member(bitcask_fileops:filename(F), FilesToMerge) end, {InFiles1, UnusedFiles} = lists:partition(P, AllFiles), %% Close the unused files [bitcask_fileops:close(U) || U <- UnusedFiles], bitcask_nifs:keydir_mark_ready(LiveKeyDir); {error, not_ready} -> %% Someone else is loading the keydir. We'll bail here and %% try again later. ok = bitcask_lockops:release(Lock), % Make erlc happy w/ non-local exit LiveKeyDir = undefined, InFiles1 = [], throw({error, not_ready}) end, MergeStart = bitcask_time:tstamp(), LiveRef = make_ref(), put_state(LiveRef, #bc_state{dirname = Dirname, keydir = LiveKeyDir}), {_KeyCount, Summary} = summary_info(LiveRef), erlang:erase(LiveRef), TooNew = [F#file_status.filename || F <- Summary, F#file_status.newest_tstamp >= MergeStart], {InFiles,InExpiredFiles} = lists:foldl(fun(F, {InFilesAcc,InExpiredAcc} = Acc) -> case lists:member(F#filestate.filename, TooNew) of false -> case lists:member(F#filestate.filename, ExpiredFiles) of false -> {[F|InFilesAcc],InExpiredAcc}; true -> {InFilesAcc,[F|InExpiredAcc]} end; true -> bitcask_fileops:close(F), Acc end end, {[],[]}, InFiles1), %% Initialize the other keydirs we need. {ok, DelKeyDir} = bitcask_nifs:keydir_new(), %% Initialize our state for the merge State = #mstate { dirname = Dirname, merge_lock = Lock, max_file_size = get_opt(max_file_size, Opts), input_files = InFiles, out_file = fresh, % will be created when needed merged_files = [], partial = Partial, live_keydir = LiveKeyDir, del_keydir = DelKeyDir, expiry_time = expiry_time(Opts), expiry_grace_time = expiry_grace_time(Opts), opts = Opts }, %% Finally, start the merge process ExpiredFilesFinished = expiry_merge(InExpiredFiles, LiveKeyDir, []), State1 = merge_files(State), %% Make sure to close the final output file case State1#mstate.out_file of fresh -> ok; Outfile -> ok = bitcask_fileops:sync(Outfile), ok = bitcask_fileops:close(Outfile) end, %% Close the original input files, schedule them for deletion, %% close keydirs, and release our lock [bitcask_fileops:close(F) || F <- State#mstate.input_files ++ ExpiredFilesFinished], {_, _, _, {IterGeneration, _, _}} = bitcask_nifs:keydir_info(LiveKeyDir), FileNames = [F#filestate.filename || F <- State#mstate.input_files ++ ExpiredFilesFinished], [catch set_setuid_bit(F) || F <- FileNames], bitcask_merge_delete:defer_delete(Dirname, IterGeneration, FileNames), %% Explicitly release our keydirs instead of waiting for GC bitcask_nifs:keydir_release(LiveKeyDir), bitcask_nifs:keydir_release(DelKeyDir), ok = bitcask_lockops:release(Lock). %% @doc Predicate which determines whether or not a file should be considered for a merge. consider_for_merge(FragTrigger, DeadBytesTrigger, ExpirationGraceTime) -> fun (F) -> (F#file_status.fragmented >= FragTrigger) orelse (F#file_status.dead_bytes >= DeadBytesTrigger) orelse ((F#file_status.oldest_tstamp > 0) andalso %% means that the file has data (F#file_status.newest_tstamp < ExpirationGraceTime) ) end. -spec needs_merge(reference()) -> {true, {[string()], [string()]}} | false. needs_merge(Ref) -> State = get_state(Ref), {_KeyCount, Summary} = summary_info(Ref), %% Review all the files we currently have open in read_files and %% see if any no longer exist by name (i.e. have been deleted by %% previous merges). Close these files so that we don't leak %% file descriptors. P = fun(F) -> bitcask_fileops:is_file(bitcask_fileops:filename(F)) end, {LiveFiles, DeadFiles} = lists:partition(P, State#bc_state.read_files), %% Close the dead files and accumulate a list for trimming their %% fstats entries. DeadIds0 = [begin bitcask_fileops:close(F), bitcask_fileops:file_tstamp(F) end || F <- DeadFiles], DeadIds = lists:usort(DeadIds0), case bitcask_nifs:keydir_trim_fstats(State#bc_state.keydir, DeadIds) of {ok, 0} -> ok; {ok, Warn} -> error_logger:info_msg("Trimmed ~p non-existent fstat entries", [Warn]); Err -> error_logger:error_msg("Error trimming fstats entries: ~p", [Err]) end, %% Update state with live files put_state(Ref, State#bc_state { read_files = LiveFiles }), %% Triggers that would require a merge: %% %% frag_merge_trigger - Any file exceeds this % fragmentation %% dead_bytes_merge_trigger - Any file has more than this # of dead bytes %% expiry_time - Any file has an expired key %% expiry_grace_time - avoid expiring in the case of continuous writes %% FragTrigger = get_opt(frag_merge_trigger, State#bc_state.opts), DeadBytesTrigger = get_opt(dead_bytes_merge_trigger, State#bc_state.opts), ExpirationTime = max(expiry_time(State#bc_state.opts), 0), ExpirationGraceTime = max(expiry_time(State#bc_state.opts) - expiry_grace_time(State#bc_state.opts), 0), NeedsMerge = lists:any(consider_for_merge(FragTrigger, DeadBytesTrigger, ExpirationGraceTime), Summary), case NeedsMerge of true -> %% Build a list of threshold checks; a file which meets ANY %% of these will be merged %% %% frag_threshold - At least this % fragmented %% dead_bytes_threshold - At least this # of dead bytes %% small_file_threshold - Any file < this # of bytes %% expiry_secs - Any file has a expired key %% Thresholds = [frag_threshold(State#bc_state.opts), dead_bytes_threshold(State#bc_state.opts), small_file_threshold(State#bc_state.opts), expired_threshold(ExpirationTime)], %% For each file, apply the threshold checks and return a list %% of failed threshold checks CheckFile = fun(F) -> {F#file_status.filename, lists:flatten([T(F) || T <- Thresholds])} end, MergableFiles = [{N, R} || {N, R} <- [CheckFile(F) || F <- Summary], R /= []], %% Log the reasons for needing a merge, if so configured %% TODO: At some point we may want to change this API to let the caller %% recv this information and decide if they want it case get_opt(log_needs_merge, State#bc_state.opts) of true -> error_logger:info_msg("~p needs_merge: ~p\n", [State#bc_state.dirname, MergableFiles]); _ -> ok end, FileNames = [Filename || {Filename, _Reasons} <- MergableFiles], F = fun(X) -> case X of {data_expired,_,_} -> true; _ -> false end end, ExpiredFiles = [Filename || {Filename, Reasons} <- MergableFiles, lists:any(F,Reasons)], {true, {FileNames, ExpiredFiles}}; false -> false end. frag_threshold(Opts) -> FragThreshold = get_opt(frag_threshold, Opts), fun(F) -> if F#file_status.fragmented >= FragThreshold -> [{fragmented, F#file_status.fragmented}]; true -> [] end end. dead_bytes_threshold(Opts) -> DeadBytesThreshold = get_opt(dead_bytes_threshold, Opts), fun(F) -> if F#file_status.dead_bytes >= DeadBytesThreshold -> [{dead_bytes, F#file_status.dead_bytes}]; true -> [] end end. small_file_threshold(Opts) -> %% We need to do a special check on small_file_threshold for non-integer %% values since it is using a less-than check. Other thresholds typically %% do a greater-than check and can take advantage of fact that integers %% are always greater than an atom. case get_opt(small_file_threshold, Opts) of Threshold when is_integer(Threshold) -> fun(F) -> if F#file_status.total_bytes < Threshold -> [{small_file, F#file_status.total_bytes}]; true -> [] end end; disabled -> fun(_F) -> [] end end. expired_threshold(Cutoff) -> fun(F) -> if F#file_status.newest_tstamp < Cutoff -> [{data_expired, F#file_status.newest_tstamp, Cutoff}]; true -> [] end end. -spec is_empty_estimate(reference()) -> boolean(). is_empty_estimate(Ref) -> State = get_state(Ref), {KeyCount, _, _, _} = bitcask_nifs:keydir_info(State#bc_state.keydir), KeyCount == 0. -spec status(reference()) -> {integer(), [{string(), integer(), integer(), integer()}]}. status(Ref) -> %% Rewrite the new, record-style status from status_info into a backwards-compatible %% call. %% TODO: Next major revision should remove this variation on status {KeyCount, Summary} = summary_info(Ref), {KeyCount, [{F#file_status.filename, F#file_status.fragmented, F#file_status.dead_bytes, F#file_status.total_bytes} || F <- Summary]}. -spec summary_info(reference()) -> {integer(), [#file_status{}]}. summary_info(Ref) -> State = get_state(Ref), %% Pull current info for the bitcask. In particular, we want %% the file stats so we can determine how much fragmentation %% is present %% %% Fstat has form: [{FileId, LiveCount, TotalCount, LiveBytes, TotalBytes, OldestTstamp, NewestTstamp}] %% and is only an estimate/snapshot. {KeyCount, _KeyBytes, Fstats, _IterStatus} = bitcask_nifs:keydir_info(State#bc_state.keydir), %% We want to ignore the file currently being written when %% considering status! case bitcask_lockops:read_activefile(write, State#bc_state.dirname) of undefined -> WritingFileId = undefined; Filename -> WritingFileId = bitcask_fileops:file_tstamp(Filename) end, %% Convert fstats list into a list of #file_status %% %% Note that we also, filter the WritingFileId from any further %% consideration. Summary0 = [summarize(State#bc_state.dirname, S) || S <- Fstats, element(1, S) /= WritingFileId], %% Remove any files that don't exist from the initial summary Summary = lists:keysort(1, [S || S <- Summary0, bitcask_fileops:is_file(element(2, S))]), {KeyCount, Summary}. %% =================================================================== %% Internal functions %% =================================================================== summarize(Dirname, {FileId, LiveCount, TotalCount, LiveBytes, TotalBytes, OldestTstamp, NewestTstamp}) -> #file_status { filename = bitcask_fileops:mk_filename(Dirname, FileId), fragmented = trunc((1 - LiveCount/TotalCount) * 100), dead_bytes = TotalBytes - LiveBytes, total_bytes = TotalBytes, oldest_tstamp = OldestTstamp, newest_tstamp = NewestTstamp}. expiry_time(Opts) -> ExpirySecs = get_opt(expiry_secs, Opts), case ExpirySecs > 0 of true -> bitcask_time:tstamp() - ExpirySecs; false -> 0 end. to_lower_grace_time_bound(undefined) -> 0; to_lower_grace_time_bound(X) -> case X > 0 of true -> X; false -> 0 end. expiry_grace_time(Opts) -> to_lower_grace_time_bound(get_opt(expiry_grace_time, Opts)). start_app() -> case application:start(?MODULE) of ok -> ok; {error, {already_started, ?MODULE}} -> ok; {error, Reason} -> {error, Reason} end. get_state(Ref) -> case erlang:get(Ref) of S when is_record(S, bc_state) -> S; undefined -> throw({error, {invalid_ref, Ref}}) end. get_opt(Key, Opts) -> case proplists:get_value(Key, Opts) of undefined -> case application:get_env(?MODULE, Key) of {ok, Value} -> Value; undefined -> undefined end; Value -> Value end. put_state(Ref, State) -> erlang:put(Ref, State). reverse_sort(L) -> lists:reverse(lists:sort(L)). scan_key_files([], _KeyDir, Acc, _CloseFile, _EnoentOK, _DelZeroFilesP) -> Acc; scan_key_files([Filename | Rest], KeyDir, Acc, CloseFile, EnoentOK, DelZeroFilesP) -> %% Restrictive pattern matching below is intentional case bitcask_fileops:open_file(Filename) of {ok, File} -> FileTstamp = bitcask_fileops:file_tstamp(File), F = fun(K, Tstamp, {Offset, TotalSz}, FunAcc) -> bitcask_nifs:keydir_put(KeyDir, K, FileTstamp, TotalSz, Offset, Tstamp, false), FunAcc + 1 end, case bitcask_fileops:fold_keys(File, F, 0, recovery) of 0 when DelZeroFilesP -> bitcask_fileops:delete(File), error_logger:info_msg("Removing empty cask file ~p", [Filename]); _R -> ok end, if CloseFile == true -> bitcask_fileops:close(File); true -> ok end, scan_key_files(Rest, KeyDir, [File | Acc], CloseFile, EnoentOK, DelZeroFilesP); {error, enoent} when EnoentOK -> scan_key_files(Rest, KeyDir, Acc, CloseFile, EnoentOK, DelZeroFilesP) end. %% %% Initialize a keydir for a given directory. %% init_keydir(Dirname, WaitTime, ReadWriteModeP) -> %% Get the named keydir for this directory. If we get it and it's already %% marked as ready, that indicates another caller has already loaded %% all the data from disk and we can short-circuit scanning all the files. case bitcask_nifs:keydir_new(Dirname) of {ready, KeyDir} -> %% A keydir already exists, nothing more to do here. We'll lazy %% open files as needed. {ok, KeyDir, []}; {not_ready, KeyDir} -> %% We've just created a new named keydir, so we need to load up all %% the data from disk. Build a list of all the bitcask data files %% and sort it in descending order (newest->oldest). %% %% We need the SortedFiles list to be stable: we might be %% in a situation: %% 1. Someone else starts a merge on this cask. %% 2. Our caller opens the cask and gets to here. %% 3. The merge races with readable_files(): creating %% new data files and deleting old ones. %% 4. SortedFiles doesn't contain the list of all of the %% files that we need. Lock = poll_for_merge_lock(Dirname), try poll_deferred_delete_queue_empty(), if ReadWriteModeP -> %% This purge will acquire the write lock %% prior to doing anything. purge_setuid_files(Dirname); true -> ok end, init_keydir_scan_key_files(Dirname, KeyDir) after ok = bitcask_lockops:release(Lock) end, %% Now that we loaded all the data, mark the keydir as ready %% so other callers can use it ok = bitcask_nifs:keydir_mark_ready(KeyDir), {ok, KeyDir, []}; {error, not_ready} -> timer:sleep(100), case WaitTime of Value when is_integer(Value), Value =< 0 -> %% avoids 'infinity'! {error, timeout}; _ -> init_keydir(Dirname, WaitTime - 100, ReadWriteModeP) end end. init_keydir_scan_key_files(Dirname, KeyDir) -> init_keydir_scan_key_files(Dirname, KeyDir, ?DIABOLIC_BIG_INT). init_keydir_scan_key_files(_Dirname, _Keydir, 0) -> %% If someone launches enough parallel merge operations to %% interfere with our attempts to scan this keydir for this many %% times, then we are just plain unlucky. Or QuickCheck smites us %% from lofty Mt. Stochastic. {error, {init_keydir_scan_key_files, too_many_iterations}}; init_keydir_scan_key_files(Dirname, KeyDir, Count) -> try SortedFiles = readable_files(Dirname), _ = scan_key_files(SortedFiles, KeyDir, [], true, false, true) catch _:_ -> init_keydir_scan_key_files(Dirname, KeyDir, Count - 1) end. get_filestate(FileId, State=#bc_state{ dirname = Dirname, read_files = ReadFiles }) -> case lists:keysearch(FileId, #filestate.tstamp, ReadFiles) of {value, Filestate} -> {Filestate, State}; false -> Fname = bitcask_fileops:mk_filename(Dirname, FileId), case bitcask_fileops:open_file(Fname) of {error,enoent} -> %% merge removed the file since the keydir_get {error, enoent}; {ok, Filestate} -> {Filestate, State#bc_state{read_files = [Filestate | State#bc_state.read_files]}} end end. list_data_files(Dirname, WritingFile, MergingFile) -> %% Get list of {tstamp, filename} for all files in the directory then %% reverse sort that list and extract the fully-qualified filename. Files1 = bitcask_fileops:data_file_tstamps(Dirname), Files2 = bitcask_fileops:data_file_tstamps(Dirname), if Files1 == Files2 -> %% No race, Files1 is a stable list. [F || {_Tstamp, F} <- reverse_sort(Files1), F /= WritingFile, F /= MergingFile]; true -> list_data_files(Dirname, WritingFile, MergingFile) end. merge_files(#mstate { input_files = [] } = State) -> State; merge_files(#mstate { dirname = Dirname, input_files = [File | Rest]} = State) -> FileId = bitcask_fileops:file_tstamp(File), F = fun(K, V, Tstamp, Pos, State0) -> if Tstamp < State0#mstate.merge_start -> merge_single_entry(K, V, Tstamp, FileId, Pos, State0); true -> State0 end end, State2 = try bitcask_fileops:fold(File, F, State) of State1 -> State1 catch throw:{fold_error, Error, _PartialAcc} -> error_logger:error_msg( "merge_files: skipping file ~s in ~s: ~p\n", [File#filestate.filename, Dirname, Error]), State end, merge_files(State2#mstate { input_files = Rest }). merge_single_entry(K, V, Tstamp, FileId, {_, _, Offset, _} = Pos, State) -> case out_of_date(K, Tstamp, FileId, Pos, State#mstate.expiry_time, false, [State#mstate.live_keydir, State#mstate.del_keydir]) of true -> %% NOTE: This remove is conditional on an exact match on %% Tstamp + FileId + Offset bitcask_nifs:keydir_remove(State#mstate.live_keydir, K, Tstamp, FileId, Offset), State; false -> case (V =:= ?TOMBSTONE) of true -> ok = bitcask_nifs:keydir_put(State#mstate.del_keydir, K, FileId, 0, Offset, Tstamp), %% Use the conditional remove on the live %% keydir. We only want to actually remove %% whatever is in the live keydir IIF the %% tstamp/fileid we have matches the current %% entry. bitcask_nifs:keydir_remove(State#mstate.live_keydir, K, Tstamp, FileId, Offset), case State#mstate.partial of true -> inner_merge_write(K, V, Tstamp, FileId, Offset, State); false -> State end; false -> ok = bitcask_nifs:keydir_remove(State#mstate.del_keydir, K), inner_merge_write(K, V, Tstamp, FileId, Offset, State) end end. -spec inner_merge_write(binary(), binary(), integer(), integer(), integer(), #mstate{}) -> #mstate{}. inner_merge_write(K, V, Tstamp, OldFileId, OldOffset, State) -> %% write a single item while inside the merge process %% See if it's time to rotate to the next file State1 = case bitcask_fileops:check_write(State#mstate.out_file, K, V, State#mstate.max_file_size) of wrap -> %% Close the current output file ok = bitcask_fileops:sync(State#mstate.out_file), ok = bitcask_fileops:close(State#mstate.out_file), %% Start our next file and update state {ok, NewFile} = bitcask_fileops:create_file( State#mstate.dirname, State#mstate.opts, State#mstate.live_keydir), NewFileName = bitcask_fileops:filename(NewFile), ok = bitcask_lockops:write_activefile( State#mstate.merge_lock, NewFileName), State#mstate { out_file = NewFile }; ok -> State; fresh -> %% create the output file and take the lock. {ok, NewFile} = bitcask_fileops:create_file( State#mstate.dirname, State#mstate.opts, State#mstate.live_keydir), NewFileName = bitcask_fileops:filename(NewFile), ok = bitcask_lockops:write_activefile( State#mstate.merge_lock, NewFileName), State#mstate { out_file = NewFile } end, {ok, Outfile, Offset, Size} = bitcask_fileops:write(State1#mstate.out_file, K, V, Tstamp), %% Update live keydir for the current out %% file. It's possible that this is a noop, as %% someone else may have written a newer value %% whilst we were processing. _ = bitcask_nifs:keydir_put( State#mstate.live_keydir, K, bitcask_fileops:file_tstamp(Outfile), Size, Offset, Tstamp, OldFileId, OldOffset), State1#mstate { out_file = Outfile }. out_of_date(_Key, _Tstamp, _FileId, _Pos, _ExpiryTime, EverFound, []) -> %% if we ever found it, and non of the entries were out of date, %% then it's not out of date EverFound == false; out_of_date(_Key, Tstamp, _FileId, _Pos, ExpiryTime, _EverFound, _KeyDirs) when Tstamp < ExpiryTime -> true; out_of_date(Key, Tstamp, FileId, {_,_,Offset,_} = Pos, ExpiryTime, EverFound, [KeyDir|Rest]) -> case bitcask_nifs:keydir_get(KeyDir, Key) of not_found -> out_of_date(Key, Tstamp, FileId, Pos, ExpiryTime, EverFound, Rest); E when is_record(E, bitcask_entry) -> if E#bitcask_entry.tstamp == Tstamp -> %% Exact match. In this situation, we use the file %% id and offset as a tie breaker. The assumption %% is that the merge starts with the newest files %% first, thus we want data from the highest %% file_id and the highest offset in that file. if E#bitcask_entry.file_id > FileId -> true; E#bitcask_entry.file_id == FileId -> case E#bitcask_entry.offset > Offset of true -> true; false -> out_of_date( Key, Tstamp, FileId, Pos, ExpiryTime, true, Rest) end; true -> %% At this point the following conditions are true: %% The file_id in the keydir is older (<) the file %% id we're currently merging... %% %% OR: %% %% The file_id in the keydir is the same (==) as the %% file we're merging BUT the offset the keydir has %% is older (<=) the offset we are currently %% processing. %% %% Thus, we are NOT out of date. Check the %% rest of the keydirs to ensure this %% holds true. out_of_date(Key, Tstamp, FileId, Pos, ExpiryTime, true, Rest) end; E#bitcask_entry.tstamp < Tstamp -> %% Not out of date -- check rest of the keydirs out_of_date(Key, Tstamp, FileId, Pos, ExpiryTime, true, Rest); true -> %% Out of date! true end end. -spec readable_files(string()) -> [string()]. readable_files(Dirname) -> %% Check the write and/or merge locks to see what files are currently %% being written to. Generate our list excepting those. WritingFile = bitcask_lockops:read_activefile(write, Dirname), MergingFile = bitcask_lockops:read_activefile(merge, Dirname), %% Filter out files with setuid bit set: they've been marked for %% deletion by an earlier *successful* merge. [F || F <- list_data_files(Dirname, WritingFile, MergingFile), not has_setuid_bit(F)]. %% Internal put - have validated that the file is opened for write %% and looked up the state at this point do_put(_Key, _Value, State, 0, LastErr) -> {{error, LastErr}, State}; do_put(Key, Value, #bc_state{write_file = WriteFile} = State, Retries, _LastErr) -> {GoForward, State2} = case bitcask_fileops:check_write(WriteFile, Key, Value, State#bc_state.max_file_size) of wrap -> %% Time to start a new write file. Note that we do not close the old %% one, just transition it. The thinking is that closing/reopening %% for read only access would flush the O/S cache for the file, %% which may be undesirable. {go_forward, wrap_write_file(State)}; fresh -> %% Time to start our first write file. case bitcask_lockops:acquire(write, State#bc_state.dirname) of {ok, WriteLock} -> case bitcask_fileops:create_file( State#bc_state.dirname, State#bc_state.opts, State#bc_state.keydir) of {ok, NewWriteFile} -> ok = bitcask_lockops:write_activefile( WriteLock, bitcask_fileops:filename(NewWriteFile)), {go_forward, State#bc_state{ write_file = NewWriteFile, write_lock = WriteLock }}; {error, Error} -> error_logger:error_msg("~s:create_file() failed with ~p, retrying put, write_file=~p\n", [?MODULE, Error, State#bc_state.write_file]), {Error, wrap_write_file(State#bc_state{write_lock=WriteLock})} end; {error, Reason} -> throw({error, {write_locked, Reason, State#bc_state.dirname}}) end; ok -> {go_forward, State} end, if GoForward =/= go_forward -> do_put(Key, Value, State2, Retries - 1, GoForward); true -> Tstamp = bitcask_time:tstamp(), {ok, WriteFile2, Offset, Size} = bitcask_fileops:write( State2#bc_state.write_file, Key, Value, Tstamp), case bitcask_nifs:keydir_put(State2#bc_state.keydir, Key, bitcask_fileops:file_tstamp(WriteFile2), Size, Offset, Tstamp, true) of ok -> {ok, State2#bc_state { write_file = WriteFile2 }}; already_exists -> %% Assuming the timestamps in the keydir are %% valid, there is an edge case where the merge thread %% could have rewritten this Key to a file with a greater %% file_id. Rather than synchronize the merge/writer processes, %% wrap to a new file with a greater file_id and rewrite %% the key there. Limit the number of recursions in case %% there is a different issue with the keydir. State3 = wrap_write_file(State2#bc_state { write_file = WriteFile2 }), do_put(Key, Value, State3, Retries - 1, already_exists) end end. wrap_write_file(#bc_state{write_file = WriteFile, read_files = ReadFiles} = State) -> NewReadFiles = case bitcask_fileops:close_for_writing(WriteFile) of ok -> ReadFiles; LastWriteFile -> [LastWriteFile|ReadFiles] end, {ok, NewWriteFile} = bitcask_fileops:create_file( State#bc_state.dirname, State#bc_state.opts, State#bc_state.keydir), ok = bitcask_lockops:write_activefile( State#bc_state.write_lock, bitcask_fileops:filename(NewWriteFile)), State#bc_state{ write_file = NewWriteFile, read_files = NewReadFiles}. set_setuid_bit(File) -> %% We're intentionally opinionated about pattern matching here. {ok, FI} = bitcask_fileops:read_file_info(File), NewFI = FI#file_info{mode = FI#file_info.mode bor 8#4000}, ok = bitcask_fileops:write_file_info(File, NewFI). has_setuid_bit(File) -> try {ok, FI} = bitcask_fileops:read_file_info(File), FI#file_info.mode band 8#4000 == 8#4000 catch _:_ -> false end. purge_setuid_files(Dirname) -> case bitcask_lockops:acquire(write, Dirname) of {ok, WriteLock} -> try StaleFs = [F || F <- list_data_files(Dirname, undefined, undefined), has_setuid_bit(F)], [bitcask_fileops:delete(#filestate{filename = F}) || F <- StaleFs], if StaleFs == [] -> ok; true -> error_logger:info_msg("Deleted ~p stale merge input " "files from ~p\n", [length(StaleFs), Dirname]) end catch X:Y -> error_logger:error_msg("While deleting stale merge input " "files from ~p: ~p ~p @ ~p\n", [X, Y, erlang:get_stacktrace()]) after bitcask_lockops:release(WriteLock) end; Else -> error_logger:info_msg("Lock failed trying deleting stale merge " "input files from ~p: ~p\n", [Dirname, Else]) end. poll_for_merge_lock(Dirname) -> case bitcask_lockops:acquire(merge, Dirname) of {ok, Lock} -> Lock; _ -> timer:sleep(100), poll_for_merge_lock(Dirname) end. poll_deferred_delete_queue_empty() -> case bitcask_merge_delete:queue_length() of 0 -> ok; _ -> receive after 1100 -> poll_deferred_delete_queue_empty() end end. %% Internal merge function for cache_merge functionality. expiry_merge([], _LiveKeyDir, Acc) -> Acc; expiry_merge([File | Files], LiveKeyDir, Acc0) -> FileId = bitcask_fileops:file_tstamp(File), Fun = fun(K, Tstamp, {Offset, _TotalSz}, Acc) -> bitcask_nifs:keydir_remove(LiveKeyDir, K, Tstamp, FileId, Offset), Acc end, case bitcask_fileops:fold_keys(File, Fun, ok, default) of {error, Reason} -> error_logger:error_msg("Error folding keys for ~p: ~p\n", [File#filestate.filename,Reason]), Acc = Acc0; _ -> error_logger:info_msg("All keys expired in: ~p scheduling file for deletion\n", [File#filestate.filename]), Acc = lists:append(Acc0, [File]) end, expiry_merge(Files, LiveKeyDir, Acc). %% =================================================================== %% EUnit tests %% =================================================================== -ifdef(TEST). init_dataset(Dirname, KVs) -> init_dataset(Dirname, [], KVs). init_dataset(Dirname, Opts, KVs) -> os:cmd(?FMT("rm -rf ~s", [Dirname])), B = bitcask:open(Dirname, [read_write] ++ Opts), lists:foldl(fun({K, V}, _) -> ok = bitcask:put(B, K, V) end, undefined, KVs), B. default_dataset() -> [{<<"k">>, <<"v">>}, {<<"k2">>, <<"v2">>}, {<<"k3">>, <<"v3">>}]. %% HACK: Terrible hack to ensure that the .app file for %% bitcask is available on the code path. Assumption here %% is that we're running in .eunit/ as part of rebar. a0_test() -> code:add_pathz("../ebin"), application:start(erlang), Mode = bitcask_io:determine_file_module(), error_logger:info_msg("Bitcask IO mode is: ~p\n", [Mode]). roundtrip_test() -> os:cmd("rm -rf /tmp/bc.test.roundtrip"), B = bitcask:open("/tmp/bc.test.roundtrip", [read_write]), ok = bitcask:put(B,<<"k">>,<<"v">>), {ok, <<"v">>} = bitcask:get(B,<<"k">>), ok = bitcask:put(B, <<"k2">>, <<"v2">>), ok = bitcask:put(B, <<"k">>,<<"v3">>), {ok, <<"v2">>} = bitcask:get(B, <<"k2">>), {ok, <<"v3">>} = bitcask:get(B, <<"k">>), close(B). write_lock_perms_test() -> os:cmd("rm -rf /tmp/bc.test.writelockperms"), B = bitcask:open("/tmp/bc.test.writelockperms", [read_write]), ok = bitcask:put(B, <<"k">>, <<"v">>), {ok, Info} = file:read_file_info("/tmp/bc.test.writelockperms/bitcask.write.lock"), ?assertEqual(8#00600, Info#file_info.mode band 8#00600). list_data_files_test() -> os:cmd("rm -rf /tmp/bc.test.list; mkdir -p /tmp/bc.test.list"), %% Generate a list of files from 12->8 (already in order we expect ExpFiles = [?FMT("/tmp/bc.test.list/~w.bitcask.data", [I]) || I <- lists:seq(12, 8, -1)], %% Create each of the files [] = os:cmd(?FMT("touch ~s", [string:join(ExpFiles, " ")])), %% Now use the list_data_files to scan the dir ExpFiles = list_data_files("/tmp/bc.test.list", undefined, undefined). fold_test() -> B = init_dataset("/tmp/bc.test.fold", default_dataset()), File = (get_state(B))#bc_state.write_file, L = bitcask_fileops:fold(File, fun(K, V, _Ts, _Pos, Acc) -> [{K, V} | Acc] end, []), ?assertEqual(default_dataset(), lists:reverse(L)), close(B). iterator_test() -> B = init_dataset("/tmp/bc.iterator.test.fold", default_dataset()), ok = iterator(B, 0, 0), Keys = [ begin #bitcask_entry{ key = Key } = iterator_next(B), Key end || _ <- default_dataset() ], ?assertEqual(lists:sort(Keys), lists:sort([ Key || {Key, _} <- default_dataset() ])), iterator_release(B). fold_corrupt_file_test() -> TestDir = "/tmp/bc.test.fold_corrupt_file_test", TestDataFile = TestDir ++ "/1.bitcask.data", os:cmd("rm -rf " ++ TestDir), B = bitcask:open(TestDir, [read_write]), ok = bitcask:put(B,<<"k">>,<<"v">>), close(B), DataList = [{<<"k">>, <<"v">>}], FoldFun = fun (K, V, Acc) -> [{K, V} | Acc] end, B2 = bitcask:open(TestDir), ?assertEqual(DataList, bitcask:fold(B2, FoldFun,[])), close(B2), % Incomplete header {ok, F} = file:open(TestDataFile, [append, raw, binary]), ok = file:write(F, <<100:32, 100:32, 100:16>>), file:close(F), B3 = bitcask:open(TestDir), ?assertEqual(DataList, bitcask:fold(B3, FoldFun,[])), close(B3), % Header without any data {ok, F2} = file:open(TestDataFile, [append, raw, binary]), ok = file:write(F2, <<100:32>>), file:close(F2), B4 = bitcask:open(TestDir), ?assertEqual(DataList, bitcask:fold(B4, FoldFun,[])), close(B4), ok. %% %% Check that fold visits the objects at the point the keydir %% was frozen. Check with and without wrapping the cask. %% fold_visits_frozen_test_() -> [?_test(fold_visits_frozen_test(false)), ?_test(fold_visits_frozen_test(true))]. fold_visits_frozen_test(RollOver) -> Cask = "/tmp/bc.test.frozenfold", B = init_dataset(Cask, default_dataset()), try Ref = (get_state(B))#bc_state.keydir, Me = self(), %% Freeze the keydir with default_dataset written FrozenFun = fun() -> Me ! frozen, receive done -> ok end end, FreezeWaiter = proc_lib:spawn_link( fun() -> B2 = bitcask:open(Cask, [read]), Ref2 = (get_state(B2))#bc_state.keydir, %% Start a function that waits in a frozen keydir for a message %% so the test fold can guarantee a frozen keydir ok = bitcask_nifs:keydir_frozen(Ref2, FrozenFun, -1, -1), bitcask:close(B2) end), receive frozen -> ok after 1000 -> ?assert(keydir_not_frozen) end, %% If checking file rollover, update the state so the next write will %% trigger a 'wrap' return. case RollOver of true -> State = get_state(B), put_state(B, State#bc_state{max_file_size = 0}); _ -> ok end, %% A delete, an update and an insert ok = delete(B, <<"k">>), ok = put(B, <<"k2">>, <<"v2-2">>), ok = put(B, <<"k4">>, <<"v4">>), CollectAll = fun(K, V, Acc) -> [{K, V} | Acc] end, L = fold(B, CollectAll, [], -1, -1), ?assertEqual(default_dataset(), lists:sort(L)), %% Unfreeze the keydir, waiting until complete FreezeWaiter ! done, bitcask_nifs:keydir_wait_pending(Ref), %% Check we see the updated fold L2 = fold(B, CollectAll, [], -1, -1), ?assertEqual([{<<"k2">>,<<"v2-2">>}, {<<"k3">>,<<"v3">>}, {<<"k4">>,<<"v4">>}], lists:sort(L2)) after bitcask:close(B) end. open_test() -> close(init_dataset("/tmp/bc.test.open", default_dataset())), B = bitcask:open("/tmp/bc.test.open"), lists:foldl(fun({K, V}, _) -> {ok, V} = bitcask:get(B, K) end, undefined, default_dataset()). wrap_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.wrap", [{max_file_size, 1}], default_dataset())), B = bitcask:open("/tmp/bc.test.wrap"), %% Check that all our data is available lists:foldl(fun({K, V}, _) -> {ok, V} = bitcask:get(B, K) end, undefined, default_dataset()), %% Finally, verify that there are 3 files currently opened for read %% (one for each key) 3 = length(readable_files("/tmp/bc.test.wrap")). merge_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.merge", [{max_file_size, 1}], default_dataset())), %% Verify number of files in directory 3 = length(readable_files("/tmp/bc.test.merge")), %% Merge everything timer:sleep(1100), ok = merge("/tmp/bc.test.merge"), %% Verify we've now only got one file 1 = length(readable_files("/tmp/bc.test.merge")), %% Make sure all the data is present B = bitcask:open("/tmp/bc.test.merge"), lists:foldl(fun({K, V}, _) -> {ok, V} = bitcask:get(B, K) end, undefined, default_dataset()). bitfold_test() -> os:cmd("rm -rf /tmp/bc.test.bitfold"), B = bitcask:open("/tmp/bc.test.bitfold", [read_write]), ok = bitcask:put(B,<<"k">>,<<"v">>), {ok, <<"v">>} = bitcask:get(B,<<"k">>), ok = bitcask:put(B, <<"k2">>, <<"v2">>), ok = bitcask:put(B, <<"k">>,<<"v3">>), {ok, <<"v2">>} = bitcask:get(B, <<"k2">>), {ok, <<"v3">>} = bitcask:get(B, <<"k">>), ok = bitcask:delete(B,<<"k">>), ok = bitcask:put(B, <<"k7">>,<<"v7">>), close(B), B2 = bitcask:open("/tmp/bc.test.bitfold"), true = ([{<<"k7">>,<<"v7">>},{<<"k2">>,<<"v2">>}] =:= bitcask:fold(B2,fun(K,V,Acc) -> [{K,V}|Acc] end,[])), close(B2), ok. fold1_test() -> os:cmd("rm -rf /tmp/bc.test.fold1"), B = bitcask:open("/tmp/bc.test.fold1", [read_write,{max_file_size, 1}]), ok = bitcask:put(B,<<"k">>,<<"v">>), ok = bitcask:put(B,<<"k">>,<<"v1">>), close(B), B2 = bitcask:open("/tmp/bc.test.fold1"), true = ([{<<"k">>,<<"v1">>}] =:= bitcask:fold(B2,fun(K,V,Acc) -> [{K,V}|Acc] end,[])), close(B2), ok. list_keys_test() -> os:cmd("rm -rf /tmp/bc.test.listkeys"), B = bitcask:open("/tmp/bc.test.listkeys", [read_write]), ok = bitcask:put(B,<<"k">>,<<"v">>), {ok, <<"v">>} = bitcask:get(B,<<"k">>), ok = bitcask:put(B, <<"k2">>, <<"v2">>), ok = bitcask:put(B, <<"k">>,<<"v3">>), {ok, <<"v2">>} = bitcask:get(B, <<"k2">>), {ok, <<"v3">>} = bitcask:get(B, <<"k">>), ok = bitcask:delete(B,<<"k">>), ok = bitcask:put(B, <<"k7">>,<<"v7">>), true = ([<<"k2">>,<<"k7">>] =:= lists:sort(bitcask:list_keys(B))), close(B), ok. expire_test() -> os:cmd("rm -rf /tmp/bc.test.expire"), B = bitcask:open("/tmp/bc.test.expire", [read_write,{expiry_secs,1}]), ok = bitcask:put(B,<<"k">>,<<"v">>), {ok, <<"v">>} = bitcask:get(B,<<"k">>), ok = bitcask:put(B, <<"k2">>, <<"v2">>), ok = bitcask:put(B, <<"k">>,<<"v3">>), {ok, <<"v2">>} = bitcask:get(B, <<"k2">>), {ok, <<"v3">>} = bitcask:get(B, <<"k">>), timer:sleep(2000), ok = bitcask:put(B, <<"k7">>,<<"v7">>), true = ([<<"k7">>] =:= bitcask:list_keys(B)), close(B), ok. expire_merge_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.mergeexpire", [{max_file_size, 1}], default_dataset())), %% Wait for it all to expire timer:sleep(2000), %% Merge everything timer:sleep(1100), ok = merge("/tmp/bc.test.mergeexpire",[{expiry_secs,1}]), %% With lazy merge file creation there will be no files. ok = bitcask_merge_delete:testonly__delete_trigger(), 0 = length(readable_files("/tmp/bc.test.mergeexpire")), %% Make sure all the data is present B = bitcask:open("/tmp/bc.test.mergeexpire"), %% It's gone! true = ([] =:= bitcask:list_keys(B)), close(B), ok. single_key_expire_test_() -> {timeout, 60, fun single_key_expire_body/0}. % At a customer site, having the same key written to a single file % was observed to not update the newest/latest tstamp stats and result % in the file considered expired before it was due. % The reason is the stats are not updated correctly when putting in the % same file. The develop branch has a test only for the stats, but this is % the original test that helped narrow down the problem. single_key_expire_body() -> Dir = "/tmp/bc.single.key.expire", K = <<"key">>, Data = [{K, <<0:128/integer-unit:8>>} || _ <- lists:seq(1,4)], B1 = init_dataset(Dir, [{max_file_size, 1024}, {expiry_secs, 4}], Data), timer:sleep(6000), ok = bitcask:put(B1, K, <<"val1">>), timer:sleep(1100), ?assertEqual([K], bitcask:list_keys(B1)), ok = bitcask:close(B1), B2 = bitcask:open(Dir, [read_write, {expiry_secs, 4}]), case needs_merge(B2) of {true, MFiles} -> merge(Dir, [{expiry_secs, 4}], MFiles); false -> ok end, ?assertEqual([K], bitcask:list_keys(B2)), bitcask:close(B2). fold_deleted_test() -> os:cmd("rm -rf /tmp/bc.test.fold_delete"), B = bitcask:open("/tmp/bc.test.fold_delete", [read_write,{max_file_size, 1}]), ok = bitcask:put(B,<<"k">>,<<"v">>), ok = bitcask:delete(B,<<"k">>), true = ([] =:= bitcask:fold(B, fun(K, V, Acc0) -> [{K,V}|Acc0] end, [])), close(B), ok. lazy_open_test() -> os:cmd("rm -rf /tmp/bc.test.opp_open"), %% Just opening/closing should not create any files. B1 = bitcask:open("/tmp/bc.test.opp_open", [read_write]), bitcask:close(B1), 0 = length(readable_files("/tmp/bc.test.opp_open")), B2 = bitcask:open("/tmp/bc.test.opp_open", [read_write]), ok = bitcask:put(B2,<<"k">>,<<"v">>), bitcask:close(B2), B3 = bitcask:open("/tmp/bc.test.opp_open", [read_write]), bitcask:close(B3), 1 = length(readable_files("/tmp/bc.test.opp_open")), ok. open_reset_open_test() -> os:cmd("rm -rf /tmp/bc.test.twice"), B1 = bitcask:open("/tmp/bc.test.twice", [read_write]), ok = bitcask:put(B1,<<"k">>,<<"v">>), bitcask:close(B1), os:cmd("rm -rf /tmp/bc.test.twice"), B2 = bitcask:open("/tmp/bc.test.twice", [read_write]), ok = bitcask:put(B2,<<"x">>,<<"q">>), not_found = bitcask:get(B2,<<"k">>), bitcask:close(B2). delete_merge_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.delmerge", [{max_file_size, 1}], default_dataset())), %% perform some deletes, tombstones should go in their own files B1 = bitcask:open("/tmp/bc.test.delmerge", [read_write,{max_file_size, 1}]), ok = bitcask:delete(B1,<<"k2">>), ok = bitcask:delete(B1,<<"k3">>), A1 = [<<"k">>], A1 = bitcask:list_keys(B1), close(B1), timer:sleep(1100), ok = merge("/tmp/bc.test.delmerge",[]), %% Verify we've now only got one item left B2 = bitcask:open("/tmp/bc.test.delmerge"), A = [<<"k">>], A = bitcask:list_keys(B2), close(B2), ok. delete_partial_merge_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.pardel", [{max_file_size, 1}], default_dataset())), %% perform some deletes, tombstones should go in their own files B1 = bitcask:open("/tmp/bc.test.pardel", [read_write,{max_file_size, 1}]), ok = bitcask:delete(B1,<<"k2">>), ok = bitcask:delete(B1,<<"k3">>), A1 = [<<"k">>], A1 = bitcask:list_keys(B1), close(B1), %% selective merge, hit all of the files with deletes but not %% all of the ones with deleted data timer:sleep(1100), ok = merge("/tmp/bc.test.pardel",[],{lists:reverse(lists:nthtail(2, lists:reverse(readable_files( "/tmp/bc.test.pardel")))),[]}), %% Verify we've now only got one item left B2 = bitcask:open("/tmp/bc.test.pardel"), A = [<<"k">>], A = bitcask:list_keys(B2), close(B2), ok. corrupt_file_test() -> os:cmd("rm -rf /tmp/bc.test.corrupt"), B1 = bitcask:open("/tmp/bc.test.corrupt", [read_write]), ok = bitcask:put(B1,<<"k">>,<<"v">>), {ok, <<"v">>} = bitcask:get(B1,<<"k">>), close(B1), %% write bogus data at end of hintfile, verify non-crash os:cmd("rm -rf /tmp/bc.test.corrupt.hint"), os:cmd("mkdir /tmp/bc.test.corrupt.hint"), os:cmd("cp -r /tmp/bc.test.corrupt/*hint /tmp/bc.test.corrupt.hint/100.bitcask.hint"), os:cmd("cp -r /tmp/bc.test.corrupt/*data /tmp/bc.test.corrupt.hint/100.bitcask.data"), HFN = "/tmp/bc.test.corrupt.hint/100.bitcask.hint", {ok, HFD} = file:open(HFN, [append, raw, binary]), ok = file:write(HFD, <<"1">>), file:close(HFD), B2 = bitcask:open("/tmp/bc.test.corrupt.hint"), {ok, <<"v">>} = bitcask:get(B2,<<"k">>), close(B2), %% write bogus data at end of datafile, no hintfile, verify non-crash os:cmd("rm -rf /tmp/bc.test.corrupt.data"), os:cmd("mkdir /tmp/bc.test.corrupt.data"), os:cmd("cp -r /tmp/bc.test.corrupt/*data /tmp/bc.test.corrupt.data/100.bitcask.data"), DFN = "/tmp/bc.test.corrupt.data/100.bitcask.data", {ok, DFD} = file:open(DFN, [append, raw, binary]), ok = file:write(DFD, <<"2">>), file:close(DFD), B3 = bitcask:open("/tmp/bc.test.corrupt.data"), {ok, <<"v">>} = bitcask:get(B3,<<"k">>), close(B3), %% as above, but more than just headersize data os:cmd("rm -rf /tmp/bc.test.corrupt.data2"), os:cmd("mkdir /tmp/bc.test.corrupt.data2"), os:cmd("cp -r /tmp/bc.test.corrupt/*data /tmp/bc.test.corrupt.data2/100.bitcask.data"), D2FN = "/tmp/bc.test.corrupt.data2/100.bitcask.data", {ok, D2FD} = file:open(D2FN, [append, raw, binary]), ok = file:write(D2FD, <<"123456789012345">>), file:close(D2FD), B4 = bitcask:open("/tmp/bc.test.corrupt.data2"), {ok, <<"v">>} = bitcask:get(B4,<<"k">>), close(B4), ok. invalid_data_size_test() -> TestDir = "/tmp/bc.test.invalid_data_size_test", TestDataFile = TestDir ++ "/1.bitcask.data", os:cmd("rm -rf " ++ TestDir), B = bitcask:open(TestDir, [read_write]), ok = bitcask:put(B,<<"k">>,<<"v">>), close(B), % Alter data size {ok, F} = file:open(TestDataFile, [read, write, raw, binary]), {ok, _} = file:position(F, {eof, -6}), ok = file:write(F, <<255:?VALSIZEFIELD>>), file:close(F), B2 = bitcask:open(TestDir), ?assertEqual({error, bad_crc}, bitcask:get(B2, <<"k">>)), close(B2), ok. testhelper_keydir_count(B) -> KD = (get_state(B))#bc_state.keydir, {KeyCount,_,_,_} = bitcask_nifs:keydir_info(KD), KeyCount. expire_keydir_test() -> %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. close(init_dataset("/tmp/bc.test.mergeexpirekeydir", [{max_file_size, 1}], default_dataset())), KDB = bitcask:open("/tmp/bc.test.mergeexpirekeydir"), %% three keys in the keydir now 3 = testhelper_keydir_count(KDB), %% Wait for it all to expire timer:sleep(2000), %% Merge everything timer:sleep(1100), ok = merge("/tmp/bc.test.mergeexpirekeydir",[{expiry_secs,1}]), %% should be no keys in the keydir now 0 = testhelper_keydir_count(KDB), bitcask:close(KDB), ok. delete_keydir_test() -> close(init_dataset("/tmp/bc.test.deletekeydir", [], default_dataset())), KDB = bitcask:open("/tmp/bc.test.deletekeydir", [read_write]), %% three keys in the keydir now 3 = testhelper_keydir_count(KDB), %% Delete something ok = bitcask:delete(KDB, <<"k">>), %% should be 2 keys in the keydir now 2 = testhelper_keydir_count(KDB), bitcask:close(KDB), ok. frag_status_test() -> os:cmd("rm -rf /tmp/bc.test.fragtest"), os:cmd("mkdir /tmp/bc.test.fragtest"), B1 = bitcask:open("/tmp/bc.test.fragtest", [read_write]), ok = bitcask:put(B1,<<"k">>,<<"v">>), ok = bitcask:put(B1,<<"k">>,<<"z">>), ok = bitcask:close(B1), % close and reopen so that status can reflect a closed file B2 = bitcask:open("/tmp/bc.test.fragtest", [read_write]), {1,[{_,50,16,32}]} = bitcask:status(B2), %% 1 key, 50% frag, 16 dead bytes, 32 total bytes ok. truncated_datafile_test() -> %% Mostly stolen from frag_status_test().... Dir = "/tmp/bc.test.truncdata", os:cmd("rm -rf " ++ Dir), os:cmd("mkdir " ++ Dir), B1 = bitcask:open(Dir, [read_write]), [ok = bitcask:put(B1, <<"k">>, <>) || X <- lists:seq(1, 100)], ok = bitcask:close(B1), [DataFile|_] = filelib:wildcard(Dir ++ "/*.data"), truncate_file(DataFile, 512), % close and reopen so that status can reflect a closed file B2 = bitcask:open(Dir, [read_write]), {1, [{_, _, _, 513}]} = bitcask:status(B2), ok. trailing_junk_big_datafile_test() -> Dir = "/tmp/bc.test.trailingdata", NumKeys = 400, os:cmd("rm -rf " ++ Dir), os:cmd("mkdir " ++ Dir), B1 = bitcask:open(Dir, [read_write, {max_file_size, 1024*1024*1024}]), [ok = bitcask:put(B1, <<"k", X:32>>, <>) || X <- lists:seq(1, NumKeys)], ok = bitcask:close(B1), [DataFile|_] = filelib:wildcard(Dir ++ "/*.data"), {ok, FH} = file:open(DataFile, [read, write]), {ok, _} = file:position(FH, 40*1024), ok = file:write(FH, <<0:(40*1024*8)>>), ok = file:close(FH), %% Merge everything ok = merge(Dir), B2 = bitcask:open(Dir, [read_write]), KeyList = bitcask:fold(B2, fun(K, _V, Acc0) -> [K|Acc0] end, []), true = length(KeyList) < NumKeys, ArbKey = 5, % get arbitrary key near start {ok, <>} = bitcask:get(B2, <<"k", ArbKey:32>>), ok = bitcask:close(B2), ok. truncated_merge_test() -> Dir = "/tmp/bc.test.truncmerge", os:cmd("rm -rf " ++ Dir), os:cmd("mkdir " ++ Dir), %% Initialize dataset with max_file_size set to 1 so that each file will %% only contain a single key. %% If anyone ever modifies default_dataset() to return fewer than 3 %% elements, this test will break. DataSet = default_dataset() ++ [{<<"k98">>, <<"v98">>}, {<<"k99">>, <<"v99">>}], close(init_dataset(Dir, [{max_file_size, 1}], DataSet)), %% Verify number of files in directory 5 = length(readable_files(Dir)), [Data1, Data2, _, _, Data5|_] = filelib:wildcard(Dir ++ "/*.data"), [_, _, Hint3, Hint4|_] = filelib:wildcard(Dir ++ "/*.hint"), %% Truncate 1st after data file's header, read by bitcask_fileops:fold/3). %% Truncate 2nd in the middle of header, which provokes another %% variation of bug mentioned by Bugzilla 1097. %% Truncate 3rd after hint file's header, read by %% bitcask_fileops:fold_hintfile/3). %% Truncate 4th in the middle of header, same situation as 2nd.... %% Truncate 5th data file at byte #1. ok = truncate_file(Data1, 15), ok = truncate_file(Data2, 5), ok = truncate_file(Hint3, 15), ok = truncate_file(Hint4, 5), ok = corrupt_file(Data5, 15, <<"!">>), %% Merge everything timer:sleep(1100), ok = merge(Dir), %% Verify we've now only got one file ok = bitcask_merge_delete:testonly__delete_trigger(), 1 = length(readable_files(Dir)), %% Make sure all corrupted data is missing, all good data is present B = bitcask:open(Dir), BadKeys = [<<"k">>, <<"k2">>, % Trunc of Data1 & Data2 <<"k99">>], % Trunc of Data5 {BadData, GoodData} = lists:partition(fun({K, _V}) -> lists:member(K, BadKeys) end, DataSet), lists:foldl(fun({K, _V} = KV, _) -> {KV, not_found} = {KV, bitcask:get(B, K)} end, undefined, BadData), lists:foldl(fun({K, V} = KV, _) -> {KV, {ok, V}} = {KV, bitcask:get(B, K)} end, undefined, GoodData). gh137_regression_test_() -> {timeout, 300, fun() -> %% Case 1-2: there are ok cask files/hints following N %% Case 3: mangle either a data file or hint file %% Case 4-5: a mangled data/hint file exists but not the %% corresponding type [{ok, N} = {gh137_regression_test(N, Blob, Type), N} || N <- [1,2,3,4,5], Blob <- [<<>>, <<"foobar">>, <> % 80 bytes ], Type <- ["data", "hint"]], ok end}. gh137_regression_test(N, Blob, Type) -> Dir = "/tmp/bc.test.gh137", os:cmd("rm -rf " ++ Dir), os:cmd("mkdir " ++ Dir), try close(init_dataset(Dir, [{max_file_size, 1}], default_dataset())), %% Verify number of files in directory 3 = length(readable_files(Dir)), %% GH 137: make a 0-byte data file file:write_file(Dir ++ "/" ++ integer_to_list(N) ++ ".bitcask." ++ Type, Blob), B = bitcask:open(Dir, [read_write]), KsVs = [{<<"k10">>, <<"v10a">>}, {<<"k11">>, <<"v11a">>}, {<<"k12">>, <<"v12a">>}, {<<"k13">>, <<"v13a">>}], [ok = bitcask:put(B, K, V) || {K, V} <- KsVs], [{ok, V} = bitcask:get(B, K) || {K, V} <- KsVs], bitcask:close(B), ok after os:cmd("rm -rf " ++ Dir) end. truncate_file(Path, Offset) -> {ok, FH} = file:open(Path, [read, write]), {ok, Offset} = file:position(FH, Offset), ok = file:truncate(FH), file:close(FH). corrupt_file(Path, Offset, Data) -> {ok, FH} = file:open(Path, [read, write]), {ok, Offset} = file:position(FH, Offset), ok = file:write(FH, Data), file:close(FH). %% About leak_t0(): %% %% If bitcask leaks file descriptors for the 'touch'ed files, output is: %% Res = 920 %% %% If bitcask isn't leaking the 'touch'ed files, output is: %% Res = 20 leak_t0() -> Dir = "/tmp/goofus", os:cmd("rm -rf " ++ Dir), _Ref0 = bitcask:open(Dir), os:cmd("cd " ++ Dir ++ "; sh -c 'for i in `seq 100 1000`; do touch $i.bitcask.data $i.bitcask.hint; done'"), _Ref1 = bitcask:open(Dir), Cmd = lists:flatten(io_lib:format("lsof -nP -p ~p | wc -l", [os:getpid()])), io:format("Res = ~s\n", [os:cmd(Cmd)]). leak_t1() -> Dir = "/tmp/goofus", NumKeys = 300, os:cmd("rm -rf " ++ Dir), Ref = bitcask:open(Dir, [read_write, {max_file_size, 10}]), Used = fun() -> Cmd = lists:flatten(io_lib:format("lsof -nP -p ~p | wc -l", [os:getpid()])), %% io:format("Cmd = ~s\n", [Cmd]), os:cmd(Cmd) end, [bitcask:put(Ref, <>, <<"it's a big, big world!">>) || X <- lists:seq(1, NumKeys)], io:format("After putting ~p keys, lsof says: ~s", [NumKeys, Used()]), DelKeys = NumKeys div 2, [bitcask:delete(Ref, <>) || X <- lists:seq(1, DelKeys)], io:format("After deleting ~p keys, lsof says: ~s", [DelKeys, Used()]), timer:sleep(1100), bitcask:merge(Dir), io:format("After merging, lsof says: ~s", [Used()]), io:format("Q: Are all keys fetchable? ..."), [{ok, _} = bitcask:get(Ref, <>) || X <- lists:seq(DelKeys + 1, NumKeys)], [not_found = bitcask:get(Ref, <>) || X <- lists:seq(1, DelKeys)], io:format("A: yes\n"), io:format("Now, lsof says: ~s", [Used()]), ok. -endif. erlang-bitcask-1.6.7+dfsg/src/bitcask_app.erl000066400000000000000000000022741233730135600211150ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_app). -behaviour(application). %% Application callbacks -export([start/2, stop/1]). %% =================================================================== %% Application callbacks %% =================================================================== start(_StartType, _StartArgs) -> bitcask_sup:start_link(). stop(_State) -> ok. erlang-bitcask-1.6.7+dfsg/src/bitcask_bump.erl000066400000000000000000000017401233730135600212750ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2012 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_bump). -export([big/0, small/0]). big() -> erlang:bump_reductions(1900). small() -> erlang:bump_reductions(500). erlang-bitcask-1.6.7+dfsg/src/bitcask_file.erl000066400000000000000000000135211233730135600212510ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2012 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_file). -compile(export_all). -behaviour(gen_server). %% API %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). -record(state, {fd :: file:fd(), owner :: pid()}). %%%=================================================================== %%% API %%%=================================================================== file_open(Filename, Opts) -> {ok, Pid} = gen_server:start(?MODULE, [], []), Owner = self(), case gen_server:call(Pid, {file_open, Owner, Filename, Opts}, infinity) of ok -> {ok, Pid}; Error -> Error end. file_close(Pid) -> file_request(Pid, file_close). file_sync(Pid) -> file_request(Pid, file_sync). file_pread(Pid, Offset, Size) -> file_request(Pid, {file_pread, Offset, Size}). file_pwrite(Pid, Offset, Bytes) -> file_request(Pid, {file_pwrite, Offset, Bytes}). file_read(Pid, Size) -> file_request(Pid, {file_read, Size}). file_write(Pid, Bytes) -> file_request(Pid, {file_write, Bytes}). file_position(Pid, Position) -> file_request(Pid, {file_position, Position}). file_seekbof(Pid) -> file_request(Pid, file_seekbof). %%%=================================================================== %%% API helper functions %%%=================================================================== file_request(Pid, Request) -> case check_pid(Pid) of ok -> gen_server:call(Pid, Request, infinity); Error -> Error end. check_pid(Pid) -> IsPid = is_pid(Pid), IsAlive = IsPid andalso is_process_alive(Pid), case {IsAlive, IsPid} of {true, _} -> ok; {false, true} -> %% Same result as `file' module when accessing closed FD {error, einval}; _ -> %% Same result as `file' module when providing wrong arg {error, badarg} end. %%%=================================================================== %%% gen_server callbacks %%%=================================================================== init([]) -> {ok, #state{}}. handle_call({file_open, Owner, Filename, Opts}, _From, State) -> monitor(process, Owner), IsCreate = proplists:get_bool(create, Opts), IsReadOnly = proplists:get_bool(readonly, Opts), Mode = case {IsReadOnly, IsCreate} of {true, _} -> [read, raw, binary]; {_, false} -> [read, write, raw, binary]; {_, true} -> [read, write, exclusive, raw, binary] end, [warn("Bitcask file option '~p' not supported~n", [Opt]) || Opt <- [o_sync], proplists:get_bool(Opt, Opts)], case file:open(Filename, Mode) of {ok, Fd} -> State2 = State#state{fd=Fd, owner=Owner}, {reply, ok, State2}; Error -> {reply, Error, State} end; handle_call(file_close, From, State=#state{fd=Fd}) -> check_owner(From, State), ok = file:close(Fd), {stop, normal, ok, State}; handle_call(file_sync, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:sync(Fd), {reply, Reply, State}; handle_call({file_pread, Offset, Size}, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:pread(Fd, Offset, Size), {reply, Reply, State}; handle_call({file_pwrite, Offset, Bytes}, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:pwrite(Fd, Offset, Bytes), {reply, Reply, State}; handle_call({file_read, Size}, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:read(Fd, Size), {reply, Reply, State}; handle_call({file_write, Bytes}, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:write(Fd, Bytes), {reply, Reply, State}; handle_call({file_position, Position}, From, State=#state{fd=Fd}) -> check_owner(From, State), Reply = file:position(Fd, Position), {reply, Reply, State}; handle_call(file_seekbof, From, State=#state{fd=Fd}) -> check_owner(From, State), {ok, _} = file:position(Fd, bof), {reply, ok, State}; handle_call(_Request, _From, State) -> Reply = ok, {reply, Reply, State}. handle_cast(_Msg, State) -> {noreply, State}. handle_info({'DOWN', _Ref, _, _Pid, _Status}, State=#state{fd=Fd}) -> %% Owner has stopped, close file and shutdown _ = file:close(Fd), {stop, normal, State}; handle_info(_Info, State) -> {noreply, State}. terminate(_Reason, _State) -> ok. code_change(_OldVsn, State, _Extra) -> {ok, State}. %%%=================================================================== %%% Internal functions %%%=================================================================== check_owner({Pid, _Mref}, #state{owner=Owner}) -> case Pid == Owner of true -> ok; false -> throw(owner_invariant_failed), ok end. warn(Fmt, Args) -> error_logger:warning_msg(Fmt, Args). erlang-bitcask-1.6.7+dfsg/src/bitcask_fileops.erl000066400000000000000000000712221233730135600217750ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2007-2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- %% @doc Basic file i/o operations for bitcask. -module(bitcask_fileops). -export([create_file/3, open_file/1, close/1, close_for_writing/1, data_file_tstamps/1, write/4, read/3, sync/1, delete/1, fold/3, fold_keys/3, fold_keys/4, mk_filename/2, filename/1, hintfile_name/1, file_tstamp/1, check_write/4]). -export([read_file_info/1, write_file_info/2, is_file/1]). -include_lib("kernel/include/file.hrl"). -include("bitcask.hrl"). -define(HINT_RECORD_SZ, 18). % Tstamp(4) + KeySz(2) + TotalSz(4) + Offset(8) -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -endif. -ifdef(TEST). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -include_lib("eqc/include/eqc_fsm.hrl"). -endif. -compile(export_all). -include_lib("eunit/include/eunit.hrl"). -endif. %% @doc Open a new file for writing. %% Called on a Dirname, will open a fresh file in that directory. -spec create_file(Dirname :: string(), Opts :: [any()], reference()) -> {ok, #filestate{}}. create_file(DirName, Opts0, Keydir) -> Opts = [create|Opts0], {ok, Lock} = get_create_lock(DirName), try {ok, Newest} = bitcask_nifs:increment_file_id(Keydir), Filename = mk_filename(DirName, Newest), ok = ensure_dir(Filename), %% Check for o_sync strategy and add to opts FinalOpts = case bitcask:get_opt(sync_strategy, Opts) of o_sync -> [o_sync | Opts]; _ -> Opts end, {ok, FD} = bitcask_io:file_open(Filename, FinalOpts), HintFD = open_hint_file(Filename, FinalOpts), {ok, #filestate{mode = read_write, filename = Filename, tstamp = file_tstamp(Filename), hintfd = HintFD, fd = FD, ofs = 0}} catch Error:Reason -> %% if we fail somehow, do we need to nuke any partial %% state? {error, {Error, Reason}} after bitcask_lockops:release(Lock) end. get_create_lock(DirName) -> get_create_lock(DirName, 100). get_create_lock(_DirName, 0) -> error(lock_failure); get_create_lock(DirName, N) -> timer:sleep(100-N), case bitcask_lockops:acquire(create, DirName) of {ok, Lock} -> {ok, Lock}; {error, locked} -> get_create_lock(DirName, N - 1) end. %% @doc Open an existing file for reading. %% Called with fully-qualified filename. -spec open_file(Filename :: string()) -> {ok, #filestate{}} | {error, any()}. open_file(Filename) -> case bitcask_io:file_open(Filename, [readonly]) of {ok, FD} -> {ok, #filestate{mode = read_only, filename = Filename, tstamp = file_tstamp(Filename), fd = FD, ofs = 0 }}; {error, Reason} -> {error, Reason} end. %% @doc Use when done writing a file. (never open for writing again) -spec close(#filestate{} | fresh | undefined) -> ok. close(fresh) -> ok; close(undefined) -> ok; close(State = #filestate{ fd = FD }) -> close_hintfile(State), bitcask_io:file_close(FD), ok. %% @doc Close a file for writing, but leave it open for reads. -spec close_for_writing(#filestate{} | fresh | undefined) -> #filestate{} | ok. close_for_writing(fresh) -> ok; close_for_writing(undefined) -> ok; close_for_writing(State = #filestate{ mode = read_write, fd = Fd }) -> S2 = close_hintfile(State), bitcask_io:file_sync(Fd), S2#filestate { mode = read_only }. close_hintfile(State = #filestate { hintfd = undefined }) -> State; close_hintfile(State = #filestate { hintfd = HintFd, hintcrc = HintCRC }) -> %% Write out CRC check at end of hint file. Write with an empty key, zero %% timestamp and offset as large as the file format supports so opening with %% an older version of bitcask will just reject the record at the end of the %% hintfile and otherwise work normally. Iolist = hintfile_entry(<<>>, 0, {?MAXOFFSET, HintCRC}), ok = bitcask_io:file_write(HintFd, Iolist), bitcask_io:file_sync(HintFd), bitcask_io:file_close(HintFd), State#filestate { hintfd = undefined, hintcrc = 0 }. %% Build a list of {tstamp, filename} for all files in the directory that %% match our regex. -spec data_file_tstamps(Dirname :: string()) -> [{integer(), string()}]. data_file_tstamps(Dirname) -> case list_dir(Dirname) of {ok, Files} -> lists:foldl( fun(Filename, Acc) -> case string:tokens(Filename, ".") of [TSString, _, "data"] -> [{list_to_integer(TSString), filename:join(Dirname, Filename)} | Acc]; _ -> Acc end end, [], Files); {error, Reason} -> {error, Reason} end. %% @doc Use only after merging, to permanently delete a data file. -spec delete(#filestate{}) -> ok | {error, atom()}. delete(#filestate{ filename = FN } = State) -> file:delete(FN), case has_hintfile(State) of true -> file:delete(hintfile_name(State)); false -> ok end. %% @doc Write a Key-named binary data field ("Value") to the Filestate. -spec write(#filestate{}, Key :: binary(), Value :: binary(), Tstamp :: integer()) -> {ok, #filestate{}, Offset :: integer(), Size :: integer()} | {error, read_only}. write(#filestate { mode = read_only }, _K, _V, _Tstamp) -> {error, read_only}; write(Filestate=#filestate{fd = FD, hintfd = HintFD, hintcrc = HintCRC0, ofs = Offset}, Key, Value, Tstamp) -> KeySz = size(Key), true = (KeySz =< ?MAXKEYSIZE), ValueSz = size(Value), true = (ValueSz =< ?MAXVALSIZE), %% Setup io_list for writing -- avoid merging binaries if we can help it Bytes0 = [<>, <>, <>, Key, Value], Bytes = [<<(erlang:crc32(Bytes0)):?CRCSIZEFIELD>> | Bytes0], %% Store the full entry in the data file ok = bitcask_io:file_pwrite(FD, Offset, Bytes), %% Create and store the corresponding hint entry TotalSz = KeySz + ValueSz + ?HEADER_SIZE, Iolist = hintfile_entry(Key, Tstamp, {Offset, TotalSz}), ok = bitcask_io:file_write(HintFD, Iolist), %% Record our final offset TotalSz = iolist_size(Bytes), HintCRC = erlang:crc32(HintCRC0, Iolist), % compute crc of hint {ok, Filestate#filestate{ofs = Offset + TotalSz, hintcrc = HintCRC}, Offset, TotalSz}. %% @doc Given an Offset and Size, get the corresponding k/v from Filename. -spec read(Filename :: string() | #filestate{}, Offset :: integer(), Size :: integer()) -> {ok, Key :: binary(), Value :: binary()} | {error, bad_crc} | {error, atom()}. read(Filename, Offset, Size) when is_list(Filename) -> case open_file(Filename) of {ok, Fstate} -> read(Fstate, Offset, Size); {error, Reason} -> {error, Reason} end; read(#filestate { fd = FD }, Offset, Size) -> case bitcask_io:file_pread(FD, Offset, Size) of {ok, <>} -> %% Verify the CRC of the data case erlang:crc32(Bytes) of Crc32 -> %% Unpack the actual data <<_Tstamp:?TSTAMPFIELD, KeySz:?KEYSIZEFIELD, ValueSz:?VALSIZEFIELD, Key:KeySz/bytes, Value:ValueSz/bytes>> = Bytes, {ok, Key, Value}; _BadCrc -> {error, bad_crc} end; eof -> {error, eof}; {error, Reason} -> {error, Reason} end. %% @doc Call the OS's fsync(2) system call on the cask and hint files. -spec sync(#filestate{}) -> ok. sync(#filestate { mode = read_write, fd = Fd, hintfd = HintFd }) -> ok = bitcask_io:file_sync(Fd), ok = bitcask_io:file_sync(HintFd). -spec fold(fresh | #filestate{}, fun((binary(), binary(), integer(), {list(), integer(), integer(), integer()}, any()) -> any()), any()) -> any() | {error, any()}. fold(fresh, _Fun, Acc) -> Acc; fold(#filestate { fd=Fd, filename=Filename, tstamp=FTStamp }, Fun, Acc0) -> %% TODO: Add some sort of check that this is a read-only file ok = bitcask_io:file_seekbof(Fd), case fold_file_loop(Fd, fun fold_int_loop/6, Fun, Acc0, {Filename, FTStamp, 0, 0}) of {error, Reason} -> {error, Reason}; Acc -> Acc end. -spec fold_keys(fresh | #filestate{}, fun((binary(), integer(), {integer(), integer()}, any()) -> any()), any()) -> any() | {error, any()}. fold_keys(fresh, _Fun, Acc) -> Acc; fold_keys(State, Fun, Acc) -> fold_keys(State, Fun, Acc, default). -spec fold_keys(fresh | #filestate{}, fun((binary(), integer(), {integer(), integer()}, any()) -> any()), any(), datafile | hintfile | default | recovery) -> any() | {error, any()}. fold_keys(#filestate { fd = Fd } = State, Fun, Acc, Mode) -> case Mode of datafile -> fold_keys_loop(Fd, 0, Fun, Acc); hintfile -> fold_hintfile(State, Fun, Acc); default -> case has_hintfile(State) of true -> fold_hintfile(State, Fun, Acc); false -> fold_keys_loop(Fd, 0, Fun, Acc) end; recovery -> % if hint files are corrupt, restart scanning cask files % Fun should be side-effect free or tolerant of being % called twice case has_valid_hintfile(State) of true -> case fold_hintfile(State, Fun, Acc) of {error, {trunc_hintfile, Acc0}} -> Acc0; {error, Reason} -> HintFile = hintfile_name(State), error_logger:error_msg("Hintfile '~s' failed fold: ~p\n", [HintFile, Reason]), fold_keys_loop(Fd, 0, Fun, Acc); Acc1 -> Acc1 end; false -> HintFile = hintfile_name(State), error_logger:error_msg("Hintfile '~s' invalid\n", [HintFile]), fold_keys_loop(Fd, 0, Fun, Acc) end end. -spec mk_filename(string(), integer()) -> string(). mk_filename(Dirname, Tstamp) -> filename:join(Dirname, lists:concat([integer_to_list(Tstamp),".bitcask.data"])). -spec filename(#filestate{}) -> string(). filename(#filestate { filename = Fname }) -> Fname. -spec hintfile_name(string() | #filestate{}) -> string(). hintfile_name(Filename) when is_list(Filename) -> filename:rootname(Filename, ".data") ++ ".hint"; hintfile_name(#filestate { filename = Fname }) -> hintfile_name(Fname). -spec file_tstamp(#filestate{} | string()) -> integer(). file_tstamp(#filestate{tstamp=Tstamp}) -> Tstamp; file_tstamp(Filename) when is_list(Filename) -> list_to_integer(filename:basename(Filename, ".bitcask.data")). -spec check_write(fresh | #filestate{}, binary(), binary(), integer()) -> fresh | wrap | ok. check_write(fresh, _Key, _Value, _MaxSize) -> %% for the very first write, special-case fresh; check_write(#filestate { ofs = Offset }, Key, Value, MaxSize) -> Size = ?HEADER_SIZE + size(Key) + size(Value), case (Offset + Size) > MaxSize of true -> wrap; false -> ok end. has_hintfile(#filestate { filename = Fname }) -> is_file(hintfile_name(Fname)). %% Return true if there is a hintfile and it has %% a valid CRC check has_valid_hintfile(State) -> case has_hintfile(State) of true -> HintFile = hintfile_name(State), case bitcask_io:file_open(HintFile, [readonly, read_ahead]) of {ok, HintFd} -> {ok, HintI} = read_file_info(HintFile), HintSize = HintI#file_info.size, hintfile_validate_loop(HintFd, 0, HintSize); _ -> false end; Else -> Else end. hintfile_validate_loop(Fd, CRC0, Rem) -> {ReadLen, HasCRC} = case Rem =< ?CHUNK_SIZE of true -> case Rem < ?HINT_RECORD_SZ of true -> {0, error}; false -> {Rem - ?HINT_RECORD_SZ, true} end; false -> {?CHUNK_SIZE, false} end, case bitcask_io:file_read(Fd, ReadLen) of {ok, Bytes} -> case HasCRC of true -> ExpectCRC = read_crc(Fd), CRC = erlang:crc32(CRC0, Bytes), ExpectCRC =:= CRC; false -> hintfile_validate_loop(Fd, erlang:crc32(CRC0, Bytes), Rem - ReadLen); error -> false end; _ -> false end. read_crc(Fd) -> case bitcask_io:file_read(Fd, ?HINT_RECORD_SZ) of {ok, <<0:?TSTAMPFIELD, 0:?KEYSIZEFIELD, ExpectCRC:?TOTALSIZEFIELD, (?MAXOFFSET):?OFFSETFIELD>>} -> ExpectCRC; _ -> error end. %% =================================================================== %% Internal functions %% =================================================================== fold_int_loop(_Bytes, _Fun, Acc, _Consumed, {Filename, _, Offset, 20}, _EOI) -> error_logger:error_msg("fold_loop: CRC error limit at file ~p offset ~p\n", [Filename, Offset]), {done, Acc}; fold_int_loop(<>, Fun, Acc0, Consumed0, {Filename, FTStamp, Offset, CrcSkipCount}, EOI) -> TotalSz = KeySz + ValueSz + ?HEADER_SIZE, case erlang:crc32([<>, Key, Value]) of Crc32 -> PosInfo = {Filename, FTStamp, Offset, TotalSz}, Acc = Fun(Key, Value, Tstamp, PosInfo, Acc0), fold_int_loop(Rest, Fun, Acc, Consumed0 + TotalSz, {Filename, FTStamp, Offset + TotalSz, CrcSkipCount}, EOI); _ -> error_logger:error_msg("fold_loop: CRC error at file ~s offset ~p, " "skipping ~p bytes\n", [Filename, Offset, TotalSz]), fold_int_loop(Rest, Fun, Acc0, Consumed0 + TotalSz, {Filename, FTStamp, Offset + TotalSz, CrcSkipCount + 1}, EOI) end; fold_int_loop(<<>>, _Fun, Acc, Consumed, _Args, EOI) when EOI =:= true -> {done, Acc, Consumed}; fold_int_loop(_Bytes, _Fun, Acc, Consumed, Args, EOI) when EOI =:= false -> {more, Acc, Consumed, Args}; fold_int_loop(Bytes, _Fun, Acc, _Consumed, _Args, EOI) when EOI =:= true -> error_logger:error_msg("Trailing data, discarding (~p bytes)\n", [size(Bytes)]), {done, Acc}. fold_keys_loop(Fd, Offset, Fun, Acc0) -> case bitcask_io:file_position(Fd, Offset) of {ok, Offset} -> ok; Other -> error(Other) end, case fold_file_loop(Fd, fun fold_keys_int_loop/6, Fun, Acc0, {Offset, 0}) of {error, Reason} -> {error, Reason}; Acc -> Acc end. fold_keys_int_loop(<<_Crc32:?CRCSIZEFIELD, Tstamp:?TSTAMPFIELD, KeySz:?KEYSIZEFIELD, ValueSz:?VALSIZEFIELD, Key:KeySz/bytes, _:ValueSz/bytes, Rest/binary>>, Fun, Acc0, Consumed0, {Offset, AvgValSz0}, EOI) -> TotalSz = KeySz + ValueSz + ?HEADER_SIZE, PosInfo = {Offset, TotalSz}, Consumed = Consumed0 + TotalSz, AvgValSz = (AvgValSz0 + ValueSz) div 2, Acc = Fun(Key, Tstamp, PosInfo, Acc0), fold_keys_int_loop(Rest, Fun, Acc, Consumed, {Offset + TotalSz, AvgValSz}, EOI); %% in the case where values are very large, we don't actually want to %% get a larger binary if we don't have to, so just issue a skip. fold_keys_int_loop(<<_Crc32:?CRCSIZEFIELD, Tstamp:?TSTAMPFIELD, KeySz:?KEYSIZEFIELD, ValueSz:?VALSIZEFIELD, Key:KeySz/bytes, _Rest/binary>>, Fun, Acc0, _Consumed0, {Offset, AvgValSz0}, _EOI) when AvgValSz0 > ?CHUNK_SIZE -> TotalSz = KeySz + ValueSz + ?HEADER_SIZE, PosInfo = {Offset, TotalSz}, Acc = Fun(Key, Tstamp, PosInfo, Acc0), AvgValSz = (AvgValSz0 + ValueSz) div 2, NewPos = Offset + TotalSz, {skip, Acc, NewPos, {NewPos, AvgValSz}}; fold_keys_int_loop(<<>>, _Fun, Acc, Consumed, _Args, EOI) when EOI =:= true -> {done, Acc, Consumed}; fold_keys_int_loop(_Bytes, _Fun, Acc, Consumed, Args, EOI) when EOI =:= false -> {more, Acc, Consumed, Args}; fold_keys_int_loop(Bytes, _Fun, Acc, _Consumed, _Args, EOI) when EOI =:= true -> error_logger:error_msg("Bad datafile entry 1: ~p\n", [Bytes]), {done, Acc}. fold_hintfile(State, Fun, Acc0) -> HintFile = hintfile_name(State), case bitcask_io:file_open(HintFile, [readonly, read_ahead]) of {ok, HintFd} -> try {ok, DataI} = read_file_info(State#filestate.filename), DataSize = DataI#file_info.size, case fold_file_loop(HintFd, fun fold_hintfile_loop/6, Fun, Acc0, {DataSize, HintFile}) of {error, Reason} -> {error, Reason}; Acc -> Acc end after bitcask_io:file_close(HintFd) end; {error, Reason} -> {error, {fold_hintfile, Reason}} end. %% conditional end match here, checking that we get the expected CRC-containing %% hint record, three-tuple done indicates that we've exhausted all bytes, or %% it's an error fold_hintfile_loop(<<0:?TSTAMPFIELD, 0:?KEYSIZEFIELD, _ExpectCRC:?TOTALSIZEFIELD, (?MAXOFFSET):?OFFSETFIELD>>, _Fun, Acc, Consumed, _Args, EOI) when EOI =:= true -> {done, Acc, Consumed + ?HINT_RECORD_SZ}; %% main work loop here, containing the full match of hint record and key. %% if it gets a match, it proceeds to recurse over the rest of the big %% binary fold_hintfile_loop(<>, Fun, Acc0, Consumed0, {DataSize, HintFile} = Args, EOI) -> case Offset + TotalSz =< DataSize + 1 of true -> PosInfo = {Offset, TotalSz}, Acc = Fun(Key, Tstamp, PosInfo, Acc0), Consumed = KeySz + ?HINT_RECORD_SZ + Consumed0, fold_hintfile_loop(Rest, Fun, Acc, Consumed, Args, EOI); false -> error_logger:error_msg("Hintfile '~s' contains pointer ~p ~p " "that is greater than total data size ~p\n", [HintFile, Offset, TotalSz, DataSize]), {error, {trunc_hintfile, Acc0}} end; %% error case where we've gotten to the end of the file without the CRC match fold_hintfile_loop(<<>>, _Fun, Acc, _Consumed, _Args, EOI) when EOI =:= true -> case application:get_env(bitcask, require_hint_crc) of {ok, true} -> {error, {incomplete_hint, 4}}; _ -> {done, Acc} end; %% catchall case where we don't get enough bytes from fold_file_loop fold_hintfile_loop(_Bytes, _Fun, _Acc0, _Consumed0, _Args, EOI) when EOI =:= true -> {error, {incomplete_hint, 5}}; fold_hintfile_loop(_Bytes, _Fun, Acc0, Consumed0, Args, _EOI) -> {more, Acc0, Consumed0, Args}. %% @doc scaffolding for faster folds over large files. %% The somewhat tricky thing here is the FoldFn, which is a /6 %% that does all the actual work. see fold_hintfile_loop as a %% commented example -spec fold_file_loop(port(), fun((binary(), fun(), any(), integer(), any(), true | false) -> {more, any(), integer(), any()} | {done, any()} | {done, any(), integer()} | {skip, any(), integer(), any()} | {error, any()}), fun(), any(), any()) -> {error, any()} | any(). fold_file_loop(Fd, FoldFn, IntFoldFn, Acc, Args) -> fold_file_loop(Fd, FoldFn, IntFoldFn, Acc, Args, none, ?CHUNK_SIZE). fold_file_loop(Fd, FoldFn, IntFoldFn, Acc0, Args0, Prev0, ChunkSz0) -> %% analyze what happened in the last loop to determine whether or %% not to change the read size. This is an optimization for large values %% in datafile folds and key folds {Prev, ChunkSz} = case Prev0 of none -> {<<>>, ChunkSz0}; %if we're skipping around, we're likely too big skip -> CS = case ChunkSz0 >= (?MIN_CHUNK_SIZE * 2) of true -> ChunkSz0 div 2; false -> ?MIN_CHUNK_SIZE end, {<<>>, CS}; Other -> CS = case byte_size(Other) of %% to avoid having to rescan the same %% binaries over and over again. N when N >= ?MAX_CHUNK_SIZE -> ?MAX_CHUNK_SIZE; N when N > ChunkSz0 -> ChunkSz0 * 2; _ -> ChunkSz0 end, {Other, CS} end, case bitcask_io:file_read(Fd, ChunkSz) of {ok, <>} -> Bytes = <>, case FoldFn(Bytes, IntFoldFn, Acc0, 0, Args0, byte_size(Bytes0) /= ChunkSz) of %% foldfuns should return more when they don't have enough %% bytes to satisfy their main binary match. {more, Acc, Consumed, Args} -> Rest = case Consumed > byte_size(Bytes) of true -> <<>>; false -> <<_:Consumed/bytes, R/binary>> = Bytes, R end, fold_file_loop(Fd, FoldFn, IntFoldFn, Acc, Args, Rest, ChunkSz); %% foldfuns should return skip when they have no need for %% the rest of the binary that they've been handed. %% see fold_int_loop for proper usage. {skip, Acc, SkipTo, Args} -> case bitcask_io:file_position(Fd, SkipTo) of {ok, SkipTo} -> fold_file_loop(Fd, FoldFn, IntFoldFn, Acc, Args, skip, ChunkSz); {error, Reason} -> {error, Reason}; Other1 -> {error, {file_fold_error, Other1}} end; %% the done two tuple is returned when we want to be %% unconditionally successfully finished, i.e. trailing data %% is a non-fatal error {done, Acc} -> Acc; %% three tuple done requires full consumption of all bytes given %% to the internal fold function, to satisfy the pre-existing %% semantics of hintfile folds. {done, Acc, Consumed} -> case Consumed =:= byte_size(Bytes) of true -> Acc; false -> {error, {partial_fold, Consumed, Bytes, Bytes0}} end; {error, Reason} -> {error, Reason} end; eof -> Acc0; {error, Reason} -> {error, Reason} end. open_hint_file(Filename, FinalOpts) -> open_hint_file(Filename, FinalOpts, 10). open_hint_file(_Filename, _FinalOpts, 0) -> throw(couldnt_open_hintfile); open_hint_file(Filename, FinalOpts, Count) -> case bitcask_io:file_open(hintfile_name(Filename), FinalOpts) of {ok, FD} -> FD; {error, eexist} -> timer:sleep(50), open_hint_file(Filename, FinalOpts, Count - 1) end. hintfile_entry(Key, Tstamp, {Offset, TotalSz}) -> KeySz = size(Key), [<>, <>, <>, <>, Key]. %% =================================================================== %% file/filelib avoidance code. %% =================================================================== read_file_info(FileName) -> prim_file:read_file_info(FileName). write_file_info(FileName, Info) -> prim_file:write_file_info(FileName, Info). is_file(File) -> case read_file_info(File) of {ok, #file_info{type=regular}} -> true; {ok, #file_info{type=directory}} -> true; _ -> false end. is_dir(File) -> case read_file_info(File) of {ok, #file_info{type=directory}} -> true; _ -> false end. ensure_dir("/") -> ok; ensure_dir(F) -> Dir = filename:dirname(F), case is_dir(Dir) of true -> ok; false when Dir =:= F -> %% Protect against infinite loop {error,einval}; false -> ensure_dir(Dir), %% this is rare enough that the serialization %% isn't super important, maybe case file:make_dir(Dir) of {error,eexist}=EExist -> case is_dir(Dir) of true -> ok; false -> EExist end; Err -> Err end end. list_dir(Directory) -> Port = get_efile_port(), prim_file:list_dir(Port, Directory). get_efile_port() -> Key = bitcask_efile_port, case get(Key) of undefined -> case prim_file_drv_open(efile, [binary]) of {ok, Port} -> put(Key, Port), get_efile_port(); Err -> error_logger:error_msg("get_efile_port: ~p\n", [Err]), timer:sleep(1000), get_efile_port() end; Port -> Port end. prim_file_drv_open(Driver, Portopts) -> try erlang:open_port({spawn, Driver}, Portopts) of Port -> {ok, Port} catch error:Reason -> {error, Reason} end. erlang-bitcask-1.6.7+dfsg/src/bitcask_io.erl000066400000000000000000000050321233730135600207370ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2013 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_io). -compile(export_all). file_open(Filename, Opts) -> M = file_module(), M:file_open(Filename, Opts). file_close(Ref) -> M = file_module(), M:file_close(Ref). file_sync(Ref) -> M = file_module(), M:file_sync(Ref). file_pread(Ref, Offset, Size) -> M = file_module(), M:file_pread(Ref, Offset, Size). file_pwrite(Ref, Offset, Bytes) -> M = file_module(), M:file_pwrite(Ref, Offset, Bytes). file_read(Ref, Size) -> M = file_module(), M:file_read(Ref, Size). file_write(Ref, Bytes) -> M = file_module(), M:file_write(Ref, Bytes). file_seekbof(Ref) -> M = file_module(), M:file_seekbof(Ref). file_position(Ref, Position) -> M = file_module(), M:file_position(Ref, Position). file_module() -> case get(bitcask_file_mod) of undefined -> Mod = determine_file_module(), put(bitcask_file_mod, Mod), Mod; Mod -> Mod end. -ifdef(TEST). determine_file_module() -> case application:get_env(bitcask, io_mode) of {ok, erlang} -> bitcask_file; {ok, nif} -> bitcask_nifs; _ -> Mode = case os:getenv("BITCASK_IO_MODE") of false -> 'erlang'; "erlang" -> 'erlang'; "nif" -> 'nif' end, application:set_env(bitcask, io_mode, Mode), determine_file_module() end. -else. determine_file_module() -> case application:get_env(bitcask, io_mode) of {ok, erlang} -> bitcask_file; {ok, nif} -> bitcask_nifs; _ -> bitcask_file end. -endif. erlang-bitcask-1.6.7+dfsg/src/bitcask_lockops.erl000066400000000000000000000140421233730135600220030ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_lockops). -export([acquire/2, release/1, delete_stale_lock/2, read_activefile/2, write_activefile/2]). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -endif. -type lock_types() :: merge | write | create. %% @doc Attempt to lock the specified directory with a specific type of lock %% (merge or write). -spec acquire(Type::lock_types(), Dirname::string()) -> {ok, reference()} | {error, any()}. acquire(Type, Dirname) -> LockFilename = lock_filename(Type, Dirname), case bitcask_nifs:lock_acquire(LockFilename, 1) of {ok, Lock} -> %% Successfully acquired our lock. Update the file with our PID. ok = bitcask_nifs:lock_writedata(Lock, iolist_to_binary([os:getpid(), " \n"])), {ok, Lock}; {error, eexist} -> %% Lock file already exists, but may be stale. Delete it if it's stale %% and try to acquire again case delete_stale_lock(LockFilename) of ok -> acquire(Type, Dirname); not_stale -> {error, locked} end; {error, Reason} -> {error, Reason} end. %% @doc Release a previously acquired write/merge lock. -spec release(reference()) -> ok. release(Lock) -> bitcask_nifs:lock_release(Lock). %% @doc Read the active filename stored in a given lockfile. -spec read_activefile(Type::lock_types(), Dirname::string()) -> string() | undefined. read_activefile(Type, Dirname) -> LockFilename = lock_filename(Type, Dirname), case bitcask_nifs:lock_acquire(LockFilename, 0) of {ok, Lock} -> try case read_lock_data(Lock) of {ok, _Pid, ActiveFile} -> ActiveFile; _ -> undefined end after bitcask_nifs:lock_release(Lock) end; {error, _Reason} -> undefined end. %% @doc Write a new active filename to an open lockfile. -spec write_activefile(reference(), string()) -> {ftruncate_error, integer()} | {pwrite_error, integer()} | ok | {error, lock_not_writable}. write_activefile(Lock, ActiveFilename) -> Contents = iolist_to_binary([os:getpid(), " ", ActiveFilename, "\n"]), bitcask_nifs:lock_writedata(Lock, Contents). delete_stale_lock(Type, Dirname) -> delete_stale_lock(lock_filename(Type,Dirname)). %% =================================================================== %% Internal functions %% =================================================================== lock_filename(Type, Dirname) -> filename:join(Dirname, lists:concat(["bitcask.", Type, ".lock"])). read_lock_data(Lock) -> case bitcask_nifs:lock_readdata(Lock) of {ok, Contents} -> case re:run(Contents, "([0-9]+) (.*)\n", [{capture, all_but_first, list}]) of {match, [OsPid, []]} -> {ok, OsPid, undefined}; {match, [OsPid, LockedFilename]} -> {ok, OsPid, LockedFilename}; nomatch -> {error, {invalid_data, Contents}} end; {error, Reason} -> {error, Reason} end. os_pid_exists(Pid) -> %% Use kill -0 trick to determine if a process exists. This _should_ be %% portable across all unix variants we are interested in. [] == os:cmd(io_lib:format("kill -0 ~s", [Pid])). delete_stale_lock(Filename) -> %% Open the lock for read-only access. We do this to avoid race-conditions %% with other O/S processes that are attempting the same task. Opening a %% fd and holding it open until AFTER the unlink ensures that the file we %% initially read is the same one we are deleting. case bitcask_nifs:lock_acquire(Filename, 0) of {ok, Lock} -> try case read_lock_data(Lock) of {ok, OsPid, _LockedFilename} -> case os_pid_exists(OsPid) of true -> %% The lock IS NOT stale, so we can't delete it. not_stale; false -> %% The lock IS stale; delete the file. file:delete(Filename), ok end; {error, Reason} -> error_logger:error_msg("Failed to read lock data from ~s: ~p\n", [Filename, Reason]), not_stale end after bitcask_nifs:lock_release(Lock) end; {error, enoent} -> %% Failed to open the lock for reading, but only because it doesn't exist %% any longer. Treat this as a successful delete; the lock file existed %% when we started. ok; {error, Reason} -> %% Failed to open the lock for reading due to other errors. error_logger:error_msg("Failed to open lock file ~s: ~p\n", [Filename, Reason]), not_stale end. erlang-bitcask-1.6.7+dfsg/src/bitcask_merge_delete.erl000066400000000000000000000141651233730135600227600ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2012 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_merge_delete). -behaviour(gen_server). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -endif. %% API -export([start_link/0, defer_delete/3, queue_length/0]). -export([testonly__delete_trigger/0]). % testing only %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). -include("bitcask.hrl"). -ifdef(TEST). -include_lib("eunit/include/eunit.hrl"). -endif. -define(SERVER, ?MODULE). -define(TIMEOUT, 1000). -record(state, {q :: queue()}). %%%=================================================================== %%% API %%%=================================================================== start_link() -> gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). defer_delete(Dirname, IterGeneration, Files) -> gen_server:call(?SERVER, {defer_delete, Dirname, IterGeneration, Files}, infinity). queue_length() -> gen_server:call(?SERVER, {queue_length}, infinity). testonly__delete_trigger() -> gen_server:call(?SERVER, {testonly__delete_trigger}, infinity). %%%=================================================================== %%% gen_server callbacks %%%=================================================================== init([]) -> {ok, #state{q = queue:new()}, ?TIMEOUT}. handle_call({defer_delete, Dirname, IterGeneration, Files}, _From, State) -> {reply, ok, State#state{q = queue:in({Dirname, IterGeneration, Files}, State#state.q)}, ?TIMEOUT}; handle_call({queue_length}, _From, State) -> {reply, queue:len(State#state.q), State, ?TIMEOUT}; handle_call({testonly__delete_trigger}, _From, State) -> {reply, ok, check_status(State), ?TIMEOUT}; handle_call(_Request, _From, State) -> Reply = unknown_request, {reply, Reply, State, ?TIMEOUT}. handle_cast(_Msg, State) -> {noreply, State, ?TIMEOUT}. handle_info(timeout, State) -> {noreply, check_status(State), ?TIMEOUT}; handle_info(_Info, State) -> {noreply, State, ?TIMEOUT}. terminate(_Reason, _State) -> ok. code_change(_OldVsn, State, _Extra) -> {ok, State}. %%%=================================================================== %%% Internal functions %%%=================================================================== check_status(S) -> case queue:out(S#state.q) of {empty, _} -> S; {{value, {Dirname, IterGeneration, Files}}, NewQ} -> {_, KeyDir} = bitcask_nifs:keydir_new(Dirname), try {_,_,_,IterStatus} = bitcask_nifs:keydir_info(KeyDir), CleanAndGo = fun() -> delete_files(Files), bitcask_nifs:keydir_release(KeyDir), check_status(S#state{q = NewQ}) end, case IterStatus of {_, _, false} -> CleanAndGo(); {CurGen, _, true} when CurGen > IterGeneration -> CleanAndGo(); _ -> %% Do nothing, ignore NewQ S end catch _X:_Y -> %% Not sure what problem was: keydir is no longer %% valid, or a problem deleting files, but in any %% case we're going to wash our hands of the matter and %% let the next merge clean up. S#state{q = NewQ} after catch bitcask_nifs:keydir_release(KeyDir) end end. delete_files(Files) -> [bitcask_fileops:delete(#filestate{filename = F}) || F <- Files]. -ifdef(TEST). multiple_merges_during_fold_test_() -> {timeout, 60, fun multiple_merges_during_fold_test_body/0}. multiple_merges_during_fold_test_body() -> Dir = "/tmp/bc.multiple-merges-fold", B = bitcask:open(Dir, [read_write, {max_file_size, 50}]), PutSome = fun() -> [bitcask:put(B, <>, <<"yo this is a value">>) || X <- lists:seq(1,5)] end, PutSome(), PutSome(), Bstuff = get(B), FoldFun = fun(_K, _V, 0) -> receive go_ahead -> ok end, 1; (_K, _V, 1) -> 1 end, SlowPid = spawn(fun() -> put(B, Bstuff), bitcask:fold(B, FoldFun, 0) end), CountSetuids = fun() -> Fs = filelib:wildcard(Dir ++ "/*"), length([F || F <- Fs, bitcask:has_setuid_bit(F)]) end, PutSome(), Count1 = merge_until(Dir, 0, CountSetuids), PutSome(), bitcask:merge(Dir), PutSome(), merge_until(Dir, Count1, CountSetuids), SlowPid ! go_ahead, timer:sleep(500), ok = ?MODULE:testonly__delete_trigger(), 0 = CountSetuids(), ok. merge_until(Dir, MinCount, CountSetuids) -> bitcask:merge(Dir), Count = CountSetuids(), if (Count > MinCount) -> Count; true -> timer:sleep(100), merge_until(Dir, MinCount, CountSetuids) end. -endif. %% TEST erlang-bitcask-1.6.7+dfsg/src/bitcask_merge_worker.erl000066400000000000000000000205131233730135600230210ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_merge_worker). -behaviour(gen_server). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -endif. -ifdef(TEST). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -endif. -include_lib("eunit/include/eunit.hrl"). -endif. %% API -export([start_link/0, merge/1, merge/2, merge/3]). %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). -record(state, { queue, worker}). %% ==================================================================== %% API %% ==================================================================== start_link() -> gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). merge(Dir) -> merge(Dir, []). merge(Dir, Opts) -> gen_server:call(?MODULE, {merge, [Dir, Opts]}, infinity). merge(Dir, Opts, Files) -> gen_server:call(?MODULE, {merge, [Dir, Opts, Files]}, infinity). %% ==================================================================== %% gen_server callbacks %% ==================================================================== init([]) -> %% Trap exits of the actual worker process process_flag(trap_exit, true), %% Use a dedicated worker sub-process to do the actual merging. The process %% may ignore messages for a long while during the merge and we want to %% ensure that our message queue doesn't fill up with a bunch of dup %% requests for the same directory. %% %% The sub-process is created per-merge request to ensure that any %% ports/file handles opened during the merge get properly cleaned up, even %% in error cases. {ok, #state{ queue = [] }}. handle_call({merge, Args0}, _From, #state { queue = Q } = State) -> [Dirname|_] = Args0, Args1 = case length(Args0) of 3 -> %% presort opts and files tuples for better matches %% and less work later [_, Opts0, Tuple0] = Args0, {Files, Expired} = Tuple0, Opts = lists:usort(Opts0), Tuple = {lists:usort(Files), lists:usort(Expired)}, [Dirname, Opts, Tuple]; _ -> %% whole directory don't need to be sorted Args0 end, Args = list_to_tuple(Args1), %% convert back and forth from tuples to lists so we can use %% keyfind case lists:keyfind(Dirname, 1, Q) of Args -> {reply, already_queued, State}; Partial when is_tuple(Partial) -> New = merge_items(Args, Partial), Q1 = lists:keyreplace(Dirname, 1, Q, New), {reply, ok, State#state{ queue = Q1 }}; false -> case State#state.worker of undefined -> WorkerPid = spawn_link(fun() -> do_merge(Args0) end), {reply, ok, State#state { worker = WorkerPid }}; _ -> {reply, ok, State#state { queue = Q ++ [Args] }} end end. handle_cast(_Msg, State) -> {noreply, State}. handle_info({'EXIT', _Pid, normal}, #state { queue = Q } = State) -> case Q of [] -> {noreply, State#state { worker = undefined }, hibernate}; [Args0|Q2] -> Args = tuple_to_list(Args0), WorkerPid = spawn_link(fun() -> do_merge(Args) end), {noreply, State#state { queue = Q2, worker = WorkerPid }, hibernate} end; handle_info({'EXIT', Pid, Reason}, #state { worker = Pid } = State) -> error_logger:error_msg("Merge worker PID exited: ~p\n", [Reason]), {stop, State}. terminate(_Reason, State) -> catch exit(State#state.worker, shutdown), ok. code_change(_OldVsn, State, _Extra) -> {ok, State}. %% ==================================================================== %% private functions %% ==================================================================== merge_items(New, Old) -> %% first element will always match Dirname = element(1, New), %% old args are already sorted OOpts = element(2, Old), NOpts = lists:usort(element(2, New)), Opts = lists:umerge(OOpts, NOpts), case {size(New), size(Old)} of {3, 3} -> Files = merge_files(element(3, New), element(3, Old)), {Dirname, Opts, Files}; {2, 2} -> {Dirname, Opts}; {2, 3} -> {Dirname, Opts, element(3, Old)}; {3, 2} -> {Dirname, Opts, element(3, New)} end. merge_files(New, Old) -> {NFiles, NExp} = New, {OFiles, OExp} = Old, %% old files and expired lists are already sorted Files0 = lists:umerge(lists:usort(NFiles), OFiles), Expired = lists:umerge(lists:usort(NExp), OExp), Files = Files0 -- Expired, {Files, Expired}. %% ==================================================================== %% Internal worker %% ==================================================================== do_merge(Args) -> {_, {Hour, _, _}} = calendar:local_time(), case in_merge_window(Hour, merge_window()) of true -> Start = os:timestamp(), Result = (catch apply(bitcask, merge, Args)), ElapsedSecs = timer:now_diff(os:timestamp(), Start) / 1000000, [_,_,Args3] = Args, case Result of ok -> error_logger:info_msg("Merged ~p in ~p seconds.\n", [Args3, ElapsedSecs]); {Error, Reason} when Error == error; Error == 'EXIT' -> error_logger:error_msg("Failed to merge ~p: ~p\n", [Args3, Reason]) end; false -> ok end. merge_window() -> case application:get_env(bitcask, merge_window) of {ok, always} -> always; {ok, never} -> never; {ok, {StartHour, EndHour}} when StartHour >= 0, StartHour =< 23, EndHour >= 0, EndHour =< 23 -> {StartHour, EndHour}; Other -> error_logger:error_msg("Invalid bitcask_merge window specified: ~p. " "Defaulting to 'always'.\n", [Other]), always end. in_merge_window(_NowHour, always) -> true; in_merge_window(_NowHour, never) -> false; in_merge_window(NowHour, {Start, End}) when Start =< End -> (NowHour >= Start) and (NowHour =< End); in_merge_window(NowHour, {Start, End}) when Start > End -> (NowHour >= Start) or (NowHour =< End). %% ==================================================================== %% Unit tests %% ==================================================================== -ifdef(EQC). prop_in_window() -> ?FORALL({NowHour, WindowLen, StartTime}, {choose(0, 23), choose(0, 23), choose(0, 23)}, begin EndTime = (StartTime + WindowLen) rem 24, %% Generate a set of all hours within this window WindowHours = [H rem 24 || H <- lists:seq(StartTime, StartTime + WindowLen)], %% If NowHour is in the set of windows hours, we expect our function %% to indicate that we are in the window ExpInWindow = lists:member(NowHour, WindowHours), ?assertEqual(ExpInWindow, in_merge_window(NowHour, {StartTime, EndTime})), true end). prop_in_window_test() -> ?assert(eqc:quickcheck(prop_in_window())). -endif. erlang-bitcask-1.6.7+dfsg/src/bitcask_nifs.erl000066400000000000000000000601011233730135600212650ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_nifs). -export([init/0, keydir_new/0, keydir_new/1, keydir_mark_ready/1, keydir_put/6, keydir_put/7, keydir_put/8, keydir_get/2, keydir_remove/2, keydir_remove/5, keydir_copy/1, keydir_fold/5, keydir_itr/3, keydir_itr_next/1, keydir_itr_release/1, keydir_frozen/4, keydir_wait_pending/1, keydir_info/1, keydir_release/1, increment_file_id/1, keydir_trim_fstats/2, lock_acquire/2, lock_release/1, lock_readdata/1, lock_writedata/2, file_open/2, file_close/1, file_sync/1, file_pread/3, file_pwrite/3, file_read/2, file_write/2, file_position/2, file_seekbof/1]). -on_load(init/0). -include("bitcask.hrl"). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -export([set_pulse_pid/1]). -compile({pulse_skip, [{init,0}]}). -endif. -ifdef(TEST). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -endif. -compile(export_all). -include_lib("eunit/include/eunit.hrl"). -endif. -spec init() -> ok | {error, any()}. -spec keydir_new() -> {ok, reference()}. -spec keydir_new(string()) -> {ok, reference()} | {ready, reference()} | {not_ready, reference()} | {error, not_ready}. -spec keydir_mark_ready(reference()) -> ok. -spec keydir_put(reference(), binary(), integer(), integer(), integer(), integer()) -> ok | already_exists. -spec keydir_put(reference(), binary(), integer(), integer(), integer(), integer(), boolean()) -> ok | already_exists. -spec keydir_put(reference(), binary(), integer(), integer(), integer(), integer(), integer(), integer()) -> ok | already_exists. -spec keydir_put_int(reference(), binary(), integer(), integer(), binary(), integer(), 0 | 1, integer(), binary()) -> ok | already_exists. -spec keydir_get(reference(), binary()) -> not_found | #bitcask_entry{}. -spec keydir_get_int(reference(), binary()) -> not_found | #bitcask_entry{}. -spec keydir_remove(reference(), binary()) -> ok. -spec keydir_remove(reference(), binary(), integer(), integer(), integer()) -> ok. -spec keydir_copy(reference()) -> {ok, reference()}. -spec keydir_itr(reference(), integer(), integer()) -> ok | out_of_date | {error, iteration_in_process}. -spec keydir_itr_next(reference()) -> #bitcask_entry{} | {error, iteration_not_started} | allocation_error | not_found. -spec keydir_itr_release(reference()) -> ok. -spec keydir_fold(reference(), fun((any(), any()) -> any()), any(), integer(), integer()) -> any() | {error, any()}. -spec keydir_info(reference()) -> {integer(), integer(), [{integer(), integer(), integer(), integer(), integer(), integer(), integer()}], {integer(), integer(), boolean()}}. -spec keydir_release(reference()) -> ok. -spec keydir_trim_fstats(reference(), [integer()]) -> {ok, integer()} | {error, atom()}. -spec lock_acquire(string(), integer()) -> {ok, reference()} | {error, atom()}. -spec lock_release(reference()) -> ok. -spec lock_readdata(reference()) -> {ok, binary()} | {fstat_error, integer()} | {error, allocation_error} | {pread_error, integer()}. -spec lock_writedata(reference(), binary()) -> ok | {ftruncate_error, integer()} | {pwrite_error, integer()} | {error, lock_not_writable}. init() -> case code:priv_dir(bitcask) of {error, bad_name} -> case code:which(?MODULE) of Filename when is_list(Filename) -> SoName = filename:join([filename:dirname(Filename),"../priv", "bitcask"]); _ -> SoName = filename:join("../priv", "bitcask") end; Dir -> SoName = filename:join(Dir, "bitcask") end, erlang:load_nif(SoName, 0). -ifdef(PULSE). set_pulse_pid(_Pid) -> erlang:nif_error({error, not_loaded}). -endif. %% =================================================================== %% Internal functions %% =================================================================== %% %% Most of the functions below are actually defined in c_src/bitcask_nifs.c %% See that file for the real functionality of the bitcask_nifs module. %% The definitions here are only to satisfy trivial static analysis. %% keydir_new() -> erlang:nif_error({error, not_loaded}). keydir_new(Name) when is_list(Name) -> erlang:nif_error({error, not_loaded}). keydir_mark_ready(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp) -> keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, false). keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, NewestPutB) -> keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, NewestPutB, 0, 0). keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, OldFileId, OldOffset) -> keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, false, OldFileId, OldOffset). keydir_put(Ref, Key, FileId, TotalSz, Offset, Tstamp, NewestPutB, OldFileId, OldOffset) -> keydir_put_int(Ref, Key, FileId, TotalSz, <>, Tstamp, if not NewestPutB -> 0; true -> 1 end, OldFileId, <>). keydir_put_int(_Ref, _Key, _FileId, _TotalSz, _Offset, _Tstamp, _NewestPutI, _OldFileId, _OldOffset) -> erlang:nif_error({error, not_loaded}). keydir_get(Ref, Key) -> case keydir_get_int(Ref, Key) of E when is_record(E, bitcask_entry) -> <> = E#bitcask_entry.offset, E#bitcask_entry{offset = Offset}; not_found -> not_found end. keydir_get_int(_Ref, _Key) -> erlang:nif_error({error, not_loaded}). keydir_remove(_Ref, _Key) -> erlang:nif_error({error, not_loaded}). keydir_remove(Ref, Key, Tstamp, FileId, Offset) -> keydir_remove_int(Ref, Key, Tstamp, FileId, <>). keydir_remove_int(_Ref, _Key, _Tstamp, _FileId, _Offset) -> erlang:nif_error({error, not_loaded}). keydir_copy(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_itr(Ref, MaxAge, MaxPuts) -> {Mega,Secs,Micro} = os:timestamp(), TS = <<((Mega * 1000000 + Secs) * 1000000 + Micro):64/unsigned-native>>, keydir_itr_int(Ref, TS, MaxAge, MaxPuts). keydir_itr_int(_Ref, _Ts, _MaxAge, _MaxPuts) -> erlang:nif_error({error, not_loaded}). keydir_itr_next(Ref) -> case keydir_itr_next_int(Ref) of E when is_record(E, bitcask_entry) -> <> = E#bitcask_entry.offset, E#bitcask_entry { offset = Offset }; Other -> Other end. keydir_itr_next_int(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_itr_release(_Ref) -> ok. increment_file_id(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_fold(Ref, Fun, Acc0, MaxAge, MaxPuts) -> FrozenFun = fun() -> keydir_fold_cont(keydir_itr_next(Ref), Ref, Fun, Acc0) end, keydir_frozen(Ref, FrozenFun, MaxAge, MaxPuts). %% Execute the function once the keydir is frozen keydir_frozen(Ref, FrozenFun, MaxAge, MaxPuts) -> case keydir_itr(Ref, MaxAge, MaxPuts) of out_of_date -> case keydir_wait_ready() of ok -> keydir_frozen(Ref, FrozenFun, -1, -1); Else -> Else end; ok -> try FrozenFun() after keydir_itr_release(Ref) end; {error, Reason} -> {error, Reason} end. %% Wait for any pending interation to complete keydir_wait_pending(Ref) -> %% Create an iterator, passing a zero timestamp to force waiting for %% any current iteration to complete case keydir_itr_int(Ref, <<0:64/unsigned-native>>, 0, 0) of out_of_date -> % no iter created, wait for message from last fold_keys receive ready -> ok; error -> {error, shutdown} end; ok -> keydir_itr_release(Ref), ok end. -ifdef(PULSE). keydir_wait_ready() -> receive ready -> % fold no matter what on second attempt ok; error -> {error, shutdown} after 1000 -> keydir_wait_ready() end. -else. keydir_wait_ready() -> receive ready -> % fold no matter what on second attempt ok; error -> {error, shutdown} end. -endif. keydir_info(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_release(_Ref) -> erlang:nif_error({error, not_loaded}). keydir_trim_fstats(_Ref, _IDList) -> erlang:nif_error({error, not_loaded}). lock_acquire(Filename, IsWriteLock) -> bitcask_bump:big(), lock_acquire_int(Filename, IsWriteLock). lock_acquire_int(_Filename, _IsWriteLock) -> erlang:nif_error({error, not_loaded}). lock_release(Ref) -> bitcask_bump:big(), lock_release_int(Ref). lock_release_int(_Ref) -> erlang:nif_error({error, not_loaded}). lock_readdata(Ref) -> bitcask_bump:big(), lock_readdata_int(Ref). lock_readdata_int(_Ref) -> erlang:nif_error({error, not_loaded}). lock_writedata(Ref, Data) -> bitcask_bump:big(), lock_writedata_int(Ref, Data). lock_writedata_int(_Ref, _Data) -> erlang:nif_error({error, not_loaded}). file_open(Filename, Opts) -> bitcask_bump:big(), file_open_int(Filename, Opts). file_open_int(_Filename, _Opts) -> erlang:nif_error({error, not_loaded}). file_close(Ref) -> bitcask_bump:big(), file_close_int(Ref). file_close_int(_Ref) -> erlang:nif_error({error, not_loaded}). file_sync(Ref) -> bitcask_bump:big(), file_sync_int(Ref). file_sync_int(_Ref) -> erlang:nif_error({error, not_loaded}). file_pread(Ref, Offset, Size) -> bitcask_bump:big(), file_pread_int(Ref, Offset, Size). file_pread_int(_Ref, _Offset, _Size) -> erlang:nif_error({error, not_loaded}). file_pwrite(Ref, Offset, Bytes) -> bitcask_bump:big(), file_pwrite_int(Ref, Offset, Bytes). file_pwrite_int(_Ref, _Offset, _Bytes) -> erlang:nif_error({error, not_loaded}). file_read(Ref, Size) -> bitcask_bump:big(), file_read_int(Ref, Size). file_read_int(_Ref, _Size) -> erlang:nif_error({error, not_loaded}). file_write(Ref, Bytes) -> bitcask_bump:big(), file_write_int(Ref, Bytes). file_write_int(_Ref, _Bytes) -> erlang:nif_error({error, not_loaded}). file_position(Ref, Position) -> bitcask_bump:big(), file_position_int(Ref, Position). file_position_int(_Ref, _Position) -> erlang:nif_error({error, not_loaded}). file_seekbof(Ref) -> bitcask_bump:big(), file_seekbof_int(Ref). file_seekbof_int(_Ref) -> erlang:nif_error({error, not_loaded}). %% =================================================================== %% Internal functions %% =================================================================== keydir_fold_cont(not_found, _Ref, _Fun, Acc0) -> Acc0; keydir_fold_cont(Curr, Ref, Fun, Acc0) -> Acc = Fun(Curr, Acc0), keydir_fold_cont(keydir_itr_next(Ref), Ref, Fun, Acc). %% =================================================================== %% EUnit tests %% =================================================================== -ifdef(TEST). keydir_basic_test() -> {ok, Ref} = keydir_new(), ok = keydir_put(Ref, <<"abc">>, 0, 1234, 0, 1), {1, 3, [{0, 1, 1, 1234, 1234, 1, 1}], {<<0:64/unsigned-native>>, 0, false}} = keydir_info(Ref), E = keydir_get(Ref, <<"abc">>), 0 = E#bitcask_entry.file_id, 1234 = E#bitcask_entry.total_sz, 0 = E#bitcask_entry.offset, 1 = E#bitcask_entry.tstamp, already_exists = keydir_put(Ref, <<"abc">>, 0, 1234, 0, 0), ok = keydir_remove(Ref, <<"abc">>), not_found = keydir_get(Ref, <<"abc">>). keydir_itr_anon_test() -> {ok, Ref} = keydir_new(), keydir_itr_test_base(Ref). keydir_itr_named_test() -> {not_ready, Ref} = keydir_new("keydir_itr_named_test"), keydir_mark_ready(Ref), keydir_itr_test_base(Ref). keydir_itr_test_base(Ref) -> ok = keydir_put(Ref, <<"abc">>, 0, 1234, 0, 1), ok = keydir_put(Ref, <<"def">>, 0, 4567, 1234, 2), ok = keydir_put(Ref, <<"hij">>, 1, 7890, 0, 3), {3, 9, _, _} = keydir_info(Ref), List = keydir_fold(Ref, fun(E, Acc) -> [ E | Acc] end, [], -1, -1), 3 = length(List), true = lists:keymember(<<"abc">>, #bitcask_entry.key, List), true = lists:keymember(<<"def">>, #bitcask_entry.key, List), true = lists:keymember(<<"hij">>, #bitcask_entry.key, List). keydir_copy_test() -> {ok, Ref1} = keydir_new(), ok = keydir_put(Ref1, <<"abc">>, 0, 1234, 0, 1), ok = keydir_put(Ref1, <<"def">>, 0, 4567, 1234, 2), ok = keydir_put(Ref1, <<"hij">>, 1, 7890, 0, 3), {ok, Ref2} = keydir_copy(Ref1), #bitcask_entry { key = <<"abc">>} = keydir_get(Ref2, <<"abc">>). keydir_named_test() -> {not_ready, Ref} = keydir_new("k1"), ok = keydir_put(Ref, <<"abc">>, 0, 1234, 0, 1), keydir_mark_ready(Ref), {ready, Ref2} = keydir_new("k1"), #bitcask_entry { key = <<"abc">> } = keydir_get(Ref2, <<"abc">>). keydir_named_not_ready_test() -> {not_ready, Ref} = keydir_new("k2"), ok = keydir_put(Ref, <<"abc">>, 0, 1234, 0, 1), {error, not_ready} = keydir_new("k2"). keydir_itr_while_itr_error_test() -> {ok, Ref1} = keydir_new(), ok = keydir_itr(Ref1, -1, -1), try ?assertEqual({error, iteration_in_process}, keydir_itr(Ref1, -1, -1)) after keydir_itr_release(Ref1) end. keydir_double_itr_test() -> % check iterating flag is cleared {ok, Ref1} = keydir_new(), Folder = fun(_,Acc) -> Acc end, ?assertEqual(acc, keydir_fold(Ref1, Folder, acc, -1, -1)), ?assertEqual(acc, keydir_fold(Ref1, Folder, acc, -1, -1)). keydir_next_notstarted_error_test() -> {ok, Ref1} = keydir_new(), ?assertEqual({error, iteration_not_started}, keydir_itr_next(Ref1)). keydir_del_while_pending_test() -> Name = "k_del_while_pending_test", {not_ready, Ref1} = keydir_new(Name), Key = <<"abc">>, ok = keydir_put(Ref1, Key, 0, 1234, 0, 1), keydir_mark_ready(Ref1), ?assertEqual(#bitcask_entry{key = Key, file_id = 0, total_sz = 1234, offset = <<0:64/unsigned-native>>, tstamp = 1}, keydir_get_int(Ref1, Key)), {ready, Ref2} = keydir_new(Name), try %% Start keyfold iterator on Ref2 ok = keydir_itr(Ref2, -1, -1), %% Delete Key ?assertEqual(ok, keydir_remove(Ref1, Key)), ?assertEqual(not_found, keydir_get(Ref1, Key)), %% Keep iterating on Ref2 and check result is [Key] Fun = fun(IterKey, Acc) -> [IterKey | Acc] end, ?assertEqual([#bitcask_entry{key = Key, file_id = 0, total_sz = 1234, offset = 0, tstamp = 1}], keydir_fold_cont(keydir_itr_next(Ref2), Ref2, Fun, [])) after %% End iteration ok = keydir_itr_release(Ref2) end, %% Check key is deleted ?assertEqual(not_found, keydir_get(Ref1, Key)). keydir_create_del_while_pending_test() -> Name = "k_create_del_while_pending_test", {not_ready, Ref1} = keydir_new(Name), Key = <<"abc">>, keydir_mark_ready(Ref1), {ready, Ref2} = keydir_new(Name), try %% Start keyfold iterator on Ref2 ok = keydir_itr(Ref2, -1, -1), %% Delete Key ok = keydir_put(Ref1, Key, 0, 1234, 0, 1), ?assertEqual(#bitcask_entry{key = Key, file_id = 0, total_sz = 1234, offset = <<0:64/unsigned-native>>, tstamp = 1}, keydir_get_int(Ref1, Key)), ?assertEqual(ok, keydir_remove(Ref1, Key)), ?assertEqual(not_found, keydir_get(Ref1, Key)), %% Keep iterating on Ref2 and check result is [] it was started after iter Fun = fun(IterKey, Acc) -> [IterKey | Acc] end, ?assertEqual([], keydir_fold_cont(keydir_itr_next(Ref2), Ref2, Fun, [])) after %% End iteration ok = keydir_itr_release(Ref2) end, %% Check key is deleted ?assertEqual(not_found, keydir_get(Ref1, Key)). keydir_del_put_while_pending_test() -> Name = "k_del_put_while_pending_test", {not_ready, Ref1} = keydir_new(Name), Key = <<"abc">>, keydir_mark_ready(Ref1), {ready, Ref2} = keydir_new(Name), try %% Start keyfold iterator on Ref2 ok = keydir_itr(Ref2, -1, -1), %% Delete Key ?assertEqual(ok, keydir_remove(Ref1, Key)), ok = keydir_put(Ref1, Key, 0, 1234, 0, 1), ?assertEqual(#bitcask_entry{key = Key, file_id = 0, total_sz = 1234, offset = <<0:64/unsigned-native>>, tstamp = 1}, keydir_get_int(Ref1, Key)), %% Keep iterating on Ref2 and check result is [] it was started after iter Fun = fun(IterKey, Acc) -> [IterKey | Acc] end, ?assertEqual([], keydir_fold_cont(keydir_itr_next(Ref2), Ref2, Fun, [])) after %% End iteration ok = keydir_itr_release(Ref2) end, %% Check key is still present ?assertEqual(#bitcask_entry{key = Key, file_id = 0, total_sz = 1234, offset = <<0:64/unsigned-native>>, tstamp = 1}, keydir_get_int(Ref1, Key)). keydir_multi_put_during_itr_test() -> {not_ready, Ref} = bitcask_nifs:keydir_new("t"), bitcask_nifs:keydir_mark_ready(Ref), bitcask_nifs:keydir_put(Ref, <<"k">>, 123, 1, 0, 1), bitcask_nifs:keydir_itr(Ref, 0, 0), bitcask_nifs:keydir_put(Ref, <<"k">>, 123, 2, 10, 2), bitcask_nifs:keydir_put(Ref, <<"k">>, 123, 3, 20, 3), bitcask_nifs:keydir_put(Ref, <<"k">>, 123, 4, 30, 4), bitcask_nifs:keydir_itr_release(Ref). keydir_itr_out_of_date_test() -> Name = "keydir_itr_out_of_date_test", {not_ready, Ref1} = bitcask_nifs:keydir_new(Name), bitcask_nifs:keydir_mark_ready(Ref1), ok = bitcask_nifs:keydir_itr_int(Ref1, <<1000000:64/unsigned-native>>, 0, 0), {ready, Ref2} = bitcask_nifs:keydir_new(Name), %% now() will have ensured a new usecs for keydir_itr/3 - check out of date immediately ?assertEqual(out_of_date, bitcask_nifs:keydir_itr_int(Ref2, <<1000001:64/unsigned-native>>, 0, 0)), keydir_itr_release(Ref1), ?assertEqual(ok, receive ready -> ok after 1000 -> timeout end). keydir_itr_many_out_of_date_test() -> Name = "keydir_itr_many_out_of_date_test", {not_ready, Ref1} = bitcask_nifs:keydir_new(Name), bitcask_nifs:keydir_mark_ready(Ref1), ok = bitcask_nifs:keydir_itr_int(Ref1, <<1000000:64/unsigned-native>>, 0, 0), Me = self(), F = fun() -> {ready, Ref2} = bitcask_nifs:keydir_new(Name), Me ! {ready, self()}, out_of_date = bitcask_nifs:keydir_itr_int(Ref2, <<1000001:64/unsigned-native>>, 0, 0), receive ready -> Me ! {done, self()} end end, %% Check the pending_awaken array grows nicely Pids = [proc_lib:spawn_link(F) || _X <- lists:seq(1, 100)], ?assertEqual(lists:usort([receive {ready, Pid} -> ready after 500 -> {timeout, Pid} end || Pid <- Pids]), [ready]), %% Wake them up and check them. keydir_itr_release(Ref1), ?assertEqual(lists:usort([receive {done, Pid} -> ok after 500 -> {timeout, Pid} end || Pid <- Pids]), [ok]). keydir_itr_many_update_test() -> Name = "keydir_itr_many_update_test", {not_ready, Ref1} = bitcask_nifs:keydir_new(Name), bitcask_nifs:keydir_mark_ready(Ref1), ok = bitcask_nifs:keydir_itr_int(Ref1, <<1000000:64/unsigned-native>>, 0, 0), ok = keydir_put(Ref1, <<"key">>, 1, 2, 3, 4), Me = self(), F = fun() -> {ready, Ref2} = bitcask_nifs:keydir_new(Name), Me ! {ready, self()}, %% one update since created out_of_date = bitcask_nifs:keydir_itr_int(Ref2, <<1000000:64/unsigned-native>>, 0, 0), receive ready -> Me ! {done, self()} end end, %% Check the pending_awaken array grows nicely Pids = [proc_lib:spawn_link(F) || _X <- lists:seq(1, 100)], ?assertEqual(lists:usort([receive {ready, Pid} -> ready after 500 -> {timeout, Pid} end || Pid <- Pids]), [ready]), %% Wake them up and check them. keydir_itr_release(Ref1), ?assertEqual(lists:usort([receive {done, Pid} -> ok after 500 -> {timeout, Pid} end || Pid <- Pids]), [ok]). keydir_wait_pending_test() -> Name = "keydir_wait_pending_test", {not_ready, Ref1} = keydir_new(Name), keydir_mark_ready(Ref1), %% Begin iterating ok = bitcask_nifs:keydir_itr(Ref1, 0, 0), %% Spawn a process to wait on pending Me = self(), F = fun() -> {ready, Ref2} = keydir_new(Name), Me ! waiting, keydir_wait_pending(Ref2), Me ! waited end, spawn(F), %% Make sure it starts ok = receive waiting -> ok after 1000 -> start_err end, %% Give it a chance to call keydir_wait_pending then blocks timer:sleep(100), nothing = receive Msg -> {msg, Msg} after 1000 -> nothing end, %% End iterating - make sure the waiter wakes up keydir_itr_release(Ref1), ok = receive waited -> ok after 1000 -> timeout_err end. -ifdef(EQC). -define(POW_2(N), trunc(math:pow(2, N))). -define(QC_OUT(P), eqc:on_output(fun(Str, Args) -> io:format(user, Str, Args) end, P)). g_uint32() -> choose(0, ?POW_2(31)). g_uint64() -> choose(0, ?POW_2(62)). g_entry() -> #bitcask_entry{ key = non_empty(binary()), file_id = g_uint32(), total_sz = g_uint32(), offset = g_uint64(), tstamp = g_uint32() }. keydir_get_put_prop() -> ?FORALL(E, g_entry(), begin {ok, Ref} = keydir_new(), ok = keydir_put(Ref, E#bitcask_entry.key, E#bitcask_entry.file_id, E#bitcask_entry.total_sz, E#bitcask_entry.offset, E#bitcask_entry.tstamp), E2 = keydir_get(Ref, E#bitcask_entry.key), keydir_release(Ref), ?assertEqual(E, E2), true end). keydir_get_put_test_() -> {timeout, 60, fun() -> eqc:quickcheck(?QC_OUT(keydir_get_put_prop())) end}. -endif. -endif. erlang-bitcask-1.6.7+dfsg/src/bitcask_sup.erl000066400000000000000000000033131233730135600211370ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_sup). -behaviour(supervisor). -ifdef(PULSE). -compile({parse_transform, pulse_instrument}). -endif. %% API -export([start_link/0]). %% Supervisor callbacks -export([init/1]). %% Helper macro for declaring children of supervisor -define(CHILD(I, Type), {I, {I, start_link, []}, permanent, 5000, Type, [I]}). %% =================================================================== %% API functions %% =================================================================== start_link() -> supervisor:start_link({local, ?MODULE}, ?MODULE, []). %% =================================================================== %% Supervisor callbacks %% =================================================================== init([]) -> {ok, {{one_for_one, 5, 10}, [?CHILD(bitcask_merge_worker, worker), ?CHILD(bitcask_merge_delete, worker)]}}. erlang-bitcask-1.6.7+dfsg/src/bitcask_time.erl000066400000000000000000000035701233730135600212730ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2011 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_time). -export([tstamp/0]). -export([test__set_fudge/1, test__get_fudge/0, test__incr_fudge/1]). -define(KEY, bitcask_time_fudge). %% Return number of seconds since 1970 tstamp() -> test__get(?KEY). test__set_fudge(Amount) -> application:set_env(bitcask, ?KEY, Amount). test__get_fudge() -> test__get(?KEY). test__incr_fudge(Amount) -> test__set_fudge(test__get_fudge() + Amount). test__get(Key) -> %% Play games with local process dictionary to avoid looking %% at application controller's ETS table for every call. case get(Key) of undefined -> case application:get_env(bitcask, Key) of undefined -> put(Key, no_testing); _ -> put(Key, yes_testing) end, test__get(Key); no_testing -> {Mega, Sec, _Micro} = os:timestamp(), (Mega * 1000000) + Sec; yes_testing -> {ok, Fudge} = application:get_env(bitcask, Key), Fudge end. erlang-bitcask-1.6.7+dfsg/test/000077500000000000000000000000001233730135600163145ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/test/Run-eunit-loop.expect000077500000000000000000000077751233730135600224060ustar00rootroot00000000000000#!/usr/bin/expect -- ## usage: $0 eunit-command-as-a-single-string ## ## e.g. ## ## ./priv/Run-eunit-loop.expect "./rebar compile eunit apps=bitcask suite=bitcask_eqc" ## Reminder reminder reminder: never use single quotes ## Reminder reminder reminder: never use single quotes ## Reminder reminder reminder: never use single quotes set default_timeout 120 set timeout $default_timeout match_max -d 200100100 set eunit_command [lindex $argv 0] set threshold [lindex $argv 1] set sleeptime [lindex $argv 2] spawn bash set main_session $spawn_id proc msg_to_user {msg} { send_user "\n\n*** [exec date] $msg\r\n" } proc echo_and_say {msg} { msg_to_user $msg spawn say "$msg" expect eof upvar 1 main_session main_session set spawn_id $main_session } proc wait_for_shell_prompt {} { # My bash shell prompt looks like this: "bash-3.2$ " set bash_prompt_string "bash" expect $bash_prompt_string } msg_to_user "Now starting" set count 0 while {1} { send "$eunit_command\r" incr count msg_to_user "Running number $count" while {1} { expect { {Segmentation} { echo_and_say "Segmentation violation" #puts "cp /tmp/slf-stuff-just-in-case ./zzz.sigsegv.[exec date +%s]" #exec cp /tmp/slf-stuff-just-in-case ./zzz.sigsegv.[exec date +%s] sleep 2 wait_for_shell_prompt ; echo_and_say "Got prompt" break } {size_object} { echo_and_say "Bad tag" #puts "cp /tmp/slf-stuff-just-in-case ./zzz.bad-tag.[exec date +%s]" #exec cp /tmp/slf-stuff-just-in-case ./zzz.bad-tag.[exec date +%s] sleep 2 wait_for_shell_prompt ; echo_and_say "Got prompt" break } {deadlock} { echo_and_say "Deadlock" send "\003" ; sleep 1; send "\003" ; sleep 1; wait_for_shell_prompt ; echo_and_say "Got prompt" break } {Invariant broken} { msg_to_user "Invariant broken" #puts "cp /tmp/slf-stuff-just-in-case ./zzz.invariant-broken.[exec date +%s]" #exec cp /tmp/slf-stuff-just-in-case ./zzz.invariant-broken.[exec date +%s] send "\003" ; sleep 1; send "\003" ; sleep 1; wait_for_shell_prompt ; # echo_and_say "Got prompt" break } {Shrinking} { echo_and_say "Bad joss, Taipan. We are shrinking" set timeout 9999999 } {Unknown command for pulse} { set timeout $default_timeout echo_and_say "Drat, unknown command for pulse" #puts "cp /tmp/slf-stuff-just-in-case ./zzz.unknown-command.[exec date +%s]" #exec cp /tmp/slf-stuff-just-in-case ./zzz.unknown-command.[exec date +%s] send "\003" ; sleep 1; send "\003" ; sleep 1; wait_for_shell_prompt ; echo_and_say "Got prompt" break; } {ERROR:} { send_user "Exiting now" echo_and_say "Run finished, please check output" exit 1 } {Test passed} { wait_for_shell_prompt ; echo_and_say "Hooray, test passed" exit 0 } timeout { echo_and_say "Bummer, there was a timeout" #puts "cp /tmp/slf-stuff-just-in-case ./zzz.timeout.[exec date +%s]" #exec cp /tmp/slf-stuff-just-in-case ./zzz.timeout.[exec date +%s] # set foo 15 ; sleep 2 ; echo_and_say "I am going to sleep for $foo seconds to allow a control-z to suspend and debug" ; sleep $foo send "\003\r" ; sleep 1; send "\003\r" ; sleep 1; wait_for_shell_prompt ; echo_and_say "Got prompt" break } {.} { send_user "~" } } } } erlang-bitcask-1.6.7+dfsg/test/bcfold_perf000077500000000000000000000055711233730135600205170ustar00rootroot00000000000000#!/usr/bin/env escript -mode(compile). main(Args) when length(Args) >= 2 -> [DataDir | List] = Args, [begin test_small(DataDir, D), test_medium(DataDir,D), test_large(DataDir,D), test_cs(DataDir,D) end || D <- List]; main(_) -> usage(). usage() -> io:format("bcfold_perf +~n"), io:format("run bcfold_setup before running this~n"). test(DataDir, BranchDir, Subdir) -> Modlist = ensure_and_load_bitcask(BranchDir), time_folds(DataDir, Subdir), cleanup(Modlist). test_small(DataDir, BranchDir) -> test(DataDir, BranchDir, "small"). test_medium(DataDir, BranchDir) -> test(DataDir, BranchDir, "medium"). test_large(DataDir, BranchDir) -> test(DataDir, BranchDir, "large"). test_cs(DataDir, BranchDir) -> test(DataDir, BranchDir, "cs"). sum(_, _, A0) -> A0 + 1. sum(_, _, _, A0) -> A0 + 1. time_folds(DataDir, SubDir) -> clean_env(), %% this is basically a proxy for hintfile folds and %% the CRC check {OpenTime, Ref} = timer:tc(bitcask, open, [DataDir++SubDir++"/"]), %%bitcask:close(Ref), clean_env(), {ok, Fd1} = bitcask_fileops:open_file(DataDir++SubDir++"/1.bitcask.data"), {FoldDatafileKeyTime, Count} = timer:tc(bitcask_fileops, fold_keys, [Fd1, fun sum/4, 0, datafile]), bitcask_io:file_close(Fd1), clean_env(), {FoldDatafileTime, Count2} = timer:tc(bitcask, fold, [Ref, fun sum/3, 0]), io:format("Report for run: ~s~n", [SubDir]), io:format("Open: ~15w~n", [OpenTime]), io:format("Datafile Key Fold: ~15w~10w~n", [FoldDatafileKeyTime, Count]), io:format("Datafile Fold: ~15w~10w~n~n", [FoldDatafileTime, Count2]). clean_env() -> case os:type() of {unix, darwin} -> os:cmd("purge"); {unix, linux} -> io:format("if not root or called with sudo, this may fail~n"), os:cmd("echo 3 >/proc/sys/vm/drop_caches"); _ -> halt("unknown os") end. ensure_and_load_bitcask(BranchDir) -> Path = BranchDir ++ "/ebin/", Modlist = filelib:fold_files(Path, ".*.beam", false, fun(X, Acc) -> Mod0 = filename:rootname(filename:basename(X)), Mod = list_to_atom(Mod0), [Mod | Acc] end, []), code:add_path(Path), lists:map(fun code:load_abs/1, Modlist), code:del_path(Path), application:start(bitcask), application:set_env(bitcask, io_mode, erlang), Modlist. cleanup(Modlist) -> [begin code:delete(M), code:purge(M) end || M <- Modlist]. erlang-bitcask-1.6.7+dfsg/test/bcfold_setup000077500000000000000000000025701233730135600207170ustar00rootroot00000000000000#! /usr/bin/env escript main([BitcaskDir, DataDir]) -> load_bitcask(BitcaskDir), make_small(DataDir), make_medium(DataDir), make_large(DataDir), make_cs(DataDir). load_bitcask(Dir) -> Path = Dir ++ "/ebin/", Modlist = filelib:fold_files(Path, ".*.beam", false, fun(X, Acc) -> Mod0 = filename:rootname(filename:basename(X)), Mod = list_to_atom(Mod0), [Mod | Acc] end, []), code:add_path(Path), lists:map(fun code:load_abs/1, Modlist). make_small(Dir) -> make_dir(Dir++"/small/", 32, 100). make_medium(Dir) -> make_dir(Dir++"/medium/", 32, 2048). make_large(Dir) -> make_dir(Dir++"/large/", 32, 50*1024). make_cs(Dir) -> make_dir(Dir++"/cs/", 32, 1024*1024). make_dir(Dir, KeySz, BinSz) -> Ref = bitcask:open(Dir, [read_write]), %% header size + key size + binary size + ext term format overhead BinarySize = 14 + KeySz + BinSz + 12, %% 1GB NumObjs = (1073741824 div BinarySize) + 1, Key = crypto:rand_bytes(KeySz), Bin = crypto:rand_bytes(BinSz), [bitcask:put(Ref, <>, Bin) || X <- lists:seq(1, NumObjs)], bitcask:close(Ref). erlang-bitcask-1.6.7+dfsg/test/bctt000077500000000000000000000572761233730135600172170ustar00rootroot00000000000000#! /usr/bin/env escript %% -*- erlang -*- %%! -pz ../bitcask %% %% Bitcask Torture Tests %% %% Pre-populates a bitcask with a known range of keys, the value for %% each key stores the key itself and a sequence number for the write %% (initially 1). %% %% The test then continually rewrites all keys with the next sequence number %% while other processes read, fold over and merge the cask. %% %% Parameters: %% %% duration - number of milliseconds to run the test for. If 0 then %% only the initial write will take place. Default 0 ms. %% %% max_file_size - maximum file size within the bitcask in bytes. %% Default 10Mb. %% %% stats_freq - how often to output test status. Interval in ms. Default %% 10,000 ms. %% %% cask - name of bitcask to open %% %% num_keys - number of keys used in test %% %% readers - number of threads reading from the bitcask. Default 0. %% %% folders - number of threads calling bitcask:fold. Each fold checks %% all keys visited only once. A new process is created for %% each fold. Default 0. %% %% foldkeys - number of threads calling bitcask:fold. Each fold checks %% all keys visited only once. A new process is created for %% each fold. Default 0. %% %% mergers - if non-zero run a single merge thread. The merge thread %% is kicked by the writer thread if needs_merge returns %% true and passes the returned merge filenames. Default 0. %% %% needs_merge_freq - writer thread calls needs_merge after needs_merge_freq %% writes to ensure files are closed after merges. %% Default 1000. %% %% frag_merge_trigger - bitcask app env variables - set before running %% dead_bytes_merge_trigger %% frag_threshold %% dead_bytes_threshold %% small_file_threshold %% -module(bctt). -compile([export_all]). -include_lib("bitcask/include/bitcask.hrl"). -record(state, {seq = 0, reader_reps=0, folder_reps=0, fold_keys_reps=0, merger_reps=0, merges_pending=0, duration, status_freq = 10000, cask = "bctt.bc", num_keys=16384, writer_pid, restart_writer=false, writers=1, needs_merge_freq = 1000, frag_merge_trigger, % Env default trigger on 60% fragmentation dead_bytes_merge_trigger, % Env default trigger on dead bytes > 512 MB frag_threshold, % Include merge >= 40% fragmentation dead_bytes_threshold, % Include merge dead bytes > 128 MB small_file_threshold, % Include merge file is < 10 MB max_fold_age = -1, % Frozen keydir can be as old as you like max_fold_puts = 0, % as long as there are no updates readers=0, folders=0, foldkeys=0, mergers=0, max_file_size=10*1024*1024, open_timeout=undefined}). %% Function to run from inside beam test() -> test([]). test(Opts) -> {ok, State} = process_args(Opts, #state{}), print_params(State), proc_lib:spawn(fun() -> do_test(State) end). %% Escript version main() -> main([]). main(Args) -> io:format("PWD: ~p\n", [file:get_cwd()]), try case process_args([parse_arg(Arg) || Arg <- Args], #state{}) of {ok, State} -> print_params(State), ensure_bitcask(), ensure_deps(), set_bitcask_env(State), do_test(State); syntax -> syntax(), halt(0) end catch _:Why -> io:format("Failed: ~p\n", [Why]), halt(1) end. syntax() -> io:format("bctt [duration=Msecs]\n" " [cask=CaskFile]\n" " [num_keys=NumKeys]\n" " [readers=NumReaders]\n" " [folders=NumFolders]\n" " [foldkeys=NumFoldKeys]\n" " [mergers=NumMergers]\n" " [max_file_size=Bytes] # set 0 for defaults\n" " [open_timeout=Secs]\n" " [restart_writer=true|false]\n"). do_test(State0) -> erlang:process_flag(trap_exit, true), os:cmd("rm -rf " ++ State0#state.cask), %% Put a base of keys - each value has {Key, Seq}, starting from 1. io:format("\nInitial populate.\n"), State1 = start_writer(State0), kick_writer(State1), wait_for_writer(State1), %% Start continually rewriting the keys and optionally reading, %% folding and merging State = State1#state{seq = 1}, start_merger(State, State#state.mergers), kick_writer(State), start_readers(State, State#state.readers), start_folders(State, State#state.folders), start_fold_keys(State, State#state.foldkeys), schedule_status(State), case State#state.duration of undefined -> self() ! stop; Duration -> timer:send_after(Duration, self(), stop) end, io:format("Starting test.\n"), EndState = restart_procs(State), stop_writer(EndState), wait_for_procs(EndState). restart_procs(State) -> receive Msg -> ok end, try case Msg of stop -> io:format("Test ending...\n"), State; status -> io:format("Writer seq: ~p Readers=~p Folders=~p FoldKeys=~p Merges=~p MergesPending=~p\n", [State#state.seq, State#state.reader_reps, State#state.folder_reps, State#state.fold_keys_reps, State#state.merger_reps, State#state.merges_pending]), schedule_status(State), restart_procs(State); {write_done, WriteSeq} -> true = (State#state.seq+1 =:= WriteSeq), NewState = State#state{seq = WriteSeq}, case State#state.restart_writer of true -> stop_writer(State); false -> kick_writer(NewState) end, restart_procs(NewState); write_exit -> State1 = start_writer(State), kick_writer(State1), restart_procs(State1); merge_pending -> restart_procs(State#state{merges_pending = State#state.merges_pending+1}); merge_done -> restart_procs(State#state{merges_pending = State#state.merges_pending-1, merger_reps = State#state.merger_reps+1}); read_done -> start_readers(State, 1), restart_procs(State#state{reader_reps = State#state.reader_reps+1}); fold_done -> start_folders(State, 1), restart_procs(State#state{folder_reps = State#state.folder_reps+1}); fold_keys_done -> start_fold_keys(State, 1), restart_procs(State#state{fold_keys_reps = State#state.fold_keys_reps+1}); {'EXIT', _From, normal} -> restart_procs(State); {'EXIT', From, Reason} -> io:format("Test process ~p died: ~p\nState: ~p\n", [From, Reason, State]), State; Other -> io:format("Restart procs got unexpected message: ~p\n", [Other]), State end catch What:Err -> io:format("restart_proc: ~p ~p\nMsg: ~p\nState: ~p\n", [What, Err, Msg, State]), State end. %% Wait for the initial writer to complete - the os:cmd call %% can generate an EXIT message wait_for_writer(State) -> WriterPid = State#state.writer_pid, receive {'EXIT', WriterPid, Why} -> erlang:error({initial_write_failed, Why}); {'EXIT', _Pid, _Why} -> wait_for_writer(State); {write_done, 1} -> ok end. wait_for_procs(#state{writers = 0, readers = 0, folders = 0, foldkeys = 0, merges_pending = 0}) -> catch merger ! exit, io:format("Test complete\n"); wait_for_procs(State) -> receive stop -> io:format("Wait for procs got stop message pid ~p\n", [self()]), wait_for_procs(State); status -> wait_for_procs(State); read_done -> wait_for_procs(State#state{readers = State#state.readers - 1}); fold_done -> wait_for_procs(State#state{folders = State#state.folders - 1}); fold_keys_done -> wait_for_procs(State#state{foldkeys = State#state.foldkeys - 1}); merge_pending -> %% The writer could still be adding them as we try to shut down. wait_for_procs(State#state{merges_pending = State#state.merges_pending + 1}); merge_done -> wait_for_procs(State#state{merges_pending = State#state.merges_pending - 1, merger_reps = State#state.merger_reps+1}); {write_done, _WriteSeq} -> wait_for_procs(State); write_exit -> wait_for_procs(State#state{writers = State#state.writers - 1}); {'EXIT', _From, normal} -> wait_for_procs(State); {'EXIT', From, Reason} -> io:format("Test process ~p died\n~p\n", [From, Reason]); Other -> io:format("Wait for procs got unexpected message: ~p\n", [Other]) end. schedule_status(State) -> case State#state.status_freq of undefined -> ok; StatusFreq -> timer:send_after(StatusFreq, self(), status) end. start_writer(State) -> Caller = self(), Pid = proc_lib:spawn_link(fun() -> Opts = writer_opts(State), %% Until closing stale file handles resolved Ref = bitcask:open(State#state.cask, Opts), write_proc(Ref, Caller) end), %%X io:format("Started writer pid ~p\n", [Pid]), State#state{writer_pid = Pid}. writer_opts(State) -> lists:flatten([ [read_write], case State#state.max_file_size of Size when is_integer(Size), Size > 0-> [{max_file_size, Size}]; _ -> [] end, case State#state.open_timeout of OpenTimeout when is_integer(OpenTimeout) -> [{open_timeout, OpenTimeout}]; _ -> [] end]). start_readers(_State, 0) -> ok; start_readers(State, NumReaders) -> Caller = self(), spawn_worker(reader, fun() -> read_proc(State#state.cask, State#state.num_keys, Caller) end), start_readers(State, NumReaders - 1). start_folders(_State, 0) -> ok; start_folders(State, NumFolders) -> Caller = self(), spawn_worker(folder, fun() -> fold_proc(State#state.cask, State#state.num_keys, Caller) end), start_folders(State, NumFolders - 1). start_fold_keys(_State, 0) -> ok; start_fold_keys(State, NumFoldKeys) -> Caller = self(), spawn_worker(fold_keys, fun() -> fold_keys_proc(State#state.cask, State#state.num_keys, Caller) end), start_fold_keys(State, NumFoldKeys - 1). start_merger(_State, 0) -> ok; % no merger, messages to it will be dropped start_merger(State, _NumMergers) -> % non-zero mergers kicks it off Caller = self(), spawn_worker(merger, fun() -> register(merger, self()), merge_proc(State#state.cask, Caller) end). spawn_worker(Type, Fun) -> proc_lib:spawn(fun() -> try Fun() catch _:Err -> io:format("~p CRASHED ~p: ~p\n", [Type, self(), Err]), throw(Err) end end). kick_writer(State) -> State#state.writer_pid ! {start, State#state.seq + 1, State#state.num_keys, State#state.needs_merge_freq}. stop_writer(State) -> %%X io:format("Stopping writer ~p\n", [State#state.writer_pid]), MRef = erlang:monitor(process, State#state.writer_pid), State#state.writer_pid ! stop, receive {'DOWN', MRef, _, _, _} -> %%X io:format("Stopped writer ~p\n", [State#state.writer_pid]), ok after 60000 -> erlang:error({writer_pid_timeout, State#state.writer_pid}) end. write_proc(Ref, Caller) -> receive stop -> %%X io:format("Writer ~p received stop request\n", [self()]), Caller ! write_exit; {start, Seq, NumKeys, NeedsMergeFreq} -> %% io:format("Writer starting\n"), write(Ref, NumKeys, Seq, NeedsMergeFreq, Caller), application:set_env(bitcask, minseq, Seq), Caller ! {write_done, Seq}, write_proc(Ref, Caller) end. write(_Ref, 0, _Seq, _NeedsMergeFreq, _Caller) -> ok; write(Ref, Key, Seq, NeedsMergeFreq, Caller) -> try case (Key rem NeedsMergeFreq) == 0 of true -> case bitcask:needs_merge(Ref) of {true, Filenames} -> Caller ! merge_pending, %% Try and kick the merger, may %% not be configured to run. catch merger ! {kick_merge, Filenames}; false -> ok end; _ -> ok end catch _:Err1 -> io:format(user, "NeedsMerge ~p: ~p\n", [Key, Err1]) end, try ok = bitcask:put(Ref, <>, term_to_binary({Key, Seq})) catch _:Err2 -> io:format(user, "Put ~p: ~p\n", [Key, Err2]) end, write(Ref, Key - 1, Seq, NeedsMergeFreq, Caller). read_proc(Cask, NumKeys, Caller) -> Ref = bitcask:open(Cask), {ok, Seq} = application:get_env(bitcask, minseq), %io:format("read_proc starting: minseq=~p\n", [Seq]), read(Ref, NumKeys, Seq), bitcask:close(Ref), Caller ! read_done. read(_Ref, 0, _MinSeq) -> ok; read(Ref, Key, MinSeq) -> try {ok, Bin} = bitcask:get(Ref, <>), {Key, Seq} = binary_to_term(Bin), case Seq >= MinSeq of true -> ok; false -> io:format("Read ~p Got: ~p Expected(>=): ~p\n", [Key, Seq, MinSeq]) end catch _:Err -> io:format(user, "Get ~p: ~p\n", [Key, Err]) end, read(Ref, Key - 1, MinSeq). fold_proc(Cask, NumKeys, Caller) -> Ref = bitcask:open(Cask), fold(Ref, NumKeys), bitcask:close(Ref), Caller ! fold_done. fold(Ref, NumKeys) -> {ok, MinSeq} = application:get_env(bitcask, minseq), Folder = fun(<>, Bin, Keys) -> %% Lookup minium sequence on first pass through {Key, Seq} = binary_to_term(Bin), case Seq >= MinSeq of true -> ok; _ -> io:format("fold returned early seq for ~p. " "MinExpected: ~p Returned: ~p\n", [Key, MinSeq, Seq]) end, [Key | Keys] end, FoldedKeys = bitcask:fold(Ref, Folder, []), check_fold(1, NumKeys, lists:sort(FoldedKeys)). fold_keys_proc(Cask, NumKeys, Caller) -> Ref = bitcask:open(Cask), fold_keys(Ref, NumKeys), bitcask:close(Ref), Caller ! fold_keys_done. fold_keys(Ref, NumKeys) -> Folder = fun(#bitcask_entry{key = <>}, Keys) -> %io:format(user, "FoldedKey: ~p\n", [Key]), [Key | Keys] end, FoldedKeys = bitcask:fold_keys(Ref, Folder, []), check_fold(1, NumKeys, lists:sort(FoldedKeys)). check_fold(Key, MaxKey, []) when Key == MaxKey + 1 -> ok; check_fold(Key, _MaxKey, []) -> io:format("Fold missing key ~p (stopping searching)\n", [Key]); check_fold(Key, MaxKey, [Key | Rest]) -> check_fold(Key + 1, MaxKey, Rest); check_fold(Key1, _MaxKey, [_Key2 | _Rest]) -> io:format("Fold missing key ~p (stopping searching)\n", [Key1]). merge_proc(Cask, Caller) -> receive {kick_merge, Filenames} -> try ok = bitcask:merge(Cask, [], Filenames) catch %% Maybe keydir is being loaded _:{error, not_ready} -> ok end, Caller ! merge_done, merge_proc(Cask, Caller); stop -> ok end. ensure_bitcask() -> case code:ensure_loaded(bitcask) of {module, bitcask} -> ok; _ -> {ok, Cwd} = file:get_cwd(), find_bitcask(filename:split(Cwd)) end. %% Look for bitcask.beam in Cwd and Cwd/ebin find_bitcask(["/"]) -> erlang:error("Could not find bitcask\n"); find_bitcask(Cwd) -> case try_bitcask_dir(Cwd) of true -> ok; false -> case try_bitcask_dir(Cwd ++ ["ebin"]) of true -> ok; false -> find_bitcask(parent_dir(Cwd)) end end. try_bitcask_dir(Dir) -> CodeDir = filename:join(Dir), Beam = bitcask_beam(CodeDir), io:format("Looking for bitcask in \"~s\".\n", [CodeDir]), case filelib:is_regular(Beam) of true -> io:format("Adding bitcask dir \"~s\".\n", [CodeDir]), code:add_pathz(CodeDir), {module, bitcask} = code:ensure_loaded(bitcask), true; _ -> false end. ensure_deps() -> BitcaskBeam = code:where_is_file("bitcask.beam"), BitcaskDir = parent_dir(filename:split(filename:dirname(BitcaskBeam))), Pattern = filename:join(BitcaskDir) ++ "/deps/*/ebin", Deps = filelib:wildcard(Pattern), AddDepDir = fun(DepDir) -> io:format("Adding dependency dir \"~s\".\n", [DepDir]), code:add_pathz(DepDir) end, lists:foreach(AddDepDir, Deps). parent_dir([]) -> ["/"]; parent_dir(["/"]) -> ["/"]; parent_dir(Dirs) -> lists:reverse(tl(lists:reverse(Dirs))). bitcask_beam(Cwd) -> filename:join(Cwd, ["bitcask" ++ code:objfile_extension()]). set_bitcask_env(State) -> application:load(bitcask), set_env(frag_merge_trigger, State#state.frag_merge_trigger), set_env(dead_bytes_merge_trigger, State#state.dead_bytes_merge_trigger), set_env(frag_threshold, State#state.frag_threshold), set_env(dead_bytes_threshold, State#state.dead_bytes_threshold), set_env(small_file_threshold, State#state.small_file_threshold), set_env(max_fold_age, State#state.max_fold_age), set_env(max_fold_puts, State#state.max_fold_puts), io:format("Bitcask AppEnv:\n~p\n", [application:get_all_env(bitcask)]). set_env(_, undefined) -> ok; set_env(Var, Val) -> application:set_env(bitcask, Var, Val). process_args([], State) -> {ok, State}; process_args([Arg | Rest], State) -> case process_arg(Arg, State) of {ok, NewState} -> process_args(Rest, NewState); Reason -> Reason end. process_arg({help, _}, _State) -> syntax; process_arg({Name, Val}, State) when Name =:= duration; Name =:= status_freq; Name =:= num_keys; Name =:= readers; Name =:= folders; Name =:= foldkeys; Name =:= mergers; Name =:= max_file_size; Name =:= open_timeout; Name =:= needs_merge_freq; Name =:= frag_merge_trigger; Name =:= dead_bytes_merge_trigger; Name =:= frag_threshold; Name =:= dead_bytes_threshold; Name =:= small_file_threshold -> case is_integer(Val) of true -> {ok, setelement(get_state_index(Name), State, Val)}; false -> {ok, setelement(get_state_index(Name), State, list_to_integer(Val))} end; process_arg({Name, Val}, State) when Name =:= restart_writer -> case is_atom(Val) of true -> {ok, setelement(get_state_index(Name), State, Val)}; false -> {ok, setelement(get_state_index(Name), State, list_to_atom(Val))} end; process_arg({Name, Val}, State) -> {ok, setelement(get_state_index(Name), State, Val)}. parse_arg([$- | Arg]) -> % strip leading --'s parse_arg(Arg); parse_arg(Arg) -> case string:tokens(Arg, "=") of [NameStr] -> Val = undefined; [NameStr, Val] -> ok; _ -> NameStr = Val = undefined, erlang:error({badarg, Arg}) end, case catch list_to_existing_atom(NameStr) of {'EXIT', {badarg, _}} -> Name = undefined, erlang:error({badarg, NameStr}); Name -> ok end, {Name, Val}. get_state_index(Name) -> get_state_index(Name, 2, record_info(fields, state)). % first element is 'state' get_state_index(Name, _Index, []) -> io:format("Cannot find index in state for ~p\n", [Name]), erlang:error({badarg, Name}); get_state_index(Name, Index, [Name | _Rest]) -> Index; get_state_index(Name, Index, [_OtherName | Rest]) -> get_state_index(Name, Index + 1, Rest). print_params(State) -> io:format("Bitcask Test\n"), io:format("duration: ~s\n", [format_duration(State#state.duration)]), io:format("cask: ~s\n", [State#state.cask]), io:format("num_keys: ~b\n", [State#state.num_keys]), io:format("readers: ~b\n", [State#state.readers]), io:format("folders: ~b\n", [State#state.folders]), io:format("foldkeys: ~b\n", [State#state.foldkeys]), io:format("mergers: ~b\n", [State#state.mergers]), io:format("max_file_size: ~s\n", [format_max_file_size(State#state.max_file_size)]), io:format("needs_merge_freq: ~b\n", [State#state.needs_merge_freq]), io:format("open_timeout: ~s\n", [format_timeout(State#state.open_timeout)]), io:format("\n"). format_duration(undefined) -> "once"; format_duration(Duration) -> io_lib:format("~p ms", [Duration]). format_timeout(undefined) -> "default"; format_timeout(Secs) -> io_lib:format("~b s", [Secs]). format_max_file_size(MaxFileSize) when is_integer(MaxFileSize), MaxFileSize > 0 -> io_lib:format("~b", [MaxFileSize]); format_max_file_size(_) -> "default". erlang-bitcask-1.6.7+dfsg/test/bitcask_qc.erl000066400000000000000000000312161233730135600211260ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_qc). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -include_lib("eunit/include/eunit.hrl"). -include("bitcask.hrl"). -compile(export_all). -define(QC_OUT(P), eqc:on_output(fun(Str, Args) -> io:format(user, Str, Args) end, P)). -define(TEST_TIME, 30). % seconds -record(m_fstats, {key_bytes=0, live_keys=0, live_bytes=0, total_keys=0, total_bytes=0}). qc(P) -> qc(P, ?TEST_TIME). qc(P, TestTime) -> ?assert(eqc:quickcheck(?QC_OUT(eqc:testing_time(TestTime, P)))). keys() -> eqc_gen:non_empty(list(eqc_gen:non_empty(binary()))). values() -> eqc_gen:non_empty(list(binary())). ops(Keys, Values) -> {oneof([put, delete, itr, itr_next, itr_release]), oneof(Keys), oneof(Values)}. apply_kv_ops([], Ref, KVs0, Fstats) -> bitcask_nifs:keydir_itr_release(get_keydir(Ref)), % release any iterators {KVs0, Fstats}; apply_kv_ops([{put, K, V} | Rest], Ref, KVs0, Fstats0) -> ok = bitcask:put(Ref, K, V), apply_kv_ops(Rest, Ref, orddict:store(K, V, KVs0), update_fstats(put, K ,orddict:find(K, KVs0), V, Fstats0)); apply_kv_ops([{delete, K, _} | Rest], Ref, KVs0, Fstats0) -> ok = bitcask:delete(Ref, K), apply_kv_ops(Rest, Ref, orddict:store(K, deleted, KVs0), update_fstats(delete, K, orddict:find(K, KVs0), ?TOMBSTONE, Fstats0)); apply_kv_ops([{itr, _K, _} | Rest], Ref, KVs, Fstats) -> %% Don't care about result, just want to intermix with get/put bitcask_nifs:keydir_itr(get_keydir(Ref), -1, -1), apply_kv_ops(Rest, Ref, KVs, Fstats); apply_kv_ops([{itr_next, _K, _} | Rest], Ref, KVs, Fstats) -> %% Don't care about result, just want to intermix with get/put bitcask_nifs:keydir_itr_next(get_keydir(Ref)), apply_kv_ops(Rest, Ref, KVs, Fstats); apply_kv_ops([{itr_release, _K, _} | Rest], Ref, KVs, Fstats) -> %% Don't care about result, just want to intermix with get/put bitcask_nifs:keydir_itr_release(get_keydir(Ref)), apply_kv_ops(Rest, Ref, KVs, Fstats). update_fstats(delete, K, OldV, NewV, Fstats0) -> %% Delete existing key (i.e. write tombstone) %% Delete issues a put with the tombstone Fstats1 = update_fstats(put, K, OldV, NewV, Fstats0), %% Then removes from the keydir #m_fstats{key_bytes = KB, live_keys = LK, live_bytes = LB} = Fstats1, TotalSz = total_sz(K, NewV), % remove the tombstone Fstats1#m_fstats{key_bytes = KB - size(K), live_keys = LK - 1, live_bytes = LB - TotalSz}; %% Update m_fstats record - this will be the aggregate of all files in the bitcask update_fstats(put, K, ErrDel, NewV, #m_fstats{key_bytes = KB, live_keys = LK, live_bytes = LB, total_keys = TK, total_bytes = TB} = Fstats) when ErrDel =:= error; ErrDel =:= {ok, deleted} -> %% Add for first time or update after deletion NewTotalSz = total_sz(K, NewV), Fstats#m_fstats{key_bytes = KB + size(K), live_keys = LK + 1, live_bytes = LB + NewTotalSz, total_keys = TK + 1, total_bytes = TB + NewTotalSz}; update_fstats(put, K, {ok, OldV}, NewV, #m_fstats{live_bytes = LB, total_keys = TK, total_bytes = TB} = Fstats) -> %% update existing key OldTotalSz = total_sz(K, OldV), NewTotalSz = total_sz(K, NewV), Fstats#m_fstats{live_bytes = LB + NewTotalSz - OldTotalSz, total_keys = TK + 1, total_bytes = TB + NewTotalSz}. check_fstats(Ref, Expect) -> Aggregate = fun({_FileId, FileLiveCount, FileTotalCount, FileLiveBytes, FileTotalBytes, _FileOldestTstamp, _FileNewestTstamp}, {LiveCount0, TotalCount0, LiveBytes0, TotalBytes0}) -> {LiveCount0 + FileLiveCount, TotalCount0 + FileTotalCount, LiveBytes0 + FileLiveBytes, TotalBytes0 + FileTotalBytes} end, {KeyCount, KeyBytes, Fstats, _} = bitcask_nifs:keydir_info(get_keydir(Ref)), {LiveCount, TotalCount, LiveBytes, TotalBytes} = lists:foldl(Aggregate, {0, 0, 0, 0}, Fstats), ?assert(Expect#m_fstats.live_keys >= 0), ?assert(Expect#m_fstats.key_bytes >= 0), ?assert(Expect#m_fstats.live_keys >= 0), ?assert(Expect#m_fstats.live_bytes >= 0), ?assert(Expect#m_fstats.total_keys >= 0), ?assert(Expect#m_fstats.total_bytes >= 0), ?assertEqual(Expect#m_fstats.live_keys, KeyCount), ?assertEqual(Expect#m_fstats.key_bytes, KeyBytes), ?assertEqual(Expect#m_fstats.live_keys, LiveCount), ?assertEqual(Expect#m_fstats.live_bytes, LiveBytes), ?assertEqual(Expect#m_fstats.total_keys, TotalCount), ?assertEqual(Expect#m_fstats.total_bytes, TotalBytes). check_model(Ref, Model) -> F = fun({K, deleted}) -> ?assertEqual(not_found, bitcask:get(Ref, K)); ({K, V}) -> ?assertEqual({ok, V}, bitcask:get(Ref, K)) end, lists:map(F, Model). total_sz(K, V) -> % Total size of bitcask entry in bytes ((32 + % crc 32 + % tstamps 16 + % key size 32) div 8) + % val size size(K) + size(V). prop_merge() -> ?LET({Keys, Values}, {keys(), values()}, ?FORALL({Ops, M1, M2}, {eqc_gen:non_empty(list(ops(Keys, Values))), choose(1,128), choose(1,128)}, begin ?cmd("rm -rf /tmp/bc.prop.merge"), %% Open a bitcask, dump the ops into it and build %% a model of what SHOULD be in the data. Ref = bitcask:open("/tmp/bc.prop.merge", [read_write, {max_file_size, M1}]), try {Model, Fstats} = apply_kv_ops(Ops, Ref, [], #m_fstats{}), check_fstats(Ref, Fstats), check_model(Ref, Model), %% Apply the merge -- note that we keep the %% bitcask open so that a live keydir is %% available to the merge. Run in a seperate %% process so it gets cleaned up on crash %% so quickcheck can shrink correctly. Me = self(), proc_lib:spawn( fun() -> try Me ! bitcask:merge("/tmp/bc.prop.merge", [{max_file_size, M2}]) catch _:Err -> Me ! Err end end), receive X -> ?assertEqual(ok, X) end, %% Call needs_merge to close any "dead" files bitcask:needs_merge(Ref), %% Traverse the model and verify that retrieving %% each key returns the expected value. It's %% important to note that the model keeps %% tombstones on deleted values so we can attempt %% to retrieve those deleted values and check the %% corresponding tombstone path in bitcask. %% Verify that the bitcask contains exactly what %% we expect check_model(Ref, Model), true after bitcask:close(Ref) end, %% For each of the data files, validate that it has a valid hint file Validate = fun(Fname) -> {ok, S} = bitcask_fileops:open_file(Fname), try ?assertEqual(true, bitcask_fileops:has_valid_hintfile(S)) after bitcask_fileops:close(S) end end, [Validate(Fname) || {_Ts, Fname} <- bitcask_fileops:data_file_tstamps("/tmp/bc.prop.merge")], true end)). prop_fold() -> ?LET({Keys, Values, FoldOp}, {keys(), values(), oneof([fold, fold_keys])}, ?FORALL({Ops, M1}, {eqc_gen:non_empty(list(ops(Keys, Values))), choose(1,128)}, begin ?cmd("rm -rf /tmp/bc.prop.fold"), %% Open a bitcask, dump the ops into it and build %% a model of what SHOULD be in the data. Ref = bitcask:open("/tmp/bc.prop.fold", [read_write, {max_file_size, M1}]), try {Model, Fstats} = apply_kv_ops(Ops, Ref, [], #m_fstats{}), check_fstats(Ref, Fstats), %% Build a list of the K/V pairs available to fold Actual = case FoldOp of fold_keys -> bitcask:fold_keys(Ref, fun(E, Acc0) -> K = E#bitcask_entry.key, {ok, V} = bitcask:get(Ref, K), [{K, V} | Acc0] end, []); fold -> bitcask:fold(Ref, fun(K, V, Acc0) -> [{K, V} | Acc0] end, []) end, %% Traverse the model and verify that retrieving %% each key returns the expected value. It's %% important to note that the model keeps %% tombstones on deleted values so we can attempt %% to retrieve those deleted values and check the %% corresponding tombstone path in bitcask. %% Verify that the bitcask contains exactly what %% we expect F = fun({K, deleted}) -> ?assert(false == lists:keymember(K, 1, Actual)); ({K, V}) -> ?assertEqual({K, V}, lists:keyfind(K, 1, Actual)) end, lists:map(F, Model) after bitcask:close(Ref) end, true end)). prop_merge_test_() -> {timeout, ?TEST_TIME*2, fun() -> qc(prop_merge()) end}. merge1_test() -> ?assert(eqc:check(prop_merge(), [{[{put,<<0>>,<<>>},{delete,<<0>>,<<>>}],1,1}])). merge2_test() -> ?assert(eqc:check(prop_merge(), [{[{put,<<1>>,<<>>},{delete,<<0>>,<<>>}],1,1}])). merge3_test() -> ?assert(eqc:check(prop_merge(), [{[{put,<<0>>,<<>>}, {delete,<<0>>,<<>>}, {delete,<<1>>,<<>>}], 1,1}])). prop_fold_test_() -> {timeout, ?TEST_TIME*2, fun() -> qc(prop_fold()) end}. get_keydir(Ref) -> element(8, erlang:get(Ref)). -endif. erlang-bitcask-1.6.7+dfsg/test/bitcask_qc_expiry.erl000066400000000000000000000154331233730135600225310ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2011 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_qc_expiry). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -include_lib("eunit/include/eunit.hrl"). -include("bitcask.hrl"). -compile(export_all). -define(QC_OUT(P), eqc:on_output(fun(Str, Args) -> io:format(user, Str, Args) end, P)). -define(TEST_TIME, 30). % seconds qc(P) -> qc(P, ?TEST_TIME). qc(P, TestTime) -> ?assert(eqc:quickcheck(?QC_OUT(eqc:testing_time(TestTime, P)))). keys() -> eqc_gen:non_empty(list(eqc_gen:non_empty(binary()))). values() -> eqc_gen:non_empty(list(binary())). ops(Keys, Values) -> {oneof([put, delete]), oneof(Keys), oneof(Values)}. apply_kv_ops([], _Ref, KVs0) -> KVs0; apply_kv_ops([{put, K, V} | Rest], Ref, KVs0) -> ok = bitcask:put(Ref, K, V), apply_kv_ops(Rest, Ref, orddict:store({K, write_file(Ref)}, {V, current_tstamp()}, KVs0)); apply_kv_ops([{delete, K, _} | Rest], Ref, KVs0) -> ok = bitcask:delete(Ref, K), apply_kv_ops(Rest, Ref, orddict:store({K, write_file(Ref)}, {deleted, current_tstamp()}, KVs0)). write_file(Ref) -> %% Extract active write_file handle from Bitcask ref element(3, erlang:get(Ref)). current_tstamp() -> case erlang:get(meck_tstamp) of undefined -> erlang:error(uninitialized_meck_tstamp); Value -> Value end. next_tstamp() -> Ts = case erlang:get(meck_tstamp) of undefined -> 1; Tstamp -> Tstamp + erlang:get(meck_tstamp_step) end, erlang:put(meck_tstamp, Ts), Ts. set_tstamp(Tstamp) -> erlang:put(meck_tstamp, Tstamp). set_tstamp_step(Step) -> erlang:put(meck_tstamp_step, Step). prop_expiry() -> ?LET({Keys, Values}, {keys(), values()}, ?FORALL({Ops, Expiry, ExpiryGrace, Timestep, M1}, {eqc_gen:non_empty(list(ops(Keys, Values))), choose(1,10), choose(1, 10), choose(5, 50), choose(5,128)}, ?IMPLIES(length(Ops) > 3, begin Dirname = "/tmp/bc.prop.expiry", ?cmd("rm -rf " ++ Dirname), %% Initialize how many ticks each operation will %% increment the clock by set_tstamp(undefined), set_tstamp_step(Timestep), Bref = bitcask:open(Dirname, [read_write, % {log_needs_merge, true}, {frag_merge_trigger, disabled}, {dead_bytes_merge_trigger, disabled}, {small_file_threshold, disabled}, {frag_threshold, disabled}, {expiry_secs, Expiry}, {expiry_grace_secs, ExpiryGrace}, {max_file_size, M1}]), try %% Dump the ops into the bitcask and build a model of %% what SHOULD be in the data. Model = apply_kv_ops(Ops, Bref, []), %% Close the writing file to ensure that it's included %% in the needs_merge calculation bitcask:close_write_file(Bref), %% Identify items in the Model that should be expired ExpireCutoff = erlang:max(current_tstamp() + Timestep - erlang:max(Expiry - ExpiryGrace, 0), -1), {Expired, _Live} = lists:partition(fun({_K, {_Value, Tstamp}}) -> Tstamp < ExpireCutoff end, Model), % io:format(user, "Cutoff: ~p\nExpired: ~120p\nLive: ~120p\n", % [ExpireCutoff, Expired, Live]), %% Check that needs_merge has expected result case Expired of [] -> ?assertEqual(false, bitcask:needs_merge(Bref)), true; _ -> ?assertMatch({true, _}, bitcask:needs_merge(Bref)), true end catch X:Y -> io:format(user, "exception: ~p ~p @ ~p\n", [X,Y, erlang:get_stacktrace()]) after bitcask:close(Bref) end end))). prop_expiry_test_() -> {timeout, ?TEST_TIME*2, fun() -> try meck:new(bitcask_time, [passthrough]), meck:expect(bitcask_time, tstamp, fun next_tstamp/0), qc(prop_expiry()) after meck:unload() end end}. validate_expired([], _) -> ok; validate_expired([{_K, {deleted, _}} | Rest], Actual) -> validate_expired(Rest, Actual); validate_expired([{K, {Value, _Tstamp}} | Rest], Actual) -> % ?debugFmt("~p (~p) should be expired; actual: ~p\n", [K, Tstamp, Actual]), ?assert(not lists:member({K, Value}, Actual)), validate_expired(Rest, Actual). validate_live([], _) -> ok; validate_live([{K, {deleted, _}} | Rest], Actual) -> % ?debugFmt("~p should be deleted; actual: ~p\n", [K, Actual]), ?assert(not lists:keymember(K, 1, Actual)), validate_live(Rest, Actual); validate_live([{K, {Value, _}} | Rest], Actual) -> % ?debugFmt("~p should have value ~p; actual: ~p\n", [K, Value, Actual]), ?assert(lists:member({K, Value}, Actual)), validate_live(Rest, Actual). -endif. erlang-bitcask-1.6.7+dfsg/test/bitcask_qc_fsm.erl000066400000000000000000000157361233730135600220040ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2010 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_qc_fsm). -ifdef(EQC). -include_lib("eqc/include/eqc.hrl"). -include_lib("eqc/include/eqc_fsm.hrl"). -include_lib("kernel/include/file.hrl"). -include_lib("eunit/include/eunit.hrl"). -compile(export_all). -record(state,{ bitcask, data = [], keys }). %% Keys to use in the test -define(QC_OUT(P), eqc:on_output(fun(Str, Args) -> io:format(user, Str, Args) end, P)). -define(TEST_DIR, "/tmp/bitcask.qc"). initial_state() -> init. initial_state_data() -> #state{}. init(_S) -> [{closed, {call, ?MODULE, set_keys, [list(key_gen())]}}]. closed(_S) -> [{opened, {call, bitcask, open, [?TEST_DIR, [read_write, {open_timeout, 0}, sync_strategy()]]}}, {closed, {call, ?MODULE, truncate_hint, [int(), int()]}}, {closed, {call, ?MODULE, corrupt_hint, [int(), int()]}}, {closed, {call, ?MODULE, create_stale_lock, []}}]. opened(S) -> [{closed, {call, bitcask, close, [S#state.bitcask]}}, {opened, {call, bitcask, get, [S#state.bitcask, key(S)]}}, {opened, {call, bitcask, put, [S#state.bitcask, key(S), value()]}}, {opened, {call, bitcask, delete, [S#state.bitcask, key(S)]}}, {opened, {call, bitcask, merge, [?TEST_DIR]}} ]. next_state_data(init, closed, S, _, {call, _, set_keys, [Keys]}) -> S#state{ keys = [<<"k">> | Keys] }; % ensure always one key next_state_data(closed, opened, S, Bcask, {call, bitcask, open, _}) -> S#state { bitcask = Bcask }; next_state_data(opened, closed, S, _, {call, _, close, _}) -> S#state { bitcask = undefined }; next_state_data(opened, opened, S, _, {call, bitcask, put, [_, Key, Value]}) -> S#state { data = orddict:store(Key, Value, S#state.data) }; next_state_data(opened, opened, S, _, {call, bitcask, delete, [_, Key]}) -> S#state { data = orddict:erase(Key, S#state.data) }; next_state_data(_From, _To, S, _Res, _Call) -> S. %% Precondition (for state data). %% Precondition is checked before command is added to the command sequence precondition(_From,_To,S,{call,_,get,[_,Key]}) -> lists:member(Key, S#state.keys); % check the key has not been shrunk away precondition(_From,_To,S,{call,_,put,[_,Key,_Val]}) -> lists:member(Key, S#state.keys); % check the key has not been shrunk away precondition(_From,_To,_S,{call,_,_,_}) -> true. postcondition(opened, opened, S, {call, _, get, [_, Key]}, not_found) -> case orddict:find(Key, S#state.data) of error -> true; {ok, Exp} -> {expected, Exp, got, not_found} end; postcondition(opened, opened, S, {call, _, get, [_, Key]}, {ok, Value}) -> case orddict:find(Key, S#state.data) of {ok, Value} -> true; Exp -> {expected, Exp, got, Value} end; postcondition(opened, opened, _S, {call, _, merge, [_TestDir]}, Res) -> Res == ok; postcondition(_From,_To,_S,{call,_,_,_},_Res) -> true. qc_test_() -> TestTime = 45, {timeout, TestTime*2, {setup, fun prepare/0, fun cleanup/1, [{timeout, TestTime*2, ?_assertEqual(true, eqc:quickcheck(eqc:testing_time(TestTime, ?QC_OUT(prop_bitcask()))))}]}}. prepare() -> application:load(bitcask), application:set_env(bitcask, require_hint_crc, true). cleanup(_) -> application:unload(bitcask). prop_bitcask() -> ?FORALL(Cmds, commands(?MODULE), begin [] = os:cmd("rm -rf " ++ ?TEST_DIR), {H,{_State, StateData}, Res} = run_commands(?MODULE,Cmds), case (StateData#state.bitcask) of undefined -> ok; Ref -> bitcask:close(Ref) end, application:unload(bitcask), aggregate(zip(state_names(H),command_names(Cmds)), equals(Res, ok)) end). %% Weight for transition (this callback is optional). %% Specify how often each transition should be chosen weight(_From, _To,{call,_,close,_}) -> 10; weight(_From, _To,{call,_,truncate_hint,_}) -> 10; weight(_From, _To,{call,_,corrupt_hint,_}) -> 10; weight(_From,_To,{call,_,_,_}) -> 100. set_keys(_Keys) -> %% next_state sets the keys for use by key() ok. key_gen() -> ?SUCHTHAT(X, binary(), X /= <<>>). key(#state{keys = Keys}) -> elements(Keys). value() -> binary(). sync_strategy() -> {sync_strategy, oneof([none, o_sync])}. create_stale_lock() -> Fname = filename:join(?TEST_DIR, "bitcask.write.lock"), filelib:ensure_dir(Fname), ok = file:write_file(Fname, "102349430239 abcdef\n"). truncate_hint(Seed, TruncBy0) -> case filelib:wildcard(?TEST_DIR ++ "/*.hint") of [] -> ok; Hints-> Hint = lists:nth(1 + (abs(Seed) rem length(Hints)), Hints), {ok, Fi} = file:read_file_info(Hint), {ok, Fh} = file:open(Hint, [read, write]), TruncBy = (1 + abs(TruncBy0)) rem (Fi#file_info.size+1), {ok, _To} = file:position(Fh, {eof, -TruncBy}), %% io:format(user, "Truncating ~p by ~p to ~p\n", [Hint, TruncBy, _To]), file:truncate(Fh), file:close(Fh) end. corrupt_hint(Seed, CorruptAt0) -> case filelib:wildcard(?TEST_DIR ++ "/*.hint") of [] -> ok; Hints-> Hint = lists:nth(1 + (abs(Seed) rem length(Hints)), Hints), {ok, Fi} = file:read_file_info(Hint), {ok, Fh} = file:open(Hint, [read, write, binary]), Size = Fi#file_info.size, CorruptAt = (1 + abs(CorruptAt0)) rem (Size+1), try {ok, Pos} = file:position(Fh, {eof, -CorruptAt}), {ok, <>} = file:pread(Fh, Pos, 1), BadByte = <<(bnot Byte)>>, io:format(user, "Corrupting from ~p to ~p at ~p size ~p\n", [Byte, BadByte, Pos, Size]), ok = file:pwrite(Fh, Pos, BadByte) catch _:Reason -> io:format(user, "corrupt failed corruptat=~p reason=~p\n", [CorruptAt, Reason]) after file:close(Fh) end end. -endif. erlang-bitcask-1.6.7+dfsg/test/bitcask_timeshift.erl000066400000000000000000000057601233730135600225240ustar00rootroot00000000000000%% ------------------------------------------------------------------- %% %% bitcask: Eric Brewer-inspired key/value store %% %% Copyright (c) 2012 Basho Technologies, Inc. All Rights Reserved. %% %% This file is provided to you under the Apache License, %% Version 2.0 (the "License"); you may not use this file %% except in compliance with the License. You may obtain %% a copy of the License at %% %% http://www.apache.org/licenses/LICENSE-2.0 %% %% Unless required by applicable law or agreed to in writing, %% software distributed under the License is distributed on an %% "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY %% KIND, either express or implied. See the License for the %% specific language governing permissions and limitations %% under the License. %% %% ------------------------------------------------------------------- -module(bitcask_timeshift). -include_lib("eunit/include/eunit.hrl"). -include("bitcask.hrl"). -compile(export_all). current_tstamp() -> case erlang:get(meck_tstamp) of undefined -> erlang:error(uninitialized_meck_tstamp); Value -> Value end. next_tstamp() -> Ts = case erlang:get(meck_tstamp) of undefined -> 1; Tstamp -> Tstamp + erlang:get(meck_tstamp_step) end, erlang:put(meck_tstamp, Ts), Ts. set_tstamp(Tstamp) -> erlang:put(meck_tstamp, Tstamp). set_tstamp_step(Step) -> erlang:put(meck_tstamp_step, Step). timeshift_test() -> {timeout, 60, fun() -> timeshift_test2() end}. timeshift_test2() -> try Dirname = "/tmp/bc.timeshift", meck:new(bitcask_time, [passthrough]), meck:expect(bitcask_time, tstamp, fun next_tstamp/0), set_tstamp(100), set_tstamp_step(-1), ?cmd("rm -rf " ++ Dirname), Bref = bitcask:open(Dirname, [read_write]), ok = bitcask:put(Bref, <<"k1">>, <<"v1">>), %% Back when the NIF's internal puts depended on timestamps, this %% second put would fail because we've meck'ed time to go backward. %% Nowadays, this put should succeed. ok = bitcask:put(Bref, <<"k1">>, <<"v2">>), bitcask:close(Bref), %% For each of the data files, validate that it has a valid hint file Validate = fun(Fname) -> {ok, S} = bitcask_fileops:open_file(Fname), try ?assert(bitcask_fileops:has_valid_hintfile(S)) after bitcask_fileops:close(S) end end, [Validate(Fname) || {_Ts, Fname} <- bitcask_fileops:data_file_tstamps(Dirname)], %% In our post-wall-clock timestamp world, verify that we read the newer value. Bref2 = bitcask:open(Dirname, [read_write]), {ok, <<"v2">>} = bitcask:get(Bref2, <<"k1">>), bitcask:close(Bref2) after meck:unload() end. erlang-bitcask-1.6.7+dfsg/test/pulse/000077500000000000000000000000001233730135600174445ustar00rootroot00000000000000erlang-bitcask-1.6.7+dfsg/test/pulse/bitcask_eqc.erl000066400000000000000000000771601233730135600224330ustar00rootroot00000000000000%%% File : bitcask_eqc.erl %%% Author : Ulf Norell, Hans Svensson %%% Description : Bitcask stress testing %%% Created : 19 Mar 2012 by Ulf Norell -module(bitcask_eqc). %% The while module is ifdef:ed, rebar should set PULSE -ifdef(PULSE). -compile(export_all). -include_lib("eqc/include/eqc.hrl"). -include_lib("eqc/include/eqc_statem.hrl"). -include("../../include/bitcask.hrl"). -include_lib("eunit/include/eunit.hrl"). -compile({parse_transform, pulse_instrument}). -compile({pulse_replace_module, [{application, pulse_application}]}). %% The following functions contains side_effects but are run outside %% PULSE, i.e. PULSE needs to leave them alone -compile({pulse_skip,[{prop_pulse_test_,0},{really_delete_bitcask,0},{copy_bitcask_app,0}]}). -compile({pulse_no_side_effect,[{file,'_','_'}, {erlang, now, 0}]}). %% The token module keeps track of the currently used directory for %% bitcask. Each test uses a fresh directory! -define(BITCASK, token:get_name()). %% Number of keys used in the tests -define(NUM_KEYS, 50). %% max_file_size given to bitcask. -define(FILE_SIZE, 1000). %% Used for output within EUnit... -define(QC_FMT(Fmt, Args), io:format(user, Fmt, Args)). %% And to force EUnit to output QuickCheck output... -define(QC_OUT(P), eqc:on_output(fun(Str, Args) -> ?QC_FMT(Str, Args) end, P)). -record(state, { handle , is_writer = true , did_fork_merge = false , readers = [] }). %% The initial state. initial_state() -> #state{}. %% Generators key() -> choose(1, ?NUM_KEYS). value() -> ?LET(Bin, noshrink(binary()), ?SHRINK(Bin, [<< <<0>> || <<_>> <= Bin >>])). key_pair() -> ?LET({A, B}, {key(), key()}, list_to_tuple(lists:sort([A, B]))). not_commands(Module, State) -> ?LET(Cmds, commands(Module, State), uncommand(Cmds)). %% Command generator. S is the state. command(S) -> frequency( [ {2, {call, ?MODULE, fork, [not_commands(?MODULE, #state{ is_writer = false })]}} || S#state.is_writer ] ++ [ {30, {call, ?MODULE, incr_clock, []}} %% Any proc can call incr_clock ] ++ [ {10, {call, ?MODULE, get, [S#state.handle, key()]}} || S#state.handle /= undefined ] ++ [ {20, {call, ?MODULE, put, [S#state.handle, key(), value()]}} || S#state.is_writer, S#state.handle /= undefined ] ++ [ {20, {call, ?MODULE, puts, [S#state.handle, key_pair(), value()]}} || S#state.is_writer, S#state.handle /= undefined ] ++ [ {6, {call, ?MODULE, delete, [S#state.handle, key()]}} || S#state.is_writer, S#state.handle /= undefined ] ++ [ {2, {call, ?MODULE, bc_open, [S#state.is_writer]}} || S#state.handle == undefined ] ++ [ {2, {call, ?MODULE, sync, [S#state.handle]}} || S#state.handle /= undefined ] ++ [ {1, {call, ?MODULE, fold_keys, [S#state.handle]}} || S#state.handle /= undefined ] ++ [ {1, {call, ?MODULE, fold, [S#state.handle]}} || S#state.handle /= undefined ] ++ [ {1, {call, ?MODULE, bc_close, [S#state.handle]}} || S#state.handle /= undefined ] ++ %% [ {1, {call, ?MODULE, merge, [S#state.handle]}} %% || S#state.is_writer, not S#state.did_fork_merge, S#state.handle /= undefined ] ++ [ {12, {call, ?MODULE, fork_merge, [S#state.handle]}} || S#state.is_writer, S#state.handle /= undefined ] ++ [ {0, {call, ?MODULE, join_reader, [elements(S#state.readers)]}} || S#state.is_writer, S#state.readers /= []] ++ [ {1, {call, ?MODULE, kill, [elements([bitcask_merge_worker|S#state.readers])]}} || S#state.is_writer, S#state.handle /= undefined ] ++ [ {12, {call, ?MODULE, needs_merge, [S#state.handle]}} || S#state.is_writer, S#state.handle /= undefined ] ++ []). %% Precondition, checked before a command is added to the command sequence. precondition(S, {call, _, fork, _}) -> S#state.is_writer; precondition(_S, {call, _, incr_clock, _}) -> true; precondition(S, {call, _, get, [H, _]}) -> S#state.handle == H; precondition(S, {call, _, puts, [H, _, _]}) -> S#state.is_writer andalso S#state.handle == H; precondition(S, {call, _, put, [H, _, _]}) -> S#state.is_writer andalso S#state.handle == H; precondition(S, {call, _, delete, [H, _]}) -> S#state.is_writer andalso S#state.handle == H; precondition(S, {call, _, fork_merge, [H]}) -> S#state.is_writer andalso S#state.handle == H; precondition(S, {call, _, merge, [H]}) -> S#state.is_writer andalso not S#state.did_fork_merge andalso S#state.handle == H; precondition(S, {call, _, needs_merge, [H]}) -> S#state.is_writer andalso S#state.handle == H; precondition(S, {call, _, join_reader, [R]}) -> S#state.is_writer andalso lists:member(R, S#state.readers); precondition(S, {call, _, fold_keys, [H]}) -> S#state.handle == H; precondition(S, {call, _, fold, [H]}) -> S#state.handle == H; precondition(S, {call, _, sync, [H]}) -> S#state.handle == H; precondition(S, {call, _, kill, [Pid]}) -> S#state.is_writer andalso S#state.handle /= undefined andalso (Pid == bitcask_merge_worker orelse lists:member(Pid, S#state.readers)); precondition(S, {call, _, bc_close, [H]}) -> S#state.handle == H; precondition(S, {call, _, bc_open, [Writer]}) -> %% The writer can open for reading but not the other way around. S#state.is_writer >= Writer andalso S#state.handle == undefined. %% Next state transformation, S is the current state and V is the result of the %% command. next_state(S, H, {call, _, bc_open, _}) -> S#state{ handle = H }; next_state(S, _, {call, _, bc_close, _}) -> S#state{ handle = undefined }; next_state(S, _, {call, _, join_reader, [R]}) -> S#state{ readers = S#state.readers -- [R] }; next_state(S, _, {call, _, fork_merge, _}) -> S#state{ did_fork_merge = true }; next_state(S, P, {call, _, fork, _}) -> S#state{ readers = [ P | S#state.readers ] }; next_state(S, _, {call, _, kill, [Pid]}) -> S#state{ readers = S#state.readers -- [Pid] }; next_state(S, _V, {call, _, _, _}) -> S. eq(X, X) -> true; eq(X, Y) -> {X, '/=', Y}. %% Postcondition, checked after the command has been evaluated. V is the result %% of the command. Note: S is the state before next_state/3 has been called. postcondition(_S, {call, _, put, _}, V) -> eq(V, ok); postcondition(_S, {call, _, puts, _}, V) -> eq(V, ok); postcondition(_S, {call, _, delete, _}, V) -> eq(V, ok); postcondition(_S, {call, _, fork_merge, _}, V) -> case V of ok -> true; not_needed -> true; already_queued -> true; %% another fork_merge might be in progress {'EXIT', {killed, _}} -> true; {'EXIT', {noproc, _}} -> true; _ -> {fork_merge, V} end; postcondition(_S, {call, _, merge, _}, V) -> case V of ok -> true; not_needed -> true; {error, {merge_locked, locked, _}} -> true; %% a fork_merge might be in progress _ -> {merge, V} end; postcondition(_S, {call, _, join_reader, _}, V) -> eq(V, ok); postcondition(_S, {call, _, fold, _}, V) -> case V of {error, max_retries_exceeded_for_fold} -> true; _ when is_list(V) -> true; _ -> {fold, V} end; postcondition(_S, {call, _, fold_keys, _}, V) -> case V of {error, _} -> V; _ -> true end; postcondition(_S, {call, _, needs_merge, _}, V) -> case V of {true, _Files} -> true; false -> true; _ -> {needs_merge, V} end; postcondition(_S, {call, _, bc_open, _}, V) -> case V of _ when is_reference(V) -> true; {'EXIT', {{badmatch,{error,enoent}},_}} -> true; %% If we manage to get a timeout, there's a pathological scheduling %% delay that is causing starvation. Expose the starvation by %% not considering {error, timeout} a success. {error, timeout} -> {dont_want_this_timeout, V}; _ -> {bc_open, V} end; postcondition(_S, {call, _, get, _}, V) -> case V of {ok, _} -> true; not_found -> true; _ -> {get, V} end; postcondition(_S, {call, _, _, _}, _V) -> true. %% Slave node preparation %% %% Each test is run on a freshly started node, to avoid problems with %% cleanup, etc. node_name() -> list_to_atom(lists:concat([slave_name(), "@", host()])). slave_name() -> list_to_atom(lists:concat([hd(string:tokens(atom_to_list(node()),"@")), "-tester"])). host() -> hd(tl(string:tokens(atom_to_list(node()),"@"))). %% Generate a most likely unique node name unique_name() -> {A, B, C} = erlang:now(), list_to_atom(lists:concat([integer_to_list(A), "-", integer_to_list(B), "-", integer_to_list(C)])). %% Note, rebar starts a shell without distribution, possibly start %% net_kernel here start_node(Verbose) -> case node() of 'nonode@nohost' -> net_kernel:start([unique_name(), shortnames]); _ -> ok end, stop_node(), {ok, _} = slave:start(host(), slave_name(), "-pa ../../../ebin " ++ lists:append(["-detached" || not Verbose ])), ok. stop_node() -> slave:stop(node_name()). run_on_node(local, _Verbose, M, F, A) -> rpc:call(node(), M, F, A); run_on_node(slave, Verbose, M, F, A) -> start_node(Verbose), rpc:call(node_name(), M, F, A). %% Muting the QuickCheck license printout from the slave node mute(true, Fun) -> Fun(); mute(false, Fun) -> mute:run(Fun). %% %% The actual code of the property, run on remote node via rpc:call above %% run_commands_on_node(LocalOrSlave, Cmds, Seed, Verbose) -> mute(Verbose, fun() -> AfterTime = if LocalOrSlave == local -> 50000; LocalOrSlave == slave -> 1000000 end, event_logger:start_link(), pulse:start(), bitcask_nifs:set_pulse_pid(utils:whereis(pulse)), error_logger:tty(false), error_logger:add_report_handler(handle_errors), token:next_name(), event_logger:start_logging(), bitcask_time:test__set_fudge(10), X = try {H, S, Res, PidRs, Trace} = pulse:run(fun() -> %% pulse_application_controller:start({application, kernel, []}), application:start(bitcask), receive after AfterTime -> ok end, OldVerbose = pulse:verbose([ all || Verbose ]), {H, S, R} = run_commands(?MODULE, Cmds), Pids = lists:usort(S#state.readers), PidRs = fork_results(Pids), receive after AfterTime -> ok end, pulse:verbose(OldVerbose), Trace = event_logger:get_events(), receive after AfterTime -> ok end, exit(pulse_application_controller, shutdown), {H, S, R, PidRs, Trace} end, [{seed, Seed}, {strategy, unfair}]), Schedule = pulse:get_schedule(), Errors = gen_event:call(error_logger, handle_errors, get_errors), {H, S, Res, PidRs, Trace, Schedule, Errors} catch _:Err -> {'EXIT', Err} end, really_delete_bitcask(), X end). prop_pulse() -> prop_pulse(local, false). prop_pulse(Boolean) -> prop_pulse(local, Boolean). prop_pulse(LocalOrSlave, Verbose) -> More = 2, if More < 2 -> [erlang:display({"NOTE: we are using a perhaps small More value?", More}) || _ <- lists:seq(1,10)]; true -> ok end, ?FORALL(Cmds, ?LET(Cmds, more_commands(More, commands(?MODULE)), shrink_commands(Cmds)), ?FORALL(Seed, pulse:seed(), begin %% ok = file:write_file("/tmp/slf-stuff-just-in-case", term_to_binary({Cmds,Seed})), case run_on_node(LocalOrSlave, Verbose, ?MODULE, run_commands_on_node, [LocalOrSlave, Cmds, Seed, Verbose]) of {'EXIT', Err} -> equals({'EXIT', Err}, ok); {H, S, Res, PidRs, Trace, Schedule, Errors} -> ?WHENFAIL( ?QC_FMT("\nState: ~p\n", [S]), aggregate(zipwith(fun command_data/2, Cmds, H), measure(schedule, length(Schedule), %% In the end we check four things: %% - That the root process (the writer) returns ok (passes all postconditions) %% - That all forked processes returns ok %% - That there are no unmasked errors in the error_log %% - That all read actions (gets, fold, and fold_keys) return possible values conjunction( [ {0, equals(Res, ok)} | [ {Pid, equals(R, ok)} || {Pid, R} <- PidRs ] ] ++ [ {errors, equals(Errors, [])} , {events, check_trace(Trace)} ])))) end end)). %% A EUnit wrapper for the QuickCheck property prop_pulse_test_() -> {timeout, 1000000, fun() -> copy_bitcask_app(), ?assert(eqc:quickcheck(eqc:testing_time(60,?QC_OUT(prop_pulse())))) end}. %% Needed since rebar fails miserably in setting up the .eunit test directory copy_bitcask_app() -> try {ok, B} = file:read_file("../ebin/bitcask.app"), ok = file:write_file("./bitcask.app", B) catch _:_ -> ok end, ok. %% Using eqc_temporal to keep track of possible values for keys. %% %% The Trace contains entries for start and finish of operations. For %% put(Key, Val) (and delete) we consider Key to have either the old %% or the new value until the operation has finished. Likewise, a get %% (or a fold/fold_keys) may see any of the potential values if the %% operation overlaps with a put/delete. check_trace(Trace) -> %% Turn the trace into a temporal relation Events = eqc_temporal:from_timed_list(Trace), %% The Calls relation contains {call, Pid, Call} whenever Call by Pid is in %% progress. Calls = eqc_temporal:stateful( fun({call, Pid, Call}) -> [{call, Pid, Call}] end, fun({call, Pid, _Call}, {result, Pid, _}) -> [] end, Events), %% The initial value for each key is not_found. AllKeys = lists:usort(fold( fun({put, _, K, _}) -> K; ({get, _, K}) -> K; ({delete, _, K}) -> K end, Trace)), InitialPuts = eqc_temporal:elems(eqc_temporal:ret([{K, not_found} || K <- AllKeys])), %% For each put or delete the Puts relation contains the appropriate key/value pair. Puts = eqc_temporal:union(InitialPuts, eqc_temporal:map(fun({call, _Pid, {put, _H, K, V}}) -> {K, V}; ({call, _Pid, {delete, _H, K}}) -> {K, not_found} end, Calls)), %% DonePut contains {freeze, K, V} when a put or delete has completed. DonePut = eqc_temporal:map( fun({K, V}) -> {freeze, K, V} end, eqc_temporal:subtract(eqc_temporal:shift(1, Puts), Puts)), %% Values contains {K, V} whenever V is a possible value for K. We compute it %% by adding {K, V} whenever it appears in Puts and removing any {K, V1} as %% soon as we see {freeze, K, V2} (with V1 /= V2) in DonePut. In effect, when %% a put/delete call is started both the old and the new value appears in %% Values and when the call has completed only the new value does. Values = eqc_temporal:stateful( fun({K, V}) -> {K, V} end, fun({K, V1}, {freeze, K, V2}) when V1 /= V2 -> [] end, eqc_temporal:union(Puts, DonePut)), %% Build an orddict for key/values for efficiency reasons. ValueDict = eqc_temporal:map( fun(KVs) -> lists:foldr(fun({K,V}, Dict) -> orddict:append(K, V, Dict) end, orddict:new(), KVs) end, eqc_temporal:set(Values)), %% The Reads relation keeps track of get, fold_keys and fold calls with the %% purpose of checking that they return something sensible. For a get call we %% check that the result was a possible value at some point during the %% evaluation of the call. The fold and fold_keys are checked analogously. Reads = eqc_temporal:stateful( %% Starting a read call. For get we aggregate the list of possible values %% for the corresponding key seen during the call. For fold we keep a %% dictionary mapping keys to lists of possible values and for fold_keys %% we keep a dictionary mapping keys to a list of found or not_found. fun({call, Pid, {get, _H, K}}) -> {get, Pid, K, []}; ({call, Pid, {fold_keys, _H}}) -> {fold_keys, Pid, orddict:new()}; ({call, Pid, {fold, _H}}) -> {fold, Pid, orddict:new()} end, fun %% Update a get call with a new set of possible values. ({get, Pid, K, Vs}, {values, Vals}) -> %% Get all possible values for K Ws = case orddict:find(K, Vals) of error -> []; {ok, Us} -> lists:sort(Us) end, %% Add them to the previously seen values VWs = lists:umerge(Vs, Ws), false = VWs == Vs, %% Be careful not to update the state if nothing %% changed since eqc_temporal:stateful allows you %% to change the state several times during the %% same time slot. [{get, Pid, K, VWs}]; %% Update a fold_keys call ({fold_keys, Pid, Vals1}, {values, Vals2}) -> %% We don't need the actual values for fold_keys, just found or %% not_found. FoundOrNotFound = fun(not_found) -> not_found; (_) -> found end, %% Merge the new values and the old values Vals = orddict:merge( fun(_, Vs1, Vs2) -> lists:umerge(Vs1, Vs2) end, Vals1, orddict:map(fun(_, Vs) -> lists:usort(lists:map(FoundOrNotFound, Vs)) end, Vals2)), %% Make sure to not do any identity updates false = orddict:to_list(Vals) == orddict:to_list(Vals1), [{fold_keys, Pid, Vals}]; %% Update a fold call ({fold, Pid, Vals1}, {values, Vals2}) -> Vals = orddict:merge( fun(_, Vs1, Vs2) -> lists:umerge(Vs1, lists:sort(Vs2)) end, Vals1, Vals2), false = orddict:to_list(Vals) == orddict:to_list(Vals1), [{fold, Pid, Vals}]; %% Check a call to get ({get, Pid, K, Vs}, {result, Pid, R}) -> V = case R of not_found -> not_found; {ok, U} -> U end, case lists:member(V, Vs) of true -> []; %% V is a good result false -> [{bad, {get, K, Vs, V}}] %% V is a bad result! end; %% Check a call to fold_keys ({fold_keys, Pid, Vals}, {result, Pid, Keys}) -> %% check_fold_keys_result checks that %% K in Keys ==> found in Vals[K] and %% K not in Keys ==> not_found in Vals[K] case check_fold_keys_result(orddict:to_list(Vals), lists:sort(Keys)) of true -> []; false -> [{bad, {fold_keys, orddict:to_list(Vals), Keys}}] end; %% Check a call to fold ({fold, Pid, Vals}, {result, Pid, KVs}) -> %% check_fold_result checks that %% {K, V} in KVs ==> V in Vals[K] and %% K not in KVs ==> not_found in Vals[K] case check_fold_result(orddict:to_list(Vals), lists:sort(KVs)) of true -> []; false -> [{bad, {fold, orddict:to_list(Vals), KVs}}] end end, eqc_temporal:union(Events, eqc_temporal:map(fun(D) -> {values, D} end, ValueDict))), %% Filter out the bad stuff from the Reads relation. Bad = eqc_temporal:map(fun(X={bad, _}) -> X end, Reads), ?WHENFAIL(begin ?QC_FMT("Events:\n~p\n", [Events]), ?QC_FMT("Bad:\n~p\n", [Bad]) end, %% There shouldn't be any Bad stuff eqc_temporal:is_false(Bad)). check_fold_result([{K, Vs}|Expected], [{K, V}|Actual]) -> lists:member(V, Vs) andalso check_fold_result(Expected, Actual); check_fold_result([{_, Vs}|Expected], Actual) -> lists:member(not_found, Vs) andalso check_fold_result(Expected, Actual); check_fold_result([], []) -> true. check_fold_keys_result([{K, Vs}|Expected], [K|Actual]) -> lists:member(found, Vs) andalso check_fold_keys_result(Expected, Actual); check_fold_keys_result([{_, Vs}|Expected], Actual) -> lists:member(not_found, Vs) andalso check_fold_keys_result(Expected, Actual); check_fold_keys_result([], []) -> true. %% Presenting command data statistics in a nicer way command_data({set, _, {call, _, merge, _}}, {_S, V}) -> case V of {error, {merge_locked, _, _}} -> {merge, locked}; _ -> {merge, V} end; command_data({set, _, {call, _, fork_merge, _}}, {_S, V}) -> case V of {'EXIT', _} -> {fork_merge, 'EXIT'}; _ -> {fork_merge, V} end; command_data({set, _, {call, _, bc_open, _}}, {_S, V}) -> case V of {'EXIT', _} -> {bc_open, 'EXIT'}; {error, Err} -> {bc_open, Err}; _ when is_reference(V) -> bc_open end; command_data({set, _, {call, _, needs_merge, _}}, {_S, V}) -> case V of {true, _} -> {needs_merge, true}; false -> {needs_merge, false} end; command_data({set, _, {call, _, kill, [Pid]}}, {_S, _V}) -> case Pid of bitcask_merge_worker -> {kill, merger}; _ -> {kill, reader} end; command_data({set, _, {call, _, Fun, _}}, {_S, _V}) -> Fun. %% Wait for all forks to return their results fork_results(Pids) -> [ receive {Pid, done, R} -> {I, R} after 99*1000 -> {I, timeout_fork_results} end || {I, Pid} <- lists:zip(lists:seq(1, length(Pids)), Pids) ]. %% Implementation of a the commands -define(CHECK_HANDLE(H, X, Do), case H of _ when is_reference(H) -> Do; _ -> X end). -define(LOG(Tag, MkCall), event_logger:event({call, self(), Tag}), __Result = MkCall, event_logger:event({result, self(), __Result}), __Result). fork(Cmds) -> ?LOG(fork, begin Mama = self(), spawn(fun() -> {_, S, R} = run_commands(?MODULE, recommand(Cmds)), bc_close(S#state.handle), Mama ! {self(), done, R} end) end). incr_clock() -> bitcask_time:test__incr_fudge(1). get(H, K) -> ?LOG({get, H, K}, ?CHECK_HANDLE(H, not_found, bitcask:get(H, <>))). put(H, K, V) -> ?LOG({put, H, K, V}, ?CHECK_HANDLE(H, ok, bitcask:put(H, <>, V))). puts(H, {K1, K2}, V) -> case lists:usort([ put(H, K, V) || K <- lists:seq(K1, K2) ]) of [ok] -> ok; Other -> Other end. delete(H, K) -> ?LOG({delete, H, K}, ?CHECK_HANDLE(H, ok, bitcask:delete(H, <>))). fork_merge(H) -> ?LOG({fork_merge, H}, ?CHECK_HANDLE(H, not_needed, case bitcask:needs_merge(H) of {true, Files} -> catch bitcask_merge_worker:merge(?BITCASK, [], Files); false -> not_needed end)). merge(H) -> ?CHECK_HANDLE(H, not_needed, case bitcask:needs_merge(H) of {true, Files} -> case catch bitcask:merge(?BITCASK, [], Files) of {'EXIT', Err} -> Err; R -> R end; false -> not_needed end). kill(Pid) -> ?LOG({kill, Pid}, (catch exit(Pid, kill))). needs_merge(H) -> ?LOG({needs_merge, H}, ?CHECK_HANDLE(H, false, bitcask:needs_merge(H))). join_reader(ReaderPid) -> receive {ReaderPid, done, Res} -> Res end. sync(H) -> ?LOG({sync, H}, ?CHECK_HANDLE(H, ok, bitcask:sync(H))). fold(H) -> ?LOG({fold, H}, ?CHECK_HANDLE(H, [], bitcask:fold(H, fun(<>, V, Acc) -> [{K,V}|Acc] end, []))). fold_keys(H) -> ?LOG({fold_keys, H}, ?CHECK_HANDLE(H, [], bitcask:fold_keys(H, fun(#bitcask_entry{key = <>}, Ks) -> [K|Ks] end, []))). bc_open(Writer) -> ?LOG({open, Writer}, case Writer of true -> catch bitcask:open(?BITCASK, [read_write, {max_file_size, ?FILE_SIZE}, {open_timeout, 1234}]); false -> catch bitcask:open(?BITCASK, [{open_timeout, 1234}]) end). bc_close(H) -> ?LOG({close, H}, ?CHECK_HANDLE(H, ok, bitcask:close(H))). %% Convenience functions for running tests test() -> test({20, sec}). test(N) when is_integer(N) -> quickcheck(numtests(N, prop_pulse())); test({Time, sec}) -> quickcheck(eqc:testing_time(Time, prop_pulse())); test({Time, min}) -> test({Time * 60, sec}); test({Time, h}) -> test({Time * 60, min}). check() -> check(current_counterexample()). verbose() -> verbose(current_counterexample()). verbose(CE) -> erlang:put(verbose, true), Ok = check(CE), erlang:put(verbose, false), Ok. check(CE) -> check(on_output(fun("OK" ++ _, []) -> ok; (Fmt, Args) -> io:format(Fmt, Args) end, prop_pulse(true == erlang:get(verbose))), mk_counterexample(CE)). recheck() -> recheck(prop_pulse()). %% Custom shrinking %% %% Applied after normal shrinking or manually via custom_shrink/1 shrink_commands(Cmds) -> ?LET(ok, ?SHRINK(ok, begin io:format("|"), [] end), shrink_commands1(Cmds)). shrink_commands1(Cmds) -> ?SHRINK(Cmds, lists:map(fun shrink_commands1/1, shrink(Cmds))). check_preconditions([{init, S}|Cmds]) -> check_preconditions(S, Cmds); check_preconditions(Cmds) -> check_preconditions(initial_state(), Cmds). check_preconditions(_S, []) -> true; check_preconditions(S, [{set, X, Call}|Cmds]) -> precondition(S, Call) andalso check_preconditions(next_state(S, X, Call), Cmds). shrink(Cmds) -> [ C || C <- shrink1(Cmds), check_preconditions(C) ]. shrink_nat(0) -> []; shrink_nat(1) -> [0]; shrink_nat(N) -> [0, N div 2, N - 1]. shrink_pos(N) -> [ M + 1 || M <- shrink_nat(N - 1) ]. shrink_bounds({A, B}) -> [ {A, A + Delta} || Delta <- shrink_nat(B - A) ] ++ [ {B - Delta, B} || Delta <- shrink_nat(B - A) ] ++ [ {Delta, B - A + Delta} || Delta <- shrink_pos(A) ]. shrink1(Cmds) -> %% Shrink puts to put (identity) shrink_sublist(1, Cmds, fun ([{set, X, {call, ?MODULE, puts, [H, {K, K}, V]}}]) -> [ [{set, X, {call, ?MODULE, put, [H, K, V]}}] ]; (_) -> [] end) ++ %% Move forks as late as possible shrink_tails(Cmds, fun ([Cmd={set, _, {call, _, fork, _}} | Cmds_ ]) -> [ Cmds0 ++ [Cmd] ++ Cmds1 || I <- lists:reverse(lists:seq(1, length(Cmds_))), {Cmds0, Cmds1} <- [lists:split(I, Cmds_)], lists:any(fun({set, _, {call, _, Fun, _}}) -> Fun /= fork end, Cmds0) ]; (_) -> [] end) ++ %% Merge two puts into one shrink_sublist(2, Cmds, fun ([{set, X, {call, ?MODULE, puts, [H, {K1, K2}, V1]}}, {set, _, {call, ?MODULE, puts, [H, {K3, K4}, V2]}}]) -> V = max_binary(V1, V2), [[{set, X, {call, ?MODULE, puts, [H, {K1, K2 + K4 - K3 + 1}, V]}}]]; ([{set, X, {call, ?MODULE, puts, [H, {K1, K2}, V1]}}, {set, _, {call, ?MODULE, put, [H, _K, V2]}}]) -> V = max_binary(V1, V2), [[{set, X, {call, ?MODULE, puts, [H, {K1, K2 + 1}, V]}}]]; ([{set, X, {call, ?MODULE, put, [H, K, V1]}}, {set, _, {call, ?MODULE, puts, [H, {K3, K4}, V2]}}]) -> V = max_binary(V1, V2), [[{set, X, {call, ?MODULE, puts, [H, {K, K + K4 - K3 + 1}, V]}}]]; ([{set, X, {call, ?MODULE, put, [H, K, V1]}}, {set, _, {call, ?MODULE, put, [H, _, V2]}}]) -> V = max_binary(V1, V2), [[{set, X, {call, ?MODULE, puts, [H, {K, K + 1}, V]}}]]; (_) -> [] end) ++ %% Shrink values of put shrink_sublist(1, Cmds, fun ([{set, X, {call, ?MODULE, puts, [H, {K1, K2}, <<_, V/binary>>]}}]) -> [[{set, X, {call, ?MODULE, puts, [H, {K1, K2}, V]}}]]; ([{set, X, {call, ?MODULE, put, [H, K, <<_, V/binary>>]}}]) -> [[{set, X, {call, ?MODULE, put, [H, K, V]}}]]; (_) -> [] end) ++ %% Shrink bounds of puts shrink_sublist(1, Cmds, fun ([{set, X, {call, ?MODULE, puts, [H, {K1, K2}, V]}}]) -> [[{set, X, {call, ?MODULE, puts, [H, {K3, K4}, V]}}] || {K3, K4} <- shrink_bounds({K1, K2}) ]; (_) -> [] end) ++ %% Inline a fork shrink_sublist(1, Cmds, fun ([{set, _, {call, ?MODULE, fork, [[{init, _}, {set, {not_var, H0}, {not_call, _, bc_open, _}} | NotCmds]]}}]) -> NextVar = 1 + lists:max([ X || {set, {var, X}, _} <- Cmds ]), YesCmds = rename_from(NextVar, recommand(NotCmds)), [ map(fun({var, H1}) when H1 == H0 -> H end, YesCmds) || H <- fold(fun({set, H, {call, _, bc_open, _}}) -> H end, Cmds) ]; (_) -> [] end) ++ %% shrink_tails(Cmds, fun %% ([{set, _, {call, ?MODULE, bc_close, [H1]}}, %% {set, H2, {call, ?MODULE, bc_open, _}} | Cmds1]) -> %% [map(fun(H3={var, _}) when H3 == H2 -> H1 end, Cmds1)]; %% (_) -> [] end) ++ shrink_sublist(1, Cmds, fun %% Shrink the commands of a fork ([{set, X, {call, ?MODULE, fork, [[Init={init, _}|NotCmds]]}}]) -> [ [{set, X, {call, ?MODULE, fork, [[Init|uncommand(Cmds1)]]}}] || Cmds1 <- shrink(recommand(NotCmds)) ]; (_) -> [] end) ++ %% Remove a single command shrink_sublist(1, Cmds, fun([_]) -> [[]] end) ++ []. max_binary(Bin1, Bin2) when size(Bin1) > size(Bin2) -> Bin1; max_binary(_Bin1, Bin2) -> Bin2. shrink_sublist(N, Xs, Shrink) -> shrink_sublist(N, [], Xs, [], Shrink). shrink_sublist(N, _Pre, Xs, Shrunk, _Shrink) when length(Xs) < N -> lists:append(lists:reverse(Shrunk)); shrink_sublist(N, Pre, Xs0 = [X|Xs], Shrunk, Shrink) -> {Ys, Zs} = lists:split(N, Xs0), NewShrunk = [ lists:reverse(Pre) ++ Shr ++ Zs || Shr <- Shrink(Ys) ], shrink_sublist(N, [X|Pre], Xs, [NewShrunk|Shrunk], Shrink). shrink_tails(Xs, Shrink) -> [ Ys ++ Ws || I <- lists:seq(0, length(Xs)), {Ys, Zs} <- [lists:split(I, Xs)], Ws <- Shrink(Zs) ]. custom_shrink() -> {ok, [Cmds]} = file:consult("shrunk"), custom_shrink(Cmds). custom_shrink(CE) -> custom_shrink(CE, 1). custom_shrink(CE0, Repeat) -> CE=[Cmds|_] = mk_counterexample(CE0), io:format("~p commands\n", [length(Cmds)]), Shrinkings = [ Cmds1 || Cmds1 <- shrink(Cmds) ], io:format("~p possible custom_shrinking steps\n", [length(Shrinkings)]), custom_shrink(CE, Shrinkings, Repeat). custom_shrink(CE, [], _) -> io:format("\n"), CE; custom_shrink(CE=[_,Seed|_], [C|Cs], Repeat) -> case check_many(Seed, C, Repeat) of true -> io:format("."), custom_shrink(CE, Cs, Repeat); Fail -> io:format("\n"), file:write_file("shrunk", io_lib:format("~p.\n", [Fail])), custom_shrink(Fail, Repeat) end. check_many(C, N) -> check_many(erlang:now(), C, N). check_many(_, _, 0) -> true; check_many(Seed, C0, N) -> C = mk_counterexample(C0, Seed), case check(C) of true -> check_many(C0, N - 1); false -> C end. mk_counterexample(CE = [Cmds, _Seed, Conj]) when is_list(Cmds) andalso is_list(Conj) -> CE; mk_counterexample(CE = [Cmds, _Seed]) when is_list(Cmds) -> CE; mk_counterexample(Cmds) -> S = state_after(?MODULE, Cmds), [Cmds, erlang:now(), [ {0, []} | [ {I, []} || I <- lists:seq(1, length(S#state.readers)) ] ] ++ [ {errors, []}, {events, []} ] ]. mk_counterexample(Cmds, Seed) -> [_Cmds, _Seed, Conj] = mk_counterexample(Cmds), [Cmds, Seed, Conj]. foo() -> erlang:now(). %% Helper functions fold(F, X) -> case catch(F(X)) of {'EXIT', _} -> fold1(F, X); Y -> [Y] end. fold1(F, [X|Xs]) -> fold(F, X) ++ fold(F, Xs); fold1(F, Tup) when is_tuple(Tup) -> fold1(F, tuple_to_list(Tup)); fold1(_F, _X) -> []. map(F, X) -> case catch(F(X)) of {'EXIT', _} -> map1(F, X); Y -> Y end. map1(F, [X|Xs]) -> [map(F, X)|map(F, Xs)]; map1(F, Tup) when is_tuple(Tup) -> list_to_tuple(map1(F, tuple_to_list(Tup))); map1(_F, X) -> X. zipwith(F, [X|Xs], [Y|Ys]) -> [F(X, Y)|zipwith(F, Xs, Ys)]; zipwith(_, _, _) -> []. uncommand(X) -> map(fun({var, N}) -> {not_var, N} end, map(fun({call, M, F, A}) -> {not_call, M, F, A} end, X)). recommand(X) -> map(fun({not_var, N}) -> {var, N} end, map(fun({not_call, M, F, A}) -> {call, M, F, A} end, X)). rename_from(X, Cmds) -> Bound = [ Y || {set, {var, Y}, _} <- Cmds ], Env = lists:zip(Bound, lists:seq(X, X + length(Bound) - 1)), map(fun ({var, Y}) -> case lists:keyfind(Y, 1, Env) of {Y, Z} -> {var, Z} end end, Cmds). really_delete_bitcask() -> [file:delete(X) || X <- filelib:wildcard(?BITCASK ++ "/*")], file:del_dir(?BITCASK), case file:read_file_info(?BITCASK) of {error, enoent} -> ok; {ok, _} -> timer:sleep(10), really_delete_bitcask() end. -endif. erlang-bitcask-1.6.7+dfsg/test/pulse/event_logger.erl000066400000000000000000000115511233730135600226330ustar00rootroot00000000000000%%% File : handle_errors.erl %%% Author : Ulf Norell %%% Description : %%% Created : 26 Mar 2012 by Ulf Norell -module(event_logger). -compile(export_all). -behaviour(gen_server). %% API -export([start_link/0, event/1, get_events/0, start_logging/0]). %% gen_server callbacks -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]). -define(SERVER, ?MODULE). -record(state, { start_time, events = [] }). -record(event, { timestamp, data }). %%==================================================================== %% API %%==================================================================== %%-------------------------------------------------------------------- %% Function: start_link() -> {ok,Pid} | ignore | {error,Error} %% Description: Starts the server %%-------------------------------------------------------------------- start_link() -> gen_server:start_link({local, ?SERVER}, ?MODULE, [], []). start_logging() -> gen_server:call(?MODULE, {start, timestamp()}). event(EventData) -> gen_server:call(?MODULE, #event{ timestamp = timestamp(), data = EventData }). async_event(EventData) -> gen_server:cast(?MODULE, #event{ timestamp = timestamp(), data = EventData }). get_events() -> gen_server:call(?MODULE, get_events). %%==================================================================== %% gen_server callbacks %%==================================================================== %%-------------------------------------------------------------------- %% Function: init(Args) -> {ok, State} | %% {ok, State, Timeout} | %% ignore | %% {stop, Reason} %% Description: Initiates the server %%-------------------------------------------------------------------- init([]) -> {ok, #state{}}. %%-------------------------------------------------------------------- %% Function: %% handle_call(Request, From, State) -> %% {reply, Reply, State} | %% {reply, Reply, State, Timeout} | %% {noreply, State} | %% {noreply, State, Timeout} | %% {stop, Reason, Reply, State} | %% {stop, Reason, State} %% Description: Handling call messages %%-------------------------------------------------------------------- handle_call(Event = #event{}, _From, State) -> {reply, ok, add_event(Event, State)}; handle_call({start, Now}, _From, S) -> {reply, ok, S#state{ events = [], start_time = Now }}; handle_call(get_events, _From, S) -> {reply, lists:reverse([ {E#event.timestamp, E#event.data} || E <- S#state.events]), S#state{ events = [] }}; handle_call(Request, _From, State) -> {reply, {error, {bad_call, Request}}, State}. %%-------------------------------------------------------------------- %% Function: handle_cast(Msg, State) -> {noreply, State} | %% {noreply, State, Timeout} | %% {stop, Reason, State} %% Description: Handling cast messages %%-------------------------------------------------------------------- handle_cast(Event = #event{}, State) -> {noreply, add_event(Event, State)}; handle_cast(_Msg, State) -> {noreply, State}. %%-------------------------------------------------------------------- %% Function: handle_info(Info, State) -> {noreply, State} | %% {noreply, State, Timeout} | %% {stop, Reason, State} %% Description: Handling all non call/cast messages %%-------------------------------------------------------------------- handle_info(_Info, State) -> {noreply, State}. %%-------------------------------------------------------------------- %% Function: terminate(Reason, State) -> void() %% Description: This function is called by a gen_server when it is about to %% terminate. It should be the opposite of Module:init/1 and do any necessary %% cleaning up. When it returns, the gen_server terminates with Reason. %% The return value is ignored. %%-------------------------------------------------------------------- terminate(_Reason, _State) -> ok. %%-------------------------------------------------------------------- %% Func: code_change(OldVsn, State, Extra) -> {ok, NewState} %% Description: Convert process state when code is changed %%-------------------------------------------------------------------- code_change(_OldVsn, State, _Extra) -> {ok, State}. %%-------------------------------------------------------------------- %%% Internal functions %%-------------------------------------------------------------------- add_event(#event{timestamp = Now, data = Data}, State) -> Event = #event{ timestamp = Now - State#state.start_time, data = Data }, State#state{ events = [Event|State#state.events] }. timestamp() -> {A, B, C} = erlang:now(), 1000000 * (1000000 * A + B) + C. erlang-bitcask-1.6.7+dfsg/test/pulse/handle_errors.erl000066400000000000000000000122361233730135600230030ustar00rootroot00000000000000%%%------------------------------------------------------------------- %%% @author Hans Svensson <> %%% @copyright (C) 2012, Hans Svensson %%% @doc %%% %%% @end %%% Created : 19 Mar 2012 by Hans Svensson <> %%%------------------------------------------------------------------- -module(handle_errors). -behaviour(gen_event). %% API -export([start_link/0, add_handler/0]). %% gen_event callbacks -export([init/1, handle_event/2, handle_call/2, handle_info/2, terminate/2, code_change/3]). -define(SERVER, ?MODULE). -record(state, { errors = [] }). %%%=================================================================== %%% gen_event callbacks %%%=================================================================== %%-------------------------------------------------------------------- %% @doc %% Creates an event manager %% %% @spec start_link() -> {ok, Pid} | {error, Error} %% @end %%-------------------------------------------------------------------- start_link() -> gen_event:start_link({local, ?SERVER}). %%-------------------------------------------------------------------- %% @doc %% Adds an event handler %% %% @spec add_handler() -> ok | {'EXIT', Reason} | term() %% @end %%-------------------------------------------------------------------- add_handler() -> gen_event:add_handler(?SERVER, ?MODULE, []). %%%=================================================================== %%% gen_event callbacks %%%=================================================================== %%-------------------------------------------------------------------- %% @private %% @doc %% Whenever a new event handler is added to an event manager, %% this function is called to initialize the event handler. %% %% @spec init(Args) -> {ok, State} %% @end %%-------------------------------------------------------------------- init([]) -> {ok, #state{}}. %%-------------------------------------------------------------------- %% @private %% @doc %% Whenever an event manager receives an event sent using %% gen_event:notify/2 or gen_event:sync_notify/2, this function is %% called for each installed event handler to handle the event. %% %% @spec handle_event(Event, State) -> %% {ok, State} | %% {swap_handler, Args1, State1, Mod2, Args2} | %% remove_handler %% @end %%-------------------------------------------------------------------- handle_event({error, _, {_, "Hintfile '~s' has bad CRC" ++ _, _}}, State) -> {ok, State}; handle_event({error, _, {_, "** Generic server" ++ _, _}}, State) -> {ok, State}; handle_event({error, _, {_, "Failed to merge ~p: ~p\n", [_, not_ready]}}, State) -> {ok, State}; handle_event({error, _, {_, "Failed to merge ~p: ~p\n", [_, {merge_locked, _, _}]}}, State) -> {ok, State}; handle_event({error, _, {_, "Failed to read lock data from ~s: ~p\n", [_, {invalid_data, <<>>}]}}, State) -> {ok, State}; handle_event({error, _, Event}, State) -> {ok, State#state{ errors = [Event|State#state.errors] }}; handle_event(_Event, State) -> {ok, State}. %%-------------------------------------------------------------------- %% @private %% @doc %% Whenever an event manager receives a request sent using %% gen_event:call/3,4, this function is called for the specified %% event handler to handle the request. %% %% @spec handle_call(Request, State) -> %% {ok, Reply, State} | %% {swap_handler, Reply, Args1, State1, Mod2, Args2} | %% {remove_handler, Reply} %% @end %%-------------------------------------------------------------------- handle_call(get_errors, S) -> {ok, S#state.errors, S#state{ errors = [] }}; handle_call(_Request, State) -> Reply = ok, {ok, Reply, State}. %%-------------------------------------------------------------------- %% @private %% @doc %% This function is called for each installed event handler when %% an event manager receives any other message than an event or a %% synchronous request (or a system message). %% %% @spec handle_info(Info, State) -> %% {ok, State} | %% {swap_handler, Args1, State1, Mod2, Args2} | %% remove_handler %% @end %%-------------------------------------------------------------------- handle_info(_Info, State) -> {ok, State}. %%-------------------------------------------------------------------- %% @private %% @doc %% Whenever an event handler is deleted from an event manager, this %% function is called. It should be the opposite of Module:init/1 and %% do any necessary cleaning up. %% %% @spec terminate(Reason, State) -> void() %% @end %%-------------------------------------------------------------------- terminate(_Reason, _State) -> ok. %%-------------------------------------------------------------------- %% @private %% @doc %% Convert process state when code is changed %% %% @spec code_change(OldVsn, State, Extra) -> {ok, NewState} %% @end %%-------------------------------------------------------------------- code_change(_OldVsn, State, _Extra) -> {ok, State}. %%%=================================================================== %%% Internal functions %%%=================================================================== erlang-bitcask-1.6.7+dfsg/test/pulse/mute.erl000066400000000000000000000033641233730135600211300ustar00rootroot00000000000000%%% File : mute.erl %%% Author : Ulf Norell %%% Description : %%% Created : 26 Mar 2012 by Ulf Norell -module(mute). -compile(export_all). % Call Fun with output suppressed. run(Fun) -> Ref = make_ref(), Leader = group_leader(), Io = spawn(?MODULE, dummy_io_server, [Leader]), group_leader(Io, self()), Res = (catch {Ref, Fun()}), Io ! stop, group_leader(Leader, self()), case Res of {Ref, X} -> X; {'EXIT', Err} -> exit(Err); Err -> throw(Err) end. dummy_io_server(Leader) -> Reply = fun(From, ReplyAs, X) -> From ! {io_reply, ReplyAs, X}, dummy_io_server(Leader) end, Forward = fun(From, ReplyAs, Request) -> Leader ! {io_request, From, ReplyAs, Request}, dummy_io_server(Leader) end, receive {io_request, From, ReplyAs, Request} -> case Request of {put_chars, _, _} -> Reply(From, ReplyAs, ok); {put_chars, _, _, _, _} -> Reply(From, ReplyAs, ok); {put_chars, _} -> Reply(From, ReplyAs, ok); {put_chars, _, _, _} -> Reply(From, ReplyAs, ok); {requests, Reqs} -> IsOutput = fun(Rq) when is_tuple(Rq) -> case tuple_to_list(Rq) of [put_chars|_] -> true; _ -> false end; (_) -> false end, case [ Rq || Rq <- Reqs, not IsOutput(Rq) ] of [] -> Reply(From, ReplyAs, ok); Rqs -> Forward(From, ReplyAs, {requests, Rqs}) end; _ -> % Forward any other requests Forward(From, ReplyAs, Request) end; stop -> ok; _Unknown -> ?MODULE:dummy_io_server() end. erlang-bitcask-1.6.7+dfsg/test/pulse/token.erl000066400000000000000000000016461233730135600212770ustar00rootroot00000000000000%%% File : token.erl %%% Author : Ulf Norell %%% Description : %%% Created : 20 Mar 2012 by Ulf Norell -module(token). -export([next_name/0, get_name/0, stop/0]). next_name() -> rpc(next). get_name() -> rpc(get). stop() -> rpc(stop). rpc(Msg) -> case whereis(?MODULE) of undefined -> start(), timer:sleep(1), rpc(Msg); Pid -> Ref = make_ref(), Pid ! {Msg, Ref, self()}, receive {Ref, R} -> R after 1000 -> {error, timeout} end end. start() -> register(?MODULE, spawn(fun() -> init() end)). init() -> loop(mk_name()). loop(Name) -> receive {next, Tag, Pid} -> Next = mk_name(), Pid ! {Tag, Next}, loop(Next); {get, Tag, Pid} -> Pid ! {Tag, Name}, loop(Name); {stop, Tag, Pid} -> Pid ! {Tag, ok} end. mk_name() -> {A, B, C} = erlang:now(), lists:concat([A, "-", B, "-", C]). erlang-bitcask-1.6.7+dfsg/test/pulse/utils.erl000066400000000000000000000005771233730135600213210ustar00rootroot00000000000000%%% File : utils.erl %%% Author : Ulf Norell %%% Description : Contains some functions that should be run without being %%% PULSE instrumented. %%% Created : 21 Mar 2012 by Ulf Norell -module(utils). -compile(export_all). whereis(Name) -> erlang:whereis(Name). unregister(Name) -> erlang:unregister(Name). exit(Reason) -> erlang:exit(Reason).