pacemaker-1.1.16-4.9.1>t  DH_p\}/=„$ph{nA;-YRC{I+pgmo>EժՊеbv/?`$OQܯ /up,lcK?d   M )D_el | 00 0 P0 0 @0 x08020*L0 D44!l4!!!("8";9&;:9;==>E?M@UF]Gp0H00I0X Y,\L0] 0^Zbcwd eflu(0vw0x|0y<|z,<Z`py|Cpacemaker1.1.164.9.1Scalable High-Availability cluster resource managerPacemaker is an advanced, scalable High-Availability cluster resource manager. It supports more than 16 node clusters with significant capabilities for managing resources and dependencies. It will run scripts at initialization, when machines go up or down, when related resources fail and can be configured to periodically check resource health.\Sbuild36openSUSE Leap 42.3openSUSEGPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-laterhttp://bugs.opensuse.orgProductivity/Clustering/HAhttp://www.clusterlabs.orglinuxx86_64 test -n "$FIRST_ARG" || FIRST_ARG="$1" # disable migration if initial install under systemd [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$FIRST_ARG" -eq 1 ]; then for service in pacemaker.service ; do sysv_service="${service%.*}" touch "/var/lib/systemd/migrated/$sysv_service" || : done else for service in pacemaker.service ; do # The tag file might have been left by a preceding # update (see bsc#1059627) rm -f "/run/rpm-pacemaker-update-$service-new-in-upgrade" if [ ! -e "/usr/lib/systemd/system/$service" ]; then touch "/run/rpm-pacemaker-update-$service-new-in-upgrade" fi done for service in pacemaker.service ; do sysv_service="${service%.*}" if [ -e /var/lib/systemd/migrated/$sysv_service ]; then continue fi if [ ! -x /usr/sbin/systemd-sysv-convert ]; then continue fi /usr/sbin/systemd-sysv-convert --save $sysv_service || : done fi test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" -a -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -eq 1 ]; then if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl preset pacemaker.service || : fi elif [ "$FIRST_ARG" -gt 1 ]; then for service in pacemaker.service ; do if [ ! -e "/run/rpm-pacemaker-update-$service-new-in-upgrade" ]; then continue fi rm -f "/run/rpm-pacemaker-update-$service-new-in-upgrade" if [ ! -x /usr/bin/systemctl ]; then continue fi /usr/bin/systemctl preset "$service" || : done for service in pacemaker.service ; do sysv_service=${service%.*} if [ -e /var/lib/systemd/migrated/$sysv_service ]; then continue fi if [ ! -x /usr/sbin/systemd-sysv-convert ]; then continue fi /usr/sbin/systemd-sysv-convert --apply $sysv_service || : touch /var/lib/systemd/migrated/$sysv_service || : done fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable pacemaker.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop pacemaker.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart pacemaker.service ) || : fi else # package uninstall for service in pacemaker.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi fi6 *~8`;VHP@+y`0 _!b0% YBNFgB_y]NAA큤A큤A큤A큤AA\\\\\\\\\\\\\\\\\ \\ \\ \2X4X4\\\\\\\\\\\\\\\\\\\\\\\\53da9a6f1967b2a6b61e8ef82d0e7a996e3c91f94a43259c2f834cd0d4ad9f6b2e3d13fb104b30208011bd04e6deedd6f2956a5a33b37a19ffaabaf077fe6c49d2167aad8d9519016d40bf369085b76d89b2df74b29babafd312acd1abcdbdc4568c430dfc6c90f46ad145cb1b277f85c46bb014fbcaa21577789910bce6a60841048f3c3009e32858e3592bff434cfd367a40232f42f2bb43e60ccf9b3a7ba414d5b55e4a3e606c9aa34b3089801b0ebb70de378d79dc69c10b07fdd86f84513ac64fe408d8904053bb2bf1697f1e80db83c6ade27d2804406890688d7b88f9f0401528aaa0a18f81feb568fcd8d36886ef5f903d6afb4ea7d5ba0d7a08f27ae990ad04cc7c914461658f33c21957b06c8cb262ec57a02871e46cbcda25954519a64afd3a35d044a80579d7aafc30ff3e97641819b8af4e180e6eec618ec12048b99cca1e5535b23a7eae1b8a9918d5ad448ef81562a78cd435126807af9b9cbdb687a30dcaef931b7feb4d435a3bc0e277f2eefa979e093628e4fb368f5044b234ee4d69f5fce4486a80fdaf4a4263243b725d71bb5df4a1e5920b344b86ad6084482a701110b5da4db5ec510a385617cd393336d109296c0aa4a0a091eb99662c333de51b4d07474eb6f5c9b628d716a956934b81b6de8c558aa656512906620c4e9d424a2b50b3d612e9348af309fb5a3d787d5a06eb20efeaf7ad78ca2795e0d1c075079afcaa873ba4b15d8f4774b2d94429641385d0cf47da2a9612eb5f9c0f0f9d9e2581e5338b3d9e3ef8b9ebc739739016ee646b5c7ef6d25205890ad369f8a36975d11b5c1dc5a2cc84d98a93ff2fa05453a5731a4171d437a992cf752b66db6eea52be41dffd6f1200f0b796df8dd2c9dff5c37a03f16fbc520bservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroothaclusterhaclusterrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroothaclienthaclientpacemaker-1.1.16-4.9.1.src.rpmpacemakerpacemaker(x86-64)pacemaker-ticket-support@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/perlcorosynclibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(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)libcfg.so.6()(64bit)libcfg.so.6(COROSYNC_CFG_0.82)(64bit)libcib.so.4()(64bit)libcmap.so.4()(64bit)libcmap.so.4(COROSYNC_CMAP_1.0)(64bit)libcorosync_common.so.4()(64bit)libcpg.so.4()(64bit)libcpg.so.4(COROSYNC_CPG_1.0)(64bit)libcrmcluster.so.4()(64bit)libcrmcommon.so.3()(64bit)libcrmservice.so.3()(64bit)libglib-2.0.so.0()(64bit)libgnutls.so.28()(64bit)libgnutls.so.28(GNUTLS_1_4)(64bit)liblrmd.so.1()(64bit)libpacemaker3libpam.so.0()(64bit)libpam.so.0(LIBPAM_1.0)(64bit)libpe_rules.so.2()(64bit)libpe_status.so.10()(64bit)libpengine.so.10()(64bit)libqblibqb.so.0()(64bit)libquorum.so.5()(64bit)libquorum.so.5(COROSYNC_QUORUM_1.0)(64bit)libstonithd.so.2()(64bit)libtransitioner.so.2()(64bit)pacemaker-clipsmiscpythonresource-agentsrpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)systemdsystemdsystemdsystemdrpmlib(PayloadIsLzma)2.0.01.1.16-4.9.10.13.01.1.16-4.9.12.63.0.4-14.0-14.4.6-1heartbeatlibheartbeat23.03.0.04.11.2\\|\@\R@\I\S9XS5d@S,)S!S!SnSnSnSnS?S?S@R@RRR@R@RURRR2@RΏ@RSRjR0@R;RRRRR@Ru@RfhRfhR_@R^RM\@RH@RB@RB@RA~R8D@R/ R' R$}RQQdQQޞ@QLQLQ@QcQ@QQ@QQ@@Q@Q@Q@QQ@QQU@Qo@Qo@QnQ]k@QYvQYvQU@QU@QT0QR@QR@QP<@Q?Q=@Q9Q0@P@OF@O.@OOO@OOtNOpZ@OoOoOm@Ohq@O_6ObO N2NNx@N;@MRMQ0@LLi(@L_L[@LZLPLF@L=L3LL0K@K;@K@K@K@KKKՀ@KыKK @KK9@K9@KK@K@K@Kg@K!@KK8@K8@K@KKO@K@KK@KqK}+K}+KqN@KoKY@KKK K?J@JJu@J@J@Jv@JeJ[!JT@JT@J/@I@IIд@IÅ@I?@I?@IV@IIIYan Gao Yan Gao Yan Gao aburlakov@suse.comygao@suse.comygao@suse.comaburlakov@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comaburlakov@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comrbrown@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comdimstar@opensuse.orgygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comtchvatal@suse.comygao@suse.comtchvatal@suse.comtchvatal@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comrguenther@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comdimstar@opensuse.orgygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comjsegitz@novell.comygao@suse.comro@suse.deygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comschwab@suse.deygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comlmb@suse.comlmb@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comlmb@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comcoolo@suse.comaj@suse.deygao@suse.combadshah400@gmail.comygao@suse.comygao@suse.comygao@suse.comlmb@novell.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comygao@suse.comtserong@suse.comtserong@suse.comcoolo@suse.comtserong@suse.comtserong@novell.comtserong@novell.comtserong@novell.commeissner@suse.delmb@novell.comlmb@novell.comlmb@novell.comtserong@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comtserong@novell.comtserong@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comygao@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comdmuhamedagic@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.com"lmb@novell.com""lmb@novell.com""lmb@novell.com""lmb@novell.com""lmb@novell.com"abeekhof@suse.delmb@novell.comlmb@novell.comlmb@novell.comlmb@novell.comlmb@suse.delmb@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.delmb@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.deabeekhof@suse.de- libcrmcluster: avoid use-of-NULL when searching for remote node (bsc#1128772) * bsc#1128772-0001-Fix-libcrmcluster-avoid-use-of-NULL-when-searching-f.patch- crmd: delete resource from lrmd when appropriate (bsc#1117381) * bsc#1117381-0001-High-crmd-delete-resource-from-lrmd-when-appropriate.patch- scheduler: cl#5301 - respect order constraints when relevant resources are being probed (bsc#1117934, bsc#1128374) * bsc#1117934-0001-Fix-scheduler-cl-5301-respect-order-constraints-when-1.1.patch * bsc#1117934-0002-Test-scheduler-cl-5301-respect-order-constraints-whe-1.1.patch * bsc#1117934-0003-Test-scheduler-cl-5301-respect-order-constraints-whe-1.1.patch- CTS: don't require nodes to be specified if only listing tests (bsc#1114840) * bsc#1114840-0001-Test-CTS-don-t-require-nodes-to-be-specified-if-only-1.1.patch- cts: temporarily disable any enabled cluster serivces when running remote tests * 0002-Test-cts-temporarily-disable-any-enabled-cluster-ser-1.1.patch - cts: service counts as enabled only if it's explicitly enabled * 0001-Test-cts-service-counts-as-enabled-only-if-it-s-expl-1.1.patch- cts-exec: still run the tests for the other resource classes even without python systemd bindings (bsc#1121808) * bsc#1121808-0001-Test-cts-exec-still-run-the-tests-for-the-other-reso-1.1.patch- Test: cts: use bash in the DummySD.service file * 0001-Test-cts-use-bash-in-the-DummySD.service-file.patch- cts: set default number of iterations to 1 * 0001-Test-cts-set-default-number-of-iterations-to-1.patch - CTS: ignore monitor failures when testing remote node fencing * 0002-Test-CTS-ignore-monitor-failures-when-testing-remote.patch - CTS: lower remote connection failure detection time * 0001-Test-CTS-lower-remote-connection-failure-detection-t.patch - cts: clear constraints on cluster nodes (bsc#1121272) * bsc#1121272-0003-Test-cts-clear-constraints-on-cluster-nodes.patch - cts: resume any possibly frozen pacemaker_remoted when cleaning up the test (bsc#1121272) * bsc#1121272-0002-Test-cts-resume-any-possibly-frozen-pacemaker_remote.patch - cts: simulate failure of pacemaker_remoted by freezing it with SIGSTOP (bsc#1121272) * bsc#1121272-0001-Test-cts-simulate-failure-of-pacemaker_remoted-by-fr.patch- fenced: Handle fencing requested with nodeid by utilizing the membership cache of known nodes (bsc#1094208, bsc#1107270, bsc#974108) * bsc#1094208-0002-Refactor-fenced-Handle-fencing-requested-with-nodeid.patch - controld: able to manually confirm unseen nodes are down (bsc#1094208, bsc#1107270) * bsc#1094208-0001-Fix-controld-able-to-manually-confirm-unseen-nodes-a.patch- RPM: don't package servicelog-related binaries- spec: remove reference to long-gone file - spec: mark -doc packages as noarch - spec: fix malformed conditional macros for systemd-less cases- spec: require corosync >= 2.0.0 - Pacemaker Explained: "symmetrical" defaults to "false" for serialize orders (bsc#1085515) * bsc#1085515-pacemaker-Pacemaker-Explained-symmetrical-defaults-to-false-for-serialize-orders.patch - pengine: "symmetrical" defaults to "false" for serialize orders (bsc#1085515) * bsc#1085515-pacemaker-pengine-symmetrical-defaults-to-false-for-serialize-orders.patch - pengine: Avoid potential use-of-NULL in unpack_simple_rsc_order() (bsc#1085515) * bsc#1085515-pacemaker-pengine-Avoid-potential-use-of-NULL-in-unpack_simple_rsc_order.patch- pengine: fix swapped warning message arguments leading to segfault (bsc#1090538) * bug-1090538_pacemaker-pengine-fix-swapped-warning-message-arguments-l.patch- spec: Make sure shadow package is installed before adding user and group- systemd: update documentation link in unit file * pacemaker-systemd-update-documentation-link-in-unit-file.patch- spec: make shadow dependency explicit - spec: drop requirements for bison and flex- crmd,liblrmd,libcrmcommon: improve remote node disconnection logs * pacemaker-crmd-liblrmd-libcrmcommon-improve-remote-node-disconnection-logs.patch - libcrmcommon: add function to get text equivalent of client type * pacemaker-libcrmcommon-add-function-to-get-text-equivalent-of-client-type.patch - crmd: always write faked failures to CIB whenever possible * pacemaker-crmd-always-write-faked-failures-to-CIB-whenever-possible.patch - liblrmd: add function to create resource info structure * pacemaker-liblrmd-add-function-to-create-resource-info-structure.patch - crmd: functionize setting fake operation status * pacemaker-crmd-functionize-setting-fake-operation-status.patch - crmd: always assert when operation can't be created * pacemaker-crmd-always-assert-when-operation-cant-be-created.patch - crmd: avoid core dump if remote connection doesn't exist * pacemaker-crmd-avoid-core-dump-if-remote-connection-doesnt-exist.patch - crmd: improve lrmd failure handling * pacemaker-crmd-improve-lrmd-failure-handling.patch - crmd: return rich error codes from get_lrm_resource() * pacemaker-crmd-return-rich-error-codes-from-get_lrm_resource.patch - crmd: match only executed down events * pacemaker-crmd-match-only-executed-down-events.patch - crmd: functionize pieces of do_lrm_invoke() * pacemaker-crmd-functionize-pieces-of-do_lrm_invoke.patch - crmd: don't need return value from process_graph_event() * pacemaker-crmd-dont-need-return-value-from-process_graph_event.patch - crmd: don't abort for v2 diff LRM refresh if actions pending * pacemaker-crmd-dont-abort-for-v2-diff-LRM-refresh-if-actions-pending.patch - crmd: validate CIB diffs better * pacemaker-crmd-validate-CIB-diffs-better.patch- libcrmcommon: avoid memory leak when schema transform not found * pacemaker-libcrmcommon-avoid-memory-leak-when-schema-transform-not-found.patch - tools: warn if crm_resource --wait called in mixed-version cluster * pacemaker-tools-warn-if-crm_resource---wait-called-in-mixed-version-cluster.patch - Install /etc/pacemaker directory for storing authkey file (bsc#1082883) * bug-1082883_pacemaker-Install-etcpacemaker-directory-for-storing-authkey-file.patch- crmd: log transition ID when aborting * pacemaker-crmd-log-transition-ID-when-aborting.patch - crmd: always log unmatched down events at least at debug level * pacemaker-crmd-always-log-unmatched-down-events-at-least-at-debug-level.patch - tools: already latest schema is not failure for cibadmin --upgrade * pacemaker-tools-already-latest-schema-is-not-failure-for-cibadmin-upgrade.patch - spec: add gcc to BuildRequires - attrd: Synchronize attributes held only on own node. * pacemaker-attrd-Synchronize-attributes-held-only-on-own-node.patch- cts-cli: update regression test with correct output * pacemaker-cts-cli-update-regression-test-with-correct-output.patch - libcrmcommon: use /tmp when creating temporary XML file * pacemaker-libcrmcommon-use-tmp-when-creating-temporary-XML-file.patch- attrd,pacemakerd,libcrmcommon: make "Exiting" last message * pacemaker-attrd-pacemakerd-libcrmcommon-make-Exiting-last-message.patch- libcrmservice,pacemakerd: improve privilege dropping * pacemaker-libcrmservice-pacemakerd-improve-privilege-dropping.patch- crmd: quorum gain should always cause new transition * pacemaker-crmd-quorum-gain-should-always-cause-new-transition.patch - Bug rhbz#1519812 - Prevent notify actions from causing --wait to hang * pacemaker-rhbz#1519812-Prevent-notify-actions-from-causing---wait-to-hang.patch - PE: add tests for recovery after failed demote * pacemaker-PE-add-tests-for-recovery-after-failed-demote.patch - libpe_status: recover after failed demote when appropriate * pacemaker-libpe_status-recover-after-failed-demote-when-appropriate.patch- tools: improve help text * pacemaker-tools-improve-help-text.patch- libcluster,libcrmcommon: improve BZ2 error messages * pacemaker-libcluster-libcrmcommon-improve-BZ2-error-messages.patch - libcrmcommon,tools: improve XML write error handling * pacemaker-libcrmcommon-tools-improve-XML-write-error-handling.patch- cts: Operate pacemaker service on startup to prevent triggering StopWhenUnneeded of corosync service * pacemaker-cts-StartCmd.patch- tools: improve crm_standby option handling * pacemaker-tools-improve-crm_standby-option-handling.patch - tools: improve crm_standby help and error messages * pacemaker-tools-improve-crm_standby-help-and-error-messages.patch - tools: improve crm_master option handling * pacemaker-tools-improve-crm_master-option-handling.patch - tools: improve crm_master help and error messages * pacemaker-tools-improve-crm_master-help-and-error-messages.patch - tools: avoid using deprecated options * pacemaker-tools-avoid-using-deprecated-options.patch- libcrmcluster: use crm_strdup_printf() instead of calloc() * pacemaker-libcrmcluster-crm_strdup_printf-instead-of-calloc.patch - attrd: avoid small memory leak at start-up * pacemaker-attrd-memory-leak-at-start-up.patch - systemd unit files: restore DBus dependency * pacemaker-systemd-unit-files-restore-DBus-dependency.patch - libcrmservice: avoid memory leak on DBus error * pacemaker-libcrmservice-memory-leak-on-DBus-error.patch - pengine: validate more function arguments * pacemaker-pengine-validate-function-arguments.patch- libpe_status: use correct default timeout for probes * pacemaker-libpe_status-correct-default-timeout-for-probes.patch - libpe_status: fix precedence of operation meta-attributes * pacemaker-libpe_status-precedence-of-operation-meta-attributes.patch - lrmd: always use most recent remote proxy * pacemaker-lrmd-use-most-recent-remote-proxy.patch - libpe_status: limit resource type check to primitives * pacemaker-libpe_status-limit-resource-type-check-to-primitives.patch - PE: correct mispelled constant * pacemaker-pengine-correct-mispelled-constant.patch - PE: Ensure stop operations occur after stopped remote connections have been brought up * pacemaker-pengine-stop-occur-after-stopped-remote-connections-brought-up.patch - PE: Remote connection resources are safe to to require only quorum * pacemaker-remote-connection-resources-require-only-quorum.patch - PE: Only allowed nodes need to be considered when ordering resource startup after _all_ recovery * pacemaker-pengine-allowed-nodes-considered-when-ordering-resource-startup.patch- attrd: ensure node name is broadcast at start-up (CLBZ#5330) * pacemaker-attrd-node-name-broadcast-at-start-up.patch- systemd unit files: enable TasksMax=infinity (bsc#1028138, bsc#1066710) * bug-1066710_pacemaker-systemd-unit-files-enable-TasksMax=infinity.patch * Drop obsolete bug-1028138_pacemaker-pacemaker.service-TasksMax.patch- RA: NodeUtilization RA is now shipped by resource-agents package (bsc#1070347) * Drop bug-1015842_pacemaker-NodeUtilization-RA.patch- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- attrd,stonithd: more efficient regular expression parsing * pacemaker-attrd-stonithd-efficient-regular-expression-parsing.patch - tools: use proper variable in message from crm_resource -g * pacemaker-tools-use-proper-variable-in-message-from-crm_resource-g.patch - tools: use uber-parent for crm_resource -a/-A * pacemaker-tools-use-uber-parent-for-crm_resource-a-A.patch - tools: use g_main_loop_is_running() properly * pacemaker-tools-use-g_main_loop_is_running-properly.patch - libpe_status: monitors are rescheduled, not reloaded * pacemaker-log-pengine-monitors-rescheduled.patch - systemd: add TasksMax comment to pacemaker_remote unit (bsc#1028138, bsc#1066710) * bug-1066710_pacemaker-pacemaker_remote.service-TasksMax=infinity.patch - tools: make regression test insensitive to line number changes * pacemaker-tools-regression-test-insensitive-to-line-number-changes.patch - pengine,tools,libpe_status: avoid unnecessary use of pe_find_current * pacemaker-pengine-tools-avoid-unnecessary-use-of-pe_find_current.patch - pacemaker.service: Recommend not to limit tasks (bsc#1028138, bsc#1066710) * bug-1066710_pacemaker-pacemaker.service-TasksMax=infinity.patch * Update bug-1028138_pacemaker-pacemaker.service-TasksMax.patch - tools: set the correct OCF_RESOURCE_INSTANCE env when crm_resource --force-* executes RA * pacemaker-tools-correct-OCF_RESOURCE_INSTANCE-crm_resource-force-execute-1.patch * pacemaker-tools-correct-OCF_RESOURCE_INSTANCE-crm_resource-force-execute-2.patch - typo: overriden -> overridden * pacemaker-ifspeed-typo-overridden.patch - portability: the difference of time_t values is given by difftime() * pacemaker-portability-difference-of-time_t-values-by-difftime.patch - tools: don't expect reply to failed send * pacemaker-tools-dont-expect-reply-to-failed-send.patch - pengine: use newer Pacemaker Remote terminology * pacemaker-pengine-Pacemaker-Remote-terminology.patch - pengine: memory leak when writing graph to file * pacemaker-pengine-memory-leak-writing-graph-to-file.patch - tools: don't reinvent the glib wheel * pacemaker-tools-dont-reinvent-glib-wheel.patch - tools: implement clean-up dry-run correctly * pacemaker-tools-clean-up-dry-run-correctly.patch - Test: Update regression test outputs * pacemaker-test-update-regression-test-outputs.patch - PE: Improved logging of reasons for stop/restart actions * pacemaker-pengine-improved-logging-of-reasons-for-stop-restart-actions.patch * pacemaker-pengine-improved-logging-of-reasons-for-stop-restart-actions-tests.patch - PE: Allow all resources to stop prior to probes completing * pacemaker-pengine-allow-all-resources-to-stop-prior-to-probes-completing.patch - crm_resource: Ensure we wait for all messages before exiting * pacemaker-crm_resource-wait-for-all-messages-before-exiting.patch - PE: Resources are allowed to stop before their state is known everywhere * pacemaker-pengine-resources-allowed-to-stop-before-state-known-everywhere.patch * pacemaker-pengine-resources-allowed-to-stop-before-state-known-everywhere-tests.patch - PE: Flag resources that are acting as remote nodes * pacemaker-pengine-flag-resources-acting-as-remote-nodes.patch - crmd: Scale all cib operation timeouts * pacemaker-crmd-scale-all-cib-operation-timeouts.patch - PE: Bare metal remotes _can_ run resources now and must be probed * pacemaker-pengine-bare-metal-remotes-can-run-resources-and-must-be-probed.patch - crmd: Scale timeouts with the number of remotes too * pacemaker-crmd-scale-timeouts-with-number-of-remotes-too.patch - PE: Exclude resources and nodes from the symmetric_default constraint in some circumstances * pacemaker-pengine-exclude-resources-and-nodes-from-symmetric_default.patch - PE: Restore the ability to send the transition graph via the disk if it gets too big * pacemaker-pengine-send-transition-graph-via-disk-if-too-big.patch - crm_resource: Prevent disconnection from crmd during cleanup * pacemaker-crm_resource-prevent-disconnection-from-crmd-during-cleanup.patch - PE: Detailed resource information should include connection resource state * pacemaker-pengine-information-connection-resource-state.patch - Tools: Allow crm_resource to operate on anonymous clones in unknown states * pacemaker-crm_resource-operate-anonymous-clones-in-unknown-states.patch - crm_resource: See what cleanup would have done for a saved configuration * pacemaker-crm_resource-cleanup-for-saved-configuration.patch- pengine: if ignoring failure, also ignore migration-threshold * pacemaker-pengine-if-ignoring-failure-also-migration-threshold.patch * pacemaker-pengine-if-ignoring-failure-also-migration-threshold-test.patch - libcrmcommon,liblrmd,lrmd: improve messages for failed remote sends * pacemaker-messages-failed-remote-sends.patch - libcrmcommon,lrmd: meaningful error codes when sending remote messages * pacemaker-meaningful-error-codes-sending-remote-messages.patch - libcrmcommon: lower watchdog messages when default * pacemaker-libcrmcommon-lower-watchdog-messages.patch - tools: set meta_timeout env when crm_resource --force-* executes RA * pacemaker-set-meta_timeout-env-crm_resource-force-executes-RA-1.patch * pacemaker-set-meta_timeout-env-crm_resource-force-executes-RA-2.patch - fencing: don't print event twice with stonith_admin --verbose * pacemaker-fencing-dont-print-event-twice-stonith_admin-verbose.patch - fencing: memory leak in stonith_admin --env * pacemaker-fencing-memory-leak-stonith_admin-env.patch - fencing: improve stonith_admin help * pacemaker-fencing-stonith_admin-help.patch - crmd: hard error if remote start fails due to missing key * pacemaker-crmd-hard-error-if-remote-start-fails-missing-key.patch - libcrmcommon,liblrmd: report meaningful async connection errors * pacemaker-report-meaningful-async-connection-errors.patch - libcrmcommon: return meaningful error codes to connection callbacks * pacemaker-libcrmcommon-meaningful-error-codes-to-connection-callbacks.patch - libcrmcommon: async connection callback must get negative error codes * pacemaker-libcrmcommon-async-connection-callback-negative-error-codes.patch - libcrmcommon,liblrmd: improve remote connection messages * pacemaker-improve-remote-connection-messages.patch - pacemaker_remote: warn if TLS key can't be read at start-up * pacemaker-pacemaker_remote-warn-if-TLS-key-cant-be-read-at-start-up.patch - lrmd: tweak TLS listener messages * pacemaker-lrmd-TLS-listener-messages.patch - pengine: don't keep unique instances on same node * pacemaker-pengine-dont-keep-unique-instances-on-same-node.patch * pacemaker-rebalance-unique-clones-test.patch - pengine: improve messages when assigning resources to nodes * pacemaker-pengine-messages-assigning-resources-to-nodes.patch- lrmd: don't reject protocol 1.0 clients (bsc#1009076) * bug-1009076_pacemaker-lrmd-dont-reject-protocol-1.0-clients.patch - tools: print descriptive messages for OCF exit code * pacemaker-tools-descriptive-messages-for-OCF-exit-code.patch - tools: differentiate trace log level for RAs * pacemaker-tools-trace-log-level-for-RAs.patch - tools: show RAs debug logs only when verbose mode for crm_resource --force-* * pacemaker-tools-show-RAs-debug-verbose-mode-crm_resource-force.patch - tools: suppress an invalid error message for crm_resource --force-* options * pacemaker-tools-suppress-invalid-error-message-crm_resource-force.patch - pengine: don't schedule reload and restart in same transition * pacemaker-pengine-dont-reload-and-restart-in-same-transition.patch * pacemaker-pengine-test-reload-becomes-restart.patch - libcrmservice: list systemd agents alphabetically * pacemaker-libcrmservice-list-systemd-agents-alphabetically.patch - libcrmcommon: add function to sort list alphabetically * pacemaker-libcrmcommon-crm_alpha_sort.patch - pengine: new regression test for unrecoverable remote connection * pacemaker-pengine-test-remote-connection-unrecoverable.patch - libcrmservice: avoid infinite loop on bad DBus reply * pacemaker-libcrmservice-avoid-infinite-loop-on-bad-DBus-reply.patch - libcrmservice: list systemd unit files, not only active units * pacemaker-libcrmservice-list-systemd-unit-files.patch - tools: re-enable crm_resource --lifetime option (CLBZ#5251, bsc#950128) * bug-950128_pacemaker-crm_resource-lifetime.patch - libcrmcluster: improve error checking when updating node name * pacemaker-libcrmcluster-error-checking-updating-node-name.patch - libcrmservice: parse LSB long description correctly * pacemaker-libcrmservice-parse-LSB-long-description.patch - libcrmservice: follow LSB standard for header block more strictly * pacemaker-libcrmservice-follow-LSB-header-block.patch - libcommon: Erase old exit_reason * pacemaker-libcommon-erase-old-exit_reason.patch * pacemaker-tools-test-exit-reason.patch- crm_mon: error-exit child if execl should return * pacemaker-crm_mon-error-exit-child-execl-should-return.patch - tools: ensure crm_resource data set is initialized * pacemaker-crm_resource-data-set-initialized.patch - libcib: ensure xpath result isn't empty * pacemaker-libcib-xpath-result-empty.patch - tools: missing break statement in attrd_updater * pacemaker-tools-break-statement-attrd_updater.patch - libcrmcommon: check sscanf() result when parsing schema version * pacemaker-libcrmcommon-check-sscanf-result-parsing-schema-version.patch - tools: check sscanf return value when parsing failed op list * pacemaker-tools-check-sscanf-return-parsing-failed-op-list.patch - tools: allow crm_resource to be called without arguments * pacemaker-crm_resource-without-arguments.patch - tools: update regression test for recent message changes * pacemaker-tools-update-regression-test-crm_resource.patch - tools: improve crm_resource --show-metadata error messages (CLBZ#5287) * pacemaker-crm_resource-show-metadata-error-messages.patch - libcrmcommon: add functions for using agent specifications * pacemaker-libcrmcommon-functions-agent-specifications.patch - tools: improve crm_resource help (CLBZ#5251, bsc#950128) * bug-950128_pacemaker-crm_resource-help.patch- pengine: add tests for no-quorum-policy=suicide * pacemaker-pengine-tests-no-quorum-policy=suicide.patch - libpe_status: properly detect when nodes should suicide * pacemaker-libpe_status-detect-when-nodes-should-suicide.patch - libpe_status: always log startup-fencing value * pacemaker-libpe_status-log-startup-fencing-value.patch - libpe_status: generalize ability to log warning only once * pacemaker-libpe_status-ability-log-warning-once.patch - pengine: reset loss-policy from fence to stop if no fencing * pacemaker-pengine-loss-policy-fence-to-stop-if-no-fencing.patch - pengine: avoid use-of-NULL when unpacking tickets * pacemaker-pengine-use-of-NULL-unpacking-tickets.patch - tools: ensure crm_resource works if no command is specified * pacemaker-crm_resource-no-command.patch - libpe_status: validate no-quorum-policy=suicide correctly * pacemaker-libpe_status-validate-no-quorum-policy=suicide.patch - tools: use-after-free in crm_diff * pacemaker-use-after-free-crm_diff.patch - RA: ClusterMon - Correctly handle "update" parameter * pacemaker-ClusterMon-update-parameter.patch - attrd: "peer peer loss" -> "peer loss" * pacemaker-attrd-log-peer-loss.patch- Log: Reduce verbosity of developer logging * pacemaker-reduce-verbosity-developer-logging.patch - attrd: Tweak log messages for clarity * pacemaker-attrd-log-messages-clarity.patch- Fix: -Wformat-truncation=2: prevent format truncation * pacemaker-prevent-format-truncation.patch - snprintf: use correct signedness in print format specifiers * pacemaker-snprintf-correct-signedness-format-specifiers.patch - snprintf: use sizeof(X) as size + prevent off-by-ones * pacemaker-snprintf-use-sizeof.patch - crmd,libcrmcommon,libcluster,tools: handle PID as string properly * pacemaker-handle-PID-string-properly.patch - tools: use right size for string buffer in fake_transition.c * pacemaker-right-size-for-string-buffer-fake_transition.patch - crm_resource: fix a memleak * pacemaker-crm_resource-memleak.patch - pengine: sprintf -> snprintf * pacemaker-pengine-sprintf-snprintf.patch - libcrmcommon: fix possible infloop in buffer_print * pacemaker-libcrmcommon-possible-infloop-in-buffer_print.patch - crm_snprintf_offset like parts: fix off-by-ones * pacemaker-crm_snprintf_offset-like-parts.patch - attrd: improve update messages * pacemaker-attrd-improve-update-messages.patch - stonithd,lrmd,pengine: spelling/formatting corrections * pacemaker-pengine-spelling-corrections.patch - libcrmservices: avoid assert for HB resource with no parameters * pacemaker-libcrmservices-avoid-assert-HB-resource-with-no-parameters.patch - crmd: avoid memory leak when node state is unknown * pacemaker-crmd-memory-leak-node-state-unknown.patch - crmd: avoid assert if LRM query fails * pacemaker-crmd-avoid-assert-LRM-query-fails.patch - libcrmcommon,liblrmd,lrmd: validate PCMK_remote_port * pacemaker-validate-PCMK_remote_port.patch - pengine: detect proper clone name at startup * pacemaker-pengine-detect-proper-clone-name-at-startup.patch * pacemaker-pengine-permanent-master-scores-at-startup-tests-2.patch * pacemaker-pengine-master-score-startup-test.patch - pengine: don't ignore permanent master scores at startup * pacemaker-pengine-permanent-master-scores-at-startup.patch * pacemaker-pengine-permanent-master-scores-at-startup-tests-1.patch - pengine: handle resource migrating behind a migrating remote connection * pacemaker-pengine-migration-behind-migrating-remote-test.patch * pacemaker-pengine-migration-behind-migrating-remote.patch - pengine: functionize common ordering tasks * pacemaker-pengine-functionize-common-ordering-tasks.patch - stonith-ng: advertise pcmk_on_action via metadata * pacemaker-stonith-ng-advertise-pcmk_on_action-via-metadata.patch - liblrmd: Make sure the operation of a remote resource returns if setup of the key fails (bsc#1053463) * bug-1053463_pacemaker-remote-resource-returns-set_key-failure.patch - libcrmcommon,pengine: improve log messages * pacemaker-libcrmcommon-pengine-improve-log-messages.patch - PE: only print to stdout if run from command line * pacemaker-pengine-only-print-to-stdout-command-line.patch - crmd: eliminate size restriction on node state xpath * pacemaker-crmd-eliminate-size-restriction-on-node-state-xpath.patch - pengine: add regression test for remote connect interval wait * pacemaker-pengine-test-remote-connect-interval.patch - pengine: re-enable unrecoverable remote fencing * pacemaker-pengine-re-enable-unrecoverable-remote-fencing.patch - pengine: Make sure calculated resource scores are consistent on different architectures (bsc#1054389) * bug-1054389_pacemaker-pengine-resource-scores-round-float-weight.patch - PE: Unfencing: Correctly detect changes to device definitions * pacemaker-pengine-unfencing-device-change-test.patch - attrd,crmd: erase attributes at attrd start-up, not first join * pacemaker-attrd-crmd-erase-attributes-at-attrd-start-up.patch - attrd: accept connections only after CIB connection is active * pacemaker-attrd-accept-connections-after-CIB-connection-active.patch - attrd: make CIB connection function self-contained * pacemaker-attrd-CIB-connection-function-self-contained.patch - attrd: improve messages * pacemaker-attrd-improve-log-messages.patch - stonith-ng: make fencing-device reappear properly after reenabling * pacemaker-stonith-ng-fencing-device-reappear-after-reenabling.patch - pengine: avoid fence loop for remote nodes * pacemaker-pengine-avoid-fence-loop-for-remote-nodes.patch - PE: Only retrigger unfencing on nodes that ran operations with the old parameters * pacemaker-pengine-retrigger-unfencing-nodes-operations-old-parameters.patch - PE: Ignore optional unfencing events and report the fencing type * pacemaker-pengine-report-fencing-type.patch- logging: ensure blackbox gets generated on arithmetic error * pacemaker-logging-blackbox-on-arithmetic-error.patch - crm_mon: overcome crm_system_name no longer influenced with argv * pacemaker-crm_mon-crm_system_name-no-longer-influenced-with-argv.patch - crm_mon: make CGI bail out on suspicious arguments * pacemaker-crm_mon-CGI-bail-out-on-suspicious-arguments.patch - crm_mon: make CGI bail out properly and w/o help screen * pacemaker-crm_mon-CGI-bail-out-properly.patch - crm_mon: canonical casing of Content-Type CGI header field * pacemaker-crm_mon-Content-Type-CGI-header-field.patch - libcrmcommon: handle schema versions properly * pacemaker-libcrmcommon-handle-schema-versions-properly.patch - libcrmcommon: improve user lookup messages * pacemaker-libcrmcommon-user-lookup-messages.patch - extra: correct ClusterMon metadata * pacemaker-ClusterMon-metadata.patch - attrd,tools: avoid memory leaks from use of crm_itoa() * pacemaker-tools-memory-leak-use-of-crm_itoa.patch - attrd: be consistent about attr/host logging * pacemaker-attrd-consistent-attr-host-logging.patch - attrd: improve log messages * pacemaker-attrd-improve-log-message.patch - liblrmd: better trace message when creating command * pacemaker-liblrmd-trace-message-creating-command.patch - stonith-ng: avoid double-free of pending-ops in free_device * pacemaker-stonith-ng-double-free-pending-ops-in-free_device.patch - crmd: log correct feature set revision * pacemaker-crmd-log-correct-feature-set-revision.patch - PE: update start-failure-is-fatal help * pacemaker-pengine-start-failure-is-fatal-help.patch - cib: avoid unnecessary memory allocation * pacemaker-cib-avoid-unnecessary-memory-allocation.patch - Doc: add documentation for new pcmk_delay_base (bsc#1074039) * bug-1074039_pacemaker-documentation-pcmk_delay_base.patch - stonith-ng: add pcmk_delay_base as static base-delay (bsc#1074039) * bug-1074039_pacemaker-stonith-ng-pcmk_delay_base.patch - various: fix spelling in messages and comments * pacemaker-log-spelling-messages-comments.patch - cib: reword trace message * pacemaker-cib-reword-trace-message.patch - TE: don't bump counters when action or synapse is invalid * pacemaker-te-dont-bump-counters-action-synapse-invalid.patch - tools: add version options for cibsecret * pacemaker-tools-version-option-cibsecret.patch- PE: Ensure unrecoverable remote nodes are fenced even if no resources can run on them * pacemaker-pengine-unrecoverable-remote-nodes-fenced-no-resources.patch - iso8601: strftime needs fully populated struct tm (bsc#1058844) * bug-1058844_pacemaker-iso8601-strftime-fully-populated-struct-tm.patch - crmd: abort transition whenever we lose quorum * pacemaker-crmd-transition-whenever-lose-quorum.patch - libcib: get remoteness correctly from node status * pacemaker-libcib-get-remoteness-correctly-from-node-status.patch - pengine: make checks a little safer * pacemaker-pengine-make-checks-safer.patch - PE: Correctly implement pe_order_implies_first_printed * pacemaker-pengine-pe_order_implies_first_printed.patch - PE: Do not re-add a node's default score for each location constraint * pacemaker-pengine-not-re-add-node-default-score-for-each-location-constraint.patch - libcib: correctly search for v2 patchset changes * pacemaker-libcib-correctly-search-for-v2-patchset-changes.patch - libcib: always use current values when unpacking config * pacemaker-libcib-use-current-values-unpacking-config.patch - libcrmcluster: fix spelling error in error message * pacemaker-libcrmcluster-spelling-error-message.patch - crmd: DC should update stonith fail count before aborting transition * pacemaker-crmd-DC-update-stonith-fail-count-before-aborting-transition.patch - cib: Broadcasts of cib changes should always pass ACLs check (bsc#1042054) * bug-1042054_pacemaker-cib-broadcast-pass-acl.patch- pengine,libpe_status: revisit fencing messages * pacemaker-pengine-fencing-messages.patch - PE: Improve logging of node fencing and shutdown * pacemaker-logging-node-fencing-and-shutdown.patch - PE: Fence unrecoverable remote nodes with no resources * pacemaker-pengine-fence-unrecoverable-remote-nodes-with-no-resources.patch - attrd: broadcast local overrides of sync'ed attributes * pacemaker-attrd-broadcast-local-overrides-of-synced-attributes.patch - crmd: attribute write-out not needed with atomic attrd * pacemaker-crmd-attribute-write-out-not-needed-with-atomic-attrd.patch - PE: Ensure remote nodes are fenced when the connection cannot be recovered * pacemaker-pengine-remote-nodes-fenced-connection-cannot-be-recovered.patch * pacemaker-pengine-remote-nodes-fenced-connection-cannot-be-recovered-tests.patch - PE: Improved fencing logging * pacemaker-pengine-fencing-logging.patch - PE: Assume resources on remote nodes do not need to be restarted until absolutely necessary * pacemaker-pengine-resources-on-remote-nodes-not-restarted-until-necessary.patch * pacemaker-pengine-resources-on-remote-nodes-not-restarted-until-necessary-tests.patch - PE: Correctly compare a point with NULL instead of FALSE * pacemaker-pengine-correctly-compare-point.patch - pengine,libpengine: avoid potential use-of-NULL * pacemaker-pengine-potential-use-of-NULL.patch - libpengine: don't double score when adding first allowed node * pacemaker-libpengine-dont-double-score-adding-first-allowed-node.patch * pacemaker-libpengine-dont-double-score-adding-first-allowed-node-tests.patch - pengine: improve detection of invalid constraints * pacemaker-pengine-detection-invalid-constraints.patch - PE: Partially restore 62ed004 to ensure remote connections are available before attempting resource recovery * pacemaker-pengine-ensure-remote-connections-available-before-recovery.patch * pacemaker-pengine-ensure-remote-connections-available-before-recovery-test.patch - stonith-ng: Trigger on constraints added to cib (bsc#1042374) * bug-1042374_pacemaker-stonith-ng-trigger-on-constraints-added.patch- RA: NodeUtilization - Use xl if available (bsc#1015842) * Drop obsolete: * * bug-1015842_pacemaker-NodeUtilization-RA-1.patch * * bug-1015842_pacemaker-NodeUtilization-RA-2.patch * * bug-1015842_pacemaker-NodeUtilization-RA-3.patch * Add bug-1015842_pacemaker-NodeUtilization-RA.patch - Drop obsolete pacemaker-lrmd.h-include-libxml.patch - lrmd,pengine: remove versioned parameters from documentation and tests * pacemaker-lrmd-pengine-remove-versioned-parameters-tests.patch - lrmd,pengine: don't support versioned attributes by default * pacemaker-lrmd-pengine-dont-support-versioned-attributes-by-default.patch - lrmd: Ensure verbosity options are handled after crm_log_init() * pacemaker-lrmd-verbosity-options-handled-after-crm_log_init.patch - pengine: unmanage guest-container puts guest in maintenance * pacemaker-pengine-unmanage-guest-container-puts-guest-in-maintenance.patch - pengine: unique ids for meta-attributes of guest-connection * pacemaker-pengine-unique-ids-for-meta-guest-connection.patch - pengine: update regression tests for probes of guest-connections * pacemaker-pengine-guest-node-connection-resources-probed-tests.patch - pengine: have guest-node connection-resources probed * pacemaker-pengine-guest-node-connection-resources-probed.patch - crmd: clean up throttle memory on exit * pacemaker-crmd-clean-up-throttle-memory.patch - libcib: avoid use-after-free when deleting CIB connection * pacemaker-libcib-use-after-free-deleting-CIB-connection.patch - systemd unit files: add dependency on resource-agents-deps * pacemaker-systemd-units-dependency-on-resource-agents-deps.patch - libcrmcommon: avoid evicting IPC client if messages spike briefly * pacemaker-libcrmcommon-avoid-evicting-IPC-client.patch - libcrmcommon: don't delay next flush by more than 5 seconds * pacemaker-libcrmcommon-next-flush-delay.patch - libcib: downgrade ACL status message to trace * pacemaker-libcib-ACL-status-message-to-trace.patch - crmd: don't destroy election structure twice * pacemaker-crmd-dont-destroy-election-structure-twice.patch - crmd: avoid use-after-free when disconnecting from CIB * pacemaker-crmd-use-after-free-disconnecting-from-CIB.patch - libcib: functionize destroying op callback table * pacemaker-libcib-functionize-destroying-op-callback-table.patch - crmd,libcrmcommon: update throttle when CPUs are hot-plugged * pacemaker-crmd-update-throttle-CPUs-hot-plugged.patch - crmd: remove I/O load checks * pacemaker-crmd-remove-IO-load-checks.patch - libcrmcommon: add function to get number of CPU cores * pacemaker-libcrmcommon-function-get-number-of-CPU-cores.patch - crmd: functionize checking throttle thresholds * pacemaker-crmd-functionize-checking-throttle-thresholds.patch - crmd: functionize setting throttle load target * pacemaker-crmd-functionize-setting-throttle-load-target.patch - CTS: update corosync fail patterns * pacemaker-CTS-update-corosync-fail-patterns.patch - crmd: check correct timer for being started * pacemaker-crmd-check-correct-timer.patch - crmd: improve fencing result message * pacemaker-crmd-fencing-result-message.patch - lrmd: Have pacemaker-remote reap zombies if it is running as pid 1 * pacemaker-lrmd-pacemaker-remote-reap-zombies.patch - pengine: add test for per-op fail count * pacemaker-pengine-test-per-op-fail-count.patch - libcrmcommon: filter attributes with '#' from XML fields * pacemaker-libcrmcommon-filter-attributes.patch - extra: Dummy stop shouldn't fail if monitor is in progress * pacemaker-extra-Dummy-stop-not-fail-if-monitor-is-in-progress.patch - extra: use whitespace consistently in Dummy * pacemaker-extra-Dummy-use-whitespace-consistently.patch - crmd: don't fence old DC if it's shutting down as soon-to-be DC joins * pacemaker-crmd-dont-fence-old-DC-if-shutting-down-as-soon-to-be-DC-joins.patch - crmd: avoid DC sending offer to itself twice * pacemaker-crmd-avoid-DC-sending-offer-to-itself-twice.patch - crmd: don't restart transition if no fence devices * pacemaker-crmd-dont-restart-transition-if-no-fence-devices.patch - crmd: skip restart at (not above) stonith-max-attempts * pacemaker-crmd-skip-restart-at-stonith-max-attempts.patch - crmd: allow clearing all stonith fail counts * pacemaker-crmd-allow-clearing-all-stonith-fail-counts.patch - crmd: track stonith fail counts on all nodes * pacemaker-crmd-track-stonith-fail-counts-on-all-nodes.patch - crmd: forget stonith failures when forgetting node * pacemaker-crmd-forget-stonith-failures-forgetting-node.patch - crmd: consider target when checking stonith failures * pacemaker-crmd-consider-target-checking-stonith-failures.patch - crmd: check for too many stonith failures only when aborting for that reason * pacemaker-crmd-check-too-many-stonith-failures.patch - fencing: ignore empty 'action' parameter in fence devices * pacemaker-fencing-ignore-empty-action.patch - crmd: fix remove attr_id from update_attr_delegate() * pacemaker-crmd-remove-attr_id-update_attr_delegate.patch - Fix log showing the node status so that it is easily distinguishable from other logs * pacemaker-crmd-log-node-status.patch - crmd: don't abandon fencing after one "no devices" failure * pacemaker-crmd-dont-abandon-fencing-after-one-no-devices-failure.patch - libcrmcommon: more useful message if can't open dump file * pacemaker-libcrmcommon-message-cannot-open-dump-file.patch - libcib: use new convenience function for sanitizing ID * pacemaker-libcib-convenience-function-sanitizing-ID.patch - crmd: add set_join_state() * pacemaker-crmd-set_join_state.patch - crmd: fix line wrapping * pacemaker-crmd-fix-line-wrapping.patch - crmd: update_attr_delegate() instead of set_standby() * pacemaker-crmd-update_attr_delegate-instead-of-set_standby.patch - tools: crm_resource should free result if re-running function returns one * pacemaker-crm_resource-free-result-if-re-running.patch - libpe_status: avoid memory leak when counting failures * pacemaker-libpe_status-memory-leak-counting-failures.patch - crmd: remove functions from crmd_utils.c * pacemaker-crmd-start-state-remove-functions.patch - libcib: change the format of the state id in set_standby() * pacemaker-libcib-set_standby-state-id-format.patch - crmd: set_standby in first_join * pacemaker-crmd-set_standby-in-first_join.patch - common: Prevention of the double definition. * pacemaker-common-prevention-of-double-definition.patch - pacemaker_remoted: Allow compilation with glib older 2.36 * pacemaker-remoted-compilation-glib-older.patch - PE: Preferred nodes are only accepted if their scores are equal to the otherwise best candidate * pacemaker-pengine-preferred-nodes-scores-equal-best-candidate.patch - Core: Track the line number of callers of crm_(set|clear)_bit * pacemaker-core-line-number-of-callers-crm_set_clear_bit.patch - xml: Correctly find the first child element * pacemaker-xml-find-first-child.patch - PE: Correctly test for clone functionality * pacemaker-pengine-test-clone.patch - Improve recovery when demote fails with OCF_NOT_RUNNING * pacemaker-pengine-recovery-demote-OCF_NOT_RUNNING.patch- libcrmcluster,crmd: log join phase as text rather than integer - pacemaker-remote: pacemaker_remoted shutdown while unmanaged - tools: disable agent stdout/stderr for crm_resource --validate - tools: Add "--validate" command to crm_resource - tools: crm_resource should set OCF_RESKEY_crm_feature_set - tools: make crm_failcount compatible with per-operation failcounts - tools: support clearing failure of a single operation with crm_resource -C - crmd: support clearing failure of a single operation - crmd: make clearing last failure more efficient - attrd,libcrmcommon: support clearing failure of a single operation - attrd,crmd,libraries,tools: track resource failures per-operation - tools: support crm_failcount -q as advertised - Upstream version cs: 77ea74d01bcb6b7100e1c7acab0e66e79aceaf8b- NodeUtilization: Never set hv_memory to a negative value (bsc#1015842) * bug-1015842_pacemaker-NodeUtilization-RA-3.patch - NodeUtilization: Fix mixed indentation, set executable bit (bsc#1015842) * bug-1015842_pacemaker-NodeUtilization-RA-2.patch - RA: NodeUtilization - Use xl if available (bsc#1015842) * Drop obsolete bug-1015842_pacemaker-NodeUtilization-RA.patch * Add bug-1015842_pacemaker-NodeUtilization-RA-1.patch- spec: Merge the SLE and Factory versions * enable_fatal_warnings=0- crmd: new cluster option stonith-max-attempts with default value 10 - crmd: Change of the log level and addition of uuid. - crmd: use new attrd op to clear fail counts - tools: crm_resource -C should clear last-failure - libcrmcommon: add API for new attrd clear-failure operation - attrd: add more detail to legacy attrd messages - attrd: add API for clearing failures - Upstream version cs: e55d506cc390f0a0335b4ec6e365ea89da30b6b1- pacemaker.service: Add presetting TasksMax=4915 (bsc#1028138) * bug-1028138_pacemaker-pacemaker.service-TasksMax.patch- Build: lrmd: Include libxml/tree.h in lrmd.h * pacemaker-lrmd.h-include-libxml.patch- libfencing,fencing: properly remap "action" in configuration - libservices: ensure recurring actions table is created before using - libservices: improve error messages when creating operation - libservices: properly detect in-flight systemd/upstart ops when kicking - libservices: properly cancel in-flight systemd/upstart op - libservices: handle in-flight case first when cancelling an operation - libservices: prevent use-after-free when freeing an operation - libservices: ensure completed ops aren't on blocked ops list - libcrmcommon: assert if can't generate operation key - libcrmcommon: improve remote connection polling messages - crmd: clear failure only for requested node - crmd: improve message when clearing failures - pengine,libpe_status: make failcount clearing messages more helpful - pengine,libpe_status: don't clear same fail-count twice - cib: properly mark variable as volatile - libcib: avoid memory leak in query_node_uuid() - tools: avoid NULL dereference in crm_resource debug message - cib,libcrmcommon,lrmd: handle IP addresses better in messages - tools: crm_attribute should prefer node name from environment - libcrmcommon: Correctly delete XML comments according to their positions (bsc#1024037) - libcrmcommon: Correctly compare XML comments to prevent crmd from getting into infinite election loop (bsc#1024037) - crmd,libcrmcluster: minor log message improvements - tools: avoid deprecated function in notifyServicelogEvent - libcrmcommon,pengine,tools: pass local node name to resource agents - use callback instead of sync call - libcib: make querying node uuid more efficient - tools: allow regular expression with crm_attribute - attrd: support regular expressions in legacy attrd - attrd: support Pacemaker Remote node attributes in legacy attrd - use status scope to start node in standby mode - attrd: ignore unsupported requests in legacy attrd - attrd,crmd: implement peer remove requests in legacy attrd - crmd: don't clear remote node transient attributes unnecessarily - crm_mon: protect against non-standard or failing asctime - libservices(sync): partially prevent killing foreign process - libservices (sync): ensure no zombie is left behind - cib: improve re-sync handling - tools: implement crm_failcount command-line options correctly - tools: use correct regular expression for fail counts in crm_resource - cib: never disable legacy mode with corosync 1 stacks - cib: improve warning when legacy diff fails - libcrmcommon: ensure filename is not NULL before opening - crmd: be more resilient when checking an LRM command's "from" - crmd: improve crmd's LRM-related log messages - tools: properly ignore version with crm_diff --no-version (bsc#888726) - Ability to start node in standby - Upstream version cs: a7825f4f0a8db272d1ce0b1f93e8044cbcaa5144- libservices: properly watch writable DBus handles - tools: don't reference hidden parameter in crm_resource help text - Alert: Set SNMP_PERSISTENT_DIR directory for the snmp-trap tool. - dbus: Prevent lrmd from hanging on dbus calls (bsc#1015264) - spec: add %check to run a subset of tests on rpmbuild - crmd: update cache status for guest node whose host is fenced - pengine: consider guest node unclean if its host is unclean - pengine: create a pseudo-fence for guest node recovery - pengine: guest node fencing doesn't require stonith enabled - pengine: remove unnecessary assert - mcp: Correction of the difference in access permission setting. - stonith_admin: Addition of the list-targets option. - stonith: Check for missing params in new device and dup - libservices: treat systemd service reloading as OK (bsc#1059187) - crmd: increase severity when fencing didn't happen (bsc#1011240) - rng: Create resources-2.7.rng to update template class validation - libcrmcommon: Don't report error if the output file isn't syncable - crmd: bump feature set - pengine: disable migration for versioned resources - add versioned parameters support - Upstream version cs: 2817a2081e9e70e7412f0d0a253495611afab55e- wd: Fix to not compare NULL when environment variable is not set - mcp,pacemaker_remote: order after time-sync - configure: fix fouled parameter expansion * Drop obsolete pacemaker-configure-systemd-detection.patch - xml: rng: Keep score-attribute{,-mangle} in the existing RelaxNG schema files for graceful upgrades - Upstream version cs: 94ff4df51a55cc30d01843ea11b3292bac755432 (Pacemaker-1.1.16)- RA: NodeUtilization - Use xl if available (bsc#1015842) * bug-1015842_pacemaker-NodeUtilization-RA.patch- spec: Prevent overwriting existing sysconfig files by conditionally running %fillup_only (bsc#1022807, bsc#980341)- spec: cts brings an RA that needs python-systemd- Explicitly own %{_defaultdocdir}/%{name}.- Revert "Build: configure: make systemd detection akin to + before Upstart one" * pacemaker-configure-systemd-detection.patch - libcrmcommon: fix CVE-2016-7035 (improper IPC guarding) (bsc#1007433) - sysconfig: minor tweaks (typo, wording) - various: issues discovered via valgrind and coverity - attrd_updater: fix usage of HAVE_ATOMIC_ATTRD - Upstream version cs: b6f251a13fadca0cb74702b0c007a55275c8ea09- Rebase: * pacemaker-NodeUtilization-RA.patch - extra: add resource agent for managing a node attribute - crmd: cl#5185 - Record pending operations in the CIB before they are performed (bsc#1003565) - ClusterMon: fix to avoid matching other process with the same PID - mcp: improve comments for sysconfig options - spec: require libqb >= 0.13.0 - tools: crm_standby --version/--help should work without cluster - spec: reorganize so %pre etc. blocks are self-contained - spec: require python >= 2.6 - spec: comment better - libpengine: ensure child is not null before looking up value - libpengine: only log startup-fencing warning once - Upstream version cs: 722276c442bf023931842313bfe0dfb7d90a7c15- pacemaker.service: do not mistakenly suggest killing fenced - pacemaker.spec: consume "systemdunitdir" via %_unitdir - libcrmcommon: report errors consistently when waiting for data on connection (bsc#986644) - libservices: use DBusError API properly - remote: Correctly calculate the remaining timeouts when receiving messages (bsc#986644) - libfencing: report added node ID correctly - crm_mon: Do not call setenv with null value - pacemaker_remote: allow remote clients to timeout/reconnect - pengine: Do not fence a maintenance node if it shuts down cleanly (bsc#1000743) - install README in doc instead of now-removed AUTHORS file - ping: Avoid temporary files for fping check (bsc#987348) - all: clarify licensing and copyrights - schemas.c: treat CIB with unrecognized validate-with better - schemas.c: avoid downgrade validate-with in a corner case - xml.c: better info in cli_config_update on no validation success - fix infloop when no schema validates on update_validation - xml.c: internal self-or-less reference inflicted infloop guard - crmd: Resend the shutdown request if the DC forgets - ping: Avoid temp files in fping_check (bsc#987348) - crmd: Ensure the R_SHUTDOWN is set whenever we ask the DC to shut us down - crmd: clear remote node operation history only when it comes up - libcib,libfencing,libtransition: handle memory allocation errors without CRM_CHECK() - tools: make crm_mon XML schema handle resources with multiple active - tools: make crm_mon resources section more consistent - crmd: bump feature set - pengine: set OCF_RESKEY_CRM_meta_notify_active_* for multistate resources - LSB init: try to be a little more compliant - pengine: avoid null dereference in new same-node ordering option - lrmd,libcluster: ensure g_hash_table_foreach() is never passed a null table - crmd: don't log warning if abort_unless_down() can't find down event - lib: Correction of the deletion of the notice registration. - stonithd: Correction of the wrong connection process name. - crmd: Keep a state of LRMD in the DC node latest. - pengine: avoid transition loop for start-then-stop + unfencing - libpengine: allow pe_order_same_node option for constraints - pengine: avoid sisyphean score-attribute-mangled parsing - xml: score-attribute{,-mangle} has no meaning for rsc_colocation - Upstream version cs: 4cce2b26f6f468c342adb24bf74234a12a0070c2- cts: Restart systemd-journald with "systemctl restart systemd-journald.socket" (bsc#995365) * bug-995365_pacemaker-cts-restart-systemd-journald.patch- libcrmcommon: properly handle XML comments when comparing v2 patchset diffs - crmd: don't abort transitions for CIB comment changes - libcrmcommon: log XML comments correctly - libcrmcommon: remove extraneous format specifier from log message - crm_mon: Avoid logging errors for any CIB changes that we don't care about (bsc#986931) - crmd: When node load was reduced, crmd carries out a feasible action. - Upstream version cs: 58fef06198fef17873d0d2e2d0cc5c7db73c5724- ping: Log sensible error when /tmp is full (bsc#987348) - crm_mon: Do not log errors for the known CIB changes that should be ignored (bsc#986931) - logging: Enable synchronous logging when blackboxes are enabled - libpengine: print target role and blocked status in XML output - tools: add maintenance mode and disabled/blocked resources to crm_mon XML/HTML output - tools: break up long lines in crm_mon console output - libservices: include socket units when listing all systemd agents - fencing: fence_legacy - Search capable devices by querying them through "list" action for cluster-glue stonith agents (bsc#986265) - extra: correct quoting of timestamp-format in alert-snmp-example - pengine,tools: Display pending resource state by default when it's available (bsc#986201) - rng: Allow rsc-pattern in locations for version 2.6 - pengine: Expand regexp references in location constraints - pengine: Allow to set base score for progressive node health strategy - systemd: Allow unit names ending in .socket. - watchdog: Correction to do to change action of the system reboot by fail_fast - Upstream version cs: 630d0d112092042b6f79c2a02bb442e82fee93ec- Remove conditionals that are not really needed as they always kept the values - Remove the cman conditional as we do not even have the dependencies to build with it in OBS - Convert deps to pkgconfig style ones and remove deps that are not mentioned by the testsuite or the configure.ac- Update to version 1.1.15 - crmd: mention that graceful remote shutdowns may cause connection failures (bsc#981489) - alerts - drop 5min timeout to 30s since it is configurable now - Bug bz#5292 - crmd: wait for alerts to finish - libais,libcluster,libcrmcommon,liblrmd: don't use %z specifier - alerts: ensure sample alert agents handle undefined recipient - tools: crm_resource -T option should not be hidden anymore - PE: Correctly update the dependant actions of un-runnable clones - alerts: make timestamp-format-string work properly if strftime-escape is the last character - extra: make alert-file-example cope with spaces in timeformat-string - attrd,ipc: Prevent possible segfault on exit (bsc#986056) - alerts: fix SMTP recipient defaulting - tools: properly handle crm_resource --restart with a resource in a group - tools: don't assume all resources restart on same node with crm_resource --restart - tools: avoid memory leaks in crm_resource --restart - tools: remember any existing target-role when doing crm_resource --restart - tools: correctly count starting resources when doing crm_resource --restart - Upstream version cs: e174ec84857e087210b9dacee3318f8203176129 (Pacemaker-1.1.15)- Clean-up with spec-cleaner - Drop heartbeat conditions, no heartbeat around - Sort CMAN conditionals to be actually logical - Run fdupes to not waste so much space - Add logrotate to reqs of pacemaker-cli - Cleanup rpmlintrc to contain only bare needed minimum - Run basic sanity check in %check phase- Drop sysvinit support we now run on sle12+ only - Cleanup the define conditionals that are never used - Drop profiling and coverage options it is not enabled by default and better to run separately- libcrmcommon: really ensure crm_time_t structure is fully initialized by API calls - extra: correct syntax error in sample alert script - crmd: avoid timeout on older peers when cancelling a resource operation - crmd: use proper resource agent name when caching metadata - crmd: avoid memory leak when sending fencing alert - liblrmd: avoid memory leak when closing or deleting lrmd connections - extra: improve determination of successful monitors in SNMP alert script - tools: avoid memory leak when crm_mon unpacks constraints - pengine: avoid use-after-free with location constraint + sets + templates - pengine: better error handling when unpacking sets in location constraints - pengine: avoid memory leak when invalid constraint involves set - Build: rename sample alert scripts and install them in datadir - pengine : Correction of the record judgment of the failed information. - Upstream version cs: dd46368eead0d756735216a4bc765466b99274fc- alert-helpers: some fixes in pcmk_smtp_helper.sh - libpengine: log message when stonith disabled, not enabled - pengine: only set unfencing constraints once - tools: don't require node to be known to crm_resource when deleting attribute - libcrmcommon: ensure crm_time_t structure is fully initialized by API calls - attrd: don't leak memory when returning due to malformed update request - crmd: always free result of crm_itoa() - xml: adapt crm_mon.rng per recent reorder of the summary elements - Upstream version cs: 1a05449500f015414b6df68b6d4feb64b713f533- Rebase: * bug-977201_pacemaker-controld-self-fencing.patch - pengine: properly order stop actions relative to stonith - crm_resource: don't pretend that target-role:started would prevent promotion - crm_mon: consistently print ms resource state - controld: use "stonith_admin -H '*' -V" (bsc#977201) - stonith_admin: allow -H '*' to show history for all nodes (bsc#977201) - controld: fix "[: -eq: unary operator expected" issue from PR 1022 (bsc#977201) - extra: Support of the task designation of a resource and the fencing. - extra: Change pcmk_snmp_helper.sh (2). - Upstream version cs: 6a8c1e9d35c65cbfd4019cfe797cb7bb9dfd4322- controld: Prevent unwanted self-fencing if "stateful_merge_wait" state of dlm is not available (bsc#977201) * bug-977201_pacemaker-controld-self-fencing.patch- libservices: clean up non-signalfd code paths - spec: fence_pcmk only eligible for Pacemaker+CMAN - crmd: Acknowledge cancellation operations for remote connection resources (bsc#976865) - controld: improve DLM check with stateful_merge_wait (bsc#977201) - attrd, libcrmcommon: validate attrd requests better - crmd: clear remote node transient attributes on disconnect (bsc#981489) - Revert "Fix: attrd: Correctly implement mass removal of a node's attributes" (bsc#981489) - crm_mon: Fix time formatting on x32 - resources: use OCF version tagging correctly - libcommon: crm_procfs_pid_of() would always return last /proc entry checked - crmd: correctly dig into cib-query-answer if alerts section is present timestamp-format defaults to "%H:%M:%S.%06N" - crmd: Take start-delay into account for the timeout of the action timer (bsc#977258) - libservices: make systemd override file world-readable to avoid log warning - libcrmcommon: correct directory name in log message - Log: make crmd messages more user-friendly - Log: make messages in common quorum/fencing situations more user-friendly - Log: make shutdown messages more user-friendly - pengine: lf#2560/lf#2588 - Correctly set the environment variable "OCF_RESKEY_CRM_meta_timeout" when "start-delay" is configured (bsc#977258) - Log: make operation messages more user-friendly - Log: make startup messages more user-friendly - services: Correctly clean up service actions for non-dbus case - uninitialized use of nano_digits - attrd: Update also dampens when synchronizing attributes (bsc#977846) - Upstream version cs: 389294fd1ebefddad67fff51306f585b758ca860- Rebase: * pacemaker-Wno-format-signedness.patch - RA: SysInfo - Reset the node attribute "#health_disk" to "green" when there's sufficient free disk (bsc#975079) - pengine: Organize order of actions for slave resources in anti-colocations (bsc#977800) - attrd: Fix the synchronization of attributes (bsc#977846) - pengine: Organize order of actions for master resources in anti-colocations (bsc#977800) - pengine: Respect asymmetrical ordering when trying to move resources (bsc#977675) - fencing: Record the last known names of nodes to make sure fencing requested with nodeid works (bsc#974108) - crmd: first implementation of integrated multi-agent, multi-target alerting mechanism (fate#320855) - ping resource: Use fping6 for IPv6 hosts (bsc#976271) - pengine: Consider resource failed if any of the configured monitor operations failed (bsc#972187) - ping resource: avoid undefined func w/ OCF_FUNCTIONS=/dev/null - spec: make Publican docs not depend on pre-existing packages - cib/fencing: Set status callback before connecting to cluster (bsc#974108) - xml: use spaces instead of tabs in schema files - extra: Support of the dampen change by RA. - Upstream version cs: 9e382568ac3cd54c222496501088ab3fc158b2e2- crmd: update cluster state in CIB after fencing an unseen node - crmd: don't abort transition for expected remote node shutdown - libtransition: potential memory leak if unpacking action fails - Upstream version cs: 5a6cdd11b4f93b4d55e1b2654078018c339931d4- attrd: crash on exit if initialization fails - build: fix scalability regression - pengine: Suppress assert if a stateful clone is not being demoted/stopped (bsc#971129) - attrd: Support of the dampen change by attrd. - PE: Correctly handle the ordering of demote actions for failed and moving containers - Upstream version cs: d076e9dbf9827f7801c89c6d635df370aeca5e90- crmd,tools: Set attributes for remote nodes directly into cib if it's legacy attrd (bsc#967775) - libcib: Correctly determine the node type (bsc#967775) - resources: match agents' default for globally_unique to pacemaker's - crm_mon: Help admins identify why resources are not being started or responding to commands - PE: Memory leak - crm_resource: Prevent segfault when --resource is not correctly supplied for --restart command - Build: Create CRM_CORE_DIR during installation - Upstream version cs: eb89393a82eb41ff50d041b91765ccac52e873e0- cpg: Ensure group name is never unset - remote: Simplify calls to accept() and inet_ntop() by using "struct sockaddr_storage" (bsc#964183) - remote: cl#5269 - Notify other clients of a new connection only if the handshake has completed (bsc#967388, bsc#1002767, CVE-2016-7797) - remote: Correctly display the IP address of the remote client (bsc#964183) - spec: declare also BSD license as suitable - libservices: Add error handling for pipe() failed. - libservices: Check resource agent is executable or not before pipe open. - crmd: Prevent use-after-free when an unexpected remote client takes over (bsc#964183) - pacemakerd: Correction of the stonithd process judgment of pacemakerd. - crmd: Do not turn on stonith-watchdog-timeout automatically if SBD is detected - remote: Correctly check for SBD configuration consistency - resources: Fix state file metadata in Dummy, Stateful and HealthCPU resource agents - systemd: Modified so that the cluster to stop before the rsyslog - common: Correctly locate sbd via its pidfile - common: Assume processes are active if we get EACCESS - Fencing: Simplify watchdog integration - crmd: Only poopulate stonith-watchdog-timeout if SBD is active - remote: Ensure SBD is consistently configured on remote nodes - remote: Allow cluster and remote LRM API versions to diverge (bsc#1009076) - cib: Do not send notifications when the dryrun flag is present - Upstream version cs: cf67796823c4429714857411e614cfacfbc59d89- crm_shadow: fix broken --display command - ipc: Respect the parameter of pick_ipc_buffer() but don't let it affect the global value - libcluster: crm_peer_uname() should return NULL if uuid is invalid - remote: recover from remote node fencing more quickly - crmd: update node state for migrated pacemaker_remote nodes - crmd: update node state for stopped pacemaker_remote nodes - crmd: update node state for started pacemaker_remote nodes - crmd: add new message type for updating pacemaker_remote node state - libcluster: set remote peer cache state based on CIB node state - libcluster: send notifications when pacemaker_remote nodes are started - crmd: report pacemaker_remote node state in CIB status section - Upstream version cs: c851a117bc77bdefe15181a7d753f1aed867cde6- spec: Move the common directories under /var/lib/pacemaker into pacemaker-cli package - liblrmd: Prevent potential use-after-free (bsc#964183) - crmd: Disconnect the relevant remote proxies as well when disconnecting a remote node (bsc#964183) - crmd: Prevent potential use-after-free (bsc#964183) - liblrmd: Prevent potential use-after-free issues (bsc#964183) - PE: Fix conditions for internal sanity check (bsc#971129) - attrd: ensure remote nodes are in correct peer cache (bsc#981489) - crmd: set remote flag when gracefully shutting down remote nodes (bsc#981489) - fencing: Correctly track active stonith actions (bsc#938545) - fencing: Functionize adding and removing active pids of device (bsc#938545) - crm_shadow: Do not invoke shells with --noprofile option other than bash (bsc#961392) - lib/common: check return value of dlsym() and not dlerror() - lib/ipc: allow PCMK_ipc_buffer to be smaller than default max sizes - lib/services: use self-pipe sigchld handling when signalfd isn't available - spec: associate subpackage with correct licenses - spec: rely on system-wide RPM macros if available - spec: C++ compiler is not something currently needed - RHBZ#1286316: Do an ordered shutdown of systemd resources - header == NULL when parsing compressed message - attrd: Correctly implement mass removal of a node's attributes (bsc#981489) - attrd: Hook up the client name so we can track requests - crmd: Set the shutdown transient attribute in response to LRMD_IPC_OP_SHUTDOWN_REQ from remote nodes (bsc#981489) - PE: Honor the shutdown transient attributes for remote nodes (bsc#981489) - pacemaker_remote: support graceful stops (bsc#981489) - crmd: support graceful pacemaker_remote stops (bsc#981489) - lrmd,liblrmd: add lrmd IPC operations for requesting and acknowledging shutdown (bsc#981489) - fencing: Support concurrent fencing actions on each device (bsc#938545) - pengine: Support concurrent fencing (bsc#938545) - Upstream version cs: c54f10440a7bba5a1491ea8506925c7d6d9ca2a3- Update to version 1.1.14 - fencing: free only after last usage makes coverity happy - crmd: 0 is a valid fd makes coverity happy - tools: crm_resource compile issue - crm_resource --list-agents: don't print uninitialized memory - extra: update SNMP MIB with new pacemakerTrap OID containing pacemakerNotificationTrap - fencing, libfencing: remap fence agent error codes before async callback (bsc#962309) - libfencing: topology is not used - fencing: topology is not used - libcrmcommon: when caching attrd connection, cache connection flags as well - cts: Plugin-based cluster has its own PacemakerUp pattern - Upstream version cs: 70404b0e5ecbe5e51d07c6c2233eea640cbd720a (Pacemaker-1.1.14)- Rebase: * bug-806256_pacemaker-log-level-notice.patch * bug-728579_pacemaker-stonith-dev-id.patch - core: Mistake of the parameter order. - RHBZ#1287315: stonithd: Trigger cib_devices_update in case of deletion of just an attribute - CLBZ#5253: stonithd: Do not intermingle stdout & stderr coming from stonith-RAs (bsc#962309) - resources: allow for top output with or without percent sign in HealthCPU - controld: Return error when DLM status is wait fencing (RHBZ#1268313) - crmd: Don't update cluster/peer CIB fields when processing stonith results - Upstream version cs: e16447de89d25db3b3578c7e080c1a4c2f85806f- ping: Clarify the description of host_list parameter in ping metadata (bsc#956459) - systemd: Prevent segfaul when logging failed operations - systemd: The underlying systemd calls default to 90s for their timeouts - cib: Do not terminate due to badly behaving clients - Correctly check for recycled PIDs in crm_pid_active - crmd: Consider only fence and shutdown transition events to be "down" events - pengine: Support of multiple-active=block for resource groups (bsc#942491) - crmd: use 300s timeout with notification scripts, not 300ms - stonith_admin: add ability to target topology by pattern or attribute - fencing,libfencing: add API support for targeting topology by pattern or attribute - Upstream version cs: a7d6e6b56fd2779a07970df7de4e0fb0b22742d3- crm_report: Call "crm report" if available (bsc#950483)- fencing: crm_resource --show-metadata drops documentation strings for fencing agents (bsc#950375) - Upstream version cs: 6f22ad7312b703289da5d24e918a78117a0825e1- CTS: add "try except" to deal with errors that raw_input gets EOFError and add "--yes" to skip interaction (bsc#953192) - Upstream version cs: 577898dc4ac1efdb5989a996cb5f9ac60ed2eb7a- crm_resource: Correctly clean up all children for anonymous cloned groups (bsc#950128) - services: Directly add operations into in-flight list in the execution functions (bsc#952874) - systemd: Return PCMK_OCF_UNKNOWN_ERROR instead of PCMK_OCF_NOT_INSTALLED for uncertain errors on LoadUnit (bsc#952884) - systemd: Return FALSE for systemd_mask_error() if it only maps an error instead of masking one (bsc#952884) - dbus: Correctly return the result for pcmk_dbus_find_error() no matter if there's a DBusError passed in (bsc#952884) - services: Prevent potential use-after-free when trying to add an operation into in-flight list (bsc#952874) - systemd: Directly return an error if the connection to System DBus is closed (bsc#952874) - services: Correctly determine if operations are in-flight (bsc#952874) - systemd: Reconnect to System DBus if the connection is closed (bsc#931271) - lrmd: Finalize all pending and recurring operations when cleaning up a resource (bsc#950450) - fencing: don't poke peers when remote node status changes - attrd: don't try to communicate with attrd on a remote node - libcluster,crmd: never update join info or processes for remote nodes - cib: Increased paranoia when peer updates fail to apply in compatability mode - crmd: do not accept remote peer data as enough for startup - crmd: remote nodes can't be DC so never add them to stonith cleanup list - libcluster: never autoreap from remote peer cache - crmd: improve generation of node state - CTS: get Reattach test working again and up-to-date (bsc#953192) - libcommon: Ignore CDATA of metadata of the resource. - cib: Downgrade the log message on forwarding CRM_OP_NOOP requests from INFO to DEBUG (bsc#949267) - fencing: Return a provider for the internal fencing agent "#watchdog" instead of logging an error (bsc#949441) * Drop bug-949441_pacemaker-fencing-provider-internal.patch which has been merged upstream - Upstream version cs: 7bd00f3f3010bc10d13b87e2ff501b597ea6ca03- fencing: Return a provider for the internal fencing agent "#watchdog" instead of logging an error (bsc#949441) * bug-949441_pacemaker-fencing-provider-internal.patch - spec: Move the normal resource agents into pacemaker-cli package (bsc#947197) - spec: Move logrotate configuration file into pacemaker-cli package (bsc#947197) - spec: Move attrd_updater, crm_attribute and crm_master into pacemaker-cli package (bsc#947197) - spec: Move xml schema files and PCMK-MIB.txt into pacemaker-cli package (bsc#947197)- crm_resource: Correctly observe --force when deleting and updating attributes (bsc#948197) - crm_resource: Correctly delete existing meta attributes regardless of their position in the heirarchy (bsc#948197) - fencing,libfencing: use level tag consistently in internal XML - crm_resource: Correctly update existing meta attributes regardless of their position in the heirarchy (bsc#948197) - crmd: properly detect CIB update failures for remote nodes - cibadmin: Prevent potential use-of-NULL in print_xml_output() (bsc#947180) - Fencing: The device list is expected to be comma separated - Tools: Do not send command lines to syslog (bsc#986676) - Tools: Repair the logging of 'interesting' command-lines - PE: resolve memory leak - libfencing: make topology level removal compatible with latest stonithd API - fencing: parse from correct XML location when registering/unregistering topology - tools: improve error handling when modifying configuration - crmd,libcrmcommon,libservices,tools: potential memory leaks (bsc#948197) - crmd,fencing: avoid potential null dereference in string searches - typo: OPSTIONS -> OPTIONS in crm_mon.sysconfig - cib: Check if the configuration changes with cib_config_changed() only for v1 diffs (bsc#946224) - liblrmd: don't print error if remote key environment variable unset - libcib: properly handle temporary file - libcrmcommon: better validation of environment variable value - crmd: avoid potential null dereference - libcib: potential user input overflow - controld: replace bashism - PE: drop probe_complete actions - PE: Allow resources to start and stop as soon as their state is known on all nodes - Fencing: Correctly construct simple topologies with stonith_admin - Fencing: Correctly remove topologies and detect invalid entries - remote: Revise a misleading message in the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383) * Drop bug-946332_pacemaker-resource-agent-remote-message.patch which has been merged upstream - remote: Correctly display the usage of the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383) * Drop bug-946332_pacemaker-resource-agent-remote-usage.patch which has been merged upstream - libcib: find_nvpair_attr_delegate: check buffer overflow - libcib: find_nvpair_attr_delegate: check alloc failure - Upstream version cs: 7906df92a713052db1edae851579ea229d8a5393- remote: Revise a misleading message in the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383) * bug-946332_pacemaker-resource-agent-remote-message.patch - remote: Correctly display the usage of the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383) * bug-946332_pacemaker-resource-agent-remote-usage.patch- crm_resource: Allow the resource configuration to be modified for --force-{check,start,..} calls - Fencing: Correctly parse 'by-attribute' fencing levels - Fencing: Use dedicated fields for fencing level patterns and attribute matching - pacemaker_remote: memory leak in ipc_proxy_dispatch() - crmd: don't add node ID to proxied remote node requests for attrd - membership: Safely autoreap nodes without code duplication - PE: Resolve memory leak - pacemakerd: Do not forget about nodes that leave the cluster - corosync: Display node state and quorum data if available - crmd: Implement reliable event notifications - extra: Added snmp trap of type "NOTIFICATION-TYPE" to MIB and snmp helper script - Date: Correctly set time from seconds-since-epoch - PE: Bug cl#5247 - Imply resources running on a container are stopped when the container is stopped - Upstream version cs: 20c2178f076ff32fdf9ba9a467c193b8dac2f9e5- lrmd: Upgrade start/finish log tags from INFO to NOTICE (bsc#943295) * bug-943295_pacemaker-lrmd-log-notice.patch- services: Reduce severity of noisy log messages (bsc#943319) - xml: Mark xml nodes as dirty if any children move (bsc#942382) - pengine: The failed action of the resource that occurred in shutdown is not displayed. - tools: memory leak in crm_resource - crm_resource: Correctly check if a resource is unmanaged or has a target-role - fencing: add ability to target by attribute - crmd: Resolve memory leak in remote_proxy_cb() - ipc: Do not constantly increase suggested size for PCMK_ipc_buffer every time we find it's insufficient (bsc#940992) - Upstream version cs: e8888b98cd7dbdfb986c1a46bdb4b113b96e914f- crm_resource: Indicate common reasons why a resource may not start after a cleanup - pengine: Ensure fencing of the DC precedes the STONITH_DONE operation - crm_resource: Compensate for -C and -p being called with the child resource for clones - ipc: Fix output formats (bsc#940992) - fencing: ensure "required"/"automatic" only apply to "on" actions - fencing: Remove unnecessary casts (bsc#940711) - crm_simulate: Prevent segfault on arches with 64bit time_t (bsc#940711) - ipc: Correctly compare values for the size of ipc buffer and prevent suggesting a negative value when it's insufficient (bsc#940992) - xml: Reduce severity of noisy log message (bsc#950551) - crm_resource: Correctly clean up failcounts for inactive anonymous clones - crmd: Avoid cancelling transitions when we tell nodes to shutdown - systemd: drop legacy SysVStartPriority from service units - crm: Set the attribute from remote node. - Upstream version cs: 4ad07f5f464c84b80c739922bd9fd708e8d36e5a- dbus: Remove redundant ref/unref of pending call records - stonithd: potential device list corruption - cib: don't destroy peer cache in peer status callback - systemd: Ensure pending structs are correctly unreferenced - systemd: Track pending operations so they can be safely cancelled - crmd: memory leak in CIB callbacks - attrd: memory leak in legacy attrd's CIB callback - attrd: memory leak in CIB callback - libcib: allow free function for user data supplied to CIB callbacks - xml: Prevent use-of-NULL in crm_xml_dump() - crm_mon: Memory leaks - Upstream version cs: 3fb7f71bf9ca2a3d6e1187fa3b74c7841d6af5a7- pengine: properly handle blocked clone actions - pengine: Correctly bypass fencing for resources that do not require it - libservices: potential memory leaks when executing systemd actions - libservices: memory leak in DBus-related log messages - crmd: memory leaks in recurring operation history - pengine: Addtion of the clone resource clone-min metadata option - Upstream version cs: 3d781d3fe61504c841e3c89b2e8ccff8195d4af6- Rebase bug-806256_pacemaker-log-level-notice.patch - Build: Update version numbers to 1.1.13 in version.m4 and sample spec file - fencing: Broadcast uname as soon as a peer's state has changed (bsc#938410) - fencing: remap sequential topology reboots to all-off-then-all-on - fencing: remap sequential topology reboots to off - fencing: support remapping reboots when processing fencing query results - fencing: treat remapped reboots as reboots when appropriate - fencing: support remapping reboots in fencing query results - crmd: check for errors when searching for CIB daemon's load file - libcib,libfencing,tools: memory leaks from xmlGetNodePath() - attrd: use-after-free in attrd_client_update() - fencing: memory leak when searching for a target's fencing topology - lrmd: memory leak when freeing command structure - libcluster: work around peer cache destruction in client status callbacks - fencing: add support for operation phases to device properties - fencing: add support for operation phases - crmd: Do not enforce restart for resources that support reload and don't support any unique parameters - crmd: Do not enforce restart for changes of non-unique parameters - cts: change the stack from openais (white-tank) to corosync (plugin v0) in set_stack of environment.py (bsc#936149) - Upstream version cs: bd8c4b5a30c9cacd0257fe50ab50d3a6436db42a- crmd: Make resource_supports_action() really general - crmd: Remove a duplicate invocation of snprintf() - pengine: clear failures after reconnect_interval expires - RA: Prevent an error message on stopping "Dummy" resource - PE: Ignore comment blocks when unpacking the cib - fencing: use "off" timeout when remapping "reboot" to "off" - fencing: do not set call options twice in query - crmd: don't synthesize op failures during shutdown - lrmd: prevent double free after unregistering stonith device for monitoring (bsc#1035822) - libcommon: crm_ipc_get_fd() must set errno on error - PE: Record the execution date in PE files so we can re-use it in crm_simulate - pengine: allow guest remote nodes using containers/vms to be nested in a group resource - pengine: Resolve memory leak in expand_notification_data() - cib: Prevent use-after-free and return -EINVAL when attempting to delete the whole "/cib" (bsc#934609) - cib: Prevent use-after-free when invoking "cibadmin --delete-all --xpath" (bsc#934609) - crmd: Prevent segfault when erasing resources from disconnected remote nodes - pengine: do not timeout remote node recurring monitor op failure until after fencing - crmd: No need to re-process actions we've already marked as failed - crmd: All pseduo ops must be allowed to complete - crm_simulate: Optionally include action IDs in the dot graph - fencing: properly decide whether a topology fencing device has been found - fencing: properly sort peers by number of fencing devices found - crmd: Record actions in the CIB as failed if we cannot execute them - pengine: do not stop notify a fenced node that the rscs on the fenced node stopped - pengine: fixes segfault in pengine when fencing remote node - remote: do not fail operations because of a migration - remote: handle merging duplicate recurring monitors for connection rsc - pengine: cl#5235 - Prevent graph loops that can be introduced by "load_stopped -> migrate_to" ordering - PE: Exclude nodes which don't match any exclusive discovery rules - Log: improve IPC connection error messages - Log: make syslog less noisy - lrmd: cancel currently pending STONITH op if stonithd connection is lost - fencing: Correct the all_topology_devices_found() implementation - crmd: Pre-emptively fail in-flight actions when lrmd connections fail - PE: Include a list of all and available nodes with notifications - lrmd: set recv timeout upper bound for tls connections - services: prevent recurring monitors from colliding with other operations - crmd: handle resources named the same as cluster nodes - crmd: make actions incompletable after remote-node fails - crm_simulate: Correctly invoke the policy engine library - libcluster: overhaul peer cache management - crmd: Prevent use-of-NULL - crm_report: Enable password sanitizing by default - PE: Keep the size of the secure list small in the cib - PE: Reduce noise when sanitized policy engine files are replayed - attrd: handle removals of cluster peers and remote peers consistently - libcluster: avoid possibility of invalidating a hash table iterator - membership: Ensure peer cache management supports all stacks - libcluster: do not re-add peer entries for exiting nodes - PE: Skip unrunnable actions when one-or-more is in effect - PE: Ensure recurring monitor operations are cancelled when clone instances are de-allocated - systemd: No need to trigger assert if cannot obtain an unit (bsc#931271) - dbus: Use operation timeout for dbus reply timeout (bsc#931271) - fencing: correct choice of fencing topology level - crm_shadow: Fix "crm_shadow --diff" (bsc#931166) - cib: Calculate and add digest for a patchset after accepting changes for the target xml (bsc#931114) - remote: enable reloads for select remote connection options - crmd: fence remote node after connection failure only once - remote: reconnect_delay option for remote nodes to delay reconnect after fence - tools: ignore stderr from crm_mon when running via systemd - xml: update RelaxNG schema for crm_mon XML output - Fencing: Correctly handle changes to the fencing topology - fencing: Allow complex configurations to apply to multiple hosts - tools: Update regression tests for ACL fixes - tools: improve failed actions display in crm_mon - tools: implement printing tickets in crm_mon HTML/XML output - tools: implement printing negative location constraints in crm_mon HTML/XML output - tools: implement printing operations and failcounts in crm_mon HTML/XML output - tools: implement printing node attributes in crm_mon HTML/XML output - tools: improve cluster summary display in crm_mon - tools: improve guest node output in crm_mon - tools: prettify plaintext output - tools: prettify crm_mon HTML output - tools: prettify crm_mon --simple-status output - crm_report: Allow log file discovery to be disabled - crm_resource: Support debugging promote and demote operations - fencing: Allow semi-colon delimiter for pcmk_host_list - Upstream version cs: ef86b494a411ce920eb18b9b6541a3a0425a41e0- Update to version 1.1.13 - Build: Update library versions - Build: Move new struct members to the end for backwards compatibility - Fencing: Gracefully handle invalid metadata from agents - Upstream version cs: 6052cd16c2f455809f8088af76ce86483bf98353 (Pacemaker-1.1.13)- pengine: cl#5130 - Only check the capacities of the nodes that are allowed to run the resource (FATE#313105) - cib: Correctly add "update-origin", "update-client" and "update-user" attributes for cib (bsc#931177) - fencing : Correction of the log output of the practice node of stonith. - Upstream version cs: a0449d443fa5c834207def5fe36a117a53c334d6- xml: Correctly create v1 patchsets when deleting attributes (bsc#931170) - xml: Prevent potential use-of-NULL (bsc#929960) - Upstream version cs: 677f53216662d121a47b4c7683ec3749c614437e- cib: No need to enforce cib digests for v2 diffs in legacy mode (bsc#929960) - cib: Ability to upgrade cib validation schema in legacy mode (bsc#929960) - xml: Do not dump deleted attributes (bsc#929960) - cib: Revert d153b86 to instantly get cib synchronized in legacy mode (bsc#929960) - cib: Enable cib legacy mode for plugin-based clusters (bsc#929960) - Build: CRM_STATE_DIR is created dynamically when needed - Tools: Repair expected output for ACLs - Build: Prevent rpm packaging conflicts - pengine: cl#5130 - Choose nodes capable of running all the colocated utilization resources (FATE#313105) * Drop obsolete pacemaker-colocated-utilization.patch - Upstream version cs: 0b79da3e73fe2ced8b9602aa59d55873d857b3e7- crmd/pengine: implement on-fail=ignore without allow-fail (bsc#981731) - pengine: Prevent use-after-free in sort_rsc_process_order() (bsc#930368) - crmd: Prevent the old version of DC from being fenced when it shuts down for rolling-upgrade (bsc#929955) - xml: Fix upgrade-1.3.xsl to correctly transform ACL rules with "attribute" (bsc#929681) - crmd/pengine: handle on-fail=ignore properly (bsc#981731) - crmd: respect start-failure-is-fatal even for artifically injected events (bsc#981731) - crmd: don't update fail count twice for same failure (bsc#950450, bsc#981731) - crmd: report operation rc as advertised instead of status (bsc#981731) - xml: add RelaxNG schema for crm_mon XML output - Upstream version cs: c9ad9cd503f071391efe17d3c45d578d6f152acd- pengine: process rsc parameters during unpack (bsc#929842) - pengine: handle setting container attribute in the correct location (bsc#929842) - lrmd: move isolation wrappers to hidden directory (bsc#929842) - mainloop: resolves race condition mainloop poll involving modification of ipc connections (bsc#929835) - Upstream version cs: f47ea56b4ec23c7d8e0c129535a9b49cdbd80482- fencing: Correctly make args for fencing agents (bsc#925751) - fence_legacy: Avoid passing 'port' to cluster-glue agents (bsc#925751) - corosync: Bug cl#5232 - Somewhat gracefully handle nodes with invalid UUIDs - HealthSMART: OCF_RESKEY_drives could contain multiple values - pengine: restart master instances on instance attribute changes - spec: move report.common and report.collector to cli package - pengine: only kill process group on timeout when on-fail does not equal block. - lrmd: Hint to child processes that using sd_notify is not required (bsc#956626) - Agents: Fix the HealthSMART metadata - make targetted reprobe for remote node work, crm_resource -C -N - crmd: include remote nodes when forcing cluster wide resource reprobe - crm_mon: Support of the start from systemd of crm_mon - Upstream version cs: 195559d47b0e9186b5d131981f6f7fee96ecad76- Rebase: * pacemaker-NodeUtilization-RA.patch - docker-wrapper: per resource logging of lrmd and remote client tool - pengine: Avoid trailing whitespaces when printing resource state - pengine: cl#5207 - Display "UNCLEAN" for resources running on unclean offline nodes - docker-wrapper: add reuse option for presistent containers - docker-wrapper: only override exit reason if docker daemon is inactive - pengine: handle isolated resource scenario, cloned group of isolated resources - pengine: handle cloned isolated resources in a sane way - crm_report: More patterns for finding logs on non-DC nodes - lrmd: Use original timestamps when reporting multi-step systemd operations - lrmd: report original timeout when systemd operation completes - systemd: improve unit files - PE: Turn off legacy unpacking of resource options into the meta hashtable - acl: Do not delay evaluation of added nodes in some situations (bsc#927828: CVE-2015-1867) - docker-wrapper: add demote, promote, and notify actions for multistate rsc - docker-wrapper: properly forward key value pairs during isolation - attrd: fixes double free in attrd legacy - lrmd: do not let isolation wrappers inherit the wrapper attribute, or it makes a loop - pengine: pass node name of pcmk host into isolated resources - lrmd: isolation wrappers are moved from containers to isolation OCF namepace - pengine: Fix colocation with unmanaged resources - stonith-ng: Correctly track node state - stonith-ng: No reply is needed for CRM_OP_RM_NODE_CACHE - crm_resource: Fix output format of the warning from --force-start - crm_resource: Display the locations of all anonymous clone children when supplying the children's common ID (bsc#870339) - cib: Correctly track node state - Upstream version cs: 7a2e3ae6b736621933b24f4cdc9ea260021d878d- Rebase: * bug-806256_pacemaker-log-level-notice.patch * pacemaker-NodeUtilization-RA.patch * pacemaker-colocated-utilization.patch - crmd: All peers need to track node shutdown requests (bsc#917625) - crmd: Cached copies of transient attributes cease to be valid once a node leaves the membership (bsc#917625) - crmd: Wait for all pending operations to complete before poking the policy engine - lrmd: preserve exit reason string when isolation wrappers are in use - docker-wrapper: properly separate docker and resource specific attributes - docker-wrapper: set authkey file permissions and properly set container 'node name' during start - systemd: Trick systemd into not stopping our services before us during shutdown (bsc#913251) - mcp: Allow a configurable delay when debugging shutdown issues - systemd: Kindly ask dbus NOT to kill the process if the dbus connection fails (bsc#931271) - systemd: Tell systemd not to take DBus down from underneath us (bsc#913251) - cib: Correctly set up signal handlers - PE: Do not record duplicate copies of the failed actions - lrmd: enable ipc proxy for docker-wrapper privileged mode - lrmd: properly handle poke requests in lrmd client when using ipc - spec: add docker-wrapper directory to spec file - pengine: disable migrations for resources with isolation containers - pengine: disable reloading of resources within isolated container wrappers - pengine: ability to launch resources in isolated containers - extra: docker container tech wrapper script for pcmk remote - tools: crm_mon prints Stopped clones only if --inactive was specified - tools: display node names more consistently in crm_mon output - tools: Improve crm_mon output with certain option combinations - tools: make crm_mon last updated header consistent across formats - remote: pcmk remote client tool for use with container wrapper script - crmd: Reset stonith failcount to recover transitioner when the node rejoins (bsc#921102) - systemd: fix crash caused when canceling in-flight operation - Upstream version cs: 3e93bc1dd6c1c3f2ee101f754567aa007b24bb5e- PE: Support non-actionable degraded mode for OCF - lrmd, services: interpret LSB status codes properly - tools: add crm_resource --wait option - tools: attrd_updater supports --query and --all options - attrd: attrd supports queries - pengine: remove unnecessary whitespace from notify environment variables - tools: free allocated memory correctly in crm_resource - attrd: properly write attributes for peers once uuid is discovered - cib: assignment where comparison intended - attrd: only send ack for recognized operations - attrd: make each client operation handler its own function - tools: attrd_updater supports private attributes - attrd supports private attributes (not written to CIB) - pengine: Reschedule specific monitors when resource definitions have changed (bsc#914761) - pengine: Resolve memory leaks (bsc#914761) - Upstream version cs: e32080b460f81486b85d08ec958582b3e72d858c- properly record stop args after reload - pengine: Do not reschedule monitors that are no longer needed while resource definitions have changed (bsc#914761) - Build: Fix building when heartbeat support is disabled - fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136, FATE#318381, bsc#970733) - extra: Use crm_simulate for the showscores script - attrd: refresh should force an immediate write-out of all attributes - service: Leave synchronous calls to be free'd by the caller - service: Additional pointer safety - crmd: Add "on_node" attribute for *_last_failure_0 lrm resource operations (bsc#918839) - crm_mon: Fill CRM_notify_node in traps with node's uname rather than node's id if possible (bsc#918839) - pengine: ensure if B is colocated with A, B can never run without A - cib: automatically update .sig files in file backends when clients update live CIB - cib: file-based backends now detect whether file is live CIB - lrmd: add back support for class heartbeat agents - lrmd: provide fake meta data for ra class heartbeat - crm_resource: Use-after-free when restarting a resource - cli: Ensure subsequent unknown long options are correctly detected - crmd: Bug rhbz#1181824 - Ensure the DC can be reliably fenced - attrd_updater: Allow attributes to be set for other nodes - native_print: report target-role as well - membership: fix crm_update_peer_proc to NOT ignore flags if partially set - crmd: don't trigger a stonith_reconnect if no longer required - Upstream version cs: fa1311a0159588385f24cd8c3530233f4b90f3a9- Add pacemaker-Wno-format-signedness.patch to disable - Wformat-signedness added by GCC 5 and enabled by -Wformat=2- pengine: Handle ordering between stateful and migratable resources (bsc#881160) - crmd: Check "watchdog" daemon option before setting "have-watchdog" property - crmd: Correctly add the local option that validates against schema for pengine to calculate - Upstream version cs: 3021d731fdeba29e1136c117a62f3201785be6ea- crm_standby: update accepted options to match documentation - cts: Fix bashisms in LSBDummy script - pengine: fixes pengine crash with orphaned remote node connection resource - PE: Do not aggregate children in a pending state into the started/stopped/etc lists - acl: Correctly implement the 'reference' acl directive - Upstream version cs: 03ec61210c82471161f6cf3366e8afc30d737d67- pengine: imply stop in container node resources when host node is fenced - Build: Fix building if ncurses doesn't provide pkg-config files - xml: Do not change the ordering of properties when applying v1 cib diffs - xml: Do not prune leaves from v1 cib diffs that are being created with digests - Upstream version cs: 4109f1539a625bfa3e884d19ab2fc42d7a4daec4- xml: add 'require-all' to xml schema for constraints - pengine: require-all feature for ordered clones - xml: Ensure ACLs are reapplied before calculating what a replace operation changed - cib: Ensure file-based backends treat '-o section' consistently with the native backend - crmd: resolves memory leak in crmd. - pacemakerd: resolves memory leak of xml structure in pacemakerd - ipc: use server enforced buffer during ipc client send - pengine: do not recording pending migrate_to ops for pacemaker remote - crmd: never stop recurring monitor ops for pcmk remote during incomplete migration - pengine: prefer migration target for remote node connections - pengine: properly handle ordering during remote connection partial migration - crmd: Ensure remote connection resources timeout properly during 'migrate_from' action - crmd: gracefully handle remote node disconnects during op execution - pengine: Fence baremetal remote when recurring monitor op fails - crmd: Handle remote connection failures while executing ops on remote connection - remote: Treat recv msg timeout as a disconnect - pengine: properly recover remote-nodes when cluster-node proxy goes offline - systemd: Correctly handle long running stop actions (bsc#948989) - crm_resource: Include group members when calculating the next timeout - crm_resource: Ensure --restart sets/clears meta attributes - crm_resource: Clean up memory in --restart error paths - Build: Use a wrapper for realloc() which calls abort when we run out of memory - services: Prevent potential use-of-NULL - crm_resource: Memory leak in error paths - crmd: Mistake of the set of the variable. - Upstream version cs: d0139e9a00c32b9bc1d7d206d6210126045b49be- crm_node: Correctly remove nodes from the CIB by nodeid - fencing: Allow nodes to be purged from the member cache - xml: cl#5231 - Unset the deleted attributes in the resulting diffs (bsc#905641, bsc#967254) - fencing: stonith -l option for custom log - cib: Avoid nodeid conflicts we don't care about - Membership: Detect and resolve nodes that change their ID - attrd: Simplify how node deletions happen - attrd: Clean out the node cache when requested by the admin - crm_resource: Allow resource restart operations to be node specific - crm_resource: Implement --timeout for resource restart operations - crm_resource: Calculate how long to wait for a restart based on the resource timeouts - crm_resource: Implement an intelligent restart capability - crm_failcount: Better error reporting when no resource is specified - cib: tls sock cleanup for remote cib connections - Upstream version cs: 7dd90226e10035340d6707d9fd2b04f2e0141194- pengine: make resource-discovery work with location rules - services: Conditionally clean up services actions - Upstream version cs: 5093c095c5f517ab58375b2b69ecfc5516c86b5b- Drop conditional BuildRequires of system-devel: it was required one line lower unconditionally. - Replace remaining systemd-devel BuildRequires with pkgconfig(systemd).- pengine: exclusive discovery implies rsc is only allowed on exclusive subset of nodes - dbus: handle dispatch queue when multiple replies need to be processed - dbus ref count leaks - dbus: Ensure both the read and write queues get dispatched - systemd: Ensure failed monitor operations always return - Perform systemd reloads asynchronously - Upstream version cs: cd7c9abbcfc620aa84194ee07aade142240db15a- watchdog: Allow startup without sbd - service: Prevent potential use-of-NULL in metadata lookups - dbus: Fail gracefully if malloc fails - crmd: Prevent use-of-NULL during reprobe - crmd: Correctly obtain SBD_WATCHDOG_TIMEOUT from the environment - pengine: add #kind=remote for baremetal remote-nodes - Officially support the resource-discovery attribute for location constraints - xml: fix xml.c memleak in "missing upgrade XSLT" case - Prefer to inherit the watchdog timeout from SBD - stonith-ng: Correctly observe the watchdog completion timeout - sbd: Attempt to locate sbd via its pid file - Fencing: If configured, wait stonith-watchdog-timer seconds for self-fencing to complete - Resolve some potential issues spotted by clang and coverity - PE: Watchdog integration is sufficient for fencing - Fencing: Correctly wait for self-fencing to occur when the watchdog is in use - Fencing: Ensure the hostlist parameter is set for watchdog agents - crm_resource: Allow -M location to be reinforced with -f even if rsc is already on node - mcp: Turn on sbd integration if pacemakerd finds it running - pengine: Fix the behaviors of multi-state resources with asymmetrical ordering (bsc#899403) - lrmd: Prevent glib assert triggered by timers being removed from mainloop more than once - cib: Improved tracing of callbacks - Upstream version cs: a9c81774b89f21f990be255f9862446d1a38afee- remote: advertise default port correctly, further adjust default timeout periods - remote: report timestamps for remote connection resource operations - pengine: allow remote-nodes to be placed in maintenance mode - xml: Prevent assert errors in crm_element_value() on applying a patch without version information (bsc#900296) - pengine: prevent disabling rsc discovery per node in certain situations - crm_resource: avoid deletion of lrm cache on node with resource discovery disabled. - pengine: per-node control over resource discovery - mainloop: fix potential segfault for fd = 0 - ping: Correct metadata for attempts parameter (bsc#899324) - ping: Pass extra options to fping (bsc#899324) - ping: Remove incorrectly advertised migrate_to|migrate_from (bsc#899324) - ping: Add use_fping parameter (bsc#899324) - ping: Correctly advertise multiplier default (bsc#899324) - pengine: resource discovery mode for location constraints - cib: Ensure upgrade operations from a non-DC get an acknowledgement - lrmd: cancel pending async connection during disconnect - systemd: Ensure we don't call dbus_message_unref() with NULL - systemd: Perform monitor operations without blocking - dbus: Notice when dbus connections get disabled - pengine: allow baremetal remote-nodes to recover without requiring fencing when cluster-node fails - crmd: do not remove connection resources during re-probe - pengine: only fence baremetal remote when connection can fails or can not be recovered - ipc: properly allocate server enforced buffer size on client - remote: advertise more reasonable timeout periods for remote-nodes connections - crmd: properly update job limit for baremetal remote-nodes - crmd: Remote-node throttle jobs count towards cluster-node hosting conneciton rsc - crmd: Ensure throttle_mode() does something on Linux - systemd: Perform actions asynchronously (bsc#956500) - crm_attribute: Correctly update config options when -o crm_config is specified - crmd: Fixes crash when remote connection migration fails - pengine: fixes segfault caused by malformed log warning - Allow fail-counts to be removed en-mass when the new attrd is in operation - fencing: Use the correct define for origin - fencing: Reject actions for devices that haven't been explicitly registered yet - cts : change default cluster stack from openais to corosync (bsc#894871) - crm_resource: Ensure fail-counts are purged when we redetect the state of all resources - corosync: Avoid unnecessary repeated CMAP API calls (bsc#870771) - cib: Do not update on disk backups if we're just querying them - mcp: Allow orphan children to initiate node panic via SIGQUIT - Support machine panics for some kinds of errors (via sbd if available) - Fencing: Allow the cluster to recover resources if the watchdog is in use - crmd: If configured, trigger the watchdog immediately if we loose quorum and no-quorum-policy=suicide - crmd: Ensure a watchdog device is in use if stonith-watchdog-timeout is configured - Fencing: Advertise the watchdog device for fencing operations - PE: Allow natural ordering of colocation sets - stonith-ng: Reset mainloop source IDs after removing them - Fencing: Force 'stonith-ng' as the system name - crm_mon: Repair notification delivery when the v2 patch format is in use (bsc#909286) - mcp: Teach pacemakerd to ignore SIGHUP - Rebase bug-806256_pacemaker-log-level-notice.patch - Upstream version cs: 28aee948cebd51305a2cdc3ec4f94252ce975655- cluster: Invoke crm_remove_conflicting_peer() only when the new node's uname is being assigned in the node cache (bnc#870771) - mcp: set environment variable which the cluster-glue module needs - services: Refector services os execute function - Upstream version cs: 266d5c2484716111616bcd0f32d9b94bc49baa77- logging: correctly initialized default log file (bnc#883567) - Upstream version cs: 362f181a387e0a0a9f04e0da84d6c5906d71dd20- crm_resource: Print a clear message if the attribute is not found for the resource (bnc#890400) - lrmd: fix rescheduling of systemd monitor op during start - services: restore SIGPIPE default behavior for child processes - lrmd: prevent \n from being printed in exit reason output - lrmd: pass exit reason prefix to ocf scripts as env variable - Upstream version cs: dad4cebccdb5a4bcdb8fb94e676f6df006ac0846- crm_diff: Support generating a difference without versions details if --no-version/-u is supplied (bnc#888726) - crmd: When container's host is fenced, cancel in-flight operations - crm_mon: add exit reason to resource failure output - lrmd: store failed operation exit reason in cib - Upstream version cs: 1040002ecc1a0dfec9f0561f79936cbe64d716db- Bug rhbz#1067544 - Tools: Correctly handle --ban, --move and --locate for master/slave groups - lrmd: Log with the correct personality - mainloop: implement gio_poll_dispatch_mod - Upstream version cs: 483f48a1921241f1f5976a100a171785dc327192- Update to version 1.1.12 - Log: Turn off the default log file if a real one is specified - Log: Do not unconditionally send crm_perror output to stderr - Log: allows the user to specify a log level that is output to syslog - Upstream version cs: 561c4cfda1b09b31b60fd5f73644ee05348f41fb (1.1.12)- logrotate: maxsize is not supported by older versions (bnc#883567) - Tools: Non-daemons shouldn't abort just because xml parsing failed - Log: Default to emitting CRIT messages only until logging is fully configured - Logging: Bootstrap daemon logging before processing arguments but configure it afterwards (bnc#883567) - dbus: Return 'null' if we cannot connect via dbus - Upstream version cs: 026944ebfad7c4b2da5a6864a9d763bf37e0e088- systemd: Ensure the retry logic is also exercised for the 'service' class - crm_simulate: Remove resource states and transient attributes when a node is marked as down - crm_verify: Perform a full set of calculations whenever the status section is present (bnc#886479) - PE: Correctly warn when resources require fencing but fencing is disabled (bnc#886479) - PE: Always use pe_fence_node to mark nodes as unclean - lrmd: Handle systemd reporting 'done' before a resource is actually stopped - Upstream version cs: c468fa06483152c29529f81aa0b5ccf37da8b2af- attrd: Remove offline nodes from node cache for "peer-remove" requests (bnc#870771) - membership: Prevent use-after-free in reap_crm_member() (bnc#870771) - cluster: Remove unknown offline nodes with conflicting unames from node cache (bnc#870771) - crmd: Remove state of unknown nodes with conflicting unames from CIB (bnc#870771) - Upstream version cs: 440da7f59ac4bed16a0289e33f04d2635b335c70- extra: Add logrotate configuration file for /var/log/pacemaker.log (bnc#883567) - PE: Correctly detect empty tags - xml: Ensure realloc didn't fail - crmd: Only write fence_averride if open() returns a positive file descriptor - tools: Non-recurring memory leak - PE: Potential use-of-NULL - ipc: Buffer size cannot be negative - xml: Prevent possible array underflow - mcp: Let daemons know when they have been respawned by the mcp - cts: fix RemoteBaremetal step2 move resource action failed issue - PE: Correctly observe requires=nothing - crmd: Remove unknown nodes with conflicting unames from CIB (bnc#883240) - controld: Return OCF_ERR_INSTALLED instead of OCF_NOT_INSTALLED (bnc#883729) - lrmd: Prevent OCF agents from logging to random files due to "value" of setenv() being NULL (bnc#883524) - cts: fix shutdown pattern not found issue - Fix: ignore SIGPIPE with gnutls is in use - crmd: avoid double free caused by nested hash table removal - crm_report: Correctly detect large files - cib: cl#5222 - Prevent assert in xml_calculate_changes() on performing cib operations (bnc#881575) - Upstream version cs: c3f1a7f8912f3d6d17497dd8af0b69fe0708b2b1- Bug cl#5219 - PE: Allow unrelated resources with a common colocation target to remain promoted (bnc#899175) - Bug cl#5222 - Enable legacy mode whenever a broadcast update is detected (bnc#881575) - xml: Prevent incorrect xml diffs from corrupting the cib (bnc#878362) - mainloop: implement gio_poll_dispatch_mod - cluster: Prevent search of unames from attempting to create node entries for unknown nodes (bnc#881884) - Upstream version cs: 97629ded958f76652350569a54303b3cd25d1d7e- crm_report: Gracefully handle rediculously large logfiles - Bug cl#5222 - cib: Repair rolling update capability (bnc#881575) - cib: Use a better option name for enabling the legacy cib diff code (cl#5222, bnc#881575) - remote: clear remote-node status correctly - pengine: properly handle fencing of container remote-nodes when the container is orphaned - remote: Handle request/response ipc proxy correctly - cib: Prevent assert on sending cib sync requests (cl#5222, bnc#881575) - crm_simulate: Clean up temporary shadow files on exit (bnc#879934) - pengine: cl#5200 - Before migrating utilization-using resources to a node, take off the load that will no longer run there if it's not introducing transition loop (Rework cl#5044, lf#2599, bnc#695440) - Fencing: Cache metadata lookups to avoid repeated blocking during device registration - pengine: properly place resource within a container when container is a remote-node. - mainloop: Better handle the killing of processes in the act of exiting - services: Remove cancelled recurring ops from internal lists as early as possible (bnc#888586) - services: Remove file descriptors from mainloop as soon as we have drained them (bnc#888586) - pengine: Don't report a resource as restarting when it is a moving multistate resource - pengine: avoid assert by searching for stop action on correct node during LogActions - Upstream version cs: 734e6b538b0a037f9e7d0709f450bd664f26c332- cib: Drop the message serverity now that the cause is well understood - crmd: Avoid spamming the cib by triggering a transition only once per non-status change - Upstream version cs: 559f733e8818a96085134cd2a34efc280c512a2a- pengine: Prevent possible segfault (bnc#880258) - attrd: Ensure attribute dampening is always observed - Bug cl#5213 - Limit the scope of the previous commit to the masters role - membership: Avoid duplicate peer entries in the peer cache - Bug cl#5184 - Ensure pending probes that ultimately fail are correctly updated (bnc#804763, bnc#879034) - Upstream version cs: 9776707a6232f25812009145fafa8a64c5b53910- Rebase: * pacemaker-colocated-utilization.patch - Bug cl#5213 - Ensure role colocation with -INFINITY is enforced - pengine: Mark unrunnable stop actions as "blocked" and show the correct current locations (bnc#878662) - pengine: Block restart of resources if any dependent resource in a group is unmanaged (bnc#878662) - systemd: Try to handle dbus actions that complete prior to configuring a callback - mainloop: Canceling in-flight operations should not fail if child process has already exited. - Bug rhbz#1097457 - Limit the scope of the previous fix and include a helpful comment - Bug cl#5212 - Do not promote instances when quorum is lots and no-quorum-policy=freeze - Bug rhbz#1097457 - Prevent invalid transition when resource are ordered to start after the container they're started in - Fix: fix small memory leaks - Upstream version cs: 25ebca2b83df9263aedb944ea4eeb53468e90e83- added necessary macros for systemd files- pengine: Use "#site-name" in rules for setting site-specific instance attributes - pengine: Use "#cluster-name" in rules for setting cluster-specific instance attributes (FATE#316118) - crmd: Set "cluster-name" property to corosync's "cluster_name" by default for corosync-2 (FATE#316118) - pengine: Fixed so that it could change while a setup of "startup-fencing" starts. - crmd: Use correctly signed inputs to sscanf() - PE: Correctly handle origin offsets in the future - iso8601: Different logic is needed when logging and calculating durations - xml: Do not prune meaningful leaves from v1 patchsets - Upstream version cs: da5aaab97ca5b7858f2aac98107a1a7ffc3e4252- use _rundir macro- Rebase: * pacemaker-NodeUtilization-RA.patch * pacemaker-colocated-utilization.patch - xml: Clean up schema list at exit - pengine: Support site-specific instance attributes based on rules for stretch cluster - pengine: Support cluster-specific instance attributes based on rules (FATE#316118) - crmd: Ensure crm_config options are re-read on updates - Resolve all clang analyser defects - xml: Check all available schemas when doing upgrades - Changes to the ACL schema to support nodes and unix groups - tools: Allow crm_shadow to create older configuration versions - xml: Prevent use-after-free when comparing two xml documents - cib: Resolve memory leaks in query paths - xml: Correctly subtract xml with v1 patchsets - fencing: Advertise support for reboot/on/off in the metadata for legacy agents - fencing: default to 'off' when agent does not advertise 'reboot' in metadata - fencing: Execute all required fencing devices regardless of what topology level they are at - fencing: Fence using all required devices - fencing: fixed so that change of could be handled correctly. - Upstream version cs: 42ae0e3cb50bb9e19dba7d1ad1ea69255bef5370- pengine: Fix memory leak in expand_tags_in_sets() - PE: Memory leak - PE: Do not initiate fencing for unclean nodes when fencing is disabled - crm_node: Only remove the named resource from the cib - pengine: Support site-specific instance attributes based on rules (FATE#316118) - pengine: Ignore failure-timeout only if the failed operation has on-fail="block" (bnc#871175) - Upstream version cs: f7859e2e06c8cf320482c3e4b447ddbe0a96fe83- pengine: Support cib object tags (FATE#315101) - crmd: Correctly detect changes of ticket state (bnc#872794) - Upstream version cs: 3f7ec44b51825898e3e30784ca4df09e3f45bf40- Rebase: * bug-812269_pacemaker-fencing-device-register-messages.patch - Build: Update versions in configure.ac and sample spec file - fencing: Do not unregister/register all stonith devices on every resource agent change - PE: Unfencing is based on device probes, there is no need to unfence when normal resources are found active - pengine: handles edge case where container order constraints are not honored during migration - pengine: Allow container nodes to migrate with connection resource - xml: Resolve memory leak when logging xml blobs - PE: Do not unfence nodes that are offline, unclean or shutting down - PE: Ensure unfencing only happens once, even if the transition is interrupted - crmd: Actions can only be executed if their pre-requisits completed successfully - crmd: Do not erase the status section for unfenced nodes - Fencing: Correctly record which peer performed the fencing operation - lrmd: Expose logging variables expected by OCF agents - logging: Simplify processing of logging directives - logging: daemons always get a log file, unless explicitly set to configured 'none' - PE: Ensure unfencing occurs before fencing devices are (re-)probed - fencing: Filter self-fencing at the peers to allow unfencing to work correctly - fencing: Automatically switch from 'list' to 'status' to 'static-list' if those actions are not advertised in the metadata - lrmd: Provide stderr output from agents if available, otherwise fall back to stdout - fencing: properly detect new fencing devices for v2 cib updates - acl: Prevent use-of-NULL - cts: automatically determine whether to run RemoteBaremetal (bnc#856353) - pengine: Correctly search failcount (bnc#880520) - Upstream version cs: ff74a591e670dbdb86f7cddeec989167de521216- pengine: Support id-ref in nvpair with optional "name" (FATE#316118) Drop the patches that have been merged upstream: * pacemaker-pengine-nvpair-id-ref.patch * pacemaker-pengine-nvpair-id-ref-test.patch - Upstream version cs: 6442c5a67cdd4cbaeedb2c532e0dc0667a79c202- xml: INFINITY could overflow for 16-bit ints - explicitly cast it - xml: Correctly determine the lowest allowed schema version - xml: Construct the table of supported schemas - cib: All schema upgrade requests must go via the DC - cib: Determine the best value of validate-with if one is not supplied - acl: Ensure known users are not able to read the cib by default - xml: Add missing schema file - Upstream version cs: d9fbba56804a7a7bcceaa5d4b7e29e3f15fc0e59- crmd: Correctly react to successful unfencing operations - PE: Delay unfencing until after we know the state of all resources that require unfencing - PE: Fencing devices default to only requiring quorum in order to start - PE: Automatically re-unfence a node if the fencing device definition changes - pengine: Only report 'migrate' in transition summary if migration is actually taking place - crm_node: Set correct subsystem in node rm cache msg - crm_node: Prevent use-after-free in tools_remove_node_cache() - crmd: make resource ID case sensitive - fencing: Correction of the registration from a difference. - crm_report: Add support for ISO8601 time format in logs (bnc#870886) - PE: Potential memory leak - xml: Support resources that require unfencing - crmd: make node_state erase correctly - xml: Add the ability to have lightweight schema revisions - xml: Split up the RelaxNG schema files so they're easier to version individually - crm_get_msec: prevent integer overflow - corosync: Reduce log severity for a redundant message (bnc#870624) - attrd: Reduce log severity for normal messages (bnc#870624) - cib: When data was old, it fixed so that the newest cib might not be acquired. - crm_attribute: Default --lifetime to forever when using --node (bnc#870696) - Upstream version cs: 76579e813b5aaa1972d400055233519f58bbc0c6- pengine: Do not fence remote-node entries left over in the node section that have no connection rsc - pengine: properly handle remote-node without connection resource. - xml: Update xml validation to allow '' - cib: allow setting permanent remote-node attributes - Upstream version cs: d63eaf41fa8173de3e29873d0461bfb888b83b37- xml: Allow first-acl-match-wins semantics to be supported if desired - crm_report: extract additional DLM lockspace data - xml: If validate-with is missing, we find the most recent schema that accepts it and go from there - tools: fix "crm_shadow --reset " - controld: Remove '-q 0' from default dlm_controld arguments - acl: Authenticate pacemaker-remote requests with the node name as the client - controld: Verify killall is available on resource start - Prevent use-of-NULL spotted by coverity - crmd: Correctly detect changes to the configuration root - crmd: Fenced nodes that return prior to an election do not need to have their status section reset - xml: Do not log deleted attributes - xml: Correctly mark the parent's of deleted attributes as dirty - crm_diff: Allow the generation of xml patchsets without digests - crmd: Prevent memory leak when accepting a new DC - xml: Find the minimal set of changes when part of a document is replaced - xml: Create the correct diff when only part of a document is changed - Upstream version cs: 61e95e4864be0301be528874eed65266f4e62cf0- pengine: fixes invalid transition caused by clones with more than 10 instances - services_action_cancel: Interpret return code from mainloop_child_kill() correctly - fencing: make hashtable mapping hostname->alias case insensitive for hostname - attrd: Make hostname hashtable case insensitive - membership: make caching peers by uname case insensitive - crmd: make lrm_state hash table not case sensitive - lrmd: clean up the agent's entire process group - xml: Enable resource sets in location constraints for 1.2 schema (bnc#867880) - Upstream version cs: 8bee850bb95ee01dcba03038ddfd65d22e195cf6- Drop obsolete bug-792124_pacemaker-stonith-monitor-log.patch- mainloop: Fixes use after free in process monitor code - lrmd: Cancel recurring operations before stop action is executed - lrmd: Merge duplicate recurring monitor operations - services: Do not allow duplicate recurring op entries - crmd: Ack pending operations that were cancelled due to rsc deletion (bsc#1035822) - crm_mon: Add failures to --as-xml output - cib: Check if on-disk cib is corrupt in the separate on_disk_cib_corrupt() rather than in validate_on_disk_cib() (bnc#866618) - crmd: Do not start timers for already completed operations - acl: Read access must be explicitly granted - xml: Better move detection logic for xml nodes - cib: Do not disable cib disk writes if on-disk cib is corrupt (bnc#866618) - xml: Correctly calculate the adjusted offset of xml elements - crm_diff: Mirror how the cib operates for better testing - cib: Ingore patch failures if we already have their contents - cib: Prevent use-after-free when cleaning up after query operations - xml: Mark the parents of a partial replace as dirty - xml: Correctly enforce ACLs after a replace operation - cib: Do not try to use an empty value for CIB_shadow - crm_resource: Gracefully handle -EACCESS when querying the cib - xml: Correctly observe ACLs when creating filtered copies of xml documents - xml: Only test write permissions for attributes that are being changed - xml: Always allow new scaffolding - node with no attributes or only an id field - cib: Memory leaks caused by ACLs returning filtered copies - xml: Set flags to indicate when updates were rejected by an ACL - cib: Respect the CIB_user environment variable for ACLs - xml: Unpack and apply ACLs when tracking changes - cib: Implement CIB_file-mode ACLs for testing - remote: Enable migration support for baremetal connection resources by default - cibadmin: Allow priviliged clients to perform tasks as unpriviliged users - cibadmin: Remove dangerous commands that exposed unnecessary implementation internal details - cibadmin: Purge legacy command options deprecated since 2008 to make the short-forms available for new options - cib: Include a request with file-mode cib actions for the acl code to interrogate - cib: Switch over completely to the new ACL code - xml: Allow new objects to be created provided they subseqently match a configured ACL - cib: Use the new acl filtering functionality - xml: Support the creation of filtered copies based on ACLs - xml: Convert all ACLs to xpaths during unpack - xml: Add ACL flags for xpath selectors when tracking is enabled - cib: ACL improvements - cib: Simplify ACL handling for read-only cib queries - cib: Check ACLs prior to making the update instead of parsing the diff afterwards - cib: Default ACL support to on - Upstream version cs: 38c5972cd284ea6627b3309b619dad4d27442ab0- Add symlinks rcpacemaker and rcpacemaker_remote to /usr/bin/service (bnc#866057)- Rebase bug-812269_pacemaker-fencing-device-register-messages.patch- xml: Memory leak when free'ing xml documents - systemd: Prevent use-of-NULL when determining if an agent exists - xml: Fix segfault in TRACKING_CHANGES() (bnc#865345) - PE: Memory leak when updating cancel operations - xml: Prevent memory leak in xml _private field - pengine: Performance increase, stack allocated score2char - crm_report: Only gather dlm data if dlm_controld is running - Fix: memory leak found by valgrind was corrected. - Fencing: Add the ability to call stonith_api_time() from stonith_admin - Fencing: Pass the correct options when looking up the history by node name - cib: Ensure 'cibadmin -R/--replace' commands get replies - xml: Correctly initialize and find v1-style patch version numbers - crm_mon: Add -R switch to show clone details - Build: Install compatibility.h - fencing: Teach stonith-ng about finding device and topology changes in the v2 patch format - crm_report: Additional dlm detail - crm_report: Allow ssh alternatives to be used - crmd: Correctly recognise operation cancellations we initiated - crmd: Improved logging of transition cancellations - crmd: Correctly detect lrm refreshes - crmd: Ignore 'move' operations to the cib, we only care about content changes - PE: Ensure instance numbers are preserved for cloned templates - Bug cl#5196 - PE: Check values after expanding templates - crm_mon: Ensure resource attributes have been unpacked before displaying connectivity data - Upstream version cs: ca8234daf2bbb2d0fd2fb47cdbb6667f892081bb- pengine: Support id-ref in nvpair with optional "name" (FATE#316118) * pacemaker-pengine-nvpair-id-ref.patch * pacemaker-pengine-nvpair-id-ref-test.patch- controld: Do not consider the dlm up until the address list is present - pengine: Support per-resource maintenance mode (bnc#863071) - pengine: cl#5187 - Prevent resources in an anti-colocation from even temporarily running on a same node (bnc#856135, bnc#862319) - controld: handling startup fencing within the controld agent, not the dlm - Upstream version cs: 0b7d85a159cc92e00ebded65c9a33edce7ba1c22- cib: Erasing the cib is an admin action, bump the admin_epoch instead - mcp: Tell systemd not to respawn us if we exit with rc=100 - crm_mon: Allow the file created by --as-html to be world readable - crmd: Do not overwrite existing node state when fencing completes - PE: Default sequential to TRUE for resource sets for consistency with colocation sets - Bug rhbz#1036631 - Stop members of cloned groups when dependancies are stopped - PE: Ensure stop actions are viable when reporting what will happen to a resource - xml: Consolidate patchset logging and apply functionality - cib: Validate that everyone still sees the same configuration once all updates have completed - cib: Validate clients are correctly applying v2-style diffs at most once a minute - xml: Allow both patch formats to include and validate an xml digest - election: If an error occurrs in crm_uptime(), compare as {0,0} - xml: Correctly compare the current feature set when determining which patch format to use - crmd: Support failcount processing with the new patch format - crmd: Handle patchset directives that change the configuration top-level - cib: Make patchset validation a run-time switch - cib: Implement zero-copy status update - cib: Enable the more efficient xml patchset format - crmd: Add support for parsing resource operations in the v2 patch format - xml: New function for calculating patchset version details - cib: Auto-detect which patchset format to use - xml: Allow the source of xml library errors to be traced - cib: Send all r/w operations via the cluster connection and have all nodes process them - xml: Use an optimized xpath search function for applying patch sets - xml: Use the new patch application code path - xml: Detect changes in global replace operations - xml: allow either patch format to be created and applied automatically - xml: Create a more robust diff format - xml: Track changes to xml trees as they happen - Upstream version cs: 0d3f74a5caa7e0f7d1f5ccc97e0d2d018ed8bdfc- Update to version 1.1.11 - Drop the patches that have been merged upstream: * pacemaker-display-pending-ops.patch * pacemaker-crm_mon-brief.patch - pengine: Prevent memory leak on handling pending state - crmd: Prevent message relay from attempting to create node entries for unknown nodes (bnc#862383) - attrd: Support "--refresh" command of attrd_updater - crmd: Prevent manual fencing confirmations from attempting to create node entries for unknown nodes (bnc#860169) - Upstream version cs: 3ca8c3bf87057339c9f2a55cd137db8c9c9922f0- ipc: Convince clang that our casting is intended (bnc#845525) * Drop pacemaker-Wno-cast-align.patch which has been merged upstream - cib: Use the correctly typed enum value during initialization - Build: Add dbus as an rpm dependancy - Fix: Bug rhbz#1057697 - Use native DBus library for systemd async support to avoid problematic use of threads - remote: Fail remote-node connection rsc monitor ops early on unexpected disconnect - tools: Return error when attempting to delete an unspecified attribute - remote: Allow baremetal remote-node connection resources to migrate - lrmd: Send event alerting estabilished clients that a new client connection is created. - Fix: Bug rhbz#1057697 - Use native DBus library for systemd support to avoid problematic use of threads - xml: Fix segfault in find_entity() - Upstream version cs: 6290953f2b035a92a8f093973b94c5cf38b79cd9- pengine: Free memory allocated by find_actions() - cib: Fix remote cib based on TLS - Upstream version cs: f3eeaf49d1fb7bca713ecbbc819aef51650d26ef- stonith: Drop the severity of log for recoverable condition (bnc#857779) * Update bug-812269_pacemaker-fencing-device-register-messages.patch- Build: Suppress -Wcast-align warnings/errors on arm and ppc64le (bnc#845525) * Update pacemaker-Wno-cast-align.patch- services: Do not block synced service executions - Upstream version cs: 96cd1941308be48fdf1e827b88ebd9410cf2010a- crm_mon: Display brief output if "-b/--brief" is supplied or 'b' is toggled (FATE#314757) * Add pacemaker-crm_mon-brief.patch - tools: Display pending state in crm_mon/crm_resource/crm_simulate if --pending/-j is supplied (cl#5178) (FATE#315159) * Add pacemaker-display-pending-ops.patch- Drop the obsolete patch (bnc#857779): * bug-812269_pacemaker-fencing-update-cib.patch- crm_report: Force grep to interpret logs as text - pengine: Force record pending for migrate_to actions - pengine: cl#5186 - Avoid running rsc on two nodes when node is fenced during migration - cluster: Fix segfault on removing a node (bnc#858745) - services: Reset the scheduling policy and priority for lrmd's children without replying on SCHED_RESET_ON_FORK (bnc#858857) - fencing: Update stonith device list only if stonith is enabled (bnc#857779) - services: Correctly reset the nice value for lrmd's children (bnc#858857) - pengine: Correctly perform partial migrations when node's uname is not equal to the id. - fencing: Immediately fail remote fencing operation on peer timeout - cl#5055: Improved migration support. - stonith_admin: Ensure pointers passed to sscanf() are properly initialized - Fix: Prevent potential use-of-NULL - crmd: Prevent memory leak in error paths - services: Fixes segfault associated with cancelling in-flight recurring operations. (bnc#859923) - pengine: cl#5174 - Allow resource sets and templates for location constraints (FATE#315158) - Upstream version cs: a3cda7619e71399d54f209296aebf3ba713a0bf4- crmd: Change the default value of node-action-limit - crm_ticket: Support multiple modifications for a ticket in an atomic operation (bnc#855099) - Upstream version cs: 3e8930190b8b53565ef4ca3fa00006c41511be9f- ipc: fix memory leak for failed ipc client connections. (bnc#857779) - pacemakerd: Fixed a problem that only pacemakerd did not inherit the logfacility of corosync.conf. - pengine: Fixes memory leak in regex pattern matching code for constraints. - crm_attribute: Do not swallow hostname lookup failures - crmd: Avoid deleting the 'shutdown' attribute - Upstream version cs: ad10acb1c4d668befd7ea1d39312356223d86615- cts: Install cib_xml.py (bnc#854926) - report: Add support for xz compressed logs (bnc#854060) - attrd: Memory leak - crm_mon: Fix overflow on SMTP subject line - Upstream version cs: 65bb87eadcf6dfd9b5cd6030ec318579fd4fe7c8- Fix: Removes unnecessary newlines in crm_resource -O output (bnc#853651) - Upstream version cs: 93a37bf6ea4dcaea8fe7462442ee01019ec167c5- crmd: Memory leak - Upstream version cs: ce5d77c6038a0a0294d4cae238169c458ba03b72- pengine: Recover unexpectedly running container nodes. - pengine: Disable container node probes due to constraint conflicts - ipc: Have the ipc server enforce a minimum buffer size all clients must use. - Bug cl#5181 - corosync: Ensure node IDs are written to the CIB as unsigned integers - Upstream version cs: f57ad6c17624c0cbfc58c46f0bad7e28453506bb- Update pacemaker-colocated-utilization.patch * pengine: Do not check the allocation of resources during a colocation preview (bnc#849595)- election: Correctly hook up the timeout callback - crmd: Improve throttling response on clusters of single core machines (bnc#838358) - fencing: Wait until all possible replies are recieved before continuing with unverified devices - Bug cl#5179 - Corosync: Attempt to retrieve a peer's node name if it is not already known - Core: Allow blackbox logging to be disabled with SIGUSR2 - PE: Correctly handle demotion of grouped masters that are partially demoted - crmd: When the DC gracefully shuts down, record the new expected state into the cib - crmd: When a peer expectedly shuts down, record the new join and expected states into the cib - attrd: Memory leak - attrd: Do something sane when older non-atomic versions send us messages - crmd: Correctly observe the configured batch-limit (bnc#838358) - attrd: Improve compatibility with older attrd versions - controld: Use the correct variant of dlm_controld for corosync-2 clusters - lrmd: Correctly calculate metadata for the 'service' class - crmd: Prevent over-polling of throttle inputs (bnc#838358) - crmd: Enable cluster-wide throttling when the cib heavily exceeds its target load (bnc#838358) - Upstream version cs: 5a69be5ff56ec7fa66bcf9c2069af6211e4ebc98- crmd: Send the first throttle update (bnc#838358) - Upstream version cs: 2383f6c469bfb31da9efa8e4dd626de049e808c6- Rebase: * bug-806256_pacemaker-log-level-notice.patch - Drop the obsolete patch: * bug-800323_pacemaker-crm_mon-save-cib.patch - Probe for baremetal remote-node connection resources. - remote: Add support for ipv6 into pacemaker_remote daemon - election/fencing: Fix the casts that would result in incorrect values for big-endian systems (bnc#842915) - Fencing: Apply correct score to the resource of group - crm_resource: Wait for the correct number of replies when cleaning up resources (bnc#842204) - cpg: Only process one message at a time to allow other priority jobs to be performed - remote: Handle endian changes between client and server and improve forward compatibility - crmd: A more reliable method of looking up migration options (bnc#838358) - crmd: Allow non-CIB based throttling to be disabled (bnc#838358) - crmd: Honor load thresholds lower than the cib maximum (bnc#838358) - crmd: Tell the DC our job limit instead of the number of cores (bnc#838358) - crmd: Track the CIB's CPU usage (bnc#838358) - crmd: Fold the enforcement of migration-limit into the throttling code (bnc#838358) - crmd: Don't start throttling until we're over the target threshold (bnc#838358) - crmd: Do not send throttle updates to versions that don't support them (bnc#838358) - ipc: Use the higher of the configured buffer size or the default - crmd: Tweak the throttling threshold multipliers (bnc#838358) - crmd: Simplify option processing for throttling options (bnc#838358) - crmd: Simplify the logic for calculating the number of available cores (bnc#838358) - crmd: Make the per-node action limit directly configurable in the CIB (bnc#838358) - crmd: Tweak the throttling code based on migration-limit and/or LRMD_MAX_CHILDREN (bnc#838358) - crmd: Slow down recovery on nodes with IO load (bnc#838358) - crmd: Make the utilization limit configurable (bnc#838358) - crmd: Use the load on our peers to know how many jobs to send them (bnc#838358) - crmd: Notify peers of our relative load (bnc#838358) - remote: Properly version the remote connection protocol - crmd: Track CPU usage on cluster nodes (bnc#838358) - ipc: Consolidate client/server flags and add version field to header - ipc: Suppress asserts for proxied connections - crmd: Do not block on proxied calls from pacemaker_remoted - lrmd: Do not interrogate NULL replies from the server - crm_mon: Reduce flickering in interactive mode - fencing: Ignore changes to non-fencing resources - cli: Do not enabled blackbox for cli tools - crm_resource: Wait for all replies when cleaning up resources (bnc#842204) - crm_mon: Correctly show the queued and exec times for an action - crmd: Correctly update expected state when the previous DC shuts down - crm_resource: Observe --master modifier for --move - PE: Location constraints with role=Started should prevent masters from running at all - Upstream version cs: 907f52608e97b4f280690618342e1377f184b554- Disable -Wcast-align on problematic files (bnc#845525)- iso8601: Prevent dates from jumping backwards a day in some timezones - crm_master: Avoid sending redundant "--node" options to crm_attribute (bnc#846360) - ipc: Client buffer size must never fall below our max read size - ipc: Ensure buffer environment variable is read before setting max buffer len - fencing: Deep copy current topology level list on remote op - Upstream version cs: afdce1faecf82c778ed81eb5eb9b7518d36a1160- crm_resource: Wait for a reply for each request to crmd (bnc#842204) - Upstream version cs: 7afb87c8caa96d3c1ed9a353ae6061023a729fd4- Cluster: On cluster signoff, make sure that the g_source gets disconnected. - crmd: Using PCMK_ipc_buffer variable for remote-node proxy - plugin: Reset the scheduling policy of daemons to SCHED_OTHER with nice value -10 (bnc#843647) - ipc: Compress msgs based on client's actual max send size - pengine: Do not probe for connection resources - Upstream version cs: 490e695539630cfc158c5967a99237659fac5f30- fencing: Allow fencing for node after topology entries are deleted - fencing: Do not broadcast suicide if the on action is being executed - remote: Option to enable/disable probes on container resource remote-nodes - lrmd: Correctly cancel monitor actions for lsb/systemd/service resources on cleaning up (bnc#842471) - services: Fix the executing of synchronous actions - Upstream version cs: 728ec77851540f9ce64ee1b1269d967841571b25- PE: Add a special attribute for distinguishing between real nodes and containers in constraint rules - PE: Allow location constraints to take a regex pattern to match against resource IDs - Bug rhbz#1011618 - Consistently use 'Slave' as the role for unpromoted master/slave resources - cibadmin: Report errors during sign-off - Fencing: Observe pcmk_host_list during automatic unfencing - services: Prevent use-of-NULL when executing service actions - crm_resource: Provide a meaningful error if --master is used for primitives and groups - ipc: Raise the default buffer size to 128k (bnc#838358) - Upstream version cs: ecd44e642db3b65ee83aceed0e93376894a58c47- plugin: stonith-ng needs membership updates (bnc#841010) - controld: allow the stonith-enabled check to be overridden (bnc#842186, fate#315195) - attrd: Avoid infinite write loop for unknown peers - tools: Detect orphaned remote-nodes when setting attributes - controld: don't start dlm if stonith-enabled is false (bnc#842186, fate#315195) - pengine: Probe container nodes - crmd: Tell attrd when remote-node is disconnected - attrd: Give remote-nodes ability to set attributes with attrd - Upstream version cs: c68919f46bbaa96ec4ff2c770f82588280277fe6- crmd: Expose "expected-quorum-votes" option in the metadata only for plugin-based clusters - decode_transition_key: Older systems do not support '%ms' in sscanf - cib: Guard against overly long user specified strings - crm_shadow: Simplify prompt generation and impose a sane limit on length - fencing: Skip empty notifications from the cib - election: Do not update state when ACKs arrive - cib: Additional logging for invalid diff updates - cib: Correctly check for archived configuration files - crmd: Reliably detect and act on reprobe operations from the policy engine - crm_mon: Do not display duplicates of failed actions - crm_node: Display partition output in sorted order - cib: Allow values to be added/updated and removed in a single update - attrd: Use the truely atomic version where CPG is used for cluster communication - attrd: Untested reimplementation of a truely atomic attrd - election: Track the election state and allow it to be queried - crm_resource: Handle --ban for master/slave resources as advertised (rhbz#902407) - xml: Location constraints are allowed to specify a role - Review and refresh all patches to apply without fuzz. - Upstream version cs: 144c2fc4b2f50623cbc87bf20788717e0b058a38- Rebase: * bug-728579_pacemaker-stonith-dev-id.patch * bug-806256_pacemaker-log-level-notice.patch * bug-812269_pacemaker-fencing-device-register-messages.patch - Drop the patches that have been merged upstream: * pacemaker-node-maintenance.patch * pacemaker-node-maintenance-tests.patch * pacemaker-crmd-pending-delete.patch * pacemaker-resource.patch - Drop the obsolete patches: * pacemaker-cts-startcmd.patch * pacemaker-disable-listing-fence-agents.patch * pacemaker-daemon-symlinks.patch * pacemaker-ptest-build.patch * pacemaker-lrmd-remote-disabled.patch * bug-815447_pacemaker-cib-strip-text-nodes.patch * bug-809635_pacemaker-xml-digest.patch - Drop the obsolete source: * heartbeat-doc-1.0.tar.gz- spec: Recommends fence-agents and sbd- pengine: Properly handle orphaned multistate resources living on remote-nodes - pengine: Map orphaned container fillers to container resource during shutdown to preserve ordering - pengine: Do not attempt to probe resources on remote-nodes that are shutting down - cib: Prevent potential double free in get_remote_uuid - pengine: Properly shutdown orphaned remote connection resources - crmd: Populate remote peer cache when building new cib - crmd: Clear remote-node status AFTER start completes, not before. - pengine: Probe resources on baremetal remote-nodes - crmd: Remote-node fencing glue - pengine: Allow fencing of baremetal remote nodes - crmd: Cache baremetal remote-nodes - tools: Fixes formatting of remote-nodes in crm_mon and crm_simulate - Upstream version cs: d9bb7632492b1f91a300fb43e9ad8a262a8f2928- cib: Support XML comments in diffs (bnc#836965) - Upstream version cs: 5d0a2239543bd5003444af4a16780ac47fd37079- crm_mon: add --hide-headers option to hide all headers - pengine: Order demote/promote of resources on remote nodes to happen only once the connection is up - tools: clear ncurses screen when crm_mon cannot connect - crmd: Invalid formatting of log message causes crash - remote: Properly handle expected late replies when TLS transport is in use. - cluster: Allow remote-nodes to be cached - Upstream version cs: a4eb44fd075e8cb8608f5e45522cade45658ff98- Fencing: Support agents that need the host to be unfenced at startup - cpg: Correctly set the group name length - pengine: Distinguish between the agent being missing and something the agent needs being missing (bnc#833374) - crmd: Prevent PCMK_LRM_OP_NOT_INSTALLED for being mapped to PCMK_LRM_OP_ERROR - Bug cl#5171 - PE: Don't prevent clones from running due to dependant resources - services: Correctly invoke callbacks for aborted operations - services: Preserve errno when handling exec failres least it be reset as a side-effect of other calls - services: Prevent use-of-NULL in g_error_free - services: Detect missing agents and permission errors before forking - lrmd: Do not overwrite any existing operation status error - crmd: Correcty update the history cache when recurring ops change their return code - PE: Correctly account for the location preferences of things colocated with a group - crmd: Gracefully handle actions that cannot be initiated - crm_simulate: Do not complain about CRM_OP_REPROBE actions - PE: Gracefully handle bad values for XML_ATTR_TRANSITION_MAGIC - crm_mon: Correctly extract alternate name for pingd attributes - Fix: Prevent use-of-NULL when ping resources do not define a host list - Fix: Gracefully handle -ECHILD from waitpid() in crm_abort() - Fix: Command-line tools should stop after an assertion failure - systemd: Prevent glib assertion - only call g_error_free() with non-NULL arguments - Upstream version cs: 4f672bc85eefd33e2fb09b601bb8ec1510645468- crmd: Don't add node_state to cib, if we have not seen or fenced this node yet - PE: Do not allow colocation with blocked clone instances - PE: Do not re-allocate clone instances that are blocked in the Stopped state - fence_legacy: stonithd now handles killing the process group for us - Fencing: On timeout, clean up the agent's entire process group - fencing: Put all fencing agent processes into their own process group - crmd: Prevent crash by passing log arguments in the correct order - PE: Do not restart resources that depend on unmanaged resources - crmd: Prevent recurring monitors being cancelled due to notify operations - mcp: Fix so that only pacemakerd restarts, at the time of pacemakerd failure - mcp: Support PCMK_fail_fast to reboot a machine at the time of process (subsystem) failure - cpg: Ensure the CPG group is always null-terminated - Upstream version cs: ac7aa1c94f317fc1d4024fbc09b012bc9f1b229e- Update to version 1.1.10 - crm_resource: Allow options to be set recursively - cib: Correctly read back archived configurations if the primary is corrupted - mainloop: Hand the channel off to g_io_watch and forget it. - mainloop: Force removal of ipc fd in dispatch_del callback - crmd: Clean up handling of pending operations at shutdown and improve logging - Bug cl#5161 - crmd: Prevent memory leak in operation cache - cib: Ensure we set up hacluster's groups in stand-alone mode - Upstream version cs: 368c72641139785ec5981813f311fae8cd1410f3 (1.1.10)- cpg: Correctly free sent messages (bnc#853675, bnc#856018) - crm_resource: Present an error if an admin tries to --force-start an already active resource - cluster: Correctly construct the header for compressed messages (bnc#851951, bnc#856018) - PE: Re-allow ordering constraints with fencing devices now that it is safe to do so - cl#5170 - Correctly support on-fail=block for clones - PE: Do the right thing when admins specify the internal resource instead of the clone - fencing: Correctly detect existing device entries when registering a new one - crm_node: Return 0 if --remove passed - remove the mainloop_trigger that are no longer needed. - corosync: Ensure removed peers are erased from all caches - cluster: Detect and warn about node names with capitals - Upstream version cs: 9abe6876d50ff2879f17b08dfa1500817a7fbeba- crmd: Prevent messages for remote crmd clients from being relayed to wrong daemons- lrmd: Prevent use-of-NULL in client library - Upstream version cs: 9d656180294770e39deced79a134d4cf531b8159- Bug cl#5168 - Prevent clones from being bounced around the cluster due to location constraints - Upstream version cs: 90b8afe77ab8a3ff2fd30826187fd7726aab4f04- crm_mon: Bug cl#5167 - Only print "stopped" node list for incomplete clone sets - Upstream version cs: d16f4c56b120c5ae761680cfb4d98922a185c6c2- Fix: memory leak when used score2char() - Fencing: Avoid hashtable lookups in NULL - Fencing: Force use of the calculated command for support ops - Bug cl#5157 - Allow migration in the absence of some colocation constraints - PE: Detect constraints with inappropriate actions (ie. promote for a clone) - PE: Do the right thing when admins specify the internal resource instead of the clone - Fencing: User-defined arguments always trump calculated ones - cluster: Correctly remove duplicate peer entries - Upstream version cs: 0dc3203917438057ab476a0f0aac4a1c8e27f97a- plugin: Fix memory leaks - Upstream version cs: 5053ba656a854bdf4eacaf7d43b0dce1b7e58b9d- plugin: Handle messages in the common way in the plugin dispatch function by default - Upstream version cs: 704f45e36594018358b0ea9d578291af1d52196e- plugin: Fix small memory leak- plugin: Change the function declaration in the plugin header - crm_mon --neg-location drbd-fence-by-handler - crm_mon -A: print_attr_msg needs to lookup paramters, not meta - crm_mon -A: fix memleak, add g_free_list(attr_list) - crmd: CID#1036761 Dereference null return value - Corosync: CIB#1036763 Dereference before null check - Tools: CID#1036764 Unused pointer value, CID#1036762 Resource leak - Tools: CID#1036760 Truncated stdio return value - PE: Delete the old resource state on every node whenever the resource type is changed (bnc#822233) - Upstream version cs: 61e4b8f62b109ca5b910efd38c7e79ef403030fd- crmd: Ensure operations for cleaned up resources don't block recovery (bnc#825536) - logging: If SIGTRAP is sent before tracing is turned on, turn it on - membership: Correctly merge partial entries in the peer cache - attrd: Fixes deleted attributes during dc election - crmd: Stop trying to fence when no devices exist capable of fencing a node - PE: Allow active nodes in our current membership to be fenced without quorum - PE: If fencing is unavailable or disabled, block further recovery for resources that fail to stop - crm_resource: Avoid whitespace in transition keys when cleaning up and failing resources (bnc#851308) - crmd: Everyone who gets a fencing notification should mark the node as down (bnc#842915) - crmd: Initiate node shutdown if another node claims to have successfully fenced us (bnc#842915) - crm_resource: Correctly implement --master - crm_resource: Support OCF tracing when using --force-(check|start|stop) - lrmd: Make lrmd and pacemaker_remoted in charge of setting up rsc state folder - Allow uuid retrieval for nodes with no known name - crmd: Update the status section with details of nodes for which we only know the nodeid - crm_error: Add the ability to list and print error symbols - crmd: Further improve clean shutdowns - Core: Ensure the blackbox is saved on abnormal program termination - crm_mon: Implement the ability to change the display options during operation. - Upstream version cs: 6ea4b7ef34ce6e17f53f69d87a404d334db5d837- xml: Purge diff markers even if there's no digest (bnc#824097)- crmd: Prevent use-of-NULL during emergency shutdown - crmd: Ensure all membership operations can complete while trying to cancel a transition - Repair handling of attrd_update_delegate() return codes - attrd: Correctly detect successful invocation of attrd_update() - Convert all exit codes to positive errno values - crm_attribute: Send details on duplicate values to stdout - crm_attribute: Return the actual error code rather than the negative of it - crm_resource: Implement the --master option for the --move,--ban,--clear commands - crm_resource: Make --move without --host a true alias for --ban without --host - crm_resource: Implement --ban for moving resources away from nodes and --clear (replaces --unmove) - cib: Allow multiple children to be removed from the object root (eg. constraints) - crmd: Prevent use-after-free now that mainloop terminates naturally - mainloop: Saner ordering of reference counting events in mainloop_destroy_trigger() - Correctly calculate crm_system_name - Core: Tolerate NULL in mainloop_destroy_trigger() - crmd: Allow mainloop to terminate naturally on graceful shutdown - crmd: Use standard error codes on exit - Ensure anything we free at shutdown is set to NULL too - Ensure crm_system_name is cleaned up at exit for valgrind - crmd: Ensure timers are stopped at exit - Fencing: Ensure API object is consistently free'd - Clean up internal mainloop structures at exit - Core: Correctly unreference GSource inputs - crmd: Clean up more memory before exit - crmd: Do not get stuck in S_POLICY_ENGINE if a node we couldn't fence returns - Upstream version cs: 47ed85ac6f4a9ac353945ae8bc4d7cea98b7cb7a- PE: Mark unrunnable stop actions as "blocked" (bnc#816511) - crm_resource: Do not crash when calling --force-start on an invalid resource - ping: Ensure OCF_RESKEY_failure_score has a value (bnc#831327) - PE: Unlink pengine output files before writing. - Fencing: Restore the ability to manually confirm that fencing completed (bnc#843699) - Fix: Resolve several memory leaks and improper dereferencing of pointers - PE: cl#5155 - Block the stop of resources if any depending resource is unmanaged (bnc#816511) - crmd: Insert async failures so that they appear in the correct order - cl#5151 - Ensure node names are consistently compared without case - crmd: Block after 10 failed fencing regardless of crmd-transition-delay - PE: Re-initiate _active_ recurring monitors that previously failed but have timed out - cl#5133 - PE: Correctly observe on-fail=block for failed demote operation - PE: Suppress meaningless IDs when displaying anonymous clone status - PE: Display a list of nodes on which stopped anonymous clones are not active instead of meaningless clone IDs - PE: Correctly handle resources that recover before we operate on them - Core: Detect child processes that terminate before our SIGCHLD handler is installed - Upstream version cs: 674e69854a0ce4636ee54e123e45b1612c8f1fd5- crmd: Do not record pending delete operations in the CIB- cib: Strip text nodes on writing CIB to disk (bnc#815447, bnc#809635) - xml: Use xmlNodeDump() from libxml2 when calculating digest (bnc#809635)- PE: Ensure per-node resource parameters are used during probes - cl#5154 - Do not expire failures when on-fail=block is present - Upstream version cs: 2db99f16fe9b19a6320db62755f0f28ced8efe00- cl#5153 - Correctly display clone failcounts in crm_mon - crmd: Simplify the logic for resetting node status in the CIB after fencing events (bnc#812913) - crmd: cl#5152 - Correctly clean up fenced nodes during membership changes (bnc#812913) - ipc: Reference the correct type when inspecting IPC messages - Core: Ensure the last field in transition keys is 36 characters - crm_mon: Check if a process can be daemonized before forking so the parent can report an error - crm_mon: Ensure stale pid files are updated when a new process is started - extra: add failure_score parameter into ping RA - crm_resource: Allow --cleanup without a resource name - Upstream version cs: 3297085490c2fe0af25fc805d2b53123da877f7a- fencing: Drop the severity of the messages on registering a stonith device (bnc#812269)- crmd: Ensure we return to a stable state if there have been too many fencing failures - fencing: Prevent empty call-id during notification processing - crm_resource: Make --refresh and --reprobe an alias for --cleanup [--resource name] - crmd: Indicate completion of refresh to callers - crmd: Indicate completion of re-probe to callers - crm_resource: Allow individual resources to be reprobed - ipc: Allow unpriviliged clients to clean up after server failures - crmd: Only performa dry run for deletions if built with ACL support - Upstream version cs: a92f3a0e327da2af171856c979fb8eaa00122534- crmd: Fixes hash table assert when resetting stonith failures - crmd: Fixes memleak in failure cleanup - crmd: Do not update fail-count and last-failure for old failures (bnc#804003) - tools: cibadmin - Do not log for query commands by default (bnc#813045) - services: Fix signal FD leak - Upstream version cs: d63c13cbcde7663cfae9bb412583ad11914b6acc- tools: crm_mon - Prevent segfault on reconnecting cib (bnc#813131)- Fix: tools: crm_mon - Print a timing field only if its value is non-zero (bnc#809313)- tools: crm_mon - Save relevant cib XML into /tmp/cmon.* files if refreshing fails (bnc#800323)- fencing: Directly query the full cib on updating the cib cache (bnc#812269)- cib: Use unique error codes for write_cib_contents() - Fix: Ensure custom error codes are less than 256 - corosync: cl#5148 - Correctly remove a node that used to have a different nodeid (bnc#805278) - Upstream version cs: e8caee88c9e078fccf98a9da05543b73d4696f04- services: Improve the performance of synchronous actions (bnc#803969)- lrmd: Change the default directory for nagios plugins (bnc#812005)- xml: Prevent lockups by setting a more reliable buffer allocation strategy - fencing: Fix memory leaks and invalid read - fencing: Correctly unpack device parameters before using them - lrmd: Avoid memory leak in resources_action_create() - Skip WNOHANG when waiting after sending SIGKILL to child processes - fencing: Fail the operation once all peers have been exhausted - Fix several use-after-free and use-of-NULL - fencing: Correctly filter devices when no nodes are configured yet - ipc: Restore the ability for members of the haclient group to connect to the cluster - Fencing: Re-use the policy engine libraries for filtering devices - Upstream version cs: c7910371a5ada346fe7d1e1872ec9a40570018e6- corosync: Support "crm_node --remove" with a node name for corosync plugin (bnc#805278) - Fix memory leaks in stonithd, crmd and lrmd - services: Close the reading pipes when a synchronous action is finished - Doc: Pacemaker Explained: Add nagios resource class - Upstream version cs: cb7b3f48dea9eb1b6825242da2ef507887b409cc- Log: Change some messages to notice level (bnc#806256)- xml: Support nagios resource class in the 1.2 schema - xml: Support resource container in the 1.2 schema- Update to version 1.1.9 - fencing: Only initiate topology based fencing if all topology queries have arrived AND we are still in the query phase - fencing: Don't delay execution if all topology queries have arrived - crmd: Bug cl#5144 - Do not updated the expected status of failed nodes (bnc#807824) - Core: Support PCMK_logpriority to set syslog priority - Upstream version cs: 2a917ddb9d1a01f47db84b17468413522d63ddfa- update license to new format- Include sys/resource.h for getrlimit etc.- Core: Revert to the original process flags for the support of rolling-upgrade - PE: Bug cl#5059 - Use the correct action's status when calculating required actions for interleaved clones - Upstream version cs: 61a079313275f3e9d0e85671f62c721d32ce3563- Use BuildRequires: libgnutls-devel instead of gnutls-devel for Factory in keeping with gnutls package naming changes.- corosync: Determine node state for plugin based cluster types - tools: crm_node - Test stack membership only when displaying partition members - Overhaul the way peers are determined to be sufficiently active - PE: Observe the promotion score of probed resources - crmd: Detect when peers have an incorrectly set process list - corosync: Detect when the first corosync has not yet formed and handle it gracefully - Corosync: Move deprecated corosync variants to their own file - Upstream version cs: 4c8b599e6d79499f28f8178988d65fd33e0d9b24- Update to version 1.1.7 - crmd: cl#5057 - Restart sub-systems correctly (bnc#755671) - corosync: Fix compilation when libqb is not available - pengine: cl#5058 - Fixes issue with on-fail option on operation being ignored. - tools: rhbz#754216 - Make crm_mon --as-xml option default to - -one-shot mode - cts: cl#5047 - Suppress cts badnews output related to fencing when fencing is expected. - crmd: cl#5053 - Fixes fail-count not being updated properly. - crmd: cl#5051 - Fixes file leak in pe ipc connection initialization. - Tools: crm_simulate - Correctly detect status sections with duplicate node_state entries - crmd: Detect when the quorum API isn't configured for corosync 2.0 - RA: controld - use the correct dlm_controld when membership comes from corosync directly - Core: Fix the logging of XML and conditional corefile creation by asserts - pengine: cl#5045 - Better handling of interrupted migrations. - Build: rhbz#805147 - Use default value for HB_DAEMON_DIR define when clusterglue does not provide one. - cib: Even with no peers, we still need to wait for connected clients to disconnect - corosync: Fix complation warning when corosync doesn't use libqb - cib: Determine when there are no peers to respond to our shutdown request and exit - cib: Correctly shutdown in the presence of peers without relying on timers - Corosync: Correctly disconnect from corosync variants - cib: Ensure no additional messages are processed after we begin terminating - Corosync: Reset connection variables after disconnect - Core: Correctly track the length of a string without reading from uninitialzied memory (valgrind) - PE: Fix memory leak in order_rsc_sets (valgrind) - Tools: Fix memory leak in crm_simulate (valgrind) - PE: Correctly locate crm_simulate for automated regression tests - Core: Use the default schema location when PCMK_schema_directory is defined but empty - PE: Correctly migrate a resource that has just migrated - pengine: cl#5025 - Automatically clear failures when resource configuration changes. - Fix a number of potential problems reported by coverity - crmd: Also purge fencing results when we enter S_NOT_DC - crmd: Correctly determine when a node can suicide with fencing - PE: Bug rhbz#799070 - Report resources as active in crm_mon if they are located on an unclean node - Upstream version cs: 023d3b183e77cfdb3699080b26d98ca4bc534c57- PE: Support of referencing resource templates in resource sets (bnc#729634) - stonith: A "start" operation of a stonith resource does a "monitor" on the device beyond registering it - PE: More validations on configurations related to resource templates - Core: Bug cl#5027 - Fix compilation when libqb is not available - PE: cl#5002 - increment_clone() does not terminate on invalid input - PE: Indicate the difference between resources that are restarting and reloading - crmd: Leave it up to the PE to decide which ops can/cannot be reload - PE: Detect reloads of previously migrated resources - Core: Bug cl#5016 - Prevent failures in recurring ops from being lost - crmd: Bug cl#5015 - Remove the failed operation as well as the resulting fail-count and last-failure attributes - Fencing: Supress errors when listing all registered devices - PE: Reload of a resource no longer causes a restart of dependant resources - Fencing: Implement support for advanced fencing topologies: eg. kdump || (network && disk) || power - Fencing: Add support for fencing levels to the admin tool - Fencing: Prevent duplicate free and uninitialized pointers - Fencing: Correctly remove the fencing levels when requested - Fencing: Not all devices might be running locally when creating a fencing level - cib: Don't halt disk writes if the previous digest is missing - Cluster: Hook up the callbacks to the corosync quorum notifications - Corosync: Correctly extract the node id from membership udpates - Core: Ensure signals are handled eventually in the absense of timer sources or IPC messages - Corosync: Default to using the nodeid as the node's uuid (instead of uname) - corosync: Consistently set the correct uuid with get_node_uuid() - Fencing: Standardize on /one/ method for clients to request members be fenced - Core: Strip text nodes from on disk xml files (bnc#769910) - Tools: Implement crm_node functionality for native corosync - corosync: Hook up CPG membership - fencing: More gracefully handle failed 'list' operations for devices that only support a single connection - corosync: Unset the process list when nodes dissappear on us - corosync: Correctly infer lost members from the quorum API - crmd: Election - perform the age comparison only once - crmd: Remove rusage differences of less than a second from election calculations - PE: Ensure post-migration stop actions occur before node shutdown - fencing: Correctly remove a single fencing level for a target - fencing: Add the fencing topology section to the 1.1 configuration schema - corosync: Ensure we catch nodes that leave the membership, even if the ringid doesn't change - corosync: Treat CS_ERR_QUEUE_FULL the same as CS_ERR_TRY_AGAIN - crmd: Fast-track shutdown if we couldn't request it via attrd - tools: Bug rhbz#754216 - Add XML as an output option to crm_mon - Core: Correctly determine when an XML file should be decompressed - corosync: Remove deprecated member of the CFG API - fencing: Provide enough data to construct an entry in the node's fencing history - pengine: cl#5014, Prevent asymmetrical order constraints from causing resource stops - pengine: cl#5007, Fixes use of colocation constraints with multi-state resources - PE: Bug cl#5038 - Prevent restart of anonymous clones when clone-max decreases - PE: Bug rhbz#789397 - Failcount and related info should be reset or removed when the resource is deleted - fencing: fence_legacy - Drop spurilous host argument from status query (bnc#750512) - pengine: Bug cl#5000 - Implements ability to create rsc_order constraint sets such that A can start after (B || C) has started. - Fencing: fence_legacy - Ensure port is available as an environment variable when calling monitor (bnc#750512) - PE: Bug cl#5028 - Unmanaged services should block shutdown unless in maintainence mode (bnc#738882) - Fix coverity defects in pengine, cib, stonith-ng and crm_resource - Fix use-after-free in crmd, stonith-ng and crm_simulate - Fix use-of-NULL in libcrmcluster and stonith-ng - Fix segfaults in stonith-ng and xml.c - Upstream version cs: 1e8a96ae55d6022f7036434b537938a1fa75a700- Add provides to identify support level for tickets (bnc#752241)- Resolve coverity RESOURCE_LEAK, REVERSE_INULL and UNREACHABLE defects- Tools: crm_simulate - Support to grant/revoke/standby/activate tickets from the new ticket state section (bnc#752241)- Tools: Add crm_ticket to be profiled by valgrind - Tools: crm_ticket - Display the tickets that are referenced in rsc_ticket constraints but have never been granted yet (bnc#752241) - Tools: crm_mon - Support to display tickets (bnc#752242)- PE: Move the ticket state section to "/cib/status/tickets/ticket_state" (bnc#752241) - PE: Support to make tickets standby for relinquishing tickets gracefully (bnc#752241) - Tools: Implement a new crm_ticket (bnc#752241) - Tools: Update CLI regression tests for the new crm_ticket - Tools: Add CLI regression tests for ticket standby state - PE: Update regression tests for the new ticket state section - PE: Support to make tickets standby for relinquishing tickets gracefully (regression tests)- Tools: crm_ticket - Granting/revoking tickets need user to confirm unless "--force" option is used (bnc#752269)- Tools: Implement the support of granting/revoking tickets for crm_simulate (bnc#752241)- Core: Move several new fields since v1.1.6 to the end of the data types for ABI compliance - stonith: Default to 20s timeout for start and monitor operations of stonith resources which is same as "default-action-timeout" (bnc#733337) - Tools: ptest - Fix "-X, --xml-text" option to handle a XML string as its argument (bnc#736212) - cib: Fix segfault caused by destroying an already freed hash table (cl#5023) - stonith: Expose IDs of stonith resources to stonith agents through "$CRM_meta_st_device_id" environment variable (bnc#728579)- Only include glib.h in plugin.h (don't directly use glib/ghash.h)- RA: add NodeUtilization - stonith-ng: export stonith resource name to stonith agents - crmd: Send out all of the meta parameters to lrmd for stop actions (bnc#715501) - RA: Fix the metadata of HealthSMART and SysInfo RAs - stonith: Longer default timeout/interval of operations for stonith resources - Doc: many proof-reading improvements - stonith: Fix the stonith timeout issue (cl#5009, bnc#727498) - update the license information in pacemaker.spec (bnc#726795) - xml: Add rsc_ticket support into "pacemaker-1.2" schema - xml: Add resource template support into "pacemaker-1.2" schema - tools: Avoid problems caused by differences between node name and uname -n - PE: Resolve memory leak when retrieving failure counts - Stonith: Implement a manual override for when nodes are known to be safely off - PE: Implement limit number of concurrent live migrations (FATE#310118) - PE: Implement referencing templates in constraints - PE: Move master based on failure of colocated group - Fencing: Support admin configurable timeouts for API operations - Fencing: Support checking in-progress operations for all nodes - don't package crm shell code - add Requires: crmsh - Build man pages and html versions (bnc#723680) - Shell: template support - Upstream version cs: b988976485d15cb702c9307df55512d323831a5e- add libtool as buildrequire to avoid implicit dependency- Upgrade to 1.1.6. - PE: Demote from Master does not clear previous errors - crmd: Prevent secondary DC fencing resulting from CIB updates that are lost due to elections - crmd: Log duplicate DC detection as a WARNING not ERROR - crmd: Bug lf#2632 - Correctly handle nodes that return faster than stonith (bnc#710314) - Core: Treat GNUTLS_E_UNEXPECTED_PACKET_LENGTH as normal termination of a TLS session - cib: Call gnutls_bye() and shutdown() when disconnecting from remote TLS connections - cib: Remove disconnected remote connections from mainloop - cib: Attempt a graceful sign-off for remote TLS connections - Core: Ensure there is sufficient space for EOS when building short-form option strings (prevents segfault) - Core: Fix variable expansion in pkg-config files - PE: Resolve memory leak reported by valgrind - PE: Fix memory leak for re-allocated resources reported by valgrind - PE: Improve the merging with template's operations - crmd: Allow nodes to fence themselves if they're the last one standing (lf#2584) - stonith: Add an API call for listing installed agents - stonith: Allow the fencing history to be queried - stonith: Ensure completed operations are recorded as such in the history - stonith: Support --quiet to display just the seconds since epoch at which a node was last shot - stonith: Serialize actions for a given device - stonith: Add missing entries to stonith_error2string() (missing error messages) - Shell: geo-cluster support commands - Shell: support for rsc_ticket - Shell: let the pager decide how to handle output smaller than terminal - Shell: look for log segments with more care and don't throw exception on seek (bnc#713939) - Shell: several history improvements - tools: crm_attribute - Update tickets directly to cib instead of through attrd - Shell: support for LRM secrets in resource level - Shell: enable removal of unmanaged resources (bnc#696506) - Shell: add crm execute directory to the PATH if not already present (bnc#712605) - Shell: update log patterns for history - Shell: relax transition acceptance in history - tools: crm_simulate - Send logging to stdout when additional detail is requested so that grep works as intended - PE: Prevent services being active if dependancies on clones are not satisfied (bnc#707150) - PE: Prevent resource shuffling when the 'utilization' placement strategy is used - PE: Implement resource template - fencing: Add support for --reboot to stonith_admin - Fencing: Downgrade an error message for a valid scenario - crmd: Ensure we do not attempt to perform action on failed nodes (bnc#703236, lf#2612) - Fencing: admin - Disable stderr logging by default - Fencing: Fix use-of-NULL by g_hash_table_lookup - Tools: Correctly log corosync node IDs (lf#2621) - pacemaker:ping: Incorporate fping functionality from Dan Urist - crmd: Recurring actions shouldn't cause the last non-recurring action to be forgotten - crmd: Do not wait for actions that were pending on dead nodes - crmd: Cancel timers for actions that were pending on dead nodes - PE: Correctly recognise which recurring operations are currently active - PE: Ensure role is preserved for unmanaged resources - PE: Ensure unmanaged resources have the correct role set so the correct monitor operation is chosen - PE: Implement cluster ticket and deadman - Build: Add crm_ticket into spec file - Tools: crm_attribute - No need to determine the node for tickets management - Tools: crm_mon crm_resource - Display the "operation_key" instead of the operation "id" if available (bnc#707201) - CTS improvements. - Shell: reimplement the history latest command (bnc#710958) - Shell: Don't limit to last hour when examining hb_reports - Shell: improve capture log slices for transitions (bnc#710907) - Shell: allow specifying PE files as relative paths in order to disambiguate between PE inputs with the same number (bnc#710655) - Shell: remove peinputs "get" and "list" subcommands, just use 'v' for the long listing (bnc#711060) - Shell: remove transition "show" subcommand, if there is no subcommand it is assumed that the user wants to do "show" (bnc#711060) - Shell: detect (and ignore) empty transitions - Shell: review transition interface (bnc#710655) - Fencing: Improved pcmk_host_map parsing - Fencing: Consolidate pcmk_host_map into run_stonith_agent so that it is applied consistently - Shell: Update regression tests for new stonith metadata - pengine: Correctly determine the state of multi-state resources with a partial operation history - Core: Cancelled and pending operations do not count as failed - PE: Ensure restarts due to definition changes cause the start action to be re-issued not probes - Fencing: Prevent use-of-NULL by g_hash_table_lookup - Shell: Install support for pssh - PE: Support of monitor op with role="Stopped" - Shell: improve logic for when to use the pager - Shell: don't print error on Broken pipe - cib: Record and display the originator details of CIB changes for schema "pacemaker-1.2" - crmd: Display the name and vlaue of the transient attribute(s) that caused a new transition - stonith: Correctly handle synchronous calls - PE: A demote operation is implied by the stonith operation (lf#2606) - PE: Group migration after failures and non-default utilization policies (lf#2613, lf#2619) - Shell: Include log file querying tools and "history" extension. - Significant number of fixes for issues reported by Coverity. - ais: Handle IPC error before checking for NULL data (bnc#702907) - PE: save PE inputs again (bnc#703723) - PE: Before migrating an utilization-using resource to a node, take off the load which will no longer run there (lf#2599, bnc#695440) - cib: Record and display the originator details of CIB changes - cib: Update "cib-last-written" for live CIB on a config change - cib: Filter out unnecessary "update-*" fields on digest calculating - doc: man page for crm - cib: Check the validation version before adding the originator details of a CIB change - PE: Don't log resource states unless debug is on - Shell: implement -w,--wait option to wait for the transition to finish - crmd: Store only the last and last failed operation in the CIB - Core: Use pre-glib2-2.28 version of g_str_hash to ensure consistent score calculation for clone instances - Shell: repair template list command - PE: Optimize the placement strategy and handle stickiness for utilization-based placement correctly (bnc#669686) - Shell: print error instead of warning and exit with 1 if a resource cannot be deleted (bnc#680401) - Tools: attrd - Do not initiate updates for deleted attributes - Tools: Make progress when attrd_updater is called repeatedly within the dampen interval but with the same value (lf#2528) - tools: Do not pass bash specific switches to other SHELLs (lf#2556) - crmd: Watch for config option changes from the CIB even if we're not the DC (lf#2509) - PE: Prevent shuffling by choosing the correct clone instance to stop (lf#2574) - PE: Avoid group restart when clone (re)starts on an unrelated node (lf#2581, bnc#681595) - PE: Set reasonable default limits for the number of input files saved - tools: Do not recursively look for resource meta attributes (lf#2563) - PE: Do not write out duplicated input files (lf#2582) - cib: Use SIGPIPE for re-enabling disk writes after an error (lf#2229) - crmd: Fail actions that were scheduled for a failed/fenced node (lf#2559) - Fencing: Clean up the metadata creation - Stonith: Allow the fencing agent operations to be overridden on a per-device basis (lf#2557) - Tools: crm_resource - Indicate master/slave state when querying the parent resource (lf#2477) - Tools: crm_mon - Display the true number of configured resources (lf#2549) - RA: Fix handling of 'devices' in the HealthSMART agent - Shell: print warning if start or stop interval is not zero - Shell: Check for violations of uniqueness for instance parameters during commit - PE: Indicate resource failures even if on-fail="ignore" - ais: Ensure we drain the corosync queue of messages when glib tells us there is input - crmd: Catch fence operations that claim to succeed but did not really - Core: Use pre-glib2-2.28 version of g_str_hash to ensure consistent score calculation for clone instances - Shell: repair template list command - Shell: node clearstate must flush LRM state too (bnc#653795) - Upstream version cs: 9971ebba4494 (release 1.1.6)- Fix rpmlint non-ghost-in-var-run check (bnc#710272)- PE: Consolidate logging for resources active on multiple nodes - PE: More accurate logging of restarts and recovery for master/slave resources - PE: target-role alone is not sufficient to promote resources (lf#2544) - ais: Ensure that process death is communicated to peer nodes (lf#2550) - PE: Certain stop operations require STONITH, could overload the batch-limit otherwise (lf#2551, bnc#669229) - PE: Suppress unnecssary assertion failure message (lf#2558, bnc#670983) - Shell: Do not print XML for permission denied errors - ACL: Support access control on "cleanup" - crmd: Cancel recurring operations while we're still connected to the lrmd - crmd: Suppress an ERROR by teaching fsa_action2string() about complex actions - crmd: ACL: Prohibit non-privileged users to "fail" resources - Core: Do not store last-run for recurring operations, since it is misleading - Shell: fix logic for not printing the default monitor depth - Doc: Add ACL documentation - Upstream version cs: ecb6baaf7fc0- Upgrade from 1.1.2.1 to 1.1.5. Note that the following changelog entries cover changes made in versions 1.1.3 and 1.1.4 as well. - crmd: Cancel recurring operations while we're still connected to the lrmd - crmd: Suppress an ERROR by teaching fsa_action2string() about complex actions - PE: Consolidate logging for resources active on multiple nodes - PE: More accurate logging of restarts and recovery for master/slave resources - PE: target-role alone is not sufficient to promote resources (lf#2544) - ais: Ensure that process death is communicated to peer nodes (lf#2550) - PE: Certain stop operations require STONITH, could overload the batch-limit otherwise (lf#2551, bnc#669229) - Shell: Do not print XML for permission denied errors - Doc: Add ACL documentation - Core: Do not store last-run for recurring operations, since it is misleading - crmd: Purge status for resourcs that no longer live in the LRMd (lf#2536) - Stonith: Teach stonith_admin to automagically obtain the current node attributes for the target from the CIB - tools: Prevent use-of-NULL in crm_simulate (lf#2527) - ACL: Convert uid directly with strtol() for avoiding unnecessary error logs - Tools: Make unmanaged resources stand out in crm_simulate graphs - PE: Correctly reconstruct the status of anonymous cloned groups (lf#2508) - Core: Correctly parse the resource name from notificiation action IDs (lf#2511) - crmd: Indicate the interval for the timer that just expired - crmd: Reschedule the PE_START action if its not already running when we try to use it - crmd: Ensure notify variables are accurate for stop operations (lf#2545) - crmd: Implement reprobe natively in the crmd to avoid transition loops (lf#2533) - crmd: Cancel recurring monitor ops at shutdown (lf#2309) - PE: Don't imply colocation requirements when applying ordering constraints with clones (lf#2493) - PE: Protect against constraints that require stonith devices to stop before 'normal' ones (lf#2529) - PE: Prevent unstable clone placement by factoring in the current node's score before all others (lf#2544) - Tools: Suport cibadmin --empty for creating a minimal CIB - PE: Do not override configured clone stickiness values (lf#2445) - PE: Avoid relying on stickness for stable clone placement (lf#2445) - Shell: work around lrmd/lrmadmin blocking when not run as root or hacluster - Shell: more lazy help system initialization - Access control list support for pacemaker's shell and CIB. - PE: Prevent segfault by validating the contents of ordering sets (lf#2495) - PE: Prevent use-after-free resulting from unintended recursion when chosing a node to promote master/slave resources - PE: Avoid flooding the logs with errors for orphan resources (lf#2518) - cib: Add "enable-acl" property - Shell: don't create empty optional sections (bnc#665131) - xml: Add ACL support into pacemaker-1.2 and 1.1 schemata. - RA: HealthSMART: Several fixes. - RA: SysInfo: Allow a list of filesystems/devices to be queried for free space - RA: ClusterMon: htmlfile is not mandatory (lf#2512) - Shell: merge properties and rsc/op_defaults on load update (lf#2454) - stonith: use ST_DEVICEID for short description - Shell: combine crmd and PE meta-data (lf#2373,2419) - PE: Only update the node's promotion score if the resource is active there - PE: Only use the promotion score from the current clone instance - Shell: ask for confirmation for node fence and clearstate (bnc#642268) - Shell: insert sleep between stop and start in resource restart - stonith: remove unnecessary logging - Shell: fix exception when HOME is not set - Shell: Allow creation of an empty shadow CIB ("cib new ... empty") - Shell: Allow cibstatus to create new node status entries. - Shell: fix rsc/op_defaults edit - Shell: repair management of cloned groups - Shell: wait for the stop transition to finish before invoking start in the resource restart command (lf#2516) - PE: Correct target_rc for probes of inactive resources - Tools: Prevent crm_resource commands from being lost due to the use of cib_scope_local - PE: Prevent use-of-NULL resulting from variable shadowing spotted by Coverity - Shell: allow adding node attributes in configure when the attributes set doesn't already exist - Core: Repair reference to child-of-child after removal of xml_child_iter_filter from get_message_xml() - Core: Remove extra calls to xmlCleanupParser resulting in use-after-free - Core: Reinstate the logic that skips past non-XML_ELEMENT_NODE children - Core: Update the default validation type to pacemaker-1.0 - Core: Prevent recently introduced use-after-free in replace_xml_child() - crmd: Update failcount for failed promote and demote operations - PE: Prevent use-of-NULL when there is status for an undefined node - Shell: warn on non-existing nodes in location constraints (lf#2486) - Shell: put completion bits into a separate module - Shell: repair ability to display multiple property sets - Build: Script for determining test coverage - Remove usage of the xml_child_iter macro to obtain better information from tracing tools. - Shell: Let crm_resource handle node & resource iteration during resource cleanup (skips down nodes: bnc#647378) - PE: Avoid needless string compares - cib: Fix a log message - Core: Provide arguments to do_crm_log_alias() in the correct order when logging xml - Add gcov support to spec file (disabled by default) - crmd: Determin the target rc for an action once - crmd: Prevent use of NULL by making copies of the operation's hash table - Core: Turn off unneeded checks when applying a diff - crmd: Allow operations in the PE state - crmd: Ensure the CIB is always writable on the DC by removing a timing hole - cib: Deprecate the set_slave_all() API call - PE: Ensure fencing of the DC preceeds the STONITH_DONE operation - PE: Complete all fencing before attempting atomic migrations - stonith-ng: fix two memory leaks. - Core: Preserve ordering when removing subtrees with a diff - Tools: Calculate the digest after applying a diff - Core: Correctly extract the version details from a diff - cib: Drop the severity of a log message - crmd: Don't abort transitions when probes are completed on a node - PE: Try to ensure atomic migration ops occur within a single transition - Core: Correctly compare against crm_log_level in the logging macros - cib: Revert part of a recent commit that purged still valid connections - PE: reduce logging severity for single rsc sets - Core: Prevent use-after-free when creating a CIB update for a timed out action - Shell: update shadow file directory processing - Tools: crm_resource - Improved output when listing constraints relevant to a given resource - Tools: crm_resource - Fix -x, the short form of --xml-file - Tools: crm_resource - Include location constraints in -A|-a output - Tools: crm_shadow - Avoid replacing the entire configuration (including status) - PE: Prevent clones from being stopped because resources colocated with them cannot be active - crmd: Include the correct transition details for timed out operations - Core: Drop the compression limit (lf#2506) - cib: Don't remove client's when notifications fail, they might just be too big (lf#2506) - cib: Do not calculate changes for status updates that wont be broadcast - cib: Speed up the establishment of remote connections - crmd: All pending operations should be recorded, even recurring ones with high start delays - stonith-ng: reduce logging. - Core: Provide significant performance improvements by implementing versioned diffs and digests - cib: Reject updates with a feature set greater than our own - Core: Some performance enhancements when comparing xml objects - crmd: Use the supplied timeout for stop actions - Core: Ensure ordering is preserved when applying diffs - crmd: There's no need to check the cib version from the 'added' part of diff updates - crmd: Additional logging for the cause of new transitions - cib: Drop invalid/failed connections from the client hashtable - PE: Use the original digest algorithm for parameter lists - cib: Ensure all diffs sent to peers have sufficient ordering information - cib: Reduce unnecessary copying when comparing xml objects - Core: Purge diff markers before calculating and comparing digests - Core: Minor speedup when comparing xml objects - cib: The feature set version check is only valid if the current value is non-NULL - Tools: crm_resource - Ensure xml-related memory is cleaned up at exit - Tools: crm_simulate - Ensure xml-related memory is cleaned up at exit - PE: lf#2478 - Implement improved handling and recovery of atomic resource migrations - PE: Fix memory leak when processing completed migration actions - Large number of performance improvements to the Policy Engine and CIB. - Core: Cache Relax-NG schemas - profiling indicates many cycles are wasted needlessly re-parsing them - Core: Don't compress large payload elements unless we're approaching message limits - Tools: crm_node - Fix the return code for operations on corosync clusters - Stonith: Fix two memory leaks - crmd: Record completed migrate ops in CIB status section as migrate_to/migrate_from, not as stop/start (lf#2481) - PE: Fix typo leading to use-of-NULL in the new ordering code (bnc#653635) - crmd: on version print everything to stdout - stonith: cleanup children on timeout in fence_legacy - Shell: use uname instead of id in nodes when building other ids - Shell: add "clearstate" command for nodes - crmd: Don't hide stop events that time out - allowing faster recovery in the presence of overloaded hosts - PE: Use hashtables instead of linked lists for performance sensitive datastructures - PE: Skip probe_resources() completely if probing is disabled - PE: Obtain massive speedup by prepending to the list of ordering constraints (which can grow quite large) - PE: Detect start/stop actions with intervals - PE: Optimize the logic for deciding which non-grouped anonymous clone instances to probe for - stonith: Use the timeout specified by the user - stonith: Add the timeout at the top level where the daemon is looking for it (lf#2473) - stonith: Ensure timeouts are included for fencing operations (lf#2473) - Logging tuning - crmd: Use an operation's interval when an invalid timeout was specified - crmd: Use the correct define/size for lrm resource IDs - Tools: Ensure the line we're grabbling the time from contains a time - Tools: crm_simulate - Fix use-after-free in when terminating - Stonith: Ensure stonith operations complete within the timeout and are terminated if they run too long (lf#2473) - crmd: Prevent assertion failure for stop actions - PE: Prevent segfault by ensuring the arguments to do_calculations() are initialized - PE: Correct use-after-free - Tools: crm_simulate - Resolve memory leak reported by valgrind - PE: Ignore failed actions on nodes that have been shutdown - crmd: Better logging of failed stonith operations (lf#2473) - stonith: Gracefully handle remote operations that arrive late (after we've done notifications) (lf#2473) - Tools: crm_simulate - Resolve memory leak reported by valgrind - PE: Repair on-fail=block for groups and primitive resources (lf$2476) - crmd: Ensure stop actions always have the relevant resource attributes (lf#2458) - Tools: Fix assertion failure in crm_resource (lf#2456) - PE: Do not demote resources because something that requires it can't run - PE: Display managed/unmanaged state for resources when grouped by node in crm_mon (lf#2479) - cib: Clean up disconnected remote connections (lf#2469) - Tools: crm_mon - Only display attributes of online nodes (and sort them) - RA: ping - Indicate that host_list is a required parameter in the metadata - stonith: Prevent segfault by not looking up operations if the hashtable hasn't been initialized yet (lf#2461) - Tools: Have crm_resource --locate indicate which instances are promoted (lf#2477) - PE: Ensure resource op timeout takes precedence over op_defaults (lf#2474) - Upstream version cs: bdd89e69ba54- SUSE_ASNEEDED also during %install, if by chance we rebuild things in there.- cib: Allow backup files to proceed after wrap-around (bnc#630322) - Upstream version cs: dfc6b2561373- stonith-ng: record exit code and log output for failed port list query (bnc#625594) - Upstream version cs: 0db65fda4b15- Shell: print error if a resource is not found in stop/start/manage (bnc#627757) - PE: Fix memory leak when unpacking recurring operations - PE: Fix potential use-of-NULL when calculating the set of required actions - Shell: set shadow directory properly (bnc#626638) - Core: Enable coredumps properly for MCP and AIS plugin (lf#2463) - Upstream version cs: 61360150595d- Explicitly require libglue2 to avoid potential conflict with libheartbeat2 (bnc#628243)- crmd: Prevent everyone from losing DC elections by correctly initializing all relevant variables - crmd: Ensure we activate the DC timer if we detect an alternate DC - PE: Wait until stonith is available, don't fall back to shutdown for nodes requesting termination - Upstream version cs: e0d731c2b1be- PE: Correctly order clone startup after group/clone start - stonith-ng: pass the configuration to the stonith program via environment variables; requires cluster-glue >= 1.0.6 (bnc#620781, CVE-2010-2496) - Logging improvements. - Upstream version cs: f9fbf97b0ce8- Shell: allow adding force parameter to resource migrate - Shell: add the actions option to configure ptest (lf#2360) - Shell: test early for duplicate elements in edit (bnc#620460) - Shell: Use crm_attribute directly instead of the deprecated crm_standby and crm_failcount wrappers - PE: Correctly detect when there is a real failcount that expired and needs to be cleared - PE: Avoid creating invalid ordering constraints for probes that aren't needed - PE: Include the prefix for clone children when printing the clone - PE: Bug lf#2453 - Enforce clone ordering in the absense of colocation constraints (lf#2453, bnc#619581) - crmd: Only log the failcount op if something is wrong - crmd: Base DC election on process relative uptime - crmd: Make sure we always poke the FSA after a transition to clear any TE_HALT actions - crmd: Make sure the membership cache is accurate after a sucessful fencing operation - crmd: All nodes should see status updates, not just the DC - stonith-ng: Advertise stonith-ng options in the metadata - Core: Correctly unpack HA_Messages containing multiple entries with the same name - ais: Sign everyone up for peer process updates, not just the crmd - ais: Move the code for finding uid before the fork so that the child does no logging - Upstream version cs: e9b2f255a20e- PE: Fail unmanaged resources should not prevent other services from shutting down (lf#1959) - crmd: Handle asynchronous notification of resource deletion events (lf#2439) - Shell: add support for classes to the providers command - crmd: Pass in the correct result when processing synchronous resource deletion operations - ais: Fix unterminated recursion in init_ais_connection() - Tools: Make sure crm_resource waits for the completion of crmd operations it sent - stonith: Support the poweron/poweroff actions (bnc#618798) - stonith: Map poweron/poweroff back to on/off expected by the stonith tool from cluster-glue (bnc#618798) - PE: Correctly handle pseudo action creation - Tools: crm_node - Enable the -A parameter, the short form of --openais - CLI: report bad ISO8601 duration specifiers (bnc#618808) - crmd: Fix assertion failure when performing async resource failures - crmd: Include the action for crm graph operations - crmd: Allow non-DC nodes to clear failcounts too and tidy up logging - Fix some valgrind reported leaks. - Upstream version cs: ea6cdd9d9613- Shell: templates: clvm,ocfs2: add the fs/vg resource to the base group, add timeouts (bnc#605580) - Shell: skip resource checks for property-like elements (lf#2420) - Shell: on no id match the first of property-like elements (lf#2420) - Shell: set proper ids for rsc/op_defaults (lf#2420) - Shell: add exit codes for non-interactive use - PE: No services should be stopped until probes finish (lf#2433) - PE: Support clones in resource sets (bnc#586613, lf#2404, lf#2409) - Tools: Allow ptest and crm_simulate to work with configs that lack a status section - Core: Reduce logging for failed xpath searches - PE: Support colocation sets with negative scores (lf#2435) - PE: Ensure deallocated resources are stopped - PE: Ordering dependencies on partially active groups not observed properly (lf#2422, bnc#607125) - PE: If there are no compatible peers when interleaving clones, ensure the instance is stopped - PE: Fix colocation for interleaved clones - PE: Fix colocation with partially active groups - PE: Don't overwrite existing meta attributes (like timeout) for notify operations (lf#2424) - PE: stop-all-resources shouldn't apply to stonith resources (lf#2426) - Fencing: Reduce stonith-ng logging (lf#2431) - ais: Improved processing when the peer crmd processes join/leave (lf#2401) - Tools: crm_resource - Report crmd connection errors - Tools: Depreciate the 'pingd' daemon and resource agent in favor of ocf:pacemaker:ping - cib: Fix the application of unversioned diffs - Several valgrind + coverity issues fixed. - Upstream version cs: 8b9ec9ccc506- Install crm shell and cts in $(pyexecdir) instead of $(pythondir) to ensure installation in /usr/lib64 on x86_64- Fix crm membership check (bnc#603685, reverts changesets 6e6980376f01 and 2e096a41a5f9) - Upstream version cs: e8717a29601a (1.1.2.1)- ais: fix list of active processes sent to clients (bnc#603685) - Upstream version cs: 2e096a41a5f9- crmd: Prevent use-after-free of the stonith-ng connection (lf#2414) - Core: Prevent use-after-free reported by valgrind when doing xpath based deletions (lf#2414) - PE: Fix memory leaks reported by valgrind - Core: Fix memory leak in replace_xml_child() reported by valgrind - PE: Remove developemnt logging which mistakenly logged at "ERROR" level. - Upstream version cs: b59c27dc114a (1.1.2)- crmd: Prevent use-after-free of the PE connection after it dies (lf#2414) - Shell: support for clone instances in constraints (lf#2169) - Upstream version cs: 42a5aa3413f4- Shell: new command default-timeouts to set default operation timeouts (bnc#479052) - crmd: ais: Use the threadsafe version of getpwnam - PE: Enforce mandatory promotion (colocation) constraints (lf#2403) - PE: Don't complain about missing agents during probes of a-symetric clusters (lf#2410) - Shell: don't error on missing resource agent with asymmetrical clusters (lf#2410) - ais: Ensure the list of active processes sent to clients is always up-to-date - PE: Allow constraints to apply to specific instances of clones (lf#2169) - PE: Allow ordering constraints to apply to specific instances of clones - PE: Clean up failcount after it expires (lf#2066) - PE: Before starting utilization-using resources on a node, take off the load which will no longer run there (bnc#594782) - PE: Don't be so quick to pull the trigger on nodes that are coming up - crmd: Use global fencing notifications to prevent secondary fencing operations of the DC - cib: Changes to group order are not detected or broadcast to peers (lf#2352) - Core: Only use the named schema if the validation passes - Shell: don't verify empty configurations (bnc#602711) - crmd: Send erase_status_tag() calls to the local CIB when the DC is fenced, since there is no DC to accept them - crmd: Include operation interval in logged action - crmd: Arrange for only one node to clean up after a fenced DC node - crmd: create the final directory too for resource agents (bnc#603190) - Tools: crm_mon: refresh screen on terminal resize (bnc#589811) - PE: Correctly locate clone instances by their prefix (lf#2412) - ais: Make a better attempt at determining an accurate born-on value from corosync - tools: crm_mon - Enable 'connectivity' mode for 'ping' resources too - Upstream version cs: e8624c181a3f- Fix small error so that regression test suite passes.- PE: Before starting utilization-using resources on a node, take off the load which will no longer run there (bnc#594782)- PE: Don't create scaffolding for ordering sets with a single resources (bnc#586613) - PE: Ignore colocation weights from clone instances - PE: Print allocation scores as +/-INFINITY when appropriate - Upstream version cs: fa1c810f1d1d- Fix regression test for build environment. - Upstream version cs: c11e18619efd- Fix several memory leaks exposed by valgrind. - Improve regression tests. - Low: Fencing: Delay system initialization until after we handle possible metadata queries - Tools: Do not print help on executing "crm_node -i" - crm_simulate: Allow bringing new node online (bnc#591162) - crmd: Improved detection of partially active peers (lf#2401) - PE: Fix intra-set colocation and ordering (lf#2384) - PE: Combine failcounts for all instances of an anonymous clone on a host (lf#2383) - crmd: Add missing fields to the metadata for use by the shell (lf#2387) - PE: Check for use-of-NULL in dump_node_scores() - PE: Rewrite native_merge_weights() to avoid Fix use-after-free - Upstream version cs: 2a90abe96048- Automated test case improvements. - Upstream version cs: 536bf0b9d3ba- Shell: always reload status if working with the cluster (bnc#590035) - Shell: add new regression tests - Shell: don't allow empty attributes for properties/*_defaults (lf#2395) - Shell: add another attribute not present in the crmd metadata - Tools: crm_mon - Enable specification of community for SNMP traps - PE: Ensure important options (notify, unique, etc) are always exposed during resource operations (lf#2391) - Tools: Support short form of crm_simulate --quorum (bnc#591168) - ais: Convert endian for all of the integer fields in messages (bnc#472014) - Upstream version cs: 80e0bb600e6c- Shell: Default to using the status section from the live CIB (bnc#592762) - Upstream version cs: 739282ba9e2e- crmd: fix non-fatal assert in lrmd.c when resources are manually failed (bnc#590924) - Upstream version cs: f77530201221- tools: crm_simulate - fix small xpath memory leak in inject_node_state - Shell: templates: new sbd template - Shell: templates: update apache documentation - crmd: Do not ignore action timeouts based on FSA state (could cause transitions that never terminate) - Upstream version cs: 322ff3419bc8- Shell: add two attributes not present in the crmd metadata, which broke "configure verify" - Upstream version cs: 24ee74882b42- Shell: fix bad cib passed to crm_verify - Upstream version cs: c02327f742a0- Shell: verify only changed elements on commit (bnc#590033) - Shell: observe op_defaults when verifying primitives (bnc#590033) - Shell: update meta attributes list - Shell: verify meta attributes and properties (bnc#589867) - Shell: fix wrong exit code setting logic in resource cleanup - Shell/PE: Show utilization/capacity information (bnc#589873) - Shell: implement new cibstatus interface and commands (bnc#580492) - crmd: Do not allow the target_rc to be misused by resource agents - Shell: check python version at start (lf#2369) - extra/showscores.sh: Correctly display stickiness if unset - RA: SystemHealth: exit properly when the required software is not installed (bnc#587940) - ais: Look for the correct conf variable for turning on file logging - crmd: Ensure the cluster terminates when the PE isn't available (lf#2379) - crmd: Ensure we dont get stuck in S_PENDING if we loose an election to someone that never talks to us again - Upstream version cs: 3fea355803af- crmd: Remove race condition that could lead to multiple instances of a clone being active on a machine - PE: Consolidate and unify logging of fencing causes - hb2openais: add support for corosync as target - Shell: templates: add cmirror to ocfs2 and clvm (bnc#587493) - Shell: support for resource/node utilization - Shell: switch to single cibadmin for commit - Shell: enable comments (lf#2221) - Upstream version cs: 83f654529b5c- Shell: don't touch resources within a group when managing groups/clones - Shell: repair node show (bnc#587883) - Upstream version cs: 3002fabf85d4- PE: Make sure migration ops use the correct meta options (bnc#586710) - Upstream version cs: aaf4d36b8494- Shell: fix commit for new clones of new groups (bnc#585471) - Shell: edit multiple meta_attributes sets in resource management (lf#2315) - Shell: don't cache node and resource ids (lf#2368) - Shell: new cibstatus import command (bnc#585471) - Shell: check timeouts also against the default-action-timeout property- PE: Avoid needless restart of primitive depending on a clone (lf#2317, bnc#586613) - PE: Only log orphans when they are found to be active (lf#2364) - PE: Ensure clones observe mandatory ordering constraints if the LHS is unrunnable (lf#2361) - Tools: Add utilization support for crm_attribute and crm_resource - Upstream version vs: c23bbc5262b2- ais: Do not count votes from offline nodes and calculate current votes before sending quorum data. - PE: Repair handling of unordered groups in RHS ordering constraints. - Shell: update regression tests. - CTS: Make it work for openais. - Upstream version cs: a9f5a06a8f9e- Conflict with ocfs2-tools-o2cb prevented said package from being installed at all due to dependencies (bnc#582697).- Shell: implement lifetime for rsc migrate and node standby (lf#2353) - Shell: node attributes update in configure (bnc#582767) - Tools/PE: Do not warn if the configuration is fully forward-compatible. - Upstream version cs: 745c756006da- Shell: update previous node lookup procedure to include the id where necessary - Shell: improve batch mode. - Shell: add support for xml in cli. - Shell: repare clone/ms cleanup (bnc#583288) - Shell: load update should update existing elements. - crmd: expected-quorum-votes not correctly updated after membership change (lf#2359) - PE: Fix master-master anti-colocation (lf#2358) - Upstream version cs: 059e4095d2ca- Work around non-thread-safe setenv() calls that could cause a crash (bnc#582598) - Upstream version cs: ae0170640c3e- Shell: update supported CIB RE to include pacemaker 1.1 and 1.2 - ais: Fix the child shutdown escalation logic - Core: Give signal handlers higher priority - PE: Correctly implement optional colocation between primitives and clone resources - crmd: Don't send operation updates for deleted resources (bnc#578644) - Upstream version cs: 530add2a3721- Shell: add tab completion for nodes (bnc#577003) - Shell: fix wrong var reference - Shell: improve configure commit (lf#2336) - Shell: add tab completion for op/rsc_defaults (bnc#552541) - Shell: add option to control sorting of cib elements (lf#2290) - Shell: add tab completion for nodes (bnc#577003) - RA: ping(d) - Fix metadata. - xml schema: support differentiation between stable and experimental feature sets. - Upstream version cs: 0591630c8bd3- Conflict with ocfs2-tools-o2cb; a system needs to be configured either for Pacemaker or O2CB/Oracle RAC, but never both.- stonith-ng: Fix meta-data not always being retrieved properly. - Tools: crm: fix CIB upgrade command (bnc#578637) - PE: Improved graphs when probing partially up nodes - crmd: Improve handling of cancelled operations caused by resource cleanup (bnc#578644) - PE: Significant performance bugs for larger clusters with many nodes/resources/constraints removed. - Upstream version cs: 4bc7a38e2b10- Add dependencies on python and python-xml so the shell works immediately (bnc#578006).- Incorporate code for hard resource limits (FATE#303384) in shell and pacemaker policy engine. - External stonith agents were not properly handled (bnc#577007). - Upstream version cs: 46679a8feec7- crmd: Ensure we have the latest status after a transition abort - crm: optimize shell start-up time (lf#2303). - crm: simplify template for ocfs2 - crm: don't remove sets which contain id-ref attribute (lf#2304) - crm: add update method to template apply (lf#2289) - crm: make template new more robust, add documentation - crm: fix check for invalid constraints - crm: rename status to cibstatus (lf#2236) - crm: save options if run from the command line (lf#2310) - crm: add notify to the list of valid operations - crm: fix node delete (lf#2305) - crm_node: accept -f as the short form of --force - crm_node: rovide a way to determin the nodeid of past cluster members (lf#2307) - Upstream version cs: 6a6aa02deea9- PE: Don't log uninstalled resource agents as errors (lf#2251) - fix refresh time for html interface of crm_mon - Tools: crm: don't consider warnings as errors (lf#2274) - Tools: crm: direct RA interface for ocf class resource agents (lf#2270) - cib: Check also whether an user's primary group is matched - PE: Bug lf#2153 - non-clones shouldn't restart when clones stop/start on other nodes - PE: Bug lf#2153 - Update regression tests - PE: Correctly anti-colocate with a group - Tools: crm: define missing index in validate_template (lf#2287) - Tools: crm: stay in crm if user specified level only (lf#2286) - Tools: crm: fix exit code on single shot commands - Tools: Bug lf#2286 - Allow the shell to accept template parameters on the command line - Tools: crm: allow entering level and input file (-f) - Tools: crm: relax check for RA existence (lf#2270) - Tools: crm: fix OCF_ROOT processing - Tools: crm: catch EOFError exception in raw_input (lf#2289) - Tools: crm: implement -F (--force) option - Tools: crm: rename some misnamed functions - PE: Prevent non-multistate resources from being promoted through target-role - Tools: crm: direct RA interface for stonith class resource agents (lf#2270) - fencing: stonithd: ignore case when comparing host names (lf#2292) - Tools: crm: direct RA interface for lsb class resource agents (lf#2270) - PE: Bug lf#2153 - non-clones shouldn't restart when clones stop/start on other nodes - improved - TE: Fix batch-limit processing. - Tools: crm: exclude locations when testing for pathological constraints (lf#2300) - PE: Only complain about target-role=master for non m/s resources - Tools: crm: load help from crm_cli.txt - pengine/crmd: move crm_log_init after version and metadata calls (lf#2272) - crmd: Ensure batch-limit is correctly enforced - PE: Don't overwrite the value of batch-limit - cts: Add the 'cmd' to the output of external commands - pengine: crmd: Ensure help text includes correct binary name - Tools: crm: don't fall apart if there's no help text file - Tools: crm: cache help tables (lf#2303) - Upstream version cs: 443ff5d69319- PE: Correctly unpack ordering constraints for resource sets to avoid graph loops - Two new system health RAs. - PE: Don't log uninstalled resource agents as errors (lf#2251) - Upstream version cs: cd2aaf7e35cf- Tools: crm: fix parentheses parsing in resource sets - Tools: crm: support for description attribute in resources/operations (bnc#548690) - Tools: hb2openais: add EVMS2 CSM processing (and other changes) (bnc#548093) - Tools: crm: don't add score which doesn't exist - Tools: crm: copy score from/to resource_set - Tools: crm: update tab completion for constraints (support resource sets) - Tools: crm: handle resource_set resource references in delete and rename - PE: Provide a default action for resource-set ordering - Tools: crm: drop empty attributes elements - xml: Add stopped as a supported role for operations - Tools: hb2openais: don't allow empty rules, clones, or groups (lf#2215) - Tools: hb2openais: refuse to convert pure EVMS volumes - Tools: hb2openais: add inf score to order constraints - crm: Enhance "colocation" help to explain how it works. - crm_mon: Mail subject needs space for \0 byte. - fencing: stonithd: add metadata for stonithd instance attributes (and support in the shell) - Tools: crm: drop short description from the metadata if it equals long description - Tools: crm: relax checks for advertised monitor operations (lf#2222) - Tools: crm: support for comments (lf#2221) - Tools: crm: test operation name against a list of possible ops - tools: Dont waste vertical space in crm_mon output - xml: Treat node unames as text fields not IDs (bnc#552713) - PE: rsc_order constraints always use score at the top level (lf#2206) - xml: Create an always-true expression for empty rules when upgrading from 0.6 (lf#2215) - PE: Clone ordering should be able to prevent startup of dependant clones (lf#2209) - PE: Add regression test (lf#2209) - PE: Correctly identify the state of anonymous clones when deciding when to probe (lf#2216) - PE: Operations that require fencing should wait for 'stonith_complete' not 'all_stopped'. (lf#2225) - PE: Prevent clone peers from stopping while another is instance is (potentially) being fenced (lf#2225) - crmd: C_TIMER_POPPED is now quite normal thanks to the recheck timer, downgrade log message - PE: Silently fix requires=fencing for stonith resources so that it can be set in op_defaults - xml: Preserve the old stonith-enabled=false symantics from 0.6 during an upgrade (lf#2230) - xml: Allow the auto-id base to be specified, because generate-id() isn't always unique - PE: Ensure groups process location constraints so that clone-node-max works for cloned groups (lf#2213) - Tools: crm: relax check for RA actions - Upstream version cs: 9f61f272598a- PE: Provide better defaults for lt(e) and gt(e) comparisons (bnc#515172) - Upstream version cs: 405fe9a92d82- Revert conflicts with ocfs2-tools-o2cb to ease automatic upgrades. The two should still not be installed in parallel; please see release notes! - High: ais: Gracefully handle changes to the AIS nodeid - Low: PE: Fix the metadata to advertise the correct type for stonith-timeout - High: cib: Repair the ability to connect to the cluster from non-cluster machines - Medium: Tools: Use -q as the short form for --quiet (for consistency) - Medium (bnc#520707): Tools: crm: new templates ocfs2 and clvm - Medium (LF 2185): Tools: crm: add resource promote/demote commands - Low (LF 2175): Tools: crm: add help for node status - High: xml: Mask the "symmetrical" attribute on rsc_colocation constraints (bnc#540672) - Upstream version cs: 05c8b63cbca7- Upstream version cs: 595cca870aff - Dev: Tools: crm: do not allow empty attribute names - Low: Tools: crm: make check for operations id attribute stricter - Dev: Tools: crm: implement binary op types properly (thanks to Alain St-Denis) - Dev: Tools: crm: allow id-refs to stand by themselves (update for fix 37077ed56af5) - High: crmd: Terminate if we are ever evicted from the membership - High: crmd: Unset any existing DC value before querying for a new one - High: PE: Bug bnc#515172 - Fix the boolean-op attribute of rules - High: PE: Bug bnc#515172 - Correctly process location constraint rules which contain multiple expressions - High (bnc#507255): Tools: crm: implement date expressions - Low: Tools: crm: let the user know that curses is needed for colors - High: Tools: crm: new display type (uppercase keywords) - Medium: Extra: Add tools, an RA and tests for the System Health feature - 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() - High: PE: Only prevent migration if the clone dependancy is stopping/starting on the target node - Low: crmd: Include cib version of the updates which caused a transition abort - High: PE: Bug lf#2160 - Dont shuffle clones due to colocation - Low: PE: Fix find_first_action() when no node filter is specified - Low: PE: ptest - Suppress deleted ordering constraints from the .dot graph - High: PE: New implementation of the resource migration (not stop/start) logic - Medium: crmd: Note that dc-deadtime can be used to mask the brokeness of some switches - High: Tools: crm_resource - Advertise --move instead of --migrate - Medium: Extra: New node connectivity RA that uses system ping and attrd_updater - High: crmd: Bug bnc#527530 - Wait for the transition to complete before leaving S_TRANSITION_ENGINE - High: ais: Avoid excessive load by checking for dead children every 1s (instead of 100ms) - Medium: PE: Stop ptest from logging to syslog - Medium: PE: Correctly log resources that would like to start but can't - High: PE: Bug lf#2171 - Prevent groups from starting if they depend on a complex resource which can't - Low: PE: Add regression test for lf#2171 - High: PE: Bug lf#2170 - stop-all-resources option had no effect - High: PE: Disable resource management if stonith-enabled=true and no stonith resources are defined - High: Core: Bug lf#2169 - Allow dtd/schema validation to be disabled - Medium: PE: Bug lf#2180 - Include node information for all failed ops - Medium: PE: Bug lf#2178 - Indicate unmanaged clones - Medium: ais: Include version details in plugin name - High: PE: Bug lf#2106 - Not all anonymous clone children are restarted after configuration change - Medium: ais: Attempt to enable core file generation if it was disabled - Medium: crmd: Requery the resource metadata after every start operation - High: Tools: crm: add semantic checks depending on the meta-data from resource agents- Update source tarball to revision: b05d5a2b9c52 + High (bnc#507255): Tools: crm: implement date expressions + High: Build: Fix compilation when snmp and esmtp are not available + High: PE: Bug 2160 - Dont shuffle clones due to colocation + High: PE: Bug bnc#515172 - Correctly process location constraint rules which contain multiple expressions + High: PE: Bug bnc#515172 - Fix the boolean-op attribute of rules + High: PE: New implementation of the resource migration (not stop/start) logic + High: PE: Only prevent migration if the clone dependancy is stopping/starting on the target node + High: Tools: crm: new display type (uppercase keywords) + High: Tools: crm_resource - Advertise --move instead of --migrate + High: ais: Fix cluster connection when using corosync 1.0 + High: ais: Ubuntu needs a leading zero for directory modes + High: crmd: Terminate if we are ever evicted from the membership + High: crmd: Unset any existing DC value before querying for a new one + Medium: Extra: Add tools, an RA and tests for the System Health feature written by Mark Hamzy + Medium: Extra: New node connectivity RA that uses system ping and attrd_updater + Medium: PE: Prevent use-of-NULL in find_first_action() + Medium: Tools: crm_resource - Prevent use-of-NULL by requiring a resource name for the -A and -a options + Medium: crmd: Note that dc-deadtime can be used to mask the brokeness of some switches- Remove references to heartbeat packages.- Require python-curses for CLI color support.- Update to 0123af21a705.- Prevent pacemaker from being installed along with ocfs2-tools-o2cb to reduce likelihood of misconfiguration (bnc#520721).- Build: properly install crm_standby, crm_failcount, crm_master.- Update source tarball to revision: b05d5a2b9c52 + High: Core: Show help text and exit with rc 1 if option processing failed + High: PE: Fix reload for master/slave resources + High: Tools: Differentiate between --help and an unknown option + High: Tools: crm: support for color output + High: lrm: Look in the correct location for stonith agents + Low: Core: Reduce logging noise + Low: Tools: Ensure crm_resource -q prints a trailing newline + Low: Tools: ptest no longer supports --xml-pipe + Low: Tools: remove spurios newline output to stderr + Low: ais: Better handling of to_file: and to_syslog: options + Low: ais: set HA_LOGFACILITY too + Low: extra: Add a dummy parameter to 'Dummy' so we can test reload + Medium: Tools: crm: fix the verify exit code properly + Medium: cib: Supply an empty status section for replace operations + Dev: Tools: crm: recreate constraints on grouping resources- Update source tarball to revision: Pacemaker-1.0.4 + High: ais: bnc#488291 - don't rely on byte endianness on ptr cast + High: Tools: bnc#507255 - crm: import properly rsc/op_defaults + High: Tools: lf#2114 - crm: add support for operation instance attributes + High: ais: Bug lf#2126 - Messages replies cannot be routed to transient clients + High: attrd: Support the value++ and value+=... syntax required for failcounts + High: cib: Fix huge memory leak affecting heartbeat-based clusters + High: Core: Generate the help text directly from a tool options struct + High: crmd: Bug lf#2120 - All transient node attribute updates need to go via attrd + High: crmd: Fix another large memory leak affecting Heartbeat based clusters + High: PE: Bug bnc#495687 - Filesystem is not notified of successful STONITH under some conditions + High: PE: Make running a cluster with STONITH enabled but no STONITH resources an error and provide details on resolutions + High: PE: Prevent use-of-NULL when using resource ordering sets + High: Tools: attrd - Prevent race condition resulting in the cluster forgetting node's wish to shut down + High: Tools: crm_mon - Fix smtp notifications + High: Tools: crm_resource - Repair the ability to query meta attributes + Medium: Core: Include supported stacks in version information + Medium: Tools: Include current stack in crm_mon output + Medium: PE: Correctly log the actions for resources that are being recovered + Medium: PE: Correctly log the occurance of promotion events- Add a man page for crm_shadow - Update source tarball to revision: 9196be9830c2 + High: crmd: Bug bnc#480977 - Prevent extra, partial, shutdown when a node restarts too quickly (verified) + Medium: crmd: Bug bnc#490426 - Escalated shutdowns stall when there are pending resource operations + Medium: PE: Bug bnc#491441 - crm_mon does not display operations returning 'uninstalled' correctly- Update for SLE11 HAE RC9 - Update source tarball to revision: 61da7b5260df + High: PE: Bug bnc#490418 - Correctly determine node state for nodes wishing to be terminated + High: RA: Bug bnc#490641 - Shut down dlm_controld with -TERM instead of -KILL- Update source tarball to revision: f090699a99c5 + High: PE: Bug bnc#488721 - Fix id-ref expansion for clones, the doc-root for clone children is not the cib root + High: PE: Bug lf#2094 - Fix probe ordering for cloned groups + High: crmd: Bug bnc#489063 - Ensure the DC is always unset after we 'loose' an election- Update for SLE11 HAE RC8 - Update to upstream version number - Update source tarball to revision: be123e8615a5 + High: PE: Bug lf#2089 - Meta attributes are not inherited by clone children + High: PE: Bug lf#2091 - Correctly restart modified resources that were found active by a probe + High: PE: Correctly handle terminate node attributes that are set to the output from time() + High: ais plugin: Fix quorum calculation (bnc#487003) + High: ais: Bug bnc#486858 - Fix update_member() to prevent spamming clients with membership events containing no changes + High: fencing: stonithd: is_heartbeat_cluster is a no-no if there is no heartbeat support- Update for SLE11 HAE RC7 - Update source tarball to revision: 7e44933b0e46 - Tools: crm: print short help if there is no long help; replace "desc" with "help" - Tools: crm: issue warnings on all unrecognized elements of the cib configuration - Tools: crm: the new configure monitor command - Tools: crm: return exit code from configure commands - Tools: crm: check shadow name for sanity in the cib use command - Tools: crm: more shadow name sanity checks- Update source tarball to revision: ec6b0bbee1f3 + High: PE: The ordered option for clones no longer causes extra start/stop operations + High: RA: pingd: Set default ping interval to 1 instead of 0 seconds + High: Tools: crm: the new configure node command + High: Tools: crm_mon - Prevent use-of-NULL when summarizing an orphan + High: ais: Bug bnc#482847, bnc#482905 - Force a clean exit of OpenAIS once Pacemaker has finished unloading- Update for SLE11 HAE RC6.1 - Update source tarball to revision: 37e5ae18279e + High: Fix compilation on x64 - We dont need longclock_t intervals/precision for debug timers + High: cib: Bug bnc#482885 - Simplify CIB disk-writes to prevent data loss + High: Tools: The default re-ping interval for pingd should be 1s not 1ms- Update for SLE11 HAE RC6 - Remove heartbeat-specific binary from the distribution - Update source tarball to revision: 3028846cc3f5 + High: PE: Bug bnc#478687 - Don't crash when clone-max is 0 + High: PE: Bug LF#2087 - Correctly parse the state of anonymous clones that have multiple instances on a given node + High: PE: Bug LF:2075 - Fix large pingd memory leaks + High: PE: Bug bnc#466788 - Make colocation based on node attributes work + High: PE: Correctly attach orphaned clone children to their parent + High: PE: Fix memory leak in LogActions + High: PE: Fix the determination of whether a group is active + High: PE: Look up the correct promotion preference for anonymous masters + High: PE: Simplify handling of start failures by changing the default migration-threshold to INFINITY + High: Tools: Bug bnc#483365 - Ensure the command from cluster_test includes a value for --log-facility + High: Tools: crm: add support for command aliases and some common commands (i.e. cd,exit) + High: Tools: crm: create top configuration nodes if they are missing + High: Tools: crm: fix parsing attributes for rules (broken by the previous changeset) + High: Tools: crm: new ra set of commands + High: Tools: crm: resource agents information management + High: Tools: crm: support for no value attribute in nvpairs + High: Tools: hb2openais: fix ocfs2 processing + High: Tools: pingd - prevent double free of getaddrinfo() output in error path + High: ais: Correctly handle a return value of zero from openais_dispatch_recv() + High: ais: Fix memory leak in error path + High: ais: IPC messages are only in scope until a response is sent + High: cib: Bug bnc#482885 - Simplify CIB disk-writes to prevent data loss. Required a change to the backup filename format + High: crm: Avoid infinite loop during crm configure edit (bnc#480327) + High: crmd: Avoid a race condition by waiting for the attrd update to trigger a transition automatically + High: crmd: Bug bnc#479543 - Correctly find the migration source for timed out migrate_from actions + High: crmd: Fix memory leaks found by valgrind- heartbeat-common _must_ be a PreReq: instead of a Requires: so that the script which creates hacluster/haclient has completed before Pacemaker is installed. Otherwise the file permissions are all wrong.- Add man page for the crm shell/bin/sh/bin/sh/bin/sh/bin/shbuild36 1554783571  "$&(*,./0123456789:;<=1.1.16-4.9.11.1.16-4.9.12.0 .isolationdocker-wrappercontroldo2cbremotepacemakerattrdcibcibmoncrmdlrmdlrmd_internal_ctlpenginestonith-teststonithdpacemaker.servicecrm_nodefence_legacypacemakerdrcpacemakerstonith_adminpacemakerCOPYINGChangeLogREADME.markdownacls.txtcrm_fencing.txtlicensesCC-BY-SA-4.0GPLv2LGPLv2.1RevisedBSDcrmd.7.gzocf_pacemaker_controld.7.gzocf_pacemaker_o2cb.7.gzocf_pacemaker_remote.7.gzpengine.7.gzstonithd.7.gzcrm_node.8.gzfence_legacy.8.gzpacemakerd.8.gzstonith_admin.8.gzalertsalert_file.sh.samplealert_smtp.sh.samplealert_snmp.sh.samplecibpengine/usr/lib/ocf/resource.d//usr/lib/ocf/resource.d/.isolation//usr/lib/ocf/resource.d/pacemaker//usr/lib//usr/lib/pacemaker//usr/lib/systemd/system//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/pacemaker//usr/share/doc/packages/pacemaker/licenses//usr/share/man/man7//usr/share/man/man8//usr/share/pacemaker//usr/share/pacemaker/alerts//var/lib/pacemaker/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:10000/openSUSE_Leap_42.3_Update/1efc2ad87d3738014fb4817b9ec4c250-pacemaker.openSUSE_Leap_42.3_Updatecpiolzma5x86_64-suse-linux    directoryBourne-Again shell script, ASCII text executablePOSIX shell script, ASCII text executableELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=5e6ff9c09ffae36f4c5546d31a0ff4ad0024479b, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=a4c8da6350a2448cf82ae3ff68616da5d1827f1f, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=2129c0f4aa8d94209f9125ba81bd2b11df7e43d7, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=58113403f2cf4d4aa025b9fd0ea8400f29202f9a, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=a85e443a64cda2f671c4b1728e6d2411d3c288d0, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=c64d32f7acb1c2bdd85e1c127781c7617a2a8c66, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=ad3c0429624c96dc777f2cc4222ab5abfe97e923, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=0968831e3672808d11fcd656973d188c05d2175c, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=688c05dd7cbad9051da06fe35addb0fd6d741bc7, strippedASCII textELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=ccba29ba2db0b7f234317965f0630ef62fc5e767, strippedPerl script, ASCII text executableELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=fdb81cc05dff0638052dc35c25d03949de6497b1, strippedELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.0.0, BuildID[sha1]=a405cade78ddc2ee6623442785b8b00db5d41d8b, strippedUTF-8 Unicode texttroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)  .7>EMZghu    RRRRR R RRRR$RRRRR R R RRRRR$RRRR R RRR$RRR R R R'R(R RRRRRR$RRR R R RRR'R$RRR R RRR$RRR RR!R"R$RRR R R RR'R$RRR R R R R RRR'R!R"R$RRRR&R R R RRRRR%R$RRRRRR R R RRRRRR$RRR R RR'R$RR䐄nq|VHcrmshfence-agentslibdlmsbdgraphviz?P] crt:bLL'#2rhb$1$<(7п:Pif!}`_'aKf"4\A'DS_`tپim߀tpk " ȼt`CNH @I"qǚ>y?بu?ǣ5FCTټ;\̍Ԣmz=A0h-n(ok˙2x)WsYsu(PY&r9TWo8~C3n6D qL4[>FQݞ h OʪQ_ZOmYtӖxCjL]?*2Odqٖb?jIkZl @Egq. .6#0:q}Q|,C@Y4tȑyFͲ}N+k)mt6]34՘A*%*4?N Y,)Xŀw" *J,qjoAn?[7sx3fT737. zh'(Z&u($˭!?ULw縓q?͍קqcá|Ɏ=ik7j-ߊP7 !ɏۛdzkq1׬\vV 6v8gF!7DY8IgU4P9/1J-HԢ|DH_A7-;GϝX"U_M) ?Ң%ë{]eYc?!݇U vݪ€:֗85r\^ wJo+wsCl쩊~2VocqA&oPu||b{'A!K]>|e{z /CtH>\ ̆H @m1KJ2c+n+ ؙ畖쯒16V3~b9/)KXш 8fbaRsJ 7?[|գOkZE5Vޒ_{07{7[E69j!<%/-Pw:굨Zbnuvygh0XZxEsKT2B1 +m|ri_}Q0 )\˻N$vb,U[2r%5_vҸ .{|sa\MT1+~i(s&x/ +O!.[lbh<>g"%<.~vj 7qSgsIs z/s$;ƫ}yV#I-&D}m +>oH+B'"N_E z"ů)O%ؐSrrWs|$̙ ;50Wu岅g쳏'ڃ0WȹOvaAWS%9 ]vL4[c&:\6߳";TܜDŚ.q9& ЦiΨ"Oe$lQnz@BS#Č 2"G FS/=jٌV^#\ s?e-m \,P 3*GpÆXTZcMMA:\y=D WI4ّ mb>Sfr;k\C:yx@*XxQ(guu~۔$?rOD_ᐴePOhrXJ;}d&vVڨL4?eCꦷUf֐&,#(`W?)c:G4ޠvRR7"q}zV#JxQUH^Ca5^:^B"n|`@:NR{m %n~ML 7@ o}|i㾸 ~tayy.pwU3;7rd5ElCÎ}-ֽDpfySgmzu@xhQ*t-t Y7u8~ͧm)pOX>)UfY^ňWx[[`?-pBoRi<$|,x1T^үJ(<]?;>[*Ně9L.e17A, LO)#'°ɂq9.<v:ЖaX i'Нx53~f5WIiWGd&T6g:_9)pCI>@vxFR'ߋUf}o=T;Hci0tO^E\> +uWKq(X4xu"UM HG cޞ묛D̕~CW t/<8̓{QHu>%r!$6`h`2g*A-nL̲҆6uǛV4|f:j$!<0ї]U\\}ӃL ;("1-D>J6e45=cM"sicv"kg2PH.rja/,X+&:Կ>YG#8O-Bs9qWEcx`"Naz$kwl˭rp/6=Y#OC A0K '\># H{ )`f$fW?ET0>(RU˟y"M >o c2ċ rZ8f~4II2)ƒq" 6*c:\h޹4%bgh)%۠ۛz*6.c/,r EN`4$Ө:hzӖ[!U`J g"Bo)͵$rŚ+c:wuӰ~Bwu֦8&H>%Iu?$|r-9dwg8rԥniK `8%MS/f/AЪ͍^1ˎ8{nv袅 K13_ï vTI | >)6WlɚaOiw!Nz{2nPl ĭF?N'M~]0_7~HƩKd}ۄA'd\aVdp :wcB͍TO4_h &@T AQģU>?5M,eej" J6QV1`Ys G'f⃻|XNnQAۄP߻0?ݗJ <;STa^R$<85%_S*O'ƘSc}qY ^dKsNj2fN?Z>:0=QO&0m.-\̆d %!xch [F,P`|XDEyʰa<;bex e|\Gp~E0=18Pͪ;ʭQCzlfE| 2{ICzb,߂e[pD2~[t_Hp I Y| ТRr/ɉ%/ߨW;Of,?ڻ}~RSj02Hyh6-g捎EƔf'|[thHG_xR/DXeDg/%O8u,pIKO j?o͑TW2{ xUpz4Ƽf!nABKx$/S ߅m|82"K4~J3}W4%k(~9W5+'=}Z5 (B-z.b>Cxt6AY:Tt`c\iWG3 E$ekK-5*c*]x ԰q?8cҗՍlq@u w}3E%::}ʰrct w||F<@GiSn?+adݡn3" Jhy3eէ*lNp&`38eJVʜݐ^kH}ئfIq\C _i[! @>NQv½wD ΫW9klYnZy=]2KNCCPExUX-c3w $=a;)U}^=LLw Ս=JW!>SY)-dR=rC^{sD=*#㜎zU46?* I'e棹 %C'6 4͑1-s*4.[x*c 1g)zҔE =u=P,7dr "ω_E5C`07_j 0z~g_[$E-O&e#)5;=ec)Ecr, &#F譨<@<=-L֥ݠM&yaJ#ֲMZUq_9/bgExPyج5 #ySQ8ժ&w1n:nT|f0l5+kV6ք%gfA4~Pϴ'ٸuS`ډ{$et3KC~Wkqg?܅-p;4PQڀ,T mhY;5A&)Q5NpW:D_)͎6Fq~ W05fB$ڮ^d:aSv[ J_vn1 Gő}/aQ[BNzx3)GxoYDU5F)_˲ 6eReA˜P!?OS۹½=ʐ?m~U"R=LCMԠ$ODQEl&U\RVz+ 4l}che z®R1q?}s7:j< H-{ +6M>YkQʖ$C4up.G94i93R 0Jdvh繌hꝆ,\o~(Wu[zn~qP6#Sj1F"({uW>gֵL%-~7۩ gIWU0b^;5C],pO^]v P v{V' 3F¤g{{6No+sIµśq]}M'bIa7Sxmg| >>꽎[B˴}WF)u R%nOFf4TȴЫ'/pJ^!dw͍W4>^Qa\0^Iġh'IJ-)e >#6/4W'] Us)ëo'k!]hfUt=rt̝x3oM&a(v5߉~:[*U'\0ވcS'_]̆Q"{=Ʋmq46CNp=*BQ{\4DƾM6gݚޘq$r=S;$mrmǗd:Pz@Zw:ōGv>uQy~{<^f PN+ch ֯.%CS_+BT7]qXxGPS9U`BH9idHpeL! ыPJo;Wwט#OO޳< ^f6 Q 5P9S9 =JA;clg)\6=AGDxܠIDxȥ%$"gЬ#1(!f4 e: + +;֫Tz+v/h;*\VF23aQ{9QDlq6 ,5[qgt!&erCC{8SIWDW}EX܅6;{f6Qe#d^$s'Gw ר"n.+#f4/pxeM".O![{؀ jK"ChDQٓ";_xy?{UވT9L0I{~i/k`e%%^y{h23.@Ydoy":6CY<د$>&\6t6JOĚ"F⃒lt&zr; w)رk1}.AUDce{|FL%K4NKפM ZcPqEk}ȲD0Zg mgi ̫oqmU_\@xg' Mm %LU(%e# b{A+pc %<0B۔5<C:EgO}Jy}&U!?s6g,,4xõűJHo'\ WƉ׶2hw>"~BgAgR" ~Q8(D3M+n+:&̼4Y'D"kQn ΃ĨUhKڪw9&fwBF <9W8)|ٺ֦QP?I+R"8.# R&4|o!Dd-,V86y[v2u%7\HAd6}> ;$nD3 3;pb`/C1LjóȽҕ;׹'Yn|}9ѷ(`,cs|sثoMK/\% -HpXV@uN'tYgY<6 qf$,gi͊fP`P,ЌFpzkER9w?ztz`l>ݪm#kqĢ:_95J a{TQX/k%Lf,<KfBs9mbs}Q4bN Pмo(d Aq6ƴϤ?GuIyQ.ݒ򝳵Kt_$ X CՊJvNAk)ԚmiҼZ$dc Rhy9Ƅ^KQ"OQ_DZ7 SD.!v)mbiӢsHevLb{SR/.xA$@7#j1)|fLmp`B-]]nP ѳ>VBUΕx(va4 IFc(e1<#G#CZm5ZIa/},Ui`)IAb1VV 7},d1FP༧8Bm/?-bzNz5M}ǰ=u/<\Tq΋Dl 1ڙ7Ya!eً;RM1@Bc*=k_n\pU7V/zU٧uZɸZzg||݂ 5_a}pr6=F)52ֻi.;w0~dK4E7?E`?sP@ŸU"̛X׆9iϫ@^wR^eΕE.[:reWNQodB\zj)KE7uT^j<k IL56p@˚b%Oݓ5jI6a~?Ɗv\]:ldb 穿8=hq+/i*Z )X78-T \~9B\* $4jY@Fe:"UWP<9nH*J}́'G>"6B>X[thG{ YȽ g+k'jApRH-dJ)# "7h.U8fg]H~iI?4Ӈ3o.,ԔaqQv049Qs@nD:*$/3dpI MҰ1NALS`z nQ>31]RF!05 zhc?o[ȍ1笠T'`D]&OoNQ1 lKBW-` p܄N>a]PDO)Q̠ uīaol]ت$&H7$/d.//uBXT^B[NxY P >1Gpُr[S>׏@#oR:9DN|`VRneyi bJSJgΔ,YmLXtjMr  SEU7RRne6tx]Hc]-Y5u%4"SJBm)m AtKZOZRxj@M/(}!1- t2ѝ>+^ N lzրy&S0HذڳfAT puk%~S#j-=۾b#owȘg8`Ǔ]bTx32FH-^{7{蒕Ji0MA!Pyhb{n$> Ҫr2>$SMޑW#sl5id&7YUw#ܬZl"oKG>Aufa @I>z$@X55TF%+?`d A([q%jHJm͗Qy*&\Ⴍق?痡Rw^`-N9W evS gv0UaJSМӜ 6[Ofޠ}4脆$5&?ȔyR6A4]NtSmEmdoe*aAu"OWNӄVUpoXLk˛N hQUyK p[8rst$Ss8d8 b*}shKʠ! GʧPRpwo24 ;ԉZݴ_J䑷 nbt؋e= xy &` #/LCu`֏[QnkiPmVϺb6~"gʁ 4Tñ YkQ/ǜjm<.So~Yi2QJ$w߸V*(q9B]EvKv6qYo(oWUgw 6m'@[ߪ]$8Þ]W 7 {xQ֖٩k@c<_@2X[u;HБxK"鯹J:[v[ YGܴSYl=a-._RqK5BMIVκ#}ĬG+$oEW%AZyQ!(GfAխJd@K5x$jನ4`\m!5텄5 鞽dj6Zqew]Bly`}HGY5 Vyqy9=N Z41f3,%1,JFxNb4Pai4U g0U[ WkOؘ/w#Jy…ޕ[jJEi-ϛH߈DE)']!ZqE?VX&/V8&{ޑIYf- BH(˨-9kPdĵzfHy| @6`CUn{PԬR?2]Op\=QW w([ɨ@o)opz5O]V.QuPx.FGmLk´0.(%lz_8aXA(Pō=`~_A^WkZ5b,'p"Tzz)'Ka A2G!XԘW_un0~ v#{izm\e GQ Î WݒKB/.{VUeѭDDB0 qkr %mcer)`\W@%1xkj:k a3_W Һ;ٕ9o&~ s`&L#O7h8>RA۪&ě>Mڏ&}\#iU f٩{2NIzS+y>M&>P3;k/$+ t+,_+_!f(`eV- DI[k1s¢鉡b8~Rcu#0\҉߄l.v}w"b9mGOt~U=~8hW?ӗ)dWh,N&4A_x]MEH׼ 'Oy\*dzxW:Ll+R4Jg|}*h`t'; eVHA ^j`HD}A?yb|爳[7F:?h:9|jH\EGC1`rf6.1S |v,(cszo:x̔ʭ:ס,U8zEw@ju&.uOBA7Y㼺~( ! ⓙՁ#f~G?aCƴEiNZUʖAhCjg lj)S}rDccM w15)5VBh9q>Ag2@ ?/O )yL]lHM.3;3ދO?@clлÛL IZ l V 7$4" Lc:it{ uCD=/&]aؓMIzL4I\Q0Po/KyFANCXZ(GrgLN2XUޔLdDGfsh5:$:N(x <΁PZA)@I3ynw& #R yq&41~Rf)I'HTc:f9zO\/!)uD3͏چ%-dB YP_A-a?Lcnpmn ĨOd*x}_`ynt6Ww{2 ËuNҡjїtWeβ i偬JY'zQZ>uڭAqڎ|0}$mr7m_}7^`BB8JkZLsGe*G-T[i ;M}_YlJOf|e;͏5Ȩ^H"pث" W{V~c޻z>A~8X_KȜ!G`?%: O>,4NUaiKX~*;76A>_xe-%KFK4魗 (H`b@ԗxmựVw,FP n߬WwiMY謝S) @ٮW1_#뮼z, }atyB)uztqsZ|q:=:ZrҦfģ*}x8e!X=4:XjC›м>GW_rVndJ0o$g&KIP<]Z@  bK ;P>re?4H9K߭h="k<C&GN*kyu_)IaDր*5Uߙ%R-gTR>/1,pC@NU'3iQ"-Mk;Mq]GhLQiF%4-u@8yfL25P&ygDWS3 GYtɷ0OqX~z-PXzx3pAj~xp.YjAu)v&+-!Lws jkAU"[O䫂xKI=Ⱦ?v t(oHx+@yL rcU'аPÉA z{֬@5D}ÐS:+Ls^'~fYV~X/XZBO>}&6 Ve*8[NiZH3Z86 GDLI| m3F-̿*yk&)6 R9@G X ˂i5U$aAǤcj0Cw#R \=뜼M@ޏgڕϳd,BG+r][ߴsmRnV#zQ{&fba`y&#v݌To0Q  3x~N:+kpdzx}Pb4H̡۲^;Ƨ K8Toaž  >2%3oD2=\+L{7Vlss TYMiDQ͇_HՋUP [B$::5Ok\ 5*Q#N=9LS|P ~7H`@UrSs^VxιIh/V 2cW#c>~+=L#$Yt~&(q!1*sg#9ى8=jCͪhmHo );/_36Ԧ`3`zS.oJW&iyWє ^apcj_p8F0B $;S fe&r9/X{ AX/OއpwNZ/XTƴ TQK](0ˉs8у{ 9αc3qwb/:{bkg+'4.Z }~TV"V );e谸TKK_*ztgWvz+z7wPaI,X ߐ}`a {Zyбh+-pIk4o<xQEF[IszhZz< > R7 Ost:ϧl̂#YHX0!/IplP7&LZ`%P_bbn*)]ES8 N<؀c ̎4}Ulx'INv~Jk׫#>!l\_=g/ŬH&ŃK^Az=f\_5qt}w zN% Dpцu~D 6I $ϴ!1GPbʅҙS9~Jw0` )#Zl`R񓊆ߣ 6Bhf @i:Q0~C2c#AoXծmV#Dm=2e>i@Wuq ☿g4)zٿ*vz^a EDZ2#,*ӳ3 s4uҩ<8ԫFSi!`Q yiUOt}KTl"Xi0VsN7-43%m.tr%s] AP1ׇ\0 x./?6X[9b4{z$@Iv5(H%J1^VdE9l'Cu2jKd@ `JB)0 FvKC]yȫv:o1P8fNkq'Q7gl7N _Yimփ4*pcWٟEƸ >A|SGM䔂tU1tpju*J~BqV =o id~_3ȿq%{^~H8,*ޚ Tw./Hb|jW$>Y3bJ`Y7E?4HKH9b,_`(ٽ+&d=]x2ap-M3zS\ G_d0R|FrDIag- t*8x(D/";Y/^A6 )%kݢ&k7"΁N[t=z{7NM=rN# ':М73] bXFu!= Wf80n׊_|?-`Rdm( `Q0oN,pdtU&1^"mS𔼧gm&^뱰2~ jq58/]HjR@~⛿RGꑨ85!Wo8qn^dY{i}BcAQ`fv,5C+U~,t+@߇1ri[!aG,$ KvP+eoV YG[^|a~. Xne)YIa7m-y_@qL|nt@~Abwق+deO>R#2Cq8<}i FtH*gcHq{nFyV*}zNgi g4&Y?7$\e-ׯڂն VIϋl38{͛k;i gk\fWU5P}hb<# 4o# >Z_$QhwBTCI*ꮁΌR:H T~NG>HmxRաpl:%=OLjԵbZ+)L|H[Cr'u*Lb \ Y; a/D`IԐQn@ JVG Bv1/Rc:ٺ?n>.x<WNƭ!13ҩ)Z,ZJ8뮶mπE|t ( m*,@?[\aq4U͸\rT]&Z2dfYO*YfX!+X,hKU&u}P2g /nS [k1(Uck/"p0iC*Asا`h8/+&HMR2ѩ;^TM$mrbD6/F$1q7@ *c&/^kb3RgfPⲒ0)]{kncjf)_1N5Bʴdr]lfn%JVm{,N#Tpdd S3,p 5BW׍+mM*uqc't&^h|?U{Oa_zI:@7r"^gNG/%呞Ԉ/vᙄ@rھF/y,ޑ[FERVƈA% 1 !Z{ IC؄i*Vտzu4 4˒j 5=N\989]y; 0̈́y2Cy-/rQ)jגg_a C&@<lԞ %WNЄi k: 84"B)rMo/WLFt {7[v.d hO/r33oq޳&mWL3lJE|cYg waj w{`8\jJx̟i;͡TE>gT/W{N!f C)ƴh[G|qzsECrYƽ P茷q+$Cre|T>l6sm°~M9jΘ ..f#"l% _eV#[Z7{c.$|ЮUb }ٷAg~OěQt0 >:{n:ν QB% 9p/pF2tuGoޔӑIE+Sh֝/'6K X~eRҋǺ釴95TB@, Ž VYAtOaI5bU+h=:ݭN3t0a֢UWmY#̈q4Ecj(@>$iI:+5V?@m]ݑ>~˽npԽߤNm}j3?oG&"D >柰ۖ .L*B"OjƊ.JD3r6#.k #r3m:{GMa)z}C e|\A,t: X^WJ$ُV1²Dfx9|8&ވU 2fQJNmzڰ͌k ;"{p)vۙU@(*S.6;nl6ѨxA֣*lO.aՒas/u xV+7m&*dg}aweD dzo;4;C#G^[Fj$dpOv& #']#2i;Afl sm@e;rj>. 63$|}g-5&T@LRM^,i'6 ӛnCg_G|iCV qU5 r$APcrLY$P^5۹5P9 I(b r>@0:F緩l3.3_R+`e-#}w*J{6w`fm5L+q$:ו.8+e4uxH ps3Qx:$1oYI`\[  pChv>3id:▧}qojfe9hsBWe'#{ xRw1ڣ$K8c֝By EJ%ݓd+-;̪n w{c鉗5mO EVZC_E(` U-/bU)ΣQ tI1iTMwp |;Saڐq^$Rзb p%K3ww!ԑ+І<[;i,ٱ!ܬpdN1tY"@ F:\?)L 0%K\UiȻ$\5.+OZey_@oyH36C:m+y.n $[|3&gꕡaPU~QorlJo܍)W/d+QHt Š(.}nڧ‘ e򐓎'_+=he:Nz/_7TtGsU-6ynLƐ(yLBa'Wvoa Iݹtzʒx ,0#bP/p*ݥ(JI'xiYsF hpYC&Jr:Ef`>xZz!&I]"m }-g+LjfxtV< 1KX~U;gZ6)"BQF~ )v*G u8'[@ⴣ)gJKIi1ߖ.7!J&\~a~}p=:M.̡El<ů~0Ϗ{&ma[b2F7hN~!|cx >_ g>Te`h,UVO)VUOLA(Š =@ ARW(Vp]Pו:O;(>b jL?cAtj.ӯOQ˝qh.Q-9*ɖT5]dPҀ}篂s|Ojd;d 3 /ZP_GRʅCt ,VphI(9rt moxl/ƍ_|Llm#JyP%0jbft,b4#Jl{/"PA0P"_`Z>cMz&~tRRe'a ]Bbqln3o ;#PW2YuI3zb0;r+^h]i" cS.Y[ݿFOQpDɗTݦ'LTwF {C;<繠g?@)*?ڇ:^כ˃n04c6^<ܒWN*E=xnOw:m4:[Ӷڬ?ڹ1 ^T@W$ h)*(.2{[eQjx@,n8C$< 8 c qlSIng)ģ5'9Ʈ}!aJ!U"jOBհZ9oc#Uspd˘j]pY5 D G`M ,Qn3O @QMoS7(ϾWB!0!F[jz]ݒ'lkJdLz1OnY mNZюV< n/D|c+PyY1YZEOLtW1p FqOd%=?îd9RFCJ[Ϟُb1<=p,t$?`fxqErJBOsu } hR;NZi8Ehg_Os,e2D[@+gKIк914 ](vo=x߲ zt ֬.%]6'quP1~#XE 2Z-ca c.$2%ڥ ʹ`!zq3$яv#ոڻt l~ `UΞ=XgGf"۷iqI6`V F*߈5~+WWř8ԊDzBI+QjoK JAr!t}zЀDKnHǡ(vxH5gh8[fV& NF;N,=c ͺ8 e۵ pڀ=޼L1;YzFB`qL䶶wki1PA'h}O)5mpdeM6*@H^Mdb UMnYxP2LJF/+kx8hwd K|Yu{]w׹ý|ϸ}`UH@+̙!Cr[>K|S_mB4),2ua Ty@2Ԯm,u-uV?j {{boB^@F%p}䧡07rn*(7}6S!fh[N:\0niU/^I -o7>#~ Fc?viA55ȈT\VxD̄؟kX1J4!SuGɎ4 @ΦsI^%Cճk+Ʈ !8[A??R0uye֓cbyZ0)2V:Rh~OpIRT iKuݓ3>/ľs?>;I$.lׅXK16İ[c\:ϷvMjWlm>SNK&%ʑ8}(e.6H ν_>dƙM?.tYt/G%pl@ ېދ~r \z pֶg-,J$Վ9rdßv5<0}dH`uZc2P 41L<ꯐ6[ 3,U;.!O7ؔW&Ž+F?bt.)ʧWNgb{g,lGU"8$qd=t B#ֹ+,Q9cQ"tF=Z|DX̣{~Ol2R}rJjVuҕC6-e#ɩ? -՗ m,JQټ{~[wHBqbtz۳{cJUs|506H9k4c*ijSL'-9@h#K's?Tp^tu.;936%Jr`*O j0/%>,8qjɑ\SUsyBr9fd jh:?MK %^Xhyvu_=մ74㛩-ܓ~8C zFmRDykτi47&ChN.m\M`F|Ƭڍ_ WyR?:ds,M y)g_Ihą?dzFNUOH^~-w7Э %H{J\~- Gm^X<kR/8R"lӢTiS+k !:~c)m>p"s#IaA9s|B=Fc3NV{ޫ%z*9LdȞDHU7 ԋswݔ&)9B8"7|OfЮhە|EkH\_-> 7 ˵1D(U;q+zDM \:~thy(:&.F[`U$"8p|_^-Ieb/li)hȀΘl.E :C-J7Qa@E;0q";;ZKʪUهSkbj ٬27 {*^Ef|تn9)ǥM˱Z k]7@i˫=yAW_ =|,%] 9|na>(_h7~AYBNwA)pgZOivlV!"E0q\ˎHw?e,j.n1YDNԙ+BxحV֜+MO+]&y>Ȝ߶ԷI$x8D?38@-vOӤΤ}{rљuXjF握.-&Ks\,Y!y> w"nQ^>=b֏@@ҵV#V mύ ([{ܬT*MDb FG9ݼx WE1i,EIWصbr*IOڼ (`mdD}h43֌o9ٟ/NwA[d@H Q#d3{{ +l!ۻ^*換4rQ޳»zP4zLNybst.#4kQh̶dF˂ml9˳tgg2|#vG)}8@yѝvikY@vzKH#,_,Qm+Ղ4UeRp} |_ByQ?=U=qT@XNq̮իsrIFXg([őG7TI=(2@ M3T!4-~v%xEZ+qwܻ0xE 8W 9=Y2w ;u*h?]Q(RI)M wLWK;A MEtʼ^>Iv#&"K|A)4Fu8SYM5jqj3 DZv!RW% p}av$tR ;pIn+ ]DE~rag(ʨ%3joYYXzA̡um#ݝ?uD׹TfKĭ0Gi@Ou&kYO5Ij8jny  ZWpBCfpA:LU4;jMS3ːbU qrzo`XH|БUv0F{r\ex1P ^ྫྷ >#A1KR3cK^2HDτ(0w^ju&/+[&A@$I"0 QbZ5ђd.}OcycYK.wf#5o R3qN6\|Y_tmo.rkG^Q6Kq.}',# _"i *x@Fš%,أhL B@H/'z1gB1uZ4v,çL cnSӊ.rjxcFXXx\VMWOɌv"L2yFj8wZ>cs|dRf'q @o\mk-7 OArOCnVT"~N|ɭ-E l?Ă&[Mc/ؾ.#͚ѱY2P9bI2d^*Sbi@zkSLgY'-|ג\? HhAuCu/j~]O5)-2bN˕񀿂0Sf$~At% 1mjYxBLSt2.fLNt(հ-^)C*y3h hp2X: ~Hrv&ITWviG}Xu`Y8ED}Q9pKǞM-r僟U]c,'ڼιbceNBPS#yٽud3 v*Z(Γ =VId P<OQ>& |n:\ d8K286p/77Y蹞L^"5zӪ>2JWd?gQ7x7%95B Y(>$O}KC>C!XEdM8=\ !pVޒM2MYou|H6ٶ^' 4+`5\XJ<HVw,LB+g#Jߟ7@+6)ˤ@$akI;a6uz KcVA![WR@JSջaLtE>΅NܲEЮ˒!ѐ&O#p{uXSL= nOCemhfNkOTF;2}!FP_W&˻r#I:G66?_8,+p۷Rf@.)~Uf v*:#mGBשsG!GLtd]>,QUk-H:sXјߠBqYG + nPY;om.wn[ Q>q,Hi\/uzGQeB$8VߜtK#V YԒ rfZ^Ƕjsw|Sͭq0X LιP,:I'$RK?pVҙ].hw~Q`4\4/!L%ԩmš `g]nJ#K&>J$8z$W{ƕ|ҰxFc2kERۤAJ@!UJe$nW$w nj0&H]:' :^b"6I,Jp^P3~~z?ٸľ 4,%&oCn\PS%\_8=%Ԑ@cs OV;+˒bD |G 2AsY]&zMxXԤ*k1EvՖvCNٳ6$WE{ ;\]肓NjqO֕J!ʱq(Se}X B뭢\jqS6f@f}.* º1wY=FBQX!JKHjff"# *QW˺z$CQ75T<:]zK.|(EႋF {5/^Bj49 #3?McG^FMDI!QQY}a6:|rn,OCnKgg\UvUk_>n QwL;_)DQcdm#i^ca:;;<(g+bio=kII=pEb"DDoef(Qq^~%0 /PK>+[/!V?Pt>YTQ޿M Sݧ͡h% (ja_:dˏ+<jOԌA^PHԳNPqՄDs Nٰ8{aօ @` A? 2)>XvaAln^_ @n9:O 2pœ7E &t $2$OdOr)<`L_𣏕V\][2O~n֑.. XHÏfO81bLϮtUT %#QZ3DhΤ5Hճ[Qʗz?7tD'_4ir#|'n2CCzXW82?U8t(DLowEu(doC"&N ZQK'k@|4_%zKI䙻g&`"gҙSţA}NX{Wg4t] 2z'82GWJe;CX|x9p/F.(cpˣt2_Azfy2!F\p.KCm@\,q,/iלiO`k )6%ACފ *?8\$wKX /߭Ϗaß.XK>D #P9/ 6%Hf.s9D5_mKO6 s5;>:q:#x TEO)`\&bCl4◼|`P.5*@<} {Ĺq݀}% U2;e 0M&:/wӀfȰG$z~tHAa黧[>.U.^ oT=0(e!akYUd۞uk+p>NhfF+3d,&=VI1Z2f?UX #HDcOQs!X=j DuɳݱέXrNZR\ ,BQ_[78 $_]y}N+|=X"cve9s"VMs9F}4b`CiOFﺺd˨h'n!kF.LQK;!ļ# ~i^.Yb{.Z:z+i щmm?0yk n[}:)ߖ#O$'`AK+u!a'yZRU~tg#1N)2];,IdBą P@3Dpf3AlOIuŃ:U7WKf\ 'o%m܆N4F޷4Řmu=d-hj[cf7y<ѰL$klg" FI\\9JZffН % 2'PŮ"iaGj6&='Q˳blBH4L=0 H}[l[5ݕI,>X "&(upsɐ\WoWڋwQeq(V,8gUg'>8[Nݠ:{A}7նȩXW|N|7'mp}Z$GӤb͒^b'K) 3d3MҥBS-ytFK౔)ʹeֿqR\y? >j׋,ɸL!¬(ر=mٍ'Z~E%Xdp:UbֲC?1j.l8!k_sؓƒ!ES6_`> 14'w}gdIf;?GRyDOG ' {[9nVWhȲu:ƙtӘK%zc)i@ҫS ɶ dBA| a@~QܦMĭca. 4ؾ{z+~r+UfƊbbUhtN Z\G?6<1%14H!bMbӔ@hjϫaWo\YsG/L-2_3+Q׼{L^]13>6;#dwKݺ&0XQX)״"璣OJ-;W{}n8i|:oy-5|,!;5Ş2Z?MX&6m! ryW7&b'L\\1u"-mGCˎ_xDM`͝8a7&dAҒ^vOa8CP)ih')4jb- &DZgg}$+mWI*mbzbK@[ZW|5|?7gPt?|!Zzq,8'pnž/m'=$NX2y1#W!2]QFόt$x-)nQmrIqV%U,yݫ.{ur{LĞ:(M0|墏&D[Ոt !8^Q4zN˼[`1Q{ɒa׍#ECC׌/},<;k003Yd2_1١e |i $>F.36\vT慐,{u!GGm5 TsgLi&NI$ϝ>a&Y82B^XɢșH8 䟾 >>KӉfO6'Yq($}_i7\FD7|E2 =૘[Aq ,tEU|{ J~̉weNԕ zն8 vV&Cqk_;]z)ex,8V8[F+Ζ6m%8 @,F0"Y 8i֛ևjJ͞_a]NE 3A@M.ɖ$DpwGěOTs^q UL2`xfe49,:;qNg:^zLpV A^TG6Zm㝸f1XhRD$$h9\f i o,I$~Z嘺.:QfII\ASCv_6âRŪ |g5C{uDڍ(ҍxfB1!@{…bEkF݂v pBM?uf<^Iui*ǫ~CNCy%?Ommk-s8BB p3.\a0Gu 1:Q4dK I4ǧa q;d2[ծ?~cMB!>'oy]C?Ue^SXP/5vTWܲ{iK|GOCiRޱ[?9]DYqP6 a0̜8)ݬŒ/[K1sP 5r8,űkC(tףÐ+WM=)#5x"`Z|(7 дV]BGԫWRjao;<ځ1Ojɻhᅙ|Zr_[ ^<7&Bn &xnKD P.۴+?\ s7Qp-֧uޫ9tkOH`m}NwUz 𿦊<.4{l!֨L$[#2+xH1dIqm3_U m>v2z=lC礶1 j\Z3aU 7Q⌙s]JCp. 3Ѓur" 7=^Qe,Yhs hwTR]g!6HN!,kce#;gQAquX!:sjnClOc1EadH g=O޹{k.t&Cţ :'bZOc(4 jlG-fEqߞsL_F?.-(cڑʂC]0](:<,u۞`}"Ԗ2˒m L T!o@eW^N-=$ÙH4M^醲 p8D_)ˬE6+Jp}#8U$1k4>54 ނn[Y7 ̋.sJ0.o,ȑ([{/xTOB rLؿ ͤ=, WV~BakaqU~$TWWv1L:|$\b N;1T[0l'AujX&5G:IA^,?aX?9Η+a N;HR|?RXg"5'rZώbu0B-z$sIkZz J 3蠪TN hi`!|f+cT)jT.Iz]Ўv\2m m[Z[&mq!M&wհr w 5Yz/F;8dCl[YPN+kgyE&N~W]Jf$ryܔuH6&8t7̋}pku& ɚFa2Zu4^G#:e[gIX}y`nuz9 #kT&T-a4vVJf{9Z m{pEMu]z!;~ϯRe4o>)[$FtS9}WN5nVVmQ.ƹB\eo \J`Ӿw#by۷:U^6YuEPWw#!}c#k@ 8f䞊|^K~TQfde2e7pp9t 08#Ք!`O`J'N0$ :ѷ,gcv NJGEĦ1ABF=AzR1`3{ Nt8!ГWTYW [@>Sj N/.HMEek e(",Ұmڹ]8MuyI'/ kzKOQ'd4j ՛cr\a7~]5JWj^7kE{33(K B)  N3:z;Yh}٩]{I5! t&e+oAh@[u2N'7^5j{Zsk2wX?]c7I L%>1m-hfK4-]KV=qFrj]>q<,m"=GJan׀NP(M ,p#7yێ&=/ZOP,<;HNK| f6~f֢(0M _xOU?vcM6* ږMJA,CHӎk`_SrrxGW h*#1F$hA e/T{R%©q6gz jӥ&6ZE/eTNAqFH1oQ<1 ba? S sKI2pfݹX#n b> 1oݗ84PutA}5V{ )gv9Y\VZsDRd%_p)$^cP@EE'QZ\!\l`'0y45 ʱX\mj%kӚґupvFbb01e %[T\mAPTlJvc+ms>x!I6h+j#7nZ gUiY1Zԗ4yRS8{&w\N4svHx[fZk'Pᮡ 'Ir&xdHT`OY|,B)|pvg % kDn ߾?/h2;>'H*6Y(22OWBҿ:^׍+ o`m8L̏%[g؃3EX pW2M\W"R%œ3*sڗV{I=G9=*]6k:'< e|5OjXB 95p[_䵱}ə6!+ rH |Qr_O b7 ?)+E$D@phύ>Ab=DKA1ҟAC>Q7UԿR4vȹu4z]/9EN։gsh!Nҥ2h&-ġhjf#!!c#J FǏimߢ-v Ft`dLʵgmV,[V|(|9Rr xMj(mkC]J**ܻz\1u27>ӱ˭`R]RME!5rA:?wdU!%*w1ի=MT@Sp4wޜ,&{S?7Q>hDP~U%P#RAyMH.ξ[gDA9S,\J,nr,hݵ=+mFP-FE۱UVtP5w\kRO!ul d;{۪G|?y[3=˶kIƔN&"Z VE4#cǛ/A^3B_!]Be}9MY`rE{&)gOUñ2y:ΙvK=Ϻ,ڨN[t!wx 5^u[^-&*M`&92ügJ6sLΠY/]4sr\vmջ 1pYJH0we 2n؟PNoʱ`:K=~ rSci>4}E 9w)xAmDZ*ϯ٫oOW#E'۱cv\ZXt"ˀQ3=Q踹F|],@q^ކ c%m4^4@(oƲ f_MPc#ʓ|E+ dI 9́1}~ӽaw΃rijN*3&!ک= 0޽cI|mԙF';p$ف$H!AktěႩԔ*+~{a(0y48Ej"XDd/q,6 )>ُ`|VLZn>̩wdoHһS1uu;aZK2@x>2j~l/H`|vo 0e談m8x羽`!q+UϟvHLh; ]n 9muwיĵ][v~&C#|>(5]P Q4R"6Cxtؐld B%OׁfAivqzbI/tX>9'n8IcJ·ǯey4]Sv2a{4ΐB'G!4,b8~FꋯgՖ65Xj+ы VDhN]V<872$zm,,&QJs|D+9sD^9bԢvdLoTo8dwRcqPp0uߩ(19zleU'ѭܥY%7uʴngiSHtvy_#[x GՖ @@]d=)Cg lX" ֭e7TIGtDMZmPtO az&xCwY`nx#+d_8VŀL?10mlS' ]$0\ײ_¹IB˄h'ėߎȧaq$ŔhmLlFZN&|#' 4Ovs>[s^ ^eLIQB%gqX*# xwuLBK3}>E3[M(@\uJXEgЂe?+"].w m{;2{x!MI=>P&9P,׊lc`k ݨi|O޲{ @-L9bZŕ㻞s+^sXęm@FǷJ C,Tl'c5{ЄgT|fw-2lSr`4"T瑕[Af7@* Ypp*e]ce_0ꕊ2Uu>2EFTiabǘ'P]Z߉n Lá'f[k%fo4`ndB7WcxMSIfm_GAY1[m)bԶ ΂g[xyEj>6VdEk"~9ԋZmŽSmH[ ,)[hjjڥwWYiA]o&qˣ.%j9E% d#N?ˆL4̊z$P&z<'bhgMȼJ1sYL켅!;nkRA䵫m ]raRϨ7sֹ&C] Uq'OJW9kEfuj8[4bp){UՁoOZT.Ж+sKy H[OLvO~3qɜc9(ZxvAtO͵㪲KSw/qŜX,!F^^%BDV*z吞luaZtn'h949ݔ u > Gܥ o.2ȥņw@D?2nM$&uJ~{) -n8]VDŗRߗRo8)?:kYIm I6P%b# ? /.`bR-^Yx=m-=JֽmӍX\|Tgz=9#7,Fg|["M{|`b+Ow:Wf-2RIYUg8 !N3PEGY9 BS kTm2X'-yKU`ypx Wnmpk+'7a,Qe\/ER|@Z,,v`QC5曨1v֝>i־4U^X76N1.+{5=59E@ڷ`ztWij F3m85kG䱭Ti?{*hͦDAܓ\eA8'(i;r0@`9=L=ͭ!Ϳ6`[ćެe.P275A=De_r|C0I Mz Xy)>Oh;=p9$%b뽮cA=v%`B]lݥ;1t~Cu`Y=iH7%QP!=UUA[̅귑{L=i[6D0|v^6_q(rܬ~$F Zc9-PILiD` #s\%د-).RHKeL6ڗ'?4j'Gǯ(A1];z=6mAvIHӢ_I鬙d*TTyܜ+.ӹ hiKN9c1k]1v<XٯS tv0f]=6?\ß23`!|)OaT΄Ϝ!n oZy m!s8ƪ&hEx͝ N<=J㑶5"?g$kB^u| ?=}I~<eLܧ?8pL& zԞ.Mw"E`>Vp)tl:V܇N}ںo]7`d0h^0zXUfV^΀+TrBֵ4vԏatEнsx[1GwnY?<%0S Jgz'F4an\3M4TnX9ٴiEMXGp7o꼠;\]Pudҁ.pQ9RjTVTkA@-bhܘtXb 1XbG7•1JHQU7/50?ST#/ai-ϫR?ڰiKBSXS%EĐs-+9({1wpM1|ʿW.Ҿ%c*ISN_`4r718x,Rf<'2=Z z"=B|qImrz ػLA'ࣚaFx'XJh^/#b.8q \Loae幟W 뤨 #W  rgu؍1~Sjw.oZ-.\E/zh0gQ[ ֮W&CX{uTJ\j.FrT5eW 'QL[ijgFz 3;̑0ć B$z%TKS'B< _,V1G/V,"19HIrҟm "*<4[/; 㯃фχ_+kOV^(W6{z#2y;0.-4A8)x$ ]y^P:UX>}1lNg4ݽ'ѸvRcܮPJ}Cv&&ym-; }4魌##mMIt5RiԼOZ.348 t]=*[̎SZ >6LD4Ap8^zz?'P*Q $%пuKiOkmlmTKgA8[Fj?rVw C< x8~?kITᾛ w ]ۻ|l+ѹIC:{~>ALXnRDуS}|r2k="?L2ܘow\lx/ e|F`LïmӥS}\m&lp~?5>1mG_:=GnH7#[֡6lBc8(>kGW?} x*+ S*T{F1 隋!j=1ͬ!CX3#.:r9P Ls\kAKy63`ދ QStoQc]q6PNbspx!QO&c茣FboE`WP)Q̑pHt,j xr@7H19^ܹ߫h_48 NڥS,8ƴú!),ځ#3`=1IKMK*MrHK#=r DSa^MW>)BĶ)`K 5E6o 2F,0@ 9SIctB,3N ?rqs35loZ/<۪a2L5"J[1kLiM|OO}nynEU8uRNn0kR[\DrBmD ۆc;%43h4 getf3Ub+ bF41ayBV!Õ5JMiWuOPt)q0Xþ# LN[^&|ɨ+:M/ScNO'SGBO7X#M*?NC1Logy֩"V#Ncl{|ox;܋28q+Z|jha 6(`aME\h)f_^;u3'B&8KEpGd2𴗚&z.6OƩχ_4P`@}fTjWށ-*]:!=p;e=9E6u=݈ Qz :8@(o;W{IAww 9?ReW;!tѸ NO]Us4EBH AO3&hʝvFA2pU}@i#4=X ;BVh쾮[D@jqF:]QW/% ; >!@') O0rU@ҏ z.`1w{!ĤF.Hx{s)YۭeqYKIZIn ͭq||, VfcuB/Gɦ/n'|)]ۯK? 䀴 4[Z| R8U8#wh3mK<*ᱮNt^ 5|n߳]&UZ|hXm@x6 maԎ%sH"Yµ8HJx/+ iY;K9KD:RP)thk֜bY7dx|4^p5Y-O4&\~Ȃ޲[jOM$_6Yav`fY@!br"\7YGigNRQ} uXrK2U3QۦC0~m@ )ջOOGdn;뛪~>oJA |}M@_`H!C]&7<֦G /yY,<( ګrAU!z==bkSQṯ%η$K _xˎFϐ@ij ^Yڐ~SY/}*>l:a/U/ǔ;lF9Yo ZV| 7Rދ"\PװȠS X֠S7b?v|D^NZXHy+m" GyJ) 205Rz--Ұ2S;# "_kW4\Nm1_1a-Huw%=`VU0[_noL ?QX?k߳#  ~'t+1TJ.{D2t) =rDN=L*Cr;m?̌x]4Bk:}z0ujAH>0C0a AjTMwa\OHs|PVfAsk0]6G}(GD,Ifʵ>0uk(ˢ84 *d?ξv8P:&ԣp~XCJ. X*ҿ3y4Z?KZ ] x%e󣺡VO Zs@r/= jG(hd!#+\)N@q.Y/QherNe{[= x-.t h$tvqe ɾ5-f_G%KɫQ$vdI|tv8QhRvPd~߀fͮ2~d-/FꓚжXQGvȖ+F$u0١ R_Cu&o<PTA*"]Ft3ǯo~$,.6HI%x奍]c||/pXc|QkHێ=M/ :#n^ A7c 4|yRs84(m?EH5{5. @K gj`xRhBeN>y|BS~aykP7,ۂ Dg;Aa֬@020Xfx?"rjd` FKs: daQWlT t#Fg[3 `+J f`؀(SW_Pm 8zhG̾/TOqa$)>~ :Ѹ$rB ggqV=-z"8mkNw58@ܓ_ 3"~jQּUJ2,XO5 XjeÓqnOmv gLV2_|[Bg~S="/v e1.]"9Ghð .]/i-&@K5BY^@}BAD73Vwӏ?tb@Kr֚uvc ,xwሌ#]5L%v jSBEҒ9{V$F 1 ٲEި*Q怸2}eo␦%1`J0Š87R,}G!.:()@QD44OBŸ2 r46nNx4ew$UW+3$ߦ ȠH!lk XX /t0`?Ii'\L8ydzM)xQUT|?hf6ڪ9;x poB7֜ch#a6,6&8`+j51ٌ>(mo/N*kKm ;"?vw!ΕqHY?gw@ÀdaaJا_Q 23YWgw.|*0WR<N^ @K)G~z^WXlAԂq^w2ÏvQ aDpS$=M5s*0d- 9]͌Ͷq:;l8i#"0A;Jȝ 9iPn s-_\ St&#myi9bH0/`2AxFJm: dK+L *8} .q'S/+5"]0C=<`3A41)c 朗/etIoq賳ɽRWKRjxB{ d4Af| 5K T˻q`SlX9X#h."G2`jD9D '-$ϴA[x@BaZM2hYcbMu@tl1&0:3d,g1 ׁ;H4$jH<~|mZe%س2ܓX{ۊ.|ϫ_{IVۓ>b'ȚѠ=`n,zQZ.T>Ϣ:11",:l #]&?ʗ€[HFO@L(=MZaū⻕TF}-h1lWkiLUҲUn2a2 H}(@n Ai{Isa8w6*}-]"MfIMG-cj\s׈%RUMhISK(w(Z@}<|L_:8!G9!BN'š.s?aR}b(Y5mȕƕ?j^u_VPq';nvgK6i&.N^ckT7 e5+LNT\HM0+~^܆B-)]: Rȱ0+ݻ!ׅ۰:N2|l[baI﷊[i=0U2̆lOhژ$Rа p`0Y5}+ͱ+E if,N \I _z/ns(0vk,gMfR7D#XS+)~!yXWCԃ/e'ЖD>^[~w~2=6)U:KOÛ&ߑg\ Y!* -M Lg\{%b8LEhRZ+7ŧJowAʛb"wpB pdN]i"'FWJg:X#%d6LCx&n._BEqЭk2oH=|zA/p$&CX^3?<83M dM+^7iT]ڎzPJ~KȘjg̭~GK}T2eI1dRU-f?ց9bV [E*@6^@QBHe*Kַʌƙ b_VXHD=]#)'G!c ҞS %oiTohM,Cgހ0Nvzj51z>i={|b3ͮB7j1/i^'5g/2 ٘G%tϣ`8ST; b$ 18㇏auOż\R&1ya됪# 0:kuc-9 G%>YUܙ&' m5zk3b,=\(xSuf :VCiqH}z5q'5 &ns*- E%G)rAXe偪}ذ-/Ljb"8ذS@,_*v< R S龶ЪA Nf}&=U,ʙTk!QpOԁQ~@Ln(>")Qxz^}Uq U&?ĕm 㦣R ~n6mh?C5"GDJ `*X9& >!#|/ؠw4KvӋn!!I˚} J3r&}t(K p1Aj8jl=jW>"66\OTUi&vY {JǤ~2]%znjɮ[Y5RGx;%g}dsf'ÖbO17&TTKꆫXNAĜ/. ]Y OCTS˳ϧR޲jҿHLG˙zu7L>"%[:Ϫ(Z@&b2M(R *ƑY.:uFm<ܣ-"qp|V0b:j:@-nJCk+ƫ]`CW@(3lY7A}rmnǠuKVyppEYc}1KHvAZSy(Btl`g&EBYr̯x{8rxm wՌH1#) 1ցuz 8iJR,&M5ӑdYIJ? %{ܐgEjrO;nR2qtwb(HCsD?mx&∧3ѳ5K\ɫvh qw\IIϕKUQNS ".ߘ&jT8bL$ ڝ0AQMǰ,FcVPA[n"\LҥScC)vpl| <5.5G/6RN hO Aؑg2@M [rm_`*W})^<֮q xqvŶaei|1ژ'6Nv(II4EY86/Rܞ?1s!cT ȧi rL[YRJobjש\ DH) ~>Bߧ=]-Dd]yAR~ѯV|KPY^-2;\=TXuAصjo_ذhUтifB,t1{jǐs_;.w@qSC]K]şzװVXv: 9JUجMA )ޚvbvx}N}uN>UYn)d|3<>)͌Dr8`d_ ;GFS0Dv^Nϧ~hHNI tQiݝ}1Ԟ?Ѵ^7 u Z BxL6#}Na }sv+ п}쩆3r\Ӯ#4^w<;aɽlUknCA3W?׾C#-Qכ4 o/Z]ݴ:.q+ڠ0LUsoyDd`d`)V51l"4="j@t*i {B1goŴi R,Iʏ!䣞 At⎔& k7L%|hm]?Uh,.@㉊o]7H[ԺIhGZ8 LztϙN KZ/̐,wfܔ~ca/\wVw.= ˉ3`Dt6{RoӲ6& YV}2YI~L*7X2zX~!)$; 6ɜEkaarՖ|ݸEYy:V*BfsQv SyT5<=HLڤ/qMR*Yua瞿8HB|V^VHObA푒At69pzPL'׺zOv"W>`OTmUr.?~ڬb! +{܈ iE)+5^/w^mS(y\4PzgvL˅l43O[WzH[kWilSsfPZ68~ʰK"վf#aX}ep5Ph?tJ+;A}ox| A4Ss3O.5K;JimꝽ9hIDu5 (ݛ8,Kɪ!sHտ8E_`è1ǭI2W-[jMuv!1|e&^Q9@Yǔ^%M}m~YRMjE"E='*D B0GEMd 쒃=Aww;2!dippkZh&rGZ tV\dRߥpbxJJA`MCLn߰Ta޼4[lu-5d%h%_"cj W4qTGC)?/9Wb%&J(W#C'Q:ض*!*2M~0 ðM-,_\eɗsNDƒpq`!tXBw=بڽ[8w%jeP _}qH1A`<ۼ6\6\0n$GfڐU*n.t445!Q<eXfF,S<+/ӆ= Ư;>}dyZLS-ɜSz'{*7Р0bJ]煇 =G^I{ȨqT=LͫX\>7Ox\(U1Gy}ո+켁j5A#`pssdsN(xq F;,YJ FnWL0J<$(o)f1'xj?" >si,DxMBaɇEz^ɽ#EC!ǒ20^SWQU/;m[<駠ZH2N/GE< q"!1qM^1O?L{D!`H6v4ך?Je'q?iAc:H8j۶K=EИ* :Sc@UEacv\h<.sń@Nd5-h;8>0'H[.,@bMU E^UI=Bs):З>~^; Bb!թ6B%E٦@(tE:uGum$ l_2{=gfet2gi;.9uò3'T}Ucy ,V8r,msw> Q-wiOwl=Wi aa&!9I^N^)d Fg+ Yaz%mF?}E) /w>u0 Wq;|w;!ג9剆~[- ;\tMnfi>ޝt;vF8z'DQA|nŴJX%:JG**p WB-qu61) ED(I gs\e&Nu&7t.Sn #]6?Jf+YpܬT@$8iǼ$zH2ݠYl$m:))*_k$!P?`,O}5w0NϮ7)Xޯe-}ho9ZϰQSV+I<^I?u;Z_5Ro6*'b)%l!ai%4樊oCJ㍹ 3{ :u/Mg^eb%P_zAXMWaW*zMΤ㝁kM; B1~OFӽ. h;0w0Z1D؀EA?̪ۙD Sy ^1H?_Q "14f8Yu%(=W/=;UNsfHGݮ)^~J=(9$`n$vJRIro η{ڷZ1RGSџkIvUhV$ (u Ժ3޼ǰ MAh<.=j"o~3y?aD=lcd^N/6#MnoDJ,l/G PMy}ϥA\fkʐF;y2P!LEJ1;\~ 2#;E>(p?#ϙw_?;]0&edߵojwi9hu<So;ǓN _x; Y 'w\eXMG6;nJ$$"eɚJ&S?~0٧O}JMԶ d9xAYiJpo;,fr!uk{RPsѨ?{ $w#禽Ho̓­O6E];wpG@{*,JQj&L2nϜ&3Q_$~ѠvL6 ]a <Е0$,R%,]4cVeN J0y!&pQE,TNQ^9MxQ;A=G~m$unbc+z- ߏd3o-G<: ckc g:7(OBݺ9+I猚 ɹ&P"PVГ4.#2wo^үU&,\▋/ ]btLT7HK^^UCSVzyߴS :CV3sk5dh]о ZB}9&\P2磡4j¢őoag,oT4ɏg:EVX^CAq1}kq<_tfȄJ6aǭ-&tM>y%EmݵP$8!J]G6ݵV2LFnTEJ{Mp{F3'~Bvj/䡭]Q1ooARH󕙊c~9{Z@\|&w3!e鸟*y^؋:%|_Є6:UIjPB ^_yt}ֵ$7~M\f>Qi`!zb!|zjMq?qqҦ1ޢs7 ֫1[8;ݎF<<=`K~V# &9hC>AN dXCbIO0-ˑ Z.]K5Z џwHft8izج ܚ|f񎀊L׫ W5ķzRV}EFs0d(E5Z9p!ɱz,>6WeրGN"?M|h]_BPE/ჵA(f":HnDیq0= P)+8~I WMw|AР zQ^Մ9?:D8l;+IoNgwH)1PNu8[curl-W0Wl,Zg>``9ȗ;381øhh; % H鎘dd8il4cP_ŜR]o8;x0\Ea^+Nc< cKhs2RhovjAU 2׸BnoIe?xhTmrI'78AVޑmmI"6hV4!6l.C%ԉyTrz+I9QBh?u[LڜkݥT #IT^xa$au0HNED٥mdOA4|'IBNu %,"a\]e9ޥ^^QTNLժL3ߘ'BKp;Fd"z2='&4_"+2.ER3QZ&iX-!I/XCoUrz-.?hዐmxCэDDO<sN;woяH!;n]d+)~ :(c:וP=& N)șhVze^c8$U; JO:}7o2Qn B`6? +9!;{/_k*۹-J.n3ުMb->G+_PDBrI|h^w2hj=yW<yGoP}g@n.MeO#d$q&;4yRʪ)bYz' l6>gx pL׷!q^KcAsSކwB9X/ tF"txZ}Ս<)[Hо8Xݏ^GbV%Nk 0O#k|tg͘B$@;W9 ̚Wl16^Nӓ< \֤VA|AH8@\@+Bs?܁#ߛQߖ-Dfk <i$Ϛ44G;aU٣o_ĆF#HX>,idtg/cb9bU2*Â{Ww׫+i}oɲEе!Y.'ZYKhl`h$æ;.T$"USiwVƝ1Lt|ĵ$N|V31Lj#M*OJUf[I)޻//B35ѵVi76LR}Ͳ} vBӝ3,Zi|ZSߏ N,?͜KB퇈HƸ {PzZwOΪr '?l9ֱ9i"欭-WGY5E>Pc l˘1?x׬J6LQZc\`ܻBv֔H yA 7`4tEd9PD<̻Y^z!1/x{ ,9b2Y}?0-VICc7~op=0ShHnpt#5C\=[4:=ĕNqgAM>{psPjA$I{T'pbppRy'+Җ# nyz71ocNN xFύCe] >ңYHq#.%6{an7,2ƵE [[nFB0:4&`IaKޥ[Ia\5U2 3ԧ;,lZD26ee>v#hwtѤ#S!*`s4XV8m>:|RI7v\3/>\̺rK!~#۔E7W(PϦU DANs[-/uFkBTr6JYmt Nڥ S{zЌK ,n &5 [cP5زybmo8k(3'Kl[W}wePFAZsw&_L/fD>ظ~g5a^%!lQԌ>rCHVUījcc'f2}N\mck"M[D)cbE+-^^D\ӼxYW|<*ZVĈL^5X%DslnȕqӢeby&wn `= SXo j$~f8eP$5-h;9{Z΃ɡ<$N ?P8vaé3kkl@M>ezKa<85н<+>B+!59TtB: v+~KuC!%m 8UC_!Ey*Dl 2:nMyO' x}F5\@gbi0&A{tDE x^g|QmǃJ c%zcIYK ^M0^ߥ&<# y/{ii?^NN"F ƍNGae@)ZN (NיNeTO׼a~2HiYHՆ,% 3,e\29g w5/ jF7#x^}h)r'O FgHq)Su5>h뿈uK0~>ԧ)+bw-ܩG Vx3ҊZe&GfU Ht*0騹'f)_nsG=?5AoMXپ=wp^sfkQu a U <]98l+tB|8ULAaQ\U8qZ )dM̸jW)$?ZyB^ W("[+DLL;#_`cF&Ga gZثg}ӕ:FM?U6A.(!#sxVs9.<7(jq2%8y{_qQ/za6ge` OtS>P o/#z꜉/; 8ݷDŽM!R*@-({؉2?mSlg=8+jS7j0PHnv- 娗[]B,a3+myǡ>gbAo'J]Mç# J'l٠iʰxy3LuM qCɐK0:£);r쑺bf!lX:~O躉gxgJVc6'U:HD#ÔQQ`0F |os0,~mP@z&j`Y |&JK+ h5MwX^cT=|΀j67wyˀ$EQWח`:uP"(a*2x2r=)\' wN"/01NWhVҸTwZ$XڸvׂkZrNPV򇯬>r6z*W%Ԁ]f,:^Gun2ñ:+ŻЮ}G=`D+4s\p=)#@Sc&̦Kg;dAmQțE8\*,V`(Y;:‚i|O_BœŅ0*{P`$x5lw x/h'[2+hNQc! I4-gPѩy"oaTciT&}](\W!}X]>ybU߻2|jDDU2Ka|t9-3A'J傲|mt ݕbVcА NWq[(#33iQSZ6ddE/GW:ElY02Oa:yr݌ygw]]M Cv̞ ]9^9iKn" 0]R>?4ewU)sPJi1*gK+cchw?Z4xD  $-։OXRyb\̾? Z}\ɳ u?Ng3([b/T@3A#FÕhIJUYjZWԽMۤd4W2+Q ;ڸMD}:Q6QYf݂R~˩ ˫xclΞ8_q~:Wـ`< /<ī*#az]i{dA2aô·Xr{L#+NUŘ XQ$W]OZ,+)J]n*~JE ,+AAx"iI,l A$Qeqׅ{L9p(@Uԟ.ɵMDzZbtU)l6,\wUzQ#~OŪ8*և$|ȴ!cTtĥy4;JR޿zkE`Zqڑ҇2i-!BM8L[cVӴY 湜w+42c:oJ$wHVqϭ-dKkYI-ec^uO$,bŁU9Dj(T?+KM5nWgQuga$rYWe1hcR c\f?m~\H nDbNV>0%]C bzϘ8W(sKX+:"pðȓogNO @n,bzOUD@"l9LXc(i7Y' |:ݩiOvziWT)@9dզxFkPP3IQӼ^ĥ!>Nܜ\+`BmG #.ژf268T|lE1''\a+"1 qIw+нo)zwGngg_ @HR˚ZyMD4H[7l$^tؿ@b>a ťaP_klI+ ׂ}1[C#_.SX/6%E4|@i(*ZmV5yO8RI#L2|C-q=o=42NSy~C2Lko4y{\/R m ;Ê@;#dOMy1ng+'.WG$z~. KF*io4&W2}㐷houY<Ұt%NmW>W|F]5޽UoVz@(it`ij̧RmU>{ ,j'_k宅Iov;2OZtX`-A/RԶ ޥ,B[Q8w9 HVftG1cΤ_2gbu鿄bIghSx " cwFN. _x Acx@"y(ӆC5-I<}Ӵb[zs %iA;X#VˌU*Gm'K4w~77*,2Y6$1fHAEŮF+.[%7IyBˤ]SFd~V;{Qcp4n1A"D^##JX o/g(7FxWdrp àL))=|)MD|eF,QOQ*#3KGG tY` %U3K C*CQ5r ,>I:A}`bzu9jH}cp[U)A$MF~GL1ETO1yƪf  R/NWLYݯU=e+pgmcFSg|> 9n'yb?C^Ā_ibB$F gH(;0 /}7_i<\9hWWȃ #\>pM8dɷjIsz:HN<HPPtU:jEG<ІYGl ޟ_fֿ77d =%P#cT 2ckXe.Swq,E[E|.?U5Zvҫ'ZrR$xpiv ) X=d,jQޞɫl͌>D"dNÐWŽҍu"@ccq}RH~@j{O}M{enSVҮuiN^׽fq@BqwIv"`ǟPsC[oO;vX]ܖ?bP\ g g [QA[)cyS`k7c:CcCwHQo 1:ifj5j)r%:h1eJ+iUs T/Ut [m< ]ttx^|(/b<]9gbe%f5enmՑax>\i܃qAP޶Kv;L9~ITk3;#K][-[EƎ᯶8|,rrDF;Fkj iPlUC>ZT@A_F9_|KcyZ%O,1R '˒\Y<X:7rڥr餳A/юGesO=g-\\U3\/G">"c3Dv֡;c\UJEdb5dyTITݓ㯔?Q:a *y֮uK`9&  5m )rM ҜJ 0+) hZ7l4I]eDEi?Ѐ^vA2' ~c$ˆӈz1nݡ cC) +?vL_-[c0*\ R]о_بS;y~JgN$eH!>H9uXOVTe3 9q.hG0OX,L7EXz vncF62 I3*5G}*\yWM B`]r oĿ{.nk?fDv[<,i`@ {[-%D[ -( trQʰ8C 4/M'BXj wS?L3.Xk?~}%fX)@.M 7ݦR3xό aW,2OLE-$_EKڄ~e.76n:[7p>}v0Zmh?*/8mLm LΆ$wϡ%K[(5$ٴdx8$~"P_4s,Gc1Gg.GAU[$˰# N.iN_X6w,ݖIPr RtiV͏gC\ԭ,`bێTE Q11a? Ax^@ ,yahC ̣<"#pׇ>Qu~]aT2lNml@|b1H~LsPΉK GPNƝ QRb}|)YiE,+F<Ro} / yCEgˌj۾'K+{{T S=L9po4C0t@MO4gXhB`>iy>idSpX;DX Dbyzvp&ľ/ <>`F^Jq%6\^hl_+Yũ'PQ@O&J'x?U|_٦qKi"ɸOBݟF@SP2& |@dղUtj/$vyH!]N!cN4@{)Tb86׋ d95A oa^?Avܵ|FSwơM/o` Ǎy>KEq#|R|s/7P0݋!||0UvÁj.F-牂QRBrľ$K\H;*<;*| ō֊u%Cg{ٓj0of"M: b ?ϛT}nKZ V.[l1">ڼؒ=Jcu?+Z9fG&Jz?+WThiW$ip( G +t%6-F_(Fbm#q t.yc06kl>2 @ѠC =! P@0^9[\~|V_iaU'0\b-i1Qkl<~7iB s^ƝH SIUZq8I[81XX{L)w[|Ԋ|x`&껥ab6hFՓ] {x. M>YxI^;XdF/ Z@,\eIz@4Nt$K\Iց |U4*(Ѫ,9K򛧍ȌQrgP?J .[GH@mђbP:犌l9)*>_ŗ[L`+׬ z/+(DXBF^y;͌}&{雪Y}ťpMUJR|(^klGvUU-N+r')I?ܫ5bt\nb!_"q∋J)'PԲ&<j_Wn7Jl>Z(3 ar<uʧqJr9#LVD<:#g-I\fzҏ_!3imi.RәG),[ORn34ԛk-Ul'? %sl7bWh5ĈMq=7XPSJ:^ eUGm݇7t8=ad(0fe,Ul7caS\P68 :J4Hwh{4/7zZuI@Ir tn[υ />nz̀4pf9[=ߑ(Ʃk[ԻE%X-?xr/@c1E2M8U; 4> % qn\rXtL'Lt h[itQX3 I{+dDav13cY!j"-:!86t\bshT=RZ4,YHYgF5PbXߟ, 5X׹KlI_ړ%?Y3Az"8'TܤF5P.wMzU`cH(,a^/r-|xYO2^*sŒմ}9Uw*<]}zeNk4Y%i:Iۂ@/җ`I7eGl` sPUD@{T%,94~㢪 "hh%k+Ad7=&=a؀*Ry,g)o|fe߬pp*M/7Yu 1"4)'@ٍg=ƽ`]:jYo'W;lfLY5!-6O)^#4eo{xÝ L^epBa\}s׆׮/]4Gx#(@&h9H%&hsSճ$5y8!5P>dǫ*k( S~#`RڦE1 fâ@*]x_ TVOʮm,m65>Ê 8 0> _ac^i#S d*R ~@1V&h)P"pwZ&ȰݏEe$r |ZeskY'=Y&טՂB Ӕ|T漂FQ$,v|mk":yȜQ_w\㔴#.azg Ww8H193eܨbBG]-mHpv=(Օ2;gPĆ5T޺ɼ>_ ]q]onP r$A! x21oL[1"jp׍t)b lJhG1Hp气763Niఉ̒PJ3)oFt\U3=]Pl&-o _\9Ǣ+Tn[G)rVE^}Tԓ@^nY[NzrLH~ޠl#8?lĮ*񮽊-\3_Mr5E߆za|t=.k: :LJQ3bI/Pt*B-CFb )Ђƅ*z2ݣS!0wET&H{:Ol &W^Y)?@P)'P߂QR &m9 }MK3Us2h*7a.6 >5Ҝl^K5.Nړ,}fC c=ޟbfN86\eY] pNcvߦ=x6;e^ 1pSރ\I[l [ %]jƀ΢p]8:>N_h-~f M;ѝg 7 2o,x5M ^oݑ24g)LiDpAmӛ-xGSLN&ipqڮl[LQUḏRS.l;)D 8m嗘YC`쁭~#4v'|CUlϰ0}}(/psI̙&n^̘ ;1 +\gXA3 Z25pȁ-؜L  XQ ȣNY3<ѲaI{7d07Ns-G<7V&xܦ$>e3Ssľ%;jtoEJX/ŏ'nLbĚ/ cd3nR26eg3Ls屏b؇{Fn$$=\D8*p}/GXިԱSnlLivF??i49/ZM_;gI;D j\ -Q@v^Gt1SO1Oec w=VE5\pz*k+GucX֐SFV ^xdoFE$JĺԏN•D'K#p/Vn[ʶK!- w)ʿ؎Fb$V 9&B#IʋL:IiVtie; 3bי;˶ۼziR{+^O/%Z*{u4O%%:9U@M^~lw1%p, 񀯯'sTz'hĩo8"w̵$> `_j60"@}5A kbU7n*Ȃ4!xņD:Na>NU'+lG/0թڢ9v~]Up1VOv5z ?3 d8+|?ˢrޏ1Q>lyVk/{Fe\~I'_ѭj@N!^_<!T88| %:CgF>H~kT=\c>J\P$'hvm_w lHuiڟ !,XO+HTm&1f *Ԁt.6E'In&<;dVgeD(<\2N0"ѐpX=' (z!<m[HWe4Ed* ԰| I6$p7z<:$LxcE%'z+gqӳjH9D+cM{lPR*l$\h"Ϟ d`:7D;5,Lt柨l$KC5ֵ?qZpDȾoNp[MЯ*[Ӷ=*h״4P/ MԣMx\I66f c&U>([Ћȱ;k|`\^H ikv/OK#JξÓVeYH-A8, An> %ϱWQ? 1hPj)8@Z Sk ypvkIx\>-7 4؂j!_v{}6pln}Fw,qjPA ?$\ B kn"a (cک9hP|Rs Eu{a c%p,r$n/G>OmPX~̮"99]=;QX[S0b1wVqxeצT{tGJ߄zEnw/ Dz꿮fƧA ψPy>fP6Nd\A&KϙYRFOw7-@YC=a5mҥ*Uh{`W70E$:$EU^(}/S;*3#Gw#*2T1#{;7T]OwP!JAkb$$-8سJY.Ϫ:Ot2҅5^B3lubU,X9Q{R^2?}ڔ-sR M1bf7(whV01j{Oa1W)RȬ/Ms5g&SOFM Y]}wj>ae oÙd;#T#EV:MT`0j o$ShP.ab 1m>k%)"2ophu׶("y9=!F36Bu )>m؃I6hW/bfg^llDDA+,>P^`.qoikL!(-g 뙚;>?%,ǠU{+p?X LS_4}z_UQU)^u uW˯v*ᣲgoyȋj@vt>Ao-\PnޜT\0W+_G x 'I:)-pr](U7B;9Mׄ.ݸ恷T]Sk;-`:SF<Yɩ.\ g@y«w%dIhƉ؅A؋P`<.S2ؙQDrC)iHqk > ʬbL3}7DXFJN-oa|h*vSJN<zAggG2sR'{?E%ggF [,RYD{)@@ ô)Xsn>:(*gfPz>gyk.ϏF6<" Nb GC0ꉿ@49(Զ ;MQ(G \~2(>k*G!0gM+_~Ezi ׏7 aU?clC9Z87&rgH sMt:h*{ɶpdQ3H\?yT05XRrXCdk_Ρ جJ^mB! %v-9Jppb9)Qc:]C]хH+ҹﰪ =Y^m |Ŗ&Y cЮ`w+Ig˲uмVjcpnG2g1 pἨ*0> S@'3=Żhmv!Q0`A7= -.eYETHۯZzs>=GGe# c!nI&l~(L0j+W`TZUbeλ{dU u硛4s$1*w%O Ng0s&QjV_ǡ##(l?Xe'$pbvjU,Lcvr9wuIvHyc%7G <δ&Q.yZB<Q5PJIwzv}y(ӳ0 Dw i]j݆@WxI Lc:ګ#'SP辉JnQ_鴦b|KQYH`&? \`{X'm&q42l IGY B#=Dw]Ш&ǥqniIxc8H' %=I1|]'*qF0_Ȥڧe[{c iR=8E* v΁:Z; 硥6aq]ڲ[#[pZ; ~Y1E0=B4wea?Y"àx:g}T|`!Va π俓I uuPQ'fXI$&4,dˢKNx@N C?)ؐkhr}n+Êʟj1bINAKKw/2VJ. wLyۈۉJq[e'3e@ }p+3#t("\%6%6L'朠_vf븞]ٱ¹/dƌ"3䗸m}?m=w}$P?F z.xβ>'j ~ۨ}Ty 5^7 `ތ, K"k."P7FZ,+cWOM{)4k@ZɷDPCcDA [++1g6>`gKy*U<殎 ŲV/T,a[c-\V dg MBY nKV9H Lǁ1-; % fJWI gG-p 7&M2[VuwZ%Ɵd~RDǃZ'.|W`ʗb9F%C (5ҏ0 *%6`bcZhk;mKGE+OdPlzǁfDj;Ax[ *Wա@Dpo WAeUaͷkQ [}RN H>\.ZdX4ldNi":UFljw8s{!\!71YTk7 7ay/C0TKNư}(|IPL"mC8)W9-8v?6pWAmR{v}5%֗'qȉSMsq=3o@o>s~lk2KĬ,s3o(=,ح wtEG0"1x^H r2o,fF<`*0Bkau35me|lOͣN6E]pݣt {ox9.;/+}kCޣN'WTe ++c6i򻧉rfźm叙u5:)`8e5GVd;Z3Y[޵jy@}ݦvR]Ԇ ֺJZFao4|sj;~#ڜD$ 1)܄E|Ws:6ABy(<LyuU[['FQކImPmz~4ϫPn%m1MTc7K5^Àl |<RP(YJ /Ɖr h0kwJu4 |S\F yWp>De<хqQҦ<ϯlE5Z(C o7!ν.nz]|K LS)e%ASbH,O:^42J^Rħ q?{u(oW# H &w{K1@#E% &@.'gj 歕r9J| Yhm9s㮢gtc~a.hgLkIhL/幞=|va>{ jO3~7Ua ]>oo-5."Ԛ29E١I6\ kfSIs>c*TkvY_ C %WO 6yIG` Hʛp] )ttff02!nzYJk14{;yuXEi묭U+O@宽{(}Ԣ*ق}V@xdDM>ANO50hݎ:n)F"!pϳV qh?!DRaȕת*ޘBSzIa.]4; 盳Q'w`]=CPuIINF8YL7@?@00!{|Woxg ѵ^ɘ8ʇfy]_w/Mtm !ph2 T" !c$;'Ak7)=E#P"P/lŇQYQp1fJܶܙWtE :hwB]"b"8FՑ }%W{RrO⢑V(roagsDŸʼE6zH3.:A 83B 1!y.Zq4LKb;g5w>(m/Y{/$L9m3-`@] 5K׍|+̆Hno~Ebx^Iϋt)DȗfTN|o6|;BfZk,2E;<-t; q,!TE4G˄9s3Dwb$ N^`lT2;a"%BfwRnwbBzzXF,S`֣SGZd!eQ?d4C3XdTFiw%٫i,C1Ko"VFoVy>Wuq,`X+E_F+Y7\O⽅ȭgc}䒍;C]kW^ Fga::(}e4- eu.|9x,TMl`>(\`Ce-ߴl brza `+GRmZtaGO(;B@>S U}p'Ȗ@}F看NԄ猋Vd i4ĄLl POFO‑.8%Knjr׺9&UV X; vcc3hg['߀>“WH^uPz}ˈP+ LtH6{x‚\ lv? 6i +HTơזvga*%&K:W6xS/q-SjpHPO2 қM4 Vb'<W|Q? b6fޭпODf)"}s.y,y-vEBΐfRϱ"-6oavSGxzL XIKyD] 57ȯHnULY {"BwYO[}t<؛ \V9^DaI 2bZ=jzU7 s `8ºXE9X*z1b3K|%$F0!Xl7j޲2uvwБա ´4Zۊ9e9.6HSnj\$CI$ZO%+{rA --$]Oܫ';%>GkE!,sУԋ0YWXGtQi=|Z7LK@*c8#{:I8iPkv( 16>暇mr <6xJEB k?>m{ ,tG;7> A!meQ3vu[L$i(y}MxnʵmMĨN qд吿%r'%@N >TAdb\@%"(!kKh$]hEu.iƻ1cr}J7b@3\p?^S;k L{ULV2}WC'{^0h>ҀO,٭Y!94?G.+>S-õhEB6J(B<{ <2Z kYh-Zov{53 $"x똴;8쇁N6XTqeD]SQljdJcp*F^B3R7?mƬҨ(6({֥Jq,X@סw=o.δ\$ B9rF & qлOO4FL~aj\M ^"_RQM=KoJs˱K7Bi.~]г,:"O$ !RZu.PRAUCİ>m@i؂E&걖Ď*vdjK IAS~amdi~Aq@ B5,ڒJZqɻxBvyEtBP3N'eom9?DiHE=o 5y/2T Aw* 50"w=d;% 1@^EKOS~Ҿ2,b}đ ׏ؕ\Wm)EWC^ZȍG"5vr{!?y}M':2/C޼yתKR)C ķ(@0 Y^?peMEۧ̽mpHcsBDoB5oQ!oR|3lg@yu-m .lMɶ8d䟄N{ٹQ mʝ.<$U0+c&7UO2I@* ȏ F 7cϯ.Z\k%A3$zkFTddQdrLXgj&-' zڃy=I@%W{ABb}e0{2V|NƖDwGCrUj ] / S{ "?-Ѓ3&L-w)5[dRn=ςy[;.BAe6θnwtd9,8?12+^Р Y$ e['DTWu6ٍ qD.wi n%3oK$[@7VO0Bi8~Z(@?%p']2 k`>ML|YSV [o>bs֟<:ҨL"YBH;r)k=M0O$PdVuŒ^!VƮc֛GΦ0yf1Gvfן!'EUBTo>- $4fRڃ1f1q):hnAEXt.K-4]!K<9+n8̬E%2)8ڏx'[A\y뵽i5>Qm&62m dpSLʼY:1o/GrԫCќ,OBj&BrG$`Ằ؎;*&rS3(3O Q;vشsJe?UbK Z2Q|(R%RVGp'.%')}IC![BLG< I|=K+úYSMjE{[.Zխ N蘧pF}vOUoeԕvȅnr 8M0;v_$)H ig(\ocbv7`K.GkauPVt(tt&1K:rʪӄ $\ SGjCOƁZ I1(!+10!A6gUsQ%Z=+o -)yi83X>B {]'+!j+AtLc`ybj(ڔZ^${~^JrwmDЏhy$F9 1 vK| 6863ĘKp q};CSf NbMpF߂Y.>+{.#ǰ><JУk2z?&B wg4G/XUP;TlRJfs/ FF/i7ґa 4FWZ3dz/Uy!$p= A>ZK Cm)g}[,= CޔBPGw.Ioe-ҥZ4*CH~j*j >\ZJf#jn5!=o:s Ikc'{?*B2_c\3/n *>G֜lIWt `711,?hMȕAUڈu`+v8gb.}F)'lfΔ۶Wa5?>H zlZgV[|hҚmFfx,y^u@5_FÏO4B6|HTx1} s YC7 )@+Gy+ d5lAuC/#p6߾3%1lEbNl̳n*"|+aV Ѫ ⿼<Ӎ l) ?~@&B%0*7]]Ro S|۝gMy*n<#{ Y|W_}}C=c`E-F+'J;rAƪU.`:"|Y:L?IURPSq3y*[[dFU $3^ 7h~7$7%#T :zxoH"aRrJ+|r{;ݲ]u!$HbPkF/9 [VC $/t7Ts_+g)XU!ӡ3BK8  _Ȱ,/)&u'F8Qn)i],42?Qz3Ee^.3mڊq,?xeӪ+Y-?fV_@zX|F[pNCEÉE#$dBǗY'V_RtՍCIPuW.cv䕵ϻhhAgN*EC;s7^7i)uIE˭>DN7XW1*}JU&;W$OjAtIr j;F(bڈ\2 foO7M(P)`O=a7PK# $ ˋdU]bq![9sֆ<+փ_}Vt @2LIA&FrEڤW8 $~n#Ts;C;A1VK/6ǡXeԓ8Zr4*PW^-q,^к|<._Z`U~wfGVz&r?cFyA}Jևu~Dy *ag$E$"N)SZ^W t,ߘa⫦i'4r;L4pp< zR>)EaTg1ymJUn7oA.9m<G1a,/yp"33xaC][ҿb+0_E>;lvD6sZ'4ϮߖIˬx0m~s6g)Y/G~)'znԢdŵ^$U\%/A }t4o}~W?ϭLz`3l)_]{Mt_ ӊ S-AM52f_hJ5>,{ruwtˁÂj#\["(娥kMt=jP;VBheZT|s;K U.fwpMJt"VbJlIԯz<񪘇6:%"O Oat[ ʰ $Cmk!$[(Xv0HV*#qV`InpnVܠt|2Q:m=8v>e]Wnm%A'}_F]pة[IRSp5&z`7׵bKYUXEBHߝג LPu *ic6~Sʹ;vajLɲ [γ kaP'ˑ魖`d:@j~ t^XP~ss1@CQ ȇW:vM*{ ^36_*vi:*r)Th{rG N4\[bG&6p > >N['`"M]q|ovGaV0?e]G`8]o3:Bn92ġXO?Q'XҸSHP1NX]N*th{DՏ~yHG7Q}KRHK`=-QFc9*{ :H4\L" S/2fhAH. Usbf^XArɢl[VɇDvr~JX*hUEH@H4UkĮ T$+dAOXr:HxI4Y[JH:q8=ε+UR=^-N[Ua [ubb /淖pIm{gڳ]u{NGSwa[F66#sd҇9bJV~w-HƻO+A S lTVME}sSAmV瞔>\N,XyUj+ki@Lӗ¤θU]]o1B_z6ݱx2{4/˕#LQՌe0+ i[L@u?!ڹv Eu ϶ "y=Lhg_A/[ lʡzeř"03 HE?.!J's$<,W)u8%A9|,i||qS_+Ԙ3m&qRojB] Ws.d 6?LT70xݻwOC ۟_Z^D6h0o>;B %!"xw?xa̅/hbʶTN@Dv[NqLDHc6tA{rɿ~(.5&<ʗBל`z"2Vbma,3s`}gZ7sdÊHF;C38 Gm5Ǝ3=z!rg`'ɢ 2dw =p8 "NTJN G2 T&O;̄[,?9 DÛEEcd#& nU.Q@d>,kc] S5N{*&?Q 9.|{ Rx !JGt(Vxhw2" eN )D5`p$$U~h%F[7ԓelo$?m- p ℇzIsLB&?b w)?OĐ针6T63%kU߈>w%, >O^l+5|,vX`W/]>4bo2OC}+ tnVW=\^hsxt+iOHz kwx? S[!Yz[WO"z+NжS t:6r HNU vnzge2^PCAU4?A90t1 e-QL)T'qX&!ɬZ7G H'F(o|`, aL o0Jx,.Dd,[(1qTK!=q%H.Y3]7@u9S]I>_mEe z> xE4+zIDh'x=֗0/T{%%єiZ&*/ʈy좄blISʁ-wU7eaBIڇS4NNKU@Ҡv*{5G?HKit]kܩݩ07]ר_N yG}L~(J1@3=AU4n,Y]l7Ԩ$gBY 9nlBAuzz3&I7 D|Z YIMkS:s*h~QTa-MY㛥c)!IF) O,bu\Ty=p|S[ ⫚zKaU7̉m z8Q}To #.m\#'hg !D FzKy|$H`5k,YC>pz,9Sƚstm$&Lvl{ywO~ *cdIǙa1'V&mxZ j mByJYϸzg_:L@҄ۋ\خ,m#6>Va SD9F}L*-8^9: [f_}lTaStTRG-xD(1`]*YF\"E(ip1د IO {TiHw`wR1UaJ|/JyS0:?;X_i ߏC[ o~xjEv.*FV+6$l;=LY^.om8%2CuKQˁ)YF+2]pV߼5$߷5so 9;MJ5( 便Va|LKqTNL "ˉ @$#UGS'ssL;>Oy9 tz^=g7E=*텲 l3l@Pd |`5]2mҙ =sS{1;bD"9;'Yn( kOTDL%1HQRiNX DKia7׺В&#A-\?\J l<8.g$==*_pRo;WY(,۟#\-lWǫr,"+Ӯ%v1slϹc]|=%mgSAI_ś ^Mh8"V'\gT&x%gJ8Be&ZmfeejYIs@ l9r'zCeV*dkWXS'X~nHL/~LpwTV/r"N;`lS-cn !洍i2HW$EZFEzWf`;QjJcyQuiK1~F@K})a~7IN۽ #~[`7K)ڎK3])p}M{䐈ޢzI|+I""m8L0 Ď6`YلL!b$4HfF*6 w*ku0A o$sN)b?Хo5 VҠY(rWKըb߃abfRųB?I >,8mVO'hW/x^|ʨ~s;H:yKT*7LB8$]RR"pUc꧑} | CS^ I_kvr;?7,ѯFgQ(V5Hv1;hZ#yHGWbvK,xۧ\ҷ"īD661pCaۛ'\ sAwMƨTO'6@:seQ<fK |i>Y?Q#f zA~- s[ &đ2b他PG4rOF / *,ݵs[>k*ea#::Ƕ;pvz; A!E _1U zc9׊PM.#Iv!SG P#I@%]8Yоg:]e@d N^®?ffq'_/rTZvCqD'MW%dIrqjr\h"˔("bp4ۖ2'/>UG ": d yB;AACc rQ` u/e^kTº4X9@tbbO>< g o>mVS!=i׶=Qm;J_b` T=^m$P>w`A_d")-SY`uLt`9X}Y6NM> 6?>(E嗢L˿` +nsuh_@V5국BVXfES7)tÜu?ׇxulN\buV`ywYAá$Ot36kM8m\l}K D`}k 4TQ$pŅ_zUs/:B %9ֹ9x>R=V1_l:6Sn$@$E'g(D$='zƌJ`yZB"oL{C8rl°@N=+c/Yi?ƓqM,@=`ٷ 3&n,vC' 2A %Ž} (ih7Ֆl/6ݐqVx\NѮIWy Xzg@HBz6ua 15 T )1É8Eܼ9 9@Oo@i}NocXtmR꒎z`;C>= x;2!1O 1Pg-kPs{ҍ5?_مK'LƵB;^g3zj%d%y ,|d:ZcP /A5Ցr4C+}UPQKcĨbNԀhBm.(]peH'=xM>w~L:sn͹ް !sw&e)?a]6sa0,ClˢT2~⫩U(=P$m-W|X>! cog[_Rc3$u3Ej\+iK^ea^~xz'UxI9wj qfh~>"ܳ|R3DÒѠ+VᏂJWs LpI7>k? cWA/!$Y.`}uu:&4>Np?RGDWo6fMnKkX-{ؼib ㌓;cq~4j?h$]%*?j+AZâjpk9ykm+x)bRV6;h/\e|EZ8@ v`C/]c6x);ξ=)LL v5{?<{cRM&O_Z ܒr(޷.͂bcňR䣹#0[ζWHb?61B!>*gα E{Pd[:)h<ryфjWۦOџ߬_}qFOMVR$&ta||N\X6x%ػSj(G)G-3]-BHpEʯ:tNz=f$=|bY{ CEۢ[p?\B@.G@+[Qz*VG:{}9C|V Î>Q/h=㵱l8V.\jɛHWl4!3mJD;kY?UI?՘ .ϠG<hB;V:+JvTI'?޸ <5CSSk%GRѨ[8j>`\Ϫ͖Cㄫ=~ke<%lv+dϞU܃ vPXX6GXsibBN.oᰨIaEV7n%"#JT5g! /#-p"sdm9K|ݲR"NCrlڹ? cXZrv>Zdzǧ;>ʀ>=HEz BI2';۪6teBM=c#;Ԥ\n40kzY".*A9~#P8n+ٞBNܙ :QFMjʎQEJ™ qj|Ke-fj(~3(o؏F'prMe)[7&CN;@#!̺ 3 +؏ɞ]OeшzmtfwABVvׇMS{\ڛl~>esA|:')RO B}*dTh5ey18Qj@AΟtTºj:C&sOP9~JR1-)4 PRP (K5C&{Cf60Va !O6фɔjJhpf"=Um^d 0ٯ (}[EdʱFQ4\>L.Rf5mlƱ!1&Q< ; b6~ %KV1/P}@>@ω@ FZZ32c!kMo3s!t^vqN(Ꚁlie6vЬnT~F̟hHoTʹx=\` yEtKK8kg(p3L _m˟DJ}ur辥Fȑ<X@b]]"zSc3$xR2|K:Ye Nuޕ#FySՅif>SiN`?MQxHOWsk$mhbͥC0MnzlS@\R'AZK\DFPygVlԇ:Y qt`"2d_E%EAVDN{#D&?kaz_t7h`+fVaZta@'%zi^_ }QBh6@ ֜$ش^W3(dnb6?krf#'Żd5M8kH?v& Ug<1A^bSgTڪ5RT[{:dv [r阦/sP…q3RR^)[r9F(- xzK>d0ԅoBf50A*gD?iɖiU\c̴}$$#Wo zr^DG#\X9MBk/@ɓYN˄^җ)hyѻsby<`HQ(.Ae(lxZvq8y+ʼ)ë$a$AAGa4ܝviA= {6^"m]$;1F{uY=2 ]@dLB\S>z״ Ff;W~p+X7Uz&d&f 'gAdF)JJ)8ШM׷rl 9Yc(^n=IfL\mH ۷1xP}"X2YjAE9i]IKxB(9ۨue!QyDնhjc;K|$l)2@F'aRFTs[p8jViԒ/4q5U[KmZa Jgya>lY-}єH|yzbXAo()GiW~b=nn6*7U5 3{:QR=ΛLs{wL3p+4Ndc)PYV6-%O?w.54'cxjȔɺ~Đd}2/`: xf\r!!pcAs7ْ+Ą_x RzK*X:!,UюΕa-NC:&@0^{Ϋ݀(ծkBK0ԕ Օ}#RQhgk}JawG%,9gpɭpW7i$F?Vb rI,KDy14ŞvdYz[֩P,Q+P](iŊ mKM 1kNB:Uʛ~dTiG`̍>iE/(p|trVRI-U'8.zѶWAi&k'DBʫ#`c -dͰ1jyC}d,0Դ;o_fnJ!`Έ8]clv,32 [rƲJݤFIa)mX Ujm;e_Ěrr~wC^CiWwtPߖ𳿯q9FJ6rug^ EI7{7HGY3\"⟈6TZK2ʩrx*䔯ˊX?)0)ˢt6oc7_nCh Sfs^H/ut o\ۗU&?x5eC]iEpӍÓ^]uYLO6 û58ɋf5BoT9sWuv9ᐑ#avdKiW&?*W19mׯc1,`]T& j.ere 9e2HPw8gr_@dj1%itj -_ޢU҃ j&H6Ьת43F j!V^Ws=dh .WBkausKY%ZN~zނ2IIk\X UÝ]˨D[5 [@zkd+tEX?hG$|*1ȜY:N}VW &-DY7QM\VI Y>pŸ$΀x9EYWSfw4[ӱgV)X~̕{9|'QYj\&ԌJ+{O6: V2兼}${}JԨ% 9-=[c C*(L, Jhd(6WRf;F>ρTm?<1]2\An e#>p\ͯ,(I—^i,E}slk{@o F9`\#n"1Z4&.(}Xpzj|ېFsb1Ns/y )B36J 6wàWǰB-W㷜R4f%u ا+ B7bT44uT3e ' 5 Ԛ ud0@7j Iv\ 93~c_f@GY!hwZ4W$ FkNαڒr)u‡f;7v-ʞ &mfR K Y05;, cՃP|&uo!Fdw6J 97L gw'*pFH˚R6}X,8rc+?fEY/."ib`]Uxd\;&YP!s=oԛX-* =TPѬ5#HGuodȵ3gFm {OA_cTHBjzDtRX v TJUҳgiH@mZC3>D&W{־_.# {%wo)OŋȲI֕I5[HwӔNNj+`!.\-AqT7MeT}JQmD"~ȒaW(tg@'Ir:g}N2[RQqlǎ@ M^i7k4 M_zTل6B{V>a?A g4N U;&-~lY_#/*-U}n? kOW_q鈀JMJ%,9! #dw}Ű ┪?i͍xY)HRɳ?ax `nҺlkTln6ʁ /P,a'L|ոU1tR{A{ޫ6'dopoH[8W nȎz͟[=CLjRxg鿬Nh*D"Euvܞ~^FWJ88@[o229@VyAHHǍ[QzĿ//.֣[*B a(>Z C~|BmO%z|!Ѿ 15`EOpgvqb1ba`Qtu LOƥ"ubՔ8'x W=#QrOm;{w[ \*V$fmmFI/s%w/_WڀC|Nk!F&܅rURz}0jw0|OyE0HOW"DڇR[b65[6+tv_3i'Gvf(6uՙvKm\Ix|>]wb#8F?W\}i-z&Q+5 J&/ Q62T1:!w[A£xu@ww.% QڌEݼIZ#TmOEab}20#SR׃hXՊ,pPhlcVsI/(+ m_~CH]J))s"3M~Wc=`Gjyُe/'lf D%ZS~y)xDiK9ٯ@±qlv<뵞KKODvy_ <&0瑸jN91 Rr*4 F;ę3rpOێjTGi(zk10׳#W-Ve~|EV'5M5F;Iȥ7:Qݭ9ŗw?_+?4q~IF lLk* bFFǁ xс/sUOOH 8qJ~9:l@%,#26hƺN= *FG*0,j#l.b5C2y HhW;> 8\_gv 'gNXA\(gW]o;L$\|JsS9W茶L'5Ѷ'XGl=idYH ] \(2BUYAËFbDtQU$&}Oʣ 6ځ(FLXC[*T 7>2M8ĐzL Q{Ęc^r<@aӯ/f*Vl} ^.ce8` [6.I1 HڕrOl, bD߆Ս[ZT% L00-.rv[jr (*ǿԃTjrmֺ{rwuy~zR\$:P#C+ÓYjnPMy k=)-+; `3#3=Vʆsz1*H KpZ%#Ci!\GsobiA(t)o4hB;f $y̋yOsG&ѮWfѸ67X/MKܻ ΅F'{T=jBbzSmxX|hp MV ^KT%'{zWԺ͑kW`6r=.c0_`1R6e'5TQW.n&M| JԲU[tjT%)vmse\gGK8ek\;!r!D@A;DQXLʩ ٝCH?cEBjޫ`qӹ~%eůS—"H`ê]9[ l_6opXċm&a=ș !#CYbnQwwhC{KڪTG>g!-b]tR1f{R9d|?\j+}Uu:4-ģ4| f7ῩBDx<jR9XU࣑]9 '-[C3~Y4#^hoc:QGjb A k8PVjARS7X 37몓 1QH U9%Tg&b:"lk:ܸ[c$Ͽ8Ӵ: @1=i;hz1~ g/F ^zb$A:Źc@C˷92J==z㿧,td\y99`,\LC)#;q)lup\쀏k"8Jɫَb߫+3$nPU.ҵEVQKx0J뛥5(>gl5 "W[-% by=WRly.†ַ1;QxX=r>Lc[${LSͩIJ0^#iV;rk+{~*~\3_ammٔSR; ڈo\F5/gL!TZ5! AgxK>휢 4s(%?遢]l:ԡۊ;mYf DYQ'JLUltD||?9?f^Ps+FkTm'Hݍ_W[XB~ xp6^Bv)ZAԠu(rߚb iJ^vyUGgM)Z:AMhSU%@;8:1Н\xJX l΋ &3= !w9 9jMm}@UV8roPBB>CG,BV .3T)_D3'yB/KQu^mmRB#S[bogmp^0s 's#GbKJ۴)̸ ,sfo!R|*T'>VFb,pAZZ2Mu`5-C2񊗥+I8~תyH訓E3jMglq)t[P { |9\~#[hr@7 -pXA°7{&IG+Piۤ;siUgrՋW8\*7Qzl邁n )㑨&w. G zX,0;mom .t6HdVH=y_&#T]HųSȱj& k$`/$o! W?[?3cZK@-41EJ^bV5@Q@P6]٧1vx$d }%"Fʊ ,_j90(Rg]x~ 5PN:?f{-3mr  s` YqN +׏;yтۻ\GXuC6D4ʡ`g\ܑ#MZ˪J lhU3_{Pt*ɢ?T6eM;"voO w<2X6sƂu o)~Id֏r;kկ]G)C)|v@E- Ԓ Q4 Epv'sL]Y-*cj[]k^tM/kanyO`-O5^g LI [dHi㫆G_aOt vVswr*y%D *L͘2С_Q*fwo!aե +/Pf^Ja2'/L'@GoHMzb좕T̶k:[\lN-T,UJΟaM2kJ 2N;@M`+0(ةjjެ.{Mq\lYLw=z˴燞y$']SX y D7$/6mȅc_/Z9{ޱ`KV= `[kL6oWsɉmDUax $hswe}VUQ*="j[bIl.w]vi+sO_Ñ@i ?FBүGq-8*>'ˑs"G'F#q?/: ;܇y®#( ͂!Sq˄Wig(+nkp f:3qDo8B]܅y$g5GpV6a~p82,C]d/^CVm{p9J ? 4rPgnf5LxZ)Rۓ k7s؍VIi$>{E-6aŨJYg&xw3/LVug$ {_>w|ka_],:`%>b:&H܎z]l)P{N<n.t`{,n/BojCHևOWQ/K9u(BF :b[)W(c;z,:ȍh-b(4gp2Z'G}3a9J@pJ;!8ԽvaKؓ#Y-|_o?܈)o0x5zلN& hQ/L?7 A E5{;Î`<2Ću聼UHOViUŻzxJ)q ݯt1CõxT0oi6Kg;;;1c*]ݚKQ;xl/l.ڀ勛Zl[vUzԲ' -rxu-xQCf'8a"h?5PPsR[B"/uj;Iul|VҽuY#zHU0er.a_զxORu< ogPO%߶xJ ܅̓}5ߗi!uȧ}?ƧSdm7!<* V=ی^Y'=W`*W{JA^2=~F.ħT7gIH9͚o"*߱ΞF~<C'y2~BWI\XdҏhUqSO3=1P -Quیk`JntuFU$bo;J"~TУڄAH-|z.'srƨŘF@qlec/I|BCqA Nʩ̗cjN!sƽZ00N0Md23DS̔ëӧ/4E՗9Dŋ Z>"D'.TU[?F_8*{ b9xsiE(_%]?! •mDg'[``K}ZkG{8d6㘶eNҀ`>A _pXj*?+!MId7AbgL'$FMu;qFT \.; MӚt1B/S!6(MtWdMQ ýS5tjy6mEb{=]I!_ǫ;2$I8>řaܖ:_9 d}R$x#E7ů)훛YP+o;ԜD m6qO;XT>L/n&Ή}vߤ$^X2rb7n!Ja;SOG"֧HߖnLxHDP܉6Rvl;5F0ß oۢ>5W-4 XC eԴ9+bt:DP\,_=_8L{g[R^a~@(Z3G%aIjnAMnjJBigL7d40Ry <],=,΀#_6+Y> \7=&pW)T\?Pr=V("bFfIي,-#w)ީf- k =!y*rr[Pڀ*}oêIT~1_)GAi"aӤ49^Y̑D"w6ضKr`xip,R{u6<#^A@sN"7{qgh y">`PMmY /0|taTR+\SdȌ^T :/*\o#͠*/My}nޡ0?tC_U4o5=_w#(d21Hx]oH܊B)f.+Fܶ¾k\$Dtu YTg`) ėN5q&?vq:2kUrE>+zYӭ;Œrzh.z"YHY]Deڽ%ɦKt$ѹzm×TFvܬo\7d)h2Tgǥ%h’l ߖ-{KR:w@;jleͰ|\_ ' ՏL Ɖp,"ǯ,H\ OaYPx2@b,&;V nI ==qULs7uEO9#uS-H3@mK夈e?N<qOߚz 31N&xˡIې3鿡.X 35[lr4iS9>Eoai̜e|hzn[R2|Oi$oԸ_cچ*Dl ͮ,r;L# 1pڠGɻ!-62;4W2HV$Ca$nJsE%⦮2Gy=7TX$CSt,(w\ X|vRKOUWrI<Mv-J%q荊f{CɧrR9G˟"^":X<"7O:k&[Rd4Qw^ˆ^ ϓ)e8赁A|/o*.x!c}ez%O' J",OJ=CS%A-BJiL l?}b S2 aFn'^#z0.vi: pqq{wc)jËhSC;IŖo؈wBy!#[?-\W&l:9P# yDy^쾝wd:SY[R;xÆLw^!yݶ{5udvN%@Q.p ,\9x?U;1ǁmKƏpH^B%+2!4?}$n }0bBz*~}t7b]E6zj7n2D* \?O_1q?dq3@uY^6hD2$AS:*P!Ͼeyq(s"owaZՃ9g驘דP?'G>`t04OiDV.LLC zVjZoY5Y<8kU44ȱAL:3qS׶ZZ0!$eDžya (8L`.J^1 ʼnc8Ս0o,Dp3zT4:rn T-Z*Z1Jԩ_/} oay=-W),܀R#-g!u,VsUÊmRxEdOfwdN1P)Oc'˘޹oֿv!fE0Zvxe{3`Ky#v *GeXCZlfPaq{)'_!BӲ-K䵂ݏ!3=ẍK"xhrgpTh8\dD> _Iiaa-=w]x&b-Q} SKa rs05A,{i{xާxLM)ci My4Nua@GcBFGgF\oR%!?IN@(|c!n=xQ+>U2J"ӧ;jZy5C[OiaS@BOk?"Ұ~<{+`Ciȸ_$I\ef$y~b1-B]cQ=.o 7%}qLesYhtM쳸Mtr<\Z'5{%ųZ^3DXM%n/Bt!ԷՆ1$(Z[:,Sy+يG]]@D.IS}/~?u2M~H%YG3;*cNHo "yWN Pu'|&rgg]y9iQJeIs1CaS\FEO毥OvGǷ9ń5 UM+ZiPy<3cQwñOpIf7T="K-qL\/ǥ[ j؛pBP9[${`e6ね8A W %5)L2Б?%D%'YhV//y1V!-Ky*suBY׉ewueKF\l0mc8?ҞP>I'A P<,ZǑ#oC3 5KLN5mCtOڗ5k]>ҪXy_U9T͐hC&/ܝªӑ(}1.׸~._)'*F CрeKAux9dP#:k=W>*\~I0OHceQ>Kz:Aj #S&"q qPJbakBz8Yx FqК*3R ֍w>Un̯g_p[Ἃy')췙"z.!7hGA5Ƕt%NRj$_$,#0FDغZxIyks|WL0pLn--w3A<*dž}'>$^{AoiAE~PU UTwYK.D쩶ue`?jJX'1xB؞5H@0}̊)q񡱵gH @X:4okݘ]Ӊԓѣ+*qPMҜ]BD 8XhvPJJdzj))<-zK v]3uNB*-V3+>˲](~V1`teM^tH ;+2oڛד0KTlvuVIJ܌*e݄W>+c5[^ͳ?MRjk] l\ωuQZh a]Dn,I9GEi[V0~04i=y^Ǻ3y9(E!!tr_{z?ˊֈ$«)֔[|@{}1;bpnA<-RV@)+z5wtȫ:Cj ȯCeuI=TGL9#9'? Y0~ʙ52zk͌w0So& g4/2k]Xf|rCDGNIKXi&xC1 FXu]e%_ PtP(E/=aTʷi)-s\‰ `)|/]Cj ?N"9NWBV30=% LyɸEUߺY:d;(NvОl?QE% c ̣mYAXpncaʍP'vaZ/58,rO/c)qGj9>}Fa 8njJSKa)K+1 4I,> TC+k}i Hӿs>te˱e1YbR9gaUȯ(h㙔UP)&EU//[S|@ "E^rZHKHYDVln8 Tbnk0=Dі'mJi74k 4Zl,c՜!X{\Ƒ~ ZZ{gl^֐@QR1q5-Ζʷ"^$A7րų>s}J5d*>!j_V.'K9Har0 i|6ĴK0VnU;gzϟb|k X0TNa"'ʛ79l(!en[oW@i[I4Y\ wNsFim!'0Da_~/ Q4kN;c`b*%*m&;)'iyBsqj)vѷ͠*zb^ a|Bn* % Ϝֿ =}Gz<<'CQtMs6LKl %ӣ ñ7i?i(pg3]x  ,6N<5U-2=Fmg (rњeC5xaunbm6n&sܔ=1lԵA|"d. }PoQg-}G[gҥ` sĭ% 4u`P\ifyi6)y$YЯ0X!Rt0Ѕ-Vkuұ H x}w5)YdhHa;!Qኃ@GbIj,#Ky>VqH+e kߪD?^\B /@Yr(O'a,aGiPo,Ǭl8=4Q\ͽ11=4VQ_kIG=COROm1Bc:[GJL)Q3B"IQ}д>Ǒt6!+ с_[]0&=+2YkDb"%Mqt_9WA(zic6RIz#7 `ӫ.h>svC,= t럋'Ā[>v{*yBGӺF4g RۛB+&,;FL5ުN E ϼYPa? 37S4;F)b(0*Ѷ C]+?t;ʄ t'/_r76^(ʉ9(\ !oU=_/z=>Y[6mv p^L2Xnbw[:&CbĢ(!):؛l׋m!lvUMB:G^ÕMyTeiDcO,Q9}%^Bnׄ"flaLKc썞j~ )kў\aWb#< O3`%N bP%680S}ՔjeCƉ`*d+NiIt3 $)o`Dg䅇4e 8l錡l^gN+@(H\ʦR<{0<4)#ckVF/5b!e&Ot4$<ᩎHsdV$K>}n-QHU44':@1b*qw\LKKZCuXm?j׭aQ~QNnxVx6F&3;![J!@ײ78\xMw8b|]4mh^ς]z m6x͇~<4l?I߆]82J1'Z8BMn%0XQA%k@6V> :/gu13ß`Gp뻴Ps-mD(U-#01p޸8aphg/L܉gK_pV:2GqGIO r^ZRdϧւ7cR`B!/=]R u $NMbP|zO1ܡزNj%wz-YUd-W6d:nsΟ=aPe: MS]l#SsfۚM+3$Nu/wϠтg7m7R 1a)ܽE17d?:CF[:Zgݤ\z3~w|gĻ 2Y1 z[T@\ke?{jV$qh#+j!گ@)Fi|EJ!]ba\>x4:Ğc6PMH]Qw-JRblztcHB+Kw)po x;*&GOuuGSOȊ[f2)u  515ypOQ،/l<;j ˋN&bb_'v˛_2=JC wm!㥀zCAM<ԪuƆZSe]#X/ E=gI ĆyM mB,Ahz?v\v6 _~ @MP=/~G :c%Wo"_ j履 #mx^V^vT b0(mYU̜5n^,"mG@cIϓj}OX;RddzIqO~,Gۂ/kڠpzr[7.JKpxyiy5zuO4Vȷ k-"ev9u]#Qm9JHxC6$Nh׾,鏍Vn.[/Kʈe4{ШkYz_?O4_H -iC0_ ƚ\[9Ԯ Q / x%OkPgğARTx* NISg +1P4:{VF/A咈&Uϖ`Rm&KE'b ]mBgl?Tr 8ÎL;*_勖,y9D08˜DTiTez+LUսEj4B+ɼ.oUdj(BnN#:TP8cU9b )-^ Zp3 +sN3'yBa_3 C^栃T$wfHy3 6Tԅ!q3 boO @Nz]dET"hh~zQTL=1%K\})'j<9J.MZ(d6Z4+.ʖɊEY/ERbou"|`ʶR×2 ZHPi/II o[+ *)-fis;ㅫsgAqQg;AAv&CQws &8d0I|9txEŲ8蓠jR(),2"67.o:i*L+$.899]yM:KBn;a޼'XB<;a$90G,6cLFs~o\G3T#H]\=x$ fM MhJ*=W'V~LU?uRŶ/ Yi8d+ {zuN[w߁#W+=si?[oT  EɡMSm%m95,lSޅ9dC0E:u@?yr^Ꮙ/_݀U.%"u,o"_B?əKVc4A&@p-6оf=ہ('*^V_]U`ϽlG#f!Z/@JJ?Y>j_k NE?m`R?(>a;.AJY@ `K, A z`k:iPҳA1ߧ Tv!te׈vkDЁ'qsMھV''[$zw[% qxH A0nq:vsW5@_U+_Qc9? ,@Y#w}6Q|ђ1nmL&M',: ȶFiC&WB.9XOE é>pd.4Ma(")rT_XSYZ_]?iV_Q½TfudRa=6 PWl.}W۵J/,f4KdI5B/2f*(J< R;SaV-;Q*wyyfb־6о۔w5K8q4O!i==ݗ;׹?zN'pMVN%Y#oU0@ D(O4%!E 3 n=H«‘)TCl|VtU>c 'mثD,`A;BS4d>;4z ipĘ x蔬ɱ6sMyAd +ml@RGOĿ4$!jg;ZassPZхA_sRO|uY2ߘWHۆm&@tTi cա8uMUvSPm )H ;y25ɯP7V\?t΅;Ê?S)4OL(MƸs0%Ěϣn'JkOPVG/#gD)e08fЕgčwjX| i$dfWo {XjߞA|wn;?>Ktr**a15! d"*'V|vqF'=e|qS.? aWׅɵz5nϞd"Z*"UE/qK+Fk)Dݦd8kꩽ̇M 6J8:h@?hUƙ wMؘ g"C8ѳH%?%…'XJxX5 !tBLJT[NW(3x) nOO Y!`fxw6W^+ӱQ,h|aP7%ALc/5*A#A<,gjKEmjĜF'0-aJY`bBU()!k|I_IR34BMX f(_eQ>uTC*qY:Mg$_M_`QBre"Ei=$}][ď"CQW ^kY^V2b>Q ףU8`#zXDpg0dQۓ}E P~S9E>>ɛT T`#+WzYE4IDVv  Si w_P iB4A+|^٫GD#>0Usa.tU(gx&w~R묰wE7Rhic:!9fi#^ן! R4W~{k{ʔ$̹kmbݠ5mm%C"RQk"cf\6I@YƄ'oZɜB%0ss}QL`taO(# ǤhS;%xDݒ@r'j<_N j|GVu$GBGk{ϥqoqpm w9v>y,(.|7Ƿ}Cb($`W5򶭍px_qH4)i(~;""E5dYLF> {_'BM~t,OQשʫ6`}s뱾Y6St8U] 5as Stt}5Fڑ>uFBb&w gTIß(a}4Anw4@?⇺UoHRX=g][%I>hf_݌|D}\09=htUA#Q-:ve⋞qP ` qxyw c.Pr](ٜ?(NY;:9z?՜ lxdlGW&Uz3t&Ylm KfP+;6^ !867) !tsz hIaJԑm@ ԗBLImg3򔲚trxLu?7CAu;!ѷ^GKo;V(Uv|mj +k2PҨڭD1rL͡tN:QG3|Z2aO|o, sfoI~$VhT5tdd¬ҜSU!\iߧq_Fރ$(M;Y5ّ97Iv@~9(XޅH醸2 ~Lu++KPE#K0 <T?J=Jb/[Tj`8V',I|Hj13s+uY2M>-yPq/ W𞲳0_dz`9O ,08{.PS:޳LŹq4Ǡb s15gӣ0Qg[(q֞$? hojmOXZB. 4dK~:F%D$)vJI^T9EW~@?.{?{J##?eǿEDdrc]x-ﻖ,Ov_8`рU4g.K-5[fކe F,7Zхi>FI`fW!> _iDp&dDpNDzdr{ $szJYrf4 S+Yy[=ךM:V tLmg`0sʢ#ʅMBT F-~,j'ѭs/_4YKI\Ά[ji"4+ 3KMn4u)a0CQ-H QL'3mPEuGq9$lRyZ.! [ЊjEPܵ@ Gv0+h)a1X AsjAH^[JF-7 F޼jwLm7x|۪IR*}{o%l+c%/jeԛ4AAtG ;ŐlZ 7ԦYLV T9j? )@D _Gv yuh[Ko?}dl{J~nj^i v;\5Lk!D/'魟@הД{12TBcݨիEɗTƌ8HWn!Xݍ2:X1V\y d7O&kϰy6ϲo:u@ b ˢU79$[_$h$xCBo3q%FɫE x@| Bh:*MUii} QDV7A՜q[.U!1Ɯs_nVO0nćLw|UT9X1LXOLmV0L:J NPP৸0'Q-*jelWbeRf\b+}Pz Q&UWxq$xq}&q`I^`:S4ݛCufrdli*67ܒ&}uC@7D>o͉ ^>02AqPl-v .  'ѣW1u{L_2. ]>"z$@L2+uOnaar۲;֖y(y~xl= @H{9M?\k~czL!sYMtG=?oACȗf`E[:Y3AҎ˟3Yֆ;J?S =X> 8a8j3"^m\YUՉa=@n!ebMʏ?UreB.iA;"'JY*ߝ /uHxi_ټ{'H Ȭ =y0̢PcƔulʡ"Zi۔gVyU sL-# E = dM&:[jIkyc^t]]#tfEf +e0;1tOpKfgd,Ɗ5_aO&w!ܬEEؒC_?hg%>7L^=%2$nr,iY?׀\bxPsCwTPW"rH!W.MXk0}IC7 j|vpNԟvwX8/ flNwZYuˆ "\*i[!CnCwO`#iG2UGo} nJ0sJ,_x:e+ִ!PO+qOUѿo|Fq+7eQp!G'H?By.lkӝ$ž0^X: Z"OFFg?w~Ly&{@~ߩ+q}=b`uuone5G4 &) !t}NKwgòu4qe%shy3OTho;5 Yi fI!-{3~G<3?y'{V<6T^mi15 y&3zy/wF H~}-S:^Zm9 ~POE0 eh֎Em U01 K5hIE;yV4'0X ">vk! ,X5c3n8V֐c@Ђ ~p/a1xNO#6 nw.=)*K*TTKL;3(gfHAb @G,QA<Fra59yd87@1#GO*oa>s[j8|:WZGP⫴Jg֙kޠBaGʾqbC >!LX`eir<! -{Bj!nQr cX7S+̈́e3y!*ͨ$+\Mx@`g9~ZNU\ mh٘dW1!7nhsekwOxʒjú%xG+әٹϼ͗徸W$i+p.y1xmMj`?psuoqQ3+Kxֿ}N'\ސָ1DB]މF?){B. + A!yćDOAlb9t u#}'?:2) 9iTx&ǮOQMtv*U|4r` \ •03ڣ ϣjXd}u|$?]꣹wqf9SjX@q[lm5ݒ]X*5qD &pjb{Km;A$Z+E5$_]n JruPyšoV_Ֆ֣MR; )n$9R ܵG6 tИEc9 tPl3.rC! gdFk&^|=xKh`igX?v/ UV 7Py(!cF[/÷:2spC4~y'E+>ELٱZ+Qҋ+{ i^vZB,UcwrOV>gM|!TӠ8d \2!K}aP>Cϛ+V#NeOn51& 8!efkk,Vԟ. [hLc$W$, L^{ުx)i$j?PM҉-oW$pǽ,kBO$idEd46-}ܮfdg@L_ڎ%7@RK>iv)q{$"+z S#VZlCĹLB:F 7wp*W$;D7v$Q{yt^Lԫvh` $Wi=uMWx{r"ioCɕLvAg9)T n}:|ZR3`VYAG=KٝGf)d&IlK*^HnP9^TLJ`G65idcf0#XG21/QQ"&, ;hPi">ƘRFsK[wIהlϜyZ^-DA ^U| l|~KhV·@:&hcn5X"BpN)tUU@48[pgONI {9u f#v%,)1L8U8 cfsF  cr9ڛ=67= |4t1ԷFl@?ٲ1AZcBDlҴfD x;exBbSЕPZ?Q0bY3 B3ګD,]{-Zn'Ɇgd1BqZEgS{s ~?oY9)>dScqkoh?Xo;?3׽G؛*w>BRΎn//5,BKLt#;fC/'1o^s}̗ *6N:*3$NI\+T(S8L]թ]$z";Ɨkpn$Dwd WZ-"UCCHQ aoymcy܏LA~?8" XDOdZI=ݢsгr p4.;d5f݂m?Xj9͘F,2-Y Tx4-yR2w-9ӽ=;UdU*'&0L<^PDbzid=9cRDVZT5;d!Rq4#fGpwcV8ft/ Oz{ypErDy&OaM6i~5ϞLI2!}r@%ɓ dNp/2URU:bJb!1tB:FU^D)vQxVpB mxO>0WYrU9g^@.Bw&Y x6k/=PYAmbV“+RFporRJ`lum+L 8Пs:V]ݲؔ ƫ6+ .=^>ʍr\&+I%f7I+i>k襤;7 S{ 0"6\N OPN CuteQh\f|P'^#E$:$Gqk[$J0^D f7?^eqk9Zon ABc+;5ʱ D~ju C=J22F #(Zk4 +li'i#P:5 BB׸Q.x 8 *~ؖ6½S(kHj0+Q>c4AO%č i0`뗒}i{:glmA oCRs1\p3N ίOj^ё6قN!Gj06 }TH+[g8kvEB.Kx_r6n%9̴isaUX%PidpHbw>]`{2V!ъʤ`1H!R%"uw-wR*FJ{bD $د$/,͓ح-Z0 @MqFOJ0B{tT P/vT1 aǍ^;K+-vYB6x#0:}hiYRӪ"{) En R||\V7JyxSo.!Qll~n4v@́JSju_?ހ/սqEN}5?y'bӴ yBrYY$#GN J ;U3Ptǔ%T<ƈ ,\ZZG RJ!cd_UM. Q_oTeJ2F%Xϲė$>FHY(1-ʆ*iMw7?ؒLXs[ PÅ81Qdd/9__{4=guMɊmU'\2+Dždqnb 4,޾q^`/`tfj92Ӆ9nJ%όI'"eWg -D]vE<4B;Δ [h?P %"s:A a$I|@/E{&|Yfc3ǯ|`:MӔtx+S#Tv[QmM<~YOvg!5 '83YS3hk!caPik y<ɑZYwkc87,Had+0ܻ/>Ms0jܴ!(7҄qt(!Ezi<5n}^!sg4mo3-8S%ihI qA"𥒺A!eErN|Un|faG t#ݸRͳg?b''ȈlKHJ15`=r*8b,33e3*j]39,yh5grt c?J ^ru硢o/7 6YRK|h-S 1:nl_hv\R81#k-.취Y"Cqɭ!P) z}45y+"iq Jnb +ԔE ܺJߚr~b拕xV*?rHtۥL# [ 8BcK&vb 0J?~[Ơ^w6x"N!Hu칏OuL~}֩pZ\'C1gf!yJK馔YE,bnф?:jV(pJLP`/h5aY˶2cgM-S~0˶C>?b̷?q31t,tvp!EvJ\_O Z~Ym'`n$ecEC~Av1_纔SMcڇ/T?n-TW|7NL32nJ>U;%- cE?"-"3S{Қt1OX-H#e^\TEX蘂!D( ! I8~gr{cng.13XF͘pckMw/D"uX,.rjT" 3#l>Nu+PB2%4C{~:;E}.Zš*mRP0,Q]1LI_{|gﮦuG>~`#ubT} êNGxs"SȓgxO n>"R!%D(\ʷ*0}x܊j#gKY`_p<ҦZd /vX HJ`|*tpRc׋[J5&CO=qO?;7=vUcQhv9ao.gA>~`i%'g+1EX+W="21 J਀<~E:1(QA2d|M%!eJ>pљ<=9ˆ؀fTKZ' Q ݀ӣh`O$TL:j7p\1G 2 צ Sl']'f]T2ёjƓ+PdiA~̬r1ɚf.Vx{LR)QX]8ξ|:j*EAM|frQ)Sv\Yu::\Ff%4yexYݾpȨ"X#aoQ{ԅBex(C?iF M(~}qwun7SvHqIZXEdףZ.$9t9^Hc*f]3]^@_516ɁLcSH:І!&J=U$,g'udIxb 5@"o7XɶK@P&GfXY FOAF92bK,8n#k sK:/xeV䨍ZOEi?h(hO~ 32;퟽s!S-6dOF\tŇ߃5a[;Ǣ&We9E㧋>c:(_^t(ħ ՛Aj\t/fn9ps}oδ% d3-KLb=6|; It^b' g$CI- $l$oV$nk9L)*a![fs1+l!VvCêY?<_G*Pخ!%Rug|k31L߽td}iS f1kR62Bw$Y`Y&<˵xsjۊG-ۛ0 w,ZP][a53BFhVx݅MVCt)ݧB@]P@ǟX[n41GIR}=tj43(yicnq@#2bhLNW[l B#@,9tc[B߭s:▦gb\.4DvE]bcB)_Ҫ 0Hesjs1@84Qz IeۅןOÌ?@2)? %ݒ׉#y.- oaQ2a2[(|0Tt ;{w5>PFrY6'L,=@I?dPa-Y2> Ց|nW] kR>?2ҏpjX*æ=s1T/k ޒ i+w/><]ػ. =p i!%d19Ucun+bwWnCH^qH]sSzzvܩ&AG.Hv ;7ip66=(L[ѐ|Mɚj]ݮ86H:nfbj -7d}~_Au1r-Zj]ec$f+Fﲰ*5p}h/jжUj,!MJڪq8`#51 ^rMg:mkJr^ #(XSv!H9Ż" HB|vLiqCRWX`@,`e݊+ٜO 9Mx[&/Ц(kQ ]j߷/-9CEl|৏0g4 uÂnVNkSQAX+@ -+Sh)|r73Tk=2,>>V04ºӀ3?aFa-# _ = DUDGR \:a`I,x#c`remx+_ȶƈ=esԑDUP&CN19)W|y R= _nkXܫ\8Yz +>Ph:Z> L J& bS+cCQ53"\pSx znk{dBkٿ$`c)+<)O km/n]k5S,m@3E4yr<-OϞ ΕV(џA{20[䢲Gur)OMU ţHKYXveS^tG'Ꞣ;U„'+jpODkWEdv~?}u7ӷNKHۘ:rFHZmTo&|Ɓ{Wh6+5-5JkLvWIϾB06F7,9L,PLa11E& qm*( o< Bϴ|,;WkUEgVrC%r佊sVoӬdS>iCF$\2LCW(Ԍ#G[@uG;}3T1Mjfdj%jN&w>3z(HK#&3[Q%g|mQKPLD{ .d8r.)Et) XN =m \ʊXi㹹f-Ž(Uz*@i3̓D UJg ? bmG*U%vd³hWiptPTǬ`O&ɲ6Uvj?}֤fyÁ[0r M-s gb#X&DŽǭdE3vX1U|4rsZR1FVNvl/8Iu^]87vҋ \#6_O\"5݈VYpQ]k$=a @Gp._kt{yfOe._>]t]y~@Ol%%NS,>/?Y}@@;o9az iTYL<&&siszAe!1(jj`BTS{3Z5.,%3XYI ڦ~S 3$T{@Ì/y(He^su(]h%Ny"*5Ҁ5 !M|DIbj<ì7|[;{\ 9~c%jZ:A{X[t@-;JeX3|_9Þfڌ̙2ԑd1޿"vn5pTeV.|-" ca#־{@اuq(*U0G:g% {pxU""mr2Et֝'ϳ9)|5sCH\0'ZĸoNAPćrbsFe$oȗnezDw?Zk2IأlWHz{,{&|n4} V;f 3&F)(>YC9: ZG4i2X-Ʌ WסR M7Oï:rU8/sF?E8Z_JQg5PRSJ}yz}* m2>ZX*hlQw֕VˉXo'6q8HCR͔=fp&e$@iw羚2ve6牎_2;lu61†5nrXy G5tPvң)Tlz0}NAIyale閒7{ʙͥXyG^7$;y-q>S 3Idޔ"[ro2W5 k9?V'F{x]J[( 37j@0hHQ0ii$(?inE{OMJJe]W3 Gkc<KZr`3 F>GmkNZg#Vz䭱/Tp0h?@eZ!]ژ}N&zj-~b)Kbl@/]=L?9iP $EGDkĈSgBtzp= PeEtOe//)Q"L=e6 VOxL"ܵ{[H5!;Ry#g:Y4LND#MYh =ه@/3i+iAeD -%3Ve " <ïtx;Wᯭ e^wW,m\.>`iH΄A y1i-d2h?4rO.Ww)9=0ϥS>^ivm~jʆ[,t#"VoMa|/i@ d[ ws0TNlk3ncaUڶˣ匴5}6x1XD-c$xN((.vr0`Mg5 _ Ptb\njn"iX:F}JD@YVTTEq rx~;!=neY?uxfJ4k]Ϳeo{FKS/;!+I }UKBᓘt(Z)by| wd"==<ݫ)um tHmRsp \$@¨wv|Er1vՀ\8MlQbN~ډ?d7Cye v)w0M5Ҿi5#VFIe^di.(ρՈl\L”궜@|mK6TUJ\(oH.*E<}' Y K]+KNrYt;wx#\am,RUVWc1?lbn:dg(P eSg=~8iotx-Llё^DeP[k v'/~܉uV*Dե707儚>邥a8Z$ $U gޏΐH{֊VzΉ<3 gcNClLSFx/Rcpή7hmt%vS]+/yff0aw oA~tQ=@-ⷹ!dsFR 5`jf_b~ u!?<(xFdhjiʎ! ]A+nU#j+1@@gn& @} @ r }ڧ7 0tKL g[b?^m7,tT0 x\;оJHOB3{hi}.OW\M0O3AoKV ̖w^ĭZEXiAqC=^W_C4vwdV-_Ko} fn6Ȼx2E=T9 -WZGBn]} yBLi jGh'HnO=U Gqa( z}} J;X Edf;{_e!uҮauAA?&ɄJB8vz@AaC\,t$BL|x ZL׉纜Q#tqS!R>]CxS+>$.O{%@ߔkAÑ+xE}|:q%#v.3.-a^^#cНӱJ.U (ô / ` SlfPyaa3ʌݸ3!Ãln~+p/"gD-KZix4i]#qE‡,;8z;z= oIwL^j؜9MmCn110Sc1f-%`5<߱NR_P41 .1i87a0/R9@wĘ.ĦVv-kj [ͶbD}{ DD<`*bG1<Ĝ!pLhZIp2^mpH,(Vh{(;$[TolK761%k$`ThTCyx.2Ё LLC$& &j"L-LY!-bWg xie6M?!L1bж8j&7ayWffxs|3N "c4{0yXtJؼ7[9RȭyuD6#4~3kN'C㔂bjbUcJv(N&NY{Dr8gQuúͺwF3 ƤK6>>?DDsp0cvLO'}ݧ*BwTX;gܺdmE]!Z)|=bCl w1_CfRl=3h_ tc($`Ŧr ׫8j.[ȩ':yN(XOBZ>`m 3{2 rO. [mݘgKZByVK-+ʗPѧFwa7wy$G cQ ;G\=!v8'S]_]jctj~xC'6"L)ޣۧ[Yr6$3[ҵRpUKX)`K@F8XXjuhel1y6BFKD*֠]c jzXL\,(uyg38,8lN^/uUUr,z_dLB?}b(w]7' {\PajWZQ^G'"< FT(?kNZdY~k F8k "d b\͎CHDJ.k _ltXY@‡J_rd o`RKL8zeZ.Z2Aꪞ9?OU߉m?'(91ʂY %hnQǻZϨp:x/Tŭ]/s)|vw$G g"G g; ɈxEi6NL/{AoJ/~ UOcwHb)9F:|#f J S|[nm-,qԫL:)DA A]bV\P*Dɤ 3CKAmfU1ƣ@Knvk-ࡰDϹtZHb*%n:iL&ÚE@pxHuxw?cF]|`>QmNTՒq5yDX-Jr3uO pMgRԝQ,!Ml ja)}R"VԆeQ:-QŞV1ZZZЙ^8pU$"N>4WeXe]܎,:08Uc5 CY\íp $ MMV(=HA0=ǎMv3}25yܡn8z^3߅8 |mf]ho|q乺 Eʒ_5dd\CAsśRgҞf/$`TG KhvmP2K/f]w2ޛSb9KٮG'W T!Y97e(V \ H9aWE=Qn;{}=+Y5+)D~/*Ϫ)`,xn#@ZvIW/ؠF1sq|"ʺ .< S4}']2@vHMEad^TMs'lX/(}}ǺGÛOvɼ# mWǀ;g 7.$nK4o8.{{U &cqCBi,.B&Mc 0(NX$c2  !nӒ/u#+X#IӤxV]M 9Pc~mO٨6z TUq(䩇: X1 }Μ=8Z_^"(G$ǛuoJȸeH7U}xRZJ]{h\I,v2hu^+rw3ǝ:}z!G;@}W%p鵱sC*ra$%?ʤ%9 {J \?^Fv׻md~tc7#U-=CQp` 3g¶rlxcvrz3ҫÍ4qHk2E .Zsפh5} è碖AB+]nlԭT!%cb#+arqC# 04"(߻!JS8GG=avnվҊ_O*} M/~ڌ![YWcƚuEg~A ͩ{)Ubt sr1wK׌Z0*[ٸQ3 ٷ$Hؼ,񖻘Bcky <ޒhb\slHF'N̽W靈kuvTkN妶Ԗ[^!0]?+D.x\#HGyiV{4^mEh@l W?E P 6G0Ieb8#.O/ |V gQ`ma6tJֲ|sT:BT5{d'in 獱}>26a(fig=7w]f lXzyh|fEjI*"IΎEYbFG&:A*캜d* ]+gy'fYT% A?E[u`HF qUy% Mt܀h6B'fV;o"r0G7ύjP]z\ey`P@DΛM eZmk-;\2,nμn%Jv8ڎnF"E9ޚIHxNo6ANl3`e* A}5&qqf#!Unz'BCC^]Ab|鎶42JfL n7t4izᔿ.0#c-?|7/B:Lf۔/]VWI#^[.72 @QRSߙL<:foY 0ld%"J?qH{X +}PՀu0uNDHҷߎ[67蟡@d@˹VX0On6#9^?nfXb8ggL$yJ8JPiz9L-H5gf-Lx)i|?AR)N/QqqP!}%)hxၻB-lrzsm==m!06WBdJox]߀gvJ2m8\aBou:7Hsbp nqĖV@ȫbv[J]3+Q ?tjJ# ;#@QeK0q[+wlR~P!fg} HRa(')d~ǩ*-t>˦=E lQ CU<( MO@*jD+;ΧeW~p<_HdM[nhKKds3B35xFc=smF.`"RpXl-y*o`!6+riTWwR7 "=s}B,%.o8 Kf(FWaJ-ݗ?p5d\H ) %^Epo Hq2'.Z59(CK>ɯW:!\Jx+i|&W^m.;crT?2-&6[{,qqZÎs6Q&#h}62~؃6"׵q L@_ SF!S4+Qg%HP֭'UU%D.u5DXNrEDɚGSsSEMYc2zH1՟d$i8繹I iFeuͨ{8s"M?BJ%6oH%|xV ܟrDMKkP⁇`ڊ*J:QTF[* ;W/ˣ[*`zh/~iQ.B5TfchVrzv-h/됻V93+ŠM.3 ŏ*f{}gW< f/>z+*s7dUO.?̽qB\WNj*]Hȯy`+E۝<'o.nz:w_' ւaΊ cqo~x{LVv1%gX&̶y ؾ#z 6{0uigRh͔NGZLJ f"tB@ep1ASaoνybPBI<*唡j4IAD7#yk6L>xțkK<&Rm3jP-Ss %*f*+@hͲW$4"7wG'  YO0M͙t\ 8׈8 ṹ8WSzk^Ѿ/<|BeW2*x^)xq4'ѷIQ,xbŞ7^SlAA NEH2!I7W2?`I~Msz'>5* | vոh{Y=e #5a0.gUj,x ov|1Õ`n\ f,]ȅ*&jWePC(UɅ)*ksj%@&9y_ڭYr͛yg8yU: ޗe;sB/%s)XGK091%Y}QB7J=-Yv*=t2=E:ʺ2Md_hZirR@b||MY^ m=%$=aJI ͢~8O~$:M}=P/oYI`=={5j~ }S]5K=d⿅(=@w- _@3n%_le7Py8LV% z0]o/ZRs,jTc+KA||`q pPӌmΌ8HJc11ol<6Xu2u<0`Ai27tUr E~y+UR frz{2=[d2YL9)M5|J3Z4ެ.m?}X%pjM7^w~$ѲI&yyr0Դ.AIL(M#٠F=;0:R qj9z4蔾5 k~PLwagܟZ*$5TV"^2ci}3Iby:9nL3gQ:='N#;b98TLѝ~Ufc-KFk*Wi6r8GӬ Gj(i&=7hbH*q4tŰJ2>5cvߓvC6$C͜? =)"3x<>2kQx AZcV t Y_CJy~=jQB%^*o+%Θz7❮eb5}[QcNDS߽hl S+ "5G6ּnsb]c6UM2|Ki/=>SA=ʛPZ?NyýoIOD%@JI?᪃(c;O(v3!֋)]V(T5KSNb;ho.Sn8K&Q.;H JL ^ys5 &,l8=¦IC7:(IFEޖJM@eWJҷ>`hJhqĔnl*LHIw U9\]uJKkK*N5xoCMV)g鑗>jw%+8`8tl;2zoNNʨb_$\[tyg2.9vT)>@_Ѹ2kC9f/uUߵqŭz$stNA+1 i\ێ3}wJ Lb6Ud ʱKt7B4ObySlrW7p@ȉ;ڳ$QIqAݚC81$^f]!  lGf\j {ȕGd6X&Vvlt{l qsĪFv};QylܪYn+f:/li_܄q'~}zݲ;Zm{&E\S(Iw5t'uXܡۃ"[=2=Z;JGZ-[sam}JQ6k>֐+2>2 8ud XXa"0< Vgdu98A-Txh{QD'Qy^=?@% _8[*Vz]%̇ (EKYr]5ls6KpfF(&1g3s!e*Xo/OԋSoǰJJLrC2wY8LmD9 F@ lqAɺ-^_I)YeGȿL1S4l炐pvT/OW1J}٠pW ţl:Qh ;q ?X RWrU`˜jɲj+DždR2xnŽTWt ȖZa4WE%u$9Z&-Rs_4QaX13aeWŨտZf9橱x|OӬGg>Upcm:E_ӣ{ȿ| 'c9}=#ӇC0i(vwoL D;2(13^$+vӺ"G f$S%v jCdHⲸcg*&ٹ8QYI"bsG_sD2wH'㟵M[,0Hv!RDjqRcj 2DS>4/M׹9%vUKNά:,/#IS.cv)=EQi5~C8p<~PX&JvԪ(+~-ϼ}HzU@dR!T{yRȊr,tʰ/#̪+B̮o >yc+0zxrdd& * IjQ$= ]u1q`_ށ1lIpO\%)5yDHyM` v~X7$ 2*UP]8f>dzV"9KBc?I ȂIJhJm柪EnTek0\Vh'?,r;hzޅ:b(q}*⽲;_«ؼ+c@C ԊIsZ]ZIK~.2lwh5A ģK [oX>62ntEo5lS50!ׄU.3bkmF8;,rVg{WPД 1^vT:oOQÑx RtG5tG w _<,Zܘ1+qx 0 F=234[+ <o_m .sE|4Xh).I fԧSܼ`Rߋb*jpBXe_!b W>I ⏺G۟qB}.M3CT#cO`P^[K1iem%eH)":-?W0 Nikdzi=:z?bZgdNZHy*ZXXܝ|Ȉ)+{]YݘTy}dov+ ܆s rٟuhnUPj̸zoMܿLr?~5BZ+s%ccMWۨ (ueb$#@MtU^SB,Z*h9%?KXA,i3]ݏoaË<|aK%FȳkI rQD,aRu+s3q&xku aUw\P0E*VaAzvύЀ#.'.ͅ;3!ci1/3Ɩ#TaTm!*BiTƻi*yMiEc>~[Cl>1+ha0:=0ip-NN5 Xg_�L[8XQ-'n`ۘ7g !}Mg8xe, _\w cbgk7ߍz;5l_qU[V% ;"y%v3ED.NSr/pfcD1EIQMvXzhNdOŁR(,108xK]Q$XͳP]7H,Ni ?R݄ysp ܊sxJvd{0nVȠm-h}Цaw\ Xwóqf +fqUo3bHT!" <~bK#/ (oB矫ھ\ ޸8+p}/i2(q36BiM|@\3捱Xsj\yr/qW\ӣ6uXtb99Dhۚ(.ѓ~{̷y@^K.@Gθ #Hc?Ds7 FҒW6qcQ~/"!`-}#ـ ՄT(s0'S)ĩ꭯8U'Wiߛ x(4ơI6ʭbfj7zo$-Ɛ@L! X%HͦA{<ʶeز c|fTFLjbB[]Tr[:'a+]5{*fl[ YDs7#;O˾h_D_FB̧I|pT31#@y>Ό'(ﱒ!L;fF-kn~/l-tNSJ 91 G ڬ =){}t_-tfm!'( zA9sG?c0MO4G/P.E14&7TnZ@Ub6{0䎪x łR`xR݊-Sg ϔ(w6Pp4; +K4 ~w\R~ |*7vrmX{77!u1^_jV8尺tzb*0GXrwn~g;|`})v!&'+M󠩢QZ*9d|Ӽ#ˮ~&A)cq$\|=}_#`[޲fqQ R-0YS ⹇.2ze4?9& njj^P+RQwA4~3`V$6 AoD@,_GY##ncwWͱ*:pHN&Eғ)u@i둓j,ѪNДL"+i+w` 㿬[2Eb*oݕʤjרyaݝ<ETa9vl_Xn@JOOeH/RjRB?a_7夥G8';fHt-t3U;XEo:dɝ˔R H%2R96mgw7µnd=!4bER (Zɺ(Dv{EVZ"9aX֍|KPp7P1{EqycC_\9eN0Ka!:L0x7-i3-+pJ:9mJQ\XA_^P_4Бi"LSQ?oa|D~}eoӋu+^ 'Gf Y#tH3V?ڮ*I#u*aD/9LΌC5^2oqx.5NI8T1*o;_a7؋V3F4@ꢦ5(!sUH ..{:缑FS+hlmO-;xj'Auh)2LڸR섧hz v9[k~-cdSy1Ip'm ?aOt:OUK[=^Z&Y7X)Lj٫h8A+[^aCѪʹJͰRBj;N/᠖Hq|JwlF4i(DrveȿrZ!apΊٮIp䲕j+Fo, =iBe| *Cک&fNi `BhAd2P*6e63Cjibd0 ,yw>^M1IN( *$><@-g)?w!]M8D_|&r@'|ɌRK GiQyoGpԽk=}e yMqǦfrF ӾղcR ޻z)+xD'aq{8 aon-00"~(%pM8\a݋3gX@`ŏr1D>燆x\Cdk 6WZ<` =dYz);~1Cڄ5"W3p6O"[HaV* Z5;ɐ̐27I/ aes}ZAj>Z_2HȳH>NtL&$@L%_*r <'!D^B[bj=s9 ǎ]IKyHnh:PU wBj n5@%5Ld'm@LQ@tzb&Iا4j X{#a;u"%9@ꬊ=q[NIk[ȬQ Ea2T}ǾՙrK(rH^;b i&~\ y5 y IXİo\6YWc%&QtT3mng=[m{TpÜrH'W0mXƧT7~ r9v:3ͱ?usrۭKC߄gha[G϶SX 6:o0 n{"Ɯ0ȵ]Ct_)9MA  4;+mfcP )R򽕍$L%crC &dx'/G,f8\)k,w* ;R<×f1Z-۷6M%5JoPh1o>ZM)ܙKůhp`ʃ | [6ln+!j*s#f4٨ϵ{5lw = pĆ~H}A^V>N'F#㉪sλ{+@>\^n6k>#=li_*XͶTr>բo('Z5!6{=.!}@7P"e w^oFHZnS~~ )_#ڎ_Q>;٠߮~W n:"f")=~̓Gn a Km<A ѤK&  ?,+*MvhU,VT=89̈́jE7d^W u?Ƕ޳,KX5N3Ƨ"Mʸ[W-!\sIFU PAuX`\vkSeC &6FpDbcJxbڄ/ S qG;e-SW<}:kcG6|+V\Ӳ_f1Љ6-˱+AN'cJv/7x\70(S@E}TuHIµwC6?_  RK\m0M,9;{T6-6_:MNMXKsǒaTGF.~DW!) XH+s5 '?y yVk^|w \I m%̾+ݽhC%ZD]sL&);r6.-}-"7**g@q\5Gj,R?Ej ̑? ow~-Ⱦ̿$-ÚDRQ=% 1իx#Z;.3 Pm~q9 V g/l(,L#YE#XsBMg=rL.M*</~utDS)6!R%+rgT_NAS&ڑl+Dy{VHG*N5Ę;PYDʤv#YqL]kDt,f>k%v8i:^="ϮFt%XkX%MD܍8jDX=:QI+k;BL -H7IOS'{_]wZ) Xܗ3@|Xƽ{@BM#6!Xee.°X}ͩ;/T0R9͒-R;7.Y! :籿Ru&-_EX*t=F!4&/el# )5QN4t># )cq)%"[!tYMn!>c :La[o`o$1OqIzܽd0xBG}ɾ߫bDzH"6ӣ\édY' z+Qt+#?`fYpיĹ#kS jz=|9*< DlUFo 9(mDK-ۅ /lANu*u 5xjȁuhW{)[F6mv#_ح#O9i<[8)`7TS=m{tA/ |#Žhy XfY7z! HPQr:6*\l5"䆄ojڬ Y`vi!~m3:> IJ"X|WN&>ӆ}= [LbZf]7=HY_.*6;3z$URRqъ\ #x${`tyVAŊ!K吘 oZCWZ ^lhj{W&䖵قV&Da۔xd*x;JkZIܬpd#kB W m:! ey@c#7=MٗsY<Å7e[yn}uW 4 >9y)=k/ո<@zxpߧ4pzNn_;mM4/`D'a.-Y2phxM]v&!8la?Jk3<* _nv]|zgVʕXZ{S\ժmbTmI8=@gAHs diгG2)xNc/O)xd}rŒK-o^ ,pa+Pu6M>.q05u4;v5 Znz!orZAJ#%FsVdN5Q4&<+7zdmX}Bzˢ",_rGa{$^jjˈN ߂V |6m_AZʔ'f^u){2q $N2X2!G$=^OG֑ )p~N}r!A F-)@$]ڜ՞[lY$j5X•9YRUhH 7l[+p2(}#(@AmLKF2yp O+g\:e/ՠ/֪e@G{ x;sVwEߵ PYV/e_0(yݑPA.t!X gRgej6H?އLdaIBZAeH 6\#;,ݢZԂ߼8)z>V@̣F?%oB\lmt,a@>E$ށ! ~ONe5лɾO><߿&8pf:9e>!*-߀Xnk^ēuEKP:J6mF}¹lG 4Q{'4~Oczf[ ^e4{a$~Iu {Ūb`4<fk3>TTƘ1%̚0؁)-v֡Ȅ@t֒[6ďjA^PЃ\RtՁf0봶 9gIbSy }D[Z}O/[eeL*}$›/Vm7&y6GKr70V4EAM \IMV*advD !Xb,bx >CG5qh(e]Az``%ҩ!8?s˵ϊ-_ۂ8-{"=CVgk]\[\Peڽ՝P75E4دSH>i ߽Cn53U.bH:-O}qqy֑Qsz@,/0nӛ[ԥroXFGh?M$vכ0jL+N缅 mq:bg=sTz4!֞1!W5j;U.O:'i@A"N  Ǖ O+=b<-G͗[|"ZՑ Vd*u0##Anf߲RR1k"r .BE^ڋ=j1 =ts5 DT`TK)?Іw*04\xy 8^K@'&J^3"tMb_ I׀Xj WΡ5{'g^̖V;O0ºj.gZ祉&71|)W`jшd]v`t,b=QG]v="ZUpR]I oT1GIx;ta`K,{`QѢK܂Lpq^[u31aIj#e}_dXMu\2]ѽ<9,:A蒚9 60NslVal+Z"0#_ybs4UPC 6Mx4r8o~f<_DߵEpTYHǑ,QkJv:Z#lOL3Bۦ`Xr1i3>au<5T0kiFw:A~ߘ.B CA4 0p0^<=5ԏL=-]93ǻVA߰7ma#C&}ZowrT*l0tw5nkȑ;C*b30u^F_Ӈg V g;[iCWVvvjj1>+Jˌ~Vs-'![NTaMp*8SUzl^@'ɟRW12'T9w l'/'sS0aߖslLQ_%dxh3Fa`c& r».ogC$sNtB>luhYXQ6g"y0Qaޢ~cuzoc|Yq>2]AM(xK,2IF$;57/OtU܀h7|@fP];%L=ݶ`$bhPna{- *6Śj{koɄV?mo^Wtx^䣛%&d1#>s W(0#<8wܥfMF-ZT3 1l&6!VZ WHn{'] -7( ?3?Ng7-B6r4uQղ~[W~x.#3`{AAVeZ)xde+WLvlq8x#$Ȱ@?Äeil1lW+Rb:aI|ݢŸT(˪xn ÓͲiZ M Dj91*2$yYUR$-HXV26Gڬ(e!LQn pdЗZ+4NkW狧}brDyIKŁ<߱IIRWqT'],XCWtL1'6`8u?ߏK0ІWf!e`>uԠLvG%Z`iY.hes[me&OϔdHtd+TȬRh'&1:I[N(&בITJYt5\g|R'Vu)? N#{B9pֆmW7+lG&6?fs9.Y]69z-Lp8x:U=L/a6;E^{vjݟE=uY,xcl[Gs7hEuX{z!@tϫWL𛙿[QR{(gdI3h#NOi\K4%$hoRNQ DUb85[pONPHϡXuI19PZ.N%3Q"{1 '{<%1JKKlT~= /\][Cߨ? $  FF 9wQ-3ZFjo{K]je˧mzLYEhJ;-Sgxʹ0eDGǒGBTtQdT|E _v)gLg<ґH'Vg3 ( F= 70Cj w<P44/%vسGDBUʮ)66AGW06^N8_DQ\QLM,ƒo,)I]8ZRvg> ھɣs ;W N3U|J.A @^8X{!{d`?@tCqs֘c8?+%2k2}G]!I8ObepFǀ'`1pYO VEֲL )X90N( --`F)%x_|/MVJlNF왭$R.f*o怒S|Mڣ%a9袺1ieCP۝=`uu%"9sAթ~8a͇QOg=.957o -8{̂&X~{(ܞHPF-e(ķFL) }kWwwB rާu4i7A4H`(^9)4&UƯC!fx)Q;RuW\o_ ^,~t\k1?Ss`fH eBi{%xȣϯVimQ̐|ۘ+"3j}h@O 3Z^g Y{NEl4T<\UߛdvB$IZG0W ?><w3M|N6ٶ3X9>#b}[|L,ْ:u]nJ?:InY~y w(C倫z zF#дvTa:G>NY;,jD8{z3p 5:Pfrt&iV^Cz3{nE?V)0V@g=&t[b6RձdÛLT9Oon#jS!a|# .__ 7!.BDKځ"%6X2V"Br}~cx4Y2x>1L' ._@d36#hBh뎗p;H7fltpm9e2W.QN蕎tK@}^5ˆ3N~9>i \Ն& C_dFfc4`HaE &ߙI:qOGg]_:l,=e٣ H ̄iHGdNFy0]H׳j03B~8}J W /n1SSWнJQP˫IZL`HӝQ~%{x&v)&$>jA+5-P̉GYIaXcdTT"mY0Q2)/_P; "^v“cpL#\Znm-2Gӯ!"xLD V?/W؋dDS+<ʞ(,B (@aTeL(b+8ʉYuxՒ+A5Ȓ/IBi:SPlHA-N5dɜL?N$ʃ &)-o8vi$`b7y2*.Oz3/gwIu7O0z52<'̶hYyaqV2޴ M7^<8Ƙ;}W/< cȽV-3DG'YZdE8_jy6 k%d45 ϥW8ë;ItƏ>{ &lQ>Fs|wK(g J4Y8sl~Mev'@t%T#j\!|a?(XZgEZ|p E\GPR MܙW?1\Θ,D=ԟoD.4HAW|1u~-^| דû?j1\=夀{XVJL'bz z1 [)hHưF^_8&>,]%t2#*{i%YCdCtC ,v7H.=-z V>f!ETOD Y-{XfY0-M6HjC+vkR$g͢aC$Kz=2G$tUQ_[%) y)O9(ο֓%}P֣~sF:`6|NPATc "epm|(uo(OtCl#!"f$o}F>&{4ۏ)5)Еc#H @D^X4pO3?0ù <'8R,.(MOPHPR8vlg |{8t!ٛ p=_auv򥤑RsK:'T]ٞtrePؓ\>Xo?R}}+ nJˡ]4:Ȕ0_0WJkXp(B"N(o+Ac%9=1 W 7'[+a\剥bjv+ڄRslh1+CVb]z)XRRӫŸkQE=SJ npMzA!\EB F~ *׃'8w+)M )SqB,Z2Dh2)zWڣ:a?SfQ{kccyaZ ~7s%)WRB} _(f<>wZyxں HZ;Iw뽰ˎ[6&UUO렧T]R[Pˡ4.2oa:DE*) {kU^ ɧ`xC5+?(]VbGf@aR^!B6ɂ*>j%UR[->ZrdP9BRbQzIVj\_ 9:QzQFB](|jo`p%E|JB1vTSqraΕ=<|3*3ǴHb+(pO$ !V.K| 9I(4a}HhJ߱o=|AnED;0e:HU/d8[dz ivg?3>0)ksHOr\MM=2hT>vk$cC$'/\ $`?hJMY/ONd&2Ґt:[Qp$T82E9t,eng362 S"c<ɆK}[4ȱ )D}ڠ$H-X;t4o9*VOt;t9$}nJ =EZ-VR4_> īQQ~#-SӾL[+0{--f<)pkKq߂ά_N| J*:nTvSMLQJKca#?y!dx}6&8<:wJ{~D)[sB+@mDjVU = $K}AB1xZ=^k3r` 86ٶ>Yt⛢v[4d//ބ_:8'Jzl{r?$M֡՟."`z(& Dio7PWsx%Lh"ITwSi*|3ZbG%dK$6v8lUY7 JLjX Oޔ #UxR^vr[EܺtxYÍI!5;Զp{W)QK7MP=J6eI/ԏ'I!$M< 21|prhdPaQ6W{A,]HI(m͟.@b ؚb HȐd>YvCBfinҢyw_V?c?zO?;p ~f"0pn8gq*6\r9ѹ>ZPg$zb%B¾zl*lKwcxJyMމ_{8}E{;xa$CD^5 uV08+/vD/%J8$DlOuqaxJ;}1㥨̣Ñ@_BV" e'/G,E ؜H rʕD_zOY؋=Jѹ)eDCjӦ1 qxKj"m|sn26s -hϺDP PD( v4qu߭/;FcS9_k7szZC0 y[7h<GTX-Ă)mGXԈ|ՠ2)KZ5<3 <4 ¼ARc5CW_E53$sࡨ촢Ӂ9EU,q5T* ۬6ƽ`p/kYu,\akSf꾻=P+ ®9oX=`hK@xmnnVVȑ×^L{Qe U`Q wԶ0~Ԩԧ${u>"DVh? H`9&e!TPpHTg [QPhvqb|ho( A'4"Z#g>,bep},L[-zO;`&Hq+pIC띒A s^r-(T:aUBBF̃O+.ֆxU.u4hBB~=-{Eϒ$ 0[_w<L(]ƀd_pq𸚶^/=,񃩦.#Hi!conPܑ1bi.!Rk.\ dSsP`G8-.*@V aeB8yzSI{_ ::F<ٵe)] '?* ^caP%^.wDP ɜg .z!NJ]7%D7HDlAI$\TfDC YQ`ѐWVV|k:]ߌ=`H8dWRղ+(U!8~N8𬍋; ,ejO~1ZТ%Ó*9C.29aΎoolD{ЄOu 0NQ9a7pn%fqd'\|>:Yz\#}׫%+>iVS$"d7<̅;3\; f4O[0nVeX~2%D윎;V]DDEzi R m*敡Л[5)moF}I​!}qCʜMa &<-wݥfq1ү2kF~N 1W-Z=ZX$o#le)+z &3Q~}"UCg-+/_fDBe iKtC嬮z?4s*[`,myJIPH1\\HڄҔhcp|?H( 7F俣q|_p phKtdLD称dvdi~w*cW(-5߇v5cڴ_$IivA !~IIkn8Г>b~8#Wz :K`Ϡ `5zWG]V)vD֭1=Pܹ&UWnp U<[q:ΐf'lʷϓ0K-5QrU}Ϸa+ -#-sd /tfJAML  =$]Xg-u"YM;i?F&">_4XƜ:u9$cs@١Vhi{]ymKqDsŭnC ʂ*[c,1Q|0EˈpŒ k a>5O,$Ox@/"t8اuDȹKa{5+y e#Hrlj ;&,'*Js5gEcAW ${Ah߯7Mstp#dyqwO>/;_f[Rd^ialaL&>Uj2A"/EQVT/wzZ +J.(c6iCdj ~BW3rzC8y3ּ=L,J *4L YҾz<i%+r$)j [eak1NTⶵt\\hcPƳ~^Ϲc r:H N_>Y9xq>E_5yf,G'ǖ/KnĬкNH+ +\ECmv Hdq߼=lo:QȆkƪtcY=-max1Ԏ:"Fg=p7H"JAk} tdh>8A͛>!x`Jrk=Tї7M͊ @$yf+I* 0RR{e)B S!zsaS@b|sn01Eic rKЌw ]}3xZ3lsv;;lCIؽȖ؂"L|-V,\D p,4H3wJSi1Ŕīm$sf{E4#2q B oSqG7g÷\0 k/k;Ḙ3}bP-D[F6ϵ0diXhjdV;o%f ACϟeCh l"b2-<\WN|w\dcQn)«J:x:#sbm SZv!M޿arinJ-/5| sJbɫN v匆_kO۲y.tYc}Zr6w66%xJ}lV)NcհJuL t{4aoݥW,8C&&N)wpFa&iRycJҼ[ijȸT-xHR?8duOa=q?CX#3.0w_ߌufY"Ru!-fK] E0An{J6nA_&>~uӅΐ,.eƋ͋BʺUI, McB¬g/Rsh?8A$Ua)A L X$?e>*dz֎K)g2_sM}?nGGB0ntf' џgY+P9z'd)pMJ==KngD ^yۏ.y$XMjOI[ i# 1Fiz^:d3%L^рH#.l=_?hW@l?()j C7sJ u;Njp>lP1qZ+zۮ`Lq])XA[jo19!Ǜڇt&ltA= 2䐍TzT7bwB/:2H{"MDIyoLMK<\d ,̹#TvOC.gfnz]T.nڧgƤ,r9NeSĝqcF1ShP՜O'Xn8,R͠/GOo33T5|'ԑg&{m7_Dvɑ»o%wCDl3N,fL4ѽ셌QSt6tI{y6&eψ:>:eD!L.gOM&!Swd  lӄNVC}j.P6P)U{kCGG*KOD0vu/o3'Uxl;Fofk_A_黒L]S֏'8;{*cQ©d{gR/%&3YJp= ̸~?rZ-!+h;,)p& 8"H`mMΏ٢YWY8}kQ3@Fc6o[_́`h+rrr.PS\~t2Q#|cb4c֩Yuڒ"3M@1Y-H&uSZAA \xGοq:OgamVzb`"$>HZY1 LL\ N33AIe`&ДiRD?nfwْ*ӋP`08*it\ -F[NxK*Us@` OLxySA~Jxu6NÁ)QAx.Rh\ :s~nr,P=\r뫔z+b?v /͒"$K@D2?5߀ʌ,eִ-;% c&@3"^>fLa0f=XA!VW\tiFpȻ& *M'upWK0(.XP}C.8{-ת< ZW`ODž'(|4jRz͑uB2ArZ $?>R9Q,{^_x2,)oӛcu%fn%xXoOۭs"_ ـ &n~u|"jρ;`=bLʖ+m#T<<,`V[U@pJ ^KE0?:ѝ.\97!xNV6&=Xq]έd}hgݼ Qq.򫵝s8!&>2R5#UEZ;(W۸NU!H{ FcHb~)5A:\Ǜ]L;4|ZVOD'6(qfio\aZU=>AR[0:N ^kO4. i>Mta=3΍1:POL#_r`uʤIHk,iGKqgnPeD'̕{,Ug5%ZERY!8~$R`y,c]I}睮U4h@Wi/ՙB*UZHw٪w*"A|c!:,s-։zZav#'ݲ>FM 4)ݨ2+$[n/f{PUo5z̗&m[pUq-~ulp!nHȋ{~8ζS3O%CzU #*AE%w+l wL&PW{~$#~9 .Z`C: ܨڠbDhϵ g=҄WTS672_7EQPߧhAb.6/ Ñ (vVq,"jVM*KP? s:*UD1NJ/3>YPuS3I<0AWDpK:܁E5qGht:+(Gjɷ89]?T !M-|GE5F1 s4in\C@ <7SEO~ YAʱH꛻K. X#/2/A oxPwХh+k./crtg*F13z{ {s33"PϪC4(Ձ ȁ!wRpmWl)0Mp\ФvLu u|JvsOn\ȑRKXǸ5k%=egtu8(/n-$|Fq(egWש&P"Im%==`lcr9!g0G#}h;BbmY Nk𾞌i ,Ȑ`wB U$)6RYI"}M"a8h},9`J>y!I*}=ȇ! Fl{f`+ !]1t:v(¡ؿ"}\>M'fXL5á{G>5;Aovlh?g}TKnę)[:B)qZ)DYgIt 5tz˳3ji5Ԯ!՘*.~B=;{Ǝv6;W} ccџ#_-f/dp&{_bkJfV娽x&D vU,=t47mOˑdYnjѸk\ 0!$T)?*P_5W)Hmdn?xGr9ìAɯž Yն[}qtt|{z!ϑnM.~8[;J~9ډ3#7 ?Nk OqKuR /je+ Y s;7fbhpeŮDf,ĺ)̥N.Oq|kze@y+ZJP: b` hUtj>*"Zw cc+?eiW/u-CxcG%Uۅ]%9Bm q &S_$;6áH2g=4CyM?t@3iZ׾e3S"VԄz1?p%?"eBt;\ d-uF`BqX-ˈ~x$ɡ0ӯNѦE|gL./vӝzUϞ="x>"lKKߨ4'7(-qhSJ;\HX8<)OSGK*MD2/R+xR+5ߠv )6GЄ M΂4GIĦ9#vKԋp.@FL8[0LsW"gup!KCC/Odoʰ-{y\(5K.HDO ,+ΐKoaNЕǿ[w)S;r@N w[xZWzR $ΑrPrYH-/_[ "슼ν8qVMq{p`@IrKdg;NQXn[<5 bBw.9o' ت&^7PSd~+ JxwvF^%@\R_~6i ;S_&xsTJvS"VY%|VluK K,jlƅVYܦAR .b&蟦?]r)lq=>Нm(^y ),QW_bH}YHvN I5Z8!Vvfb5/Ӓil*.jWMvP! \Q?+nm=e\#H:܉sU=%RJ@|h"F( Teq$V7~.%椤Gcj@ /^ >NyB@&( pD8}h68ě o6DhKEb L0[QоJA* ʬ"Dϲ+9wc"x2jRQ D9]?[{UDY{!^Z0yTu6 ~CdzmΌo\,x3,:`նKd}FNsC|..A ej%-9G HVؔ>WoҰ߻g5gU"7xV[0BΖȰ.pI9ڴZ-nY0%8%^Fj"stH_NAE Q 횧4Aղ67BIQ B4_Iixt$UVVՒ>rcw"68/wsծPۍi7$P[hX* N2G+86AHʚ>YEKydMjZF*2$76R!@UB9&وO7[qO;aڗJPv]TC5kԵ$ f[)xH bӚ6VP@)pZyVΗ>$-hojv`M<#'ԕtUi޸p ]ۖ/]c1k2wICۢ=Oc+3 X2> )^SEv V]5ܺ_e{հYCFJU|l)y>A9!X xJE*t(>ɻPɚE#hXXb>ucm~F0I#.Ob 1&RԈ{\+>m*H'm9+U/a*̒d-9'aIRhl̐r꺢:H&b9+P B%L] Xn3a$gG#W-)!thzf*1qH?_Jt֞/ Y_HkZ\֠^[x|—,G;φ:?}+JoCfg"%րNBgFdKd 4i%`6 w^EYOK{F",ECk!G1nuͭ|AXDǖgeJ }0W]r^ۆ_|#x$t>tsȴADľ3g%;A!4> _7$a>\,40f$Д+kwIAF 5xqtO{.Q- }&Q3QTSY}~^J;{1{lbg<-.#dO3?bѐ=zȤG::qvmb6"laQ64fM}D_ Fx>ɂ98V榐=oINp;&D3 7u贡¹7*ꤱ-*l5$ʉ1bZ-h =z"x,NԔ1_I:l5ɫn#%؅xNm[ő#C;)Yg7z%I)9?DW`bA B}( *MX1{?C+(+!͇J>T׻k,,6 %$v!4I %9vN'`<{;Bv. E+ofh "wyEcIgMy9); ^>+;2zKٟQ_b pKeG%e8(!f{ѿdȿWA<򿵙7ФoEg: L|P.x޿%"!qjJsl<_,>JsMBє:h BSLǂ(b7iZy!6Y?ot0ІH;u9ssOrL>@yK,"ee_[@? fmקǒ' (ka/JDb`"G_LD?ZFFs\Cy8tj їvyܠm dv 1&LCw6pYy^@F}v#RS8RBGl3Dq<1=`;W\˖(5  Qu, Bwe2[Ƒ4tYqXǼN4< `d nBl4f%Sm<|Wgqm,AfyS|5BM0;"wV,2Yd0&SUFm4^m|bqlZتXtU3Ln8 _r1QenK =3!"͂V҂+6ZkDC7'YUCZPNm&qxx=yy3x 2ՃIJN7`O<#?( {G*1L'B}RxGL"J@&˶+Y QlXG8ZKvO| NݪgDž_2سN^J~¾atwkpZ;0Y7MnЕ(n]qjWgݵ~L{ g%sڷB /%z4ofJz֋sI@Yr;uԪD:E0~3΃knO'WeSƕ?NfYYgh˰ )@eB{ac2֫~VU_,W`~.t/~UL#套Y˜ER7X=Zx=Mͩ:`:j,87U"Uu}s]0a]lW<p~5H.xq EŎ7wABj1p;8àRTŔ2 ە$EP(Z{7yTJ=]kBn`U~?]q\'S T]*;{ƚ! .$7MAuPvO@~&tH p[ V?ǬV/BN5gyz^[X\8 <%tcg0h+EP3c?8HFbS2u찬7.AGf1Wskw1Gm'/6PoשbV`nו wqbp?X;zm+TZ[$.7od&Z0Z[vjꥆlK1n+jOw5<6H/{~\WDttyyYC0m?|?{&Zcu;,uE^8==YRӒymօidk RsGkbnzfJC6SERIi`_ psf]RtUP(/6+#o;! h'Br8E7N/]-SvK{du.Id7SbӽxdډXv{c5חMyKp) ]1}yٷu}DnNq!m"TZ^b *S[hhRnVߓMNuG{@$wGMMA<åls}~ĝHdfʨCYUi_ZN*2G &$PiwWr!` ~ɴӣ4Q,͘s@yi̘\xޫR`B@u/twP~ג Mz3͵3u!3"/G;GЪS}#>1J1yrs=0mO !F@BUD.(hxcH|߀FC'qGVmF# H%eN1t-ZުBbE1 z# f&Xy,+uiYxIkʐP 6 f,*TQwA`Dn2 aČ?+)W %Dr@-_:mP-Ѭ MPU6D(VS$9j2m:&Rx@|82?*ڦuBj^YKSO̤2;3(d 95~`D#OhIE@Q0}(J力ѫX*Gs5ioy$Z3Ԛu ,:/IFBCq$*8G\u+.ESìaەh8]!`@p.dZd`5B֌-Cdž \cm|XCR,$&'Ԙ3 3?v/xoC\cZtT߶Lԓ]W_+%+|6X.u e|+SL6{{Z滈V.Áͨ$&(_'C/mԃ׾eE'}Plj{ܢ*ijE۷Q0)Ec_֫L 8^ MNu UҬʂWc-6<<3Α-)$x-yso?|WpӒBo?GN iDbKAЦR^ f~N[kىs#E  LuV`Z<jgQ!k Qׯ)q VU ֏VYGX+ߠ93N%Sr,U@TKvC==w{3w(9BZ^iC%{y39 ƨX㰒]nӅriLte)#;#v>uzZ8#MU|=mѐ67 g.S812ꅟS"ū%䁭f}M^ff4:O,t>}iSz, ۘ_E Lحkd8#/Nՠ<% ش Z=-xwHDtM{79,P-d߷;Eq׏{b XtL({K}(KM`?sWp[@4sM"_,J?q}yQZti ׾h!q0wPT++U_a}A"ҬeAy  ?P, J1%4\PJ}&\|_>LQma'LͼhcI]b}K,D|^n7E]+46G- (Ź)&iD˥=;Պr4#UG})}UA-\M!#Y̩.rDy@,>Wn~tW{'*+$,opbir !Ds2Z{t߮(~8 {;$,{n>@! ;jM0"{c:βO0ּwb5ر]P#u7ycKhy"CS3,: +ެe._-aG%$RmiuD<{D E__<"q|P ^ ̲QhQXg[W42VTs-mooyŷ>uy0[^4]+oȠ}(XeL2sؙ?|2zZ1f7A  ET JC|J03sS tX킧UR3Q=1zM= ,^ G R](kFz0u?WQ_~>9pN}|w1vhvIFLOrU5s(+ sm ժgLIf(o31sԖU[\/C&( B ۄ>mK̘d6-x=2~!0(с 6}&p1yv0Y6E u2GcVހ|оIA:srNA"ENmId"wk0Ϩ,^Zog]>i0Feԋ.>_Y_jnYXʐOL^Du"h5I9`PSXF ,k9Y2suxwbIp3,G@YWq]/JjRu+xt1*b!GA)Lo몭]{NJx up)pp\pP{ݙkN_01I*^{ͲYJ@#``'9e(u6`+RMzQ$0ɣgBl UTߘ"(7=3K99yrM4NRtbYڳgǖdg/f–y&э}; ]'AeLjp26U*u ?(jqdž(s<[Y_RNO+9OMeҚbEoGlrM>$5xӭj^hE)KJחY2Ek ܨEy~Un&瞭݄ϷT7n. P:@̞Nv)JI =u]654rhkeDkyd-4 BT?WҜ߻UaMWQqjUaݐD|QZȕĜW%q ̫&]!{^G%)f@bI2ڨ58BwY*̓d3u-;&Cz3A@#38ˠA$^ ޿0AfžGzpTr`}=S5##JJLe $BԸ<_ j^R)G}quQ>]x؉7_8 z 'rKiMTsx 9M 'C}aY 9Z> pz)=<[_R M q/5 ݚѼ mġTG= (()g\*qᩌ15l= x2seS'%Y07|^yv}f8Iv!|Suez/ܞX8)4YXӦ8ҝt|#ܳn͐h3J2<\K:))'!~j|* }%h`ka-qh`j{ܱU*r #)SB C-,Hom!VulnQC)5ͮ }w[c0`Π0&g\tmUtr ZB6H ÊY‰tRՙz' ֺ 9w0K_u1Ӹݝ M, }~ 1Z)-$N2FY5*ܞ5<#xTF;_YBBwU 5>O3*IٯddPrq$ykŸ}]f}KFPAqlWxn/^ r@pوKo KӞ4;8 hjx\ݻ1͗yV:gv*T$#aT,( ѓM@FHɉJLeFQ]u~Rl TsVA/@ң=uZ^JV=dI_K%G'TIrʏ֗). oh(;B07_i%aڛ,RC$2}"39VEJݏ~l24N؃бR`i_ǰh€:<̴dB|Ѭ/Ȇc4q4׶{ [m6%I<5;?OH߱+Ү˘ BcH.il!"m2y'/|44v;Yf$&v]* л[͵aO(_Ufs#b‡;`Z, 8HEOh9`_3huXvgO򋭄Kqm>KpyCTk'@W ρY\29䒨,&#EF7|J >kU$O(cwpՒ3gҖ 4swJ W6 =Fל+ &@Й)?Eبm POc818I&V#k{q p[Tt7&C?1IS?/,1^#TC-{v@lIz |s"ث .v)AC-]h'#?_>=uxXaC JҸ;u31Y$@Ɲ(4mTm4k6]FYnBk<]R D$rg|(*+u~ f I,8x@3 Tx2qr2dR 7Xy Bkٮκ5V\HA QEx:L}R ɗ6pI|VS4JHyum 6GwEWr֖85mC'MѾqE@r5la\씣wݞRӸLz+|g8+~%5G[+tq+$(K%^go)n|^83$ @U<egiEAb[5`~NPdۅ_Q2uFBXf7p:=a#b4`p} ٴCf=Ƅ"-M1@GONxqJ{<~^ӛM',R"oK; Yq |2L!0).#ek|* S8ʜm1H=!4ӹfx8D7%g3!)E'{ǹ%Bu=HW$7x5kL'TrC gQ6(ɟrͪ/55l78!QǧGJQ/:7b:ty twJ7-.|ӮKMAeU!(9^XpO._( H#cdK0̧XTV+J T@NKJBQXoȃKP:p,ޖ|ŸOl,jCj;FQEouUF&P@zejH]QxtQ(.ةi?܂"X֛AL1drN–*>A=׶]:9oɦ}InFCL4_N<H>? IJ_&8U ׂG a#SȈWVRb҄84}h &tna$T$8Cө{(9PWo0fꀔ6bSDS6BB Olr6n}͎::r$dJޑ+4d{D Z0 (ͮH}0kwo 4]+ji+ k홏p횵w#n^3 /I}{oQ/ItJr!AWMo]+ 4c1GH} 7qgX'[5龓JU/NB 0:1AVxG1L``Cqsr{f-15`t#4VLHA-H "],FQv\TUu\usO!/,|dcTFF>]8O(y-]٤D{ jNyt5\+@Bq-NzT)Mqsa,F# g< &3^EN@Ι %iQ ج0J@޼+Fmn\<\0h3%"A8٭C)yIDH!׆hY#Nh< Ȳت!Mn&`1YkۻZFt#3\dzNrѷ>ACj#Xj.t}ɫ8kB]/}de#6DY)pdAК}&(ٟ`|TU@'q G>ŀDW ~I(1̹#:wekJaR-$ȱmI~뒩 !n:X̣%#~݊'*}Nc7 Y}BF6oyo6$?&y6b߶י(t\0V8g2Lȍ\ Rj2T#/ܚg96K(sOgMȀ~LmB;8ȿ6^lN{9iRn1̗LOg[NU LP5-5 OvsuwVZ{ʦ6H=vp=?=)%d"0L~ #:~l|& 3Է3GOfm2 B|"=8}ppkTA=!^-;]PR0|M@f"?oHr@eRpꃙ/YiWIG3~-׌Q]l2.! ,hvN(jOA::_}ޓHO$Mp}7&?JKӥ aXe:)|B5uR鵃ouձ[e!8qg 4 nEzLuKZ tCI]cavi[SN x\'b% UKXf"g^dĆ`9 Oqo:xfu"ы̣URPIӾ_'2twISoP{/'{$|cqDpgXgI~~W|5j`$H'§x+P .R p@):n/B< C#ʰKE:Ohg lHvGH+1{JHA  $)A}dŶ|??!Tb"_>ᢻ}b(}i!{Ct(|7V7Г;-ca۽4B>{,ˆ!ব-MDk׆6^72 &',קS 4!g93B;RLltDP[|L3)X4"57tڐ"XMgp.Cae>f~ZKOO3 y:O ~WZ#!"j@#P4o frM;L-˔c V=j?54NЗvcs"b ]k;:Ly]׆iG<(oVN$x;V+/Xw))+۞40xF,TK5چ0{mB7\SoN_ߕAg|t;]rX|Ů&X}ՏAf1x͞^J}:zޒD"rR;<`!ckztn[\?7=]U)T%S]2\@"Ru;t\p@FwzhB UNuVc>}gMKҜv^Lڢ@9R{YX j:6%+ŋr $MF{JT XfF&(BT3ra`efYQicʭ}WŰ60[t?*,{x)Jh:N0Ђ|3wm"tkbZ;twG_]ݪb˗я@B6o$.a_ĤcF =8joW&~UgB4#F=]һ ٞgc` hxfU˜S N=0;8hO@ۖ#cJ?>r(=1'P)3 2tߠ'OK7X0M}?\.|1=kӏ9 6iZbغ4|VS)Жe6|*U(wk8\r2Դp+0jf!7]:| ꒲u7mV3册%{qNU aDG~S2cp)4QԾP`л~s% k2IIΑtrB^TD$?N>\U~pcR4x,(X&[3YY6-BKpؾPk|Wˠ^J%Fc= #4 &"/ٟ|Aa"<{5az46 8~]@MkQ >%L vs|FvYa@G{.6/Q0:QT(\>g#0PPMW;QX5,*S3#ȫ5`@g# - bAB"CWD0 ,>|܃Zvezy?(˪1IÔenZ&cp0,O{XPdѣ*8ь ?Ri#Uİ SA4xz)isNc}Kat{E/#{L3^˨ (CU|KB%P)!tyc|FۛMUb2nMX?Ů{5>6wg nM90M3;{̫r-t '_)} xs?(CpӝF!p9c"s+ ,GObVIIhPE.ŢL5I|"@\,7EaWcZ}>:]9&J*fHzU/70Gwŷ":5pe#҃?̊0(/]kCz2{yPkak3/m 9vY =$.{(Y( _nm㭏N vvE+yt(]l;-ɰg([s?xdeyOKz-"j|.ElM)=@z|'[IĶф)#^Wl uBsZ30;%b3:6#.jmW [E\P/ /7TO^",|/nRݥ.rH'9 rWQAߦr۾g#)@,m@Y EK)El#$Θs_tǤG7břOotC .;*aҜ<<'愸"7O_O+U@7q5()";=W W/geҖ0(8;X]j %9kT/hbq2nY ǬX_l7ԹgRhC3Q9 gMp-)1\eW RvΊ0h섞Z\l2sBxc7< QF^Bti?jvv[<1ÍzS7o(OƃɘޖM*Eo]ǯ߱N{ [vf{*k_Ii "5Y<H4Pp o{ubnaכVֿvΠ:*۳Wy()²~0!IsAX8x`6lӴw;//{kVu|kt MD ׮'ݠgmg;ku9bDwN= ]/X")xC<ࠬ*9n+Y˷.qH 1IT*iDB&& 1㝛gGz *cF %eT9 P)GTXm#Ulj7L'M~T..M5JoՂ^ H#sO֬1n `LgckR-@zOdŦ&OF$<>gѫ| wŰC{Isv* ૳$N/|0, )#ٷֹg( dߖ.el~ Mf! "+ES:pm[ˁ9Nxker,p,0g?R͊of3X]xVl+/G䚮7{GhpܚO@g{scŎ~YLRAٯA J-;G:b"V1V;+f b֩nq0 =Bgl67Q3f[ɋ6džʘ?M+dȜ9>~L^PUq؇?ȀQA=&^B^&-G:<8q#9x;AH 4U}FdQǶsb̜"σMa%\R&q~n+$+`vؽ |o Wu;u95A2Ѭȅwgs]s>=C/MWN7b.I3$5(*|kN:`}#'MrA';9qI6ąt$FGjN{,zX2-n&5==ax@\7>^qȳIH_x u`rL;Duit$t[Hth^qt'̊0mÀVhNh3Cwjbԙ ]w~ЬKr|O\ 'ئ|IYIʇ }JdVP~D {:TegV.Rޮ8fg@>mzҽ=ձ0-̀tu{~ =5 B: '%dg7 5^\nV%EC,>eACGӲǸ|^X丝~Φ|3jv~U]܁nbn"3.9QFfgj'Kt(&x9 3V:i&lr684_v0^{1p$b(EC)MFւ;ZӏEWC85hut:G0֦Lo*Os,\xI36G:XDT$/g95# GG0ubRz5l%Z+CzGy Y֬([)=j/CF7 0K8WUk+,7Kȟ|+!f_%YSeDuGQ'H@m4t2J[!U|km/)ia݁oR>r;w46Y&5 XԠ[d0W.?wrh@ND5WܴfF82W4쳚D_=åPmnWǬY@;qW<CMш?p%=&8iR+nݍt1+ MO &W< !{F7{];xڽb9SU$meNeJ/q"rUߔ Q#y3v(0hs0@ʚ#akɜ) ݄Ksrw62 @mƯU]V &iL J'QXIEK}+X#Xz(vrhPqlƅAP$I%wL2=ԯv::k4bJ_C>}Fh2F־Mcz!Tܩay8Wq\ulkC^}\^#kՐ(v`9%XV9Iǂ`Ι/Rp+͡7 4Qܟhd"uOq5t!;=zx6?ocbx +~Hw;%q?ceCkYYU{ n:Nk+IvTu,VE?y qƱF \2UaȽ|^s~Yd߁T(NŊa`0JWGd˸@oCN!r+.2ĊKp!ΚӓPTld*G@~VU?I?csuI ƂD a0 +x"ζ8py#v 㑱=ЅV55>cߕKj;(MArkykR_`a>bY^$`7xԷ%&:3.r"j΍(ao1U0psnVfڴT}Y=HVN:UQPEMÖ@ ()*"P]|#KvKv._; 鹧rZ=_ɗiu]ůEk;cRqQ_Zo&(-x7M [y*6MJ](CL%zf?]^>㮉tTeU^I :ˇZx).a9mrjd ݱ#BYu]xp1K=*< [- Ni2ܫv!l!jBϷ,Vgu@F[zʊvUw$Y .=:":KUwO:-zX˯D&<'@k nMQ%0Ӣ-힜[2v(+% J˘Y|~䋈?rMF+%*g QB&R!HOH|sBT%^e&:8Ku˩J HΤ{)Kw&ˈh%+0~4sj\6ǩTws"zbwIk^&d&Qܪ%xha5]&:S|>f 7ќ#=BU'zܽ2M$Ry}fq3؃gZJ ‡Rj[PYޫ?ee5]ƱSmИ{S%ӛE&s^fID\hמOY|$;z{^!x߳{Y?2S|M=[6$AŰ*4NI\fW,фՖZYp"<af^+aaRZFOzr-Ǹ}47.x^[kCK gJvF{\2 ?/@,Qe^,j. vM>GDM7Hph/f#YR$kݴ7s\r+#peP|(pW!MxRЂ &A%$J= Ƴ`*)4}LrkyRAC(WxLi ʐ]vZ&!* T6 QGvW0>\2ᄥ.='? aZn(˴Jɱhg45VPr+*Nw^J 89Q;- 7k%n )seI%/PbIrCt~B܏zYxfޖCa)ov⳶BK"KZH9tjWq6dҵ0':o$%RF /rlʋ݈.l9bs<X-QN)A`l'LXDhO ƶ} 5.gIb6M|I-0DO!ʿ,pm pR#tu&?+Ɲ(cj$Àm aQ+TjG U\];k#Q]Bo+G7Z + [:D2JJʼ?]Ku/R 1kǫ +h2J]naHXTcx#Pc@k. INEN㸫p ŪY5GJِFn/zEd"o;Gx>N~/T&sf;pkdR|鬻 .ݣ*nB2%&YN>FC^Cc [C"őFQޒo>\3Sˣ`(l mY'~ΐa܇*oKyZc |5SJ]:ZfLB3cИ?8 % Qw}[ZI|.A ɀ¿fȦ'l9 K3D{2j*T+Pƨ}qHBUTO1a8oCKEޜ*IR0P]wʁoa2Pwnq}AYe@/ 3lg,=,t W ٨;O|c lDo`UV0)ޥڶ AWr L}"Lv$o˞!B0.d -y?:L>oR? JeR4=%ꪇt7PL鄦`%$['V_\Rj ~r $eaQj-Bh5h[vAl=sX8ִ*%JR$tKvZJYƞv Ϡ+ߗ҆cc^ZU5Æ-ÓI7}ヲ"&B#(3 \N\ `hˑJ|912LmW~ƹ?8&H3D)Sq*pmYer4Q<ȥqHr<3z=zpF2~RHjWeLá|c+x`֡nUsAIʰ̴%Ha\ ?hDwR9َ-·Y]N!j3cZdY|UzstVfNRQm0C|T^bk[Z^ZuSI}h,c6GK26kK)|%Oc%vf^c:q L#KH&Hy8XbU Շ^"=?]GڇK{O騘QvroX;MTb#1H+m uiI/{9=G nSj94;Ptj$]e>rv|J0! ]FA9\iE3ZZ}vobYHz jTـLH<^hTL𚭔C{xHma,dg[i*f |̰C8CBSOiN2pVDa <$ր1Twר )VWҧ _pZ|`Ϩ:T!?L/~y0;? Dꍹ_)=3=s=ţk$cQ|W7KxDx5^"R\U2Ki004QAX# $'.0"xd C{4J&lՅK=`*yw#}Ĝġ O? M_DA9t?Dr42!Z5]&N/O7,SW*<(|#s-0]Mc؄u ХK0П6_G soF CI;Qt4uRElzZQhNdzr@DܪnexӚ Uuq `tm]@P?W D^ӯHAϐ7>(FDjΟ\EF-?_so4Myr?_=IP!a2LծH!' >`S[zRMt[~&w$D@Yjq( ABKx} BWȞ Ƅ&.ywסI9ل,dd+͹l]0A!󲽂͢鎄 8+QIo癨rߓ[4z}{JĘ~;"Ǥp?@YyU $AuPSCl PvC;q&xzU./G2D߈ o&ҬC  R# gէ4"-86 %eыfNF.i$k܌~xP'R+jꩋ[F[J>d%<*Lv2,6m~Zy{x^nꖏxΫ5õx&J,L P*k;d dzY1kStb'V>ZVEґv!nBK175 Cv 7&X)p`°TɫW-QE2؝(wR(\I;R\–V8C`&wdMO0r.גYk"I%H]POuŻu/=_x\ttgWh.6nVkseu!ua)\D ; (>!R)6sRa2ϹO# 2Pau7 ee@59&$H|_4ﰶBkKe`rEِNMs!M>`h 5M^dKP+6-v3U6`@2sPMMSo_8 :Z&&+X#|+ fcvP d_%Q!5K9FK;Z+neJ?F yqt-7oY8z,⼲S$??քCҳOKpʃgQzhR"uf7{(lO'Ry_f^-Z%-$g9h~T[Jad+c\т9 c8FMMS!-W UM،3ЃɎr<#pu*\o)%2 90 OW)] ' vDk8H*!cQjOaU+,_½{Q̩ yIBѐS\KwBu@5pZ d >^Cnܡ9[0ʦ9>BPp\U}VZ"^;)J9wtY<ɏ('Ls&Wi\SBc5Y@O /ppӋh ku8Q+D-#2Z]C qL3W.5L:EZvS2:6YlyM|`oDMI\aH{Ug,ڃL(fV NFDFVg/`Tx7E>SW(j~{==½bcdaZ2}piMwM4?bDZeL+櫝['eim}70ߨ-Dw2f2h'¤SgbRʶh%j`<3I-ith4kcl M>KvIS4ĈOd\aXr4GxPJUd€@v6UgRai3%I`,&2pvԔG=^*#+K&-u/Όrļ?7AQg4JciH"/* z"'dow28ziT9@ՙ5GQllC1/O5g["RޤNh!!G_\㨄?}ArRG}C{xo\\բ^yv& ùy;aE5 _`(58!vLÑՠ7w#gCf}!;Mg5=E#lrbf{A?|G s G@NÌ f =/q )g~y-(bj'43WK_Ӷ< ]Z./U;<A+kTIL =5N)/%?++FG]t,߸B(3)r68 4u!LKzDgRGu^޽3MCN-%7RK^A 0Xf'1 ߕe zv֘xMdڠ.- q%={5>s.q]F{QLq,32 FA {d~&EvGH 7hwaE1j |@)qta.1HS J:YEiV,~W⩋P.BM%o [ܿN[dwh" [YojS˱iy:`$ש+V=Jykea4_DNe MƼATkF_. &뚌.QҨq!{8ty9lAoE%(b:AӥG0*+bwc[:.r#k' j6XLЮc x]ZI)ٔvD6bP8R1ʜ/-\wB6QhD;2TTF!4,cU͹]#KeAgIye0"^T-}ǽom*/Gٖ^BƄ^]:>6{u`2L_-tjEj^'ާ܋ 6h`YԞ1͟}G4y~*6|/or6zvWL'(báeNjZA a2^FAA8pS&రe^dr47ο{rT(W{J~- ޹ckqrpW]yDF<[VwC!Tw O5w'Plb2?I؂3BNv)67c)ŧ+;>;ƫ1DrԊ9lc8ryx__/{8STa=~#v.\9qxXwpQGh5JHXe[(17q^ vA,FYuHľ/S9+ÿ4 ʑqr,+U[@ K,+( gf1iko,#I@g0(̐N8 ̾+YY,q/0[$ֈD/_yFL?Z#WwmFm2 p_d'{@`x])8*)yQIj)LHJ b Oa>Un`g^5c=J:0Y0fUAVa1I#'<ő%/PpFs()Ti`{S[`&6y%d|yteT&KBa#Eh<]?/o=ԕnR6AC{m 9O'mQA "Ɨy·úԖY˯%.@R|^ % ˢpC~ů\Z3w@w+a %J E$+jB -_N-(Yƺ{INxGǘWٷ\d&64I1Blyi~K:YFs3rolB8,dњ?imo_;J.29Y=8]% WyuK^MXrJ-]$hT,*;:ƃP/l=`X"џ *p5ĤHW8 .P !w UY?0SMZ1\`Qdb|" 4o:Ht(*r>; eiJm lyKL%;A鍰5{Gs*F8B'OOIs?gQlٯ{};|m*ߊ-*[ y<Qo#uB+TP#x< B*bQCDG|+y םo!Z#*ݞ͊+Öß /WC8svhՆJ?R , %X.0wџLF5̓BD͟=(vz<.8oݟ<>Zr;)ͩ0;%(/6* /lT" "Ǻ)v o::>S7j!B\$C͞ _3͓|bw_l#vĄ/#( $Nԉ©3j/]Ԇ8lÁ=tjxM6+*<~MVڈB" ȡdE1PqhT$>v?*EgX׷#E~NT v5P;r󰿝 ;kť2FԸLvo2|7}d/؊DT{NBw8K[d WD `u_dА-^{|ը>vyPz럐@ |wUu61dB3G'"$RD${TԊ_|}4ؿzD~I$`rk4oJ! u@ - {-YBɭ~xk` :*\8 dBdEqB].q`n$@ S}!1:MviB[ B_tx~r݋\esf j_\er/!+ioWflkMP/V4q&D{d\ 2xu`OM5kC|$,M}8j5S'';͉ 7o#8E!6<X)pFlѥ[S@`ML%4?pY x%Sda:l4<8޽f~ܔ}ctd+7 (:VlAbG~SIrb } }/`y)OΌqlwzZ@vڝb?㥴N'zwZG:ܖEG y^p2+R}$pq`w/ņ{"IJ|Y;Q另qg@|'٠\q#7 oHEt/yaii'D ֽzva\XUW{BO:0`βXaJzmu3S XHD˗JҙuИOgqȐxAsM_hMsʐ4t=il}J%)5\`_Uv)IuC9v8B:;v왉/ړIrQ%*:YHƢƕ<\cUVEr7泧7Rv=>PO(Zb$V%k!%.  Mw&^j[(O+ C^>>HԟYmUfe7A8 Eא/ai>Qj礐R? N)m[RBJaGZ.>ɒF,΍¨3ީ9LZýd5>Gs){awIzX$uB95!R2ׁDTL"XR` -n$ u‘TcqxLۙq[e:G6}:q]O 0R[GGtδ!?"fr!i7C\3L9Qp+|K!y+O^b3cȡ8UUA_cJ& 0y2]&0=LU1SD y,ej%1V}ZYhV^Be./); MEQ<-2f3DRq_$_q0(>ӇZdf]mBlӡ~Ku"Zݪ^/Dv5ǻc, 8@d!,Z 5CqNsDSEl{5"\ijH 7.r2Eű,Ӆ fcf{F/Ys:&@ G")&K~L=%)7Dzi̱ah1+q)D!dU-줏- vgy"Uz-21*eMߣ7TYH$Z?̴bb$}z9ʏ<U}(v=f\iД  Ia?$ޮ RCGSۧȸ(kL/ y*qO.L)淦s n%Qf4b o:JwGK'sqL}$*il q$ NA &mH,˦EK,|e$:ޫmȒK uVJ務Q:#kwtO㻯!:GaxK#KkʡUh|'a616Rz<-e0| װ5fA4 8SQҗ_+ۨlgJ܀ oK7}:*a65?\^@!a |_HKa,]ルhzaQ6w'vo+0䱨y"q-PܔkbU= 7݁Y ~ڎG9j"nQzqQUVR4U[ŝP^L4 tl1bK` KeA]g{x`ճu׋^ٍWZ ?׏{҂ ó㊺<"4calu#"0 D/$X^k SŃd X[+f\NVmRB/h`"j¯;d$_83ե=dܰZJ`II 05vW?x>MFkmMzz]I[yKB%d~Q}-N =M}S@DaPLEQ3E"t,_\/Vf HZgtc0ޚ}p1_z}U/-WvRԷ`lRwqזan*ٕD0Yޕ嘀 <'%lp\M4uLQa ח^hiV)*b:©*Y.P:tY%ז)8ȯWٜ+(n[g"!ꔌ%B[όjdJ]g`DRl"z!* ꆅ1o"rC߱C2&"tVxM욼-]Ljϊw'q ˌ2")nHOem6.Ԋ/0Om&/Yq3g\W5VWQ<<%%o傾'7؞ޝ!/NT&fLm.ՅA?՗]-0?_)i  l '(k'muaCTM zk`ПeA.$숃՘ntS >87 .oK /d39ÓZz?u>V/~,*np\Y t]ր.o11϶r{iZY"% &?ѣͺ}&8nE{j/gIJj$e\iar ad\{yK9#vb^^fX%7UVo&D#go4ҩT -;@xu&+|-cs>NSO"D9C(系qbɦW%x*G볎~Y.[/BA cϧk睂;GTgҙ%5M ,M4S{Ҹ8)9,NK B#+^AIZ+uvkfzޯI R<[;Z5Z5s7Ԋ=YS3$} ,Z՘X8M`49.MOdCV}*loENX&l{Qu8uX:KoO#+CA2:)a_S'V?Adxk\.U} Ϟ)! ~^AAng1/™ *MjGb}R5#hCP%th愘WD*sjLVo힁HlkJ24`.*=nlB6($"bvNo0h1eTa d-j`7fK؟i=Z#B>L₧ ٵey}"W$!Y9Ag~K\871{IõS8Hx :x+/Cb >RG\qqi^mpw/WMDDFԱGwi|=N&XCH- sGzа 8Wfݑҏ9ޯ}3mS)$r̵麶*NA6is\Ф:&De?)/]0H]@n{j ]WM݌1vB69:R*,p&A8!*>=.gq0@?eAw\2Kw3$ĬMSU2 1 6`!(E>e=2zbuwbcT]兩K'U$+%.Eb 6Fd+Yz<=scy @~*bd[Q P7VN;t# (Sx JT΋ eh2tLy`^Jlk|H\<(y*#_`:!(!E 63#z*tyybV\6N09y T՜ѱ\ 뛶M@\]tVI<>]]ْI.lm[Ihcǟ,`BP1=B{DPf7iȇOD^e:^IQd8XaU_7 c~7vz--<&WfMR7Φ=p>@+|E._[}n-N"%'l]W'!ށy+}z:ppy5D[安!wxi(6:~IR !=^=K_we[͓cg= lAlKcw4چ~((]q3x>w5̖z?Ǹa,;ryn|8ȓ X=2HdP?r|t;DΝ"&ق}gEKEvQp1V;{Cw~AM!+CU9յSZ?BpxTw+_$q8j.sm^7 Ef>C=at+u<lAAfA.?c0&3`RnluZ&3nh7X0%?FWM ~\t& Dq4uZ)" ^9YA!Es2nryZ\6<\h/8JR(;]8l=u.\*|m+8NӨ-]֛S^E`%/<}X X!SR]6!ҡVE8{[kގnU T*lrc2Fv't=̯,Ttb;zKq 74E4LˬT:Wх- k8BO1 \zZ'm@(*Le0~b7Y4tG/1 M%ПEx0.ġF;̧ ;H 'RgsB#NN$҉jja=|es6G/S E!ػ>%$Rkn'Zk:4HuriYB?LMm*yÚn( vESGEu GpNSUEއ9aUZUexI߇Jw rpi'OUDW;ЮXZB3<iK3/sط&1L][Pr0go+k1I/[;=״l{o:o K.SO6hZ.԰ 5\ ^}5d7f)1?7 bk5/ڀݺ3Tܫ(RF+'W"=tгPW.: JMht^{3_GH ,Zr1We:;e+hP8Lp uJA1RI*MMu|[`ND}aOG4c?C.*=}^Oumګ} MݍRmt}Ck (S8qݡ(9m^͢q>R"3]zB*Ww6N n[d,o4F'ϔh෣!cjd <:|1, Ѥޘ07R^mY|}q:rqxJd2D%嵞jͨhS^ -$M_ze/I&Bf)@V;.)!3 ,,_t>ʢ} +wll ,u7M< yOA(Q 4UĮ˄A"36Е; F͝a r7V2G+ 7LC3i_OK ٬[) vX_ƹ #EPK&`atIqpHiU_+N4~q4Qe*R }xeߗsDJ?B˗yaeqp6k*i@@w fih<  5KGR6y)AA'v*C۲-nwC'6:Eu.6qPLeCݯ`ҖXC6$e["\IB!SרI=y2JFZfeQYR{oH#JbڨZcی_}.Jm|Gr9O -Y%YcL  ČݒJV=Mk,w6(G:H(>YIQflL:R '=:YfQld !dA$RE8 MU))NC|5m 'oEE+!]y-["lKֳ70uN1w{v,Âl4B@+ReK9]++T (x<Rzɒ!,(cSkq#L5)[ +NOOe ^j̅!$,} HkoW XZHb ؛ .`i#Tb8껍 W!Emj8'@4lxϹP`LäkO726OYk`*>>1p`%:zbd-eទ]kk=J].{Kn E,p{8.31d/OH8z]<\G|rCU].=L3Qx Qނea]1}࿫V_E%/T]ê- (?f(W3bax !5j?᯺ѧR*Tnl&a؍oC4Q3|σ W-hs ;K6ܱc8vUjWv/.)Q{?rj*yķ5C2*wX}L+/0}v=oo^.+BHlfВ_vek: I.‡8Y}z}DT϶!v}C\ܪf4Ǖ_ Aau4=>RϞGrfY;)&Yjq LJewM:@Qbm%gYSwzz2a_Cq.orĝģ`o|, X0j_OԶmn嵯,rdS<+#TC7ek'XFK>|0!9?,}Y,V.'-֡1EdK"K9W곜x!ʱRYNE3J)2L8)2gF|O;i>QO7M!ClK^;{XnNa`>8ZOF}_g(8b 7%~+!ZNݾ _^HXLꂄs7Qf >7_U :AAcW@l݆VbN 3Yi40R$᥷CD撟U?7еOT`PGW"{ь% 4R(R>]^9ۆO-~3meZ`=zG*슖xM]1駠̗UMs“R a^Xui י@^u`DN,PTcM!/ L]8Vn$Rv.;dH={\'iQ, Tc&R&]w:ۄ͸m}©9ះ6ʆ/*nZjeY:qg?.#0kL#x߼wI9 qe06Q𲎬IꞱ]$\$!ßC89>Nbqi"Ť)˫Nz;Idp݊6d CvR67>iJ!oV`~D")`*:eY_>'8S\ 2&>."WxMW^#9W$8YZט1LМۆ9t@w Yӊ['E\8XkR Qe) TYf\.u̠9HGTMG /\8 #7s|a`ӄeGuD?Y#a:Gm}t;?fQ4kc9vE{$8GY7|Y(:R~꡴ΚewolIZ`#UR3ߍrkVoPQ 4@>dlܣ/͒(mƭ3wGQ'qqy \Mv6zjĄ-5ŽC^Kɮ@i)|*!f`/f s#g U36̼qrn93 l~LO8}:`{-]i.1 qXkETդ3;t(2 :#9ZE8gƿ,=ֳywty4aWXJ#uNؼG9>/OCB_t*{9mQ~D_8>rr /ű;-[zfVZů&lAa^ȦҢXW704bC$cS<:H椗#rQa:=u8Bx xhRʎP=քTYwty(+V?{@.o(|yB=*?\â10V?*]%є0d2kbIȦm=^(!vp˓,$+»xPGs˩;2Iԃ?Yҙw ߫b90+`йDBvA.PW) Zum\Vf5 M#ۼZmoq͟4Tjl0<[rؑ !p!pc7S<8;}]}Ww{Gn<{aY &FJpgE=GѰ b<ހ(31gN/njŹ&y}CBGSdVրy!\=7!bָF"8? 2JYF&!6nYy$ťKަ^\t^a@|DAbVDn7b)1 rdf9,ZHҙNQ^j @#LRq١zvpB o #*pLZ+kT/Gۋ$c!;:hٶ*^2:H63q 9~SzVNG:.w/n!_\|Aw@LP0'U9V\-' 1 005↑wO o"RʣЬqM !7^k5Of%'X^qM!Ӏ~][RRɨV^4`qN1٢;* >hGѿ``@ U^yHALBJ]ox<}@/1=Ήuuag/9P6Ad$0ywDA5S3BJ2o ;*ӑ2gٟ]y.="@<{[1-QU;U$i~Щ#e^ 6w ̚7VVY!ZEUG ݨQ!8y$;Rg܎lgzSEbWyaG!C!/;1Bࢾy ޤ5hx}H`Q}  C&^TI-5$RXCRVeGQ45="|k(Q`c^Fk8tI mgڛSIq{@c*WW,9|ۏ0dZTFD { N\h_TXeòI1a UeE1%Q64`t2rR;W)A +(fאUN3[ž5I\Jw F! UFYNTO+,&`װj㡸kЫeFGrʨYasUqNJ'zۮ+4-t۸)&L\5еN-#y2$B)v%#S Q좪h[~s? oWN bj.SEȮ qmYaC ( ;lo|U/zO #E(^Z^8H{K\:#j/v, i |1[U`. )4$p*OK}." Xi;I0nWlWm?xQK$ 2#23ܐPZ /{ dO# kgy ,ь3(VQOHڮM.| _SN܌$kd&Z9V!##jN@}*-A+u<3dz8?,fD5˰T2!x{?-+V7wI}S9Oz=fHv37Zw掮=ID=V_襄-S_wA#\4cBߥ1,%vfvoYg" %7b@^&N$M.}'DkwTNdjWJbJ 6߃V%I=zJs$U%2]B?YA(!}oTyޅ#NH9kJG7>mxHRԟg3]Һ^vuUe2 8In5ӠW>oKx9fj@Yxw'_NcկIzȶ¥'R_TLӝp~!?6*iN,3s+rj\ZZ=;i#pҋ)QBcAȤ"aSǭ2<ڮP1=tŚxR_␹wہ9jL3g&Uq6&E᪇ؗ\fG\dVyظj<תY3[ [ ѰohgtڳފHuw`4' ꥔\>^F.؆ =<g3 *{Vo,ҿ :*K~nDS\U6TԟDzxj T:mG܅4O&&Gv_j.{<%u߫ /]sl'Ml++Fg qTj=YB#yaؼLФV<,HB춼. mh׻mpvV3 #N~'59gd[P~;Y"FўY:\\F\! }\T0+8Hb-یs:\W wHLiȖT5ĮVO#r5ֻOdO O;G 4}H7Ԛ''\F{hp7oƫcѬpN劀Nҗo!; ija6o<"z*^B /Jnak̮/M9E" +hR㰻sZnI?#BrS8lF/bb8k/dt.ĻACfrg-%'U %<՝8?, Vn=H6nRGЩ3hOdM'^Tn u9r :Yh7S,F$3פciD }VCkTx:wQZexz &B;֘,*v4݁I\ YO,ʄM!ďa=}hG,f+vbs `TףmKq 2{\m(%S$U K܀7ӾF{>ҽۢ$:Gb^u3ZR?ȒB'\0g%{$c>2 JښuoS/T{ŎMuZ.I:j+b :t8[T 1s _d",zI;0زg]p-uw]×ڄ˂\\ !2)kԵe,Ȕ@bd`j喣2i\Zh_H:QF~zz{9']@a| abXx?qĞ>Hicm81 {(0۱$L(j0N?V?0C6*c+1Xh|Υ_FC`y uVWch}齅: 1?~CzG*RʲRH5tG"7^"З1,ԥ>'XdZeqmb!V-T)&I ,:ˬ)o v:CG2?IHȽZJeD&` yچ;6&5UvkJLOBto6 ÊMhI=':9i0qZ:wWMJa"S u2$h=zV#Y`iԆ|H&WM',`}ӗ) v!I2˘>*SPIuH`p(o?I:Q^1*8Z,]!}JEI6~g(šF iegFIR?Tvh|o-UW5V nϷ*&At0 7wxrQt6N Ɨ,[JXn<]$ڠlFmBՊ|%:* JBV*ՙBy??Ug^ݕwOa bUKiK3kt~X[ :UR2 qÊkWVxV$nr^Q(0 ĉF,;>,kȁ'g^G™)gc*d+*5߰ R`s=`Hd8iqkYȑQPgԱ8۞a3wGI'V><ԣ1VRe$\[t,?x |4KE ;}WAwf)=.d{K*9uu˕e KU6Z RkNR?e6~F1-].ɭ\}{st#7 O%BwPmG݂9Zɏ$lY6)VXƴ@Lv&Lx\`uDyV>NP^nW[9L ~ƹ' c,oB w FZ;#Zp17f/jK<8WFf' %R"ɔ!qrYzxqY#;͠Z|n:>NK4;ѻj_xBÌn69DсFʯs/ t $TQ.*˕5Pk >"vk]$;<{ .GTmL*J6M7oLN+p[Y6,F u#o'I1MI1B[, =6,IQۀǤQ%($]jCO@̚9d6=#&>y^Ϫ$؆)#D6 ˚gTeR;|hkѫH͂k=rnZCRQ1x(-}r4<;BA*e`hP~w^dV~5i`u & '(~c RԊ"eW%sXe=EWnDJ5Iw4ϻhkS#=%Ix;:e]ĕj:;†Sڢ hI2ήՌŝ.\1<<Wk=_<g1؉{ 1,:\U{)fr–|T]ęRirrp%spa쨕8Ps+u`8pQ?T@ndջvpzbUۋe(ҮTYB$~Ͳ}8wne!pfèEka|s?UXtD;(`6UxviO(aCJ)ܜBRGdpA2uV__aB%n Kth5#^E I;)ե?V,.B 5(q=-;n<++ن+}JA3&Gs8-Wbߒ(E4aTEf0ElbJ-\\ro׏ݚ0dF6.0mjJ#5`ǍG{JU˯e-dzl w5D#&NDL1N").ue R?=z8YN`F8VQ٥M/P~5q'ZNPnΤC6LVaI8QE["zH½Hi[񵪨 Oit8`~„+YY^͘PsR$3m%щ6ݮҒ% vS.^j=3|Q:08g\i6Pꑛ xA͊@J ,%)W}قnsg'XpL<cK)i+?Q7Rzxe3(x̫fLVP9~-oM"utԍ%3ʻ a-oEQJ>e ҫUVL5,%IM wWd1%w5ﯵaKc-dq=oɜ=J8m. /\YK;2\BDOG^s[}8 y|ffa&EE"0&ExXjY!=$gEd8~"=LIҏx?߄2 ऺ/zgp.Ke]g?_?=a(|]6!q`~Ĉ'+.>=~t ilj357tC|hD""bB .|^I[fy;'? {*bDC^c [I^b[HZpnumacKῧ@=ő>֯aYŻRw!~%C}h6p(,f@Fio5Fq'1m5@$6a]oe:F}~Ϭ;O>@sn/iLb\suA;⸼'4{rQ7T4tÈ.lc !%`NyR9 $#Tq->fa/ @<RY9(ˑlX3qStND`;E$LZ KJ> nr kwƟ;OTod#'Q >Vo5}H ^@,,.^/G륌&8fhmE37oIэ#FW%mrićӊ Ww҆%wʐMPv%jp(ȧȣm"9Ue#n$ن.({Leg52G wJڅAsr꺜` D.4D^҅$9`㽸b*~3MyAM#t:hBBYuIt2+ fx13aVP#FfEHo$7Zc'ݴj4)2 $!4Փ1̔Q]|H} rLZސ2>:q[k m,48CZ*\#nkFM1dbN4V˵xKVZ%CBsgahѝl .ZXOWK61@4<m".6[)]} :d748qÆ4s r5ˠr< Zq9/$mEЏ[ 2e<𞝩iȈli^1}8XbSR &kRq" 1 rw!X41͢2:a)1z2sȞIl[-zig7uy]X_E0q`OA?}TF8HI 'ք8.Y-?8wN%% m! Z~_WQu9fN{i"G!|Cj5TH KAw`luQΤ*<S3oCU[ w^Yd=%w9Vh|D'aO_1#b&޴u kH!8 \Mmy=amut]>_J{̘@f!a'~qr19eE{+.c*.) zi\E$y9⯟;4KX.V鑱۹&HO{=7?~o?~HL\XPqrCh8{H Or;B V,W7Jh ]DfU;( KT[>yD3~fTqi.'a6xA r jbP]\&zl;ԤPnNHQлzX쫤:I8&n0%j5_ס. U}dо"os L⚜C)TY霹6tPaT?@fT  nv*BF,r?m4G3!3[╽3dR4$EHZ0^[C郴B ` Mw^Y{:Rf;F0y?Gc ;@y/#wyq5KtyEy2VRfI{uX 48C[]NO\\co =ϣ$tIS ř>m00 iƓVLdBSFwh~j!A Fj/.NO2:VHN&  *E}0_g!%2quE~ӨfXnTo*gOIevLZ)bgp^X(P?P~gzRt:z'tMWV/MX7rb"ݔ23HuӮF2"BE_c@ANZKas- 1O^39ɸJ1tnF86=2-(z-%ef))8!QOcnKz  -{茗r_8"͆3 qH 7l ED Q!S7s%7Ac>X|PT1pfn2،X&0/flNG8 )QټιUGXV1Z%WBk #00p6Ja8N& +SFP):N&P,`7el8e6-nF/iWuyjpQDzk??.eHd]fj5 E|A~URO+/%&ClU[D#&,7獤ƽ ȠiNHO#WXȺzZ~COav."aɶO+(VB~5?XI쫣3n{ r{e%{*T/>y ѭSɘ`&żq$@Hni]wc^<уQInnjƥ_H+I"ɡMYǫU21zh# \nn#AnO!iךX7oosaTO\Np#K} +9qt;QdŭROtFi &|_uϐ8u|/خaw]hq dk7sko"YlBympzҪQ1R^٩P+ Ȓ|J22rL^mV*Qϐu!a wTݮ4T`:j9cZ7_/|7sU[jGOmd [{c#;_ۜ/{nwlrN#2'sE ju[KK 1; ;ZV8iFx llF5#䇊ۖ-B{GS KB#2  ghXENϗp"aCipk(vB~A{T\ep>|-δJ+?=8nps,j~69 #G;RKDn 0G%SӳwڋgsB2wܐ֦(%O+D^ k4QuYтe}Ď'8N|_%^g釮wX=+NX#Ae zY$~S렯jPncۤ46rXnڂL44xB++j4`1N Kk P)&Dqg4]W eIZ 8K`(&cL?% |7MaYh|ؿLplrrcD{Pӥ}_-8M"|#2P2\j|6p{#cQ} pZY% u&#{l"tc$eEX3[~z0!eI9VY%1l/ڰؙFrpLSDȂs˜ vӺk|}<?xdQQ>D9Sm+%Q( _ εΡYҷ]:WN|~#t*I7,RoT**TX>J`ky*B%2OW )禲j`4 ,K%F܉zۉ({• Jډ2j%n.ʨ_7}աtrrgB.nEM(,n6Wg܄x!ʦ$"P{uCЗE/WúݷzlԼ#ֳ8[f &ׅ]Lzr|JY*>&Qr[Ep!WOZ Hw7A@0(ATȝ3OCJ轘93?T{ϴf l7 O{(֏IM5èGuLە߆T12q_-/ cS6Z+@/%.GbTNE+݈^ m+ ' "$=P8: hrmOǡUdFy j$X]DlēA6;A)shUxC͒>fHsQ>EMj-ˏbS6.q:=wǟ;d+y9֟3y*X{[ ]1IЦfi쩇Xj}Xɵb2.PZ :1u ],;B.2PZHFNKQUzP8[j}[#P$d$&WXo;7ix ͗Y}ϒCfkm:h5տ_J6{Y٨G,1%5\w _9Z v%E\kQgi0% [>UE8l}9Epdnɳ.Fh\v|GWvS$-#;@׆cٲOϹ!gs!+: uu~in\÷A 43by:^QjsmF輥Gq%DR;#Өj 5_!'qsԀ+܎O73zS_4cW{枛5|NQ oŗm1f[{Gވ~l/dxe0),Nu1T5,S*E.]Wi;X81e",b00^Ǫ/4rV> o:Ѻ='|؏Xr;`fdRl_fm>zp8cF@w=k73fkSVgG<Zt %u G(&mԓrPc36Gf*g5եBMz1gc%4ZYf&5 txwpAE9Q#>9 떐W8gc[Qh18 ;@׎:QPg$~ٚi? UQ\&jjˣn !L`r,^}o*GN{Ʃ4r)HXKDWu|ݚ#:lY4$3GY?BU:ai2F][VL0v+HW1L@O  W=͗fݐҲЂE.vl{K碗sk2vZZ` K:w\Į/tdӾN`tܦаO ˖m(߆R*B{Ϧ^#1%E Цa!w3.Do#rtǞ"Ր։MO?[:4{\s~.K` )R{,؅D79GXs^=!h4 <{ci #A9c|{E{ b{`4M7Ao_yceN VO-ck/w*3gR廓IuZx!>AQu!fPn:}ibqޕM.M;8>f[N%ګf@r`_{]`{6lFl]R# &>…4GxmU("x Lyg\}?Ȉ 2H/Tb[H*`P==M=ujZl4̊@nm(7Vo(fHX0O K LY(,lԫsY:-)p[cMـN4vKğroqԱ-HaƖOv_iƧ7{ZZԔ-΃IYm nSk~,Z-~-4x*ǡ@0__$эGY<;ȼɞl*wufp:<!Qߠ%]\t2}LTu_~.#_3~z@)4"g5N44 4^U*)-}Y;oyzi$5f1@Tt[q}X *IEy6SJ%Gٯeb-̔@ƽZPh*0`aGʯ*JEk\s΀+`stMB8{/eY8n6&*j15e p!mlf{Orf]{x [v͒~پ"mLH3s{;?&=p"^x:o uTt_߈f䔙'$#*^}B}( n?H_!B;@W>~h|:ʋ9`oNM_\nYF aKRܑz6b~Ua>1(8+ $QTc.G}CN!IIHd5lBf(Bi{N3eg,%=9]5LL)4[Ԉ r,dͬ*п1=B;`MM|"KS48ԵU{OTOKSODR:@jFAg'8S8MASmCs))nJCo̖]3Q+smQ{g7;钓=BRh,W!46ȫֆeYf% ڿ!~16w4$~H9A%x\nౚWLܴ6eYaDf4UОPp'&X/m.!\(ֱ-º=`-s; $tmgwӾ6d~0[M'n n6SmW ez\li5%LB9`R %\*Lld:+ShSudWPt,2,\8; 3{p[9d^ }A߮@H4Co*̱5|z lIsLe2.wIYd?b/jLHAW"kV$諶eJM֕[U/=q,P0 # y7qa1I ES)͹ѝ)z`;z_oyKӤ[*O 9)jji6q8a~[oVj{bJ؛ho$Q6Ir E^rҌX>tO2 hmoĖ:Q 05BctMd7a&aiy`K͕FɛqAEy؂ 'dq3,k7^W #~+84#:KO e7Vw~H\qG$UcBbw!F_4Pn J}jCҋ?,q{g#o7N::))pyL'du1sy̎yEAXW[,ikoirHmF$H{%'mtFQMn._dƣs8Yye <ΡPJL,ZI|;I,"fDݶT9`/.k17}x^R@&Exܖ|q`Ay_cǚتm]'%"m@ Uy",N:`T3Q+b PQB/p 0L_}N&Éцkh{\G_k ó )Hn[lohHV*3ަ_׿\g+OTi|լ TD21>&-Dխ?ڪ % ' dޑ@N$䐔"l~n4fqm?$z+b`w㥹p R:e@'p b}줍]2{VKZ*>p";S~c!WLCIS3MoJqԋ qLs`ôE_ rO`le`+F1\rg(TRZ3RT6 A"dZBʉ[ۯ.NnM>(ԈsZ yqA 0* DLg]0]i/<ײ[ie홺@5IdXuԩqNi6 lo 02ɜTɚ%4z?QA (h(_Ӗf$PS&gz/%jB9+,bS+v֊zWL.e8 ;!(wbpG`>юbU+F1\hGo~u%;gOL< {{Q]\E9Ǜ ??<;/^Dk4ǽBꁗL I 6>~؞KЕCmBj=P+$FPܪ{5sHtuDTdS`Y 4焙H([ĉӉ,H`^9ToOӟ!Y? 6Xueᯐ ib Ze PUy-D"k:5Ts%ڃOo[n/YHdBe_e]%y_?XSZnT7jmKMh$N+@n^1ɢpG5D[C l)8Λ8DM?]GcxF=iW&Uҕ\ќaS|覃̦f]7t̥&'=-pHo` TnA@54AU4ߨfy%| KX̟,z̥LbmJ=:7soA@04]rΒ0KjاXffry9vBмM4wLbBck[3ׯw`CҼlŞt >M7 0' `70g]ڥA &/%iL9N!=;ӅX2Q&h `}a-ɰ/tgվ({aTy* AR؟ GDdų&A↉@@5]BJ{MUf𢢊]T Z&o&{"=˩mWHZFçRwrs8tYrO~r vVjkj;9ʿyrCUL2Ȳ~aU6P0KG<LXW.m`T˽Bj53eqpLb\X9λ#6UbA;I"֤@*Tp'"]5&% ukЀov1vt^3_dC{ Ւ\4|·>cEbU-4:mB}""D%ulǭ1W=N`i.Gh{<]o!T1v~G.o8H$Ig ;gALdL= KuFo_ WuVA64,frq'%D0gOd2~XZaޥu|p.qvf%^it\_0KJ+<0DɡcId6kFQ5j>'ӧw/k jS#$8STCqUD1w(P"Ŀ W4![0"'JKt1,?aebp,YC ;˷EDX7.54[Jl|2|Sϖ>]ƌ,~`S)(If4U4Xl2}y]44}ܧF.4Ipx˛V{_+ Piv`݆_mwX0 fl bAqS9mvQ >N T3OB:ZЅH{ 6juͥZb\QRklZ+CGhD,XlJRZ2<$8r:<"qky=nsvk5e16$2>y_g W#oOwa+ij6*K@P/`x0=yMMX]<z!9*`%=R +}C)+8qFX 5?8e>`(JߴIP *\F `*Gq߆P5O?A</wV E|qv\nNVcx(D8߄$w#ϩo%;U&?k~s<НKɤGDcz#N6Tp?X͒M[ޮ1|w*s%~_Kཪη(1 U2I6&P9ߡ'@fq]es? {]^LDS-$,Lm>eJזo5 o M%i pSGLeoWK]-){U$\}/9)w)_䩳5:I,|$ƽY&y+/9˙Y:DU:M'_[:32+ؚVh`օe~]N%y;97WJg$#_Uz?dP r))kZM]~$&uOd,\)j rsviKХd[WOJtj< DyȟTt![Ii wr*BaۡC'E* +*rez{tu}ƜF~rh.wBGruͳ?7PAdo& nQ҄ʉl螣 s )h,v#UB) i;O8xa& }4 _osag,\$(aJXsMƅuBAf`|,٬Py8W"{G6D d}@(ۈHLrbq{۠pArR{3#x=i_L}/n 8NB^m+GlAzxWq|f5$Gǹb(=XL3! NjBi-lj0׀tjL/T8ͥ{#d-+۷${0{ !cox/2]&dsl>ov,h7Ys/}f=un#E574 ևL}Sg!e߻;HJ] bL 9Í Rs{i}aRB-h%IUl]꿕`zFelçsvKr0HW3 د%j%6vҘ!@)pNG,bf͊O*a|\.k B?=_5OE3# HdI*FeۙhSY^Z?*{ݐ|jEL}>ؙ#P]}_O߯P@kamK%eIpG@%Hsޕhˈq]~]> Fn)1qkw}Mw;5w'-5|9[x ɕKF݃!+NK!fRԐϯo݃~ с#c#t&7$B:dY̵̫(+nXifn1,P{mz6Pifc0N:N7#9Q;uzEEj&cxttH~>i5 #}׮綱o˭hY좆Lh"=Bt8ks;gE%qt,iչ{-[="ÖN@Mu){Cac]6IEO4!Y,@Xқ FQ)+"eDd=+Wd&`X: 1r<]ouLS}gP0hu E]ߐ%heonzݧmޣ/WR6_#"+^f,8R<8Sz9"nfkn 'bQ F:ZUha5takaJf%ruܴɳPNc3E<벢YrF䕢s|HZρZ2X t"ԕBWºvԚǺɨxX@)%:eZ9%,ʙ&J[n! G#j16W'I 7 \-{2afv?Z*~VY$%cs42wl] p4|ՊkƺHH8uA^{9 ]H^㽠Jb} y#qs`4bh܉mK)8qZga-D@ W"X8ެ.r}Oh?jG"ɫnB|i.?#e_KG"-BhFc/-l:ΜhxL fLtV/Kb.}K -ΠI vWͲt6hsfy- 8v%Y?.,!eVicAE]oS53b=U³8ZaMȅcڂNEAU>`p6u[%Lfv}ƐUu!=q`s#S{ӪcYz`#Ex5Gj!Ecdv0v8`P@a."&pIЖ)u-NeyCwZhB'BLLBw!vnd%4+pQ \SwD~=# unL^Ba4W |)`wj%>+#M1Zwk0\F^fk\h%՘߮9;4,-P\XFY{vmY9YQyÜ[P]^?Mxa'yYy#e 32d1R2[( 6b/qD=3 E9/WPmaÈwNYS*5S|v>\1$:<t1EDr͂PjaEwϱDVh%,yߒ@M'sqzA7 1q|DQLhO@\|">E_n<~=)A[nJL7:TYz%R O &'HRTri1Zu2)dRL 'AʯWdVw=rn2l5EVۭ1Ηp˱fd<CPUE)Dd0)8nЗIvVɚ&1v4R]l&^a~bI_?} ?R?kxR{<"'$Pgխ:malnT f(Kϣ' J/]YigM[w©l{Y=ΨtY I9cq!}w@Dkc zqv<\T7΋KHiii7$b eCQr0YvvQ^v}މm.RCr/~5j7$nPh)"(Fgl,)ޫS;V4i.j4*"1sP '*J(,_P75Am]WKhq/sj5k)ܛp91G%y=!߅5h7AK?V"ծp VU!Y22N73w/NwMө9E;G,F& |? ߖfɲNl#(eɡy\[S^۴St̽>͌[!Avo6\#DžT9G9@t{Ģ>A7IAK^TB-l,̓Hh!"tA*?fy'+Ea`O kn j5e jw%z+i3oSRǩJ8*s7Y5~ZMYBw_+Ӿ12|?@¨jUCS/ڠJwB|a%ERwry"4K`s*l3Ҙs҃Ŗ`Mr1[ʲDPDn=(!K{xsֳJW T2O1o&ATOu56.28wؕih -XŒU:2)I2?ԒYqgI+_H_ P ȓ^\-؞XN}կg8nUN.nm 45)`zU?L-V縒yךD~RaX y'Bc,aHw߉ ckKᓻ2:'lm4B ἣœONQ;xIx!= ,; `wM:=%PaR,&!uÝ&wa_~,LY|% QY{.Pț]g?*<*+v8mˏG2̸ `|yw6rO {&q[:D! 񕓍շIbrkmL5ITzοʼbVSasˍѓ b55$%I!*?`7b]ۧ3؃תQ09җkN# Do9MTgڙZ?ۜaBVpWHpq7^Om)|E;xi8%VUț}Rݥtp@cx$A 1 -U9;V nl}a'FS7cdPƸHAWK oJݜY&CxhsAYLnzY'o*Y Fռb zd2k;?3R>cyKWqJ!jKkv"3ݱSOP)g4BR[չG:|N[k)[a'VTiK/z#a. ݠF4Ib/Ze i 5MDi pr*[B;3rh.WBGw +T3QȤ[e:3Sv3ۂ='Mi0eqF L1 im}Ww[%1Th*Sfҟ>q9WYGTρpKFQKfфȯɦoAz"h4v w&0)]X,?o hj+S]>0o;n@s^)tTD A/8ki]SzMs8L@\8ϻyi<أZ~wX I>DFOr -A,Ώ).-4} +y3S۬/X?ypaנ^>->x@r@)LOvw %`W{V_26^OpAoRRfܟ)AGGX.a[hfgI0nX&%+ 4Fr`bf-:ڄ-ӶqӏyMV0Sb`T),(r[:"6,)1s] ~|2H rZDp8(j*Q tJ1p֒[$6' b-˗k:`0Ors{6YJl~kmf81W D U-)<7ayAOkɹzm̽>_a@M&Ʌl$+bv&ȰGvN>_,;Fs|c`NbbŭHWW"1PCkѤ[Z~w/% E @#wϲȸZs/HDVĜTTQ p{N t3c䘾d@`ͱ94W労o .hn"& `&P|t=r,XEt6x}n0S6 ET9!7){s$?L>GF/BIxq Rckz"j~|%R3scl[W~ JF!T5 #g˶ɇ x~P<<,(eCNhmP^'p2MA.bLdITeN(C!/O7Xߢy%:,s嵺`?uGK%Bم1[=^7"@*{ 3-^2y-eD"FlAR#kncZb?Aͻ=;lܲk~{+[&֏U6"צ7ɞ!M;kͣ :xz̪Sl\P?x֪T] *5BDI)+̬SL; 52@LK Α&wގ=szv~@U mCTIquҪqM<'.ySj1H@58ė3v?Lz+ֱוIH/b™NG:(߇3>I(l,6(boq/~~!LbJ)9m!nJq/GL%Z팾-MRԳDXA4b*Y!srD wfJ4әZc>e-XmǘfYs._7zӎ>Y@o(ʲ!M% ?$U|>8HX@jGF0gNA2@A\;AVeXJN-9 ٱ449ݡ_)v:(oiQȚHu.Ek+ Wd_L|Bڗ_7o!_}QVG fb8gu-`{J“Cq'뇑L) P@ĴhNPNEK}wcm)ųA覢#|ycy?AVwE0$k:K, $[ʲfZoZ~$.H>pAdCֆuu?YPm1:<'X>JYCN AKe*l'Vj "9H]Z ,:mYLgr)Umf~Sb@s>HO5dF m]\08ֱD⾻\ ^(52S8b}ȓWEVʄ)}Ȗ1JD+PC~Ce-[{QT^4dLwi6-L$SBHSubځ';GsujSG:ȹx%j0B̉yWv_/չ&xڕRmBQQ ֚е pXp;sh "!ʊs·!:FeY/,eɓ05BDg3A'Oݪ^=w'2 XY ƌRTZ._h;Ɲ6)9KіOET& ߊU۾faSw٨FCf=eqBHxtÇT=Ϥn S)#B$%FW9,HJ"9 )y~?}љ$aLF1ӝ;{>lK,SEa.Bxy03>nqJL 쌡qK33v>=ZsMlrqӱU j|΢)мNdߜP~w)Ekb-()2Sk $EQ% qzOXO\O8ԒbtHnrү2s Q_}A[ Khn?[~#_!u]yiLqDoX26YqATojͽ֍^eæL4@;1Cuog$7u*nkWVd3"-Rb\ mw&V!= \~>ǹ9jLz8 ~w%I7b\:)1{~(UF!0!< t>+ج<7B7mmrD̄+@x 4"XdlF^M9̗V{_(魐46C2Yւb06hV}c/do*fƓ, oh Ϟ mְs:Cm{M>+&TΊ!Vi) -17L>@OiZlDQw.ǰ;JʜItq k= %t ^\` &ܩukՍ)W2^FMrV@"Z&qJ BoPQ޴j|٤?p\K=SZIY=:IXWe;z O5#бyl*eA }Kt-14r[ t"#eF*I*sU߉5rnlѺ*Bx ÞO w6 SD$ݬ:]NGnŢKZҮfUKL nOW7Ko{2wl/5/58ʸRI|7vpr͓7=pho|4<15 Q4<G|At@5.X\8"EYCmxQD:RڇaK5XA IơkDR[F%c͓5٫U3vg+݃d~T571gL|'r8ms:s1߬fdw}0=᳋n3"Y8 IP#*K84=ɴczvg0D*ӢR*oelTTī(/f줼`;t|jLJO`@!KmȬ_ /[^tl"Pął|-p&Utծ;䶈ljωIKpz<OS0 _y Ū֧Uɂ)#]ʂ {Rk>no̻ 9~ܕNQVUUc.د rj%d5n2&ұ}obɨx/mUpp52,8 Lw~\z (|_</l57D$ۤOuoR{"hFy!Qli0‰ 1re|sYVgJe$;m6D,kN}Ղp B$ P/8u01/h_v,ܧmd }R7{g#f0{&J}[Ϋ!*^Yh"9Tl͜;ޟ KXٝ/!Щ%$~J쑣A]Iܤ59'[Dg >e}~Ȥh;tTlƆIj<X&sjr0:?|VGmvLsgv҄VZfzr]rhwwJ@[ +REvudʹӦtW?5{(|CېO3s$k!U:,]{|# qDIP@r)РXk_o xOHӸ /<~Asvk0`}=F5:|K)51̪_Mή}*&#==$Yy*GQXmS3pz=-2rRnquLk+g8ČFx$k6>ɶ!eU jQ(Wl@GWٕ sE(_іYQ/@fתKs YN@%eՐgiJ.q3'J:zʟ'Jc]pr$'Μv,@.(5bMDOP`p!YΊ9:7޵/qbjH=fU*CtsUD,e |75bдy|<T:F?]gϲr)48wi885o kh o1JP0JcOK3JgDc[00Cp&N*5# ǖB(pU!d.B;N3J3%LJ9S?+]Og t[!KDU_vq(3C`t*zN/oJR"<8[+uCސy(Qߴ3 R,)g6)n2tɿ٧e|J=Uz[ewLix1,|t"?Sx!KC{C1.,(2=K (*ū;UD@ZR\.ufas%9#6ⳋ9ЧnevS[e5)9dm[|ήpʸеI,/8c\9yY[9. @3 pVŠX!Dc980G:ycN?u2>jU.w @ V+\nas tLU20B`{^*۳f؝6vC"GM̄<ݘ ;t[7%є6o!'{\i F^֗nň oۈ6XWB$I{ۢ9 :̀qd_]HXW3pxy%.! RCZYS&mҺRw3 $RǪdA`U 99  :2eZ$XvfSmk#[Ǭ-pc H5>ko wi ۧbF=wF|JQw]sEd % )NVr$c\xd+fpJB)CfzH-A4m TQrXn̮>fps1lC5^f@-o`frw;ʥ81܅PBlU ތR-1bh`#=.cQ?kR r@UZ)kܛ/'UC.EM"1嬉۱Z#ɑo7\@ U+pں&[iJ{&:e[$ ZBWkBTcB̳;WWfM. :`hʈrnT+p]k^[k}}d>##O9H!Y{EЊj6&@u[<=Ĩ㯪BD+d>@&97g^"DWv7' 0 Zl4?^R[Z)I^11 hv}uoHI#9(bmq,kWXl^0Hp4dŠ'<53G>;v .?,.3D o㧑G2ꠒ'X]Ȅ us~$5aV]OFeqTu?"=xp3Va$fMkD,\nɳ;ޗ_Nٚ "T3 /K  V%bj ]^2(h9f^!5y|4KW6OiG!b+'Sƻ =69OD#H1k\>Z 3'.E1BfE{=pw toҼc`)Tؚ] uv%7 CcI7Ad+\='eovl=EW=ՁFxR}_ݚoj(}gJN_t p#4;QP(šauφ܆ZUoUmJ'H4\3iӖ:Gw`4NY 8XPJLZD&ߙ 6yʦ#PBp-ws4{ @!ʯQzFC!/7CU.q;沁Z 4lm']})p׼!Ӻ&.:>׈F}՘$LSvf^RB|bpŵa}{Ǚ"(_ 2۠B4r\PsL N0Ï/.؉%֯bAW=/,VH>3#|#*fUR <, 9XzG\Ў-!f.p(ula+d$‰f%eHΏp** 5MPԴ/D"Yܧ=VN8\SPo#>`V2tmBJ 9h*C,CYc~B We :rr١VɈ4Ei[2<\$ 'i=$tI1c̕HBPDrcLZ٤'xL xu`0 LY=ǮƧb!$ }1̕Y>IQGz&_4xNvMdɍ Ho@^Hr3V>4HT<-&\rQcI+AdK@vʃpJEyI$yHXJ|  E QN;CWsk]%/HHcf1CF:ǭeW|%5'EE_6w5;(A-C:ncq '3NBo|AՐ\W!HkX@™FDU:b8)FÓN[TYjÓBq;F?ԿFiGOC@Ea_fu86ɘ(:1Žo$\ 7 o|͚A1*NfiՀAajv+%Gps+6WuXZ4=xc1df6ѦY`4hU}:*<=8aedcG/BW7ghysw5cϕʋw@ob{G*w|a Mz>VY1o>GR&jpM ̓-RǮ* l \n堀xi U AHl6ը)B.]^iUTySIE/1`Q5>|4 MsubdY8M<4 F砭F`-sXg@D$keJ4R hRLX۫82U"blk<.R/07iM+:Ŀ``@@9uiW"*!B|r@;phl;o@y?E(ș56S5;ҺӸGeg&JBTCeLJoG YՉѻmsyr ~v7 ):NhSٙ cAN\Bh|Lz```oa$;GEբC'bRX8t~S?r9Ξ[!a?9^81deg ylLgڠƆRl!u!U6jX~%"dLI}o;{Tjk~Xf:ڞ͚k s67q1{8t.4`Pqi1| RRix$*7#yW D̀ݡqAem:)yv>wU|,d*N}DK3+j(\ ˜5glL÷aF-CL$yJRQ@vWƻwzo(Gj_j5g0w3qtui668ϡp n)@Vr)ZtYoOB0CY.OM)f~cCjhY&瓭Gz€n#r t<oϺwfm,V[%69=Nٶ3dZu;[-nqj&V/T#$*fl`kl-(u[cA5g:o\ҕ:{mO0|?DTH=;Dq7g|/brhL`eHxC#) @-BoP\хä`n $iO3̟(udܸh~ʐC#o `F~ҷ VY6v:xԃ6Vh.9ʉ*y:8"בZFFFIxs:z}  Xd|GL+MGJ rc$ 9g1 f̮ to漕=ӿdk֭410Fp8qOg>%+SU1`h՗Quhz­NU叅nfq&t *N a{)_?{{Hv W~gWHAMƚ|[ !ֻ@lpw.< ac$!β$$1[sٯ)és *hϐ/LR3$(FMk^FgL>vV\ٰ;GI@:s sovFҎ&L IQE?2$v swԽ&~Ȑ^9kD*9rQo}LrH7@Ηшq!"Ib_%L5LmbC@ #|6 ФKe DAM `s 8 :9@[^NGG_+<"#Ifvk /ʌ, 8iIY;p7q a#LDԬ&뭇hh]H׮G;%+ I"۬GG~2F*hƔ+N:ڍKm GPJF/Ș +뎹 4)A~*3<=wˡv 8w aɚ cA"L Aei"ڷ$: {pĜGk~S181B$q+zv-5JK7M6+5G/^#6Դ`H4pmS2L=(V|Ţ`2^1_=$BD!lbF EDe =z1Am{2ՖSJ8"F(~X/эKE_?B6̚mh)tUCH6nd,^?*U[Ӷ$9Ulқժxa k^8뾂!73Zsx1.L8`AGӤ-FjXh=b_LH=?TNHY _?BD˝18 J b<ĉQ&~dK1̕ ȑqYدU* ޅ0RgS"\Y4"^ZқlbX[4%Sk9q}qM#dg*W3@ @1E ġZGNcY$Ư|N"V{bm[Yz`5k`>I>~M 7# L_!^Y1ݚE9w$" ˳,n҄⻝zY_Bܙ d\{qq+ D@@P[c[?mKmQ&J ~ 휂 L@W=ߕUKyZ&srC/o?Y綷R|nP1ν|6^kzf3GZD0 (JyS'6En3t+@)98:3Qêc\@w҃ՓW;.7XCwƿZM-*3JlX?XQodF0+ab>IV/l5uJ F q]^e9|ę`75K)v{+540[גC*sn⾊ku ̫DT1H􎹍KNz3'076X|#jʛ*?  $aa 3 #K/]|w?#0߼nB]WM DhDCV5l@)pi"bmKڥL!nԅƳ@F FzLlۛ]X:G~,f?MU ֋ e6X%WC 7 N#͛Ie.9u4 ,MM|a9GyZ3TcRbzE!D7\\n [ZqXhnՌQ\m:ܫ(-1CH}oZ1Rߜ;E[ /NV¼I(e z F&3lϻ-].J(㲻SL.xI:Rqg۪=vzm 풃q[3[^D\qI}n Սr\^TVh0-s`p7FGPG42Hm.Y(\<*QMr4=i!5ǩ,>>O5ѡDSOrScPVt҄28֌9yύ) 50Q> Q 1P֢N<<|m {blDJ/2QËѽp(,Bcklݟ,TAf>chݸ1 `3FQ1HR!dkL><`2ZӗGD t՜"p (;_cU4^zF.;ZN2]V9i QTI@h* (2X<~u#؃08?[[ו}7j'+Ȧ 4vpxG7\}g`ג#@ pD~/VWj]”$)gud'tKhOb+ecd3j_T PC]ƇtΆ}/vĿ46KuxTJrh GiW.cEPax֙zLH0ٍSpt-@g㌎m)#[khAPq\c\%1j, >vpN P+3SIu{&`B/H?s?6~cɘ~qSwHVH6I-H5I %>M$qw:Fi ]F(ڹw{bc@#MˈX68uc_SQxYݗ\`Ջ_nq?V8teL &$jv#Pb7~5^j''ka]QݔϋUW΢BGjNe;Kn VKmakL`'2+0 /p/@L#Xqu:$Za|/j'?`A66G9\R5 +{ݦp)uɅsBe-cՒ??~ _ۄ] 7SǃS1꼲`PCbt;ѹ\> R0C+K* s60_و9 ڳ*>gq=:آy*s ʻ&h,$iLf4bo}4t ǑI~܎8$pE^DLjdmMwM͠sٖsMP7^1䌃axNXؔE EƹN2Hz20oBG>5WOS6z:pY[;ay'z*P5ȤHg@=.<^!82oI5@cQX`#/ۨZ[٦4u \1vei N& v'ؿ"'> mR%eՅ *T25 uI^\h@&uPrA6nf@a#A)ᚭN֋ 3(m0躷ZRß6Z,GrĄAG 16vn~ᢜʊR_#錼}NHB!K 6G.(tV/wW.\]ކ-3]ŬtJzow= /<:Y2;RS)olr#dsc7({nv^KA&5-0Q@& ֊` kO]`GfQĸt*;*8kE6` 5mٸxOe+Ӭy8'/  <59J0-z88 1fo!]-uCZ{6y˚%m` *Ƶ2".'F%.׵*.Gg⤿cгL+kgj׮TH*cM{In%컻#qd ZDHMP9p![m_%J@u`j#rL elKGXQ0W{"ȡH5H&u_aXQzj[gGl.bF`az_MBύC+$ @8E)T {EPHޭyAdTluZBbBw2i7BA Vh65K"iW%IFnFn~6rٯkM_ oAI/Us؎[ %̭;r}ڪ͚@5m|zSZ:(̿)u MICPU<&aI"b~!)aZE:α8g\Y+LKZbJX.!9~^F5{>"w1#wT{K3wn`Yc#P:IEǠ&N,$eYuj hm62]-q  SHAt=ǫd/<њ\|ә^T>.kD~=s%k x&]SZAǟlQ[cO}&RfRoң.:N(K=$Ebxhz`;5}ՐЫʒ-ا! ȡxgf[+Vt>u:OrB +֙֏]yqh=uY;z{smy_lɈC)poJe-vH~rk H]Eg9J7ʢ 0Q y|Y>{i`J/`7ύKTX^)r~>_>v!! "hS< oTB/qZIn%#`*H-(emWV1 J>>bC.9^mP;@aSx?z=\3 ~¹u}L*j7war?S}.qjoSٹMxVʰuL鿵IHbCc3Cp}6cI\0l调FjTȰC"Ma.}LbScu/QO(|[_ܙ1z `{oja얢Ο4[\^>E v >+UsHJU<"SmT)JL']ŋپomɯ L10Ǽ$bc@g7sn('<I3Yy`H’&0M┮T)DžH160Z ~(>όZa1tUCAz sT$*T wjQ.Š?J㠙oD{ 9Vmp($²(-7ryt1rNhgnBkWkN bp y $"]bv]Tc*YoST8 }IZf|7Ek\JƫZ85,0wT?ku0/70dt)5e}A=V Aos3!]0rjkA}L@)hha:Q+⪷\ R6˴M]i0~xokC=sZQDunPW̶FY"Gtd?k -6ImR`7 Ju]5 {J+~sԬ_C'1MH_de! S5mܹ0bZCS߳r8 ^2[ M2JJ"A50pI%v;Y"\, o/Xy]2˘tF-|YdPZRF?<,e)$֚eWs!O ׎Ԙvhx<QdHp99HœSԀKV/°lŸu(WO8.X^%kf*3+wfKMo~h7棸%{hWּ;^F?پ]{M)KE!b<8Oo@S &lzf{yEgW2$@o^5E`WU24Kެs ~(Jܽ8& 8-*noP/NHb"wǶد!8`DDL^|[,~P%I8x,Pqbl}RC) $<׽W7 kl&-PbRBc-nx/={Z<6| è~!2s%{DbR~=SA4vhG2\K)yɅ5K :&Xx)?4bJ"OnC\?]H{/BV؆Ͽ :Mt?5ಮ;5GؑZmx]ik *?%C)cξ$lEN@RYiDBlӂBuy gl/ ʊ- ?vH*oe]? 9,Җk`0Гj'g>Wx*?q@4NnCo|}sgdbjb|p19LLqe5g= 9C:Ie͢pSFf=JwuVc(}* BHRJf Uޔm\;/U預J \Y!W9h퀁ق nsZ͕j$>JޚsDs RBKͬd% QDSDғUp ̊BPZ\Jf 3)(``QL$g(Y/DuhC$Qp#Q!4e7 G$BuMMsin(7VU f46n0œVx0=*DjH@e11KʄmhHV~T7!;|"A{+eg/PZ5W;H˫1CS.KޓUG||B,4%p)k4 쐽K7"҈ɯ.po]Xdt2\nA:=, )~rorxiEޓ .sOi޽ᆵZimlr$RB^AmmTzY)Kj-|_@Fi'm 3Y/6!H4Y:pٻ3O%Dm'}J%AGaToYNmHB\ x=u\"8B&`GEZ oT)Jm f5tDj^Ԑ%i2`OO1]niCd53Ϋ MVUx/ y"Cdp u}t ˍ&M[uo#WJģk)SmIgfٿt*Ӝs{y M݄E\UyR,!sz+In[,IOc**wXO3TEҺ:MZ`ꖨ$+YXﻳqX@9{GѱMaC"GS@M6 מwR.C2W࿇WT2]tHB;3M]^MnEgZ ;)KBb`.i(u{;q6a?ȹY&a'9%Y#ArKv~`PH_l;G:tiW ByUH#4E[ 4,6|I,ƗlB߀ᡐ!gQ1g l;R p52++*)+ EOp&,zc#<˸V">y[*"qM$>'OE?L%p8j]~4(ROMûXPkd.(IGCyВEy#0ڿ[tXjO{;+,\KD u/i=,fsrT,"AR! lZQB)@7pQ7\[Oq R(8dc6 Wn}MnnZߨ>_o:N&s+NCgu&5W k?B6۟?`lvђiQ]1`]l\JV_ZIPG2Isٮ@p]$i%g|KS9RMcy`0ѳ%SbwMjo*j(yNΝ* b;0d4s @5j.ɗM"W7J,|`ǂ;ZZGasb /i<4sJBϝZu4}G8XIح$U(a2T7:F e̸4Eۊn!AK%xxc;)ˌQVmxwAيQOwN<)֛xYQ%/k;yC3?u BOҥ}+7^g*%q$ڻr={`,5I%UfWhWLYZaBm0gpU-UyT$9?ԝ2O-답d6n7g]ro%+<~ӿރ1%}Tk^L\7B4 F."ZA|gmy ccσ B9\!^%ĕ pZ}'ם?G@{9FeTӈb/GQ9kz@9q⚞(ʷ˓ O^v4x'ːA⤪/cIRLtLPym/t|ҕȁª~~t&kق>z-ZW2OS "'PRFM UH.Wv_['N,o x?ś 4ˊw?*̧ԋK"tb("4ڎnBdS$?=g!ا YoZփ}{ ҏ~ p*IsthQi:WIKjur݀\~Iqq1BZHz ]3mLlϒSlBpnSa]H.=ina1!r`|ybrȣjbO}FaDL3o_ `ou))4 ,4gǺ-)HVOKN \!KJ-̎xEU>H^{+5ek+ArԸ;0?I[aOP%Yd)x8 _8~"+ Džԇ~ޛ:[d*]?ކhLt {=WdzwL6L xXq[F s\od>7W,DϠ]%u.3m?#:b%eo[8(WЙ^NopDʡh{n}llvdR dJuA[/ЫҰAhb{mËGLS J0oThPiy,g;OA}u\,JR=_,{`  yN2񹆰co̦%ZUL0a톍{56z~ʹ?HöM\H!ڙ){7XP?5UeD]MuM%{1cs/[_d^&M[>Oge0> GA)|Lei}B7o“qtv5t>faį=W7Q8+pxT?FrDD_]T>Bc;~->ƌHQ>AQs"z[?l_A-SOI 1MZ#.+ڦ=Z>w_HaD$d*95[륛'o Q52/ETVjS|2dAT}){?N2MN\A0SW;`mx Kt*dKjXFfߩQI"aT_w3qU,޷#@ڥ'~\unJeok/(U:?.R6EccܘҠP.Ư2[SDR82 3rpP7LTMl_l7NR,9a1oo(jUwHq*H8q-F1c<̂k_QMgQR P} <ޒ9㐐<m\vŝ.YVǔ~Qk"7sL4?HեI-L=*=.⫌Ϸ)k>Z7r[bPE<+$VJL((No+)-,^:FG0ߢ\e U؇P(>ѽeh@3< gs|W cX&#\פ@c1% IX~Sx,EF˞:\ H\Q|2Ub_p ᵉRC/3Bd ;!yz-NJ- ,1ڨxWZ$ τYm[&Z/7 C#8纯ƕwJGIM߭U3BHw| ^L\ l2`7L-NOj953'N3Q^vcofPҵ(ʧx2ra ҐRNrm> *d"A+hK1f"6ló+) jN銷6bbBU֙\΍Ο{c8 'ЫLػ7$H~heW7l`oaxU4Z'٥ 0/!^1k߲PJhq'Yq){־Z~ G1qNG^׸X-HŜt;Ј c3 BYLUuvļkl8dOW$E֪;wߨo˔Вw"8;\.=c)@Gjq"hךL4,+7mq]Er^D#8X ͛?Ln[1rh(9cn6zE2CK{J5#߆5%KǹdT}BC ~RMmAW4{z[n8փ|=䄖2OמDmo! kU9o4|N<lYMU/g*5%Mj(V6o [`K ]S,I&@Yz6&Ÿ5N+qtt-w Ie]>4AVz9켒M82W}\vFN<+@t97-Ux$zzWےSVH3w\_~e/1m_pL XsK.&bH+5eC]u\6= nfTϙQM/iH`b2B  3WU%v&폺&d{ih5D۪4i?(ϛFsȇyv'w |DCԐx{FRKyUaXs<[/NHjG{t8/w6@ `G\y#{9R|aWm7kFKQbL:1Z8y,j!ߏC7R-څ fz4#uwa@lj^ X(R֣kKVي5D%XvBxV0U`Хp鬯չp{x903o8k\qMhp  Ұ/ O/м![ QFس a1qsFj_PU(WKeٜaօ\]'! =0T(YF+kǭW1VpHjſyCJnBM'$c,ƲoDeLPsfMAޑTC&JRĜz9Yg,;uBˣ H*v!Pz*\1AfkS,\ـN5@6#Y-/@KefWZ[ @ ֻa?WxS]v`B8_pRl22Sj+Gٱ3uzQq+ 7Kfk*T\;KTn)q,5dωU=]@@ज ,O\ت:( NY#ZϱO'ug,9-sYD$>^Dj'>(nz;y#sYS'9(fy 8 B͘ĉ.ySnQ8 JLME)R?[k~PA^Jdf݂ljVgCq c$uc zVX5rS,(2S$G3HJ!I޷K14h|7p,V)9WJuw^DOy2Z+V~{`\_NC~{䚊 |5'+ #w_= [[.ޡܞ6XÚ"W8g? +> ^+ 0iTls6>R{NxFa)ley([ד o"cܝ{2E7͏uj'] .r;jvxHԙW[ᕧDķh }w gH4ubdڿr8g&d(c%Mf}սZj-Ez+]UYDfNl*_*n&hp!.Sި^1Yb(m}UZ ~ل֙45ج߂?btg\/YF  )}'hvl|"KvFL{jEM_'VB~*?,O'EXILo_X*)gjam>8˻QT "&@euJ>Vy6-0kr,6OXgm т;ooRU%آ݉8J棯MTgk2Y%9LW"/VUuZCW' v `غIC&Q5Td?rtDq jeu18+^W[%O}$񧸪>8G5yzȨwm 7q@ z_XN~\Q:}`ü߿p+mnZ{ث4I(=^~W4Z7cW/V`*{'ߪȭTrڙ-HصPcAYZʑƇ%bZ3ci!82,#K5Y8Q̮`M)B?[<W;yO@dǵN1ErMRP191]5wffqTGZWHv#ZFm'ӡ$ h̡CEc@fsJoTx$[,ZZ'햶't/ors@g>*&|0֋w,1b3{!tޥN`t]NI>?kI(*\%:fk-r٧R%Xx8J9մc|(JžЇy:p0ƃ8H=g.C+Tw5/Wƞ^o:@P{|aGn%w.h7pM\<ʈ;Ԗ-,a/w-JW4< 6 '+X~ahtm{Ʒgb<Nc<{ZLڢMo3ˆ <3y}JƽKS8@':ģ'9띈]9#\~6y:, X {Mym0 RdK; a_Vby<%9j*SWдN wSA🤹c-RdwjVåI8{!fxn:^_3V 9MDd~x'K6h}3LnPkCNC rof37е4A,‹r=3f&_{ۅ' ii,u\Uy*tKP]Ғc*PAǮWh>- / qVD*1''k&2 V&sn:$q{fn [;b2b:+)udF!+1H\F$gmQB;ޞ K8dU A cO1euL=!O>smdJ5 m4vv}_$R:]q A[Tn@+CG#pL+W ݡDƢ6.d HFq*GtNa]Znmhϝѣf:5bo3yiB).os5:c @Gu,_;SjP8"sd5?/)exl{ xZ䔾F;hFPG8Nk2r4{h@Kj6 5s̀Ř6~ XSAEEJ) ;Mj&mELC;3p`ۢ{@UOy?qAH]>d1]-ܕf i49(=LTz8E8|Jq+2O^+2qИ3WHͻOuw8d Cx)9̈ D!Aqߞmh.agSڨ)w3Oyc憌NH yHDuudusJGUg4}tbrYR278";`E[+.?] F>/!q?iK\FpQ18 *VYPTF3 ( G)mu{(jX͆ =>ޛ:&_\Zp-Fz6] [/P oRjl/*DZӆuȭ|ԛO7ZO`{'M?>8*0LQ{}y)>nwtf3$Ͱ~,9˓ȨP?qI"znVED@o!lIbs._CX;Z#G\ $Vsr6ZC0x=N?0v/ N;2dD5re60R'D1+&6:.Nu6Lz1F?)͒E3{d0u[+,k +@Aj_Vkn̞20 +1ɮx=nRjѯ0AֽL1BQ %ciU$([oLM1G`a'o|a690n F;,m%)*ǴDctGVMMKaSAW zxiIgư`rVXtA¬5u:.3ex.<_RH:s_dvqyyg}4qU7UQm ]{\ie;s_g'n0a;Sk+;33yȐ9RNlуʲ2 G}D`X%"r9/מ-mR e߮27Qw0xbAr+ q.؎i잁G5uXy׌dtl,Փ4(]vA TdPҸ}]9n`2F ;b|s Ñn4?Ӝ%lu40 &y vͼN0á7W>7yW/ad~'RrFsx {%. QXWv񏻳iIy: PO]U\p)ÞrqL7iT8@9}OvKSgAl. >TA9L7z L'w(a8^)P+;s3JI^GU ^kIQ3Իb/uG/+R&<_Sdw8c]8٫ ʃ  D:CYᠭP= F*L+ZS~}lX f\{b>C^qd'^3`K[ta8i :I?Fm}&0P )V1\#(3{E!lɷ W<%muϟ#Ō^VonpH )4ӌN<;#k7)|(uWQue1i._-dza mm~3$ T2uwC2X؜ܨG*e94M[75fN؋fz寤֟i(f<8T$ϐ~9]v YpE/53R[$L \8FpC!T%V*(SN/oZH㉕FW.{o~%̙!1S$fOypo._ޔL \Kaf80;2|*t{D.S6VD2Oۉ}W/W/X$n+N}3*p菥MYh7x=i3ly+:( Z-$ _sjUDZ0[DIP]P{Y] {4={ O,KO`d P|7?< z+ {+abvB܎=B P7lqsFZbȅA+)6{: B$tZ.žao]Fhr%%jEb%4Ȉ%4xu{Ӌe0[eEU]ݣIb^9҉!G( (Wl6||\͒l}mVKDZK6^'4'3c.Q:Y@mjHцV# :􆞀#GItMy)- ;*gÚW(`>#`hnE[N \xIF6j-_~վw(w?CzV}>o 2  (ae]Qhj=Meɓw[eŇ& l 7wSREpʂ0|L "k45rfTlã$>u&/pOjVȟ 5&1N?zů/ehgRFKdj3"ݱϺ)>M`%ЅVWPA,aF=,wN'.Uw+o p.3 <"axZ'-7L o$4νjzH!- @Y)SbhK'&)Ca$$:ț,o;@|:?_YyyYӏ荽;9.4 m 5#}BrLKT8D@L[N4;;бm8Iғ$9/rN\c uW~F7c-KEB2^V 6lgǬN{8@[S|ANTV2os'bլڡI-v-ie2{r4>l>uqq#}:|cOaE?m wv$%KRoiFx[>zfvR EbپЏfsT<؝q 1 ( "Kq83>^YIHvbH&5QV hwǓ;QH%U-XNlaX BzBq>: aKF%=89И·ϊFU!gi,._aP%!t3^"ϓQ.d.Ӗ+c $^uڲz٬!'P7ԭ;&&C>230 +`H洍ICۢUN,l8' qvF\"ŌO$Fd N"R`L̵ۭCAva.tS*Рyö˷!BFwXWNz㫏 1'>(ʎab AvEmZ[0͡#W6v[e8Z(K<4(_GehW!xC%7,غNMIMuE_ȍo>h.p)ffU/pD~jȘN;gPx! Tu_;G>g|[,\w7xXuMq3 dclvUeŖb$FcJ&pf]AJE !a&/D-Du~$ Oe(1\rI3@CD^oבL 1y4~|}_}A2ci儋e }n6R AId+Trv-2tdHZx.+堻oz#:M<隽5XH/!]ܙ<bUUId$dDlbzZ+ajdw MocIxԄ2.ޢWmd,r褞 i+菷i4C>P wp0&3!oB$,>Y}3ٷ_ʚ~OEX Hw ԤC ђ*\ܫ=K I]Ůc#^sjR%dt)cJ7b, EC'U՗Uەr{v3^$4_!G`j*3(}L.(k>`k/JdA }ьRA$D /ۂ<]KE*$*Sn^EOit?m 쐒$JUᗜQ15D͐G#sG"3;vF;#&`΃DtF!\ALPuZ&#3x Lac.\֋)b%#f((ՠ>'>Q4[7}V-ŚbSN6T<]TZء ,Sv&57,܁*e\Y3 jUM;,jaqw$$kh'R+ܳA*îK-< E-3vazTy`\h)oLWjkO"Q}yQy#E35.W%"_y aGlY}rrdqƃ޲{fWv( uq%.GedIU͘oq跠qC= |צS_un2[}Ɏ&l ^{3:S?Ew1@eqvn#&qIsㆌB $Xݬa[v$F( }dO'k˼H4Ztʨ1|lׂQ&v~{U5;mڨnji]izE;y.Z RZej؋gwKPS a*/psv :^ Z I Gq6 3ItUc[tr.k&d!nO\Y,tX((I/EGǮ&417I}>9GiXhM RlN FDuN zeRKS|{Ϟ;QqiMO4u+_@|1LEqqoP"X2H%F H\sqʗ,q( ֡~ϕ#Mꨚfby-S"s4կ}b>ɻc?𖸟&isOqe}H$^1+Nqdza C ័߭^֕Kұ@cHJ,NR\@BlwAd(gVڠͩM1s Cޢp}!J=O)nN$ Yߖhm&~J*qv!~05%$՚: H״;e 5C7{ݰ_iD_@y VH顆Ur[Bv`+LPMXG) $  KN ug J$& "Me[0и19Ius{؝kK"mGTÎ+ esAe͸kHPMHx7ȑ$bGʔhbE+2SCGFz06d4 q<Z \id ;,y lK扂&~"ـoV,e O.6BRuozt 'UmlBu%PB.e&FVPf >pVd7 , )I]5l͍Z$_i%5P=ПwvSI 8(pBu*hET0.5`lnِDFޭTr_椋Ob;7AozdړS=瀘g?P$ۺJ[ 5# 2FCxU0pijL|\nJfAQru9Nbkm^,z& fd?2;f!S)ȼo1$xUEdWmQ>&-̨*ơL9):XƼ~o5'wd=3$BCc=֔z>zR i*_J <{nSE}o Nݴ9 v75绽:5ñjlC+ʼҨ\1fJTw 1F{hEh&B$`}! R:jGf_%0ttIל[hrgȝZEҗNqAQ -Рaj{Ÿ<ٯD3 ǥw ݭ!neI9| ֌[LII%JʦS^ !L?;_{n F;!um\X믞/G.{ 58z?sfcŖ L/ ^t`9BԢr\#X<9>ʚ)6RÌ315I1 J,D nT m4c5O}sE=WoAfq/6ͧgy :p0#;ϫ}#„JHy6dlA833S%7LXHE"_y0NB 0{huC<3kG,6ʐ`Au?KLQ֞--94~2%e Bd~}Eݰ5$IBn:38g{.8,9`\S_|8ꁺMQ*WYhe 60f 404OnhACQc(7Gיb ژ8Fvt 2t&N[N-FhO ;tJꃺM b&Pm}I¨lV;5Drږ& M<WՇgچh$)i.).WaHܞh? +2zh AK^bٓ`7';UqEO G\ȿ5姕b /6T]?Iڒw83 DI|i[K}{6Ns.|#̿HS[V+HkTƔBp:) WM mqۥ'x"4 -^kL6! P‚bdmz>r4 +MoNظ)B2c>DO/[G!׿~#N `2Ofvc1gƳ&{zףӬ7U,ʺ ;oX-ϣ(5(8lfq9ƞ78t/c3-үj^V""G*.ɜԀ׃sb?fcxwCÀ#+Kg bO7;&䊐:~hx ٲi4qJԳ%umpX*o3|2tSՌJ~_y c>)㎚ U)<^f-EϋUP}8ՔuonZseL߃U?UTF .BI 6&?~j{T&3G^S8RV,Uu1^#``GpЫomFV~$OAnrmv'FQO@CUņPzWņc4' %Y,pG_ 0)%\<'uu nvVșOd;Ȯ^?4o[\J4֭nԏGkDIebЙE=e?#4u?lTdCkuWD#SflJ`a$ "5DŁkW91Pvo`⺔S+&cVƺ?Zfjeʲ, a[璴1萭D34z"[7%Dk~%$z%3]Lv<,^[>(9: )Cxt|XEUT`@Ϡҁfqn?l@YD,ƨ Tz,dU'*A*3%*8c^2CS2ŵqܺLF3f>\xw.cC? j. 'Q/ ZyB~TAB bx&#Ôe!{gbήJRX,)- }B BT)x愍>~<p~;Ԋޗ ƘXWE]]uVu uکﮏv~pkE 3%Sg?'2ʵ =H[%#Z#Q+mPQXC)ܨ1xɩxؒ r+oKM. 'dP*="%90)/238+яp8f[N7ge}],ݨk~?sj)esB E`}+z JpUE"IhDhm_o.?X.t*@H걡[`Rz!oDUzKƸ1"6]Is?Pd1/`{9U]8[8w֡;xq L᜝j0?}t[u#d}}zbA=:nk8WwWVDt;Y.91~c9MIU;<YObMV3)i0\ VL%pJwz2hÊ"hߧIQrE9c9CC硓,/g_ 6oD99FU"ܾek>[6to)J`̆ nszxZ ) FDC3Fܵwi(Oth=¬UVP; 7)w&;>Yx^wP)ׂ|6!{# /a6<202UpaeqkDGβhq0nCbI:2WEeB11}$%m <8SnWN͏bK!T.[p|ښGd`<mKbډG&gBv`:BxUd5L[BBe }G#^vLz , #eұ H BQNju{1#݃TDɳᠪ` )U$/T&渠ԌDʟEP21~҉/7ACP j L6+ H ]S,4PY1ʘL}Ҿ(Ns$ٵ%w= `(۬=Y-G.\~6'=Ъ8 oI WBް,KI g31da{)e%IP?7 P |*%[#cMs/-lOp2:wyW/y~A rn)kIxiBREl]R+]|[q#1yœk{_%dy\'WЄE'L?uQοT<Z'D"a7_zE,3yQv!EU=oi"y5ZaCflPr"bЂ^mӒ?bscyP;VEkQ,;6s @&BB c'/wcͶXP|06"&M6qlPY6uyr:yK >_;ֶܺaNSk8n S>!`!;ͱF7bG8I07*'յ=kjʪJ0I[>!%tS;^n59c]@Pv8+c&ZqD5?L!Nx-aVh~CY/юMPWW3㋉xp[I 61jΤj]j071EP|8.uJh`%_Vc K1dW26( 2U)o܈D%MQk4,0>GnhϼwP+ L>ʪtMʁaתcɠeP'%9O)8́k}@}' -6,PќhP?h:ۻohfw~5+;H,RT URH5v=,:0E{7X.leAe{MCeJS#czrbOl2β\~G$.H\*fNlFjձ Ի#d񺝕CjZUH[ҽF&I`˸<$^hmV @1/f|Yْ Y?/d}'DKX}&ֵAΰZ9b8X1*vC/XtP0 cꢼL!g2EIu9gu_i7/cVٙ6"I@jqL.: #P2 RY򞍉oܝX[ԍ]V~dDhf:W0YZA 2 !bϯ, BgG ɯN |dܢx]RJ[t MBaÁqRU8K5.*b@w;go?k >>Ovt]?1k/ƭrre=iC9Zue憃^vzt@RqK}ɑd S9zc߽~:|1A?v[ JrQ4Z =Yˢe6ǷNJ?F{qjۜC2\tŖiKX5:3ƖvNC4X}҅`B񻕌A<RH?CpE ܢ lIljDxG4;zc N.5 3zO!(-?qlOO }N\1X':*.DxDZBj1jX)Ρpݫ(d_]46׆TEm]q!+g8!B/_aNaDeP#EBsUA.O8|AaVX Nb| =h ae}vȵ& P5-37s?*Vym1q#sWbCD+P/M-sGaBeQNZBF,0Ps|d|²#>ﴩͺSʎwSTS1mD=XtaMY2-8D^9.MkDiHTvSw$NE`ԉ[Nd81f,\<7Ϛb*Ҧq w}d*+;̵pRf %?p*ym%6#X/y wVƂMG!ԷB& 'UZ+_c[5+ "~?" '9N=6 ':*>5IJߪ nq+3anA| kqfd0 c6mMȉFT"TCJI˔RGW;ebxmV>/jbD[y ;N꿾r`X +4Z0 /Sk'gOH Q5a-wi\v>mM=;ΑOYY՞h"BM7}4VUf72c÷jW즎4d4+>Ggu>c::}(Tq6oPoV$)rZd`kCުs"K#<ՑVS,ƶ?`j!S{Fw\pT& u  ƻ[ccW3Y~"ŕ.D!`?&PY$HGN.#RC~4Qڍ/ Gk?z21 vïI0>/p MeR|Vo-X@YuRss+QM[ Z'J򇁑0:{';CvfZK^=kDjxu-RqT>Ҁht,u֐d\6Z @l+ǽ9!wڴ2^ƣZ0Z4O-%OI,/[!?L"i g7*OrswXTGf]t-ˆ0*lf+H'L6˻6#{|RbuLB+Wf\ פ er6|L4';"\n$|!C񠝹t2I$>GxMC`t>k(mI#Xeqq?6hbwyAIyd@kim$* BK)+쇬x5D M+1[^wS}@wóeSB (1Eq 6&f'Ql~a!Vsߧ0Znb5@#M3l1F%My_֤΀d>0 FakBā}Dŝ6t=5X$>O޲QէQql sz2u<MRp(N%"2u@0vgh.M(Ğ]H芃J`F_6kڝ˹_le~-O'S:"II窍:h@qB3s+4PX=˅"t@D|܎@͟{mZX#[vOY(#ϋ8%G+ Iyl dO[Of[+_Rxx-fj Ґˀc9 A8= %@\qL0(*?㿒%]H>2W"˲Ho<)vX詓|.}=o'/8auկH`K][?#Fr>"hQ zCc 0g7#x(4ˉfa+6G O݉ҾEB~O"\)ZI?8ix'|6q!Hvp6sSQT}f6:9h P o]X'fCфE8)_㷐u`.rЊZkjIm2w Pso 9'{s@]H]b;%{x9" >[>ϓ@{7dO_a㟛Qn^H JkKgP,_*}+VIY}؎e$M9ayv}GV+߷vlYS+8 UI-◨HP5 CY/fy`? O#+Ǝ!P8ƱgP Z?̄6~,[ȴ/^(Q{wps|IyedQ0.Sch~)#f)̛g5ɋ7D䐌М+q:SAл/]TPqޖČE|n%tc {qҏAߝỀSdc9߳#?-*Qh&Hz]%ĈS4Ue CXTY`" XqNJ@s ^0EvB mb HxzK3:ڙ;q▓-ʯH5,%_EKU-hHxss5&9a}*JOGPrލ8_ B =c cEBVjĺdY蠝s3 )\>:f&\у Դ¶btфw`{ǖDI$) \]öTPIXbE :{+3%.#9&m:H.pJK#kpcZ/ȹ1*}`{WhtzeUC_LgO-u@g\ZCʋEw@jCaܻ٬šaQؖFÍJބNyGWT3# x0s1BZ}ĦսIQ*XEZ%F*u怬H*4.! ,8Lw=w7ִBk%ʋh_I YIͥsRѪ!`DOBd Fl w=zMup ϻ(5/Μ@h5*9̏o FCj$#O2×Vʸݯ*?~]KRH#O!H۠HehacsȒ?jɇǘ^pMe]TFQԽ&I K~C&~j,W#h(tI2 ;K3+cS߱ۗكRH i 8l*ke{Fm"yv]i;dQ`tu2_e`1 ~ dD5 ӛNe36qs ":/@!C eO+AdEJLe?{0in֞4 k0Xz&xmbJhT!\.4xV;P0ilpŠU]d+ö?AHJauMoyRMuu0EŵysH\Tmgq0Ky,@_!@_TbӄdzbFE6Avif'jJ m)$<Rm3wUwZ},3|7_vL63? W(49 @[fv◤}*E:]HscOt0 X:xՑi`DjWeydSn{&ء~9>f_Wo8~64X1^7+r+zBb - پk2as]kTA[14%Zbg_n/sylυeM;)!Ħ2]'R6ڎͦЂ(>[ӘDCyYrz9 s#tN^ЌC#NA x:9-Ek'/ Sn}P0b$-nځdK>q7K@{Y}\7K3y 6•̯4,gNvg Vy,jsE'F("G~`xpЀ:F(4RPoCX(dƒ^<{z7>h$,{E~o+-`zٴy2cIvAPbdcw],*~MfJ0(Bd@~`0We7GPQS­9a!pr'vd=&N<>GNx)Y$sV"Z2KH7ZFpȨ⮸ `[1MH> q_,(!`,{!u>D։KifWCsZs0+H(u>,B{ ].V3b5;wӚ 匣xa+8B<"/&0n k_krA9jLH.US6 3BvEq5!޷7إBU6f!qs>k>{ "˙&|?s1pzA$[~g1l Lh6Ql]J '|m<"Yi^MA@X.e͞/\:Wvdc!/  ]/EmSCiΗbe Xmc~ %Y 3mzs\rV9B Y=;TLR/D&8S,+=?#%5xƽ.@wAahtY`٧M;/>#Vo5鯛8N6Lb#et,tubO0^ vB0=rU#AenHX~b mtJs=Avu ~aӘߧb=oMJ68bj4~ e<:cØ{(8IbW}m6\QuJke+yq\~yz32<sdz:Ma1e.Z 8 ŠZn>Be H[tdIDz$ٌ?J&kTa#帇!<2kwZ }5_ Ҭ* ֓{<κl'yRS73L R(WAP!r G,4 MnWtBTS&](c'K YG耚:1󪍍",F,90*$8~f c%X,8_xGso.Z[t]T`&q^4v%MV/Yɢ)ת]i~_"+T)xe4|$EǤ @%M4d]z|H#X=ϋzBځ`J~B\>f}}*#h'_1cd;2'YpXD,wSaY+W8 ?PIhm[>cl󠎅ĦmE̗pH=!#7õSk֌e&|>ӱC6|Ɯzz|lOG-ܣ4l)ydm >ivż͂ѥ]`e|{FTe w(IR#?%GE6!;#ԕfJ{^b@&ΐj=8Uls64gm״;fKF|xШ=&r4u>lx yS-8kȭ)!AeCGM<A|zSi>- y]Xf ʁA4ZX=]jZ1t%<1VHcW&~r'WCXrvmc $aӎ, bHhuJ\ H^7qVe'Y.ߏzf IYr*gcVy+0d%NUT֡#UZGS%uQ]s} h\Tl Q\i}WזyÉh4CՇD Z ,e(UriZ'cU|s$qLd; _7 |TObH]j+H10{^E cנ*H'9VXj.wINYwݚk&{ʙwF{{I)9>d]+4(I6g:A`8- cˌK-+BL iYv3VN ˮ8\.\c4v)+pndVR%iۦҌaKbOi tCZ>v>Q:!d?a%>n)0Ҥ<d_t9;ދ0bJHGJ&]m6A8|s34^㒫gqu =Fk?;|ڮvz(F*|L7=VP?X>ʔwFSXr0{:|Al3KDiЊ_r'pUNƃc^C |S5E Dd뵝SW5myK!NQ IVj\z=`4zwG|rsAa |%eV@;~?Ssuy&F}i 3{c z[x.A lXX1S{ʫqʫ8UScB*-\̞Ibx.2 ƒzٔ(> G)AR*S `?ThYp],A<=2r Rԟݽ@ +vZ]i5LaSMg-A43[&'1Z}>oKTnwٴa .1VcS4hO2D[)dӘ-KҥbK$PSQzVf6ڻN 9@Q)ke^9H B[=zQv̟rا=Ny)|.MضsEj:I5ŠQ>!5ł@nNQGy[Zi/0(r\so k 8ĪSVz9ZZ_JCrVк'0*PQژpn\vZ KO35sYU8ӏ,5P+PUe#s! bfr}Ԧil\i)$m| ؙ΁yRa.j}qXxzLٯňeW'_$iuG%”mJdH8Q<&(Lcͭo ~<ݐGJ.š!ݪ&v֙de`I` 亖ڔ Т,p M$CwQK’X&+&c43OdYs9!4FaW=ܦs͵OcbO#/6Oc,,r&znnh GТ;hru#X15dEdx[1*:۽y7̤^%cgRGf\tf̄P \2 x[߅u!͹=P_%B#^as__pg}.;н6;]@#O(ehn3a R# ,Nb{ҮZ7D !baSqEBzIWX =@rBe Jzª(ЪuCT;˅PV`\$4 wk۾"~^ߡY Zwy͊`jpԨoSX\G+ Z\NJFYt 8v4yq q3mǬjG\ !7O\]. xqv#ŰAg&L[LG*]1֥ $<׿ָ6M&P< %_"Wl'9Vufrp; '0[:'H,Ʈ{wuf)@XaW';5w rA\Nlu 'OَN12,B1jޘ4ET}&fkX}E&8-)6G@~bF8& upL{Êc ͸sF3oQUk)yZ\$1 =tMvozH iZ2v;; BU-$"vVjg)6v_w!pYlG 9{hfspE/JcշYe_6_ @L {BZ )"_tLj-VJ;"eJO abeG{(]~[_>t,bf̪W, X]/[*mҡ{{̀?'RuW盅j{6 I>њbC0Dz1S`%6yspC{xrؼNSeA '0rL0$4x G~#}ť/ZUgϝ2\kTͭV[L 8ad : /~rfIL%?U r.iLÙpPQ/UaFA˰['?bMն rms,X꾸^^ujh>xu|TbQ,MV3]CNB֞(& c2j-O&6F?*a p'*%&Fkk Ss҅v8)L\y'(eѪg//?-[6PBLoSUdwPQTo /'/hjt ).,7̰0iHKzC/MC:4{֛p-ſX8YjtG'} F-oblP'Rrm1o *fW-̰k' |L%~wv8lfA~\ ' wtQ#޲ ^?GZmFg?nNߍ&IC)sM'SԜءwD].i= n ̷-?>6k4L-&;HF-3gu i'ؠ/"7$T#Vа˪_߶gFgI}/ܗ˕CDpgkbDv;cÕu+B/ |k[!aڮwB$І.`I3O =Q T_KɊ-wۜ=V^aЊyFD!C6)5Z/DCݱRZ~PeJSzIW1w[oNB_c;m 0$W `\D%2~d%ߡ``RL9\u[C]mt}mmN8{葕cbk"i d8Y5O/cϥAV.:$r7Pfl>n ˮ V._2FHEPp+Z)PW}/Uw BIĐǂ$e_T6{z zt Ě%8c%Iw&pX~G4}k\ͥw$K'Ԧ%fa3:8~tJ"ˍ)N)bJ .$Щ9ng%bbNPȁ;!(gOռ}E_z-yM':aw,iVf0/A?m߷]|rvБ Ն0p@t͊w1Wm.ʍ GzgD+u~{3߆V{ _/dr T1ʲu~7~p:$ˇ-*7t$~EB=Ty|h[K(?Z=tKm>$ۭ:el̸՛ b:U\/d0ѿ:+TFylҒR۞ԌVSh)*UYUSkAF=,| at_pnɳe;5ֽƭ8cu8@!f= o $&7zkQ{߯'<^tv sFj8]o/2|A TQm{X$gO0AD64! 7W? i]51E~7t۩2Z'`9ܛ$t VSϦ/(P6N2=*_1nz cfi:pȇFȠCd%늒+(jzi]Hﳩ0jMlQRH/ SdFkNqOH\FQӤM@7MdI 2Ќm|@_ tHҾf.;w\Li/aYpbEQAQ7/-%Pxג?mAKh 0bQ<~ɩ_L׊WoiwW;ٍFg 5P8{Kϭ~ȷf~<PgP@~q_!l2&s2@2,jzд{X) `f85,l)t\зfH :;.司XU@ 9 طvfT ͠[t l;꬯Fv-]p>Z~ޠ,:UE֪TbjNǹuI_~vz2?#S5˅%k Lț3 G=HêзӃt[|u'3X]2); &$[s.6BDzҌ̣b뫌@`x8qأ+oaLpޅ=ٚ0=[ *kN|Jҁ晏K}A͑o6An!!R)1\Rjj*&2GV5sJJjo͵G HtBߦI}|f 4dNAt=o++挛A)z*266xIj ӧ gahoZޗt*}NS&w+,>A.|艀Ch-H{p!l+ /y`?fe*΢9R_zЊ2|ʶY+DĢTV.D 71)FnD:*OUHպ$i)̼G#roP>1dM ƲۋC}(娪}Kpa#*#3p<EZtcPI뚀}Eehp fOTTt$O{/ 5R3%`M`0M䛯FCucҽ+>h0찈>x8at`GF8?UGj[zo ]:R o u0͡Cm%K ^b>XDˡZ ~$JV@v<z[a cV/7Ф7T!ri $SRo;,KE|cśFCQLC+2̄z{j[%9 ?{t;!X5y}O!]rŁj%Qʴҍ ?%\)?_qƵX'C'Gq'd_&9m'Zci&tGDԨ~\|gkZ +?Pу_ ^kytc/ UP z|zn~] gTkY%;]>%EFYAeȺ5kSۼ}k`ӡ~z6I_m_A눂3oEۮ b}ED4`gQiRS2sO좒3\cU,yǣsg)!a]L, wAGN碮&.S?&ZL`qt=,04G !@ 9Ru 5KoLqzuX<7(ZFHXХ'Uo[SFܱ|E"FCuu@LT^J9Q1N~(2GÐ9l?*75[a!"}@]6(ˇ='}?rNE.`V?2%=!]sz]rix:ϐZ7ru2z*Z1gsN2 |x&hpo.&WC^Pe4Eߎ2q K nv|ĊBN|Xj*#zjs#+ʜɼ.#2؍ClN\yց\IdI6+ecg瓯( ,K-Dѿ]EPí/1>GN@6Γ-'*륤 Oza.\PZPhPw|rџu⼩9t |E~nI`s.U ay{c%h fS709=*Mr _ x yTP*H|JlxYU P!n$\e>^nujE[ kTh1x|i9C!!!RGw5 N!c7~-pY~?RBuA%KPn34wD{kK7muG܂^ZPr'!zilGci.m.sBۏu5Z#Ph'$Yw4О^@*>Fc6|C+©ACyo>%?ƼUT,Ab;V/cE=Zwf"0쭥BUbw3C[X|xhԴrvxޚl;L<x ?|>LB5Lz1-?p H y{+ᫎ‹GZ-WT0ZLLdGF3ɛN;ߕ.6 &iGu/q0a{C3بcfQ@YӠ!*Q1gzkg, ֔GXinA] vdaC8Q-~#;ghl'!==@>1)Ʉm݈LZ2ƮYDCW7_HoEFԨ5Xf%ykV@SnvU_+ D~If}xKMR]DpH*HC1Zd@m[VC#Gr`k>P>մd)`[ x|&U(A\]_O5m*VL% ab %E(kvmT#X=_5hu]6sS|H X^<"-/0GLO8*X\^:$w^{avN}G-'Q2 %JG:ZڪD%K.~rԹʇUiWp~FQmd6 6 ʌ\D!)gAuK7u ; Lb5/+dnmb7~[ ?\ s=F9<|&)43jG'ȋ`X W"ūi'޷+A-M^Qv&ٍ~oحR3c[d?k8yRh*9ָ:65 Kb]>kP~|@tzj6]Zg2.Sݮ_,:3go//.z>.9܂շ!S@a_nIbs# vRpA Bhޞ]GqP8i-V RYleV\Q* -\Qx|SkjLlIz V1J-VVp0nSDwe~WBC,^8;FFC;Z{WV5l P@ %]w ս a ?(&2弃#O<ɋa@`uWɭI_aǵS