nodejs8-8.17.0-lp152.3.17.1<>,؉a]ٜ/=„~r^N?(\h5!笐!3T^eM.-42۽X> ( EE˨k%1!h ڃR Q*GX0Y`)NdY8ېhtVHrh5Z5[?^ڵӳWg*>ğMnxfy!DB +b\I|' ZrjV O+N֢^4 2Ҵr xKu,hTAQwB(ME}q)ZF:hW:ݵ]C\>G?d   <  9Viot4   H  D      > >>([8d9`:=c>k@sF{GHIHX` Y \]D^Q bBcdefluv wxyl3z8HLQTX^Cnodejs88.17.0lp152.3.17.1Evented I/O for V8 JavaScriptNode.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model. Node.js has a package ecosystem provided by npm.a]ٜcloud127GbopenSUSE Leap 15.2openSUSEMIThttp://bugs.opensuse.orgDevelopment/Languages/NodeJShttps://nodejs.orglinuxi586# remove files that are no longer owned but provided by update-alternatives if ! [ -L /usr/share/man/man1/node.1.gz ]; then rm -f /usr/share/man/man1/node.1.gz fiupdate-alternatives \ --install /usr/bin/node-default node-default /usr/bin/node8 8 \ --slave /usr/share/man/man1/node.1.gz node.1.gz /usr/share/man/man1/node8.1.gzif [ ! -f /usr/bin/node8 ] ; then update-alternatives --remove node-default /usr/bin/node8 fi BT/D=.Ն k"áAA큤AA큤A큤a]*a]*a]*a]3a]a]Ha]a](a]'a](a]'a]a](a]a]'a]a]*a]*a]*a]Ha]a]4a](67877238807f9cdcd2c96550faf2bda24df590a94ea4eb789657af2e72f8f733c359f597d2a634fbb508bffcd6aacf38f78849d1ef16599c5818bbb4912a240552e3e455fd1d3b7c40d6b07cf4075ceeeb0a64514d1f8ad2d5e2f65cefefacc0a95cef0578ff3e1d73e85db242b41582b59ba3c58e3c2acd09ae8878ea6ae7489cc19e7fa9e850763a8c5c95ca432016cd16a66edc266895a2ff19c0153f22558a74f15c42cefeb7437f67a860fe288ec800ce28db29caea745f492af4bbe2c82037b1beb16f720f258dd5afc5f8e88e32ddd4677a7f665fa223d01bcb9a9db841ffea32ff6c8b1624b853cf10c107707f8159e534eef6c3619cdd7dd7e18f5b48fb22531c892d538b7e25048a9dcd8595e3df5589360f4082cdf739c4f2ef956dbeb84a9a7d1222a57ec9e1cad672d80279f4ac2e7d1d862cc4858476010f260a4128c9f4bd7d545d47865a0e20b65937eca621cedb533240dba0614bba68dc5eb6e3d550470244a55125b8bc478de9e7477202529dacc8b1bf325c528f4000b87be6c1479ed977481115869c2dd8b6d59e5ea55aa09939d6c898242121b2f5b36e4f5277c409ff77a9a152e40bd1c73659479d32a6bed09cd4596c226f2b19node-defaultnode.1.gz/etc/alternatives/node-default/etc/alternatives/node.1.gz@@@Brootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootnodejs8-8.17.0-lp152.3.17.1.src.rpmbundled(http-parser)bundled(libuv)bundled(nghttp2)bundled(node-node-inspect)bundled(v8)nodejsnodejs(abi)nodejs(engine)nodejs8nodejs8(x86-32)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/usr/sbin/update-alternatives/usr/sbin/update-alternativeslibc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1)libc.so.6(GLIBC_2.1.2)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.2)libc.so.6(GLIBC_2.3)libc.so.6(GLIBC_2.3.2)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libc.so.6(GLIBC_2.6)libc.so.6(GLIBC_2.7)libc.so.6(GLIBC_2.9)libcares.so.2libcrypto.so.1.1libcrypto.so.1.1(OPENSSL_1_1_0)libcrypto.so.1.1(OPENSSL_1_1_1)libdl.so.2libdl.so.2(GLIBC_2.0)libdl.so.2(GLIBC_2.1)libgcc_s.so.1libgcc_s.so.1(GCC_3.0)libgcc_s.so.1(GCC_3.4)libgcc_s.so.1(GLIBC_2.0)libicui18n.so.suse65.1libicuuc.so.suse65.1libm.so.6libm.so.6(GLIBC_2.0)libm.so.6(GLIBC_2.1)libpthread.so.0libpthread.so.0(GLIBC_2.0)libpthread.so.0(GLIBC_2.1)libpthread.so.0(GLIBC_2.2)libpthread.so.0(GLIBC_2.3.2)libpthread.so.0(GLIBC_2.3.3)librt.so.1librt.so.1(GLIBC_2.2)libssl.so.1.1libssl.so.1.1(OPENSSL_1_1_0)libstdc++.so.6libstdc++.so.6(CXXABI_1.3)libstdc++.so.6(CXXABI_1.3.5)libstdc++.so.6(GLIBCXX_3.4)libstdc++.so.6(GLIBCXX_3.4.11)libstdc++.so.6(GLIBCXX_3.4.14)libstdc++.so.6(GLIBCXX_3.4.15)libstdc++.so.6(GLIBCXX_3.4.18)libstdc++.so.6(GLIBCXX_3.4.20)libstdc++.so.6(GLIBCXX_3.4.21)libstdc++.so.6(GLIBCXX_3.4.9)libz.so.1nodejs-commonrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1a @`@`E`4@_=_@_P_l@_16_ @^y^@^^k@^=Q@^r^r]f@]@]@]@]V]M`@]>\s@\w@\T4\3?@\ @[@[R@[@[z@[]@[#@[!@[@[WZ@ZZZľ@ZlZZ@Zz@Zp^@ZTZAdam Majer Adam Majer Adam Majer Adam Majer Adam Majer Adam Majer Adam Majer Adam Majer Dirk Mueller Adam Majer Adam Majer Adam Majer Michel Normand Adam Majer Guillaume GARDET Guillaume GARDET Adam Majer Adam Majer Michel Normand Vítězslav Čížek Adam Majer Adam Majer Adam Majer Adam Majer Adam Majer adam.majer@suse.deadam.majer@suse.deGuillaume GARDET adam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dejengelh@inai.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dero@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deqantas94heavy@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deqantas94heavy@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comqantas94heavy@gmail.comqantas94heavy@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deastieger@suse.comadam.majer@suse.deadam.majer@suse.detoddrme2178@gmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deqantas94heavy@gmail.comi@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.suqantas94heavy@gmail.commimi.vx@gmail.comi@marguerite.sudevelop7@develop7.infoi@marguerite.sumeissner@suse.comi@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.sui@marguerite.sudmueller@suse.comdmacvicar@suse.dei@marguerite.sunormand@linux.vnet.ibm.com- CVE-2021-22930.patch: http2: fixes use after free on close in stream canceling (bsc#1188917, CVE-2021-22930)- CVE-2020-8265.patch: Add a unit test for CVE-2020-8265 to make sure we don't have it broken in the future.- npm-v6.14.13.tar.gz: update to npm 6.14.13 fixing * fixes ssri Regular Expression Denial of Service and hosted-git-info Regular Expression Denial of Service (bsc#1187976, bsc#1187977, CVE-2021-27290, CVE-2021-23362) * fixes y18n Prototype Pollution (bsc#1184450, CVE-2020-7774) - CVE-2020-15095.patch, minimist.patch: obsoleted by above- CVE-2021-22884.patch: DNS rebinding in --inspect (CVE-2021-22884, bsc#1182620) - CVE-2021-22883.patch: only backport unit test to make sure we don't have regression here in the future.- CVE-2020-8287.patch: HTTP Request Smuggling allow two copies of a header field in a http request. For example, two Transfer-Encoding header fields. In this case Node.js identifies the first header field and ignores the second. This can lead to HTTP Request Smuggling (https://cwe.mitre.org/data/definitions/444.html). (bsc#1180554, CVE-2020-8287)- Update Requires: so -devel requires npm - Rely on rpmbuild to define necessary python dependencies- fix_ci_tests.patch: add support to SUSE's ECDH backport errors in SLE's openssl- CVE-2020-15095.patch: fix information leak through log files (bsc#1173937, CVE-2020-15095)- Explicitly add -fno-strict-aliasing to CFLAGS to fix compilation on Aarch64 with gcc10 (bsc#1172686)- avoid rpmbuild warnings on if/else/endif constructs- Add Require for nodejs8 when intalling npm8 (bsc#1172728)- CVE-2020-8174.patch: napi: fix various types of memory corruption in napi_get_value_string_*() (CVE-2020-8174, bsc#1172443) - nghttp2_1.41.0.patch: deps: update nghttp2 to 1.41.0 - CVE-2020-11080.patch: http2: fix HTTP/2 Large Settings Frame DoS (CVE-2020-11080, bsc#1172442) - minimist.patch: Fixes a vulnerability in an npm component (CVE-2020-7598, bsc#1166916)- Reduce Requires to Recommends on nodejs8-devel when installing npm8- Update _constraints for ppc64 (BE)- CVE-2019-15604.patch: fixes a remotely triggerable assertion on a TLS server via a crafted certificate string (CVE-2019-15604, bsc#1163104) - CVE-2019-15605.patch: fixes an HTTP request smuggling vulnerability via malformed Transfer-Encoding header (CVE-2019-15605, bsc#1163102) - CVE-2019-15606.patch: trim HTTP header values of optional white space (CVE-2019-15606, bsc#1163103)- Update _constraints for aarch64- Really disable LTO when required (nodejs < 12)- New upstream LTS release 8.17.0: * deps: updates npm to 6.13.4 fixing an arbitrary path overwrite and access via "bin" field (bsc#1159352, CVE-2019-16777, CVE-2019-16776, CVE-2019-16775) - refreshed: versioned.patch node-gyp-addon-gypi.patch - upstreamed: CVE-2019-13173.patch- New upstream LTS release 8.16.2: * deps: update OpenSSL to 1.0.2s- Add _constraints for aarch64 & ppc64le to avoid build error- Fix build with OpenSSL 1.1.1d (bsc#1149792) * https://github.com/nodejs/node/pull/29550 * add fix_build_with_openssl_1.1.1d.patch- Update to 8.16.1: Security update regarding HTTP/2 Denial of Service vulnerabilities For details see, https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V12.md#12.8.1 https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md (CVE-2019-9511, CVE-2019-9512, CVE-2019-9513, CVE-2019-9514, bsc#1146091, bsc#1146099, bsc#1146094, bsc#1146095, CVE-2019-9515, CVE-2019-9516, CVE-2019-9517, CVE-2019-9518, bsc#1146100, bsc#1146090, bsc#1146097, bsc#1146093) - Changes in 8.16.0: * n-api: + add API for async functions + mark thread-safe functions as stable- npm_search_paths.patch: make sure that npm resolves its default config file like in all other versions, as /etc/nodejs/npmrc (bsc#1144919)- CVE-2019-13173.patch: fix potential file overwrite via hardlink in fstream.DirWriter() function (bsc#1140290, CVE-2019-13173)- openssl_1_1_1.patch: backport fixes for OpenSSL 1.1.1 (bsc#1134209)- New upstream LTS release 8.15.1: * http: Further prevention of "Slowloris" attacks on HTTP and HTTPS connections by consistently applying the receive timeout set by server.headersTimeout to connections in keep-alive mode. (CVE-2019-5737, bsc#1127532)- nodejs.keyring: update keyring to today's list as per https://github.com/nodejs/node- New upstream LTS release 8.15.0: * cli: add --max-http-header-size flag * http: add maxHeaderSize property - Changes in LTS release 8.14.1: * http2: fix sequence of error/close events - Changes in LTS release 8.14.0: * http: + Headers received by HTTP servers must not exceed 8192 bytes in total to prevent possible Denial of Service attacks. (CVE-2018-12121, bsc#1117626) + A timeout of 40 seconds now applies to servers receiving HTTP headers. This value can be adjusted with server.headersTimeout. Where headers are not completely received within this period, the socket is destroyed on the next received chunk. In conjunction with server.setTimeout(), this aids in protecting against excessive resource retention and possible Denial of Service. (CVE-2018-12122, bsc#1117627) + Two-byte characters are now strictly disallowed for the path option in HTTP client requests. Paths containing characters outside of the range \u0021 - \u00ff will now be rejected with a TypeError. This behavior can be reverted if necessary by supplying the --security-revert=CVE-2018-12116 command line argument (this is not recommended). (CVE-2018-12116, bsc#1117630) * url: Fix a bug that would allow a hostname being spoofed when parsing URLs with url.parse() with the 'javascript:' protocol. (CVE-2018-12123, bsc#1117629) - Changes in LTS release 8.13.0: * assert: backport some assert commits * deps: + upgrade to libuv 1.23.2 + V8: cherry-pick 64-bit hash seed commits * http: added aborted property to request * http2: no longer experimental + bump dependency of nghttp2 to 1.34.0 - fix_ci_tests.patch: Reduce timeout for test-http2-session-timeout - skip_test_on_lowmem.patch: skip test on low-memory build machine - env_shebang.patch: dropped in favour of programmatic update- Enable armv6 build- flaky_test_rerun.patch: Rerun failing tests in case of flakiness- fix_ci_tests.patch: fix unit tests- New upstream LTS release 8.12.0: * async_hooks: + rename PromiseWrap.parentId + remove runtime deprecation + deprecate unsafe emit{Before,After} * cluster: + add cwd to cluster.settings + support windowsHide option for workers * crypto: allow passing null as IV unless required * deps: + upgrade npm to 6.4.1 + upgrade libuv to 1.19.2 + Upgrade node-inspect to 1.11.5 * fs, net: + support as and as+ flags in stringToFlags() + emit 'ready' for fs streams and sockets * http, http2: + add options to http.createServer() + add 103 Early Hints status code + add http fallback options to .createServer * n-api: take n-api out of experimental * perf_hooks: add warning when too many entries in the timeline * src: + add public API for managing NodePlatform + allow --perf-(basic-)?prof in NODE_OPTIONS + node internals' postmortem metadata * tls: expose Finished messages in TLSSocket * trace_events: add file pattern cli option * util: implement util.getSystemErrorName() icu_61_namespacefix.patch: upstreamed npm_search_paths.patch, versioned.patch, env_shebang.patch, fix_ci_tests.patch: refreshed- New upstream LTS release 8.11.4: * buffer: Fix out-of-bounds (OOB) write in Buffer.write() for UCS-2 encoding (CVE-2018-12115, bsc#1105019) * deps: Upgrade to OpenSSL 1.0.2p, fixing: + Client DoS due to large DH parameter (CVE-2018-0732, bsc#1097158) + ECDSA key extraction via local side-channel- Ensure neutrality of description. - Use %make_install.- Recommend same major version npm package (bsc#1097748)- New upstream LTS release 8.11.3: * buffer: Fixes Denial of Service vulnerability where calling Buffer.fill() could hang (CVE-2018-7167, bsc#1097375) * http2: + Fixes Denial of Service vulnerability by updating the http2 implementation to not crash under certain circumstances during cleanup (CVE-2018-7161, bsc#1097404) + Unbundled nghttp2 to fix Denial of Service vulnerability (CVE-2018-1000168, bsc#1097401)- env_shebang.patch: use absolute paths in executable shebang lines - versioned.patch: updated to move shebang modifications to above patch.- use gcc7 for SLE12 - manual_configure.patch: configure nghttp2 correctly- New upstream LTS release 8.11.2: * deps: + update node-inspect to 1.11.3 + update nghttp2 to 1.29.0 * http2: Sync with current release stream * n-api: Sync with current release stream - versioned.patch: rebased- icu_61_namespacefix.patch: Fix building with ICU61.1 (bsc#1091764)- Install license with %license, not %doc (bsc#1082318)- Fix some node-gyp permissions- New upstream LTS release 8.11.1: * Security fixes: + Fix for inspector DNS rebinding vulnerability (bsc#1087463, CVE-2018-7160) + Fix for 'path' module regular expression denial of service (bsc#1087459, CVE-2018-7158) + Reject spaces in HTTP Content-Length header values (bsc#1087453, CVE-2018-7159) * deps: upgrade http-parser to v2.8.0- New upstream LTS release 8.10.0: * deps: + update V8 to 6.2.414.46 + revert ABI breaking changes in V8 6.2 + upgrade libuv to 1.19.1 + re land npm 5.6.0 * crypto: + Support both OpenSSL 1.1.0 and 1.0.2. This allows us to drop openssl11.patch + warn on invalid authentication tag length * async_hooks: + update defaultTriggerAsyncIdScope for perf + use typed array stack as fast path + use scope for defaultTriggerAsyncId + separate missing from default context + deprecate undocumented API * n-api: add helper for addons to get the event loop * cli: add --stack-trace-limit to NODE_OPTIONS * console: add support for console.debug * module: + add builtinModules + replace default paths in require.resolve() * src: add process.ppid * http: + support generic Duplex streams + add rawPacket in err of clientError event + better support for IPv6 addresses * tls: unconsume stream on destroy * process: improve unhandled rejection message * stream: remove usage of *State.highWaterMark * trace_events: add executionAsyncId to init events - remove any old manpage files in %pre from before update-alternatives were used to manage symlinks to these manpages. - versioned.patch: refreshed- Add Recommends and BuildRequire on python2 for npm. node-gyp requires this old version of python for now. This is only needed for binary modules.- Fix specfile typo - Use gcc7 on Leap 42.3- even on recent codestreams there is no binutils gold on s390 only on s390x- New upstream LTS release 8.9.4: * deps: update npm to 5.6.0 * for complete changeset see https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V8.md#8.9.4 - versioned.patch: refreshed - nodejs-sle11-python26-check_output.patch: refreshed- Enable CI tests in %check target + fix_ci_tests.patch: - DNS queries in buildroots are failing with EAI_AGAIN - disable test-module-loading-globalpaths.js - we have hardcoded global paths + versioned.patch: call versioned node binary for tests + openssl11.patch: fix OpenSSL 1.1 backport so all SSL tests pass instead of crashing in some situations. - node-gyp-addon-gypi.patch: fix typo allowing unit tests to compile- openssl11.patch: backport support for OpenSSL 1.1 (bnc#1066953) - Dropped 8334.diff - no longer needed- New upstream LTS release 8.9.3: * buffer: buffers allocated with an invalid content will now be zero filled [ CVE-2017-15897, bnc#1072320 ] * deps/openssl: updated to 1.0.2n (bsc#1072322) [ CVE-2017-3738 CVE-2017-15896 ] - Changes in 8.9.2: * console: avoid adding infinite error listeners * http2: improve errors thrown in header validation - Remove unnecessary curl BuildRequires - Enable gold linker on s390x (TW and SLE/Leap 15) - Build with bundled ICU if system ICU not available (only applies to SLE 11/12 and Leap 42.x)- Change BuildRequires from openssl-devel to libopenssl-1_0_0-devel due to Tumbleweed/Leap 15 change to OpenSSL 1.1.0 as default- Update nodejs.keyring based on current Release Team as found on https://github.com/nodejs/node#release-team- Fix permissions of node-gyp. This should be executable to allow building of binary node modules.- New upstream LTS version 8.9.1: * openssl: upgrade openssl sources to 1.0.2m [OpenSSL Security Advisory (bsc#1066242, bsc#1056058) CVE-2017-3735 CVE-2017-3736] * https: revert refactor to use http internals - Changes since 8.9.0 LTS version: * deps: update to npm 5.5.1 * http2: The exposed http2 socket is no longer manipulatable * module: support custom paths to require.resolve() * util: util.TextEncoder and util.TextDecoder are no longer experimental. No longer produces a warning when using them. - versioned.patch: refreshed - 0f3e69db.patch icu59.patch: removed empty patches- New upstream release 8.8.1: * net: Fix timeout with null handle issue. This is a regression in Node 8.8.0. (gh#nodejs/node#16489)- New upstream release 8.8.0: * crypto: expose ECDH class (gh#nodejs/node#8188) * http2: (gh#nodejs/node#{15685,16269}) + http2 is now exposed by default without the need for a flag + a new environment variable NODE_NO_HTTP2 has been added to allow userland http2 to be required + support has been added for generic Duplex streams * module: resolve and instantiate loader pipeline hooks have been added to the ESM lifecycle (gh#nodejs/node#15445) * zlib: (CVE-2017-14919: only affects TW) In zlib v1.2.9, a change was made that causes an exception to be thrown when a raw deflate stream is initialized with windowBits set to 8. Node.js will now gracefully set windowBits to 9 (replicating the legacy behavior) to avoid a DOS vector.- Make sure npm and npx programs remain executable- Replace {{node_version_major}} with RPM define %node_version_number for simpler spec file review.- New upstream version 8.7.0: * deps: + update npm to 5.4.2 + update libuv 1.15.0 + update V8 to 6.1.534.42 * dgram: support for setting dgram socket buffer size * fs: add support O_DSYNC file open constant * util: deprecate obj.inspect for custom inspection - nodejs-libpath.patch versioned.patch: refreshed patches- New upstream version 8.6.0: * crypto: Support for multiple ECDH curves. * dgram: + Added setMulticastInterface() API + Custom lookup functions are now supported. * n-api: The command-line flag is no longer required to use N-API * tls: Docs-only deprecation of parseCertString(). * path: fix normalize paths ending with two dots (CVE-2017-14849) * see https://nodejs.org/en/blog/release/v8.6.0/ for full changelog- New upstream version 8.5.0: * build: Snapshots are now re-enabled in V8 (#14875) * console: Implement minimal console.group(). (#14910) * deps/libuv: upgraded to 1.14.1 (#14866) * deps/nghttp2: upgraded to 1.25.0 (#14955) * dns: Add "verbatim" option to dns.lookup(). When true, results from the DNS resolver are passed on as-is, without the reshuffling that Node.js otherwise does that puts IPv4 addresses before IPv6 addresses. (#14731) * fs: add fs.copyFile and fs.copyFileSync which allows for more efficient copying of files. (#15034) * inspector: Enable async stack traces (#13870) * module: Add support for ESM. This is currently behind the - -experimental-modules flag and requires the .mjs extension. (#14369) * napi: implement promise (#14365) * os: Add support for CIDR notation to the output of the networkInterfaces() method. (#14307) * perf_hooks: An initial implementation of the Performance Timing API for Node.js. This is the same Performance Timing API implemented by modern browsers with a number of Node.js specific properties. The User Timing mark() and measure() APIs have also been implemented. (#14680) * tls: multiple PFX in createSecureContext (#14793) - Change compiler version used: * SLE 11 SP4: GCC 5 * SLE 12 and Leap 42: GCC 6 * Factory and SLE/Leap 15: default- New upstream release 8.4.0 * HTTP2: Experimental support for the built-in http2 module has been added via the --expose-http2 flag. (#14239) * Inspector: + require() is available in the inspector console now. (#8837) + Multiple contexts, as created by the vm module, are supported now. (#14465) * N-API: New APIs for creating number values have been introduced. (#14573) * Stream: For Duplex streams, the high water mark option can now be set independently for the readable and the writable side. (#14636) * Util: util.format now supports the %o and %O specifiers for printing objects. (#14558) - Changes in release 8.3.0 * V8: The V8 engine has been upgraded to version 6.0, which has a significantly changed performance profile. (#14574) * DNS: Independent DNS resolver instances are supported now, with support for cancelling the corresponding requests. (#14518) * N-API: Multiple N-API functions for error handling have been changed to support assigning error codes. (#13988) * REPL: Autocompletion support for require() has been improved. (#14409) * Utilities: The WHATWG Encoding Standard (TextDecoder and TextEncoder) has been implemented as an experimental feature. (#13644)- Fix update-alternative handling in %postun - don't remove links on upgrades.- New upstream release 8.2.1 * http: Writes no longer abort if the Socket is missing. * process, async_hooks: Avoid problems when triggerAsyncId is undefined. * zlib: Streams no longer attempt to process data when destroyed. - Changes in upstream release 8.2.0 * async_hooks: Multiple improvements to Promise support in async_hooks have been made. * build: The compiler version requirement to build Node with GCC has been raised to GCC 4.9.4. [820b011ed6] #13466 * cluster: Users now have more fine-grained control over the inspector port used by individual cluster workers. Previously, cluster workers were restricted to incrementing from the master's debug port. [dfc46e262a] #14140 * dns: + The server used for DNS queries can now use a custom port. [ebe7bb29aa] #13723 + Support for dns.resolveAny() has been added. [6e30e2558e] #13137 * npm: The npm CLI has been updated to version 5.3.0. In particular, it now comes with the npx binary, which is also shipped with Node. - Modify versioned.patch: * Add support for new npx binary introduced in npm 5.3.0, versioned as `/usr/bin/npx8`.- New upstream release 8.1.4 * v8: disable V8 snapshots. The hashseed embedded in the snapshot is currently the same for all runs of the binary. This opens node up to collision attacks which could result in a Denial of Service. We have temporarily disabled snapshots until a more robust solution is found. (bnc#1048299, CVE-2017-11499) * The c-ares function ares_parse_naptr_reply(), which is used for parsing NAPTR responses, could be triggered to read memory outside of the given input buffer if the passed in DNS response packet was crafted in a particular way. (CVE-2017-1000381, bnc#1044946)- Depend on nodejs-common that is then used to pick correctly versioned node or npm binary. This is required since 3rd party modules use `/usr/bin/env node` which breaks if multiple versions of NodeJS are installed at the same time and non-default version is used (for example, to compile a native module)- npm_search_paths.patch: Since concurrent installations are now possible, node manual pages are moved once again back under npm searcheable locations only. - versioned.patch: All files are now under versioned directoies and names. node and npm symlinks are now managed by update-alternatives - node-gyp-addon-gypi.patch: Reference versioned directories only- New upstream version 8.1.3 * Stream regression fixed - The finish event will now always be emitted after the error event if one is emitted * Stream regression fixed - In object mode, readable streams can now use undefined again.- New upstream version 8.1.2 * Release to fix broken process.release properties- New upstream version 8.1.1 * Child processes - stdout and stderr are now available on the error output of a failed call to the util.promisify()ed version of child_process.exec. * HTTP - A regression that broke certain scenarios in which HTTP is used together with the cluster module has been fixed. * HTTPS - The rejectUnauthorized option now works properly for unix sockets. * Readline - A change that broke npm init and other code which uses readline multiple times on the same input stream is reverted.- Don't remove all src/ directories, as that breaks npm. (boo:#1043965) - Fix typo in node-gyp-addon-gypi.patch patch - New upstream version 8.1.0 Notable changes, * Async Hooks - When one Promise leads to the creation of a new Promise, the parent Promise will be identified as the trigger * Dependencies + libuv has been updated to 1.12.0 + npm has been updated to 5.0.3 * File system + The fs.exists() function now works correctly with util.promisify() + fs.Stats times are now also available as numbers * Inspector + It is now possible to bind to a random port using --inspect=0 * Zlib + A regression in the Zlib module that made it impossible to properly subclasses zlib.Deflate and other Zlib classes has been fixed.- Branch nodejs7 -> nodejs8, the new current and eventually LTS upstream branch. Note that the LTS lifespan for 8.x will end on December 31st, 2019 unless extended at a later date. - New upstream version 8.0.0. Notable changes * Async Hooks - now in core * Buffer + Using the --pending-deprecation flag will cause Node.js to emit a deprecation warning when using new Buffer(num) or Buffer(num). + new Buffer(num) and Buffer(num) will zero-fill new Buffer + Many Buffer methods now accept Uint8Array as input * Child Process + Argument and kill signal validations have been improved + Child Process methods accept Uint8Array as input * Console + Error events emitted when using console methods are now supressed. * Dependencies + The npm client has been updated to 5.0.0 + V8 has been updated to 5.8 with forward ABI stability to 6.0 * Domains + Native Promise instances are now Domain aware * Errors + We have started assigning static error codes to errors generated by Node.js. This has been done through multiple commits and is still a work in progress. * File System + The utility class fs.SyncWriteStream has been deprecated + The deprecated fs.read() string interface has been removed * HTTP + Improved support for userland implemented Agents + Outgoing Cookie headers are concatenated into a single string + The httpResponse.writeHeader() method has been deprecated + New methods for accessing HTTP headers have been added to OutgoingMessage * lib + All deprecation messages have been assigned static identifiers + The legacy linkedlist module has been removed * N-API + Experimental support for the new N-API API has been added * Process + Process warning output can be redirected to a file using the - -redirect-warnings command-line argument + Process warnings may now include additional detail * REPL + REPL magic mode has been deprecated * src + NODE_MODULE_VERSION has been updated to 57 + Add --pending-deprecation command-line argument and NODE_PENDING_DEPRECATION environment variable + The --debug command-line argument has been deprecated. Note that using --debug will enable the new Inspector-based debug protocol as the legacy Debugger protocol previously used by Node.js has been removed. + Throw when the -c and -e command-line arguments are used at the same time + Throw when the --use-bundled-ca and --use-openssl-ca command-line arguments are used at the same time. * Stream + Stream now supports destroy() and _destroy() APIs + Stream now supports the _final() API * TLS + The rejectUnauthorized option now defaults to true + The tls.createSecurePair() API now emits runtime deprecation + A runtime deprecation will now be emitted when dhparam is less than 2048 bits * URL + The WHATWG URL implementation is now a fully-supported API * Util + Symbol keys are now displayed by default when using util.inspect() + toJSON errors will be thrown when formatting %j + Convert inspect.styles and inspect.colors to prototype-less objects + The new util.promisify() API has been added * Zlib + Support Uint8Array in Zlib convenience methods + Zlib errors now use RangeError and TypeError consistently - node-gyp-addon-gypi.patch: refresh - placeholders from other NodeJS version: 0f3e69db.patch, icu59.patch.- 0f3e69db.patch: placeholder for GCC 7 compilation fixes, already upstreamed.- New upstream version 7.10.0 * crypto: add randomFill and randomFillSync * meta: Added new collaborators * process: fix crash when Promise rejection is a Symbol * url: make WHATWG URL more spec compliant * v8: + fix stack overflow in recursive method + fix build errors with g++ 7 - New upstream version 7.9.0 * util: console is now closer to what is supported in all major browsers- New upstream release 7.8.0 * buffer: do not segfault on out-of-range index (#11927) * crypto: fix memory leak if certificate is revoked (#12089) * deps/npm: upgrade npm to 4.2.0 (#11389) * deps/V8: fix async await desugaring in V8 (#12004) * readline: add option to stop duplicates in history (#2982)- New upstream release 7.7.4 * deps: upgraded internal node-inspect version to 1.10.6, containing several fixes * inspector: use proper WebSockets URLs when bound to 0.0.0.0 * tls: fixed a segfault when the handle was destroyed after a partial read - Changes in release 7.7.3 * net: Socket.prototype.connect now once again functions without a callback * url: URL.prototype.origin now properly specified an opaque return of 'null' for file:// URLs - Changes in release 7.7.2 * tty: add ref() so process.stdin.ref() etc. work * util: fix inspecting symbol key in string - Rebased nodejs-libpath.patch for minor changes in new version- New upstream release 7.7.1 * Fixes bug that prevented all native modules from building - Changes in release 7.7.0 * child_process: spawnSync() exit code now is null when the child is killed via signal * crypto: adding support for OPENSSL_CONF again * doc: items in the API documentation may now have changelogs * http: new functions to access the headers for an outgoing HTTP message * lib: deprecate node --debug at runtime * src: adding support for trace-event tracing * tls: new tls.TLSSocket() supports sec ctx options * url: adding URL.prototype.toJSON support- New upstream release 7.6.0 * crypto: remove expired certs from CNNIC whitelist * deps: update V8 to 5.5 * deps: upgrade libuv to 1.11.0 * deps: add node-inspect 1.10.4 * deps: upgrade zlib to 1.2.11 * fs: allow WHATWG URL objects as paths * inspector: add --inspect-brk * lib: build "node inspect" into node * src: support UTF-8 in compiled-in JS source file * url: extend url.format to support WHATWG URL- New upstream release 7.5.0 * crypto: crypto store source selection available at runtime. Default is to use system CA store managed by OpenSSL library. * deps: + upgrade npm to 4.1.2 + upgrade bunbled OpenSSL to 1.0.2k. * doc: add basic documentation for WHATWG URL API * process: add NODE_NO_WARNINGS environment variable * url: allow use of URL with http.request and https.request - removed 10657.patch - upstreamed - 8334.diff is now an empty patch, upstreamed.- New upstream release 7.4.0 * buffer: improve performance of Buffer allocation by ~11% * buffer: improve performance of Buffer.from() by ~50% * deps/npm: upgrade to v4.0.5 * events: improve performance of EventEmitter.once() by ~27% * fs: allow passing Uint8Array to fs methods where Buffers are supported * http: improve performance of http server by ~7% - New patch 10657.patch * Fixes build error caused by attempt to use bundled zlib - Refresh 8334.diff- Add basic check that Node.js loads successfully to spec file- New upstream release 7.3.0 * buffer: buffer.fill() now works properly for the UCS2 encoding on Big-Endian machines. * cluster: disconnect() now returns a reference to the disconnected worker. * http: Remove stale timeout listeners in order to prevent a memory leak when using keep alive. * tls: Allow obvious key/passphrase combinations. * url: + Including base argument in URL.originFor() to meet specification compliance. + Improve URLSearchParams to meet specification compliance. - 8334.diff: refreshed.- New upstream release 7.2.1 * buffer: reverted the runtime deprecation of calling Buffer() without new * buffer: fixed buffer.transcode() for single-byte character encodings to UCS2 * deps/npm: upgrade npm to 3.10.10 * deps/V8: fixed a significant instanceof performance regression * promise: --trace-warnings now produces useful stacktraces for Promise warnings * repl: fixed a bug preventing correct parsing of generator functions- Update to upstream release 7.2.0 * crypto: The Decipher methods setAuthTag() and setAAD now return this. * dns: Implemented {ttl: true} for resolve4() and resolve6() * libuv: Upgrade to v1.10.1 * process: Added a new external property to the data returned by memoryUsage() * tls: Fixed a memory leak when writes were queued on TLS connection that was destroyed during handshake. * V8 (dep): Upgrade to v5.4.500.43 * v8: The data returned by getHeapStatistics() now includes three new fields: malloced_memory, peak_malloced_memory, and does_zap_garbage. * for complete changelog, see https://nodejs.org/en/blog/release/v7.2.0/ - 8334.diff: ported and updated system CA store for the new node crypto code.- Add missing conflicts to base package. It's not possible to have concurrent nodejs installations.- Package unification across various branches of NodeJS. Package for 4.x, 6.x and current (7.x) branches of NodeJS are now handled via GitHub repository. - New upstream release 7.1.0 - branch as new nodejs7 package. * buffer: + Passing invalid input to Buffer.byteLength will now throw an error + Calling Buffer without new is now deprecated and will emit a process warning + Passing a negative number to allocUnsafe will now throw an error + add buffer.transcode to transcode a buffer's content from one encoding to another primarily using ICU * child process: + The fork and execFile methods now have stronger argument validation + add public API for IPC channel * cluster: + The worker.suicide method is deprecated and will emit a process * deps: + V8 has been updated to 5.4.500.36 + NODE_MODULE_VERSION has been updated to 51 * File System: + A process warning is emitted if a callback is not passed to async file system methods * Promises: + Unhandled Promise rejections have been deprecated and will emit a process warning * The punycode module has been deprecated * add NODE_PRESERVE_SYMLINKS environment variable that has the same effect as the --preserve-symlinks flag * url: An Experimental WHATWG URL Parser has been introduced- New upstream release 6.9.1 * streams: + Fix a regression introduced in v6.8.0 in readable stream that caused unpipe to remove the wrong stream.- new upstream release 6.9.0 * crypto: (N/A: not compiled with FIPS support on openSUSE/SLE) + Don't automatically attempt to load an OpenSSL configuration file, from the OPENSSL_CONF environment variable or from the default location for the current platform. Always triggering a configuration file load attempt may allow an attacker to load compromised OpenSSL configuration into a Node.js process if they are able to place a file in a default location. * node: + Introduce the `process.release.lts` property, set to "Boron". This value is "Argon" for v4 LTS releases and undefined for all other releases. * V8: + CVE-2016-5172/bsc#998743: Backport fix for an arbitrary memory read. The parser in V8 mishandled scopes, potentially allowing an attacker to obtain sensitive information from arbitrary memory locations via crafted JavaScript code. This vulnerability would require an attacker to be able to execute arbitrary JavaScript code in a Node.js process. * v8_inspector: + Generate a UUID for each execution of the inspector. This provides additional security to prevent unauthorized clients from connecting to the Node.js process via the v8_inspector port when running with --inspect. Since the debugging protocol allows extensive access to the internals of a running process, and the execution of arbitrary code, it is important to limit connections to authorized tools only. - refresh patches- Fix incorrect SHASUMS256.txt.asc file that prevented package update being accepted into Factory- enable usage of system certificate store on SLE11SP4 by requiring openssl1 (boo#1000036) - new upstream version 6.7.0 * openssl update (not applicable for SLE12SP2, Leap 42.2 and later) + upgrade to 1.0.2j (CVE-2016-6304, CVE-2016-2183, CVE-2016-2178, CVE-2016-6306, CVE-2016-7052) + remove support for dynamic 3rd party engine modules * http: Properly validate for allowable characters in input user data. This introduces a new case where throw may occur when configuring HTTP responses, users should already be adopting try/catch here. (CVE-2016-5325, bnc#985201) * tls: properly validate wildcard certificates (CVE-2016-7099, bnc#1001652) * v8: Fix regression where a regex on a frozen object was broken * buffer: Zero-fill excess bytes in new Buffer objects created with Buffer.concat() * src: Fix regression where passing an empty password and/or salt to crypto.pbkdf2() would cause a fatal error- new upstream version 6.6.0 * crypto: Added crypto.timingSafeEqual() * events: Made the "max event listeners" memory leak warning more accessible * promises: Unhandled rejections now emit a process warning after the first tick * repl: Added auto alignment for .editor mode * util: Some functionality has been added to util.inspect() + Returning this from a custom inspect function now works + Added support for Symbol-based custom inspection methods- new upstream version 6.5.0 * buffer: Fix regression introduced in v6.4.0 that prevented .write() at buffer end * deps: update V8 to 5.1.281.75 * inspector: + fix inspector hang while disconnecting + add support for uncaught exception * repl: Fix saving editor mode text in .save * Revert "repl,util: insert carriage returns in output"- 8334.diff - https://github.com/nodejs/node/pull/8334 * use system CA store instead of one provided by Node- new upstream version 6.4.0 * child_process, cluster: Forked child processes and cluster workers now support stdio configuration. * child_process: argv[0] can now be set to arbitrary values in spawned processes. * fs: fs.ReadStream now exposes the number of bytes it has read * repl: The REPL now supports editor mode. * util: inspect() can now be configured globally using util.inspect.defaultOptions- Use distutils.sysconfig to get build parameters fixing compilation on SLE11SP4- new upstream version 6.3.1 * buffer: Improve performance of Buffer.from(str, 'hex') and Buffer#write(str, 'hex') * buffer: Fix creating from zero-length ArrayBuffer * Backport V8 instanceof bugfix and update to V8 5.0.71.xx * repl: Fix issue with function redeclaration. * util: Fix inspecting of boxed symbols. - 7569.diff - removed, upstreamed - SHASUM256.txt - added empty file so that gpg check is run on the SHASUM256.txt.asc, which is not a detached signature- obsolete remove gpg-offline / %gpg_verify- Use OpenSSL supplied with Leap 42.2 and SLE12 SP2 instead of bundled version.- new upstream version 6.3.0 * buffer: Added buffer.swap64() to compliment swap16() & swap32() * crypto: Root certificates have been updated. * debugger: The server address is now configurable via - -debug=
: * npm: Upgraded npm to v3.10.3 * readline: Added the `prompt` option to the readline constructor. * repl / vm: `sigint`/`ctrl+c` will now break out of infinite loops without stopping the Node.js instance. * added support for v8_inspector (node --inspect) - since we can, build NodeJS shared library. - refreshed patches: * support-arm64-build.patch * nodejs-libpath.patch * npm_search_paths.patch - 7569.diff: * Add upstream PR: #7569 to fix build failure with shared OpenSSL and v8_inspector enabled- Fix Group tag.- new upstream version 6.2.2 * http: + req.read(0) could cause incoming connections to stall and time out under certain conditions. (Fedor Indutny) + When freeing the socket to be reused in keep-alive Agent wait for both prefinish and end events. Otherwise the next request may be written before the previous one has finished sending the body, leading to a parser errors. (Fedor Indutny) * npm: upgrade npm to 3.9.5 (Kat Marchán) - use build_cond to to manage configure parameters, instead of having duplicate suse_version ifs - fix permission issues with some installed files - move fdups to end of install section to make sure we don't end up with dangling symlinks - rpm cannot handle more than one level of parenthesis, hence Conflict: otherproviders(npm), not otherproviders(npm(npm)) as the second version has no desired effect - we should no longer need to explicitly set ARCH values - configure should deal with this properly - verify upstream tarball integrity cryptographically - patch changes: * nodejs-libpath.patch split into two, nodejs-libpath.patch that applies on default and nodejs-libpath64.patch that applies on top for 64-bit arches * support-arm64-build.patch refreshed * npm_search_paths.patch: + search for manpages in paths were we installed them + install modules into /usr/local prefix + search for config files under /etc/nodejs- Search for node modules under /usr/lib{,64}/node_modules and not a non-owned path of /usr/lib{,64}/node- uppdate version 6.2.1 * buffer: Ignore negative lengths in calls to Buffer() and Buffer.allocUnsafe(). * npm: Upgrade npm to 3.9.3 * V8: Upgrade to V8 5.0.71.52. - update to version 6.2.0 * buffer: fix lastIndexOf and indexOf in various edge cases * src,module: add --preserve-symlinks command line flag * util: adhere to noDeprecation set at runtime - refresh support-arm64-build.patch * `configure` bits incorporated upstream - refresh addon-rpm.gypi- update version 6.1.0 * assert: deep{Strict}Equal() now works correctly with circular references. * debugger: Arrays are now formatted correctly in the debugger repl. * deps: Upgrade OpenSSL sources to 1.0.2h. * net: Introduced a Socket#connecting property. Previously this information was only available as the undocumented, internal _connecting property. * process: Introduced process.cpuUsage(). * stream: Writable#setDefaultEncoding() now returns this. * util: Two new additions to util.inspect(): + Added a maxArrayLength option to truncate the formatting of Arrays. This is set to 100 by default. + Added a showProxy option for formatting proxy intercepting handlers. Inspecting proxies is non-trivial and as such this is off by default.- update version 5.9.1 * buffer: Now properly throws RangeErrors on out-of-bounds writes This effects write{Float|Double} when the noAssert option is not used. * timers: Returned timeout objects now have a Timeout constructor name. Performance of Immediate processing is now ~20-40% faster * vm: Fixed a contextify regression introduced in v5.9.0- update version 5.7.0 + buffer: * You can now supply an encoding argument when filling a Buffer Buffer#fill(string[, start[, end]][, encoding]), supplying an existing Buffer will also work with Buffer#fill(buffer[, start[, end]]). See the API documentation for details on how this works. * Buffer#indexOf() no longer requires a byteOffset argument if you also wish to specify an encoding: Buffer#indexOf(val[, byteOffset][, encoding]). + child_process: * spawn() and spawnSync() now support a 'shell' option to allow for optional execution of the given command inside a shell. If set to true, cmd.exe will be used on Windows and /bin/sh elsewhere. A path to a custom shell can also be passed to override these defaults. On Windows, this option allows .bat. and .cmd files to be executed with spawn() and spawnSync(). + http_parser: * Update to http-parser 2.6.2 to fix an unintentionally strict limitation of allowable header characters + dgram: * socket.send() now supports accepts an array of Buffers or Strings as the first argument. See the API docs for details on how this works. + http: * Fix a bug where handling headers will mistakenly trigger an 'upgrade' event where the server is just advertising its protocols. This bug can prevent HTTP clients from communicating with HTTP/2 enabled servers. + net: * Added a listening Boolean property to net and http servers to indicate whether the server is listening for connections. + node: * The C++ node::MakeCallback() API is now reentrant and calling it from inside another MakeCallback() call no longer causes the nextTick queue or Promises microtask queue to be processed out of order. + tls: * Add a new tlsSocket.getProtocol() method to get the negotiated TLS protocol version of the current connection. + vm: * Introduce new 'produceCachedData' and 'cachedData' options to new vm.Script() to interact with V8's code cache. When a new vm.Script object is created with the 'produceCachedData' set to true a Buffer with V8's code cache data will be produced and stored in cachedData property of the returned object. This data in turn may be supplied back to another vm.Script() object with a 'cachedData' option if the supplied source is the same. Successfully executing a script from cached data can speed up instantiation time. See the API docs for details. + performance: Improvements in: * process.nextTick() * path module * querystring module * streams module when processing small chunks - rework nodejs-libpath.patch- update version 5.6.0 * http: fix defects in HTTP header parsing for requests and responses that can allow request smuggling (CVE-2016-2086) (boo#966077) or response splitting (CVE-2016-2216 boo#966076) HTTP header parsing now aligns more closely with the HTTP spec including restricting the acceptable characters. * http-parser: upgrade from 2.6.0 to 2.6.1 * npm: upgrade npm from 3.3.12 to 3.6.0 * openssl: upgrade from 1.0.2e to 1.0.2f. To mitigate against the Logjam attack, TLS clients now reject Diffie-Hellman handshakes with parameters shorter than 1024-bits, up from the previous limit of 768-bits. - changes in version 5.5.0 * events: make sure console functions exist * fs: add autoClose option to fs.createWriteStream * http: improves expect header handling * node: allow preload modules with -i * v8,src: expose statistics about heap spaces (v8.getHeapSpaceStatistics()) * Minor performance improvements: + lib: Use arrow functions instead of bind where possible + module: cache stat() results more aggressively + querystring: improve parse() performance - merge patch: nodejs-libpath.patch and nodejs-lib64path.patch- update version 5.4.1 * Minor performance improvements: + module: move unnecessary work for early return * Various bug fixes * Various doc fixes * Various test improvements - fix boo#962297: online update breaks nodejs-npm dependency- update version 5.4.0 * http: + A new status code was added: 451 - "Unavailable For Legal Reasons" + Idle sockets that have been kept alive now handle errors * minor performance improvements: + assert: deepEqual is now speedier when comparing TypedArrays + lib: Use arrow functions instead of bind where possible + node: Improved accessor perf of process.env + node: Improved performance of process.hrtime() + node: Improved GetActiveHandles performance + util: Use faster iteration in util.format() - fix boo#961254: * common.gypi should install at /usr/share/node, which is now in /usr/lib64/node_modules/npm/node_modules/node-gyp * node-gyp requires nodejs-devel which contains v8.h and others so npm sub-package should require nodejs-devel- fix boo#955142: SLES11 compliance of build process * usage of g++ 4.8 needs to be specified on SLES11 * python 2.6 does not include the check_output method used in the configure script. We need to patch it into the script - add patch: nodejs-sle11-python26-check_output.patch - adjust packaging method for nodejs-doc * %{_docdir} will be recreated anyway when *.md is added through %doc macro, so we can't install doc/api in %install section on sle11 - adjust packaging method for nodejs_sitelib * "install -d" won't work on sle11 for %{_libexecdir}, replace with "mkdir -p"- update version 5.3.0 * buffer: Buffer.prototype.includes() has been added to keep parity with TypedArrays * domains: Fix handling of uncaught exceptions * https: Added support for disabling session caching * repl: Allow third party modules to be imported using require() * deps: Upgrade libuv to 1.8.0 - as npm was dropped from factory/d:l:nodejs, we rename nodejs-npm to npm because there's only one npm package existing (there's another one in 13.2 only, but we can upgrade it smoothly through newer version we provide - fix boo#948045 again: Nodejs 4.0 rpm does not install addon-rpm.gypi * I copied codes from old specfile, which installed nodejs modules into /usr/share/node, while I splitted that directory into devel package. so common.gypi and addon-rpm.gypi were not in npm package at all! - nodejs >= 5.2.0 needs binutils-gold to build (github issue #4212)- update to 4.2.3 * http: Fix a bug where an HTTP socket may no longer have a socket but a pipelined request triggers a pause or resume, a potential denial-of-service vector * openssl: Upgrade to 1.0.2e, containing fixes for: + CVE-2015-3193 (boo#957814) "BN_mod_exp may produce incorrect results on x86_64", an attack is considered feasible against a Node.js TLS server using DHE key exchange + CVE-2015-3194 (boo#957815) "Certificate verify crash with missing PSS parameter", a potential denial-of-service vector for Node.js TLS servers; TLS clients are also impacted * v8: Backport fixes for a bug in JSON.stringify() that can result in out-of-bounds reads for arrays.- update to 4.2.2 * buffer: fix value check for writeUInt{B,L}E * buffer: don't CHECK on zero-sized realloc * deps: backport 010897c from V8 upstream * deps: backport 8d6a228 from the v8's upstream * fs: reduced duplicate code in fs.write() * http: fix stalled pipeline bug * lib: fix cluster handle leak * lib: avoid REPL exit on completion error * repl: handle comments properly * repl: limit persistent history correctly on load * src: fix race condition in debug signal on exit * src: fix exception message encoding on Windows * stream: avoid unnecessary concat of a single buffer * Timers: reuse timer in setTimeout().unref() * tls: TLSSocket options default isServer false- fixed boo#948602/CVE-2015-7384: * nodejs: HTTP Denial of Service Vulnerability - drop nodejs-no-fips.patch, upstreamed - update to 4.2.1 * Includes fixes for two regressions + Assertion error in WeakCallback + Undefined timeout regression - changes in 4.2.0 * icu: Updated to version 56 with significant performance improvements * node: + Added new -c (or --check) command line argument for checking script syntax without executing the code + Added process.versions.icu to hold the current ICU library version + Added process.release.lts to hold the current LTS codename when the binary is from an active LTS release line * npm: Upgraded to npm 2.14.7 from 2.14.4 - changes in 4.1.2 * http: + Fix out-of-order 'finish' event bug in pipelining that can abort execution, fixes DoS vulnerability CVE-2015-7384 + Account for pending response data instead of just the data on the current request to decide whether pause the socket or not + libuv: Upgraded from v1.7.4 to v1.7.5 + Improved AIX support * v8: + Upgraded from v4.5.103.33 to v4.5.103.35 + Backported f782159 from v8's upstream to help speed up Promise introspection + Backported c281c15 from v8's upstream to add JSTypedArray length in post-mortem metadata - changes in 4.1.1 * buffer: Fixed a bug introduced in v4.1.0 where allocating a new zero-length buffer can result in the next allocation of a TypedArray in JavaScript not being zero-filled. In certain circumstances this could result in data leakage via reuse of memory space in TypedArrays, breaking the normally safe assumption that TypedArrays should be always zero-filled. * http: Guard against response-splitting of HTTP trailing headers added via response.addTrailers() by removing new-line ([\r\n]) characters from values. Note that standard header values are already stripped of new-line characters. The expected security impact is low because trailing headers are rarely used. * npm: + Upgrade to npm 2.14.4 from 2.14.3 + Upgrades graceful-fs on multiple dependencies to no longer rely on monkey-patching fs + Fix npm link for pre-release / RC builds of Node * v8: + Update post-mortem metadata to allow post-mortem debugging tools to find and inspect: + JavaScript objects that use dictionary properties ScopeInfo and thus closures - changes in 4.1.0 * buffer: + Buffers are now created in JavaScript, rather than C++. This increases the speed of buffer creation + Buffer#slice() now uses Uint8Array#subarray() internally, increasing slice() performance * fs: + fs.utimes() now properly converts numeric strings, NaN, and Infinity + fs.WriteStream now implements _writev, allowing for super-fast bulk writes * http: Fixed an issue with certain write() sizes causing errors when using http.request() * npm: Upgrade to version 2.14.3 * src: V8 cpu profiling no longer erroneously shows idle time * timers: #ref() and #unref() now return the timer they belong to * v8: Lateral upgrade to 4.5.103.33 from 4.5.103.30, contains minor fixes. This fixes a previously known bug where some computed object shorthand properties did not work correctly.- replace node-no-fips.patch with upstream fix- fix build by using internal openssl for openSUSE <= 1320 which didn't provide openssl 1.0.2 - install missing addon-rpm.gypi (boo#948045)- Do not force enable FIPS mode. bsc#947747- update to 4.0.0 * child_process: ChildProcess.prototype.send() and process.send() operate asynchronously across all platforms so an optional callback parameter has been introduced that will be invoked once the message has been sent. * node: Rename "io.js" code to "Node.js". * node-gyp: This release bundles an updated version of node-gyp that works with all versions of Node.js and io.js including nightly and release candidate builds. From io.js v3 and Node.js v4 onward, it will only download a headers tarball when building addons rather than the entire source. * npm: Upgrade to version 2.14.2 from 2.13.3, includes a security update. * timers: Improved timer performance from porting the 0.12 implementation, plus minor fixes. * util: The util.is*() functions have been deprecated, beginning with deprecation warnings in the documentation for this release, users are encouraged to seek more robust alternatives in the npm registry. * v8: Upgrade to version 4.5.103.30 from 4.4.63.30 + Implement new TypedArray prototype methods: copyWithin(), every(), fill(), filter(), find(), findIndex(), forEach(), indexOf(), join(), lastIndexOf(), map(), reduce(), reduceRight(), reverse(), slice(), some(), sort(). + Implement new TypedArray.from() and TypedArray.of() functions. + Implement arrow functions - drop nodejs-openssl-missing-api.patch: it's for 0.9.8. - ppc/ppc64(le) is natively supported since nodejs 3.0.0. so drop nodejs-v0.12.7-release-ppc.patch.bz2 - drop node-gcc5.patch, upstream fixed - add nodejs-lib64path.patch, adjust libdir - add nodejs-libpath.patch, adjust libdir - add node-gyp-addon-gypi.patch * use custom addon.gypi by default instead of downloading node source - add node_modules clean up codes- update version 0.12.7 * openssl: upgrade to 1.0.1p * npm: upgrade to 2.11.3 * v8: cherry-pick JitCodeEvent patch from upstream - changes in 0.12.6 * v8: fix out-of-band write in utf8 decoder * fix boo#937414: CVE-2015-5380: nodejs: out of band write- build with bundled npm- update version 0.12.5 * openssl: upgrade to 1.0.1o * npm: upgrade to 2.11.2 * uv: upgrade to 1.6.1 * V8: avoid deadlock when profiling is active * install: fix source path for openssl headers * install: make sure opensslconf.h is overwritten * timers: fix timeout when added in timer's callback - add patch: node-gcc5.patch * fix gcc 5 version detection- update version 0.12.4 * npm: upgrade to 2.10.1 * V8: revert v8 Array.prototype.values() removal * win: bring back xp/2k3 support - previous changes from 0.12.1 to 0.12.3 see ChangeLog- enable aarch64 - add support-arm64-build.patch- enable s390x- update version 0.12.0 * npm: upgrade to 2.5.1 * mdb_v8: update for v0.12 - drop nodejs-v0.10.32-release-ppc.patch.bz2 - add nodejs-v0.12.0-release-ppc.patch.bz2 - add README.SUSE.PowerPC to explain how to generate ppc patch- Add three arches to ExclusiveArch: ppc ppc64 ppc64le - Add nodejs-v0.10.32-release-ppc.patch.bz2 for them (required as PowerPC support not yet upstream) (the patch header details how it is created) - do not configure --with-gdb for those architectures/bin/sh/bin/sh/bin/shcloud127 1633540508)*+,-./0123456789:2.9.31.23.21.41.01.11.56.2.414.788.17.08.08.17.08.17.0-lp152.3.17.18.17.0-lp152.3.17.1 node-defaultnode.1.gznode-defaultnode8node_modulesnodejs8AUTHORSBUILDING.mdCHANGELOG.mdCODE_OF_CONDUCT.mdCOLLABORATOR_GUIDE.mdCONTRIBUTING.mdCPP_STYLE_GUIDE.mdGOVERNANCE.mdREADME.mdgdbinitlibalternativesnode8.confnodejs8LICENSEnode.1.gznode8.1.gz/etc/alternatives//usr/bin//usr/lib//usr/share/doc/packages//usr/share/doc/packages/nodejs8//usr/share//usr/share/libalternatives//usr/share/libalternatives/node//usr/share/licenses//usr/share/licenses/nodejs8//usr/share/man/man1/-fomit-frame-pointer -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:Maintenance:17017/openSUSE_Leap_15.2_Update/e1b0d60cbae03ed406ab49b4c899a648-nodejs8.openSUSE_Leap_15.2_Updatedrpmxz5i586-suse-linuxELF 32-bit LSB shared object, Intel 80386, version 1 (GNU/Linux), dynamically linked, interpreter /lib/ld-linux.so.2, BuildID[sha1]=ed0fe0c38b5648ce88f6ba0201a9d9936f76240c, for GNU/Linux 3.2.0, strippeddirectoryUTF-8 Unicode textASCII textHTML document, ASCII textC++ source, UTF-8 Unicode textHTML document, UTF-8 Unicode texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)3R)RRR R!RRRRR RRRR RR RR R RR'R%R&R#R$R+R.R1R0R3R-R2R6R4R/R5RRR7RRR*RRRR(R,RRR"R7xAc2m08nBnpm8utf-8db9792dd9d0d674f27c1c51d31d5c0085402438d377094613718e15f7d0e676e?7zXZ !t/]"k%{Y_,^]GjnNjgXG.!}Iλ[J?ӻ掎5,Tue_QFm?эu'dY[%}1&{1VMXСctMKtk PN]=p>8_/-ߚjٍfQCOãt^+;9fc9 gA;ZE (C]ɬXb]^9cl8 /{x>~vTa2"WV^_S|1a G4 .iWRሜcr dۨq^ӟneKtDfXWQ!T`\ϞK׎V9?XG+^,m@YԠ[rs{g*:t|DΙE) U*@܄RkoM j/Rӏċ-N[Dc",@%[:n8ej + Q;)O*#eN.MnR"Yuyb =~B [!؅t 7J{`8R" Cq K'XopI~頻>%|vrul}z*R:]%A;xaF 9uFbʕ U\qXἆX|'޼e1<6qZ-t%v"NjʑvpxRRҕLQʄ6lU1 Nsrgv]p;|O&^>@b<0 x|^y<KU{Ζl2}Td}R#kW s$5ߝʲUgqF*=KQ԰h\RR T5ҽ0Ԧm|GqR/}yV;sSS(S!7 fp1evͻkXbv7Bς\!Ku=IƎd'`/'QdXyl}u"hٺ;COVєg=6A?A̓vS{L}CƔ4QchFo N)4%evuHh a<$ˌ#}PXCȞVV߃08|DGTŐXOsj"x2KSCLn^W=fh lt?-ihp1\{K葀ͩWq ߣ-qg¼f5Q~e&V-:0hlhKR'҈h^|eq\lՏFژ8ĮCΞ_\F4ny\m \)8Vĉ65m6_쒥dro )S8ׄWZΣu:Z&'My%ݤ7~718Z̼Aوj<Bѕb|R>R/7ra -%7:Ŵ?߽P1YX>[Ap;4̣@`ahSjhr\j~9WL$8 DTdRyq~^EzHmC+ טJ?=& c~7DQYM{ (D(خn>%Q$ԸǓt= eгH R7fS@X1~6O0hgˤ3jHH͎&6rk8ȉ]jmB;zCiZٙjn@I̮JXAqj,X3}R(’"3W9|BXV@֭9lzjYPpס@G28_*"sRJn`0ɽ mYqq7FrLzN,W !8>f,4Z| OFjmnt?bm*?V5t.4|%q*F>[*[#N"Z4 ^u/_PMLbrjYE&"ѯ@LQ=Wsc$UXqw RpvEC]H+vK`$i}#fih ڥpօ,pǸ\&9kI(klԭTnB4vS~c/rDTXAt:KtEmG [nJI {"Sj$n`(r%: A_A-M9,~LiM#~*$nP\ c-}M &/ddz3w6.ʕĞQ:ɜ EEJ3x}QskU%1ϯ*, ZyfODu\&7=KEifSy1~r e'?|1iCQUZ++ldb48*FU98 _he\|+[1ƃG;H{hrR ;;eJ VC){h7%(ReJJ~4et=f;*ח<Ӄ8 %R{XC~dsznS|ȬӝeG\ٮW#{$ |>}T39}Q| 2k$$Q߱_ S+fS2]OvQ-QP$v.Tlu4!S~t;+?Y:b%RyZ 3LN|(C/}}Ye[czߝtcB`.|V׎ ,o=yY{-):7;!&حbV.`V[Uu#q^-Wː>_ͳ`V8DkD&͢0gM}[yFLMq L_z%-b1-1܉AQUpjoIzنj%zmc1&t{S*]EJ *bMRg`;Fb-NZ)~q'u=+v.3nin7ngg*l}\U<ȇ!XM\q*xPVWg:{2eBLm5&Dє0]iׅR 7%z>U.#i]M#37cz!/pK/P{ZOE$Mgqw2 TzYK;)e-U3Pg'ż" HDiAy& ߯{ Qb-_]Hʋv|¢~*4αeG{+ (DwΥ˒!݅Jn]\b3] =`f\F4]X5~VBI0xb+6 53歖 fV(P.FNs.XuU+F1<D < Qgs ^= mcr&Sع/pX&šV_[aY͕j%4 3_'6 0aYR !aV<| r٤` TL&g$pZ.pUYG*2C7ƕ^VPu?-Aĥ6F mepMs&j@S^zҚx!cd |ڇmE4wSW+ǝצ5[ok~5#q6?26E_;i9]K6Db2ਏ[-d#/Z "ߢ͞JlOuC%疂0a RnyT-QDwhS[wRboM:RJV}^i%J^P M cv\r]08K+#rݏzwKa9ףjͅd•3l +K(X{l=Lɗ,QF8 ߄RArDQ^w8 Hus@Q,]jV.f\l8D`zȉH|uV C7ri=Pì(O^htB1 (X(S{}2^BLNU H潝fjfq.C3&2/h޽&iu.0̲@7BP³'̊TH3┮ A!Yj |H`~#yΐzǀA&ƞ>% {fֆW!GZIM4ήog< ?FĎgo6b 3P6k;wWp50ky&}_Zo~BYYk|"F&5rwW8Ŏn:C۲c ԍGzJo @Ā3(y?\Z{ (Ũea^lWdyC)rY.B;*d'H|è̋c0M劃`j/wD↻J[ 83n|PgWhUY)-v{OW${%Olx ɣ\zLō.rÌ"Btr%&|&4QKBMG2e'g`LF4TNwf&7܏!Q"UlE81+5 X _;4K.Мgua+Fmy> /,^V*v,ZNA .(OkO;, yI ,E4;v/Eot*1|b"#YJ۬DVW P8%^>x'3zp7v6n< o35LEJ]ujeKJ4 4'&MF]9$^r7Ӟ)5Jl[B_n?}vpA4HM7+Uy6K4y?]l>U>bäqt951?Uߠ1KyG-dMB174@ L{N7'Y(2$naS:v ԩ.Ҕ;830d<t7G|ہ5b[m/ .lv\s EQsYŁT2q\)v{-e&`);h OxKD2>(r4DFŝ[s4Sap 0xDK"}s:?I<)G:sşl%.x~+2X7 y TZd;42HV1UWWTe #}S+#&fcMG~,&2kBv^F!|tFV}AT/ gL^% 5Upd hy ;8mPCkos[DYDŽP>Snh\ 4覯qe,uoH`>yHE}22 b˯^kvS<ҋ%v+#R Br~R[zAdbBSa_j(CI2i(Wu^ffPCjez.-=dyJqC6̢( >kxwq\kCW.-EO`Yi08#sujn34]}|KWiFE9ęiey 2-mYakr]A,U6uf="|O;+LE_bFRk7u9^@oZKVٵ[F0IE=^G73[ ܇/qG%w͋spQ H{>K#;b!em:1-hgإ:vx)eDcDׯg6>nZ5'C݂U]^n~7Tu9û/3Yu˖_&U엦1r@`+:B,-Ձ<jZ?KS4z yhOZ@+t6e1@|e`y|};2/\K%^?}̳*\S*EFPq)]*~,VFV_n<rz8(^\zdvOA!-1]b $孂FkaP@0 d2jkh*iPTgM݀ꐊT&'cO=splүE2, aM8As/ չx&}1Tj6 SQVrY Lk;Q}\y!U$I#VG%W"YxuD`}hK ;Q==kt -ehX==,O]&0Ts*Gkb n.;1'78<T[Spgc]5yM] s"v ]itX#sB [%\nj8Va6)s7(M; ] v&2qqB"ᑬ-, VW#[3``>Qxr>i1 .PiF b l#^ f$jo[ C_@ t!^ 3.TRykZ~JClͣnj=ՀoAwW@ in=鄽ͣfeq*Dw؃r$ '=T37cmE C[7N4oL :P>q%4s +Rct]sЪm'BA3/7,8ݽ 43jN&_韂xG.r{,klX4BU-ũ.1_ w=a?1"I%Fխm1*-|DVǬ[Ln}o*6Eź)ΖYu?en8 C3/vpXAɋolw.{{d{"^=SkèOf w7:.+o{1ƼŁ w:HLHJ)p.ҟ7 {oZK(lyL]a<5 _- %Mұgz|xREɚmi<(".ܶ2 p6S/h*Z- VC;[?:V)ɝKAfV%)7+-!VsJuy2. B -"J6LSۚ HwPm G{po6/{m^*cA!ȡ0ng3t@cD6_`A wB_O$#џ0ʲXs]qC9E*;q‘cPbhMx+R~jР$3G]A{aXO. 8x?Bw=՚2f>#QlX+dh%W c7SA0ǿ&zKn{ć>2+ƪ]Ģ(n:2g`~˙pz 4mHçВ>|6vtz>!?5]PƅȧgiгBx7@#Blj,Fo'p:Ggjt0t4 ;~B;y ~ɱ4:6Z|; 92\DiAq6">w_nx::dj힖V4I$#nqnNy͘w!}ْ$^"z _ ;30dij&vxTLK~\\| y jur^潝(Uw´',p0e嘢P'؈yr89" KFzJ ѿxFsש/@xBc|WNh\E|aO{X  컇a?6G آ]~Qqۀ"Trvܳ4WL̃2XGD'5:c~~Qŷ lgraDq%.n37&T Ƣaás6c\]'WE@O\ϗaq(ey<,ὠF90e `S n5d3r<;/' JZ#,xrd/!t6r$Gk|\u۰T9oNpAb #33o_|{VR皖Q^ʠ0UgA]NCad'vD1.<7K5ۺ:H/`ɝRstP.+mk鈒5W0s Gn̩njBXcoӶ鹾[D5SK}hQxcş ǧN%-'!+M{v@F%<Ƿy^{M xA<ٟ[+Xl1T!͋$ۘiR.FO. Z'PYJ؎EWMN91221zRaqGyr6y |H;g,^zndK?WR$a/Uc3ф&s3X=T0yhh[X.~ģ-?4,'YiW/3\DeOXSN>uB*vV7ܖ G᳟삻#ۥ{$ϿSdRlvYb>uA IJi,zGCl!ZcF~-"h5=oԳ∠T!Cp#H&M׿Xbk7idu4oՓիŠtC%yjw@݉;\)P{!s$0׮p?s9К\) WopGc٘7کȩM^ӳ b3jᯘ`n(EjS[7тw*CdXug6&@ƘXyL{Yv |pʴϘCy`MlڵL[~+{)ͅMqэ]Ʀx:?ԷO@(ojD'#Aڧ,FR ZAK#9A"_19T5yc? (BԢN6('&d?&ւ Ft48`ڰ1Oj33w93j3 t{J=yŋu/A}Opxs)̰}iJ$G cg2o{) 8 B^qt!ڢ|: Ty|< @!a#6 2f@4Z}1iJX^ x/lN)r4F/)XzUaM FD"O8]qVæ>9~n>E|]SJj9ҭ?/:ݪtSq98a W<g'kQ_2ᄕ!Yi%DX| p=毅)$+f?DňCE{fIRi9N-`7z[^6x9T!ɣҀ#ʭûzTO/-uu%WxP{?WmxB%{_n1y%uSR8Nq%N|zzm7 j\T&zYlquD3  W;2v2^]- 8Nqrt !4.,F]Bx|A-qS*12[ºz9OBM !3?ce2Q93RSNi[?7ɦ/jL>8/o'b1Ľ{.ؗ#Hݦ r٧~Z@F$};GOIapT2艹鼷*~7\Ǎ15+k%}F%ac{ 槱i5 Q{k?z+_qeFչxcw}]] ^JfNS]9`c>GnӲd<|R&Ǥ͊>l`oCW׏"n:3H2oQ=6:wz+Ưm`Ի;Ud" GW΄67ad9J ˻,}[|ΘLʦuӤN=@+eZT½:5I|[tE)HNc o[6F<] Eɾ_!2?Ƨl|wpYxء% Sufj)-z%%.hoN)^.quj'*%Lhr|x "U6hOtCzO}f\ڝhڥjn &!*mtj9HZus^SO,9@Opg@l`q-II;B˷Zq]5\>7T;X6s[)7yCW ^<+|W'O#ڰz1WtY{,Ux HҾ!h>3ˌOYV(Īsq6'UћEq'nq TeuoZDq%p([R,z0Z_@Xo VH!kؕ,J%Яԅ;\}FY=Q7B N]NR_FM$nLsc9T%>y0rL3oP:6zq-{RRt (A XKx|+s ey69#Aqb40D2*S6( W]F'ޡ_7Z5" @ƕ RVJ*ɡ3i8>)9aM7? v^y ir#1ܱ[~^ݮ%fhI$I##h{gvvTc BG5NF~5lPeR0}ϝk2K.= ŎS pT>QL&qĜe䇀FHg᠟M1]x}? E5JN- v>8_қIFd+o5z#v_K(v I]=fs?~_3t[&DA 5z$>=F;42\Ż38\wl|qڳ&#*4,㢳ynfa|Тq=BZ~#8%,o5kW}(fN:lOohrh3(.A?mx^՜7yX -B~%[[k䔸^d4` `>C2B4Dtu&ˆ=w߯lb?BֽU|2T]7;l5V|bSoMIm2>h>v( iڨ[Rжg셼1&8X֌K?.>c|oYdx᳆WTK /NdPJHV~&T BC]:ܘp|KIꪯh otBtme|?˹mpp 2LR!3M|e EUaJ_zECl_] 6gz=C~HE]MT> :3ѭ -fbfHdQcxS&& ,@BvOe''@߆ Ehqж~܏V:!4!䷄ E3Ĕkz45 dk0o{ģCƴf] Qs1\06ͳBޣ/LKMqx&-bՐwI*źAx~U~jl|7}럴Xm,nVg.YV:0mDj=m ^B#MN6( bB/ Z}t@c֢o>NB.4 -UC4aL3xdґ9Q؇jŞVmw8J ()IU$a@ iuC04H-R3CE!yr*ny*;@GϾ/Q/t89AM( a;=0 j$v`!XUOT\e1X%ζ" Sf<=@?veܤ`ĶO̗%j̀}wU8>=X'VPr˙#]Bg[fS罹RON_C]|T#{$]OE>EWAce3p9{an:皙E_2OJtw07#R[fvj%!WBK+tKꖀ&P_>s&~@ÒC?i1pSnDlUFw24ϓ{`@f ]S$*Ȳ"=O l:^EtmRDRR}%$umW_CA8%I_6vbc4ZF6P iߐV2_j+!kdQnϭQjV" [Kw.ۮ5tn!I'ɥ=19Ju:е3 眾6gey&}F)u!jq'G>*'r"J *UF^k Y;؀k䞲C6=7W3˺A]CnʵP>e2x\tTB &""xqgNZ*_83`CmݺO2~য2J`9GhOFB BbRݳf JW] ;E|D%_h^XfQ % W%J(X,$Wشzv:yN@o<{!d| q'CGVu gVšsFy3gl,4 c> Щ*e3i0,}6*nL0MehR!.uC"Kejm@2mGMƛwψdu 3 /. 8BޘNMqt?{]'z+㙅"K ͶnO66{.MEcpa w+ū*PgEaj(פQg>n-Ȑ+ mk'u N+͡K[_܇Vn$A 9O'1N4]qI)M+`و.HJȑ MIN+|uP"ѷË O@E‹E3ɻuU1s5#?X^8>_h fsl&2lNI 3 \9 ϲ* L;Ĥ?iW4+x-w!xM#~ +LFX'ʍ R@ ! P͓!b{fEDLQnosB姉/GxyQEЎ\ yBSfN&h{ ZfL!HD/KD'y镢E5j0CHQcЬ~V`tUtͮ>[ 8O y! L#~=ǒJh]8~A3¦%bV^jcW?|:]ΤuQ5C|XG.wedj0\i2Iy4rc}IwakabRϪ_$Zm a̍/jGD͙6K)SE1 a:sX{*0(V6拞sߵgb;ԆGLxqD䳱~/`/Sd>nJ@t\;H12|Ȭ"72 WΚ%d @xxi YW}.ȯOaQ*RUa~uD3L^/j$V~^!|r?J/f+5󄌪^.u :9!L6ඪ _ٙv7EG|b7ڙQCjhVD~jܭ;}5ښYEdXL07G-00HZ33y{h$cdx7#QJVYh J*=-  \F`}{Ѓ a?XѸ'Pě(.)acX,=o=ZŜ{P iu!PJ3Xý%t" ^Z֕E9vü߸ߔ ץ*H pG9n|27 @q#348Qbib*,a˼^O@:ck>.e,dL\??Ѓ/VRLiht.]_-(x`I4Ij9+F@,/u<t[ mQre9L=fM]/;M&Fw:ϧsœ6h@6jc<X#徃?q!Y&_><缭@ꘋXOz.9x5ݥ9:W=Qn_i*4zCyIGj;c2,Sxآ%mߒDuî:+sLnүdHz1t\ܙR1>JIʔgkO!=L2:xBC=ɋRŧ D%q/<Dى}ρ6#G< 94t G~j@-a/J?ux-Wsr);Gh( ;3kqzA ڷ*PS)GG[6X`HmGЗY#Z݇`>f{9Nch6A"UG!Ah)-xpr}NسDQ]MQV2 hY[Ҷr;3b(K2"~ ے,[Nd&_[Wyw_$ KwwMEqkQϾZFmiϨ{=4G0д̀4g ,MD&ԓd:0XdAQ+{ͶlƳ wm6Д|eӓGPA;R~Pwa ƞ2hj:%H_!ITM#`PPʦ, V9yw 'آ{k]@]^NwbK B[sZP2S }{\mh1H|kA—E~Mq@>b.`0G2SVT@-b-biceS8c䍵<~p`@K\ffٺb!Cu_@_. x!eݑ0[2g;z-9'PƋ}fT Xlїo*Bq\AGtg`V*sV7D0E Ȭd_s@Ivod/x:Z ˦~BT`^3՞ÂLQDJFU)jDbcɘj5-Dn )Xvvr9vW: Ü,R~:C-p˦Sq藑r" WeJ{3Eg^Y$#$tKP^zl( n"e<̇/~O/Žz)vX+ U]'A<|¿hkp"s=_VYrIB8&xkqL;9"x X<;lEpG֔`V&NF}k$ziBuqjQ |nI3Vx"(Bdipo۱%0nxh 'KhpD¯FHɓ`F+18b%FQ0zf ZWG9(ě 3We/opSf;?I¦Ȟ)vH0,K\24,Cv&ɉM:GȻ.r ;F<,V{H# #*R?}Ć,!(^Zu\vb66ҍ.dɒZ#pOJw/ew2B5-/zD7эj N`!Y *42M<h*)UE:8vGU *%*SpZazgZt)saMh>4xl> hCnY( {Wq-X-fX#@be3M5f:q GJ@!P 7b>0Szl#MR!X >M8[?0 ~ǽqO<;q-($L?&bv]c ȫ=)%< &z/GG-t-eԐ_8XPzî(ŭ%GH^qRQ12hmsȚ2լ@1qOvn]-J\2dQ2,v t:Ea>( +o.Z{ ^y =+ݮLS1Px)MJΡc#ЦNF㎦ hJL<]3+jfi]%vQ/'&fС9dlWB!y7j2E||q;,1];# Dƌ:0C Y$քz2կzXXݫ{ꂩUS= @BcdfbC-3xWC_`\++UEEϋ!Hj)^0157RfPl'`иgh7&tO̸@FKC#3\P2bcru:v5:=?&M%%&2M9EV] 7%5Xc釖iYtUq0ʒ;"ޠ ܵdI>`Ĵ 88v ?g Axn|f!.ͻ4t@@ 5ai~# 3*^9 'J Yz\utԂXG]ϸTEEC=Eh^+Jfǁdz Ema j95n Ü␣pS:3d.>HVlN8k`f}"hԛmzAA2(F9\ 0V?(f*݁KAY!Z[^ VsSe50sT!աaiu֤ uǸ J`4H B3I >CԸ@grKĉf}_,r wOg|;i";q쬝G @:‹p&;̕_֏aWsf|]'>>pp'&|iE9LZf D5i `ZIQ_LHʜd Na(M/]w E@XnB+Xg81"-UWD. `$Sqm`-/{q:4SNk#) i4Jh2I(uHွ/* g.}9Hmw UvJ }l:0a^YXa&{)8DiajHۀ^8uE1 7Jp58=U,]ߊ>:=ɈKc~®@Qu-)Gpck#5QݪܦO$MdS+I7wuNpp=~S|`r+u\ 8 0 ežhćS> Xa!9Uq@U,s"Ew}mF]e!W[uU723!*%*<rY-EFi\8&{@ʭ全^~*:hLI}"$?d4K|Kچ߳}0qt}p- S ;ؾ㿹7LbȖViFi=)6H nOeZ;>FȆ[dsTH= AK}ZKo /~KY3Σ_?_tvXX~], I@Bo3 n85 ʏM)!VPsRЌP[GGH\58mUŢp[;.&nPz?;] =rx5"9hooA[{Wn.I'8:.JF| Dܒ)l6 @q(:7k(Dj|Q(f,p"W:h6#!?3T~ve?9bss^ 5`EJ>묆 :VjR-Hv~Oo-z͏b?B}3kLt+7j[ocw6bu"3އ1DwлN7 6; ]h ͎;pXl{rEק2iMV->ml&X[=fT7S&6H-vMo+yVc2ޭJHmY\+Ak(mVaG9˚TO+E'NMH&FjzHBؔGկ1 ?_Yo I!M޷⮗vdgjpL~P\_#r[uvC]Oo:Ɂ>2fϡ`flk;4ϭ;,Fj\>۩ *Wõ?l,-M*:',ț 1h*sU­@k؁9L-"Pf#i)$W??DZrJfV^|$! g3ۛz6éF~t,Đ[1W0%62F}Xu^2R2|@3 u!8|WG(?4lC t(n'۔R{<(xwo#!V > _ tF͝46 pG frW=W9RLX∁Ne;[27wKP)GpfNVKa5R01m_^.d.: ih!ag6f,6!klLq7"ZmEX:mƃΣ߸*LhHR!Reށ_Lq1}KߊC:E݋}MmGtd5e*f䎄spQ`<ʹ !f@+haqTB%I֟OJ%VZ4V6+yΠ[v%Vvd $? I]0M-o$iYӪ |ŠriPݑ~'F:hqν'l\{Iq1M'zl0iIZѨ]˵;Q=4K7\r AtSMns:e>""Wi,F^yv@b'GRF3VR0 A"K0uh̥aKsBy#kM(l ݰȲYHqM:"d,o,iG'8a~;`jD,uLV X][&KK_$oSz*!l8btDN|aD#bx+f"½v qVڨZ$] [B+y1#Ąɨb-zf- 1'n6(pXOW{'%>(7;O CG$傸|:3[c?RgTHmSĚll,;\$K DU{DсE 6.*xVew6ZӨZȡ95uM TԒQRn\T)'d4{d2PɣM% xqZjY?7m 5H*ڸ!GFO tQݫ@,EHWEM$yɑoC{Zɾm_s* 8'3e#Rx!%5YQ@"mAwUK5oN 8LꐀDӂR&Þy~Q\? ?{>r0~!E4JRWL^ZW-t1n]ͻ'I$t5.jKM߇-sM?ae Zu>k0zeS%XX,iY4k#FY#W ܳ;t/GȬ$1گhYJ]lkfWi |e$h~ .4̣]O#Uȿ|s,50AXUc?qm/ 7D[ٱj&l: PXckV2tQLH7⎌MPzH5h5/s>+=OI@n~u)|2ͦa?B5($ < iWdV~3œ3q3wN"tR:#fX)FCaEXӛլNࣘ1 fu0.6}:\RT yE6!"^2cRQbUR:Ε*-wZ  )_ 6}_ۨٓlc1ӓ繸FCFB2}=rO.Nư6Won@Y5|Q 1#eٳEx8#7_q+q_aeҗuPt˶=yy$$0*TS0[] c*̀ .D H(Ґ\N?ꒁ0XA\p)l_ } N„l2|Ah]Xmj~.9\6 J:1Uc:؂y+xI+&R}#n!;`"#S@U+p*UzH?HK@Rf<(/0pJߩaR.ag͕0oCq֐ W35þ(x;O <ڂ8՘!iZ'Taf]@\8d@u"_ZqgD2V(*OivVSH6~'orz kQ%`h R̹7VBWpk}.f&"Iރ:cҙ/Jײ8"\ ],Ze]C|ۯ]O9|̰܃/9yTkt$nO ҃+*l_XtNclepjhϡW8WT=FOw{gqF6O|'"9JMxfy.7kDсS1 c@1Ru* d=w&2E&cMv\Pa hdbC| 2:"H_b(,COV.OLߍLU]r[5B64mu}H">?;: W^Xq>z 䢋x[k.p-\5KAai6giQWǹ%Qj#7md2_skf h{-C=>ˡԤX_7` Xki0ZړlNvOŖ]l9 pֶP:șҦo [lƐfR (%КN3H{,w*ɵ@L^Omoam:]k& Qz_.~qM@ydT %g짰vCl|ƈ',%Y 4,'&L͜w" QcC}/ "(NȭXy Q:u4^p0աEh sY$=R':?|GyfZK 񴍏 R+(rI[Q4}S`F-t~7ӽQC*@ИCp4.c鉎M~:Pʷ:< ]q8ӭ, bT?t ?5φ$׶_=_feDZM ڴ8e\ߠ/VۚhhJťudc8T/s鄦.F^8(S?6;pj¼[$,h @abUjM%~!೦K"-~i~6kϞU_O)`cNJPtkF[FOG,} <ƒFU}H3#ͼdNuA ԩnj}'MtH(?I Mp*ƹDoQm̔Og'qZ|D\mge@ZC$J = ^+RPDF_W6 \!vѹG7t9M[vy W9z؈opG2J){8]H<}=~WVrlh[Q"i=s4q'WdmP`I*>/T5?ۂ L4y~~t%oӸm]}N' >sB҈GV;%.? jFfn}aqvNL} id] ax2 %pL-\Pc'V4[ܙURA7;FJf;<)ĩ@y&"6|o>`˖@6"~C + |ɣzGĖ,'W;dj܊|u…#]b`cKLeI֯ø\|\wFHiڤ>5]3LS0!AB3F*0\2lDvw[=\jIN2Uf~(8I jn67 к66czw RIL?`^): 4K5w#$%+3EjRS򋼈vR%^1ߒLP-\;0IL6P@F ǀz 8P!J`gjkc ">% sH awBuy-2Qc]]r61K&O~isڝUY&yݬU6;G]eIc5LB?tAP}Ҋq 8,ۋ~ mSJ_7RJgPNnRb`cR%3h0V컦ynJ>+۝$(ahc5|HKm2TZ;z!u{L9{TIbϋr=[AǗvfaa ǻD>TP 3OӪϵ]ms٩ V@>1y(rKhv`0-j,;I*((نL cIWOj03ҘC7'blC1m%'ΐ.Kr@X}<6)5S@W-0mѾ/z6ȺB #JKHlj=\n)ay>HBDtTl?ovXu8JUVf*g&=6}y4AP.1*HHyG:v`b=2tԼT &M]1X-#r34gosǶO nҋT)w3*I#qVJ=t 3N?" i#1#êPb| 4$ ~oUԤ'z*GRhƽ^kNi h@'$^Zx,87l-sIT"vk/O^W5'!@dW"2umz+TEeb2kdd<&ofhZi^l>rDwAp3F|#PdOPl؂i YA+]S'b$/26H Yg4|(RX\3 ]j[(`w 2P@moIΏyOFCۖFI~۬lDב9=Yoרr#t>sAyJO--wChTgvZK|kղsSRwΩٔDJ.hqѠXFEO] B!g1.HL%aBvtqk-H 7i;{u3DUUh `NGAe|)1N[6[xKqm>+ -v-. OǛR' xx~F AN҇sgV`$6;U NzzN/PURA3[Ȭ:l-I?6ІTɪeSJTZ#GՎ lD {dŪ5? \1⨜,J?NQͻ `o̶b i\a~} ў.:gUX(j}氫GOG>kD|V+gJW N jqPl{ -*uTiѸ+2|ђVT NyPYuÐfH~Z` -*i@[|1 Q[op3^`[~wzR+y|,S@d9<IxaeܿNxmَ$lU4#s?cNb$^`X62S uYږUm'8v>^`>xsN)%ˮD`Oll '5"ZLc7۷MY4]`hmQ]<ė/{ӔW>A/i@U׺2To$KiJ = .fQjH*OB>8W 6=w=k΅^ia;}`P}uQ)ʛj71J+o0`5/mݝ ~eqOY1,neWRpbH9¦ۆǾ5M& XRW$37@NY QIG{ڥqG Cu{ e%{*`m C#`/.6B_Z$Ʌ(𠟮-gY(8Lۓiuϝ"҆|V% f*"AMo*D3՚%~BK[^O3b.v hs;UHLw̠`l*i 3e 4IëN]Y<' |=+[%F5ՠfs3Ty0tW>L-q3=70xd(dMtkd/@\ ,YE_5ȩ'yQd\}}Nn}](#h` (?hFd <.=8U s$zxdqG?'nO\7j>UwV5&_b*c S3lfŝpH׮d z َ!1(aQe3K) v̱_0+M}F|"d )<_T2ȂTQMp ȫyLfC#I Q;3ʉzq.>DEX }f6lHܷVӛsJ*}`6Ls[nk'\mpYudR(ݤae)WV6qZ,=WZƖӯ3͋qWgi8\ʡF[h)Ŗ:ͨ-;0MV e\ n2D&(ǥ'YyԤ ~0#@:"kTث1P< wi+-;#s!r~* E|Yy&nkEkuK;r%<59B 9-a lcђ({2<9țjNt4 XW+% ^ 9g1Hпn'eXcȍYdU(Hi7 -:Jh!k#yahʘNM() 0P/ 25-Ib :>Ci(b b!U̥CЭczY&Np"mdwjR[Nbj9_&ĪM%z³JqBea)"6GŌ5XVRmc' w:Nq_-k=i^EFPvb+"h_1}uC5ZCbbNJlqƳ"4vMsV,w& ̺A* [3VM8=- ۾?CI2YXNp|T)^(|n9gNiɊ2(l#W! H&~h '*;oFS oW?BeY9ACSjuz߼}Fx4 uw SH|%hҜtv1UjUGB&OϩM jnt]i61!/(5Mk&/bd\94|kBhY-` U(( WR!Еف+U="rU2CL_a8l!λqaxqM;o ^-0HY%S#7D|ZI)x' D+BjdYoVESɎF5lA`=9 gƀ賷vD͋?a-su~آAk +KM_jwy?-ԌT7 DZ\qɃ'crk[@Zagws3nDHCwte1zӺ;t)Rvc9t ?IdUrj`5y`=8F=;G0 v?d'+ sQ=XpiuLKActV'/tWj'#wܥG :RtÖ.#>ճbp)G" 4gRuI4 zVA/s'ۃ/c4GhxH:d~Rmtu&t[e}\)6Q8 ϕN@a 4S҅Fw̬ zK/d1X _*K:AJ;F7pn+4~Ql0L6%ߚ]b,?8pY{OҫEݒÀE4 e}]/ E̷"8.y1`X[%`k.wx fl<"=~Zj 3p_ /[*6C+* R=hv*kߤk9O Nu)#̚86qLP\G|vt}M[SUmV Kفy V O-ZB(`Xݘ@s E^ >8(>[RԪúaTF,O+D|T^,VE)#VQ9ġ5p9ʍGrj;hE6'5.~F[6%c@<]"yo7c7e%_Q d@Il:mW2#_"uIWddt_Ca`нd'/}YݙnRk"pOhҒHK|jܢ@]dمA1[ ~ŭOKPrاhŇ)0JKu S6~b{c .nG`Kp-mn߲ QBV$j4E>xZ;(K灥S.Q1c=/!` > {q8/tQ3g 9K#ӴC8[z.ħC'L\앆5Bs{tܚVORI=C}j5e?@\;5V/x /+u\[ ȚUx]]}M%>VWALwv ʴ\w֞K~K†(:4kn^NgҌtF5~8F$+&9 AR<3]r%=bLh *xY 0>-*$Ms[2k7}ֽ߫&!aޒhizaWf֣Ѭw&KlZczfRbeԁb]uqp5r_2]-eqIŊQ;DH^ߕK6;!O7#\c,A k),g}W2ނLD6zSrtXQUu-c٥յҍܩ'b{ccIJckp5N|{[$Yj̩!"U*`Mz)l~~k]̠~ٶzv_UCNf3둘$)þQ+!aWL<!ÿjM7by0BV29u^HibCb>U:ՊH؛.Tz`v_@;F6橞oeZE[W(S|^g*e_2Ś~Ϧytp4%Go !M M1!wϕUԸ/I3| ԸkdG/<ܒ+{+ (]ۡ񴗸ܕe@tb4~Եr K.$t|3XE:ʭ  kE0lD=L$lΠ($'t.Fd&7A}: #Еpoe;}yg+h`mj8! ej!].ϯ Y/@zѡp715X`$31 8|4exHmWD4(h Mmm? yxE&s{uz?z"QTh⬚"ct*#ӄc\xYpP)Tf?WPE<Ƀ.5sCW5Zl X:,A(q< _-eRjj9n*{DZ֧/l*\% YXͬ]Qf޸JnoX\"fD-Q]VJ_Ŭ?| UӊI3I =_ =#XSYBl;L\\n_% WKO>D)ɯh_pчc@NR-W\⽽ihsRG:rjHj\t ڵ(M'-'tv`l9ROh>LH} ׭a yBv 99ݲCw33Zn>VjfPs[lZ+sGOԛ"`h4$/4f79-&&_13|G8u)gS Wcap5>QB0qXrL:hӅPA\Da`kC"ה,ad!"9sLY?r`{%\礃6#vRٿU \F[}X0cb{b-{yz:T 7\j݋ʋhJW H 2<ʈ W4Ф "hM ǹY9}3>l^_hRann󙶫Kg_Bh^{{֍}nYU؀ْFE;.?|h]HKnO?`.TGψR$q8æ7F4zڀCn豈R)ykT7 >ՙۖCLWV?f2cIcv +AJʄlv)  \ ܦ#V/a5h_nUj<#O?%Ɯsljݙli\sfOk@ZpTKaOKz|oM\]F8^5$cU8Lx{hJ'2Ϝ1Pi~k nzg{|}w*H$ei@:so@_XDǙh6%<%*1]3|'v1LBk9n-$yW`5MW &,NMg[wy"9+(u~@1i:e7(2۟q=+bl xyA,o Qp`]4 dBLH _qkڠ򿎱G?!dڹ_p pCmz7 _BG1WޗEK&߆- I6kb4. h4r'pi]?/I/NǀL4 d,egJ!&Y'DrP!p[ܿZx0Q&[OXZ"wh7W#z;}#0#d<Qg<-eTP#+\{Y%Hxg84.\2 #xp"Lfـ"z)?ZLꪄ )[v䔈WyԠ eY>l eE2O\,_ S J=ʈy#ߪD:`&(&T 92uib Kk;:4httq '']]]&s5*Y$d^i`J_1(Y{z*˵WvG\Ϗ poT∏ekK^ IY0#G *76$f,rcYp'/FIPJ+XXuk,غ2DP~ߋĚ(z/m  #6Jk5$ G'V SiAj}#rC+TdD xBc0Go^q{p /h-s{w%$pD#f^Gc]|ߤų 3)JM3A5p[=޾5EИ Y)A@jv]&)}@ZOhG) a\dnD->+G@Rj {`H+?d95z 7<07GGw]]g ~%~obzk:? ,[L Fnsُnץc.hq(D?vԂ/t5|ZG~=xi\BJW&CgY*w#DS.8Y>!Pbg>tIgzAfȳ%p(}6塜S,E ?tS]ǫ9ZaկR#Ou$\6NauI~&JѴ׽yi-T>ć5'P|#S3=% P嶵'㲄,P=B^Ojt'8Пe$gp-v$sb$r慦^@y R#q=BklliR^OhcI/`iyK=4L4Wrq@{wh5bzCͥˌsY W "]`k09w+Oo+YC>OZ8lF"紧H|eQWs2K8~͏sH21[Wɗ'ˀa"㑽(_0'ۯ͈3!=<&rz tG|@qʸнtek>ae# n{XL dуi#^<-0莶1n>wxĹloX21gվ`n9GQ8ڳ~%MxC ·$]aU/|d "ڣƻb2Lj6R{kNm =rP9QwT{~1"PjhdOaM^e0PQ o?V'|PȗnpgdۗP_Y8Ud3QKRZQsĥsWԟH^6 $RuC,o&A.[Y:?–gwϘ 69QwsiMZe<2 \V"FsS'1VbAtNj=|ctЇUS K\oIӘ/p/i[M|]Ljߟ4Tgt 8 cJ6/xaOabz𠭠$mU@3t7/xZF!Z,/̌|T}><-DE鱶JB6+ U˪e= V6yP=訬j|/0θ΢}"==.a>fgZ!D1J*&.xb5&'5lkF=|q[2 }#ߵxRqER/ڔ&1~r^k`$}pD$âJ @Add=G_ !π̳T%xTISbN|O<!l=ZkZBP`l g.C(גU| F6v@l^N[\ha763~_Kc[uo<3bS5<3'.Q^9t¨f:ۏe?J"*uu9{aV~\(k.A|RE**~~W8ՄLgȔȚ. ӂ>^φm>Z}®d_@ܰ ,~R d%sUI0!-\Z lf@: 'KؒANu:13Khp0ET HMŒsHV]z6܉ۺܡHb/ᰟ&:\5Vm'#vLP(+A'TLoۊcu{~uM6-_| t"a7Q#1Z o \tg*0h0qLj5+gC z K˷Rǭ7kOtf)zAV9a  kp+O]o^E:[P>ƕҹrS庳pnk /c&ñn$yC`UhdfVPTָ)Njq=XٙT4n4+mIF=W3:)HE } ƳNpyp%9crIl'\ X AգS a}WBlrL,dQYo(M+_vم \!S{ae&&RkPꑂq0"MSoNjj][%rŽ oo?;0Q?*/ЁsFYV@ 5LҪh=O?җԐFa aWK3~TE ڷYaJD\KenKXa3"\UW=sYR== :X'C5QxT 0lfE 9fƛB]÷_,$Y1` &Мr޸[zLN%y'sYzn$~ :ŵ xf¨ȗfIx9weM+ ~Cw c־7w!z-]!~+nCb ƛPQ%9[8L,oGuZsʁτ/ԐH~^ ShX COPA]3F67E[i01^644~FH ؞!/lRWиod׵*eG)^/a% dm$ >{˒es7uKAzO:osvpk,\kxlu%!&f&]戻l'k$DŽ[È cOifCcۅ|= d MDp%f~˲9R'J537CkTe$U=?cH̙rJ319p&_RʞgK<gM}Frozub*YHЄI8 wCS= m"9\v~p ɛ;5Qv1PY-,1iHhp2'j>CS1=Q:M2suw 3tYq&{e=ԍJk`&2\s|>JR h!-oaZлEI@0>6jܖH81.XGyŶj9jԲ=6P!%oz¿E⊘a- R<. ʅ(-sKYIlRd^t&-yle(ǔ}S5 8;QSXpDDcX=,/.t~COO|j&ͻ'2e-7*g/v7E@.K+5plrK4㞫/$J31uMDZhrt3I?à2ߧ\sJgB}>i:z_jH3&T:}lg7yJۢOߵfP=o *i1_Y5J5^1W%c_J`? gYM2kG#͘&$fHpν = OZ:֨U+gse{ܚdEk핎YP c=[ƘeW??䷰նz{\eϟ2_b=UUthO-;uct U[GPMqѵ@Q-~QǝH*;A ZU5 > ]} qZSy |olRI0!TK5i'L/v^*ֲ`wiήj띇|YW?.j t+o:Ǚvsz%hcL+9CE4CY826_1y$.V^G30"E>;ѝEhb'nL1*<[ e,LPW̽+ǝ%MY)|}y@ؓCԷD4ⱘ4k}0u:OFSDVpHO&h9AF;kB4|~:޹-@AeX٣/"|Cq7rNۗ.hOʙ:Ir>w$L^ى}g(5C J@@O&R dpbs9:h5hXX/BQڽq ot!zrQ,Hv Frx]C3o?r~ׅ|~5XFk,:,iִQ+SkoG!y 64X~c4,TdBuԘ,L/)/A9pwpQ>쓌m@@rE{[̼j>DP4;I&⽺cy@ 3ǂ5Bt}ϊ.#e]7蝂z_Ƨr!&]dpÓj+xؗ VHtD0Ayp6ƓxW- giU9H6]9^gӒ/&$R?6ԛzj莣 -eу4Ed OPaD}Wk4DY?ЇwCL,)ͥkA@{6 CeHyȄHimr{ }`xf)4hm'b-<JnCwb+S:I:i"x"6+}/$_3}`,8bv?X{J `-iJ r{k=vm8'~L8!"z&'g&d)hn%UU)ed_«O;д?!hkQ7@Ug5`77n|CGNYs76=j_,ec  qY;{I]'Q 9(k^T}W\K,s|w{ xd\8Tv]TS!eċ3⳼y!Ό4C# ء.܅yDy@֕d84};!f†|\|â%c#ͷ{ㄶd!^r4"vۖg)dOO69:x¾2Wi{PZǿA^Ƣ;`1TǞq簙.&aH?ǼiaU!=iZY}VVR[~}o`8)},{ 7TdTDwXf2NmX2hpJ~/.dBI\Hb@`۠L%'OA@ ^fO2`xO5g$bBUvSPomf8M8g^"$ n2X/iHS$sHؗW8j \k>1һ`ݨ[9ww`6̧7[M ٢wLah T+7D'%:PݹA#g)nߚ`nupoUHmBв>0氪lw s\/){#O T}u X_8"KF U ]GET릜c-47ץƉLocl ['2S>oOw;?eDsx`["J^0^|@O{>sPXҙ}e]za.scKY@]7EABKmb6%h CyM|VG?`)c7^nWEjym Q^ ^=ek$tb @ln Ɇש8twKkXB_y9a9${C Áqgc!R7)ƇBOgyE,@5ʊ ;5b/LkWcr!E{H2ljFfHT3l1=S@._Ik>K#- =|y?-߮2 Eod| ^gj W()޷y _Yst,F1=: psץꝧ Y[Zpt\+&"OuMH:~J?7dYJ,0C*3=8| _@ tD[<-|.\oᬲ<d{N:8<60I'8VrGZ{CZ^Ԧy{Gхy@w,pK*bˉ `H  Nv6* 3/UU.RLpf0Ʋ|  U&km28RX/Kib`lhgۧ՚7'h~&&"(xqLpA3904zп=c6x߮orըk2ȝՌ9̠ tRS17NBR㺷FO(8^++:gl'<$ =Lh\C56z|0Ekz̳?~ZvӁj ٸmg ۀ fۖTCMvq-Ms[[F ,dI(mRNr#Ĩ.i}!VOl_ƒw3]Or~/h͠C_+S#yg4 PARt} ޥ!%olaL mtg O/q&oƉ0j% rC5%>:р^iGq7M^_}V>Ԩ)uaI5؀E} q-"46={wFD‰L>EjcX^$rzH'>&n'>Զ 9h^FA0Vkp^);K*LS.uWy1&V Se"ѐ".ű9-DE?B"<.UfbQcżOl}ص/I1WUGV`(O=mb>myx6_‹ZA?Qd)ҼwCgΑ\oʲ ;cu< P+d 5y i+x3 B,3FuʾH1!rnuM/8u>oN>4꺂x/D_rcϿ**hM8+*ɫk :vC<6Hʳ<~2} D"c/<5B#E{M 2 k1q} Mi[%_ƮomaNiZ*ʜ3O\kԯ>R{ )O#[sN< v8KSk;qTYaͼY렡\>#xE[ݐGMEz]d _Y[x M &B >Dv N^믫ѷ G^dZPKgjFh єi<;(;2Yb$VB`s q6rlMg"{`ȘCEB !kX9T 9ٝP'ػ!Xkm(OZrtx3|e)Qa5GcI~?cZ" `q{C`s0= s>#w+U"%|ŀu`|kz١gWØ}p{<-8zCr^~6-M$覅6f9U y/ζD ~`89*!wQ6r$iy݅  kwI5+aU.U S6h^粰gPh>FsO+"dT) =t ]>%ݽtΨ@%QZ%34S֮s}n5ȇ59R7^Ǫ 54'AA$$dxd,H:^B͌=FYe`A6sqDޮuS>~<&#NHMW>r =IS2]W0 p8ѝBS=u^|n=A25Nf~N5.z r# C ;{\=,vfCWu+og'98HDR\3ŗ7&רQKvH(zLPfdm C(B,%|-f''.OBr?!K[87K`$+(74iBlj?V;˷zĂ ܭnjN>a 5$yesHzd.k?m#}:w֔U0Aꭟtm-1I2;Elu:;Xzш ֘Z"dE=R˚`VY 8,f=Vr~g0Ksg$"OLY-ZF%`BJ^Xq@̕0C?3 P;X"2oj;E2d5_0 u>6pXXc8i>ns35}&Vof^+w/q/rbϝUt7Ɯw(B4a쭗nKk͡cB'W6 1t4_ҽrMsّXr FxVc1+3{Eh`Ni:lv~ܸTHNu߲B0x|mA0mg36F as*Gd; .4YndhEеdbrw4!XFƯDu}S׬Ǡd&mޞ X~Tb Rp\H#ݭ[ -Ʋ5 ꊴ4s&8[ rdY;G0Í%9DW1GT6T ܝ# b!4_8 i1FZ+R4).?}h`?՘DftG>'=i,v&Mcgzww&1[ҨS^Am꟝C(73QEL:IGFw%M̰h\;?#P% GH+dM3;>CE[^P.cq-ԕ}'/7j!>ɒ!4V8 ?[ \Q#_t(ЖӏmP2&6e #& BͲ#%ߠToF:YXjH`䄔*ۂ~F(rL-?Ҕk 7]H<|BMDlo@TA *<)%V+)3ȻJ?fݺ+2h+He42#}=4F.|=Hu%ʘJxK:{cq(bܢE l+ŕۀGBB:(L7Aov7)qL(_n~od+&m-{m 3M_-O6~v\k?:u`(2ݖAm_Vt_dCutD`A(g (z.7ҽ,e|0A`..wh\:}Oϝ,>5Y_,mœ\IbhߐFm?Pbb pK˅0cvV ?79҂njzy_@T0 { P NwO+v , ŋ4Rn&Kamc9XNy#hs{F\R{ccOAwq)-[RB4\FO(ZCNNN+!xZssԨtł+wFΉ8(|adJϠsƚ0kx 8fQ^Ym *n1h.))fCErwJ:kqsx5m#н|{{:guPՈYfavnAwLol KޚǴ2+A%hy]À:/\3bEŧV:ϫ-=ԣJ߻^vQw]~)8Y(|,_f-;;F nQ73x/F 4W3pՔikcw8t7ug0Sf  \i~"x`zoń2g' F,6Oֳ&;aG՘#j7J0]t"qW5B.Q<;Mu~,$vwFf4yFvcN%7C"OmZQ59bH} HwA8K9?O7 N[5)vHGZVڪ 7\#k9Ւܝ: әI JNYؼXXR~L>_LL \R? 6({zF?jy捘JF?lh{'DEUG]0Ƭ o4y( 1\kJU){RC[\m  pq)3|k;'aHl&pfRNRx 1Y/ 픔u[RfDT#cXƻPhvvn7-oBBl~Zf&.^Ri@6be _Ů ka6fg/{ۼP>%!˷E#{ d$VvgZ a%* l9b 3oIB^7yMęlF{^מ`Wܲc챚pG0KZdEgaJGooPNV{p ۖa.$_"|pwy]#0Ƅ1353@XmpOD{J=?[u%~} %!@h-T%%|VlԖVܘ#w+vsVZ F߆`} M@vXm=S\<eZc^> 소n\K4}{ej;5- mkKZbPٚ'"~{&k5y?Dk:BK6tB䫳u|u趂^Oz+~cge<%K8J2bLS~DcQ2!EA_Bt,cST+*y"BQJ"9$/Q2]&b]=랛GP< dC>(.kJ* tZ|)aCn<#Kr]зW -z0:H`eW{eά&(*_,]9^J`Ux+ (LV8{Q#2)\֢Us \s`X?N}\}*=|e7%nt 2&cİiy䱹ǖRE'&VbN<\_[̦' +/B@Z40S}t%e= N>H5I.izD;#nd],oMprd]d;AE7p=z ?tEmTȮ}#O5-NU1]!c>+L_Gւ`6 _H#Ŕ?(}f }Uу}:C*L O[L:07`2B4Y\iGdc5p8yTv/jxM]m נ ]37 IU^&? 11އn~1}i1&y_.8R>dj gHikzQLvS9V&?T^48ȼeKqedZSĴ }9/ZzڠndFNB>-7&4[o~}IjK̰$c,-tjzAHY@(kʺ>?`1^,VgRX.kKs(#ȁfA-~p74Ihצ%-ڴucyŽB"]^2X%bV9" g_2qi?kY̮cid qwYMi+Nk;kq}˕ؖ ݸ=#?BޗE%D FL1̝x$LԈ(xTmvC|0lb]ܚc+Qݰ0&fVWͮg;=ӲĢ4s}V9e>5(M \m#2/_x㻒;ȶQT"F~tpeuq/" LҺ9p`п7Q\{kI>$"#SީLNq*lb Ae p=Ia}aT}YJ+ +-ᷖJ9•^bYiC \eVnpu:1:'SBY}}~m;NF٠OH7ݾQRi&ހ .4Sy6/eͼy )2SJդ[R by QYIkPM_39&T_@>r&S.ݼnJ\ 3en!{6IƦ#N9\G<;~ `mX dg5 d3mh/MkA2ms¹(l1Bg.Μ Z-' K6qP_5ܶHFd2=T+mS,(6Q3wDrjU;h]Del8YO1{>Sμb;'ve-c ;'u@6띛 Fs°g ANF%aǰN> <^=Rj8 ֱn$}G Zk[#5BsYQwr֊"2cvM@wP$]jVHOˎ3|tQ)VaV)]Z8h娬Pz_sXP~V:7I]m$aAuS1"J]\,S U'Ҭ@0v'LF1Ä_9鱛HQX;FtitUh5gB ~ gRx 2mgd'$'Rgji:O+9?,Шȑwbv!ղQ*Ǭ7wL$qi3fSTby,m2et$n=M0So?[7}6-g3󖷘fn'Q--Dy졵Ą}~[P[LӭCםf8^wS3!BE:S֫nGDzW9:RԒ_D}G?)8,j kFQJ#(4.c8ܙ:'cilHǘ Hb[N!qmE 5fo-jӿp$o2~QS+o*K/2x@hgfVKoh7ۋ%̮nMqi)qX6MZ+@Y!v^tnRBp}yI--]|}ƺ@$۰u 1it ?=xVGZpP@U@/VB#=7+(7!ZjC.(:Ԉ)u/jY5`dt @9{3,Nilr.'iQD4tێ\fpyYEk,08qx]NRPc,VNz1 gsf.X ZnҟPB&äfwC|R6H /"+8$ {w#szXPRiCv=EgM.y.Z]po6VQۄ2j9&ƾ;^Xj8q"*-BEfE;htqa{0L1F)ўW*^>~\RqQVvHy#m|l=o1#\լl]4fL-\YPTV~ͳcO`6d0_FsCyܒ.xrrz;>?4Lec^>KW(BZzJݞ|z0 Wqi&2i?vCeHP ;@U ).P^1ԉ63H_K ;Drܙ}mn ɼZ]')73X=<" ݽFkf6[f=/ ^2R6zXACeA[1s&Fo\ϗG6p/߭UM0i٤2eammtLLs{g4"JHʊUe#W} -K/}{V[0S_=5e>Y7Z(r~΃녅$(J'4y`vO%X8`.RHY E0ʸ3t97d7Qh3,A n h4jU՗Ll VRYH"DA" \T(8Ⱦ>)zZ,ՋNE9bӦ&l #b>؁&r#:r)c f{`0vݮ#3u"*`j옭GsftVWp>3g 1 Ϭh_uן[jKZ7% bL2XU+^Z֟ˮ{aJBu5j&Q!Ѩ41TP=2M!@VK"q[|8+29 M`Vz9FO;r5`NO* r\C,!I4\9/hƂo& c=rZz#?Qȷ5yV a?Mꕩxa:3d+7:dNgqXQ܃`>N5;^,#b1VٜvB()eB;mj-6Ŀc`*PY7)$Ỷp>42Fu$'c\0Wip]ˤ/U&9y6JG.EU+v$`BU_O2̀/Lѷ~.d8uKG/ @MM[*qs8M`H_ %}7ĭ孤+@cL5xzHDb4Mҵra.aȣ"17^>i % 4*H2_,oxf MPe"+f<_ø8t ٟ=-6[jMh֕Ʒ_~JqB觸F@m9动:q21%iGuo#qKM#h-Z4g5oAK;5 yf?) #]?lN-Z"; rh#߄htb#+w?00ža&diI{hRq59fRN[@< U&ǟ.1c<X:xY$JbOuHbn{r 'MǺYgs#w02_ [L⡇Zuj1|2Tw 5M<};6Eg1{_;)֞$D>\e1 w9Dxm(]^@043H~**1~Uϴ7hZI1sxɰ[aJĽ|GT6d]9F>qLƘP c/*__s&H}ʄ/y>&!\#tHuJIRP׉F$X6N:9H>e>؂@^cpTDu_`"UOA l B#9uRq|"[~Qx՚"^rRѶ՜d"D>N#K*F48/ܚBy!kx7tlT%G܏*ܹém<(:?3+Ӈ '<I:.8.Hc\:y[1|Sp~NȡQ3bDc2U4>KZbgTqԍ֜t%lʒt铦TZ9l<# ;醕 +K$pˮJj6Kizӧu,ɵbH1M+[p<|WDM}:AW䵔fZ,ӄ=Y7}gZcw-ۢW k-^zEkOK##o['D/QrCL[ px%Lu\Y'i[Uq|ܼ7~kgʴqX 'N9COˋ$o{X-%MKf6Lчϓ4b l$ x4G~nyU,5VW-h!b~˙ ^/yK*&ݺ|7/ď}JŜwߞm\V!~DxR'$ g;.^M{Zf ad&kV$4ǪS\U8/vRe XabEN& }tU""Dnκ?w1uئsmhg>(Uxd]zgU(AY]=Xq_i}牽WO#WkWd6 NU6'%NX:=e@3e>ɽVܡ?QVھvT7T^>@*೴AK&Nhb: !Tp3=Xj^4{nXrm(2zNt Ev;Q3%KN<'⥲/,SI`aUlc?_}ښ"NFQ3E +(4/Hg fydaI)gU;-n]Q\E:Q: yk2IJ$2A<'(au[)TR?;WY'@Lz$o81Wxjp/5(4oH\#5%ԭq<f%쵺tɇV8eW&$ڀmEUAg# #4FHYݒw3# Tvi(<'Dw~HCHbC%6­x̝$TξNF``HTvO^!߰Cרz/+RtkkDh֟9cMlHƚ]c1d9Y$;yDP__Qm3FI.=fm,nsc%ݵMoUL]݅v'0XAqۧzѷ~Iy¾QfKِTXOp0poS}~yyK(Qa VR7;HFI ; Ô//?g!,I󡧏T%yspy4,c!#@ٔ(&kѥ˫4 ġXD+$򩑯E~)15'+oQ /xQJSBPdx.4"SšP3B؊-c6붉r]7(>w1,9mqrN3 UT3^%Hp*SoLݵ|A`DYZC&(\{iM8[u)Ƥ'cUˁ~v|dڢ !cysӖoÒNyaF>E=ԶZg9(tYWjz(gjp:"r\̽uC?0!DSJA9 ] p]v1hs$Qr:Ӭo`Ai<6-( A ݮ5v>!C۱(f_IY ?he4$yIiu} |5VΈpZJ_|1˓zMM \&9Ę橯Ŏ7V|Bt>*űOZ4َ2j<,P4rуx׀w UNn8 zhSWNICg񀳒/9Y "P!T:ܩ v7t.}@^^۠u:6X{ZCo[+HiN!::Fh,#I6Z^:#B3* [٢l1nJP~~8,c <~g_͟igk6 @(櫍ϷC#&&ςK7"UbϱNJ YSigPEzhhx cY tď}@uŕ(y%V=j%e{Vnv0ZPm,ͅ# 꿙?_~\y/o'q^ *e趚dUIB1u @G,Ia>nSl=*cn51# ND#{Tuo`mh=3il12@@Bv xyBk}W+$-3=xU"BŽNǃiU$quS|g,nNz8P-)=ΈPZp&0@7p jJ-oe8f)4  b3VJtwwa˓?͗UHSQ]U\ 8A.͒)jg^Cbx}67gcu7?ɚOu#2 H/CvHK'$ZҧW6̓QhOH"_†4K|MLh[93eu2jM>ezCM{N5Kf XiݶQ Wd{|\ƚйP1l[ Ti[s M`eÚʖd C .EEҘr.Am'JO Pdd!\XE' Sx-v0]C+*%%, 7y)c(C,_ mrE ~`{8SB5_jb0 =9pSPw6DCꁙ,} 2E˥-f!2X~ B^we:Yn DFeJ]R.I!.e>"O#@1mvWhy"O|3un:5XH`rվmPTutשnFV4Tܿ L[6Q$lb`jdF))؃ӑva#W @lcQ4&(U?Y d_A쬿 ٞ ^;Yu;Gߣ27 ?l J겇hȹ@IepWzbp!-yj Hw` ԏ6]hQba`hnO{`KdیswG.iP&ɠE?7x`<9mmsbFPGS%m?_t3M߯`bۉoĸKSviqB;\g*F#VKƒi0{ dc(%ak**\9ΉH@e2ZWzg[V`&fLP8vCXp\U\;l?xQ~;ejD-E[M\vuj@Si>SKLO!_?;~ѬZvq('h^+@z=[y`P7*6C5$iqR}DGT|Ƃzj(S'X@IRe!-}9[U,#ev_,?Ym/D1R3s0k?g sNg&6xa{jha)|l} =xo3|R%_)v;] ̧k) |y*῟e x4ߠڎU:a]9^dd/"vflisa@uA=qA-L^CbWh](e]o6a#Զ '@$v3 )5nx#M1MUN,Gq|Ϡfkt[?N{)7W:.æ?ZLt9$p xzu>p c֛o!i1|9D%PMߗXGU⥡x6 LUp >甋E~luhy(ǤjnjM 3]pqʰ8Tk~.Yz@>HW7E/<_z.#&Y*K 9!?%Uc8@ɌSC ov*';Qܳ_cvF-6*"z5 4ϫĬ_5чy8EZ/׽ ʍ8Dό K Rl;l*_z`}cy !Vbӷ j޻6eG,8<a*c=1ħ {:պ+\k|N^9~x͂ߖN} j I]:K2"Qu/$8 h tnase6MIcHt(ry7PFtwD|P&CzkRsM(M,{8_EaJ_^D8W4 U9j#6,t;!|s42f{Un7aU{*8 uO 9Hm^#~sɧ1e@`FcvU[պNlSDVw T04ZEIPw'JK]88.wQA5#qR&B񸬫lɼ])@9O n 4y0 JS>?љlg;P9-;l:0VQFRފ`Zxar~ {?tE<7j*m}Cj(xTY%}o:;"d*cr1<-|*9hpD̦Q, V{HUB,"*{.r zpJU:0pa(mnxXf/ґQ,ZJOXrI̭׋IPnO5`&*>Ҫj9Fja#v=ruIOU1?Dkux*5w9ġ7!SyZ'7 NmX 7澎aH$.k5 3Jrqn(5c_JE<e Wiٟ܉kw$>ϔe╳9-ĈN9n}xchY(0"gAyg4ww*>՚ D4}wװLrJH3YjLV (@$I^7TT$>+Vk2/rY>PٍqlJ&[U*!Qi|ٓy.+݈J7QDeP"@PÐ\0$d]s}ME`? ,c{ 04c.u-us#'XxHl>pDyAf"Ɗ{pd1;kD)D@3oM`|lV(lCe*~|Dnw1ZJ9 \")IZL&noI ~d %Q.F?G4Zvt姼N+2#U|JYljwpz# 5J%ezLL~%"b 0] -697l2"OI]o 4M-k wu-\W@s؊8amcɓLZ<ڟ-$Q, USU!#{J# Ai|Śd)ẙAsDZ}Vv&trg f#>$(kF(Yq8щL/<Kţ)͋OeU:A2N R?Z+h٬L(YzooX 4z1=Pqu!M~]H1$}wv̟{<$_ެb 9#lX{F欇{N0s}v%ҾRE M):j$Z[ȮRgzIG쇇rA9sJD3OzZ+ ]xڞ}JmM.93%}@#▽.ak?ęK/• Jݣ[!,* _ڦV ېI\Z3cLpb&{ga31%.Ept7wl,vʕF񟈋a2)ф{\A`K]D")?ɥ5˘vPIހ,h ^>.cXx1zQGv8<kM6Y 8HG\0r?8(k _̅O3/t[Ƃ%$`C}ڻEn \*z".\JMɃttœEQuŌ'DYT J YYs%SU۸o1~據8]-㛯81{Cd! v utf[-V%r%3[bŤ7T6\.gz+.i}>oֳtL9 VsSv*M '.;Ѝs^e]j[(eC %ôtyӊֆ>0P}ՋVCQu|O铜*&#~$,g&`K1qґ+c +rR{mu魿emi}f$l)Ha0j躒@L%lIĹO]0 )C `B 3jRw`f?]pDAh߮ }դ8j-SC١?')?+B6$mD$ F+a>~ltXYt8PỈaϣ8ck?mqɷ uH57O ]k#;e$L9:R F4VJnDӂnl!:R[9ZǦzB/inyb|s\"xTa&+ȉ+j*@ʄrtڎ0N<2_ftX4z]NT28';LR1}xYgكx=N-Ʒk0n0\t{my'V?@0JIT=] 2=H$%w?ӔnQL |o3dq4k*Z*`OYk:R\t#Ɵ)<)2[!ҽ^^6d 0%p^ 5~zsv ذ; 7D`Hى[YXW޳H)y^f0K<)x}7Dɿ<P:$& {xvņm|?Zlu] _q+yy`sSo׃ ) &X(|ht|tЬ-1gH&)LcoQ!l<>e~:&/7p"/<<@S ε.臰tm_=Q˻" }9QՍ84d@\f7/sEOXDI&'G6'S ;xwnI%Xǒ< ()mxʗ=ma_L5G|R IHDsjS] h! "CB!YhWUH71zR@WMf%rF267`o&Ne{R^ =,%+Rdɣ!޹-E?hٗ]eURMcrlaa/ߎuYvv;_ViΊkՖ=x93Em?{IP)TUۉ̕o~A"ٻA~ieݥFR~Uy eOL,M0|ZRAU?t& *5Ө69R *d~;<Pkܮ~dHYE껖yuY(RP2H?~֞Q$(HzZl@Ie^oQ*@@xXQY6vR>y΋eRdҹ*.9@S@ U"lz>v3( hsp6[aI ~teT] l䝷߲| jsS,V_JE)s smX t31vQ&O,2xrxmh- /:b#xUHv)y2`[*tTz˨lgʢƿ֢`oqTv>~fѯ9-;J9qΟ# MMX]Jr Aͭ3y +G_LN<йd7(_TQynG&F 1-WYUvD.3j*3jˢyVB(ya#M>I'@*ZP\ym3J5yx0t m#>z=$x"[onIHǼLM7|<%iV9+\^%|/FE2!o_KH2܉< TN:vŲ{Cx?GAjuO[3H5Qp֖xwһ7Giɚ lR "RȽJ5cTG Sy(5srE{P #PjP㮙H(527`R6ǃN%Ek |Yu֊{E%E=&";-Ĺo^kb{r7AȱZr^vC@0]QP#YB1|@ĨsN-;e: (?,H: |{jluO_ -~]7Xò'HE 5WLl'_v(}4m'3(+ڪN@FovP[ *:MH̀Wơ1 MTaYӦdiXتQ\1b{']+gBGxo}u8}/JSvfz9w)<4s]0:qĻ.L=YXjƶp>.!K*~p2j &ufsn84D19 jB@[uת q) ¶mczttM4@ HK Fp3];Fa-e`EfS/`΋EhO[)xtw0UP}w4 ;V̺T)'4s-?o 6g@}Or_jHZ۷fu aG#,PRj[;4#cqlU=7jV 19U1)ֽ ;#-p*T&.! S ^MPob]OO9vz_+ƒ@w`gfsaqחY 9}-<3mo2M%{6~p_7SJɏ%Mչ\m3zwWt^O,*._*am۱&נZq!q= 6H ]Zǯ$T}*5QV#l+ m!d6:iT߬%oGNNd<ѲLU/V-q:ȳFgpXS b2rzQq6n\MuF@ `+sg?$9]UE?~ijcyKwѸWZ(fB($L3fm^;>&6R,׬TPWdIy ɼ7B5`WgOiY r$NK[|k̝]fx!'Vdud1{@iA6t@q!G6E:@K8r,?(=7Fy7u~hUn):BqI#kF'_"6⡟JT~i%:lvr+nJ*$^- ~BcԮ4>]0H'.&ً_;0ZrlPz!XV8iUXw_ ,(ӂ^=8q="|Z<བྷƆ(Au & C[iL@wݸ^ƽO*&DFJXWӻa&=٧/"W9cT,P<X8Aa^ j[>rLU/k|VSh0Z]2@8)\\ر5d{Z1T썯*i?|(ev7!:*X`5() [:j[_Q@O?i9o q,(1AWj15IҪ%M0ȁ o p' Fs{6E`$WQ\jr"nF>YR 4ElޅÛKm.>SAV\!\v!S:OE$ykdAGUO(. ^iG3CI5NNi@jNHL=kaF/ ,V{/Hp&j_*Qd2S!AW=R=;ZbmjbER3*ۀEQG -ʶ?ID%v! uh3v_!ts dZld'IXX|R`#oM[z,Ss@(Wnw! ],Udr I້_3AD!lB薊#O?G4:hP_3?<B0孻t!kfB.˂4vo-&4ptxk7Hٲ>#eA@ +)"XF'b]U#``̍G:u8:}){sҤVXJn@|<<+=QY8FΊAi$/,O3'soǫ߁fF`3F\׭Oۨ]so+`;VT:, |rcqR,oen B;W0>  Izf΂q:ΉD !-w13C۪V'v}MkfnGBSΗR}ޞ8wHjH>x>(eig|>; !P̆uCZퟳ*TvCJ}̹ht+l}#%e77Ļ[SP3G1hDE,΅4ZɆwkj"pD.jۣgB3џ´43W-AS:_Sl69xP%pdor;)h |+Rr(3Nց v%y):K#Nd3ya I6)jo%@GQ 6B |VF0ǂCr!W_a2Jq07Lz՞%71Dȹ]eן Һ+!0 ]jz_!sn'0;`Wtwf,aJg)y5`Gmo:vTC.wf`p\,bj85 k*Udalw:^XInJ@dg n^&_FcjBQ[ od|E۟qg#3ț#!f"y ;!(#~+]5Or ҭ 'w#!\[g-w z6>C0 'sydšFPV, In,y2*y) x|%}W2':KCPZp O!{6ȇK|}H^d]i0ep3lMqcr5  iޚOF6WS!ۚsxKn.W3?{|V -XfI <מ+#_Q[~`~Y֮#x]d|{PyE^w0w#z|E0ɝEnc;2?)HfP[Q8dC2L@曊s`xFZ+2)/bD)d 9HGY8(#5(#UPFsևE&(ħ.mO"=3]#3$Y(J﨔X]N$%|f~QeINYֆ+$o6u8Ϻ}Ƥrr@VD 69i古U+KvW׷bsɣaUt)-LyXr^S5 )(Wʡ6M^ދb,u2`p`|mAAp5Ƥl<-!3\(ywaF874P ltCï$Z SbG,:gb6~?S#űBvu- TINڏv@""=NO$IrR Nl'_;w`i~QQR,2B.hǤ2,aQ=>F_G"҃I.eu`+_%@#u;vvH6l5Bf4VT/{YH82! VUM4Wa]Œ\fwi1!r$)lt|F/k|9E-ufudTno&S֫H9OZTn]%B}t3γkت30N,mD%[kUO@=ٲ3s]4T^FELB`$nW?9ּkí?+Cճ=x$Z etN3G>V* pSvD BAMVf[^dI*W"&@>5{37Zׂ[<`Ur * S=>#ao<;6.W 0FM* Ԩ++:)N%gG/RՅؼPz1=kFtƏ&sHwa}3Aڔ!<k9۵O]pBQ&=[Cy7<!)\m$-H|!ޖKZ/GGr % 'V _Æ-~-N"sO( N3.e2s}H}/+6}pHz5/i^6>K&[DUQ9^w{xpeʄ[-.rA!p QϦ-Us,q:C +J`  o(Uj=/ȃд TgsY=5(D /N)5wJ]ۣ9֚Sl{0[17ۺnCO'~#d-t[rӎk. YFTԎ1fQ&Q l;pȻlmw>:K}վvX_#&kRSie &ɲDPSZꅙ+܆Yɕ }z\VU? 4<ұvUg8B9JlI* mFSnL;%}| |í f _ -1j~Jev ӲNB{}N`?yu_]\{ Xc9I4Vq7&уhCL=5+?Rt0w#JeB݉K!Rh͑oc[JL]{?֧ļL?&- Fu|GVFUPajr44 ӛ{/vEFCPmeq{WVӻW΍)'P"Γ0h6C~V(aϡJHoX$H $=?9`ohў%0/ ޺[ڛq̵XہYU`բ>.($I'tBfyRxm3=$ e h`c9b2${W΁?2*5"W0Ul{< |WN̘lVLQ^3x7SVNw{tj奜Q:19K{q`aV45%Y q&D 2!39[ִK( _Ȯ}ww\k^Ll) cR^6 &nW_ I{b45x7;7D85Xme>lFAoAl۔9HwoT o^'iS%dwL'ìdx"}VM6Tt=VQgJX3\\W9:ڪj:(fLkOM2iX 6Jj!']=&0'WN[JXy}1a %z^ݥF.O΀epĸrO5 b=HB okMu:b_A#Lv&\LV>o5&ׂ*i9Jx*)qI*hYg#7Q<&0kK";Y*js .g;3[EĵlF[ VrzD|yh'Zp@>TB:B87+%79v :[b.({HQ>ӿ/&"!ZPBa{+ցW;FIg35; ۮemCn/czRB{{W2hNq߂a(W(Y9K'aض ?6Xy+?'胿Y&{u.BGɻ-)dž쓦pij~B2iium T2pOF37I#:tn?=N95,>bWGP9FKʅ@i 1< 8ۊ6\H %[a&(:oebc\Y@ ݧU x!GcasC\hv+ gLETo?Ç=BLg~$k2ny?[7śTJVXGI#~Z w>TiH#'5krԋri8T_ B3\Q YGSA}ХK´lJwK,8O@1Ԏ[݅Sۯ D+7,5tל@@aS29/=`'wQ)E&8oM+:aX)N@Tԯ$:,ᄕWi -cj?c\ΩaF?Vs,42?h4 7*GMr$)L-w DZ #X^ò#}nEtnvKgK D?;cɚeYw,>"GǓaSdھ,FHǙoʕM(2Nw njǶMp̺)Ow/ݲ#CrU<+LKcPu*Y$ t{@"!sˏc2,pE\T~ow,ū{ê(邩X.)x*_-mRIoRoDgkg1i_ot>/Xj..Q'm0Va).~MKY\CEOz[媭[6$m5=pҾ1\ wH׎n/^R؄jÜ"JyT5+*[1oO\bmDdy-8{!_S7S C%3Gi>Ny/ "LrScvxϳ>۬gvw>S|mI Ub4ucf1 ^m pqF#w!ʷf%ʼ^d/%;Osj$3ŕ p +c}{KO,oE̴p٥Ǻ7UVe1#~Y@ ~,TϿ{_1Fh?Ic3(Rl\mNfx!W3W(d whdžQ6HJV(2OgvȏP}HӤXſjJ/a0(ykvZ@뭂fFmDY_ov|E@XL lѵ@?hl\^p7iZp^zus^u4&'0 2!=R>̖ymqwSM-z833[~gޣb^v<|M Q̅{+%+' Ńa,R@D@)@ʆm҈g Aۓ46𛒊Q>#xG cÌjF'.?UV_$CbW{`F %h>>u,Hꚭ^UM1Q3Kڼ{}-!Lٍ?~WQʬ(ZOJ]nM . %Mrim&'%e?@9}(m3rnV >=g]VI>W[bw2 ACARrϛ-qgyTf=.u[rlF7MH&fسkclj{g. .xo]LEZ@%ʗi35yp& $s/ RDkch<&X{%Һ UI, {N)6K+gz'[yks[f:S徫\feڏ9fgֻ`I{&סڑ0@x)wuJ[ȹm'[ @pLH!مdXzǴBjU O򊣻=hm(vaEaIwM1M3҃<#;4`#;1C'7Ǜ P!ܛJǕj Q_@Aq0_.|⬐*Nj?b㶇=y[ڮpqgӦ6 S-ҽGGT'Hy?~[v"sdP|k#yCeemX䇱mR^7>p[!r,7'񒱿uڴQpeu&kSKBdht!q/Q1ox4:25xT v[7j|̠N}iL'yإ72XwgȂW2P!p aJM8f`21Ũђδb?MX*RIar~~FRTQk1%>qJ;pvм"Mdv1u 5w,У4aj)J[cW.\4,z( l#y5ؼɡq|Z#O0Aa'Tˉkꓺ 1^7[.I@I&#^X6nN@@$dui+>!?38$ZU {W;ojj}a hEOypR'`;tVjbNOlgV 97Ԗ>0)8ա:2̽$&+L9EPҠ3u,r2nHտRgJ#`5B^#'+lZHNdZL %xW9;+Zgҥ/{"I)lM>j-.XDʒY!km_ T\M]`َn>HT-(#gNqc |3ͯ)%.> r;GRjOYhܕ-Z)¤@1υZ(PB)ǣZ41N ^Ox?ZZ=O"r/bG8r[g4z4D%ziaBΠ-CjQH۠8-OʻN\ vӢ;(+.1izդ3b?M>K&QQaF}a7KIFХƊVx`l[&mLS: ar{ߺNm<<'Q;?wX]jaO,m!zXtdx(ۘm gcs}~Wzf%[MIj\z@xbuE%>|rqI_aM7Skfl}9J\8h%/#GVI99vYG|WDΚ˿: D^evrʨDkLZ9ר`9utj_}KiP"6`Ȕp,%r7JJ$yYCWB(/:(gH-&OGEE˯O=,NŌm5Oa҇ĈO6Zap o@qiZ]𾙜u[| LJOB4R|Su9P35A}H2z2sT&~;(9NBn<|xzDM_m?̘4ȤeF ^K2* >"oo|f"_^+W6(cC]r>@X=Xp&H^nu_J1SG->!S "b `ټXխ{WCi+w@q_CmQ7g)G!|YzYVmRYiЕ]FSm&v{[IνCKEI£WKp`?.629NWUbPƉ2(k14Asr衩t#VDQNB>><"0Ǡ]cP$qX<콚Xm slS +s0KJ4peHb%uT*M3'_G*L{B3++UGf.۝W.t[uWi8&~0Zd)*s6ӕ3I=w|ѭ< WLFS:mܿd(Y訩~炘68~##\Or >F|,C}r]ʿU*cJ}X*e؅D9۽Ŗfߩ!]wet!9q^?1)<ջhQ׷{XJOh$wIǘEK 6O*#~Jڵ#HL ,ҶQ(SFFx40JV}Xtvr4‹DKM0 6J@ݭ+4jשq8e8ݞoY>q8wegSR)רEn:m =xa[N apStQ}nt$ٯitsVJg&*t%H[RHlC 'ߚT…CbQ%"^V{'<N!f%9F<.qN*,[ɓ&.))l6k4j4JN o詳OSdFRrק\W,Ǖ‰?ap (N]$(ZZ?>Yw{8MB_=6i=((kn P(Ӟ%N/9Bk-a{4iqTDЅɘNxk9tNgx%h'g${3)ZtXl C8YT!kYep kR5pql 8& kúL)]ؼմP hI|wF["U/_jzF ( hLETsJoƊ Lݘu騯4׸b1]yH07ƋYJKHZYq8i^Zu;1j0e hMnBY`)_D6'K}tS\9'_hޢMk: )'}UC)]799DSjX|Z1+W %zDt= {ĵ`싶j K\vr2٧@ 7ˏK9 zB;ЭQbŕ7$`. i+c\ =&/1qdmٯу& '`[۞ی1Ka, 8עy=^S2elm4iYB 079{ܙ zgr vwu[ޫajMKakWBo 6S?L!-4K n%\'f"scLN/IwHFx}뢊+𻭋 ` xߪbD“EbeLjo*[dcuN*\U gom_-$ Ђ5zR^h؝ᮅSo/^ { 2MhR'lgb}4 Q9ʖ^} }7 ~~ځ(<bɰ4u$I b}Fj5g Z 鑟4>J늯 OyG/3tPpWr-><53,AU/7y /#m vЫ%점y7(kBNQ <̹DJ|DxQU(- FV(޵8cŊʅH\yD+?EnQu ߅clcwa;zW9XG~7#8/G[ COǔ?5wѼG<⺐yxåv,sξ9COdI⌏7gͮœw(d{q\ѥwbkw#2g`݊zj iƭ ~\ej$|ѻiRTY(긄f_ ,&AI;u|]esޗ=N(/CC+^-@N6zη9+2hz*$wS%Tw%+ %4ӷЯ3kxw9 *b\ỻ ,М3nzwDEզ$[V hێ>};c_ (x~<,`>%/b}}WQCQJ#Aǭf>>NP{U^)–5ȑ.OF\֤T?3_Z'ӺBNWܐݼ"#my9ǰV^z~}$b:doDĚӬT2&hL`Hb}sDWm?jtUW9)V_ GwL+a]M 1:l;-3fي ܗ! =OJb Dw&[3]tFX\j)o%*Hoj8-|b1k<o?ۅͿO>9zfvlZ-z!)qf6WE*ӠkƁpFk/:1)rh :oz4cPHleZ0\9s A*$}UcѦ󱟊~5۫;̙]>̉‘Kr33(~<{Id^S['lK)TTG. @J[c67$W1ta{>@pW[UH3-@c8яa`P6Q4 Sv<&V:5F}O{lfj^[!P 'H,[RP8(_ZGeduܨ0kG\ *>Gݽ23o/N[A25-c Y"A児fH Ҝ9Y&D@IB$^ųo'_2,͉9مďMQDž| Aф nqz[a^`L_R @2;½,R9з tq>^O&)Ӳ{e'kj>rcqƲԇ峛,%^8orD1 \Onlh`+2 "0_zK @FkI[Tv+A 2i0K%TVCt!k@)5eXSO7=JW4ڡ'Ԝx QX9`TF3җ#E-⸧[fϼ.fS  񦤡BMY[4gyefOSRL#`Vl:.P3z,fOy?cBxӛ1OW^mẒٚYn5rb8gfпEοJf_kA7{ `|v})p !PW*J> h K8$TmGN~mɇ.oOFֽx q'SɞP/T+;N`"õWLmwiS1=- +BA;Y=F`M,Xdg9)o O_]j NXO\~&q~wB"RY:a(3Ԟ{[fdaxi!{@d6nꌦ ]1x_d4>su/[1)LsvֺwbpA|M'lq寓|Ǘ\? a9)D 7P>}-9 -9D S}dsˠ(};HZA+eIKD:,$KrrOѥ7RL .hS!؄6F,2]^K8NkPfhncVBp(ӭAkFEAk-8:oR:tcvAQ=j }1(e}{d,RV{Yb3c+vWU45G6ptBrq|8Ʊ}ii]ı9pBhbib>n(i+sFp7 HiPFZ `p |}g%ey9` 7uݍ2CC"0DBBC|a5'# JgQh"2ASd[wa8^G~:Fdg{bn}ƨt翃hE@GJ2'tp HG$c"8br+S7|$c3VMMKݟ%ׇDܔ9Fs[ߗ4~1{Pv(an^nzy[ ~OT bvGaY2= [rj5ϳS'$ISHT; ѱ%&$AiDB>@ %#0 B5Q >rUt"PO^@Z5!tkЦZjWa{gE1"^c^*jgKAakV@5W~7DRqhEq\2MI%n|p4Mc xú웂 9AL/3MӦ(,Je*'X嵪ħ/t^="cohV3xö Rs˖gwb^y fRCT lE 4bQ0%ѭw \ztWͧl^GtN^n3U S֚ Zou{,nɊ>-1q%X#ؕOK_t-?57vw93 HvN |*0eAs jks! w~)ݜHSxW[QVmH=It6H?~TQ`2džjƣ &l^*m%Y]OUy*JaR2oP,5$4Yb2č )"ڗmEe:+v n HJ>0 xKTJ %kѪcaFUqM~4RXɩ! CFN!LR5WtDqx|7ݱtHv),V#9f_?q\sȉFQzIE]3#?4PwJ 🺴8xsIzY7NFH y0d|&Y|JoR/^>3*gW ~kzU|+&^f0Wl1$ҽΛo I'LE<\һ ,p._eК0:z59>VV5  c٧a "g{ik1hx_DfuRSc{SXn.dӻ ː(niئ7=m$b̮I?3(۫B&$ۛw~A0ǿ&2d.SW@$$0$%rı`%ۯ9 L}zfN;cCƭ5NW@ң+B)Ug| CF,VN}xo6d}pNt=k,?⤂v3siF_IO9F8yJ݇zzCz7J܋5F(8C2@r:Z` vDɑW.X vG;8Q!؝<撼N;vʓE:4/ʇhv(w^=j׫J(_wS B(dv蜶xR/A]^$s6| W:)0r]Qg wM$9={ !WPXS|Mu!]쉈R Q +cՈM(:(ə/YUV SLoÏnJq up`i *]XїYoIUwSq"di=94TW qɗ®Rŕ L\J&`5١&?FvaCn]r8sG)DvhZo\o!B7S:6 ./1hOj<?xtY` 6>J:D0й{GjRs-QMݕ<NPL=K+s⚨j/&Ǘ1-75N.~mXViruk=<ݻŒ,|~T3if*7j'YTApO ϖJܜ492MǤzmYBAh~mŚjiagc 4#r؄V!vV5[kҐ AJtM{Poj ^1JELBtY*1}|DD@=1,7!U2('\Z86lEkIQ^ o/x֋ָ^;Yg!p7m t?ܻNxܝdP2rn_kܔGwOvpȘ/8uOw^FzGbϭ#H^dO\>Z8r`0@ò6q/)_j; HGR+dGOX0A&>WFYAmJi |UxϠ^ Uo>lN ׶18%'o=48*\g 3{53QOFU4T3 rNVL-mE-I[Pz$%-4, @b*fKOv%9Yg^[<-*ed!2H1`3V1uĠ5ޥؠLp7jWbܨݓ"1E<W!Gbw !4dz^_X:Q&ξO3ۀwӻ s̋\@6vq4 ]Ib3[ =O%8 LQY \ka㟖%f96)0b.{Zˌ `V.ZIR QS>9PeF逆ü_@ɹUv 66uq; T 8rf35"eMk4#X[lTء]I_'F6[oP]Ch.EKBSW7y򛺪Pʇ8p>uba*1pܱ={δC+}*nmS$$]Eި[g.]̞rxISd"tP&&~^CsPʎL_~z[MLC:QH=xOމ_YP#PHޟslvDC;c‘eFM x7!a4,tPt}$T:0Zn]c4U&ee{Jأ1ZhA/h43Ne"Ojb]E00R"6ޢ)Og6 Ӫi6-i|9͌қftdR);Xҝ 馟ҕS]Dmc#-n3*GhUToMn4i9Hwt.oIe7;_h{Z[`6'Ed =# m&ge بi%Գ>uaE$_Wp="mBl3TB~o^f/yͼ1k;-JSR|W8gu# 8C - Mr?η᪟HL_rIq BL,xƎ~)HpjVrq8_}Ex4Rf;ݳ넅r#.G;F޿j sXYf`[hszOrj KЭ0hw[|+NDFi2k:3?%~Kѹ\ݶzw@b66ӻ7C+u~XhZ\ZĤ'kW9{")Ay|Rt!١#,"H9OTOE8+6\{%- U`eZOm'΍mʀ7IJglTPL :hU1M֨3YqLOֽs^l'J,r1/0 gEjtp6N.NW^1T/+=k,2245l)`of?${Շ§ cy?!4" F }d%$ 0;.I,v0`}V'BƿzR=BOrǤLEtgjNx.1_c/i4|+N58X|YV5<6ɞWV݈Lmmh̖g*BŭlF%l ;VLB[0{`FmV'~Rs! &S}w[b$_w(kDW潧R94wT*tt~f Q8֓r;WҠ#%VAKhLO\ "RTbjzŖ]B2Q%as yɇ"xCt f*{֨Eu>F'.3 >zQzP-e G?J6{h4ۙ3W׌zKwG [ 2"H$P(Q9DGYǘ +SKMڙQ&5vM` ?SeЍlp(Gsx5PoGe%Ĩ[r|gj2Dt]b?: *gH g:kdSɺڅʓ058%oxnϾ1gQGz3&y-S*@,P-ݐ"`3vw@H" Ʃ*0p?DT8Mj(3(pjwhc')!dx` @,г$4!(h[.Uawf%Mf?--ɩ\Ap kI|0T- dXDaпqd A=C x7㌥p0\_Uu/=$1}0,'*q@!/ry/K i[ͷPBV%;^?p;1<[+VAiS&}[r|ʹ9 A6 +,zico8BW&ȏb7M3Ӧn ?w²bǼolGKi52WW/rIxɖs1JUsEw3"}0U)m\&T*x w<^'8,"/n>MA#<0W-tj̀!Ce EO4OD6*~ CQ{>F:9LeSx8MZDjWX+)H̰T&[<n $she >ۨCAްgLQ+Nv:Jbloa`΍tQu`ѹ+-p񃘪 ՜*qo6+hñBt$jGJA!C -_|G+v|sdbXbv|ڗ\Fti]] 'XZQ^[~TמWO%AUe&cAi()SsTuЈ.{ZAOZ%&x O@?b n^.ѓit`U)/kr[ִٌ \3Et¬o:'"o1eh\C#3!m4_qɤ cْvFT/ 'ΫgYn}Ĭp0Fo#`éLIO8qQӏqX=hDY$c;l)w28V RيX{1s*p))Smr&vyl/Bj`_cMI980uݛRebf}A]:). ]-)H( W5 ;(SZ`,>M(p oJNm!"𑻻:DEO#^bQDыk^IxѴ֒dC~YiQ`c*ۏ65n)ݧ.!↋|W7袊ŭgeb^\*ƙF ,?Cx.zN+,nI5b/UBecg->'!2YO.m[ na~term?ǯߡy5bgdXL.F(>hp qAts 1 bT Eѻ 3uN0xt @r1NQfIX-&{djKӵ"\`vL+@X/mt'L:al=3N2]f>•exBH)4R9"lp ?U!A7[v KֈA$Kg#2ZQxʪ8 ӎT=7Hfݪiߴ; ?%ԲE++md;&1V Y/`D1AǗ?T8'#Ed5ǧ:FNJ}1lFlpv%x~_·+pFHZP3@\Nwb dk&}g !]%dm%/jH$c#)qQP.&~[wg3}j5s~j#:+1bc"SI!w~ 6zn %>;`b Y6Y,rg3AsIBd޷;M7 j|8y%;zM-'6MGs sc N%9EBt}/5&8İ5S>:L+U`.$QW }J\/ZRpOG ΦyHEK~?VdJjDs1,(]8ket5Pe<`X 9ܤ J5?% ]0. 4aDiK sWTb~"ҡs_BJlN&!d(ofйQBށqPR8Uj)nOc@<,]2%ZiDg9 ! Uă;fSZ&Y`3bi@+ͼTJ)l^^jtxrA +U9| ùka/+qIGzC7z6EOZHmFG,9"[UvH}KgO'^4PΝCNVTMĪꍎcS*o o)$jA#*as݀= `j"B e.w^rQ6ȅXKt >S̖V*EiI}ld/~lu`;27g <@# LP1N`hF9Ods#BОfm!%Ъu#__a$T˂(N\$pŬU =Oo}3[XbuGTVcv3bg~ 78Hn)m4&b.kj6,z~}0Tk""rA?ŋexMD)akLs4F?nTjb؈'DOk^KR.Iyk+|gAlm_;^$ah-]#kS2t|ۊF0#/ۤQG=TFO s +COc!N$J:WsӖX`'k[=BND)":Js9z`&'u,|a9b߯}u箹Wq~ k !*}qYlJe0|/fܶ)ƺ1V F;H3 wyoK| N~ŝ&k`F(G9ImQW}0a%[ av,=ċvVFAw.B:@-COwF']q+J/ {9XoF\PQݟ8/#+ǭAm{_ 7XRqqWI-WV%ۺ)Myǧ>5~CߙLEJTjNCN& 2 Yo&%#c}q8R̍V,.2JoQPuwWʶX?hIJ7(>=mf׳=vgKHCD\ s7y c|&Dc;8)rm_B|<+ AZ<Y87wr"=}tuݩoDzur4ـ>\悧uqcn~֒o Qm'z#1`R<+q8u2Xao!ёO4ߔǜ~i\Sm Sh Ylՠ yxos$÷Au߃,Iܗǔ"M%<~:mq\P]FMfKQx`R}2 Cn3xdVטrۋ"X&+J.*ц8e1⨅̦J,+Q[$}ޯҜna^P'דo"V%LuԈOorWe_k2*Ve,.LAv9gBjTsʸ)mv׬kQ("SHKsDQK}tnBNO=WO:@fFnn3*&aPA57e&ZW+8I1u4bH<|^;7?5riy\?CC Dzs{当u*)ɱ n3ܵl(|%MQId5{%3 vh̡. M&N˂0.q39 (Y붢ޟm+n5?EZ,d=H Ev g@r/ӳltiZ? c<$bc@1x__nPא9pE"8m5ÝPޟrYIU<冴*q`T:rM{x"gBu:mrqk+WOn ؁T3G1(r.ig=:=H%C.1ӈ]L1+H8cYG" ;e)(+r.A ɏ)u4"cJ0g}>~r6!tusK5&MJKp#MKR!"P54*?1W Z_4j_N-t_Vיo NpxNzf2HLQ%оg8܅8E,M>CR5ɇIׅI@o]6s a[ =6SX (0=]l.{a3No6H]&;2sNLC{`X{.XT-C|"6[+Py3IjYl˯Xh>0Dj3n',^5BnE V}B}$ZۻG3)i/{v=r㠹?Fx6wzh2RG֔1 >h u/uU@zhQIriuF@#* WWYjRJS;"& Z3q'PՌT{`ܥ)# jGh5]@c< \B2}ɖp<>n㚫PD@=H9,qEĀ!~Izks<1֑ړ5֯U|S8OO[2=G@Bex*w8N%q}#]`Qڜ77#ءzHvLӤh)%?*i"W,xqg+vn9E :hӺ<_(mk$oUuZZ*<~};c>|RE \W)IУzqt@g5[M0gBNx3)>_Gbf K6ìD Q26 =7B]H9#@t g#+xLOKlS13NT-XW!7 ϼV /ߗ#b4a:uith޳L훣֓.WiVs-fB!yfn;JWw #^5υ{wl}$d,&*F/>EgGB>qU6@* ߋ%[CtX?^`{ܜ4ޤ MbO^:n@*>tꉯu6k02 `G|hHbG# 9?(\c* |T#JRDWH#ҏ&X,/oWQD-0 jq ?o}2lf勜h=G^ kOۮF]X$Zk`ꛍFcj+=zŞ'#VN_YIr meR&ܭu[\.8m`L;&Ap:S"*0UkXۿFp%F }NV纂. >!n dd~d;6mUxqߺ&anD!R~ a8}#6-֕%Ls!?k`:? ;a'`z̉=b/]-zO?ag'4婮|l$ٳ"!-OXG~ĩcNtu2Hrl, /17S;Dƞvu6'}DF ײ `Bed\P-&҂ @d/τ]&RMШÍ\S_t~tle{;!G9HL%Qm&ގk lN@ܰ[Mފq/ Ñqvu_KkK[K*AuAo5EX؝-W1;#f 3UN6b 9K [4WD_a E,<|qs*RohM0S+L! +ShKޜ6E=bҨIQCwGɐkV034ch+PDO#KૉFMy6cXN,ڱ!Ɂ b?/87 6(0;IIf2v)z`?a'XjIck|[`ZP]sĤ幑/*2SJ|*~YOϝ\(%G"FCiQɁEH`DDN}vW(\ TKכ4 /ܫDvwN7n/Bg;ӡ^e1@>*"T#Ol/0"J$>vw`z b @_a_Vǰo9EFgݗDQvl"FQdBe\dA6H^y5r#<#H1\2F2$\:ՄQL@u~W*&NIhG~9HP,zR-_g$rF(]$.a`Wh<_MkB 䮟<VFgg L5Fcz^Ŕ4$.IiR~~vJEE&,@oOi{L+oJJZ( m;%BV`w+(ŗj$nONā$cJƊ;>%F9~)nhڴĢe|#aZ:[?*h?tӌD&Ln>?,YrRL?'Epn*Jl o;RYNg`9e}SnveyW>'',P8U;9cU0ę:W"L Fy"* p2`TvGbmD/yz-^Ź{#f&sg`-?E^ț$!@v6TT+ 5NL|U")8қ#WEKyEA]NjiUvSSsL5ؠӴE-sR m,KE\$ʧ#yg>#LRv 7eª- E'͑=/nD`vU3YӸw4RQW2 V%%B&5*}F:\~5\1Ew hB?M \c:4" j )ɬc[=2t4\dkjt3ʣzB݌pnRw01' ̓i[l%bې1>@RǮخUp9.$zVbNn){2Lj%M*#oE4_GV|2WH2jf=cdTqiŪT݆Sb;9קBm0@/ &U3w, _\PYyAH{(2m>kϡ\\_rloZv:l|'ۘ?Nl]Q'18}7 @υM>U~|WxPqAsV s/37ͤ}2oP-80pPue ]P:rI?fCiǏkZی^"I5xJuUJQmW"]Wxf$KAJ#(K}.l3HP 4.yG?7!P"iO#{RRXڊy=E&IQx b +&3K lՓ,YљN'*$ qdݴ"3{o$ve-4VWW֛o #[pmR+ M8~٧Jƶa]M^PXMCfLuҴJ+t1E,Q` #FiLy S3E}# PM u8[ 5]>Xa'g[ǒ ª.;ˆOoA_U"^Ky%ddQL'7Nɘ]r1 vyPv2;K(Sio!&t~5a1 :k6kĕKtsfn ACntBZ栩M;_ulFk}!1˜֒wnF*+?8$d@QIJ_oxJw3ƊW\KD0Pʇ!]|9+&o]pfL'9uv|61\ήBwXqA>St''*o eT?bE:dҙt%b|o"/v†bt e5|-Q)'kR5ַf@P =SS?}sr;v ؗnvrg:?Рak`4Ge#_%'WtۨAxps3I^ôc}+vO tD&4^'aԓi( I ptYt .]>e'r3,/&`)!ӣփ/LX,:Pq$r7fDˎ=~ OBCƶ`=3J;Dj_+%U#qڢd"^W9"MtP(, [):2S&0\S|Uh+p'T(QcTnD6<JUF?!|FušCq9]y"lu/˲-s}j$u+v٣%`'iA}Az'a KF =80c6zTELiҔ;A e1?JΦT) mZ2꼾)ьfkVSy^'hfCRTAMDSHoQ"j~W)2y9XYeuAZ'% oղ7.%3!sAn:.cw6P{ G E}mK%zCwM@ӾDQ7.~$L>-f\kXׯoFas (6C V-^Et1"?ۓ7^е6il =w=-Ֆ(;%&ҝ~T;gaM=;Bwߊwz5R5WxRMBv $g߷4bpba~<ٯyZT`_0[2yZ>`սQOFYm޼")A N^qzEԑ_=lWZq\{ @׊)]"scF>`Y45@FF4:ΗPHUvfЁp-OW?P/ܪn[:hk9O-+\W 0*S}Vָtʐ,)!-^A^IBu@[fUۑCܣlS_`$#J]r ӳZ XHaT]NbzR,Gz}^Ͱ*v.)r0mL: ǼQ9ࣣurⱽgB^u#HmOI8`efK&) eLҏwi+ y6uCc %~^eJəpu?߮q F~cfiWz?*))zVA0+Z|^_݉(N ̕Ehi_$K?BuE:]YCl3XB((rЉ$NEKǫ'&j0#Ɇd QmONix7|=rmvN^>Z᧘WH[kzV(X0\8\`Lxv45QBMKNK- (AƖmR~D<4e<[:3Cɋy:&$"}.x3f9 sbuٙhyd.r nmyA I1pl,aS"0*ӯ_$_o%f\#;uN,p?m8ܳ2 'syMjB3ѕdYXgxt:̽x߁St& }%>9G[=U| m unX;En@;wbO/mUF" 5 V c6ʢg" š|CU2k@qtu`]qj t̺/oFYEKyyBF&CTsnzP&Ο4׈`%i ϛ8('W HKuBA;o:SV0,ҡ"zP}ۨnN4:HM;B2k`q<_Ix%=߶zX4x ʝ7ŴB}2;aIc9\ueVY0 zb.*dcZi3?"49K9,FG 54 *h~]O.+ EIdDsk+R\m=k zr8'fĢBMJco^I׆Nb ې.X-Lr-"7gbWе&!B0*+hKLHn7f;sFMdvN 84?Ѫ̽+xny^[dvss94K:QOJb:*P,ˋ+7tx|x:Ssy℠ӇuCK$xSSL \]&&β3M:E^9?.X6T ,`VtD]V SQiT<=zB)3c?ΥR{(&'mEb?L0Y&4c+'W "Te?={6(1Fjr7 ' -AJANy Vb]I{՝Bo&TD ]%K&AihLjٖ8Kշ1YQ%u/ qӅͻB BJxE8S]kPrg<ZJRüohu  6a6mTϕ>K?>D̋`re9x al*{ƪ ~Wceq܀{X*UVa#Ƽ2k# ݄ SZ[` ?X$I@]YRVT}BмN /BA_@4vā=(p4w ۍ{_ncw*_̈́eACߴB R&) ӈ(Z5s1 M6XR$uj#Yx }[ /5|^)"͠^aٱ`dHCѤᲇ@f#yZ,2|'9XIq %LL/ .v92\~ڒlxc{N vR3d i/>Ml,+>jxƋ QDuÇABn^ \븲~/k>ČgPѧҐLS֒,S7~A)~e"VM8r )c (ɨ],;iIZcY2gA:G)J_=y%TRml8v)g 1-l%R!-/h?vH(*_bQM(!@@&PtJL_l|# CYf"c?S-{8d_V ?V1UkPy» vO w>/_E]N[:Y޷ƪ8Fj eVWSx4)lϫIV3F͙/i픰v^>fc/xt1Ls6!:>]]iݗh}Fݙ?Ahlm9[@LDCPϊye`bő7zR[K?p[i}*AW̕=Jož2:~fHO |Ov7W} |ZuBLܖ#U+LSEOիQOi…+†ai; ~?l# ]:&]xH-3` V#abvK#JƁٕC0\v<]#.(J}|6A;&ZZMt|Ys#ɂʹ.@HgI->uQ6k{ò+(7NbXcч~yyrEK>t‰N[ F0`tCxU'!ѩ?g{ii0ɉJēn' $ک"Zfgbnksm>XB xX]B5 F 2vVrWfH)bT,/h~-3S%mU2a=sVd409F_@h2GtzBFYɴޝڮHvna"6YXL.+3YnR a̟v ]H2ó5o<u>Gќ9vRz"/$ S d]!7yD%퐕AV7rC@%$I42WPOl?:6R|v9:+"埁/WQ[Ҕi][Xi#@ ׏ArM}ͷKFj,}vp)(V+ȺuإoX/ PPJJ>P+8ٌ :f7̖XxҫV [[n.෨w<Ms'X2q$9fiZzΪkJ15X3Ӳ{jZT5r!9u`PgkzϬGdO{1"6{Vy3IQrd@zFБ@`4 "Ώr=Mݔ- `g ~A^ lC{Gcf mN{MlzMR= LG,WmA$=%sCw02G/^ҚxV:Kz-. eF$1 J,zE{ݟv+ P&p[Pv#r/žzco!@=#ɿO>I3˱r?w/09sh(Uaԭunj)/0#o p7iJG}*u[h-/&"i'1IK_}b!muEaq;rَXv5Oԡ2`ȝD^n0$${hؚC8ό,FVF5R`9誆נ:WҽPu]b a⥣e̽f15(i#xzJB3:%Zte߻`LHOTmvp6c+ټ\(Wn ^b7573(? py( ׶ J5Џb;enڤh_*-}%:]HptW# #d|KǠ | 3Mr[6e"q/Dd^qSDȼtDhsfX@Τ/1m`Ǘy'>J1]c6_jX]&_q'M~ 4`>yGƊ*Winj7N&W﫟e_9y %M2*Vu3]gqӺޢ !)ErY;}2'Ex>z݀&6[,},%9RX0I2!n\^ .!@_ NJ.)cBBSNDR;QU.xlcm Ik'jS]jC3Ǣ0z?-;Dۼb[CoH,?{)lA,( 3?o9L1k#H 7N{n2w6R3IƂOecvMlX\/+wu}51͙lʝXܜc)r-B{pR =H}^;v? .]L#2fT2}[6f$1p)/JܼgӯTDM7V͓Y<2e ++ o}kP/FuB{m8k~[Bp(?2tJ5w9Nz45]CZgUq|5K}9g[ev}/$&u2x$[GD/i`ce!Ά,('@޲> w~+)wt K Wڤt {B|kP%\łe4z1!-X"$J'%pENWzRl&{KA($6} R,4^ot<ʉ3 6 $crq_əYS-.k#wf}x}s ⠣[G7QbZ(9u%h/O // H6iW8_ RWW|ކ_k2ڐ3ۅ~tUA:@爿z3yD\'ۈg'NI0(j+ bbz3ЄE\a*ij7ͷoKn$g|NP+h]7 X\- 1RL ;#2P᲼:n5\?*[m׊qs6L<(e$ak!H@O&oC+<ߺS:t%z,=OKD'ij}fxuG;2*.VOn!p` *^!gI"1ozA YNmϺ@ff=uiF1sg$0HUJ}=dmBq6uz[DF # ;8i4b')8 ]igXш %||gm^%]qN2 }Dyo|!ԀMghfo-}O:CTb^Ӽ'@R}3b-VOȧ/:^gx4"wI$@aѷPÿ(+9x6؇-J5 km _Y`j#RvZS5 8kX q~O,bdZL93Oޠ\ԟcRTC"Zk$6~Sd38eQom)(Jv] ط^ z SDgSRf4݀.G#P c Nx^6pCW `0 n8BE3HAa~Thᕛ/Bܥ` iMqUVI^;v$=lQu2ez=m//K1MbۤMm2ͥmEK4/i~5Ӎ;xb Ot{5^Fqx,|Irf7ήLw| \20^Ǚ=h37N &LiBf${!N[gͥuK'@2º_'|L$^8UĻhSѩ3 @aF)[E }d<PaDR uF]vPGH%Y!t2!|Ę1Oz< t)/݇s9y"1j|_tY9bg-0 ]݆dhtVvXʭX\b/ŷ9P:H^CH'e7ylh:: l|+My WțI%@NHQoQAƆ:jV'{ci7FⰢ5;WH\AǣQA"ZšՔVRX?[zf͒NCh{0J.'% Uv"ԑ74L̥#aƢ'&Oհm=\ASu?o;lXjR`i-w:zG-+!'GH=E1ȁtKÜzeue+ _FiȒBS8N1{W4 ݲ5׹qvVf>&$˃ֽLNR⼨@e*-eWP9"FTfx$ y<ѳHn˶]nvQGmZ47S1iO(U\<)iV,tjJP6xװ!(̨~]`B#I{X7 0H@Nsp>Yog)*~jT2~X\`R# xt?}W9bB&аNRq$dr_V7׎H CXI!%(y>2!#>K3?/ֺسj/]Qa 'UJ=I\Z+*WԻ:eِ=Y)9%bjˊdhJ,|nB.p|gpz80cC'xhUd2> .ݏV7:QI`ǐb>&"Pv ,-ǀ"b\MJI 52spˠL JVb/JϮ.Gaf4v=W.ݳa~}*UBײ#_ڍocB4⧹ FBTlޅ."뜕N/逖W0. =~u+pbyA2RR*wTW#QÙY1\6GiQ8KJRޙ+'*nN[0a^qQ0uؔ,۝T_Ԧ ޲ Vd c!\P(o{!XEW!9OFi+m` i;2ҫ9ɋq]:\pL$2#c{ZO +w8 ,AR9O`5^hG C4$$/NlcD}}ݻǒ[*J\4aU(7Y:g٧^+Pf5R@FMa6j 4uK?./2l\Fa-pS WYĈA00Fwcl?<<*Ϸrk5)%ݝ5Zq4|ڟzfZ&"War.Yo?|h걍Y@7[S^ xl>^|h)D{&+% ^*VOQaZHnMMo|yI`HwwkhX_`HLYV,Z{ h3XKeܡlȚ6)f{5 M@<0{>g P ĵD:e-+=k2k2ɤ{w 8 bNW4;sw$ž_mVV32U},hZH:D)͞y8"DZ* qyXkll[oWT*w.4f|_lzAQʍ c C3xa'\@+t%f79<鐃i=&&:jTWwDU;1ԹAdM3ھSYX3h  jI2J較7.z -vDS}pJO$d,*&kXMԅpf>`Rǡ0D1 ŕᨋ==ƣ"*.X#lJ#[VH9bi"&'A^q=݉w+7-z@$T,Eo2U268 6:>иgc~Wv]\VqLR]u00c"Mq]j|!_:n™\r^ -'V(wKfoPnE;ͫ_=f~tRV105ߛyfђeh!᝻bC6X>:qgE}Z?7b'=ljߍ6Z4N#`+AscJPObLRhMsËr8I$D^D?Oګ|$v8"cr/BS)0B2bpd +F8,[eFv tI+]8oJ L1Y(U_+"! # ; HS2Xnyƭ,32ur cIScQ[#:U;r$o_m[9 hryW4EpCZmYCC4m3A`j7G9~ >$!?ױ3TQKCq˖_Ӳ|.g(U6 c,YڛFmOβ)ia_;&|4;$(EUԜu݋KRRAa8rF.+|HxuGNԛrf\] jDGCɓB9vSe$/=D{|ꡤԈ"FRq:( iᇓ,%\K"$eh C*(u<&5msT5)/ݘqG% ?*)wJ[.~=BTfN=+Ig+n?kBES6(tn#y8cCyࢢt\z]T ѐYl*$Jg|bEDJ " $Rl@uԒn픃/gH!8KK%X*7:&"/ŕ%3Ց!GsQ{r!0iTIa:Fs6Dur'|@X=.< BF">^2&R+[=gr:FkgfaI YvyȽN@oG([n#^S -9}LDylza8zͯ.jW.e n)tKǾΟ'tOd%dC{kk%ܡʶÇ_\F:5ӢOX{JP[ȝtqm]z+pgL|arnNchWVR@>q]ISs܄C̅h!>0(jmtexT7Fq y,pbԷ7- e*i|}F39>w] &B8uc}n(KWŲ#)z^H)ߓ6\ udNИ7)3NJȑ`dW@32Nm+l26]|pFHu/6U)cΉ$y*u?S8x[쇟 cqU4jpG6i"`{ &YcW*\%w=D_r\SqH[1ڡܢpYMj g erpۃDR@9rC^P8綍t'O!Di&*Tl ǥU̖l$Uq9H4O x:,G)jԃ,DxO( $Ib6]|#8s DꞪ[,DH".D9ֽ"9-,;H+cv4UnMFA<0_RnU\^+!4eoNHDy ^?(>O)XiEp%K>ZCt!rr/kfN"%X*lI=b )d*ZAY(W8\#IN=k@RU&b[V6u[BW!'LK]0'o#|"_~.!uԴ1MÂJT `Q zݵL78Ï! t-]E)v+a-o\9Qd#DVG"G9@ p9;=<]6/Gv# #>Ee MaWcZ{R i}s OAcY<-V=gQ7*ۉx;-(ۑYB0& iHϪh)>bm^q?6W_rmI5FGO!s%DTL,,/W^*{ly1RHE&{eX-k \8Sܠ%5E_dg z܆8%ӓ2QRqB$9+]zF4y 3(pBY+H ~ %v0zE,'SkkKnTVZFMam;B%F5i`z.%w/5p<Q%1Oȗ azcYW6 CS|bwvsX٬|"_R=`kֶyr9 Bj(5BWhy&\-Bwg]l=[~=Qv혪.|xH9'_P'+'9:!w*Ϋf _]R z͘Ѕy&AV0LyGq/~hi!Sshq"^+^љ2MIA.[Er_wZh"kB Ȟ+7}j\,'G sԶ(\%і]SC.-W {$`&jO .MaVt, k|L᙮ͳ`ᄄ?P?(8gܛ$7F45 '(JQMt+7},;lco Xy.UtI/DcI{).qHmu,RUƔaE o[2>!{uVk~RpWkVCj{XXPlqAaJ/ GۤzJ2'Dߦ]CȥX2 NʆHEj}1FZgtnWQ[-KCF>Qj"BV 07$UVR<62yWW8zwb 2[ ArhyxtH5ܰ ΕRt g 8䥈 8ޝD,ȕX|p$` 5NҞ#*ieP"v91mI~E@uSpmr/6e;b-d@ C{f|u&JYI7ו}⪍UB>+Y;%xBv?S i$T?|X+,JMm tj_fgc A޶ynJ@+78j-Qh5[juX!_6{D#]wk:rEg[ ]k]%[( )^(w.~rUT&,$s}5~iΑjc`\vbHD5u/MOƳ@gqŽ1# V[Qc"mZy*x>fS7ٕA\wHR=cny_>%ɨ1g{#|Q7樏Z^NuLm~Yď&YrNT~2'-\mv8& 4* ZCd$la`؁/?lTM-4|Qlf4~L WHѧ]>I s *Kmgxאּo"'티z0k|fz/H"baIF Lgn69?*M6ZiƤ,{T yE'eD<S~ԁU,cJiG$)(FJG4<:qyAXe;]z&i Vz^9<)-}OC9wm PtMA,돲' ga_X_I)< ܚmeP2հы$Cu/ڭ^ p,F]],m@A;S,f3ϸnY sO"ٹP!2rV B f'PMU8]qSyfnr.+^o(8EgڗX [/D/m1;lL|^=:@gш.ڼJƿ'os# μW$2+t%|{c!تY .wd=ʴ[;r@:yVaK&O U[og_9uS= +z\>Za*{fdE`iQo#UBF-- ) . 'H#NW_Vڝ;MZ^ÑK\;;zmc#H7Op흳,~{RwyCK0G*oLk>'BJ@e4D\(MC'vCSqCˠҀR14,EH1w/_:e3vVlX\ƸFʟbkH(o]ûPJ5?Hj š?63 Q7RxD |OoQ+\RHǙ;cB$]μB@.1d^fOhVJqI)6BPz -WTB] v4C[7Z?(}5p1K5ݿYcˋ:@QPc^RQ~"w%[ . ɪrPq"h`r՟ cp)xKT3nޅ!Ev Nun X|tQAϱGhP@#R͌!tܱoAZ4:7Vn$v,A=O0:"3?lP`oZ[J[{Xu7%g:ZĊ=& i`g18 cqal1u gḾ%JvN}ْH %{Pt \Sx }:ח#-8&HyUkh,%Ut6U8S֋b9], SbbdC~ wE O_] sG=zU^=a;,5͢,evO'yEWWhiq،p/^BRg׹jN<>!a0C#~ad{\+"c`:.P2e,>PY5,o@4e`-M^ 0oy6w v6KaB ޏ-\w[F.5|a";")NoQ *=!~ڵ>58t9KdG^:)F 9h/?,B9;«|[|&xP붊u\P,^e־4y . $, 2d+gmXz7h#t콴1BbN/|w]܈xBs' 4wgH E=wR757tCI/49Ke=&+cUďO: 0֍v*-^gݜOƧI8hup֌ agȈ~4F%;؄u\=){xmңhsW \H\X1s˷~2D Cx~nu"#&v׳zNaۇ9w!qK` *; g{VI 4JQ#thkXE v'-QTg TZKĊiCgtJ`bs~{?hq(g3g+4>mqVu5돽&˚DF56v!BL:B?UKgk(m: g KT@4lh%,ؙfqHO&8nl;ފ(T㜀@tt9ט܅uS^pfC 9b7@vkׅ T^T[q984CɂY*ٜL/*NTÚl'Бe֐sHf JTLn7iK zZ;cRjO:rdt}{Je[|ev䴀%@ {09%FUZ/ٰL? ^t/>}!V襯ysX!)R6?i @`UOo'x#lGXl6@paš+֚r4=CXJS}d+W)Y諝<('e`4IR<)j'5~\K̫ -c=&R Pk{UE3\︎}H} C-Z/`tb+bzm~j0ZO׻ԙ'*N(3I&pB 2.o=)-tT.AZk>+}wfUEW,#AUaX>f,sa໽%+[@pqK (,*YG?ڭu䆌K// 1}|`]GYJ܅\>Z@^~5;@C49$3 alGx:&_BIxf =(Gq h\.^t֤BT^j{jZ;a5RhRҹ?h&س eВ]FxC/QNAWT%/'*ۥdm!H$}"}>[Xs16AIHiݮqvؾ/p< o]jY MЧaOCm$-^V&`*gJAPT#u(5GM4B ]+/cZ: V!dbTSr)FC~ \EAW#7w[ MTA_ZX7.CG6h|wt1i8ʳD Œ*8#k̉t[]>'wgw{܍DNI~otMgۙϷayZCN)&)eiA٤y4l0=QlSɇ瘊sRw xKi _!'OfӽK7Ґ44f-4qp;Kao]G%J S8B^ﰥAcRƅϖMmZK-#Np_&vCo5K YuQGhk1dBn$\3C>$HOFĴl&A>[-`($xk:Q=v^h\Oil,^R|F2yIGA>kdHR:j}hw˄{5,["Lu_9=32,Te(?Aiݍ #%q2d~diV#*fma ?;uLty9CbDY`syXcqJ^ko`AluaD|ϘA+ώ <xFAj3h:М$&̹DVq;<-U vei']Ő^cJ;ٽ$@,6D z/#l 'u)]WDϨЗQ/gz?; aa~ub!A,>y4jS@.4Zu*I5Aпu# DJ I$ +*]5[gcۅIUʨn:( & BF*WLb~E Su$K&;Ws=ñQ'rJ IѪ0" u@Y7t`(ֿ0[*\ʯִ2{._|h(^\|/q|mEN/|kfuf57,/r7ޤFCTff?¦Ob ; Gux"c=;Èj'4_IC #y?')sc{hdor F$2k+˺$%bR.fYSgZ鸑KBn>R朵 ۶0f=>"ZVr/*əAM`S 5уDrZG[g˦35wrN*_ˈE ]$KE96Lܨu'F}f>U_DKIXq{K6;`P&דI6PedTc m$[hesFG3 6!Jp@߷Nnw"r%jr`čBұV\2U6_en= I2h)BdBEFgcVpX@R$Tj9X6ĜJ{%xۻ,a:86t;65dת&&LmIXƟ.l8Rs?CwyIMXw$=hj6Yǭ1N ٢QUXsx5es/SY\ &ϫL0]D:=t[ß 8pb{Cs%QnufBH Քbg!> _݈}s138a7eܡ1B?Y-h3?CqI 6==Kd ;q?G%#:I^wgw|yq 9B~L&o{ ԅ*+b7êߡ~n>op;W2u E^i,H7nGk,YK};fDҮZM(7=6./WDU` G0M}˾y;M^V/i R:I,rMi?[n@9Ɣd/<xI~Ud| _&`@%% Q[fUC˩,MD7$vc, RQѫNʽ:1!?ZP_Pp` 0eo$3?6/A N:iu/73ߡp(s6a},32LüE?;iG+ ݾ>iJR g_ӁTQNA(8UzVHtcO{N(ʯi !bD:QDFk(%wݞ:)"Rµj'#vLov`Vp =eȵE4X{r4D>X]T1feo:l)?Bbޢ+-4]]IĺF3bfoLc$U%Le`uyH(nG3?WM F7"kJ/X'ʅPe[.L7qwn2:ݨ | OxKʲa?CcƃNNO'jpK5mY͙! h$~bH^!4s*ͼKpnㄟBaPBSxRkw}ڕ_1uY!"/71KJdbJ ?p0u>PԖQꌟkロ(j6!@5@{yXXńVf'œr00ڗҫa8~[N.P׾TD٫\֖epM<z)) ;=̀ˢ_W,Ncip}XDu|}sl7s/TFk3!2rK;&>ڃhkǗ19 a /xG~2aPб?syxd:; Ql տ,QkM-ÇRBi< +x;StfPII Ҳ\>H])['$'rgcD̝+k0\ /}v27-}*;h#kN-u&Cl܋zQ ڳ:'~-OGpCCRJ&@Hʧ陁6N̛geyj9 V|ˇb,|!ZP|}~8hE?Nڣ ! !jc: rݍ2w 7QHF3Kמ{edNQuӎ0daQ/o))я^F's,jGݻ*tpQ!lirdڊJahPK͌FYixU$%D*Wb*T /?_bVjTICS w`m*Y5nأH,jvKNXӈFNb618F]i~"ï7_IU"6CD9j=i|Qʳ]#-0F7[o\|˾O>4fbdDI@V[iŘmtg{i\]' ݩWۦ͕쎳$*r,Kή_h]UNE[5 Fd(~UO|.ݸuV^ңG5n]tĔu}<8љ h "xۯqe_RYD7]'H<,/^|P>QC $l§c8rF1TooA]C(^mRJ ȼ3722 TzcG'm$~ZEoiiJ~͕8-+WqP7mKʯ{lv)88g9'Lu%V&A 6VvK Uɻ=27^QW.laLJ>% ¢+H;8Tif;9+XAٜ,qr48: &f 䳯H^ BPQ1TDGz7iNܽUuFS7h _Ȅ`P [ 1WQh%Zؓ /k֦b{p3B2)Cz _zr0(Ʋ&1/ s086zz.>FzNr:4Qd#x7 椂W7q }̘6c=L!s*-X.++f@f ^@]XUp؆&ϒv/ǻtbHQj|wZ_PACJ"EU<4d@9@ʘF^F{|J"#W~9רVtU#~~2Efѩ'ù??iT Lq$6PpILf=r`u2{.S umT [*= 8"ht[,muzɩ'1l7V6c,I]M)mo{#f:hK铴shbT / ?ڲ9-$ l6#6Hwln*>k!D ?6'6K+K`c@ypMO2hɏn/#W# 0tFHd\WvܢpbM}n4ǜ@8h|Mn_/d) Gnov6"; u+̅(g}Uh*)坈ίnQͲQ&VStM=1xm!ٔ<(Ŋg͟595TI{m?8x~7H PHqyyFjF2Z` p¸M,O(Z/듚XyL6H&dka y9t5`QEėS<ݷk3>oW@ؓ"I%{e5mrZa2kw&YhL7׳tF8,Jg9/C Ǝq5siђVn7-̵-a$A3]X^A{5isTWpΖPTDYBbFSio}|,>uVxg*8AF]#-s,k\Zg~}0GPŘغeW+JĒu0< dL̴޵Β/ Uq2\ Px py}(]{6&5D(T EjNeA(NXrj%Nq3b"b72sL_{wJrrkR7@jZN&I'gGGˀ3"tXSI/9Zki19;|O10!Y-B0fsDŽ/QY,}:!T{\풭/Keg¯Ec|To+V.=n@+%')tU^u;Pξb$ mZynS_ ,l窶/,!q>Z7 6*űw6Fۍt\2k=krRu\>a@;)!4C$a3]ՊS~p)R?dRNJ6\N m=\tF0 >2ݹŘKm$=ӈ{ "Ev}Mԗu엀/k4\,b{R:vWn ˼Emd?fE9x0328^ё=}h+KQCΡ-Ȋr_ X(`a.&JLSTј<8 +lFKzJU$)s A1q"/0fª5m8k-=2 t@-Eތ@ hvxa= sL2{#ܲM[jHW,w 5&l`K?qYw !  b^ "`{EAf@ /4TbKeI(jgB۫\/jM=%X$m–+B72Ă#hk;vJ #LB / 4Rp l`KqGY-P+5׎8s-5(W| g61 CROwkC&6~\ѩ('_;4?@{!{W2[ a~!CnȄ!/&+mg6s:2lFHb7V[-' kl,EoQ7ϧ}2`?ϗҋh-Ǥ kWku5gI([?UxJsL0j&W͡G)aJk7%\AkZ1(r6c .6}s@e0EL%M5(ێ2/ȑUuT%`jv,}zӷm%`hH!'Ђӗn sԗ1,i/qD])gv S {E*g9|6%fHlEz].*c3 /Y4ԙАsyN.ˆj**BeDn*ܐ%#7C_0WɲҌrNDq3 g$37/Uה$FgjSZqץmYj-ŜӚDw~x w; "i*&͞Ȱ欯 g%C < DT4'7jX6{_7sSc1m CHUWK ;@@/OmbJV^2|Ab P/\qIxx
}C(D) h3жWt˭`tr~ߎ8DˬJ -_'b<C4 8 !֨"gJ\\u>"p)|!A~;Xẑ cHD!.Tގ޽N·"HxlfH,Z] : #SviU4.}[{y2tJ 679$S],贛>*AHE'l2RxpXQ4Og J2&k$4+`U}UGMb)dQ^_x@SW_&b 0[2=i|Q큞f|J{]"@n\_aeKkv&,J9uskŰMOodۭoPv󃺔gtLvXBCK6D(TlT|U!IƟ+@eh4̪vm,,pЕ긇E6P{2).-<}r͠TFK#4xQAF`? hwLR]bC JK5`-רuBŲqf&Z0}1c?nm:K/o~EwP,`FŲ8xXsż- YF9zDg_"=ej`C{e;Zʁ,t\ U (F9ŜW|*IhU69f9𾬯Kh ܙNsv<5⸝\J1%s&\b}Dc8{ qNrZwGGpHz< \d JNVX94!m"w ʾY0'#d˞Yey>.aj3BWkGh=>ee**d7?R$0yy9i3E6R:ޖ&c!4\G(&&ߩ/tQv৬8tk.  D4݁P1Wϖ>!l|L>0sw.Ha H!ni=m%sf eŶm OKޜ ? :%W0h=2(Ô ]%Dz07:I?,7LuqObj0E O6n$,J}~LW:o>j:w{F)R׮"\HY)!nGUkq&B ?eu=_үO|}d׆6ES`RE9n<;|p/ p1PXi!trqPXD'T 7ܳ3``X?Ze[3*3Zȟ߮tE/ #qN4rӞ d])Բf8 {f`"Y`GKOGG dҪrwD_瘦?[Bn*Àp5T;6)3WG߮DƆag>"9F5JIYp{Q~G"r-Y{ʰ'+ Vnl/CȲpeʃg$x`W<ٕmfQbpy{V}_a6z{Gtwm]q :wTW}M_k+&Sqsw[k%gddZ:K|hPU qxj@g2 -ʼn.疳Pи^_6TȓMfo0TF(qv,&(%dgxsr_wAޓ/*fBќL u?nuz_uf_/ZHQ3a3tHDnwY9,gV ;iϢkfL?uFWyZgT}&kfjДrK"t>ޗcTjy0H,a4vrǫQ d9 RTà^|APIzN1]!KcLt1u ecc-Wcw'x$}r]:*RLuz^/CXouйyZLY=̼.Kf=/ f˕~hZ}aiGr||rx ,UZcgf.7XUN+/y+/e&@[q2DD=ѓ)FuFPu;\ [XH9x9pL~Xc9 ]$6`^LGO2q%B7N3 gF-4tw}ٮdAμ9F;tMǰkC0$ J>(mIg&*)C_*&, ^fQQ]"bjiB|H+lED#5'w&n?4䏦 Vn[sUiVk-q8<8ΞhRlL}qwbq xQ :=ŀe!-tU(ZC<NTy%]r"W~,vWmm.dZM#^v)Iɑuƅ&'4 ׆606" L4@_ in yI590:J7l Pݠ FlӔ|ZB[VÈencw;bX쫠)W")sV?mGzcx^3:yV&:"DdkTv-NP%eG@靵 eѦgUH`w}<܊]5Yc'Wg)l=u5>a*Y] JznxK*6!!qutX}448а pibTrf/R:WpΜRJJhrK3 H4#VH` !;*X:cATE9qTc^0X(KT4#U@Ջ30&r&S7ڐU6fMqTo|m,Byp!v |'ZJħ^%#_C SKO]09L?WÁy׎&~%]yLs\$Ƙ ߒOI{Z|Sa2Uf]>9#dFb \}@\ь `tU혚S?JFEd9(}vjenƥ1KTRQ#֒7;nHuZTo§R +1KNSyYK)LF3b;/\Z5-%{k`A|h@pRknJ׸^D,ٱ@z܎~1HDmN a.JշR6ow-3{Ͻ\V}J ļIkEI_@n5ub]@he QHly+1^TŬjL1>ES>urQ@}wݑ I50Λ,.~V+tGu%FD+S64{iEP*CWR׸nǮ9_Ewb#%C5)K3'?`YUy:p}!*cqt HF"K>$kED 6ev,.= &!?2)Bٖ[|l|\L[9 \NgGbeRaH2L*_጑% b`4O|pklKK7~@_t%hE#Fd#iԣUϨcFtzJ]fu,RH\[ED?8@6FVvbQ0"v߽QȐU4{Y$9&(UՓe{w۱L#襟: KHѾ~>=U"? egnz` 5)YIE"'VCN 3g=]_m1KfVĨ ylLV~ MNl (O {"wDYGP2}$""9/<ĥ/iHMq=b̹aȌH/䋭j v3YwAӊ^Nԇ+ is#@C禹:~ "n4h.{:9}LȂ1mN~T4RcwibGv6>,\ ŵ9Yu} ee'HqQ3lݰPQkgjh\-- ;o0cOzfչL/{/Zpx2b9XjB-zmW>2PptxyGUdWb2bw,in(,/P yu341;s倍QBΎ"QLr$OW6\-[4i_! RC dN<ԁhS|Q$bO),˪!<4.B 첀O=tChw~TYlR!B.O:Ȁ(l`\\u61Q~jIZ|_LIO;v"Kwz-% YH'\(Pq;_U@D Opp\="pnS; czRL;n0q~|&v.9vh\r`44y87I*68HnTKx95hu6acɟȬ2"XWB3ix €n+OC%kI}"7Ҙ.) l>#2ѣZî^4~9j,ōRmD{?M2Mg o'KvR1TPp3FkV|x:v4FʊNul]ƮqB(<\Zk)-q#*T*VkGEK/6-j| #0о\A{}n9&_|}xQ;ﺋ>;sFH}4 ^(Ⓣط mqd9E;w3H0ZF&Zm$߁yc8*c#f [| M >H`bC[9=E^=M6'zT1[ךr v}+W; zCNK Ъ .hƎH+*fo:s+pUKj~mhhoc[HBDK$S6P-uƭ}*ޝ(f$ 2Uӻqҹcz>k_4>=! FCe@.ݯs,?Tw_R= ^ (0޷`]5-N&mhXjW1Q1JX1" WZǴ6cia\y"F\8wl`8E,Jͼq!~r!2yXiT&elj |ApIDX) #lx ۉW݋,q[v7fS,3ֱ!vK]R0XIT±RO`O'5k{b@rۭ0aBۼ% l/h*Vqh?̿pw=̂г `Tw%5ݯe )ўqgjw-r ~-rne!ߠe&F4XUA:&p #hǣh"*t*lSQ[%ʢNxqΈQLq =wdy@ʲRsq js>Z%F /(թ9+;uwQ\n!ܕ'ϔS[ԩނn+qs b,D\jsn*BitBO㟳k5I;Uzn; niׁ`ړ*mjJ:wO{1U;۞ bߜ[#@m=ok#VDf IYZ,Xm֪9+6ٽ3XlvŞw=_JkdmXͶV6Eu`MRKɼ/=u6B^Cmnmrf=rĶ/緿%7i훜Ljv(7~IhA3@*[m/5M;kJtي`,*thЎU;4cI`f`sn3I[Xҫ&x2Dzu>b(Pq5%q|)q4 +Ӫ7p-v_PTTKSɭjXWa?#O+VNO*cűq5Dn{/xضj::P "jl]٠)>cǻd^jI#4Th&\Pry&A<9n?1WH_2\PBόB}^y=ooŁbHSs(MFxiE*?V%#-Hso>/=q4V Z < 6%L1u$4'Ά+pLg YY$u':Ž]+ԥ!(EmN n1m`nzԢ0tnӥY8#>H b;$&O,ތ49t2y?R!-[t:ҋhY  *UvXxpN]rFHuBp P30~ٍ& Z# ^PQIJADZa7}<=_ K9(Y :".9w Eej(Z v=eeN(_o?5/-:ܗSǿ'KW9H+V/%WDvh@rD jOTOYb|sfHBaq@;Oʪ'.i{f^~'$ۮR&#y9k9^g;VW[jh,'9^Tp>a;%HqN ÛUTU$6*زr厕}ϻSazJžlUͨ nH}ͳ#r*fc66 @pUCr|Bs<K˦VŌǃ<NNDna#DkWzdaIhKVh Tfۚynn`|keN:\Ui#\{f}@ػ90+c`\g~ Uq*ˡpBַp@suf 6sAȕLu>t\"3qsR!9ŨvcebG>c;- dzCH^ x_Vԅ<X=2Pkz+)7k-3WQ+AhU:ȞתNONk1&vY>%'t- 7d#s[% Ol8[V 3/?N yJ+N?].iOg3mdSäLu>*;Q*>cmAsm9vy7@t3Lߛv5BtM4硾 +6=?zc6Y ]P"#Hw ~ -%[BpI7h +⢔s:i әT펊VRC(ҤbJ \=/<`1LuA ?0 %#:1V- Ah HJFjh/.Tbx sh9)G! ҇d^\&Z B38`dH|0 փ KDOµ; 'L6#'[YX =fӄdoA6d:nLI1U'%@G([vryՏEC^#6\l2yJs2P8B#`p?=_g JWE MѶbi][!g7^3yeJy4J\תe^5ݗVDZ)iCp컹6Hv/; QagS*% 7laq +@_Y(ɕMEPv=ui 8R+gu,O2ͶBCDgVIw^1MjܙU('+BD‡_9]*|zrKa=eKzΊTFkjr~QM}g<@[!* @WeJzpIFX{ -xk6ue1M36{.4 @zU(| @]*L)9l!Nioїo :D[%)+.cgM=~#Y9Ρ얲D-|Y7mcA&b ) M(37h,oPUJO̴M>ڔE"P 7fDTHpT`w* ec QV@a@u,eZ>\&vm٤Q6Cb҄ b_rj =J)2\_ YHV3K*PW(PN `$v-!-650֔O/#zյ|* NO ςۢԂ#\n@*]oCZjWyHs𽗕,cmzwG޿z˖)T2\Θ,w {֙#tI怮KV}+6RX{#Uj** l_2طֿy0A-W?BOb!ƭ8`Ҵ ծ7z`3Ɨ`"Y`1 oB k5 ]F!7hz1zS}Tp֡1Vѫ G~M&b@b})e:6H^-4zqz~o[hm9j/(lݗU$IFId&y( a0Y`{?hȬoG1EDNY7qUi֖ J{E՗[hmf'2`m :f[?F"6%il4#YDBM_浊IMi]%-W6`ByDS3kk8Cl[\GZ2q99{MZ֌:L/(lCr0EtMqn*; aY+j$!"&W2 ]a4ˆH%(G&]Ʊl\2QyZC 8;#|!%$h A{qycR r^ z a((H. ,x~r#}y> v=ٱgfn&~B}9۹y7b y-"ga:Em8/Z#ZU gXѡQ.9;$m;_,=f:l1Rǿ9܇| @%fA[f7ձSӨS1fpTo¶iAƐՂ. rPg]m̀ΈJa~-j| =ѨHPދ3d?5Jz?7j>iw~xdfc& ;ͧ_26}q50ݝg Ed_}%o4ŚS.H|gi"kr77倣ށA7-"b ӊxJ;ESY1]r'l]ʗU K 'Y_2'Ql$3<<77]'<ӜAEZΩf/i7jhŷ{{J9uttNJCՅs֦? LDu_}mC-:G+Kb*}mG7=rkIb҅ 8Z\daqT{A*'%9ԳL}|Dv$,fJ D%XF^JN?N̹NeNffS8%5LTfϝ+8Q2:e3Pu2PLN9Oz(%H}="k׬>Z¥T'!B?2SUH}"0+1,- 9!"- y0 YZ