python3-tools-3.6.15-150300.10.72.1<>,0f6p9|FL:FhU<>~UaB?E^ߍwջDgN\| E}y=Mݼk\ >H~JtAg弒!-eCY9Xrۥ~ammAY2F֟b%9L hXFu{WYC;/A);!jy  qkxceZ ¤m2. (GE;0X@ߗ?ez4F>A?d & O 3?W]d   ~   x y|R<  h (89:B9F:G:4H@IGXI\YIpZI[I\I]P^h-bqcrds esfslsus,vyw}xx4yaztCpython3-tools3.6.15150300.10.72.1Python Utility and Demonstration ScriptsA number of scripts that are useful for building, testing or extending Python, and a set of demonstration programs.f6h04-ch1bSUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Unspecifiedhttps://www.python.org/linuxx86_64_:7u2&&2 z z###  7  0 0   II~~# 5uu*Z*R!R }; } ~q& P C e`1nHRQ`2>#aN d1l F8)B  vT(B#ElZ.t(Q# Ko fp$A _c-G 0= xl(:vBl \ $x ]o T 1 :d^$ NO .d^MCJr <N4$$A3$-4X }lz<;?F8(*b+ff "E')w=65  #`{ d Z W&vSFBP-z C \z 6 k |` 01(&e$4,$,H|A큤A큤큤큤큤큤큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤f6f6f6fff6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6ffffffffffffffffff6fff6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f58fed8845610eac27b4dcab9965978e6507e0735a585f91d68d4b1d68b07caf5f465277c96c107a5af544b0a962561f97cb0bfd75906d9bf9741450ed02b0e1d633d9051037a9d24ed92c7a5c40b67b8157cd721ad96a1bff0028dad72c0c1241280b1c4b76b6798093d4bd683701be12c82a68fb7f2aab836fff411660044d9462165d2d219737d2dbaa068ac9b6deef93bd64b69978f32047b096ab8165f941280b1c4b76b6798093d4bd683701be12c82a68fb7f2aab836fff411660044d8ba0c717d711524b8ead88181cda8a19a01d718c226acb080935b8845b51ff299f5d770c238f4983dae910fd2e49ccd8726957807208ad7d8a4258f2d7c49a458ba0c717d711524b8ead88181cda8a19a01d718c226acb080935b8845b51ff291622054a2608814be6e36e73f6cc4ae7a49da6c79de5731226e969d8372a0e57d080ee44d0cfd2f193c781874e8c8e581e28308566f2a9c36840a5ca7e9c9c931622054a2608814be6e36e73f6cc4ae7a49da6c79de5731226e969d8372a0e57ac951fa0966ff575a8fb8a0643559f418639d8300de5f7895579e16135371f53ac951fa0966ff575a8fb8a0643559f418639d8300de5f7895579e16135371f53ac951fa0966ff575a8fb8a0643559f418639d8300de5f7895579e16135371f53a4e3c42cc2ad194b8825275dc28d574789fe14399a473ef6947cbe55b6dd8624ce3f8a2dc7f6cddf7a0d4a21c54f9e7bcf0b78e623566846802985d81186e59ca4e3c42cc2ad194b8825275dc28d574789fe14399a473ef6947cbe55b6dd862414cf4983ab09c9cbc22292938517c0a6b5bcafb05594ab32f76598428a79276814cf4983ab09c9cbc22292938517c0a6b5bcafb05594ab32f76598428a79276814cf4983ab09c9cbc22292938517c0a6b5bcafb05594ab32f76598428a7927688c8842b871b5f9dad5008a6eaf7f40804201531545948dd35336a19c9a70f7e04421e3aca1eb4717ee623af47e287a8c705f30c15b77173767d26025041627858c8842b871b5f9dad5008a6eaf7f40804201531545948dd35336a19c9a70f7e0f84de27ef98aabe101a371916805cf4c8f6d7ce054d01f64519350c7b6f6255ae386f361008cea31a5175f8b894dbb6386216f61e279d3e8c7c31980fa8f57f0f84de27ef98aabe101a371916805cf4c8f6d7ce054d01f64519350c7b6f6255ada99732ab538b286475440978c47e2a00e3946692e202e519f2f94f1950dd7bd9f35be4f3ab3a68691331a765a7362092cc5949cdc9a6192879eede2ece9c249da99732ab538b286475440978c47e2a00e3946692e202e519f2f94f1950dd7bda9dcc667ab764a58a693ffd6bd8a41feddf03688611a98e15ff2e5903fca8f56e908c826fec575f4e83d09105f972cfa684d784a68dfbc2619571329938a9e07a9dcc667ab764a58a693ffd6bd8a41feddf03688611a98e15ff2e5903fca8f569923577e73ba0cce8a7ab84503829312f1869e86c3f4c89f96749a9d52a75fa6aa974d69c825683e9158d74eeb18a10cf41638faf037e7a991f799d70dee72ec9923577e73ba0cce8a7ab84503829312f1869e86c3f4c89f96749a9d52a75fa65b69954e7acee766a67cff62cfa4376f8e8483df67e351514001be3a5376b0f8aaf43459bf47e78c3556c0c2742ff819e253812dd7d29d7b7f247b1b21875df35b69954e7acee766a67cff62cfa4376f8e8483df67e351514001be3a5376b0f8d1c821f3a0ed958fa4be1c414dc78515bc363b5a9dc77c91ef46188aeeb60de1a4639a12b30720525963eab6076376f7491fc2915192c1a996342c911f3bd421d1c821f3a0ed958fa4be1c414dc78515bc363b5a9dc77c91ef46188aeeb60de1a1bb308900d14395e83011dbfdfc8250d080b622949e2f189003bc7b1cd7816258344ec9c71d4a9f0168782b91d174345d1791f343185dbd592cad8e1d545ae4a1bb308900d14395e83011dbfdfc8250d080b622949e2f189003bc7b1cd78162e853f316a59867cb6ccd59f014ca179415d7755b9288214b027f4d84e1c87e808bc348bd786b57bf8b8402115453ac09ff611d0e5520ce8b6ca8e777951c2d03e853f316a59867cb6ccd59f014ca179415d7755b9288214b027f4d84e1c87e80a5c17a835bfebf1a3977c40091d327da793ee9ebf9f4f33cb60d304dd8e6f8722eaa9ddc2bbace780ac6b24d30625fc0b6b20bd77519b9a7fc2a84615d89808fa5c17a835bfebf1a3977c40091d327da793ee9ebf9f4f33cb60d304dd8e6f872ef9f6826fe2aa8ed6ee35de1434e5db43164ae9b1c695dc691e5f847973820f1b107692a94c926db3b95ce787c31f9502150f7e972a26a63733749332d0cc39eef9f6826fe2aa8ed6ee35de1434e5db43164ae9b1c695dc691e5f847973820f12f2332a99f32de6382f2b75bb1b22003e7b015a499fce651727170cdc31d01669ffdfe63cdbdec84232b5bfed7a278040f3d35cd291d466f92b925740e05101e2f2332a99f32de6382f2b75bb1b22003e7b015a499fce651727170cdc31d0166a950359802e0b30af4b2a4630be0f7a49837dc3c972510ac39fa3cea8e0e243009054fc9600dbad16ae76fa402bb4693f34b5c0f28bea3240ee4473512ccb856a950359802e0b30af4b2a4630be0f7a49837dc3c972510ac39fa3cea8e0e24304d1ba5403bbfba5e0b1e10e8861ffcdc6a981bb857c4c726f6967760dd5b5120f2aec2629d354e54d6aac6643a7a660377f6e3f8280ab258f58d1d6e787fb7454d1ba5403bbfba5e0b1e10e8861ffcdc6a981bb857c4c726f6967760dd5b5120aaf590244182fbe8d8b6105687f91d4e104fe5530920582080f5330b4c20078362e1904c397b060b55dfe13daa2ba342884fe43c194a78e96b79cbe68581ac36aaf590244182fbe8d8b6105687f91d4e104fe5530920582080f5330b4c200783b8ac9cdd9ec70be7a7c6542ac4ba14fecb76301ba77ada83f0e677b4b2c70fcfbc8a3a9b77e90446fb7060ff68ee008ffd6b23b366052207ec225cc163b4dae50744e32ee2f9a3c2c976a9c866d8b2e555383463a20adf8fc20be48ca94cef1dbbb065830edb37fd53b1c004118853176fd8da32ee532cb0d3639608809203743fdb7618f73067744c04f84d4426dd853398c994e1e43669a389a65683974fdff25c143493fcb01b07d9763f68c891c454b55d7e85da425e0cec13cd4769bec5824f76fdccbd2a7cfdcad6364f54f9147c5a7895e85975e5b6c0e17031f0269462bda7389bec12a36fee856470291993027dbf801a055679ab552fc4727b0d75939d1ee904a7b00579bb44719b0286e7524bf560c7ffff6d482064b41b09fdb3ffd967d85fbb4b1e28c6ae63b7fdf0789d754f4e49cf5c74eb619a35e00b5d583a2233e12b7c88a13c5621222c781f8ef0d962ff2d8d7fbc942c6f2deeb2940cf90389cfbc63f5516c0c51efd41b177a2188215410d2a7e79d301615887a080a9eb9aeb731bdd09b78d1e456960468d5a3858de23f7953327d1f740bb47f0a9abea2d5a061231328da72de5bac0c89b6adf0345585d98176c298b8ba338a51f24ecaac02e68f11ec1a406a6ce8a4b17e4f8af74f76157e0776360d0dd041f2762493930844b3e3226dba700a95839a0736a3e0c70b10986247816bb46e976aa41439f152491a4fe74e421c2b0088068c2915548e450ac7d82445c8610d88f46ede66698dc4f083792df6aaed1e5d94e879852d72f1f24ac09c8fb4cd144c6c88e408c4bfbf1eea64fa2881fd1710f09db6d530e4b0be0534b57fd2a1d407784f2d248e83fbd57912bcf20aaf5bafa65c175dd9e35c05b7d0f7ed6812085f0669358e1663cc1c3baef22830482c4bc26b7db9c31993489dad932a1b5c209297ac02ad4b024f57c596e25132c91fdef7c019bab428f9c1c081116692ae6fc0bb2de05ef352d769de864819df1617699402199cc872466a4b2bc2feef6900100e1a81b706945c649cd0239e937002af4247ee165b6e64991c1d2cd82c7c84621af6d8d7912495333814f516ea4ff7d2ae4c971ce40e47662fd32e07f8eb5365d147aa92cefbb986d68341510e8d80b05a35ef14e575654d9591537da3dbfa7f30eb7cb564e8c2a4f4f27f8eecab3792487d40ca9089cefa2cd576829ff0342ad12676bb48146e15e440876512f2385e821e41255508e696cabae478f47c02bab01b2a7c0b96ac630efb8554bbc3d69fa0a3e63cafb4a0852da1d3e32a4644aa8da985206804cb6a84efa986d08d111339fa58b80ea25fa98c2c933bc2af6bf6c761984c7a9469fcc7572ef2781a132effcfc3bdd3983b383f2df4544b32ff15f0ac8f7e7d44c08aa9b4df91957cc54def446ac1e07ff1e222373f6cdb7d3dccc5c15dc0a117b8f4d6e3a5c61fc0c94affdd5300a0754c96a0e1a6f555e14131754fd49c7b0f4504309ab9c7d980f566b63824a3c78a1a5b0315cfe4aeefa27d1761207d3c698a034a013e2d22db609f7397f017be221564756b941ef1ee40a85713304aac7172b8e47f16369d90e43d57e47684dd90db4f4accf8a2010adb5db59f1cedfc239dab846057e918c49becc30b977180fa31de978e62788469f9a8bf69b638ad7f474c45269930c94d3beb4209130ead0fefdb64efb773c870c304c07aececbb6d6762752978433fd27f40393d904052fdf495881f071cf6b835bb97bbb8635b6a436ea839d149298dfbdb7f2a4ec94c1ac1fe53cd542d38e87ee64100ad0377668444dd40783902d90a0bd908d279a00602e4df31a66cf40c67fd307fb794da217971be45a9c2aaf578874f3a7c54f38e58d3849709ce637ed5c220215244bffd0ba245580911c1329e0445ac180dc17fd0c68152d1b42118e8aaa3f04c00935a550e0e745bd54cd250cb991908e640bdb1ff84257015980eb216c17189046394b65de956fa6fed642329d639a8326390e4536c7653f7cecf830a41827b4790633e5d059d953b7dc5343ce02e7764b3cb7d84707977b54769d78c4372a5f388bfe4712aa5b2ad30ee0f14d50e448741eed9dba4e0243654bfcd1af15db8b9bbdb9cc46744b84a4a3847be57ebf091618f8d1f9f6087b589b42213f736fcf19381eb91a7fc0dddc2ed93d81f33c57f89a42777beca3a850046e2fac0ec535cc9d48854133300dc7e86b8f2f39c28cbc07ec9627f2a85faf9db633d271a48b6d2e830779039a088bf157e8a3b29b09971b27dd7e76464ef0e79b53c535b14c75fb904c57c2197695141fb784fa0202c233163005a789791e5dc339d109cef754fee3147486b97a182cf9149398489bcf837d88eaf5bddbf96d8d8c59127023ad13742e3e2162fdf85e9f82a0a41d2cbdb987230880c77eabb2c29c23752a9a407150f1c899f9d8c6a25d707459a1fbc7b3e00c1689c3af2686eb5bd961141e994aed56f6df9c3eacddd846ac401a82bb66c2c6be82b0e3bc6bed2c701bdcbddc3b22909d0c502d7072d358e0af9be38091bdfe270d6c1c7f7c93a8dd13206b810ec97d10f68f5cedc6b9a970dee9a3bdef4e14d48018acc1e3dec93bcf8d99991df637a93a757a015e553eef04f919de73bf8aec739ce464d7c5260d3b698dd1821140da02418a2dcf4357068eba6fc985aec6542309335a8014a839176952bf5cd9e627dbbdaf4a732cdf665a1c9a716149de0e3374ea952433a5a529b241c7e04896d40c5ab41cf6e8521978506f39cdb5c2111b64abba2759b9417a31427192c40046848802b8c6ebfab107362cfa7781a1ab9e73486c772cdeb7b81f3109977125d4a3a3ffa17462cfc31799589f466a51d226d1d1f87df2f267627cb95daf98edda8e08a242e1060691b6941f0911692bf468a3f9c5e4b58c09b8f50b2cb944218b9dafa24cdeba36fe6f291d46f3761db7ede5cc7c865b857d104b7cb2190d8f04fa432c3b0af4288f41d8f20a178325887619ebf61d2961228e78af391420e5fdd635c71eb63688877eb0247b623dbc72cc8ceef010d3bbae55f462ebd5aece64ed0d798ab1378f01666e7171deabee312aef233e46bf1799a6a637c7e61ff8b259e6e4d994bccef59338c1d2e5ffed6263a5adbf167a88d13e4a212c9ae9c01ffdf01532ecb3bc967560a24e461f753146754071bb57e731da4510ca62e6e5915196a9b8ad9d38e9f38881d07ab3c0b44e7cf5d17ee571940a6948a67caa4dfc8f2e8e2bfbd5708b268ac32b3a40a493b5b36f737d0af8e77780dddf0138f881426fd1414e8ed33950212ab2b27e716da4b7b0313556d7f27dc7b4a552c1cf6f20d08850fa28fc3f348f6e06bbb5767b6e85828015ee20993091c9d5e0e9607af4a9a1452c73d931eaebd904106ccf74eb849ef8b5b8eb7fa66e26cd475f5eff12a7c6da058ed67ca089010a1c08f938589883b77025929b9f62cce8371410f6735950996ac2081e0aba5b84f01ca3c5f6caf0360e5b4167c8a3ec9c36dae7632025c004de29d5ea1c345635f117ef5b194c5e6547e7bc33c7acd10684f33fe1e5b7d61e64d33ba4b391e645782af54a48d6c62e59bfad445765cb2641871b42c05116f4d0259d733d14eaf85128c1dc002d3db05cd885c76e1533bba52d0ab231d73a16278a426617418843539266aa5a6e3159acc37709cece680cfa4a84e51c65f38394bb6e3680cbb7c62ca422d8e91ee9a1df5cc0687020f75ac838137234bee48fe11c2040c94b8eeb5fcf52ca9b206e4a3e3f7ea67ac89a8d617a7e6660031efbdd067c6c0e4b318cfaf5e94027e636f26bd42c72d8a2f634332701fbab74fe53488a15ca3a30deac07c7fd5f0e10888d7d65d7720508278fa203bf8b98412f1de93594c5c60cb702ecd4b8ab4e34296dd2b8fee151278111dc1362064f88696a0cfdc02350585b6155df807580c695cb8e64617c5d0d0c4a6c54a688ed1c6018b00abb23c9de7f22de54e51881fd97d086a061373c5c2e052ca5ec0ae3b3822806093bf997b11168bfbf195c76015c41cef83818bb9323966fb68a376649465573562443cb915b1a871565d743a8b2fe3490422bc1765cf32c00a59f1eaceb96e28a2705fdcfcde6c0a433f435b1ab5e7b45191906243a9253a8226c5ff5c6fda20772d18f1bfd25275b5a21a3b4907260d8318b5b0291fee2b0c883c25b3b07e8fb82d5b317a227af0867239bfd8ad216ba71b4e33479db13477e291740e1bb3690b79db82e339f2fa08fd646446686de9d4c801e23c64b772064588ee9b3acda840369ccbebb65c0269c60e9b3df21dcb51a472337537664c8dff922ee5d5d644b60a42e085afa30204dacc48848024ec050aa9808fe3ddf6ef481e35d5f90206a972ba5015e07b3adeeef239da2d157ad6ea203facebfae55702aa20f7976789cd6529cb6540d3b4da2bb401edbfffb520f4fe4c559eff9e3850c4eef1963928799b7a0ad08f83a917e22f044871e618701b448e8812f64c41da7fb44d57f9995ff1ad808d179cbda7eac64b66337722df1c1357db7ba912d53ed93caca7df229ad75fefd00e75677018d784ab6c727e2ecfc6c06f09257f0c7a64bd8f6b5dd63f296cf96e9ad296635bffa7d7c6ef30f35d1a6de0d5acf8ccc1315fdbdaf623c1e669a2a2fbbd04c71ad6c7af3ca74257d1a058c870d7f6c753affd52ed9b0bf2a5ffe4b1d035a0b85c202aadc5778bdf6a721ef49b45018bfa48368646a015f05173dc6c197a40a87b13f5f16ac8d36d32f10f7bb3f96c2548e55358a804d3a85ebcaba5ebcdb08e5a323c0afa103a1249c990d874a88ab07f5515dc02baa0f9643028fa0ce124dce5e6d85b33d76c129ce90b0698086c0da8cd098d32cd17ba4f1e1ca6b7358464db2a87f0addabc9dbcc4f6757f793a8a7be9307f4b38559ed7fe8018b56a333dee3f148a33b109d2e5d99909826772a9d2330c76de92712616ea06b6bbc410d4f9140ba61cf718794963d3e759d92c16940146bbef08ea8f2a3ea6f5a826cd43679843d69e12b1076d9df643fcca3bc800fa00d66e108328fd6b41a16155cbf231e742f22c30eb9062e51c140a8180c3dd9576d273d32ab30e85b41e9cef7563c594c4a3b8251769f1f91f4973cef0c3348dc7a94e1da839de3e430d2add8bec175a239f076137109dfd1c319743aa14a781f5253fc46cdcfa16a3d629cef494249a1df2e170ebe180068c3c71b3ae243121f6f227374cd1ef7c59ed07b1969b330d0e947f91a3a1b3fd7323edb1f8f60e704f1fbd970e5a2f6f14aba06bb64aac0d1ca4c1694bbb3850ca531d087a2f5fd94f4153f5a72756745cafe75ecfc8b63d21fa4d71cb019045882150aa0a1af0f0e5c8ac3521cc4acecba65eaea5120a5a8c9b6dae28c41391b5d53dc4e61c4797baa9f88ef11a09d5c7f598d310958036839115587f27c1348a09edf0ef0565e61406788ac6bf7594e8fa5a216a44b553689ad423fb32478b09f00f8cbb259bf69e61d045961e2a09cd2151f41a2b9496bd57227a3007087fa4e0cfc4b50b6f4f9bb1b66a2cc80ab2d17723ecaba89b309a5a198a8cff973441ae228254c8d8e8cfd5d6ea8e3cba341c9c6d320fbba19026d2a74f6639f80d06870032a8261f5f30b5500d7d3427d7c89060c307cf67d2fcdba18baf19031e90657066af2bfea6102f52289218c493f09f04734e09bf3a06aab3469ba9b46d1cf38c519ec5ce0f2ef6325934bc689ce11a3647b01fd312e1153c6381aae45f5896577bec0fb3acd553c048e3298c8c6da36c980ef9d12998bb08653e0973b656562e820df0b5db1977dac06c88892e4df3417bce85a11f740edacdb44c028edccb2b09b5f8f56ea362424d9f909c67eca165731c25da0c1a7158963f7292c6082be839eebef912772b8e35508a251ba5f3ef4545f3eb238e4bdb357feca7f086d4cd61ebcdffb37b85e9304f89e3ff61c168c96c6aefcd4255fa09fec5a828639aa7675b8935cae61ca934397450adbb345c3a704bc05018485ae0b414e31be44beadb75f4e9af42a6f1914534203fa27e17ad168c02daa94dc7a2b3efcd7533f4e9aa7b621e86f5f3effaecd5c7f9eb0b3956e7560ea1a93b6c4be05c086bd52c8b271b2c2c81298d13dd3b841e30b102e9b11a90351a9cf30969cf84365507d1d5c5c4dd48c1c435f63a8b34d09888a190e4559292dc84a66b5f0a0f988925d38862ff71f84a237f7c52cd44ca8cccdb8ca90903111a756d6dafe097e62ed754ba9bd9c4db6c90b545f76f7ca6c802dd954eb8e29eb6fae07fc821d49d37d5ec66b4aa67fafc4cb71ab2ef3099f51ab24a64d7a9e5d8f9bcbdd6cf3ba547133a0a018c5118ee00081946bf63086cbb8e80ad553ebbd1145a67e0fde0027ac13bbb57c55bf868614897bb1f8e1e074d9806fcda59019aac51fa8c4a0c0f393679e8491d77c537ac764bb711f48f8bf77800a6a0d2579f7e681f8651ed67c94d7e64778e4e1d4475800f44b76a34c4f1b6d818bbe4f9db786a51973dc43b4d46ec41c1063cd98194210edbedd4af8ae960cfa6e90fa8b0559010b28a8407ffec4bcc6e93c797d1af4a64b9a7b51da4f3f6b28ed6fc75c9fb2f9e08e5250c5dbb7a471dd0c2da7774a21faa3b25683e8fc532a0a3dd8aef03620d884ca2df8257ec917ffd2bac42d3742891aaf45c665181473774333fcb78295064af11c00fb940eff7d5ce98a6cbc01490a680f5c208e75ba308bd7dddfb901c2462d38666cd26e250e3177d178ade9333dd86269dca41f5d5e582a8f32665eed227e55b4e42937fcfd397184968d2da1f8df2afcd847b2faaf7b85f639970b6ee4449e20e7aa23b4c27ba11c87a1c8ac1607dcb476210e1e282d2863c99589ce0cedc9c425f2b8873c8e6edc94c2d4b6aaf1ceccf101fe8767c20f3d2ac548edff91d23c10c847c3c654e0ad2b3d2d4e504e83c47b9b21884ed22f4e7bc1aaccba4259a91dbf240da4a378b50df919c87be475738b2431633a65752fed896e3745f994854357117613d4e80e1dbaeb0eee9f5b69df077beacab46acaef229ed4f95ae4418f5377f81099e73f108e0bb53a439a935d288010021d35fe169935e71c92d1e8946c5544a4c895f23b0e713fb07b64405ffb4213495079beb4d90085cf9d1fa6472856c75b80114df605f15fcae554f2a8e330d9b7bc04929017531f1efee2b93d204e3f802364fa2b3361cc10315132422b2c8f58af81647982752c5e65c95ef0e949b896c01d8182c86f77130c004af583ba70236498e082627bd9f1bf4fbd84b2c18519e8079be6d1b9ee72d445929d5b991aefd0e2005f8bc4aae70e87fc0191cfe3f314ccbed7418b581ab17444058b3229c7a5962eeeb6558ad640bec02e1ff53f1097f64330329b80658b594780a9da72aae76bb53c4b4a6a8e6d33e3fa32b56842828e2e631cd05cb14958825848d449882f6c5058442982261f3e3d5b83cee96ec4d8f1ef56787351e23ed92ba9f907d99a5b2a6a7c46ee324db6ae30427071075696ac7aa289e8a56c03e6805f56a61015fb33bbaa1bbefe752fe17823371bd5f2ff214275383fc830028db31d3a0b0097b9303faba6e204776697a9b9dfabcea6d312a07e6a3a8c96944c41c3aa54e3b92ef5d4f7d6fc53a08513ec524b955e69a5026af78a22ff7dcffecd7c99883ac315d793d7f6102525920e8a2f4031329f1b5c79f6572821629202af3c3ae420febc0c756fbc9a043408d9d66577c3f754f931d275f514989399dc156a6b8559750790a6c49e03a6e9e9b977eae915ea521bc0911f7c2201c3814dd4b79ae237a00f50024fb442ebf218939f54217f2eb9126be582cf4ce870a0ee992d6b74917bd9584ef8002b3ce3dea825a196659f290ab538dea3e6a038b01e3986f4a2e29a92a3890f0513a31eb126120ece0f2fbe5c68581aec9032f3e247bb2f0e123dd20414c2068e3890e559e8300b6cec873490272386cb25a11dd7fc64bfef3a46d65000e6f994113f9391a622bad503def1c5e0fe4368fde9763c610e98608465ec98cc6dc0e4f1c63aa9eed3ccbc0288765ecd26029241a14d7cb48e954c551533ee8a80b697304a89a6d9c6043af088933e93b0fe2bd7c70eba6cedaab7b20cdd96d11de99b068696fbb5f162df7ab98c02dc549f0811f641cff585e5840f78c3820536a05a6546c947911a8f8b8761a970bdfdcafc59d4ea0baa19b7a0c3f32eb208d08149991b0b576aad325cdc6499abf324702adb75321a8d39bed7e105b7ff945a967c9ac75f9336d82f8f1c3a0da1ab982ad0e6e8add695c4b458beb82342d3db19f6bb843b9512e4c738879d10035ab3ec81f675d36fe969474aa3858a81d66c96f2af68f3d5c61ae6da6428d7fc178589c567c306f3f52a5a74ba5e2b8ee9f3b62e07b2d18085333d2d1c33e37458928b49e23ddc5c12038a14040c9a7a7c086b724f2ef36b8d4ae07225e4e936cf51bf1bc9ac4edd28ccb85905aba4cf2bbe5e6e52c88df0511aafcbce4e84bcbdff04c0b9e17c15ed4e1f80fd65bc9b147409afb4be6dd20edffc1782f360710c1082f8b44423e1c10b6c8138e7073a2a953bf7f5d6ef5d2ebb9674b703b46480734b46b0d66ac6640b2fae4a31dc66a61cd66067bc543ff7928c1e1944ab550654faf163875033b2a348da26b3f26e1c1b01bc415fff86d5b2d4df4bfb4fef2cd30b9b4d1a185453e7c089d11e9746a91a3c7e9582fee5188eb9078cb406953d3e808d4f6d12460a7f1839e72d239946cbf8d7e6d89a004065e645998367c7235a6470a111673a0bfb58bae9aca513d268755756fada129256b5a79bdf612a9e72a30818f092fdd9daf59a3cda9a0fe3a61ee3930170b34231079d961665ed20f5f3f58b7935dc0a62d1452d4b4a1ceac10c952c51de793b625a95a1de18c79f7fd55db8b6a6c69730d7c323f97e14f6cbc0f56393d222a9da2e21b96b3d7924cc3ae7ac66e2b27c7306354da6d3d7b9b2627e2ba5f6430a7ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556d64b43d1e8a68e4f0536bc8db59c5072c430ee123ab02bd75a22fbf1d28bb2f51d2663a8e43081fd924676f187724a44c6e726004685c7289de5d98c4a53608d58e84e196fd0f859c58df779ba89b8a8dffc736fbe7466230a12ea1cc07c9866098a32711eed5f84bcd90bedf9c4b11f49556f13c49199648ba9db05eb996e8e9ccd679b6afe6383dbd0bdfb65d82e82d1f9e5e036cb0b9d3b1995bf3af5824e1ccfaea7c54706082fe95692ebf4c64d20d0deff81e5dcafceacd41a309fddc4210e13b7c1d435fe3f0c29be9973f6bd663b6834def6153bc4334bb1d273f2e20b9d99ea94e2832116a2a8850fd61ad7f4f2d7f48cfc019eb46c1351e6d3b6921829ed79ed2c0a19649be81cb7cf0fe42fab69a967902387d81f7385ab94fb11bf743fc807b64e82c9ca1edd3e38976a7490c186f1ab455bc5a1cfec32abc8e837cacbab8e88147f6fee4c55385d336d1e21af438e98f9531ac6aedc8dd0f42ba3511af7bd98495f8a489e97aa276e675999ea180339f6a0c06d00caf6eebf7ae01e5a661fe26bcb34023496d8e9a749668cfcc2606b16a86088891955ae6edaf6c056a95ae725f98534db22b9a4916d17f2356fdca84a4a038211a82fa8a7350ca2b67ad509c248d9a0137ff7ca214476c2d0f63625e3491dd65d0f283e44e836cdb388117cf81e78d9fa2a141cca1b14b0179733322e710067749a1b16fe9f41008bc9423d44d4d8a8be25eb6835bcba82653f9a823d2afe7619039483e5c4f8d8b62c1ffcd18bfef84491b9bc273e044a7016f7448229cf1be3094c6d48fce1584fb838cbc4c91208c686acaa25cd11f0db45a0ba41da6c7a5bf6bfcb3f1b53dcca77795b6cef65705f715422d5074940c73068aeee73f791429712b7b018b6fbf8816d2c92a2d9ccebb14fbf9d562ed7ea12699b31ab86f97261b7aff3f40fc35ccf29d0e3efbeeba45f63fb3b51d39a16cfed2fa5e460d497b555f9304e575fe1ed0424f31764b3fc7572df06756e40e5212f85c97bc07b60d1aee893520033343a6830afdb6824aea0963201af5b42b81ff9ac576826190f3e56437b6ec6edfa373acbcbe9c7cb704c67158f96ebb97a03a61128bb5fd30395876d835cc535e0b146c8122cc047cae4ed6d8dd0647da4966ec09192c8039d23c0fb1e96b452cd913fe7bd8ab9eb6b00e2c3639161a0ec5337039d7effe50dee278a5daca3fcdb3b4457a93abed5a00e9a80336d68c9211f958d835c9fb95eb482a2aa15ae6323208ca167bc38b8a723a15e25b84ae3804411ead34a6213e5643605d9e8ab5b1531f24b1da4d1cf8bf053ade024cc6aa7282a48448d9cdbc1f56b0cedee7e8e839e763cab9a985dae400f4b69f90f3b742f04c1a3712905b9938bbfea672d3a651c9514410916a2fe368b66d1826e6284a159afd881e72cf064b28d4c32f57aad28af07ac6d351d6977a9413d6667e29da8fd640f61cfdd7af06f128caf7aec45321b39126604fddd54635c82ba0a7e358ed3b5cfc18cd23d5a501bc11055bf68fb56b720bcc77ac6000226322d87963bbd16e01ab365c7e96702711bb3b21c003611e1cdf4d8f3238c5f3b301f8054f70020703d4cc79226209d54130037c4dbe1965d7cd37a09fa0328b707c2a51529ce7389c27ba87b717e07894c018b88e8c2909c9c94e69c7fb177a42176e8ed79ba1fd6d08dbb914ff456e0217ab48c99b911bae876952e16da11a0bb2186d4f1ca786be871ea4709a290e372f64968a1d14f62c6004372eae407224ae0cd567308b7df09bd3dbc64b6ff449e1906c817ae2167d8a1c24c7f2fd5064264af0c3fe53a3aa4a15c4e3d34eb50f852eb36505bec9a49e7fb154a25d6101868bdf5c8a3c1e423dee43d3b8057a96773a242311b241ed982dc47e4e7bc3ad539ab2ceefb239820f0b6d888226fd80f52834bbac957e95951e6b6729fbbea59eddf8c44964b20cdf0a3b8cb2a5ef67841bcd0645018705d07f12f2705d28e83ea6d85438d8c503ad57f0e95c2dbec1846cb5a3586e70e2d0aa6fdd24358e52012e3c248d5e7c2154b060275934a7edd2591aebd2f0da839ac6753da0b06b60a0f104e306ed716a75484ef3716d72406873383ea48d1df5d326096d10e42c52095b40705cbf9954643f589266dd1bd210ff6f8987b15041792f96c8c5cfd7e288077612a92c4087b367d99f1296bf2ce2a6297021ea57768121e6148d0d5c77432ebcd2b7c1b2d56584269406822eb3d7a98b26216d6657a7f2c272e43e29e2aeb1cd19e8b7d67142a6a6ea45b7972be42ebae6ab4dcb30ba874fa1452e6e5ff5b8b97577670a60811aa5b0d504b2fec74cd82b2364dbef67ce6dc84d391c535ccccf345c0890976b9c6149bd98566f23e2d2f72159e7ddd776a2c32a5c7da67bac7c3afcd28888a350ca783fef95da4b032a174fa0beab1dae3dfeb995ea26cfa7b78e14854aaa83afe730ac051c1940972653282b5c6cf95fced5db24c71bdab5555e2a66721b5d0fc57c6b76206277bbef10c42df4674658aa0eba04d4e9411886d21f862d7863ce44441d3b1e37eea2bccaa831da8f64bf3a3107d572995d6a55099d10dd0582a1d00e873ceb0bb3e031e0cb37f52c17d7a6872480273b2bc690e17c45e8362a68a89798602a2b6fd85d91ae567a0f8291b4f95214af7149210e8a22a4dd3ec48c6d57772c075a067a8db4747c1e2decd01152b4ba319bb2b44195ffc621ce0f2d6e5677415700f20016574cd2ae519b0aeb4c9a96dccd883b965bf244428291f60d8f049e7a6512823bf80713ce806276a9415b9e495e0f63d23dcb6af4227f56388c827fc852f1e836379f981da446b7df2173d9e2eded472004e347aa8a1298f644b872fdb432d9ce5a0b086af570621f20f746957b44eb5a1bcf237b2f8e2546c7b560ee6992b19dd00de590067cd6a208fd501c1f1c5935f3d7754b9ca6d98821d915e7b1154e22e841e99928f65e9bbc3330e93de17bd4af6d64fe13ac0b48270a5a2798e0db9c4cdc5647af47cd12e2d438ca18b76bc2a161abdf662c273553064b5978a383ca1b75d4f890bd0c8d7690b62f186846e3f45216b2baedf9b17c7cc89aeba6646ec1a168ca25a38d400f855c1260686ca46b5481c79bc681d23b34b63bf867aee1d019b1df6a0dbce2b7c9939d653536eb35c7c0d4b00a7bff4039c505d980d0bfc4c73b9a6c106191cdea64e8e6e3ad6d8fd10df98e8c2845596c1cf538aefc0a45d2ea85d820bd243ce222db57e04196451e8a657f9bc9de9a1146e37f9fac4d8a6e8f246cb87960a8f254fe9d86ffd668b6233cf63f308a9422506dbe2b5bad47017f4727688728d94a34ee6c59d1bdff670d3251cfff8d33408b155776eda2039e3d3103c9f9df83ba46b4ba18f4544751c2ab7f4ade544da1dd6875743ef3f5929148ecf3cd1ae529c1f9add7ebd6ea172e9a0173f75a322265bd11aff03ae1cf496ad34a2cf82e33ff0a975878cccf769475015e95a7e0955d6e7063a98576f7cabf3558793d772efe75c00052bbd5b298ea4696f7eaad448edcd158f3febe604684695e18473be8ede1906659facc1c09e4c185beadd14e7da762474cb047ebbd6be210da0c7dbd39d5e029bc2b637d3bd2a1307dca053345834075c23e12d438a192eacf82428af8504b6310a5918ff8747a551d94fa74728b48617bc1209902005e36ddaec8f8c731debd92941c14d4612a055968d81158e0aed7e15987de3bccce980d3526722643422fd9bfd4305a91e9e235f163ec9b3b2a9f47677955b3c9ff5f0c74780370711b6d686f6f792ac20fecfc147a7337dc1258fbcb4ae2c7c321268236a501bea36893cd1fecfd9a76dcf4f191857c4d6ddfb3d673cb08e67d6780022596b486fadce1e10a71cf8c4a3b1a71cf137314b5241c33c4f95e6dc1bcf96010da6b7f19fb6f18bc17df7d6d13e7e382016c5a4a912ae9072ee2ca7466cd8bb95a9fd40658f2bee455165d2bb08a3f91a870b3919480b5d8fb7a591c54104d23da1002b4b8a06883c0fd88f0234568c5aa00d7a13928c6b86696411750e065a184dd8797ee1c2df567482c4cdd9107ed066b5a5feb9de8af6d9c2bfcf51a05728bbbcee89d698aa05e5cf51e9baa435b1e248bda24ca30034ace8427493f3169bb46d870d6f0224eea86e0e1a3e85bc5faed1d398553d3d44453411627af729072fba747100bb8a5c29e8d31928e413be34fc4765dc0065214f4c0343b0279c9740603dd116e14ba6b76c367f089f821958a27b7b962afefdacd29181753c1b2605a5009343aabf70c85c477fc687e1bae454ea3ce905b637ece7c876b928a4bb52541806779dccb72a9dce15c17788f9d823867ccf4ddc41742fb28a749c3eb8045566f4459b7c9707e55bd32c9325418388eec33e79ef295164242f02539b5d722d9fcd48f8cc6764a9f02aa0d50d1b22f1f6d0ef680fd62ba39735889e2d7c5d406941551bdb596467c29c7d07dcd62c5e68b55c578658f92ba3acee3000b5327df257184b7002ba66ac72a1d86cee31f38a1173f625d45ad1e83e253f0b5e5ca826e4d5a358832d2e94cf9f26d95367e47d4132f35468977d3f7452c0c91d616349948b4dae3b78f663c90b2c773862ed36e4d4bf7ff302fd49cbfcfc2b3c1c9c891c6bf1d6fc1712bb2ebe5b00a8d64b709411d48a5e33c264896539df42780eb87afbbdaa2883e412a6550f893c6958b89a687e150503fa68892ea2413a2849f7bd4d205918c44d3801afa2ef5d78878b3a27ee95a85209bfa28806855334e92067d0e0d7111ec608e0cfca1368472a3f257dc72fbfe405cbad2ef07a04c2e08c769156be30ec2f5cd59e1d1453faa8e073fe66e3e5595f869b45b0a44692e5a99315edf561572bcc04f0f9986f8ef9f8b450330577b14652b800efb340d351fd40e311bb80e5f89a4fe870630213cc58195f93231a1eb55ee749d3c362993729cbf2f05a94b02da63609e82a46b5b1c3b820bde6dfc0f218f147ce01b19ddf4b9693f69aff6108b152e77f6797274ea7e1044b9857cd390ab176c87ee68ddf55131bcdc35b13d14594fd5a131258dddfe5206e96b92f57980209b6aef47fcf7ab5182bade6f57930a11bc26ebfce30d5c579aed1528454e20342829cce283585b9f2cf66dc265296b28ae3b0cdd675e4266ccd36ca29a43ff9d397377f7a39f90991ef1d076ff831dfd4a03e3a55e068a921707647d2cd06373e449a6c6b7ba64dd17a892fe1246e968449cfe6be55be148bb2b01c2232a104b043a91fdb360978216a069a357264eea90ad912fd148297375fcd0cca811ddef14d37ca057f6e39be25c0e7f90348412c088c82d53526010252to3-3.6rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython3-core-3.6.15-150300.10.72.1.src.rpmpython3-2to3python3-demopython3-toolspython3-toolspython3-tools(x86-64)@@@     /usr/bin/python3/usr/bin/python3.6python(abi)python3-baserpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.63.6.153.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3fff@fIf@fz@fuk@f:f*Ee؈e4@d@dVA@dRLd>@d@c>@ccv"@ck@c[@c$e@cbb@b@a@a*@a*@aaaayay?@af@a]aLl@aLl@aA@a'@aj@```t`[``@``/@``U_T__@_v@_0@_0@_@_G@___P_P_m_O@_N7_L@_?@_>e_>e_=@_@_______^^g@^>^>^8 @^0"@]f@]+]@]m]y@]v>]8H@]8H@]1]]@\\8\@\E@\C@["@[6@ZZԐ@Zx@Z@Z@Z Z Zz@Zhu@Z`@ZLZ"Z }YYX@Yo@Y@YY@Y@YI@XӸXƉXXqX@Xv@W@Wx@W_W@Vm@VhV*!@VCV }@U@U@U@UU[%UT@UCjU@TeT;mcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@suse.commcepl@cepl.eudaniel.garcia@suse.commcepl@suse.commcepl@suse.comsteven.kowalik@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.comsteven.kowalik@suse.commcepl@suse.commcepl@suse.comsteven.kowalik@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.comdmueller@suse.comschwab@suse.demcepl@suse.comdimstar@opensuse.orgmcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.comschwab@suse.deqydwhotmail@gmail.commcepl@suse.commcepl@suse.commcepl@suse.comdmueller@suse.commcepl@suse.comcode@bnavigator.demcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commeissner@suse.commcepl@suse.commcepl@suse.commcepl@suse.comsteven.kowalik@suse.commmachova@suse.commcepl@suse.commcepl@suse.commcalabkova@suse.comdimstar@opensuse.orgmcepl@suse.comdimstar@opensuse.orgmcepl@suse.commcepl@suse.comtchvatal@suse.comschwab@suse.demcalabkova@suse.commcalabkova@suse.commcalabkova@suse.commcepl@suse.commcalabkova@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.comtchvatal@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.commcepl@suse.comtchvatal@suse.comtchvatal@suse.commimi.vx@gmail.compsimons@suse.comadam@mizerski.plschwab@suse.debwiedemann@suse.comtchvatal@suse.comjmatejek@suse.comnormand@linux.vnet.ibm.comjmatejek@suse.comdimstar@opensuse.orgmimi.vx@gmail.comjmatejek@suse.comdmueller@suse.comvcizek@suse.comschwab@suse.dejmatejek@suse.comkukuk@suse.dejmatejek@suse.comasn@cryptomilk.orgjmatejek@suse.comjmatejek@suse.comjmatejek@suse.combwiedemann@suse.comjmatejek@suse.comjmatejek@suse.comhpj@urpla.nethpj@urpla.nethpj@urpla.netjmatejek@suse.comtoddrme2178@gmail.comtoddrme2178@gmail.comjmatejek@suse.comtoddrme2178@gmail.comjmatejek@suse.comdimstar@opensuse.orgjmatejek@suse.comfisiu@opensuse.orgmeissner@suse.comschwab@suse.dejmatejek@suse.commailaender@opensuse.orgrguenther@suse.comp.drouand@gmail.comjmatejek@suse.com- Add CVE-2024-6232-ReDOS-backtrack-tarfile.patch prevent ReDos via excessive backtracking while parsing header values (bsc#1230227, CVE-2024-6232).- Add CVE-2024-5642-switch-off-NPN.patch switching off the NPN support eliminating bsc#1227233 (CVE-2024-5642).- Add CVE-2024-6923-email-hdr-inject.patch to prevent email header injection due to unquoted newlines (bsc#1228780, CVE-2024-6923). - Add CVE-2024-7592-quad-complex-cookies.patch fixing quadratic complexity in parsing cookies with backslashes (bsc#1229596, CVE-2024-7592) - %{profileopt} variable is set according to the variable %{do_profiling} (bsc#1227999)- Remove %suse_update_desktop_file macro as it is not useful any more.- Stop using %%defattr, it seems to be breaking proper executable attributes on /usr/bin/ scripts (bsc#1227378).- Add CVE-2024-4032-private-IP-addrs.patch to fix bsc#1226448 (CVE-2024-4032) rearranging definition of private v global IP addresses.- Add CVE-2024-0397-memrace_ssl.SSLContext_cert_store.patch fixing bsc#1226447 (CVE-2024-0397) by removing memory race condition in ssl.SSLContext certificate store methods.- Add bpo38361-syslog-no-slash-ident.patch (bsc#1222109, gh#python/cpython!16557) fixes syslog making default "ident" from sys.argv[0]. - Update CVE-2023-52425-libexpat-2.6.0-backport.patch so that it uses features sniffing, not just comparing version number (bsc#1220664, bsc#1219559, bsc#1221563, bsc#1222075). - Remove support-expat-CVE-2022-25236-patched.patch, which was the previous name of this patch. - Add CVE-2023-52425-remove-reparse_deferral-tests.patch skipping failing tests. - Refresh patches: - CVE-2023-27043-email-parsing-errors.patch - fix_configure_rst.patch - skip_if_buildbot-extend.patch- bsc#1221854 (CVE-2024-0450) Add CVE-2024-0450-zipfile-avoid-quoted-overlap-zipbomb.patch detecting the vulnerability of the "quoted-overlap" zipbomb (from gh#python/cpython!110016). - Add bh42369-thread-safety-zipfile-SharedFile.patch (from gh#python/cpython!26974) required by the previous patch. - Add expat-260-test_xml_etree-reparse-deferral.patch to make the interpreter work with patched libexpat in our distros. - Move all patches from locally sourced to the branch opensuse-3.6 branch at GitHub repo, and move all metadata to commits themselves (readable in the headers of each patch). - Add bpo-41675-modernize-siginterrupt.patch to make Python build cleanly even on more recent SPs of SLE-15 (gh#python/cpython#85841). - Remove patches: - bpo36263-Fix_hashlib_scrypt.patch - fix against bug in OpenSSL fixed in 1.1.1c (gh#openssl/openssl!8483), so this patch is redundant on all SUSE-supported distros - python-3.3.0b1-test-posix_fadvise.patch - protection against the kernel issues which has been fixed in gh#torvalds/linux@3d3727cdb07f, which has been included in all our kernels more recent than SLE-11. - python-3.3.3-skip-distutils-test_sysconfig_module.patch - skips a test, which should be relevant only for testing on Mac OS X systems with universal builds. I have no valid record, that this test would be ever problematic on Linux. - bpo-36576-skip_tests_for_OpenSSL-111.patch, which was included already in Python 3.5.- (bsc#1219666, CVE-2023-6597) Add CVE-2023-6597-TempDir-cleaning-symlink.patch (patch from gh#python/cpython!99930) fixing symlink bug in cleanup of tempfile.TemporaryDirectory. - Merge together bpo-36576-skip_tests_for_OpenSSL-111.patch into skip_SSL_tests.patch, and make them include all conditionals.- Refresh CVE-2023-27043-email-parsing-errors.patch to gh#python/cpython!111116, fixing bsc#1210638 (CVE-2023-27043).- Add CVE-2023-40217-avoid-ssl-pre-close.patch fixing gh#python/cpython#108310, backport from upstream patch gh#python/cpython#108315 (bsc#1214692, CVE-2023-40217)- Add 99366-patch.dict-can-decorate-async.patch fixing gh#python/cpython#98086 (backport from Python 3.10 patch in gh#python/cpython!99366), fixing bsc#1211158.- Add CVE-2007-4559-filter-tarfile_extractall.patch to fix CVE-2007-4559 (bsc#1203750) by adding the filter for tarfile.extractall (PEP 706).- Use python3 modules to build the documentation.- Add bpo-44434-libgcc_s-for-pthread_cancel.patch which eliminates unnecessary and dangerous calls to PyThread_exit_thread() (bsc#1203355).- Add CVE-2023-24329-blank-URL-bypass.patch (CVE-2023-24329, bsc#1208471) blocklists bypass via the urllib.parse component when supplying a URL that starts with blank characters- Add bpo27321-email-no-replace-header.patch to stop email.generator.py from replacing a non-existent header (bsc#1208443, gh#python/cpython#71508).- Add bsc1188607-pythreadstate_clear-decref.patch to fix crash in the garbage collection (bsc#1188607).- Add CVE-2022-45061-DoS-by-IDNA-decode.patch to avoid CVE-2022-45061 (bsc#1205244) allowing DoS by IDNA decoding extremely long domain names.- Add CVE-2022-37454-sha3-buffer-overflow.patch to fix bsc#1204577 (CVE-2022-37454, gh#python/cpython#98517) buffer overflow in hashlib.sha3_* implementations (originally from the XKCP library).- Add CVE-2020-10735-DoS-no-limit-int-size.patch to fix CVE-2020-10735 (bsc#1203125) to limit amount of digits converting text to int and vice vera (potential for DoS). Originally by Victor Stinner of Red Hat.- Add patch CVE-2021-28861-double-slash-path.patch: * http.server: Fix an open redirection vulnerability in the HTTP server when an URI path starts with //. (bsc#1202624, CVE-2021-28861)- Add CVE-2015-20107-mailcap-unsafe-filenames.patch to avoid CVE-2015-20107 (bsc#1198511, gh#python/cpython#68966), the command injection in the mailcap module. - Rename support-expat-245.patch to support-expat-CVE-2022-25236-patched.patch to unify the patch with other packages. - Add bpo-46623-skip-zlib-s390x.patch skipping two failing tests on s390x.- Update bundled pip wheel to the latest SLE version patched against bsc#1186819 (CVE-2021-3572).- Add patch support-expat-245.patch: * Support Expat >= 2.4.5- Rename 22198.patch into more descriptive remove-sphinx40-warning.patch.- Don't use appstream-glib on SLE-12. - Use Python 2-based Sphinx on SLE-12. - No documentation on SLE-12. - Add skip_SSL_tests.patch skipping tests because of patched OpenSSL (bpo#9425).- Don't use appstream-glib on SLE-12. - Use Python 2-based Sphinx on SLE-12. - No documentation on SLE-12. - Add skip_SSL_tests.patch skipping tests because of patched OpenSSL (bpo#9425).- Don't use OpenSSL 1.1 on platforms which don't have it.- Remove shebangs from from python-base libraries in _libdir (bsc#1193179, bsc#1192249). - Readjust patches: - bpo-31046_ensurepip_honours_prefix.patch - decimal.patch - python-3.3.0b1-fix_date_time_compiler.patch- build against openssl 1.1 as it is incompatible with openssl 3.0+ (bsc#1190566)- 0001-allow-for-reproducible-builds-of-python-packages.patch: ignore permission error when changing the mtime of the source file in presence of SOURCE_DATE_EPOCH- The previous construct works only on the current Factory, not in SLE.- BuildRequire rpm-build-python: The provider to inject python(abi) has been moved there. rpm-build pulls rpm-build-python automatically in when building anything against python3-base, but this implies that the initial build of python3-base does not trigger the automatic installation.- Due to conflicting demands of bsc#1183858 and platforms where Python 3.6 is only in interpreter+pip set we have to make complicated ugly construct about Sphinx BR.- Make python36 primary interpreter on SLE-15- Make build working even on older SLEs.- Update to 3.6.15: - bpo-43124: Made the internal putcmd function in smtplib sanitize input for presence of \r and \n characters to avoid (unlikely) command injection. Library - bpo-45001: Made email date parsing more robust against malformed input, namely a whitespace-only Date: header. Patch by Wouter Bolsterlee. Tests - bpo-38965: Fix test_faulthandler on GCC 10. Use the “volatile” keyword in faulthandler._stack_overflow() to prevent tail call optimization on any compiler, rather than relying on compiler specific pragma. - bpo-40791: Make compare_digest more constant-time (bsc#1214691, CVE-2022-48566). - Remove upstreamed patches: - faulthandler_stack_overflow_on_GCC10.patch- test_faulthandler is still problematic under qemu linux-user emulation, disable it there- Update to 3.6.14: * Security - bpo-44022 (bsc#1189241, CVE-2021-3737): mod:http.client now avoids infinitely reading potential HTTP headers after a 100 Continue status response from the server. - bpo-43882: The presence of newline or tab characters in parts of a URL could allow some forms of attacks. Following the controlling specification for URLs defined by WHATWG urllib.parse() now removes ASCII newlines and tabs from URLs, preventing such attacks. - bpo-42988 (CVE-2021-3426, bsc#1183374): Remove the getfile feature of the pydoc module which could be abused to read arbitrary files on the disk (directory traversal vulnerability). Moreover, even source code of Python modules can contain sensitive data like passwords. Vulnerability reported by David Schwörer. - bpo-43285: ftplib no longer trusts the IP address value returned from the server in response to the PASV command by default. This prevents a malicious FTP server from using the response to probe IPv4 address and port combinations on the client network. Code that requires the former vulnerable behavior may set a trust_server_pasv_ipv4_address attribute on their ftplib.FTP instances to True to re-enable it. - bpo-43075 (CVE-2021-3733, bsc#1189287): Fix Regular Expression Denial of Service (ReDoS) vulnerability in urllib.request.AbstractBasicAuthHandler. The ReDoS-vulnerable regex has quadratic worst-case complexity and it allows cause a denial of service when identifying crafted invalid RFCs. This ReDoS issue is on the client side and needs remote attackers to control the HTTP server. - Upstreamed patches were removed: - CVE-2021-3426-inf-disclosure-pydoc-getfile.patch - CVE-2021-3733-ReDoS-urllib-AbstractBasicAuthHandler.patch - Refreshed patches: - python3-sorted_tar.patch - riscv64-ctypes.patch- Rebuild to get new headers, avoid building in support for stropts.h (bsc#1187338).- Use versioned python-Sphinx to avoid dependency on other version of Python (bsc#1183858).- Modify Lib/ensurepip/__init__.py to contain the same version numbers as are in reality the ones in the bundled wheels (bsc#1187668).- add 22198.patch to build with Sphinx 4- Stop providing "python" symbol (bsc#1185588), which means python2 currently.- Make sure to close the import_failed.map file after the exception has been raised in order to avoid ResourceWarnings when the failing import is part of a try...except block.- Add CVE-2021-3426-inf-disclosure-pydoc-getfile.patch to remove getfile feature from pydoc, which is a security nightmare (among other things, CVE-2021-3426, allows disclosure of any file on the system; bsc#1183374, bpo#42988).Update to 3.6.13, final release of 3.6 branch: * Security - bpo#42967 (bsc#1182379, CVE-2021-23336): Fix web cache poisoning vulnerability by defaulting the query args separator to &, and allowing the user to choose a custom separator. - bpo#42938 (bsc#1181126, CVE-2021-3177): Avoid static buffers when computing the repr of ctypes.c_double and ctypes.c_longdouble values. - bpo#42103: Prevented potential DoS attack via CPU and RAM exhaustion when processing malformed Apple Property List files in binary format. - bpo#42051: The plistlib module no longer accepts entity declarations in XML plist files to avoid XML vulnerabilities. This should not affect users as entity declarations are not used in regular plist files. - bpo#40791: Add volatile to the accumulator variable in hmac.compare_digest, making constant-time-defeating optimizations less likely. * Core and Builtins - bpo#35560: Fix an assertion error in format() in debug build for floating point formatting with “n” format, zero padding and small width. Release build is not impacted. Patch by Karthikeyan Singaravelan. * Library - bpo#42103: InvalidFileException and RecursionError are now the only errors caused by loading malformed binary Plist file (previously ValueError and TypeError could be raised in some specific cases). * Tests - bpo#42794: Update test_nntplib to use offical group name of news.aioe.org for testing. Patch by Dong-hee Na. - bpo#41944: Tests for CJK codecs no longer call eval() on content received via HTTP. - Patches removed, because they were included in the upstream tarball: - CVE-2020-27619-no-eval-http-content.patch - CVE-2021-3177-buf_ovrfl_PyCArg_repr.patch- 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.- Provide the newest setuptools wheel (bsc#1176262, CVE-2019-20916) in their correct form (bsc#1180686).- (bsc#1180125) We really don't Require python-rpm-macros package. Unnecessary dependency.- readd --with-fpectl (bsc#1180377)- Adjust sphinx-update-removed-function.patch- (bsc#1179630) Update sphinx-update-removed-function.patch to work with all versions of Sphinx (not binding the Python documentation build to the latest verison of Sphinx). Updated version mentioned on gh#python/cpython#13236.- Add CVE-2020-27619-no-eval-http-content.patch fixing CVE-2020-27619 (bsc#1178009), where Lib/test/multibytecodec_support calls eval() on content retrieved via HTTP.- Add patch sphinx-update-removed-function.patch to no longer call a now removed function (gh#python/cpython#13236). As a consequence, no longer pin Sphinx version.- Pin Sphinx version to fix doc subpackage- Change setuptools and pip version numbers according to new wheels (bsc#1179756). - Add ignore_pip_deprec_warn.patch to switch of persistently failing test.- Replace bundled wheels for pip and setuptools with the updated ones (bsc#1176262 CVE-2019-20916).- Handful of changes to make python36 compatible with SLE15 and SLE12 (jsc#ECO-2799, jsc#SLE-13738) - Rebase bpo23395-PyErr_SetInterrupt-signal.patch- Fix build with RPM 4.16: error: bare words are no longer supported, please use "...": x86 == ppc.- Fix installing .desktop file- Buildrequire timezone only for general flavor. It's used in this flavor for the test suite.- Add faulthandler_stack_overflow_on_GCC10.patch to make build working even with GCC10 (bpo#38965).- Just cleanup and reordering items to synchronize with python38- Format with spec-cleaner- riscv64-support.patch: bpo-33377: add triplets for mips-r6 and riscv (#6655) - riscv64-ctypes.patch: bpo-35847: RISC-V needs CTYPES_PASS_BY_REF_HACK (GH-11694) - Update list of tests to exclude under qemu linux-user- Update the python keyring - Correct libpython name- Drop patches which are not mentioned in spec: * CVE-2019-5010-null-defer-x509-cert-DOS.patch * F00102-lib64.patch * F00251-change-user-install-location.patch * OBS_dev-shm.patch * SUSE-FEDORA-multilib.patch * bpo-31046_ensurepip_honours_prefix.patch * bpo34022-stop_hash-based_invalidation_w_SOURCE_DATE_EPOCH.patch * bpo36302-sort-module-sources.patch * bpo40784-Fix-sqlite3-deterministic-test.patch * bsc1167501-invalid-alignment.patch * python3-imp-returntype.patch - Working around missing python-packaging dependency in python-Sphinx (bsc#1174571) is not necessary anymore.- Update to 3.6.12 (bsc#1179193) * Ensure python3.dll is loaded from correct locations when Python is embedded * The __hash__() methods of ipaddress.IPv4Interface and ipaddress.IPv6Interface incorrectly generated constant hash values of 32 and 128 respectively. This resulted in always causing hash collisions. The fix uses hash() to generate hash values for the tuple of (address, mask length, network address). * Prevent http header injection by rejecting control characters in http.client.putrequest(…). * Unpickling invalid NEWOBJ_EX opcode with the C implementation raises now UnpicklingError instead of crashing. * Avoid infinite loop when reading specially crafted TAR files using the tarfile module - Drop merged fixtures: * CVE-2020-14422-ipaddress-hash-collision.patch * CVE-2019-20907_tarfile-inf-loop.patch * recursion.tar - This release also fixes CVE-2020-26116 (bsc#1177211) and CVE-2019-20907 (bsc#1174091).- 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.- Make library names internally consistent- Disable profile optimalizations as they deadlock in test_faulthandler- Disable lto as it causes mess and works with 3.7 onwards only- Sync the test disablements from the python3 in sle15- Update to 3.6.11: - bpo-39073: Disallow CR or LF in email.headerregistry. Address arguments to guard against header injection attacks. - bpo-38576 (bsc#1155094): Disallow control characters in hostnames in http.client, addressing CVE-2019-18348. Such potentially malicious header injection URLs now cause a InvalidURL to be raised. - bpo-39503: CVE-2020-8492: The AbstractBasicAuthHandler class of the urllib.request module uses an inefficient regular expression which can be exploited by an attacker to cause a denial of service. Fix the regex to prevent the catastrophic backtracking. Vulnerability reported by Ben Caller and Matt Schwager. - bpo-39401: Avoid unsafe load of api-ms-win-core-path-l1-1-0.dll at startup on Windows 7. - Remove merged patch CVE-2020-8492-urllib-ReDoS.patch, CRLF_injection_via_host_part.patch, and CVE-2019-18348-CRLF_injection_via_host_part.patch.- Fix minor issues found in the staging.- Do not set ourselves as a primary interpreter- Add CVE-2020-14422-ipaddress-hash-collision.patch fixing CVE-2020-14422 (bsc#1173274, bpo#41004), where hash collisions in IPv4Interface and IPv6Interface could lead to DOS.- Change name of idle3 icons to idle3.png to avoid collision with Python 2 version (bsc#1165894).- 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) - 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)- Add Requires: libpython%{so_version} == %{version}-%{release} to python3-base to keep both packages always synchronized (bsc#1162224).- Reame idle icons to idle3 in order to not conflict with python2 variant of the package bsc#1165894 * renamed the icons * renamed icon load in desktop file- Add pep538_coerce_legacy_c_locale.patch to coerce locale to C.UTF-8 always (bsc#1162423).- Update to 3.6.10 (still in line with jsc#SLE-9426, jsc#SLE-9427, bsc#1159035): - Security: - bpo-38945: 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. - bpo-37228: Due to significant security concerns, the reuse_address parameter of asyncio.loop.create_datagram_endpoint() is no longer supported. This is because of the behavior of SO_REUSEADDR in UDP. For more details, see the documentation for loop.create_datagram_endpoint(). (Contributed by Kyle Stanley, Antoine Pitrou, and Yury Selivanov in bpo-37228.) - bpo-38804: Fixes a ReDoS vulnerability in http.cookiejar. Patch by Ben Caller. - bpo-38243: Escape the server title of xmlrpc.server.DocXMLRPCServer when rendering the document page as HTML. (Contributed by Dong-hee Na in bpo-38243.) - bpo-38174: Update vendorized expat library version to 2.2.8, which resolves CVE-2019-15903. - bpo-37461: Fix an infinite loop when parsing specially crafted email headers. Patch by Abhilash Raj. - bpo-34155: Fix parsing of invalid email addresses with more than one @ (e.g. a@b@c.com.) to not return the part before 2nd @ as valid email address. Patch by maxking & jpic. - Library: - bpo-38216: Allow the rare code that wants to send invalid http requests from the http.client library a way to do so. The fixes for bpo-30458 led to breakage for some projects that were relying on this ability to test their own behavior in the face of bad requests. - bpo-36564: Fix infinite loop in email header folding logic that would be triggered when an email policy’s max_line_length is not long enough to include the required markup and any values in the message. Patch by Paul Ganssle - Remove patches included in the upstream tarball: - CVE-2019-16935-xmlrpc-doc-server_title.patch (and also bpo37614-race_test_docxmlrpc_srv_setup.patch, which was resolving bsc#1174701). - CVE-2019-16056-email-parse-addr.patch - Move idle subpackage build from python3-base to python3 (bsc#1159622). appstream-glib required for packaging introduces considerable extra dependencies and a build loop via rust/librsvg. - Correct installation of idle IDE icons: + idle.png is not the target directory + non-GNOME-specific icons belong into icons/hicolor - Add required Name key to idle3 desktop file- Unify all Python 3.6* SLE packages into one (jsc#SLE-9426, jsc#SLE-9427, bsc#1159035) - Patches which were already included upstream: - CVE-2018-1061-DOS-via-regexp-difflib.patch - CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch- 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 bpo-36576-skip_tests_for_OpenSSL-111.patch (originally from bpo#36576) skipping tests failing with OpenSSL 1.1.1. Fixes bsc#1149792 - Add bpo36263-Fix_hashlib_scrypt.patch which works around bsc#1151490- Add CVE-2019-16056-email-parse-addr.patch fixing the email module wrongly parses email addresses [bsc#1149955, bnc#1149955, CVE-2019-16056]- jsc#PM-1350 bsc#1149121 Update python3 to the last version of the 3.6 line. This is just a bugfix release with no changes in functionality. - The following patches were included in the upstream release as so they can be removed in the package: - CVE-2018-20852-cookie-domain-check.patch - CVE-2019-5010-null-defer-x509-cert-DOS.patch - CVE-2019-10160-netloc-port-regression.patch - CVE-2019-9636-urlsplit-NFKC-norm.patch - CVE-2019-9947-no-ctrl-char-http.patch - Patch bpo23395-PyErr_SetInterrupt-signal.patch has been reapplied on the upstream base without changing any functionality. - Add patch aarch64-prolong-timeout.patch to fix failing test_utime_current_old test.- FAKE RECORD FROM SLE-12 CHANNEL 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]- FAKE RECORD FROM SLE-12 CHANNEL bsc#1109847: add CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch fixing bpo#34623.- 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.- 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- FAKE RECORD FROM SLE-12 CHANNEL bsc#1137942: Avoid duplicate files with python3* packages (https://fate.suse.com/327309)- bsc#1094814: Add bpo23395-PyErr_SetInterrupt-signal.patch to handle situation when the SIGINT signal is ignored or not handled- Update to 3.6.8: - bugfixes only - removed patches (subsumed in the upstream tarball): - CVE-2018-20406-pickle_LONG_BINPUT.patch - refreshed patches: - CVE-2019-5010-null-defer-x509-cert-DOS.patch - CVE-2019-9636-urlsplit-NFKC-norm.patch - Python-3.0b1-record-rpm.patch - python-3.3.0b1-fix_date_time_compiler.patch - python-3.3.0b1-test-posix_fadvise.patch - python-3.3.3-skip-distutils-test_sysconfig_module.patch - python-3.6.0-multilib-new.patch - python3-sorted_tar.patch - subprocess-raise-timeout.patch - switch off LTO and PGO optimization (bsc#1133452) - 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#1129346: add CVE-2019-9636-urlsplit-NFKC-norm.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 gh#python/cpython#12224- bsc#1120644 add CVE-2018-20406-pickle_LONG_BINPUT.patch fixing bpo#34656 Modules/_pickle.c in Python before 3.7.1 has an integer overflow via a large LONG_BINPUT value that is mishandled during a "resize to twice the size" attempt. This issue might cause memory exhaustion, but is only relevant if the pickle format is used for serializing tens or hundreds of gigabytes of data.- 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.- Add -fwrapv to OPTS, which is default for python3 anyway See for example https://github.com/zopefoundation/persistent/issues/86 for bugs which are caused by avoiding it. (bsc#1107030)- 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]- As we run in main python package do not generate the pre_checkin from both now- Move the tests from base to generic package wrt bsc#1088573 * We still fail the whole distro if python3 is not build * The other archs than x86_64 took couple of hours to unblock build of other software, this way we work around the issue - Some tests are still run in -base for the LTO tweaking, but at least it is not run twice- update to 3.6.5 * bugfix release * see Misc/NEWS for details - drop ctypes-pass-by-value.patch - drop fix-localeconv-encoding-for-LC_NUMERIC.patch - refresh python-3.6.0-multilib-new.patch- Apply "python-3.6-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]- Created %so_major and %so_minor macros - Put Tools/gdb/libpython.py script into proper place and ship it with devel subpackage.- ctypes-pass-by-value.patch: Fix pass by value for structs on aarch64- Add python3-sorted_tar.patch (boo#1081750, bsc#1086001)- Add patch to fix glibc 2.27 fail bsc#1079761: * fix-localeconv-encoding-for-LC_NUMERIC.patch- move XML modules and python3-xml provide to python3-base (fixes bsc#1077230) - move ensurepip to base- Add skip_random_failing_tests.patch only for PowerPC- update to 3.6.4 * bugfix release, over a hundred bugs fixed * see Misc/NEWS for details - drop upstreamed python3-ncurses-6.0-accessors.patch - drop PYTHONSTARTUP hooks that cause spurious startup errors * fixes bsc#1070738 * the relevant feature (REPL history) is now built into Python itself- Install 2to3-%{python_version} executable (override defattr of the -tools package). 2to3 (unversioned) is a symlink and does not carry permissions (bsc#1070853).- move 2to3 to python3-tools package- update to 3.6.3 * bugfix release, over a hundred bugs fixed * see Misc/NEWS for details - drop upstreamed 0001-3.6-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3093.patch- drop python-2.7-libffi-aarch64.patch: this patches the intree copy of libffi which is unused/deleted in the line afterwards - fix build against system libffi: include flags weren't set so it actually used the in-tree libffi headers.- Fix test broken with OpenSSL 1.1 (bsc#1042670) * add 0001-3.6-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3093.patch- fix missing %{?armsuffix}- distutils-reproducible-compile.patch: ensure distutils order files before compiling, which works around bsc#1049186- Add libnsl-devel build requires for glibc obsoleting libnsl- update to 3.6.2 * bugfix release, over a hundred bugs fixed * see Misc/NEWS for details - drop upstreamed test-socket-aead-kernel49.patch - add Provides: python3-typing (fixes bsc#1050653) - drop duplicate Provides: python3- Add missing link to python library in config dir (bsc#1040164)- update to 3.6.1 * bugfix release, over a hundred bugs fixed * never add import location's parent directory to sys.path * switch to git for version control, build changes related to that * fix "failed to get random numbers" on old kernels (bsc#1029902) * several crashes and memory leaks corrected * f-string are no longer accepted as docstrings- prevent regenerating AST at build-time more robustly - add "--without profileopt" and "--without testsuite" options to python3-base to allow short circuiting when working on the package- FAKE RECORD FROM SLE-12 CHANNEL update to 3.4.6 (bsc#1027282): * fixed potential crash in PyUnicode_AsDecodedObject() in debug build * fixed possible DoS and arbitrary execution in gettext plurals * fix possible use of uninitialized memory in operator.methodcaller * fix possible Py_DECREF on unowned object in _sre * fix possible integer overflow in _csv module * prevent HTTPoxy attack (CVE-2016-1000110) * fix selectors incorrectly retaining invalid fds - drop upstreamed python-3.4-CVE-2016-1000110-fix.patch - move _elementtree to python3.rpm to match its pyexpat dependency (bsc#1029377)- Add 0001-allow-for-reproducible-builds-of-python-packages.patch upstream https://github.com/python/cpython/pull/296- reenable test_socket with AEAD patch (test-socket-aead-kernel49.patch) - reintroduce %py3_soflags macro (and better named %cpython3_soabi equivalent)- update to 3.6.0 * PEP 498 Formated string literals * PEP 515 Underscores in numeric literals * PEP 526 Syntax for variable annotations * PEP 525 Asynchronous generators * PEP 530 Asynchronous comprehensions * PEP 506 New "secrets" module for safe key generation * less memory consumed by dicts * dtrace and systemtap support * improved asyncio module * better defaults for ssl * new hashing algorithms in hashlib * bytecode format changed to allow more optimizations * "async" and "await" are on track to be reserved words * StopIteration from generators is deprecated * support for openssl < 1.0.2 is deprecated * os.urandom now blocks when getrandom() blocks * huge number of new features, bugfixes and optimizations * see https://docs.python.org/3.6/whatsnew/3.6.html for details - rework multilib patch: drop Python-3.5.0-multilib.patch, implement upstreamable python-3.6.0-multilib-new.patch - refresh python-3.3.0b1-localpath.patch, subprocess-raise-timeout.patch - drop upstreamed Python-3.5.1-fix_lru_cache_copying.patch - finally drop python-2.6b1-canonicalize2.patch that was not applied in source and only kept around in case we needed it in the future. (which we don't, as it seems) - update import_failed map and baselibs - build ctypes against system libffi (buildrequire libffi-devel in python3-base) - add new key to keyring (signed by keys already in keyring) - introduced common configure section between python3 and python3-base - moved pyconfig.h and Makefile to devel subpackage as distutils no longer need it at runtime - added python-rpm-macros dependency, regenerated macros file, drop macros.python3.py because it is not used now - improve summaries and descriptions (fixes bsc#917607) - enabled Link-Time Optimization, see what happens - including skipped_tests.py in pre_checkin.sh run - run specs through spec-cleaner, rearrange sections- FAKE RECORD FROM SLE-12 CHANNEL apply fix for CVE-2016-1000110 - CGIHandler: sets environmental variable based on user supplied Proxy request header: python-3.4-CVE-2016-1000110-fix.patch (fixes bsc#989523, CVE-2016-1000110) - refresh python3-urllib-prefer-lowercase-proxies.patch- FAKE RECORD FROM SLE-12 CHANNEL update to 3.4.5 check: https://docs.python.org/3.4/whatsnew/changelog.html (fixes bsc#984751, CVE-2016-0772) (fixes bsc#985177, CVE-2016-5636) (fixes bsc#985348, CVE-2016-5699) - drop upstreamed werror-declaration-after-statement.patch- FAKE RECORD FROM SLE-12 CHANNEL Due to being fixed upstream (differently), removed outdated patch CVE-2014-4650-CGIHTTPServer-traversal.patch (bsc#983582)- move _hashlib and _ssl modules and tests to python3-base - recommend python3- Add Python-3.5.1-fix_lru_cache_copying.patch Fix copying the lru_cache() wrapper object. Fixes deep-copying lru_cache regression, which worked on previous versions of python but fails on python 3.5. This fixes a bunch of packages in devel:languages:python3. See: https://bugs.python.org/issue25447- update to 3.5.1 * bugfix-only release, dozens of bugs fixed - Drop upstreamed Python-3.5.0-_Py_atomic_xxx-symbols.patch - "Python3" to "Python 3" in summary * This seems cleaner and fixes and rpmlint warning- FAKE RECORD FROM SLE-12 CHANNEL Issue #21121: Don't force 3rd party C extensions to be built with -Werror=declaration-after-statement. (werror-declaration-after-statement.patch, bsc#951166)- Add Python-3.5.0-_Py_atomic_xxx-symbols.patch This fixes a build error for many packages that use the Python, C-API. This patch is already accepted upstream and is slated to appear in python 3.5.1.- update to 3.5.0 * coroutines with async/await syntax * matrix multiplication operator `@` * unpacking generalizations * new modules `typing` and `zipapp` * type annotations * .pyo files replaced by custom suffixes for optimization levels in __pycache__ * support for memory BIO in ssl module * performance improvements in several modules * and many more - removals and behavior changes * deprecated `__version__` is removed * support for .pyo files was removed * system calls are auto-retried on EINTR * bare generator expressions in function calls now cause SyntaxError (change "f(x for x in i)" to "f((x for x in i))" to fix) * removed undocumented `format` member of private `PyMemoryViewObject` struct * renamed `PyMemAllocator` to `PyMemAllocatorEx` - redefine %dynlib macro to reflect that modules now have arch+os as part of name - module `time` is now built-in - dropped upstreamed patches: python-3.4.1-fix-faulthandler.patch python-3.4.3-test-conditional-ssl.patch python-fix-short-dh.patch (also dropped dh2048.pem required for this patch) - updated patch Python-3.3.0b2-multilib.patch to Python-3.5.0-multilib.patch - python-ncurses-6.0-accessors.patch taken from python 2 to fix build failure with new gcc + ncurses- Add python3-ncurses-6.0-accessors.patch: Fix build with NCurses 6.0 and OPAQUE_WINDOW set to 1.- improve import_failed hook to do the right thing when invoking missing modules with "python3 -m modulename" (boo#942751)- Build with --enable-loadable-sqlite-extensions to make it works as geospatial database.- dh2048.pem: added generated 2048 dh parameter set to fix ssl test (bsc#935856) - python-fix-short-dh.patch: replace the 512 bits dh parameter set by 2048 bits to fix build with new openssl 1.0.2c (bsc#935856)- ctypes-libffi-aarch64.patch: remove upstreamed patch - python-2.7-libffi-aarch64.patch: Fix argument passing in libffi for aarch64- python-3.4.3-test-conditional-ssl.patch - restore tests failing because test_urllib was unconditionally importing ssl (without really needing it) - restore functionality of multilib patch - drop libffi-ppc64le.diff because upstream completely changed everything yet again (sorry ppc64 folks :| )- Update to version 3.4.3 - Drop upstreamed CVE-2014-4650-CGIHTTPServer-traversal.patch (bpo#21766)- Add python-3.4.1-fix-faulthandler.patch, upstream patch for bogus faulthandler which fails with GCC 5.- asyncio has been merged in python3 main package; provide and obsolete it - Remove obsolete AUTHORS section - Remove redundant %clean section- add %python3_version rpm macro for Fedora compatibility - add missing argument in import_failed, rename Novell Bugzilla to SUSE Bugzillapython3-2to3python3-demopython3-toolsh04-ch1b 1727084268   "#"%&%()(+,+./.121454787:;:=>=@A@CDCFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3.6.153.6.153.6.153.6.15-150300.10.72.13.6.15-150300.10.72.13.6.153.6.153.6.15     !!!!!!!!!!!!""!!!!!!!!######################################################################$$$%%&&&&''&(()********++++,,2to32to3-3.6turtledemo__init__.py__main__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.opt-2.pyc__init__.cpython-36.pyc__main__.cpython-36.opt-1.pyc__main__.cpython-36.opt-2.pyc__main__.cpython-36.pycbytedesign.cpython-36.opt-1.pycbytedesign.cpython-36.opt-2.pycbytedesign.cpython-36.pycchaos.cpython-36.opt-1.pycchaos.cpython-36.opt-2.pycchaos.cpython-36.pycclock.cpython-36.opt-1.pycclock.cpython-36.opt-2.pycclock.cpython-36.pyccolormixer.cpython-36.opt-1.pyccolormixer.cpython-36.opt-2.pyccolormixer.cpython-36.pycforest.cpython-36.opt-1.pycforest.cpython-36.opt-2.pycforest.cpython-36.pycfractalcurves.cpython-36.opt-1.pycfractalcurves.cpython-36.opt-2.pycfractalcurves.cpython-36.pyclindenmayer.cpython-36.opt-1.pyclindenmayer.cpython-36.opt-2.pyclindenmayer.cpython-36.pycminimal_hanoi.cpython-36.opt-1.pycminimal_hanoi.cpython-36.opt-2.pycminimal_hanoi.cpython-36.pycnim.cpython-36.opt-1.pycnim.cpython-36.opt-2.pycnim.cpython-36.pycpaint.cpython-36.opt-1.pycpaint.cpython-36.opt-2.pycpaint.cpython-36.pycpeace.cpython-36.opt-1.pycpeace.cpython-36.opt-2.pycpeace.cpython-36.pycpenrose.cpython-36.opt-1.pycpenrose.cpython-36.opt-2.pycpenrose.cpython-36.pycplanet_and_moon.cpython-36.opt-1.pycplanet_and_moon.cpython-36.opt-2.pycplanet_and_moon.cpython-36.pycrosette.cpython-36.opt-1.pycrosette.cpython-36.opt-2.pycrosette.cpython-36.pycround_dance.cpython-36.opt-1.pycround_dance.cpython-36.opt-2.pycround_dance.cpython-36.pycsorting_animate.cpython-36.opt-1.pycsorting_animate.cpython-36.opt-2.pycsorting_animate.cpython-36.pyctree.cpython-36.opt-1.pyctree.cpython-36.opt-2.pyctree.cpython-36.pyctwo_canvases.cpython-36.opt-1.pyctwo_canvases.cpython-36.opt-2.pyctwo_canvases.cpython-36.pycyinyang.cpython-36.opt-1.pycyinyang.cpython-36.opt-2.pycyinyang.cpython-36.pycbytedesign.pychaos.pyclock.pycolormixer.pyforest.pyfractalcurves.pylindenmayer.pyminimal_hanoi.pynim.pypaint.pypeace.pypenrose.pyplanet_and_moon.pyrosette.pyround_dance.pysorting_animate.pytree.pyturtle.cfgtwo_canvases.pyyinyang.pyToolsREADMEbuildbotccbenchccbench.pyclinicclinic.pyclinic_test.pycpp.pydemoREADMEbeer.pyeiffel.pyhanoi.pylife.pymarkov.pymcast.pyqueens.pyredemo.pyrpython.pyrpythond.pysortvisu.pyss1.pyvector.pyfreezeREADMEbkfile.pycheckextensions.pycheckextensions_win32.pyextensions_win32.iniflag.pyfreeze.pyhello.pymakeconfig.pymakefreeze.pymakemakefile.pyparsesetup.pytestok.pywin32.htmlwinmakemakefile.pyi18nmakelocalealias.pymsgfmt.pypygettext.pyimportbenchREADMEimportbench.pyiobenchiobench.pymsiREADME.txtbundleDefault.thmDefault.wxlSideBar.pngbootstrapLICENSE.txtPythonBootstrapperApplication.cpppch.cpppch.hpythonba.cpppythonba.defpythonba.slnpythonba.vcxprojresource.hbundle.targetsbundle.wxlbundle.wxsfull.wixprojpackagegroupscore.wxscrt.wxsdev.wxsdoc.wxsexe.wxslauncher.wxslib.wxspackageinstall.wxspip.wxspostinstall.wxstcltk.wxstest.wxstools.wxsreleaselocal.wixprojreleaseweb.wixprojsnapshot.wixprojcommon.wxscommon_en-US.wxl_templatecorecore.wixprojcore.wxscore_d.wixprojcore_d.wxscore_en-US.wxlcore_files.wxscore_pdb.wixprojcore_pdb.wxscsv_to_wxs.pydevdev.wixprojdev.wxsdev_d.wixprojdev_d.wxsdev_en-US.wxldev_files.wxsdistutils.command.bdist_wininst.pydocdoc.wixprojdoc.wxsdoc_en-US.wxl_templatedoc_files.wxsdoc_no_files.wxsexecrtlicense.txtexe.wixprojexe.wxsexe_d.wixprojexe_d.wxsexe_en-US.wxl_templateexe_files.wxsexe_pdb.wixprojexe_pdb.wxsexe_reg.wxsgenerate_md5.pylauncherlauncher.wixprojlauncher.wxslauncher_en-US.wxllauncher_files.wxslauncher_reg.wxsliblib.wixprojlib.wxslib_d.wixprojlib_d.wxslib_en-US.wxllib_files.wxslib_pdb.wixprojlib_pdb.wxsmake_zip.projmake_zip.pymsi.propsmsi.targetspathpath.wixprojpath.wxspath_en-US.wxlpippip.wixprojpip.wxspip_en-US.wxlpurge.pytcltktcltk.wixprojtcltk.wxstcltk_d.wixprojtcltk_d.wxstcltk_en-US.wxl_templatetcltk_files.wxstcltk_pdb.wixprojtcltk_pdb.wxstcltk_reg.wxstesttest.wixprojtest.wxstest_d.wixprojtest_d.wxstest_en-US.wxltest_files.wxstest_pdb.wixprojtest_pdb.wxstoolstools.wixprojtools.wxstools_en-US.wxltools_files.wxsuploadrelease.projwix.propsnugetmake_pkg.projpython.nuspecpython.propspythondaily.nuspecpythonx86.nuspecparserunparse.pypybenchArithmetic.pyCalls.pyCommandLine.pyConstructs.pyDict.pyExceptions.pyImports.pyInstances.pyLICENSELists.pyLookups.pyNewInstances.pyNumbers.pyREADMESetup.pyStrings.pyTuples.pyUnicode.pyWith.pyclockres.pypackage__init__.pysubmodule.pypybench.pysystimes.pypyncheChipViewer.pyColorDB.pyDetailsViewer.pyListViewer.pyMain.pyPyncheWidget.pyREADMEStripViewer.pySwitchboard.pyTextViewer.pyTypeinViewer.pyXrgb.txtxlicense.txt__init__.pyhtml40colors.txtnamedcolors.txtpyColorChooser.pypynchepynche.pywwebcolors.txtwebsafe.txtscripts2to3READMEabitype.pyanalyze_dxp.pybyext.pybyteyears.pycheckpip.pycheckpyc.pycleanfuture.pycombinerefs.pycopytime.pycrlf.pydb2pickle.pydiff.pydutree.docdutree.pyeptags.pyfind-uname.pyfind_recursionlimit.pyfinddiv.pyfindlinksto.pyfindnocoding.pyfixcid.pyfixdiv.pyfixheader.pyfixnotice.pyfixps.pygenerate_opcode_h.pyget-remote-certificate.pygoogle.pygprof2html.pyh2py.pyhighlight.pyidle3ifdef.pyimport_diagnostics.pylfcr.pylinktree.pylll.pymailerdaemon.pymake_ctype.pymd5sum.pymkreal.pyndiff.pynm2def.pyobjgraph.pyparse_html5_entities.pyparseentities.pypatchcheck.pypathfix.pypdeps.pypickle2db.pypindent.pyptags.pypydoc3pysource.pypyvenvreindent-rst.pyreindent.pyrgrep.pyrun_tests.pyserve.pysuff.pysvneol.pytexi2html.pytreesync.pyuntabify.pyupdate_file.pywhich.pywin_add2path.pysslmake_ssl_data.pymultissltests.pysslspeed.vcxprojstringbenchREADMEstringbench.pytest2to3READMEmaintest.pysetup.pytestruntests.pytest_foo.pytest2to3__init__.pyhello.pytzzdump.pyunicodecomparecodecs.pygencjkcodecs.pygencodec.pygenwincodec.pylistcodecs.pymakeunicodedata.pymkstringprep.pypython-mappingsCP1140.TXTCP273.TXTKOI8-U.TXTTIS-620.TXTunittestguiREADME.txtunittestgui.py/usr/bin//usr/lib64/python3.6//usr/lib64/python3.6/turtledemo//usr/lib64/python3.6/turtledemo/__pycache__//usr/share/doc/packages/python3-core//usr/share/doc/packages/python3-core/Tools//usr/share/doc/packages/python3-core/Tools/ccbench//usr/share/doc/packages/python3-core/Tools/clinic//usr/share/doc/packages/python3-core/Tools/demo//usr/share/doc/packages/python3-core/Tools/freeze//usr/share/doc/packages/python3-core/Tools/freeze/test//usr/share/doc/packages/python3-core/Tools/i18n//usr/share/doc/packages/python3-core/Tools/importbench//usr/share/doc/packages/python3-core/Tools/iobench//usr/share/doc/packages/python3-core/Tools/msi//usr/share/doc/packages/python3-core/Tools/msi/bundle//usr/share/doc/packages/python3-core/Tools/msi/bundle/bootstrap//usr/share/doc/packages/python3-core/Tools/msi/bundle/packagegroups//usr/share/doc/packages/python3-core/Tools/msi/core//usr/share/doc/packages/python3-core/Tools/msi/dev//usr/share/doc/packages/python3-core/Tools/msi/doc//usr/share/doc/packages/python3-core/Tools/msi/exe//usr/share/doc/packages/python3-core/Tools/msi/launcher//usr/share/doc/packages/python3-core/Tools/msi/lib//usr/share/doc/packages/python3-core/Tools/msi/path//usr/share/doc/packages/python3-core/Tools/msi/pip//usr/share/doc/packages/python3-core/Tools/msi/tcltk//usr/share/doc/packages/python3-core/Tools/msi/test//usr/share/doc/packages/python3-core/Tools/msi/tools//usr/share/doc/packages/python3-core/Tools/nuget//usr/share/doc/packages/python3-core/Tools/parser//usr/share/doc/packages/python3-core/Tools/pybench//usr/share/doc/packages/python3-core/Tools/pybench/package//usr/share/doc/packages/python3-core/Tools/pynche//usr/share/doc/packages/python3-core/Tools/pynche/X//usr/share/doc/packages/python3-core/Tools/scripts//usr/share/doc/packages/python3-core/Tools/ssl//usr/share/doc/packages/python3-core/Tools/stringbench//usr/share/doc/packages/python3-core/Tools/test2to3//usr/share/doc/packages/python3-core/Tools/test2to3/test//usr/share/doc/packages/python3-core/Tools/test2to3/test2to3//usr/share/doc/packages/python3-core/Tools/tz//usr/share/doc/packages/python3-core/Tools/unicode//usr/share/doc/packages/python3-core/Tools/unicode/python-mappings//usr/share/doc/packages/python3-core/Tools/unittestgui/-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:35633/SUSE_SLE-15-SP3_Update/49d100f4782fe3fa552c67d6b7bc38f8-python3.SUSE_SLE-15-SP3_Update:basedrpmxz5x86_64-suse-linux                   Python script, ASCII text executabledirectorypython 3.6 byte-compiledASCII textHTML document, ASCII text, with very long linesPython script text executable Python script, ASCII text executablePython script, UTF-8 Unicode text executablePython script, ISO-8859 text executablePython script, UTF-8 Unicode text executable, with very long linesXML 1.0 document, ASCII textXML 1.0 document, UTF-8 Unicode (with BOM) textPNG image data, 176 x 382, 8-bit/color RGB, non-interlacedASCII text, with very long linesC source, ASCII textUTF-8 Unicode (with BOM) text, with CRLF line terminatorsXML 1.0 document, UTF-8 Unicode (with BOM) text, with CRLF line terminatorsXML 1.0 document, ASCII text, with very long linesXML 1.0 document, ASCII text, with CRLF line terminatorsemptya /usr/bin/env python script, ASCII text executablenews, ASCII texta /usr/bin/env python3 script, ASCII text executable  !"#$%&'()*+,-./0123456789:;<=>?@ABDEGHJLNPQSUWYZ[\^_RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR{'d3Putf-89c204711eea3d11eabe061d4ad6f0d7007947ee0fd961de96a12b68b09fa3e5a?7zXZ !t/8]"k%js) `>fkDwTsm6m7FMθ{rh͋ 絃*"r lCuzuWIn+;<&҂AV 6/`Icvz5Xꅍ.%&[f\'ZUV8LХ^ ;(`|=%f-#W_d A_CH@8HOT ]I"B+WG.P彳1_PWvdrT FG "ՐkȍBU&{K,&!TlLmH,7(j }E@mRH+eI+/7eȯr2vV؂ŁシeMi=p0,~5QM JZE`Luu6_Ѳ!LdZ}ymsn%W,?y,(ҥbyIo${py k/ϣNL~ 5i6BD7J)mˈ8cfGo:^߆ s pMCh'TlZZ :.`m~2Q+'-hSE^T[k(xΊA8 HEFW\TŴcgڼ%K>E+$ IM.Iިh'Q>>`O^dX&dD t=Vn9zgl9y[NDT2y6q[Vb'`~#Ϥoy~lyERنG[NHVҾ/͵'u|d/dX@ SchVVڒF]QQ@8::z!+!H Ӌ's)"T42V`O&3r6`,oڳq L ,X$FGzt;zџh /@/A[Ml)ˌSm eFߔ "G ,>$C 7ALb L7Um^Md7>Aܣ<1cD)M q~gWN?~ԁ\wTVOl4U_Q.̗xxC e*s M?1ZDW8*6ma7 _>.)R&I!"(@=;39L"40r;vp>.bLN| RMj]Q/1H~D GUsA ̃TkL)Yx#?x77x|RTLe rWػ_%6v\B_M}^ȷ\U꨽heF!Z#E]}!\Zs' &Џp4}g m~DN6x~8ܕZv/rB+Tpy7{//t*8 b.lIaP&NT8>=DLTV8ߋ5RϥqNAaO/*E!O,CoPIf<W{7R8̕{2&Ji5E"˗\ZOC߱\mu"gdEjsQH.P'(Ktj9t[ |P$LMd6*oƨlu#+/oZi~p"װR5'khNa*CvT|v뢸L |>PF&y)2Pf O1ϔZu{vdIbtt>!c01֐l^?u+Q_:7FT{K6Zz #TM!7׸J[P{Yy]F8N^\WR*YhZYJ IzѐMphL"ra7{~T޹, ܖ=.XVb{F+j@L*1-6upNzu&l,ʷ͘)f+>43հcص<ʄ4=bQcU3`O0n`98G×ʰxӥnf 4)̯EVDnF$LEvPZ+g SÂwCk'Oπݮ\Z,#K1 i8]o[j|]4s׻\Gmi6e%H Fpg܁dy?oCit&ݾ s]ˁmHQ޴`,vOLⳓ}Yj4_dsG:3fUKKL#U(:NUN O I.Xw{5<&'Ê3\`JȕSFөT7I)c2@h(>֡'+>{C=5Ƭ#B{ON4`谌Fۮdf$$♈ };+;0w#ӨOd*fi "5?Fd"vs4ED@{vg>a{+w%0 EVQ3[!9>h@$zjf)x/%X i6f3.s/ )AknB#9<] ?ݜKBy*5U4Tyx/sD7~шCKE,Lvח*yLU[ #e J즒S͒x;)4+4*{՟v㍳1kĨ|̱Ǟ IB[RQEX(![vx'xu\gњ)q`l;u5yS`*9giu<^c32KuXONXd7kc3`@X:GaŋT8eŮ#y XO[P;٬vF?BŎ2Ӹb)";a >8qtz8ʣ^lo$G>(0u[J9uuw`stn!EP]#(S NZqq)BcsĭD_(yIdl^ ~Tڧ/.vAk"y! w8>dFB$vD;?㷷meRY.F~)9CO~9̤Ш?`_NϹn=;A3(\rgE[¹䫺U32K0~?bX. ZH}Ihڏh#es2ϯ3| !}9dP)΢[kOEi= c!S~'WN\$un"ȅrmHOV Jw+49%|IiYU^[3u4ۄՃr"AC1D/4x6_Wj cQbVڈy,,yw0=R۝ U| ަ`^P]2~PSe1jz6 ⌹HO<4`@4Go^P!^|U OM`'&]<2J ıžvnDޭf$'pdIH[O~>TO"rh Gc3QO (EvG60cu%)}X Tk2B'k ËK-o/=Z2ݩ^:߿݄HAM->dwvҸV߷r e*I` k MxvBԂ$"l05،#N) coEK w 3J')c*d:/-Od2NIĦEwW $XaI\"Pں2 Ω-5siLs|; E7 C{+ TJk5#3."CVT $qഉ8Qȷ- ^loOh^U8SO#5|zD@Z_i$/?EDUymsxv"!6X¦f=kDD]Ruڙ\g:)b!?7,TI񯫣g!|TeaK}XF3lbQ&IlޓTdR]ox+7Fr [nBRcjv% ڀ%dUm*R yZ7^ зvUߓ a=9iX ycVDaoC<:%o.l'q|{#s(aI2Nxvpef3zϬ\JN/WfZ?m)`[Dk@10؇b`m'V_PМ+ce8kw٨ۅR1SyJOCWfyN꾹V7Y:FRf{q萃PRSg4+!bKlH˴$YdH Y(rrQCvJ|u冯BW'tٱrBP5Mؚ= P[im•˼:Dmf_+^+*M9'tY&yiJ@= ʬO~> /'gkӍHp|񒲱-xS?&[+q=gvV@5{&(!kM:r52;-3|$H,/u؟W.9̚[Bf՟7u7ѣ3µf@dm*m=m\SџcJr(W󍚟B;czBsQ(XKo|KBzkYs6`*" ~4|&o|)NDi ; 㘻)>'t@LvHrCEO#Q݂z&@ҞuOL|9F\lneÈb Ivio9.SIQӦ&?Ng;Y & n}>%z #W6ؿр%ka@j%& Lzq+ 8`]tvFcuW;Ql hۯܠťl{MnJAVEE<V,7;Mgt,GVp+qaNx?>9U^O9#+%;<< t 󐱬^B\a`˩<9N$8d]*X~b4{;o\sKɃ, Da 4 ]$^]@xJ 5D?Oh,C1NUZT:\:C,& D"Bre+JĤT_CBhC@/]h&DE!aP d,ڬGY`NKx68LHt/dtmOttk \J/bb z6qL YZ