PKŒ#Gkeystonemiddleware/__init__.pyPKŒ#G/Ckeystonemiddleware/i18n.pymSo0_qJh%jӦ>PJh $,;3c[y 3vT psu t,9K`$%tDa0n12輲n+8J/vЈ=!HC4Jl(6VH^m9d| BBҹ:ۆ~DTYW!ӏfd:_M/Iqh#=I!Z`!łeSAzV T>8_zGO^@:^AJnWCxkz/:`b~ŜN0?|~?Z Hu2rOAE*%ɗ;Q#!;ТknzWV "3%Ikφ v1[v3Xɱ>-}ŞfyRmC$˺SD*ၟI yAHߟp5بȝ\$mMZ6y.Q˝#"M b>">n5h+bqRB8F"};&[* Kj0(YMg)sDƖ2c1z]lC(ڲ"BRLjӏu|QR7PKŒ#GNKz!keystonemiddleware/ec2_token.pyW[o6~ׯمd\'iNa;ˊ0hȢFRq}ߡ.j;D";Wlʲ/]&ҩQyq+UjSTZ1Za[,te0-2- ^@2DkJc5J3c6vyBnehO!7h, )I&° Tg2B@ @7=bEp:DpR^te[5BR,ˍiR&/,) :K$Om#ʩ)c!\Am+[K:ƭ~+k˳fp6P:>K 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;qNx^ LYMҬ"u/ɖ'+Se<49NQ@I ٦<Hp5Z ^ *xp8TdU"畯b5+nӄ%)د5/͑ȉLdX!W<ݍHm-@yY|SW4q9ESb" j_w5ers3YYސrq9_ϗ {C&O|q9" $h׼@HRdq@V G$Yķ<]MwVY%ȋIS`ŋjG9KIY2ZĄ1 XRSxو ʪ &8ㄡ0Q9*@Ue5@0'4tٱY:$O]9"+b_H6-j)Ş?ĂlLOAߛyB( t`"< y=O ]I!jI"\ [c 4lI=:O)Ą|x썈/7Kc!s/7-2h{MGSCΚMM݇T=sQ)j{r:QZ'UXY q$zoB,Ne| cu'#[6{Z]t8os0f#Q6ae4u{EΥ32qVO?}%oK#PpcȀ -;1$p ŪѽPIlP9 !aS^_d;Bw)3(. R@.d"ك.ߧD *c׫zyhk=(1]j, K3b= cəA} FjAo5`?ݼٛZ-63컥>l) t9h3G0+/9GV;av M:Lw_wxXhfjC0 zto`g>eSRu';a`ҝgYүtYS4D]㶂Yҗۄ )A=-8x ;u&f/9H}8>ͅXu{seV'Kz6apˊ&gAXlSt {H鶱6x%ۛy9JAV!q^)R4oxf㉺ FQV3iE弝 < Ldm`ua{m:/tI?Gcy+FM8m ᱝT`" ?UHk[} tvM#,[7dM_WvSKJyUƭiL!D vAOY"vܒ{.|Eئ, \HwoZTI~C'~i2φi.rCm@5îDW5K9U޸aUhiŎ!^tIBhU=Ң40yDl\D+dQ@< &>%u:4 4##KWϕ?}PF VI {+,O]$CZVXnVPhhY,[ W,N֓[K=;:RgE1fC1(h5IA gޔBit(gl]~pLtIl~R&XvPO } w q^w0P  ]8<|2HYd&:LԀSuwU#þWmzm3o}?۸- jњ8 s;" l,0]hyA*U ;ZbNyf*hZ }..oFp!8QqvqP#ش3Q䫚̆gg'> zK@ c|^N7JO&;Gҧ IFc;ReNV E9muWU*"AƌIඳg@DzH)fj{3`qoa ! Pcͳ޵$hZJl x͋ ג ޿ "һТ! ,2reicX <,k|PFK 14,5U;EjHMuxݜswp}8쟖ɇY1|U,0"CUq ?m>vB2~Z$vr~g V7wA_SZOַ+TIbwAY}6]+kNm5X`Fހ{LA[5#pt= #msRF5ny.?rx9q*?V]Mj7Wɰ*Sw/6բjRmVݛZva;[]2QMy}CKAKH3 } 4Iѽ[X~RN>PC,H^|(SG#U]ֈaHj*6걜d8xQ,BѰ%3*\r,STeeUx]V+%LY&QۯXH3~0_n_Q+vEnywM+Vy앹]c_ǥ!z:& mcVl]]+a̯nof};oɄ4l q0¢&Px4:~OmmD<׃%e~w#ܩibj>fvYӿY^y70ؓ[| ^ezFӢD Ǣ#4z@})XUxK#I\y#_Vog1`hK) Ѕ<ɎMK*S%70ɉH>`>ukfg`3! PKŒ#GՇvkeystonemiddleware/opts.pyT]o0}ϯ۴N{ZU"aUUUInWc{ӌk'PJ|}9~;Ûq9wo޾T+Jb+G' \ o46f% 'SR<T [#$ [@%j\BZp&KMH3pCZ;%!1^splgg],iDiϮE6{MÝh-rCZ;`lM4@`A:s w\6Sv3H(u~skOD_L(`Sͳ)/*'dL|Atq9ޮ Yr H^QO$2NsV=!5/IlZ 4 $9lմD܅n8 Q# kݦpe!2.;-*nT}9bbdӯEynqC8ވ2ntd⭉*_΍'i4-ѵ&WVT pkIdq`NU4R6܄I\ ]BV:E?+jA9пH:n+5FzhǞ[IHu8[@*bH}hio{UxZIj0/6{oV޿TX@.T鉳Jcb/Ugð;nVvpʭ:zP’am@J`m)P_i6.7Y =)ãtRNnSSYjwiCϹ.TTV|oT/T^ iE(oGӅε- YB-.31RWX!s]ʉ qlrqcG#F B,[b# <wj xIOTn1dVs7TaxTb!WRTVb3%D-Ks.9 o$#!u)5\~,aܔr'ML1g?߽?9s)K҅\ JC ' SN$*[ڪك!%s7:='/>~/8=NO_OO|| 6ۉs ̌c.DrJΕBTB[L/t^fAiK 5UM̔%2I{V Fnw=A]yٝ^X\AOb}wx/ߏ{Lt:{'lLeK1+}gX4$ ?ta-LH ,LO9`VľqQB彀$Q\.yU\\eJ]/Z3E)23{um;f̤I .CdM7Ji[P, fUd9uo6ҞH?;ΏgN?'ދÑ~a DuqN;o;_ȓ>F*.]$·t)˛`K8(l@ϖ)7ͤ-dfUwСddl/.~loDt)?5\F2!wQ_FDOczܿބ&'1{pJu,䂥8qSP>@4zQ-D^-/SU=FMZR@z۴1D=XQi%b 4 UVEd ep@4k6Awz*l)=EQjJ z_H,-(!CMhT>x}87z<6X!#Nu `EyI쎢 _ Uj5[jhUa4ū)$n/D$;#E_5kPp#l&7Cq֢KC2cܦ6x |Ӑn}`iK(d;hR82lI>'T+S*N]dz TMMFX[c̰E!ūF^c5~Uti|*ɾk&ZokwhF9,<Ԥ\ut(Kq&R%[5>vel֣@g n4;T&u:rfI nS'r2[dOӎ50xdi$Lu5#t*$Z}&L)~ck66QV1\vPg!ִΖ"W PwuwÍ[o-[<4ƽ( hz^ww7 Sɶߐ4!&:[# M+!>ETA4c 9N< :6 trmLR3 5ArSEjVi1P8:m8,z0'۵s8=[3 xk^(>I%npz BOjd4 e LU' APҒGE;<13{xԫW/w~TgcqwʦqjPu(KɊ _0P+r!rTèD~?,+-+* $ ;'EoB =r s{/>|Ƿ(QLDoF0oa>?G1Nτ򦿦=$YoGWVk@_>jyNXroLW!X 'HjjE7JNwrAx EPZТj^BԞ,bdo]ܸ>_=Ccp- ɸ! wH&~l:Yv_u>3qiG<"rt'uzUGkeWgAxa8Y*<FGn?QюQsYLfԟwSs~+h5 otS Ӷ[jo7D؍0c-4!x[h:WEOQq 7#o=py2:A5+hV/:G(Hlz:|?fư:Ciܬ™i]: k}_؝ Cv]b}ޅ^֓hWLRoS7t2ծq ػQn? v$*s>V+\=tΕz C)GWIt=Sy£] 셜>+ۋ}mcɼ5B ;PKŒ#G$keystonemiddleware/tests/__init__.pyPKŒ#G)keystonemiddleware/tests/unit/__init__.pyPKŒ#Gab +j6keystonemiddleware/tests/unit/test_audit_middleware.py\ms8_c>jp[{Jղ 3m&Km)Ŷ 5~ 1Raf&`[~yԒ~s&fг 򎑞OMi_l~HؠjEf<$.'K X#|Ilz&#SLt{Ă𱤶($ێPynIw::U\L;N(N j~9,`ag I C N{–7mO# Xv =eNQd0lPHwM szp& .oUb8_+rzyq6./;һ28kjng_ *dN*͍G&<(iOlMC:ed`8gµ4dYı][R  Ix|Ѱ0.807$iN=fRk\-Id;A,,R ٘lH1׶,*Z\HN=lCA=~L:> ؄I0s&`!|DR! 0zdqc5#'D.#}-kjCr& ~)$(p3IYv|Ek=gTi(httVRο &Cip+EP` $pJ6ZmFk*;xҔ7 0y+)2!}s ?[\xUXm]9k&~J4dmxlL2MF_ qLBHgN4yciO\EQ?}69WۥcȀ6?"X~"$ٸX=I  tCI|uk(lxj߂-%H\|iD,ZP5i.z)\M׻~0/P{U}wtd-)g}HwO1;.iW>gڭ"4(&,: ~=XTY},ZoAFY@mZuUq(|xn=\,+{U?&pjЮ]VZ+\.A-KhGGQ?ԏ2Ȳ.T| 0rs2Q&ZyEY T7`<(3DN|zlSK̲XfEeU0[aJRB̦n+D%]+'|txhu9; ^tWNЩTQ#Rl97RKzibMZ +IL9ȚjP'VJ ]9+#Dmd#Ud́BHliS Sz񒒙9㟗Ϭ#.3*̌ꙵ;Cet\Zn KP@F =A}Nݚp(!TqREZ{jt93>1켂isqOVAxI&4 ]A=Ud,S1x{;A/rg׋OqbͬsM34&9:(ٌxY`]:؂oϝwꉇo8V.fcPTm"ڋސv6 8e:3fOFEj]ؤ:|:?Z _ۿ~kקӖSޠTO_M*xEqw͸ȣ)&R(^G]D [H'#. ]ՃGɃkF%šGR&GWhGo]Kp]xW1<PKŒ#G֕Bk *keystonemiddleware/tests/unit/test_opts.pyVMo8W %UbOYMSج Ţhj$sM*Iq)JrևD<ǛǡnQW;#`V;Y*cNh n,8*2p+q8[F7KxnwJ#OJ;- a!_9VJ 8VUwcB'Fs0svMX6Ѧ =OwqUI Z;`%ْҔl + i'T1seK&3bY Q)a2?|&/ m2.&Osli̦diH\Q|ϟGgO\7 TQ4ʁ M)殮2.NQ`@q`n0Cnt sZK {{uAc_:Y&wkĻI;k'$9pɈm^Y)9WF9O*)*uz*#2l-m/'[XVgT[Exp9/+&_izY3 LlCQ,9)ב*V0T˲R<Zk#"CžM3Rڶ %5=H}S"2R'Ju'ˠdLm'Ԟ>3o[m+.Q1t ~ZuI ~bI}˜,ޠ2Mg݊42K,CYJv͡ Їn:hytbh2-$3%jBmt 6H]HRcYuGJV=KqZU_X3 ݢM;&uцE{K: x|gSѴ]1KFZ*hq|V:)y>$bzis{,Nf*Nɸ=uIr\z&o|k޾jW7Zv8fGʵ`I</F1E_&j+uBExﭖjCItf_0h_,/=ܖTӾ[uZLףSzo<PKŒ#G)^&keystonemiddleware/tests/unit/utils.pyXmoF_1쩴wαV#$" kr$oMrݥe~3\&)9Dygvfs !#5{LU ?T)\C<:{C"S* A" ldO!fd JX4DI{_h* :aX24IAީ;/>fgg.ف۳d@Wliƀ/DFHgV;-L0jcwBIcm+x&Opr]-|~߮Wl5,al<]M3Zot6RH>e S%ȁ/(g06[zD_N22X& k'#J[vK2ٛ꧕ V)hldsZ'*|~++wmꍊSG˚9eXPDӊN۫E5w^>܀A{yMS@&eIGjSnƪE12> q̱ܓJT(< 9:v2A i! Ȃz^@eQWKZ+*KmQ j)/}1=߃A :FWEyD[:u5Yl=Շ JVh1r'h1|f5Q1@%XͅME?r+߻ ދ)1wA0` Rb?0 (0EErK8H V%~[zvGXU룱1%ϳ=G2(3%9TXv%qasKَfTr ;Oa7:B),9V 5ෝj,O48Pg [e/ 6O0ܭw ?]ԵPQ[y2 rtߍ(@-t@XI5}{cJgf4Tg~:B1'r/ /OHy~) jnWӳ_Gx ,-D m%NgUF3" Dak jetyTtեQKcjGP=k GW\Fݽ?jn6Y2`O/n#x6?PKŒ#G7ٖ W0keystonemiddleware/tests/unit/client_fixtures.py\msH_1|+Wq.ͦR46~=# W=O9gzmfZй\;ݽfKbM==K{e3m+tejr*qwO`5x 4-q\ GD5Jp:Z5 YV.E9'|C4{z2{M£>U @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^(dbɉN c^q;g?KqAjk_~y(soOhċiM qJ0 O)zIr"D nO,I[yk Ģϲ|Sm: 9== HmC3OjC4vUdfoӥ߭f;dn0΅ KbY3E2x O}7Sʂj6M,OQ?v!3 L%?r> Σ9SC&K+ZdWƦfh+2o}Pٲ֘m pHW `!Nj.`m }24T;7+(-毨$c{fQ f ̍ B'y4( 1.5G0N&:aw94v\ nVϷcsMݕu=d mȹdh|o*6^;{:]-Fx]D@":BfߐEa<]i r^yanL4CDny}6?zx\ fx8A0x*lIyAdC~D->n` n! vL? Njo s1qCʫfTFᅄyl`|`f.)YGH?B/W`eN7哀2Zb3 @, nۻjr6eq| wΤ9c%,\TY_Lu:e,rig nI f{\.d/uΒfXB--}k~a,&^XY,ǶER(.d>*>#C=7 3' Iyp|2 $7<Q'zI%Bliňd)2d)4dRl!GCCSB8lf5ԉ: ot;L1]l45x=O#.3s'?(M.U㹎f8p+Xᰦ|=m)Sv(R_Ω|l߬| &k ?n?ȴmi3 U,I$9}S cQ[+BmzGe-M-PݫX~O,`[!^>+0_35m.cpQE~ suz=:*5FhA:!Rz@[ gR9*H/mj˕:7di~ ũ amB ;dlL \g:x9O^UX9j=W~+1R$=RE|| _Sxα-@8Lcg?KF8؋f# &\IF R8] (g@q'el^w%r3|)j]}W;FPdj6urHIg?U*E\%\z`:2u*E I#HDBA" oSf7P~| Aċd)ռ9$3ř.g6RH% 3aPR%:!q@Pd(TbArX),(#+h2k.ԼڗC#ŭzzRF(hzāÉTOW)>CZ_' ~9r\, PKŒ#G^ ,9keystonemiddleware/tests/unit/test_s3_token_middleware.pyoHwUe#Q&MH = ۫5c2qgI*7cm !${󾿜gXsɧ'%#M+r*$K eKF) OM~aR8Q729PJ&b@+5`&YDL4uT#TRӹrډ-F9ObK%:C1!B: i Hy2m%"}C%*!WZI+*/fwD&;cvp>Zal`Hg'qpW{럝 ]1k*`YCMI$,C*exr%ӌNk&LθBk*`/$1qmAFR3"T,|$1A%9oJ$*PLie+iyHPWnĿLJ3?*(Ւ QZ&O 6bsEf< c,pԁK6y1FF`p{`9"`~3 [}28 Ҹ0^nb to6c:x}/˻CC繂_5:0TyNʩۚ>,Yn5SLv%3 2Q{,nNm ›chЂmb8U뵀"qxE5+I57*ڌ.Wjf\a6d*Ԟk} 'DSM^.>69v7B-Z.Qa[iiEjSwjMHܥ!b?!;N~RGD3umOWM5%1UzDK># =nf8 {'K]L'sDJgFm]] i3 g[H:`.8zmsz)!@R98\vi!fT|UB+\#rlYԝuЗbLMtL 2b+|ܖt?6zuE#aRt_)xyu ZwH_% I1]Xz*)pE9 qF .+( v1]tqEp8Lr%4K쪛hȧfV6jh~m Zd{H9v bvy5[3Vմ 7seA B\f0vf#u#IIj_o0.C^ehڲ\:^5fF/X>Q+FAY1Q1/#ˤ5ߣSdx'_mZ?:*dB3ڻ7w =?|[%f #Fm2)lV>ߚ30hyH}b/-yѢH RMulHlVw7W^H23ʁEl5@ugUcia')yIԇ)%ERL^0iJ}O׏'5ja=Qa?tYw5}lJ+gްhV_8RrIɤ2A[W^=P&qx6O < H<6SXtc> o׊R$;5kO¡N*< 90^` "eG*\ؙv?Q'+ZxqgЀ()ڑFO-׺ x$!=]vLٴt (JyIsHn|܃[O'PKŒ#G\r0keystonemiddleware/tests/unit/auth_token/base.pyUn8|W,ˀ9 "v(V2aJTI*QܿߒlD$gG3$} "`UE<Bm*ڥ'ث rP*D! B"kQ@R ^[Td(q5-gkmqA,("5eMXB24t£UQ)!;wgC/('m~vR^o]_.GUX#9ZҌ ' ʥ3ѓbfD?8MB. ɜHi֎tqG07 F;m}G/Ɲ7-ȹ:x >J{[tݜ𲷦D<0tFmO7x bUga;<>\՛Xva6+.eՎAz0d0}ɋ^@n]J}k 9,kz7+Cssfʹ?;C/}s| .clw45{PKŒ#GTk{d5keystonemiddleware/tests/unit/auth_token/test_auth.pyWn6+ ˨+=)|&)bg{i$H-IlIv ,3{CJF,\ 5 ] YB^K@Bp paa d^daM *'øH j'M;`ƻA)f0m U:*K=2-_)c(2(>+(=QۀTR4fMx"0%(TZuz\L0_^rb}>1}CkϳB1p־,9µfwm;[̪>g 2Fvw]UUoFkH &L(Xo;dw<&ny Kw]$*E`~ȑ? *~ r TD:'Q%2 E ;羂e *OP]8Z*&9᩻ $FS Y8h[!~w]b=8`MFt+M0qeWHQUEQܖ'bwNݫWwJ(Y׀TAb Ʌ<#Cᤪ|=MofGln"ٴI2uxm%*8΋SЀсB(ޥ?y >\Jߥ1M500X'{_G:VCz{3 ]ޣ ]TGщ| ➃'(hn/0nf}h\ֳ͛tWw#^6'pook_PKŒ#Gg8<keystonemiddleware/tests/unit/auth_token/test_signing_dir.pyXKo6W ,"\,zJу7qQa69M$0f#Zߡ^#ͣK7o> GX,fŃQi. 4K' 9!  kc p3#+3 kqAHszkoL~>e[_<%Sp\JZ5(RpE{=ɡݒ)+A*`;fuTp@˭)BBI6fVm/@|1'>, &jWp^]`_` եH\ϕGL|2mj!c̷<}]v;*AہUƵ&Hy 3& Je@N lHO->+>24;Upj~!iլy8N2$1.)갱n%`fNU5X!EEHDxOt5[R械Dc6 *3dNXkң7PH mѝ{drMGgsRgD4ȭtອ7m#%n?TaQ)jQtpL;ci ,I.Rd:}Woݞ{֨FJ}Izlolp pQU7ú/K5zQ*uC~/Af2L٨ wPVf1Fsye9jyCsϿ0Sk`{V7AijQw˽g1wj/U JZ/t]j,!ӒSz\vqm&fi\QV.sn2FYln-UW+I0OYT.4-TΨ74t.9؞gZjgkݣO6)9,:4uR v)߬?qȕח4Jaqv@oNj flt|ka'ivA]n g7ׯ'½,9Ph,bHߎSB b\vR)8NfrDBzCXV.<5P}?Iw8hۏ?%OGs7PKŒ#Gңs@keystonemiddleware/tests/unit/auth_token/test_base_middleware.pyWYo8~ׯ ˅ä>ean:mF6ג;eI> {E*3|䂻)Hy RqF :hLV"!![Y/H$4I WXk#08\ /cxH c\U9´7ThXPBNLR]OóCd|PHMijWHec^Hy4%|`JK>Nt[=LJ!v`?{M0.)ʔ7yJcgahԩѪb)\")NjуԲKǛ38E^%2!uBmY4t72"٦{CP #*t[Ee6fv!!_FvEIŨtgiaRg ǝT*쁉r\>WiGpE6GUӔ ۓsL<Ͻ`y CZhw9ie*ըn0VT&RezM<Wl5]aTpK3hω果u\xQ/{[5}ٴni=Aع+OZT2i^!FªDϙqp^[m_ӛ TA-E(+E`*WSyYؕ474w>5~eC&% 8ۯ┎'wlׯԭ]wjiqh0=x+HTD>!x S ׫a F!9LbI&͹u\tN#`U)STWB+>E?تim WsV6 _DBnE,Mn^:]3;ǿBܵ[f,\)}3\wĻzzn4 Dƞ~m#T7 ϓ?3qM3|-F8%z ?[U)Tb{b/&ZHh~SӜ>aD%8ITg&\&Σ#E QSEc xl=3v SD #ڄ{в'PKŒ#G4keystonemiddleware/tests/unit/auth_token/__init__.pyPKŒ#Gg-m@keystonemiddleware/tests/unit/auth_token/test_connection_pool.pyWKs6WSJ?&ji"g,L&ÁHPBL ZR~}wAOإfxh1fE|ud6-ϽL֐QXBD ۀʁrgFM.h 9J6Xa=OŻtsww3[L's7vo3=G[5|A #|s4U Hg<Q/*؊J=\:<^HaQRG)0 Un/ qRb(]Cu6FD8e]Ayw(SE '0.e9h_dSjÄC? F MwXare78^\zO'XmdLЉIԙ#oh!;mTD8Z*dTvp:Ui?ivPRsGhWXDGfCˏt ^8к"j@p-DC[ UV htSN.)/v^&.cGѸ=h#:{Qzt쑉Į_Ôheh7 q(MT uٚ9̘2a %En%EbZ@;>?[9dYPKŒ#G#3w?keystonemiddleware/tests/unit/auth_token/test_memcache_crypt.pyWmoHί%:wyk^N@ iPzUFbXŬuߙ /;>;3!| sfơ2˕S$p\4Uj&"4Lρ/=`IB8@02LJG(0S;gfLxqtX,fv5=ca}wz]\kPW$=Z 3_- P Fi t01 x 4(1VR?1YLp@opۃޠ?zÛG{]75׿jԡ% E J+;0ĹԍIC0@9ؔ4xJb\r5J1b. 3;+Djh6PXjᅯ $&EfKH9{T&S+Ӱ}Re6ډ0)Vdk3m!@c^V̴EVODKQ*B%s:6z Fu=Tgjksaf 5b`y 񂅋"P/ Qhي`@`(6eU* 6fv.:V!Wf"@F1 n6w `5uO߰_*sy||"LT_cݯ  t.IZԐlkSpm 3xXm!831s6D(Mبj+Ct | uB%_ZʺD˶m o!{:iz)3"7|.$T;4֖[Fݹ_^n۝*~+E.&s-+؄n*dR(IyaiTRy6០y״Jw ۟-N!@qnP3I$[,Cf+x o}>. #)&3fއ"꬏@m?PD$GQpY9/x(9XpἉJKkoI9Sy{TƋGIr% ^WΤJmT>0{n#OXTvw0-О.ޝ< ](\F"OBKK q2+\7XEtT$!l͕ޛ,+K{i–Ѣl1衞sy 㢐ml1K2MP93=|1e4Y w{ywKsE pef\+'#eςڗdL>fvwLA\qw+4LB7PKŒ#GC Fkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.py}{sF8R 4+U"ѱ~%N: ݯ灙AaٱjבșgN2Melo80>΃: x3g?q4L2tgÿ94Άt*jdL['3Be(Nqr'A2M M_0@8ED@=R9ANe^xqss2{?8?i< I?Q su 4.Ip$D&(,7Aait15j `jW;qe ehd9;{'{kg7罃ݞ`,E=8DJQf EW<'atYN zCgM!HIy++0`HLGP{$1&-Dp:C+h(E9L~e&S*$@8wx`_ھ@l0„(QӊS ,f0MWyMģh,q0I'1Q(d̔hDg;YHl%tfyOqR&H.?a8Xi4I+Ie'Wa\+NE/2yix P(ЬjVCܦ4Io*"i3oGeڙ=%I}ɄgeI_oQ}sr ;?>>9=v_9w: nOkz?u=Q vq0 ͖# ZHpO$\@& ǁ  ʾ3`'I6]˜Y"Y±';?a.ashEwGrŮa'gi{8q'fNUdAt 9T^RVD/JۼIr1÷{|6d eFk1޾r6\1EUj\J&3kH rHd)_sx|prt ?`Ӆ{Z|G{*`8bΑV^o*NdɆ[j-= Y֡ 2_.uߢ!2klnml<__{yW?O>uWVA<z;e4Xo\hKPktۨv:?::h-sЮD80vX9eEku0,A9x\hdcz%:Oo_i]s̖Sa)Mw`Nwl=ܝ%_vyxcٿlmq'?s4MW- 0B1x0 x># UgI` _+VT 4gAtCr@8x|'7: ˆ@-^q>:a8)Q]5 VIf$'#-*b S2t ,tc?!!!X B?!{d[1K*~m^J |C}!mj-@:B^WlI. V+'M"-=:phˡ-sƮ87OntgvՅg(vwRp_.>f4Or}E&;aEH/ca4;M~Xt* gg)8_MIYHowѭB!0_'Bi2s$_kT*e$Tb^ #cЌ,ZT\8cϜh:P (H x]i-9k FQ0 ]PY_#c0/]"ޒGړJS\E_q68gUw~CmsY;U(۵e4Aqzu+8vF#Jʄ ;R_K*3[?Y xl+7Mכow# D@H!x 7|sIBypjVYY5}%yR2?5U Q,.T[;bQg\nֆ_@ql񤴘(ۚB+&Qi&QQmmѬN0eEm ^Z>r7*wabZ/j\IWej%4j}v!4aj]W8-y ;A޽; ֞? Jh2R`5va`sڞLutyMckacPt FZ1އ0ưoj ""BXEM u"4:#: }M&B!8bZʡcɈ1B_CysM `OKOs5Ns ѴW*sa, K܇mnLjhԞ?a6 įДKVBW3hT8`|$m k y)~\ N[FxxW\puUpP_F;SPֲ-f&:o̡;lyKcA't+ S~O̲ aQr8￿ƪא[팕ЩcȊI٘p/JX`= (ti} 9Ypi1~xK%xG'9rqA\ w˛SQ>;7VaF'S$;F?:;5fI'[:iM5j͆+Taw% T]cq;5(A&ˈzo{?^?LJ"P8ϴ $@c/q6uTg-a˘_L ?r}rOjd^+cmZ`[W8x[(-R NUa&. hY"͙&9Jd«t V`Q[B@| ܮ8ߙJ8-4ϒv%s#B$m퀁Iv.FшÆ=qtWTt-|]vR$4Y/X"7r>d7()Rd;>)74Jw0iS.c .YAdB}M EUFrj2bRKOނdz' xNP ,iT)/gƊ;gJǞ:szh``ހlexG;5:`x?M*3ܛA"ngp1kb!mů۞#5?=t PEcL - 1B~l7M1GAOwf1'Ļm.29)Oy58=Xy>? 1ݶޤK8Lü&I<..ePD2ښт0!9sc{Pty,=CٳQCU} &7E&gLewQˈޛ gCt ̅eWьXu;ۍw 03A6)i皸w@΃yQ 0_ƷTN)ph;b6`"0-L{5Sa=j< '@\ϩ-K]@I-}> WRHPa[Gӕ35@)X7L&&`bb\#!yz4C%zh3(nv*GȌWmЮk8z .nhv0evxgZ,WF+{x](8k~qqV˷p{5ye֋?rBs'B)<ծ9@)W!'53#RO;O:Red.hO;8F, >||BMOm$|Z Wɺ,db-!!g>A<;Wx?8Q7, F(0a669Ս%ԢhTu3'rQN,zYv4AGUs?T)po;s!"s:&`|P㕶KIOMQT ߈mO+&~0')+ӌm c6['k_`t'6X:ޒڼ"V-EvI>i&W㨙⿏@ >Ej0<]dgL2ƿْE{Ҙ ,~f_!X?J)_ _P5LJ9Y"j !/X}y?`f|cި$V%8T!='JWi=7*Y<0#f|^dB#O*X\J+Mx/s̉O\;ƳFOص,+$;|qB UGB[*g*>;) >aiFgs̜:0jUl3iFc2d̫$pO5m9VF?N;۵/=|mjL[\ʜ(&uc~%/>i1PxIfIeWk ?g%3QœQNgmiK SV%) b4 :kdG7o9 V ĝ5`QN@'q$Z/cq ]i45Da>+艓DO1e[oK1]P-S25W}ϾUuK\_$N ܖ)A|"zcX1C^(JdzsDrs#FI }ӂdVCvǟM#]ЂJ&O\}ͤVnѾ(+k}a[c_DV՞,*GaNWCTYBт Ru9?FC'I%^R`ՓT=djPH~k5p\u hV$>s^߹\=w_9mcEP-ELfwhB84=v\ŔȾfHfJe5츧';bwwI(}" XOpVAqNV%ib嬗/#`Qhby<8kT:~9hUnXi0>Rf/ ffզ2*MQ+;!.&ȱ&YK`bqu@0=Qxk;cnFٕ9(nsk1Yn'Mx'P~$0 "qrf,/_+bƤ-TB)+~hNh8ô͙yfZLYTŖQS :,^ ~a5n)ލY>LJ3_~Yk L?S7Is HI;`~:޻z0/~VT&o7RI-@/R +%wa~ 7]+#$-kP^EpSEU'Eu)T.uWUqȪoMUb!ּZ&)I5BJO#5`yu2->'kXt/Uَ]J*2X`:Oʒ8'VVìo0>N7Ljm43Q꣯mecބ|Yb>: WUhjVy.rim9ot%?ES[ᮧT}JaMtBߡeWǔZ*Fܒ`x&Q1rEU)U^*X"S{'5S6laFE\b]svh 0GczELz‚*e&$rpL3'0u,‘dQ $A ƒPSQئGtUZ[ruiz8ݑcfP;8i]9꒮v@)jҺ~R*bK(̥*x\nZ3ևK!SWP91,ߵ2eJ"ɖ"L̿b# ~OВ)Qүedwtf~&;x34qX tf+FOʬ-dw¶iWxX" gQ X#Q ?txw*jbRmۻ> :Iɲdm;Tq9j(Q\ڥM+c]?YYV[qP?.@-b!EkXh3>dPr-{ b猩R`4h*EJ-і+f:E?B4=,I UX!hMoE7f.`2۝Ãcom+0rg%,Lu I馿oR2/N CruGoGE Fׇ苧'`"ODlz1J%1=_8Qe2^!M`(w3F?Xv" L'XQ+E$@{2Oy(r aOb A9"3[Еvcv`"'l|EY7*H8Y1dČ^Nq_L7I/g0T@ӧo)dG``?@l@/379ʲ!ݦ2ȱ3:j/Bј&t&Kt٪#fYHGA1 Ug?U*hp(4 KUP`D-s"eS)j)PT,^1v쿝n{Ǻ:oTUbtp7" 7b.,GS>IŴĔp9Q) bEcJv~_\ӉIctJh6)gir ðIry9ʫ)2ΟV1,-oaFWT`,Y4Mic$KΌ 6b` gVAJO。i\&V`th.0T9٭S+R*ʳw}#z JOtObOb1WNaȣMUhʞIՍ5XT]}_0EW kM$ ?w! HV&̹ = 1:ϰ~?%V籌8Cwu,L;u3g\z ̠jHI9/\N0D: =fph 05}x`5ު 1-/@&0onnti?/=w&aaJK jby Hf<²D$1 eJ'4%/1m{GzZtG*IzDS,roZKَvcgijirK氽:/F=r;@%Ad4b 1CNSӘ2wyϢ5g*Ti.d qJA@ܖO\|~ǯ_!pyx~۸KĹۺaQ^)~O罫__)m,"~mȍ9}5c0ɽ4fHM,n% hau,4v(u_xy::zȖDa2 U{A*I,{nykV>%@JUF(u_Й$7x0~V~uxH[uJv x"0V Cb$W}7 ;PparK`pE:0/<+H8o.n%P#|d83))l.IbyIӒy¨#d ΞG05sҖl utbgѪHQF'#h@@#.lRKiJ@;0 u|PSd=et5dz3 _jtp\Cr"4>]>]2u<1]߈b9:͡aPJ Ep C`bQ~&`\FKZ01s"/x(*x- zӿ@Β:Ej\U&f0 PhWXÄ/Fy j ${8 ۹qx __5$0w;(q|쾪yv@&Ǝ̰8H1\1asZ+2A:j|x8?>ȊsY&R]7v ~CPױ7}aCrGH+nӡr淴)9=ǔBoWv4RRtsPk9ր)+PUF-Q |U/.)Z \{^vP2^o]si7@}tr(9 =?!򷕏E0/2>OoG<7Ȼ2BrlpA[u#A#U#C8PU:8 ETlP?*n,8h%o!w,yN NRN*9Y`.=^T;/&m|L~EG!eu('` Y}\|nu҂q_oq0ۈo؈?sŇk$3>pp^)tg=+ܦOJZ:?=Wl~1 v(LiWI<>KItdQYe{uE&JJ˯aPN|LApѸ"|ua`Vϲq fH0y`E ҬH4GUU\UBt-Ů |X\#bvq *¡̄)Lv!)Xmg'Y\&sPJf"?^fy:A!UHy uQ͵0qfJEf($ t]Qf c; ʚ%-4 p^x1b!hDs)K> AC=jʱj &y%1Rh;˦!HpVemM[.9?j z+qY#R%ETEmmn/X\ w*C&LVm7)jLXDSq QKLl\TE+޲B #^5㸸]<[8?V޵9z-MeVASd-EVq (;|U8 +tEQYZS׀"xpA,ɢ<,LtPWَA[" #,ꐌ(ph>8Kr L꒫eyhĪ쭵@I2S g}êwajSWB/Ď2N:h}wFG~n\!:_wN Asۛb-PKCL5I!&]:thE!ƔF0ݺB{Ğw*s^2gs;=[8u) C+~r+d-E?yV)9KV\^9%e% 6bER'J{.pv>s T؝}mFkϼJ"l6Q[&NbJèd\'/K-xp)?W6X'ܡAgt*l]*qbW5S/cE -qˇar&EP[ `:U.X@b3:kV5wcpGyg)[LMAq}<ڵhq.A%ocHJr,RhM!~T ou{ v?NN6i#|| +w_!>eBV.eڸUՅ(h.Yү1HӜ^*XxCcM7=fk{;ZF\KSJ W6Pvho#-]9)|_^h*|X,Z'kKpV-"RLiDt3@jVjkW*8mz" kyeY69P ^߸ 6NcfI˗Uc1V3h2J/`F|J\=n$Od? _ P}_yc^734wwxh7}o'}S _hvNwt>ڭ0f-/a$s-qGV7sp"6,HxS*9XDj;\XHVդ%TLʔ`X]U\5m0]nUŊT&sQ"LnG m /L jwav#hBu`Bu0oD/,9{1WAc҅b$ ,yB1ɘ'94aD.K9ZQUerijL ū7?ȑқ(ٔ.U[@sKK~bX+[Q1SxP::0@'c-]=.9h EV![:{ wxZ`ZE&5H0y5s "~Ep2&E+xG16RwaʌZCpA"OPF,N3ZG;bGNm.rcF[TI1s6H9gd˿P(8a[nX,%;eFNOX!lDPfð$gJcpfwP.)uܱAOA ]\K=lJʎ)20֔'Xv\ c/qg[>޽`?SX7kP9q$ˈ^%V1jDaIFꧺ_5eQ%'a-EN-J ,8P1ͬXa*f$yPZkWp4e2,L)k>Lo,cPX[h|6/Nh+;3Ĥ y)!A9#TkYj9)NFLzL`P\xoSgVSB!PG %&T:tgS^R_ZiúL*F7Z$ZB~z %zP}E KȺIJo%'hUWUR'5TNⓦjR]׬^G(M)cWrN80r,|RRR5S"Z}`e'W š WtꍻCK[js Pǰ~ U1jom'Yk(NoX摋5\{\\ax#1nindtZO뱚RʡT-lX`U0&cd (?ГtTM;{G{NlI*3nXyȝ㦊hwUQ̔bgWc_}n@| (A!n3^IR^qc6ʎ2SBpuOCfA58)ם U32j=I*:Ɉ9 *sSV#XAG TY43-_A`SeQKJ/<_W-j~zWm'M@&d`;Cص[ߩW7(x{4Ͼ#j|'?`UK6[_ۡ__ïaNoQ}򮡰/6muDQ;"TE5ed 8 XVg= Aewi'Wy_n ‚ɀ([(;ԻPKŒ#G1)$8keystonemiddleware/tests/unit/auth_token/test_request.pyZo8_AXH\%lq@ypok\.lg{EPD;ʤVE%i${43R(a>x hb~D1 vΑ-/RҋO? ^"Jb"h64 DTPoG4]'

