pacemaker-remote-1.1.23-1.el7_9.1>t  DH`p_ $ƨ *jU<Eph92L*LoUʠ24HҺS]z7dz֓_y~sm3i+3l!kd-&Ю$V4'FTIY>җZ+-42D(MvݤWrÃ[#kQew5A[$0AՕ>K:8L妘~v@"YDuZN!rz؂ؠ_ (<Țm;dl^ڜR~.3_иG-:%]eFMAl@AcVS Af0&j l眹 ER>&x ١ѭB+`@xZv}K9|.\0/z>Bh?Xd $ R| %u              .  `   ) ) )({894:23=3>;?C@KGT H| I XY\ ] ^ bd(e-f0l2tL ut vw x y(KTCpacemaker-remote1.1.231.el7_9.1Pacemaker 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._x86-02.bsys.centos.orgtCentOSGPLv2+ and LGPLv2+CentOS BuildSystem System 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!+PD֝FA큤A큤A_____E_E__E__b6c3666c6148a0dd26da7a3d7bafa6fa2fa293ea159d1a0d2ea85dbe283bbff6919b9653a4edb248cc7c6d0907539666b5fc29006a3c1b957d4dc846623e66bb8eecce1e36027d6dad0938b22afa82e635de648153ad2f69fee7732f04024c431692e89a98d4e81037401e9dee476e71cf634880c36b4e25a2adffc3427dc57e415e75478c4d3ff0ab7dd812c2d1c9924b4a2478140adb281849d868f9f74f058177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b8806431f8782affd99640e1e1d8b61db8ec360a79fcc0bb4556f393c0162b8b23705aa@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpacemaker-1.1.23-1.el7_9.1.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)(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-libs(x86-64)resource-agentsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)systemdsystemdsystemdrpmlib(PayloadIsXz)1.1.23-1.el7_9.11.1.23-1.el7_9.11.1.23-1.el7_9.13.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-1.1Ken Gaillot - 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- Prevent ACL bypass (CVE-2020-25654) - Resolves: rhbz#1892140- 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/bin/sh/bin/sh/bin/sh/bin/sh 1.1.23-1.el7_9.11.1.23-1.el7_9.11.1.23-1.el7_9.1pacemakerpacemaker_remote.servicepacemaker_remotedpacemaker-remote-1.1.23COPYINGChangeLogpacemaker-remote-1.1.23GPLv2pacemaker_remoted.8.gzpacemaker/etc/sysconfig//usr/lib/systemd/system//usr/sbin//usr/share/doc//usr/share/doc/pacemaker-remote-1.1.23//usr/share/licenses//usr/share/licenses/pacemaker-remote-1.1.23//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=genericcpioxz2x86_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]=390a826a8d5ecd8033d29f18fbba32b0f6f66e35, strippeddirectoryUTF-8 Unicode texttroff or preprocessor input, ASCII text (gzip compressed data, from Unix, max compression)RR R R RRR RRRRRR 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 !#,o] b2u Q{K |#W豯g@eo’nқްW* )qL\.}P9dr+TXnAף샻dxt?96T3E44ՇK6x⮡uWYH-EN%[qjKb.wWQ57<>:ĩ8 ܵnRYd&$;6WajQƼm7KT[qdZ Yt呕ٕW3e DK ^ RE&Q'ic wQgZN &3Xʥ&߅TÛV\HTzT&ةAJϓwUKS%jyt G%07jVKϑ 335nTh S\v& Ɠd9ڒkGQh?JhkYHJ+1,˦6lqшk("8Sb-rK.: BQDrŒ֦œuAM;]_ۙnw.Qʂ 9<6 5W) 6])6ƩWp>0,bS1g@N"_;y,XN.SO.hIAqjKoG2,\suÿZ>}GSh"zvGȃouz52kҢ#Yq٪ VO@,1 PnڧuZau7ґR۾Le!ҊkgKcɯ[lәJ>.N77Pn[u"o5ŵVS%;}yR-5.YSz~.3 "R:!-ntQ @\i`?s` 5'0MC18{U*;4X0>fjȝc0UCڟ9 sIf#o@ENNH2rĂ5uZ)H=in=FǴB#\։ZrDb6Mҙ0o36_L1eV5AﵸyB 6Yt7("6Lkq#Eϡ(ԣe.E po) ~Czw9 ]*$$u/L™+{0m2d^-{&/B>e-( }q xx->`>r\x KӓP1@¬k+r'0{ ke1kj^ ,.9{tk,F.>J3%M_Wc()ex1sK鞴=Q+FO,O'XViWW{w"Ƿ=|µ ̊,*+^ olfVį>-BnQ12n'M_ri7Gyy'A8Bf/ft/a߹uȸʁ}/S8˭QW\(EE6׆ YagI( ҌsTb NH @2+gdu>_)k|)\x"3jЃ *szZD'"kzm7#7f]rhp^u1^T6pP^e#ACN Dg(9uٸazIȷ%YR`,TGd({_6ŸTBaG˛gU fxwuA qFJ }|d/6C 8@;.kS?GC d ~}vw]Hk:4*:/SC<ca |/V8`AB1 TnJV H.%ǪP++D7@)%8=L~ <+BC$Լ_lz1׵[Qɨ5t+#^zIT6i^(iRs=W,uQBh$D(v^v3Y լPj~lOG" =r6k]51Qw+)QX0zryDM}a+h5~U8Y?}{ L0}r;7r# @]Hd-DZ3-n!6}QAt [있QZda?%E=)gJꮨn"r%K!jl k"*40׾G{v`RIF򌹝tn. TQOYA|cP֋X5GIgWu qk7}+{x|0/wC $s0_bceK` 0YU__`DjDJ>6(K ܲ:ښnҥ*@tdU|GLѧFQvE?WT=5fՄ2Y7DX%B ։fhz rmJHhKpfDGjiI@ H\V;<-Vݚl2nٰ)=1dXrm͟`f<@ıo;9nf̎Zv%20t3-*q긝Z;?Y.h ]=AoCjG >3UMp3b\(`e[_+~yd3)Z7 \A7ͣ9TTv{tT?~#ń4ynU,B]mT:1+t$d3.~b4(+p%{|j!#j=ywKslKֶ0?}D`tΰT.8ڝRyA+dS{s`!Sm*>oS$?,^]|<@h4۬dL~k* *|s 2g?(?lS%9 ؛QS!Gac?:2sL?+䚿SRɒȅC-J[5Lh)-$t'z"5_ڱ,bF`/mrұ3'a;g&{cl6XX4>VjNQZR Q%Po60rl͵K Ш= v5Bd4Phpm$qC _s`Ah'z->UR[:{Wծ>!N^Jq=j>v_{Ĩ#Cm7L=;co)DoU"jlzJDQ8ngTvim B DrMKwX)CrxρVue*J}(ٟ?YdT fi37Rbu\_K~ceYwqcC5V=A:^X (kQEVXE),~VcVSHP<ӜБWDC~Nfz„ofX~/*Kd ' LI-,Khd+:whYTWZϵP!X#,rT#e> b_$3HSxIV@Z._+ᬙ8>GBg'=,@F{cY5}}GdV %`+KU{<u4R_K'o?!w7J7/JG\v4Ƣ ȘzaChWGv..Rn]R.moIC1ZE&jˇh/'O?l&jtR0@-ZdhD;wն&~hxb?DEqZeM=5wCzWhhy_kFDG?nqWJUgfj: ~211I.%E$#ɵLiN.unV8@5>tv5$4@ 0\g^<@|<*VerbCMؒarp/ bgGo(zc 9ʹ"`,VHaKTDT4?ܔ` 7o0]n5eķZzZԘ rv0'DV\CE^hx]]o9^y%~ѫULox#YVnn.эzq,3 -'嘊ֺi -?LդT z%"E7նnA+ӁxM{9uc̱ĥ~ղc*j0jFڊO.udحLmyrV҆_pu ՟9v8-QB9uBGL}q$3i:h^ }zj_ivݧfr Oik1=Q~+ĭ0 H ឪD;ixLƚ<8*#jI2~(>Ubԕ59#-[. A>2uBq9ƝC4'y &Pd3[uhx=pڇ0€&!djz* NKI}xoug)䣯ωHo!#zNa f!y.g,fu7Zk{v9^χN['W |@}kHE!6~'AIsOu ݤ&Z3ЭbDůxG[rIt+sEÅ? 5} t)݄#nQ>ERͩ7,vdIe#᠂< lJ/a?QTI)!ڲekYhىYZN;|Lh+Ul˷\G7L.Z^%K%,]WclufG[=%ݟ7O&#[୵^L_,*8:0N6 YRϴnLx? i'AA[ݠ3O;t-%1Ǯ;H):ZvB 127tdB|ki6 oPNeXoel%^v Y9`UuIhCO@wy Cfaml8> g^TnPe <%b cla>؃&IZPlq+^特7Hh25K%¼@Ih%HWI7fT|[QyԲ#f@ nlߓFpnJf!84@aܽk[1~/@B"#1҉Yj).qs}|0˪/J9r;S;v0ŌVk 3Sy0ldu)_Pn*q e?RqB@N6X8 ^z6OetH=jb Q>A^2vl+4OyGbZ hj@w^c.wbT>^gJJX~Fr̾./G! ]ʕ5\}uӇB`(U me6##L::ё-|$AF4'f@ SpkeCvpJ%?8؟HSK m@Ճ,W_w dIOжC/m\3|} `%&:hh<4M{1j!:EU1x k)ct$u ]{JOJ7%Y F?ƴm\&A]0SYcgm@UpyoɌƠ0zXC)$!eqU^j3?3, 2?qBc=bl&yȏ#,.ft~r_h2PN]*?&o6ό.~, |d@ML磨P3a+5maɴguK@;˧Y*Ijí~eL4_%dZ("2xلD}۟2:Ǹª[Sb/͕~3;f;XQbo<$4vnNOT(92p?#%!ˠm@R `\q]s [_F[^?&無-_\`эiGΉJ-"T}>i B9ԂP)fb"D8' EXx/X:Z2[?tnu.??!'_pI#Kx (;3Q8wi h)yS~Hc"(60iک=a /_gM |*iw YzlCa"Iʉ@ ~I|7= Lu,i~fn@#`c >(A1T%bk͌[ y uZ~`ވw=# Dp~ED40ʤͩ4.O}. 7ABWmҶ~u#lҢ2vqW4tO vhTޤksFY2qk뺻m1U/=u-ͷT==+YRk;֎PH_?Q^HGƹvc׆5Y 軁 ـ2-Sժ &ςBQI!1[^c @R<ədBszM#y"}; MSJBN',Qo)P h9ߖWPQʌ̅+kjEVCqG $BI9 0F竷-%JCL Z't:;}`pb:0_|ܒ!@?v=ɴ!1ѰI 2{UZ߹5͐ I^zʀ@ e_׻Qwʝ'議lT[y,وd9=ǧ@),#|BJTuQ2ӭ @a-lu{߻9_/̉9ዴѵ0|2)j5 dI.\vB ^`*ML"<@Uq#eCm/`WK` >xKrՐ~+݋eJg2&[4#|_YuG)ܷ-NgM2 H&b ߰w6g)8"x|9p#f)svO抰eoQrK=e:>hyckEgFf/OiN&DU*`SSZ_A% LQ+ Al<ϊ 6&T慤OKjִب>~,!sIk\ٴ]T]z & QZb膧{㪞x2%JQ DEO4j$ [*̬VbySSRtbӶL§{s]̂Jl2zej0ߐpN=э,LEH`zP>致:И`7?B{Z% @goawk0awAP8C{ujWrGjgdHɰhE$f|*$N$qD[61MHSݘD硐xo~oU0W&4UtB6(R]gtti/`yU`BT׌{eKWTP[3d ߞBbFDHI& h/8¦>L1Tf`eB* 5_i»噅j@w m}BI OҎJTu\%8ޡts^z\"yJ`z9fjHkqY撁+ Ω?{],!s+>q&ΞhMWDClI֨9\^݌͗VoiV|=WٺXg V?a ;b}[ j&sJQ {mz8wT$/d|:qE`PST;k_5*x ׻ C'HNP(mq] jqc^ցh!4 g:hԑP!TrМvԲW#I_SA0.hmA_ߍM,/97$(-x~)d]O/+;f ŪA"K&H&Eɼ0tXH8NJ_'Os`p4S 杤])%\򗗿}oSJo89KkfiD݇g5iyeOί]Zj\ +~Lq#K<'?qtbO4Tco%ƒ)PmnU<<|Y tI?ͮO čC "ѱ11g~k[Owͳp2>0ςv OL p@v3zTE]FB̝Ӊ7gYLa2QX5š֧%p4\kVo]7vs85^%%$+5=ncFy./'NJ@+r^_'X2(]!nM]6SjM6P_xg=BX (SՏvuV=MF'ӫ`k!K{'`8?H?]_FڽP=37cdE\5rfЗ(]D7'_cZlˮ JsM`^x"x=~;!z-pOH!e_u; , (iajU22J+d>PEIΧ;]%T=q!w?dr>Bk' Y :`+M~{47 +h_,%H)fpHpAd&`Pz(B=LRrohu`A!mx{ 7CL,JQNdK+|;٠?,AFs)-/$_ӿ7@5ܧNi =jHAOz-&q},:@Q/\^ "B5V+Ҷf=Qfj% ;,WW*' N{!GYOqI e*V.~k- mFj?p[f݌>D ^ϖ jH嗚uEJ^$~14"tfsvPoӣRVSIt\jV~_Eҷ{;n W!GLV\s]|h i_,]o!nOH1%oqڎuz$VԎ;Ng..*|5%`1Ņb֦Qy<YdoAs}ݫ*j>g]˚)3= EX`cՙ@"x #bv=`6>ca{[M,켐3/iFB#? ?-]nt\Iչqafp(Gv{&Fl=,l|i<ie%hGAbW%7<Ł&@B\Ә@͵VtaADv×K# F2tE;.Y}5. qB*ItIDҿV]:%R5?X'<'b2gQ2޾}̔ 0[V"ee:6IOnfF¿bVB,O@+W$JIੌƗU+.8Bx-?kó߈١@ =%}p/%찱iD վadnu J b o]Nj4:V-jJ"4 P;%Qbr`لKe7߈:`"7Ρxijh0B96}iA#nTu'9W_ m݉q_!bVPD@eAS%B.1ݟ#C &gL%j3lz,<r {oJK5TL@e†)CXq*g.le!"Mu|-&eAt> }1fz_.rBaB5]_B7V,ٕ:&jꠢa>^ah6&U*u3n q"XH t,C+`슋;ݵ&/9Isl;>a 3*%i| -)t%c3/hT , t m67䡶ҎV͐;CP `Rڈo ̕GUɮA{]77Mȅ+ iCxg?>k`JO /fDxN#@E6Jo 8TM!>r"' pcx^ms>'Q#]uV5%풣4![%ĝV?]ht_=ٰN):@Ry&1 U}SvɹPV:OkcTw)PJ$13/חtA(Ťk>3mLS~~f#APGӨoh$vGW+Gs``a_'BW՘W( |?hL7}SʱyұHu[ 3+Nly( s]A{hՕmՔQd>ci@5 աp"^)/0 51:(pFġ-#n.l?npxEy.4f,e2ҧ8vHvf+rG}/OCmt`t)PG[$J:)$X6sE6MDe:=2ZO(o`ȀDgq9CEČ ͳ9[ͬR_EO4?ㄤ, R=sPnFٻNlN+!vYVG_qt/$CfZ7+_}'x5QE«xr5֋[ _jS]!=#k>P'-=nU\rBAtY4Ra9HВRs ҿN(C:œ5r{Ki; LX&ZI~eCӄTgĠx 1-=WPx>CٳY9@> 2@ cVu ${QW\Zch^>ٳX\s% e _Oy}٩S ImJMړ#@oژ_@g^Mꌄ"B紀̉D6hſ bQ‚hQȣ60J eu=gc πP#LT3ZFMvdƍ4q@*\7j'7lvp5x4:7]U^ݫeP\旅Ǭ&$#/ZHܤAu--&Ң`N#ȇ NDkfP!#o/:TsS=*)~˭P 'nz?oq :Kë28q߫I#UJi7[&k(Yȃ^չE@M}~ 3^v+WN&H2J[TȮvV2 ҆+@y3F~\M0NF"RgF$YiDYXgj\NjjYAlDW2Jd@G0T"iلrh|6GZuƝʲFJ`$%3i"K @P[#g,z]]>U,{%P)mt`ݠqfZ|7Z>:3gIaiPXcdu'Vӓ<9$O,,"dpØJe0VGz.Jp ]vU mvӣNlɫhLY0٢|ytZ2K'6iln`E\̔}mB7DVZA6!XD6A7i\q*xuJ8dJ2'5dzeT=s!#Z؂$H7!(ݨ^#LOÚ8Y9 O#䊣-|uv(.&yF檪溛QF؎M#[qEʰ zU{Xkps9ȹ/p LtcM1`\bw_i4xVl@豌3;nX< -?uPI-mtTT(U;e.ʥp෉$dqum毄5Ǚ^1F]@ U܎+6 ,j:T+d<&&t{yJ3hsjZr\b~g(p&p(zHhfU' ɇ@}+  4D}Q3^` G/EKlހwynWۘ7pí=Ǥ{77*w;QȎ>K"&=VRC ȯ[#Qn|ny$)Z)[ݯy̌4e>Zzr|59hAbÀywy ̂'H/Lߌ PkT$E;*qG턟'Oyzt@BiIԂ_aKޞ͗u=z!-`%(21RV#x%GB*Ir+$,pVco>xӿj8KT85G c a⏦3"VK–Ĵ{{i'K91s ^&Rޙq܄Q(jb!gC):|  =7N4G׈@{臺JqV=S+s,mߛ2u@{>ɫN_P X%3\UFRs Rv 7G1 ¾|)⤢7y:u;fA像fŜ;޸I6޷ʺW}e{hvzxz#E '{Gjb_kh="IC9^ 3ړ5KiSȪfU.}jIbFf=!aڂPe!/}6Aj`$q֘f[{_Af_Zi&V4վ <`/kuLF5/%XG*HV9GeGI  C9w5=mpR<ɢ* )s v/h٨ᄆXOvs+ YƋ:A {'&($q(h;ж=%D1P!"ցź0 @Ѻŝ"#Q+2H<;!U:vk!5TJCb#4krv0_ce,́R5IK$pPDA܁A;}<>joc2^#!uOp۰RKTh@֘*hߝmV]3EhEU=L>1f$~"X8;p[FkS<nmoo8xp[XPA%1L^3`h=PvDwg6w2f7)„ |DWħ8fe[ UC]ingoL$cx6isx%W[_8wlrZNy!_LRn8ؤ%;eUt,4Y,|4y ҆x7{5xۚ(pnQܠ !R *͕m} ?dMR)g0mb,'vj.a]:,o]E o~ή%w;AAKxmeP'OaI=84Glђ4Xi筅r )vnOV8 ]' Y֫i,Sh S \;֙n &\N^WAQG fYm9<޸i@ڢ3*Yv1dxtT?4`˹SyV4ߒti`U D.ﰡ(8kt QXtrUbzSlRV*< G ]g{dDlCJ!#hٹڸkמE-2"D,gh0f/1KǙbeɒ)՝L`eb{A Hܠ1uU735fo)@74m?j {rCg\<~ Pw4xgt^v߀ K<3]HqFAI&I=nL>!PVNkv7鸦_ֳoB)T$NuJ 1Wϭqb'z.ɕM"vAKzS $\-k;lҁ[ jab&SŐF`*eH/^DdCCQE_m .nawG"WTQӣlgBDo&AɎO $GSٙJ\sפ&'M/s<~e46'7RIeVy$7}ʓDYZNÜapN"65s rb;ԣ1"XtQ$F]_8Ȳ'7XBi Iυ/-4Ѯ+KBw{IT:v179l( 諞bpv\`|^^{ 9T)@$\$+Zuɘ2ݣ&/Cx!g^>lQ._ ĘwbW\1:QlviUM # ⮸) [2=Кs3<ÇG$EHeo;oJ*ـN #f0caўN8G|`+9; =]V Z狄7ڀ@ca_D\')EPh%At7p.L,^W{US/h >Qdz4T1xy↉}|Lʿ Il\ e" ɫ/%NB w,Cohs2GnёD[g ?" ƛױVm}|@A;\HdB^tAe mXyz^!0SD@M5e|i;ut Qy5}aI MpF tdLٻ{l 3F_5O&Proukċ5E%/WӲ1 il~qkAj<) c&`xXBRhR<}ܼjfZ|5$,E;՚6 F2Q ">D^s'WRH.80Ppr%Vc`zl9k;њXW;僃/2huok4i~酖|(usTq{ #ʰ8mPչC?ϛEP51"K-4\se!: jýdꔊ1&t7)vb#3y~+o"C3XZ[,r-?϶۳ 4Y&cr=;~:r\ޢh>%jim;X+P;WzZX,TB9_7uQV&R&f]ЯS1hhI2w8&"hJ}~O. R@)DQ2rUZRV42< y2Epp|bC-1> υ/09~2n!$-+F~f/AkЗIG}έQ˹.6“ݬ=w#Qu)lnt^udbhf0~6Fmv7eMdSTaFB˳L} UxӸ1q\&-) ZWص^R#RL2dmo?/Lq!#SAH}hHu NnZ:eOkO{ni#I7t[~.- OKu N c::+t"Beps&A_ڞJ8;yᕝ1EΊc6/jx1axt7IA|P.iUm{Iz;6j)ZiTbe%Pa=\遜o]_j~hfZ<],#0΂#EOoTcQg{^Ptf0"lJ1TygPeWC36U9z#5cY8>;:4ΉJ4g4{\ rM;?#g$]19sZƈ_C"#ªO~92¾D<O!8xf0E24Й},X+o/o V5X%~<&}S& }zu<)(F'54^ma0S1NDG5?;yT=X;0/A5R51đV礙 'u0ۛ0Q -$1s8ē~iYߠ9̸.iMo-"Fʅ'Cx̦.|K. g92Z**Ja-Q:gW@s煖o8mh߲E.|ĦˮVٕUQ6UN'Ѫz^ý"'A}9! LPul3H-{n tc(|`sUk[/ sHhZ2Pc/lz7*'~t?Mȍ#ݠ oPJ؏=:q\NY}-,e㏾ʌJ駅U ͬ@B^ţ $Bmhw-~4I@.k^g@IݡPjVHc_ءҕsz=hV8Lk6WuYUQ20څB\}fyK1Kd}*F4ZG|nD&ׂ!M%'(0Ā  )*bУ*YcKfqwuշؐ{JOf ZS:R#R<ft!`>7Gp2;8P~5׋#wlsݣ =IT_62( U&Np J,]&n{Nks tJ!pnLҵ|D:YH]NU"xN%yiƯzTɇ5+2EOdwyeiX +Ѷ<>2٨JPRۨ|TU7}b=D#Of@prL#$}Gw" m6cfC!~T3ߖ3G: Nrq)"2ue naJKX`[e!aa[a!rR-pzd8ggFF|sFu]7Jq6ٕޑ:)HG!v'I:30T[@G_ygiV}ozΉ9hܽꏗ.3kgɹпG!G؊*a82W0kNz[GU䜋P!D=#Nͤ^8$4B0IV @UCv9jv=#T|rhm myqP]"Hw`TAŤ6O9d"&``O\#}7;ֱ`I`N3 -ͰOu+ npmIBsMi42ܒA_=`\d,suFS/qZ񼗍8F݇sLռX[#n*f =JH~+.2u$ǭ(20WA?V^Opao"'ވIۖɲ\R"eI$pLʹ鏉^Y唜Y[ :TŒ Mmr:KiN LzPjt(a7,Uݩyo&%p%m%hebRR@hr8`:=g8_`tXР)O;9`h9W=e26U@=$ ]<@"(f>J#M-P8"{9)F'A(b1N#%[nq|A}U?pFR޻o MJ/ɀΧ(,__Fks-pͶLC*Վ K/jrAQ(Xh,_]LMkibXHwBݴ"U\zAJ!0zEQ$A0a(3x Dfb|ƙr n1:X &ӣMD"=+Fcк=hRMlB_8ӞDKBdC v5qrn*.ne_Ug%܁22~ն>te&YkCR6x`R$c3<sdb 9Džf fNwo$g=ޕ302sB[-)r^{cÑ!-BL#b ୌbsq[)QW z%6/ \?|>&RYy'|F4 { j&=8?iK :l׆ N?d[F"x=qw7&!^% %4@ V쾷v$Ob=bbހH[usC)pIOb zNUG.lu4]I}#g;Qbc^0dN "JBf~xCՅ)y cl2#Ra$,nwȕ[5jKN eם^`&V`Dma%ٓPFN]. CE/1-G(D&PtǡŎ8ץo7ZPq=J&wR90aZ|!Npr~eD\ҥ<^,yugV `r?p8.tV+(شL6?׬×ڈDE09%Q˖,sEPL(Li[%?IlO:IY:̕W,$ѩQѕcRomQ].RQb5wkˈߐNJPa3Zci+w.h$i#A7`Q3)}訵Uq́}PK xFH"/b: >KFeæt{(B,tD<$1etq$@ɘ)%a3;]CXEmF0_0Y7|DW i'8I`t톚Hs@Gf@VIKSc x3#Z҃|5/8r!ZT\[q0(x͗?=Ne׫ۿAт< ebxjyAz, ˕΄A7jb)e3tc^Of떟cüS9V⣕QlPVv!ZV78L9xPNJM?6c'ikCh 4P 6D?͆ wohwb<[dZXVmmjZ9ٌRK+ GC!rY`ÝHT&> }/z*۔T֣Յ1B Hu Nr,gxc)@<]]fgRc$xdٌ 8e1bim-OpTq. EfTtF7K{#މeUmEZ*+ r<)(u2&ntR ax #&Ņ T¦/2{ժAHY "4vpT1/5D,/=2t LܑD'Řw8mVBvڠۧa[zDfi=D#~cq~W+0ء;#P';.j9рOBbCwN 9N#QC\i_BbOcYRJ7d/α+EJ):G+ Y$3hd wߗ22ți#ӾD̘Kn;7Dm80 ZB>UoḚ!u(k7} #O~B{([”}3%M͇kksp*DhD(Dx=9ڹW:!4 &֬#"^k|(RhuX;LR?,$xaOV/kwj}àe<O)?7QEKxvXN=|QFhT.wp~Ve@MjSQ4O0#U$dά?P=0 ۱6𞖶t2lTpPS 7IZ)BRʹ XpU#nhJ.ǿipű <; FG 3ym@Zt !PKNu$(3X |)x8%0dem=nG7rw/Չo0x*ڸ6\x( 2?DA1,Ɣ Mh|rx;/Wd7M!ej9?h2֥gPhI] NKihTh=":"0*aW!uJU9אR۳5/*ݞ X 0/:P )g$ƭ7kIj aQ<*(cBDHG.GB^D֣׳ ~ 5I6[ςqTDEFi0_lb^U㳿O{pv4TDAWj쎹HT kk5jZPޚfXRC[^OMYW*DV[?}x T` lq!p?ۈhz,9& PϚ,"${魔uNw"=L@H-2d@y4*_jϭV!jOwV8"?a9,m!9pNIDH{*Ij#(pUm ӿVkF^žVVvXQjluz%m@&9@KmN6} 2b'6nw~JO|ˤzynbEAA)ow㵣1*1say&V]{H|AEc}YX*7cBTF߀ M%z"'ujNA}!/R\ɤ8n ei@yLYI0+y'lK]Mt|E,m'g S&-Ϯ{)A|iӝ &<~j@a?.v_[8-Re }n :?Dy>pU ٢EH<[O߳t Y|Z,HG*E#..9kbS۹XٴVYB%Lu^JG bW` Y+\_7ݷ)z X]=A.CTF`x_6y,CQ 5c[{^j?/FXlM&dϝgPa$}hϨ7< v1PB4`8v 4=(h]7#]W?R]c7k٬ѳίl( I5Cwh/l(n1R֖[*>d#:) pa|p 8wΜ/%2ߝHU1z˙:.CUUkiR;:w>"oA Tꇮ;DCBۑBTL*DnxB$n@8!i[7(<=TgbtŹt투Yα @<$Ԯfa-)/:;ZrW\9HsSrİr:UIآ0x+t߂&l#DRs@L1O~POP9W<\nƏE H;Z6>:3.F },: Sf>5d`!Q*v;v 7PskK_gZ7*݃`ŝ_nraۥBF=0u U8âOUxE4$| ΎG ͘?l܁bE( ͔ r# > wL:i7q&ezqlM:+:Q04V*o/o 3jWbl%_)Z&HS. 0?Ҩgµ /@%G~(Ws=nCC0.Jf/޽>R2/뼧28Dl.7e#TW`881Fex%]^Kvgֺ4b t m߉XUr!s5Lo]]s'>0f0C,lc;:7=«DCUDAXgCӣwf.ūHCڈZr$ TWኢb\q^Jq%3=ȓ"ڹyVB 㕻$ 1 3BS4;5C劼T5)]09p[ (b},l ZHئv&/پpK]IB,-/TwriW󹮛,CZ9f>p3iY2VŠdoѮ Ϯ| G309* "k0ѭ<2?8oN aTe[ƞuzO:N5sU "V-/|&'CCwX"h?1nՑ݂c6l麢 U*!А#S݆uMɇ N"evyo`@5[$efxXvBN{k҇nlpޙLqۍj(k\[e;x 0 ܟ=ةY+7G;1gJ.`P'dsqN44c.`ڶ [90GٳsZ/s," 8.r唏w9jN;u&gDM8X2־)}+~sJ_ 1ɒqib~+.̒9ᤄHH.y͆I!#"Q*sP~&,BPny4Yw{-{JՈRW&%v%"c%UFHrc| $Ƌ蘯z62\S - H5Y.ho ~r5#L~S:v,OE9XY22a-UMfvy7jK84 +`4tc(L1)Ft7G }̈́ ((uU]1 9o%N{: _0K0kz˃bԘXtn0L QOw;K%Oh!\$*1O߮Muג(Yx!ścsQ1|g[/ ]"QXBw fxKcIrZA0Q̓K!k۴@oR"'ĵ.`@\ Ak&|RL0`]O<Jד@h*MpXcllL TC [uЦ.emД64EOy: [,!6s)H3fRX 5O(陕,Yјg6@]~.Ua~{kBF0B|,y #C|/q+Suy 6!0mhMH52SoƺF!-Tq7!|(D]rHfR@qmql`I&x'ttRPj |egGm?s]7!UK,G8߁\p5@e1nuRqZ8m)1ڥ*흍h^f`T=bq|\ePU]4I1>67V8[< 殂R EBE&0c5~Z1I֐p [ʡMbd4ڴƍ%7Q Dj =A8Zҫ'vUh>Cn +&и &fxQ΀ђ ns y,; ̹R'g2ώ'SnYP"ᥙaD#9ŻD[62h l 9;<X9|Cv4Iq{KxD2 g;m/Esڲ>)qJ6|xszG[x-̣ҡ81%G<#w]4 XӠi" " ػK\ 4 `,6".TľgF~8% PwZNSQ-ܾ'Ύ'1y #n6$G(p@7ϼ8 ՜7d̖[~h> q6FrsV[^ 4|%jpL.MhԈqhr1Ą"M/ӕ-m7PvuF!Ȗp$1B q w5YD%jgmđb`J'Sts%eEl+n>zVSwI / su s78g ٭Ay*fk/M$?d-;ηVXre6JI)Ӧg*]Z"XZGR|`M[=,YVYq`BfU0jʲW.6a/My^[x:4coo/+%|a i HN'㘍,6ZD)4B $jY6SiXL0{9$xN0N1kA;BgC>q oa%-N?BN{p?KQ^ryڪ'4(n`J\N xua0$:L2wxVAMP@ypw9zX%QʂCveR6AWAنr\Fڰ:N>}gK-p^oNhvb_ݟ$0(cIB3*@Z Uu'xz,^ .[]i?tFJiS ҡ r_i-F_ /($NIX" ^dK-dp>u lh!hzq4C?|P`I5NkMFҖ-HOl߼G 3'5=@ʆȠa xe(x^Ǹ~ JGsya' ;Vi}5=v&H?P_EBԂX秅SWGi70>%^= xF /TA-ni~hm!Dc0%ʖEriK/p)^;E2BwI KϨ _wUUfzm72`^;ᜰZ(<w^Y-:v;M-ct7,Rb`F%"14PA|;9Dv*SK? }@T?Tz=k6%g?ըGyh1n&ɳ nWropNDE2o[W.ØtقwZ% Ō[qi+&^afMBR¦R .Z՚|w/]V^ck_C_JԟVy7ɶ ^dpv;L'yuޅ=r9 kVs )'atULk6u4.is.B8} B7`Va! % Epl'oo]ފ0+Ę9`q0Ǐ͞Iotԙ) 0e{Y+?c{!:qH5F睖q2'aI!4uNZ)qk*E%{o{ ?R[[# 9-t@K|m1wѺz[q!H ,Lq|N4E"mMC~ݭnkbOm GQ3!{ޑ#wOk>)LݚMT3WQtFb;+j*>""vQ w8q챩%M\>CС|kWO'-yY3֏a 1GͿ<<A^8i_͈'INjP11|ptZπy\+\|\-xSЃ6Q*iqNfc/<"L]w2X\=(\֫ Sfl X;gYdS -F4רV{P (ꬶ.NL'խdܔeM܌"r+JP\ 2tL58Q1?/}dv"􈻍`ACM : q- +n/t.0&l e \<ң9, f j.(xԣrW={~/O0=ίu+)aK5|ef5KJKBBG9zӏCQ"Y28Z!u<sCr@2w|8~vi߂S{Q 0zMzUwu*uFXl C`8Y6bY|,.R : `4Vx7g|U*IN 6VI3Oܮٜ?ڢe*ԙ#[{R45;F=hQjmJZp=+|n{R(UD.ANzǤY;.R~xSsʅ?`ϵ1Xퟢ&^v&h `Yh,;>RgZhz1ކ "` np\`ܯ€Qͯ-ᅄ٘f!+'.;*MH\mvd`4~F !2+ߐ9\0vsw;K)$ȄBWjsDYfVN.եɏa0 S o[㉁]'MQu"4|xwUht_e[Z.3Vi?7Ġx?2_ ڿrMSrs_s l*¸#6D>8A3x$ޒ !IU]+Cy%ˁ*PZzoR +iE!NH2 scLjo 2T(Ftg>)uexgs9CV,WAvHHvk.ԃfڱ_$vȺxxX(np-@B!>i$R}/&`h`=J^z˜t3U|2O[̣N\gdsőb`Bx]ؼNkEslJ502B"ՠ>1 W/w-^Di+IRC,$^CF_jUHAKa['bi2qqN7pTf,4;+_S4K05B8 0Ѣ6DzsvxIjL+?by0OHِz]ll[cjxj}Oep~~@1N;~Hy:ujMmH|+4,Z*l20t^S1{OCrV() ~ӾLv4TST27$ӓaVvKHN1 4/hT6џqK&2: @npl]ڠqx\%2,|UzT3 #jR#*sd= U!Q]Lx!(o=Kǧb~ꚸV6\я8h:vAQI׋H;D?:hw0Ԝ[m$V Wͷ"@M4 uFՍA1€Yz%is5 p^kA,D7o@ J>dn@^#Vz]6{dzRde ^}-#J3(nʔb32%iRr=mj]Zs_*â!\K(َ]g%k:U EQ݂iZ-H%p7ڂ*2Xm0|\j͜mKeV&~K#o @0_S},㈙RO S}Z]s/zk37ʅP#Ƀ"܊)`L*c>*r ebnWTkC;ssۛpe\g 9_3wnfV61Ozez{VO 5jf;9St55/EDC-*%pJjڲs䌞ԊWc_Zڪ35[v_Y!G.ۤ `aj y\` ޝrаMMN C ?Z=~ꂔ,xOz)?R8+,AʚV7r_qF(!=r#=F07rlk]3+ 3A|둔eT`hq2eV:(2,P|kySF պK$sSJU!Fm $Q"k OH3#2VP<+;J*̝;|ů oO5T"y iwqdO] #U&Oȅ9T->`IDBwhUןY\ݲ 49:BapFg: 1ɭvق'IM&:G!c;M8>!5f5K+`V$cpֽ}D8_wU'g/TZ . 3#FnrI=JbR^/\$糖 <2`}K`U-ytlle/`*j馕͈5|!0P ʽ&c+@v}1dn8zi6rƳ;̴lYV掎{dP8 ov)\MpVIQIAM,RKnLF5b+\H|j1dIqA4xlӚV{?]LagxN򋿽 gD'u/POu5%FB0afzG|R~rxhZpbھ?=TYFt#LX*1$wM{ E,p~}KfwlK0'sjnVW0[sji2/Z. r(mnlXūP@_Xmnʜ'!Gdb+D3y8-q #E;z dGeov‚q_3XY:ͺFxЉ40Ew#5o!7EJ:Cl`2xlW}CgF Yn捍.y)MKgM4T*PCyJbYa٠.2& Dtq w1YЊ0@\Pl@8*yݡ,VjPvm@פ,m&*+$+2 -2IBo䷣5?JPw FNr8Jcw/*NQ}\1-gr8ؓWj@U7Fq܇oP'}7%8ƂdRud}`*iHx[ <4Mē\G: _ۋ3V[FԦ)(KLB.RB@DD 0P ۩xҙEӂ[!rgZcˮ3q:¸xzg̢bx)s,2e3Iɟ3T5S}0h(e']wx@-̛VL Kݡrk?a5]<1PUD4;*Ҽ&{M21 j2$?~z3l{b~Rrq Hv</_1LUm9LU-H4F.5 23L_rδh\hZ+;o4?֨(C4MF;oxI[~X5i. \DymcyEe|ȹW'_R>x^zg<7 5 4n%ӟ.J%ᄵå(G%Y>׼qٟqݪ:Ib٭?w6Xŏ$I3Gs$Ly!֨XX )dF=M.C\is|XF|A dS|-+ȋ=Ab/A Pfa{чjU4l{9^a;5(L9F$|)7I0hhEJY;um' 1ejbƿ<0ikDQշك&২xU^ (E[!RM-\1˶M_,y*}\לXp%f([jRu=ZDb-cu;&^`ÂO_luj3%c>}c<+$D2b{ rnf^Dwg%ߋq׍"y:&"΂6/; u/TWنB4^z D:q"լC#m )%U17 &MUPpePGS:ģq -'F3$bDgK3zLT($ri^Kg#2g eH7$6Wg5.4D[`{Ƃ-]rwL~551ۮ!ƣ jCl噆o(bf\\%YM*FhU 1 ,=ʮ&Cӗĥ@s0{G \Hǭޚ,⪺73w z3U70 4ID?$h=_3 H^ ģ&DO#Zj޵. KVy7$)!&}=Q`fĕCkkdYǮVԍhGmSwF[Y|P! awT]"pF2+[YINI@R5F1PdKY] $ln(|-{[۝DFa;6AГ9Y&|~ Qlxf<ƻs_sٲww5>1J\{%It<=uZ^*uչ B2>05{m0 OُG]t?SʊR";('05ݩf\y~+[scsRDil #dr~G󨛢|`^r(Y}ݏDQJZ%[(~0 "Fq_pړU3-[i@"Ul8E=ܦLi NEK[:j?R\naxa2QMh \{j?_t׊n!cd\^ud =',w19cYɄ/*u.[ɝW8 j0"OTJS #{?HW1 ,ZyHuEp Zk~ xGG|* (,n=V2?kȈNBB"D%/u8|z+JOEvP$M/m Fr} $b[bk,cP\|JhVhc`P5ըۮg_cu{<Ze3] uiko7MN٠zNGөHARIaͅy'][$p{U;ɏ_M&k7[ X&lAըtN^äfKUq;.ˬ9L\(aL -"AUٺ {\DM;l=uuSB% }NQ?/(jIU8!]H>8 Cz!X~*S/ܝI5}cϥ8*\/aeϷiz'_5E!ʼnGtRxJi;ۛ:n4k ZrmT7`)ZfA=u'Ӫ43᭖8Eq^%$~IǐXb_^tZso_K}"})ͻ&YA>TUezI,Z *gvl@Pf님,; 5|UD No.~HhՁ4=}m ZH7-Zdž{Ҿr/d3*oL4ǾC0":W7i,Q=m9x-Hm"Pb'59 (+1R+4N \Cbσis?. "c$ezȪbg*`|*#xk~˕u@_w NTP)zD_ýr`FsdA<ι0g@$55$́,4Í gN[9tg#/WOWsWP]^F3Zd,T_RFEE%H4%txa⥌c7s.Ȅw P3h4iTsE&pXL_4TԔ`ulFj jONnG^Q>HKR2םÖ>샵4tfT|_#Ϲ%Q=x3[ǝSKpQy&(aeBE7 qMU>#*cuI`JsBb^w˱ 8H5> 7_oLwN\iAoO u՟$_pR(줅zцW2-&u'0d;г?C +U$&TNV _zv4@fRiA`@7/oSJ lTs[N:ܝ\tnDTv; $BvO)J;ѹ݋s(رBy?( Fҳ~=FZg&`Q"C{R_HyQ]9A{ہd%1g F xQ_T$YP5OٰᦪБ 4Y2`CKpEC`X FNEA`~TÝ-By{%#Úq˽B{؝WVq5Sr/h8$W ɹHXy?I.!#zȼהji렻)r5G+)4NeE\ ]j%IZW&L :o<(F?2 ?F.H{)~ / '/Mh$`9º'0t~1q,Fҗٰf)O=#8,87Ȭ_Yœscmc߈,_RהJ%jŸ{A 9S|WPu;plRA{\+gki|P|IHU4 A6/ zZ{$%#R&(y3)5둃2j$uՠ-<'Utrs=C.B-{lPc,+3cݹ)4*C-Ā Q eq61VˋEh#W فs`0o vޯѝ =~ETNy+5f#lTϵ`ұNęR˻\1O8I 8"d駐l$Z~fqͮ'gU!@(3%J(J(!@JIki™j˳ɶ]TJHq ]` lpO_39?scӛ5 H7b,%!& ꇌLD}J- n ?\Dв4# l!Pn/5a(ϷؖbSɇ<@*Q9gN4+1BMD똄vW?V{b~G[Rplrؚ5U\WfUR[|n]7~ߖ;n..FdRy؈(NJמmo({b^|8Rz͂hVX/a=6t fèJ fGMQBM䋘5!9F2U<^g ĜHmI߶(taiu̴_q/䮋731u'nSvcB5&ڀ|ƫۈeHq_X9xQg,󯅂rm`P~`sT[x+zQf|c[jp 4N$+6i$Ee_ ]2m Z8 KzQB9Хq ;r/ݑ ڷ|;bq&Z€Q OYAT7K0Ʒ.gIJCI +Z;NE8`Փ{\:? C?MT!]8#Rt*!Rëq4Yqˤr͔i!HAI߆\FT>Nj > wY72RtVg6~]v_{=2knykkS{J;\٢ [٦2!a1f5\g%4Б_=_@yv[2\홞V ?pR;x.oM,Sh_Cqzk9-mq)-ٓ6[ zڕ-vG(+5:uC碆it64jsUJNLbLWz<2F89~DJ1f!qeaTu'/GqU:ũn |@Ywray*1y":2`Nl6J*[ Ђ^|;-/ߣ݀[κ)?)%8 Pn:z"sľIhl/* RQ&9* np8,Ts&8嬾7$iDl&sK2_uFc W 1wHwbѴeO}5;l_X)T !_to2sQt"ź#P;8fVV3c1\g!;-cgXw&͟2.y*p Hp₱_KK~-zчAxA}!~\*1MA6uD([8nSpk #6pZ$ 9A)%*4!ز?e>]yeu$G#2G-F=\Nn ';5vT휒mL1\.dʉߡ/>њerL+\(B|a|jdZx ngګԀ(7K|IxMyQ8׬+yp^CS=JLX=&z ^5pUPF5ɼ8/W&j~qz9 e=dsE>[4>U,7o̔ښ0>EW𼭐w79Ԥ8\|  yzױ1Z˟QX&H,wEqřfiLӹܝzcHRY5D$5?T|`bm_AU!&{ap0N$^E/,\-5'~2 ˣ# DŹ|*eDFD7Ch4Eh%ӍaM7_R{b_cA[L: hDۆOQ] JiDBQaQww|y,9]h5:mKɵlD}4$fZ6ȷQJ?oۡ(O=eQ*fkt#/K`y9BŚ@ާ` L&#rtGY K4}f-f F1x c>b׺P~9vsjNK:2iir2IéރgLc ]6WC!L?42el_>2`I\r<7mkrR *"gV,w?&Eogz cλh]#'[ neYuO;@&LJxZL=PG_kƱ{;#8iCs~gtj8[MpE{Nz-QvOބf(r[Ζ vþފ+inh0ʖl${sP})- ]2unw%'}o-gaǕl@dYEka (C*X*N9Ch+cTQqf!X_2IAmهucqf30S=e0+{q3!&CI*Dz&nbP%-R@1)"[~J5dK/ %;7gl S^V16{,(Kuחwx=.);*8_< {m}[ŀ/49QO'TXJ /AZ| ![4FeJ/7.jQ+,~"cW>GC̊&+΁cef J>WL왎Xw6#{p:>a)428R}BY.Q9|e^½IuQl68*M*#޾,뮩R@6Q/-Zmɂ!Jz.qe}(]hx+6@O51,ΛNĭPAK:^t\ɕL1<}0j|&`=pS"2l <@b6?vaPUWš$9%ݦDQ4I4bJY$AgP3V|]7TKkO7㙦 V154I-o c1Oӊi;Ҫ܏z{ޕvvF*Ɨ 39j˨j0 ɓg J;-deo`^y;au_y)#cA1W?GRU"L'7kY tWzro_\9!psVKשU7_9?3pf{RԞBh- $mAF8TGa<5ċgszW{CYcN9JKz<cߎ\נi+&_Z0gfs$O1kIu"oG= s~g.H?؇\bB+brkp?E^S_bdMBm)tVNiZl-f$);Tg:(4BAeH0!k}ǵbvs~'Q?~ qyF^38(*e}BJwM?Ժ3'|˽P~Yz7(J5ǩ~3wf=bhWUdbEpirj|RPmj9ٖf5Ė`,ڟ/& 跱p`N m t>=zڎO\+Ӷ`cAh`[AX;zMuņig&s!z3ZEx̯{Լ`cb@ݾs'7g.k3S2̡ Na;B8 _NjQyZ_&U OJ֨| >#W~~? 1b(Nf3iŋ^UsFHw* _8ޚޠ:hm=,K) fN<\:q4-f{rpStup6ox-\Ea#uyv!a#3 S;fcCe:h^׀i^DBr*^(vO=LI娼k~ tKz_Et^2 _:+iRhb|.D7 ;8-GVM:ۋ#m!2oSC rHꁯ n(e1g4ՑH bmC>yr9rZ%*Å$WTV>7zaV6ϗjwtL@{%">I " aIs񾺟Y\YwYE2c)3PW9́3~HHR3)3!ľE~ (ٖC}zO̤dx[CjS9tr0mZoirn&stXVuU5?.jn^=Sie$N},Xf^q䆡{lLU٬/c<6&P@cҙ;8)# lh;jǎqԳ<(Dyq[7qL)2h-j}u3JrLQEQ vX", [-PctЋ)0WzCc~ vIm[|)ɩ^_j2}> S+~nˊ.4N0)xbhR˞ϿYxt/oQVV%1;1i"j )Mt̑QrD;FЕ[`Mr(=(gTlGE⪐kahO_<]'F j6)_̮6D9qBES#7S/֏IEQz^giXlq).=MN=>VIؐ"Ί Jáبn5ҝs!C/}֮ok'VNt ՘)g)S3(ܺy1IY.W3{? 58~UMPc o5 7ԥ7jyJHlpWNz~#Ai`ɿj@X5C8-b>/m[Ig!.m]\k34%R4rK gECM.,ra  mSK"l}I?k5-kiAD͇(^@z6\&:gԱ]@F]]_jˡlWq\`ǰW\GGt\>jj;cP8ġPș6@V4[ºt h_NJ\ړC诈#vȉ4ut܎u͵32 bI7u;uS$2aMNhR07=qs|9įTmooDzKi&k:oΕ"ُ1nqhM_Jh5ņJ"{fN҈ ysHtGerŦcV^K|QHXrGBW\dfEC^bx̏R c$k(^%j8J0J&LJsNG7,Nea}Xǹ7^qj\^T?U6*!uoDQ4 roJS c0s#xX%ȳrJ,2s38 Ֆ5WOOv9$SR\?ΓZ&}*4~''R;rR`~K"]9UZ.>_ܺ 5z9n=%oKtNjPӆx4F}RaSd:q&ӦnëP5 'GաpGrE #,_=,B̍*{SO:9jԠJ]r5(˼6/Z܊q E6yՎwCKS%LqWtEh4I-<@!]KPۣ(`G}s~'Ez90<ץAC xSyl/ygC]GT#PYKd}_ʳ)>vZ?d@~I} X u*Copi)~NB /xW$15åLJ0,^] &$xO c|qiGqڮ5$KCЋx,nDDӊIO{4BW?>@*5aSJ?b*#ΟՏd)! )<`h* @[4Ej۱8_}veW~̂-YcQu+lZGMtBZQHLYGl;M.S cPjaฯ2ut;0L- A{qj23vֿ(@=uK産"kc]G FZoq'=n7Ж{jظ*tAߏi)?9Oj0paɫi}x* njrg32)we>K.z# :Ը**?T*hÖ@M89<[j_%hkƥN#Elx!y~S=1x٨HD6%:1z-j;& }MYL FKT&{ʻ K1QDza\(W k+x76]zǶ8O schG=\]@/\7أrتXð|%PD(0b (-)P4EQGX;7'K=]*Zy90%FC 9}P}F:1p"gM]%jJL{wm^~,;cdmFGܨfgJH9҉5Lѕ2nj]ZtE遆ǧ%q}R+FsU_͔;-EA4ƆldEf1䙾n&ޣq-Ib1XOQ|[ Ln%3ʍ{&#=B<9e.1^B _!u?d,X FDLv3lnZmpΠ/ ={l sByo u;(S_hټNOD_T Ir'T1LָRqzɠ%|K# g,W>d{! m|0_TU J$Ne*w&ڞUqOyOd}u63M$HMuyň[FyfzoE#~]}CO-HOEtۘpDYT;QR_J س5.8?S٥v0x-MC(muS>M\Rk# mf2M\_%DQܢy*y V'Ueqi_1qn.)g&NO3H|`";+R1/v5 8&>o[#yAޞ-ZR_a/'QMXBgf\s7ҀM0[_uᢅzv6R?$΍eǠ 6Oh ݾD/"Ŀ=ɋc_U}Չ+=} FO- !tLK݌zpIi3D D%d% $37pCSy3"fDϧ(E0 bLڐ*t&d@G:qD2jo`Ajl;Khҏ%km|:gm,;6A"SШ$ 98jFee3O~a߄r9hiFT` 73 o $C=pr1Hި&d׾sfqG<x FԜ0MkOo@= ) ^́=p{Ou/Wؠ>Gzb k'^'?yLy#M hZxo0D~m6s!D(xvh f{BeձS7Ewm֡)c˩潜1ZV#0Uq*̮z1*cx2se\ Wm;,ÿ.>&}~U1v2Q:.YQ>πqag0XNȹf۟sb#{wZR!l<"+pQq>"+Fz|BP$Eل7^舁{5"Т'MS\3$4xs6zwBGDYf$[݋cSzox* rˬ'}c-ez%&27XR%H^2֎cIYtLDdX%O4 mO应yԶP`|r_uiJIY>fz )wWܺ]jP ^jǵgkC\dfB{HY?׉:z~='wň f/W}NG q72~XQ T gTR F? yBOӃ!0K'pdz/|QGtZЃ1'>XdEx- Fc2sv0w7wY28ʈ͒Be3-Н'<\l;-S̼>' V +ޭbz46ohi"}<^s/r5Vީlhp핕5'0>=EFC^u2bÜӄ9ICcޗtoAe0q/T-/b:o6mxFdb[_B/4Km":rk;_[IoO5:(oS ʢЧ)ʖvjz4ERӜz_)(CQ4r:xE=Ғ,AV6#_0WCSzf dKi^k_Khʁg* ;IreZt!&.7;}wYp4}8[Xӻ/Y eb83TY9rz"D_4eZf_UN^F F2єvߐ/[NAOkCkH+|-HkMӜ;nE<{g ^%}'JNy9U5r]l_*ϗU }Q@qd킄ռ x>t4s@1 GЫ\.dpj#['}Krh(rR9N-<0mKsI!0íoK}X.H/wD'Kp5]&1U*jP}uC39וNspq ,}EEfj\$,d*-9%93YrW#6zt|/t_ XaGY R~[P\_Mu xe{a:3kv/qK c3TLQL-Id4pՈ5e7[CB[)7i&zWU Jt,GTY TK=$kڑ9 BҸ'6d!|k3`P$  9ml@SO꘴ewuV!:8+CcͱrSU f?ʨd Nd4ThN^0aW>Pkzo٥&b):~CGNaM̲o:[e('TwX ӐT`i68HdIՀhZf'jL؃[sUNb5f$ٰI4vpz}{fMMz-Bm׆+Z}ACPCjȔ4-9ᓔƖkJd&HNM¯]xw[eKakq{Z2!gaZ.?5Zi`ÀQ3Jhv2N|yz,QӢg-'B>s`_&vN @WyOJ돦hkByz)c+I(4It *SRqKPjz -4"j"L~#EUI]v,_ǥ g0Lw)5Q߶f\V}@ 6b/YsmF8pח."$~?BWJ|#&t7Īu"r i?4t"v:EvA;塛6`<,>eJ 8*\OU,pƪ\x$uOmϕh]lo)FٲLV)τr H>LS wR\5HK \ MQyU=ZNg5#PTE͠Hmu\&@%#rZK/J^* ZJb7J.k͛qc&J0"-wz ^<O^ɟ7rtUX/am ǐVLM `ZXjŌ)* Q]NqO#PFx = ,PFU2*yq^P8'ㇲ'.t$fGjj6Vub^\~xujmJ'$s6pg/-Q"iTМ9vMtay m=QFk{.uX^@C8w*]d򟩀c``Mxlηg+R8ƕo[RvKF#OpzKdiɮQJi&zMMj8f2pX몺xfO,Rn"8MV?FW lgM#t vRNxݠ"t`y 3(HWlQ v( G벨`EbTfoHgC6)ɭ[T>ktKV)9_$?jW\4㹝 l;$PE)ߡ՟d5i -hLKQ}T` `Ҷm[Zv*hZW+BW|ekj~m'tᖉQ%- itN\ b__6e-K8#fa:{+:{%mEcC Ӹ SXἰ#E3ʿ/:@J75Z-ώFЗZ v G2R`H!Nq4/FF0UefoeB G1z304_'ݳb8[Ήhͳ?3QZL*79W'= i=51z%VU$Og~,b8,#0kqp:&SlTw;xBW12HULd7Z;8{cgk'*3L7/X; _r*/n?e\%cUYEpbD3 A-rnd1'H4,A;S!gPb)6l1=yr, 3ȑvua盠1ꝄQ+*:`s, 9~)ٿ )_JZ?szA.F%(l@xm|Y'0#$><"MjH2rݹhFEs^`lѕ>" 8(~#VG#&K!2@ӜJ[_MJKڍfkTv74=cZ tDk~{XE&,m߻k)c@9ba|$gtA5 Jkc5VO$K.8xzz5sdo#ŭ6с1mLQˆ*9F?Eo0A.=-fSR.kӺ9&Yn2] ɄHf RIxMI,Iˆ[ 8`kևXKѯ*wo+Q,nd?Dxj_ 2 \9Yb&+Ze⺕$RL+<f'KRdcFt| OrASV=uEHǢ|,atO3g4I?rᡡe%@GU>ŶPԆy تL>#~ OCnHdC 7dž*UfTN[ÓRgAU%XR)W>_숩ނGf?! Z0~:2ϤBa|`2DT ͵cKgFG,EZ+T@ dbFg" 95NH4 YfQ/Sv]\O"y0#hh_pٶ_,-`k_W&+K2)5#4cqSt}".:R$MAf{P̹2.)_׶6s6j `jD}ܘz3H ^,J&qfR`%K8X4#m2o)m,7KO* H7svX*y*7ˀPJseHip0A B 4S>Y3"X{WMPJ'UK.-ȪW輳ؠS")ׯ'hեG BO/8BwD+l_7@  儯B)% tً,xڝ+u}#R ut=Fq%Q`-Io̼xZd йˏ];=mBi@9^Td AOƯȔsHb myKGMGZldإܑOJ%Cio[UqHʂklo&S+2RP3vU /mt;.+"" }\ }g?}Z.QZX80+;_5mv: eU?_S]9Nm^GDž̋8y4?}-WOԣݘ|d*΃'iϣ4-oOUpLIluK"g2T&dza͇DJԛ7l +/vzXGn"R4*f^:|6I>?jW+m['c(wb22vG<~~Jf;Ի^2"/Ec3*R)*9=i 1?l, .s&sccbpm`ciާlZ0.X%*O7DŽW S%[fL=l'r̛$dm?=Ux5q  ˛c9"e`;F#_,AfՃq6d`+?|I2jß.a C RNg+ LYAua n4ۚe*}&k >1.XDz,Z# $/{: ?h))C*t Z~f ӓ fX l*)(ӛ$SB¸=k{'~c ,ծ~29g Hj#gp^:l* m@L>~SبYlYόF!UNY Be-- fA9 $ɃHF:οcxY|JXԤL#!IE{e8b#_@((o9xVXs9(si9cJ=+ ~΁[8>/!0Jh4~rŤNNj|Ҏ f\$hڷEDy; y?/4 5~>ɞ'( AlX\ X;%6m#ej]4"ݢ1Szپܾ2bm0`ɝ/ deEh[~l 4u ps j&)aq8W˧Z6[oAMwOIl˞523 8)-8#0: Q7r^ #gM-1?hR]?4̬zM#J k,H촅a>VS/.h=Qr$`u})ЂEվoDEE%-"z&OGt'H| uA3n󺺿5Z|*\{Z4uxJMx.6`Kyl8yj4Wm}E G_ᑱ}Q5BH ldD()#8:V&LϘ Ic9MSD`-+zX4NNjrcgY;f6\E"*jnǨ EXWmJlO{@`KO١TVe6_Z%Ü=#ۋf#hlk(?5̩H{P*^ѾT!"D$= L͔(wzչ-6D̎TPU~OӾ(ܔwSF ͵oGx{ŕ+} ݸ)3WH"Ib&k7eҾİl3IH-nAW4$ ߖ$ϮS㺖%}R ߂,Ct(̓˂nh&%B%x 3',g${wڑaGoX!Æ@=APGvcxxt*vk0i 5P 8ɭri'M8i+8JP'C\,+XSM%d1V|naFkP„x@} 8/8\@{b0\-¨Z-N F\N}C-X#2PgL1)m]6j;_+R(3Hf9323XsN -BD1uEyr `h~)+5&,,_)KcHV0;c>?`7zzI^3B}?߄l ]c&% BN`Z{{+O;QM+i+'2bb>A9vwu L4+ɲg0< ]hnk+[h&O6ծĦ heDYb1Jf ~K@ U)ӱ/￑%DA$/P]ˮ*#D Ho/~E?*{ިj1IF#4- A۞TKb=fa<#P[Y6{77-mꉫ/'k',_uO3Z]nd"JHY)G>vNc&BMiwCq m4G9$+ ]?Q™-?.jKe2!jױXq Vyn~2|Xe!15tfxt[r}3Xxmf|?ip%F zWJ2.Bpy#hb&pqS꒣c)~EG|iRߟ(H+=VA[b]q* c0 QrN-]!Q<.UacNV-q)|6y-̚I|>7Y' _ӯ$N*;QvKv(q YGt1:<ZG^c˴/a 7?r!u: TSJ @Z_5@b;KVV,;'V:y%e^B訦,"6,OEvA-)h+]=B} kK=@Sg cܻ끀}Q7&T74+yOP1[ ?i:7 cS>SU{2xlvL8dw0Zh7S<pP\X..}lYGb7IQ_w˜c͉:}D; F6ȕIeaa zpW:{o ; FmsU2zWLH4Ġ}MzE0IьynRB #;R0\?7K%0,|2eQ%eNLYːy~~C-NsLFzVvuԥsE_fǛ1N"ciR <$A $[[Nכ@(G1bH!k2)4EKe?Ym0oEuكp+ۇoxgV uL=vIHHgԻ}XT$"6xc2| 8-OF#?zTC\Fn'@} Uq{?he!|ʜuyuwzIsQGu;|[ Np$/y%&.AUsd!ܒ&[܇u1&=#0A m;oƉTAt"1 V*"ѿ'њ;9GSp"hفfY}a8'= <]6~b.q o7HLep!5-/ C%4eQx*I2x]cY>I)O^L RF2n&/4ɰO\>-r<vns cz],rKRr@zrٜ,+]#|T`$)tP½[aQ ʔ!)SQz?X虜I=jMVNKttY'ţٛ(]gieZa"cYpTl;Ym9Q*aR,lWXT<;t;A6uJ=67=5 ,lIi]hkМr"|c? @&&|<> GG- (<-#N[$-myqoŮXI~oFIRwN$k _7}&Bk1%(oŶB-Tg J'/ P܉aYbDeCifD2B ̴ Ӄ],a4=z]4ilt!wޯ4aWC$;L SO\t{PޙmPK[cu *u5=x(0'5r#m3:w?l;6X'WZmpUȉLI 6c*|ÚmRnU Za ?eN;,H2[IȠ>|wle/-|>kl UțIK'E?=jl){a9ܮ\o _P2f,:{$JHQhe:"-Ό6CZz?(}jBg%/) %_\}WziS2m h*Fu%lk+@I=tZaD *jDˇX|WwH~D#QH¥{,[H <G Ѱ|_.}@MMLX.M 9"66UJ 5Ty0ϴ09:e-+^=$G!5M,f"/ + "UuP] +?з`aw.)K_emڬQ[VMyت gĶ^jkFl҃ l%#Lkxʘ.|_(*l%88qWl |0 T+KہTϝi,ZE8E3K91ﬡ[{qTC{ף$BT璕oNLR/4'F?-QE+,} .+)"]3Rq¦C K.[o/_`)IH:.{_:v,:Ipi;MD Qn峔s} 70 <9e f'=ėsjstb!ĭ @?hupi5 8ؙP-HjF^*B}ب\_6'_;ʻkjCIָ5\$ MX06= XOas8=ǂMњʹFpu4F%spFuI)Irk8+,tʀC46ސ,洧:EnЈ) ;`-Jw>BK׶'M@l@k':e2N?ܜDSTs:ʜaz{,Jm%yleyw[L֖k_3'9gT3qMkB1C-~ g?mt5 lU!`()CV1N/nZcJ,F]Z"]m$Z&{,3=B-MYa$3o3DL}jue*3va'Xv܏OUg@Ւ!=^CX <̺~ Pi$Q) ƻWgmg_2\Y{q+;m5c ܇D&C١ȋ\ I]rOOg6*vIqa )Dq'' /Aȍ=0YW hkk&#Ap taDꆂd$ÉB  w:%n#_gp:rG/-t>aVhGo*˾-;b8#AVWXckqC9cΌzDfUUW{]* Zm$FZbutC$F9tb1pi$ye\f|  Hߒ:(x̂mVG@e,$]AXw|hU@w2 ٸV(>=,|G:&y[Lt@~ ]|{qQWlE\;˾4al,CX0qsN_b3ZE6\?5")tMzY~$v1E9Wi! ò"7 )Y)թhGGkn;8R2Quo`@O~ h@ժl^( hZԪ5Z44N 4m㐾l|2.V .h>!eI; .^`ók0PPك3?vtAq$@ԃ)=aH*R"/riJ*g6 O=ۨ^M(}[߽WnAcnhs 1iע7U{@(nٌj)C$ܶ59`ͳ6;F +D~JoS ~c6a@8<U,/s9=e$-\opΦ©h|6G Ӝ&#ZXW&bTתM5+#!q5 ;ce'o8Gxqs>:^c\hiE|̝Gh L tbBώYY,N5hҵw[]3**2w` ۧ:oazvh17ȯ} ڮZ4x>vD 9GA7k X uv V6\yn"﫥JA߶cRe'>,ɇKuaPXfs q'dBRK|P X)$cW,?Zet]oSUgU:cb1y/&~.?]rV{DJ~Q tĺl6Q6ϔS2xNmf2ҡ`Ua- f213ACX'"u58 Dl:r=5z nʻn!JL4'>6J|'TA~a} ^\(Ji.zΊ[et{ODQa?ė1*hIh\q}ӗ ɣ9`3%ƷwyH>zzŁB'@` d?"y׬2.n#ޱQ+JaWTWQFq|x6J 4jWD|m޲Zi[{HC';y>fа䄴Ts%Ve G;]-VHR߷ ArFiz8b,Ͻ]45rZO~0je WӘ$rD4YbBR8=ɆdfvxS!aݡHQ ು`׍gd??5FmM'SNN ;ږ¥fDV:kM- %+.O 1 jogMc0G`tAlD\cLuPhB;XqGb߶~!hBɞE^^MBpYo0[P;kYs}W+;k<~]`G;&vSꋾ|+^d;oYR;+|"\}tb 7|+d[v bc)LJ9b=@,|aJ۳Je]=ec>ڱڢB9m JB Ǻ*RlG$ 꽄<},3Eܷ#UVu&gMa$~ 7GQDTdue}25Q㪨ƽN{訦)0s@q5&6` NnȞ9 how*c mRA}3-bH4WlPC)7jjpz?9ts6 *t +ff1bh? tymW5]Bw)kBrɃ13W _*v&qyz)FWie7 6te>:lbmO9rly%xwr% raHa߬e'm>>6na|8Q@lL͈!XBO85K%h./^Q9'^Fe[[_)V{ŖAH8xu*UZSv*0ħU)l3g[3$6Bٱ>\0z5;Y :c[̰ /0껷7(t>;ύ!a˖xnYSPVibڭi/Hp& BDL 2UhpdqN1Y=4.1_1lp! +}a=KP*sgR"Ɨ @H?)jYa-+-^ X'nb/q 4B:=+W>'d3*9[anDuX&nlg^,@oH_,|랮k7z4[iddCfܫkpZiՁM@Uh*v U|`_X@}:4gG ke. y'-lfWi~A_klɺxf@w{@ lT*U] bXj:X{]#$OmuDOb|o5A#߾J -8:pbŷ34­gϹ(}E>I i"Tş'5H9 g/]SS[#QȾEc-5fTc7M^d"cO^SL(ܳŬ>(Cz7p.oW<3 F?5gE4Kİ3i_9k~"W5_+̄| h,,HZ";# 2/ W[5)[ixE"% yP\ZA fcl%٘mU.4ʿ}괻V;׷Pc%@ |$~ ɠmH5~^nlUӵLc!ov5ït̤"8шqW&Gcy ~Y@>d뿋<^p/afdiL-̐Y4t*XHp~} ^|uڝ]eN53޻U S°9p1&9X \.25s1M CЛ&өZEiŠwaG:@s/(o OQ I[W7<%Q1U{QWn^+*0JM|&/ᾌDE6ON$⦖ %493 P I}T)ܔ_Cq\Ⱔ,Q>ffG?+a>2e(]d*9X^LeXq9l^$Vq7 -518jjxl@.( H0HYJfZ.PRf /褕W?9x=ԇUb#3@_&tve2cr/r ~$j Ih15HrWϪɛ_Nlw]t`J({ FS;Z$_:cpL~ҹߞ@1:9E QÀ6 #n%c<'TZ|&սᆿ涰aꘪ @J&ԙ4>~=C2C\a5 1qi'){VgW\k"1BC>kuÝ'ᔢEֳ`?\e@u{|tXY0O%omc%Ìj7|_lr:Gtתkq33DmBҿ/qUiB)#(8~ ,!xɆ 3fӨEUz6~ճ S?V==YO kf7;L@˝`D;TGC%leHoy*b)ykvD_׊ F'}Xt~BRR q =7%pjOݿ&J1.)K#Sj'~;'!%lK_wgo6p\k)5I4bUɑ54ß"$&UHN0T2FA(o ZGi,&?ca*ž7efKP;,Yq10"~dm"aAY_=L۞ڤ›;+\q5k|GeT_:;ve'a"}sȣtVSo2tS^+H]H!_7ֈ0W8i1xYcI؜'1q_{gh a .OSfg˵?VͲTKBj,@Uuvl͖ 7e`910DKI(T%Ýbi~GgSQG<ۂIPz ~L_q8@_X䓩G bwJ([E:&bohE1H'^VQfAKnj*g4{^>sl:&}#LQ`z/ҝ4)SٳA$sT媣1o{:<Cs nK%2) fÁ:K(=0O2'&Z ̯ʷ#s%?ŷZ?ɓv9*fպ (_)=$.&P@8IЮH0=6$q#bhswbqvݯCo:2P[ʶ~e'vAyQI@)4k`Ӂ=<|s,Ɏj2Q1,.|#h4'xaXs8Qjd߯(0?6ΨvٿT8NA杧?6v_[H5jM 8Cͬ#*ANX`8x>d%Nnv+6k9I7| 9mXqvx6Gsr(_;ܝm=@rNj\?DPoD9h)b Z*[  ?ySSdfG4hGV%~:"#)uK Rרس$="#j^1g_dڙPV$(xOoj02yN>? pB嫚m校qh ~Y/\C,g}j,&~A|_˪Tw|޶ӷ]iaP 0u^`pc|+ +`5 v1rj?X(s[vQK/&{G\^rXEr ;e<ϰ=?'ZCL=p3UU>ݢY eJ\2?y8Na^FH#e#oo(7 BϣWb~0no`&pЭQ cXָh*t'"s( үW,A: % 2+=|M6F,-Ѝ1#LS# !@!n^m?ge^m.uw>wƣ7%2iAl ѤΧ0`z[%F ~ܲ(cI}ZO2f!v9v#\BjVN% U7:d^eQ^T-l`a>ucNDހih*g,~70Ɲ F3%*#!8M}rJ6MQ@aFj>gRnWMgyLڏ5Ɋ~l.7 L#Lߛ.g~&kxo/)}CNCu@(̀z8V(N{!}%ҙvq՜;S=R NM%%4p}3[pdAÓ=^=j*\v X_W+Gvh"Cy(l,ZQն:"Vn#;ڃ_ˊV W%^Bh_L{ % bqv'QpF-Qix"OKCuD:jz)8-VnLHwyp:S=nJ7ZϷ55ѵ33{." í=;̫wwӡ / qB@yv7YZ us->wߣvxBħUg7KMb%c٤wLNl#=* ^QtY69S9zH/?\Tus-魒+p_:r+<6LGԪMma/lqoP'Y.JmkL`>yqz _Vu78݋"i!g?@NfU̮.*n Egh`!&][?1u=~GܘS&؇ZJO}+hh>xsĵnf34b>RCN ދkZDͲ~g鵾տ/)0,䳷#ƻ`YGfAޝBDw[^GN|~ENj=+[q̰S=P"~t1N?jS&G]9a7 f3˾WؗF 8GR& 8ZCEt^kw&Tr{!H\ݒ$s<I:FmFb9n4@Ǩg  '+M2Rp]c?=ƚ-}8PQYMAn3t& ^};J̣۫[@8ȄJk'^YN4.z" ]qgx9S3Im}3K_CŅHxa"bBR[p VY{ |cyXmgЌ[+ hy8ijG2Q:r P'9e0ƧD w9hj`ɃeJ)("Ni j7w;l{#>aNip뚳J4m/8w_>o)eGƓWOW4t3H e)HfBo1t]R^ )Jv+RO602Nޘa!i{i|sMwF( #D"rvZצ ^ի ODvÏb#ށ25 Yb pk·J? vtP:4p _0,1ߨ).P>&hX[ w|Q@K;Fb(";c͐ *zULH $8A7_uJ$ƴfAdDJ3Unjj}2  Ůb57lܸg$<eX9TPFd8$@\FTEpl[=liX~*k/9CWe+9hG[;KTu5*2İY^?_ Mm)lYhw i15Nif\BG,;hIZApt;𥭆%іv 0!5-hg9Bx J1S`Ӂ >ZL"FQ FNѹV5_Nxm4dSEg`zNܪ΂Qk‰t}Z.OGx ;> O'k;owFq;@ӡ#юlHPظ4wYVqgb\!G8b33ͶNI*r\-Thܫ'3̹O^~E]5 ŕ}1%!hQ.- KEՍUuhL/yMK%|TTN9Jbj%[N|a;g;WGeǭxY&6zat]=70Q}e|=(Hy naEU5şhz$7{ldF:;셂ldsj V}Wƨtc ;m Cfo1ӟOopanr3ˑ6(_Y^DxzDw,j cyi&n[s(%w^ fo"Sz_O%:*(pVI G9uژNl2P{Ȳ F t<|b"uOg!:$3]q<ݭv4jǕ?Fq,+B!2wQSZ(Y`~nt.&Li+ : ] *}Z Gh*$'m5ǵ27aI9\>w'O%L'WXSpv>^ͷKlw|fwǴK®dt[Փ [>ޣCS0Zvxy5GN҆NlnWKdKnrhwÇ;fQih3e;Ė[4F11yکEX`CU$Qr 9IDs Ķ=Cxa}noXM~ꧼUr| Ak3e\iLfzNw:"φ[Ü67`ZrK :o%(\;o!~}IMåb۹,k bU0)kb A['8NRZcF3\Vd\O\D67 Ko bgBG].;a Zhi1ɧbQe-Z21 g$ʿǎe܋o/uzwT#V5ɀ9K;أ %+UJ`V"D:<4!K/Pς<7=AskeN264?>e8S}u3_e(Cb~>ALG3e[,/Т5T27oQx,lN07",g-ArvHbP*RJO:D{(q#‹1+L .Yύ,>0e!ӡ ye2~DBfqp\A 8OgXͰȨ ^ _f7Dh֩3o5|b9Ԣcl'iŧ~eP@i*AhQA7``1Ƀ Ff8 f)j gjׁgtmAxO%DӺ9@=˸uٙldyHG)5bro5ƪ BQ E65 pXj.5K<.%>8H1d^4o"B;{ӿ?7ɍ)Ϸj5lnnS;)?ۜ5ЛQj^W줪ohr̆xQ=T6wwjc=Ύ3hA;9f5J*Pj'u,gaoh XFJ1pI6{Xt4TM(#ʧs7)O94JZ*a ֻL(v(x! &ʚ)8ʟb$uLvg)a,d&2jr?-\WPQgj3<}f`aM]!R7>no ۔:*?L"#rI;b%m|@xDȽ_.cxuwCe>eX:A/r11!2G xf: 2 t3 ;˃{EiN:70j LjgTҒFQz4҅R"kčt6UqL3,R}b)Bed;_^QϮ}8+‚rd{i31 3E=FNŅҌD0Xfz;>~)2`&hʍ^ ߨ_־e/V/\Q eb^-q#{b'Ա0$}z޿YZ}}_XN9] HN+dQٌ*Cfl a0ӓ!Qwo@\r=[Qqtc?#*퐾9Ь!C! *%X7sFWkU_Tv3cԗP1=IJ{\LwPϗFOROm=2L) gpUZ8;$xI81 cŬWS_ Zޙ h}M_;ujC/ȧpzڬS3E=y6cD 236|bM­r)Aԝ6~8VDSԼ²%y̜m瀾4X/RX-.]a2ὶe#4GGS l&ѐ1 8h3BTV@"AG5lҗϮ5xf ł6c[kGSdnc&%8V;npY)w`5*S㙿:)xBIP\x?7HMGI/.WƓ'wꊌ(s3|g&0s#;ė>t`-Vb _|?\8/w[B;%mo@y}ٔ'gnmlDFک'ɵm̖?FU[2 \;iYKWlIv9ew9hA>³A|Xl{?sYbmMi;|&2:l·dn2 yoA (Vƫ|J`Q/}ҜA|Ͻ ͎p۲3Qѷdj~ KIg(LkԻbҺKsT՛6=tG\ a:rMNEh9h41-›%BK|u^B"J] 5R_SC'؁\ 0[293G9Jlp?YZ|&46@~K#(\mJRplv._"[KuU?0t\ae|i;ژ0s}wK"imguRyN&<y[skRx{Ƙ9\TÄ܃phkVPy&H! 9Ff:aU04kܕoSVIkpA?48qޤGL016^7sMXǰ"ۖwҰid~4]e9)C 6xpo.U<7?riu [Ylhf2!ޢwwDF3= QfMN ev.vf#8YytxFaː{0(_o't)92(GB5L=rhC ZNzݧ1w !)zLc9wR[h=>E7^ 1|q.Qq$i /vƪͯ[U8|Ƽ,Q`EJd[TUʡ8KX 9<MĢ,W$GsTt9긔# {7ݟtJ] '-ibA[ Pe;T3ӧ Ĝlnmʎ,NW ܰZIzgG/\ k\x:isWmo~,1 3ųVצha}| <&p-o@]p4#)_ T_x ))JZyR[py%+">Va"OC7T5qUgteA^Yi_hE4?fe YZ