python3-idle-3.6.15-150300.10.60.1<>,fp9|j-~)0%A '-((.G#7_(޲sr],3bjПz ^&.;XVmPgŘW(adl*ClVm]A I QإIFR<·ia|ӏ--i} ¨|@A?d % V48DHa $ h$ $ $ $ $ $$$„¬$<    (?8H9|:B`F`G`$Hi$Ir$Xt< Yt` Zt[t\t$]}L$^AbcZdeflu$vw$x$yҬztڄڈڎCpython3-idle3.6.15150300.10.60.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.fh02-armsrv14>SUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Unspecifiedhttps://www.python.org/linuxaarch64 * 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큤f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f @f @f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f @f @f @f @f @f @f @f @f @f f f f f @f @f @f @f @f @f @f @f @f @f f @f @f f @f @f @f @f f @f f f f @f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f @f fa2a2a2a2a2f f f f f f f f f f f f e75df0b77ff61253be457af636d5eb7c55a3ff2b6a733beea844d2b294972ebfd22eea091d1f8f7b11a320cedb5acd822469c0c7ad3629d1f50f6fde6194593dc263472e71b9b557264dd066c5f06ea76d0935d25b19b92e9ac7bc49de82f15763485c7ce263c2c8e1076c52d6044dc008a75794aefd670dd259e75b1288c343251aa57bcef1bc9567a229154ee1370395c03cc241fb814555731338d2b695aac7a0cc61079c6e2df53457e63b413e0389f2c0061eb55e80229da932c8f8dbd61abddb32c2275993c297df1b56ce5d8b34eda35f823dfc27577c2b18c26efcf8531067a78ad392f25631aba1d885f40786cf5f47854577162c9f90ff1f33164c7c98d566a13fd599d1c11a375f387fef69b6c595c4f18c5d88c188a860be0e55bfe9c9b62bf4a4b1cb8419282f78bc98f4cde453a0d6bbfce8a7b76177a1af94ae74eb8119aa88532734a84dd782830f8f5cb4dff01cfa4372b1e4afa35653134ad97f34e64abd93e1e32aff017ff8914e3204a76044f1486bc9fbefa07bfdbb26999728e6eefa83b486188a3af6900a464741307e7e4fbe4c6bb030eb765042963d5f8d5d1259e9874a263a6621ca6dd1d57608faa5f28f7d61f349583e07814a404d5bcb1109a33329f0e099fa8c07a8b02401da4e531bbc6de733a90e45aa37484901eb40eefa846308e1da3ff6f240ea98f769a2afc3cf4fdba00327ecbef9b54f0a6c4a21daea6f41263e8df267367f5b491094bea56179a9c3b4ebd65afc11c3d934f8de7d3285f616d0a9129f8113b158157501829c2e452101d067a49a59e2abf1840156e9db8f85a38822fd56ab79a139eb95ec86f1fba1bb87326bfcea17dee8413652327d3d1f7565ac6b32b392a5e424947ede2088e27600346909878665b07bcb76fb3222ea1b4947a553ad0af76fc12b31651d1707980791dca932fd307c4bdc223ae39165f413b2a530b2dbf6323e8a272865da6627535ea3c7d72d323257e4c4c095b611381fd9f336d80fa7ae9104e7b03d14a7df2d9ae9c89a3b513501ebace8e428aea68dce39d0af9f29196e08fc9ea49c99605e79e72fc5037f367472c50ae104f86df35c0d5967968e352d7ea2b944f5909326076bf88e0fb30fa0ab5d0dc3030442ed92713f34170336c4dd2623723dc34829df893f8058df4fec56eb20ff67ff84c86fd3d9697e2384c5a290ed696f6d3187aa45f8f55514d26791588de02fe685af0ab129174b32ab93efa39faf6140b6795d9d6bcc28bda67917490b6bfdaee41fe2f283feeedda5a7f3db5455e6f9531935b2f1832e012bd80b826aa4eaeb0f63e8d8b1a702e294ba7eb007d1b7b2decadf2b6bcc28bda67917490b6bfdaee41fe2f283feeedda5a7f3db5455e6f9531935b2d087019ca6ad65923ef10cff532ac51bbcf39feceddefe0047a4351092c4151f7218d3a3aeb29a35f8e3e964722f82470dd8e3074fc166c9d75d8cd9431b1adbd087019ca6ad65923ef10cff532ac51bbcf39feceddefe0047a4351092c4151f07827a30ec2e5bbb8316755c372bec521ec2a73fa6e3944a88b63ef64d674e893fbcc737995af464431f9ce346b9cd729d89df1e12adacd91c2241a31a13475807827a30ec2e5bbb8316755c372bec521ec2a73fa6e3944a88b63ef64d674e895ba1a67c32ec0f44183929fce22ff3a7f7aa06f5d7b546671a8d5178e3c35636f21c1dfc9a75a0918d043522e110aafca49e7106b47bd0218749d184f7bf58675ba1a67c32ec0f44183929fce22ff3a7f7aa06f5d7b546671a8d5178e3c3563639b5950a6db6d59285c65997118b48620b778846feaec6f6e7c33780c8665dcc7a35d919ae6f2c80d1c9a1b4dcd924b11685aefa9e43e6e9ccde9ae0d62055fab74e282e73e3b7dfbcefa7d5c2f297fbb82ecfd34d5a809f1b26d2cde1362048c82acb1c924c77eb3200fca32626ec6d0015b99c44155ce53757175764e3faf8196da95e1dc865223f8b46f3fdcae42a663aa1e40c674c9cb2f2b67445670757c82acb1c924c77eb3200fca32626ec6d0015b99c44155ce53757175764e3faf81bd30b3d46184d06669ef71ff70913352514b58792baa15660abecf267fde0e643405707ea1fbf968f704854762ed1c5ef0a5974c8b7424d8adc9e790dfe6ebf1bd30b3d46184d06669ef71ff70913352514b58792baa15660abecf267fde0e6bbef7cbbf7a89915f78709664cadb29ce5d9392c801f4511cc249cfb0085fa76186bd0bcce64b63740c63c0477ec4c75cb52ca94d7f0f86821f042b9dd8645c1bbef7cbbf7a89915f78709664cadb29ce5d9392c801f4511cc249cfb0085fa76e97fbeabbff5087337be5756e2008fd4847335b21f0278f99b76440155da9791606fcbfab11f4fcdaf7e1643bab93d89e050c1932e03f9ed9cd286dee43390ffe97fbeabbff5087337be5756e2008fd4847335b21f0278f99b76440155da9791fc22685e44ecff76e8cd639ece1e7cb045e8d6d0a50accfe27fb3e1f1bbc15984f95f43e1f75f89932fd01a557ce50821d19f509daff543d6b84ad7d755c2a77d782244061ee9305ee4fec1266f4d8acdd133332e4895e3b34a760f0b50b3a70a8fdd5ac0ac828bcded6c2de17b680d333423e1b61abae41158f98ab380ba8406265a44b63dbc104a6192de7737debb161a02f95ab690630d47d8c747af19b9ca8fdd5ac0ac828bcded6c2de17b680d333423e1b61abae41158f98ab380ba840ccb9c50a19a5b665ff7dbea479e07163bccdf27d379f54fa73bb193f9ccff8d50cdc1f07432b5ea4941e6aab06d9065b2a148b08ee7d0ecdde2c59c2344cecb9ccb9c50a19a5b665ff7dbea479e07163bccdf27d379f54fa73bb193f9ccff8d5ad4d51b6c0bbef311a4a26bced0df36f1cfeab8a10ed556ca9ff49f1dd5fa61ff671f002f9adb700c9ca2f3e140ee8170f539652ec95a3d0b77f5978c88812e3ad4d51b6c0bbef311a4a26bced0df36f1cfeab8a10ed556ca9ff49f1dd5fa61fb2c58c59ec83f94a53e8ccd3ab4629f81a6db93f8e77f8dd1dc76462d551eefb5463a5c69d242e4e448ef0906a1cf10135997c9be44e1fb142bacf2a56e0c51db2c58c59ec83f94a53e8ccd3ab4629f81a6db93f8e77f8dd1dc76462d551eefb4cf026ace8c6726491e6a4cca205773b03baa650ffd9869abcb1df40699f256621ac05057d0caa21b2c3f1572cb8a35a3114c2a0bd472d1820e2b99ae0eb1f404cf026ace8c6726491e6a4cca205773b03baa650ffd9869abcb1df40699f2566ea6f9021d511ac2c00bc40d22c87b5a57122a5e475c109e8e2ecadffc21df2a1c39232848455bc49dc4944396f3c77d17775b28d94af21c5bcc98c7f7987a021b06c2e27f8e67a9450548c94ee206373b58f11743855b4632b06da1b779f85912f0a6f1a89c72a95cb24dbc02c6a51317f76aba9cb96235bf72c9dfce2b480822f0a6f1a89c72a95cb24dbc02c6a51317f76aba9cb96235bf72c9dfce2b480822f0a6f1a89c72a95cb24dbc02c6a51317f76aba9cb96235bf72c9dfce2b48082b25099a1a45b82cda10482533813a5dcf2c1048a27f23345ded57ca878ddf462b25099a1a45b82cda10482533813a5dcf2c1048a27f23345ded57ca878ddf462b25099a1a45b82cda10482533813a5dcf2c1048a27f23345ded57ca878ddf46219585a4129ceff16d5a03285db90183d0e9d161cf24b95c5ea6f163093b9443afcd5828a5ca5d278627859f7df296dd7c279a46455e53916d5aa81b620105b6019585a4129ceff16d5a03285db90183d0e9d161cf24b95c5ea6f163093b9443a8966ec6f108b2f3d8bcbd399e20b74b1e8e0c43b8e282b001ce38c84e0802f093d4165075325e680ca34a89c8a9f4b8768e06ce9dcbe5660e521c0e6da7caa9a8966ec6f108b2f3d8bcbd399e20b74b1e8e0c43b8e282b001ce38c84e0802f09b9d65c597b55db84181872db84450c7d7e3d7221fee977330acf4d6e3e78e7fa6aca2d29d2c71bba3d062cb68590cd146c20b042b7042932ec891f6e9f36aa86a0c1619bbeeb457249547777d1f2f7a5a95ed5bbdc4ede64b0d6db5c7bc441eb9aab8734199367400d11023ab0834b77d082ea92edd948b1d7da06bf1e1349b5961ce0792191e40a580383b3eafcb5d8fb151496768b967d15b01d6cd9430895dc00b82f5adc0c967144ea5d7da51256bccda387de2d82fae5f67be4730f78262ea5d2ce044b7d98cc523ee614141d03a771da810a0eebbff421248ae836b07ff42b8464f71cb33e1c3399461ae55d99b80b1808a2ab4088623a26db207838dd2ea5d2ce044b7d98cc523ee614141d03a771da810a0eebbff421248ae836b07f63bcef49875cbbe093fefb7df9503a4db9afd85af6268867220f571d85508f5e3ba3a20313cd8252731d92188ce4fd26e90840e528610f293098584fafa0bcce63bcef49875cbbe093fefb7df9503a4db9afd85af6268867220f571d85508f5ee05f80cf39d589bad5519b3e21d5421d92d65befabc362bd8adedb2a0c6fae4812312683bfdea9c309d8fabc7846f84e649c5a5a09b38c4a8e7ef63b36cd5fa2e05f80cf39d589bad5519b3e21d5421d92d65befabc362bd8adedb2a0c6fae48a79a7991a23e4a05387e5285e9add6e58ff957ebeb41ca130f978f5c0b351e9584d4f6532a952488632ba8c0cab8e424bf15962f7d1dfe71eb9829fbe780986ca79a7991a23e4a05387e5285e9add6e58ff957ebeb41ca130f978f5c0b351e95fbd815b54f67f9c472057b88c65f6404b6f39570356359b4389ea0ba0dbefafd60ebffa4726a8b071d61c326dc684f3a40e0bc226a30f386e493733c7b3b4403fbd815b54f67f9c472057b88c65f6404b6f39570356359b4389ea0ba0dbefafda933bd7ef7232ab6c3525a6a3e1b0811d4ae5b20218725e30d368d4b9f3b1ce8a933bd7ef7232ab6c3525a6a3e1b0811d4ae5b20218725e30d368d4b9f3b1ce8a933bd7ef7232ab6c3525a6a3e1b0811d4ae5b20218725e30d368d4b9f3b1ce84b192659652b48976c1bc3758a36b5882cb5f5e6c6f8be95805bf288b110a1bbd565e0a660aa827ac8ce4937d167e92c202d7b019604370022aa3f33c203792a4b192659652b48976c1bc3758a36b5882cb5f5e6c6f8be95805bf288b110a1bbbfb4330ca1408dd08247cea7ccb49f480dff2c0505f3ccb58bdcc98eec060dee9d23fd6f5034aba9f3da2f7c019b665525d207cc480eb7e45341a887f6828f09bfb4330ca1408dd08247cea7ccb49f480dff2c0505f3ccb58bdcc98eec060dee3c3559c0052a7ff44304017e01dc1e6da55fe74e39003c0e4ec7497d9e9ca6f946c5d3180154f4f37d9ec628f44522f134886c6f9f339d04d6094ebaf45e088a3c3559c0052a7ff44304017e01dc1e6da55fe74e39003c0e4ec7497d9e9ca6f9ecb54afb21c4d8730d22a82a17332eb0abaaccf7e938a5e19694804ad1a49bbd4c51d49c4752849334acb3e882fa4d8e4aca6819328a3dee0fdb753b559e6edd370ebf92b426913006f18e88006c4e643ba6aa2cca7c46cb3f019dc3a7f80359b6c840cda8b30c4428f50b3de1de065616e1bd32afc7078d92dd4876e533fa7e5dd8764444567f34e306192be31819f95f9b344c5768af0a53adc1333749f9dab6c840cda8b30c4428f50b3de1de065616e1bd32afc7078d92dd4876e533fa7eadc729e7323adf7f964b89c4b6ac6c5a40016f66e83c65a00798691e48bbe29c2cbbeaade3674ba8a4ce88a1f7939c4a581a188f688b7223bb795d489e3c7168adc729e7323adf7f964b89c4b6ac6c5a40016f66e83c65a00798691e48bbe29cada0c4d4a6ccab40dfa8e656d627c5e02aee32bb68666ef1d666364a9adb32a346c7e335bd9b5ee1df38d1d69b7598cf9e8ddecc9015e9b73d491d18f9ca3926ada0c4d4a6ccab40dfa8e656d627c5e02aee32bb68666ef1d666364a9adb32a32f59ba97dc528d6003925ac3f6c757d1eb5a468ac93a5d140661d0d3c5cba254405a7efc3801c07a3dc688376b6a169b74e0272e40e17e0232714c960f8a4c6e2f59ba97dc528d6003925ac3f6c757d1eb5a468ac93a5d140661d0d3c5cba254d5e248b815ebd26aef6b3a1a00ea121759f9d203e8697572cb56c28d58ae3073d5e248b815ebd26aef6b3a1a00ea121759f9d203e8697572cb56c28d58ae3073ef8ee755fb535a1db9de56a2d5730e48d82aeb9846aecb36b557f78806cd94ccc8c546aba4ebb719bad293ef01b6b7a82b648965452ff5ec3eaf2fdc9912ff9bddee3fcdf81e3acfb3e9a2251670eb3b3b64e0e69bf6764e411b774694bf60dc469e6e380ac656fe808e79188abcce466c02bb304142021201ee5a3890cf7bd63daa4d9de408a8f427d886709b41e738a609286c8326ed569ad394a1b25c6523ce1c703e507fc1e96799ff5e13d07cbe9b7b73e80934c55beefd6493ac76be5b6cbfe1871ac3de5bf11a9dd1a8082b011677399a41d008df90b42cb1a9e20263e7aecc428d39cdb8060fcbd1765807a1776d824496222cc1a50b4964d6f01a77c390c010626dbccf8e2016faa13f4dc378f41b493d326b2e321a362937d400a0e7aecc428d39cdb8060fcbd1765807a1776d824496222cc1a50b4964d6f01a77a02797ba1c0a2a1627c919e550c27120a42601c6de57da3bd6bb913432f916465c6f2385ab241bb36817662afff9a6a5b4df42fd57d99ba958c04bfd4679ddc6a02797ba1c0a2a1627c919e550c27120a42601c6de57da3bd6bb913432f9164645c059499d5ec29f440364cfd921ddf2c24bcbdde1db0442f7f73b63a60f357b19558626d5272421b472b39063df26ddbf94241a61cb7113ec23a5629fa5517f45c059499d5ec29f440364cfd921ddf2c24bcbdde1db0442f7f73b63a60f357bc8436e2dc8c027458aee31fc597f608e68f3e682199cb0721268ee22e1529c19b0ad4240dc0d1cf5789cdcf52e525eeb58d852a06c4991fb829afacb3cc6e595b780c5b9d8725aa89204a9bc2a24effc359031fe12e905f5d696907c5b69b96905fb0f8382a2edd1a9d1689456c5819fbcc9b0a4cc1295c5d6914aaea1dd2f3931c6d4b2fffe3bcd788222dce36a085ea0443654bdfd40916db6b11aa9e6fdda05fb0f8382a2edd1a9d1689456c5819fbcc9b0a4cc1295c5d6914aaea1dd2f39e81c7d451f2578a36ee8d24550be804b8f48fe8ef760018749dc168a9e6fe4a46b7a7254b09ea9c697644c0323bab5db9fb1ec4aef04d5568a42cf35ef1f8adbbecbce3153cfa943667d8cbf4d3b8df25068dfd9c94774bfd81747fcdd68c2ae8a114d320716d3156a4eae75e85ac4a46d9924cc8c8e662dc74b175348a941e58e6fdfe510146e412c38c91d63c77f0eeb55429cdb5ab12989e690949fe390518a114d320716d3156a4eae75e85ac4a46d9924cc8c8e662dc74b175348a941e518bcb328f7348f1ce3e8a438c98be49bcceb51c1bf88c39ab75a8560b6f4185918bcb328f7348f1ce3e8a438c98be49bcceb51c1bf88c39ab75a8560b6f4185918bcb328f7348f1ce3e8a438c98be49bcceb51c1bf88c39ab75a8560b6f418594250cd070be1f78a77284d50c4ae521c74dd628a031da02ffb534986aeb17d52e17f7aaa0b12a0afd0fe6b3f027c1b99f0519fd121f895c83c09a060a80dc82e4250cd070be1f78a77284d50c4ae521c74dd628a031da02ffb534986aeb17d52ccf88f052855596ed0d6ca538cb563762579e961fc2f134e97162ac13abebcd859c982908b69aa2f0f414b0159aef53a13350999baa84a4107e8910c38348064ccf88f052855596ed0d6ca538cb563762579e961fc2f134e97162ac13abebcd8f103e42820b812c1f7169ae0edf8e3e6c7b3c3b91a34ad2d8cba349e2e9cdb9e0a286fc6375d25bea71c2a8ffc84eaa52b4f1cd1b595b8549b688ffbaacb13cdf103e42820b812c1f7169ae0edf8e3e6c7b3c3b91a34ad2d8cba349e2e9cdb9e9242827c7dc7de2e074e371033fa18c9e785d020ab801d39b9dc5ebe39663018f5ae3a17f3382d3c86f8ebb83bab6ca0538dea06463308387168837f6898bf6355d0b1fcee817789407e04f9166d2c944a76e9822284787de40117b44307e8e06e592cb8bdec31106e626fbdaadae1afd7bfd3e0ee7eba4be4286c55dd863cd36e592cb8bdec31106e626fbdaadae1afd7bfd3e0ee7eba4be4286c55dd863cd36e592cb8bdec31106e626fbdaadae1afd7bfd3e0ee7eba4be4286c55dd863cd3cf4a484d7bf111e29025ca9cc6006cc2b53c6a2249be064c92c6caf7f8f96025cf4a484d7bf111e29025ca9cc6006cc2b53c6a2249be064c92c6caf7f8f96025cf4a484d7bf111e29025ca9cc6006cc2b53c6a2249be064c92c6caf7f8f96025703b2369d59a5f9c42a53900a16ea65334e52d8586fd6d6afcac14a4c7bc21d04fe42199fb94dc6686317914ece2dc40eff540051f614120f13888ac55c6aff1703b2369d59a5f9c42a53900a16ea65334e52d8586fd6d6afcac14a4c7bc21d003ef6e6ed86afceebbbd97522098fffd513f7ff1bc853cd545b2c620f0284c8874322ffc8be5f6b7f278f5ec839f4c34e21db6c8d14c025bb66f55204df5396b03ef6e6ed86afceebbbd97522098fffd513f7ff1bc853cd545b2c620f0284c881e796cc081978afa29c7c15952141f63200c5d934732d1cd3efe0b28d96c263e5eac7db826fd2741e309c2635f4e592342244655639538eb29a498d99630c0821e796cc081978afa29c7c15952141f63200c5d934732d1cd3efe0b28d96c263ee1fff857bab29d32335b784b997b37e06b7d393d5d22c58af3970ef0ac0905b1e1fff857bab29d32335b784b997b37e06b7d393d5d22c58af3970ef0ac0905b1e1fff857bab29d32335b784b997b37e06b7d393d5d22c58af3970ef0ac0905b162bf354bb70272b662b58da2e3fc97ae9823feb6030e9581f0cb01336f847eee62bf354bb70272b662b58da2e3fc97ae9823feb6030e9581f0cb01336f847eee62bf354bb70272b662b58da2e3fc97ae9823feb6030e9581f0cb01336f847eee3a871a8a8ddfee27b3aca47d5df60a5ade1ee78e6138f7e330380fdabe4f97679114066e68660a12b7cf4d488d9e2aa6f540cddaa51ce5e0a9088c07e0043b943a871a8a8ddfee27b3aca47d5df60a5ade1ee78e6138f7e330380fdabe4f976744726dd37a0f0faeb5e932eee9637eca68fc42c9d5a506c721cb891e6d244ff1e8ccae6a238449081a3a06e706d3acdb96eb5d96957cfa383df61ccd340e4a9544726dd37a0f0faeb5e932eee9637eca68fc42c9d5a506c721cb891e6d244ff1e614f387dbdeb17760d9bb4cd50ae3091545f1285b9be0f5ad4b9a8c9eb930e96cabe6c0114a39fc378d91238279ed629b1a1ba65a3a9d792b4dc75b318c39137ffddac56236387d1143a42f07be881b625621be976faf3034b6f932fd79fe53c8eb28ef7addf5a664a7e3addfbfebe29040a8695e1db515828305aacba2ee4e28e8243b6a3f3fe92243ad474f808c12dffe608019627d48bc2e4d7b39185b455d580f5399568b375efe24fb7db6218d9264822dec25adec25c6d9640b854b65020cef86b5c31e96a3439d09252183f3eef21d4a103a4a909538bac3d0f1d4e4de42667bb690368459585dca6bffecaef498217ff74b9266cac74bb8af98e26730caf7524234fb85e08f01beb716e1a34aa233051fc0c3798a6b085aeac5b4663a7a35f40aa5d22c7fa74a889838f5c69631eaad0a9f4b70e6a439999d419630813aa76a1d93176dc33843b9e5bd4e6165886162d91b19e080e9c5adb30c05da1fb2a050c4e7c354b1434063e2a661edfe08852aa8a23a6f1621509832384856e9e38f992c807348eec7ddf175025ec6c149c20a7c2f597c99352caaa03e45577142ec668ee870cc3b09b7ced4a0592a9a2da5f7ccf8a314b1ed906fd7a30248db8add0abc885fc629c6746aca77cd40026b2dac8d7edb93f1fcf6ea9d28334f4e583b43fdf9bd4a731d70e074ee597aba03f3c8c36302bdc7e74650fb1fcc115c2cee869bed6e5169e410c4cebafab702449b8743c6614c0c90c85130b1ec7d1595e2034eaa93c2ca61854038e64197541906b3402c448b176e34a5af9b6b09b51f28a5d49a8a6775fad9bb944b47d65da733908b432b6cd0038ba99e7e3975ffecdbd3f9ba0d71c6e59984f8384817f0fe5b0ac69ba62e1e40a31faf596a6c26f690842feab34887e9863ee013180f93949b36cf3ac9643940968ddc1acb443ea7600c9cf97163c89799bff4dce3996f68fa6efccd4f66eb3867b754762f8cceb2fe1e3de8fad3c95d83407a829abcc028b8b02f85e4661c9c934129af1ea98ee037eff39bb5253b3bc2048ba149f43deec680fdb1f7dde421d9514ea3b32ba37b21cc6acb2a24ace550fc1a55852ed068fb2ecd13011ffa3ba5291b7346d0d8e97a030281647351ebbe56d9b72a581af69a9feeca7a8f5d09a9d3179963c0bd81f83b170583a900f3779f0cf8662ccd25479ffd2f063a6c4fde668a198ee015a3977f0d2c6a8e87db2ef7050ea10afb3a88b064bf5ef95439924e4246411433ffa2f718e123fd1c4e536bb4a471978515787ee9fbf7806a92073a787a733a26101d297127132c5e9634499f41ad00e125ea308343a20b278bee9e9225eb5cbfe6188362a0bc7db8b94c3dd313b97c83ad6d10b79451fd2a8a4bd773cd392b228f8efbf4c316bd701b09a72b084a08248e26a346c6a7636a142391a8b3e67496a68e07d4ebaf68654d854020c98e654a82a8a04d72c9342aec197a7d89480ed6d81940901c0f9c1e3aff4322ef232d883e76f2f7154e06474a79688dcda2b596a68e07d4ebaf68654d854020c98e654a82a8a04d72c9342aec197a7d89480e358bc525f8ac05061833ff77dabf4cf335b84b9fb9489dff2faf5328a13400ca4183cb409ccb677934f4ecb15599dbe793530e3a5b101850537e6f306ee25e33358bc525f8ac05061833ff77dabf4cf335b84b9fb9489dff2faf5328a13400ca04e9a3fdcfd13e4651cc04232b5b5872901f3c47af01342edaffc2de3bf91b486b8598d46212511eb440698caaf4fc09ab8822856d8d0c640dadf7c8c65e441f04e9a3fdcfd13e4651cc04232b5b5872901f3c47af01342edaffc2de3bf91b48ab6e9f796f7fe8dac36176ff55dab23695ed26cea30e9715efd9ff197ad7756e9f0ea6418ba8eca50f0d1a64b58c283b594e56f7e21c0f0d64b69c7e5a665cfcab6e9f796f7fe8dac36176ff55dab23695ed26cea30e9715efd9ff197ad7756e3754d84115fe4f76a8804e08f17a8e15df721e05dc1afc2333c99f022c5953a8bb6c781b96439451987fedc0839b8162e55223fc2b296c5309beb2ece3139cbc3754d84115fe4f76a8804e08f17a8e15df721e05dc1afc2333c99f022c5953a8e0755b2ffdac9efd572e0134a6138de4d8a0680557440cdbd6050c8ed61ad4bef48ccbfb50dc4aa319dfa3b5140a92e138aee4ecbc860f8972f0e4317de0e327e0755b2ffdac9efd572e0134a6138de4d8a0680557440cdbd6050c8ed61ad4be7438fd1cad8f6907550d19d29b1a1ca2d6a01c9688dec7faafc3b9f5651558604b1795a5c05a7d2ab7f641e208662ce7b810895c54e8f17e04a8726d605e56897438fd1cad8f6907550d19d29b1a1ca2d6a01c9688dec7faafc3b9f56515586075b1ea622de45567a887148bac3ce54b3933654ad5ee946e3c2412f587e9889c10e0fbcbfbee4b78416f36c81c381c171244fe90841d410c918a2a4036ae962375b1ea622de45567a887148bac3ce54b3933654ad5ee946e3c2412f587e9889cd35f5cfbc4605ee53bf5472940cd32f0910348fdca55572e8f61d28bee0928c516bc93c44c2bafb6837cb77abc9fdf6765c0af1bde82e95178f2e278bd1dfd94d35f5cfbc4605ee53bf5472940cd32f0910348fdca55572e8f61d28bee0928c57a8b0ecc25310eb46dfe77613245ea0196b8fb611d75771aa385d5eb53a58dad7065959abd094ce7076e5a7e82b7ee1098956dd9dd3937ffd62cf3f1348566c7afb00131740facbe6e928d48b46d72321be8b211c5e6dce8be843dbbd8d6a547abf5ac9f26ef7a8733a19f8f4f8a5a1c091c6393368aa909cf9723c943ead625d87130a6fcab51dae977d0975bb3c76effc2aa057d8e7a31c97ebe8bdfdbabf7abf5ac9f26ef7a8733a19f8f4f8a5a1c091c6393368aa909cf9723c943ead625fcd3eed003ac16bc578ad79bd1424fe483a94b27eedb5b113487a8a4f12c34af18345e1d1c7ee81cb18945e906c318f3e141477135e899be985f48df8e8b8f2bfcd3eed003ac16bc578ad79bd1424fe483a94b27eedb5b113487a8a4f12c34af221a0f29e9fff24937d5c3cd96ead369ecc3790ff135729a7620a235698a8aefe2752cf32759259c13a8712b743f201a50cdd87b7a5f797e27379083180fcf95221a0f29e9fff24937d5c3cd96ead369ecc3790ff135729a7620a235698a8aefc8e4a4ad36aec8ae407f459050055e7d08a3b001e830abda041c80d55e40d3d5e47cdd3eae52ee0ce84d767a435df98f9f3f5dea4e9688fecc4eb291e969343fc8e4a4ad36aec8ae407f459050055e7d08a3b001e830abda041c80d55e40d3d5da3d2031ddef84bb06927a33c689e1dd491445aee1adcba5305357f3d86ace535bfc3e923c89c5be79a82041a985f72a962f20be2dcb590c60aec9a5f952e30eda3d2031ddef84bb06927a33c689e1dd491445aee1adcba5305357f3d86ace533f6c85e2a86f763d9e2db8c2f1919959658cff361be7887494b25afc63ad3604aed29dd47d80a2e478398600b441d55b86ff43bf81efde37eafd3963774ae4753f6c85e2a86f763d9e2db8c2f1919959658cff361be7887494b25afc63ad36049e94f2af0e97f46786fbba6b71551af47e990d239ae43caf19c64e55fa035db4be8cf8955255822bfe601cdc118c091fadc3cc68f2ca63cc7864f7e3f9d2dbae9e94f2af0e97f46786fbba6b71551af47e990d239ae43caf19c64e55fa035db4d53b730f1ffd65cf3c3c24e3142bc9f0f8ff8fc8bb24a8c82ad171b6e6003c38b505aa3f8cbf3914fd0b9e8fcc3951d04946c1399ab00bef0ed1826b4da3f26dd53b730f1ffd65cf3c3c24e3142bc9f0f8ff8fc8bb24a8c82ad171b6e6003c38a33bbd63b44833d6f717f48afb194bf8d7dab87da55386630c190d84bfbed2c050e9b7018b39d108ffa257e5e46c6ba3b083ef093edd08b746a723c17f0ca2dea33bbd63b44833d6f717f48afb194bf8d7dab87da55386630c190d84bfbed2c09167c77c1267e63ed25d7eb3bce4ad32603e59072b25766bcb2d10f10410432aa11aab82eb6478d2c9151f85e593708caa5b72ae13d4d0dd5b8c296a8293714d9167c77c1267e63ed25d7eb3bce4ad32603e59072b25766bcb2d10f10410432a25f1a7c71f70d0b07c4cc75b3fe2bdc0658a839485c42283ef7cc51d93bd3b9c3fad25101c56efe6bb3fffe3b5086893ca2e700334eb37a487d8943d50366dad25f1a7c71f70d0b07c4cc75b3fe2bdc0658a839485c42283ef7cc51d93bd3b9c36b717be7d427c244befde83ff7aa33b8a7aa27c39834e7281d26cd758c22009de23a8177bd294a920f2778ff508bf86a9f85e8a616d892869d096f9ca70919a36b717be7d427c244befde83ff7aa33b8a7aa27c39834e7281d26cd758c220099c5ed31d5289e34896741aeca79ecd1e0c40aa52638e32ec59baf0dd4955c9d4451f89140eadd8e857b4510894ad1027c74db71fe5f10cec0764dad943059f689c5ed31d5289e34896741aeca79ecd1e0c40aa52638e32ec59baf0dd4955c9d4c567bd1d072c07294d0e7794e26db36c389883a8626ed69062ef5926a33876dcad2e069679a39df7dbc18f72ca62fca68b4678a583c868af4d9da6acbd0e9e5cc567bd1d072c07294d0e7794e26db36c389883a8626ed69062ef5926a33876dcf4e32a383c080d1271e6e2e03d1c6826444a90a61bbe9638d80077bb560d5b167e1798191bdb7d1d1567b56219da5623a9b2d62ede95e1a2cecb5d34437afcb4f4e32a383c080d1271e6e2e03d1c6826444a90a61bbe9638d80077bb560d5b1640b3dd202e86dc82da563e02dc223c3b2f89892a0f44c13853253fd4d1251015bf422d395801cffa7deb9dfaada19f586d1a8c2e7094a020b9f7b26782ef635240b3dd202e86dc82da563e02dc223c3b2f89892a0f44c13853253fd4d1251015c2663713d8d996d03a4bddab8227553828cbb119949e5c60286582fd2b93fb78e227874323de5172e56e915577d0546b281430b61cb354408080501c0c7afee7c2663713d8d996d03a4bddab8227553828cbb119949e5c60286582fd2b93fb7882dffe42383569d18a7d336ebb15fb025698cc830d987b7994ef59b98be2d29f65a2bd13799b4c9bc68b42670c60e693aec8b9bcb8dc98611e3710077063b4e582dffe42383569d18a7d336ebb15fb025698cc830d987b7994ef59b98be2d29f285f051eafd556b46d4a1ede1ad5ce2e6b6214a2a4b06dd24d413c6bc33277723fda8f64b747624f4726d51121ef0c4cdbf4553ba19cef129e5d1083ae09d3c8285f051eafd556b46d4a1ede1ad5ce2e6b6214a2a4b06dd24d413c6bc332777213639a7ffa221daed77076cd86d5cc351e4c45b0a24ad953998d1e496403fbdb27642fc35d95b75a681e87e6a17ed636620ffec469c4369290060e47ec46c34813639a7ffa221daed77076cd86d5cc351e4c45b0a24ad953998d1e496403fbdbddce2a22d80873be46bb384c64108c052bab13c39e37fdb6c5fc2650459ff489efd99dae00bdf97c6d22ca398cbbb54924c2b53489178407c8ab1350587ae337425cb76dfd8d522c518627c0273de03c961b3b24cad1babdef7d02dc0ccacc5ce8f9138084d3f3af4a44f1425fada3a73e3cf286c43b2d6dfacca8cfcc354cf01c24bbfa93a8e725792e71c871d02eef786c930f9a1b2fa0a47fe85c400dbc6fe8f9138084d3f3af4a44f1425fada3a73e3cf286c43b2d6dfacca8cfcc354cf073efe62f699cab1c92bb482120a1a7c9b32ee908ca660d826b70a07d7e7c7b27403f63bacf6dfe9ea49c42919500a748d89a47035c79d2e84d48c394c16252e573efe62f699cab1c92bb482120a1a7c9b32ee908ca660d826b70a07d7e7c7b27cdd6c866c37be86af62e079d742c81b1f8f8121b6d465bf7b14b241f452bfc087b951eff1cb8b09b1d9dd5ffc1771b563f39d1831d19c2dfb81b0b3acb324d9acdd6c866c37be86af62e079d742c81b1f8f8121b6d465bf7b14b241f452bfc0820e33961eb3bcb164d104b153c2ce6e32240bc12d06ccf797f3b04e7b2e6d389dbaa01855522479c13c6f54c5bd5c5faaac92e3cb24b2ebc5d2c3c8dd80d7bec20e33961eb3bcb164d104b153c2ce6e32240bc12d06ccf797f3b04e7b2e6d3890796462b6f2031aa81d016c151ec7d5ab671db272721e5227127d2609793bae6e17c9c10de3d252952f07c313048e0246ca81f679def4db9243e5fb40faad96b0796462b6f2031aa81d016c151ec7d5ab671db272721e5227127d2609793bae698427cd063bf1ab27bce5a86a58d8f44995d36349f1369105459676fb88588cd1b2c64348e10763b74b2884c2c10d03ba322092a8fe87e349fc369f4ee345d2d98427cd063bf1ab27bce5a86a58d8f44995d36349f1369105459676fb88588cd12cac8e3af69c2c3b586c664ec66836e4b0d9418f0989690df70e1cd7c7da146b44201871b75ada8de7614ff057644f483582588b3e85a0d87d750ade7ce4b0f12cac8e3af69c2c3b586c664ec66836e4b0d9418f0989690df70e1cd7c7da146cdde3d37c99b137ab30de2b5725bbfbeefc4cf0ab5987f23d32f479b0d16d5ea31a3211b824b198b57652e7f7ba5c7ea4d66b0ce29016b046b97567679c19235cdde3d37c99b137ab30de2b5725bbfbeefc4cf0ab5987f23d32f479b0d16d5eadf90c0a8fb9367bbd76401e72dfa4a975b455aad2e363fdb676972e8f3bf95d92f315cc7a0ce947bdabc6d97bfd7e638b5a30230d63abea2f005ab0c0e8e84e9df90c0a8fb9367bbd76401e72dfa4a975b455aad2e363fdb676972e8f3bf95d90898805f59676500f544dbfa831613c892b555ee94d9efb9dea1dc80f1185b8e34a87bbec7761899fe80fa22acdf00a76c92d9278428e15abcf4a32b85c539080898805f59676500f544dbfa831613c892b555ee94d9efb9dea1dc80f1185b8e1bd4af0a3ddd95e2d86f9a41823287b7ffd594e60b0ae72f1b2f5ae6ca07739a0e8d638440b588ae85f9bcdcc358cc54aebe81336baf5f26300864a9fd619b031bd4af0a3ddd95e2d86f9a41823287b7ffd594e60b0ae72f1b2f5ae6ca07739a31b80f28c158dfa0f069face3d52456675c72354dc680c0457933c49c4b206cb61140d58d658ec9871bac30ac7d346ea86e39be3593b04fd0da0c5590bc04a6331b80f28c158dfa0f069face3d52456675c72354dc680c0457933c49c4b206cbc860680c0bc16d8e991882c43d53fc7a2634746f8f452ec4eb5ed06457db71fe8e799d8daa2f1c184d96c719fbede4213b579a88a2a32ec53b4a9047dfb4d30bc860680c0bc16d8e991882c43d53fc7a2634746f8f452ec4eb5ed06457db71fed237a2445e0797a804c83a09afb6b85a113ababc67e4299c29d304b35d9aa60a7c772be4925d3a70751ba69a0ed42b176f2333292d92de89b90cecec28520acdd237a2445e0797a804c83a09afb6b85a113ababc67e4299c29d304b35d9aa60aa401d97dbb38eeef163daee909f11b05ad072e52e5aa119184205d361767cc87ce9d468d12e2f899967353155c429b94e699f017e60e47def03a75554d3d74f0a401d97dbb38eeef163daee909f11b05ad072e52e5aa119184205d361767cc877b5465b40fd3bd0654e103c2e13f6d48cc26895da61457b906f6169f4c3a4bf58d5706148e33dd1ba4c67e888161bce3effac052aaa7b6d25f7e3f70142875f07b5465b40fd3bd0654e103c2e13f6d48cc26895da61457b906f6169f4c3a4bf5356ea68bf52f44cdbb4157dbfdb968e5f255942c377d3d8092719fb48610cdeeeaae15c1504ed8e07bd3b288bda497be7621b242efb10d3e4a45d760929cff0b356ea68bf52f44cdbb4157dbfdb968e5f255942c377d3d8092719fb48610cdee7fbde7cfec6e60052eb77ae2db865bf61017992b5971aca5fe5deb59949f7a289d530fa3c23bdd0ce0fc098889a55784807fc9849b8f96811aec58237e20a3407fbde7cfec6e60052eb77ae2db865bf61017992b5971aca5fe5deb59949f7a2848ee04ed8ed5a36a4202952b5e85b5194e169d585fe14713523ddbffc1991a58ddb8686ddffe27caf0ddd47a23a0944284c9c7060665416e5776d32c8326a12748ee04ed8ed5a36a4202952b5e85b5194e169d585fe14713523ddbffc1991a5872b45c035676f412f0cc2493d79b217adab0963c9e627d0bcc52be404d13184c87223805b4a7b3eee6639371dd45cb9c65d376717f53cafa0e5bb3d9f28882b572b45c035676f412f0cc2493d79b217adab0963c9e627d0bcc52be404d13184c36b92b22f1e2f8e7c5dbe6370df0416556b3d571ab8cc4983f0d86c73439f40c1a28a7132ed2c826e980dbf16ea9555fca00fc4a5511b512f07f85e653ba89c536b92b22f1e2f8e7c5dbe6370df0416556b3d571ab8cc4983f0d86c73439f40c943ec928b39c11e6bb6a4ca846ba4361ef273bbd884682b63dda8d39bec393669da4d5ab1132347713d35127def57f457fad9cff2b65a92783fe6ebaaccad57c943ec928b39c11e6bb6a4ca846ba4361ef273bbd884682b63dda8d39bec393669e5de9b9e91fc320b9fb14ee3ff55e30e48b4082ddadd4a870684e577f484829d1dadae485f49351c60d797eb545347947f879817620e23b52dc2d02acbc545c9e5de9b9e91fc320b9fb14ee3ff55e30e48b4082ddadd4a870684e577f4848296ed75aac136035e849cb7dfe445357157c3fa36bd9ade9ac72733e3c6aad88ee033be75e98db70ac8ca934419dd41ac539a8fa20beaae2bf6e1196d9517863946ed75aac136035e849cb7dfe445357157c3fa36bd9ade9ac72733e3c6aad88ee9ff53a025704a3d75ba32b509d6086bed5c9b84ad11d3e915d51b3e5d241243e49d10735cd9aacaae438058faa67591f4ab5a1819657fe389eff73317130ecdf9ff53a025704a3d75ba32b509d6086bed5c9b84ad11d3e915d51b3e5d241243e21758d1fb22bb7571a91618806876eaa664a34e38634fde850ff09e643c4df0521758d1fb22bb7571a91618806876eaa664a34e38634fde850ff09e643c4df0521758d1fb22bb7571a91618806876eaa664a34e38634fde850ff09e643c4df05d3314de37092fba8cfae5bdf0298bee574d70fb08c41663660171c2412af01d01d698b0294a75ce44b0ed52652c81a1f08344843065576fe4e2beda60c1f3cfbd3314de37092fba8cfae5bdf0298bee574d70fb08c41663660171c2412af01d01a12703599576201f566927cb5e2fa9cab25642ce158e1aaaf80f99936fad0bb87f2ff381b96034b2e989b767af9af60349be3e8a72ba2eb09fa217d67ed598e1a12703599576201f566927cb5e2fa9cab25642ce158e1aaaf80f99936fad0bbbd1760a46609fc86c7563e10842a3533fbeb071f58c3a60f7519c4d00f72c1ec1ad5c17a35a2e5e45a81a4f9441ab104f85acf98e78b070b92f793c03d27c0debd1760a46609fc86c7563e10842a3533fbeb071f58c3a60f7519c4d00f72c1ec598b7be91cbfe4dc21f0be379e2e907648a3548179ceb20837b776eb0341a500ed2f675657af1dcf70a2ec1b01a6dd5ac5bbb6d2ca84e28ed8a06987a494238c598b7be91cbfe4dc21f0be379e2e907648a3548179ceb20837b776eb0341a500d58adb57fc4e4f7afa1ac890c6aaed8a69bd10fafd45a6b5e332ab86c94d4d363fb55362bab2407d63a8a8eba90758af17a175179f00f8fc36b74c609609d87dd58adb57fc4e4f7afa1ac890c6aaed8a69bd10fafd45a6b5e332ab86c94d4d366c9626928213003b3819ede11ab16488de0b6aeab7a87bb29ac5dd04d98832da87af5f553fe109977f01e43fe741bc350a15f3cad3fb5f2e09220744193d391f1e17e29c173171fcd763b2139b6629df2c0ce6792b057db2012edd3e0a49ea7743421286ad234a4240f8d4bc09f67bb58da0bf9d9b07bf93010989ef2c17f2f8cdae01f8da8411c2190dc4efae37e0496503a57445ea8b3d43a9e5fc50d74f7030ab335b5312af5ca57b26945c7297bec89f31e90d70e7c8cb0a2283599ab40f5d2d4ff90ab4bc9ef0903585d2fe7f4272263535af1dac98dd4a7a31b5f1759b78d40b3fbfcc67c431ad234b516d1825b17498a5dfc77ef1957d0fee36d311aa6df5742e1340743cc9932f3876bafe243e3053cd3a5f060935201708181666667462c048c689f82c3ae6b5782a18776762f88055b80ae77a92243b6c0606e004f00aea254728b67ce3b77880b3bff50b4fa66ba25ed71122d3453fa9319370783f4b14a1bc6adb09319e651fbd51cefbba97a2633e548c3c3a13c1a311377970e4e793bae777b06206a3e368053a2c94218cec72b03ff462aa22b09051c2dce20607730edb3911e3c72b8bcb0f11f27cd131cd54caa619c9afbb9f62a7f77c6dd3aa8c8a3bebaa05f55a03bbd904bda7adfdbc7b82443abd2b007e96c4fd35231881dcf94b0a44fe355f2acabfe25d8d67871402bbc19aaab37c6ff955575f1def57a0f52368c104b2a3b3551b3979751168b1ac42b7eafa1c8d5319bc95dc30e35a9f45b223d5c7e7f3bbfd8bc6495b1156c40b0ce3747ade0aed7b41aa23ac22d74368ba175175b9c14315f9d82fd7ddde60ae93d2e5572e9a647de7e869eb559d39df8c1ff38d177943f245b87f5379ee5ea93399fd6b5f7bfa882e6ed8caed3800137d48ffcf86ecb71afe5a24cd9ed381571f23036438ba8a97f502326a001464d2ef94de500cb053cd345164d696f7f84cf38fa522c77327ab04d32982d4cea5fdba68fb9e361541820d44eed003c317f4ef14bb9df3406b8d2c53ef7c73097d2c8187a17ae6a83ab6e2cf935a1309ada7dac041598e77bc618b0fa3e1e39288f4326136cadb4fab81fe31223187136bc3d9bdf65a9d67fd152e50a6e91d152088e94e1faa3df4b900cf2904458bbcc72045dd3d830c317fe2c9d9c1c66319fe7810ed91786b503de80701a291a4f9abe54c9e101c19c0917b709e62f3b8c48f3280ddc7156fd22f58360c617e25c8d145931a9aee74a2fa7c209779c2a2435bb75863215a3ecfdb268f52508ab001d6c52431ccb51595109ba013a4322ae5fde71364b4d201b1b691bfe21a91fe6c0257d6c1ca334b0f7898e8c69238c6a3d836f26771782f53685da5987a1bf57f41159e8a38352131656d07ae3dad883aff74861ca976307358c0ea3487fc783717abd5516059b9c5f88114141e684f24b52dbc02c8e59a971b1666cd0f41cf768c0837e8abe744a7f6a559ef9ede58e39e9bad047053a0dc5f27a31ff163452166c9db4ece043f7c77f985bbafa9e0ab7c528b32bc9b74d659dc4d5323e7b6d2d718d4eada7d0cc73efc350dff6da7d9c5085ff5c64232897f6ee0a09258a41a35f153f47ff0f3b8fa97ec67be9e133b134a46b23cf2c635be3116415fd388e3a1c1581bf1a77d7f7f0aff3a725bed01d8a3a88b85b65322b2256d3d90c746ee6194e0b46afd1b0c7a873ea24716a242e91b093b93210ab422d5c638d7a57feacbdd99357b3b0a90dbf5274570ce229553dd85ecb87d114bad1e615f4f9aa0c0cf01ebb5c2b116638eb78cbe4304517c1fe16da359e01f3cdfdf3f7aead4283e8b8e1107522b72f59d4c4f3ade4c5a90f03398bba5f1d3ebb705df137a81f0cc627dcea2cec72ee6d5610e734a231e2d997f442002389b3dadb47ed8134947c664a32ef637f43afdcbd1b5c1382339ae48e477969cee58822d528ae73bcb689154d92631f97b478006a7944600e510e8f647672359066df3ee2a8bf2fce14fa15037adc10d974719b9c3608cb1e44264a834dc230d397725f398d905d0746321d543c56644e5c89af59fe3fedb61a84ec601c8786daf0564e978c97c0e14095c23f9a08bb64950f9cb541b074b3ac0550b241c99a566f61929515ca97aedf99f73568df3dfe93078ed22cb54892b6c617c8e7122ae9b675af5389f5634b9b88643ad2752509f416aedfa2a81542bfcae1d871416a9bc216ad2ede3d418de48e8a8450f93de08256aa2388948ebc852eff97903ee737a4118785fa3f73759574d39d20591919577d9126cea7ba540483502cfbfce0ac87198cfd6d0ec7e5eec68834042ed949875730a35764c83ca0e9b262b9ad0046cbb0af1101a651fcb88cd1cba38e474b863abbb074b260a0296437194c674ad031297b060e590387062fa29455c2c7131ed9c7eaeb644db7bf504b395504eb46f2ab40b2587b84b971c4cdbb6001eacd1a452fef7db8d7c49ec7c2cfaecb92c5953ab48f1ac131615c7e9815671a743903aaabd4453a7d7f97d98e9ac69099676f38aba5a6cbc607f196bfd7b691554c4e3bbaea46b2c8fcdc5178b2dd77d794938fa52adce719d4948a92ba1a689068cec1fb6888d033e0ed1efc442b3fb93de89fb0988c73f8536fc5099afb761d2b69ec101c239c8c193336f2b6994f5aacca9689f32249db20a8dac36934314b7d5ba391d94169d63c66300aa47014a5c2dfc9bc0d6c3fb234dff4e4b60a6527d4cdfbb8c416f99df447acba7570e479457fec822f02dfbd78096641cbd6b6d997d18e82b8c31a01648a2be05a654a420c7b691d7a0ce7952c84b687d7387b271fcda7a8c956cbd0f58343f2bdbc30aed247a1aef9f2032e540101b46a674456967bf626b0d34a86f5f277f16699b17c3fd176c1b259959ed235bb9bb59d54731203c9c33c2e0e431729ea34280f0b51c476c951da31291f8f646630d56a7da6602a3365808a57c797bcaeb2076b6412093b234620aee37ce8be16100880af85ba6752e3652b2678b7ef122e13c385a135cbbbe8b1d87efeed43ddd3e0be9ddd8aa24b267b61fac42870d0bf5c92b0f2a5fe25ddf95729f6cba8a9ac48c7c0d1c2fdd7a7532586f2ea46be7d55a95c96f5bdffc7869acfea19c33c62a23ef9515d4f2f9e5b93b38b905b59664d1da4cfe90df4316370fd33e3a69f5b6371d1ade46bca444c14bab9284a21fcb75abf82243eb66fad0466b1d737cb51d6b957a8ec2acde3a01fbffc5a256f1b0189ee127902c0022ba8a8660b6b824801612ab1772a04800d886ea4361f9bd3a01148a0d6627692f4ef22f93361cd19e4e279510c45a522ef10ff6650daedef66d754b3202068593d714c7bfe09dcbf9e0525a59faa09b1a2b1de640cd57ac1182488554201e30bc180aa461a708bcdab3efcc019451b46351c61c2468ec9e4e0710e1441867b17a238159e89017ff6bc76b4d42d3e133d9e8809159423616094ef8df925afde07c0920da1882853184948c4a03aeb4dc99d50c363722fdf48c7c995feaf4c73b7b4c978d33747dcbdf14ae5654bfc807b15799c63fa694529bbf957aa2e3d3e66e624810c6ad7e81015f43eb4c41dd7ac5f2d77161f75c9163965d21b2df016c01202c56010e873a7353715e43429f763c89df40f8abd187ced93dc1209703237acc8e0413a9b1ef07775f45c18847d0a3d5987f13edc3287fa8beff020087d2614966840987f4a1e858d8b3051dc7a5afcb2a0f30edd1d05c1084a10bb4d2c563f089cc20fca49582f334d861cbbca4a01c94e81976926a667aa9936ec65cd80b2650d2f0f3434c2ee54f0be91939259add06ef7fd4488b992b184ebc4233ca856f1fcf817d4a0204dd34dc0833d46fa1839c862fafb8830eed0a417f1d8b60d047d8c958f624ea5649483077927067c93c23259048e90348fbdcca2b672271ee2a3759c5b73f34a0bc9b3764f83e3ab79f2182c1e277ef465907f0be250fe49a0897a708735972b6803cac22055ed760a861fce4036c6c8c30e4ae91de1da9ff290f44187d24df84aaca6995a3538fd8e6a126ae3096b743b854108908f25aedb8cd9c067cae60e41482d56af14cb8249cf8e5a96565c24986eb3e32bdd658c238b484e096fefe347488e1a22f9e99667cd0c288e6c9d2d33e969507af34a1634cec335e7c097c5421b441b9d84ae74c37c7da0d10ec55086e47ddb99c9922338a9e0b88b04511b4cd233c887159d82ba4ccf1978b1abddb32c2275993c297df1b56ce5d8b34eda35f823dfc27577c2b18c26efcf8c7d72d323257e4c4c095b611381fd9f336d80fa7ae9104e7b03d14a7df2d9ae92fc5037f367472c50ae104f86df35c0d5967968e352d7ea2b944f5909326076bf88e0fb30fa0ab5d0dc3030442ed92713f34170336c4dd2623723dc34829df89ffecdbd3f9ba0d71c6e59984f8384817f0fe5b0ac69ba62e1e40a31faf596a6c26999728e6eefa83b486188a3af6900a464741307e7e4fbe4c6bb030eb7650424a404d5bcb1109a33329f0e099fa8c07a8b02401da4e531bbc6de733a90e45aaf9b54f0a6c4a21daea6f41263e8df267367f5b491094bea56179a9c3b4ebd65a4fe845553b7ffbd7696ea3bf437851cbf73df723573d3b35ed7a699f9f4de8a2/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.60.1.src.rpmapplication()application(idle3.6.desktop)config(python3-idle)metainfo()metainfo(idle3.6.appdata.xml)mimehandler(text/x-python)python3-idlepython3-idlepython3-idle(aarch-64)@@@     /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.60.13.63.6.153.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3f @e؈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@suse.commcepl@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 bpo38361-syslog-no-slash-ident.patch (bsc#1222109, gh#python/cpython!16557) fixes syslog making default "ident" from sys.argv[0].- (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-idleh02-armsrv1 1712656064  !"#"%&%()(+,+./0121454787:;:=>?@A@CDCFGFIJILMLOPQRRRUUUXYX[\[^_`abcdedghgjkjmnmpqpsssvwvyzy|}|     ! #$#&'&)*),-,/0/232565898;<;>?>ABADEDGHGJKJMNMPQPSTSVWXYZY\]\_`_bcbefehihklknonqrqtutwxwz{z}~}      !"#$%3.6.15-150300.10.60.13.6.153.6.15-150300.10.60.13.6.15-150300.10.60.13.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:33304/SUSE_SLE-15-SP3_Update/787731e77fff0d06ceb8f755b517dd75-python3.SUSE_SLE-15-SP3_Updatedrpmxz5aarch64-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{|}~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRPPPPPNe"e 7utf-830fc73d79baa00d95a1089eaac84bf4594fe59669b7a2bcf1fb013ee929bd1ad?7zXZ !t/,]"k%f9%) `>'=<>vEKֽ:]49K`)Yg]&J_ L܍We&A vyqnS{bW4nI(0PX6]ŮM~U>+%mOEXKܐGOKEm պn-I){ %C֓*HI}v#^0snР.-Ss=Wd<믉i[ydj/)B-D5e>J#"=t&?\DCLK@"pvH793c@|uuM5Qx t.<\:MFkS N;;P:Piw ^MS'w J/11>rfIg_)CYnP ( XwJ)ft74zhbeR Q Aj$fYJflR/=_%9 X)5oPNp\YsT|0SׂN09缍%RG@NK 0N cSHƔ?o@O]O-¼SB pS߇Xo˼U\4YC-c{YK%0_CB#Oo6Ef*U[Is1ϫoԓc</B4PcY$Dd8MI@gIyQ簥^(4{7L!a%>PC2H[n+|v4Z!󞱑yV 596'te=-R\ByJ{S-[ Q]ju"dS| J1U+ ٭hwC6=ӼT'˨?"uN_S8 a𩴛i},:0LF+Jy" oUن9dZMrbj* iɬoyVŷX{htڪl~}T.%@qe}"zS][mM7/@=t<@DǗhS.> QւIWyWhҮO8Ȃ:RY1{#s7 նu6=b* ΅8,[xҚ0Y%)'uv jAٝ(D2n!e7DLvQ3Fcz, )~ŲKb=ϾAXoǟeg795|@x(1o?ldRU@Dt_@4dy2 $BSj)Z'{D:XV6JCKwX&PfDT!3|ͪ2t$oH҈fT0k̉BRM[/2rZM'jDuŹ%+ܙelI4 le+َp4+/c<Ӌ ^w,Ec@!E2 YI1X} x{~wfD|`EۿN|xY{ZO,Ƥ6s7Z nyd+E7 rNa,r^\ج9`utz7ltq YܐS©|^tw^!!E٤;ɸ% rjȴHQsZL6$&bT Vӵm1O86H?kD gT$NB[ 7҇,ycI¼t R^lj"Re`BQnmELbb6ˉ\7ߐjm,URd!=o8F ^Ӳܡ2L]Δ(ƟCqE"iu}܇(q:Wd"9 vM=+6<lsS|\lB$\&o'g\L+& ?mwE}/ V1Oq Gfj 4Z"0}'39a!BKBnx\w,*r!xQs*fZÚ{6tǢeIR4A-\&P!}_.VYk5bjʥO͒_A69+*j ޯĴN~g"8O~7ϸKKdVܚ>&!EF>VHQuC[Ym$`c\|}U J4mUӘ A7@ ;N_v*,j(`w~@ s(`fXوTڢ"opUFS#xƷ'v=L{5 D2&N4>^y:/Agnsv6/ŰhҨlD `aYr2~N5d%;/Aծ8 7,5iSD hŝjr3%6[1"nٱ M7x%bl_OP&LT:f-$4{X;abө]BjGuCwI8ji}ܿgb2B&N]|&c%]E.޿A?,5xBkʍ5.q[%%%7b@ROD0 *9E\İj!A&3q)tVrzb]kv~tAU M&xD^e;6 ,qKԍh{27uHvv2@!6pno[hB&ޟL?Ct,ct3JPI0Z^hlZo@qWQޫHm![ɪ:a\~tM!GCADIJNt&hv_ y\Yaut{[ mí>G mҵғ@5<=~.O9?xDgu?ܨo z/(mP^^¼ȫ~]+Ԛ'^XJi 2o5i^eUkb~UdzڒŵlwѮ3kpcGig i BQ1qeY"zK HY1 hBXW aa!zJ["I'/-/c0꣏t`^!'G0 '@'i"B->oI%w513$bg}ԈnC[_4CkpWc<@tDޥFD^"HҺn'ߟ[*q 9Zh)_;tul3etFsv2$VI5M&x7ņ"s@+pQH^KgbI7ө/JUnB. W]F0(;}%q@I5g O9 "V;8}2Kb4Si J3z _lC^3xpf6wk^Z=7AAcLU p7oꊙ_og;Cn6_ &ѷ} >Dg1'Tu[ˀ¤6S F7AO,r8XݰZm}jQ u]޹rR˳D`bTvHmy0>eb.1(`hb0AbS^xNmqn IvlV|.m}(s< |6(0GE8]G̽|o~%fda&hfqƙtA̐vc[3-4 ބN1pVZI+e)e2Y'YNdH–d6ANQy!wmEG CW˧Wxgcأt<lܯLذDզq։O.bwC;Q$PU<TRHoyt!CQ<ًItNXT:L裂fB#F6Zt%\E @ kfـR9ғt~о ݩ{Q”|X@.@U<מ/sAj SIx1ȸps}a[2(t"! 3ڼ>2s:d 8 +ՠ:Ccl~|VI`'Z&s_:tx#v2l%hRƸ6ki].a"C3طd7eR՞!$V.S9z IӲs,Uɕv *>DQe_ffweazE LW+{dX$g싉3 :=<Tɲ,dRllCbBI >[0P>h8Dm^[Wq_g h=˖^1?Qw0ψRS"39Ptз녉g~8fd=6ci㩮˓ypo V2vo~qbAc>XMRxCT&jgpNj^0bj'"긖DaoU6>| _g&:3izљc-}`Ss$` >=DE/f-7A39#R_ p1rI!̛1Y7\h %obTD~ISVZ] B r-;l 1b[hާrbƺQY؎x_م T *V+c3ƎT,vQz2`tBD҉+5͜$q+i+գ[;lhz_>i?8dޭiS!ca[~+'vu4˕[&^>vS%ko`oFB]2NLBg~- $xƚ}۾(<f|[Ʌ.BİI`c3| %y-Tsb ?9?0nbWq;[#m2Q9>h$Qp4?g*Ęp£}j%&bm*1[TӁJY5Bi_ |OńήZlE7vR1""XWhG$0JŵfAkIX'Yr_suA[aeC%Fe`;B丘Py|)F$h#XcQ|[dY!'"`3%~W%GoYPO0vFQkT,!EmJ_ If #@Ej@PEz$9-[v |.Fs)=I?ZIvqDEOmDǨ`*FԪ]c2b9Dڙ/u[H;[C+~Q$EĨH`^ί  ADuceۇ>+b#NqOwLsGN/Őkm*P]vsgKԾç \oGhA&DgWbWɯ(S/%ƅG\-GWRZ9R_(p}-ϰX[;5?Iy92Gi*~e]>;00̴2p<y5&k>U7Kmb'H8Pl ,*/JSlZ 0BVZ*PtՂc#,a}5~(j"* 4{$⍃%?p)nLPL8Vj ڟ1*b֌ss}٣M1&k:r2XNHJ)UNJ`E@/Grbھ qdK_ xW*35ɷ]\@ wrOeEB&%s3LE_2vjOxvGpwjHڪKQF@fg=]觿(^P ^bRW]\r7m;bݽH@EAFKFI<$K w:@8u $:A'P0J_o&b'eB!gEEɐW\A&Zy"C*jRfD5eDHh=e E3eq'gɑ*vdccZ X긃YHATHHRu:FM˂s ?&Yg ^4 RwE}S3@i*J'r(ĿH[;ńg[#k+]@޵#>@y:b*6`lR !&Yhr|dy+k fqU[]!#5x) F|V?*BKomfD;Os$\6X%Vž/™S<ġ} sYfCzq^9) 9>QAgL">{ `NJs2 LwSshVE< ̚,= @ wکqՐv s1w^DE VvGӝi4'c^O|àH!7_`cٵ7"4j9S@&_G6Tx%*l}wK6+~Qfa$Z͢ok_(KY9ͱ g""ce9>EpqPKsin0эٛ_/[â{)bO{{?w4:3լZ&JᦛlL5)s9ΜDo3Y:(20}䫼Ro{~2G=TO} \Ad$NHPPL#6<9^\ Eϖ  >sK^۝BbivUA˹b2,gdgF%hc &yn=7FLm֧,H0mob=>,4E1yZ%k<4яA?2O.kl /[PSn٧R5ɟ_E4g^YNk”9ń-Q2r&`dE)C?_'fD6`UHGQw4 'M=*B[L:j`YG *J, h$?!tW!@,2IMB=,@G&2j:Øf+mO: syW!2Cŧ_[ v~)6ݹo@U< t\jwNOSl5ICAFBpз>' KbafdnwK[R qK;Ah{Q2Jrt#CnD=Cu1x9Šfk{;p-HcV)*Tx3滂DF cӽLl9[2 NfsY~q"'mnبM)rb.j6xn[.;LU{{5B ~Eٯ ~.Enq__Q5ٸю"MxNܩ:ѱypVX3M1 &,)Wy\Ƴf %V@'Ɏ#g)XY}GNo|g%0( aKr@m$)0M &F T?tX%6Lǫmמx GW'(BrY=<-ZX/xU@EFN}OjҐ}4s=,x⍯SDj?!Eߥ[KC!kd> /] s4J\_ ;NrvT/OѢ{(A ѱ$RJ,ɴ1@=rimx†/SP:K[MMJ0%v,@%v > b(ޡ5;f4oBTZ{^ou\Y 0<c`);ʣ:Y`Iyݟ X 50t$Bd7тir3$'熗_f%ZnjSVp @)4T'biSt )+K]wY "O =>!a2CD1uY4!iT3=mpH71Qu V "Cp;O# :<yG PP'-9ƚĕ{lQBtSqMGjr tq 6%mQ0Hr:6Y,'{TR3bnyd8}hF:{1-,M3?7<v f p8mٻ%?ÅC݀ڼ)[Gr[o.j^(tH ˆsd6 <>oOLI/,X;nꭸrfD9adL3 -j%-XA!aNJؒcl+2Sm#>4n,u.-Kz,bX|1yIk#øRE]"NDM9$u6  טAߖ~Ӫ2U_(VSQȺcCVz\P3]>p*y3%Ni o,5~9 p*'?l4;8koW Js-'B"#{tgjKf ¸2wccu+kjEGǝ>|#jNH}'渱40 vΓ E!ED8ZH\POYqz~uʞ1JV;)'PP$ WBI lN9N•RwY 쬙Cǭ5AU0$a&'K ؝m'@쵩 :A~Ʉ<%h6xsOɋq31[LSp-V =LBCݘTVR"6%#=0-| {\; 1:BM0Y\3o9yuM5pn`X*SOT= &i>(fQ YsJLH8^dbo~u^;}!N>N \4V>HTA XVѴZp.OhdU_qFDNZﺂn +qVlM / Od^<GFE崮D'ToljCOB rR-eCSb Cnw0tWgYa"΀ .g-P@?vF!{a f-TcQ+>qx "AZϝuQRJmT<+֛LZ Viabߓ޽\;=ɏ <G'duK4t5z)='nGؖN"իطY ZL ROm]X&Sėg$cq=Q.ަYki'1؁-fBk#RJy!zƓZ(}1 jir}QXZ-_!(D+g1cu8OaAöK5kU}]7j܈ ^YQw).ye& 2F.aTeK&C*&| 3}-{ہ+ѱYZk[7@STOb.ݱ*9{,+vCp{r`wƙ '5moO6XڷgU>>:2} L_.W e5qy 5[Qnԓ#/;?"CZH»fuRÈHy ^-"vOg'l-,Jf]w E{-1۝Br^Ksrl,Z$ ##D~v r~NPJY]g<nk@u_ EMVog>߂%ti['bsIelxT!!?bɆq 2)j=*Z-ftѾa lOb:d]X[ J<})l:Ȭ D׀`yDDT/%z& !4ZTQtyN:(AaZ͑]zȅ@ uڻU559pp$pʻd*/0dVHLkj乏pG垊!)@U`5]` gUm]Uא[Mq n1y~7G0fX#{C.`_YI0|U}ypΑhfV*?LSNJ7!W3BFJQLrփTZPW0j&m,ߏS|,MV42}/r~ i($qnXDŽVexi[^ $.Eğ,yL=Z *aMPE-ΠS 3ȱV@9쑟 % ;Zͅv: )5)K8. VGԖ+Q_pU [*T$TF6$9Kej$on?}G{eBBVT7^P gl ^3F?|.IT1{T7E\YH}A Y]bs.}b7z,;G BR{'6܀)L,`I_ pvF\h܀R- }`DBOġVM7RDovر'VX1Ϩ:E(7TEVjHOy,O(ȉ+ƃ?#WJqO%xD llMQlDA"V$KesOo_|Gf/K:9#>M*4Nb`ow`UfFXxwb㿼D@6F /5{r\$WԋMLJ)ٴAq1X^Yd~L=g)E-E;0^d<5YGi/7asi uU kv_`"׹c@a&NTgS`Ʋ0D"#5l^8{-%]_ ~5SzWIVv)5XGIE(]ѧ,IU>X^։XX%P)q@F(y^!VP8kK 3',c"s`C#N p%d2,nJKUڝr?_+J#5ɒ=#HC.ME/e[pLzC;%LNRi ȗ]K(`$)*&.쉷%(әu5DXv :^*vLr|){2Kv)`H酜ҹEєڈd5p8:|g ,kUb^˧Uez1 Oxb0od{bx„:&qHĘbDwR=qTlHS~3K_檱92+qNlU1]L1d@Č$bjy$5 &RS/WM+|4La ,/Kx\"/҃ `".ZG"7%(ٝK6?/RydwCs";yndۨ"uUv2C bXkw*k0x}-vVhxx8ݑ \n;)b 1ـCպV5n$FJL hCeXՊ/ QxVkiL"KHc^?E?$lkۍ^3Ig=\  h;4iDV2GrG^Yb"1ټz 9V{kq`u59aټsüET+jE2-aW|Gŋ,\NxBDEa) 7bs\L>t#NV~u  `ξ{&Ro *9-, MCH9!v93gTNR[G=~n~0s 6];"y>Dl˙(o/ٱ`Ŕ+71z)JN+Q2>Ϡc7B⦷2!5]xb.woBY*rwzP Z ͖ UFmBuF3 0a]z)RLT,퓔XZVu3uP çXV啥g5:z.Jzޔ$[MF*ܻhKS=5ScQ)W~ugͫka-r ][A|:ͿՄ&+j%>&D'ғͥGr=ɖs9 |θyW0Пj/u/~v{ix`33 *WyExc-%M(LG=Pʼ|G5"۵ MqjLrMGoeZzm&YHG* !=VyAbq0t/3nQ'SD q5=WȲQ~HQ׵x8ZJs\AlPR? nv!_ h>O5񬷺H#M -Yh<cYuп{ϵcjܮ3v֢g3?&[|vktad6$VQ*z-·`FcR<+cV #eL$gU?_UGa*֎Fv_B1eHg ؚr& `CKi>vB8AWakRԴB!=(}e `__$ii3`dۥżpiUVq.J2kpYeiz7ƨW ٽ{Pse34a'~O=^h!.H [t|IOA^QogȌ=ob4:s:mV -dfL45?Qh݋, >(YsmO.3^9Q0igNXϪhc$z-_ 8[!HdY|+5`\6s!"{8fw}^igݕ1ߐ-R e (:^̈́Vs[K{RxKRn>W}bM=ժ շk.v{|uJ%S[@=|8nQ (;cz'hǧmL&Ց=GI/nE E yk~"Y0AחrBeIdL.!YUE.t m "Ú1ݬ'Mg^?Ԕ"N:k›Gw!VCS4a6X{xjaʐfwzrOʨCVHtD@(S+|)( 1"o#=lX[|KfYꖜ,!n#n~iomuYQo &̮8""Zzhۓ0;d=baHSOI{6?>wjSy_ v,l+[<y㜦dW =R[p\x{Hsk S:rFq37D]S+JʐKGDM5A~fZK@1Tng'mC󚎮^Y,Emn5` uN,ۣvc_GV5R|OْӨKUp/y0q0ق H b]' 3)G,^T Ӂq ?oHp֮׉KLLd>L9 ^Xj teS;{B7Fgu}u.P*'%MR?/Wo/4)B/< zFrWQ9U:GPK'Cs0f,-a,fqbtZ}{Щ| @mYՉH#,ٻ|nj)x"cxST%- sW{^cI)+Yp/ z*I OV8E1-xLL!.b]'"yGA7#pj (+UOx생uze(N:F̔ s?}I5R-m_hC=?d?NC #D)P5xk{U,P Yt0UƝ@"{hp$M>&^sxl)n=nd]SL˦뤡\UJj{m?:ʰU>RC˒Mֿp*e¡?:ƶv"w#RIŘ@x8(flf3G~SU.W,rW 4J 6R#Rۇ}f=(Pɝ-尪yuNs`EUw%5怒6пЀʑuLj CKфϪxc|^SCZEF=޾P9{u[[0=tP$ɆoH񒢁j)%2%H %1ŦM0lK4ÕPndCXrQ vߖ,C{CZIϡU5tOx,ehꝿY+^H.ͥL?Vs8dlHRccMPStBlc-@V]aYAWug~scTKA3s3졍okLy6*pW%h*r\]Gl:椐%oܓeeҤ},R- IP˧DGKd"u|q|y0LN{COPDy*:*)%B睭eE6 (=ҀvoQUBDtY0~vُ]pΐ=qV@:#&B{dęb _2luSR _>뫀Qϯd!avd$d5U|ɳO^C2Ghfْ)Y@҅ r+ O_) m)@ic-S"PӸFk0< Z5m~k:8Nq|8<@|qIڐ u5LMk~ #vy2c5a -#W/qv.ːR}3$;ʊVW\FXRג=$J($\j$Vu%0Ԑ-e菍]RXi߅t3g9wT T! #~/A]m2o KpP]yd>{H1X[.O2VtqbG;dtENB+Zj/K_.AMݔW 14s}u(8*>6dD9q H/ҿԧ emgyKFJ"a]B|_CA‰2V\|ex8.j :@cLSlɸe;sC L_P2 ;bQVj'i:e0N9d=ټ,YHO0p)%G4D^mpMzJ e5tvjՎ6^raI`b#֯3{~E6V['y@w+B_uߛ6z)\\i"d q4YÇVyׁanVHA0ŁĀ,%ύxpFԗQ/)ڌRsl*i[+mּ)5ݎ:td-VvlXEhExrmIHl+vO4 A*ۉ4N̉s׆ l#hoί;{R@g 宋t2DT WLN.'nYݵNA=(~`rȹU1yG[dHα2c lhc:3E%jBNB^&)5̤D r(dF: )ϟ gR41woӔaI@ /g D1uh$7x@P i-gݨUI+IT MĹEmb"&mTbW[|\:Ny_{W{2-ݏ$ [c5^-$9fgf\8K)6:؆'J|-j߳\z)mR8C ʲ[;EϷti/0als~a0%x{lE7c56 mS5:^`ؕWF^Q5uy)b^7e3|TlґAx;YBehHpQԩ(_aW[SM<6dW?GZb{\h(ν4v|مXw7-j,Yr=ƕ CSfa 3Zhڎ(TTu"w&T9Gej㕝ݾ]<DnMP6a!%/T$`MLiNǯZp ,c| jX@1G̝(N]V-n1V&p5u%"=3:YhxQS1Fihs;a|۸#?o]J!`a.|}";p`j-9+%'j A@1p,8t tyˋ3 9@㮑Cs۞{H ɠ<K.46|rzD^zjeUQ $WBLy^Sr;7!Nښ/j[v7olf6̎xJHC??v_]2(2"mI;y/ $ՒfL̔;\s״ddcM(?ܧ1Wҥ[Ny0D,,T{FBUߔKȶ>Pu÷yt4R.nG #T:qL?#l4.)AbFIe2znvϼvDycҶD]67yDžM3P1N]iڄdJ_6 Mþ&I;+P:Ċ>3T_:5ɵՅnyOß"dMt@J|ꚲN)M+/侉6 {ݐd'%@hP8Pײ|ϚWBm@TTZn[21Ծhq^oēe|piω %dQ0x(%L`/qvg5cn}*^#fɟdlP\Y!ҙHyH[pd<$(i),R/)-\͐FRf4^pK4wnʓvPLIGe 4gB/ODYoĕz'̯! ]isre*ĥ%2LqnVidUwdok>o:7z1Xp, 7abG쭦kR@KjқJ^ꂉ۲_7mxHrdDjמѹD_A8W l:oT;EAQLB;&$gԵ%yH1Qig}K $6G@J1 Simo&ʣ jHd%Yw;zfX0Ja7*=tV Afɹmaxok'g1*b>Ԑ;u䪆x1IBF\ziz0e_ܧްY QS e?OE \ 맰.LY{Swi=`S앓 nԼdJle MhډNjʩE0x%6WIP2|(%t()-|e!xCPH(D8 ;YhS7<9ig/%1Mu<ܘ&ec}ot Œ[nVߚ@ۊ[ ]#*&.r;ͻ)ʼn> j%˩ /T'^L*NjF|oZ{՘qd6p#HVAk[j}0;C,=t䟰/,J,w;A6zC2txm 3: 0H=Nn.v8Qj.sS W{8|UVv/5_{vE"wVZy*ӬƝ1kѷLN"3q8eyj6\9eH ՘UB`BS uj˃ږ0]9F5ތrQ+97ώ ǡDa^w殶eoFrkt8d%C PCՙ +nPbvRjA@bS@zd?q62j_Z}L^9T t[^K'Z xgo?I%`L:# :uX5ܘb%yVY]S9{䅶wN.;b`m杻(+ԛ*FVžl2zLu\ZgɝF@0=g@U҆]ZksەF?ɖ̴G Z Oeca&,oQD M†Ttc Kʸ[84o#Ӑ| \WLt,tyiC5 `U%N6Mێ[E=BW.F3ҳD$K*"pVӟr [,8 `y-`zr:#.{^ݐmUmg@HyQ̂ j8?IeW2oc IrC9 X7mO <.!e;Auc= :{lw)O c9OPtC#^ qk ])f݋"]\QˬSj8S)m9$vEG8Q7_l0_s=/usNOk?BMg1Q6gu#U!'8&R 8 m'r=łzhg<;35c ])%2!$FC뉐Bp}"e{t22$vq0sd1Qw ˕9k QߍUb6R?ϛvMU3_wBXa gqDPX - 4IhdOȊhQs~-Xa1#(|cTc7'=nRxvfέة "oFy⏬ [Reh~$I"}FVcNQESU+p ?Ǟk빴ܺٶ`>c_.%9&D/^ Кz5,3N+Mέ񻓅A5^Ƥ؅Vcoqtnٮ#zMI1[2Ẻ6ͺyF^!'z5N㎀5҃nG $=cC *㈻<a&0 NޒQ+HXS<sꖆ5.`t(:~0ئgwwN1.&H]H@ȺE ^qe1YS,J;ԥ,k|҆@Hz!Ng(^KYS<ٮTHR<OֳI./r1`{,RT)cmT20rgOZpld=zٜs$=2Dc4 5O]DC,Ow~ KGfxxDdY6] `3%Cg7W|!8TR//܋̦Զs^ N^ |] 8y 0+Ֆm/$S" /jħ:t r&o@Et&sD&XVucPQo} QNG1+GdK\B=d%c|u. Wp-8:Dv)xF)%,Xξ-$MCp27"NkSRxX݇~Sqۣ+din@\+s&&ؘs1Kg"o%huY/F5 31KQ#GmfO}~ a< ZЬrrR@?*ٞN\lpkȖ[_vKܟJۋ!j꼻ǥF{+Jg8d2 ;^-N'4\[F_PvIct0D)f@^݌zT=+OdxfQֿ,oxXUG5`I`Em·_U1$~9O{kfj<ϫ㹹Ab`FGl?IoMT'$/4r JMYE"xĴ+QcsK$OjXI6;Nn"WpJ<&_?q"6iʛ,ba l@`v~fD𖷄曷 KPP\ǻw e71XU VLQ]]^|Sq(Wzi&BxT͜fx.OM ]c{-*Ng"v܁pS>P pɀsa+ͳN&I[Wti1b/[B|lF:EefPzA@å`WN}+CTp'PūFܱXt4מ 4&ŏa>}|n:V^_)Xnt9("dT{=_pqןD6)Du`[kqczknbdz~M֔*Dd'7^Y#eU lV(Zw_[ ,O>n5V菀k#11=#nVn.ur\NBs|aqq6mV;?ށ{ bT yjK.q W1W)PGm=ԛ|9kڦ[`#YK,g*R?BJرR7;CAP h:oF [3eD,K:rώU7&9DʡSޒ15Rkb0} Itd6tud^.qLbͧN7;5'V;hOX?Mh:atJa7u+Wb(|% StV@X gU uG)}L?Rc͢ XkI]T`j,Pc+}x~ɑc ,d?΢@??BNIUN!UQlٶy"W%7}[oV'.}7/ڂirutjeTD]xO/5@ܳGI"kfb`ƪXMۚaO..^vbh*=^+QRFp4:ߙ"5a1٘,t`_Fn.NvfiúP5+Or(aVDz^atVkQV^T bq⦵pmPAH[d6YS ]ZkgCu꬜h.l@vb/ܨSUXqZ `{Dp*QJ}FjSBei;X]qØ0&Tq/ P;,NRV ]ҙ#LD.*1>$dXnxfot[7 bLX>[{iOa9n"g' ;Zp(@^G}ܑ"f޲^)ibVtp@Wڕ Ōcd &hڀ6ps?TrWB!\8 K Kl}VnG/a1*N~̰,~o [x:>Cz:oH0yxL~-7Z!=M'" ޕIsF\ xzW(ư@"H!:rH/] Tu2?&ĞpȭQM{^ϡq*lF r!sVa\zQ3p+ánֳj- 'LbU s KA$0D =h8ΖD,}U:غW e6E\=&HjOC]QDu8 +mOn:wJxː 1٪txD՛Ay(1pz4~)0/ iA+N$ys-s %rK/URY@H7bUu1żjhMwC;7 ul/jt 9޳bؔ'qT@V\̐ix YQEobCY9ѭ?ĜԻ:b6b)Ħqs^?qMبd6}<E%9;|ԅw]6X0f(hhe kGj9Cg U{΍)-7SSWSn1lsJj`ӒځZ~|گQyS)49.8$ $3U 'yӏcnR/r&kS I陀`o%FNg`Zҫ2ܱ eG4Hf_ٳydߘOmCQZ-71V)]^Q[w~?t(_CdV}ܴwwv6AW3#3/ha`̕JsHF}È$t>hJ+ozj!a!JWF0CӻՉvy2Cg|L4;Б'%k16bִBt# z$?b `\pTzr47gUqvC+7HA3211clxosJq2NYM?r1`\^qY$}ޔ2|ؔGҩ C{2iN=bm'i](Z5:v>~{Sd9`H9n:O{at\3]$,f06L E\ў5pkDEc! WI U䐭>IJ1lC1e6 g1F-5\!6$;-lR!)'ދ0 5њ*`4Kz"9%&=Ook4,[VoBd>w6 A)턎k.O~I39kN",bLOw1DFӇX RIyi&1FU$y.)3p Blڙ|U>qڇ.#/Pt"p:K.Sv~C)U>ix'/N1/K4w>ZiU)<3S|!M^Gx=C)W75躌*S\U9 > u*ro]5~ojyqXC'@DIi][[7DWMY:L]C) G!ne˲m1%&p,NZCi1d8X.t,ƟbFVӰDT;Uy'D}vk/-)9^AK}y0IY!c{YE 46y@˨re|g{_C{w,LHz@V×S%Yx+vU3i[r{kSuJuLCT(14cCDV"Q:p͡" H(FWs~0*MD `s95a엜2+tZSc)!f񡰾 *ժCWmYk4ZF{>G2EKs0 Ƥm/*o1OoXz%IXxQz3Ҫ R;*\~# xR nEReDը5go@̄"]Io݊0]ZrIo/;, |Nυ'XM/;UCLp&п'٪B:b'\]* ӏ?oժÈCFaqNcZ?pg6YА9O؈V6J|!BO6E w>)\oݥŪ:TJЇJR%D$=gg(zcAZaKqt&!9mI?o]"6]'乕;6:3ցHq[~@`oK7?GJϩ(icf\{ϲy31xˆ9Te"pƜO N?,}c3mV=4ӐT_8FYN plY?5q:Fc2IBaux`"O@ϋ2'h%@HR(XSrQ I/6ԺIZ?a:nn32%Ti)f lƸ&;"KUKcQI'hp:ŤA"m18EQS?P$X A(b 3[1pn'hFtO8e|O]oҎ7XF& `0l&"uCbm%Ps‡ή@|7y:^qq,dA)vi& 7@ENCKDM*P،vcCRgQoa,A:ȆC8G_^R(dfrvwSJ$!b60ہʮkbUV=[Hn5U1KFݧƟ[@dغ PnރȠ7 'R`P˪7^E/y-s\crJq{aXVP#'VEsc8QӐNb0Ӂ]D5{1/uq"hɶ-r-89g )P@*L[a0ؠ@c]{4LJwmo uEпrh; V}kS,d5,uoM,qzNr{,9ʳTZ Ҵ)(oﷶuYi/*ڮݢKj|*"t10]zÂLjRD"E23Ǧwy­FJM?uAX<wCHG18~1@(D `/eaѫ/=>xP\Az CBOK.u}K!f|VS%Y,)J(^Y6gMz bSs%}%"3IIMD7d<&OU[޵y*=i4mMEkr(K1o# }Hl+pTlǴxӝ y |: 9zlgxJ/lxE(?*@dC`\.jw@Kn}ָ@{i3 ^L6Bz 8QN6jRLT`:%ى^FĪm!ϯM]耐9_:%/\0j( \F$,gf95'rE+~UiN Gˮut36v )ĸ0伩K}R ҜO.MV7985ܧSmiX[Аy<14I 3+[Ƈ0lŻ^mTe46hwÂo7;@y,>?:Ҍ'L^D˽U9|""Y%=:^H[80SO65]# d )YDf$%ۥf8X%/e'%QPz| :0Xi<vL9!tLH'!%e3q]'kUFtvDvI&z5ASR5c L[ݔ_:B ]Vs,Q1o\g1tZ$%2ï,|Ȑ 41_5:\a|6{m ̚E^#%qN,#V[ԩo6y^R˝w<>VEFE*vԸ0|g( *3&'#+?,[·`R*L*`rw rl> =-em[fo0}^TX7nFtu~SaX^[Fէ\[ @5C' +LdoV*p_:/G0>K\|c\ kϴEt?F;9 R7:+ލt C tyvo;[r<|$ # ̼M>2~w:LIi'jCo@ғ*yM΅ k'9Vr#epo`Q׻ M~ȧWY~?ts^|;[*S #o$tl4xF16/c[ LZk3nST >ʡilzt&!vs#9aZtf[as4vk}&Ȕۛ'#Mf4 NA,uZ ]aD#f;!;5(sBygGD 9mMz@V(V)K^zOƿ#XL<1VÝ[9kf+ex>/}d]xA>4~d15ΦE%G|f xu%\pxiauӮU (37VKT9Qe!TOצuU Z%WFD0эa74><>'*yhGVpnLu4;&W-Hfgx+WBvBWK.:XʔG$]u)U=xa;_SP42+LOo)zz,u:sd0H{:!2kjٜWǑz˩9Eh^É|,EwrYP z9*|lJ!A2Y|(w0@6fݏ7 ɕ@]0vRZ1>PllE^G2(t!b3~ɃTn@ #B/hhG dک64WBfkHJMFd! %uGY2\:RJ8x,|FpU#r)NuR^8?͏h(Q(f0c"J(LdCxϯ/Qr\#UX}KaB&ul"Wֻz@}DG ,}R G{|B7lDsFv9-\3|2Lĭ3Eh V2R.4qoLH5Y/<KeL_u4cϻϵAEGp԰W:8]Sm }mԏpU' x;e|3X%hjuSGŸ́,ɯ%36$ۇv%VZ" B yl=zI]G[Tb}1Ctߥ LNtIfId"6R9w4 Dԏ8yM)%fG ZJՈ-:|w w;Q@N00_jnUihxע٦N!j ĸxf07b`_B *WC÷yoչ(Km7e-,kB'zWܕ~cmjl3V~ {$f%kE$Q]6 iSV%jL -iEھimvD:#sˉ $/3JqBz%*M*/ Ua{o̸=E9oT$šyH ي w}A m}MvcՉZ))U R'C˜UC/q=O𻙠 ٜ \)U)CF(FfI*_]դ[tRJYh,RJx3m',.X&և߃qk?B^ə9m(_3O+*@P ]Ӭ*Q4"DG)ݬ'W$:y@FwJE3q)>3>#sB(!'̈M%exI3v?<ΉdF{ށ'(V wzUcV]dy vRca#HZ~Dl 7>KhID\9u2SsC VEIKݜ~O'U{{K&|ifJZ 2*ܚFycҿh5~` 2 ';Qlänv|4[M~ha)6ާ2~33d2 C_|Zu Cױ[:G*mp~5&S3:`2e1${M~vD+jyO^Ϗj;.tH p,gc"aYá8mbm\nz "K-k$ >\4 s ' A1+3ֽďoux%n<+52Ω8 2aA>b@iFR1zz??6tR3%IlS)5_D2O@bLXQ㧂~c`duxxb27yAѷ d9Vt"#$){&F"sDUXw qAνHN 31m$NH R\E5_K0U˳/ͦ]D?|>oncIF# a,OE;$:z30:dnK|K aAS-բ{CF^@I[`|Jka,zzԬkd@dxzbv*;(cKt8~S{Gd'8Ds{iIAx .w }Ojj$RhOt3V?Kʐ3:J";8vutyU; 09T^l=6GDRB}k`@'%U(QZݚhՉFk;( ii {XhoI˫8} *i鬩Z;:zaxFچqfj>dSVr0Cmb%uÖő/ }77+%-Cɺ0b"Q`rzLoN ]%GIx8%~ԟ(x@NDwwvF(-MI#!2L7 wsZݖ*) И..|ddzϒSZMŻ!lq c{3 UBTtKNgqsDWT/_0Q_4|_}@D$ ,bv:=tN@(ÞZ2KA3b%5}X{o;) +BPvPUI>p3 D{&=\vL%2Pgb\ǭr{k4B5`O 5"7K S23u$t\ar7j%[\*AIDj:nȀT`LDAkN liq?H&Jh)6 '2@s&֖3аٍ1/Wh}Vx?J$H&ՠQTp7,ugo]SZ~hA vj%1*u<ՇP}! HG6b%؜Rٱ!"ʒV-EtMy+5I+#tq$|V1 4lmr#C nv tXלg$?*#vgZr=#P8 ]d& %f_Jҭ#'%!;AkP_X8U&< ~ {0f(wu;/f Yqj&Ot>`yE<$C }S+ܒOhϗY(|8VK66ӭww'ړ)o8CCfw}G1S'”ߠu!/׾~I(ǣº{jp jdȜnW㊪a$"0!D_؞f{G6G>l .R;e.5X3֤ Du+=IsIIz:BbPi1kX JO?KUo68@E}Y#;1HI l( Q3JUkVr0=2&Q۰< 'm C 'AH;pe5N,bm[pqR=M L.N] M|7j_ 1Xv),tHj+4F4=:@.ŀ^pZIAV-N7!_M/~WQsu<%&yHSF\m:JH[ 8G۲X̋􀷾Q'%v{xANgEw3.T'ŮKX+Gf;|{-fz-..Rb =={C T'؂y0Un-=0Q]T E䙇tVdߎxĘSnq1gP"͕·kPGsp1ʥ>.8"?N'ch_8(c}2Rv7%C}#RߦZ]>^x5]W2N ]q)=C$軪|bCD_i7ɩ9ӥlP@3?I |l_"SW!{7Dc`l(زV_g @GŸy]*Z7V%_ o2xzwjnvHd&# Vljs`a\t1mQL tGT~}'mS:gQ} K i9=\f0bme)cc=FGF9(!#iQڮi Ԣ}k.?PwP7F'tZ[к/YU\X6u#gIg476sqǙ'u] ģd!e>m;L&s%o=}Y7@@G^n@_*ϖeE2O7|$@pw1Twr*Y ;UsˬHKNPG OFFfQp H8);Mhqk}:n̥bCg j $x7RF%m#UC Ol-s'rk +T?Fz/;k( d} o5p ]mv(C'>5c8OH$j-a2$"_BujG iEu:5QLK&})=z[oO`]MaC"-YN! wʝ+]eIq@)J 45FD:hj|<|r?7uR c/W@}ؓȞޙN0}tf}\,E <0,ߓ9'v('Y2'XPp5lIpRUtOSZ:*xC*I(Ŭ@8Ӽ~n@|tц{%&a#』!':ʂZͯ.[-URjLgvۃ R r_9;w1|]J)x BHTL8]HpNBaБK+EЬJ6[݋  S@D"fJ ;J`$Nܟ)ZʲWH O4=rFNQXtpB BeV{d\cm!y7i; mi^dV(E+n;Bv7Qlo۸cQ* }v 27M72 AURWc4Y FS7^]:ǐ Pb f,1go9 -[|iH7B\)]?& 7 =cw1 AN쯝\\? 2e~s#\UO߃a(b+_Ћ"!0 )Φ27/\e뭌o.'/MӼYYD瑰W\iBŝ[tI/zը9l$ 2a 9\ EsIʏÉa=Ӛ$|+ :]`XZo*xÑ)}3HW/q~]B5謚а=Mʗ7U:h )"Nf?™Ţ3OֳSZ #>a{xmcL\Ք,$k5g_c jrгr$Xw&7 6|XIL)זޫ;dgɷRa 6<*;x ?CuٔXwĪ#OEɅCD}&6}uB0#[4ϒGMGU.:l$DDUxWJZyT*K,gX3YI[xoOӴ'Oxf~7kC? YޣRo@!GK\{۱lKWIGk>Zg{"7.XRCڛSᒎ\'lPL6Bk^C*/_"+R@ KŗG{V?YY|yJ@ dBh/@sm2UrNq'IOa\A D^By%X]ݛeo?4bDd` ru୽ٴ%" ގ b1JqHف>[^-Oqs0Pҍ2<ӄ\%FFw\L\wK V}5ť-y- W PN4ㆅ !Dۭgq\ˡ0մY@J9L䈘 {KTI:.$=q̅FEBd~-j߃ ~CX PTz< iZKC6H+f% {d /)Hg)#/: =}!^a8ٷ Е~y5f_`~>@ n|sʊ6'2+|8NRYx^d[.3E.)݁ t|cBkQEɻ3NH[by) H {yh0yD*Μ#Q8pd*vi5ٟa@61,.S<ݨ?ۑM;D^h6Z:~|%HP v䵩 =1Qp}SOcZW8%,R xAn~:P[IiWc6g2hJs[]rtlҷ*䞒t>Vg^(\ ٮCh< q K6gjuXGZuDh Ԧ]7ElyEF+O% dz  jlaG$_J-PQ:Qi HAw0˒ӽl ДxL:ly^aCth#̛"D/].(&kLh*<4>}7]z8^[I M|tG|$QYdӲ*C)A=S?DMQi2@~V,2J@ʿuF)( ^|14vꡯ4**%n?ʘs =ok+ ۔7xbA}Q7oz3QSR{ ?G?Abl9KaݬG'E'Lg}br5]~-_jKhMB}Ejٖ2͹ZDzagϟ3:k~gy:D YronY+ǷṲ} 0ٛFOS,4E+'5)ϸ8!/? {=B4 %#@2M=ldG`Ь#!T<)@/p0y@ {}"bPU=۲&a(co$Px.*7bԗE)b[`]rr>QX;H[=ިJ?hۂH̘CHsE7JΒdҀ'`sǏbjoC|gccP 7jQr Xx):~s- =d4o.@[H5=̫ MPU=cT%ٻ$_`|)BGW@QPgF"֏$g_ƻ1TgY#aT{ e2-Tecyvcn\脳{YEnߘwj2Khk_\yX@dCkکww^S_ETO#F$Y6/ iRMQ b <\I Λ+۷Vc51w@lłZ ېisΔ;{`/^w1{c&oTiA)u&pkM}7>-W. '=t6r[:k픯rn8q!7KqǴ3hd1Vm'ĊgqJ3 5fk\jKUF a- I"p%IsG*5u?\dCW3?Ċ -XV4B>͍CjčR HfC- ZowQ >SYeJ+6ri"Va#~:hs(U{S1tB'A rty0GȽTBRzrpi!-H)g,FZ1*kj[DV`?)XD?z,k/Vg>bgoFu.Hl]{5O%䕺`spF!ǚ˸o&ʾHMqvm<2d$fQ@,IžkCh)"=u%y4Dn%f8@1;5NWh)^2xT8ayX xeɻ !Q:d iI`T B0­[͞U&wo \WgH<'H|C9^@r2@Gr'8@9>\\6SZХc{xenJVYjިo20t jiKq<\%Mwb q와YnS\2O2dU"g)b9DH~Yf}J9g5up3iKؘUFd9좛ͦuoɾvw]ˌ1\ -Jĕlr13)v$mMP=a-M)"SWQ7IM T,eX/҄د *}xj [j^Z蘺Hq<7עp$%p!Hn #M}ܝev5yzKڴ$lxj i΂ gܖ][U ;" GxqS?oy4|uK ^RLl"V<$')m`ć%Qc2'ag*@6JKB}fMeҌr`(݈M7!PWҝfb'E >-}Ece7`b&)XkW/ (|a#mEKh@9W=k#n2缆T"NO;Γ@r8_AZemUa 78czEhԋY^š d{D*NșH;W>ezuK ?:;|?delE;|V!>H$ˡrY*.% ,P[/%>]J NI7Hl&-|ص& l;cf^]V,\0[8iIs^Y$Lسg]K=!D"k1RMa!AHMͣ{3(mu@ЬuJ%[ F-mbTB5rӿG՟DaI\YlRmԀ_'0 =1w 4mJXl(eqV8p/aC# .%I2Y-=2M`g2ꡱ`P].~}9'qaR~ $ϩQ!-lP5H}<`1$=0#H'.16jZXFJ!{# 4t=|Ɨ7iZ]1et"DIoYЏ*3ʪJGmIw}pwQ|w~ml¯AWW guڳL"\Jgpwe*ԇxK"^cQ}K%OIp ~r9s߆3-H]xOCB"g.naWgFmj!O50t)ȝʋĠ=9aHt h0yޠ ^~X, SA\&'aBQ{}]emXW%6 =qDTWh;O#Ih)3kVw3o~/w>m jRhs]?O=R4o^إs&v}n:YYkg.mUy5$7" +w9MW ].`ri}P8 + g]YZ~K!FDo8Veh7ˈ=ݝccݩv WJ/;Oú+zB֎}8eNpW}$){eY [ {E9)wຸڲYۅ!)+ Xۈm},Wy8:f9?Wm*"paf$5н?@믩U~B9Y1:I3!&!-YN‹[\H_.AVhÕ&}D˙`uw3Za,J:؞o+n{6 nptH [dBx; a6S16JZ K dq'0P 懛b9M~a MKTnc:0jb.>lh[{1 fuzسxh{v^$~3}93liplP؜:"[Te C9bv1{2")o~P~9ρOg"Y~eAƘ[h3Ay.mPdN<vq]R#)ޠM{H5,8qQV^D)\cW>OV"'WAP3S^gΫ>P  <;%G؛F+97hzȞC"#?T:ۦ}Ҍ*.r1cHhfixq*6cIF<4X -1aIv . ҙwL49C4Yp`$]H\J /'\Mt5]y鞑ҧ7֒HcKeLApP vG\Jrkr- %SLz`\)WlV8]4%hyeq2yRc3FJ_~(Pzdr$vhW%@\E "739ͯ{*yD:c~.:D .]m`>Ѩhͺhqgkaj8?JdQ@>y]rK4Ag,jiHz⭲j}[Dís^I}Uב9,p< NH"#oD)|H|9&otsB{tbn[}U2ܭ}+&h3rej 5+c 6̳ A0LnT&Err~h`Lnm'sCfs[)+ V`,R Ģ27_&_,~nuvUBqP($@U?Fb(eg&&L<"wLVoU:yc"!d꾒υErؐбn"  8׆8q^=*~  \j *arQ4ЍD 3 5 .OAn\I])biIFU'qi[Sj ~t|t;]ʯ\alW.dJI=xFpPz'CĨ`M֚҅hSaR?| e){U@ (&݉lJJqjD 0o 8pȽksYfa6uW~;HtHXq󟌵Ā@Nѕg@կu_K5ҌHHz]>p-|_'yy# ź _R︧ ZhrQ # x.b9•c4 (>'gOY$ ZOB9r2ӫ3'NK/n)0T~~^O;>+2 4g9{ V/ p mSYKs:HR FqTICGSl16+3kQ2¬gώ/9NϟlOXa&1fm: ճV~HH{q^pssr+XjdKH[GZ _p\!>qqNC< #qtdec5 t]`6[` 52&ѐ dlML`0oSPGӣ~7m9{پ~׼@B0S$c@?8<rȢվO{囆l6z:JSAB,[RDk!0'l336^$,P.kw1gC257o$T@|} ly]:*Wr}+v .ӑ@gi5_ X'6xZ>IB!b:ޭ\ ȃ@nk=UC-dYrCҼnzBDN㙶sW q%ƃ :IwuXeTbY>S9q@aBϿe_] (DlT;>[>7ӓfP݈1JzZɗ' t@r^h|8*wpN vֱ1 ^)Ȓ;ATp`JG) ҭDe_ LTF3vnn); 2&uclKܦr7{@[~9_f`0Z_eT>R£Xzr '6\(TN۟aB$j,Y*?WыvIߗ%VbK}Xn·~X(y6׹5O4Iw51sg+`r/N|,j5QrU&{#|vX>J{ 'k{LJ@ZAsSLy:ơ~lS*}?>Y1K0Ɍ|@a5hacΗG;8'ź[Wt:⋥'sh@ 3̣˓"̔lK6M[q+9!s xԘJCY^#r?b_;vbؗ]B4 ,rR Zn@Z>WإE=Vx 5^6MN6Ԧ&I|V);qln~Wi_& lm0&1p4Vbs`0Ll;Y[㥧Sn&֌d2վHp@6Bl&fH8ԇX 6p/Qkh&t1䛉/lg$tʾcoSբ$|S+YηwٷZd t G͙ (ivc{p?s!L;az$4&[Xl!Z^_ca ³( w ?6ͭ-={#mW 3 S=bt?._5.jWR)^H<%Ɔͩ7rSc對Eɉ7sW7wzq9%]*@ó߸ndemKp4F. 4t.!jiRn DHxeG(l)pHrn!T}jŜc=ߘq(u7ˡ c+kA>/JyMHHIL̏krƙ:>1c\E87ؠZ [K'U &.2|GDvHmۑqycX=̾t665gn:@X F(3sGE(tX|kߋ1b(Otbkeq"E9)Pވyrd Ang A$P8c?N36OwMQ!1eƫ 4hk=|~`biCs\omH7k̲<,2&SЋ䪪uݣ%yCh`ϝ>jbT-lwfZ$RgvECrE _ή2 %S*,Ÿ΂K%4?.JrxEhDPo1k}88ϼOPQ GV&DHhej|Sr3%i}_ 9qB%In YBLJITn"H[w*#VC lQv(uE|Mp( RŒFնd+;-цdOXc83&C2 }o1+T]+m>$(.4yL3󊿐i6S[{Ԡgqɺ.B'&-PF~w?qy"Dc=cJ=^2 j]Dff$J̄,yZ\m7q ʕ;*A׺L;f<gZvEr(|xrb ba*لC{C{P/ŚxtwU:<³M*kR|1& ]=alҧ>=2u0]Gil6 )0V;bN0"w0>TY7IUdy%8`DN:ؚH{-޽gI*b`En<,x|OY&t!@J叇18۫e2J;}cZ*a0 L|FO$JK<\Am>R̀/9+bDNsY |'ę3@:6NJqZFL |&HH~x&3P< ɧKBH汫 _{6:SOsڍKvujБ(]~W^F|K_ G& aB{LRPRp2yǛiq{H("BݭqXh%zd9wˉnҎ Z.!/O㻈8< ܈6c& rOwA q¸7B贂"4~xYeאk14SgDWÜ跻p(ht|D"GyN+Sne]a/ C0kǺ+-̭#eUnZ^\+M%1l+ЎX2T=࿲n`.=/2끞ntciJd b^ud1<'\4(mWNp pQB[Fހ{追!)UuϤ Jn*ྭ]<$FFo "TSntzcKo[m]䣏GYtL~}U(9l}N@,*:$:eVX_}۠I+1C3tKu7.ѝWeȸ g,%@PPaN-Ly0 &LN+{]l 8"h'#s<}DdB[^#(w$7U%%9'NY \ ϝ<m&7*7/%{G;ɝ!}|`K8{@%y=MnR ͼT -Y#4Kv=bS. ;HHdq@`Ce %e*7b /z ?Ch bkrO#LtaT+}Z |/jT 7n{.;XB撃Wbt)NZvs˺CwHz ֪w,3"yz ARս!_#꥛~œ_GR&Ђ$?`Sg{0JH')ޏ|6ט/jbz ~}"W.Uefi28(_%¸*<(0HQ fb#BjdQV1LZ3ULCI0%%X-6j􍢨WqaN{ء.X֪N{Hwss(sk0YSyu$YZa=y#)fc]%wˑ~܃pbd$ hk\<ϊ^1ٚp5A{|N$&h7'~F!鑐u $5E.N옣H?"^cR4kk4,§m2h]h@գOGQI[~eV=g2޹Us8w-# Z)1U @hIgͦ?Rk[nJojU6_Bs:`3۵ݗ:yYL^,w[bQu{JB㑡ȹ8B9mGآRׅ}pl{,FJ"dif{qv@~@jpJݞ@O(բ]'ږ@E(y<|!'N  n;D2ڢ6??\Ovw[.!GUIa[@}0h:2 q4TuR>S,Xkcxj/| j&!49b'E- ðn F)Fa%CLOD$4M{}K(5R [+&) ˚aFTV;^a#k|TT6ĺ=>Kp9#{ae"i,͇pʘv>NO#׍S}5 j@;# Cw.ؕe[u 1[l7܀^k(5ȫyr1$OcЀaɒ.:Fk&PÅs%doS_NwwˆKnjoj/<&Ї͆_턧"#C@yOгvq8j?P?<ц*BBy,b;}L`邋  2}ts%ЎC'_Df_+ǏCekXF75'fvNAڧk)R'S:B&[ RuW ˒6 Ts{=]AqG` 4"5R/]lS|?=Ʈ _A-z=b7+ DCވ?B!o/'*y_$ڊbwQ9y6Iܗ@#CKN{2̔2IE<[MrX%#jhi+0o0î,?+5D_(J7M^H&rdپz 2lBXQ!9vjiq*u2#iz~?IfTgPC!T \X`+Wَ ;>L o^[F 7 L Ta.Os)`4kp0/}6#lBUbi*+K2lR/Ii}BBYN9%B& EM4tTN;o}'-&*Iê5QuWֲStkp=IB};VZiB0)Nwʜc=EbXs,M+! gjn03zC18gZ,Hv$pŕâ/L@{<0yE v͵碐Bv~;@f4l)ucˊDOH¼ ΂ʕt ;~~NK0M]lX-yeۣpMINT+QJ5ftD _&G1+7e$ľ7XV (Tv h˪{]&t75HfdzIm~4;sG+ڍ^s7O6F;=Պ1G&ݥYW9鱅 4|R`WYiM- 4 ?Dq寪`s (~>I }V.bϷ 2|Y84;w;*ZzHijw 7C`{Y1pv~F,h"-XV `j[ӧvpw;>Y&MA%WGlF&gkurTɎA0E[x$5ƻA%,iZ)$Bs Ьy^,Uݰ6 nKސg|lY(/#}׺kFWfFi`4ßRB;kD-D;IG@|QH[ !wcdUf\MFӻ *eTeC{b_Hb-j))M lY촜;wj3YҸO$<3U3&SZ.HeJCCʤ}(oG'@MvM$ܹԁ 3H@~a8UQ!҈u}✿TA%pNW.XBQ#DcJ bZ0~{J r kϣIB?B0GX:>?#;j/ DJm64>cU.Myd8LXH́WgfHTn2: <[ɒvcd:Iafs@iQe;)JnhQ29=#b&y%F"u#X'+s{o:?QebƹiR;|;Mo7_@耗VrNpGwdbP$@5膦 G,NcK3d-.# y?!M&,7E rng+ZPёEnY_`&d{OmGIT&שw~u-)ݹmv,w*OSy LݍM~. jW`e12!N`;.R$@%8~2ZrT#s( %3leD=ӌLPvoլQ 8Jm xPr?frLqo@f .҄9$`ZrЎ6wlsʩPɰ%G o -tͭ$6ho7U1eۼTiW*S5p GaKԻgIksvY(l,=VzxIL4RD>itiJTykPF2[~*>ۛ'ZHW[qK %Vn}%빉F~0/l6.LAc=tjΫ2 +I ;yBRmWA]6vQ8j`pXtsTL KQu= ! ]hZhܪ.92CB]N%eDRg@ iCF("GP:ǭF>BvݚzvaS\ R^P־k,u7s(B𱩚oN!BˍBv[ |B1mnO$T_^"Wzq ?D5M~xƜ+`))KN=}An9H\DMԣ*sI^+g(ݥ4ޠơ3(Uʭ]lYA2FPV-焏l^Ic5s mhqP=P>vbdMUW)ʭ8W_SL[A3DzR `S|i/p3:Pa49:re5UG|NsNԈp_U(\ Cv??LybGwҲq/`b09U&ŷ{:P]Fz^iR^t2ˬu$%˄~)fLŅ2?Wܚ> 1X6TZ*eϭ3Pp!VW`_$#-nvv9˽$mɸ{\!S3nYc'Za`m@1ipCʱꦹ0zs*L5@CmZTk9g!*Ӆu2o󮣏ҾOX)l+d׋t2)Gн4I#uL~ٵb3h#Nxg0`:iep,FM~lL _ee,yd\ BWDYj!:"@q`>&!==,o,.1.הgmb$/b[=Jr B{QS gs~A A͏!w O[s浿iz`jSbļ]Fi#h@Npx?eO8Ws=zH6o9yg%z| eRLOwBUVyc>~ɫ86kk+dGW mpaЁlާSw`cs#3\(0Ib:($1~-ŪZ~Դ悭T&.R\jo蛘RI60SBqTlsiV )(;Q*H7_V’zg4W89;5J/;+`43ƙ!ȶPpȇ"*+w6^IR/4ʏgDDa6aw[s׸oe5dE8&zM4new2aG+e|@5}&Xw.nsH@z'wf+-%Ysrb|CxυG_h'dEgeZ0a-taFP[k5-q{Lb1>ZAA}L"L)£)?ȓa%ʲy KyS׽:O(QӲ[ja(b݇aG}iWLҀl\1tE "F"M퍀oe=rh&o>?a-_?GFDX1?l?zy&r$ [~iŢnhTj5PjJfexH/GA a\n3`znKVG|$=[3XX[M&.s (md4Kɬ́SFm5%z+"7?Se!EfM-[0c:LǿG WɘFD듘!p@D+8BJ@eC?ZhPfT =PA.oڒ̽qRH\nŶSVq8(8gۓB'cpһFRޒ5|>|ٙ N.ZҚܴb2y,FNk9rdd HhQ+m(hƾ`t=Vn.ţsk$rY`9ZG lQ0oKӢn']<&!fiYhPV]ѫcR \dD<:R՜T^\a>![S8.IJM_0aS'iԀÙDwHevHPv3gv>wu拒a}|a 49m@CL (WOG( pDG܀^nOF7:*~q}˪aٛ ߷tC(-㾪@M*11D/1PwSkXl&vDGmM4edY> (ilo4WHRܢ({>zy)2޿Y#b:Ўo\D +Ռ8u!cPhI"tFuz|5?<.Z4G5SaDX8 *j-Lm Ke&@vl" 8{u~v+=Bne"Fau[_񛅹i [ IQKxuɳ1DEWlXKL; pK3uc,3,*/D+MbU\‹At &"CA3]&%hJj"UQXy ɖtc% )(C'1]p@p~`"@4oՆ=bqO KDWW9x^ovxoНSY{+MVg^Iܸ d$3OI~ø0 \"XlFʄ̞n@Qb.^X)^ %uv Ýjۮ$?JqGcO܉i)mzX2CB,xnўnsDBxr* 8tS1 Dž9_*SqJ AF4{>]~\uw8پ̬U+oOwӸzu°p\>{8Cd;< ]ӼeXo PJ/x=6TP"?QMWHh'5 AYf] vFpySNPb'?;_Mց1 8Jq]ySgYXgd;iu8㈞Sgpi^Wm YgabPj^VF$S#Ryi]q4 O@cC=q^Eobt? x$0cRtY/gŀ}Y*r2blЌ nQ`[  reGeSdC+r-k۽Ր7@a'@S;y-nZEMga%F:8Y7I:ѳj(FȐرN&%"9;#XAn*)8$DF5>Wo\!C,`[[[zQtZdj-ѷOPTa|)c1rd>*QG;haWdkd)ztB%#1\hמ;* K<%W"Eh _6ՙ؍*i gޑG_j$`c:vdV8]X,Bj`{/V+EM\#eb*&U_=Y݀,5jtY/u)dY%ʨRW' `ؕp^`#NW ^2%v)b8m_ טv͋'K- qἽ~ړVA g-ߏCXᡩ] L<>ʦN@~yb5WP:d%fFX(TXqBDWJ邚08gi_Ghhw_+Εbʆ:Mb-sD}k|կ 1'з>o'Y:]d $=4v2ʷkID6 |G=f;;ςpy)  tw'G.vA42.Kv{QHxČh&Bʆ 6IX vs^){}"w`{{*vW6V/۝U(>PFV!;O X_9PwCҟ2JCD F_Z^T,/9Dg CvvvI^,Tm (ޢP{B8vD 7&D(x6c@&+ 09aDmp14!udªA4I"D@8 [%q?ǤṠ4\?pNfG; _5ŃRѯ~F M2rPuJnNC&vYpi)R'|@?;Ѳ/cv4:>(7fRa7hI.gm?M|5x>7|~Po 'Ӟn#, YMG,c>–H3.W,ʗtl-0_~q[My;OO8ڝ}#Lvb.?_ЁW@{%択nS5ˍ.K9Xr&+A &,\0[0_pJd\fyj M Ә.}4ۄIg) V`m1iZj{ Wv߫0I0wܭMgbCHThH'p^# EI fg0`=k`'&$s VՀ=ȿ Bc-k-n1b t[Vi8c-|K(~&L Sn;@ՁFe50=6^&jߏ0.0f$.ǻ^:rq{& &U IAdf@͈) eYQie=@xV,feə3ICM{V!г)*ğ}|{)`5QRz#hXUr-3 -#8u;~lLmRCX{Eۧg2w1q`'Yڹm"yd~OHBJRfH˰)WpC,ܸ"*Ya[TY)_͍)SkZ2qI72to <W:Xq6Ǝs ȉLܸ" ! Д螉 ˜ד8J:4Bc(:X va iqEQnpVrJ(@i r.yzLH5r ;6 4QoT69{jɠyk(aq11&&fx[6$fCy<tNV"]gP>:E۲Nb4A#'{Z/"έ `ן;ߢg*kќHEsuі HP|^ 2۳>EP~>Y*NS"6C(ib߉'VLFV 8J.]rަ]ܰ \i598\^#s} ;qǗ'D]WN-? Qjۚ-NRCYU1C׽F82v7HJ߂})<|A:}`z8Rmh +,7j=86dsuD<ޤYS^Yx˙'okBFLRjb~s>Q$Wj{6B @o]*}?\+Su-B 1ӡОʪ㮄G5fgiD8V>: 6Ȅ~2ddљF7A8j YLK]th}Nҟ t9؛VioWo<-yijWК;z 9i+Z?&=®Zx$ N@UaGTUPM,}.w8t]sǥ}z뾭A(1pĭT F“ȻoE7+5tZm/,^e. 0A)f`0߮`IuOnnV6Aйm:>h#J=62 b17zТs2m#c`V Λ,#AFvM MݖU̚du yVm &`h? !R1½4s8eʏkvܻ$`=zUW6uKfֈdt(;qb#BN-jFXVvp/h@BEH;4*{݊>0ĽGs8F}p&zº$XMO|x({ۯO>;^@;j< Xl{S,\D'Dj_j~ 941 k&J*WqDezq0Y4_ãTݵ^Xo\!oI)N[s(c@U!!7:Rc5G4?pԢD_ଇJ$9\0Jbِn1{XG,Toh<2vNjG #C2?XÍpUV܌˛4ҕWѼ.>r 6}X+_q: [Fn+dף 7+lbM& K˲iɘV8<9~&x__fh"PO0'"p>\SkFjţ`Wv+9>;WGԘ]H'~=)/vURk։jzL^o%oml\+yYs?N{ ]ܖҊDbac[v |ڛ͍{}"ypsXr{iATU3"mФT{a^ -&K&J > ]W[۔X賥vZmM]h/<<}ـP2$Jم&6JWL8|Clb#>E5'8nȞD,{ jkxm=$5Xǣx*Zi 1_>J inDɉ\xfv7'ƠknN뎦r 肁 kABq^е^QbO ApP+oef\#-ʜwu+kH.h:)!U mOp/cpZw#m:+B!Pe16jR?JL(U `>Pept0n^eGzGx>k2?8Û3Z6BZRd|ˇR5RExnjމ221Ad13-e: /)/ 6nA ]dq7*ʖ5כ_2~ @!&C:ڮ5R )&!`/3g5#:zt'Dolf-`T˜ =VJ+4@!T+<~TӁ/[) I%q'[KX+џl0jR$v6] yZ-1 |ԣ!D3ԴItHCfǥ7+:,$KD7RmG*H͏xx@"yӰP)(g90 97٨4B<Ȝߑٍ!q@ 74( <*_ 0Ym[]JV[s Ĭ*.9;4iv G,5kAO78t@a+;, U((F-~$oi}]dl#e)>/v j"`'66Zx7Ω3K%zs-<<-w*iq{V|z ^^[\*N+7|I ̛sZX J N9N ? 69ix9"[۹-?_bjqj ͓$~Ģk&w'vV2E_9)@ =\7|Zyu|W)9%]0m1'궖:sò#*m(bP3uTNmĤqi;tQ)$xẆ~ìr(<LW1!0( ьhӢe|?"m@m' 0(jՠ`HMD'(w3N»²OJhh%>*Tʛy-T4\G@-kӨDHj2T GPȰCLd"!Khp]CeGo6xiVUB1?bUV&s/Rô g-ngqFYp,1DC4-".dkD,%I(r[WCx4ioJfڜP6q?@JK jݯNH"vikd_ o W` @ҷnWp!WikM`%y |P8K̿%7[1bX=پ640*HEonTn+PI?`;(eԪU7@v;uQ4j? P|~kA.8GdOYW:)dӘ{Hvfl2 Lf}& 0]$Ԓj*W6ŝyX0'/Ր|V/jiaae8kQqA:4uL?5V=plN0:HH2@ݩk. nJtsɆ[Oa;swZ֗ Y 1sHetcoSV(mD[jo ' H5Fi(^IfVI'ʻV=6e>QJLVrx6adB,}]rUݼѬ iKנӅOSQ 6ANxNa,F>W;U鐮P*m=6_KN2۩81}2ޢ[r)0 qkd+Gˬ`Hd^uF¿cPڻNeI+Q\.snQwѨsPL- ^&,)|"\Fy}3!+] i|)7vNr)t1dݩz}JE"͑z/QKD ฐ<23孆R':h,t|t);4>t+L|a/FFIvm/;9qH[ 4|>6 FX,멝 ƭ)m>q8qI݄g-:< B#OdjHA&\,Zy:Mv㴭'= /&ߡDj pVtNLjɽyEunF#r,aChIfuljƻiF2U~_>1Ly{G#Å^a4Z^dTR$panW_o.viS$]Tf|6L="?x+9^ "%ĐRm>Je>u5{QZGC-W g!;^W~cǕ[1z1Qwۊhh`cW1U na(+ϋy0VR~7 1qzX"G~v 9ƶ@:PT٭V=JErB+6|iM3Z_6(Yzglh9i2HUv,F/ǩp8=낞LAT OhĠ&g|ͻ1pf'0 C@DMX7Dʬ /8x;et5 ld2"麱@L[N=~6:UAD l?1tϲ^s^̨e3L餵aᑝ~uvxAKB2_;O\h_,Y/\T&4o$цg0}A֭~I.[sd3*Rsm WFCM45nɻ%JWb!8i0,T"C+P/jv,G) [<æ;be,+5LA?F[&UsG.Z+Wh1V1wuʗk@قٌu,gfӆ@/ Źc(@2"_e:,8jF@Ja?p e{GK-+5ċ# vJD@v;0\d;Lg+.ٻ8 Ũ֥<6).IOBٙٻjo['g)9&02 ġ5h0A?;EuQ&lj%b~ro[]蝩ۆL95%6YU{+ٍ=z4zjhftt.$DvKyic&l_>Sɴ w7)b+.iEHjݪdUNE3quQRq.֨U^^wZPS{oa1RK@⋭kUsHhi0AF}܎;@9:5ϔ$+ p-EiꖵZ=l (0Lӕ*G> Zȣp:U޾3$BT].Fr5&F ? 2%N=e6,TŌFd A!dmbk^/jY.NE7[/E(]j{E+B@a ۖ Ax&9#Pէ>eCo \kp%);#F&/eO*QU'lH@lw\:0 g0.U. PY$c[> DLw*jQ6a9 mQ&*W?Z8omR0E F|Zya *vY:rXX}*`%+vHx\iC~p<"Ȁm5 GĈ=:)WE|ߍ wbp%aCS7UGbG$0.߃3U; A7LgX[]e3>r">;N-.^7rԕfq)~¹e9E$AI'bbsuN5I:t{;*6#Q? .K2fAǜ=h.4a j JD .lB-j[^ȱPNTzQHwv =6^"(.DVH`mwpt/WNK\OBl+W_*LxD ƓX@f"/Ru׮؂]*hRthAr8LD19߯&z 0lQzPHP<Ъ!bop qGkGϮa9ZX =p hq/r xPO;~fBKv-&5/m&E%VxѰS|t0Qh56iZ͉qs_XRjУXxьv0׀ TcWuO?pwkxxd*o?}NDTK528&P.4m%4^Ggjz-oZev t0ԡ9VuSY(1`4zT67LR!w^S*GԺ_2\- '\04C8@yʲ]͖ځA;L SMaTBW^zm U ~w9A|{yd9,Bgq!AaoT<MA{ZYe{L~ ¹m>r[\s\u*h0|C uDz%!)jeN(X*1L:Y*U[+C鋯OrStaK/\և5 ];-֍Ѷv__b:<.80 &ym.k#R6XnH QKޗ]0܉θ Ϥ t%~\/3d<9hߎhApMͫE 7n_1cS$2sĎ.N)[`}G][IJ]4$fUS sκw\t"\ ?nAH͋0&081M't~7*ہ9ZWF]/<شTQ=%Jy;+j:&Chf\W EZ"5A7,B-+A|^P5t{̏2Z1L ]gS|0]qӜtxƸ;LA$k` 5>0ߛ4 ~ Ǎcy*uuC{pvc0 D徉yF9,|O7 (͖Mk^} vXc%C?p H^`/]N)r$63m\qp=k9̞N_rͣEW `i9jDukm @͟uHcr&˖8/1ZP-]r$1f)YD/ݽ.`τ|| j~_&?i=/5HN[OMN+|+^I $_s@U$Ta_˦nFJ-sǯ 3r$cbnwH:~7UpޱtrCKnc<yGU>0(aL*M#ԫSCjA1Ĥ%erl=\#db gUT`M#=ӖTF+HN'tz8kt]X+2X G{/._\M(t*.pMǀ׉bQDF#%.2I=)*hH9ɛ5@8 w7&r%~"hkgeuPk4mmU`*J- 4!KdgBsN5th=^:lFH#` 4I^UXy^#'g:_L x^à/CBY4C1YS\$P4>RsCx_Ѽ,qOp?cYNzL_i qLŸjSж\9pnݲfl?kt nrJ|N8AlT29S0d}/$_+% -$nvѹ&^zflv+aҮ-BU>dg ye חūIV!,ժYBIycE 8SDtЩE’6\mZv%Bhiuwf?%q(z!@aQgF8ibNzT[h=e\.иsAn1|S,!2 3VYt!d6qZFtTf8f֣_eԸu&["NW=4Caqm2vn,LcBiߐcEӐ#\ gZP%;}wKOPYcV_8X[3 $8 >h"0(tHo@Gyi)V̇sײ$Mj#VID 6>Qu1=)"xu > ê%*@lV=ܪԢD~1SV]6P8V<(K\6v* c 3"He^²cK8V.nj<> o XIsX Y_ HـL+ڕ߭ZrS;rQVyJNKJZ ĠBK_XQWcGj[L֋0=o8.qQW:~qHI8m{,S84O4̭_08R*ۍ*j^d\.EC |/@ɓQHEt-[H4qJF4"=6|^5[-Y:j\f<>'_/; qyIB&\MOI]!}u%'Ri.!:ctsGvHѧfЀЈ{2f{|0m8Wf+%:ca`sj%-<ۈIunle F,6cDDu{|nʭ=_]D- mb]f_S aE7+1| Ny$,Sm?܄0n~xAQ@b-o|` 45MC\ˑs;x`w]Xg ?Nq-`DX$Q54cq,r>.?L t]Q8'U'a.{\&}F+KM+}+2jyه}BarNzZ 3Osm3$gT5XS[_2b505*Nj-ȦZzX7WM7C{ȹ67ha-Ml'69~pfD2N81*Lַu|HwfVIL~j{O4C ¶N?70cÿk(Z|̅C$5_+ɿ٧QlDkWLL⊃"d<i3)hUhɝb 2Za:twB@|®Gድ1*sGk%#bϤ %Quox-DTP~$Rxxp!X 7ޯXrZ`ٽh9{Ta%.F*:z9r )yiel(C;4PϟD0l[308QgUFTwRۍ>Bx79`9g6Ģqy@MEKMޚ !@\ġoPG7U M"?}f͜RsڊO5Fd1|n>~oV#O$p"h)J塖 !|kqq4){=jkZ 2T61ڋt`Ov6;^0wʗ%~(XJz'C6olҼ'e~QZBzӊKBӧv vyx +FDqsj5h!֕d6YK(Ʋ%&JnSRG~01mxj։;cE6hOnܢ|B9IDmL%M1O[Uhױ_XD E`$_Zbuek`uj6ԶB;?YR{>ҕu)vylx:x)K}#kZ-æ[`>&:-xnP/Ĉfw_:bB-he]] TjxKN\X\MqTumNPk& or;?rWko{&۱"|jcҀ3 I3G7qU6'2gŃj!Dq=ɜyp8BLOHKA#T+ >w?4 ̏V]*NV>{*AI}n1Äm\>Cm9mMϝ ݴI.ZBŅ⩷Tj,_n@/%مD/[oiB*_ld-/``=ކt`zpwœle1r Ɠf?62Aj//1nӖt@QM> g+=V楢w/C^6_I`Ug[nG(  уfJ=H;푊ۖւ3316Lv1<WӰKV xk:n*Zy#Z%+'rHtGs$Z) '/&!J:^ޝ=YJ5 "4Ƹg2QK@rx"5?hP8! QC[ #nojvegPOۉIAӢ-C%ӔGjXetx'AK:V~^tA>G̀ f8Bg⣟2snk}4.Uc)3`EE/lR]\&y6ZDe5)4@\! ZF3j{-hZ2wwP8m^70Z_H${v=-U%7ݍV)l c>ɯ 27 Zk [}VQuըJ%̙~iiQrn?NpuDAq^79`^ޓjNWb&&{H>8M_bx9*68%)4ts  ^]q+ODCgxqt瑒ֳq05u, 0.@CSl卋Px'uMhr&5S;dam"nyl/[c\o7fE̩4`R?Jyў@d'$IσDJ}{Yڞ/cJgBQ`˹S!oפέܬDXzO A)&sP3,JN$(~G?`aK LKH`kWi8݅M?:b3>oH<4ȼ~g7^UM/ZS^^Xp' )vۧ/U'9-B:P晅!/_0e.ֲ.1xW[fWNjr6 =词FR:!( kE i6L31(!# e3enr)9IԏD$e{eǦዸ!AHt>Tt'K4۝CTѹ. zMelwq ,)X=0&̶Xjb1n<+}O~-.U `pEǠGdɜ &jN|/Gs%FLvdW,ǣ?N[T(>vҗ=cZTůڭ+8ЕX~w7^SVkYYjzrl2Xqf7[DFJ.2Z|!:_Q7b-88h!q4-|S2V#X)xA)s۱l1zJgkC1Pұ}0IY<`J(z>7B!3,KFI LK|A,B`ĥ6Ou 3jGL.4&VrH8܋0;^W"]a4RM)) 7d ȩ]VI;&ڿ un.-rHVrz((g~Hkؠgtw* AtCL1.;mL@=6BˣbeO75лRDy)z4PZtb*ZwEP?muE=>rY?l20#EWڂ2›y!8tj'#v$61V5CAի-`B?54 #e u/ wZֈuprk}YbY`Ep/R s/lgf\M>bOgvD`0fa~mSZw9BOWp3H) (زDXCk™ax(ƣ4uV҈B]4b3bQ!?=>3YXpGmlg7|6&4,aeck}29S1|m\լIYqP3ZG=0|bw6MsoJY!BJe?`hXS2%S?q\i8&z:AޖنO ]\0(,Ca2}8ݝ[2SbX8S$,k u, Bj᥋džF({Z˛G=XE f{X$:J7F;-:r5 '@!P)r2cJWFMrs Udz ]w2 ^cyd|f@>`XE 1#,YC]Uv|6:`W=I}hb_'(}jFqxxrNA6 d8ؤ6gMq.ʕsN%by%8nӱ7lQգklj|xe1Ӛ[qGi*` %iV]Wzb=_;/}ݵ0M}`r*+a grYu GXθDy: pJ1>V!iϸbPЦp%"~vSeox7 ΁Yo 6Ξ<$ș#^s~ ;wF᳽_&QPBcU|,r,"ƉdSqҷsin̞u_8Cw@ \Q/r/gA\ O$?=H dUR0F p^7cwk L ]nLT5mȬEDErɾziq 0[]p2ң?抡 X3ƞZ U@H A. (`N];.q;LOlpؕWriӶ}獶{#}ݠV_UBZ&A/ T7bA/o#0/,Uc=iS0c3:{5 hĘϵE#x_5EĈ ՌG2FXeq恕)]%m5@qm fmNktE^"1B_u`_1Ο^-zQ\q%R٬|5( ;)*&V\˨GI 2z-g?h6 8!\zV*lC{;SRzvA$$`S+oAYw"Ojn_j&\ >XGup Lm6{-xS s^skaTBqflEZhޠV>ey$}M=l{=n5-Aw \}<,r Nom[$ĕ\))\ ,SYb꾳LIɣ{)zT.zڀyG+.]e/X gDkOJPqgHc÷N4#^? V%46k WA9LNhIwA ɦߴ%KSlb1SzKE۰%4n*r,-YweCirJ17]`{дWV |\Y42Th0rtJ$'F hpݸi2͛Mdz) wRmqNx Hʌ(t?>%E{$?25Ժ/Q=shGJ<[c}8¹bb_Z]>"ٹ>YUG!,'%DjPxjEف1ӀV T0hF NImWx1cʍ~"R`!9Nrl!PezX;~ m]8pb׾t59QU U/7Byg/J &Ur6fFJ-5*ޝ)N8=et12"\"TwU$=Iv헪9Q$%z.Y\x:_6rzAqU.دRec؂87!o$,NzvR S|ABZPp >c,e)5dE간}r-~`reTG~zgLfl51mpOeÝ>ӡɦpOi-Kʄmqz$v1~ dɥ'c|[fhǝ>:h vR? =KOK(w̡rhPuR s Twlg:yJj= h3XX,"T83?٠E ":6Kniby}X7} @[}/vtAR_=A$Ul u=\qOZ3,WBl5D EўCLoM})qF9RH{f=$`Tx1r:FT͘ [ za~V u}{[TIk]O|Zo+>7^Ipzd9rۆItf>^[߂ d$>Ai7Hp( ;\')ٰAɑCl͓¯P|r,Zi1:bmI攞qLpd #Z-YC\$y| PhFMf9lPfkT"g aT|0?EɌ(YiSOxR⽍$f٠6 R߅sk{P!?aC'%dC>sSg:1r=$Ľ- dBj5N g 1ob>mOo!w+΄ZإZS)oD&w]d5"3'Qc­hDWro-X"4fזz--lOj߁Nˮ/3XcpWG9$x{ u9MZׁ򙬯< ǵY+0tAb{ȗ`1x妵ɬ~ LGsKgsHnbb w5r,{8! EVn[2l]mC5Ԛvȝ{J}e/ XLl{WhT3 7WD.@/!qk\ ӯ,+0onnAt;!|<"`b_AoZIihtv6J[=ЮpԹN=L }63I`Tw,rV@2,;3Dzŀ@ھ}C?\TO ˏ2jNӦQ +C ɼϕ ηŎF/zoz2L EZ"nx-,/q{zLM(122 ֖tQCЏBgc3t:d]'[Zq(SO멬ba2cOkS;ƨhRKTWp? iI'tW,<(-s2xzl\-}NpRUHA֍ÙRQd# m..:s0q ^qFK {?M-- ײ2s.jzˆ@PD)rɌJK:ZPIwʔP*zl ]m11}rM{b!uLw>Qp$Q] w _=hTc<U.Rcbɯbu1s32*W :e햑δ:Fs>$`(mD)g5#! T݇ >R'-ΦByO|I^@ SY.M52>% hՆ|H+nGpؚA}&e"ių7^W*7}ŕ6҇XsUSpq0Bf&>0jX'bX3mHmA*m$Wҗ&1.m4o[3@"(m9-7aVz͟Ú4kAyNJ\ǀk 3_vڡ-k eү(<G%]K9`Bo-O ^5>ꪚMP 7/܄j+ W,e<t<7i"e<yA[l#JRgQ=#g{ّvkuQ/EjLizxMSY3&6S>o<›H_œCgQEZ0VShtCD#e}bTsL ǜ?g{^Ģ)1~Sǎ\YXl_#pf`)??ma~4UN`!3&\'/Oz/1pV`@@i(%moX1ߪdVeCp8mgqqEdގv yke. 7J2Axo'}gh{X1nUgDTnDT)א@'8;nj ZA{j=mxF6n+dIM˄AWKaκ(&)Qru]t \8 MThƎ(VFIH(f] jj=vN)@^T 9: Z c|pD! mH]!.l2SMo%|hLsechLD+5Q 3Pr7:j, !o7SR :פOhey`r[ѝ".U;EϸQ)ѩ(Sַk`Ն Qn!^y_~̸ U5Zl#fv>-|הeEͩ;l.E }YꆕPo֕sIM^LѡԄWgGa %:n$r}AdW/1Hd }8Ac 5hHi0GqDgwhм`KR޵*tzsISHEV(d著Y^ɚfˍ\\b;bZZ*ɨ/ܭR&lKi|WO k3"_}RZ=8g =< S$6Q"@`f!O`3*f:/y icQ*#qΨyG;E=)ܨ-ġQjk E(Gѧ"(o1A;pk,MDB!̰@?)e HL4(}t 6 b 1GܷLr]рߥ҆IEٮV@82}Y^;y<R\4~XyYEΒ_ (VI>bW{DPuNe4z%SC\0L:6]V{8ꖐ+<" P1YNm~_|Zf\pCF?QIblًI 9J=!'FǼ%R!X/)j&_NY"IZ|>ݎ၉Pan>leX h VDcԊA$Y1&zǞm;B#b{=iXŘ/"HJ9qζOkcJICg|3 kJGkз 癗 7% &C]*ۍIi 1S=ئhG|m4L3zyN@ (7soK {;Y0w" eEF2&H4qV6ׄg;Jʱ>2)k.OCiyCpmU3x}:3{N=-M#V(ߛDLů-$2S}͓tXDWNWTo!gotM.X܆&_E\!tQmՄt 8A easKlfuJEjp 4[T6n Rw[-@s⛮nUy74Tr޵ۖ tVTNTr2w "P]b:_Z6lLXl5%[ (ϒ3yTLKWD_ +. čod\v/(}.y (ƯN-_Upb$0fM.=&[bŚ.TnCF Y!/nY P\<â 뾂8fIAoR2OLj^m†#>MV:o𵇉 xQ*Y@H]:tAYraljz0+'mh9 s/KumVj"6N+ }߳VcS{˦Y%Q;+zX3tn7_:v b&!>':ؕhm(B8AvuD7S, e 0895 68d"Dx8bt73ózc\IisznI64:?iD|f%Rm(\ȓ5遁r;W}, VWO! z&}g˯[0~Vv0kT21fS91,~h&/?B/u<z}h7>+F`eU a5ʉ"m]3WhS>̮$XS_oׅۥ2[X#df{ZvKO@qD; wzɇlW;ʭNxXfL9)#m frtK?< I}$V΍;c6.15!=dFOgW5e$e#Elnj}J;x6eCK♥uJ;b{Q5)~lVM> tJZoR1#%* EU(RQZ@+XvSz6˟GKESxeтY"tF>(T[ḿfM$7z` kԸ>cC4쥹 @%y)q[^h܉3s&X)~6}wPϹX_a$>v6'p$S u7Qx!ϨIHԌ"Dk|F3ֶ~I)C/*зBJ*> D EꡛN$6B1p\/%y]=k:?e:Q\܀.S`ƍ~ՙ+Ez״ f=XU% YsZw}1ϕ~ +jPp碘ބCE}1ii/*q'YtVa+{ͨjEWӷgg"oie,Qfjb.K%FHY3шɀB`-fEZA>K:dqR*ĝD'I2WU2 `3j*;alsfoȭ/L7`ҥf]|Ջe$o& -检4[( zEһ.=4e=4k\a,PLon{^^GWȊ=a#Ҋ,]Lr=V:m!dI *p=wsc㧑 FjI"yud_?]-jѳn;\nH@%T5ul6ԖܒH?ahv*5n)4޺s@t>uKXW7-%Y$nNDA&S \EZ6QWW^kOD&P0Ec ϕe*w/*Nv)UXyV|~\i#JwsUؔOL Պi}~#r1~^tc6`|4;L. =k~߲U;`<75G`Xk 7BnUDrSHUъ+Qt%[b3NvxKа*V  VpдH/WB![B)~7]|pr<pP9N/S00RԳ>ArS.ـfZi[i:&5vg?<π|H >\>i)hǁ^坵nC MDXhL#0b3BrIȖHfϪY-@2Q_#/])y;3s;Y{'ezr WBO8KU袋K:TfݯMQbjB5ʣ4b7k940hW5|=+ %a,١侱ܒl9qh$TxhrDA oOb3ͼb]@{6V7S|ꚩ.%#jsY <:55Hv?X⚉"lqS 68m/w7q|7&AX$v_n [_7EnB>0\b*zlI,T;i(q1\RRlT'y̼yI^c&LVK{ %H:̊R}h}w$m|Wmh~9y~p"z^O֬^H/.rvx|1N<_DTHQ^a9wQ)F W@D:y.;,`FQ$ILP Eϴr29Sjs1 QHw8peB yR›p*v_Y7B|hUWĪ(R4dJomO4I;7<TV=ww/x6븚6&1EAR>jO@alu#N=p}r'7:>ѝNi*M3\GQN˘]'D;6 %+ӭ%r61gdO4/`7NU}+0WI  νLvh]uVj3{ؐbHx7rc+/5f V,r5=nt"#Hw$pʹlƕb!~Q@j![l͡=$'dމs "hCZ&k&vMČEN&D~+hBFbZY#Lkm g B1 +/].!B0|eZ ƳW@Sl*57Y@mQ Q0m@WQ@f(T$2-p]'M(OГ0C`c}bw)܎շYCZ;o: yh2_i")bN^"l1אZ/ǐt,ya=}ҁը{q|YԼKyAm#ʔ6ٕn&kaLϽdaKuQ܁} 23ge80m,<꿭*@:NCr[|MnA"`ڳ'Mi_J ~#J޶(MY %,(uu qŐ5)1`.XIn3{ډ{ⱈ..d߬y$Aj?ϋMXi&4 9Bq[I''8aM=lfA!n9M2lzNڟDP 0NBfy/.}Cn^wo_ЄQFU=8A: 2N j9 S3g؂W$yN%j gcyxKYėC;y@di/ \oZw ߭^ /^P 7 |%ΣpL*ӚS7GI4rK5 WdZp]d}a*k,l]4%EUfE,6B033$H*#KRѬD 7 c<7]e>13 zO d_ugpy(ox3@ۿ"vA -6!,c, >L+2,q1H6=ӹeIד?_jFtYFm 9^D"\6?O7,*zk:܇!Fs@_ Rjt#xOi3R?f1s&wKcN'. z@G81_2u1"TCu;ǩ13r.\h)uDXV? 1쀾;Vi F K٩6Մݖm %"iTT<:?Me2p:8>8 . _ЮVp8ꬪukm h񫏖 9>ɤ)/~.|Ĩ JJS}^QQbKr d2ߌǓ/h`ZG3c.9cL$X ͔ˬyLK ۬mί415@ѭ)GW"0 ًxgAp򀻃@jxJ ז,Rn*Y]HVn&4k&1Cj|iWw[>B3egpF#I bNsٝl@D/((^[6͉yWROCD:@Mc,B&8rqcXm'F,"ӆTL}!q2m]Uvjp39^}.K~(Y08eghkڛ [cfwcMkeWv/ֽӳwF5Q9o:vʗ܌Kq5Kw<AF;RCWrX(-Gvo ̀5IR~IAp.& Ke ^Ss 3hig0[C1VpcEH@z#+\Dhw̯@7v9$^`Aot큨L*o ޿i.eGqb$M =x3s فWEA$3[k,ni;xbBaL+KJ MH|mqv.'> b'+$I: :q_{oIzy`/҅AJ־Ju*|)< }~MMwEdh}/Nɍ ;T˿W@cvoW7Oq"Z9;}wE˿:#/{;Až %z bX&%<]'i COuw$4ھ(ech]9b$&SriXc~k&DJSa.Z==Hi[5Î|(̊a~jɃA]pmXVD{npmqaI2!,JrϬvN饸`#QXjC"uȫ}b@ iPӉb4h D Sv.57S6ݷ!= *) r<~Hhۻ'T-cHX?["ʎs4XDoERkqtɹGy+߂z237iq9J;DR4~ <8R :}BE\F&4p 0 w|O=З}O;Yd;5xꛤ;!_f؛j}!k ZS[ x _/l 5RGگ`W |s=0\i{'CƔJjp7㼶2,:Fk5@rH0!MC9i!K'lN#,Д9^UnT)ޔeWFmz̪l"~1BRDT@ÕPzNQcDTdYNy"px@ p8-|t f ?v5 2 Y&Ԝ@_c>ѸD٪ֳ-|{(J8wďNdJSgAbEj۾ri1ܠڴ?"`rC F:&\ﲱ-&蜪e4jBCRtq9Gsrl% ]+yrH#qS^KLɗ6[t1DӍ ̙aW/OfF?ɓ>|s34&co` ab[c1ʅW<=&a(v;Xu/UH|+æb3/?rWR|#㗚u 6)#?d?ۜT{qf`(b2cr&̣3pwkWH91S{=3m<x8T.t<؂)75'bb~M}HՍ3pdKdFW$5jŀ'e/ȩOVg~NCl%uqk.9e$ʸ ½Ma+&[MPt- Ӄ<2 )>ѾOK> 4mQA q~@pM?DZYZ`S6YWGxl<,&WNފ,4%m _O+&Ais>kxz%XO;=7T&5){~mX/J+3N]*dyu`1o1zi ] e R:BNlFpz.Ѕ>5&e&C'a\&J.aYPxV;z"#]Ew:o"Ӡ-C5Jt|?)9ƌȀre u? .)c] JD8$ƛ}tz"Nz.GȮe-V}PNP=1Euٷӈi@n蠋d(kOnWرs;.g)aLxQ0>KU~籅Ҽ_Hڸ. 1?+iZRL식k[I '$Mĵ|Ԣ^a7E\]dds:Z:CVycwd/Ұu>ME2{^@I7 D>bX,s~ |PBoiʯmcN^C a Bk{^?/6XBTox3  W>[?9$:H2U$PO{vl7ruUav 9`633@b  R7\5+C|} 3DBER~͎OU3qXs]titH^TAUǟR|ۆ!@OU vc ò]w2Qz5RZ=`z|4 ɰYD Ȓvkn#T&$[zFG-M{ %u7PܧCjAG?O tmGAg]ud"ۜ3$E^V_}l΄.̴T;s1=!Mo~޲>qAްfyD t/}IҚ8e;u/Q6(/+:G)sDLN\{u=9] XPn\M>yRsWa{J(/2R+ZC`%4L_X~,|m#ԋ_n'ΙҖt.Y. VMf7ȑ m6.ӹFuYsXeJD2?0zρxbJUZ g}[]l=g~VK%lEߟwN@)l>^+Y8?puXhLڼ )ޣmήmt(~;o=E+[QU)11~bߠd]e+ۥ]?h/ _5omc3$|V%1QϳROJGsSޝ[ Rq},|qο1p W*0{:Aj;{jv H~+bM"HYuz9ŝ+{'ܓYBn rw&c"#92wfЅG ]Nk*el;$Ī8.Y\ nu3P֓CC5t}1Vwcu\=!9+ڳ(~4ȺMgOJ\u&ם W5l M/HMVcSƶX5~髿:ZP9z<䨜%|o 5]}R;;h u`ΦFFgb˴o]0 9RDdT,N Z8kWg4cBڐÛ:T%T}b`ȇgF~#>I$Ӂnv/RLE&op{J~8Tv3`0fqOܠ$.eT?/&n2mI" _C5FJ`p'˙J[v"C6$(.m4MX J7`۝L-A$MBiMj$C.I6R6pQCm e1Ŏ Cl7cXB?b>!=k5/U 2*R ;+?sd5;1Zo!<68Wccnia&B2aI-6 CjdIdrcMjɜw_T-oGye@\ջ\|FMV=4JYWoOz&r@eZ8Uş&>8hXNMUg}6n8s"ДJp#:%4!pé{rE %1~7$ yN0PU#Nj*Gn9aM}^71B%a7$|d|YVtACҥVꪇ Dg!t󿛨EZv(ίօ #ypz ''CM匆%/q3䩘3q*.CXFm0SF¢M qdr*\SeIǣ(ٹa8fm:u1A6!%+2z|{㱪:{K&m`$mi`{YibY5k-#dm۶m}Ս{b>oH0Erܲ_+Y}@էD P"ɂR\CSDʋU :؛hfIjXى%!0}0 6 }4D,_38P=τ Q'mH{"N֭96gQ mVFXˠy:B 9=b BܬF!$IdvpitticGL u.X *qCp{@&_14c)̕7,pO A.^P !z ?u[:'~}Vf֝6\"z0(GNٓomp?~Es FoL:ؼn^n/񝬏!$fs~8 Eej v/-8~-m?;QK(Q7ة4;w &v7vz)bgᏆH- wg:ꗑѶ[xnA;]z-KK %z_l3AHyh~xNO~4_\,3ڎLDfWGNx,1dc(<4ZÝ~̷~fYg>`T߆QYqmY:}}d,\H"H !t7q.-ӌLL BDH<&C Wŵh~"ijΖ@_a [ 6zƹm$۟*"цh^Sb2R&Wx\jUG.žPqx_P ,nx2K.axUg'#J"KDc/eK"79QpaS#\@BVN_y4tS2V{!+z qgᤩ-Z- Bv/ŠQ^/rٛ%{?9%4  "kzD-28Irz3[R朗 u <&@;"3Vn~ܧ^M|dB`ϖHiPie.C $#-&JәgE`)1(ɻ%?& xFg=0׈T ʔ;EqY*g42& Â^Ll8]S'Ƒ'4Cז:NeAbU`6'y$_t@R\} 鎖bk7b5ӧێd15>NCaRķCV%kɚAr@^i- >3: vciD9SYN S@}j;%NL1\uhX$zK9,TN >Y|Z aRcr)VX6G!',l-=TVxL3ʶ(w(qt* +0 |418E")_N y9Bw f.`YP7ZDy7Nornx<0o!sk#>u5Ʈ st-#OcpP.rB,G> 1[uDK8'; CzJI!?|)|@bǹHD},M96`MM0'&~sc31Rh_2"E@`܂,,U Oc>A`pCW+PT7[TfұgY eis ~ EiӤh3fq53bsvaέvee &^qԐμP9.Nd;CL=sGzxv棽c`WJwV"b\_LAxQsq>1RʆJ)h't_r77L=툨;N+P^?*bMJ\J Eux- =U1aз75\#nýxHbwԒsg5]2]|$裁@OYa{h3T֠k8.>r0XeO;tly5-b|Un}s*|wC[dpOI]VE;c1& c2U^B5f#UKbal w@CRGuy1 wCkk~D0MD_ UeSo5k%}4`_  iX%5Շ2of  6 Q~օ7P(iL:# uzxRy* hQ>y75IkI,2?t5( 5t+emυC;tP+i'Ϯ_}Ix6֨mع@}[Uz7\d< BzaH0 հ" {WEV812t.,y bZaD>Yz DMK chmp{cy='OA,{xx"BYMa"tN}n19wJ2 Pqe$(/HbKP-|~4s\*񟂊PrnZ}hb9[+Tg؜FaLn~^M [Z!`xܻtPnj\ۦ]$مz^CrMV'ÚJ<P6.mUWJ&Uh|Fl:(?MK*L| qu4z[FM]rLa8LY4XPҹEUFHhRq̤"ͬ&M&OW'}nU\OeLeUWp>4Y]er'N83Ϟ1lCJ0s3*ym$|v%r\L"-3N=עU<-6C{?FE=~^[PWqߕ\"ZtQ\yO(t~AE3.{?AܫECBm_ 鏍0v/n`>XLl'MO$KDKz׻9UOϨgpJrǚ:xћ ;N0 <{=ԡ!r'Bh6rYu.DC?[˦ԁQ:Jo_gtZ=GH}i6& [>cnNnvx _~ Cn,!A~;5.ٌ;4h8* ފ?V /B_ܯ@GłCX,^E4Tf:{AiZ'AxҢ[hJU ZP>3Aa;Re{k9$:[N߀ٓ@M|dF#oj՚bg(R%uXR|].*C,iP6tItst+H eAٔ%DÙb,]Mx ][P+B9٠-Ad,tAyDڈ|gѬί$ĸBˀ9N3=RGdH <;:p*9]I^f'9ڔKU|c5FFFñ`ш lGSyx7'"x#'ٹ}%UUi aOd|s3u53ՙ6u}F9#hʳ{Rzo c"&Gq]^ p;iPoXKSY`[v}U_1.B. \_'ɟIιC.v4Gso_R xqq m&bq3?K t~$ZN{;*Pii"fvX l@oZM#?p6e)J;bnN,sR6t&U1ue{ >Mú8gӆ4 2I0vz^D!|aO h겞D?_jN 435˛}m RF4b(BY3˓b`x;ZGCvHyͲ #Bku>oG.iqq %,&o*":3n~v*6B21+h o{ze7SwRᜲL+߸b6dIDnu6Г}ͬ[:weQεզ$^9RSٹn `BԃvWвKXbAG2yu"EGu5Ϙ~)HCP1uV#dL>7>)'Ԓۥ;t)O3"iȳ?'voXimЦR0N>hԦ?JH F0瀖-7j>u4Z3s&Jx twIG!kɄ[G~>MeMq>0\̀ TӄdT4Bae,/4iK Hs; s3f. e]Nd