python-2.7.17-lp151.10.29.1<>,'؉_wc/=„{ Ց*d_' EAOCۉMRo+:_BJ${.|jY}}-g5DK X4cI9(Scr~07Chh(}7(:V$ N->s]$o=Z[\ZH q{—|P1I/R\WЍDV[o%5!^bE=+JΉW3hw{po'f^>C ?d   1   &,    X .q / 1p4m7j79:0:<(<8<E9>E:DyE>@BFMGdHI,XYZ[$\(]^ bcdeflu,v wxPyzCpython2.7.17lp151.10.29.1Python InterpreterPython is an interpreted, object-oriented programming language, and is often compared to Tcl, Perl, Scheme, or Java. You can find an overview of Python in the documentation and tutorials included in the python-doc (HTML) or python-doc-pdf (PDF) packages. If you want to install third party modules using distutils, you need to install python-devel package._wcold-atreju3openSUSE Leap 15.1openSUSEPython-2.0http://bugs.opensuse.orgDevelopment/Languages/Pythonhttp://www.python.org/linuxi586>t0X0X NN,CHH-&2v2vx_Z^ WWL `C`C=IP4P4;&LLU U U""K#VV g Q Q-7z7z;-- & k k 6 6 `&& "/WWOD<<&&>$;;@M47_e v n -8;;7&& <II:O=O=;__}}1*AA큤A큤A큤A큤A큤A큤_w7_w7__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w/__w*_w*_w7__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*__w*_w*_w;_w;_w;_w;_w;_w;_w8__w,_w,__w,_w,__w,_w,_w8__w,_w,__w,_w2__w,_w,__w,_w,__w,_w,__w,_w,__w,_w,__w,_w,__w,_w,__w,_w,__w,_w,_w9_w8_w8_w8fd6c6e5b098ade0aa1b123b2963e56728eb3619754881baff7fb10fb165becdb53581b8108c6fa3dd1656cb973069f7bbcb2310a9590b12249b63cb6e9f61cec53581b8108c6fa3dd1656cb973069f7bbcb2310a9590b12249b63cb6e9f61cecabd3f646419f3a33f64814342bb894047bfda3ec695286aa2b07e340700f733f07d3b4fcf5b4e68a3863c4cc41f95ad73cdd36477b93f4e69c4bd05567f2a04007d3b4fcf5b4e68a3863c4cc41f95ad73cdd36477b93f4e69c4bd05567f2a040fa3f60506840cc9f608d660fcd6265dbb22b53362a4bfdd98cd9c98876927308de3e3862f13f27c9c8f7bbb8ac273006b775d449da381feb7318be9e19135db6de3e3862f13f27c9c8f7bbb8ac273006b775d449da381feb7318be9e19135db6046a34799e33a47832a21f34ded777c64616710f52cc75e7116796442c05cd43f3a2cc8a8ed0476433d1cd19a39d5bac27980701b348d5133805c43e9a25d35bf3a2cc8a8ed0476433d1cd19a39d5bac27980701b348d5133805c43e9a25d35b228a008dd77f0bfe90718c9577fab61ef96b7adb4e608c5492385cea0c206e2db24bb11aa67efd0a19b2001542a13c5e470708dc635c9b969670201a4f8b3442b24bb11aa67efd0a19b2001542a13c5e470708dc635c9b969670201a4f8b3442b708a282a1e9d211cccbdcc194ec3c6f8894a7e9ae003806b933f2c0cbde5f23d9185be3c043182fed16042ea52da3123216306f292b3335ddbbf7747ccdbf7fe6c75aee90ea924fef5a3fd367f9d064e95c812e563e70737d9e6c3d475b5870af71194b97feb43ce6583f4f2fe8f894d8df89b2565bff32daecc7c42f7b0eefb76d47e0b9601aeefcf941142ca679e08013fa5928ba874cf6953094c2268d36b76d47e0b9601aeefcf941142ca679e08013fa5928ba874cf6953094c2268d36e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555b9e6cdc11037ce1d65bbecc854ba1d54768ace6a28774344d846fdb0374080a5b9e6cdc11037ce1d65bbecc854ba1d54768ace6a28774344d846fdb0374080adf8c414bcf1679eec7aa0bff235cdf98829730da9b75ad50baa432b7ee87d2e497ad4df60b44daeef9aef2a613c5c4062ab1b33a308a5f55a77b83c0acfb001197ad4df60b44daeef9aef2a613c5c4062ab1b33a308a5f55a77b83c0acfb0011b379c1e0ea1bc3db50745e3700fbd617b58424ce07f96dae45ab79ddc56d7b307bff703c50058433086569eaa5736d42fbd97aa5b512927730bc04317972dd147bff703c50058433086569eaa5736d42fbd97aa5b512927730bc04317972dd147b22ab3d374af60bb0eb9693c736e502b0e530263916c416611fe5ee8790e3ccdeff15d99c09516050ede6f3023d922d56f70e628ff562d6d28cd14416dce2b6deff15d99c09516050ede6f3023d922d56f70e628ff562d6d28cd14416dce2b62b29f5758fb7a2b3e876794c563b53aaebb88529ea40c6374975be54f83237b87a60fd80307c798bbca34ce3014b4f2cc053eb1d14b7309ec17a7a2a516f712e7a60fd80307c798bbca34ce3014b4f2cc053eb1d14b7309ec17a7a2a516f712ecc530147bfd552b8ea9c2613f7956de578196a3129b01d73ff50925094af826ba53a7cb3002d6675f0afa0f7e9ca70722411e7374f31e8b85a9ccb8ae25c64c6a53a7cb3002d6675f0afa0f7e9ca70722411e7374f31e8b85a9ccb8ae25c64c689bbcb75081406a2dd0d728e09138a21f469634cf7aef1e5c55f2779a9a6b763a8133d170528d723b8c91f4b7ca576e99479f33b192016c327544ae71c5b6f5fa8133d170528d723b8c91f4b7ca576e99479f33b192016c327544ae71c5b6f5f08cca8469491cfead102a6bef69be1afab7529e129001a4ffb31433766a4335d1f71f0731775100ef18b71a52ed564f56fd91d2c84e080f258cf23962097cd821f71f0731775100ef18b71a52ed564f56fd91d2c84e080f258cf23962097cd823f207cd262365b5c64246a76caf4fe319255eb83493a0985976607440c2c19e50650e9e29e8336c316180f0ea273c6774d7ba19c30e65db1d4409573f4e212180650e9e29e8336c316180f0ea273c6774d7ba19c30e65db1d4409573f4e21218ef974db90bc549f14427a792ccfd7c6bdade19f281a679e2197cb18f3b13a8116aa921bf3d88ff4f32abb83397772f11b242e74dddd1842f86cd92302d9f95f16aa921bf3d88ff4f32abb83397772f11b242e74dddd1842f86cd92302d9f95f1c6ddc76661905a142bb489e72a19bb3c4ec045b4193656518acd4430f8ecbbdc833369a9ce1c27ba522c685720ac7462b87a756076f7fedb77d2cb4901c7e223833369a9ce1c27ba522c685720ac7462b87a756076f7fedb77d2cb4901c7e2234e721a412fd4561c75485a1c4cf11262aa5d82bc68bd5d984629b62b398221d41f7e6f8f588c48430406ddfa88ddae4affff0f7b6b71460c56e90ed7428cca8b1f7e6f8f588c48430406ddfa88ddae4affff0f7b6b71460c56e90ed7428cca8bc622e4e53e332adaeb9a9ecd06f109c319be5146eb7de4b95c8bedc72cd819fa9dccf7c1538b213595759c070d578e369f2692deb340fcc50f277d8b05cc74dd9dccf7c1538b213595759c070d578e369f2692deb340fcc50f277d8b05cc74dd83f7d09faa6a85a2cfe48f30e75252019da7356c97f5ff8a50a3db246c55dcff31a8c92fe88b360a635d29e15eeebd67b29967e714ded2e4f20a035211b0910b31a8c92fe88b360a635d29e15eeebd67b29967e714ded2e4f20a035211b0910b832dd1a240df8ab4bb34d8f2597591f614a5312faa4a867e287ad4c7bf29980812f32eb524f69ef24407b953a2af787d9c8c056a431e9c3d57df685853444bc312f32eb524f69ef24407b953a2af787d9c8c056a431e9c3d57df685853444bc36ff2b127c2698dc1384dedb8b99c70d305bf7511cd9a51be1a98c8c97fd23d695f9bd0f6ac617ecaaa2b358e15986a66db376ad3f138689be17ad4e0d9e62d855f9bd0f6ac617ecaaa2b358e15986a66db376ad3f138689be17ad4e0d9e62d851c57c2ca2176e7d7b88e983a86cc904d22f480ccf5f124a213728b51a961e9438818f20d843cfb12fb088f654e98c9b7299c308b75af5bf76aaf3e88b4e5324b8818f20d843cfb12fb088f654e98c9b7299c308b75af5bf76aaf3e88b4e5324b20a74746b7619ff8dc09a2538bef118bfcf001908524d77d9dc8d831a19f03c96ef84f8b6a8dc96502643c9b627da0453a7014fe0d196fb1d2ec03d2b7d2b3116ef84f8b6a8dc96502643c9b627da0453a7014fe0d196fb1d2ec03d2b7d2b31199be4f02902c038f1558b7cb9524bc4b42a6564fa6616f070b718b905ddfe62d445ec7d65fa23f7f1aea6c734835f4c121d4d9d439817b7a91d6e687a818a89f445ec7d65fa23f7f1aea6c734835f4c121d4d9d439817b7a91d6e687a818a89f65f3f64e35c9db4f85672bf2193f645ab2ea2d3649bb28eba5d83e6a3f804d4f06a264924eb19fdf13eb3a0aa1ac2a08aafcf6a8f8867cfd5aed1b39ea8492d906a264924eb19fdf13eb3a0aa1ac2a08aafcf6a8f8867cfd5aed1b39ea8492d95915ab9ffdfa1e5299c7512175011a7ced2bc924970de1eee645bc3943c482a0388dec34f1fb263e33f89aaeb1c61b655781fcc8969833d5db8eeebe6abe44d5388dec34f1fb263e33f89aaeb1c61b655781fcc8969833d5db8eeebe6abe44d5cb65b79ad7a67f67fc49cd170648d9e2a4dd7cd72cf4a013a032f680bc2cb738ef4d8f46c69c1dd3e9fa9d99b627c42125a23d394dc1a8053d53b057a4f4ea35ef4d8f46c69c1dd3e9fa9d99b627c42125a23d394dc1a8053d53b057a4f4ea35f97b0df5f745f51f764634e3c0965295f2d1643d12ad8a94ba0e1a32301d390f0b961279509f82dd2044b7879901473eb5d29f49ba337b1914a8367738ef0d680b961279509f82dd2044b7879901473eb5d29f49ba337b1914a8367738ef0d684f05568dd9fa927ef7f6e7b0189567e3d46b8a70a6f9eedee80d2eeab7fda7cefd3b77723433e0fe16ab819bca5eee3cf51cc3fd4b2843cfafe41d1a9c0dc993fd3b77723433e0fe16ab819bca5eee3cf51cc3fd4b2843cfafe41d1a9c0dc993e3850d1a493b6b958e2bd9f66ec8b62a0d72ebb7c3eafcb83cfddf4faf920dd237fb57fdf743c74b9ca1cc7490e09a40fcc96fe1ac2a3ac883ecc951a8a5af6537fb57fdf743c74b9ca1cc7490e09a40fcc96fe1ac2a3ac883ecc951a8a5af659f02d8b2d6c2d8b2ed933c580468bd860d56fd24548ff7b503bb4335c3a07233db9b7279bab187cf8b3cbd79870949ce920de0524527a819fbd6be605c89c472aefe8d659a41f73ea26b888c748fd2df91e035975d44f68bc8e182cd8ae06a43452f87be531e5c80bf2a17c869c26c8a5dd73d92083d31dddbb315229fa71d87f3045d9568723ec91122dbb7be73e13319065bc2ed3eb158f16ef9ce1f151ee3a57e80b8a0d16549b7a466ef3585bc8f13c1983dcf13845b22be1a748be3a0e6d9ef9ed2dfd3c25f125abcf1ffd91e55526256ab8a0eb75001aebfcbb725c41bd9ef9ed2dfd3c25f125abcf1ffd91e55526256ab8a0eb75001aebfcbb725c41b5186810c169e033eae41c2010a89c982276999b94f1d4cebc5b9267f8e97ab70bff69800128e7a15c7c2e3febfde1e3af3e50f4ba26e19a88a0ed1ce5fb69168bff69800128e7a15c7c2e3febfde1e3af3e50f4ba26e19a88a0ed1ce5fb691684268c68294b00b82adc2dba7e600310cb45c468e5780aff2455eb8103d21d2823bf455fb52ac1371259aeba2778e90a624911f893a59b8f994d1c1a2dbdb99403bf455fb52ac1371259aeba2778e90a624911f893a59b8f994d1c1a2dbdb9940e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85541fefc77594b72faf563a72c761139dd1063bdc648611448acae5b3dbe88560141fefc77594b72faf563a72c761139dd1063bdc648611448acae5b3dbe88560147532d524864d6ad2aa109f05f7bf77b68d48772fe421efb29605e23bad8ddc02d9f498a87e41f635f0706a45e12028f8d8b435f711289eb092eb3c071420a15002ed8351e6e83c1404aff4ad823ea3b698c5f71b4774c775184fa6097ef6678b86371d3fc23f7b32d2c4fd4728e91ad1dc0fa95f253ee27fad4ba9025cd8a9f682dce905de4c70081042e40cea5984a501cee5d66ad011bee0fbaf0b562c334682dce905de4c70081042e40cea5984a501cee5d66ad011bee0fbaf0b562c33437b4cb47babf65937b399f9dbc7fca98c3bf0528f3f0de63e3774c4326bf7875a9e456bea2394c09ec0f51d14d7936814ebfdbb1d2bc87743f5edabea3e04b51a9e456bea2394c09ec0f51d14d7936814ebfdbb1d2bc87743f5edabea3e04b517d9827fec848c29932e32465e761271475a0edca1ea0b4f2961e6d4521c632f36acbb5f852841020b71aa0df6d759b63776673c084c6c2bd56ed97dbeb4401b46acbb5f852841020b71aa0df6d759b63776673c084c6c2bd56ed97dbeb4401b4e10c9954f20298e5ba4d7a6628b9df60f8ae907e9a7336293330f2fbdc81e1372a8c29f3159ee7d630d2c54520dd263d32456a0008034b2da40bab17e622daf82a8c29f3159ee7d630d2c54520dd263d32456a0008034b2da40bab17e622daf800b137ea0cd5d5bced4ad9b4c0665a83efc3b3039756eb11dce285a65fd23b0fc36bbe05af0969ed00219cc9966896a46a13dd03281a83d2ec9e375e5d6f6ffec36bbe05af0969ed00219cc9966896a46a13dd03281a83d2ec9e375e5d6f6ffe7e90a937b6d21b59029d2b66b1276eed2451d5f5bdd115aa9b16175b581be43adbcaa1cc20ce1c6ec3d36f9e8431a2f27efa23d87369bd5ec5c1d4e051310bc2dbcaa1cc20ce1c6ec3d36f9e8431a2f27efa23d87369bd5ec5c1d4e051310bc216da7063b627f6ba101642ee6a3e8814fa88b3ab1912bad182e72caf48e85d877ab0ff43c8d120dd0c043e302122f27a96454d7d1ee6fd735d9cd7ba889562927ab0ff43c8d120dd0c043e302122f27a96454d7d1ee6fd735d9cd7ba889562921ae0959ef8161b6a63e22dd21b776af8a6c040135d4c7d3bc721dacb5c99d6c407cb5521398f00adfb966cc30f10e9f2e499dc82c43ba11eadc4f9e6e19dc8ad07cb5521398f00adfb966cc30f10e9f2e499dc82c43ba11eadc4f9e6e19dc8ad1b5ea00f59beda20d18f7c4b11155adfcd15e52454ecf0e2f1ae2b4222b4943dbf4c28a55efff6380f3dea3dd3383a2b8603d9029ed628031c243887a7e4ab5ebf4c28a55efff6380f3dea3dd3383a2b8603d9029ed628031c243887a7e4ab5ea77d71d6be6f9032e6b6e5d2cf6da68f9eeab9036edfbc043633c8979cd5e82c0fd1efe7c35f58f51ba92201a4938e3dc88407b3f91f7b835c288bcfb5154abbc1649ee90f8535de061b77e5db7a60bdd33daa50c5fbd48f54123fd1c2127854rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-2.7.17-lp151.10.29.1.src.rpmpythonpythonpython(x86-32)python2python2_split_startup@@@@@@@@@@@@@@@@@@     /sbin/ldconfig/sbin/ldconfiglibc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.15)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libcrypto.so.1.1libcrypto.so.1.1(OPENSSL_1_1_0)libdb-4.8.solibpthread.so.0libpthread.so.0(GLIBC_2.0)libpython2.7.so.1.0libreadline.so.7libsqlite3.so.0libssl.so.1.1libssl.so.1.1(OPENSSL_1_1_0)python(abi)python-baserpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.72.7.173.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1___@^@^>^>^;^8 @^.^g@^ @]f@]@]]]d@]d@]@]z@]V]y@]9]1]\t@\\7\7\\J@\J@\C@\2[[#@[6@[@[ @[Za@Z@ZxG@ZtRZp^@ZSteve Kowalik Matej Cepl Matej Cepl Matej Cepl Matej Cepl Matej Cepl Tomáš Chvátal Matej Cepl Matej Cepl Tomáš Chvátal Dominique Leuenberger Matej Cepl Matej Cepl Matej Cepl Matej Cepl Steve Kowalik Matej Cepl Matej Cepl Bernhard Wiedemann Matej Cepl Matej Cepl Tomáš Chvátal Matej Cepl Martin Liška Matej Cepl Matej Cepl Matej Cepl Matej Cepl mcepl@suse.commcepl@suse.commcepl@suse.comTodd R Tomáš Chvátal Matěj Cepl mcepl@suse.compsimons@suse.commcepl@suse.commichael@stroeder.commliska@suse.czpsimons@suse.comnormand@linux.vnet.ibm.comnormand@linux.vnet.ibm.comtchvatal@suse.comjmatejek@suse.comjmatejek@suse.commpluskal@suse.comvcizek@suse.comjmatejek@suse.comkukuk@suse.dejmatejek@suse.comjmatejek@suse.combwiedemann@suse.comjmatejek@suse.comjmatejek@suse.comjmatejek@suse.comjmatejek@suse.comjmatejek@suse.comrguenther@suse.comjmatejek@suse.comdimstar@opensuse.orgjmatejek@suse.commeissner@suse.comdmueller@suse.commichael@stroeder.comschwab@suse.deschwab@suse.dejmatejek@suse.comdmueller@suse.com- Replace bundled wheels for pip and setuptools with the updated ones (bsc#1176262 CVE-2019-20916).- Add CVE-2020-26116-httplib-header-injection.patch fixing bsc#1177211 (CVE-2020-26116, bpo#39603) no longer allowing special characters in the method parameter of HTTPConnection.putrequest in httplib, stopping injection of headers. Such characters now raise ValueError.- Add CVE-2019-20907_tarfile-inf-loop.patch fixing bsc#1174091 (CVE-2019-20907, bpo#39017) avoiding possible infinite loop in specifically crafted tarball. Add recursion.tar as a testing tarball for the patch.- Add CVE-2019-18348-CRLF_injection_via_host_part.patch to disallow control characters in hostnames in httplib, addressing CVE-2019-18348. Such potentially malicious header injection URLs now cause a InvalidURL to be raised. (bsc#1155094)- 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: 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. 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 mode/sbin/ldconfig/sbin/ldconfigpython-elementtreepython-nothreadspython-sqlitepython21old-atreju3 1606907747  "##%&&())+,,.//122455788:;;=>>@AACDDFGGIJJLMMOPPRSSUVVXYY[\\^__abbdefghijkllnooqrrtuvvxyz{||~2.72.7.17-lp151.10.29.12.7.17-lp151.10.29.12.7.17python2.7bsddb__init__.py__init__.pyc__init__.pyodb.pydb.pycdb.pyodbobj.pydbobj.pycdbobj.pyodbrecio.pydbrecio.pycdbrecio.pyodbshelve.pydbshelve.pycdbshelve.pyodbtables.pydbtables.pycdbtables.pyodbutils.pydbutils.pycdbutils.pyotest__init__.py__init__.pyc__init__.pyotest_all.pytest_all.pyctest_all.pyotest_associate.pytest_associate.pyctest_associate.pyotest_basics.pytest_basics.pyctest_basics.pyotest_compare.pytest_compare.pyctest_compare.pyotest_compat.pytest_compat.pyctest_compat.pyotest_cursor_pget_bug.pytest_cursor_pget_bug.pyctest_cursor_pget_bug.pyotest_db.pytest_db.pyctest_db.pyotest_dbenv.pytest_dbenv.pyctest_dbenv.pyotest_dbobj.pytest_dbobj.pyctest_dbobj.pyotest_dbshelve.pytest_dbshelve.pyctest_dbshelve.pyotest_dbtables.pytest_dbtables.pyctest_dbtables.pyotest_distributed_transactions.pytest_distributed_transactions.pyctest_distributed_transactions.pyotest_early_close.pytest_early_close.pyctest_early_close.pyotest_fileid.pytest_fileid.pyctest_fileid.pyotest_get_none.pytest_get_none.pyctest_get_none.pyotest_join.pytest_join.pyctest_join.pyotest_lock.pytest_lock.pyctest_lock.pyotest_misc.pytest_misc.pyctest_misc.pyotest_pickle.pytest_pickle.pyctest_pickle.pyotest_queue.pytest_queue.pyctest_queue.pyotest_recno.pytest_recno.pyctest_recno.pyotest_replication.pytest_replication.pyctest_replication.pyotest_sequence.pytest_sequence.pyctest_sequence.pyotest_thread.pytest_thread.pyctest_thread.pyolib-dynload_bsddb.so_hashlib.so_sqlite3.so_ssl.soreadline.sosqlite3__init__.py__init__.pyc__init__.pyodbapi2.pydbapi2.pycdbapi2.pyodump.pydump.pycdump.pyotest__init__.py__init__.pyc__init__.pyodbapi.pydbapi.pycdbapi.pyodump.pydump.pycdump.pyofactory.pyfactory.pycfactory.pyohooks.pyhooks.pychooks.pyopy25tests.pypy25tests.pycpy25tests.pyoregression.pyregression.pycregression.pyotransactions.pytransactions.pyctransactions.pyotypes.pytypes.pyctypes.pyouserfunctions.pyuserfunctions.pycuserfunctions.pyossl.pyssl.pycssl.pyopythonLICENSEREADMEREADME.SUSE/usr/lib//usr/lib/python2.7//usr/lib/python2.7/bsddb//usr/lib/python2.7/bsddb/test//usr/lib/python2.7/lib-dynload//usr/lib/python2.7/sqlite3//usr/lib/python2.7/sqlite3/test//usr/share/doc/packages//usr/share/doc/packages/python/-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:15217/openSUSE_Leap_15.1_Update/076eb1e5b140178bf1a2ce5eaa91f614-python.openSUSE_Leap_15.1_Updatedrpmxz5i586-suse-linux          directoryPython script, ASCII text executablepython 2.7 byte-compiledASCII textemptyELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=2e7e74e1babb0d621b3c935e982dd81db622b766, strippedELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=27abf479ef667edd1051394ced98f02da787d846, strippedELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=dca7b844d51571919c0924532ae7ab503c546a43, strippedELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=e1cb3363648686e8480393aba709896b47e453a7, strippedELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=5ac61fbb71176a5c3697861c1f64c784b45854a8, strippedPython script, ISO-8859 text executable  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`jrz  RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RR RRRRR R RR RRRRRRRR RRRRRR RR RR RR RRR RRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR6:!d?:autf-85f66f9bdb02f2fba219abfbfcac8140b721b15661baf2a9b208c71a4be297b39?7zXZ !t/2~1]"k%js) Ӛ=5e&P%Cn>PwWNQb~ *7b.QuWC`?=>Oh afhi z5܋-Sy^hz4 ɜİj6A*sW$ E۪S\oL eB,yuFw/"Ag_S=dUJ!!UPHv?4BòĖ d\S;X}+%DX!S^bjB0Qϫ$($Ӫ bD[oG1?lCc'*S]㾫IzWK~;Ϡ+Ԅe}܇d>y'U6Fl;ع89:YP$ y %~Ai+b*Z=GUz^8`gGjG;3'wRm+c+L%ڽ|xٌQn\&vvve+pl@C<k9dŌ ,'wKiW"3[/$"[x!ܴɳd$-b&6ec2 (RhZ_Iau t7  &NDwϮQlyBQH76U{!]EsvG)rCGKsp )@wԶ @2Uz< >!ȴn ː;=gLUJ" |#<4q05&!‚Kdd_]W%f]ɑ n럋yl sxhX Ӗڛiuf qX䉳Ƽל巂&U=8x-P*dO0 XE1oD_a0QQ9 KҐx f/ i1|jlI?+/E͉c'7!>[.yi)px͜?q_(ZuSnfk\^m\ Bo҅>a^ }Xzu $-IcӬ-,םb3?:DH? `8ǀ `i@f|؀j8TDׇ?5*iՆ랇J+t29F {ӃE _jRh(A*mkJU^hI8T5^%s$r/;vJ|f-4ZoNxD8M*"Nuz,gF!8tФdQ@'Ԙws~NoN$t晗5P<. Ar[x^.'! QSYh=E/Rq\SP-?*??$D G ,LhHתpVpZ4ǯ@}<[-a $X;}JEqcB(-ߖD)cUvDvr,׹ޟG#TlS}@,w{dg}8*gJʑbI gK5]q x렃NH Ks2Θ%iy\rSD0 shӜYn-DYh1sAQM6d#f?縐)Xl="(s߃"e `k (BDfD!{IƩG/؆\?Q$1y|t\Dd)R~0~Gs:*7,na|(?l|5ܽ)6o`F$\ۧ& Oފ$tOVebNL]Gd"|,%d>ڲ2?p ً1ⵐ{]= NީxTœy}yZu"_ה]W P;&_^xQT6u8@"3N$23i{:jS=GQD([ԟAY@qJ.I]Њ陼vo->Fhߺ>yC^%*Mv5z'j?}W͚!KkcSp&FD,N9>wNIOo]-k&I1{/DgT (Y%(c<@c濫9DzxILKqdZ_A\qszgO#1/b- 4*2@a׍0j9?I!vŠ 㣆R@Xk&W˒m@u[{bw oġ.`&eI>e 6 6hLGn嚁7*׼C6dyWր/] $'BCUqj5u~rT޶Bć| BtH|67;,SzAeA.  _]-ȣͤ}Hm~@5 yK+WBxevRQj.c_Ζ@hAa@DkX;'1*J8 5SŊݙO >Eȶ2Ъ=䋗>UJ̮%H6'0ր^;b?I@鞫7~"fAoP=S@>P| rX'*j<;Ҵ$~n'6x-#.,5OP4ME.@a8כ&HWYٿ?^N; d;W)Yv\a(}Λ,l{|TX,SJb64,)P /F"dOcxn!e'_<%Ƨm`wWlςhpc[cC,=P8G:$uu/@c^Ǡ;OM8`>!φX.k2ZT7/j6LHJY<ډEl6)ALEpqG4GgAM$EKa Z8FػlRZFI 9>"tRX/Wb_r%E6Wosz@Q˼aL"eB}.OSP].x[e/J?S1Z;c.*`8 GiR_ TťlL[wk\~]Jf \ #p<ď.4e!̂L-FP Y1jMQg,y/ e;Eb2?[@t0kdV;rLB*G<권n%?'SZ~ m O“練>W TV=O''~,;K:w\H‘EQ>S޹֟cEڛ">9/Qm4M)dCKGF_j2aT@?dt8N&uzj:Ln<1E42^q#Ybl ,F,;48B! 7d|oidwglj<%&MwRNen+mzT Z%]_g:p5t# nhe}!͙ Bbj Xdo({-'bL:p>Bxp{rU)9(n9 !Zt~ȬaJ1*bR t2/` =K- ᎣK'دLM\Ig 7xatT⍉Q|#;ܥ̩(c;5:19 Lz$Lu K2&MMRyt)4Eq\OS$QX㲟$YXvsD WQv )O+<j (m-zd,,ù2ҝ;;*Ikɦ&FVwd3 N A-)gduH vj~b'7mԦ?jqI17!HoTbsfoMA/(1MX>03O8+?[=@V{uLf8m-N?KRF x ի7Mk5RC4%68 Xd<š5_Dp$w_dߗ>//=d$.i;@_KY*O nLQ7o `U2_OFބ@aI#(<(ѨK,A^އEy7.UeA*:x"V@1HE\]jd$awB\׽ ;POf FtK-8YRηDz>ӐQ~Fڞf\3DV^$7`~PGj(D-s(quUDup&TBq[tȣkS mty@jjmvư_Z ;DJbA$b6v+/yC:h7hY^ ܎,XAkzR¡{>.V04X6[9,>*/ .7^5|z>kNIDZg{)717BʗbIze*aDO):&? dF}pZin#yF˕ m~ӒL31鲥+rBNQ%$hyXNX [Ƨ0Ҁ* rΩ` &\LN/֧p5!]?3_D2a#{fMvs[c[Q [K7.tAtQ2J4Xrff"SIr3vx︮yk\0|ݳ qW;?Al-?0$E|{UQ?2];!_eW:z! |:{F~f;P+|c~JTە@$xl7&a.9 $'R(轤{?R44D s-B cm*gh#aB,4> E.YKd7|O>M -$hxA@&_ aQdXآ@^d#4F]>~o ֭GxX7+/>$e3ҩeu6%8UA@dZLr.7kd߲g;'38;| fSJv5wbf^2@s[k_I]l3Yxf2ih=9ߓ3c<& "":Ka=B,UV&H)6L'E hGДItdALqpY ÆJkB4-MJ8[ )Mh?puƧ-a2H SC^Vl+$4d;9 υ &^+T#<*.! UPtk©"(æWVˡ E DRS0LRhvإI rEo2F<܁ 6𪵩xi~sfk%ͻ|Qz& )VSaxkjIp$!نIGH,a,19K>syuQ_n8}@|DW><ljE~q0)SxG  ͣ+!_E9᠃b&5 GЌ+ϪX p&)RcovO@29WGKN8E[]o^';*T}]QRHi ?ͅ*Z'KӵaKbLnyl00v.ׄ;g $U>Y`m" @r)]cGc=J";k, _FHLb a{A# ;cYN'E\w|i蹏~uy/Ҙ Ot%~ ^=ѫ_Q''EE_kg*aDmzAWQ ^XPͱ sw>{4"*@/;Buf3&{g_WAg8iƷwO\$aXUc%(p{LK'?gi\KۈGܖX"UIED)&-%"̡ N23*sx:rCl~> l?;+EpEm\|YMg0#q@$v,!qi N<9{u PM ܬ@Y( &C4G +Dlכ#ojqGb(\yqgœOOшw?sprrxl=Rm0*Ti2,HFg*Ϟդk95I?pe8ޒְWWWr$'UPBp+Ka>` e/"1pH*!fXIo6:q .Łzr$g6OLˆ~DVbO91&#gvdA \ck*nxVWP*9 L[+~hi+`99Txpaj$p\%*oWwѢzT2s Gx c1H}^3:u wXD #KA3DJ%Bg洲U"x#;XI]9M Ќe민A IO[ߣ+!i0ZU0/K@W".CX%q{9*i). N镉@^73a8U!+M _P'1fw:W? 1>8 :(yW$ e1|͞+pB V3,(ʽ]kTT2{ iBȪ9Axʜ́6"SY[yQLD694ԣڿ `"SFF5 IFG2pR\X́Ya ClV+[ҩ'~B ]2YqEߋnp*h?$?g\h d-QddgLCKV}wȾ6[(:Bv7hmJ.:eZ 8Q,W@y )umtQejVv3-2Px=-ϫ`VN]~)N|LHږ@k[VyNkHmf$Q^K4#E{ Ict, l Wx? ]Ӯ@f39S*=^t1Q$77'OOz2yj i.RΓ^-cQ^˲26ye/]DuӬuiz0!SY:4XsL=r8Ui @stO=%cT-tܮfb"Gن:9[lH9lO9s}#~O Ll`os ]{m}!ΌCksUceς*WGqO9[}ida`^i f֐ڽb1Bf ;H0,ƋP>ӀJރEkfkUsD7[9D#G@Obμbo"X@5")j+M$AX<~EϠ=I6ݒ)xvJ7L<RT:wB7 P2jf<< ]ύ"M*rLS`E Ozթus$gQ}-tL1exhQ()& Nn{~"X?g|!&`#2y^frYgqyptʶi\-oP9c{E K)Oe ~7d6^ިXk!;N5!w؝>SZYFg.6f>KIND'~=UV11 3RqȧAyOe`UKP'kA$}zX^ n=~1qؕ&1%8H ª@Y|^W JϜU~;mi@/{{m;, O2ƶ CZlE~u GQq=ńE~F Ey~mF 3µDfUj-C$R?򴟕όi5L# e*N-4}HmЏ3 T)YMb."Q w &J :6Г:HJκ CE `IgNE9Zb-n"#7#ՀD%ŅD2;7d-|ډ vrEV̩xz+޽l!oCyb>UdqaKmU 5(u]`D\aQ  䡖ߺQ8EY]xk SR#Ih <:wW3%HQ>uաVbs ֨B8VkYmq$ ӣm%~) |$EߙVw$?@yfv:7kȫI3Ht*lh-R_yFY-(6ɢܳ7hc zl_,~\9L (sk+Wm<̵+tU ,(wMI:7,wXNehOl px |0 p[#K}Dc2=k*Ycg`o!Yæ㟀<hu)8RE_v^Hٯ>eJ?eZ腉Apm!ZqE`9>چi:N"Xw]b$uEL:o ~fa_ 3֌ܚ72!A<Lfb+ER slP>ݶEf`Pl$Ti5d )2D.&O5tBӺ& =v䆧E?޴8YVHCB' wͣ."W9enr3XiMKYxg]o (G!Z]WlX|Vdt88ZWS 1>]6+A6dFBS@֥ ~DA&e z۩ǟAH+E㠄Np֟uFHsƝ)kNϳVa9%SE-8Β<,ni(4J,އ;TȽy; fea:A;|5O\R-sȠo[^}z#NW„03<΁fo՛3ea.Kyd;*N|O8 Fa:hKH1^} +ވ޴y0 ê0(8(xJO0vOg({B(roC9Y7]a{P MWpfZkuЈtc&j|EvoVU ^%)0awX~&]JYcIQL q^$iz7\q^Q\k4ðτfś1BՊHҢ;{+oel@2+oKSeߑo}Q#L0Ջ_X\#ORMkT"(a^)4Y϶؍=nL&k+N` lLḏjP-w"sߏsl5LU˰QbG#{01DzߺX\Z2,o1K%ap6|q WB {P0Ɨm"巢*ƭ=*$5UTލL8gTLs ۗL#@3T}c3&XybV {h?v%Y +P~`,P+@}oh;Q|.‰-G3˜m5qI0r ^tI@3'CZ<4\^nW V @1ԞvH$ 8{-O\8q|J$.u*L<wr0Plm 2>yQo"q4o%xWHES0IXwjeiSׯz\x!:I2 }> ~r"䛙fʺ,yCm%NCkUgOi'*W— F-˾+2sbYyh o!L^Ni C ZiZZ8ZˣJ%M' *ޅtI?8pPТ"t kD 1^ҹ+qr8r~?oN$5|km_V̆?F t+DkK^nǥ;p[& ']wZSd2LT7!8cZnZae2Fvaɹ%w sp_Vb/Z!%g(Jʺvu{.p7x=bOCčf|$w^֌"q8f.=[Zq:zX ȒS [M/1)923oQP$O} AZo_ A@cuQ`N:Ӯ{DTb|`H&Ě){JW=GSm0gm}E3jџgEHow/#|~WQ3Bc gx#@F+mZ@ϞvgI1zgFx @tǐޒ7 +t0'w#?/"tX6ci魰3t˻mX/ښ# 4G}LlzZ< 8MPWTKO[Z}t#Y]'. %1 RQ'bY!=n  )+tJVRW<?[qx+x6u@ U+uU1'=Ju2ϗCao/}5;T5kzqKQ8"8 CS&|=2OyE}|cw>֔8/2aE,:F8;鸬:v0K97P/ցSF!KM#`}ye1;{y# I;Lg ALFz\4{#z^&pixP,J_F;LkN*]J!̍l疰>BԱ%'룪p'M:ghETH==V[8i ;)R[=&@T}"}ZD}̨A8;9"~Gpak.b8"U'RF8,m=gg-0G+ęɒ!ZIJ9σ `:w eU5܀jjŔ^fA9HcN/oL>*MziR%e4x mLW##LtL@lXMpB_4+ΉLTWa 4Q>6 (1箚ݕ<"K"L?uV5[k&_0sӹq+!J.b}_Gh.n@.AEn'FUgF CX0\gDWk3dM|dOT/(S&6۷`v!H?g nhǏWԤlk.iHk8ɚZDKWrbi>mKT(7Cyʹ M f_/ e/ۘ9R::--egs;ԅQqgE\+Vd(DľUu Wh{9Y50uTE\4R{|g#ĩ1rZWB=q,`("+6oՐIx@ b@jEydg.L#wRd1 vɫB)\c)]-IH4c;>r@E$)d-b&J$yt6|Hq_L\ (r׳ZBܗBև #"߮LO]Gu+􃧅k }U@L{]Dzܖ}x&q%e¡%^yɞdZEX_l[F|h{0)$"*Zdf>a&Runi+W~k)鷏EGD;hc~8#homd>C06Į1?W0!coHR2}1M&55ώݗ +0q 3M21O*G"<2]'mI( f%ѵ\?|lȫjG#Ҕ.<ǬIH3190l iDqn%Y_e E`5"f5 QE+mo9]>6dV7!N0G' _6@`s2-1kDžLI\iskoi[S|r1cМ-b GdHO;cXl/dN6wckqb7 7a8 M> rtW @{N&>|Ovw6Zeၗ 97E뫘hɡ[}9J;$WumGr ,( GM[o0~l٫X,[z,NvnG7&K, u{iS`D|bxI#UB !y5=dD˴<`@nno8a>EB&㢆xNhgo-! _b#sYҬ,!u>SCyQַ&˜%ٗ@iYS!!T8F chF w>n1rO9i&{U0wM5 |Lvr[<qyH -%Wfn31;VIx˟fLxL|rHWXqZC ?ƅW*y6-r=S.6I!b?³׿{$rǻa#sn+'w'&yɰ{9S9>Fp-^slۄ͂ނp;OzqDm&!H%f/ Mtlv5N'6̼ f2`pbƇ y-pjR{dF-t.@#l DDEѾʊ&!pxH L]x Kg36?71KYb1bYDL)rfx<`Ba5_D%N 4s~;LlTJQJ_;2:ܫU>iim/Zd+p&ha ߕQIXy/)'Nm+TOGypIt` BWAR.".XJ1810&E"!G0X֛N.b* ]_ZgjJn7" Si_lz|hޅ@aujRu!jRh .tN:wFsu^1D %e.B$o2 :2yT\ŻN 0HC2Nu(t 6WHCIN~up6SpcQ&륪gō>l*uk@4B6 ei)\* v[s7N/[6^bj=@ZbuLUQ\"EUʚbVp5~"xuZj76 ` v|tMVC'|Ӥ g RҮcߊ$Aۊ^_p(\ds]NO}G O'oepFxp/0+3WalX)A]s[?sh^-@'?8cgVI_ҰEܩ犳wbS-7?A\8!q@I.,U#ƖC;3$ܵ`J`W*imOa m#kۓԹmӽN<>I鈒14K%;v4{تG@ |2ϠZo1t2,$"Y23]8PfУ6nDXXLI8?J-r9?JOvİc;&Tr͛(( sb {F {$ј7/Fi_zYAꝷ¤GA`("-!jaX6z}_[AOXJş|}!K| q3[\ s rbiU.yWQIcAH 6455$;r{ Im1 .Ȩ€Oӓ$ff4Z Vag +` QBeCkQxUGdg'J)gBa9%'6CU K_r i#MX?YJ fOY8&(Pn.L.܍  .] dHhotӐ^$8GIbF `N;[5‚]j'"U7,rkiDz< ڪJ݂Ns-uHU8~ں+BN'@ȢO ñ|8 FI~oytsTD?8ظGkO-#Ջ]j_ qd֚<ض]JmB6ʻzZyZH3uv-޳2󆳨pW~*f("l/[0[(O4Wޥʏف#{_/˅ k;k =d~Q2w7(?؁Q2H oi~Y,eJkye>'dDT[|ΕHd5~RHb{g(Jt>]Y4WBc,7(d6KC@r<5Lx)ⴇL@mn;V[Yk>eָ@ #^FE4x2OM ~`ec/Kо2rGt} ]dD՟@iE9uuº8ҝT܏']&[ݸiח8.{b}QZZ3k,ɦB?a_NmOIZMzpr}Zam#ŨZs}7].%thOG`0i/1V[@tJ#qaD0YbUP;Fmܸ yI aqdJ%ct`F"9֛pOV]"^aXJDfT`Q!j[$Mp%9Y.]/'OSv>/:VNU  xqM)8^o37a?Cli6#dɍ=Rk@\]Rsivp=>B}ć;bπ`ަx41:dXK mۣZqI8>%8MKa]_*Pe v!>r{U KN ݤRVT]IH%LgK-.n I16HB8+[#v2Y}=56U<&Q$hd#@ٜMFϷe+k;6w#_h$3:s^wu"C^~Ȁ8KǷ:w ӏ Fu_O q-#ʨq?* Iޱ"a?Chrmˀ}W;7[D.9@1qĐzz !}ܡv=t<-y28R YH?peэ Fe/םCމ<% —pDk%O)OGR.S$-,W!mȨu@Th%((ߛ*# d& D/x_aԈy&zJAF R-v+ cY}oA8XTDϝ+pj,- Ɣ^(k3?'\a[is9a (8>#_Yp=Z[o5oQbq쾊ˁZK\sOZcu wk4n2b(-h/V6I'6`voWeHؿ CMkVF..׬)9[x)Q\.W&"vNUdݚD|lH|MiϩwH`*⳷5IxgYL.CNe@zIK& 8/Z|ܰDtʖєlaIQՙ4Z7?kYZy{ć -*}`$$5lޘ1H&QnT(E;Z^ Qa|j'+vB Cenny5Rxf ȓ8j#hYU=idMˇeclNPHox%TORy/5vQmIEuxL2r{lEZ%;\+0߶֋W=R] 'Z) 9cP'w)8 VABv^#^E*5r) |O"P\JA.Q eyihۡg#2r+V #"gSyX&ChriβB A| 1Grm1ahָіE/w3Sp>Kw=B' <yn}YU s=Cl^ b~Gb{gLK|Ub.{]˲7ڮ aB?p &_ C(1jlf6ןq0_ ŵ9]hl>u>3m)c]Ow9>+ ]@])HSFQ@"#U~٤d'Qgdwn҃CpڊcA#-v;e|(/=m՟%*ȞmW;AX9:M[.tٞ;AD݋G%8X0b4N !OPe$C/a']o݂0}w5^|)hЯV;J4]HBiSOH% ^Rx^'D PʆDLSw,έ4LuLQD9qxdm@ ޤW3B]Q.k%.cŗ"P(g2#!_F_^WC,xMXĿ4Z(+2ik\\ZuU=aH9Z)Oɂ;-{7Ratԭ~O}AyIuE Ӣ6m lA \~4k{DhQB`ɪϭ}ʫ"s8ԾZwFժtԵfgl@]n,yh|jX2dg%htata`α삡7@%~!hϻzm 8A'M#8x`X;sǏ°H4}'{oe]XfK`4VFzr/' 8wO;OAJt:+6ge+3PD߬Mz>r!`~} wd0JM)‡ Vc;ᴖVdmufC Dy&;gOuC* #R9DƜҪ  )~iX%Mm6^Ehf%m}zba>┅yQGl$}K>*"qŪEU Uдf^ MZXɝɮ&0^Yڼ)w,b؊ɽiIzզۅD C_:K@~傊?^詿"jĵ{ԬG6]aM@ -w'1[k0nm9ƩP(.:K{oZ$nj={.z ca%eQ9kS )XuVjr?OB+zY)_ x gx]Ldga.܎dj!@Xd&\!=OD)G_OmlV4}(oJ8Cˣ&'CL >sRR CTUbf1etF@.uph!r>j /yΚFyxoǕ`wQXu0F/ɏ/#m?G_)g9ܳ{=؇ r}aFƿ<Gp RVz* - {>> !VdkkFU0BA{/*X?_KuK )00o"yZQMAjwlSMF5ށwvu^G~QR>A\n}ۓJg'_>nݵ?lҡZRą _d҆?kl3psKeWvP}a&C _9L"N<.GbnؕvdN ~ hrIm偙"aJ8g[;LC~`$n'CLO} >z*pݙ>̮o zںܮ ΪHS;.}j8'$=vYb9g0Ά!Q0֧ <7Eso8`=L!{^:iԨg#U1.[籝ϓd%LHNC;RstT U 8䁚5yPYQcaeC'Sf1߁=kAG[i\0@lGک. bs*(pFf]?E_1UvW;X` xga`^CLg)cynx!) Җ@ug4bQ":=E 7GoeZb|uT'#VC)Sp<Œq] 'ʥVWF8h%|SYm5"}c׭Luߨ4h%`AC=6w.1{7bNz^w:lq%l/G> BL'(nkjƱƾܨ}uH66폕eOI`quW8e\ζV`Lѕy#_5jcuH43h; IA̵-~0<Î+޻Qd AgdtPpf80}"2rжq5gȫd逪U@gHգ.wjyM3|:w q ;DBanssR*/zrF0M }-jM"xv&t-ȵi N; yTh%r3޺jq['.e, Sr7a+NGYƐۏ?snx0DŽzxK\VCo=cgʴq4yQg'ebs@,ߏ%/ iSBʊc_Tav2hnyՈ"ǣ]YK+[ؼr]y6\r3Tü)FCXCr3T ,å%< FC.rro0AxM$:3K510|ݗ5-LW(3q|%; W5 915>~迣$9A`;,¿T輶g4pl"7d=cKK@_"|3y=-/Y+ "_\:ưVgGyOic,7w-*]yɡ!id9=aj 8θIR:A`'JvU#ZM6gEn%ᘭZRa9s5+גe?{ 7$4\L6 ckb=X86сn 2wWQ7Tyn5z.%@I"筰\EzXށ,k{)<्eZ  &"dC-.r؄j20h@^8_]%Lk,:Ƨ+BA1-RF:al`z^ Q'r2&H9"MHD԰F/55;ުe ϰ=5< >J"UH1 щP>̺_9$"jT#M.6ԫrAaɇ^ܑ8cm>@iQW7DSk\JSt{odOG+lp aL V*= 2->]ܗP/ 9TwiłINW%N%T§ܶ1 o°e9lhi`֍ y4&Sz-@BVFUp勼!Jvk?]7}Kqٜ[5I"i;W{DÃCYu@~|Ak{*1-_܅S|bT4eiő2i';PtiSKQȰٷm:yȖt1 !+6\ \m@d ab;.>/_Lb pC$>ޱpiG0j2&zFCgrr#=]~F0?($gu?# &>QiI'-=_͞Hf`9နɑ?g9'aʮW/) ʠFj?GjQ8RES<0x{Nt!k<';rVI = b+tS7vG@=+0\zF@;\?`7|ދ!`W8i.BżeJ@1&-f~̌;Gf $9T9|.^`@'Hh}_{+bz8:m {oB*vfR)MO|V! iZ?[? ̩7d519kok 0-`>S k8heP?MʬCgswfʦwWDfՔ5iOԸoCvYvȠkcϓ{U8:I~l!DXF]q֙aMovY[qMo3݊DQpQ؆<_Ӡ;;' *x&Qdbm0]}Ѐj5bA)@r:[v2=ҋ ZX͠rW잿WP|HnJazti礔 @璙a Z` x*s?3퓑敜lr '394v KuPmGDLxA7VgI6k?C]`LDbNЧls%C6Ah-6,ԌI­Dh9}W'x^h~`mLa)#ymCnћxL{۴㿘cj;g TB3>8 ͖qB^uZP}OUyp%2 1\KߍEvO#{3]|ENkï(Ŋ߉?+>ǐ)~DDL}e6Zn r*Bjsh S+ #afBsyceY6ǡ'\ ׎Ut ֫Ip[\_hzY{]ië;^]S$iQ$ __$gQpƗ*xiRc\ 4ш¸o!]JA<免ջS7&t{9NQFZqU- r1\kIysiy:Ai"L}d|fі)tUlLE m@jpG=ۗHzV ia}h}&ePcxj $*Qvj.JR3עd M0.t&~+hXam*-<)at_uĥ(qHovYu2*/0t