python3-idle-3.6.15-150300.10.118.1<>,ԉi0p9|89"SpWTٔ[SCf(;7UGRH;؋G(Νqap7N^fSS:3ЊFM2}MlFāɬa}h\QX)k[ᩒJo_U /1Sӧ]!$bu .Gl$ٜ6YgH/{3>mZ ad47'iq& n-ڸ8ŒQW#FS]Io;ژk] yʶu>A<?,d & W48DHa $ d$ $ $ $ $ $$$€¨$8  (  (H8P9 :TB F'G<$H$I\$X Y Z[\$]$^ܝb c߶d8e=f@lBuT$vw$xt$yz(Cpython3-idle3.6.15150300.10.118.1An Integrated Development Environment for PythonIDLE is a Tkinter based integrated development environment for Python. It features a multi-window text editor with multiple undo, Python colorizing, and many other things, as well as a Python shell window and a debugger.i0s390zp374>SUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Unspecifiedhttps://www.python.org/linuxs390x * 8]J((Hx[MN  lf`}OIUj$%x!~((+&(>+V  %P>%PY  wOWw616..7v67v5,[60   ^g  1LL(p( 0g 0eJe:::545 ;2t;?  --.M( `(R R LQ>wL;3<99 L1&,&;747*** ? ? ?e4e];_$lMu Y(, "!4`J/l::8VJ,=#2R:"33+"+  **(("" ",p+,((O(_dadkk  k s F s66 d  a N a\\ee f5W)Wa.e+J.e: : 878k:7:Q)Q$$$ ` &B&&B<_6U<_V r ( r""6N-k 2i8"%tg;w! u dQ#xf R8 vH-P q%E$  g-UemB  3P%wH$ y :Np0NRdCxj \03fV:+' <(%x!: fA큤A큤A큤A큤큤A큤A큤큤A큤AAA큤AA큤AA큤A큤iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiOiOiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiOiOiOiOiOiOiOiOiOiiiiiOiOiOiOiOiOiOiOiOiOiiOiOiiOiOiOiOiiOiiiiOiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOii,a2a2a2a2a2iiiiiiiiiiiie75df0b77ff61253be457af636d5eb7c55a3ff2b6a733beea844d2b294972ebfd22eea091d1f8f7b11a320cedb5acd822469c0c7ad3629d1f50f6fde6194593dc263472e71b9b557264dd066c5f06ea76d0935d25b19b92e9ac7bc49de82f15763485c7ce263c2c8e1076c52d6044dc008a75794aefd670dd259e75b1288c343251aa57bcef1bc9567a229154ee1370395c03cc241fb814555731338d2b695aac7a0cc61079c6e2df53457e63b413e0389f2c0061eb55e80229da932c8f8dbd61abddb32c2275993c297df1b56ce5d8b34eda35f823dfc27577c2b18c26efcf8531067a78ad392f25631aba1d885f40786cf5f47854577162c9f90ff1f33164c7c98d566a13fd599d1c11a375f387fef69b6c595c4f18c5d88c188a860be0e55bfe9c9b62bf4a4b1cb8419282f78bc98f4cde453a0d6bbfce8a7b76177a1af94ae74eb8119aa88532734a84dd782830f8f5cb4dff01cfa4372b1e4afa35653134ad97f34e64abd93e1e32aff017ff8914e3204a76044f1486bc9fbefa07bfdbb26999728e6eefa83b486188a3af6900a464741307e7e4fbe4c6bb030eb765042963d5f8d5d1259e9874a263a6621ca6dd1d57608faa5f28f7d61f349583e07814a404d5bcb1109a33329f0e099fa8c07a8b02401da4e531bbc6de733a90e45aa37484901eb40eefa846308e1da3ff6f240ea98f769a2afc3cf4fdba00327ecbef9b54f0a6c4a21daea6f41263e8df267367f5b491094bea56179a9c3b4ebd65afc11c3d934f8de7d3285f616d0a9129f8113b158157501829c2e452101d067a49a59e2abf1840156e9db8f85a38822fd56ab79a139eb95ec86f1fba1bb87326bfcea17dee8413652327d3d1f7565ac6b32b392a5e424947ede2088e27600346909878665b07bcb76fb3222ea1b4947a553ad0af76fc12b31651d1707980791dca932fd307c4bdc223ae39165f413b2a530b2dbf6323e8a272865da6627535ea3c7d72d323257e4c4c095b611381fd9f336d80fa7ae9104e7b03d14a7df2d9ae9c89a3b513501ebace8e428aea68dce39d0af9f29196e08fc9ea49c99605e79e72fc5037f367472c50ae104f86df35c0d5967968e352d7ea2b944f5909326076bf88e0fb30fa0ab5d0dc3030442ed92713f34170336c4dd2623723dc34829df893f8058df4fec56eb20ff67ff84c86fd3d9697e2384c5a290ed696f6d3187aa45f8f55514d26791588de02fe685af0ab129174b32ab93efa39faf6140b6795d9d7dc893387277fa773d083598f96ffc4810a5b4331061d57db88354534dce93875a2a35e3ab637f63f2bda393f4aa07ff2a85b2fd384b5b8aa49eb278449fe6827dc893387277fa773d083598f96ffc4810a5b4331061d57db88354534dce93877e297fe005404ab3d3aa4c5daa929a51516917c49f3f1221ddffed8f41c505143e53d7ed9073225b5dc489d89ead189190f1b198354c7567756ed1bd065f10097e297fe005404ab3d3aa4c5daa929a51516917c49f3f1221ddffed8f41c5051480df23b4274bd17cfb2f4e792c790f1c35aef6f1a4a3997520da8a377edbab5935d7ef53ebb890a0e0dc684f284f0bcda798d796ec636e5e5a95727dabbca96280df23b4274bd17cfb2f4e792c790f1c35aef6f1a4a3997520da8a377edbab5913a6faa02de0f8df05e0797a8bf208972cac47a2bc4ccfd8c391d35ed8af289585791dff2b7dc8d1659746701d27ec1dee3780bad37f0eca00f5d5c4136b9d4113a6faa02de0f8df05e0797a8bf208972cac47a2bc4ccfd8c391d35ed8af2895f6a7322ccbd5fd1a4e8f192425bb22234f2005de8fa6fcaf79e2bc3528f3ecd0a500921c55b44bbe5ba0d04877d933b9748ca67d8770b5326f7cc7fbc9416c0ab75ff836d3761f38e99e197214829c82b2eb3d69dcf3dc903494b2443c9565940f11b6fddd1e287018827e13142281bda4073dbf5ebeec8a9cc759a269a982ae1993395233188f5a9fd717702b0382c31d5f62a5c1ae6e80260038fd5821e0ec0f11b6fddd1e287018827e13142281bda4073dbf5ebeec8a9cc759a269a982ae5fd3efa00162361279a586806c08dd80da054fe30e9f2ca0f6d2e5500bd4c3eda7f4d2fe6adc52ce82c74561f4c1fb6df77a2671fc34377ce49a430aea96cad75fd3efa00162361279a586806c08dd80da054fe30e9f2ca0f6d2e5500bd4c3ed824d6ebc9827088533f154f589301df0542b02d55f3facd2b42118f607915d7ad43fe9d4ea2d203588f6a6aab9084f9bcfefd96452050787375ec69d358f0f45824d6ebc9827088533f154f589301df0542b02d55f3facd2b42118f607915d7a00e7677d73fdcc13ced3e10e1cce6fd563d272803666b797ede37c160858eb39c95d7ddcd6bb8627823ff9f980384e1dcf8a07fc4dccf7d606df5e94cb53292d00e7677d73fdcc13ced3e10e1cce6fd563d272803666b797ede37c160858eb3991fdeaa8e999baeff4d25dfe54f9558a067aea4b4c85ede3f0355cd4417c0f5296cd108d3a02366b9e1cf1e6c704a07de3346ffdd11282ca75bd8a673354bf94ad2cbfd5f2a2b1f83ac8a7b0d67dc1db1ed1bd274bbe0151c25ace4f66d536cc520da671acabcf25d77d08e166ea62c50c86cbf1db31f04afbfe8cbfae1e4b7a6af8e1dd2806442eea4dcf248e21f8ec7f6107313966e3b458eee224ec5fec6a520da671acabcf25d77d08e166ea62c50c86cbf1db31f04afbfe8cbfae1e4b7a9fe1a4a6bb793fb98e9300fa01c747ecc03c5bddf9511fbfeec3b385f6705806259ef034fef2230486b121cb63a73a5daad4d9594e929a39569dff5d38ec94a49fe1a4a6bb793fb98e9300fa01c747ecc03c5bddf9511fbfeec3b385f670580606c85b828ef476d7d84e40ca51fc3912bfda7b14a0e8ea0fd8c2910872ef9c6726097659fbf91da81d1049da0223621b2f1f7f218e544e4a13a436245c3f96aa06c85b828ef476d7d84e40ca51fc3912bfda7b14a0e8ea0fd8c2910872ef9c67ee07d8005a6a7c487d1f7f2aee9a7890f5fb2806116d3cfb0eb6d3f7ea9acd3e59e520e586ae648b84217e185943f48d74c64607b8b7ebcc5601b6a3bb233c0aee07d8005a6a7c487d1f7f2aee9a7890f5fb2806116d3cfb0eb6d3f7ea9acd3ea6930f5f05cf37b5af9043b8bf35ab7b0e90bf4ab5985d4a0bf1c7017eb089370937943b69bad15f2ba42118679a2f1df93ebd6a4fc21119dfb97e37c161ffdfa6930f5f05cf37b5af9043b8bf35ab7b0e90bf4ab5985d4a0bf1c7017eb089370d68b5f889c1243b8476d5c2fbcb09f9c6802c3c33c3f62f5b7cd74384154b3c2ab340f25b46103155bcb6293ed18acc03958a161fd63162ca4a90909872f679f66283acd8afb89a33e0162536262dbd4b521d7a775bde457a91cb3a42cb1d695320aa17597ae12edd98cbb4b9f30de0b139f2c2c8ab064492f6c624dab37ec35320aa17597ae12edd98cbb4b9f30de0b139f2c2c8ab064492f6c624dab37ec35320aa17597ae12edd98cbb4b9f30de0b139f2c2c8ab064492f6c624dab37ec33403f3adbb8636119c06fca4f7280d93482e6b93e7828c8bafa51d26271380c73403f3adbb8636119c06fca4f7280d93482e6b93e7828c8bafa51d26271380c73403f3adbb8636119c06fca4f7280d93482e6b93e7828c8bafa51d26271380c7c5a2044652dcb9b909e499b991a44de4ed014e1fabdc8c83058edca0a376e9fc97bf680b894657fa0d6649ec977dc9d226935d55a2f9e4d65d0107df723bfe53c5a2044652dcb9b909e499b991a44de4ed014e1fabdc8c83058edca0a376e9fccf59d85f60672893f9b568ffbd6db9b42c387b0877662ef4e8fac37a2fb9952604c67731fc2ce60fd2f008fbbbe5a52df7048c7f8e997249c3c8607bb42980f0cf59d85f60672893f9b568ffbd6db9b42c387b0877662ef4e8fac37a2fb99526fba8a64f78e7f71d58834b5d7acc2ab441fbfb8d9e29b0322efadeee41b2cd6eb225fa3ae3decb590c126bd78112014b6333c9d8fd65730f8173f48e784ef8c4c701305be0a604fbfd4f1fa578a7554fa1223724c3877b3d4a4b5e27d0471bd203c94bcd5ddeb428650cdef0602b7696d3f1d2b8771efed784a42ee29252ec75bd2096a53f8c70800c46a6db820795ac51a2bb3f2bb6b4e80d001998766639b211ccdf59828600e4e3c4a2f86d8a8ba74105c2ed545fe50d1901c7cf6faddcdbfc29b9f91b3963499880e2f849eb04e645552fcd417d12287eac1f7e4147260e6e7e893d6ba8387bc7d6241cfa731cf3684183ccba4a64c8d35deff11aeb74fcfc29b9f91b3963499880e2f849eb04e645552fcd417d12287eac1f7e4147260eec27d05e46f48030c2609a1582433f6292449a2f9bf8661e22ef82a23cc21d8c7946d6a03a66c5049a403468a0831b300e270cfa305a6b9f0cb59fcb52068da9ec27d05e46f48030c2609a1582433f6292449a2f9bf8661e22ef82a23cc21d8c91bb1d86b7cef0a83f4b488b1b41a5d7222c6d51f8b54283fc78683400fb15a0c733c0f1d197c5c852f2462b1bae3cb829364d7e3927c7b3a17161afada13a0191bb1d86b7cef0a83f4b488b1b41a5d7222c6d51f8b54283fc78683400fb15a07ce4c83c2688562c05f258932207ab4c75b8dd7583b16afd3ac864b9ce94d8a3e7350aa6ff1ecc2c8f9aeb1e3b53a5e521aca1043bd4d096b646f3a645eedde07ce4c83c2688562c05f258932207ab4c75b8dd7583b16afd3ac864b9ce94d8a3ad3be54b400bfd2afd377d1c755b787bce91e9180fce625b47d8c7cb26d118a7e62ca0890533e30c342d333ad4b599c883b8a29e0edf6d742de2d300c2e05410ad3be54b400bfd2afd377d1c755b787bce91e9180fce625b47d8c7cb26d118a7469a94c2dde65ccc40bda1eafc406e154135dc622894ee65b6dd92b63e0f968c469a94c2dde65ccc40bda1eafc406e154135dc622894ee65b6dd92b63e0f968c469a94c2dde65ccc40bda1eafc406e154135dc622894ee65b6dd92b63e0f968c3860f97508db7800fb56c4fe4cb1e3efc639ba81f9498b34198422b1914d7cf5df96f8a1427d239c615b07c3242d7d6a873929b633ef23ebaee580daf8ff9e6f3860f97508db7800fb56c4fe4cb1e3efc639ba81f9498b34198422b1914d7cf59ca8bb46d551664532470d37678972211052874c8581afcfb7b047b6e592c1e6d5afacc6ca0c4061173e04fd8d0ccade718e101aea53eac9e6444392bfac55cf9ca8bb46d551664532470d37678972211052874c8581afcfb7b047b6e592c1e6a008e22189be839e28cf73a2ff6a2ced0e9b63ee94ea6955ef8ad9ee9a5b4b4ec266ca420764fada1c1d0711d996e47db381081f711a4838b00304673a75ffeda008e22189be839e28cf73a2ff6a2ced0e9b63ee94ea6955ef8ad9ee9a5b4b4ecfb15a11c61056e2fc5372140bb56586e892c9abde9d43885168013b2ca60847e867ede9fc029964fee6d84760c3accfb07138a31897db036e46c9c028771ad5f86dd22ca622f28ac28daebe0c7486690bd5f9e43181734cbbedf9bf7cd2aa9a792c99f86ebf77890b158e588ed0a66628f92e9a0fe7cf0c1708edd6d88c48e27e7a88ae0a28d364fd164391d10c7c9de09879a06aa8d71ee7a4b1193204260e792c99f86ebf77890b158e588ed0a66628f92e9a0fe7cf0c1708edd6d88c48e29d25244b3a14b81b3880b6abfb1097f89d1df6ed34673d800ac65b5fba0134f60d5a13dd6a86fa0dcb9ee67875ed550da7b24381056fe37b910b6977f73469c69d25244b3a14b81b3880b6abfb1097f89d1df6ed34673d800ac65b5fba0134f6f4aa3b4cd8c05e3a9be1dabedb93199bc708f61d6bcadd1d3c677d4b2e967a74cb8120ad9bdafaa582b8797e1af110da591f9c1f3c64ba89e9e646f3f239f54bf4aa3b4cd8c05e3a9be1dabedb93199bc708f61d6bcadd1d3c677d4b2e967a74a89f720f0843459211a41d310e486ee1a617e840b9c186b54649290a0e4663a1d9fc39c8adbb54a935feb76d461dcb5e0483168c66ac121d9db6c7000c8d4615a89f720f0843459211a41d310e486ee1a617e840b9c186b54649290a0e4663a16d00c35cdb23bb517ea231707eda654d5e7e5967a1988e56ff6e318ab6abc6d26d00c35cdb23bb517ea231707eda654d5e7e5967a1988e56ff6e318ab6abc6d2064d5c12f25429a91fe3b97a46983a6482bdd9ef2c6fe98c20f1c728b3082e7967a6c2363fbc16479de021b6cd205f9b54a3bd93fefd678205d7d1f3f30de46090d31191961b51578eb8630ea0f3625e92f36ef8f1841016062b5fa810d3602c5c983ebdb3862e553ff14a8c7db907cef5806e62b7b8ea7af725ea9f8e8975b792b2c12af056228a21daa6fd5a36138854e260ec2d75f94e8f66c394c39479c804acdda1fc261e78dc76bddc344e780f4939c71fc3a32c5f3d74e26f9a8abc64d8f1f924c7406d2efa3a4d2135f1261e811c75be537bdd6233394d98422e05e1f6d7ffb5530be4e8ee820d4740ca10c80fedbeec4dfcb36e90b7e68d037f6150d634a7942d447c1c340614b2885381a2e3b0928020ccba12a8a31f0392add01df6d7ffb5530be4e8ee820d4740ca10c80fedbeec4dfcb36e90b7e68d037f6150719b5ce8f3bcea12faeaebf5194701afdeb136662a1d3c2fb532388030dc5e108bac6ab9d3d0d61168709f460117ebf3d194d8017f12d4f6701d91ef4c8cfdf8719b5ce8f3bcea12faeaebf5194701afdeb136662a1d3c2fb532388030dc5e10c9fff9ca0ec92e91d922527b0165917990b77d7e44b9ea8c994aaf8b0ce84cc56ccb75d28b4f71a918c61c219ca82e9116ca67ecba37a8c88898a1f4445cb251c9fff9ca0ec92e91d922527b0165917990b77d7e44b9ea8c994aaf8b0ce84cc5777bfaf908c383bb2ea5762d87c1bb8acead93c6ddc18902b17e5f2d6b919fe8bc517c65d185b1877233d13e9eb86da3c72bd19f749ccf768fc023c8eb81bae8d1a89f30fd3da1d7497296ecf8339b47b1407174afbf93ff3f31294e02c2340a5ccfcf70adea127379c7fd9d70082a926d3c35fc0dc84564426c044714317288dd8708787e34aa4ad9f50062c1409906d63b590dfc88807f196de488dfc753145ccfcf70adea127379c7fd9d70082a926d3c35fc0dc84564426c0447143172881eee3d9efbed49062266d8b745866948f0c25915343f5d910c4ce9dc32a71e1ac5af3cd4e4744e34b8ceed5e4c8e2788226cce9781d1270fbf8909f6123618f2eec0cd9fa5f9e9bcc5d5f50f0a2c27530faa84af9b0c1f9cfa169fc5942bd627126bd1f6c49cf76766ee9b2d48c5fe8601051170c74e508124447677993ed6779c15a4453c2093a3894aee30665ecea7344d746bb22fa381f48d055890b1b008126bd1f6c49cf76766ee9b2d48c5fe8601051170c74e508124447677993ed677163778deb36adcca9e26afca9ea470d90216ac11b0324059f9463ab8dcb05f7d163778deb36adcca9e26afca9ea470d90216ac11b0324059f9463ab8dcb05f7d163778deb36adcca9e26afca9ea470d90216ac11b0324059f9463ab8dcb05f7da705ccd1e8cd7351a21b60e517964d5b35474b6846548c5dbb1ab41c320ff2a943496a89b661154f004c410b656fa7ba106f825b7646a53568049bb6198671eda705ccd1e8cd7351a21b60e517964d5b35474b6846548c5dbb1ab41c320ff2a9896915c0b41865035f314dc737913792cc066426e4c1446677c103bfd9801f2d1abbb1e730cdcdfa662c269b34a9919648f0e90595e98f547212dd6c6d3dfc43896915c0b41865035f314dc737913792cc066426e4c1446677c103bfd9801f2de045c41952fde087380d994159f65188f8fc3f0c82f27542fede4f6c7ea0232a92dbe37bde751286bb7ef2aba1cc9aa5a0b8f4798c89235dc9911cd6341fadc7e045c41952fde087380d994159f65188f8fc3f0c82f27542fede4f6c7ea0232a3858128afb23a441f0aba1722142ab269f6aaa8063431ffd141469026b1d8fb74bbe1386c752f3e21ccc4699435c6be011e81edb66c7b9c5dec816f62825c4ac1574fbc42b01fb0b7e663a2ef3e422d31ad18fcfa3b031028ee2309085066733aa96a4af48f9e8b1196c3d6f0d906fd490f849485079a5ee45bfd6fd3285d115aa96a4af48f9e8b1196c3d6f0d906fd490f849485079a5ee45bfd6fd3285d115aa96a4af48f9e8b1196c3d6f0d906fd490f849485079a5ee45bfd6fd3285d115022ff554361861fe64bca314b5541b8fcc1db42da88267553c13fcea16fd335b022ff554361861fe64bca314b5541b8fcc1db42da88267553c13fcea16fd335b022ff554361861fe64bca314b5541b8fcc1db42da88267553c13fcea16fd335b8237f4b044f299f895e055f42181a763efdd5427d9e79488e75a25f24adb68cc747509812a9051b54ea8b8d99d4681399d7053f47fb4948f60e9ec50b43a11bf8237f4b044f299f895e055f42181a763efdd5427d9e79488e75a25f24adb68cc76a2f22713f7163ad508f399a6683b4b649b2fb9be59b6cd386a7b4cfa2662042b61d148aa61832306a602c96ea553bc97228da5c65b85a818793694bad3b65e76a2f22713f7163ad508f399a6683b4b649b2fb9be59b6cd386a7b4cfa2662046393f26f702a7b88ed62685a9295cc5a317dc403c0fce4376cf9a296f0017fb15742e6fdb15da6831211a75a79b2b39db48df58da25747e931f939a46ef783416393f26f702a7b88ed62685a9295cc5a317dc403c0fce4376cf9a296f0017fb10be260a7fec188fabb885787a3645922c3a1292f0353242e4404055294634fd80be260a7fec188fabb885787a3645922c3a1292f0353242e4404055294634fd80be260a7fec188fabb885787a3645922c3a1292f0353242e4404055294634fd82808ba666497c80b0694a778f80694afc6f1dd373db0581919e7131233ca35722808ba666497c80b0694a778f80694afc6f1dd373db0581919e7131233ca35722808ba666497c80b0694a778f80694afc6f1dd373db0581919e7131233ca3572516c509a2f4e9988e215f60bb8c6c1cae2141272a0d8b3880e9efab7809f4f2bf95dea0995ff37d1c77369e9306d6a480e95d0c99af2a3b7a331b43c4d30961a516c509a2f4e9988e215f60bb8c6c1cae2141272a0d8b3880e9efab7809f4f2bac08d59d3f2e8b209eae2ffc1928815a524bc2673297b62a2c07178ae3906fba9eb7152ad512a166d1968ed6140d9f5d3684bf1b5d1a7872345f67af8f7be13fac08d59d3f2e8b209eae2ffc1928815a524bc2673297b62a2c07178ae3906fbae614f387dbdeb17760d9bb4cd50ae3091545f1285b9be0f5ad4b9a8c9eb930e96cabe6c0114a39fc378d91238279ed629b1a1ba65a3a9d792b4dc75b318c39137ffddac56236387d1143a42f07be881b625621be976faf3034b6f932fd79fe53c8eb28ef7addf5a664a7e3addfbfebe29040a8695e1db515828305aacba2ee4e28e8243b6a3f3fe92243ad474f808c12dffe608019627d48bc2e4d7b39185b455d580f5399568b375efe24fb7db6218d9264822dec25adec25c6d9640b854b65020cef86b5c31e96a3439d09252183f3eef21d4a103a4a909538bac3d0f1d4e4de42667bb690368459585dca6bffecaef498217ff74b9266cac74bb8af98e26730caf7524234fb85e08f01beb716e1a34aa233051fc0c3798a6b085aeac5b4663a7a35f40aa5d22c7fa74a889838f5c69631eaad0a9f4b70e6a439999d419630813aa76a1d93176dc33843b9e5bd4e6165886162d91b19e080e9c5adb30c05da1fb2a050c4e7c354b1434063e2a661edfe08852aa8a23a6f1621509832384856e9e38f992c807348eec7ddf175025ec6c149c20a7c2f597c99352caaa03e45577142ec668ee870cc3b09b7ced4a0592a9a2da5f7ccf8a314b1ed906fd7a30248db8add0abc885fc629c6746aca77cd40026b2dac8d7edb93f1fcf6ea9d28334f4e583b43fdf9bd4a731d70e074ee597aba03f3c8c36302bdc7e74650fb1fcc115c2cee869bed6e5169e410c4cebafab702449b8743c6614c0c90c85130b1ec7d1595e2034eaa93c2ca61854038e64197541906b3402c448b176e34a5af9b6b09b51f28a5d49a8a6775fad9bb944b47d65da733908b432b6cd0038ba99e7e3975ffecdbd3f9ba0d71c6e59984f8384817f0fe5b0ac69ba62e1e40a31faf596a6c26f690842feab34887e9863ee013180f93949b36cf3ac9643940968ddc1acb443ea7600c9cf97163c89799bff4dce3996f68fa6efccd4f66eb3867b754762f8cceb2fe1e3de8fad3c95d83407a829abcc028b8b02f85e4661c9c934129af1ea98ee037eff39bb5253b3bc2048ba149f43deec680fdb1f7dde421d9514ea3b32ba37b21cc6acb2a24ace550fc1a55852ed068fb2ecd13011ffa3ba5291b7346d0d8e97a030281647351ebbe56d9b72a581af69a9feeca7a8f5d09a9d3179963c0bd81f83b170583a900f3779f0cf8662ccd25479ffd2f063a6c4fde668a198ee015a3977f0d2c6a8e87db2ef7050ea10afb3a88b064bf5ef95439924e4246411433ffa2f718e123fd1c4e536bb4a471978515787ee9fbf7806a92073a787a733a26101d297127132c5e9634499f41ad00e125ea308343a20b278bee9e9225eb5cbfe6188362a0bc7db8b94c3dd313b97c83ad6d10b79451fd2a8a4bd773cd392b228f8efbf4c316bd701b09a72b084a08248e26a346c6a7636a142391a8b3e67434d9612fd4a912c006267931b8f8ccb65a8eae2caf8d052a083077d9f2973a4c0be6bbee5b830dd1cb021fa03417569e740fc76ba2187f3edf3e3b23621952ef34d9612fd4a912c006267931b8f8ccb65a8eae2caf8d052a083077d9f2973a4c1f5cfc9d899b600aa2fdcdc22fd0db679c5533230e4386ed04f1ae6f4892c79147f21207e37449107b067622eca60bd7bfb6c547166f929cce9e3a59865654231f5cfc9d899b600aa2fdcdc22fd0db679c5533230e4386ed04f1ae6f4892c7914d4217b87f603bbd09d1d1f2038a26537a09e72e84331c24c8568db6db13cd0b06c8063b0038b6675869c4f16d0d5da59ec869965d513da27fb3af8d43be6c584d4217b87f603bbd09d1d1f2038a26537a09e72e84331c24c8568db6db13cd0bc6e75028801a45a18bcfec77cafcc65ecbca619cb859e098b5d22a1c906800cb7fbb2f5c99780b90373f0b624a33febf933d5fd1ebd67f2a048447a40654bcdac6e75028801a45a18bcfec77cafcc65ecbca619cb859e098b5d22a1c906800cb16b60a051aba82677753f9e30297070ed1a69c2e4e5f0bc0cecd55a83ec32e86cdcdafef1df898d9c4b4d9dac26f86c52767d3499ac8e4d66309f5d33f1afca016b60a051aba82677753f9e30297070ed1a69c2e4e5f0bc0cecd55a83ec32e86b88778c3df9365097b2544afa08d25ff58476a7bcdc5539d71b6b4b3c7fbd397cbb361451fb73968e0f50707b798d0672d78bad78f3c817aa120cbb46eadc882b88778c3df9365097b2544afa08d25ff58476a7bcdc5539d71b6b4b3c7fbd39719753bdfe7d929e908339eab1a5849487cce76719f2b3fc31f3b69c26a26ce31c2951c4b34040ea8090b119c6aaf613362ac410747931883c2cbd84a636ddd2719753bdfe7d929e908339eab1a5849487cce76719f2b3fc31f3b69c26a26ce3111ed2ab0b75e5e7b7e7a2bbe618e351a2de17caedc7899a87526695b65893503ab3c4a6594d55290852b5da1160db759d6f5d6204a5a571bd4c29c77de9fcbd411ed2ab0b75e5e7b7e7a2bbe618e351a2de17caedc7899a87526695b65893503e6af41cebef5577a62b6460610e2e763fc451ff139cf02a8deac09f7d889de621b68ddde5e2c9ee46761d725ebccb0ce2107e2d93305854c812b1b55e9e20c27e6af41cebef5577a62b6460610e2e763fc451ff139cf02a8deac09f7d889de62b15a944ae5bfc110e6709dd87bc7093679b981cd781c8a449cdac512c8e388f50e64a03b25f12115a9f6624b66a0a43d18a1db0ae1b0ddc4948794ba1799563ef42bfc3f1d1d1d57a71d37901ae314b03e1588ec2909ae6192fbf96ee6c9a94605567bdd7c60d10c0692304974b4b34835a7eeed6617edbe37b31fdfadfcadf34680f6f92da92986e72e8c360b4733a66763c6cc8a7b56aa92fc3adfd939ddd405567bdd7c60d10c0692304974b4b34835a7eeed6617edbe37b31fdfadfcadf301aa4a44e006ce8d473da145641d4761968a85c37526b287861c243e6f1917b14caae9b47c1e13f0e25c462f55d74733edd1f8faaa98c9058f196fe41727e1c301aa4a44e006ce8d473da145641d4761968a85c37526b287861c243e6f1917b17789bc27cc09cf7ceb71c360ff5b8af27de7907ee16fc33123c4c6af387a40baad3effb4de51ec7d3b04581763bc600674bc31151303ba89805579e76fa585557789bc27cc09cf7ceb71c360ff5b8af27de7907ee16fc33123c4c6af387a40badbff2367efad2deb56636f50cbac445796db17ae064c89e4b4c46ef2131ad4ff2012763fb12d9bb3d6b4ba97218bfed593b00467b7172600fd6930624fad6dd3dbff2367efad2deb56636f50cbac445796db17ae064c89e4b4c46ef2131ad4ff8c332dd14eb7afadaae8fd8fc4890d46f865730b76d8b21877f069e4dc3e9739860ad972f5c0f2da7e658e5343530f8c8774b97ae9c9b813f7d8aa22d87dc3248c332dd14eb7afadaae8fd8fc4890d46f865730b76d8b21877f069e4dc3e9739a941e990ae2fc88cc0887403a92087dc438dcd9365491f6050984fdf696e6f9b4e84926308d1842a32343da930a9a4dfce34fdeb264ae185c92765c58574b031a941e990ae2fc88cc0887403a92087dc438dcd9365491f6050984fdf696e6f9b65feb1ae47a97c75cea0fac0d801f5563591263a322791953987d47cd8a8d9f6363b1e6002b2fbe97089af1deed23a271622f497526940d9c8ca9c3679f32fa465feb1ae47a97c75cea0fac0d801f5563591263a322791953987d47cd8a8d9f64fa2570813e2fcc05d8b696f09156e84f5896370ee39a98f9d98da24778d96226c4fcc187630ef88a202a7ee6050562f166b9ac0ff03e6f36ae9d691e4e10c904fa2570813e2fcc05d8b696f09156e84f5896370ee39a98f9d98da24778d96221cc638da45926bcd8d04ceef1e092d4fbb9c4a01164820c6f2e984bf5a6ccbd3c9130d26c7d740690854f0455817245a401dcab062c2d9af302280d3b3f01ffa1cc638da45926bcd8d04ceef1e092d4fbb9c4a01164820c6f2e984bf5a6ccbd3fbd76ca9a037a28f10ab38cd6c7eaaebbc272801e2fd14c5a2fff8a3fb614c3b17183c1c3702b90bc2acd96e9c6593368d7af2452548a4ff03088ca1b505060dfbd76ca9a037a28f10ab38cd6c7eaaebbc272801e2fd14c5a2fff8a3fb614c3bdcb12159421aef310e46cdb16cba6bc284389406d25a2809a2c522dc00eb450497120ed7e40e88e12fba8604da9824b2fa20c12a662677e226cdb6830d102c0fdcb12159421aef310e46cdb16cba6bc284389406d25a2809a2c522dc00eb4504f5f9562d38877e3daa215a8db493129e166d327ad1322fc122654647e399ced6eb0ffa531e5064786e80d5b6c14973d1b2107f4ae0c9279f5c2859011274c9cef5f9562d38877e3daa215a8db493129e166d327ad1322fc122654647e399ced686fdbe48ca611254911a56fd2fde1f1ba5e0dcfa26b3a0bd69eea49734d61ac67098ac2a2ecef250b75d8ca235170d0d158e3803385a8b622450e102c067e8ed86fdbe48ca611254911a56fd2fde1f1ba5e0dcfa26b3a0bd69eea49734d61ac68de03a0286e6f576560349ba14516775801ec5d189c821dc43c67def33d65293e50f169036e9eac5e7ec8d1474d93f9bab59ab9abf357bfd309906b25d8af0f78de03a0286e6f576560349ba14516775801ec5d189c821dc43c67def33d652932d2e1067f161a0962ebde136c1298fb84e6bfe7aacfa8678feb8d8d1904b726ff9baccc67e06017b569aae13ee3d38c30882e021b3a4e4762706cd5dda0f83e72d2e1067f161a0962ebde136c1298fb84e6bfe7aacfa8678feb8d8d1904b726fcf39a41e0456b18e1a6ed5eeeab6a732fd348342cc0ec2071b312aff8cf65b90f4f9d9f96f6c8e3bf993ab7769a3703528937ff833f5649aec6b312dc2648566cf39a41e0456b18e1a6ed5eeeab6a732fd348342cc0ec2071b312aff8cf65b90bb16285b6a5f190534065e21bfb208c52ffd259ede2db76a5f35096bb835e02b2e424e26841def6235b6f604082c2f1418aea1cb05136220349b72dc0a98f997bb16285b6a5f190534065e21bfb208c52ffd259ede2db76a5f35096bb835e02b67cf7b5d5c6ce167033364f02876de8eee53bd2c5d4203630de0fbb4ad142115f7a918d39f1ad20bab6c7176048b16ad31ecbb356f00066bbec9a827eae6b3b967cf7b5d5c6ce167033364f02876de8eee53bd2c5d4203630de0fbb4ad1421152852c61dbe5863ce78acf1f0fb87b7925f97f8c7fed128bbb104268b6141955bda2a955f38ac76afce8022b5c093f6e831103dad77804a45fb35582265c443002852c61dbe5863ce78acf1f0fb87b7925f97f8c7fed128bbb104268b6141955b45effe63de8145858ba35304a2ae66f08baa6e0e45941aae631721a42f7633fea67911e61b9fb449dc1eb45225bccdc925768a3645b75d35642f41a9511e729345effe63de8145858ba35304a2ae66f08baa6e0e45941aae631721a42f7633fe785ee87dc2a25389862e0c753c4f99cb81e732863f6ee4a7e7e33e2c8f309aef0511793afd30244dbbd73df33338cb3fb632ab7afce0e76e9f12963416fd9879eed17d60f130f1acb1172f05b02c8b2ab9ea4a4bf79f32449f51b1297294798f57d0484834b6e23883cbba3bfffe34c89aa2accc7cd4ba11417b0ae4ece85a7dd3a582bb9077af8e6163256daa70b0b804ed13a42cc222324eba843ef1dd6c2e57d0484834b6e23883cbba3bfffe34c89aa2accc7cd4ba11417b0ae4ece85a7d165f24b20636555e02aa9b8bafcd8b76890f9e0f7d2f1b7c12421520e61cf2d2ca3d12b0134dc139184b394cc29aca02e2aa8f495c96a2cad05d2922949e4e8a165f24b20636555e02aa9b8bafcd8b76890f9e0f7d2f1b7c12421520e61cf2d2617f21c5ae559fd8a97b49d9c69393d7a8a079f1d2a1c1fce9008f066fd07d1ca44d4c1df165c69a92cdae816baa944086dfbee90114aa56f187e3e75dcc8345617f21c5ae559fd8a97b49d9c69393d7a8a079f1d2a1c1fce9008f066fd07d1c9a253fb92f50241df7b5811acde5eb968a9a6666b1a8b34121556e82e304f0dc149f4648883c7a61a90861bd7f372adfc58d311c8ae2d5c6bfb2ef3ed4ad8fb39a253fb92f50241df7b5811acde5eb968a9a6666b1a8b34121556e82e304f0dcdb9e415de1ffe2f2256786b8657a716055bc08743afd423189f7764d80c25cdfd6021e95b5a946603059d2ff7b3b3ebb5a865432ee1ee641a0ec0389e0a81f37db9e415de1ffe2f2256786b8657a716055bc08743afd423189f7764d80c25cdf8a72145c685d538d9e132137adcf0f5f2c24fd4e9ea7811280fcd67b5e7be76cd4e7352fcdaca639e0206b462aa00d85e349e2136ada71ef66f6a8dd8ad4da9b8a72145c685d538d9e132137adcf0f5f2c24fd4e9ea7811280fcd67b5e7be76c694e1b626ff496c43679bf3a694042520c52aed114661337fa89f6a180d74e5da2cdf9efdcf2d94569882a001991fdf93984862336a5b4f1bc0254933b63b194694e1b626ff496c43679bf3a694042520c52aed114661337fa89f6a180d74e5de3c0967d490b434781118cbb4b50ce54f736c7f28bb0f2e2aa7c96e79186bbed01e8b87d8684be51fbc554c733819945b211a7a9814fab61ddec7b5b8cd6bb8ae3c0967d490b434781118cbb4b50ce54f736c7f28bb0f2e2aa7c96e79186bbed34565c827a00c469b6dc695a02f89a9f71d937fb48f7e6559fc4417128fdb9a62797de59dc41dbe65bdaccbe6a53565353f6ba7770eb304544c2ce85065ec98a34565c827a00c469b6dc695a02f89a9f71d937fb48f7e6559fc4417128fdb9a60445d3449489705464e06a26bde6113051c91d911bff75fceedc60b9bff2177c56eb846494cf590f59ff7f1962ac4270a7a5bb1230aee18df28e4ee8993604670445d3449489705464e06a26bde6113051c91d911bff75fceedc60b9bff2177ca12f066260ac787e8fcb610fa36fce61ffdbd6f43aede47e13cf8a5577f9a2ad75825c33ab2a8feb4fbeab314fba4338d321583e737b93d9e5856921a7cc563ca12f066260ac787e8fcb610fa36fce61ffdbd6f43aede47e13cf8a5577f9a2ad458693ca4d1fa9375cc9cdc5e3d79aac80e34f23a478c4107167a7d51a0e5837494d626172d0790b183abf96b7bcd558fc6c9a826755204405d32d7f549db024458693ca4d1fa9375cc9cdc5e3d79aac80e34f23a478c4107167a7d51a0e58378c90eb4f52f188f46eb17884bb7245491fc75b59dac3cc3296b75cd6e4824ff9a207b5cbfe64d712531ec135504795ac8d9191aac0a6429c0042970e1f83123a8c90eb4f52f188f46eb17884bb7245491fc75b59dac3cc3296b75cd6e4824ff98af7614e123173637bdaf6d9f42dc71e15a59a14a8965d424e9e1dabc95c65f9543015c538ee9e501bb7a48d00bc9deaeacee90080ceb7f0ba38331ee845a1db8af7614e123173637bdaf6d9f42dc71e15a59a14a8965d424e9e1dabc95c65f90bd8107f4072943ade4c20b0da530ca394ccb3a7eb6415c561c908169e8d034081908f62cddb0c385fc01be8c9964197d2ac80120e5ea519e6bfbdd7bd903de20bd8107f4072943ade4c20b0da530ca394ccb3a7eb6415c561c908169e8d0340ee1538ebb11cf5303600b80146d9fd6c3b8eabc344fd1450ac8dbd26f9b4c29183d1dcb158cc87bac8624df1213d8814752e6a5709ad3a43314d4ff86c26adf7ee1538ebb11cf5303600b80146d9fd6c3b8eabc344fd1450ac8dbd26f9b4c2916af8f4281161e34903b35287b40ab59ba724fbdef85474b84909d5bf5283251be08138429932ee03baae5dd8f75a7c873ca480780d75b398090725603a89564b6af8f4281161e34903b35287b40ab59ba724fbdef85474b84909d5bf5283251bc5592943f8aaf89053f23a842f195d79c972d48e4ba5d13de935b44e8409531518f558539f9dd0fbb3f91dd2c5a91dae6a31aa73f1a38b8bf27ca6456417a9abc5592943f8aaf89053f23a842f195d79c972d48e4ba5d13de935b44e84095315ca2b838d1c599bbef87d870e0d25f75833564eb37e15122e20bf313fd48bb5e29d2cb7caf14082a81e50fb797c1cd64b74b777edf377aba9e8c2a0797e62cd22ca2b838d1c599bbef87d870e0d25f75833564eb37e15122e20bf313fd48bb5e27168450a925c57bc032130978c59ea1e2f9a7849c4ae9ee8c44da68195297f64f407acc0f619c734f0307504d87a42d9703381f75cb48b1a4aa547d0fd76f2037168450a925c57bc032130978c59ea1e2f9a7849c4ae9ee8c44da68195297f644ac7979bf8cf8895aa1c287e38d18c4e31500453e6c77229af00cc45f6ab527856429509a3b539299260b35daac1f882b0cfc82b0c72f4d9e21bf61443fc65a94ac7979bf8cf8895aa1c287e38d18c4e31500453e6c77229af00cc45f6ab5278457fb8a47ad0bac4debd74ced55b15277a23a97bf7d0de4cd6fe52cebbed3a2138f93d3bb979797948c95ec376d49d58fb1f7e8bef6c59c905a4357e2fd6364a457fb8a47ad0bac4debd74ced55b15277a23a97bf7d0de4cd6fe52cebbed3a2118122cd0015968d3a511d9cccb6cf11e3ebdced44d2868d2af4c633f0609bdd86b0f4b626319fb2c20dadbc1d4cb50b24d9b229b0416da459a37e41eeddd219a18122cd0015968d3a511d9cccb6cf11e3ebdced44d2868d2af4c633f0609bdd8d4af4b71afcb0a3f5ac5599e2cc679d9238d8c232a60ec355dc084d5322c48d48e9052ff837b43d826a39715990f468e769a5f96c489d81d960f0d3d75d0636ad4af4b71afcb0a3f5ac5599e2cc679d9238d8c232a60ec355dc084d5322c48d42d737d3b75c9dc89c2e2629249208f4221193dabc1a47fbf077a258b51b366fc1d5b0e13cc227d57f59d42b4a06287f3e038c943f3964055529590d0ac722d6c2d737d3b75c9dc89c2e2629249208f4221193dabc1a47fbf077a258b51b366fc1d0b42e6c841ecd6690881a07f52633900b1cb83dec61a7b169944b97d0d73781d0b42e6c841ecd6690881a07f52633900b1cb83dec61a7b169944b97d0d73781d0b42e6c841ecd6690881a07f52633900b1cb83dec61a7b169944b97d0d7378a75b81653a97433032f9c3bde76e1bea97e3b8061783215eb0cdc34566675a10b9456224a5451a8a4fb81cf830afff28444d5d609dd7492ef25e182889b3fcd1a75b81653a97433032f9c3bde76e1bea97e3b8061783215eb0cdc34566675a10a2ef7165e1c00f75e5369fe67a984dd19c20913311f5fea9aa46ca197076545c5b695e536370de702d33f7daf66a450f969c8ab9b7b83d0a0628d0613c5f1da1a2ef7165e1c00f75e5369fe67a984dd19c20913311f5fea9aa46ca197076545c3c921ada90b19baac4f62d66bcc0b3bd05b34e49b3365c21c2ad79b779a6e6459c7a5edea00a0fcbdbe6c49ca7233ab8941b843a9da5f65346b65740ade531fa3c921ada90b19baac4f62d66bcc0b3bd05b34e49b3365c21c2ad79b779a6e645d26ea3ac00ad6e9c0a6797e3d91b4aa2ae12a0144ebed88acc6015cf77c2de0f621b77b267c9f2c74ea6342f38bde6e17ad36916788be666c3b7033d3f6e8de9d26ea3ac00ad6e9c0a6797e3d91b4aa2ae12a0144ebed88acc6015cf77c2de0f3155b5ab28c62afab59a1ff88ba11a780887d26ae08ea0f91e7d24ea21a01052429887fe3857beedff89b2aafcbd862658ecda826c6e07000d52d37e63bc95963155b5ab28c62afab59a1ff88ba11a780887d26ae08ea0f91e7d24ea21a010526c9626928213003b3819ede11ab16488de0b6aeab7a87bb29ac5dd04d98832da87af5f553fe109977f01e43fe741bc350a15f3cad3fb5f2e09220744193d391f1e17e29c173171fcd763b2139b6629df2c0ce6792b057db2012edd3e0a49ea7743421286ad234a4240f8d4bc09f67bb58da0bf9d9b07bf93010989ef2c17f2f8cdae01f8da8411c2190dc4efae37e0496503a57445ea8b3d43a9e5fc50d74f7030ab335b5312af5ca57b26945c7297bec89f31e90d70e7c8cb0a2283599ab40f5d2d4ff90ab4bc9ef0903585d2fe7f4272263535af1dac98dd4a7a31b5f1759b78d40b3fbfcc67c431ad234b516d1825b17498a5dfc77ef1957d0fee36d311aa6df5742e1340743cc9932f3876bafe243e3053cd3a5f060935201708181666667462c048c689f82c3ae6b5782a18776762f88055b80ae77a92243b6c0606e004f00aea254728b67ce3b77880b3bff50b4fa66ba25ed71122d3453fa9319370783f4b14a1bc6adb09319e651fbd51cefbba97a2633e548c3c3a13c1a311377970e4e793bae777b06206a3e368053a2c94218cec72b03ff462aa22b09051c2dce20607730edb3911e3c72b8bcb0f11f27cd131cd54caa619c9afbb9f62a7f77c6dd3aa8c8a3bebaa05f55a03bbd904bda7adfdbc7b82443abd2b007e96c4fd35231881dcf94b0a44fe355f2acabfe25d8d67871402bbc19aaab37c6ff955575f1def57a0f52368c104b2a3b3551b3979751168b1ac42b7eafa1c8d5319bc95dc30e35a9f45b223d5c7e7f3bbfd8bc6495b1156c40b0ce3747ade0aed7b41aa23ac22d74368ba175175b9c14315f9d82fd7ddde60ae93d2e5572e9a647de7e869eb559d39df8c1ff38d177943f245b87f5379ee5ea93399fd6b5f7bfa882e6ed8caed3800137d48ffcf86ecb71afe5a24cd9ed381571f23036438ba8a97f502326a001464d2ef94de500cb053cd345164d696f7f84cf38fa522c77327ab04d32982d4cea5fdba68fb9e361541820d44eed003c317f4ef14bb9df3406b8d2c53ef7c73097d2c8187a17ae6a83ab6e2cf935a1309ada7dac041598e77bc618b0fa3e1e39288f4326136cadb4fab81fe31223187136bc3d9bdf65a9d67fd152e50a6e91d152088e94e1faa3df4b900cf2904458bbcc72045dd3d830c317fe2c9d9c1c66319fe7810ed91786b503de80701a291a4f9abe54c9e101c19c0917b709e62f3b8c48f3280ddc7156fd22f58360c617e25c8d145931a9aee74a2fa7c209779c2a2435bb75863215a3ecfdb268f52508ab001d6c52431ccb51595109ba013a4322ae5fde71364b4d201b1b691bfe21a91fe6c0257d6c1ca334b0f7898e8c69238c6a3d836f26771782f53685da5987a1bf57f41159e8a38352131656d07ae3dad883aff74861ca976307358c0ea3487fc783717abd5516059b9c5f88114141e684f24b52dbc02c8e59a971b1666cd0f41cf768c0837e8abe744a7f6a559ef9ede58e39e9bad047053a0dc5f27a31ff163452166c9db4ece043f7c77f985bbafa9e0ab7c528b32bc9b74d659dc4d5323e7b6d2d718d4eada7d0cc73efc350dff6da7d9c5085ff5c64232897f6ee0a09258a41a35f153f47ff0f3b8fa97ec67be9e133b134a46b23cf2c635be3116415fd388e3a1c1581bf1a77d7f7f0aff3a725bed01d8a3a88b85b65322b2256d3d90c746ee6194e0b46afd1b0c7a873ea24716a242e91b093b93210ab422d5c638d7a57feacbdd99357b3b0a90dbf5274570ce229553dd85ecb87d114bad1e615f4f9aa0c0cf01ebb5c2b116638eb78cbe4304517c1fe16da359e01f3cdfdf3f7aead4283e8b8e1107522b72f59d4c4f3ade4c5a90f03398bba5f1d3ebb705df137a81f0cc627dcea2cec72ee6d5610e734a231e2d997f442002389b3dadb47ed8134947c664a32ef637f43afdcbd1b5c1382339ae48e477969cee58822d528ae73bcb689154d92631f97b478006a7944600e510e8f647672359066df3ee2a8bf2fce14fa15037adc10d974719b9c3608cb1e44264a834dc230d397725f398d905d0746321d543c56644e5c89af59fe3fedb61a84ec601c8786daf0564e978c97c0e14095c23f9a08bb64950f9cb541b074b3ac0550b241c99a566f61929515ca97aedf99f73568df3dfe93078ed22cb54892b6c617c8e7122ae9b675af5389f5634b9b88643ad2752509f416aedfa2a81542bfcae1d871416a9bc216ad2ede3d418de48e8a8450f93de08256aa2388948ebc852eff97903ee737a4118785fa3f73759574d39d20591919577d9126cea7ba540483502cfbfce0ac87198cfd6d0ec7e5eec68834042ed949875730a35764c83ca0e9b262b9ad0046cbb0af1101a651fcb88cd1cba38e474b863abbb074b260a0296437194c674ad031297b060e590387062fa29455c2c7131ed9c7eaeb644db7bf504b395504eb46f2ab40b2587b84b971c4cdbb6001eacd1a452fef7db8d7c49ec7c2cfaecb92c5953ab48f1ac131615c7e9815671a743903aaabd4453a7d7f97d98e9ac69099676f38aba5a6cbc607f196bfd7b691554c4e3bbaea46b2c8fcdc5178b2dd77d794938fa52adce719d4948a92ba1a689068cec1fb6888d033e0ed1efc442b3fb93de89fb0988c73f8536fc5099afb761d2b69ec101c239c8c193336f2b6994f5aacca9689f32249db20a8dac36934314b7d5ba391d94169d63c66300aa47014a5c2dfc9bc0d6c3fb234dff4e4b60a6527d4cdfbb8c416f99df447acba7570e479457fec822f02dfbd78096641cbd6b6d997d18e82b8c31a01648a2be05a654a420c7b691d7a0ce7952c84b687d7387b271fcda7a8c956cbd0f58343f2bdbc30aed247a1aef9f2032e540101b46a674456967bf626b0d34a86f5f277f16699b17c3fd176c1b259959ed235bb9bb59d54731203c9c33c2e0e431729ea34280f0b51c476c951da31291f8f646630d56a7da6602a3365808a57c797bcaeb2076b6412093b234620aee37ce8be16100880af85ba6752e3652b2678b7ef122e13c385a135cbbbe8b1d87efeed43ddd3e0be9ddd8aa24b267b61fac42870d0bf5c92b0f2a5fe25ddf95729f6cba8a9ac48c7c0d1c2fdd7a7532586f2ea46be7d55a95c96f5bdffc7869acfea19c33c62a23ef9515d4f2f9e5b93b38b905b59664d1da4cfe90df4316370fd33e3a69f5b6371d1ade46bca444c14bab9284a21fcb75abf82243eb66fad0466b1d737cb51d6b957a8ec2acde3a01fbffc5a256f1b0189ee127902c0022ba8a8660b6b824801612ab1772a04800d886ea4361f9bd3a01148a0d6627692f4ef22f93361cd19e4e279510c45a522ef10ff6650daedef66d754b3202068593d714c7bfe09dcbf9e0525a59faa09b1a2b1de640cd57ac1182488554201e30bc180aa461a708bcdab3efcc019451b46351c61c2468ec9e4e0710e1441867b17a238159e89017ff6bc76b4d42d3e133d9e8809159423616094ef8df925afde07c0920da1882853184948c4a03aeb4dc99d50c363722fdf48c7c995feaf4c73b7b4c978d33747dcbdf14ae5654bfc807b15799c63fa694529bbf957aa2e3d3e66e624810c6ad7e81015f43eb4c41dd7ac5f2d77161f75c9163965d21b2df016c01202c56010e873a7353715e43429f763c89df40f8abd187ced93dc1209703237acc8e0413a9b1ef07775f45c18847d0a3d5987f13edc3287fa8beff020087d2614966840987f4a1e858d8b3051dc7a5afcb2a0f30edd1d05c1084a10bb4d2c563f089cc20fca49582f334d861cbbca4a01c94e81976926a667aa9936ec65cd80b2650d2f0f3434c2ee54f0be91939259add06ef7fd4488b992b184ebc4233ca856f1fcf817d4a0204dd34dc0833d46fa1839c862fafb8830eed0a417f1d8b60d047d8c958f624ea5649483077927067c93c23259048e90348fbdcca2b672271ee2a3759c5b73f34a0bc9b3764f83e3ab79f2182c1e277ef465907f0be250fe49a0897a708735972b6803cac22055ed760a861fce4036c6c8c30e4ae91de1da9ff290f44187d24df84aaca6995a3538fd8e6a126ae3096b743b854108908f25aedb8cd9c067cae60e41482d56af14cb8249cf8e5a96565c24986eb3e32bdd658c238b484e096fefe347488e1a22f9e99667cd0c288e6c9d2d33e969507af34a1634cec335e7c097c5421b441b9d84ae74c37c7da0d10aba5a048b59afe384585e0b38c5cd8d2a1b536c960f92f4724a628d48215c3881abddb32c2275993c297df1b56ce5d8b34eda35f823dfc27577c2b18c26efcf8c7d72d323257e4c4c095b611381fd9f336d80fa7ae9104e7b03d14a7df2d9ae92fc5037f367472c50ae104f86df35c0d5967968e352d7ea2b944f5909326076bf88e0fb30fa0ab5d0dc3030442ed92713f34170336c4dd2623723dc34829df89ffecdbd3f9ba0d71c6e59984f8384817f0fe5b0ac69ba62e1e40a31faf596a6c26999728e6eefa83b486188a3af6900a464741307e7e4fbe4c6bb030eb7650424a404d5bcb1109a33329f0e099fa8c07a8b02401da4e531bbc6de733a90e45aaf9b54f0a6c4a21daea6f41263e8df267367f5b491094bea56179a9c3b4ebd65a4fe845553b7ffbd7696ea3bf437851cbf73df723573d3b35ed7a699f9f4de8a2/etc/idle3.6/config-extensions.def/etc/idle3.6/config-highlight.def/etc/idle3.6/config-keys.def/etc/idle3.6/config-main.defrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython3-3.6.15-150300.10.118.1.src.rpmapplication()application(idle3.6.desktop)config(python3-idle)metainfo()metainfo(idle3.6.appdata.xml)mimehandler(text/x-python)python3-idlepython3-idlepython3-idle(s390-64)python36-idle@@@     /usr/bin/python3/usr/bin/python3.6config(python3-idle)python(abi)python3python3-tkrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.6.15-150300.10.118.13.63.6.153.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3iOiii[@i@i}iZ@iq@i@i+@i+@io@iCi@i h@he@hJ@hH@h/gw@g@g5@g4g6f5fff@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@suse.commcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@suse.commcepl@cepl.eumcepl@suse.commcepl@cepl.eumcepl@cepl.eumcepl@cepl.eudaniel.garcia@suse.commcepl@suse.commcepl@cepl.eumcepl@suse.commcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@cepl.eumcepl@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-2026-6019-Morsel-js_output.patch protects against HTML injection by Base64-encoding cookie values embedded in JS (bsc#1262654, CVE-2026-6019, gh#python/cpython#90309).- Add CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch which rejects CR/LF in HTTP tunnel request headers (bsc#1261969, CVE-2026-1502, gh#python/cpython#146211).- Add CVE-2026-4786-webbrowser-open-action.patch, which fixes webbrowser %action substitution bypass of dash-prefix check (bsc#1262319, CVE-2026-4786, gh#python/cpython#148169).- Add CVE-2026-6100-use-after-free-decompression.patch preventing dangling pointer which can end in the use-after-free error (CVE-2026-6100, bsc#1262098, gh#python/cpython#148395).- Fix calling of sphinx build with non-standard Python interpreter (including new patch sphinx-set-PYTHON.patch).- Add CVE-2026-3446-base64-padding.patch preventing ignoring excess Base64 data after the first padded quad (bsc#1261970, CVE-2026-3446, gh#python/cpython#145264).- Add CVE-2026-3479-pkgutil_get_data.patch pkgutil.get_data() has the same security model as open(). The documented limitations ensure compatibility with non-filesystem loaders; Python doesn't check that. (bsc#1259989, CVE-2026-3479, gh#python/cpython#146121).- Add CVE-2026-4519-webbrowser-open-dashes.patch to reject leading dashes in webbrowser URLs (bsc#1260026, CVE-2026-4519, gh#python/cpython#143930).- Add CVE-2025-13462-tarinfo-header-parse.patch which skips TarInfo DIRTYPE normalization during GNU long name handling (bsc#1259611, CVE-2025-13462).- Add CVE-2026-4224-expat-unbound-C-recursion.patch avoiding unbound C recursion in conv_content_model in pyexpat.c (bsc#1259735, CVE-2026-4224).- Add CVE-2026-3644-cookies-Morsel-update-II.patch to reject control characters in http.cookies.Morsel.update() and http.cookies.BaseCookie.js_output (bsc#1259734, CVE-2026-3644).- CVE-2025-11468: preserving parens when folding comments in email headers (bsc#1257029, gh#python/cpython#143935). CVE-2025-11468-email-hdr-fold-comment.patch - CVE-2026-0672: rejects control characters in http cookies. (bsc#1257031, gh#python/cpython#143919) CVE-2026-0672-http-hdr-inject-cookie-Morsel.patch - CVE-2026-0865: rejecting control characters in wsgiref.headers.Headers, which could be abused for injecting false HTTP headers. (bsc#1257042, gh#python/cpython#143916) CVE-2026-0865-wsgiref-ctrl-chars.patch - CVE-2025-15366: basically the same as the previous patch for IMAP protocol. (bsc#1257044, gh#python/cpython#143921) CVE-2025-15366-imap-ctrl-chars.patch - CVE-2025-15282: basically the same as the previous patch for urllib library. (bsc#1257046, gh#python/cpython#143925) CVE-2025-15282-urllib-ctrl-chars.patch - CVE-2025-15367: basically the same as the previous patch for poplib library. (bsc#1257041, gh#python/cpython#143923) CVE-2025-15367-poplib-ctrl-chars.patch - Modify CVE-2024-6923-email-hdr-inject.patch to also include patch for bsc#1257181 (CVE-2026-1299).- Add CVE-2025-13836-http-resp-cont-len.patch (bsc#1254400, CVE-2025-13836) to prevent reading an HTTP response from a server, if no read amount is specified, with using Content-Length per default as the length. - Add CVE-2025-12084-minidom-quad-search.patch prevent quadratic behavior in node ID cache clearing (CVE-2025-12084, bsc#1254997). - Add CVE-2025-13837-plistlib-mailicious-length.patch protect against OOM when loading malicious content (CVE-2025-13837, bsc#1254401).- Add CVE-2025-6075-expandvars-perf-degrad.patch avoid simple quadratic complexity vulnerabilities of os.path.expandvars() (CVE-2025-6075, bsc#1252974). - Skip test_curses on ppc64le (gh#python/cpython#141534)- Add CVE-2025-8291-consistency-zip64.patch which checks consistency of the zip64 end of central directory record, and preventing obfuscation of the payload, i.e., you scanning for malicious content in a ZIP file with one ZIP parser (let's say a Rust one) then unpack it in production with another (e.g., the Python one) and get malicious content that the other parser did not see (CVE-2025-8291, bsc#1251305) - Readjust patches while synchronizing between openSUSE and SLE trees: - F00251-change-user-install-location.patch - doc-py38-to-py36.patch - gh126985-mv-pyvenv.cfg2getpath.patch- Add CVE-2025-8194-tarfile-no-neg-offsets.patch which now validates archives to ensure member offsets are non-negative (gh#python/cpython#130577, CVE-2025-8194, bsc#1247249).- Add CVE-2025-4435-normalize-lnk-trgts-tarfile.patch Security fixes for CVE-2025-4517, CVE-2025-4330, CVE-2025-4138, CVE-2024-12718, CVE-2025-4435 on tarfile (bsc#1244032, bsc#1244061, bsc#1244059, bsc#1244060, bsc#1244056). The backported fixes do not contain changes for ntpath.py and related tests, because the support for symlinks and junctions were added later in Python 3.9, and it does not make sense to backport them to 3.6 here. The patch is contains the following changes: - python@42deeab fixes symlink handling for tarfile.data_filter - python@9d2c2a8 fixes handling of existing files/symlinks in tarfile - python@00af979 adds a new "strict" argument to realpath() - python@dd8f187 fixes mulriple CVE fixes in the tarfile module - downstream only fixes that makes the changes work and compatible with Python 3.6 - Add CVE-2025-6069-quad-complex-HTMLParser.patch to avoid worst case quadratic complexity when processing certain crafted malformed inputs with HTMLParser (CVE-2025-6069, bsc#1244705).- Add python36-* provides/obsoletes to enable SLE-12 -> SLE-15 migration, bsc#1233012- Add ipaddress-update-pr60.patch from gh#phihag/ipaddress!60 to update vendored ipaddress module to 3.8 equivalent - Add gh-128840_parse-IPv6-with-emb-IPv4.patch to limit buffer size for IPv6 address parsing (gh#python/cpython#128840, bsc#1244401). - Update CVE-2025-4516-DecodeError-handler.patch not to break _PyBytes_DecodeEscape signature.- Add CVE-2025-4516-DecodeError-handler.patch fixing CVE-2025-4516 (bsc#1243273) blocking DecodeError handling vulnerability, which could lead to DoS.- Update CVE-2024-11168-validation-IPv6-addrs.patch according to the Debian version (gh#python/cpython#103848#issuecomment-2708135083).- Add CVE-2025-0938-sq-brackets-domain-names.patch which disallows square brackets ([ and ]) in domain names for parsed URLs (bsc#1236705, CVE-2025-0938, gh#python/cpython#105704)- Remove -IVendor/ from python-config boo#1231795 - Fix CVE-2024-11168-validation-IPv6-addrs.patch - PGO run of build freezes with parallel processing, switch to -j1- Add CVE-2024-11168-validation-IPv6-addrs.patch fixing bsc#1233307 (CVE-2024-11168, gh#python/cpython#103848): Improper validation of IPv6 and IPvFuture addresses.- Add CVE-2024-9287-venv_path_unquoted.patch to properly quote path names provided when creating a virtual environment (bsc#1232241, CVE-2024-9287)- Drop .pyc files from docdir for reproducible builds (bsc#1230906).- 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-idlepython36-idles390zp37 1777462320  !"#"%&%()(+,+./0121454787:;:=>?@A@CDCFGFIJILMLOPQRRRUUUXYX[\[^_`abcdedghgjkjmnmpqpsssvwvyzy|}|     ! #$#&'&)*),-,/0/232565898;<;>?>ABADEDGHGJKJMNMPQPSTSVWXYZY\]\_`_bcbefehihklknonqrqtutwxwz{z}~}      !"#$%3.6.15-150300.10.118.13.6.153.6.15-150300.10.118.13.6.15-150300.10.118.13.6.15 3.6.153.6.15   idle3.6config-extensions.defconfig-highlight.defconfig-keys.defconfig-main.defidle3.6idlelibCREDITS.txtChangeLogHISTORY.txtIconsfolder.gifidle.icnsidle.icoidle_16.gifidle_16.pngidle_32.gifidle_32.pngidle_48.gifidle_48.pngminusnode.gifopenfolder.gifplusnode.gifpython.giftk.gifNEWS.txtNEWS2x.txtREADME.txtTODO.txt__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.pyc_pyclbr.cpython-36.opt-1.pyc_pyclbr.cpython-36.opt-2.pyc_pyclbr.cpython-36.pycautocomplete.cpython-36.opt-1.pycautocomplete.cpython-36.opt-2.pycautocomplete.cpython-36.pycautocomplete_w.cpython-36.opt-1.pycautocomplete_w.cpython-36.opt-2.pycautocomplete_w.cpython-36.pycautoexpand.cpython-36.opt-1.pycautoexpand.cpython-36.opt-2.pycautoexpand.cpython-36.pycbrowser.cpython-36.opt-1.pycbrowser.cpython-36.opt-2.pycbrowser.cpython-36.pyccalltip.cpython-36.opt-1.pyccalltip.cpython-36.opt-2.pyccalltip.cpython-36.pyccalltip_w.cpython-36.opt-1.pyccalltip_w.cpython-36.opt-2.pyccalltip_w.cpython-36.pyccodecontext.cpython-36.opt-1.pyccodecontext.cpython-36.opt-2.pyccodecontext.cpython-36.pyccolorizer.cpython-36.opt-1.pyccolorizer.cpython-36.opt-2.pyccolorizer.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.opt-2.pycconfig.cpython-36.pycconfig_key.cpython-36.opt-1.pycconfig_key.cpython-36.opt-2.pycconfig_key.cpython-36.pycconfigdialog.cpython-36.opt-1.pycconfigdialog.cpython-36.opt-2.pycconfigdialog.cpython-36.pycdebugger.cpython-36.opt-1.pycdebugger.cpython-36.opt-2.pycdebugger.cpython-36.pycdebugger_r.cpython-36.opt-1.pycdebugger_r.cpython-36.opt-2.pycdebugger_r.cpython-36.pycdebugobj.cpython-36.opt-1.pycdebugobj.cpython-36.opt-2.pycdebugobj.cpython-36.pycdebugobj_r.cpython-36.opt-1.pycdebugobj_r.cpython-36.opt-2.pycdebugobj_r.cpython-36.pycdelegator.cpython-36.opt-1.pycdelegator.cpython-36.opt-2.pycdelegator.cpython-36.pycdynoption.cpython-36.opt-1.pycdynoption.cpython-36.opt-2.pycdynoption.cpython-36.pyceditor.cpython-36.opt-1.pyceditor.cpython-36.opt-2.pyceditor.cpython-36.pycfilelist.cpython-36.opt-1.pycfilelist.cpython-36.opt-2.pycfilelist.cpython-36.pycgrep.cpython-36.opt-1.pycgrep.cpython-36.opt-2.pycgrep.cpython-36.pychelp.cpython-36.opt-1.pychelp.cpython-36.opt-2.pychelp.cpython-36.pychelp_about.cpython-36.opt-1.pychelp_about.cpython-36.opt-2.pychelp_about.cpython-36.pychistory.cpython-36.opt-1.pychistory.cpython-36.opt-2.pychistory.cpython-36.pychyperparser.cpython-36.opt-1.pychyperparser.cpython-36.opt-2.pychyperparser.cpython-36.pycidle.cpython-36.opt-1.pycidle.cpython-36.opt-2.pycidle.cpython-36.pyciomenu.cpython-36.opt-1.pyciomenu.cpython-36.opt-2.pyciomenu.cpython-36.pycmacosx.cpython-36.opt-1.pycmacosx.cpython-36.opt-2.pycmacosx.cpython-36.pycmainmenu.cpython-36.opt-1.pycmainmenu.cpython-36.opt-2.pycmainmenu.cpython-36.pycmulticall.cpython-36.opt-1.pycmulticall.cpython-36.opt-2.pycmulticall.cpython-36.pycoutwin.cpython-36.opt-1.pycoutwin.cpython-36.opt-2.pycoutwin.cpython-36.pycparagraph.cpython-36.opt-1.pycparagraph.cpython-36.opt-2.pycparagraph.cpython-36.pycparenmatch.cpython-36.opt-1.pycparenmatch.cpython-36.opt-2.pycparenmatch.cpython-36.pycpathbrowser.cpython-36.opt-1.pycpathbrowser.cpython-36.opt-2.pycpathbrowser.cpython-36.pycpercolator.cpython-36.opt-1.pycpercolator.cpython-36.opt-2.pycpercolator.cpython-36.pycpyparse.cpython-36.opt-1.pycpyparse.cpython-36.opt-2.pycpyparse.cpython-36.pycpyshell.cpython-36.opt-1.pycpyshell.cpython-36.opt-2.pycpyshell.cpython-36.pycquery.cpython-36.opt-1.pycquery.cpython-36.opt-2.pycquery.cpython-36.pycredirector.cpython-36.opt-1.pycredirector.cpython-36.opt-2.pycredirector.cpython-36.pycreplace.cpython-36.opt-1.pycreplace.cpython-36.opt-2.pycreplace.cpython-36.pycrpc.cpython-36.opt-1.pycrpc.cpython-36.opt-2.pycrpc.cpython-36.pycrstrip.cpython-36.opt-1.pycrstrip.cpython-36.opt-2.pycrstrip.cpython-36.pycrun.cpython-36.opt-1.pycrun.cpython-36.opt-2.pycrun.cpython-36.pycrunscript.cpython-36.opt-1.pycrunscript.cpython-36.opt-2.pycrunscript.cpython-36.pycscrolledlist.cpython-36.opt-1.pycscrolledlist.cpython-36.opt-2.pycscrolledlist.cpython-36.pycsearch.cpython-36.opt-1.pycsearch.cpython-36.opt-2.pycsearch.cpython-36.pycsearchbase.cpython-36.opt-1.pycsearchbase.cpython-36.opt-2.pycsearchbase.cpython-36.pycsearchengine.cpython-36.opt-1.pycsearchengine.cpython-36.opt-2.pycsearchengine.cpython-36.pycsqueezer.cpython-36.opt-1.pycsqueezer.cpython-36.opt-2.pycsqueezer.cpython-36.pycstackviewer.cpython-36.opt-1.pycstackviewer.cpython-36.opt-2.pycstackviewer.cpython-36.pycstatusbar.cpython-36.opt-1.pycstatusbar.cpython-36.opt-2.pycstatusbar.cpython-36.pyctextview.cpython-36.opt-1.pyctextview.cpython-36.opt-2.pyctextview.cpython-36.pyctooltip.cpython-36.opt-1.pyctooltip.cpython-36.opt-2.pyctooltip.cpython-36.pyctree.cpython-36.opt-1.pyctree.cpython-36.opt-2.pyctree.cpython-36.pycundo.cpython-36.opt-1.pycundo.cpython-36.opt-2.pycundo.cpython-36.pycwindow.cpython-36.opt-1.pycwindow.cpython-36.opt-2.pycwindow.cpython-36.pyczoomheight.cpython-36.opt-1.pyczoomheight.cpython-36.opt-2.pyczoomheight.cpython-36.pyczzdummy.cpython-36.opt-1.pyczzdummy.cpython-36.opt-2.pyczzdummy.cpython-36.pyc_pyclbr.pyautocomplete.pyautocomplete_w.pyautoexpand.pybrowser.pycalltip.pycalltip_w.pycodecontext.pycolorizer.pyconfig-extensions.defconfig-highlight.defconfig-keys.defconfig-main.defconfig.pyconfig_key.pyconfigdialog.pydebugger.pydebugger_r.pydebugobj.pydebugobj_r.pydelegator.pydynoption.pyeditor.pyextend.txtfilelist.pygrep.pyhelp.htmlhelp.pyhelp_about.pyhistory.pyhyperparser.pyidle.batidle.pyidle.pywidle_testREADME.txt__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.opt-2.pyc__init__.cpython-36.pychtest.cpython-36.opt-1.pychtest.cpython-36.opt-2.pychtest.cpython-36.pycmock_idle.cpython-36.opt-1.pycmock_idle.cpython-36.opt-2.pycmock_idle.cpython-36.pycmock_tk.cpython-36.opt-1.pycmock_tk.cpython-36.opt-2.pycmock_tk.cpython-36.pyctemplate.cpython-36.opt-1.pyctemplate.cpython-36.opt-2.pyctemplate.cpython-36.pyctest_autocomplete.cpython-36.opt-1.pyctest_autocomplete.cpython-36.opt-2.pyctest_autocomplete.cpython-36.pyctest_autocomplete_w.cpython-36.opt-1.pyctest_autocomplete_w.cpython-36.opt-2.pyctest_autocomplete_w.cpython-36.pyctest_autoexpand.cpython-36.opt-1.pyctest_autoexpand.cpython-36.opt-2.pyctest_autoexpand.cpython-36.pyctest_browser.cpython-36.opt-1.pyctest_browser.cpython-36.opt-2.pyctest_browser.cpython-36.pyctest_calltip.cpython-36.opt-1.pyctest_calltip.cpython-36.opt-2.pyctest_calltip.cpython-36.pyctest_calltip_w.cpython-36.opt-1.pyctest_calltip_w.cpython-36.opt-2.pyctest_calltip_w.cpython-36.pyctest_codecontext.cpython-36.opt-1.pyctest_codecontext.cpython-36.opt-2.pyctest_codecontext.cpython-36.pyctest_colorizer.cpython-36.opt-1.pyctest_colorizer.cpython-36.opt-2.pyctest_colorizer.cpython-36.pyctest_config.cpython-36.opt-1.pyctest_config.cpython-36.opt-2.pyctest_config.cpython-36.pyctest_config_key.cpython-36.opt-1.pyctest_config_key.cpython-36.opt-2.pyctest_config_key.cpython-36.pyctest_configdialog.cpython-36.opt-1.pyctest_configdialog.cpython-36.opt-2.pyctest_configdialog.cpython-36.pyctest_debugger.cpython-36.opt-1.pyctest_debugger.cpython-36.opt-2.pyctest_debugger.cpython-36.pyctest_debugger_r.cpython-36.opt-1.pyctest_debugger_r.cpython-36.opt-2.pyctest_debugger_r.cpython-36.pyctest_debugobj.cpython-36.opt-1.pyctest_debugobj.cpython-36.opt-2.pyctest_debugobj.cpython-36.pyctest_debugobj_r.cpython-36.opt-1.pyctest_debugobj_r.cpython-36.opt-2.pyctest_debugobj_r.cpython-36.pyctest_delegator.cpython-36.opt-1.pyctest_delegator.cpython-36.opt-2.pyctest_delegator.cpython-36.pyctest_editmenu.cpython-36.opt-1.pyctest_editmenu.cpython-36.opt-2.pyctest_editmenu.cpython-36.pyctest_editor.cpython-36.opt-1.pyctest_editor.cpython-36.opt-2.pyctest_editor.cpython-36.pyctest_filelist.cpython-36.opt-1.pyctest_filelist.cpython-36.opt-2.pyctest_filelist.cpython-36.pyctest_grep.cpython-36.opt-1.pyctest_grep.cpython-36.opt-2.pyctest_grep.cpython-36.pyctest_help.cpython-36.opt-1.pyctest_help.cpython-36.opt-2.pyctest_help.cpython-36.pyctest_help_about.cpython-36.opt-1.pyctest_help_about.cpython-36.opt-2.pyctest_help_about.cpython-36.pyctest_history.cpython-36.opt-1.pyctest_history.cpython-36.opt-2.pyctest_history.cpython-36.pyctest_hyperparser.cpython-36.opt-1.pyctest_hyperparser.cpython-36.opt-2.pyctest_hyperparser.cpython-36.pyctest_iomenu.cpython-36.opt-1.pyctest_iomenu.cpython-36.opt-2.pyctest_iomenu.cpython-36.pyctest_macosx.cpython-36.opt-1.pyctest_macosx.cpython-36.opt-2.pyctest_macosx.cpython-36.pyctest_mainmenu.cpython-36.opt-1.pyctest_mainmenu.cpython-36.opt-2.pyctest_mainmenu.cpython-36.pyctest_multicall.cpython-36.opt-1.pyctest_multicall.cpython-36.opt-2.pyctest_multicall.cpython-36.pyctest_outwin.cpython-36.opt-1.pyctest_outwin.cpython-36.opt-2.pyctest_outwin.cpython-36.pyctest_paragraph.cpython-36.opt-1.pyctest_paragraph.cpython-36.opt-2.pyctest_paragraph.cpython-36.pyctest_parenmatch.cpython-36.opt-1.pyctest_parenmatch.cpython-36.opt-2.pyctest_parenmatch.cpython-36.pyctest_pathbrowser.cpython-36.opt-1.pyctest_pathbrowser.cpython-36.opt-2.pyctest_pathbrowser.cpython-36.pyctest_percolator.cpython-36.opt-1.pyctest_percolator.cpython-36.opt-2.pyctest_percolator.cpython-36.pyctest_pyparse.cpython-36.opt-1.pyctest_pyparse.cpython-36.opt-2.pyctest_pyparse.cpython-36.pyctest_pyshell.cpython-36.opt-1.pyctest_pyshell.cpython-36.opt-2.pyctest_pyshell.cpython-36.pyctest_query.cpython-36.opt-1.pyctest_query.cpython-36.opt-2.pyctest_query.cpython-36.pyctest_redirector.cpython-36.opt-1.pyctest_redirector.cpython-36.opt-2.pyctest_redirector.cpython-36.pyctest_replace.cpython-36.opt-1.pyctest_replace.cpython-36.opt-2.pyctest_replace.cpython-36.pyctest_rpc.cpython-36.opt-1.pyctest_rpc.cpython-36.opt-2.pyctest_rpc.cpython-36.pyctest_rstrip.cpython-36.opt-1.pyctest_rstrip.cpython-36.opt-2.pyctest_rstrip.cpython-36.pyctest_run.cpython-36.opt-1.pyctest_run.cpython-36.opt-2.pyctest_run.cpython-36.pyctest_runscript.cpython-36.opt-1.pyctest_runscript.cpython-36.opt-2.pyctest_runscript.cpython-36.pyctest_scrolledlist.cpython-36.opt-1.pyctest_scrolledlist.cpython-36.opt-2.pyctest_scrolledlist.cpython-36.pyctest_search.cpython-36.opt-1.pyctest_search.cpython-36.opt-2.pyctest_search.cpython-36.pyctest_searchbase.cpython-36.opt-1.pyctest_searchbase.cpython-36.opt-2.pyctest_searchbase.cpython-36.pyctest_searchengine.cpython-36.opt-1.pyctest_searchengine.cpython-36.opt-2.pyctest_searchengine.cpython-36.pyctest_squeezer.cpython-36.opt-1.pyctest_squeezer.cpython-36.opt-2.pyctest_squeezer.cpython-36.pyctest_stackviewer.cpython-36.opt-1.pyctest_stackviewer.cpython-36.opt-2.pyctest_stackviewer.cpython-36.pyctest_statusbar.cpython-36.opt-1.pyctest_statusbar.cpython-36.opt-2.pyctest_statusbar.cpython-36.pyctest_text.cpython-36.opt-1.pyctest_text.cpython-36.opt-2.pyctest_text.cpython-36.pyctest_textview.cpython-36.opt-1.pyctest_textview.cpython-36.opt-2.pyctest_textview.cpython-36.pyctest_tooltip.cpython-36.opt-1.pyctest_tooltip.cpython-36.opt-2.pyctest_tooltip.cpython-36.pyctest_tree.cpython-36.opt-1.pyctest_tree.cpython-36.opt-2.pyctest_tree.cpython-36.pyctest_undo.cpython-36.opt-1.pyctest_undo.cpython-36.opt-2.pyctest_undo.cpython-36.pyctest_warning.cpython-36.opt-1.pyctest_warning.cpython-36.opt-2.pyctest_warning.cpython-36.pyctest_window.cpython-36.opt-1.pyctest_window.cpython-36.opt-2.pyctest_window.cpython-36.pyctest_zoomheight.cpython-36.opt-1.pyctest_zoomheight.cpython-36.opt-2.pyctest_zoomheight.cpython-36.pychtest.pymock_idle.pymock_tk.pytemplate.pytest_autocomplete.pytest_autocomplete_w.pytest_autoexpand.pytest_browser.pytest_calltip.pytest_calltip_w.pytest_codecontext.pytest_colorizer.pytest_config.pytest_config_key.pytest_configdialog.pytest_debugger.pytest_debugger_r.pytest_debugobj.pytest_debugobj_r.pytest_delegator.pytest_editmenu.pytest_editor.pytest_filelist.pytest_grep.pytest_help.pytest_help_about.pytest_history.pytest_hyperparser.pytest_iomenu.pytest_macosx.pytest_mainmenu.pytest_multicall.pytest_outwin.pytest_paragraph.pytest_parenmatch.pytest_pathbrowser.pytest_percolator.pytest_pyparse.pytest_pyshell.pytest_query.pytest_redirector.pytest_replace.pytest_rpc.pytest_rstrip.pytest_run.pytest_runscript.pytest_scrolledlist.pytest_search.pytest_searchbase.pytest_searchengine.pytest_squeezer.pytest_stackviewer.pytest_statusbar.pytest_text.pytest_textview.pytest_tooltip.pytest_tree.pytest_undo.pytest_warning.pytest_window.pytest_zoomheight.pyiomenu.pymacosx.pymainmenu.pymulticall.pyoutwin.pyparagraph.pyparenmatch.pypathbrowser.pypercolator.pypyparse.pypyshell.pyquery.pyredirector.pyreplace.pyrpc.pyrstrip.pyrun.pyrunscript.pyscrolledlist.pysearch.pysearchbase.pysearchengine.pysqueezer.pystackviewer.pystatusbar.pytextview.pytooltip.pytree.pyundo.pywindow.pyzoomheight.pyzzdummy.pyidle3.6.desktoppython3-idleChangeLogNEWS.txtREADME.txtTODO.txtextend.txthicolor16x16appsidle3.6.png32x32appsidle3.6.png48x48appsidle3.6.pngmetainfoidle3.6.appdata.xml/etc//etc/idle3.6//usr/bin//usr/lib64/python3.6//usr/lib64/python3.6/idlelib//usr/lib64/python3.6/idlelib/Icons//usr/lib64/python3.6/idlelib/__pycache__//usr/lib64/python3.6/idlelib/idle_test//usr/lib64/python3.6/idlelib/idle_test/__pycache__//usr/share/applications//usr/share/doc/packages//usr/share/doc/packages/python3-idle//usr/share/icons//usr/share/icons/hicolor//usr/share/icons/hicolor/16x16//usr/share/icons/hicolor/16x16/apps//usr/share/icons/hicolor/32x32//usr/share/icons/hicolor/32x32/apps//usr/share/icons/hicolor/48x48//usr/share/icons/hicolor/48x48/apps//usr/share//usr/share/metainfo/-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:43469/SUSE_SLE-15-SP3_Update/16601635c0f3eb9235f208bca39c93ae-python3.SUSE_SLE-15-SP3_Updatedrpmxz5s390x-suse-linux   directoryASCII textPython script, ASCII text executableUTF-8 Unicode textASCII text, with very long linesGIF image data, version 89a, 15 x 13GIF image data, version 89a, 16 x 16PNG image data, 16 x 16, 16-bit/color RGBA, non-interlacedGIF image data, version 89a, 32 x 32PNG image data, 32 x 32, 16-bit/color RGBA, non-interlacedGIF image data, version 89a, 48 x 48PNG image data, 48 x 48, 16-bit/color RGBA, non-interlacedGIF image data, version 89a, 11 x 11GIF image data, version 89a, 16 x 13GIF image data, version 89a, 14 x 11python 3.6 byte-compiledHTML document, UTF-8 Unicode text, with very long linesDOS batch file, ASCII text, with CRLF line terminatorsPython script, UTF-8 Unicode text executableXML 1.0 document, UTF-8 Unicode text  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRPPPPPZ)|ϸdutf-8d959f98031ded9ad30e9a7b1a180403978a7b1984f994b9779edb4520e7337d6?7zXZ !t/9]"k%f9%) `>'=<>vEKֽ:^3Œ6-ѱ֎Yh%_TG,o㵿v(3B~-¥DZ_Y#Wf\_?x2},ϣj]wɧW>\iVߓHef{)%ēCU1A$٤sZ $ͻS=0L` PЋ |#,`%8g0v-CNP$M*ts=ٌ 8uw͘D]-V+nR`0PL3Z=|j:Žu brI<:z*hm=ġdi݉̎J)A5Y€ɼ 7\@SFzQC"fH˾$NsZ f`FES嘘4ͼiE +'~+[K0dQ8 G3AJ#^Gx0I$ ~0xZ >}pıv~ ~A;j&w1!hU#)1{X*VC]W3SVuyup 6S9YT[m!B~2JbqД 0N^FfcPՄ:V:5ǘW⹶fVڊ3'>] 7x4Q*S^qT{M&M)ֺVMz0p zGΒ!&U?q~.P84,! b{+>/^N\V-g [6[E ,J;n`3C%e/$B",өrT!^+"1i ^~]l:4k:au `vQ%)a$Dʉ=:(Ig9,͈=M WóaR,A,Wp}~{٥\kLUVipjGIh=K9AXJJ㢴KGm * (V{g=џnWԪ I93]"ۈdV*{;ncc-po\}(F5tQc0#ѡ8nO 1/ T\\N`i>}Mdox1}AKȥ.q SIg@5sch;^ĻA4\OscͻfE^?w$޵}YeXAw Kw`{JcL +kjQ.5G2D\0N v 4B'LxYBB } P_JI)d9yBp1@(Ⓖז㯲Kʼ!6q't UӒ[,L #p Ҥj!Pzi=]ORy*PdwDP`ϵIQ3p .D%hG/|$nB]2n W8"Pl!=L*j0@Mc2X"Ԯyj|"'jl BT7jyVI=GV\246)AI>rFlG]Zy/\Q祂v:jJ$t{Fbq}w6gvRt pBH ^;>dνK<֥&w (j*93V5o{&n4?~T2`\ud &C $A1u--T=JycGb*Wm7: ։ሾS2G[,2}+(xDg !(]}I*Ŀ~P[+N*"5}b"=} n96}BQYfԈ?Xp35 ̣ኂ '󂂎ٮ< HUxlz4jB't鿧 'l~>}I7bZpQBTGJXBIRԮ 9&Tڛg{[s,h]0/0;-W0xTzJ#cץm\Uon w%a@X(:A+u9xw@wTJC?l[(S4PjMXjjbUv紜@$a_tp]cn](IwZaה-ɛt(O`HoҒJ+.HNHARG|8lrEbV eմS4̵,2o>lMl{ Q`טNN yRM9 oQN*Z+LKLv`N5_HAk( U0jHsvPzj V?%U ތo”Ѻ^tfwnV3v8u"S4&n5fj}7*gqQgKL/ (tuiw 5V?<"5>?]ea# 7_&aeӵ6`z=ޅƩo7:EgZn͟}_ gz}=~e(%7nEÕ|=ZלcX2"NKBce%ox? ȃ]gHBtk2N" .:ٜكuj9Eձm-rlZp U˹M[9#!H~}:] ?T6c jM(Rxԣ_1RMBa;sB!K R[I_*5(!(N!h)ZlS(zgXJ CoOsw/b1`̈5,JIf6`)QB6vy5A}݂EGOE> 6S~~QEnDeihWd"{*2즟ٻXn&">:~F懹ޫR~5۫SNE5&h8ʊȏp٩bJ]"ޝI҅Lg]CHscpWlZdu75#mu1FJ_: 7,F򾜞(m]㭣@oM[.sAp\kz_ xfB͟? U^~vmbI>G|Ylab^&ѷL~+KI cLTOW;(h1y_ҩo\ :Sμ$H*qH Ĺ,B# o`Wϙp:&?׫eT\ZUKm\{hdݎ#zN߬ jt )ZQsw֨q&|xyj屢 [ xy=Ľ8aXڳK"YXFzs|)">s+{pI-~ԪST\rgxba@Tއvr69ZQۍ؎/;=4Hi|G&t;)b-dJv pluFx  hȡcgRE (G!&# WK4 }Rh⛢jU1+w>}yƁq5qfɼ,!-kiPi tO$`[d <%#vLLy¬.3lYyWjOTN1~+m4ϕnT%".\w{[{>^dj~ (e (tO剀MqAkvy Z[jD`k)Q*4xgk$Wyh*(..ф$F.6Vp8Hf,?'>ٟ/Y@F!4~BBtL{*緖ӗK#&[aCvS9/lQ쬬Jo=4FS%z"7ߕgapE$,0(~79w{W {q>O^4%$&ʖExh^+2^Jjt)?sMkBX8!lS;m>[ڒmԋN/r됏 w|X7$ | }܀BK%C$P$ 2D$p,Wr@>rY֓v3f`+ VX6,͑UN-րt`5W R0XiuJP`tK}%ls{|}o=Tb@*>j@!` !'9%3 U;„>1TNNVs7K/FZ0 ]+*Y;CKsZ9抖ן~6dd~eT(f4ރdqj$+Ŀ(k{?RkPɢi=4v-6!3/+ pM27wzk7~AaOIKי?Eͩ0 cjq `Ԩ9Ì p ̠OrcXE:ĉxPu!SedV(HU(aE^4IE Vr'Xr@$F$znЖ]Mq_2[eJALW[Y#z0lLqn<#F tWT|-B˺ΈU(o%1ƽ7fBګkHsv~]vs%au--}'pdEpTq7ndmB GaZFPYRƭnw_W,"t|Dm!ñ(mε6eatMY1ݺ'@]km[=cNWlRהtk_A%S&6)3E·Ar:9B.}=]g:3r{uXl&reW9*2!И.II\x{.[E F]AYܞnEd(5Bfv"2FŞ1p;rEk_3Ϛºu7_HVoQb5=dlݟ6+/91'?#yMab@t^f('}V krMw8$q(9mTQ_B8^ =UAb$ÿԚ)h kS?<:؏?QQAg+[ T#1 h´Ⱦ !skr3΂ܻdVAGf]#Q5|3)P6ux*%㿨xeznT#/0|Ԣ)5wB߉3o'ek~/E^`V}H~)z7泋Lap.kB>rw}lg4=;CXNfHjKWtS1F'T$/Y`aq-"دy^Z dwXC!SgH\{!g;ifZn#D<ߴ3"tHӆ|o,c0byQĸ*)KZU..eFy!'[ wabbȷTh̼Z{<:DWҶ}xbGy'OΤ9Ul0Kd^}f!J겢2-U.];#ōYS5Qq;[7Hk(HDgG7H| uXF@}HH8O][kgុ]C?8.0$R:JyU)2X"NpXq72(#5@h2.rT-N;n"sTeGJ42Mj޸}@\Y{ 45hOQ`îQV 53uzpno ?ocŦ;؜!E҈y4fYnHi|1T#J6fw|cRe}fD1#X[Lƭ(<[gpę].D_?kr W1ǽy|-bJ㞌/" hD^F\8(yesVDd2r6I5]-"06($6dG=sy"0㙕)pA NF:n+57[n\aGxKѻZ%!ӽGt 'NGת܀(M$T0ikaDZb{?<:!9%8GWub ܀<>1|1~ʺqClh-SVNBƐV9вPJƱHi HC\E$ǿ 7WF@{`#Z1 Ky a$ZJd܅筷SM0S(l@C ̭ 4:#5[ )(`vg5MN s%nvh4mNW8?uVHjrvQ/vv=NEPz4BQcQ6k>,_@D)5-],灋Kbyㅊw5Ğ ~i@[(B2Sݐ}+3^ l/ 8da<~jh@n$5 U#HsBpќw(Ei :tðB$H6yOUu@rĀza+l50H֧YbVs̱9;5$g_VRu(e4qF qQ.pv$੎sܠk;&GZr*dqf,-x-z0_!7#`l2벐'9&f,kS&O'*iJnCEaG]*\$Eh:9d>69FTN?~550+8$2t{! &<@aWr܆NOJU[4wTjEѪ[%&,f ;+ SB}fț e;BD$@0@vŎRki|qQ7kۈآp/0VTXy? Hxgע7)w.)#<͆F{4[JFQH6LuNBtG,ş c ύեd:D\ ۧ"AH#%-Epnr%s<4a߳5wCɈv P Ȇtˣ pkE>2|URp v{^GߠC\BBqCz5+)cgk>3YtTPn 4V<:Yd11"ej#N|p)g*MP哦s[]LxTYݠ !jt@, me]3Khh"2挿8BK4=[Zf[?~=l"3ZW)G UwY:ڰNxx_7yG_F d|0 h`Exjb7 $<jyd]WғBYO!Um#rV"Ҍ|[ 獠iYX#%'smOl|툢;Q ʡqgThf1`Ji\D%Sx&g0%:p,[=ƧZ+ eucosTlĵ2NYSc00b$tғ\4~aʣ.viӹel#Gh]A"heْdև%ƚQxiWCDɃ"EĥHUNK,:DLPYz Ja4PC: 0JS;#Σnb@+; Q24ku33Av;0WR +8+[%d1h , 9rC<7x^^b+xܶle\ i^Q CF& dJJtŲ+41Uƌ|đc7N5IGs _ `WTl]. /!zj%|j:6On]*_DJ_P(%Ṋ'h*ڽ֔kahI5~W_Wђ՝l.A(t#!dq'TM +>)C6L)E|Ӷ6VrE.9hS-[d*ݢKpՔze+6m $m |dZ @ݣ2TǵMԅiiYf?ЮlΆ^;"tQ{!68~D|tmB1龜GBa\"2!V o.l[oBt,Bdu/IS-Љ..yp~kR\!3> [FWNںƜǖ[bzipZ_S^KT8E#6D;0pײFH яy96P+ՈG(-ae]F#~j.]>m\Nql C҄h}e9[aU _Xt{Lt;K+*Όb;o x yBH~]S=ixssç| |Є2 0`"6y {c%n'/Zd|ƫհpnf{L7@%Q[h2&j{]+r".ǽ V;W1PV~5p˯He?L$OEoFJ.\Tj _=4})f:=L&cxU/㾗`-!kxlfw*tbT/2Ft]Y^BD4-d T,$WH@Llx>6˭g LMMs`$yJi@[ UWLPJ@X,bhv wAJ a~K~l^doʖL%"r5{kk/xY#Uf*݌gz>bu+,ӟ{jcu/bZ&Z2wYh? رJUk8Y82I/T?&rn!H昩Kjr LZv4#x"K$*B!yؐ赡NQ/ﬢ{ R+ &;g(f%-AIa{")Bg'jϕrά$=ϪO;z9´U~D6PlWy_4YWDiU@_ķOe Y ݊{pMh%=:U\s -16hhndžSh$ 0joU|!OMkU9/TZ0 .>*a0,74k/ ]#/GғIBʖ9tOpvbc9)Q?{5@9&ѼJ'LB=Gd:h-98)!jOnBoqIq~>^xUg̣V<"h2u]ZP lDa`>rƁ ؞ppyf3wSi:\ӠT6 &L!œV _Qd)tP~a`ِ?^\(xbߞd٥[cBi&.(80Uϗ)璯=Cx^1򯀶S#Ku cmP&90BnQQAҺnBW\I{iNĶh%ZڜL=sQY>2yg8$*zD(;Ӿ8TJWjCw"lj do@mG 0Eq$&i('+z^M:-5*x"#oև\3;iV6ϥ.DK;]슉 To-A *U8}wWye$ˈYT6Us/*1CKbӡCy26uY~;Y Ww 'KJa?r=ʏR<H:xߝr9W޻[5k3}l Gb[wW\@̅*x˒OD{6 L{%O=@2pۣi|UvBD#n8fcIkV 3Vϋ)sȥ"9":dst>MG)5FܖK|B5@\?Ii K!g|:@ŭH䬠 ,KMGN%{*! M@t~_i3'rGJy>Ng@i{:9ވreۧyBLu&=Ȱ /|([ lz;ʩ*'uLߝ ;ݍ"!:[RLL>Dn[Jv)Aj#'nP񫫘, Bx{^;#8DVdf[di*;ʱ:WKT U,[b c3.:!J"2;c(R>K;'brEs6H n ~cS繏568\o僊/A" :8 R1],N-ݫt5q RR2Er qS Õx=Mnx1>bRt|_}գG+ xI\yj䢧{Ϭ)#i XB]7xܔXrMz%Fv5  :[&ᙵ7d')tw[,"|ϟG$܉}_%IbXTco0}1NV tOg-"]Qo\qV,&;w - Z<¬mYYZ[t>]k^yTGG5Jݹm9B[\܀7rɳ6w3gkk>R0GEZe}\6sXӵxӽH ԲXP$].,cڌr!]k]7#&4^4 vrsl,e4{q@OqKD{BEy zjgV #'bN n!{#t#%}`OU)j-AIHt.Q#? N ]>,G[]Þ1R HjpV ٧Zy~ #~6-te1N^QlbUro/ka(yO*V,>FCݰіIZT .H+/̮8ZPd"sjaĔ y+ ~L6 syiPFAӤ>7k?hX3lCR9-dZܨJ9/./:4$ T ldDۃn g z5 `zՈlq<,ޟc9*]ZW%9MeGL~t5K s\ }Ƀ/yU0 Gr1(qM)q;Wպ2c37<9Ŧ/]nK(|LF +A⪭ IWv%73~mcT?!\+Aꊕ0v0VUh ==!{A?NKҀ= OFOsJp4e-;l1Xs#]n'J)%߱JG*[LYfCGL1gG-|I;ZB%P1EWr~Vi`0+{1-o(# NrIG~,¦e mFUz= uH5֥@Oa8zBI*qeMAnֹoChu1ahu(osޏ a~cfH&$e}hD }mܕPV)ڙ؀L -9U^ vM"|°0z?e7Td([ I 슫T@ u+~sO\ _G IȅI[32LPz DSb=vS&|.L}xdj:< =k|g xN aakjS+ ڀSGH0I&9gWSTݣ}j3`1ͱm갅^p< Y2̼;d&B"{+bn~c\fzD]72i/Λo?m§ _ڎ79u lEMŜJNne{|<[{Z[s\ƭl=s-d", | !'BL +/xP EM%"&ٔ0̚W¨Բ6fl6h8$c%gT^㖕6\!yU!Msڟ渰a;c:XqT1 $T MڞK򾡡 &ixP!](Bg0'qW{0A`i~-ѯR ѷ(}ɈWWbCܼeRQd_muC{ 37*r7i^̛(acs\! [_ 09iUy헿%bZI{=)UҴjO- cÑp. ~p xK=j xǁ3DBWcgL:m>ocp_{ 6b Ve䇦e_1ϓ'g4:#`!fYbβ%p^/C3ic4Wɶ}\xoIzň,O)]'[3nbBՐK\G,/ƀ0>=eVj44 쓑gbԞ2l`]hXԚ D>#;Ìby.XK/n5dq>g/~ GFoө{ɕO̝RVΕY7Z 6ufA,N>K]bX`PoJ;M|{ !cu9%-ax^?Թ~}^]6Gʹ/} T?_nӾ- zO9-K|0mqE䲵 w~}0A?H26>ZtM_?1>|L&TQNnQ-LY6fQMkUt;,Q89WQ0Ě˥:1?R]41{]c!Mf$/>at'Pvt&뽬9"͎bRPpQc_th F3veP *,O" t$N~KeӟTkjA`hΘL3"9䘻7A?` `v (.dL(" ajfAa?+=01aҢ(A+_b`;\8":'c[hR7 Rx*UidJ;k P^YhQ->T74-iw>ջ9 %:514VI? U4GCEnlPT )Q\ƘEZtvMnAGIyƿ6DZ:wAМ}#񃪃O"Zďyʛ1;zvrT&H S8~7+pub#.Tt;p|G=:21eLJ5$n 7C8k &%r! _!ڧ|]-l6I84a|h3eOsOMVGBucZ7FzFHYWMrR3Y@3$S0NղZs(J"/D'ثkRav~j3WQnMdM4ãsg!ˌ' "bčҜ s,g(.KѤy5ͷLZymuY+2&x]0iPyO3*ēpyQ)U| p (1f.e-2l:cjsХKNx(.mB]kؤ]?ƌ'mvI6%J^}W8@&>%hHfDV;|!o0rCf^N6XK%rq ġM<J(}d_͕e?9p4<ǡiO6Uw!_>)~'Ѽ rqUǯtR%6OjM񒖰VBvڊ]P_n$xyWR>0)1VVٷ<$# a`\>iDݒQDZG0g-|kַ$zV0kY<lwr^,aCsw22y͂<<}hFzQf8kW.",_?p8qC& u⏄}#nЦoԝ Qiy#vt;"g}_gGZ%y%pak(Rb6wgl : JmmdgA&f$M ~s r W*ډntOR1vk7gnnzKנt5%QO܋ԅͷ i^KYzT#";~]f0r%M2F(bmkw\;+z))SOGC6n\]˜p{v0 -.2ZҀcޒdu <զ,`x5ɥɽ&,BH[ &m)رԁ $dyDLil6P2[ˇ+,ל3dܴ6@(pd6;` p !#D6 Ӫyqڌ vb#fD'(21}TtFxGuj1dE40IojfEވ|˪,h+M@t('PN~:4ͻwPLuNs/C}  e 1$p?I]hs:+Ȭ uAk>Q T[qCqJ]͛wkZƳkeitfĞ?ׇ xuy9Eb' 9$nUG$(ԉR*scJHO|37[LlCfq_@U= qh/6,<ڕϜ:5:Uq~x 3Eۤ)U^?)zX{M敇b71x !`/_(Zxtjq^B1=KNsL \F\b(^}ӲJ%3Y"@r|vv jquwOh F$;J|$ t#7ݝ)8P)g@(Z?Pe*Mtk$9sAW)o)r g-^E'ԗ/vkRyoK{P٫_@Z_26E+Ĕk#ƣAp⍒Z= !(PYC7Z]l < +, YX-\XTF8'fhn# )ӾT2U}.qg~[Yׯ.Fp{pĦk\84XS$!܆=kqtQ{2 -T! [JÔnٲ/Jeb1gz.(#%?< t/߫i3 -bjkT;Mq/8qԍ\;kEgG4bo>ң Fzҿ/y(+tl>fqn^\~IiV6ROl~ 3[<)2qu y*%4w>`LU)(̌o5^'|7\KSkj8m b)S !sR&J1jydn"M}ajIŜsdwc}Q=z"*i4@ܻ JqoSѧC&+f-{L#=]aߙc0҅)mC% ?Ww>=G6o?uMހ r WA@JS+ o+2k'D+7{G{n?c|y`W`^#^(܊@z.s*q8l!`/1ͮTՔP쐅ұ`);n@H$bly pKtrq%EGZ0Gs\,xAJl/M<.xҁ.'Hc'v`lk63N{:C PΆjj*kuA` п#G*qĆ6Qe>ndL"VlnЃ1~Nc\-4dWԩ=ۺ < Wk@z;mkSǨ Q5ü|h5V:^0M{`^ތ1 ' !ׄ>NqmښL*i|.r"X]̈yarw0+_%ydm7*"fpnqu-h ^ ɊKEQU8L5gH>$Bvm81Urښ'I`w$=RNc~/j\G ;&3HJsW E3 2)Z=PQ  I.Ը2 zGfgTbUe=r,Pь׎Ө ;M%0p8DfL#|-".t<6Ԫu:Fi+n`S YԇB~IML/H6.>B7f=x[|fL x|Mr$\K{!#Fi̩\R.B=$df޺e l,y*\`m=445fTAA^xιnqej&O:6؊_ъTA砱щJ3oqAIkq1T%>-H˃1n䲱U]{Fڄ^z#hh5KVD|?'^[O-LH&v 1;ISJC4cޕXhc|`O=+g[ODS4eFoӂl/:ڥHJy:2EtO6H_UiXDwB$þu.* i0vR3빇1)SL2aNwЋM%Q??GS2t[yEpc$*ruh >{@JgPnܨI>ChmOV% Fi lȞK$]G mA$ˈŷIIiC@e(~N0ޠ4̙i{@ن-Evߌ>ڬMaPrnHכ?y+3SoTHpQ>v-?#fQc$وe5O7-/0u;.T ϐWȝ E>zEyћE5x m)H@Hy`) I_{ Z": 9F!5RN!_JѦK߈2Br)M'76ity>kd }~KQ5^Mӟ,C !D2Ռ<reAmyYW^D.LB("% !?ܽcxIyGo!& V{DG(]aQAPcE/cw_a7%@ּ^ l<֕:)JC*t c)FP)$2a6g,n z.HI0)![ʲ bfqU$+`U忇Zɴ굚䄦2XϛJ4_CtCum nyaJ/!Ğ'8IpГYN{yQqha%*m2j*ӳ*8LBX fZMo+ħ#{?+$C*yl?YvqXԶHI:RX/#b%^KRw35$4ܱP/l͎t!Mݏ_2]AM(+#5ex|EQ_#](nL)\M_^zER95v`יj5Vo6WVp\9TC_1S+ ڳ0Y5nDq,Z:E7gTtﻝCp5#|%sZߛ@\r5#.WI ~ :4`{Z_΢cE)[2ѹ# 2Ae M5x"NWFᙲu;z$R :n%Rژ1)|5ڜCTh͗[A:p%FmQcA*6/@b;)#`2l3ǯWѴsK^15dF8z$SaΠ V`%=zrS{X$,8^6/'>zʮDPQ0 Q\3k#"IeMmjٝv–31)+K" ʲ&?z&/n,m|WôX:kjǬA>pE{f( ͍vN[}rے`au (pa Tb&j50|6#K%\wC MM| _ Xxۄ=_8;ݩmD3i jn)kTEux `} ˟EX^VDMI,4IHGcpп43?"- ,SK' ѿcrڬb$bs &k1AP9RESi|qf&I֙t EL+\\&Ҹ!x$̺}?^l!S"&ՠPJrhB tZ 62mW0`56/N:DUP5 r?G] SG( lQS?QSBC\Mʉ6wp&p<0ǐLbu=6(ݶ#zVa~V#h(rw,< T_Sc/.\hm .BZЗ *heӪi_=2vPkKPrx.$[nvh#d']HP7ܝ ߤ^Uqq佛AҎQOqvXi$҆arWJ ޷K#| $^rax}By:iF2!D6z:V R0GD$]0]ޒ͇]#ґB1v։z]sI rbh4c(p1Q(gs KYJd0(yQ+XP_AQ~1[)D;jQAzqL{&0$Kwk+&07Ln=~Pa(+%UWDO|s r4,0cMoGdXSaư%ィEߞl] 8?[ФlpI[rIJװֽ"WN%xw#_7G8TPZ*aY*hXkԕ`yl*3k͸*+@8ARTF}O6^İ.h˴|͵tSOFz3[k4&;NE3BAD29|Z Ȁu#qkGk*-ݳK#"~ \ljBQxǟC*rC Q߲ _#: }mF#6`z,کO*g،_|5KVX߱bL&d?CrF945kwwvA,=e"ZDK@ӧÒkWSRà?#eJhm]smP'҇-^R@sH'.^xdeӱ6-ҍkK@zJYv~v/yJQբ5E)Ʈz_w gmI5RJ+К#i7H(sR DRͰc6̓area04C C.TrML .lܧ_+$&:XjabӬb2\ztW )S7.r,1h*>2NU =G}hqw/)41GԷX(+٬-XgܫO"|G/ 궋!ĄQozpJIݜ SD1OLS)q5ZJՍocoBU,Db !"rwGǖUK%_;:P,o<$ۻ0ZrM j,vk+-Is'pNc $ =p`ucg4f oh칉#LUk퐮6._ ->:NAw5[Ft6q]|3;)C/Ԏ:Q,>ir% &`?iyלٓTgf_}m(Z m#F@!e)iA2fw"? bDQsVM ~d1PknqcIWd^Ŝ)O{]9e6j7D~5nJU A\(wFF\CV"5ENym1v`Bk{)AfNcKK& LQRGgpةbLq昈38b7"V3Puz|W}Hn y+vMsaqޏwfK7㒀TxXƩ,W[!I*(PCDߓbtx33?,7wqR^8ѮѷzC-TRGQjhJ$!ycCDK-&]sp5: £-r4^=Ѫ`ssr{>Qn *IأZG$L+Bh,צߕ3c+7*Y -s~M&Sb81iY5G>|eįt!)!z5yk1K)Lnvdf&m\ u2 |X3(aع\4AhOάbx?%45 ?uUc{\&:e$iFcHGX,yzM^~"r;i6(: #E[m}Ek"?n?-"tMaIWЃ3L"K=3o#/#@3tn_^!j2yKt SGaP11װ7 wim5e%_XsF sÇ/ji77E[F@vXz! %@׋ffA,NҔ IEv #`e0+rw/w=]l?2hR{8 %` ̗i R@Sg?hlf ]t^y}Rˈ ( #mVݓ}aV }*<=%j؆#KO@ʅuWv$+~n6 $v9l/OC+%Ɍ +&m7'ˤ,Fqwד .VG v֏-4,C1Ib//huMs /fYnH)9`w8Å-Dp;VUNyW:/TZ(m T[th {j(RaVZe)=*i'Y Rs!ZWƖIGFXL,*wdBN6)Սlm[Iz}Rܕ|'=.Z,JJDX mGeL8clmq0R95.ws-N7]Cpu4R# c5կwWby9A*+ l X M&M3l{:N0?|/=bT^v\qP$Zf)71g" ua<^H V smyMg2_XQAlRnY kZ5[U`AJ}aX4y,46&NN6TL7ڤ3 .M&+\$W3 T,]hZ!ogkqWC%Kz(?=25SL#G?"E׌x҃>ވ)͌{Jf/Ogux/ey}fajtX*tjS_#>:pP ely:*h7u2lˊ!~IҋnF?3!|rKkotXvMKF\8VZモ-H_*eOQ&.5VgAMqⴕe?Ymۏ1N÷ţ\륱F=z4)Jg͛d'^:c&lpmuJ;Ds$MkGuB&Q#1ob;O<g̣CǮˢX0Zo睝w\ ) moUѓy:@\Y' ;N[4A5sIZdY^%N(V wD32"3潞@Ek2UI py+>Fs96K(έ+۽41&nhYtj8g hVŠbu+%Q9*mW66T e1kt0p䄭f `6'-!b涯}t7c-eK/XorhP\v[X?m$>J %EwoZ^ᄐŋ˴8ҭOlm|JJO%3rEh@ꀸ&dK1<&<$d@n&.Qa:Q^s`EHQ\!t'f,)Ӯ/^>NS7́@iL캙79rχ?|v^M-_[6bxoqKW(GւQ]BAGf2fNmUF< _k\{tM31 C,צ2 Q&::s|`< :z +2qWM QME<+ɴ6r"-4pk^#C5aeJ%og8TYXC.HR5MEw|ͽIp;`b]uʤj=1];fcZco)-,9^@@NX r q r"ދ4;nم|˥^digNmqxԗEUWK?fx08u_1mvOYjsoQ- XsRq$M"Vc7׀h{-C[*.EFA+ !)H K_45Ln ڄCÓ+(F }Lz|49{)(_rԵKl9huzF ׼Y%/|fR{biF+{JX5شA5c?끦b@ѓEyѳ^ N]P&צ4e~e_pe$>z90ni(^qQe1% r;~{ 0*)2K˔+cH70Rd詣_ ]jm2N~.Pv`Ss8vnv_CcY7`ivbSFȜ\G33u5K bAjj" ʻАie& ewilsjeN\w"ׯh=ʉc:/(!~!7&4?".0'K:ܘx{:"{PVYW*Rz-D8 [d%T [z[ױ-g)=v}>l*B{j' E`v%wO kbI'~Ĕ7}Q*@e[loU3 u{ݰ#U2ac p'g-Z=&3wxasE=DpD%=_q1C9,y7:iFN‹_¶G$LrhY QblP7gR&{Mfa{`V~qDZ4*x:ȩw"k3YUPDBĜ2BT։UlOA\V$4ӭ>δ0%fDh(bAq.EklyQYL:odQ2uבU8)f;6sA$"aTΌ+ EoxUmv1#>AE6ZOUiI+Ss)BbOw]xLasxO ĎT?2IS2 PVj8QA׏)DJ[Ě _<=]h5;ԏ轀S<~:njr&76l?duwײ˶f-ӬEbs$U%;A%OCCI$ȁy%lWNMp+2ae$\`8{3QeehDά_;\L4ȬаH S# ʣ&fll>7.`PCl\KW6&8 uF_&@h!gʎAH iǧw 7OT5?m`ѳ[.5r0XAtg4K.J+D_G@9H_Evϊ @6-%c_J߶,%8yPIݞ ]:]/&ҿzL@!v}mMn ш\$nJKT&p_Acp8r3U{"]gTy9BzZk˵󼾀 (Zh!GFk`C8(Q NĢ;*j~ꢧ_37-?nQS)5PBb? mdZ ^R[+7~SuK֋y 2C]FW[uŒaݚ%/CͿ'DN1=kVsFʨY7MHC9|f_Z?Ǯ0 du@}t&XS0 dg_FކkCCOF|H30L閰zCr*{{Mšc9kd<JR,jby7FAy@UMȁ<$5 V`F>Z廄8Z!n`NEG)l `"xϚf7\/vXG; ׳c1 ҿ'LzUCnO/PTOK:#-_j,곅ԝ8W xn+GKzѥH{9hhMM3"&wRwSאZ'^/ #ͩ364p L/ձ(_kt>J[} -D9= hU^˹ՇJХӍߜ[`jS s-ꐷ,9a~w2t:.LC0FGɀ[pW _8pn^=5{-fCygeXl>E{0yTv')Cu>qtp}w#NE\|L OL, \Esq)K:~|7_qzWx16mbW" p0}mÏZn~;-qk2 㘇&<M47\EÊm S;éílWEe]'GVZR2Hd34:ڍgкMZ7‘fhLo򴭀q~J,xS˼AjFq=v7cvrxZ^+|ykP#衎+@tZGڀwo+ [Z7wYe8h8Isàe8K ,dD[~p[/\a*3o \:6V$:%WgTf{L ˧[› z]_{ŐB&ȅ{JPZWgџAolPs;eaqwKKW/lHiR5`+*8|M: 6Xˢ+tH 5`G./.P` QCS5;7d<)K tO- D+z g6FrcO\mQ.b%JA@њ'ٶ/M3h129'ƺU@u;r٪(5*7ئ .V9[ӻj^CC`ho\si- Ni,N#j;V"Ѧ|cRjC7qGV)'tJ9ux6bpN &mfQXKDRc],\ϐ2 eC#OZ@s7gq uѻ Puч=,Æ}]Ke0q$[=aO2]zQg4w]zvc"`xdNE=cf_?x#ox_kUfT[EHzԸX )Cv Co5D^Qivii^ku)MRYܚT-iW|Kɏ0 ڻ+*d}ȫAŵW1~9/H^h~\,y7oU~y8zuKb{0wis 6V1m{iz9pЂD:K}8CC QV?D H l5-[K8pD!BZu^ĵ M^Rf*`lW?0Gl>nG2SqJR $Ąͣ=Ⱦ%g 6oְ EK JoKׂʙr*#|d*_5u16un͎TyGu6鮉']̢Qv <'`v[#hXׯ'җa" 5ĆShƎhW8* EWÕQ-A;F(4Q t!i=^!Xw$I )5ݥG6%/ 6v-;4j~ Lv3U>0W \/ݢgAM1l3 F ) <ӟj_icyYh΢8P='O_+3fIש)`޿zqf:jYhp³2@v0LVgkY@4ՃlV<-r,F|fN?cgni= !w??RE:&xdԨ S/;eR&nn%*#W6阍Ү=EtWMţ#y 8x1%) aQE ,e:܏$;:`%.R*95ə|6EyK]=b3N}:^4 7j`bOg2 (s_#^#A-cp>B3! BmX\-1l"0шLO- ~M=()k'_L6Α/ -om Ckq_.sc). ⽆[{ה+pbQZs6߳F}.{k>1'[یQ&Ds8.n`w b\YkbaMC렘Р K1X}#Rrb0@\==_GV/3x|ZDh`Lfނ+f>/+K=9ʱ*D*BM؀77WiQYe^> 'w% 9ܩF0J@sႾd>3>$osa mX>3&52@0yh^d5 )&\C`ܑ5I/Ru6(^ch/U@?f)5ފTVݟTf#Sr;@wö:Gs EYڐ[铒ʿ߶6jI:$| dDaklLc_YCEfrV׬He3%wz@b%g~kncUYi(hmvBYE>zL#N9:( %}Wthܬ"S16[ʐH'/ǯ#&=FT緟$(DƦ ,q^3 B?!AN,ӝw4l'U./qKZp<s5T]/s8ɮ{.ALrǕ< Ew˱džnnȢjgj8꣱UgWE^TaXW:Z,c=po[St_ H=u:01P bu s&&/Msӝ^합!LW&^0J+I5ݼ͢ *<9Lc ٔ ˨‰^wQ76Ѧ!p1[^'pN`o?ǽKEJ JFZFr3CmrGAb DJpIx6EVʖ5VҴWn|7gw"sӲL{Ȣ3 O kL de%h S /Mq{IE=WVt5>+fx\WƄ@b@yW4Bܹ-KutڠÉ{.8\kjj0 ZgۄF(Z|iQNS]VU^,jOtuFiLi`2\*~bQ5!R?7Dz`aօ y4/s2-ajrcܥ ߚ\dM1] \A(?9fO"zShMK ES~/MYKK.TPA8Τt!Ii5۰!J7 r]K Z&x7׻ʻ˺vv_dBU!-ТbF=sVv"\$$q݅˽ԡW^QBtUe{磋~,X8U:bs8HS*Qolp޼ n0DNMJ쀓cvpPh¯dEZ@f~ĹX7SrB؆;~ :;FXy mirCihgŏH6LBN`NVo$ZȤp@ZM!w֤ERE5./岩=8caidJksl‘_Sm>ϊda.•V~.u %iߏ#<`d'qlj&!`&V3 Ljw!y; :pXQםy윙%üwqHk0^l`%ȂH_z}&EnK.[4z/>r)'x3C ՛+?FB^]2;5$vg6/[ouѰ}ܿmM !rbtO!^-? 7_E!Um)RI.gP@n],24,5!̽N{t|E,(~"R/Ao @jiq}ir >1L@ayu ǠJ )dSbGif=cP?7lKj-p.~ (K1:Vw,1f~j$QN4HV%͕X ĪxG)qܙڨO× U\v®2Phpsme/iFŚlRph4AIڟ .llu;"*9;%NA1s@deʉMgcx*!e hgUEBOG @Tcp|Qe]?S h8F֤XŨe{OxnFV4?$^d'D.F6|)Cz|.*EH-i pwc̥N_ٷD F =g{eމh!zɽ!yKc_Wo]e\j]ZdUR~Ϯ<gjDq?pcmٓ;BBK攳f#NVȫD= `Ȋm% AnrR]הf2Yli>7L# 1_H# G^52nϺQ*^ľLUXiJ[E㎢u=҅> )Ab]#OVШ"gT?9iE OFNn*w*"(Wjw8 i/RVmdUCR!`DZ>EWSUYa2MlŚڤVHA}Q6w KP*#0ni[#>Δm2o e>/zf 4`ĪOLNip67&?fԏ7\t쮞LYSVI@DJVi[h%[S!T'1N06;7zRn'"{@UliӜMQ/h-3XA"MU\9%[Pajh).k*z\J\Es Ri&Hgk MZ]NUtJCI2&:^ds05Qb-xZHX+T*cDۼJ-3<]1>N5IWA~VY4 X6b@Ae jta+.QBDgNUuPzSҾ$S/8Q =N{QhEn͜^̒e-P+Զ!B: U@ǬEؐ(1嗳-*2 jmr !P? @u>l:1y,1m6/z=EunL4l/{{z\Z,~L2[^!^ V#pB Ux,yGXq o} {*pHŻoZ,c5pNwe VP<pڞΜz0 A,3kQ4C|R- gbhY-֟a,0ȯho n uuv1h:/YT /#yNޚgxT\dT}׹(-QU5E>A2ʚyw]Cj;б#6*DGmu4|Z~ނE?D_;fud,-O`Oa\mXڇh d"~J5Rj"T&9mD ; yTG , >RA%'rs (03۳ndN8Brwy٤W~z]u$J.⥑1},ޱƒN*|~.'(HGgQX/_+ZR4,KI4\Y٠ >oּ6z l,該dL[d u?$ m_eL%΀˅Cǔt{ d;/7\e($ۅGQ4ݢ $Ɔ*l$^[l9Oh#ޕOg 8xuC"(rϿx:B w.CE4X<~3TKϭhv"p?~"/ţuiSaon8</!KMO+ujyXp^y_ObyEDH&o"/݁VuDxCNO1D|qT؇{Ͱ#0mBIz>⚛}mD×T#뜈8Om0?:tH%l;OP }f}oX!!"Z>Z3 jsGDJ =11&ʿ@u]\E%E:]q>ݳ{G#R5D(e>)}NQIlSA_{#'>!RnhZ $ ;ET_ 0dJDu;f'_tȂwRcs[В_yIL`E_*%?+ cJu[XCeK:]*^2&0ڣ+Vϒf>ޡBbwzi+˟ 6 kgj i')%ݾWokCְ.p4_?^ëZbČb\_8(3=,B}YE-2(-ͳpuYN%T$2`1d5 5 )A#;:9Y0lG#A)䭾;gׇ&恗O ͇AaRXd&Rbj\vE,NFscɭS߂rK w-wY5]S"Z'kBde,;sBTJ1D5!с!D8T՚ȆC:b'QN7 ̮ ܨkrs*=4hefQ3X>ro4ln٨/GU$bpzi5XײB}yC'X[/ 2P/׀a}x2<}Ƭ9BJb :} ?=JwSe}*U r&ul[6E]/>eAh|)MI;)Ϫq/!)!:eq!ĭ!fg4c7Sv4uo ؼzD0 -GbQ̆?!Zrgn#FHҲ\ԗdp~J%Hs3#K#dqX'䃃ey|r`v9߮io}/Wj'Ԟ1AV`3ұ) -OsP)轕_-w?NHcSkxҏ.r/Czsx%*[(h$>q]LE!0?82׃T?7k_w蜹4 q*A ͑?NÌ&b̰[n[|*zǜ^T"4kX67cȇ1囗 B0/i @{z#`O֞DN$r7HC~D%!\{6R^AnE.zo&UͦAVW[-% .GQgKrOSD2T7JAv@a),ZLWiJfmۆõ3|+E%vGq/Y.mƙbw$G9C\(HDڊy%=Fud9fc/Dꀬ = uuUK݁'ZcQ;@Sq4^/}ANZA7e] 2F(9H}{`bqe{!V8!c=u|@50Ҽ*z~[ pGeM&Q Zn=a*1ى۶ml(qD}8=墶;#f=ښ CS^A4uyxB& J4^PpiA₆ӈ& >awnT!^N٢5Bw|DZyoPjf@[Tv?Ds\:@[6 7 0\/kP$j;ޮbl]~Jd;뛁#Q| lP9 = ̠NYh0,k5OL&EJ¾.-q߶2vjL>x`-"{=9Af3GzUe6Z?Fq(HG.JȐ]QLv,0K3߷_ @H{VqV/o\W>.Zk˫o`%]wN9b">`q4Ui0s0{"0?MŹ:FqPK1?Ma@e .X?ěh-c0]}OƼs ZA__R1nb$%I/J2Eu3@OҷވVόt-ӣ9-*:?٫ pRh]})6kD@hM cQqBdsSYUQƖ*ƅX1~ T"?sqץ\ !I%|V^+M !)$7C_8 ]cY@c!{GrXx:f)e*±Nig[)$WQCH=S8}h}HDrj(UvR&xO+yA!n+XO!$FtBT) 6Xk%#o0E<7mc8\O$̬BX_/`3Y?&m.`3u"AjNNL$bUrI;%/wpFЖrg '6Q ɉK9pXN2=3Ƈ] LK4y9kvW#t һ#Wzva%a~xZ<3 2B%7ױsY~U!>MciQ5~U +aVBkDLC+]T;ꮢY鍬ҋPk#bn/a.Bih7XNC^i(Z=>%pj[_i(._"K %- +]|&ߢ׎1^N)Mʏl ӣ-BjyDY! "7z2@:g)Xry!YTpq$$9"/CijER4et4xP;]E$ws; d'啊x޳6ߜtA~7o7<ҳ{n2q#Q h!W_"*y)TDUUTGx: h0autst੹zC7LHyQiAU ~^BSg}t X\ym_jbڂ9d׽mH 3 Bm@;wl#0˧`X^WW< S0@BP35S.O,DRz]V`*σ,q fZ.yA*au]>`oOǛy60{C rk.ᬤ b=l)F5l(DQ\DO ^~uMZwVaV(nUhJ;x<]vMк#iIK7IُJX,AM'4l|o+6ѓkF/0>.=)ˋT|d?"|߳MK째f6uc$?%lLm79[=H.,oHU˃@d+O_.jddOљ.6\N~>۲qr"#|LAi/P9>utG&- oiF6B.I$LbϷݏ?$djBHĐY)"7LNf@۝*TDZ09)PgL3 yt R g  ^5!Wd;u|+Hy` ם0yC` \B\@Vjl[o+jPTĒ5L<H|gF~#6 7i(aXn;) | #̽t38Wd*KҖ&"<ͯ,ٕ+aP)k\tsi#Dr1Oz@je/#Cۺ{M$5 Lz ŷhN}I6ͳKqdmt {;jk $Vm+,'[0Y<1#ǀ$M= $mXUE~0Tc㌌}f]=~^N$n ¯-drN jvB};ca$4Ȼ)*-AXu9K@،{J0?T`7z8r$\RA4TY̟o ԭhtNLZX> :3XJ>fqێ66i~;>sD5U2r/rr jN?8kKA.#t}11οLЕ -,S&P[<<%U+NzTiFdB.[fY [l.bv7҂VDm0}f6̠ WJ_8RBCkF7 j!\;MbCqm۶rO?5Z̈́3>bM>y*)-:/hzrTU}2vʀ+ qͮJQ\Y28HwfIΞm4c-ډ+i+Vr¯yw!ep{yMQɁ m5p f7IXYXUyz]e.) QMfpL 4rRĥ~p.N8<h.yRƄ\2JCj}öp1uFw{̲ /|Y ҃^d}of Ì]|HHU+:QCBɚN+DQq-57봶0{AJqg{! #8Q=Hz^dF_KfG@H"Ww\ Q |4Q9up2hSZdD 9%?XZ 4e_e7>sIMO3Q*? N&.gFT 8ITNqwJs!' "o׼p27r`b!_ظkbdŞ[:NJKbr$57튈qS3Mfn*V:5[gk_X[< (Rn4"o҃]k@瀶@NgOl\ <-}LJBaͧq7xsנRz\^᫽>״ c%H+~^L|􇯖VY~: @EXϤp;UPxNA? ϪS%0k/# $]ۥ|[1 !\Y9;Yv-E^k@ZLg9^721~iP\1pZ-Y Y85>G?WGjڨ,td)<9Π[9: .@m&Pɫ55=寮\FpE9@6X_C`^=_RŠ VUhZsO0m,& S:2K\}WR鷜:v_b%KyZHxL,S-!P6^ SxL_^vUS.O_v/4,ƌÜP(z~4ûZZ8ekKku|̫1%oh=֖lXRK}cY¸|dֹdsܓ 0m8uƭ$sKIB=HM j<3c­sͪS-%!J }"(!Z'D KaM: "S!V>"~+n.~pF(Bw3 Wl!wEuV$'Ʉ%M 1⋳6U͐.5*ZഞN7 +%-/ i쀿YCajwDUƏRViRDЁO3ͣy7샔gn6>ݴhJLJa= X̽ˢqlEvWZ_)Lzyq}> B {  qp}n3;8qÞFՏ)\^".(;3/kآ4Q[|2uv߀$NY^W/ -gCM6W_ff:ȉ''niu5*?vIXsZYGK_4ʓz=pi1*2ɺ.UGoxs[T;O+X_,fy;-{7:{L8 u%elV"r={?Z' p+Ma4Ίn'bo;?[9h,*#Pw-ɽ\Q°.QX_c \Laj ^0ּT f-;' nrDsPVV?*R?5` );6nGZO\qbH8~\XAs?SOnbZ[m{bRg5ḾzxPqcҬVo\ \CF^r.r bh%ֆ\N"Hkʻ`+gwPw)J,6XtTv-w-ZPmiLT&rfбqFX}"X*7K;VcF,ſc k#%`Ωe6 K)š̭bIp#|qw`%n-XAoYNի 햄-I]oו3pT"x&&Mr?+Diuߡパ/ 8 _e2,y4_=? ]PQ=bYc )8'9:|H>:Rm߹r&%ZA˞\`ԕ^{Uh>q%,2LqZpx6#lh:`ĘS5#o[mGP0>Uack?12l$D:t7kv5x VR΄'Y/ sfnAovtQ?'6Ewl3q@z6ҩ]j?} V ō/[G+V4t(p() 0`ڞp$MEqY -t-,17'G1@iB*r +knm[u3Xx5eiGg~2ʃR"N#2BI?|dx |0b%q#UmÃIJ9Lfψ>\9of=TXEW<(}K dl 0 ^d1v( ER|Fgy "28 eރSl#=TAxk4,]>!QQjg =`J9cjĖ9\~?ȦxJ=G1 9YiC72oVx0Um l*hB~n.fR2Nh)ss MƘH]%='HAM.RE~ޞL[4Y˳~أuoEO|Պ'V*v|B_NDrޤ#jt&6vpLCh~b L*nM::4otbMӒ #wEj_BVB$HF݈ki9L+fXjamhX`2@rLJ|Eo Hu,LƱ.oz Z2dfkFog7XdHi9*{E?3zTsJ*UCܐ&uF6sPw ݍq֋ڬQPjm@b*_4jusWF>z.yج_i1w4V ښKes f뉙EQ^ҚI@INmm;كEsT m]30X=?MA UeQв{ט@+{%nd2V ')c= q'bVdfl61vZ k3k^r/?M6TgBKN q;.WJv %4 9f}ٻó?Kh 2+ A@~Ӆ ?fH|-Щ}=lă`@HUalD D{޼^G$)R7Hز$IˆlOgSF#jeZY>vp=_FMZ\PpwpT)3YSɳPIGKp\ M* ?J ~O"jф#LJ:+(T HȕX:z¦Q'%6'Iْm;*D{fq9 %+,ko1w&nxLJM?B5G0amhRR|%x t +*Z ֿ!TC -pwY}" Y0%z+ rU`\h(bzkt)'q1 ILOguIgLԟK7IU-/ /]CIgt0LtTԠ^neM3|ZO,L"0Kҍ^T5 σxrhc0環9إ'"f<60l6]In% kW]Tu$dSdAo& ))Ș_0Dz -Hdr\\JWH5I( )\2eB6<`l N: 5("%qt[ Kgp%5`)4'zp*u5KN 2Lm:ѽ$7K"ij>w*'Lŏ y~AJ݉;/V>-u )rD0[b׌d4q4ug;!*y6[Z4$p6+?dL@,C:E{|T+C"!pw|+Y{7yě%^F@2 Oة9EFMΩH ',05DȊlP8$~kbArkf ]zQNR42Ae|F$iG5.]b -- #"x֒:vR|sB>}R@iWp;+]4!#(a pU,zն4nET ;[fZfaҮUR"4WHBW!L32TiWӪ>ޒë-:&4 'TmѫΨAݗP_᰹KɍZ;UULZr̝nL\qrcF݈1I@\Ucv9׻R/\E?OөTU(o9S5JPK2aNG]ߗ65m<ՄgmR?P̒s1K)re sCJv(P%jL;c?mR62n:Gq^%͑o. Umk37ԩU48zszsD@eˢg.ۧRm Wl5< Y'KYiI lKY;nR"+ѿ__Wj6pxL͟YMaUO_o ͇֒Vu=)2Di8 %ڔ $B ~?؋?$ⓦ)tFcNss>sVא,*_^˜P:PgnC(Ѿ/IT:_\HG$m0mwT'FB+%W%qx M?%}Ԉ,aZ?nBETO@-g3F?4Ek5(h֒StJJDlD>-HEv.߇ =2h++sa@>rvZ N@Ҝ5L\-zͭKOp5? $U4S;D+Bn8ɝ o]F*=J 9V?na*U?Mq;Z$?6EWįU*!'.,LX@Jpw P"IP=ˤ7:|:-&ߧg~[vB!/PPulu57-; cb783iU*KڴE>CinC5@Dlȭt>`Q~g,8ԩxPKs)vݍfw DU' 0 (z˜c3cB{=b0#S4É*JLXMExh:z=opʅ@~S$ja4$ O}}[FvJkzZ1ֈ+=§j]}ᰨqK6A\l氐?4zLܳ1+;^@DЗlI$d}ͩS4lEh$颹ajҚ;ST,֦!ӺtՔW2$C@_G iuDm vn @I䦏^֒j5_=J+j>6L$n@|!^?m ܤ"M5[ϱ6vX\ 8CU^ҷ>ەڙT o%X Eߑv?5]R/RjkG b.L'<{7BGx(}kx-htEz^ ܅H\}Cɯv@Vo-yHI>wԢY%18H81K6Y6%7itkOUY|NeGtpuzmR#!,ia> o33j:RhJg [*iBt[-n^G ,;dXxOBqaB6+;u`P%26UK Iw6h8O.ξIMy0nd'O_߬ xcȆCO> xzTh{Vq*ΐfY(c5E:;5+q3,t ^=(6Y-h@QRܺ|@|](A^~ =^F;Tle`: yY8v5 Z?1*7*c K 럯 CMqW q\wO Z2ΗK5QhBVr@񾷉do|`c7.XWWAMiKOF9 (ݎ+߲ *j>}Y+K mT_ro7DnݪVKe<xY̙}$c\R9a,Qj<]9'IB%*"B*tabbU}lL}kIT`jdӟGӻhܚGDj)д({Z5!?Yq'&+8.:CA fDKE>},]X?>zIx Kݐi1?D\4E hƤIڥ 1^^'spE  KѼǗ "(| +*t ;l\sDl#Ĕ\dΓD݄BޛYZwWh<"y;i%}'v~k1&9{FpC{'y]I,Y\!u)EB8֝ApO\0XH(eJX䫶նߢ ZȄT$ټW5h8*,RyE{SE&T~uS p~ʤZ"۟~Nf&j3<0K<zV#Hy!r GpxJZkR+n- ϒP-aN UtM\ ¡:&Z\L(\Sg)ά4!nvyPݟE~!pѪn18x ΟBwU%ǑKɦ^} MNE5G8ޝCW~jKRɂ*Kl*6^?WmpT_I DEѵ:PIan#=օxB׆QmcQӤxf^$a͋oo0|/Ug?'T֪7^A1FW,~yCPjWp ԩ8(@:hthM십|݄˚4nd ֵ#YQWKdK|V`gkK1$M0B5U\t`а>7_Aj-,'>EpC&7-'C2U/IW|/?81\ 0Zp֭^:p_4G4m֗;xM`iȕO2o%@dʢm0:eFx짉'MY?}lHxi ޒax YXB*{1`=վ8η=&eiÏ\mmR2yC;}%W*4+3wIg>\=@0Mk.?ci nӮukA?dFf'A(~ jA\4VZ"tSÑGt+xgORJ]/Twn>m(n:eƅ\k>00fAK`> $o@ǀw)ۿY`>ƅdj OCPqO $O{vحt1NpyXqv֒kn.֦e[Wt ʥ GX' gqZ ӂԼZUFR2W 3&gAHꓤSrlT {wefo*znyƴ/kT>M.廲N(.J)p{?: || \؆x|s,)Xjm2^AaqWW\< &cזf@g*DxLة)4x<9lߎg$xQH7m|/ztd{y|YoԙC˄-Z6+̕z1 */UHᨆmҁdX%|d**<!&؁0IW<׎Kɼ턷n oNre\v'~7PYEб9D QBC;,OXM_=ьjnXWS@:~o- ~i9ɌO.j%ˈOc\UOŁ͘CZ ! Tt {6|S∡HAa*x ѝA= 9*qt᤭zB+ @rMtFĕp[+}]F%f6M W:QGiIޑ6{n+U~B۷2Im]`@G|-g/ (%:l^qQ/W{{ /+/<{u'}R= zbJp:eJ)p/npKiZO aM漛S]]Jaf(FNVuۚK)4gO[bE8z҂~ _e CDF}"4Z M|GFC/ǹ~Wn\]0eExV]dfMя3y>V)&բ3mi ~{ȬoUv 0Tv=4Nx ŀ]%+8Ype Vo>I, c -r{!k+0/ ιܟ2)bS^;4/,NdC@;E/NB|OuQPuM4sq>XW>0j 0qpci㉧ N}+WӢ)W917^c6Op^)Y"+؟ڂŏ8}5&] ˾jhBa^S6zxlvPPM筢3;Q"<ƶ8̝ 6,h]~DqQG4d3dQh>=89 9}K{+ehqtj-\=QEn A[d 0-ZS[|"CCPVMH9٥)na 9Q;V`d~[/cj{ؙخ{3ݹ'j~S ?#|U,+ CʝC=3|I1XƔw19ٕMxMK*s 7Ų/514V;nn!DQsezo5-6͢,  2VPe]r~j|@~7}ϙ0uvL&ؒ^,|7 J$1+{7'XLC%\]E2&/(*V.71NIc,Xl;"^4ʘ~FXm*5j)<9(a=ZFsiT{@ /0@ h&R}ω{J_4S >7RR ;ߚktzvCK_ݗ }M3DӀI a"#|A꡽ےgdⵞFV3G5MlSU J8FdGKC]Wa$w$FG]/)bzʂ 3v :i7OO<2QJӸfgm/,\dO1"2c¬V!NU~_IL""\mOcL@!RʇKӿIhVk6'q VТlAWHA;$5G{vypJ@J5򷥴CBxux˛[?$zc#M)_*~O%?IpǢQvMP>N ]S~Ydk5ϙ5 zsP82tn|;YcP/[[0.y%8|rPv4aiqg S,V} M+S)is`?p$Wf<^8iCο1kn FrXb8(1'zNƒSڭzAVfC }Bd>syZ &25+0Mܫ( `Rv~ [ 2/cHӸRO/2>܅WU2DԖ&eU@[<8BkMY/UɣNwA?, ~5)ep_Y$rsLf.EP"+x e?%gK5Jcp }(q]C!c BpEXJGk]$&\z1%] |z]LDu.օD|5A2-R1~)Umǵ)l5-> ;]YKRiU"嶰Z|1NeDEl"w aU ){9OG(8HW*Jf#L@O29^f'MAE . KDɼe-nD8X4{zѷ5nctITx<> dsŀo!\;x$m$ W.4H^Tt^#*tQzUݺbLSZ<_ZXRg b؟(k5reeIm8/oǨ՜_TG@Eő#TDCX9EI̽0 FOx6NqU$m`T w\C3] U\ya4c W0%OKfaޮFSTS8@b>Yi2Zl<7Ƃx$2h=1UҐqu0L.Yg_}4{o7rBu0>mڻOWR5fQ=];u Lvz%?845U 5J7voN ʻj1?RnFK)/bT=,ƾ@VLͦA$c2`~PI~HvvZ5Y!A\%>>j+%Yuj`(zus7ۖ$ÕQ-0 z2O:3x s'8̿ ҌNT]6&< T'حOg ;9O:ՃT$QAM8O,EyhayH|ao`Ru-$md;Mȱ8{b#,$*T⩁G@D7/Rx̍#OdA(H#V7R2"3Y7[a*N9ێYz8ێ? 2c>rH;{ֿAˢSM+u 71s[BBhmwGnH& / aUB `ӱ})UT%Q]U+Wbhf-(.A\JOҧ4][⨯ꨎx,om4p>=T H&{w+Ru 9`4`ͲM ATB/(app7H_[V#!AZ>pN;G `V卵ڋqZJ.Z[jC7^ hJS`1B0$by.+xʐI5y{[E[M@F]pXDz6EH.Sp(p\ɁD<Ss C7 0nD}G\6p'3eK|7;*y(;USSc#Ps*1 ٫-^R 5rNqmk}7ٲ։O$ ?m0ˊm8?0oo:uU[#D)ǎcY 2@`]Lcgxf z<"~݋4u束&;ky&]p?nQ3[WX,v-bpb* Ƒ8ԡг)0 h664\N{)}QhE(F'`N˄xM\xt#PƪJn'&Q/qv}WF{HW8R uWmx,lu:WvZcih(JZJF=Ir fSQ4YSiWG^i.r7L򞠾6CQ~$v2E 4Ȃ 3x#G58 2рP])"P%Xţ˧lK3W`c*u& d K#RU*7&d5ނғH@^a"vǵžں#2f"5THMu+fh0fyUGsPWD(xѹ7;/Xn~Dp6\գ81G mS5 `sX' O87&ےoSN,)A%svl¥B]]=[}Jj~>;wx P-Yw|wBa]@l91)-89vy#z3u$skAм:8G[󗢦ie=ִ1VϜ„' /^PJV/8?GʳlNS!%(h>Dd&|yel>h7Dm OA;e++>*:cvjCe̩k:?ljsR IC" _yʎϞQguhoڸ,0&`.?DQۘebSCiUѤ\5{Sw[ܝ :&14ޭt85GKaIb lͽJmdl(?߽ P~ȅtqA[i"D%G'A d]`*tO[$6X-k(4VIxra8ĺn2xӤ=]}Ϧ )7 FH6#gb@'J֭ڬc\tLߴZY.]SǔTq5O3Te?O6-^ފ0x.T޻ׄw*8/a\bz(PZżi]p# (y(i/QMLO-l= X7(kF08o D#InxƯUQSZም}y&P/vωlb]~s őK{-5r՟)C) np|;}p``3K}X>0g߾'>ӆ.2xǜ_<.(5ͦE B63\l?d]vw[/ZEƳC)>sWh|*퀱 :Jpx|H^iVdPU `j{kQ6&텆iD 48iZΧ8^Y]ύh^rV=o0ĐG3@1٤]+I&1O j.uKRX_XO8<6 sUrGxJ85j ^-2XV5MY!\wb3j'֪"`0@Zzz42E,>mN2sJȼ]>#XROS"];Yz(v#[̈́qqsO}1s}\B 1d[G8Leͳȸ&w^7(j1CQ73jGO2#!m*Ħt3ܴYOp mWG{֓N @N)TgX)AYύW #i:^rob楢8U<lܦ7Vt4:x Q2&p[iAiS׍FgBF{p٭^R X8wb;VӦs[Llr=[]p2Dm1}vadEb! 28ڨq'*QdgPPJI0Mo^~%O'LHz"3 9 D(ӋrܧtW>RݿS)b2Y1U"p"5Ǔ%Ǚ{\ۺpD*T4;״:.:Ϫ/,$Ghr :(xhRQ~9%ՙT0-\$AOoۆ3K, ͖[zK_Z0r@*VMq qrxhcz[;FɮTM&N8]k%P.-ul"zyS[C;d<N۸$Ʈ$c4ۊ?>7Y5GmPAb\1S'/ÕM= &ӊj|&ўr=}1U===G_-yH'z@1iwYeDAt:xa&֭Ů nOme'N)x<'<-ꍞ]N5( g fqiD+$bq315~9(CY4Eh]1U[(u!~Hރݶ@tCOvy#YBD6`11gK}m ZNM <pq_A^/GXJ<]|m`5}נD4".:e`b!ڛOЯ6+:ܘ]xÔGl4}ϩ3t.I&XYᓆ\A$7GO!!jFwh_yTpN>F=P8dL~ >zϻS%:\[`޺*,{1;6 2/c%?b =X7l ջ0u6KFscN3eU)U궭HR(]CSU}bUvy%rG !4?(i) |N,}c]w>ff2gfYK@E_>OHr]DSg[K\2ujf`>se,Y`4Wt[õ g5dDӌ3b %S{[a֦HǸC9y5sf֜tXXQ/mE' */3 :- |Th%RBL5˘yOs`ܑf0Hޖ7ݙO~|GE6,Z#Uo>dsDO1I # "Y_=HTY_mtI)l{͏-igiBE}Q4‘ö}FCKu/QB::pkjupԔEJ,Upɷ?DpDSoԂjr-銣g6?zw?BX`A)!g,)y6^|QXMHUN#hO6&* H'[ l D es͋xҾ]blo>m cYXI-|S`e_+3^Igֆ^F70tŲ*UQ]!9 /XTTJZnw)}Rp>AHljt TR ^`Z(AIXsT¢f+h?̘3h#1~}ޯu`SٽȹY]*}|76)n(͎t3ZY2Ol9Va G9+]G?_YGa!l %5w= vNbٲ6 S[6P7'v 9H{C:[`Le("Ǻ;DLAX.,AefF? uyfE#&e>F,]xx}1`IJɪgs]('2(9􉲟:,0h\3p1͎J^f"d-o{};x4IU϶g6}]yDþdW,/%9<Hs_X^04Z裉Z㯣,#sv}ɳ uI6 }uQhtc4Ms@k'jڅePrBh wVF@^޿ KSGҜmRŹ HV -(wS!(4Cj;KL|>-pna|J32۩G1{5B37 z'%mtΥ\9g7pcJ{[Qv;NIrbp[X`L{usPy/ ư7sRpN2rh\p>ǽHZ}}$~ptNGNȏt%*"J?PW헀`6< laܝ4഍(=X c E?Gn?yoGiu_<٥E˗FBe ZO*W=$0վ?G!h᝚+Ua."`B 7^ՃoczIpBoG,IT*tm ] U{AIhgY#a m[v4Ch ۥbG :%.<ͱ 1"^(0VpX &χ:/<>*>0o3ytZ= m6KabUӡ,yS'(4@H #"@nOs&\AiQ"1,tΰ"FW>pe{#؂V-% [@gxI M@$VԶQ$[1Bgޅ*g*1Go(crBy %ʂk4Pi5>'O,QtOkcrka=*0uϨzHHo;Rc g 6}X#0 NELM=ȷ@ot&{f1va6 b\I |4m NoEMse< wMlqBw SUohm'0fy9O -X,w"pn,kGw::ekbbSXJ^F Bdr8WHلpjP ]MzBdrs sG'YgW[ZF$OIOu:$!YRb`g![Q䲅zA-B?y-hI` !:e_";+v|,č/(/>I;?#ґ& 2T[g S 绸?I\>)>;淕,20q:`lhTw)Lv;Hpن2'Zyz-?IKWCD8_m"\Π)xk̳;(8 6_Ϲ8Zdk16U3fFgpQɚLf1?udYIؕQŸ``06,zgd/X>imۘcLlmۼVDyY6i T1dz2QبI[SwCƣˏ( ҾN@ڃ7NSDM![vJ }x ;Y,h߱AMH;*9'y- 1!?|VIwL+ 3=#f,i:21d)lS2; iS6uLNܯś:5,.G c H?oun9G&py>B(/<՝[zmeHI W_`-nZQ$q>tQI Q h0daa rp?XyϷ3dIp*YGc~3{ 1Nl֙!hK<֑gdۺx J~wX++.GG 7X>2w91?2eT Ã;οpcϨރta0]OsԢTQ1|CC(PA7{x7sK. R)SwV‡cVN8t=ITܧV-mAB-RfkvpVEޟ Q@r\ki֞vztRJsmVF [|Y {@'ΐ ^ie{Vܳqw/@ 0vu0L#[ ["bUr!=Fs~bO蕘rIPp qaLQK\?",* /njQvIw) @Tq'VOPysqׇRɧH0pn^w:L%DX.XsIZ &&Q"|M԰Lb"M%Xz{nEށmء&܆UQ9̟FS2C43P_/*՝_U&but5A"@P+; ʄ-;y^_CIE5R=:ۏ'Xcdžuu4g3QFڄ0iUq:k|Lwk]0P~t\` PįZA^tLk-^Vs\ۗDN C<ЅhyWij\Ϋ3"5 㙚W2(XAK(qxTRNߎ?+ܒΠNf4nLDL"qj3(pG0/{җNZ$P'͘[?C=r=< Vٸ7\5G LA)4863F.Z,'cj_"mOiIwԠ2/{lU'{BF`|9vr̞S2 B@@b6uAB.մ2ҠMԋ :@_wj'*`_,p<<:6"@\ܞc&a|d3Jf-[|a{yAٲz:٘D, ?AGR=k1'jTe\GeCHY먇$Gr0Qnv%FT!r0 cgwFrAZ* @ڻF3c.n,`MX vta!MDgte4.ؠˈ|QH3EƄɰyY?Ew]{\X\Er|m3$NJϧrJk#E cl2p(Jbg/A)FT _!ᣭz6}N}=u}ȎS.>rvS6見b A-8ˆco8~ n깤 !\ Ui-5y'z2NE()Dk:CP`^ a{?<5ԾnΫ"=?Y0v.cz;cR*Tp;4+hKi?) n$hDÎ2̚; bϴt +01eVP o#-ʔտJgrRO6dt0]q8QpH7ϦK9D0-Wz:ʯ|P3]oJorI4Sa[>puG qC46#118n',̈́3"X2ǚTfS&ύuxή4ҖdЪwB/ م$ӤXTZ7Sz6$'!wE.0ߏ.٭J7|%O3͸İyX|[_ ϧr(Z¸-0Cw-lzޝnt%?qEhCr ׏wyX}3'=vYk&i/<+9rQw߱0*ejuiF:VЪZ˺Ōɩ٩X);.u8N]]$ BQ+xiMr0~8Xvg/)ɷ?W*,#ˌ#[ ܕUZ,V&4})z9 m,"='g7]6`l-U 0ԛrI dJ:UdF?^ϔYD9дc% ^?~IfBDC p΂y}s8wK4p/xGq[j\ۼ;D 5,PH#jf =e: D,QW>#q0q-_ͅWnݨU-K&b~}teDženYP&>Eݤ,2F4jFYN?e2jcx3S}fZ=hu:w˴I4OsYN3ms8$BLS;\7-8dha. yw%:\lʫ|$ eSR2a@yJaPiQW>s9y%?D-_/%{n- F~,CF"74Z akJސ 83cܺlu[o.Rzn:>82{Xwi!6\TTXoDТ}fWo^JT[7f *i^B]L)M,C֞gg\MӄDqAf$M'ґ,\|1x@Uvl?^C{AU@i!zK..V\ XQeL^f_XU718M~Nݹ~wjʃjl(6qC#g&a=L-n *?H"؟/=(ؓv:mztyމxaMx2C>:kXAGŮ&qdÄu(D |'W\|R"}}.5NN4+M-aČO8š[zFYAO< 9$S\]!Hs%<-aZ,l4Qa|=:ۡ-sUnkojmWGzFE hYo|!3@K{xEB}"Ϫfq" Q}Hm. S9hxe Kx *Z~n1(?';(, $\0Rev|-FᮙTsK>Yjapx¶媶t4`;[k6ȣNh`y2NX4X&)8o)s{[!mw2{'7C+17R.A&Iģv K$Os%8O7 C,b3 % F$oᱢnѤɷOz^%Yyl' ƙlx3u8Fa,Oǀiۡܿe.usr숱xo%h>&,晚pзOz:$z+#mauAoN7O'8xZvyyqZN=L%81յ N#liT[z# gCOZ{U܎ߔJP4T4<%#ʖAy8?1qW36/(RFk@d \:5b0Te Ox?9p Ɨw|6m qYJs']-G:-d3XnXт/e.—tL;~1b'Y)X>%سX]|+*+I]8- :Yb]vG]2MhWL=}mB 9? }+mF ? ?ϩ y @DǫEwS_zHf{)$ŽigҬ$?8-*dN%s&[a f=sI0*迥s WXDXb޸)Y}NRĝbzm? 0ïżdr*' U~LPi G)j¼+Y&%@'b}zS^~{+۱+g _ai4ѽA\w @ *ʰoD$n&t"ut,$L5 u_*_cV`u24 qD4-C9㦁>kر"MgšLFlX0h23=C`}zZHsǬ'81-tk?9h7&Qu0QA^䖮FmS&)M^&"[4딴7)RdgC퉀Rw6;é#??~C-r-oztNƸkԑ᩸ɟJ"wSǹC&C)K I,`)[;ūXpq2xmQ1i0֔!qBS֫̕9>[yAf ,hd^ 7DV omKeaĞ[Hu,߆ϑ|V&}ɯJ'a[l2UFQ?kߌt6z,vz5SA¡/|`&DIZEĮvr3~ V3CcQwuqvG!du7#l-e4)֪~鉣 Z's> tIǏ_ٯVU[z[[ ;IǾ) }wUo#F:+e-ceW?AUX?%<+2[ Kb 2O튤G7 yȓ!8 ] *:Yrm{ Bkq?$Y[Dml,1`tl]iZD;tVʍ42Dk8)/dEnGw|H Q."Y-s$< , n&-`f'ț(Zڂ;0\ CS5 tj3Bߖ(,U\y(W`YGJe=m4A!CjnOKX'Ag7o)%AO玾4YpX*k0z蟒Wz@{v/);^\8Y9N\wIErqFiMW5@rz]f`9Cɋͯz?ZͥT9]}n%փ+x{{csƖʡNJ?GU*qN|hAseLK?iF%Ӡ2M*?@'*L08kiͳ9æ:U>T&9nxؾ^o6LR='7DjF7n8hFJniw8Fdbʚgk2VF I/en: cǵчZ}C?I[3!*ePF Ɖۋ\}a8؞}qr}#ŧ>(;n,u  R_5?![>&?*UXZrC$ dnB8L R5d@"], N ɥ,JVg?Ƥ7oa LCKȶP+6W\Rq՘fv zEz|\XT`% 4OLcnXFyV=)2?hS(g ;c,Y2閽/Iq= &1-wW1aaFl$,X nw\QwSR {=+Ϊ7K.uLȐKw\?/B0!Or*>$ѩ0^1lXP .Tl+dvFUW?QodUOxӆeD kHf)x S^y0Q7E\CB %}ޠ剷@trZ>:PeW=4\* oˢ`PƎ{2e4zyj bøNWLƚ)+"ID-XZ!}س(oW$FvSD?PrrU?<9g^F㯡m'=u.^u}.LitMK7 !l 'ta ^/؞o9 # yv,O-4dT[LGB$|cbrꝛi&g+.m~K{#wOUR ЦEIm>|ǥ$3 x ID- G"+ ovr=m2:HU:mעqT$Ŝ[ KWƢChR!g*/ W{`< ͆|KYvxņ1e\էMr=չΚ\xco|JsjsDGZ|ehR7X^:IfS=47EZ˶I 5/ʌ?ou[$+tyփNTqQ"[!u2P4@ d~ Ƥ]:rNk u &ʍl##e36/!_Kq yU*pjhXc5x(E%T.EGpϻbc,ə 5Y.Q87 Ltzg (,&~i7l1jȞp9$"WeäC{^Bϲ ws]l-|&M;YSn/b<놸Gl#0IjЪ/ibC>JcNED7 Yy^ek\;PI9QRX|ay{ImbB8T#"KfxQ]P;@t~ŐQ5)IFoPn/.su7BA}(}]2HQpկCÈ.Vs ߰&;6 onA)&^K0 y) s|I>}]yS$d]$h=&l2ÜL4%śXm@W`bgod(F+vN[ +y[X,,(P-GMD2YCi|UN =2E[N s)K(Rs6œ8uIRyhJCm2YF[sɴ$J{`ߊ ;y|Xq+)T2^kWIUŮ _]1JOe(01$u8)oaK|G4Fd gؿ*$-Wtyg"O )` 䃴RCRÝa9S%Zl} ;@+U1RafEKG]bZ_> C8G+1Gncu_zB Wr}<{iRq❛7נ\`$Ųo 1'08rvEEzSXḟ. :@cpmv1 ]?WR9x N'\ʻ( lJ4,_>0z9e"m6X9 H[+^~[آllf( C_m01?,TDZdg\}ΚQhygvh<qcT R1ʾ D-(apO]nQ26-xrqL}= NBdR;[f=0ZaآݦͰ=v60Fq"KfkO6N39xRFi p+Qў z1@.'z.)=|03i%Q }`_d.=iN [ڀѓLHO-^/}cE ?:g|@v'of7E;Gj?uIr%5ӵp |Ҝ uIzh^ j"-o4p (ͥT5f}3 -2S>*NxB՚oDjP&H61AD ǡF0Sm7;yP>_.$Fs&P b[+OJЌĠE3c.UO_3tb6t7 u17 ,6Ȅ"4k-6*g9d{O9H lrRY}SIgNK2D\sG ^rgR鄝g.@($㵇Z!xLMQn/e3]8>I,5J5K1l0b1N!UM9sIgxyKb ")M,Ici"SteMN GɑJɢ<4wUbƧd{bu=0I7L$tz&Hb'~[l'7$(b}J? }WM["cR(Ÿ+Qx]H޵tt_[f]㧎HNQ_TgU/1m'mmAfo|8ͫ$x߱D.c {|X>\D#u3)%tzaXHҸxw6453T& 5^yB`qt¶˞$6~ nZ;ʠ*%Y5,@Oѕlb(8the ح6?X['ԁa/CriA9i [o7(bjSGP3sDXU+&+~p4B\NW0ϼADެ]LB1/sPdm"ӟ ;pb4Jvs;g ȋV!溴|ѩdLR4^Sf)C`^3VMelP!Ò&(zrbwJ]M#O treGiM*=!0GXWim]l?qb$|+`ygXjm$ɢ+$P0HxzpU_{B svpyRGLzfZշ`H-*Z_p7ҕ|B(Ue5ЇCeRs|Cmf[Ff7%P j#)f}\\VD +t ؁ƘU3Moj)dWшLG-@>nN:F0JQTagʶVlPsG4vKRŪ^>XcM`1n';Qut9ޤ`!wLq6ۚ HDo-(ͨte4 %c&k>\ԲiN] @"DyJE`?̯%yA%18tWڱ"@Y؃ `&A)`7}P~EWdI7Üveݡ%T"\\ N) X?Yon(,.lcv|ˁ9;bd`S)0)Ի̓,F+ό$U4PJ^|0ufȁDjD {[%Lnɝ B˺3{\{fj{fX$3AU\N^FP 9bl/1FB;e7NF#+Ƽ3!c8i,k_фmbM"?oz<=\aƺQflA]&[4:Cy9,(ЪדkfrM%Y $!l׳}k%5b"M"񞐓aH$WKs@bah sz>|>$iy6НV v6Nn_vQqx/5/sĪgw}GڋTC(KISEGz5e3v{}Ӎ9 D*|PW܇D (ccR)\'SC^;QcIA Y}YDnkj5+ s4L;m%ȌkF護rQ)/A}d,\PlR,CTL~F$uŸ9f0 co)XdLX*XxǦecm|y 2U/CW* 90?;Ʀ%nQgw܄JK*g5px!΃ao:,nGh6^ I8^=+R7֗.DڠcԪי,&{@qGҕQ~Cv=-604;#rDbyW3s蛥Rp+>^RFA\ebpdyJ}Y"G:aes Ȝ}IbivU qT=%л/8tkiHT]Nz),Rӓ+- 纝@9mȞȏqߘpҼYح24gB hQ!&P߸PmGP4` '@OQh*fenL&TiE!|0qv,l@bʾeʹ[iS'{pB{h{uh; v x5q~{Uzە\/=' ٢ ȁj|YP|r>n$gE}21}6G]@|AʾV,wj'B{E )=kEwÂWȍD?j8G)_?UkqA~m1o{L]IDw[*Z6!9|!?J ʱ+gXo[H)$C5|N r/; _lx<*5a*^Uo&ے ˂:wv=&^E5Yqº؃g_cLd37|x:%Ŝʝ5oXVq80_-@јT(RJ,ϊSh7.8TG<_ 4-U 2iLt'g%J+2\񬌫8Bzz GcN"ӭߐۀl3|0TH(c2ݧ%7ʸW0md QP?U|{@*x8![z寖<0>&Ӹ~h1k8IC 9seWfX/+G[d`XV|SػuY<\wn'4NxlJ}(o!B֠#TO)>%<3+l UdT/&^,Sz<; sIaITn9-8^@D 񷅻zmFyh7*OC6ưz; UZ,jVjϫp;,yyUesu@|[ఒi@ bu.),0~rm^ʍ_#>Q[ZC?|Vʾă J'Y=\v,Ω7C>QvP;Jn GBB߬d:,~\e#XWmn( !5*[l흅izft^%OC  oە 7EVh# tJ6a]@ݓ1GClq, X`Ak2T{(Gݞx7_P]{EAE$*{X/Qz!\^!Kׂip İЁ"$n-Fv8@+XPrX53V&E[\Zgd)|bG<^ :Hvd+h&bmb}y8ah9i+9@ 3˱y(ScU5vP8;l? hgLQP"(<[Ξ\ʤumSz(g&ehI>v|u8/FRuL)D}5Ÿ-*Ps~gܹӏ7w_:&* Vhl\>* Z%WWniҤ=][&*< PvH FdlU)7^hBlnuΎA3?Ndh,\d ~厬$0Vί9n Uvʠ[ @ }r0-|>T35 |=4bm5YSFgj?4xT$J-7)#3|n!}ᔔը2 &+S߯]P(屝U:#9{Hp$Xk;fNMa0j>;4 ]dP_6*QL} $,z̀DuwLfDu@AMPi2tSl+_1O%YWʵkPmtCy+2Èu&޲|Yo0QW>fz'r)3-Бiyb{+6 уƪ>bReX濩,؉_?ZZEy*O,pAX2gx ~~葆xZۊ%z"*׮2YmѽD\C^AdžH6/9BqHtoVBPIE&^J)aufPbVuje͑Oh{9ϡEY:s7J|z*Ip0^UblAVy? }RO=Xm^6G,SS 3gR˓`6֧ !"\4ʝOB=c=55g]VĠDTk9c͏ }R<]9 >>ϾNOե_ rSc嶒CU)F8Wb*ℒ:|\Y i,#vlj- d` yEZRD\Xk?L>?a}8 \/X7ҌVwc Y9evf,"eA(O;"Z²*]T-1^AఴlҲ~P'pPý)ZhLlմ/UeB`A[r5d&=\xȼ:x@5ɠà 87—_ʊسVGIs8gLŘ2mƽ۳~[ݬCrio/L|5n8Q4YSSʎX#|l t1j? U擖ѧ81{#AS∂6:gmĩTf̎\3: NVji4A-x7iy(zK[n@%G0Q6S$7rUQ㊱7 ˟͞?1y1%XM@Q!H#ꓓgNp#]\ $4-cBZax8\1c+Oǥx <˦#:[~]Zaj#_uk*;xy"tb;*sas?@Gw^2dP, nR)'j"m_B+&`;{Hf!@_C+;=P:#:v4] e`0/J1@<1DI]̙UfV0\YwbdHAdi; [| ;+ ywǽv)w9CiFoX$51P*=Vd"M­rTjDutD)M5K&:q"3HCIlC ՙcZ"^1Jg{6BYU5Z4yȄ)%-aLT> {ik8k84ф܊. ;MO-b%v2f]Ō,99JYHRPQt HԐ.NrƎG ՐÑB~C;d',Bś*kg@ \/;XIlT&?)\K=@~ #WZQ7'hƥ6v$a7:l]ӗLDw ؊yվ6B3\楄`S}.!F:ٕȕO%8f1k1nzct|섭Ni> g1MOw<3fLGə 0^Xit /-0.ۼgؗNwwzqʦ(QlJ} |Uaecړ ͸&$ꔶ@" ,xNQ*}nw:gםQfd0Ey26Z'{B2so:F2% \ -5(t mvinkU.@rݼUZd2%z !ԔO) w0TFl<}{G'0==qCK6aZcn62V&F}+D̗!V.}y3 t>><eO  n%Lw qq?d+S@&}&t gALYRG0kBA BXrIþ )7&E|Oէ {|۪~E1{8sKJspQ>V=ok\-T_5xz3R;VQ S+kxb%&P{kvtR-UN-/h_G3]`{!̑^ YD$ފC7G' mLOkƨN]5%CK0.g[{ʔT80wYX3Lz~hX66 9!d#c2/e phíI:fۢeݿ(n-MK qr /[8ڴȉ`.jهyb*>|_I%l>vj50jPPFDS.@2lj?%Stq*!}jcl`z V_8i#7g5j _o]&<d@Kjb0 faCP%uPiZ4[AޗL~~nc8h :$V䜏F9(٭]^>3blϗt zO"8cjHܰmUs8\EV  $8Y s!%љ嵗o vnKdJɤ<-"`{S%}D#F7[|TڽfobˈMlo/Z-#J;=0{VVY&Ӌ[J Cp&+yא..OT#S¢>©^TD︛76Er3Gh.Iwa Uk+h*~58. i<&Gp.Zh- vs%%G={L l Ф`mf+W?;PY gkó?'# |9VOlmnRE9 k{f7 ꩕i\ob|ڣA*L8[V2^ш hnb޴D˃gGrͷ;n8~RIt58ϕDY_\tQ0'9K-BnXÇ#2I Aw91=s7Y@+&qH5 +r:L<.> 4UmMJ`hPI,Ci N9cKq?TOJ&l}/&j!/q=bq0.h!4 Q$$nZ1l.RmboL,vaT  N[Ŏ-$[fX2gP :g OQ76<)=བྷy d`ྀ^ f6H A1t)YyB3$pipe̐{ˮ>/i7 O#(x1eeQ>/mʵIlk>IN(Cћ|%!LuA eD/8"MhvcMS=υr1~3X^q@kM5cޭ^C_TnTYXK^OsIX#H*ը\ލ?p[ %ҡ#J:") aubq!:U79d!RTWah1f, 5LIF7D̓&ԍUַ9OV. bĠ1(XApy,rM~}`:$LPkQF~|yD&`<_k[L:rS,ިu<(3sKBz aKKuu$p( BV`Іq1ɉf:&wd 3>P\BNh P6!Qpoƶ dNUDp1T[4MQĶ&2 Ԗ *(Tl3R wFm;Y0 m ch;w-W onK]RS Gn;Xbu0ed4$6%p5F Q4ϣN! NvMkZJUͿJAOd Hj+&HH6* 55+"aتG8I!^ݘB*cᬒ #k>D|&ւ=XS/[YTs]ƪ<^ץԀ1ӗߺfx~42GMԾN$ñ4O! [.PxׯRz~K.98nHX}-8slI`Wc!$ "On)¬)7fc Q-kaqC?^7/{d%;GtPIGҲ:v6&[/mTP_x=`GA[()jtbEn!鍐 W>zV'ovP㭉r0$=> Q7WYoVSQAUXF.Ѣh]#]Д3>u~5caWFC‰m$S21bL{t  + +Nʩ@i"/˽q`Tzc,'3 hlK GBgD((3ȼb8 ao-6ӭܜ͸hod\QfsQ-GǸѫ 0v >2ԆvLʘFgZ,_NU |V9moUA5a nx>+L j}fp!UOaIM6 9ާ+WD8G*M5PȌUz!SՍ]7A,X׎>.z'h+xZuw8JgotR #$u 5`Mj1>0 el^{A4^3[,ǹL~ʻfuV u'9UH]=} ;ݤROHa!2A _:,݆ EѴN\.E7_(Pᬳ_aIZgH79^?fg]:ǧ 5'b֛dSX*s~l }-MSaÒͷ-7M }ϗoQ ~=4Dw}wfd H7Xohi?2d S'(Loii%"I}Ǵ? )N m_v'KO-OoakB+v+2VU$h Yk~ PҘ% Cs,]9<"[ E(S.wD1B0E׷}hv]zvMAc.W E+ǮEק:\ytУʄV~n%ҳv]H6jo#"/5R { gn_,5?Fy +/9Q)K4Y[AK,mlo!ʤH٨9 #E}'ׅs-ǥU2q?%D076\O c<`l.V߯f Q'6q'BmYm~p#2xr^hEKi2t Jl7(@!~zX/"z&HȓW|eKR0h>B6#/NiCR~XB0ep(JbO뛈y+&pu/ ,71JT?6@Ykt֬m(W[_S NǝTL,fOMH(nuL~5}:tS5s[]ݳ:p|G]2[mh($1r^"0S2W&$ ])r_\Qϟe娶sã JXU(:h0[fD0zuj^5=a:xX~|NF U;zMoEqoa܆(篭`t47 &뷑"2TNTiNev3uidzJ)l7'imD%'SjtkHȎ2Z)3E>Mow(_Mei}*GE.Oevya_^#>d HeՏ-^ f4"L]*ds1T}fR m9 v&d b(wO5T Ԃ(3PRbLHFW{o/\U[re,qR V}}DLIÒV l8SFuym: 0˽F6AXC" rSbO+(>KsELyNى$Ǝs"z}C;> 48om~i,pWVS:ƽo҄SE 2b?o*b+|j^Bt4&4DR9kElu<-MLZhvx\G <ɮүg_`0SIPLI[\ E:~M,MiYJ-At/P)KuЏiP+irN~yąQ{;lo{4P@ٝ{WqJᘝR bp.5Aggllo29}{ .{J#y4ОHN+AtvÇ852sh  6)$tDDAUTb%0v})\Ư!5#_-4(o&,қ9p{"e5rEEsQgeZ?UPfaoPDg4y)6۴߿ u g=uɸGE:lcqutZ&aH U~Z!AxN:Ƕѣrɒ&I ~- G E숋ӒA:3%w>df f)WjQZa%n_"/\^M)[9 2 *ٺĐAgEa߼Cm)o(_4ѷo44/6u3_A4ZN{ qϚFeֱf cńs?4K 6ub ~oj'Օ]Nm *7ᖅ`&(8# s"w>$d78;lT4:a-C!)ۿA9׾`Ը(?ޱgqq IҘLDQLM}>NЎ=` :%&b>BGU ֟ݓ` QaK_qI2%UJ:#lz.Tj;j1@=I,)@(~,P=3'GoD8v;ZqIm}Li68̣v "SL0j㭛[?FS;zs-3RA"܂$397j5mlOoS3LCi b;0#/{UdSWVGG"r$n~'BX׭IsQ+A± ҌpڦrOD dMPjTePQ1;I!3 jUV5= AJkŻuSYFrfl16$$zBk 9"|15օy-FᏆ9>4hgD~piLbHö- cn!!=an8l dU9Zȑk9n<\XC$]Ji! *nlR8 ml)k檰r(M8i>Nؓ`E7dm'Ɂ8hucq&>$D=Y'6mklE3ؗ\'*=rQg2pXjq3>;:&`(nXr}n-fq/0 Zo@8H*q <Dtg0u 56J9ev߼,;cPD ՗pPۊh]}:[>qh)Һ[lH.6on&eI('v%%Cڒi&n,[MV&^iF8K"p)RVj̜PZᗫ|-P3AƟKG$H!H#2uq OFn4x>ʏ8>Җ]cOE/ -{w;)ACBlZ)UjܽoEb?X5h큡0Ob)ҤבҲpI~t$bxa_ϥb=ͤ7͔ sx%M-._|i"*ars$(T2dn+H?B1<)LFk7+XKs/.r7qψbum.gOPL3ԆbZRK-7_<äK~˧Y]RF wevm$V&5M ݀ue]"Ǥ|l#R͸'ile> r"J6BUd.e^AoEo #\*}Z9De-q'S8{%"ˊuѿ٭X 1>95phj2 O(pήދ_^R8lJhcBLvqX9Ș&TRaNdÈ!jC{$Gp[ 7[S(#{KÃ̋Fxb;4S/>^yJH*]=;7x^`k7S4j4.ٓ-RMyE=8[} чG)8_KaH7O!-gIDcА/@;Sk@"4 Ua|ד(E뾽!K)ec0cL#)~59>E):(책0sv5O -$ny}GTА TIc`y p|XB0Bn@+E?S5+h9`$KË|*LWۮ5P /kPhat٣-AWgdMTBc$ A1UW"!d7,ϏL]1c_ss8Zǃ[l# YjDAYϻ n25pI+U3`S u ' .E]|L-Ny}.nGe-qs̋Т> ,9TnqS!kL'3n@b 2&ڣ Ib bw$J+@ k]hO+Sy.|.GUϬɭOQM+!v!*cO_$EP {꿻GuGA*K_-ADn&!q<ߋgyPWeeQ,:]ED5y+;=?Ly-^ FmMU/5I~s!,bi@N%qi2CY|Z 7j ~f'+!>VaR`cP󣶕m\3dMӾ&Tǫ|\L)ٝF9^cCth9LI;FV*>$Rr QJn =;2n4f\F焊q.1%fTkD;n2<(gF'Zs܍usavEkJHr#Jn  xeL"RP~ ( ְIv]ѵ f=tKzˊˍov3Pp3@hĢFS2pMlW` kx|[vjj@0$KYxTP`>TƋ^T4&Aݫh2XAV*,ԉ0G+jٷJfb/7.z?i9HS4i^*=mkSc!)Nu?YR^LuϤR=l6`H(0x[U 5piqSW^ n(x01uqzd7A }ci8yI4Ry\0)wwHnSt -]~=N^ސ#9'K).Ay 75yEJ;!_G18) >XiKQC XSU'kQsm%0iq% V,Gv{yLyw.CgƐ5WCŔxlyqK ֑؈f֣ wMONNg2p:~wPlqyqnc)%3sBT ٵj|+6QVFuź+ ++ }CFg5 \/db]%n! ˌٳ0Ɖ4nAw⦪qWDMk*xCvXyXRza]I8 {S#5@/5 <5a5})]p.w4Uͩc!m[Y{fM%xSkb%-JjAuЬV,%̰S;#:LA-.J`'xŴ,G+U=C 'c4`sP P²͑BF1OAw?sOV7(ڕ~}AՖťuRH2 U N)낿%+&hr2o^ʻhc:,U'GHlsQ֔X?{֨@Dbj%V- ݹ;2qi%g IaF**i܃'ow$UNPgulnXP6;ĬќCV7'T |rNFuWWBhBN[~Z-v;l{vJPNSpݏ".$þmCTU&6Y @ьD,HբhDzS@w=bÍQe𺨔B# MsiJ|ȩ7:E5@vť#v2J-VKF4s-zB ?w )CnݝK1?U B8z ^D \7'faJj!61$m2Z?S$_Φ9 x8vL ܱ'Uջ(`( 㵿bke3A9 H1}Dj鋷M Zx{ѣ$ṉcp+)h‚pr[ٮ'9CA0_[\Tq)n'fVƦfH^ v#D,7f/r< egK@.8M/!"m\; '~!|NmfP;ui.Bz?q֩ JS>hj<b0H[YeL guXaoO*[c|Pc ׁqx-yC/+y$7q l t [8k)1Y@;2lG$ABC[Y6FȄcKlAV#m4A>=}8 iL43cFRD6dϔh{CO恩)E?i85pI:PExc%MNEU&Hpϊbe>2 vn,8#0sM4@{b쑯ȺB TU` ^S"+|s;6=L UKqqL0IӸ491Wu}09*Tn >$Gk8ע<ҪyP}7xKivb@{Z#F$M+ (GpF83:gubI0yOvLuRފ =h0t>TȢQԪjS+YH zv+w0 @8,^*)ˌ`>7p>rTZg \9,{2GRG vZpPo{o|^2DY.cOCҡ{P"-4u2P  9*alj+MN" !tZgӭ6S*y'u%(!o:%~ێ$iD4_xh$SpMLfb|+=¹ Ϙ^"j@Z8ד9L?3]öJSƵk} uQ_=7ڊeIB#"}/ГЂH B]VDVg?@y֞i GCt[B]ޔr'HEtWtiݕ'g<ըn+jFFpӮtUuƵL0~5l`M`ְZ@εٰ|8/сH] OX8ዙ|##CKMMgxo3,Hó3j#ڼ:;|弝].tvh12,+;R_ Yԥ"!`ZxKOFև| Sn]ݢVs1bwZd#i}L(XŰ8B V-qWƮ8XŃ1yX;]f,s}OE?DD/]q_pU~W~0iB:];t_>ǵa#NS 7/Q!dfv`W#OcM_P0mz(zASRȯݾvʷ}x/H,wNzj^ lF@O}J4$K=/u\]ˈ D4M^K30qJ҉>܌wn:ga^XfJ,ǬQ\>@{yl#sE Hލb)-JdܹBe_zlt=֭F93g;H}J>[A6-\ 1֘w|$/:lA?Sn~;.zmv̤yc{qdؖc MdROWH9bNɂ}S7~yT'Ѻ!4|sGnĘc53cLV4nB fݫpEAۑJO9h=APGm+XﯯYApqPn +廃KQ]EErͫ}V A]b&`HwȾS]֥ "r{qQ{F~:~?F'z9Q@+ fNg6t%Ԧ0m|61[_"RP1KN#gdT}_}e\7m2c է8a; ;jl|' ,~s1yj> `Xf8\]*&<' {< ]c]6i &ILe(&Vyܞ,R1bCl/b< 1Jӈ\)(Qrz:A!F=2mzlRdwKܩxˤwqp30>$6M'{n<=%[EU&2sFw|֋\Q=01Y(2I#E>ۜW3dfbGPFƪԢ쑸FlxÚIVl7HH.}$Q0[9?zwX1!$Z!lZwZm &~sۘN+ ~;/"y@HuVzSscdm7w<@8ҏ2)~߷xׯf^,p W!:PG)<M2oN7b棂&1YGq:m!HuVZLhfQ10m&*YK'l#tGPk)a?-޵. jj7"4t0kX!oIq3^-+ H"C;r0wR`y&"^r'F赴;6ǜ B׹/Lkjɻ=Qe}5+5,C1lWyDq"&Z!?}J#o)YE2Iߴ-Ew V ^HF]a>7 +GiĿ-~ƽ8`5@IH xHBr {=R!C|& iEL`qZZSLV}<`wvv7(;7x:^ޚFv3` TZ=