PK@QH/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@QHzkeystonemiddleware/opts.pyUMoFW CHT '=1@5.wfIr붨.o{ ,"xشR'ѝ*ZEp@ez!iEA_~Cc)o!x4~'BRAg {M[K ^O3uwB*B<\>mMuYvu\S5Z !bO4kу6 *t4tRUszaPJiνpkG/`JgK9|Ye7$mV6[ڬWjH_j}=$( ~o '}2i| @ȶXȃ,H:Q!T"9ТijZWB-|7XB8\uDsTn}3 n8_ 8 9%qyY53KWC&\O z煆J,ٿm,ӂ.hq~"׷3r{1]HKsI,FCi.uoDlGgr q+=^(auݿ\ULjV"bsrbk&2U(mB/'$dXLt$eMWG"m 6R߿#cm(E?b|v ϧ,(s f=kE%|_-E)9QA'Gl*æ}+X{4f6i4>O<]L^^>_^6;xc@Pd ?ؘsҀb.b+[g 2lX Eiᒊ$ v6ZvڰKB7gƭ\i[Q-#LŬּ+&U*bA<_xkR1$U zSU -Ux(_L„N-(-3Ir:P02HKXߐ){/F^1N&RYc=!{mH C`:>~25x]`+D)B$6olJTHM4&}j>_ m=@CQc3"f>^]N.O/O/F <[3"qFHc09래!ux \l(m0 &7 M!QpNQtQ$E8[7C"tb0h,yS,GM΃BJ.^NGS,RO /K_<#i}{}T웗D|N0˾/+M{zPZoH㨶_4}Tͽndyz]dC1"f"Y%={@ \JJ_UL_ ~"4 p:wC:6=b,8*I()K0E.AX<*4. #$ +ك޳qV`{1XmO݈VAVMO.3A\޶j  j/|mȌ<`MQY"IU6E4xJNS "+Ma}/^nZ۠-Eq YJJ\ *x@9j#Ѓ9 aF;9O,8jtX )4 plـ1`V +i4MPHY9TxB@n}{ib1941ȩG=Nt~*[k"vŎ,,>@{чJrlԡۯ^PZuWONdh+g27\-^hHg<Ѐ{2z([~p% .U&u[KzJ,"MafBU$jj,Sl锚8LJD,`J+8C4kɇݙTM : yԒ/sѹ3Hn\tQdc}3vN6CPX׺$}>Dܻ2AvLcND;>[/ȣHF:qHpܯ=<:472ƳU(gX^YL͌qr$Q3̿-rH6I->DH15ʘKsAEC7DU38s) #q}PtULpg٥W,+}iMGG ]myci<4C =wfq.j5ӕv:r2:͑+Vێ*1FSsmTg &*MRH{xRYIDv1!BV_⽇f:Jӭ_tU 쭿 dDM^\si%i6h- R[כy8!h4.~2c > <2a|2 | IMcmh Hm55/]ETq IyZ*$I[}۷ˑJ~8ԁap^ ?'V\%?QʷYv^3`[r HVO,/L7{sSr_(1N޼폽aH|D˞vޟ{`Bm :~uB Tt[sFN:̢v]כ A#"\Uwwa3HwVu@Eј?xXRwQ ?6p_HZt UtPK@QHkeystonemiddleware/__init__.pyPK@QH׎?keystonemiddleware/audit.py;koȵ+ vLv \WEUYI8a1"GÊZ̃!Gmq$&9335//XZi R12iȈ|dEɳ&>Nx^ 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?}%v%RelI/1ܘ Cz7KEF7,@J{0^7 k8:uXz;t.UW&!pE׷f^pcj5c0we3͍@K?Mzz*+clSW*<%O_Z%Yɕ9+H&6/ mONGvNolҾ\bNKvL< ئ') ^' C36ln+p˛6LX o/'YwѤ2SG DU,v[j|v"`q\:z6Q_WC=yzOܮ=x&;|B]l L> M:Lw_wxXhfj0 yto`gD>eSR';A`ҝgY/tYS4DajEz5p0S}6%ye'Kz6apˊ&g֖AXlSt {P Lf&i,D0LE6)́x+LOan'((OY[a]pv^[a Y sL(2Ox٨ ѐ zvͰ)E%sRNU#nXUp~4ͷcqSWbC<ҋ rbɗ$pH* M9Kxwujvq>zr|}ygGGN>xl(!)AԛsE \ IOSyʮ0CpX/}[$8nfCJSQa'V),Ėp?jdꝽ-_/mm |~QE uS{aN Ru:&FAU%R!Pim %:Z iI۲Dڝt5T5i3=\"V`iӣqS4̈ʠ ;_2Q,*cu,|. "0$X<-&ϐ2~J@!t _+Xp˻n:l]"crդlX˘8u ׎ZVIe62hNgU9 d~u{3@~%`Sυ]^£)l1$cX^$QY_yTK`iGS,1|zy7na"x,^Ynb|T?l%;m&CۣK]M.mLjN54gޝ5Sο5N:pAOq|5'+.%E@uGvi8շ Q~6ȗ V;,RwmF) %w Q6jSA yS~%U/e[o`n Y }h}\%OͪgBPK@QH/[<)keystonemiddleware/s3_token.pyZms۸_M+SvNo(K.js4͸,A2#H>)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@QH$keystonemiddleware/tests/__init__.pyPK@QH * 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׳-W} Iny<Pj 7*y@`s[qc9$ӵ$!x،`H''tv!OKXxAjg(^? &v*mZ8p`,4oO\ʲ|0FӴ42~~.˸tG`>9щ{+yg]b).6H-By /Dwn _Ӏp1-ף!N ;[/I@N[č|≥:q+x-X!>|J`@C QBW/7< bx~,1cu4B Brpml ƹ`ARriVA: {]a`>@F]/fp}JYPͦyt}0.$Y #y44aJS(XdYQ+ 2 mEҀt?[ӝ` Aފ8A`ֽ1IͅTL{b3s`gfe5ytl9 [],uZD6 S1fۥsfT6L;gn+Mӊv tN)Rl4Ҽ 9,# m4`2X%!|g{@PHρHDGH}ӌ&#K?AΡK[`i5ji#ez>^(rd<N [GlR^%Yc*QqvK[0~[H(ӭ[?9{ h\eQx!a?p $pwVp<>Oo GtXD$ 'Tê񯒺(qtq@a 9H6޳[XxMX?mW ͸%U1hla9oD%9:r%Og fk{ ]ҭ}I{B~Dq0y^;kR&  "f 0tXBJ93!p2*pppl3o#y b `5\BσZ vs#1\Q{5{&Cľ$JR;mF_?0ҭ|>ng{j8I=iD-XVOhjS ./Rzo{BKkSIOt( #6E ]Qlv$4~ .9>ƿm$I!@DCK>{0(%nWu!]7 NmjFv: jKHK"]оI`N;nGTb~[lT`vD5E Dة)$hi GpO1Ƣ(d4jowV/D -ݖk&uD Fi(wnzD4]*IV[zɴ BN 6JBO:n%-Ȃ,NlNUSp*l}ZvlHc~A1fP%˫7pm[MY|t}`63kv k97{~i{S~Gzµ[µ ًy]bY1t} GiK0n:3pw{c9>o&!3˱@T J仰2JP LIn}g^/L=t0em!%9ϳtg(|h'6Dɢ 2H~S:Xa|/~m1VS(JPi`Gf,*b*/~Av{W%+EŖVl ˊ-׬p-'Tl vŖ+\bKu+\bKI[_;*b&kٽ\k_rm%׾b;3-mzOq3"d8)$?h*vM-yz2ux>SdVD-O1sb44*.YĉC!?/GB$2_ I8<ތ>+quFcI^,lI![Da!GZq1dY b `H)'$N='SyL!MM(Gp5<^! = |Fx;}3<,J4D8iĥuv~-v{[mJ]+ԗ8)4_7[7k6_ɃZB.2v;iڌBK{FIN+C"X9dʾP[QYKS 9_*"18~VHW$8 LM,Gf˘9\T+gl3xg;b`m^ǺβJm-ZNT5:YT0RbK۴rM,irEڀ_Cq*BXo8C(+S'3W/^&c?aΓcU3VZc'gxIdd$_/ިslm=G%+e9,==b꣙rjp[{Jղ 3m&Km)Ŷ 5~ 6lRaf&`[~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=)9wK%P}<1D,cmYCS$T4lz2iJ L2{&u|@c 1 :a4LxB`4skFNv]FZz;OԺMFi4SIɷÙ&g^ySytnӥ~a^[IՂOJx;* GF6wvIAmǾ |p6\oZ+gcj!]yJS(H䍯t@PlGsEU}bEuLhR*\̓I"P8gXš5U5Z-?INsusu¸3eH)Vӌ|* G.uD 2q8h+ [6fp.v`sۓFSy:F%t@wmchːehd $B3}9jIw:ɂ/樒ze'?35YZ֩èPwlc@pt8V(JD:1YL;n ;pR[ hhE~> _aj7N{{-ii/}8&`U$3'_rm꼱B.qz 69Wۥjr18o,?hl`s ,$|Zo!$Q5Fml δcA,@4 {. ?_H(=ʉ>]]:eDz>$ߍaoxsԧ YSQhnCc3V\,&,: ~LS1olj*t!CS_t)`j[p,?r9@S`XԷ \N B2a*կ&r֙pSZO?225jL7JU<4;^.r3s~r|CNy;Ȉ,T%G3#Z-GrH*Qzz 0:[, 3NSfJ ==g=:m0!Cֽ%BH+9z]bC 0K +-}9z5 i 0XYKKW.5uTZ5 ۪Ę*,lii˜Y-$C&rȓb`-zц.,}a٫$c=xZaIȝCȯ3Z-A`[` nd6Θ\@5}QW˨PqDf|h{WR} izI⛭gŞz\0GLaTgQ>52*xO4~|VL1{GW{7syjȹ+&6;~*5A_:IZEQ&zтG%sN+&|{o ů-zwuQ,h4 +I]+gՔpedg'˂H}p΢oqQ(7TF{`TK ] MBi MwA`rYvT7?'wMɥiN BcP̦60i2/Pfw Q-B&"1vHXRKnffSm[Zߺ%eQW Z*v7i\gT:1Gukw[ l92$p*YCqnٷ J, U*P*9hYvs..+{U?&p*Ю]VJ+\.A-KhGGQ?ԏ2Ro*>υk 0rs2Q&ZqEY>ߩ9`xp Q=Qf>9Z a٦\,1N`1Ul+:8Eb6us5X;%* `@\9QCΑ~؉g ݦ p^NG`YBX2HSH5iUJJN@j2Za^Qwg:,iד5C86W _dRRgKJ&Kcjӧ%e>vx{° (nГbqT\ܭ)oSG ʏJU滲w931,Fisq϶֑,8BLg$,M{*٫y'g7brsv?[ɗg˖irͬsSMsD%9(WٌxY`]:ؒo-z*=ǻPK@QH^ ,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@QHRw &keystonemiddleware/tests/unit/utils.pyXmo6_qKPX<:f`ntFS{EtvPJRqa}GQR$i DsCL4F%*0ÔUT΂>x: fαHF5@S t9/`6t4YNfSz#LG=@rVܺh_(WN-b<$M6y*! EsmCIaƾ;a{+!7Q. |&ٓtŶ&# XwB&a6޺Z( lb2u:P0bZ}{ÇkhSOX3rW[&kÝ62G@֗;:2 u֩.;\PkI#!Z/PFTEHӈUR2A `Qt!%YUjQєo~* /p2]MF0iwoc:|?[l$c 5?^y~pD[4r F:x֕[ίHT]/saQZ~B׺A3_YszS?v`MlJ{~R+S7dwxSyQ Zo-yRf\M  1E,9+m2eJZ 25daAT,9RuO?? wփtj%*3ɘȵAtJD`J)W#X+S~\DOuV/L}+\iLmc,gSeYg}OgbKyu< Ҏ )ƑlW+ ]J%]?vQK, Rlĵ~r6,gR*?ԍ4Eg,vf'|-'M^Rnב麗usG]>`Q`VH݁VDhԹ5K&BR54kazk>}KeLQ̶DD;hQm0wE<"aT,IwA:=V^54%YFپ.~iَo5ESx=D-!ߘ$ Dt䗰oTy~\CAkTeNF~ 4N+pj{V]?dKSLx@MJAIWցn4~,RgB-AEp7`mIRŨݢSWa֒ p&/uxuPK@QH4n*keystonemiddleware/tests/unit/test_opts.pyXQo6~8$Oi=eȃbwE1 -dHY-PlD5ܫby#xT[*e,W2\( &@è&^2Pû p]~*!g;$ R.%aʛ+ K2.I#|A1n!lCQ!a69@c@גkZr B1[M4L#ɬr[.1-HZnҞxG>+y2yiA>O'aOp4{?]Lf&/t~ H"3RhǟHrGLB4"c%eڠ(Pܸh9> i,* Ƞ &jEcR^3KQfP׸3VIyt YiWUkHhjE|虰SKĂ#h0`Ea9 \%UFLD1!iH BT §Qa5 Fd+$jblU6n|~defWhp iU.‘#-_K&aZO+Gfav<̩n4E <%$9zC=\F'/q`<heUDԼ=]T-KP] m>kQ$gDgqeg^蝪}DTu,*Q*Jm@jqg8eWpF5f^*U\θ+zQ;1T|Tc|t6*y~.c?PgKH gD9 .ظfPRwA:!K|qI;*%YOe)֥q<>Ec%GZ26 %<W[r`CLD3v+fވJ] (tѼ8צX&⠨5ŽB uvn!:5Mb*qOzhhosVF23LyJMN}}]i^~תZ_+B.B}LEmNzG9ĥmǜWÇ: +tPªZN{+.73/KщKGyzW񿻃Żm{2~4<ʋ ajhPK@QH)keystonemiddleware/tests/unit/__init__.pyPK@QHCB2keystonemiddleware/tests/unit/test_entry_points.pymTMo1PUPu@EQ2`koTw|y3xpR43Lh0(eʟm ye \ h@cjtVPuc *\ByȕFKe E4)JѲn-"qS윤2\I2}~IQKV+!kºEOo@wG3FO˜A%sf p1)RfosZI\%SWtdԎ=U@c0xڀ4v!ϸn0ţ)L`8_dzx2wg<MJ3I,LɁ֎@n7|Uʺ̢ }EgX EzV"Iaϕ>Q #Y!wBOd6\{ e"xQE(Ւ8~+5ڮ 442ַV,ӏ"a^I0rsFv$L2=|=$2E!-/hN#^/ΟxwK.nχ:ѡExS-A)ZzG?0Mu&?=w "I U_ކd޴iBNMdZ):7ad|[Rkx'PfyFߧ)<}hڧBCkŸnDPK@QHgǢ .keystonemiddleware/tests/unit/test_fixtures.pyVoH~%lSTU9&]jWsmu: x]DUl q[0|͏8k4@!`ÜW[|J pT?A1He0H@*21 $jga- S0uk }1kim~qz^2iNx6:!ŕύ!4z<'A1%_fU)xrQ]sĒc-lZ9q}N<`2*1ݽ |@\I( .e5RdrE*bK. @X;ԒҁJ%ܖ$)8Pi h Z@LEX5>$DdXVAT=0fX ),]FV}C Ch89g*6$4@}'`o߻p*S0hor`ӆeF@PՊ?ǖxґч$_\C8AZee48.hZW۔s]EPȦ[[X4'Ikh6M :-/]uv#ѻ,}iێΰ7;αˤ t똹=kF->$ByG#i~>}nfi^ .`:è~Zq:kt9o+Pߣ]罦ь*!n?z;zysbe,7$TGQޜ2T6Jw*S5𫈬|ےXFZIITso.v :@ y پ?YL[;L//& k6jzp`O5+3~eTPK@QH]D:keystonemiddleware/tests/unit/test_ec2_token_middleware.pyXms8ίə̀1$izGh4 8t:aˠX$p[/i{MlzZ=GhȢ-˕D]Eӈskš%eaQ. J8+v+i_ `ʠ-o)dłȧA%D4D.[GšKІʕ^&1ћB#xvKVRFf1d|KѾG9Wa@@|).Gf7qd &̗ xTHN,E+s6]4xs4/xD׃l0ǣ9p:9 z95X26p8Ds"Mv'|8$"Rp%AKvCxAk*i pC]S ΦZ d\5sk>gkDA8]OE{X@dT,آ ^,$kyQu$&}TfRI<>2||MZE=b:=sf%| `nS4k.Cr`أ 4@ઍ^]oJo??gDDp+Oœ`.Xm1zMyGC!$(pp\ePRV>T_D/<TbTNdxic(*^J+8Q&Nc(Lm8 @)A7:\:< jY4<臥q (A>Ec"Gî~N iq_mr6b:aΧs;c YQdLK87m,Ja(-LϮܯ?5Qy} *JĠ[Ԕ;4ɇe.T3Ckd` ;Y03] 5 &2[YvEK ]#e\RUQ\8,𜛤)oNtI>$J ( 0\}0_Ɯ.C:weow]^+Ljeq:0XWUtq-*%ބg7Z;Nb }!|oG Io9d'=I#A_/*JȜ:{DD$Ȕ 5Lyr*&,5dB<5AMIc>՝=84ϭr֋l?L)pt46<"dJɾ%\7+BcPhBo@͐.I$ Ig:Bk.f=^R@J&o6 xDh0/1r|qq<NG; ƃ!|{O_G aDAI~dGF =j LT! %f 12L 0Lιh*P/ !sM5~IkFy\IlƒNg*9g+#ho%?"h*Ԅy !{&r*^3X '4<wtYȄG.Q:OQ&# <%#[@!~ŀ􉃹 r<`xGq:Ǘ@~HZ$ܷbS̸qnts&{`l !|KO^l{Rbի{9Spg*Cy3}#-64CnqM`GtI6`4葙oO痟Bql_5%px0{EIM@0)b%J]c>T}L5\eSadevy3G,Wo*n+|owDs`E>xl ۋ[$SGeB3鷄i ȬD4VRRzAwU.ٻWQL- D*&QPes#[JɍCh[t+/f^`(dsR{I#dKw-2pVtn遝O&Q!2#tM`M+5J 3qpC;7Q|,4 y/Z0H@Xp+hFuVlY~YL\aˁlÐnK"" Z.^VuS-U~%,idݚgC2s{g1]k2J?fA:4a`y1b2^%ݵ{zƂSpnxQ``6Y*) <\LhWN`{&8Bqr@?y \&iXP&WXgqCX 6pp&2;/}$9 m#!{S\> ~q-{hìBoP8OrOrE$W&-$,"gmXY. Ȯ|#`%-Jg"@eҶai.]1PrW6ĶLnL+u}*$t#!UvjK*'cofuvnވjk|**ҟZȳ`3g;c m%rob6ZPK@QH@#ir@keystonemiddleware/tests/unit/auth_token/test_base_middleware.pyYYoF~Xy$C]ʁ\0 bEH.]Z \Ғ|nӃ.wٹI܅PGЃ^\/OK.Bv ^[/?HHV "L.D"|BȂY*&kAX1"C0efz͔eT=?{ǃ.j| }p:^B.>[6 /bx8)&jb@Kqj*Ch/!__zC>G~!Yo09<GNHo:V(QG%#x A[ZU(0B2O +C< ޔG|pŔ^#ҭCQB"Vc X' ,ka%%jTI\/[R)!|Yʳ,Z͡Ej[ .OVS&q\cK'LC+2AW۷b@#L)^ P#ĐCfDggK =TEIWw:c7 2_?b>F͛V]C)]F DWYZF]VC1VkuHj&֯ǣV`r!/*فxm˄nrR/+wv^ec8ξ᪻>W(o~̬&2`'PK@QH$?pDzFkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.pyksF(]\)PY9{6>U$:Ɩ^)D$d%~{. ..vy$\fs2^W"YGk֞9oaȁO.g?>HRht6X_o_6^83 Eq,@3| #gЏsf4 q~c x!`~vse󗛛777dsZoǽsE M$c&0?4'?I.$hvxIPFa%`i@/?r{Qoiwk;OqsNNã1?@+&8O@2D: AAg3y0 M$p&uD0g$0Enș0#aHRaR50N2$&Y Ɠ Ʃ-\dTY0XȿpE8cÏ&6NsܦY"vx&Yls^IE74G8 _H?e0R[9 96xx`4q4'x|IO?i!?R!(L0dA*q&0^Z~ "aS@,D @3 k:fh4 p 0/e'o":y? iohV*fp:b)jhCf,NnJ"" 3蕓{Jzru}=w;aٛ=~v{@eu=5~wtg=&`䶵1A聍 apmouY`UVؕ6YA MVF"H50 ^HEI+tt'胭nr{gڟaMThF#a T~ (O~dÎ[h--fE0\L#e F V,y|kϗ?O>m@<7Gw sC4do߀ݺLȆm+^`{zzr*?qkosŋ ^?01l-_#mxIɒۗ2qI`KVZwY:u$Ns?MX`nc_au0oZ t%:aL ﺧpvW'o@uO#fKXGhY]#]ѢF|:Ϝ4]m=(ؑM9ڗ~gYB(a.(ktvTFe;hё7E'@_ӑG_:L3 x6'bzhciP+%D~qH~ZnƇqPpD*A:*|68 l;D}Xht͸ׄB2p#O ;O6 ai}"XH2 ]`,@ԋ%L-LCtaʁCV/!!!,_s?I/Lc!{d[1K*~m^jJ |C=!-mrA&:\^W|ފh~r\JNa||Q&L ڲWM#GCh]OG? \˷9 `iT.ՖŸP!.e 2 Y;Z AN-3竉8I!o^ܤp|PhOBI2s]kT*E$,ZI 8R\sh9ߞ]f[Ko(3Yt֧GAK C%>EװPG. Kw3酳ֿGGJ@1J ,[ .R0+A "e0BHn6^#Ь`_lXvn;;rQ{J˨ =L. Uo~Lp,:q ' (ve@g8eBs7K-ߠ⛕V"Tj~|RVn׻b C[yΧ,Bf R dOf|Z&ؔ8|LS، ?b7}Ѳ݈S-LVǰ=`o4{ڋ ~䇟X%SAk" |c*Üu4,e_`nRrU_e5hx@& [.7WRخ]wo= Et7.:}C/<mL&tv6v?O,#_#Oo!ҹѫI~;dqʥar KZ~Sg^ Vʓ+r ]1x-ZD3lj;1V5:g&GErSa|$sP‘>zst BNDε.r$@cTsvnԱuTc-a˘LJAݏ_?1m:̃x}+.4n7ucJN9قQfѶs4v7 YZ/PR2ݨ_[+Oe`g\ǹj w?)1i- S% 0CPkG!4&z@ʞs` `\b=}^c)PFS9=Xd #2TN TT0;|Ui18nγx_!VZ͛?⥗GBP%%V2Ql0 t$~M6YtuEb20Ãhȸ(5}o#ݾ*tn̦cȿZ%8n.fLAح$EFH Ġӕ´8o[AQdaJ.Ne̶. ֹұN{Ո?}0?p?ҿ QɳT̀)x.g d7Y.yNq_N\hJ0fzu{v633}Y_SٴMйT[k*unIn]z1=8v=!UMnwI|Z̫T8>4&iL`&hM7vRjqLph-=Va7RgL30AG +{_/(?iqiPf_TPRJ=/”< UqH; N/4{,1Bp|"}<ʳ$כ.w:-EkHy˴Nz^ GtԴ)W奔Xi&fN]r<Ԍ⎲QwZakk+/xdVzw ]uyMZ}XLnCǹYg1 fUZ0x-M\KufJ-h4(kd=z?`9ĭ?Xm#-9YcKmeꬱ fw'5xoKMk}.?Lcޕ0"^/NkAe>\|4y z!+b3(lSIRd_|I/{T<̟OO)(8&b{7q2r5Y n6p"Wԗ?8ZXGw=*SPsyŎU0^zexUYCX2/ |X.(Q: ot mf0{O/@oN?ZS ?׃ΘDcEϳF$M|[,iIE$4Hh>~%,]Q=,}SZTϥLӊ'df;oƤ㨡-8Zޏtcڱ(!|dbmzcJ4v0ɹ$g=ejKByA@ L.]lVHbXA G 9xW?Ψq.a-2\ٸ%^z5BwP+VQ%ϓ̠qti3_kx - XVǫ(+Ip;c?*5 9?lT~.:]e/옠Ejm3Mp|V=(:q1ə+mDH|sU2K- ܋T)ÃKmecTxQ؟{0a_oXL]|c.@_0. lXfQ, <}UQG}y0RwfFipbI:2&x,qaΤFDo s 47 T)po:s!"+K ktݖl|J ؛t90{Z`L^$N@Rf]v臂Zm'Wfx-I`P㰴*_VT԰*7pQ=|H6dnעV⿏@ >E*/: LƿrES/,e_u2FL[H#/ (芖VHɘ"LKB_4YLx8?g,<D߯y*0CP*,^+_b +)X э)A*TGKup±0U@;2ڊ] z* D H\\8.(B@+ E}˅@B-LYvSǝk=u$5#N@3|0YVQ Nr;eҰi}q cKnq3iւY\%[謆O`h̲(RN  (5q/U]mS6YrƖ[+IE+⠄0*Fb4r e1䑵Bs6і'|͙ʰ.ʱSQD%zbW_0.b &D>m ]N(COͪn.!Eog0b_96Q^aTJL iEF9}۳"o n:Ųc '/2=Вy5`xKQ;* 挟7G} ^M`f\"]I~H0Pgl$2솽dX~M@7)T4X]6h|`b$HD; - oӟc umk8zQ||SuWmr)9f/_Ma{ W`At>|f*d+^T1EJuݛU/=:fQ~>ݻQ*WCh{#zS .jj,B;S}\HGײݵ"IY69UVHk]f6gȥ^Т9=A[~{tYN Ǘq%T)D%>UPU*VuMfTQD[$i3:TQƼ gV:\sk0/DyU-N1+ S>K9c jߡ冎) ()zT%qK5@//2te3=OUTEJ!Yh9bq ס6Eb]svh_/$gU`v;"_^pb,ɕCշ?8yICV-?u? q$ mu80gG Ww䔹W*f*GfY$z </or/hw s ӏ'-tV: KCw^<.eIe)?zR"fw~Vi}aR ],6x$ SoFF.ěf@|DQmqy֬OhvD>>F7K?2z*o2њMF }M_+'==҈zOӓXuZi7,{e_$Bt zF>E*4 itG(ѻ4b9k (S3Yo8-ޢ5,YI)Ds?*MsRH]Ȣ)iZ4WD{E}0F4Ea<~xTpzکtM kʟxaspA9s㳒n$0MF@j9RM/|QO&e)^d_>M-N ('@BzeV ':7 iDІ&qP~y-RՀKм@hF,0(=UX4aV.F_Z^?jFaqQ\c_ (ќۋ9-dz2suJ=׫E~c}ˣ7|jQ* [L knRqċT, 4 637u`h} %`-m OE"B~y 5SUx"αٝݳ4#Ƕ:_[|u"2_U~ut$x2Ie4}J-%:-Qil:VcSWP61\ڒRcK54ok|cccq@sD` 73 .GOS>梥ȴvcJćV1ruRV YmLe䃏e6X-Dq{j^&W_2Ll>"ƉR;NgKkhAiٟv Zm3~椋/Cyz,A S@E3CVMbWnd;!xx'? JnK@x6>"8\'C@iQR:޿}NӃƅr==dT_n1V7: ̠jM*9{X[`Z."32,ts/Y}x7u`5ޫx1=dBy1A77Ԫp~Apg fs,(ҙ]K4tȩX:lQ*i}@T˄3@5 :=ïgy{>RD( HoL.>ŢA)m徒%YnE6ɍ}朥ӦT`{GQΓ9y)x "is(iD%tu7i9Mp4:aGys=n4#˪˲4T|pz.)ۺlVʥǞ LBV9ʊZźUGT %!榷RJ!V^^%.Z%-yE%KQ%NHPJUx(`c?&_ JEV~E *RAief-Ͽnd*@i;4 #>[~3⧛%2ΘbtC41'*U և8W 6*|NPK!w&ƞծZCu594_PO VX b kUQeWqfQDv+"eU!Z%FU1]cTU1]~vR<=a@9P@U_C"f !sYcƩE1Wk1Vp@,`YY|S[$ hQTlN1IN ^>=i< Q8]@iE3QVXҏWvCᓩ׻Vd/Dw_3K:fFSGȌbjɱ)`=oatwmto;5_#?$sxuAKoWFI&&A$"x$Ϭ2gߴ | D!J;/ =@.cE-!?9)N-'),+a7F'9L gǶR!^AIVhܑQu])rexpHxkOdbqkzoDͶeG@k1 ZU=)U 3bnǾ,<<`V]#M8\[DGgK+i p +keAժ<o.Q[Bֺe3xd1gfPoбVt>>i@7'?7aSXt[3`H^B/ &ywrΩEQETE0%P8 t5 xŒJfǬO'_j%&۲gYGϩWg=ynS9C%IiNU%wكEV5wc\땃7[[Vjf.)@TEZUU{ˢu*ֈ8 ^lm7XgXGbq ݛߩ\瞤k*Sͮ^(>O!ubLv&^X&ehdyQ̬wj@2re* cMs|XJgZjssgv]@H p:7+T و!@Yd#Hsď'[z_-رrc GiRHsWXa6XbZhAr ׻_i1Y'(qui< ;-A<2Gq͍j h*g˔ތږ0_6{p n%PT#|cd9g}vS/*vXR$tI|@,p٣<̅f Su8l6J `oYiS?h~ SdEb)ޖg>(,^?wF!nT <3}@ND7N2i &!n=g-7".f|d2 @2w)Z8U̓HNі >C2ubxNoEMœ PJۂ0(m(0`b&HMHa 'abX-Yá턝C6Ɨ鸦XQe0etχ׻޽pV<ׁ,s_21C~9}ʀܱ& 6N \Pyh/΍-qU ~rxݟ4˒Ʉwdt[t69w?\nЖ_)_ͳMsכ1ҿ]=H=~/4ޝkoqRdN['XN l5N8g|y`gpDUЭK<F?9zjy=tpzvh&n15^.C[A [ 8nW"| I "b׆Ӕt '=d=c9u6"%ḛE&WWMK&Z"0˟gJx%X@> m?L jv0bn#hBCUzSub{dB9@|Iʒxa&3qv5$ H2eG#շ*UQ'qKO7bRMJw`+ ]JRqBlkeX;2~ ?!+?XhO^@Wf%-'P&[uOg/rtO[ Lq` 2Ua%!ՖSQ$aFV( 2Lf~S;#sJ%bWIBӻ3(Vnj u%33nJ ?XP=H)wU(1 )K=|&% uX*]h,j/ vX,@ L*YI&2Q4-hG4 {j3j&RÅ %Mբ#5s[' j I/{B[?S8CHAqń$Z4+m:utLfz6XC'hv;@ҽK_u I7Xc0af@DFC?W`ҷ))yQ& G-)oʿ* ARakV$n7Ϥe2!]ܒ_BeS\ؽ>=1{݂AWBwjFt}5#1'iOa﵉ PܲcU8OUB/vNIBtprsD͞2^g7.x݉*nLjoż)6myb$esn%IGCbAa&ZS|y'`wd)7&ŜWE dv" fV:SJc#$xDO 巒(eE̫7N>e٨^'Y Q N@0~SP13ˆȬN24 i|ǿ&.rT=潹  aqGXipkyhrɑ=J0[F!OV"¬tqQ݂>x3Çрr1F9gd%v$Q\ro\Ao^"`A q^E"#)Aǟ M=G!b* GGяɻ~oI^+"Aɝ f-0)Q a%l$miP'tBz1>uN)q˖XLBÅDw"").hFܗ.+7o 66j,d;o yj冒6&3;G~}wEڂ$sŤ/Va/-q;BڸEI؋YwН2˶RWPdg9o  `jX#V%[9KWjQ w0ߛtc1z h͎:9cVIW/ {o.[z>W} %<:o4,CXW/Pn@8 S~E7PK@QHqp6keystonemiddleware/tests/unit/auth_token/test_cache.pyWKo6W detO.rpk4q؛Ţ(Zl$QKRql%H 4 p9REYb4\Fi-t'WXj4. K2H&J!܁ i(E 2+#>T&@OTY$x-yG4Y>sbVh3;N*I{|9/q.KZ0Pb,AP$'f" șAs^T6kSJ3jRlݣ(_2FwQκd};#|0\itc0M\2r63Jւ9iaw5h4sd-\o.KJ9 qAJK0-w~dzQƯVxSTZݔP0]_+ ^6ͽܾCqp}x< ɥDkB7O4Of%іxt[x9 A AU}!uz!%z"aw2jZ7ό_g',;l8ׅ9AI#Bq8S[u*t=lc +3;ګ{ڠ<C~!ۉ䓠Fv` {r.㾌KqRXXtelj~ݶ.;|o\_oc9p3TeͽppKΖPtRt/Ī8tqWމ]5B&:7jj}SgRL]_?jE_PK@QH 0keystonemiddleware/tests/unit/auth_token/base.pyUmo8_1j?V9SǞtUZVLS)E7 н[K~f<<%<s yaRAm#.៰W%l޻\Y( a b,,b-yv]8av*\y%mVcmmq=v;ƫhHH3zNqeK44BSxA<0%߁3g xyQq%j6(U_+qS#nzĜt~ܞ*Uʘ֛b9J#a[[ ;u*#9s.p*̤js|eǿ*L&aǝ&TӑOqC#%C܉c;EyAn]?HqƠwך1c3,%$VVJ5)A\Z׹0gI C 4ǫ+X< ~"R~<9'蘶%ǝ X/PK@QHJuQ6&8keystonemiddleware/tests/unit/auth_token/test_request.pyZ[o8~ Z di <5&k3"(Zne#Qv}IErھ!}n߹KtK}b$B⁠RoŔ3=G}"%x1.PPAc!A';(C>BOЁe&UOZ+)Mwy]CX^Q]+.6gn'b +;8F'zBx|!> !m(kq-EDWD+N ^,^d1D'%8Gd@9Mo&l D'dz3Dbf.$q$DFZO&6|O"4ٌ^B 45r{=0#ȡ Ze  +=x2$VMH"(`CZ~R2+1\zF1w~L5|W@M=P(BuS*FR:rW/}?ڊt<=iЀ&M)wj&xz,'3rǩ:^nXF 1Y\sі0jL `?L$~+q?87 @'wl{XB}giZ%ħ9k4 5cw./l^Mj^+fRMTs28$ &Gdpp巣 ¬ o!3Qv5.;MK(X9o*kGR㲂$Y_7]%MS71ۓlmmɾ|cfh$, ̚jQӛRmKzoEn|5U?@\ e):ڃz0 ?ȾclefQxj!~4Zq#Z9:ʸ"537Tmjmx48}!%5i J{R?NZj0lg+ͻን* K[?1!4D#rz6NH2|VOtm1 ηY%>ߑ@-;n}q݄_=w@_UmS0˙Ԝe\?"X~qr)G5S+_/ HӸE-;ɱ6pjLO;r 0Ύ5a{qvcGm)yǗr(fd0BjՍÖv툣fy,URGZkb1YhhTSak ӉI)D )ߥ(]XYV/dC\]s[^1w }ӅXԦ1kYy`SUcEٚc%3!*Դ|x)Iå@XePT%Dxm8}[GI65oJl'Rw^?2m{ڻa>ДxItl=ףutɴƉ-eo.^Ltt[cLᰬX&7%lL\~W!"ĩU |qzYsqo rp)k6Y#,q{ RX 3A, ,gp©E$ :lMM"+ޥ@*֖*.aK*/CBbSAy)`%ݟ>&wC*t]Uhٶu5,eYzM#˭ ZxUXwt·jXV |**(Њ]N㈼MBA=Mi2XܳWC`[w6m:WrB 5eJy5Mԗ)iLbta([$ dp pXe<T}:Tof}٨(0ۀeN +ۏo|@A䳉,K?#Üm/PK@QHM]e5keystonemiddleware/tests/unit/auth_token/test_auth.pyWMo6W QWn{ئ8XS.$0f#ZZ;CJ%#NOY$g% B,jd_Qi.|~\TC?UW4Ph\CSD")g"BXsrTA^l}Nix4螕1p^ ZR7|+e|DZWW`9%gJ3ek R!i^+nX@ĬBsm.L :=ZtӀb.s/x>tiAdzt2GyNӇ`<Mg@ŠMl$8b-6:D #%[",OT9k˦bHy 3MxM(T.n=/Q2|F dYx7 Ў[iAix,,['̉UuiayDmt%wU։av8Ep`' |AQ mQ{cs Mm_j]"5c[:(4 =Ϫ:+4|i2Jj3Uj+id$ӲσǙ8れ`][u·t5[&,÷3Qn^Bڏ'u+,u,<%*o;%qE~ag-[Avn!Va Î!-'!&S{=_QfcjD5܉A.4wQJl*2 T r@V-R&dTձ` ;Uq:s_nZ]Yy] ~ [DZ-t-5bˌ]Zz쵇퐍k;îL=큦kvX=hJKxXmiTuUj7xN?uzW7"%rVa75wChwŗp:[L7X>2K6,:wE=>q9ozß?ͬπ-Pzֳysכ|s-cOJ{S|[SPK@QHg8<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@QH4keystonemiddleware/tests/unit/auth_token/__init__.pyPK@QH#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@QHg-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@QHiͩ#<keystonemiddleware/tests/unit/auth_token/test_revocations.pyWmo8ίZ\]@_NnJjUU$xI픢U rۓ.B!g333OBk /JQu yBcHPY s_5Ÿ4>F!'IWX2v4Ph$#\Ìcn ea-T[i0.-F9L6˜]VsGRͻi)W/tU5(ȘiV B3Rp1A˙Y1NµQ|Zj)r_`cN#N?B:vn77xp5^ƃ!~1^-1‰I#O&d13Stb^9\>2-\L 7ر-jhQ $̠ZY/ zT<٨e2^Z3%3XZ)0I6bYL\J~RfO顶tW3IzV͠6:*7YZ8eDv tt4wZ- hM4E;hLg!7KL&)%)@uk2&˻t9#{t>nJmRFe=Z""$)2QAIy2C¾F'( 7kWQ6#/t <15L; hWXvPyhř;vA䁥lFI:h,< yȣ6փ,LL >t&ƛpXq>vl~(^Qۇ-Wh/| Bhsʓ:͝}UD2E9le벊 p wjLJ3CEh6ը(7s*%u;cOWHPkܭ^L789|l,U jg{WZ|erX u@I4x2{:#'H!WDapiamTൡz׀[]U!kk4[?>ݿI};#]x2->@_Ac+?Sy~Ľltac*`Ϸ33G=f`1$(gߊf۳ԙ[.^챷JL#:l0Q,bhA>רOؔ6YHK&dM̏&IPK@QH(keystonemiddleware/openstack/__init__.pyPK@QH% 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")τ 0COROORCŖ E|6Saf|lN oR-p-@%j(mO[5{]޳~v?ef{Z.߼}]߳7avw?gL@W8F|.4&%c4-Z $ BD2R˒/[柄VBgҐ5 ؋Y*3ioP*VZD0J6"Swh\g"q=#{kՓg&d a7B([cs%[G&8i¬2MX=lUƭLAⳅ< R4*̵i%1퐲؉= 9%i\BgaEV},EYO Tt~s5⤙r*ؖE*qf"aTi2|6 TxnSw|)l=rq cTT4g $y{Y{^pͳszY1Uf P+B*!a$Z-%-DKH*;4WK)ܭ8Dgh7i/1 XiK!0J'mA!8;DkcoT8ގv8te% ļ9ȨIsKc/gG#,Q|wVU&$ E{W:D?,'Z}խ]~TYQ/`gV ^s|2j&Yց%6D|u;Db\˷C*DVW9zȤ;Ё[;V7uVFaDT.U+qሌ26.ѝ YLVx2=Dc _g86=Mza̓ǭ #ly{QU?RxV~Sx=L\ݺU'>v.?a,"[Lj)7|;*-1% ~/2Nw_k;9yT,k NC}*}/ >׳5ofE~_7O?@$ЩH~c7r+j5ne=5eS3pu#zPONkK1lFJ ?5#o?ܑN{7.-CU% ʍ ACB!8u9!C6Oa9֫QqN>Cx*j;lp %͛y{s,* Myÿl. Qn4WzX-/{fWWzq\vB"/PZҒEt[Ve/ Zb4]yq_ mn\@߄7B'Iuߩq.{@.lQȞњ,Y{ ޫ# gc&a~X{ _Qo2v?CPK@QHA -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*u/yȅxE(𼜇je$MP! =߾Py;hw[F.ZQYe%ڟ_$fKueF;j<f瀎L<<+nǀ>*X)'ZQn}Ȭ-K LNwy@0EhٲJxٻVk>+map W GfܵRza/|E1kmV$c qg %Ń"H5?P<( ϑk'IMK%S*u[rGfCp3@ao͠]0u>ʕwJf'y^r51F xԏ>IJyT{У }ۡ{_>ˁ,aӽCbcTiB_G?p ꎏncQ1,-{1l~.:>,upk[pȰ-o9Ώ c`Ǎ#׭,;nY Sh`D#wA>bt&ȦV:D6?(sl! SRmiڬRgs$$tva MM>7mn|lEÎjB8|XOyF<3<:Gֿ "os0(8r؎}Cxq㐲_"ڰPK@QH ˤ ,'keystonemiddleware/auth_token/_cache.pyZmo7_A8(,Φk  QZSn~ZPxTIe߼I.93z&BNKe_+q o{e6&ZLpixu:؛Fl䙨S B;ԕP[/t- VZօ;״LX0 /u $e:NH ^˗.mfe#7hLs~+地F[b/*ԬN+*x *zu.Y yY+Nd-NnTv~{.>~|p|v+޾oo^ookqui~\(,%5QUhiT+*4۪B/uW\)2ְUvzӁzF{3H:Tvr !Wҋd-?,*;e$Pq+':&ݫV]B+gܛ{9Xe1%7jS`|C(?%kkLJq.73f k6!a5cI"G bO/N03NOO 'BҮؖǫos~uRfWTP?lVAk,F HF>MCA E\@Ң -!=@̔C o-<0 sߪ_y&n&`ArPv53Vtd{'vޣC+HBPĜBc)y-{&05P#$rV`})ZmŤuaJ5M=ԪFrfJ;SH"zeSL!ت%C*[IRԸ@>k^F3<9kgSa p+d !ZT@+"@L*|W!((@X(H-F<^[Ӭbv.(!S%&O\ښS!5/EH&Fր]UE$Ak 4 !;%Z* FUY skU YBڰلU2Yw.*:000v.F둩l2=N@I%m #W/ t ,̼U *d!Bpz( IU ͵"Ybǩe_'Fdḳg=&}Q)ʞ&B$ۈ$ YV;)(@ 2aXťmLkC ߕX;z?]7bŚLZRJn@ sY$i.h!]lDA1>qN}{~ID95ɴ}X8gUJvce4X_ %<؉bND*a#97 F}5Դ \?)sX隖/@fpVR7䲳ׁ+w|ee#ZrD[99xvdzp憃dtA4uˌ='Si%!:>VG\S;Uci\jl 61]XvO׷2ǰN;$H<ϲ~i|7|zԬSVE!&sYhLsΆZO 4p_\ "~Zߟ%75ڢXfaKwp=M_>=Iu<2B:WmͩӜ5T⁥}=y],#o5HVrR5`| y.*c-Ho 8gB8jd TY+jcJB΂|s GPaq,$|?*Z>U*|3J+XHҘK^llcCp/.ĕͶRԫ 023gpͤ-vGpo4rWյy^D޳N:=+DZ`G*D<M _Hmtkjtv jj}NU n| 4IRf}DR ~sP㊴d4}Ie9'5^Jg A\ܐZ,!O" O>NF?.ҳZSLbQFg9#@B$p*ڷ! X( t,JYV*|buhSS#);VG1/%S+lOzuڦ V ]Zb·G[m1l7g.1;`?I&KLYl[YI%iŮ \O1mHQz;Ki.,*q @Cz }B!)[/BIp{8@00ݔn{ 46B-D} (Ѥ>4}VgK2\a%fLdn``8 B@!>\$đxH#6=:\^/8tD/ l3'B8daAdhMud ?BPU#gLz ;ԛ-hJ[Y;0?=%.RFuE ~y/c{H?O􉲞>}^'ŎB|3^M 5W|H/v$GI6gYEϽa㶳:3Z-  DrOsajUEcUL=a4Io{`J<y<꟝޷D稸-&i/ %*E?Ր8(ŭRY`&!rV@у-o*,~Oq&g A{p/0wpRIݱ[\~=L6 &7%PWR%(Ywik ԝ'?0nƧ_PK@QH &keystonemiddleware/auth_token/_auth.pyYmsHί"R+>`MeA`B_"|ufz駇WG,YL4f#F}'b2"%)₶}2}/d6;rq30o&tEFxO aODAI~dq@ =j9(g, ]鲠KFbd 搌519 ARèՂT$%hR#{ΕH-%`}Y𘥊gvs~DP"hg^%hsd, Yg,y"H tˢŮEk À(0ԂpNsvp=?GO/V+ %Snt°BtGp up&2@$ yUvs,DQQ %"Gy _y ,smݳb)M 5#E>,$S ֶ!-4>`n.b25w b2tQ-w L( Zj<%"dA7P`<`AG_#+D˳dl u`SIɢPdA׫BLnf?4OPJ`DԤEb =YP'dNGz j~a$ {4΅ǂV`xb۝7逾峆B+/0lA)/tbPnv.lLu1= " IjN N3>DD0I|A_3`OKx+FguXgIo)#== *^CƷbdV ?}[C\d)(Cohc#OBߞI5v~w՗;~_puu:CJ.fHڌ_ӘkG ?@ơ9e 9 dχw1+s8"t_ě|%$ƄB6yQX,BaҴt=EExu4+V0l +nJ2K9 Nr[rF" .f_ CHBr+21[(7DZvjmW%/+Fyj1? X##H_͛ 4:w׈G%%9 zT )C|^gp}~% Q%a@T4*7@<üy,c*J'5vi)()ȂFlZ ivखÛrL+TT, ǒc!X=<>< P7+9y8@2b)Cs Z[,p~)tڬ=1+Qs(Yig h{)Jo~l4BzX%>w519TX@ʒU#q$0V*1`߆|}O^3m!DZb[h]Ґ= %Ut䷌gDSh^4 6˂c8.Fu8U*9׶Dt VsLZoّj<ڭ4DJj6΅"Ƀ}vUYR}|e~ta?,u^QPL k= 2ZL_dHdͥOӌb 92{U/R}[ gU00X剡*hf.=Mˡ¶YJ@]uO(2AM_ޠ JQŒ7ئ?o^<:x5f0Ed5"OSAC(_5 j/Sk Рn#~JZh>Ѫ=^^{{V9o/qKF,"%l@@{ G]2Q=$e˰26GŁ&8ip:_B4ngۉuodwJʡD&B`񥔀 YhY [7)M`MivV,Ɇ["209Uio*q* ܯt>6jm߯;Gt>;)0LGsb @_=[";UNF9`3YZ+r@ l^PywWd  S>"u@';I&B 2}-%}>v"hϟqG1tQ)%u@gٻAnÇfH4?Xİ@k$Pk0̩.]B#ZM@.L>ҋ(zHGF0+# JpjY Cy9wCFl/FAf5EAS>]>]Xw~ -և }1$he4͢(2T)߽T4ufu9fQX욣&}kI|m2AV0(bUqVCĀ)M2"=Թj t<@mI6`5~'Uw" l1x%6|ǜimcHrP>}617F9b5e'H jݚ`f8 څ~< `2{b&a4mXgYbyIQ{!U~~MLl!,U lj u]*q[ӷV'"z|,ζ9mokJAFJ',wU 8sP@ Hgv.-o"2Q1!zP@t^W.l>VkOqΑ>l޻E[c5r;va:}y*U.b=]F/Pe>CYxa "PpC0E=9_YmjN*;w5}NhęW eXڱ 56DCإQ&c=٘X]f:1 EPL2 j:]xSOar-SzJՔRMRB.@,Shf2dJ<[d.<; h^ 1D%?Y^ [Rs) OQg#D5,WT}'& Sxu]lbc{0%?jx,R-H`IR,'p$ԈN{jSA!S (tFHr*"YTPY$L ʰS$ \E,UF,;M4mPV=a}?.t⾵ q >{G71{bPi?3hs0Eo2eEƖDawG_ Eoz/6=q\8E?\K=&bixMDRPE=oСw? L5Ze Wk_ܻ3~ΨhfMs-;n-,%A PiX?I$ds- $8<V{\TK&Hlƻ6\G.%4}ާo=^ʗ33 ӹ,ymwٝ{:5}u0}x2biЖ'*ߘ0s/|.wvO`RÍِ˽bzpbѽ*TZطUL!<ץmU7[*Pw)eY1/xԎVll Hr"}(]"3Ǝ_y1ZolJhhr^9ЧP|YzhB{ L@ HDKTD|aC54Ǯ*e&_3ZG#êm\utqZ_펊l!WrnԩT.|O6U8+m\Q\ƪ縺tE{ɈhdQQeV('+nc3K9@ in-)~THQPV=jeyy}[WDKA!pPK@QHs }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|b0[?q͇ۙ#6@/awg3r`۲X&֭vrpןGpx;Tl4^`BZƓ-t<] F͏%SɚŎxux56Kj xn;Bq8D/);*`,*&;i-F{:6 [ 0~2id1ȝv5L$2Pks']5i|0ճ ՏZ,֦(Qb:Ie p=ւ/B]͢okcRǺ8Xȁyc[kT>">({Ť\n! 9YY? ,CuoZ{KY٣~$gP~[ZԷ63*w_{G :7$z\=:P ] wVk>]-j!#*0aH~qR)^*T2$/KEm0 鞧 $TnU-M'a6a/7,рKk-Go(ba$VReZBR| e^6J]?™cFٖ@ޟyv~L Zrah/Т1s. <~a/y_(s ۮB9>,hF%]B~%>%9d~7h69E=xwzrYZ,ETכ} !pU|Cnu`Kއ2+H |5鎑U"HX4I;`zCwXQf ji8wItB=ʱNMM>\rQo% X- C5.a^]^Lί˫fry N/?_D@:RgXBA  zd5u3VB>}%zǞw&#Uv]=|8+ ItЅrFϝڬXNSg Ϣ{ xy&N'mLZs8m*|J>Xц兩iC6=JD?ei EngrN.ߞ6:$FW_ F_:mӜޜ)~ b 5+ɣ࿯//,CQްqmy-̫ Qy P:3uWb#[:Y͒U 1 Q/NONvfWyrԨ9 2>ޤZbCu2p`/6yWR2 CòK4,hUoZ~:FWZޛ U|:qImEF A~P V[dk[RbK(Cž޷N;TŢ٤Ob5$kMZ34"ʽ%9+-3eNOړC@2T#W$3ʘrn(A*5bxCfg2-oJA!G}ٌs.@쑐%p@r <$8H 0鍀d)SUtFɢm*8 ~}fDJDd;-aZ*%?~xފi- i,8qA&x r~ Ŀ1gOw.ru$F/u1t4 9R!IHge1363qO:-D})?? IĻ:Cn <,QW@9Kx&|o/Q4^VAx=4rNJHZĔX~`zl^duɗep|3b8X8n*](N *K 4 ctu] wcVL[B!-t%kd\jy~3&(xApLuf8"70"} Wb:} T"1^i,߰:[o=c2H3$N=-DktZWq|0Ŀ"TK]~9bq<[UV]ZղXil _yK%1QZ/"нa?šuNiں66tS 1̩Os S8ᓺ<|Z= ;p$+ҍN>:e/0 gs|xD|D`.-)}G;2~QȒ@dF.]B/1B+۔ds2ҜV )|V>|YQh9,0D;0`E(I㐐I>y2q#Wm̑d~vy31N(8-pS>q!:3?4cҠ2WC&EDG0oA $5.1EoA"u=>Gڲ!ָqfw烤X$:3մEz ˓_xUy{c:qEW52;[&`*)g kyĔ M7埇ndq :a3D ÑC_iKq{bIHxm\42o@lc#.`,9]4 6[`8"Gʒ 9 DLS>H EI^pQF Z+Q7H'sP-VԚ@V! QU%ⴇ:b;˜ {RuW& j=Y\gvi_E4bҲFs=Xl^[+%h_M#b Y?M$8kSlz1\砽h0SXIڀHf4($]g_6= Rw4ʵ5e@e èqCB휭l.8&P5 {n6lIx2ނ@c)2;f7+XwӇѼ fP~(: Pݍbs{B8:K4eO ĹHi#_X %%RlZdf9;PezaN-"G5YhQUhj( e+I5 A#Kʊ*ly֠,w^R6vA|E*=G_gS{iINTU^_ҨɭMSlqg7t)fW@[MKT^ti$@K !&@hgc؝ a*,{nQ@j<3oo`\iQM%.V!cឝp3 '[3i ~3]|0Z+|l9@K6H@LqC.a)¬L𽝌ap\4:$8!9B8yٽ4 USJK>25R6brr[µ,{DY}v}j#Da쁴Jp|a2*[16?&X'޵֘\}vET\&&C_,,3|ӄi]eףH‡Cg"Po,bS`?tI4aHH[5-( -~\]>pfzr}!w/q.ҷ7W;zu>LW?_]b}l@N權^ dCA}-KQw{`7] PȆEȫz_3cՒș%ePA}ݭ'94`ԁ#d i !р!$ l~\j_)u8 4R='3֐t+ I"1u!@gF7*"0pID9U Nm#X)29dcf_ U˅?BlArHjj<44?,J{ce&xhq7V/LpH#`V3SI;H=E\e+Ȟ0hpX|3Owf nBĠ'-27OpE%űªoEX%cJ~ bJB fP(A5=}+K K3bʋ:R5@A@C(pR &&'XTzݟ;,VU =k#ЈNUb/KxJ 5f(餯J2ż!֏%d 3^OHɑtF203|g)mQ)'C44bS?쌜?(d2d*`]ٟFW1%mzlkW<šM#y\*]<.SuW<sq})G|u>oLKwjwI89C0B" B!{*BeH*< R3BcDggs9&Xt/}M@rJ i~6"@th^(JC CPF(F hFk_$Au \X=p)C\D6Ě?hGm4E /gQ8)R>dFGCV'!)4陬[`glx,BJnYMKm-M=Q aBIz&2}ƫ(O:Zл̸!~ְGhY Av2PZ,1mS #of@ygB=h^Qsu\cv Xoh9jk4$u T)=rag1YFVthޘE8f pE NE'#>$ܢpob6Z2-Q>$ !anjkI&d[L%lV{EQO"M^ŰFZukWl EujwBR/Z&_ ]bHWvbn.Z-h[H,YQ8jL:[o$"FU0W&P Ȕ0~NmߌG6uY}rګkg=> U'k{%`  0*@yVTnI<@w#wu|2cR)Dr m=o κ|'GRRˣm͏ZGO 7 Ll%H1?V\8ML;q ل&^rlK˄=<[́MหIv{d(kbvdV?ki [8K"md+U|~.~Cxm0C1(ˎӑ#U%YJVgxm'P1\,#(Cf:4NjC|=Gt~4||&I"x` nǩf9}XaY!h+u]~3tlg0q$38,LZ}.fZJ &<;JO u<)x11:;Lޞs!DA x53\n>f(28:`3sЇԅG34"纎K &]/@E4 _T0AJ2L'jf]s7<(%.FxX X I1<:֬+] SߦEt`분Re,Ҁb#n E"ߑQF%I9]Ih%C^NM-BCBJ&Ƃ\ MJwC9ޕÊ+JRޔ4pB]M"i͟9= p:~ZDJnY5! hYg4;D ^8E +0d!jmjNwU[O P5&}¿?}| Ҧ&CV[Gէeq{>|\ƾ]Z5g ܚ h7X~7++Щ}82<)ՌN aaHUɆ>["(?4NDs%>e=X$^`UrכE-XvJoupe"Gnp}%dFmh};/)~nҿxPBb ׃VU3.d+ͩ$Pixjz1\H{;G{/#W 7TQZ+Djk#0۵X R0\iz?dIنd75žGhVYP5p(!>VI@%ݸT5fib0,̪7;Jxv+DuR#͹Ut-yS}ÇDY=4v?˝o>4"\ӈN$uxժbDWk(]7V|hUtgQw4T5|L=+oO YlEh$\vJ3"Cv7{鿀ԻF@!ȲcA0QSq[OHxhCh@wrè)ut٦,AD`0*@*:*`cÔtdn^wbmpa M*BS TclK0̸?ߗ(4SIV:Q-%ҹ&gVEqrpju)a.smѨ%ϛhD1R˟?TZ4v3x O4Gdm^l>8R8F뚊ah$;o}E)WaE,3aܚQ}d af+xH20$0EA>9JnQ^`P)ފO/ 3o:DqtC%(ٷCI}@МIV\[;w8֖9xd29=X󬎃Sub%v,2LBV.γjk6"WY=44ZGZRsfqClS,Oh*F !h;q/Þũ5O/>h(*`?1ftDPڪ\.nty݌š.c}ĪZoA<3ZhN*< L =9ܠuoyqnqXs&y{E1* OPuԓGENli%KN ҩ4R>=eWuI9(#2G7:{wzg=c.0pKwxW8SAtB>TΪXhJ^A { %aG dƞ}4P^[=uwtvtHo_< ܡ9w8n-kn@-sě$1aʕQry|<@>)?IϡDaY=`܉dskWESr@~D>rxO:NGgrƸ 5=};9jA_H8[ )WD1ϸ%mmfJ{k0#_ӏA]D,iJ%ԦDJFrZRTMBTWjL1cՇMͨ߿۞\s5p{oPZ -Jqfrh7a>9P?OWni>]w(6Srױ>3HJRzsY|KS65t]EWz_'s_^-`f<çM[t&yx0x|/\so,㙯XO%X'ߎ0DbhkUe ْo9oɔ:>r!6$\e)1 Ȫm} fƑYE'L%϶x ݼn9t>0V "{5j6D/*7aRk.F+PU]b(IJ *.c5frx$^I[)<֊͖u}xY?V!T}C؊pS,H~cVW5EzdNWyV|bU;+ҸBpw€fB ȏng^Hy]NvLfA+Vރź6jof5# e_ZiOPBHUqw~s 1y:ȷ" þ.(DZ"suNwHd@(˵- Cf\ϳngzRr\#_H`$tCK@8-" _iZTxMr PꇮBtA]ۡwCT R,l֏ՠMu j8;t.2C}-3kњ3`BjĸZ'QAɬ? CTH*`:Ό ڐ (Cm8ȧȆg*s 1n*8\~!vE/FLw-Ο]y@ImN%oUl9X/ݻ'daeZ^e+qGq`/JHbۑk{vJ&[rxpWMȯkkv.8U뱯8/&oNۊ+kmM| u(Co翡G͡x흚z%7bǥCLͷ|418@6dxVSRz:#hCa7}1 [ƍEsH"~d/y,US Se6 dl~*j A}0leR; jrwrI6X=sVNjWH^;/3:}9%tC͚;4Dr]!f$rHu]4!uHB6cm]8sX1kS3 eF"eVI5k*ձu|U3l7dˈsZP Pf!z\uwUY9u$2ۓhDzk˥>8^=/p+MA/(͜󢹡:mrLdR[IAr.@V İAy2Ձռ }ٝlH;IG`8z#.8G9/$%xm xp'-b"~0vi᩽'u[s7G.SMpM=J,qe(6`ͨ ĉ~'꛳lgum Ը2F #ޭdW.l5÷d2}6?"lbs,QPRGɒQLudR1wZpp 'he!1PMyLw8@`$5Y'WZFy{D?BMp~Eb!a+S<9@Q!Bdly/4- %iFPDx-ss::zaFo_?{y_ #L z=F!S;kGs΃pà|$Uyـ$>]QUY#f~ RFє`6厌!4SPc&Jo+a&J{UB>E0:XXr%cUMxqlE`\f5!Ur).|StV| S q q4 tx8%!ma~dFH=db.c#ꕋʣK|1jx),˹n_ ׅU3dgn\9b܆=%YĥaQ 6'''8&vP؊dd,^j.j[B#WwIhlU4-{$ rw7{oF:.AB[Sl - 5q +aS$=5ج3UAS5Vc<ŅqLlm^c @ڱkh .L yB]"| pQ)li|VD}E"E=yJNe⎇^ H`.-/5wl.>L淫+ yFñێ E1b3Đ3yd' =[w|=qNh9_AC?P|M63Fb헙 H 8 d[% D4U۠F!eo2R2i$=Gx!<qCd[z8@WޠHnV 4Az:*QˑFBHo櫮vl}rMb)ŶXCIS2)FtYwLVly \H-g-YsHZLޫ|B} .Q'E)vdL"J |![4qfW tBTa|(`YbYS'Bj)Ge+S3g-*`dB dK4{-]OkqH~)S?$A%1p-dkHp)b/ ,Pa.< ̣g^ꑌ庬Y{PnFttПGi̓]K|`wM;cb K"oY榦"CP)KYdgEnvLesjMi3ejZEsdAIW)[cbm6;;m4d&V12 ==Eg頗\QEr-5e~9 =3T!8 )ZL;Tbv}`?*)N' dQE(XW1xlJV!KBȬwíWE|1!h+$&/%Pf7'EFm YP2.i0ɛ cu  m*e-Zuk]1cJfV:I U ~Yb6\6 ܊e=hgl]:5"x6Ͻ B&үϛ-5azUZLF3;Ӥm|`)'f:Q?.?rwꀔRGc ;c;׀3fO.reX< 8ւfjga=ء뢪Q6`uWx|Rѓvv<~pxg_PK@QH9w-keystonemiddleware/auth_token/_revocations.pyXKDW28"N(aw"4ɲZ!duJ;t #~$3w}蹁{af0"Q#sџd 6Rem5L0F HɻLY( i`+|0 3T'RdQڽSS s) $A9ot wC6@8kwIIin7d%h h|ݜ@dP$6df"4F: >jieQ[{IJ,rSNj6Kd0`Ob5O/$q\/VÒ>|~],O)Vsq+HY[UdrVFW+a3rrԩ4MCŐTZa$ <*m!L~OnGWe7(cV?1O>]$6NHIT+";]iѭ-Y ͬ_U<'BJzFu10mw.vAblR8֓:]ڟEF⇵fi'=)ELc_.1y5kmgyyn{L*;^7*XSpl&,c{07O\ijN9|f[-'kk:"+N!f>&t~J[&N۔sIf>$NF9I.+#!>I/!JOzeY6 9t_.?edq 9HTřh;tE+Ĭ\UCQ-^gݒ #|D*ؔeCUvEn o]4ԥ\7XV,ŀ0 ! :ű'FkdVMOi3l'OQ<̹>Z< k[9:coC.*Fe[w|44Z9GįD܌vpC>J/PKQQHK{R3keystonemiddleware-4.3.0.dist-info/entry_points.txtM 1 }N1'BwdJhS S s{@]$)NVդЕctJ7xpȘYuL+KOL>n#=ɭckPKRQHoX 0keystonemiddleware-4.3.0.dist-info/metadata.jsonU]o1+=$%DHD*"H !9&gzg$Tھ$BSgfVr?zYn[=Um+Fo}YdO_i\e0zѽN~Dg@%VJ^/X^Unfn#$4NQ6i|-\dO`O, k_}ST 'h$RNR λXE9_$W_р ?64XET~89O(MW+)+-PiWrq4(z$ĖQan"Ztڈ4}G]7D OTzE}'iZs||j[) GD}v1ϋKHjᝇBfc:g{AgZ+"76䍩e\ S՜k^;C]2g cԣD9_+Z(QFYkxK"wQK伕oh,^uԦ2?S ٹF:B_(t7EsI}Yp,K0¯0}P]ʚuM -Y#0v806IW3#\~)\rg{A ᛉz$& Z>J7㊷Z L?>tlk4OXJt#IySΎmϘ˰ ?߯wjg`iiDK~Q<* .՗'f70X5tga Uyn¦܆f\>N`|/G7Ug"LSH6BcR9|C7PKQQHMA/.+keystonemiddleware-4.3.0.dist-info/pbr.jsonV,/JIM,NUR()*MQPJ,/K-* *$&+PKQQH1i0keystonemiddleware-4.3.0.dist-info/top_level.txtN,.KLII-O,JPKRQH3o_n(keystonemiddleware-4.3.0.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0323 /, (-JLR()*M ILR(4KM̫#DPKRQHb F +keystonemiddleware-4.3.0.dist-info/METADATAVr6}Wll]Ʌd8m"{"[+50([.Hluܙr B]E1)h+k.ƕ`x#-9?'ܤ* V |B`a\h&A0h +.EFvʤѢ2i^ g*%;k6B,xޖ|oϸu^1"bwrjjYSdH&(aPI&hU L1͍6[=ΛPX@ʐ~'umBg2AY:$+>(E#L"ԙ_C)2LqE+2g2Rr6s("a$LVхՔ%</8*?g_GJVN޾އY-OY,пކC({e)MU{݇UP?‹ßWу {U*N^ЪsSgiUl%+=k­/"uquPWG|O75ᄂN>7asPEr͘4Tq+se;Ty2c@O0,D orZc@a MԑIX%[{c36͕aױOceCH~V~۽(e&(G }a&i?wS1 0daď0NEqd0k!!\k ^Rk205 ;"NH(XN~UnBh8 *+@dDAE_͛q4WX '*l9nj7m$jKxJK'<EbmW=A>feƇn%r9Ue ۷L ˠ|޲x[G8k݀`6 VA-Pd?h)ÿi2gٽ$z.!Aèg0#QQI$ָ%߂ܙ1yTO~ ۸8ˣO5ch)lU|XǨ T[.kg9E$H_Ly^(*{ )U@,-5 dJP m"nԣ)@{+}}}C2~^7O%S {!@6W%=Ỵ:w;`@!2pOa o&Ӧu9%dJyŪFs ro(/~?Hӻsv@ēe+rwr.<`)> $ɚ.2  QULTѮr/oB˨ΊTO/fΐxKnVU+0D~c<ىBO[ao>_ggV>Xl yB> `ROvmH Ngc t%nl7'!yZL""َ;THiɮzk5<0ne)ee&Yo$9y~M<$"sYd (6#-k~&o9A\3\;o)4l١yf.Fe[s_r~5!g5g >օ䄺K|n C`녺4SshoEbXo mS?f_-N}+d+>H"( y9ЀW#!>J+N4fOC_)͟-qIr*5"](:zϾ} JyZ`_'m53ސG_y ,ΣsHa͡=@bo_]]އܓ >FcKx# W"_! ¨:OVaL}SjvgW"QLe0j*6'mI{&i=X':V߰Mjx.`/6mOD^H͕n}԰:\n'U9RvK.\zyyN^&a&.Βcr^Nt? yMGyD]5VkQ֠(xjuKb>dXB!u#qmk}`_=e{ǜcp]Q joc P `džMc6Ƿ9_+Z [)C^š|4V4!K+zVކﳝ?y~Ԑ,OCix1O3i`0ZIm7ߩa[mu_ 9z^ a]MBәDmμ-47YU?]v FoWp3cO6BT / *Z:t{T:|$gCM w@3,䳘N?H\-[>g̗nCUai#(s[B if:j!vl ?'1Y*)9$85wtjr?: i@/F=JM(bPU0t)pG"'HI}D EFdNe^/ƣphɩʩ|;胶V$W9]CSYLŽ^>Nv~Q \>xYy3{~w{0sHιɜ$ޞ1yk c@/}"TN왝j5s$t1莠UCdŕVߥ^,UPK@QH/Ckeystonemiddleware/i18n.pyPK@QHzkeystonemiddleware/opts.pyPK@QHbO keystonemiddleware/ec2_token.pyPK@QH2b! keystonemiddleware/fixture.pyPK@QHkeystonemiddleware/__init__.pyPK@QH׎?keystonemiddleware/audit.pyPK@QH/[<))keystonemiddleware/s3_token.pyPK@QH$7keystonemiddleware/tests/__init__.pyPK@QH * W07keystonemiddleware/tests/unit/client_fixtures.pyPK@QHE i6Ekeystonemiddleware/tests/unit/test_audit_middleware.pyPK@QH^ ,9VSkeystonemiddleware/tests/unit/test_s3_token_middleware.pyPK@QHRw &S]keystonemiddleware/tests/unit/utils.pyPK@QH4n*]dkeystonemiddleware/tests/unit/test_opts.pyPK@QH)ikeystonemiddleware/tests/unit/__init__.pyPK@QHCB2ikeystonemiddleware/tests/unit/test_entry_points.pyPK@QHgǢ .lkeystonemiddleware/tests/unit/test_fixtures.pyPK@QH]D:pkeystonemiddleware/tests/unit/test_ec2_token_middleware.pyPK@QH֡t!AWxkeystonemiddleware/tests/unit/auth_token/test_user_auth_plugin.pyPK@QH@#ir@*keystonemiddleware/tests/unit/auth_token/test_base_middleware.pyPK@QH$?pDzFkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.pyPK@QHqp6keystonemiddleware/tests/unit/auth_token/test_cache.pyPK@QH 0keystonemiddleware/tests/unit/auth_token/base.pyPK@QHJuQ6&8Pkeystonemiddleware/tests/unit/auth_token/test_request.pyPK@QHM]e5keystonemiddleware/tests/unit/auth_token/test_auth.pyPK@QHg8<ykeystonemiddleware/tests/unit/auth_token/test_signing_dir.pyPK@QH4keystonemiddleware/tests/unit/auth_token/__init__.pyPK@QH#3w?keystonemiddleware/tests/unit/auth_token/test_memcache_crypt.pyPK@QHg-m@fkeystonemiddleware/tests/unit/auth_token/test_connection_pool.pyPK@QHiͩ#<^keystonemiddleware/tests/unit/auth_token/test_revocations.pyPK@QH(akeystonemiddleware/openstack/__init__.pyPK@QH% 2keystonemiddleware/openstack/common/memorycache.pyPK@QH/keystonemiddleware/openstack/common/__init__.pyPK@QH\7 ,/keystonemiddleware/auth_token/_memcache_pool.pyPK@QHA -keystonemiddleware/auth_token/_signing_dir.pyPK@QH]R- keystonemiddleware/auth_token/_user_plugin.pyPK@QH ˤ ,'keystonemiddleware/auth_token/_cache.pyPK@QH &!keystonemiddleware/auth_token/_auth.pyPK@QHFN,,keystonemiddleware/auth_token/_exceptions.pyPK@QH_&.keystonemiddleware/auth_token/_opts.pyPK@QHP 02keystonemiddleware/auth_token/_memcache_crypt.pyPK@QHs }I&~<keystonemiddleware/auth_token/_base.pyPK@QH )?>keystonemiddleware/auth_token/_request.pyPK@QH6/)=Hkeystonemiddleware/auth_token/__init__.pyPK@QH t#*wkeystonemiddleware/auth_token/_identity.pyPK@QH9w-keystonemiddleware/auth_token/_revocations.pyPK@QH+a"هkeystonemiddleware/echo/service.pyPK@QHr!=`p#keystonemiddleware/echo/__main__.pyPK@QH#Skeystonemiddleware/echo/__init__.pyPKRQH=#ga2keystonemiddleware-4.3.0.dist-info/DESCRIPTION.rstPKQQHK{R3юkeystonemiddleware-4.3.0.dist-info/entry_points.txtPKRQHoX 0keystonemiddleware-4.3.0.dist-info/metadata.jsonPKQQHMA/.+Ckeystonemiddleware-4.3.0.dist-info/pbr.jsonPKQQH1i0keystonemiddleware-4.3.0.dist-info/top_level.txtPKRQH3o_n(keystonemiddleware-4.3.0.dist-info/WHEELPKRQHb F +Ôkeystonemiddleware-4.3.0.dist-info/METADATAPKRQHp K)keystonemiddleware-4.3.0.dist-info/RECORDPK88L