pacemaker-remote-1.1.19-8.el7_6.2> H HtxHF\l ?*}}NL+͸:ī[,n wʴr )t4+ 'se43fb120115b4253e79714c0822d8aa54d00e8ca?45!Rq}C?d $ R| ")y              2  d   ( (((V8`9:0'=>?@G H, IT X`Yp\ ] ^j bAdeflt u$ vLw x y8Cpacemaker-remote1.1.198.el7_6.2Pacemaker remote daemon for non-cluster nodesPacemaker is an advanced, scalable High-Availability cluster resource manager for Corosync, CMAN and/or Linux-HA. The pacemaker-remote package contains the Pacemaker Remote daemon which is capable of extending pacemaker functionality to remote nodes not running the full corosync/cluster stack.\sl7-kojislave01.fnal.gov?Scientific LinuxScientific LinuxGPLv2+ and LGPLv2+Scientific LinuxSystem Environment/Daemonshttp://www.clusterlabs.orglinuxx86_64# Stop the service before anything is touched, and remember to restart # it as one of the last actions (compared to using systemd_postun_with_restart, # this avoids suicide when sbd is in use) systemctl --quiet is-active pacemaker_remote if [ $? -eq 0 ] ; then mkdir -p /var/lib/rpm-state/pacemaker touch /var/lib/rpm-state/pacemaker/restart_pacemaker_remote systemctl stop pacemaker_remote >/dev/null 2>&1 else rm -f /var/lib/rpm-state/pacemaker/restart_pacemaker_remote fi if [ $1 -eq 1 ] ; then # Initial installation systemctl preset pacemaker_remote.service >/dev/null 2>&1 || : fi if [ $1 -eq 0 ] ; then # Package removal, not upgrade systemctl --no-reload disable pacemaker_remote.service > /dev/null 2>&1 || : systemctl stop pacemaker_remote.service > /dev/null 2>&1 || : fi# This next line is a no-op, because we stopped the service earlier, but # we leave it here because it allows us to revert to the standard behavior # in the future if desired systemctl daemon-reload >/dev/null 2>&1 || : if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall systemctl try-restart pacemaker_remote.service >/dev/null 2>&1 || : fi # Explicitly take care of removing the flag-file(s) upon final removal if [ $1 -eq 0 ] ; then rm -f /var/lib/rpm-state/pacemaker/restart_pacemaker_remote fi%FA큤A큤A\3\2\=\\\\\\2\3344f2337578e4cd26b6cc25d7befa35a1d98315dbe1c892572a3218497e52467b6228eb200401a019c8aa9cfd4268871aff400bc0733de35ab60554f149c80270bf2e6d380e50a56a60e0e803d9413fdcee4281a69200dca38d09f867bb15a36aa14f1e7917b99f8f944e954fd5f1957508c8f49f5ed02f0dd7aa6b5e3aa8f5ce3ab71c1010cc082c168a5f17d8d520055a2cde4cd9a4050b9711bbb98c0d2978177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643977564e7e53a38c08a8b1c95f3836011ceb45c38f8eac5971dc19489f984a99c@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpacemaker-1.1.19-8.el7_6.2.src.rpmconfig(pacemaker-remote)pacemaker-remotepacemaker-remote(x86-64)pcmk-cluster-manager  @@@@@@@@@@@@@@@@@@@@@@@   @ /bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(pacemaker-remote)libbz2.so.1()(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libcorosync_common.so.4()(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)libgnutls.so.28(GNUTLS_1_4)(64bit)liblrmd.so.1()(64bit)libpam.so.0()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libqb.so.0()(64bit)librt.so.1()(64bit)libstonithd.so.2()(64bit)libuuid.so.1()(64bit)libxml2.so.2()(64bit)libxslt.so.1()(64bit)pacemaker-clipacemaker-libsresource-agentsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)systemdsystemdsystemdrpmlib(PayloadIsXz)1.1.19-8.el7_6.21.1.19-8.el7_6.21.1.19-8.el7_6.23.0.4-14.6.0-14.0-15.2-14.11.3[[@[[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.19-8.2Ken Gaillot - 1.1.19-8.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- Don't schedule clone notifications behind stopped remote connection - Resolves: rhbz#1654602- Route remote clone notifications through correct cluster node - Allow clean-up of managed guest nodes and bundle nodes - Allow use of guest nodes and bundles in clusters with sbd fencing - Resolves: rhbz#1646347 - Resolves: rhbz#1646350 - Resolves: rhbz#1646872- 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/bin/sh/bin/sh/bin/sh/bin/sh 1.1.19-8.el7_6.21.1.19-8.el7_6.21.1.19-8.el7_6.2pacemakerpacemaker_remote.servicepacemaker_remotedpacemaker-remote-1.1.19COPYINGChangeLogpacemaker-remote-1.1.19GPLv2pacemaker_remoted.8.gzpacemaker/etc/sysconfig//usr/lib/systemd/system//usr/sbin//usr/share/doc//usr/share/doc/pacemaker-remote-1.1.19//usr/share/licenses//usr/share/licenses/pacemaker-remote-1.1.19//usr/share/man/man8//var/lib/rpm-state/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz9x86_64-redhat-linux-gnuASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=dab184451d609233accf5c8890eafba22a928db9, strippeddirectoryUTF-8 Unicode texttroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression)R R RRRR R RRRRR RRRRRRRRRRRR#if [ -e /var/lib/rpm-state/pacemaker/restart_pacemaker_remote ] ; then systemctl start pacemaker_remote >/dev/null 2>&1 rm -f /var/lib/rpm-state/pacemaker/restart_pacemaker_remote fi/bin/sh?7zXZ !X 1] crv(vX0}erZ%X7u{c) =WBGeLc'|:C˒ÁH31j V_ҡhG1u}w@=ugQdL^mOA'UkkvGĜ˽%ht- b0Aփ/ Zdx`ZZlU/̎`?83$DNJFD{yS`~߉/qy/R:zY2<}- )v4׺Ȭ/Om1/i= 7SߟWu).N`cCQU*w<jsEh|:O#rł'S(H[0$1w+V5oK 3fmA'S0"{{j|1(mRsRjo: (-;VKjRlDMgt`d@DJZ-5 EE^=02Rۆ Ay 4bww LO]/Nw'NQ/۳lFRƣ\1X$(9B~Wkq2?uLK͵ 9@h(xEao} P534bePx z&[5`<"{u.>ߝ!'5F|PCE3 UU-\5š Lf"Ё[>Sj/F0;xV]k]-XE( 9&AǶ|~'+=~FtF+@XuQ1*4ZhwgLw#&PGYaǼ}=t}YOղvO~0Xqa챘-B{,u)PI%[ 3x Ћ'љۆeH3j6_@! s- bpn5bЮ2s%5>pSj5ט}9˞8iöv_;\ ,<"ߓ"VC8fE&M?b0y')&Bs{ 0yMȌHVxBf&$kJ_}v5p=̵"%*ջp/ƀx³Soy)Ԟj+^*![7ٶ(MFLCW؞UAњsBg|SL#\LTy&C=>uWQ-3֚*5>R}fC @8\fv -=tWPT<ӧmvЩU.mi%TTz:o+R)ގE -Lܶ(Tx7*p&|>TR[}!`^B/qP#>d,'טpOJvGwk |Oӭ,.Yf/8t'U>~=q(RH6-& pLpi &~u"Ma_ɾ ڬ-ѹhs,P7<+]$0V赎rɕ}:6d>,A]FQSЈ-A00ntΊ3d;ԥ=_'މE=א57%jt|?bgH)A)E)RH}wn,38~*q#Hj5P|͉ꡤ]6dmq'V!0`e$Qykܥv}y: WH/A%ն`4sS/D=!@)(N[_qKbVpo{@̯I3 n|R^˳6SPY!v7c Ky&/r7nA.;{y1j ^"Sbp)cOYRt1 q x]Qbʶ~O>"·oĥZFG ,B-DCӂ& GTꡎ"ת#Վ M?l0!҄y@{exԈZumILߔ}T<3|C.4 6g*M B+= +jviut' *v-Nb~mn?^WbՐ4962q8@g jaOA*ڿ٘M :28ڱprpS^>}E;1$J[ep @~pVjO 0,gFR]l"9!DU5+1/# 2yZ{X><,03qZU"!/鈺Y0l<{&Hsv?{h7.5s ]?re{~‚D!嶸$5]l$hPlSYuɜg_`bpT]ΞҊ;. >GQP9m`"j+>.ٙNEPcG_Fd7sI DzƘ6erK2yqT&r3(pp/F"n\8 ADM[ ʎz4<(ZIũSW/뺼+3QZKru75ٌ4 'Lg:99q'W~0KD:c4^rBMN lD{jGo6NKmG&3(ZpBӡJ6PҚ>vg=DI;-թtt>e o|=}mԾSsDݼ(= H{@rM/+(' u[і폒oC+&ku{q\Y(uRFLEv%} B, Ooj`(Ň_R)܎)BS"=84e-:oɱբwx+(Z/t8.,/_FF=xjH`*f'5 =e=R/.}vNhT.Z4H@D1Gn "E,[zc8uy "g#,pVmP@~#! vQj=Et|1BϽGwH3x ouj&q$]D&sp%}.ytI=y6:Ly4Bf qadn2T5( PsTןpZ3B헚}2>`? MwcYD]34WBwXz3 P Z֍VP$òW3vEXbUZȣx!)8, mA"G oG fd* }GfqD4ANc+M5Y_}6b&wsUd{9Z.g+^OӳǏWrgБ~_i*3R֠iT\* R,.-KBҧB^/374$f8){_a0Շn1}0 \:{r-[jH/~`Y#aKy<:` |ڸ:|MXe[D4;u RtyA>/E@k()VoV;xs 39/_\l5B A >Obv=B4uN':#}-M14wShX3EG\y6? !myeSJ~)~*:x)M`*^(_q!r3\sf*D{ng9bBכZ E9OcO]=2Znq-.ϧߞE}md+iY&rHCd m{axH)?Rʶ WMdopAgQ. 9?AD0y!;XrjpYW =yU%Oq\^|AI<4_Lq9I4{.\#f47Nm-oQѠ[EO}m2wbQ/hZQ<5+}E5ط#z8y*02AƸ]" hr)rIvXXPzO= "`Т61(f4hI2|S/=WP"M[PE5y^t;plfo\"'gA"̾#>p_QVz+ON_}=jgZ%")?ZBg 8t>Wƈz8Xmx(!Rek+z(}H0$9r $ZbR bR6xT^3wwOz߁!!}Gc<# \o`tkQ z.OKB°bCam}L{oBEf} co@}t2MQTSUBR_yYc8Fk}ԘCp8%nP 6F,-a1-wԼ ON*VB|>slw8&V4JU1ت1뛅r3^n'·2 5bL,Y6=H FFsiDS+\[&EQvսlqUΐ^8xQQ'QFU Rȸo$-K8ޢI` ʢgd_DzXxYw=2'%+}gO݊zLL,'-@QV-kR9mW !p|"-B.7P?Alc%ɄêVҚĻ 4m-M f:X63CFq&! t04bRg5yKdxp}[bfI/J;ПW՟tp.0:5XZ""`>ȹ/ĢinP&(G\2?P#U fru'S txr<w@ߚUP~1Wi6:}.Њþ{JnA6]0 u8CRh`V? Qg7eZn2+8a;# k=`J~tvoM#1T9\)fZfЛRԼHA 1$к8nڭ[#kM~lez\5x凢?\͸`SWT,QJWzl_E2 C tef' u9 &D;rZ8/$c:WэJNZP8D!!gZ61s@wcGMش.(Ƙ87g70zbw=`OBx]Pb9|6\@ JQlHqllRVw^p_R~%2֡sga25}Skw &K#:{Yo|ܳs>BQaGfmMR25LDʽreRHb1=[T@feRc[N})H|b '9sPVEM:NW{(l< dD RL $ۮ: pL~$N)(>k7L껃8&Sfs؂7uf.JYY\+7}3ûG1 3~Hߓ- Qqe%GЅ !-/mIq;EjbW9 - fOI(a +5;{j}ämV!-Kn`!!`viS*e$/naN^T !n ?Hw`t#FS)I,Gm|&k33ԌkEBmA!9Yۋ#[I'f1#XTo?$as%pZxzаU7?_&\te3,K1x~݃c}l$,/Vb-(Mτ YeR42,/cNM 7[ Z }sǰAStLr-odȮ&lsLtPaGz*:- C*nsgr8}sZ]< bv `h]86rFNDBT[KzWvƔe;*1 |Qw%˜.4ARx;;1>;fy ݜSF> ]n<؇O n$*91|v Q4*L7b7M}q!~ؿ9$E!) .1_̅SaiA=. jI1./\Gg 2^s$W9MPuO;w.)(X*TX[F1p蒭='!I&j4nT}).٪m, K{[rШ[b֮WHBqPbmCn I2b*Mf:826r FejEz]kcU17A,Au$wE^C_bbtިu -58]gRMGE( W|vXjVHP#bvg@(F7@ V:v |) zҙ w g%%:@Mk~Vqo SR.oaf혵iev!BN4w(('eUʰONTŝCLҝ)$!zKV+r{\ 2/G P%`8!k_UL, <T-Q|FfL-z5CD5ci/45tF?}Ըm_")ҟ"2< HIJ8O0_&&#LBrc}]{t~17Ga2\|I¿,z6 H! PhPcpTzS륧BPG?&_Z|T"a(Qef`ۨѐ]/1m($gO˸ W6<^D2|na= ۞pid5+N\!NXH\C\Q&QNSgBpfqd H_n's%n @WS8 ~M7$1*7(ƤؒOi 1HҚN3gzQ~jEK6W۔\x'~l&ԍ_쾩),/ǃɘK|KK=,dt)LM5V$X | aĖTIF؎9sHKBf<Gaq1ʅ8gy7, d`fy X. rI/vy`ʚ:6y"ԸT0XiT-VoQ9>^.׻3m70ƭmf_HL]3( p&&2~ͺuD9vbny0&bDytaNg/#ɣlqWo bWQ_BoLsR'm:%p:2tnFAl_^]<+kaTԐbZMLb`03U8S.sK~ loOR  wo"VϯF(Gk҇ ޞ7}t#iX::$ Od+l6KJIe.!a8]S^-Oב@lY r$[ 29r@UC(6Sx[bwyD$y`ߙݧ÷1a!`8gKh AT+joTU\e>:Mᑬ0*W{anC߮I\7<^0nx5܇=Vp01-IQBdz(cЉ'X^✘Az[/"]\Nef^J ҹǕ | sD/㘍 U7iRy5]VmN>Ga0?bh>OXwsчy#L=֬E'W2O䤕[oHc-}*܋!)"oC-F< Zw/0g2ol;ή~(VavļaMLbS]N<$MQ Tfej$I+iDsO[Ä\y;B]hSp$))-m Wrbc wJVe/x'ado$Sz0 e!O\݂Nfz<e(foK4v8E`a 3U"BnDp(oQR2pܣH]q)D\{b@׮D4L *pPmO-ڬ:9߶QrdeԽibw6YMgQ !W`)&dm1x1:^)¬N~7B$|?7(#ejz!v+^jk n蠝aj 6.BYF:'s›(b "loo\D RUK>#*}E#:/4F/L&zԦ?CƎ>w7}BfQ["^afE*&̰60sg"yqY>\>9HgR GZyWݕ4QdqhE@RKP<u(zo>xDclNuR{Ť-5&6klB r, 1K`>ش2X?%N1PQiި>۰Vg,zqv.e7^;DJnSH%ZǢjUY' zw@!]#r:MD ۥ>bZu&@XuJjXqJ1}Hb좸RP4zM5ܧ'e\x٧TsËȸhOFE.uˑy9 iiT% Rb:$!8 lLpsl"iˢ [S o2k֓^|z:}1ntP+ 1w+їo> )9iREHMA\:Z;P^ z5[d1_n%8K1ALeDw@Nϋڮvʫ9\e Q-p|丣/C/W}f,۠ q ȝt(L+Բ* ʇ—c)g2(*JD\->-#)_4 YU>5qStNa2iϽp)t⍻ЖPJLxk8v1) 9 įYGZk*(Rnh,2@RdrW1ƚmKm'A~fNx J$oڊ A*et<j7% n339Gwݾ)&y~Nt̴xGC%KF^md F8d:bP݀%/tEVLٵ*( \G!da Lr kX@i) -d|;Jza5ꠋ6Ơcr/&&K||^|JM-Rg3˜~>P>4Nh4P{sfcԱ)p`pxTʔeHIUx~q8(r!D-`OJi % \^,e: a[F T۝e@ӯ|?krqeVr)J[ y+G*wnUU (PN{}vs:\,"Beԋŷ`2+Una= ;>.ԯ8+ս_/w.`zd:EtL>bЇ>/d'j`t Gj?L >URDJ.FI.˩ n:9i+nNyJBm+޹ uD{Cļ"ZoCy|I^Lgy]ȦBA$}9IR ]fB4ɽyZ.[~ǟ%~[ l<#pny?7X |){ ^v>23O6vEKX`՞VUN#׎6X`uχEhb`Cl՟Bm};! 0]ަ {,C0IΏ-K꾘#}Q/a$4vjr $pRzNVwv*!NKƔ^!%G/r+mxJFUFⴼT'-I?Qd@nCGL3%yv{5VޘqUqpXb+b]uHo[ G@ax@('O5}b}jWi(pQ<.] v)2tczᰙ; z(΅ /NJ5D ea'W))<6d} q'k>Z\"#OL1j+r`c.%ݨJ4UNpLAW$dס+*$[K~eվ` Ox-DkhUnwQ,4}:gm`d2ʍd8:Ye\M-)Ei9[RNUFf 0ZI ۡVxM! AN >Mkaq .H j""]lJx{(}2P|Q 1O(0У0AN1 Mq2% oL{%@ əX-\F'V߿sȈ 12Mit>Eq%ԋl4WԕZݴ`ɯ!YϬCeӝ}mgP]HՂ>Use09+<nMi4!g`Y\F:IyFƱfX܏.S&| NfYg-a3T,p;z=YJz5D(hxB z|4VNUGJrI97[  ba?#|CqBVBaG'܏Ļ YZǢQ..A%µbӲspQ۶X`Z [Šc}C+ߦ_Ic+yknRY)q .Aՙ:pN]YV>kZ|l\#aC(vbi#zs 4ej_;S%ԧBDFy4a3)bB|D-a[ }`sB`u:*sE -jvNF #\|`< V.1=1sWa?z<\]w=`QX5K;KZ>4!<av '",q,萬|ZF6 Q&"ry [ J%-L$Yr D@=`2/™j"E \eJX*=[ WkyBEE[UverUv|Ibp68%)gS +v~&o~ܥfFK:Vͪ(f_^N UYgĸ7V<95'7F&-Ϣ=A8pڒwz锸K((.Igq mq9%ge₫ ƾ\($k?9b*Z]2<>&QfN:J5[u똔tȀj'A:fI*GhY_i !4(Cb.0CBS]'uA2,"1:ێ{DœLlC.a{ ɮf'_UW \\ p78mTdjYL ⊁1TeorϏ7ydO1@dznI&+ k'r 525f;b+=I`Gu#mstPLYo#;Gfl=UDf"H؝jLU葐W>gLl $ ֪us?D1eʂ$c:,V|-ٶ֪{1_zUHTñ*tA7qqO7li\ sZ槉K@#$x3Vo8T |̤R \Gc6JsVr&0c)H:x-L0e]<󚽝T抐M,>{5N:Y!m!ohEiO4fgeGQm*ԹRaݮ" s頢&+yYXnK b mff1?"PDP. +rzQ-CY,zfe*࿆y188i8mh0 XA&Fw06j񧕇|I;شJ]Ԍ,aŗ.XiXWNw"h@g>p! s,ZP2ư*=%UUSHdKC_ 3E uҬϙWidh? 7(KVvjdRʉP?YJɎݰ>e#b| cnI4;OFnpIɅ_@B:^)z+@reKT\F8 nG97o'P?&/ t}Iq8f>! zkp@K]Kб{x/ K/Ux4 .ܻm|+dҤ5 ǩ23LVfsJYt/+6.;uL~G|[c5e<Ήm!5[kx-R?'d؆@_R f3;菃ZWU>^B>u .߬)l! h 0* ),9^ 'AAHQ|*#sAbrbDZr;% FT2-;IȼjHĂ2Y8% rkqIlMuP U ֎EZ(}(LtBvуhà%%I#yM<8RPiv@"P,FdTV\^%:mKKfVdoCXkq~lP!DҦlbKۑÑ7G *b8sݏ:@ ^+:O+]xGxMڇu@[=ޮA_v$L?ɗD QЖrrջr;g9vTHAFj `uƓӽeS6Gަdaէ1fH#LR %ѯ \C[JQ[dt7jI)jI߿ⶖspB!FzK6Q[9%k:wa|1o}#!b$/K,-kD1VyH#{2}s!}՝?+ݴ A>m_rDbu{Y̲EՃ[ D؃Ԛ(E#ܽ[NwS]+7OKabBBd 7;?ڭKx]OF%A"?j-a+5)s D/3h*xU `*h(P,eMnrw^XZGR B2o梉ii>?ڭ Ü`pJD D0!UI'c}cg׼" Z@`i5hI UӟDC|>1G4= u!BC9],x 8N4NT&Syy J)C Aρ6~PH:+P#_5u葫{֓]^>j-/N׊ԉ$j^”eMZH .s߭DRL<~0tQ+ s96}9s) qPvo-2xYsrmoY1qii2{V Hp-tՇFxyL9md;|Li3=y>$#ƹ""Ho.8(j 3Q9rl",@s!EX,P֔{_lj| c]"MOߋi{J'﷤p3B y[BV+lNmtn珤 wa;w~*q#Wu)F7/bN!j٩tAZȐok*t/¼uΎv5بV5EʡDHZ3ȧ\r' V#N>y݆xpor<5'~_ 䊐M1%! w{nwN[~eO $ 8Ǹr/dw,uy~9Ys1(reAk0R,\7+MضɎ΋b@Nz,M_[b@v ז}T(hUƥ7lM2EJVP.*f0,bc1Yi'J$5諛J.y֦(vЊoy8/脉Լwj7!KmѷGwG-MЌ)U!&$K# k%;$L.p֒1wam+g$vb 2Tb 3<ڬ4/qIu V;l X6ΰ 7fv ˒gʸi3AKŹ57 I=I'sعT0}RV$R; Yŷls!̶} T*Bh&e0$HpRE'c}>& KizKQfU@Zq,هɖ ﹩0 \@ ?| ˤv h> M\>䩃=`11\s9 Ġg`:bL (G m:w1 MyrxTifbݓ\ڴۆ.B*`H5̵`l0on-:wk!F~2* l\]Pq/ GO)s_B;=R'/>i5RE䔫wǐm۲Eaj/j#%Asu&Ek8sL:$)9=e$ _z IJhb% koͯL5! g 53kteb5 g;i?d>xCDT !$~.σ'IJ +WrNT[Z2 NkWaIMBݓ zNx~U[csrǬ:{W 2Uj)fQ +ƻz-h۞H$?2x@&&M柩4x&Y 1O0EޑX/0K:?^dBAdM' zQI0y/ `f|?D)v:{H /PFfs)܅>Gk-E@ɔ}nnQOD=ksNdĮSW 4I)U/nTFr5Z[\zv!aФv<*X}bAaxRcnp'mr*3&~h'+jUn2%{уlP_g%x)Tn"!m΂'nٝ`M{}C\.%pS,Heˍ# ±Q[\ōW؇y .L+f^$ =l8Hx)t[yˉȋp\9-t5 ]"trZcua`]Ќ>lwiդ3]f_FwQşzʑkŵnׇ&ؚxyd<7"TE&HޢZϺ+Msz9DpC9 +xkQ(;il.h>Tn fxe}v*Sp>al XC{\3pPV rB#a*f1]K~e==U0wD p2xF;pldg?wSڶYX!aͧP/0=@{[w@)7mBRu#º+EbgQi_,(lQ~D0+boR2qz @(^t =/-'9_J.m'lL^ARFįѐ{CTb$?m0e)OHvJfHQsIJ%y ldW?E썥\d5qWl)zzW2>RwTtT OԽQ5AјnPfd&1ۈP}S 箸|?@X2sA ,HBCv*_% GsLg`7^'g@ī h}"Pcl''xoeqь>g=Lst3*|VIS1rEH[cT! wF~6k$u?Wk1döSY7@sl#IDRtX|2w)yTjMQH~/ 6F[\!~OrQ5)1DE) K;uqܦ`fy6.v͝kiKAd *j[ !9{jAv%gT57)`Խ/AoÜIvPo{YZ-4*ۮy u)3k#-}D._v rOJU;*R#Ż*RI#$wy([p&-#zD$pcVNW#\/نw#ޖtל˺ ,ZĶl[KPܑ'"{t75jM3uC;#:KvŌeH^xgJ0#*mZ> 6`׭ `d~w1ˋ-APJLp\c8XQFCMC~-VDq*"LlnA6)."NX۵r1ڪj j6v<(r 2MLKߩ WWG*F:$ͬEQ j}xagI& 0#2Gnzrߝk[K[ϝ&H~K"^e\.NNJ+Y(Q/)bd%1nu={,B"8(96V6"T dsOA^tz J2 34xyU{gu|xc8흑}D^hj!z1MoHƅ2o|tPMApNS \!yRp Qq"<t&.X#ƞ۲ݭЮ K#¹>ȍ xof)L:Mzsf Z@m Ild: )]Å.208°YD u0z04˚.JEWUԦ0cl/M1V"2VD٥'"L΀}ˆqai*s#txi"<~T-ݧ ^UG=)*r=;Ѡ#/pn }Bl~̷0u<͎Q˼R6T9ݜ.JG}+o3Al&>om*/5X%S?Υo0Y9m׫C6IVJ.dC6E$I ibǘQ>h\_,D2DxTFBr|4~~5!x BlBhاCI>&.QƲ7j E=ۏYbkWm^~D(LBK.T~TwDTΞx"L'3S+ ?f _yk+He}>w4Z}j&) ::d-#b1 7UDko=SD̖]X0*Mi,yY?ܹh5T8%IA{g^$k_>vo8[d = &((dxuW{D%8 (>t&"h*>(Y59npY/ˁ>&j̅ w`\^*ʮNe-ɺ|V{{, YM.ܬ]0}>c.g a2YM}i`SqW-Su8Rѷ)[QmloeMv 0vmM Ow 4O&窚B閇~tg[Ц9 [+ٟGz>z7-lp*+џGjEpW&5.DC|˲@\UQ-NHJZ0ClE.`)rcnw 'DAzoEB/ [*~V[07HFY9ψ*Ec6ޡKƒb|r 4A+AlHNb|90Gg)zV:E)^|=:Iۻ=qXo]W3hMŬ{dm$`A,sƓ\\)h|q[OSS`$ J\f8g]E9f{GV[Dd&t7h*g(`њVsJRA!4y,)r1‹pWlDfkv>c&qTm~$֣*|F [b~5}n^@c.Ԭ7DrRoJSSұ5|oYJ3f0V,4ܑ#t \*bR3Myt5ʫ%ʄ"?~Sx9McCԟ/uXܯ 9d"~hmsQ̊!ytMDoA]\?CneH9gvaę]p6W1xU]*L?S+5A7>P%Ewp@S*ˬŌLO}r:y_zv!RXj6߬]pzV̒\'MIeNC m\߳IkݘHGK'q~ؤa!vwKseZ5>tkFb%Y՞m,57ijvԥ!c*xKJ/&^[S4_4„<ZE/mf"ʈ1ѡv,n(F*ʢaC\$Y#3L$lBCṪ۽kOU%%Ӥe´ >rWa{Y/ Ƿ2?K*u_|^-]+X^J1Xi>qFo:4z\ՑxEޖFu)lxW4~ٲ s 4mΨ섯wK9k70}m"Qjv$q~515n8(.Gs Mw1c{xedt]C?^լjdΖփRĨݯG]DZMם[W5򸐳 N9<6n ϯn^D ڏx >ظ̷j̐%f@,}S󬋀jR9%trS3gMu!^^p8;  ^sNţ{lq.Hڭ .ciW+>sPqj42RӨR,t;w,j#ieͯ |l]$WwANfր9EL˱"0b.-s_&bJ/;Ӛj}=>G s,σ;إU*N`bg,mсp"IoP]!bϟ* DQ/.5ʦ#xot-j.F,A&jaMy9 w^Ngϊcyui:̈B&lØOj 8K)>&4尤ݤrJ (T/hCՙ3Ξ#g:ٛhǹRg3bX @Tinv?kcЄ&ǎ9%Td LNE6)\Rg pAhN$꬜&ߦ4ky;ZZ9T5k$mn)䯷@9bq)uA%[m>d":H3Buj8^rBΈDkj-:Jq@RiϜ#JV *z~mqjEmHTH}~-Pch]Xg>y n\S<}e/#եwCzAH;`c8Q}2O–@kԑm 9:stzX7HV)fYSp,l=oQU79>豭!>z0]'R +~Q AN3(ihfXwCM*r(B;rKkTJRєYn_I䡲_;+0]K3k.֊vi\Kr a&{T|6[:A?tΗUN1Z3ҸLa!9!m9 9Ul QBNp@E7{aZ/<_&zA'__B( B[*ۗ-,~XF!l%Р힖SB1_U ӵeHur. -ǪlѽkvgB"o{,[mʄ~4xဖtSkoμfȣ,PBW{#aIUn[kAO4)cڒ\%d@ hUt#`mx7L f`h.9" 9#tr#H,)#,$ a 7H!@ ".28tQʚJUH$)Mf+4b+I.;b̷h|߈RV!ʌlCV /`aqAJ?1!βa*As.\=/Vk4PB,e{95}l3y>>R"I/ ]miU|yiwE(r#\KhX;UAx2y?a)7J͟)33ueBڱ~1ߝi0:b*!*$a b)pIB6qİOC$Aa.ތ.œ_эjJg8["3ȴPsLLWug1[㸪}Ц&"34G5zTUݨoė:XʷoP,IjB>5dzW6iFVrѻt{t_x>:VM>,Qu 뙩h4HaOڠT y2on_Fbֶy}.BtLQGt!"݈2!r !UdL/@c~N =m۪z Z_{yu&l6&cmO n"9Xh&ݝ(~ ,j݄4NZH $3 !<1[h;H/kMeW |cKxLĭ-HGghcQľbT7(#MB^Gd;z#T2W΅A֘f\Ņ6aYqQz b{Wv0Rl8tjY3K.HՐRŠF+|5ޫ.mbAŌ{әЖjC28LHq@G?RdJ}->>PVp<6WdmncH\uN+%f<]d?=UuN:q 1gnvPmA3l 6'^qUWvL|9xQo#f qjm)Fb,ނY;ɍh>{=7ڜ̉βpI;Ҳ-泲Hr # ϫƱDB86xlMြq!# o!\yT@4g #k9O{tۣ1`SaG9G&-̢͘@@oHķ R~ej^1 7 I%,,:~^HYX܉jPPf I܎5{xƼ1+* RQ_z6(':fㄉ+Kp6sYjoj/y}^KV 6FXż~7z5Ʌ0gzN͠, ظ ՂȯH8 gEU5 V/QL8PBj AFS>ӓW0K@R<Щ mcrBǼRl-2iuM=QuTD;F]4j_4]㯱HJ S5%b3N!nk, ml0*Z[No\?XK>HUG/ciDx-+kqJ\ Nvln9k=!} "3%Rb(Fw697*>/8~"ѩ96k{'QMhZ;V|O}=4㮅'-3;!).]p?yCh1z< Ts#K.+Ǡj\s\Z#>cTDtg T',4"ԦMj耬o@ے۶ *oJ;@WV|ET5:23{a:&3ZI}F4<ЛdUrz 7N'Js4% ? ʶ;tfIl`(Ii)ba{ f(KL^l5ʡ$HyBr7ư!*FT'>l6?qc\Ϣ] %EQ#?J @x^;n4&]9si3g̵ )d*b /LK@/e1cw!8BJWO$[o p?k|/kNݗ 50QXwvs d} ^QYU:ƬСJXj2U0fˀ3NkC 2tW0mrߟZ"ڑܹ} s>P">'ctpƝک_"Z`{"Ws>lGok0b ? PZ_ uuB's2KܝygG"vX>xΡ܈NROOāTm-NcQH)W~ۓ$~Ҿ0bt5Xx;=k 'R̺wl(${+h^QOSg2)n"zk`]gGjڮi"'=j3[~D9])v(odJQ;]`"rȶڑ"fȿ3x-T@|a,pfa YWB~Ksd9dDp)~ҭif6<OUxU&/L<1ZՋZKdp=ZSԑr'xU((o4:wXG_13X!8mk_(!x5{|<$)#l1K{0\L:ƅP}9Ƨ,l |Cл?y<ڌGqzc^ђUCyqIzdSQ(e^M*|lgC:~hXtH5xUYQJ]nֶi hD[oE{SwIxb=_( |;G(% X$Ȼ{rc|:ˆ͏L#\Jz({KW3֘aOF h+'nMi6BsxlF%TY86T=qRLJWYܙ+'5>pZlD, 9UAG.u}c3Lo2.G)kٷ~916fGy8 uں$?# A}CIT͕@ȿ0(%DTz@)]VmʷWrH~s=-^4$_oPvXeaqjDmuh} "J}${^0>7\.V^ ѻtO{٠KHg;P6hQ+N$W(:#,*NV8TKO4H24)YirKBo#)_8Tq-##^vrхzP($|c̞4ַ~  kq`+of΃ό}dHq{oހɉ6.43}1& -q8z7hVRgA(/FUa4v,@Y Y9NRՎ+^7Xd{h;74 ?qO)湍V=s@TCN!h22m[} *(fS@<t[?'7PTom\I-ݒAg̹>%D}q`9mcwad+6ςݕ( "Mt?K2M&%Ȗs?vkb}ZXZ Vyz͞S ބx ` x͐@N*:%cGਰ4cqy4hSohEW5Ꮯ3-m,X1J+yE#aX1f:^F;,*V% g$0E/ 0!̱LJksQCxhBh+e5Low0/ {"14\.*2Mmjzpr$(1Ol.dœfךˇM*>:N7h ٹn-pLΤS ̴v\;'Mg#C޵DU:2rCm 趎&zj0;5'e0uYRd*~8(KAs{\K򚀑8xvJoZ FX,`9[og0s+X:CLBlܺM@ 2.!+JJ$[~nm`+Z p%ɹ8#h'oMN#XF9abXQMN]Pe&T[ '2$ۄ Oo  l_Mwxč:m牗~i<OzǨFO?5 1\f r9mc򁍾E<XPݸv$=ߣ-\`p`jQl;{mG+5X<S2QKx{~>[|yE^dcyVQ2biAg!%yӴߧE Xx&eZ!.[@*]D*W<)W#yxKAO l{l&̦qUm hwhO7(-dy^EfrqPmɍ/5t]k'~њZDPc,-`"VTo6ŝ/IхlO9~2`=6R Ʈfq Ej!We$/b&$lg6i6B2E`e(yN;v\<g4<΂&PMUOKNUDG4|,atVε(6'gUSe g=PL6Y 8̟)@$vy[QF?kעBxb9P;'bJ^,ƿRȎg4i f$']h5њY>kv\'Rs] Y* Uhzu+ rCU#>jWk>%0ʹS]Ƞ9&E]0UVdѶz/ZKiՀLS>S &S9^NJ&(YHt)jy4T-qj0r:K;c6tP˭WXux_B O4*O V6'ӽjy@`,HWvf?C!rOx%OFiFdNMӥ:87dN<m҉}]fw3a'Sԝv"\Ԉ |O<]'M EȖn|H񧾿Bv70J(+?X(Y2Wdiγ5C`0Wy:^C[li,d8KR~2źy@/Wodh )xڤE  :gMeIp&֔SV !E:y]Z.z,P#OCj~j>ے ݅NT_,ԶQk4j]WVc$89 <7VX-n d+̄"9Ȏ(|[sHH M$g,=F;E/>8=T{P'0o@F2s-k)BX>ɑVy r Rf}A2 [t%cy̌ߓ(B$+dز%]l;5B4.R։Yl6YwG"m5޸@J;cMWE-&l!Ff~B d&hf@bh`4y! :okѸmzX^=p{9>? ȍ1T,CTrʶ(>R9:+LQ5㛟p;쐯xnfفu#;{Cq`A6"5CRG!Yt] /{awGD].9ys)%~2|]xȳ[jM% lR E7iycRWB zI3Z!ǏER%]gx .e`ʏqVÒs[fxl9N(IPW#$o8EE4X<1aO7ĵ՗4 CZhEM–TݵV)IrM@T&v!iV9dX7ӥl3|ဋ+vчCF0 R^HJ;nssvskI}\u^B#K|'F")_(W4!< M g:lN%ԝ]7~Zb׼53 / zMlGЬ4 n3iC܀evY C57AQ*098 } k+CLZ$v(oڗtǷRj I閿o&"⁽cì̠1@1 %/+ } r<gaﲳ rk1]2eԁNy\,fI.?H7 @K[}sFiFK9c +#%+@T9gMr}%3P6h̎LDW>ȖP^t& ;#3P/h}!|s;G-ϰݮ+U9 H4ɝ+ ħA;iXZ![aF&"[ Gjh3N߈k˨m%)qo@"xʹXDTYm9}cEN~dy% ֔6mNa'9a~Wt1+|}3?GWs~W{K>'*LݠJ=q% )MF^=FM|w5V 1Ͻ&(/T]7o5p\3]lO3t݀ATv1֌驌q,)[;jB~_X%wھ`@Tn;;MeC2.m]A$'\CV.>yNdiOM f.0l%gLjeB+W'j$@$:첨}9XG8tJlɂ%wW\W-C%~* CW{-zTf]"L ͑|O KYdAٜ?R͡ N"i?6hCx J':K<1Qc׸H!wӨQl!L)\#|A]~}oz]jPPޅ.%} agS.1@#~;|HΜ 3hYKh{ᅫ6ݧyVX'pz^ⶊd_A)&@ φP u$2PL2$S4)lqk+ b3 W#s`Ky us4:%X:qY-.QdC R4-,NK̿Y)zvT64UCdA6G(TI0j$I¾ޗ,N$Zg0]/sc; 4'yj+SC5qa4Lp6Y)YX U ɧ" k螄Qoc } BL@"E@Vvu®qFC/vv5<Kw#I/h!ʼ /O9rFbhc"tXTJo&ws6tL{P mVՓF @Ovn31F:k!6!!=!*e8;O|0) B,5\rx(Vt L^o!FFF/5.&84`g:>R͈;v:azaZ=g_Hu.#ѣL<>[m>ڭ.]\o혋 G5Lt}p RHAh퐼{$%Q8X1tP`Pq gX;xk5E%?.6?)~>␪SϪ^߻AT 47 8Eij=+z [.sWebre)aΦXk,YBp5[GeVV ?RXtTZ6'#ެz*QkU1eEUwN1H܏\_i$%|͒Vӎ'b Hy?P1,73C3yf}j#0u*9kpQѣ(*_2L" T,gk{yS=Ş.Fj~(0;&) gxKT' 3&umyVY>oEl%cI#)GwX6~+LfjCQ\@u%|w=[S35JxKGt4|Esy0~?mC+Uec s׶lD{]%ZԹ#9e,tTlqߑ3|!iH9_͗z!e ulE`I .R%O~ly V`ބ+:|=;p4흜D Q7 4^LD} S"[ =#6 [Uj\2J*~l&C\o~\Ʊ2SS(۰1]ikczŠ[6@F|,=5 BE#6I1stx57aֈ^-搜8h I-f!Wء]_^i`8`";wCA);$\7bKi 8S*q>~JMFEVt1.F> ֖\ɘR@”^f, iRH 7SE_,g ?Cg >O=`!Pɴ++B PR]u54B/Z(6p[3 j4GIWM@S-yb8>K;jK_4 |@*̱w=O1 s6߬(Y-h >zEf!KJ x8%}"ɫϷLKILpfKdN ӇI.'Ee#w.8nۮ4BG9 m48pr]o|TXLLgpЯ=m zAҳ}Hi e ҝ'L%Eڮ4|g&wdD(uiyo9՟̖p-@Moഖ:gtKj҆| WCz6%$)[Ў2[ WLUzx/ZYR)pث$@IYP!,N+ɰ2AQa:~Ub+#}le{ n,YR?H!Wllxm>kK{Ҏ}avK'݄ߐtv$+Apw>t.p\{JJJ[|Z˅RhSK&U_ JOwγꃤ"8&%vHV{Sixrq$* zNDTυ>RkZ˙zf.EoQD3E _V,D;(?pS4د?l>(P d?5I!m2yMY?bqg+KUyVL`&n@Ký9<%y]y3+X}<[y\Z6xWkनK1hju)HîEEچ#f&g:T3@gG#Cm=Rkpx@$իTB[6*j7A=nB3=ё"KxeTuQhGZ*HѨj|h aBi.*:qT=nh |}X](略Nie@2TN<9Yڈ A*@>0F:2>U$vHW'˺> e>>MvޏhEqͽDSQXWLT0%,ʟ{h]Lo1 @IQvW[v|kdhIMJ#;uLWdKEخ;ܤ`}5D5IE#%Gk}5^aЅe3حvj:H4{FaO9ms{n\fdH.yAvcO-F㭺CNڈjUK۷zro0s;M 1˨'4Zq 1pT]PԵ1fFP3#vj b BNxw/%NY*O!BOQR͕t/?Y 'gDy hθ:JQFjVNuv$nt@'EgĽE.tYq< Mx3 <EhQ+uCT#ןYM6@ī:GcsGF]ݫt3n =uyk4.)˱k9!g^ўnA}Ә&|"i3e@ uNhAQGklmGLn>Ӑ52)so-=*9-BZ.&BVM0o$+b:6/OG7ugp:'Mvh si𞮌`yb5=S*-;egKc)kv8ތ:MP8ĀQ0 @+=uzL'&26ȹt-+6;1s-ױD#gnwgf .ޏ|DBiR)&X! 8> %[u l&|U*l @`W[X{nU!,C1PGZcpacCQ#RenCbuC#,QqX Dg]snM߼(|˲Z )J&~B.>TPY/k X3(Fj]yvjmc,0_XmońjPUзUUSnx ;5gOə'Cýai"lEtBHCK25t ąd3]P80;ekPִ^ d z5:)G#D]TBЫMS,̥2pxyyj'4($ Z !O]g= bƀgf%HSK+"T]AN()CW˚@%"E-ء:Y5~^ /&8Q+!hs[d0&KB(oHR%v F{&s"08"@>  qRJ}Ͱ?bi'bWb>2s,D3G娸^+iŴ1i# l'$GrDp-@c5l!.r2Z! Cc Tje+<(2'N8ˇ lSEB @毙TnSٷYI(lwӂ,j! Ͱq~txn!XN'%npDYWOTg?2fpߓmLb$jB}8Y9x}jz0'YU"<#PGj(+㋤ q`-9lM.}ș2:Î zl:͗s)1lgs rPO<' Rı5B`{@t)t+T񸶦EǪR=D$JW\ vD,fsG/Qy־xK=,'ՅyٖINcz~SJ/TJr~13noݟcDoJ|0' Yw 4"f o&ƬZbOo둂424#M/OjK+@[ 8cBX|9L64ywĭ] {][8dUI 쑎N_t"ӛM XwQ5{x7)U?6"n?<[]y}u 1L{Ix8zzng9$ewJW:]$nr0Ӛj`(͇yg#ԹD>,I܀n3`kU>H?G8_!Z|Gg֚RV/3 w|%u^y]8k(=("C!A2qʙΎW4Aϖt՟vdLgjaMQ'Nr^`+q0aH)F|]GoF}INGR׾7k4MgPP2jwԖ@KR+fE)ytQ-zm*d;/ښaAitjjE7ux%At*Whv<^o\pfU^xwGI0 {^P8ӿ]HD$E*WIy?L(g/4 C&JEzl/wO3}%ػ%CPZ~qG Ӡ2$4[ 7b zVZp3i$.kes/нgFaG˫×Y6ohH ѸC? k/RӢꀖ&.埍t)ӀWj瀏YdR +P\c4-G,bT- ްH0ad ovd nCC{L$k+?*ȫ XQY. nmi3:;Z6 F쏶]V?ZU{AcE>PT:apүq֤`h1[%]+)* A"Ob*hLMwUZ1 gР~?vZBu#z즛۪ ÎCG MQw6K*~0 =X':x,aw_]W-5 <ьE$+XJЗo)pPfg}CNvmsv% w`qp0ŏ"6TaaxUvqt 6>YmFZHsM;>[y݈>>^趏^og-Τ ͞'sV_$J^,",/ {`M;Q#^pe裻H/cˮ QlehwM4>e(^UB^ s9q=b5N\YlL[+԰\EDN~7lJ]v=L'pޚ G_* X`AzDѻ9*k(n0ӹ\[[;@)MECƲD\u9*3M,$ΩCŵJ2K $Q̭΢Z\`Vsjue kB`qѱPm$mVFL:Z8L3!KޤgGWPG@V4Sݾ-թMxƭUAݭ?a侇!ݟ쳡3,3[XSD֑SL!懷rZίzmOWz?jZ,-E8іzsЇ3s*@JMߴ@ģŝ~|"f]K w 2ݶ6U{Qw_SVR~HUӅlpw#|82]̕rj*ļԆ= J @zR/Yxk28 \#$Ѭ.(jG؀!h Dz$6$j^a6춖_d+ʯ>G;nW3 sLZ)iT Y|Nʎd!;G5f{E mP06^oދytHݣo*Y ULI]R>6%m ߕh.AS̕+;Ŷ*‰W+nnLYVuK`@6ӄO7/$BD?\!,!\_d,X"8cB 2]J\F$e+ aM:M'zyޝ!V|pZ;Rʈ|5&s4]ꠥM.&1 oxXeBA߱C y-eB|#J8ϝUv`@L!NP:i͖bWG% ϹGMd$weT1~7T[*IP{G37H@@gtvP67 $;9%TxCW=~*Ws`ZKy~{_&x>2uϲG"KHRV2+<3hQP"g1*hQa7_kaN(yT@Ȍ΀˚"[$-K䑭W' HbC V㷢'lV΍ !yV^.t fW3y&-FI۸92L(+||.#`q2;M)u'FP!uPK}D4Aa_{0fN:Y>~"nWZ8C?[տ/ˏ–.0gP><%)wxv?&PG1 bR 2 ʓd"ߓk's-:7hYV$D3 Ҡqp=##`[ 65ȉÈ #bH_9 ĦFs()}D.gZ(^Lܰ-egXΤ?^р>5pH&L6-Qz@,dl3wj 5@;sW`7r7 __ y]J:&~Ca|D>u;3F æU5M)';z!:3sW?X}wTNQjhC1U+ CWgSU*tޥdZbU܍&c:k{˰όeMΪA3tNl!mj\3p{'߃B# b]sR E^d ذ78Xu󲀣1He /MBPxC3c>XIMr(h\)i@ @Ԗlyṟ"Mh>c[W'36:{BL=à$N@>U{B !ӯ']h>HP _U \(&yFZp.,ip։_ 3lxu;Xo mB]/*qA~UJlæ}t* ۹3DCsQeZR*q?HN{C [ksi.c7,nG~~C%um{N'neޔGL«D2w9K|Q'8axYp;IY=+]&by#F`ünn6Zv&ČH>#ƃ宒V\ojvc33D5UvʼnB(IRGI|V#:e3 Pg%/r0#/D@\g '*Z0 c0AbsJWp{DVC| [@0֐:z {`ܠۥ;1ozf:j2לT4z;\!pBH{gY΂h.k-+^1 'Sh"3zv}֥ՃN )g:yKϐ[E"2,kМt ;✌$| yy`0am-lpI.)qaRm Vz{';cNJt 55k"-b H v{vScc;)U? ]Ƿns1:;WQM=LuT\'p-V\7Pɵ\ Ĵ '/|T-Z?˶.2V>71[.^? qr7,|i|5*ODžy0`2/:%0{I֣edM`]sC>4ZLŰ @?zmg9TxA6'N:?Fvzk,K~jGzqX;N; x*-⳸-tiC28;<®ϛU~?L9basFp.|).=l<%Yf9gޕZclcK3audSXB7:AO+L`$GTjƎ.gOrf$o:98;d- YBZ̵|'C<):nZ,zy :!rnЖѴ, l5T0sUiqv<.mҘ8NW<Vm:JT 0\K,|!w\!UpaZjN,}VLNz)IBI/8۶&܋Eßw)K}?G=)j1̘ҐC._E=W&EҰe^uuzq==~CD}:1ZN8;@߷mIۨ(D^Y =ϊyMmMi;>hMSkmwr~"--$0yBӍʢ"sv f8f9-==/o>6De}FrC> `9?ǁ7r#Ez,KVE f!!w_TB3A,hoY^ s@D"naf)5 ]#i|6{hpрuYZ>Ǚ;9Ж\ܰP4w/WA=Ov__qډxO%:i%EŸ5.oOUmB֟ # "3qŰؘQi|o`yzgLv-"Dq8 ԽT%l'WbL1Am\b5XE6_mb):ZTdص.PS{ R~=d\{%!͝eRvʵKUT5lvޓP]4~ Vʼ J~T]*8'0Rj' +6V0 ߖMʖBh3b f/~s86 <̭Ŗz!3!u}4'dYΡ*dl[jAwA)>T̢3*" \6Ns $o*ip ᭂHؓ;e<ȵuPk'M-Y#0Y$Ba+jٝ'(IljusŅؖW?/Qp'~%6PR94@1tʊ|)2-dʻyjkC<՞xv’Bc(tWmD<'l"8x/6٫Eȵ&j 9*@Ffh5EDDQSEBg8xg'/[zLE^SR{4$O3jfR\6GZꮹJmV퀞cׅ൷i *c߸E壿e{mx]v+xsYcS7<06rͰ='2!NsO!߫Q̢(xja,Ԋ^fqy߲ԗ2HqRDb_[5txmejzvfR;${y'+QQ8PtP=t<v.O5,=H0kpDfk>;Q[KQ U Qxɨ9؛ǟvMfŭu^1uIk[7 )i6šm4xuR.5ОGTQ5_8 .GVkJʭ|*ul/4l%txo"zm6̔ 3'dy}Xw<ŀ|!sMa61jYNSET\6+lKy+)xͷٍm2ھ( J)Ƌ%JvBEU'D#} ߆ ϱHf`BatD28KdbawJ-=nh$O.mȰ:2UOV텭7m!dV6KjEjHO1wغ+.%[ЋrعJBTNov/jlk-ʖK R74jbki~&RV Ir>'P|dy$V%v{VFh a+$\PؾG1R1qBdtQ#䷟'=YwK.AfJD NNɝG 8:A>L\WKSgQ'ʁ ؜u$0_J*Tu2o`(z沮}QXoODݮm7qZL! :B9B6ޡ(a@p ~gW󘘅.^͊# @vW73owF$7kDE?K-]>^H` qT|huzҔQ4> @#K@C.`cǑ(;@Xv|R:c涷 lC{R#2F9rAE~#fyp^Uck/'Ofkyh 0LhKmf]lYot%tJ~3jг^ 4k"+㓫A?Jr-^5A#Q]U%]"h]_MOmuՆgpJwMsψ/ormh~4̘T\G|͓?MЙ>^f=B: xsiA$bj.z,XepL| d/DncMqeF^]l ӘQa8{R?>F۳ǟ/m1YQNT^ҳ1Ez{:Vy{ *&+F)4v uJc*Jv8p(ߨ -ɀNn7/m `BW'9H!CaߙOv<ڟOHy> | 1k*i8(NfvBH-܀u ~,Wf[ך7TCIRJ(:A`Gt=wE?\3IJw ?Q_Cg6GF~yfpɞrhM_(V,0X%IЍ%,꣑F 4sӮLs#"s;)7solzg9~w;iSmHO}wk_Ep ~#nr=,b@gڿ:mkTX#[1ujS ,2:#2V /[65sj]I=K|8Uጦ̓FTԙFpt? S=۵.vsHYԳ-I3ЅIWЏ@@rU"lIaаjSrRT}F-#D.anYh 4E~{.TZ9ihOzzH}Dqzp[He6.U{Csk ܎š /r\oB 闾 l/)o##8A~ԃ ڛ̠|t $cݕTqz?#H:CM).cBp_YIe4G ǖV9Nf"_ Y Y%֖~;O:PF2Q^6xΛy+HB:.h#hm`)*]ظKIKH]ǵk4IT4W"387GؽQ.C#dҰUX- ۀv=l QF`z(-2d7~luZS Yx86x]*9xn@yw9ma@Ѳ'q軈AV&딧Ov@+s?X 9V0wF]]dXC6I#-9P\%% M+嘆raZ@, !f4>IeKGՉy ev6=3oUηf瘥67xy0owc!RRuچ!{)7^>P@p>oϳ ܃!Iiǹy7*^c-d} =-\by%y0L~a[-Q84T*]M`'Id16Iý !N|u0TmH-,46O"WPΩl8w+v _x{{hw6aeiT3al{\ pqa}7cګf%xWVDBl I{60 L:T#Mb'Ojcd]Yz$*` a촧?,! Ҽ䒩9Q0]l]m.IZh"u 0ӣL(,PaP2jBZxm7Θ*Yi/CY7Kq/ ҎU _kj./wk] +\ Zwf:J}7=st>] #vXbi-p o0r=xy# Tf^'-,c9:Vhy=,#Ȓ^u4l~DİZ#ZN[*N8[)$3DMP؃3CvߞH.zx*y/8Unbtqsg\(̭Q)tT+ !ͪvf>4. DAlj:‰Tyy'(\8=V֤we۱X1l3Q%|_[;rXN{M~$Y 0% ޅ%0~xvΌ|Nh LDVH9F63xJ/2QҔwy4R9*_^9hJ}f/`~&u5*Z-8KW 1j.bMGmz =r~,1G `׸э[>L1AfktCl#?AF_0;zu'!4~ VK{4%N5 ˖v̩ %]{O(Ch"U"xKG;ʀB*z}ź'bps{ pWuoխ XiuZ@ [Wg3C|dfB29R&'Pw+qMІBPXLj$r m>iKt߾yTkFDQUr΁&GТIY5ϫ <1BK[[[9LRZc+Rx>T_S8^ЛuZ4@j/B/)ӈ;g&OOhš_1ʟ٩Mvs _s^F݂}V &K4%םİS!h2l8+Qga~}]FYLaTyv IHڹg0L V*-YѱgJGZ(š{bԩIb^_Y4m%Q>ʁ[>Ņ<ǞqW0ܱ8xJジ?g7ܶkQV]Qz/nAPί&3^x~Vr-#y 4[fsQ2]e?QAO/  !Ts|NL*f%=wp*ab9KָbCIAjilm +8<,tn`MJ=U67 =W΅fֹXs̈fMq]z8p~V0%ZpF>ۣ;qOqMz-n4*vʌSl,TnWr.&w|'Q#$o0G6`U&`wv6nIHN0;A۴Vkt÷}cuߒWL=Cb~{{1 )=6ҩ<\c⿤9}ۢYŬ*Ky_a q|''c'3*\ 1%Bw8h#ۅU8 IL9%p.ư.%kɬɺͪw4DҸx~ؕYZ{A[Pr&ɺAu!ϥRwծu%'#{DR;W˚*QxCir}1b1uan$zv((b6HB._Ssp['jXPRS\g_E!2pMV!L u1%oCTUadFN< ȟݕ:pRrݚ`joIZi,^xt_a,kC-c30ʛH]UaRS-kxmbeV]~IyA@}w 7b3@ڸtIK3t<慑/9RRܣu2F#ox1HahDr@1+AH&P:MB"x#Fg?kRƇ6({ַ廣lF g+ţ : NR 4ٟP$,XXXա/ġR4$)S#ΫprzsڎgŃeBwR PnjP7a(uowi-Q䶚t֣|fj4mM=<vdma:;;2}G?;y5lܹ]ZgGˊ 7yvVkRnb4IaW_R4g&i}$)+uMvKnR(k}eLR@ѳ[26nF&X٧jh]7\!J}7]Y@wún .S\|lw-O>&5L}eNLfJY5[1S<먷j(e=uFC #4Gy yO{+Ԃ`M{ԜYlw4DnS[O4/ yv1Ga$DDM&ȕ.̭9L7;cq'5XfG&fO݇ vEPFʕ5@ȳZXxOJEœ#$w'- .ā X-_ø>|)[?bgN_=.4}GW6dks q_.:X2r 8T' v'6F -ĥ—Ldٸ^bLVs`\-uj5MQ@\CKGN>t(Y+*n(ݞd}?d-.jUڶg2BgW6IstN sJU[LYQ]a-- V.AQP߄(rS"QUZULS%^|K-.GfeLiz"iv782rjrnSS m1ZCT\:0f\rS^^5㧇/GXw5>!~c-R|8\-7(#"y$0*>t5{??8ۘwY6pֈc;|Nװ_/,_%|zqH޳,md҆وRxzNBZsk"&\(ÌNH7N#foD/6++.B̮R)wi@fCSSs[?Uy* Ӂ0D4Dė= nYs[G3"fkNz#wiy/B?0%J"}V\V'4 E;ED!㨼w +JR,nYQ&9ibwtO^%͂.Œ85*$L+,y<ߡ!ƫ|zmXvXpyv%K](WC -gz 6̖ Dtbu@68>i3߸-/Kgr 蟉u(Qz!||D.R)6/U%z7=1B|PsDE#%;[S :m)|K\9{FIW;;@U|,R:IbM\HWZBܘZB_ ;q{@a܂|G]^tE*ѯ`q:g|r>,\kM[ `i};kQm o͹Ka;|0!C'wn2#`]ek!dH !NQh%S_ &&\zda}!*`Wvtf C2ֆ6D_v1~413bNDP`+=t>~ko6!/b!HAytͼd4/kŽ̩'eѥԲZayJ*'L7GHT/T+X$ Ĩ䆵ǯj e* pxĺi\oc&Cj"̼BSkȾzRݧW,Q8|r:A-;U*`&Vu.)("C°U0l#oպeΒ@k"V3x2ebdN1Lte{/u[5 q⤠LXPn}='3ij87qoD] )S%M۴m@ĉ$ng@[k߶OEF){T([ϒ) 1f]kE$ )ա"_n52ȞVj6,^Ζz{sG8 š"7+:M>V@d8xȒ\f7bys'bjJx}6"gE NOͿ<1\.Mj(@o v<{ w\uޔ%igL/R )!7GLj]|1(@ Z!Zt)-O9ǣn݋.*NQtX䰲% 2׮j }fԆhAvHd=q jȮ*A`8SnZj:`1){^BVf񚌏f\vMTZfB8ADlSlMxn iq} hh*B ͒1!z `yPm< YBB-6JRW]HۅaC֘\!_7n0'R vV!wTa4V_ZC!C͇JG|ӽ$NF6>ϕ6GUE?"-UuD?e6l=lF>)V\c}q?KizI įO)9oO T2,I!JSwջ_AXY$T \ouh :2,ϙrKuֵkK=lm8_{h?aV!KR'Sk'K79¹za4?OSDѬ |#+եAkٔMB]?҆xRA8 .b5u„xҺC#v_i5:F$yi̧8*|o0u|"i: ;͑IWS|o_=yDpc! GMǝǠ;L"bgWao'qmPjaQ= JD\@}Y36,@(RE\ [s k(_4ljzmo% ⬶:كPjN&"%${C)fRbnlìgl Ww5<giV FfJQtuA_8_2n\I)ޏ+G>;KQ ]_H\8׵X-]uF((/ީobU_ ^F= d U;0R3尯$ۂ&#zR|,H Nv.,'~*p{[M`T.¡eN&R>jS~ZYs.5ְbˋ;|VJ4;\9zWk"&`*U$\ь{ -_]l0+Y 85UK: b 2*J.I0cAuz8 \9JZF7or!tPw 4'QHQwl\K6RCp3ŦƚԷe^} 5qب]@b̝s,K+&EAd#U x{x1 5T 8DjCz6"j]0}"N8nWm;j__02,= CloxQU-M"2 炛"Rؑw)rkCkٰZiV)^]$`/=H&$= FbFH<]Med2=)S@Pň Sv@1n bbP:,v3p>g1v!lݼuF8y/DRǘ{FØ(.<*\r-Xn>X;ЛD mWg}7o <| 9Ksr%-Pi݂vT2q  R] $-d=6+~e3Ss3PBWǘ 뗢U *xL%"Q*..%Rf{O-0TUh ^qPn3TiZjAvK섧y҂VGn?EP 8c=bQnJAL$ ,Hكjl@*Ջ1rAv#YnSwq+4`oGR%Uhl4b4Ff`CI"AIe{vg;pJ _ s9!^_4Z5sqB9?5׻͘3}0o,Ϋ3ҾH3]UD|Nu6E0Er#ϫ|c( ܇7F:`5j2x>5~)W΢B"GE:{B} HQ'܁"wf5GLMm=غHKNԙ>LOT2Qs%C#蝰(2&Ӧzrl8.JEvT/ʄ3h`})siotJ*rf 'ѸwȥT̜~nqZčH;2sǂ7 6}I'V\T$'Fas FϧnshjiD@C{h/>zqÉw<)U.ӕSVMOxAo=u~.r1'5vc`c1%e O[:zOE/B*j.K;nvQCF} QX2ի V2ޔ+@ph]񏩒`UG$`OQ~:hu)gQ[0u /,P7n.v݇Z`b8zX[sR xOXv.Y܂c6:#9\oOm$y07 rUst,ɳTT0]{1 Y`?PzLu܏mr&WGr +0To}`ms%ѕB-e&)܄gJ^BPjej544H K_\<߹fuH ן͢nW*¤ `UqBS1T5:.„Ij> #Z̛]>ma6DBťwiZSvͦ[=&7:_r\6ZȾθ| A?dWfUqIF:^g<܋a~r(OθuhC` V7cLª.%tѿ52$%TK^x o+x ~r\) FjR)bT(@S*ּ i:B,?.RVZ-Nk֊k=9P"rf4eI8~\F|#hS R̉ \Ԡw&Ã3[Q8_NwAeNMԊFYH99 X[ǖHå6(Oem#%p 2\53Ezڅ.^aI"k16 m B[RY-ϴAq3-T4E:|ՔU%B6װIT?WW^ ռ ` #aEs햚 t#Ut?8VcU fP}W*-0*~֑u]~ Ap~qZ̚x*#m&Vt?HwD6co8G_SK"0*>` 곟c?3gv68D+Lun6~Vj8i/eU3!K"G/X\g@Y UL6a a-AI w5=Ш6 ׾V07i*@ecZi¨cAzP.+M,vlM(>D6Y:Fr{Q }J+oaVWNG 8? pH$w26:s &"&vgɦ&ۼaƅ P%( j5ؽ͐־*ȉ*OT,L`Vh+9O7zʆF T \04OM X7c։Bq-f3%X("m}k -*sLF ,Uyr' 0ZIV,u+Ć.DV(pܐ]{O{~W$̬mٻ^qКy*!dzmġߺc$gԯXTͦ<>n ol=5|xHLQ yS?CL,I' ;SbCp&2)B-'x6c`&z%8W@pto@5䁔跍4]D=g -$p$G>Jb,LWˮ/gT6w\LLpҷO\(kF6mG$EC7.ANv$}u#Oh"Ei?pkݵ7ixz06h~q qbdNөuA|Vo0k#%Ȣ2azkSTz"p]ڔGsVT7\ȝ59&0hxFW"q> X(Lw&OcY18#+1Z٨L3)cw1HUI,j>\gLtPY{ 9ۏV8^knl[K:odىKH<w9 (! \0`uW58M :Eb:V79+X r9m+a{A(CVy*E*XO.@T ˹6=C{o-Q#wX4'{bLΖ9Tvő൵#0_BՃny95<:n'g0GW9\E:;a's~^[rK@RK|߸5|@; TXQ}fgWX01XK;UNh`֮ޢ S <)$Y-*v98=U0wъ M`: APC$,&p=u_IKVxrk$(}0C z!6RAHrwYxLY"f6[ Hzi4[Łu>GDL:v4x upo.Uڎdϗ^-⒆UӚH / jΔ@@^u 33zdCj6@⤫}(YO ؆O#FyvCweAӆjn+EȺvHœsnwц b}>/쑺,\*^fLfq^…KÏf%@gn{.&0-̾B8l$aJmudf_鿩z܋+lAhS**I9W=_?6|Knk@nr;2Ad#FvBšUkESY:$Mop q?@dMK2lx70lΎM)urʚYUĤ }ӷX^FbboP{1Qq/UC8@+"hNtͩD@ٯ Et 5wvX-sU,H .$Px<+ahN*Cj(v\Qxa% hN1d5=fuּ~FygJu_0i&R.RRS$%plR"'#s,i$NI-L-GGXT65[[ h'*ph3.g6!9~DIh }vbLޫ1Ѕ.1pz'&?MHE|D6yޏg}iz6y7?Lm܅Mn[~>P||!mr/x%]2/B(~/I:u xNѽ0 /w{o:UCXt\w- ms/ Ke!ppVaԦ~1+b:خʹr7+ g5e]Jjw?IߡGjgGݲQ8!uYHSYT\X]T+5z-}WWȶ3J4kA{?.3.k:VnT<߁ż_|Uh:uz'O#:Փ2ܰ\2*[;]iu{#ml9=FI䦢1bf`Rܸ KakOKF8PbƑ3k[&EްHm鐄ɉOtui@}sUSaS Cv۩\ ]DLm 1U=>`w7Fj׺NtƧC6!w~ j96tiGo9na1;GN˱=o~] xo:/#섋"sk JiPgf r8r耭8S"*VxZ )J`3n$MZ"lK*p!XJ;7x6%^u8m{M4j.evL{q1s(,`i=po[Z)@;9 Cxd$<Km>dY5H$&Ys*P{w>/_(Ly|WȭRe՘QźMeilmZc _#'\lGP]Zf[VR]K}ܳ:73yUzɱ8u&{ l^ \e)K=9Lsx'WT5Okx?;Ѯv]U<(nj8;Rƃ J>as=oA?y 'w$W̍4BPٯ26(0=ѿow=2aP,lfє[E!oOxy!^.UKj%EmLi}MRߗ?/+dTl(XJk`%w Dl -vgeT1`3O/ȇ@ɚ kXb 437 2wD^px4gS|Hj\$_'Kdɳiố yq= i7 qú\ķM&)?~S+9O =_*GiW P*_KC}p-WVcmt(&d) hс( h3H3tL$e+bTq#Ϻy`MFP B 90@!;ׄڇdX}כSdt26l?r.>z|`w%q0gWs+= YZ