python-Twisted-doc-19.10.0-150200.3.18.1<>,i,cdp9|Gn|pN)+hȽJћ`JS´E e(]LG1Uیxi(Ԫ1[)--j_fm] 9s+.`pu-wGfuS\꿞|6\(cbcM_Be@5D,&u@S_Mlff\ނtݑ?8nJ/Ab;/]75\Cޚ1BoIVc/,{"cgU>;?d + r48DHa  D t  ! \ TLDtw(8&94&:&F&G&H1 I;lX>Y> \>8]H^kZbc+defluv4)zrCpython-Twisted-doc19.10.0150200.3.18.1An asynchronous networking framework written in Python - DocumentationAn extensible framework for Python programming, with special focus on event-based network programming and multiprotocol integration. This package contains the documentation for python-Twistedcdsangiovese'SUSE Linux Enterprise 15SUSE LLC MIThttps://www.suse.com/Development/Languages/Pythonhttp://twistedmatrix.com/linuxppc64lenv pp(>Z=O3~N3  0 5>+"{B[+ u-CI1)  A Yz^8D4mH` U *Ht 0fz4tL 1  = tG  +D5i_C X F:0 ? B | 8q' =6t6>.&?K@G8Kd*2]%WiT;w]'=sc/ij \IEFOBD;]y^b{LC\k8*^hO/_"Q Ax 0OC$# Myq  : %$"30mSV+   zW$> B  wt"t Ad$3*9Z=% % Nk+10>+Bikp@i; [=4$G LO% M{d C j=Psc#W\.[tNcQO h -s >M edl T%{5R y@eQ`|j_\r5SxTWaxn =7 c  m $ Ip , :V$:{+9o^vd%#. K~=] ' |@A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAAAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AAAA큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤cd\']}\'\']}\']}\']}]}\']}\']}]}\'\'\'\'\'\'\'\'\'\'\'\'\']}]}\'\']}\'\'\'\'\'\'\'\'\'\'\']}]j?\']}\'\'\']}\'\'\'\'\']}]}\'\'\'\'\'\'\'\'\'\'\']}\']}\'\'\']}\']q1]j?\']j?\'\'\']}\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\']}]}]}]}]}\'\'\'\'\'\'\'\'\'\'\'\'\'\']j?\']}\'\'\']j?\'\'\'\'\']o\'\'\'\'\'\'\'\'\']}]}\'\'\'\'\'\'\'\'\']}\'\'\']}\']}\']}\']}\'\'\'\'\'\'\'\'\']}\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\']}\']}\'\'\']}\'\']}\']}\'\']}\'\'\']}]}\'\'\'\'\'\'\'\'\']}\'\'\'\'\'\'\'\'\'\'\'\']}\'\'\'\'\'\'\']q1\'\'\'\'\'\'\'\'\'\'\'\'\']q1\'\'\'\'\']j?\'\'\'\'\'\']o\'\']}\'\'\'\'\'\'\'\']}]}\']}]q1]q1\'\'\'\'\'\'\'\']j?\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\']}]}\'\'\'\'\'\'\']}\'\'\'\'\'\'\'\'\'\'\']}\'\'\']}\'\']}\'\'\']}]}]}]}\'\']}]}\']q1]~\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\']q1\'\'\'\'\'\'\']~]~]o\']~]~\'\'\'\'\'\'\'\']~\'\'\']~\']}]~\'\'\'\'\'\'\'\'\'\'\'\']~\'\'\'\'\'\'\'\'\']~]~\'\'\'\'\']~\'\'\']}]~\'\'\'\'\'\']~]~\'\']~\'\'\'\'\']~]~\'\'\'\'\'\'\'\'\'\']q1\'\'\'\'\'\'\'\'\']~\'\'\']~]~\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'cd<\'\'\'\'\']q1cd<\'\'\'\'\'\'\'\'\'\'\'\'\'\'\']~\'\'\'\'\'\'\'\'\'\'\'\'\']~]~\'\'\'\'\'])]~\'\'\'\'\'45d73673d32c0fd32ffaf160a545070b576585aebefdb3eebcc1dfd4ffd98e4755b1f7657c6383e2d4526f395443b41315f6fe9f9cecc601785d1eba506cbdc4df1d300d23dd9e885af4a0f83cf3d87238a22fb7267bea2c470189de3acbed2cc269981863b53e2f3573bcf53ac537fcfe08d6c9d39e4dbc4d31b6a6fa18e9c2c269981863b53e2f3573bcf53ac537fcfe08d6c9d39e4dbc4d31b6a6fa18e9c256830cdadd0bcf42826cf4297ed32d46a9e7878f06703d13bc6e66375f0aef9d9a05b56310ca7ab215167dd47b525b18262b6357026dccbe92bb813f20e7fc3e96fd50b8f1b659533d6d25cfcc0f86648d3f9731a92a3d38e04317a54dd96614f5910188ef8d77b5fc7356f52e388d83e6eff41c33da75398e660108b8acfc551e1a5b5b6b1b0fd72a9bb856814beacd7e699f576d69650090c468ca07364e5a0ea299164620f3dd5ec6161ab5208ab7dba2de59f6f21b1eca81486ef97cb81579e4ecdee446cf34cced60ffc64be23c4e5b0a54a7a3d55e91bfb2e7159b2dece5f387a3f941a4af1483cab6ffd12683a94a01daf2c262fcdc74a5facb95eaefcaa6f9ee385fc707e4f8cb2b3ce2b1963aece9199dc789878b9749ec27c7dfdb987585221bed491c1fdc1f399e4a189232878a8f09025f259c1603394a72de5799846fd0827fd82ff1c8b6416b4d6ba2e6131df321d6be9f5180adc1860abcbe17b378fac846b0423645386cc86f7975567e6d10027da3c4a80416b7f9d71f54c8c33b061622b607982e0142c549b48384a8cea17b55b34c593fb9978b233eec2ddbf3df6f5a10efeed327ffecc1c0093a82cfb9e022605577c274596e8e04a17cb4ce1c81d4ea8d1c49d0c0401d4810644d6473f131d6c2f1e6c91ca43f5ef07902c5cc719e0e1b727b48a634c639a63c3d362085b03d8b0f481c4d3b4b2c69cfc3379f081d3f542de64a927546b1e77d020e857c078110c8d0c11cf8b8fb4948fed3e25c15c07c77cacf4b76a9a0fd89e6ef0cf8310b7ddafc932f309d81204b993cbd0ee14948fd15cd17658572d0e17539a0643a49e95c421e3a79ecc0a6e36eef79e3910a4ade628e7368e1bb752df5f4a66579b63a4d38323f035d80f96e2ccf3431a91638a64482152ef18d7323d2ca9a6c09fb0701d6a12eb41cc6cdb1b2d1e8fd442b071b7ba1a4ed698f9621d93a137268b4c11154de93f8f150c632c026e85d1f93f934eec901fd571a89ea9a8c923adf1d1756516b9927642f3326563d67219e50e0a4776b9aff7dd3ddf0d965719f0eac267fb5cd8cb87a6f4a4cd7cf80149b5f17cf86129ad8171f0913a50bd0e51d4bb5a2223271ce56115c2ce45443f800cf300b9b2658c8911b02184f31e21da435ca3ebbc471b1f07e25b9345ce845c916b6268fa21c0077aadc8424aed7755b433d5f2ec277fcc29cc44d42a3008dd5dad38b8505a35d78aac30878905b637cac649396d15eff283e33f6208f64b77935d61923e6b58a9812c9d91d43d2776c6944710ed886e3b8b6cc5fb96b5bdcfb6982ef5c216ef754e7ff44021d255d4d691d057caaa27cf799a7b6c2b3f90769d671ffbe8c7f9aec946a745e3f41dfc5935e8efb344768c06e31d0ab160bd5b8c76e4634176d2739c78de0f037cc350f77b6621c5a6b183c4231c47c9a9b107b2962d8a17c18cce53fa0d9fe23913b57f70a885c711be75400dd01f989a7c02d47df78cc9f36dc6d3fca884289bd5b9117b2abed6a85f4779a51f24a6630743689fc1bbe1e904ffe57a1ec7b929ba14ed3698817c98e85cd80f69b5beb905c68d64e8d9746f877a7b6217e7087336721ae312e72a934ae4b21ad1c4f072a58e0e0744cae9b3ad1b07af4ee748c8cf7fd01df47c62d9d43756b8ca0013abbbb845ef49ed70a28f2c5c2f84cc17f8c37c2d11b9618d8117ef22f633935ac4d3a6da719bafad206163ad14531f3312dbd6543547185cb5daf5cb11ce9c60d0e4b5710f81c6a5980a1c5c2e1690f06e08762e071c21370fb601cc05f4dd4b23f33cfe1354a25ef76e97c218e6e49a6f2127070a718f1af306d0b2d8c60056d1111a75c3bf76c5da58ac6aa6a4d9449f310d21975dae08171bd955f6a8d46a13d16f407d0c3caba0ec420d8fe1f055faf22a6b9006001a9707413c12c990ad0f22586c88f5c343ed7524c70f94d63cb279a7096d65f1c48fd726bdb63b5edf9833029e01d6a638f37506fcc5896d82ae7040be4afa84efa5aacc5efcb2ccd594c15bd16812670bea42a7ea40aaf96b9edbb35bfa548d50eb056e18f3dd41d3ca7805ffd971501221c4440db2d2fc23bf01dc198a3fc0f3f272975ac212e239581e19b6af814eab1e76201242e6c348d6fe46601b65e25762459c5a4bd7eac08f44fce7b6c6a253bb157371eba9c86ff84c816c6bf852653f5013387533eca853121234ea814952dba3189db2659d68e6c1f15645dfa159adfdbe14ac03d244debad277ffb6b47850f140ee28435fd92e3fded2c36c98730a0a4447864879c1c3adb3f1957e269018802ace30edade194d41bda9827d77550e6d5762df118ffeacab23fe922d66162417ef5335286d6b99a17e6626789c7c0ed35166f382de72bcd40e5538b36556986e3c362302d0582f9e94699b37e7bf7cf4e41095082f356b09cc7aa9b07318d284a964c8073076eb42e881c1172735f89519c553dd27fcdf03bf7318a80445491b700beef980eed191718fecfbe7b3012947dce611266f0b939d8618dd39010cdb92e47e08d7809464e5dd0c67ddd5a14958c5d879f03699824d2d522cd5dc24663b86f64ffcd2868c178080e373823c328fd2c46f2d7ef8b604dddae8843d876f16e3158a5545882a24ed89901c20c4a80852cddd88e1c6df6a38af92013ea9b3f75be3363fbff3c7c2d9610f75c74271d4a4d8239cc7420007787cad850d70c1eb4785c81c01e116ce5cb7798f0afc478d965759c28869199bd1fd01096822ddac6d5c1815d796e17d37c36f5d1c0ab1b79cb665d8ca082fb5d004399c73c3aa78644c638e72aab7e9844780ffecab706a337efcb5d0c1fe23658b867874c128ca97b3e0d757d17006344c260bd22a4be95c67d187ce75df4d6d0098686ef4375df28d9a9c2b4eb3812e59344ccdec6a0531e3b02db46417a176c14aef4382d30ed64769bf7e71c573ebac27afd406f0c4fb524adc94f44fd079542fac65744836a4f72c1f1205993e75925e3f24d60f2f44746eae9f5fad5590576dd1bc4d97f552df702032f5abaee164ad616c5675703a16a1e23d2dbfa80c101573cab39e2dfaa4a739970caf31f420cf443904a4a38e0a1aaaa7879c9a8ff07186fbaff202592aadfca7cd516d4076b9990ed514ec67e84cbfa3bad793ad6e6428bab3401383ac102e40b3139de842ffaa50c1d29f8f71cc6bcf7556ab21ce3417f79b8a363b99f45c66a42851d578a65b5cac8bcc9cc5228679f4c4b95553882157ac9df4ea18694ed8d59d865fd3bb78a8abf5c792d44c80a4765fcf4f08841f00b2416f4444457dbb59e76df9b188cc8c6b42acbe34e42057a3a10efbb229b5eb7e54f883c319cf48612c951b5f5c2377d5bf2680d145bf1247a4367d4f8d884b41c9620d236ba0d9903417b2556381b2cab4db5688029b6709148f3b1a89d7ab03b247dc5ed4b699a483c4041ba18029fe1eddd4410285ed55feb423edf7c4f71c6dfa32d711f0908c672c08683d4296e1bf9ee053093b52bda4278c8b7525e45c220f404ec5b95c79ae75868adc47e3f560e1863c7c748757d58abb1bf3b4a349b7333174719dd107a9f9015f3533d2dc85c49863d5b1ab14596b957994aea6c96984390d14cef029fd76b874d648159f1e6180a198a659603648710758c975c566bd94ac478d05f701934beba13cb57eaf63ef184d52fdfa7dee349a4640b076ccc4c1601128cad3e55c2df63cb72f3b3eb0f10ff20243e470508b7f945ed3874fd67eae67530328575ccd04d945e3574ce952ad18c366fc7bfa467cb6e1a1399aed3d291e7bd3dceaabed97cf598aa199c0c8e921ca4ad82bac12138ae6596d6ee24f041d6f09e65863b3ef582707b5992bf74d90e1d1cc670e8548bc3ba6480961fee6437ec80b25d78e06f4a0f70340f6fc930ce9c41525a771972ed04b7122e624a2649b847b6029da709beda0eedcbcb14c95ce46acedad69948ee73a00c8821c7f81fb3f8cacc8373a091eb2c575f9ca5d4dc35aba3ae39b9ad8c84ad101425ca0f4cef6fe38606bd9c0ece8effa53df4403caba106ff1d185040c7e42249725f527b37bb3672faacbf4f0e3bcbf7a6afcc73ffce0e8674c3bdde06b664919ff9d0bc2e853d09dcb910ca3ddc3fb32262607dd677e174b6baab2748e993fd7de63aee065ef85c8e082161221c4be9c82b4eabe17d81929c0673efbdfe3eb08baa63e0be5f28608344f3d17b3faa45c54a6084d835472cc85cb21d97724d511ed16e049bda400d2bb1b84c724dec6a9ab9900ecb3e02d4b03fa0cadd4687bb2fd219405091aefdb5b9cfbb80851c51ba2e748818c40ff76ff41c1a102bc8118d8696448f264efb93ea91af6bdbb468d56e526bfe631b158ccfc9a3c988680824d019b086b3375a1092f194041c8180a45966e09c3da92d942cec4a58977e3e007276e6c27cfc9ae7315e451b6579e19ff35a10b0637cd8450ad2cde41da1159335bd20c929e32e5c7855ab079182c641361d6d2ac0e9fb6215018ff3e666ea724ab7b46a48cd8112bcae191e0956d6050935991bf556ea2c85d6e83b5c77e5a152a930295fc83194010e2e5809de39908b488f5001145e25612749659c02ec0a3d6e8f2dcc2dc9c4cb2e94c342d26fe1074a29f691247e4b6c0d81f1c785bb514d06ba458f6c19a9dc7386dfab0563667a2399a87dc6ca0563ef3723b69a20a0852b89800a1cabc3c1a48f3c89d84da060300b76507eda7fb0c294362e47e05b07a5b590c50f69298ddd80782c9cbc813feb7e2c3bb077948d129f7d8c75f4682e21bcfe70140812ad8696d0ea0aa6ff833500d264846d02ef164b3e61021c3f0a9f12216b6f39e48d190c5a6cdd6697299369d30fbce6d680e7c3fd57e591a1e2efec2c73da751821159fc15651cf6151cee25bdd9c3f40e8e47d67fa3831c2b224227b5166ca698bdb1a967ae42877be6bfbf735c950e9c03972147f4e9c0c04bbc279d0d72c4f89234eecb11323efc183f7267a08dced49e695bc32bdfb07399335d5b67dae7c7ff7588582a22f5f48c8a5c0b3e56ba9c50430ccaf3cf83b087a6d3bb6a6bf3f1fbf4036291e8e08c0c3e18ff293ee15143a9d74d376562f5c4acfbb8569905dddc2d9836987c3d9e613fc0c91757a198cf7d19e9e4b05ad44f47d3d4f9906a641dfabadbb8ee1d72eb424aa260ef23abc723f20858abeab9857b55765b8e0bf476036f99f4d4fa4bb25e4eed133274d4e04c80618fe9acc7bcc10cfda1b47f121b7c89055e2200e698a4e3cc72314816877a5e48343ca7a6652fa0bc7026af5c349af8839629f85a92aa3ccc321e035ca7fc00edd00826a91145d3e8e5897b35f948fe77dcd73ea7f0f9b2df4433614df5167df7a58fb7c41cd33e345b27a347fdffa03690a0a7e8d9a8b099960af5ee9fc6ff02965a4c9344b237447b518e8c7605511d59e886d858e551b18a57258cd6497f3e1a2ad2679fe02fc2174e0da05b504a9867e67d23a551d8013c44272d6140ad06f9d8df4f7cc78d14536f5c5e0110d9658ffcb6a57eec515304a0bed1bb7da5459a22945d3d2ab981b774799c11ae920fcd004beef3cf760b18dd595053cf97ca474a1bbcf13c1ac95c587243cc5a5d3a09e897dbdaa48466bea2d7e3c2c0026019451b5db34ab3880dcdf1736323f5d445cd1fe8d96a1290f3815097f115d538eb9d2c9a8178251494df8a372859c2207d70b97b01cab8a614b7fc93a592c7af50e80912c2864b69e562b2005c5a8ecd2a78939d608a21b949489c30ab58a07b641f389f4729a03bbcfc91d28e382f359614ca090b24ee558a6f83c4344b34767532f6a390f79daaf0211b0accde1768992454034df73c145a11c0fe94818e784402fde26eaeca37b5e2642deeca8c42176c868000d9682aa75bbabb64dc198c0aabea363ee46534e51349993e8b753571353a0ab5fcaa9d7cc32c052050acf63dd116c3205c888603ee4f702f97ae01ec171d8ff7b33fbc1fcf829705256be83c5a698082dc21ba997b9a26429d8e6daf09bda5387b4e6593c43d748fd78e0213a892ca8ce8b5325c8ba3b8ee9059be3a06972e9b4b36ee996bf7176092e7e309e61036a6059a22981f7ea777b68311fc215e039877ef8369965575a220ccb8c152bbdd4e7cb8a2d080bbfd9fe2d7d9931962dee9abf5c9400a229c4f1ef0682831edc931dbd21d0d239f449c73af878375f1b9e09ed6fd6e8e97c37c8ea714eb49dc98f5dc360500164fcb071ef57c9dd34aedd61557b67ab4a2cce246225ec91c04c3b3b33ea95ea2ac02aa9afef0c708116a95bbd98b924dfad6052501973b57f70189ebba5e4f64555e04de814d6d7b8db51376b503dcf018cab9210e5b8bc00e934a19fc81a05e33246c9fb0407c26a3b17f01d2854069a1aa2f8807b803cd942aa9b47d3fec5d583bd8d6da065ea6793c6e60b9f3cfaf96f0ad08d311b2dfcf13b5b6b1e9134ec08c389f93ceef06b2ce16cb36c795fdb919b3883ce6be04234210f34c4c5f6576fc96e1540f47abd000b19e8787c36a67a9d3020e0ea28f8bd654619f0f4a15116f49a874c0dfcab0cde1d6a45bd0493035351acd813bfb23ad1768ef048d6b223a90fec5c472e9cbc79c789da918cc612f3988729c25574f4f9c91b3ac1fb17a88e28a5296dc519bac36f455145176fd0305f09cacdeeedc98a78731ce138d58f6bf3c5933280c59bba36536ea1a7e225f92d62eda05453d5c0680342529bc7f2ea017c001466427986a8da86482ccb69ef10d26b40267967a955af020172928f78e72088132200b8e3097c443c7f658704cdff32b7d01e73306aefe13681197074b81ecaba9197e2cdcbf803aec768fc51ee3cf1054f59cb3281ada62aa34c33ecee52badb643a99ef5d121a0ef90d68d14c4ada3eff6f8db876f882a6db3192f9890641238ef274f4a22806cc1e6df5581b9826f9d5dcb30be2f8744c85c36636f0a9d3d02e1128e65d70b666d8c907eb24407d41e6b15d3a816877ba305a11088cc3d46a360304fcc541dc0aadf169d379b80d92df2cb53088a95e14eedd549224d5b3ae46474b008a118778141f518a8f63603f69de4ab2f02a10c7d661b61ff0488d9e9edc40b4840733167b49173b1cbb3505287c71bf8416097892c7319458a01250951f648c2702583fa4870cab4bb0c4e7feceb1b2cfb44181cb700652a8b33bf5054872c3cdde21ea9e4c65cffeaa0fcd4947dcec2e48acd71d8776b1854d01dff85129e898c497aa5ac07ccb2d104fdf342b9bac597ac0bae7323cdf015076773c8ff87e5942077475bfa75106d5784c3c16e4e792c72cecdde8e67dd8551ae5b9000be247a244590c3df942a9d1f4d115fe13c1611680c19b4674f9397223de44dd5c5c74d3ed6c5c9872007ea35c106eb6695509786c49a2d521ccde7cadcc925ea21af0f99a209a5847f12f004661ae504d56daecf3844f6f6816bd0d5fa0b1167017f8b40c1f8d331a5806a80e9fb36329cbc9931517cb2fc27ea21d35f15d0c8c15a0b720be9ed904550c297db50042e552da0e57ebf27783856bfa11cc4a0779c771b5a31ae274c4f1c5a51d71b56eab8b6fa8ad4725b75d116725bba641e5cda8b5548a4332e4b742622f13624ca0102ce39b1b8a9ec0dfbba5e746152a955ffb9a8e9fdf4cbf770e58d83e8611e7f13a1a147846b897ab67682ad201378ae112aa5987b4c0d079ff71f4d5d164f6f1ca698965aaf68283dc8a470869ff2ba9ca26342097973ed0fc67b665f67a335885a7794275e4bd517c18f82bbe51a46535f171406903c41a24cbac711c0474394f0106caa3e6ecae013dce3546e64f0cb7166fc2b3240001c65598834d41f40e23cc83a86bda2fcddf839c3eafdd85df6509ef407d0163578dc2b7ee8685d06c8d6d650be382ca99cf5c36acd1378086e638ce0f72098823dfabdd2221ae7b0bfb9fd4106de21d09afcd56f2d5b71c2ab28029e8ec15b1cc451fe1f7ba9b6be4da4644684ce892666769ed07e452bfc2f7afa4c3d47c8c23d075b1e8f9e5d4bfdfb3bcacfb34ee0be85ede40f8161d5a577aa737fd652e8bcbfe07fefd39758e48451f6ea5752245198776cb65e18446781cfdf1e2188ad378ab2e4a304ec7eb9b57ccab21198d2ee6419ee1544c204a609abc057928cee7977f2a6e2bd9b06b412807235a61468b48b04fb9ed119840a0686bdb18edbf6ef41cc4327a7768812e477a3cf88e5b74274ffc3356b2a3c7cd4e9067bedd83da826d6e7b68253934711b9d28fd7606e45968d3836be2bf4bb27ad804a96b90d2b7adfbf04db39fa1fcd1ef2105aca86fce922fe9ab954dc1d193a5c5524e06a27bde31f160bdb90382258fc434962d51ab5dd916dfdada9189b1133c5678e6e9c96675eda69c7a44b63b20c1126f833dd7a716c9eb877c5c119f2ad71441371946b5fa570391736bc0185f9fff6cc595b848c9f5b05c8959c73a85457d75e33d8577815b73f07fd21b9e451921ff4176df98546eca3f595852fcf29ee5abe4ad0713ba3e52275106305016b56d83f36b16b00c8c058590a4e62a04c1b477ed6ff11c1d9708f560bef12c5a288b0229b32540fa931e333ae2d76cfd9b4cd0881ee1fe3277e5d7c48adb1837e44f72a58235b7b04bb66a6274f9588e21b7f84fb6d97cd0017294e49a5f395f3373676d3815bbc2a31ee659e1dcbd48598bdd559b983d2dbdcca62b4560cbd108d06c8060a61ea3cbfad49bd9997bd3cb003801e0d59c8931d546587319a4c5fc9641a1591be0601845cad38123d5e0cc9d0d6ec3211f7e43d28bfdc50cbb1f3d3bf40e166a5293040e4dac8abf8037520fa0eacfd8be177c7ab46d4576febf791d275da79834dc723a2df333441d438c4bf908aeacdcbaaa527f13fa37115767a937cd8796a60ae6f3908f162d8bfb03211d9c964cf5f3939bb17d7a27dcba94e377e52f69cd139c8528d1d194e71ab458251326e87e7bbda63441e4996486c1ad77e666a663cbe578d699eaa3bc805c799f9677716cab2f2cef58962ecc87366a1f1bdc26c87bd382e3970fd2564ec90063b0521866fd58e51c60c39376f5dcc557ff2ff890914f6751b06b633a991bb0cb41e25e60d956de3007d1c44f3e05cdd95f29eee59a65dcb9ccd5f3cf17c6fe057a4646e5976a15fe45c1b4b2297bc4945fa6c89cc39f234960bc7626cbcbf2244c3d1f995ad3b081f364524984ccf9d4d0f8e34d56f3438d30126e5507a6bd7a298cc87145ab79a822269dca26d4c05df2375dc8ac317b87623ee08dd0372c8bfbd7ca256d02c811aa08e18d955724e3a41402c6920e06bb3ba72f4df7787dcba5ca1ca46f4d8f1a199b2366537634eb6f73c7f9d814c93361f24b12a886a0cfcc0b4ee881ce7dc6340b9fe0b3d086f7fcd68868eb3fa2cc0fa8069148f7d2335dd6746ad6cbb513d4db1761a7348db5cab3fda7a3a634c5a53d7bfa69af4e196121e5f50797a4d24d5b9e3c763c3c91227f2450b3f76373ecc1e14b24737ecd08433a01d2ba6ae9246d768007aa73c3b1df437614ca8f096f6fa56e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85532d4a3eceb0e877723b4721bfcbd324a3103039ee8e4f28aedb78a05602d5e6ffca7be208a2302174c0206f04ce627c1859263c3dec30f4f2bbabd3bdad44fd6f1aa8528f9107622e9dba5c68fac331ad7e44bb519dcfdeba254114558badd4489c9e907f83da99ee4e9489ba996ff394836a59595ccc45a7b096bad5053b125330e87d487b3d4d4333fce6da16ca075109000090a5f9fd1e5fb66a85f2dd0898b8f309e67ea1857fe2cca79c179b1c417f50f3b8daec9271ae162f6eba89683cb61086d673ba97c9e825aedef2c5e8be72b30b32ce8149ede7cac7ef38b434a2d44895da6fb773640fc73be880c03d1ff3fc1acbb91c887423139f52e55403ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555a8f42689c97abcac11cd3dd75d0398b6093ea22f27da2825b2f5d5ef4d01adefc8463836e3ddf35f46493d9c60a9f2161f2680be1b432e1402301f3b9f1dd5abb2f166758ded7c38644c243925e5ecee7da45e13996d84cf998390bc4f71ec9078693d3b5bcdb0ec9ae3742708e16654410b34ed1793dc45801a3e0fef5ab49733d3c42158535cf75d18dbecafaf2870000287e200eeaade12d8ebc1e72562a53813dd5224ab1e362cd662b09dd817e9d91324ccd88aa4d798a5654c99603c42c4c58bbc261e4e3a2a8938a7d78c11bb2ef0275d4438638f8b5389fb29951694ef354747b35f3e2fd4a7c44d07fa9f59013d5cdf7f46ba135c7a926c201c743a4017f5bfd45f207c88496bdf3c7f110f194bb12361562cd2e1272202b5641a485ca4770af0543c95dc26ff9173186ca89700ff26a4ff4f96d770a800d2c06319a265e48610b370dc1d27f048074ed55093d87ee223399eb5b933d03a66f08529b8838a99a1bea9094e6d533e5efc9b681acf8612d13a9129477af21fec5e8896dbf3ab4422cd2e8355bbbf51a15c7da9dc2586c68c8a66b1f7aba22e52abee6774e7675a44010825ef56e61680e58ec9a95c1611c32f181e12f1cbfb83cf418fd9a18094d2bba8838c009e14018e1612564499ce8b73372e88e61cdff4254f20414d08ba1ecf16979d9fb41a5c5a8743ab0a3f491ae57ff7a2afcb3207bbab9558ee82d3b04377b9df583e8dd16e48e6420ac1879858d8c7ed98f64efb975efa4171da92970c12f05757040400055af0bd409f377e3e21306a4e003e8cb944e9c520678d125fc64276c3d1ce08644c783a5b4e922cd4f3b18de982fc14ca3ea94388ac28bac2f19f3516944ba113c12bf699a8cdf2d1b3bb2471a6fe2a9368967d22b939904d68ec53e6034eb19c51bb3fee792bae968f201fd140b10f105c38429bd6cb9d2ac424611b671e03ec4302b2003a3da2252e70e04e40e151218e4187a24318dcb4f3013a587ccf75335ad2905e4af789781139c6f1d358c11e66a6c9190e931d0ac8f2b44cc41a317c289fa6ff12dd77be12c3bbfcc8677ca3da9d0e7d6f2f92dda5d0813d45994310dc1f01797cfdbbf639c9717298b1c6e26bca73e525a2fcf6cadfcfab5a4b1bf5bb10440587ee0967da7ed1a2ac5da05ff86cd59d716a12957798bb91390ea67ca194c23c3c0a836bef5c53e54d8b3f9b809edc365f724b0f6ad875be93bb3eef5daada3232fccdf8505eb1af0aa5ea07a2171c811a49ff7f6692430db98d523d1773823813aeb0c7b10e8a21d09b7201c4faa5a32921707dd001a8e37c996025b0988c5c413194523c1358714aa703eff1819a741258da461d25bba568d2ae098b0dfebff840606a7ed85e9d3d29080c4cd56dc7838f4254727c4f95c2dd57fce3d8fd69ab56002de6d389d31ae3d30f343ca2169d0629bbb0cdd2674802bcbe3ecb4609cc0d6bafa39f600e258557bd0d09dc6e57d2a932f7fce26702325f855487e941656cf33889895cf27df4f9fdcff339f800893be04f8b46fdf69c722f9d294b0ae9a98d4d8423a55436861749d43982175c4248a2ee126694fd216f617ece8e6cdf4bb73a13e339eb993c27733ddd8b561d25a3350ab5eb6b506440597fb2577e5d1a72a076291d00bae4af610639d1c85b31e1287ab24bd8e2f270c1df8f0ac4ed1321f60c8106a84846223263e52fd3845918603f6a2c5f4c1101763da044d714a73d2dc740fb83eda0c66c2dafa587b9e6cc12b3041317e11b130a629fcae350f24d01294f0dfac21968fa69fbcd821e21254c174f5e932f74965c68c25f89f167593c1ac8047b88c87e20d6f1ad72ac9e000fce474d3fd070a89d1c6ff84b9e4e39c93776442948ad696d34e735fed27332aefefeb6afffd9d8cec5d804d77caef30d67b719bb2dff9466e5a21b015a4c3aff3780577badaa869455aed3fb4eeb43d7fe2030e4465c9d6f8347d1d9b21f925667df03407a914ceea8dac309dd9d724f1c75fb95e2b8fe392ab006a3255118f74ef6872f188ebcb030d8fe61112ac3083d81d72dccf1e2375289cf3588c9657903e6aeda686eb67326c977e81c243f32be16b7d242cf1814d2de0d5ad3f184ac8457e69cd2f884fc6629f21a9f69bd9e7007f642aa99cdf2085065b3c580a19d81fee6b75e088c2c2fb0ab19843321abec4a93b2cbd735149f60f3dbaa0f02d445384496b062526315faac6f5461d0768175d7baffe6c148ac7233cd2778f33417141c58c039aa0c0e425ae9e7d9a68393709a303a4d4582cf44edf56315b1264be7f16c623949e5bf147769cb523e22582205602aea128425aadeaba07329d3d8610b0f05352aa1f9fdfd9ae5a206af55971e8cfc75f43960f94f90ca69605bcf8c2670e5b59f19a9e0ce16be8ec3abda17b3553e53fdea95de7f195b4366602bb43def99bf524d2d1a8f670874b0c55cec048000016cf86f1e01d15d1e8f265bfbde8108cd6cc10e4c702a85801d401f29eae0129b71988a1b1c09b3f83b2532fa529c4b1e301c867375e42f3e98fe603f11bdea47bb5e41660025a7dc1a65ef22dc493850a421071c9d0d084186e5aca41640162c6ecdd0e2be210ee791b6c2fe7ae745f942db3b2c19a5f3d4d244a8e2db5e0efe0d06263d31e4cdb437502535ee5fcb88f70e1f16d5945878ed3bd45fe94b1dfb9c6c187fd53cbf2f8b3128a47d244e6d110293d084a89844eec35092a4cd8c18ef03440e73a4f26cbe63cc1817c6b7cf1af30deba363a24944886ba24c64fb691bd52007f454d6ad4b863506b0297bd03727f2e63337db31b4cdf3140b4d7781ed2eaa264a71b131190b9e8d73acb488aa9ce5bc81ee1567c4e0302560755940ae25e53996a58d55ed3a7136b4e6a691aedb319bb160f806288b70e9497d2e7c5e63c671b2bf3c3a02e8a082d7213d37fa3f3cad678b80083a350f2804aa7036f88aa25a92102db00602ecd3463122242843abcca2a9499629d429234c9efe4990bd146f26138f6204f5f001a2d39f4b6e07782bbaecd0eabc34fe15ce5c0e22464b526f0e6ccc592699318f8f43c777a30ebf6f6c662031b50687cd2130c3b17e6354e9b8ae7856b2dafa93948db2de0db769ee0ecc978cf3cec2fc7752161bb80e4f76401f031db105d6bbd24b81ac7ad6d3c8daf2006549a87e58b1f4fce56cd0f5acc0a6751cfab7369bae1007e1cf7da10d8cca1af3b3d2e20ea2faf775f5aeca4d189746f674b68c94ff08eafeb97082f97f082ca29632621873869322b632ec3c9797992cb1d400e3bdd9f9e32db7c0d858c07f59a468f54cf97b89a42ae038f3ab0a0ca4ac8d3b6e25c75abb6232e2d49d591eb432cd26412aa6d694b5e3b4eda891c18d8a496e1469728aae5efa1e6bbd3da36fe58bc51702df4a2ed9e07a35dd34f3e2527d6e0bb38672f727fd9dc006fe07a167ebe0286ab99e5d0393245d1e5e9d938edf9a0dfe7528d8bf35320bf4da7031e050b1e55ced38d200bb154d96f4165e4b654473982aee8076cf0e017c47e0c5cdb6b4b7c906f7002431e5fab163a33031c280774a16e399f79023b95b818b6e540b6fd1ce1f032934ee123057aa55701b3e4d33c37ace332aa397e0bc1654d8c0ff4091bcf84247ffcb33cdfe262f048e296ea17a65e5505c1b73f7c9e8e6ed912d7c1904f7c85368d4ed704d67bc7fc82f8c10f131d1d3e1623912b882be42b8bb05db2aba30d08b537ae04a2d2922d4fac56e15a1b95174b91af687e6ebb452c6b65c9f199d4117d465ca797af9d7b15506753e8838c44e1a91d08fc92b91c4a0728295fdab9b9d017455d027aa6bd658ecae082808c81a68455783a2c24393ff79eb05a153164655c70bb046a61402cca5154dc43aa6323b5b8244bcda917d07f2591db903c507a6f2f2d2498cb8f9fb5c8bfb1a7bd61fca20e4086c0326cf52694311f8ec2b400c1af368cd12b8e61e49f0bd19ff53a5f58914d436a7e92b8cff67f3c548a02997a6a54d3fa3b0b79c3e9506242a9c78467a7f4ec9281c57575442900dccd18e5c043582fc667caaf2ff4aa78da78d0848a2efc8b191f31a93969077cb24ddea35500f4b955c4af577acfcdb42605a846d6642c06bcdc761c9bd87eed5c27e253aa3c9d0e9c99c262ba8d4883939dccb7267a86f3ee64e8b9934bf397446aba6ef7ae1200a5fd711cb293c58fc071c2aecd2682e6478ffcc1f4e09063441611dc6d5a719362d3a58b3b9fd2dddf2a5a906dab912ad0c4dc8d5e849c042e6fe6f4c6ac7b84493432b316efc6b0170d80f1be8c8d04dbf25291ab32556279acfddacca6f7666556b0fc58052f7be4b1503b522428682911dfca9b9c1aa001ea18887049d08a8e9ca6be02982ac2048c6010903384235f817d7ca681a5725c61cff980369376d1b9bfb6e8ce3bca4066edde7be8d501afaef67e419845453ec53eb2b51cf84e1a4556f3959dc25eaa83c780336c4884b07768ccd593cb57ddf6f8802c1e959fdc8ebbd26f472b471a2867a9caa8c292d6b8439f05a7981dda38be752229dfe8292645377327b007bbf3b2e6756c11ea9df19a0efc5c7c207c9543696e0b51244105113c104cde7667ea2b51319fc34c2a1f6ec3a1b81cd219cf6c277fb2fca1b1a687146ef59585d202975a7fd938ce5bc6c65f44fa92a0b82bd44f53e53cb73b5dd550df9db0fe1dd2d67723f47707179e4791e3a050a1f96870beaf831fd08318e8b36e2b30971ae7fc962f527cebfe68c61b59bfcd983408e6a28405dd69c5573392423604baf929a001b016c6de425580b00e89e56e477aa4599934a5617765c392d1da3c77ac17fa95d6b451a6d5072a6cfe71972321fbb7c24fae2ab1c786cfc3c19cf2085ae488e3be832fbd2e2cf19163bcd0ef74b269dc82ce6113a8ffc26130972ab0838151ac1ab4f893a691472a9bbb2d7e915315e31bbe831dd4f2684cce30428817968cf322458b88e83699881d0cce5aaab3f17ac35a25fc545849617eab2afc041ade8219c7f467fee4fdd34b1c0fee2d69004a619db3ec45d834cb5e66a530ad07713a75453bc7574927e388c1111f8283a73d5eca1b86bce4c19c15cea5c8c79573bd3b25d93905df44070d0fe03eb4d62a1dbfe66f63f33ca5a7a958a845bb6be091c42506edbc16b6559ec02562f7bdb443b7dea1c60e3c9f4f16309cc820f00bffea3bc8bf823629bd1f6a7c73d04c2b8304c33116c32082cb83c87c35dd1b5c7402186fc5348e4f5842697bd642b6712d5097e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855cad514637e93c043d32e5b993512d491af7b610398e65ae54e5759538ad0f6645de18f43ada8b17316f77ffc22698cdc2424b69c24c597fc2c740aad4ac701e176129065244975b26f7aa200dc04cb153e44c8c627baf50409b4f6a2d9d54ff186bd7299c5773fd6dbcb53bc7f9dc29bc4044b3168274bac3abb56fb8edeead1b7404879ba76c27834f296cd282c0f95142c0431f7487f5e9af3d8416bacc1a8f1ae4320060e0292e84e0cd848d49426eb9037911e8df4603a55f5b4eac48dc08996c58a53e169affe559981721c55dfc8fadcaf07e09c4dd2e069eb285707b426631fe779b4e9411cabcfa359ee8b6543bff300e879adef4b43c1159bc5d91ddabd5bb6b356723ce16f55ae464a941e58cee80b90b1e8ee2cb084a2b6465471fcff369cbfe5c647a75fdf07f6ff3899d8921d219a19bc74094c6a39ae9545baa8a83f2067a4617e65999190405d18b6599c4fd6f677b77da69a1c09e83a60792b43cbbdc79bd6c44c243b87a6a77ed4b8321787f40d9591a25df847618371d0bb94eeb7a45a6bc8be1486c12b178ad181a8b4404100a53021f283d5ec9b1e67b7e9cffad2a0dc2c07007065a2a9043390262a8dc9b077bd2246e5f1deb75f62f900abd755744cbc07e1f64761231fc597531ea218701f4380c6148c3edaf1621c888239d79c89e0251e10598462f85adc256f96512a2daa8a8925cc37543e56c60d6ddd7bb76de07c0fe802c60ec4ff2ac6fe66d2e561ce87d001562f7d2d5b275a15cb12cfd569c3bca8cffb087c7ca323002d85546eb261acdecfe421dbe0b4955ccb81ea86ce7cfb3a2b9ba736afbec177004f70fc03cc8255c0202fdab9b38072964477002587fe3a66e3307f27f99fcfb3f6fe13c6bf89d1c14043779db78c339830e2f350639ff4e70a0d4a9e5cb46f927297bd2fea1c20090eaf21ee23d032c5549cf0888c4884dd7a7207925750fb33dcd59b00f39f328a2b15df8f4208af9475f88c528ab01b66614d1706abaf6246d8259587f23ee548ba33b0594c019d5445f3fabe8beb27b57b83a2a82a5ab707a66782f0274515303d09da00f2d7ee4e37920ea685f3afad546b2bf7f48e4aa89f354d404b35f5b15f85bafa2e9827f6509a977cf7beb585d5706b94747393eb959d10f34a6f884786db4dc26f4dbdab0607ae492e03714a0291af557f12b3f8207eeb16bbe40d18b3c462c00687ec75b9f42aa50100022a5248d49df5eb4b9462f3d1dc1cf4d58a258f7f8201ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b507da450083b0e5dccdd1b3355a067748cdca1037527f6f710ba275333625bd7bee489a89a04162bd59e2a95dbe018e7bbb24da7c2b47f57d78feb2513f1f3aeea7579f3026242c99ddf4604823f4e47757920b06f09acc87ffe633427a2c6c028a6336815709cafb420d008ca642fc404f32d49b0d0e80ee76798955d45be48aad719c1560d3b3c1a9fe6c8246037c0b6f894a86d9ceccc048b8a3058dc16c6263a0d020e13016563c9c74d128653612f5664b04f3c4c215f39d063782097d279d89dc8b9734e5ac0dd3cd3843581a8b505f5937d45fa90bcfc547242baacf13ca0a51c2cd83d3e017181417d596bdc2182f7f7083cd8bd7f3e71cd89291969985dcefa39449620af2eb07d8d6a3ea6ffb89e8a20e2d66ef63496f1b0210cf7bce1183ded93d5e089ce59512d2cdfc23d0a695144550b59e0c9f106e793984d145cea423efa84d01f2326d3baa77e40aa1877aa7ddc8c59476719c5d577985f646d5f36dcbd1a8e1125a68614f90ab7408427dc2b39ce0e5b7e4f13f1228f7321175dedc9573a3f64fa33dc31e62a7ae98ab3755953d2921328d106308b45e61e070818559360651e4476cb6a79fa65bdff750afacd125f5b57030808040d6e0d858e816268bd7553e8d26dadc14febb722ab27ce4c614b417aec29c44dadf1a70018da2a3e95b81fbd2a1fae515f77c5c8ada406d4c3ad8c3138084a7b962bc0dae98fa96cc22092f6db8d93a60f459f3fdc467a85b1b90b5e31c914f8de96a2ebad80de87a07fd6b59e70220329272469c755d5e7be27b96fb124e3ed9766469406e76d625635d0c63220d7fc8cdefdfbf0d46221b02a16ffeff9369c0fd0bb494be6d099e3839c1319c88bfcadc37d2bae1b1831429a9cf62921339ee15a533d95da34d932c35677b44070d44e4fe7b1e1188cc838f5b316b4942070c86776129065244975b26f7aa200dc04cb153e44c8c627baf50409b4f6a2d9d54ff194034daeaa913575b8da3a36fc5960480d289401b36e26ad3a6f58e08d216400eb471397d1aec64f969f00469d555e94232fde28bd4aae993f17b86b5300982eea19dee77c8165a993415efc8ecc6ea985123d71241edb299766681042369933bf0257ae4e18244bad553551faff98cff734184535c23eb446bb0c44f90d014ccb9ddc33066612acc6be8bb5fc7319ae69c148cf625f8d725a4515b59f9faf581012f0fdb8b1612cc7fae2809c693a35b7e5482f1f26a026f8c56e7cdb621e411c75607dea672d89fe6009d9e742b6605046f6b230e48c9f7baffab82c17e4806077d55b60a02f2f5f64af49a15b58241d1fb33a9a012ea7cb94719b09c8926648a5721db37fd94f2c27bf221e906e9f836d7967b3937f89317e1bab6cbf6ca985607310dc624312ec85fa23ce724b3e7dae3e2e6d226b054e3b252bbce81cb5a75cb3e6bbc481b0aaec7a92856d63024724942c1dc50bb839adfaddf2e8fcf56c5b2085fb70095c13a8e49778eb06cb36b13c30f3694e3e2fddaf90f68a4b9c345522aa68302e5f5ee9c1814b8619b0a93d68213accf44c5e65d0607c007e0710527c9a70c4f6fb440a8fa1d12e1a56596db7d492d620457679e847c04f0a7606d95dec5e5a76da6c59d4b2b898cb6f5b5cad855a84e432b8ad9e98fc10f8e67271adcc5d2c3fd8d0b0eff8523c734b5d4dbdcd72e334dfda330b10ec9434d5354eeee4bd98ab084f57c9856f8b1557aa89324cbac4e01b89bed148642bcca2e99fcb851db66823daf42baf7c3b2ecc593da5bd0360c9d82d740370baababffd8df6f92b010a8aa5adc86ab7969c7c3d23acef6339edac3ecf3b55794ceb4ef333e93c2b5f5e23cf6703ffb1348e6e497a1e3d3112c22ba79048d3b6a4411d085bd02f8c48a961e66933b179cf4e9654c94f3750fc253b184b176ec57e7ff2d88c86bc28e6a9a56aa6ec6d624a03b740dd808aa6718e7de7b567211b44db04e83bbe27e606f204c2787706e3980f262a2519c7cc9acdd20bde38c3567b01f886db2e57f8a786871a5b841e0f774ac17e050712442ad4c9171255991eb6559dc308b348fbb11a0e2f4be1d2bbd84e067d3c5c95e16c1d4c72d8824e7fc47fe6edede7eba4723eaa4c54f56e8fd0979397f3e9e60834bf616d98a6bd2f5b401d43fad1c804e391323bffdf9ef0a3b4c89c5c5a576476c84ef99e64c24e0b16dbe47f3a4af93396f601f8af16da49308ce819774d904fdee355d480c20ee038efa6bcf9ad679f9bd9cd5c15967b9cd4df4d13cb4741511cc7a736dbaa8932595e1cb722fbb3c836ea82c72dfc1315f9a975739c94960d4b0c59de47d5e4db6a293faf2123cb7d5a09cdb57092efd745f3d222dee1093062e9eed1719a0fceb7e616632f7a9dd952a9fb052d9334e6f9989b09a4c428d83f02aee3e788d62d441fe4ab5b91adb48f35d50887b42ce6a649b94db9bd7898270a62d0fcdb18efd1e1f8c85529e47b4dc615aaabfd60f23474067f30190b5d24d9cfc4aedaa0f6c597b1483da87d37f5d87e354a52b357355e53c4568d30e7e364f71466542a82c0037838998cf93e2bdb177635c10259e563e90c7d4784deb40f395f08f5fef8e2bf15673f5afec68c080ed8127a50cc5ebfc93feb2ff53cdbdf275f7a53fbd950f1367f56a6b1bd80cc34b310378047fa5d9169fdaf8f0038ae499f8e6d1a20dc0081df1fb20810461d325254f44f802a19b44ef23cffd7b5afa01aa1a36e01ac56219d50e3e9d321f5abe22b3476181a61368873d4f9f2ea0ee0ef7592576c8bff89123a591d2bd8e60b24280a21b78b4df4cce7670bc941647f2697159e10ff133adebbcd7d5e2bfc4abdbfe5d49741f510c1b2fca00e9a80f3bbf7990f714c3a2b0f1c1c94853566192461a37ecd5a0962e8b5f9e8850af8470e1a93a7a365ad14000b4ec9d5890835e562d913fe7ab779de83ec3a5287f587f1650bb62e370b949cfb92c69d0e4a7c36cb1ce289ea825c5e810d74910aa29ffca47ffaa3c706a2c18025c777b965669c89a6f261c4b3fb9dc3320fbc8839c8f1a9cddcc92ca7649a7c8396766ef55936f4133d051af15eedab8ed923b0f2f23f3276cdea24f53ae157ed34ac5c96ac0de0f6dabcd93914b26c78b9d772c0005d5372eef4b5fff1b63de3a8e34992b34b3d912da2b0307c491eabd0d5951e030c3cf923e01956ff24b3c578fbc3621f038ff2e25afad101ffba87d32be197d90a39e5c2ab95408990facb03892d7387ba068020e429869eb90d694c042202f110d869832bd2b342f4dae4b206c4cafd0a673b393ed13a7766b5d8b172597bb08cbee7a74625eecf28c5ef77d469609aec842198fb773a248aad768492e8ceddcf4f3f766621e853447e14b396686a82e10e979e6cc35e1768cad2d463d14798a748fdd482732cd51145d42da8da6b63679f9fc7d3956fa99ab0086e6321404cf5fada523c2f099e51a0dc861348705b6f4bebcbcd04e0acd6a83a897546a24d55ce29d6797b00ed218fbc1a07d0ed066a4f06ade060863a5ce0830ba5c4ec2eec67014e7ce819014bac7a42427e75c47eaa93bd204bb90899ee91b8f027b6bfcaa1780aeb654d54d4d7909a82f901ae19ea5d7da4a52827dc60e707b86ca028c3689082d5eb944d79d7087622f97b61d3f1c95eaca2fb7016bc8fb78a58265fd7fd8d9c9c72c8890949d7dbdf152321b2b5721f6011d279c561af41b6ed0c51184a86ce55422c5bcd821e21254c174f5e932f74965c68c25f89f167593c1ac8047b88c87e20d6f08813fdbd97359abecf44005cd878474a1cd8290490d09969d1c53b3e2db1278ef6cb4752f1c39e01e5a1b6a92675d7b77af7a5abcec74c82921eda143e255e29b956be525091fda4678460da82a9641d2105b6c07b5fddaadfa62c163710d1f507cc00d4571ecce79f6fff69f49241309bfe892bd2752af0761a1e0de20c60e6038ea3eb6c745d21899c06018cefeee669bdf764b56843ed18f892b726cd65535da2064c402d153e3863bd361e7a787ba43a464a464cb4f52e5c80482e1822617ea95ea0c96ab87975ada6f9c3623db79c628f99558e4012ab855c1ce0b07083ca76ed999fd1fc005b8df3ca53c827bf663520e6726d35785f142a52ed2ddbcb495ea126e93044d51f8f10b2a41b12e8b70d7c7fa03c9eb8d262b368cdf4b73333db6335042eeabe399d24e39272db00143c65a3befbc9c3b610308474710f4e4f94223a7b10ff2f636979dfa05688925fc48c52f5e1c9004d989b52c20d5056bae88ccb91ea46ef30198b573f8adad08397b815c5f7405c5f2b91874041baaffb4f1cbcf5e0a478ed7836c756a84bbe163069f0426d8b780728e7adec1e13acfd419fbfff5cd33ebeb429dd2bda43eefd0e3ee64e0509f55cecb6b7b75905de9c4763f57cb6047af3812b471e5bf854c2c652b53dab7a40bbde509e6c671f982059dc9cbc8895bb48cc84b101a480059fd880f367cf49bb115a05317c612a174ee6b13064dd6c662527730259364f1b45e62dd18424570648c52150c4b01bc031ec8c6ae8b070a33b8ff5aa86d1ea84e520882c9d28c66203582c9415d3fc607fe8ddf3b9120bbde13fbaebcc81a22f8d1f622cba5f7bbd03dcb4a2fb3f95f66561212ddd76471ca09144a86977930d78ef6f5165e4dc6acb5fc10057a8c5496a8e530dd16842dfda02d1a4f50798cdf7ec17d88be9a48e97d6c4d5c8589269df9fa06c3e93edfecc7255e5f201069c8a48fcc2fc39103837ec63abe79f9cf129b20c9bb1b6108540384c0410016d90f277e0bd3a9332f8964c4fb765c3936ba950eec89b2f22d5bfb51c1a422befd10b7bd170fe41994d8cc640a30fb74178769a4cd21aab6cc32f4e110665e9d4cfe24405f2a20612bc1a4b30fb1954aaa12b16e50fa9382624cc8237cf53bfc0ab051908421e8134606e3b35bfe75a5704ac933507f697f052893d9fc7629d6a60999643aa8e7ae4839749e2650bde34e125d5fd08fd6a0390d5e5197f8614e3ef0fd1935dd9af0c56625da23c292bc8d309974ff302b686eb8d6c737a4fc8fcaeb89417c19708b54c6f22f8c07de6cf19a7fb268bfc7935bef4fc74e9dc178b77b2f56560106301a0bc409f733514deafd9d3a0cc58473c855f99cdc2874f2d1456bcb41a7175783ae5760d4abdf949cc5235ff95286ca6970764ad65049fd51a0cbec141cc44c73f33f96099a61c9bb9140d7e862b9e36699263777d16ff031e698961af3055f8875adf85a8cb5ba1b6bbecd5bf908f8e0b0b42e2ee5203dd153228ef557c2e88788d3d67a6e1907d61e0aec474f223e9a15fd3deb0b38947a015d1549c3bde24d3cf75850a8e483d901d30235ea11f4618c5c44d7a7cc9768002d354cbbb9c279924db34638d5e91dc6376f824b34c903b82dad7dac62924b20cf004d5e63c52685709803f6c13c8483bf567ddfbc7d40494a63adb42798647106405c90799f5e7936f1e688c26699a902cf3fca6289c9d3dc42c9b4266543ecf6eae2504b1b70e98cb115636e1d55fad1390fcc17f86173b7727784719fd550e104b04f7a3fd7967077456dd6afd03f9e5aa40e0e05c571c45cbbb94e018c517745e2da55d188ce743f2d0813c42895e87e88984a089131d2383ecad5fe816e280d014f1a40256c5f4bd0e0ed0c83fcf711ec98410cbcb44bf42fac702b313da2fa93c397950c70fa1321d62c0bb719cec6ef2b6288ace0e794673eb6158f225adfc9beb07b5e5ec245fa2a53c64085d09cc54de3739d89019a519a0e0f29aad3b69c346fd69701534091559abdf9f8bbf2cb6753299b1618362b49692bf103dd672f27b6669eb9dec4c1c1ec403d9e5508f9494b6743f06c4a2fbeff77577b84e2848ed2209d3e70621566f15b3751dc5581c3b12d2f8653c54bd447028e8dcb73fa25dc5e6e64771f9630b0ea2a28a48c0096c89503d93f1da18305cfe977138b23f09039bbd90007202017475b480c817fff3f8618c18cdfebb9318e0cf1b16e9e77d0b4d6b897e1af6c0749b665d44df9663c27d19628c94d59375ae1a6ab527ad32cf0a4c1b0994a19bf90c41509382594368424c99ec5b8baad2ebb2d624fb1bfa9590a6918e34fcaa612b9fbaf13975917be96a0d6c15165f3e1c5c796d2a08d931754f24a60f692d0a447c93dd47798c7dd84f96aafe85d0dec2a051ff33b8ae44491d4c2ceac61d5fbae4049a07a559574f5777ed1ec3dec7f4f1c0d84ec84eaf25b52b7468d6d549d094059cc43dacef37ab51fedcce14a414dd2d142d0d70b71062b26ca7dadfdd71dffe72282cb1e9135d4cc9390e5bea31f177c689bf2421811836978fc1f9fedd72022072b3488d511cb3b843d460bae809c8fccde856ada14f7fc087080ca16e95253815f358eb6e866a692908f08ff0c5d85c102c2fdd589f5336f8a95b2f3b71492512f1c0f5cd9858ff79e6a00b4ca8b0dfa9972461fb2d6911949ee656dcdc20bcee55060a78dbb253abb0e812057327148509acc5b4debfaf0613cca6753be3ad4223a2e56ab4d452b80558e688d968cc03dbe19977a25ec579c1f086f3ebe3ad4223a2e56ab4d452b80558e688d968cc03dbe19977a25ec579c1f086f3e151f47bd3c9baffc62e71cf619be39157c8f4ecddd639587f97b83b6f21f9626a3d55ad5f6a4bffd3298c8a86d39a667c7aad81542a08b4d5a07dad37ec66599d5b632ebb34a5bd3673372fa80d9f23a70ef67333e2e1568e6a769cec2167683fcc0d58c2758e61ff4f63cbb1f4e1c9cdd8a5b4074e0c3999da5eaf852cec9bd1e6b3b5a1ae7fa9735ab8419879e75305a8a2fa29bd37df4bd18a9eb196c0c0b410de3a0088de9ee00dce90183cd9207d8729ece3240690b168f8f68f6628cd87ba13593bf283f1a6055292e092b4467e7126c7f7b0447807acec0861f2c5550acb1c5208a92601a2cc773ce928baddd7846d3f3e6f5b471e902264b498e644d787993570f4bb6af43040001d073698ff7689272fe4570b2f55dd99275abd85290a3236cfbf38363c21aedb93ac9181dbd081e1c79fb0509c25831a7d130ea614c04796cfe6f7f68dce0111d9fffe29bcd6e283b9fb9ccfcb9b6a9e2dea0ef8cf01cdd63e57d472dc27b8a8f9f046e294869b4791aad3eeb7211daf7a57bff5117a36c2739253a36805f56d5aa889a4d27c1335d59af4540209f56c31f8a56260e214e49dd72584c815c3037e496a5345ce5de5676d9c7d1c7d230bad71b55fc40ead2ca9197a55524dbcc3c606eeea5f077402e870a0777889874f5d077f9ae8cb2c0b0873431625d536d1f592ce92cfbc83254649ede6be2af366db961b16295582d10113276ab78b24e5b98368a500d78ca0b95553b0301ad10c93e00876972106f3e19d2741e38fe5fd99521a3248ef07265a5e8c547c75f52dc96ef594102b5aba4c89483f0d98925e34eded128cfbf86a128c923bab87574bc0f81c33cca263d86039bae4471f1cce2bea0bd0010693cc5ab0eb6655e2bdbd092a3042a2e61b0682097c4abc6c8c1ff0202dd12e8014c87092aea77d689a12cab303cb4f74c9a045f4bc678fbdac3c3df4f198cdc33d1bc9ad05a994aa8697dba3e4e4a56a199adbaf804f9d88136293a44ddbe4c84dd2ce4f4021431b7eeb321d84868a7b4795ad58d9f91add6153094338a62479ec523b3e7f817830200bc4e0042bdf3ffe6450b9e1230ff0032af738c1aea0a893967a17892d8d04ab09b8ccf51b0742b23e93d1657ed4a789f247aa25a0985bc5bb3c725720865ae9d8d90884e45a054e78896ca414742ea2df3e8a8c66c7e1efae761ec72d8c5b02910bdeff985e903286a34ea2f684db32fb370fb8272a7cb37d443b249a46cbbf387abebe13b329c3bb928b804b1d01d87f9217817c032027ccdc0249e19b0c7ee5318d92d426d6b8193e9a7b5309dcb0dc82d605c4b3284fd88d79157ff01d8b290ebf5df98484c8084f2da110864989b88f03751542092e26280c31809f3b457e4d3dd2124e0e5e8a22e690e11616e4f008ebf4871010c1879c99d02bb1f7cfc18b34cd6a6a20f69b3d8b6a6160340cad054112ddd4e782143017e64070c7881ed9e8a694f1afa705bd016f8caf98850fb46ee86b5aa8155a409d0fe66ad95a643f6199266b0bdbdf36c3655295c804ee1de20d143e33aa72d31e78ea1e2cbe157f970c26efa8e5ba00c984f17ae6bf31049f1b11144e58d5907d9a219e8d6aa246335a34fe012d973fe6cb4e4716f37fb208dc37186bd4fe18042a64c4f87293507c4b4ea03e639a8f088513cdf620a6b8454206ae0f9e4542ebed2d9b5f7745d4b8aede2c91eec30038804e4d201326d0131ea372c37bf6ffb2c6b50db23b87b8a67505b68e751e0a40013d0c44cba77d1cd4eb83fb4dec3609616d09a82c48388e9720c779b5709b2e1d44892754b6522dabdf9c68c50e97cb4672f56cfa9070593c5887ed526b5ab6fc3ffade502858ebdb8995257ab8224aed7532a575b5651a3af4e8f5560d7a2c8920d7d66dc6ed5904139ab9acc1100b47865824aac5f562bfe8f45f3f283511722728b2e900491bdff5763134cef8e6c63977ffeb8f5e824a431301337a4ae971acd951d7ec57cc86ab0003bacbd2fc42e0094ff86bbb5e0c2efeebfb2877124db4deebf353790d0294c84f4a2329cf83a22a5fb8150ca63a2e545c801c5de1318c65b15710ceb9125aa36e98305b4ecc750895a5bd33e5c4e539f42e749c7efd3275a867935d6c4bcb0e061dc084f4301ec83378295f348de2c1fab26db9601897605ba7c80204deda326b9d89b6c62545376b9f133df2cc507841cc1f6dd3503c39ba1e2ef6d2a8a97136928f53a9a693a7f0031c2e32f3229d22ad2266aa33110e5e81e1f976d9097b50e26f1afd4dd7aff8ce8242af407b12e079b1e7ad00564c4006389b5ae5538476de0c7e79695042920acc969e85ffa0ee72607cdfd24c82cc4dc1af47d9e3529c8f698c96fdcf69ef360a24b80ba486f4b669cfc24025f3178504c2fa3a81a1b2ba0e9801090c897536115424240aerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-Twisted-19.10.0-150200.3.18.1.src.rpmpython-Twisted-docpython-Twisted-doc(ppc-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1cdb@b_b@]]|@]{]S]@]@\9\j@\I[%@[[ͻ[@[[;@[M@[ @Z@ZY[@YJ_YEXWWiV^@VVUUUp=UhTUKSU"steven.kowalik@suse.commcepl@suse.comsteven.kowalik@suse.commcepl@suse.comsteven.kowalik@suse.comjayvdb@gmail.comtchvatal@suse.comtbechtold@suse.comtbechtold@suse.comtbechtold@suse.comtchvatal@suse.comtchvatal@suse.comschwab@suse.demcepl@suse.comtchvatal@suse.comtchvatal@suse.commcepl@suse.comecsos@opensuse.orgtchvatal@suse.comdmueller@suse.combjorn.lie@gmail.comtermim@gmail.commimi.vx@gmail.comtbechtold@suse.comjmatejek@suse.comokurz@suse.comokurz@suse.comarun@gmx.determim@gmail.comtermim@gmail.comtoddrme2178@gmail.comtoddrme2178@gmail.comtermim@gmail.comseife+obs@b1-systems.comtermim@gmail.comtermim@gmail.comjmatejek@suse.czmatwey.kornilov@gmail.com- Add CVE-2022-39348-do-not-echo-host-header.patch: * Do not echo the Host header in HTML, it is not escaped. (bsc#1204781, CVE-2022-39348)- Add CVE-2022-21716-ssh-inf-data.patch fixing bsc#1196739 (CVE-2022-21716), where ssh server accepts an infinite amount of data. - Switch off tests for Python 2, we haven’t manage to find out the reason for multiple timeouts.- Add patch CVE-2022-24801-http-1.1-leniency.patch: * Do not be as lenient as earlier HTTP/1.1 RFCs to prevent HTTP request smuggling. (CVE-2022-24801, bsc#1198086; CVE-2020-10109, bsc#1166458). - Add patch remove-spurious-xml-whitespace-test.patch: * Drop a now spurious test that causes failures with stricter XML parsing. - Add patch skip-getpayload-test.patch: * Skip a test that causes problems (and has been removed upstream.)- Add CVE-2022-21712-sec-expo-CO-redirect.patch to properly remove sensitive headers when redirecting to a different origin (CVE-2022-21712, bsc#1195667).- Update to 19.10.0 bsc#1162424: * twisted.trial.successResultOf, twisted.trial.failureResultOf, and twisted.trial.assertNoResult accept coroutines as well as Deferreds. (#9006) * Fixed circular import in twisted.trial.reporter, introduced in Twisted 16.0.0. (#8267) * The POP3 server implemented by twisted.mail.pop3 now accepts passwords that contain spaces. (#9100) * Incoming HTTP/2 connections will now not time out if they persist for longer than one minute. (#9653) * twisted.conch.ssh.keys now correctly writes the "iqmp" parameter in serialized RSA private keys as q^-1 mod p rather than p^-1 mod q. (#9681) * twisted.web.server.Request will now use twisted.web.server.Site.getContentFile, if it exists, to get a file into which to write request content. If getContentFile is not provided by the site, it will fall back to the previous behavior of using io.BytesIO for small requests and tempfile.TemporaryFile for large ones. (#9655) * twisted.web.client.FileBodyProducer will now stop producing when the Deferred returned by FileBodyProducer.startProducing is cancelled. (#9547) * The HTTP/2 server implementation now enforces TCP flow control on control frame messages and times out clients that send invalid data without reading responses. This closes CVE-2019-9512 (Ping Flood), CVE-2019-9514 (Reset Flood), and CVE-2019-9515 (Settings Flood). Thanks to Jonathan Looney and Piotr Sikora. (#9694) - Add python-38-xml-namespace.patch to fix dictionary mutation under Python 3.8 - Add python-38-hmac-digestmod.patch to add digestmod parameter where required - Add python-38-no-cgi-parseqs.patch to no longer import parse_qs from cgi- Remove mailmail when only building Python 3 flavour- Update to 19.7.0: * The callable argument to twisted.internet.task.deferLater() is no longer required. (#9577) * twisted.internet.utils.getProcessOutputAndValue now accepts stdinBytes to write to the child process's standard input. (#9607) * Add new twisted.logger.capturedLogs context manager for capturing observed log events in tests. (#9617) * twisted.internet.base.PluggableResolverMixin, which implements the pluggable resolver interfaces for easier re-use in other reactors, has been factored out of ReactorBase. (#9632) * The PyPI page for Twisted has been enhanced to include more information and useful links. (#9648) - Refresh patch: * skip_MultiCast.patch - Remove merged patch hyperlink.patch - Remove patch 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch - Remove patch PR-1147.patch- Add PR-1147.patch (bsc#1138461, CVE-2019-12855) In words.protocols.jabber.xmlstream in Twisted through 19.2.1, XMPP support did not verify certificates when used with TLS, allowing an attacker to MITM connections.- Add 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch (bsc#1137825, CVE-2019-12387) Prevent CRLF injections- update to 19.2.1 (bsc#1137825, CVE-2019-12387): * Prevent CRLF injections described in CVE-2019-12387- Update to 19.2.0: * twisted.internet.ssl.CertificateOptions now uses 32 random bytes instead of an MD5 hash for the ssl session identifier context. (#9463) * DeferredLock and DeferredSemaphore can be used as asynchronous context managers on Python 3.5+. (#9546) * t.i.b.BaseConnector has custom __repr__ (#9548) * twisted.internet.ssl.optionsForClientTLS now supports validating IP addresses from the certificate subjectAltName (#9585) * Twisted's minimum Cryptography requirement is now 2.5. (#9592) * twisted.conch.ssh.keys can now read private keys in the new "openssh-key-v1" format, introduced in OpenSSH 6.5 and made the default in OpenSSH 7.8. (#9515) * twisted.web.client.HostnameCachingHTTPSPolicy was added as a new contextFactory option. The policy caches a specified number of twisted.internet.interfaces.IOpenSSLClientConnectionCreator instances to to avoid the cost of instantiating a connection creator for multiple requests to the same host. (#9138) - Remove merged patches: * openssl-errormsg.aptch * openssl111.patch - Add patch to tests for new hyperlink: * hyperlink.patch- Add another patch for openssl 1.1.1 (from upstream git): * openssl-errormsg.aptch- test-mktime-invalid-tm_isdst.patch: don't pass invalid tm_isdst value to mktime (see also bpo-15750)- Add no-pygtkcompat.patch to avoid dependency on Gtk (boo#1110669)- Version update to 18.9.0: * Fixes for the 3.7 python - Remove merged python37.patch - Add patch openssl111.patch which fixes tests with new pyOpenssl * Asserts changed behaviour- Do not write bytecode stuff when running the tests- Add BuildRequires python-tz, which seems to be required to test suite to pass. - Also, add skip_MultiCast.patch to skip tests requiring full netrworking stack.- Add missing Requires.- Fix the dependencies to match up upstream setup.py - Run the tests - Add patch to build with python3.7: * python37.patch - Add missing dependency on pyamcrest - Remove unused patch lp1102685.diff- update to 18.7.0: for full list of changes please see https://github.com/twisted/twisted/blob/twisted-18.7.0/NEWS.rst- Add python-service_identity Recommends.- update to 18.4.0 For full list of changes please see: https://github.com/twisted/twisted/blob/twisted-18.4.0/NEWS.rst- update to 17.9.0 For full list of changes please see: https://github.com/twisted/twisted/blob/twisted-17.9.0/NEWS.rst * mailman is only in python2 package- Adjust Requires and BuildRequires - Fix rpmlint warnings- remove alternatives altogether in favor of versioned executables - clean up spec file - update to 17.5.0 * too many changes to list, see full changelog in NEWS.rst- Simplify alternatives handling - Fix RPM warnings- Change to singlespec approach- specfile: * make twistd the update-alternative master, same as in the python3 version (bnc #1001523)- Update to version 16.4.0 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.4.0/NEWS - Update to version 16.3.0 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.3.0/NEWS - Update to version 16.2.0 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.2.0/NEWS - Update to version 16.1.1 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.1.1/NEWS - Update to version 16.1.0 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.1.0/NEWS - Update to version 16.0.0 For the complete list of changes plese see https://github.com/twisted/twisted/blob/twisted-16.0.0/NEWS- Update to version 15.5.0 * This is the last Twisted release where Python 2.6 is supported, on any platform. Python 3.5 (on POSIX) support has been added. * This release introduces changes that are required for Conch's SSH implementation to work with OpenSSH 6.9+ servers. * twisted.python.url is a new abstraction for URLs, supporting RFC 3987 IRIs. (#5388) * twisted.python.logfile is now ported to Python 3. (#6749) * twisted.python.zippath has been ported to Python 3. (#6917) * twisted.internet.ssl.CertificateOptions and twisted.internet.ssl.optionsForClientTLS now take a acceptableProtocols parameter that enables negotiation of the next protocol to speak after the TLS handshake has completed. This field advertises protocols over both NPN and ALPN. Also added new INegotiated interface for TLS interfaces that support protocol negotiation. This interface adds a negotiatedProtocol property that reports what protocol, if any, was negotiated in the TLS handshake. (#7860) * twisted.python.urlpath.URLPath now operates correctly on Python 3, using bytes instead of strings, and introduces the fromBytes constructor to assist with creating them cross-version. (#7994) * twisted.application.strports is now ported to Python 3. (#8011) * twistd (the Twisted Daemon) is now ported to Python 3. (#8012) * Python 3.5 is now supported on POSIX platforms. (#8042) * twisted.internet.serialport is now ported on Python 3. (#8099) * twisted.logger.formatEvent now can format an event if it was flattened (twisted.logger.eventAsJSON does this) and has text after the last replacement field. (#8003) * twisted.cred.checkers.FilePasswordDB now logs an error if the credentials db file does not exist, no longer raises an unhandled error. (#8028) * twisted.python.threadpool.ThreadPool now properly starts enough threads to do any work scheduled before ThreadPool.start() is called, such as when work is scheduled in the reactor via reactor.callInThread() before reactor.run(). (#8090) * Twisted Development test standard documentation now contain information about avoiding test data files. (#6535) * The documentation for twisted.internet.defer.DeferredSemaphore now describes the actual usage for limit and tokens instance attributes. (#8024) * twisted.python._initgroups, a C extension, has been removed and stdlib support is now always used instead. (#5861) * Python 2.6 is no longer supported. (#8017) * twisted.python.util.OrderedDict is now deprecated, and uses of it in Twisted are replaced with collections.OrderedDict. (#8051) * twisted.persisted.sob.load, twisted.persisted.sob.loadValueFromFile and twisted.persisted.sob.Persistent.save() are now deprecated when used with a passphrase. The encyption used by these methods are weak. (#8081) * twisted.internet.interfaces.IStreamClientEndpointStringParser has been removed and Twisted will no longer use parsers implementing this interface. (#8094) * #5976, #6628, #6894, #6980, #7228, #7693, #7731, #7997, #8046, [#8054], #8056, #8060, #8063, #8064, #8068, #8072, #8091, #8095, [#8096], #8098, #8106- Make "trial" the master file for update-alternatives, since it is the only one that supports python 3 so far.- Implement update-alternatives in preparation for python 3 version.- Update to version 15.4.0 * add dependency on setuptools * lore removed * please see the NEWS file- change dep from python-asn1 to python-pyasn1 (renamed long ago)- Wrong dependency rpm name, should be python-pycrypto- Add missing dependencies on python-asn1 and python-Crypto - Update to version 15.2.1: * twisted.logger now marks the `isError` key correctly on legacy events generated by writes to stderr. (#7903) * twisted.logger's documentation is now correctly listed in the table of contents. (#7904) - Changes from version 15.2.0: * twisted.internet.process has now been ported to Python 3. (#5987) * twisted.cred.credentials is now ported to Python 3. (#6176) * twisted.trial.unittest.TestCase's assertEqual, assertTrue, and assertFalse methods now pass through the standard library's more informative failure messages. (#6306) * The new package twisted.logger provides a new, fully tested, and feature-rich logging framework. The old module twisted.python.log is now implemented using the new framework. The new logger HOWTO documents the new framework. (#6750) * twisted.python.modules is now ported to Python 3. (#7804) * twisted.python.filepath.FilePath now supports Unicode (text) paths. Like the os module, instantiating it with a Unicode path will return a Unicode-mode FilePath, instantiating with a bytes path will return a bytes-mode FilePath. (#7805) * twisted.internet.kqreactor is now ported to Python 3 (#7823) * twisted.internet.endpoints.ProcessEndpoint is now ported to Python 3. (#7824) * twisted.python.filepath.FilePath now has asBytesMode and asTextMode methods which return a FilePath in the requested mode. (#7830) * twisted.python.components.proxyForInterface now creates method proxies that can be used with functools.wraps. (#7832) * The tls optional dependency will now also install the idna package to validate idna2008 names. (#7853) * Don't raise an exception if `DefaultLogObserver.emit()` gets an event with a message that raises when `repr()` is called on it. Specifically: use `textFromEventDict()` instead of a separate (and inferior) message rendering implementation. (#6569) * twisted.cred.credentials.DigestedCredentials incorrectly handled md5-sess hashing according to the RFC, which has now been fixed. (#7835) * Fixed an issue with twisted.internet.task.LoopingCall.withCount where sometimes the passed callable would be invoked with "0" when we got close to tricky floating point boundary conditions. (#7836) * twisted.internet.defer now properly works with the new logging system. (#7851) * Change `messages` key to `log_io` for events generated by `LoggingFile`. (#7852) * twisted.logger had literal characters in docstrings that are now quoted. (#7854) * twisted.logger now correctly formats a log event with a key named `message` when passed to a legacy log observer. (#7855) * twisted.internet.endpoints.HostnameEndpoint now uses getaddrinfo properly on Python 3.4 and above. (#7886) * Fix a typo in narrative documentation for logger (#7875) * tkunzip and tapconvert in twisted.scripts were deprecated in 11.0 and 12.1 respectively, and are now removed. (#6747) * twisted.protocols.gps is deprecated in preference to twisted.positioning. (#6810) * twisted.scripts.tap2deb and twisted.scripts.tap2rpm are now deprecated. (#7682) * twisted.trial.reporter.TestResult and twisted.trial.reporter.Reporter contained deprecated methods (since 8.0) which have now been removed. (#7815) * #6027, #7287, #7701, #7727, #7758, #7776, #7786, #7812, #7819, [#7831], #7838, #7865, #7866, #7869, #7872, #7877, #7878, #7885 * twisted.conch.ssh.forwarding now supports local->remote forwarding of IPv6 (#7751) * twisted.mail.smtp.sendmail now uses ESMTP. It will opportunistically enable encryption and allow the use of authentication. (#7257) * twisted.web.static is now ported to Python 3. (#6177) * twisted.web.server.Site accepts requestFactory as constructor argument. (#7016) * twisted.web.util had some HTML generation functions deprecated since 12.1 that have now been removed. (#7828) * #6927, #7797, #7802, #7846 * The resumeOffset argument to twisted.words.protocol.irc.DccFileReceive now works as it is documented. (#7775)- Version 15.1.0: * deprecated MSN protocol support * improved docs for Trial * removed deprecated UDPClient * twisted.web.static.File allows defining a custom resource for rendering forbidden pages. * minor bugfixes- Version 15.0.0: + please, see NEWS file - Update lp1102685.diffsangiovese 1667559100  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~19.10.0-150200.3.18.119.10.0-150200.3.18.1    !"""""""""#############################$%%%&&'(()))*++++++++++,,,,,,,,,,,,-------........./001110000000000000000000000000000000000023....44444444445556677789:;;8<=88>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>8888888?@?ABBBBBBBBACCAADAEFFFFFFFFFFFFEGGGGGGGGHIIIIIHJJJJKLLLLJHMNNMOOOMPQQQQQQQQQQQQQQQQQQQQPRRRRSTTTTTTTTTSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSRRRRRUUUUUUUUUUUUUUUUUUUURRPVVVVVVVVVVVVPWXXXXXXWYYYYWpython-Twisted-docMakefile_extensionsapilinks.pytraclinks.py_static.placeholder_templates.placeholder_themestwisteddefaulttheme.conftwistedtraclayout.htmlstaticcsstrac.csswiki.cssctxt_grad.pngextlink.giffooter_grad.pngmain_grad.pngmenu_grad.pngtab.pngtop_grad.pngtrac_banner.pngtwisted-icon.icotwistedtrac.csstheme.confconchbenchmarksREADMEbuffering_mixin.pyexamplesdemo.tacdemo_draw.tacdemo_insults.tacdemo_manhole.tacdemo_recvline.tacdemo_scroll.tacindex.rstsshsimpleclient.pysshsimpleserver.pytelnet_echo.tacwindow.tachowtoconch_client.rstindex.rstlistingsechoclient_shared_ssh.pyechoclient_ssh.pyindex.rstmancftp.1ckeygen.1conch.1tkconch.1conf.pycorebenchmarksbanana.pydeferreds.pyfailure.pylinereceiver.pynetstringreceiver.pytask.pytimer.pytpclient.pytpclient_nt.pytpserver.pytpserver_nt.pydevelopmentindex.rstlistingsnew_module_template.pynaming.rstphilosophy.rstpolicycode-dev.rstcoding-standard.rstcompatibility-policy.rstindex.rstrelease-process.rsttest-standard.rstwriting-standard.rstsecurity.rstexamplesampclient.pyampserver.pybananabench.pychatserver.pycourier.pycred.pydbcred.pyechoclient.pyechoclient_ssl.pyechoclient_udp.pyechoserv.pyechoserv_ssl.pyechoserv_udp.pyfilewatch.pyftpclient.pyftpserver.pyindex.rstlongex.pylongex2.pypb_exceptions.pypbbenchclient.pypbbenchserver.pypbecho.pypbechoclient.pypbgtk2.pypbgtk2login.gladepbinterop.pypbsimple.pypbsimpleclient.pypostfix.pyptyserv.pypublic.pempyui_bg.pngpyuidemo.pyrecvfd.pyrotatinglog.pysendfd.pyserver.pemshaper.pyshoutcast.pysimple.tacsimpleclient.pysimpleserv.pyssl_clientauth_client.pyssl_clientauth_server.pystarttls_client.pystarttls_server.pystdin.pystdiodemo.pystreaming.pytestlogging.pythreadedselectCocoaSimpleWebClientEnglish.lprojMainMenu.nibclasses.nibinfo.nibkeyedobjects.nibREADME.txtTwistzilla.pysetup.pyREADMEblockingdemo.pypygamedemo.pytkinterdemo.pytls_alpn_npn_client.pytls_alpn_npn_server.pytwistd-logging.tacudpbroadcast.pywxacceptance.pywxdemo.pyhowtoamp.rstapplication.rstbasics.rstchoosing-reactor.rstclients.rstcomponents.rstconstants.rstcred.rstdebug-with-emacs.rstdefer-intro.rstdefer.rstdesign.rstdirdbm.rstendpoints.rstgendefer.rstglossary.rsthowto.tidyrcindex.rstinternet-overview.rstlistingsTwistedQuotes__init__.pypbquote.pypbquoteclient.pyquoteproto.pyquoters.pyquotes.txtquotetap.pyquotetap2.pywebquote.rpyampbasic_client.pybasic_server.taccommand_client.pyapplicationservice.taccredpop3_server.pydeferredsynch-validation.pyloggerad_hoc.pyad_hoc_save.pyanalyze.pyloader-math.pyloader.pylogsource.pyoffline_analyze.pyonline_analyze.pysaver.pypbcache_classes.pycache_receiver.pycache_sender.pychatclient.pychatserver.pycopy2_classes.pycopy2_receiver.pycopy2_sender.pycopy_receiver.taccopy_sender.pyexc_client.pyexc_server.pypb1client.pypb1server.pypb2client.pypb2server.pypb3client.pypb3server.pypb4client.pypb5client.pypb5server.pypb6client1.pypb6client2.pypb6server.pypb7client.pypbAnonClient.pypbAnonServer.pytrap_client.pytrap_server.pypositioningnmealogger.pyprocessprocess.pyquotes.pytrueandfalse.pysendmsgcopy_descriptor.pysend_replacement.pyserverschat.pysslcheck_echo_certificate.pycheck_server_certificate.pysystemdwww.example.com.socketwww.example.com.socketactivated.servicewww.example.com.static.servicetrialcalculus__init__.pybase_1.pybase_2.pybase_3.pyclient_1.pyclient_2.pyclient_3.pyremote_1.pyremote_2.pytest__init__.pytest_base_1.pytest_base_2.pytest_base_2b.pytest_base_3.pytest_client_1.pytest_client_2.pytest_client_3.pytest_client_4.pytest_remote_1.pytest_remote_2.pytest_remote_3.pyudpMulticastClient.pyMulticastServer.pyadopt_datagram_port.pybasic_example.pyconnected_udp.pygetting_ip.pyipv6_listen.pylogger.rstlogging.rstoptions.rstpb-clients.rstpb-copyable.rstpb-cred.rstpb-intro.rstpb-limits.rstpb-usage.rstpb.rstplugin.rstpositioning.rstprocess.rstproducers.rstpython3.rstquotes.rstrdbms.rstreactor-basics.rstsendmsg.rstservers.rstssl.rststylesheet-unprocessed.cssstylesheet.csssystemd.rsttap.rsttemplate.tpltesting.rstthreading.rsttime.rsttrial.rsttutorialbackends.rstclient.rstcomponents.rstconfiguration.rstfactory.rstindex.rstintro.rstlibrary.rstlistingsfingeretc.usersfinger__init__.pyfinger.pytap.pyfinger01.pyfinger02.pyfinger03.pyfinger04.pyfinger05.pyfinger06.pyfinger07.pyfinger08.pyfinger09.pyfinger10.pyfinger11.tacfinger12.tacfinger13.tacfinger14.tacfinger15.tacfinger16.tacfinger17.tacfinger18.tacfinger19.tacfinger19a.tacfinger19a_changes.pyfinger19b.tacfinger19b_changes.pyfinger19c.tacfinger19c_changes.pyfinger20.tacfinger21.tacfinger22.pyfingerPBclient.pyfingerXRclient.pyfinger_config.pyfingerproxy.tacorganized-finger.tacsimple-finger.tactwistedpluginsfinger_tutorial.pypb.rstprotocol.rststyle.rstweb.rstudp.rstvision.rstimgTwistedLogo.bmpcred-login.diacred-login.pngdeferred-attach.diadeferred-attach.pngdeferred-process.diadeferred-process.pngdeferred-states.svgdeferred.diadeferred.pngindex.rstmanpyhtmlizer.1trial.1twistd.1specificationsbanana.rstindex.rstfunTwisted.Quoteslightbulbregister.htmlhistoric2002ipc10twisted-network-frameworkerrata.htmlindex.html2004ibmtalk.htmlNEWS.rstQuotesREADME.FirstTwisted-1.0Twisted-1.1Twisted-1.2Twisted-1.3Twisted-10.0Twisted-10.1Twisted-10.2Twisted-11.0Twisted-11.1Twisted-12.0Twisted-12.1Twisted-12.2Twisted-12.3Twisted-13.0Twisted-13.1Twisted-13.2Twisted-14.0Twisted-15.0Twisted-15.1Twisted-15.2Twisted-15.3Twisted-15.4Twisted-15.5Twisted-16.0Twisted-16.1Twisted-16.2Twisted-16.3Twisted-16.4Twisted-16.5Twisted-16.6Twisted-17.1Twisted-17.5Twisted-17.9Twisted-2.0Twisted-2.1Twisted-2.2Twisted-2.3Twisted-2.5Twisted-8.0Twisted-8.1Twisted-8.2Twisted-9.0index.rstipc10errata.htmlipc10paper.htmlstylesheet.csstemplate-notoc.tpltemplate.tpltwisted-debian.htmlindex.rstinstallationhowtooptional.rstindex.rstmailexamplesemailserver.tacimap4client.pyindex.rstsendmail_gmail.pysendmail_message.pysendmail_smtp.pysmtpclient_simple.pysmtpclient_tls.pyhowtoindex.rstsending-mail.rstindex.rstmanmailmail.1tutorialsmtpclientsmtpclient-1.tacsmtpclient-10.tacsmtpclient-11.tacsmtpclient-2.tacsmtpclient-3.tacsmtpclient-4.tacsmtpclient-5.tacsmtpclient-6.tacsmtpclient-7.tacsmtpclient-8.tacsmtpclient-9.tacsmtpclient.rstsmtpserversmtpserver-1.tacsmtpserver-2.tacsmtpserver-3.tacsmtpserver-4.tacsmtpserver-5.tacsmtpserver-6.tacsmtpserver-7.tacsmtpserver-8.tacmake.batnamesexamplesdns-service.pygethostbyname.pyindex.rstmulti_reverse_lookup.pytestdns.pyhowtoclient-tour.rstcustom-server.rstindex.rstlistingsnamesexample-domain.comoverride_server.pyreverse_lookup.pysimple_server.pynames.rstindex.rstpairexamplesindex.rstpairudp.pyhowtoconfiguration.rstindex.rsttunnels.rstindex.rststylesheet.csswebexamplesadvogato.pydlpage.pyfortune.rpy.pygetpage.pyhello.rpy.pyhttpclient.pyindex.rstlogging-proxy.pyproxy.pyreport.rpy.pyreverse-proxy.pyrootscript.pysilly-web.pysimple.rtlsoap.pyusers.rpy.pyweb.pywebguard.pyxmlrpc.pyxmlrpcclient.pyhowtoclient.rstglossary.rstindex.rstlistingsclientbytesprod.pycookies.pyendpointconstructor.pyfilesendbody.pygzipdecoder.pyrequest.pyresponse.pyresponseBody.pysendbody.pyelement_1.pyelement_2.pyelement_3.pyiteration-1.pyiteration-1.xmliteration-output-1.xmloutput-1.htmloutput-2.htmloutput-3.htmlquoting-output.htmlquoting_element.pyrender_1.pyrender_2.pyrender_3.pyrender_quoting.pyrender_slots_attrs.pyrender_transparent.pyslots-attributes-1.xmlslots-attributes-output.htmlslots_attributes_1.pysoap.rpysubviews-1.pysubviews-1.xmlsubviews-output-1.xmltemplate-1.xmltransparent-1.xmltransparent-output.htmltransparent_element.pywait_for_it.pywaited-for-it.htmlwaited-for-it.txtwebquote.rtlxmlAndSoapQuote.pyxmlquote.rpyxmlrpc-customized.pyresource-templates.rsttwisted-templates.rstusing-twistedweb.rstweb-development.rstweb-in-60access-logging.rstasynchronous-deferred.rstasynchronous.rstcustom-codes.rstdynamic-content.rstdynamic-dispatch.rsterror-handling.rsthandling-posts.rsthttp-auth.rstindex.rstinterrupted.rstlogging-errors.rstother-request-bodies.rstrpy-scripts.rstsession-basics.rstsession-endings.rstsession-store.rststatic-content.rststatic-dispatch.rstwsgi.rstweb-overview.rstxmlrpc.rstimgcontroller.pnglivepage.pngmodel.pngplone_root_model.pngview.pngweb-overview.diaweb-overview.pngweb-process.pngweb-process.svgweb-session.pngweb-widgets.diaweb-widgets.pngindex.rstwordsexamplescursesclient.pyindex.rstircLogBot.pyminchat.pypb_client.pyxmpp_client.pyhowtoim.rstindex.rstircclient.rstircserverclientcomm.rstindex.rst/usr/share/doc/packages//usr/share/doc/packages/python-Twisted-doc//usr/share/doc/packages/python-Twisted-doc/_extensions//usr/share/doc/packages/python-Twisted-doc/_static//usr/share/doc/packages/python-Twisted-doc/_templates//usr/share/doc/packages/python-Twisted-doc/_themes//usr/share/doc/packages/python-Twisted-doc/_themes/twisteddefault//usr/share/doc/packages/python-Twisted-doc/_themes/twistedtrac//usr/share/doc/packages/python-Twisted-doc/_themes/twistedtrac/static//usr/share/doc/packages/python-Twisted-doc/_themes/twistedtrac/static/css//usr/share/doc/packages/python-Twisted-doc/conch//usr/share/doc/packages/python-Twisted-doc/conch/benchmarks//usr/share/doc/packages/python-Twisted-doc/conch/examples//usr/share/doc/packages/python-Twisted-doc/conch/howto//usr/share/doc/packages/python-Twisted-doc/conch/howto/listings//usr/share/doc/packages/python-Twisted-doc/conch/man//usr/share/doc/packages/python-Twisted-doc/core//usr/share/doc/packages/python-Twisted-doc/core/benchmarks//usr/share/doc/packages/python-Twisted-doc/core/development//usr/share/doc/packages/python-Twisted-doc/core/development/listings//usr/share/doc/packages/python-Twisted-doc/core/development/policy//usr/share/doc/packages/python-Twisted-doc/core/examples//usr/share/doc/packages/python-Twisted-doc/core/examples/threadedselect//usr/share/doc/packages/python-Twisted-doc/core/examples/threadedselect/Cocoa//usr/share/doc/packages/python-Twisted-doc/core/examples/threadedselect/Cocoa/SimpleWebClient//usr/share/doc/packages/python-Twisted-doc/core/examples/threadedselect/Cocoa/SimpleWebClient/English.lproj//usr/share/doc/packages/python-Twisted-doc/core/examples/threadedselect/Cocoa/SimpleWebClient/English.lproj/MainMenu.nib//usr/share/doc/packages/python-Twisted-doc/core/howto//usr/share/doc/packages/python-Twisted-doc/core/howto/listings//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/TwistedQuotes//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/amp//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/application//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/cred//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/deferred//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/logger//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/pb//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/positioning//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/process//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/sendmsg//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/servers//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/ssl//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/systemd//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/trial//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/trial/calculus//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/trial/calculus/test//usr/share/doc/packages/python-Twisted-doc/core/howto/listings/udp//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial/listings//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial/listings/finger//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial/listings/finger/finger//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial/listings/finger/twisted//usr/share/doc/packages/python-Twisted-doc/core/howto/tutorial/listings/finger/twisted/plugins//usr/share/doc/packages/python-Twisted-doc/core/img//usr/share/doc/packages/python-Twisted-doc/core/man//usr/share/doc/packages/python-Twisted-doc/core/specifications//usr/share/doc/packages/python-Twisted-doc/fun//usr/share/doc/packages/python-Twisted-doc/historic//usr/share/doc/packages/python-Twisted-doc/historic/2002//usr/share/doc/packages/python-Twisted-doc/historic/2002/ipc10//usr/share/doc/packages/python-Twisted-doc/historic/2002/ipc10/twisted-network-framework//usr/share/doc/packages/python-Twisted-doc/historic/2004//usr/share/doc/packages/python-Twisted-doc/historic/2004/ibm//usr/share/doc/packages/python-Twisted-doc/historic/Quotes//usr/share/doc/packages/python-Twisted-doc/installation//usr/share/doc/packages/python-Twisted-doc/installation/howto//usr/share/doc/packages/python-Twisted-doc/mail//usr/share/doc/packages/python-Twisted-doc/mail/examples//usr/share/doc/packages/python-Twisted-doc/mail/howto//usr/share/doc/packages/python-Twisted-doc/mail/man//usr/share/doc/packages/python-Twisted-doc/mail/tutorial//usr/share/doc/packages/python-Twisted-doc/mail/tutorial/smtpclient//usr/share/doc/packages/python-Twisted-doc/mail/tutorial/smtpserver//usr/share/doc/packages/python-Twisted-doc/names//usr/share/doc/packages/python-Twisted-doc/names/examples//usr/share/doc/packages/python-Twisted-doc/names/howto//usr/share/doc/packages/python-Twisted-doc/names/howto/listings//usr/share/doc/packages/python-Twisted-doc/names/howto/listings/names//usr/share/doc/packages/python-Twisted-doc/pair//usr/share/doc/packages/python-Twisted-doc/pair/examples//usr/share/doc/packages/python-Twisted-doc/pair/howto//usr/share/doc/packages/python-Twisted-doc/web//usr/share/doc/packages/python-Twisted-doc/web/examples//usr/share/doc/packages/python-Twisted-doc/web/howto//usr/share/doc/packages/python-Twisted-doc/web/howto/listings//usr/share/doc/packages/python-Twisted-doc/web/howto/listings/client//usr/share/doc/packages/python-Twisted-doc/web/howto/web-in-60//usr/share/doc/packages/python-Twisted-doc/web/img//usr/share/doc/packages/python-Twisted-doc/words//usr/share/doc/packages/python-Twisted-doc/words/examples//usr/share/doc/packages/python-Twisted-doc/words/howto/-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:26706/SUSE_SLE-15-SP2_Update/d532de3f2a43c70e928c3987ba61b565-python-Twisted.SUSE_SLE-15-SP2_Updatedrpmxz5ppc64le-suse-linux        !!"#$###%&'(directoryASCII text, with very long linesPython script, ASCII text executableASCII textHTML document, ASCII textPNG image data, 14 x 35, 8-bit/color RGBA, non-interlacedGIF image data, version 89a, 13 x 7PNG image data, 1 x 215, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 178, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 22, 8-bit/color RGBA, non-interlacedPNG image data, 282 x 32, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 26, 8-bit/color RGBA, non-interlacedPNG image data, 338 x 75, 8-bit/color RGBA, non-interlacedPython script, ASCII text executable, with very long linestroff or preprocessor input, ASCII textUTF-8 Unicode text, with very long linesUTF-8 Unicode textXML 1.0 document, ASCII textPNG image data, 1500 x 1500, 8-bit colormap, non-interlacedPython script, UTF-8 Unicode text executable, with very long linesemptyassembler source, ASCII textHTML document, UTF-8 Unicode text, with very long linesXML 1.0 document, UTF-8 Unicode text (gzip compressed data, from Unix)PNG image data, 654 x 467, 8-bit/color RGB, non-interlacedXML 1.0 document, ASCII text (gzip compressed data, from Unix)PNG image data, 503 x 187, 8-bit/color RGB, non-interlacedPNG image data, 240 x 382, 8-bit/color RGB, non-interlacedSVG Scalable Vector Graphics imagePNG image data, 635 x 837, 8-bit/color RGB, non-interlaceddiff output, ASCII textDOS batch file, ASCII textexported SGML document, ASCII textPython script, UTF-8 Unicode text executablePNG image data, 504 x 387, 8-bit colormap, non-interlacedPNG image data, 484 x 429, 8-bit colormap, non-interlacedPNG image data, 250 x 302, 8-bit/color RGB, non-interlacedPNG image data, 504 x 361, 8-bit/color RGBA, non-interlacedPNG image data, 504 x 216, 8-bit colormap, non-interlacedPNG image data, 471 x 264, 8-bit/color RGB, non-interlacedlҨyJt-@utf-8cd42c3f79ab8d64c2744a87892e6a2f7844a435c59fa82b4f8ffb108797cdb4b?P7zXZ !t//]"k%Ia H]d۔w̖rJCi]g !@o;cν~828fh /~H%8_=9pcy\,CC__(^ܙD bαA(ãRk"f DZe|hd#)uBJdkPt{`:UglU[g[ڟ,i1Sd#2T~Xi0^i@J`a [k.CYt{0EH,ZP{L\Y(V.&*yToݖWy)ۉWCm0lآL݉U9#P2;oibfFp ӗ Q&̜⠔<=+bI>T|y C F?za`F@d`C;$?0YXʚ=ȕ[D(\`ʹtK:*ޠٺ@:z%|@k#Eٮ & LB2^BA](\l҉_i|pіܢhĠXg9?ߘ+d!DO\r46D3m!\| oab\>xAc?#̗VIF.E6y{I3ʂѰ!@ rFWb}湗?#t"LOTRD^Gd\i""܃T0F3jBs脋? z`NɅIz=zNFßH@t1hӭdm&2fjzE~[jZ'Ak!ޯ]nh^hG/?:҂2WkB>!hV`bߛjtˏ7ŎJ+ݍBD|s{_ J^}Uy0}*/hFBb23 YKyo O>eǻ (RӽIK傈F]' UA8Lz/H2~[~Laf30'Hc*a4a2l 4}zY{aFA筩23feeZ7n/Q@O |Ài2MZ#^Ő]%8`v~={$͇\B&<3?l'@Q%%Bb^.BƜ[J $u|TEHhxHgyVsj73o7kVT/ͭ1p|y_)!K}+%wϕ<0js=-{ƲeOKwu]ӖQa aV$^w1q dg%W=q$Gl~W/5IEu<nTe^)~\)WQwnGiϟ8D2Y')gSޱ|D˴JDht]Ro/ˉū=hƵwOcT@G%V* M(EypTCİ _S24.f`,s?\O$Vb wT~= i*(,S-:wZ홏xKfhSQ:)$ k{YQwz$~D`L}4 Mr on9Sx&6BǺaNmq`f 6MyB!Hp[C jr EA*ѵ/GRNnTi7mS9J- ay+a% _"# I?;i)GXYHF[QA):=* e&#܁r֖ sk,+f0eJ.$x2).w3= v74_hgKpO@%z5Hav@y98]:)/F0чKA"w ^0"6yb琣.|je&~k-#GV}ZGd"'Jc39'VN9Y ' ;ߓC\v~e٥#.>kyEː禊:fNVKj&g0w(k 1Q [Ÿ9]>|i P\bS5rlH¡ZZ+6lIuLzL# -ԉ:-'L*w 7> % Vs"{4 hیxB=[ /; f-ƓUwC5ۣ$&/N ąG. )mm)P/?%(NQqJŹ& j>^--"7ܤn;G^K9Wb~qك-Lpsz &1h3"ryEϽ1 {<_/2i[\`̞VOg q]"gPU￰Վf'9T @Pg3ab|M\bnb>BR 6B{4D`Õ=.')l[ODTFvk>{0yN[)sӥ -KEk-Ykܪ%*e $4<)21miFfxqR~i5`#r 8AlqPW%xVA1, fG,ۺR,hS׆~&lIĂzJ8\'*,4W"lR܄UwMewX+̓Z iYnAA|g +g]d-U$?lx`%iUQR4d!&B2Z2W cXO V"9-z1RoZxkj|;rFkL̺=j|*2YŸ|4z"U-Z5UJw:-'5 b}z`zŶc vIy-;KNE4^@HڐH}Z&%c5w̝ά]6;#e2WMrS%ט#*@oe&1lHDoIԅ 2Dh$@, 2ϐ}+^ALeelixm%iY-2+}a:F}vv3G ΣU}u~l&$$ Kw?3CAuJ!?)aVƄ&ԬD,$A,[0&ܿ+^Ue]l]σw\1J_0<<^c<^|}heUn[5w{*$"5Aa$kM:2 IBD8y.ՉF[=%k< #Z&ͻɇGr0{i݀! › otV%#-g* t!g%.`v-A< yƱFoNq ‰uh'6'`Mi_HDM"*rr\(WY8U#M[6!~yVf9xJF^L63 W[/If,YIG"+C0gfYy qjeXx ~muu^Rpi7I :ok0%ԶDҼi%8,ґ6lBya*f*z.35 g.,fđ:Q'؋\'5cZ\N%݆}z] fÔfx4%)wwwl 0(Z4*tNV}.n~!@3zvrۢXr{e6";5rˋYIp[ξ,¿aX^~wS \W&- .ksxbK2evMbD8Tq1}P.<9A ]F@Zw;9"ApI($ Xm _l7~Kirq+KbX^x1|e(IrПڌVZt|T VNA&,00N1}AH뿧;ڱ2N7v<A-03$PƜL׼,j"[-ik_CgO`:e݌k- 짰3K>t5zݯP脂NC($\i:zEN {AfdB›قKZ+U[ 3딪'Q.$9uCS& ,;_qߎ$}#??rGz3 {:``M}\]b-EEe}vo(cT2<Qq&W_*ow)Bek6L(`:~L*EɸHDky?֠mAY~~rIbSЯ@CͪY&wDN /8f tP â+Nx3Yx]ևo#Ium>7/S+@:-[x>>;Σk F|L ?Hc51P+4FxԂ--\ W2G)&8N%uӛ:<nEN5$$/Dǁd}(ݓ`=9I ?P\ as :~$℄R)Sqm)bGfm s.y-tc&|֓3p:=d#(MO/zBu= te<NX]ZmH8Jzfew9IyG_wG9ߙg_]>-"IM͒7'dPfI5y \INaPݗEE Bٹ~wJ_5+~D#lKm ..b 5nCVi}:QpO?)6KW>;Oм=aߢ{{xHCȅw>ozy^1bSz,bYvoeT[VTuO펍>ޫ~]g}ê$Q{xk86BeޞyO"pBMKN݅ #e#@*sj#}4W4Ypأ#4A|)ԕRj33hezkqء#z"YO?UxЙ$'ݙuTKJSvjpܻH f`<əI:>*cנm)0˛{|>8C.iF tz')+%&Y4W'*ռ;65zf}vEJnU/$|S.ҏXWXo? Y}?&_vj"^_B;8^pkբЃ: γE{)1+JI=S׶Jf "udmMXӭ ^`[!^y 7Vkx,lgQ_D+ho@e } Hㅓ }W@Bl$^xv4oS[eU;&^v!?.&;TddEۂ y* E3CsӺںyR.ԧ”R{b,5vɤ4Cp:4 $J1KMB?!9)d5' n+Bx_PK^BrwW:LZWߧI` {B3!)0ƴH0x{$s]WzYZz6_o5~co&ALEږCJ".K'(b q="NXVPˀ~Kto?-LC%ɦ&YGG/(PXyר6ߚVlMԘػ획Sؙ!gcQgGL~G < nu_' GIXSz"=' fu($[=7a:4p!;`4q$nEpޮl+jM*=.AsΥ)M M8/l2E{L= MDʂHW9z.mVgb~6&``'ȫMjVġ/;qxs43dSK{/Ob[ΘXZjvxg Ǎ\ikW|+B D29{I2{Ŀ3񂬏MYIEiKP/fg6\J#H\ "3SKۜ5J{E@J,2;xKHX򁲓2R.a'Xڟc<;k2H|mlx~ "]ޱWy8Ǣ(L d@MVKFr,W%uU]'>p3ą4yR ZL &lSY` &EDIvmE~ *6D+Gы"<ѦT)c}N?waF!N站W{ pd2ݦgmgkU2h:'i{wc-Y~[5ͲB9U@Xx"G_{,N-9;?gjIb!լRY.3n"hѥJ3hKԍAhv z_DA);ƻ(zٗg^vemEt@Jy%)_AH}8  Wr:缴ൺ@i;|mgPηZqC3]>S4% 4Qidb%Oz3&d?@Gbcʧ1V`yv]LG寭1"~~bh?;T>ww$B}wH_µ[j(=OW—?'>`bfuBMzrv46^ç?mdl=Q_&m2h9 Xe0-g+f'4U+clט,)eOe0f:n3͛$jO6N)x/L] oyȴi.csJұm[C2b'Rups1eYs~Mؗ~s#&ܯ!M..sB:dcNP[DT=!%\}7ju%v4 2fjeSt!}z%wI5AȪXЅn;WꂞJV >>c5U n'WӜEň0]{~SUcj@ZKϺ?]:ݢ/$V!4{Ut}3)V"J_f*׻  [.G㶹c ЉA,یƝ7C|8[N*U]#\-WxIX0a Q^hoa,:brTO2_,M]:'Kp^gp{^"ɉ5EX&$wy.qCyġrbOO7"nP#%Tt>n;m5 8+.J=7}OY}r%W+;N6 .%.!vߋ\6 ek!􋔉?p{ Yecwڸ/ ߎ xXח9N +k~7:P-t[aNVM\2SxSz NFexqWt>_. ؚ|0M8Sf rRvy9s9}+E?8SG (V/U+pWp N~'iβ'gp[k484jń50fCT-XF pUGCt1Xm˩r}!rFGl͎/X@nͶ'J&Z=+vXA8rD@B`ԍ(rm{*[GGP i92aZCP^B~m.Q!6lWctَG,qPz0 46ye t5=(9Xl` &q:vd^Fh,Nj%fS3q5X +;)Fwi ,&p`[ cmsq7l>8 "eJ $LbK' *Mb&]74FFnNKxY*Z1S/f*57}A yn8=lJg;_ J^'Qj]^1-ʡo;4}KLxmMlUBXXn<="ꜯzN[he)Ω>Iu=~х&39Ugأ㑩T!6h}QL O߆n8Ԋ}4%R`؏x4S-`oֲv65Տ,c y2͗!Z% U4; z^+q&I.ؓ7cSV1^q$+Y}I% Y;?HX2 'CcR^H'ַ˷̜ly֑;ؚ-Uv r}wDQeGcsv)St*L*1{hV 0 BG<(L@PVuFtNkN{@υf528냙{ⴚ3D/jX-*ݯTu#@(U M'+csс;]wg6X$c۱8gwO(oG̢m;kuWerRN ]Q0 wE&0ưvV~:\|IVFʜ.R]9*qjŐ$;8 ޞgnkߔt@s(椪 M:3?S oCbyzbOg5rI,ۋ6asE=P`֋ErE1A){6{!wӶ?? &1*]h@дh8Aֶ=+UD>AW9Wu(H,[Q+k;@ wg'@DTSiҞSv?)qgOT8 CuҪ { 1mRK(E*RWG@,9Lp.L%@R^䍝1+NnQ=I$aj2?*S:Fx2_4f/[8* |oZ/An$xƔנ%e}}d>lWbدw^z[ߪqp R&d܋t6o(D$7nRk'>$&aO!c'-dBBili0E_x>`M>k4Q?(:R۶6`c2lJ)~STg+XeT:>@[M5= t v`"nEΑZZӣ`r7ڨ($=`R|*PFBRgd!6?h6MWVE;LHiF("vD/{?2aܨ0sON_fdeCW3i/Vb,7f]y$Y3/8ɛƽ8caR=+8c! a@XW/,AlvL VoeyW ^J,̂,`QdrV?sYHD ۖ#pX.o|-qwdzVN h'xI*lR=n`taz=Jō?@*ogر:ɝ]2zɫkҼ7.ۇjt{@Kz\g̵QdSSd-$GA!SC5<er+mDs*IZ7PN^n7zo33IR1a!ղЩQY/q$.pmW!ٍDW@D59ywBR-@_ $MPX26g sR03ΔTtoPT]Wn7WEp?ZyvDɳO?ODv@L ZhyXdC} q$Kr=qaǶ"*P#=@Ԋe:SqR6̈b X6g6[O(LXX.C'))o8k%<h0ڂ#kެ4z 6P6#;Tods5~صYIr~+K+ en> }ghI<#lj:YXhYc:@;'d5ODxB\h/lOO}Z+X5"%QK: !c{d|wZf5 >⌚n Bact2|aD3`1vSn-# BE+=JkB$=-Ȓ2}&5;s V8~*ŵd{CM:ca&PvdhKO-< Y"]^OTdWje߭T=F붒lR%FbglX{?GJ +dOQ)&"|ofH`)w~%tu^[ aIPxaz&C%|с>Ɗ>#K{>jٕva n..`E򀯤uIzB1jlS,kZ;f,@)u,8 wY`10p[|S˺ Z%5:@R HGA]H<x= .6/rXGfe>3OƊ뵹v4>9s>;3/< ]5Prb!{)`#JO=}H3Yy-S:]s,9{ݟ^RxQkeIߝވ!UX&k噡vfYgzviQ;C'>S{'ea@$Jyh g0M,OZ~z"|eMK >Dγkɑϓ͔toW2x]~i:uPEXA7P!voE2;V\d:~G]r(QI^ZHekmB/^C@E@9K3JN))ö :UVp '~DZOKZW ~22% }W8kiB< c=P"y_Iz;p7}48$&yX[C,Ǜ@߭Ai a6~H]ּ_XQ=-3?S {ZeW|!2I*圲 .E]%Jzŧܛ ,sǒ:;{L ##9cue* %I0GՔ(sPnH* Sw5j3 Aa\x"[<;X|CȰNmS׬з:eY!/z|پ/QQudiqbmΕ5=%)bDvX4`!'VI"'>n-m?8jN򙛈kNґ\c3XR[].u!fةPW\v`h=?H!8h>/+e&?? (}d O9&.5Yk!ZV8NRjiưA?`o$V&dqu’nibd֮α ` [OofT`- Oy"!*QL%!yY֟n龬%0eH-ԈBqu kAߒ[P U|re|m.,-yrcBW7 Om- X ?`Im}br_* B9'pbRW҄TXi4&Vy~fhųYtZETwV+P9]de* }wf!F־?E:<k]|rԇnI- Y.9^ZN;2Rۉ(2c+ء#)+ J+>ͧ 4&Qpauꬵ!#hIzӖBV:1)S:Jc h懬q( }9B|MͤZō)ʥf>8〬k xh" ?![,YUYR~f*R$ @jq^L< REr9 : |"CJ^Y91lێfǀr7GqY]0nsoPa'j9BZnwMW<́Wc,s(38J^B9|RG{r`gCT=qs`YXm/>6wTiЦ}}`_E;7H 7(՞/XDIV/yɢ4"Lg)MR&|B~>v))y?CjƠk`sA/Ҩ Ry rdҕuR_֟Aiw1nOwա+Y~g{@F\@GAy)LV,XV7nXV$Z\wFgB юƂ+ 9JvuѮ! U=\'\H&"Xlh ie?5>pF*ݓMI9zFT !"xjs HzƖ ] *6(!Gbu9qw5YݱE! Y"Ƭ%I6eJzS:ܛTUz A@I§qTHIдݍ?Q*vZchk(CzZ'|vm(?t<]MʊʈQ|=q U?6Uk˱f0"1Pk|r(ke3n1 ?Ŀŷ4E1{p,¢.@C.I-NRM z3cqk1KK4Ծ)#cL@'81q)d}tlV=@ŀ^d4xeZՆa34oO>)PZ :l[k%[Aa.$?PP~VZju;J$:Ŗ P&=Д ^/7|c即Rg|5 !} )kït:Ts׷Իf >_ap74 &$Y_ߛJiM;_G?@]Ա s^l峔9o.EC,vn5R:HM[{ԸMq*{|Xj4^!D*\<,ujLa 䌙0#Ij62\α7:R"3,X9`{x|Ju|ɖjkhAJ^Bc,ab>`Rޚf lu;"r>h}׀~Joz׾GGH?\ɳ-Q٣+>.O(y_+e*a nN|!h` X5 \wd N +df: ./X@hOskD׿_/_f Llq M#pϼw;.4Ǫ,;]W8cLJHeȂ$0)Di.EX|(8 />᩼A3RW:mc:[}"^ & =0Zu}.d|m 2(6~EXAp 4""SIEesʖgV/ᣛmsRWZ`;EvJ#ݥ[F"AT4E =ׁU&23&/#ntvǞ2^*Yx!P޷ *K|}t@oQA3~WU)5H[M1Qɭt}6 1vbEW<4ΎV_̼gO(Դi8Ec Ss!.bg^sViQ ++l[NFCچN{q!T_dyqٮ+ڌ욌l:?#~o\_5"[d_[XOwaƭxs3y9xCj2f\u.Xw$ qr}:]2gxp]wA1 g:FH،]뛗%Hh:zH2TJ*Ԏ$Y0Tp亮L7{#;TF3g}Q#bܦQ3f57; ~ 4bw>h xӃb$ϣ!3- λ }3RD+.DpXɮ70&Kk,ֲg 2 Y9سkS:}+CrE6fyS$ &·Ӱϰ({Ҵz՟ۺgǿ_S$c^GKVp߬B=ZįY1vIP!応%f) =k[<K7*#}ij TMTanN,Rx̿#ɓE\B5moB!p#rNV]D/誕x6i>1'gfJIOo]2S0Mqbز'r'jmw4>وw<OEg)LE=DsA vE@fȿM.g:XX *2MN7=h0=n<1FYB\Z|C;TctbDm7nwU b8&aJ24 'TOHڷ1]GȺ,pPY"m͋{1x9DS) ĝQzKuԈ~I(NSvm;xD P9n9b/YɂNcq&?K/ $ڪZȩU/Q}A hhzp:ed{(DeE>X OI/!9,y(^5cQ*?MC^LCX=Y҇v#J9DUYIʤN9g}So5M@bVUsïknR%NPkM[5.NCx[M?",2iW2'oZ~&}4Ҩw-dOMub%&] /d5T sp ߔ|=OI^(SQI(^w`tAbnFI Lqb4,e¬n:&M/_ѴRX_i,buOd֔ף#J -p͊Ѻ-טG.M'X,}!Q5FtQ6|c([hbjQ}Gℼ/M*닚Ga*vb,oZkk%/ʹD6!VPhB?>zOjO3c LHng&L򋥑`b)NjI<Exյ|2_|YhfTHO 7rfrc";FƳe9U;v! Zj }Z@PE:^ ͟)3uJ% 9UANq\\ˆ;o&(:$`eSW (D*rFM"v֞_V Xluh+Gk }p>pnAXCK>ǑA]S\RrPwK2JdWkr$Z)U3:- .y卋6Cx`L黄msd=`5N$bmS `1&M eZnRlQ_fa[ lpL$IL^/iu Ь{u&chw(kp":TD#? E/˻'F >8AHף%O׿mɨ`jbsRoRb{D5h>Ә)%*DIìpdbnA֩(+Uׇayֱb5%m>l0zxሬ2p#d+B^ֶwGD5rH<|ocLT;? DuL7xI`6Hzlz">a4noßA޾7ox59>4W9Yp[K׹65'=(ìJJCy?mCu,,hvrh@9O4sHɇ@lte¢p"c* F|():{')^Q$N+7ƣ 'qUyp /M40#Q)KYTF#WqvJ̈atdffѶIeHœv/`ލa p8j#sEzÀ3W~3|+iNG #G( EvS0NGl$hb15% { *JrDCO#% >CxtmR</(qwnԂNHfqMwF];hI}svkw\O&%ăclFa !+Hbd\a_ֳl c-GvZҚ{hK#$=~Yazo-A#G5mmGX9,dr%n8MO} Y!I)ࡕξA>|i‚',tg_ dr[;G>Ocy^,^ڢ\ǎLBS4IG5rK'F},L.+1u9C|M0=|&x0^u<`\mč!uAfQ:i`ɮj+)>4%}N^JfovB+x@~Gy\HFH,OѰd5V.;d (KS6 rzBmak.K7]ݫdդښW{Ԧ}uY}0mW`HE2R)۬HF,s1T5w)Ց? $Z]μnx^4M('%Ǘ1Q2ne`>t)hWcBWW݂]d(j"{ O9l{Kg5R0!pF;T%Xڮ0_̶eL5 >%ȣsVjY"eq*Mʽ%IA#7D!U:v溨l@V!/.t1GB)ڽyx>Pbm Ot]<'X[O*(#U[Pщ2t7ZhxUO?o#(Y4i6%Z؄Ab="CSߔ52֕9 @~zyǧɯXս{g49 GI2l=TVfmCr;V\B-/3&ͳv@\'DQds7aɟ(':_]bxBjSys ~@wn)8Z?O*6(-s`A,01C3}!Aen̋>kb0FhacjXLvMuߦmi8:<TK0( vY،^@2ovw܊z@EX:GTC[ L/l 0i֧p=SZko1%'߾ld';g~̏N7QdyE >BO5^|D#>NqҗS5z"ąoםUOO[δo:ءH o,SF`\# o}Z= /ݤ/@\D%8ᚼFEJ21&)q<]095K0Imrk,a`qA4"me^OUtCgA#'2t G; Q;/b"&&$ʁŴ'ipo S^ҧfg*#' 7J>HX֌`vtj(DhzS 4qjW;_'iܙ_`e*V31AI*$X-:[z>ƶÂyp+P6]>PAl.dAf bp73)GɈ6DSl)uz)6P\o0|t^hſ4>V2!E;ξB*-"Og{PC<Oros2=sWg8tOf>=gʧ):8,^ްKHW=j2VIe x)|SLszquo$CXF +f Y2hTCWhfVU3wW3{N=aՍo2F'5sApy$TqJba c/ 嫔3 n>Afee *iȁ2oz7~/1ҵ=';|oX?x.F''@*0Mn@x͸ [ԗ#dse\/+0OLv+J"EKC;?TϮSr"h*of:=&҃ڳN&:?Q[V' 5 RIFhPE&lzZ]S4[u:/&_&S}uXƥ¾W/|͋UU:x;,<Y !<^ WzK\l&~5 W5Mutv)%wecS16˘.y]GGLB8 z{e4ZĆlN4 qu~G㙐w9ޡ^>TJDcPmTBe'[A>PLKb22?̅e!G}OL2 \r\Q4(pLJ ȼ>N P\{Z'> d [<(bݐϟ& )C[_;&/d<8%NV\X5#B']L2Në6y% cz~r|V5;&r9I8TǩEc{j Mu8N Z{9XQT mCŴ]e?ހG}`4F*и}4~dt,)l2Z)o>q vL:8(5Jyg¢h"PsBӵ-m’oD0L i1l`e&NUeӜh7x3uGnO<;FOM<eÝ{vx!k[lơ׎A-{ kM3 . s͓޴RD  mW:,P}0Q?XI3eF<>&B7DLtsN+bnqJxbm$/ r91Tk C'X] z0{% V~KD8؟Ϡqͫ#}ߟL/(^؄MA(`>$I`SrYuqugU0YB")Cs4½܄o(l:jkqs>3Mcx n*m8Qb{tk˪ ߳SvU-$7@9i}=Rii3u7bw>[ e]GXaջ٧DuUPKIǶGk iTW}S@0Ί'Sƺh@.L1yW,K[A4ς~!ډ;O!0- ?8gg$۲ RrB;lnFg@h_COFSI-u|K +aY)ni@ ^mh#~Y @vbZzޥnXP/Էh,俹MC+F)<rWh W\_бm@.$V \rqCl>x~OMB? m?*hQ-E:olNlT9 : xB,0K.刈 dy^/0O:q Ͳ9}wp1 +gX|'&…)"L|^4ܲ5<2&ĨHk|ON;BpI4>L@ǒVJJ,$ʈ8 0 1وْcDNdxl(;4YAkk)9jx- -TGkIwcaX<&K..x?@F x;)c%:Ob B|~ϖjKFT/8Z,t|cKerO cokKD&UvRi%[y~5DʐIP?{h*FI޺!y2eh`Ly}q0DS?=KG-#w]FkǸAؒ[S_?-!+抿C,FEdiÀK {,0K&_oIĨB (tH7&zy GJ˩$QPxMںXT'_ ew:U3ÀE=ʣJ| !NXBɮf^76A;x)U6yJFxa2`DNIk՝S>%!낍A$-ca ߬Fe>}t3W*rJ( 5>i]|gc6EyBw6Jh2X\MVRU'w{srqwi5%Mn<c5Y4P0QRm!%#=CXdoIJ2;_Riww2.M:r6'~>U|px:cߔON2_y`FL?Ε<~Q\k !@ 4)(hG]XU7auuKRv|tV[^ox`jQiը7W-$5.x4^::ȷTjV:$-jFA#7&gPS۔v? Ip?wVD `+Y; 5{< kKI9x7EػɄڮB]NrRzt,6f@5 $Sb.fM4r\/JyɚX鄆p  m.QTUNlWe̯Ų.yG ΫEpR4|b)Aa[]$.t{ע)qha^ `,T^IG{ |g`n;+RH9]ŢCKڹb>1[Ʒ'pC6*Eہ=/ \&b-~68+)F<8Ie 8۟UFS@h}Y"k=|PSf:cz|~?i|t2x,akUB[5$⻯V*Mo-ݎʧ';\hCjTOHp]=עV\dLfVFq ˢᷓдL?(Hc#hQꀔE9R%r4wB ?2^ 2W}L<5-ak|V=Qt.Ѩ› P| V=]A2Q砕mIN{0#7|SW7X3#4B;-wp׾ `qY"͂[7LҨINx?Jk[sحiqB\[^&h1o,(# +'\z$SߛO9CƘ>:'n@_]-Qrx6?!t1#H-vNe)/(#mYwB9<~Epъە-O+2%IBT_2;U1iwMklWT =Qxӣh[ [r&s%嚽GfjAfx j`z4ĩz$.ޘ@P nL4۸WI+G4x3 Q]͟n`%fW'iմW3J/uD&R@SЇώAjwtܔhM= -'&=CeWiOvisa^ ap7ę b1a,rs-FIcPN?Mj\yxLĄ瘢b1WnJb=2lA/.p<9ky51Jv쳻A'cUm< ~܈UNR/[0_M,[( .˸8`W:`ɚFKjYU4sX-(u% fw6oa-HF2i<> YƜל#K:-U*=pj@m_ADǡ26=aF"dg/xH{x{CLZW#F?C)Vn/'7 .F.ԙ4E6"ղP㐇ӿ?`=?7~"}2}'WUmF!a%vK->v k+׉]z*VɶTN+z^N͔z!wr_H]ZЛEáBRYXz]`/gҼOt+{9~=:` F#MReɖz8&O2j98Yl4a#!Z<"?n y=(Pco[ٞ,L ߏ'ց@X|M/"/h@<`@NɥԤcM9r}S3ܴ\u6 mq"Goq,eJ-FmB&;U/6# g ϾE: ĵ}EF]?v \q|z{+FB|Y|`&<0 m&UA@V*{& _Jo8y|_ο(|"I)I*iYz0AхˆhMbQ|Rbm~CgȓPZ2TKH)sIP[!)@i0;,1#uINKG.+Z 1J\N>q5;kch".EQh3BixڢoKqE^eh܊X^{A wJ Ľ.KlIe[֮E>>t0EUk2&쒉̨w'߰{AA2Mu{qs6M5<76"uVd i`Ytbm`~CTyY-ySc&G.H_PzJSV:ɘ u>jY,s*3ίӜR͠\rUAnD =/N]6.Yl^BAG( eM'a*(NFE+\FʃD6gJj^ki3FQ:.s5kF{nJyI3 - {=ZkTOAi*s-_ąK_njEҢo=bYkGjqRO $v '$0u l#bSsv;u) CXdAkt?\O{W @)@óK QO{Up-,JiL,YX-p=rF:9?e۳=q |td8 q1DZJ@EmU|uk 'NpX|9z Xe:Ƕ=%,qҼUM?ۡmOyߓ2]&5?DA?.l3cŰ+e!(C1Qʑyk QH v>j3"'4vJl}k#hKFhID8^E7S޸&*= ,' U*7eΦ3yhjW(P6m%aqW98Ǐ$y=vWYh<@R6tVW,v?e:',yOW5.8px4ū_r|Amn v}#1O&8g.[Zߔy3 ᪜öՑ4"ז2&ro gB-e#Vd/.ʹVŝȅ]oofjr X3Lzl=Z4ċíuRjnҚ"H4^C:UD̷|M41$؏ EasKb U)mM(qu?ȎU@&*3b{7A\*4:l18A4(ț'Nkd9@y[}pO.Y??QNf,h1{2+$;tFi$!{6ʆG] R Y?/-}I+Cj`[dg!0RǙj ;)iƎC…M26#Pw_z{x3/Nj+d̀)hPN4Ι%#ԼwLw^Dkp sSoltDt7`2QxD,q xKaC~%s7tpmt+XՅ>"|8IML*C2= :g.h{Ƒz):)2`G6g8;<-LFjҝk8G> aL~W1-\c_fJ ’ɱ߃oR{$Tw+׷fk$hJ/OԽ5LGlҹ3{5{d43$*g5^%#yQG ޒ)k#UnwvyF'm>آ{3X͍Hj桽?3]^jhFR邮zfQO]ҳyCDŽtq'{ҍ C:z\nԞ?t6+CQdT\"f<::u ՜9r:)D[[ۛ!.boSl&D\UU*zyN!pTbdB#v.ŔD.}WA/Y~f ÚfK ꢀ ^~Ъ7ҲKݳ!oǶXzo̯ ^f0, ͔]H8c鞑ddK~x.e+1׆`NKcUtYBGgO]x\c=-{|E l/%= >/!ñ漹Ž,0hLPZȕX+douYs#~8^}C_}w4!-X]/HZ-CeH J{o3Q0k:"`KȾ⊆lF62;pKL峮#'>V"utd#WfAM%s\U3Ps*9]oOK>hY52rMഖ!_:I7Tw02xP$W~z'mOgiqT+K@x~Ӌ!8 "1:pLJ0aU0X;+ M ]SڎiO&ѱhZDj蟌}-*4&C1hp"Rki؅Tʌ~$w Ǣ %7 cohA]>|V~eE~9e>~?S"u] I^ȅ!<}xQtfJUKQO^ꃚfg%9kgbRqNqy'Z߹w JT'orN'xfF̵Y7 Ձt)}*q5f}*3&S~Rr{Fb|ېr纳;4(Vk- 5 B 6n oL2 ({QNTMvkbQZ5D ߂V"B?P>O?s3,@ꕄ1Qy^)Ӛ=>qJvT)IȖ^P` ُ* X.(R\`+82Zmآnj3w9%V IT7/S{,(.FDT'LSq yPt 7MQ'JًcfAClte?AѻAOp-A 5:~Xjvՙ1DV5/X4@WlN[Z޵_.߻6ʆ;-3 "\!_> PP7evZ)eh5Rؔyy rZޯO&f/fqŁ6Zf~;v}G2ސ]15XQ($׭BLHi-i<k>)JX|11c?r%-ݶxV]9OǴdmӂƓzmau4K섏|Z!9a`u TQt*.7\,`',}3Rm" |z3-(N['vݑurG,{D)| Sr 0Hlc B(E4j&pICi&QrI|%9BfvݢgLi3"^pY!&#7TLqzv ؜=)*Dݡo}Se'o1%.a-)^$%B}@C$ C?_ (24f %PQ&qhk/fٳPt´_ rucm(ب{]3%i%|YLXeD-\?J;J9C9kēJV.]_dE;mLvUX܁Бk=xvNAXH)F FUeVD}_ק0](HcdW #@g,jE74 iAk#lf[cU~g\;˕ j<~>E5R@'4,!?5YRB^tL4}:b@ar4rC#&Kc[ >(Ng\YS$O|q kℰ'k7`~0$*o3'\ɵ:fo>IڔY[2 P4 #<:=3v۵\}m'Ip §o࿘mXca䇫^M_~#ݰ@meP5A9C,+53dCԉ 2ErT"痡.`2њ :*POml_ AI Gf ݋:1b` 3tBof^V92CaUsռߖYĴWe[3@-jjUL->$D@c-w[дvcOf6s7(഍NS@Kd^kiL9xة#QݙHh ,p2*aAS{eNra^1ДP-x )j ah純 Xpcf+]k6\n.5^p {#cJs$kKxX Wjkz"" 9.WrPޗ@()T(IҶT!bLȇ+[> @bBXd*eE#a:Y82 {?]ݸ4.t/3 R@i)P0wQV anPsc;яFK}fAmڸ,c-='uy14q'^;'sJo_W4oȖHn0HPfܓP5LaȈC#q)P(UG/θ^񰩙PΠJQsDĭun SFW/x hѯCUqy+>Uy<#u;=-or$8,0'\h )BRG'NW#i6Ggui61vd5Mz`MZu? M`[sfz}#hOP¹KkERXYyEA!Z`ExfzhGkӛ>BJwi\Pٽ.B3cCjhhM>gsߚnrj`*#^%x$lw6VW/1A,m@PԶ(+.%uRʥ&.kL,%<ՋSґzҳyX6&qNZڽ8U?0`ENţ?T62NwŽvtp>yZ]/-]ЫB:  ;&Jq"ǐ/G9Nv7j3]dzGp`yF#@b"v l$>hj4 c^:H/n9 fFJGͪx!1X"B2軜m;1r&ع͜>[\$ VkaӰM?YOKoSa߹g6ANPj|"OV&RG?ځL&Dqz3~$uM4.&0O(!P=,FUu ~$V!Z%nÌZ'tKU/ovAP,K7{HoJ z?tuoo!1$@<IA0Ejtq `6BdutH;b-7̓~bHE[B7s_F"f XLK4RLkMwނNJi G.#y˶ hmBZ!B )Y?ŝTv#mޔK:/zE6}Z(AF~4Rl(G]lלJ@$hRE7Nt5,Ai*(X Ȫ/M%'˘o~W.KLE!Oۣ۩YH t$ 7C8z4x߿ (kyyB,3x#BҾ iƞ2{GϝoIcg|lxo+Rs)y+ʩUԐR7ćM؂Kf(c'3*HAq//띙KW$CfH6>{ZpСGe/jgɇ5,­Ā+))vnI\t\Ë3hYBjWCp=9=/'q qAI,$;. ?p#8p[i`)6|->_kX @O݊$kʌl3Qig.ix@>(x??(F;Y"wGEkyb-m-䭹[uh>.&M265z4iu˺@SYըW!bGay8\9I"boFȴF,@6OÒWb~U9/tY~N$Ә3fJNu孁0P>|6Wy Le o1 R ['FG C}eH,ŮЄ7ހG}$\@e%or5L(#V:_tv{$gK;KV!, U*Fhreɜd`SH;WA`8yĐ8Q Ru@V*J=N j3 +Ha &?g-b"Q gD4/OPewq_6IHR-[,"V9ZWIj]q Y՛j8l$k6HV}¯sX$G(uD@[VT&cܟ0ʹy-yAXZ#sJ#ǯYPMpu{T8`/6 OǥK;%/j.6M *ҕ䋀9XsRZ4z l{+ǫ3\qúN w #|h3Iމz͖ZR}+IQ^P[^xu. Y߹뿎e /nYPzoCS6[T+؟ Xx%^]; _oόn K#[ Jjߒlo4 ? 5͡\q~@"MSO@٬QxZD 9ݾa $*W,;Ŗ)&^2 V-%ZDRW! k)hzxD6I$`VYPoBڼ|RwPW8BlDl]Q Gwet^rcI1(kyFsh-C>!orr|▷ 1X0Pòn&.AVE"2RA;PqpR?̂3zAx k~6U=*IȞR4Ԓʒ֘LrR3]u+YL{|qySKRP| o<cIecX`D; jLEn&GL$'c I ύEFG[z0"1=i+1g]}oe*=dKx.9;h?C:X@; GA2o, F, 0GwxEy4=ʅ`Hdkv =>s- [~MMBRy6Py(򶖂,ksK']>!zqxÄЩz-T5n0yԅ}%2uNat j m9E| S% WilP4!Xk#V -|b(se Gv{'pPNAZ7O[̠[K MJC`ajƽ]a~GʛasPuO8  `ۑT&']$dD8Dl7 oG4Хz(g-4܆H_հBL4lgEы @ǦhϠ`K 6i!f/4 z OuCK"C&.zۢ5  8Oxa 1ϧzt0+Gi7 u2Z{خP<8-@b"J-cXt<:'y kh܄*YR1{^*˵Ve _ Q]E;(翔t_ˁGg!G?;CeH zye\pn Gx;kAq=#QN){U$uq\6>̔1_\q.h/ۛʫh0hد# -loXp]2+KbPDavrAFpwz:c.ΛhaDΡis4:8yv{4*10Sc+p!`&,8,U.z(E[ 2Zbd\(lIPu17|z%hk핡$C\TIG* ldՁ go \h`- L5aM̫ D=|1HD5MRnw+HPI 2q խ RT$ZRA7 l{̅dMEyrB`Q;ݍ{*쪋87Z$֪ -kjw3*)L/dx[H*~.c~Ð]{nA \ h1,~ٳ4R"%+tX!PG6DKP;ZS0hlMZM;IM|nS2Bv%mP)9S1Ob{^xV4`AuH;RH؉CՂL]?'l t:L< Rr+)fܾG29\$Q8z]!$JLS%|Y!z!ZAhR:Ùrp y2rh}? }juEXp0SBوU!xʼȥʉڳ3[xٷ.֍{]NSDږ$k-|@ )-`bzJ:@ydX8l\&\^=U;R;A2lvK߅sO)`3&FZ|1>4՜o:E{O3 'sCDF8 @btE/#!DE6o^UCU$ӿ!Yu^u 2ݜuܺZ%,G"zg]mU[Wi"!T fc|@$4s'\;&)Ht _m/>XJ;8ՒR:HfD&9>2EgS$Qq 6_;@\qgSM[ee.f{T pnats UPK}^I`!O:!o: +Bg6$&9s-sNrS`^꠶9k;xIɍQXeffgAeZ-,49X dCVqPJ6ˠO^hl3WM=w-]MU#8v8dnvAgz]P"+*xzf & 78MB,]gUV8 t&Jdjɋo3'~IV5!M"yGa2⒬g1~P(9F+nt< /#VS_SuPg\N]xQNgs]$uƻ|$Oz:N1:e+yOO sf] $36nSJPw6^  C 4 FĭN鿝K~R~cH%⸉O\n2|.|-]h&fUq]SwSǍ&Bu2̺= LVQ^pOBъő y,t(lN\ XB*X3>z3nUw?#!y0?뵣FZ`y`hnzA %4XR(76~h_:)8QnG{1\=QRnx/ҽ]‹G_+U`@Dj^5g?#l0#凯 v߶Z>ޒfx-w)Bc:Br]uiƕ}5G<]"AUjDC|K =+Q"C };ziu?"}qBZ4֑bP3vb&!b*ON lFKC^﷦!hL~5#ȤtTà7W@aA!&/pZF۠rɭCN{u_Qy[x GZ.tuńEV%6h3Q1uL3/<}^_wfnj} ޥǠw"'.d>niv$S၃46ƟK:wRy2#k3b>eb#~/?Y Mgohqt 8IjC(r0Ewߠ&vP̗n?3yIi&!9z[h.-tA+>u9tHԧAft^\xm -dY獙A#@˱ZM+V٢A2!NhlUH7jm,6q/Yx?FWwP3AhJb̊Z#o HE&wN4( ۑWFKZ4dw>Y[vMj N }~)Z *sv@ |cabo"mN"-Ixj@]yotp9/(ƩPJs48 DouL8?ÛJk!ϪFںWO%omQ`s nl2p:jD}Zߔt =T+7Ҟ=vQ*tJ#szcqs@I5amOi*3̂e{;6|aX]TCqm,I؁̎4(4Z_SWz&>v%r6loR^t E^HCƴeݡd:)T̠x,NIΛDI(9N ԏf<A( x?2٥w~_M߅c,7UM^& tp`5W* (=eh);۩ހE17>5Ȉ+o<;l,Ziz6u󲓘0(CգƠJI;D-Wsz;Jw`Y+N Gsj77-{\b6yGnV!SwQb˖UQ]K'wH>gŋkt*C,+4V|qQbA&λ;^mjNq^l`IRtn{wh+ā) ƻQ-D˫ưY`ǘIa\%M" іeB#䪘*hG8)!;QsJ;l0MO)7HZ f{d7% Ʋ<}NR"]/ر*H)a&ڷ=r/>k7_ DIbUC]T'i$QN"řئbBFl)> R) ĿZD%~7]`I8%:1w٤?>{ Ӟ2"eB= Nye@, wB"yY0T]xt= %*=InBPe>9Wev4Qcb+"q۽/6֭żZHIKUlЂ(-e_?+DkwX!ݕ'(Ys~C/(Qe?g`l߹We7[֖r4NV'1GFNI5h)F"w 318{?)!d YC1qkH#\+#i[krhgz;R oBiNUU`zUsF2栒썺_W ' KPb;N*y8} z` U?4_V0Q4k"1&Ɨxv-ɪ9P Rh"v~@iB[w֓Y<Ӵ&~8҆d!Y8^ob%ą% a jlK*AWï 8 w/.B41ߓ֧2kd̑˰v$i$e "S{X& <,`NP뷖TF"=41,]kV FH2`h Z^Qm@Ҫwz(<ئr#6{R,x0-?'&7#D K)t(+}T(-Nsu<"lz Ŗ攓!sS~ß>k)(V !kWI[ƙG`,mx|xܛ&G8+ :y53 ^l3QoJaS|E}"3Ay=: t# BտziMU)śd: DqA;DXO8& (@~H |N)"`ŝqD%FAٗ@m$ӂIyQϥ$f |Fc=bs.IVC5Y6֒# Xu4ͺhE}#*Co'ę+a9ranc0/;1 .BQ*Ds<`-㺎EHi)5ee(tYKIdcBpʻ-^'xz,rCĒkjRYH(6?-vQ`i?RB}U9o)@g(q\&.v+N'[רԂ)L/h[?5fys/ MV%BS0ñt+|u nj&ӴHB3c}9@xUީt<zR+.byaz'NS20y> vk*[зePo^ Evz N(jS)]W:"3lۏ+jZ [DV;F~;hݓu|F!Msrh*,(1[>Ds)")7;_M]ysϔzf8oS澀RnBM:>i2 {߮4k&' XSN!Ud 4v)܀^W͆~ou,wO,@26 *ku] oB/j"JmDK)?Fmϧޛ෎QHGăqBڶi38֋6ʍj9OD(| Kd`2|NnREG=|cwJ9 BgwK3{;{gQY0H vx+p0p1o-lekBQ_*Q oY'eC膆h?$F ^+wagU1+T㧏FvDN',7 whRXG7n3%{1!^쥇p, zCSa7;kzLWi8ć8~JH?q SJzb y)3}uҡ&upز~>Wc}) be(7P/ 9Y2jGzҖq8`еa#I{O@~w6|-_+v/lv:}Q8U|\8I\hx̅ f#G!'Z$ZJnpx9+45@{fL/Sm"2{J1v`U9aAAS62*?pMlQ _T/T3ie]ȹLAA:QJKZ~] 1du5 f1&g_y=K's[cFOPtqSz<1[c珴e;lL>RX8bhqC6ZTv5 df6E}oqX7 t  WڏMoxzvmӒz8(OXc ԲjU>U=Rv04ua >|Ug\ݾdt_EU&igHF@=k,;rE)z6U󊳙BFG jݬe-`xjՒTr%(gGc7 Q4p&@C8XΖXfP5;eQG^ettӧ!gyRlH{` R.wy.di+ A픦2T9YM淠M.>śLJc,)=Ēk H5FA| rw9A!C3[7`k2f)6@x #}:<ʡD n?i7H ɭ\xuj M߶ YZ