python-tk-2.7.18-150000.68.1<>, HgM+p9|g  _0B&ꌘy}w7 HjlbC0I2֮x;Yff q/(kMϟ80^Df#Ƅo p`Q;`aw(h>Q eg^WJv\M 3(t4\It]ISv-c3~λB)u0Sj҅ɇx YAR7VԫxC4h6G?GAbԬ>Ad?Td   =  $*4oo o o ho !o "o#o%o((<o)*T*,(,78,@r9.r:5rBVFvGoHLoIoXxYZ[\o]o^bcJdefluovwoxpoy,rzPCpython-tk2.7.18150000.68.1TkInter - Python Tk InterfacePython interface to Tk. Tk is the GUI toolkit that comes with Tcl.gM+h02-armsrv1ZSUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Development/Libraries/Pythonhttps://www.python.org/linuxaarch64H'<<"%% ,, h h-wZwZ,22sk  6 + +w4(>'>'77 ,,,''C>> b Pmg}g}_))g66+##m!9!9A큤A큤A큤A큤gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMgMgMg4gMgMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgMg4gMgM45df53e147955d513657351879c10cfb9d9aa1f2a9042bef58cebe0749629cc2074e1bb0397d6689e5dbb1ae4e5ccd1c0d0c4704656729d3cdd1fa44f986d077d1f46058c1ad276dc74e227bba85e03b210330b26467c7d35b82cb38854180d6d1f46058c1ad276dc74e227bba85e03b210330b26467c7d35b82cb38854180d6886afde4c1589a688afc857a0fb5039f8388f225443283081d9ddf072571b06412a95a52546a5f7b58030e471e4f9d55f5cbe88221422a3ab2446d983a1b827012a95a52546a5f7b58030e471e4f9d55f5cbe88221422a3ab2446d983a1b82709229d117eca73b48a41b6303bffed14184add10afd20273976715fdd4840042af973f6e165cbfc429cbf3634d027998c71175dc77f9a4fa286818c06b6bf146ff973f6e165cbfc429cbf3634d027998c71175dc77f9a4fa286818c06b6bf146f808ece582c4a8e502c062b23aa16949d85878a9f3485d2111fd19ac6bdbb02e807d50d4dcfe8873b938540857a79ad99c6bfe81c019f4f1d1723a5548972815bf7efb3ec5613e57587acf25c88c1e21683b80d4ad1ea2993f26a3644199400f154f55b9696013117aa8758f901f77cc30dce6ad6f13df8b85c26c5af843a7fa0d3ca2d455909795d7ee4188ccb5121cbb40e61c9da7a0b0c0204466b70c378fbd3ca2d455909795d7ee4188ccb5121cbb40e61c9da7a0b0c0204466b70c378fb1dbc9f1fc85237211d52b96ee1cc1c5553c81e0a62fd7143b95e16d32f5abafd042f5d0ac1a7195e4ae4e44e30e216a6cb8e940f5dddff7a78639aeffefd3af9042f5d0ac1a7195e4ae4e44e30e216a6cb8e940f5dddff7a78639aeffefd3af90e875733af8af973cb94d088dbe5b4ed36dd3db1241970ec2bf19ea97ec5fbf87d19210ac228fb73e4dd1248ea3ef25fed1f91257556246a08d553c5aeccfa977d19210ac228fb73e4dd1248ea3ef25fed1f91257556246a08d553c5aeccfa97c01314dc51d1c8effeba2528720a65da133596d4143200c68595c02067bf1da2d8c06b9190a9e3ba9939f98033e4e308e6c3f346957c25f5522197f1d6224d99d8c06b9190a9e3ba9939f98033e4e308e6c3f346957c25f5522197f1d6224d99c8fb5c768f76788cb678922aed330e2b7ae3cc825fdabea1a09b18db557711dcc1607aa157386f983becc9ed6ff8acd648b2600a873b70f2137996c0fadceb61c1607aa157386f983becc9ed6ff8acd648b2600a873b70f2137996c0fadceb6198b2cd8b857ff09c0e6b3a330b98415a97282d70fa80b9cd15d1e14b2d2aea88cb22d5f2f90acbcc84f855536a137d6aa945396a77008b44bf5d91a50b7c4729cb22d5f2f90acbcc84f855536a137d6aa945396a77008b44bf5d91a50b7c4729fe3c79d5da8616ca37f7a9d8fddaac2c9164b593c7b116580aa99690a5f59ab5e82c816f3b0fdff328dfc84a8076385feec2208ac94a7e402af9138f8b6996e771f0df0646f9d10d12dca3e0d53503a8f721d37693f3782d31433f997f8489f871f0df0646f9d10d12dca3e0d53503a8f721d37693f3782d31433f997f8489f8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855974b4e2c57daa33c609f7adc37bc541fcf13c44e35bd35427642ab6430c7a008974b4e2c57daa33c609f7adc37bc541fcf13c44e35bd35427642ab6430c7a0080e9cbeed9f1bbec6f79a2bcebee7e12f896caba3b1a167d935446d009262dca2d9987ed30c57809257833865ef479fd5606d4e48692285b49f69082ed1d925c5d9987ed30c57809257833865ef479fd5606d4e48692285b49f69082ed1d925c5fe5f12d6412050e1414dfabc16ecc2341779d627362e1d81666e8b466986c50a3fb1be1b52f8ca1ee6c7e9bd23e3fc6f066e34470a90bdd849cad48e9a15f2653fb1be1b52f8ca1ee6c7e9bd23e3fc6f066e34470a90bdd849cad48e9a15f26507078aa64be8d2d3a02fcfa10eb73eebf06583fae23134ae47b9d4b2bf66d23a424df1bad708b9686c542da3f59a4377b2d115b1f4f06f02b21a1606a4e695d2424df1bad708b9686c542da3f59a4377b2d115b1f4f06f02b21a1606a4e695d2ba8ad521638ef8148d07be0925111fb57cb1b64dadf770f1ca2bd17e1bb356d68bc2a58f02c1caf5b98d1dcfc51d4e089690aa1a4f82c5a2b407588e4d5b1c248bc2a58f02c1caf5b98d1dcfc51d4e089690aa1a4f82c5a2b407588e4d5b1c249e9439bfa528e20f0e045905ea5a3eca4cd27c4c9f190c62c192f9945caaae28b305f16b669d9b8ce67b5f6fca431dbbd56312def20bded79f106d28d02496a6b305f16b669d9b8ce67b5f6fca431dbbd56312def20bded79f106d28d02496a6ea0ebbfcc26a428337548a5e3c6768294497b81cce8f845d23e035ea62cd1aabd04e72bd663e8e9844229486947cea95792c9c8329016bdb3b62e63b1a86a8edd04e72bd663e8e9844229486947cea95792c9c8329016bdb3b62e63b1a86a8ed49029a61956e79a10fb9b79000283c1e83cabc0645adacf9824a99dbe2dece5f9c421cd23a7275f94a8eb03f120ed8454d2d85d63367abf293c60aed8b9ca2e99c421cd23a7275f94a8eb03f120ed8454d2d85d63367abf293c60aed8b9ca2e919a6ca5753fe74ec6248d166d2a54acfcd70f823ea578cfe803baf8f87ea346d887f472712bfb0d3e8d5c4e53749ecb92a0b51e7567211580188dce7b5b76dc6887f472712bfb0d3e8d5c4e53749ecb92a0b51e7567211580188dce7b5b76dc6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855609b2a034669bd1e523516f54ebf84b6355cd227d219fe96c881266a4816faab609b2a034669bd1e523516f54ebf84b6355cd227d219fe96c881266a4816faab53b465fb6754d8c39458a1e1ba7f8504f40d724e7dbcc7ab8fc38ea65c08c02e168338c9682058170c6098b025ce0eac79cfe5061e9481e3593e5bcf0eb3e261168338c9682058170c6098b025ce0eac79cfe5061e9481e3593e5bcf0eb3e2619d53e31b151af887cd26829a1331843c02288a8480ca74a7fc631833ce60d0cb2da949d987f1ca2117131dba85c7ee693ee4d18c9ff8b75f065d3c6dc0ddef2a2da949d987f1ca2117131dba85c7ee693ee4d18c9ff8b75f065d3c6dc0ddef2a9fc1aec0a300d4754c94d77b4ee8f029540eb88bcf0ef288551f52e9410de8d39cd1f5426330e44f1555a20a6fc2b3cc1947bb8a4ed9df3641de78893f312ba89cd1f5426330e44f1555a20a6fc2b3cc1947bb8a4ed9df3641de78893f312ba89241c97e08b337b0b92ee5b4e029936fa3eb53bdc821c080e78b020699e2aed79a3eb980f74248dc00d6ebef3e939673b1f00224678818c487b1ef16e4840b159a3eb980f74248dc00d6ebef3e939673b1f00224678818c487b1ef16e4840b1515df8a908a8e80163bca643c76ec6e4ceff80ee83da5d1fc4e10c364fadbbb853375d12debfa4b29407bd232dbc7b66aa51aa92b7d074d230175e50fd937a4fc3375d12debfa4b29407bd232dbc7b66aa51aa92b7d074d230175e50fd937a4fc2205693a5fa6a8b9e408b24e9dc938f74f6250a1212c5fe5bcf31f09be16d936a2cfd62df965fb4eda19dae52f39d94307c01ae43b8278bc811c15adefe067d3a2cfd62df965fb4eda19dae52f39d94307c01ae43b8278bc811c15adefe067d35b6a1486c4c1ce533b146cf455c599d5ef8eec94a8eb9821a847985c12e3ddcd01ce9d665b612a05ae7c81b04984c3b97b70b6b21aac51e176b95ff5ef605c3601ce9d665b612a05ae7c81b04984c3b97b70b6b21aac51e176b95ff5ef605c369547e4f72af28ec4262f88a00b6d2eb912ff49e2f5b3aa16b5a50a3230964d83f5c07bbd748d3ef9ca9c75e00998ae83445c7d505530025f63ebda551e180a47f5c07bbd748d3ef9ca9c75e00998ae83445c7d505530025f63ebda551e180a47360ba16e412f9d00617baa89c0ca476d49576a34bfff026cebebc71e630505a90d3a1037b90e26e128d75e432d88bbfd0f1bef05dd3ac473c6ce59ac159557280d3a1037b90e26e128d75e432d88bbfd0f1bef05dd3ac473c6ce59ac159557282f28b22cc571ed211824ac750e2c1b98574748f90829a7b01efd0ddfce6cbf327052a09145df614dd2c8be5b17d021e930f4877ce64b7e12935850fe4b9d345d7052a09145df614dd2c8be5b17d021e930f4877ce64b7e12935850fe4b9d345dcdb0fcb4cc54d55fe963aac128269754c09f8583afa00b445926951e5fb5118b198cea627bc97a66f8202edc3ab929d03d8fa07885c996bb370acbb6d1bc5bd7198cea627bc97a66f8202edc3ab929d03d8fa07885c996bb370acbb6d1bc5bd74b09f3aaccecb4a434d94937cb737b65767f7b595cd51a3fa48fcaddbde984e3fcae6a23abadde9d80950b7fcd7d4d2e506641311fca1d3170107c9a6f9c77d9fcae6a23abadde9d80950b7fcd7d4d2e506641311fca1d3170107c9a6f9c77d9b4c15f951994f60a263b271323e31896e8f6e049135c9f5904d8a877ee8ea8accc535ac03f78ef9941113d1c35cb2d6b8a178dcdcdadd8a70ae0e6242d3e7d01cc535ac03f78ef9941113d1c35cb2d6b8a178dcdcdadd8a70ae0e6242d3e7d01cdb5a419bd0bb4b98221fa23a480c7a92733824b259b8bfefaac5da7517643dbc0ebefb1a90ec587601635ce6de5a1173587ca2992ac0aaecf8bb2b724759313c0ebefb1a90ec587601635ce6de5a1173587ca2992ac0aaecf8bb2b724759313rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-2.7.18-150000.68.1.src.rpmpyth_tkpyth_tklpython-tkpython-tk(aarch-64)python-tkinterpython2-tkpython_tkinter_lib@@@@@@@@@     ld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libpthread.so.0()(64bit)libpython2.7.so.1.0()(64bit)libtcl8.6.so()(64bit)libtk8.6.so()(64bit)python(abi)python-baserpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.72.7.183.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1g4f@fH@f?]fh@e,e @eedeeeRd˖dD@dq@du@dtdm@dxdc>@cӼc0c|ck@c pcbbb@b@b@ba@a@a(@aim@aI@a'@a#aj@a`t`8`_T^J^@^@^>^>^;^8 @^.^g@^ @]f@]@]]]d@]d@]@]z@]V]y@]9]1]\t@\\7\7\\J@\J@\C@\2[[#@[6@[@[ @[Za@Z@ZxG@ZtRZp^@Z CVE-2021-3737-fix-HTTP-client-infinite-line-reading-after-a-HTTP-100-Continue.patch (boo#1189241, CVE-2021-3737)- Renamed patch for assigned CVE: * bpo43075-fix-ReDoS-in-request.patch -> CVE-2021-3733-fix-ReDoS-in-request.patch (boo#1189287, CVE-2021-3733) - Fix python-doc build (bpo#35293): * sphinx-update-removed-function.patch - Update documentation formatting for Sphinx 3.0 (bpo#40204).- Add bpo43075-fix-ReDoS-in-request.patch which fixes ReDoS in request (bpo#43075, boo#1189287). - Add missing security announcement to bpo44022-fix-http-client-infinite-line-reading-after-a-HTTP-100-Continue.patch.- Add bpo44022-fix-http-client-infinite-line-reading-after-a-HTTP-100-Continue.patch which fixes http client infinite line reading (DoS) after a http 100 (bpo#44022, boo#1189241).- Modify Lib/ensurepip/__init__.py to contain the same version numbers as are in reality the ones in the bundled wheels (bsc#1187668).- Add CVE-2021-23336-only-amp-as-query-sep.patch which forbids use of semicolon as a query string separator (bpo#42967, bsc#1182379, CVE-2021-23336).- Add CVE-2021-3177-buf_ovrfl_PyCArg_repr.patch fixing bsc#1181126 (CVE-2021-3177) buffer overflow in PyCArg_repr in _ctypes/callproc.c, which may lead to remote code execution.- (bsc#1180125) We really don't Require python-rpm-macros package. Unnecessary dependency.- Add patch configure_PYTHON_FOR_REGEN.patch which makes configure.ac to consider the correct version of PYTHON_FO_REGEN (bsc#1078326).- Use python3-Sphinx on anything more recent than SLE-15 (inclusive).- Update to 2.7.18, final release of Python 2. Ever.: - Newline characters have been escaped when performing uu encoding to prevent them from overflowing into to content section of the encoded file. This prevents malicious or accidental modification of data during the decoding process. - Fixes a ReDoS vulnerability in `http.cookiejar`. Patch by Ben Caller. - Fixed line numbers and column offsets for AST nodes for calls without arguments in decorators. - bsc#1155094 (CVE-2019-18348) Disallow control characters in hostnames in http.client. Such potentially malicious header injection URLs now cause a InvalidURL to be raised. - Fix urllib.urlretrieve failing on subsequent ftp transfers from the same host. - Fix problems identified by GCC's -Wstringop-truncation warning. - AddRefActCtx() was needlessly being checked for failure in PC/dl_nt.c. - Prevent failure of test_relative_path in test_py_compile on macOS Catalina. - Fixed possible leak in `PyArg_Parse` and similar functions for format units "es#" and "et#" when the macro `PY_SSIZE_T_CLEAN` is not defined. - Remove upstreamed patches: - CVE-2019-18348-CRLF_injection_via_host_part.patch - python-2.7.14-CVE-2017-1000158.patch - CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch - CVE-2018-1061-DOS-via-regexp-difflib.patch - CVE-2019-10160-netloc-port-regression.patch - CVE-2019-16056-email-parse-addr.patch- Add CVE-2019-9674-zip-bomb.patch to improve documentation warning about dangers of zip-bombs and other security problems with zipfile library. (bsc#1162825 CVE-2019-9674)- Change to Requires: libpython%{so_version} == %{version}-%{release} to python-base to keep both packages always synchronized (add %{so_version}) (bsc#1162224).- Add CVE-2020-8492-urllib-ReDoS.patch fixing the security bug "Python urrlib allowed an HTTP server to conduct Regular Expression Denial of Service (ReDoS)" (bsc#1162367)- Provide python-testsuite from devel subkg to ease py2->py3 dependencies- Add python-2.7.17-switch-off-failing-SSL-tests.patch to switch off tests coliding with the combination of modern Python and ancient OpenSSL on SLE-12.- libnsl is required only on more recent SLEs and openSUSE, older glibc supported NIS on its own.- Add provides in gdbm subpackage to provide dbm symbols. This allows us to use %%{python_module dbm} as a dependency and have it properly resolved for both python2 and python3- Drop appstream-glib BuildRequires and no longer call appstream-util validate-relax: eliminate a build cycle between as-glib and python. The only thing would would gain by calling as-uril is catching if upstream breaks the appdata.xml file in a future release. Considering py2 is dying, chances for a new release, let alone one breaking the xml file, are slim.- Unify packages among openSUSE:Factory and SLE versions. (bsc#1159035) ; add missing records to this changelog. - Add idle.desktop and idle.appdata.xml to provide IDLE in menus (bsc#1153830)- Add python2_split_startup Provide to make it possible to conflict older packages by shared-python-startup.- Move /etc/pythonstart script to shared-python-startup package.- Add bpo-36576-skip_tests_for_OpenSSL-111.patch (originally from bpo#36576) skipping tests failing with OpenSSL 1.1.1. Fixes bsc#1149792- Add adapted-from-F00251-change-user-install-location.patch fixing pip/distutils to install into /usr/local.- Update to 2.7.17: - a bug fix release in the Python 2.7.x series. It is expected to be the penultimate release for Python 2.7. - Removed patches included upstream: - CVE-2018-20852-cookie-domain-check.patch - CVE-2019-16935-xmlrpc-doc-server_title.patch - CVE-2019-9636-netloc-no-decompose-characters.patch - CVE-2019-9947-no-ctrl-char-http.patch - CVE-2019-9948-avoid_local-file.patch - python-2.7.14-CVE-2018-1000030-1.patch - python-2.7.14-CVE-2018-1000030-2.patch - Renamed remove-static-libpython.diff and python-bsddb6.diff to remove-static-libpython.patch and python-bsddb6.patch to unify filenames.- Add CVE-2019-16935-xmlrpc-doc-server_title.patch fixing bsc#1153238 (aka CVE-2019-16935) fixing a reflected XSS in python/Lib/DocXMLRPCServer.py- Add bpo36302-sort-module-sources.patch (boo#1041090)- Add CVE-2019-16056-email-parse-addr.patch fixing the email module wrongly parses email addresses [bsc#1149955, CVE-2019-16056]- boo#1141853 (CVE-2018-20852) add CVE-2018-20852-cookie-domain-check.patch fixing http.cookiejar.DefaultPolicy.domain_return_ok which did not correctly validate the domain: it could be tricked into sending cookies to the wrong server.- Skip test_urllib2_localnet that randomly fails in OBS- bsc#1138459: add CVE-2019-10160-netloc-port-regression.patch which fixes regression introduced by the previous patch. (CVE-2019-10160) Upstream gh#python/cpython#13812- Set _lto_cflags to nil as it will prevent to propage LTO for Python modules that are built in a separate package.- bsc#1130840 (CVE-2019-9947): add CVE-2019-9947-no-ctrl-char-http.patch Address the issue by disallowing URL paths with embedded whitespace or control characters through into the underlying http client request. Such potentially malicious header injection URLs now cause a ValueError to be raised.- bsc#1130847 (CVE-2019-9948) add CVE-2019-9948-avoid_local-file.patch removing unnecessary (and potentially harmful) URL scheme local-file://.- bsc#1129346: add CVE-2019-9636-netloc-no-decompose-characters.patch Characters in the netloc attribute that decompose under NFKC normalization (as used by the IDNA encoding) into any of ``/``, ``?``, ``#``, ``@``, or ``:`` will raise a ValueError. If the URL is decomposed before parsing, or is not a Unicode string, no error will be raised (CVE-2019-9636). Upstream commits e37ef41 and 507bd8c.- (bsc#1111793) Update to 2.7.16: * bugfix-only release: complete list of changes on https://github.com/python/cpython/blob/2.7/Misc/NEWS.d/2.7.16rc1.rst * Removed openssl-111.patch and CVE-2018-1000802-shutil_use_subprocess_no_spawn.patch which are fully included in the tarball. * Updated patches to apply cleanly: CVE-2019-5010-null-defer-x509-cert-DOS.patch bpo36160-init-sysconfig_vars.patch do-not-use-non-ascii-in-test_ssl.patch openssl-111-middlebox-compat.patch openssl-111-ssl_options.patch python-2.5.1-sqlite.patch python-2.6-gettext-plurals.patch python-2.7-dirs.patch python-2.7.2-fix_date_time_compiler.patch python-2.7.4-canonicalize2.patch python-2.7.5-multilib.patch python-2.7.9-ssl_ca_path.patch python-bsddb6.diff remove-static-libpython.patch * Update python-2.7.5-multilib.patch to pass with new platlib regime.- bsc#1109847 (CVE-2018-14647): add CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch fixing bpo-34623.- bsc#1073748: add bpo-29347-dereferencing-undefined-pointers.patch PyWeakref_NewProxy@Objects/weakrefobject.c creates new isntance of PyWeakReference struct and does not intialize wr_prev and wr_next of new isntance. These pointers can have garbage and point to random memory locations. Python should not crash while destroying the isntance created in the same interpreter function. As per my understanding, both wr_prev and wr_next of PyWeakReference instance should be initialized to NULL to avoid segfault.- bsc#1122191: add CVE-2019-5010-null-defer-x509-cert-DOS.patch fixing bpo-35746 (CVE-2019-5010). An exploitable denial-of-service vulnerability exists in the X509 certificate parser of Python.org Python 2.7.11 / 3.7.2. A specially crafted X509 certificate can cause a NULL pointer dereference, resulting in a denial of service. An attacker can initiate or accept TLS connections using crafted certificates to trigger this vulnerability.- Use upstream-recommended %{_rpmconfigdir}/macros.d directory for the rpm macros.- Add patch openssl-111.patch to work with openssl-1.1.1 (bsc#1113755)- Apply "CVE-2018-1000802-shutil_use_subprocess_no_spawn.patch" which converts shutil._call_external_zip to use subprocess rather than distutils.spawn. [bsc#1109663, CVE-2018-1000802]- Apply "CVE-2018-1061-DOS-via-regexp-difflib.patch" to prevent low-grade poplib REDOS (CVE-2018-1060) and to prevent difflib REDOS (CVE-2018-1061). Prior to this patch mail server's timestamp was susceptible to catastrophic backtracking on long evil response from the server. Also, it was susceptible to catastrophic backtracking, which was a potential DOS vector. [bsc#1088004 and bsc#1088009, CVE-2018-1061 and CVE-2018-1060]- Apply "CVE-2017-18207.patch" to add a check to Lib/wave.py that verifies that at least one channel is provided. Prior to this check, attackers could cause a denial of service (divide-by-zero error and application crash) via a crafted wav format audio file. [bsc#1083507, CVE-2017-18207]- Apply "python-sorted_tar.patch" (bsc#1086001, boo#1081750) sort tarfile output directory listing- update to 2.7.15 * dozens of bugfixes, see NEWS for details - removed obsolete patches: * python-ncurses-6.0-accessors.patch * python-fix-shebang.patch * gcc8-miscompilation-fix.patch - add patch from upstream: * do-not-use-non-ascii-in-test_ssl.patch- Add gcc8-miscompilation-fix.patch (boo#1084650).- Apply "python-2.7.14-CVE-2017-1000158.patch" to prevent integer overflows in PyString_DecodeEscape that could have resulted in heap-based buffer overflow attacks and possible arbitrary code execution. [bsc#1068664, CVE-2017-1000158]- exclude test_socket & test_subprocess for PowerPC boo#1078485 (same ref as previous change)- Add python-skip_random_failing_tests.patch bypass boo#1078485 and exclude many tests for PowerPC- Add patch python-fix-shebang.patch to fix bsc#1078326- exclude test_regrtest for s390, where it does not segfault as it should (fixes bsc#1073269) - fix segfault while creating weakref - bsc#1073748, bpo#29347 (this is actually fixed by the 2.7.14 update; mentioning this for purposes of bugfix tracking)- update to 2.7.14 * dozens of bugfixes, see NEWS for details * fixed possible integer overflow in PyString_DecodeEscape (CVE-2017-1000158, bsc#1068664) * fixed segfaults with dict mutated during search * fixed possible free-after-use problems with buffer objects with custom indexing * fixed urllib.splithost to correctly parse fragments (bpo-30500) - drop upstreamed python-2.7.13-overflow_check.patch - drop unneeded python-2.7.12-makeopcode.patch - drop upstreamed 0001-2.7-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3094.patch - Apply "python-2.7.14-CVE-2018-1000030-1.patch" and "python-2.7.14-CVE-2018-1000030-2.patch" to remedy a bug that would crash the Python interpreter when multiple threads used the same I/O stream concurrently. This issue is not classified as a security vulnerability due to the fact that an attacker must be able to run code, however in some situations -- such as function as a service -- this vulnerability can potentially be used by an attacker to violate a trust boundary. [bsc#1079300, CVE-2018-1000030]- Call python2 instead of python in macros- Fix test broken with OpenSSL 1.1 (bsc#1042670) * add 0001-2.7-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3094.patch- drop SUSE_ASNEEDED=0 as it is not needed anymore- Add libnsl-devel build requires for glibc obsoleting libnsl- obsolete/provide python-argparse and provide python2-argparse, because the argparse module is available from python 2.7 up- SLE package update (bsc#1027282) - refresh python-2.7.5-multilib.patch - dropped upstreamed patches: python-fix-short-dh.patch python-2.7.7-mhlib-linkcount.patch python-2.7-urllib2-localnet-ssl.patch CVE-2016-0772-smtplib-starttls.patch CVE-2016-5699-http-header-injection.patch CVE-2016-5636-zipimporter-overflow.patch python-2.7-httpoxy.patch - Add python-ncurses-6.0-accessors.patch: Fix build with NCurses 6.0 and OPAQUE_WINDOW set to 1. (dimstar@opensuse.org)- Add reproducible.patch to allow reproducible builds of various python packages like python-amqp Upstream: https://github.com/python/cpython/pull/296- update to 2.7.13 * dozens of bugfixes, see NEWS for details * updated cipher lists for openssl wrapper, support openssl >= 1.1.0 * properly fix HTTPoxy (CVE-2016-1000110) * profile-opt build now applies PGO to modules as well - update python-2.7.10-overflow_check.patch with python-2.7.13-overflow_check.patch, incorporating upstream changes (bnc#964182) - add "-fwrapv" to optflags explicitly because upstream code still relies on it in many places- provide python2-* symbols, for support of new packages built as python2-foo - rename macros.python to macros.python2 accordingly - require python-rpm-macros package, drop macro definitions from macros.python2- initial packaging of `python27` side-by-side variant (fate#321075, bsc#997436) - renamed `python` to `python27` in package names and requires - removed Provides and Obsoletes clauses - dropped SLE12-only patch python-2.7.9-sles-disable-verification-by-default.patch, companion sle_tls_checks_policy.py file and the python-strict-tls-checks subpackage - dropped profile files - removed /usr/bin/python and /usr/bin/python2, along with other unversioned aliases - rewrote macros file to enable stand-alone packages depending on py2.7 - re-included downloaded version of HTML documentation- update to 2.7.12 * dozens of bugfixes, see NEWS for details * fixes multiple security issues: CVE-2016-0772 TLS stripping attack on smtplib (bsc#984751) CVE-2016-5636 zipimporter heap overflow (bsc#985177) CVE-2016-5699 httplib header injection (bsc#985348) (this one is actually fixed since 2.7.10) - removed upstreamed python-2.7.7-mhlib-linkcount.patch - refreshed multilib patch - python-2.7.12-makeopcode.patch - run newly-built python interpreter to make opcodes, in order not to require pre-built python - update LD_LIBRARY_PATH to use $PWD instead of "." because the test process escapes to its own directory - modify shebang-fixing scriptlet to ignore makeopcodetargets.py- CVE-2016-0772-smtplib-starttls.patch: smtplib vulnerability opens startTLS stripping attack (CVE-2016-0772, bsc#984751) - CVE-2016-5636-zipimporter-overflow.patch: heap overflow when importing malformed zip files (CVE-2016-5636, bsc#985177) - CVE-2016-5699-http-header-injection.patch: incorrect validation of HTTP headers allow header injection (CVE-2016-5699, bsc#985348) - python-2.7-httpoxy.patch: HTTPoxy vulnerability in urllib, fixed by disregarding HTTP_PROXY when REQUEST_METHOD is also set (CVE-2016-1000110, bsc#989523)- Add python-2.7.10-overflow_check.patch to fix broken overflow checks. [bnc#964182]- copy strict-tls-checks subpackage from SLE to retain future compatibility (not built in openSUSE) - do this properly to fix bnc#945401 - update SLE check to exclude Leap which also has version 1315, just to be sure- Add python-ncurses-6.0-accessors.patch: Fix build with NCurses 6.0 and OPAQUE_WINDOW set to 1.- add missing ssl.pyc and ssl.pyo to package - implement python-strict-tls-checks subpackage * when present, Python will perform TLS certificate checking by default. it is possible to remove the package to turn off the checks for compatibility with legacy scripts. * as discussed in fate#318300 * this is not built for openSUSE, but retained here in case we want to build the package for a SLE system- python-fix-short-dh.patch: Bump DH parameters to 2048 bit to fix logjam security issue. bsc#935856- add __python2 compatibility macro (used by Fedora) (fate#318838)- update to 2.7.10 - removed obsolete python-2.7-urllib2-localnet-ssl.patch- Reenable test_posix on aarch64- python-2.7.4-aarch64.patch: Remove obsolete patch - python-2.7-libffi-aarch64.patch: Fix argument passing in libffi for aarch64- update to 2.7.9 * contains full backport of ssl module from Python 3.4 (PEP466) * HTTPS certificate validation enabled by default (PEP476) * SSLv3 disabled by default (bnc#901715) * backported ensurepip module (PEP477) * fixes several missing CVEs from last release: CVE-2013-1752, CVE-2013-1753 * dozens of minor bugfixes - dropped upstreamed patches: python-2.7.6-poplib.patch, smtplib_maxline-2.7.patch, xmlrpc_gzip_27.patch - dropped patch python-2.7.3-ssl_ca_path.patch because we don't need it with ssl module from Python 3 - libffi was upgraded upstream, seems to contain our changes, so dropping libffi-ppc64le.diff as well - python-2.7-urllib2-localnet-ssl.patch - properly remove unconditional "import ssl" from test_urllib2_localnet that caused it to fail without ssl- skip test_thread in qemu_linux_user modepyth_tkpyth_tklpython-tkinterh02-armsrv1 1733153579 !"#$$&'((*++-..0113446779::<==?@@BCDDFGGIJJLMMOPPRSSUVVXYY[\\^__abbdeeghhjkkmnn2.7.18-150000.68.12.7.18-150000.68.12.7.18_tkinter.solib-tkCanvas.pyCanvas.pycCanvas.pyoDialog.pyDialog.pycDialog.pyoFileDialog.pyFileDialog.pycFileDialog.pyoFixTk.pyFixTk.pycFixTk.pyoScrolledText.pyScrolledText.pycScrolledText.pyoSimpleDialog.pySimpleDialog.pycSimpleDialog.pyoTix.pyTix.pycTix.pyoTkconstants.pyTkconstants.pycTkconstants.pyoTkdnd.pyTkdnd.pycTkdnd.pyoTkinter.pyTkinter.pycTkinter.pyotestREADMEruntktests.pyruntktests.pycruntktests.pyotest_tkinter__init__.py__init__.pyc__init__.pyotest_font.pytest_font.pyctest_font.pyotest_geometry_managers.pytest_geometry_managers.pyctest_geometry_managers.pyotest_images.pytest_images.pyctest_images.pyotest_loadtk.pytest_loadtk.pyctest_loadtk.pyotest_misc.pytest_misc.pyctest_misc.pyotest_text.pytest_text.pyctest_text.pyotest_variables.pytest_variables.pyctest_variables.pyotest_widgets.pytest_widgets.pyctest_widgets.pyotest_ttk__init__.py__init__.pyc__init__.pyosupport.pysupport.pycsupport.pyotest_extensions.pytest_extensions.pyctest_extensions.pyotest_functions.pytest_functions.pyctest_functions.pyotest_style.pytest_style.pyctest_style.pyotest_widgets.pytest_widgets.pyctest_widgets.pyowidget_tests.pywidget_tests.pycwidget_tests.pyotkColorChooser.pytkColorChooser.pyctkColorChooser.pyotkCommonDialog.pytkCommonDialog.pyctkCommonDialog.pyotkFileDialog.pytkFileDialog.pyctkFileDialog.pyotkFont.pytkFont.pyctkFont.pyotkMessageBox.pytkMessageBox.pyctkMessageBox.pyotkSimpleDialog.pytkSimpleDialog.pyctkSimpleDialog.pyottk.pyttk.pycttk.pyoturtle.pyturtle.pycturtle.pyo/usr/lib64/python2.7/lib-dynload//usr/lib64/python2.7//usr/lib64/python2.7/lib-tk//usr/lib64/python2.7/lib-tk/test//usr/lib64/python2.7/lib-tk/test/test_tkinter//usr/lib64/python2.7/lib-tk/test/test_ttk/-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.suse.de/SUSE:Maintenance:36648/SUSE_SLE-15_Update/5cc773bde90c584ce45e7b98481ef41b-python.SUSE_SLE-15_Updatedrpmxz5aarch64-suse-linuxELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e6995b72f176d441d8eb7d5700f5876561407a8a, strippeddirectoryPython script, ASCII text executablepython 2.7 byte-compiledASCII textemptyPython script, UTF-8 Unicode text executable  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRW勻ZpZطrutf-8bf26f2e67f288d74d773c9aeaac7798c535a0564a1a9a0c7df5333b60c113733?7zXZ !t/ Xl]"k%a) \/sɝoec\!j|~Y$eb ~"aZ5\|Բ3\FcsZZ ڧ ֜)6kJ *wFNذ\BaՆY*͏w؜[,+kfD6foWN oz_-DeS89)@JZ9c ddF7 QfĨ&U7 o' 64\5WC4o7VkJe-TÐԒ٢]~B;li8wqХ82X 0s{>;IIaϙ$Hth=Aف8ia296WZo}jrY ?yV`$RZͬ\pE>nXf~{!mEv,bk} &Xe ^?NQ˧CαE,X s v E ,š{2%:BLco1127R0 :F52$2 }C2^%7XyJvU<ծ`LSxM߳!՝Eb [ܠ[o P^kT(YH\t.\`oO=J[Y\Ѫia# P? њOg[V J@$YpMY|9j SzKI$fOڃ_ep xbq| "Ll@g_pYvkjL3a`d>sʹ-_5LyESUEau;r1Cze6NWcw;쐜)|r 88uݟ歨,3V?Ҹ֡kHz#p+WP!+{*V0^E2%ᒆErh2g`c_z;\4ڼk_!?W[yB\8ҳs$sVCn"U[9J~XUUs '#6F>$7t7Pg9]_>ДZl ynycyESS!\xAH [7.^Զ,2…=K)nH4lWʅ7\6I\=&bu 05inE zrf_KwV?_^4(2Ǖ*ʚ/i:5KQd݅|En,zɺRxpݻ'Z]C2P^y >yAc'O0 ?'Grc{*w0gìb:Ʋ:˟m?Eh W!j cwx oI~s>llwL;ȈZ25Làە,S[Pű.w%y(b3)EϤ~}tH~K͕3pgr_m|͊2Rs} 2~u$T}ҧJu~Q%C emoWxz&N}mUğZp?V$+uD]AI4͙>|>G<oiCshg{GMVh2X^*aӎoqG<g׷cIڮ;q۱`UdߚE, QQri7֪CƟŹz{>9)[YFZE9X z=HU6K)U2͢RA$' hy-!dС ^7B͒~7"Srim+6C·v[<% d[`Ř=E%J2eh:ty:qADR~0jGrGnQ5g,]cb͙3RRFU;ReTťF$Չ.Dfc KmVbb) JC#[BaIOB?7s?PTwcn^4UY  %8ZBflN \j«Xd! %w5]#xw)P$BmgV#,9iەФHN6$d?y\bE.JW7A3=Cw͋QD"DxҬRCxδMbmp1gsGPk{_douQ,<:) W.k} \ tj4܋bAf]w IWF%pǞi]|P :ڙp~tsPk|Nskʿ]/ByVO&zF^* &#(d/koiBh͉jw3%` :0P7gR\FO\2sgSwh[pХ?2.zN>S)M WBVE4ַMm sܻ <ݚ }m+K+}KrGPgY˶qȾ =b ] XYY!r#CwK)^ΣAJaO\2mM&\lI@8T +v۸֙ o#1%dR_޶xñtx(9*oeU7#fhw{:TOX΀~IL hE"Oawcɻ#@灎7N0x$\Td$2{uy]ҡ??&P!@\.:]+Ln-kˤm76Ԙ/x,VS%c2 @IT5_7|ҎPPLo4e(,Dii;&I)9@S Ngr[f q,kĝBۦִE?tl<H)CimMGiBR'~I-NpD0k/#׫Y KSJV'VPNuV֣z *pWj]T)db07h!!FH bGn–:2:!`r:ɒIFGWs p|ܩrk_LHnbFGTDGa s4gk'X5 >Y[眵$^u' FXO>V(dfw_},;Gu.>cB$&۪ Zݮŭid `$ V2`ba~ 09/uOFǷʢIR!/5iO^*u$C',TNKn-dSyVsw{9PlvxǀpU19eg:@cR_RՌ߃8fT u jJ*Z3cnK$) ?~V>M=6VL,q^oBˆ+s)&ʱ4G*X:Pٯ::UFhbD╚#'٩߾43;R,&RgdL!ߒ> 5شpuz(XUʼnLaɉMY9Ae,䟇PF51l3ۓ_,dC]k!Aw6Uǔ9SyX3_H!1 lO(|$" =EB&Wс0=%0RORe0S #[n%ֲ{QֿBzm)˯nzcᱧBdccyQ ]"/%ƽx7{fZ@`ȴcΏ•!s*NՓwT=ʞl6yӈYnZaBHF{ꎣ1gWʪ5sz\6Pu3iY"}Lou9Vh2@H82a1MDlz0x}ڿ*9> 2hvQ ovrɅ/$8Tu%9 5 4XA_"Q/Gl~X˪z>"B J/EPE)(R$&MBP3Pil%pY~Dzy&ܐ+{>A֟Ţy( idް4V\(p"r{YAH/EJz y2Eq.y^p^B^ڔzoC8={2pⰢڜ*0DJz6"1lʐ/#Wy[ŵ!q[%_H_2{8CL['Jv48 Z +R2A7.„q?|"ԇ$eڜxXJ RYW\DwHx*Cc2IU[5c)Д?Y֎shУ Ѝp;y(~6z>$=oc҇Ӹm]2CktCہk:4}0M@GifaPQdӓ@E f"]š̌ sZK<9C}qMO)ڽ70Q5BU:h4!um2,qaMuaX"du z-Z gE8蒍%Xeunxy i@CO {MrXQ`@ೳ(TAڀ4mR+AElI:eUW kU-qeEWKhɦk9\\s =1)T29g=l{ kwwK9iP|U)<}HU6hU}cQsuo Rc~t R^`.fhg`Eh7С~祧4¯ H6ЃtW B"mp1qDL"]{Pyp-.+UJ?u) Y̦\65=~ma\#yKzZ\,5nb?fޛ4:%}inG{}!=)TTԦPPy]:ۺNw R(!r)NHr#o 05Ä&n+k:c92껲gZR @K& 'wLdz۱]h>(mϰg~'?Ӑ0(*dUjVWS(O$\EEvX1 [uFU7Ot4n"/)u^ɕ<ũ>vv z_5{E\i9v1Pc-gvödPp|],:^c#EH۪zz$j#(h3l,Mm&Xh >[luZkåe9Bdjݪk`r)|Z#6 Թ4)5 yb kv&8A"]粀Ux)(Ba73r<8Op{gz0+hXZ_j^=-]CJ$'<~"xSp i1z 6b"wOوҞ?&sxg\Xxj6;Bx^(Zg'0LSi}To-% +an6VL'Hog3MZa2YJB?#]x|gN+dv{0PZ@_ tX4Ӕj*38{Io>U4h7ݍ3@FsұʧC.lϋKen7m)!˯F6uZR1@MTz\\t啮~;bur]U2~S6SX\cf|§HIEHƘ6oN\J9KUtSY\NWמFsRuB+81cSgE7K$ҵ:MgC-.#wiíAV?9Q^  dEpqUB+z3Lk#@a6WGWŮ^ ԖD+KPd )9Nb m+NI{ܼp!=T xW3| eIRE"$Kh_Nq$}yDk0oM*9bsu1ў/`Jn5l/cpO?Jg*"F ѹ~ƛXԇKA߀EsϩPmXk=$tfW8j{Rk%W>v?קNHn (v(?L =h13hJ%BaG+bh.=Hm{70irCl%\&sӤ4Y]naܔ Pu6¥Zu<`o5O/JMdaSyGeO=ITFHj.]}#1 '{5+~B7nBBaKjyMcӞP '2%do6S> (o#.z6wG+Ý@6 #blA>ijf=Fq_^EGYS{dh ; ֭~J0fܴJ`-t< 6JSi֚M#?b}pa<.̤eG}Qpmrq+<'=@+B)Sv!T:.t:wG5I\,2rz͡ K2J]\%8͇s!eQ KR%ڋا>7Ȃf[ Kc"= .h؍3\POHXĠeǁ/q-,W *N #TiQ`w9CgƆjbZkO7rtZ>AQc qVse:O\*@]\ЊO@*^ClpCNGٓQs[rx~AHo=g .s?8Xc4h3 h]Tȑ_W"˴uWoSa-'Ap闛==w7=3B{'Q턯Z/E;"f\MO4~@@lбvCf9C"P hk>3mAKy-[Qѐ fW7Vs[EkQ󉍲r+Kea4˸ ^9-lmdL~ٹH݌NYZ,:I2X;YyE֒@暡byV_e`gՎ cbDHG)fЫ4< .ed#w[&ψpf9 o䆥YN?rN)h0MBmif@9(ViSPr9irWRq NVj:SqBޏq)su2Md{pkG$҇G4;&!(qS2x[Ab YdBŠ{;&-(hhJ:ݞܵ+ FMoWA"+_GsbdxQ&v/ )vBK-:jWAcrRic0o0CP,%yBHv]S(?6lf} LζY %Jtn *a[F2?!(h]4HNӎ90gwS=Nl mv1y`.Xo-1 *6]qUMdnr2UoF!m5H{~rq2oH]gLJdhbPzC1ݵB.Ι$&ܒq;g ST42Bg"*f6~tiLbrѥ6+ 6էT;K|2KY(fN);+px'EJ8R&u`I#'yd}$RC%5Bz#sѡou7b`eU=95}r4\0L aNHKBD5^jZ±^=aNS{!bd9/ Tp$%f~3C :ҫuW 87TYUq&h /&@IIn_P [f6k^/t e[\xQu! )A6]ґDXv4Pde.y^XF}+ߡ dh.r3#y0-k`%hq˺A4å@ S;$ꈕ*n/%k!-P]G0,>g/}~Smc" UO;(18 F@Qէx lޟK]nG3HsbWS{ҴD aq)_h:ԂӸLIy z&aSF:B~m:QPIRuؠƫQI,Ǝd ^rw|HreXQeLl tuB8@>WrNyKO؃`()hkZqYɻv'ܰhul7aԍX7iSe2Rl1'}aT辧%2Վhf+I[@T! ԗ̳ѽڍ<޿)^zg 0GRqEsE˱L+QAZc1,>oUhWAlޅK *HqQ|Ktw?E{j44=s1*bx_+&8+H'4v_;o+39.ְ냓9B% ۧ_Xc"TZs`R.)Lw[v~E eUJոqmd4kG:\iNBe,:S 71\R ~֏5?W:pMjD\&Et D^}&u5%Uf۰4N<ܑ4vֲi,K! fx8tQoF]`?{;~G0KY&G-^.꾇bKZ\6L %Y\ B띎2@YBæ2<`󨅹RGRD/{sHYh:A褥 p$1r`[ J@3gg(A~>;5>;%g`1#|e-C.9{TxOdxXnt`п=C`ЬM򈢗7圹dmB}.nf275)t` '?}& ۈ]ehAELZ{?4Ip<uo\TQAlbHδ 3#$֐4Q#gߔ8.T 7SD=:L,$\rJ`I'<y^ K"RU! /':BNξ4Zs]Gc Ա+[#Ebni_mO~H_]q33abIB'` lUǹl]u ]̖,#jϲWVфa2aFTWnG}*gױ&kG^XHq|8@q>bib9j|kH?(]T(cxZ V ƨ81V/wM.ek7ɾ' W|^#/L_ڃ!f/XKf% HU7 A2ug?zAHSFOzdžnۻrĄhSLJi7ѱ>{~*c^,]&אxvDr:%bc"e;^'z~BI<+06H+Of,*)z2wΝ%lXu_"Pte>^SaNu2> Afw{cUA|m_lHrf`v^[r腔)dV^LocDC!@d_*HC. {mjM̽+@,7y yW߷/ ٖW|BTX茛ՊT#'՝?.ϿP|$3&EFljtVj!ӃCQmyJn\'\XƼ: jm~T0/w? ^\CmZG 2^l/4n.yxn^{ل}u0utUj&r뇰_NWκ<ڽ8ÐI".}UqVk[<jK`;pX %uT̯c|CIo )ͿRV~pj$ɤ %_0R>#:HJlk\E+D7g7q6mMoWJк;ބ@=V T{! ( 8E44KMn2V\զ*߇ :|=5A ]p@Tv4aVn4m9ɶJn'OA/j|KԴ+e;^FyvS5҇N<82;sA YeʟOmM` RZSXݣEbIZ}Im6&W Ὥ^)~4twӿߍgph-Rg:OEI5 _8 [}>t=Bk(ӠPyǘJKxx.3@#^70{pg״,D-wUG>,#*volG+]uTx_~˳@?ʻZ<w2D}Kbs䁏Qf>o?[&~FzYx{'A"K_f2_%Oؔ鑳H٪oXg\F?W8 4 yh@K:B=㛁C&wPmV~:>s>Y챕:71rH7J␘njZ2)32Ok+-N0 bEЛCȍ:ukŐ%/B^ T@e`uivmLcarR)!iνJ+oتе v֜Q1XKjX!_mog@Q&KG6D0O1)֡Y(bܶ l˙eߑF]On`]w_lu}2}DoVKؐkGժ{q$wA= n-xuEfi"qtC-\8ǯ{ER Av{< LF417zgqn5xJ< X$jaEj:KfAI?K@_k%S{8i̦1_ JB^[ &;1!͛p2D]~4'ͮi*xm]Rr`nxK)6ȗԂId~PrA v~䋜J 9W_k#[g;mv-6] T\tٕPl-1 FX/݂jZ,4#I &Єe`vF)ȫ qy,eSh~0t:qOf-?&:oG2wNvIϭ:?YLz|m2!懾H'\E>Y m/Hq@iųz>˓(ՊY vS`r'mn-lDWMUH_:;D񒹟6_h"34fn94t![cgRiF7믡WUb!uNj%y1uU _+}/-nRiL p˻0C&33tO;)8G5yҜ~ە8:~ _E5 Qh3π qmYP[vfkéamn pۥӉS̘4&Ч-yLYqV-!RF~ ]/I\ Acη cBY]^X!ڎz EkLX7 ZmaV H"]Jۢn3(8 * >˸7_GM:ǫZz$WSR d|wtq$(wlym[b#Z5D_"3EщW.0E&vah XCc$t\ xl>ף&*%k3PKЩK)}[tíڼϰ9(ĝӪiȓ2+Pه]A%5ǩђPtsv:z8A,1O Cyjy! LW-*8ѳ!uJx~Gm"v!~;^+AܡrQGgCV-(}:q6T.ȼdf.5S}.03gP5Z9z=JmL1(v@Y.РJV)+t&W80q+1*z=<(Gi&Wm l~B n!W벧E)(Rv׆B[0~?؏#6P1w͢zwɗx}J(B J@|jw=:Ð1؅2J|pŊRHf=Ϸ:"3+H|ƧBARξpo 'bjG.mo&¬oGP\ zSR(u[aEsu3\hY|TѶs&Px"l ]^=R`f5WtWUk݊؍"Zݯ*tܫ PP 8&o' mqjLךGMָ^%Ny* 8S_*RvJbjy0Z U5Svߧ&{9"6U1$ i-A/Z~O'zx떉nɺƁZ4˙t0|^JRa`]a됲ͫpJmc*)0ad:za]bl?1y emhPBkڛU'*j%nϠb8Pg[N`DW` a] TK7f5RǐL`=H79_qSIOzܞbDCg 0R9=F~.r 8FPO-;hVaSՙ;G*ጀ%fA`g6tFO>,ujLa(է4U:&F#)QL1nP k>twoOKݭl*2CUۈ4qE4Vԙ;^4_FaC&)D]|S' ~>o=Zw7@O;afe¶ ?b% w"L )~g}=q8,S7rZjDYY  \:N鷲P7p3)3+?&ʓWNjڕLF@~Mpi jh/:Es{0x!bC P&|K(+ώldd =yqQ>/zv %~6"kH=rs48Lksg$ײ*$Qhl:+*  fQ"uoՊOPR XI'gŷ"v)z`txV\X(p=j oiPɰD҄ymJMXzvl9Xz) . [bs6!3˷~]jS_L2Fޞ{{  4c-#ELGݺeQ{ ͹D AWFA*<|ZDytwTw|k\ R).f-~ƇFU7MM4T'SZþW؟UQotyLK_{S\LT> *=݈6"oeJB]Uk-9tVQyATس-'t%sq#j  Lc#om"Zʛʺi`^QY^MdEfgrovnvǿsw&!S~o9j-z/FJYnISTNkO{ T":_e Fa#FBv+ VoPL.,;frG i4g\XEvlr:NK·wd4g Lv5ְ H '@! G&j ~T0۱t~a+}f05Z_JrkaDy#K%ɻDXbQgMcM7}Awv6͠D,)eC)* TRl6\U*`?7HYYJd4b)@R=(^; $,cM!r} :i;%`PJۂcGW%|#:&enVl24/ÇΧ)L9lP3FT1>Dx_Rn>y@~O<܈:]8- +]ږӯ<L5wnqxϐ9 !J[֗*Y4ɮxXW'2ƛj@`j|܈}6pK-|[ZuL̥?o c Rm=4 wBO˞3\ /W;]|j=4~z~UHe_xl8 ;L-tg ,4Dm_v5pYw6-o҈kCA"*ΈM.YV_(aL9tE.j}}WhxAڃm bZ5ef]4u W+*#!!n02"·h:~p+c4\7D#=Onz%2,!Z$i[:ZD !a`Єk™Q:Na|;U+ª$W~K?Kb>#ըAu ro'BP۲T,߮μ"̡$4Jnvd|*B}g{B}n3OcJ7Ҫ:WaSUQLཏ|(,~i2 aڭpлqCy^b U\m[jUsKwih!Ԋh%<;?w wßf[$%*Ed.c6|JQ}UَCJɢrP<ϴh+$㠈cB ^Y3R;{* ~2ӍbS M=h|d}NPdbW6TBx5D䢂wY[ZT<I<j1'  DSOȊ,WW}ҟSA&D}/,իmsdĖ&qXD L>l]LfE&h8vGiQ=q@gjT?_ZWw؅ UK&ś-pSkJSn ^F<DZ#D)[Ѐ}!h ;Z|54G@{Zb0fnwPpClԗH^#K/t*M'Lчwϙ:_ 24)%crw-[o MsJMe8f\#Wl=CQK:؊ wfQ\ź`5֡,KEx RP?ąt^CVo Џ|K; jT29]w^gU./M#5R̻hdx+? \w<1B 23G ׫NL]a{J|);y("B®v(E<xZL4Tg&ýO=~8vF<#چ)MQb c|I&*-o觻>?߿83ˤ$y\ڸUw&eE&fAI,Zjfh'Rp=a8{xVOiQ5;EХajPT}[6'o Nʻ3K+|6}GY>a}w*nvԀ^V{@Ń4,R9įpI -7U؍KsÉsߩS;jBF&_dZ+Ôuxr+JfۓuU$;<+պdJNB]/r Z]#9^۬&No+Yd22-G B\|i̅it ^\X OQc}!XI)½8t"d&,Չ`XEzo;HB5l zi^?)|ff`]XaTAX1b?݆;u˩mqMkAenQ8#g)>cxafX.M84IfIm\JV"{-O),=ج.°.[+W;r!qFN, 8#W%RKT,h|pi\ύR!^nFΊV(o YZ