python3-rbd-12.2.0+git.1504118058.706f78da1a-6.1>t  DH`pZV ո/=„~%js~ج λr ;Mp_&HL.ң1U ii b|EXIX>|dT=\2{(3 /@k)LFb)aЈ՜ƋG>;haXW9׀C}p)Li,uR<+,q'_VM@}{h4Z&r=$qe#\/r9 t^!@TIGc8e9303c214e2bfd00e54ad3c2749ccaad3f8767]ZV ո/=„Nt/8/n)BXTsୁEF[ؖwP3 @4fÄjFXQ OiñŘݻ:0./u%CCU3{6G0*g5[]a;:---Ӫ%ldd"~2W @A;Ef9#&]Ύ@'=|v-Y^%nMbmP$*n &?r"$VeuGq'&J]vi׿qKdLƄD >:(?d/ 3 a3 Liz    v |X   (8K94K: 'KF%G8HPIhXpY|\]^Dbڥc.dۻefluvwܸxyzCpython3-rbd12.2.0+git.1504118058.706f78da1a6.1Python 3 libraries for the RADOS block deviceThis package contains Python 3 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_649LA큤ZVZVZVZVZVZVL07e34ec0ee534ddae686e21e00c992e366c12c7f1614199cc9a726fcac8415c968b329da9893e34099c7d8ad5cb9c9402b9632609257f3984e4073e9782768c3220a3a36635ab440d0c7044e039fed34rootrootrootrootrootrootrootrootrootrootrootrootceph-12.2.0+git.1504118058.706f78da1a-6.1.src.rpmpython3-rbdpython3-rbd(x86-64)rbd.cpython-34m.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)libpython3.4m.so.1.0()(64bit)librbd.so.1()(64bit)librbd1python(abi)python3-radosrpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)12.2.0+git.1504118058.706f78da1a-6.13.412.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 SES5lamb69 151558692612.2.0+git.1504118058.706f78da1a-6.112.2.0+git.1504118058.706f78da1a-6.1rbd-2.0.0-py3.4.egg-infoPKG-INFOSOURCES.txtdependency_links.txttop_level.txtrbd.cpython-34m.so/usr/lib64/python3.4/site-packages//usr/lib64/python3.4/site-packages/rbd-2.0.0-py3.4.egg-info/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -gobs://build.opensuse.org/openSUSE: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]=a1150b6a96e9b0f8d345cb407c6d1145936f53bc, strippedPRRRRRRRO$z[.v?`] crt:bLL'It*l{[#f! su?|H?c'ُMfɚMJG07HN7K.:LIz"7 Hǂ0+lg~a7Ysy7ۋ{QmW%$Q)zě 4`OǸh@uG;Q>H˅FX#Ju‰W یXݱaŢRAojb0Ǖ('x⪢ "1 / hV.hTv"K6?f RH9P㫐>ZUn'$Z;vB 8 X !u{"eYEb7d<ـPr1:/|Ό*ƴ.#aS$xqKӦE5PԌЖiT:y8, cLW԰ӬQ=وtNn4> PHKnU/B:N0O8k7E}h.yrP 8&0i=!y?Wo Ǽ+oR`_%ǃ!'Q+Q"PO!̿_5mD[YUaL>e_s܂{QgG߀eyihx0ղ8zf3_hoZgs9\BeZyf#NPKu~]][l 2^^۷#FWK5)rr:AmAir%Io칻d*€=b@Iî.9O;]E|ó 9|=in](e_EDqSȁXM/62I^z>i7ܐ(5U Ht; %nŬPg5U >gU*JGch9VbdݰN>oy}xY5<ܙc:$=LK榦pܡm۪mbd\~bܯzc!}EDB^p.~˴ž(Vc)ql*SiPk$ffgT[ǐrat_V+s׊8ɿ+)gncQBah> `]sd]mxS>'1Y%bPDaԳXC :M:m ҆P䃚.ڌ>3HuNۨ^/>&~KgdGlA{ @ylnYżpQҙf_iX 3(h3_K dOS̅>ډZf>[YoO,.3$&ֳ g7-zď!sZ+n,|_Ndv R$i+i[o1b-vK7RYvr<[M&(Z.wl;Al?迚8뚶n]I3J&dD P"jc^NxtqVXrBvePI@E>Gv!Կ(*r;W c<{e4c7GqAvu7$H=p#ViEV(WXH5E6ֳ11U;b׋J1-/BTbM\Tbx ?Ԁ%1є*SQgxCU`Y%譲Ƥ7i0]ɶGa*6B ŹbdіOT0Æ7\d"2&'AL|,t2߿nCGW@jJB_W^Rk:;- Efw6䒺oeBr 0_>@A 9jFyFT+.wdk{eus.኉34;Kܦ76>qc"V&tߘI떵N|lVUɂ;E2}#k^{o_K<ژH;%NmNgA\UʥP Dﲋe!|lZՇ;v-*DhcLohQ9Dyx\B-o^oR|u@}Sh)S4s-&C1r&q$+MKRzYK?^w$ [|3ty2o)_uث$"tL Gg%ID' ¸ۙ: "נnݗ%~W8pv!Z5737c@U/<l|m!Zuvt$@IyQoV\l=ǖA4y P{B.[>RHv$^*1S+ܥ|2_+PT'9(y>?V/Zw$Y_ ͅf6v۟ɣGL_ИBA BIP@XNsx?0Q'IZ' dK+|UVYB,7Y;v6kH),U*z 4FfBl|whZو遺-&ʌ4Aks.ikTs6dQmGNJnU܋qv)"ۢR>!Ap(μwEЬwYҚ5>K7!U)[01T6QU27;P3ezP9]tgZ\vk!F:lryXؔQ*oUM<90J.&8WT{i!~Πj|ZwHie&C)[:dƒp|eML!hY :mo֋k^LkbO}v46$!̬]m-G"zC[gKf&^"n8% ]EbONX?t`eWƫxgUQuzxhx.Q%9OFq"I:]|TBL!f")pftx,D*FW8it.!vuDnWSB$˓@_lζvNkEmU_V*}Y2첐ךK$1v4*GKzRC#CAe^:dW0GW m5cVµWڏ?Z "( ˀ3/qcNa- C<\O+̓5ORdЈZ,Vʅ?VKS[FlP^fO 1: )b -"zG \apta_%ל{I8Fm`oM 'B<LXnѶ ?c/'Qo ]x55 In@g̲hlpnm-z )BC jb+,ExhwVя=?8`úJI2s8a!#]sS>C׉2zY.j#E: ʰ [e&! ~ =0]}mE؈Nm&*\".ֽfBT7 ̫|=Քie .iRk(wh"BG;a]u2!T%r|ӈNq`J>9%|1w \CME!%8/%?r"VҵKk{XmK H6aj>R YDHVNb4VY j@Eȥ'T|Đ c`NS j?Aw3kz;>9@:^r,y6N-f~{|o'6l8c}@ԉAH4I\Yօڏ~z.;bxrc7F!Hp@/] C0I,%471-92 t! (Q`W2eYg*2(B&e-[KZKjȹf/cyG \UZ6FNl $$lX#ȴpv‰Jƀgp#]%fM Ƙq4p@Sҥ%0xa]P,g_ǃxqv'.Q؝v !t#)DԆmfЪ^R@GVVgOR cĎL?^9!+Ea XC]/NXUԪgl]/q47~8MנPM?wQVym ,ufeGF,J'y&3BG|5mY<#F .cKT-Mh`r]]2H N- ,{4eqX3MLJ=U4@IVS`bc B凳Zv[OӤ1ctʅ|]"EtON|pK <L,mZK@i!?~ <}h#yۓE$2`7_Zx7]{VB4G`c\#TȏE+7``zRiPۂW~X%%砩CRxtN2\9j!zVM5TzM|ЌSiZj&=mS<=ݳ w`6[ib2~[ۉmOPp77Qv<ʲ i%jYjΉgUW$lٴn$RQf_gnR9+*?o1^5GD GJH"z(]寔 /*Ep,e{P K]'FVr#X jN ޹߷k[ށ(`9b we3^1C=jJ 8qy=ci i٘ wq֩qd?1E"鏁uryHe^_qh_ٵL'+Bg;567e29-'2_^":Q.៚{}K<{0GL%&P%牨=dZI+9.qe),5 lpdeq0$^CU6 TG<(Ht3Gso*S潻D\ǡ45’W1HE_Nm,9³(Ԕ,{_[ Re`㶾:%yÚFx#%[x>.j̡aлxvU ^sa$.rUFDr1֍GgRn; Y&X,'5dslhuN -nNJ801*H/ZQnk:IsPZ$8hSbmrU_K-P S9d.ܒ译Qgoc$i垵M>zI3?Ac#˨h{6h:;0Idcd!?jYۦ*<}lmZ߹JHQ1iQ J7lcwIv_hl($W-toQ4x#AX~t`nZ¸9Bza$@@fWyaUvk\l>l{&!QWݿQ|R6~5hi6?-ВC1gMWSO]̪9Gee X6UZND#π;8jȌ߹Bx#I9VKZF_?Pi2ҞϞܹ*?E81=n9I=czˁɎ=j!( _ގYt[1#_ w96 ]Y0q+lj혭FREzZ~4GvM p9McBXVO ٜFB\2שZOEXr2wF"C=848룑bh/t&&`%M b x~W?Ҭ)ifg4OW`90:h v!ɞsp*k:%U2~$Ey+rlfUXcC 1+\ քDV-TY.XۋbGCD5nmЮ3mN9¤{`ʧXw,d@r./1E" M@F@^;&*(?ȧ~J G0 *=նyz׹?4 ,jjr<plR+)B& <%ipWEU{AM4xCHԵV)p e$JYz+`$He o`m|5 g9 ~<2v)F#G&u\^r*v0I4?5KDV7>ɃXFqO3c ]']*'ٸǸqa f@R`죌%mi꩛\a%[u*d zOتžVP+!@Id! 1&G) {Nբre8WUÞ"HUvP4H1gUS% H2ԐIpIcělcG#>L z)M*Y̏ *!BDt!KKnWKNY ڡjM䕮BqPH:-%,8Wsp#TFDЌS?"2 LmmOV5ҭһd3t4O7U+>LdfCsMZ\t.۔6 `w9gt*7# a gԙ:1K\ rJEF.m(QDA+BiʃVtA"o^jwpRn;r-&#}*}Bas8&UBRy O:Uӭg߅9zUKv`sX?dqt3g5>=P,:V zh<=/ >(E ѻ_A68cʛU$GTa'YoD36̂wMܢT&'flΨa"[zۚUJTDp*c "&4CdzҧSSl*>~n}8f/'1r-(ȹEnZ;|4Jgp?/w= Ibym_/qEk|V)$O((H[kqQx;Dk^gKlڥ(ޝo6))#K5VT3"]\q% : XbeDr<v߻jed`nzk/h#{|Vg%6A~\E̝j[UObYǴ'Q>Q"sޖ"-=-n'tkC,ca ԙy^iXxµh?<$ah P4LLRe4H\Qՙl%Em<2AQLE6/*M@ 8ͩWY8K6 ױ# aq!8GcM$}4.fNp=N *!hU_ʴIoQ.M[_t)iW KO/R [^#n\LZy [ #- D0K8p^Ei1D#Q2U3Jò_XQFs~^dq V >JvǑ)ІC,ZX=Ba)nQl'N\5Q,֚wֱr%>e/ :.lfUFSw ̓Z!{ȇځ 1%Jxȡj(7L.Xr55rjIo1G TVʆ(v9W"}*dD|so:Rw@y#ViŃfO4)/H7 $qι1xLP/8U2ډ=}r=ovSy˗ uļE*BJWd ^ϣvSNJzG ! e"PC Sm EWl\#,~9(x)OR "4(пRlʬVhUÍ+Vxsg'0cs*q%HCgw+q.PAĞgg"}; IxEfqDN4ƅJoV9yA+ch5 'W mfj0.[5>*l]\BmrQ70 B1kKQL8Ma g9m^"G dlXsHlņ]a>ADL*^/^T.F#Gb`'*c : H`WO sw2~ZM@}\"Kc~cND;Tϸɾ`Dەf_k ];ag km&?u3_vcdj ro5 âoiŌ%StoYr5sZ s4vf bGM5) JoZotb wTB&BjQe`% dEx3]Oͽ!Q Ӯe!&"O:Y#BINj’x&-RƈM 31c;R$(ARy*̛$=E,-+vb؍dG.>.l@L2DS~)]щBɾ~!>"&ϏȤTR<]xJ]- \]w`8>>W:ʈ*I?jyxfyk5@vn>uF~,'fgW*v1G2H=z!]K˥z:'*(ΐ|;d8bG-qR\SRNLmuBĥƖQI h|#_x벋;Or` id:(O!8gfTD]pqd^jljX 8/u xn{UqNrd*أ 'مpuua!zb$Km*\y԰lkv7i>70+pBiQ,Cƽޱg͚P+QI. ^@E_j)$~,%%-S`hȰsqȗ_,8|ӷ ڴZHTp0%N=@C\Q!"[<V/=GQ4cܪر;wX_1Ȫ`ǻԒR.pҤ $_ˬpW%Yğ‡QoeVj?$=R\p/J m#?u΀R,bU XPtv~ 0tomsMZ nB)j[VVb4lht,:[|Hv_]>L姀]wHy]Xlz-<)CJRyV|rt}c|ҏ@a4Um h p._ 3cԹy䨦ndv -_UD\9giOu Akz/ XסK4#Tީ!M]ߥq|zEVa&R@O${ў$rPS*#?GyiWZͧGZSly] ˋDݼ楱ᴏP9[̸*!: 6fJ˱Vl;mt)52[-ƀ̈́蕠NW,KF!BrX4؅5W'`Dz7hΗ6+pԹu[` V#?b?y34WSZm'_(=9V WAN=kORSJBё1abn\?g4>ZcS-D]̌)`<7 Ohp/Yù+5Xd9k9PIXΆd oӗ;iXsTRhU5tJI./OJAbM-}Řv1Պ@B˺E }yGz1eZ rs#{Zґ/4[SBm~d=n'j퓥޿fydO%ts8_2$`}%#ь2Iͧ81P6'oJ4ܿO}3‚[5Z"ϑe8bJɪV"SRo>M*oF}zfL'ږ$yn7uQe +-Z2Y3X;2`Rs |SIfʣzy͎*ZgGZ!YA="м)=QCxK4KD0w+mAr$$ _X1[R4)<|j)ō?|ŗ2qp7>?YBm ]N##El̰XovQ;r},rk u8@Aub?3EY=' Duϖ1pCO,qMqɭ1IG#$W,*P+? ե ԓ9N^ {*̲x2\p`+  ISk? ׮׷ 0By+XXOK=W U8$D/3`v k3P@Iְ;psL-Q<װul!. 4h.B}P6GiȏɒB\֒ ; C6QYUskZjPS 9HwGsyZ[9fBG* >&u%`Ne2'D:<)sN31WVF< p\ƧC 6ʦ/"YGgnOt1FvR(&k_ܵp}9@;J$zL_X>\ޥ0&ۂ~on=Jӄmb`:LH?"CgxbNX\dXw`vT~2_oZNLTKP^mOOT-j"Wl{&vSs5ٽI)Df@o0bj$1J'_ppSnUI^4Hq郌9H#{u05r|t0mp}{_M cʆ0Ľp v55XJ;4ӼAl\ZbQv1=ԕXM!{B),hbdGu}}`rkGP!޶~JNJ +FF܄랦5B(K"I-i:4RE6^Ǧ3AGռ w|yNn5G*hW"+W%BR{;l)E翳HԾOPR#% ŸRM3>re6OVu)/7JAUH[PսMQ:< [LXN'J!]ڰqiA2$&2Z$ip%>g8{bg#'RQ,Vh1mwXMW!:hr}EsC@nZ 7MZPLNۜ0|ɋRd}c tx-q8i˨\vR蚼}l*fz&ٽj>ܸ}$Ŵ + (fKx56GX&̺ЌRusW&.CE]z^!~ە 2[HXrgN2x)s׫HKchЯZoPJx"f%.MȬ@$b{.n`L!MUuq`Z<2pą3I"HSc&t={jS?32E%VsrA zYX5i# i5&C2,$2߯,HK$,ݐ!&;2TKʜ/OuV!$? Itۙ`Ct`Xc uf<Ǡ6+_-v"6 1LnD꾅"$yA7ͳ$+LS{=72^Es˗Y ݞYqw ڽ l՝1Qຮcze1 ?԰@nFD`\lJ ϥ6-15+ҒQj&!h+mUy/,DZQ2hd5^5%[~%j*DxHo_نDwCkRVXhb5 az*T*Qש1_느PLy9YI ͷeKzĤBD|s67O(X$ q˪=*ԪdF ǔp潎=X8'ɍN'?co`h &1k @Z4_ uƔJ64 <0!1:G0$ ͿO0 6ֈo['Vt;gׄq !OBfT1Vv&ڀCZ.[z52bvi4DuraNk5v^c({RGlBM+:zDStovjQshM߇eZ %x Qn%މZ-aϹk0§go$r@i=Uˮ %}~UMu60MkQ +]FSw& ̸F6܈%f KSB#4Zrn1fMx2:$||$ޱ0(t%OZSQbYMꮊ$Alô8gs+,d"{HG,=la]WreIޖ!|>A[6\0HYjITK~_7N) W@KwAh4,7a ӮӣsZZ`ꃈA ؇W~eɈkL1"f7ɝIJ%\8/lSݔi3a' o>/nSH6~vߋ#څs\(;vr'{*Ai5r7 ' $q1AeGY$x-|hgql4m1 )< Qh7"*ϡpZ _* p 9zƆ3&Kc`:+7; >x Hښ>'nDͳ}-.7N k$ǓLY'')]"I\`bݛAzZ46ٝ.kQ x-U]^h"Tgy(?}38ψ1\3jSuq|mWqرfYZgcsMDY} Z6W%I#;ϸFXTo"Gd|+T/qUzIHM@=m[ Kω/)$ć:%Q_^uzAo_sڊ!Ԩ>4Z*'REݖv\R. 3]hǮJ)Vd}UH+o( gt/KI)_C)*Md SM3nԸ_ǹv сQIl)`oelPXXFFQ6z(᰹IXdw/UTnK܄5Ή|BYY+?OY8] tb&]Hqt},qj~em~v[;" #q_1>#>"]jo? Nߔ @BBAzdV `+r3X@ӌ݌:{xg=]ؑGQpHGBE=G|&8|R/4 K;K>|.aĮdfyL}. XtR\I("g"bc+z.YK+Z ʒC#;hQVh-.*﷘LP6#v\XBo:<~>pj NvD*CzAF_K78Y.'A^ sj>*!]g[8 qJ@}|8(O={Y]8>af>~m٧ʢa`_RC`zLs{#vlBrW!|+TC=÷[5PiǃMAXRBH"dxnlG6\\er߅?:ÏȬ5^}VkY[!Ό0c#i~+ lqe92x%&ȪT QګLVZ9ۡ 4б VS wIǠaPv,N~1 1d&b_ 61ᲧaC|(~1zػ.@tA*O b p k!*>4n!D)nCN`]TD 4T]hu¿-q#)r&?ޝSHR\Um;WJ&bbՑG<,cE]$}S7pQ8hZKbL',.,$GV){+%h%pZqD$9^|I2.,D M`tnlo9)u(ubJ=YLo>7\~=⿶ t3Cļ=@:/LشPd521F$&ڵb6ؖc\iA##"l}ZPtb<*%ya27(+pj+\ Ԃ!^; 羨ͨMpɎiPEw:=9/AՑ:Ex:Zإ=$9y9a]I4Gڪ*rmH,|rgԓ*oO vE֣|U 6Э.m&= ﰥOXF7_.xJ Wf]LVSo"v%YNnZ@AߊӔ yᗦ =@(< WwGEږ9@TA.H8Z) 1$s .vD vi̝KX8#bC_LX9KX!.q$g"aԙӦį[`8]%Ehq|ڞ$:ƅd)ICCρ=)E 0/74{m3*\ͬdXYWKMC$춃<늗A-}9enIV; _'B9KuNd Nُ ʾ0N0(8J>T).NJ{]6Cp.99z$a!c@wC:eŢ 0W `juE̜0\}ZCǛf2BɁoRUR4 odpvX&uyPC#^(S9؞NfY̿?/ %}EFhK)WSM.&S'MeAlIw=r< $yqW{閿H-H8 /swG4fO';=hz"y?D@mǻ p'+2֘Rmse&%B&EыZ1hTНi R<2W@JwBXRTm.pxsЙYѫ^klrPQh<2@P&:Q͉wNÂ:xrEA}?Tx 臨OXC"NMmothy>f#`]#"]Id8ۦy%O^=Q9f?kSVlZB08l*<ϻ{m8l[HV53tnj"/,`jzSe%I A3i Cwk%9)ѴKby?r6/J;/QB#LLb^#^x2 E*J?^0Ygssft;>r>q.߼ͦDMIE" [A͢ZsXyFR M%Tos6`OhH!.]m ӄ<4XŔGYªS[j<}ߞ ߛm:emZZV9ScSWTU٥UމDOAGă,iyc)|/@G#?g}<*)ֹ0>G`+ # ߜ;GؽŐ\f9rs,?EDKu{AP)YRP'{w<虄o'{V g6Oq׏4b*?DV mlȾ,Y~sCR-XGcߵq=Lm-]ʲk`}b mC"6w'";v Pʟ|>eHIN\kQ\Ng> mYhQ;LQalf=9oso`،")=<Kw8sWSnmb*~5RyZcƅSdǒl?(m]2@mk M\fԁSJY tCE BO֕p,S.G\[= h4# CFCn}$@`)RmXZLys#0{Hh4MV;[$ }S鍩Fd$d;}셋 ^|GJnIڏܕ"h9}sW׆7z2=\7m|+U} k-Oԁ+{$r|N=ؗ8׾P\;wSMgV;L` Z-K+6^CO h}3]fSav*kpv^BDX}9xN^_~ YW,d f;P!=P?T|16Roy7ׯCjݒ_WxƷ|a#Ų0@Eͥ+H g)+|42zx}Oz qMth "v%4"QK JRe7.xHڈ{Gğ*l@^x"떨#|jpV|>8]:=uLj_㾨8ƺ6g?`l4zӯ pX 7fgc7v3q)A2h#S_eZ) ?iߤ962yRV ҵH=37I2AV 7u@iq1W!aXJl9 7F{cgQ4T08S%~ 5&H:CӶO"_RnEy/^}^f4"%(7u( >ⱆB N:N#"z~n4|av6zhVݥ2 _&ʆ?N@b$Q&19F?ctLBʾ sASK 0 g jlzbNdݧ{Lլ܋8%"%(5bYf`qI[ tWZI4p=<TYRXiP>iW:H4l+[O;yPivՏ%~+%rm.F) LWum(P ;S)YZ PATS*]{83;ɴ7ǵ \`82FљŬe$="/ѕ 8ga),[+IpÅyyOsy!Y"cyOb pE=9k){q.'5/C[ڰ 'VyWF/a><'/g}%555 jtq;x?uA?)K3U?*jg UƧ/~v @篨d MI]H:.Վ .nk{'x:Gg!GH7pSmxv.DF`uݢߍL>WYyӹ8)ܟe3*^prz l9K="Z(㙁ifj"g0|hS-AYP*46*Yll(N͒$'lsMF^ ?Qd};Q2g,'tZ$r @yoSI:f`/~fFŻcG֐л718G ;HPBoI0#(0rW1h&h>j:%K`mccCbP?ڼ [6bCA¥mGi"%|d70'u;ʖN8Ƅ22`TEu;sGkF]=PLJX #R_Oa5 ~q2ZIjO L0wČ TUVS~o.YYo e&67*,"8(oZspm*x xHTg)Cdh糢4. @o \M>k%!e} bz~kcdب.8z#Gj㭴rFnR9Xsy& #PLĥ0˻FK Ҹraȷs*cIazu|[ C*'j/L4ґ@C"zf {nB` RL~;G(5<+8Q8# GS3|)i8øl*C|"߮ ߰#_2F¥|[B=(U KY`^Ѝޚ0ؗeRJ~HTd =1dLp4e`-T 0nJb&CH9H]JLtMs`,$p$`neR,`;^wUջ;-Ɋ ϯN)A sʢ#v%h\S)4 .Gy8 ~ jMązu{'!t-YbI!'8AOCR~ޚь}GeY("nrCVВϹpt(3шztk3nJf jpS.#kE~[8s>Jf|?#nl!M a{~vNLrWsN ah\V'XŻq-U,^87$ozۨ%FPLXh{y{B#+A6|`WA&G-3.Vsk6R\~s4[ۆq9A@Sd"1y|rWŎggꋤtDmЈ^W;,C k к$t=L9o{~r5+~~vSO.8oI?m&LU"vH%{ݠ a$*doC8ץwRZzo ?Q'\o%2-#hQuw~r|K;#(ĩ##BrE_X5{`4k(iv0J=yZvcwD6zZW21]-Xr3;RdՓmpe tNq`zDY'F0m >\ƆR\:T5E>D唫gb'6m2Y)*JXؗk@(d.{@e| 4ƧN" Tv,:<*e7r7  ofUTc Q9"b>926FD "_L^ZHvQy 6†慡S9zɓ r|[F`2eP,H.8)~%^@/멮ߟ,ڄv ZPEʘ.*h _ssE"e0d|3zmȑMcY঱e-%CѸ5c:/H,(<>T(Ã0-x2ăJün4oAԳ8N䏾He:9b{ENBڜGEol`lᚡ 4TOl_IynmmSNG*QKv¿cڐ~fB-I$Stf,t6o.[ᔶ ލ,}\FN0va$) %ǯtQ4;{4-hZmS:9\%:*aZA:Q"[3|ΕX|Lq7qjƽ1.hNk߾*T<䦅fWGY2kԣŽe˥V&}s %HA {4 d&B7\ʰَp8 ^F"0QP1DM(!WdS0!r T* 2l%u3e.&;6d?=@\ݿ|8k {FMZ%*OqU䠋i )n tm@1AHT8G?%xNzh[uU;j:#'rRtvұ-$٩{ ;gCr둲E z4L="BowFҘ7|B4'(ӟ)p h23=|'67FSTE{ѱa:ʨ3DP3.89`CaQ)+rVA.֊{UC3qb/~ㅾ^Vku^I' }VH FC-Dt"j2t(!Eoj} ZtOT{AOjAH^,4aDfh(W#mS˙8dR YX–^l{3Dgz"6lyamAt""> ohE(ۍ}S[,@b`GW>yx8q<5EQ-FЎz`n5vQwL QOYJ?Yi^Nɀ)Db`9]ۇ7 ېzH!#|W5$Ρ\ l1HG"hZHnAȞh@9*J>LK'uW!Ow>ΤZR3?5 BA ,-+4Qy;kͳ/P |9‡9D,vf璐)Mu2S>c%\QQe^GNS=GJ^>-Հ5B+ +VTV&GL6BuzJre1J7|>$9 IFCe5<<_p@|e(酚!E9#5`7u*n>ZliSz@M 2_zpũܿymN!# S/ 7+$U\zR?ķ8f̽ܡ4)Aɦ @NޥYSχh^:։Z@PH";`;w1ՂrSWɄِNtGo`xZI߽[{c/LT-~h&a/ kב]UYX#( El ~(Ǜ1f];.yRKbN=4픘yGj/_ɀۡ7뛜b-#hj[\VVu!NQV㕌=;UU|a'l(wYV&խ!qpRX4̬D'W ΚH+j׹1GȶԄ8ߍxĖFEmRpD\:om"/(3Z_}F0x3ᅶj(ol%Y$*AD"QH*4R^̪)52ѨS@ЌO!kѮF ca'1ē-Sot[tǩY?\k XqjH QA2d5:s2qk22ڃ Jx`ǹTdYNAG:'yb׵Y9_#0N1=?քqGGAls/_? _jOԶE#h gƿ*%]H'|ˆU+:Nݖ̻VG5eώC;Y*#T^oz`m`sMֺ5/6R|X0NbmR(Uu:#ܮFdpinl$6Αe0} 5\ӚNPv7̕  :x0e(z2%Pir-R~q.@w||*6*7jAV <}^by8gק:΋sw2MPuN 7Հlm)K϶ɺ||"ci=H~% 7O]:0 'o"|" E!xea~ LqW~u6\s^ UAد`Mϱ؏[Q%4*Hmѥ3H*n1ƍQHh^nlѼxΪMKX|l<^`tYj6R/y);Pa3:6s5f82=m{9dQ,@|$ ӽH9dļ.jRv6;&h*Z,r~{L[3 `[7Ra& qį*Vgw1=2bJ}|ʫ'yFUݰ,k8:j!\q؞LDԜPL12|fzP[M|Ű]'?WxHHT#+Sy]5d眉& 0,l]{؜\3@SBEէ!Enw n yGV. 63- ?;C`kB1eǢlИ!GQ&)pYM}z{г1Xt&yUUvF p8t {t⒎:*힆:vu+{ fA(<_M \+V 썘+h{9Hpijp+Zo6m3EQR9)LKH\2VGijlB6KZ[ݍC0m: *YBoV: BW0i/ӭi0LLyyFF%zNbk*`*? B[a]Z,,t Y+Nac-|xC1 a>4jԌ2o\^7X |㻪zG&WCtqɘWpsL+b~zTOٓ߶cO$NB gwͫ)E$[ R>`BiD6M.kk6C9]95-ۥn/|iޜhھ͇\/ik`S6ccB_i?_ Z%[@^ʅaOgUt{p<'ڦ[Ll7ȃ/З7NK!iU6 [D>)ljfݙL g:he3VJXEK]0!K7E *|>xW|f\V0ujz'Tn KφxQ1_7jҖLgԲ@^=k<yY2 4mcSX(Rx4 D (3XDI nvܾqJ\~B# @D,LCx`$C%3ZK^DﬤV^rz+%JG=AM=`M-^@&XIj\0`>?(7E)"߰P Qf(E*ʀwLy4N96 :P-n7ʔdHtB5GH\#W&Xa|Y O QPe , m.| T ULqp1S #RNv.&$Eh9 MZPf.@7^1ewca OvP&hn 噲U{5mR Sq|}r HaN' D]:G7xX,/JݐD]ad$봫kY wYb<3ޝ0(~CVӊ;eİS]2`pKPPeq *.sr֣FAJ4 [Fh.f,*'c OC7fX8y#b NIkK|) MCI!aDek}cNFv$#tkaʣRU*{HaAk{C_/3xY2ah`{嶵 (,]z>cv̺l *9T*zMbz//ԃpo2# ı RKg l0231ş$8ɵPmρoZIqTțsp6kJб5h-`p^\y  Icj.)2;  oK#o ] *+9Oʦ]jс.IۇǰAp%sqNˑꏦN~^5@2|& *n@C&됴BR](,dOiVghX|B?7e"sͣU|-U g CF3eE9,s[t6~ N w"]huK#j0q 3M}6qT:U[g=CwfZc 3=`;/4G:bkG7Ӟ{Pmnjy{LI$%Fn#g Os#7j ?F"t%ZCqo ۶'Mn\]@yZk1UבOj]m0x8-53K^|`Ӈf$c-%;M3YUsis'E`x9JG0gpð\S$H6?;8즖{Z\ұFrgœ6i=8!(jJ[@| B!HhD(5A5P4B9R&YDc|NZ~ˤLw 6& ]ݤ'FdVLs[ Ciخ)DlKOF_Gic}DH[L#a99fv[@U ) { KjZvl83]M怜'10'+ÿp v?U%Bi%͑# _@qRFcϾV覶cuYciw)oUL6Z֥UF=M0Bk: ?_D Qe48>*@^"@e0 HΑ|~hU㙕J **±Z'Fz0=<$vnu~6v d߮+i=㡮 *D9"ǧl-&E*WƹlM)(y)q9Rј'.Rw=-RE.kA"&]|i`gciO ? VjFmxnt5r[֠"ktRNLFRbH%IU_w"^VJ.Նg1,Wz=b:Z0(lGWUo*l|1 ,&:~fv+!*#d0ȶx6RZ SplqEt^Xڦ|;X4e$x$K0jTc, /ΛLy1&FJ0LnߺEѸLؙ5JXwtD"sCRt뛵@ g0Q-2cZ7:ksyaJ ըh!x ?$B"Kô Ëڥ1_˯Po6zi4(J;>;}\'=N*iR[8-s n5nhU; ,\#7.nl=mK1lߎǃHݷ Uχ$_Q\&Sb8)e?bޥYij_&s^}uH;}Y@B6K69'$vOGn©-X4Uo~~x9 u*-T! JI*ds}hn```k<T"sU<ۏQ*b>ڒÞ LGpSB_(@p}cyJuFz(Aqztt5tV?= Њ m ]=;5E]Ϟ8x>uV@ b%* 1Dٽ׏tM jǖvlookΛ'ߌOǖ|Ϲf$_hB=C2C@v2CeV >|GNs*9{J""Ѥ1Gqlt%aAb::_if(7•@oySXNSGI[A 1k{|q!8fJpHwb' a>ғZ>])f)WT:,]-mduQ4ص\,(Ui VR{m;w|B UVF:}Q ـz=@~ klۑzbE;+(Pnzgba1N5axم3Ci-XXWа:qEHIO}5ypG8kVpk,!SlRnd GcaHstӿ%VŰ(9}a\E0c<ڐ<^Sw?}lx1H[kG2ByXMnp1 a~m%CҶ臣͒"$K*[K꥘*%oҜM"y=(}pt@=pP8yWUDMYUER:12xd lP9-HѨ͔S%iP4h?y%YCdCǵ>ΑT"\~8rM29l)A(͞F_X/dھAp \ Jt? y ;XL Z%CuiW2?a%*bSU}<#C!nziUJa!՜ Fiő1bzt=`"kJw;eއO')䟬T`V:)]PHsOW}ν̲H_~a*%  ]WGQFE,?_dOxN[FbTҵ[S>/zWmog8{{zs]v,>=R*+{El(> 7qt=e;V2G%Fd,\7. 7Wd,( Ob ‹8-DSw7 -$>08A^ֳrSҁ:v9Xd6Fc:J:vzCZ<] ,=/#z1SCssѕ64n?erO7]D&'~3VtAhkF2JqȐ3V"LtWyw<#p_n9j &gYJDfh˖S#C jmޏR{eo B-(|bf i$tˀqܽ¦TQTD=m 1c>[6Nܱsڷs@&Տ#r`H'lB#̰\0<ٌfp\%Vo !!W_*cbF_#Uue~) кYe|q<eKEᶒ'dXu{`2({ L$*3lg_xm00תo84Kw6C_VH]wl}W@fK{zψ&ui-/FVUCh8#4ee1I ~WB1e>y蘀UX,&ܗH jD'=p{D0JBMpueEeJ9.U7fmp-z;x[)SHNYTQ*ŋ] .N< %m`qWobie~j mrVgY+db2Sـ#Bɒ ^5#0 WK&@CaʼbF{ZZ JZm>Ik519>k-0 g}o2RoQT"^#_] 遏|]2֏+ۼ ]M\q}ѽs@! N&x'G͔LCytlq^$a./\~B?tfMjL XGI%knivϮ 1[ÆUtl7 R)1hrJavwY`f1@Un^$-5GYdZUۘɷ %e+tYUupRk%w fR fRi'P' ZEq1Mgbhn_"MBzgىMm)G$zw¼}lnugjԌcvՎ鄪V97QKLPHpM2VzQO|+eg܁4s~Ar|GpLOd”d! . B!P3|\ .#{G$\Y/֜t/ RhiGFpM9 I 2H'YX*٪!^-}#Z'<́=uX-s4CsSD&J^Bh%ٝ E~"n {V6  pW#q=nٍnh,GՑ.|C;ӷTīDj'T㷤1 ly5JD/eL]|d\R@у~Ow}shL˰TY: .he{g❓ SZL~f1-7$WBAOn-{Vn˯(|'uI9FH>>tsJ8k+r3?tTn=C\|a۰זJ [S¯ :LHq:\rX[C} <', ÷Z;WU:t;`n2ɝӉ,_`bžrs+kJ v*qY5 >[(yE =iP7Gp~B*'Y~щGbfͷ(}ĜW=6bV4NOp@e%P3ubl13_V[S':1c` LxӔ*7w jG҆?`K5S[W]/8 ?hh7ujۏMSV3C ,{GԵM[r;,Ln7Ejc !OOv?TA8 RB5ud(z v _OoIϣTݺDOdNo5l1OJ:0c>nEr/0bC9yAavO,PAf 6Qe|lLUЭՖJ%Л)"=%8Bkp;u"Ms[`{MOT%t~Vu//'/eqk  W XuRֿw"a*X] g8W((57I(+yB4|ޭ*tkSSB =WD˛f]i>'5<&ZQ).e5O2l*l {?ZTb4RBBf: p!?txZ*`T3#͇L. y"Q.֬]+#"c˂eb)Ihed3$ٛ J?`AԺ*.KXjʜ2W G +9qb"77<]6ƕfwp}wcBv3*CB#K$ElջgpƨWnY6_vCYn§z:lȢWKz6i ufu#XB.e9S2(P>fdIg8#Yh$]ЪOU(Hx(FqWE=n?&3F&^WZޗ(:;{ <:bq@ uxv]iPP)DH{< /{/mIE)3ܢK#}זxM dvS2UqAl|zf[B>{Mm|^8' mXTib(3 tkzc$Uqx[HS ?`AZ-ro\ob?\qW-~ 3aյ':_S`ۏ8݃!ė vՊ!IOuGd Ra 2Vd+Et[aZJEU y)N m^]%l@#ƿyA:R_1pZۂo"G+ -p4[3ToTwQj='WS- +}(<r]ݍv,f@ -J!(t/ʓC](m&p3?r[(aI ߱?kGI/MBpٹbt`~6`k^i1.'rcTEa%]GHrk0=5{ 8tCQ*1ȍqzΊM F'2%+4P6@I.i/ |ߊ4#_]'r+Pp3:^JBmvww,x#ӎuPq4Q*~QʘBh&h6DKFpmMNN,M =H8ZuXΏ̧CE )Yǥ KYIz l$Z%^h V8K\}>Bf34)Tf͕j` .c5c v,}ve2f/d&ǷmgWHoPWX-m҄QĖO__W|_U! 9htZe29*3c^p1a y`R^wV,5ˍUb^|dQ"D O^gNJ*T*!Pz.f? 6;wsRFP93r !9->WMȑL}o8xy#Yil$H  1== dZ%֗aB wBf9E_QZ=}L<QJʦR;iԛwA9-Kz m)?#cO%E%:&ٝ @$׌bӬf# 5~M<(MTzQkͣ$r~ф0m%/Ji^{{&ÌAQEq#ƜHG%^M0m?2 y#^IL( U 3iX8,T~73O뱱yT)!A.J1+\Q._s,c2ŪTŞkAu{Lu``;"=9EsIoh$H_ q 6 }*F? _,ir V;RqG;#m6vAVsM:6]mA Da )0631\o:=ܵS͡`DBF+)cVH͕}5 A9!Neh-9|oqNnf/QW}hXrJv%  z' WOˎ ?5[#n _H$yN+*d秳`Kj#j[! }BXN-LQmANMksHǑc'!ޚa9 Wn+%h. ;I92f ICg ,.Ϊ'5n}m"Kϰrb u^6s;:us+4oJ8SJ{H|DR^F谐w1fm֦h=_&}scYmh;Sܤ&ޣP}9+ %,SI9.Dt>`畽hi*{imuynѣp[e,0btl=vL%9{QQ} i*o;d Z|?nsr#=f揬DKyL+ՄW[$R\x}1XsGOHGM1FC#nf5v{^7f'#=޳u!KV D6Q˾>NLDƛq N\ު z G&oRHhm[ ^1x!^K1홓u-q1L>@H:% ZքWՊDEerd]!s0ć X"å$x%o2sN%}6Og{o# 1[g&"F3)DU|+FlWy?6CTشT4DջWR(2#ʹ$" hSBQ;\? x3SgX#RhAL|ՠ)}n|]fC0XMA C@$:gMs\zM{5nd)yk@y06b>k%IRƽ©#qFwwdZgF=[ 唀&acvNh JW:,^9Va45K$@no̅So*(bvK(^e *S zXm]^[h IIM*r7w@6rta:@Uyɮ y$ "j0nPN{ߙp 7vN~@IA/D.t&=\T^nV9tȏyS/&#-/|䄃7!T;$^L&O p6|=`ϼ9L%֝^53(IaF?O } y#j127ֻ Og\yΡyGnPx26T8Ju _>PrcNx̾CMTV،ymT1b+7;z$ |v W?~2S~qxw[+`atpΟ$wrx @qU;$4 C{EZc.Nx˾v(Ey?K蓲d%K Y*&S]jȖ| E Wjn#̉r?Dg3:>xP@EK-yקրo1 5C)ĶCGohtvEGB8@x_c)LkI 1ejN5QgArTr7aSz=\^)~?/so%@U `he.Mb)B9ˌltU% \G#F g%ر;*M+-7^߈J/|xRgc>A<_7"O*ވjFqE!8RfS;LhghX3Ns ~KkddCtO= z_ 6$ غoPZ XBSd~1MϽxT0-IBwRĄx-YR_sc'-Bm<;U7WXK#8ۈ1LJ38ЙF"@ Bˎ]wd¦TWHw@Qg SwA Y0 Sk;yp(en$mBP1D g N}Ǵ%۪\søZ=AJ[%wi2[ĸ_|3:F›p@&gݢ/O4qƜX;FܖPkUq[XB|LP@$ \PstJ]}9)p0@H0IES1Y>暑I(4)(Y{@]t%O|hXSjh{5k%PZoܠ!3z RG=i g1 {?w_]F8DIi׏ .HR}T*^c 1\MM?&l$޹muCzceNaO^5Lfe(Mnr |j/2ғՇn@ >=Y 1kQ7JlXX_ةK"![S4i}5&5|RQJYpaqv":Ou5S Yibc۰!.* Bz~2gns :bEIEXzY^!>/ݥ_h^1aej=`A7K+5&!IP[@͐h]t%I oHa\mgTx(]; #h_1_M"³KyeV@KBrPA25Gى  N#w-ߌEJtc ӀĬyr߂죿6 38}Kd$~Wq&Gj5T fm*B*f 4<'b/#f-+ۚH*_/b*RQ?r1H`X\[z/.# Roꨒ bP]ѻ_>ӭ7s#tΕq> ce!JjƅL{WұJI6Lg]fpjqz5jr ]5Khq5bLOh٨]]ry?XUԷ*A FK uƎ6EN~=1 ֺGPp?h.%lTᅹȚ/ _cMC$g x_ح!WL3Q(P_YEoQ'4ZQ[?բb7ȆF 5)lU7̇ӚΐY.[wS+BdT\qdW2aT^$Ol'z?y;m#Pm|Pg=5> dCa l8.}$u?(G&r&Ҍhgs<ZhY!K w8vgS>2OY``F*g 2ښR^["]A+o9 P#%S8)BaFQ^-]~Jؐ ll\g:~Q蟼^##J0~ecB;S'p)AooFݽ.jDvHiOg{5si+ܠ ڛzW;r$ZKVNмW=mS "4{X9Z%1mj flƅlCl?%?g>⃵ FUQ;1x.EG'C#n.l%ƙ7n^xTxCE-{*j /g5-b$ØȖCtzNaK bmƴ"Ceӕ_]7E&:;h[m: NJR{: lInCtSh%ShM yϧ͇u2+ps$ų>?4b_[vVYBw7L,6T vh&=vg̝622xu_',@YmֆKLj' wbyS9>r$8'O . K-" t`K 錋3/53yNdA=qyr]:Q}MnV j+'%$Dxg D.Sǯm`*ܐ;Ix2py;aޣ9Ð;޲2 ?H`ϴ0"f&pӐY2XKSdRU7V["=8nytt L%53o<(ו,K )C2e?FI)St<.3^mĶMxq[fQ>}<,?WNusy|w&zp Sq¸ip4>H oK yuqbLK?o*bʩY68OE1FkX5GL^<`YSe?K.7=HXӖqIYxgoFQGL!~^ጯ&3ܽ9'0kOidu;@B!uw0L?!%\z6IA,;"4=ZۇKMQX<*w]t‘]˟@0A~]Xb 5/13&ga*㸋Ҙm9eQX$AU#iw}:ۢYE9 ƬM~rLj"7GA'b[ A@, Ρ$uT `|BO#kvf5ѭڑA-i WŐz)wN3}x4&&\FL1U3W7{8:P[4[JNٱ6@K[j9[T[#▻ Z)v?!m.bqZJchh oQk?. pu#MjPROI?2Ms=E >CR ITȡR]UDOPh8Vx#1.PMD) 3~pi~Z#BMIsxLğmKd׃ޚt:$Lp RIp[3ƨĶk{+ti1C 2JP84z̀E7ӣћ8:$MPQD4󞄼)/a/Z)oug]D%RIR SRKl$7뱻::YW!I7kZƿ 9c점`t{)L 6)OY(G"7L#px\nmɠWvy0-JoZ(M “xmu:d 7lm؁noc8uo{£W #F v7iM#"^y 'nE͓Zn4m(zaȄ -J~|ʔ˶"^aMQž`tt{PlRj<}xҫD7cÞVv-j)SrQE'~hOB^#6R}Na :=wV~R(>W3 bHѾpX2;j.<݇:>/K~!^j_Pڜ@1y8izZf ^Ŝ#:7jb>1mR|8wri61JoI5#ѼdA?UXxTmU!Շ,2l`}M35G<gVrUm\^(>u?y ޗ3YB`?E*)fPXD}2%lZ-ds-[Ȉ-] B<"SMŅdN!t_T|Iab Do93QQz8ɒNi1\;?!ٔU`jM\|oM MD-aM wJgTNf?Y^(ZB]t̎}Aqep))X[e^R䌥}]* οU )?*pԯ kgtDhPy;lm 2>@gI)Qhb(s IUT2N7N')x#' `8c<*<.'.j/PI`_8iB$gaN⠯}#ndx##Tl6IX'(ss3#xi<QMz^TDf_vzNT̀X'~4?{ca,it}XqFldERe.=J5(BdT9ϕl_!сO)66Q-1:&2mM)Y'6(y9hưlnaG\uU+*og`Ac0HLB+oR̕O~?ZMrVo]Q<41i#l_7+rʷoFhT᮷D KnTU"7H `}u9_|Z="zekxfٽ I!@=^,(?>ḟ~G65h;__hΐeX-r ɗIf]ezoJ`D(*',PP }n_uR '&ipIԶpQB|JSc5̉ fqSJ:k9s|B%ۇOxͨ6]湎AKn7a8$+|e$􆷃?@8SW|'$qGs2T#1-*FB6iСn?e>UbOTE>X/ΖlZaG御PnomFmy.X3;]Q)1N1 5Zzu0s}7H$7^6LKe'/Q*vҺiofonCpڵ8ֵm"00/rޑFur8m$TvL#\H5&× Obr̥^7npf T):>Hz(&*-td13AvvOp 6xx EOhZBmDoMcݼضg]"$>g#; C^&u=1m ŐpT+P>Cf.tLc!>j28y%GJ){d0 6zpłRבޒc6$ n~T)[|i9}+n^ʖB~g M^7l&[ĥߠ7tW-8`#py9s\JIZG_jĥK>{3mߜdH滦w1deLTܒW߼6 2ܑ&wqmo5.y䛂H: x[!E|Ac=$];'*j#G1ݑMW>W4`EMG!]LW!p,cEGvބFڑe׾Qm4w76Z/x@9hAVd=؈8H>?O}} ɖ.ʲc+p4?H ot4k7`5LdiX2XL.~?H56(`+<5ifbP 3=NI-ȢNϤ΅oqYp5K8RF!j' #B. \N ժ2pC:(lhS XYUmVvߦzī2[to\A^+q`~;J8 jDq 7"h ?e,ȕKx"dk,tMܥ&YǘtB5z5L1}ZH ]6x=s~d'6"[I9UoRQk1!8/@z&zKtDc\\Z5gbU0`~R,><$ܼh+q/w4'wBHj:l=kɁ/OC 1 Q`Ù[9 5W qx{ÍVͷѯkOSI%&̈xnjg]I4F`?At󃰸&5# U_I;1N qJI +m[ ~$Av ]O_aLoK𬰵GG@J> 2 rqC9wQTunWe O[CTC'{W0\+kTHv'z`cކicȥK/hޢ 8[\::i+BNu=QTFm1@F;t?mϦa0HLJ мpAb_(g= ׆# h2a2"zy7w. N[qq8,#էZ6c a R]烴Bs}&+LNE97>PmoM]T`W%%FMo0x :o'~g}vsz39D}/mvWUNvmN`u[m Vm!VZ3u8 d D>$J+Y f Ύd4=pǦv-;e|~_fImQ݊p[L*p2#:&-=>Tw3sX=sX/Dq@9j*ZPPM=[eI0db@i/>`SKoxh$F3"[yVD(W>I GOL2sD =itB̬ ԵѕܜkNƖG-^~][#F+b?^HiSx#k񮤬#K}-^6oH7LGZU4QcY@uiUIVJu}a\̱u~)#u%B6Ug0%oIsDK\=ߴe!z VST5 {Y~AVQ@o]&c'.}M%˼[jSc0H$]xpr^ݟAz[5ҞI\T\+o;((k爥1] 6P9֛uT 1;d}>uʍ@ )kI!|"kkh$\. 08J{OMKٹ`wcױEs ?@!A[lx-a Q 7϶їETX3wuB f hjVa=9nnjAFesnPCGļԈ,0nɄWm§yx1,uapzr.): P:#RfUG6)!'f02 Ja ̽N5]?ò3a5:1"6M%mID5I3{r*:y6]7|;K1+/SXI>C51_$(]DJ@B \ XWbz@iZx3Qϊ.ȸj.k^5R`Ǘ0X(jFA~qؑ\Ev?UzpzŘ4mIp:gAeOǝS] @E74;ͩ+RuA=N ʫdٹy#o^ m)K{鹐) P]EG=2:.Wf\URhAGHUԌRm^qKQb~@Avé4R0`ăϙMH[L~X f4ZG `%:|ݠvV]^ ;\v,`d'5U,j?IHp`н@9f5?;?E[ RbԠJԇzWO xu.>[?n9ԫCC !<" ]Ҏ*smwnj$2Q}Mz { b,Fδ*jwfXWP۶q+Ocx:u# Փ!ٽ_f";ƅ^Hh04|tc125{ #X~WcWP!׃mS-14 Ȟ͇~˝!JYSS95,qPv! Ez ؾÇY*G 7{nRNT_&$aka)I3]1UZ!9\R\{s˅og! Wڌu* ]Ӏ_%XDŽ!H%$b7(r{7[`DECf}w ݆C#)lPf';j"lu8߇aKnu'4(~[*06|ʻmEIEYC0wK?[)P$%1e焥oS[f#S(~6)'˙uh,?"$]hjQ'+YX1wچWc=PĒH|0>]*%€ wzxFLB؉P&_φ?7VXp.Vz'b  Z|.SGvւԞۙ,#Q?Yq6 W=~{8.V%mblj 掄˖wWW0[I7X !M 2EHḦ.}F6:{B:.}*rӱO4~gMpc?-ub&elLsfۄO&@ȟJJzƠGl ]*J&h&-Q-s؎M>v_W8|ȝC h|s+QpqJ$PxIxB: 8(Y\N:@18+uH! bz<`2s'U  "=;y&@Ë 5=/%ܘhEyOdD۹Vƙ PFh_('_g^fjW(o n& \Ŀ o| s@`N)HI~\9eɠ8_ Wfllg?PN6(Y+y69*~Ycqۚam%$=EF;0 +RwxTzvj-ߗ{3/LABI:aNm6?1` Uϯ(3N-xr<[2Mj(/Caԡ_pn;G kP{ZJW d,4h +MFwCc' Sh>4>`sUUw銌:Vs5nBlyRX,B?hE^1B# UD¹`+^ఄoU'(+Y.Jk+!>{~vl@#.^;zf"E۲)֕jNWk~'T{ TШzS\mbcRFDiA?IC4-W"xU`Ȋ}njDAo45 V]N;꿹yuy]@5qcaI^|8A]%qH\)l)a-S\{kmkZh;!{?,dgU(2 Wf@UԔQ3REO4ZWNJÌ[NpȠR3ן:-8ne l41ѹqg.W{ h S}{k"vk` w[xy.sp@im kEJ(|;8**-^5J@z;eͣkc#8_04/G>g#ʫB1yOYX Hn[\gۯbl+wC^?oƐR|գIZ#w+71})7xLM-myk'}0ÚPE$/c#$IЏ~.y GKT2!j> +3B^e'RC(Rj[%o^anD1 t]7Iqe"2s tHו XVi:N]@_7SOܿچoѱjѪ&Kh~G8vM Uȁ(Xߝp %QMX$ܮR*xl =rV`+a<ؽ!}HG|dverzH+"L_ӽWa]#ZiU &Yha;:ig](Q\"xN svIXmVY龙6N5 M2m7lXX-ΧAL)!:|=K~:c +8'v: R0:*q/CySMys%%K%tz=džtL${'ߡՎ$%[TD8@h=.4zG9JOK+ztr4宸wg+?5!"V6t@._f*uojFΨ H·Trx!G@/zpڿR{eQβ,W\'!sM;ר~|R/8ƣuH{ -PR'ǧGLs/DO$L:P!]TE0 Kf\uѮYޢ^ z+܏Eʦw_^,"q<.lF֢` )X]0"rL]Ԑ!At< F#&:ԯYQ)#zRFf4 {J*O-(-0lbhǐ⊇t$Ԧ;#W.FԨ2fO-Z?s у૧#p>A4 56*Ӳapê wv i~AxjVWsig`9NF*- J%i^V_٪nSsL&c7놻H20>[!o qLpP*zSb|٢0)KCbs-c8w&R^WQtx!&Қ3;@W+5{8nxlh,eOaj5_TDRe.UA (R*^M!4m5AW"TL$Y`YaO/253SkJ$OB^Eހ2Y Y`'>bRвb58k@r!$ ,V>U~ w ;Wc[Gs0j`I=7Ryr"RhruS|i,M( *6Np$a] YP(3M (gv8!~],X9ǸFuQ/  MXa^`3#NIVDtKoPa2¦n$Yw/ƨsڷh :Tǩ2YI x%hT!?u;ח*Vbgӕ`K6K j6 9(^fWw4T7HҴWHIK6[c~s \?P_ 6LL11S9V myRU^PtTkǒQ|aB=S`FL)_{iF&Ox3^.@hX_m\>6΄AQeg*tyN7>Z{ rc?DtTX?[种Ð;2=OVyQI0MUS^׵h0X Hu4;%"ʊ/q v!}<]}_M1^͉{avn_hy8.YpL2b%"~YM}8\ BɑqsAx+ɗ4$w[>[ {g1Ǫԏmuӯ@Qz8 Ԛx%G''i^o 3`hw}\ ׅvV}5v X_3J7^jcN8csmP@1x_=c&*O8uNPԌ12c 4DDߓ(F-4jPPtг{qC+&t@k9l[~ [oG* בvp #;1]坁A,#R^۳mdad; 0v«Ew(s ~Eh ߜЯؼ6Sq> mP xԯ\uCF ͂i RY4GD>.0y~̆G3lEԊpA[$]8tw7ӇDnkBW1@}^—p#Z*_nr6mz,0pM 6ińl{y}&&M$;!F8 Gw`*sx`ѮB% gPDdL+im6Άjݳ{ (M6#n0bb쮩Y|،xA(\[H𮏁 y#3q]_&*WXlwHP5N1 FQ_ (9ѓ1Wu(_= dBJTÑ6RFv3${f&\ }27yDmRxH( X뮪Ux\9&dݵB TOMwC;i*]߭k1%DX\C@"-9Q5=;δ;,ݘO}Xj/ 6u}V},]E,Z/?Fy('y;xo8)QI)fݷGxZHZ Om¥!q>!hdy1? THX.L|(AAd7udL4@ y+Qh+pN NT 3.) BbQ\Ld7o>^2`:/4he@?gg,p+wz9AЫy=p9Y:ϐwwKͻgr v@M֜]:oּh05.$)L^ }IzȽ'ߍxcX5Mi; ˣES#O~&aM#1 p_%q(WaU f3nShg[,Au3Jq*a=%/!'| SEUŹܬ^, s|he@";'ϤTu.]~xA|z޸,ELP3(o-D'b(oH|`Ϣy=n.O~&oh&RӯK/mG)F\X8X&kszko9+LIB篫Ee 5ho4Dgtm^I:> HJ* ddɗ9$"kz$GrkG5;Tl b&llP M{9GQHA*]?jsSc>Q3dbr`7ܣ N͓g@BK1:Y'i A(NxyڵoDdsN&G19V:imTd?LE[%OyjbCl'3cP'W k)#h-g>I%ק=7@x8`zgVFsbSʦ?WIf ѴjMΝrs P sJ;EzKy a&,uWg/^#wx9kHS̓+d.V҅7P؎[0'$\6]ˮP%)ĥ}澖qflXm8^4@P@Ǖfq3 "6ucn W) k, *tBnd2J)EFA؇v;vrz&09hzW{ }@v~?_-+L1Ba~cTF'x#v;ɯ;&Mhb JM0Zp[#B(H̭l*2z}Q!IV^읿5N3`qW7~&2tJ V;yB&貧 kl37%( ,73suDlKTL^B_L w +v5$J-rCQdv 7v9 Zfl^+PѢ*PSn Iә3˷zD`rPB%>_&KoBpȁIY7B|_K7Ŷm+%:ӗ,;${@uE-:+D}UL>nCYҙykf 65AT3R0UsA1$ӓW_Bd.ti?.4Φ%Aۥdj:EC2ʙ S4R*C}=X*WIb3I蕃=ސO2!Opݦ.}JK"b vk|2g̈gI=(cĦ| wx\=,y*N/>[/@<`\գ! *A6oIhv. 7̬٦jDK|AR8CSL`xLPo}cZa-xtXFPXFO LCFU`EG> F!Z-*YH#ijpL/}+b˪gA 8qŮș&fi-p!_R{1ܲU1e Z%4 m6f]ES}jk-8QI ADܢQx!$453ީ ^M÷tգ1Cs ct+LMk zӭ@%`w P WŸ| 5jv g&!33Ao]ѫW>15aEcL `Z7M֥8m'V C۩]ڙzALd^s"<%2Ԟd.I^+e7AVi5#(1>sObm6lG5Q}~&(BQ%u[ 4Sο]k11i"ɔmzhLcJڞ5>}r\udf }=j;29|2ѦBbFhҪ%[Ok59LJ n:OiEy=?+H ;=RBj0A#,zAe"&AF7)~ӊq' /L.R$aHκl}`(9<{ gnR%)9|!IV{iGh9ד*6IUnC(OoS4euAN M'9!*tLU VێdwݕSxSûcʪSOH3זc7Ca7u5yV]jUPZhOmx4 ^*Àj3DE2M"MMBXUx&=]!1 or8U%dq<9q#2fj,L$ 6|q.0DZS,m-b%WO0/'8m]- 0uy[tg?&6 5(hݞc+K>nzÌI*tc>Sc\⵹tZ|7@܉b vI(Žj>SS/(=i$\O $Q4 +HīrԷM]J( ;>^fH(:\Ă"+'@0pջӨ5k:.4'AznFMlS5%> mq7z=kgq-F-EǼo)D0WcH2Q;*O{VX(>̊}[ѧ{o=X#^Jry3h{kW1 _"mcpXeytڒᗆsat,%f3Num?1ǎ@/otI;;_^f`3Bsqk:ȎR"m1dLnt\7VL`Qw"(Ěiwr]S96%#zgPtȑQ^hh׿B5` W< .hoBNɊYQD=f\cyBvoyzVO3'E>{uL]++X=@6ێuu9ev@| 2S@xB]Π;Vd Q,FuߒLCs㳰PM{)#^L>/ɇz(mro,y] %gp_NO' B'G|m(r8ô!Vb,[>;n|b:"^ \:4_jwZ]t̳w-5 e蝈͒, ^<˅wNT Lz|(qҍad Ҋ1VE x ܢm_NR=[ȇGބ1yJan*^s}lK? ?vècb/K#:8/m"TJN-Q.aSuױe ޿Rzy}x[YH973ϩu\8 pbE sEeTS &_*@'E1?)4U+ 0nQ>{@ub [f~J|=N+E$Bz0 ?*܃A]|d e])`߬+H -DI71xhfI,]MyُplqQ] wQ יQ?ypp +Lł "PLwxXro2-*.;rQd8?]yNk}ĄV<_xٴ]KIwZDZs6|M_R"hL=gOcK$VJ/J|e[%uf %g6gvZv3+TAM8!h]2_̘ InP[$\fgCO 8b:JSLۉ#|sgceǢ@_B{cC yɼ[%52ϙ/vy $;8q!P. UZ>1)?|Qy8/Zo >bޭJp7w,u@h, gSD*`(f9?GA#Uf䇕0kpQ=+jA=-u-K( yCch\D#ݝd`#Jڕdੂ9-.ܜx//\'z$O PɌSlWȵsYN͑,5}x8xOmhYjHT2=<=M _@{d7AVcGr~4PZ6DzSH"3rxs6 ,Q+$2 ŨUs܏ -2hQ3[rC #ueXw4M ;int%Sjm-F노iqh=FJct_*yaOD1-򐁳o4۷{+ʥׅ3z N+WQcqZZܗ;@6\ ~ sqMWDGRޛR)0*i8h {ߓb'Jt8}0=~r(|e)u5[r ւU" si18R[ZDO3X(r$vW<7Cղ]YP#~UU` 1Cb[+K:5~HoFtP: LopܰX˕q;!NȷBkӝrqNi$%)(i Hnt^;R?W';*(rubֶ }u6kn!8>&p=ecKDz0!zHɩc~m:^JTCD F^ϖFX0||hfdԐ5HF1p0,p7t_zңo=Wv]m4Դٯ8b Ƙ,aa%M.Džz3zwD>JuyU%9?@D|Ԗԥ%_t/@c4VPr60O״{:̾Ț8 "# 4>ٰyUeo:UWҜK0` Fo~HWeL\p8j7{XI8qT)j2fȓo$x g|||f':9n kE8.B 4:2!`_?<CԳx1SvnF,^[ăoQ(O^=P5=*iwڈ$,9WhT_O67?#!CmjtGOVn< 2FU鶤.$i˟Jj<e2$ TZ=K{1 |FYB?[ 2 i,ȎHV8;dU*E9i~ F, \If$K]ÝTt{ oĕh0&]")|"Pҳcv-V^YO^0R~Hd~F{1!YT^("7A+Fh]YK{ʿ߫f[g6(dL_/ʹipSw'V&6tbb?҅*˷S W@JaO76* wq}^I5A]&4|4|@Wrdkڒ5\ViLwt׿7Bfl%]OMB%ZU70(}FYd'sV$g ܀p'q 1̰Xrץ%eƆӈ;>U K.澇ie=IpV J2sChJ,. vy}Pf L%.b3(%:kpڰ.x;T{+ \3E 4zΪ2⊍>4\P?:}1/ 11bA쥴v>yU,1 U A ƱLOxXM u BpDZ鵋'V*Y}3-igm " o9^ld=wS病d,%P[}nB7i[@Ff>FD!Ipw]OzZP,wZ)ˈ$Ҏ A+ :5! WמV$ 4Ae\hWʴrhL;;"; PiBX>Lhd<1>Ԕ˰V S $6EzzI LJe!)Z؄QTUX`Aa$Xt(eAkњ:_A^~ AO-|Jhq%Ak\Wbd{ d_([βq"ǵEkPݨ],@*Rw3ELywIzLޚqHOJkpF.xYZy=tv4/}c4&ngBWps4L@[uoxH4Ht$=!%S'c.U䌞x+|~:P c#~_f2RȰ@lzxPx^DhI㽵uЖwR42]Tq.pt cZs]U_Nft*O I2/'= GKO2\p?}.)[O|# -GKJu9B}<}W\sNO ?,xEjulzofi8OcweT,䕇Pp? sJV?{{o `+Wi ;IvN!l' *8d}X8 M`*&h:U@(D]H5k[vYxM((i&e=B?OD Vnه^#y;(QofˏvkS1<!2Kb3#h}bHU@]A|Kp ${6yƺ Zyդܧ)x?4/ eikW۲vʙBERy݃l|^Kn$Pl@/1 h |J].Q|_ymMgɬe*'N}|KYb2 _. 4 3nhgWF: ԃle<+YDeJuo%ᥜ Cucl5A``y:aMʏ">)FUerE[kug7f^hGƧ)f|x?;ߋib`X:P,^TD86T!(}rxYN#JrzR<&)߮4"ԚO4j"&̎]8c빁AI_rQU`M}~#?ANtHҋ~`m/l[f]X2[_V)N73gdwYT޳k1neTۿ<tjKqtRC% 5/[̯rzC}ٝme'I,-+ު'!*z\|wH۫NPas': ^ZӪ3!w]RKcWm[~\19t/Ծb\:Ƀ1Og, eGLL&1A٬l_{`ZImbx.;ðcxF :2qIeỈ{kngv*C4&n"K;xVXD>١\9[.8$& Hhc,isU* l=׎g/{Q+tLG !_fqf瘘 9{'QG2C}zo  ܆6LQn'> $magr8+l lU$'.|FNq: m]s27o{,!%: 1l[]|T)GDq]]@Onm;L۸̴E|s@z(+bR(uh?'3LӃr)fi֯Iw4zrO0ABm,;aW~.L, :[A|~D3HeYeܱMjI4ON0!`}aS=aXY;!/'?}nT+Di~-D4b鷦W :zrܕ$0IDwi>q F J,X;yRsC5W/bɚo}^. Lx?B^l7]ltx\ t@  w/TTz[XO8UB,qkVm hfGo<#7zp7sr+O'r_5{73YT5u! >D1 ަc1_kh"$g}vN7ʷaY%b:` T}K)S`)U 끮@!>c`cN2ۢ'++Ֆc ņt^7G6-.\fг.k FSb) ~xS?P.exx*Cd1]$d"KSNE 檿* 05ͯk< ԎNOR' 'GV7WhFaC-Y%䫚v \te릋|wVrUa#eYX.i$ KL.Zz=i"|Ub9Ċ{{N b+Έ+8'9va9J a|2oC}JI Gu#)tzDtԻԩm}Qf _Uރ2lZ4rك, P9JFP ^RY:&ICG%(@ lbsV}Qo/Q>f%h+ H3`JThխ`t؆>o9-9N/8A\WfGeNoZ]jP%6-`E}SG:U9J?j6Äe+sv9 OP஦/K_"Q栠kg$AzUt8e.'JZʐ[Ua㋂5H {nE]* u&7~RUԔ@/a׋]R3JMQ}-eGu}Ɣ~({KR*/P9ce yO9T;!Գ޳aP2P*=*aP ƣ£(OZ9ͧvy Nb| C Re?٘U5{dSjK?Vlmv!bENX4 `ٵu*S%蘑yp΍kuI::n}I!衉YZZ#:"%>fHٱjM)/|_yhȼz(v>ۤ0n0)%Gb躏(z [ιJ,˳},#ɁNƏf'y Ux Ƭ_4@*l)|ݸIo;8(wXQ2ZK\yWC(BEd,6PlM/?E]YU/ư:% H>F(r@(6euNjrOdPV<0%ǑoJX2 KXudEM#0/'ueblaYV5wpe߀Bь<-P6%$w*}cB[wAކ,}%]h^h )d#IaREXM`!ݮ=t'5M}P(VfK^3]"|q:1Cn-f"p澅y87p,pmH.uC:%DDx\ Π9~u!UqAǻw$9鵛cn37z} ÓӡOMûՔsnI?aV;gᑚLfG⼡Ȥ$7[A{I=HDǁɞ#*cv OAo9ܕ'ZT_w&c/%<=jA'}BYg_u}b,V/.iIRepX1φz͊(fJrW(?p܄=Y!A[.e5`nUtM Cpm R Oi=| inB}/d1s ўs~*Ѩ>0)Bf!wu,fE"r.yzCMqPgȗfh-DEAoԜˮҳpTLkK5-ga%K|\nC,m1oz| $;K_Y2:AvS-p{{fk}56up(ܒ\T0UpNic:1R&RږEK$ܲ׿/V"sk nW`1E}iɵؓt 6&Yc#2Rf6o W roBܵ&;th"_{^˺ZƲ zh`{[bDC gUo &Uz Ip4>[¢/$Y" (Yp8݊\9ثԩi45Lh$ L?D..c|+l;]&u&Ng -pmo,-ziC^CM,)φa=Gj7sʬ-iЧ`w$?ZR%-J3v8QMFpGV R`gɃ]vWU@kGXm??'a㺏Z+D̖Mv}׃'?*d$(*VQE0٣^2e=ౌ+J*Q$}m}$ۡEa2Z}(dvnEi5:ܝ$6=ĜljQS 0Fd-ʽR"Ql{u(3W4>~ 8#_/}!|9MW(zq,1 r x$OW B#g½xs&F5_bLo!8*o<)K,Y~XXjKJʗB]C&턮uPaW+ πeLq90"]FV!ґo2#8/K,hV$M^'FeC,d,/IO- ۊ2#RvWXx1R9vY6m tB +f=_V(5S }e(cahjMI47N ?˅h@\MWIEǸ>Q!>s[ WOo8eoUTbDv\q.w  z\]xFr:z}Vg7* oŝpVG-A>É6"Rȧa8`XM*¦9 " Y[iɅilJ9vWZA/V9 /&۾]¨)z ۠<' 2 f@h94B`c}W]Y(;Cqd"$Ò oTA‡)]|m#ڜLJ [;B(y=Ll!k[$boZѥ0ƞMc(ߠng&BS ͱ(z׬3\&;]NF^\ܬ /#ӆJ}^uiԍ弘KdĻgԛtCжT=iWC* Sx0X I[A%̣84:ňfl&5BkA.JFvwXzڤ@^mKp.J&ɧ"ע/L)%,_ĕhT+lo$[Ƈޯۺa4 Sڧ@/>\{HGprs u?`OMJ'EfRW5}㫂g΂DHJK|.8$B`Lh``l:R3Ap,.\x jm7w)1I-|V~0dԵA HL.P"iZ:˸} 7яzD-GS%( g"kx7oۜ]T&YVCZ臆W| s8uA"հ JT8fA+! ѵ@qs||Xz0Ʌ}4×EN.C5SJ)¨5L}-͞J!7~yЪX*}(#)be*"IknN)FU˷; p3ޗТoQA=wji˒T*M ƊVƳQlzxaoĖ >[5bhpHgWbmQ?'.xȐVZ;ς~>KՒa5΂%srW鼛q@y=Ovt]wl=E!+؜f5Ļ%Xgo` G7e6SacLub? 7+6OE23PzX SSR0, h4]SKal9<r?5F s3Du~k̈́绿 acFڎwQE?*f Nt0 k9f@+S[C]3ւJ ;Za>x7ǵp _NSԺ07S-*޴w^ֈgV9KV$aPGң9eTZ(| !Hojm ;>t"`eꐖmLnVDQoA%q_߮2ΒXJ?rv/jB)֏M2oO( `^~M|p2jiAwePiEjC2_eĘP8vl9RϸL{QYd0÷4>(OIEě8E_!χ i )q<+_dRAk3S `UR 7AR8KHgF`JوsWE$4"Lo=,1nPiq-'gծ&R#fؿ ])%g;={r+'-&s/Xly9_M&|19) # Jσ,!Aff z$n9B%jZPb`>??ܼ>:8o fþb^ (vD^'v6mW) K_RFc< g;I/&'7#LY'Wu'?8f%`}Ov8/W*L={00C+R;_XNtNROFfnݝoB>bюs2yg+;4"c; "I%eeR;݅1| !")î!nc׹98vZu u,A&jc'(a;QmT?g%wuqw"[X3逗`8aJ\!O( z >j quj#w$ILU4 ׻7M+'o2Zbp oP!Vν Wh |kg@a,$U< Є#[~k,Rzf@:RSN(tLZk2理m=}UTHɎ{iސJ.j+eG2hvA|Jk(W2!&f{ݒm rUu*rr2ܷ0mxÑF7J1E Fşd>jgՕG{˂q^8b<H@\ך+`( -}|Q]ba#W{{}%vtqʠ,%"Ǿ:=`V?Q3T"*}d4H]ܾćdjE>9YQsR +sD>D+FzQ(\҆ }i kae;T*ʌX᝔|/3Wdi L* 9Yg'D}=>"#x_gpE*X |q/:_G3|lr!q/7:HPD}sm2ųh=# To$rUNٚ_21/Q+9y]dr\Z%T OKxX[c<*섧oGLg)6Rǧ<}H(z`ߥyA6yD b{6YlVF_w63%FH*^@ל-id 8ς`M$b]*fqQ\;̟&vO'uwW 4,y윯wޖWGpG`(7Go`㘛P._} ̋ Qb*<FZ\=kwQFxmnԧ:WN\%Xn~b87kw{BV`;8hyR'@mb{G;z/f /4%$ڱUpN0rKA$Lv. C2w"D4UgY{u˴bnʑs7J{n#.m&_d_|eShM^y8ٺ~:Cfhqg,GOH-[,1C'\v}S<+w]AF=?ɋXіLh[} dAd^.4?dsEĘt~ | :M x줒֔~?x:o|浘ыM}+`JcgI kHTvAJTsUGMj~%qSaRp|S¢7] iJmljrvBKB}dg!UE5o~u$Kd).MՇ'v5X+Y (i#ƭj0jL8>5CzzLדJ}'o3CEyizZ48 ]7)t;D ÇI%+:l94>tfEIpzŇg&1RǛv4_XlmGn0bG1E]GG,i+=P| _hVp爇 7ٳB ;Uby!Cmҫ| ™8mbԢk4E>yii˝&o8T&3s RŴTJ)L3t\J tF_ɲJ9 9(Yx~WBXڴW^ ¬ lS8G#R<&enLs,ЉXrǧ&":2҈&2UYR9ʸ:^uf1`enezë󉐊”Bd#(jLv׵5%v /P'(I %|F0`~sEƁY" Ⱥ?}(JHȄW-Wr]V 'n(83c(8hKhI`<\CmDNQ| /CF1̡tShS#eVd"9pݔg$I944#Z!V}|w rmB{Aa'!˛C=FLF3wgR6W r mY5tywDU.Λ#r.`/r8cTQD1gco"2vG,pȸ[>Rgo³I49Ƶ(5/}qU1YFvX\F1Dˍ3Q~}K.c/c;JBJ2o ؎ 9Oҩ*+>)50WXAܯ_5ҕSdq_scTZQ4z W~'Un sL|f0u~S 'NNnnP\M9dwWglsF ;(\0@"tU< ~‘+/4q;Ma5à*X;IM ,]8xQAz3 WE.]>O).i!R6BfQ1w38.,C~X@H8n5g-(FjC$!V w)FBA)ZD10Y#)pn&_)qt(N%lySM{mГjڠ+iE5DZ1~mr/ꐱi=yFqF#mBgs&ysCoW {,8~5Ba\gՆMC ysѧY # SbnB|[~UDwټGa@;͹gF.ؠ4x矣EUrzg ]Ӱ V|/!* )q[K;j  qkuB~DZHht`Ǘ [=L3Xtj7G!WG]Ag&) ӖX _7sA|ɔQsPگ` }hHo[9~;@^g0W`Yk\*%?z2+234ϖJ[Vd9꠆V;fʜI@qÊ~-J<:el]08dCeS^NZNDv cEz:| pEH4l#P>%e52÷0]rc:I$@)2cIc1ҿ@DhP1K2doC0q{r ab }mTO10ڶxǺNwJׂmN >m2 7 i"٩fj'}rAR _!WĐY/.=A* eO/OEWU/ȥ=o'%Z+1^a-^H)Ğ46EY@;04eIqؖ J50A(QF3K-t=W{:~x:uv-T*NFc',QIh([{-֥ҤbM@n{jixDOSyr:"I:cap><(k&F`!|%lnjgzujcӓx/ BQP7o5WT<#L&H[(׭{ӛUXGDM|p"XVB{<:\PmYv5̠Z.:x)oZp[em צgp1ț|ʝ%"l>zmXH&z:'&E `͕m?/z7uBYo2ʹ&M(o7\8 p,9=;Zhw{iO~_!ppo7 H8/gܴ߾8o]_P%U}1hjPkWgh+ܶwL \" K wϭb]2Pe~4!0%Bb!_틦u(BM7rvj#oxn!UnFQ.FȲXMC4OGt Nf` Y7A H;1.]ZH >d<' NQ`?@ ^.o;yIJ@)9P rg 0WIdÔ 3YGGN,OH)jcUֱE3`&L_'B=ԙLk=Id'<)Ec D݇TILV|E[ceȒh*Pic4=Yd| [ #(}9iZJ<{5u(|(R4R LXE1CȵVv'iygdia ~a߁_5T]Th-[Iu;eGqyĘ+*ߌ*NPpXZ*+AruPg}ˑZAϳ ۿdo;ֳhݞQW*t1tx>D^q<&FNN5~4.hul>`7d{HNl/ _M[$&~/DQ =D HB }Y z8+,.qGkk=X} g˞]N$7x:鷯~RQDZ6{d=:`"&**5.xNTBݐ?>!l-m3!^iv){ZO^?aؗ@rsddiZHst <(~U4&O3}KTcCZuPf(9pAוf7!*ʂYXz)azaϋFy㳪 y"|1#:FS@)>0l}@v .t|@܅} x/K=7Z"y"6Bm41'?DMLM]\4'T:I$n5j@|NMDvk튉+{rs9_kίM؁,>C Wu>6(.VI(ոvԑ 3#s#4vwڹ$6>؏՝A,Lˑq;Oz]H#1rx,/x2-WF`hIێ9Huxc^rŪ+Հܜ+ 9yq%n 5G)-HPɱ*I-ˀ\<zD_Zs֝|_ibY[LZνȘ bz&2yuQI+- T>gOx3fDk<8gyˮWs'\57o.i/'vznAi.鿕C؄N3/pKGyZ;[Rk\IVp&is5JnlVj~iH"gp\5IIjbw5 FPRpj2کBhp1 YN[YiGD}3b2ʵ^f1-:,H~F_Ӻ<3cXۤ>|%< 6a zo9^Nmr~X7c1%>cA:Kg=z{9܉Q&7Elb^3õtb "6#݈.<E ~ZRO0I@EW._UxC9s('p>g2ihZS*Y f`_y7 dp:A>>)Ԁ$g:x3Mnyk;zG<# .UBh1+'-!3+Q}wL9>x x˔ϝ7Y%Av+;9n}[}a~ZrJh.kBFUYm չ0o0p5!ÐܸQe{hy82񾼪 ġUfvxgEݼ~o0+Ç5 XM֚KK E|o ߽'L& z)W (g×8՜G 庵2, 3߸膼[t,{q0͍҉*A)Rk-{9k5+ *T6*ooPd)lgO,Z)O oC^$"]JOLR] V>1;]@8>v'Og@ςUPb)u#E&|7>N֐x[Oڶ,cj5s79/Am˲f{+Co`v*Ub5'Rڋ -35%Vܓm` ?q?G#X׳N;ET˖LSA1`]\!$uB2i~)KBU6GʊzL־fkdJm+Տ%caI7Z'b$ᒶv18 ȹCw/$SV٦&DD\W Ài 4. p I0|&&~/RDަ*vp5H~"%Xգ|B!J[~יRqn'/.&9BICJc}߉-O݈GΑ b?xN^2W- K N.~ܠ3@-3I?ohW8..!hd͂˄hEП( ɢG)/OzתU!6lU GNG8ǖKSs}w:A&!ᢱm&&i`'RL,jd5@A9_h+xVG٣ш@@CZ&OS)8b+3yyS?  :R\“΢MV *Ǭ''Gҏ&~H'"?O/6{sj[ߋ)K),9QOYN¼5 :,8Igu#DKR9J૴~c2# _t}fXMF1rr2DM Oqaoso Ӗpnֶ4=#mcV* r+Pv Mwig̺eOYPb3'Zvt;skj(a;>=+%:G=܊yEYd *{?j}BHU",dQ}xɴ?G`)s֖BiwGCw.Oͨd#7#N$+!w_l 0^䏔U0 MqsTÞH$ ivw(J,vū;0CY!jۄ n[t w-]$vO"k[uIϮE<=Q ',. ‹{v=XT -|=Gttư~%X8~IV ; U}5]C(< ca=oQ 5:<u}5O Kq9$nLEa@/<קPXXgp(ԟXΐ>Z+ "=^|gc ^Rڤc!Lk5#R}dSL%:>_<_4&U}IO 闆}5bTPd#UeP4 &Pj~{}`SbͿO?رpq(Գ`JL$3LN)ZH2?{pk3 87(|C\hc'nn{cy5Sُcֹ]VlcĬG(4NsT[jȜm}:FatAhG 9kS|AE 'QY6?QvIwSf8Ƴi!p pȏ̐UG36М ^gXfW٧н(ީ&T6؂xx ۔:S342  Ob{N,z,utoC}(Wp>KJoqR]o"t9]E}8ԟ@SkmFzITIFXn/J{9o1,51(A.y_*,yfrW VwOŠ?n6{%K*%m}Q$6ݯ?H$E:_k) \)6SX(+n~ s]8Hb0IѳP`#>0,Z<{2dsu5Z7Fy}rœϟ?? _b@AfD;K;.pBl)].j'ۃOBK*OE~ܮ4c0C!_n²UWdX`&ŐOMopCcM'{&[jK} ]{ `̵eChR1bˊ;l`SR[`b|`cB͓c2+}3U0D#GW &LSY>a_9E{+D._boRnvv#kF切~~J ![욀W.M,"ɨ2N4}HZ͵ * )qc|Y^IJBSAf(4|0"@Z/@R|&ZR1N߲j*lmz:O<amΊ%\-Fy1o4?|"t:AY"[~!M'Vu^A*J[LbǥwǾ}+&XW:ww5GYIV FA sZuuB >oy-D_jjCtHEu<'V@KY(;TM:!Yϼ*9s@NM_CK03cq'oS`,;62( |JuyhclE2^nnpޥ@[Undx ;gS _qNwϙQ`}9>Bl1i %j&^ҮuUȒ-J9fwP~NJSo%S b$nW7I+^5Gu[ϛrhyE1J|ŷ`Lʯ솷9ͧC~hKw =ovnIdUSi1 Q3X: [ɶҋO *i}ߖ7|q\?y\ObMVS4q'5PF[pv¿\"Ll.h|@_zp{_:O;FE[ޚ4_9I B%+HD )n칣uG=f#_争LbڒKC 6spT“2:H*v?[Sh<-@>jۖ\_gO(ޗijkO'`\(Miw:]:8kPwrVޓ6׏\Hh@zXdTO:6kκ)oB߅RV>~ǏIEŒ:{x6e߽й wh$N\&G,09gm[},Uxl9 F)Uʍǵż几*P]L=Xyi`MX'Pdڝ$i|WK@6 dYJK_H gVĨT@gef YƁk cC'W S˥h\=_z~Qٟb<_ b6n?>'heK}Ѧ<+fLK, ॊHWM~Z\(mP:!T^L\Z?S3R/D2L*BY*囕tyS#Z !YcRRq!@-痯١(bƋ!pV CBiHw78)o s<E|TNZj'{/@cd Fٝ5?m&%@eS}у:; Gw ¶ CQ $gֻpV4=akБԥ@ڄOۦˋlH@w Xv\N(8Zgy ) Z(4<glR1%|~W E {Ny\}~ѴZ䓶_Q/lA Uvn-0SI3T*Ei'yBBReI_ꆋs +xL!7i!,mLm8.hFMRT&2a6rF-\H6FsEQT)K1-~E_++SW3x};j[.{"82U <>jZyYSEP'Q2q^ʺSBseɹ/wn7CU2yVMfbުPe gpN5ESY?iREpC #ZAk*HE!TD&-)>]\JX qq6;cӷU!M##|H wZNR?Fi8Z;|f6"~\WNM@aȩ"$+aJޫ_#N&.+9r\zKe =Rc!vT66*6dHg'e' E501{N$P?L!(RpufeɠCyӆHm<ڻtuWre^"ۃ3O}Rc?|#@ ڳV;S(FݐnlR$_bP~'\Ո͈Ž}U [ڜ>h,z?y/Aۡf2y}*O˦&J3_~1O=%~I_џ6Q1948QQPpM'@Dk^aKRj{a/dB[!W4*E׹/Rz`a'ȧU {/}eì60jZc+3#*]`g_ x`Z:tFݼˡVZ1*[ӳ- 8MhɽΫdlVG7\H}I:nz LRLm(VLCd!̷TKd'H@6vBU[W/N[h>NY](Qw9 lJPy.;Oߡ4h@Mܬ*%Qs@ b彆|-\H\ M0`'.uǮ5:o9m9gc:ޅ9_vdLkEQT.ywi<IiOE1!T{C0oefҎk{{V( ]P Lޣ\@,ezzw`k:C霻VƢH}?Mct󡪂kXA^n^u>:*хF&;;ۼW;1'K73}Ц@#sl}@/jȅa&B6wIu<)Vu2SkΠ3i\GO8SO[#[<|}CnJ|9f;)Lï Y=7Ns=7xds?OWu,r5Miuv5\dp*i]|(s"E 3s6!"R{~L9noBX!(zc[ pwerPyXb5ID.@gSa?-9UڧAG`ܣMlEukW{ooV ܡxGloJLbᶥ=]OJI"Ceh)q#x&|6zGOh*7RñHzffڼSs-(@sp%鵑@Tl{hWP<#ݙ4x35nݝhQm {ϳ@@m"zEHIq}<״cSz2~:0#su GH"M^nWSPBjE1MR11'?,68q /+!՞%G1|3;NM}hօߔ=3wIp#y{#9XImTnGb"!^`03xy\JqwDXԛ!oK_?iv,CRΥ*}kp}1" zRɱrKA~uHvAKa˜INJ$k|\ޚg[!Rb3WߪgH>;b.Jh 3fx~ljh5 X`Yo޿BrEER##B`# ,x.cyJ?A҇&c9=#mSY]YE(֠>W&B @,[FD^ڮBQIErZ}V]Mx}%]1fm9=u7?oT:QED4$tm}d A6u L>`'zi£R`A:!] >H!Iř!jB$^֣Sz3 B Σ)mC1*ƮP5l,_hw/r`i3|dQx'`E?+"6:=_t_)vLɡM8E#A.m\-Kpu E?\9}2#n=ByW+V>MmAO}0+-;8YC[ 3yrVtYSLĪcete=]"@Dp* r'I}bQ`[U;f/=36);XiY3ױg–x#ARF@xYޣ%x 8>m\1h!(畑bW ߖ9a I\]$"< RKV]aN%#D}ñhq.^: Omv8 N wܚ H\UKE^:,r^?oaD=JkE4أ'.cV$ "/rw8έ  v)Gr Dh T6H5Y?AZP R3T9,5_7$,:v:m"Gݺ -kȻ1p7f2~ߊ6 V} UTEtzI>p|!;syhQZ`\e %qoYRjDUVKt2\sj2>VӴd8%)oo7* [&o n9N9Auyj6TduKB)ouYiURMïv4b-Gc3Ey{!aY+?CEޒ 1T$)G 'o13q bYenlr bLY9/YR&9Ji*,F mgܵU4v"$z >_g* _P LPOKQB-UUCnZOLwؿCʭ(x=eOz氃T'th&mJXVDK5P +k@ۨx*FL%:VA(c l=HI n7B 6XѺQJ_ 1JK fy|mĽP(;8 0 3kPna8:?u?77(1a #[oV[~R34 @خ\`/ , P`*TF%͉p{xkxE)%.@R0-QSC)ȸ*V׀-ʘŁʊyj譌+m2YlA/!4&8&(->#q̣Gv{+U$SS?k/ NtR͕u@Q{!.ެ锝eoZq>K+Rz_i!uJ O @gԣUWO^`:9B9şڈ+mJ!c}w=j)~z VVPEoYAL-Y)ƠNQLh' ֑Ν6 O&DZ&7R{ ;\]dI_]PLl@V-BT6kDUY:td[CZx9rs4b]',UṆލ K-wo_ m`։Mo:`.a= :@r\ ԋW(1dˆ_ɍώaIvU{C X[E1/YGh^4kdI3`ep PPomt)`KOG{jǟ6_?#+pԁ>i =Z8IIh𱩅^/4a K惉n7 mM/q NbSC,$y,kT}Ya 匄1ʔ] ۃGr;:CBwuaYSTQuBGƳn/chDrq짷Byaّ,`pZ/Ϙ J?^\jvBۆepK]dk&M-RY'Lٮ%yHIGR{A?ks T;[& C"{)wDaۃ䀘YA@̤-JKZ6|L,Ý|U@V,[ 8?ҕS'] TJm0Xˆm#w7Z9?)r!ō2բD5'*91 [՝ZaO?<0@ {|Q'b&d509 z`Rx?"5/^2 }ςCeL!_jW.j?6݈IT-|JЏ}֥]:дӥ箍6Fii [!O`>6z4Hxأ3'Oz~<L~  >Yŗ(kNqǤ |Ї<"ۊDsc} Akq q#a!+Z| &Iѯgvfh%)<Ñsd%Q.6D`6_f?vfefЁV!t~[6yc*4C4r! ¯\or/sҭx'Jj%5[7TƔ^z`ܼU5`SLl,%hxwY-1OlR /d!LczhO-g Mk8i&{ӏvƇIwx*j#-4W_xz?^"#gØIUo{9 U:j}6 \r.A`'72)) ~2o>sj;'Fg~CUg @vuo~/c)>՘?mMK @UQko P],+K"}s^[ǭx 4?6cw*p+s0{bm>hKTܼA,:dY)<+%\e[*l.4-?Rs5][TL-jN 'ht"gI4J90ٝlkŦ/$|(R=5;{ [ 0O^56RN"Mv`p5,DŽ@ryApFLWud>{8!>Lg6Jo}ڿ *-l*F;!Ei#P3h -MDGv !0m(bZ{PD$޾`YiǖT,c9ccKW*?> Z_ ʺN\[ MfTŰ#F.;C1ڼn ҡ0ʁ?Q>uxl&a1w"^ڠ$ >3;3֮t4Xfh+Oa3AG ~V߫>Kt<).މ^8I=0, ȂYadvؕH g.skzgkbLJK/\bSjzqb!< 0P(_zǻ$OPsk$Z~ !TA]mgx4" BGD<_цEu&oD >;Y C7~}őZEYUU!*20p({D!KQXI O#SlA~d'K(X3$A *oY+DL8{6'5S9k_5ptz]s9)#J@tvK\~AFUqLS@yU]b& +~qªY`+6fdM&7wZAdIEe,7!UMı31R,"Qg5̗j7ejlmZZ5ځ*Bu#Z#])h65y=H\cmVK%KyYRPB`Znt+a9r=9?f3-%|>F Wqvګ97 5mz P+`( {y_|k|=>A {lWq*ƗcS 1\OS /RJ91ni蒶R(/4$`qzPq^3V+j*uH"nE64$pLI5<`JLjP27#_i_Y{rҏ xFncSQOШ,|By)Ը=\C}LIU5Z&c=A*I:TSbG 3¢@>u{%$lBWٶ[k~SX-g6^—4c m 'q*F^ LS_hj~뤷 1>NĹb!^ANܧp+n,L Q0T%,C'ȑg?74?P?yoCHv:baבOhC m,\Z?Ѻ..nV74w"1+^ow a oΆحv\Pu*@HxPm ٕ a{RZ· -B 7[nE:k><(a;VJ+.-o2lʚƊZgit'!7j j˟u, I̡6w-w0ޗ,?`Wy[IeTͻy43AB^ v֗_6} 9ubzaŞ!ZNR>!'$c &wpuBGϡef= k3;RR0_oasihTogpAbWrT[&«pU gEطט3}<IBT"U4sv:SFam߹|PBEv*K>*6HFeتC3}0\p](3sy}X/{ShK 2z[0z-y7ǣL+> Xq}EN[Q xtհFg-Ǣ Udcu[^ki`j^B,uRdJ$Dm/8?K(?C"  <0dIS,/q~Lˋ0Y .7koP(+ZlSsuvW+gSw {nE4'E$:N(&C]0$✁*1ջM D-̦8z%k&-ݲ-EM;վ%կ)v&.`Y-^ΘldU?&|j1jznV~dKd_[p>\o A=FC%2 Əـ l?fBg W%?^s%Lw`[WܸhCz0+T]},+`H.K2,l"#~rbr֜U+!rC|=-rD߃Y+%8 Іv9u$U]պ=Ve zg }`I?y͒nҶ`ͳw,:A=%7涵~(֣9Zİ<&"UFG&aP)ǕHw_dIҷ$K2A[`5R~rW+ 0Nfb?QG5^,22&VqoXA1!{#yB; Sg(zHǫF7_[cᯏ#˖D+Enku-wѓZM笘EN[<ͦVE< TV׋6l 1?Cg!_UiȄ6-%:J5[WR1dK7"j2k  ۃp^6Ui1C c3{Be&V=1BJKbz:Ӧ H!1Hb/V2fύa"ǂ?: ncRQK(Z(#n39A{_C<뤭QpFJb }@oE"jVTѺ|P9 ]˵uB.j>/3 &-ۀgș!b<0;9L3/ hkb+GpH@$_V}2,j? G蜋FPK7}ڙsz=D}ܩqALDчdA[X׌ib4@(̭N̜6#6=SUpziVͮ)0QRH$=,0sZfW.\[J4{l^Nt5|hyıMvnݜOa72o?# *$e0h˃Gi=2D? -1}761'}C>:̺yC@hF@-=zNDΎpB-iߍ,%NU8|5L4^4v5cf1SVv1 '&zM%{9>Hvs&3{7:vɹ-ofG٠#KYy1[Z3e 3X맶}kأ V l(ᢲ'][ ۷ _ uls]h{F,;t>qvnMw(w&ñ)6up]e.>, l8=O銮1GD%*S8Ykr=J˃y c-J H_#2{<՛?A]؄ }%Lr}<&٩c Qolp| 6Αp$IT >%v-.vC}vŃ*)߯MTooEָKĴw-O\G-B@FDZnpV+.Aޤ'`kd0'<+Uy.fPՎbBV`UGj@IFdZoB7S15WJјqT1>Ba'iZYT3GŹ:2#z{=I.qS@иi\dU؂C+W7O8;4g9 ag+~zJKiN58ށyΙSd 9[VqH$L-;5Hdo7-j|%M\$nl+BI|KP̭6>jm~hRQ׵ +@q;ǥۖ-QTo 2~$T%3o <`{fqkXQ!ߟ[ߤH*Ȋ[7^Ңv;+Q{BBley6JC잙bi7>;x`>S;UgHR*Ou>sJ~p fb!)(kHtSN&d[amfjl^"lO;HOLwZvu_AT\*K(qT!4i%Ú`!;BK y$37GjpBt"˵'tT'Nej/{PtN5\%cfeq<5B D6% 䐚c%٪`\8^/vWD.=N{;3/,\iq_%`sc،yx 1IK k"rNc@)#-E@i~dl_%~ ]s#/r!} lC-o7VQG$ۋ˜PdTo*gדAD I>`ZN~`{5Z8U,SIh $#\5PROi}&!E]Y[D4"ZiuEo0# Lc1w:c!H{bU}Z0ĬݢB2k/a\3Zw|3150+З#F7S]z6-PmW5LKJpIϑ~$4]( 1Inn;ǡ_H wV;Fyi1%2 _̤bs✫}d:%cثlFVox/ 'zk(rx/*TM|9 J1ÅǢz#O{Qe&UBE%91WJ!Q0`&/ pijCrtc  ̌j98s׌ iwtNQ/*h,Shm\q%W ~,_GV Qk|^+PC<_djD!.&+N(pp-rUPx4P}} Z4c>VfϾ!TCv4d΄+Ad {18 ӂY9¡QrK aE˜s;P/ M^c.9֒SSHЖU]KaiL"eSϡZڄY,#l={.,/)/;[ Aȑ ;lTHxfy'v'V 任er#] oA28nh3)X Г[X3{";1|( d3S`*8\KOuw^rL^:8fcyD|s{v|x` ifc(OuMQ8ޭšU<=>Fq`j*\%8S'錈xzjփ,ky޳#l#PV٘%?$?e@}zr8Pnsf&&?H M{s3lԛ_͒Suk8&EU[(,9ԉ|7HY'}9.դMTL}t &PVT2!9.p&ZeL2W{xu`5j(vX|Hq+XbŒHm*n\ꥠd&TӺ-y4v!6gA^Gɉ6֩+BcIi]ǿG߫<ҜX[ML'׬5> &bכRR ë:tdU [.YtG Fd˿V-k$e;Xla۵A*=:DNօ0"$t•\aR5?.oiSoj:/soU` hlr 3a24H qnOm`^`&mő=O-m&L3I Le5M-1-=k1* <śT۰>8{;O6 K-,D](D7I!ԵTOɱIi5=+:2y%=` 1h4#%j2W$BNQʈoau0xo%z'a7HmLa{FSߖlNxp(㮇rQ$])麋6xM5HwO op.Uz̿DU@QAxͦ!i4QlCΊdNjQGR?#aSؗfWY C tVxJ1gLK'nJW\Ju4aagNE}lQ"CУѭa[ȼ74;ȬOغ=cY!Vpa9= E̋ -"9- ~gB'ϜPO`ZQ0O٢$[!F Œ3.uq֚asHE 8>P*q bfp/åkr 4\CP8XHmZiN!a>Vdbo[u[u C 4RGvt\#\ZDR̻7Al3ϐ3R2h0-1H4Y*X Gw4Pa> 7 0T9(qЮb9$:8{`Oh~tF_+p{bE:gFOXE V2p$ŤcAz˾jMZxj23IOGT]xK}7tœ86k&Y Cdx" 1PwJ(We9l%XX'k.XTJ# b36$c4nTR0[UqC22!eV zhQL:37siLBVu+51ae([{MT,/" X}Νf\Ot`c7 >7 O>hb x~M  &rTL[,{Z=itlnά+ɞx)`^v+R C~Kؤ'Ư#L"I`JbKy\8_^Yz\"HG7JS j޻{oE~0C0;7@ \(^)k̳/jOMA1fTҿ6-viaړ\gFD텫:ltPeIixeOR_f68X2rx ]+1x{Ͻ$ɯfKB,O _*Mtbýc<\u7JHV&>'SBrI8Ef&Vl^H[V((z=Q`,6הM1(cX6^fQo3"_dW:(}(#2]f$ΒuęZ Fb@ۢ q'xpA161z GEѪIDY+"0/h1!U$],iva~v8{6C6mHj>PS,FM1Qē~1|+SkOMyx3S> wZ<-Xf γQ6"g.dO#pD*E2L%z@RPz6(~$fYJR2qLjrxR`1ţ|]ZھKZb}oa*RzkkDZ5eva&Jт'ixyPMZc:ޕ,_,8(Efu\R+xr.S|k0;>Oy!g])戮\fM2zHIĉ kfDC'yE~9R@%aSb`@g%JX1Ź@ɳ:\J8 pwq% u` u00Hz/4, V͓r-t5i|o4NدD Smpp5bfVϚ܇8Lq s<("2Ӣ \A  !N] "Hca^KB('Bؽ&r EGvlmguqKm@'7#"Duƀ ȟXei X~/e{P|JE6r};"U.H=ZW]Q%t&ÀȗTBCh|oJRT_3mvQLbý7pSX44dxGI`3Fcaӑ>'Gv%;\O-Vq'&SN״-'Wm^ β}4|_kPKKIä29#0-r3 ǻ@$C^X[)wv1YL-= 3 |4q3JIsĐ<~tA1ΰF:g͉h,PARb-zXS:DveCsZAU:aԶPbYKK7ɯ >CXq~5B ?X3L ]1 G!M>UQw05NΖ! fu-`; 1,syҋ~ң¡MD;۟uiSl"GJHyJ>XJ$ H(; kc\fZ$Ex8g " u (@GD`Z9Xn*v0 o~hL)Cg|$.61\JL"9l΄ƌte3 TlKg{JP+yVSF3d÷*38)7o<7B̧= bLeM1VۆSb rL(ӈ@O74|(; =D Ix$s倚`ZH/yc$l=ET *<;ĝyc)^->H`j2xd]pcskeeI$BSyʴq\uTD:YFҜ!H8ZK a 5j(ʽkЊ 0* z|+{(jԥ:9M7^!5=׫\ ?jqUBJ@fDklᬞg52 R Vo2k uϸW 1Rqw2׈9{͐ߨSC}&=9ڿoT( )iY}4 7Yd@lɄXWGH{3 4 T w6 b1}&Gd5aٚ3|I?F Y+x@c^ڿmCLh'(k-0?oS'uJW?`poRy̅/eA^J3M&;aOkdv.<3GGwtkh ڧy<.=A2CvFJ'$-$5-\ZͨNlVUiQ42Uս%6$2lgu0%>sM;0D9ZY>` ƶjRr1T+\Dk@7ׯ%U}9+9~E igid%@a f9/^XUS?@ӓY E2{{`DoU$-r+]͊/x]$e:S EhܞlOx9O\ v={_ѪA3*^V 2Ll-J-EX r, .toJR q=h1ӧK\T#$1y#׵!F<O#>x>EGqKIHHXPQΌ '3\!zP*K'$H~Y" %PV/;3weP+lXtB"=? $ 9/MO߆`O{'8 2~@ZO AP:~dZ\(z#CMd1AP =̎o"٥:=z;GB2 $i0n@/njԲq25_[{Iz-I/җ}VBC?H#sZHٓ%Z+ u{l8,J,׼Ӷ=(oe&]/E 0ɫ1CeY-_μc@Ӗ.1KDT6>$$q'Ջ*~񁫡z>Yk4:nvTnNbpu y4&[xϠ@_gx&vU [P F(Ė?ѥn.,;2iҎ+'aMLa+"%k~X?2L $6n|d\ܭpL)k:l^8$?K*9r? ñl'L[H+ILCs&Ⱦg".>KIXx.A1{ Q4ܿ *2?ֳS>pŤ##*w t0IqfypNsgjeM{\[+4+vDyT{)7ĜB]o媽LiM&Vvd+ ½r& H! * ԒeR9M/w4fܹ9˜I5=hr3 t'!Ip9xx v)l/D|4buufNV!)[?vϧU:2-(!9SАHȄuMs Mo)u=&^h\' Ķ$N73@9LsE12`x = 3?]@F P*CiŮ j uJ?œʟd\&ם#vEZv-Sm 90 SӋx6+v3d–try84³+K8fa s+tnd*²`3 B-lsڅM{ < ;1O(7.,:TUfC44bڸy WBvm+h%{f˾ZV$'eE  Z(.eQx5UCi!)X1SƟ ZW'!:"-E^3 E;{$Y{PX[ w_ʑULxu.Y5@D+*(xBInFMk}}q̥6LEQW pUNC `w?/k'~ R+ )1RZE9p*8!W0)¨6 7$MOfxZW_qq)]AF_̋ 2K"֖H%2`%%j t4}G$b>cu6.{P*"&wМE?f Yr3$_gZ,o꺝VkȑhM\9NWFٷ"z +Sr{qvFrd6~t A.BD/?lʫ0EX|;*|JKx?^/ ,y@%Nw*4Z06ȢQutñBbwdWȶ-=Se3"tMEYfpFQWvpm}r#ղYMS0]X*U>m\J0E@UeLoJnt;Sb56"&@Ǧe[>w3Z"a$*crA'Ifq0 (SsչädthQ1@i]s.94;B1)ƨNtXX/&xȥ,z0⃼ڀ-s?M_ ip0UN]S&WY 4-Q !C+;gDk q66ͻ =q-4\Rq :B#o+#ljJ0[U zb=3/|vK_oP]w!~VGsJtiHmV>wi3P&` KRFӛ;uM` #k4?!_5mQC9S{NɋT:oZZ=z&_k7;hN_'rl 1E\C-%S6M\|$?wߧ+&_](E`D!M'loh12kΫx[HQP*^4,e¿.ScI0Y|樵 G29[0S{-]$Lr`ŐmlI]R}̔Obr'i'&'_>EE Ol4]& .h;eEW)Sq./=ޕ}3s/Yt+~skȑEma~@d"Q {YSϋ-]R7C}hnM^_a7!sn.ԋd3N뚽Ne)6|[)*&Ѡ}$qRqJŽx6vQzGfuQO!,%(,"_P,g.9#Sg0ƠG'qW&=} _Q]hU}:p"] bqe8nsJX,-5gbzH uF$gl[ZCb逈ݛXr:ǣ{U Mw,kgVoYqmT׷:+2Dm3`oi5 ck ґx2H&VU:yLx5%LU мPHʂfyԙ|$w>7$ S. k Է}r; _ +>R9ײqJ8~9${>:eȢy6n\u$XuKsds9#Ȭ7>7gLAאC5A▰sziloU}{zJF5YR{?̼?% Ք)2NE -,O_.bOqĘ0 o#iJ$]Fq\Ѕ{%%oԒ]U񢐌}y2p'``!5uf`G_Kp0DсjDT nlVxL%ow xZi=gph%VtE y2;)nJ*dI?ы_UKKgQzsٻ4֖.CʡjYk.\yA=F7wslcJ[\N8}esbwSɸ DYwuԾ_p؍/ٟbNY"S~+xCIwRm-Xqn<_]7{$O,1Gt{fK%YDž+*7xAeS2r,yr7`]uoSAX^bQ{5{DQon1FKz;hqotЍZ}'Rd ?_p?ut<x+4nL!$W+BݒA=.CqyΙL@ͣI@O~G@a&XIHyz=DQQWɉg8$T3F@2ױdUN R:IB9vΗqQ 8ӞlHdB/$@KFXPWG946(1u/L|m}Dk$$D/ HT~(ZxxX v̢NO$C*Nc\~DP2'=K$" 7.Kbظ5SΣ!ȉ6=kpCQ0IIxLwXMzKGz?9j7+jG#fY"nRY36f_dJ0@s)c!!ELumWk8!LVyP !oE,!u!ؠ/_]ltT^W*?p9eIן޲Ͼ@@t4<2/yk׮b>`@D# XmCrreih56?3ҐCG[݅C'! +^*WQR :d͌f̢L0*+KJ+gVVZ'I0?Ldn٬1wMCL'%ZҺS_̐1Ș*{HAO)с"~23͡ Glu_e|4:E5@freA$z jkMjJYoF4Mp9o2 aAހfU2 mJϰD/6d]%eϿL:H _MbgX*KJ#%UwOA|7^5 mчyiƟ3\G|h+ڼrO_ ]I#L0D &&&cFMPģ߷:KڣFxI-v1IT46OhѠ^ϝGűKفNw}q9HH:g{ߓY KMJyH䤑o0Dn0o !?,.y#)#;eJamSSzCR#Zd+yX%P=6jO:.-yˠJ:]sܒXe#`I %oB`ja.Җ5pHjT[tt{*l[^\}e~ץ^XOq`&{% :k4DdR T"g7aҵ̬ .i,[&8KkprGbreD,r 67 K0]@o g+1ɢRSbОA cFPGQmR̬OG_S)׮CS"-<\_Mj ߒrѷr eN/k $iwP.N` M:A.8{;p:}ٶǧ,3{:yM5Ϗgʋz8}opxnߺ;~h7=Dx}( ï.LZoGTq?jym)K{x5q:R-_q9} ] T;C #ʈok&R֚dHJAJ%vT햂D4H*4sIB BY@;GT߅򅐽rY!& EE|`/m_Ϝ[]\!q=y _N3#m0t^qd?3-[qf0`$T?€P ϼTTNVG(Q>ZtQ %`%!g/?qY 㗈+J֖?x-zҫ]c7NzU= 㣈SIhy{-'6䫚п+U&#`͓ʅl0x>;ÖJRX2MLpQK@# ';5.)Z,h]wۡ@ . ̉]+c ?v+e÷Ь_pc tMbl7,PtP~XM1 Z̔l܏}p8q  0'7_zch\Q'+˜)ڬ ޼Hl'#!^_uz&[ā@ ۘqlKFڨ7Y^YY%jEpaU;zk0^$?y(ࢫE㸔o#zccbfEH/XPmQ/a<z1,7<a.ϰ2(Al^Hq׌&@%2b"7o{=Hf__^޲gИ\" nq+/~4q qϗPۙVpf喏J RJwS9iـݥqI:"t0!M_ K9Kow0x5Dq-fGKn^]DBQQ1mkF@*[ZHcҚRǨ9G4Z{qj~kőc?+ z(aaa^ǥ͡uEQC05b@N% Ԕy^$?םQfe :mx (2"{`vTC u4jz!ݿ_w2>6 ~ 87#$lTh+H>)/f.2#\ N%j)w]C$،{*2~ ʛ綔gڲp#f Y((vE3,:k ^ӹulXGKרj1sPא_2 4 ؜N̼Syy DkjXHHW1]L?R)9m.n|S~IR־Kܒ|{ORkCZգmbN}K{Gڴ/ B&os*OZCصUQؽ@I{\NySK5>W|B6/%lI|?ͧC" X;keoGr9U}( =\[B@.&7U{VL,5X9 vD 1,8օxX}&A`)|r:ʆgDWC'fYt Lng+jCq+[Uƶ E>OE~B=k+g20:.β]̲Efo#]`Oے^Kn67q~q)(\rpIdnw%q@$U@w@{u"lfzM<)0bFuCUSf}QSW!=_MVQjQ3nJ-{=1rIRq @ĬT9 g0Cw0DWx&eF s+Z}{05)pVx-wh8Ga\?n22+\; L="ۣk{۩<:5 P P(}D bخijň:3dL՞-VZh_(6= _|1Fa#Dr'Rͫr65 <{hw .e2%a2,<爒_u)c1^ZV<43Z 7ᣳ|2xTBr `@Xdu,5l= Q`,N C.A|%!bv^N A-KiP#s,2$>s˦%'U-%JdWTW| Jw@y1E= JhpB΁S*O)Tׁ)4 MY0DRS=ǛklyԊsai6IDab7j9-6I,1!T}e wiSaLI"\o2iփtw o$B~r8q+A ?p>= ec[=JnG^<*v߼\XV7 @qqx4XcR5[{%K ^hA)߯^tƦa?{&kph<~$aw*x34B `UPIp Y=X9E-U$G`͹P—/̯T%M&\Ϳ=1iUNYg!:Jg8TrL p^%:ɡPg}E>2P DyMry#'Ko]/F:9CT%V`<3c>g*4 F'Vg zB~gQ,XҔMĭrnre^q@f 6OP=leS)N""ytͱ:ppUxUb3;0q'G;߲Ff&ZÐ@1, O7`PkV'ױIM-^77#SFeBp¾+N̈vpCs.ipax0)&o0JxVZi)w0 g)1ў6滞P[ n>U(lYtkUEuT z9T뙨}ѸۦΛ?gjr}܄ܘE昚bI\~_f&$m7RsCFfq:2zނtTU/̗QwH6UW,^#SmN2-TQ+vg=ecp:;z%n[&ˏ+]4niN,Z+z%BsZ8|a$FZAkÈ74ݒHC^HJ'IL_^^^aJ2 EC7VDeß/_vX*RW2h?~Ehavp|NBĜl[4YW\a->ʐnp~Q^`)sToú@Kژ"T9s%==+^ʹM".y@3${5{o0/3[2(=/`op|뽵㐓LHX&>hҊդ)SUԷ@C'ޒPrZ' E6{ ʞ+ʰ#"CYr8)[,c<K*/o7x]RG05*seQPP; TlגuO3MIʁ{='7=jKMz}O):_i#QP[9̉&o޵=A)Ÿo?1[& [7@N|&[M"p^ި L-eׯru9UVvt`Xe#Z*`/qCLגɠ]]L;=9ФxJ,9Q9]$Gׯ\w{pȴƟaygR˚~-)5TR?gP^l@($[A,w, %^vjěx8h qI KrRXnЀMzjiO&7_=&%20boF Xk N'3ou&ાx++Q ,yXe}rUoJ"̉@H/2UmKAKbOyܬcv\]*QcCXI0>9]~j&twm>SbU]TӉ5d3J9*bHU IfT0^Aj߹H' ;3CƩ!38"NSK|'$ebءsd8oo O^fp͂V֏Lf/|@+?]Z vkr8c3x8&wqn-7eZL$yeGAx\eM u2|yp-֏fU򖪂.2drɩuOB@X'rzb_։yw f-ݾXgkUm<3Y],iZ#ݙC>٢o%BWX}{44Ϲi. J#A6rL ?5" 0CYWCzqS(~C$>GAD[Wt-l{<>|nC ה%rWjZn^>D{ YVOuB($@Ѹ18 Qǜ)@[rk3.\ U+R%I=*/N j8R |ք -?L`CaFkK;(@ +Ᏺq%uDƵ( (&.g@h%2o  < hm9]3)rpZ$T[N1U8Vj7Jv:UUȌKUX&RcfܑhH4aD{~P-G0!ҩm׹0#?[^foPb16BpL 31AmFAh2_;0у߂͗t0Sh/.4H柩;3-j?SPAQ3SV yD1)nD~o>pZfZ9 iHq¾V@ pYq1?<1Rwv-,}{4"6&OQ˼9%f9-'Tiint҈l|Hh؁$"Mp?dH~j1Q9,HJbM cCie/K4 :)SeBv$CzD*"Y Ay¹Z@<7l߃gbKA˲E/TeQ'}vGnM   5QGR1[*#g~`&{w*~PΉ$HvOvS)9/L"rh>,{9S-z\vǛ7 NQ#0B)aEp89$vJ%:Byl% HFb0Z/uMչ %4tK-6 Nׯ~K#TԊgEڷ"U|0+" weEUhL8} F. zPg͟qjOa 1ZTve3>bjݎsç5^@CmptCżZy< wVj}ʪfK!ՙ =LN^K^S?'ρu@Qvx3~FI+4Kԥ,etmvFUխgă)&|؅q^S Wd2uOڣ4w$EX[75ao54u_sd,.#o}i9kVm:NZ;)/L=nH.@ǙʿeG +POZMAbr{ ̈şҴ.B:;$&q u8ޕ+YM` Խ}= ك?%m0?}'s*Q^R^OH+N!,cYQz̘oK`!bIQs]m"܋Vlg=U.[A $B>O5f[Ӱ*} %v03:I>մXJ'1B/MfjrmK91mU7x^ə'뇟dY2deZN=ԕTA[fj]i9\$NC P ,=jπ&-SXNS:CZv&/*/ \* R":NqhovOhδ{ܰ3.ۀtmQQ`?y n--TchMWUp:nfSOXLszK<TDɴufLyH 2r D뉪 ghӳKh٩՜p64$,^m9v*SUڨ+iP(a] {6yhKHS, P' 'iBj5xrRZ[<α&S`rqD Wć/DG4:\Bi{ ujBٶ`xHwV$[8yqJ ׋IvŀzݦRh _c+"d(eEGF:AERԩI~i9;\U).3.wy">}8,1kiIKA.譂rdR/h?Ca;ظ5ҟҁ}(% ^ ! Z]o`9߄ rg}`LZ)eG85Mtt&1Qrᤘh15+'9)%N[KE˻./}Z.`0ylqj_C7ޙ2>>q j>u}3D.mw_>y;8S_\ ?6Ku2ݿÇ9,\[>mVkȈ-|>.QY>y?s¹Qi} Lz0D\#ޒ$MTP\ujghf-mgV1 l{ڡǜش<|%ٵ(E.翍p;r済II% 㶯Ѣ][߻SfRGnX `#Tc =R 4 K]ay)՘)uo}_2cj=$(0Hte&@^ E)94$Z]M,{dz*XWnor0Ժ-]ߜF!S&``!+t%Q,8u*m#tH^V{ݎ/ qL~%;kφP ɝOBpP Ja(Bkp]*xQf{Mʀbe)UX 跟~m~V%+^y`ʮ8QMK'o8.a`eXb )sP9v5XNSM~ͤKT&ǻ10r|\P"R!Ӣy#Z|bkk2I$^ܴ[êQzyLD1<EWn_X.V\-X\ "/Q>^q\$+r'ALyp˪a,kJXt C%ބh\q%/w :uqx.ڹݓ<`VU;wS<#].w.JUaz-%f8-_hG+O.,?3Ԉ3+ȗ|ii|s,5wx;iz۝?w$|,m9w&qkն2M̫@1G;BjW0̐JfO<~Oq4ʢ(ۊ!bGDϝ1Qwn8oEK$Zʃrߕ'MG-u&0]jb-|QOO|Z-W u+SX+j5 +l!dp?yV(/ 70.䏤"f'F"} ^b4JLXH𾉁6eeȤa:;뺷*wW$-BEj j*.4ЬJ7+;m/ k2OmH|,)PO={B$#Wʄ`r,!4_Ts뵝mi !?(s )4|Q[1̍*TUR_ڛst/AFVx+.)S<-4 7^/Q.7bi w.(Sf*ܳP=L4owߺBd )_:61oK_u1~ 5Y+rC gIS4sZ7%$2~"%ⶱ} &)7-vTy:Bw{gdD?U*}M yCJ5 X3༆GbFqLQYx<2mN6au"h%;* _Ѹ7Q9|1A_ }ti!}\mr4c;29m1:-8u~͗])Eɜ0QS !ha :-00 ?dF8nu^Y 1.Ei0 zھ^$ :TXr3Pgf=%Hքd%u7G#:^œ@CK-\ZP 84H<i|tsd`=TA%qDQdF:D=’ Bjcd2}ˣȝ-lJN!-6 !Nt `0ϩw Nvකw9[f$j܁c@YpwߪCmPBm~i}iZ^*^[Kv dmvM{ib[l D~7vv!exxj'fo-¢WD|$ <AtPɍ7J{G2ߺ"'"\,Nj| DƏ{ؘRWm-RR=/6؁j-bΐ86/]|ǢVqD[ 6ѝGiآ5wD/38@5d"hr!-R%h 1X,2A`u!a"P߯C n%}>0GD-|SokTQq&D֢Gj_E޵ZW>ĥ؍v3O`ZOe