python-rbd-12.2.0+git.1504118058.706f78da1a-6.1>t  DH`pZV Ը/=„- ZG54J%g.ALGY3DRSU!uUAڏ0 nv*iWai>\@aù mҾ y;7`O0Y󁖆ŊB|Wj;Zb9vM,AyTOZٵ,+aE;#"f !ÝϜ?k058133012bd78942800e5d90d341e36a88545f2ebZV Ը/=„G_nO{uT+4,ԑ1"YhyS ]灹_-mrac ݋tܦ(M9$NQ?c{h w1T-%RÄ#߽n6,^ !%(LtZbvy "ȒQ!wBc&TG,rWހ^E cdz+AZ ôlLV̓:=@?0d . 2 `/ Hev|    r xH x  (8K9 K: KBFG0HHI`XhYtZ[\]^\bڽcFdefluv wxyz Cpython-rbd12.2.0+git.1504118058.706f78da1a6.1Python 2 libraries for the RADOS block deviceThis package contains Python 2 libraries for interacting with Cephs RADOS block device.ZVnlamb69openSUSE 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_649GA큤ZVZVZVZVZVZVK07e34ec0ee534ddae686e21e00c992e316ca26a8b3b38c294dc9075a186c3a8768b329da9893e34099c7d8ad5cb9c9402b9632609257f3984e4073e9782768c31eba4bcd587992c3c8437c8f13eee714rootrootrootrootrootrootrootrootrootrootrootrootceph-12.2.0+git.1504118058.706f78da1a-6.1.src.rpmpython-rbdpython-rbd(x86-64)rbd.so()(64bit)@@@@@@@   libc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.4)(64bit)libpthread.so.0()(64bit)libpython2.7.so.1.0()(64bit)librbd.so.1()(64bit)librbd1python(abi)python-radosrpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)12.2.0+git.1504118058.706f78da1a-6.12.712.2.0+git.1504118058.706f78da1a-6.13.0.4-14.0-14.4.6-14.11.2YYW@Y@Y3Y3YY@YaY@YYYY{'@YoIYlYlYZ1YS@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.comtserong@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.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.2.0+git.1504118058.706f78da1a: + fix ceph --version to say "stable" instead of "rc" + spec file: add python-numpy-devel build dependency for SUSE + bsc#1053836 * Revert "osd: adjust osd_min_pg_log_entries" * osd/PGLog: write only changed dup entries- Update to version 12.2.0+git.1504013812.01ea30bcc9: + upstream Luminous v12.2.0 (first stable) release * increment version number to 12.2.0 + spec file * edge mem_per_process upward after seeing some OOM-esque build failures * package ceph-volume man pages- Update to version 12.1.4+git.1502953626.155adb5253: + ceph.spec: provide libxio 1.7 and obsolete libxio <= 1.7- Update to version 12.1.4+git.1502878199.4183317204: + ceph.spec: obsolete libxio (Note to reviewer: libxio was only ever used by Ceph (for an experimental IB/RDMA feature), it was never submitted to Factory, and its functionality has been integrated into Ceph in a different form. For all practical purposes, libxio has been replaced by Ceph itself.)- Update to version 12.1.4+git.1502871088.edf82a59df: + latest upstream luminous (a5f84b37668fc8e03165aaf5cbb380c78e4deba4) * increment upstream version number to 12.1.4- Update to version 12.1.3+git.1502698163.45fc586a51: + latest upstream luminous (6808af486d3bdce966232810004648502c967b13) * increment upstream version number to 12.1.3- Update to version 12.1.2+git.1501914637.59afe41c49: + spec file * ceph-volume added to ceph-base RPM, where it co-exists with ceph-disk- Update to version 12.1.2+git.1501865907.88dc8cdc9d: + latest upstream master (7350fa65d79b5f0ace427e609565f07be35cfe62) * os/bluestore: allow multiple DeferredBatches in flight at once (pr#16769, issue#20295, bsc#1043399)- Update to version 12.1.2+git.1501790037.82d6a9c37a: + osd: move CMPEXT response munging into completion function (bsc#1047244)- Update to version 12.1.2+git.1501684697.aa6b0153ef: + upstream luminous v12.1.2 release candidate + latest upstream master (e27a78c9ed3984b54a312ced3ad67fcc8f464fc0) * mon: add mgr metdata commands, and overall 'versions' command for all daemon versions (bsc#1050063, pr#16460)- Update to version 12.1.1+git.1501669490.04d0738487: + mon: extensible output format for health checks- Update to version 12.1.1+git.1501501507.6dd9e8fd8c: + update to latest upstream master (fa70335db25f2b661b329d5d8f37039b77f2d1ae) + spec file: * build/ops: rpm: Drop legacy libxio support (pr#16449) + Other notable changes: * osd: moved OpFinisher logic from OSDOp to OpContext (pr#16617)- Update to version 12.1.1+git.1501231943.67577225bc + Notable changes: * rgw_file: properly & |'d flags (bsc#1047977)- Update to version 12.1.1+git.1500447879.e5aac115d7: + upstream 12.1.1 (release candidate) + Other notable changes: * build/ops: rpm: fix typo WTIH_BABELTRACE (pr#16366) * build/ops: rpm: put mgr python build dependencies in make_check bcond (pr#15940) * ceph-disk: support osd new (pr#15432) * ceph: allow '-' with -i and -o for stdin/stdout (pr#16359) * cls/rbd: trash_list should be iterable (pr#16372) * doc: update quick start to add a note for mgr create command for luminous+ builds (pr#16350) * libradosstriper: fix format injection vulnerability (pr#15674) * mgr/dashboard: add OSD list view (pr#16373) * mon, osd: misc fixes (pr#16283) * mon/MDSMonitor: fix segv when multiple MDSs raise same alert (pr#16302) * mon/MgrMonitor: fix standby addition to mgrmap (pr#16397) * mon/MgrMonitor: only induce mgr epoch shortly after mkfs (pr#16356) * mon: Fix output text and doc (pr#16367) * mon: add force-create-pg back (pr#16353) * mon: skip crush smoke test when running under valgrind (pr#16346) * os/bluestore: use reference to avoid string copy (pr#16364) * osd: combine conditional statements (pr#16391) * osd: restart boot process if waiting for luminous mons (pr#16341) * rgw: S3 lifecycle now supports expiration date (pr#15807) * rgw: acl grants num limit (pr#16291) * rgw: delete object in error path (pr#16324) * rgw: drop unused find_replacement() and some function docs (pr#16386) * rgw: fix err when copy object in bucket with specified placement rule (pr#15837) * rgw: fix potential null pointer dereference in rgw_admin (pr#15667) * rgw: raise debug level of RGWPostObj_ObjStore_S3::get_policy (pr#16203) * rgw: req xml params size limitation error msg (pr#16310) * rgw_file: add service map registration (pr#16251) * test,rgw: fix rgw placement rule pool config option (pr#16380) * test/fio: print all perfcounters rather than objectstore itself (pr#16339)- Update to version 12.1.0+git.1500295948.39d2e5f424: + spec file: * socat build dependency only for make check * fix typo WTIH_BABELTRACE- Update to version 12.1.0+git.1500284183.1ed97736ab: + Spec file changes: * bump epoch (not relevant for SUSE) * add socat buildrequires * libcephfs2 now obsoletes libcephfs1 (bsc#1047020) * HAVE_BABELTRACE option renamed to WITH_BABELTRACE * fix a regression in ceph-base %postun scriptlet + Selected other changes: * Revert "msg/async: increase worker reference with local listen table enabled backend" * build: build erasure-code isa lib without versions * ceph-disk/ceph_disk/main.py: Replace ST_ISBLK() test by is_diskdevice() * ceph.in: filter out audit from ceph -w * common,config: OPT_FLOAT and OPT_DOUBLE output format in config show * common/Timer: do not add event if already shutdown * compressor/zlib: remove g_ceph_context/g_conf from compressor plugin * core: make the conversion from wire error to host OS work * core:" Stringify needs access to << before reference" src/include/stringify.h * crush/CrushWrapper: make get_immediate_parent[_id] ignore per-class shadow hierarchy * doc/mgr/dashboard: update dashboard docs to reflect new defaults * doc/rados.8: add offset option for put command * doc: fix link for ceph-mgr cephx authorization * doc: update intro, quick start docs * isa-l: update isa-l to v2.18 * librbd: fail IO request when exclusive lock cannot be obtained * mgr,librados: service map * mgr,mon: debug init and mgrdigest subscriptions * mgr,mon: enable/disable mgr modules via 'ceph mgr module ...' commands * mgr/ClusterState: do not mangle PGMap outside of Incremental * mgr/restful: bind to :: and update docs * mgr: Zabbix monitoring module * mon,crush: create crush rules using device classes for replicated and ec pools via cli * mon/MgrStatMonitor: do not crash on luminous dev version upgrades * mon/MonClient: respect the priority in SRV RR * mon/Monitor: recreate mon session if features changed * mon/OSDMonitor: do not allow crush device classes until luminous * mon/OSDMonitor: guard 'osd crush set-device-class' * mon/mgr: add detail error infomation * mon: Fix status output warning for mon_warn_osd_usage_min_max_delta * mon: add support public_bind_addr option * mon: collect mon metdata as part of the election * mon: debug session feature tracking * mon: do crushtool test with fork and timeout, but w/o exec of crushtool * mon: fix hang on deprecated/removed 'pg set_\*full_ratio' commands * mon: include device class in tree view; hide shadow hierarchy * mon: maintain the "cluster" PerfCounters when using ceph-mgr * mon: revamp health check/warning system * msg/async: increase worker reference with local listen table enabled backend * msg/async: make recv_stamp more precise * msg: QueueStrategy::wait() joins all threads * msg: make listen backlog an option, increase from 128 to 512 * os/blueStore: Failure retry for opening file * os/bluestore/BlueFS: clean up log_writer aios from compaction * os/bluestore/BlueFS: clear current log entrys before dump all fnode * os/bluestore/KernelDevice: batch aio submit * os/bluestore: Make BitmapFreelistManager kv itereator short lived * os/bluestore: cap rocksdb cache size * os/bluestore: clear up redundant size assignment in KernelDevice * os/bluestore: differ default cache size for hdd/ssd backends * os/bluestore: fix deferred_aio deadlock * os/bluestore: move object exist in assign nid * os/bluestore: only submit deferred if there is any * os/bluestore: reduce some overhead for _do_clone_range() and _do_remove() * os/bluestore: use bufferlist functions whenever possible * os/filestore/FileJournal: FileJournal::open() close journal file before return error * os/filestore/HashIndex: randomize split threshold by a configurable amount * os/filestore: call committed_thru when no journal entries are replayed * os/filestore: do not free event if not added * os/filestore: queue ondisk completion before apply work * os/filestore: require experimental flag for btrfs * osd/OSD: auto class on osd start up * osd/PrimaryLogPG solve cache tier osd high memory consumption * osd/ReplicatedBackend: reset thread heartbeat after every omap entry * osd/filestore: Revert "os/filestore: move ondisk in front * osd: Check for and automatically repair object info soid during scrub * osd: Preserve OSDOp information for historic ops * osd: check queue_transaction return value * osd: clear_queued_recovery() in on_shutdown() * osd: compact osd feature * pybind/mgr/dashboard: bind to :: by default * pybind/mgr/dashboard: fix get kernel_version error * rbd-mirror: ignore permission errors on rbd_mirroring object * rbd: do not attempt to load key if auth is disabled * rgw: fix compilation with cryptopp * rgw,test: fix rgw placement rule pool config option * rgw/rgw_frontend.h: Return negative value for empty uid in RGWLoadGenFrontend::init() * rgw/rgw_rados: Remove duplicate calls in RGWRados::finalize() * rgw: /info claims we do support Swift's accounts ACLs * rgw: Correcting the condition in ceph_assert while parsing an AWS Principal * rgw: Do not fetch bucket stats by default upon bucket listing * rgw: Fix a bug that multipart upload may exceed the quota * rgw: Initialize pointer fields * rgw: fix leaks with incomplete multiparts * rgw: fix memory leak in copy_obj_to_remote_dest * rgw: fix not initialized vars which cause rgw crash with ec data pool * rgw: fix radosgw-admin data sync run crash * rgw: fix s3 object uploads with chunked transfers and v4 signatures * rgw: fix the subdir without slash of s3 website url * rgw: fix zone did't update realm_id when added to zonegroup * rgw: log_meta only for more than one zone * rgw: rgw_file skip policy read for virtual components * rgw: using RGW_OBJ_NS_MULTIPART in check_bad_index_multipart * rgw: verify md5 in post obj * rgw_file: add compression interop to RGW NFS * rgw:fix s3 aws v2 signature priority between header['X-Amz-Date'] and header['Date'] * vstart.sh: bind restful, dashboard to ::, not 127.0.0.1 * vstart: add --rgw_compression to set rgw compression plugin * vstart: allow to start multiple radosgw when RGW=x- Update to version 12.1.0+git.1499090920.2c11b88d14: + With this update, Ceph no longer autocreates a pool called "rbd" with id 0 Deployment tools must take this into account! + systemd: Add explicit Before=ceph.target (bsc#1042973)- 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 SES5python-cephlamb69 151558692612.2.0+git.1504118058.706f78da1a-6.112.2.0+git.1504118058.706f78da1a-6.112.2.0+git.1504118058.706f78da1a-6.1rbd-2.0.0-py2.7.egg-infoPKG-INFOSOURCES.txtdependency_links.txttop_level.txtrbd.so/usr/lib64/python2.7/site-packages//usr/lib64/python2.7/site-packages/rbd-2.0.0-py2.7.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:Maintenance:7651/openSUSE_Leap_42.3_Update/bbb3ebd764fc3038a278d3fe4f7b12ae-ceph.openSUSE_Leap_42.3_Updatecpiolzma5x86_64-suse-linuxdirectoryASCII text, with very long linesASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0e898910979432abcc2c34ad879a65319f709917, strippedPRRRRRRRO$z[.v?0] crt:bLL'It:9&fW 2VIQgp_{VήZYdSߙsIMWSvW>~"f&R^j ݻFR~1t7^{pnٟKמdޤ2O"K!֗/-4?'^&x|f '~w-=q@a{PVzN< e^"4r/I=lx"QHſ2)݄>A?. APl>Oe*v~;Bo@c ^"P|DZNJ/HSbݮM1cd*͡Ջd֨.3#_v{t6(ta14w3Dil6*o:\܁:HR4Y'7WrZNxgb!UPw+ы+b)) &zo5`_B`fc5pigW ;bŀ;`#a!2I2& $@D;eִU^LuZ{ fFl9oj+Aj#ؐX(a/QjR| =/ɂǯC9jcߤzv d-~O`,1±p߮R4OOi~zhB 3n)N2dp%))!ea#$pe&B_;dnV!ϯ= r{ F\Ssn(›Q_ hٮrb-#s|Y Itdc:@>t ߠFN<]NK>L#kֵ ǎ-c(57 q:8-.L+APQoxԄI#IC8YXa!1*X+Qw "I׎9"a]A=&; 7< JG%#tYH53U;.СN֝$Dӏ5UX=z( To(Cۺ1cTB=F~'AeȲ1uays8q}e^?^8 oAH~b0.w?Nip35e@s'v$ؕSYilT w4בlz-s+ P`Z93}o=Z9#ϴ«g.q&JN. {O kqaH1k#lr*)I=6 hj}#T b ʀizJnQt)Gf`$ru쮨ܾ՗Ek5\|a94,Ϳ|k%R+ХϬ{cKj&jH%4|&Ǚ lqiCPK1[>pH%\~{|5;S_ nHY>d5݊ga67㑶+v]&ʝE\.o˴omrEӎd5B~x0Z[Oa(1Ҟׄ^{F_PwF'1{J4:_+utVD+HIp_YZ'lab[Y_Q> aGa0{i\!K pWqs5S:5BLq7qm5TOE>i$1O% -sx!^ ǵ B·v9v6L~RX+|+EN8@r8P{}+]9qS{ipvdg[WzG8X]"u 5 !^Dc `XW-+R,YƑm}=.u| c1u\"e kJqO՘!*jbф1g XL9Ztݏ2ixmW`aHqz o# SC 6 n~`,g GkGlz7Ҳrg^_xYTh MY3=k YN;ȡWA-iN-}ȹ:#oL_k b.ȋtz0N.p#Q fY ,"ưlR[!( _OcTDa{$JjR(2I| [ +< =0FGyJ%APCQ0/ڨ=7[FP t&w뚄s.ZbXWIZ7ef!AmuAW1@Dᚪ ǡ"ydsEEQ.Mj/mimؚX 5]r@vغvϬC,E_qպ<'f1UC|u0Ccn{JČ9\C}>qaSmox"/\}M}bϯ[M+i5 EO,R1viT[p$a'*'S$ L@I܋2|ӌG;E>XVg+{"ȗ{ICrbplS" vNbeYySNk7\ r2+w ;96;z3IO[ռǔc A7JI#׵$}HU=c%zm[EOL{?ouk~ƿWUb>F-ժL5=gҡuxS@1Qbcrɛ0L#utBOLMx۬ x+QSj=g ZuLwn^˪_~̌ҡ3jZ.ZjwS)Ue7_hᎻ{c$HnFCQ0VDK^I&Vכ?7D2 " ڋ4B%2zӷ98|[3\g-=zw1n qII4,tV㈀pᱢ{OaY;ܫ'-RDpZysu1 =$W_j_u'T.$~x|l9!Y]iQНF6 zUm#-:4F,({ ?e9N)yQ`AEK'1[qNnw G&.s~4&uSTN\+M RFv " {-J,lC-8ɕlzɫS܉*BQFTz`6+}㥦'F%TF˟Uz]^k  Q:Hƹ!P|C%4`qpa'SI)My}AUIf0b_:R˱xݯhUpѽ8Q0ЯDx; ʧUY"L9c3]4_@\mEE8tz$[h9Z0ўĹ.gpL32t͸>ON>zfTľ=QzoSŒw^Kāڄz%R>g#uaby S-J2f :3쮈^ǴMR\n Bz"gmew7~ 0+Ɯ4uz> 8!"U"4;eccћJXsa LmQE([UN2m:Z:%7E·8z9(=L"nKxw-3ӝ~O[rv¨~\GDǎN a)w25{ӻ@{:oVI(0e]ҙ@dPCa+R 5N/ +sj- Sy hO74Lj}%tR0bB^N37HH"Ɉ+į+OAGǫ9iHFC, 2s }P v&KZQzF)_,~oz[hI#RC(6)AV9@AvuRć:>[p = PfC+q ji7ܺRH^m7WWqH[yW4^'ݔ mCQU:8قiQ[GU+&Nb'Mb(&?tHKjڞsBN5O:hkXT)mM"![cЁtGЇq&<{j6oHKΨoG@yJnt[;6џOegMM3޽ϤɈG<Sv=FyB:^s "nRvNyIWt=qr_ A,urEĄ/ ?}$wcj1*2*F:Bϻː`ڌّS,e%de`Ca~yoCafT]T㭊`Lf M2P?J+nfkO{MkR,z{*Nt!LBGIO#c6 z)`ss/ R?4iJE,6Mױgewrs9ި@ Ni3guh΍# Jd>=?۳6/8GMÉV4G YٟAg JoO?[g A51;z'0e["M/_ynN>z>wZRfA/# OzwUs}ɊȊ m!<r oH8n pR47kܴ>xey 6z"l2aPRѴdUzm̩rL6)i+譡(nErD9O%dE(U'srzI^QIXfgC++Op"PӚaA0\@N1(8__t^BrOv^9\N6;ZeN3caGʩA=U +ԝ[8yF dH([E~+_,xlʔ&,dR,tÛ\sNvB|3*x\z]WS0!g fmX 2ir$(zcN.LRnvo%e2>y ?V)qNb7F/ R5?jĢ8+C?cOf('kBuXk>",p@ B٦)VoνkL獋4*&ȝVA&HdK:˶eh@<6%kvc@bE$PA[(䴓|oOyw+$q//_\Tg<ErmQbJšfnU ϘCPrHTdNVC=F^.\>`ĥ>W6<1bqtwpvwD߱?JCdE_ mgYdp2wM>[x62QM#/ncٟEMg`Wmw=4GCz%I HvSo8X )5>7jtUf yY%({e9 Xz`t=-[tzl[13DchaK;G:Ԗ;&_9=+\gD=\OlnIܱ%OB^ߜn&Q=*؂/"LhL͎l~j))tUE N[7fj|!L15.`@ O\R>U0m*|$T=#dw`19X,z}>n7@mdP云3ϽˈT1KZ/zl|-+pVuQGqzg+]&/!pIbTov[TSg?^u8({7vdkyB%Bވ!l!хx#d$ov0/y:@kߗMuk8s#Um7ZlR8Op>(k~U`:bCԧwMB[s`$dl*gԞA3O$|+jDE"_9GE)[djTMnS^\ڛ-HK'EجX 4r@cHh@+72ILQɔNRd4 ;,u&pdX;5} JUm-,'h6rb~V]r(Mф8;tvd)b`~һRjcyb IDu0vO% %B\rb!#Dm+Eǂ0NB Kmfh-tXѮ4zQ3zdfWwp!&ĉ 6QeEk`' &FJ a0"³S6h?vz½4طr" @BLT89Du OZqtEr*Teܰ=[ dOz @skDUPp*63՟m^iNʳ1V[" *gD?NJ8]yuuCKU]9㾽gA{MaXՋT τ㦉T\+ŠXb?z), ViS^-6؛Dj{^-^a`iQrTPfd~ V$# ngp%,^9,/sSH:ZZ)cEP*'.&=50&[7`ti q3z wٝf9G4z[x\dձCaBU{':LШyAa-`o"2ZF#u0߳ ]ss%KSjaLPrJ}k_B$c]oAs2SVcMM2e,3l`[%A_k΂y"LZPȔWT&ud{+`Aezn= -Wx.؅RP60cQȍ461咔Џ1qmaJwcV{ ˜/%'xDmf?oXuVS%Ce.-EHaXIydC6j]wرt4I)Vhn1O)3Ar,$A>0ÙN3G\A:8NxJgK[䅮 r|좛H{ Q opt nQMC+n/]1o%Y@tx<$}[ZȓR]ߒ?}ӌ,+BͿ?d#Rю.;^+Ȕ6 CO_PTX1S 8#;3C^ L|r5o^-:|UuP"ؾfѻïF!>d)fa"%,plcl+qӎťo~͗ hx)( a w6 Ťj&srBPIpOa<(u4Ƶȕd7$! 7L7pJ_˚C0qŒUK%[Od\nM:k=A0`0yG6Eot/Ntj9Q2o1>ֹUn"9OUl'qzb 5"^_L]e g@*]Y8xN †GGH86N6k=׸P\mԼE]0ޛF#ЇЎe͛dϾy-drGϕF멤낑aTܸn$ :V-Ӈ灡Av 7."5BF$"bzp Ǡ-9\h:nb\8 !Ůrk_oG}:Eۥtpo[x֢C[4!\s¼ ۙ*k}w[xjȅþ-j&"蛅 ^9)WXWܷA* &yj=gхћ4z7?¿(1sեᄢmX" I{Ÿ`1 *DoxP fz<OmԮSU_+M>KpjQti &NiSSww,b>9TvwQLybRF"kj6?ڮ3{F]g>oky>̥I>vNdB _uWdu4k<ްŜXlɢ\7x3bd$TZTkG%BPHrW@8t['"ro`%v礫҃2nZZxNF|(!k3Kp[SM]{@9l^47 gS&;B^n=hGwp>13K1󰧻j^A>m6Kdu'1OƇvdU9/{y.k.FxY<Qank3:s%7?ܲ |B|OUf^f> 顀d"-,AAG*ۗѡa2u}H`f>@i{cP*wU{J48}%~>Z_תO>+ h`Ey6ovc Lh)S#~1ΖP^F\)`~h>ᖲ ؗD+Ð 4rं.G4&%ABT=O],Ƙ*t'6hФSpsۭ8hZd #^r _ K":qr1C,2<Aw $ 5ly:e &_@imnƟD&Ȓ:ssd}G wAKޚ4)&tЎV卑soȠ|)CL_ '|iZQpc6E8b.K I0e/ ȗ#g8;UPal& i- lk _  6XXynˤJ_T ,4hԶ@fcq kVe[~ā\0-wI4G'.D_wagX_Eƍ3\YPS.pAaꌤqČ4>[O *Ydq7+ j`4{~l!WN@ .Rzs`@nK5gM`,xgdIƋɅ]CsW SmzWeQY$bi&A*DK ˎ)}!q!s-3`o.gB(nZ-,Ҽ!Ԁyh,wԳݓ=55hٟMA׿HO7m0L;2Wg06[[sꯩ0F-wƪ8ĻfI):9$22`W(Pw"{bWե cYãSIyb4|^wa {-zAT C'w[Nʨ>NLeU ̻ɛZ5.vخJۮ/*ALCfo= &?TO甡95Ԏ}/D}dM٬k`H@MGdC|<~Bx.ȩ34b+Gic3By/4M $G$O!Lǵ[F<NK'.#کT.odrI(0V<|LWDB ޗtךLѯ!]=ةgv93hؑ%fDT+βu ?Ўo&u 4XBz1[I4FBFwuK&@[ (Q c}a'Qß$gǪCF*SH/}ÏqyxhEPʐAfFa oژpZ><| _񾆎@6|Wѷ^"ಸaC Zt.3V60MMg(% (J3Hօxԯ?7 =:খM۳ט)C|C}W⎩g6z W4ݷ\$)|i)>W_?4#KWɔtQORRRhxݜ:v^Gsj~n+샽4c<z/%IP, uBߔuf,%@V+pQ_GYY8k*)/zv -hb{asYwRrGߣlDt[B8jE#95"9,'4yϢQ'Lj|:P)*!? xa>FCRrHA"S+xѲY8lZ1k?B[mr6i(UއM$f=,z@a#,컁`R'b+,boh޳;:1@/LhnL(  F]!(lp6iFfՑVP!g˧]v\9Аr< +@Avj;;(aL./. ^;-wwwN䟀6ɦl91pl7hCYhb^L-U3o7vd7 A TD?=+s\%v`Vw4"Nƥ+! +.ʲ|]aOd]䴚Ċ8sQ7f/dH}tN hF&gjJaܡk^Z?8uW9gP59ꊡoR8_ n:g܊V{2K^nvb(X勽{v:Ch߅!aRLzec@L6x 7֊DKVYЯ+"דd[o_*Fa|^3ÖBiZoGWN8 U|n veoWF'9{&8}x,n9[xģk*dwܠ|dFZM/TP=8[IrS`qzY(@V֝LE% lija-[JaSxCdE`4*o[r6]ξ95|R΃'V6 pşG^8ҥCz5LČLi>ӅLZW誯R,l/~:=@6{"{y;쥓PpsP*=L{ Mi/ sVއ^HF~['ͳx5€Q{4(\;_ހh0o,Zt]eKUxª~"48DI嘚\Dn-Qĉ?Lx{$dTdiH] MFţ -:Wߝ&cj(;Nm{LCJ'oF&i²s 4gKdSwF폗 i(I_cGW:0O>O`Qدt²(&%蠎+0Md\:xLGlKW䏞X%լV _m4 O?8 (K.vԞr&Źs?Y(Tl! A|t˸s-> ]YbjbGS Mss,CS.OvO8^CWz_mMXStG۾22t9&&C|ENN{!"q-RS+@XŽ͚εD`ԦT&R.tٵϦY~2qeAҸ:p׽Z]i6lx.=6>dEέGuc.OLo^B'1jGF(HG"JK>]t`Mp')@_yX1g ׮H|yM} ,Z5QVYUx8&Ӝ8׷7J}#lOCU3'm5H^ 9pg8npܪ~d6|ѫ*6ʜ`!UTlEYC/=}ZdwUc7'7 4,ݧ,7IāھQވ0{go1 ͪ]ԉmݏ0 m&o׶"[};򻀜pH-ag%̺DHnMux6n5Ybmu\@c0Dn{EE UAz.@MM*+.[ݜ3Lndw8 Ϻ;g[gGR=9}!QM%w?;&F\؈[VlghT=;E͔GEӌ&IZ,wWd+ƉQQ1M~ Ul N晰8Ƌ|RCQmՂ@FIKdm$%* kPq48Ŋ/!/l t7ll(B/k!2eyoapd}.2ihP3E|;d 3]Mi.XLn䋮׌"R|PLKE<bL-BV֨YBN6/)Q_Z֤ۚR+@x* 1ъDoXICqdQ`ӾV9mԉ샅N:/f{Iҋmd ]1Tm@TBlE"JgZ`?ه^2S>oNe k{8.Tpo8 ?FQ#h&2!z0H{?6=i+(rJ^nX2EZG$-Z w -r|;PkTc: hEbP%""T lEjm,~' 9_Zc\PY`5tZTϢygU(免&r~XH7eS]2wKK[e- ArƌAJnUg.j:E=D׼vO.PWQpE'|*0 a^99= 䨰- LneH,<"<ڛe1fxBE1EI>RzBuHIn-CT># ÌSe_Vϔ#DGu߇\yYo$OfQ8qB"4`^HiXmy7U%&ȽhYh׎zA{#"];EG7ȟ`-Y~AP|;vMـVʀ:RDhLOAjZ)rC ae$H@K< Rb@d(]vIe~&b;ǜqz٧tX1_cQ'5o!wzRZ*gg>k =KHwE=C\WU_-4-`@(oYm d,'78+֡˿R|s$--Xh?>NYw"U & awIy9$׺/KLHNhڭ4 1[&B+#kӆѡ)n_EB c{W:Ƈ|~z=;S pFX׺Hz| djJ$R!W j@㿟$'jv jvoڗUwe%9Q%;H"U9.m%Q1#,ߨ=d@=1'E`{R2@q~w(^w=uEBaFj.EmaB'r]ZQ͕8ʏ8xnJ)Ƙx4X/&=irp a=>D(ڗ8j4JsCF6P'X:G @2SW~MW hVPp0o P{Cu~X[}p}zxB džF[+xY%"\ގW~cT&rs=cТCHZCE.֎~ab f4Lt@iL@\%NǢx٨so3`sszY&N!3`#YJIh O~+=٩csAc4,kg[1|ݗgG7q Yzv|Nk Fm`Y(@+y +dP z j^^pM{.w`ڱ!웹P ђ}P?VE4UOLцxw념1d^{"xV~ ;@rxaHѷ4 |! 1Y')搦.~y)x\.~!E_k6GSoE6u 1#$(|bF]$E$W lzf7;ŧ&hs'MouHs`ۇI=qbo1 d<;4[YnQ ɻbc_ ?wŻ7 c[v=Q)f@'?$"! ׀"d=v?ruϚE$Ufn`t^ 3 /GZ6I*a"()j!χDuD- 5U`AI}}ll6aCU2@ zM'i~(&oSJ19!Q}/barZ<򸫢'c?k@˷Ncײ' zm+6q!Ɲ*ZF|:E̦i-S#3zɘϱLyCGoaTxD}Aj-#rM4H ȐJФG&ݗ'_]oe7dzjlT#(]=u w?Dd]QI&sCkqw R#rQv͐iZ&]:NI Y* ^9 LDt/z}[>p* ܤ' -b_Wd݅'aZ!Y۲\3yt(H$yf&|t-Z`i ũEuC:E 39lV obH32B6#覍uUr?y~4]{JL[z~Dj6ܭ G"Y(& m6З?o]~e\C}WuI* Ųa6;#DDT:_DkJ\&]Vrߧ1*8/^Z$%HfT_ŎdB^WKrDc tC/z{c{ Z< P@ʈvR>߲ڦ `~ٛcR XbgUhg:Ļm%_=T0PՎBVIKӷgoT_M0g_뽝}c i(hC1UZnZqJǖi!R뗐VR ^eT_w@Svz)L=_?aaُ2E]TuWj kEuGQʒ.ƨ~>p`x8C\mDr8 4{+֥íSYvJ8TPN;iQ?,%6 XT,;!pz9?*Ǽdچ;6Ed/;ԑs1fj斥p46J(+U? [ aTHӡ`|Př3~F&8α|HT K& Z}[xll%DJ>C jfg3]8VRS@;_d1M) ֠`w`0%'J:`آ| QoP)8l ^%WkU[?=}&, FS(Q6 Obwf2MQXR&xۧ%5v%.~n}OO59Oo$O/[vBNöbډD&38\T< Ȏ hߑWcCY7%.*$b1s/ uQWI@1Xjm Ek/wy UwΧ˫F8iSX-fM֋K'Ju?~m M ]̸&5o6Z\d&{*bK@H|oNxXT#1^WDr᜵__M<_P3S6p&xߙ;vѣݴk6vwO# ^R2@aM[ 쁕aD VHE!6NizXȷ)uYA\?"c_ɩ_ywpIr̪˖85O-r/`(m9:ܯ}^П#Ѽ4t$iXdДfr`bc.?_Bgce'Yoя -><#3ю2Z8q&`V(qh6O ǥ\1v ICQ̠QnYnvKGs&dk.';Y&'kg2˓ŝ@>eXġRڴ?4<)j %żC#Έ+^O%C}\VLw~&vA]^p-gJ7a 4$I6ݹ<oOd)K2;7k aq  8RVD,7:H_&a+a8 % N>?ΩNX l1#w(`ГQS Ї&ke,7PSVb@-3_+X%$-C䖑#}ii~%BQsARd*D]{ ?U6˖ XyR 7va7'+%?'9m?. !H)Q֝{:iQ q.T|`\U~9:RuW-iL$ j?oXFgC+&NLbtČ:T舶zYQ=-_>Ї] י=hXaZ)6 ("w܂䖿Ucڥ帙R;va{82Ac, f9jibxZh ϔ}UhCt,ڰ}Sʹ9a EzLe|NyǟCd8~}ۚlʇ#=jH%(cD M+$|Acy 6Jﻔf3Dq>HzmR0JcHK=j45Nj`(_R? e+p>hbc4]rq3G:@~҅/x10Bul[GL>$[b[m|XD[j0Aцac|> aN-G'#LpcT9lVNܻ׎Wc-LgΦ=rY0 *h @9c{g-ck P6{ 6+ \kcYw .ׅݶQtH``4?T 2qd`=ő^902@64J%Iq_Fy5.+dBТV%dXe,XJ$]lpII. t4q#)bwLJ^NAK./- v0-}!F"y?;(q,Ax GӸ *(uَ6#!zw$Qev+XRx##=bxuD,cQ՗ǧoʝ $B9UwPY⬹w]tC02Rfm* /{5C pQ2sd7B*$:*(Wsjث[ 4>r71} H=6dI4'RQOUd"X~fEݜq!g]N~R0e/RYx*硎b1oРܧlb-ćVwWZQ`wwf,gW}O%zTNt@1^مS+~5G6֧M*m\5{_#J(Ksm=Rf22-QA%84"TP}yT^5uK`n SPaBP9)ik.M k8OY0w1#|Q%T{LeCrM(B8V,`%- !$:Ri9Gq_hƏO4*J" Q~qޏ'"p˧되 wY-FpeE:h<O߷­t7axcUu~FCJ27<-2jm5 5Ac2QyOwU5կj+,FHGnPӨBd"%nD~o˦S7;z:w4>n.\0) jgAgjh7-}A~.ovk x& 1&߶ )+8^t-zP#qU؃Ee{&P:(+#!GLiըTeH8 Gm $Pm VkNl?UXe[-Э?Ɗ(0gJ;܈a E5loթO*0 NS5b?5}r9oGnS$kba;بG;O\] =q#8@PjT<1LI,Dc Jƨ9#ux#  #\@fe2>-bY;~aFD*{iF/8w{N#`UKPȥg<<ĸi K`H` ?{@;jI.@25fq_B=:>NoNBD?̘T.L3. .UPxĪt#I"|s}hTRRPQɵ۾ ㏿bM~w0n ;[g^#gCA"Oxh*;]U7lN@XXfR.)ϫuqZoZ8gIӄU0;̧ -$:z0a[$+ ZԐEy%D'WYhޙk;\ًrTpK |J@@IUi1}xkλ]dA c;?oT<%I@2*G7aT*l/ F!*( Y^9tyYp |54h+6؁)JR f<v)T& pȈ*O:j'N|I.Bs.N\̃N@͹;]Rq IZ-t{`b"AFta$-2]y(Ey]ߠ nTw\ǂY)>'JfLwWydi2FY5]sEr<UR G;xWIhD$ޠM=kJYx>ݶLcp\cnmaW`1P"( x2`bh1xHU@ǗHבl=y1RMq^-}I$:5Zk9z.]~Rl< RoRM*J/#$?<2M4f6USmv9xdf=T]fCq([7 %# d^q5݉qHrW\1\!(aUXeC MU7wDݤzK=Ŵb/w:n{MUZ$Z#ғo75|bEJp 셜\Jd˖ g UEb(v:r/#3 :B^kt'ǜ7stn}GF%̧y11I&T6κeL'>nI"L9XMFNIXKxu5Y2+dVurG[*IgVRIʝCJ;?,?fۦ׽kzVPr5*k;qL~+r*VM UwiW3Fx[qNicU=U5k_.Kf*ҳof6G]D=ӣ/%,ܷ,+ϟEU.Iq䉗b!RxLJ>v<"=5Hقo ;K+-b4*QL*Dv]d=a,u o5k5;BA+M lG-K%`- ,q<2i.b8cRE3zj e InF[M32?WwNhJF®>o8m)~8tz,ms/$]x8m_KcoH-5|0 rĈ?D&"<##Xд.L'#bA;"ְkkS>!kc߰\ƭrzN-܀2Lv˓Կ$8mLHX47qzrh[}ޮrNV~jXy74Y4.sJg$S\h$N|fQĐrsyV Z*ENA)[+o6#!ՓC* * E. g~h.atB@ !ѳY&n&PbƇ%/c8(hOUirs_\۬#*u&D,PQWp%yl0V-a i=(0, Še!z۱3^P+d믂TB HDA֭CrBCDZݘvn&.B[dȺ}WqAtZv#"O˽ _CG]>6j} 8*𧺛Ձ6Eoe&s@&H1@2yN<.izǤ?8E{uW|R=Ǧ%\'Gl:wghAyD aDDLib ET!)#jbjdZ{lv360&T*=b,./aG)>R ! g)Տ|jf1ʿh,jLK,~Z=Xϕ)?/c}x;rc=z}=ī JDNH>q 鉽o]=@VYg6tUM5E jPKQ/7>H p >ct36F$V zs=ȫDE0N 3i-zlZS$wĿ] !0Zz "cB\]jjty wTTs!x,|O8 tq/@Y+ҁmCW`GMЯSd%Yڰ YJ1cNrOy x/81cJ`A^":&B/( p*~. K CڃpyڧǾ r(h 0XINY$]<,z-y ϓPfS x˥D$siه$qX@)~Q2MRGVOףExJ_0 ZH1gS\qHhn$!&ykD vd_]t jxOI9lw fSvrzJCPwG(o>ԓH'n@Yftȯ@ƺnHk QBPš"6\\tre`6΄μaIpYRO#<gZkz3K8'y,]ITpT'"ɠ}ĭGqANȍֲcR֓Aaz(RcS -nDXKJ99G[IAmCZw;JBݩ3$eG-pfJ7'f> ~Tٺ gh#݊`҂XR4sʯBOWC~gV$Ł #r0ue|}7zW`TYvď#8 Mk8=AH(jVo0TN ήMBʍ+_8ÒŐMu|&]5 B$Y{X9G=e"S:3^X:&JΡ@hŰUުnpbRUnҡTG4~m}r}VZ<= Ŝ&2OFPt^,ωȓDng)E?&0L6[bWz|FqlJ]Pʠ?lhrąUBn ~ lAC~ u\"@eڝ>Lъ2fjØ*ϴ&te!8n<S[R!Ux}sΝ`,sK#F)n/]b\KQ85l:8ؙN7R|t%_58^k;24H[-N{t\}vq.\ ${\V{QvQ'e{ M*I]fV; Io3nsd exw$yjQۗFaf`0wcقIY xe9c\to2ZzGnԇ%G#,X)s(aC ̄kMEw:m'&Ӓ|gvTc}V{ի(%8ʒ9BWe|夃1å4Q(/ ̀7Q=ehz3׸ =,C:lR{,~jeݦ Nޓlr TdgkzdLs)gTUɫ}] '.Ԉxx?{aJ t& 0P_znŤyO<"!q kg[@_i-W޹ʌo]9LW 1m IXQzߤ5P۳j,ĶB=0<$#K&4/J[~:;9L^imμ8˝T GtX\qsIC&? ҩ a M$p`R[Iϐ@W"CzޝAYjk7 "c(l ? (a"C(`ϯ9/Z%>{_0,sJq\blvU"0gź1+Zg'`=#]-ʅDNqGhߖQIB*N+~L*r"'D01{YxnY%će i6;3\3:niLZZuB2+d_Ɋ >UdvߝGjuЅ`̌l`}U8v"~aX-85#y) UyJS;b{kЌ]RcɧZ+K#1fsؔ%q돹bP* 5ћ 2\'S!ea9b4'uWY9"`~i=jj0:ϏwǮ-vQV5no$_ep6jarITe#%!й.w_**Sю`; j:ϭw:TClpcܞ aqQwkΖjZbj5;n1!,՟fӑвOVw8( zLO$ PdUf״~ݼ*oX"Ԇo?TQ @4r{0Uw#Yг^zY֡XS2ኩb(؛}NusmkkN)sBBw$dS0NXo+:̷o_89rKX^F q ZHB|e B=3`R[1i/NAGKA7{ : jI|BVk cI3z tYsp~:pAټ`fd"OΊW 'M۫m>!t;n0sSKjiN3Jx$!k}?Q 6h=Lk_]QsgU?F_{N xj+u/,i$'R^ty#:XCKsܳ8ucBV*~4wxkS_(Y<rB޻Sȍhđ1kKA1 EOP y)s8ubjxՈ@dE@B\v&9V[BWVWk)Q(*تUz3 ;׼u+5(Tז{=$!Ytae .۷$y{x|C*+t]G43*|CQ'ַU%3W_mi2&ImGpN3vPZ1u]b+-Mץ_+lWi4jG}C,iPϽ Sn +i9)S:g))n)Z,ܯ9h=Ƹ1SgDxvtmE΀;Xt[}a˫AJIZRA6U - ]D8VamfyQMUebz11fʞyA@I pdaVQ. [(uP>HR1YX dkE&O1Qgi}k{PP Ď ?hϡ- SPXU,_L ;' #hT+3kPwˠoxx vcpg;[Vx(Sol?<`9_G3 ږMգ Ý8渀{q 6npfմok]f ăe:T-sF w>G/M~dyja`A/ y1㩊Õ1؀⒀n#j%5N F79A|,|)_p!J+%xgt66O/@=nTk\a$h-]lt*w%W5vF){vc.uDR|PA~HaS }ө՜UF2Uyא.T^PR 4c;AΛs.}`M;+0;>}mPɟ nՐ]B#ӣ:{cx!0Zo~(`xݽ4+re5 ;XZ| P`\56E pUw]E?ҏC y# !O6Xdw%D(T>-׊S%z=U"e_7%>A <~5XXj2&~ f;vqu:嶈t ?r^s(\FeM4KDR>1`mSX@ ejU/ssU0jN9[zȓ";p*T8 |Wq$45y i.Z^lT1~*(dOgP;؅sxq_x$z3`F̰V*ד /dl.؊]״r#X7}[|WMAus}׍KKm'E4w ۇx~AG/ߍm?tjzUβ7f/6^@ 2 B!m _3H ħkFdY-W>L(vU DUPgQVFޥ_v}!>Pu: Ba$  R9|rO$_-סdlb)ljSrZQ9Es=hS+V1D,r>kh"򸇑K@A*ֻ&-(0F]!St[XCǀ)_hi#D-Uw=??'P}~꺠xxRTvۡJejA-+p 7~Ipǎ@ow{Q7 1'V.l3m3{r2&ZquȆ."<^F TGGgBOo氄-BP>mz"\Q[ Һr>ڐvy7$5:J XMi.]=g/ & (K տWydSF%)JH26jȯq mHh\FԱ1}{AmI7 !={͖!DYq`I3<A,/j,˓8*9OW+~fW̟}^yߢD@(9Vtwsh:UK8\"o6fk;P`9Ŷ0P "盺ߡz>,@dWʸ  躓,vl*'f-9SPt'WNQR.^ 3$9 ek -DލDK_Ѳ}gDIW4QCpD]Rj ^_67wZxwnk(!r| /Z}/ DnrIg,2[HHI % *`z<52VVNjG* 8߆>!f~ze āC9.X!^+ I`+%,Ep7_MtAϴr{} lNM6qÛ1"ضm} z0ex-Y-ϕ>V̍[JG3-OƖS.P u[6@aр<_:#D$[G#F@1kW[F6D[*%7HBs'A\jTc)xH!ķ/q]N##O٤$=|?+d>~ى((q93Nq%6S}fxwBNwY19%4 _.Qq,jϭv*Oߤ޻96m#s1 6LȈR}NV9T'O0@q  2wUeK\/.hˏ2LC)%ʟٛK5lڇ  r#GNJ{-''ˀ-b3/yЄ+W~!_8_|o-TR%F%;O_'pEi^$]â R~Z:ail<R[%$c?dHtr"RucNv$@vqP/z\%`|P4ugwCuO?9AǏ%Ď9SӼ.FIb)_ xI1&$+īn9'r466JX+OuK |oeAbg%}9\kvzlxT (N]nOkz[ j+0n)5ac/AB rܙJ ϬGU[qE3P:*ZCM+8zй0e ± fplIv80#񀀪mP_ZDpt qxLgB!R7%Lir_RmD׃ht%'ZUY )@5k7kO[1^7 ;{tN62QthPpi:+w:*^0d<5=޵M]_4$:@JOMɸ61Y+qvH\F4\]Ѳ 2kdhn-բ>2O-2rr{KӦ=!.OiQHIX(s*&/N5?PPr_eJmuB&ڔ31_.:4 F[y(e/ KWmQ}c92l֒dCs{-zGAIByJuOVTp ȩ eH+*!S>V'\"Xۖӭ@yY=lE&pS[}52ӂ({N;δ]O @܎c'-l$nDMcՅ} QPsNne[H6b *1oIb粐9ՌAZp  "0I|nHnfd/6 g',  5Ɔ\~F7@Y]rL+ktXmJiaipV?}69Tu>mB/%,t@0LE{tCq lh@e":(㲲]`ګ,lNkd/To:nH3?#, d$hI.Een[&Q^nB pUEvX$U0⊲w ]l!@]yRS,;k_I|ĦLbh(Y1yp V֣, r&v8hnŠ?&Z)5:ڂ݇XiYW3ZoQ{X+#F8Aϗ?>lH{@ ء؜b'[}f߻C)L\N5Y3lQ)F9OU8B/qY3=ɠo.LBMso[e5k@t4k@b~Z~ Jk (ew6 nGdSUD`gn?SƤQq9]L^D,-؅,g|XD^?ر#UKN~+-勫 45f,98mZi㸱R CMrԄjAeO̔+x s9 (2: o*WxoIQ߬ Gpa !=}ryKb2tϚidrՄ}~)tɘL5dk5`d™=FsdUaf zq* YbybCa?IFuʫ=xg@ѫ]IFl6BrčOC) w Eu+B"AM [Gw{TN!U|,ߩ'&7^&(RC9<Ոx{;<YHBG\,F㢪$Icz`E]"0s * *.}W3|: |~x(#oPɇb;$#*H·noo{f.n}/\_1$Mn.9|gHn0#'ǫz#!9\fwֺ z㮁qxiUL}+Hg@a-}~PCcH "qv0G)d-)Qݑrkl|7U+CK.70EpVP?MRrc5ͥ?j#)CN' r鰹Dumj&N3 a^Fۚhuz+/骟XBbq.oBFnJ@X5A9:$&2w;F^`u3ӬgwbAnA>S%|'Vk" 4foy*zXyq:mg8d 4Zd0B4s3V =&gcOQ<4)A=B莧:/uYnhpSҹSբ}uy#ܠʆѩQTB|[ (+@eN6{t?EJ4R ~]v98~O4Siw{Lk(oŗf(  ٭Ԑz.듗qgOL\~,R6ƲN.SbHh\>q3W>j _7wK- T i`fPXP̯iL-F$w*ص(xP;祯 ~ZoLv '0qVD1(m-ip@U/c^a}i+!)bٺWW0^g2j3"$$(Y'm&T?V໥M!+9mUE+]fHFA0aqU(7,13I_e{TS}WkNzHifͮ9KJF݂>N[\¢9,}H"Y/GOw oy߳d~< OKV>ɵ]yR5#hyA7]yJKB1(|p?Y.nBFq7ZsH4xBΡO]m]wY]m2l{C(I8-be>Q5!3FT{sB_3s-yf݀VYlKuT >ˣ*WvMgm FFJ4"f}ᦻ\#dTwOm!oGh8u0in:T_iAlp_L6B#Pmnq),g}*a^ɐQvEſbvi;/lpSr-⏥7U.IIӦBvZkѸQr5B Q_}rtIץ,SjHRY#T4iwtj-uV)wX~9,RԶ솢2Ksj kY=^ F3%Ci* uVxoGnuwS6$&WUIV d)|\+rPjOYmX?a#Z{45jB9BñOq ի4g?aȬ -z5:p !yJ ǮͶ‹1^eSth @ (} Y2M}kf{}ۨ۬esOOeUAc?WzYi@-"O:' Yizܺٓd[["U>sϲwmXX%S2.9&4+m#bKy8+#$&?%hXo[e3uL[G*[e`jexT@dFEiQ\k3{-3ѧOJaQԇV8JQ~@o?ϓ8(`2רZyvf4M(5Vq>Tw0 /"b!Y,ǨJI'9 IAEc c ;*>|iQL , K~Q4\]'ˬyD _"ekZܕ/?RS!I4ā uJP\Ycȅ-QZOQZ4/Łq*H4"?(r]xzNh$jdcr~ewsb;-U7WsRglΏrNu1*4~M_E~oCɼY!$KpiVFxYd4p5"TtP=oSn {ZFQ].cD)?cr_Tf͞iכ_QjL@ 7"kmeUTr3nœt,#& /7Vb .rL""|i4d^aeA##)AodּpDgNg2tCiG)_!d(YҁXgf= z" oӱٗ䭿_Gu@Ci^b|j1MG C߾x@<`af@S ZC7N%j7TR{~ĹfPPb9^cc{;e oDHLs  %iphj7|)]9$+R$,:!V$7t;aH7_N ҫ+a4 -_o|Hnմf+0D͛ ) ¼ R`ٲy#M6@}yy,woGj{" b.{[cA؋h=pˉ#@ ו+c3Za0 GrfzS,0)+!sR5oƀ }qja M{b-}Uφk1Rg aF%ՁҶQK§n?~PwrA mf{Y*P}Z`7IdW#~Xӓ](Yg舊(T*DJ Vr aetJ$>(«>}30 Z=SrN{.J`Ʉ&5gj#<-s9b5qh|:.ED1\XFBZw-͂s`HȪ gb Yb,p|3l6~|Yb k`#" ՞@--Zj(񸫦Q &$O?am}]Nl"Nq.p V)͟NӴXrXSn7)1LC0yQ&!gCrȺre?'emt)3'Xs^ H8(Jۊ|0ݩHBW>Q"<^--li%M;`*)sU-dBw||,UЉRVAiwNNx'ꜼiAbb/ j+9o$όoڊ"p_z,5Z  vZgP>=] RKQ[VCOj]=fvQ:#,"5g)>qQ#`()bwR rwt {7LJU De,oU_n_LG!bBu@` /~.pᆆs.9$Moc_9O מxtqkV‹CVaկ}>\L ֤` ЖYsO:bsY9"h@ek0ZDG9*=='չv0ύCڪzzT5+bB&TUm]?"mzwt(tgV_~$I˟+A᪋MbM#{670MR}.8Z\kglH3I;tj{˰ P  Zb E}ۗ e5??eR^ a Ae Kl:L|R}̴cVt=c\xG9YRudW])ދzT=.,I]J/G|Z$a]Wo!kŚ50I#:^$4])WTar>CbK{X}b,~٭ezZ×;n1;hR KϮ( Q)U>Qїi^:}wRiˡhRf^_7~`7 5|nr7ʿ74}mKT3:;V̩bio4M mfjGxg[mKOFaLA1sܙ BK]$]b,@#VHU4K1Յ;L~!yR1*(->1q# !EnXZfG㌜ɀk]Yܙw IkeGo[gB`)#+8 jǞVNt9a0帒 _.Z>چ#%'E|jCI#pVa֩m寴2т7,/5-)+/G]jq8Ђ>),[+3Gs붬 7UUf?6nP&,D:ĶH*vns˫ }V B_ӈ(aZJ|`E2{P3v jw*g`qAESvBIK⯪2!zġ;y89FI~ ~VPnV`SꉗEe 7fo|~/DEW],G7BNk&#|?=bÃ|bLgBq[POg " $9~ m-{!4zi^K]Am;̣75E#-.^%fCV(QoX~Œ5F5vW Y8_:ң(\T(PJC Y~JT'4)8!R837gz4q z6 NXS}?͎~k;sC4A_4Tx:J>??5D$~|ҙ:\ěW Q F+[^?ԄKnuGyGڕY UmYQeru0ct M%eO].VISsN$Μ;k: !!/5 xE,jҿ%\@Nވt)`  <GAe5rG=tfI!J/$\Si0HsMk6 dJdf'6uk`;COCEA!3GōdOLCFHof/ ucTdTPÑ^ 7 FXL|;W g%`բQtҹn^nUKuՐz*Blǻ sy"2}t6'4IգVy!Ðf%׳cpZhA 1:d~"#L@f!<T>"ټDZh{v?YWam$Io*^ƍweMޱuȌ<'@@*L`ѱ{,4ӂGze̯@iSIwu U^E45"|^9;c|vLIO@s${ɰNsX utziʀ y'X4zDm~9 "y 0I#X *8(9޴,l"C'?*[Œ 9LWa5a^4({@v[r{< ̫/qΗ1m۫`z>Nd{ϡ3s+SH.rϷ u}r^R(mwׅ{Hiv,?_\;s]LO̗e =wեduvfv 3z_EGW3 =U"NAKCvNZ;w4gYD%MKZlfu/"pe|G.MvYfo@M\[iDdZ4ӣ]׵eʻ0_]e dY2b46o/1%NŸ%uf`tt Fn<NE0SS @JKQofk(H|Vt?u^n1,`p^QTQ|םb[|lխ{^C6V&"Kf& >nIvN0}Yusp>[ɞX3XN[kc WE]0FB@xi l0!Ħc®h׮[5jsGC+έ3-/v 2_I!Dr Pw5خzW̎5Q@e!kݥ7}J7T TM4ɖwJu $uu|UO hf"&]qajc̦c' θ $༝ˍZ[AMf4xŘ$Sg k ޟxmBJ+}/ iR^Ď%/qyQ <ѠublW$ƭ|*iC|^y@u,Kn+UIL!<bp]W4}~OLбk!K&8&$<*;^KD4SbF-jǎZ +%*A܎β=e3OF)~<3KX0XuS̖fR6LX,DjAa܀1b{Wݮ4 Ȗ4d5*r(UT] /- ZBY |vzltɩo fzd EqoD0 _D 2 `𥮫-m-@0Wg#x4 )xk0N2 ] wcVOwli5i?&*a& Aj("fc!@"+͟%tNxqi`"X(N7 PzC `MkN\BC_3jsyQWtkuC\NeAAm˶ 2P\Yxo6T2vo$dst11rOA^MHcl߼4<>;nE@y+R]mki s!zQa.ywIsxc*j=X c`i5W!]]Bmi"z꜄?Es+ &M vxi^r6'3#(/LHD:LUXsc.N;zLLwӷtR|0\ޡT|_'XWH"Mb{jxj{R@3Z31C/`%DʟGZ/ R<'_szQ!1+s+pGR(]O)Baw>[` 5ѥR5'ݚ#d8,:[>H)@/yzˏ3?$fџ xN3Cɞ:{ZsoiY!A&,"D~LTξVaFxȺ/*RExjijv+0+IJoV]4X "f/x^wr@M JMW W;a׫o#)|xc6xZsf&*6]amWnZpMӸAe4Wz7t-nY8JWŖoTuHv洐IF5\N%Ν%m^<Ϸ1+w5 #ʚt+82}'-oo tPueDRbL tPg)LEP!3(Él|&B_a›JfNJ YǞ bF(PzJRla#6HPYu,@(>@җ Az4]H&Hz[}8pǚ\ӷkm׭yK4 ƢiN+ ^J w`'iAļpʂM˾H&G)|zJ7Mt=&sd_ -Fi@{0aֽ*wR]V|"zFsc"C$8i\H*Vxo+}Yňa\s?{OڤoTc}B{6 gmvT 8\4 4DG{ ̙ q޲ I#'cdm [-H x?w =^3K^MSq6-U}z0pt:[K,$ "c)^VͥDd #E)G<$G7GnSAT(Ӫx#a#U_{R?V ";VQ91V64*Z"ls-Zv`Ÿ5YyMe'1yt[2J,!íxbtN 6)|.ߜJ evk)Ȓδ%3 [Bb˒ 8h`ԻORviCpvtya7?SA8X4 ܀ON7F"+pA>:w)hVPH3H`{O&˂4E} xؔJ.zd!7S㑉U,^n_jY/.[B||q# n;UQtPi2Be"Ky_Ԗ g^とP]BQƬݦ`2!I'_ p,WzlӖߨAPݢ$=dcl0 L@z[-_~0;{yHTyЭ;M'g`ppNuA!` ;!dqi-)Bg0Qη &V>AH>V"V^(SyoV(cR1p}gw8 [ )/]O-f֟fxsW \S iS|}o=cǒ)z]Sj:"tֿY}ҝ&Q79s)Ž: 1,0Zh#%Ty0Gbܟǝew)40'LԸˈYf̪ډ.8#o5^I9B .cmi:}7)P2ӗ[(/^ .ޡd WvLeQ6VqrQEd|!5.j YW.乭 DF5*%BCeeBøT. `{ZwQ e0jNN͵jOb7Mu{rufGJIb D2Nß9|hIVC;!fGxc"a *W*Vn qZ<5GsZ ȌtK&I6IBFu,K sIakk%ѿSr`稒@gK ?`WlrT!tc׼2l=9&D1~u2ë7qz}Ck`R^Qa5OQU5^{py,*D)Z f1ھқ>se6Jq x[Lq \N+|i,q– K"7D*5ReFbl/8ՆuIR@C4*)Y<ڔW95Y4;% J +)=&#լuILRUkLN /b*5ݏ,)%zMh u6#%x:{x\+CjFń X%Sb߭Q -+5-`HҋXFH#-Rvލy(^]8>U&ݒ\}Lw2]j.HOrۜ{1bf3TG{8[j@VhL"Jl[~<ѩl <)C>s-@ <':10VA AScJmbsoKq9qhyP i5lQ?$*;$ݚKШ{iqCS8%ПAl;f]qVt(|3AENl46CqOb׆wW4eڅd^*Ux秡‚vpP`o'Deb<;6 G7ml@Y#5^6 Nvdjc}Y`0(3,ޙi_5dmĘ4)K}BO",;*`P֙p\1TA' .7.8d녶_C)Y[h\K\ Ē䪈ègVY8(Q!)Y;Q(?˓4Eu?! ׄV77Wܺ.ahG'>.smPF[o߾0-pD"2Hb.T*Tp^anWs|t8'hp_b 5hb68R>3[$:cyܩ0j۠ `qSaD0L3j40>bSbYr6r'["̃OՄcMt@($Å =0jR`./.!؜k:YބvQq>Mce؃m[MɼϺSrNGdM,!6S6p%~+'CXi/J`ZthU!pd0Ԫ t F{Jߣ0E= ZZraJgg6GN t˻r\j" 'w3NkWAXʷlA2:nXx[ sW?b@#HIIΠxOt3 ڧd6wy@N~uf6q@1 z:oNH>?r,ZĪ GǿQ*teV/FЪ^DH }٫#Dۧ&.,7c.MU(A A{c>XP HmҍDBq1/#=Kc"?VȾ>$R*n:ƋW2՟CBQ~_&!T3kʂ5?{0U2F A;\앳IdBm>oVǞ[WA),UV2,'!Lr'4Aϸ GDZl3IuzeR웛"tST,I_>ױbmA}Rm,0x"NxgY_4i+LS]N]ȥ8z*RB.9..|˸wqi@2lQТq;ˈ+n'fG4úXb(ao_mY4)6D -bLUf1ayuJC|?HXZ/8dՙ;8C-L8vIpZk_۩J&ޘ/.ֻIi[+Xýk$b0uR꡹6E.!F|ubƋom v zgY=yz`gA/fܡ3}QT&ʛ&[n1(lֆǟNϜh~I<7}9FY/Un\3jṭFI2#UI*ppVM.^-w1#\vvKki( "h|‹pǷ ?>6zrl!{*쥜OSnsp5#,Q^݈atNZߠWSk0fBJ+mX&sReT,u~r9ZmēT |A=X08ɸv` q.EUK&7s90i0j#0lݜu@m(-n:qRۅ Μ@~%p^@ c: :]٤m$רxf~]}(ϱoza]_ެ3l!5|n##a/N *W'O+yq?>P@yg0/ ` ''gGhW97@7c-@BbW[JjZ"UF^o]ogc>MgDvc :(/]%Td\"NKS K[pο;KrRg!f;[%ȊeƻWVsݿٗ׸~EjN0(H' [?A$`d0UGguzB=wdL ݰJ/A͖<"JPj@G1'1?RW=v( bmnu;Y{| !2/Cטuuopy/_uI3)~>/G%a+Ws25hoX!TaWl} kXPAmD8!:/&8yÌu"y{. C#K27z "-aaڊb|/} ?`;HcTtߑ!YL?b<v>{GQpQ (YM0yЙgU -yvjx+,s_!B$I ۂoykVh'6Q&fu&)Pї.fXsX ;wt7t¦&GdGvnKr8Ġ5"21rX̯W.k !<^KNQb|70@<st ǷTۇF7o7Kba1܃Y4ڬE$tY,l&R>oV)K41.=*NN1 EJQ߳ҧ񛉀/YǮ1H= 7Xah^YE WbT%DXO^#O~>8z];潬 ,c[/ $5?R:,x`Lb7[OT^2`0%gw$I2k-p inIfU!&ZL|l |[1tכL *DE*џ]8d}&ᛲW>,Q-_Y/-KDٻAU쟕9>kB:CǿJe~l`qؗȭ Fa^SLg( 5BKPQà:R%ġ{c8 ͷs04s3p3T (A"P]soCvm7Zq܁茛F$F&,)&_T"cLsrNTR oWsۿI6;bR[DI䵩!6j:pcF_H xaBEf![w_! 1'䪖4[sdgVX~*\ͷp >ae~)u& YXӓ yy>2~q:-. U&D4U~2,anUf{QhxͦPW"YTjO)u _EfƐCh$Cdž$XϨy/?Rظ<C%.AF3<;@ XMy^A`жWI{sH,{S1e9$B glIXۙmi-"}FGV9Z7 3u4(e˒9A'1<_rm4fژB7S$=ԉO&bP+!$YCč=8U2_ֆ$7ϴ$h xOc^QvWq3*NL3X&$=:($9873FT,q{jwfLDv쩉@}.wx/1s5k1^vI|0e: _/x<KZ)UYw f%CPobΩ 9e."$Ttީga8\Ots[#ٟaYi(B4V'N1|(ZC{?>}.}BTO.%pxAfnjZr* *UaL4'XBKD9wdL#}zeP]9nm6oBK)JG%hG\u@.[*t_ =D} !NHD34nǬx~s4r(Y;VD6]KX-hI*yj$;=̧iYjki s!+ Aun- M\K{ ˷R0]ۤ#!.h 5Ӹ+)#5haX@&J4r0"`.e޿d`s`A7KʓpnZ7 wTyB=x җ?U}, gW̟L=#%dEVbw* PiGQ#Z o9(If6>to9?sc N,VSt:r!)<^xp7^v #!)/K#BX$W3cAg?&&n1~ [d)]np?‰ ?. F!xM5d?V $rj`C"9?x ao-!>7KGQZ3E|Bp75{߅LQ2paP~#דqk% ,ҚgO^dCv"f[۩Xd{<00ˬnx:P;9q {ªQ .O6vdUiy ZrEzgnpP1cG 7M)/gFVZR/TAs[%QQ8iVIhɹ,f|^݌MV΋O-tʲAb7Ȍ^Sivx4~1:[J'5]c,lK Cw46zC~n Ϝςjwm K횻]mg׻[hms~Qoۗ&6mZ2;ƮRާUs}!p*R"~wL" dij𹜥\5hm)1 h"^KtwHƓD]v#+pj QlUJ&={CclpfxxpƐE'dgU+ HoT.I?և(f1{;@t.;6( 69,4GӼmZiGjy/Th&|159dNF$ <]cZ[B-{hw<sd{?@ (ٶxi iSVj])pfrWJ뫛Ay\S7ߺ/٧\b-3Sedu^#N7 Ca^vq~_'co{D%%z!vˤΈ:5kfZ[AruFU :n&(lGd9a{{\|1D];;U8}p)3O>cJ>8/%jc%xڍMx0!+^a&ژ_Cպ m)GhGk0:l8L:'<+t 7;䧞WEbfg€3`s`o*`T$OG4뗋}c.D`* rC;k/HnZ]V\ߋk!Fa W)[~m'XA3;+pT*#Iݯ|A{ҩ1't:eB uwR|^zO\ޔ@Cռf$iltl/xƣim3m15m8%ob v-yi_y}L\5uisF O,QY*RӊSuU 3U9{F*_+$ !ͰugYdկNI`w$FfJ&="Y"3N|@R}Q>}1+1$q'eY[t{Qr 7r\̸v#'9@&PW/YPRIBG}m=%| e#林*p=dt,;ɬ8a.p6p`k=DXn+5mX>ĥo޼OtTཋ4jtרX]ڟ!Ԙt̴_Rr@k0]Vy*(g:ܚ=DHE،-r*w)o%oDhQ09.9PCZ{ s<I+"4d~@|-Y!kguE)Nf g5͍K(Y8*II򸋥8 Pg?NE, vmr/6?Υ]jm] !V1۠X(c06Z1<0Ս"EMNAzK2o+i t8y윤.Y (7>-Ek"z4aFfv+(ex^ ̍vpĄ`МgJ4I`69tҕf^Im-s=MmF:_1~m 5"q8AtH J,8y8n%8 9cV}ds%զ$K4x ! p̅+S0z3᧩d0:HZ)\dpX<R+E)X,jxzhlcXpUWwU,EU>axOj/Pu ?c1c:B1KJ*&B+Ș&G=wQFhC4߄*t\~x=# bϱDD J:~}]76klscդ_h낆"&М~;[2A}wMZ ڦvDVĪeNbaɰE؜6GU/CmDLޒ劫?8$|6LU eyj1i,pX/kzK1{#ql};0,ԐsYWjWW2vJn_xw j(ti/Fd("qy&:"N"*k_/ޢi%<8 ,rH z9z2I[[|?LK2Dw ۙU$ΆkqUI%<JP=u ܓ?l|~a1PuG yJt+ 5mK;+[G"U~3Qbm^BcW+y0eFkQ'0LO:VjBq'ǸMWR tđ.p9c-c+cv%۞Kn F-E $9$K&GT?afQUKͩ,mS-Ϫ(? V@9(7xɃr#_$& 3m'ǁ7'`NrR|vf2_P$q|E* ŸH? -An_ë};OphGH"[Y沲S"U=lt=3*NJPJk[..+"`z *Jz"4A+ V`Z1I/P (Ebx!8eͣ #lI| EݴF[k31vZkI Mr\hkQ P5g6L.&~C2OB8i` U:^=ڕܤm7(kWNQja6$Zr_R;% 0oeN~^5iBC2D*ɴV$IP-f]ZۙA/ h/,[p&XKGJb K%9+e ^;J1^xȞ`;>-ZՔi ̑x &ř宯HVa|1 8攎|8UaClB閇#7R פ+u$YWűYG=%}aH ﮚE.fKc_ )kMB.ć^gX{`j.زN1|e=$Z <' bz;I"NTǻfb #425Oi'/_\PtRiMB!#jPe쩓c,v,h,RZu*ȑYHaI! *`ARGMqPWP50vLpy`6Gk0"NEWc|Bȁb}dĒ|7y^l 7_. 1BXC}`[-a:m9sW'K* caգ}JݮӦ`˘~ڷ~>ذ%ѣ~·C|kytX\^]~E!N182!= 6 r=zCYI2 *8P?xx;^/TBEyj/ =t6{ɂj8fO]zRɷQ/A,%|{3'y]EП'KQbZ}~(d{`hPghBjС}d'+sroyihpd֝LV 8 `!_BZgC"ickp6ayQו ߰Y1 YݢBpsowK/A?j]F?-LZ6/?]'|}l"W|tK&~e3Y"~y\YV[+Ԉ~gr?}W<ײpuX4h_dhIÝ~wl O<+f~c{LG&FeP[{e-3&2A)|!_)PHU^v+7uTM!b">5 4{bhV1~'F.?*Mr^Ij(Ą1=haWlQqyJk!4Vöʇ>l"a@[ S{  4IrXąj$ucchqX5vp |:D o",Q}zF ~)se}cod$"c7 ]~XZo$d8%!^<1FsN}K(y'J9"REj>{Vlogόm!&WR@9=-t-/w!(u*zlς T)`@=$#mVɐ̰J)pOqZ?QŻ0'=&S/f+[xپv w)`v] RKG"-c#O3UMpW}y >@њ˱Tc5,?* N'-_xWFIl[;!u3mC4kcsa;}Q2-)4+6+c\fOG-}!P&Po'dMj,=RnܩHg80 =i4: *ADћmU0@Gn}d]Bn\ W TKe'@>g Z 4o ]2d p'.gSN xt/F 0x0?G!sB3IIJ//&h%V]*8` 86o+E\gDr1LMZ7\&p삏W?%`~fu+wtKuk88Xxmwh_Y.0VRXO6Y,!GZ^(^ui]X"BQ+UVcP9fmQ;;` 7BPMcLha2R'cXzu{ȝ2X:t we{>= &_b$䠕}ci$>E Imh)SoG@ uhizkM:!Ak07ԏ7ޫ-u|ל20?9Z(|]e/,π_^KW3%ٰTGߔwqrZT,PMk 8 W@`|2IKf3H@F$tsXx_wVd@gki| +jLf(vF \{|ۼTJ5gW>^JSA,Dz7T}Xd̲NaRY:8u ۰%B7?0 ف>\޷zW)Uħ?\};>.)(1Ճ(̢,JhQ"%Y;θ&7szĹ\s|4 IђOԸ*ciL ie wE+^oiػ'jd-A7ܺcneb$lԖIVT\H iߝq. *DxwrumS{ wBfId/D]x QV2wU Ϫ`\e1:ki SNi )t,̈v$fڠ0@ 3oX,04%;J;Y5жH܍STH{+ŕ}&JSjsY`+zګ=θ9FVfBG>͒^]:۷Y}(W\EO~dM# 7L*1#, ,YIJ滵 ݕgjC~ڄGf:KzVL[ im*lPI2{T8`mI2:@!n{C;[wĝx,ZL4?DXa1ߕ2Y wI,wF{"›406?W˹&wKL3:E$-gm8C".%l~Cob۠5 i64"?Kt DwkcexZe}C2 $-wN e[$zސ6f* C>,Efz"}Ȧᕂ >ߕø8A-M #=`[WnB9gn%T(VZlKZ|6in=:^ﯨHB-9 VV02N;±1F,zΖ}kʄ|s^z~s HycތHɭ.]ڮ.> 0fX^O3 [AɬL[Q4uc Ƹ*PSلj>C*\갌eS*8U(P|H44/{a;IA4ߞpBĊO6k+ V;%%<0jY'"f臨<{_:N9^mt uG! Ks^ikJmMRXr^ۥg'd#W/hk/ H2=A@UQ$ S_\鼱 ;w=>UM:c?P|w:v`tt kk:ZMFG|E({!O/_+%Gt}s̸p:W,*H</+=I'k>HŘ/RS%w7l/(fFbW«-2#(hF\w=˝ӈJY>5%R.95Ic %^ه#t`^,JQP\B>9Re8zVp3qOa:rS*rHDK}6O R!T9WSsas~%;X3M63G&BB"?ӧZY —L?/ޡt4R۪N@ ~I]fc/ǔHY,/HOa{R2&Ͱ˯bkΟ7\s1}M|i'(e"\ \sxLY_Fu!MKSӯOCٚU6C~tV%2Q+,˃_[.Ǡ|4 g8H O8 kFpd;W`"0z*dè&C KyӦ'DF>6U k>t娨+ |،uMʨKfDL'`qe5ag]V6*6%lյDAw.NR3Nw#Wvb>:uhFwYwٻR-`5@|K-u183t2> N34x)'J6ߧ$T-LLJj\No-aJu⟷Жxد0MlsZ^D3CzM`<8(*Hk`t_azsyxG^XsnSPb|bhD&7^poFvf$Vlq)Y"8I&QZ뎧EgI s*5QsY|8'jGߩ g9; j^7O52OϕD?& Nq4Y-z 0+c("9 dR&LV[gq(}KpM^G;,|C(e2)'VjVMi0xI`GLA oq9|&Z\A_Prg8N,x4c9 4c>*֣h:<Յڽd'aKz :JbwHC]t'r"q!r ok^{ /V1SŒ[mf#Hz$Ybƴk7>"B@ũ$ O(.gQB_}  w&;Kxe9?~ޒ-Y>x:=rĠYt⦗ tܥٻ߶;y\ql$]{֤L`^ی3Xx `͹vg"9OVw9e!{)8@J+UoR6loa :6rCGp 8κOԬ 3}-ʷG#[{QJ /1}/:ܻU\zN`3ij>Jm@NCvbA.@>1ySbt@XCc~޵ bZ/-3\(R;bR-U.ƫ\'(6G]a}L70O6F24( &rKn遶3"*Щ7m\̛hIY]Ӌ_pG^NY7O%jum7 V8( M[ԑu bړJyڗr'+_*X'4=-mD_A2\$ ts᥊dĞUZsbN?D~@89x˲wyʩ*V8=Po> 澚-,fyk[Nzg䋇Rh*Y-e"kcSFR(;IM..A}ER~FF Ջ ,s tUGKGr,Wr (N^eV۵Q fO2{z۬]\ui~#jS%Խ"لs("̥ww|'w#G4UiEU02rN{xFi"EEӸ|ᬉ֬OĻ6F]įQCChIv q u$_|+0dę߈W9#0+UO 6[!B-um_Vۯ>=k *[xuLcoMУ }."f|P#K鳭'\DNyT ƝNRz:o3[AD%h?FMb pv;AuE u^`aQ& 6u;@V(6|"g 4R[%PAo)<j K0=T@?EZ܆Bh|+l^,7 cˍhNg4 1D09ʈҀԵA>W*kҨ굥DDۧvI@VEmm|['gĘ-\-{WG? 3UmWcg"TS/+G|0u^n$3m(֭Q!tX[2k z/Jv9p0gQ bx?ٰDwZґ"Xœ\uк+UKﹽ FN  :̧$`a V,aFANaoudk6'(SSm`z_ї.)mT4bn[ֵ5I(G."*UY%.o{uB/?sa4-^@́|8',"渽-( a'AŐ)S XU(Bot {rOuNQl = VNBH=f"Ѫ4h+W}fFE4ƼLlg0D+zrg$xv9CC\cv疻8;5xkb %*8ܗeD`~H丹F~IhC>/%"}g79:7waԁ,ZМ?Q2˖ڹ4+iKo*4&4evV, rs :zP!"ˆ(Q(Vޢs4MWCXH#ZA\o,֧ogIK=r\ Q~nOS|㦉j $0uZln!@vn$!dyĜcfP|);uHO)L~KSWh5:miXł 5?,Y/*{89j8dYZ hW #gq@^㉠=0= ՋvM;;]9hz8 ԰m"*@t0 ?DG ,{//~kvI:Ο,=cKۘ惵Gʡ!=0uIO"t%aGH_~$rĉLcԺX&c6Ӄfc//F"|a\}a!YA) X|d u:űӚK妖ŎA1,$9^U mnMJeʍ$TZzŖ1ko2~fY%\p6kBۤ 29b+e+LƲUNyWQ?ɲEq][!0l?8En:+T$f^t1h@M!ڞE"<]t4F0ZJ.X$x[@=#֜UJzR?raS.k'XkPY\N%q[3+ljtNe`VmZʼnJyJ9H&ޠoce0kϯ_c,{A8۩MoOW-I~A\R8'9 ~Uu?r0(XNj qh@|_)T/lt*{ H(*g{al{7ô?SyŃQ++d).|kB$Lgw=xEGtTd{s!vI5t* &yL6К ԁTqVQgrl{E=avveTl^LrF'w-tRny6P'yQ1!\mm~NPNKY䵼d]_( o};LcN "Hx7J]{?@24lRYg? `doԹul; k~tʓFq)~TEFX;^sFB@R~hU 3wjZr/'3lٓX;5E$`yDoz-㶰V835L+6ORb/P ,eVR8{}'o,7-wcfbF=I#/:YR/:ht`5 ؘd jb8CO c!a?;Պ輄e[}M֠u^gA4bV·0&~1yܬ9kH'vF>pRNvCn;-S{=}"R kX{S]{Ӏ2L21drU/ř6g# Z5@x4&κsVZ7ES/q[P."g]8_ؠQ-ju~5,Ϋ(6PnOːDosBUqF}H1"Q "bh0 S^ަ-~ _gk弸331cw~dd&|SJio8eq+asN\媻fu|lAݏ6aʐb:.>3gtr+;T%\ݪGs,݁fK.\ŨFӵp*6 lW*R"Ԯ'{9!\"ҁUdE /v. x(vQ䰗r ?ZoZu/sg=W7 3tO,,j=ܐqlQT ]1;+W'YLŤ7fl'fMݑ mIus2씁CI4Г&@pȼqgٝ^b݀FZ3W o8.a7}7H܆tRFcP1EYHGN44>FrhOARu"*F {9 vzqsLVm|Ts%dτ,4ڒyH@_櫧a,o"} /៻@aBBDO\K\FDyaW*cBR^Ń@ɔ$oapJ"Q=lJ/ޡirpxPJ̀,%fJ/% miHa:R:/\cy!̨1q}GL>]-|fK+miCCqȞJѓ$? z#Jmfl u 2ڳة/iy.d?c0rfG)>1agK.חFèYf{%_o!N6]stO9ZRhEE>_Vy9 +σ/aa@.x 2Rї5ٰ+>4ȸHyƋ6̌luW6O 3OzYN)KeS A o5[ XJU80E'HIXiı|. |⑪hw# ]0QLDBzYxڼƍ~,+6d7.)NMRQ TQ]?_Ep-sl}ScPKI5S|Fа3\rӠgrI%A8Kը 5).= J4|&9#~ 󣡖E~iD -5B'B,q#M<z]“H΃T$yWf9Biґ(%'㇄z\ov5-W&9 ?ʗHvۀҴ^k!nL]HVlFOغ0-0 9ʆ|Sk/.ġݸ N+zppuo?]Fr$w]P3+bGJ)b;!e> bF[,<ᛨ-QB׾ >%}$B?ۍ diwG6MhjTb(f{9Sdً&{>yN%NCגGӞ=yFV҅8ܧ`@ť70,`m!}wʕ ^Wt0G! I&їEv1XyZ7@rF{֘x"E`Qr5Q)xR_~ZXzNNLNk>aM^RVR0=l`ah~;<(2 I39d*A+ a10YvGF!`8 @ ϺLL9Jw&u̚W5))Mɥp;Aɴ4t5V} hlmRٖ vxkDrkuZL!.h^@۹W00 N@{au 5_?^%8λh* }+VvNQK)oCMj:o"N~W%x^Ջ#\C'dlZ_h0_a-pՠYz$ ɯ9%ax*D41?W̙lP'w6%ne/<5;u~r9PtMxi}&KK"I ݊,m4}?OB/w t~La;ѭWqJ|4ldbWw LX=r+N (^y ؈,MBOY²DrN ]+;Av!U/(w_ )tiYpMDgWpu oH5KJ:ٔ 1qLkP1:<AR` cP2? #)'Yh>y*Dž{9m9:\+痬i6SBE у+/SVt>u3JI~>$Rcѫ2Ŷt^NeSl3D4gp8+X,,ە̑;U/ӬcwbAQWrPiTAdюyXqtHN'bxGy=($uSnwL0%-({k.Bf= CCYrw/=0~2\1^&A2&S-FTO e*̀-g{'m4|͌bs 􈰈}!yP'nG!ؙ-Ȕ4%g)n 6!Bͣ\T?BWVy8-bBQN0Ϝ}: 桫[ܫ﫼_ʺ1] ݷz>B)zu.3D+WM24J"?_üM:+>ggmz$ԝY!epq=+zJl`@Ew@{<Rhl*@P)r4IV%8>g.?q5z!uP utWU(:m$'UxL.m#!J=>P4D@$99~MXQ8N5ѣPf-cX RwդԤ+j|ƎYS2L*p6GPY3ۀت9QQwǪS/x="ڱt!Ōe5/,CkȱaB;3Na[89pWl)US'̬Оrժ.,n s7\kߚ4\}f;,hwrǩw%֡q~H(Dej2bL4TB=Q00"֪MF|[͚Ꟍjq\CɷbU{dSspvWtq(Ou9m$tia]sA$ěOv7a乍cq]ژDf`Y;",! G*o"Kv mP6 &EDY1<]ڌiN[fP O.60+&ip;{ QpAL]{[ax;ٿ۝붨n$T$W+aQ%SF<ha ҸV]bQp,QnL!HܬM_dy@a* оQUA(iZ>d*I Tl`9˺)gnX`9Ikݳi b•yXbf 6ɍґ-!>An {*fLHdQdiqc(0jdݲT:2!@;{3Z4L՞Ћ4`"Y㷎#n1:;Ro 1Uo-N\47X)DIpFocT!Ts~OlXVorKyDtxLr{vh9b,@ hn~NXO9jg6ibDe,I ~(Q1lc(qXepP8QT-Iږ6~~_ysA∧(wC=|1YН؜N`﫞{gbPÏL;WjHhJZl9WewgXqm󸾐s(}}'|0iuZ7.বC1rX`l*sHˁ Jd*B#1-s oI#~?(3_2:c1DZνͨh*'JBϸP}ҿ<ȼDkN^Dk1 ]~/ڄgH"ñd41ȺRӹ_\O] DLzt/,M4,f[Pf^a9.JSJ6P52e*QA:t:!s^7\pf5 n6!;nrtv#{sp F|dJI <{rEϻX+vqxP=~oky6E- 4@t@Gbr87v͉2FU r'vBQmq(][fJ pqq.g Q(}w-雾 <ԁH=k12iFkT~cǶP K߲KGx/uYE$6@WEo \ܘ.TOZ5<˲ ~k$[F`n OҘ~ &6+`(uw@0$ɨdO{|#,;C,(d/P1  &vpl cħ~sd-:"K3S ,nV$$HXF~?Ëz&G{~~pۏ 4L<$ ts!OΤ#Eoe%qO s?rN? 'OUp5)#a0T|$Ҋ_g=*|B-,XW8#GIB {m+koϿ8D6nuw</ߪq$tvNTL4ɏJuomӧ&Sc)`>hϞk0چ3d>\j_ ϩhs@% Pn^Ob ogO~ԍSecٝN~ YS ww5Phi>gЍ ȩϜX%oǙmi"(J`c'r'nTy5-hFvgA0QagC; yA `$z G7kD㢾6`( ovN*1Mʑ;N$o{)CN =OSvwbkw2$$B#SXkfxD%%[NJ25t9;6(4HD!tIģ JuT·ss}sJ 5jG:LFlٙ\!!>V7@I%@-`\nG0W(nh4rØSG߶c& Cm"z4u3r=( |@.~7J')bw/\Y2mr",>$l#Z.M};mwm)s#$Osj$1&ε /Վ\,rO~etFfh; ֝؜jY];dSQW(πZr+VZ ~\tˉIXXA# <3ͯYH{jE2-ǦzHD*gW]jV6c؁%^xI'TzB&MlL<٠Gx:7E-kkA`^uP'۰L"F56 E'gd.nYzT<~ԽD_@ g^,lo8T^2 0)yf*EjP/.)ōuE a=w:dު6t_TԠFis%roR>̔@(|)rXG? ]J5pN K~/s_q͝ \ӅH/PZ#ޱ2AeOwи̦p7‹hñ\J*owYZp Y ;o!/G4)OR7֯,{j)AA*Qe8@:vc mБw%[ KTDv [[#ivk^ ~g01 }JPEW%ڷuS]ߐֶ4,%n[Z^E1x\3Nɮ!5S#e)W2gK$e97{ggk(6бIEIoQEF 'q\G%Bf:f8EQv$8UO/eWq],Poܩ`7:ШQ(SUf_2\YV~dthhݜ;x9ML)ݠGIt& old UL((SXU-`vìry,|!+"`yRن.`vqKw$mDIFU5>k`c彭jxKta^^n1 FLM# D^x#؇;~# eHrt+c8o5(Ѧ'\9q7 ^| 4} l.fPY^<5THt)2U(>%I2<3E:]]JLC%6͡wPN=)H Vu9h \񸮭k\UxfWk!:_W$}CuQ+$Iި{yiiS%!0ގ!o{CǬ& 0udw־x1Q*q /Qg!;`U@;NUXR$  鴍uی]LJMl?tc-ƲWY0Zջ7^VQTȺ 0~}Z`~:!viSabϓ8 tt$9\ZW,{5ahHCu~ 4q˟kD(,ӁY:S27lv+WI^i4 fIPKND}}9,q](^r0пMj-Lii&zr'<#¬Թ!|1]0ev}Px%ߪ_R~QPak$a'rQQH´MZI릈7~ *~l̮Uo?J 'ITװH,iT GK t -DJY۪}-SP?#Aʷ0(xednzMbsA*Yxܦ6^4@9A8S?~nm%fJZ u.r߽C]k7U膀M!EsRLYcEtT#nȼF{_[sLșŠKY]ҦkQvI7k& w,MW)1*oc]xL+:.bj-#=tc)-{ -Y{VnTVMbW'AN}\ U@D4|7᧬͊*Y0Jm'Qn Rmq̞@2`|ʢzי-B-/צ"O]:S="%m*-u@ `HŶOBm6r3jLW^0^>6KV<lC|hܲyA%]a{TDZ0(i4#5TG1I$RL)wT?4C^=GB˯U$?\ZKy#4uJG և.]8$_b̼E 0Id@GϜ]tV cz=AGN2\fWa%XD_嶫zM R<^^H} X]5:ɽnz`ACb 'EDGﵥW9t- T#Wf]-T<8U~G||RL"m)VK .}>?Zm>c'RWrۀya=`32hF$U"+Ǘeh;L꟏-~[ͱ"?n]dQ K{ރb:^W7gHhsArnōiRuH`܏oQw-]eb/Ot64|?Xtw^CDm-6"v<=FE=(Ea!Zn _J)t&kAP,T?5PfvJZnWWw;UGMmfwށ_;"YŏP< {M? .Otvl7^n {|2267bdN5*;t5JtzWg?YJW!ϕG*g,M"$4gR)[xcgN`vND;aL,M15k#XtX:{{Տ :'ڑk?$>R< Tx[m.1DSDG 9[C vqzN]:voeJ4DlN2"L2}U #l_~Ae+==1B-[j 6 92 @){B}fC;Iu(4$kr ȱtLtqRY]ԅJ31T:U7S&27L[(%?f=ӠOm yYyS:<c+ tX+j[bTπJ#DTKr'UZ6Xc^+ߐ({~TT}eNya|姈3'Ѡ:ZǩΈS1:kA uI.nj΀P =J&/j`>fӰ9{HzZ&߰|;Z_0j+b))i5Mg:`~/ ]v1Bf*#r`N J(q:5:|%CM5?_L̻1 =t^< [`%EXL6;YyWk2*C[ gA2NM橱FɻO/_b&͏ƣ#)H8`0=2#~\I\wj~7=k5RYkqX+"ቤuLSęE~CghTzOe[>̪Uo2CcTR"V샽.fLե_Vk+7Ͷ >sz!` q̊3iu7(nO%XJwqڛ/:6q4bUQx5.rDى1N=,ef=/ :2?:Ive9x% %Uo#WJ`kcm-1f ґi@oL>r# x;+ϔ֖ C9bPQ~;a=8B眩鈔?GHuԲ.q2 u``jTWJKGٵ+X\휙ѣ-?]W@|IRe0ȵ- 'MNvąO&"PQhNȬpy²e,`"UgN]7l b@^sKA ?1m6>±8A*~})˯+ى ATV&pAev'd>N8`!=>fCMU\h !t zt`5}3m1rCmZEA |6A7vEY>ANB Y30=ű/֣nOownp.˂d7w9qE#Lj*&_@],?XISeSJ#0_CHO鞤Eu*tdq~8ql *^+Aadz-uOgoOpkȞ_A乥OM0+pk΂W5h칑%zMu7'~'ý0,S>M| X`"w7nN? Tp\J ɐ|]\i,f)Zڹi=fFPl-* P[7'Ԉ8>gF_`-E Z T.9|&;p+5Y_`F" @h|BV7>_e QM2*Suj%?a.F|/n?)2C_2}4?nw} Nc[tf9 gTY#e15 Dӭ6%sx%ȳՓ, qY` 'PUgM[w=ct}2՗@Ŭm:b}SϠشK8Y;ɲSO=" w4YX"]}ڦSyc*)}oљcr&Aq:=$A `ike=?81QdhTB9+_8dU׮پ&Q4Ur2`wr۷242@{ZqG{=TXy'gUլ=Sޓ/^TSq)]erOMpo>~[U-kō[q9SNn/s7R̦9a'.5RxM%&B{ר?Ȕ9~u[Wx]g4}P{gFΔO7>= *xo!{vπfdSCm:$Ԣ*<BZ(;:qO) yC/X }~͢ bJMТZ\H~vgiO!5AM@BEGܢΈ\nCVǒp He0 9>i{YCʧ_1Т8~S.ĿUA$cP=nNp#`ewD3tsQFtvݶnO)d(uݝp|>p xDC4ub4x@:@#vބ{EE4 /-^D]FԢ9ו=O44H}Ĝ1pY`R |&G~Ԛ0DYĖZJLX"WosՏp=lϦ*Go;b4n79V+go9Vf𙃦<3fIlcn-_2%Xw  ߛc@Lf>.[b޷ԍ-i&-ݼ;]T0 _q  fMR^3~MSWw{!CǡC(:t6YSrub0gxPЍ#xU# } q( `nYeRǛ suK\]+NA45c-?$$aMhL(˴xvCGw)kb4~>nH)/-~_y%X4ªSh8j9 ey\X.2m^kؗg>~m.)\@0<MpS-YXٙ=+=9`NV~Ԋ:,y^/=HpЦɂཟNy>h%qi+#nCӀu?C8DGJF3n(c> B YB` ȮmQupi=}G [eǜRP}m8R`ArT(`mmF o>PZbqU\lPdE!_>5{L/l fif2W|H+ 7}`_\g Bqd5F%f/Ws@V=Fsfu|t-:d0{"ث_Ձfx=Wߢ Z(Yr/6)7LБY!fUK\A 98V#?ַu ; }g[F'S^#H7mW7QJ)~U}0B-'uz}(5k91vPqbIc8Y-ԙ\ƽ? uxhAP'!$MN䦯oO.cUʹLRq|b`}QkÚUmŝl'lTD'zn=i+IB~Y߯-1Rcj>= X]:͹Z=AN#B)JjFQZF፦W&Md7KoOIw&*[C˔5E.́g ̱dTSgo3Xo-,p= xo j#D'{w* R ˈqBL}Wb<_pVJb oc}iC:΋ji, n\ 4ݫ'o6E#WVJzKDL^J)A kҟp?Vrqza8C`ͱo4VgU@݆CL=E=1nfU>B; ")#Grv}(p~kd?7]i}b_C&ُwJ! BO݋_~*YiTRL= U5ms;))ko2۸mMo##!{g lJGH- kL~RAذ5#{onr|T l~ƸzV;/ɂ ם;v^D-/P0Pwv醉PWxF.'l6LsjXt"8+eaF`f{ރc 5-5fw*6ae~\TF4]QatwB5˃͙=AR.!V컒|P m~¯*e&# ׅ W[bSt,&+E-tk^ŰNO1;W 5e}i qxˈts$u"K9"h^ł"a!?ݗ&W"c\`7|Klu#XElfxw\4ezHks) nyG XUY4/wjrs!mIϢGH:qKGNo%W 8M*rq-P*@S7FNf4!IJ>i*ak%|ab2x }pJ5kK4M&AI[ C=6zGm/}AInRpZ#T]I <ƕ?x$X` D!>ݨ29sKYS;z $|A∢<_Z6]B5E<7sa]ꐴ}Ƀ7* [R>6|ۡ@g^F0~`0l} !'"R;*d9t%&4QGԧ!J_!bMSý7_pNv`SOse~wOB=3~E9| ƎQ쑈Bݤ5Yr俙u 3kTʀQIZ9|#V0dK##k'h*_㼥vc:@ / <+ AԽrVuX G$Vއ|XWB_o AB'kq `jdDG mv)&;HQͤ}}1RL?BП>]kl3a1PVh!+d2NxSFqB ]>5CAq`]4"7 % Sk/_qZ XEþW'Gꧻkw$U|#U Z|,/oz`5J3`v1@\e_zJrt~]ޮ+%bsseeܢp 6]K.eX. ݗuZ'7Eo@G@>FEQ"I t1gt)Ka>rPh.僯\^Ks5 82(q̥bB7_O?1N'+6Lh>Egl,_},$nGP_[1dk~'3ݩ1~6H* ܫ Wh﫹M%\*6k]Cles`|Q:R~ B}chj{?;OzٔϰWAq\{< )Ta]:pnp4Lj"+02EiK#ab.F%c$_LdB{vj ۆ|tOZ|dӷJ2 |*{O*!(ݕήq1-7XkxK3qs}m9܉+I~7C\DZk^l;L<LSBJԴ& <.H'!Pʰ o3hkv.˛( @ieش~hwY A><;4 M[roGb)=ٵ e4;?I8s9}H];9ğ)bЮ`fuDX6MVe!i|\~xmbL  4" MFDz)C+ldXR7h'Du' }+$50t5M)s v剻Xn0ɨ$ ZsR3W$ GhH"H1uz{X-])Z,U8R \vjmZjgpd5UT?^(q@>a#ak$4؟]0+q1 &zBg7o|~U &S`Z/c`o}o Tゾ6sgͱG gUfU}/B\R>4G!zΰ;zSEڨBx@֋;ooK$L#ts$[m_dA$[l8R&1BֳZ'^ GotRIH_^17kkeEAɓbj{H;\jqw UvȬixWTz~5*m=V089A澎?6^,P ?#;Ձ4(_s-;tIC2 ^\'Ct=fmGktqp1@72Ti(e–>XǞ5 b!N0, T~4V:vkbu1zw]o},e0 "Ɵw;t(m5q0ŶG$Z)E[;:8xy ]BjH4{V}8.-Jr1.;U?q#nMj2jL]Ps0ID6beǫ&젻k;niڑT(%R2I:T>)gtL*M oD9 Y2@ͳTRmrKgKIFoq4lD6$G9jŁDhD1G Rs4wcJ1Jښ=!v !-HWX0Ony^ :,i}]}^RomրWJR-dݲ O$oy@LqY p>_20,幠y|"i͕5(?dhPe'}dž )p IsW V`e) z\x{ T){%_F}G;P:iDNd{ӈ*c o(g<c-ޚ| m׬w0>ȿz}_1%?b%΋`60YLzġzr"@eLJċraR~:Qo^scv~W8 sSQ#:=AJUIѽqMThQ;bɚÑ ̲]{`{}qkrN߀X$BD*>ei31pIǓ55| D9]FӑÛt9l]jaZ(AH1}mhueʞnpҴt`"7D!ѱ ]Ehꊇ|>CAd<+$rko;17"A^E{=i׭D 8s.Q!343uΒU 7E)oc!ge(O;{30i(. p hm8{ZC| ('=-B } wMD*:NvW$Z(EI,\̼ՠܡw#C/@8h)|<=.y:=k#A`_;(disXfn2D,hZ4c$rσxG߱/H< p۱i}zh'hT )ɞM΢$ūƣgj)#%qk}2ÄXoE5aZIlq 7DBCZÎfOQ̠-mP#'}lEh3OR*NXJK7ɷJn im?&}N ,8$Cv2l,,*v)`dJ1}iQkN v!K'>/%/Mw2MEn=blE;4#aZ8Z~ޓd$a5 _cX0[(ظ9Rim+߫ ^IZ@MZ0ЩorK|g>9RaEO9b#d=; P+]ǹ`l~@ `mWNC FԣʖlXoB!.WyоMC<. 5EOڑ \ ,Td !2eF6\Hx5Tp^L/b>,)'fnoP$&)b[mZl1|ߴ@U^6tL'}&B}gj]O~2̙Zk%@!iSmcdsx"#bT_]|bdyPE0-<>C":c"  ͬX ׹e}49\g, HDkr4001j' ߼uT]>Y(Y UmJRt񫐪MzXr P@UM} 5 _Z⃗P°Č{·z嫈$8 6_. ϊ#ᘝXt4C Yib(YFq1OYG8]OP]N^=b7f=BwZNHyYiG"X(I9h cwFE6r1Y>> $!@FwA)4٤6JΆ{ޭgw@h C#7.ºc?tN%O >0%.xG+ ߀-?C?##{Bz%Rk_%f?*^jáҿ1W767RuaR“ms_Uؾ9kV8,NF1$ 0=Ǐ?r]VHlƒ59,4]1Qa>`>ʞK1P#3؛꓾F^K=I\◆lp(9zw6V ~x Qft(;R:4XZj; &V^J*S%pA|L5Bf;@L`mD= ^cKS]{zMQb*z7'0YsSE(& OQ ظuaq /}^ѯlw#)O5~_2% 䚀DSoa}ؕSڱ} ¢"33B{җ1cl,o8bRN*ǃl`-FNڝHJlzێfhG'ìHu ;{rHũ.ohﱐ ` چ%R>דg߮\Wj0FO M=uI 4 #]EJkoߕWf&?Q:ISцXTr35nYQ, X)>)7 eA9zf`ןŅpy-u9r<1:S{d vKucQDžZX~!p1Tz`wOR=Wn8: &[Mvp"CP@LX8e9L$Tᐽi_gfMmrUnQVh;^a?YlD})!~efc(%-yZvO{U?!gzCNK&NmT7 ZRa Qk0n68_m=.q*HX] d@amIV`^q"u63F]{)#Cmc $ZG?xrl|W=f{Yֈ;E;#:G@rn4[+I5|y{O!22q}F,tرfhp&2Iɦ~DK=M2 crQ uD8{(BXD\հ_*L:dU?=#ݢW#) 53Uy;qD-W6oUBCv"yj.ޣ6s~蜱BSKanFH$T?9mC߹ MatY)4܊6h#!׳v=T--pL9a0ryzJy)Y5D_`4G!k>aT=~CL[-ח,r^;\!{*Wgru@=;f7s{*zc&6Klv7oҋMyoPġb MxԙekJ28ɚc<*/a:zwN5mTj|\iѽ(9,pex󫭘&0*&esTŚ 2woj !%Er>JNW>ʘ9tv̀t[Nolpr캶pn0~^I,iæ7Ŋ1 `Qt+ad~lvy85'Jr>1?7~t^)5Um+ݣX&93xBDZOjC507V)B+M/p^`i!G哓J{,˱d1"o>=KI*ܒ߭S˛Y(=ڴY"KǑqPP&KS8Z<,HxޜneH-A~. gKz ʷV"lƤeQu6MQ}HPNJ-Аb =S?$I3#cv;?H$Y׼MDiŹdpX!_y~ ߧW^j9ٮm>q 8VGgn0A8}ljdD"VbUT״+\ #i\0VA5DdsGZL51A\n|S)X C|\"AH3c[bw:sW o`eCQ4  ;f*W62r[)Sc aҜ8̩|QX7:ӺZSD!9=C 4N+c,G88ie08xV)aj*W~y SJ3,@V|?0ҖbyKbc2qUe;lA0;Xm>eqFia~"R]Pl7/h,^.䥪*׏Rd8ڶfoS ԵeG~&S.Z2lxG(+zn{> 7ܟM`v(.A@s I\Y͔z Ͻ읬!܊S(3|M7hr{#n.nx[ٟ{4$vϡ3g?z!oxWЋ>/55C:6= ZW1?/ B /1~j%9"H'd H+ר/ÿ'ZqA.N/V&|RiU\Ǡ@\*}{>wJezĚ+m$/p$)͹0ÁRĨ|x9GHU=t.t^Zj'P{}̇!G9zNBp ՋCcBZ#ɊQ s%я++BSmوl y>pƻ =f-f>"$'݂4rWJz ;)`6T;`Y @sdB D\E _IyNܮ.X+@a<2il;nX:p6r@t/߿Ah&Kc/2 #UoudI F}@%a/fdQ&5D$gAJIjOX\4?Ív[6u\^_ith"ÄAMd)Uw:#ƽcJ+-*I?/y7_IY5 |zK&B8󘿌}3ke6p7(,4[sdgd zy f _}^B8fΥ&Yay"Pb8oJoAOPu~uq$>bcSuT~y@a!Fٓ!Ii݁2#ȆPy>_=Wx7}? P ne^y_!~*ܛD xZW6:ͨ8ah8Uy?b3^CiǠCd6B}(CЮin\fi,UjRa/0ٿGDg.WVW_ Ye_%ZBX_`[vP2;SoH)/ nC䎒'?@{`\7uX葹N4>D' 81Yr_i*?PX%"CMuB׽BNi/?`Qh@W uzv̿:~WRifםq-$ZQRW)~P Bck,ȣ_6Z_(1[?0[M v`9|HPQgˌci@@$grE>x_ ~W˄ nfJadM-W`akQa/[aؑV@R!\}^TB_$F718ROW:Gs4պଷ'dWXMzi(,;xi/}AVR2R:Qkm鿅 =a0备8z]˰/q@Oz ޓIwq;ZY䇩j xMtLH899N53ۑ e6t- \k sk Du] $g:ӡ^}75-A.WU}|1l靬mPYv\6>w:NWmR_ R7 % [Z%Miu" G'=K# $ªv0ʧ`\&a^WSKyj,'} ux:~s BE;-pf r7`&x,$GOwg5Dy\Nx(۽gkNj;_O_V @3"dM}P`h(@Iz\a'kaxeن+fh1/x ]I[-N#9AzMJV'91Kc eșIBV_t|D5`O6DfO;ގj[W qĎҭqN3%e:$V2vG1;#H0+ k tO$Z mTjwnk< 0^@]O0YE/© ? {}מ:H>RqÚf4 PAW>?Kd}jIJmoٵ]n3 n‰(񋂕W5,#+w^\Tk wZLӁv|8"{>'45lW HM:' s|M,9۞"KRzˢjatWٕ]@$" Avs<}-t1!Y',]uR51l\Y a!m&-AGOS!ƃ̊a*#̿{ߵ&Z$u|\ٕQ•c5wWK{?D=a3$)S|Uhx XК}sF5ñvjh+)c~1NXj5WOi%|QF'1(8V ]8X%E ْkߞ.=' lGfM .z wv[TTz92R[oE)cٳW-oX mI( 7P6ͪ4-NZBepONQ!8kտ;˦B*mjC4Mt 2Y.DVIJw1yee65(MMzCfE` #,{O1ރhI{I3NY[\]c_vTtx+A?> C&G3jU?|IV _|?!m9͜ ׿ɲjyFg UB!ŻZ])韛0zj">& p縹;=rC<.7w"Z(oUr ]{)cP)^j攌@M:gnwV*K[ <;3Aъim`έG MY|Gj\Ɋ,- ,AOuG946b-8\)9mAٗ9b9$[ 44:7,2&7%bQ ˊsfB|Ro2t8ӲBň.}a SAUoܸ6Q';Ew,-! ,N~򨴤.156Q#98v95s7@O^K裃+\iSqch}u#s] v5eƁ[9-2RV(~Cd)FY.QAWr<? u>QI{ f@A^;p~35[ Q`x wD Ȩ4P M=ͽD=;CPL?L(N#._JсgO"g+gqU\B7~ZVf2U;4^6b& ًx)jDUCY]ucVrIn&|* $}'Y^ۃG1su xH}+/ &_ecnjʃ&6R8L񚥱09U~>K)-!~\-C mz'2" [0u+BiL"A'T5҅:~Q~1,(gH\isػA򼗒;.bXsK,<$AzqWl.yu *.]~'&U?WU3tyYtX]tSd^w_'PEBD^)xOD2@y*so9lò>9X& 5g7N Pd)4P1BAfR spQ7ʦ=O;ZmɃ |`21Ҝ5jH"0#%7=uA9BʖGΩw~|"M; i}ˣf|̗lc {B9)I*0Djrm3cv:Ęs?7C!cwͅb84V]+gT"AQf @pj({C{'?ͅ3{'+!qe3 k:0cھYA%?U^RL5x}Z^%`c/p.lep[V[V& 2,<)7 j@ ";{D`Q], 7+mNcؔ|1R5goo#2R6MA01qrbkdw,?0vd'[BLn J##f0jt};O.E+A -B(^ (GGsi*ړXL?qޮ2 +C6Ϋ*5V-T(.!h uW}к'x$*_.Q# Kf;Yirw/Q)vMRښGaʠg&yJ>mR,**@nEve,Q<; %i|}sl`W ڍUdMhYU^vcpˣe\ 2i&Ndؗ@5 fU& >5\V)iF CZBckc'6z9#Rz"V؍ XI|F%@YFm꤇ q╣Uq/Ը?2] KC>☶7ͤ׬ ALS }HrG TQުi? qʤg3a #?Ec"_ K;BK}S^"6E8Li/*ݪVG< Z7Rzv xoWKR-6ɚE۩]=-]z1e]f?GtCD?f?iMa~) +R7ވhЮբ1p!j]ivCȏ?J+VDUJ'~`Wkm /xTC0+p-WU( /i i9үk14W5[$}n}q_\mr%5/<\,oi荭 נP8PGG lKۮa KVcOo]eט7;Gq' _O*5os"Xxy+nUUuL[~kQ!܎njV,bc R˜gk0M4:_*QBx˨p<;H`el(boGH|XY`כ7`Kraga-_fF . kcF}k'G;\풆> DQfdcx<6(VS}41*nM%] )L"_ amEyrwiddʵ=14>YCٜA3o;s)&ݙٳCQڶz,i%]'b-UV铋Xd;#'eE#R ^<󤭆Yo2i|0(USr~ SK'13#ëPx"tOn!e )r`if%}s!v_84Q,[fПH[G`^J.P2XyDŽ))^{giWz.*O0lW vS$8C\GHYū|$q.2 Ætcb켃$a/r¨.!є:+qĽލf R \@ OYY-ge"ܑa"2= (̛;.ܑ.۴\aT\aqF ܼLG27Ua 3afx1+3Ǚ+/Ȥ%Hcf?@dUK5IKo|fM%όqTd@tEwx1-e!8bË|gj< kmbŁpX=7JZ_9k@sP?L>հl8BA/"Yv /zXoM碨.*RgU#ͼQHZJq;O XT퀴`\C;HIU8aGlOOKB7/5wmVʗ:oCOr&XXF7dF<]ZuV 60"n"Cv&%`^USZ!Cݧ0`Eɪyʽa7Z/ٗQb.>[c?r4x] H TsXu 0t{K%/Ч w!ڟ@)ЄT5hᒻTUce?xjSr.f؀_ܝU9aEVzrc =2~"*x|[[xVVSr[~IVwm(|: kp#HOҦ+`{.{ ?PM YA95 BuYX.f%fȧi폌$Hnc* U HN(G |OZh\S-6&K3g|$ЀD$L_H7|s>`EUhQ/f 9Zbt/gDaݚMn-HW:NL[d0s_҆jD(m.|mi EX e1Y.`慰Z{9[N,M<.jӕM@1$R5Ÿ 5ֶZ 'F8`4)qZʘ!3<R@@H i-2,)*vgMӿONYdn%"M+8w5hЫnlށRv$>?}(zU8eFf>/9.QQ'fM@Qsj|ݔ6ޫ^ࡼٳ:câ M Ƨ qʳ-]Բʶ#ZL K:.`6lIΛ>pIR7޺uod}o))(RrBa K#MG†3D.p\tfTق2cbXܼg-|Ҽw0$ȵg[SQŇ⓿8Ї1rΫ^e ̒yCXS&Tɔ]4);TD>_PϹ#35j-SjzOS&ђ(B !iҺ6"_FըO,o a@$2W'{4!fVnX<]CY%ø64AFGny`uJ,M0kٓ (A1 RR{Z2gy'iC츟oH$멪(FAMӷko[fSt394DGM*P:7Osk'%x9 ,&#bó9=VI&yH@x$Gv]˘:3c#{H(*傲m-q!^iedɽS^~rmDY,9Ԥ;ƎO m.K؂`;tEU"db7TZ-4*ny m%*w^mBaLTR)tubw җ_#prBKF.WZzzڽWN~79d[9Xs`5&,m}s.C[Կ ac}-JÐ1X}߹3 t}kB6PZph / |= &?1G{kv򠈨d(Acr9ȑKuMe+{(4ݣfjq:]N #,2O!$dbABHc:taL0de~\#Rp{F >|](_AoE];܌{ Spy%̐)֢W}wc:y.QɐvSƦBq3g,i, 'ngI.!Ym@ |Vo;1[mtBYw RljԆ8ϸ1hfEIj?$dZ;VبC@ [Js(#D=ґUVvAJ| [VPMŅ$R0d)^ r^:26 Pʦƀz4 rcϣ$!vĜ`<L y2!e^V 9ܶ.]x/g۳M"C~tu$\r 8;?)^mreg߉Ӟ;M+pk+d7ɥU/6Jd<{55[דU ?*B$c[1R{E6ޞq7Q91OFuƘ4?uM ki % [8=Hm%崁X92V]?{32<pB&?TdRrEGB|JҹDzAv_=diؼbB h! |L;$gh`abpQ0ҙcW]Vr .-OWi3(K5Ӗ7оttF)k)pMB%L8X>M'EvۡjIoUı L0)AbRnЍ?' @`_N>.tH#:4yv^6DNQ6{ /fW'sfbG|MPkDBg_)@CSQ/=F7L򅒰\:r0掍S!xs[v5['tI5v?nu}%fS֑d,Em8}`!/c׽՗OCR'`G 0U +l`5bRS~JL Yx{U2xsZP[hgN +x$`س/"v4sd/Rht<DG"]n06_keYfs汀% [}.0-} =1Dť>n4jR^ExYyCٿ~@uU:*)7GKδpJoP2+}hs,[+S4^kNحIc$t"FE\կWPaA0y IcY.ƫ-:ډཌs* &fG ~0A ;Xgڼw㋉3lfҎ~[BOx3>\6D]yeGF:Ҕɾ:ܧO{ 9 iZGC|3C_E1M'mf9Lo.>sdTQ(7X^ia{gc4)KN* Ԛ:*WP4? }"DΨPӠ@2qg,,J_?hL~%m!iqo(:G`3/7d_Nz{c2pdiYև)='d4=f ۷+GV{15lYGd(Tv vW|ۊL(j8+&Kzǰ\MܯX'~x>H4SwԮ ;A}(0=Ou Kv>Gj0НEOg{:u@"Vta5#jQ/_VPLmq2HJ8ܙ<8&{ X4>JYD1 ަ U)XR}m8&jԴHu N4N+]d)s=taT%J11?4@x~"Z|jһ,3َem 13 ѫ6.ڪ1.IJ] n}:/b;?* %tICXru"pÒ/3G^\e?(p _Dt h0)<'~er`YQvQB~ḣ@b5ƻvyW!aDO3c~ 8 +0 CpCDB?jKqT|).*. QIEt7=&ylHz3&d1. Z>8Q4ao+4 ^W],6G@ynD%fYO_1݃\>ե x) *&FmdWwPVM枲Mx2oƯpҡ?9 辻oQ\dbǰa֖T !ɴ7&W<1ßuGS.btOKE'tjgwnC> [B_- l}vytrD 0Z xTwvcC:*Ke/Y;s>I7UL?$SVxKi h2<7?;ojyцcca.V"llbS0ڥm2zƗG3>Y+֠ZT͖ad@26Xg̕d2MF*Ԥc0fH@mA˃mMU^fG!;!H|-smG} )smm._bIJUb/g +//sXW^돻+V/c%{l{s;=*,)}5IBJtdRh4Ѿ o*FFI+{~݄%"Ryά2[ĮМc{¼y_ն? M 4=Xz 1NC>k8$OIVnNif.xȉpKš.Z WY ^Rl31İ͢aEufi-/pZdGĕ2ԹIR("0q#0/h,[ eJ QSd]˛۽}foAE&خ4v) nO]ڶY d "먠xG9+ {v_%@9SyguDk3;"4˜KL#EOhʊHֵ9VpMIma`c^F Fۃ[375CcJ||(79_.SftV\.z Fj[qr; Cy8ыw{w-f fy0` &Toӑ#!h];W4F9-("шo{[ $CW_EpV;q%jIkyHLSZpΧrFM[7"1 n( -F> FZ$2|B#y?k̰J!Xm0yY-$YYyJ)0BׄL+ob{\u*"=^%ޘ DTu,?i$غ'4_[Ѕw;b n-'1A[|:nJڪ|77Y/|kXlG`^ΞMUQĿPeB =g gGU "\+,yjvE ׽o*y]ВTIR FjlzEIr_Y=jb\W0Un;G)HCt5˒p<]Hr})v b 7^YA ϊ]{m;Fb39"PZ8`(H )2J%zЎ:vu9S^jmQՅ,fN@(YlK/SpaRBzFKGwv4Xbٳ(*V)V)Jw`? hF=_@_"ZW|Κڶ;4އٵ D6n;AoH [GJ}&%%{;X =GNs3*odc!v)&AcIeԲG in|q(q;٨fAy>,ao7JNY>{_Y`f DV}X+{ZF\VyGj70!%ޣAw<[!aHƝ"TI