python3-rgw-12.1.0+git.1498654198.20d6a47cc9-1.2>t  DH`pY`E/=„N_`X](b`g\cJ>$}(s)_צsG^Hh !kd2B J&ڈQn__Ĩ}s_\.wzWXk& ` ]3['=?!ߕI!PPF'][f}bb.5A #2rFNr{z$: *gдqh]]ɰd061d8ec9421e5c5577d674363f00855ea98c48dY`E/=„"@pc8?kńC& _k~R= 0繞7]R|knIy1 '-oy] e!ycLCIfCGғjd꿞3i~ŽtOU7oؙR?p_S`i>:?d/ 3 \' @]nt|    j pL(78@:9(:: :FGHI0X8YD\]^ bmcdQeVf[l]upvw,xDy\ zCpython3-rgw12.1.0+git.1498654198.20d6a47cc91.2Python 3 libraries for the RADOS gatewayThis package contains Python 3 libraries for interacting with Cephs RADOS gateway.Y`=lamb78openSUSE Leap 42.3openSUSELGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and MIThttp://bugs.opensuse.orgDevelopment/Languages/Pythonhttp://ceph.com/linuxx86_64L8A큤Y`=Y`=Y`=Y`=Y`=Y`=438464bda7ce30c96d2610dbe9bae51391631877e51e9817fc22e80b646b5b6e68b329da9893e34099c7d8ad5cb9c9408804be4d1b827ca413a1e6190228fe64655a42278894ed756bfcddaddf7b49cdrootrootrootrootrootrootrootrootrootrootrootrootceph-12.1.0+git.1498654198.20d6a47cc9-1.2.src.rpmpython3-rgwpython3-rgw(x86-64)rgw.cpython-34m.so()(64bit)@@@@@@@@@   libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libpthread.so.0()(64bit)libpython3.4m.so.1.0()(64bit)librgw.so.2()(64bit)librgw2python(abi)python3-radosrpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)12.1.0+git.1498654198.20d6a47cc9-1.23.412.1.0+git.1498654198.20d6a47cc9-1.23.0.4-14.0-14.4.6-14.11.2YS@YP@YP@YNT@YMYA%@Y9<@Y9<@Y9<@Y7Y2Y0Y-^Y)j@Y(Y(Y(YY@Y.Y@Y@YYYX:@X@X@XX@X•@XZX@XXXX~@Xn5@XOX=mX8'W֘WҤ@WҤ@WҤ@W#W#W@W@W/@W/@W:W:W:WWW@Wncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comddiss@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comddiss@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comjfajerski@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comncutler@suse.comrdias@suse.comncutler@suse.comrdias@suse.comrdias@suse.comtserong@suse.comtserong@suse.comtserong@suse.comncutler@suse.com- Update to version 12.1.0+git.1498654198.20d6a47cc9: + build/ops: rpm: put mgr python build dependencies in make_check bcond N.B. this effectively eliminates the following build dependencies: python-Babel python-beautifulsoup4 python-CherryPy python-coverage python-flup python-Genshi python-html5lib python-logutils python-nose python-Paste python-PasteDeploy python-PasteDeploy python-pecan python-pyquery python-singledispatch python-waitress python-WebOb python-WebTest python-Werkzeug python-WSGIProxy2 pytyhon-python-openid- spec file: + removed BR libatomic_ops-devel as upstream replaced it with std:atomic + removed defattr as they are no longer needed on sle12 and newer- Update to version 12.1.0+git.1498478524.117b171715: + include 12.1.0 tag to make "ceph --version" happy + tests: drop hadoop-s3a tests- Update to version 12.1.0+git.1498309403.f4fc02fff4: + upstream 12.1.0 release; for details, see http://ceph.com/releases/v12-1-0-luminous-rc-released/ + revert several pre-release commits that are no longer needed because the issues have been fixed upstream in the meantime + build/ops: rpm: sane packaging of %{_docdir}/ceph directory- Update to version 12.0.3+git.1498202776.b806032985: + Integration testing changes: * add DeepSea integration suite test definitions for teuthology * re-enable several RGW tests that upstream only runs on Ubuntu + ceph_ver_hack.sh: use git describe --match + ReplicatedPG: add CHECKSUM->CMPEXT req translation- Update to version 12.0.3+git.1497426468.6984d41b5d: + qa: add initial deepsea suite (task and test yaml) + fix "ceph osd df" (regression in latest upstream master) (pr#15675, issue#20256) * mon: move creating_pgs and reweight_by_utilization into new MonPGStatService * mon: move most PGMapStatService into PGMap; rename PGMon's to PGMonStatService * mon: mgr: move 'osd df' handling to manager * mon: inherit PGMonStatService from the PGMapStatService * move the OSDUtilizationDumper code into OSDMap * mon: mgr: enable "osd df" on the manager * qa: add a check_commands.sh script which looks for commands with no tests * qa: test 'osd df' in cephtool/test.sh- Update to version 12.0.3+git.1496909744.9f667dc335: + build/ops: rpm: one License line to rule them all- up memory _constraint for ceph-test to address ppc64le OOM seen in IBS- Update to version 12.0.3+git.1496902753.b18dc53186: + build/ops: rpm, COPYING: drop GPL 2.0 with Autoconf Exception (autoconf no longer used)- Update to version 12.0.3+git.1496754880.35cb2861ce: + merge upstream master (b1d06a6b54)- Update to version 12.0.3+git.1496494491.ba3c561a92: + merge upstream master (97d6e150e5)- Update to version 12.0.3+git.1496306960.2db336d85e: + merge upstream master (b19352eec3), fixes bsc#1041492- Update to version 12.0.3+git.1496147556.f1d6115861: + cmake: build boost::context and coroutine only with rgw Beast frontend + build/ops: rpm: reverse s390 bcond conditional block + build/ops: rpm: no rgw Beast frontend on s390x + build/ops: deb: no rgw Beast frontend on s390x + cmake: delete excidentail reintroduced line. + cmake: link radosgw with boost libraries (bsc#1040119)- Update to version 12.0.3+git.1495849076.4457d36178: + rgw: remove fastcgi from default rgw frontends + RGW: Turn off fcgi as a frontend + build/ops: drop libfcgi build dependency + build/ops: rpm: apply epoch only if %epoch macro is defined- Update to version 12.0.3+git.1495798013.23dd2b67dc: + ceph.spec.in: re-drop %{epoch}: prefixes- Update to version 12.0.3+git.1495787939.3f6446f64f: + build/ops: rpm: adapt License line to Release 2.0 of SPDX spec (issue#20091)- Update to version 12.0.3+git.1495675338.07282a4057: + upstream 12.0.3 release + osd/PG: Add two new mClock implementations of the PG sharded operator queue (pr#14997, bsc#1040103) + build/ops: rpm: make librbd1 %post scriptlet depend on coreutils (boo#1040230) + build/ops: rpm: move RDMA build dependency to distro-conditional section + build/ops: rpm: move python-prettytable to distro-conditional section + cmake: added empty RPATH to libcls_sdk.so + rpm: drop %{epoch} from new rados-objclass-devel subpackage + cmake: fix boost components for WITH_SYSTEM_BOOST + cmake: build boost::context only if rgw Beast frontend is in use + build/ops: rpm: reverse s390 bcond conditional block + build/ops: rpm: no rgw Beast frontend on s390x (bsc#1040119) + ceph.spec.in, debian/control: build/runtime dependency for cherrypy- Update to version 12.0.2+git.1494343993.7527e4f0b8: + ReplicatedPG: drop CACHE_PIN->WRITESAME req translation (bsc#1038063)- _constraints: up ceph.spec disk constraint to 28G after seeing a build failure in OBS- Update to version 12.0.2+git.1493341348.9148e53: + ceph osd: add support for new op cmpext + ceph_test_rados_api_misc: add cmpext tests + librados: add cmpext API + ceph_test_rados_api_aio: add cmpext tests + test/librados/c_operations: add cmpext tests This patchset is a straight cherry-pick of the upstream OSD/librados cmpext changes (bsc#1035937).- Update to version 12.0.2+git.1493291471.adb6a43: + rocksdb: sync with upstream (bsc#1025891) + build/ops: cmake: explicitly disable MSSE 4.2 if not supported- _constraints: set higher disk and memory constraints so s390x builds don't fail- Update to version 12.0.2+git.1493238434.71681fd: + cmake: added empty RPATH to libceph_crypto_isal.so- Update to version 12.0.2+git.1493227670.3396ca1: + rgw: use a vector for options passed to civetweb- Update to version 12.0.2+git.1493192333.3305a0c + merge upstream master (0d368d2c8544247a4aed9c71c74e77b0c6bbfb22) including 12.0.2 development release- revert commit a9a50f690085091bb4446095418237f9fef712c8 in preparation for rebasing against the upstream implementation. (bsc#1035937)- Add ibs_constraints.sh script to address s390 constraints tweak needed in IBS- Update to version 12.0.1+git.1491557762.4e47e9f + merge upstream master (2950ad91d25d0d6e2e3fb6842d5bbc36353ba2a5) including fixes for: * bsc#1030068 (s390 build) * bsc#1031311 (ceph-mon.service not enabled via systemd preset)- Mention bugs fixed in jewel codestream that are also fixed in the current codestream: + msg/simple/Pipe: avoid returning 0 on poll timeout (bsc#1014338) + build/ops: fix undefined crypto references with --with-xio (bsc#977940) + ceph-create-keys: add missing argument comma (bsc#1008894) + common: Improve linux dcache hash algorithm (bsc#1005179)- Update to version 12.0.0+git.1489432599.165c23f: + merge upstream master (0c2f5f7214d2410a7519f88e65ed5273d6480227) including fix for upstream issue#18694 "ceph-disk activate for partition failing"- Update to version 12.0.0+git.1489159457.410e200: + build/ops: fix Group strings for library packages- Update to version 12.0.0+git.1488553020.e902441: + Recent upstream master (3c0af07629dc661aba84e2fef696339ac7171914) + Builds with GCC7 (boo#1025891)- Update to version 11.1.0+git.1486588482.ba197ae: + Update to latest upstream master (3d740bd) + cmake: added empty RPATH to several executables + rocksdb: sync with upstream- Update to version 11.1.0+git.1484919552.9216e9a: + Revert "rpm: put distro conditionals around Source0 in spec file" + Revert "ceph.spec.in: revert Source0 line to upstream version"- pre_checkin.sh: add logic to remove s390 architectures from ExclusiveArch line in ceph-test.spec (rationale: ceph-test is not shipped for s390x)- Update to version 11.1.0+git.1484745543.7b08de5: + Update to latest upstream master (36874c8) - significant changes: * cmake: Turn libcommon into a shared library (PR#12840) * cmake: fix rpath on shared libraries and executables (PR#12927) + Fix build failure in ppc64le and s390x, caused by missing "-momit-leaf-frame-pointer" gcc option in these architectures: + rocksdb: build with ppc64 (PR#12908)- Update to version 11.1.0+git.1484659687.3472421: + rpm: tell openSUSE to never clean the spec file + Enable ppc64le and s390x builds in SLE + rpm: lttng only on x86_64 and aarch64- Update to version 11.1.0+git.1483528076.d86680e (latest master) + Merge branch 'master' into ses5 (Merge: 185bcce798 a7b78620f0) with conflicts: conflicts in qa/ where resolved with theirs conflict in src/osd/PrimaryLogPG.cc was resolved with picking ours plus a method rename int ReplicatedPG::do_extent_cmp -> int PrimaryLogPG::do_extent_cmp- Update to version 11.1.0+git.1481663255.bf42706: + Update to upstream 11.1.0 release; for details see http://docs.ceph.com/docs/master/release-notes/#v11-1-0-release-candidate + move ceph_ver_hack.sh script from build service package to git repo (bsc#1015419)- Update to version 11.0.2+git.1480437645.66595d3 + Update to latest upstream master (boost library is now included in the tarball, so the tarball is much larger than before and the build takes longer to complete) + ceph_ver_hack_sh adaptation (upstream dropped src/make_version script) + rocksdb: do not build with --march=native (bsc#1012553)- Update to version 11.0.2+git.1480105120.6b8e9e5: + Revert commit 8aee8db140bcbd1ffd2a7b571dbbade10bec9de3 because it conflicted with upstream + update to latest upstream kraken (11.0.2) - for details, see http://ceph.com/releases/kraken-11-0-2-released/- Update to version 11.0.0+git.1473684054.73e4b4a: + safe_io: Improve portability by replacing loff_t type usage with off_t. + mon: remove the redundant list swap in paxos commit_proposal + msg/EventPoll.h: add override to virtual functions + msg/EventKqueue.h: add override to virtual func + msg/EventSelect.h: add override to virtual funct + ceph-disk: Compatibility fixes for Python 3 + ceph-disk: Use true integer division in get_dev_size + ceph-disk: Fix bug in FileLock + ceph-disk: Allow ConfigObj to write in binary mode + ceph-disk: Use context manager with FileLock + ceph-disk: Use os.path.isabs instead of .startswith('/') + ceph-disk: Set space_symlink to the path, not file object + ceph-disk: PEP8ify + rgw: rgw file fix bug of rgw_lookup can not exact match file name + rgw: fix the wrong return value + rgw/rgw_coroutine: move WaitContext to .cc file + client: pass a mask parameter to path_walk + mds/mdstypes: add btime to inode + mds/Server: set btime=ctime on creation + mds/MDCache: set btime on system inodes + include/ceph_features: add FS_BTIME features + mds: pass btime in InodeStat MClientReply, if feature is present + client: keep btime in Inode and InodeStat + ceph: break up ll_getattr into two functions + client: move the device bitshift handling macros to Client.h + libcephfs: add a ceph_ll_getattrx and ceph_statx + libcephfs: add a test for "lazy" statx + mds/client: add btime to CapSnap and MClientCaps + mds/mdstypes: add change attribute to inode + mds/Server: set change_attr to 0 on creation + mds/MDCache: set change_attr to 0 on system_inodes + include/ceph_features: add FS_CHANGE_ATTR feature + mds: pass change_attr in InodeStat MClientReply, if feature is present + mds/client: keep change_attr in Inode, CapSnap and MClientCaps + mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL + mds/client: bump the change_attr at the appropriate time for files + libcephfs: return the change_attr in the statx.stx_version field + tests: add a ChangeAttr test + mds: make frag_info_t add_dirty() function take a pointer to touched_mtime + mds: add change_attr to frag_info_t + test: add test for change attribute of directories + cephfs: rename ceph_mds_request_head and _args with a _legacy postfix + MDS: allow the MDS to accept requests to set the btime + client: add the ability to set the btime + client: add a ceph_fstatx + client: extend the Btime test to cover fstatx as well + journal/JournalTrimmer: move C_RemoveSet struct + rbd_mirror/ImageSynceThrottler: move struct to .cc + libcephfs: add unmount function in cephfs.pyx + rgw: fix typo of "minite" to "minute" in rgw_lc.cc + rgw/rgw_lc.cc: fix sleep time according to the error message + crush: don't normalize input of crush_ln iteratively + crush: remove clutter + mds: remove max_mds config option + vstart.sh: add option to turn on multimds + rgw: right parenthesis is missing in radosgw-admin help message on caps + SQUASH: client: request AUTH caps on the directory during create if we'll need to check perms locally + SQUASH: Revert "mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL" + SQUASH: client: always take a change_attr update from the server if it's newer + SQUASH: mds/client: don't get clever with ceph_mds_request_head_legacy encode/decode + rgw/rgw_rados.h: remove unneeded class C_Tick + SQUASH: client: querying for stx_version field requires getting all shared caps + SQUASH: mds/client: add routines to copy to/from ceph_mds_request_head_legacy + client: properly set inode number of created inode in replay request + test/librbd/fsx: enable exclusive-lock feature in krbd mode + os/bluestore/BlueFS: fix async compaction txn + scripts/bdev_grep: parse bluefs style extents too + SQUASH: client: request all shared caps if ctime was requested + os/bluestore/BlueFS: factor unflushed log into runway calculation + osd/ReplicatedBackend: move classes to cc file + os/bluestore: honour allow-eio flag during read + CmakeLists.txt: use LIB_RESOLV instead of resolv. + osd/ReplicatedPG: move classes to .cc file + librbd: potential double-unwatch of watch handle upon error + cls/journal: add async client_update_state method + journal: allow to trim journal for "laggy" clients + librbd: optionally flag "laggy" journal clients disconnected + rbd: new command to disconnect journal client + rbd-mirror: decode_client_meta should return false on error + rbd-mirror: resync was possible only when image replayer start had succeeded + rbd-mirror: stop replay when client is disconnected + rbd-mirror: option to automatically resync after journal client disconnect + qa/workunits/cephtool/test.sh: fix omision of ceph-command + os/bluestore: use global compressor if possible + build/ops: fix /etc/os-release parsing in install-deps.sh + osd/OSD.cc: remove repeated searching of map + test/cephfs: add mount&&unmount test + mds: s/used_ions/used_inos/ + Add dependencies from ceph_smalliobenchrbd on cls_rbd, cls_journal, and cls_lock. + ceph_test_objectstore: add SyntheticMatrixSharding + ceph_test_objectstore: occasional umount/fsck/mount + ceph_test_objectstore: test shards for longer + crush/CrushCompiler.cc:884 bug fix: index out of range + Makfile: Fix rocksdb error when make dist + src/CMakeLists.txt: exclude parts not buildable on FreeBSD + src/pybind/CMakeLists.txt: conditionaly build cython tools + src/tools/CMakeLists.txt: conditionaly build ceph-client-debug + src/test/objectstore/CMakeLists.txt: conditionaly build tests + mds: trim null dentries proactively + cmake: include(SIMDExt) in src/CMakeLists.txt + mds: log path with CDir damage messages + hint in extent_alloc code + remove wrap argument and handle in wrappers + Hint argument in alloc_blocks + test case changes + os/bluestore: shard extent map + os/bluestore: make nid and blobid allocation less racy + os/bluestore: optimize compress_extent_map + os/bluestore: fix fsck used_block bitmap + os/bluestore: use block_size for allocator unit + os/bluestore: make blob_t unused helpers use logical length + os/bluestore: instrument big/small writes + os/bluestore: instrument transaction count + os/bluestore: instrument onode reshard events + os/bluestore: dump some stats after fsck + os/bluestore: assert shared blob cache cleared on split + remove autotools + test/objectstore/CMakeLists.txt: fix libaio conditional + buffer: clear append_buffer on clear() + os/bluestore: tunable prealloc size for ExtentMap inline_bl + os/bluestore: don't dirty onode if its size is already at desired offset + os/bluestore: remove never reachable asserts + os/bluestore: drop unnecessary separator between fields + os/bluestore: fix key+name sort wonkiness + os/bluestore: encode shard id in single byte + os/bluestore: small put_ref cleanup + os/bluestore: remove faulted debug hackery + os/bluestore: bits for unit tests + unittest_bluestore_types: resurrect blob and extent_map unit tests + os/bluestore/BlueFS: do not start racing async compaction + os/bluestore/BlueFS: fix Dir memory leak + buffer: implement buffer::list::reserve(n) + os/bluestore: do not waste memory on cached encoded blobs + qa/workunits/objectstore: fix test_fuse.sh + os/FuseStore: only flush if dirty + build: drop dryrun of autogen.sh from run-cmake-check.sh script + os/bluestore/BlueFS: For logs of rocksdb & bluefs only use directio. + os/bluestore: remove some copy-pastes + cmake: make py3 a nice-to-have + os/bluestore/BlueFS: only extend extent on same bdev + msg/AsyncConnection: add const to mem functions + msg/AsyncMessenger: add const to function + client/barrier: move C_Block_Sync class to .cc + osd/OSD.cc: remove unneeded searching of map + Set ARM_CRC_FLAGS from the CRC test rather than ARM_NEON_FLAGS + rpm: Moved ceph-client-debug from ceph-base to ceph-test package + rpm: Renamed bcond tests flag to make_check + rbd-nbd: fix kernel deadlock during teuthology testing + rbd-nbd: mask out-of-bounds IO errors caused by image shrink + librbd: invalidate cache before trimming image + librbd: ignore cache busy errors when shrinking an image + librbd: potential seg fault when blacklisting an image client + cmake: Use WITH_TESTS flag to guard the build of ceph-test scripts/binaries + rpm: Added ceph_test_package bcond flag to control the build of ceph-test package + deb: Moved ceph-client-debug from ceph-base to ceph-test package + ceph-objectstore-tool: add a way to split filestore directories offline + install-deps: exit non-zero when we cannot match distro + librbd: possible deadlock if cluster connection closed after image + osd/ReplicatedPG: remove class redeclaration + librbd: ignore partial refresh error when acquiring exclusive lock + osd/OSD.cc: remove unneeded returns- Update to version 11.0.0+git.1473424516.3b8b524: + Revert "ceph_disk.main: s/get_dev_size/get_free_partition_size/" + Revert "ceph_disk tests/test_prepare: s/get_dev_size/get_free_partition_size/" + Revert "ceph_disk tests/test_get_free_partition_size: New unit tests" + Revert "ceph_disk tox.ini: add tests/test_get_free_partition_size.py" + rpm: put distro conditionals around Source0 in spec file- Update to version 11.0.0+git.1473418476.095f67c: + ceph.spec.in: revert Source0 line to upstream version + ceph.spec.in: conditionalize %prep command- ceph.spec.in: enable cephfs_java build unconditionally - new (merged) commits from upstream master branch: + mailmap updates + rgw: fix the handling of rgw_swift_url_prefix. + rgw: ONLY improve code formatting around RGWRESTMgr. + rgw: add support for the crossdomain.xml resource of Swift API. + rgw: add support for the healthcheck feature of Swift API. + swift /info implementation. + rgw: settle /info implementation across other swift-at-root features. + compressor: isa-l extension for zlib plugin Signed-off-by: Alyona Kiseleva + mon: tear down standby replays on MDS rank stop + mon/MDSMonitor: move C_Updated class to .cc file + rgw_file: fix/update rgw_open flag arguments + rgw_file: fix/update rgw_create flag arguments + doc: remove btrfs contradiction + msg: make async backend default + msg/simple: wait dispatch_queue until all pipes closed + rgw_file: implement stateless write completion timer + rgw_file: add RGW_OPEN_FLAG_STATELESS as a synonym for V3 + rgw_file: log on write completion events at level 10 + rgw file: allow RGWLibFS::write_completion_interval_s to be set in conf + osdc/ObjectCacher: move C_ReadFinish, C_RetryRead + osdc/Journaler: move C_DelayFlush class to .cc + rgw: fix RGWAccessControlPolicy_SWIFT::create return value check error + librgw: add API version defines for librgw and rgw_file + make-dist/ceph.spec.in: Fix srpm build breakage. + ceph_timer: prefer using directive to typedef + rgw_file: explain semantics of RGWFileHandle::commit + compressor: Better arch ifdefs for isal code + mds/MDSTable: add const to member functions + os/bluestore: fix some #includes + vstart.sh: -b for bluestore + os/bluestore/bluestore_types: make blob_t get_chunk_size const + os/bluestore: use Blob const and non-const accessors + os/bluestore: avoid reencoding unchanged blobs + os/bluestore: decode blobs on demand + mds/SnapRealm.h: add const to member functions + os/bluestore/bluefs: avoid check "locked" field for newly created file + os/bluestore/bluefs: check against locked field during unlink + os/bluestore/bluefs: assert refs of file don't underflow + os/kstore: kill dead code + rgw: remove duplicated calls to getattr + debian: should dh_python3 python3-* not python-* + pybind: silence -Wsign-compare warning + test/ceph_test_msgr: fix -Wsign-compare warnings + test/unittest_alloc: fix -Wsign-compare warnings + librbd: API methods to directly acquire and release the exclusive lock + doc: add graphic for cap bit field + mds/MDCache.h: remove unneeded access specifier + librbd: skeleton implementation of client-side image cache + librbd: blocking parent IO completion no longer required + librbd: remove use of owner_lock on IO path + Revert "osdc: ObjectCacher flusher might needs additional locks" + librbd: support bufferlist payload for AioImageWrite + librbd: add internal support for scatter/gather IO + librbd: initial integration of ImageWriteback to AioImageRequest + librbd: consolidate IO clipping to reusable method + librbd: differentiate between image and object cache + librbd: C_ImageCacheRead bridge from Context to AioCompletion + librbd: integrate image cache hooks into IO path + common/Throttle.h: remove unneeded class + cmake: fix the tracing header dependencies + src/test/bench/CMakeLists.txt: RBD exclude + src/CMakeLists.txt: RBD|KVS|FUSE exclude + src/librbd/CMakeLists.txt: krbd and secret.c are LINUX dependant + src/os/CMakeLists.txt: AIO|FUSE exclude + src/test/CMakeLists.txt: RADOSGW|RBD exclude + src/test/common/CMakeLists.txt: BLKID exclude + install-deps.sh: initial distro detection based on /etc/os-release + ceph_test_objectstore: fix ObjectStore/StoreTest.BluestoreStatFSTest/2 on ssd + ceph_test_objectstore: disable statfs checks on available space + messages/MOSDMap: mark as enlighten OSDMap encoder + cmake: remove unused librados_api target + cmake: replace Findlttng-ust.cmake with FindLTTngUST.cmake + cmake: let librados_api_obj depend on librados-tp + os/bluestore: yet another statfs test fix + Revert "osd/ReplicatedPG: for sync-read it don't cacl l_osd_op_r_prepare_lat." + doc/release-notes: v0.94.9 + os/bluestore/bluefs: use map to track dirty files + os/bluestore/bluefs: update mtime of inode in unified path + os/bluestore/bluefs: drop redundant eof check for read_random() + os/CMakeLists.txt: undubble kv.cc usage. + test,pybind: silence -Wsign-compare warnings + test/perf_local: fix -Wmaybe-uninitialized warnings + os/bluestore: get rid off "isa-l" type in ZLibCompressor ctor + Allow compressor build without YASM + script/bdev_grep: update to use hex + os/bluestore: improve failed csum debug output + librbd: improve image state machine debug log messages + librbd: deadlock when replaying journal during image open + os/bluestore: end scope of std::hex properly + os/bluestore: don't over-gift if bluefs free is smaller than bluestore_bluefs_min + os/bluestore: use _setattr for SETATTR + os/bluestore: make object existence check robust + ceph_test_objectstore: assert umount succeeds + ceph_test_objectstore: clean up Rename test a bit + ceph_test_objectstore: fix TryMoveRename test + os/bluestore: add onode/buffer cache statistics + os/bluestore: end scope of std::hex properly + cmake: pass -DINTEL* to gf-complete cflags + os/bluestore: conditional checking label of bluefs devices + src/CMakeLists.txt: -Woverloaded-virtual is already included in -Wall on Clang + os/bluestore: don't overwrite type if it does already exist and at desired type + os/bluestore: trivial cleanups + os/bluestore: replace store with logger in Cache + os/bluestore: check iterator before using during fsck- pre_checkin.sh: add Source line for ceph-rpmlintrc - move Source line for ceph-rpmlintrc from ceph.spec to ceph-test.spec (see https://github.com/SUSE/ceph/pull/60 for rationale)- Update to version 11.0.0+git.1472455009.a17726c: + ceph.spec.in: drop ceph-rpmlintrc source line + ceph.spec.in: drop epoch prefixes- Update to version 11.0.0+git.1472384770.c9f3af8: + test/rgw: add --gateways-per-zone to test_multi.py + rgw: RGWDataSyncCR fails on errors from RGWListBucketIndexesCR + rgw: RGWCoroutinesManager::run returns status of last cr + os/bluestore: fix whitespace in bitset apply helper + cmake: do not link secret.c if not necessary + cmake: do not link against keyutils if not necessary + os/bluestore: fsck on mkfs (on by default) + os/bluestore: ensure block device size is a multiple of the block size + Revert "ceph.spec.in: don't try to package __pycache__ for SUSE" + rpm: force creation of Python 3 __pycache__ on SUSE + doc: add v0.94.7 changelog + doc: add v0.94.8 changelog + doc/releases: add v0.94.8 to timeline + doc/release-notes: fix v10.2.2 changelog link + unittest_bluefs: fix block device sizes + doc: do not list all major versions in get-packages.rst + doc: add missing PR to hammer 0.94.8 release notes + doc: release-notes.rst: move misplaced line + doc: fix two broken links in releases.rst + doc: add 11.0.0 to releases table- pre_checkin.sh: forward-port insert_line_before() function from filesystems:ceph:jewel/ceph version - README-ceph-test.txt: new file - ceph-test.spec: add ceph_ver_hack.sh as a source file- Update to version 11.0.0+git.1472202104.8999301: + rgw: add deadlock detection to RGWCoroutinesManager::run() + src/common/lockdep.cc Reduce logging noise if lockdep is not tested + osd: fix updating same_interval_since logic of project_pg_history() + osd: drop duplicated sched_scrub during tick() + osd: move methods which don't need osd_lock from tick into tick_without_osd_lock() + mon/PGMonitor: mark dump_object_stat_sum() as static + mon/PGMonitor: calc the %USED of pool using used/(used+avail) + rpm: proper packaging of udev directories + LTTng-UST disabled for openSUSE + ceph-disk: do not activate device that is not ready + osd: update reture type of get_pg_or_queue_for_pg() to PGRef + common/WPQ: add sanity check to avoid potential access violation + osd/osd_types: kill undefined_shard() method of pg_shard_t + release-notes.rst: draft 0.94.8 release notes + PG: introduce and maintain upset + mon/MonClient: should update sub_sent with sub_new + osd: set objecter.osdmap when starts + rgw: fix for assertion in RGWMetaSyncCR + PG: use upset rather than up for _update_calc_stats + rgw: do not try to encode or decode time_t + cls_rgw: fix the compiler warning + msg/async: fix compiler warnings + os/filestore: silence compiling warnings + test/rbd: silence compiling warnings + rgw: silence a compiling warning + msg/async/kqueue: avoid remove nonexist kqueue event + librbd: cache was not switching to writeback after first flush + mon/OSDMonitor: fix potential division-by-zero error + mon/OSDMonitor: get rid of snprintf when formatting output string + mon/OSDMonitor: avoid duplicated calls when determining osdmap boundary + osd/OSDMonitor: avoid duplicated assignment of oldest_map/newest_map + osd/OSDMonitor: drop redundant check of exists() + mon/PGMonitor: skip scrub checking if we can + mon/PGMonitor: drop redundant loading of dumpcontents + mon/PGMonitor: fix potential underflow + debian: replace SysV rbdmap with systemd service + os/bluestore: break down onode vs bnode_map size in log + os/bluestore/BlueFS: do direct io by default (not buffered) + os/bluestore/BlueFS: rename buffered_io option + os/bluestore: add multiple finishers to bluestore + os/bluestore: fix decoding hash of bnode + cmake: fix unmatched endforeach + debian: enable dh_python3 for python3 packages + debian: exclude python3* packages in dh_shlibdeps + debian: drop python-argparse dependency + os/bluestore: fix race condition during get_fs_usage() + os/bluestore: use bluefs_max_prefetch for log file prefetch + os/bluestore: use hex if we are running out of space + os/bluestore: fix assert + osd: bail out if transaction size overflows + os/filestore/FileJournal: bail out if transaction is too large + os/FuseStore: remove unneeded header file + os/Memstore.h: add override to virtual functions + os/MemStore: move OmapIteratorImpl to cc file + os/bluestore: include bluefs space in statfs result + common/config_opts: fix comment(radio -> ratio) + msg: kill unused macros + mon/OSDMonitor: add output field name of average/overload_utilization + test/librados: rados_connect() should succeed + ceph-osd-prestart.sh: check existence of OSD data directory + osd/ReplicatedPG:wipe off param op from generate_subop() + ceph-post-file: migrate to RSA SSH keys + ceph-post-file: Ignore keys offered by ssh-agent + os/Memstore: move PageSetObject class to .cc file + yasm-wrapper: dont echo the yasm command line + arch/arm.c: remove unnecessary variable read for simplicity + rpm: drop obsolete libs-compat metapackage + ceph.spec.in: drop trouble-making divider comments + rpm: do not unnecessarily spawn shells for scriptlets + cls_lock: support updating the lock cookie without releasing the lock + librbd: helper state machine to update lock cookie + librbd: store exclusive lock cookie instead of recalculating + librbd: exclusive lock now supports reacquiring a lost lock + librbd: helper state machine for asynchronous watch recovery + librbd: integrate asynchronous image rewatch state machine + librbd: image state machine now has hooks for lock requests + librbd: interlock image refresh and lock operations + librbd: remove unused refresh request logic + test/common/test_util.cc: FreeBSD does not have distro information + README.md: replace package build instructions with tarball instructions + doc: fix singleton example in Developer Guide + rgw: delete region map after upgrade to zonegroup map + rgw: fix period update --commit return error + cmake: use PERF_LOCAL_FLAGS only if defined + tests: populate /dev/disk/by-partuuid for scsi_debug + ceph.spec.in: don't try to package __pycache__ for SUSE + doc: fix wrong osdkeepalive name in mount.ceph manpage + rados-striper.sh: Use expect_failure and conditional stringmatching + Revert "ceph.spec.in: ppc64 build in Tumbleweed only" + jerasure: include generic objects in neon jerasure lib (like sse3/4)- pre_checkin.sh: fix package files path rewriting- _constraints: tweak values to pick up maximum number of OBS build workers- Update to version 11.0.0+git.1471969747.79ca12e: + cmake: fix declaration position of WITH_TESTS option- Update to version 11.0.0+git.1471959548.f013b97: + rpm: Renamed bcond tests flag to make_check + cmake: Use WITH_TESTS flag to guard the build of ceph-test scripts/binaries + rpm: Added ceph_test_package bcond flag to control the build of ceph-test package- Update to version 11.0.0+git.1471605408.9203335: + ceph.spec.in: don't try to package __pycache__- Update to version 11.0.0+git.1471601504.f312e7e: + test/libcephfs: add the necessary judgment + test/librados: add ASSERT_EQ & ASSERT_NE judgment + rgw: optimize the usage of string.find and some indents + rgw: patch manifest to handle explicit objs copy issue + rgw: adjust objs when copying obj with explicit_objs set + rgw: adjust manifest head object + rgw: fix the error return variable in log message + rgw: fix trimming object expirer's hints. + rgw: fix skipping some objects to delete by RadosGW's object expirer. + rgw: ONLY improve code formatting in rgw_object_expirer_core.{cc,h}. + os/bluestore: allow csum verification disable on read. + os/bluestore: add csum on/off test case + os/bluestore: add store statfs parameters to bluestore perf counters + os/bluestore: add perf counters for compress/decompress performance measurement + tools: fix the core dump when get the crushmap do not exist + librbd: request exclusive lock if current owner cannot execute op + src/global/pidfile.cc: Assign elements in structures individually + rgw: fixes for period puller + rgw: for the create_bucket api, if the input creation_time is zero, we should set it to 'now" + pybind: Rework rbd/setup.py for PyPI + pybind: Add BUILD_DOC env var to rbd/setup.py + doc: fix rbd map format in rbd manpage + ceph-disk: change ownership of init file to ceph:ceph + cmake: Also build Python bindings for Python 3 + pybind: Make ceph_volume_client's syntax compatible with Python 3 (just so it passes the bytecompilation step) + debian: Add packages for Python 3 bindings + rpm: Add packages for Python 3 bindings + os/bluestore/bluefs_types: fix extent operator<< + os/bluestore/BlueFS: do not op_file_update deleted files + os/bluestore: print bluefs_extents in hex + os/bluestore: do not track bluefs_extents via freelist + os/bluestore/BitMapAllocator: align to min_alloc_size on init_rm_free + rgw/doc: fix typo and indent. + mon/MonDBStore: fix assert which never fires + osd/OSDMonitor: count pg primed more precisely + doc: replace cluster name with cluster-name to avoid confusing + doc: fix typo maximum -> minimal + doc: fix command format + batch is_allocated bit checks + cmake: Move Python detection back outside of pybind + doc: format 2 now is the default image format + rgw: Rework of s3 v2 local authentication code. + rbd: bench io-size should not be larger than image size + doc/install: Use https:// for download.ceph.com + librbd: fix possible inconsistent state when disabling mirroring + os/bluestore/ExtentFreelistManager: move default create out of parent + librbd: new journal policy to disable initializing the journal + librbd: permit disabling journaling if in corrupt state + qa/workunits: support filtering cls_rbd unit test cases + os/bluestore/BlueFS: _should_compact_log + os/bluestore/BlueFS: _replay(false) to dump log file + mon/PGMonitor: move C_Stats struct to cc file + client: don't use special faked-up inode for /.. + client: add a testcase for "/.." handling + os/bluestore/BlueFS: add OP_JUMP + os/bluestore/BlueFS: allow log position to when doing op_jump + os/bluestore/BlueFS: move metadata dump (compaction) into a helper + os/bluestore/BlueFS: interface to get bluefs space usage + os/bluestore/BlueFS: init in header at decl + os/bluestore/BlueFS: assert we never extend log at flush + os/bluestore/BlueFS: use hex + os/bluestore/BlueFS: Add sync and async compaction + os/bluestore/BlueFS: Helper functions for the unit test framework + os/bluestore/BlueFS: unit tests for log compaction + os/bluestore/BlueFS: Cleanup unused interfaces + unittest_bluefs: make flush_3 test device larger + bluestore: initialize csum_order properly + librbd: fix possible memory leak when image open fails + script: improve ceph-release-notes regex + rbdmap: specify bash shell interpreter + doc: added rbdmap man page to RBD restructured index + librbd: always respond to "release lock" request if lock owner + rgw: fix radosgw daemon core when reopen logs + qa/workunits/rbd: demote/promote image on same cluster + rbd-mirror: include tag tid in bootstrap debug log messages + librbd: separate journal::TagData predecessor data into new struct + librbd: block RPC requests when demoting the image + librbd: normalize journal promotion/demotion events + rbd-mirror: demote/promote in same cluster results in split-brain + rbd-mirror: prevent syncing to non-primary image after failover + test: fixed unused function warnings in unittest_rbd_mirror + doc: remove the description of deleted options + msg/async/Stack: add abstract Stack + msg/async: add PosixStack support + msg/async/net_handler: let set_socket_options return value + msg/async/AsyncConnection: support NetworkStack api instead of posix + msg/async/Event: debug event address when dispatching and executing + msg/async/Event: remove event wakeup flag + msg/async/PosixStack: increase log level + msg/async/Stack: disable smart thread spawn now + common/ceph_context: add prefork/postfork wathcher support + msg/async/Stack: register fork watcher + msg/async: allow EventCenter::set_owner reentry + msg/async: readd set_priority call + msg/async/AsyncConnection: fix _conn_prefix racing when stopped + test_async_networkstack: add networkstack tests + msg/async/Event: remove global_centers assert + test_msgr: ensure wait for ms_dispatch executed + mon/OSDMonitor: add sanity check before setting use_gmt_hitset attribute + osd/OSDMonitor: drop redundant null check of max_failed_since + osd/OSDMonitor: drop redundant check of assert + mon/LogMonitor: remove "host" and "fsid" from handle_conf_change() + test: gcc 6.1.1 complains about missing include: . 4.8.3 does not complain about it + rgw: fix flush_read_list() error msg + cmake: Fix mismatched librgw VERSION / SOVERSION + cmake: Add -pie to CMAKE_EXE_LINKER_FLAGS + rgw_file: restore local definition of RGWLibFS gc interval + kv: delete store after pg destructor is called in OSD shutdown. + kv: fix iterator invalidation in memdb. + kv: fill 'm_key_value' after 'seek_to_first' or 'seek_to_last' + kv: fix iterator bug in prev + test/store_test: fix incorrect prompt given by stash callback + test/store_test: drop redundant transaction of callbacks + test/store_test: avoid dynamic allocation of trans + cmake: recompile erasure src for different variants + rgw ldap: protect rgw::from_base64 from non-base64 input + qa/workunits/rados/test_python.sh: Allow specifying Python executable (through an environment variable) + ceph.spec.in: specify local sources + ceph.spec.in: ppc64 build in Tumbleweed only + ceph.spec.in: add lowmem_builder_override + ceph.spec.in: add Prereq: permissions to radosgw package + ceph.spec.in: remove vim hints line + ceph.spec.in: remove all mentions of epoch + ceph_disk.main: s/get_dev_size/get_free_partition_size/ + ceph_disk tests/test_prepare: s/get_dev_size/get_free_partition_size/ + ceph_disk tests/test_get_free_partition_size: New unit tests + ceph_disk tox.ini: add tests/test_get_free_partition_size.py + ceph.spec.in: replace pwdutils dependency with shadow + Make systemd-tmpfiles create /var/run/ceph-radosgw at boot + rpm: fix ownership of logfiles in %pre + Revert "rbd: update default image features" + osd: munge cache-pin ops with data into writesame + ceph osd: add support for new op cmpext + rpm: make lowmem_builder code much smarter + rpm: add procps build dependency + rpm: modify optflags to make debuginfos less huge + Revert "ceph.spec.in: add lowmem_builder_override" + rpm: lean_debug_symbols bcond + rpm: use gcc manpage terminology for debug info bcond + Revert "Drop any systemd imposed process/thread limits" + Revert "systemd: Add systemd sandboxing to services." + rpm: be careful about build parallelism + rpm: divergent java, ocf conditional builds + rpm: fix _with_ocf + rpm: drop obsolete libs-compat metapackage + rpm: drop obsolete python-ceph-compat metapackage + ceph.spec.in: drop ceph-brag and ceph-post-file + ceph.spec.in: move cephfs-* fsck tools to ceph-base + ceph.spec.in: move ceph-dencoder to ceph-base + rpm: Moved ceph-client-debug from ceph-base to ceph-test package + rpm: add udev BuildRequires to provide /usr/lib/udev directory + rpm: Remove trailing whitespace in usermod command (SUSE)- Update to version 11.0.0+git.1470997027.9c9b8a5: + doc/radosgw: remove reference of purge-temp.rst + doc/radosgw: fix the table formatting + doc: silence sphinx warnings + global/signal_handler: use sig_str instead of sys_siglist + librados: use bufferlist instead of buffer::list + cmake: cleanup Findgperftools.cmake + cmake: cleanup Findleveldb.cmake + cmake: cleanup Findxio.cmake + rgw file: remove busy-wait in RGWLibFS::gc() + Lowered third example to keep PG count lower. + run-make-check.sh: pass args to do_cmake.sh + ceph.spec.in: specify local sources- Update to version 11.0.0+git.1470355272.6fed82a: + initial fork of SES5lamb78 149947947212.1.0+git.1498654198.20d6a47cc9-1.212.1.0+git.1498654198.20d6a47cc9-1.2rgw-2.0.0-py3.4.egg-infoPKG-INFOSOURCES.txtdependency_links.txttop_level.txtrgw.cpython-34m.so/usr/lib64/python3.4/site-packages//usr/lib64/python3.4/site-packages/rgw-2.0.0-py3.4.egg-info/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -gobs://build.opensuse.org/openSUSE:Leap:42.3/standard/53c90d6f2632c2120be5fbe5043e6845-cephcpiolzma5x86_64-suse-linuxdirectoryASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=53cac94c934f017db7a9381e0cc48338027dd07c, stripped PRRRRRRRRR bg[}af70'?`] crt:bLL'V&D~&RWt~{|{zZ:f&)i$ ,B W΢"ʟx7 YX`4266 z!_v <dB Rc_Cǩf,` ݍ#m_<%5Bv~m p\/)=VD6cN;NF]|P["!k4Ie㋹/ʆQ ߰=vGo2_sLmcmFm,:9%/,9nyBʄ`kgObmm\ yvZ11%|+=<)GxK/8 C9iDνq:`4Zro~ʜCb (Idv\"oY ذo0/yҐVК:q@^8Ht;ƫS:H-}??'6>=5(J=PإKy-JRMl^`>h4b 4j3Xŏ^`3I!lR˫hn:.mdWgd,C_훣"\+dqtEuznx[@ #O/ k%/zJI]B 8ݥ#6XqǾ=,oָ&3Bz%|@.;y-l)ZHaD#V}=쿗L$]eI8Zj%BoFF)/" @1eL69 RMaJup;q X?ߐFN$̔.'g:Y2zoKd㉂Xnopuc.CBm(xgt@A"ta>8a؈2ev^d~Y2uM)*.w&vwq9LS:92a%r*5Rq"sȀF+1f,Eo>hNz[Y#GuDV5|?ͥZh ?2J?ud3uh! ^AI;}d;Tp8Tt^dN: }͵zTC()* P71#+Ԕ:Laze!B I#FJ!8% i;aIVm|~6N=]\`LcJskfMjJBGcDMMj'a4KwSSBRr'7mk[@_o:rzRTF "`?"?moG݆$IaKW/7Ɍj0`v[I5M+(#4(d.!#va5c\Alxa!&)S'2#R/F7+/|}NqއKۄK~L mv5x.owerTl<\2hvuPC?(_d/΍,iϣ$Q`J[qn>M+#V߀|$vcx*VZ8묄|Jn .g4v5#& $##v~ϛYVqVi/bu'X(z?n-F?)'[71͜v0*VIظw3 Ss?Y/|Ѝ)XT1'棶[ 04=%Nһ7srVa`־PFr$xrۃf$*~=lTWFT)fR]H!Ñ\3؜Wc˒"!mmyFCM { 4#kgaddoӞAUB^!UWR f>mWBjJx2`Mވ!4Ӟ'.lhFr#SmYW`ų:y\nrم>\^,9PRL%x6:%^S1O|ҎS ("rྒz&_rx3ٌ.ۛJˁAiEfE k*n_WCEó0q׾N5Kk3 |2IS_8G9@'gV <;0PQsD=̢~'V)X0߫&X -AӥIrZRך ZA|8RN 4` : ?j d-jGsj8qɗқɎ@X!P;וѢB? njnAx)@c& V 捣yy\ 5lft(Ha䶤˛j/X% *((s2 | qګ&bS{(RYsS0I(!'#L>"(|a|߅?F[]S_lJcՂT ͦKl,0ڿ 4usT~'0kGA"P$Uo!Q}eҔx;úRAQB#NȊ@gשBGN@Ce|1g'BUdgTRagd[66LMwVȌ-%Iy@as[8FMTjѵ:9ng+k^I`,?`?LE^/#B7O;_m*Q HA E43 x3*|X>2O!Gq]kWghcϐvShI$0$ޟ Fۭ]e d9-GNR؜ ^0pց\jĈێRD(֞9a3/q,N!gJ'Y csSox`,+?iՃ|d C7I.<.2q;#MALlWv1U^pFv0_耾ɧiV}g0DXJ$;19߹RH)JJhI9ln$ h{23z)lNؓQT2^D[uh޴K [&z{1,-Ѐ+ƁD.Z̘F@rRc݂yy?Bu.d64'?OOU'?^Cc@q/ =F3we,#xNVL<#+!5DxX; hf_7|B'd@ۺ$D>g;Ii`η)YYҙ'5ҺU}3jtu|Sۊ4vyp&~b@ )Bvg,d5}B0]Wuy1kh7G;zTd0a4#Fu)@k|zI/R?ꝏ3rG!!ll HH%~&inѝ&딳7SHhdRE!diKjj*y7GbAJ_R7g#<2>֘ "kiǭz?WS6>8IQJ[M[F-or2J) Nx;CDR}הּ[fdMY^hXXke˻?؇QԥpA:0 Z{cZz:² AyG+"\Os^SlۏT`\[b=2-[dS Zgafn[Vw)ayy)xe- N,̲Fc3>ʱt\lmHI~Yn{ݚڭnJroZsO_rIy=IA1ƙT#Ju'{JGC{;LJ+d߭'ll!&)b QzA(zD>ˑl@y7oЗux0QU"vwwNV͑ `=TB j@~ K*)`5>N7X+z&u}I.6f9n{ 별j)"iOj#Es4Oo;r.hh -jFFg:^apky)B `m*t| |6 E#,lG2Y˥O)JdN@Ess]'RѦI53|fpg"c)Oʷ+E]FĂ\t}wҡjR?\>fīK 1m&|V5=3: Q]X>A[8.{cs,I>Dؕ񽝾{q(-ƓGcpDGpI LXV4iYiNڣn6䬟S >@zaՏIɯ*$>ːU,Y Ħaa ;@!x7Lࡷַ"kAvune |4y.j;&!D2&Tɀo6'Ί5ڼ 27Y7 ۚD32b_׋k-&MyM*m8$^#rlv-B/։ ){1 8ߦ*f;Xؑ";h/z73By,Hg@I$J[P֡_1uI 9/.OMتv9u>='TZ0߁ TC|ĵQe8b\Fª&*Gíx!V{?2j#)֑gV{דS#i@ 1JŮtoJa$ak0d[sTv3P}3<,L ,"9j5@Ga߹^L^nf"am϶m߫rw[@r[_% 94Ͱލ% IGNKoJu@3ђ^@XiJ o#fj@$yT1)D\:GY~5x5JfN|oHlĸ-lOѷNMAUq`GV C]YX:{0Q_w"+5n&P hm Fyp\G 5(a Я I'AɩJKECf3Fk$MCǻ&p+itҾޠIL}$i`Dd6Ĝɤ\vJso 8LޙM,-$U;yxB} n6B2y\%3gN$_W?CG!~eiPS9tw^g2;B2o4_5@ّ.'$i8f"rp_k|3kMׯܓ.1]ҏiO[be&XepjĘyMrpA 3~z8'~1X%FLLPNWuB7$FWW5քd 鯱&>cPh|XVala/$1ɠq0Kg kM{3B[j}cS~^3>Ľ9\KU< r %yk pS [?ac!Yy-;F@XpK`$^{.&*st#Seco!d:Onjkb}~>"Z[ ySlTwn/!jz K_o܆}3}ahV# 16ru}[Zr4cYɅ*4:|yѪѾ ajK`h(/)mucxt 'dMY?>WA} 4a [[LX[6H]$FA|ѶTm'OL,efa $1~LJYU_!,uS.kK'X!y)ӯM 52?Yaz J<%j5UJu$W߸q* S 9 *4okkƸvv̍fi\=ɘ)ᖰ[E)e x〴(h!VJeRrdk)Lu~ݎ!+lU94ul٪GKW&hY]XZn5MzJ_qBCwm'Wa/8 2[1A v58 ߡ`z72Y RўĢb=)yG?H >v'ٜ X@dZ7jB6^uAsqHTQOqI)?ǒ٭cwtT(?8𻍦SP-*%qE/26wKRñA&3sBd %th%|HɌEz@A͇:V崬xꥈPc$x)o^PD/ Nb i\5=؉we?tBQF% PR XYKaE,MHS$iŋA^RZύz NX%WFtN8ݔ-%w╳k.KtUEN([xByM7(qCY {lMzh/ޭ7+4w XQ8U`{r$3g!{NýS?I+_@ 6jO8:_ ̑_s' ӫm78! 06|ppN:CQq~9g\՜cW>+BK{rdU#K퀓e#O Yv|Py3O(h߇pц]4Q* R:(p/hS*?Bz{.l?gNcVɲ@lfb7t[PHPW]e+ULM(68$t'ҍҵrk3E;fCYM^mM3\)׌ [Y4ًgQGF%r2h)"dDv鑇.9ʫ>"mJstj%93V}2:C2: iT%"z/_BBrw w__:濱G5A}yt!"0PY|r5ۇ&=\$!F@rrR }N[#X~絡QO vtf_F9EA?ȸ`Ub3{R!"GRfIS;|BM%!Ø6`Q:`?a2Pzfui[ՁPa|%njtx0L\)aJCTC}9SË^ vi3Nf6yH $Qݸ\ ?V BjN\(Xa|:0r'' i$67<oKnFPHzuLt!:{Yx"WtxX)''L1K`G-Փ?ɎXTy j E6QSL^Z͑A4Ej,0=pC{ 93 rdf٪*hwƨ Up|b=(qia xn/3-7 VzMdr[>N:GآX&aXZ}!2|,3뼄<b_VlcM&: 6A|@WC,]ɺ%Ae=bLd~ͨ7 ֺ,P9>T,nzf[n3̔w{P9^]=>J+Wk%6[t!LZ$-UVĩod1cG"{`RgGq@H` t%86pW<վ rcCm~ u`P=]BbC`n{8|,N.d-)N`̵?}5p2*YO`_NEmZ usd m ō FϐIj~s+u ׌94::=!?[~P C;v+)Rw=^+6AkN3 Ә_D/eԹ}pJ`^M!A]0 /+(! Zx$ɍ$d_'ewRY5XOz[X(|*cL$\|%oX)c.M,jƈOڸebc:HXsdvd4h Y!4lMD n\_CU> ޶ Z%)n}8M|'U?dСY6y-D{k- NdFG,V]ކt&5Dg;PJ3Y(1(A/@!}J0%Z%qWљ:ص`u)eDr@F7l)0"uzen:"%6y<ËjtS3@GmOnRU S zi;~ ߕI|ol V &VAh%5y>pٔg;u , &Q#Sp>+z;i`TX-dOm*zVIm f:')JU`&o  ˝n5I|qu=.Ä  0/ݸي4P`LK+Wy Wb[l Z >ؠK9t=}rH3|S*lG:_{ ӗ(_&cd4Kre_0Ygl⑰;pauhzf <0O,L)@6N&_Z2,Ja.觽;c]G7afr%-J`*.L cʽ{67OMX4k5؁ jmRYW3C}UCaOt ʺQBpnk{,`>1L!=(mSV%bh&#pY\k؄ t!ʙݒճ (w t{5Ԑ]EQg:Np?>we3&գ~F(\B~:5AUڀ\]u|CM-djw#=(Z)c~ /43+bpu,A5C<5m&ϑ{s=\uZp[aX3qBcriR28C@QޘfLL2ç'__f4,tMUD`\'T[/ufWgF nmŜIS*YiY ilf{8Z޲ \gcЂeN1%#"C?Yeφ_~ )]X[Y2KDAeR$r!w,`a dkCsI\>?w>v/6W" HFƣLD:{g$8o`H mU ሸHƩoqf@IV})qL4],-#˴?W;\C1.#;l숎ڹ 2 cݚn0O8|ё8}m:zSyW)-y]YCR vΥAݚj =f)͎<߿ZfȠ[7\oiHQ޵e&5V5JҸCl@e>%1/3u"̫.1K2j}ȽLJ1~/!hLT"8lu_Qdu-MS!H8:7=֜9E(f 2וLI,')R!"_Ԋz,hoccΉXx?uXji/!땵̭-Yx)lE[%.x2$@&Ej๥ # w8?/jh|Ssϗh];VlH W9tg;*"IS螭{{o1 zGzyq*SyipZ[cx~ 59lrgOP̉3+5#ѝhN5Mk> ':.`{&Dcy?LMLA?-G|L/ [߉$9.J'鼸vw.ѨXUغ&ȴ^Pt7Ͽ&ـh.qaI%'kU0j_t|C&o18M=.bK2=sda5P\(J1}m,ɴK-$YH/i;.zXb\S]`]8ejD?*댟ۛD&_p.:t/eG榜K\R|+TG:-o>S py=&ȟ jC;^slgPDPj qB)oƺCA3 &ߙam9V )MB9,;]E'ʑj_U@9d'Ї=\ %t>KAM48K7rpr8E$*ߡ$YYC{B|\ /mGn#rXpVQ*A@'?ɡ6,65(x_\h*bUyMTY4-g '4R*5Y0?bqs'kXz(G;p]Ik=?rNSiCAWT3vrb7#Ԕ[DnZCY8B"TT3Jh ^4Aw |Y-b5:Wnfxp2PUC"Ւir$ΘuEBt9c$-فkw0G6#㇐*leZszr!vm?cWnA˥ƭi E%61!`M˨7]eRAVLVI;a'zPގ)hi) "a5-5 "W7^v"A[[^dJE|qڼmA:,Ēx$>WA(& +'˵Fh&$%P,iVV曹Or1n6CYyHjP q@YI݄T1onXG[Kjʑ7.F< Pbt9(dX8v]`wⷊИq;nJ `Ds 㡡8X(qϣ(b 80o|'PXcmPg@U^xg`F7[kDQiw5Ttz+)5A͞HAD05+JYM_uj2oFΨNC: [JUSۯ տgU0RRn?ΩaYEjTfW ^0*>u1L:nvt¿1SDvu;t|@ѭUf CjzRsx'ʂH%?|XӁuYWju@T\UʺTϨ29i&ȍYdn3NwpPpbHׄ}^6ݐU|im1xB9C~}ئ4Orpl~ [L%٧}z/֋ BZEm+_GKc=M3JOHEzxXpRi.)~Y]wIX[w6}kO%WRrFD= y&c37T_}5@5h i鍕Si`%^-֘qf]zr@'|q큂nTt.?EgBӪ$SY;kgb-Y>(&:4UrOؽf8:Yrh*g>tXa*IfՃ&ig.NQ7̃w#9hYy15:>17>cy\r+c26^n1_Do1do%n"R>֕eDDcUIOGBu``>dfo?q e,Æׄdk= %JC%e3K2n m1s}R~(\HY[x|D`iLh.- .l&AMhdh9呡$; Hu/ե}qv1G {™ (B0[ZB {C[5[xnh,GvAwQ؝쵲R;$?9Dޚ=y6$4I|#i/{ըT(H39'մXISE4ŀP'S#}'(tTcbS{1;w1( "͈cȪs1Dؓ79HqyaƗvLi,I%8oydәLz^wсgK ɥ)ӵVNPvfau 7#qWuȋQcEIBc%02؄`\=<@QZPuVވJnY|!+A Hg*6I ?;9y<x:pbԩ1QQ]Gwng~ X>~G0g5e,MnM~_^EجHOfeޔrΏ/O7gE(u+L0-U#2Vm\4H6/E2FQgFuj(0Q >h=?̣dyjMj֌D?TQ8^"cIVqYkmwv&<21ޜ\'|:,[dO*q*P5<kBp`q1=H~p/z"h}mKj%Ww"O{)ۛ(0"cdR32m?S%9p|:|p׉yO(EiW~nJ 㺈c$ê-ߩU%v9U5qVYؚ#'{O?ӑL;iRkX# h)LI#M"sҾmKLWݎD1ϗ)a&0@Hho{ʯv(:ћAHWaU[5D9.f)|?g)@7C=}]*!f 'Uo#s`ѥ1D%d 0*,VUhv֦k!. 58q^mC{t *C[OuXUϺvX̦MXKGAK"zۀYo=VdѓXfTѴ?)3qrZ^f/dH~ņx@6z,gI%'?iV$KڱPfscwe.9,!rF %R{#La,˼mV]|9)4B]eýI$5Ӡ`R_v\00N-pՂ6[#?b GxCٻ"A2ޯpr$F+bx6eyR%e"I@w9s WN cm̉(λdM%kGGZYܶoڱh!K_O0TH0 [^@3[UذƮ#vX)g[ LClP&!Zz-./H4sݯ ~0e~' 8a=^oq8e_Z6kR\lzΨ | ޑ~gSBxtřzo YshQ}G@rF=O1?Ifb;L1mee6I:~LB(22 L3B&'tث:%IѯǣYIHIB+rƳ;eI ,RZ$Kfg}xqE(&`4MT9uX 1nLɊTN)iĒAP]{H^^ 5l$b,Jxi=I]GP-Y/^Ϫ$6_;㪻KA~Ti{[*՞SnXg_ya ½7$Gq5/hܙd?bsSSp3Fw (?0T@bAuƓ0{H_lrKs09Ѹؔģ}* >}C푐v%#;Ł]2|4nbbFwla%]τQ6 wJKx@/MPw#Ϣݺ$ @UPLPW"^[TQNurdjGYJ|,JxPI8.ӮmT<(h>>edCۅ'YBaL)k&Ok)Gq 0K1#LrLo_[ ?;aOD}6ޥ^ntx!^Cm5.ssaB ^_&&8eK "\!P&ďLhby3/?[Hrl^w ȑ5m;Dmհ ;a=,O;Zz'Q~)LPDuT1%[I$SZDJ E{B[:sY ]i"Bi?TYJSK((YӇ[utW(bwβBoH sC,2E_& #Ԩ)PkL_ˇ?c wPOن@12Vv`oM6-rRWqTҳW~-o\\xSPԝl\3Oǭ;qe|jH*^G'2,AH\^J)35dzk=\9`Ъߗө;ֿΑa3yq$}Sz9\Q>+"L9 JL 4NhZl& mNnQGJFyJh}Dy+rG1`Vwo>SnLYNuLwXzL:QĴ jPfBl~D+-sg?Ӽ*,8N3Z(x Gj^s.n~_e4S"Afzi*J˫]օ^B4Y LVfcF=A}|*RN-YUDJV:?ȃ'療.>6$42N,wME~Ci.:Ad<Ӹ )W$mgzZBNHU NH SqV'ϑ| >*}Ut6~M4jA#KhE=-}Sm$)ĸ88J fД#,,ATrV ZX/;!y%IybV Ǘmm@3U]7 ɛ턥rkWs'i\b+5?˗>>L OL,k;K9>.ZB38QDq`[e(,[{Hd_]@7:HH'1I `uͿ[s#!h|vfMtӲ[KDi Y,g椆؛f)KD,ykO,|:89+ɽ̹A 6{I_dڨ*~Z4HƏngԝ;n^d4!wd)'!'BD$8\l,z~137vy&RՖAd&O_HG!;7[>VNV5yQ׽U, /(w^-\?.lXع)268 Seߏm[/^L0  sIߊOp/X1ֲz2`LY)} 七{F3!bdS+Z%hZ;(FS5 #^/|I(ݵsKDvsnɭ`tR;SHW0OiӵN7)WGT[-dBӚ.LI{c~y5_5_HrԠl t|K' \U%"[Sx˝#UCO7-G$8S6 Zq@sw 'fytG>:BO<\WI83Jt^\sA|$b<s~iڍkO mvf)i׋3XAheOD,B C]'Q~ZІ5y$4] ŷ̷aA'a t/̋AQ[h^0}Akn ߦz;;>A{_Lh"$LSFW7I%)KwP(6<k,o?a`]rD=}岴な'pأ)r{*"n,zC"'}Z|gⅤT^LY,/3v9٣hȇO6<vtߎqAP_h|ئǬ!>*C{^'. NL ղr4*Τ:;VR#f9^wQh`G*?GzzKlGEiXp~F2o՝gT(9,;4`1\m^@4hpcVAOу9lOT Dß#;^ra9m_=) _|x>Ӷ3FɼiݵćŨA4ߜL38)g*g.M kaNGc(Gz,$ m9( WkC # n|X/}y(iH 9TH"!,5M6O]Rd ]˧;>uZ0!ؠcR)# TpC)] v?·IeV9:rC)}}e7cK@bO^۳`>֊AF/{Zh//!_Z\ôHcr{7c%uw/V y1Igx+ biK&d}ٜjmgNh x,N޳8#_u7Q [2kW+ E)gV;HABBz7?"%U|w A&Ix܁ga_ a;n%z9{_7qFvZ(VÙjBuDcmƃCG Ǥz/T~ig/,U^~wSG6| ://bq~܀){yxNco1R0h# |A[Hx"H6inr+4_uM_ vH9uŬ`t Q{{)sbZם,@}ihoˎ¿e,˾._ \oluW˨}ILxpf&OVFbgk˵sӡ|kB.łAcj'qȕ celaE]qßۈ :VH랠Z TU@CsHQe&fK'.bn=eԘb[θ[_q$Kvs. YzJDÃ&x1WVtc,S|efa}AqJp{X&"\s'Y "BK3 cЇ!%LFΕ kvXb )eVT pRU1J&/ _C:'ۀ]a7Z)zLһHH?_Ev(,,r2:{[s8LL'nni.p89傤g*7B a2̽ڄ[ɼ~BC[. y0*6F>4s.@:C?ݑђo{-h+4LAP~4VhI$\zlB=OcyǗp :,wnݗ9'ҵclŻ φu!RVCdqp6 "rB7Jlq+ݿo*8tg!8fǯK0_۴Hrek]pXוt(_]΍w]BIrK88Vm?i#Zd* )}c%-E( j'62:@IԧLv[郥PuQ: ~Z6сpgX^h}_S-o퇱e{Tn*.щa{C؆.{i} -a`}6a+//;, &<52Ι m^B3Aђ[qm֍[ 4ٞ Krہ  wDƮ\SE30Djף:퀖xOgxUnQ(a@Q w8$[ W`xFLLK`mmyȨ0,7L>`2m$WEM׶]9tpiƀ1&߰c+҆;Oc>"=)`_:##7Jd+V<x&;' W sR&GuWLNj=%ö}-+N@띦&[6L0U m놽 MOݙ!uvnQFbg6]j^lEi>ƴFZxIrc@s쥭lyH /|QOݾ<O=i$PfI$utCWgipZlM˹n`q('l!~AXutulR2wnEKf0ިhr+An+O6/pߍG+.tY6b Vq3?H-6yؚvX%C"W/_ݬ8gnXm&Bw]v";Ԍ-i PNe?!E#∉chP̣U\Wi]~P@.&qq p%=j5 l}-ӥZڕ(Uv *;<>7SԌ`-5T9lT5i!ԣ]%qk |Ɣ cߍ0ǥ6ы-QRUOB[j֓ay$fO[tYۧ:ԗbG^KjF96`s`Q-7e5K]%v|FHm|[T"o" (MjZmN46M~G!Do,AQXڽכalR ZbtB?ނK*m р?*mlb!g׃ס M%42֠ @~즶3iA.D١ 5nP;\̭;cVj%~U7`z56ṊP-[ywlKp;z:߷Z<'{}P:Bi'PqTy,E.=3WJé#a:`kN\4HVj=l|g)dҳ/05Ha vHx^=J.B3ؿzHfIMzi'X J|!P )@TJ׉G ,A\GV>vED/R ͎ӨӘf LER& zFwbxM")g:9IYz&nX[c &^Kwy[0lν107P4}#8JF]$)sUEiĔx~I⫮e:?X=5ܓчЈif㟡^dAF^~Jе "8S(TxnR.$q̹ `rĨ#\/zb pA^ӇhAXx0o!gBAyLϰ B9hu:@ H pP|0)\_4/jksȂiPu@+lRbH޴ /0VQ:8:2wA{ӄFеD3 ڱj~My/VG_qKMͶ{ܹp܌j*dnL<oax di ;̉̑~ENv`G0c2^L|y'nV*O1԰:2ڥC`JbQ#t}jD4<>٠y/X69VKWѥq d'sWM&<%ZT*X0R[ )zH5%v< ȄGI /'˽Lڎto.*Ȱ(yn`k^Is/̚w{n" tYg/PhPa?ZdE22gS-?zۂIw29RkXAn&Z uR:i`RhȫܷV8+ ͼѿew)l č=bsr6aq8(@RmI ;NGMTCbw4NKuH$"Цڝ1)w(AЮL\dWGq&fÀ㨩 ]f:g#MM}2, O\D2T&XX#ͺIXiCk|4U|C%_$z4O/W*CF =_MU- W{yv>}oGdp 5]åAG42hH Kxb޳* ?W,V J' ףCObwkۧj1oUW Jr9Yph-V0ōCrf`6^\mt\PKѫӘ~Hhv(aH6p۞&g2DG [Ɯ5,!ELq A s">;8y¨$ҋycS*i}Ӵ ~nx}UEiHsOϕ V-e ,83Ah<2ռr'͝p@[5ʵt&\炲T11 'c97P 6WOÎο\Z-A4Z(d_$&J8z늪CC MbBs#LtTH9Dw0l#9;\cźɹyy\(|y%I^kQ zTHF;fT,ÏE F7܄20 ^< .a؏rQ@Z[7`,bLI|- ~rWڀfS~({9הX:`%ޛzDZJxGe$~;fh)fQPݑ?ں3!hA%t%_,Q#Zy'_ƂdfIcx"s+6&1ty'Suzhj;WyA CA6{xdԍCXj*kY;[ hOjh'1<]}\AevB4k}LQ^ =ӭ ]yYc96Zʜ S*_}m:hR3rk#-aa2ϧ .3CoI64tlǜ,q f{|@`6Z3E bNeڌQdj\Qoeqq$^8[V6W1MiFɅiIC4ʤhgWy;0GB@DdGv#^| oʬDUZP?`Dy4Nm%roc5QG)T;cPscV鞮da9-u]+ z/Slh-8*NiD2gIR"mъtTm5|a&t 9` u@ou1bJ`OGM0,% ){Kn Jdچ V>.9ک aNZ3q\ XӱΛr{8Mn$%X(hҬl7'S眈Ɏ383h~h?c5;{,tyy];O_Gu T-=67xGBX7Ͱp̄O |勍RL (hp*7x4WoLJz ƷSwʽM d.+99t#4iJcrO|Uͬ4j~Axs Mzp8mO%YxA=;tZk'"tߍ.YwOj(O9 [dd< 8yW&F N;۵D$/H? )E2f=^lC3tXA0@ p#єw6cZSL=J?Mڌ7SA'78#&ۜΰDBqql%1;A7ydDlquVh~չ=:»4w|H8_8}w )J.FQ s=ŃG\:4; cAЃ ~TMnHeul0쿳/<(x|%v\"sg7}[Q9 h~5I|s&De[, a<#Z~*kr\庼1[~54@q pKTݭ Q<9т[IBkZTw'->\P5(%JaJCGH'3mhua?uYϝ.r]9\ RxBDh!zUQC,O~/Euz O9[T:$W̋dvQ*C02٧ :GA܌0uq|Yk~D$F ވ"AqG7Ⱍ\vg,ʋN@{]R…N6=L8pmI}2 o&I!uyz6H4om7k)OϏuLx)xv~ł| Vk}\1lE9dEIK\j2Ю)(ԩ]UH'!#tE0 :h4+ǕF16*SW pp164oZilb?8}\8xkoE;!6iڄ1>|h`[z(e,`0{Y/ AϒuqH\ZK}UzL^z'4@nA[TSƱ+P+4|[to{w uptU竾JK+ Y^p=e0#H0OwQZb);ߛܩiwb?i0#S}'qd]6_15>!\;7\K:\݌_PmI2t?599] רڦF }2=b饞<Nw$4eE4IQMxiBC0Ɋ(XEs9Qhć7< ,,c}NC"˲!?fեYƠL>ˀQ ż[  Zy΂(a!H$s SY3HZIC;xJ-'4zzǏtU&x{醌6zњF} .ڑL 9 Aiz>*} ̦\>h\WCs&pp/{[4[umL%ip:K[4~ߟN6(L\zwޏA!<&D}C7g "}~8?\i`靾aj- Ӣ')'EG ٿ#qZqM߿Y|0J9*bJOR pg,1G85ұց ua $ȷXTc9Y5?N bdi޶ $Τm5:p;2W/xT=Ӗ TꝉZi-Q>[bYK_oKa~eY|wb ,ӆz{qˎMY2VY ,Bkv ^8pm5g&佐E~iJx06YQJg)q#TL>RDcT5?DIa6IWwuT(e@Lz,Ab}$k!D*D݂t(Q4#J@"Be4@ $M?F5BؐoYS~R60ܴ0b-dݥ^u?"@hQd[ޓR9p?r5h C#"n<7}mL0\WvUw1 0,72r{r *N=K$irc55`_/wI3f}LupZv&N0"HmS((IFE!H5 fXm,zT xdmtHEdU^PǔWԿ,<)vzvGMʳ[ߤP;p=,+@H8VEG9j{W.RѼeJ 8˨/6 &S?L{91\jȝWz{MEq.61z]i_ICA.NY&ZmWuPtBī |(_|]yǠANZy8<\4t$jҴkz?a3nB'2] @dz6`mqDh5a1 ] >.)m8Mij([KFPH'җwHɑk:dұ2D $ϟI7~tQ>PdlFCOx͞hr i+TE2Ž+V yG[?:\%1 1oHcaoT6'5WwEXUD%HZg'ί7v'!lhM ]g<4r9#VjvJ4Z|'a4 !]2-A3*˷g&ïފ)p9m^xl:0sP T^BO,xk;.;<çభa\6hfC:[%o,ہvF75y\tO?%cf;Zg-E)PRhotBi[*1ZpT{l)SC +^V{THeLt+d2 n@:x"Uw||/ !Ovkf/6(\F؏URb¿$Ɨ-P*0 Og3&e^ʎ`D O:lr)MtBYe@6m0b$nq<6݈arg_#Enڈ'ܶkդO_ ׉v@X:Zɫ 8R0U|7U|;PMA*)DibF[@KGl^?"u؍Uh,;>KG <,&xt=Gb=brlV!GOQߪsPikVB1#OfreE%-DJøOOh6/*j k9Dg)s}A}R'_PO -w:sI2Y^5F,ڤP+?EQi2Zc(dgiu#:/'%qΫ9XL%jC^r4B, 3"b}gaG=O*xG;(_}$00+Nz-emvԃ4kҿ fozO o}̞t-6QGAM8^$׬n;waYQ1ٕ$T<0:Cx]: kȍ[;-|]dA;0KPj}~#EhdG?QMňU߆~J>V+$FR]v"R# .{}hدlw)rXy2tlθVS9WT@n2 h}4bS+}.xLei}b6IpṔftGfr(ԄA{ NEi7nr9YɗDZ9Pp_ HPs/ز<*7U̔[ `E1 ˛uAYEՑw {]]5 ݘWiP(L&1A`9 (L1X6U~NI Mg=8| ]_ f9C!/Q+@ L11SG )nZ`7W r~(k(w^p<oЭ[ _f \jMcѧ'*zB pۜf"8&4Te'Cn54 }*Dnk5ty!L0#mW< IK1Uh9w\f˃*gA")ɉ+0SGWarkA"=^gf!Ӷ㬜+Ï%̓H''ۦ{6tZ;:,Ba 1P+VW1[Rt^r'2r6z>>ҁZ`3!0wa*R>qlH-nc1qe˯5iy#%z⬱~eR@ oxySM̯5A4DμJ̯ > xa3%`}T#- ^RΘ+bz&&$@QLMٺ $e7$Iut(/VFKW#ffLWt3byq$#2'߿̙fDeCFh/<5vX߲t&B_BЇDzcXw_%{n/3 ]xGlbQ?zt_WhޖϒDzd'ZT!ɱd-٘`~360c}M)'FUQ: ,Q|՚HFc-#)#!Dʙh&CoTt0ץG]jŽKnD1M/E_ﰎE3N5(ᩁ+~һnB`#8M?QdYYLyAWI}4u{sp2J09\XjT^N{f;rDPHiR1YU2I,*ρXAϣl6EZGn+sSUK@-elr끥D4v޽14jU،7җBk+˾ܦ/f;&/Q|=Ԣc$#aS'G'z/'vJO"=JAGxT_dcḽ_㿌|0Zc)чkE{Pd&.{f엖:_|t0Bˀ^ZM?gZpcC n,>^'%|*u$-_ mNlkBQryZhQa_nf(;,\,%hQPGEϛrS#]+TW&4TtT< `$Ӓ6Hn^ 1!P93U;QMc5"Yww- 9]mፏ^ZSOU(dWXր.=)9@eȃQg;cK޿Hp%H;u $F;e I6okJ$E xNIxᜠp7iD`J ]LBH[1ngF,afaWl7?Ola>5ήzܯ>P c8+äaV$#_ʼnH2_20&1aUK-=:5h!ی9_)"r_eC6o ..8~$id؉Hu c(Q~uiGfGNq*;&%81\b݊@ Ǔ9:_Hmaj1osb:2JvE~g az8(eڨ~"iDK&%W.Gw <^x &<0"/cS8ߡ*ԸRp)y@4<(،0ߥՑЄ"lEfz<ѫ+[bϞO&/5{V/ͩdFshe4EјognZ>UofL<`LʵCk.[^ x$]$p>G@8ZAot{**a{'Q`?'}\\2 x' SL4 jR*bhOKƑʗX755&iXS EY:fuTk vdY) =jtkJS>a9Dws!|hzY7%pT ؽs;)u{$)J8\r Yx81(;:䕌$)Pz<;dED5PÒugnwsQͺtbGt]UJGFJ2;4{OD2t Ei2E~5l7Z>!#`NpUϖX"ћEf`_x:U5:p>h ~OjiC-Dlԧ轛$0%ײ zHttٟCb'Xh%t&s5~pq"n[Qm:2[ ݫY.r-R7%1{ߑ6'+yo ƏR061;ʗL;?-  éBJH)1;!AWVM")l,kRMR*χCǑQpPZ\l;\'D!f"WukL܌N+~gM'fsEM z | ɰս$M/6qNW{sLU T_+u ŪC%JtRaLMqbPB:&sR2TVǣ ]}<:{,Zyj"WC.gxk:iŒ_Ho\v\&5e**̕ > )$q'͚ ) H ha`=iUC]վZuWL$> ! KoO·-pb]ZL٪$7 EM"Ј}Q;9{e-lB2cgL+ S`,hʿײӚJa|jj+4&C:Yx)ؿdx"mҮi0@J+lVJyv3SSe0.ܭ:"LP4Nu^ OvF7A)iUܟhXEFbm 6/0bARyl/ŲաEh)Lz҆Yii^"Sm+z\H_>;Y¾v=㊼3a;+״fr 4S({fs_`S2 'ּQjm5 $}}ee{?4-տZ&T ?r Ψ(%/J# ˚fLF_ǒtYSa eaa\ůJ<4 :JK sT C;#4Q^n3Y hk |=B|ɺOŎ6Y:rWNKPJIH>ݢ4]J x1Ű9'}*?zdxpT?2Plx;<"qazʢ3 T ȳDAM2pk8RU#TT שwHJ#Mc^E"=lR-Y66W]?P5$G5mtH=m#wf<.bJHđ 3Rs߉2?4t~q CػBk ,ްmG߰] N(ӨEp/HE0]{mfi-qEkϼCDd)G+`{k@c:$M!Y~d.HYz~r-|ʚtR"|NNlsL`,&ZVws€oKToYpiU{ RU7Zο?G>^&P^6קlZYmU"jde-^:-[GCӁG.,f2E5ڳGӵOUCrMFZqxV zXLX })p5J@ژ#Eʢw*7#٦/y/V-.wyџh J`~P`[?*{U˹w9\Npl,LD%^Ǵ<}h|2js()J/(w2ݐmpkava ?s!:mX6eՃ Z?s%Ik&&n-Α9lXYfnxUz_Quzgm]Ap \c:2{Vbu, '9IrtOCdWEmȕs*')"urEUovViyǖ%p>FU}yj>m\JschgeaNcOݕBiBKT]aRaY&nI@" z6X37ݕ8/|eHhg%sӜ;M v$,f_x둇VNfA4(D1ov”|睉T8ݿƖG?vc#.`;ye,A ۱8FQl"xkrXsxemmHbtI 62TS@lPYԠ'v٭kgZ0wq9wZ ܖuW+<)MX?fl<Ƞjx%u`ׇ5EvȒ2%E;"LΟ#߻鑇2f<}ö 'W?o$Fkqޢ̂*?6cÔv.inm ű=Tjū)J]Cm%~p D|ԭ 8nɘC6xFLnB[KbE@FD^KWIP~_vd5 "^!ӫK}l"W*]/u:DZ]~Z BڬIbV^ G*r.6-8NI&zs/u,Ya S}QtXs}g_&B+fw͑ YI~DÜK4nJ1@? >Wg9nOhTH+]뭁lL@mX01 v4k%/bl9 [?֊G1*&Ҝ%c4 GQ Hۡ[-%9; {T_pqk[-aFiaW65S̊\yXzs*NTFX'$q ş i(@5Ll_h֋}WKUT&fM|}$ sij}uS@#}Qvs+E-O*7d1o*^sn; u)艹;UvR* 29 *eep٩1;UBoRHZ <$f݈2 [ nF̩0IBVLQ<*iuTecDnZgrE8hܜsjx}(=?KbOCP+m\B*4d@䈩uɎе8>ZK&'9);vDkpA_ `J_i[%6W#ӳ%s\t㹠ȍlTR 9?,?0*&5;~VQ>QucV[ KxޙS{d#'FT*@/Om} tih)%,\hSK.L->M}{{{o> [+HA͙{7M@UHfJe #ΘJp,$ī5l\H/b{F6DPQmJ3s؃%`~l##rgmnu H(+U5hD G&q`I!1U95!Gx~Ĥ~Vy?#Ofi֍_LOJ,i$Pu6\)xDQAl1Ֆ$lD1I̛&ľ ]y,:G]Gb9fE(:9帏?fǯ)[)g~uTNs*RN9_:x68z@Vu?]f5#2v.,u [joRpzqV SM^;^D{zt!S a x#F@Dn;o OsRL_SUJ0]sFPwO= MV$<8YiXܸ =|\#Uv8Ka>^-vl&M]wSy55tF8F-EG3֠#x]P mO~$ҥ4#7z8TSBT L[ )+蹎<1;3%R}%GȥUW16qmxH @+ŴI+wogg3O-;d:{cߔ*"*hn ʥj.|[ _NPMsNQ]L%}OiǦXM9F yӑL ɪ& 𜈾:_H%OS*cVOr*M3`IhrN;G/\f:x1!󀋅w}&[ mXXLk%嘎qHI ӳU={;Db=#aVd##f4ׅ( n/y޵M78D^ [ģa^X#T+gfKxB5Q3*>S '~s}|#u"}$,7t+pqZ)0VECm> 2t*'shv4X߈$~()x^EB.R[։}7,mYO}g6yl _j >8?!ּ.)Eo|'?b;?2y:P="lc2 '~.m79M4O3"䆉jQ;O ]T +:ā!f]f;qK&Rzw1r`mĥ3y&@>Moc DMR=P}yeiaV_2*5/* XU;ˢk)wx^ (ny<4gpowJc, (>5 lbxCW 'y+p X*Bta$LGN 3(}sZR=24Cuc%%lyۄ2v<2Ŕy=[GB%"6Ko}U'~SY]{bYoOW%n8B،km(p\pN$i=SQg xk$P2]Ӏv-AK§H xdI'%2nB+sse6c@o$2?gJ#SJ· 0gmY8Lt-#.ZJ8qoզmpcdi'&u( Y`nNޫʟ.w`uGäH,fXImF`ki:֛̤KM>nVJ_Ҭ!ogf{V-Pz f ݂ n9dP1wA!=SɎn_Ro}3V2*3\D+:M|+.^ns /;W|@ւ I3 ';N5wH,.İKz@G'gJBSJd@JLqv&.`%8!6EF5,X23vYaH[ $ έi4q; Cen7dlfN'!sYMSüTBģssֳfs~~oq`r]ہ5QJO-,lem{Uo.DNuwQ/k*ⱜM9 cw!:~,= qPgb~JJ$GEtӥg0xwm[nl*ބy*@"bWB/{|O#S@y"J8&ޜv]0h%DIXS1\Nm}>,',lj"ǖO۝'@-MhISoݾM7#=3P8P(.O,7Y %(#tG*};U\.'/;m)%e~3n jç`q'M]nO&=qMXT18F~ yO߷ïHS>[^]qs-mGqM=Zέ~P0H$AYӡ8NӆC aQ} 'pbgC(8flύΙ7;3~:I"{4on2j֏,rr':2E۟Ç9HՋpo _nZ~ tRڽ#Z*6Am۹uQW|AQ&2(@4e*%Mɨ!o"`>d}(y ɪʲd.e5.j'<V%~r4CV#_E-ubmWc >z o:7ٕ/)J ri1xw #b2)֥V3"-|c˘3v K>HG cN+4.7CŢfDHtĶJanRNOCei>R v3d.K# M`% ؤKm-0)6KpoIRY}u/5Q; Ng@wgumYkk uܰ+^:/h =5*D3ƛŏwłNChq}<(&VufğZĽB362[&o`ԇO<b!Fm[,w|4GŚLס8|%\3_d֕B_ ~;od`H4ת䱲*]aRBdIlmT=O/ulpK'WA͝18Yq4h6sw/F7R{ԁ~K>쁿lct'T p^8v3$0+@q_F[=ҒѠc}Oo@`̳Jn-D<CcQ7 f9 m#49*`KeF1 ׌Qc~́dg0i 鷼=;IGd},&@&4|q Bdn!s nOA$`.]M%A3ci|O@vI_9t|čSj@DC}{Pi N<,?dR{U4/"?>XXzMFD@'Z|*D^moGOJ]֥B佳LR(:R/D6nff\F(׎AX{N_M&B!(Y3c5 `]k@nl u[3JŜ:*~o=sDpesEFA/y1^Ubyt=+0݈6BA]nrY W.ʉBc`c N/>g8DRhkc:[rakab$ 7+s%Zll5s&+DW#!w׫JmjUtO([.Y4],7*߈< qa:?%:NFEŊ],Q6A`U&r+r{c(M|*Jb^` g `Wu8>P&٧96|6^{Sں ! bIԅ sT`gk77=G2oj-3i'܎ qK?P4k4h]'Kޮj˞h>c9-H24KSHy-M} 7\ .H^G0I!)MyB7b̡gO8b]1V!?Q?2JA)߂E7 eZ%$4b_,e!6Ջ39^2c=%xO菨V)rz`6FӥU,Kͧ>@TSRSZg"ZA"ęuqK~#ئ ೷n=yXpD@ǤreO#g4f5@wv5mGpsgj. 2+&M."U_H(g 0Qf 7SguFkUJe&Dfk&BKF?#5fg|XߖoqӘ-{ȴ 9'W%#_,*698sP) lYTg 1Sr3A`@C`+I$ć2j O6.<~ntxV!/gpX3N3Yhܛҝ(c簉 jHS`oad gaI!> w|rvNY ? ]6mӯV$Vv(e G4T 6wjzA~㮝 + 0NZu\rq9"=6(x:>).ԏG>i9GEK+0=~w76xQt:u>ߴ1Mhԃ J]iEI%nK%,\`x[gM«̃`h 5ôZjw[!R$5Z࠾K., )i]Ic8)m6}{ FkK5 ؏zPD`҅'ee_#Rnq(Ҽxio2E&8z Jv8h+*K_u',_k*XlZ1'1L*rĚ+vI}pZ+Px;_1V{~ ͓AK@3%UU:͉xH PP s"\Y9s{DHvţjn&NdwLl[/+қǐ?)R~{.atytGv~< 64!2'Owa?fkN`qJ`w@:)%D?=Zx9ȿdJi6ʧK_ZJ"XLSW8-*k@,OA Bf1C:#T,l e=Y?/NwI1ߒwɅȉFf VfCZ{¾~L5:Ƈ),[3L?=cl3Y5s\<υ;ȫ~aC\Rfݼ2oHgRlczo:?e6IE[ ʳTrAZJP<F.9STG|JuGv:+LA灚tBj*l m}lE8jgbʈS队XKM- Gq+SĵVԘx߈TKGD0bݲ[^@̈́L\o}+=TO5`">+ϫ@?7s;S_]!Aխg0Wdr4V%E ^0bp?+:iKmnU徸uP7uk:u tIj;鯟Н|d pZMҭ,hr bQ- aAʖ Êݪ#U/t{V=CO[F/w2@CG+I sX ex,;(ђ!&r11@Eȥsp]&4תC@zʚsCAlSW! +-P$iGq=aqWx-.¬vԡ ՗7vUrP(@ьaOYE p"ݽbkT1Z`+iE]!!5:JDM l0uOoL6hqc2Fz2ɫhefc"s@n9 :fZ:!bČ}:zu!e6&gܗ'o'2Y56 d||JÝwuUzKh`狏\9~r>|G~2eD&F#!LHN_ד|=Npu.n+Ԇn.{uO'P1+VWxgR){ֺS◾.LxoWx"4}SR'=St!a,Tc|m]?՟p)tVrZ{r=pM8x@p)[ ?zn25ޚF! | 3Soȍa'j\^Eg]g0ʬYl1zXˢ ˨X& Tp?q,jp)g DuߑBf,ech^ ' oEt<0N]LR+(A,! Ea^ a+a" ?O4T˵ܾHKx@M.^8Ƅ/kDo:aE 0U`cv'ZهpM c."Bzy$Ao>'G_Ue;t&{`P_8M~>ŏJe y/91a'8rF|>[`rIn 99 Z{8VP"hȘg$Ė@[>wME610wZv%Q4%޳/3Ҹ9p/^ KvT(z9˃ $Om|0og'AMJv]^"^90~Uam#']+=v1ਫ਼DMCþ,b[,Qajp\ =@``;1p6uGr` 'r U ri;pVC9s=UG<[O׎+ G2_SuoDjL^4JF_[NCuM8nr,xJMڕq Id]`8l!- ?i ȢMڵ\5vclvI&뵱$vJ6C ii̅ k_@Q,1ȇ^> VX8ȕJ[zyk7AVzBDz?JA Bs瀢! ') dmv Գ™ {AZ~DE0fQXm68ީBOtBѕ wխZҽ[]U֯V }ln$1`Qsù ^&k|pU{P۷{*no,ԍ͉'>ly%` "XsPL!$Dp>HG[{Do' QH1Zc >dU&W9VTv3Yu}F W׫fb,򬯞5)(ìM,;RX?BSI"C?Xz'Ɖ,Sa :8lB2< ,LNۼJ$IXqYȇuԫ~iRR|3|v@:@D(.XzN j "b^^Kϯf; f=yN}p+ Ƅ$K^,g~&.b/cnEn]FqCl77SAH+մ{u!s8v8A3yi_0<2/dTo;eQ)o!r#ꧭM#\DgF8жVc [8lfבM4 aVҵ6ƠA ^9WcbT~  M6^^? P'i0Vv-wc ȀXF{,G; Y~~B /Q>ڦ\QHfJ]j Fӯ#[oPLq;_+CA^@ɪfm*m95kxť (ZS@QVq3>ѻBXIm3T,$:/mXZXYi&~o w jh !UƠПO{LDȴrNDRP6(h,ܯpӷrӾ+j9*k&E-[<:RL 7@40o/K[uW\շX֥-~mQ'RR;S+9p1PFq/51C<~V_o'xOz+|@y@~v!)EwܰurʛqL@>Xց/$2ucp.e2=t1L #g}s)pB>O{0U=\6>WqЎvRy"=Ndy2sv39RmfR(!P5aw?I=f϶:,~]Ch3AŘ7 iط#E =F|"T)ЌVڴqrOʉԫIR9IjTm#yHY;A/" AwYa8ZL1q_Rf{Jyn:-F\T;pxjnTGMQ BbjWY61|15UPKHh_Եq HVA@6ׂ#y4mYQٝ ErsfAΙ\I)*dQGĂ5TհJa[%:e^wC.8/vj%bM*3k\6fSb@0!M0BYȕHG5?H7N[6u*j왈?{Okz d]THF$rZp6)0qNCE^*DIkHƥ4o{*_.Q[v8iUӵ* A.tpZVefY#[ۑ'6 aJXiNM1hԻR7 D3"^8>An=4W03ݗÚ8tx~.pn#F P3R5t`M9t1xh'|ߢ޶<gL]5(m yE`rGl3=c"Nud/sr7[}OL@!6ώ}mFĸT;{@A3t[amGgC!kem(Y>e *%69}>H~6fN7l{H(DoǗ 9@?ߠۇf09Wi6w~Y.-U~ҵ:^[CAGԃW8v9t5{wv!`gg&[nާO t4/* Xq E,BW$WISY/^,lJn?ZM0~Kӌ Y>xta3K: ;nlԊ]Cɉ3ΕCz6P+ F&F. 5/ډe ?Еa 5*V ^vwO($(C4^3QP0eݏ2"N[ٸ2l&v0AKGFHkHxֿNM"LbKc8ѣj=UoWWt1 㵥>D.:\ nM'SݯAK[kYg&Ǚip anz:{rʪ Vޗ&Z>;-b$f| s2p6 ( M3;lݎ U G- ū_)Y;r5aGN gjEJޢm*^v]$fNů":o+$*H9MYpB%Aijλ[oHӀoKXE`W#.^IoT8TvV,jFyiB~=Aܢ8(bJjA&VǦRM}@gz8YLՎ+;AVlpq`9񶆂`,+_ΕTޛ$8.qX} yZf_w BeH72ϧA%2|Cw_uBkyNkfRϘ]}+6,ZOr{8gtbG%0bhZ&*ʼn0iC+7+@Sc9=IPmj O9]W֓MRߵ'uQ#1!OI*=$=b fOg_'R0.G?+|@5n1>=2̹}#iܚg,{U| n݁<RC Ux;I#Xwb)w7B`PALP`gl.iNOX[y^ʍ\Qp׃۩ԏY LZ"̀a.ciI.̢+aZeo6":JZ܁S%>&w6hIE#znuPk[YoNgGq JEwt\"h1x~RhsCϹF(XlAuqx ~(њyen E䀠OnbZ{d rɮ% >IJe4d⊞ZJ"vzF㡏wXhg?Rwϖ^-r&;(I*ef~U`懔mi-OHTq%`RxW1 J&@ J/${ͽ/EL=_,cLPɘx"%G!JG0S֎T\d;U5!DKs.ojmCSdSЩĕ6nz~De.2;/MmA82~-~)XIaze!-+놝*~% _,PRW ݥ9/5𣎨ec &֮c`{,Kp7×`#=iBf- {TR&x("ĤžQ=!洉vw4"Gaw Tq;m qشS׸2ΧUYCUk#E9҉?$13 6IcNwmW;̮Mvو: dZWsnȺ4\dPAlUh_chr9uJjmx+Mea(ܖA)ɩYh/z**J80kN4B..`-~ -_9iH.u4&rÍ?u} ;*΄=DD^_Ői%08UÆ.+3ª3AcX~*2N! Gq 58O'"v :jr8 '4:"n7b:n׉/Sw^ʘGLhqؑnтA!{e5@<P(Us IeN \p.c/X8GH jw'@_#. KR s[*ms獡k \|k1xG3XxZ)W3V!a#Ee >dC7pELZ|cmn\ov^-2BN6"ZO }*q4Vd.' ^ujN8%;b'ùlN$dխ9UBik9u뚵z"^]|]ya UU]|=5$+D7M9~ъg6i]sVh./MC=gwAR 'ōZdڏwj<wx*+4ӿgY/"z ^D_ s`-;* b;yMq9N}"FV"GcaT-#2Xaڦ S/zSs{gKE%N>!69{eW,z>'W[V?[W3x@Erf?5#8p&/|gT&$r]0#JRɖ~cYׁ|LkÜZJ@/8ahn !VݑxsL+hj&ZmϏ.ϕE8< R50Njsɳ~>E/pzUL&d iS2(7fH 96'QoVx^*o')hy BcT 1τZ0eUFhi$\V/n8C+r%$Xp1 n8⑾)x}|ӭ`W1Z[\qpFq5sqan ҔJ fP̎@_k!AUQt̼Q3x} `erZ[$r;hCK >ʐt9S[[9^<ǭ>B#wuue*5$Pt)]*tجbٻF!PHHuXYȏAJ{ޤ]4*=0Em#sZ(!#6Oe2i30E+r5Jf]Vr7ה__57Р]{zB; /ȇkx0+OPJ|@۷j z*xUnqB5%b"}0CPpU qh\Lg祬 ںJ%9L|թh fqK ^ɪjG5)Ϋ!t }CnR'0L7zZzNN>fe4)z88f\jwx@ia").D5D`kro72 h2jA)ECnfd,8&zDէ@LWK{[EPCATt0.zq]ufXZDQh,!O ˮpe1[52 ֹ_,~h mlko.5=DwYP="9(9=8[٨c"Mнi 1#^Bar ZaY^%n_\m'b\؂}^J>!\i7)F&Kb"rX* 6#TV!󿡍kUl=P!oHt84ԛ5 cY"<\_u^ޙiEKY[$%r&e5S&Hg>u ?^1pt4 7, 2XFCoF)=Ec[~f,t~vly J3v@ImntBiYsEr`ߺkcOw4ʫFa]<WoO!e;B_~H^b%*q  `%p9XDEqϮpW/ZWLŗdyAq$xSlz>ӜV7mkg?1;0aʵLn\cO]jN`엗bmoΏg_y$c$8Gزzt䵷J9Pb$%(_1꾪hcD3ܫq(+ҵi"Uvq?$p[闢Us_r?km-!/.aIK%NZsns] hP5&545°DS=|$=VHOf?#} VgGT˷2x$Uݻ%ѡj3HBr[og!dY 1ՔWf{|W B l+fw#di ^{˭K_Tmω߯c?p9Ldڛ ْa,q21 JZu#lO>0\1Rns:*IZ}q\s`v.^6s9b.[A "}K4=l) b|J Xc]ia 6pLF[P̿$s*z\:@+&gC<֯s$4> *V ,uF\P > 2'?OEVou2 OuW]hd:.k YgG|ˀFO T+՘h3KH|399[wQ(TKtv[wgAV_"^ӑzlR􆖗7Z=8O3?A:|D>E[j+@Y-~tѡ|Vr%7{o6pcC%ENhl_ro'Po}o@X}C >6&^עV޹c[_:2êδF1jȨZ|< `b7VƻNҊs{lsSߊy]E|@wtB$p$+CzZ+viw#KΨ?^X3!=\d9:v9ځ(a<-WSuOe V˖vzR"̫w:tЁh !opts~xDW&ԫ$ fv;um+cHn8nQ=aM9H;,sٓɅRK|TF<Ǿ&ɐ@]~551\`ɟ"c%Ul4I7R+:j֯r+1~o2%)VpmXH{EZ"Gh P˔(α5Yx,}:e:r蚦.3E=YHɄ>cPꄰ" ]6T]V; .cxR\wdNe9shNScIfV+Y#!#7u}%3(46>߿8h2PzYZ! ēQ x!!RP6h[ OoiK1GuB#W v9ac Mymb[FL_iI-ɻ%؈֕#q8-]|UрKu{`n }0"O)ǶJ}G)*)sk}z$C[R%h6W")C Hb}KP  nnzD[_Ȳ pbA{֑`?j9f,7ljG,7&;㬴_`~? t9u%8lQ +WODDzr ddTn_@{%xgT=DBLu.V7hg>_ļu/m ¥L³zHkvkk\˧Lŀ+<ђ 32;?R8pWv11 A ˼I[yhQc3pA 7#7YhYCV.2o2/AB{e%m*Nc!5STL昨`ƺUa}B9S1hVYCvNcX|0Z7Z%ٽnmO"!-ŶS95 )3j:t3|BדP$NF}`D,ve3 ȲpTUx%܏f; !T qLOxkЌ,^˙~\fH*}V+\6D*fSRp!Y_oj"* &cGl񩠶&XY()o]؅-) c P+2zN3J>JM8An-ZM=cLWDžUXIeiT1χΰ}DeX!7M2v˖h;?|֜7ۣ91>d'!ׇ$w&Ә]r*ԖЅ¼YMs7XؾFUfxQv2޸zzh2l*?Xe)Ɠ5FgYOq|0g8Z:L9EY^9\<Ò  K?Ð{*dZ>b63=գa\Qؕ4eodq2yzѥ_>lLBޠ`aMUԡ-&ϡ\I_puS6j#kmQ\J ⟽kCLƩuZHn0B9iXvk)wucYk^&LCbV)@|n5 lSM#ɟ+ GJJÝ|.}q[^E#YdH1Jz[M~A qm7hEdb/S)&h TIƨ:KN`3vH/93+.&-J~C1op+M#Q VdGZKM6fVu޷(@:tT0x1BpG]:*e<;b4B #IO~\YM!OȾ21_S͔zrU.`0y-hQq8`l b7tק]ANml \BX|`Q/k:VT78% \5&?|蹩X/09_DDo2a\d1rdw{ .e|E0Hy3JZ6xe f2 #YB[ %nJY#n0uܤUP جUTm|*:Nh2} '?W(Q& +GFs,tLQWVAi9.$C`oyQ6GiB|Cvs7/>ۏt˷v2QH+0o3٩r%JK?ꂩ5FSȪd )<BUtЇzd@EaQe/s2 rd|CG21Lw?7*oQvhr:@5fxBJ(,vԯ%YQA7&$?[\f MV鹖3HIVY,t'.f Wx54 0$T /p[-$Ƥ|TAp/;}@4jVXcP`M` cy{etOTo_:Q[YSEh8p+}'o/Jq Pi_!F~ O7-T6ٖ'Sp}$\dΛTb[ rL)cUrDC|atY)".slJP`4(h vsR ab%C nqPHoogm׻QmW1r(Pvd:crx?O;v%[ᶜKm%'?aQ.11Hw$*$uhzs:EK@&VSJٯʘvQ0&:KsZ{+Rts Vث&031:nh]=H#GIF/_LnoXouO2SjٳŒwܹVˤS$y"94R.g3R2>sIi4cYP>[ܤLs(ɞ]}%՟Os՜wQVR3 Sm׀KWi UZ9C0[_p2t)s"#nK sf.$UVhGuVaՈ0|d¼sLן %r}?wٻHjJ m=UT햶8CY&"( q~ +0Rs`A{,qMkˬj3#@40W>-c]GwK>ϫ:n[aӀKZLO^O_bmQ۞+jt%[PnDzς$^`d*{!| HV37nՃ7x = ,+vg&byeWo5D!-zf5(Gaҏ[.u=*qQuE ܃v42Qj7ᢺ=Dkj϶@dy3i[@V5{϶pH0Gy-˸d6L _`l3)ck>/=EHg7kuRQU &ÕWkF5FQcuv_7] YAh>m[}LXUcYU!_tWO'Q JK4;hf(iV?yE|ٖϐ韛m#ieNbG =t_-7[>}?ڹ@ܝ%@|􋎑GПAf= Q$-])PK{&򑚂5ka#?Ik)_(D (AOquՈs? ^!T~_imT+XDX9-X66TU#wKNl^gtmJR5鼛hW#2")/H23z/QhVQ{YY"rh9Tb_56ֶ̑ڽl{;t+>)N0 |8ٞw>0|tPD_G|}|k6yLNuzUU8K~f~ÒEM*/@}b[/GEcMu"W]^qC_ cZ硉MQ1")J#8RHF#6ze PUFpǢusmalccݟ\ߐDX`+ПZ:],,qdh-Ql&ćI!HnBӘM"E;|u\L Y#z74*O2]!|]TK]#czTC:I`IQ3%ǣ\Y2tuJQ&mN0E@8*McY HӤ͵π0]ށ.|QH>9*ڠvNi4k5ǧ{1or>aX}/+ȟ%4Q%MqN+ 4nmuHaf1k_r y9(Ͽ)no~<ŽH#a$!"kj8QNZ HsazufVlnPL%ZmǴ/ E@Za)Ȓ݂^`b4 gS(0nOd1EƧ\y9h,ih5X)OJ о!R+=xmtsc) HEaSkrTl)-EnE9Hg [y[.2_EHaPw{y)Q('Dqe 2?eHT\LqM9$:Z5wҔX9D&v_WПkd5&_OeBᛀBs]' Q\%Pz@2(#$vV ߥ;̽H_6@E{v| P 翕 G'1v2#@RB[&/Zb{@>g%eTX!Ʊ6P$zm|S7OLܑQ|]z[L+]0{$i$gx䠕8)C$oW*-^~/EQlI ͽ&~ UƒIl}@mvNz85lzQʬnz{XByI4Y >1`hpWz%"4Q[Ken 2I]Z,7 _> tqԾ|%NaDkZk:aI#& D=Rj_Șmk-V28[_B2*󿜺T=zQїj'!6-U .<$!gCM"&99ᨭ XfanB0] @Uwt$ ω_ Q| ӫhGVdCB̡Y@4x&:'ƣpf$xrD@`y(i;( %ؔ2T @`#L3b8D$b|_?9.~(?bT  `tE|C )c޿C ANtp 8L6mg `OM$"udsp #'fF bn؁9ak i\u8b @ d'UKg̒3J8'9kMҘ{s>I~b#:}4E-ClPꛍ$HꟘũdHtwmLfdfiBAwԄ]$HN1%D]pVVpMd1a:j>k=R*x42r*\gӿ1[ُY Vn'>[3mիl}!:7o\ 3~adpe{+P? j*ۊBGjӜ=KvI 5%\ ɽjP Co|T]Yp(&\#a,rlHHIvgN~,UkYd`p[g#;7eEkH=mM M4LoA#Xq匔{mR;B,dsC$MhA4SQftAU .qx bh3xmX L}@`oN5٬{h>nV~r_({jb'"MVIhW?V[hǿq$uǬv9EOl_H$@`ڲ/\">_RؗhKRF]1-ֺ9i&^PX4#K~J@:Tzz| K&Tﴏ3Y8d  aŸ.8UR&*dKI~kQqb~O8(PrgK02iY:Z+һ!rS!n&5Y_*X)5 ]>YaM 7<Ϡ2IV=wADn"o;:@Аг4)ybN=;+sj7EaѴ޴hb>S&7iwXxC+_VWj^K/2 a8`@+7ȵG2l2컫H6{Wt+k?qU(79lP`rw DSS^W;A Ղid6MʧQO m)M,vMK Ȃ>EF=kRYG< ^QF2' vߥWnB313GY;+UgG̓"34Ri6k 3z\ =ZWqT/Ք{Z%y[˷;'ʖ !4|RRÅ17; O`QĞzH0FBĦlgpMQ3y.Zn^NgL63}UÉ#﫞X9j`^oz(ZF~ASDJx#䏋S6 3w|Q6['>I`p'pcM㕖? :Y'ӪQ=ZlȤ j9M}ɇhk5`<RqUPc?'< uȤ'fdޫ+P/|q!lp~$J5]RyL}{3ZhCodvll8*ɽ%a {hӹ\'4ᙵa<̬.\yHceI/ibE>r,2KL袅lذ9koB ^يւW '`mC-ul8H<5(-˖ٴhb$fq<3G9$&z}ΜtxB4m0 l/`pȓ'f q'pu+&x0?qƂErbꎆ28i; Tho]rYs#M5ZJ07fM5*@PO`= VJ\pSuUm,Epo*~ Tku 0AϖJ&֙>|I7 ƩR`٣-keϵ(b0ӄjTFYN'gC9[dʴP 䦩:yE@cU6NK0~ bJv` ajzP̚+ .C!51¤9P\;n,#@vUc_gNqoqȶ<GJ'%6r;g 5,df!S&LJWe:Ѽqzϑ}?q9 Rt*yx)={A-,U ;] P /t ` =IO(zOMk_*E=ۙ ]|;*Zc (*~Tk ʐǑU8/iV% &X=9||s *Y<+'GHCxeCv`c8\m))xiR q97:H|D u#-߷5]^Ԧn2H 3_AfTrTԝ|p=xo#mڿO-])"iS)\߂dOnLv>y!Q=O19x!mqxg*Bt[9\%K~1QA,.t|?[,(GK^jT2.2w5dSHdsj%x0 DHLQkEax>>\3>MRe4"W)];+oPLJ`>Pd/(AXBVsX)мdFlq3-],*sPC<&#E t:}>IקQ"M {>HP C+~a>c+`Ʊ=h&PWw^( я'$n;ltK3_8[@6{`~ag6QI@0#y]%\ lW# |L¦jHC( ׉":'HԲ,_뭔5>+xq 5"3w_j^}7Ca)X/:VX=ǖh wzµ)l :k k+@3챘C+ b~#]>.+k17L# nC/Λ(W؞< =XLJ&72ECnNO~L~A]s}􉘬>u;g}y{4#w%0R8tIktNāW*ݮVrHsPO0hZ<]:#S#U EOf5* BjU$sR |$ʃ#EJ}o6Wo/r@wNMEHu% H\$/$btl=ο/RZ WH]xf߂  "蠰nLLs]p^[ yujbL9 Q<+}i!a+wq+ Š20vgw?Fʥ쒻7F1C]^Պ4q,R :#HY..L6iƕ7?sYXD= {*LVqϭ&%bЉS6@.Hh<=s+84tqx5z˰b#"AR"&2"^힡 z[&&҅Ϗ4&PZ9>bܝ(BtP%8kXσޥh_.w>O6" $MTk-Ĭ&RN_7R͙ش9;`=u#,ND3|WK<n2Q n+6-[}SRn K vJ6`AW/3H<+ªz[r %B`l5ÚXy1oq/fW=}-Rj lm0t8nh}#R,ȷc ep-KlÙ`99_' O˽KB;9}(YN\Ig 86w(hK8Ю@5"lm}Px\wWnҴT_}nNgCds Qysܦ'l-'8EpSSb.ۼ} `Z * xEZ ?bxܫ4 UA(hD a\6rK~Ho8!H_1aTL˖ʟ;[A5"bZeljus*f @) F4H1OP`{nKnR|mTB+Bض+haa3(c{nA'B{Y$4*WGy;Ę V#~J=G )!Khziݓk쓂Gjvx$}؟9˃,C47ҰҸTR"WeqApWS'8 qr 5!fKs )^ߔ;/> R]d6^|R.hGPnkn[dYE4vhH*,ɝ i$s(E=d#c8:c~YS=R˨I3bBcopjE@'׶E8㓗H7ln!0_]>PZNwuUnPʫ::ŷx$(WVTs}TD0\P\0[Cj:OF8ш}6/:w=^{[ξX~b("h(Hz􀽡j0>l}ՃIظ8~Hyc(-YMrNCeʞyB,TSq.9) IKU/, uEgWj[a#oť#gʚL`ІiZsrE W7;[NQ s.-Vh;L/U\j};~M|6>"_"@.VG"_9!2b*y!IПYk u*}xbs2$8KVa8VKL?1rCpv 2_gK>6g٩HYGmyw+c,tGՄCUXT{i.JbVx]IϔR`4%=C7虩z<{yd(f*aS<pbӭ!)j̹GKls Cl5CO1Topa+" ?Jʑň G9/"D:,'mV9JWGW' ,hRSPLd;T׏2rYvu׊08 1keĜx"#^(^%s_&'r't8AȂv {Ua !`6~yh«:C?{^vLˍB:T[/IRt{d)cToz- nGZy6I:r{,1( # Æol][l`$X>cֹPW8DXY܀kHoCѻeC'/q,rEfO~ޢ LoFkdP$Q<DԔkdz"I^okkFLw! H@;B5+CL~t!}-Aj=V]9=CQPR:rr13^tX7`\BqYQk$h̃[6˚z++:ֱ )U`)|>Cx"f lb*1gsa#Ll Xl>a x~񀁴d#LTIQzf$iֱ΀CiQfBZ*##:Lyf ;<>}#Hjv,:߆"JsPb;7VQYif.HJš2&(Bp.X@vA'DK;}Yo =iCM!~ޝ*\ F6LޡeW4߫;CUרNKW`ɓ0aU,BDYis||ڼ"rs %$M38<˥:J9Cҟ