g"+PCHFRG;hIdY C /M-ߓ;($ю21磀BI r(H$8$`}!Ox`(`(lr' a+SHb"; DPz0 !\hO≕ ȿqL0lPL]h$(} nʁR@G3 <|fw+\*YC¾֙5,L R OWq@iRx q1eWS"Nӫ%9Q `yj5(!&5gorTe2`I4w~Aϔ)F˝F=l%lY?:[%Os'ijݹl"{Y7zoKY"7R/vlkCpL  !gVP m2ۈ2U΂Æc4_%5T1HY7y+L?I ܞ֖ޕk,pfZFŠ0ZR[}&;tے-[A=Uj˾6kR꭪()}cley^L\fx~TZ{tWʸ#Z9:ʸ!5FN47[_=.Oĥ4OTJ=JU6깮3>JjEKk?1MhƣHˁZlhr.&s#LOqcN7Y%-۸nB?.]=VÁ*p1r3`.3VlÝ LUߚ/4e3M#0^$?zzݸCј锰w!f;)lkDS߰=`86s ӈ{k|z>}Xrf_Q,&V1-"֪ŅI[yG-$xZ:×Yu,k]@-1;Y!v9[,6:tbR vzʷ/?+{<=}W%tVK>uW R+WyIo"{W>tjsLmM4 7b+Dx}^uÇknq+dL.ߜ_;io;ՐQvyͿJl5YƷ50ep@f8( Vt>s糉D/3b:*bR]=DXYz"NqVoˡpe*5L`w CCu@+"+qR|y&zeAל`T85kiH2ׇߒ9Ԗ6g k wZ{_g|vY~I )|X~!%ݟ>*&e|\?*:F,~ӖZzQ[nNm, PۋReY-RkE.iqz%PkYvY6!h{ ۤ\e 5H.I%-TʫI֐S_dHC (&"lGp(jh!0DVP.yP73klyPu@9[eN ۏz&;RM6dÆPKŒ#G]<keystonemiddleware/tests/unit/auth_token/test_revocations.pyUn8}W -} :nP, 6ԒTw8Y+/33gЗ0>@|L>EhfOD7+-ٺG]BΏU,)>X8 R*E8Hj0Rq\*'V}K஁ wL`nՆv1.VZ0o) %9/S74 91tR"z`GHܔn@Z2m\lgx}v?[.gu|%7:[-_&$ |*ρJO' +c5([`*2Ԯ;~D()(Z( ty,5t6wdժ}dR-Cli"CO-'N?>S#^KlQM>fӓi^usheu9 ҌSy45sXoH2Nh1Fx@Q-EPL C1us)&./&oT3:^79fz|sƧHq!rUa]{frGMsO TNcbѐ|/ ^aόHeF߻]FWP}$:xBM0 Ҩg%N(†g==yN{S֓D8H.ݴ)_3wXӳhg4|9 V 3/~O4%7TPCӍV\/NSE6Z{u> t"Lyue&piqNwT5#~f>U-/p֢#Z^ym^|*^CbE$ڛ%;|^$:`'PKŒ#GWAkeystonemiddleware/tests/unit/auth_token/test_user_auth_plugin.pyXn8}W Ʌt>eIQv HJR`CFHŮXpID 5'h+=I9C[j|;Zx9F+J&DSDVI ]N`4^ p=N# F袇 !Dh8Cc#a<$) /6K_S)^"S6:ؐ HlJNg*xZ*H@BN|T a4 #)"RFm?Vh?` ht=tqLID9zL,8QJ$Z@"<oo]Jj䑕A͞vz n'@U\d; VG(h\H=tt d uΦtqHD^zLczL4;\_k:{_~43 pWga s6Rrc\{&;"B2`Z7Qy%O@O  췄X)@5;eEfj rъfk.wW@ܹ ~ 8N֨K?nn(yΓ,X aT*F}7 _Lؤ]6J8  & h XjS- ^0Vhpks]cνѶ%߻nc׬oe{C޴%Lx4J7QkZN^X- }GB};V^ps/y7=ovz'C|GT}FEx UkNcL[gRW2_(.]Is 9۠ LEabQq y0ɨF8{8/ҎꬵOⳈǿJ7^dl8絠=h!IOqj~1`hJ* coR)'3}%kj8q"msP㧤ɜsS}w!RYh³PKŒ#G(keystonemiddleware/openstack/__init__.pyPKŒ#G/keystonemiddleware/openstack/common/__init__.pyPKŒ#G% 2keystonemiddleware/openstack/common/memorycache.pyVQo6~ׯy[Uq4݌u`+ 0hpIHɒ{^$}ZW#GoIIphgFP9 V-a2,Zh^;Zp+b%RbV$(~fLUTPX#6]ӕrh S˔TE- w\FI(FveHʪ^d櫣g&F`Q -7֚6t ǐ.fSIZ *m@0+S֢atmbQPsh 7n[,^ SW4r]Bi:UċX}) lŢ27a0^! |nEYv|RK6<.pĤPzO쎇6]JKnxTz3] O|B:Sy8kΆ@ ѥΚA iL>tAǞo#{Sh 6iw\B-3_/t=}mASqL]"9? hՅfnh")τ 0COROO[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Œ#Gs }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|UEsјի~DV@QW7d6Ɩ.ML?BŁEL=EkHRxz\}8PB%[SV_QΆ36x6`oc8'hnvr=o' '_؇z8|19S?G ،I\t b%bؕњqqޒ%b#Ld; : 14\)鬔0jD[)insqrt|p{G&J_v(gggW2~'K7rDwFxx5on6[mآpllYlO-y E_#l9^?;G7}H9Mx3Q zy? =;I *Kk^Vd>G_FJunm@ *{X#e֝q)t] [fRF-# ί<.9YNl6#h)LU}ShPF"TF %0Hl) vL1^97Ι;0^0;@v^s!9>vu_9c  Ck(֠/z`bUӛ'e' 4)a0W(-xo_W>"1-|}mmUnJ+Ay#]l-#'o|w7[VIv>}6't0T d>}TQ.% ]bjo8(fA'NP,n:ߔ mAyk-B Q"Cj2D* ci5vhs&`/6X-kqe޴hG? #J"`ŵ`/ݥewJ5Wvؠ74 o-9]SY5g8s)^ ڲj9"ќlN*\bÇwz{3Uk\דaii:z7'2(g e6f ]Haa3,I[݀manjuN^˚~M=Q=6n-aȡBO? _zfl_S6DDZ]D[]pQdvrhjt09 73 F׹??5*ƎX!e59O4/j1Iv_ғT?.Ȩ:D{?X`vZB75K O+6s(ؒpᵁi*rwJ&ROPYwtҗlpKQV)@ۥHE-pҴ ~_Z ,]4?J/'s_UkQ<8Ͱv ^vzUr_Hc/?g:|"JNBvx`K9vJf5BqRi^0Nsx# ~%+b@toؒ{9mй|޿y \oh6Yb1F<4w HE"z0-Sil<_݅•\xq} og bEWMr,&tI.r0iA0fuT0t7r%=4$>`HҨtH֭~=OSm ^SQZ]娇vu"JH7 z 9ߛA%.W?CeQўx)X$p MKʓ~72J.;7.Hh %wH{ja\z$iіt^ߒUCWsaә@YjApi%=޸^DSL7Nwz=9 ~#)޸`[TIjhɇ'W\mlڇ֠Pߦ5.#8$R~FSKUF Ct O }z^<\,"-F̏e"c>~:F\U-` {pv\^_Ϯz|qN~E (èu%@Ȑ*E])0/jf<&YhQܩ2 EkU WSVYMPzVϦ k eiTD5.ǫǴE͎zUE\f0eQU]E7ɝeVP{ыdž%Ty0Х8p6Clt VfY#SLj9bhUoMRIΐY,#݊8A-ՂF D}졒Gh6rf6i q^rI%eTS@4[>[z"!٤$ TC(OV0ZI^ճ^Rq#bVS!>RuQVmoH旤d5)U|S^wUgҵ #B$BL!!&+CTnz*"_apWft0)s(:/ xğh,hBTO\_mrŏg=o<6SE7pq<6.ig=ќ 3^mrW*oP?^Ǐ,ѠDRVV !g 0fyJ~Tf-սpt# ؂fGҴcw}ɢ&ӆqH!*(q@&͜jNxȰ=pnYDĒIl>֜*rL9펴Xj@ v G H O#ý=;92iǯyru}rjy}Ol?-yVT]$fٵ"}4qhbQUވ2: =8S!N\B M\8ˎ"s$?n6eAdylQ!`\LfY=GU%ڥF#W> iuSl)m?x4l0n|Cԃ2rNR>$_Zx%p4@ }V `a 0;?ywօ~GP?0 R,0 8m,_^EZZ>FIba|Յy4{Kh'(^z"͞O\Q{x318[Zv?|.k($9UY*o Ϣ;Ox&N'mlZ?m"|J>wX$)h=;Hp6U?ei%~݌crN./ޞU6:JF_>a n*_:Je˜\Y3P&,E4(֬*߰M-y- 2QnlEWbڨBYR:i͊Z H/rQDVe}ҷIWdHFi|l]fwmLʅ+rT@r"p[Kę?t"wE*tMj_FɹI~`d|M6nXA~ VYDJc(Fٴ΢Xt]!䓢A{n|;|ܤ(@KOs30 )9kRqPǣh}rمWYmIcY$qx&3w$QT\0ީ:N5̭ӓtTF=Æ?]cϟz86]ۣ#tIMNڼ/T)85oۿ< Ʉ7c8 fʽ lOt/Ěd^lw)OMUad=jM>{5sB2 8Ķ /wu,)y+S^GO##KEh-}jFwp;XdqwzG..Ʉ1UsB1b=hq%+bo eyn+z(]UԮэ&x@>jO639QAƛ/ormi1EZW|NiɡglM6]=,l?}2$%5 <'/ܒ\D8lrN)JUmS~zqCNX3S*\w<Mesl`7&/ !8I}[ hl!u݅(J @"I؋4_Wuy}MȲGp|k0z3ۻAZ,7]rg25;_ˣo_xUy{C9DV52;:wQLAwOP3wtnW/˿ ȸS RaCQC_+,I{bIHn[dހ~Fy]YBV3,-0}KuIWʡ8 ȃx"&ɥh|C$ujMO+Nn|U0o:}Q[˜MkRu& X*`c^4, U|Č5*ix$UhzkbW:t] 4PֿiY%+g'LqꭘDQ{Oja(sHFc$^3@!Q 0lSسp|)nK\9Q|G~Ը&l!~n!@6Ds 9 l)p] Vtі}'@p$(?~XPoA Nf+Ʊ鴣y!wmB(1fh!H '6=Rp<لA i1]Aȣ:+k 034܉y=lw'qg# +X8w-s-I<.0CKǣ4lZPCJk_4<21W*^5vVvd{QIM,R+{ejy;_Gk*#O9l^I!l#7:U;]{ZR1נR풤t ,k ugm+P PKH2_[`,%ךǻ![m@Tut:%mTIGyXn[3ݪ=.Ě2T#U*b ɑǗTbRdp$]-J{L ,Y}=9aB]><; H9+NY 3Q $IMi_ְfO5>U\ -ӌ2)EXM 5$ z =tXt<h"1;墭P뤿=ឝplPϹeRFG yOtK ha  /ځlsvoV|&a%?ߗ ΃GIH1&GсXBGn=8 cYto' Ҍ1"s8n2ʁJ\˲yL$PY`:*aJ:=p&L))stA1BP@RHM$\"%CڷUz׵S!?[:6;j( XIdij@:+|xNv&x<";@;v Jnf,׺YU֬?W_t%3D2_Q\,!-<20E7%tgx\op{M̦qC*lf0v6Ώ$+UK>C@1VG!Uvlk((wa+ubdz'lQHXHk(#Bk1*pL"*.SÚ\`eFoۃkU ztYxLO7t :L`j@zhQ1]ǘII//>zЈA{ T`B(+|7>=ywl#wo^>x.ߍ?wֹH^]_O0dhZ7?]~wvy[UYz#9jrjD c |7a|;:@00GN(@^B |-^,',)N R(F|~cai G@T9!rS,DOZ8@A1Sp16iI "_dZxrntCLG]A/ q(G?r6\|.VnGCW#mVna]0G-a@4_ZM4⃻RG=+ˢt8dA*a^T OȨ4ð ZN| 51?:@A-vjpo{wL##U}r#\ƾz6nw8~3n  )w NP(SW KX ,bV,] #Dn-z(d_X|uR&+0!K"y^Qڎk*0cZpYsh)QŦ"ZQ;27*"Ȕyo†wKmޭBkD/^D @pjoHL򨡷M.Ђ]D/6c5 E E=F8d3!8nC ^:KJ{-ZMAƦ7tPRI#Gvkec󑂚pM \78񈳔g\ Y=仦f[6G%+5v8XYH%AlVsyQ@aY-#kh-6oL= rBB8z2$djU5it ~U-B?jkil5 @0!si8zdjm[bo͠"buwǖs? !$E>z8 tOWS]ϧZvBfA!I=2a\|pE|X&ZH\"Fjw$yC  ;rtlР&!&iҲ6X>W}>J=;XZۅ_15E ŏ%&Nwe.!$qer#+mi^,:n/`,]R8qnuٰɦGx}@B*WF& :\pF3d〭Za>\W3 1"JdC7ǔ)@{@0zeK Y '.bE8̈́%7nj}t.jmpj*wεa"A ˩Ma{wW\??9==|!Ypժu8qϒa:7_tyN Pf,@2[2NJ2|qS 0M*UAMl5@I)Ms9]#ɕ0!ďGD;dwJkL9+WSJRd,Rn-Hq-̄: []Z ]?ʫdRjc㓃M,bء8֔n*fO>ڀ~v&/AҸZrF"q{Bh Cn.n}Eϵ SINGYu`;s>F4alea /ǁhyWO^͕N1I V}Xp?VMyX}ē !܎#CRG"FC @ҏy17 n:L`lS8Ɖ #.D0):d2v / U(NQ9㏪!Im=J9iYuԷԹw`;L1an<0i1۰7̠M~: %JH}cU|6%4ݸP5vafYfvM}+cVCycxlJ:xd{Y $k|{ЅxﺗwAw dL9ve<&wf>x u6ۗ5lѻdϤ%eMUyE@-|vjUrC;["r^]"ZYC{zBGjSI D.+m\D'A8@=ڟ]DU gj2zK#WqcվSE3;[^N+c۬הǡe9{2~ Auӵ6e55ul 'n~ cĺ9,랎nkF^ M4ƤorϾ\;K5S]c'N B]|5!оli俼hL񢘈zdłH*R7)Ι|/x͊yN /5vZp!'8m0 Pz("*Lt#Wyi Yovbyy֍v)P"LUHW7fIL ⦗ rez- s)y>'YʛRzYxJH%#'iblSͻXCIeGt[ ɶv<)*L^uu*!&m\qGN@o^Vy)M6Փ($@÷WI 7/VurWlI_$]fC,J4c$$N\*=߭o|`B1 kYFt| ߎ$98. gKe`.T#Ot0f%;֢^UFXQtLs F=n aFT&ԅ՞&'V,̗!i, 2UrzxېC{|HBS/ǐqL$tC{R׷wmQ!EjwKs%hu Zۋ ⻨왽N&cqY80:rYwo9:AXTJ~v@*")ӥ/_MgT5u!)ok7Ek`6v,e+-JvKjpgk Z9g^2:hb)v:#]Xwمruz9|@u#4}K$< q@tH00Ŋ6] Cj|g$ 7*28@d;j߷ZO|g}CItfN='A?3됐m\oۡq?$!yHГ WN]Bě=idUSa'*!77soq8imPݪ㵪f!o?N$wp@=n*P7Mth{)2da}cnIbȱǸA}\|*?1f횐o"HUUTm:ypKF.=fƼ;jBSj 6`LՓBp;uN#Zw13jn`׀7\ÞT`b Z%dn|k7zL. Ѯ6S)'q/쁰B E$elOl;C;;&(̼!;DH]&3|&5yEfr3XJi:52/YbDPO!V"bnK$UTvi٢e^H CXZ^up٠QY&wriH=ZyҠ?̸scEMQo,]10pu>ܻܤ.8X87=ZJ% V#ݫM+KݓRO^k7\2S&ó~l6\?->;ERfKkЂy#+'e6A}f@Usw?u cEqv(}Ddc-XdOU#m,g= *JL\ -BPeuB-H!OަxBF éR)Eq{s)s|cSQq0~T3!Q4t̘wkd:9~d>TujgS9ۆ73n8q?|^喞iXoIrJ1!nMazܦE桃yXfK^C{5 $QvނVGϟ[T>@,Z\/շgRBUӟgчg{ûӳś1~ CuEW>-W0h1q=hܤ0ϡ:DbJG︲?Xw`Q^OͳI L!hqjLX!9$sTXIk==VR-l:tbK(r\0Y3D14?˰VcT6Y<[}8ƒvC蔫@y 8JZq1ID-5Ku/S//ȝF ;rGY G:ڻ&Or3>(h+5SY%Pp_;Sk2ˌFeWbyq\C=E8X 2^z^-Lip>C/ HVt37&Ϊ*"k))χY JY&dq3M?dF;o]Ƥ9;Tz>Yi TNn%~' PM&obM~S띸j;x(|!iʿ{ vLQ}x효#mUY jeoٮx휚8Hnny4}lpD§NaI?ogj~ƂC9+ˌm A6jy#t|`rʷ+`T5j_]n`w, Zeaui^xX`2m;EVز7WQR%F;;9ȍ'522VSSg5` taHr ^P_S7.pq~L=IM%=d.uzNq+r~IZbqPKŒ#GA -keystonemiddleware/auth_token/_signing_dir.pyVMs6Wlt^2N+e,O\J)ȚL{w!Qvʃ ox *C0т!\T2?Nuhx[Go2 Up xX8$P%>gXyP23J%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^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Œ#G{ >-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Œ#G} !*keystonemiddleware/auth_token/_identity.pykoF~F P堃(Ҩg9INP&W]J7CVpwޯÍxIs $fIOFK%.W0 l8D l١wa!QIkpO5hMJā_, 5!Rbuw;LeeA"Ԓq;SI=,GXr}Pb C%6T&J>mkUhL^ԣf53X 6M %gbtjjī:7Wa=L{Ua8X |ea{qfjeB%Aos~C1_ ^Q۔B =8=O?)xn%}"'&%F7':1GGM]4Go2ԜR$snߗK ʬKbr.WjMW-ț7—<gqECҜa9 IDydgh0aaz߱J+8V) &IhlU-{6!AFYH"ja] bzHSl "f㡇]oeF-G+l\qC0H5ڬ>aV; > sbq2"|w Zo?74ӏ>ߒM T* [k~bVױ$C#E"E=yNe~ !<~Eftnr=߮l+x0zm>Z )2ӝk{Jt08cx` t7;h[l>5Q RwXf'#lGRlDl'D:A(*MA2dr 2UC a)׎N$ʞ=GБ<q?dGFڈrEUg^Y5L~bP{ 7jEUZT:)j½Yj۩-Q7bG?aR2*ʘSG +ex4o1kIV2]y&]Ι~B}=-}} =9~TPоɖNjr>\mvdɵjkEFɆzT:RM)*یg7ЇzGbX%[:qݫG}lXCf6SS# Bnim% X,To.tHot<(bˆ[#7 yT2vٗfpso<5؜ c{lbΈ>^ '22Rg'c($Ȝ팊:%K[K]ȸpIMmim !LsSB1ދl[06U.:` m01]e^–ZnLbad#!+d6IȐgsM Bԥ_rGK=.vJlXP FӝYu:KҠ]"1 cSǿ631f2]51}jf҂!Š%CheVv+Eμh4(P,my~%T7Ebln?6v7L>lkB-16LnNġm1B n*ZdVQ>6F γ-ѧu~X7+Z]oVꅻ!o_$8?LzT$UR "ܡL'/ !4AQiXj-}6mO#` oo՞Dm>;zA[ۉci5ñPXwB=\1mc?*\! 9Kݓ';fcPKŒ#G|"-keystonemiddleware/auth_token/_user_plugin.pyXmo6_qHP.>_NP UI #_EpD"D"AdkbǕDu`U.4yS#d"zFJEA6 ʖ&bDb s J2d#mjq0$C%3lT,?Čȓ)Zjc M: uc7r^EfPF?ښ*EcYM3I>&Iи~dZchl7"ـjf0dLrqC2U)T Aϧ8FtK-NJPcU6pW<8R8i'@ԛ>ŨFr\EaUz]P# ^YMqS* Ϳ/Ӱ}|TnQ;kao(Ijr]>玚>G9l9`WCO!$0{UXZ`tEQګ"<2uHZ0}[>Na~}f:>+ǀ!j mj _U Šا*2j(t 3رfZ-QBa>~Kjfy^Gbʙyr Ɔe8F Zy|W=x'Aִ p@~uŞ(ouMѐdn5k|) 3uܝ{eU4=Ҕ4;Plv3Knq|NKvP;m)SM)亻%x/+Ds!M}-evִ nY,=xS"KiW;hJvzQU]k0j{zb#jՈn^Eqs_;+X"`HYg!;* %&'l.wB>^pw:2p<;7)XJHg$jK+me.ֽ?鴴h~lnj WO;aA4bLڝ}Xbgҵz+c*RI:Mۜtygˢ4M=Sh}NdYI+Ḵ1⋐M xZMF(<}Y5±Ćz,2w q58ڴhY!R i'VBhJŚ/L/:pBg~9˲=;h"/u\rF( ˒2%.tUle;;I%n);9*7JܻM _=!}C5:㧖M#x*Žȶ?(9>!֒R_DPKŒ#Gi02'keystonemiddleware/auth_token/_cache.py[ms6_K#0wohQsZtdTh501s r 5n Mj{׋r>lx ˕Л%;A~4J@ZaNȺ PYB'lQn)zI+t|>>gl\2SL *y1(f(JCj$a1܀yU؄-1:9S J\@ոUZ 0ICy<շ "&fNd+rƎ'Ѭekq "oGP*oZYA%6MFFaε~M(E A+9YOYA,+񧋆x&ޫxҼ5R\kkI b'00$>;gX/Łe Kۛ8 8vꆍO@grfNYl-KAT8 <靟隦'R" "~!3o@aq R[ Z'y +4Z}8w ߄yWؑQa+H0f)^Z\ SE'˱Ďke h֮O*{uq$8q$,-DFΪ2#7jq |-A^P_đPc"-6|{ɐ;^^#&1!޾Չ2@`_VaBߛ =W o^O(5 'ݓL{eԂ K9Q"9!V=wltp:.1IH)X{'If |B9AL>9Gށ`] I8ciU&SOTS~WZO,[]MmiI :;hڡQݸ~aq^]d9i"mf g#JH3֫V(uW퉶-C|2tv]w~aS\K:O5z㯂>߬C*B`Z/'7`fၖCOLy2:'r\^t?8 AIֻWPq%NVA$ک K(UG ۂZ:)t 0PM@Ytc(!÷]cc`ؘ,T+OA|yO]/+e48% diN@ڃf~Xa/Y"ݞm1蘿 "-U)p;n{wOt[6g{t,wdZ/1Dj%$9T8!".ؿ`0vǙLt4>L,W@o.4y,0adOR(`-vrr^j'8*2fѳW?'k. Wݰuvg( D AnЛxԄ>HpY *nEk*st#V;j.P*Cu6$ UA?"KhqWj-$?c5/+@ * !лD:Lӂwv~qw ~F= )D{qv땨 x 3xk:|ΒZn?A?;B'#,}VV96Tm+ߛ- $@H){߸YEpފ OZ)F<Tͣ[; 5Ĝ˵-w_`kf0^?ܵ7Z$ќa͑#8|݁Mt) =*mxLfސ[T gIIIKIydѻhF돟>,GNGNkU}BY"S1Zky519 ת (`25?f քgdG44sQ buy}B2Zi7OW/%5^ɍΒb4fqShۥW69)%7Aw CBgE1zI>vMy}}0,GQGi| iwh]RAnkz|Ǘ_ZUUw^ 5͐8I-qVUnwvMV9%PKŒ#G'ޟ !&keystonemiddleware/auth_token/_auth.pyYmo8_A(l^%M׃Λ&[Y'H݅CKFe'o/%;[,΋mB;ܞ9wI̲Hg%:"4B:5c%B ) o%W f4o 9|OW i<' |˰T$G?( =j9(, ]2KFbd搔50 AҎQA H,Kj-X)tIchV"\rFoN(KTD4x>D#bdn@Q3 ^ssgsg*Gs՚]^BQKd;%tf c qzS\:apWgX_gAxlXk7V"SpR(hx"y [Vu mܽb Mֿxz;%<)ou+wvUe|+Fׅ}dU.!"՛wMZ",'Xi41 H1N>C0I3(Y*,f7A+Lotuހp$e{JA,y ;X.5.dA“9  ~Qό$&#R5oAL[@ , F2 _>iT@? 1:(d.4~WssfInP=Bҥ: ~)ڊ@_ĶK_; b b4 :~جuAGإ`GW(֍z{YCכ}V ,[#a }C푦+rd Ð@mh##OcBWc'zT; 5;__ga/{q V^g8[/:9%nvl7~Y;* , IJaf@|<kP0/nClDGpS64諸?6<.4[ybuQT' ٘Qn=UԢòJ锩SQv;: Vw+zhB-"0])$ݢAdE'_tCyZ% y5+ Tҵs@C{m7*  ?g1?V@=Uk`#c47$sȩ±&\% )*Gb umX%@6sMAұv|'8<{glZɓp nJUCwa{\6?X9(ZZV7-VaaG>dK:Tֹwf}ysC zs}Vh)\ 2nm+NT;_8:@sMv7,j[BHU9<~ͺ5^}:~jLGPKŒ#Gr!=`p#keystonemiddleware/echo/__main__.py-10{ŕ2/pbsdf*7b#8bǔE =ȴNm=;鑍Wԗ8 nPeJ PKŒ#G#keystonemiddleware/echo/__init__.pyPKŒ#G+a"keystonemiddleware/echo/service.pymTێ6}W $^yE\16( --ln %ߺՋΙù2GFhoƵ՝ wN o;Hء?E7p0 TxhR 頔 _r=H j%oB.IJ)t) __yG7Kz4T^ScCax~Cg9w#-!]@N.VԤ{0"yRL"e)Vձ9|@l <^L4]^q<[N0|v?]N3Ƴ/a:ST_jK$@j4mK\2'dz݈5j5J: ʢd% VE^/zltb1Z̽:0Xo[|aBLi2{~7q[, rimgM3Thh`lCi| E+:?xbJѱ.Z 27NXJpk:"+N!f>&t~J[&N۔sIf>$NF9I.+#!>I/!JOzeY6 9t_.?edq 9HTřh;tE+Ĭ\UCQ-^gݒ #|D*ؔeCUvEn o]4ԥ\7Ze E•&ޙ;(lY~=G %|!l%'z@P$^|]&|i=#Yt1às]E 90ǖ00 1 Q$2`JSϬɘ[p 6z60GNdjtz+V\}caaY>j8脘MK1lCxL b5pV*e Nihrb;zs).Gi._oMYac^@ppwL{c_kc`s(֨3}'O, ōR[<{M=a_C6F,b7n$ .XByirX_fpUMD/38~1_hPK#GlFa3keystonemiddleware-2.2.0.dist-info/entry_points.txt/KKL/()N,.KLII-O,JK,-Ɉ/NSU"hY\PPK#G0keystonemiddleware-2.2.0.dist-info/metadata.jsonTo0W|R5mF5&QiNi*7&flgksg;w~ai570Dqg=h#xcS*W$!Z(] w8i]> [< 2:ހu_H (+cjSiɍ \`|!V&pKر 3ȢQ )b,_-$T)*eױ7)H0Wq4k0<- u(B~XBȼ- FB6KBM5*]r7Uʳo{܈Z5RsZ]p4KsQ#*jC= IW@i%ϻ,I:D-i⫠iMh?a!AmhۛUm|Qԅ"[?iE;~JþZFvF5:U4 JB3/ҜLg&}c\PK#G5R{/.+keystonemiddleware-2.2.0.dist-info/pbr.jsonVJ,/K-*SRP247H6MRQP,/JIM,NJPK#G1i0keystonemiddleware-2.2.0.dist-info/top_level.txtN,.KLII-O,JPK#G3o_n(keystonemiddleware-2.2.0.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0323 /, (-JLR()*M ILR(4KM̫#DPK#G +keystonemiddleware-2.2.0.dist-info/METADATAU[S1~ϯ8xQ0"2o%lKnM(=&XIs?;WR>kCx‰uZa*HdK(i$9]xMI7atՌǤw\j U4ʸc܍ ڦ7ULLBto}US".&f-ёL>owmI#U­CdKUJ.ClwT@\HTzhSyQnHDǓ4TNJlBO ,3zLZx4B+2?HTuH%U 1:6$_:(~0 N6 ft8!|)?nݠ|RNqNvn.덤'1\* *T i~2\ŀ+ȒOeY|Uh^Ъ/\f2SO0PK#G:1`)keystonemiddleware-2.2.0.dist-info/RECORDIoM Go(=H_DZiܘs #Oj*r0w}]2Ka ` d]gե 6˳6 u#QR)(IqFhqG,j$nǷGN! A'AF`ɦ2*ȝ992]tX7( SE?UASgU}k8 o6hr) \.;@ !T 0 ӭomO\`~2.Y->eP>DNxЏ ,U$ԭ|U`k.%UX}:2‘}еOm 9xMd]uLNg|>.cm̡ ~DE>,k<: v]IcS.w"WAUY*A61Pz0)q`06wq9aITOce*Ĝ9,.{YclT-aoe? :V#=7FA5a{6E'|!ߐ/!'ћAb%5`3DɉPsr%L/Ru T R UfIzj,?U@G'6pD 売G &xmEhp3 q/_ Gl}зCH!Kw[e.|^w&NjK6V%9%^p0c }V<6y3u涬d:9IxT!A/sY?.uUl<< L U]S4Z[vlD߫n==?Vo3EYƮ+Q}5o˽{5e$d\W]b{p?Ga"h1 KIaFpoD^-AO=d( ٺGAVP[B8C;oq]VYI>QnźKtZRE.SJ\?V,Dꗚ6a嚈XVgߤr }uhOۇqzO6 GG Zu'9Ko%Ԃ&[/FmPʘi-̥v$;cD]IXEKG`o791܂G_;4p]( }3%ڮ//)4tM1n덕F7N^/#Lի7i #_7n@a|벬9ƨ7@t\l'Ŧ 5h3^#SuUC{u4Qao蔳mq ,VeϸzВgBgқBi)*Q=i]tHiiirJZ؄_޵vP^o8NZ,uVJQJ p26_e؋KnGW4[aw9Bk5K?֗Mn | 8SVC8B^50Šy1\XWb1MQIzly X;_~7;k0-⓵|Han,cvJvZ%6ՙhy}@WV @EG9sU.jd`.|;2G%©_<>cd#~~b͡xUC^s39[C 9."*jhCװ)'8a !쨓/M&, x6WP=s <u)[˲zLgĘ- hfB,?țpg`\MʜV pb-^mXY Xѝj [-keystonemiddleware/i18n.pyPKŒ#GNKz! keystonemiddleware/ec2_token.pyPKŒ#G2W.@ keystonemiddleware/audit.pyPKŒ#GՇvkeystonemiddleware/opts.pyPKŒ#G/[<)keystonemiddleware/s3_token.pyPKŒ#G$;.keystonemiddleware/tests/__init__.pyPKŒ#G).keystonemiddleware/tests/unit/__init__.pyPKŒ#Gab +j6.keystonemiddleware/tests/unit/test_audit_middleware.pyPKŒ#G֕Bk *~<keystonemiddleware/tests/unit/test_opts.pyPKŒ#G)^&Akeystonemiddleware/tests/unit/utils.pyPKŒ#G7ٖ W0Hkeystonemiddleware/tests/unit/client_fixtures.pyPKŒ#G^ ,9Ukeystonemiddleware/tests/unit/test_s3_token_middleware.pyPKŒ#G\r0_keystonemiddleware/tests/unit/auth_token/base.pyPKŒ#GTk{d5ckeystonemiddleware/tests/unit/auth_token/test_auth.pyPKŒ#Gg8<hkeystonemiddleware/tests/unit/auth_token/test_signing_dir.pyPKŒ#Gңs@mkeystonemiddleware/tests/unit/auth_token/test_base_middleware.pyPKŒ#G4skeystonemiddleware/tests/unit/auth_token/__init__.pyPKŒ#Gg-m@'tkeystonemiddleware/tests/unit/auth_token/test_connection_pool.pyPKŒ#G#3w?zkeystonemiddleware/tests/unit/auth_token/test_memcache_crypt.pyPKŒ#GC Fkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.pyPKŒ#G1)$8.keystonemiddleware/tests/unit/auth_token/test_request.pyPKŒ#G]<Hkeystonemiddleware/tests/unit/auth_token/test_revocations.pyPKŒ#GWAEkeystonemiddleware/tests/unit/auth_token/test_user_auth_plugin.pyPKŒ#G(Bkeystonemiddleware/openstack/__init__.pyPKŒ#G/keystonemiddleware/openstack/common/__init__.pyPKŒ#G% 2keystonemiddleware/openstack/common/memorycache.pyPKŒ#G+k H0keystonemiddleware/auth_token/_memcache_crypt.pyPKŒ#Gs }I&keystonemiddleware/auth_token/_base.pyPKŒ#GVlU v)keystonemiddleware/auth_token/_request.pyPKŒ#G:F.)keystonemiddleware/auth_token/__init__.pyPKŒ#GA -keystonemiddleware/auth_token/_signing_dir.pyPKŒ#GFN,$keystonemiddleware/auth_token/_exceptions.pyPKŒ#GsIi [/&keystonemiddleware/auth_token/_memcache_pool.pyPKŒ#G{ >-O0keystonemiddleware/auth_token/_revocations.pyPKŒ#G} !*5keystonemiddleware/auth_token/_identity.pyPKŒ#G|"-j?keystonemiddleware/auth_token/_user_plugin.pyPKŒ#Gi02';Fkeystonemiddleware/auth_token/_cache.pyPKŒ#G'ޟ !&Tkeystonemiddleware/auth_token/_auth.pyPKŒ#Gr!=`p#_keystonemiddleware/echo/__main__.pyPKŒ#G#4`keystonemiddleware/echo/__init__.pyPKŒ#G+a"w`keystonemiddleware/echo/service.pyPK#G52Pdkeystonemiddleware-2.2.0.dist-info/DESCRIPTION.rstPK#GlFa3Afkeystonemiddleware-2.2.0.dist-info/entry_points.txtPK#G0fkeystonemiddleware-2.2.0.dist-info/metadata.jsonPK#G5R{/.+:jkeystonemiddleware-2.2.0.dist-info/pbr.jsonPK#G1i0jkeystonemiddleware-2.2.0.dist-info/top_level.txtPK#G3o_n(kkeystonemiddleware-2.2.0.dist-info/WHEELPK#G +kkeystonemiddleware-2.2.0.dist-info/METADATAPK#G:1`)#okeystonemiddleware-2.2.0.dist-info/RECORDPK22w