python2-keystoneauth1-3.10.1-lp151.4.3.1<>, ^蚂/=„(R.cڢ1!~0 [9=btk4rwY*.P+WBV>S :]fH[H@rzPkuIc} Q zqG^vQAZB$ܯ¼L'} sU- <.N^ڷBVX-h_ݤM6]E/ &`H?SgcAZ?Zd + J|       T  p&(_8h9:6BF+G@HI X Y Z [ \ ]^1i#b:c:d;Oe;Tf;Wl;Yu;lvC( wCxKyS`zZ8ZHZLZRZCpython2-keystoneauth13.10.1lp151.4.3.1OpenStack authenticating toolsTools for authenticating to an OpenStack-based cloud. These tools include: * Authentication plugins (password, token, and federation based) * Discovery mechanisms to determine API version support * A session that is used to maintain client settings across requests (based on the requests Python library)^蚂cloud131/QopenSUSE Leap 15.1openSUSEApache-2.0http://bugs.opensuse.orgDevelopment/Languages/Pythonhttps://launchpad.net/keystoneauthlinuxnoarch &.%% 5 5AALtt^eNKNK6  VpKKR tYAA u  *b66y?d ''I@n@n f==+d,,   ddZ ? ?gg-i>>5~~ hh <<h)c)c>QQgg <ii<>>}kqkqJ#jj w w wJqq/J,y,yNddJE>E> '   w ! ! x.. n n'(u2A2Aqq4.. 6II*&&B022 W q>>+b##/&f&fQ== Qmi'ii__ ] ]  e  7:[  r* ''0-V-V`.. ^ ^WOO866fPWEWE+-%-%>66iEE| g gN  J(((##  n 7 7 " ! !NNvxx?>>  BB : 11&XX4,, I 6 6}jj I ? ? .skAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤^B^B^B^T"^B^B^T"^T"^B^B^T"x^A^B^T"x^A^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^A^T"x^A^A^A^T"x^A^A^T"x^A^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^A^T"x^A^A^T"x^A^A^B^T"x^A^A^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^A^T"x^A^A^T"x^A^A^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^A^T"x^A^A^A^T"x^A^A^T"x^A^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^A^T"x^A^B^T"x^A^A^T"x^A^A^B^T"x^A^B^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^A^T"x^T"x^T"x^T"x^T"x^T"x^T"x^T"x^B^T"x^A^B^T"x^A^B^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^A^A^T"x^T"x^B^T"x^A^B^A^T"x^T"x^T"x^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^T"x^A^B^p^T"^T"x^T"x8b10046e30693b5d9ced07f777315588996b4fd4443e5225bae416731113bdfc598c1a1c2bb98569e018187f874f10b8ba392d3909a2f15d086b32fdb349a0f201ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546bcb392d02dfbc05e5ed024e85a1e11103ad6ccd94eca43b8ef02083e3f04c223f01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b7e8747a0f984375751a8ad1a24dd9d53ed8710ed575b9e006205866bfab9bb66f0e2ded8b6b7cfe7373cfd34246a702b0a9f6c86206d60f0ff24eaab5a6eb9ad824c526de777be0e4871b9770ec48dd9401230828ae756011fb741bf5442e963952c7b9d3752b34d886d5994265a2a1e191a329c1df236296d8669babd1350035d65c997eed728792987818f063b190e1e2f654cfc387683066f3b27401d25935d65c997eed728792987818f063b190e1e2f654cfc387683066f3b27401d2593b483bd0420692dcc5c05d758f743f0ca31ec20e6f3ae1c71e247d88653a65d33ed48fa5ff7094000c26cb1e1e7f541c79e108098888f471cb5aad99fd157e9aaed48fa5ff7094000c26cb1e1e7f541c79e108098888f471cb5aad99fd157e9aa880d8e06ac57742c3ac5a37737869442f4353a5877c77906c167ea609a4150645a0d4a9126367bf4191cb916de3e80112e52c989b80946ebff5fca8e7ac8794d5a0d4a9126367bf4191cb916de3e80112e52c989b80946ebff5fca8e7ac8794d5c30ca215c1c90963e434bcf2fb91b47bb53d9a86cadfcece58f7442c3146e70d507472b516889400912205c6cdb6e9ad908f1f9e63cc761e11d091e9c9cac18d507472b516889400912205c6cdb6e9ad908f1f9e63cc761e11d091e9c9cac189c034c565171ca64799419d413626efab4f08d8070be70c6592ccfdb03be2cc0088d532abb44dd62e2d08b0a05af6ad9df9e08f54b60789de54acce3d1cfe836088d532abb44dd62e2d08b0a05af6ad9df9e08f54b60789de54acce3d1cfe8367de1bd7b86b9f852fc98bd5f9226b5356f8ba5dcd19735eadd27f6807787e0aa72a334d507583f17402665f9ac764a2c9abb6faef0aee4efdd46ee655409729c72a334d507583f17402665f9ac764a2c9abb6faef0aee4efdd46ee655409729cf5dd260d99583ed17f8e2d42a52130d4a39f00457feb9440410796608d42341e1d7e47fe75823d33f4a05368d71e5e8dbf02af277a348f79862e59b808b5cd871d7e47fe75823d33f4a05368d71e5e8dbf02af277a348f79862e59b808b5cd87b022b80d95a93aec476160e0738048fc451d01b12fca91e6ea755ec36ec0a76043be37fcd38700b129979fe0113a8c036228a012c5b63cffe706721d09d22cd543be37fcd38700b129979fe0113a8c036228a012c5b63cffe706721d09d22cd54239b15cfcb53803ae9a98f45ecd939fcdbd8a238a89c3917515d49a84d5ca832705fc162753e701dc77e0dd98c8d74ff4e329ddb3fd2a6893a9a8c1d651a9192705fc162753e701dc77e0dd98c8d74ff4e329ddb3fd2a6893a9a8c1d651a919ebfe2a68a5e7c57363edd6cce4a539b0320b9e5fbc8d22bd99c201f9cff25d704cb6fa9a414e8a593fc36cfb4c98c7b4d9fb85447ec5152102cf87aaa614f2514cb6fa9a414e8a593fc36cfb4c98c7b4d9fb85447ec5152102cf87aaa614f251141bb4fc638634c311ed96f6435aa303c7952fe2bfe67b71277044546c9e3fe7f4d2e510ff278ac77b723ec1cac3c955c4e1f495d46387954890985a9a9deb6cf4d2e510ff278ac77b723ec1cac3c955c4e1f495d46387954890985a9a9deb6cf243e2f89ae2de96fb8db41e05affc95b0379a3641dddf3a6728a62c22dd260f7c284afe47c7e0924f956b58242251de8c7b17abf2bad771e730a66033ad53507c284afe47c7e0924f956b58242251de8c7b17abf2bad771e730a66033ad53504fe4223d3530d2b795a9bbb24ad55d6a02c1d59e27a21501546c8d1face149833fa60298ed284556a5c460ce685ff156a5ec64948d48ee8d655bf295af4739253fa60298ed284556a5c460ce685ff156a5ec64948d48ee8d655bf295af473925876af62625c2a19f1bf1437d98b1d167c62f705a320d65cf012826437a7e63569b4ded55768f65aae727c3d2cfc60aeae5ad227ecf5bc0e36a1504a16a3263c79b4ded55768f65aae727c3d2cfc60aeae5ad227ecf5bc0e36a1504a16a3263c720dee23cb937e97a7a2c234a55dc24d1b8da1bed76fdfce4d89ac5a99fe48ae283fa2070ade027ee234b91fc68a208b946d90911b4e70c5603c0bfc25b07126b83fa2070ade027ee234b91fc68a208b946d90911b4e70c5603c0bfc25b07126b66b951e1cf8b1a28f9c33dc7e633d7d6c3171099a9e0f80c372d3907736f6e2b31c515f3768d5d76d4d433ee5221762223e45446d4c626303447295414940a6731c515f3768d5d76d4d433ee5221762223e45446d4c626303447295414940a67811a25c0ebfad1b5bb90e386b27254975a205234a2d97ac16e59484cc41e4f5d68fd1c480e808433d1840d2c0113ac47cbf1886fc132ed5235987fed5338be2e68fd1c480e808433d1840d2c0113ac47cbf1886fc132ed5235987fed5338be2ec87905ca35fea74ef373b8fd1e1731ba006d5d345a56927ded118979d905aaf20f19eaabc77a7674ff25a8e5fa6e2be790031fe491750a6341b0edccbb9280440f19eaabc77a7674ff25a8e5fa6e2be790031fe491750a6341b0edccbb928044dc77c788bcc84e4ad0b1023ef857558b89a363d90bfdc03fa74dd70bbe5d534d819c42bee4a0903378a872d9ae0819b156cc83b1f4edb8e6dc07854cc4c5c008819c42bee4a0903378a872d9ae0819b156cc83b1f4edb8e6dc07854cc4c5c008c2962ae87048f0e9824c569397955083a4bf445d22791155d70eb0dc0b7fe4116593b1142a626c5c9dc781a76db3c44c495c64c3a20ae01a8bbbc2d3450edcfb6593b1142a626c5c9dc781a76db3c44c495c64c3a20ae01a8bbbc2d3450edcfb1a735dc12e87f9f2430dd542ad4de3338d5e13c423137e65d9919e230d5e5692fa046d4911b6142457178a28bedbbd3f14aba6777014bba10df970f2dced8555fa046d4911b6142457178a28bedbbd3f14aba6777014bba10df970f2dced8555735393505acaf060650333aea45999bbedfa12bcb7934730ef5ce57d0b2d461b95076bd6e79cd77e3f85528e2ca3fb3295e3907976e661b065172a568ee7c0e295076bd6e79cd77e3f85528e2ca3fb3295e3907976e661b065172a568ee7c0e29f1093e343282dab0198c03098e69e784ce61b5688997fa9d6a3ac38a32362a634fa10e5c84221fb9e3b677896c99f3c562180793f853bbf2e221b9e8cc99a7b34fa10e5c84221fb9e3b677896c99f3c562180793f853bbf2e221b9e8cc99a7b91623fbfac28ddced9185868e5230bee428c13485d10f3a547dad2e17c74ce77d15188bfcf15f9f3324dea12e06f69212be75485f3d0e5d18cb5a311b823a3f7d15188bfcf15f9f3324dea12e06f69212be75485f3d0e5d18cb5a311b823a3f7e0cbe3fd5ed2bbfe46996fbe7a2f7ea653931789c1731adbf07c3dac2b9195395241334e8ee8a6b49c750372ecc7f332279de26e77c535f6a24420774ec8d7aa5241334e8ee8a6b49c750372ecc7f332279de26e77c535f6a24420774ec8d7aa300fa942274105709d42085a2819ad600ff5c287ccda01794c1a2323ef46d46eca780b963e8f9fdf731a9175da83c50fb8df25a26748487c886bd7b240067901ca780b963e8f9fdf731a9175da83c50fb8df25a26748487c886bd7b2400679019934aaac123c7ca5f078fa2f0fb4faa79c12acc522ef3cbce5bde08272c3f81bc5ecddcf996f5a1f2a1b209b37f8494bd562c5d0a8ad28ecffe55751aac85d51c5ecddcf996f5a1f2a1b209b37f8494bd562c5d0a8ad28ecffe55751aac85d51331ad83081a4232c411bffd211b6cc14db13ba981196ccb327e3683c23bc3dca4fe721c283d8bece71c1afa0ce0fe737974c69800d41b93c16d02d0e863c9d2c4fe721c283d8bece71c1afa0ce0fe737974c69800d41b93c16d02d0e863c9d2cc2dce937f9e306cc3654eb5af75633b554c859d126755f1c487979137a4a8820c4147c0aef394edd7beae045a8dfcc1766044048fd66319bbf8e57b18a5604a2c4147c0aef394edd7beae045a8dfcc1766044048fd66319bbf8e57b18a5604a27dcd2a00f7f290888cbf6f1091dc07e29b2f1f6164403ac7b24684dc3eb088e85807688f2cb3319d5b7b60aba44e712cb13008349f29f7e3ce75c50db94ca0c35807688f2cb3319d5b7b60aba44e712cb13008349f29f7e3ce75c50db94ca0c397b182433b1d7a82fdce08869b35635e8f5629603c17a1adc296dfff83cb06cdb93f75b2588e154aacf922a2efa53147666c2abb34edcb65a63ef1dac2901b47b93f75b2588e154aacf922a2efa53147666c2abb34edcb65a63ef1dac2901b47f189e34b0980dd44e75f511503f1c59ece2bc4de77e8e714fa4f7cef18dd21bc398d0ae4760ba6639217eeb40c4620cd59d2bf5548c780e71fa21673ef76a234398d0ae4760ba6639217eeb40c4620cd59d2bf5548c780e71fa21673ef76a23439d30f8780a13929160e51003d9666f86b0fd4021f78258b9f65187d68de5ada40fafa8d43a2d6961676bf2f9c14985af3b9a477a06334ac67fbe414e1a7ce2440fafa8d43a2d6961676bf2f9c14985af3b9a477a06334ac67fbe414e1a7ce24afb78861236e32ac5b2d0184911189a4af6bb713c9abf2d5ce8258e26a981cc88af8e031ba2fddf37321d100f4cc1b8d85eb37e2185a3b94da08978b19b6a4528af8e031ba2fddf37321d100f4cc1b8d85eb37e2185a3b94da08978b19b6a45280f5d208932c1c192d7e03249674fb39c884a429d73593ba117673352ad25294b25926f5a40095df6ab4df286a8c6eab827fdf620c25326f7990d9c14cb291f6b25926f5a40095df6ab4df286a8c6eab827fdf620c25326f7990d9c14cb291f6821252fcf2b9b03f0fff346d27fa2297c7facbac17275dd0aab9c23a7c31ba6b08e60f86647357c5f67827bd9d603a56c472fef71b76b75169b38ef52272332b08e60f86647357c5f67827bd9d603a56c472fef71b76b75169b38ef52272332b17df2dfc6c128161cb346dcc600b43333fac0c9c2c8086b970f49a2b43fc09984763d3354ae6a5a39d0c3fb1fefffda805779d9526313c76cd9ffa5a425e550a4763d3354ae6a5a39d0c3fb1fefffda805779d9526313c76cd9ffa5a425e550ac7a0aa5204d2a04842e353ffba4ca75fb0a5472d17c67e26d4da028f29541adddf9c3bc500da8243f1d3c6b9745df886d809116ba2d48dfed5ff6a44d3f925cadf9c3bc500da8243f1d3c6b9745df886d809116ba2d48dfed5ff6a44d3f925caf5a2562d47ac46a557d51842acda89e3a949e1696b04820cf3f5f41621c7b82161a45ef976fdeef4dd8ceb83886fb55ce8f360ed28570ddab229f54aac8df76761a45ef976fdeef4dd8ceb83886fb55ce8f360ed28570ddab229f54aac8df7673f4f77ba02be247c5932641630ab3c19b8e2a74cde3d0021fa4dc9bcdafc38eb54d52741b67d73fef5ba3a818da5a14776d007e3674b09245e8b4e73c5f359d554d52741b67d73fef5ba3a818da5a14776d007e3674b09245e8b4e73c5f359d5e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855ffe558ddd4d9dbacd3783fec199806109e9423c72621cc39b19b422113001b24ffe558ddd4d9dbacd3783fec199806109e9423c72621cc39b19b422113001b24a47cf30339d788f1ca8eeed955cd9cbf2b745c8a1a2ce61c5089394fde514bd90ad45bd5d6ab03f0d08444bab6a2a395d6c4a7e6b55790433cb9294c5e38b2620ad45bd5d6ab03f0d08444bab6a2a395d6c4a7e6b55790433cb9294c5e38b2622ac0e6cca253daed8a914b76d31e933d9367a76cbae857a80ef979f302ef9755a8ce9e8a1b5a602fb212c53f59f26c04d368a46768e5867778380f15cba87a7da8ce9e8a1b5a602fb212c53f59f26c04d368a46768e5867778380f15cba87a7d7110d2460fad3e0f0cf881da6a14b33a65438ad136b7a5c9f7324bf17fdb0b269ed17e3e79b3393bcc61f78c1be8a3bac7ff2eae562486d9ece26cfa340d2f989ed17e3e79b3393bcc61f78c1be8a3bac7ff2eae562486d9ece26cfa340d2f98f66313f604eb0b6544b3c0d85b152a12c3dcae6de72770d0381cd4bdd774bec9e21a811ce7bc8b007ce14b767e7976ccdaa6353b0bf9b6860447dd0492e9cacfe21a811ce7bc8b007ce14b767e7976ccdaa6353b0bf9b6860447dd0492e9cacf147f9c979fc2f4595298ba652fcd62e915328a2aa4dae7f406000e38d02ff342f1fd7e96e03543a8d066922d6bedd4dfee4dcadf23d1fcaa9aea827659763e25f1fd7e96e03543a8d066922d6bedd4dfee4dcadf23d1fcaa9aea827659763e25a47dd3562da7360d95519234b3f8e60ef9bd01b755d9dc49a26c55908905d74d01a9d6225e5559a93bf235bc777873810b188022cec8fb929f16349b8c12147b01a9d6225e5559a93bf235bc777873810b188022cec8fb929f16349b8c12147b7f12edb84b32597cbf818fc60b071b83d566ad48c284cfede1113f5fe963fca0196c4e6efc9f298141825e1301f955913240cb0d73a941e939835aaaec544669196c4e6efc9f298141825e1301f955913240cb0d73a941e939835aaaec5446691df93b56a80a91bfaa483a4c88b354a1555b9bed36fb3aafabcdbc7fc4e6f66435cb5a2c61e9fb9e20676e707a8258d837be6aca621a23c3664f6ccbf0ecbe3f35cb5a2c61e9fb9e20676e707a8258d837be6aca621a23c3664f6ccbf0ecbe3fcd79e866bd7f33ddd7ed49e60c1bdca020088c36f72d705774fed8b6d2f8b31dbdcbf32867c21ef3ecf99ccd8caf08a97e958b05dafd664bb770fdd7dbb20f10bdcbf32867c21ef3ecf99ccd8caf08a97e958b05dafd664bb770fdd7dbb20f10b09813fece76fbabc44a7b63e2b892a0eb3bf5f247659cf6d1d06359c1e2c7885580da0d5d006cbb2246cf7426a6e79bfa7e51bfdf1c060ac5f26a1b0f4657d75580da0d5d006cbb2246cf7426a6e79bfa7e51bfdf1c060ac5f26a1b0f4657d7ddd4010074de41ce61aa5d34ea43221c3e25eecf9d6b204c7997e0f4ffc040855de07abce8b8cbc0fe82a88e8499c5631a66a79a5fa0c5dde49aa8226766223e5de07abce8b8cbc0fe82a88e8499c5631a66a79a5fa0c5dde49aa8226766223e02d2df57da767de53723810a1263b833db31114985ec6bb268df537922f063e46acf57a665ab6c19e6055f93ca5afd35dd456a487b44ffb6dbcdc4b39c338c896acf57a665ab6c19e6055f93ca5afd35dd456a487b44ffb6dbcdc4b39c338c89c0ca55be4433e34c77cf6b4f89f1bce0042f756dce16013983ae03a0534ad8a4f1d724922aada3f896b5df75f6d5bbad03053d935f32da93ae4a8ad6144b2a89f1d724922aada3f896b5df75f6d5bbad03053d935f32da93ae4a8ad6144b2a895df62e9fa13e4fd96b3898327d7620b509cff46fdef7384946549c02d3b50abf4a6059f614852f75367a6970814318c8f3f1e1a3ba7b4de837423fb7ac289ba74a6059f614852f75367a6970814318c8f3f1e1a3ba7b4de837423fb7ac289ba7f2d7ae49101ac39de536064ba50b000c8864a139629372e591779f42f5c6d7547c8ce09edf8802d40ee8c28449836b243bdbdcaad2905a629994cb52b9ba17ff7c8ce09edf8802d40ee8c28449836b243bdbdcaad2905a629994cb52b9ba17ff7692f2bc7fe5da3bee1f6dfd9f1874e3b144c5c751d0969cb94dfa05a2421e6ba3736a838190985e440b6cdc34ffd0b4ce34cddffdda5aca2612e31beac906d6a3736a838190985e440b6cdc34ffd0b4ce34cddffdda5aca2612e31beac906d6f33bfe4ff2f4242a0a8cbeef624615428c02ffc66625a7bfd450c1de3b067264fda54b6ffeb6c361c8705d7b70753a2bfbfb09e38324587e6e39084d883e0a3efda54b6ffeb6c361c8705d7b70753a2bfbfb09e38324587e6e39084d883e0a3e5acca5af24b08f026f40043e6bc0d45f16fa21877368ecf1bc9192a0ad62b1073897df8c90ff65612f0eaee2b7d5b2ceb48ea113227bf1e0d5f602ccb140a4c63897df8c90ff65612f0eaee2b7d5b2ceb48ea113227bf1e0d5f602ccb140a4c6b6e5737d26960e27e57c9809f656e3523881eba6060719da16aa8a46f1426edae2681c93b5c4d9ded2992a94d60181c107314192627363a76c28db0afdf561c5e2681c93b5c4d9ded2992a94d60181c107314192627363a76c28db0afdf561c552ab632a58d69f0efd6197e03136d38f69aede8b9b38d8f4635200f204b71d1e47522cbfaf06ce5fecab4d7dd33290db600f5afa6fba06c996e78659427d42e947522cbfaf06ce5fecab4d7dd33290db600f5afa6fba06c996e78659427d42e9e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551f87530980a5cddd31fe5b237870d8c9e03e8e3324a5d8851cc17fdf9cc43df91f87530980a5cddd31fe5b237870d8c9e03e8e3324a5d8851cc17fdf9cc43df97f89bd1d6f00dcfc5a96e03ec9656a6fcf1ed3c4d7605a03b87940bf966d6aa16720c9f6d54cb0cc4810e3021d720acac8fa6cc80a1909f9d6fd288a3b0e215f6720c9f6d54cb0cc4810e3021d720acac8fa6cc80a1909f9d6fd288a3b0e215fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c02f7589b048ebdc9838c727ad6f15dde02979f98c79468f09b5d4f31f498882c02f7589b048ebdc9838c727ad6f15dde02979f98c79468f09b5d4f31f4988823b12b7734f9edc2c06564bee55348b004a6c0425fa16047c2a242c048fb6d3dfb9f76b9fcee7800dcd1556fe8349ba838f3084a652fe9b396b20e4aa9614524cb9f76b9fcee7800dcd1556fe8349ba838f3084a652fe9b396b20e4aa9614524c77e6be7408ccc7e855139bc3b479e4c2254312a094ac4a5afeb5c3afff77bb863bc7be1cf55dad2a6f3cffc10e4d75ee7241c7e5ddb09c6e7803a4f97b68a4b43bc7be1cf55dad2a6f3cffc10e4d75ee7241c7e5ddb09c6e7803a4f97b68a4b43fa46693c3f86681921a77f6bf68053b9eb38fe6be344174466c2724816d59c368ac0f1d66be74fbb0c85ec29683cdcfc0071004a86eba5e23b50fbdca9815dc68ac0f1d66be74fbb0c85ec29683cdcfc0071004a86eba5e23b50fbdca9815dc8e7023ea5fa9905bf7132ee1a38daae4da96bb4d87de426bf6206fdf161f2696b77403f385910a6a036ee527a0a2cfa7187944a3e235804b8abab6477b102447b77403f385910a6a036ee527a0a2cfa7187944a3e235804b8abab6477b102447e5a3679c88aa792a0cb06b4ed65bbe7510bc21bd8ab2347e1a6835c395364b889d17f919faec692ce20d57adf5a68685d85a2131d5381d5234c084747960b3679d17f919faec692ce20d57adf5a68685d85a2131d5381d5234c084747960b367957eddfb52da8736d5eadd02fcc22c4c24fa901c188a7bd2ecf0501fb9ba2aef4a97667e409113f90a88dd0441102ae0adf935e1ee34ebbd82211e2942ba730e4a97667e409113f90a88dd0441102ae0adf935e1ee34ebbd82211e2942ba730e54f4d2574a0920e0d1ca9baee957595936575aa3b2d6b59381cfc1f8ccb643fc463a90a437be44432f623f923d65724643f4fc3fa8b61ac89283942752ddcf97463a90a437be44432f623f923d65724643f4fc3fa8b61ac89283942752ddcf97c562414823aa360fb0b1b8a2dcde1808e5102600fe717382ffa3d4fb76fd4208594396041aa5e9a8afe37f7d577b087c0f6aecd2056237f94c1273ac3a24daa7594396041aa5e9a8afe37f7d577b087c0f6aecd2056237f94c1273ac3a24daa719d3d33fa1fde8ff239aff030e3160c6922670fb54fbfd6f9ac0da463c444beb8c0fe3e132de3f5c17d03c4b13efebf73fa82238f6acd5e3bc31232bd70516bb8c0fe3e132de3f5c17d03c4b13efebf73fa82238f6acd5e3bc31232bd70516bb39aab5ae7e9c315f1ca61eccbd12a9e48401acb74ff663c9cab5d21debe956b8fce6b30f07504ddb9b7bd4024133079236a11c1e82e41f192faa0a9339687b80fce6b30f07504ddb9b7bd4024133079236a11c1e82e41f192faa0a9339687b80ed6836bd167e32bacca1681e1529501497a91224be1a8bdfa41ad49ad6ae9529ff8b9e22337d8812b9985273da4eb83611069eacf5405d06bff9bb1ad4e98ed9ff8b9e22337d8812b9985273da4eb83611069eacf5405d06bff9bb1ad4e98ed984a11dac2eeb1000266fe08a9445279e73180d2099890226f52048de282b47be321293c737e6d0319db8027b5e03b13a26b5aaaa06fdea8f087ad8b8bd744dd4321293c737e6d0319db8027b5e03b13a26b5aaaa06fdea8f087ad8b8bd744dd413e07deeb812d797e853d3433dc301869e754f95a59f64ac6b073a23acc4cddfcf677cb99a66d952b8a1f702f5760cd9171294de9115e42fff1520e37de7fc30cf677cb99a66d952b8a1f702f5760cd9171294de9115e42fff1520e37de7fc3064bacc1af927ac20233578f290c33f299a744830ab53aa9d88e3e2e768cbeb3974a861899223aff7ad401aff544a8b35ba19f132c46b4f5ab1309efe908b74d474a861899223aff7ad401aff544a8b35ba19f132c46b4f5ab1309efe908b74d4434d65537ae8ac7da7381c46e549e0442c7e7193185ef12a0d45f0ddaa1928ef543c8313d31befc9af28b6e73ef433eb345fffb7ad281983f005a26a25c453d1543c8313d31befc9af28b6e73ef433eb345fffb7ad281983f005a26a25c453d1e9135edc6244434ea184b9eb8ae9c22ca51c674367e5ac701992b29f3341648929eddd9765ffaf55dfd6d24ad459c66bc17cdca33dfe339ce3cbb11760d5092129eddd9765ffaf55dfd6d24ad459c66bc17cdca33dfe339ce3cbb11760d50921e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85563e56bddc862dafd3b5432ed5c25dd117e87f962e9ad7886d07f06a89d679f5563e56bddc862dafd3b5432ed5c25dd117e87f962e9ad7886d07f06a89d679f55e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855a101ae196d97e29b999cacc0fdd4e76614d7bf451c3f07daba5e34e17221365ea101ae196d97e29b999cacc0fdd4e76614d7bf451c3f07daba5e34e17221365ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554bd3621b3360edf4affd65c566b5cd7714da20b09dbcf4ba1c46a7fd908d1bcf4bd3621b3360edf4affd65c566b5cd7714da20b09dbcf4ba1c46a7fd908d1bcfa0d53694cab1ef29d02e3e6bcefeff3ceb3cd40c5e0765e05d34ddfd5c800a9f97b053c6b14e456a935318866852e624db8d464ccf0ab16ac3273edd6e630c5897b053c6b14e456a935318866852e624db8d464ccf0ab16ac3273edd6e630c5864bc82bb86a8abc75126aadb0548b427d7bb87c0d7b20016696ec515eb158ae139bf39717fc5f6d9de6bf1c1e4e2308483d2521591ab4533a8a4f90e3342ee1639bf39717fc5f6d9de6bf1c1e4e2308483d2521591ab4533a8a4f90e3342ee16a49380fcab6ee49d7194809e3f4e2df5308c59ee47090c46c5373db8cb30af9232db4444d9471f6d1a51e7e725b226aea6ec7583fb188c659f6a1bf13644b9dc32db4444d9471f6d1a51e7e725b226aea6ec7583fb188c659f6a1bf13644b9dcd03dcf7603d5363d0390e00a93d7ed51ea132086aeaf04fea640c35ec31dcb2b9f744d6eeeb50ce801a5289d117ae987768e190a655faa7e080936561bbd5fd09f744d6eeeb50ce801a5289d117ae987768e190a655faa7e080936561bbd5fd0f50a349037b54abaade4cd25479323f00bcf20ad3f4e863b90ef93cffef23bd19c58f0b645f67c4c5c0c59f42c6f2e87f5973e93d3f5a72230049345107e9d0c9c58f0b645f67c4c5c0c59f42c6f2e87f5973e93d3f5a72230049345107e9d0c4bfcb8ea3c9026281b286a0c801d8079a56f85df24ccf6cde2c460a1e696af9c5db3db6cc0e1bb17dc0c1fe57e4d969c6843ca55bc3b2c8d4bc3205ba3f37ed946527f32b8a2729f8161faf07240594d9af0b952b468cac95b7654a96fcb27eb6ac7298854662ab6977a04c2b50ef8626826b6328d10924540545f1301cc49200d4702d3b94d2388a389f7af4ca3c2324656c51d506ef5bba0d826cb7a510925a350ce9bd98d2fd410fbe653d0058fa0064bc694448eb0e96fe3093073bc7cade31ca39c4c3a2bea8dde2162b81f23807a42b4987bf27a170570e5f4313bf040e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c23dad2390c1bb7f975d84f0008c984ebd987372a1b1f5c8f25a77a5ed2524efc23dad2390c1bb7f975d84f0008c984ebd987372a1b1f5c8f25a77a5ed2524ef48357cb4fc078c6aafecb095e4a7a890b5b0fe5128f89dae0aff6eaa4619c725e99b08a314aae597f42bbb4bf6340b9a252b3b524e9a659a0c6f035761e272ede99b08a314aae597f42bbb4bf6340b9a252b3b524e9a659a0c6f035761e272ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855a6e4f0a8f84cc27f2daa9df8055561e66bd9b812f84a75eb5c93f35bce4a2f16a6e4f0a8f84cc27f2daa9df8055561e66bd9b812f84a75eb5c93f35bce4a2f16e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556263d30101c25391dd0d83d7c3cec882bb627434ca10f0794cb9f6eb9e6b4b4a6263d30101c25391dd0d83d7c3cec882bb627434ca10f0794cb9f6eb9e6b4b4ab973c21f8e74bc0a1b423c35d196a6f0f306ad5a39eb8a3873665a119eddbfb370d99a336894aafdd036ccad8d91fd8dcc9042f99cfd65800eb4f8cf0b12892270d99a336894aafdd036ccad8d91fd8dcc9042f99cfd65800eb4f8cf0b128922b94157945600f9e2ae2c6fcb31557898844225a691f59ff263a2385f5193c033270cf07ea50ac32229e0e7447862f6075b0be212e628b1fe120b68fe46ae4751270cf07ea50ac32229e0e7447862f6075b0be212e628b1fe120b68fe46ae47518ad00bf7c70f93899ec62814cd5b924239466643b6e9157e2a865f181d52cf064548d677f0a2e81042330be0545c338a76a51da12ecfefd1a9cde63a3373facd4548d677f0a2e81042330be0545c338a76a51da12ecfefd1a9cde63a3373facde3a41a66a268454ae7a952a5caba04f2f919da4fe95d7922d5e88f7e7cd62b1b5e758257c5a5a75a369e73c13ef0527c63ca5d1b63f101bdc598e735c79ad0f75e758257c5a5a75a369e73c13ef0527c63ca5d1b63f101bdc598e735c79ad0f7fecb7a77b3898baa355e51c3e0a0464b7d804b825f9ff110b76041233f511f3b1ccb3c1e7d2b2bd06feb38331d89b045a5646c7c0ec841258571fb8a8b72cdc91ccb3c1e7d2b2bd06feb38331d89b045a5646c7c0ec841258571fb8a8b72cdc9f0fdd8c09555bc4e0b3e036175a58dc6cb8202864ab8ea85656eb9e583fc75814b045f2b113f81a4b25be8fc06845c4153bd3f37b42c22df79c2c607d23d39e24b045f2b113f81a4b25be8fc06845c4153bd3f37b42c22df79c2c607d23d39e2e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554ad2a2547da788bb263ad6489e014d62f94ccec5dd19a2cb33a08f92cadb7dd14ad2a2547da788bb263ad6489e014d62f94ccec5dd19a2cb33a08f92cadb7dd1b30c806a41b4a468b2a69b2e1f57340249f2ed32d8120391cdb20f03c97fd3ffe532c8aae6288533cc0962538d384c93662767e2e26cb82aa5af14775fa6cb28e532c8aae6288533cc0962538d384c93662767e2e26cb82aa5af14775fa6cb281b9f8700ce1403eebca7ca0e77a52c579f9977c3586c7a618bc157629bd9076cf51e35c426d0f507671979a2ae43abed78ee6c51fc5e24295687ed045ed6368bf51e35c426d0f507671979a2ae43abed78ee6c51fc5e24295687ed045ed6368be3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85535fac96de3017211111db93db662baa1c00bcc15cb7acc570764b32936b213d235fac96de3017211111db93db662baa1c00bcc15cb7acc570764b32936b213d2ba85757d4b1b763923b3835b5e1324a4ebbdaa5fc7ad9fec27b4b72e5218e1cdbb2ff81dba1d51e36f67510a89c5101cc5703e423e449d6870e50d17d66859e4555ee3dd6b9285e5c131cc0a6be1e42239354c9a85ea3262470fd5032ed8674b0dc26fde2b55ab29baf8e40a47402ece924c814a7fbcccbc5c35bc5530cd08630dc26fde2b55ab29baf8e40a47402ece924c814a7fbcccbc5c35bc5530cd0863221079effb9bf3a07a109f0dfd1d2c7dd7d40950e6807ebee8f33e93700a947daee583eb2188a694640ec2e75330a9f5c6ae971bef0dba40c2e0960765715600415b96eaf42ca53e820cd820cdcd5fde793abbdcb1ccee2a8ff7bc0b32a21ce247463ebdfc7fea9940d48cc97ea2c402a0117c60beb88821f2000589c2bff4070cc1e90bb3aebc35c092a762f860123f9777178f0daa759d199444c2adb209920cc1e90bb3aebc35c092a762f860123f9777178f0daa759d199444c2adb2099291fe8f22c0df8340da51bd9fca944f7915e9cdeb06213445b2df36f4ee8882f4673cde9fe0d76d6ccf86aff3562678a296482ba399860bbb5d34149488c95b9b673cde9fe0d76d6ccf86aff3562678a296482ba399860bbb5d34149488c95b9b343873b78afca5fa9c166b166a6f8713b55780583c4906f40ea51876fdf549429e2ff9d24488afb50dd28efd95e67d5e6e20639fbcffe901677be1a19f5696c59e2ff9d24488afb50dd28efd95e67d5e6e20639fbcffe901677be1a19f5696c5e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554d0a4549e6d247c8350f369601eea752facea2d572749dfc7a5551f25c2058374d0a4549e6d247c8350f369601eea752facea2d572749dfc7a5551f25c205837a5013ea283d945108d8693bfda79ac863d3d1fa6c3e6f613ae2c7aa6faa57fdaef47fb689877e65482811477ce73d91e60477490a5aa20c77916689878d7daafef47fb689877e65482811477ce73d91e60477490a5aa20c77916689878d7daaf7da1297191042a679ea19dc72fe210267849f7f49c1347880f0e1b82c02ff1d26727d39305d21c0f9a09920dceb0fcead64718481c7d1f9118983dfbd854e4926727d39305d21c0f9a09920dceb0fcead64718481c7d1f9118983dfbd854e492d5f90ab6b3e625de895314dad07055efc2903a9456cf0e889c6ef6e01fe68dab95bc371f1e78ac8680231460207730c7e2eeed2dda32f46f80dd8c811fdd77ca95bc371f1e78ac8680231460207730c7e2eeed2dda32f46f80dd8c811fdd77ca8f8047533238408e91996fbeb4f38e6a21660dad69177348303bfc5ad52da9d18f2a271b5bb4db6d4d72bf2fcc1213fe36caecbab347978f98ffb0506e38a5a58f2a271b5bb4db6d4d72bf2fcc1213fe36caecbab347978f98ffb0506e38a5a52c1474d8966a71c30b708d0db80097b08c6a41399907dda7bd906f259df2dda65ec925cd4007474ba44b0b628c155b513d51d6d157dffa0250856e985aaff1845ec925cd4007474ba44b0b628c155b513d51d6d157dffa0250856e985aaff1844f39ca8983e20ac85ffec2eba622f309d94e633bf14120a4116e530340687059c1782b7b200e6140b576bf5e8549b20784e40b1192cc0ca38fcf89f4d634dde8ff885b800b3f38f40a4da525ec618c9e876e0d0cc75dbe686e01f24776a40780739ec473e9f59ee785c82a66ae7bfec91636c56b5b0ea08560bb4158c72f07939574d79896a2ae2290fd06bafdd79c13e2442bba6d7907e47aaa1fbabb20e1e39574d79896a2ae2290fd06bafdd79c13e2442bba6d7907e47aaa1fbabb20e1e3a31333dbe89c0cd391d71c4a6e8349bcdfa7019905562fad5d3b3f31f35edf81ed73c64d9fdf073d29e834d7d1e91a640ea7f6e79e4c5b0a811ea698e2b1699eed73c64d9fdf073d29e834d7d1e91a640ea7f6e79e4c5b0a811ea698e2b1699e28d9baf9fc7b810ff19d5d87f6a320ebd47a51885e94b802fe16ccea57bfda25c1ca0914ba9edebe4d4680d5a9372c730236ccb75f3524a20924e1a2f5de01e5c1ca0914ba9edebe4d4680d5a9372c730236ccb75f3524a20924e1a2f5de01e5f53d260e772a45674e4bbcf820ca81b3d84fada35b56557a22c5eef5c854288219b66f3e9097d30f80caad449c8861924109cbbf9904504f199e9bf36d73ae1719b66f3e9097d30f80caad449c8861924109cbbf9904504f199e9bf36d73ae1759e62bdfb4b93897c8f3062259679ad536c02b092345feab5d1945e62b59f44494e9ae3f2bab197e795c84af03d736b82a3e1e5cc0ed7ebad83985acb1c0cf9c94e9ae3f2bab197e795c84af03d736b82a3e1e5cc0ed7ebad83985acb1c0cf9cc8d1b8f18fea540d92d4cca10e8d49693e6a2c897d8f0c78dadfc10c6e420aaa20500ddb7b2204b28b58a8fc52cf4e79cbe068f3d9ddbb50c48c86ef955c8c1e20500ddb7b2204b28b58a8fc52cf4e79cbe068f3d9ddbb50c48c86ef955c8c1ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85535f2a0254f0bb6d799a58eeac28c1e766e9a6c6f1fe66d45b28840a07882526935f2a0254f0bb6d799a58eeac28c1e766e9a6c6f1fe66d45b28840a07882526910969484467499460add97633f781ea32268cea255256f1fe48c9b0ebeaae1e1299021d8e8c8bcd270c06572ff23f449e41c0af60e281f81d5c3d2a807ef1556299021d8e8c8bcd270c06572ff23f449e41c0af60e281f81d5c3d2a807ef1556117c729bc63d0a10cc91ea58940e99e2f59125ae828ef20f7f15a8af81ab01291673de230ffdd43381ec98d54e0a69a9ac6651d1775c9ce5fe973dba56d22a9c1673de230ffdd43381ec98d54e0a69a9ac6651d1775c9ce5fe973dba56d22a9c290e9c2ea6548d29ae92f99847482c120fd9214ad6035d5534a55ef78c02c4640f78c111c6772f7962a6e0ced94ebf6f07f33a11453b303ba0cd3918671774380f78c111c6772f7962a6e0ced94ebf6f07f33a11453b303ba0cd3918671774386ae8e50c4c637d8f8f082864098aa69f571b58b20194994bf9daeeefc37a1d91c40ae88f925c54f00e1acd4a04891d5203094b62133199da4b6f075363ad325cc40ae88f925c54f00e1acd4a04891d5203094b62133199da4b6f075363ad325c809973972d97d940b065561fe47f406e2f674bc3d4d168c51e46ff4167b842f645f81497e40e9b3fe147d9d2966f101b32ec4ad8d0cf20bc6face1b9b6da104c45f81497e40e9b3fe147d9d2966f101b32ec4ad8d0cf20bc6face1b9b6da104cce0b2ddb9e13b72b03b44874e79d43b6ebf066d3deab8383551dfb298ebea39d78a944126a9e2cdc4f9e29af754d39b575fb9592fde8fa0f090a9dabaa89b3d078a944126a9e2cdc4f9e29af754d39b575fb9592fde8fa0f090a9dabaa89b3d0e3e392c578f43acee6ee298a490c9954e0a88c1ea88e14c1accbd23869415de6e5794fd40166475c26dbfb88680399d4a041da52601f0cde95472271c6503cb8e5794fd40166475c26dbfb88680399d4a041da52601f0cde95472271c6503cb838450239367a700b556145b30aed3014247d5e7870fccb06578670ba4b3d5766e74605e2941fe250460eac75a6a453ab3bfac4736f50dff7ab1f50aa74bf2200e74605e2941fe250460eac75a6a453ab3bfac4736f50dff7ab1f50aa74bf22007ce6789a82d312cbb6d9613969178e75985f997588de5ea4310d1eaf2365e0f7c7e8c5207aa8e5d89ace27db31012079f84cdee1d6d732f11f5571e88c1ec80cc7e8c5207aa8e5d89ace27db31012079f84cdee1d6d732f11f5571e88c1ec80cff63bfebacaa5899c234ce4c94a00d74a3afeb98c85ecc807e85d48f8063a2c341d4bceb945f98c4ad34b4e3370b3500931c3573a36cd9b9b6c021eadaf1de7841d4bceb945f98c4ad34b4e3370b3500931c3573a36cd9b9b6c021eadaf1de78f07bfccfe6f363eeb868a5facecae3ebcafcbc8f2219cb0b147a2d866eabd69cc211668e5385faf114ad37ccb3b37a908e13a09cc2e8793589abc987e2543b83c211668e5385faf114ad37ccb3b37a908e13a09cc2e8793589abc987e2543b83e88d1ff2e15fa71b9dafa2fea9c647a101a9ea6d37da533eb21031de94e8c959ea2ef8b1c509b13aedcb546ba285bec58cba2fda12dcd7efb39ac5664a4d9a62ea2ef8b1c509b13aedcb546ba285bec58cba2fda12dcd7efb39ac5664a4d9a623301d8764d98039701fe9507d00f632c37c40e5d06cac20b7851b3d3ee29d64418eac492bfde30821a0a6a73507b2d69cdd9ecc5e88823d7cc9551a0ddacdd3a18eac492bfde30821a0a6a73507b2d69cdd9ecc5e88823d7cc9551a0ddacdd3a3b077ed2952b842babd269af2bb8e2d4b07917f15ae2dce94e7820fe4919eef1de7936ac37a2498fdc176d10df41db0f3effcec6c7df920e2df7d3ed91e6636ede7936ac37a2498fdc176d10df41db0f3effcec6c7df920e2df7d3ed91e6636e1e3d5ff6a5cd06f882150fca96b6326b169fc5ff9ce32ef5a6563d1de53ac699320349a08ed2bf7764823aac5552e019397f263cbe2b36efd40e9f08d2854967320349a08ed2bf7764823aac5552e019397f263cbe2b36efd40e9f08d28549675d6992ac3d08adb2e2f54502fdce5ac20bbf3291b85f3eb66ac243903da664953d97a386837d2e0e0cb99777f083f945fbea908e37adefa2fbcffca0e757d11c3d97a386837d2e0e0cb99777f083f945fbea908e37adefa2fbcffca0e757d11cc5fa4f117d3c369656d82ed650c717706bae38878785f58dfff08ab7a7fec0040164ec4ec104ef919ffde21edca3c1f6189c5a646425399eb54deec9bd0b4c040164ec4ec104ef919ffde21edca3c1f6189c5a646425399eb54deec9bd0b4c04d0523e520f4f0478109e646b47f247c30e88c488f4e2cab3859781fced6134c8b7b0503317acfb859412cecabc9376c3a290bebfab13d69023a063a49ff0618ab7b0503317acfb859412cecabc9376c3a290bebfab13d69023a063a49ff0618aecb42df7cb1214973d6f860b25da9a2d3f9fb97716a7e68ea494dc6d34534d92b68b0983b80235ee657bc901ebe99281cae05c047d8fa0d66ec494615abfad61b68b0983b80235ee657bc901ebe99281cae05c047d8fa0d66ec494615abfad619e8b5e9d19c2c978ff848d70ff7c4a7b349d0da033d7b9c71e3789c557b76aa374c8acd35a3990b90adf78646b8ae34dae56de6ee4be5db67a9df38ba13376f574c8acd35a3990b90adf78646b8ae34dae56de6ee4be5db67a9df38ba13376f5848d057b234b4fcbaecda4839ca7b9e6d7461eb6a7992327ed5ac8112b9e9ad70ce95886ddc36204d769f3272d60d60338d3bab930f310ea560bf980657e14670ce95886ddc36204d769f3272d60d60338d3bab930f310ea560bf980657e14673986465cdd3c7aa8077ae52201cde6b8ee2663e60c0afe91f5218e0fa5d5990ce6491b59aa33beeb140e9850c69a2942006a5740118b52b1ba0b7ae67742401ce6491b59aa33beeb140e9850c69a2942006a5740118b52b1ba0b7ae67742401c6a86c5f8ed0f3978bd1df4fccc0ddb165d42283ceb116da679e9068c4e8baa32978c29bce23b22fe2c932f211d6635c3ca2f478501f57191d496c4310d08da05978c29bce23b22fe2c932f211d6635c3ca2f478501f57191d496c4310d08da05352d247f493e33923f54aa8f43138b205dd3e5f0aa702a2bd5c12a9efc4b80aab480d675740e12ca9fa209a7ea2c3f18a7fbd9c2c8a4bae4eb04d2fc09a17fe5b480d675740e12ca9fa209a7ea2c3f18a7fbd9c2c8a4bae4eb04d2fc09a17fe5683cb4643e4489dbd70ebaf39dcff91700cdb8590251a2111a6301667696fa61d829e6c16549d3b642ca1a1ed64dd3da89b0f7334157e16ff44cccb02083dc99d829e6c16549d3b642ca1a1ed64dd3da89b0f7334157e16ff44cccb02083dc99ab1fc9d3e0373a28b0231284bc17805384d3a0fa9aac5c42dac6427ed1eab9b8815c2d2455bf8b1903704344aa681e218246660c849a65c357fed6a840fab3a4815c2d2455bf8b1903704344aa681e218246660c849a65c357fed6a840fab3a4de88e148572473db34b8b30f214dc2ee0802161adb475467b4b0ea386800868cacef43339b4ebf1492130d2c1b5242cfbd2a6d07097439482de088bd1ece6e33e8c69d44acbe81d00ac713c01b692c5c483cac997ad28ac9733c5b2259161fddrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-keystoneauth1-3.10.1-lp151.4.3.1.src.rpmpython-keystoneauth1python2-keystoneauth1@     python(abi)python2-PyYAMLpython2-iso8601python2-lxmlpython2-oauthlibpython2-os-service-typespython2-requestspython2-requests-kerberospython2-sixpython2-stevedorerpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.73.122.14.21.10.03.0.4-14.6.0-14.0-15.2-14.14.1^Z@ZZ*~Z%8YV@X@X|@X*WWWu@W@W"W@Wf@WUeV'@Vf@Vcloud-devel@suse.detbechtold@suse.comcloud-devel@suse.decloud-devel@suse.decloud-devel@suse.decloud-devel@suse.decloud-devel@suse.dedmueller@suse.comdmueller@suse.comtbechtold@suse.comtbechtold@suse.comtbechtold@suse.comtbechtold@suse.comdmueller@suse.comtbechtold@suse.comdmueller@suse.comdmueller@suse.comtbechtold@suse.combwiedemann@suse.comtbechtold@suse.com- Switch to stable/rocky spec template as version 3.4.0 is broken - Blacklist tests that are incompatible with python-requests-mock 1.7.0 - update to version 3.10.1 - Fix interface argument to get_all_version_data - Reference class variable in Status - Fix logging of encoded headers - Collect timing information for API calls - Remove tox_install.sh and align with constraints consumption - Fix W503 line-break-before-binary-operator - Split request logging into four different loggers - Infer version from old versioned service type aliases - Add some comments explaining split_loggers flag logic - import zuul job settings from project-config - Turn normalize_status into a class - Use Status variables in tests - Revert "Change log hashing to SHA256" - Update links in README - Add methods to get all of the version data - Return the endpoint_override from EndpointData - Trivial: Update pypi url to new url - raise_exc default in Adapter - OpenDev Migration Patch - Change log hashing to SHA256 - Add minimum version for requirements - Expose version status in EndpointData - Update UPPER_CONSTRAINTS_FILE for stable/rocky - Override support message in AuthorizationFailure class - Update .gitreview for stable/rocky - Add pep8 import order validation - Make VersionData class - Update reno for stable/queens - Make tests pass in 2020 - Be more helpful when version discovery fails - Implement service_type alias lookups - Add optional support for retrying certain HTTP codes - Remove PYTHONHASHSEED setting - fix tox python3 overrides - Allow tuples and sets in interface list - Zuul: Remove project name - Expose version_between as a real function - Add netloc and version check for version discovery - Updated from global requirements - Fix a spelling error - fix a typo in session.py - add lower-constraints job - Add oslo.config option for split-loggers- Switch to stable/queens spec template- update to version 3.4.0 (bsc#1078607) - Implement system scope - Make none auth usable in CLI - Mark SAML loader properties as required - Shift additional_user_agent in the stack - Fix docs builds - Use stestr in tox.ini - Add documentation and release note for app creds - Add osc, shade and sdk tips jobs - Add support for application credentials - Updated from global requirements - Fix masked variable name- update to version 3.3.0 - Add tests for mutually exclusive [min|max]version - Migrate to stestr - Correct docs usage of keystoneauth1 session - Nits in using-sessions.rst - Make discover._version_between more consistent - Updated from global requirements - Remove setting of version/release from releasenotes - Sanely order assertion args in test_discovery - Recommend unversioned for endpoint-override - Add version discovery support to BaseAuthPlugin - Add loading mock fixtures - Add EndpointData.__str__ for debugging - Extract iterables for test_keystone_version_data- update to version 3.2.0 - Add release note for 'none' auth plugin - Protect against missing interface attribute - Fix docstring typo - Adapter.get_conf_options(deprecated_opts) - Update discovery url normalization with catalog info - Fix exception message in adapter loading - Enable some off-by-default checks - Allow discovery URLs to have trailing slashes - Add method to get the api major version - Remove use of positional decorator - Don't use mutable defaults in allow arguments - Update reno for stable/pike - Set self.allow to a dict if None is passed - Parameter to tune mutual authentication in kerberos - Updated from global requirements- update to version 3.1.0 - Allow setting EndpointReference in ADFSPassword - Add returning EndpointData objects from discovery - Refactor volume mock urls in identity_common tests - Add support for version ranges - Record the discovered major api version - Add an allow_version_hack flag to session and identity plugins. - Use https for *.openstack.org references - Add note to requirements.txt - Miscellaneous cleanup in discover.py - Make discover.version_between private - Support a list of interface values - Clean up a few review nits - Updated inconsistent value of scope parameter - Pass kwargs to the plugin getter - Add paragraph clarifying major and micro versions - Trivial fix typo in document - Introduce keystoneauth1.loading.adapter - Update reno for stable/ocata - Add flags to turn discovery on and off - Fix html_last_updated_fmt for Python3 - Ensure constructed urls have trailing '/'s - Add global_request_id param to Adapter constructor - Update docs and add a release note - Optimize the link address - Allow users to specify a serializer easily - Fixed minor review comments and updated docs - Fix ClientException message property not set properly - Plumb endpoint_override through get_endpoint_data - get_conf_options can exclude deprecated opts - Fix _run_discovery caching - Allow new cassettes to be recorded via fixture - Uncomment warning-is-error for doc building - Remove unused test requirement pycrypto - Support explicitly requesting the 'latest' version - Move version discovery logic to keystoneauth1.discover - Add min_version and max_version to adapter constructors - Replace assertTrue(isinstance()) with assertIsInstance() - Expose getting EndpointData on adapter and session - Fixed multiple target Auth warning in docstring - Add 'none' identity plugin - normalize_version_number([1]) => (1, 0) and docs - Using assertFalse(A) instead of assertEqual(False, A) - Add tests to specifically test trailing slash behavior - Add url manipulation and microversion collection - Remove kwargs from adapter.get_endpoint_data - Minor cleanup - Add ADFSPassword to keystoneauth1 entry points - Remove deprecated_since for interface and fix text - Fix V3ADFSPassword retrieval of scoped token - Handle pathless URLs - Add bindep.txt file - Include the auth_url in the discovery failure message - Expose valid_interfaces as a ListOpt for config files - Remove pbr warnerrors in favor of sphinx check - Rework EndpointData construction to normalize catalog first - Change locations of docs for intersphinx - Discourage 'version' and accept 'M.latest' - Optimize matching version no microversion needed - Make Discover.version_data accept null max_version - Rework discovery cache - Add support for next_min_version and not_before - Add ability to specify a microversion in a request - Port the missing version data discovery tests from ksc - Expand some discover.py docstrings - Update test requirement - Prevent JSON decode errors in the pre-record hook - Nix EndpointData.get_versioned_data(authenticated) - Allow users to specify request matchers in Betamax - Switch from oslosphinx to openstackdocstheme - Enable sphinx todo extension - Update URLs in documents according to document migration - Updated from global requirements - Ensure we discover only when we should- update to version 2.18.0: - Allow specifying client and service info to user_agent - Prevent MemoryError when logging response bodies - Only log application/json in session to start - Fix a typo in opts.py - Fix parameters for Kerberos Auth Plugin - Enable release notes translation - mark a few oidc parameters as required - Drop MANIFEST.in - it's not needed by pbr - Remove discover from test-requirements - Update reno for stable/newton - Remove references to Python 3.4 - Raise NotImplementedError instead of NotImplemented - Add Constraints support - Show team and repo badges on README - Use mockpatch fixtures from fixtures - Replace six.iteritems() with .items() - Using assertIsNotNone() instead of assertNotEqual(None) - Replace yaml.load() with yaml.safe_load() - be more explicit about connection errors - Add test for header in Saml2 plugin - Correct betamax fixture for more strict IDNA - X-Serivce-Token should be hashed in the log - Don't issue deprecation warning when nesting adapters - Correctly Omit Response Body in Debug Mode - doc: remove unused import - Removes unnecessary utf-8 encoding - Test that v3fedkerb plugin loads - Allow setting client_name, client_version on adapter - Log request-id for each api call - standardize release note page ordering - Fix a typo in base.py - Add a service token wrapper - Implement caching for the generic plugins. - Add reauthenticate to generic plugins - Show deprecation warning and limit features for KSC session - Don't use private testtools.test module - Prevent changing content type in request - Add __ne__ built-in function - Add a full listing of all auth plugins and there options - Updated from global requirements - Use comma as separator in ECP Accept HTTP header- update to 2.12.3: * Correctly Omit Response Body in Debug Mode * Use comma as separator in ECP Accept HTTP header * Only log application/json content type * X-Serivce-Token should be hashed in the log * Don't use private testtools.test module- update to 2.12.2: * be more explicit about connection errors- Fix urlupdate to version 2.12.1 * get_endpoint should return None when no version foundupdate to version 2.12.0 * Allow identity plugins to discover relative version urls * Disables TCP_KEEPCNT when using Windows Subsystem for Linux * User-agent header shouldn't start with a space * Add tests for user-agent with odd sys.argv * add status code 308 to _REDIRECT_STATUSES * Update the home-page in setup.cfg * Updated from global requirements- update to version 2.11.0 * Add tests for YamlJsonSerializer * Add missing class name to tuple of public objects * Fix arguments to _auth_required() * Don't include openstack/common in flake8 exclude list * Fix the doc error in "using-session" * Improve authentication plugins documentation * Use assertEqual() instead of assertDictEqual() * Updated from global requirements * Correctly report available for ADFS plugin- update to 2.10.0: * Lazy load oauthlib for plugin loading * oidc: add missing 'OidcAccessToken' to __all__ * oidc: implement client_credentials grant type * Fix ECP doc link in Saml2 Password class doc * Updated from global requirements * Fix link for "extras dependencies" in extras doc * Add pretty serializer for betamax fixture * Update hacking to global-requirements value * Use SAML2 requests plugin * Updated from global requirements * oidc: move the get_unscoped_auth_ref into the base class * oidc: deprecate grant_type argument * oidc: add discovery document support * Add additional_headers to session and adapter * Add Python 3.5 classifier and venv * remove unused LOG * Updated from global requirements * Updated from global requirements * Add prompt parameter to Opt * Auth plugin for X.509 tokenless authentication * oidc: fix OpenID scope management * Add create_plugin to loader- update to 2.9.0: * Updated from global requirements * move release note to correct directory * oidc: fix OpenID Connect scope option * oidc: add tests for plugin loader * Don't mock the session.request function * oidc: refactor unit tests * Fix code example for OAuth1 authentication * Add entrypoint for Federated Kerberos * Fix kerberos available property * Document named kerberos plugin * Support TOTP auth plugin * Make the kerberos plugin loadable * Add available flag to plugin loaders * PEP257: Ignore D203 because it was deprecated * Apply a heuristic for product name if a user_agent is not provided- update to 2.8.0: * Updated from global requirements * Let Oidc* auth plugins accept scope parameters as kwargs * Update keystoneauth fixture to support v3 * Check that all defined entry points can be loaded * Use betamax hooks to mask fixture results * oidc: fix typo on class name * oidc: fix option definition * oidc: add OidcAccessToken class to authenticate reusing an access token * oidc: fix typo in docstring * oidc: DRY when obtaining an access token * oidc: DRY when obtaining a keystone token * oidc: Remove unused parameters in _OidcBase * Add is_domain to keystoneauth token * docstring: fix typo * Add oauth plugin to keystoneauth * Expose is_admin_project in AccessInfo * Expose allow parameters for URL discovery * Refactor variables for fixture and service * Enable bandit * Lazy import oslo_config as required * Add 303 as redirect code for k2k plugin * Updated from global requirements * Fix H405, D105, D200, and D203 PEP257 * Updated from global requirements * Fixing D204, D205, D208, and D211 pep8 * Fixing D301 docstring * Removing tox ignore D400 * Fix documentation example again * Include query string in request logging * Removing tox ignore D401 and make keystoneauth compliant- switch to upstream maintained package - update to 2.6.0: * Allow to send different recorders to betamax * Fix doc build if git is absent * Updated from global requirements * Updated from global requirements * fix OrderedDict mutated during iteration * Fix for PEP8 violation - D202 (No blank lines allowed after function docstring.) * Examples for migration from keystoneclient * Renamed endpoint to interface in docstring * Keystoneauth Authentication Plugin doc typo * Allow seeing full token response when debug enabled * Update reno for stable/mitaka * Examples for kerberos and saml2 plugins * Adding authentication compatibility for OpenStackClient * Swap the order of username deprecation * Fix exported symbol in identity.v3 * Editorial nits for docs * Improve usability of docs * Add links to federation plugins * Remove unavailable parameter * Generate FederationBaseAuth constructor parameters * Update test run instructions * Fix typos and improve formatting in migrating.rst * Updated from global requirements * Updated from global requirements * Cleanup docstrings * Fix docstring in identity.v3.oidc module * Cleanup test-requirements.txt * Updated from global requirements * Allow parameter expansion in endpoint_override * Updated from global requirements * Updated from global requirements * Updated from global requirements * Use positional library instead of our own copy * Remove argparse from requirements * HTTPError should contain 'retry_after' parameter * Updated from global requirements * Remove keyring as a test-requiremnet * Mark password/secret options as secret * Replace deprecated library function os.popen() with subprocess- update to 2.2.0: * add release notes for ksa 2.2.0 * Updated from global requirements * Replace assertEqual(None, *) with assertIsNone in tests * Updated from global requirements * Change LOG.warn to LOG.warning * Wrong usage of "a" * On Windows and OSX, the 'socket' python module does not contain the attributes TCP_KEEPCNT or TCP_KEEPINTVL, causing services consuming the library to malfunction * Updated from global requirements * Add betamax to test-requirements.txt * Add some documentation about migrating from ksc * Docstring corrections * Iterate over copy of session.adapters keys in Python2/3 * Provide a RFC 7231 compliant user agent string * Updated from global requirements * Deprecated tox -downloadcache option removed * small fix to missing parameters in documentation * Remove confusing documentation * Update coverage to keystoneauth1 * Updated from global requirements * Cleanups to K2K plugin * Get versioned url for K2K auth * Extract SAML fixtures into templates * Add BetaMax Fixture * Updated from global requirements - Switch to .spec from rpm-packaging upstream project- Update to version 2.1.0 * Add oslo.config compatibility attributes * Default for service service type should be empty * Put py34 first in the env order of tox 2.0.0 - ---- * Add release notes for keystoneauth * Add argparse registration from Adapter objects * Fix PEP 257 error * Remove Python 2.6 support * Tweak the way plugin attributes are loaded * Add load_from_options_getter to plugin loading * Cleanup time patching * Put Session options into an option group * Address hacking check H405 * Allow saving and caching the plugin auth state * Add three pieces of the Session interface * Specify default_domain to generic plugin * Migrate kerberos plugin * Use XML matcher * Add XML matcher * Split ADFS and SAML2 plugins * SAML2 authentication plugins in keystoneauth * Correct references in authentication-plugin.rst * Declare an extras directory for plugins * Make public the base loader classes * Refactored AccessInfo.project_scoped accessor 1.2.0 - ---- * Expose bind data via AccessInfo * Return None from generic plugin if failure * Fix deprecated options in oslo_config * Add url as a deprecated alias for endpoint * auto-generate release history * Make RST section delineation length match title * Remove "Features" section from README * Update the project description * Make __all__ immutable * Add UnknownConnectionError to __all__ * remove references to keystone CLI * Add shields.io version/downloads links/badges into README.rst * Allow fetching oslo.config Opts from plugins * add openid connect plugins * Change ignore-errors to ignore_errors- Initial packaging (version 1.1.0)python-keystoneauth1cloud131 1592302210  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3.10.1-lp151.4.3.13.10.1-lp151.4.3.13.10.1-lp151.4.3.1     !"""keystoneauth1keystoneauth1-3.10.1-py2.7.egg-infoPKG-INFOSOURCES.txtdependency_links.txtentry_points.txtnot-zip-safepbr.jsonrequires.txttop_level.txt__init__.py__init__.pyc__init__.pyo_utils.py_utils.pyc_utils.pyoaccess__init__.py__init__.pyc__init__.pyoaccess.pyaccess.pycaccess.pyoservice_catalog.pyservice_catalog.pycservice_catalog.pyoservice_providers.pyservice_providers.pycservice_providers.pyoadapter.pyadapter.pycadapter.pyodiscover.pydiscover.pycdiscover.pyoexceptions__init__.py__init__.pyc__init__.pyoauth.pyauth.pycauth.pyoauth_plugins.pyauth_plugins.pycauth_plugins.pyobase.pybase.pycbase.pyocatalog.pycatalog.pyccatalog.pyoconnection.pyconnection.pycconnection.pyodiscovery.pydiscovery.pycdiscovery.pyohttp.pyhttp.pychttp.pyooidc.pyoidc.pycoidc.pyoresponse.pyresponse.pycresponse.pyoservice_providers.pyservice_providers.pycservice_providers.pyoextras__init__.py__init__.pyc__init__.pyo_saml2__init__.py__init__.pyc__init__.pyo_loading.py_loading.pyc_loading.pyov3__init__.py__init__.pyc__init__.pyoadfs.pyadfs.pycadfs.pyobase.pybase.pycbase.pyosaml2.pysaml2.pycsaml2.pyokerberos__init__.py__init__.pyc__init__.pyo_loading.py_loading.pyc_loading.pyooauth1__init__.py__init__.pyc__init__.pyo_loading.py_loading.pyc_loading.pyov3.pyv3.pycv3.pyofixture__init__.py__init__.pyc__init__.pyodiscovery.pydiscovery.pycdiscovery.pyoexception.pyexception.pycexception.pyohooks.pyhooks.pychooks.pyokeystoneauth_betamax.pykeystoneauth_betamax.pyckeystoneauth_betamax.pyoplugin.pyplugin.pycplugin.pyoserializer.pyserializer.pycserializer.pyov2.pyv2.pycv2.pyov3.pyv3.pycv3.pyohacking__init__.py__init__.pyc__init__.pyochecks.pychecks.pycchecks.pyoidentity__init__.py__init__.pyc__init__.pyoaccess.pyaccess.pycaccess.pyobase.pybase.pycbase.pyogeneric__init__.py__init__.pyc__init__.pyobase.pybase.pycbase.pyopassword.pypassword.pycpassword.pyotoken.pytoken.pyctoken.pyov2.pyv2.pycv2.pyov3__init__.py__init__.pyc__init__.pyoapplication_credential.pyapplication_credential.pycapplication_credential.pyobase.pybase.pycbase.pyofederation.pyfederation.pycfederation.pyok2k.pyk2k.pyck2k.pyooidc.pyoidc.pycoidc.pyopassword.pypassword.pycpassword.pyotoken.pytoken.pyctoken.pyotokenless_auth.pytokenless_auth.pyctokenless_auth.pyototp.pytotp.pyctotp.pyoloading__init__.py__init__.pyc__init__.pyo_plugins__init__.py__init__.pyc__init__.pyoadmin_token.pyadmin_token.pycadmin_token.pyoidentity__init__.py__init__.pyc__init__.pyogeneric.pygeneric.pycgeneric.pyov2.pyv2.pycv2.pyov3.pyv3.pycv3.pyonoauth.pynoauth.pycnoauth.pyo_utils.py_utils.pyc_utils.pyoadapter.pyadapter.pycadapter.pyobase.pybase.pycbase.pyocli.pycli.pyccli.pyoconf.pyconf.pycconf.pyoidentity.pyidentity.pycidentity.pyoopts.pyopts.pycopts.pyosession.pysession.pycsession.pyonoauth.pynoauth.pycnoauth.pyoplugin.pyplugin.pycplugin.pyoservice_token.pyservice_token.pycservice_token.pyosession.pysession.pycsession.pyotests__init__.py__init__.pyc__init__.pyounit__init__.py__init__.pyc__init__.pyoaccess__init__.py__init__.pyc__init__.pyotest_v2_access.pytest_v2_access.pyctest_v2_access.pyotest_v2_service_catalog.pytest_v2_service_catalog.pyctest_v2_service_catalog.pyotest_v3_access.pytest_v3_access.pyctest_v3_access.pyotest_v3_service_catalog.pytest_v3_service_catalog.pyctest_v3_service_catalog.pyoclient_fixtures.pyclient_fixtures.pycclient_fixtures.pyodataREADMEkeystone_v2_sample_request.jsonkeystone_v2_sample_response.jsonkeystone_v3_sample_request.jsonkeystone_v3_sample_response.jsonksa_betamax_test_cassette.yamlksa_serializer_data.jsontest_pre_record_hook.jsonexceptions__init__.py__init__.pyc__init__.pyotest_exceptions.pytest_exceptions.pyctest_exceptions.pyoextras__init__.py__init__.pyc__init__.pyokerberos__init__.py__init__.pyc__init__.pyobase.pybase.pycbase.pyotest_fedkerb_loading.pytest_fedkerb_loading.pyctest_fedkerb_loading.pyotest_kerberos_loading.pytest_kerberos_loading.pyctest_kerberos_loading.pyotest_mapped.pytest_mapped.pyctest_mapped.pyotest_v3.pytest_v3.pyctest_v3.pyoutils.pyutils.pycutils.pyooauth1__init__.py__init__.pyc__init__.pyotest_oauth1.pytest_oauth1.pyctest_oauth1.pyotest_oauth1_loading.pytest_oauth1_loading.pyctest_oauth1_loading.pyosaml2__init__.py__init__.pyc__init__.pyoexamplesxmlADFS_RequestSecurityTokenResponse.xmlADFS_fault.xmlfixtures__init__.py__init__.pyc__init__.pyotemplatesauthn_request.xmlsaml_assertion.xmlsoap_response.xmltest_auth_adfs.pytest_auth_adfs.pyctest_auth_adfs.pyotest_auth_saml2.pytest_auth_saml2.pyctest_auth_saml2.pyoutils.pyutils.pycutils.pyoidentity__init__.py__init__.pyc__init__.pyotest_access.pytest_access.pyctest_access.pyotest_identity_common.pytest_identity_common.pyctest_identity_common.pyotest_identity_v2.pytest_identity_v2.pyctest_identity_v2.pyotest_identity_v3.pytest_identity_v3.pyctest_identity_v3.pyotest_identity_v3_federation.pytest_identity_v3_federation.pyctest_identity_v3_federation.pyotest_identity_v3_oidc.pytest_identity_v3_oidc.pyctest_identity_v3_oidc.pyotest_password.pytest_password.pyctest_password.pyotest_token.pytest_token.pyctest_token.pyotest_tokenless_auth.pytest_tokenless_auth.pyctest_tokenless_auth.pyoutils.pyutils.pycutils.pyok2k_fixtures.pyk2k_fixtures.pyck2k_fixtures.pyokeystoneauth_fixtures.pykeystoneauth_fixtures.pyckeystoneauth_fixtures.pyoloading__init__.py__init__.pyc__init__.pyotest_adapter.pytest_adapter.pyctest_adapter.pyotest_cli.pytest_cli.pyctest_cli.pyotest_conf.pytest_conf.pyctest_conf.pyotest_entry_points.pytest_entry_points.pyctest_entry_points.pyotest_fixtures.pytest_fixtures.pyctest_fixtures.pyotest_generic.pytest_generic.pyctest_generic.pyotest_loading.pytest_loading.pyctest_loading.pyotest_session.pytest_session.pyctest_session.pyotest_v3.pytest_v3.pyctest_v3.pyoutils.pyutils.pycutils.pyomatchers.pymatchers.pycmatchers.pyooidc_fixtures.pyoidc_fixtures.pycoidc_fixtures.pyotest_betamax_fixture.pytest_betamax_fixture.pyctest_betamax_fixture.pyotest_betamax_hooks.pytest_betamax_hooks.pyctest_betamax_hooks.pyotest_betamax_serializer.pytest_betamax_serializer.pyctest_betamax_serializer.pyotest_discovery.pytest_discovery.pyctest_discovery.pyotest_fixtures.pytest_fixtures.pyctest_fixtures.pyotest_hacking_checks.pytest_hacking_checks.pyctest_hacking_checks.pyotest_matchers.pytest_matchers.pyctest_matchers.pyotest_noauth.pytest_noauth.pyctest_noauth.pyotest_service_token.pytest_service_token.pyctest_service_token.pyotest_session.pytest_session.pyctest_session.pyotest_token_endpoint.pytest_token_endpoint.pyctest_token_endpoint.pyotest_utils.pytest_utils.pyctest_utils.pyoutils.pyutils.pycutils.pyotoken_endpoint.pytoken_endpoint.pyctoken_endpoint.pyopython2-keystoneauth1ChangeLogLICENSEREADME.rst/usr/lib/python2.7/site-packages//usr/lib/python2.7/site-packages/keystoneauth1-3.10.1-py2.7.egg-info//usr/lib/python2.7/site-packages/keystoneauth1//usr/lib/python2.7/site-packages/keystoneauth1/access//usr/lib/python2.7/site-packages/keystoneauth1/exceptions//usr/lib/python2.7/site-packages/keystoneauth1/extras//usr/lib/python2.7/site-packages/keystoneauth1/extras/_saml2//usr/lib/python2.7/site-packages/keystoneauth1/extras/_saml2/v3//usr/lib/python2.7/site-packages/keystoneauth1/extras/kerberos//usr/lib/python2.7/site-packages/keystoneauth1/extras/oauth1//usr/lib/python2.7/site-packages/keystoneauth1/fixture//usr/lib/python2.7/site-packages/keystoneauth1/hacking//usr/lib/python2.7/site-packages/keystoneauth1/identity//usr/lib/python2.7/site-packages/keystoneauth1/identity/generic//usr/lib/python2.7/site-packages/keystoneauth1/identity/v3//usr/lib/python2.7/site-packages/keystoneauth1/loading//usr/lib/python2.7/site-packages/keystoneauth1/loading/_plugins//usr/lib/python2.7/site-packages/keystoneauth1/loading/_plugins/identity//usr/lib/python2.7/site-packages/keystoneauth1/tests//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/access//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/data//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/exceptions//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/kerberos//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/oauth1//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/saml2//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/saml2/examples//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/saml2/examples/xml//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/saml2/fixtures//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/extras/saml2/fixtures/templates//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/identity//usr/lib/python2.7/site-packages/keystoneauth1/tests/unit/loading//usr/share/doc/packages//usr/share/doc/packages/python2-keystoneauth1/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:12899/openSUSE_Leap_15.1_Update/177e44cc34d57fb80d1ca964fab47df2-python-keystoneauth1.openSUSE_Leap_15.1_Updatedrpmxz5noarch-suse-linuxdirectoryASCII textASCII text, with no line terminatorspython 2.7 byte-compiledPython script, ASCII text executableemptyASCII text, with very long linesXML 1.0 document, ASCII text  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRNŭuNUutf-89ebdc09605231f4e2d92fe8d04a9a7ae9bb67c1261fbc50df75a6d6c669c524e?7zXZ !t/qO]"k%0a kvLEZ|Z:,>|3Hf+uVεfܦh{&A09rqξ9.= DagB,53/s;զkVq\T#LkN0e&Y%S#H~]S9&(ȓ_镝VHlM&]ĸ!2uF=hf7d{L1D!2Z< ǴU^qudz\Ne>CSрaE4!˯qq 'qa~U Q]4:.t3J @Ol-1YmZxY]rTS&uFFR+,ƙU=l)ݫ3)=(M3dGn.uy}r&ʦ=x{ Sd^*nByS+[$?8EnRI6z )+f͑XKH $%'q@޴V=^nE!]LIJԐF:!'4+:Ob%=,Ez%µqO}Jn/3yآCɯ\~iy*P%ԙٯ/&(֦gfag Ҁ7o,s{pzr(Gu PH'+C#EV^ot @sWUzp")@)GN0`@Α"wusQS߇5Ő-eMNN&8zY:=i~jV(by<t+bR|$S)dNg"L lM8 'llӁԹCޕT`4{c1 , ?|I(y0=+lўik. g胖t{쬶_ʆ"`wgeO m9A#'AKʹU xS4bn砺ᱡchc)f`K`G4VLIw҃c`>:Fr0uKG[_JZTz.;oE@PhgP$9b=KrQJ1ꕊK~~T(qBY!Cs= C+Ǟ'׏ ԰ֈMv It.ҒF^>(ڸJ+e!o}˟ml<|p2y=1W6t55vxcSGJ i]1t7z}GeЍ yS*įE.j˜8uFr?)/M?D ؂Fjb )(z+bxrRg_ )5O5T/A{<KcB  XΠkWxwr|cg䖚k3*):ԯ?^N'H3*: afu *dCtϴбVQ[?S]FK,SYr5B%lFy8J*`qSbJ/e2ejɛXn6, * r{Mݒ?Z(d4Mﭼq×W$F`(r4Xw.z۪,ˆuneoTy]JT*8/Czt?^oAVfx.qҳ? mnppd}Ր얇+!Z]mqj4c5_`E1\4ksk4I9˗"cNLmGǢQOj]*\m_h7i!~ e@ h&FRGeZ#xG}r)pWjb~us.`7-,z+b0_{MiDce"- 8 {D]&উ_c(&Ъ%g@ Η@!#mGt,MFIGC+$7e.%X>cλ[&Ir-I =OL^a/ܶ'R('%R(#rL|BNWr ⫿}}<;v¿)z4 DžCGNľl_d)DhiX`gy"٪dgDwpǸ@a[:jǔwD^i߶*q 3oB9MLӘvKF֮KlD\W"ZNm)&`yw)9%T8DNbd=7˂yal ay  7J@xMɋYV/us $KRRmm~-24m:<7sgBg$ ?x[^&/v&\@Ycspfq]C+;:˸|*>>\ jCȫ$^W+Wq6%I$V "!zgk6?N?Zo6BH,5.}6$FS* c4uXz x5tXM:\g"6"ŭdLYt؇*T*;ˈ\?HҺ=;`y}V2\u jx)ӆ}㥀 '7AGQqц2Rx *_]dJbUGZ5Hs)- Vb@)ah*nRБdTD6Y(aF,яG3H{:GX>"V8")ʶ<p}H uUeb U}^L@~0JX?r~3-RkSIb/r=i*5`n3 e30}PCHJ4E>̲Z~m\\)rgKb:. C CPKMui ZF/DJd oƪp|ҹ=POsYet=X2}y |zhu>2+2"N39x@q b~4,- +Y $ m i15|;=[F4 Sٶu5ڷ_m;ɹ8uXF 3)! ]Yxz,hX80Ӿ3bFǢ2-ұB2<6!9C&K穼lxF*YǪ+4@ @fL% S>iL],!|Ȩl~j{z93 5m*2[.# C/k "Hlz[7+nf#QӷEǐ *{!Qad li~юEzܕ+^]cdF"vl'J,`anϼ%D- ؋=ά4 vEu˭I`Yczt'$-^Aо ioD L-ܔL5QޡzY 4PFCs*5LS^3 Zlajh=|oI#6󹶙 33++6۸ăMmϨ;Z H5O/Du~]v ~,G)Go/A2y¢Q`e ^-Sc,ڻff;&Zu1Dyx8J:ol``S(:۩rqI8 7THxܻ9q}ל3!4Щp 0i׈(ju^& 7E}qSR 캑碕mHñ)FPF#I[6U4݃o[M}@m4A+qH92?/4.4k)LW%6 Rӟ=@mJŬ Hh ],:0O_ tS[^ Hl,9xflannפf֑6rvtYK(U0 ~L(O+A.Ey04D(WiXk=D8sex$&㫷/M5Ӌi3? IUڑc6օB)j4wM;sM"D_y~r'b1Hnݵ0ӫGOlzpz!̧QDx\ 6-TDzF [}uFfb~"pzsۖǷ.sVO$r&-UaߐlфL;+E,"K7gpϐIE"m! 'piũm#ޓ:[6+Upǟp&J "yh 3vm+ ZSL]/'pҙ>ю58iW! >rވ]i|lj1QbK2@_/,DﬖD½f$p@eATOUusG2M]VfPy} AkhxA(HOHxM8!˳p+Z~m]ao]MRkL&:8eqN8m 93(I餝k/.]NgX[4Œ)fU^αLf~kjV9&JCoT:NUPm)g^o~/+ i]q:m/Οuj4L=*dI+t=>Мv-=9߅ 5i [=/;93`}|Xlo1 3+MQ;tn6,sI,'-Y^#T"WjjQ" =鎷B.9^H ty _>[i WYUMIS @: fˁz0ՃC_e"o: MѬ+Ös 6[Ͽr;G&7&F/,Z@;ns.YyqBADEAbh.Q <Z}W//g*NMKrFe˔rH.ℇ'7*_ W)=*Ԅ [y?A8($wևcOr.ù=hes@M`]gC8F䯸BN ڣsݓ j z&Zl>sǍ8AzLƛӮ> Njy42S Ctp0|#5ޥ8U=kM{_ @|R@8uxK\>dwRB7QGPRM]|D37nζxޒ6웒i,{i1g[I6ti]r^}ߗRN}:J5 T4niү#$w&#>v!bh/en&Xr$.yBzaݴLJlk]2;^ M)ގEB)0o~k2=JIq9rfNQwS7KrgbsȦj3>Uǎ[;%e ,fHq pa'BG##>[a+R z ]!_v@KXcHxȀ͛҉_uD\z\Xy!y1RB_+ گdSN~Yf]H^`;vf(M T߅nZǮ{2m+=ty}8]Y$=@s͖p->Y;BnX# W4 *RͧsqIb >C[lQjN¤88e983Ĕm_x -3A4|*aW +bj_^1$5:j㪇W^@.VApc7bP~'g jLK$.n [$FA+;M:d3Ĉ>c!vjUlA\%EͲ.;d=q^m}I.-T l42oUf9nGpLJ$tXrKfYr_x>{qVf"@jAvEʞ7vp aa0Ff@VU% n9iMvEP*x離 3FN4oRP [㫬8U1«ŏY;$ '[@ w~`$VNPv@aɷzW6\gRmW^$-|-AK*a`78 VQ'{,Ϧyά&=mPR^zpY}3Ԍ>l+l'7Q4H~`şdMŹ'if#81%>Z?UZξ;Q{{a d%1z!;92}AL5qD?>?dk^ 9+AMO tޝנ@x36U)sv`o&3C+r6՜װS}2h9 %R#8>/{'^1^I~x9ӻ59"?[MaRBbf(Q/Tr ZYel\gްƘP^_- (zn%z  WR{`.CyH3kGo>4M)82F|m!ı#ƕTKıJ$8*z>yNm2aGh&WofK;"R hw$8/[@ I +k)hG#}RF p%tj%Zt 5ĞK03W>)?+ˆ4[Sj6 :Xr6i5*cR2N9rX};ۿW,&>9v( 0Pb S}=]Bg[r:";l͐6Iw<٩8 ĩqlۿ-$^I\oqX b9]#)@ҘjdV云h32u %P emӢQZ5LjO[nr~hw~F Ptp'2B.[&`Tp !TZCHSf={F0Cȱ3/}U/dga9"CSU5"~GatZBWDd}dzRfjPD˿[cc[;bWRҰ5mbG ʾg.LX`@Հ!!%Kr8xJX:7 eU&Hh/(ckc[?7XAhF7T9ՂG'\xcS9smYFnHZ~7׉m٥6bKkP4`8(N3 ~, Ԓ15b#v׭MI0Mv F#=Y8,\&\(GI!Z̡?SaJh qka?AM]Sx6Ѷi@y)T ySM iћQt9TJg +UءAvwD##=ch%S&q"gM rD//IMu]"ٱHS`$܋yujDM/2ɣTZ4r2g͙fe6_Ǔ;Hnk{>_'q+D-+uB3Ձd-ax/pw"FBis|"65 "w)&R](=G\1{&tWEϒ97Kd<\ڧA4خ:x}{>i>fDi,qlQ*o߷@P. AUDp׏VWT)zĻR.ė=Řyb[!IwRnGG7MbK1BMDUWkI9SH)Aj³=wƟ5tb/(QLu#4SQeL2l^{jL utBlh⟏;h8Kk=yQ 16R."ꃌ\OX*O+Ee5!0'^|FX{I|\J`uĺH8sM]™hkbSY:d[N[F7~/a1=Ty50YS[y?Zl$a7Alw#d;GM[r1c|N8(u_kez)[a<"b9|XC;==V@yg#Q;3+},B '-P6Yû)!8D6d-0)G'G:=7Vf <dy8@3J&Ӗ7HpX&]"dPV{*wcO3][iF 'B&yzT#Mkс@p~`xFz7?җmgCh#K|GgΗ@v Rk,j菀h@9!c4" Z~JKFƠG]ʑl%ZWepr8c 1vD8 2jrMkMAh[gB1_ ci<FzV{S:ɇʟx;qLDزeƛ[o>-lbn ۼ:xELYN@킷 AY f4P%OE%$fg@9ڇ+ag0]C;Np0*JTU_"gHŋ-MK(*QȳF3 01w36-^qʗzrXl6A-{̒^s$I;juӛ4"+3q9FvDN5PF:O<IvE3Bs%YiS}6H}Zֳ'Ye0E<ؙR± If<90whH9xmH6pi(OEEHʅUs/e8+-`rHcb|!)qfɋc6fzt㌹/7JZdGV\v^w@'xTTYP9zq<@^~ЀRchwo6햀^T)-VKvbúL70EtdHl>7Wk?= | & %! m-בO rųF9C0>)߼;-j`&RDhx Ǭړh'K:~C:QAR졡c%6/>IAF؛v-(>݆wg e5cr> ,2H ""bKDt|,&'51hEsL>Qx,Ken$cUSrtx`7o )) i>AKN!1X̘Sb3b-8%Ǫ[}J3&˨;r‹6|xban͛]HU鐡 1A0Q0ܒBҾC|sL'@wGC,#861v)oRxsH(w*0hoWPpa#k(sf#QZ6A3#Ԭak$\ 4ǭXK/CTrStgY"o!ޟ;r'xA_~g6 dLbJIAP7M  sƖ9,%.#M#lv`SY 7$њlC $~a01ڢOV$+i${yuMKhl*rWY^n4 }c . 9 KƯG]#r&+3Ro T[apQ]u/Y|PNj.TWֺ(tOY'6fid.eDOxtQC:=!xOYLaw~,h, [M rD6wJ_*gjUEoc{{"SMtV(WT^̙l#V.JEb]yB_L,̅V8uy. prFnA Gʞ]#ywQaž.'5#j2Sm"ψ9TM7lP^׏g:!$y+@ZQʗdU+$iJڹgmWT'2V{~Iu2l>oO~1Yh ;V@+Y>YXǤgt}1$ygj6U2zLZ9,vol@ c~զbWG*h$M:YQklŝ|"qꔃ92#څȡ}9 0s/B.SԩLSךQ2%01UGnC3bE-5MG;񞖣a^"oW2ciV$tOY,ܣ?8(jң` P9 .ԂHmtE']"`#S"8poØ!tNп+6nh%C3#G_6gV"{H*`%~"1׊Ю;%E!'vEvcx-8˭IXjڎ5LlJhxR=ֽ*l'K׷h*fMY g&Ue RÑyy?_v ,.3/:`XH ӘJƎ"0q'&D]tuރJC"Hf`f fh_, 1nSִ:cVJ*Gy(vPz AٝDJI@)ӥ  E)S0[6Ӳ5^r|z,զb3%Nh2ꁐJ{ͿZcTZ!#L/pk>Z6a\n?vZQg':"~@{I=_, z6_ RAMM@kJymo**k\?j<:ɋ_-g9jSQ>i #b'*No,q-ǚ2tj4dI)d {@Y4b7WjSLuvOeQϖOCjYE={v% ,XW L2Wk彩^:S ˲w_ H# n`-+iI7Tz6?p HDZPA ztƤyw&!fXׁ-$prQn R{pp#ӥ⪦,ˬފ̱mD":uҀkg6ֈ"EUcCJ F/mO=Hkayz[)V V8]CeZ i}k;땏#+KQ}ի+{t=!|񯿗MvPmqM'K x[jioxx3B1tZ~cXgW@*tLD<>* el1U}.GD|ZwA1Y끭+u-$JEݜoC8 +\̋kXf%6ڃx;ry'OSH@,xN$&kr(Cq&Oߘ?lsٌ y>}=Bu2P0-0bF% H!]ӷB^[&55m*2`OwXP\%>aJTHq Pƀqډ}:(-pG5 `M4ZeEy'FRҰWQO[JT"a?pd'}XM PPy@;qٟe]5#]OfqqB͚CBw:3"l"\oR[]xWV@;; 4ݩwJJUk9p.(FD*)zY1%.t2",.ϯlf_@uC%b՚{خ~Ƣh0&K8<Z%+K#u4)="bۇGOZ _+o'^ k X%!3mT:D&8~C 5I1h#%Ƃ+\keH5ϮuRabK=~SwXYlW6$mTQ I介7|s^EkYC!O'ڠ*)(c'8hv[F4]Wa¡[!F<Ӷ̣#°ņ9UU f:~Bw+ݩpW#,8Ӎ: ߾kmKcb+ax0L/nF "k:JZ2Ic?xљ2b*R 1/5 [i}FPMFI1 2U4NO9,\\Â^L^O- @! m_>+.tyg,:g +d:f:&uZV+/v{&.MW՜zS%l v`[:8'QYQ7V~%Xt5e47 v~["WLHF&WCGh;9t7őuB=`iߐ#DBZH1ۺQd h%iy2;Qu*|=Bv\`; '( |0U[븤ױ)8"m"O!u2||+)}mI$ Hn=z |@.!A-@jFng5Ki.g`X2C9Y9M *i%$sOSmH*tT_tHý9,!c\Whl`~LboCarrB8 O繌XA P 'sB8 gwQӻF{rz+ty lWc+j p,iL/KjqTK\`agw܂e?d;G aˊ֓+w󋎤RDUT4VkzAtMN QTlE6Lƣ3(H[Nh-& %c(Ѩ|zz ja4g:h_55D{8MV7/(c ߅!Sc*ľARa0"tOcD]ֺri\b<`ZsV$euMju/"CSVL'N+0*KyocJ6&ԋ@kApugaZe] b8MF/W]%T5#+ NGCxNZPkN"q;pUWy0KvEQSǏFX0cp*B`/w^ٕD[MGb'X7/>Tw!\ݱ87cW<T1<7.-DHEJ`݀.jG#&;:Δ{gBWԫMDC_(F,G7]A<|N?N; _2q@4TNxE'W4./mbR;^bQ K/JPzS;:}:MA ~N^.{lU꭯xF@DR»>tQP\҅-`;lۢ3;QLS$R2[9Ñ @;s Z(M*֓fzH5s+PlK~X|[`!{o7ꀏziȃ>-ĵ89s>u z,ᢡ֙5cȟQxy$@9Yx }\rwXJ&B2k9QͱB+ԭ*KAɃ%roςg{7Nw{**_aG=b@8Mu"RQ%RMK0дؕU!;xE-TGJ7Pҁ4({ ha*k#һ)Qk3ԋ @}C;ż^XԲZ:TO`1Ӹ` hRuʐ'븧`AuAnhV' [@i1;ROp\]F?h\U 6Tg,'AI46Qn!qױ7bٟ b7a\ʙC@b˼:J:~q9} =eX|7ޓ~E2WC2 Gjf 2$mɋy%lùVZ^)LtJ(|頰ʔRz2=öf|fjkRq װI |, N P`P"C?HZ~e)u/T w7ɲ6˷]2LLRA[xR 鈿a6Y{hvxNת-זmɥ>Lv"SŞJ96ۛ3m8D#bv =VޫQ,ǝ 3ݴK61 [bd}+s'ԝN}֨n-_^aOE- 9 LH*+m<] A 2rQI @% AN?xw*ppVJM}ӗ?3RR9H7`_BăH '&=sl,2a8EY`VBUIn aN]|E *l+hhK NU9Lnix$j")#;B|n 4N5Տ]W:~Js̗nYsV%V׊hM *ND6%]³p6g OCT[$Bd:hLku"&l 3dr-⅑U\kL`\ $W)K(>^Й$ e:Wt3&Mz+<S2ةGct! $q }3id겁dTPYBU'e\ 9roZ L=AKiMv,&,g q lS]-05hkf!Ćln>?7>aB5ec.ܺ}O'd!|D(67v2! ޔnN"X{lHH1Wd`6؆]Vuf )k}iάHn;;='M2kYW: ]ً^ūy#q6uXX+-o0Kņqkڀ:TtTĂocy[%2^(Mπ%M;38Ӄ_0GXIӕ: 7&-hȣCntYmg%=krbwў)HEyM3bo8ddKkRoMi, ,xءQDו9dE]v+Vi؈jc;E'(h92;&IO^˟]!Ɲ+9ϩ@ڗ=Λm:wr٠H d؄}FOuu ,8Çh}ؾ]}%@:%~+7YaBDQPAnhL7"rr.nͨ~Wq65Ǟ]MʘIN_n trCnUdՉ7D NY#  M~*OtE(bkXY漷*ڬf_M]\X>y탈Rھ~w+".?i+U׏' a7t#){hibRX?ܺ2L3 *7E j軤P\~W@KEAG~I $ j~€*?D/0qT} s1oEX~X~`lG٩/ 3o+a'Dqe vN_i'i*]g *Z0[z/ODC:|ϥ"눲Pz`$iݰZ3DYfn 5⢛YT92b;"0'A},dgw1}kWG_ #;dFrjONZdTx/Dd<, HEGC.,<_vǣB} UӎR;|`QSJ76;T,!rTW.]v}`9/O].a#15I>uTN#IdBfJQx[H :"`A>nI'G]dOFWvhzEF~}`}vb$ǚM.E]t;J4x8sQFd+Wt;nJswmoyKt_4KyT ?*^1od]HEl \py!d].q(ƭ|JC-DY!1Ґn"lO/`tI B1mV;8`}5?R $G~ qǚ'p(6>M.%ЅtJ!y;ktc{F>Ѝ5gǣ8.Yls!U:2A[`1 P6z]SRD=|J? ܦ_C`]6-GsŔ10ey{nYm&8I;³E^u Q`f3x!U1ElZ5&suy"' ˱XvoGn~C o)N`09yxDUj{D*PaQerTr ,sj H T]i?t糐K @bN c9%B--$(1!<b/ܫZ_n-\<Bɯ d.ء\/Jx" 'e&.Lf~oU;FI^Qܫ&ΐK)3QO8}D[w24-h#yl?:xO)zQq+_KdiVJ&۬Lڀe#aS9 _"Hp HtR*wRR^c2>r6=ǃ5`/mjrO]-L ,>$#S\UV=vN6?>mAmSP4]t9'.?b:"Q]L6fr6QjN'ű U ~P?8|,jvUpq9Ff+jiN6H9I1h{a[%?x`-KR;mw_cPl9Z)T( 2k¨J2£C}s\.BD|Np^H\TL`;pNW$LasdR .Ӡ9Y0zdL=g(e%ou&Ƿ)$kUWݟ1$Qi\h1m DۻUHh})CCx>][(x(kkz"p <>}f.-甹PLCK&;d]~š]2)sbGɓ&0p=Na5ybϼ~-|7ݑJ$~ιx=xzsve-nwj?=]sl( ؋aJNv/ !gN{ BLv«kW5:48`yo',W\*:KGf6?lx镡 n`Rl< h+8±;tP9bpZkϾ76lK1E'HYdNU_aytZ=q;ڊ5c䅭®Ƥ?ي*MƉ7' G7?sBQJ3 L"b!C8'nN ;ssi}>qiY%YGkDOZ֣._KeAv:q,kez/c&[BU"Ihi׍ ;,P|*biT1B+?Rmye%W$xBu:H3:+"C-y#,~r򌏵wϚz?P UM}tNp٩LBWTyQa`:ctyVk|N FMgF{G#>2O{fT=Nݶ;"Fؑibk $KaNJtwK_8˳-S䗘EKAxpMBuZ蹼R<{0K%xvRG}ƻ!+E>툻&a_fNi=L%HlDa24hĈ-H4({檃Db".ܭz7NXp6ܯG,W6 1}tGiFvE\p^ˏ+3]AvOs3%C `{oaFClW߹-~\O(Nnܚu`xۦ-t=>[K4\ cVLU ({ ETB:F&c%32)hbUʨYX`ʭ!~̑l/<rF-uK 2521/5[J>:P`2]C%be( lrd=.HCwJKӞP{.AuWf=UdBU@4T)(m0;vVmxנ_ e7Ϸkv0q B4:uf2f/m 6[b%)d$c_[dwY  Pe*OW]5P<QY"SP.UE;=b_{bu #'Bo_t#TWӖm)F6$7qGEvݺRb]8@_-7nY, !~9D=POziڒAٮu#佩KF澸fdq7wZ>biPt}֒~  t3zZ[sFPV(]~a`{,hk '_=SD ܜ7]C׆scLQcEhu3ӫɥO-`xgs׶ܩpH Qu@q4Mtqopf%mg 4kDSmqЀ8= 8JH20:r&DpA؊r?zT+*=Od|Xuc迦O G~EJغ '׿D[d9 5}r#5  FPuV/x1@; i兮=x?6.^y^>]T3,R6x3-St? 28e'[s06R94sm{R;`qH'Av[!Pe{\5,E˟d%2s xP.Y4C:k9L+?3 }y}zHIO:rTkʡ!=**neĨqj&9X#XJLב?yf; F3{38 zBFCnC(R!epHU ;JWUR ǧdH&gQ2"~WauJvYn=/ IDo30 tI%'us 7 wt+o4~sĶny{o9bw({2:Yؿ s㣏ܼQ^>ooK,>\f`Vۘ^2mP PuJa"`!C( f$%ZTbC70_}\Gj0`=xv| \7^#fU#Nّ EiZC LE^/}3 O9P$?) 6",N! c0F FªC #oS e tM72 1G|o ŖE.ΣòR>ߥgU CI3>A]; Aa`&e8o*g=yҠqNFѰvҦɑ%Ȼy %%,y6t:L ,6{" `aW;6+BMK u5bN7c;=\ X /u#ս$e"TCVg2^фKzxgzddqkRLs0e_=jpsJc(^շ ,=M.w5+GG@8XQ]ܿ*BFFNC;t}Ep i|gD1KW0x$ʏO ."Y˨-hÑ r++ Z IV/$# ?ow_[jƺSs6=P>=9yUQs~Y׈cvRV؝@b9E\i״w@j]XѥRyبRb?4W&}CUk)ڛD%,fxpzh=O^^ndc5(Mc7j?v\ޣV1+Էd-Cv"fIJ]=԰%oQF\>{,%%@`5@f Y,ϛ"\Mtښ!ZtHaqM>NaǍ5~8 ^pz(DVwt\i1=!@#]ܑOu(,5h?b*)6";am"gC\4]#`p*UG|xW"hĈbo+cy- YNJ,W6`Nut*>-GY/\Lh,\My,7ΛDCYre_};>]Sɥv0s +jH/.F{Uf)k)oh[}׈a#-O|HmHFBQsdw*Q斔6KX=#=$*n*gтDADU=ɖݱzЮqlJ lFDw*eiݩ%dW;FycOֺEȁ -) &'#%,V Yj#y Ǿ`|/˂~kO9gd5|뼰wC˛yCe;ZR|("-;᣽ 5zAe!fK[py=ONlToQm5Ktܔc+^j/Rnz^l)luVJe'ֱtLw /r=~J|-w}x\(REk|[Pչ>`μ8W* j@FlyL1[`1YVv$QV `1%6de q_ eL![cQDOZz#Z k$C%`6`,?Oz@]]$|+FԿ_*( ]@qlVdCd&1m߰(-rƺGø0^K {,.P}/D>mw%jM`AJ1(fg|:o和]noQPtӇ 6&;O2fqx`8*A}>^|EQkl *u~zhdP\=9:hzHS8}w"OtoJNQL1xBCA57NfWv%m%$†& BY!̂ъXOp"bU@S}[UbW?u/ !+wUߙM2f"]Eu]A+}Q`n&f1F0o_kׯD~NaytU/q. tCˆl|͘&'>9r.Z t͌L$S41&D19/h^e˓z4zl%]6M`YL$Kyn'8Z}BS-SK ;j 85P_,9@ťZ\AC*/M~m1 r?:.HfDe`#89|(]'pR }PcF }8YD':ˉL+F+O>&![-x7?$30ߜs;vbwBpyht,>HZ?]?!~än~TIOBik.);&^r~SE"$j٩Ej35u F}E͡ShSCDoSO_bU'? 5ZvN ]:5 zPEsPrdTJaSTZUaSb-*Hd1=+u7 Еƺ_̇n1׆<:^AA b,+ASAQEVJ!0..K|bPs䣡=*W6'^Nb|Ta`;} R64u'< lɗ[Kc`1/,@q!d"@ h-y sW¹Cvi aFD߂TМ&ݏp-n>hNJK-uN +Y=s-hg%pUϊZ8 s6׍eաbq+|ɕ{l966ݣCP0o./Wa I<3uӳ#Z"ūTꂫpOGR{!˂GW-Cff"Iu0_=+f}¨F|]]96Rb+1ܳt4Wc䷹PE9:,bVPi]i.73E_-0C|}$#/Hlb$1|Qŭ=^T7yU.[x$.|b|¤"#8M(=\dd[h,zD\]}̇'Zn_-Ȝ.u$KB`}Vрl [0;כ]!LTI[jtYJG%x_0_="-7 oZxyc9d>=&>rT$&#Z [r y`;Hi qW96|-m+p퓎ficWa]/4w=e&ۯS%4 $\q=o6O 7#17 zWZAkmT5-u_,U| SaAWxOu׳~wM߄I(fZ0v)'r>Jp[~j5?"+5}WpF;+H&RWuh9v{{)` -k^fsΥUFI~])"a"38e‡⠈i .틙[+r^U_H#bcB巾xn:@,Țp 4#GTx$,KQcz:ԛLsb[5C(5m.03yȐ^䵠:Ǻzv+d:aJ$eBT%1kmja44Bm()ӱ 쿒W9$:Va߯m~*Miط>c} VN2#2mE0˨K4(R%jEѧslWPkzts tqkп,]zn0Pha G᢫w~rcsh_WCՙfD$7(uX}+4^(]BtXA1\dt:K>ª?~DZ}2~.pML]D~sl?t'Ả&㊳IhGO3lF//&L2LWG:!T. 7V\&֒OJѪJ[ 0^.fU9Qhvd5ex"$a\,k$ƽ@寜M9{!;u#a4hذZ2ElȖ5Ov?&q"CLɡF8#sJ1:*J4MsōW:KdqCh1"ɶ/u;~}F< |w Z Kv>$'ز \I!ڤO,Jr2ӯ4SR4db\SE32y`QM^:)f?uj؎UbV-~ׂѸc`e]NYƈ#Y^s&LOKj?hЗѱekޕ| C"0_>`зGgterپ2jD#k(T.2ʙvҒtdPsʺS.Y# d&T|9\2+BFA|j#gU !6xzi@ErhPˆu+cEq>(Oʮxδ!{f=D7]2b- By;x/9 ط`yG{pfIߵYELlCcJ;Fnm'LkmW_`-). .: bo4q%zlचhbmbkfLHFIy`/H~ .NDFJ]w xz ᴜjJ)W,"nMtdɱPwsn%9~"/Llu`]|\M϶WNe/G2EMj1r{#hgT6!@hg{k?S71cQ gnEھN-fs3an b #IM5w'J/wM"h5w cXg=Y=v))36=B G ߛILk \{Ajw~T=2+ д0%%_^BpV_q35*ㅼ0|ӹVtW=/2,B[)cX~*GR/~s:b{47X?:63׶iӳCwp5EnɌ\ܡ-ofg*`)0!ѤML ୭9h~k ˺_ܵj+/:Q9R?JsjZm"ij@hr}n[.o лii chi"% ,S]>qMC;Ai+=]C]jԘxh^{P013W1z\w:A%p;z\2ᖀs%z!d@bL34:O^:&E +ȺmFàkzqy*,WsjSd>-!IrHG݋K[G?yAl:kS9c$h[Y'E %qь Kǵ}3P[(k1t[Ku*:J&+@o1C(TX=ldZ;v!*ڌØE2nsN8ucpU?gz/mP# J {?SOn0MK>b_Ҩe0~ˡ4Hjl]o`wEw.S[C?NvMRb!Bw Rް|> HSkqwwgU+LGHC[|T̀ _i5*b5.d4K/Vy6 MY}V)+F|P25h/ϐ( zzܻނΙؠ>~t?X`&W'ٰϏʳadr=񠑷D<C7**xL,+||\8^%GsEd-;%,Jx_LZc#*Zgpi!xϋUgTD!qTv8O\IפW=G?DabN1>jt7sM{Ld~-͸=UX(qNjMƭo ztYxo]oscQ:$FNB̪ĞZbFCS0{cva5A#KLdЂ_:WIj>2)$7WJ['OeswOvӏKsbڥrK5R 7?a* T0Ri/AѨBrC:%GƅK)>)qwÙHe 5,/5siS"f6Ǟ+޴b'C{Ri܉,:#Y7B %o)=avG#91OۤxSRC]j䩿,ڱM;d(Q@ P٫YίD?X2VM/b~&}#'b~Pzvp?_{0݁􉻕uW&tyjXh<0)eDPizf9؊o TDFu+tXGw=#l푍@ ɡZK7iiVH\!Ԡg"Ґ!)2bA2XbWK#ؚj1;s" fDʥkܪ(qe@q-|3KAǣ!+4#xi lK3}M_8Hە8 D,fj;M+EH2<-.0=|X*Rp˴=cv:|@6ư@4 NhLçQ|S/i1}\^O P]Z IPYÇ0C̈́/lqR[-Dm6M\8v[EUp0^Ljk5a4)3vHOUp;g9&0Sl 2xˈ.S+PqpjΊ/pT|wI.~ZһzZ9p(.h b~5 5H仪Ýn Bq&vaȏWkI"nԂ7דȯ>cFO&ϱSaʀбkM7#BZK/%+|eZASx H*'{R+'rRAΈ~JOr9$c}R[+zhIƒr#ݒ4?4-hX$Lhk[>Vo f.w׉ig{*a 1:ӑj/@3ΎpKudv#iSp NpL ^xœU[LjLYZ z(OE{5z{rdlhn:-2;:Dx __h-0.,cOfYՅm:)qxpkt#g]cffJ촘7^jBzyYbUoev  MY]]*OR12xp{}|j6\19cEw߱~6EPۂ;u% T3 v_1)[7gĶOnNY*#s@?L2~3Nu/}oH Œ$u%3ݥiE9Y6HX)1e)G? %hA*GKwVW`fU Kw P3X?MU:A|VẠ|zP,v sO=Fh'/3Ol7m MЄn. نj45s%ac㕆c٩g-/{ӝ:6RD#}@ i6%Yqvk8ظ/E % cBIkxkl'$1doUܘFwD7%K09` 1$1X Ϩ𳉸lIK{:Wp{:{A"~ Pxt~5]FI%MRVSD$/\6vPLcLƷ*/R\_?Chw «b:o":!^3|XiPc1OlYт#n|Nx~?(r%P`>D jTG䏼.e1F;_?Ċ`D0B) @u/4,t49&쉶!o *} YZ