pacemaker-cluster-libs-1.1.23-1.el7_9.1>t  DH`p_$ƨ4pRbo'Jɻ}mbNCp~YŔ(D)ƯMto  dǶ1Џ;b],0DeG]SmIx[ݠĄ|k@8h\ai75G np6mYS?8p)sU#x0sTت~hJw었(lSG (`0ƍC/U'6տàD)ś!ǎǍ^$#ѫuPhF/5TmΫ"4Z"rƣQNv$1 eͣ`7sSPt Ii 37!EeYzȗK,'Ny8r+Ŭs;cz1) );fni`T6[f?bL$Jp= +{rR7=s4pTiߗT_i=C !2v2S8Q.B7664677229745469de90a084a6a7b6dbc6ff6b40l_$ƨyдK_1Q׫k2,{=C||~ 0BfMmcxƨeM[|: Uޢn[ÙsoFP!فAxD*ؖk 䄙т;'EJK*-&:K'5d)Q!ykd7pYO26(m$-#=cC=EJy1$p# i/)W^6 j̆g~ +kZ>g ZG5H(w:!l|[rX8=WĶ1pAKKOe27-`a[.87_ AI V$,v=k0=A3t7^)wRl2G )u=+d69 $(;d?ή"W/L?C/|Y(WxM-f0_ нOw|fDkτq$4B#G·眭"?O84^R`>:?d  * NHLdho    ( D K h X%%%(89 :*>@GHIXY\(]D^bUd$e)f,l.tDu`v|w8xTypCpacemaker-cluster-libs1.1.231.el7_9.1Cluster Libraries used by PacemakerPacemaker is an advanced, scalable High-Availability cluster resource manager for Corosync, CMAN and/or Linux-HA. The pacemaker-cluster-libs package contains cluster-aware shared libraries needed for nodes that will form part of the cluster nodes._Cx86-02.bsys.centos.orgrCentOSGPLv2+ and LGPLv2+CentOS BuildSystem System Environment/Daemonshttp://www.clusterlabs.orglinuxi686D֝gA큤A큤___'___'_d9c35ed53faa10a01f22296b13b1792492026f387e0ac9005bd003cfe954fad71692e89a98d4e81037401e9dee476e71cf634880c36b4e25a2adffc3427dc57e415e75478c4d3ff0ab7dd812c2d1c9924b4a2478140adb281849d868f9f74f05592987e8510228d546540b84a22444bde98e48d03078d3b2eefcd889bec5ce8clibcrmcluster.so.4.3.5rootrootrootrootrootrootrootrootrootrootrootrootrootrootpacemaker-1.1.23-1.el7_9.1.src.rpmlibcrmcluster.so.4pacemaker-cluster-libspacemaker-cluster-libs(x86-32)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   @ /sbin/ldconfig/sbin/ldconfiglibbz2.so.1libc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libcfg.so.6libcmap.so.4libcmap.so.4(COROSYNC_CMAP_1.0)libcorosync_common.so.4libcpg.so.4libcpg.so.4(COROSYNC_CPG_1.0)libcrmcommon.so.3libcrmservice.so.3libdbus-1.so.3libdl.so.2libglib-2.0.so.0libgnutls.so.28libpam.so.0libpthread.so.0libpthread.so.0(GLIBC_2.0)libqb.so.0libquorum.so.5libquorum.so.5(COROSYNC_QUORUM_1.0)librt.so.1libstonithd.so.2libuuid.so.1libxml2.so.2libxslt.so.1pacemaker-libs(x86-32)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rtld(GNU_HASH)rpmlib(PayloadIsXz)1.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/sbin/ldconfig/sbin/ldconfig1.1.23-1.el7_9.11.1.23-1.el7_9.1libcrmcluster.so.4libcrmcluster.so.4.3.5pacemaker-cluster-libs-1.1.23COPYINGChangeLogpacemaker-cluster-libs-1.1.23LGPLv2.1/usr/lib//usr/share/doc//usr/share/doc/pacemaker-cluster-libs-1.1.23//usr/share/licenses//usr/share/licenses/pacemaker-cluster-libs-1.1.23/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m32 -march=x86-64 -mtune=generic -mfpmath=sse -fasynchronous-unwind-tablescpioxz2i686-redhat-linux-gnuELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=287fc1f08e04a3b407e5d938982c894f531db80f, strippeddirectoryASCII textUTF-8 Unicode textPR R RRRRRRRRRRR RR RRR RRRRRRRRRRRR#?`7zXZ !#,V] b2u B0Rœ%HNRl#l ~BoW 9Jb: nO7d;@xuSy~,m?w>Ӌi_RkG7)rAs尲Ý5Ǵ"{&~hh<.oI {ն[tOaa:lsB)ֽHv`U\KjեeIxo|T,6V?x`_{i|qmQo pmJ\ϖ|N.r]y!pu,yp4XR /5 RY?imtb;V b\+sͭz~a} WPerbSs"R%7Q:y]ģrzkǵECA_2;K$#W%d9 euo//)nR*jyHl[g7;*:vʡ&j}Er)7(F l"5[ZP^Sq) N<-WepIY-8n\ fj/?~R mבWy?U YQj| =1\>-P6ޏ%մ#!yhcT!^W=)uM؛AF)I|]aΖȫ̘- >0s(3.>ށQpz0w`[Փiny  GK6[ߺO1w+{eo7NOOhi@G)JQ.P|*_l1p" l{RdV 0{i'ʧCRy [Eۼ7ԓ"Iۇ&p 9˄b({f +78M Cm2 ŒMzMdt֑&J0]/\> .Ih|tXq>Gq]h Cw#p .7W:@fp _삀T;#DPƨPS<Å E+e-uV@^x"~DQV2cu)iAeoP9y+|`?J`BESнԝAYlux~º3`-"<_c&%0#Z JkoNg?$gNǨ*$|Y` ]^^B-j|T\QXbSy^[Psg:Kh`FQ9BnGia+8&7"3g/C ]wОw'*%yg۾tIxFb%!..% yO࿆&p6^+S^4Ó>Ify mb`Cq 4ʕw 0,*tL6ꪼ<0J|Okz |U))5!\ LV~Ip˲ZU@i*#< NQ"TЯil2([ImH0 |I 4N_}(:eOӢtY oI9 8Ww;Vr(Uj9\Iſs9r֫[SEMP<4}s^0, /SGl44|n"C={o~Ҳ- $Q^kh\1 䒛ɀɹϬҵ55eiŠ+Oς!9hOq/]1v-D/Ny8jq\vT $7@pM(JǠp$IBFyDb \CCR0PKx(bL@Y!y†`@gƞh}.+d=az_٩.ߕ W'&8z)qHNcBS|iT;r >~?QNr5.LȮϯO>~ -CfCg )w<>]ǝSӫ/XGү ,1U/˙tb$VhEX_}xHw,ǁ­5[N[ZS!|U=F<+Cw;f24rԟw-Մ&wM!(qSҹC9MOuƒ7Tcwq_',$Ǽ}EgIuWVh4 5oUsXoAwdbY$dhT^WNx*b;JPhbLyjʱ89 U?grv+ caؗ'Uf(Pg&[Lꈬh˸3|Cʄ+j@z9ֶOF{#hSP=ң^Bhm9>p𳄑= mpB|YiH*}7? sHo 7l wqM-vOwa~./%9'ICN U0&YZ= p&1 Z)Ϩ_C]n-]? +J@kQeYƖ?vk:Uw(׆n8kl iS\`qV~G,,c[ޫUXlM{&`ACO+v $z,޻Ë|vq?PIڥS6#5VؘvRdѤk\p#6q}qY> tBKrVTfdK’_Vl/a}f@QH_m DH>Pb"]r(wG|zah8bwf-}c:5~4@q?mM|yGJF(XqxH5g3[ә#ˤ=jkuŵ.Y};8l!\'ON[XIbl;@y AAxeY J]eRYL6 b"DĬ.V"Dxx`Gᗸ0uݳIVUPT{)'^El{e?"t14j;29oSP*q A&Y'vF^\_NY;lVmD5Zcݷ .fe <h:fwغѫ?V4 tQ`֚zHЏl tȺRHO)v{E7Rΐdrsm*0IKh /RXwhINClm[jXF9dQ6@%o,lEgc!W(١18~&7r!Xn+ne=p0)ԝ= FT;Z%Ш5L:3զNtt<:g-ߗ}j7q8T?UIcl5Uqi=@9A`%(4\NҨW˟΋j-uDyqF^'SV9T6-LAIG4r&5t)mαz)x_N8GSLy툢0w )tJ tN&xH. (.7Kx#O; U-|VKQ$%ΣhNCi@Y夺v[ΞQ8MbQ_蹄6U$$ᑽQ~Ǥ2VɕB]L&*ɠ"CjVy):|CIĕ)oHCT5|P Y0b:w*C!mW.e$SO-=A#Zwm4} ԥFxF*G8kid}2*=\D%l&TƬU++j {FU/eb+:['yvr-F3/^j;4$UcS(cA+nQ?^Z[› pcNDqvww`=lD~>u\sǁXUX>2.e>0Θ)GWżr\fBZa%_7{D'\wvXdFu[*5Z_dG1&mLDĢ3]9J8x ow@zrf@[렫EN.129iK*S)z:s} $NN:O8gެ!n x:< Tv Qq?aeǺO|^禋eӽCD`&>/fZ5ѿ >8*j/YzmHU3[K}F2 J:'YS9r?kz$n'*sYFOxZM]'DT[dݖ$?$BsDz~y1ʳG+*=q?ܮH6[,~8rY"ˉ]v⭦^zv˝ֺqoL,7TU;n]vY͈PFk$yu$k|H<+KLǣADv5 qw7wE]17KiRK Zn[{$Vvsc)U#4elN33 vD~_)7Wk1_kW|[A.gs^@!=fSG:bQQ$1=18:q恏Doh/{Nl:ә,Ǎ.s̚HU{j0fSJhx4a})x>g ^,uzY9 D󚗧kFlj뫑"!2ݙF 5i+k7^KC.jzOˡ9NH 9@ao Eǿxij2t9?n t]E/xX݂ϓX4d.TU\2Xu9*R)пG55gZ{ 0vґX)! `%':3,ӊA)s1^3 sec_I?/|yI 6eԖA8d6I6b:EwN{Fg 17M?\o]p Fۑ13 o<%l.m:PT U4/oVҜ] n vrJqtgw3njP~y$TIQ>F~^K?UqĎuy IQD=g8z:quD}TBBX#QmF%sEk1c~uqtË>/o]1DK8umعs=h :X(t0q60cb珬<=X–)U=4)=F"ٔk}Ov;~g $䑥hjH7 -fp~|I3NP&VUMw NI-,1|v3 r?z¹T>##˯Q9p!n@˗Ix$3V|0k1C8ȱ41cYb- }e+.Q׊9%y !w܂߈nt> y.~l9l ].af`Oh  ư7VgBFuphtH&ǴB33Vwϭ~$lD.eXִw2 '7Ee@V_pu qdZaig8&XgќUpRbss*P`y*i_ fQC#l5s62v+@,k׀`G +33ïc֛ ӄI5o,W3nk&L˘>]+}7D^&f5NN݌@hB:1|&n*,"pr)P'bA9Z{KGru5ip6izeU$5)B5UigN{N8I?e㙗)6wP|1/[,)UJ߁0d}0yP nd|qitM0<]V{~tߜz4):`{Nd},5`P(RTCR};=2ޔ1Yyp s Ԩì! *C_«vW=JySPâXm/E7Viy/%k>y]\Ә. ̒ q+!2EoqeYgr@2V68_짫#5ZDtԐ=< P ;Ƴ~wW5EDb)י/s/ʳtn/Zh/@Hޙ}\D*laɡ>Q8ʚvѤ&1l_rfpS,'?F_a{p1Lje*)l=/c4` { u4'@fL;-5.M"EwJ)W2"'R^yD˧&^^ yMim?j;/n$?HI Y1pKQpmݯIug)~eKVuW^~؛Lp۠U]wynlw~׏m''b Z8{UߑU];rjxfm}O'o9x2' xmú[1 j;NMx*K"=D-ԣ;##6kL{7 F? y8RF$J\* GJs`}34L@3^blklXr߯ƒ*07Xa?3 ˬl&mD\RR%B H"؛e jrT0]yg{&~{,{QQ7aBH3+c|/Mȕ#psXkQ USy H.J,wec*.O5N c !,'ɉlOyw.9gfױ 7T9g!-xw<ҮkWh]@BB.:Nւ_YJHV1fFPsZjOoz]@j$B6ĝϦBv۪(-^ԡtX臧bc I)D #kIuR7sԵv&:wqL58n\qb߱Y۝I\]X9"H><ՀMc4*֡l5֬ITEVlXyaq!\D.A'͢F/ ё@y3X&8 䨚|݄fy7w MM+?\3_0&Wp!l3Y#eoO{ x!Oo_}ZTBf=JiS}OIKY8)ǖ{߻H"Ff0॰MD:֌l)Ҡ)$vF#-xEJGȍeGfPe/s:UDl 8#фs"= a:qd2T.!u 2P=:nw^crXCܘUDvi $TK߲5\_쨌* $ ;)zd啮Y `,ʇ3t>87A0i]>x'dIY%c3QKݡDrn&Q7Ydžخ b&Hh$O)%( {Cqlt,b07̙h2hꂏ YQeJMʌjCnO<2҄UhCF-LHxq^V%(,b mTŪx6`SXCF$@V^.(.-}hLRMyb6 j`6F:zyr`v8*<ۮMԎlO6b ¿ 4=2vC%y)Zg"dNCWr} ԫAϢSQ[_?cq^'%ftE_X}`5 d#j{l'I^ҿ=b0clHg<(L0Zu@=10\+2:6N$Bv1J1ksBirfDNHAn:a~['Z-? n:_oP'D 5+qbbQ] Z)ZY,/>>>{=<Ő x{4_w7=r8NWqͱ=uxr%c$ޝNAy']/ϴ%6 Et͍s&yC^{VTKgd{ׂHW]Y^'?]By^4 n\ >NpSx~XN zR԰5 %ν⸄4"|ω݅B:aڑ,Бp]Ք[w\g9,6?nӹQKy1MHr9b(xB\ԛ miGR1^/8M\qU ؎z+b\hYj8Q; nV|܍-8rM:@f;M^-x9=$y&N# -Wn@0޳&*:s`sūvQ)ol?d"ZUmr 0ko](WZ "`I,RQc\pKޘ{Mytd93)UɂPXK~ ʔ5Р(m>E$]GD}rSȡN!2?ڸQwzC}RȓI@\D5U/k,q0j]v׳:ok4Ф0Hq/;_dzh'Iej0Zi# )cs!#"[cӕ`L3KcUʜg1aEK| w)Z)6;*w1n8^!u!پwQ`)$ L[-u4IgT,^G-\T%e(?u黪_ݟv*- ZD Fr ͈O_4/D$MBt|KvR5k{Rf@K$\zD-:|o̿oX ;旑U9Cb2iA#إEv چ^-O *) =03ĝPC9W2wACA,KjS@>P2_Qe 3]RiRʼneu|2m6v~fۼ+u" * Gq{N:Hm2)bȏʦִ08bQl!N1I[T툡`P90pnAA }& Rw&e[}\fUyfr`EDT"JD'h R/IIrTs0c|8J;7;ےR= 2\ߢK_~&/#^Gm_i\ mEK Ww#,/8 9@(†cE9RH }FaY iO¤Z~-GOlam-m trLh! ޓtޚɥM&AY5Y[M>&T\SG7=ON?InNwCn =Qk2')yΠWC!vCg$b2Q-TT2h;ӌ;&r> aKTe⯌3ޗ-Q"GiU+UX=\]^׺|OG+h“#\~2kJZSHՕ UKZdȁ5~aM;_^MJT26Ǟ6g5y;94sRIy1*s\Bb/ _\SyODӋyAmNEc+k{ea-#2 7J}(\aID2::0xN;,CWU땧-SZ:L`{6CPn*Y/c#ATg.@DaQ4UpB6DQ,c[2T-u1TAlVZeE_ǮxY5=60x `V‚zK\kޘv[`A/_Ю+˄ ?y2mfE&8 OA̸r٣FOQ"^W'X-@H唼obNxGYށY11yp$i^#-BZٌ>H8ۣ( gKTM(X)=Ϸ|i[&Rpf;NY婶\ʮ3矌9($zبkô{l\7Ţh SUkJ2{wjB}{U;FvV~߰zN3uԖ[&\YO41jvX&$k}t0 _$ kv$uAKA" ĸC"w_VzArDp 2҄ l7d'&;ø(sSQ۽yb裸D]WAɽ7[0xj[;8 1-=^w7u2?&]aMy\XU8sG&vIxxcZ;ܙ^rs#mcy\ȰH[ C3] pq`}a,t1l5B;.C9VX^rJCWgK]@ vӟC( 6/w~ I{#6C$8}3܈Fg}?= t$6A?%V5lM{oi d'_:@:)t[{`ý/"y/qW:ޢmS1®mga#8077;CS?z}j2PX0wMq^G)$3[K9k!mRQ<-fr J. [)(Sb> r6 u se^4 Kc_lI1zxT˳qyԔ6(x)C>.Piڼ/onh4ŀC\3WYQOjT^cю9X ~6ϬTȦGMKFA:`9s͋Is [a"z FA|24{7k r{jX$p<{SV;= %Ő th_S{ݡ`D^ eYX|*}z=ˉVC.ɘ"^:$*s\Y{LnFZ>(T!aYŇ" ] /I?u O(Պo^v W\ʐ-nX ?b59: Mz<[]EiJۉь;6s$uoWIhPuP3nAzMּ-+咿I`.HL8AC#C43A_ms(=pQZ08L}#\+͑VXQ87l]):`7"2jm?jr3dI}hUUlDR/@9%е`U߳]e["'5눑DgK4X,$)dV)X(k5=yۨgp+^334L:D(f6b8 Q}ӯ>k3~ o^i\~a~ 'J#VnFRz.9ҵ9Ci˳yunLPBbŦHPb1/FMmݬ J~ۊ^~ JFm~9_LRY^w,-|8^&88chɥA$yX$ٹu&-v|ZE'"vOպhU =)tj.{omg#1%θS@CwjTKib?v+ўLmm9.$4t|c-[`բT.cQ!ZT|ԏo$fmtԸt4Yi\siWI[NmITDDX`+ߏ[v'~cNQɫRN8$ݚJ4 Q˶5P?uǨg;2a+4;' WVBM/+ lvɱ^9?#"8rB w9#¬Gd&kIgۡ1?ETݲ/1;xP,Nu/}\O1DJ~+bu=Tbzg& D^vҾJی"L!M @I5xH_l2$A!?DFeLrl=GpK-cPC?L//.&0azѫ$"-Kvu|<>~xtMfilz=@(SJ Ǿm ʁv"/Q+PnOÌ3B켃^ߨ}teOv|ɽ{-SIFs>B^ n[]#&ˍH|i1;4"8,|5YW wQ0ɰ9e5̹QO2>-JϚN̒#!—`|:lI:kQJ Jaz*WU|GSdXyMyuA~(3%F֪ 6IXDGV27?ةV{Yj A" ȬRF>Nhݭށ:0m^u"݃6)vHB%ViDkWphP`Kl7*=-CJhf~-ߥޅdBp|k Hb{k]4f!imc@bxAђR+A /d1b^Y@P4x4M 3Y6 |J?؜p R.z0BQ*IPXGiP~G7G@E UxdQ%-'|R,PY6Qp9A6}v&8iqn wrhvss9~N/'ep!6jb#GNs3Gh] Biq`ͨJ9wX/(晹&js4Y'F6MDպY1s[6RqͿT m$]N {Lx)OJ_ʷC(^GMH4ay/d׆ M$]vTCiSr˥"ڀd'e4cGcXk װTQ6]!4C03cVirjd HZ#&'`?}bNd7^wp@!OԿ4.-B97m\M;UY+dB03WNfB˸cGOJ+$()}v0#_ܞ4NvR&F? @kqDOKt^4 _Q9͛C"QDԎ!?"}m{p3ͶDBأQK9)P47m;vNḮ9{) [{WQigB2Y$zv~G3襍ZM\U_NnXѫUwJ&/-m[G￞hDVJns[*:O7;,:'P|h qcJE@йd á JM/Lǣ,E>s0a1 M*Wd;BJ{Qd-00 -è\?F˕geNkQ>ر1ιQ?{Yc`ݢk*!?SQ?ĈaZ !*2+KTKVY$Ic=~&_݋E[xYǧ*C*f?f+gq+\t%\Dǫ@1FZ@0js9_5AΈKhSn_u} oBӝ D`H#_RIORpka|(!&ǿboD޷DОuOjzA>&S\ة Ƈݰ}mQz7 R!g" Uۦ| |u"P?oVh\‡j>s&IO:5vWp o|6 vDҵ x*>`?b9ЍmM4˰Έ_ b{~$-oh_=E~i>nMiNכ#(Z4 JxP$ ʄn@!XeMe_&Y[ar&] t#.lrMKl&"?Wr,$"t5olk:$Wdrg@ug2%ʶh @"fTu`j C: x/z'KP/zsE!v4] ctfd %(>eI'RĶғn;e`)ifh]+$vԙko,n4%R-d6 D wKv.Ýn=|)9}c.z%aEuBL\bufXE7_Ea|ԋn OF/*+WfSE$UQZV\~60Á [l \2&'U8~V!x+bߪ!oSB ywYAK %F~PlZӊnOS!´ m )1 -vgZgdOS}-Ke%_[\Π|)9`z f=_݀\o+"{:+XGBc3æ6^?c@H3&-b1JRx$mpenߓ]q`mhJS^[-` OUR#K68~ E_s-f&tOT#q>spec`x) %ukoUP/9X JGV2|11TP!䕷 }OxO'hr>z|FsO@k7̶T~zNQũuxT (j+Td?EɃQMCd2VfSc0D w4?h^Ϩ_MٚH)3"Sє4nlPv]]t~ưEBA V 4[zE `\^%4H$c2~{ (40!8J-.t^ /6$ť򡻲NGfjŬ2И﵈AUSn1 &aXhdAJO):|~z݄ł iV)ڢ+(*L|ѯo?8#Y!CUg/筒=,%UV3qПB+:jMxL& 5J}T 9Ȅ&Y8#+# & TkyxZxT(ę1ȭhf۾vyֺ"jq3=㒦x܅t:lzc>G~Zh/d*fŕ,`Qt$6 5O.;8f~j.ʌo`lޭ bA7ʴG]Y~@ *h_4K8IO8Qܼh>鸦1ii =nʇb~{_))n_Z'ь/j6%G@84!d,SŮ\OZR_v##j'g8Ry7X0A!Rk2B<̝⥏u)Uy;%Z{˕i>ҏ4ju1n'enoӁӟFƅP%VaW~ٺHnr7l$w"UQ (K*{Wt ޔq18 q_KS%R:/+ Zn" ;31*hY/5'|v 'o$xšˀ_7^A;(nBHD DčGh3z1}y"/Rb1yzK}$ O% Y2 }_^Ou<6]'Qq$#aӮ/+rAa k)X)3φ^0 \5c@;@ʏCFWX4u*9vҀRHk/^,MqkA<Ki4[' #OY@7] ەܿp`Q{rJE77U!btb#w>095p;9_qDFTi#V\<6<Y1),OsTa_#o@+UR$JXbD߱ Bʾ8Xo5әZ^FFĬ(,}(!Uq934hrc H$HOVm#b!ڑJ"5gΔ&|R3(v H?)lw9{F߫oukbA.&7J\7K1jV DawuW׭k O k' #&$ ҿRe2.8sAU8Eh%q겒sѸc(ȋsˠv+ cՊ݈0*@` !7ag;ni 7@vJoR0)lfXށ|2?e.gp>7dNӭ:$ O[#L$B "nLdJ6R0^G:\'|=vddPqtN* }-^\4#}oE^@{}.Hj!j |[Cx WU-)؁~l/Ȳ@r q.X tc%p~x O}4R`wFҔV fGYU\M+y(Sz.ŷm<_ EF#1ke>gv&/6~y˯FBgoY:(=1@4D}}6ʍ$}=PW<ծhX#ɏ 0os(2nyEВ)'%uҼuϤPW5` !wWEʥU_gEK_`06"~nj)i4۞Wr\$_UH(bµ4!o7e;^ܞM0s4l~EW-Ptfq홃lQߨ 6a/M]bjtW+yhAK,j1(\Hj|g t8]](2&|܏:6 "s hv:t _QRGYof 6,ӯR7xy9nwɕӜLGb!$j DJ<{?M%;ܑCt hF *B=oJrLuq#I.o0)HV[?A*'uz7J0611\ Cv 7uIR7}+Am; }@.0hQJ3 [.-n?ί)$?y J>K03%O*pD gďj+dQ.:Q~N>t:+ haXȂc2|}]e[_YtS z+]tE˅UJ #1ӝa  w^ qeύ)T˜}3#\֔H=PdX5;"|lwo]=}`+WRyPU#(ҢV pg?nl{c Զ|4km#r~1Qyx#Ɏl@JKN ?8dC+`f>.^_ 4s$Az?k2fh6֎榼WTmK;+0`ͦ ώ3ghpԄ" MEaY:=/,h׉{i]'zWo~aQeW 4%9*/LÅ < nR*U{@FLۋb0¡\$>Fyݞ+9`9XhrE $Wd^ǽج]0!HgXlf^Ga9oIF{5_lnjoI?nO90./~I|_ *+c#3%9 l,VnB8l(gD~Ɔ6Bq;5\hP;F$vuOTjHZ{%c ٗJQO%kɓڙsnk 5-h/R)@fu6N35}驻zw]"$Q`m6]7_1MTLbE`^Ha0;|09H4Ę`Ϣ`Ƴ*'`ǐPr8". eќDZ` oTka= wz!f݈'" l$FMm0q;saSU40)ꂵ0h饐 'ăX`@j;*O.w }t{&l׃&]5V:L](XˢoWZHMwB7 W?X:h>sdLpU,Z9EY_!N/Q#"6~`MTƜ|EO"  ,&A{(vYyQ&sl&KaC(SL$MrLzBbtW*jA# wBmbGL$✿s*|U1s_sN60 Alk,hC8bYeUĂ2sNVSBci8C ]ɼUlUrqͫukJ='y5yY*e*Sc凘ǞSS5l ht (wg;1%6̝PUۥba;/MTT5Ei|zcx/eVlN2rIϜx4zHkV~%n55xoݏkϢX@oY0~yXME.\I[q eDn *-d7+KU*QGU:\S<$o^9Ri os4SW&g&[UkB5PXaYԚɷ81KK^`Z _KW9(O|BBE$_>xEopoU5mT9"q` ڻ~_9|Eg XYr\gBUPD}2FW~hЋ!GMORݫT4~qaD$ wLJ172mgiALd#Bgb 8H\eS{9n=ˁmluI/m)$Cp Br2 Ғ i޸E%1h-ؗ#P'BaxI[ڋl Z͐EK&|xt@?o#pG]o% "Y/d $1[ufަlCp3߲eOGD(Վz <2x# Ľ+[}>ƸߡDbduiL?PBu0 ťN40zܛm^0twXL(etǩِ"G$M^spjguo$WB@kMc`ºl-+ j%BȾ+%{j׶'NAEƑނ "c(vKwoesH k:LE:|?@|rɫjtFZPW@~:Z@"[8evy֚–`e˥h,s?&/kU?$QpHqq v F)7n{cgO"װ`aDRx4oaC:[L a|Em0$yW` GwgM {/~j.)t/^ ͆%pc&!2!8wvҡN˝6`+B\ԃ;?X/:!%^^Xyaq8#ld,Ԑ+0޸HP_`M:9jV ֙ORDe IFzQu|wBV>Pt9$QxchdyFOm PIS;6 ~m2jkWt<&Pdi]ScZH _Jی[*OQw#?dzgm}R׼$)Wa=PwD(0h WA @O5á&֩}@A^Q# i4K-Tn˨J.%sF`*< ۸x R5+= !/ pDs|UQV.m, o(LoW]@_4Mܗ !x[oe6ՃMFu/q ]Mmm(GQV荬,rO"A2uu&Q[i &/x aJs=l pQC4m-'n!?Hf-j* =[nTE(V]§fy@/[*^[H&NpZǛI}(Ifvk5!6/:+Ԉ9{TJIYmzmB"yXK&wsX # ")~V$A#S&5T~- .Y[l-`ý>$~Luh|an7Nۦ6Fo"WJ_Ggv~Z $XrG)iJCCm)K!M,q2j>;] x7G[Dq?i}"lRS{m>s )=3aV6RKQqyEE# ٥`ߡ"tVi  K0,p˨}sz )Z 4 t&'HRTikGwa^v_'dT6*FiNu8ߠ4=Dj3bmjh`{%o[ȅO&>}џ@(j<~ .o*A*5v1#]iꊫڛYzLE&yEAjS̶kV@րaL!{RzaAr}8,˱ j1ns9% JJEg';5/qȵg%AwQhatAg[Dn@~U;g3?CEvH`iԨM5nFQ&Rsimz$6QFMj%>79DSf@$i .]cw~Bw/!4\w bGX,=ũe5Ӯ5 Y/-?=" yW8?_.s8cLH }=V([G"ӱ oR/=_+ U E5vX3b4EVH;u xq?RKɘx<'iS} #7^Nj : ז_S(yn}>ݞoԡȅDn؆`^9Xc$N&X(MA )@ҝTYjv+d x -vMcz,ZQVQgR]zDzr/#r<~NNq'`fl36f7NI; ˛̋о.fJ0ݧ ҢNѱNwm4Й.ϒkQ;n"ӟk3?ш![.T4&߻d 8KK8/lZ/@E#oeI$nsX|=51FWCYm}W7fA Odʻ gKhu b'r%4,Gӡdd3uxz@B W 4v4uz25{Ybxbpr)4\ZH P 9w348sazP Nv>\l}ِ<>:r|w>' m]Ϥx E~J!B|sc採[=-ȺR W"R:&*,Pshn$Bn TGWŸ~|Y\8P֚3s^Og?HS_Yt|DRI|%qև\Cgx6kb7ӫfXiC74ñE܀,zw:ԧa$'[4 `2- BSO$ILqy}NquvDod.މ+;P `jmn_̴Pg/Ė΁e23} pv: Tm)p*MAm<{n?^>Ý~jKgݨ^ˏiUHn]n3[/!H*)Ÿ5ϏubH G=/}j\'X0_lr|`P/MRˑe̯ n޵,aOKHг] 4O-"P뛞_*{BX:$ZR |=h ^wXOBP5X=Z +'SՖDُ֏pEY6F *88 REȬ[b\Zgg)9DC$Ynx~71A[1U@ du):%Rv L(6"wם\Փm/б~c\iC1\(~QbD}V/ZhvP_ċHav+^zVb'TWuQ aw;'{෪7jmIx1%C'f hGg[\>CD,xc̖֎J\3?|:X' 'Ҫ뒸GƐЯ{D*BiJ.}ȘSԮ%N+鲭m߾S*QV:7X⩡Ӆf,[4л;=6>:5Lp/Ce 9/"tbϖ5eXЫ;H̓!Ol0 B<3%IF#w?RXVf jͰBuq2QB^),еA󨍇/;LE5rZ :3kIBjMPU1c tPi PFWoSgu@\yo;bt]*.k4hz=;2QX(H^nVd+">LIvKD$zI̦#zKFj44TBnu  k:nW&#z˟15}aTxjM7}S%&|bR#`׺B0UB L2aV#N(#\VD{<{3h_]#ʏZTʿDo]_Uxw]zJ#,o+fڔo ap"^qUVn,Vm)wH*@G) ֨d9 ^IS:1^e1 >%,5y`5q[<yxjlU6LLٜZٯn{"7n~ l0?aY,rjS cܦs i`l bDPr.oWtAґ B'7-͵ Ui/:`+D)7z HޤPƦ{ʌ*#HLRx]?.Ӵ@LX,JoaK?eg^¼oT wjWRq3 u YU9%— 1ȹ+"~x CpNzWg8Hב4:SŴ> '9hP|} NUyD(ya]x׮ t iނn&9\+QfBk̑TЮ'ޅ  2A&GNOr (-b#K/(F gQ =q1AYz8Ss n<<#.oA339PʾheGay= *Bev0r dZ6ٱ" [h TÅi1gi1L-=x^/WBK5ZfK0(2{d:ۛqҼYh.E|(pNG+(Fy9A$u$&>$D<3HTf q\ 3’:3ݨE:̙^G +q1[L h5M8#ݐ`b1WYM$>Ԑqh͔Ytb,pr9,F9Ȋ#hrHp0j/@MfՎR/c 珰Ppμx1jrM(̒{Q/ŏ)7ڨǽ/@E[+u?K!9ĹwC*dl`߮]!GikzۑsGN$/3%T e{lR'1lUe{*x.#L Ѹ=~N9:}1r:Tr U ; UmM\B %EAϋNq1XF|H# Lq+X4NߪSJ_rzxmLc! qN=RE//raJvb`FD3cvsہ{-OO%0eu(\Z3M jzANP2!"e]#U<͖hׯ=ǵbK; mjԐ=K6KŖX8oUz&7}eS%}l24"w޿Ex|Jl_ sal'b.6p6ǭ j .8>AR89*@fըʰo! !dr=<:&O>vB5:ϿyXAC>=job5>U~MqUre9e8inܷ+٣5K5⤚hut9fi-xAP0\?~,+iʴ-"G rY6?3z^ak' -| E]ܕ2eKxcץH? h7s0J6r A* |a3z[ۯKצ c]ϵĺa"6HKpHM*ɡ0rf@cASAO;[ղy7j-fW uw3e -McgJ/q]1(ir@HzZ'o3S0s@Dsދha 5infdE\gjQ$UDhɡ0bPvĘ yeL]K:&=: \ I{ *[ CNEueWU/#W2+[ @}M={l`U x>Mܢ7k*ssk|v 1<N㪧cя )Z@IVC nKZHQ֢XꌴkMsN2l.Uzͺ*@TaF2)I,ߤ2qu;ܲ1zy~2 ҁ%YEzk|&[3;M;)*0QlUi`5EwO"ErE c꾣;Aԛ)"8i w ë"-)j4b}R.$XM nqJHrJH߄u >SVjѠ`nd/c{X֏X`ٷ!Uc^Iygf82 k%R6$ocMĄ^tUA:(I P)En)G׿l)xC `e%cYue#0,+'yJsJ:D7.l tfO{p=.eʈ_|a+l+B qDXBL;P(S Z a!o!yP%AM,e+n*a73Pk1zT'!w%jJiWQ7j ~?k}\? Ȧ4dP`@=Okϣeyr2.Z l*!(~Ԅ'"뤣.]}Zq9pkAu=f?Ifm9pv@{LN7nh5l=$R3R#c17`73fgǯ>exG>2XZ$`P7Rh8 *G(_~0fJ%;KSfNagt~pI1% ]V9UĶr371#K}YUcCd B L鬳gf ЪWFRh[?MChܳĬyn:אOx4eo 3U{pR@kdљ,j)gƶS5k*9K-ō,.7u"v8}xdb!%lOc'Hݘ((RئSSHbp>~7ԡE()jħph-1t-L+S4FLyүN;>n7=v46 7^(Gu:գ3j_UC|p&mN6ݴ[`:G$߆G{d)v`hL:'{"G)PD=CK;D^p w'Spi HU˨gn#F:!>4àӏǴ, Bו_RK+]ԄӝR(62KT:P08X̕!y׋/Q]s9oFv gialhd+EЇ-;W.U)57%pg\ 3f.eW>(׹?fu;ݵ=aGu?ؽ/# p*V2 vY bbZ۩ʹVLM*+<_N;Q[4  4CT!ݪ|4/!8s5stt)Z6.9I=8h Kِa֎ 3V" Wc~121lnfI( '55ȶQx-rW]*ee]X "1:xo>teԫX}A * ^9"텦F x zB3htl*^D#Rl;%:T>^ʻh N9-<[d#AAOۥlLKn]{a5q螨̎LO`=GveMzfUY{AY<-_mh nLLD!##I!yV?pdS% G485Dr͆sfA8. vY%SFۑ>5*9$19\W-$C,>3 ݐ37G2/lVAf#jSoBvw$6Ak3[s4wSPܒ!^W6b1mz#xkc<م Z6@_}!"0sLxɎFg H_.G\( *Iso>^="?:jهʁ([F,E ey qG?՞@p $R Ǩft&}Wr`Dž/4 )#[zz"]oISͯ8|s@,^֒HRgo&P޹S=<N46Hؙ[Zբ}} L6HW wT"ezXs88C9\8.)RBX݌F7LSeMfDID;JKﱄ:Pٝ!"%öbTI-, Y~^ y'x5ڏubZD#+*}Ėх8KXe hfR&͝EԵi~C*˶p.̅,&æ)=jG/kJo*>7 f՗#3ʡĶMBfX obGNu$m$ -["H,CTw<ަK;Nl߶ k#f> VuԪ4$tyj{rNޭPz- ,~ßOz=g?i"uileۏܗvg2]z4c3}W| ,=/Zj6ycX&hR R+"AkZ}K=xrDi"|&6ݗZI,g;+}JK1C(lTVg'ǍxOlBBշO|jr] ڭ17(4GPFp$Ƶ,B=UkvDlCTq +D(6J`XBo_KCIgv(Ao IbyeA'r8-Y eX \eGJP#W{ K.սR2|Msxhq~~7CoC^ -6m%>uu󚋉|xږLŬpC|d0 o =VsȔ3 <K]3`5Z?*lZ5 c9) ,YZrfj$go pIgNYkԺ8J{a'0AtxBxE4o2ՆDy EʲVxl3efm\XiQۯ:0o aJg I#˹^ze[emW6-/X3߄{SA3Hɚ\dۥE*֋vDfVkJx6lAQȏnk >5bm˫: nSL *k}V2[^}@eO}ѻiKmv&^$?RvSݝ}H~WI2`Qe;םÎbh&M$rާgD &v*XQUtBzAaN~#HZ̒](71$Wiu?yUھPb"o4}d*M+fH*ޫ~\ GxF ,f'ꭜ<N i)eH)w3zj*$V^!-FW3l >eF ]b1jvQG{S}Z]ǻqKd-b7!s#Úe)LO"i^a_+ ǜ˗i/Fߏ3fsҺɸ'ۈxX5,)PY@fj&rӳӕ\,CV聢iU}< ]9>@C98pC_hQi73aJrݨ"'D[,H_ ̩a(Dz5$ ̜\ӋR OvR,eIDHdR} Ttƛu׿WW˾ IJwlyw:E5_<,f`GPe/$_~cB 2=p{auӸ_в/[MYJW)ղx_ Vfm y(-bUfD@^o@+h}7^:}n)h1ʬ!5Lڣ*"$h>Qt7;~(8/ra#iT'eDlv  /Dj1aw-{M TOŷ1NaQ: T]Qlݶr@IlMu,R@<mCUm ^4Div,Ϡ!C˻vniX6玌q~<%anҰFqr.{ݽ{ح Uf X9l,JrM,#=,Q_CX?ʄi?#J03I,ʮNp$=$.t:qKJly +#=Đy"v-|tGg(DmҎ8<\.`%ԇ -.%|GܩcTЏ!r\QK5^:fo:0FcT/g~_ ^7|Uccd<1͡m+;BU^g7?T. L]W?'߱/~[C ]!bd0XW@t<,!D?=eX@x\!TɴHs 3+mp8$3@"ڷE2 $bCw.3@K]7qV>Y왺*P0hb$I6rp\Sv=. wtcÆPZW;@W{z_q7KJa;ިr\Ŧߍ4SK{xiu} _v?"&ί(0~FGd|R.[c/-:&v8ٚ)g(˴)bqR~s'UT֜0*k7`s43btZ? ]5t AR,*eSZZZ)3< @ H lՀjVӍoU0`J'6'9yZ˦&Tr<,:}O^#*7=jXN,_?<$jQ2]gQT'>OJMp뺔N7szu/s=9gD^~k)o :4HNy/)U~&Bjiq(2o'L6k?lݓ4OB>PKT)<4<(xO_`͔,^_K2uEaVHS=FSv,-;byZfwig߬p(7y _U׋{h0o\ jU3Wk'=nЄ^IVߏEII Bb B`Cjy0º~UKp)\[ CV;e@i.|7GGLE$K7rne_yqdNH3  (zob$`6".-2e#HOX5Ctb?Ԉ7!,_!tgyx}Mdx9Y dEZ #qN4GEq ^]Dr5J(ٙbHV\ClƘbR9E}!/uH}4)C۸A /d@tbMLSR=KhOwfmԞxJ^֝*9YO2d m9Xyo< saw#eISl2DS2#ǞB4J nYĺq]@*hU6 h`;@5RbG Q4eST:`=on uU rzOPzhML!d^&^*aw`B @I V ^ dzR m@Tn!8O}Nؤz߾& [%hrGɮ~'> aeH u<4Mud6 Y4'[ئ|s`tJ}Bdw$(V1)g0Ƒo"〘[< Nףu>z Zd<GVtB>zHaSs|f(P.gS'c6ǽ9ҹ܉16wB]Z߯O'X`+zQcEٓs\Xhk{eO[S+7s݅TREVLM{yXz'ؙO6 їgsTŇw*sBi 352ZҀ`ĸ9Jvb<֑jl! kFgo7(EߣT8o1͠?9$AA.5gCAXK%6CN@e?\ԩ}{Evpئym:^eb5qRx9ڌP~ўrgǣ\Ux(jIi.֓EiS;},j2/࿀Ct!~c]V N*"JѱzP9HuC[pz-D55x)*zx;zD|5 $m Ko^XJZRG^@Z?3dE`r6ZEwH(2.7wp:5TJ k?]G`j.hGpJE m;qxmM1,'e֋S#f/Z 75WtҼr}?۵糂8nN,r`c?u)E3@(T c|Ht򋆗)Ih-'ɦFș}3'Si܈V Wщ kTyJݡrd$<& ?Kp&NJޤ| m6QVB°eoNЁ3!k\eAF¢ I_Ḍ:j<aPeQ9HDQ&Gy3}[*_i٤~Hxp`kvLn/+ 2#T.5}$nN?rk}F:Zp8WKB.gk<8La&^:џtbΑ $%E*޺B1aP + ̈́<8>ٖZ#a&+8il4΅uWGc޽Ü6G [LIp5!ʪm'\/qE 7+}p#޹`P&@[g GM-] LАSY3Vzu^),\+)xKaa{s8S:"YX~2W ط^(]I?SۭȠR(}G8Ox]&UBJ !]pؤl RO/*ȁ?VƺKӢi5T$2DރlyF2EMs*罆c78j#t#Ѩ6`iS o#/?,>Y-eSvߞ%g&a|p 55r\4?f7T#IˆdI2F]6eMߜ{ .0Ƥk7 "zxy).[ ;ʂ ot?j4V/f+F ROVXv.S$g$a9gتD'l=Η?o*7mljyA/O=gUDGwJHGa q6}KbCxmوBif}44"qDFI9oˇqTϬ0DVWH xۛ3 (eƢ29uRA[_KsK:]9cnBhRWGJ~`_Ϋhߦ2Lq &oT$;Mx]?K!Bd~'(ؑ Gu:fQ ܁=:>MaD'|c`w, RG h&hL6ԗҾ:fNpv_$b}1/ܪJO mM AD΂ ~Q ;CwpTSܡO[X*aQ :G[SSu/m~9}Ud.|Ҫñ&o^P"u2T2&4Pm| *(\KJ]]b y Gc@nVI˄1Oj;XvSyy@P(b iJ'R^iI#Љɜչ̎`%q@=HÙdy}i?< vj16]CX+*^B|qk(E(FCbu&!3m{akǰ/=&"gu5{0f҄tד±$gXg w nEAz3H/ i b|5]r(A==]|>ݽ1 G:Do[ZLZEÂH*,\>SUU謔ΎPOq2ƆT˙yR~*q!̏'+kT $!0z¼n$i xJ+-v ijPI* #۬O,BAPO*pn y"o"pȮa]Eʂ _UbB_ Td\RN$'K2݈:wBvܩ$XȢcY[=y?ho6\ AmQM=q2[FALf\[ⳑk4b/?>}K7vȠC3Lfp!#Ts -_ƙkavTNgNo v) < pJ5F#h;bӅ3hF,tdDž&WJ&^z v ʈYzo[FB~|)fع¨PLM;OO4Q{4-ӕX_hM^ ~OftYIG:`yW%^ol:(_ ė7H~>1. Ջ7v*6=5 )erFWA7- pvdg XP4Hi&(ypyD޿wXLXș+4:P"@WBQ:#O8 ytjcJNtqd ~[+\.B;UP'p@Y(?q̦kហȭHoT4$#*80IʹDgA'P@t\UYrMð&8CM㚂ܔp9bA8̅'ភ]!ۯL@GN3xPqvr.<d"l~05Ɂ:m-;̬9YRaT|tH ANڧubuJ%=S.Mw#6EBKnD}fS׀$"TbB7 ]{3*~BZVv9eFm~[k{o̞:S|UfI3 ( "e9谯TfSѫ 尌P [ذ"3[{㤘-W;1^&ex wekewKof٥xPAL\7{}qQbrthpsE j%D}EBFZ>N(;gjy5H*/a0_&RmEC1xnjDži)\ sG}=G~̳.mU;&*bzz3=CY)(U*s'մNW^_u07EPn)Vmi <^LtYr>q{Z+|܊A=kX5 do|&;mNi 0H5HuG8Ę7lB)6-@4C)y 9+Å]vȜ ϶jGQ+w+:$g?u3-@ AJ H MD.Ȏ:z33"[3te2b`aKu# =)6}$haXpl^avNZ(i3'颇YTߴ{9M\{q 2iAǞ}`}S[TTT)LzsA7;b|~-KB(Sf?t+2p^X?IaD$ma;%.:#njbaˣ"_NT=1]>͟?>`RmASCU6j^U jQOLvik#D$-R]z'[*8:GDk7dX܋"=|/q*jUzyl 5h7x%;߆t+e , hHy,G 2Pz*jwF/+U8Ĺc6/l<x;KIPP9|%"k@C_۬-NQq хcx=gSv|,rkOPTkBr`,Q#ٕ͊փvMVPߎ.EEրB&r&1"̤m+nIn>XFoUD'r~Sb+\s^z (cf;MY〇A:@D-Qh;+kW<$ ùV͢.}݁-7--'I%;6=,gVET4ZXl.F&jI2 [PKQSUqx}a+9s5)Xk9,r7j?svE}0ĿBХZ :()n6Lf|Ws֜b /+BTw;+By}$Pd{BN5Sxz$jD ;uưn'j%F:nDpo'CsGy~9 Fv:i)=Za:ub&}? ѱ:{ԇNy'.L0.cjñ(@镑39)2ǡG~ T}c|3WƹIOC-_r1\Pti3l)&\oΧ^$lƹ]xHМƴ5&4Zs 7CwXYf0=) !/P6 -(ߤ_}\F5GΙϫʉ=oBe>8<|j-k4ώ0]bQb"f0=/d$=ƾ.Qn4PߥSBB^K< ٰ`mz3Q Kq ±&i gml7΂?ʘ78]yָށ&di }y^T{T_Z-/7>phN̜)&3YY90QąqSy**٬KL F ƎwTR $,S[B\wx^sA!xe5\T`RoFK*cCvMlKD>6%Z,R7Q 'Oyݯ (~M%A\ڽ鋶9:0<똺4h1tE+k)ec_7J> E+?rCs+,IXDn-z叆OGGݦYbfNI0XLaMYώWn,i|&bHb#0[q+n^"y`M2ș?HWU9h7XE DCH]n_r74o Hth}̓*d^L|<L @}iGjU*ozkF~Yآ "- mh )L|K;s_Ėz+l5N.?$qK" A#Ȉާۦ􆐙=*6V[>3$eg%釳~"+E"eDƥu Z'͈w(G)ϮT]fd6_RڧB;C+]O;&ׂR|4MARuMָe*k4o8wZOLBqn%lqYr>ᲂw͡M݌"$<5!*Ln< -=iv8Ɛ^ uZpLɘW~UI4%儛k\@Zx^hoA<`K;m9 *4[&u7*Xl޼`AaYo /iFEtT9ᬿLsG;ö9HTa|(j7"'c.4YK:W+AQ5#/'u(gЫ){(B[? #Y];bPr޻5Uҁ"d= azǐ_~oZx#|Z+׶[g-9(Yf|=Yi U )R- km0>'|{DdLY^J^N̴e#v)ZL .h =r=E(ۤ61 ʽŧ`Q6W:Uls~ke`%ɹOW0/fGoy ss0ԣ㘖ۘQL-;?iByOp Uu 8Pկ.S6U&J=FN+Ԓ]`ǹt;l W6Agt&C(X1:LNݫL\ t?zc3UۃMAvڅT t堿Eܚذ b"owqjtmz.R6YܤYA )"?}ue_CH7ɃeTq|t= ^7ozЁ P;PBuoK.m>HmlxC]gAbʉ38B okEkGoh 2t)6p~T.ňڹx/:t9a Ͻ!$d4=%{96؀3]>ٗHl"r, Z,#ƨ"(mf4^)u$sXMY!8Iw8[w [ K"`O_ Skda/2M,&v$/0V)IY/X3PgeŘfT5HDpU*̓=,ubaRa0ɶI,t^V 2ltjG!*0o {K>a[LG]/ %@T_HCˠ?@fN!OKNNdjkRXMU a" 4eW>\9@ÐR`/]xW:(_Zp&($":O_"kNdTJLdKl4,p?_QWz֩8Ί|H 4b/r~([>Hi'Ξ 뼸AbXk~*lDjGZ]cx鋄 )fck/>FSX7ùT:$IFRy:`2fNb?g',!i}MlCV9,l;=6_QY MT͎H_Dg⢕g\D V`\y?L$ | jĸ.Zv'S|VRNAڕ%MB[72vWPժjz17ބ Q%-gC/[hn!#I @H8e iZH0np4Rf>/zhӉ>XKu2:LBl6?Y.-rCY*g T7%!L!?atPx]VV6sƒW줁-w#b))$1EvRc}BkPpXLՙj6[ Z~ >-8B-4YWp:PGzm#@ \k(Mp/L$J><0irv},C9ywmۊJ\ TKKP-sҬ}=b78bnn `?M%!黷 ?X컐oNE@~/; S+tctFWd \7//Y8yBŠY&MiYގa8/;y _"/A}u1d(/k^dw}yryS_n & ]$=e;pSF088!yTM,<(ӣx<}h4xj!OෑBO(dO@Hdox<$j|ctgkap*#OJs}-k)nɷxR%Ŧ(0vedV;;n7h;igN{t(Gzؗ#j@z;P)om#4r7$$Wؑ1yԤ)_ -Ɂ,ںL8- *efvPHi! %c;|o,ާ[jW0'sֺVUqpK]HCE-ˌf`#ms 2[xB8_e+ ٛ>% ~zfDOӺ{]qDq6:0Y nGasV( (`EYe8 &T8zz-VrHP\bm;igz[iìݣ@ `$vt' O3FnFAj;O22ݤN~YUAE!pĞf?b 3Ds0=Dv\L5m"3|\H JT RU A@ %otW-9ć^g\1 f~?,BOZk5 /=@}F-$$òw(T 8Z\ ĚӯX 'r$zņe -ͤySx5PgyP @f"6BFZbd>T_(5}OIxu0 g3 ܣS4LstxjX"֒-GƊ{(^0FqV0 ÀIϷ9![2OAs t8+Od{МXj4hCx١Gpn)+|NnC(kRWMza}[ЌYa: s߻lΏ='&([K/0-G(\f!䔙g77q@<8^-}l?c+DFR@MעDӟR] reKz$`nICg 35pBt cQlM R .AQLi z`-v yP(Ѡo?|+,\F{%Yu9Q%]){N(2 3;HL $us^\J7m b5?GMըHҁf ?m̶vRᝲ;mN[Gf|e^ ȴ"ϩfcܽ &gbr* j;@O23vWqR(!,V5SOOn| rt,ETkJMض9 ü vhCQFProhvJQ9iee*5琺i^ {ИAx,ޡRL26?)B$)4.K &x ?!Azm}pfX)IKy I>0ծ7te+_=HxRą4:[ yo2L:p_P^F?3/'Y &!Q5u WKf]m i5J>#uM0 7e/^-N{LڼIFG-"LW HHw3ɝ+'10R&{%,cc><{=]\sMχ=ZPT]d 1Bΰu5bGb~7d^+^j k$zLrYqp(D6w"*بXu}$^~T[dKTeE'aF4Y/wWp笱1 ox'qG:Ҍq|C_ư.Uvd-l7p,GVPG$pBt Y;[#g{޼IWllZ_G{:US(eA$EyB|!QH5ISrf`Ճyi40#xf}ovp~y캗q1eMMz}wL=/9@KSu-\:Er4j $#emd7?$^NI CC%Tq չƞRdЌ˴7=G"Yqv7= &yXfǪ"XV j1 w}jY?ܘ#nlQO^[awUCS$Fc!^) ˺gCN^f[g62ڌD1MD{l h@jZ%(uP5I^h4\EA{X)bǽO 1(YsVFO m|Ojduà F64^kyPoRe0 @|s;V|t]$j3^$m|{GUDmlO(z +K]''i=󻾊BʑODPʃwM]=H5y$UHBL8:xԻ+sso1$ w8ԗ;~3<kC:j_mۊY$4u)3 ~WdXl :L:߷u~Q.2]@ f=S9МԾ4ic{ܛKlsbSn?cAc+ɩK^Β嚧k)ib(}1*őG~zfӶvr솃*)R%tPz+[ҙ4/V_*= <:3oئߡ+i&FcrԢ&EKE-xuOz? {\2Bqo{ukzB=^/FQOIdtV5 Ⴞl ݟh}*J f Vs+s<f@K_t!:~wGi7-sZJ/됴b__&C<s=CW,iPJMI xsE8 \4$ghSpMVҳ. S90UL*5C|!xR{|Wܨf 2قATIŠDnJ*E9`_4ffVWp2: MfxzclllSm!15sW6"KjD \R38@>;SXuغv~`MEp9й|-hϓt&e +Lr77~ Bl.nI='׀f@Ma/{Ky2^N?ИIaҔ0zK`U!)QjpI0] 6QlܾUėTkpFJkTzvS/9nrID`98 !涒C;L<[tndiyg9T4WBU9\'ro?ol r&ũ̵Q%|GCx7BrqZLm3"$S|F7 3#<9>ןY!7thq$ =y- Q2@rk]9v$\e~=xLX]ߩt!Y ntiz++ 1Idu5ς0?-^ xtGل;CYXl)b>,c둟 Vx'#apö]# :.)UzPՆV^їtMtP 5kP|(]KIb.ӪeO~g%{DrMo#gOagdOeЪ-APO-!Ntf|#M" %e<:‚aw!^ rܮ³̾27y} fԟG3nɞPɕnfF? 4&I$v6B'k.QDZbC"?`=ѡ5 ލtzkr ;/Q*}6qjRs8uw\dR]#{9ϟk(@g Qx8&4\DFt%Z`D=lD?qQb`Lu%פ鰸G4Q.t`!g >,Vx 1By\"*XT~ 뺞=f߳/+kWNBQ1g<:tnN`F<l;f:VL hTnj,_}bLBսIإf)ҞܠT^&vc}W $\8V؝x֨0avψ_AXթ9MC.E (iH n6U%%Pqv. M|2FDcqvƬ4Gxxʧ{pn9,k^[3Zhe4Y%GtsI*QG(&z-ZI%.k:bxMڕ$/Bd,:# @/^7` ;TfѶ/ =Oc+ߒ}gLbNcqӡ{W鯭xc"AP/̎/(މ1}{u.L+zf;̅tp+:U}mPKy5=*tFR3p|mS2ytP x5[h]nnZ0ڙ|v์\0ܓ*2^sgӏ6i ffӒ6aD% !lGqF u#ɏ;ǃ=Dc뉹t A)6',e [P$iZ2u;Ƴ&*+8{^辉_w2t ECʄ\)~y6qZ/ G-,Slr6 TK[nj-#QpH#iKg+&DæAgͭ9rr"xh}K\-p1d]|Ø).QҠW"nOaZ{O" ˇ{G`0y>)ZӘD߈B_塏@`*{M_%Ya3d=ۡæqc[؏@-n <9P|/^5U1sJlwR0gɉ'>ht DFCRc[XSkiɺ LRa1d?@ՔׯWTX^I)be~[wvS~uΆq9^c)*WFIpCmhTb mP"(ix׬gC A~}c҉p<6q%LS5u|›t9gc$cUx,@%d K<=~$=5 {s2zZFmQ%"!KGs^(?̊n.? ҖDzUc[dٷ$!q>5mΙS^bPD^q#iMz(G A5Ky{7ZHq`NOˢ5SYfƊ/a- (eY"N lзyaۜSb֕= h䚱^Z Z"F4ѝ*G M.MmIqnMV{<ũhhʯ,kB~`3FCs<* nFSftc|>/ k2HkIE78UjO%E-%.5A|{k]nCOh̸ͣmHkW,p{NM%$Xꦙuɥ4ʘ$E޷v32ύL$TI[li_q 8ff-- 9b[JUc)|l@viI:̸ ʻ;D'嵖/#._n=H`8Sx,@g!4Kuu}A8jU0DG-m87$ @\gLs")LjAW$Tk3|]M;Z)?1`AIVd JjoՊsKڑ{:ZN8.[d>+jAN/h֔a(\JfX<-꧀.q|7=h=䩖yԺ?z&]QZu4BXAGWpl\Qy>\+Ehz73?)9U0 >RcѽZ @Nm奙{s, }?i..PɬAe r̂:H6^;ޑiyl[d v6 {d|*}5^c؅fڬ[gusulP7%M֍K[1 CVn׊q`*e@IΎ=&SõɑyO;0B[YMոU YttS`GL濢NH!P+/8IVHW o999$i2rkyz< ɦc3f(y}{0ZX%+ŝ@ރOI?n!W1bTHV%q˯V-FQ܆Ĺб,*&\>%)9׈xL-2~DDYӪʡ웟 EמּDtaż=ru:=u+D \#/}ooJd.!xޒE!gcWYzln3ZCKk2 3Wlk y:tN7վeCλ쾍 Qɿh``/"p;ͶK.,WHUgdvJ&åAEZ0g&d;46~G"Fb3Adlc//.׻:=J $gBe,R)-6S  T>Ŏi-S4o "aC#n[lU+Fr>p'rnڴ[mMHO/+ɘ=KM-׉taZsMjfLE'Ҏ bYG?FA#dCl<.˿RcN!{[O=f^ >Y_F}_%F(6{ N]?%P2I +֖#e.BcWQm1]#uYr] H>\i^#{޳*N4L3py((&IcU ~;64F6 BW&*\ KqY`T:3ܷͥpv.Z9iRhzR@<4wCl EϓˑǚZ0j2.I:0d%Xvqi67*vs*&=uR۬DXJgnͦfv$ xSUFkg+g0Eb:7 $~)\$h>p\Z/ 3j7*2 y_?koubcH9:3U4ƫ$"pDceMK.BQoHi&8W?EK 5Fye)rzlT쁐YER??- j_ԧ !0 9kj3[s5mJ=dWO٦!ь0ÀkyP4wR\p"+{QhvSqS-(ݷX.a-;0*j*g.; [ ج/5.Kīv C2AރF9kCݷc#ʞֿgj`'9>qHD7Ysr=`x[j$8X`٭d/!A s{K]P*%o4/L+PB&98 >靅v`'!j?0" \}p1V>,&?@wsrenCZyp_L^/y԰޸YP]kxׁpx;݀`}x%39+5Q]{FʭRn 2$)1,3/ (f)S˪N^>;2:a$qHDN1QXM:)y*hj ky V{|xT% %ؒO7[VҾpz5-I}fC%> -X0h$K 5cl,S'z9H-'c-Uᚙ̱ߞM#$8dW+?DOhTJVAXx+#Kʘ+\4NÐȼ%<*&$,ugʫhmN$D Ñox\}T`v:[I\eܕ^}}e.fpJP <,gS`ɶvjE Ʌoi# Gf (͵F*DlpFqn`$ƫV<cw+ԑY, uԐso͒H՗Yu~yPf`4T߆n"BǭSo#7Yry+j<6yFQX!6EXmM[[*Ѵsnەi'98sIurAe)ikN\F"[ƬSON2 2mZzLRȏPY ݮ|[J3s^pߟS!GOeCJvѓy MDW"A Z֌+?Odۂ`@ ؙo3ڣ/~+/- &꠿gX6^ yLUu/`|oЎ9Y#Yr=٨C!oF<{w}~wKP hO7 ՇmT_R"@`/V D-==;kҍAӔ)Ẏj@^╩Mh%t6.YobamVrjBQ(^r-䎬ml 964r"^i &StB82p$5Yt+}fM ߠzꪚߵPbe"%$2owR7w>cת2Y]sz{SH ǎ1߰@WNǾߜw:}M\?j3=`1T3zց;RZ]rt ԣqMUPP~֓J \e/Pl*J״QSkj96Yn 5PBۻm_vr!r0.K]Y XGT͹%!yަA PVU'NETps~poV'YulR /NSeKmQ㈮Zz?ԋO[\{nd Ix5MYt221q|XBdw AWKo1쫡$<= Ä5o["ҾsG.VzVMwVՖí\ #A$@5u >aDmv?MJ|[aE8 |ޣ_*ON \n4mJsTQ9-c58pF<Ž s{e"m_e !(}.e G9B#"ĿnݱA,6tIw6HuK^i!e Ul5i?ϛ >LB+|!<oCʹWE֜Oއp7\Um&.^RFz*cY |1z!ĩO}*%$-DxCJ`Dvw">dw4)9kI1  =8/,ozť^m?`g9;;eI4EJ_˙LܠjG"QPp,nzlY6i^U6bi] Eu5OJݗ-YV6 x4խ-!G)\uڢ Deꙓ SA;DKV܎0T`>WAEصq![4c6Ni/2޲#u?vAB"qV*9 +*~V4lZID>T'H/)8i\04RG .{30 M7R~BX Q\_#3duDF_ OSsـnTJܜR!cY휥M/:}N(M/./WqiUNz78?7P&/*9(Ժ#yam'%0a٢n!kGVǟXg)G'#2X ng^gh- a4 D?&`҈d+~lg}.]>;ʓxPozϓ[XY'sějWYoZ2-@(uN8hm;TBAzL7ܰ-fJ=q&1N`-i0[0ˋj (Lzu_pKDhOkHC>Y3=}ӿLI7 V{ qCl|2}cTo9|d+o:oriSn% Tb۩7r,9'ᖙW=/z3/ H 3SkOEw؃~%?)r*A:T"4轣ՙ4"z UCH*b-ѱ`N5qǮ(gΫnj1ϥz6 R*/ Qk%:ɔoW3$zUu3u9xFX;5MD [KTx|i!ȣĊ:)U;:+YLڻFiv,̝ҜE>t8HQg#{4A$HVPCӜ혬9:+|V"6l^߈ұp>SS_]M$فk .uKCe)$>5YFs8G-RLڜ,Vs+Ek5v?e+jb1æ-s ̦'{i;O,d1EAlD.["/ygP dיײ^kC+PS/^\fuZ{Zg 3M2}x`nm(|fӢ0wn@(ż+ܷkuI,fѻ6L\ gV {{M֚*?ȷ"dNc2ƒft9mYe i{1#>r0uC$T71ESbGSQEw{K#ᅢByƞ֦*YjLd {kR 1l XI]͒;;[pNXO`(+(r`e m2UG1@sJuJ*tZm٪c9ڰc򔜵^ڷXlQFh!q܇ .'+n@'3ĺrb[}kyC#l>3!-W}/Ĕ؎E.3cNSYD+xM+4ʴ~ڄCQ37g0LR囸T\/v!K;rDuk#m֪\L6ŝ.Î'\XhcûLvu~(v&QyȊ~"59H.~|:,G-P}?bd !vV(ם>7;' 1ȪlLUt_YT1v$ hm@A@?g  ~'@\]Z/%ox!p;1%j9$(AwxP1&T4q+[x1}{ztt31&x ,mj&G/S[y:)qSu5Y]["k$fp1ps*w E[ѬHzw/T>fYe.^];fW!,WMYH.l0-CL!F5Tf^>TBscfS ͼVCE?pի>xF66>tXgP` %UvC^7٫*D}P(XW|\oZJL^cqPd;q3Ô2L|:Teܾ%tr˳ىFK>7gZ0ԄLOS.EA죽h|d4/ˁ ,Oѐ߂4'2ՓD񲮁NkojqK["|?f(J Eqo尪VEz Ge.J7JbOt3!"EźJ4x[mQ|j%!-|>b0PWݳj+8e' wقm= A3V_V93\)Zg?Q"T.Q=^Ӥ:m,ˢ&R} { QC O5!LXڼ`\"-iJbRX(^~`AXMe/{2TƪSrkw`K;$ \.m֋[ !<D`:{${ W3R*FjGg_8r0O%>W߷gfiр@ -rpfKԲw[E-;Z0 Ӏ%dO Try;Q ѻvj8Ne2.~z64EQoST4'5Hb^ wKx=.b1-B$tvdB=3ҖoH |d>]b+ ]VB/}S+51u Ub_ћrELcugm=~.OÈ5WM#wtf~% dëW*?A2&lW1(KiF8npVvt>p1IrAJ5`S/8\V}h4"[j&%bz'DwPױ=`I$k&PH7ߋּ5kh&\Vq^μ_%x2R=Q9(a-@ RazC\rF&]#AjƠ 7O-G S(7` ?#J,N9c*2]ry6[)V|"wUk,(ջq6N?c0^4O?A9`BʒI[/qi\ Nۜ#@>龷^#U&{76tckEVгh֠bHKc>1{ؠ3Ƽ}&X"௨kj.d_eg4ȿqM6n6qjf=: 8ʡv$opSadM3Z{~AHVa5*1$i@K͋RfވdyZo€&Z`YKHWOlLJνmQ:2RI#|M-V3SXM(=ShlSYyH(k٪ZJwH2y] ^Fr1#ص*c^OP(pcxOWW0+;%/~VHsXka7rW<kOA zp fˊD<<3Dïv-~avw|g&\JR=S Я(xIXIuN(+5$H;^Z9F'^?k@EFm}Z7Rt=(v2Qbe/Xspi{DQִHYyJ|Y)䮫&8acqM:͹uڛ" "P {:)%jKp6DsTYEˆ)ʺ!_U7= };@g N<'[5} q/ )Z sNIy*+Y ~$ ͽ HjcuRYw:Yex{|"w[#qP ^RcI[f<ʎ!_eOtSަ!(i'5(@W$A kRԊ9tשɘ(K4wVJ2]k,7&w;UM/߳p g_l7@ kRF]! jqrU܌Vᣭ _!1y%oHa+~`;Z ii|"i]{aM/ʣk)ĝ7|eӕ@qst}@h_W* 9'J)RcS4M-˿}39N?RYqz?4w2eF܋̎ʡ%J4R ^F^t݀Ea[>Z>fD% ÇC&_&Kkn!Xs: >qmFzIQ7ZaϴH9zuS`Ŵ1a` FOvS&ݪ)9xog>+59H*|DPVq3v1\ T, 2 aP&1pC0?k0y`Tc*C kWY16K^i!-]CQPTIw~؋0,2?~z{z))?g佖ܓȂ?|{|EQd5 4̎vUܭ9C*7! kR}a|2zMrPUw( !1Z440}+.:xb$2\n@[78h1vϘ˽~ˍ~x] Q(v3B?4Ee}C|kN1E<>M_& E ɵ;e+uRESfQq3^/ϑcdbDif妳7_6].-- &^|'g6yvMvEOEZV]C|ZT~Mڹ]^KJy(ϻ]qcz}S?5JvKJ]VӮ4Ì-3 ?`2|ik-j9aĒPnjf3G?t K=`K9N-h C f@km aTq4hgj3VRCQ"q[ߝz:L^ t*G}Y}vߣ!'4Poۺh"Voit(OTzb}G4YZ4*@ oj_3ʀ((MP;[G4Nw+TP'Ā> 3"7G3} V5! lF .ácM)&Oe* K4(qף3%־(őᰛ*ds&˶.W+1g/G++ ey*vlx.<1PW'u|J{Kr(dqXǃh7/ki&=3*w-#^'k,1m3*jb_w&dٿw`"9\p'nonp%*\nfߡYKF gB&P(kОH KQ]u&]* b!A^A^p+a:,Mͧ0Hg׈;֨}^Ke3`Jrݧ.xR,tZp;n J(0 S~t2kiN?B2:s`X۹"n/)H*a}ZY[k۸9HSF#oe؞"|;,u&#zO_;H AiTIWXg#|^C E=0<ݲe>~T/YR5wr(ڨ“:=nԔrϳ=6y65sȏAiVS~j'tHuM8l<74!GLNa|ZScWu(|Q/7:~wT*@ڢK^r ݮbZð&sf1 i\5xeP("Ok լ`CHTxt<Ԝ"J9͙jEbj_PPUsGوQ䁘4AYȵ\Q_@D!!-Bn=nB]D9F+3s=;tꮻ\OC?P($S4vם m2‹qp1Mx8:eD@_4gD0>=^vo[yP0<>ӋoGG,nȕJ V^ n&(F*W3<;ӑ[D2Foij+/-\'mIyaZq$ԣ?K<!zeЁ:)Ѩ5&j?Frx{Y1 |WMT>`9!2Ge+:nE6A@g<u8<7iUqmCb\ nVÇ"3) y ?ega|T ,^w D1|Չ@qg4")m|O=dh62jĤ{2 C{H\?y9 qgr_!yvdqDYSGNX]n:GPH e |܇J||P2 G191>rsK\0$ޘ#M9۞ே.E Usy^ؾw 슲^VdR1͗UeaeR%y Fծ(A[[3sk$ $ؔ/#O6xO"ìj.2//{#L]VB څ`( e~z vU d"-u 1Q֙JG1+RW!m30lbLwsߕpe6ےBiw  V!ZspĬ[dGOsk֏ou[9 h8ْ=UUᚪ @yc{+ghFL72_uKU&'?$܆A=n/217Hj5BM-a \,dP`/?aݠ8$V'isLÀӟW: M8w}cl 7cf;I nCu+^Wk4 <27w7)EZΕ^E,tw~WBaIɀtaF.`[SMVTV_ǧFe]f0ΤQEEF = Q~R~IPY.]SgZS"S4rd1akR3PJ';SvL'AYR仃qE9?NmiW ݆^; j{#P t"9MG%bW|U|}5Yf$7V3൨H.f#BKa,vzgaeŕ=HFK.=2j33:\|;?ז"IPJƃo͕I!F9PFf"2)#.(uEܨ`* ܇slR=ִZP,N5Lk@#!SĪ 'wb¥No!7g 0L5 r_L>S=-enLk^e,fX.D f, VwY7+I94B&<lOGu:.l4dn*|jy:Ь D"IgB3@/<ݳVwe PD>[Ϡ?S}*MhdVg(UwL]S/B kD c.gVڌExyD,nŌK̾׷ui%)4jNR)ވ@a8PlQ HɘIk쁦D^h=!wMYdjOVR d,z:y )QuyҀ#~TxQ.=7kvwz_|ߺ˯ +xoϬT >|4-qB~r[6NGhG)XX';bd DWWq R=Aʙl :ҝe'9-z-MRڤՍ!*aΩF{U\otIѤ/ J%Cb i'El®axx$k~?^}溲-4x<"yGg ӘpkWc"8mR\.66wv(+gty'Q$4O 4▗<4-b[[ g:lK +^)F3҈gC=P|F 9c^][6jMrD/hQ8CkLc"5_C22'H۔ʓpu3:>YTq;%ClF5? '.ý[4׉]z:iw.%5R2Uq'Yzsxw_WǢJgsuP/L)y}u`3K~QSLZs mk&zAy ûȹ;^$MlY^dn5<_r/ʡc',bfůẒJQ`2Y hߏ2&m bZYvp2'ƦAbj6Q5Ok+ giJ l3(k[ɯ~m]i+W:"$b,'A{jKK(6n("a[L2|`uY\F^q#m9IE=az\رVuQu/C+MoR1KV!!,_=١r뽧v5S ۫U bwK82#x#A߄}}lם3Wr|P[\ϟzqpX#~OȒ)1!1[QR>jГY!ܖfsW/06a^l`P*aO*5Z=Mfo4کU{@yT˙h,wB>4/c)R|F G[*fYXꟍ1:) ϔ׍9$q"dSYg 4ّzJJU}kx.h+G~}FZOp،(#cˈR"keN6J;y,$r4 $hSyu'>袮D+hqEa+Wr]My8+"Fo _U+ٰ]M-}\xLA*³!pW,275f|y046U6Rj¾Fu1 G(ƾ |vn[A]|~*HP Ӥf<8U,.T.C#F{4Y:j +j`Y/ 'sU.xEGls:~1*b\0!aJE[U%8G!>1_^Eq]XҠR&-uR=MZPׇ8ފw (7!;0VTT0 !䗞ԃ|0:.ێY\C:3n${Rj!!#8?|q|Ü{w1g-?nl2 R2(j]:udF|9%Dv {UߓPR߆^PQrհc3뻾t?/  CiCUZ]rY3.ʀ5-:eДD i皿uZf&B'3P~AKj5OnTjN.Fp[fCa7۵D`r$ c3w#%327Vc \Z~ -գlU;[, V;"?b8<-f l >l%uŘ )"W+=6HYBLj<[ru" ?4 .uV&9,Agy.E2(7OU}%c2⌍LjLvΐ.TBFlwZCU:ȯ-21 ]LAqo5  ['JKRCF ݸ0%h?!]Q￁,|^=%xxv00B1L$Fef* jP6Kg^<~t.'kҩ,[4-,dӐMqM']NxLXA(Ѐj"`|8蹛S&E?-/.ږ }@1E|\~4?>ht*|-4_PQg@76 :P>L1~ϔr$,]$2)[RrTϴjj+Wr:D/$Bؐx8lT9'j,-WFKTqްsώݮ*B;mLA[W[7[4%H8!%WH{9ԉVx2,ԝ\[(ιXތnyќxp LTɝEb~Ik#r"Vf;$R9i/xٿ^Cٵ Jc%<69u!lE OTMNcPߵ&ՉթPe-v{4Lhuܱ4{ ?mp{]PC Άw 5F鮮.;|#Nٶ7ݸ,TRu?$* ]j1A%0 5%+&k\mf?1D -BdNn.Z'lV}*zx#%zM5r¥/oE%ߔ䣡/0)TvU'n{1I|ofo)z]0&Wyi>9ڋzl"jf+t:;r<\I^|@ӂ};tlvDUNxz[P1AVdVYlÜ C#vټN" 6t  MwLvN@|܊*KhG8Qoqx$ . @NT_C.^rGNUoAhx68l2ϜЭ)JLņU{Ҙ}N%~ EusɘYXʙyQ$[+LkK9c$ahfJ]pİ((Ƕ]&;w}FW؁`#kŸy/S*X| yGìgQ$6sK Ͽһ,} n+"B'%C՝ΖZJy VIBLi`OAUgahʨh=eq՛$N>Ż!u#hs"hhFͭF՞w ӏwnLZϱBϊ3#P|"`|[#>hBO/hVxZuG=>/ąM;8NVhaY$ %c[F4~}H/ MAp.RXҪCʦjbmF,9Fqwӯʐ`{g ī:S,-UG뢃DՕ3I7?#RfՖ$h{~FSÅdOjǷ -\Jn!3cYGi{Fd/<[>dIPhv7Ƞr Z2fub\DAMB|.cýC  l|cZHE춾\?{u@$x9[V1[ݕ>}@-/z$-̄1sȬނ^TWn,72oz 7ON>3;DwS^B2%bй+c(CeuW=] H#G[hO;)Л sxcA(<?%jEd7%A\DVmBk6)l:Rs@dZm6%PK28'(+@ EVe_/|RG;e[avz H54ޙÁZJ02.wfYyc?I jGg4a uzNFBb*NMr['1 E^z]NNyixJuYb\DV.*^p %溘p{!tGuW';D=6-,)[u2A3SAZ4P_ XOŘ6gfZomCS u[NRGvIx'GE]TO ` &qVSԫ\D e>]#+i?O i8l;R-Sh&c8]0%7_dzf!ا=cH6FX,!)`>/9Jk=&pl\GSC*f1u ^:mx_"f)A+A,&,@Aztd*kwLGJKRRm2Sz{@kNgOd0(exyŸxC\''Hdr1X*mAT_a!恤N:R+}b7$Ocծq̪no|!Pj#("dUYDNJ/-fFqIC67jŊ4b%E\CZOGGo|>b91j#e=q^A@fxsh߇{vҸ0 *acioNƬQsen$:sL2.j؇UaAlm꣎WIɂ*cɭy_\,r )V:|80;s-OЭõ{E%PБ;nt40@`t`Emi)ܔAytJ\ƼEZ!0t|_' vUai(ej|bY|gpxwDxV~=4`lB]Gw墁gg&4N('P ^%; Yd'OߩVA 4hM6sUTᶁ$a(J~*Kcu&SGc_dq_pDozYۻX& VzI׫L Lؑ{Qsr<7smgrl] Y[KL&ih'?k˭=jIa:{($ QėCFF t}f8*UYc$IOqeGɴaEA\9rE_ d\;L&B{S*'+'рyg!n|;ooQ熜j>^H"Vl"o1=滷Lj_;F 5UϭoمYŝwf8|;GW`K*>CVr4ߨ]r5_>p%u} 5\Ԭ-6c y Q7@0LNu*&o74g/58:_i3B5ȲF\ܝK@Da3?֩MHq1t,j:YDٕ+ē?%$ǜ/8ۥ,ʂR-n)m3.O8KmD['ʪVygU3ɇLN#'tޭ"v̉@#]%cs~@qF/g,f?g*rG 0qV8.ܷ\JATޓo=4LO X <ࡘ+㲸_Z؜=f(U6n 0pl"d跲evI=E%Fj氣dm;Q Qf4/c0iQ|$d-k@v~ >l" ::0P ȥQG4мPoJ6B&>vԭf+Z*фp@Q[}w5uB29 掟~*{4MF/C>; (R*g3hӆ2J>rw¡OhJa)^1H+)瞇pa6|dni%Ztr: C>7g\gla,!J%Qrv'Zwn{5pM1 bIPI Eػv:.V$H,K~abJ|0"ic^k4+9Bʩ/efvۋ"}'`KMs}F6ގdzFٌA)΀txW>ȔqPF\ ǨG"4g|0CWDjaRwNR1Є?=o<>X"5>8Z4c۟ehy3zE,RbWA#rݡJsS;cGCwGy( eGȢSrִM )10p#T^:ҽ!?c0qeB+ͬ<%U$ViL\t*`0ԯ2c ǚTEb/vJ(#P!H7&sqS\lHz ^B]jʭr#cPTKilY ̈…ˉ:ɤs6Mp7 |[µqND8Ff8#Liv1L@RJk̠^>Țv[loE/i^b*Dz >w|t=W"ؐC,+.6 NL,hzCHzt?w#ȕ< ӜU7 G]fp!_mE۞pEYT0BV>ŒabrAF:$wس<,ZB!1,2N)X ;|hGo3Ozѳ6PK(ۗ.$<9kK=MI~xJ#g -GO!A@Ap''%}wʣ@ߨv9K2~/HL܁cUMM|g#uzNf$,;MsOI9EJ|3mD2Ʌ?$5 /ROFDa5?MlZh0RwGEU Le")4",foυPH:1đ,*hRsW?O!P4䵞I}.,E95vGjZ^f]]-I?ژ b]նj8,Tzq2icx1ƴDEdMP;8tVE/'T1p-M2ƞrD/}:sbT ǀ V .)ػcSJԳ+}He-SjaR6N^3Ai$!r[C N.ڬVQ\̳3uI]!a ŠOUi=pO葋,58Omm`N/͑&Hc/KSH_h) fћaRq7#Kc,ZSyZ1sZk͍,'GAB mv6KXuZBR $i$ j+O a[r"8|L 5nMdW⽯=OFvSry)*P otP/t.;4.n:X]?xؿ؉B3?\.bud3L`̦)25tٳyHX{&k.tAtE&){GĊU?A*ֵrBICi!a <¿HyH9'nJ 4|Eď%x㺟!%~ue߉!\]f_]5p+aFlCxVG ԳK R jN $QgL!G^ԅYoҸ^)sS}}#ݗIEcXEzna4@i6]4 c Ѹʂ ?TW/1,Ajh ZLwe-b ,&z(2VGj] YYw~ą#K-lQ;ȾF,2~Q tPM{9{dfn2-2>hh}o|6VQ+D=u"1N `I`rja׫'>5"9 :Ŗ/XعۙA+ `ÐdsdM'uRdաppsS(rjTīhMl=rJĵa?H#cDm'd Gׯ1Q:ѷ#̀hH$.&.]mpEsG:p/a>U%)܍HZ"7'K)#PGrˏ[{|lY-+A4dF:qL#*F/?ヾg  `T2)k#oq3G_w\W hEKxvM[OB(Ij?3-wߧY^1/k;LqW\k,WyNokG CFBhQcoGdgb!8'Q/QW7I0rk?.h]=(WT-n$ sgʌ[{*5 >:V9&uC&M\J}&<8rjK$& /W}RxLEtCa=1k$[b{5R%hPچDywvڣ &ڿ&%nޒzI?L_?PϪ`nxNY|~j?q)uR?D-M'Sіϫ;7< ճGp1/r~DYqEYz!(u۽y2kݼG{J%b#a.F"{ALE-*5s`$ma5z'df A%jf`O]a/nLAu!z=aD]] m`yPOK,yGOsC)ѿ.zYF15І X>0MYOY ?*AEy$cXZA3!׶e]ppۮ"\HĽ|{P t~ޤ U_m %@=Y)|8C2`WCD:H!<+.ZXq97qoC4CrRlU2FT c731%B$6gyJմr\s&W=k(+XgP[@-Au6RqjM;lIl1(PTTD{qhVtsGgnC@E8a+C(@ΩmD 7RK`DŽO(M OvFur/}&+"DA^Mi̳O6[W 4Ը3g.~_}Bmp0&)G Nʻɣ U;T׎|_"rY6F& VUt.&!(auhb*K8i"73;)%AtX~. `eAA ?#0Um# %MنM^vTp`nwfG2Ҵ>0eOWc+ ϰ"'(}3% bysҧ>e<ŠވZ ~,tHM\Jn*ɾEzᔘrW=5{vUelH9z+8oKl"ؚ^齄BIǶ6E$;%_㌴Kt~y:}9TvЌ䇊.deH|28~}m<MA[ngWdI ?Uw M29t۠ k孠Gߵ"(ҸQ_I2h LY%..#e Q5>3! u&(H(6J RG5ݏwVvjkuw&MtRli>$؅` ԍqFcɊjI~6!!sV9>D(փl\߱92J!U1j-QaQɡL)5KCո?%~摚SH01UH9Ə?=PrFcipn<}j 3De,ƅ^fOL5:S1j-N"w wTBbMQ](1_ө&:+*۪M+*iL <8=,k0q']I Ɛ)6-VV~Ȩ~VдŐYlWn x3AdpLwpk$sba8_Á  [ɋYy+f:DĝK CP=@Q7Y Dy5v4Vq43OMp98^r.>r;ݪF5m)k۾9,9:z+C̑H8Y{gNp I#/Uy&O2Ğo(aj͠N.AMd iUYW@}?-2k5bu?" lN$'@[TbgւZ?|^b²/yaɇ"Ït"L`! dMH> Q[}}c9<3JR@{stXfG_Ni=ޡn\bvl=oi*aϰz3z~D$nq!/UL~S @s4bagkx\gsB )VԵ+k|Qě^J6ɼkAkmgnS /Cңa1+1qy+Ģy{MSt(!D:9 H ^"b&~*9', G]G(%K%ֹ! Qpk0ܰՌTMTP1ƨ~zKұ*m2zʦ1МT@j-5L MP:I trn37Pւ<%;3gv[\ %wSֈW'aK w+M`K]FT*gn;] S`^w, V !#\ID𠴎x3ьrzIK؅#Pq?5<(5bwXu%jrjzOIb; *.s)r)o5=iOq;s  ۩Þ%vG:AnL?LIUI/g1FARNpGÐ~miYŭm7if u*~69#oPK/.UHj\3-yZYp?-![a/J oJdj9G36^o/9;3a瘄(TO1[ZW҉e} =ޣ:Üi'hd؝k(ʹUiyi'Svbs[y(!I`i&FA%q٬Xcİu.,U=P&rIX