pacemaker-cluster-libs-1.1.23-1.el7>t  DH`p_J$ƨpzP6śGܓ#~ab'JedzیJU-#Ƃǖ :o)i914Ic8w6*?[PQjGA+vt'fsn!ق LUgz2”fץ} {P:!N}%{Ɂ;2æ,` _O4BlQG/,( .!AU67b2840ee9245b26895dab8f89b03ed263d5cc99 _J$ƨ?tl0{Xs:J1 Z` &qkc=J ONoeD)w :@deR | f|*O¯.J&eb(PtMwYo|g7t4KXiվ}# DrpA \{ PG||JyF_=vqN(f*YIc ܉)z36^@E`9ϙҚLó*cHHV-&z$@p,vՍXΠiKB@dclJO4Hm:dYXkmH> N(¸opZh:(+^2&so>:D?4d  & JDH`dk~    ( D K h\%%%(89 :+\>@,G<HXItX|Y\]^Abdjeofrlttuvw|xy0Cpacemaker-cluster-libs1.1.231.el7Cluster Libraries used by PacemakerPacemaker is an advanced, scalable High-Availability cluster resource manager for Corosync, CMAN and/or Linux-HA. The pacemaker-cluster-libs package contains cluster-aware shared libraries needed for nodes that will form part of the cluster nodes._v x86-01.bsys.centos.orgCentOSGPLv2+ and LGPLv2+CentOS BuildSystem System Environment/Daemonshttp://www.clusterlabs.orglinuxx86_64PD֝gA큤A큤_v _v 2_v _v R_v R_v _v X9eeed5b27dfa5ee26aa2ac944eafc478a641144c73ee0271b6ab66b7ca56ecc01692e89a98d4e81037401e9dee476e71cf634880c36b4e25a2adffc3427dc57e415e75478c4d3ff0ab7dd812c2d1c9924b4a2478140adb281849d868f9f74f05592987e8510228d546540b84a22444bde98e48d03078d3b2eefcd889bec5ce8clibcrmcluster.so.4.3.5rootrootrootrootrootrootrootrootrootrootrootrootrootrootpacemaker-1.1.23-1.el7.src.rpmlibcrmcluster.so.4()(64bit)pacemaker-cluster-libspacemaker-cluster-libs(x86-64)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   @ /sbin/ldconfig/sbin/ldconfiglibbz2.so.1()(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libcfg.so.6()(64bit)libcmap.so.4()(64bit)libcmap.so.4(COROSYNC_CMAP_1.0)(64bit)libcorosync_common.so.4()(64bit)libcpg.so.4()(64bit)libcpg.so.4(COROSYNC_CPG_1.0)(64bit)libcrmcommon.so.3()(64bit)libcrmservice.so.3()(64bit)libdbus-1.so.3()(64bit)libdl.so.2()(64bit)libglib-2.0.so.0()(64bit)libgnutls.so.28()(64bit)libpam.so.0()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libqb.so.0()(64bit)libquorum.so.5()(64bit)libquorum.so.5(COROSYNC_QUORUM_1.0)(64bit)librt.so.1()(64bit)libstonithd.so.2()(64bit)libuuid.so.1()(64bit)libxml2.so.2()(64bit)libxslt.so.1()(64bit)pacemaker-libs(x86-64)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)rpmlib(PayloadIsXz)1.1.23-1.el73.0.4-14.6.0-14.0-15.2-14.11.3^V@^@^ P@]@]e@]@1@\\@\\|\T4[[r@[i[^[Xf@[E@[>@[*A[5@ZZk@Zhu@Z7Z/Z.s@Z ,@YZ@YZ@Y+@Y@YdYI@Y:Y$$@Y@XXX@XX9@X@X@XwoXX @WWWWWPWPWv[@WrfWj}WZWM|VŲ@VZVf@UYUpUUUU>Uyx@UQ@U hU hTTTTeT@TTuTk4TZ@TZ@TO@TN3TJ?@T?@T+TT @S@SO@SKS1oS1oSz@S(S S@Rb@RkR@R@R@R{Rz/@RR@REs@RNR q@R@R@Q@QMQMQMQdQQLQ@Qn@QnQ]k@Q]k@P)P\VP\VP H@Or@Or@O - 1.1.23-1Ken Gaillot - 1.1.22-1Ken Gaillot - 1.1.21-4Ken Gaillot - 1.1.21-3Ken Gaillot - 1.1.21-2Ken Gaillot - 1.1.21-1Ken Gaillot - 1.1.20-5Ken Gaillot - 1.1.20-4Ken Gaillot - 1.1.20-3Ken Gaillot - 1.1.20-2Ken Gaillot - 1.1.20-1Ken Gaillot - 1.1.19-8Ken Gaillot - 1.1.19-7Ken Gaillot - 1.1.19-6Ken Gaillot - 1.1.19-5Ken Gaillot - 1.1.19-4Ken Gaillot - 1.1.19-3Ken Gaillot - 1.1.19-2Ken Gaillot - 1.1.19-1Ken Gaillot - 1.1.18-13Ken Gaillot - 1.1.18-12Ken Gaillot - 1.1.18-11Ken Gaillot - 1.1.18-10Ken Gaillot - 1.1.18-9Ken Gaillot - 1.1.18-8Ken Gaillot - 1.1.18-7Ken Gaillot - 1.1.18-6Ken Gaillot - 1.1.18-5Ken Gaillot - 1.1.18-4Ken Gaillot - 1.1.18-3Ken Gaillot - 1.1.18-2Ken Gaillot - 1.1.18-1Ken Gaillot - 1.1.16-12Ken Gaillot - 1.1.16-11Ken Gaillot - 1.1.16-10Ken Gaillot - 1.1.16-9Ken Gaillot - 1.1.16-8Ken Gaillot - 1.1.16-7Ken Gaillot - 1.1.16-6Ken Gaillot - 1.1.16-5Ken Gaillot - 1.1.16-4Ken Gaillot - 1.1.16-3Ken Gaillot - 1.1.16-2Ken Gaillot - 1.1.16-1Ken Gaillot - 1.1.15-12Ken Gaillot - 1.1.15-11.1Ken Gaillot - 1.1.15-11Ken Gaillot - 1.1.15-10Ken Gaillot - 1.1.15-9Ken Gaillot - 1.1.15-8Ken Gaillot - 1.1.15-7Ken Gaillot - 1.1.15-6Ken Gaillot - 1.1.15-5Ken Gaillot - 1.1.15-4Ken Gaillot - 1.1.15-3Ken Gaillot - 1.1.15-2Ken Gaillot - 1.1.15-1Ken Gaillot - 1.1.14-11Andrew Beekhof - 1.1.13-10Andrew Beekhof - 1.1.13-9Andrew Beekhof - 1.1.13-8Andrew Beekhof - 1.1.13-7Andrew Beekhof - 1.1.13-6Andrew Beekhof - 1.1.13-5Andrew Beekhof - 1.1.13-4Andrew Beekhof - 1.1.13-3David Vossel - 1.1.13-2Andrew Beekhof - 1.1.13-0.1David Vossel - 1.1.12-25David Vossel - 1.1.12-23Andrew Beekhof - 1.1.12-22Andrew Beekhof - 1.1.12-21Andrew Beekhof - 1.1.12-20David Vossel - 1.1.12-19David Vossel - 1.1.12-18David Vossel - 1.1.12-15Andrew Beekhof - 1.1.12-13Andrew Beekhof - 1.1.12-11Andrew Beekhof - 1.1.12-10Andrew Beekhof - 1.1.12-9Andrew Beekhof - 1.1.12-8Andrew Beekhof - 1.1.12-7Andrew Beekhof - 1.1.12-5Andrew Beekhof - 1.1.12-4Andrew Beekhof - 1.1.12-3Fabio M. Di Nitto - 1.1.12-2Andrew Beekhof - 1.1.12-1Andrew Beekhof - 1.1.10-32David Vossel - 1.1.10-31Andrew Beekhof 1.1.10-30David Vossel - 1.1.10-29David Vossel - 1.1.10-28Andrew Beekhof - 1.1.10-27Andrew Beekhof - 1.1.10-26David Vossel - 1.1.10-25David Vossel - 1.1.10-24Andrew Beekhof - 1.1.10-23Daniel Mach - 1.1.10-22David Vossel - 1.1.10-21Andrew Beekhof - 1.1.10-20David Vossel - 1.1.10-19David Vossel - 1.1.10-18Andrew Beekhof - 1.1.10-17Andrew Beekhof - 1.1.10-16David Vossel - 1.1.10-15Andrew Beekhof - 1.1.10-14Andrew Beekhof - 1.1.10-13Andrew Beekhof - 1.1.10-12Andrew Beekhof - 1.1.10-11Andrew Beekhof - 1.1.10-10Andrew Beekhof - 1.1.10-9Andrew Beekhof - 1.1.10-8Andrew Beekhof - 1.1.10-7Andrew Beekhof Pacemaker-1.1.10-6Andrew Beekhof - 1.1.10-5David Vossel - 1.1.10-4Andrew Beekhof - 1.1.10-3Andrew Beekhof - 1.1.10-2Andrew Beekhof - 1.1.10-1David Vossel - 1.1.8-6David Vossel - 1.1.8-5Andrew Beekhof - 1.1.8-4Andrew Beekhof 1.1.8-3Andrew Beekhof 1.1.8-1Fedora Release Engineering - 1.1.7-2.1Andrew Beekhof Pacemaker-1.1.7-2Andrew Beekhof Pacemaker-1.1.7-1Andrew Beekhof 1.1.7-0.3-7742926.gitAndrew Beekhof 1.1.7-0.2-bc7c125.gitAndrew Beekhof 1.1.7-0.1-bc7c125.gitFedora Release Engineering - 1.1.6-3.1Andrew Beekhof 1.1.6-3Andrew Beekhof 1.1.6-2Andrew Beekhof 1.1.6-1Petr Sabata - 1.1.5-3.2Petr Sabata - 1.1.5-3.1Andrew Beekhof 1.1.5-3Marcela Mašláňová - 1.1.5-2.2Marcela Mašláňová - 1.1.5-2.1Andrew Beekhof 1.1.5-2Andrew Beekhof 1.1.5-1Fedora Release Engineering - 1.1.4-5.1Andrew Beekhof 1.1.4-5Fabio M. Di Nitto 1.1.4-4Fabio M. Di Nitto 1.1.4-3Fabio M. Di Nitto 1.1.4-2Andrew Beekhof 1.1.4-1jkeating - 1.1.3-1.1Andrew Beekhof - 1.1.3-1Andrew Beekhof - 1.1.3-0.1-b3cb4f4a30ae.hgDavid Malcolm - 1.1.2-5.1Dan Horák - 1.1.2-5Dan Horák - 1.1.2-4Andrew Beekhof - 1.1.2-3Andrew Beekhof - 1.1.2-2Marcela Maslanova - 1.1.2-1.1Andrew Beekhof - 1.1.2-1Andrew Beekhof - 1.1.1-0.1-60b7753f7310.hgAndrew Beekhof - 1.0.5-5Andrew Beekhof - 1.0.5-4Fabio M. Di Nitto - 1.0.5-3Tomas Mraz - 1.0.5-2.1Andrew Beekhof - 1.0.5-2Andrew Beekhof - 1.0.5-1Ville Skyttä - 1.0.5-0.7.c9120a53a6ae.hgAndrew Beekhof - 1.0.5-0.6.c9120a53a6ae.hgAndrew Beekhof - 1.0.5-0.5.c9120a53a6ae.hgAndrew Beekhof - 1.0.5-0.4.c9120a53a6ae.hgAndrew Beekhof - 1.0.4-3Andrew Beekhof - 1.0.4-2Andrew Beekhof - 1.0.4-1- Improve help for clean-up option - Avoid pending DC fencing getting "stuck" in status display - Rebase on upstream 1.1.23-rc1 - Resolves: rhbz#1758969 - Resolves: rhbz#1787749 - Resolves: rhbz#1792492- Show correct disabled resource count in status display - Run-time option for Pacemaker Remote bind address - Avoid restart loop when migration is left dangling - Improve help for clean-up option - Do not overweight group colocation scores - Rebase on upstream 1.1.22+63d2d79 - Resolves: rhbz#1458953 - Resolves: rhbz#1743373 - Resolves: rhbz#1757951 - Resolves: rhbz#1758969 - Resolves: rhbz#1760669 - Resolves: rhbz#1792492- Implement shutdown-lock feature - Resolves: rhbz#1781820- Avoid invalid transition when guest node's host is unclean but can't be fenced - Resolves: rhbz#1755659- Add latest upstream bug fixes to rebase roll-up patch - Resolves: rhbz#1731189- Recover from quiesced DC disk - Avoid timeouts and excessive stonithd CPU usage at start-up in large clusters - Default serialized order constraints to symmetrical=false - Avoid fence loops due to incorrect Pacemaker Remote ordering - Default concurrent-fencing to true - Harden GnuTLS priorities - Rebase on upstream 1.1.21 final version - Resolves: rhbz#1596125 - Resolves: rhbz#1625671 - Resolves: rhbz#1672225 - Resolves: rhbz#1704870 - Resolves: rhbz#1710422 - Resolves: rhbz#1727280 - Resolves: rhbz#1731189- Correct memory issue in fence agent output fix - Resolves: rhbz#1549366- Update security patches - Resolves: rhbz#1694556 - Resolves: rhbz#1694559 - Resolves: rhbz#1694907- Support more than 64KB of fence agent output - Avoid unnecessary recovery of group member - Improve IPC clients' authentication of servers (CVE-2018-16877) - Improve pacemakerd authentication of running subdaemons (CVE-2018-16878) - Fix use-after-free with potential information disclosure (CVE-2019-3885) - Resolves: rhbz#1549366 - Resolves: rhbz#1609453 - Resolves: rhbz#1694556 - Resolves: rhbz#1694559 - Resolves: rhbz#1694907- Assume unprivileged ACL if unable to get user information from host - Delay 2 seconds before re-attempting a failed node attribute write - SNMP alert sample script now sends all OIDs with every alert - Recover dependent resources correctly with asymmetric ordering - Rebase on upstream 1.1.20 final version - Resolves: rhbz#1596125 - Resolves: rhbz#1597695 - Resolves: rhbz#1608979 - Resolves: rhbz#1628966 - Resolves: rhbz#1644864- pcs status now shows when a standby node still has active resources - Allow clean-up of guest nodes and bundles without unmanaging first - pcs status now shows pending and failed fence actions by default - Improve pcs status display when disconnected from cluster - Ensure node attributes are recorded if attrd writer is shutting down - Synchronize fencing history across all nodes - Add stonith_admin option to clear fencing history - Don't schedule unneeded bundle actions when connection is on different node - Allow use of sbd in clusters with guest nodes and bundles - Schedule bundle clone notifications correctly when connection is moving - Rebase on upstream 1.1.20-rc1 version - Avoid unneeded resource restarts when remote connection fails to start - Allow crm_resource --move to work when a previous move had a lifetime - Wait for all replies when refreshing a resource - Don't schedule clone notifications for a stopped bundle - Allow option to crm_resource --clear to clear only expired constraints - Fix result reporting when cleanup is done while an operation is in-flight - Resolves: rhbz#1419548 - Resolves: rhbz#1448467 - Resolves: rhbz#1461964 - Resolves: rhbz#1486869 - Resolves: rhbz#1535221 - Resolves: rhbz#1555938 - Resolves: rhbz#1595422 - Resolves: rhbz#1627948 - Resolves: rhbz#1638593 - Resolves: rhbz#1644076 - Resolves: rhbz#1644864 - Resolves: rhbz#1648507 - Resolves: rhbz#1648620 - Resolves: rhbz#1652053 - Resolves: rhbz#1652752 - Resolves: rhbz#1658650 - Resolves: rhbz#1665343- Ensure crm_resource --force-* commands get stderr messages - Resolves: rhbz#1628947- Shutdown corosync locally if fenced - Count start failure once - Resolves: rhbz#1448221 - Resolves: rhbz#1549576- Fix pre-release regressions in resource clean-up behavior - Resolves: rhbz#1612869- Another fix for srpm build on ppc64le systems with OpenIPMI-devel - Resolves: rhbz#1478451- Fix srpm build on ppc64le systems with libservicelog-devel, OpenIPMI-devel - Resolves: rhbz#1478451- Rebase to upstream c3c624ea3d98a74a8a287671a156db126c99a7bb (1.1.19) - Resolves: rhbz#1562255- Ensure resource agent meta-data actions can get local node name - Do not record pending clone notifications in CIB - Resolves: rhbz#1374175 - Resolves: rhbz#1570130- Rebase to upstream 29ac12ad21f73524f69c0580798e07cdf1fe3fa0 (1.1.19-rc1) - Allow crm_node to work on Pacemaker Remote nodes - Implement new --validate option to stonith_admin - Support .path, .mount, and .timer systemd unit files as resources - Handle INFINITY fail count correctly in crm_failcount - Resolves: rhbz#1374175 - Resolves: rhbz#1434936 - Resolves: rhbz#1562255 - Resolves: rhbz#1590483 - Resolves: rhbz#1591045- Pull latest upstream 1.1 branch fixes - Resolves: rhbz#1478451 - Resolves: rhbz#1501505 - Resolves: rhbz#1514492 - Resolves: rhbz#1550829 - Resolves: rhbz#1564536 - Resolves: rhbz#1576148 - Resolves: rhbz#1577300- Pull in latest fixes from upstream 1.1 branch - Build for aarch64 - Resolves: rhbz#1422602 - Resolves: rhbz#1463015 - Resolves: rhbz#1469255 - Resolves: rhbz#1519379 - Resolves: rhbz#1543278 - Resolves: rhbz#1545449 - Resolves: rhbz#1550829 - Resolves: rhbz#1561617 - Resolves: rhbz#1562255 - Resolves: rhbz#1565187 - Resolves: rhbz#1568593 - Resolves: rhbz#1570130- Fix regression in crm_master - Resolves: rhbz#1539113- Always trigger transition when quorum changes - Match clone names correctly with crm_resource --cleanup - Fix pcs resource --wait timeout when bundles are used - Observe colocation constraints correctly with bundles in master role - Resolves: rhbz#1464068 - Resolves: rhbz#1508350 - Resolves: rhbz#1519812 - Resolves: rhbz#1527072- Fix small memory leak introduced by node attribute delay fix - Resolves: rhbz#1454960- Regression fix for "pcs resource cleanup" was incomplete - Resolves: rhbz#1508350- Avoid node attribute write delay when corosync.conf has only IP addresses - Fix regressions in "pcs resource cleanup" behavior - Restore ordering of unfencing before fence device starts - Ensure --wait options work when bundles are in use - Fix possible invalid transition with bundle ordering constraints - Resolves: rhbz#1454960 - Resolves: rhbz#1508350 - Resolves: rhbz#1517796 - Resolves: rhbz#1519812 - Resolves: rhbz#1522822- Rebase to upstream 2b07d5c5a908998891c3317faa30328c108d3a91 (1.1.18) - If on-fail=ignore, migration-threshold should also be ignored - Resolves: rhbz#1474428 - Resolves: rhbz#1507344- Properly clean up primitive inside bundle - Scalability improvements - Resolves: rhbz#1499217 - Resolves: rhbz#1508373- Rebase to upstream 1a4ef7d180e77bcd6423f342d62e05e516c4e852 (1.1.18-rc4) - Resolves: rhbz#1381754 - Resolves: rhbz#1474428 - Resolves: rhbz#1499217 - Resolves: rhbz#1508373- Rebase to upstream 36d2962a8613322fc43d727d95720d61a47d0138 (1.1.18-rc3) - Resolves: rhbz#1474428- Rebase to upstream 5cccc41c95d6288eab27d93901b650b071f976dc (1.1.18-rc2) - Default record-pending to true - Resolves: rhbz#1323546 - Resolves: rhbz#1376556 - Resolves: rhbz#1382364 - Resolves: rhbz#1461976 - Resolves: rhbz#1474428 - Resolves: rhbz#1500509 - Resolves: rhbz#1501903 - Resolves: rhbz#1501924- Rebase to upstream 1cb712c5369c98f03d42bcf8648cacd86a5f48f7 (1.1.18-rc1) - Resolves: rhbz#1298581 - Resolves: rhbz#1394418 - Resolves: rhbz#1427648 - Resolves: rhbz#1454933 - Resolves: rhbz#1454957 - Resolves: rhbz#1454960 - Resolves: rhbz#1462253 - Resolves: rhbz#1464068 - Resolves: rhbz#1465519 - Resolves: rhbz#1470262 - Resolves: rhbz#1471506 - Resolves: rhbz#1474428 - Resolves: rhbz#1474463 - Resolves: rhbz#1482278 - Resolves: rhbz#1489728 - Resolves: rhbz#1489735- Avoid unnecessary restarts when recovering remote connections - Resolves: rhbz#1448773- Support bundle meta-attributes - Resolves: rhbz#1447903- Fix issues when running bundles on Pacemaker Remote nodes - Reap orphaned processes when running Pacemaker Remote as pid 1 - Order remote actions after remote connection recovery (fixes regression in RHEL 7.3) - Avoid local resource manager daemon (lrmd) crash when an in-flight systemd operation is cancelled - Resolves: rhbz#1432722 - Resolves: rhbz#1441603 - Resolves: rhbz#1448772 - Resolves: rhbz#1451170- Allow cleanup of guest nodes when guest is unmanaged - Allow bundles to run on Pacemaker Remote nodes - Handle slow IPC clients better - Update crmd throttle information when CPUs are hot-plugged in - Order pacemaker systemd unit after resource-agents-deps target - Resolves: rhbz#1303742 - Resolves: rhbz#1432722 - Resolves: rhbz#1435067 - Resolves: rhbz#1444728 - Resolves: rhbz#1446669- Fix shell script syntax error introduced with URL patch - Resolves: rhbz#1410886- Avoid fencing old DC if it is shutting down while another node is joining - Improve crmd's handling of repeated fencing failures - Correct behavior when guest created by bundle has a node attribute - Show Red Hat bugzilla URL rather than upstream when generating cluster report - Resolves: rhbz#1430112 - Resolves: rhbz#1432722- Allow container without IP to use underlying hostname - Resolves: rhbz#1432722- Keep man pages compressed - Bugfixes for container bundles - Resolves: rhbz#1410886 - Resolves: rhbz#1432722- Add support for container bundles - Treat systemd reloading state as monitor success - Resolves: rhbz#1432722 - Resolves: rhbz#1436696- Avoid hang when shutting down unmanaged remote node connections - Get correct node name when crm_node or crm_attribute is run on remote node - Ignore action when configured as a stonith device parameter - Include recent upstream bug fixes - Resolves: rhbz#1388489 - Resolves: rhbz#1410886 - Resolves: rhbz#1417936 - Resolves: rhbz#1421700- Avoid grep crashes in crm_report when looking for system logs - Properly ignore version with crm_diff --no-version - Process guest node fencing properly - Ensure filename is valid before using - Build for ppc64le - Resolves: rhbz#1288261 - Resolves: rhbz#1289662 - Resolves: rhbz#1383462 - Resolves: rhbz#1405635 - Resolves: rhbz#1412309- Rebase to upstream 94ff4df51a55cc30d01843ea11b3292bac755432 (1.1.16) - Resolves: rhbz#1374777 - Resolves: rhbz#1378817 - Resolves: rhbz#1410886- Preserve rolling upgrades involving Pacemaker Remote nodes - Resolves: rhbz#1388827- Fix CVE-2016-7035 - Resolves: rhbz#1374776- Sanitize readable CIB output collected by crm_report - Document crm_report --sos-mode option - Speed up crm_report on Pacemaker Remote nodes - Avoid sbd fencing when upgrading pacemaker_remote package - Resolves: rhbz#1219188 - Resolves: rhbz#1235434 - Resolves: rhbz#1323544 - Resolves: rhbz#1372009- Only clear remote node operation history on startup - Resend a lost shutdown request - Correctly detect and report invalid configurations - Don't include manual page for resource agent that isn't included - Resolves: rhbz#1288929 - Resolves: rhbz#1310486 - Resolves: rhbz#1352039- Make crm_mon XML schema handle multiple-active resources - Resolves: rhbz#1364500- Quote timestamp-format correctly in alert_snmp.sh.sample - Unregister CIB callbacks correctly - Print resources section heading consistently in crm_mon output - Resolves: rhbz#773656 - Resolves: rhbz#1361533- Avoid null dereference - Resolves: rhbz#1290592- Fix transition failure with start-then-stop order constraint + unfencing - Resolves: rhbz#1290592- Update spec file for toolchain hardening - Resolves: rhbz#1242258- Take advantage of toolchain hardening - Resolves: rhbz#1242258- Rebase to upstream e174ec84857e087210b9dacee3318f8203176129 (1.1.15) - Resolves: rhbz#1304771 Resolves: rhbz#1303765 Resolves: rhbz#1327469 Resolves: rhbz#1337688 Resolves: rhbz#1345876 Resolves: rhbz#1346726- Rebase to upstream 25920dbdbc7594fc944a963036996f724c63a8b8 (1.1.15-rc4) - Resolves: rhbz#1304771 Resolves: rhbz#773656 Resolves: rhbz#1240330 Resolves: rhbz#1281450 Resolves: rhbz#1286316 Resolves: rhbz#1287315 Resolves: rhbz#1323544- Rebase to upstream 2c148ac30dfcc2cfb91dc367ed469b6f227a8abc (1.1.15-rc3+) - Resolves: rhbz#1304771 Resolves: rhbz#1040685 Resolves: rhbz#1219188 Resolves: rhbz#1235434 Resolves: rhbz#1268313 Resolves: rhbz#1284069 Resolves: rhbz#1287868 Resolves: rhbz#1288929 Resolves: rhbz#1312094 Resolves: rhbz#1314157 Resolves: rhbz#1321711 Resolves: rhbz#1338623- Rebase to upstream 2cccd43d6b7f2525d406251e14ef37626e29c51f (1.1.14+) - Resolves: rhbz#1304771 Resolves: rhbz#1207388 Resolves: rhbz#1240330 Resolves: rhbz#1281450 Resolves: rhbz#1284069 Resolves: rhbz#1286316 Resolves: rhbz#1287315 Resolves: rhbz#1287868 Resolves: rhbz#1288929 Resolves: rhbz#1303765 - This also updates the packaging to follow upstream more closely, most importantly moving some files from the pacemaker package to pacemaker-cli (including XML schemas, SNMP MIB, attrd_updater command, most ocf:pacemaker resource agents, and related man pages), and deploying /etc/sysconfig/crm_mon.- More improvements when updating and deleting meta attributes - Resolves: rhbz#1267265- Fix regression when updating child meta attributes - Resolves: rhbz#1267265- Fix regression when setting attributes for remote nodes - Resolves: rhbz#1206647- Additional upstream patches - Resolves: rhbz#1234680- Correctly apply and build patches - Resolves: rhbz#1234680- Sync with upstream 63f8e9a - Resolves: rhbz#1234680- Sync with upstream 63f8e9a - Resolves: rhbz#1234680- New upstream tarball 44eb2ddf8d4f8fc05256aae2abc9fbf3ae4d1fbc - Resolves: rhbz#1234680- Adds nagios metadata. Resolves: rhbz#1203053- New upstream tarball 8ae45302394b039fb098e150f156df29fc0cb576- Convince systemd to shutdown dbus after pacemaker. Resolves: rhbz#1198886- Ensure B with A, that B can not run if A can not run. Resolves: rhbz#1194475- Fix segfault encountered with orphaned remote node connections Resolves: rhbz#1176210- Fix use-after-free in CLI tool when restarting a resource- Expose the -N/--node option for attrd_updater to allow attributes to be set for other nodes- Imply stop on actions within containers during host fencing - acl correctly implement the reference acl direct Resolves: rhbz#1117341- clone order constraint require-all option. - fix memory leaks in crmd and pacemakerd Resolves: rhbz#1176210- Include ipc and pacemaker remote related upstream fixes.- Update patch level to upstream a433de6 - Ensure we wait for long running systemd stop operations to complete Resolves: rhbz#1165423- Update patch level to upstream 7dd9022 - Ensure all internal caches are updated when nodes are removed from the cluster Resolves: rhbz#1162727- Update patch level to upstream 98b6688 - Support an intelligent resource restart operation - Exclusive discovery implies running the resource is only possible on the listed nodes- Update patch level to upstream fb94901 - Prevent blocking by performing systemd reloads asynchronously- Repair the ability to start when sbd is not enabled- Update patch level to upstream afa0f33 - Resolve coverity defects- Update patch level to upstream 031e46c - Prevent glib assert triggered by timers being removed from mainloop more than once - Allow rsc discovery to be disabled in certain situations - Allow remote-nodes to be placed in maintenance mode - Improved sbd integration- Add install dependancy on sbd- Update patch level to upstream be1e835 Resolves: rhbz#1147989- Enable build on s390x Resolves: rhbz#1140917- Rebase to upstream a14efad51ca8f1e3742fd8520e051cd7a0864f04 (1.1.12+) Resolves: rhbz#1059626- Fix: lrmd: Handle systemd reporting 'done' before a resource is actually stopped Resolves: rhbz#1111747- fencing: Fence using all required devices - fencing: Execute all required fencing devices regardless of what topology level they are at - fencing: default to 'off' when agent does not advertise 'reboot' in metadata Resolves: rhbz#1078078- crmd: Do not erase the status section for unfenced nodes - crmd: Correctly react to successful unfencing operations - crmd: Report unsuccessful unfencing operations - crmd: Do not overwrite existing node state when fencing completes - fencing: Correctly record which peer performed the fencing operation - fencing: Automatically switch from 'list' to 'status' to 'static-list' if those actions are not advertised in the metadata - fencing: Filter self-fencing at the peers to allow unfencing to work correctly - pengine: Automatically re-unfence a node if the fencing device definition changes - pengine: Fencing devices default to only requiring quorum in order to start - pengine: Delay unfencing until after we know the state of all resources that require unfencing - pengine: Ensure unfencing occurs before fencing devices are (re-)probed - pengine: Ensure unfencing only happens once, even if the transition is interrupted - pengine: Do not unfence nodes that are offline, unclean or shutting down - pengine: Unfencing is based on device probes, there is no need to unfence when normal resources are found active - logging: daemons always get a log file, unless explicitly set to configured 'none' - lrmd: Expose logging variables expected by OCF agents - crm_report: Suppress logging errors after the target directory has been compressed - crm_resource: Wait for the correct number of replies when cleaning up resources Resolves: rhbz#1078078- Low: controld: Remove '-q 0' from default dlm_controld arguments Resolves: rhbz#1064519- pengine: fixes invalid transition caused by clones with more than 10 instances Resolves: rhbz#1078504- crm_resource: Prevent use-of-NULL - systemd: Prevent use-of-NULL when determining if an agent exists - Fencing: Remove shadow definition and use of variable 'progress' Resolves: rhbz#1070916- Run automated regression tests after every build - Fencing: Send details of stonith_api_time() and stonith_api_kick() to syslog - Fencing: Pass the correct options when looking up the history by node name - Fencing: stonith_api_time_helper now returns when the most recent fencing operation completed - crm_report: Additional dlm detail if dlm_controld is running - crmd: Gracefully handle actions that cannot be initiated - pengine: Gracefully handle bad values for XML_ATTR_TRANSITION_MAGIC Resolves: rhbz#1070916- pengine: cl#5187 - Prevent resources in an anti-colocation from even temporarily running on a same node Resolves: rhbz#1069284- controld: handling startup fencing within the controld agent, not the dlm Resolves: rhbz#1064519 - controld: Do not consider the dlm up until the address list is present Resolves: rhbz#1067536- mcp: Tell systemd not to respawn us if we return 100 - services: Detect missing agents and permission errors before forking - Use native DBus library for systemd support to avoid problematic use of threads Resolves: rhbz#720543 (aka. 1057697)- Mass rebuild 2013-12-27- Fix: Removes unnecessary newlines in crm_resource -O output Resolves: rhbz#720543- Fix: tools: Fixes formatting of remote-nodes in crm_mon and crm_simulate - Fix: Corosync: Attempt to retrieve a peers node name if it is not already known Resolves: rhbz#720543- Fix: controld: Use the correct variant of dlm_controld for corosync-2 clusters Resolves: rhbz#1028627- High: remote: Add support for ipv6 into pacemaker_remote daemon Resolves: rhbz#720543Resolves: rhbz#720543 - Fix: core: Do not enabled blackbox for cli tools - Fix: Command-line tools should stop after an assertion failure - Fix: crmd: Dont add node_state to cib, if we have not seen or fenced this node yet - Fix: crmd: Correctly update expected state when the previous DC shuts down - Fix: crmd: Cache rsc_info retrieved from lrmd and pacemaker_remoted - Fix: crmd: Pad internal lrmd rsc_info and metadata retrieval timeout - Fix: crm_attribute: Detect orphaned remote-nodes when setting attributes - Fix: crm_mon: Prevent use-of-NULL when ping resources do not define a host list - Fix: crm_report: Record the output of the collector - Fix: crm_report: Do not print garbage when collecting from the local node - Fix: crm_resource: Wait for all replies when cleaning up resources - Fix: fencing: Do not broadcast suicide if the on action is being executed - Fix: fencing: Allow fencing for node after topology entries are deleted - Fix: fencing: Deep copy current topology level list on remote op - Fix: lrmd: Correctly cancel monitor actions for lsb/systemd/service resources on cleaning up - Fix: pengine: Dont prevent clones from running due to dependant resources - Fix: pengine: Probe containers not expected to be up - Fix: ipc: Raise the default buffer size to 128k - Fix: ipc: Use the higher of the configured buffer size or the default - Fix: iso8601: Prevent dates from jumping backwards a day in some timezones - Fix: remote: Properly version the remote connection protocol - Fix: remote: Handle endian changes between client and server and improve forward compatibility Resolves: rhbz#720543- Remove unsupported resource agent - Log: crmd: Supply arguments in the correct order - Fix: crm_report: Correctly redirect error message to /dev/null - Fix: Bug rhbz#1011618 - Consistently use 'Slave' as the role for unpromoted master/slave resources - Fix: pengine: Location constraints with role=Started should prevent masters from running at all - Fix: crm_resource: Observe --master modifier for --move - Provide a meaningful error if --master is used for primitives and groups - Fix: Fencing: Observe pcmk_host_list during automatic unfencing Resolves: rhbz#996576+ Fix: crmd: Allow transient attributes to be set on remote-nodes. + Fix: pengine: Handle orphaned remote-nodes properly + Low: cts: Add RemoteLXC regression test. Resolves: rhbz#1006465 Resolves: rhbz#1006471+ Fix: xml: Location constraints are allowed to specify a role + Bug rhbz#902407 - crm_resource: Handle --ban for master/slave resources as advertised Resolves: rhbz#902407+ Fencing: Support agents that need the host to be unfenced at startup Resolves: rhbz#996576 + crm_report: Collect corosync quorum data Resolves: rhbz#839342- Regenerate patches to have meaningful names+ Fix: systemd: Prevent glib assertion - only call g_error_free() with non-NULL arguments + Fix: systemd: Prevent additional assertions in g_error_free + Fix: logging: glib CRIT messages should not produce core files by default + Doc: controld: Update the description + Fix: pengine: Correctly account for the location preferences of things colocated with a group + Fix: cib: Correctly log short-form xml diffs + Fix: crmd: Correcty update the history cache when recurring ops change their return code + Log: pengine: Better indicate when a resource has failed + Log: crm_mon: Unmunge the output for failed operations+ Fix: pengine: Do not re-allocate clone instances that are blocked in the Stopped state + Fix: pengine: Do not allow colocation with blocked clone instances+ Fix: crmd: Prevent crash by passing log arguments in the correct order+ Fix: pengine: Do not restart resources that depend on unmanaged resources+ Fix: crmd: Prevent recurring monitors being cancelled due to notify operations- Update source tarball to revision: 368c726 (Pacemaker-1.1.10-rc7) - Changesets: 18 - Diff: 9 files changed, 245 insertions(+), 170 deletions(-) - Features added since Pacemaker-1.1.10-rc7 + crm_resource: Allow options to be set recursively - Changes since Pacemaker-1.1.10-rc7 + Bug cl#5161 - crmd: Prevent memory leak in operation cache + cib: Correctly read back archived configurations if the primary is corrupted- Streamline spec file - Upstream patch for: + cman: Only build migration tools for targets that may use them + cib: Ensure we set up hacluster's groups in stand-alone mode - Update for new upstream tarball: Pacemaker-1.1.10-rc7 + Bug cl#5157 - Allow migration in the absence of some colocation constraints + Bug cl#5168 - Prevent clones from being bounced around the cluster due to location constraints + Bug cl#5170 - Correctly support on-fail=block for clones + crmd: CID#1036761 Dereference null return value + crmd: cl#5164 - Fixes crmd crash when using pacemaker-remote + crmd: Ensure operations for cleaned up resources don't block recovery + crmd: Prevent messages for remote crmd clients from being relayed to wrong daemons + crmd: Properly handle recurring monitor operations for remote-node agent + fencing: Correctly detect existing device entries when registering a new one + logging: If SIGTRAP is sent before tracing is turned on, turn it on + lrmd: Prevent use-of-NULL in client library + pengine: cl#5128 - Support maintenance mode for a single node + pengine: cl#5164 - Pengine segfault when calculating transition with remote-nodes. + pengine: Do the right thing when admins specify the internal resource instead of the clone + systemd: Turn off auto-respawning of systemd services when the cluster starts them- Fixes crmd crash when using pacemaker_remote.- Update to upstream 838e41e + Feature: pengine: Allow active nodes in our current membership to be fenced without quorum + Fix: attrd: Fixes deleted attributes during dc election + Fix: corosync: Fall back to uname for local nodes + Fix: crm_report: Find logs in compressed files + Fix: pengine: If fencing is unavailable or disabled, block further recovery for resources that fail to stop + Fix: systemd: Ensure we get shut down correctly by systemd- Update for new upstream tarball: Pacemaker-1.1.10-rc4 - Features in Pacemaker-1.1.10-rc4: + PE: Display a list of nodes on which stopped anonymous clones are not active instead of meaningless clone IDs + crm_error: Add the ability to list and print error symbols + crm_resource: Implement --ban for moving resources away from nodes and --clear (replaces --unmove) + crm_resource: Support OCF tracing when using --force-(check|start|stop) - Changes since Pacemaker-1.1.10-rc1 + Bug cl#5133 - pengine: Correctly observe on-fail=block for failed demote operation + Bug cl#5152 - Correctly clean up fenced nodes during membership changes + Bug cl#5153 - Correctly display clone failcounts in crm_mon + Bug cl#5154 - Do not expire failures when on-fail=block is present + Bug pengine: cl#5155 - Block the stop of resources if any depending resource is unmanaged + crm_report: Correctly collect logs when 'uname -n' reports fully qualified names + Check for and replace non-printing characters with their octal equivalent while exporting xml text + Convert all exit codes to positive errno values + Core: Ensure the blackbox is saved on abnormal program termination + corosync: Detect the loss of members for which we only know the nodeid + corosync: Nodes that can persist in sending CPG messages must be alive afterall + crmd: Do not get stuck in S_POLICY_ENGINE if a node we couldn't fence returns + crmd: Ensure all membership operations can complete while trying to cancel a transition + crmd: Everyone who gets a fencing notification should mark the node as down + crmd: Initiate node shutdown if another node claims to have successfully fenced us + crm_resource: Gracefully fail when --force-* is attempted for stonith resources + fencing: Restore the ability to manually confirm that fencing completed + pengine: Correctly handle resources that recover before we operate on them + pengine: Ensure per-node resource parameters are used during probes + pengine: Implement the rest of get_timet_now() and rename to get_effective_time + pengine: Mark unrunnable stop actions as "blocked" + pengine: Re-initiate active recurring monitors that previously failed but have timed out + xml: Restore the ability to embed comments in the cib- Update for new upstream tarball: Pacemaker-1.1.10-rc1 - Features added since Pacemaker-1.1.8 + Performance enhancements for supporting 16 node clusters + corosync: Use queues to avoid blocking when sending CPG messages + ipc: Compress messages that exceed the configured IPC message limit + ipc: Use queues to prevent slow clients from blocking the server + ipc: Use shared memory by default + lrmd: Support nagios remote monitoring + lrmd: Pacemaker Remote Daemon for extending pacemaker functionality outside corosync cluster. + pengine: Check for master/slave resources that are not OCF agents + pengine: Support a 'requires' resource meta-attribute for controlling whether it needs quorum, fencing or nothing + pengine: Support for resource containers + pengine: Support resources that require unfencing before start - Changes since Pacemaker-1.1.8 + attrd: Correctly handle deletion of non-existant attributes + Bug cl#5135 - Improved detection of the active cluster type + Bug rhbz#913093 - Use crm_node instead of uname + cib: Prevent ordering changes when applying xml diffs + cib: Remove text nodes from cib replace operations + crmd: Prevent election storms caused by getrusage() values being too close + date/time: Bug cl#5118 - Correctly convert seconds-since-epoch to the current time + fencing: Attempt to provide more information that just 'generic error' for failed actions + fencing: Correctly record completed but previously unknown fencing operations + fencing: Correctly terminate when all device options have been exhausted + fencing: cov#739453 - String not null terminated + fencing: Do not merge new fencing requests with stale ones from dead nodes + fencing: Do not start fencing until entire device topology is found or query results timeout. + fencing: Do not wait for the query timeout if all replies have arrived + fencing: Fix passing of parameters from CMAN containing '=' + fencing: Fix non-comparison when sorting devices by priority + fencing: On failure, only try a topology device once from the remote level. + fencing: Only try peers for non-topology based operations once + fencing: Retry stonith device for duration of action's timeout period. + ipc: Bug cl#5110 - Prevent 100% CPU usage when looking for synchronous replies + mcp: Re-attach to existing pacemaker components when mcp fails + pengine: Any location constraint for the slave role applies to all roles + pengine: Bug cl#5101 - Ensure stop order is preserved for partially active groups + pengine: Bug cl#5140 - Allow set members to be stopped when the subseqent set has require-all=false + pengine: Bug cl#5143 - Prevent shuffling of anonymous master/slave instances + pengine: Bug rhbz#880249 - Ensure orphan masters are demoted before being stopped + pengine: Bug rhbz#880249 - Teach the PE how to recover masters into primitives + pengine: cl#5025 - Automatically clear failcount for start/monitor failures after resource parameters change + pengine: cl#5099 - Probe operation uses the timeout value from the minimum interval monitor by default (#bnc776386) + pengine: cl#5111 - When clone/master child rsc has on-fail=stop, insure all children stop on failure. + pengine: cl#5142 - Do not delete orphaned children of an anonymous clone + pengine: Correctly unpack active anonymous clones + pengine: Ensure previous migrations are closed out before attempting another one + pengine: rhbz#902459 - Remove rsc node status for orphan resources + Replace the use of the insecure mktemp(3) with mkstemp(3)Fixes depreciated use of gnutls 3.1Rebuilt for gnutls 3.1- Update for new upstream tarball: 5db5f53 + High: mcp: Re-attach to existing pacemaker components when pacemakerd fails + High: pengine: cl#5111 - When clone/master child rsc has on-fail=stop, insure all children stop on failure. + High: Replace the use of the insecure mktemp(3) with mkstemp(3) + High: Core: Correctly process XML diff's involving element removal + High: PE: Correctly unpack active anonymous clones + High: PE: Fix clone_zero() and clone_strip() for single character resource names + High: IPC: Bug cl#5110 - Prevent 100% CPU usage when looking for synchronous replies + High: PE: Bug cl#5101 - Ensure stop order is preserved for partially active groups + High: fencing: On failure, only try a topology device once from the remote level. + High: fencing: Retry stonith device for duration of action's timeout period. + High: PE: Fix memory leak on processing message (bnc#780224) + High: fencing: Support 'on_target' option in fencing device metadata for forcing unfence on target node + High: PE: Support resources that require unfencing before start + High: PE: Support a 'requires' resource meta-attribute for controlling whether it needs quorum, fencing or nothing + High: mcp: Only define HA_DEBUGLOG to avoid agent calls to ocf_log printing everything twice + High: fencing: Do not start fencing until entire device topology is found or query results timeout. + High: Cluster: Allow cman and corosync 2.0 nodes to use a name other than uname()- Only build for i386 and x86_64 as directed- Rebuild for upstream 1.1.8 release - Documentation disabled pending a functional publican/ImageMagick combination - Statistics: Changesets: 1019 Diff: 2107 files changed, 117258 insertions(+), 73606 deletions(-) - See included ChangeLog file or https://raw.github.com/ClusterLabs/pacemaker/master/ChangeLog for full details + New IPC implementation from libqb + New logging implementation from libqb + Quieter - info, debug and trace logs are no longer sent to syslog + Dropped dependancy on cluster-glue + Config and core directories no longer located in heartbeat directories + Support for managing systemd services + Rewritten local resource management daemon + Version bumps for every shared library due to API cleanups + Removes crm shell, install/use pcs shell and GUI instead- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild- Reinstate the ghost directive for /var/run/crm- Update source tarball to upstream release: Pacemaker-1.1.7 - See included ChangeLog file or https://raw.github.com/ClusterLabs/pacemaker/master/ChangeLog for details- New upstream tarball: 7742926 - Additional Provides and Obsoletes directives to enable upgrading from heartbeat - Rebuild now that the Corosync CFG API has been removed- Additional Provides and Obsoletes directives to enable upgrading from rgmanager- New upstream tarball: bc7c125 - Pre-release 1.1.7 build to deal with the removal of cman and support for corosync plugins - Add libqb as a dependancy- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild- New upstream tarball: 89678d4 - Move man pages to the correct subpackages- Do not build in support for heartbeat, snmp, esmtp by default - Create a package for cluster unaware libraries to minimze our footprint on non-cluster nodes - Better package descriptions- Upstream release of 1.1.6 - See included ChangeLog file or http://hg.clusterlabs.org/pacemaker/1.1/file/tip/ChangeLog for details - Disabled eSMTP and SNMP support. Painful to configure and rarely used. - Created cli sub-package for non-cluster usage- Perl mass rebuild- Perl mass rebuild- Rebuild for new snmp .so- Perl mass rebuild- Perl 5.14 mass rebuild- Mark /var/run directories with ghost directive Resolves: rhbz#656654- New upstream release plus patches for CMAN integration- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild- Re-enable corosync and heartbeat support with correct bcond variable usage- Temporary drop publican doc build- Fix publican build on x86- Drop double source entry and 22Mb from the srpm- Upstream release of 1.1.4 - See included ChangeLog file or http://hg.clusterlabs.org/pacemaker/1.1/file/tip/ChangeLog for details- Rebuilt for gcc bug 634757- Upstream release of 1.1.3 + High: crmd: Use the correct define/size for lrm resource IDs + High: crmd: Bug lf#2458 - Ensure stop actions always have the relevant resource attributes + High: crmd: Ensure we activate the DC timer if we detect an alternate DC + High: mcp: Correctly initialize the string containing the list of active daemons + High: mcp: Fix the expansion of the pid file in the init script + High: mcp: Tell chkconfig we need to shut down early on + High: PE: Bug lf#2476 - Repair on-fail=block for groups and primitive resources + High: PE: Do not demote resources because something that requires it can't run + High: PE: Rewrite the ordering constraint logic to be simplicity, clarity and maintainability + High: PE: Wait until stonith is available, don't fall back to shutdown for nodes requesting termination + High: PE: Prevent segfault by ensuring the arguments to do_calculations() are initialized + High: stonith: Bug lf#2461 - Prevent segfault by not looking up operations if the hashtable hasn't been initialized yet + High: Stonith: Bug lf#2473 - Ensure stonith operations complete within the timeout and are terminated if they run too long + High: stonith: Bug lf#2473 - Gracefully handle remote operations that arrive late (after we've done notifications) + High: stonith: Bug lf#2473 - Add the timeout at the top level where the daemon is looking for it + High: stonith: Bug lf#2473 - Ensure timeouts are included for fencing operations + High: Stonith: Use the timeout specified by the user + High: Tools: Bug lf#2456 - Fix assertion failure in crm_resource- Pre-release version of 1.1.3 + High: ais: Bug lf2401 - Improved processing when the peer crmd processes join/leave + High: ais: fix list of active processes sent to clients (bnc#603685) + High: ais: Move the code for finding uid before the fork so that the child does no logging + High: ais: Resolve coverity CONSTANT_EXPRESSION_RESULT defects + High: cib: Also free query result for xpath operations that return more than one hit + High: cib: Attempt to resolve memory corruption when forking a child to write the cib to disk + High: cib: Correctly free memory when writing out the cib to disk + High: cib: Fix the application of unversioned diffs + High: cib: Remove old developmental error logging + High: cib: Restructure the 'valid peer' check for deciding which instructions to ignore + High: Core: Bug lf#2401 - Backed out changeset 6e6980376f01 + High: Core: Correctly unpack HA_Messages containing multiple entries with the same name + High: Core: crm_count_member() should only track nodes that have the full stack up + High: Core: New developmental logging system inspired by the kernel and a PoC from Lars Ellenberg + High: crmd: All nodes should see status updates, not just he DC + High: crmd: Allow non-DC nodes to clear failcounts too + High: crmd: Base DC election on process relative uptime + High: crmd: Bug lf#2439 - cancel_op() can also return HA_RSCBUSY + High: crmd: Bug lf#2439 - Handle asynchronous notification of resource deletion events + High: crmd: Fix assertion failure when performing async resource failures + High: crmd: Fix handling of async resource deletion results + High: crmd: Include the action for crm graph operations + High: crmd: Make sure the membership cache is accurate after a sucessful fencing operation + High: crmd: Make sure we always poke the FSA after a transition to clear any TE_HALT actions + High: crmd: Offer crm-level membership once the peer starts the crmd process + High: crmd: Only need to request quorum update for plugin based clusters + High: crmd: Prevent everyone from loosing DC elections by correctly initializing all relevant variables + High: crmd: Prevent segmentation fault + High: crmd: several fixes for async resource delete + High: mcp: Add missing headers when built without heartbeat support + High: mcp: New master control process for (re)spawning pacemaker daemons + High: PE: Avoid creating invalid ordering constraints for probes that are not needed + High: PE: Bug lf#1959 - Fail unmanaged resources should not prevent other services from shutting down + High: PE: Bug lf#2422 - Ordering dependencies on partially active groups not observed properly + High: PE: Bug lf#2424 - Use notify oepration definition if it exists in the configuration + High: PE: Bug lf#2433 - No services should be stopped until probes finish + High: PE: Bug lf#2453 - Enforce clone ordering in the absense of colocation constraints + High: PE: Correctly detect when there is a real failcount that expired and needs to be cleared + High: PE: Correctly handle pseudo action creation + High: PE: Correctly order clone startup after group/clone start + High: PE: Fix colocation for interleaved clones + High: PE: Fix colocation with partially active groups + High: PE: Fix potential use-after-free defect from coverity + High: PE: Fix previous merge + High: PE: Fix use-after-free in order_actions() reported by valgrind + High: PE: Prevent endless loop when looking for operation definitions in the configuration + High: Resolve coverity RESOURCE_LEAK defects + High: Shell: Complete the transition to using crm_attribute instead of crm_failcount and crm_standby + High: stonith: Advertise stonith-ng options in the metadata + High: stonith: Correctly parse pcmk_host_list parameters that appear on a single line + High: stonith: Map poweron/poweroff back to on/off expected by the stonith tool from cluster-glue + High: stonith: pass the configuration to the stonith program via environment variables (bnc#620781) + High: Support starting plugin-based Pacemaker clusters with the MCP as well + High: tools: crm_report - corosync.conf wont necessarily contain the text 'pacemaker' anymore + High: tools: crm_simulate - Resolve coverity USE_AFTER_FREE defect + High: Tools: Drop the 'pingd' daemon and resource agent in favor of ocf:pacemaker:ping + High: Tools: Fix recently introduced use-of-NULL + High: Tools: Fix use-after-free defect from coverity- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild- re-enable AIS cluster on s390(x)- AIS cluster not available on s390(x)- publican is only available as a dependancy on i386/x86_64 machines- Resolves rhbz#602239 - Added patch to documentation so that it passes validation - High: Core: Bug lf#2401 - Backed out changeset 6e6980376f01- Mass rebuild with perl-5.12.0- Update the tarball from the upstream 1.1.2 release + High: ais: Bug lf#2340 - Force rogue child processes to terminate after waiting 2.5 minutes + High: ais: Bug lf#2359 - Default expected votes to 2 inside Corosync/OpenAIS plugin + High: ais: Bug lf#2359 - expected-quorum-votes not correctly updated after membership change + High: ais: Bug rhbz#525552 - Move non-threadsafe calls to setenv() to after the fork() + High: ais: Do not count votes from offline nodes and calculate current votes before sending quorum data + High: ais: Ensure the list of active processes sent to clients is always up-to-date + High: ais: Fix previous commit, actually return a result in get_process_list() + High: ais: Fix two more uses of getpwnam() in non-thread-safe locations + High: ais: Look for the correct conf variable for turning on file logging + High: ais: Need to find a better and thread-safe way to set core_uses_pid. Disable for now. + High: ais: Use the threadsafe version of getpwnam + High: Core: Bug lf#2414 - Prevent use-after-free reported by valgrind when doing xpath based deletions + High: Core: Bump the feature set due to the new failcount expiry feature + High: Core: Fix memory leak in replace_xml_child() reported by valgrind + High: Core: fix memory leaks exposed by valgrind + High: crmd: Bug 2401 - Improved detection of partially active peers + High: crmd: Bug bnc#578644 - Improve handling of cancelled operations caused by resource cleanup + High: crmd: Bug lf#2379 - Ensure the cluster terminates when the PE is not available + High: crmd: Bug lf#2414 - Prevent use-after-free of the PE connection after it dies + High: crmd: Bug lf#2414 - Prevent use-after-free of the stonith-ng connection + High: crmd: Do not allow the target_rc to be misused by resource agents + High: crmd: Do not ignore action timeouts based on FSA state + High: crmd: Ensure we dont get stuck in S_PENDING if we loose an election to someone that never talks to us again + High: crmd: Fix memory leaks exposed by valgrind + High: crmd: Remove race condition that could lead to multiple instances of a clone being active on a machine + High: crmd: Send erase_status_tag() calls to the local CIB when the DC is fenced, since there is no DC to accept them + High: crmd: Use global fencing notifications to prevent secondary fencing operations of the DC + High: fencing: Account for stonith_get_info() always returning a pointer to the same static buffer + High: PE: Allow startup probes to be disabled - their calculation is a major bottleneck for very large clusters + High: PE: Bug lf#2317 - Avoid needless restart of primitive depending on a clone + High: PE: Bug lf#2358 - Fix master-master anti-colocation + High: PE: Bug lf#2361 - Ensure clones observe mandatory ordering constraints if the LHS is unrunnable + High: PE: Bug lf#2383 - Combine failcounts for all instances of an anonymous clone on a host + High: PE: Bug lf#2384 - Fix intra-set colocation and ordering + High: PE: Bug lf#2403 - Enforce mandatory promotion (colocation) constraints + High: PE: Bug lf#2412 - Correctly locate clone instances by their prefix + High: PE: Correctly implement optional colocation between primitives and clone resources + High: PE: Do not be so quick to pull the trigger on nodes that are coming up + High: PE: Fix memory leaks exposed by valgrind + High: PE: Fix memory leaks reported by valgrind + High: PE: Repair handling of unordered groups in RHS ordering constraints + High: PE: Rewrite native_merge_weights() to avoid Fix use-after-free + High: PE: Suppress duplicate ordering constraints to achieve orders of magnitude speed increases for large clusters + High: Shell: add support for xml in cli + High: Shell: always reload status if working with the cluster (bnc#590035) + High: Shell: check timeouts also against the default-action-timeout property + High: Shell: Default to using the status section from the live CIB (bnc#592762) + High: Shell: edit multiple meta_attributes sets in resource management (lf#2315) + High: Shell: enable comments (lf#2221) + High: Shell: implement new cibstatus interface and commands (bnc#580492) + High: Shell: improve configure commit (lf#2336) + High: Shell: new cibstatus import command (bnc#585471) + High: Shell: new configure filter command + High: Shell: restore error reporting in options + High: Shell: split shell into modules + High: Shell: support for the utilization element (old patch for the new structure) + High: Shell: update previous node lookup procedure to include the id where necessary + High: Tools: crm_mon - fix memory leaks exposed by valgrind- Update the tarball from upstream to version 60b7753f7310 + First public release of the 1.1 series- Include patch of changeset 66b7bfd467f3: Some clients such as gfs_controld want a cluster name, allow one to be specified in corosync.conf- Include the fixes from CoroSync integration testing - Move the resource templates - they are not documentation - Ensure documentation is placed in a standard location - Exclude documentation that is included elsewhere in the package - Update the tarball from upstream to version ee19d8e83c2a + High: cib: Correctly clean up when both plaintext and tls remote ports are requested + High: PE: Bug bnc#515172 - Provide better defaults for lt(e) and gt(e) comparisions + High: PE: Bug lf#2197 - Allow master instances placemaker to be influenced by colocation constraints + High: PE: Make sure promote/demote pseudo actions are created correctly + High: PE: Prevent target-role from promoting more than master-max instances + High: ais: Bug lf#2199 - Prevent expected-quorum-votes from being populated with garbage + High: ais: Prevent deadlock - dont try to release IPC message if the connection failed + High: cib: For validation errors, send back the full CIB so the client can display the errors + High: cib: Prevent use-after-free for remote plaintext connections + High: crmd: Bug lf#2201 - Prevent use-of-NULL when running heartbeat + High: Core: Bug lf#2169 - Allow dtd/schema validation to be disabled + High: PE: Bug lf#2106 - Not all anonymous clone children are restarted after configuration change + High: PE: Bug lf#2170 - stop-all-resources option had no effect + High: PE: Bug lf#2171 - Prevent groups from starting if they depend on a complex resource which cannot + High: PE: Disable resource management if stonith-enabled=true and no stonith resources are defined + High: PE: Do not include master score if it would prevent allocation + High: ais: Avoid excessive load by checking for dead children every 1s (instead of 100ms) + High: ais: Bug rh#525589 - Prevent shutdown deadlocks when running on CoroSync + High: ais: Gracefully handle changes to the AIS nodeid + High: crmd: Bug bnc#527530 - Wait for the transition to complete before leaving S_TRANSITION_ENGINE + High: crmd: Prevent use-after-free with LOG_DEBUG_3 + Medium: xml: Mask the "symmetrical" attribute on rsc_colocation constraints (bnc#540672) + Medium (bnc#520707): Tools: crm: new templates ocfs2 and clvm + Medium: Build: Invert the disable ais/heartbeat logic so that --without (ais|heartbeat) is available to rpmbuild + Medium: PE: Bug lf#2178 - Indicate unmanaged clones + Medium: PE: Bug lf#2180 - Include node information for all failed ops + Medium: PE: Bug lf#2189 - Incorrect error message when unpacking simple ordering constraint + Medium: PE: Correctly log resources that would like to start but cannot + Medium: PE: Stop ptest from logging to syslog + Medium: ais: Include version details in plugin name + Medium: crmd: Requery the resource metadata after every start operation- rebuilt with new net-snmp- rebuilt with new openssl- Add versioned perl dependancy as specified by https://fedoraproject.org/wiki/Packaging/Perl#Packages_that_link_to_libperl - No longer remove RPATH data, it prevents us finding libperl.so and no other libraries were being hardcoded - Compile in support for heartbeat - Conditionally add heartbeat-devel and corosynclib-devel to the -devel requirements depending on which stacks are supported- Add dependancy on resource-agents - Use the version of the configure macro that supplies --prefix, --libdir, etc - Update the tarball from upstream to version 462f1569a437 (Pacemaker 1.0.5 final) + High: Tools: crm_resource - Advertise --move instead of --migrate + Medium: Extra: New node connectivity RA that uses system ping and attrd_updater + Medium: crmd: Note that dc-deadtime can be used to mask the brokeness of some switches- Use bzipped upstream tarball.- Add back missing build auto* dependancies - Minor cleanups to the install directive- Add a leading zero to the revision when alphatag is used- Incorporate the feedback from the cluster-glue review - Realistically, the version is a 1.0.5 pre-release - Use the global directive instead of define for variables - Use the haclient/hacluster group/user instead of daemon - Use the _configure macro - Fix install dependancies- Include an AUTHORS and license file in each package - Change the library package name to pacemaker-libs to be more Fedora compliant - Remove execute permissions from xml related files - Reference the new cluster-glue devel package name - Update the tarball from upstream to version c9120a53a6ae + High: PE: Only prevent migration if the clone dependancy is stopping/starting on the target node + High: PE: Bug 2160 - Dont shuffle clones due to colocation + High: PE: New implementation of the resource migration (not stop/start) logic + Medium: Tools: crm_resource - Prevent use-of-NULL by requiring a resource name for the -A and -a options + Medium: PE: Prevent use-of-NULL in find_first_action() + Low: Build: Include licensing files- Reference authors from the project AUTHORS file instead of listing in description - Change Source0 to reference the project's Mercurial repo - Cleaned up the summaries and descriptions - Incorporate the results of Fedora package self-review- Initial checkin/sbin/ldconfig/sbin/ldconfig1.1.23-1.el71.1.23-1.el7libcrmcluster.so.4libcrmcluster.so.4.3.5pacemaker-cluster-libs-1.1.23COPYINGChangeLogpacemaker-cluster-libs-1.1.23LGPLv2.1/usr/lib64//usr/share/doc//usr/share/doc/pacemaker-cluster-libs-1.1.23//usr/share/licenses//usr/share/licenses/pacemaker-cluster-libs-1.1.23/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz2x86_64-redhat-linux-gnuELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e8b6ee2f9411f9bf036fc3dd268ef8af5fa48b55, strippeddirectoryASCII textUTF-8 Unicode textPR RR RRRRRRRRRR RR RRR RRRRRRRRRRRR#?`7zXZ !#,] b2u B0Rœ K$1o(`tV05q> pE<+{'i%Sr?y8Z WOe+G _A9K>c\WL<\|AD0gNWfxY2Fx=Q%QH\R\/d1E@5ax nj/95tL"pFA 49{<_ X* Ĝ+y /zV]Za[wsvo껀>t~/>2/jN~7\Z1n!U6Ӳ5 ))}/"!蘲Dp且^ .6jZ(YSت]+a% ۓ6sȺ b[*;q ʜI<6gG.Ϻ,m/.J6U7j\Ԏ(Юʻ8<`')x ;OcW#s7-G(WH;S_nJ 2PbJ[/:s2ZĈ@g؉2zb!<_ӕ |;zֵ; ٜY v'fjz[sj]Fik}e|0 44ԪHeWVo6k6udo+3u#]'|[v܈3?3^FSV!ljm]LE&&D|ӀqĬ?j?{xch(?L UPOiPnlv2~C.Ht+Ea8H/b= JVS%t=,b'oL!5 ?l/"z5+~pт49 ?SA/] '3Oeי*d9k氆|3|1!6<$aOLty8)#~qii_ĻLa+#yIAQ~k_S};30>UEr) бL4*!UoWCA8S.ZrTOLkY^ ZaN*8g>0\܅ kqt]Hm:ZC{k(hg>"E U>?Ţb]]8ACXFlNh^DTPlEwe +R.ňmRx\l/ʷT³pz+T^ / dy>Hbutv]{"4rp OQ_Tlр}- &8< Q\jAO):Fnr~7TȋxJ|uh@Ua0bӷ&U 2|6*_݀bf?2^4nR E Nީ-J6> !(rj-Y2Ly4Y3‡хy|:\T:whS7؇b!Ҥ]=:e);x= =h -e)*tKP'~dԄ1 5 A}Q?{lCq ̧4-{y]M̎ܝNy~R aZvh4!Ogu}9\?]E7>_j,ad=/2i9Cy&4B.٬E|[wa_(^tyW/:ovЄ(}ji6A_^dV Q͆ $$Nԗ߮gb?>4 yy)Ȫ4H;òqur>ǫgN/VP&f9m rSMeAMrbDȒ=女M@QI5AyyŜ^y:NB&BaDc T`m ĭiqSm酿`5| ¸!/,E)S[0@tLME*/@qT Yƅvܛfb|nfl!DÎz`Mb>s^A,mhMYŎ(x ?V`=IV5Pt+JL+ID5͉!wX[/{q.-[tUiR"+N5 [dI(cuHx"UҢ}ݏDaWK5%(~~Qf&{(-Gx}tt@n^S@Uً끫c|r{ΩIqΐTUͳur:p1}=|?Tt}>ܰ+=+Θ;n AsF0aWW\C.!np y̚_sut:_B3:S^k{,橼9^Hvn. ]tGHJTDzYOGV ;iPKBr4U fw/#|x_e )###MUJc} jL5c2۲@!=H&Ğ1gybR>f&MH4\J'QtF5گy +154RcDHyZ Ǣpbm6dWh&ʲaLVo#`h/]7; '>sH⢑FQ֓lu %\4n͊,Uu$nd?CTjG5p+ G۪wo`|ko0x s{1bi%Ѽ3,xΙbk?9g>YSӳ.[{0qe12:g@)d_ *O"V׆cZg82W<*\Qg4lu{ yG?r`_,O9TARAjkW s0{m:4p~u$q|A_:"c:k:?FŁ?!,wϲ+aVGb D]~-M8r: pp kQW`[jOb|жL"Z`0SM;w(o <&K(+ʹR2&/aaVKZݔ50q)*5PF ?f65lTi'#łe{V 6ì"?% |J'>e5;qQd5+Ģ$C,Tg:CT%d\ };j) ~\=8eVit[v`b~r\GNr ]|}:&F%s4`3o)V\Sܑn'! p^{³s]2GZYJm@9unVE-[}#552IZ*UmnSځQEsJLw'w8J#;pY'7(>7KYĦ]ר.UyWQļpݒI-T&QS,XaTa5G2z>D~byhIa`# puX`L؏}vM1 NCഗ"uPSJ =G_4|Eou7W +ҍN&r.ϡix;g2-RMRJ?˭(P$TF*k; zCbxg =ƭ %˭jnoR Q)5KO>K ~&=#hYj xZg- _&Hzp5J&~HpԳ̈́`*iؤOA[l wEPlecX' *Ԅ. }c3?XPOXK6-n%'ٛ[OX " o{ၷ0kmP%ƙEO}p]49m+Lb{5DV-YeOdP?%/c ݬ-F~S >rȼ}Ax5N0"d' 䚖4V(<kS)YW~/IlXL!Ƕ2bxgauʘ6݂"gcIV{u [5g>yHI;1q(6x"HʷY"fEE?ʢ3Y~nS%%7<kĆ4Li/E /*q._EG-Um>(ͥ[W5AjYMG9Ϡhp52?fWNp# &#[^TKU$\Jl3Mꋞ#]}L**v?:6z29Pśx aW`^J@̐+Kl0耓}2r9㸚֡I,tIC`6' =S.hix_kIȧ_b|m'oWJ r9cpSF~yhØ:)]9{]SJf]y7IDE<P>V&Q\ЈJU+zOJDM-9`I5֌zs],x*zN UG| +H1)1ёKFo wF>MӾ ˓C~~ӤPn$ ]ҺcLn7 p#ĘWo' ?}jN8.گz (oHOHZ\yqUé ^>9& F>1|wWT58Pί \mYN2C."+rפ8RNhPa-WWN%?n-rCU+ DpxJo`=puS5d5wh]/+rTx ?Tr1 x-{E/ų?/HkucB2s38ZcLNz#DrZX/PU8QT&9j#GP?73k&J&df T-ܶ| %_y#7e Ƨ;iX҃aevUB:32HsZwc<`~{FŁH'H*|Z(dTMőGg(%Z$ Z]tdC9~"@S/̂Pq˩}sX*KexD+AݦjWkTآtNׂBD1RMp/GªigwɾD~2e'8CH ݱiOoQe⣀ }lkOF;Ӑ@_FEdΆvScOKH*@k~iҷJwʛMPА瀋ۅؐTIixg,Lܓ ^#h#'rmL3&Ө >arz]OshQw `|򚋟OX- V@pQI-ti-fo-zW76yX(!PLJ\p[W `53RN<*W7&-U\Qx>{:![ 9^Z\$ P)>x:d,]*&3;mMbaK0FTȆߤ E 89fq@8.PB⮢0ϞJK~yD2 O@R_kLDaZSMHFXC߰ =(HsيT8enx%zxbrDiO뗃 T;Vn@=sXMϺitx JeX@EQH3Ü؞5IS1w[t,@˪ȹ™kT\IUn 􁣋ń+k|rso[%| +8xpQtAO,(n4#n{뱴r{8Sѣ۲%-[Ë{(yl}=#r9IYDԅӋ$b? w|ov  @e FOmEױLo$HcW!8ߦV>HV,D~xks jkbBfhiR7D*GޟSr(D:5+3ޝF^ȳxAE~|AJO洯Ufw\c  j>87 -۔-gM?|ܸF|bVVȮS߯I409+n`oб ft'\Kǜѳ&$Г?pGy W-yO|;2}|tT,y4߳{ú~930AAw%rHR?o`N٨C^*ܱ1iBzg!E餗P i()*/_7UH-hM݀ZL`yvq1( 8tgD}a3-;Kދ@n {(ɝ?, =z=/~'5\ |7=(ImLJWQ$_>'T S7gײ4Y>},aLU][o&}鑛:=OŽ( E^,^$*QQF,t$5pǮå.h1B)$i=T CkEy%SǺx99Eݏ|3p4F:1 'Tx`OIk.U;c^PM҇&T0)[4BO\h`5 Є6겉]xoB Ԍ2^s5*/x&-i#2.)*:RUĉO |&3k+IMA6̾. e2--hM榵csOݬ&ܖsҰnj2Vj> `k̂-Cr@ٺltDZp|SS>|9 Tn"}8&Ru)-{]hPXՕ G):T?_ xɍuڻd腟t@"oh*DhSj94:|ȗ-BVOF~ m42K$C|Aܔx i߰kװMzE67,& 㹺ùߜƷYq^P"sE&fel7'qF.-0\!ߎ@0v0ʖ(P\5B[h]e r}jph@`~9|#RD痂GXD|VvX_2ɋ)պl7v{>S.Ihqi]itN+-.SGX ý!Y .9tIFc>k&):9Au* ޱL_y}x@l11X$2:'mgYa#'u2Rw_NZM@YƑoXdݲ?O`dM<6v<}ni9ʾ_G.x/)NZ˶]9](o6ş?\Qq"UddϢ;A_s`i67*{ JlV5⎷ {@?"t8晩E36՘ݯ# Jmߢܥ2wx~ZR_CՈ"WS pƘsU Ðj>@f^sflI`I3A{Cv@.o0*NR>YZlGs6v1ޔ9ĸjf#w;\ ~ģ<8idMSr01i&3G>Z?R?d'^+|5nlC:w/_{! 򆠁.2!96Oؖ&5TWBs†{+֓.{O6坁S d BelYȮRюWCt۴0BNpyI~{oC-ׄ"FJ7r27 gxR.ΠZDb+)ݩ2~(V$5= 7hS.tj=7"}Op1@hiAxuhTpBLZJ Wx?$=U% i)Ypf>خ'Gihpq ډQm-҃`(ZNv a2^Z3`WSvOP> f{?1.u^Qݴ j1*m `7((?AHz lJ20Naa",\I6&{V(-w(/B>a.M uU=/@q63G*+slwf%JKRgTS g|؞5A @g.+1R('w +|vqbc0EfxE° sٍw܂%xMq'1}aۙd?EJ=7Sá۰f#HhJ?䰺Lw{cR'_0{L㻞&Aω*,CG<]#x= CCʮ'ZZY?S9G6)cPa1/3;AKan=?Ӛo^O]dҼHQj\̋r SmY X0)}bh0!  AC#n0D& p KZes^E#ބi+T* Ic:!|0=!t"Jz1*NXݬZcoV?@w5qK1*fȣ~;VklD`Dd) 3KDr SM}-U?f,ٻf:oA; I hHpfH_B*'&2|Ք7C%gʘB1ao8kLQ ܉ 8&ڍprJ_E)] Q;Ҭ1$ӌ@AZ %Jͅ%$ Wz̏61!#o&nxKMYZI~\f-hTq؇b^AQ$G-'lURa9 ,Oqg.>x.6m3c ^$r/Qχ|3 `^Knktގ?Qm(k&TN4RG>&!p;_.&. agen!>)} "ʄUKHWbt;GO]- dl=`ڨ)B\3 {5بuDbPcbY=}4/z罿DJt{WWv*H7 bS8I+3*Za,2@`pU"Z@4^LJ`MACfk)8O\.S! -M.*xaф v+VG[A#~Z g0ó4b_DnC%&SYxd,$@ۇo0T4Ͳ_MA9hWxT&M|ftӳ͸Q^OqqftD1`CZUv1+i6V L Zwؤ/ӇىnI빃$"/Qj)\;L8yxE -FD&s [Nɡݫ9;BA`A3M)v_  ^hwr4ۙLHMT$rNq,~LUNl"pŶ Yx LH/Xm3Q׫ 7a,!׶߯;_A }'2,QeJ@T|{e}DA{I -h(1k=@8DʯHlI1եRVH"J}Ic0#:AYY4SZfzj~a?-Dl=4'Μ@E2=Y,on ]U l~$Iiٕb0O|h[*_qK>|Лcs%V>!%i)\|,pN3qt,41W+r~ؘ/l y[]EH CϬ}Q/ajLo?A4 |j_g MKqx}鲚?O1\4Tzmyi'ųOvi@ EӃDp=^5 OLrdMȏ![p{J c]b!x֛jlɫVcO2]˃fͿJ̝iptiCPbhPZ{~}̦~o?GE Uz^]Eu(S(L jo۷hqkW%.;OY1SQ9߃jI&ܖmEi_Ɲ{SՇ4m$mA_ ;Ѹ|BX#=Ӓ8 KBrtOXl4f";&*pzNPۣ#61~;J@Yڂzq`ɯԫ3 $ Vjڃ+Xnp}hE.^Bږ+C $X ɢdӰMx%r?J*DqaP \ hRf܇- x-ݶ=dU]&H\@R L1wy\{|_~ Ra;pEs?q*IMu7& zhLFvG0P΃EA+kOdyp2uHI ?4:83L I* e @2O Uvp<0^gVY`pYƌ7#ZwbjW-Od-ߎ8O\*~lJq{QiG3mT"ppmXigM $ W>iuԢ4i X]%ۧD\/*#-HNEO!.)P(=CEs.7O7*ᙌ°`{ aviQ"n}0Oǒ7ZU,Դ1@5d6\"xdUCy5b ăԌH7qF;?,;H_,Q"E_Q0)X~[Dzz;=_7WPlk+t~@|%WJ/ZJ][AF X*nb~찉AP}ߒ uZ٤Mu J@ 9kƝKjqǯ+zYgGm :jc؉xAcHV ~27C}]<jrefž3XrEFYWSL6-𒨱7B8I@ \'4RBסM} z$EpoBK2mjo2hJi;PCD~7lc*jAĘe;JD&!3Ƥk-i#*K ŰS [{OvT(̴I"$, gObn3@e22{k4$}(ϛ~ `Ѣ`~ cJzzǧc p$tDCB?Ă!i”a‽M!B8XbCp_ XhIך P${.,P@ q5f2iXXY23rUO-mI}0uU>_0#}ϫImD:$mD W" P"2J$h5Ҳs'ZmV83kSx<ȵul\rzzKEf #xq*EB{ u}񰷝\C\N\ %b4t: GbV>Ip32P\l&y"2c"o4,Fyx&Rx1=w O B{<*/Ӑ611(ؔQQl}%.0KZ:l]ca z;'3Ż(3d*Ӯ:mbk$c:T^ L7,epE!' %YE}A.Ľ$bb> Թ#4Ds? )mTF"Q\U|f:T+tbv禿b?zS&9;qW4Td܁E,vn})-CLu8d[ޯ{zysNM3wKɽӖj[_PBj(XP6@0Ѥentyn4xu&k;㗎h +_>৒Z. Pmm^?Bkv(hB'8vOM. fpr/z, }2nbkNb}_fK:%c24pKIOhM}ַUZHVZk:1Mlr$pcȝ#ˢP+u.oXyTbN P+tTpDoeyEždßs+x4'wѽ1ָ΀pEBtH5e ]/~sH7BmpBr<|qsʡ MI_l7Y&c:@nd*]0sBXN:f'WA7ܜGdޱLĹb!+l%t;9B'QHjAjhoP"Yo)]ݑ3̶Jy; ' єNI"mfq4rvL?}햆\VBUǀ } t7æ,:s <$uLuJ+RzgO1RFݡ|÷Rk"6 w龼Q߄HG)m7Iy#Hgkq )4`2u*z10_5㪽1 Z5"VxRȋ)[+b%n|ER+ɕiڑk(L׸ц4eOW z=6Qͩh3J [t|SYXls>ŗ"f".skdw> 4 h&0o6fE FV׺ u#+PǤh`Mh-X(Փ}X'bPYl1h4u/E.}Y/Wfui wUh]#t#Oçk'2tvp`|;"_h8P|`Iuda3Q1t^14' jv%(4,8zIad4<[\YǪ~4q]{ h.Ȥ[^(I/n%,D In9>}]! {Et*>_=*^/[pvcB,X] [lЪCkDEŹ~s>$ r7|CJ(r8CIn!l.^*ϹLhU_yPW`nof0[_}fl G Xmߍ:J-.i/}ZYֽ3UJ*+Ca+X`hL}Fu^W- C6k~֦0hݻ]64b*Ω#Qjcۙrg|=I 2)Ktb&>SGg2&eg",Wx%' h6iJ^mY M+!`l,&n  Y7/uMILOm{d7\P$;9.Tjd7l0XgLDNsJ3`7tv uŮh)Լv*+Gnz7Y#tleƂ\WAO^9ir=Û.HfL" "cl9ZPy: ~:р1,cV< O oX'C4`OC;..0ɡb<$.gone+cIۤ{{ɰ">O[cE1j3T_S']{{,J8 4ES-kF ^,!@9P=H"v%tqfQ꧉:Dw `:o牂s{x%mK 0e 2~vUUw9I8|jIހbxXS%Ss C [X> $K'% >2z~6M'5F]cLwf)_ã,Q̯Ȣ&~5+iLx#L"GcdƂC"OqđNw#Vꓵ([!SW!(:\G`@د.5+q%fvصulVH6 fэ%2l>^\,X?!5#~usΊz6*<;9]bʛx h&P2'~M&-w`uY|: mnÆȿ{ޙDQ VG.h`6ϝwXx.3%=7z=@Fs@-u(SEvq2􊿛9-AjR[2^o!#r} Z#TLd.'(dV#L{:my+WX7Ņ \>.oHl7Ez 89"́ɼsn{_NJaw~NNNf ĶfbBg Aó0w+ctTJ( 5JCg&(ubb"BhRi 6|DY++ ɍD"第2J!|j &%eŚ_ "mLp j{Ge%X`i![9: +70B.(he -3XNFNj A`@!QsI hC fte;aH)HQ|ZڮdRhۘEh&+滥`.]wu@=^\%}KUZ)&[oP-sk7stdAG}vD6i<Ȏ.@f>ھC"19V|pu銪==!&/Eаq7'ğ`,~|ǿͤ`DzWb ,I45<)V gw7+l R@oL'thڑ~6D@Qn_:Zˡ*x>7İ<\w&cwKԓt%г{=dz'r rkef-Q:*5Eu>F: 1EXH 1'[FͿ?)()ip!e2>+4K0Gv1'̶lд@w#ܰEs;-ZatSȐA-fQ c/æp ZXH늣Zlf :u <(Byl LSR5@BpH4 aD7sqeqnn=Ο2׌:CmqQNFi ڕoװ)ёߔIf.5ׄ>|w`ᗍc3棣DiF%UPۮ@޸BdW 0ut5Gv{;Ui)z.+B)d:^𫈳(>1@.[ jeT0ۇ?_dM[ć137C vo% As99%lgV>EC1Dʜ:賸ObCO)VdSwGR+I؁u4S;Dm|:,ecp~% ~V1 Ϛ6XE ]ymX_GqG }FREkqե̓\v7;vk}[{*IX! rI%|WmÎFFyƊ_EtYol}ܫ"Iڰ$s _FlI|!52*+w_H#[RK |CqR{bg|FZ=ߎ0c2b˪*Lz ,qE T򕕸 yֽƿ=7IAt륖.T8#՛zoF(B (ɣdl%0S-12{y6q3izty.%P*M9U̘ՉX+už{i@@$Pw𒲔uj[ R:9hdU鳻(E:hdRv{c ΘO7۞ Xʑ'M ^^^"0ޝz/=Fs+CGMujKʹ˹qHM,UFI%ثtd;D.3u\)p܊.l/^_Há.KBd^٬sGCФDb⟀axEAr7ڶd-ĕ1>F8wv$4]/4+(wKJV;aӟرDq.`uF*^̤ŌU՘1);ض디t9!h`YRR@F2Ģ$?FHw[v|y?lZaQ]~EhFς.ܙfza,U8Y - 'n;OzsMiZ= {'ْjf%K*KQ4U7dwezL7]XNB3| 8$5/ci6~y(HhwMK̤{ȴ g ƛrj}br+ϖFT9fpeA\\t N߄i}776JB*f汨EȐ]e4IAo@UB+1mx/afD;ÈSMTrCJA&̙U  ]Qir*)rș?onhkbQH)%nz -#MJ?;_G8PzCMCGI T}S :g+'4Bbh)PK,^1,^w7f9D6:r@؂38֬|tpp=n'.-.*0+*{VP1`:xf쒩#ExRTgpkiY-FWDC~N7rrr֘ +Wΐ< z6)i?"V/VTdGJë4q'mYțW?|md̫XMQ[uJ&.gVlD =Ϯk5]S\cg7U9]RH)ңݒ4GG?4ɏLj¢w;;V2\:O,-hQIA .vF@..S= S8o+@;.nϩ&k`?_f w W-RF *5@ʵ)2g j_G#TL_2 LNtzRe:6{E|w fgW4_Ƿnq~AIdG^|I_56ՊZ2ʿE<("aOG`$l'EF9fuj6ߋiB:kG$uUQ/гG',&kZt|8)7EWLlBA,v_3uO&ϛ]].Z]O!Gk?w4;;DnVnsK}o&א,֪!vD`( ]1] vRH4 if,lZ'U߿@8 νN{z#9[/\;UvюVtɛL#I=tCXtlFɂmHrSe,0B&tF/ -nFM𳥠=$K8G@*Lx0؄KZq1=dyzcSa rԣL1W2F>fd62t:c*z=ic/m&9GhkBQ؇x*#N@D8W%W1(a*{^;t[yqDA/I|K精cd mzvX{q^$Ӯ :7eW/B>&bNo;̗طRt=7~P`G4ތ.QjUڏT!mY uYb ֫9DS0EdZ.5d! ؏G]s?X@*m)H 5du_-yehI}H]Gr)/kW qr?`m5o{J 쓕j,${GeIvLHHE4;zW_uVB2vd߾ Ifjo{*Ʌ^Myd䒿YT#Z,b2Bp0C}UQ7:S=)t9,yXCXOzILPtNx 7#eEl,=V^70i1z+iP9s'&`a_Sr %p||pT^n56",h9a` ?^E]O)`D|\'*ޑej7(XnQEcզ&]ޔzFVI&KYon `r!`=1bM#_¦öJڔoS vmO_{-FZ!#L̔8 $ȃ}lrFsfD`-.vuȻ(-)1 19KQ?W-'Q B~Lq|Hp=l3,͂z%9"KHB:O I\qXqvq)j{P`o|(<؟l̥\lS'cҳȬ$|t;1k~%i"oaZςڋNVVF|0B]4@LnNN3oS`rYNW> ~ɟ#ux _D!<\+B_. ="-ϼкtcU ^G™n/PaZTH-,ȸ!䑃jNZy [3EйD \5[l7Ğ+1?VV%udMXs .[fVJN!UZ#V+E턷[0bо'ƴYUkoH,HTi\bF{`5?D$Lv4mq'͢SuS :o[pוOab7QYMk|=X aMlD9A6oF!s@ZyjeygUU&+G[Æep0M G5#0 Vx/ w)~:c&]ȋ%:> B8xz4Exq^fMsF %}F 7;<4&X\xFCPpqTcfeaJ^4;2ru,3fUcX}!aw|CK<7ZE%a0:21 i⎱;ca"6{:sͥO 2{MiJR=B](6VPrnRF-/.eM@qDyhTk+lL.kӯ`V~q#H2 tͯ34E`lNJjIn"Z6wh|rPij_FۅX>͖ o*j]UhI``n:b+~kBnẕ: 7=Zq0$7.j]W5MU'TDDNwh띖 &&`^,C<"C%~{ptz.{NՔlH&"@9Kf~Ԙↄs\aLK7)$DA4'.AxـxlVWIRc+kNYk1>O1`,ﻚo&Vk/$X|N0g|tQ4%8\,Rh|s2' ڧN)U҆օd|'}PF@:n+ EŤ1O o@̛2 ;?MuiDLGE@}Ric yd<$M/2F~IȨr dKT?(ġD&'ot;2"nl,(X!@rl2 t~O]~y8k&џ,N[J*pxYE1(3V}hI$L$O|,b@ <'ypC*>cG=hRP5eR(EE Y%_A"}~%Wtc~xd ù^N5q,XcƶX/$v{S[Z;,O95z}؁E)Գ#Vs-xN3i8> MS\rsA߶q+Pk*Bo$/#b\bX)$CGkLz֥&.7g5K|HGkv`)z"X,Ӑ~DW T(QJƔ7y49bndhs@*D@1lE+tk GSdK [_ׁdAJb2w>hTTN6 L>t6S5?vmV2VwIOr$|vhj9Q2V9hJ)^E̯)ݬ[dCg%%Ii [iIT݁օ׶y-@oo0>>A&H~"q޷tD yWu~"_ɵC)vP-Rhk]6 2ڦ6EV𔬅A}=(g+UPb|1Q19N:F}dǵ7V$%EAHкI9rdC= @_݊?\B!"-A:!u 9B;XtgX!X*|wL[EݪJj@a)"!ͮŌA Q>;\ :17%X\Ա۟"J\N Q AqfNϿ{" j)7NbG#_eHDV?fbsA6{qT ;#؆J.!aA#W\o@ӿ/!Vi4[5x1dswrnv{\钉{F/807biBQIl qTgOc/I@EvTR0 Ut$LvX}asQQq9wb(l.A{I*i/ #w5(P" O"&uΐ1㪺9b3EQ3v#.1?%8oMrNV;|`2}fIp7(+.VȆ}@FѹpuiO~8nN*e5#H@Q+g* *bOhma`Cđ}!GĨZks C;yg_-JI.MZquXKb8 `3kѩN@~}?x-N̒=Nsz3d9V]؆~/oWA6j4tI~5Oԗa(ԝvQS;S5?R6aBhh3;eaѰQ驒xm d②R ᚡ,ET5L^{#lI(eˍX0RHDQ <<8t[<1$<.d"H`b"'Ǖ'dh泩,Iktiepv͕@\»$}> ZWn!Ľ&Iu "&{=]!&aUtp'6"E>;sL#eGeKL#ӄ!֋-i( =Sc9e{| >'cϋ*xT‘p8DxE'1$8>fqԔg\j^!и c 3kj89J9;q ͽȮF|bN)PXߌ@[F _| S$1NWzԽ9L;%nF+mMgR Cg p(<0M @_2)í.猒9ܯ ҞLhd~89FyǦ12C;z|)W7WJ?=#5(f =cgK(›V wDri 7mFS02Λ ͏vPLfLh9*}e8s `O:e% LٓH3wlSQ/qa~%ߡ>#Nʊފh ETSMR>(|'S9#BDL m 3>S}#q{6-6%=i`mՔ.FKG_ SlUeEqnUQX+85TYF~ر,gf4oUi2 4=. 녢]9*&~`-AZ)&)+s6%T|O8e"gJ/[;oS\s25Ζ~fW$êrL gnKKESZ[x'sq xYۀ瑮ץ;pޘ4. bp[o'<;~$ hBH@ ?OVnmr|ޞt.ц?)"ѫNX_ӇpFڶ XZ9;e+`}-oU*;\mb+ EēIK:yo\62 -Z̗0⓺oPR"O7,TҔH/ 8Y h!s}w}=VI),HC$yquGA*{Ѐ>G\.%\PnpcIVb~jNSIyTҋ@x+! qT."e \}nVS)jIͭZr6Vʄ+ KʞU]7_nCvjƔYjӶ/*æ&ɨ1*'Y܏e^Uhl3ht'MQGN6eA0.̜8E'HbJ.JyE7 sT s*Òib&Z͋cWTUUf*U#[w#Dnuz(ރaX? 1?wi.z7ļ̌s C\ߐFt-/HďjOdnEѩ몓dPKͥQ{6nh!$i0+5Ns$ 9z/tTRu3!.)XyW2OW]EoxhL5+q@ DkeFߔQ{ _,#C2R9h5n=3M:(+*y#ZoHA`),1Rօ*,śɍ [̓RTKdz1P͆ ;I}ke2bܶ H"ҩ59u83؄qr [.Io} wLMQ4q&3I'\{ԘJHCk3=6^`Ky~qm{xٝݿa@>#Д,¸`#%co(|1>ϱrAڨXVVßVۃf:$JR%T7`%"Ft߹e(wsLHtp!o6Z\jmloP>~k^Yi7!kdg<޵DI/(J;IB6?-g=SB氃>?pV8en[Enǟ^#su"hb`r{y,c&))yWۇ;? @sL/#V\*t'b OGWpQ}Jg >;}EЮ}|Mp vݙnK1öRhؗ5֧li>f@p@_-r˟@:,[ރ6 #>\Tc&2mv sz3|]=j%2)NJj|^]Z;>4ڭ0K+խ$[C{uj //.K+ZU 6Jbu׻kh!3? #(US/3x|EO`. nJ9BH,Kx-ki3-kTxGѰiLJ|-g߯Kj.Լ9zk *0"*S'1,A☎[ #E3Vi0"t jVvG>0k/2̀BtDq! (s:676L}ib-S*׾N0;1gI8o]DU-NҬ2C 1Dajo84g ^m߹%$宲ŎOE2x50Y{_r1> ,Nf$H?K++[Vb'*o0癇s wg@[@Ԇ@:te"4#V X-P9dcj:tX6 ϙO8Sǻ;$~QF,gXGПeVj"~)DQ.\p7DZdRՉHʳyPI܁*#Y@|L4ЭowdI@ SzC,Ď&ٺ0c L }XWkqN(UJq&s腖Z@̤br]u(1ri)iΊSr {QCu)X!),Z>;$Y/OO8cVF_~pBm*-yTJ3+j44Yϳhۦ iJ"R;W8R$Bȥ/B^l2d.ejҬFvԫkQ,?J[fY,iW<{tcG-u4F]W!e0V1<⫠ྑJ th"}ȀJP}Y5' Gq~bZŇ [ށHq3L?ˀpb*ahP>q7ܤ-#YA 8J$:bb]LrJN!]LҠiBg> cBӑRkcH+eÐ,K*L~O{/SyV"ږ1B* =9F"XPmsa?1W]A޴ʶV_+Svm(~Bi*⁴>gDι?_vN &\6ZPDq?^u zs~2P.\'QH cdowG%@^.U\ Ik2#NL/sLm#Jع&VN,31 9Ij||$)VFBK Nr]˒egLbz\&dl(a:ju5P[(e"$*wx$%J? @>簃gްM1*`Sl}0k@No^K p{yƖڱQ b̺2&)o/]d {az8Zu<[Qb_A95(~9LW7}J NvR0&1v<'/&13:(ךPߦK΃ UXk?TJ=3ߖgC/'V1@ÿ6[;gv-DQ5PjaPk!x򮷑3d[ycs_IV9~O`IsݖVt?Awܼ1N*)/M|ǹ.`A:Xڜ uD2Oc~Sy1yxz jtV9~!ia*ʯʣͲ7Mݖa;"RҢ9`)M|d&VEюu\9\Nr w|rA2]{xnAn+iΕ5 kvNy_۲KUߣ{VaBV)@h L{.G5Ψ)i\{ݢꄥoz7$R`ԹSטyX.*eX^ؖ7 7=7Ebs#K3*] D}t kiNn_:ӦYtcA|#6rwց#nϔ !y'o6`q%hvuS(>LIܲmgu{ tl3I=ݨy,3݅uG@J9Y:ta3 ξ 34k"‘=bJav*47[@@y.:d3@EpEc|J", u̟%\Ơ2ov0Q1%к`c*W6w}BW +xГ!k6W,m?: ѷH+f֠;ZE}lgKa qb= TZ4E|Ǹ޵w喏O|۶3WM?YeF,Xn~uxIn,.kml럕sY~APIhj\5:b)O@mMw5{Z10Tp4G~DLF逘93;+1u5=IVD_BLQ8gB>sS/|(ӡN/M-zl$Z^?x]sBߵT+Qau(5wsW<^P}FQ,3>JAUo6Nb +rΩ'^iu%v+VcS[L =dY'`4⣠M㽘Ξ}}'Ve3?G0}vaJ to_Z ,|[%Y1JVG&YCIb^,qG?C卟ȚP.z tOl^VX? P3>ǀC|N)QkҐt*8N mq6nA>%~WC^xY+LH ;.({|֔w-0jo fu^F#=i J79i70 /;x?L߃QT7ѯ%1R~_MPMQn7XǶ?Iu6s<_bKELnѽDžmep1euĭfDUM398z*qR=nMQ8D ,[P*"b}q$ދ9֎z)᭏zQ:>rhNf_&EkVs0GBsVsx*C ijU0b|އentL7(4vc3yR~|z9qӯCb]',YEܘ*D?YSt.MIYJ:8kk;H[CG(KhF w3(0mML~ёuӘ_ڭ,(;u1 4{|ߋnsf|,uYv\DP:REkW%D\)CX~@Wڵޣ&v(`,\T]hz)Ju$qtD<4A; cy8qHJkֽܾ/o25WQiMr)2-ѳTBfEהT_ݨ7c~e ̦a˩S#R)jc(Ma~^S*I;tw@ʔ5szS_]{ƷZwwjN $u| Ý6 1uih)R]춹P@4Yd9kO݊}1((!prI\TeÛ9vU9ȚaH5yVC lqji?n*aƒ3xcv11xR B57wbRdrPkM>Ee+h2B.9:t 詖Sdjo#<^wlTACLձ;J>bē%%b`OTT;SIAAsjZ kن-f-bD[#!X{V.[Y؞ŗJ}\/?hNp!6r=;f *ף91cdK|;"DgN7 k #)/ yw( ?rT .ۺKu;eڱ~h&Y:H 䱭RkT_Y({'>zִc*xZF$= @݈&E$yuuH0-Daq|lT1ЕhʂLMZEPZlkmͶ Aצfɑd\ڡI}% fyN9-09n. lxB3<4c 挲|W xR,t2Q΢XCJ0m?R!>bs;J]hh-ͯ569^ n >HJ5-A|V(ƾ6nII# џwˎφqeg|GUY-#CI QFɭ8XӪ^&Qbɸ2y: NIKq^VC,G1?]1$D=o qA+PJYxE)+2ƒCU&RD=DV2=B%F`"3TI?~z _yrƚa/&) !̳"OL0ڣDN{ M(:49T؅ZB庿%Eџ=9TEmkS[mxtUQ~՛b\~ }}||Gl/ :?3#gAB3jĜUC m;͋B*DI18OIo6u PuO![ix>ߢ=^(SLӅyJF"&)w"S&j5 .,y"IG|XM<4='P ~Ayj j'0rdSK[ˡ@xٸgrNj")!wv*Lj"glr@.;mw]|Ǹ,s#x>ژ>N%fgZfԦ3A'I[/ڿ@ })Ij^[p,Īڴ/)2:OH|Z ^$qW+u~GKƧddg!i@9*uzCQo~ 戟44wy? pPumJ玪cl#_jl,{ x<)uysi`\*'.&wv(t(NQ$ J'E,3EX<(`7KҠ^"z*ˀ졥DaExOmL-+ktgEMq٪Dv>h6%:=[Y 'ٹ%Bs'rwz,:YbN|=7:Qn2j,VuHC GTek"!3ufTQûdeG`3eC ??I[*,{'J86 GsE"hcMd[KCEzx]}U>W~FB~%\+ 2nB|R##v4 d<;jO)c"m;XV>((Ŝܑ>%~,՗LI;ѯ ;7KEsV.FUxBeX9hm 3&[ kh!}$w8iʊ!z^)_Aܓx6cU_nn)d$ Xq'G/A}I6y$] ܑ!PV'dsiX_oXtޫ} X o?DJLd:/8S2~i/>@PqO鏑"ⳳX5`^m9UkG <iٹ){~ke6r@*~TiulUEw:Rs|5V~ ~GؤQ? 04x^nO;L^R̹uw !N'p2DɃzptx*4f^/%3!M,Aw%<넪~/R;sĽ޹t#ةфExtTv \-8+`% >$22H c}z3< \E` pR^MQOcf^ j?i/sSW)g>{h/$bB{Q/\ mEΈu臙X$2Zr7gؾo~)|7 #qta '{Gkdv5[^2gƥ%@v]L4ﮥ+p.A9k*2 Hڱ!۾MӳdM8vERZcx2hMEPjGQ̅ZJDuy¿73Fyփfez*s"iC֩䌰C;@O]9fR ʝ߆7`d>d;e9^?i@ u1m* z%FOV[T5pW/yMc[qUJlWE.s*{M*5F?.*US5d9ev/ПE{ 5'GutG8̛<(vΖ@+F@űn G䄮^~T/IeųuŁNi#5a_d eٛpH׆WʙR>g"NsC6ۏ7n W &O O`"gbTkp'c>Hm>vd|#08R3rQLZQC:D4'xPHqn} Lǹsk/HRdrPw0"|s߿3v:bЏqtm c=K.FWq#ʣ4k?0VB}wi WP3IE27VФb%vUZ \Zϑm{R=] {>ށ{!v=(p]RaKB}3aPO>9tQː(Q^V^[Ulu.>1F2,7_#AZ`4s4 v8 e1D [^ig͜u|S;-V$5kc.'giOʩ(1wgWJPFQ^Upp.[ %g\ÃVPi`فRt&XY!E˦r=̹d[ uEGy)`CO#UI9{g[BƋm..^3<}#6;IMZ~dj_'/%m$,Y߮W~ x/kQke6v%ю ~ U ,S^DHEi/T|  It% VYn> .ő.8m8*ÖmOwG\ djXIqrIة@= U@~EV{ #t$qI5}eE-`]`Dr?ˑɶ(=PtAI-; Ν7*rF$ea)70\ MG><[48(=8_na櫳IΞ},CQ:;8[`(#-p?79Y-¶v(C"+.#ٵN2G<)IHF'p+RΈ m9 !0Ep ij9ni8Õƞj-VI2ͣϩoc=XF[X@h>B ģY-cWI^h]=䋓-vrp-n 0Qgg4@"c_M(:L'Wb.A[T: ~'fc iC)Q&J9b[ ڀ7Б@6) D %*_MbDtM4&X\A.iuzt`!m$Ѝ!g h v1 :cg/D㿌+,ϕӲbsl7E^-A|ä>Ɍ-7IwtLqhIjG+H<%0zKƑQ% ~ ㏦xJO('* -ʼn5, LK<ǐLAU=;L/Q&*{ȷB'8 !4>d/b)'חv9OF- ʾeT * /V`y{7)j<"715ڽv<9 .@|[_CH8ya_u`LKt {J\ u92;ol,2w=R_XѳC8[]H+ i1$Vұ~}|ڻ@W9}BE8 yň懩b|ZK N.mSH9ʻԐÏe6}Wm*'Ck9i[[[<.)W4me AgGJU 40m|Ӭp1cIDzM%򵣪Rc_4ɏ$L#M aRe@⸃ߦ2 &J ϸ8H΂`H7)\o NlO&5BfMrFs# h%jذ,8闺? nNH;weIHQ[tlo!G@>{hKvt]>d;wY4`wSM$W__ˣ:2>Lt+bj/W6dBgHI4.* ^nQL y JY"S)<7VL"2x=ZK8vg7aN苣Pʌuam1xCHgAk#l6.F=N7/00{{?x8]W/ll~?_Y;uʷJՑAiaDh@Sq^{b`D&PF1/i+p \RCcT6BcŁwZ, 6r`1ޖ@5>EG`h隁DDP1vj;h3<7%|3NpYp3tF:Q/;g+~c( o0nÛV צҭ;Pje{w\Tʕ+1WYzW2oCI(rd若pkmlw$WXR_ ?Em|3/(lSe.L7mȍ9u'[M2_oXC1')\RD&j @HiQdhm⎴; ʍ⁠9.(goNoZ48A<+IrIPbJڦ9";Xi#*F&$Qȟo{4IMձ6'a^V-)Z#_‚i5*X^Pv*^e]ש5"pAK/Dz ncŶWnYqH>8 BQ,z wܿulR걎\g#ÆX%3+)L 纻i3SF+SF bC]0KBm5<y)fy.Zd$lftdUl^K4Co(DN"JB/$GN3EuzUWmĵEz|t)}X*ͥ)1%|O-ף qWKxFj7\μh"}𛦎6ԟ_XWEO$ʜJ󴂒3**5Z@g !N=7) d84TF"ڂz4jk&wkK塠pH5@R 5X#?]xD1ԩݏݦQQn(/$eCR~""*dx͕!7M_^?,1NVkXrԿ>܈d$7#yxfh]& M!aj4 Od~;zِ^ NkֆaK #r$AOoJhjDvN.`05"-v[eLΤfGf2'R'WzǣuWo9&䠙 F"D55BѤpo(nﳥ_ G"zcgu9Ҝl8=pPuk+3Z4jG*Yyb6oux^ZWq/V9~BG(dv'&Mh_UB )$ *w@o7xk\S=4n$dd"2rlI3s?/cZteXRp>A O4Y|&YmWc2ذwN9)zvV1`aT[ ]ړ㝊R.t.XH ʅnW͡Q4KYR7m*VhUE10~.}^VO, s Xn)'CC;9hryUV@!r-eY2OƨٰݺN矠m>7;Ġy+7NnEٚ 2|T|630#>1׋N"+hHГ/Ȋ9p`#GLTzw"Cq|ӓ]wrPI`9OE$* " MVP!ծLjt 8QNW!*>6 =߉+G3&Ӥ%{b.y˷_w*= m? ehi.NhFԚd0b@zIX^%3Jᩦ4E1+ȖQS}XUuӻhnem k97Uⓘf\m!jluR# .x@Ǖ}4W&:3C,iȟѬ"\Oz)s1 [Rp?ĶXs;eyKgaOUG 2K 1u iEcdLf7%rJ 5#NW%Uz끉$\{JQ-\I 57l?Fyy6`SjoO㯏eYE&^ҫx]&Q}kx|=.CN{YLH߈}Vd̽Zl|0 W!bDNpgBw#Ayajt *HK K#q_Sng.˝&aШĊcѣ- u& 16hWx1\VU]7q itcS@09v5_ۉ )c HB50/EePm&$i)AeD0_M&B} [ꏆ|/JԱp# dMY-ӵ>uݦaM;IRxT-'"L|57]h 'Ȁec8CH@ȡlxǽ3*[~_A܃ldG0ʠ\vظg2FN aSۗw7[ *؁Թ]}z/$')VG? Dz9V&9\Q@| vDߛ>1 [¹t{CI,+=7YS8`KAI2de-#3hynHlW*]oK|`&JD ,du2Mr'u& *K;$E6L`U?dvQ{JEWeʅmfͅ_7k$)MMx7\&Oї!@Nw6y@[bj`Nb(m '45RJ <9{-qI+xʥ[%Wgs_-#e*AV^S Ycm - e>ۋF:uq!d<W%3@WA QkQ2Ǡ ߠX)uW`{yskKw`+5&&RR3:'U 76[*[{T0s` 4Ive)pdgid"K4U2?ϩaG(J6n=C4](H;5<ޑ!Jb~!8s3$\ 7w-w~l1rT1H-,l^LEkIk O3 m}ϪQY\ =S Ap B`Uc{nTk*Ӓ;|Ǩv޿J:b{i}A4xX6Bz:{eí#͉ Р s&zDY&uu]/y\ݫ<.[@ On?iD:l)ߑln,y9 4EMFs$b{,p4}l PJ1-in=a3S>Nj*60r#:*DM$c4Ս0fk5LQ'_nHx77w\:͍܍K!ȣ۝/DRۂu*]e58&./c ɛ/Y1)dڹa6fԶ4 x3AM ` CY Nl&o2l$n3=vH DgϹ:b/K27(ؔL?4Ъ1h"^VW1oVcJ]@LeCR#&" x?3s9Ͽcc"ͱ TWa>oQ3I~  ,WoewSaWحl=>=vQ4nimWD툖! wS9`E&>%uޫȝy퉍ܬ&zZNԺ=BR;F36NoDI'fZ=8kAi5%G4K>2\~wc*c׿Zgv:D??I /ޅE{p@E1Ot!𾪞b% 5s% U1g[?']EgLY7/H9~~L'خ%Λ8%?Jw"E|.)_TB2\7/fR$YBg$R١+H^o=ve҉%/Rt>@C"N΅~/=<o -yŃ)L6>B 4WΓ@IbOIK]YUbpz$h8H mcm=)@gp 'Tmz3$~]fǏ(6p('AO30ȟ6j30j{+p6ޡ =e&;OnS#Q/h;_M#4܂tlLjiiP0ANf/7n>:n;ww~i}^@T{t}I;qބ˹f{$"&$X-hګtf:rhq~i(op 7$5áTdLys{@x!<؃$Il;Z{(>[Wgǔ)ԇ8?'\4ѿJr-5P-M.V"7~?ȎU>GBgC9^,Y,kv~%/bJ5,hoZ#M@l p"Y >"C0z7iQ_7Y :a>w:dfE+K @X8rbVO @,\~E爯EI1Y^mXHڴ*c!d.se/_ot̅ f~""U /ioKORY=ARkbR$Y="je;)zĢ񕛨Ϻ~`_ 1D={v0ﵞ٬5b wfF*%? N0xӣ`2 fƖDiE*e?$@8Sj&ntA T텰V!9b^Au[{*TnKV_ndx JMn3 mʎ]{L,`N;H݅iI*T:Jxne:I)UJGQi/;@&j#DIK;ǯnN|OWyrsL Q{rCÓ̪#ؗ-oH6YqH,nOo^^)wrU4QEYqp^쩮s YZP\690Jxt5L>^4IkfwivvCB<d_kQ;OnsA2{=k~z<r`rm )çBWE5aD >hh:DI__ 7Ň엕)[-t#ʼn52XsWHe / HF@>TlAQu`O7(_ }=seVU~g--3NF"QWdk#[1m%`vsZy0SW͟ T2q\SZq:xؒiF5!] 8,^U|^9ڼySh! ݃S;x7s7G a 'LTRߎl#ȢY@%@|0EJe@.+#GIu;&"#fl[UOK-o8M}ͦXjQ^P~gG?ZzC˜Ob&m ŠJ7>hH o/ҥхjX'NOIh&G@=Lښ58.fO΀P煔ŴC$UNޣ$ Z riRCfl{-9t~ -肩vo !p`#ү-.6`yQfxֆ?a$hMEO=wMTľ&@+erħHPN}p |#.f 5b~c xY],E[9A^(R] ?wV7Àڬ]x>o+FpE}h1v"Җ]?ʌ}q{eNMI[,[ccI`ճ,ؤOgavo d zc8_Gaq7m25>GlHި%3,xo&@8oSΩc/ G'dЭ<7B<ZܕfV # UT5>Jy_9 a鮢r~ޘ\X@dnBZ@yG2c[kq@O"aKnOf@$n)c>jp@G &bk؈b4)7 B H[%@ `ߘoj| ǷE'l:|4[`ڽ3]_]}ͦ ::$@f HT Q|BQ%H8(NZɟ v,Zjdm En|xb8 )TE#J;`j3Ks"Uf/D*:0/?f>7%;l2UV<\r%٢qqh\hrhXLc`UK-I0Fm6.{a+e@ъfv H`nW{.I,gK\ŢLz{i#~nh=ȧ,*<f3Ky"9ȓ[{Z䘔㖕Fij>6 6>rm67=i0Vm%;Rs,a㶲sw Μ@ԝ7 nk!N'{VQf"²j>DP3sq8ݟ%HXVW73#e>Yh*rrɜ 'QWhXhIagێiׇy 7V^<$G" >41vOiӄ}nHJ k"|gVL6'e]4Wu;¤A ZLMI\7 AXͲúe8,mpf ^U 0cvQ~]ܵgF Ѝ< JpIǼKۥ~W%,t%z¼ZCU*I+e$XB_ 0/@X=n$ |넆RgRvJ]F>}j `USPUj)@ˀJ8 r ޤ*f]/&ixdA@舷gV5"X /5Z:#@Dco`H0б׸Wؐ T,񍏮<<.IS f Pcw_F++7$fg-( ~g)ҤF)'}+2`:_NT_P[]  A590|Y9"T>el_ږm,M>ۙiq5ىIU&Qe<'E<%4j0PimJcl_в}Uʉ/X2j/۲c$[򣸹{akjHf|Obȣ;fp$t<>O/L"Gh(Ia2@]&bѹ{ jKQmZC&z#^\P_nUi0߭Wj6Ř5 }==6~,A {mMᒇ*z(x,Ge.(̕q=p?o 260P)qs4Gom|N1jMAl[ ᶔ)+է&0 ӭBiA}:icNh.f ph& ̀tW_*k +k=;(#%l>č xoArZh^ꛭٽC]Tl^lg1)1`6)Z Q6$՛CH>le3+?w$sC?>fcVf\~NE1n]DYΠ#; <4 .QhWBD_4Y/ӏ,kgJ>e$d\=weyHdd#ɐ+ܿ,KVzU5)D͟,.&?eyl{z,&v %MڗSR y?]5N-x9{3eHH:\c 0'}AmRz ġ[ ;-k SHr3qbz8W7%o_[vbQSЀ%'KՖJ*UwDoQn%yLƍ#=ZW|O>JVJZr+PS;8Ad-,zUK^N~5- mfλ_?Zl*G{&F/;5RpmBb޳(ϙГ0b.!/g}lC آߖMP|*oudpq^+ PPTo~/7+ڸ]2ơ53)2O]f޴5yzj0HA|!?“sXAVNF-/Nkm(v=" XK1"x@ق?.ǤOݣ8@zcO=eoшwj _ "w!'jx]+c1xF2:,Hm0()Hq&HΛ:P9 qF `q[[B68 },QL=2A:l~`8_PKCBS;OWaX0ω?_3O(ȶ}D{ĪWAaczM,[%+d<7yL}_C#q- hEH*.Nã<g#or-gNW a!歽H+JΕdpìOC˚zRmx_Cz+ɻC^F#fKnX)o[M}ҶVFHȍy%i{$fM<E*56jkt({m]71FFe5"&eɄ-Hld&͓.ej Vb.r{a@W i1uj问EE헂]jȟ9);8L¤;zY,"ti((j0&Bs"IVaώ`OaAyMw\L%gFx+mpF~rfOiOr"q8p Ya˅f ց~2LAoY aCN"+E~C4b>IELM70PW4 xɒ=k ͗\F+I2^g]zǪad^\ Q}EJ@wh+a'Sagc[oُY!WVLoϦ↿JƆppzV&]gsvM,K2]/i/{WTu8nJ5MLFuъ)Uel^Ed^K,Rl@pNTS~:}Wōx?0rܾ3LZ,ο4 t:P ښ>AX,pW1a(ҼlӤe~;t3EQr{ؾA{ejV~4^LfH龂|.~ڒ@Zͨg|S:]VTյy>h)R %/7B:F\ BGVE#e&5n786vEmsQ6XAd&m3e6,E?ůM$jZh8Ri6[bekεV͕NxҌ %LԿ6Zȼ!.M"FZS qGiy׈`L[ST-Tʻ%TXv9ꋅ#B`jRM>̿v7>gP<]gUΦRZHH(Յh`_WZ4;n̕j/ÃU}kr7sQyh}RmMfyɲ4J1Ƶy}uGdd.SWd_[p{<(Og90㏩Tj yË ]2Ƚb|of: όjRM܋E 䄊m;- ccK9)OѹN,=,=Sb'>(W /.{jD''Mf)ǥ3%jBnÄHVq4+}{^Z7 #7 9sZ‰(-^zBa8PL@;3$Iڴ8x&д=9+&7.]H9GM)̍cegQij 2ƃp)+%DHhRlް2pGӼ1)Py}*@ %(DQoi ו^!Cw'X+y">)R{cĒ<'ۉo6z_cȑCēo+c!=XaJsoalaBU5n{+JӢ;}z~V6:taXxP3 jZ<fr v^.]}+]:5j԰ck鲆%D) Q<u[rp_G}l\Z6]JͶkZ@syiܬa; e}Y7g0tjp*Z%y^)#hksKALDCt+\/ȓI[LlAyryX+U$;#G2,dŸ%g4TyYR<ؚ V ?zFHƮ1`dUbab1yi vf grS,-\Hς/䫁U+ezɾeh"+35):RQ$хpd5wnA-1+a2N" {@(َg^F \*6t,^E8noPp|2sr< 5*۶3 r[0Mߒ4yf\g .VxN<)Sa X0hc`k%㻋&ReP!G1*n_S,~d]7y[[E?@qJZq";=wi3#ZK-PӃ;hW?C.glU`Ȇ ׃gJ8t\`Me{(KXB\+-L9Kyt{ȚM }¬߸uS% KT'"5>4-T>OXOm3Ǖ/ZFd}{ݠš&z c kNiZ+B~x tvPӱ[Yo8BJgb~7{ pP\&ƨD)s;z\& bEp))"'$񝇬 f>*^<<;Vfηi 灎,ځEshòl|T.9X!y"43w*}ZgQCrpn!=rYMYwYN(Ԏ{؅ܳ`և6EB\2K['e wx#~ Er5H*{T|M"]ڎPZ ?c[+3&BQA8 ZLͼd `cS114>B&XK5޼P")c]%#VUYe=;Q'_UDf%AnR|2h>۽[/Cn&6jj{'pE`,)^ÒFM /CJ#)8SQJsPI#Y1v d/;*QuEr?Rs#U2gƊz귤"'͏Id\ =>9بV]QO>~Ύ227_^*{1(2Pu P-ћY@喷lXG`Nl !.ޅWğdN ٜhʁk/2ZQF"Ka(}ؖzwZ`kKh h?5 ,Y:EAR$1P ~3uܯ)X\"f)P/;qAU͖6{a5)I;WPJQ&O\"mXg.;75w|g\دrW [ i;Qm l~~.B=֏ݤ*Ko]=J!`d汁ŸaFqfgt?PB5YV) L\#-`wI, %!0=wG}ruްp% ?68u|=Zr6h锄Z{ߨNKCqhV{W -9ƖߴU]Ih vUFBIrWJn />}ҾE@ RbG? ֫p"oHYyohq)S8*S&l Qhd!'x4ڽ%: [D$_َQH+IР@1OW_ "9:>wuE#oݡcT.g3c)Ӏbl4$5՗ utQnPeP},}B3uHJrѪ愎4u|+/^XPIcݫw&!̕6GkHF;a+N+6JlNg_Qv)@<Vz>>It  7DOK>}6N&h`zGG BƌJstl#*yIe 1$=C d-p>e B S V,qBATa'iAO_S0ܮ~ hQc}OMrnҸE'0n^vO1*oNvW"C.6G-c"pUK4SeA`Y#;^ s"<5%dYnj_* z@j&wz>G 5[U.'%K}k6 h<֧ߣq Fڇ xvyPtq} GeVZH?dXSpR .gWc55}hR7#X4gHu[ߠ |>f5/VN(eSk!`Z1,@U1BS7T+<=m9G4FBxVBOI2Fz4':nz~> 8zΨl,)\|F6U- z\5ϾFY! ,-?Iɖ{<*pA}:ovoMNu{nOrVILKvLu/(Mu!ώ NȞd"@3>0CTO-șJUE&cJH'H[\^A[|fJnwnDlyQ%m3bc49dqq؉Yt'p(1=S-8 AL]䝈RStɡ*tyFiիJ믓O 21`9k/:wCp滫':!6:kWʯjd_o&@=\[c,h]"wfm]uj GtyOLsA)`r 7P0tOfV:/˞젔x~ިDaA#!d^/:VF ) ˊOiKaBIY>͸nOٱ^YGۯ} R=qI{Tq/6kڻ@OW՝tf}.+%;ۢ&X;֍;(mq;p3;j==mJbTnL6Ҝ i2:n9˅D(qg+CV;o3KnǺNI{A;%) *őO"z=Q.f z'jb7ܕ^Qyc68 { 2@*wPȻ GӴK$ҥQ]v[#} )u^L>mjԿr)-[3^Ě]T~ 4V(z\,+7~Vn _* [;K-]v\I" Id_{j ~]Ud;ߗv&at*\ipÁPIJAychĊ ?k}Gs|Rΐm\թu 6ݣTn{QEA`/Ie٣^T7yYN w?Bh->ϰU[-nOz淥yY. 1P'K;c 12nEXҁ (n)zo\ezԦ+\aVi3!>:h6yY G_cWX~"wr[1˳ k|1^S[PMVU*" 87ᠵaQ整 -냾6'NC(遙eA̗p<3j/.@X ,'M딂R7LFѩhh.TQRioʳ#gukO`bha%!orn+ v"]dE]C@_>uff2k YzF@q2@x5^ Gs rl mkb0 pdo*Á,G&53\.JTTȺѠ>gWKXҶ!glqmA 9:vC5lIx%=k IB~{>n gӿif5($3,n<脆@E$;NZ/KZ U~^d\\!{V<{xǕ=BP6CzXd9̎ 624?^>qZcʻL -;l]j݂W>և0M:KnU%\z/vxWz'o[qe5c>[B`dv,iv h'qKTv “^304%*,= / dޕn<7 Ўiq"/΋)&tEw)LhnƬ e6%l;ŅO6v%VJpkxTn2y0RK2 z ig>:Ж k?O:.z/aK4.EQ*!cw<>`͈i$l 7-7 1o!\0ꔰ {ċGBD -zx-`K;KB}="ՙ>>_ r]@"YTD ROjGx@iBFʵV㈧w$ρ7|kb^[ډe;f^+2a" Uy٪{~Vq-dȥj_x2~w0V=Aɤ? NG ~ƽ8}r(NTʷą4E/w?mw@%Ǻ*#Ѿ*Ӿ!/(~b6o: yƀ5?Lqw|*a!w+¯/e_Mh\/`);1?^C 6t9zLv u[qCjɚq6SuJ00:>&5H/I6Tb[K9ZZxG]tcQM}F/J3GsdԲLDv/39b`o2q_$zx1itpgIK=J@n8r,'b؎} NR!}ؗR&umJz$V*7}B ƦDUVtbzgc`TQY  X#t-8{67h!ڦ瘤Taw9EYqQc2Zd*܏[!7qHlR;2q47&`ƽY$(χmUgR}2R UJEӦOifbNZ*gN_u컚? XpF Sp| Ah82Tj=c!>҄xGxυ0n!b$bB)D[?K7﨧\瑧h~"r蓮~~W(sVG,ƣ/4_CJu I>>XlP+tݘj[ؤ1}NWN d'}( ey>?S{gv0SV8yY[ $e5Iq9x߆@^GbUK,Q=0iuRes7ֆ,I 2]Y!S)B:y&'2+itosX"CM̘8V&~'+cʄY=9j_;7 ~bFψW]ڿzl"~44nYīfCg><3~Yu nK?Ǣ E%3΋[(^`<.{\BѢ6/4H +vZ NT3͐&)Qq:5yr?7ʧi1aFC;H 0&*a&9rlj/YC =q=9?Gn$YY!?,>'a{ߙU#Ǭf"Z]5O.  ܇j!'FIZ@R紿(,Gbf1;DU 3)/acsEb;%Sn$ƧL5ZVC. &-{ ^‚3y: =7vXE0 b'4ضAE؁/QI߬n"W TSL.nbpf_4 -_ YdgsW~>a WTXO"}-#Pʷ4zo,nn[ Nl&ͩ˷R3fRe}fPyrʝJ"8;*C]&!x :^aߎx1vUd=vv*C:c>A =ڪ|/Zj+ͤr]ubi~9**q eVT6p7/0ë܂C75|3$(kI, |2D!7ar6 [b]:T6p cT*ѵ7]T1Z.jJuWF`Њ)ێ-ZqЩay?DI֫;z*BnLfH"\)F'VsX^WuXB$iR'\vL}uGZ򬑂Fn] OkAawE)OA'(o']-kjA{=u1ƈNA| EEe\ ùoTG'.I 68|zHB*]x=}ftмbplPp-(B3&IG{@u򦑪fo)exnE"@p{eEf>9&l'E! r=}(> UI0$ĽKrZG`l,R;*}Q6XqKN_>: 5р@mox]"6\2]A!/#LmSY4ئ}>mp T잱 2暓95vt<(@SR#1'[.b o͑#+3 6|&`L}hJ4{#OnyN3!)}єz=ZygYX7dv+a# zޚe]g bۮdr$6/<͖aC_:yCRqmд(:w_bpwyJ3b,]᷵'x}~¶1nuK_&ZO^h3ZkD̀LXXu1IBucQ`BN\xxZ J .$@+wj{4æ2_'izŴ@kݹ- }H=%D8v1;4W _iR.C-l{luU|W zZ8/`a KCV'^GEtt>ӱB?ywQ~JD+Zնʑcd0|RJA"Q("f[D΢h;ۭI'~5'7XXTD!z |$daDN}_ jrsPH7ګJ>Cr7ܲR]9(pP?tnbX<@$ &P"(_I)˗Th_ՍaIa6IФR#Y-fF tɨXz^ylKqmҎ JJ1ؔ#^ȏhe_nrLLTժ ʼn  \҈/M:x# Ma*6dMPc) /&ƅ|m\$,uVKWoi&PsK ukb䮃WLfbU1b9#xc ;PPs5q-zdIcE>O`E`C; ?p"b EޜO/)嶣vKzE#2A_Ea)|SţK4H@z= -@XYdlyC-bJ kOɌ'OK#db((m=c%gv5W@uIrF`j)Y>#Eq w1I1~m*m}Tpv˟$z Y͠*Tf`É*?/t 9;^o؉) F(t sxONe{y0ذ蹻n)otvԏ6}ѿģ`W@ kK2ܷ׈9'UbQw?/ D}|Yo,33@S ..F R4tIX䶇܉sW\㯠p ?N6P/oq7?QTTCr(x߸W<9qR} @#NS']T2 j_FᆼF0%?c銭 F |/ 8;p3J.\R; )z%vW2qhLZզQocdW Tz>`/p'3S.]:ͰDg7~[)s_qJ>) |Z%,Ԧu?*D٤4,ٷg tXИm ܆SZaߟ$ׯX6xpds$t֏iyʦ:Gß?YΦivD]k2ȦG;ȡflR5eAng2iAyB"D{ܬRerg1n+Bz0 ,qq)<2W7>j{ oc׆kA- %Rm)aw/P+B8Dc!;a&b/4*혩{/3n&{nvb:/*>1vU$vm>NYeCCgNDJoKǶ>Jl\O'MaKP"֫~䳹{{&׳.nOdL NI*9pWtn$nIq7nx$+ u>h A9g@I9gJG"TkB5j$2E eb1{LtקbKPJy>[J!L=u~ ׼|(UŁRKCh?$bc;r?e4ڑơψz²JU^kmaa[`IjkPDTh9DhRLMFFc `UcX'P ~/dslw1B a١.=RzYE57~-JɮW^..nDT-RpvTxM?"ICsYߣkCXcu"ލBa*ȈaˬK؅zǧzl3~YlM -^ k!vGjT0ܹ"kG8AGs>W[40i\P_z* Ε89OpO(ܓmV)d.qi])=.j&-ʼ?b4ܲV€y gcs4c"|{ A337ьxpxC5Enzz2?WF-Z^V)K2Rk;ҹN66y;S bb=ɼ/X6HTC=v_EXP#s4$ [ E+ kO/r$&Bu4c>ݰ:έ *M-dLձgT]PVsF3X]^w.v]>&Pß,G%GɸI8͋G˔̤S-\ r`1g&v6#bTTXʰن78a][LQRM^bg5; Q-?;{VPSq_tV :3(Ry𶍤]`bM뀼j n7iG bH98:L^Kdl7:SbQKX13j`)_M<{Z9=QEtJ4J"r|W)? ֝l4^tlU80UvCShw8Ts܀86{?Y 2(>oGT^ 2_/[c#ӄ@mw IkƵ9N;utWmQ=z|rb6.A!L,3?JJ`}~0[E(g+k\9hR?XFԱfP5_s|Bne/0[iXZ_Lѫu5䗬7tvDRw?!@2W|p06 %ai-/S:%@[~UjhMO:1m_W J="| ? |ޞD"d~M: #]Gx R?J,D:ڭhE@KveZw!G>%O֫Z{%2OM@Zî _MN#l.aMTQ!d&qrb]w0KΔd\ޒz&qTpZf}s}ITT{k1GZ_u2X I gh}\cOȾZI(Mdf&ȞPgf^%xg\|!`JAiqd>F[k?Q) ;X=+66L%Sܡ Mv[HGd"I}Ӏ0|ߐo~  +2A_AlYQF_VuE1`$1)˿|9N 5?7]ɔPKԃd3gp֟*\C%5ԨIV\ii v'o5l|l&$smy@mW'[pC]ˇޯڨ/mjYd8QRޑ<] PpcG^ޙ?Y){Jc2>w;Ҁ{t6M˼;@Ep{7msiُc%:ͪ1ٍ,\3+JKhzםɉ< -w.&V [yMLqo!qq:`ƚ{Ƿ,gNKߐTZ©:`:FRǵ״_2:iIecMe-,+.]V0Ёz}Zv|#uf>ܷ&=i_R>BhkX16Qt::"بwI܁&ZV bF>bL^IY 1 Ԟ_Jm P}Gd:" {m|4$FYV? ƻ9ȹ޷v܂RFJ%Զli SxұSR~e%˔"hy*P'ݩuVqr"/bpj<ľt\k&^9 ~wH =͈jo~DzÝ╓>+mƌqAMGFoD̟; 3Mk5rΉ1V'4GОjbt^1K3l?ء2]*13WfYoQ O\(2usƅ"2~n獤mO#1n u:O5-6:<]z\ ʡIeE1 [5P) KW׽2cB$m((?uF>]^^m`ƫq/@Nw1J:G:p1_ࡾMT S!)\ qspU9XSv !0b r™-wڍͧr\El["7]J掦x 3/-4pk~CgŘ'0~A V,W X;U eh [o#/.4(2viRm,5 .OC ,=hLwAgH_K8\O^9ðVE&m߄6whF 1ի7zPA _TFAQ#Jvwjx 7QdwB}+5ڥ>?aQ(], p7"eL;q:{Bb*?38ϊCn!ۃaڪg9_d)q&&d:ˡgLQgLl>4v[3 m;{c!ҋNcq>u/ 3y'&~_B}ڨJ`C'opI[h _9b$B$,_28+FYӆh?Ps8XHIv%,[3L|\٤)bD<2r `! Tw 4ǭLDsNYV:@?ۧ+lPEKAۏm{{*nnEKNYؔ;U Eg`kKl:c?a+wiD~N̲|}ׯz;1nvzayrgv; XDZ(>钓=! 耾@} BF0:H3TV %_4 ߱"6X)b 8*w\ [5@(U|[^ӬNݩgR|?k !y١dc #w%9/}^\v!)b.҂#9qMOśZ[Р@O?jL<=4\Y<hD/UeCf,lvr0RH)Ǿs!dK(}s4p`lOQ &6f-#VDI0\W%7=\"$׾8lI G_vv|h0F.M@ZDL"9\d{-,ğ4Yr]VrA,shkM=g]&>;?E/,=D6Bċ0C~ǎla _~{z O \0 ^.V/LJ%e{#߁jn"o3)8gYD˓ш`eMd_ԥ"~o =i3IFژo_ gW^ln^/0R-{TPÛaZï]Rej~WZVPύ$񀐯gT&LlA ClC_U`97D,ŸȁOk)”i~;z|Yï99Rk(TKlLJn$}QQ2=+fFL *Aν='WFFR}[ɦDM|r:wXW^xai 1m>4r q]0'%\#Jzֱeo`麍!Xc7F ymȅ '[a';'_]*V NM$KS-n A<']a1=x,l}:Qg(AQ6u8+2YO앿@$[!.Y䙺c PXF>& +tax^Sд‡tJ G2F#A$=R/䱃mUh{vievza(_$932Sۼ>"t#5$ha kz /4@si2Sdmyy^ (: ;ZR5O8U0X7*cOn1F Ouz>d.U) f%;=4GGY ؏TDS'tKՃrwLŅxzypX+˗S *f C#od}Tf^Ev8qƶMuuVр5b -k>d@cZ<,Qgܐ z)<%lecjاq|l~ƺ(4(+7v0vz36_wiL"jW&Rr0! 4?eT# t'4w I}lݤޫcnn2)V GBHX@{ݡ (BQ;'m6ekm'QUbF*R_<1?{kkBxL&{wHYMƀ=d&RY]QhZ:D v;M&8}Jbocw>G^?-[sK}T!K,Lr;Ъ݆w`H[+@ G}zNljB4YR5`qo(R8;>V+D2JYtOB"#νcM(RV)d(;iPg89d,[.tq!ɞ e(BsRKCLذt䚉EUgR:7Tj,I)@p62ʲTRw3H0E@`j5JV[1θC@0"atS=[}JjnU$.!.!03n|?HQ2DJrMW||I̕4"Ǒ/v7'/ι0d V+EG_G?x^6;6ЅoLs? U+(iS~È{g-K0ÌS7/8wK *@uF (,&q:_ރAk|U*ImyM{E j{oz(mq"b+ ZNW?gTS$sn`*7ddoi0߸0e(.E'Zp)wS*騛V3-W[ \VpV,1_W7/?^pƀ\0a)a͉,|o~2rChDL1`ɣ'S}31X7̗]@P\OR $箋իdW \t$SBȅ;,p7g""-V>K>@#(LQ8u-=n-$>?˦v6gAv[H#Muc\4JS7 l.!5_HƠެ s_|x1!]XOBĵPw\rT!ZPlXa.K+Ps2䦽p+_CX٩IyDz?~i]:zӦ yACؕWߨ{_K0:q;;֨a.y=Io+hΨ^bnEOWU&OD ?شqݵ3ZZ;&an>3-:8IZ&slp2ϣ$#ΰtX΂mq|F9 iԪ ZIA!VmM]c4@=%zro.LZ#''$ЎTjH(ЄA:˙+|-s\o[ϺnO%Rs@ӤX͏☇]d8.LGy8 WCƽMwqtKkU8 o9:<E(֝ZjWcHO].>~JcJ6kGG<Ĵæ*mͱП)$Ř>H;ER O *L޿DQSBxQv$9ss`ȉ!jHFT>KҒDGR on0((l&0(ęX)QT=9,$%c'},=9P4ϱ/H s *:&<x`r,4k=`l6ߡ5/翦$F7멆 G jbq}~^Um{Й`2&XPUЮz@W@./pfDd/J$v:Ien\vMw&şئJ*1 ec5UH4DQs2:0G- ֫ gJI"]Bh]`8sD*)#dS1?ه^j%DA ˲ɪ0 yLS5e邇5vs%[NRJ?@˃9Eʰ(:[@Iv_.%b۝ٍ;nXWPAnkN*IV@_G6Uc͔l@ q'9HtuH26v{%;}~]N|6^\RfIwmZVW",&aQa((nb?׹ +ycF]x"M' ~dܭMP&cf8F`w÷gJTIl`C)%2dTR¨`ausf(ORcZBK#% G}ړMxyپkwjr~#pU-PXhwR'f3D|*Q$xhFPy?YhAb* Dji{ C_l{zN 0|L_Yu򉰗y*=GFn^{ jF*:(JǽY$?:I+7~hTfC HP,#ʷͽE@^0U5a "ő ea_2cx%?]-8{QYgv M+T ]Hۤԑ3m5n{uш>IcsT>{\#Uv1w r7&Gt ŒS GhDx!NTHDo{=J2`SiO9Ow@y!|Sx0875ڗM!IQYk aMT{%/f꘯RQ;K\TL_D pA?*8M!lsڈc{?gda`/[#]^8ԔOiqQOM1z߯[ mgEf9dDr[*X!q1A`F@H0s.Dzx%4;jrZw#1jԦ=($S!f %{4on7֐ZĪQ<ڰz!T?'T-\SӍBt9RM|` sל:z K]]d>av)#ݵR+$RRq xl'?ic/)1@%SȒ㹩fR~ ^|`wyuSC|3=+õi_-'R4 QXǩ@p D'"3yd. %o߮z+Q9~Cۄh@sUtkJ4i[$黒]f4_?Y+_Ӡ"<˘yV[Q}+?fŋdJ@]9-}gg݁hHn22{xJ] C`uY?jH{.ƬZY;=&JWͬ@/kQz 5)ֈ$)"G;K'@| u!i"eYOkp]K20F< Ӥ]xi1~ݴ[f> n?^{^nNYAȵXTɇ8K Sʨm]bn@{4>_H WǡBQ̿Rk4iw^7v f]@:SN~,ʌn3iî3zhhL63tuJ kہ9[zw`xDG}[5_89u~9Ay_@H.گލ>smIX 8pW[T%aT[u?)^>'y-9PU"=Mu-is*7vk|@@olEc2s2N2VGk&3~hO8h:)CM4.«-n?>/0OMߞ/tg ^S4( *b@鐳BYj{ʌ7O q{F&0eWUYq܍ Cs~Ì5jD U3)дkQS5 ^nQ2IS|m !NZNv +eݪuуJpcI {`K@&.^%Oj-$'UⓞԢ.Д\pak(+j6CawI^;n-_iz!w:Ȥ.fcGw&>c +?'EdWb_>H>Vb&Y1QG:`;-؇M;L*̆**y gTtD(7zap"OrJHr6ԯ<ڲ?R%ෟizl!*ie+9P]GA[+ 1|~_,%{]VẠ0qq 4yQzv=up\Ktxq"@͋HeF[^ilHq0 O"<:j.S1xV4X5պۣ^EX[ Lƺa P*I[>H$:-H-WNޘL㵒X9]MeAc?1pƖɁ.-skCp*djWp0z&%! ܹʀ"GJ=.eC>:bCtb'SmF.I,>wZXdΕuq}a:}͕bk(Rm&O\I)qߏ~quj#rT\UJ>E^8n v|Q.ְ|CI9#vՋk0oݽ4AQd.!3W9l杷0Oq-&Js{P;0#86p3u= <`Yf*&8HqSS3|E*-2BkoVwwٱ&mahӸ:tj;[o{ɠwnfQCޚlf/k;=T %<(MȨ)r*\>#گm2s\!jn% +RQ A"$vPL7+#V cu4<aڳ⪛4\t/?-9%Ж-od!NEѬa}@.ѽ:]Y!W< f@]l'A4DQT=O3i~gpCIUMw+J V9-%ԗ`Ii`Q`6?gp("D&v O>S+6H-Ӆ.sEZ x=kS?f*,M: Vj A3Dk=Ȳ; m\Ei- cX?g/(cDy۝3l snGG5, A3\dQ"G{Yy75>: BX^ac @2Om'4҅IO%TOJhΰUsaܓ`g01c!7#&FM_Lg}KwveCZ ë(-_4V߽' 5ay<¯A&&:qxض 9`$yL^φMkB +UVbM7[BSGqt"8䊘⤴J\C:x! 芁z>0Gª=PnE`*y ' #⎰6}AX;O+znZ{o< SWL#Xi7Ŗ0ԦrPLmxȥГFFXBq'֕{cu)B7Bh:ZmU揊kgCB_'?RH:DTH^- Cult۪x"TDcqiYzR`e|@&CVXTPeE;FvJ4W d$E'qSP ;V9<0ׂr3EK!Y{HDŭw^؁CLm'WZ :(&i'_ 1C|vLT/(+,,y2K;VH0ӄBtBՀZ4C /+ԓ4l` n@ @߶Z]I)ECDEMugM=`v`. ` ^ox^k2bCE +[J0Lo|((_&GK &QF4oxSk.{Zo6A4)^:DjE@0vE:NɓU̜z4fm}c>dV~em|N-i~XLezs޼`~s**J^ ΍]%'܊P0{Ya-(|u2/ v}%i8AsC{˶kx6kz*ֹ>~ToHI< #%cL22nLx*B9%FH%`ռΒk4_,۽+e'uJz#*e>F&prwpu)HNVxs:5^W8~VvK=3?IRG Xfh`  h+>QM~P}+wzֶc 0a:r0'y]NAf~]Xfo дpNW{^,`eYһO~V %PCь)$&b.X↭{׾uT.a.<]v:^?y.Y\-"-nǯ럔X<Ϧ.֚?s%.:6E+-f$rͳr6"o ')_;P)G#=k@x3Q*-ľSn$e}ȹ5-(v}">_1gVPOPWAOZ+uZD>%al>Y(=rS&HNhG gR2ۏ+-~ԕ~:#!i_{ 2C6_ li8.an "yS]I|M?" G]Ѵq?xv4}&H4÷Ǫp5dV]+Qtm\ 8k7/cW3>1R筀,HEE7JC(V7{َT['rf2DzMMfVa36IA1X{#D~6v  6R:⋤T 'C rn[*;4i'ٓҬX/}gMjaܹ_dggB9_Y/,@wumja$5I@L rO(ѐ,i0Mqn1;gYj~X4󃋝N=PzͤYb?reTqJΕ1p23W:4K?kF:ߊql{| 5 tm^$vik.x< &_=˓Vd?gVTOd+[${?ՑNnKhMsaR/ywqpYN42|._`+0L.i`aY&˞&ܬQr:Mi/onBmoBC1]=0ʂP*:Ib󈛞j{j Y|mԩUwSdOK=PB彜b=4e]*&X3ziW6o46K R0_Q/-?\$p8g5W?H2cANa*`E2#Vݝ41y i2g2y :c8_*.kLf4UTOND -o"3-%> *D  !z;;{\iA%DѤ0gVA6z}dۗyNBrjG،٪qqCUgD],i/1V]m@KluABŔ֞Ľ Q"]("Ol&릤n\I+â 8*;hhK\`သ~ޘuҞb1xȥPR%_ d$jjePswHpւC"coAUHhUT魥]\%-g.6xP3?6"=E wvѣG_>/ xtNq'\~cdʻõz@f2Pg5M"%5{?d1xKxq|}j8Xrg>xqDʪ8,`N;#9=ߦ?7q r#@V;~}\&thN, ?~!u|?$G A1#qoUH_֨ I N.~!}۸ Ă4זּ YZ