PK|FsIi [$keystonemiddleware/_memcache_pool.pyY}o۸ߟHps4ن"K\rkes(þ7NܞP__Cvk- NO^"5WV6Q]){GFGCLH(#bVXhf]^V!wԆ~9\]_bJ1LϥufA̔Xk9+-T13ybW\ X-gݐVM.blr~܏ه??w{v]ݾd\3n`,F9%38,-7 Nv: H1ȓ_J+s=vM#PFK9);"{䅃fy5EfeT>Z\TiZ$.D $zQJz:ְAb3 $p'?xc c܇Gs~$\]Ln>ޤE@#]!6Tp8+5as {жך$1RꊃgGKmΪ @?!O}i2X"= vQ6z[fPIboNzS7w?c ! n*t0RȝNG6D?+:T8:!DsxID|u; @\}om ׌+dzUq'9%z <묰=FaDT.W֕{Mq~el] ;Aful3[x2R|ۻ +plzIVm yžGkk-:4%~&?ܲ\aKUQ{@_T$v[Nw7r+j7kJ{;jRfa^ v^Z7@0ݼw4: -/W ZfsWP"7* 闊8^Hu ځ鑧6ۨQcqN>yl׾PŀpN-r`+ {Ѽ'_0{Rhe]wNH!dbY**KGj̷l#Nc5tۛR%Xh ׅf \-4aϳьwt|)X]ˣ% $ɎOOrvv|zMR˼u_;5T9r439n(Ml>2I& Q@9usku7lP *j4Rc7SOaTunulr3@%Ha,Mn cF/g*cRc^ԊܢtS|bI*Z(EK 7nɏt7?\lgqK3`XT22 d8z'^dK`DW燝8FJn&GR/yL^*!zA.M݄X8@0AtJk \RI랚u&oi:Ek$]c핰 'Qhgp{]nz`D 楦tZ_/~s\6"c:.}v{73"p:XO)]|?𲧾Xs_,'hbh'v'FU7(*Dh= u[%NkںrI?+ofQ„&)E뎷Ewc6+4$hINa yUA(A\u/PiU?8o$C; p"?mT^nEPK|F-*J)keystonemiddleware/s3_token.pyZms6_q&Cʕ);n::+=q]c;e\ 5EeYg JK;M}B2O&7xJTvQxH/Pcj$X(#~w*Ϧ*+4"W\|`)hd)rY\1-S.SS9ϋdh@w&XA&.?>đ67RN&SPO_i*Ή1S#ŋPeCf3w=0MKr>īh_^4)z.r J.(H'~fH2.fi"3HgKBA!ҹlY* Y0)Y^,dn#Oک4Ӌ=p8T2o$֑304ʅm$WxWhbx'EMZq9rD&I󢦭=@_2; ѿ.-%h}ꝟN/'\_N~?Oߴ'2dBząRJ2dfj!&s9Qbn qLĐ54) (m5zI4zxC=bI\&juoBߪ,bVWtZ2l^vglӸ8!>$QX }!:ƮA%SBs=r/qq( jΓڰB[w2MFP0?)/A\23`jx/#I"SEx.~*YjӉրt^TO&@uzh0ڤ:FL&2(ԯFgH{ wI-*)ܠœi:IWo+6█OgggއAe8/ ";ٛv5;6 一$bMQc"6"&?-N81<{~<-3ELSi[4(5@9!(m܁w?UCP{r/]v:v>W !]ЖA6֡6v6a\uLrRve;wY2OE6/S3UݣF jR@nڎYlRi%b 4rU Jq[>hlDU(Rz{F 8LPp(I){\9tuD#j;.tUު`RΔQ$W LXggsj@ OVI{Nt)#ܣ:NNK-:6Wb0\e yz)11hTJŦD[J*})lfP}h,34BJ WN{=_t&E1 UBX2?oPJ^. T/Qv1!VpSXJ?U_ Vjܧ;z"8h,QiC)! ;jH$8%%CtHsMfÑyJR7Ƌǭl5GԦmnʫ?@l Mɜs5T4s{X:3 C9 })ќ.F-q6/fZqΛL˘&mG rZDSGa vW.!k$ʄ4z;% kQB#!KH~4;/zJ[/j omJ+ߙ:.n^6d ܴoň 7wZi S=w'[oFttԻ|Oߞۖ#gM S |ed!e8I@$%vwS=tVwmGH3'KnRF.5K: JЏKDra3& Wg1K Jsv;^ק@xD_ԅsy@!_f7 o2{̨pMȣrۖ*x0I l4=aoѴFww3zL<=ew6_f1n`>_F|0R;6L RL&B!Jǂ.`˄^KC,%ki]H3*𼓓ɪcWJ¹UkJjo՚)yҥ Җ˸q$<;gRNWTXE}L'5Vb.‹ʐ}Q@s0.?׉X%JTȓ2g$Z쳯D-eO,,s ʊ51*g9ծRٰ逘BUj 0se5[qox%p=i"hbD[)Ogߏ^R־>LdT.vUd!AKb}Lp`ZvQ*qHTMkR OE]Iztz2aGߤK I=@]Gh E~0h,茎:j^:(N^4J&p(p[Bv@ 6c&cDU ,hQ /hA"73Bou6&FKxRÁU I 2<Ԣ/eӁ;]lGQ8Zj%BJ7< +'\Ƶwt,jXZ 0#l6t':CLeZ6rJ5MEiG% qC(Q{GSw~_@T?i =_%ZEh2nW% = d_'9_A3qPX ɡPa[MlF .TEL>u;aZcGS:؀2A\`ܣhC|7o;q+jA9пH:n+5FzhǞ[IHu8[@*bH}hio{UxZIj0/6{oV޿TX@.T鉳Jcb/Ugð;nVvpʭ:zP’am@J`m BbOJ|AMWn3<ʶp$ p+$Y'"X6f!^چ&vý`R#mpIjj k:#KVޣ֗;c{F444YSS"+Bh[f_\Zl6_`P!4(LqsXi!|'t\#~~K^n1v ,)Mc?ƙ=hK(ܲd=E ke*Kbd'9(8((yoPK|F6d>keystonemiddleware/audit.py;koH+ Hh8xOJ#-%">h߷d7ٲܝ$^W_^+d1Әgd̊g)c8z539f5#@J%$[0¾E,OI4b{F ȯ6)@0?9jw_Uś7! +vo9|s5^6MXY}yn@ND7@dB$+ ƪ =nDl[hJ˪d -W^NVՈ2_Xޮ/b=Lz\;2YJ>#@R} (EdPά}dIʜE|#+t.{dE 쐜{^,$|+Z=@1 ^ p,ELhs|u/ -%?F46Ả߲4Î)>9C58xZ9aݖ AtMJ'.Po9ohhb{"r2\ѝ1Wt[Y/t"Emu$|g9(x,&19?R '`0A0b%!v=4+XP}m:*f+%\O?bWȏ?>J-_W.RM{iJgj |`&)i,vy-^A͓PoYRW,V`^4 t{j7z1!wp9Mi F6s*Y/07rЯp{1*aWl_M4<ߏVWav U(Ts_:cCCYp@S e be8΂SnHuSTg s :I;h]7NS|9gĘ%=lrLpzi'`)PbNxwk&J=U-Oc 'ŗjIuVMore`_ 쀑 }&̶JY'?/mhجA%;&lӃ~Yi I 6pKzQi?޽rryRW1knd=k@!@OyfXN+<ClWE,k}Lψ%sX'_jZ+ڬh~Nlg/д tW`u/Hm6àGXUqFS6UU-cPJ +iʗ~О 1< ͊}&_H D]nd!5u0S}dEAñ; U/".YIE[zbыhK$Þ+4*"UqɍDce F-c"iMlz`eEϧp:YO/CHp^\Gg ŠP!5ySbСuYQ{x1" DSYX/}q*&}"r5 3n Y;Ny_ RV%Y9-5Tfmy]52FiP6 =uO-A`L598s(%^>E+.BX,BiS q=wE!Ki=e=6p4m"Ѡ@$ıaj6=/~OO3URu}qA FmyӶx7+Ϧr~N.ߑ-$8hEUQ]=W, U'_mVS72C*uRvaQ@6kd<-^tKKA7<3`|โ )\ wlv[C" `QA(=KFUCdEe%,NQ FWDɣ3qXp] j_L\H> {BRdgm1&cAGKx)!^A7^92|yl@/W޹!|Aֵٔ}lyV UCooUڨ<64]\3ՙ-vv`n;TT(.p= U\lxU )[P޶a?a7 ϧ-`7j23U!J1v%Ŝ;0̊TUд zkG]0].i_gq$Bp ``FigH>5 )/*N=~}@a7@2o!Po0|K厤Ov]I[Gs-+2YNժSt5n2` @ )Uul .1Xç>I8 ҎsYbf Nfy5 ?-/ݠDY>pѳoĞ!:>6ͧ]H&JZzN )+y kE8[|^ ezFӢD Ǣ4z@}A's UxK#I\y#_VCY1`) Ѕ<Ɏg*S;70ɉH>`4Hq׭%1τ4'PK|Fkeystonemiddleware/__init__.pyPK|FFN,keystonemiddleware/auth_token/_exceptions.pyAk@+ӓ(T`9 9W#y]YHvJJ!T̛7߼c͚L#SZ~?_ϸkivgFĂEGױ20pgXyP23J%uT~ViARxh R.XS ^Z啞&L"y~Z=Jo@.&0$[º&0v8'=2ZQ|,'y J3@aBL*t!S tB;W^+/=^RiP@c=f:%ոnȽ[{WSAPX3'\9o4UMτ7O5`vza㖀}0S״D  JI在)$ycWyJ<Xc9 9,ܚXqJ8T"?hNm4Lq+Xb ¶`]t:"ayv%:uMRa&U0V*\9I]uZU-&dh=+Kz GcNjUJa;7=DUh'KQ{cj3XݕfIC^0%ՙ0{ͨ܁/{hǝ|tq/W9v4!tE}j OF oI꿦5u…/N?&ZқD]h9w;\-O\L*P'=>å*ծ-+R=*Ҧ5LEǽ"xS^{3Eɕ&0׋"עjQڋP_Lomh*N){ة8[LR-q6M%ss6l8v˗˛A(fpu qv]|\wR8F=. _hЄJ R&L o]DOti)JLer8$̵hZBKq:اnQ}u: s5O8ATՂ.{=N ;+ 0eoM™A'lI,h&aH28ő+l\X`R?P (ŷxk^7:*#%@y29gSFcIwio]R=m+Rx>z+BbQJ'&G0S `7 ы3+Ҫc]^Y\&twQoQ41\ܫuE:M3E\Q{7V'rfuQFT AY27S kT\ˆ(p60z٣dlg|?}_ V;NTY7JvxipͭhS{+^Sa8Q:kmmGAEQI ~ {곓i;rŠLIna'+TAI%rxCR4=:v3X P5B GC(*ڃ>J(ck}9CW9i<_땛|ުj"K7i: Zy!I⥑ 5ЭL^_6BPLٽ~O jעFbuFX Vʎ|RQG欓9=W#(y*48<|E*hrٝ6a*, ׁ6ϊS*b\HE7tfʯH(hv. *uITOzr䘂<@3&PLjMbfFx{,d8JL)?=J[fX45+ߏDIj\+T{{џYnM#ymYS()V:¤6ӏՓ䮀!d|5rŽw(PպY(c#Tek$<( fA+f*XB T:gdfFF*ʼzfD>ΠR5y{9ވ!>rL^]dzqXI=,XfjWL/j*YmReNRu&VC[9G%rW @O44v5ړ)`5‰AKFhu*YԈY%\S$o|@<}ǪX*_8}ě:o: n?{ߞ4]g#wskɦ84]ksr[CLuD:<2"cdS9,_WhSP^P/nv+׋ڹ:yFn^4Yr[iuzh:`$P]SqV$.7O?ƥjż=' X#E/֜E?&h&,I9YzHδ62("ʁ:IOS.3 vOpըfCӮ YSbKğ2`AuO$8| e|Vj2?PۅWēT_? ʍ?'TlꏚEȩFN&!]5x:U"{7&F5RHI_iMћ_mҭ}3yO$HPK|FI'keystonemiddleware/auth_token/_utils.py}T]o0}ϯ VM։TւIncǿujYsεӆ{X@- 46Cr*]r%*NVT ;mAm( p L;6MI OG P+Ǹ$&FxMm*6k㜾w]28"m>M٤G3 )Z0ZsC^W`lE2ہ23qU1Rp _CZgyd@y1 aIւ,ɺf9q=t8' f)fq2OfSp? HYQkHs" }^Y@Ɯ<'_r]5ZmHMŭ%y^qǜ_ (}\9!*KkFsZEzCQ*rm9,„AVWt9nFĚrn:`Z˷: Ò\0 KՑZܑ\R-EQR((i rۅ i?x~99 sn2Cn ?Zo;j@"~v`qnQ &%@ގzWן,'5҉ J"LuiُHEF+&ȰFY*]M8J8(WI6_>L貎u͆ C-ss|}y?ހO^УN?A ֢()P;h :ܻW ;PK|FWC6'keystonemiddleware/auth_token/_cache.pyo6 ^ືpr|ikӢI7JKF4RId7ӌ%|#s^TZd)2XlQ~73PZl WϦca;~Ye.xHEU3YUE*^["c0qX_zt/鳭ŋ~?TY_Z^^]\= } 5R^W+`(+`3{V*7JDJֲ̘.+X2k%WMH˱x-nfy3c.ozpxnq}aoޱ7/7~^^12R?0)Q"F0+ʵLa_Ŧ6PlUBFmj`/cɚ065`jPHQ:h]HwezͪRe<[IES_H݂ZY`h,jgΛzh $V5Swb]%: Q\;,3:@5O"Rh4JsO.۲'9X|nٳUB 6=%#Z5KY:I&ZYea "p]4Z[aa 6 ]PBXddDE[i%˟>$W߾Z^AFͪ/W˗rq m,|lyM[ 7%-۝>0UFR]@{ ,qi|^ #37^twpu1}VE:ѓ~) az ޳#tb]{W({3GG$jz'n!!FA/\Peb"O%Oy=A}BQ =ܪƤXm'çkc yT8G_TG(T{ i^)dwhV=w"z2:GH(C9eJH"*^8KbJO'#'#srb9g.q[Ӊ? c:rzL \ # X6U.{l.9Ñ# %$iὁh040۱"-@&Oc: ލl$])c67&d?bѣx8)|iJl{ȗwtR'\ LN>><)ۢ'=#kuـ%:k;J%::r1g/_Z(eN-_f""?*Cut ˽w$ ,6ŭpR ay E竲03Wm4 tcHc)E6ն<~o;y&Vf2FVdxAlND1 e'" efn:1?k:ֹfMC#f'nż -ĝ8ӏ3n °BJǮ[46&4%Dװ"v>WH!M(P}z0mD!u$ ZlyY5v-ި.ڜØq O̶C{ԢH,pEY5WqM+8zDf;Zqv: :Df\W -W4,Tebsðb'Op]VsET}net@/bӑҝ]DP>o>񝄺(xGSn6gT:[zmз|ۚ*l3 /3:Zn yvA5#o[}IH m4ESE@̣I`Hv/؍ ظ!kbS2BHMj!vڅ)zaq6]n:"^"Z` Ѵ4"t! v#2`5`r`00S :Dơ0%OJZ>.p[.OeuF қrŒ">(݈Q»[roPvdʀ(mg sErvooC۪ , 퐙*#A{YNO]DS?D39#pJ#os .6PXfT34{ DIѳyS!!)l2~݇Ȋwz&c+FnX胈X,,4&PѐNȮlYI,`jOxx>D!k9]O(އ=n4/Ĭ~-x(NQnGGBіBޡESjv+F*EZ'(z V,XxݖlלW=«*DY43pl b+ڿ%|̘l^M%k!qXȜ9}{(gX?PK|F{ >-keystonemiddleware/auth_token/_revocations.pyWnF }WCdԫ}*F6{X0h{6Fqb]_"ix9$9 ,d,F 0ED H:* '2e0H&L5܂ RiHEGiMe$/ P[+dFkˁ |zww<JR-w|44[HMnO r-LHgV1ࣖVf GX-dGA(_"l ~ |oX}ڐϳr3X ޯjIo0[~?@\3~)9F4êT ɝ(l_=^(Qp5 !;Yx9TB,,Zb ֯xNR$?g*Fei Z͗3U2Ъgl%ʀ 3᧳煋p_.H1 ǞE?ዊ,j#;zLqxdV3&s1 e&mE KĒ{.I##i2J{R&QjB:;&D"#nrD?ItzIK痞RR$ %̵IlIESu=+ѶJܹvSF$3+ЬY>;ϐf* 9[$WvQ!7` +73nү[? vHh/ǵ8Yf:;Ŕ I+5ͅiip 3wE*3qQ3^}.[wjw^,NV^xա.fq|m*}@2EkQ^lQhK,'hgrVnTݫv0ѻ]zUyD^zR{j.<#bY\4cPK|F0*a ##*keystonemiddleware/auth_token/_identity.pyYoۼK~(]e`ln2vB`$f#zDʎWIK^1P72w{pE$edS+C%\/I /(R  ERɀdCFأbExD|CN#W[-2qɯ8Qy]#T^lGZ[W$P˛t^z]2)I~Kyg?B>5Cz "!t0XS>$\h3$RՁ& \ߧbL=8tE#r6Y򌼞,g!4[[Ob2_ͦKr ׷7vOod+lfH İ8AAIvdK -je QHkùMJ7lĞ%,qޔ^@B*|NC:;R ;RHڞZs( -_S  OӐG+Q~"J-l=M Em=%Xk4},U%[6? f_30j_^brz}.HdL ,lM+SAI%}c0]k͔|(kݨ1f}?^Ս_FWCrj'LIbnr9aǹLtyIS6cCBr6^%)<NJcPp7 NqX@@b V|KCz\zb }m 6G|u<ʙ5?ÿF8(y][F7TשY1&c0loNՂ%┃ˎ]^,gp3.V?/@_w[b1܌aKG,@긄 bI Pk P"0MGd->O&fDj& VK R$$!ۥ>YZ8j~@v 114[ vrH֣6crりXX!Rh^ jpcj+pz%l S:%SdKLجd@zs{\@ E S*:*\=im{8AcEp풒a{#=?1һz:(j~g!"8h;0~cd 5$[?GD= 1!PH|O AW$2Bd_\[u7. ==ik$< /]eC |!L٠ZBK5ڍi[O0pm>(I(RUn]"* -eq\gp}ͱyqZ}芫#5%*RY)̾io4T:ªhq}]^O/7֡͢*_jxbCPʔs՗z@ٚi'92j0f&xC3&d#` 5e- ػudӯ2لcFHRu?Y~rai)3G7%DY(~ ot\mQZ<85,~yx2a4+Pc ]N!Y]8;vJٷR~v&> Nx4%^#gzYx#H- i򑆩-` RۯNz",Vv[-ír߾7$fRʖ-lPpμ`̮_}yc*h,,OjPK|Fs }I&keystonemiddleware/auth_token/_base.pyeAo@'Vrqch6(T')ZÀGdw(`;RpY{olCv7;%>My57`o @j wzE}VewldV{:<~;r9cl;).Ze؎Bf`zV1;3y֓Mga.\#.5俶4{e,fIgRiyoJzH$+U|. |!GPȈ+0[ӜG&;WZd?ˆ& pRv  ! ܀fi&C{avo$/dkÄDK 731~Edjs|q"kneµ*B_`9 a&lQLFJ!7YlLq mX:ݜbC0]-]t]->^/g>t~/'1V Gȣ"MJq震"!%7pd;$9WДM"HD* 3􌖞8 Rm2C[f s H2f#mW`0WKf([(pZcXH8(z6YZlH *[1X0LR'ބ!7گ3p=V[\0,D@ SE '@nqdt1BJ}Px ¬V#͓x6P< +*ᢚl ), ڽv7F 8a1ٮ>:aG*5ĒnK*9wycq59 : zZ- ww Žh7S#?|EYoe;j'\a|(?oN#V$Զʫ59P͝9̖رf˭+;6E5DnY#!p,Հ{>O3?f/[1Fc<[v;)vܹ/WFaV`J}.,!A\!D_z1>Jǫۡ0?Kzfy\;n!G-|pjGBH!zL#KJe0ܮwE8)c6b' I5e.`epSG:Hr6i5?*BmhIq0R9F٩i#uZY笭GYҎ`vV?/3U&ybKzHQ;[㠲6' ?9hkm.Ve^va9S[>I{)"w.>{+L[PZA;t1 vTQjdS, fŽ*s (XrU8 yjKV4xbpYܩ|:A19\y >,MX4ĉx턦ȡ`%*4kUUpܫ>g8 0`E'8@l$(\JmմF:%lX$1 ,T͓uLR`'r, E 6 &˓y[$uhCxA@YddL0@ITm{~LQ@,zS ~~ut"\I)X9G2Sc%tYdD5 OZf_#]IRP uInUGU ܵ , f"gTdM"]&f {Za.Q䎷 b> Ъ6lu HeQaǵ |?h`vr|凋q$QdB!pz|Fh "[);Jez#H#<@zV% l &లj7${BS$/O;hF6Z^tI-L=d#h@oR]jrE QVj+?}e0|C&0Ѓ.@4[3Pb8EV $EZHX`V`NߝK> Ng տC`fјbi/_ae% ʸր1Xų≓*A| ktn"`C[EVXO0I3('eEppϩՂjMd*zYQ 2Kp?`O(n 7߰"́źkҿ>_^*;OE&} 7vf~all n[¬hw~kѧ N]hsg)A^s30PG^u2GoϾ%h?W`:| &5d^̂adSyQ7|Y|QtW@N%-u.c Ӝ~X]Zv_$O$ CɞWtfa?ݲ,g3[]S ݫr̓r<$n2i?}G"K(e*='&XwǺy 'r>+ P fnKEǘyjmcS!LlE=:#sgIaYM%ɳ nmx6VXM"rNcڷwgR }l֬Dk5[,te%%ib[4 $|R9cSr'xʎ+ÀIOX)uc#Y`/Yzi+H:PviEOx7#_r}ѿ&gRz:uSBT) \D'9o LZ"IopOU*A 3tRuPo f$l(m)iU 2}>JMtq -Uژz#$a>7)yC r3s@ɜ&hl^9 o ^~?2ms{ <cO`y+ zJgwRZYOy"Z%f̂vGSVU6 p|f2T%$^\i iD{zvy29YdaWk9ˋ¸V,ԘLPY?:"jzƷj45B<(a6Lki`jVh⢅ՂBe;Μg *aMq8$ аV#B&>>yG3 ܱGT$y-f/p`l<78ŇS*-{Esو#vc&1&^f()~8DrF^JϙB_"`L~K @"KA|;ZnfE]-aHkUf9ҏ0Nfw'ô/oA$pmxwJߨ^޿^vAIjDesǁ{R8XAۊG5pdœCK]fSQp#&RaYQ\qU!-p(愄/h &W]l֎d36L֋qͩ&t1yatɒMK] &T >L؀2V$u25'粓 >q! sz?x|9 _U°ofMT]ųB{ t]* 9l6u&tTY]N;'ѹzV4 s@.}CZHӄJWOgLIt6v){L#@EQ6pcF|jV~&J{V./i(>F8G>SWQY qw5z 1 4I,9!ctЇ<9EP:H -2ĭ߫Vu`M4h[4 `'hګe,?W%ӅD]A6>}ϭInn$1I_X6}NTDs] *`H6XSAܨOd M?kP46krx};PL4(, |*~eѵ&< 19 vT9x5|5z=Va8xKf%Kh. zgq4l,U嘆^dE2&xEtaޢw.5fgx[߀,+󒼭GA/8sXkUv SiZPe VC YYB{~h0ߞ} p$'[-SØqm;9<>9/O޽{xy!¿QՔI!řAn+Ʉ@TlAm4(ݪV7؋cG{1PS2H&}!  A گ0]'O`7"{7^z'B78 =8 frz;;>rhzO.y{r ڬ%bZZa?=?& M'ߜa9S%f P$lzY߿LFs aܨ 0Wk1ڐ(t/2}eؙ>O#H% 0+M!G# A35~zt%4?XgCͳ6ko'OX:嫣p/=q? äEˤfVip!y-៴LakfQ?NlQTz|{.nM3(VAvjnE ȧ/c8\`3Q y }"EWfus5UٽKŸyj;Ǚ~tjY?̛w`K'Bϓ{8ӵږjmRC8>4au@CF׭4csY9)1tM_<1`^(U0S9<..svzkiq^O:d\vdLD# /eV(ᓝ)Ԃ%qp%?gt;Q+7Ψf6g`̳!)A/O3:=I,࡚e]~L% p#*#Aas;JӞ1e u9Sl33*.M6hz*McVվ|Ҏ&T8`H̔OSn4Ȇ91?`.NfJ ʺkpa3$kA5›[٥XgDSkV+fYP&hĪ$AZOkr/; K7Ȝ3 Tev`=c<bzX?/tmFYh^ L<4蠤-犣}*J}lqk1\eezM] mxS[Vv]*8Ma fFbv#+[WGW< -UˣrX4LwtiM3֍-HJG"[6ʋ .YsU%u__Ц |/1ygo,[ƺQR0RfIΥl~pIU S\z23a%ߑ\.6ũ \*ʪxySi|qSR uU/J~L0wWngϏw|.F_gsh_WPgfn`n4#|j=g.m'xy6sCJcL;"c)RP*˧]@QV~E<>U>BۗQ@:Ĺr]-`JܻƮ8!N 2g({uyY9=:|i{=<]N45Ѷ1Lv#1b_I&Pӹɍ?2^=^O0z!G 2Oo5.бk7x߀H ~Kkr"}]R5̌RHt=[$W93ޘF/?v^ݶn sXijՓ7;ʆoQl[ݪ~}mޜ_pq55 _8TȆ܁E&4d.ari0oܬ+'M{q葋 /Ǐ?87 OY;\I'mj0w #&*iR5o tĆ@+j݉ ` Ϝаf\:kUXq߫ש8`- iRgGpNo}C`Rb_Nj"7>MLOmt>pJEʙ/!~H}.e_E$b]^؛!nڊږ3d_~uPَo_BȚTj%`7*b'sONg H(]^0&\xsͶoֆ8^_tf& pMf.:o(bOtc+]I;j Vts2K ם]/r1aEw F4<7]h؍g65[ب F`R/լ3LG*=8k (*9F:m%#$NWʷes'`!Ql'7rozZ~;^e. x1j{r-j-(-?HoDjk=oY#̕9Uj||B;a; %e Zs,lGc~%-=Sa='aG1ٖŸ6KgTEP:]'7ʨtc z\c A%!Z/P|'#BjK/95eRS#&)Kw̛8}=4p`apbP-J&ǿFaovںB 0]sxG=/{l(FXŒTQp@ /ܵm'u]$"O3b,"H,TcQ؝ϊf0%ˑ+0X @}aS;;HoYK-b:]AOKfHD~Y3>;` r Z]bM ,E#o2FVOns\yFMOcO*:bm/4BRؤ)= W/7 ܐNv> cGےSO [<K] (wᶷlݫ2\+irc6uID9Ϯ;h[[*4)hVߖ'v-xiv.Z9>UL(\pxzT3=$1]R!gԽt k'FtںǼ;ݩ[ jmxevBAϠsm s(#8}dU5 T %tpбtgkҩ\q!m!:kdqqzpב{:-'噟 ,Qn/W/_S!:EE9{_ UT@OS|8=>9 &G]\\Gg O Mh, S p.1om7ݤ~{qP׊a5ͦ + ]tvVz+re7ގ9ֶ`y+h95IŠAև3Xv!5Xpc ̒ .ަ FkJ=NӺ[ͨx\|b׍ }60LJC3ٰl,_65Nۨ05P}N5?"IEΜΑ_ qrǁd-|K%L>O3}BKJn=K0e|.WiA77NQkN[הcw!'Yoou/|i=X^5psEuظn4 Votȿ6OU5D`Ķ#eaaZ6ozmnYׇܽuð Ӟˍj>ͪ)G9eoQNй`U+Aa&_oT&a/\TXMdMbkvwV6<1L-7i*@ԆQ\dq֣]l= [j1o*&Ӣ p/ϋ=,olOoAǸFPͷp%#~X7|c:wFjg ^;N 6K^iz]rAa{䧃S{ O嗮d7iRہƏYV֧yq`y1C"2NV&l3űPpF<,>gС3hg0` (ā!,v[<0-_8`9 &۪dg?b$}x5qKΪ_&d;Q!&bwDJEnL)bEf{ѕ_ħ b hnTeK?><~79 '~y!?Z\1G *_#uoo^^D5 Gu9#NMGQPt7C}~%ϒ w Xd.|i@9|?!2::p]A{M׃Λ&[$݅BK͍,(ʎ _$r"XX5g_+4g1)ҘIV3d@dEJ΂ N죓?NdMwW$9<' 0ž")SupFlZm|5"+SDa}  Jlxzn \&fe~z59^ 4ܧ s" . LIR2x*\t9 X- B#'"DK Zq0 3ԛ?^}t:/d,L0k}X%8fmRϰ#>0N=f <* {9Kp%reJD"4^nt<=BZJ_Bs ={Eof?隳x c!2* 9&4UDͦE)%,BHj6(U$Fjq `>t`r R &P4R_h@WJ{3AAj @_HVVDk!"/WAԖu!>nؐ>F#`_Ѕ8O0R9j@bt~+,e Ƚ,RD"Z YTB(9Ͻu?s|WA3| $hƯi̩VߡPc;c2 -/YrۯAJ DĘp1St#@1 ǥ!9O 2qmfAY5kUAA&6! 4ٕ$utV<^gN  R XVIxt-Aϒ:4os(=?GMg,|]%6o3Cu_H2_+<_dHyyO茸oAqSdق( .iWybh @ҙ0S4b TTd|/Z`P9% y.]yx#pB$@!]#tdm,bˡe6>x!HWH=a/^w҉ZX݊I!0O\d񅔐 l@ V[҇GkV" a{Q3lGX'{N}={jy-TɛLA,3Q%+dC<6~@q=٣aZH>nm8aӻ[]q|4;3bqTU!|?}h?=`#Dy{&yGXfX7D7-'<gj #-R_ -R R@>a,XYD@ч:O_̄jN~=9uG3YyG.VSYC2HQ"b("fHdХf.r<2}|8#в_;Q\0T?90"uIe{\nyG>n9-p6Și!֩Wd}ys9F4i8oXdiGs~J𗻛~gPK|F(keystonemiddleware/openstack/__init__.pyPK|Fu 2keystonemiddleware/openstack/common/memorycache.pyVMoFWL]8T$A`Š[SҊPwfIMOE7o>WpţwӷS N8~Fv +~W0vRIpڀID s4Y;Zp+b%RbVRzTLЕ&ݸp-s<:W]]^Dxډ6er}=Qo}R%ZZY*ķ{ EalN3N"sPmʪ^7嫣g&F`Q -7֚6t ǐ.fSIZ *m@0+ S֢etmbQPsڼj 7n[,^ SׯmL4~*Ew>?_wM'< WH;gQ֡D+wiԪ@/I}V^H8b('vǡYNhÍaO"OŸKG1Ű'9?= ŘǏl dX]^ L0^CW/@d}] ޔ5Z{<ⷹ`ڍKHa7κt>H*Ν_d?'dpԌ-Md7.+PQZ|ζp9ITL`7fÄ_cC7ߴ DU83>"Nκh0谯Ph@W_Z:_{Ro8m"PK|F/keystonemiddleware/openstack/common/__init__.pyPK|F!keystonemiddleware/tests/utils.pyWmoFί!hrE@6@u;ېN3̬O>Xai}0JO_ T\zv.j^}T!Y 6Qøp x/3-'{ 9ϼGaPm0fV 7ХWK%lg=cSIM˸529 #[E-꣹)͑'iC%ێF_{7 ~ޓJ=澞|OYBpFI5RLXyK-r)1lcO4㤲;]qdR T ot+9y*;v%p̓D{ s̔{9qMI,+\=rv6uAVY4g{ hEk/D>,yeHIj p񶨝NeZF׫-2%_Mj'K4!Su#'`:b60,L閁, yPOK +O:-TFlT=,'R\~/ ݦrHiĹ9CWXcK"z_٩ʺseW"H#x,Qq1GPH]8,udU+ʌ+﹚:]xKMMۻ= %f]dh"o `A*"(,6Z$^C 53ֱ֓RЎFT$_oFt45i, { kG$ X;2=שn:^u;N7sLRf4p1$Obe e'R_LYk:%!fPa<Mj\p+riU3 p&ǙZҙ55ׅBhW ؞LP*2{e/SʼOyEjf(wxb킉b4_I:%FPK|F] >[1keystonemiddleware/tests/test_audit_middleware.py]sFݿb}TXasKW ]nɥK5H,i,~I!@¸M Mwϴ M"g1A䔑OMi_l~L8ߪ5E<$.&K P#|Ilz[Nib$:M |$& }=Ύ#TS)Vk64"TbrԠu;^oh 9-&.$GZg–7i X,;rQ e`H'~Mkov~tn\ߐ뫋ޠw}ޑocI a_|6Y:3d2["(imMB:ad`9gµdYı][Rʢ# Ix|Q0t.807'$i'?75N.$b@JΝ@ O&. r4c#>:RwIke>>&&CSι' osmM/;` Zf%&r!unݥ~a^3nU0 q7Qy:SA݃fյ$S7ШitΟi:(O z*n70yGTd& B|@(xU[)i&~*r\R_kڬ 钼:V 5^Qu!/ȥA>aA&y`]TSw!A_tt1RP/ңh'g~ouc*(=RA}jar\eD)~#HZkykDzff>Tmj-㔣d[Jus-JU<4?ͅȄy98!SfCq'P@e *99bhKQI[O/bBvSTD''4'w-bȀ џ!7Ҷb 6 I +-^~;j5kt8JIC2BzH^.h2/P;pD#A&3P yE-7DEۖoStIQTU }u> +'Uxnmp]x`uq3X7 P9Sfҝn[y_ƕ464n;Z%[eg>hP8rHܪR i_0KfPg??~ԏWµE:Q=Y4VhzhV绨mu{\^eӹéΦר 6e,b4CMTA¤Z-\wI6Ƹ%T. t˕7txh:я[q.1m 'eFU?r^n` :ԢN&Q:@4 $5O3 Qb}G@VrW4Z 5߫њFo`ad&G.LԬgKJEKe*cJ׿h#n3dr3'Cexy nyLP& =B~ϙiMoDDDI[xT.OZp gKָϿy&)o1H7@cFt-X1$(RW%঍лI=Nv̀ Ҙ|Lf7f1lБFVt A\tun/ :pᡆ}^LLT,[ȟ+Rз,W s\]'ew=H&iTCsqV%i5aՆjn5|ogg VU\AhB_/ .Vڽ;P FךfϥV#z~l֎7k.LNF~/" qEXӒcdt-~M^nǵGmYzϊ^ '2"دV3חsQ_+rO%=D>l^1W8^+W-t<&ѻؗWxjKs.}- ִP-!e*jmMj1At=QI lm/;RQ]--7P[ EdF%{-'%g_*wQ^م;,9=<^6>/fwb[xz} #za7A-Ҩ ]of`!-3ivEzUؤ:|8ZW ^;zkWЫCޞP7>U|EɣqPK|F/i *4keystonemiddleware/tests/test_s3_token_middleware.pyZmo8_A($&-]Mh7\!p#ZJ-olJcI3ÙgT^c,R>Td>$,)\S!U\č#X,YH.KdOJ'qQ?jJ"#sKP$ LpIc;vވ xpvgpuJg_ȇI0 aIqdGF f 0Ʉ|+etL\4pH9M $st1Hh"Ud.4s"d$|RN#V%̯Rę,o&4ŕ@ĈU;*K!ɐ_v$-~*Xq&b0#\T"fsì偯7yhW&F`p{O9"~j{3| 84Vڸ8D~JX7I\1u71Nam]+$P kJJ3ui V`D ٔ~@]ɢ)^| ůh|@|d-D n<8Bc#Hm%ܺAaKwǐ(1nihƃGAh祐zi0Goeu|@52\tR:%qK>6g6zrLd<ѹ$3F {nnLmS,o.$ޡTDk`E w N?5?;xŭ:,eOT&QCii4Ҿy\sI`g:i׭ mPybkd`b@b(9n1ђLܖ[Tj5wcc~ BvJ[/%G% Y,R+^ n[EE KOx"),%,;ܘ.ĕ~>bZm&^N jITeEdȭ6{{ .LU˾a'2S[)^t`J;AGr"6LpPw4D,?",1PYLӝz etMVR1U ZxifE:0J,+U׺ኻjkj&7c{P-u!1sW ):=;(ن@grzMiF9L*_mE}o<\Qf_(A'^VPG[ӗÒWu&AN0Ntee0ļF: U]B2X ק U p`MKK җz\OHW4TE}"w_Bg!~QGkX#1>]įr WJ7Ɛ.ƥ}}_ &-NBJ\渍3}e6k g8?:w%Mce&A[&R4m7ih47sie!fI阙+Tt$wZïXහqnOCPm],[= ,RXVl0.RL𧟵}ӕ%d1ذU&KS6˥o9p8s4{Đ:;S|k5&.Hn_T\E`φgCΟOhibzt`km2loN(waxVM~D럏siac$ʔ#*@- 51=v1`Lvyz^}f*_&%> r9ںPȖ3akP9UΑf^VYHheaC]pt5O#4]|_OWwwWt2;xw;{?]Log'\>p7YN ?ȇ9'OXtC풫8%S)ETf5uP+/0a`wJJQ7%Zb(xbIa '_'% 93<kI\)'ȥuV"_QQmhWK[=Zw4Ass3z F N!RE]u~dHFċ&ao 2ū5vM8)u7}7&H;!-b3^|No\̃w66^y> iˆa%_OP)}Kٳ7ɾ30H$V㗳0L!Iܣ/>0/NKĉ \.pSf٨wLqu mx;f\F^?,X3b*ȾɨeW/;_ WV0z2rJt$^G5nkwOEaaGw"j$ +GYQ8]wR]s[h_-[==&S=uzx -X嘺X*<'Ҁ,yQZ Sc݈Hn'1n/I7%WKX(Yip!H0A yO$vkl;}a-PO׀Tk& ]8Y?m0${' 5&WwCUΡ@Ij$g(&ifPW&pVE9h9ãPPٕ¹J$M+L$>F<*k5wF{%Et _f6H3hn埿p5/n#PUh6a4TV 0nɥ=:E6>sh76.w`<,EJ[<GIyDb|':ZůJ*[ɿY.uۚ5׬`%enb^ +v(uHPK|Fz&% %keystonemiddleware/tests/test_opts.pyVKo8W %UbO]MSbwbQ45 SJRq_COIVD8Ϗ3](byjݨ9UF$8*9 5¤f5c%<|LC7{M'tۑ%4ɄPkBU-Sa+:IGk1#|M9 g\nݦ,DjSi;8$Z 5PlEaJmIxkՅ2d%jEQSp3YtqMO_ߖdy2[N0t9 Lf?jEn6>~ R:b}A(tBpK +JFQ:Pݴ^RT6XK*"rzSfn GFW:TQ'ZwisI٣ I".?sKR?0qPSybX@Mdƭ3724(16?^4nf.ncFWfPnHxΗ4=e2|DL&^a2 ƭ3WD,GX ˣ-+2"L!^GZ[7V4rPѕn7 g^ډ(ٮYNq#sBb= *Jt-B |HE kjjVITL]V=!q̮1$lH*VgRa3J hoNbw_4 K)Գ _Jɉ}r^I|byuGtQ=FKjVU^Xlr ݢM5wL CEsmVBhJ&;uftmaf,5n]Qv1t_|aXt;{ǯDGaʺq\SkrZ(oyc?&麣 jvD \˾0q6EtSМ[H[S"f!{uV(R{ ,Sˣ $+RU @Fa ڽ-߾yc&-o;wo>J> 1㹱uC2Fx iX1 w{M~rLϴȵ ;PtS]y1m/lSn0 <0od0)Oxt!>]3(.mPAH<i 2l_ wI405uwُı`8hIRk 3rڎlw0y+pz k׳-Xǃ0T[dR8.g ۝ۊKͿ!џm% 3'.GhĵWc:9 y_bM R ?cե5E^(d!k" <>h?G||=P. x< <Vؤ K!T~? da0yYQB[ rƹи!^Y}3*B<0>0U`Hfl#$ y}ʟ oQ+&[I@~-O7'43U_%usQl3H rlRyL|=mgH:$~2ڮ,gA >qKrcC%.YrnߪJr>%J@ͦ+b"JW[26`Bwʥ|5Ls-7H,E`6αs(fBȏɻdz ~a CTIKB;8s7gẕQ\NdmEdXuh!@p^Rb2QHo:e$u)XTT^8$˃*4bKWl -7p[Y%Z[Np-'Vl NŖVl ^Ŗ*\b;vTIL:ײ{/%׾K}ɵs+vf[h7=&gE<-pz=MSHDTZd|Ȭ [b !hiǂ#T]r`7C~v;<_u{M+Ie22qyM!}$VIM(Kh $YBْL !CBb22d)6#[!S\!OB)b!Iz6yIcLo|7N.B6\QkxmB ݙϹ{&\G3vdg8~yXi,pXӈK > [ڔ)V/qBShnolV\ d6vҴ*$WDԱrȨ}ɭ}rUDc,W'q02ͭrIpNEͯY6l1sV΢p?gv9:X ue#Z b=j-ujcaҗiyJY2 䊴Tb6Nq2PV6Og^3M~vÜ'/ƪfL+?O))z">H ֯_)QMKږ{ J W?%#rYp{zG3xLafCxeluVa2OU v/yӻ?R9]ھ#( 2m 5g:N9Nk{[*EI.d=h xszٺ{"Fل$ۑÀkSE"! y7)(h?A] ~yӂ2Ejޜř?3gFA{ 0(YG`H8 (2M C*L 9Ĕ4صOr-[BJT_-,n`W]t ]MVXQFZS'O[CJlnj^Kc~xn=F)o_4=EDu*^L!9 .l~PK|F$keystonemiddleware/tests/__init__.pyPK|Fc60keystonemiddleware/tests/auth_token/test_auth.pyWn6+ ˨+>58EbO#d6%R-ɎRErf8|q\=Ph1*0ki"ٍ *ͥO/[x%ջ! )א HEƙ6ܬ4 |B|6 ȾvҴfKtژz?<(tϖ7jLvHX4-͟GXEڦU'*!]`ѺDZ!?P Zr-ҋ!976E:ZTy4T2n%=/Q2|F (/a`gJO֔j iL,usN0`Dq֡0|[`t'qx^1VffJ}g%AYȁm0kϳJ1p־,9tµfwm;[̪>g 2FZwh/ʍִ*n9LPwHyLqH5x \RLX OQXWv ~2fqh et S5 G=MS&{SMzN:8mƨބk4O{|]RO#TNTXV!|,it@V-J8dVA ;羂e ]ןZD]UgC a[t-jRҜ]|Zꢩ퐍k;îfM7zMZ`C#{rؕÕ^W2+?$(_ ֪zWըȓٻǻgտ2̾,k@{f 2 QąM]d!wT pRʧpX7#M6wshozl$:}YW)h,|Xvvcg.޿F\]~&ׯ0X{F:VCz{ 3> Qa| gNPд>`0AٌݤA fdk:{z>}7U/PK|FQ%7keystonemiddleware/tests/auth_token/test_signing_dir.pyXKo6W ,"\,zJу[{ilHwh@:$9pЧ(4&P="g1kV<RGpIt2 S@ -O!,O91B;2ӀykH>m_qNizyY>ZR?UONrGL|Fں:C:ǘoyLvoT9kMM%f;!M6;ʀ'/ O7n?O:)S8[%3Ã6R`Ɠ$EQfyH3Jr'N:FÆi;Fʺ5X!DEHD@r5[RĐDc6 e♁ Yv=e^2Ndy$XsOѝ{|drd8C ҍ* 362 P ED~qݡN&gIr"EUf"v{՚Z2U+3&鱽c*GouK52U;4} Ba\>g^3yZ?g+ R&C]zZ cfFsycm5)xCsο} {`dik`{V7AijQw˽/ڏݩ}Wm+X*k X CqKNŲuclV&01KjrZ5pp;0ubCvmٸ[io>&Ml0?skrfmgG^$l]OԾK Ƹk`>z1%( l9YE/BZ`.D8[Kd0}LAg| n"` w7_<S*(|҆!%nLU+,`33ʵĸz! ؠBXfwV]Y-JZnU3TJL_:xT/D%-Q}ٶ!C`[^ʌޯy ?{=sgtoz#*e"N {b;|%e}dÄN"LtZ(IyaiTRy6០y׌Ig,۟-N!@qnP3I$[,Cf+xoэ}>.CA>GRL!,̆&z.͸l?`PD$GQpѷY9/x(=XpἉJފi\dxB=dKaۓg+jrEu&VbR \dy*DZ=T+C{xw. Wgqw< C\" np ]>i-nWĚ-J%"5(akUgYO MBH [Fɒb)C=2E!8^#KzHо|e2pt}X,f}3w"sL*_Jyz3nE@ Hٳ<ˏ.+SW&}فpIPK|F`h1keystonemiddleware/tests/auth_token/test_utils.pyTn@#ʶDqR&EMԐFQU5 *Kv8b츉z+̼.9*@F6"W '+FS3lu zPB)+|ɱ! r]7*GHZw4=H;KR1yNvϚ9L6M(:6I"%GVܩ O4NRƺ.YG p1]i,.uu{PK|FP%ۛ7keystonemiddleware/tests/auth_token/test_revocations.pyUm8_1ROiK?iv3f!Io)G15IؒO7J{G~Lp23zgkdn7 ~L>EhfOىo4VjokUu5NXJ;(-Ria+3|Jp :/2Upn_ԄazTU,Nl]`\q3G+L$ C<[~#Ѝ'`RJxs^oiƏ Asc>E`*)݀!e7 ڸ UO*l- 0_~A?` ŋ(0>*=(bVנlʔSv@K k LqUXС8ܡ9VvlY;+K):\v:uf`ktG" 1ϐ2;u~RrҝFڳ {f%'*-3W2gp4o#{%q㛴n60JG8f ^`$9MYO (tӶi ߌbM/VAgNͣ^$X%,fb^PN=}^ÞZ_- hJ^V9^l׵t}v D6te&piqNwT5ؑD?3y8k-?.ym~v}-T.=6ŊI7JvHtPK|F/keystonemiddleware/tests/auth_token/__init__.pyPK|Fpx,D?Akeystonemiddleware/tests/auth_token/test_auth_token_middleware.py}mSw~/S[ sU\KyMc;0JwێüP@ҭjI^8{. /ru&A|ku2~&ʋpY0t uٝv>i͝ngiaUq3R4 D90 N;d&Hq2f͓,JAKg`tiЩyUXv߽ȶIzn;rq:n[k(bf7wv?̖'c ZHm&&Qv-LD( @kk53di3 kf=]E9+?>o0vG7If?A0v [Oh=̡*yD"z0z!hv8M=8&cД,0Zpi%UTڬ2+gW$f *4&Xlp##V@+yoN U tZ!;G%fwڟ`(8]GZyk?kԒA]ZH3'Ye,KpXbXƂF~meC{{pn`b5ٻg`#0ftVvyGhVzGOWW6S7x8{ۙ]%Ytϕvv%!x`4|7~QZ&T'`e~w4οF8.t2 jDQr?hrÐ+,,i%hc܆ `IxO }M$^.E$? M@"܄>+?90\Pv-s"Ə3tE` ?r,D`G6XHmyzqw1=Ln_th.XS˝ w' zΦOΥp'7hֽ4MPsIl<?NHfFAYbuRPdoV+TNiN A:}@ljff8NJT >ßN7>q#r\\i 4ڊBضʂhvVFe`뵎\P]($z%5o4ON x:5 QL :{hP+& E>Cbcrs>b9 $qT.9Õ9 ;}YpؒV9N Gbr(س cy/p<,(G;`jf2j̔a7>|~zG~if$C3hoBL7B;j3+uL۫͟^$;ҭhvvO UXёE Uqc nU%cx(m* M}jb]}w%ՙ `\k!eYnU4m[6i)Oƛ-q6Ǜi-B&8M>~9͖3QzB\BjVX5x$iR+5U Qh,.Tʞ)?pΙ~hl&a48h*1:͗T) 4K!jjX+QT@[ei4 ӤL!K{|GMbc\|{sn XʮY;*QX+\Z-XŘVnYh/ԫ]64-v<*U4t/hxB9"Ve1? w2j(*jveEwefC4hnMđtvagqcdyKF,t=_exލ"֝)]'Ô"HJ S c o17VU'EMǀPŌ|+d|}0sm ),2Fɳ]ѐ @cd.cTOqM@\6:_wX1 nĝe2?5|ajڟgHoįД/E4MN34,x۰N>DFa*:`ʧOw5#S;^UniMkk}2eS ?m-̜ahQk+;WǢ'u:/OL zܲO^4-QI>) k Hws?OC֡ `*I$9 14SHpYShʑ=^gGXI02sƕv[IF3qˈm9ZAQX+٬zSZr2E=q6[S^}0!N$9 rg:7~&jNWs&@xpGp˯b44qD|aMJM^NL_ʢBQߗ s%A1OI*#~4ZXE`5ưE!(&q*]vj1O}c5l^;cK 8ϒ>Z9GX`S☓iz <#y])JrrwCī3=4uVy2G808݄A$LQRR'sntI-avq6"5Hjr⭟Aկk^e{%IۺzC3Mbe Cܴa>bVue#qf6T n&r^ðo{'F::=뭝K-gcde#u쪺1Iub2ӧpY`Lpph+1B&xԟܓuR] 2B E]7L8Nѓ&R2c~H!h+WL]3&Nw~%<şgIf[;``vYE.]ذ2HNEWL>>IYG ֣zȦK?pw)Rd$3 -Jwwȁ0n0aG8ى*w&H 8'O }T 57  Z3Uf-|=95&@KK5zއPhM[Jy#>>/By\Dإcix^4;Lm<>C ˮ`>[[nZ*+nBM`XlK Ea "AyCƵ'{ l6viʑ.[s,8J,0H/f]DHd^iY8ӋIwHT \:bB3a `wHI8y/ S1R8|;,  MG0|'pSmAxARNW40E' qZ.ܶ ճB to*O09slj3KKq*t}o@I4/0YK`Si{3FW X1<V$Cѯ/0=dL}IJ#S5xW 0e;lC@X#nxM QNL:3fZa(u `;Ʀ բL9/pr0dQ鑌fM;g]bnllnw767G=.5F5 $|[3Rc2tR? Zݵmt'N;-{;f(L/QNh.KsP1Vough= T-7J˱->TZ"\u+@APR?DR1co>JZކ'f=uQ\CH-I)t(}&|M1 SjŻ8JL`6"զq=s(,C,+Kb]@.(skT=#*` Qði(bPHl9Dx<|*&/L |΂ ͩq+J|5 +ºUgV"ꤩH%,>YQ6H&PQ `K~3LfQNQ8i!_`aAj|΁&&*aMW.]`y%,ks[1Tkk3U΀ưW~Dt93MlᏥ^xL񥞘ͷGa]s`#R׷Vٻ:X~QeQfz\ EHM1_NdHv0)@M {K'z$֏R %N At"KI!'KDU bߔ4D 朧Ti`p0*q$Xe[鉌YkfSkTVd4"YmP\*SXiKNnd {@/,u0ufr@,'L![0ǹic*bϐKا\55Fm穂ܹЄP$^&JĴEK8tBHNìE45Ug8_)h7p&MT>ujJ٨V(+{}n[7S#~6zn3m ,  +-z]+q8ThK;i8t f/ZabJ;?Ps̎Y>xۣ,Z]^Y.QsD4yl$Q_8~k]DӵmgGhBTC~YĴ};Q~(?/Q|*TKhn,Li>${۪*<Ґ 6eQZO]F?`N>\Dio},lp{}[9DhEQVfMԜ4> [rmJ㗃_r#k`NV*l)xB l%YJG|L%4wusLS,7&2ʑ*K~mg^</4*ՄTó&$oH哊n ӫ^.j͖Pն(=I{9ZToz}S>䩜Vo "Ŗ6qI)G } U誊 =)2P EӕTmϞukRUШ!TX|ҳY `Mü(kX6Q"#Kj!1gԜǔ,UUvQ}kN$ +jU"dUcy\WmYMh"y.i:M޷ ܩxMÙ Џ~tvw9nT&ObRM4KM@R2Ϳ|<:fi|'qµxQJG3t>K_L4)]*ID6! M8R)b땀s༄HF$@/zSSzXCгhrvF_^ %?nFfQIL蹽_1󑜋ː4=8#?m,Jѹ__,p`|}tx~rL;T?5uƋ XH*%(-6s7s`h} š`%v}J6cF|%AZJr?'&^8ԃ[/sk*EЧWD"&E4PnXC,}ptiᣇRt%^L(%)Yy5c f֒0deRCfg2%a>`eA<$a #HX8]cIj!@[JEydeO+>okkD :|0`У4JDH&k3B<.,ùGT>E=hf0jgAE=F:`6P, 6{ZH[ v#)޿xǽڹ, x?2C2^o?inlu$Hm% |f2]OhH䲷erff0o؁\@1&XwwjG,GC 4O0Tg|=KEzý(), ;X-hr=hYD>zi 2EC1Lib zsiΨ$M[ʨ/Qipf aofIդ"G-jy$ sԍ(t2|^K$ ɐ"PPEUd伜fK0_gYl-+#6#Ktf̵1t`8Kf XeR/^L-˖(3K n*^j.^.0*0%>:{ sW-L@$4u7'oJyX,KRv?QU, ՐlVc՘ɪ<|҃_ԱUعˣb#4(,DL_ oSMȋ EQ+L!^g;uoy8>눭VWW)0޷d`d i*lc,FAn MyRbduIͿ{+Ca}ۛ-3RXR; ֝]lU8pġBY>>;u3_08p:al8FZ u| tdTRG7&ԸS̺[ؿ1i1_~Ur n玿"q.ó?_iaL")e?p*?qrV-q*">y0ckPwݚAqUvTZM׻oS\#w5@NmRpI |\7%vff/RUj6G5CTCxHŸ9wf6IdAwKk?Jӧ\!q& NY.Zhd&Y?F0P D ϸ^ݹT'`q+:͂}wZ"Rm2`+l > :iѪ$q·G2*Pf lw-iEk0Oz'g+Jb&n~HM*3r~T c!9$4Ԭ5zS5:1MlJ}s2PLpשWg+!4BxL@GϾ=in2WGl)&YRchk[h/!V-{Ov5UiQjģ5mYdϘU]uGEOl7Al/M +ƼcQ!Βwlg.=!U,g1[ Y4vBմD$EFn1s=N~}#y| iPV>SL*keJy?u5*00zR k/nJsK%U{SPs<`GΛײ be>Z ň-Bzvt@m5~0R - _g$Sre^B-94Ly%hsݵ)n7]3Cԡ4![F."f/MZʕL1$^ʈ,xZ{]o*36ºJION$tb|QQSf 9 <;e/:TҔN$kx&d¨U8sKmWAx0J2Fg=㼁PF(AC9 /) {]su[,9ZX {mk6BXe8ùżG {U?q/xD57`%1t3|0X `oqƄy\7[_>yYh˨`= 9r f. ;xBCSV^$R\CNGQoBvWž: \' vO~,D9m=z}AN!J0ry E|84po^3[6=YƕyuNX,"G 6 Ѓ0QpaG:h^%yZIsM_@-2/ V$I1 iRqaD*lxZIsE'<+5!N{X JGy[PP l<"EkB8F2UxyEI9tHy*qx&9f{ ΂q:yB-jI#`.|1g@/c~ Ͱ3ČАkQI!'M̼z?~X?TXHƅb EjL/]WYڎ2p U{҅C;.f4*e@8:F6^9Z1wNj#ʹqBO)lȞ }OoR{{ށ\lO+5?z{p,o=zw{8sLhG`Sѭ3ZJ25^c+eEs7X]2D O|mŸ9`b.*S^d:SxS[Lfyfq͙>n^EA@!en慗e7ϴ4)5nVeYm0Obl#_a#fqO?/Pme}W=Ex#uc˶T܄QJEvS,Tn[kmV" svȏ"tcGax܏JK*Fe!{}p%`$JoU_Ώ2n7ϐTAyR0i=_6N = 50ǩU8"4 TktiI̎V Q {x@Ǭ.f\ ZOY- p0{#Y=:>l]%41a~?%_WF'd-" IBKVX#׶.ʹ q;6Q..-c`8N"XuV kKCK,$Zo.8̥"߮\INjM'[=ٞ 36%VPpL k]no6pC!Gja}q~MDf/lj'IA$H* MmPc0T Qҕ+U 8^ %PpZ[ke)̕Kʼ-}ڊ &~_ &Qd/(,j'{; {w[{v(!)t[#^8?xґS^eNK̢L}Rۓ^)(]ZVݞsS@͢3L\ w*M4K;4LK- 92.>r5۴ͣ%ɉE wW;hQNxA{-8qhq3l=P@|ףl=5ymq+<0O&93>v۫~Z[UE?ڙVTg N>X5w([Qe uYq5e_u]@.KAQEknG(zZjKTG[> RԩV)4cj8sJs~ w6ʮ1|8hWWi0ڑB-+;lynʧ\i넯$IP})z.T{暪`p oZ`A'ѱ Yyi Qv<4hin9Íu M4"ؽRn0wnU{4걅hF=sikG'2 {D+l t!Z 5cŃ<Ԍ`^+:i~~Gw8ǚw!3`$i.WYS|P.*̰)H)%%s6ܟmji Gvpb]jkaT;f} v+GaD"@d:CE0ٷ!E܂ f\. <"Igp lο^Ƙ4\:[It\5? *6@{cеӣ)ԏ/*ěj 6B؝ Y2Id]^$&aɡ=^aW&`sKlU Ntݰc=7E)b\;2{@lJR@U_i,du'(mMMĶA{m?1̔ Ln#Ee83H SۭhF 1Ղ6CEj׭ͮ{XXyilc{PX'9%]fQs!kKwrGR>CւJ]%7.VPHHڴW,/#'~TZy{qf3|2 EV?PK|FD2keystonemiddleware-1.5.2.dist-info/DESCRIPTION.rstQo0 )ҩ>Ĩ3M_kjĹq|zު %l#V"p7!VJz5Ǥҽpn3P=B'8x60J{L0Q@( >53y%a\H?O7[U[0Xa ͂^ SX{!U'Z;1MSf(ƒ'#yx \,gCn'A$h4s7L><*kjWGwY4 b۴qDe:2od뮖&|g+x qhdrVkZBr!}6H ~{zܴ7X^,i@^_1SO0/ǘ185XZn$Иg@!y[*7Jn\B%Rj2pю{[Rm+8x uʛ<kytjo{$d=iǙ]BatJ[ن$H͸㴺6?s9ƌ=jtGRpC ߸THvJrBM#,Q ́;hi|TdqYA"NA=ߒt3.RpW5%:(etSyG-٘6YsrxuI -jTCd\598(xD^)pPMͧZ%ʆ4)Xad5x6uvy5ŒuxgV$߱3u#V*LGS)NN@ZiS Dt_shR!o~<,ϥ@=b>rxV4|\7ja Z&1/1;}KUouitfxY^#kB;~)p206il]lIϻP-YJU*qS"PK|FY~/.+keystonemiddleware-1.5.2.dist-info/pbr.jsonVJ,/K-*SRPJK1402UQP,/JIM,NJPK|F1i0keystonemiddleware-1.5.2.dist-info/top_level.txtN,.KLII-O,JPK|F3o_n(keystonemiddleware-1.5.2.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0323 /, (-JLR()*M ILR(4KM̫#DPK|F F?+keystonemiddleware-1.5.2.dist-info/METADATAUr0+nw (4񤝒ŔL]Q%Wi@ l't"NRF"N+ed[dTy<f§ fUjDAIbtBdw\eT W8nM^ic.du ._g:7k\ eLۈ]gQv2ʙDrV-*! (*e"Q G s3)i̡RQF8m-:*EawagzN9Qw26:5"=a(TZR*ʊ x`ɁޡxcW) jQ" z޳ӓN;nP t6힡p%%I1%MDP0mR`^-Iv*ݼh"nՔdGBNM* %""߄|/݇2Bƀτv"vQױq1 xA- GVW/"[֭ۛENg;ЪO] vko;>| ~ڌJmh4˫d0zύu,F_PK|FVpXf)keystonemiddleware-1.5.2.dist-info/RECORDɲZQoQW[Fz|2oVdܚFh^ݿV+XQT)h!Qo-JMk^>>x˺B$ X?XKX {.W=YId"o L (3oψ[t|4wvKR6oANI#𣁝Ոl$u)>;uVсoBY ?c0$h[/~jCQuJz{f/iQH┊sH.[Q2cY$K0\NHhsz(ߠ dUvRj.V9ld,*.|Z-و,hZJIV}MV}Pp.N&d3J14T])ٍt]Hp/{/aau,ߴ.bVXGJkCyIa=f9|PMaK:Փʷ6c p9FEG&7wΊfEpb^6; OFc-&)#B[So4'K٢?G"$uHwMgFNX6i]}M763  !Eރ!J'Q G.磜> F:)Ի'a% Pږ'R8K6ɓ6V'_9MsCU&Jr|ޱ-! U>C4*}0Q_) JABCB]VWc}2o] |0NN.s-}?= ޳ <,Us'xI T4i[N3-zwb KQCu@vG0L@q<D@}& )nbǽ Az TQMLגG7, ?%pWҬKݏOYu7:JWMC׺r\~0iʴ_t-($* ;#aky䕊/Fq l=}PIպl !.u'Rw9l4BK9zdF8&kk\T:KyPܒ0?OD_]RMQ̓ײfxR5ܧɘ`!yX\|xIﺌ*XeNrY,҇1t>CLŖԄtṽ̵3&k &(pz@EVobD(=ݑ5'#JGj8[1BkkyMz}M[ݾ ^*q {G'RVB(5wm:] )s5aشbDd1xHW\x8wNf"KmSy2^KeBj0i9xӿnˆDmoXDeE3ghk'!ʖ:%+ޑi4J\Falgw'Q'c PK|FsIi [$keystonemiddleware/_memcache_pool.pyPK|F-*J) keystonemiddleware/s3_token.pyPK|FNKz!keystonemiddleware/ec2_token.pyPK|FՇvkeystonemiddleware/opts.pyPK|FTa"keystonemiddleware/i18n.pyPK|F6d>-%keystonemiddleware/audit.pyPK|F6keystonemiddleware/__init__.pyPK|FFN,07keystonemiddleware/auth_token/_exceptions.pyPK|FA -9keystonemiddleware/auth_token/_signing_dir.pyPK|F+k H0>keystonemiddleware/auth_token/_memcache_crypt.pyPK|FI'Gkeystonemiddleware/auth_token/_utils.pyPK|FWC6'Kkeystonemiddleware/auth_token/_cache.pyPK|F{ >-3Zkeystonemiddleware/auth_token/_revocations.pyPK|F0*a ##*_keystonemiddleware/auth_token/_identity.pyPK|Fs }I&2jkeystonemiddleware/auth_token/_base.pyPK|FFm-kkeystonemiddleware/auth_token/_user_plugin.pyPK|FFom[/I)rkeystonemiddleware/auth_token/__init__.pyPK|Fz@F &keystonemiddleware/auth_token/_auth.pyPK|F(keystonemiddleware/openstack/__init__.pyPK|Fu 2Jkeystonemiddleware/openstack/common/memorycache.pyPK|F/Pkeystonemiddleware/openstack/common/__init__.pyPK|F!keystonemiddleware/tests/utils.pyPK|F] >[1keystonemiddleware/tests/test_audit_middleware.pyPK|F/i *45keystonemiddleware/tests/test_s3_token_middleware.pyPK|F*Ϗ]0keystonemiddleware/tests/test_connection_pool.pyPK|Fz&% %keystonemiddleware/tests/test_opts.pyPK|FT W+6keystonemiddleware/tests/client_fixtures.pyPK|F$keystonemiddleware/tests/__init__.pyPK|Fc60Ykeystonemiddleware/tests/auth_token/test_auth.pyPK|FQ%7/keystonemiddleware/tests/auth_token/test_signing_dir.pyPK|F)3,X:+keystonemiddleware/tests/auth_token/test_memcache_crypt.pyPK|F`h1keystonemiddleware/tests/auth_token/test_utils.pyPK|FP%ۛ7keystonemiddleware/tests/auth_token/test_revocations.pyPK|F/keystonemiddleware/tests/auth_token/__init__.pyPK|Fpx,D?A keystonemiddleware/tests/auth_token/test_auth_token_middleware.pyPK|FD2 Ckeystonemiddleware-1.5.2.dist-info/DESCRIPTION.rstPK|FlFa3Dkeystonemiddleware-1.5.2.dist-info/entry_points.txtPK|FGm#A0}Ekeystonemiddleware-1.5.2.dist-info/metadata.jsonPK|FY~/.+Hkeystonemiddleware-1.5.2.dist-info/pbr.jsonPK|F1i0fIkeystonemiddleware-1.5.2.dist-info/top_level.txtPK|F3o_n(Ikeystonemiddleware-1.5.2.dist-info/WHEELPK|F F?+nJkeystonemiddleware-1.5.2.dist-info/METADATAPK|FVpXf)Mkeystonemiddleware-1.5.2.dist-info/RECORDPK++U