PKzF-*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& Wg1Nx^ 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! PKzF/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|QR7PKzFkeystonemiddleware/__init__.pyPKzFNKz!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;q+jA9пH:n+5FzhǞ[IHu8[@*bH}hio{UxZIj0/6{oV޿TX@.T鉳Jcb/Ugð;nVvpʭ:zP’am@J`mk:"+N!f>&t~J[&N۔sIf>$NF9I.+#!>I/!JOzeY6 9t_.?edq 9HTřh;tE+Ĭ\UCQ-^gݒ #|D*ؔeCUvEn o]4ԥ\7$(~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")τ 0COROOZG~0#y`)z:_NE ]p MD>EP̀A615-I},7#Pr,(J!oee dMgw+u?Y,&l\V9~8 QL}VqLYWL(^&Fh bc89@\'qhJRCU^0VR(tsȇo#yXbF]s F/wPh56,aSE]Y 7WZ8n1ԱRlQ>(mQ`*뾵&K.W*豗Q6QhTlLyt,>_QUY#x3~ KFєPr6G \NMB iM*sm樸"TD-rCX |eP!Tšb ˃R/BIH:q?qH|-.I}_#8"Ngr:ڨBӬ-?VB5ܢdC2n\bN|iCJ}=qKt:-?mIw |KIMD0ڞhjG3~|2Bk WKU3Aͼn$4*.-<ww`35w9bX("*ZC{$ # ar(h=zaK1CRgI`~IWR͕&|7׾w&紱KĕQ*޾PԙSx@#~mPNto"yHI,ꙗ=]&xGR`;z:,[5]MV|-\>e4Mok {jI :1;1H0;=7}"A[(3j$@XXlDxl'd~k4 T=C.ٻ3_+OA†{CɹF=GdЉ{^3ңMQv6U>7[h Ϫc[2橲4V*(bҋuUvoVSa"KS͈+Qx¤dn3U1B³Iw8j*hcג潚t8g 56$'%}} _:/*(dE >\m~dɭj k%vYyJ'11a*{ҘI[7Їz'bX%[:q=G΀}jXK@Pf6SS# "ҰK2g X$Tؑkx;tGqPta¨[#wݙ}8Ao]>;n?tПK`ZmDwrҝevk#vgDǜaZ6,1}d,gik^R~t3"ƇU0)ƚ֖lju~>c<ٶW)F1Acbȼ-ܘĆFCVlғឡ5 C?*=;ߚ9 b1`Tc P6}kޡJ uI>D|>8MY+[&)fBsXYWcާn&+"V2^ [:^fi2.'& ̛FRbixd;LnrEDa7? 5W L5!U -Ck&7p'{ w!K7Y 3Y-{ B&vAtS:b?,P<_k_/ L%"=]!fڣ!i2jD3Bڋes0@Y@g^|;<`kJ:06@89 !Aid± ~2CEUz fKxa) 5_2#Q`GԺޓ|!xPKzFB?-keystonemiddleware/auth_token/_user_plugin.pyXao6_qHP.LVϻS_/FY.xƥ,a 1`23C[j9О"r 3cYg8n*sX,i$RpI gd!ܓ,L]>!+?Ja x٢K_?)/ }2= K̊WQsA5B옪cn`K7uGfPEG,罞oQY^ʙyr Ɔe8F Zy|ПzBOi =Ik=cQ3d=b 5zj4nB!S1PuKwGUv+S݁:d+)\Zgj]W;-ًBiNn=\w7%{Wli7uΒVԧo1RfgoMs(&ub ޮ(vn ކoĭm0eWs^63=G5"o1x-{YZ!zµ};p:aA5"qo˓E󥭤zfoEGG;(^uh҂r6'!]٪(MSp5^|'}ЧN{Xy*-tSaw@>S7m/|FqO#R#)mxǔOPVqihExD@"׫VM-]sS/ | ZIlѦlڿi[wateq٣$tUazWiz UfmRqgɽ,{iEG -fYKB5KOhKzGH27Pu&G$i- #U;DPKzF'ޟ !&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^}:~jLGPKzF+k H0keystonemiddleware/auth_token/_memcache_crypt.pyXmo8_Kq:JA686 "DDdKRq{!%N׽ˇÙgә݃=s$*:܋StGWNTnU*VfJ-dJGC qq 섥Oа*J1+NVAb3%cN\$|i'J,1AI ߃b$%x4tl0f-Ne,ָ0O^r߃k)kQJIFfr) #(]t>[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$HPKzFs }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|we:}b݆fł/ލ/.o.N_1]r$J' Z:hH.mA4<+3Dw'eAm+'E'uJ#$ [Q໳`|p6tv}}vy; 7%|{]8|3p Qr ULQAa1JJMY2:`mTAJˤ,,eR8MNsݫdyZO>"unq?|?Rhv| G( q!iIӢ 6"Y (dtp oVU*,g3Ě%A`ihiLRES؉,尽KwRE)C%it+PsmhgCE޺XGŎUT#]bA41 #0ߖ<# )o m&AգVyVEŰ0_aeFc e\kOQܘ]/hI@?#+:HP a0ء"+ y_;.m{R JIYsbdE9Q "LE+ A}=]^aP9yNY eyj 4 }}Ł[U5OEA_?d``?0^w(aw}iѯ \e0b )k q|ы/s~v{{LgNĪf .Zd󠗭T'efV$Y4wWd䦣I'sC׺bژBIZڅiβR X/ (іİVt.d+YX%2dn,>2LD1ꮩĉ6*(?!*ۨHZCFis9"D7Yu]ba\F٥I~`d|M6ݰnm < +}%u5a?5Q`T4':1|*1KA#=K*? }PDl6Im`Q!POHhE-u5ua?ؖ?ABY!0!['渚I,4e:1K KFl[8 $bR;cSrL7eGʕ@NX1u0&GQndR 0M WrH:P6iHDQhzX>O(XK:v/.Po_:Y@A-4!]j:3TLݓl9Tݢσ‚_& ɗ/NşL~,!FtұaHm:_No+.hh8/c^c̆A΢{ ~ [X'yC'&Y>.牣Ѣ,~T!>W3 # =aBb#@ϊ:7dVvdJ)Z"? Z4u]R,BhaT)S每`:[Ac11ji&\I-DΗ/B $0 f? ~ȶ`la kcd -tip}H7+g@ d `ė`?rI@%bU&Ky6XT9&""V6Ayl;Vy/$ц$+٘Ad6& K/[hfɃs&$˸YKSZR,M&osOiO"/qkoO鬍oOx( IqOFʝnɫ: s?`<.n/z 4DbZd[bcwU|5<Ǩ)GePi4SPhj :MBxNqFS-=K:; M+4>Ax􈓴- tfbHXW!|G?(n(?|Y gǽEzrlôh.1{x[%௘a ;}>`S^lD0cʅI,aL;7lޔժu I˕0ax sxxE/;.9 bռz%/_|y|s7ѩzŽsn͆{T<V Xpu@PI;y渶kS,r's\S4z# (F$j~>s{V./hg#,3oSpFv UAJ Ǒ휡nLci)ye<4a4$ "s`y~kɜM4f%-C;je4IO$UI;,gao +o8wMг9 <.0}SǣT5 >ӱ+v9kG .* UUء;~hy`n}I1+裢ke e;o5@ xZRmM1ϤHfnkJ(dӤWk*3 6v ,=D|k²ΥQK۟*h[]V[ p'"sE!YAUf%vhҒaɻ]p/:is , nh*qkZFQϠc8>ND*fwng*NȜMYQpI:DΚQ 3c`pzl'` ̔vE*>[P`87Ds  ܠGVSATBOfJ=1h>e 6XOxӡݱGcIHMœ䆇;95$D 3N B, \t㜏%hAEeXKAؤ:4|'@oɴ#(\ۜ6fў /8 : 8`y`Cg&žI+;wta洡 Ua{KF#T<?Eg;1+Rɫ<5VŦB&0J#Pb; e$Q^q1iFhүzjׯW5":]f1%*( nJ[9$gVT87z;8EhX4}9~|~q};~;zwѶ\̭Wj٭u8scU|53軚k Ȥ}lonޔQNOmZSlHCQ~59)*}fݲTIQ^%ƴɿdbpȉl,٭^eX*c6j;|IA$ī xVɂUށ7'ǖG֕?gV\QmhQ:&%kZMhVŮ| Sli&?,Q?k91YU.(R{[؂瞔-yz5ڍlc_s`9LpלhRgSMv,n\mCݠ>Vdy 6Y`nU;SDC,(C5x|7OZL.^mt؟@ԯ/V+: ߽6ۃ>-SW.190>w&{`YU6Nᅠ㩽oґ;HuWGcGqb4(I-ĽP3z8Ƣegz7hr] jtyT12F΍݊#h?OUU4˥ٞoS#@ !D=N7+f߶I~ӿB9+O$9 l2Z|ҫ)|hh4T+طz3*Zt7C*m63\bvLaDnZaa~ִQsJn)&1]yU_JkIp(*V֦.aRtBnH/*ǩ)Ròí%TA ЛKZbGIHhXcr^d%E:Frߚby3M])z* (i,GEJ ykzi?['%Ma[3ah@ׇ-ɇ -[LGk%#Ǭ!vqlʲ9Ku.wJJ- aIT̀كw]H *X.KZ嗀؝@.̤)ނ<ؗ"g Y+=la1_Do.6EqY\z5M]~lMnŢqʕo,BYM+ Fks NX5)#z3Lc 5C=wzdLuc9K)':S^ߗ=΄{"ܭJoHGyb3K5ҤX KrtLwrC.@捃5~p1(g,3<7GZ1 v*Ʊ ڽZw$EGbݱ\V`Ş(p]_OA2tU>=iH\ 639u#7{Ht9fd8IS01BEOK@?1G Iڄ{յ }UZB]}l.lwÏLSlTTu_7F8cԳKsZv^ R&7VE!ȎҸ20hƺGCG7Z4^Ԯ \jtc%, Ls*՛LX NO͡tU A/kŜBOmfN&S1>e@ЈsC={0w H"-<U_9v &==8j˦i ĩ\EaES& +$[dOިހ{NduZ3C}^>qC~|52п9oՉ ;𢜌oT8.K'*>i_)+cZSGW3n)kS2.ib5R?xZCD|Se-C"j^waLZS3$wL؋樽2Źpp)Be3ӚrݲdryU䏴2ݹć4rnND8lس{<23,0_.ָ2 Y5ky!x}"geVdH~"АfsC.2\ǀMfDLJ,QDVu4\BۇH)X&TM(, n%,Ś?ujh^X{GXJ !"-v1Ng[>!QVkVA?l{\{#:ǣKɱ)C:+έn/-:G6ق3ybQEÉ~n._^]w/~Ⰾ:G6\YOإe^U גvȎk+t>fK(F,"BjM/s;UD)]-*iRq7uIϼ遣vس}3-92>048qhFɡD?}:]z+b=ѕ骰aUIog#R[3%jO w\£,շ;Bhi?vc{{>ÈTJW1FXE4mKhcS:K|i6L$EqfL3Lk>BRB.!,EӊoPvY#I}HCM:>xٰ6?R!%7dȘu*ĉH `.VaFJ) kK']nRf,c*KKhrWW ہzy3x0saH&T?F id7VXNqp /$mD;[$ :9N4ɡ"Bܵm[h2ԯpoOَOE61ֺE95mcYxzCXI1Gԋ/IEy$*1Dc&uJ_{%; v%CR:nHORry!mƼԼRz'&% x,9Ulu,zmFo= yC^Hrqy 9CS K³w Fn~aCN(&/^;6IJT%W,U>W$xd/8]|s{vy~q_}989z0\@sTm5 >RZnQt5__pf({ڍ_ZcQpS"{_a ]ͦBV$*,D fxب]3}jBrXKmt꼒s6nY>SтQ'V4]vq ymUkjN7a#0t{T_zP*-(65ep/qa,oHVP=DӒ+Zp|aTPf9N Ҝl1b9L}AXpuM)Λ5Ea)zvFM Z\vF[ZS.Ԅ7<5W?:HUF{٪ܗ(WwmnGT}&OQx"nȽMXXîn70 9ŵcM0{C})tlU#5a΋ݡ ꋘ8 60muz/^wAwDTWakҜ=o"fy}J!HZ>qWF{j}Ektk9VJS1Mdckl]1;o }S0eH7UEsјի~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-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\4cPKzFFN,keystonemiddleware/auth_token/_exceptions.pyAk@+ӓ(T`9 9W#y]YHvJJ!T̛7߼c͚L#SZ~?_ϸkivgFĂEGױ20phQsZtdTh501s 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%PKzFA -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^nEPKzF$keystonemiddleware/tests/__init__.pyPKzF~g e+9keystonemiddleware/tests/unit/test_s3_token_middleware.pyZmo8_A($&-]Mh7\!p#ZJ-olJcI3y3Q^c3>Td>,)\S'!U\$#X"YH.ˈdOI 'qYA0z|shC_@S)b4uW֡l6Ǹ2A$G$̈́ZDKbBEǾJGn5$A~ I!:ްx*=3H#f=p&]yut|<{?~RY> ۿ,^k@<ЎyIʪ }Yh j,':Ou06ё{ o!Lmܕ&}E7G'ޡ!`!T!DBŠ@Ut(oB95.+ol|X_DM.Oͺ7t2Ok.< \8mu ![.ux'D9^&#Pr=#*[zU(j/ӧRUO!ea=@UPOY#]S=T~[E욒BkS'p75aE?>Ŋm W57}:gc<\`+pԮ,Sr뒺 rV6ʦU}ȕOmxu{>~:tM@'2hڍahH,NW,nNQ?pJ>M(g=^LP^i30Lˉk3r]T`[x.ZڶQZ)k Hc0ڦrZ?d-ȭ\T+8*Aչm0K[ëz oO_+Zrbiu8Nt+X`E;1+ &`4BW7x piuk^8,ƒՑO_$)$,I%8L^""yUpJo` 6t5q5~͙0'%w5hȧzf6ixƸ"  hm'E[Jh7ahinjA8Q٩KhK,O~%%sxjε%W{הek|" רeC<׌jvݑN܇I2ER`]4rV->A[VyG^Ӆ}ҾG޸~ÑB(׎%x#'O7^+b{ :!HH R:Raaj/:hX^6V'{CܖT3u$7Szo<PKzF)keystonemiddleware/tests/unit/__init__.pyPKzF7ٖ 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\, PKzFab +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<PKzF)^&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?PKzF|?WFkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.py}s6+:ӡSϜk+:v^KNxJd]$?ܥ,bw}fFeORkw{g:{a?uGhԏgϬc䅉7S/+:#m[m 6W[ZF k.R"X?,țZh6|7y֭^0Ha0+˅s{"ܔ&L?Wi:mǥvx"`-ǽIfL}K+X1u9Lha{kENcK#m~8m[I4Io(c?IcHl/76Vix/d37蝞_߬{'Gm\0yIGoܱb)hM"6d?uӅ;it!,ǚ{O LolOTXTgcR承OA4pgߒE_0=fsdo bᏳq'tߘ̺Ipo.+Ё7*0f%LTj +Ek 3cgAt( >Wz@yՊ%1@>| <}3Gezϳq PP o۹`]Z7 ]a9S/j3/n`Ys׏7 e k82B :9ߍ!;UXڥkjs <4Ө3oYD֓=u7U Q9̈$6._3-Pq~V%Ն4Ӿ6͹$|,N5-7G2qn ShMg趵%/M;aB gvקgo 6Fk ٟ0k&VZB?u@]Xkyf"Ea;YS>+7q4)Pw{k#q|J`ҶBIFmaN96 He/`З@G/(d<8<)ft&G> آA$ `Ϧ=<5g1ON0?& D%s%_!rC h'$t%|b;}TXc/(3Qg(#l Kqr ltS']νDP''D=>ಶN <"Ux|* Av׷7@r^x^{y+!+th& ȶ~CߨF[ mvɹ!y"&hng{GG /sF#S)_-AV?N3cL ė6:? d*g,+mɟI8]w^ɼqdO@} 2 |ݶnP',2pZ%'7m4bo}R( 634XSΡoӎz!h`ǠYZ9?.pY}x(m%>jVɮf;2Qv_+\Z.ŘVoCnY4EUoAs@H^޺4̸ /6,Icf 5WO)6)y@%ğ.0fz#Ͽưoj ,"ŠXæ3 `YtIr:d@l4D3l$i~Gp ɗ%| 5IDz`zabNW&iNA<6-[OprPs:#:arp;q^J{[VC;Osi]rWJQ(j&ޟ"+9c?6bHdxY5Ev)~l X'Y>ކ^W}/lUŰ9(/L)h(ijtft-#ޘCw ?/yO _Smsx"͕4N =99{55\kgN-WNTK/k ց7qkkC6taD& #X#/N1NM*TIH qYW?h:e# (% zw.쑋:soQb5gӊ:dۊi[ZR{68ꝵ*f2 VR*" w.@0KX ]ubOKŜ޸#fD4R5Y(H"`1Z/rS='uT?#X"P8`$@m/PUGFfW/^SC4 df!s?,~/|k2ol [vfq$yo!7'[m*Q-_Px U97k`d~ "0lbבO!oi+[LҩF;}Bf^ E&YbD(64YLVv0J 6lH*ޓ/2 [%yq(83aZVLJTob}HnIڡJu|n:(h􃩕BoŸtyQfM[Jq#?чT"zha~[AwRNzic<-D6[^gD\|,ZV"ڒ8dQc-k$LƢbȱo6vsYv`'kG^U2! T`Q#d56(tͲ3AhzcVs~Ah64f[mGiBؖqi5< hVFψ[Њ=C.7w5m&+v l*e]}&T-#ƥNJw GkX_JN&OԸB?3G|)Lw;g/L0ٱ$tB ᥷-'va+RKqfidچl1D(5\:qdM'-"RI.乬!%jw{gΫUU$  }M7{mN^O€K(a|}M t` =\鹚 z$;eJ1+t=>3筆Y,4b,pʂ$gΜJY ኊ Yb7zݭWhEZ-{;r1AďL,QЩ\ ry ?`$yUӁ-,@촁&;"V <*.įvic:Z>Fǒǖc}dIJ>U#ȕZjW(RFY)z!WWRUFLE2Sû-8B-ւMsx9jdu8}JҨse'Vtm*Iei),| W ӳ9jĒv_9ܢU$݅LBJIa&@ Yn0<.VlI⥡XC):eɲQ4ƲHa;=uSukؔRGKV?*ii Ear|&w2aMW.]D`v y ŗxO:$'&(Qӻ?ӈ9vcd(ue#\p9?>៍('}fl>D&M~)K1br^p+uuSàգj\H0G[LѤmcmY(b{gExX'QB%a " 2QJ"Qi%ї'|x("c`ɚq4I)AROJkg.ϰXP}LEP"Oon,>R^BOåO (wmyPfg ी:sԭ6 Fib^sQ0w.+;kӈ$6;QD}|w)A,g1mwp:3Ϝ:*0l_W+wIp4My1DeyΒQ򬹧Pfj5o-(?Vvz /l{˼m.]0퍪qIkw||` ^8c[.UIĆb[OƤMpٕ8 yLMAORF7<]+/fʣт'Vw1\3`Ve\7\f2X%LwivHlR(<<[5z6kƋR#|UhIS}L6G"TŠffXpm 뫪o]u$qz}\'N5˞uߟ/mRabu)ͽxw!7MH*=!mP$ ;NZMZZ卙?NAÜWTiRRkdRԣZE.qn zl Xegڃ3"07d4Nj0BfRRK[$s[%/`\ C6* ɳ|;RTz(i+_uAMޞdϬ׽_v[b땅#-B֠n:w%OE$u4͵iHGORPZ3SENGrAsV>5w+ kPs2;zƻ2(}x0) kq+ArNVEp)leȬH#kyu<s2W_iâW9\` zHAmhGG){^A@e!0BCBS fn!EeGĥ3XF1_w[O C>6r&+4i]6/_=8L IܭCM-&$gp(A9| ,ydr >l  iC}ODq3`%nEjEP`<0alY-6|HEc8e&6%7 o?Ը0^0tҖӎ}C}sS.6PضR˻ʬգJo,0 o,~bѰ|/B@0c3@XI 8wj4{?oPfr{#,7ͨoW 3/!eQ~$| @#(V,. y˲|Y82JitC{X,ͫQbRгSUV#`|p2s sx{#Z/i3HT9}}V q%9k/ ꋹ$f \Ff. %@^+o>c~cՉܫ #Ot啯/l򙃵[إT}j-Wܝ[s&L%6HtS*lo> y=a6RSFόBg~a땶6*^jz),vuR:C-uW+ {PZݐ;qj1iS:ꪺ**=EzU@bi֜BVs2դo|*W`4k]:Q٫,{ 6-,I$Vc6AuǑ @ѬsdE3٘^䛹6! {vvz-@9I͞`=DI F^ӗK& .%HY;g5dE& 7~DM:z)7_X (Zi[^^u看ҨJZy]{Ћ?q jĪtkz73pYt]6;S4!fS^6dCR<.h t&t{F#埻g?vNΏ#P1]-hyvoo;QkpKSwȘ|TS:ßK\yZǪ|yiKŕfE$,z\^GKrfT6y̒!GQRnS'uC)$.Kqdde$Lc) }[*KFA b ztUfzxM { y{xtzrp|mF`N?{1Uj1OjuI4Ԅ4$EKs4JxR{ip_CDߤ l GlBOCAqaW"} Z|B{XLibAOFYGU6zJx/qw32bB9.\__|i@ӓca䧉^) ˕_ P OOבOONB>7eB~"8xt$YxVwN,cr Ă207waI]G7$@"(RTMCHx αX9n ]i6T|Fσhj׷}y G+ܐkir؟:Y Ƭ h:[ YQ[z&=*{Ӯ+\ikm08˒B ~fPc(>nasX1{2 Fb(WiRl0skn5S\{&6 y$>&( $|CU>*(Xc+ a=loTmlǮmǼ7ۏ-WᖪW:1ګr ދ~_ϑx}$6"?92-J9b6֒ͶQ?kJ ϲ t6sxqy17_)#Ɍ#jg[]˜"/?oؽmy7st 0͈Ó=(|ˆ?$7܍Sq2B/0#~f s-'! 1Uy j`L;9`>Wx}K7O4XwIIΏ3^s@OLBS|+_5)ֲr?bf )\ y+95EIf=Mk!M]o2PcyK%fމ#HT]*rMQ {ܚw9=`@,R՜UV :%t{'Yf Low&8zWxr֢sG.b %;=w("R|(\Y)9ej bV%a'G¯9גwFQ̕벙:Y DϩWg3+>\W`"s #)HN ӲHDG pl6NUPSއ4P#8~fVU#q^!USȑxr{VRخF4ĒUSo/$<{"( F2q[3'}@E~I)Z6-2ο3Xr!z\1-_椝8 {DzMp VP;6é[Pڃ""I$č뇍 TI]ĵa%{v+  F^y:qRrW$F%iv ̀ s \g˖MGwv/P," 6j  Ļǃ Ԡqcg!x ~*b,B4|J'f()vvdxɊcx+2(hR*Db}ZHMEl}ʿ/9 kuZCn Jà"ZWtّz@ļ~/pdrOh70ӳ2wiEP&>cQ%ŲȨ{Bs%Af, dp W>Nk({4ȫ+aL<151TFd`=@l]-|^Yӵ@q?=:m|/0S(AcT aIcb"Wv%xtY)^v$}ʑ%ײKv^QC/ʌ0='E \~΂%U2.9Cɨ淴%U|mKBw$-۟H cux]SЌ%MZ\#I%hr|AD{qr96̛Ep7n둑@ۊfQsSiCywv?lb`lA)X޺{rpR;Yު)X"T N- BuQ0(E:Tm%T0<$h.cQ4vILig7';%WRǫͤl SPaޜɧq}4[VpeMA=M @fIK+-_j6S=x [|M2KItQyTzuF$JJaPL|R{vǒy+!d~]{ѳY" T ?O1,CV=SIGUEf *R]8X؋&\vl-DE( ;Sԕ.@X7 6 C ֡HyEd׈pgKv[<( TOcPӷ %|-WT>e+ 88rS>l]E ;RfB?^&iZn¡!e&" V q+a9̈́JGyt]Q"g c' !) p^xtTGc)K>FAC9j8Ȋj &yH<){ `-$;m@u",KPJA?kGВKFE?v-::h^|&(qUƌ(nI®}sB"(1l1zcU.(RGzѕꚵ#%u@mPzWE NgI:#1zr^b+ J{+ P(.SaE}LX.lku<\ @ bK|4[BA#?`׮ǐ\ﺇ~Wx9dYz1FU(qv){IF1` nإCJF0? {Zf'82uE:_񉐸/aUZ]vek=#d+͘+0ԚK{{[K#mUI;_T؝}eFcOފQѢ)ty-Feub9e+Y#m>s地,7?HFԡAxil]*9*0pVɗ/$^F5qˇaR SvjmLYSlF{֮m"yeVu}-9$D MNZ!n<؍*qwXQrƅ mܙ1)o2P}T|\iWymKqUοX^;:4ߨBvA D&G&HKi9i_ژhg O¸"}VWIH =Rys2P^ZܸiG7Oӂ718SjwnĹrGfiu;~Tod=K7 Xq]H='g;w/}1F}DVQp˻nkNVIT¢ckJ讔gIJ"1O}z%ǫ\c q1݌hIBlb^RJҽi"lm9rјȫ|QX g ‡Qz GjA2+"29 ozHEklL20BgM/bDbi}$B[j4PYCm=I*Vcf* $H_"= 7Sw-{<4Q8r_|~,1eM#=vc8w ~tNNCBStxv~ŋntլ[^~"b$5F.UʸNXF‚OuJ%'xHmeU5`t!U>ot"&a/X&ZWUuLue?k@%Q*3dNL~{50kt4* U0:ْVhd}FXa)w![!/%jP} t2db"véW:h*vߺXE>F{ 1JN&՛HMBlf.Ub!𹡥d0#ʾw$a $(w9ZP@&c l.)H7FV"*y wx^`RE&ջԈ1ur<~EP2&eWC06Bw a24#CPiA;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+4LB7PKzF-@keystonemiddleware/tests/unit/auth_token/test_base_middleware.pyTn6|W,HJ"@u Cp( V2kTH}ip(a83;;K@^Wh ڟ'Z'8%mtxtPK/;R0m$a~=ً0Sz.5)qwq}tNZ{]f00>e63C}~3_,?:{ir #CdSX3oJ/u3ERV.5} l >f||ӊ>gbϗ7|?,hw /nS@ʊKg2)CX1XbH:ؚ fgu(d-7VS;Сm td%[{R:iE4CkfyorӃKSFQmM :o4`_lP}L"̌EQ$ M \EQX v|Za E!RE;Tuq`,0N>ryd7¨9q791{fmߚbk`du(};˞W?Du/9z(&l̰UD(iVIEl7+W=ނ.]md5Me ^>4]ބM|1HE6oErDrzq{dv|L=KPKzFg-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@;>?[9dYPKzFTk{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_PKzF\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{PKzF1)$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ÆPKzF4keystonemiddleware/tests/unit/auth_token/__init__.pyPKzFWAkeystonemiddleware/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³PKzFg8<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ۏ?%OGs7PKzF]<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$ڛ%;|^$:`'PKzF52keystonemiddleware-2.1.0.dist-info/DESCRIPTION.rstMo1 >Ze 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_hPKzFlFa3keystonemiddleware-2.1.0.dist-info/entry_points.txt/KKL/()N,.KLII-O,JK,-Ɉ/NSU"hY\PPKzFD 0keystonemiddleware-2.1.0.dist-info/metadata.jsonUmo0+Y> 󚶌Q Dy4hE'uibZw/b>%{<Ģʥca=Ѫ0TfU܉rRHQJP1VKmJV \Bgg렌Fi)p12e=f2G2{TqC4Kw D 0?t!U:F˵TPS3˒p\e5|ZAo'؋O~|HS4~ogm ̈́VKqڑz\`PlH^_^?8N6/y0:P$ 2Ľlڳ` QH#_T,X#0Z +,& [ΡqWfȶx8N˖rj4UY2RUݖ%̦r:|VT붒=f|gky;>B{-5gm6҉ۡgt}$-p״SF*m%n&Fn.VFT`rZ18s Nmp*@"I<[%7lTIiߦhHN5RCj0]5v] kϝ^xXsqݕRpwGI/FVVٻ/x⭟AeftɔG )m<%F%F%Y wo(]v2M{irCܹjx~^Z)Sdk kOs\"THe< (,R>:q8e<9ŭPKzFe/.+keystonemiddleware-2.1.0.dist-info/pbr.jsonV,/JIM,NUR()*MQPJ,/K-* *'(PKzF1i0keystonemiddleware-2.1.0.dist-info/top_level.txtN,.KLII-O,JPKzF3o_n(keystonemiddleware-2.1.0.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0323 /, (-JLR()*M ILR(4KM̫#DPKzFV+keystonemiddleware-2.1.0.dist-info/METADATAUr0}WcH/'ɔ7& 04}+Z-LB+2)wޢ;^JBhǬS a3T #7VPu4f#m9M%P9fNZ-ṊBWb6ᳶMS.4[_8Hl ٍH&Cu*ʑD2YM*%!\ j)Jf.$=V(7htr= ShT*p}!6ׂf=%-tnf<#C_S Txa交*z^8"3J{JNΥA[D 1zprSDV#:uN'aAcJOU.E#y"T`N&ļۂɆșw^".Fϧ.f3J #acaS)a;wfdhv[pp=wX,-JkK^[ ;fe&ޯNOP &vO&jW7-І'gzJ\!>z}q*&`piZVk`#Ì46?W`cEtt{B.L,wh`BWf*9"M|(k]mI %yl*t^]bE|*RB2EggVE%a*h1zPKzF\~])keystonemiddleware-2.1.0.dist-info/RECORDWIעX9O yXYA6'" &:3ӪE=w#޽7(}EU`{ۀGc[Kwsk GՑ|_rI/+4eDаqP OY1>^<Ӷ*#MUJˤfQ(?VD@(EQ y>]"_4}׆=sLl5i ~O>(HO:]tҚ%ckPgdɌrXKTc5!_8aA0Wh\Og#꨹q6 f_cܮ2qEʯ0N`w^AD%Cn>%*/3_"?/n xO CnXg\̵z#[V h-7;we/i? z:hZ Vzd*:hMw`@Roxx6]l82s pv1dۜ3ڶY硤 jxx[|l2DA#-5X ߗЃgvJ|qb4SuZMr"^L_ʥ0d؆S&6Ǣml#-FI\M8M:43;;v KT "WtYR m(% 4E)wL1eiLv`sI'(1\K[wm㱄6țɣf˼0S dt-0f$Ǣpx߄4I׶af"fL=Ufso 7a0kBI47j5wi}Zџ<˖kj 77٥Wt{LY.NBV처(:|.'N21O$@N(ޜ9NKư/ǯ-uDbA|?TC~&&Í]=pyFS ;TX'o۟mLq9iXZ1qÌ]Q-C'ԯÂ{mFxڐ5Q|&N| <&j!n \2f[eifu &wᝒ`SS"p c_/ȗFhNoF A|vbA&)ۋQ5Հc*j_ _K?`x\N1K=Ndx'ٔ<ܣQ3\1@=~bZwb_'JѬ}\?Op#Mʿ[BJt7Vǂ$\ȕ6㎬/ľ) DS$IAf@ք_mM~>n3F^'GvAeQ r;K?Q;ؾ= rΌ9&69ސ'.!{:?QuI3Q*%:80F2o˃yTe7A?>QmUg5ơ&v%KB Jq;$y.PKzF-*J)keystonemiddleware/s3_token.pyPKzF2W.@Qkeystonemiddleware/audit.pyPKzF/C keystonemiddleware/i18n.pyPKzFq#keystonemiddleware/__init__.pyPKzFNKz!#keystonemiddleware/ec2_token.pyPKzFՇvf*keystonemiddleware/opts.pyPKzFr!=`p#.keystonemiddleware/echo/__main__.pyPKzF#.keystonemiddleware/echo/__init__.pyPKzF+a".keystonemiddleware/echo/service.pyPKzF(2keystonemiddleware/openstack/__init__.pyPKzF/3keystonemiddleware/openstack/common/__init__.pyPKzF% 2h3keystonemiddleware/openstack/common/memorycache.pyPKzFKwV *q8keystonemiddleware/auth_token/_identity.pyPKzFB?-Bkeystonemiddleware/auth_token/_user_plugin.pyPKzF'ޟ !&Hkeystonemiddleware/auth_token/_auth.pyPKzF+k H0|Skeystonemiddleware/auth_token/_memcache_crypt.pyPKzFs }I&[]keystonemiddleware/auth_token/_base.pyPKzFZXD*)_keystonemiddleware/auth_token/__init__.pyPKzFVlU v)keystonemiddleware/auth_token/_request.pyPKzF{ >-Ckeystonemiddleware/auth_token/_revocations.pyPKzFFN,keystonemiddleware/auth_token/_exceptions.pyPKzFi02'{keystonemiddleware/auth_token/_cache.pyPKzFA -keystonemiddleware/auth_token/_signing_dir.pyPKzFsIi [/keystonemiddleware/auth_token/_memcache_pool.pyPKzF$keystonemiddleware/tests/__init__.pyPKzF~g e+9keystonemiddleware/tests/unit/test_s3_token_middleware.pyPKzFI{;P *keystonemiddleware/tests/unit/test_opts.pyPKzF)7keystonemiddleware/tests/unit/__init__.pyPKzF7ٖ W0keystonemiddleware/tests/unit/client_fixtures.pyPKzFab +j6dkeystonemiddleware/tests/unit/test_audit_middleware.pyPKzF)^&keystonemiddleware/tests/unit/utils.pyPKzF|?WFkeystonemiddleware/tests/unit/auth_token/test_auth_token_middleware.pyPKzF#3w?(keystonemiddleware/tests/unit/auth_token/test_memcache_crypt.pyPKzF-@.keystonemiddleware/tests/unit/auth_token/test_base_middleware.pyPKzFg-m@1keystonemiddleware/tests/unit/auth_token/test_connection_pool.pyPKzFTk{d57keystonemiddleware/tests/unit/auth_token/test_auth.pyPKzF\r0<keystonemiddleware/tests/unit/auth_token/base.pyPKzF1)$8r@keystonemiddleware/tests/unit/auth_token/test_request.pyPKzF4Hkeystonemiddleware/tests/unit/auth_token/__init__.pyPKzFWAHkeystonemiddleware/tests/unit/auth_token/test_user_auth_plugin.pyPKzFg8<Okeystonemiddleware/tests/unit/auth_token/test_signing_dir.pyPKzF]<Tkeystonemiddleware/tests/unit/auth_token/test_revocations.pyPKzF52Xkeystonemiddleware-2.1.0.dist-info/DESCRIPTION.rstPKzFlFa3Zkeystonemiddleware-2.1.0.dist-info/entry_points.txtPKzFD 0k[keystonemiddleware-2.1.0.dist-info/metadata.jsonPKzFe/.+^keystonemiddleware-2.1.0.dist-info/pbr.jsonPKzF1i0=_keystonemiddleware-2.1.0.dist-info/top_level.txtPKzF3o_n(_keystonemiddleware-2.1.0.dist-info/WHEELPKzFV+E`keystonemiddleware-2.1.0.dist-info/METADATAPKzF\~])ckeystonemiddleware-2.1.0.dist-info/RECORDPK22Ol