PKGj'Hy@satosa/__init__.py]OAj@¹$%6r0!.<`8 ل%X7nOEB h!.՟q!@f  1=5c4 S:_@h:4![/(-3iZuq 7b/oe89]|^!<>48lnʼ7X(G^ YYCpؗ[S͏ Z~q ֈ:U[ F$,LZŻPKjGM 1 satosa/account_linking.pyY[o6~M-nBsmbH3hG,y(w/;q-x.9aQYA$M5qr)9%#[ٍ`I6\F5\rC_ĮKFӜ>C'-ݻO^VKķEgb.aXYD ׎E- .2Ҙ̲ .y&y숖EZDfȰ=wA:bS4ۤb.+Z;dPOO YA/h)g%qHM2$g6$}ݒ C'2 QrtS},P<7}k) mc > 2Ygh1vcA4|*08jpZT V(cPwܩESONXSg SjD6'|D-ꨐ5@`P FJ!ۗ (E6کdw<`)VezuɠT T(_uIiDP[ڰ1pndIOE#5y+CLR $릁,]")7_רFw._fk0GIkȪq|e/[7;W.:0?TwԸkQ1zNLҕeݲ4{WB%ZYB:Zkq:҂h`r PK gGV z-satosa/base.pyZmo6_A(">'v}{C Ţmum'JH$bI 8}H,j8g<-,FbDa};Q?YN~i&N6uIQQ=93Z];EQ"(.BN5a\RYЂ޻|F/#F۪w18pCk!j&7)}?ZDzIhk 8ìվh2ԌUU.j@GP-P p8A,"P#тjJdُ#Q m=cI (hy(iԮ*6.deRAC5U)6Z+˦'ڣ-E-iDirl.}V~AeKS(ife6}֊۞27b)wHЦAOwzJ /(P}ūBƷ&gM8sΛ!2ֵynLP *VIJ e" ,PCR܎dƜkv*Q Ԇ5;l%> `Q[*cT:Bucש][n aezpRKaT/I,7H(x Թ FX? +ߐ~3񀌒>Z}([mI{ZGFM=8s 'ɊԀagHt;a;:ԃJ&C$*wD|AVoz|~I08~H<=%ť{%~DtF$w\з|Yz _Q].,VP6HV< ^ZJ#W.Ux.8y`cws397ַI.j6y2Hm:z7>& 9w<~9M9+GK%_8][dMgK!s& ]+ۏȷ`?%sU|R\=̶nHuv{?$d~! 隼HiwT}'3!ꝱZSĞٵjJF 3n^ ŁDiel ?Ax8@[㋮C1 <so@;GBQ|zԊ*L.#* Kʽŷ#JE(߳Q:h;W*f4/.jHjğX zwSuU) *!/Mn߾2M;{O Q:\,I͓wbՌd#9]~/J<.ؕ-.7*swPKEsG/˺# *satosa/consent.pyZ b4).( l{/Kl ckl++K>=vKKK{ CǡEaeKvU[FV %xD@Uݒ-mETTfvdI{"h蚥߳rUelj[ǚ\)aWl栛*K&u]Ղ5'n5/ڵZ͎LgA. $ҪkBщ2XeiF[/SG-?J,ͻW&SrvWKbf*F23@j\ ;DP`Ul'뢺%9$.TrYѰ1/ aiҖDMF*Z?3`n&%c$-+ Զ  Q?q{3Oq&}TO j$?Ӛ:ѲѲR0=[qdmWc;IL.C e.#)Z=_RG^I1YN lFX7q=LGm*Zdǁ#A>'/o/N~ւ5¯<=L랐s@j4&yQvx)**/p/(X 2~,Bz/gZ,[vy;C@z>љ;%ȗf{2*DO^^<C0RebŚcM4a9EkY `ҭתK XݴSE61]d:}7=izajFW[,[#x!)Ha% AObBy:@zO(C= PH \\n~KAƻ0uzwNN#ĈdUG"wì\} <NJ)+"Q(d,R@ml4eGKxbH3,o}FxЪa! )n7#tqq+ (հw^@v 1O47 Z69(3S*Sٞ]ypoDsXdtjW_,k$4wqP%K*jB'喭 T෫+;"H$r>OV:cCZqΨ#r4' /"iN9]Iy&~S;= ;ѷGDM_;oг)NUNcl*Yml5wM[SLK9o d?_&Ui833TCcޑ mE VzY:͛4Umv|W*Ʊc^;Hٰ;oZt Z$^=5qeQAu4KŲk>0:ߜ!EOV|\NƤ7/?@a1qte=4)el~-IuۿDae|C1cF "`'SN8RzmfNH(H[{ω񗙒MS?/r-J&f!UCz2Ng+x|s@hk] :(p _ԉ*;?):,+vEt%9Έ폆࣡I1yw#g;0I!A`ssףCGV@@bt2y`p`i%%[5oU2EK8UU~h4*јQ h [\lDs XȖ "j6EL#S;DD1)_\qſ*<_D0/8,(#ҵʖkz-A]uC@~j$FF 6D$IJ _ !(Bp/pQP|j}l*H v5h:{Ë~Mr~u˺ݾ4}*v{ ՠ+Ùt"zWO|F3<'bW5ݐ|WмZ)睋NXL'F 8W?1N4NN}}tPKYyGN@Bsatosa/context.pyUMo1C[)$D*j TB5ٝ4mY{?g޼yzQ%:7<\i $ ^ XgV sgu -IA.qd|qIdJx_ٮEp(~xXȹ~ %^Uh ts!2H͊,EL'f&+CMg6)KsHS%G5>K3;޽{@Jg"{~piN/`$eF([ $:!=!jhu ~MX4]?̘G{zĭ+>P%oY*<#8OeC*4ԥ/]*]K?ƴt~NPV!V8 *9pX5*7k;lOziJ-?wP#&%{e=f^yV Uxݖ!{\Sq)Gbb3⠉2si::τǴp+Wbing\_'7Û_MGLyD> .<. dB-ћWo_7Ct| wNBy^satosa/exception.pyTn0'&EVgHUSU! Lb6MQ NPl޽ hUVQ$\@YJ = E2Wi28s’8 !ZMP>sV}'[Vy'+Bziݵ/%n:weؑT:^Fu@ܱ&4,*RCQPFUQ$4ƹb^x6+'53W$V\b4p\>DX3*)`ևkšSe"RI̍0d|t:C7` ?Pcڐ  Z|>B6TOUl-T?͉2ɭ)f SDu0SXHNX%˭yPKYyG< #@^satosa/image_converter.pyTn0 +Em .Er((PҝA`b`Kߏ:κaH#-!DgrAp=/;PvC0Ay_d5X85(֙<㱦-٠1h}vθw8)a jE=E}^_l; $WJq )(=z?"gUs@:<-Gղ~b9D݅XulQh7>EGaqi%5QĊ |p[,czd :pvb0S=n?(6X3#ۈ Џ=hSg"TďyjDzkj$(7"V eb?eqA9iP _7 F|C '~6t>ة| J1.YH[4n0 {1O}9&|X?_PKy'H`TBsatosa/internal_data.py[mo6_A("\AMA&0 AX]YrEiA.fHnQ\ tmi8<3Invr)ٶM_T #UӮ)jR}A:z(^MIiC;h F]ѓmѐ[JF]ۍUsOv<~˫ᄐ: R4tۓT aϟڮGh_錳Ͱ'|vW6b+]t]fy^m䜜]W_>fۺ`|[0zـ|p%3%#y^5U)\.ȇhd5Pl 2)kzc{gfb~HSZGzQwEi6F՝7{aI_4[ a`JQm)nd7%ߎW_AH6ڻQ|ь7}ѫaGZ(y]u;*߲<ն_Of؇؇wd>`p瑬O85ŞʉG[(Bl6|}E%B>#"PCYOK-msd)Pe3}.S hau?'j?PxK2i3Y:Q C֦0oW<_dqr0HF1mb[Zl7w}பb"!k!<@yH )%9 cɴDpSbk6+ܶm:_wA;aWmwZ>U)$mUn} Yͣ|+.c9wз13XeCY&&CJ&#Km:T*5IT #V,$:!LYD4^xo];q(e 1h| N 3j ,97*c.4|$|/WAh4}99I=#2Kβ<Xs}!j- 0;6Z2Cluٹ+f u+S!0ީW͸,>'aFhh`|5Dt䷏ڮ+lO]W% p`q]@XW9ϝ&ynd )ΖP!X[q[hi#.A/r,EG)b#`m+fJ9&rvd gyДMrUU8] A$爊% Ⲥ;ԕxjQ5GqԼ %g엄uŗV¹p|Wx`kx~ |Fn\ݒzx޴zD<9SZ:3%U ^MXC];%)y`g%9X/2hV?hV))'AA@+2~/`7f y,1_0naK>ފy&9f*M~Gr\7x_՝9ܩ,2UHz@AH5L}hڇtԮBa2~|~B秪|N2N)<>7 l{d9fӔYN3!XL0Oj+!~*M~j27VQ$gOg6gyb@cY`-.uQ5Ucn.UbqUtѾ҃9nALdl]$\ qN]We=AՔ".6"{ ;=T0> lK}2R֟aJBGkC]lEV.W+fFׇpƞ;lbgD=a`m-Dωn:uRi"=z,tcνuxf LCHÂ-:4ٜpRI\o$u] tpXjEzC<-̀erDWYe(x*ec+rw{!⳾ qiؾp&đR8-B\oΎ#6:#~i˗=VDOUnt ]ߝLnD"[F{fQL@Qe[miv +؎WrUsFO&LY매dipR=bP ď&ubnYc o xF3Pz@ qVV{ttK+*yG1"u!|$_Wj~niUvx=ksċffEc+HfL5i9kNaGw>֍oǛQe'4bvgΩjuT,Eg1lGXPܯu>Yg9%yU0-tYBT//o}shz?l hЁ AɏJM[@6xbۇVɸ K>g|HsS:C,K䬢{lqfІ};\PmABPK gGdksatosa/logging_util.py}SMk0W .FɐC:KRe1&e$[SW_q-.zy ̛Xyb @j;ǶP!7p|A)NPsve(e!M_"ȏcZӟ O|wȊ& TXk %+/5_Esc {R!yQEv /SM t_m;|T4Sa[>[e&PKO\G#^_ :satosa/plugin_loader.py]o]bղUprv>V2r$䒒{vG IRxtSlَyRE.YU+&yUHΖ^dLF^]w$FTW(8Vt4Ě$!g> %g12]+!3b BG˴c1t aս` Vͪ<ݩb4moѼ).4A=}Р_G1{YgyihaViR݁Aa}²TbPxJD4Yd"j3- t%0SJ>8될WPFi> ~ʧ,n^bk)hrNhީC﫲?,h"T8:i~V wne:}&AO@'yhKu, ztlIGw]ko=RPz9ᯛG:5t͞NzLdz:kjhT?8Iwy+oV:[zvԢ6 ⼞~u]h?k)u1Zzxkm"80h=Î\#5iu̶9Wz-M } >FF`BiʝC@â\f鯋`|ؙ32T= өm 'PMA#ts;Xn遹 ZʤF X ic3-X`D 3/P4^ԗ/ :"7M}#&sVD^r<kQV|puR^']w\JȰRst?AM#VwdLUbC쏼N1Ad͚cсfhƂfbC?Mjhd`ݞ_ a@5j"\fPPԙ3[/=j'TT #FoE^Ie7@l,ߚHس cuK'S}>׋'S{,e"aƖ?er:[Ws?[tӡ'zx@ i8/+BdETF0Ƨ!R~#*5ߓC+={+{wV TvwgV̲~uyMP__B9@+o5ݡ˺lr&'4 ;=C`RА(^]48,ny׭mSW{ :- ],(шE2N ;^\ÏcB?3]g.|,(̇Anl ܢaܰa4#6۟ y)/oyJQ7l DZiTM 30(x|TXs6T;а$d4:Y7y#ZtNa8 2w H 22E؍ay`Sc&qVj3 /9t%qz$?T͛Ud:d{ǥeoX2|,Õ^࢖x K܈r܈5  kw=¤kծ厡.Oϙ #VZ$/oke۝Ю#@zxX~G )Z3ICOڰ~'FLrzqa˫ɷ9U#Xf(F:џWE_RSz!_~dF4*F}>ua3iww;|5R/'h')cIZ3K M,kM6bt-m/К^ 6pEPKkG.nsatosa/proxy_server.pyUMk0W`\z*6aCBl[z(E(+Ti&c{?H.{3z3#u-TE[V/6A!an5^FS`E Kk=XmCPԎX..Rj=r:Xz*t/BKō 'Iq2| p6A`yTQ~nRJYEdΑxFp_~3 #T(dfL OX+dR$Pj"VFB!"^z Q4s"Ñhx@]?'SbCi܏s(xʋj7Xgلj&1_BF|mba%CUF=]z 5ےf@h/bEB=,G71 7+ty-j$IB:¤ɻ$E$NO,_ѬpH+= p?>X/z}G/WO78'->H_S0@j`@, 7C‰ Ur+j!UfLrI 1Ǎ\VmeTm1l#- 87[ꅀ}*bғF|y]&ɗUz8LLFV(IhA$ 8WE 2ixaG1hŹG棙Fhii=8. Q,3m*t?ceE+_1Bs G{FV mjɉLHCWhMP Fs q&>~*) nB~:tP뮫,ZCaSQ /EbYg43c*n^3 ߨºTDyCuS)sE^sI #tUBӯq&WuG%oiDxNdN3Sjk2}uӍZ=rZ5`0yW/ ^cnE@+`S?t ݛv|zW`1\\†;\G@0K7BduAq&+Id/ E<`$(x h1 ɂ B\TtۀŵSxZ١}cUu{:"_qcPK\jG^Q6satosa/satosa_config.pyWm8_˩t(iKt JU 16(NEmNp ɼ>xfa M*)RN6JLH^%䊤%C3=&.DV슌BVe$sY4#L};EAᨲ|JS +/ʿ'vHRVRrEz{2%pYv"GAh9t\jMN>Uzn5pHxA'ox.*|0v@Ěv^1Mo&3zxOKv1{O8,xZL^߯dLmv>? o BҾvt,աς3ǽKm8s(?S&`4g %FPՍlZ+L5Jw ʔ?C%ƚіZe AP[H>l@N rz BzG^ O*ʩ:EG't$r2SZ%8r&w2p"jð,; RZG)]Z; #0W~5)YrMt x1+pHRC)3#^ƷD4y!L~}>c%{Ό<.lŵA g "'_E"v g|AKs6hJ-yWvUOĨv!0~PK gG:1B%I satosa/state.pyYm6_AԾz6: / 7 h[,!)Qog,93Cz<nI2.S"idi2!b3-g!rƙЬ\{LAlxvbIu"3 FPB1ls4Bz"F;%uDR~NDSABfClk*{K?r>,/E$E!ՌFV,YS E7<1 X7vZ<_"NfA|j+nX$u T4Z߰- aƏ" 5p㛷Wv߽]Wk~hm֫O78uJ1b3n K&\fLdZ ?ӌŢo|q^f 2>#S.Y2GVJk*7/h!˹G'AԒCH$Nv Da>8%=r#:sd^=JH3ŭ`4J`KLI}[wRabeDj.t9[R95pbpVEQ>)/,+DT*̳""ż <+YIOX_Vә{J̬ (sw{0V&MvW܍Fc\#cgޚHl2T!Ԉk!]h&{: RN{*z2fEJ BC٪~^)ST8,i^ůYqAi^=xiWkRѣuGV6!^xV+e ZV=ŶOƗI2.bjS̾{V|s֝8LLzdI!:sҀG?q`|طhXMa"ҭ\PB!O\9y,#5GOTd{xX|ӫbKadI!݌Չ @2حAvU&i<;ܞеŬ; Tf]̄;>P`[@EsW/\{O`0e < d$@qe +5X:h P@RU"hl{z¡Qb`[}5`#^dF]@ 0h0&3f4Ph m*a%kdz;h%T׫di^Z [΁ u RVtcC1a`Z'YI!m5oV{v8k[0r7o:8ȄHaXw8-(sqkƪX*,l!\y&G vBCSw9 (Oo.9$;ȸunQ>TaS5X5xhXRhwV #x*Qx<duu\"mKx2׷wv,M 1r٥eq8#pu"NU;]l l?U^m{Џ{3N'/<ĶYLʴS? 4uh{Vi<'t· PX\v `z\ktPӖr=' -cd,Dԍu!`Z̒u9bhgѐ ?gԶ ФIjW_wL]V_PK4szGY*satosa/util.pyWMo6W, Hl(ݸNePXF$[w%YH!HGO" )wz]=Ji޼-يQH"#mТU`|Ŧ,&YZ|>%b㾔h[bC2SP28#zEMvlǓ:$]ѧ.IY(}gT<#_Ă,E\o'û*u $x4(g1XjtX reβ$e98ajJNG8 ^$g$~K 6]$kJ4 y-Pc*cC̆w}%̀ @Ckh N3C>8*d2wmX`pJ%,h@#+g7*\rr9!(M[KSM:=6jc Z-s:bE)JyX_Wt^a'N (14uˤ?dkLo:6D/f7iFJߗvIO|X?kӰ}a?Nr85|3I3}%?"Is)=& 22cfA% PKYyGMj|satosa/backends/__init__.pySRR ,S(HLNLOUHIRPKtG7Qcsatosa/backends/base.pyXKo6W!2նE( @ԇm/+"mE6q(Mw6{ë%y#kCKsǕ5Y[uZs^smQ DQP}L@u$ ;?xi+kLI^>0'E!ja"Ӽ/ )JZUXpUӪ(k m?+snx )h7{~F֚/ȋ:IE0Q UԇeFH%]od0PEO$(ۊ%K:{@uX3 >'A+g`r;[loNWo.`~qek1e ~HFhCflb{QT?mE2#\ _!mT5Կ gͷpv1Än*z. +T|2P)p10GSAlٷ"H\ G}h+ 3"e[1 ([@Ng;Z`}z[.:>CvZ?_1!OQו<șk|K&'z)8tqX8Ͱh}HF),;J{KN#ivנN/PKh%HY. X3satosa/backends/oauth.pyZoܸ߿4}Y`{ž96b}p]+qh%k DRҮlQMׅ :ߖduҢ$+L&geͶ]dIϬY՜\zL"SlQW潬n2YzC"KmQJMqH%Ӈӷg?.sD+:.5NTl7ڷD>;H6Lz Ωů-g~ em-hb/rQ}<;֦Ҝ4͙RPYZyjr%G4rQVE&9弆&Q.yE4|G35Yrm|X_ ؁vVވzS\X3jJݹt򂳬:8(IR*iJhMW~}4|GK@?+qVtt:LA+#{5ˉ!fm];@v/9[4-MXr5#AAۖm lU@#XjleW-+>r--K%"\>1xXc#?]PumÏ6K!+LgNiӀ0$/2IhZ2b. \ ©[^9lr#q|䁕mWH6}1>r"R r*`"*u{:'zb JɤLc+:|&o`$H0%k蒉t؃})ɿIY6eTQxq@m::&KT‹z^閗%z)_$C{a.x 茿 $?׋a=M&2kF[XIlC準kʃkHCƋߕw+ޖ~@Bg`HJ@yYY@^OzyM`S~$S9 !MgQ)L&mA;CSQ9X&I@䭄:gg&~ZK@аrSGgb]烈E7~hv9y*ƵGOh^MgXN!1' f,9hm+pLQ6Er;]9۪DRy@c9^ :gt[qTAsh28+sK%<ߚ<ULDV XjoA=CuZɲw3VmpXqP/ΡGy"zwz=#c>gwl B h|qWZ%WPrS*riG2ȳm-Qv&5vp%|] FW@d{bs_vI݌%SiũS!L&ńo%dC)^='&5dt;a=S 7q8ӟjR#t %p%;-ggz \3n#OqT1Ta-+hi h,8|D[6w%cb`׽p/.g%eoxm'/i7UdٖspDMn҃\TNY8RpZtTb،a{Sq\|sr`bώnd)g|-C0.7\RSA3[ :9ӻQ?:/ZV7/ŭ;tN+ٗLAkeS'ŇLIh~QHyTG杋}44[Q|z)_ %8,g [n[e){fRxfvm%Kfvue؏Ф^ wة|򀨊mǰoLA(e ܧcaCo70ht E }mxT 2sw|^:Y! -WVUiHkFU\u\i|pNՌ2 ⴏZU0Fh?s 𓣰vE$8E{MS^֩!W*蠼Y׾bKu+)22(0}xsX0m1>74N17 :# Ƈ8UFFYBP߿aC~Cÿ7z%Y\}o~=Pkcg2jJn7tW41KQx 8jv (s;%ЊF eWZbuq#Fg\huQi&۞鿻g e#W裹7E۶;NubsVo_'9 uTkQHhSb/STi 8W7 Gz1 dZ/ze+Y84ch{&yX-"<&P@VH؞;Gf?N/] 4(4e/C/\VaΓPKtGyҰec!satosa/backends/openid_connect.pyJH-$9[W # k dy?@Ԟ>34MOۢĚ*yl͊Rp׵IU lYR?nPuӭVl]tw@MW>^\9FjXg@W׋k>>TQrMb?SMlqZO߄j'4~f]uSylu7EgD+G7)r?uq\>ӥjƺ8x+Te?+FC7 ɯK+m9h{Ӝx@r#'8_,.8賶a @x,y-Eh  BUgYsZ Y(edp&/ 5V~iiU!W`6TuZzq)iǤh7*e B^}zp%(LKA'7ɇb5Tu81<3H&%YzO ނt aӀ^ Us')䙭Vbx{I-8%`נZ8B:)Q&z[/F4!TF f"jC?RH|,8EnG2s"G+.V@7P"$׀ Cjc׼EstD_o\8w @h2z?Ϧ:TGvGdWo ?UЉNwv8O@o{̑BhB݋m^n`Yh6ojQ1Md s41;Z0@CY&[ `ZD|nRF73=?lq9Rf{v#A0؃ "~/o>k=KevJ]W)y:*Fx3`W;7d*댨=%Lx,zghr3;J PjQX6nƠOu/# 6k}eD/T㬨*K)Ȩhjћxi+)&T{OFͺбD抜 = L0[[]xN[^;bh/ t2z/b0RǹPsr" '|y:yJZ w|fazFa_fO[QgC| &`fm=2Zm竹yxU:2>ݲ[uM`uB.!QjabJ~# Cޮy$MVmQ健䞉z|xh3+}`7\v=arcuTE$1Ozzb&֙d K[BBD$R3(52lt{ 3+\<#KGؒ}1:A%u j)WmNr-? NZx< 6(d @4Ä,9m, ^j3@o&jc"~?a+]ϭ6QW "fY4X$ŚJDhJlNpC ڦ[01(9]$~m#ct_5]:YzB)!}dzsC&2$> 7rBE-QdT^GwTp[7!nD$=66‚;kLV੖"yl|OnM {wv9y|SkѼe%vzX.4)T#Ǩ ~bڳ`+֚ȘEY]j\1tQf] j!`pYȕi~0Pb.@,RQictY^y~$MW| ms h_1)$z]t}DqdGSx~x{m8w_UT:(F7i+1[m2`Ks 5:2cک&;Ik~6ϜERɓ;Ɏ#殿e/s>%M¤| M9J*¤W!Do3S?`!3cئfH eMQ@Fbi黇-ԫ \}WU|,u.SQ 0$-BjVek38[OU L4Jg- HU94|F-]1ϟU$5^{hbl2 ۮ)/p׽3yOZv]3,ێ;p@Sk]E۩ ;G`xT0\u"@93jgiDr.X0/=7c'e/6jaǺJzLs%.=9:9 d&q_4}PMw. C'"j{V8m~l5ѪWGbPQ2>G߇b16NPb*=hG>*5} 8ښ{rxDp 8#PmV!tb|!rcIK.TA7j"#ċ-0XFDGc̲V\8?4jPq7mLGv/X,twpo"Ӟc%9n[k {]-==depNyߞ~-(과dQW To6 vuz S{B;%6slx|HNyʞIy0Id@Y-&XEY2+ȵv{jK_ v[ƒx(݀$̣ubwڨup,<曞}Nl>Voi^FSGS/cd:GGˉ'W/[z,„f%aS p}uy(갯y2q9+lrbl[ؗ >WQ=凁%G4:|}#Fſ΋Uvv%#0@Wi5;Ddyf'@Bi^)9ĵqT(w5m&>ۀMsXTv|YT旱KBIM~>E4pR!FG<^ U D¿7!Ve}wxj-BsϪ-\.:C]}W9w?|S׎m3z-^1H|MgL;Xѻ*#Sy}}߀ Uԡ8bT B^zz9&16K>jdjzQyl}tL e>A]nVbv5Rڈ;j~J\N[`޷FyO"{XuqnwQw33q:[я遢Qqqe4 WZs v~Fyo龸Ʌ=;Xo%m%), mW&u䰬7sz7#@ꋯ&gR[| ?HT\u\1 ޻[B"RnP'?~M',G `;Yx{Ȭ]ahjA_J2GDT.na$]"7)4uC zbdʫ{#]v_BEВl܏zCDO|`<#܆`6Pܮy3%XNbwsY롷cM94M-0ԡs?0!Et3'e_PKtG}CvBsatosa/backends/saml2.pyms۶,5v:7vSߒg;j<$6HJY$QZlbd{KU.~{sR<=6IItѤny ruɆ^]UEnmF#%ϫ2jssp"6f$.R˙h|#tSZ7ɰyz{yszڂ5M&9򲡬L"9m Vq:]ZUɡ/G.E ָSrAPeBq䅦@RݍNP)ߨNgݫ)d- M5$isE/] xf_#cJ/c6%ZNw#l61F\yK|̴KE5RƲs<9::JsßFɉ` =^(S2/21EM#/n2$q Ú89-S"I! Y $D -)2w7W zd4`dy̅O!&٘^6A2={|*fyJ^Ll7p$Q6 f_~PzR &?nӍ5؇o SDFqy3)y uvubLĚ] eSͪMI cY4OMckBݑqfͶEvwE݂0kJ^&E&|]EF4mS,1`|8&`]19ѨsF>M2B%lzw*zwxl{FӘ:OṳpY'Bji76oLOI6iIgbGq!am,0#&f{q @K(2``4H {a\fexdp\( yfH)hhıJ(=V ڬ![QjZR;Gy n]e&sm-*Jj|ZCCe8e w `0=Ɣ[Oz~Gq!4.ڴ<28v1 gfс (g;!.YcmDPBd2XrGN{ҡsDo塱4؉Wmʞle20^OH(,J|]L!?F>O;0Hhqy20缇N@CANlFuX\D(d> CYxZ>1NAσM%͢Vǡy;^ȡh mV s'M^T%[/0-c8Z pWawGȘ玲8-v*,ߪ!gK(II$}ӴuA"60p L!,Y uVÃ) xLTFZ<X 0'EKoc~E$B̀b# J 2wĨPe\)3(Gz@ apG/Yi{ <˹\Ok߇="I|j!odR֮]̕E2jq`F檆s~?n1?@҉K׺TS-#[81Paudg 0[ 7MЭNsk2b n= ]Eѡa<}È0\qs@n9pb5f+/R !CsAcʸ*u "' ׬ܹeY<;ݫa+Pd򔄃٭Jغdl<5L uVCGRk9А 6L0ypf eFk _[04bωҲzH4;.~~KAKclH-ȢOuvY7:"^.:; 6u'if{fsApl;^S8^ڴV{"Q"t!y"syfft#'TBL2;BrdY8jXg:o o߹bE~E֜Rr41X Ԛٌ+t'VԮC&w]w/8> NgWqCꁶ}̆2Ưg}[VX+cA*d&,TH9.5Ms O{2ӉopǦSR"]MZ8U7o^_# + cUPrlU'qMmh:ޝ3r9Cti]?YY9&0f.k \ct M;Y?U> ne?լk~]c;!,τ+ %3>Ac6=Gmj0^e-qÒxx',phU/lw.X#V Vb+\JaG@a#ûBvg0>eFbHF:ʰḊ!*OeF=1zػ؎OB20}9%FnSCR^)յ{PWzꯆ l@0@FkVl| F +=,&s;*fFŅ.iTfmu3sgM܂Cïm~iN]w2x!p^7|϶-'s/Tk7'Vo%~GqEш*2:\O*R4Rʵ<e桍w2px[]Y+W^/3i )-y#wА{8=ʝòZ 7-N_ -Փ.}nG,̊E%y.GV_0Y ڲ"$e9nMD.Qhr]Y`w]`~Th-/Pg:{zg?_[paݬߞ8t(]I?t6cw^2_-8'`.vr1䀷X.c٤1~;\Q!Jh&T0uk#D!g`M.9t^5&n7#/ 7s(. s뜥DB|0"ĩY"i=!89p{p#0ku5p0o<{`aLtZ4S?zh?yaB%}0Z|@/Tc9{? ՃE/ԏz\YspDxA1a>8qlk x_3 :.,n=fhF կaBS=B$`W P0$cX ޲ҠQ`4]S Ϙ6DpEA$~*QlLJN+FV)* 1-) <04`a=ETkw9$XEn R;<"k,ākIN`/w m(/[HZ,ܗd&UIe$vM6 OJA*ժQ DžF>}ȳf=iZ?vx52T59I=yPKYyGMj|satosa/frontends/__init__.pySRR ,S(HLNLOUHIRPKYyG tf satosa/frontends/base.pyUn0}+FRXiK>"6uDIޢ-2`7`S_M\U.6s={D) E!-R \SA%2SRF ]P112=UDfJKQy _h o4ի|,xKFscƙ@2_M%{LH熧k^SIe´=oH?tg("aj;_C;ˈ&]`o?t$Uw$#X JxyRM$ v Ap O @rLNLpJ(Z$ l B8<R]ʭuN.Xp6'+sSScW&^#} RYhԵgN gzq)-:&iK`ޭKnN>5tƞOGQ&MNN۠,1r3Jj#f!_VuI+fWR N*S =ar2lžje5jQfw 4IqYU%h;'4N)c Aˣ!:کp.гdyjګ7K?6}8H&p6JeT?-oQ*c<ʌQ7ڍCW,ՈɫـB3v ӧWݣO_wGUbW}OΕfL% \Ѕ2Рro,mjZρ5vM!p0XljmVv2-n ?*8xklgT1w&;6odv0ܝseM6 ~ū*0/!m#_W:-eM,Zmb5G[M$:{'~ϤjP‹ibxxAЮ7 $4Z$MVuFni SI ӻKm^}S,%mL'> :RPKAoHU٧i͌-9ͳ:?7*E^oz.3~C>dXASbt6 LΜʌ5&j$a7HUUͥD, GmQ_,QY4b)65z2PzlY( 6ϚdJhő:^󜇓DT 4Ƿ?uYhHnJsZbj\Z)$ėrd¡(8b[K8w_1o> 'A'6cpF9 yBgL,FgƓ^YȰhi˾ 26s?(3sߘWkc. ,  Z~ @Pa6n[_o{ۭ;ꃁ1ƾ7W\2/a<@#,1*@L0#3Cɿan8:gH2s&;!"a߶<qh0TN1f\xϴ9'B1NyAYݚo9ďe.HanȁI| -Bg_fCa457<.:o>OSu'v) _Ĝ4RP#Wst*uk?nSր>p*ԏtFx;hPsӑ,e%{9D>'WWyKyD*'c 0+۠ˑY{F8iFd74Jd O! A jz dEagrgJ5%ꍿNژ9 ,:%e$ֱκ|6j.8ߔ9j< 2mDP Lj{bQv 3IP2ϫ>-FfE2/WHgrbG U» H.i ƈTc D0r#iш!PeVD:ꁷpC:NyRO*i=͋ LhLIwn:;%tަ~6v1v S>.63#m@ -`J4oȝawt1dF5PqF/X.I%:]#r?㒑q+gCr-"&VzsҏzU;7rlXh峴w2lxj7X[K!U}L,4w ]h1Mpg0NǦk׸bUZB0TxFlwOk,]nr4{V\uTQxL&04c?|zLnؑQXJy&պa!0}FV[vˈ$tvÂ;?ڋpѐXg?m+Qa1l$l<qE8b@1  ϛl]ޔ]RhkzM򶢅]wEmֽ%(EW?8l!'PRu`k#o;0:;t\ Ci,#wۺђomvnYNٍ0ūbv+5jܢ@>iZy$vˮ3,hkFWۦ۩Fi<̓*nݑQD6F2:(2j42WI#rd'S5J Z#* s̤fU\Phð{-ّb,A'ԻE"'cm@FȆS4;'u>>/;i Ka2Vu]oȏU͑:K)(",% AS&+ z>AT 1l [g, #QeB1-jc-k{`-h'+hzSc%+g}Zj_+!jv8YDy ?q#RKе -a$1SⴆV m+X-+yZFX ' j" &=a%F69o1 Kcrxs(PM2X*ة_n۩8deشkLE G)z[Ҿ2W9aK *){z`$* < PIY4 /_/_#;Z@$YAGD~kvҠ`" -71{~"q즧/DƝ4YGGv'Mѹ:\P;Cq]"ꘆ)1އ$ί9Z?g_8ѴD>Zٓg=rJ9+ 1ԅm\+mF3ܡF4 /zE: /3Z,B~WGc^գԫ.#ygNKbwYUwQʅaܙ}f^ݜd=ܛYe,İ) ewE/J%{LLn + .th{Ts`W&Wġ 1OsxIf(ן 횫j϶ N#\B0<a*{[ E?V%y5`p*>I׬>N?N@xp}f9nZd6t#srtjnejS@j HqRDYI]sܳ!|}8q :}hv8ӗ>\L Wpw;Yj5\Zх)NOY˃te3EtS/ O˝Ps*t22Uè7 Ka?9!q){tπݙۡ N4{%,7BBP_zelhHCVöݳ;Oվ.<+db٬oSeJ$>Msi(]XWJoflJC_7Vbx^H򯜡J)/"[0hX(dS)ve 160~$*]yy-PξP(nocSf|^r捔'^ʹh%w3#tG jOz\ jCŤb-p%gF6!+lVN>>WQ[,&b-2"|^{T/8YeYx"Ye _m!TćS\(ҦH&.Z}lԘ8R so1i//V3R:~uN`SP%]ҥsdIM1YzS>n'okQAp2 K JE=ѤJr#*KLwe;e2 M$c-<LyŮy\˵RR&2/3̵[ԜҼ?TvgFSWdjjz:9 pT"ol+s ]S\>50`;tRȘʁ+KE3yaM8[]p/-{]#ǹS.C6XR3oHLsܻԺ}V{/&oPKYyGMj|satosa/plugin_base/__init__.pySRR ,S(HLNLOUHIRPKYyG satosa/plugin_base/endpoint.pyTj0+."4=jmHr 9N soQ0ZVV*hkس;qIa0JehffUpY6S{1P&sRg66!_[[TuhUI`R!=^CoR`m6;v&>zVbk3; @)PZj- -RPvi[g߫W9y~f7jqV<@bÌ) -]C/ sH/ Rx]̐#O㵊@n XrCeM0"'5bU+lq(?z,BS ĩwSoAH\iᔉ̜*{"OR8-oL'4a?*%UiVŸl( =h'՚^j̋jugx9ߪQGޜϯT>O gy.(gB!PK&Y-H\p n16SATOSA-0.6.0.data/scripts/make_satosa_saml_metadata.py]o8ݿ |*?m._hrX-7!)RdzHD'Ù{<6˪MU7,\gQŢ(LddVbG9:y񇆗J ^䛼^u5M JηbYܾ|Xr@x,m͛ i ^6E\bT .I_  gǸAD-f398OT;lY<]]"t8}<Dc pFC!&@ ECw%i9*H 5%bhV& S 3pX$n94\y*::1I\hWx۸!=3҇&R(o֥`LffYGn0rhaQ3&ƣm(f51;,oBf6rnl: ByG 6Y&LvHi!$:~j,,i5 lAGIt1FA|6u'mA;ՈHA:od:973N*EDŽ+-9r."kTpi&09R#cWyzdb"ҖL%Pv ٽ]rqkn*lKS1!&8VAβ/I3:m'@  `:pBܚ<88@^AW9D Ÿ=uV|^Pm+ähZjsDdell+] ldh|Vb2d[8A(LɁل{>EJn2f A(h,ck-=Y,A&O[)BL 8j^7kӂ 4ieP@08F6:T'xbc7Zꍬ c;CMW8F%dOK"G]0T 8Z0-ʌMZn|N9ᲖeV?t4MUa^<6 n1Xeʌ(o ocPw͘RnXTraC"X qFkTc⩟ e^$G31lY=i;:eziDCgUcK&kb((f?YvF;> wWÑΔ ޱ>HAS)k/gױ|wգO'G;n[b7P$IeR/tpݓqvSZuaLYX61lͷÓWGmG5d )CS1n^$DTER*N]e]r==G\\bW=EC\}*U'Jc[}@F ^; $*V/Blog+1$qc9򃧳/ V1+ NIDl_&wdq–թ[`*(EG7NخAuq=YV'N_yu >t𵦽ut2bძ̊ |v^Cjlc~ʪ-aBOfveWSdx"a5^ d o&wT_^;=ǗB3| GaWRE!bi]Cv0 ޺wޤm??Ipp9@g5K+"hPYȰfۘz5/`fM%'$k82rY9/c#%ip?lU $Y/!AT7e Kms,F kǹn~"V÷`O7 U42D-zZѤ(g91Y߂;.ߥTF}NG SO) m0Y͂^iaHf5lYrxK6^/eѤi,j>fV1vT*^7̩v_O(pH W:fݬi%3+k4Q+e mk͇5B h;/춪V)DCc?!V4iA :c?*beЯ=[U%&{qBf):jk%7D|O4%2wHY~';j.g#̹x)r]M;g,A[ζ,#/ໃj7pSv C4_v2v:nZ˴h&SSb [k7ǔ@rwRm?@(,;aSwG%@$]ڹ)>gj^ bӢ|C>񭸩z$STd)pyR&'v@z]A;9_Z_Lr//WqKL?V>ufFHrP̋{G^j\UyomK#}BvL^2aP& 2:T6_]m#NwrZnsi f%=)CEz*2uiUHelKvD zCR_5o `ئU }% U'N@ QcDcmցkF[Byl1V j, mELؾ0 9- O_f~K-]N&\bV`!9&{bz5s*]fFtiv0F'!MR]͜XǦ~zPK&Y-H^- &SATOSA-0.6.0.dist-info/DESCRIPTION.rst PK&Y-H@Ť$SATOSA-0.6.0.dist-info/metadata.jsonRk0Wu{l,c tKh cb*$$u >ݑsD{Ų.!މ4REba9q(9Ups5;A$D>~=PNx*O6>JئPV}Tv#v@PhH(:>/o68fopJXwbbr5¯d}qI)>ńylX弔bS¡>cQ]_ i~Wdi>dN` zZ4N'VlWvћٺn(R..7-b;׽T-T PF: btlFCIed!;IDwy`=n.炏PKY-HX>0/SATOSA-0.6.0.dist-info/pbr.jsonV,/JIM,NURHK)NQPJ,/K-**Y%&+PK&Y-H & $SATOSA-0.6.0.dist-info/top_level.txt+N,/NPK&Y-H[C\\SATOSA-0.6.0.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0323 /, (-JLR()*M ILR(4KM̫PK&Y-H1:i7oSATOSA-0.6.0.dist-info/METADATAQn0a(`U#ZTHEM0Klg[5vH&޻wtK؞9qhdr8e) 3#r+ PLe܂xPfEZg!AFe"ε;RJg^&d(O"Ɇ1WXF۬eUiW s%/96Zy10x1q>nNOpm\qK6I(n/ޱ[9x硇Y,ב[-S'dDîbl_x˾]u ee@w- PK&Y-H؋? SATOSA-0.6.0.dist-info/RECORDIoO0" ֡;/ifUj؛1؎GM୛p_yXqM @Ӯ`IQ{B3D(jUޔyIDlk-9ox5Y35W#B$ pHEq7h_V!GjwAsUhEm3& |a'ĝϗc ͺdP|i s}Gr,ʂժX[-HyepeHz8:!coNq!8%浰U""Zp*w-x,\u E0^, ?Y?[5p j֏nL}܂0t:4 b *'MZ֟8|U~ܝ"Q~I¦\9ȪͲ\q `YygN&<_ReUR 6w2YA8 Q죶]:z%+1܏%ыc|'T1(ęD(pϟ[X%̠NCܚ/?^. !9Cg6[hp+xPNs2>ޘqv|Y S+) !ocp4 sl3 \öhaZ7GQ%2iOQYK p":MԴl%*{gG~ɷ&S({|2݄|eYSŸx+cӕ3֢&q[0 7yvy.ыJ>uSat5riC%0m])MR>>LNi)xTLAڗN$;{u M܆4* C*x4ަ(H EA_4we`~ 59R'y2kN=>ja6dN_;O$'/6 ;| pS%Bڜ)xΠN xs x8q2FCugeRp⬌o;%R6VB`<4ۃWy?$mrUxFStɠȟ15E< ھЅH'Y\`wK˿s$^:G;:1bkjm :jwN=i;'徏.#;$>ۋ-o(P ~k,E<77.>qgFs+&X}'vr׷,2ȣÆB|Ȳ N4Y~Q)fq*<+=kPKGj'Hy@satosa/__init__.pyPKjGM 1 satosa/account_linking.pyPK gGV z-vsatosa/base.pyPKEsG/˺# *<satosa/consent.pyPKYyGN@Bsatosa/context.pyPKYyGۄ>rsatosa/exception.pyPKYyG< #@^+!satosa/image_converter.pyPKy'H`TB#satosa/internal_data.pyPK gGdk2satosa/logging_util.pyPKO\G#^_ :4satosa/plugin_loader.pyPKkG.n@satosa/proxy_server.pyPKYyG`cBsatosa/response.pyPK gG<" jIsatosa/routing.pyPK\jG^Q6Nsatosa/satosa_config.pyPK gG:1B%I Tsatosa/state.pyPK4szGY*R^satosa/util.pyPK\jGyukcsatosa/wsgi.pyPKYyGMj|fsatosa/backends/__init__.pyPKtG7Qcfsatosa/backends/base.pyPKh%HY. X3msatosa/backends/oauth.pyPKtGyҰec!eysatosa/backends/openid_connect.pyPKtG}CvBsatosa/backends/saml2.pyPKYyGMj|dsatosa/frontends/__init__.pyPKYyG tf satosa/frontends/base.pyPKX-H܆iesatosa/frontends/saml2.pyPKO\GMj|$Jsatosa/metadata_creation/__init__.pyPKtG.''satosa/metadata_creation/description.pyPKYyGMj| satosa/micro_service/__init__.pyPK gG $wsatosa/micro_service/service_base.pyPKYyGMj|satosa/plugin_base/__init__.pyPKYyG satosa/plugin_base/endpoint.pyPK&Y-H\p n16(SATOSA-0.6.0.data/scripts/make_satosa_saml_metadata.pyPK&Y-H^- &SATOSA-0.6.0.dist-info/DESCRIPTION.rstPK&Y-H@Ť$gSATOSA-0.6.0.dist-info/metadata.jsonPKY-HX>0/MSATOSA-0.6.0.dist-info/pbr.jsonPK&Y-H & $SATOSA-0.6.0.dist-info/top_level.txtPK&Y-H[C\\SATOSA-0.6.0.dist-info/WHEELPK&Y-H1:i7oSATOSA-0.6.0.dist-info/METADATAPK&Y-H؋? SATOSA-0.6.0.dist-info/RECORDPK''