corosync-qnetd-2.4.5-lp152.4.12 >  A ^/=„q;iq05Z'"d20$sY@Rj%6fV$7ZJUM@W8 y*<^a߰c~*޹詨/&ؠh؅C$b9lΙ``T}b<}r2&ndFuW ZÔkՔ:RZveJ(bvL}7MfrM'OlUE\_=BypHuT?uDd " U +7[ah< <  V  p       <   (h(S8\29$2: :2=mr>mz?m@mFmGm Hm In Xn Yn,\n` ]n ^o bpcpdq%eq*fq-lq/uqD vqxws xs ysztHtXttttu@Ccorosync-qnetd2.4.5lp152.4.12The Corosync Cluster Engine Qdevice Network DaemonThis package contains the Corosync Cluster Engine Qdevice Network Daemon, script for creating NSS certificates and an init script.^build70q>openSUSE Leap 15.2openSUSEBSD-3-Clausehttps://bugs.opensuse.orgSystem/Basehttp://corosync.github.io/corosync/linuxx86_64getent group coroqnetd >/dev/null || groupadd -r coroqnetd -g 701 getent passwd coroqnetd >/dev/null || useradd -r -g coroqnetd -u 701 -s /sbin/nologin -c "User for corosync-qnetd" coroqnetd 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 corosync-qnetd.service ; do sysv_service="${service%.*}" touch "/var/lib/systemd/migrated/$sysv_service" || : done else for service in corosync-qnetd.service ; do # The tag file might have been left by a preceding # update (see 1059627) rm -f "/run/rpm-corosync-update-$service-new-in-upgrade" if [ ! -e "/usr/lib/systemd/system/$service" ]; then touch "/run/rpm-corosync-update-$service-new-in-upgrade" fi done for service in corosync-qnetd.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 exit 0 PNAME=corosync-qnetd SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi # Upgrade if [ $1 -eq 2 ]; then cp /etc/sysconfig/corosync-qnetd /usr/share/fillup-templates/tmp.corosync-qnetd_sysconfig 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 corosync-qnetd.service || : fi elif [ "$FIRST_ARG" -gt 1 ]; then for service in corosync-qnetd.service ; do if [ ! -e "/run/rpm-corosync-update-$service-new-in-upgrade" ]; then continue fi rm -f "/run/rpm-corosync-update-$service-new-in-upgrade" if [ ! -x /usr/bin/systemctl ]; then continue fi /usr/bin/systemctl preset "$service" || : done for service in corosync-qnetd.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 corosync-qnetd.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 corosync-qnetd.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 corosync-qnetd.service ) || : fi else # package uninstall for service in corosync-qnetd.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 fiif [ -f /etc/sysconfig/corosync-qnetd ]; then rm /etc/sysconfig/corosync-qnetd fi<H@qjm AA큤A큤^^^^^^^^^^^^^24599878392548afccb3a159bee329385c820fdd0b2ec6853da252d73f46c8261339c08d149ae8713439eabc95e5e11de2bc63cd3179e6bfce2a9eae028ceac04a1924ebf194f76cf941cd089c2bfc0ab377aa6297c410148374123336adabf68f8f8402a705ad0f2e06e3dc7811f3544783f90439c65c2b0e38727f28772deb13fee646101f7174184a1506909910629a6b4d9e1c9e96c25ad7e9fd4f56961f3f48bb5f102a79d02305cd27b6a2f5818a818635b2703ddc3fc0ab16147bad8971a06f658e65f187af750b883aa51851b47f27948353db609cf396f7a5e9e675506e887e9503ec0dca3ce037cad1e524bf7bb3210ad587a900c7fe71f017a0dddb180a695c9b7de1230e3033f2139f6093d521d93a0219330e504beca6cf90edservice@coroqnetdcoroqnetdrootrootrootrootrootrootrootrootrootrootrootcoroqnetdcoroqnetdrootrootrootrootrootrootrootrootrootrootrootcorosync-2.4.5-lp152.4.12.src.rpmconfig(corosync-qnetd)corosync-qnetdcorosync-qnetd(x86-64)@  @@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(corosync-qnetd)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libnspr4.so()(64bit)libnss3.so()(64bit)libnss3.so(NSS_3.2)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libssl3.so()(64bit)libssl3.so(NSS_3.2)(64bit)libssl3.so(NSS_3.7.4)(64bit)mozilla-nss-toolsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)shadowsystemdsystemdsystemd2.4.5-lp152.4.123.0.4-14.6.0-14.0-15.2-14.14.1^1^t@]@]]VZ@Z@ZZЛZ̧@Z%Z1@ZqZV@ZN@ZKt@ZC@Z&@Z@Z@ZC@ZNYY@Y@YW@YY@Y@YYf@Ycl@Y7Y6@YY@XsX@XF@X@X@W_@W@W~UU4@U@Tl@Ti@Ti@XinLiang XinLiang Yuan Ren Yuan Ren Yuan Ren bliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.comrbrown@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.comjengelh@inai.debliu@suse.comjengelh@inai.debliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.combliu@suse.comdimstar@opensuse.orgLed Led - Revoke the patch bug-1163460-totemip-Add-support-for-sin6_scope_id.patch Deleted: bug-1163460-totemip-Add-support-for-sin6_scope_id.patch Reason: That path will cause problems while doing rolling upgrade, see bsc#1168771- Fix bsc#1163460 Corosync does not support link-local IPv6 addresses Added: bug-1163460-totemip-Add-support-for-sin6_scope_id.patch - Fix bsc#1166899, return value of "corosync-quorumtool -s" was not correct Added: bug-1166899-quorumtool-Fix-exit-status-codes.patch- Packaging bug updating Corosync(bsc#1155792) Some noisy output from Tumbleweed caused by RPM macro not fairly used Make sure corosync sysconfig keep original configured firstly(bsc1153502) Store the tmp file to a more security directory- Replace corosync-2.4.5.tar.gz with a clean source.tar.gz(bsc#1144200) The reason is some binaries left in corosync-2.4.5.tar.gz- corosync-2.4.5 upgrade(bsc#1144200) block_unlisted_ips block package from ips not in nodelist Qnetd now supports updated NSS database format Partly fixed problem with ifdown (only for UDPU) Added: corosync-2.4.5.tar.gz bug-1001164_corosync.conf-example.patch corosync-init-lockfile-path-error.patch Deleted: corosync-2.4.4.tar.gz 0003-fix-tmpfiles-create.patch 0004-mark-corosync-as-a-static-service.patch 0005-do-not-convert-empty-uid-gid-to-0.patch 0007-add-config-for-corosync-qnetd.patch 0009-bsc#1088619-add-version.patch 0010-qdevice-net-instance.c-optarg-should-be-str.patch 0011-NSS_NoDB_Init-the-parameter-is-reserved-must-be-NULL.patch 0012-cpg-Inform-clients-about-left-nodes-during-pause.patch bnc#872651-stop-cluster.patch disable-build-html-docs.patch Renamed: 0001-coroapi-Use-size_t-for-private_data_size.patch -> upstream-afd97d7884940_coroapi-Use-size_t-for-private_data_size.patch 0006-Fix-compile-warnings-with-GCC-7.2.1.patch -> Fix-compile-warnings-with-GCC-7.2.1.patch 0008-bsc#1083561-upgrade-from-1-x-y.patch -> bug-1083561_upgrade-from-1-x-y.patch bnc#882449-corosync-conf-example.patch -> bug-882449_corosync-conf-example.patch 0002-fix-ifdown-udp.patch -> bug-1032634_fix-ifdown-udp.patch bsc#1001164-corosync.conf-example.patch -> bug-1001164_corosync.conf-example.patch- cpg: Inform clients about left nodes during pause(bsc#1091593) Added: 0012-cpg-Inform-clients-about-left-nodes-during-pause.patch- NSS_NoDB_Init: the parameter is reserved, must be NULL(bsc#1090996) Added: 0011-NSS_NoDB_Init-the-parameter-is-reserved-must-be-NULL.patch- corosync-2.4.4 is available now(bsc#1089836) man:fix in corosync-qdevice.8 quorumtool: remove duplicated help message cfg: nodeid should be unsigned int coroparse: Use readdir instead of readdir_r wd: fix snprintf warnings Fix compile errors in qdevice on FreeBSD qdevice: mv free(str) after port validation Fix various typos Fix typo: recomended -> recommended man: support SOURCE_DATE_EPOCH configure: add --with-initconfigdir option Use static case blocks to determine distro flavor Use RuntimeDirectory instead of tmpfiles.d coroparse: Do not convert empty uid, gid to 0 sam: Fix snprintf compiler warnings quorumtool: Use full buffer size in snprintf man: Add note about qdevice parallel cmds start sync: Remove unneeded determine sync code sync: Call sync_init of all services at once corosync.conf: publicize nodelist.node.name totemudp[u]: Drop truncated packets on receive logging: Make blackbox configurable logging: Close before and open blackbox after fork init: Quote subshell result properly blackbox: Quote subshell result properly qdevice: quote certutils scripts properly sam_test_agent: Remove unused assignment qdevice: Fix NULL pointer dereference quorumtool: Don't set our_flags without v_handle qdevice: Nodelist is set into string not array qdevice: Check if user_data can be dereferenced qdevice: Add safer wrapper of strtoll qdevice: Replace strtol by strtonum qnetd: Replace strtol by strtonum main: Set errno before calling of strtol totemcrypto: Implement bad crypto header guess cpg: Use list_del instead of qb_list_del totemcrypto: Check length of the packet totemsrp: Implement sanity checks of received msgs totemsrp: Check join and leave msg length totemudp: Check lenght of message to sent qdevice msgio: Fix reading of msg longer than i32 logsys: Avoid redundant callsite section checking man: corosync-qdevice: fix formatting vs. punctuation man: corosync-qdevice: some more stylistics man: fix cpg_mcast_joined.3.in libcpg: Fix issue with partial big packet assembly totempg: Fix fragmentation segfault totempg: use iovec[i].iov_len instead of copy_len totempg: Fix corrupted messages cpg: Handle fragmented message sending interrupt corosync.aug: Add missing options systemd: Delete unnecessary soft_margin Added: corosync-2.4.4.tar.gz 0010-qdevice-net-instance.c-optarg-should-be-str.patch Deleted: 0007-sync-Call-sync_init-of-all-services-at-once.patch 0008-wd-fix-snprintf-warnings.patch 0009-add-config-for-corosync-qnetd.patch 0010-qdevice-mv-free-str-after-port-validation.patch 0011-libcpg-Fix-issue-with-partial-big-packet-assembly.patch 0012-totemudp-u-Drop-truncated-packets-on-receive.patch 0013-logging-Make-blackbox-configurable.patch 0014-logging-Close-before-and-open-blackbox-after-fork.patch 0015-coverity-fixes.patch 0018-bsc#1089346-corosync-Integer-overflow-in-totemcrypto.patch corosync-2.4.3.tar.gz Renamed: 0009-add-config-for-corosync-qnetd.patch -> 0007-add-config-for-corosync-qnetd.patch 0016-bsc#1083561-upgrade-from-1-x-y.patch -> 0008-bsc#1083561-upgrade-from-1-x-y.patch 0017-bsc#1088619-add-version.patch -> 0009-bsc#1088619-add-version.patch- (CVE-2018-1084) VUL-0: CVE-2018-1084: corosync: Integer overflow in totemcrypto(bsc#1089346) Added: 0018-bsc#1089346-corosync-Integer-overflow-in-totemcrypto.patch- UNKNOWN version in corosync pkg-config(bsc#1088619) Added: 0017-bsc#1088619-add-version.patch- [Build 489.1] Corosync is not working after upgrade from sle11sp4-ha to sle15-ha(bsc#1083561) Added: 0016-bsc#1083561-upgrade-from-1-x-y.patch- some coverity fixes for corosync on upstream(bsc#1083895) Added: 0015-coverity-fixes.patch- corosync exposes itself for a self-crash under rare circumstance(bsc#1078412) Added: 0013-logging-Make-blackbox-configurable.patch 0014-logging-Close-before-and-open-blackbox-after-fork.patch Modified: remove unncessary git commit messages 0001-coroapi-Use-size_t-for-private_data_size.patch 0002-fix-ifdown-udp.patch 0005-do-not-convert-empty-uid-gid-to-0.patch 0008-wd-fix-snprintf-warnings.patch 0010-qdevice-mv-free-str-after-port-validation.patch 0011-libcpg-Fix-issue-with-partial-big-packet-assembly.patch 0012-totemudp-u-Drop-truncated-packets-on-receive.patch- totemudp[u]: Drop truncated packets on receive(bsc#1075300) Added: 0012-totemudp-u-Drop-truncated-packets-on-receive.patch- issue with partial packets assembly when multiple nodes are sending big packets(bsc#1074929) Added: 0011-libcpg-Fix-issue-with-partial-big-packet-assembly.patch- qdevice failed to run(bsc#1074276) Added: 0010-qdevice-mv-free-str-after-port-validation.patch- add support for corosync-qdevice in yast2-cluster and bootstrap(bsc#1070961) Added: 0009-add-config-for-corosync-qnetd.patch- wd: gcc shows snprintf warnings(bsc#1071187) Added: 0008-wd-fix-snprintf-warnings.patch- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- corosync race condition when node leaves immediately after joining(bsc#1067958) Added: 0007-sync-Call-sync_init-of-all-services-at-once.patch- gcc: snprintf gives warning: ‘%s’ directive output may be truncated writing 8 bytes into a region of size between 1 and 255(bsc#1066090) Added: 0006-Fix-compile-warnings-with-GCC-7.2.1.patch- coroparse: uidgid with empty uid or gid results into add uid 0(bsc#1066585) Added: 0005-do-not-convert-empty-uid-gid-to-0.patch Modified: 0005-do-not-convert-empty-uid-gid-to-0.patch, check whether the uid, gid is empty before calling strtol- Upgrade corosync-2.4.2 to corosync-2.4.3(fate#321385) doc: document watchdog_device parameter Main: Call mlockall after fork Totempg: remove duplicate memcpy in mcast_msg func Qdevice: fix spell errors in qdevice logconfig: Do not overwrite logger_subsys priority totemconfig: Prefer nodelist over bindnetaddr cpghum: Fix printf of size_t variable Qnetd lms: Use UTILS_PRI_RING_ID printf format str wd: Report error when close of wd fails votequorum: Don't update expected_votes display if value is too high votequorum: simplify reconfigure message handling quorumtool: Add option to show all node addresses main: Don't ask libqb to handle segv, it doesn't work man: Document -a option to corosync-quorumtool main: use syslog & printf directly for early log messages votequorum: make atb consistent on nodelist reload Fix typo: Destorying -> Destroying init: Add doc URIs to the systemd service files wd: fix typo corosync.conf.5: Fix watchdog documentation corosync.conf.5: add warning about slow watchdogs wd: remove extra capitalization typo corosync.conf.5: watchdog support is conditional notifyd: Add the community name to an SNMP trap Logsys: Change logsys syslog_priority priority totemrrp: Fix situation when all rings are faulty main: Display reason why cluster cannot be formed totem: Propagate totem initialization failure totemcrypto: Refactor symmetric key importing totemcrypto: Use different method to import key main: Add option to set priority main: Add support for libcgroup totemcrypto: Fix compiler warning cmap: Remove noop highest config version check qdevice: Add support for heuristics Spec: drop unneeded dependency Spec: make internal dependencies arch-qualified cmap: don't shutdown highest config_version node totemudp: Remove memb_join discarding Spec: fix arch-qualified dependencies Include fcntl.h for F_* and O_* defines totemudp: Retry if bind fails Remove deprecated doxygen flags man: Fix typos in man page man: Modify man-page according to command usage Remove redundant header file inclusion upstart: Add softdog module loading example Added: corosync-2.4.3.tar.gz Removed: corosync-2.4.2.tar.gz bsc#1047860-add-version.patch 0001-Logsys-Change-logsys-syslog_priority-priority.patch 0001-logconfig.c-make-logging.syslog_priority-and-logging.patch 0001-totemconfig.c-Fixed-Evicted-from-CPG-membership.patch 0002-Main-call-mlock-after-fork.patch 0003-totemrrp-Fix-situation-when-all-rings-are-faulty.patch 0004-main-Display-reason-why-cluster-cannot-be-formed.patch 0005-votequorum-Report-errors-from-votequorum_exec_send_r.patch 0007-Make-corosync-work-when-FIPS-mode-is-enabled.patch 0008-main.c-add-option-to-set-priority.patch 0009-totem-Propagate-totem-initialization-failure.patch Modified: bsc#1047860-add-version.patch: change version to 2.4.3 corosync.changes: add changelogs corosync.spec: remove unnecessary patches Renamed: 0006-coroapi-Use-size_t-for-private_data_size.patch -> 0001-coroapi-Use-size_t-for-private_data_size.patch 0010-fix-ifdown-udp.patch -> 0002-fix-ifdown-udp.patch 0011-fix-tmpfiles-create.patch -> 0003-fix-tmpfiles-create.patch 0012-mark-corosync-as-a-static-service.patch -> 0004-mark-corosync-as-a-static-service.patch- wrong "service_del_postun corosync.service"(bsc#1060767) Modified: corosync.spec, remove service_del_postun in postun of corosync- Restore conformance to shared library packaging guideline. - Remove redundant cleaning in %install and %clean.- corosync.service should be marked as a static service(bsc#1055585) Added: 0012-mark-corosync-as-a-static-service.patch- Fix RPM groups.- L3: corosync: assert(sender_node != NULL) fails after tearing down a network interface(bsc#1032634) Added: 0010-fix-ifdown-udp.patch - Fix rpmlint warnings Added: 0011-fix-tmpfiles-create.patch- some errors in spec file(bsc#1047862) Modified:corosync.spec 1) as in openSUSE:factory, there are %define, but bcond_with coudld be toggled by osc command , change %define to %bcond_with and %bcond_without 2) change service_del_postun to service_del_preun, since service_del_postun is not a right macro 3) remove macro tpmfiles_create define from corosync.spec.- make corosync.spec uniform (bsc#1051385) Modified: corosync.spec 1. there are some lines are commented in corosync.spec, will define new macro to make these lines uncommented 2. in former, xmlconf, rdma and snmp were disabled, these features are wrongly enabled, will disable them- some upstream fixes for corosync(bsc#1048259) Added: bsc#1047860-add-version.patch 0007-Make-corosync-work-when-FIPS-mode-is-enabled.patch 0008-main.c-add-option-to-set-priority.patch 0009-totem-Propagate-totem-initialization-failure.patch Removed: bnc#867767-add-version.patch 0007-improve-corosync-keygen.patch(since this patch is not for corosync v2.x) Modified: corosync.spec, add judgement whether /etc/sysconfig/corosycn* exist before remove these files- some errors in spec file(bsc#1047862) Modified: corosync.spec - improvement for corosync-keygen(bsc#1047861) Added: 0007-improve-corosync-keygen.patch - 1047860corosync report wrong version number(bsc#1047860) Modified: bnc#867767-add-version.patch- some Fixes from upstream(bsc#1043045) Added: 0004-main-Display-reason-why-cluster-cannot-be-formed.patch 0005-votequorum-Report-errors-from-votequorum_exec_send_r.patch 0006-coroapi-Use-size_t-for-private_data_size.patch[patch-lost-in-sle] Missing issues in openSUSE:Factory/corosync(bsc#1041587) add change log for upgrading corosync to v2.3.6 and make this change log contain all records in SLE12 SP3 make the format consistent- totemrrp: Fix situation when all rings are faulty(bsc#1039215) Added: 0003-totemrrp-Fix-situation-when-all-rings-are-faulty.patch- calling mlockall before corosync_tty_detach is noop when corosync is executed as a daemon(bsc#1038147) Added: 0002-Main-call-mlock-after-fork.patch- [upgrade] Changing the pre-upgrade role for node failed(bsc#1030437) Added: 0001-totemconfig.c-Fixed-Evicted-from-CPG-membership.patch Removed: 0001-totemip.c-Fixed-Evicted-from-CPG-membership.patch- L3-Question: corosync logging priority takes no effect(bsc#1023959) Added: 0001-Logsys-Change-logsys-syslog_priority-priority.patch 0001-logconfig.c-make-logging.syslog_priority-and-logging.patch- Corosync 2.4.1 still produces libvotequorum.so.7.0.0, just like Corosync 2.3.6.(bsc#1013842) Added: disable-build-html-docs.patch upgrade to corosync-2.4.2: Man: Fix corosync-qdevice-net-certutil link man: mention qdevice incompatibilites in votequorum.5 Qnetd LMS: Fix two partition use case cfg: Prevents use of uninitialized buffer- upgrade to corosync-2.4.1(bsc#1004967) Added: corosync-start-stop-level.patch Deleted: Config-Flag-config-uidgid-entries.patch cfg-Prevents-use-of-uninitialized-buffer.patch cts-Make-it-run-with-pacemaker-1.13.patch get_cluster_mcast_addr-error-is-not-fatal.patch totemsrp-Addition-of-the-log.patch modified: bnc#867767-add-version.patch, change version to 2.4.1 corosync-2.4.1: Low: totemsrp: Addition of the log. cts: Make it run with pacemaker-1.13+ Config: Flag config uidgid entries Spec: Qdevice require same version of corosync corosync-2.4.0: qdevice and qnet config: get_cluster_mcast_addr error is not fatal some typo fixesupgrade corosync-v2.3.5 to corosync-v2.3.6, and backport patches from v2.4.2(FATE#322113, bsc#1020550) Added: Config-Flag-config-uidgid-entries.patch cfg-Prevents-use-of-uninitialized-buffer.patch cts-Make-it-run-with-pacemaker-1.13.patch get_cluster_mcast_addr-error-is-not-fatal.patch totemsrp-Addition-of-the-log.patch Removed: corosync-cts-api-error.patch v2.3.6 - logconfig: Fix logging reload disabling logfiles - wd: Warn if values are out of range - parser: WD Read type correctly from corosync.conf - Add some more RO keys - Reapply config defaults corosync.conf reload - schedwrk: Cleanup and make it work on PPC BE - cmapctl: Handle corosync errors in print_key func - Adds doxygen stubs to include directory - Add clang-format configuration file - wd: make watchdog device configurable - logging: Use our own version of basename - logsys: fix TOTEM logging when corosync built out of tree - parser: Make config file parser more hierarchy - totemconfig: Explicitly pass IP version - cpg: Handle ipc error in cpg_zcb_alloc/free - cpg: Memory not unmapped in cpg_zcb_free - totempg: Fix memory leak - Fix spelling errors - Add section in manual title for cpg_zcb_free 3 - Add section in manual title for cpg_zcb_alloc 3 - Update corosync.spec source link - Update gitignore files - Remove all links to old ML - totemsrp: Fix clang warning (tautological compare) - configure.ac: Make location of .pc overrideable - Remove a few unused variables and functions - configure.ac: We don't need no C++ compiler - configure.ac: Remove deprecated AC_PROG_LIBTOOL - configure.ac: make foreign apply to all Makefiles - Remove unused, obsolete check - Fix detection of qb_log_thread_priority_set - cpghum: Fix type of recv_crc - Check for fdatasync - Fix detection of warning flags for clang - quorum: Display node id as unsigned int. - cts: InitClusterManager is now BootCluster - totemudp: Move udp bind() so that multicast works with IPv6 - cfgtool: Display nodeid as unsigned int - votequorum: Don't send multiple callbacks when nodes join - man: Add synopsis for cpg_zcb_alloc and free - man html index: Update index - votequorum: Make sure cs_error_t is defined - Doxygen fix for cmap_iter_next() - configure: Correct help entry for logdir - totmesrp: Fix typo in log message - configure: typo in include - man page: Correct option letter for DBus - wd: fix setting of watchdog timeouts - CFG: Prevent CFG orignating messages during SYNC- Default token timeout was 5000 ms in SLE 11 SP4, but is 1000 ms in SLE 12(bsc#1001164) Added: bsc#1001164-corosync.conf-example.patch- Fix: [s390]Upgrade from SP1-GM + HA to SP2-RC2 +: Failed to start Corosync Cluster engine(bsc#996230) - modify corosync.spec to remove "chkconfig --add" - remove corosync-devel and require lines from baselibs.conf- corosync process still exists when stop pacemaker service(bnc#988683)- remove git files from tarball(bnc#941910) - modify corosync.spec to delete logrotate.dupdate from v2.3.3 to v2.3.5 (bnc#939328) v2.3.5 - Log: Add logrotate configuration file - totemsrp: Improve logging of left/down nodes - totemconfig: Check for duplicate nodeids - Really add cpghum - cpg: Add support for messages larger than 1Mb - Handle adding and removing UDPU members atomically - add patches: * corosync-cts-api-error.patch * bnc#867767-add-version.patch- mv the place of corosync.conf.example*(fate#318190)- Replace systemd BuildRequires with pkgconfig(systemd): we do not require the full installation / dep chain of systemd.- fix bashisms in mem_leak_test.sh script - add patches: * corosync-2.3.4-fix-bashisms.patch- fix bashism in preun script/bin/sh/bin/sh/bin/sh/bin/shbuild70 1591680511 2.4.5-lp152.4.122.4.5-lp152.4.122.4.5-lp152.4.12qnetdcorosync-qnetdcorosync-qnetdcorosync-qnetd-certutilcorosync-qnetd-toolcorosync-qnetd.servicerccorosync-qnetdcorosynccorosync-qnetdsysconfig.corosync-qnetdcorosync-qnetd-certutil.8.gzcorosync-qnetd-tool.8.gzcorosync-qnetd.8.gz/etc/corosync//run//usr/bin//usr/lib/systemd/system//usr/sbin//usr/share//usr/share/corosync//usr/share/fillup-templates//usr/share/man/man8/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Leap:15.2/standard/84f17d464a502cd64ef2798597b4b7af-corosynccpioxz5x86_64-suse-linuxdirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, BuildID[sha1]=10bc0062bb7db7be5f3dc4e69b27223a55802f43, for GNU/Linux 3.2.0, strippedBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, BuildID[sha1]=74f1860ca70507a77fc7596c4e5ff28ba9c0e961, for GNU/Linux 3.2.0, strippedASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)  RRRRRR R R RR R RRRRR R R RRRS`Aa( eif [ ! -f /etc/sysconfig/corosync-qnetd ]; then mv /usr/share/fillup-templates/tmp.corosync-qnetd_sysconfig /etc/sysconfig/corosync-qnetd fi/bin/shutf-8432c2234829372f9ca62a4c095323e59ee4674ba008aa57e707ef98829610462?7zXZ !t/x֥] crt:bHW ma>L{ 4{%ET>TEHFY0MA׍Gg>F*|r:@f)6C2تEŸuus0]5w--qYnv _RԹQ9{B^;7RL۳o>5FLcrS[wEz^t C.p6c5_qϾc o,Qb2d/ΰAKDb x~TDKye#FyP<5ϲ 1 ҉M^)B&(}^eb#J;tc io`.CnmϾm Yђ(]b?~pQ]\a[W?3т 贈MD)se==%s̀^~bUoMеWX#%>QEkۀSgFV=|- *4ܒ~&^l4Ñ#fi<%ߩv= p-[g( I + 'W2QQ^{-nWuжc9!OjUk#_X-I4L[9BJ14k/&K⭢R3 ׸{7$9%F (9)HOO4eA_ |?)H tr'C:W h{A5U* EldU C83nYH)MDu}eC@f9yIu!Z=&rdIhQhv߳13g2 25$T{cϬplݕl6R^Ɯ5PAG?{x,M8Fu}|{NCGx3xc^ K ^'x-Mg.). w*1 ;O,mg!|{6ci&)8& !x蹇s9q,= pF| ֛٥^D'̓O&իDʑ[swc ?@>RT Ec>'K~m %|C ʩB Vi#2}nOzv?O@rTDmi'3Ϥ-6 b@mEt-3fV!o7;JxhPS!T _Ă`$j{J(H[ZUs"r2=sv'Jv%mNã>?UR4 %$2 ?ry:$. QW: p8-x;;Cu'%);bycb{tCqE=wŽd܂0uDQoG] 7q('90Ek6ʓB@`6\Y(0|e>I3I4?c\%*' ,"v%ܡjmk7|-Hmq/WTm& mV_. Sծ )SW(LJhqN5#_8C>iٕ`o(Fŧ9F<vR޶^BT.`L6R)O1Z_: ˤe} A M7vmA3TU,d9lcH G /TXZü߬/y5:T0zBgytoS" )_9@&RYV@ тQ(2S/\BI]^ '4JڛCMofԛr~pf$A TEK}‡_MJE| F"cCH>Ty~e׃ +1ȚA$#[iݯ7,]z@ utg]_-Ɵ1YxԾM?й-E˚dx,p YCt! %N~{PCp+e bդQTN"1s]PNM Ԗ,-8 yj"E0p(tI^/Kxj'@Rmk>7׳y|JQTxs.RX]L1 ̶cԀO̝)PVyJlg}$?oX^s@%U [>i:Y ZVՌoo>0vcYer"35ľ<(I91c]vOQgǔEtW3Lt' b]ŋ >jb3g :.%)BX܅%I0TLm:6p]&wW "UQ|Pk{JY;8']Ra0=Lt$uwY1\y]2]ńT W+ڑ]M9`㿝jkO\&QY $}C{YWfp P#6t{}60\A P[PPOz="x<&0?p>?ySr~} oF3q7SRVڞFϢ)3Z)r#̱Lb$^,0n4SSpEUhELWj<kL AW8dbUrX]e& \?9L%$ FaQzwr5pdg1VSyB.%+jQuu֓Hb68rI4giN"4Ƃʑ~>ZekKf [= Yۀf˼M%IP;:+~ĘP)y ݑ1w$fξ^7q 3rI⹈G%,[ʱ9Pxehޚ#ۢڢÌrX3AXPL)f(j1*"\ l yR(MgXP/P SI#+q`*XBml7#'^aQa5LnI@uMW@"SŒ]d rg|ERD[};6M./܄/8)WDFidOPwLIJxQؤ{ mZJ,O K-ni$T⥲bAWxFzvrM%K+(24ÆixK%KP'd\ h2?z?9#10&}mo7J|ͣ7I WQ;fjoGY؀.ad? 7$R'V NRiR%>I_яh8b*@.U 9BBezՖ82s6,P|g +2Ad?ng80zCr'^0 CK6/EWeC#EțJx1\N~!R9#:TcJ[Ǜ+0V %vJ 07gz* P^$$_}Ч6Q_oO-B/:<:utƏbt{HbUI4TRY)ͽ2"mDﴼ*$O%o∅r8;&A&0f'D^`vxcHݱr>]w}'lx,/0m<^yv\0& ")Jf0j+V;Ra%AΆ>/6 Zw-k_!dk7?PQ3]"6kCQz ѿ0-bnW _5_Tv*?Enin͖@I:Q:hЍL)O?uUA {T׋X7FԝrJiPjLJ M~^J:j\+H8,53T..x;i-1~f-ݱ jUlޥ\]O"Wfhw=zRf Mݗ<'n@gr<̣A\e6hfx+R3( yCJ"h=bZkDB'C  E >7@Q :9.N&l.L,֊ CZߓZ_Z4YOf|#pr#WLĀVjx<pPT0 e=; |b3Voӻ5YY))!XĠkkGxt;ؐiD)lw8"5, $; WxlrA#}`u?eם4_IYf0ynF1MD2(ӡ<䌔aLr݃D(جK@@_!lZt% Q0+ _=NbosR0V?޳\b= 5ql* >zNqs *bip9v0cmif#ځDO82%@Xy`vrEvM=w~e։ c>XfWGRu}~_o`\QɘյY~i4{I{3hz5{X{gǺ?Y!tlPK|eֽcEqs"1mҟn'qK w;ˬ%)#V֫9łT*Q]އX ZtaU[kH2&d]6b@Jٔ[P 0anXFmm-Uz{sU5U~tN3:[egh7 wb {,raG+Azk=g([D-^CN`3t3+6#>騹flgo1L:p@Jha#:Rz.f&!iZܦ*G^g~ukͦvh4 UoE+ZMLk6Ӈ]hX L/P ˜MB* b3Ȥ@_u&]1Ǟk7ЈAՇLh7vsYx,t/awE6jSJbzM鐆:Epla]TA+r,Z3߹ueU> K 2$ =ɒunx" Ie%p>pa'A5MΟ=x2ƖhG%{ߩpC:]eê]Elڑ#9![B@n2 ߮ϻD%:պ6Ǻ^a+rd:쟅aK֓^;JS%|ERCy}2cEtv@m҅q#VoV7I'- O3v|չ3ժJ/==X,v%I 9Va}U͒҈ ZXU[(]ĵPPL;C=0 d"JɁq TK^a/Dh|&ʗ*9x+_ P@Lp+q $P}WdPVl cWOKA{@FA1227GUV}UgݳI)%?MvsNP@W:n.ebuו!7iOKxR1V1x@sPף%p1;@Ouep&CMiCCWwұ,+(.%ݪ^eS',zߙѫf UX Mf΂$Bp!\cTu`(F: z( nn5|A[La0of6v,lC"-Ip?է9ʬ2#l9N׆o RУ9T?5ǎWa̶K<=%9GGVJr4sZ$<{f ":ƨP_8`,hq]Rwu)8z $s{/Dزh sm?l!Q VƇO</GUzS|)~Z>f(HV^܊l){K/2g>UVѧEh+. U ^7ՆόFA \fO H,fV/ъcsN~3^ۖ]ݟ1Vq0U qp TKPi `\rSTB581k *r5S)̔sSGSAav0m-` +ogOz{Xٹg/ofkuexeS+_#uZ\YG%(v4p -=pfLY7ez@xCCBhBW~CjN9$B"cN=6c*j[>/f{H-f!Lr+p;TeY*jK+Dd_wj9a7OЭqcߨ_!d˔]v-~=کI\V^VfQkk?QjgIZevS'PJ`X^99Y8{IY'+c!  2 5wT @CYAx\O ^Vwe${kgiFr.RwֺwV<բjhF؈o݈P-Z$q4{_gkJx!]TH kZ}rx3NƳ+-(\3冖d%%Z.֐S+⩧iHHïLyݗE7^2.-uHWV1}qy⼯&ow4(E5(t}= >Ȍ ,IqGƕ rs V‰9[%'aY褾hu3X¼t!e$C u)QyKpwhTuUܝ-Hqxw1Lj |6vV&E1C#ܑݨlr=`,g$ghrXji?}G+,UM~V:,_LxKމ3`zGyĻԲF!)C}x]U=bL򐮎8)䬚n: %ب*u{pq<.Aƿu)Nmx?YhZ MoKڒSLR[c-0I6W]XܭDhY%WUlj;nks+'qr-疆^if]n`ُHu-?SqJmD DJXzUH-'KqOLi@5 G[L(L.waPK*r^Y>ۄQpjȔ==VWbϦ3[7jiUSfcC9v, .DHua.W5y^3t_Eknf('mV~_ 8<&1L{0jb mƔ´*?2E(XXIhڦQiDdI4(׍ ]¹;*?|oOUL^g.I{PAs{\A4a2NR͹Q8p&#l :?贿MrD)VnVYl= ihx:faW&ཻXDv,,V dYGJ8Nrs]a֋РSYS|ۀ;b2JY"{6@^t "󥇷wDH@donm:F>se%UdK̻v{4jX'$Cub[(&M$oԯ T܅]C|!2Ez;w` M1 PE-wӳyRFL$so͙/hMMq"hTBnlc% Ự/XIlLC & p{=3# 8ZNw=J* @iw{-}{AUTz/mXvHxʙ}۱F8]n46G Y'ev(vE޳eIʼnC/l˝܆P^UdX.,UTzW5gE->{9kԪm ! ܩA;uaT YˊOd0]MJ03`gP ET\:V |Mns͞*O68>73}d[*zj*%R[K N%U(pG2I?Dì6>nw {CUu1u}s2 rU*=>D_))q]ڂ-|@YMٵi8gpM2#+d#׌2v~D?՛>A:.UF'erF={ׄX?v5IV~ZFH-&}<#&t-UO;# 5/~pY 1ѐn7^Dۭ6NDAG`?BSBC)zuuBD.bYՆc3 ͖M b쌫;[~Ұԭ5ߔN)J;ou=hRATP)(;t0Ȇyǫ%oYס׎5JGr8+Ohd̨OK1Xn.e϶+k=UutGf`ӒNmŃn)lﬥ+B.s;q}iLyj6|@*\<ҷrWHqp}.v[ V0squahD.jT"G 8=$LI ̦6PG&$$;d,gjhY2+f8K=cO>F"-[ch[mU)+kc&\C@-:w 6q7u $)r)h1SW?xL=P{!AECjL1wXJSX“$Mo<ϱd~}Rzw肋DG!PV8]@a6*t[R:[CRA\WCSVYQBIkWJ?r2%nEӯX aDy` D='E[umА:l=Ta@+sTycB:8D4{mB:6ݑUdž/MQnyȖ Z$7v {~S෮rLAw%uXtDsM֞D|pgƲ_1/f¢ l JCrd_ڍ8m9;$BYa(2sɊ7)ԪCփw| 4Y˪KuQu2KI!}6nX] yiwupgE+ǔQ9>y % ShFHiODo'VR%H7UF}h~kBv^ qjv{[sa Zbt] 󝿙L5)4HNTUb uvg/oOީZTs#?;,HG:K7،I4MO# ߀.P C}~Ü INj?e =6(䁒b|4* ɓ3Q O((@~6g3Seeic| O _u"+ւg˘ ͵(\xg3Pb攍Kzj<^:DjмG*vxu<1?BXNB܄H">[_:Pg.mM,1k QM2$,C_J#O/]bT,'0sC8E_8P&QdIoݯ A#N.`Nyc=-O=:4{tݩU9r2V, <­~`Lt-FEDe#I,KtMFi${e|{o\jzk}og*)~Q-)b g͔rR@Q!u4?YsͲ >Ry; qĺ[_oE5;d )‰:-AqCڣ^tsS+G\3Ֆ\Wt8w G^ /"GDo^#2D%H/`oA[ ~8"o?p @A0QOBs͂Pm%D.:l![:J^+nz})8 R m~Jp\g]t|Y3MaqHFwwܼuW3ܣ3nD诟YΛ$[n"X Xq(s8R/U /o4jmDlGUL ^ۯ6 HÏ4fS?5`X}k & 䔊#`ʥU!eF;3@W/rSoS;>G79z~Epm>\|;/pкT2A ,m+.hT\ -.,rɷ_*!.TʼnxfH$jĭX9)xXЕ0`['d*LuhHPO/q:ϣLv`r "oR셻uCN܃'%$æO`FoKSIaJK &R36z,)6He*L.B;.JhIVRtJK)̓H D T 3nZܴI+}C49TZLeoeS@vXrQrzȢw+q?9R,PXN+H)tv&TrLSX>q"ҟu6#06%S&+Z|ft\SbҐ h.^0%(sc._K!BIiY^>)O 0r vUu 7i_q^J;ڭ>s!)ՠ/ï"tzDѬuCa"p|?ײ oiCFfEKل!;!tI-X1!%ohox0CD{ e>B~`@ȆbJw6U#e.y_!gg$F~vCu!1:4)..aa&$O~oKLIwi-VCEVZEcqfh3KO?Gy ZR΢Iʹ R5xlY/Aҏhk&yg{$5I~6!uVy#i\ , xPO` 0DD1|ʑ=mV^@#l|GSϴ'f5KӒ iaT up7QeRb%0ssy߿ES GNQ10snȈRsw-3 v/~eX^Q4 ks;ѓm!6Kz6szQQo6.fI݆XEګc8 ;^3GArO/o%٥}DTtH Ys 7G5(PX2j5]"ҁFgLɒ⭀:P;&h|sd%t_YV|u g#T[C`(KB3yAy>?D5w*tNaLY@3sQEUu<4a2N}& : B/qM챪Ў8XuJVN$?mmYzF{sjc'>ִd<@}$KM ,D~n;uuךҠm- |dM>8zTrG;5zt7ׇT)h D3M } Wޗ$@б1v4"o[?\#southAtfI61ק#MC*uc񊚁8R;"a9%te%A9S(Ƶ={jf|UkiLňVtu̍_jkM_2N2SC20۳$K' v-53 R:tV.9ZozOnJ2bQOz#s:v[-nqmq"HwE2v*R@/&e34 |ci/F]k>ztڊ1-*s gC]"S:2~DY ?y @̠CG=۬@Dw(`fS'd/yڧVoͿנNoٵP(XrY8~Y( X xX3 t6R`} n,,(%V| |OM& 42~tdĶD,<(sl,¢Xbr5B݂'nv  8l<a|SElI޾4v<P`^q+iGMxHTmJ(}^[;Z|M"&g)A0nxrÇK _L(jՅDEZ߻NZ tk~@ɰ!d^a;k=W:A!jը!lK(>j}~Ss~?%Y{ǥ7r\ Vnw82'`h9MJ d3VD8O?&J"lڞM eQk4l/.2 Fkz,ԸUi:BLǏM,$c;ȾJk [IjTaJRJ˶E?/.Kїˎk_qaHAv,e9adE5*\[;:lB06?ٝ.M ܗtE{㢻a$_p[5A|"*ȥgy>pYEU0I} ,_AQ@ ۴Љ?=^.1*O{}ͩY|D f*'`bZ)]hK9-E wIrjدֽR,Qm> V0p&ҐxΔ.Q@1؛] PDOlq53$A v忮aQH6lm޿cR7yg(>4^qބ嚒خN\%p܎_13q98~+L<8H(qUw%B(-?n7+%< -8k`m/Cb̍ Wrf3SdaS~YrxE,uԾ_?.'N'ـ, b( lV7KЈE, ";lOPTAe5/E‘1vY i*s/W [TGggK5c7Kf^À~xٛinMl?M,D>X;a$&"Bqp~BvUܢsxޛz^qQ ʡ)΄{4l@æTR/%26 嵮 MbIȎIMepu oqūjVюQN~thPh,th,9<;`UhO]/*y%F ?؟d6mN䲳V3=, ?Ƹ$V@:~?dxQ5gժ_Ϟ匢w9Od˚ӵNx!_Rﶵm3R5 0dڠK%odmq{XLx ܧp j dG77zw}E52V\`cyk AUU甂BzPK}SlB}/'Bj$ TJ^l;U2#K Ϳ?N@.qԈL"1p/HJsw^H\L5~S4>mh{ %|nv)P*|x#kFPHKBt( _WN߰ I]L1S$1%w|)5}lhmSq*1: Ց;R[H)C~A|͈[Ϲ=[q%z[^G`G!sf)2њ^ _? VPYUjguwC ׋4 } 7hY0"TبP̧9B%{E&Ż׿Eo4ج%rжgY>"lW_ya- v?YBβ+js[NWcM}2Į)]`L?x0yp%yY4_0 ,j"b7D+uŲ'EwJWGgMgqߤ<;RF]DNKfT1 aJb"&3YB!M~Q7YZ[}@\_B@ <(>$A^ģV.!dR[5CT5bŬ3oOJ|\|Ҋ֢2&%8^b" x=1Pe4fQ<^Z"O$t,!Wi??ᑍY*ڲhm˲9o | (mC-Cdq&ev5`ZF ֜zR ,솒bN.FI"ޣ6y}:R#/Vؐū,ӾSpvVAvK0,5T r]`DS)*}X+:~tOiEKRS E}bB?oJy8Aϧ-^Pal~[9W;`,|&YFUˑuXDS@iEuYgqK'*Үٵ 2xnqܳ-8Jnf~4;VQn3QkRsxIXxZsv~1)>+3܈PZ˲ڿ_.$v^їp ʦz*bBHvDƳ tFs=y .vFS@f ]0@bPe,2su4B6\jnTG%T }9-v iղr tKnSF\aފ')2CHCy lV3/h*Byjr>A| GE4[Xz W<#0ːXo -)7B&GfS g47Ձ\fV<Ζ+q[*3jB`_XqCsl]n>#HYOO/ Q@?t27{]P%U|?Njk;T^~}4ppT$ o~YGIuh- Y[jݺE2|s/ˈIin}-bYsףS5ß-x,h+xps[iyХݏA Tեnq;&,vk8%7) si(CYPs*nh~p? 1}7k ce~ -dfZr$ml:JWRuOիn qgRR\C!moS#ߢW'>-6M^OGS%VjlԲv_Tsyj}H{=> y%>6 ӛobC"Q(F| lmb>Wm/[|'Ikv'GG8`+iyRC9_:aOzZ muydF`LƔ!yвsUI?, ;B< iJ!z` əeK'] {_;2?1t[>rFQp5ٿ"D7J,v(EDQδ8-l(<ȫi.]P2c [ jzZ#ߐ|{?L![r YwFM3=Cs)`2bվO Zp-h'R݆#7a"$15.w8_dG e5f% G.x2'⑐ϡlwkg:~uU1/S`3!En{? g Y4o¡ eȰNښ~KrŃa[@GM+Oe{uUy-+`^=2re/?'BG-33 fjkPbB%4!36 YGVpRnjxg1Ha |}s{X_Z7m`išo_O&]Gi^L%h!'7Z-`P˙rC^~7}:K;t (KKh/ Nd w8T_t(a#xgrͷLh,Tv=aMmIqa+ST\sqAQ6l,R,P mq·Gq8ζxF[EN(ςG^}+* ^;07[dnZ9``{Vx*!NՏS€s"pL ɾP7fl!T#ѡ OCU=X1A?-lL:rq tLq"u8} ^ie_wcPP,`zע ?!΁L,ʼn0$_:,9J]'j k4݁kRH^!撩 @'ƍ2!"ʷs 'K#0ܸo5481)BA)8THm]-ONWyOG!^>_bKŦ9[-䥘 Օ6D*A셧A-qk:tKq vw=<Ǹqq13"E:~)…e? z||0@ą/1B.@=Og|b3f["q `Br cc\6&*7EM\s:,cͮԠΏiFйPv`*§^dnYuXuy,ï:C^@̼XBB grl Fx}ͬWE`Q;osrhd/,A w7cO" T-qB%KI KN`.LzR* Jmm$RlRos2e G.5 @^T JIEB!ۙm(8QxT=r8mHV jt⺼ߥ)߰zrƦ bJ89>.kNGGWh;f?|)p$Ʊ>2UQkw ;3qN"&>Yyfԅb5_spPM&ɰ)\"(VF-V#S;݌$~N]BH7iRrt|t.ǭ}<8 m 7ٿ˹˥ ڷ*7I4` ԴĪ/ƥC;;еLov vuҠeܪt.6>2L?%4ttJ|<X%͹2o^6g ̽b:tAgJav73ΩۉnwlFmwV ɋ5Wh0UUW̰0z"1TRCa_p Í^ 7i>LGY K*֍[w!jv Eŗ¹?vz"*.P# {j܌:ǐ .oWueJ7vO;XfNZoosTeTٮ(hMee4&k[ QP偸J=I^mpEͅ_L@mx&#e&uYW`'$d׷<4]C0?Jη>KJJhEmw&ߦg?.kXƦ&9N*};в|~vsn#mJ_{fTh5DVjb߆?٘OybL˧ 04l +X&h5,j"-|-fߧqb}A'IGG0\k+4sw[ H7fڢ}SQ fJcJ{w7:^껜o92ge~:1h( ~NfDT\ 21gPCȍ|?=@}br0;/JO X` BC5fцHa0RdSi7][*1JR髚nG!I t_V^Q\9 %HG(QG抄ݼĮnk?~Yj\O;خ";dEQNCX=AG'S>ݶ>_=I]F~\``rg; ܽCA e+w~15/5N(U \2_:%Qy,NNg,x)8=r1th˗=C]Z0d 6ţ϶BS.#v ƚ+7܂@;eciD(Aw>L~0u ?s֐!gH nIkS;zv-7m=`.C3UTmnG NKr[S=C $ar-Co j  IqF)^J 4H{A5>;=pćժA`! >iӴjӫuE甈1Ұǎ3Ce!tBKr@ ΡQ*ˬyz0I0Z͊к. 1<,W[G6>zXXYT!<5Nd$+6VgU@O:˘EeB1~ e*&**pׁpu3OG0e|WxjcR҃Zȕ{cp .@xgNB|e `Qaq=𳬎Ғ-RZi 45>M@sz'0-^4KvO+L ʦFRRakAAYjkݭ8C!v88L}(>>-=A}ZN< !CɦoYǦRLܐsm_E}Kl;9W?6HEu:haG"my΅<%G8 S[b!({2ͧ;W`k,q$DdQ5L^=,} M'a)dp…!|*4ik V/[5*qgN|ny>'~m=؁ {m89Ff}2'ZŸ-@n| ͸H}^-9Tw\w=nh|;q[q~"iv.I1ݼMFu`ofG4aSzNFlZ H܍ȉE[\F r&Cq].밆LFqew7F@.rꜬ_vr/Z-$ U|&=+]3I@I Kuj:4)'q;/ DBu b),PUtm `0SE IdHM&(ꄯu"i45eNaeT6TL:Et3lG!w};(*JQaSf39o>7j fE, |X/ݺXL ^CXMh&ަTtheo|\~o,YJg@]} ޣyїt7'9y~$~U &ٶh7'CV5 d44/ SAy*N tC8 Alv) A}YFe]KkfZ^pX7Y?aY z5vE*H F !$x!G.XT^#>OCƵ~:ԑ`AwbW8_xznIKsNL:Uv]S*,ȹ- .f Vy8  𧓉usL$-X |U7nI?9d#/gHfrڭ)] mMB\Pkң]Ἤ6ZpRr?e*gꌑG0@IDFYJ?ޔU^wֲ%皷4V)ZQ,qPiwuTQ |Ě՛!GGi]g/KƳ== b0)jiQPV/Pԕl zwȌT@!u-kM6ٴpŔQc ARݡpu FcwR޻Mp|=G / *'dLL$Y%\T/z<.&x+gBMֿ?l B\~cɺi-.pQA>r; S|j_Ph-fz)11+`Zu{W);Ŕ}'zMo֥hyzvm-JHD3)Mp,_Z3ń^:g{IuWr b'R5TDEXmBe y" -a̋%yR= m-E1z/U؊jku|s BdB/oXv'$\6E]\p[$[+ = JQ=eL XǸ{?;CbˈD& رWzgdpw.K -CDC`ЊM@gCB1.nɆWfcE$ v],$]p2RBcπƐOM0nBXO^Œ~ye*GiơOǛf@(76Ȓ 'sD٦v"ʒiGk>7*W"ϝY2F2\p^"ӼHuُoF"?40 Ɓ}:S8)E6&9PPwK9|60qC'S&.N7a,7<$Xs7ЀQw,(3 ϳ;cCQKGT%9e^<6=N#!;<ܬR>n2![nR=}Z{~?۹,b.N#wPa]@x,?s?#hpA~ܚ'Չ`}ׯWmr|ók?Z'.hy9ZczRz6(dks"J c{vbcs>Y@(6ڒOM{lQI1pڂNW9$)&X1 nժ+ yϰ XCLN,Iu̱ HV]jԵ7g69$Nd~iє{KVȍa,*olP\pEi_SXW_Q6M j4kck?{CP̓mChTT^k"dpxg|yF #su_^X|ꡱNS5Lwz\m|h*cLU*|Ը[}!oBX)YPj3 v\cMƏ;u.]Wj!C<m37;-AģKiQJQ90MR t̾[ok X++U8cj -?A_z=v㐸n.`ݻ5Y([t4S4"LT~F$2emI )̦>E RʁSyB ^}˜y9>Q-MA=TwY'ݐU xbyZ%S~LT$^cJ /=L+t2ڝڊ!8< C')[A>bxa0#O9%cbО,#ج+W(]en2?hʓ;E`i>rčs A`zBz* ׫,SnwXJ+WԺG njm&ȳK6Zmߴ΢Ʃ3m)- %7A*Wԧ|g/kuJU1Ga$ < PD[&]7Q93vV<04kmu$. QXC/$(W]g V-)y1i../~+4ː촤ZL|qN_f36Hwkg dHiE;Gx^2ݦu]zM4Jc^P%K _X#X`s|W&ϔKߝZ5hTڕBu1Q8}ԮX"FCv/T_-̉%ûbjo EX(Qdfvu.m:VsKqxPHSEE0'VlsH#Yw=a+H];n]ڀ&,.aHy,23j{#1wE}C:abpg1(iEL)K2]x'^vՔc|^֮'!6\,G}t "5v>1gt$L>%/`KMJ7gTtNqR<̢%-ن|LXoa##]&gأ}قD?XofJ6aZ[dU -,C靷LyIIt"O48Bv?P}_p'J/Ncuwh=!D{&M ٺ٦i gss;48+PLk1s"v4f7\ӔZsnn- qW+z9ft<^2pX?3$ HoŲ*!2fߎ=鐴5wT Puq+Zr Ǽ$1_{{} mv[~ xi6.JƩ7AR.VҐ v^ C`r)Zچ-t!=GLyQe~N41=Lal:w`tǔ([3wmf2=}";f/Ov/4?qR]^ΰ\4o'!gcgWWb32o09Eg0$~2I@N.ZKՏMnG $3yW: Xx>gJ= ȍݫ!gJѮԮ;~OU|Q @/ wHG_-ޕ^h-CEw3XaIk(0ɦ|ݷ-W_K'5".t DLvuQ?\3, ¬f $E+ư85T_1uLCB̹wcc9; kbB͑QoKn!R=kp|*qNr˙Sx*x~WԨB Bv]bߖح{LjlLE&ܞRouwqcSX!Ű!?NUg;&I:+u󾷏nJڨ)t*(D3.)=k{p( ('ƶ5sh7oQGbSΧ&rS]Ȟcϛ^)pMNHaaMn%>5#2|Lj\ID&)cؙ>y #1BBoP "փҏ{/ǖ`jhxaSݥӜCP7wIpwvYD}G`wyjzmf.lݞP=Q"|9n`L `ư6@\ l:˺{|R"TmP1m<_7ӗ61]Lu*/۫ UYpKPm]CH4_teBY~kq aD %]oÒ%'?&}fpqdiYdh͍}H, c+Ըdyw6p/J32@dbw4_RaS"{硎;5K CS!7# ˏ)-QȠHcdJ̔al5:j=NDmk'Yb#xrQ k P Ejްffl7J=>a6(ƨl-3(V&~;AN!%s'XI}0S|!`C.=i 7]l#HD[֢$Mt)z"Z2vo(ł Q-ihx-BT"74Gm\2&)8Ej8?4̈:N{tn(0 jYn. R&GaX >h#IxܺaӖwݶ`]V.)-OăQ/ǥbc$ci75 i\[&6|&t.) OIzx/`d?`Cõ|WWd~πPG#qxm%{gf*H%=T8$a-ieMJ'הYbJl6ggdccރ^'s$iw dN9+ޑw/~)Az_[p[eloU8m:~1qoChND$|"IoJɧbUGECVc'&-resR]u70ibǷĺi:50cp7!t&hvU wVч*$lװ/wj{$%&DY'ӎo[}վ֢9ӛ|G{ na.Q`cuu+ϫi2?=Vv2vJ%ڀs|&npr!KwXB}'3@A/nSDoC\llP4E'3ZrlOk^7Xi9r)T/9 }_EBّw9t̸`r{4}f_zѼmM͛@ "9چ|P^XK9p'ަP +o׼[#]|1R(v. * ?;A|ȿ8=|] +&G ]ww捜} .!z]uHp¡:s#ufl62n_J{ImrD>jh8v6<=SJ9X +P?D62iS՛PADE?} /)4W!6H5=cBPgDY2ȶ7_ojh2Fw#w]a+Fs4!g@s ^p/߳[G4A6+^72w|MR54-݀\7f0k˟v {<5.k]zӲ9~foNR7S)WӇAN-F<ԙx`p?mƌЈ'T <-ܞ$jCvYe:eD]t3y6} :g>6)YHFμ~:*%Q\{1\V0+3ԓԾ_f*ٗKk+8hut{ {Ŷixe)mO;-}>C(8| oN!  \ض(WT*T;$a%& aV1x;NX-1v , 2!aLW*N <&2]ӂbƒLX.b=`4rFi8=2)¿ѡsŹCPNjes(qcc:}0aԳ?}eԅ饢mC=,v l eE<~n^M+mQP$YdչcXPA@=.=!L_ze2^pE0 1HOX۟[D$Ȃu - h윹`EJ/'j x_7ycUYKfQd6)|k 7 ߒ `)cʆ_gƍɃ K:`L۲Щ_b6{"UrJ Jr uD8H Z52Jï'*`NOYWA'p?pg p@&ŝ!{*"țm PC0'YXh__C8F-QxB{.q[ZK*KEQ=iq(؄tL m:^aW1$0~O4l]jEX3UP 3Q:PeEMRF"88 ԛw6|\`୬Yrvt{rwF?5?zJS܂tJzia%ڥp6Sz_{^|64j:ڱPbmPIBa]exISlPn:wGŲo, dWcy6S @  ac-Ee>|\>-$}tw5tj_3$yQ[L"9ՄԈZj!PY&] K:PTt?4$vܳD&*n3= 0e4vU7d/4'NQ#y'wd;x6DF_I ^qMٴc0S0-^@<5aQ< :tWK6]o/_/o9מm7)^_Vuu- Vᡡt2fNKY9V.xnz"_bxā\&{_Pq]3#w/9--iEXLhdKHf3|)CBQ@Yc$fO TGض@C,O* ^ E6dՏ:Uҕ!(p4{,/h^N 8=/KAJt-fE0 Z;`w00jmm#WV);A&Nѧxlqz2]UX!59PEhl ,2|۝J-pܰ,@V W~kaúv_v>iRߥ`[sl\ UHN"=6!~ eC~th?CV>UF{#i_cj7l.A 2'^,OMh_#&hu[ƖRYF"X `'n [:$&k  x{&S֫>?\P1^pˣzPgw@`0:wP2H$J֒EXq'tݪDMS,B_ُ |\Nc[%wLj.zs[1 [sy"SNsYPs2ϋ- DĠz)ViI60| f0C܈ak=,&"A&D8ѡc2>RG` ERj,0bY$X`[u(OYUsi2]ѡ#%@}Ю$Ja븐KD'3dD ;zXPq`[D֞[$<ڟI0vK]"CR:мDUT{#t_+!bg<4Z5(X?+tTںl?j>Wxo_"s̷It^[ERbEP#NZWqvH $JizSl&@#X0}J 粉WWqtR!3ьJ ';gf;|τ̠ܰV>P 7錀>Wx= ~s%jM>ѺzOh3DžvA*tВEN* 8\:'a*]>Kީ#5cQa+RTCæH,at=o˾K2Oopl'oܭx-!mg4 D[\vmt,>SO-d" gilvtHwbNf!MƿNKֵYDdg9@0nŨ_FS&Ž09w,,3ڇRTmΖ gb A>WϓۓNM fbdO{oyS]^Ѩ/oy*Qk[τ;^ / -Z\ԷN/ +?o1;ң,WzI놕 xE*wׁ;@rN U{yBn H-Wk.op6-D9q\jV$E+&wJbl 쏞_­Ĕc\0[3s^נs,azWB5[Cد`iZߗѸ\%*{V1M؅_b@4d7Y^i5J-MFj^q^)nkW3-mӱ[aԱh'<'pjk$橽|6wōwfaN=C}ؘ acR͸}(~Mf?}q.\SknA/^xC︗pUıH(J9?n:A)1PQ_䩉p&]ZO'@KW/0;ow|ɅR;QM,P9wfE2%R p|p ֑@r+'5ё5C=MȪ%zJv`vm΀'΁axΖ1Z|-!|XϿ+,|.*XjpxH49D($z0򫫅)V)z4Ġ&!sOES\%9~h[`ڡFSZ/~!+RmsECH|^[5KIJ'Ry0WRhFh7 kjg`p/@+_/bM&&c$D *9͔e4R"s9/Q!P$nJMEa(Ckrd-|=&qbۅ޾?:0UT| xa$}'D(7?Y&&#?v tI7-lq1x\[Wp╈ ^j.y%#.yiZlH0;X P<>dΗ8ϙ#ڷGY.1>uPp'aD.T3bK RpFɤ0A8ԡgvo(MuTT%IF0(J8i"EEB*ސ!:l'~yN⏫)h>bCh6YR)?3=H\'HIJ npZ@o !{ӍL"t])̟{9Oq3𡭅(O@R 1KŌT S8G0u<`GW. X OՀм.NuPiF2B|P-7í*pWK6oD@/63+yx'&]K]߮Q.!}2RS\Y [H8MOYZx;`7ս! ;+nX6ލ CGRޙcmpr =ĬiӆMݽ_db>_bA_f{lt\sDU6m$dKɔ]:Gƕ `2 =3޺؝ŗŒ7ĥW8'䓠u";J4ՈݪX=ش;-Exk ~AdF1^o8/jdź-58 4Tw.񆙡F};RM.Am20pb% Gxv_ t♺90Y#2w̰v$a|H<6j=oJZ!ٞ>DbNR55 8rYBBɻcBM@?OB,hSb}u#,m:|&d*=Q):go&>O3߅d# t0x3lN;NؙuXǨ+ `E".m0?=ee/\lbK!V[D%V!hlɸL\27]8g!r_&baF{8ܖK'R:zPAN`VHyn@:vL.!qbs%\̺\ 9F(eRde0jM\tLqWz5 u^[Iff${qoQ-١ia;=d䯪5RA$T+p@nE% 7Ѧ[9=4Vyڷ=UO P{uFV`lY4(p@%"wY-}o+',yWsF'(^ٛb%]/KM2ka1tSNOO`şVD6PIʱՈD("]KlIe\P"]1yKnta+f: .. =xծE߃!xH :AE$L;SAKx>V(-zp=ܧ:*+5M{ZA1tXzZ2Yh(6= FS$]>f×.+~-Ah̃ *{k+p`9"uCNa/YפR$c 'qpCd~}4UM /]nV7/q}́-B'/zTSQX+|v* e'G)zoj RvJr%XQT(,K uw>{,0_?xSbpwM%,MzRP`:XMKn HyY 3ի% Ma4%t7}o.)@nK%e/imiUQv\n>p_7逜sZ8?g@u\PBƀrgHJ-dzٽO$4㲵(_5N~<+2EvR#+L '[%hLT:Y?7fEa1q"9~$58#ZYgI^QGcL6ci"lOe>i/?&j+_6=$LaSNʗI2*+*(&duQݯlH{iᰁ?dj.!S;*U-S'yg${1Azz4 Zo-pF]"w' Bļ~J/SF)^/f (.5#ڞP"Gu+iI/&֙'>6^/ '&H9U|/-`bh§ `R̎nǒ $sڹjN1T)=xݷ]*?FUɔ RIϽayA\qs`Ro0oAK(ӌ)@յ7M"kA ?Zd{2(QLd y^bM(6'4-QMOI)e(ItCܓ²_aJ ÄrǞ0'Pol$ZqF痂-iSdCۙr"D%kÉ@&p8ٷ$';1fI{jumn9'kMXiǃX1e.mP5m@6~hճq[+F zw " ~0z?Yy%GD)w1JIƺ𚰓<-p`mmTS N׮겕Fq/A|,'TtgSO#俸M>YJY?Ttɽo_?mdzmY*F VʐΟSMkf]lS*gHXɧ\>Ej8;JJ.R# ,@])9-e-`9Y[4lZ~bV7/`m]+)R(Cc1S+ӔYnE*b :)l~2W3 :ٿ=dM(xit(!2!;w9D+h{6':7nfBVsuF ysҕw[En{} j#{i$߃@{CE*-m_5MP$W+TQ !Yj#'.C=ggSw&Lj8ώC>^MpWd}}]G-I+NJ((UxIh33-1nʪ-ƃ$={մ;jJMrUlE8?sQ\&pefNN)D wS7TtљrcFdzmӦ{~]|'o$V&]:lCc}wE8)ؚp &ѿu]чx¬b;Wt *ڛI~j$%qh-8AO!<j2S,fvhGrvp2cxohA*5q:g Y@iG谌"Eq&RǢBE&5- v*w -wG) hp ?^^s^j!Z,$TlUHoRb,|.BXcq&ڑA0IHn7^8 ȷ9K 7GvNP g#xNq<`c(Jyw%L #㨦E|H"Zeʠ[Ћ9QhpL\wizmS5ӆ? fK_ 0BO$N "rN5߅7KO)Gݜ $I_k+3)AUAgUsع3N>7_^KCI VA?:H s&_3`"}CJv Gwv K'x^ǔ#]$;+F"u^\A"Oم.ɿ3@g>神!q`,3M KM/g[9Z_|rgJ>iscՐY@ R2֣0}_ O`tKrn1XA.i)je,ğKJ-Xs_OB;w КPN)ܖtz|~0 z,Awh(ev0x/_i `|O,OBQ]Գʻ"<]79|Z})5_#=f-l%(Ydy37m̲y3ʥXr*踼1g:K{Z$V &6-i^}B*B<N(zbO?iT&$M 1X{ܨA[ꢅ1*z:vS)o'?(_ nr&ETM% [RXfd|CQ<u`ٵK ﱌcZZgojO٘D4g$2]k6!+Зif H(Qv?t|#Y o1wïIyH&T—M̲sƞt ,H6O4q<˦j2bO]ρ/Pc{T δBLՇBs{7 am˙*T˜O(zy׉Fdm v;b RV٩F\Rq~2ڞH $7,Qk CGŕ?6t~"΄88jθF5uX'Z b(M*x'()O' {XQg؅?' V%a1<;׽ Hvyl~>-GkI4u4d* :uK/rLIUJ=DJ\vz04 c*e'3i5u2f%^(D)0a"LXcMBY&7Ae)DUQU̼gq|dGH!7Ys;~Sju>«:+!r+YNd |%Jl&92>WeaĦJK@uGMrۀ3U)l1#p 6A]kvK$Dz:~ 5뽱Id6˽̻ GI?~,lF#Qz3npѠZy CalN\/HU̮d8(Β9H(8I1d0-wD^)L3 _B lN>onИ8`n؅{ITr|poz|)K'rjKT Ǧ[;+_?lq ;dwE2 %.kc(VG: [8tI1nkQOF s;da׹".|:<ڹecX-zӖ. :G5Lֶ|ZlmތO4zѓ8. Y0[?g}5n&KTK #D{G)5绲axwc Y\rkW.N4K+@6PF Gg0S dPl5 CjZ7Γ@ 9zl«cu8[ְ}dwj옆GuEC?" `[,6uke/9LRmӣWpK5$phrntU1C({E8iwQ:syh0aɭܵTĦ\ͣKv:\ioe?՗ϟFђ]ϰ<>~W.q-Un NഒEܯyu7vpLK۹"lN_@q& W̚^*W&KZ߈C089 L)˰rx.U nlܱff&x|~$;W U gu%vӘsͼo,)N޼/eZ6pnQ )QDkOZN~ccJL )5dwwe&˷eʄ̧nv;TX2:gLsf65p[oӇ\PۛeoGTja绞)TǗtdMTP"RǤxѧKJ2Mu#UQBWJPI. !+g\.7A!k@a@G&@r[=4m : ~36j$?_"q{³A겜1 -l T=vT GB"B,ɗ9:ÿds*24sc |{eŞa1Dy9bGz<@X߯$ Z~=}/CUV.r6E6EQj2 #yml-#c 0ʽM囄Fx85zixe|iil<(0Pm"hқdGs &3wEl_Gn+ɬ$PkZ!j *8may*본5:ZxqA}ՓNmPu(+ws6^7SetAJ>H^vn乒$!CIPm[3w4P@ xlO7֣,ꦶNWE*7h ^S 9Q0A\2, f }q6-UY|)闆|K 7]܁<91YME~ ϊ")FcJ_fmlO-y4aX/o18"̌#Mh =RmE;^6|;UA՝;gy5p# Nݙ|֥>ǰt<(`m_0 ˿~`IqIKHxZ7FXavAUz:{!':c£oߗ;YiH_ 2Itm/"*ך87JlU5gtǠ(B;agFNO?aup ^91զuP1Nu6TI%^/ ͦ3CO>Bo-j$2ƥh~lMkXM[Fl|̜kv~X ,L?p1r ψ oBF<棷H:-~yTy}*fK[Pg!}֪.B n]lh:Mϛe?jeURԛxOxNF죹G0ߺec!/~ pj6 y^\ 1]s@rs:#TYuUxkܷgKC-D05ӓ&ޯC]@|%{tĘňvP- Gyɿ)Nx`#@c z@L\u(tRB d.W GWroT.W)B $;s ߳ 5J`|.Pi >DRu-{H"H ,@ums{/덱`LJ %NG N ts <3[ B‹xoOg8WO hoB #Ɍ&`HocwdXr,z{p*t'/a4!俯\Wt/dW^oi 퀝uyʊE aF G>PbDLZ%?nDn)9}H/0|'"6w. ;YA5j2κYϟ?;rW{2ˉ,gta< Qg)K