booth-1.0-lp151.6.2 >  A \i㶸/=„Z =9bqf  >mH~=]-Tb!MsbH@41b7Z _+ "] w*RBO/6ess! =foF )ڣO2=Ŵ ]Dc*꓌q=z E?6NwVPZ{J8);oHn9OѭG37肋v_.C J~A ?9n'.*R4^6pTPR.9407ac2d51d7c2bdafc41aa9b8472e6ac88a3dc4d67a9b78d199a44bc894e8e3e306c289be3db46f32f6d2b0fd1fd5c8dd3e6b61\i㶸/=„>((r7h;D/,,r}ER/J+jȑ0L`=4 ]3;PST '눿/_w}OGgs湹I5$ÛmG' JےNks'+1n8OQg AP S~!r i03k)Ã˼&7LF5'qz3{I6I$Jt  )p*Dr "ā45>VPg/dGS>pF,?d   = #,= Wr / D"(" l" " 8" " "d""""(8 U9tU:%RU=S>[?c@kFsG"H"I"XY\"]|"^bc+deflu"v, wT"x"ydzCbooth1.0lp151.6.2Ticket Manager for Multi-site ClustersBooth manages tickets which authorize cluster sites located in geographically dispersed locations to run resources. It facilitates support of geographically distributed clustering in Pacemaker.\ilamb54openSUSE Leap 15.1openSUSEGPL-2.0-or-laterhttps://bugs.opensuse.orgProductivity/Clustering/HAhttps://github.com/ClusterLabs/boothlinuxx86_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 booth-arbitrator.service ; do sysv_service="${service%.*}" touch "/var/lib/systemd/migrated/$sysv_service" || : done else for service in booth-arbitrator.service ; do # The tag file might have been left by a preceding # update (see 1059627) rm -f "/run/rpm-booth-update-$service-new-in-upgrade" if [ ! -e "/usr/lib/systemd/system/$service" ]; then touch "/run/rpm-booth-update-$service-new-in-upgrade" fi done for service in booth-arbitrator.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#Reload firewalld if already installed if [ -e /usr/sbin/firewalld ]; then %firewalld_reload 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 booth-arbitrator.service || : fi elif [ "$FIRST_ARG" -gt 1 ]; then for service in booth-arbitrator.service ; do if [ ! -e "/run/rpm-booth-update-$service-new-in-upgrade" ]; then continue fi rm -f "/run/rpm-booth-update-$service-new-in-upgrade" if [ ! -x /usr/bin/systemctl ]; then continue fi /usr/bin/systemctl preset "$service" || : done for service in booth-arbitrator.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 booth-arbitrator.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 booth-arbitrator.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 booth-arbitrator.service ) || : fi else # package uninstall for service in booth-arbitrator.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 fi ]eaIFC ~~ ?A큤AAA큤AAA큤AA큤AA큤AA\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\i\9T\9T\9T\9T\i\i\i\i\i\i3825b439b4fb9aee52aa928b2040329d8f4f175808784f82561c3979bb844aa4a0e4917463dff7c01d75e732a5efddcefc358b677d32e7507510d6bb785e8485382852dc24f0fe3c809cd3f9e59d063924368d0f53bcd63033ffedf43dbae45e6ff14479587fa5885590628eff9fed3d0a95e1aaa2bf9e79414c49cdbec33c0ce33a2b917d10a2d7d978d1522c3e08ab4807a480fe2a14404c414233f80b4b48df689636ae458dd1915fd453df952079b0964e5952137667364e71dd2178399134f4cc3247747f9d0cf633aaaaa5dc7b7161fd6c4b370ce1a434eb70905b8e2bd06cbf48943d4a7bc41e5252f99bb82be0f9bc81d6fb63162217afe5dd94ffcaa156178721c641ba82c54a333d90a07ce196cc55fd2f8273750d740c8419c772b67335e8f08ab5bd54c03a5cbcd3a90c2079083b217df3f2e932364114ec4f08114be191b65a21c7ef0dd6e87be80fadb0ca02b1b3d4555665559383e37d666aab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6a512853c861d483a2c04b3cf3fa66b905cd96a0182222e40b815c51e449769caf79bfd3a69cc925c33e285a5b41da3e390dc71dc014e790446f9e7df513a22cabf7e416200e1258704d24a587342b3a48507515719f96552d24873dcab82e951cc480b66e0ba6fb00ddac0f858d4936ca13890c04bd1c03f3a353bd8a41a3b7189aab262e78692a3439c08ed8239241f37a7a474cd5f5190f5c6eaf8f30ff825boothdboothdserviceboothd.8.gzhaclusterhaclusterrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroothaclusterhaclusterhaclienthaclientrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroothaclienthaclientbooth-1.0-lp151.6.2.src.rpmboothbooth(x86-64)config(booth)@ @@@@@@@@@@@@@@@@@@@     /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/shconfig(booth)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.17)(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)libgcrypt.so.20()(64bit)libgcrypt.so.20(GCRYPT_1.6)(64bit)libglib-2.0.so.0()(64bit)libqb.so.20()(64bit)libsystemd.so.0()(64bit)libsystemd.so.0(LIBSYSTEMD_209)(64bit)libxml2.so.2()(64bit)libxml2.so.2(LIBXML2_2.4.30)(64bit)libxml2.so.2(LIBXML2_2.6.0)(64bit)libz.so.1()(64bit)pacemaker-ticket-supportrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.0-lp151.6.22.03.0.4-14.6.0-14.0-15.2-14.14.1\N\@n@Z@ZZ!D@YK@Y1S@XBW-@Wu W@V@VJVV`.V^@V\:@VTQ@VO @V<@UAUWUc@U4@U?UU&iT~T.T@S@S@SSSuSFSǺSǺSES @SS@S~@Sy@SpSg}@Sg}@ScSKSB@S;S;S9XS4SS 4@SRb@R@RURR1R/ QT0QAOOtNOqOiOiOe@O_6OX@OX@OWMOP@ON@O8@ONN1N1NS@NI @N1O@aburlakov@suse.comaburlakov@suse.comckowalczyk@suse.comckowalczyk@suse.comckowalczyk@suse.comckowalczyk@suse.comckowalczyk@suse.comygao@suse.comygao@suse.comtchvatal@suse.comdmuhamedagic@suse.comopensuse-packaging@opensuse.orgdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comopensuse-packaging@opensuse.orgdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comopensuse-packaging@opensuse.orgdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comdmuhamedagic@suse.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comphilipp.marek@linbit.comxli@suse.comxli@suse.comjjzhang@suse.comjjzhang@suse.comjjzhang@suse.comlmb@novell.comaspiers@suse.comaspiers@suse.comaspiers@suse.comjjzhang@suse.comjjzhang@suse.comaspiers@suse.comaspiers@suse.comjjzhang@suse.comaspiers@suse.comaspiers@suse.comjjzhang@suse.comjjzhang@suse.comjjzhang@suse.comjjzhang@suse.comjjzhang@suse.comjjzhang@suse.dejjzhang@suse.dejjzhang@suse.de- test: fix read -a <<< issue (bsc#1123313) * test-fix-read-a-issue.patch- Update to version 1.0+20190112.497c0b9: * fix_asciidoc_build.patch is removed, because the tarball already contains the changes. * Low: handler: fix spurious warning on alleged "fall-through" in switch (bsc#1123312) * Low: main: fix hypothetical file path double traversal discrepancy (bsc#1123310) * Med: attr: fix derefence of unspecified value pointer (bsc#1123308) * maint: ocf + script: eliminate some false positives with ShellCheck (bsc#1123303) * test: unit-test.py: daemon will not stay in foreground with -D anymore (bsc#1123302) * test: avoid dangerous mutable/sticky default value (bsc#1123301) * test: drop/comment out superfluous imports (bsc#1123300) * test: drop underqualified identifier in unittest's 2.6 compat "polyfill" (bsc#1123299) * test: remove superfluous shebangs for import-only modules (bsc#1123297) * maint: fix typos introduced in 4bb484a (bsc#1123296) * maint: fix thinko in .gitignore introduced in 5a457ee (bsc#1123294) * Fix malformed man title (bsc#1123290) * Handle multi-leader situation for manual tickets. Added manual tickets to Life Tests framework (bsc#1123289) * Feature: add manual mode to booth tickets (bsc#1123287) * Fix GCC-7 warning on buffer size (bsc#1123285)- Doc: fix the documentation build with asciidoctor (bsc#1075764): * fix_asciidoc_build.patch - Service: restart arbitrator on failure - Upstream version cs: c2389e3020e8a3780b679cf0c9857bd608e99fa1- Build: replace SuSEFirewall2 by firewalld (fate#320794) in booth.spec - Upstream version cs: 80199f9477fb4fbf8809f31986139efe3f4ef790- Tickets: added manual tickets, which allow handling 2-site setup (fate#322100) - Debug mode: fixed the interaction with resource agents (bsc#1046790) - Patch file bug-1045067_booth-fix-booth-grant-cmd.patch has been removed after the code being merged to upstream: * Clinet commands: fixed local IP addresses for booth grant, list, and peers commands (bsc#1045067) - Upstream version cs: d4cb8cbdaf87e46f636c3d06730b902b79bdcb9c- Clinet commands: fixed local IP addresses for booth grant, list, and peers commands (bsc#1045067) * bug-1045067_booth-fix-booth-grant-cmd.patch - Patch bug-1039727_booth-build.patch merged to upstream: * Build: create and set working directory (bsc#1039727) - Upstream version cs: 766d61881b2cb576645821322edda0edea04828d- Build: create and set working directory (bsc#1039727) * bug-1039727_booth-build.patch - Configuration: handle hostnames in booth.conf file (bsc#1037422) - Upstream version cs: bbddf969550969784b76b743baecdcf72796bdf7- spec: fix booth-test containing undesired build sources - make log contain source address of unknown site - main: initialize Libcrypt properly before the first use (bsc#1025463) - extprog: fix race condition on ticket loss (bsc#1025463) - attr: fix wrong order for hash free functions (bsc#1025463) - attr: set time string to "" when time is not set - extprog: fix pid test - ticket: reset next state on ticket reset - alternative logger (in service-runnable script) - allow skipping "coredump nursing" phase - alternative "nametag" provider: libsystemd - alternative range2random provider: glib - alternative logging provider: libqb - offer alternatives to libraries from (cluster-)glue - setup_tcp_listener: close socket when no longer needed - read_client: sizeof(*struct_ptr) instead of sizeof(struct_ptr) (bsc#1025463) - get_local_id: denoopize dependent condition (signedness issue) (bsc#1025463) - list_ticket: fix a memleak in case of buffer too small (bsc#1025463) - do_status: close lock file when no longer needed - format_peers: fix a memleak in case of buffer too small (bsc#1025463) - read_config: close config file when no longer needed - make foreach_* macros use variable refs passed as arguments (bsc#1025463) - prevent possible truncation w/ invalid geoattrs in CIB (bsc#1025463) - build: add proper zlib build-time check + link flag + spec's BR - build: allow requesting no HTML man + use in spec - fixup: sanitize true-false logic for "daemonize" - Upstream version cs: b270a78130f40e648844671b3652919d86e1aef4- spec: Set the owner of /etc/booth and booth.conf.example to hacluster:haclient (bsc#968865)- Reduce conditionals to only keep the default values - Run systemd macros in proper phases - Convert to pkgconfig dependencies- Update to version v1.0_14_g4d35ac7: + main: fix address matching procedure (bsc#994999)- Update to version v1.0_6_g106efdf: + Feature: extprog: add capability to run a set of programs + Medium: extprog: external tests timeout after renewal interval- Update to release v1.0 + systemd: add booth-arbitrator.service (bsc#967036) + main: improve address matching procedure- Update to release candidate v1.0 rc1 + main: prevent segfault on no arguments + ticket: term 0 is a valid term (bsc#952426)- Update to version v0.2.0_130_g9c5c19f: + test: use SSH_OPTS for rsync too + test: fix external/booth ip use- Update to version v0.2.0_128_g29be3ec: + test: create and distribute authfile + test: allow alternative ip addresses + config: support for comments- Update to version v0.2.0_126_g2154ade: + main: add 'other' as possible site reference + attr: GEO attributes OCF RA support (fate#318182) + ocf: add geostore sample RA (fate#318182)- Update to version v0.2.0_120_gf3d73a5: + arbitrator: mark expired tickets as lost (bsc#956321) + attr: better control of election cause- Update to version v0.2.0_116_g88c3d6a: + attr: attribute prerequisites (fate#318182) + attr: keep attributes in the CIB (fate#318182)- Update to version v0.2.0_113_gaeef08d: + doc: add the geostore(8) man page + geo attributes (fate#318182)- Update to version v0.2.0_107_g3e73b68: + booth-keygen: older dd don't have status=none option + ticket: move election start out of the signal handler (bsc#942346) + extprog: handle better multiple children signal delivery + client: prevent garbage characters at the end of the list + service-runnable: improve error checking- Update to version v0.2.0_97_gda68360: + add booth-keygen (fate#319318)- Update to version v0.2.0_96_g9dae592: + ticket: prevent running external program twice + ticket: make sure that we're the leader if granting ticket (bsc#940037) + docs: add booth operation FSM dot graphs + main: add peer statistics + main: add booth peers command- Update to version v0.2.0_89_gd9f16ba: + main: don't allow zero poll timeout (bsc#938820) + pcmk: don't log error when ticket not in CIB- Update to version v0.2.0_87_gf59231b: + auth: add support for libgcrypt (bsc#938403)- Update to version v0.2.0_86_g62eee28: + auth: hmac based authentication (fate#318466) + auth: test timestamps in packets (replay attacks defense) + doc: describe auth in the README + transport: use non-blocking read (fate#318465) + clients: free request when removing client + extprog: run programs asynchronously (fate#318463) + extprog: preserve pclose(2) child exit status + pacemaker: report error if crm_ticket fails + doc: remove warning about running external program synchronously + client: don't allow SIGPIPE to kill the server (if the client leaves too early) + extprog: update ticket grant/reacquire procedure + client: make sure that the client is still there to be notified + extprog: ignore running external program on revoke + main: don't comment on successful list + client: fix memory growing indefinitely on new client connect + client: reference client fd instead of pointer in requests + client: fix memory leak in ticket list- Update to version v0.2.0_50_g03bdf8a: + build: update spec, doc, add AUTHORS + doc: add sample pacemaker configuration to the testing README + spec: skip the update procedure on new installations + use subsecond timers internally + ticket: allow finer resolution time in messages + test: add sharedrsc OCF test RA + raft: better control of term increment + raft: ignore messages with invalid term (lower than already committed) + booth-site: exit early in start if daemon cannot start + raft: handle duplicate ticket release requests + ticket: add -C option (wait for commit) + ticket: restart elections after last candidate disappears + contrib: add geo-cluster.fwd (suse firewall rules) + ticket: ignore late MY_INDEX requests + timer: round to seconds when converting from timeval- booth-arbitrator: fix exit codes for all actions - booth-arbitrator: set the right LSB exit code in status - booth-arbitrator: fix stop exit code (bsc#914306) - main: use /proc/self/oom_score_adj instead of oom_adj (bsc#914037) - upstream version: v0.2.0-6-g9eae45f- doc: clarify the meaning of renewal-freq - ra: add restart and reload actions (bnc#899244) - upstream version: v0.2.0- doc: add documentation for upgrade from v0.1 - build: stop arbitrator on update from previous v0.1 - ra: support the previously released v0.1 - build: better support for sysv and systemd init files - ra: update library location - upstream version: 644df54- Doc: update client help - upstream version: 063bc2c- doc: man page update - upstream version: 1e41e32- service-runnable: test also if the ticket is in standby - service-runnable: unset -e, crm_resource fails if the meta attribute doesn't exist - upstream version: 2928215- ticket: drop expired tickets in elections too (gh#17) - upstream version: 5c48dbb- config: prevent segfaults on bad usage - config: allow configuring more than one ticket (bnc#889806) - upstream version: 58a2b61- raft: be more permissive for elections for valid tickets - build: fix doc dir for redhat based distros - upstream version: 2ecb536- build: update setting build information - doc: update server operation description - client: add the -w option - upstream version: 49c0f3d- build: fix setting package version in configure - build: update booth.spec for redhat platforms - client: wait for request outcome (bnc#887689) - ticket: add renewal frequency (bnc#887113) - ra: simplify process status and removal - config: fix copying name from the configuration file name (bnc#886674) - upstream version: 3bfdd5b- add git version info and GNUmakefile for easier rpm package building - raft: make sure that elections restart if the last candidate disappears - use monotonic clock if available (bnc#884746) - raft: reset election on rejects too - raft: accept OP_UPDATE in candidate and init states too - ticket: don't write to CIB if we're in elections - upstream version: ff5b114- raft: match the request in acks too (bnc#882209) - raft: add the request in reply packets - raft: resend ticket updates (bnc#882209) - raft: add short delay before election start (bnc#883785) - ra: exit with success if validation fails in stop (bnc#883762) - raft: make server stepdown more robust - raft: remove unused commit_index (bnc#883216) - raft: reset ticket leader before elections (bnc#883150) - upstream version: 21b3f0- raft: preserve term for status messages - raft: ignore VOTE_FOR if we lost the candidate status (bnc#882209) - raft: always accept heartbeats and updates from a valid leader (bnc#882209) - raft: ack revokes (bnc#882057) - config: don't allow too long packet retry period - config: don't change ticket defaults in ticket stanzas (use __defaults__) - raft: don't ignore duplicate vote_for packets - upstream version: 4c1e97- raft: don't reset acks prematurely (bnc#881508) - test: add more tests to live_test.sh - raft: on server step down reset the ticket state too - service-runnable: remove crm_simulate's tmp shadow (bnc#879934) - raft: invalidate ticket if the leader wants to step down - raft: delay revoke if there's another operation in progress - main: enable coredumps - upstream version: 465245- raft: account for slow servers in elections - raft: improve ticket update on status message - raft: increment term if election ends in tie - booth operation testing facility - ticket: update status/startup ticket processing - upstream version: 63c908- ticket: delay ticket processing a bit at startup - raft: improve reacquire on startup - ticket: run new election on ticket reacquire - ticket: always reacquire tickets granted here (bnc#878359) - config: reacquire ticket granted here always (bnc#877773) - improve logging - transport: prefer exact address matches (bnc#877669) - doc: describe server operation in the README - upstream version: 1bcef0c- build: add the service-still-runnable script - raft: set ticket wakeup after MY_INDEX (bnc#877356) - ticket: allow enforcing immediate grant (bnc#876191) - raft: test for misled lost ticket condition - raft: include reason for RPC - raft: wait a short delay before starting new elections - raft: reduce the election timeout to the ticket timeout - doc: add booth description to README - raft: delay ticket commit to the CIB on manual grants (bnc#876321) - raft: don't update the ticket expiry before leader got elected - raft: fix external program handling - raft: send heartbeat only on restart (bnc#876516) - upstream version: c18e68- doc: hawk uses booth, not crm_ticket - upstream version: 7f10ce- raft: accept valid heartbeats in the candidate state - raft: elections not allowed if the term's still valid (bnc#876300) - raft: on vote request reply to sender only - upstream version: 8be1aa- status: test TCP socket bind instead of UDP (bnc#874139) - doc: update the man page and add section on booth ticket management - raft: always run election before acquiring tickets - raft: reset expired tickets on load - ticket: query status on startup (bnc#873205) - config: use only address for the site id (bnc#875237) - raft: update election logic (bnc#872103) - ticket: adjust acquire-after use to the manpage - doc: clarify the acquire-after use (bnc#874148) - transport: use local address for address matching (bnc#875148) - ticket: increment lease time only when majority held - raft: reduce the default timeout to 5 seconds - ticket: allow revoke only on leaders - ticket: write ticket to CIB on revoke - raft: no vote on revoked tickets (bnc#872918) - raft: increment the term on new election when ticket lost (bnc#873643) - raft: don't broadcast req_vote twice on ticket grant - raft: expire tickets on no heartbeat acks (bnc#873483) - ticket: start election if the ticket was granted to us (bnc#873400) - transport: reuse port/address on bind (bnc#873382) - ticket: write ticket on majority heartbeat acks (bnc#873175) - upstream version: 36d94a- transport: reuse port/address on bind (bnc#873382) - ticket: write ticket on majority heartbeat acks (bnc#873175) - upstream version: 3af8b0- init script is not needed in this package (bnc#872063) - upstream version: 60de8d- fix building manpages- fix format related warnings- Small fine-tuning changes- Rewrite, using Raft instead of Paxos. - Version 0.2.0- Provided a script to check resource health - Replaced "resource_monitor" functionality; now an external script is called before the ticket is acquired/renewed. - Version 0.1.7- Systemd integration - Atomic ticket writes (grant/revoke with attributes) Automatic fallback for older 'crm_ticket' binaries - Autoconf/Configure check for moved log_cib_diff() function Make package build again with newer Pacemaker libraries. - Small fixes, cleanups, and enhancements for the unit tests. - Version 0.1.6- Enhancements to the unit-tests - more data when they fail. - A few other fixes - Version 0.1.5- Tim Serong reported problems, I'd guess because of compiler optimizations. Converted a macro to a (less clever) function. - Some other fixes for catchup and ticket re-acquiration.- New sub-package that includes all the test scripts and data. Doesn't work yet; but available to make testing (the packaging problem) easier.- Version 0.1.3 - New (extended) version of man pages - First draft of unit-tests - Run as non-root user - Transmission retry counter configureable - Lots of fixes for the state engine - Improve timeout handling mechanism to make booth more robust (fate#316131) - reconfiguration of boothd while running (fate#316126) - Multi-tenancy for booth (fate#316123) - booth should support IPv6 in full (fate#316122)- Nearly full rewrite, version number 0.1.2. github.com:ClusterLabs/booth.git 7fce594 - Use UDP for initial catchup, to avoid blocking on simultaneous restarts - Automatic ticket renewal after first half of the expire interval - Fixed building for OSC (libs in LDADD instead of LDFLAGS) - Many cleanups. - Daemon restart won't lose information, tickets loaded from CIB - Multi-tenancy via multiple config files (FATE 316123) Init script starts all instances. - Cleaned up config file parsing, is now more user-friendly - Type (site/arbitrator) deduced from configuration and local IP addresses - Should (might) work with IPv6, too. - booth-resource-monitor-build-issue.patch- Fixed resource monitor build issue + booth-resource-monitor-build-issue.patch- Update to git version 1a00ea1. - Correction of the problem by which booth_resource_monitord was not contained in "make rpm". - Correction of the problem that is the compilation error when combined with the latest Pacemaker. - Return the correct daemon state. - Add "starting" and "started" to better reflect daemon state to the caller. - Correction for merging into the sauce tree of booth - Implemented the monitoring function of the resource to depend on the ticket. - Changed a level of the log to tell that the expiration date of the ticket expired.- Not setting realtime scheduling (bnc#804707)- Update to git version 5ca725b. (bnc#802289) - correction to let existing master do preferential lease - modified the 'rcbooth-arbitrator status' that it should only show 'Running' if a boothd is running in arbitrator mode. - Fixed: booth fails in realocating a memory - Add function: booth client can use the host name. - spec: add booth.spec.in file - Makefile.am: enable matching non-annotated tags - Fixed: change return value - Check the validity of lease retry and renew operations- Update to git version fa436b4. (bnc#790499) - add icon for booth - Fix the wrong timer assignment while catching up - Fixed: Change initial round - Fixed: Acceptor log error mistake - Fix the wrong error message when multiple booth daemons being started. - Disable the cast-align warnings - build: no need to link to glib2 - build: properly test for libplumb, remove useless -lplumbgpl - build: use AM_CPPFLAGS instead of INCLUDES - build: simplify check for glib2 - build: don't uselessly link against dl and rt libraries - Fixed: tcp listener error and trivial fix - man pages: invoke help2man with -s 8 - Correct the return value when running grant/revoke command failed - Get the highest ballot when catchup - Add lease ownership checking when releasing the lease - Add error handling when call ops of p_op - Remove reject of paxos_msghdr - Add judgment before use acceptor.plv - Add support for fast revoke of ticket - modify gitignore for ignore cscope and ctags files - memory leak of proposer_propose and paxos_propose - When a expire was not set on a ticket, made modifications to use the default value - Remove "-f" option in grant and revoke commands - Code cleanup and trivial fix - Fix some usability issues- Require appropriate version of ticket support in pacemaker (bnc#752241)- Update to git version 84b6583b - Improve error reporting (bnc#749798) - Enhance the ticket information catch-up from other sites - Notify pacemaker about the ticket status after catching up and fix CIB sign-on error (bnc#753619) - Add missing header file "time.h" - Add a timeout on TCP connect - Invoke the new crm_ticket command in pacemaker - Use strerror(3) in more places - Add messages warning of expected errors in test output. - Add some debug messages during ticket_catchup() - Refactor code duplication between do_grant() and do_revoke() - Fix tests to deal with addition of ticket_catchup() to setup() phase (f16e6d1a)- Update to git version d158b493 - Fix building of man page for booth/boothd (bnc#753276)- Update to git version 616d832c - Improve output of booth client list to display human-readable time not UNIX epoch time (bnc#752815) - Before each test, ensure leftover boothd is not running - Don't restart/stop booth daemon on rpm update/erase respectively to avoid nasty surprises during cluster maintenance - Add "--force" option when calling crm_ticket command- Update to git version 0a4f94c - Deliver revoke operation to each cluster site- Update to git version ab8f7be - Rework catch-up functionality - Fix compiling error on some architecture after adding -Werror - Correction of the problem that daemon starts in foreground by a value of HA_debug. - Fix "warning: ‘addrlen’ may be used uninitialized in this function" - Don't try to unlink lockfile if we failed to create one. - Rework del_timer function (bnc#751703) - Fix paxos lease renew issue (bnc#751485) - Fix compiling warnings on x86 architecture - Fix compiling warnings on x86_64 architecture - Enhance log output in paxos implementation - Fix typo when refactoring the code - Change default configuration file to /etc/booth/booth.conf - Fix "warning: too many arguments for format" - Fix "warning: assignment discards qualifiers from pointer target type" - Fix "warning: no previous prototype for 'safe_copy'"- Move README/COPYING to /usr/share/doc/packages/booth - rpmlint fixes- Update to git version 7fa35c - Add missing import of 're'. - Fix config file parser to cope with trailing whitespace at end of lines (bnc#749551) - Fix bug with parsing of files with no final new-line (bnc#749551) - Test how config file parser deals with invalid transport protocol value - Check transport line is not missing from config file (bnc#749551) - Test debug mode (-D) - Test how config file parser handles missing quotes (bnc#749551) - Test a working configuration file - Make daemonization happen later, after setup (bnc#739015) - log errors when setup_transport() fails - Fix buffer overflows with -s and -t CLI options (bnc#750256) - The beginnings of a test suite. - config.c: make parser error messages and variable names more useful - fix cpu 100%, while using tcp- Update to git version 55b237 - Refactoring: extract initialization code from loop() into setup() - fix type of booth_config->proto - Avoid tabs in STDOUT in case terminal doesn't use 8-column tabs. - main.c: Fix compile warning and usage output in read_arguments() - Fix warning about signedness of boothc_header.len - Refactor code duplicated between do_site() and do_arbitrator() - Use cl_log for logging - Fix error handling problems of function do_arbitrator and do_site - Fix ticket automatic failover issue between different sites - Get the correct ballot number if the proposer has ever been down- Update to latest version in git - Fixes 'gloablly' typo (bnc#746362)- Add rcbooth-arbitrator symlink (bnc#743777)- Remove unsupported command line parameter - Implement booth client list command - Implement ticket revoking functions - Revoke the ticket in CIB when ticket expires - documentation: build man pages with help2man- Set proposer state to PREPARING at the right place - Avoid NULL pointer dereference in paxos lease - Fix PIDFile name in lsp startscript - Fix pacemaker ticket handling - Return EXIT_FAILURE if initialization fails - Modify the timer expiration when accepting a new lease - Reset proposer state when starting a new paxos round - Rework some functions in timer.c - Change daemon name and default values in OCF script - Fix daemon name in LSB startscript - Fix not existing function name in booth-ste OCF script - Add semi-colon character to config parser whilelist - Rework paxos_propose function - Initial autotools support - Add COPYING file- Initialize the value before customized proposing.- Add an example of the booth configuration file.- Fix uninitialized paxos lease handler. - Not to send duplicate propose message when already having quorum. - Initialize ticket owner and default expiry. - Fix the sending data length in acceptor promise stage. - Fix tge uninitialized "ps" pointer which results in a core dump. - Fix the improper package length conversion. - Set the default "force" option to zero.- Integrate with Pacemaker - Fix booth daemon initialization bugs- Implement the Basic-Paxos and Multi-Paxos algorithm. - Implement Paoxs Lease algorithm.- version 0.1 - Initial package check-in/bin/sh/bin/sh/bin/sh/bin/shlamb54 1550443438  !"#1.0-lp151.6.21.0-lp151.6.21.0-lp151.6.2 boothbooth.conf.exampleocflibboothgeo_attr.shresource.dboothgeostorepacemakerbooth-sitebooth-arbitrator.servicebooth@.servicefirewalldservicesbooth.xmlboothbooth-keygenboothdgeostorercbooth-arbitratorboothservice-runnableboothAUTHORSCOPYINGREADMEREADME.upgrade-from-v0.1booth-keygen.8.gzbooth.8.gzboothd.8.gzgeostore.8.gzboothcores/etc//etc/booth//usr/lib//usr/lib/ocf//usr/lib/ocf/lib//usr/lib/ocf/lib/booth//usr/lib/ocf/resource.d//usr/lib/ocf/resource.d/booth//usr/lib/ocf/resource.d/pacemaker//usr/lib/systemd/system//usr/lib64//usr/lib64/firewalld//usr/lib64/firewalld/services//usr/sbin//usr/share//usr/share/booth//usr/share/doc/packages//usr/share/doc/packages/booth//usr/share/man/man8//var/lib//var/lib/booth/-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.1/standard/21df3fdda4b3eccc582ffa58895d564a-boothcpioxz5x86_64-suse-linuxdirectoryASCII textPOSIX shell script, ASCII text executableBourne-Again shell script, ASCII text executableXML 1.0 document, ASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=2f63a26e4bfcacb41f20e29dac3a8a83d6ff6617, strippedtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)RRRRRRRR RRR R R R RRRRRRRRqW]Foҋ utf-8c0b0a0cfe31f71f561218c17fe8b195a6fbe259ac01f964b361fab9274bea530?7zXZ !t/h@] crt:bLL t0-r2Y0&c^ UHn|3[Sj:< }u ғr"?ܶ 5]j,~5؎ [B(2bOt(s! %ubv߳!PfQ$l4,!{ mVvs _߶ MS#nbΩ!" ~VǾ)4/L۸ux2[X_sJfp|Es_.;S5\3wR5 u#}3żʨ Qx܉Rzf%{WGGOS ^T^O89 xLUOr :wI}y/vi@8@%DzP[h^tUojKZ\Wy@ 6inS"xnmo  J_lX#7z)p:nۃXJ]gDքtq[c?,J)!6 Yqp-竸>;zmf:̮)*_]JDedc:s[O3k 4 [03Cہ[~\L1&7SRh98rH FBd3"{1Ҫ 1*_xg?r7bqIxS|"w7;ӃF5Ļꁿ4)IcG&<`?ԼR&#_ˉJ4#0Vϕ?Cvmlod;ULӖ^pE#A_RV\ BE1<>/fH38'G>N NP7Ҩ?l%"@kʊoxv&5EGGz7t $c㼔lgǎ6 nTJ-t< U N OccN81׼{m<(/DzSmɔ+M^Gɀ)$9REhi z~z],KD߅ b>] DhJ5'ZgR}#y CŸ`mqv/hx=2ee/Y#3tΰz(e~A8X1?Ftl|1$*$l@۷.柒6 }4R+&[C;']h)[ɒz! z3d"+0&̧gvA΂A'GB9nU\kK#vw Q78m:WzXX݇uE!PPĬx~t oA߉Q@}Z!HEvB|44!~x`B ENq(Y_Pvmy=sIǮ3/{oƶ?[դZ|ֺ{2TTo 6aTv50FoC ^/U{2uErUIRjz)R8棿s"txΒ\گkヒ : YQ̞ʶ>2w=n/K6Q0jd=j7×T4?ӏ]9Ȓ=ZnVsu75?Val3e,۝ZFa|=,c,oTczKY}/fVvX9WWG` #t ̼j.67 Lg:G=?M\qKv%hϚ%Hk75-|0yCV;ф;Ө[MgF|OK*kut*1fH~pQgMu)|)ui)](~uK~{Br*yPKu^)Ƹ6ɻ\SM,^+k[0d ?F:[Pdmm KYƳR%sV48ܳlHĞj_[ %jPԻ2mѴNi3U֓u4" cG!l Kafʜz{{\s{of"s{j8 Tu7E I?0c@\-iNSÞ)MmHAx:M )7b@>s I*Xxw3tk'6(yXmeuk+`fPaM[Ѥϰb rUt2hlE̙̐V\NapV:A.*YsR|6{COfzKt.DKb1CrVUFc!ܮEnv1hML5m/ WÅ1 t^yM01}ڤ:f}q>HjgS 7%74~`c3yA L(9niK g>Ɗ6>]XdFf}AK$]n91=u&NĆ*#Mc{Oxð^;pgېGvܻ. *`05Bp^9+6O՜³Gq PEViN[:|2yXQuYe }ɦқ<^e a.%a-> eH|ק_ `SM[ee#`u_% 0?2k׷72,)|,joTMfeZBFDɹ0k=M >q K'Ԃw9?,H({K7rl*V,Z$$D:&sI%h#Ul(57ԯO1Hq3jcKeP`h/U0_ $nIv̔se2[ht`lG]5FBK&uuZ!'hEySx``!![ulIL|N|Kd_`dd&G"mC+QgY 4~$"UYn֢׻a TT%@eI}W7k TruS%17P -xbcwz le~"^**nc6_"'ؠB& !O8}Cqy ~[9,ʈ$I?`͌JZAͬu?e_#s)V2hυDq  ٦Xxg6wV]c|ńp>eNzw}= U'L;z,.ohP2':Zt"vK}9k",Ts1\{.tR?0(euSѱѻN Gu3Q;HkY?-@AW* Dt-㛈aq$@xie fGЇ:FH>Oy:}!xvcon1X޷ToZ.1+z?7A*#h{X:_sZ犛~ɑkDcki&&B&X}lin(XlLt 羁Qo8嚆jȗ2l+€ j:+["CJ=2q$h?>8ڗUqΪ-R,>D굥b(PӴ,xa]6Y Z=}A zl lA)!W|/ESKܜTH{ݎi9xB[Z\ ?ln;8*n5?K~‡fJC[[DPG(9y6 ^?/Uey!Y-]2cT-LҖbP݅t%0v1!ρhApVO7LB 5 ;Q#,N<7gY!y,drLͷM^U:IwM*֕ wf}Ϙp@5kI W=vv9g&2hHtF" ^Lu?f&e:ds\3B%) P$\ wUw_*d Jijpy&4VXڰ VeSnN $ #Y * 2׊sGgk `kQ=zGw=~S0(\5o D{rayNinx8fDZk_1=1:_,}>$?=dW!ظZ&fķ;fRǝaںذRFFҟ&[< Hļ:wLA~>x** /m3U;XL|orG@h8=k#59]:F#I>ِRFKM#2tRڑcj?/M%m+r*}k>97B /c<󰬾80QqMN)lS=|텞=lԇ. ~9Rf:?T4$οm웰QԄA^RPߙc)z"Φ+81dEIׅxܥAǡJK ݻwͫlP,0.Gւz2D A#o8YL)GmC]e4a8W%){!˷R|( Os|Cf$JޫХ* P0x2`BB- yąq)9]Fu4R8\FBe1_׀]C:]^~w@O''j q.9dkG!.MJ$?ecFOO? ttʉQ>w,KFf\F(yc,D뻞?DTCr{f8(#o^On*2&d#.r!{C7;9Oad4 2f8̀HF[̒04'f2=aR`'g&*K3vK[50F ="y+ 9]_\0+}`Isk͢ !iV^}4K6)Ep =| hl,*}lahKpL5.$6OR jc݅*[7M+ӴK!1Gu㾢~(.Oi@iqt}%C|D(m٘pw(d֭6w>K $_~-pXWI W x "ZDo^0E[uaΗl$k8Uie&{:NF6|[aD G&;,icu?wf8ڶ5e"8EҦ"ʟC0TH/a _;G|by!ij4}k2X&̣z͆G<k;yhs`,،kb{|%⠟y!H^\ՇQ^m@h,ßN"0ޯ9鍍 6Ce1ֺx!fȆ 0ԩ-]!T@3q.yx ueB"v+|3K$x{ֽ?7x#דѹ9ֿbZ <%֝P/Jf"hjAzUƌhęפN1F+贠G11]0F\1mꝡ088WvT4CWɨ~m`32w` 0NLURVr?HDƵdC[}H+*^()fP<*=B/ ,- |$+*W/FtzA>_RF5l;_$ₜ3;Ԗ9cXrmcJ 7KmqPAjĞ]NďW]0 :7kr~s9|Thnہ!afɟB"U^QyEGp@u\*i_kj$=,#" {=J˫riO m0՝0^#$LkuGGŝE#)Զ9Ϳ憉qЕ'׫,(W !4(pvO'PN'bZPd8p׳ekCKm>,`6@e8i _Ch)z$ 8Rx{>3YWqHCIjD5`t< VAVoc2(B GD(N+?!~VaM?ʾjM0/fW@"(\INIOc!2<ݞ a{7eEpî{(BG\nƁDRqB$hRNM Pb?:"0/3H4ssyQxY"r^_|o2NUCqa2B|Ԋ/ S ϙnO۫kJWXkHq;fDz4-Ik/K.f ]qh9+pg N y0݁MCOk1 lA7<þ۲N@K> 'o≌ky( [0lCކ"m'po'LoL7Ω.WE4݈Qn |)E/ `t~҅?U< 80a&Q;;-Ǩ>"BU& "D+?Wj^߀Z5c7mg3CCֲBd5;MoN wRwsEtGW&H}tM f@BGdpi5j[$;A5c ZG_Wm "n6)(Rsc&'b'`GK1?GF-qQAi'1te±mΠ^x\7i"1}zSuPkhO8CšVv[;o14-?v:0-EVte.D:BUS$}CJtP qڵQXqۆxm|Lٳpȏ\* @=Xg-d7k?m0Ig_o%)U:ZkwpX ;Kl~.e@m%%Dxv-W(a+HGD,L 5c5qL؉ձaz]V7-|qv3:I>-FJFحhʎV|l.QowSؠfr Jo> MY Ǻ{,PFxKy34 bRś3Aqcvt-KUhf^`$_=ht6CFN; Qb6qNx.{xw8 %?̐昬ڷͤ m7NIoi3YR[5UBx[A-rG+y fK'Z$gy=IE%ɓ1}̊8 ޑؓbg n+$dݛY *9D(t-& Co5DH aT)0Ճh"cBeT9_ 6Z*hC_5߯W5b^ϭ[Q}KsKx&X'oV"8u$8^: s]y)&~(kY& *nO>~P]թzc2o٦yoC3/#+7Y{B 9HӰ.4iY5j#AtA[I::eS+6|փ3NTmyBΗ7/&R渟غ?9J,l VJ1z$G|v5~'c)\%Q{?V[d{lT.\,~1l>k ?'-%*p1$ m7ݭ 6YA{t،SbQ3[s9{WΞ89A<;L vU^'bH=$ʪp #ʇƓS=` yКG{UxeT;>8a"_| UiQWq)wRoV9JCGUڅAgleP?]+r巒GFdm aQI:M}Ugx̒qP$1ʊTC98+\h}E xq|xA-?4j]N-Æ\(Qg&5>tcGlzN{肱ou'ƿ;K~B_L5UtQyz4E= ޹]z4+NN"\%{0Lݵ^-dUt9׳;)֯a@]>#uiB8r{O6;/g9;yGUiP wfOr5N `X Fo݀*'P?r(<+AqjMPi瀙M7a=nE8ަ܏Rgf ΄䎞Nwn-U%0b׆{"G5>D'~ׯėjFC7.QsB*x'9#wY{ 5 leD9+@ "ot#`W،%mbM6(^*^iޡBw3I))#eJVA~zYsâx+R Y% ^-9yYlc!U g6HKWүBd6=_iZRx֠ea|dZ V<~'sM[< jPA\\CCѴ_oUH(iUrƹB,nZe& Ծzè`p>?jirL}~h?Gy]] CLz_.['+ա46=(5ȨK0^B>ķdKr%dzxHEl:B6:ܧ2P1r?)x]Q¶mpKceYCEV?O1XY Fx_Ñw/Ar('i tIzXB5/ƌYI(Km4e"$&0}f! ?3yP&@3m"6|PU(;K2fO[p6Շo #Z8r vuCJۇ xLu$x@c Y]Y=B_IXU0s6hn7Aj}WZtA,ƶ2D<ަdˆ ) 9s 01CQdEf'X u>+4TvHx#34Lͫ ikJj xrNk:Ӹ-= $%M3\fP.+OR{L<3^[ԪD>o֧bi F2??i/V]@E&#[D6V7)|Rٯiu{AduAqTȰwk@&qVe.U/* j/?7f|4 暩r=]79MT2b5U*;}++,[ Tz둑5.`VXdDwωÑϭʲp@T%>ZR tpfs@{LGԮ {u2L9f};lQ`X%4%}Qպ=Vky:q .[de6Pkv"1p$qsG& کp62ڤg_TO!Vo[ 25΍7Vi[ሬU\WU,.=Di}?wkAZNZ{YKt&؀Seέy!z]TT$\!1؆CF@!0RqbDS +md4\Y= qX, r vC'h݄ۗgקJ“+V&kbA.h;?O/K`gBc.ÿNJ>y&P͒7jYMcl0XiV56U!9y"=,4^ӌ+33U͹fy.Z(ՑUڈR3e)9vhH1(>a-;h$]ݣD~u ,Fqq{$.O9A< &y)y޻#e7pu'_Ge߉XQi & $V#ESeӯ~%ZCJ/N"Y9zhX 2[#=jnv ^fLUu%~芹GhDqX3 1 n.Vٯ JhcOZWTWӍoo0@GJ-+`B>L Hi/2@'䘊&pփ; ͟L2,‘^ )E И3i01s8+1 pn8?%DI.N62wY=__Mn]_8QeFr9sxK+lt铱fU I'}Wtu [tM<י&c#-A8K]uG\+qleS&W/q'?&-F7z ˉNuEYlQˁ/ "M<}I}.?V/v[5hòǙD?9W[O,ՃRŐĚ4Z `]Jًif͘OǦj8T Lr?dž&C:?:`2j?|J*֏_d4fFkZ[L$[g#V[2>XTP:wFyyO9$䐖C@0h.>8*;*?;O UQ:0U;o*5'b !M%G_sEp͖ Vg2 U3DdkC2F Lun0ØXe{D;$K*[Ieg=~8y%@HWLoҟNn;_(:\wbB[ܶc%:ގVsnW|ђcc/LwIg sպ'7g(ZIXtqV/?; c{XZl.?IDX{p/<@48=BiKGYֻ_ʬ0~ܷ@7H|6]5øNrVjU\pQ ]6sѣ! pȣ2^{s,y4?$ъ/R%2 ʟY>Hs`SUy5#]Ĺl]+GBCAH&%>Y)_G3Y{*:ʖ= ġuP=?܂gάF ;nHΠOW/<'XjWRb1 ]n"c<"'~2.'ߨ$Pw p-cFuo1_y^X:᤼ST?6*vVoNwӝF<(,UFw :h]>I~6:B<' ~9V`, L6&E5>/o?ɾBZJSo:L0*td6 5(op^EQp ʡm%G-킮P]`?N%;];%(_μf1/Vw?0 O+_:d+@ZrlZ*u$'}HUgvEs.'zH`\FKUlj,'ML[ \눠7"!04C#%`m7xcSQCuӚҷuQUnzLEW)%7+%Щ[U85KY@!S-{|ڜ*4kXw(˸Aixt}! N%S_ܶ0b4MͭSԴ)dAU3YF=rxq<՚:@R90)J2ٕ3۶E"JjjF'xc2B,_Z++r:4aOך)Y=)~㵚yM N}WS: :@q>Qq6Sqi;6ix\plxj!-[?^6GObܣE" ҽ\ꠕ 7Z-*Ŧ=E{zu+GT0+. -іQUuDS}]n.*2Bg'>xyn|e+{Z4fU1px&kBV=|k ч!*CW ؼ9bi f |v3uD,8@f]2VwVx!%Wbo',w|ws3}AX橖oiZ*k BbALRѐ: dϠ'o4F,zυp^X=b\i:jǠƑ#J!,抴8O3~켸KW_Fe|^@@V[ߚ<^5~TN30MAC`t Us5bf'_zZrj~]2ڈ >_FhAuO3~RFD1 f{i K ߮-dfqym3)G==q ,hhʿiLrAi%w4)KGIDW{/66N/7fȗ>_C`9&Np=Yc.6Gؠd@c+nK{*%9UNuZ0HZbU(b_zϼyõTwzN{EȘ:)IxdJ;W ٬jl1;V -D<8.D8Q&R t, #ʍn+ m;OeK* K 4:~*Ӳ&8O\ d s|j>DͰN@La9E 0*P Z7ѫ{Bw)\eP7.\SKelfc8}GVN}\ ̠g:UY[Va[Li\5HoK(2Oz2)oN s9ݺ,l8vDPs^\5e5nrdsjE@>R%z˵311[[G5An'CH.CSG1Bҥ]x Tm`45n;У3ґFnA5unJۊl(Jv`9x9=l'd ]T \%e3g{?rdkGYbhՋ}ޱlė J_qy0\pk P*wtݣRYЙ8#!>]\0wmpW s(&]&Aܹ4&Hi.Ů<?F5 (Kh%+aLhNqq;g`G ӥfjd`Ydy"WM cp{< ebI66gFvQDdl3%GL:kB@͜5s*ˬNQ;nX%I'`zI&B9ZƶYzc"43}&#OFP̈UyLe6muM(@MX@^cAuNhE_ֹ!?E+,U.eچre0) ߕulq2dv˲XO~(_'$ ;y?67"l0OUdiOO^1Ըzuxz`vOq,]u0hjCVhH2o7AÁ6QhńbiI4q󽁖PH$ʙ-/mV%UZ~p (~N"b<ֵvr}S[ [Ǵީ F+ͥVAq?O۬9d?(4pA M?eg-*(UEC5rfc\uӕn07&SSAZ({x,ܩ"xW[ʹ 7iF ',M@}/agPF +}HXRGAR>v"lᇤ2 VOpX"꾗Ֆ&U_/~5ۜ-?nؙP#v V]aO,ZXm*#m%XX@齻Ž*bR_)@Ь( $g /-?&G+3ʌ}fgp SSCꠞ$@ug1y/pxMo:]$6SRmEgm-a@"OWJԮ%G/uj&Uj1[Nv޸Ȋb =31YU``ő.Yv 4ۅvsgG0 -%N>Fg2[L~i2{KniӋY'Tyssֽ*cO*\-7$g|pDxd(˦SN.{sup߭GSW GeL`͂欝LD!Ak:oR\JR}Y8hյI\WA 9 suXpRq, %$Wp lN a|!aƹ?ئY/XkL.a]m>Q Ef0YiۙCh-P~Y5/b^hc4̌F` zQNQ}q''MNS(`rOlk۶Q'?0@qmq\-B)!.55Ǣx#AfTco-c/D3M`/J(g PeŮ[V0uh?6t_RuVZOUԡ゙7(4|}%>+sFuC |*EnU)̪2)ԴMR%ǏoS-+C $ȠKUp0"]ķ~C/ީ#1fǺuxF!8\6Izv;aHvŃaCV~FVq)=hGv& PACOu k2Xp!m?t xP~oӁe[+qz, xޝnXj)'9116w&*Tsa>csQރP!ȈT@A^.)P$Ǥ 3o|#{gPWOEZZomڶ().΁M-ʭe KKhw;Zs0$g mX,rr98qLmw oh PPXK+Xn˩9lPi%`A Q|-L`Ru'&W,S/*/FINK!bj+~Cn=CMXY`ثw~",JOXs UAڮ^I'؁7Sj^ؔMNaزT-8S|8?{ʙzZlOfJtcyr5X;h0M뫗A91RG )pY%xג؟*,/{R7q|T2w뮫Z.\9Qg ͐M{9Bq_+_[qޤ18!G];5ckƹq֭Vm R"еcWsj]*hq!0~Y`t[u  CUu{uU%s!8h@Mk#;:eˌT=VM}mKgFRY{ZƤ| |C~#X~ŒSe6q->dO jg?DՁ> ^U8oƭQ%T|`) m qh *T; D$ ԭqC@s'9bґg/L WE=5O3aA 4&ǯI^pϨ諠 t0BѦ0w߇/v]녹"X!1‚$b xQx_vcV" Ql;eIAgx[sOeg*pȭ?-? @};Eh& pF-cZRi&*^tvS)*(T # ܕf7}'em-FTXC5{6?E滙J'UyM}";|'Bݵp~5Q=ZЦP v)W_IƜ˶1 ᅽ@7zYX<^'Rם`ey U,0ز Z/a/r:/Fh2ѐmƭ6pVV5dzv7نT^޶lyVn_κLASdQּޏ ǚ$Ua:"ļe,I/vnZcUΧnO+NSJ#D(K9ZXHj*Oa{V~Mn X$Pj_Zvξ;Ms09zW#W5D_0P`]ZO  }Օݕ< .-/\_:aj{}hEOw:"ow:LR*P!c=ՊFoKڼ+cn;}?̬pgA& wwtQFSvFMh;r35ÀFlߦy{mb![KVԃ;Հ'p_i]38Eמ%lu&dsZjn\x E^ 7h5Ϊ\*SK#|mgPMccAgF ; 3N){4(Cx 8pGQ[{k6gBTw\f_ /5yrw&@xJ,Vp AL6rS6\%n=MO~KiM܉禧gǾ0$ͮݠQNa)1.7,4?G?~A{fFSBqdCx #$m0* /` hFcę ń|Ki>m..(2T)$L~BNѤt\6d;Bdax~,V!znaV|AӷZ缬@]wEM x7ń=XEg N K4Eq/ 5{ڣC/$ f"ɈS _ffmz嫑Hwub$;H(m~aŅX]~6G" Q0)n0H]Q6~oNSrA2.6& L7d(ǂoм[ CQo/*1v}rA3 th}Ѹ'f6]0WL[JO/jC=<G%\ՙĢ&@ֽN/X e:F0G3ĺ(6\=3jt]I1T[d6h}*+m5+\UwS 6tޘ ,U[na};BSuR*!nBn+3ov X'{w$+,7CXB홤}~S0'5d l=hcy|\*v0;AKܙ'Tfsߪ(Dc *cJANag)aMYUZCfE%d^g(qΖE0\Xt7X'pb6S1%ۊsP|awQ.<oBA);j;&ʭfNz,ը2klNIPÓ]^1j }[lIȍ/ʜЍubSH{-KXQZ_F &\Ҏ4}>̮`! mo.i^q?ʐ+Ä h%UBcjvpg6&Xy?]y橳|ڼ[nD>]p萋V-)ܰ7UP,[- ?a:cM9K[u;Y"dkH4VdC>cr-;GvF+ƴEߢnxb\Ɗk8SQLqPrkq\0+EykGMPwà2fTe@"˛ڮ3U_ D)ib.Ǫo"Ob8mӭQ<#_2֐Iv~ |o=$RiyFMވ K̿}s5~elt,1hC{ls cuwcDIrF 1K LkL3_W QU93(|8kF|yz>5d&čGS{ReV1 CPj@S<ŚpG {i}W\[nUfޭB0#;ܵtKJzۼݣpRư~'xVJbtԠ#F~Ӱ2,n|FL{Y:ېj[DG%<3̫mb%[ѦOiC'C3fy$*MZg:S\Y2Ӧut;|Bh}8eBq-&?ŏQ`y=uE!_#Q} (LjX+ٱ#tqME:$O/u~43YoS޺ Fwkq& skwчdWdz\P 8*Dp0U\REmvVQljc0s,;]yۆwIj?;/޲*xIY$ ~~^D@#ֈx&fS ţ]6g`+ D lԢn+7uΣ`NQg]r ]nBFk<"U9 A!$0jY}%3pO-tNȂRɜ@kqb GËUVwv1͓{e>*h>|pyq `o tj!),cj"+d' Z{v׍C,L.eZRN;zTj{g 31 ؖ侸P:Lr|Q*!qӒ;l]zٖ})pMd"FGkvAA" 32%|^XlcCUwRGO%P}P铯 W 6YFR'C)JH`mJo7(}9kv.eRMV=<B~EG0 wuDņCS(+2қE=+뺴p`q=tEW[1f\|wŽ6zEA#vP. @\)4&B SF:BI}|sϖ,X2*2by8=aCpoh˽(jPWnah6Ҙhjz8oRc?$ʫZ%cbp+ P)L" eިt:_'!y_`JX}Z$iyT 1߾nʻ;ݩ7!m:hn5DzVrJ-àfdDVw Cj(S]{4au ^Aorȸ+{}RofM%6A )2v.q`ޤ% y̵ +]5rM9r!: =)ʙ} /(lἺz,1Y ARO2\8 껃R2%M]xka6;7ڻҌo72X#l̎^_bݶ43|P )(Y of,KT x|?6UDbpJ%LJ< -8o.֒F ݰuCKQpd&:--~r.;Z4iY5# 4Doi ;:4?/:[iG`fMFA/z )Fh<:4Z8Y qp]' !ygbrUb&l ǽo᭠G԰H7))=-Ĕ.EeD+2xEY~?TCnܱRKH78dlYů}w, ҇뺜dZk#qgm'4 _!6{7RR0R56 jnܱfOG^''FA7U5ZLF.,@u"#GL+f郓0]Hlsg/vxGw,LVQ@fեec(GWda q><oJǫKpL_b<Ç l3T e843AQf[^PNw*75yMQS0>Wơ`sKx;i%d)Xю&~ܷmA8P~ 9whr UҪu.PX=:(:? &v` wxNy~-&7>e/z+Ώ,~ TnLqd| 64?cclB&lX3wr*vtː, q%5["@I{''gf'9KMGɀ(ӷ>pH4ܝBMWEeU EW0MQj2ɧ7<E̮,ei\N A4`8a~\80G&b|w2#7߫:dTP%bG7@"Jo^RI5fiڪpzj-y=19#;^12 0;'fDP9 56e֛e uYlOa1?u¨/4Jzp%StA9D*q\4˾$@ *Pٜ=?eKCS\^/uޫ!\GtF@t m-Y^6 F>IP>䪬)ݚ}ΣV 'AgϮ9&sh*[M-v@%n"=+v2qR5>5)#{T866^JÛ),*IJ'YÚ9=j򲙴QHl9_%mUyCU-2/$WҲSdM޸%>xr!$qN-jP[xEM̊PĽm6eRgH_?r Gӵ RmF {F1mijjQ4NCbk{WƦSbLNLTK$h=s>6b= 9HlAk zN n K| 9R&A(Sr*N6b2 -:@k0#?4LiKU{䡱},C UюVә M>BzP>iF7dZR0ƅxNͥnQpaA€SlIQ"t! 0]F75f{=v_osŶr,V =ۼv6=.D?"7{p1jFm"۵. XMp4wAoӝiSZ[0j{%>W=s+0[y{]]M͑F t0f&v3.΄N&)+ik&$` T/] NȭS=$ʏضv͂ >̪]mfGG;9C)`DХh2"bD~>%f-+no:ScUy/߅>ɪQ=Y_,7*A 8(NòqM ߑ[sZ49Fxw+)ʶl޵o[9RFȥv]΁JsTu u:g!DϪ˙=#Sey;940y9P׿&ȩ }^=;)cS#!MA~mMRT,.𳽻EaԚở==wƽ r w(Q *?ΎkЪEʵ/@0ٚ-e,E3 $0!FI8n# :iɴ8;>x>tQ}x[ t6wZKs胪FuBf~dqM!0o9sC8ك=̑&;wX:!dA2)L) -Xv(j矴_LHb /h o&>w"pjH=*>!P>A7reY9F<SJv%d_'Ӏ6$\iOL#CV݂N1'NOXIbNOy,N@NO:JvRLl '{U8Tsx ]gFúF><:w^S 6V␭&#<^+ w% spoh:2BKsi6;]qI[Jc *w>3״[s u/]/ؑՒ^W-hjQfgme<w_ot7oY7rc@.^ԫl`?6&2U-Tv oG6Yeuldq\ٶ5Ql3$yXuΓR;j]WK ,pմ)I%uFt t!Jn'dm?`{=,o+ak-1xj Bov?Ɖg͹T:Uxۥ>yAW"_\.IVkk+x!nP3 O>x^رDW6b [$"G3b!%k~#ݣEO 5@ xjc+A|0 1P{&Cu>c\ >f[CwTJJZy} eً%fnt N{#QT ,W{3N.0WQ%K"6ѯ({s)84Ml)Մ艣LD:ݐ(M7e#y,x"UּՙbzSe lJT1~LNQ轏sFz,qIRz[aÚ)P"ʦ2*x딻 QPK49hvrKWQ᷏Kt*xHܷ&꠨>K8=D½v7?bTO8J¶?IЃ9L^Z:Jw]Q 8:3A! YyT 9$γ $׌pȨlyP$QY?|MKHie\䆨j?Yu NnCekl f7ʰMY6WlTX?lAa@>[y;0TXO{ۆ8JiZ:2"lqB&üO?/A2Ӡ)zJ /:>PLJN#솵J j _! Ŝ'?+\4 ])i gky09QIdZ.b`Rʖa>g0ubz0]cόK ^)vГ\#>"?f9##\D՘:m3I*h0$fmtģ_OEmpvK-ApD k$PQ^f؉ ,`zzk. :ԈNFQ=çHjE\ )j&O>TK3t mW2hwU˼j#]K۞z9h{)$BF:`YRe) R_I MMQDv[ @"t}ȋk.| ]E$2Y'1<60 2Tw&{6 F@6!C|'"F/cQƫfx?BL4l$I}UyiQ GSP`Eof1GՌbΤs@D&7MSn8~Y {UWfM3W {}Xo3Q"R[p*gTO)NΓ^t\Σe08 Y+ڳw/QP>wnKRbڙm}&xvdûxO5 ʈ蛆+H*6Pgq钛Š^Y{;;TSr-M#E9oUD w.8Vno Je #c?bcS,=YgQ:*3W*е>:x0lͽ74'Ob4 3Ix,k:, Ë\Pkÿ !emGpX/bQ7a! '/X 1'CBl +$Ťc9brނ6w}JPjiB2gѦk1#d3A-YGYJg ]G*i+G9&f; k,qUxM &tf. k|A!}G.*a#@# S(w5"[77;jn49:9OntB*9K#j~IV>(d gul6dT98s)X;vrtk*mQi,:S4Z.0ׯA T8_eWېQ}$ j߿3|v'z0+ݡY,?+|rTmEv dtE  Ĵs{_"v&ѣN\ˍO7;0Y;j)&jN)3LΥ1Zo `aY8ryvpK p#~p%s``JXhViiQ"lVf'c ZBoc}YpgQnjm@Z$EXI^t9)H&CD;^ 5 _S迠){nHqhkUԭ=}q4`O@'o껢r'#3$tjxV)eS˷B?4K{I0+:QaԭaU<-\͉3̗*d ت^SΆl3 cBo~[-*L$ e5!$wvn, 1ǚ2I(o X4p*9k}ܲG&gcI6ǃ3`!bQ޸RnsdEv5(i`o6ayh>4ۤ[YYi\,6 g <>eFRF YVTA7ݒq qd~V̡H,=94?9n65j_Il/[V<)OѬKGW(CN3/a3z0x21RUA&Է ȐfCUkz//YL8J?Շ_#LSHjp8K,WRU)E@|# >ßJ!z~*`&(karCZײY ui5%ݎh/Yb\7jg՟ *?4< k#HD0-?.w e_s&1N\H֞!JQnOow3O)NұgS6](y9nOmn!D\E."Z0͟2/ RkOLwVFZeXdvsW\K@4^O>'DB ʦWi S%6`9/ޫʝ.l>ɴ wMm5#js 2a,n4B-!qՐ $ێ%S#wH-=FY]Ҭ%`>Kp-aŘ e@ʃ٘/w n90N ^ ǐf.# ~R;˃5 X(BCW"r{Kq<10UA\Jsu wBT1%*] Ҧpɝ +<շ%AԣKf ji"GPvIb:)lA ,:$kpStTH=͆IgS2@#;l@7f9\ٓn2Lq{G  b:*pb3ᅨi<rxy:$5>Le\M)neLX[V[&yq.>!ub]řH <(]-"5RrZO2 %Lޘ|q1T*ҔdzDi`j)Ejǔl=*SߜPlS(.*8|X+.ɤ "k-Aá;xѓMwW<~>)Օ< [.eN ͥ#2H_ @g]7[Fo4XN*Nº\җvIw|H#۽@ NM U%D1^n]چS%*qVGlOk _|VhOǮNU9a^@7ո'imAK -l4=h&A8Z e% + A=ڭonYڮ ϰߕ˥/ }ԝyui #xWf ;r![ kH;riKB'H| jgTYL._&$ԏ[ 'G"r ||wC&-7[rE"L?5ՙ(x\šwུ>runf! d tk:(/͖bQ\y}`]w{cHoep=,BJ]πצh%-y~<ٞJ7 h)i8 y)˜>rt><ӈiK#iotd-&ӷ˒( Xyh[[6${[@PoBPS]tg\'37eڡW7|#gE'M "6XjWm$|e?̋*A6?ll0rfD,kiķWc~h\0&>ZM=i琱fݓ'BaP..`&;,/VC58|s LHUaްf,zdyMFY߲nAܫd! $keYآ諰EݲO[{6'+pJi?i&j|n'8HB9.;3 Z,_}=ȖLQ'ME|;!r|HPR`Nk|zH_ͥǭ7/QKm'QkPb5޵(+G4>Qc/TMN=RDHKN,[)8'*ؘvNImUjP \95pd4ӠW_%C{%% 1R7@l#$ ЦQ[ջqVrA7殽j⮁"F $Y[?To &餏P~6% ҎP%Jm{ޫDҞa' HzˆhW"6,3TfW` S)㬑oNԹPU3G8vغ=T[K_WwԤJSa-=g040ݍǥ ?al*?8&cDn$v*1VHM9OXq/o} [&o9g+Px.N} ::7;Btb;#ORHyCg GMz(Oqql@ Qq9|ͼJK[ehN70xW8ȅBEBI,C_A-c]Zͷd)1b&bgEpټMfW-pow"ch;~Ew~;);H dEpSڽLQv 7q ߐaYMKrrH,{\Oby J#U ZeyV _Q+g*a="Y13kvdJFCl7!?#md܋+ap&oW[Yא +arF=Bmv ӷ"gF4%Sj}fJ'c>Ma7ѪdI 9"] (*hqo}A O!Bwvx7(=oFJWcv$*̰F6Zjj4*? ~ĄK.S%9Æ\ :>٤G0|m9` ZҞP37+xM;ʡk72: Pa^;4ijjLߌkuu [[Qm`Fe#{EIq@ ÃM:Jmf#|c9go4IJ=Y?$x]O`=q6E3(.›7fQ Ne`"!>lr9hd}EQ뀊VabMo fތFchY~|Q+7Ecɹ(cf@Ҽ=\^7}2-$F+%O!r}[[AR1؄9lpTGDsZ8[+Pߗ'6\WMTXktf63qF^E7 9Me}$ DΥ7X 'ic)SC Rr{Jq_8Saq G7@ )Ѽ*IwK JONN37CuɋxXi'oW2x3F` @ؤ>io߶&zSY6F̫>#k!{%2WiJMn :ܷȄ!S6O JRQYb}U\F80ARWC&)Ѱ uB%DaKؚU[;j{R6-` @l /24wiʫ=.ͨҏG, ggF].$`i𼄲|TjO,ܺA%vM堽 &Q_FU9.K,ԥC8EGHnQ-ïaSó:A3Y=lq!4mҜEGR*?D'X=l Yd7&A)|=Ky1 Cw"=cҊ$Y_[5ԅx x2^%5Ph2~S3A|t=/?$)h^U<Br^٠`w GMCsX9/GY1'c%]h:uЩ:hhqg$llZ&XuNZo*c#Vdi<"g+W=P"yyN`Bw(9f [hF4T~Ƿx@P0|.S?e#b 34Бi&W.m;S k(FQ=wOrut&K[Pέ[*sBkCf<Ǭ|wQh]e7vD, K^n',}& 'Bvgc}wHD.8-oa_5VAwp.R &YH.Mv{VV6w4КZ =)Z?B;h8H37VT+EP[zA 5Vу4֊`3~hgf -NX?84%>ӈav'`"~UTM&ʷnyG` Xhzk"m+pN*V-o[^UN>~KdMZ5, ޾ȹp!}Q+$Hjo84_m&+*igCj,y"/h`UWm3aV6uB{:cI8%I5XmgAE:i;_+V-:@j8{t^#޶eߝ%F6~gg{$Pg u䊕 $g@Nosc?(,eU=>' 0cjf¸k;8,$NJ!f*hSpC98D29XbzjwE+xY7< 2s u.{İZ5׿2/+[sRwhQjM VC(2d>jYmW GI(O\K44A|{ RH]꯴f6qL!l]~`EQ4KN[ӻPD׭ L_.՗thȄZ (*'Kt 4M'gv}4Q (MdžFLpY'wd&^ KҺQBs-vԒe-sYhkJϤD)aƜ#;bCO-D( 8#&]Mt1SOd7 {p3S=Etr.Ό @\X+-랥.pPJmTvzÍ% @\>&ӄ{K~DpJp|(WOw٠4Qqu)r0i4Vo.H>7Q~95 ʬukоxd9ŮXNB|m*s+jVs4_u,Dq}(3tG͙|8aY:}:1"~NxvEDl:оmOUnyDIf}Ą2[>m[)ү861\ Yi#,aݢwh=TCñz΄k %M TH^mt(d6tq+Aw: 4e@8$4sx]$?d];#^uNySf{yDWuMmWB$/6JEϽ?;}^ GN)uDOrÖbxL+- cyyn@ػ]0"vՆ \CfP Fi p\Gn?ʯ^М(ky"]*òdLf\KNᆽ7L#ge8W !0ⷕAw6|.z1`.iđcy>1KuAuE6S #W'WŤڏ6fYHrg^ntBnEϘXؐ0,11Fч@Q,>҈nbGסK,Ew~;ZjHzZkM )J:M\K t9)4P*Bؤٖ*;ÔcNR1r1+}gZhᡧ1lS"_3PVg&醓;@.L|(IR#Yan${]pIlaqmEIkG aMlYLwtѨ ˱mEl΍]eE&KP)U)F6obNO;IdC% HGI+o:reVfJL]eJ# @ AX? xSh^2@y;Roa+ R"2Ug!*]2 EI[C^wK{STZ4R1O54<.4m>ob_Sf/kJžug7;e5n'mh4 M,W]){u AGkXֶz~32쿅} \#, Y4m)62:]Sq݇XYzaGPⵡ{E˂K``<2s?Ơ[\ӺAx8p쀎oҎw&ǰ"^H 9@A/gj%Xp$w6 {]QiBH nG yƂ*2D"D7L&ұq '\(E5&' .UfWim!5zs %(D\;!D@}1k/.%$2+KSVh?SAA~Ғ[xH.uL·ROm7.xXۚdx(ryC;jH$ ؁.i\[:"1i ݕXRmKz@Ͻ 4wZŝZtJr=|xQX4WҩNufRS>)Z;*qNGd?vEũ +=%_-] FswHQkaXb{{RW4IIĪ8$@JQPEr)V+NUarl0e1NJ @zZS8zh)qSѹ9v ?x WkH_R'.ArA@0I10\6cZ6~ ]1P%=o8閱[.L+YO>\*fg`Kc!C4웵]/ JQ e;|6Y FOG0:u W_mT)}>#yǖV2L4}V=FtX(`Q;pOiF_s xo|)/mpM?C,aKQ)3_̥/ |QFHŠb݌;ǝ^vhxR2-l5Ugo5<\K.Fir~)I{a'H`L"uALa~]l[K:lmAX`밹H/I,A#g(NmC77&9Jn!hFˁ1/ ]w,R75":mr=V h[D'noW+?`DK/~.["sLÄ`, #m %o|w7S2\2 5@̭w -zQ}"jqBҎ$PAFjq >2S/$Azu~o|3$ Y9(En(8&U[7aMVsxDٴ-{aJ&2N#6ʫ.!ww:[iΔR!Y>Gw勒TPo`*YOhq!10 D7dv9Xp 5_/!ܢ;`ycm9@"qblU{Mx=lBh#t2ӭw5O} J?#MwSБexw(ud"(L6^w,@9%!|Dq:Ff\͝b0F bKx10kRd#ByKOLq91T]ǀō5x~;FI<#Od!ZĖ>p]&Kik8ZAby?BX~",w,eTy &|Y5N3ZGuWBob ێX=ӎ *v D0騪PK$ϊFeКfaXP4)@+,2i{ȇh6[ؔ/!fPAR.ouPޮ_}2 _ YЍֽIhLWaPzȿs$ؙ•3;g[tymo Eց}yCZ6}J/? 7&KW"Jn/A]0 6ެx*)`JzJ2&,Ήncf_H-tUu Oe|)6eF;Kw pq.P8DO"נE_Gx4iCt"Ij_p oAibhrh昖A_rl\f 1+*r ͷLX*r3`kJx\dcyY7E$TPa& IXXªK'*O  7=.(IY L~, e Xǡ= jdm~F'$TS%(z٣Dӓ$BD,bi9Pۥ<ɢe ()RF2TdoS玓FcZ%\cBABjeO(9H.5`FsWe`]ܣK#̟.QU%СVgl5 g?_w C 0X%>IG52'ޓۡ֜$wB=<"U:{X֭"@lʜso?^O%g.] 0.Qup¢L*`OoATj7NzyaxsCק" 'Z~z+/ףoOw)L/Iiޒ Y9/)V~VZC[WXûNȖK?f<:ߗ|y2?J݊C,SfO_4^n$95V݇ES*#+6 \qlIJB8vβ rMcڶTѕ&lϛWQ>z=Jc+s^0qR/C+Ҁ%TZ}{J0:wd?"|X7^[g% 勞~ڦ_c)db9IHt@t DQ"X NrU66Pcw@)M2Zu#?h,ԟ_] Ga$+D`Zd2",΁ 01x2mWeCQ(I50`cs0fhNJn80=mi\Jop?fH!Wp)^pJ쀸-BH@ /WdpT~P8:<P0ZW0X̶ `Ҧod@`뇿 P#:y.\g9Ӎ,v&sK>./ Ie ytJ2U'\Bu|>ѯ+{k 'H1y;~NTԝ {[1i޽oCirsXJᴢW˙nLPWO)1ǼXۇlx-878M@2GbE7xБ49`ͮeNFX W iM_WFu8J9rMɱEgf!^Lx.R#~[?OvgXQ~NJ>Lvy0>{94M Qp5'vu >ǥ"MV)voSRȤBcwuA'a{&M6 ,2Ԍu0~i/P)\% e -p+m8+nMϸy$RGKE;uh+Mg͊pf3ꚾl z* 0gsD"׈͆A2ҜG qULJRDD@ ᪪>".0M'՜;P[]gWSC OLF!5?ޞYt+5L>Kg-hS (%Cn'}8#V8֟*. vxk,rL3&4*5[q|,ia]j|?ŵח/jC56> #8P,4ԆQ%U UbPP&ÄvK W J N%@Kb'/y:Ez7A]fix`frkPIr* D\bR31r8nR+I)LM M,;ņD{IxbvA:Y:|hq5׹iԿAǀ3 ޗ3sGZo8o;Utuy҂:5?f$ E"O@und6B5Z^p憲)5gӭP+JVGVfA{w#0NQ@w2Ahr56̭ QC'qsP\Q[fO1u>VL)ٳ ;ԗ=8X}T>E>mXESӈ+ۖT~x>kپ~9Ҳ dt.i-KDX0ݜG'}pBى!w1B镡:ٯ3Ș(և~ ee{?pu*,q~bQ0,c4{!qG#:bska+(AICm8#Um Gn6"zk/s z2$s)K=r\rjf[&( NÜt.z<* 8S˗1Wn(>FbgWu8NY楲o8Zvq3 w#pJ n=0V_QZtxk|*Ju+5SR_ȍ4"ͶJOFfFu)sE8N&iuHf&]%KyPi?ЙjzQ ?#/Ac%a0-n"U'SxOXɔIJ{+IIcj}~#|(þ;!N)r?^ƍ7dod#"NÌ>xWxT uW{*׏̡OCyp\k 0zhD]bbu^2)+4*P=C={j[W=a!;*"&'P5l*5HR9 M?^Z`9עse1RmHZ_nG)fOlEO<#/hkKިNbNP_H,.˅e$՟ PfYK]+gBYRtZt}*N\{.0.Ey5tv TX"YCx眴H\['H_uN5@È0rDٗ`͹260 Q ~wi;1wf'qsd"$BaK8M25zjPeK# 3ihUN?T@r"WyWՇ!CD[xly1|YPgXV 8/ķRn/4@h1#IƝG}kn^̆,~`Ǘjdz %' c0eNs<ІJcZ5z$PHf? 2$;D'Ut8m҇ @nWZ5ķ.3z Lukx|-YrAxA+V$4 j ub6rRB+t=6^[R| jkn$Ñ eZ B@en˔;ɔ}:hyWd99+zomxĊkq븖l#=b 4hMr!4] ˴n>6Fs1:V:@!OԥHHQLBqE5#W3u,/Kg>V|½T 8Q٣oS[=*g\}/ɵQK>PE)DU[;MV1Y1U;8gƏg t8O3[\cU+Qsb>Yi6cgÆ+Y9_{:In\eVƼT_I}(1-<7cb+"篬]@E+w槉5izmgS&sG[=^q,؂~h}uH"?bQ`cpv O/by&Ƕ&γAn/"31O 6*#di(&efa2z@Rn&udjA NQixZaÁِZ|;̌&ƀl. 8#,NfʺR}8'@3 vii(cm»cK`}fȌ|Y"XZ᪯ZS~lFWc~ %msqGvw!Ôƴ߈BD0>igZ5MZ׸o];R_.}$3 Pc4OYD00q`CWsH#s\ݷ?ٛkF`z)hK5mT DŽ$I#_[}  0&xZQ3q.!질Q{Ժ"@~Gc퉔"k kKq%^e)"3g020}pΔ< BxgW8%k{sLfݓ5 `w@US#Wπ.8ge&bb z;c *MěUDE̚X]q{h2f9b1+S;],XacLv|ZTs :Cs "E,֝KjHkMT)-K`Po0Ҩ Bi,:írZ#*a NPf&6L'e`/~'N:1]:ʉ*cqcaIwY0!}/KTnh1R0BSH7E/D/S0MC8OI^%Ҫ^Q/3/R}oY+2{V$S=wݑLb'5:6ƴ3X:ڮZlnI\5EJ?E+)P-T@=?PDOd>ufyĝH5P=sv|ܹl)RH.oBVJr8m@r}*y̛+ iɰD U+:& J.%JO\^P8o" EiٹJܖ4eL3aO $]!RM ˢX׈{NŷW d ԃq뼫ӻF:I@B=FY?ryQnphW!{ra·U荌%|\z{n!ڌx0 #q=9 MjYXh jɦW)` "JGiG]$/. iLnybx~9op|&Q33] H|E:ds(gd1&ЅE_dҌnEYLL2U[B&lW~jXWoa'SDh5q~Eb7Z$Z;+ jc\;s5S 76k{R (L% *9m8uZ|{!!k "7[o7 ԱᱛVwcOTš{|;k&%0:͍*.X™WG03-]Y }\5]e' t/|kqg^Q#0{g W# /dk~EƬ'R9ڒщ:I@[q(2 Q1z߶oI 56\Et17mvHfd 9t#.,rc'0ɷiA`;L:G7o]h2 aTB at=+2)"` nL̻F<ąI]ݱ5+!l(kl]%7eM&SǍСJnu7/4 .JK,!8PKί *:dݛlj)\nCܞ a/MF?q>H  xAw{A[`0 2rPxL6 WRd-G$ "?Eqx2zJ|ik ]f\A+R]M̻</$/hzH|P޼DkbVM/~3AXOs4WĪ35=?kJfe1]URi 61~ 8v)u_ai=}9H+&Nŀ1 +C+Yƽ@ \ ׃_K{iw;n0L{9݀/;!ꖬRe&;*N~./q⫄J]>KVYT+`AgI`YP)G}ްV:H{ `%5lM&E=Ezxl@Nz37Eۺw UjܩKQڳ\<ɦ/оܸuUq?De<=PC/>0NкʵS2S0Sfb4_ƙ pR0|rV٩꺼HZ@eff#C`܍44EB&QAJ5J|h#@ENsDezhS*I><]. /.uCi0XGɡcjf_w$a t_L&C<#Tcq@PQ;P(qU|ge˲/lMQ< +c2G=jY`wOi Fv~J V܃w<s< Y%0;cj= ?_} hvvn6eoV60{b,zy{6 + }.GfVoz*Z-+' IR4ejþDs2`X$d bxW)g,N<}]yw5勑3=/:줞O3I.ƼDv`5)HW1{ψbEy [Q⓭3m`꒎7|ɱy96j793UJ+.=kفN$he#iEx4&6-“ׯLB_4Д!uCJGfѡ_ϐI'Ēm4[#1l,Ǵ) zxB YЀ~յ6ka\L3h CW\J)P(2H; 4OKd@QYs T*1nFuOn\GEjO]h&mw0a}jH&~쀟#XX)]k'cjsk94͇*nc+3wTvM# *ECZAC2}{3I<@~{ȟbO&'fmT<3(-DB=fbۆ?=#ekTyBE8Pbglkלn02kHsJ.= qKSu{ZsEB+ P 88em{ʪ_a3т.Qq9Zw7@aw5ثTzw@osi(i2O ׏J6~ܞ抦S@a$chR#CWV [?ep;g{-4=cbxeK"XT﯇H -l{^C|B\ԃK4yz!gESJ&9X!tά`_<}9?ʝZ#Or沭+Yu!Z1úZb`IBveG2H z`B# XDj_~4bݓHvCm?6beh^jlԚVQIH1ur^tr]0w֞vtÒ̳$&"ߞ?LнKw|&O6oh: ЈU=")o*L՗ᗂjkR5F&ܜw9ʩlTH jz5y̲6L.^[b\ Vlq4rK #MN=s%l~WKI<(_'5S7U?JJp$AYN G?ȒE<^B)20ΡT7dŠZZl]O/ cwx%6B9"Ni I)(h L4~՚rtdU#o2d|=z=O|]J2X LD/9G5#{tO˛u(gL6]~2fTRRlDe|=am2&}%J9Fb19ӶAvApB\%uJWcSnn3=7j&猸B`nڰ'L>`9?Puld+ӒǛg$$Fxo4W_zO)~cOL땥t-1'gR[߳yL!A֞db UN@H}Hy=wT "-gQ_$JR:_ZA c 8e #}h"IIh-hF*!D F2Hg:yN>!M=ѩ`P>}>E2c2ǁfR$.cmt1P UO n)}=EyVYxv 4n8DwYu@At\a3]k1 Y~#d)gSA.};H'n,]@RcGDd]JXx2za+@p/4KjVm;gBQBI+3~E UlRt1J{ l oJ;u|q r$1y{eA,,AkZi8Kr֘K)2>0Th9ņHZ2jM* gZE馺&NՂz >F Μ9⩠b@쨨#Ua(W׈qs䀕HFKAl@-zӟA@TXByI,*&m';ZYnv>h≦X2vruk,>?+ZOd8o 0IZ*fd[pR)O8B-0dxkҳ2D ƺumݪC)8Da܌螫1]NNh5wѧD `NX/ݽKCCQ=q,&)W0{ɟ_JUKΜ a1Q>kaYˉxD2N[SP2[Wj7w?'lggzv/1Zsږ^Sߪsj 4nY34ΐ6o#2 v)@t0~r%}%]~/]%>ġ-R*i|o}#Q6ÑXBZR^ #.!Ǚ"waJAC*r0rP"R!?"axPfsg|hç 'f!WMTzRu9^ 푠V-@vo$0֪xӯ>+Ì^ƯZ;^ֺ0Sv.1"T."]ߕ|F *[ 6Ew,i/x\L+~~yS W_x9>n |}cFEJ]`e}Z+Z`q'!۶f%f|4Y3\]*d;+OGE)L d|Ii.XU,m9=N! 0RA?^JF)n] qQb]) uR}͎};|| v~-ǽ Tt5-N@`\GJRC0Zu^0mѣlV{K:=<_)]]TOp iS})R.K,=^f 5aP8k$ëb@k&#} @U!z4@Ba:D $w1v4G`(f[{0FylAF0^fmؓ1|Ey9ָT 6|Mg=EP`VϨ9ɊyS`N 3o״]{]My}J [fڗ]8B@;@ldx 5* m?KP+U_hlɔ *n #f!}yQ2aS  DT%_m~;5 HRr\I7h<PPV Jɸ!r߮95ґ'EЀ7FA"aJWZ{cQG9h4l}D@~^bB/nT݀ t6`*Ƌˆ8Q(e=1m Rㄟ$/)M.3E\m# =5ZȪR: @E!A4 J bbPcHqy1F~ :y,"~%♏ir¨'싑FAUZDGоWe%[ngӸ{!F*{3 : U!? pmY(6.nO5<ߥljو}gfC|Ρxqbec С z-RHkDrGcu H22P+oJQ0^h=8~#.,_1գ_9W#zL[tTuW4H Q-rN(Lw>䂾NJ1 f~kI>Fb6+6^']E= a%K72nȥPm}A_'&4f"2:- *Vz5 ~eI1.Een61-)pˎEXī&r),-C1Ӿݮ }+,Aa]YsNT/U ^bJ LRL)^]7A^GMkNƌ lMNO |߶_oś۞O7:*ɦZw/)2MIӃշ|hug Ʉ$N!oT8hL? ­ p* Yݛ]W, V،湚(Q ~ #bv#9W;5ԃKf)ʪvGKVoӮU9S21D0-k [j5 EGшpAJKovwh]`jG`Fa;&gPRWh *Ԧ=ѻK[;@Li},/edTKRr *0AWQ$]pc3?}&E`*F/ŠwEΙnNZ3|y2]POa&*fѤkkzn~jy- %Lri-e)ZMlviqЭ1(Ե=J:3(q GY v}cר鄍 4Nm> Dm~6-ׁk>\׎VۣNL3oP|4'XDFȺNκŹ$ߐ5xTD"؏M Ɇ!bRaHɳ"I/qNѿeliI8VGb4 Ʃ10FOZ]umX絻L߂'s*l?7;$]O#^a15 X$u) v@\m?im#PQg1['U.?XB86J0Ǩ{5 iE7?SCMBcY)/[js.Fi~LoOEuuV+mlo]dixk}y j/ A|qd8]+(ޭ+e,.8˳A6(Ey@7%Gb6JU@cʟ]y6?ᗞ/Bm0$,z7 g/*`f^Fs%y""ol)}쇰(*{m6nH#hyA`G1l˒bQMHE:jsoeUEYI2VPy>%su>#tOY3M%@E ?M+=F ]ؘO, I{}i*O~ pOuK}!%nkB q%:ja } )ʿ[dB~ۥgZ~: Bvq *h w-Qa" -F-I!?mTa=)M%}Y깐fXBu{}6vav* GSnOO1dxOxxT9*:G6T0ٴa}k 9+{H{- rLei'hiTD<6-['Xp2Xc; f/hb$rj*AYsMOZc'EskBa9 F,Kȷ!-0< Asf/*r.uT&SMi P'pG9XKAيҍ[͹+,%<&]0VzvTKI)|!jm1";rԪGP<"?mdǬѤK%@t ג4Q%WVUZY"I7?}g%Ӟ Z}}5LEm\+גSc8"/tPD5mGNpT[aT^>j@ ;|0pG+yǤɧ F S)q)F&q$}1 7F[C?^ ZP Hnһ0Di6ZCR:kpDdG*ǹ Bpk:[]49@T,y "XscޞcHӃᄘ:u4;Uhq+{nQLImQdĔbJh0 G!9Gܬ/U:Q2 HQO[Lrg>KS]?D NzA)YApq!pM@#Zx 8a&̓ Y&PF4FAl ѻQy/YMr<{pt(\l~vMw]Ȅ`h^T2xAe8Le񔄧,cqu{n6uJ=ژ S<#qC\9x%vvSd$>&/j ]Pd*fhz,,m7 aa.dX:TbMfɪ*և~` (-$] rH퐨nkEtp5Qlfbd?h~ײQ[/қbW%7FJ]ICAA rEM8A9_9*2u6A{{(b!q4申nX.h/^"&2F)4'C\nMG / 5 g,?bi"6ZxNۻ0hgG,WUm&=tm-9YNAw-N5HTo]jeDN2@,iZ:ScB^1S:=M߿/X; IK=T}e>H$|\r YN*y+?bPUC8mVfY\G4[Ǯꁤ~>gc|f, xArۦsW6 j:r;%&[(½$ioTEᙄаoqm'`KSs¾w+# n_HB+e~s f0r*o2Z)j&I`A,>$ zX + [zf,A3RṪ‹!Vk(;Okuo$QoH*\Cxf..;o|.}~m"+n+3V!~rO=BԤ([#U=) >=,ZmƦj@SϥTn)ט^FƨTU!FcT3iz$@ƖTWث%ٚ :_GJ1m ǭ( r-8gmu;Ms*o v°DX`!=%uz4l6W߼`[m Yw\_s)o-k:q pw#cX;.}i$ucG/ikPXLjۑ_4)ȏ E l{]8Iv0s8~SxP`ck(xû~^>)EwMv0?7 a)Sn6KC:aB8R}%[Xf>3-i&SfD ʍ%4^f$`2!m`Ii?LmI)2⊪".Ά 4+ڢ-Ck׮22$}c P] rz,MTȖcʛW %)s,$O 0]  _%b43d 5'ވCh^33vKݚHm%Hc,Ph{ 0>GË͈3*8itHWu[jijE`bI^z1E> {h/" _{fq&+wuc >=!ߎkvJ8:c4'Υ'9n]_a?\ Nv\+Ok9%X[5MG\ z(uZ.GOr+>ChǶ&CO~gі\:&R!"RJ)h{u A{BUo+-ضtWv:;]E {qQ0SE &M$ ^+N}y)gTgջM:~w%OϼN&Imy__f!(&RhhokWdE#ST(JJh_h_3|ƧDjiD#Hԧl2>zeG8X,?պk\7"癠z.-"\[Z?YK [0̲?[/Q,; Dp?\!Τ8CTX$biU`A[x1|eNC7uJpZez>$磧=g*&e6zJa4uM<`PH[T GK::auMiy/ z&ُ w2Č-SL}(X^ai* ՊXbFBSu1|̩g=XԗyA%#lM2О`:EvC0΢id12d|\+08݇$2q i ~B0ބPLDʭ4yGle:⡄ys>kH^fǝOψ~y]EH۪ g!>|Pt0W8B &v)k/A1(D԰g:} "YSD2xq_$E $7\21?bnak^2qi6"?o"_iJmuWqYj+O V <%έOQ޸ }^<'fQS6-v9"WD/E |zz+oGbYvct+_ޟûܶ5eتk,8 mgпI;AZT?Xxݦ._޷8! pC%fI̢˓JW?8C3\k(ۏKf=pnG΂o >&Doc8ZoDi2I/L 1#zp`:_-~oWWE9_Э6DNDaZ.e1{,B֘qI("MD.3vpĜ?BG`XIH# ,y.oO8֔zw4عf*rWDU YG 4:{iu?{c|9SfI߭ETGpݔj_,<(JTu:+<Λp$#C #ĔfŎmAN¢[`]qV;FiHJ9Y%va|Ik`Ux*mX " [ޡv6x+ppJ$jF% iѠY~n7P=]MsZ֌S%B "} otauZ[@5lLɧ},KX=[dLՑbS3@I )0ҪAtB>gGgi6,F!9\RF~u|&rZ[fۘڗB ,yp; +'g}4=+&l@Uб՛z'I%-a4JF c6ls x(l"^9eR˯|/߷B+R^sm^-4ywd}+ϦF|(KMo\]AվJwp m}^"/Q.) R)N#V _q24CHбʷrp74 QNes2T>ĀeRlqU_\Y 5Dy ئ;,L)b+c3hڦہH36&7$~`fm_QȮ=G}>4sF*<x>y9;g@9a>6'D淒wDxsUC@fv /jg]}ThQ"Ękq;:7hc7l>Wd;6鿰*೛4nѣOlQOUCHV@7~3cnG2W:LTE;ŨSZ<:KGdT+T[m㰍r)4)MMe0apf1FНUըP0w_q6-͞zB|(/|SPK >\ҩ{SDJ2'A3O\cgE(F",s|>2[:;w6 Pw4f6X#]N45>zCB+eQr$IJ)7Wn&_0|:&)q 0M}׼V؊4]H Ȗ<9mDDl(zR}Re_p띄 l T7nu՟Qk%4zl_1<53q1b "*]tLywWeۧt la}x*^RbR/ ]J2MO$_%al,]L촴}$vy4M|V-gb(h04̆Mb`y`@E H$jaAIAe:'&?/Oa.kuzUC'Y%G-}ͭf2։7T52~\UIN_,Ml+^ڝqO9YwGA-J߱+{ b"9YȼtӰઉY3)l,7ӐڧANy=ʗ#/M)zvЖ<TnWwEfM CSXÂGDSs|ڋЏ%;[plgʽS٦-MLma7ꠝ=Ό2=w-W {%TSн#:xmMCn^ߚ!a5>D~ ׂ`UcښF')2-jx *}uV?oiKCVMo IA+j]O85E*z6qCq]9nͰsJM~$;C . US>WsBdhL6|`Iqucx< q #VtձJLڈO'UFfx`vcHp~©0&<L$fC6vtԏ 0=R__4 t+ 7Tnj5=(ec-tvxo􁗚PeB5VA m1[iuZ97hU,9VMD'H5nZo;$2x2 1^חZ z%ݺ JjGn8{^2Of*ccdsq@6K M"`@3b%l*sU4}ϧ_-h a\W q`Uw79l3Qyz"{T//?L!碃ukx>iV'P @ ų,QY248GbqꞐ?6cDbOK'nU]l%HTxGM9 ̷UV.@GEkz8(oMp{$#?G˧ y/By93>hmh^CËpYEWU#EW,hJXoff\;ո %gJ\Q7*س@R#g?O?ż/1bPx%VIMl},ϱ>K? `;qHdI%Uױ+{ڭ,H/o#Ÿc,K, ywQ4uRݾ^ 3wu0`{na>ʇ67}i6I|̕^<|β_O?Uȁ|>e!1P8krOKF\X v] vK#"-9flVɵ]Gîx/FN\l 7[hem2CIXEN['NjWcG[7'@檎 ú揰m-7y1$UsjnT䪽hKhޯ!ֹăub>S, e?ޑLdnr 9\Yrΰ](<2fێ'=ߒƓ:IISTS'*s;4CϽ{s$U_S= ٢--~gsޅ᪑>rmUm=ėfcRedʗ6^QM=Fo3Z`w~7EC2X#K7,b@+6TMDX.Z>)+0)n-X>2sހ: vCeW)K;}8JކMP^PM󚯱{}֕KS+ocSDcR7hg^$Yz--. LU(I1vt472[$RB2KY>5U?i q/ƞ?2 /J\q{G/m%5$iapø":i'2#Lh?V1`#G&|% tCNk$8'Q g.SkGGj(cFi-R1.,땁^5 F(+#,bx6svl$u)dnDcInuďX8$$] XM4ꕡضi@98=f|iQ% C ړ9 h}/{ܽӿ̪KAqRX$BV V\םٴOWgK+͍j&١~[Cx@S?A/ٴn-Nʧ9w'oi7V: i8#XW~1X[xU̥zSЂ{;Է]_ɒ P8? >ir}I+kKL DL~p-;OxJ%3^5)mqM '4gg?&C c[y E@xIEOt#fQ4h-!nkӣ!+:9Zs|߯s*ݡǥe?(l빘IssYA+G%k0W9DUɡ\bU$BN@ ?ٮࡂ?2aڠgsV76%];4D+~!%C5@ٱ}H:{=fX՜en,ed8u1(DK >+ˣl,TCzcLł-tc_]xY) PPSWބ}!UsT4`&57ȥz{/g"Q@OkFp (q]!б^{o̦1G&0ɟ~ h+_BS҇_2ȉ,菈wO56wD ;XBlQvJɉu3d:]փ3&ߡEbx;x(ۙ6<5=(_$ӣiȞuA*Q[N* hfOyL|5ʅm)6 ?C R(`8ސd"32xRRuH;$}*S=i7n?!X%?] dQ7~ְ8Ot@#1yS'-3_r2K ,lhW,}pU V@m}ܵl!+)W PţnZO;6;HScaFcrT9XEvab0|w'-yESxR2^?!2rT}1 @P =vҚj[LGu_9Άo0W_^ #_"I=Bq,vsqX}̲ۢzykvdE^MIzr”z JvAAF)=t9sT⫸xi#!iui-G:Dn\?FF2l`bY~rt &X8SZ0877 ׸¬N/tUY|,mGsORrLoz<X ֗qDD8`q7&Vt풚 j'P]څ]RvퟪM\rXw6(rMa6 M%DK)9~?FWV$`/$RҩƮK+qxlBs=t` %!ptba<#\\hФA,p7kb(~H:.3tZ)#ǯ!OCA}@c`:!$uW &^C O58duPT\Dr-F?Tx1hLf9e~77BqVJRN$2 FJPtP )hx'}Z]\/ԜW[ؓ V߉{ 47?@_?"26E!B>>c0Y"{j `: {TG#jTـ}GZjp ]~vKM_^>ĺKL uY7=з| +9'!HR)ے"f޴uH=Aϋ>}Jgxhkaf)2$B/T4*qv%}bRC[`vd6wHqw;]O饂SL$88S[3{-bE98ҼN +srdO?cHi;m 5bE93 bmj7 "b${t~8Lq])oe^pܡp8:;L죗L E)*1pEHÜ2tLn&w}!ʖh\-*V^wbM y9WbI,<82 #,[8h2,'Jv?ۧJ,33w$Kri&qu{6m:`YΣSzS1 $64X*5)@wRCAKN~x7zÉ֕U{RgyYEDr{.Ί">OE\̶aI,?Nh$U(ڰw'A~H\7bƺ"]vFvH2IylI'Qb%EoS4i\|,,l վbӃ, U|ux%ebt@yJ/u(=adǻ.6sU' &:@$q '|IPGojWN ع{͚TWX,v ;+uxa||_hBEEF.BBs7\qRz] ]c;>]t.vIa&XlfPcX/[%ng/)cЗMl؛Zh󍳚p|nCsuc"u4o7n0m-74]ʓ>$1[)"xYly#*",>6W-f"E19CeǙW$iZω!hVct*5E*k>*%8x}N*Yx1ɧV06܏aJx h =dUT~ WWN!*Qa+mbeKjxAk[+Y>>dw+o!°^)tq)s,rs :>?]vfM@ɝ^ZNIEV+::7 礪dȒ[nNj)B 9hoȀsP>+7M"m_N3SmlA$:{L)ٞ4>5$ j~*u`2C6sˎ;]؁IgC) 1'y̲+kh5*8n-. ~{4ս>Iqh?U\UvkJL fNz&>) dǀyz݅J] R],5c7Drp΋i[DX٨كz/ +/w߱#,_t ~z][rI=,gR>he5akں {33pԨ Lxle{rowςnuЉbSU g1?6ԩTR1$Yq{lPHk^ =Tt$܋n,z7tot[yAC!F`:QZv? ,ԶM΍H[ ޳ylfc8sCr0ӹ謮Ժ^1MSn9u[܁M8abt+anG5_ѿRE|??wxLM -eb@Snx4 H?h[!I$BhJ+=\ttH؟hއP6vEэNd=˂kV0ѽAwlR;:MnGQ&m.=RBz HΈfhK]x ؛p=c}帰 FI,cl٢T1Bl1T{t1|9śl{bD1R0u >99_ÕqUiЬA RdL".R("UQs>V/agiJs1tq&T<2iq.I mq]=d.cZMN^,ru0N6D^!v # Br^r|#'颷Y(n_0aN^G0gBh:C9Lf/`Cʈsanp ء36D6œ}j%# ̐/B+&1`87ư5Qfł{~cv~(}$}}H0"ς;rם]m7D]}Mћ:(󋗉$J2Jpo '~t¶~#+#BNFnL*.aN3cF!y-ғ$fɌI'ewmF$]rm70FSٲDШ'f5)&qe8*R0=ZzlHG hIWWU 0Rlʚr*L=(&q[LB|%|ic@A^ouv189vJE7', &Q,F+_bpoT2g2zKX QNȡ{2$3( )\M~_ȶKjر36Lv4p1 qw-:%$^\mwد!ql8ªtm>jU"@_fjH WrܞHyDMy?% 鴤׽z}Y7aStI.noV -}nrD=56v0RsS5+İ LkKq*ybV|e{/yj@6ʹVK7nt0ɓ \t|  D $4UKK[Nt;]t0iXQL-d1F I5Z(lJzsY5Y+*ԾJ^à y2 [M^2D4/8dtoJ5*k1A!4۔)hTݡj 6h-H[u{;&~P#\xIl5:|*[>a4}fDWϙ6fʕ:+KX". V4}z]hg,`3%r|nDZ |__E0 Ȁg,f E^n|pf .g|7,OZ]rz*5ji7贊 v7ߪ xXK7@ɭaztPsio.vsjOtq9DqSb୮J6*%Xu[̾:db٨WnuuǑZ<ź~!-Yt+)АYaEq>hzOk#5MYAvs++`ju-g:攏Ujvz~!=e!&#H*e?~HrbcQ뺽E%'1>􀀩O-v NQ_]ڟ~7"N<|?o^K=1M@v3%X)hld \ҿ+olm?4Tކ]UFUdZD1^18!ᆽ\\ P7(VlTUoWxo7/3FwT#4f\Jz~TjaO3G]bued$B@# #XLP=hcJ\V sLf5wjpF!}2(f)PkIbMf K z ˀiNj rW(A:%܇#Jd |~9F,hfUuDm^J 烳ǰ%(J9k$3 XN CwidGMQBVDY']@RYBh#,gUć\mWEj M„ ^ґNYŮ F7 a= K/,:82b^xNVQP%i܍[/&e>!`LbG˝Tک0=UIkx܅8!'+{Xumk(fA?Z|^Š[ LsF[sh޹jQk^)zGtmZάC1S#n`"6C[pI%|Bur"ZAͪ;H NR juI6l,;Nmh k_֣imB#58|>A_7Rwhr(a42*?D/ Kq/C2i. JN ?\u9ݔ&1}4_mM!~Gha;&f? d늬}Qf[i2"9w,TsN"_ؽ9v/M7m0vPw|ih1oB I:{LpRc{t/2Spi'zwn]dyHeh iB Zh6kB@٭B)@O@j=gLm n.u "SbOY4y;3blk7s0^;b:Ui`?|$uYbw{&t^ŧq^kTwjb 3`/s'p 1 p$ ߻IWh+|~Lm9oJ\&EQ қc6 hrOt1*Iypr-9H4.fC{FqVP B;AAZ_@xLgH3; @OI/۱QZHt iOa(;1}l2/jnxTt"s3TƊg~5KԚya+G&,mP8uE#1ae,H I9[>r (Ozn s9;HjHܐ*p(Pw`]R",DV(dS>'q' 8O/߫@ܼ QdF .8͖ + ⠌s$9u"+ej8 (1}xBbKID#@R Q@XYDQöd$u.g08"۝ÿhx O)CG6^9zfC\KȬr?֦NPP]i;u?4T)C TK.k\}qfB7˓D7Md%LMWŲf'@4lBKmE !ϮuZCϦ1$T"Եmp B凫*ac-ChJOKX]b%~  jy'5]*-.4#poYC [L0tug=;l]؟}mY` tzwA*pM !S#1;H+JWȴ]?DCkf%xsgsTB cQŨ9s"1gaǠhۋIKc 36>s5ɻ EXX2Ԛ_yeNL>8XsOS}T?s4@^bT Ds#Mʛk9~ =h %QTG@eۧ␝J]OǯX'~gqϕcE^2a(ӢcC=C~ܹ+ōG}+Vzug+_dR<-=-B9QILM)洋|Hro~ULM򝸐;~A~ur@;u%}jA}68Z='\̫{eI5#MK=;a77q)PK#t+@ga; :ߎa3翥4Gn =n<)[ǎca%F2tǑK]Z1cLae`nkAg v'5Ko[^ھgKpy Hk0*=4*hiS*4s w8Y/FUfV,ٽ,z 'QSwU AC7Cl\ACU]ۦhT:ր s_V9 v}а!-gzշRj"^эT<im;ݓ٦,>n߾8 9__ faYŦo5>~e٠Xsc2~#kqZͶ͜;lӾc[PQj02XfO683a۸z\A%/aM6Ϭ +=UYh5s)`S^C(n.mb;ERڡ|i:s|TdѸ8iӪyCF5ظ@ʃ/N,P` OՍKk&<*/B _bJ7wÙ>1S09630@_a&x*spn^" ^ Y%̈́$ftΧ7lITSOeZHt)VB7VXX~_1Z, OF<\ /bYbNc3S.=8fsF XUJ/WI^=e*ԏ~v\?fepC=UłŲ5g?mn3J T)Yp !ۮ(d9S ]|83E=.Pm3׃?'7z'6`j}L["O hv8,Ȣ֓ vd T̑!ս[^뽜ulhg,ع".zp;a ^H:k*UF@m7~8y:K3}1A ?ρ݅C"@1>UWnU f|(ED;TX;Aw?\-{7c=Rk鴹|9&zqc3.#2UG&.4 ?O CylknYoTV=a \ tZbpT EݠY'c[B~ DMGHnȪbä\]dʍ +r"UA:;Cր.D2d:%A] R"P~"m$I6#Rgt 4BZS{`\'YјY9!J#ڽvD{ 2Z2^/fQzIb|ȳ BEz'ĄoK^an\BPs݅3} @+7JG;b\pF$~ϰk"Ʈ޴ޭ=TRᶗ DX^27pw9tzq0hrR&i:X!TC]o;u97" m߽)_9{څڷ=p2=+sS2O5J NT߅0#Ce3j)b]d*Y}F.{ʺ s䅙N:ۥoȝH S" ܼnQ83Ϸmû%:Xb.&y{c,fm3M~_T]ǒzzi?mSm5HC{q3NT5U7ZЍ~dzZG 5I^oP86 #OE -6!r5wx?t4Fl\ ҈C0BdW@?qoN-pn^uI/3AJeXl*N5=1M bi&JAS,^>V6y7HO%ڞo `Ћk_v구jkm7qZ9$1GderEx|Q[d;?;T8[TWNജu Q@Ј cں"d'waJ0kv3:!/,{^.P32<`ܲ1]dzUeuhYr@ miSyEs Ԝ a@Qy75ROFa:o`=Fv2\aexs!ـZ`QCMfέ"B^s PBVApTK눻ltɂ1 |Y\9~ɃqCx){˲ Ϥ1VRD9Qm(gt_)FUUd:r?I+.]3\;nȮx-hfW굥uey ' 7s mpjXTmKB7'%qDz` _I`(K3/KfyaYF "}U[*|*Sv`"^VѾj%ҸV!կɸT16HO\X '-񔒚\Ͷ6hRMGx37tdmІ^R]@Xe-4d(1:j:}&yj^%h(ťb?k.@S7Du.>||x @f + ]lcI/Dyf!nOF6%`|:W( -{,HxtrĭӖ53*yΜ^ Qڲ?z˘Fp{\ t]5q9ޒ֊LlQ݁u| 9D`A;]!4:?m]NFTf MQ(Pq?u dH0 ы8Z+|s s1ہ/ȕޑ=ab5p>}bVYl0xTpQ40`ƿNj.`/"B;j>Es ,}o҅-P9er($`wv&>–.ĀUL&XEG%3&ep\'^+jC|8ЇﲺHY8\hުrv^۴}4mkg!B {f̱`:bvX%ORtcF˰DH+\!(Lh"#3\/9)^ outPl}WZåHX<7@X[Q;c nN ?9&4Y9YpX7$|B&19N%'OZTK|nBtON6 0"G릦z5--*.h,*^z jԕkCZ^P]/mOP#sB ~R?C^p_q#=,aZݰO`Hf!o_s~(C6(ɲaU84k&-VOzӺ\s)5@kČ}Tx2>ĄVo$WOs,Ľjr]эb^bS 8@jB>GF%wlҘlG{OݸhBJx4\颌l2Ʉ m;^i:V]]O8-n5[a}^NXgBAƏ҅Opf>2УY# m1sΖM>ׂ{^vpio~G}{ /ґ`574RqA7J $@PXEpayډ"GvJ%vH^H8Q92~ >dB(?Yև t*3/dF8ݯZ$,2D i>j]!us}KpK0Gm`_uQ&A/ٌUKˆ2ְ́:7z4v氦-yȰ ;~c4*mqU,غ4_Gp<M{1dž1Hw^bކNt1O5}-TYtwhC9hDh:v-`9*ш!M@l9Z{rd.l>(bpD$L"JKIhq*5O>I:-tӏ@Wz>>"i ;ܪ'<ӷGQPNسQn  $)Y”1Fbs^n%!̬R BvJ:&}C_VWRVNS=BTOd Jcww FWr'}JTO lsCI]>IF7 3 {w Q@ V^; 6i,a` ?̆Ԇc,AD yYp%vK_tE:_HEXJ*̷tpv;K-"ډI+>*KȞS`cDY(Om^%m. =d:30nkɄƒIo_d߶cZhp5sk_'ȩ հ-"_woh03 !XW$G2+`Ҡdcw!00=vpn)pK鷅'|*w.[8.+73heUSj'?G-Љ_H}Vo ` ,^ x/_l7*ذ-/'{_I׭n6o άw,ޅX5-g BOi$Uɿ̗=}iXǂ\^t0~T\R#=RMRiE j+?Ww{;֨ =8Յ \Y8A,*d19x˚S W7ZAbLCГU?}CJle"ZwH*%݄AlD-)$)Zxvaw;!}1WE'ht󁼫pǤ X1YCAw7bFs&rdo #5r hDwD~,r8lԋk^/^H *4悒dIXVK[y+a9Ɉ)Sg8DR Xvr>.{*B^ 9mk?g{ gXѷ<1Q-dY1,,VVX5U+z^P0=.j%!6`aHb9?ض,0f:y ,Πΐp^GxĿԕIPX\;q_JT;yd-9*1 @ƹ@۾{im)7ГcgoLO@9:cNBHFֿGi% 01=oa^rLƥ$ 7Cʼnto?bJwڹ0@5S'{by @S*pd'WZلqӁH $ED_%Ũ2_Guͱ]d 0ܸkMa@sv~|6J}9{tcOA<*S"qF8cթY'Ka4 \$+0+4J{UbmyޚL`Y AsD}ܬգ_6N!IKvS?5('0=Aqb+Х=n)Ӝ§7 BJ/[/d4Iu\~ ɷqdm$k9DEpϰ sf&p.Wo|Y6y*-v3iӓԳq-B&BQ8(6-5d?K9,$TK|zkRzY YZ