JFIFC   %# , #&')*)-0-(0%()(C   (((((((((((((((((((((((((((((((((((((((((((((((((((" ,.Fh Ch@ 10D``DBB h4 @dX bD iD ІI$TBB'$"`I)Eb`(m9@0hb&!1114  b` Dh "lTH)TAiN  A" hf%n£!aY4hcC"5J2#Tզ@ #(a`QI+JHB8h@!!!hSMNhC4$11SB!`&2Dc(p*`"XE b!IJ&0C41 b `hL0JHLi1L -XX`ݚb% )*Cp& ! $40)!b䜢hC@D 6JJቨ4B!`b `0@ b`&ё^IÆ LO7dX h@)A "I`6H !L'@ DQ B!Bj4  L@ @hb&%$ D LQ~7ҜtZ&pӘ b `&)F؆` 7DBB&qI:LVF2B1 5iL4$ mj4 @ @ b`0b iS` 14V1l˦I7 @` L&ȒB[lC!FlIY +@!"!%$  HX J00CبDE18! L r2ϳ>Tس:=8Ӓb  & !`) "0$EMSIAL6D$B`&BBX&1C CT4h! @@4 0Yf |,tCE\T}nn` b$1AN&$ &IS`0118` 4  9_^8B14yꞿ3wlK 7 &@ 0@ @ `Ȓ b( +$2DR:]Z3cqcAȴNb11@#@18b`!upyt|z8lZ+]}3:zKcwA9SUU5AJ   2LUp*HR+EUEvF2qIW8)-JYDUQ  b `16!B& n$I9y~yntpX"QE,m[&C44 b ``@  BQ0&:Qud J7*"S-5(J7U@`  b1n.2/| ZrJY]3~ڕyצ1Ͳʬ3}[9NΨWVun}Tc~g6g=Mq6}GKsx b``L!nu"6ڬQ}_4 4IMtSҫ(610 b`],k4r:\_GOn骻q[,C*ͳԖzhUݐ9w L01 L& hQm(4d]nNiF wfG&ܱx*uθIbBʤSnܢaFj(@`8箄Ꝿ&IltgxgɻM%Mږ{z)]vSqUټ& b`0CT 8&`% '** -L/(4$cךRjp.h @1b!  0n7ʮB Kt}UF˞tr\7Jϖ~%Ҹ[!hUqp!&7Č1] *O4צN.Ǽt0!J%S101CC&1 Lh b bey ?fW7Ƨ,ʒ2t}֚m[PzvvF@ʀ  hb @%(#!!bBâM4BF=x Pցdd'YS̷ͬ 118h`bSv\>}Ux/ޝ7UI5h,pܞ^[U9=&v8@I!(XjaS,S3]av(KWP4j` -#ݒ7Jն&W"1t!^0 ! &X2y=yomNz.zVwfKݚж26ϗMa5L0C]q$8EQTl;yj]\U:znT62U f%uLb!  o7Q/{jyϣCJgS[oޮOO>_W6O~oC,2T`44\3zc(B A\cuݛU4컗AK2B6vǷ\n9WXQ,y:Bz` `4 @C&r_'RdxyNu <SQUM+#S⎬7v㦩K]Jy:KX5b`!!)*d 1RYn+έӚKUJX7U3˟EA}lŪe6@@  b b4x2\>|z^WvB{3^S׺Np^kέ㜅VզhW6rw{xz=)@h+ !daYZC.~mQniڲ7|0Qgj_J}l;8Po)Ά>4 @dtsNqОgͷ>ǻ \T`ыfNf7(pu9|]͙c{#(h1 @ @}6yn;*SHI*Bj"9̻&{y]4գ7>Wf~םZ0niMRsTH/NL` @ `/9ywVY-tkZJ~sGCz|z[cV-KX+csSTWu6kK2"2QiM b6y֝^]k׍ʻK=U**MVK2R.ZE9}v6{i1m]jZҌRUJ)De%dR*K~eS>-у$eͮsuκh%lGNl8#~:n5Yߎqf?L'@ @ojȲ*d.ܴn3q$ngլNKbS%{ߓ\qM(zOk=R͕zX_~=hE'J]\YA&]ƣLk4>5tdUFm8ʋ+7T+K-%3oU]kRKV=cNjkCiGY)s󝧂뫟CX=na\^ RgOA5F|-P_ew9jWM;暜Q}rUh;p_>|+ng<%̙uӧ>phss.SE67FH[W+8sc<=3Z_FJ^Mz('.Rǖ=<}<=hr7Z6v"pV-:jS٩}vf2UeYN\K JN*|y.!~O{ k#;1rt݃:>8sVL]*gs*-dY*Wdnb b&@?=1Ms*|ZW3VY.+ӋcSZg EWfgvZNDeSBWʋ$ӟLu?CԎvܚ/\hُR]zu3&UWZRvj^l[֢3u[ةZ2=Ox]wԥΛbyu͝p뚫3UsaVX;I>7~xgpa;_կM5yĔ1dD׳<K}*D&P&@18{N]n)E=Mg_811YGE) "J cMQ]e3>_Q=:f]IzTQS US-izΛ$Iv3Q]]JM$[VT *N5-eBHJO<侴euRVzseOv--m(JƬi`jKڹW+n}1Z^.sLyq9}4/sw@ZH!]M&y،l-nq沯Ets'mi9E: Q"Z 5ֽC^mkV[ʝ>]3n2,#\B `T(U6-N,gF~&[bB^w*<=UÎ+mBePW:IPڪ7䫲anm J0 Pg=iQpڎz\~-kRqXl9]O.w}Ku&kSuHS $BRee:̢r fnYmSE9Hr3PQuVE 6AM "vty|yU.Y!nm4kqB.N4UdF鶫,qLں[e ⒅kYknpwBϓU>^Ѳ+214E8,:"=YվٛG\N{UǭJ1؆( -Rd [ۏͣ1f^6%fF$sB̠YUӲs]0 &\Z\_dL)f{!f7}6_w5SYŵUUYe]=73uԌybv#3]ё+fXx?ί'jĪZ'KZCOmVg ٚ5![omjbїxue ؒuU̔g5ziW:7':]Uˎ:ur;ês솅Dq#$BGVQ}cWQd.ŋZ5yrhgg^1ʎxGo|u?=%[V63fH41ӿFBwwnlӯǵ*vp$FJdi::qӏ^|{sF5skb+b;+ɳǽy9mIAJ1ɚz9j]<+htU!lNZ`tafcʍ4⁳G/LJ|TZ5%TͲBLSd-.ط%ؓ5ˡæRdĉV bc@$::v֋oV\fwtr~.V:2.8n.YX͎hk1.Jvտ}ڸm볧-%\s^Lݾ}fƥ<;9 o-^,/B9T,ųXҬ o,4 hxiӛfR-zlFfR&oSG/G=fl"#o %$4W٫#1e;Y(62+W4:lt#:;1[G3YfzseN8dًI8Oy@ԉ``&!#8Hs3_OFRثRulvth;Ì:dl @TqVR* ˣnsuX4%y:f2h]KƣVi%:f'w?LkU?,iÑIg]B%6aUiUg&>zuƧM_5^^Z役:stNg\Y+6ٞEֹgZγV5vkD-d=y55(&: F%`Ȏ-@ 9}l|dNPGDWmp%܍=mbZFlӺ23jqъuپY|| FxiP+$'*싶M+oEșPBf x8O;)3:!319t5!K kϥ:o 鞖3;=QY٣ܘ0JCM`I5f|֭sb)[b6xe8Ne!Bq2c8&(Nv񺭁TmdB6AI"^OOA(D#4o,i󶞼 ^ϯɽEz{κչ  J2# J0lewn~̚!)N(џLbU9:x}qҲ6m~/LmҘ>F蛖޿q]V FbRF|qV]ب5ltO՜&e\u5N\&\تP ʕ^dKN}!F'3ԌIT-!Ќ\%||&zcy].:yٿ,n㨍vL1I"5I4ЇJ+y_4t[Aݦ>f:i2\2eP۱kqED1g۟NxǫOMJ4uH\EūB ]I!["IHl>GW t0peEN]2_g:nm#7S{qR7.ŲAVL,qhJ A$n,iօ7>]0g3MiKkK^#PJ8@LjVD,kU yz̪|NKυI@.v}5wy}~cLIWw!o )E(JT1RjґW{!#4}g(CD%bJ+WKO+ &3doFtr걤Zabb!ͫ7%ѯךU-Ăj*ÿУTҷ=|<=X[q6*iC"(d'"$- yyTnh-|z]fSn'dZ1Ky} />u_3\8 Nz8~GLP;iHvL@`SM"1`8x`q/mAI}E9qOןơ^r2U`JP,cBkW!$I)d+bܩir+уXJ-)~tc>&ĂVB-K_?z$. h0R)F@9"ʑe>\z\;5P:M9u9ɮsaOz{qҬsq6ȦN@gm ;\$8' #R#%M_28ІU[j,#"˟P=++| g!4n^䪶 i5P$ϮYCc`Wr^010#Њr3$H ۀ29# ?ӯ ,q=ی;G0O,, 4A@83s3o !<5-׼ 1?430D$a ;8cO4 ̲9G&o4 1ͫ?8<3w>9? 6 8E Ǡ~ߙs,< ,/1\O8<:Հn:,ӽDb.4'8+Jr<<9]+rˑ0 <8"CP/ < s c?2<O;x7}000 Á(N5M0ϯFo<Q!w0 # L4Ҏ +1`=LѨAuM 8 @h  Ϊg0[8d_o|n00 8 whhtS/-ŸsC8 0 07o8$ڍ"ʘq{ T2ѱa0sFsrљu[ ?Nz2"8fɒ{Oc1+3vzM|"D:I}KYaLω` 0 G+(+f?)ŖR+}0q@{1'7#:w4VO0 $βէFS4LBer JeN*/ =A1=$l\Ӯ@j.檄kz%eqe^PU콹4x=3` X?Rʺn.Z׍x)y"ř?21l6oW5O䐘eނ͠@{B2y^%kZ*ogxBVW`h9mh]zXX,нP,ۍ44&}=fJ4E6~JC 06}+n'Ui1᠗$ClLE՝)[T@Ub̶&R3[gXPB =J(B41|xs}Px蒲@[5"J۲syo#$;X#L z\,;tEfwҸ,=ěeӽ'O (7=u~*"x(Q$I0Nm5ͬz hEb0?%0+l2ͻXl RH#rA/TmXb̪?>޻|P:}f}Sb*QnW4{5\@9I{;MWjMxs1;1dY~>r[WRlW2 UսKzrIv6G'1gglOrm"(zLfo`Tx0fbhmNW= [c3 $'4jy32`$^vԩWW|[|{TFg4CPaڝ {X6]0[Ö4W`'LqϊJ.,3U[1[v Q!!FuZe$ eQw?ieg]TL-N @X-nqBٸGV'd H- 47O3y=Q ,swwF%"wXMhO{5! p:;K(o;1O6`.9I~hŶͱ]Yqưpmaƾk^'y; S!",`8t侑5qGZw)Ayw/<^?Oz1tӪ($S]n91#T2yJφ |R|3sJ(]U+G{a&Pd>i6ClR|2Ռ7Cgخurڛgs.3uo=p,!5bh-?KM)UzUk81ְ` ZIy6 qJN-ե5ymχ7cl,iX .CR oz⯫y/R褻kPp20%˄c`6HapC[q7C(Dz0DG ϴu{m[˯Ac" i;?vGms$יg,h?(sc}^?Z׼s8&IGhDm?Kosy[r)| Cq{د}4} /{ePE4]s։* -?ۉ붻]:+m'Wum}njj(l*J }mKVT~ 5o|YYLPK,"jC*6i<}}mg*ޏ<2cs|㐓bI/v}Hvw gM$YQm<}}}}ڡ, 5`na%mv}]}UhQۼu,0<2}5uSU[-3lMUQ }d[a-9qLԻƥŻIu<<}g}mD#͓[}3qԗq[\^|+ (ŵP }qqe5=߷ (Bt597=#a*8^ȁ 2y`Åqi}<887w]Գ=xQD\}Dr)XI 1ϻ( cK<u6YqJ|4tu<o0[$-| 4&'=M}R&ʨLs.Uij M\_҂B!wh,o3g]o4Q7u ?o.\o(iˣ&CpLTz7ʙqoyv1 ԄajAĕ]ȘYB1/&aжiv1$J]I1ڂ#y ہ+-AiVmmRYY̺}S*_އ #׭qrBv YR̿XB=kqYH8Dvq%=j1 PUjץ0,#>!Tף,8Ns|i,:$BWpہ0NNʼTrJkY?4@K_oYa @1沩(SgaA4Q6HwF!J`7pVhָe"֬jO>$,JdLTf9BV;(L\ h7 6: /[)+R1.?`2UM|r*Mѫ/-?H@l!M*"% d͖<HbģHo몯H^nTG[-9#%9I"9MԾtd%yhGN Z`˿LJܘ1 3Zޥ0ږ[z hfɎ$X览N7a./m ՖG]8_:)]`9xw(F.&n$6NJ?[^F GYdn΄΋9>z nf`~@lֽL&".qj'1q8hWݎ's@;B ;fdBy|q=S$`RD>]F ig ^%"MHt4SIK+fe Tnf/޳tdy%[1!Jdx'@^PMoxMS{TPfB|^*}'sUC-JA!AFx(i؟.C` \nx<졆|nxYPd(n`/fL#2t>#DũE^?кq OmNkoȚ6Y?7*&-BA0QRj`鋘LϡL61O{˗&T܊TΛ7 q5tfԯ09mKxt\6j0"4x/\ҙ UL}%jXƄ QYgк87d]G#aPJHrCN\xKg 3]Jy1`\` Ә![MͅX\ΖABn %̃rd@fL*tf]>]x*G~|ˀ`1|>;;_`GEqIؔ嚜 o3TrUsqǣĭ`FC1No}~`?52%f o5P  B楩I<$̙G.4v|ͬa,U+)7v1yP&_6WcBa1g$љWx5G!TxHRbL>}UȈ26KNV_OAk-eT~0 ""3›O1Pg(>L<^F,hF㘘ټËlauVGW5$Švչ6b.3N?/4Ow!~& <~0"1rvb Qf0U5Ax=Fo3S1z9f|1/&E(q3dq1&F #(Ua<DM@Af.gI똏fnD$;2?05(B A) >0Kp|~ED6EFZFv癩>Pڥ0 ӛf. Tk3mGVc0Qf;,ƥT`B"ߖ7*s iN*3("U FbqBbZ - ma_\X5 3.(drb;R`@58q@T&bfj\|{Tӹ$4AهB9itbĪہ̮D{ud\%jc5Ɍw,Le"m̠\xꙮkC ʔLD鷕x*D1(~?P& f&3Y1[c`J LzARspa\|t(TWJlKT"z 3 +ɨ80&]>Mg;0Ll&Ll61Z { MRSn(-=:fP& 8]!ryI'U,ynX\ n?sB9$̈́ u6`6/Y3Sd%1)w< 54QO8nYSMd&@k&<[DkcQ>&\ [%N:VA g08AyG淟R4qډswD:AOyDm<*\Mg3zA0c"țDɄf. ,jH#U6;U}1M 83y|kcBk889?Lچpd4L\W 2g&SLue~2-2!¦"Ӗ]:)&m;4bA?0k8d?)}AkV,&E(hڅ۸2S5Aq0F"UbYө䉗JF:6ry.6CMw> b&'5M{P|]T}8_3P,X Bc{A(7g9кӅr(55HDRiS~I:M_Ǐ  ZÕZ-k54ZV3Mg2/̹ڢiYԊD͐c]#6чu>Lv"pAFaJh]Q,MFfܢ&)>@CG(X%ߒhF(m.U?i.q.مw2c('kXIcbZkXD&#lGu g\)KlP#B`P[y}sR(UpAn%MW>fqԳM/|5FOm?ٷbx*ٚ-X9BP16ճ0ԲPP^cuyLF*e Ù­ -Ar8ybf&l$>!WQHQ.TIL ,?y"zmճ65Vq|L_"Sgϸ 72Ϸ#5Rܾb{["R>#9&e0Nf|6s5 ]?3:`"Γm@'gfLyybXq #=7VsE2%ĠG,y,n~"T~ _eXt^Q70ٝA7%ÑAf%3Vr(ij7@{_a_}od橶bdgGGɈlw˜' u.fYRh96i[9!>2p@*1&ELf`B~TM3F᱂\N`J AAH |e0sPJ|1>'L1L t nLQ cqsLUIQu4^a )u; о`vNbJP!1&Œ,.Rݳe(Gb}ޠ06mŒ`Q5ܙ#[`hP 6 cu 36`־& :3>SmxuxNMFdԐ9$G 4;++!>L(bdGRG pgʟ)3cܻ ~e3Hdiѷ)"T??ŋU"aENbw .SP@@_&l*1<8arcj/POܰ!48v ˊ|w3PrՄmCju594"~Q:LA[&-ϊc:f#YQ)="T{ajW><>D8[ǃz ExF6IOb"/"e֜965 &x&c̍h ~X9|K`01gm; 0md<Ӏ*3 >%]%Ӷ>4\AC85LY|@(vu{]:d5c::VzjzF]g.1dM3]bQn* "'6Vӯ28 e? Lu3IcaZ|T؉fm5:gyd9Rq:nǗ0:6ZvsB`G˘Lh8Oèf^Jk깠kMԸ~"nCop&. mS̹p{3b\ML;1|op܍l~_~&7<+\4g a+2 k_ߙ[ S7"ĚU@ѬGP&=7]=(!>cdːa,:~\r?i>ij28̵=<vm<)pc `1CهX õ{0t91 _`'cQf(\ehP" #YA>Q>yzS7Jy 1X Bp8s,v|G";_1+ks7#LZpڐ ?81|+fB\OB8<aMf*ȃϻo~5yֻ$ïb91LA1{xU5") E`+byg<\_lZ3aE c`;O0f,KNDd0XHN3tW3 OlHCaoUܒ&"Pه[2 FZW0'KWOt/ A δ 㹇E5L,JJ6DmZcdtRf w'1h_bc|ith\h/{XWfg`r#v=s<\ĻlkRkaٚţO:[鿿ogʡ<|h1TqNau3.,Y`c! Di3qۙaVh~ˆE<4бWf A{g2rL>8ljocMCAMO ';Q|Tv8&h5nqW IUdO\9P6y<fG&OT|8А&-22fp\tl~4zllCq] L9wB tiX\Fܠo~h?y/~AP*~ OãR(q` SfKN gfE]4hɈ6c Bkܮ3p=; DBAg0? =ˁS|Kt2ci4F3gJpee˪*~qwՐۏa4b1}S55 Cs EbE˸Q#4yCv{L^%XЈN6 ǭª&H*qsWv+gFuAƢy)MfhB2@PC '%}k"Lϑ9"z]BUΝ5@9&5';\>%H;u tۄ8V`zo3{@>'_l6dG+f:;A]BM;@D87"u@r2}t[ ¥4ll&>r!\O6&}n0!=`8'pftؾ=k1Yf(|uOrZn4(cuQɞ /L - T؊ۅ<ZEb*~&vߐ%+Fa*YSFM7/n&d5&i\>0@c"h#h n` `8 >=Ȍ(u`RǑ46`4{&R(H``7 abo"`ݻ5,('7j =5f\ '``g1|L˜"Vi[3HbT1g>`|č米?5_r~IjY 2p=kX0L4jLP-!Pr/gQm37}魻N}Ri`C4ŋ6,]R=ӷL#)(eF'%i&0L| 2UOULjliIP|b:}Bd_]vjvSCWe5$Q0>6!1A "0Q2@a#PqBR$%3?l/;?(g=T3iMm#D =>J~¿h,%_\rB>Q_qSMi3*:t(h{TR|aYR[oϧESFZ5`ܿ07a_8")&])5cbzԯF7KGz(JHP(F3X>?T6ʄJJޞJ dͰp&a)x]R~7NɘY18hHRĝL|2~#갢Sn<ً1ѓr]ٴq'>[\LoQ`צeBTf[ٌxmcgr`_ؾ!ݐ660-EQ  Ɂg@SC^&\z'Q8B= a?)?P:U?N@*>4}BrgX:;\N7jМ QK&ZNܯT6a6oa㸍練0d8E+`rVuhhhD3q=x멯oݙQfg<x?ӦÉV2?=`͟H$DXt`?TEeS'5g !{Aw~O2k'%8?6 1bmxls48>Hx55T[|G"0~{L`KPT4oU1c6|OF. >"De? FasQ^ʬrMne@3`d4tDDn8?2VC+VxHLeV748M* qU?M7& r g.Ѵ'o&\̀]` MqF*D,hA14l"\"@&T.f<r.2)&}0i#Qdƃ&nD3L@|@r"&#ɍs Eړ:cHfvd"G*fA\YB@S\X Fngt&,Yr*E!CDf mbiwd49Аc2uPr%&PCLlw\EP?1BSO(7#(☎B V0h@0SQrfn!kv?uw5LT!E "+2%}eAv`@Wc͒30+26Tc>fn<RT(9ֱO+n&W˦?UDZJAdQ`ZBAq0e*`"㈊Ld0X36fR@, #aJ?a 00GQ B% jfe WώE7iF ӏ(2}1:&e3A:%E]DPT A(DF=YTUm%d EPy<@ k mF^ft *Gs\DmšmAK列N2?gI8.0#%0 Fb. .f(FqV&P:vhtCwb-& ˇ#Lώ&#E!Rp'Og( xXX%,[V`Y LX!65mG],|Y*> i )4wdDs\f44M5Al|J8 f 3ןfyeSl"3]1X̸O+s"saWqR)yTccLCP, ;qh 4}y!IɴEv{9T2EXٚlG&@&W,j 3ǽ@j&zG&bLTno'cƘ<OLx=?(ؙȵʴRZ/R<֝Mq, nTյ$Yk] e`.u'V-w!h cOc4Y61&Rǁ1)4bG ,Cs 3'B@+1bg[Q4‰'˽&, o'"T5=`UvOj?BrC 8C XP ɤ:kȌMԻ1&ogG[@@aQp34_B QP_ hVbb C:c-h.!A ω 81J[ل'&)(ۣ,'X)\A 8D=Bo]7[{1QCP3&#Ez/gܻc~]q`QRf,eT ͤL=5#MC:.1\PT-8w Gan|c"%Y0LMٛ&L rsSd8u+W/Rè@E\\٦զ}1zQ,b~;"k6)F:YWc2TLnjb6ۓ9.><~1,NEn '74o_(*lD+u wӜٕDƼ@G3(e&lQзd@l. ȪjÓlUٔHn!:l"fL9v5hIu ǍL-o7:7EK.crmը௙ u3c]XGȘS2}#XZ?dO)f!ɐAbfG8T3OfpiNrfX)4cN2"F4!ʕL֠]ZŇLɷ%~e3܄E؈a/D>zzc=5V>L[i'b 'C>R#I( eR@9修euaFt`ŊSN]#bqk 3 j75lU*n}jOMWfUT0nf"!%zːc&gڥJ*i؜BV n|@7:0}bf\7M@9@gPМ`i 4j&p1m5?Qfk!ְcd luR>L'м̄&*}?툊怇J 0MfM) NՎs;)rlT=" (?9ɅZul@;%R&}: ^yVԛ# g-@@PRLg94^C>`&\.G7gйUL1 *: QDsAjqDl2-4u7Eox`܌c˼/*'fd*9㱆 D ;da:K2gbeh4{FҡgL |v3 }P ?tz`Ț&&o"{preLB$5fl L6وAn &3za)ϑŴ(ϩɄMQ\ޣ 3>=v~n ԐVPTWLĹnt̛3W=ØuqyYؿp}:O?g'ŷY(vf ,gQ9AL^?1!+n$֢&*`հ3$Ծ &5)\\@:&0E!iS3y7/URA<~"1e0YFNioIB;?Lpl=1V1w0`Nd`$C#O-ϙp!vkZ˹.fn|NɁOBdԽ(݇_-l3i0FԢ7+fLe9*D h;Ob`F1<"ڑح(E`Owֻc(VUlY{slc5UGESowѹ oy0Q{v剷 lsI6 FƖ8cimJIΓ 7TQsQ9F $h1"U/]Ps2+7s73YO|U|ΠS vcB=Tǘ>aۧjN3(côRƣ){Z;_@\P#؜gK=2͸1-qs:"1+*~`Ρ r"6b&mη$j 6>aTPŚ#1`R FD֔My$fI`ʻC3. >aӱ*1%g'i1lJfxjPðvېnk_%8 Q)RY4SLoɧ>lhđ&*&"ϑWj 8f_Xv3#B:;116&@caS0?`1sR37-b!q7Fa+4cE;S&Z3t;rq34)jQAJ!}c]@>`E3w]ҳ/8pÌe\I›, "1!cjTfb[if_i~ߨ4=ndY(L5cGQ ̣!5l=S2w,π-Fk6&wľ͆,UCJgP9cswbPݍ&ǰq0o*`C ȕ cF+/@B˩5fU #62‰(h۩2b`m4xm1V/lZo}VjiT/n 05w2Ʃ7b`<> 5٠%z"wv.n,LYWjfJ3wBm(w@\D|)d=Yqs?=f} s}&W4&Ĵ Cj}34s\m 0 &, &Lm3 % LTʶ.<x>FTLP"u-8 x (@QJy̨ʂT7?1}?n (6u^#>eh@Nnf*I<)aaԛ{}֊c]f{ UGT;,ͦʠyӌr1#nZE标80a+`DT\˘O(ٔa7`N[#6H#[YIU>'͙(M:.e/ONfRk޿> aٿ`G?~!^a£SP)cPD"l& 6ȇ)1t&zn|0dAc#'Calumb 4 ֩L=fݸ2oy.2I$\@=%?.$γc.U' &6yhc4~DžYz<fc@X~è81]K n DRk Ž &QbƣP pэZ:ljX3ʕ?ݎѲ(G` (z(PԅB~`kS6xM,bmwQ_ 6rMp{CdСG՝K cmؓG'ӲTnTM4k#Q{1O\GeN(QbsDO{h:Kihc'\?3(PBgmA)g 9aTq%#8N0m^T\cXQ%…^(/au9羳:o=3 =n-~Q~މs>0f' dΟ?n:cW=vKCiREd]|E9=(faݹ[9d* 8۳ݣeJ0}BKtLdIPGcGTıa+6M/" e'af[:^ 03~z?7*TqG Px{e`Q+yh'*94omJ(1W/Ɠ^+LJӓNJy-_$^kS h&fn!fusB'j9pV!8 0(蹦*9U4Xgc{ZUVӧw=Wf8TXңe\we7D ;>@SZ;VjgqHjP9 z#"bȯpcv)(et+w4gQ ,{ Ži$5EX:m/\ntXG\Frv~,Ԩp5! cL%O*Lx yŦqdGh 7cnSz L mgZl0G\dSݼ.UiVm FVcNH9dעlUe^,.I&Q&] mѝL/賀A5aS4s|CQqpoIH;|e_ -!Rb}/2tu #r@Uy6Tܻ0Phu]Ļٹ_@lrLдt#T1OS76~uwliΧ[L}LLiM9!7_O? IuZuNv,/!P25䷴CrwhcVI *U5ϢDiYLtaUvp}:'{?]fmst' LzMVrMMʮ0uFS naW7Ԃe Fk;B>Ƕ5D7w2&dK~ُƂڴ,;2Z{CX S5Mh?-$JfID£&x,-q#DQO2tj@GI @!Sv.2JvY*d &V`~#=27Z,TrdBCdFW K Tz;x5qTæʙ`;*kHQ&\JyݳKBt fL :|zt^c;`3 +ɀ-V;t)>au?7Xw`GRwAWHSnNeII*pU)ai0i8i9ͧPѥfcXUV6zy4Hg]NJ<-=֪xbS3fYOC. Py֩+kYZylg 9j:D3d\އoipwa6@nbq#\A}#R5Bl p2U]& %QΓ~3TLG]BbIU MӒcl*T&t9c=eC'~:;6x5@M4 [BnդM0I>򫅨VOt525j=wS1 0b L{mkEUm O *c T̸AiD? N;Ӛ`s^ǀ檓N|sPL:6HI?Eޙ'sf2M}'TjhhwL)? 煨 J Nu'䎉 ԅB4NU|)Tm<8B0k{2`i &KCe~Mޚx!%OA!Wk|!;T$S%L;kiTxG ײ4AL&ТJ.#4hmGhZ$4LtUeˡK*r{:s^D\TwPnQ[t\5ee=UG7˞je0GC,T8|P}(lsjhvwdOWgUtr;\DM)eEOHM >Rxs|BM:M}6aFbD eQ1[߽?P 9ke6N|hyD:9jpj6?ڎ-Kz*sDKay %^цAoyK)4nj]ˮ78uXjz5"汲!QQI=75iͳu}Ձ;V*}!TKC8nys]0etPmaS`CT*Tvb:ױ9*g<L0ʧU|!&eaL'϶DM$g53ZLk)#-S'wDcwE{0G;Ii#6?CrnC +Ϟp$puC=2oY4t 4FC9/Q:~'ET\t?T󯺰u8{C3B+'^XdamZZM<:}imް׎D+rKanUi*e"ςZs2潤CsS]sNRζqFHh4asۍaxJG9 ̕"ks7u)ѽLOE>>.suU?&hTUy}T!@& ?%̣| K]yoU#p#ZUDdNl9!R hNNg0[[o&O@p/ݯC3ȦRf+9إM)džA:J7@ˌqOK y]^3cNDѠqkXX~Z*AW,&קk*qglamFtqJ-'B|m>hwk!6!S)yBcW NmUZUIˈ.Ϫj܌~vFG$Ba;fVm:k x]^GN 1t /Tۓ@h+¼rW2gOݗ.Jxl"y%MzE1[uy,s-p,MTo8xʯ k $1Y:ȉ&̨;ÃVߧi dˠ "9BOȧ訸; i]c-{p ԉZ°1gif2nv2ZCW5[Pup|i ԜRʨX}I4w@Mny'K):\全9O%KxA Fn_٪*&i {%.*È*m &gR$Le" .$8OTT\*H:~F_ 5BF1ͱNrk Und*.|sޓ=Ld*6x2 v@)I/S5=%_ACFTثZ.xÒכxfd']%J܈#Ul4:({.|uꦵ'j{a~0r9#U4!apAd@ȣ190&hM_Ē)UUmsM%d 3o8ɵ=k:T*qLwu]h]chʓK9:_ө41{y.n|-@Wgl(:\D4cm:d Ow<_T8biS{d.ڃ(!UߴUMo7LԨ}mp:O: ^5*|MSK~`zSm\T ]& Mq+HTK YQR`s3΋ "'NߚܷunKv2/o㖍`vl&iA:VmE,9zg`̞>G^IwyTШzOM%4&@*O4; ˾*=}Bk?BaoA6 Csns M`Yy,"=S3{qn*'ڵrrՊ||LUHnJC) ve1/-ѣ@U[Uȵb*omx`n.Ӵ>*SLUZ *Ea6L\UR\w{g6Dhk[g)LdeW02BV5U6U,— cG `LOU8}~ K op|4q9(\~_=m7CdxH9eMl*ᕉ1Թa2D(܏TaBTUՄf EPC ?Obu'5Hk8G$y*cCrՅrM9Nyk>GTXdnoh4Xj;]9#YM­2ڲ3*joEARzeh@rküOWwZoU^69)'Xی;kߒcN ]< s'{lp Vi3R[ T`LE^ GS: P L}} (႘Ӫ}AlwEZzev#޳)Ȯq}C{bSֻ;IT}6s]:y)\ֻ{`L;%{zFKO}Uv-oHhQ2һK Y~LeڻPrDMwbby'rcTL$Z\2ǸT+*8Qt8]R)cAsdxDz6CDagXܩvk̦uQsdPqa|2ۏ`V w u6Fzho]m&wtX|>!<]Q1Z\ӡ݀ aȄ[qasUM>XrN ~LJ 0H}&ɨj=ʿı ^_> us{39+Z~%iv#03uO_תUeq| f}eR:,E ۗ.{`U\@ dgM04c6cj R3Xl@{n5X1-fࠉïNg~~wsDR:(rJ"\yŻ_o=ʼnZ*ѻ.4a*1uaouُ$I,)c[F@^ TGR&Mbnc\wMw*vVS6yL8džjvU ԅ@Mvy{D3=rYSkC@V@3QbP!q|Vڎ#Pf2{F2}!pT{M7T{F\L_0[5ZtTgi]97Y.ըfJf,s'D:6Yt}U4q-4cB>+ cmƲpvmh:ZGf32'k#o<'' _Bcd'CM#fp5k,;OV=G3Muj\eԕA-e1 ʬ4l9l)hÏUITk- y޻PŹ}ڸ50yQ'U2O@!T<SF6/H z7?XN3 BS)0-9s!SiTUw.HҚL~)\eT{Fly*.,Qp:gy. h-O`]}1ZPkP t:rXϧ^⏉8CM2c-&,y9MvXމCp8fmJuY,tHS]k:&x`!ۊ`r)lKS».R~~J9iuuވK{лO]W ?"Nh(uBJm췍܀sToKM.Cyho6{`CCvYpv9be0U??D *X~ӡ_4T'"ԤX㪥JjtđIu)w犏aT @{6X|Ml.rGf!V3+UȔ %Z|Ujze0ֹ^1OT>0 %2HX'vN+Ҝ!7'hp8+v.,R=Qѻjxѧ'dMH?HnX\=3AuĻ>^G_m 8\K@XAAk" +YsUt5vi?cLhI_5 <)JC /Ak\6,0;&)s h&q9SKU@^5_,ͱ$&nȷOݷڧ 7u^G89y m _,Rg/pjǘҫu0\?J]#\w"b=G%γX7l8a-[QU}r=B$h MUJLƦGS3@*\"B4E /VnͩNw,**Z[V.p9gpXgյ̧kc)ou7Bh 5U@FJ&,~t7)%37 S@sns)YMtn w4'xisWXa>o%kV}G'TU0vg J~lp*D$&vgkTwU%Yi^!b\xF+' ! 3\:G5iDWhGO*iЫwMwD|qvc*5C-aDjp^k V5 (7kKi7ywYoTʨ,B9rriL]60QR *`mVaY.e1R뾩Yn5c/k{xuﵤhCFjپ冤Vh zPab4^eRbgB 4]+_񓪜SC9[QG:Q`Y+Qw̬ v@ R,^,. 짖W _yDu๲-b>.$ )'}^'. {jWR9hb(6IVh ӬxI6Z1U Nm.ޣ4E@f>Ues-)*3 u=UJna 8:~K M-ܰm̧wd+I*imw Ri&Uh>VysnԳ>"2yNv%Pb:T.a5T=\S({*G^EhZ>G5هع өrU 4XC_Ul8 o5 Vو|uDasuDO%-0n5XgUpK+#2UiR6N 3G uBײa5u9gIN+*7O$H0Tn{qla_4O@RÅkXItEGqpyjihOͭ'>IUQu6,vg)Qc~ùh=Ή*}Wq ~ձ|UEYTqW.-y&Sxl_%in&v_y{oTG#%xy,E==ځ}C -oRHxuk L%昦A(qf|N7%Li-+ j#柕O4a_n!'(o9wK{ UOV絽:wbsAbUq5˟$r uL '*75n MB- /u:܈Xj&QNMyNH0TOUJ U0u[$o__ 9hqftY'J8; ?A2F2\dYtWh^ke*ƅp^j +|+Z>DmH B]Ty,#<=s ֛MٔZHsPF\8TiK˹NӅ:h(H\Jc&tJ}jnlo}CI!::<5\wBQK"3Qp51:eZ=Ät*# [)ܺ֙Jߴ?6hӒTkZ*zu|8GSktN|62f'3FOڵҝSH0ZKnj=ڰr֕!U|`1è?-ph >Jr: ~M`ۼwC%(Nn{ h ht]\0tL|~Knhø.q7D G  jANt#EO.`89跜1isCUkATiSkq#O^L@y2E x',(3 JpM9,Q蟲aC1L dWg{x|;vbkd杈uVaT׫knK ˭h,q&VEPf3RygbP2rjS]G>I"AG&$.ϧ$Yk/r{s4ւO c&5 h[(u!7x*5&89?>wu$2CR5F_[>u*=QΥiH=f.4l@-}#54@ ΉO0 l2?ҝ#0iO̩>. L ~X[`L_iAAx[XbuY8GЪT&gp9X٦:&yh 5%pRG%8&jS&LTXvjyn`{<5x4Â\9kچ4Laa^֜X.M4íf%;`G2~s ƛ;aRWm7 y"b0,hSmggԬ\>X:~kVGftRGyoᕼc|װezER4GUFPě.WX he< Z>NO85L5Uꖵx9amٻE$9 PH7~JmLtJӣZUS*FEauV.9+hȧze&73#^yg 4ˮh"7k {af ?ȉ[tZ<-XTʹ q,YXurr=L#iӺj~fL--jkRDwGkRѧUFe+w/E+ O_ XXQ|韆Dh Uw S=2 X[IRL1a.V"lxXZFWQZ] Ht9:uGV5U1oJ0Ktb:2~v:ջ6;Իv4O5 pfts\78S)fD+y놚A' (դ$2YC*9Tu*bXG \/<P hWejgiemmf<5@u 2Uud4i# dm;03 y/SA@L1-Uh0sGDse:CYV͵̭p;Rqꁹ->#Ś)wn(X!^UfL.ȧxx*7Cx,%?*|T Ҥ zͻFJM5?򫦣ˀp>{aЅyzMZbmn4 QʂZV; pKNTr@*bJgFDd7Soxuf>eb 9`\ZM;; 1.NCCs>KXiLW=G1g-q Ku[<|a'U9fF){DU*ݝg+HeJdazDiZu1P /GCD=ե{G%"oCJm*!B."J D>J"ᜅO8ےy͟{@~C R\rS=!0ѧK#yT!(tE"hF$y J.*X\1{ySjATZAy*7,I-p/ ȱkH^U 0<5?6g.7,'{]?!°檃!c/uLko#]"3թSi{8F)u6{QRrjh^e`mQ.k nBZ.Сu wcoVm4+ԫj}793 wz|,;3!'a\4+}X OC:V: v&ʐܚj2$ƫ 75Nmi"K}eLC |fD?LZ DHQ-YLA t2tj81br`yp٢d*9pNLɎmAeUUmFSk9D,Vm+vMN +߽hsC~jMu f^7%xSkO|K`&[%G 25 pH*:xOUP 2ElЎרּ`AzAne%By&O2N~JfsЧ*urJk*}"O>ES9,8;zhUs-$Z*\ ᒢw"3Nmi.D[*jUBրT8wM#Q‹]}HzK]rWf^v4:j[}\5ge7M; ʁN\f2|YaZLĪJ5y$E9 a);҅[kKwFs|tXO>"%od.wXi TV+Y= YI瓳w*.اR=5V u DHIMl&G޽s3~S XpZ,N3.+NCϢ6)TkUCK/y[~ɞhb*Y!֓:}\;OTЈUܟe?Hȷ3AS0 OHd8c^e/+zK]N*0}BDDfh ҷ7u0Ч!5i9gT}hUˋTeg)T?#x,h$xD4MHj]hBT M~ z7Jm':[96K ;o-Ӝa-)BfM'5W(;iWR4*Zs\YեUeGR9*g!y5DqNx}{MZS{IM7G$Ԟ8Vlߛ5V#JSPĿLp22X?mLx7fsM&%vJMߝVq3&"u+i<\$'^cg-@緸<x[:5 i>iЧa̔Ǵ) ei.:+U:cȦ֋DѪh>iL}8N}\ BVΑ$!s44^hwW>:xpY[gPp:*ױ||y[we4d4ٜ±sM9@Jz$cPee>nMSԂn\Lڊ/S57ky-s ADn 57}`.7-J^x)eArW,۫mVHUi,EKDTWf;ܘ@b< @ve`m';Xu:02޷{[PTe@$$4[jqGhy'g@QRx,> O&BgdӦ$U,)؆9 f(*f?־\ڔTMʡZ|0V0]:A5 ǻNjnaSΙi'h26Vo5I3dpH' 쎬*K^ZǫM!6e 2FɏU(Xch'-e`0SшżDesFt \52䫋*} >)o\Wm)0ŷyD41akUK'MVّs'!S\tE[F\&b2Lg iJ{p橐Y颖FSFDt 0N!>yPi) j0P (TELW%  OB{u<0oJ״Nf+#%a⒨Pm4¹M0aC۟А_wUUgaw, 4wE q g$BV;eӪҗi晢J*)t'876x`8uL1˄B$nOC^ Ѱ` ^5.)o/erlRۏtn3oBegTc̷{1ZdWg*WԈ FTo?!Ҭ]0px*,j2SCT+E0%9‡bwaSӼCrsm0sG<UҘB9ܴ6ho!&!UC/e[=*UamVEa`p۷zEIM֞+TtpX8yLaJQr]\OT0 peCDw-k{߂Ԇ* fn0حŶePi{h9L&؀ByVSlpJq98[19*!Uwӵf,R mv3 AY -%i)UTCa4dcc{ydZ8\UnU>O9?v7k!kw]!aiT{ƖP[K|]TYXxzsLT2=.e=Z\;v9 Oc]rW^ ΩR;PLIsX^*-k2Ui1%R@˪uWI]PڦRH'1>OӚCȏ /rQq,cSjwIғbpQ$[O9se; ӣ[ao^hP%Fj'?%/|*FnwWt=>LZ(妨TyVLNl>.ᕏ;CMZTAkcf]QQn傘3 ohdKO|rXJ]Iܴ 8Z+\Vl/a, ³bIWɐ\3GhEmrU|DuԢiRBmUtmrjԫW1H](˻q.s_{ɓ0u4Tj?OfA:a&_&\<=Pi0{5*Lx^4oq: xUuwM@I\Fқ1iz%Ps olUsbӏSM9AT/ʂq%RDStt鳆 ]} }ZdIaM"JaW`gtF3$Ð9x+̆Ɠ@ˉJp,6Qu>]Sh#Lp  UTS#7yP&zǗX9.VsG4LTmHnAE0HP̭knp6p*w901qE5Bvlvj3Q2\z8L!'9+F߳ly'CQwݪ'޺X;iOS\l v-Yn!uXhiϚb|d%bu'2x&ccyJ-aOjwU ;)9BJ*fLseP4fn/U-dG ƈlysR_=*¹5o$8jT#^J{x5CڲJ *MDD:SD+Sp W{U3s'䯜<x!59[7ИCEVRᓪ[ӢX3> 9o)/]/" M`qچqopS\hQwo,Ȫnm~JSdnNtHY57_|Sʬ{rΪH1$+ʛYCFaSi/rMw77NeuFF\uR 1QO-9!9ʧLn'5S: uTE&G&T%ZR9yu'HPiקCZC ȂE;6-_s-ks `Q)6!KZ\yM8-b 4fߺw,Zv؍&Gka WFBteb[Ҍ@sXb7`~(" qqOڌ{@sWw=[k XSsia^O-7:}REĽ%֋bMXGT N\wqf_lh ~zdW 35cNH^- m~^J%Li U*=h*99 dNי m'4 =^ . gU,})H-2=\qvQBiܲ-TNSk槌5jA`v] ƔSl\nƗD Dp˞cU:&Gsfc0ċ[2+[ leUstO0+Mw,M9җOY~Ik,|k UAg*ė.W,M  ]jaҜrȭNU= W$2FP8H,8L;J" M~92~RhoO"2P a0Y!b ơӉt*FNe[48Sʁ#00!„uN!B%JjNS` fm<[L X]u6=murq ) HCŒuV?wݴz*2tM*Tis=ѥ1HSܖDo(yOsH*o1O(CLӜ-v{ˍ̢skU:z+`G$O g/?Z5Maf^0o v̑™d1Ls I|,[%ZrWDJ*خ.>ISME6sT%V͍ UIU5c龠]nssa eisne9w'D 璥y!N;NkF\]uE"lY%1!;@Fn赘9jNV$"5:c)d+FY&gT~#%Vg+[ {<ˉ4JB6ۡe0 #67'i"sa$oz-vy8ndYRyT4 ?ֹ/oSV>U8e &2s޷-p,NAnV ՍCy2skþisx ϼSZ2o S\`<t9"I俁Nvd֟MJFن>*R Sj Zŧz@]Y^wPYZO9ALr~MYsT(Ѷe5. X~*8+-CSih]#H,*=֪n-R4PsGBTE=i'(Md2Sv:mҟ{@DCT`ys*d3*38JwB9'l/v* WpƥS~jwCvVzQEPlrofyFI5<&Qu٫S\Ot#j"'gJZfUzuTkK}+_^ jnq7wS:bGIW&O%yuBC( ؎!U(L vRӞQSgRK%We4ܮlQ'V3r` M,SN5`^ MpR'`*TJ\RXzTMVΪ-<{ȈJim뾉棄{f曊#\kǂJ%BoEwR匩;Uk|r@iV ''Z-'#0eIg;U'dNÇ!hPUFj])Nb&TOlL> V]᧽,8mVĹT8+XִHh:'2m uAµRT*WRz&419tKP8dUVXF7yhGvy/]R(aB eU"ntLl:k}a4Ʃ97~ =IWtF\NM+To$é7@T$ocZ eW]Nn5淘iXBo&HE{JJEك\i,>6uH) ND&} r^S_&*Gk訷wE,gz 7xEu "M*Y OIr*`yU5r^TAQP*+Xp 몴oBuѣOMU570莫z,嘒\5 _CA8g$3PcJ!90V"s`}|2M[f p9YUpYF\Z/ԫ{9J;UYCZ9v7gOk9ͤ*oI̪o:j}1u^L]MډT=}ٜh~r͒ʬUJu@2{MIw sn*,IW0vxO+HtUM:cD2s䍆hr4ө5\"~ix鰦SW!9R)ٷg&)T{LL*$#;lz|Ka{KQ{Y=Rxie}Bc n2X иsrVku1~j)\w! 8rꯦ3sHTa>IvF״r5wODi <&4 S[̑MBtԩb+:QȕBduqU ^o//lt+zL;,ް=NY"%E)FHx&rN 2U M-m2fJLBf LtswŎ ijUo;MÒ0zQĨ;;D^rr_(duty-}Ӓjb~ٽZfa uE2=9F>J/en|?p$Z69;ܿ5%O}Jgx9qpRz]a>jCi>ͪKG;+°&ꆫZQ@dUVdi)Akp{ ENо.l`)W) %hMb~ xvU٧~k E$^NlIth1NkɸTs6RՍD4*nžpN&DHPEc*7xE1D(vFS*Ԩ[żAAJO)>2d?OOvz6~jj2Y rw\RG{!ba-=OagQy"XSs#+v?6rN ouT5c4V7*'s)ﵤԞM9s0uIR$~0LFY}U;iGXU:#2:"DTd*dR{8\Ce \Z b~yަ~mGxћ] ufb}nG%@ BNNl#]5S+D禊Ri><>f\^zrMhh:(VR$ǂ'6jaVUDGUwltU;E7x-6E4Vtk#6SHjR.DgR}:&Ϣ;Ng%15n7\(maiញԞM@t7{ \;C^HB2kS97 fBe+5G2WխRi.{Qh=G0 ,‘vAN$:W35W7U#z쪔Lw__:d*] O%~Sp5^[bhlQs2/)z;5iBq.Ъ}Xݐ7؆7VT, Io8}GnTZ> hXpXv统2TF4hiS{-tX|S4ƆC%jЂ湠>J@@X;6 _4>US6YFY咎0Sja$O##$ /4W4\Nj)r@N e8l+Mkipo~d'5{ajw^9m&M♘3bknYN/x,FWv޺WeaSRc0%7uXLs[L%f|4!n)wFeTQֶe'G u(ӧ<ƪu3LjKIbZp 0oi>ebnT(!4 U*m8 K2Dv%:Xz6.rprn'z.h-JɍXی9> LZ%awj# m26l'DFK٢Uz4m> Ana ھ|+轌&g.i'[ ^Is# LjeW3B&Ys'ՍO N i-2GEA tR⃏vSpd+<G=CSi6*r]6V|%Xs)-M7`l] a&e;CkOC#AYiXk 89љ j NB;=.yTR,7{\rv(U#019?-$NS0=ػ{f::AkI 0|D61.:}3rM|D˺ǒrBU|"}DڜUZ+u3+w=C -Dvnlޙ*e$4ݪ4(lg,NY >8y.-mrjpvbvJC$*gCaC(Or2`Ach&.U{xf6X;a,Bu?X7$O8Uq>ʙ u`Ԯs .7. $stnvpgM<􅀾7{+}]֗d2uh_Vv%E&Lu32lXaMsT7o{IwlߖʂXSgx0Ϻ83PܜUkR~G J\iʣ"|s>AT3=>JȊtۉ [FϚ̔GM}(rA \sC]-eaj8Sk^-QB%5 fsu%]"NjRITxl9,}FcWg׃roŰ_.iuNU{&-N?못OF3F&i4UټMdHtU sȬ%}rjmQ%B*(PBjjZVHżOD:W8s{Wd2EUnL)%6Ub,Y==9'ɐtld\!P֖˓qL!hAdN nmV2= ִ 3 Vnג Dq#T{aꂵ BÚ3eSWxM祖תv 3d-B. Xa;CmXSaUa*yM I=Zݮns|FjDfs@?UfYP^mSLU;mpӲ %5?Ui!a9Z׺ R֑~G)X"ThwsR=Ld7K@]a:g%b(U^915 A'xm$|kZ^i } sN{r懚U reZd4 tZl(hOU0O"4Ҫwµ̔@s|Tҏ{: koV!3r&ZnU}Wd}u.qz#Q !4!s@~~UЧv}Ou#;_"֛ޑ桽Uܙ|kN¯sT #Ԉ]J%=vTe S&9f,Pky1Z r6$?6)%Fi=Rw& L1؆C'4.h0>h_dSB&sxjNܼhahC[5T\Cs|M'-|wfL/7UPjI?W4*HwQĵǝ:UZoHt41 } wB%ak4`v T4f9ʕa9}wBZ2V:$5EbL>tO>˧jkʕAQw?%<_3"LB=#Ȧ,{f]$;kxО\:Cs#=`?]NkHeyhi҃2VB r\i<7FIĺteZhRXU.ͱ)aMa=&ӱ^շ=ӏZJqZWx&TU4DTЪjMKWiWsD(ŚIUAȝ=L..cs/Ɨ݀g'e&:>9oX4.n;pcSt-DHF[7 VW\Z4^X& m h@JWS(_4{6%bnCÚzrXVRa{X*"X=1 d^2(ves̯֗&}j=א⪁.>U80IgHT]}6A٠Z e;ӕZE:O8TϮ;FliCϼZgW mrźOS-ہn碝]TyܧLWqƆ3h>j/ 'bg,=[LǠޛBz)D<5G0}j̀B{H>\JjQUhTTi~ .mQ]u<7;Oo3)w\-FJ g`ZoD)x)9#s.i$w^a9X߆oHj6v\:Ueg7LFp/n\6g}jRCi#ԕ x,3s(ViNf*Ҡ*E혒R%FkLֹn nR):]ҪDCQM-yJ!qCp#CITm[!ScZchvjv75O;WeN|әMIn'{jpdHdQ.YAavlz Wn:'8#>ΛUJ֍tySCfnW6T#)we@(-i@V_ ?6P7 | ķyftx {FJv,sbp? #.5 R/5%4Gf8wBKxMzmNצT.oߪkq M8OZ_)~OK?/~[R⭯_U?]OS<U[E7˹t*r }\= xk+Ѷd VNhZNIxfۂk- sc< jՇKG4h:Tzʺ]tD>aO5lMk/!T3ƎMD0uw5ID*uYXCr(3iSwy9pQ_JNFEnb&2u]>jKFlgihEcYלx.h=Pc]*uNWJH+{L9/9*X~j`溵7̥N:vs)4O3_ُ5]ի'+O%rQLsWeL9'"B| 4 jA @6y*[ʏ n+qWe)c\k9gaSAѸj` <̗@3UO<; N qDCG4uz5/ShQPTSOQL`J>HY:\VEd tVΪ DL(CvMkG=Sapzc C mV6&zKsMt8N})i§!P:sDv^V'kwZgMT}'3HJ7QnP" zJTY2O%Ul @ ,c:mZT fB##`ZuPŴQt0BR:Xw @,fQć8>< f"Y49&fgeU~5^]:e`7':u,S\Y[1ⷕ(5j? |G#.|gzefx8ukB?i|X:#A([:FY;1 j-ϒ,{-O'-P3£e'Q06-ZG%IkTꝘ[[S[w3fٵ)B jhh@#cJM*T䝢MJi~i |3& תcZ4().ˬ*iS>P4ʡ2<¤׹+| .m@AM2ܑ;2Pa -Lw.+0!krK[iڴd}L vТgEKMU vasyƂ:ibiu\C1qUjƊW8{IO ݖQµ=:/@:Eu'f#U DʬᄤrzØ_uW[!zUPQ2m%vχ[cZτB2[ݟig4l[MZ [Fgލ ˸Jϓ^#{?U$1RŗU+L E%4{QŞuV=h{E5 EBSD>aǪ:.ĶTve4vB湁j4RUèR:UxWh>^4k @<9JFD#/0 rThv@)Z<iDɘPB2nav=3z_U|0U.l6Mit}5yoT;2?D;63{;ٍX:Peʥ0Z֋O*0>;]Й__CtE>s`\@N*q2F6hJK ^\ײ59(kNcz*"sr~ Ɩ "Tq[>}"|!n? ^Z]2|jW^+FJ(^ժߺj|@~[Y nqG^_ .+?g:Q؃zwRvD3qP~mLj+UDi4ieg:ފ"ȡ =QԔ@lm0S"v#Ѩ]Tc G*g'?S5s,4 C pOuMaΌ;\c]6MNwBJզXNuЅu,{90@>6㩕O Q[aT ->K?(#jM+z}nޡNm-<|dJ)^2\uL'*:Ҏ)ky(wTtxX_ItOJ8*cʂu+N-{rPA6i $CBn`p2U,F\\^2sAŎu>aqշ8wxTj ԘVsYEvM[t(EQ71Qy-E^S02Oe}ۺ5k=l%3ۢk5脑Fa= qtQ&;HC~%wGl>Hf5*3n~'r#[S#p02ۊl{@'(!f:#gʔwBO0SXV[fRZ%> L;NSfZW~ZJq4pqO5Zl+ Zk:m#qʻJ9BsI1FX snXogU!JvA(ӞIB+w6=T:XG=y\; R(s1f<=2@Ts](/P 6l;P5rR,LYV״ N4[4tN:X29UUN.}E,7>V1f%We,óy^:'CD a9>IτriK HFYl-uԴǩ 6J' Mͣc!=[̑Aˎy,vy#vR$Ss^L(ex{>6TSo)nYڭvu <[ .K~uG[y4%Ti܋2VG S堟 MG{sx;Y+kD OԢ2)ۄxڏQ.UZg,1('8eVX`KNzme[gS3MWyPUKtWgϥJ~ 17T^`d 'xRbI(=:nrpmo/Wdjk 7ef՝S]|DmV4R O4V)T/K9B5hѩikgO5%Nxy]Xcc*K4E܁i"-/$7lȢ@Q(#]|zq,daQ]Zg&ʻƏNXmPzT Q\HBm>(*7_, niGTiyx#De@MdO܁sO"@UO n#YAVoS^oǺy=dmi=q;SLWhewO|dn7mi*$ !5vJ^OiVh> lfuLIkD\xZ#6Hٸiin B^:L8OĆtFѭMq23T+==Jcԩ[ﻗU|p^J޿L/ɡ2{xA{gf@EG0\>9a˪K:Y#FӔs+-kE>\â8rz#D̦Sr\6́Xwq H-czϨTi>Jn\*j%sTܱ}E>J!Jķgc4Rö=IOe\JOY *?YXe?Sm ŸQ#O8o uHBwOG;=p SE6ZV'Z7ڿ̫r[*frD5+:ֹ*6l:x'9O;yu ?VUJUjS1nV5۷wg?lj0NDѬ#pU=Gj٨FBZrMAuC4Ji$D\Ni}z-T65ZV2*2+a麩68QiVgQ>"sRk"AL&*Ew֤s@:V xF$3 lA. hԮѪk /SMJG)O3(z)_$S7JJvO%g\@lڻLN}oq޳z}~~TfSNKS8"&ssP`cIB\G23Nhx!E[ta ,~6ia֕ڮ`jğl=iPlt~OɅ)J gfkS䫙x~}'dZ ݵnPbwڬKNGW0Sƒp,5Kvb^@BgogvӓSmw5jZUxty*bicXV_SCZ^~kxOwz%ժa&qmG谴i vchS mJv> -Leτlے_iĠe:簎FY N~W1q2VWa^#I޷?'o=m]vdB#ll$aooX'=<^ݟ߳ǧ/Oُ,jL=[ڟ)TK/\Q=/M]9 'UN&閫g JۿمʋUTuW0拭nj~A>V>ϟT)%4jUnr@,q2LftB 2d45'SkA5:ըiG)P>^)nwU  >4r $ ٔYk {Y8 sd7.J؟5E ]z#P8z!fT _4l)ԣj+jVJNBJrMRRj:tg/#%%wTP*V$P੘jWsF[v*3Uqg5T2ghpp*t5 WFU].m60]9O%ӻ8&sXvW8eĪ6ʎoC4V AD%T' ȢP7.kPw6Wl ܲV({a䩙` gَ~y>K5_F}@'ŧ}Kyo-?]OG'/Ysf>c|eLϑ> !7~  q脲\isSu> 0_B}E.[9gD.)Á̎$KLiR۞qJd^hV'*o$2%`"S Vj:ݍQCdeqdV;5jX[oSs΍`_Gn7hG캎s 7FĈapwL6AiT3!xI˒kČh OǾ|SqfPs DӁb!kD<q4؉k>W"F7_tQ0Q i꣢ᖪG"@o!o|ܚ#5],"Lpea>zɥj|ef4֎gԍ(F']MOoK]d inmȐ &юMyq@Ore_P, wzY&NtOUjS(CC"ouF\ Ag?(>4V z"SG4LS fs觢>/V%ًXnN+ RkT!W͖Q1]>O F(XoKmi~JFl:l"u m-k:h4Ph`6yf 2uD-LDSIaez.ਚtYhAKg%9ׯD5ѦFڬwB pGX_e//o;4^}܂VKEMRM,~v5=JƉ)}V^t2sӮjeTL.`,5Bg4doa*l}Gg2-:Ӓ&T8ŭ*t)Nt\ch戹nNJ '0z-lوL}.tG⩹|&dBu OA [q=%bg5 2!S{s69Ǫi%FQM}` *a c<pz S l:eRC$jUkEk8^܎[FpCVWihϚi FO{5s_ZZr7K\~m01K/`6EW@ EHwq;zpS2PKt(憋aX'~QQ%S9&Fg%sA4ӈUrnPV'V˧E!s]vL6BqP T6YQmkd=3i{X@Я{=eTeBr0+~Ti> d>m9I^!-?4j1úQ"mKX[mvk6 Dw3g }"~p&h6WqfU!i1: ǩnp[t`ٟrhsn-AZ*:´R.k]uIXnZUk3P{k6C:,V-ӺQH:tҦA7waaXvqqT60 Tk~4#":S,jù~F]7KXnqs`&"KXJ)ucg/P(Cdz`z`/͞MT1~s]/@r *-xcF'w% 5kC1;E@_Z@p!YW.yT:>a,U">%aulp8jqyu$Th~9*ȯLwEڎ=#[B~c jsV25C5$I/FK9xXa_ C搏Y2YHk k񚅏yL!QbX ;)TɹZNPĹjZr̦3ؓwąs:N9@Bn9Ŭs.M=o ]e\h4+=U3P(N e"MFl:,ڀO9 =76QPB!Fzt^=G jiw=!s|=NK IvxRcVKꏪ*Ylkn#6Pe&9uVs{܏Dw ̂{.XOrtw%OxSۙ'w^{NcT67˞9,!zӛKb|SiXB32Ng5V/cɸ]5iZvv/l'Nw M㫑mџuW4Ѹ'H@TWkv7R<KLKxHXw5ָ"i .]ƦsO5Ru_5GT0{1憐-vl(*Ttb)0xpiNPwPThiC|s)=f765x'8O-\ A9ce4xf)aȻX*)9SCEsRI$a'`^ݽj*1GcrUmqZrbiT47gjxl#UVT0C8Ӣ5 Ou{9rٮ4r*6I樄Ջz#IYQR ҡz=C9h门=q9 KaVeMt$ꛃ5#!apo5*ln5nchx˸}+K .szeU?86!cs^C K|psnnm*2eȾ26xFkgT hAiU1vIyק*x%# c(SvB1)j+EFWyW{g/dvBW*Y^iվ[)eT*;aoGs.qxqm-nz.4o:?xZsEUs5nOS^hQ tO*i0N(cIy'c@ آS<W#SPMny#5}ymw~Y*Ns.q19Q b|"dJZ=Hl5(}AN=HGc̹(u9M%*LiRDs cJ@{]@Wg*T)CM3G9&ϦMᎰ993:Pv"Bu0Ak9d`Y iR1ڂ}Ȋ̔D;1⭈s/oUw@ڔ\eBF8UB'ZySk|O Kď }IO]cdm:-T"9&^?Tlq0JnAv)g+m3ncU7|>ypmpSS+JohmkG Y5=Z14x("bUJUh+]T6x-dHkd4%Z.r)Xu2S h)7UzSsog7vzmHTm,> `4zXc5; lxNȠ!"%ǒrUS Xr%,%?[ 2~}-Cռ붅Vs`94N~g۱,6Pj4l.)9aRR(Z@Ca|@U<{"v 182*x8;w~yKOXSd\GQ)6VjԼc\s1RF}sAUw2+X37ѫU5hOd| uR`-3/F7 | Zb*ꅃ,iQBpU W yUl ;lzNUoe%¦q0n2h'\A iq^=BaG v=9k@U:' (b\cR'l+VKU!BQɡVw ~+TӤ7sUDt' Qq4.\1cZp194v"'N֟%OsV6:䱔ǫNg0<,}cy^is`8qb0Ŕ!#%P\ ṖRQf[7㘔ݐdl!T 8u`PB}z/7ʄju9l5ͧV p!qƣ" A&faL$&ytB'eM!"}HQjJ%\٪D"!{dj)5ֺ+vPg-[SuA n6g$pޅvk!ȃ$ϬK6{ksY(QȊm^s;ޘXjK\Rܲ@`1M4)]HAI$=*WYRC+c~}Uz>u_lмz4=c'g_~T._ @!ڷa@"U<^z_~~/@*0G~iF\n_?K_Ex$ ZUY>緈w~X\~z+^6#7~z5z]M0dܭhOAՍ_櫽K/1A .JT^z'Hѷ~VЊGp\Ki>?Uz\"EJIRz1as~'Mz>3юo ryBw6?1 >"[NE_/KYCRJ~?/1;r߸&ehk1;r)*ܗа oWԌ}.\r=JE~RT}ULFW[lsbp&low._EJr+֥~ z?c0{.RV&*[^(Korn>w kftbʑ??g2J5^*TQ%z+ֽ.z GzxQzo_ 4a*fg8éf2#wT|Ns>m!GЊٷϪ*GV R>Wj쎫Uo7/>WtQ]4??rEܹr2C>RpޜD:Bݦfrs2J5ϭJ^%7j.nja$8QF; +fh #>cLEޅ6鸍a ?螧JeIHM+ٔj`b*tB`gHpZ <²MvE87ԇii7gңY8cb2d+Xß iGv} 53m@Cu~/YhXq;???bjU?NvVyG3N& mVsTJ2u>gѝNNs؈<,U1(*yNDU8NI\.j3 OF&my+oqڑݛ@|5;F6mmχգf=JYcxiP.+,E+vlWE:qU3<>*e.Gac/߻ .^ڥC͌?'藔T"yϜN2m֝Oah6W^"9!Ҫ{2y%L"c/@ s JqnqҪ8.Pi)J.eB%qiҖ2=lXoy!Jvmy4\?O?Lyf_&+i9gn!T ,]$ZXtw 4vN_RU<`q63TT*@ͭ2>=?賘YrKhGC yC;D"ݮ3\4Yt!kEt4D*Ǣmlf!H2ҾOmW3Lh7+;z=L:̱حFf}fplhHW(Rp=L`Oa2vوe(  >|eN9)%Snoq}״"=&]0*ovK;Lg̳rwmԽ[]]"hT[Sa|%{bDlıF!)vy/>6t32j#+LmZ=c&F.[9vR&p`U [x8579;s1Q)q803cb.7n|SfmyBHIv?0PusNjq8bQC/2Q<\7=sn[+5ۙrQ:tvE2}c=೩Z_/IkYQ0ޥ⧺tY,c5<J4jzjp0į< 6oLx,E\;\y0#U3Xf2:/?ybs"@W5 -BPȘ$;P)pep+-@E ۱h ]616_,*s0}MojDbKTP/RlN!8rNEXS }}u,u7^w/>#a-x0z DG&_hX`AaP+؋|G!gh;AWAn&sKPҍq*%q:ypzvs@Ydv b\S?8Gt,ra g#TBcؼkOc˯HrIGf#LLJd,N<gTBsWCA0ےqX_?y1|\3PZg?f9\yGtCL6q:',& -ܼ{pmy{\ARk<^Sľ(HK-qRg107R> IЋ^[+\שjHkIot@-⧴7V,*9 R\UyTVuaBbƿ1 dQ`v= @WX3RSٙAkXZ~IZ*4a.iC6T,wlJnGDKu.j+FRlg3r;.mSyx{WgQ*Yt{1op0/b3M>YMj:-ffA3 p#_qa!-kCSLxyByn#Ek~. ⏴ ֈ RnOyxM w͌0ΰ[ܭB%ׂ__B&x..lDJDZh[l +5F:x;K+ʲ\yW_@?ISo[i<ՀܤWvFe? جck-وj([ݿf06]I/]dUT&8/4/_3+2GRj*AM O9bur*),% o}L20~5L}(~xِ!8l܋ßxfʍbt5ůKK=ԼjnmdDϢT3ݧDmLΑlMu2W*0Dqc%a" iEi¸Ut0A/vcEyx@} *ΪQ^ﳬWsbdNC=EFf5xmoȔCWib(4ЧZ[փ0)FA+t>ʽyN1lƯ>0x8gAl+lA2FI=C(3G1S48?쳵 1!g-j7wnT,rlN u㙀#_ beĪ`e-?t;xoq^[7y*srnR13kOeG ەKsDG0TgIm&"*.|x]y{҅즾"&X :F Z;/ZVrusx/%zwV[{5^E0PTo]{]|LLM  חS  6(~g1*ҹpmE _SpZ{և-5 ¿ܯ; d9Έk$i TR&~ȣCL;1u ݹv`! \c~%{u}1^2͐5VƢKuMJ)PցcE bX_%3^<ŠeQniGyJW_ΊbcgCg'Ɇ8\UJpz,C/ ;ڊe*p}eԷ s̭l0*Rw (J2V7dSY,\^D,YcS^^cP@n@ l?(ljivþ[RTcm,x C qz^ h5)okѴL@lk^pi03sfR!W{ruE0޽P7WF*pFS' qa#kɰ }u'T 2rxѾV /5i7Ra"ԦkSn DS @ߺjNf >=̅vfeԍƱ(]g/i\Ӌz@}ӦXiP&N 3Gr7v-h;AA08Het;@TldM7Ѯ8Vhׇ"t-_.#e PglqAvR~IV|_JU)wmF"rU*B(ڷ v `j)?Kf:+R˗P*>ڞX & iӨyzAn?L*vʺq:g!ZbF+Jx9eLьF``R\',xҜ% k^ 4,j8L3r8(b(d̥]UgT/E.AX7X< L¹8z] >&Өyc/u?h5SD#x.+y`tvB4 %{,”fǥC} ܣG ԏo X$wgYeCPa)D!pP=H !P_(w:x״Vf%F_/(J> 0 X0Aw {17drn򍣱8N58or=C\eTs\F*.iZ/""NCƠ6b=Y fFp'_1Fa,~^ѹvL%NZ;Ҹj6^Y]NKQ9jZy .[;i euʸf0S߿IN{KCg\(-~ fA`9ka.`:]bRl~nMw^ n)*,/@rA^rGJ"SwXT&Qi?X9d\zeDzE@濾 ™)uɴ=_i\;]>k#~7,b75tStpyMn%OG3⢪y~hLcah3veÈnV꾦0/y}fwf h{`r{ΜRq&HMɸ?|i4(, saky4 =LX`10̂^|GBM;(3O,Mnd,C|)4VD3l@v!`(')il"++(cXcJۓ,z@ Mw!RَCh9J- ϓlP|[.lxD(XcP!Z A* -;G1*̳Es+̶yS=:"ʻLjoe(#b[ ϼn:Nx(cWeK^)=9v 阱YU{͙;R=it%İw1&˃L+e nkcɺ5W_{]X73E)cNO[?׬~y3]pP9v')@P܍+y:L}v_ R9iCغ1l&MP9 3.ؖO0ipo;u12ͣ-l4W4Dte_aX#>ޱQ!YW{JþiN7eȩ2 \P]XI\ y[Z#s{KmM)%<ܬumf:Fߙ7uh&(RPlr8͜)rۆe&<`Ru6cY@]piX`!RH֎ =P;n=\3" AH\5'M GP*pF"_Dv8ʑ 59w6Cv uc`N,eBݢlS>`-zSG0+US_`INk(O#[X5n58|T[2蘜)> Rl*FI>:]zinwOMu_-R՘8 LZ4S(̞|J^eC8ԶMj80 kb:#䍥t?x Mijz"y4)RKHŦ\T2X4#ڱ݄۳n,'vY"mx5 ;+(}k ˿lJpo#/(lUQp8S5NC/-76j%+Lps0iS i:<@h}UӞbĠ~߃aQ7#*v}}7GGGQ$X֥reۥuqC1ʧk/X7pJuVo3Ji%FפZ:VR 8Vdeu-o=k@-.E~D~9j 2ccT2+fR-*myqnLeTEn9˔,5b] N(Q 2ݞXmxNqf/-WT3,LQa|.:-Ws&1BJKUUQu/ Xqc̰ K(uf UkHL~ "YYƷaSa3jÒn3908#_X4@5α}pt; q *m\AZ8r2ƫEهR> pza=75{Ģ2W*:@Z KoX%k~􉉧P@5RI 6UET_vN{7dfk_!N9%PY7ۤu!PSTBUroA%-H"2XVGIsIQP|п rB5.p}`!riC&n tKzL˘DF55+;O러DYElA -grl= 91Q+.%JSS2ӯՌ/^1!􂥀ٞ+hc^Ng>pdu9:M37+5g,EEkAy*lFQnZ~C}!WpwU7*k f6fQQjȝ扺:ڟȧ l kmAp@fC#ˡLqs/$;uu; ^S7+M:Cдۊ ;&ic.CgMU}'\!{%z5X:55\CQTW8fk>0  w,yB9<v1{ܪb6ǴW\thP c|z |6|qqgM9V:B ?FT9ה(7G N8 iw rx! jϡ(ݙxX2ʶcK5}i=u5Cs+Eqhj׈EU_)!_mK xb珙@r̍l2{9C,T(r\rCb\S'J[';K#؊!*UŠ jcuD5)ia*c̷muoAd`@k Kb1קoN`DR¸ , zb%骻AϤtλ4Q,|acEyuYֹ-|A9/iV^jTF/LOvpOc9C=?빉Pfrzw Ɋ<Z.˗>ފfM;Fh3V% P',-+a] KgDZZVq9D+f=f RK|7 1eQGwt9T'i˓ԏ ^O9Qt0 Jĕkkc:>[~q Dh<=&`{dJΠ BxWPt%T~{i(vnPF 5KC"H2\Wi'ٹ|8P 3 ĸ1$t} P3g.%{n{ -*k$OA<@k^{VF rŴo=wίhT 2v)itsrK)0RQ&̩[tg\k YmZ "gdIPљiӣ=}fgl8l}c.ǘ4*`fj\/ъAg̤pO35B_2G7QsʨhRၥI{푱at\{h![LJhcu>D׵L@3([|Fq<ĺq4#L^jA8}9#ѷA% 1K_V`菊j`JsZ, n5|DX t.}%ٜK^ p7+2TPjffn&b..`HԏJ6kI*hVSe+j>ePɖW (prCo8W"8"eXΐYMaˮE5\0QX#q1A/!~ϛ"BfAyc]!N ^ٍve(YA3CvьMҔ\4 i8HNPeLk^1,a. =!'V2r^XK֫`!*AǼ!u# -:@׹ Z_׏JE%1S-naNefdK;ezd 4')6;Wr˅)Sw٨ w {JuxB/fL=Jd2ڰဿq*1ײj0lX:jMޥ59=a_~%x/`=vf]VWY`VHhkTy?ݽo +,D6Kޘ:Bڕ ‚S$93k7WU|fiD5|2ߔGRӻvw !2'<WEo{lK!hvz[e1}fo~¥3 _1S_蓏*mR:Vp8qvo@ 8CVK@;$ eBs̛\AC #K䎉fU>&p*X/tpD\"X Jd,2e h-W0ֹW0-!;%.D!uԱo Geѭӓ MRPe/*%̴u89Umt'U*avC]ʼn6}JB GKU+xtu_tE,Wԕ_N1Tq1T}?NOw0  WlPKtK!*]He|ͽGl)cMÓ")KŐzEas>*O:h4Bg+/ DhlٰykY̺f.HJAH9rDWq2tb6Se۪K*,gC@%U0tWȻAD|Gg˒0qbY VZ0:V]Z")}Y4ltNyqQM13D 9ZΦbG&nҠÉg\$p3&%UI}J8ޓ( N}ҙfIc26w@z+S2sc,?Xg^c$FIqUl {_&Tͷ̺z۪_އ+D1b^gCpA\m>]+1`R_T ;sa IZ|[9s1"n 5CJ(auqݭP:O4.s+=rgЎ2v< HPn/O8sbA|0<%8^FtA9԰Zw4*s,r8@ hpgBU+o7NEq @w ѾoNd\W2oa0sI"'Ml)S30f5o,nQLBk84:i)LxodPkg\ L/wK./t k}BV%7kC7eÇ$h! xGZ6 &z?+LcgrԩUӴLgC1sӦmdh:N'W~-LLsT|z%-X9h[|%%Ur)Q:l+͗|CQC qRx; tJ 4_Y͘|fep;@ KcL '|z852w& 0&QڽY(EI#7ˈ[K Կ|c?R4ωe3)G Y2q) ?XVx|L`QMavMҀ YQX%mpg3M`x J+oˊ-0_k?_n:1-# n*vjs/jxO[U :_R{C|S5IpV E[ tDxALZ22FAܹ§KPv,B FNVp?E}f$;L; K_\w۲sS>n:^W3DsMʲ/OB$Zt=|L"~Yrkl@BO p1R¾H0M ڨA+mħ荆qJPz8PJ@59" C QIT6yn.v#\φmmQj ^s/Ky#*"!6C |J&֘2%ӈeK%0y[x5ᙅK"!^b2Z2i˙˟ e)Eݯeqȥ5j,3]lVN2ƫ5bo11u)~gz~"r_I{( =sɃT{˼u~)9g%.XE)Lf |XI~R3/WI!=#)):J^.Zqܑ[@aGfiޏUYvNndE䧳LTTJ^qPY%'A8b㼩WM?1%V^.Q%{mpSC;#0$ƈWmTˑ5.ԡ7QU~R,\6R!:]A V @x=}fơLy#=pSW A&h>LQ,VY"u9[v)̣j2xf'a'Zy23#v} ݡs"l=m9(&%q*VT N%x[~&%~Sx%x X[^#ӹz̫S4dv:CGPy마NYНۀ.VVD`r }%z~ ahr1b ~GRSvJݵs2>t2q՗z9ˎ𣈬ll_(JzrӨ>!R2z03gY>Ъ]61.5Xeݩ(/ӈZΦK7q,Ctu3 hQn}2)eJTfp)Й+x#3_fMƷeU{%T;·B!$3bkhr{w+'94d]NAx=j S+* m9-`u8Ҿ%Er|D5 O̓){]0T8@<[F?5@r⯷]"-X!O \`b5Y6lZc`&rbanK?@FrE a[D6_M4 JLq3+yQy=">龡+'%G70j*eHs=X2Y]~ muYH}‹28^Sb8QT՟hL#x9Zxk~!¨|\6$p }%7tK' ̎YU3rzO6Jۙ3P ү@f YY޸] a2uC,hs ;,wcmcP}cNC A0[qK?(bYiy 8G8{xѴ+ߙ*@k6^N\cqEB0 ![4švKWvPR\b-WB}Eܶu<ǰO*O7ַ+fvؖ0 FkSb^ }n͋ףFN5dPNY(/-VT#oըfImn6Ʀd@B_ISў+:Ni]Z2^.`Kex?)J2uM%b yFXf%D g)k1!jwGO*usn7S2wI@ʢ1fs 2RJ6R 7)?Mbfzn'L"&E 1'z!R^FK!}Iӊ ]bZ@Jt$6^.v3+ PIJ)2FsYi+OUVMyDK_dǰˡq9Кa va-de`ģ|Z:=yo`Xw1緘δJqYr^4|t乱G,X)X,S \PGb_I`cv&H9%V `&6ʼ so꒩ 1CAo,))>,Ez-OA g0] aK֞GШ1yd[T6&؏q ,t`G_&s19Pg!'7 9 fwg3I.eDc>F)ΉLWY Y4xL &,m2weN!ĽgTh仪LqZMd&Xad\1243+q 0H)}QJE* Fk"G>m>ӓa!"{ѝ}i  pLXQ\< /o߿݈L 1 !y 6`dӻ2nX)^,ZU2F'2q}rTAaVUNжYje\=]fFYږ\/3$}.Yr.kCNh ;Z~k%-.;!Ny"}W&#y.s(=/wؘ>VO#jiЇ 6kTE ETu4,}AGXo/uܕ9+r8+ a!eM1$p0>"Pe F\g_5QQN;C [m3 ee_pg‡SZ|[?dfVl8-mJ{2G\־g'mSM;1M%ҹz' Omkn`/ӆ?D:ԡCyͺd -f/Qx_aZuJi.WlDR=/*EcnTL}!=WXoC|-v3u9k5"y&|X,\;8`<,GCkDܨ)v@XfEL-"\*s([߫}gC2E%:*3iPX9ݶf27ԗ6@4*c!ŘOɣa _s+8秆i<6|\(y_)a{,'78;[ O{\4.(BQ<!/oio.ml)2b!q d˿MbfT0j[he]hyD`/3w~I\^(&,ےÇ'C QLЩӿĻe<& `1/ PwQp=YY|ŝa1nZa~sh혠IkԻW YYu\J.uqa).A+sS)Z"7u.!ʤ y{Lyt˭}Z>k)2:21yu7K;83Ծrena4zz1s/G$̻Q#AX%te}"Ef51s3[T/j n6n*g5*+iNP.Q" ʳGf;Fgf6Z7*ӯM!y6d37K0JƠVvgkk kgK5\R]w2_s,}Ha5V(ԀYyS%_ MIB=XP,p'#l%QuSN}FTZ`A\p}s*TɆdٿYf<ޮekΆ$AϼQa)_R`~ܰ5gl0 0=_V(^@|Po3,s}HfWf}|Yf!~ l#"eHg蜲AkѦ98B2D+R et3p2IbSal˼04#7qljۼ@}%,m^rÔ5 ^&pkњFJ0@ -_/_#Gt=ߥ&*z&~Wa\תvj[3|g'̹,a73ƜC:u3b[q&P;3n٤~f4l#h0;eN$.\׭Ds_nI[L($S#jG1:e[[a :Mߍ9sKG1fJ"T/H?TJeB:lqIbgpWl>pd9VѿD 0FZ\8L_iOyuTՇٍ̽`c6#ӬxhT~s-Yؕq3n2J`M3*?b }#GeVyFof<.0˩YcÈ0[N"Id9뼭urK.˲[)A=Rs9Mq2#|ͿO7~ʂh1_mk#~o05 D6Q+_8h0TA8~!In߹+sWJt:mg}љ=xVfe{9N_Z0a!b2uO/CzMl+c*Xbά>@ĥ ÝJ+ҏ~p[s 5pY͉OɹQƊ 1fj|Ҍ bz<.;:Cp8<ǡQCmjqL ܱKG J/B+W2x3e uw5'ZY@;ObGAylz˸oG,_+MarV|E f\}e}B,tg>'򏥱{YC@;OCs&q(Yٹlʬ@]IONv2^j , ^tF%/JO-6F]JD!n5۔5̱ooS,_ghe;ןJN zX%t/֏T$+g/zCP5V xP/5wpVj㯩o512]-#\6u0BqWXegEom|EuS"J-Z&k/gLp2ZMYNs,F: r/w}6l[xunU6D62#]R-n+"bS۷SϠg៊4CJl_ Ŷ*=SV#|33"9pva7U&,-JjncG\5GflXruE 0[ \<^~YSe-qybX5/\?tI*o\X*efؿB[]#dOywNgR#Srňs%0?(, M3W_i|c]H;} PsSj$|ɣm+ y>ψSs(:z;j=G5yFTZ^ 0WxYL@PTIR3#oWaGy'b.\\cޅMS\0S1pŸ~?lLfX/?eMw ߂ozhu#g`z.,0ј NB 0f<0S~+@nj癖J'i+9en1:fjcё0Sƥ-L{Dys. vzJW̪Z2M2hG&68F,hseCGej]89V]X[2E~_> 2؜dr]B ۼx)܃Ŷ:ܲ ecĢi{\G<aIȕ/+q.q*N!O"V$1}Y7>VܚeGcuocBV0jwcmh,By16Uvv< 5BXLy)ĽVx' Fr0XwaN.20vgcQc4H>&ǙytKH/_2,]#-ݼ̉g)Ei71w4Gn)_ $J޻MGNf-SamڋE3NqU>鈀PƥF-i=EvVF9-U<7*~Ia-ku21O ڐs#Z5qc1B+9n1@=tӆqʩAyw,ZÍ`+os)"/%@ Jή%^L6/yA,iT&rSrwܥGgICבLOgfg&0E d4;Sg2@5fSAD:Wyn zX#y~U7f̸X1G\U{k7=$vCATDw7q1ü;1 T'RX0;S>^.' %pZ>aH:i*q?}=Q J.:J(OCܔf#I 0TKHY۩-e; ިL՗A7.We20tv:ٝ~g0*ߖZ1!LqiC.gb+70p`UjGh9G[ q:yr,d|Զ 㙞 ?=sq&Y=>O-n0JaADj~uMIk.vDsS&Еq閇0Ic^f)q^f9B\fu q 1+܉TvJ{&r`擴^U~s0Bf nTEEwԵ2;/~p:]~Rƻ"#:OKq^%s Tc{ʰ~띟SЇiv G9obvche\3;@-n=#_g̹Ri)}=ƍP_!uNn{[KW|JHXv1)fC]MGw ޠ]ǫ|1С\,xX]cu /9Q; v2qb^%Sat);3Me|Cr9*a`3^nwz.g̥qԮӡLG? LRcge8άܢVxR/y%<}Q==Z6c楛8L<@ k=c9 %)%Ǧ'3~ g>˧4coO9"s7ـvXwgt#ɡFJҳF0І2C9d¬wjAϏI2B.(+)Ybbnc+3G0X;ͣN"`]7ܞݝLЅ(>DžʶQ{NjS]S]B:4x%,U0:Ϣ>=KVF}陔X+ai3a7yvZ4 )ڃ[NDwO^~#ѣP2:Kc-k.Ȋ^k%2\˄szjLL1&qqʻ3dt;MADP+c{jh ^&Z^ +%{âh-bծe~#5[PFcB2-0%n2{LѼb,~aSqȫU6ī6ʋQϻO>'N% '1y}<¼L!bopsb\?hz4WzQb{ b'<]#kUQz9+-+Q! :1MOE\el_&wYMGImOV?812zƹ'ȷgg3LՓ` 5R"7틤.`NS%ʆ=9 wrzns9ۜ_[/iVcF-oXm0MR <>Dqǎ=Ftxϙ]5s^~gs4+7RmPV~jq (P+<1#0Q vD܎J`ZV{5I5h/9$sQ6(;kSdeivJQbssmi~c8Ks~==" L32cxr-LLgN`2Ѭ0)JDt}*d.Rs0q]%T-hJ tjLtOi nvo:6A/Z8Snڥ=xiޱ7,F 8gZICلmKY܍PܳWȈM!ꌚ/1q^;9h= SQ̒R,NW~T6޾ed1~]x: +]438=Ǡw cQTucqb2[zIk˰B.D37(wvy*3g/K9xeJ; zY{J[*.)^%~Ck8ZW%刱m3!0CX/LOĻ,>J}(J%Td~H}ѱCf/a'S vm GInw bs-ǟS!d۝RG>5Īnc!vaX xYUJu\o-;17K{x/ea}NJLf lN*4#| ]f_uwswĿ 3Vlpg΃!B4%,Of}7 Ny%ܓwR/ѯ^/5 jsң屪˞ۨ$+2f]RN/9~+PN*@sLĠ~Bʀʥ ݾƥYUoZ5,6TgUBW jU[۟H*Ú0 &.1p#ڠWAiB]~0}+db ]vEgh):͈I(`|?tcQXDLwgNɨzae>S718w h}Y3T W:?Ƭ{況}0lpao$t6C6}fW_9DIg^LgP S!h?skZ `{|5P{ m!g:"MLC= Y}q+SF22R(Ļōyo"&Ne|+-7a5 48ӿ_ގe GH˸+q`'Bgz6{~=XY 'tD=1OdN7AeTR'3^YdNDy&} z-S Д3{eG {"[.o;QxkT#fMf+g0|*KXās^Cܖ3~bm { ]=u8z)ܠh+1]]ݏGc(ؚ51@iLx0f\RseHɁ͞bX㈻"Z;$X(:89O;b/>}'髠> $-%TuY#MXbep pFpƝb")<^.eq ON\)}!3p {:VX Por=4Q؎=As X(^3<̪L,}ĵ% `勸<@z^2Ma(-lG׫X'BVu/XqT[IQ0&UNV#/f$kxzzkIe724yzo2Wa4@ vt c$hY9ε7%w% Aٞ`H8'()%u3.~4py;.Sxk՗fSobѤ̡ 萯 (gs˙YzC lp@daLYnk{f1vnK\YL:K) *K&,ρ~gmR/KdQ=WчCT\Ks238vp#Ib-c>P@a&h%Fos~"s"Am1L#,D𘾒`do&fqQA4I{ē$*@Uڍ8qK[-j z mtq+0flHg9pL )݄v`c>#<х}@p%ncџi"T1+u.+d^*P1n}y#SL9G_eu=݋1}aD>X6:[;YzOОIwl;AHxرQ-r ӇYi3Lt^20E3znsL0i[rvwNc}7\Tj|ٽ ǥ?2S!2ƙ]#fK^BO1,KJ}-W傰xJ1 秴/i 0Y-}3-(h-N_.W!ZU0UҎ(s,50u3(ryl k? ; {,AؤyW_>wij .k hNҜe8/ܞDvҷ/ C6 e1h/T2n!0_ޑj"*ܗ*-Tfx+`-7D.w*_Ϫߤ12ޥ9ͶOy 89yv &&q4b"wR%Lm_7U(2  2F̺AvT8ZT`)92ֶ̠w 7r].XPm79A3"~浘 }(<#['M X-̙U3Q^дP Sh9>m|])5JhTuIPY-& s49ΦLŲ yi/c%C}fZzz2_K=cu7Eyֽ1Ms;&,[UQl-o%T؆ ;J`'0pԾ:Jke{TJ;s`5(<] J ߈^wV%<{\ʧG \2|Jo%f(c~&r,W5Oiǘ`M Ûo%h !pA(`1 (CEch,_i5Lc8O*Q`M B 2BW(Uz$0&w˳` 8 k3EH\u1̫W FڎT蟑ƫ76Bf~4kq5ƿmX4jR`)rU&Kd5_hMlalLD&~pr$zj8g%z Me\eFFiӏFopz03]3ǥF %PJi/^s|"4Q.bb.1V1j1rCzЍ5g)}a'I1ݧ[L0 `T,};jf#; *uC*5`ORܑuҥ, 5X(s(1}Kg@QPSL/\Muxj%fbtnKჸktXQaW `)!_ 'e@%#6pfd,'w-"* uIpaMv*rf.9"eB5ǰu! _J+9^&FS̽4>/?J>Y|jjcY(pMosuj˴"<: }BzMO1ǯ2#؏} <z&Sy(VJ踄N%WWĪg!JMs9y#pplЕ¿4dǙm۴\Kc)xU@(F>C\xZjc2AcW-t3aќG.9EW 5 3bi2rܻTeeЗJXBU60"Kݱ`?/7>҈"1sZu{nb wipt{ʑ1Nc*Ѡ/rfE=b^950 ]Y* pq@}e${"QI4cw#~ص~7rfQeoDNefjԫ~!cN.fp_F%W9fs*gʢ@:Mn Ö9>!Zi_AwsQJ3̊Cz0Lquwc$ aԮ '%̹ ֮Q` XLjJ?;1)rzX_2^&&aRu#hwacΌD,%Ĭ-aB;-L Ś#E"d^gmeu"Ըe[M'0uVBb& (Oe|&ԮRW-~7%M,;8`:pJgH:8\ L5u Hu5ƒGJ+vk{RbQK{eCw@^(Ꙧ9D}e&ۇg9ɂ:!G0)f}.{C tq.4@0g zF0f;.C`Qn7:FRʲl ` ΄]Mb--2Hx"NyaUѬq3pwCi~!fsG63E{ť="[~AzNO5D 8*ݟ cKs=<Hi L_ڗ >`Z\ 90Q.C<AN8 4@rcw_lu,>{?M"򹒍x ͬJ2a3̵,Û,S"YmJQ+3SҽN`9ԋ1hz*i2fxf(&ebpT?V X>f/<]j1^#JFGBmn1`.U #k *?Pmx<gH7C ʷj26_#3D_KF8f#cҨ'hdI^TJb1 v&&Z͕ ip5;tPTXqslFi#9jg̨w&& d{N!sewk~_$ Ji#YrPUb;f"/Kc9i z5Z=<55ʢl @|,3*>铄,9L$! ϡkѿ]>5˛Hϣ~YjQ1T?uۊdڹ2^͗bc"S''dNMxA͹ _hP|qEcPlT jϰe!.-;yҭi ]r\Acۜ 5g&Suh>uc3}jvBb`.zi G702gP̪bY/=QLh0 d:KkY|3cI!\j+2,GXvc$!8^J:A^3:B5DrK<2=BPXJC8RрIoG'P eep]y _#9=C߬2F 6i J.g/Emr>:=(ff,tZ,C3ZoE)I@~4@fHĢOX8|DBɾrDe_X9 7! CC}>"TR@ Yߢ\KĪ7d73}bw>YFRS*(=sa}a8lje}XR`7M9/Ҩ_yd..k d֘ W^0,%J :_XY`C/A+Sp34#Bimeqś*醥0yk:53b* ǘ=Jv2GieR$\QS}c(ێ,`)ŸH<@nJV(.sA4u7٣B\oLs*THzWTR\3} Lښh|]hk,4*k>hNg EKzi~Ie@W@/Ó@`gcѴJL ~\lZmm[򩢧91;s;u(-re^]18"WA,oi%·lF+zv\T,J0I>JNJc9%WZ=22*ehZE=AUxQɿi}Y\E!$վT'DycmpVly3( FKt40bS<:* 535 ]~[:8=>2Lec^ԩY|76^)1u/ "WT*.UI% o3 rɛ9f~Rnl6̪-;N{6&-Q>%t59 =SD} =35aAy5*Bh+mX7q/.:S8 n[9oPw+טp)`]_3c7)'9әUܰWŌh!f&G"^L2ZhДMZD:y!:?4Z[{gK~9 v>O%7|K_XGYYLCO}X=e*!1AQaq 0@P?/TR ҿ}B.\ ./B.\r.\HAGqcYKH:8Z- ^ r˗/+.\peƢtr/~\aU@˗t(0Eȸ.C \(HL :?rѹr˗`˗\ yʉ 8?ĹqK?}<=1[3=P@:J333a!/_\r_K.__a6 uG=02/aHtFTRt*S:$r˗*ErTJ+ tW򨒥tN+RJRQb躃^eAX._*T}oYR W&[`UiQCfU|dNL#Ѓܹ}.\}_}/*J\qbqܸ *U[]ZS]@5T*TAper˃.?Q%tu ~@6&B1s_n\Yrˋ/(zBTI_en-q!c ҄_*T\/*TR}n\}n\Yrآ+miHrM%JTQ%u*.qt#lhtCۡab=0ƒK#$u\2չrοJ+/qa O)D8f՟~~%uRu.\} _CsGAp /u]rUꌾ K.\Zҥtj$a0^J`Dfaf#% ;ch[$]#|oM*!P%J/lJJ+e1_ٔʘrԯ}.\r\}*T+ + l|B涞 2#ԓ.5io_edͶYr˗JRq ˗._\QǢ e"G>BQ(*$p`˗.}C*;.\r\}jWa:nΠbi{x* +u/K -(,wF* ވLڮMsX[n\r.\rR'f/6XvkLJ< n㺪eOF A* M\a2X\uV+d4U!"`w2yFXZLPr .CGt%n;]*B `[ekIܴ(䟿撿rӹ0z;T0Q8HTAi,splXUo+L`Bj|ےpӎ^vAUTUr@ ݩxF- ҉6X`JVt*422tr˗_r J*_NB|gh6 fc ANs%$5& 2]FE\`awt$K.`=//]W{rXIPHͰ]/l h4גBlHƱ#߿ig~0)#Q^B}~/1~isX(ϘK? O)׼ǩœ| F":_*W0e9꧜ف!NsSUKB:0 !JoRv00B#< dSxKY/d`y Ц^‹c^/ e88)Ef!PӃ{0I9!npHW .,y贝0rǟ5r` P{ioPw8B4)ōj*k+LvS2riʆT =o3#Vf ;+ODA, B!n=Ņxq9MBϓ=cf%n7-o%[*ϙV Ru}@+E?\rѹUnTJDK1V9F$yQ! ՕbdaR8+V-)9KHHW>yuhw$%5˗._r.\W*\+}vEzd(l0(LZ>_T0A r|m,%Zd:Jk#s{|22%baizIf; R[*r9>0m5V򚔆C~f YuӮ 7 BhrԿ.\rɨof);`S# " X' 1.Xq ]S!qr#?SdHrX^ ̏:5QtuS&Gi/v/99IsXr?/B082Y_Әjg?Ws[O*j]460T/:=e4XX-yJIv쵨<̮r I<1K˿}wLx)P!osAոm;:QPJ)^׵6OD*& $NJ_E4^ ljRҹr$RPG"DzcUn W]JRU[J*7 q!k~JU7.ԫFv)ح@%괡_.;3yY7CՓ.J pS~KCβJݝ[ Bo_*TIRWST\z,<Ϳ;#i}=o+o"L*Y\ޞC-eeuIyW*j& cvsA-koG ZP&>.(14ODVwwwzV>+ @ ү?#P ZDHqV2ŔN!S-_C8xn$_w.\_wy`堨5SP=[]Uhߨ+%Iʺ!^d"-r׹R=Ve}t#TWM} Ǚj'kLPY1P1 #c{j0{B|l2s0e?Tf4ypwFoʵ 65D"_ '%. C@mcǍy~&mR{ 7J/H N_rr%J#/^zmm^4Lny%Q3''=8MAoklJFNפx-e˭+R[Ÿ.Uq 7.\"UmIP`̺֋UAZ&K8! |sr'ĻN**WG~0UxCoAMrR)Q 1ejleϭTZ\ L RԡV( %r7(򐥗FJk&ْ+l;nT "^6Al? QEB7i3NU z Jkk0ч㔙f}X=+E| =Cf⮾kC?5JӰnJM$q 77)RV9Db;g{3jø ^ M!{J&ST8b0|}n\KrkM ᙪg`N%fi)nX\Bh*~An?79^,雔? 2˵`f+ 5Pmu;[26aB[*z2,!MI2p9WBmc,tzWr˗/L[)+ZvsCڊٓ:EXJcjnݔCrw _L܌ؽH)ݧ=@;pU/%QvS98㜭q?wrSO8L]aY#;wѥKiK)c7)c@L"/[1JXP`h[y!EboeZqO{C#\_._/(4rRJ3ʸ"9b5De]l"I))?v2ª#bu+'E`⇵k{ݒ)ǿ`BW9\%V, ݕajk*O*WQ̹D׶:G{D|Lcx| |Z u;yϠQ)2❘V0Z%>' ¥={9 J^rl!,!߸2, JN-`!b`D[QYvcf`2`)q77gSjB6>!ݼk˗/r%]*k#rf7ӈ4$57,`B4#*e)G?,1̺"ިʇSk-tTݨX hEs%%==u<8c;y$Iڢ_O37`|& *u}HTj;?bielU<dHcC,sD$&651ah-`ERJjXh` 2_D}Zu> Ha# ʸƔ6?}ʘG$KKK< r,1 r^2 1â!:^qm̗zi~!ME{=OVHv2Y._}oQ2T66R^}H?~lEk9S }eƕ=O If¢0bXb7sv<.\zy"C5olLD\!6 Kr}o\r+øj&ʣbxZr66.0h#M`킣UNQ,9 7ZEZhri-,QU-_!b_r~LEN% Y8Vˢ\˗/w-eD dv>'iዀ6"C=/SP3Co?ք׾n6'{A*ntf.ܼfg[h4ݧ?n豎!}X4Z!)J7fdg3pc+}ށTN8M{d0n䲂csΧm>"[Sߊ.ϧw r˗._J7/tPiI_ ɦxc d5c0O5Jk$BVe!M[FwׄX1 bCzeӫ@څa pd瑗y.pT>Q9H˓u}ru/jW}.\˗/_[k r ÿc3d0EoUKh0֯f*|b:neоY ʚQMN#ZbJ||b#1!b#IYb8a&£0Uo!J^7zG+"+B1vP/Sʌ_JVRY~S+vy!TiBɸ|[2%Ɏ^ kJ;[C;pTX:ZWbam4ps}53c2g[xh0(bP+g>f~#j3m Y2BT1Wous<L4~Xu *~be˗/\"i&)㝻9_k'e3l-a8/ A._^,&wRHϘ+ z3b@LTz&^G{jig鸎ځM/o+3 ԳRrd4BM :nI++Њ+~(D,)\Gn<:e1w8~f7\2}La_bm5 U8#22OUM=хJ*A.U{\+-ێ5L?.L9mJ0TJw?WՍ]^UM^Xy{6(w," Ev ;QB|`X7 ֘|{JzW|2W.\r ev~ }?|:Vb<8}~*)q Rӽivj $2pTh @}e0w~=Ȥso!SyvCq~? ," v{':#&jr Q}3c6 6'j-MرSJR&tt<^RT>gץ -GDqKƭЪqUqy !pʏ"ݱk{Q5,?f~茗U]߃xbݯ!T U?uL7LI!n$ϯw/u@sɳFpb:(ٜ&v<-!Ji5]ahj|NpqG7īf-gzWXp.FX}TD嵍/\< lwA-R]ц7NX- i>%tB!rls%;.rRJ޵*_|U$WoJ])yM3cOi8BG &)t"J6K* ^pk$%+Px}Pp+ T&IQpς ئ$c+i v0Ơ.܌bW!Zq4y!YrC"b6VHJsv\?BG3v<6b ؀g!|0GXɹ&\  C?8drSl͓fGo$e)cZ5'ҩO M[RRw3ȳ+x7e8EsaqUeFEApJE$Ko }o$z*hsk|gs(J.f!E ὏ `,yC}J"ӤKxNA.=]мɦTӲv34=(+ T1k)L`XR* (+[_c3%UJ][%s+?ځ t(4MɬnMe=̻@a@Ƽt T's>F½ɞ?L.U}FE[%y8T NrDB QH @m$ +xȕZ3@f"3 &11T31&tX#ζ4d 5/C"i UKɖ/0P_{k _o,8y^1nx˲1f,u+VDt5߀)C@<:g`pBVicАѷ]ku._lwe[""mƛȝcpg[}(S`ԯn&N3ɃFgusf#0eqY 0 NnuƬ^Y9 P( lL@N Өy8M<8pJMn 036S4\9u-g CWkU˗._KЮ͙0mCE %ak+>M]1~bs,vCΎ dx=8LZ00ො^o |=تUDϴ^)7V\^Sұm (> bjŽ3 1k'#Y2'FNQP9P'?&zԩ_.=YkіU#s_H&L(szf3ty5`'Qs4$4ld|cU+w F1Qq3ev0KȌn y ZjF>X{ X5EuƠ/wHnͷK7%$U33U|f6cPaM{ƹn)7Vþ+/m`3N tݚs~ N`?*`rU'(Y.Ԥ1#،aYGm) X%,j*v~ێNQ{[W(!| Ǭ Co5W1Q3HsX<]AgT6?K*OOWm!23ow=NB/CR[%L_ aB˖K",Dl4oX}Ec{+NC_ <}#цH22ҊPB EW )X 1b X- XD p3v"adv%j ¹ca-Kޣl;Wg/ F/Y&Wj+8lßlq2N*YN0_7‚lՙ> ͋!&צ,[L R>Pq%I/P'ǤXc0I?셞*/aXA PŶ im>J4PdZŔpOP[,߄Y@+UeeIYbSukQ3`e#Cp4ªddcMU2VKa.Wc Ԧg]7Byxo>=h~6~|j#W%.15Uo_㾗/꿃SWt=_/10)tx ˥e?T ^~FE b ž'.lT<69հVDhoL4nk_-Id`66s^t+ )Z4i 5`[dޠ~Ț[jA1uNTSBhƫs1/&cSMiLpKxqV>+aRp!/?bA6ʬh [1gNDZg?_V5N4jpq;|E=WR F_'/g_1 Vo\Ꮏ&W7J '-UhTAC/"FemyBdMe®3p/Zb?Qn6a@$2Nl8#@9le#.!9pzPXIS +q*z4kjs?8.Rv0.Pa]438gI@8 mfh<4T$݈^/A(/mmyTXmeI{KfnԗUf%aܐ[-N*YK c'x녮gljbqw`wr *C[cpɗ7lӫy X0̉oR^U]2 k8[aOTk./ByBllNDǢ zr힇_ORkǘY,J;MQ*˗6S 4nɥbR0K];*y<b,WQ36 ]=t|v `ÃMxC Ac@J3{UԢStcU 9=gT9S 2I?C2]ciiBhFfnb[bml65rexLULY>8(j.l\1UZDsue ,MkEBƞU_%kbvqQ&j^,y82ZFh"-d N`0;lmr wREE0k`, b8:Z%ĻPklN;c+8e_[wc8ߗe;AsGvW඲_dG¿~12[ǨZudҥ}]+p؏@ 0j_cVgٙc:W}XF6W JSpߎ*[Tp*RKr܊%xnʐ,N3_b| D4 Xp C" \iż FypMd&Yj` q4t%*ʇp_`j9Xv-FQlee~ tlbCXZL)DҳErj-<8\N&9cx`51F\YcWGtn_5ÕL+JB;aB hdI|vJHgjbQDG9ya`pfzFԿt 5Zu,4Ŭ5z׹Ah!Bj)V4h$vn+%L2grI(Ҷcɗ& 9sPagI{@T)(xuZj'8 uݩ{@XBȮh9HX ^E k0,- `J?-R#1FU<{U'h4@ x@̢ͫ>(s {Q= Ѻ qIW`RgRPR эoe4GMQ«k:iݟ0A@!\mB/ٍEaEFy&]}7 fMxaBw/9_-ƗOy mf*gB'Nj#/rղ&e0`*#bz^K Ib}(ow rH y\RІfҲ0m KTFRx‡vfPw}60he Wn IJaE1Klp*6?K@ݷ4'Bt )DNOnvBrPxizI WEoq3_;edx旒3Yj^NVvޛ:Ra34鴅Ijͮ$M[WX{"7堂W;Ɓ`8X@+eBPbOk֪hKuhYWʦX[0X+u)\ؼ*˭AbRႋ78#~ H19r\jk_eheB[4LD9F(KYnuĽC燹Eu`m?ilpt_vT`L_ ewXAXq$ե>X*v=H ,HU5pXRW\]2SD#BXt)صr*3Gyc_/e]z^a_)A>)1MATi&*-ʋdٞ[< ׅѦ0 3^EIP21|\ Mבw2xܸm j~EcwKu8D \&<%.-2z4(F^ ^"ʽT@Rv!!m9~g;n-YQq+ U:ז&ZY#T;1KE3ZOoGیO,C~~;_^o4D'LJ%ƈ@C1EH_^C߃hN܁i}.b_P5DEKϙA8DYMiZ̪ruX@CIZzKds X.Ȳ1峼m1L-n YE(k+P\Ns` g5* whYfa}Rռ9,  o^m|,CTc4B*۫?@ qC^~+pbA1X[ "98z6w u ט[39:{wB<,_>ŦNx8}3F{oL}:φʳ)| .HA/*%)[Q^gWjZ(Ⳙd6^9dEٶx ?8Pq~nYH54n!7Z/,%O J:vZkl]=einRVJ%^V5I, f)I! [  Y.aC"cuF%+ڥUi4NDcsPG{9*YAv9p"` ~3)$L~tB֒kno0缩-Ear =t Ҹgh n g 2:*Urb#IG'r ,b_;JSP"#PET`5ⸯ)2,/cYc/L3h@P _r3z>5b]XXW֢ڣ`g#RF@Xp ԡanԘ!U@b--Ӧ̀A򈣹c0ѷ@p9WBAF!k)"Få۟rK.K$jŀvVJ#] n"3sD*̠74Ns) 蔭SWd$o <Կ vJn{1Er_Ob 2vCcp{V".yb_[`j0ૂ9fOӦ7h+ǔ{Lr dlu˵>l|&<1;Sa2`+54qBn|XmVë;QjsX @LSVDolJ5}a\=x͐x?.ގa.ʍ^fIR-E* gf`uD0B` ."Oz(K֭P#$雄R.+W>e7]-O-*PY)36\(\J:=(sr*"3p."rTw)6`F1r /Oirso=ATډ)wOhP_ aevPN`՛ٍXچÑ S^, i@j ;ucgDV ,3 Qp=Owq`,s$.42? G"vƍRryʖS]$DWQ0ȞA`Bn{z$Xza[Ь), L{q XE/3F2c ^'g_$շL(fjw nf)lD b#~e}U lgdm2W Eh\ybB[VD.KeoK(X ̝)/hb6Xskx_1Uu&4TbXUwtx&\Lr o9 jɄ"zk j2 4AAZr鵹!#'S08mM׉)ŵUǡ!)nO1-n\5(ܟTG>TZ\czTv 0@W1 @0mRvRtdJܼR@F2"54BA6(gLkBiNfRQݼ*0<,805 g>=2R/m/5Ev7;"79n 32 %5Щ3Qƻ ȿ "WյGU QSN-·.{ʞm.WjN'Ԍ,(ڰ`Q%,.@|B O[igOx,(cQs*8!A@!Z\"ɲd vvM(hM#$=Stϑ׷8cZvF#SOLِb!: U|P*VZb֡O+SK/cPx r {/"ٽc30a,KTBf{|Ӵ3Cee\[a0ivQ0PZl3\ҳFc Pg VJ.`Uyq=xu+46\h+ m{]xϰf@>#v㰖)^V.1I퀘 [XٖuZ)`&l{٪9kGA(Uut@]T+y_*\p=fZS*X~p܅m9m* u3oԷ+m!Ig7L_buRXj}Pϸ's7 b ObK#~b-(b\sLD, dҏtfR/;ui%^qb to!PggkXAScNC}ojHb1:fKF qN?.e? qPi|v" &bKq tf"0b]>#V.QpswMcz,@[~b~Q骸U&6 [!+/}azHe2f-K8q1N֪UNSe.,7pDh>z%w497a*Ulmh"sb k75{bP]Q'Ee5wO+uUDwfljE0[w!,чɘY+[؊A}/~]hj?eAgQ<35V' ;o/,lEe. Q6pY2 X 7*S;.+־ɚAՌO.YV\3^<#;(F奱O~Q򧐝vX׳*1v0# M)FhFfDfY~߷NGi'AKq 8Ɛl}V;B&񕯍"D(Ͳ|BEN އ/t$e[CvdCL MYmƎ.TWp =xүew@c%h̨UJ5@Ҧ)pneYJ0P-"aq`7oi,!bZ+q( y9Y̻q8R e8I46eY"[RsHhز4A…o^p^7ܢrg2ݟ\;.ị% l%B`QyG\F[[\% Ơ ^8DUzUl*D5'1EW y;p56b( :7v~(MmSVn`:VB+l"o-;̸ՋL:D, fw~rF#: ߴbΘ%&ILdJq \4m.qv*ٵcDW,3,ᭅFBh@f y7Vr1-qU@!yWn-ET%hY6S2ĭR(Kl.8n4 'l#ԸF.c>cVhj#( 9v>nS(ޮ+ L>B,6:Uj,LS^@fP֕ y,he*5dȇvQbr#SAu0Z{̿ĭLV(6/zeо%r8r4#-%Rsi̳<_/CY2 >ks28{K"\1l^Ɲ&b|i!X\H`j+,B >a* l׻.pJr@-¥Uo-SXR7[d3b5CXams2}43اDF2𜟨KwEƍ/Z1Nd2n'޻NTd|Mx)?fm][~ɗv% Hߒ Ar‡1iмX4X&ʓA~.Z.GI^v|BUɘ_4Kڲ,!A;( (`Sd+GuWtq rZSW5UCMRPXL1m8|@g8̡tlm,]ʪe.4M1}v2rITĭ9~PH߆qdhFܙ7M@yUanEE1lZZ0Pq@uK^W gWA1gx-S%n}Y" "3;'0h[Co-("@}b_mANvNo࿹_wCINvGL슕h?/v|~ S~?a-XҲ+?0TZFfN/E?r1Jⱏ*{ؽ1.U.0s*xw|ᘤ$~I&]C=K0]'ܴ 9}x2i4Xd<&Ƞ6)|d3c .&N{\UԶ6]V aшPA]&ͭZsSg򷃛2*M%^M&u 7bV@/rQMfDQÇV1q8"Emw+_{&$J+;@4gO̲ ˳߁>D/ &Z;GVV^m)|R5H&6=`~ѨnYdzR`M".Eb]R}EBoo`Z&Jx ߙfj5=E" | !Y3&p ι"$g;˪$D4,5M]HJ&X`6,FTE ]+CYV]7Y]a .lͱE 4#1b3 h],tby bpX%%su[f Qnh&Q|D \HoA;`4؇!7AnKa3guBpL(o}K'Wq F \PK$̬qIN},?07)-iܳq5 m2Y (#k|gXR'?#QBo Հ!m}@.˚Arr%-]Y<ȋz&L&{[ÿ2zLc : 3-:4/}iwPch#|Vh|ƹ5rGwmf:w2RL+QqnY4شuD Vv Wj1򺶧kAR+egb*ཏK÷7@4%1M]%T%VX@$l{fvsօ ^W9~V{%S$<"; #6_=΄w}RAbV*bGSR\c4;Lf%DqKswᘀKsMF;BGt뗣 2*qVfh6_lr+$GDwv_'<{)cy9qpV\Uj=ʙlRZA"Φs_;#Hbe&!%> Pԡ!4xҔ”_DTÚnT E]7W%"휆Tv.ͿE€8)e*]{FexĶedTƝFH[Lbv @tTC|Z\pJaAVjZ;cT*)n_!%ў26Θow&f,o `,Z8+ g S78n+$.L/"k}{ Jah*Q~q7|ef+ł1Ʉ2[$c,eAiZhU}$s,G/ TYj"AbweCB̓=ux]Cl&l|4ZrPX45ah  y5`=;9e 4A ئ`yk&XQc C5M0ԳA!o*!0e68GLb` –/(\U˥%b'f bVDI>*)|2C5q!/4=[LH6%i!abEVjU2D~X/UQz>Pܾs6*bes XF ኹJ>lb8鋯A:'"xS!MT%(WB {DAn7oy\GGZ!d}Bh %A*(QG{j:d n -,$f [Bqm)"Lh UP5X[. ~+ 3׮ oaߕhTL,E"c@U]h,נcKpro2t[&y3gzK}F^$mUj1}#wcU1˿1Ífo'VdzIH[tL)ipN9Z*dآiZeQxã'fgyO] jRq To(Xٖ`2)⩑1cx< ٘z0A H򙋖g*C_A,(7!@0@[0I&уTVtNnWN ٘,.'m_*un֠q-%j6f)R ^{K+UF6T/q>6QVeUq3-D%VW[weoUM7ž#f@UZ 5(/$ei+loqi Ւ֮i5J;a3VŸW*[ZUPH8&;$4%a|lq@&oD8@oo/.R.^,?WIBgeЗ< 򦒺NT=2c!ڲ@?XcK xaV]> Lb}SjI4q9LRan}(:Ȍdy1Q0)뙈c7yn*FQ[``mf5{ &hes3=j]RYwjR)4QT*WiVhSl9bʁXj! fkLJ0;wKnT,hyBk>heWK)7=<Wjp*9 eXj7r|aPzv5vq{tS<@*!E2P ^pA6QIGgYvHKxgf!nw+LDVdWzdw ֗=HK0W^ yYww P1߷UKGmoiYNe-=n9sEJxǖ`97'NG EU8ݙƕe C 1J-pDIh%Z x?'a97}O64@tLR|G&theԔ B("d&a.Hee.q~h [0>FV/x -mt@4Z)dEY[fc?2LSASM )6ALU#$sNPZx9qnŸ4#c 4@wt0_JؓU;18#[ SFVXcyNM;*)*̷KGvA "0Kҭ,J"xӏ(jaYŘ7+\ ɔLQa2ih ;TstTD丘 Gf@{Љ?r zVفQ9n_׆v)wڋXaS|۽],q|E0!:RS= Zd/89^+kb uDWl)v8 Af{4(Yyn̰䯍{ {Z6DkRQ@  C^&jD!6q~ _@zH|FZ ՗0Qq{I|"Pz-AC6L-D)4spq`b0^c Kv,(U|EAnp6xށ\.c ^#(1TeLO%bR >JS 0eAH6ʄiWQ4;eTw}xD7 3;'%s~Ҟhܫx};&2}יnnљP+, qe)O0C men6Zl çDRT2|nʎg~ s~`/QUa_{Nߘ3 ADD] 5w `N AV(Ķi5NۻBO'~mt1(\BPM7uF!md ,rlآ^WF'v52PZ܈~'0ZV6P3,K">6[?b/s;vr^QK ZU;xT^LKg,n4/Ҋ(I9 V wC֠*Zp #O5zn@[`)w*K5͙nBK0k9̍5ey.~>b zqZC|Oٖg[3h |3n|Jpnr>ʝ?+*7VPLMb[Qݍ2,e ^ 7:$Di-I:{ڢRS`ʭݞd?]U/ Y8G+}٪Ke ɮPGI"ɭ `4Ɇn8`wlH3% l=V]$0B#N_c/aDĠS4J3z`WeCEwTb9|o1E/bw"v=q7:i.CCheEŰ('sMr֮4"`d{ogԣj7b kR@b/u0(f&ں7ĺ3wQ4y%,4_I[MKS#' K;#;a(:ebJs~WCIxVa]O7o8 Id +/۰'`nMO1I\> 79{Nu7@IPttn,4qW@UZ" v@{>c)u|MȽWI [N"#V>"AKS!vfzK8Cؗɦ[xBRaa5ŹLs`˖!PÝQK'AwCݧs&j)[Y}ٖ2O1jA%:*eKP^}sƎ* + =Rh(}"!>l Zw>e#Er+,Os|^RF A/-=$g,ݡ~1l40Bd)m'Aߚ1J,.kL>E' c~o o0\d{_$טd'\N f@U@{$X 8{'5?hcn5чJ>e/D{6U;fW9XG}[!q13a@,6W3whdy!fQiw*XEx_XfM A`̢\Y,qzc,}{&vndv˫ۂTļbŃ._E˗J2~^b8e203E@EA@.Y'&_]i< qy|a8z#6HRŜc#4/xPJyy7`1t=UCkaϸZpfDpG?A2$h(A5v67 NUocEUy{m%Mȗg0^<%"Ҹķ0UhUe;ZqqF$n}s9J(tV(a9\;I 7p:1vkYFmf:+w)N٥v/V+Lʿ3ATo&>IH&f誶*\sY;k[Yг1"& `Y{pK|EWe;%V4Z*Tۇ1b/"pA AKja q͌.j9U1[BG8#,d- sZLpt`oiU> )&Y9!.,RwRYPXC"FXlxln9۩3Y< je,e+6"v]۸6V>p#q7M|Z& M'i4xѭExq1PѵʉQ6hN&OeӦA"hd0ea1 mҎZk %j=Wt RR? G"b*Km~hW1/e9|sNnOZy UQV8_ʃQ['y$1,A98`rUX~܍@A,AAsYVjߘ7.i\L˩+e"HBhQh*{֫{/Yj*SM!dQzc:0ˌ9`~^ 56e&HVaX*uor;M*, hYi̻*0^a#ܫDފN: 8!x+k Xc*8>S0{\ Zô6.XP. B`sCZ?(ca K0K 1:ZE[.1,^;&:x*2{%; robTohV+g>zCNbmeawU+K0b8|=g*d4=ĨTRG~bj*) oAi0\EK 6"Tþ"l 4- vN>LA*{%ADXPDwao0Y}r0GȏZfw?Mܰ.iw.( S& 9UPo.sٜKo/><$UFx%071>F6KHq Dz\pC厭w% .*%`x8nұ,݌tTBext.rE.1vS UdA z4\k*LA.h{?IGDt)4XnBlĺvg},UܼKn̽^tgLnxJ9^3l"$aȁ LM/h;ʦz+%l5 ۫( ӵ8 z[.1uW8^ZoKswXKLb/ q"D= xD\b^}VWYL+dV̦h /p/,BDwTzo{!՝o苓f#kf࠱>ABl](ɨ' CfjhYi5aB A/1q )E(o2?Ɗ`{>6"Vdlt֮*x:Q`6dіZĿDW3z]#`4q*O䕝:i@Pr4xw-^+\9yA̴Y9&܉t +U_XPhq J dœ[_:Lo|!գ)kO4/2z0?!wO8o [>(jbT7/GcdGEc Md75!v BF<1,!*"3LtJK%NzBu OYG1bH{Kpeo%o a ʼney06&Lp5 hP^cXU{?1qLeÊ#}0[͑XWT<#+%K\SH0_I$UMҷAt#5<߆t >J=%SG#A>Jt*#m/D0O ހ~п ,W_P#H`.%-ۿL _+%7/*dZgYA~N|,H+3ƩO7~na0aWZZӱ>.6w@ TVm }BGDx%)dV4&0 f,4Khulpb\ӱ 3*Q0iUO([FO;NIED BII0_r1%l%o1v"09.!pkj4XRXpѝ|+6prŘn] n^R# U<!#(8Hiem - [N`J.T҉S" ROhk %8 u >)geQx`.q,qZ"i/e0>UqNJ\x @+rհnahG7yB!(D(̳-X'4f9[6;YP̦t35<]*%[ɇ]@nOD6#Nҽ^0yE^oh0`e;&-@yd(tx)1p'`R^E-5{Ga[_-9TեxL+m8ipV\rXqxE.ձwNupܶ9ycu)فR9:ҨMވj1Yj*!u]$\-l /£y\1i撬=Ls>Qiw`fT0dШimiX&e8TUv"( Eȯ#cpN,z0n2ZwYZP*A oga`@ Q/i -@蝪FZDM©_0 :\ΦuM\ E6V8ք GB@l|ah+Ȱ*Q'lE^fop] sYsnarX" CR%8h 䔥neIp3F0?0 hyv!^fji4eNK[x8Gj f%af/?c/ZK mW?K9A]!fvq-{h4(Q @+ZG嗟v\*,fEl^&8q[LP"rlj4 XZ;B"US l>).&. \P{)pfx2>/¬r/xx/F%Q_L|?!Fc|U_ n](N|B#P86Y蛁#agAEA18A)QxJGr.0T3W*̣]땊)*W IV]w"]Y .VS.9yT(հe3[ķc wTQ!|Nڌ\ZKxE :'v"ۊkUE3F\ g'uk,Q{45JᎾp*4J7rCe./5.a–-OlNF#+Ǹ*Ih+4{ 1%zhS<˛--,[9=S1q12˷`Hsc0S\ U}Y>X.Q)(7+5)Jw3eRkAv`s[@8weg\@5 -L@ o /1pV{Vrhde &Z b{.uu(Ec 72ؖdHg&4S-Ūyfd܊hhrܸw !ouZюoU2;`ٕX+rJRZ=Մُh6\@vąMψ:C0qIP"X9 5~.YT#DS_4\ :|8"OEs; Z*ٰ(G6gBPKߐ|{FdP3JI^ OxfeMܮG@oQ?vnR (cH ؐXm@~@Ǡ¶!EL7=VPUwx `/~1ZsL+F^* (t$SDKXwQ!aPM zŗvpj%=!h8%2FfzEiYBzO &bt hUñ#\+*d/+?nPap!N@F.ɖ{ a(%Ǚ B\b&t}gii[lG&6h<D;~.LӔ|dQ,;X4^kQl̉@5sXv0\#c!(mjYJB<76ŵ1U|. ZKffx3HD9) Icc.#H1e) ֡ܬ$]|O!x3r6c.m&88Hܗ+Dj@о&{0EQJiT8E QM/&g[oFO.[(jX$w$ݰ9:XMҸ!n%U-A@ ƒ6@~ |1H06T^ҎKGh ʦx~ݡ(]Z-Vbfod0'ZWlsC*4)8ahP#I%D\m=4 +>VM'ZHUFKwy](BQk - .2ϔT axUvz.YWX9ʨsacnC@385)_#ꇡNB0]Aġ,=&40 `'qolø ~+ R-]Q*OG4)!⢓B`= JwSU}پ,Xbcn\Me7'VL)bōm!>,ߊ_TA99P)Uce\STF=KpA FB,Xk[.qfgҟqݸjj: >b2m& [;z,0a;b D?3xhX7bʗ%p4{;#._15߷.T;oQq"'kaP^HװE#]F]V=t[)l=%e 3qnz/4; Uh JtFĺS[fV*,XF3Z@Rk4!ayr?˨9.ha a Jހb7<_اH ,uQ2y ;֭C\wz!106,F{y!ώP7D*w+bzIrOܵqK}6dDLO %,Sz')a SK2+%Ĥ7 *%5AЇ k EP8hdR[8-5Ƃ#d:dإJ卛{:[s{O":(d+ R]d] %Up7(EGs]#dǁ%7B›Hdp/w_ kjnY N1򂶷xH׶0 ɿy.W^y px{>!֤mmzT.wuM©!r xw^ݒKUT.5V0Ʌ aq w%Fyfj 7mK Kt'3UL.5,ɿ~mbĜMͳNp=1+f5Chbw\LȆ%$RRM#..9R炇?E!Db(;ɛٹ+x~ѱ&f#׉IND40JD[|/ /N V5T>%4k&]YcnR\,2p+QcK2<nW,̡RȬI6ylu$ |DmfK)-МSeA_æi;?iq&Vjterxc]q,YP\K`'Ld"&l~N +9uCaRmލR&oFpTFW١Z`]۟$uen"e~MYu}@{PmB\:B5( SDgR..)soc`"fy)^P!P:f3%`^J1jwHQ@*a _snpl>eCT S+'{.V U(1PXl@2AZ-|9yiW #O %w3k6afjJ;cM0yJ>FlQAPVS-賠86ja@$Z7eKf:?!k * xB cs̽UJ%+d|M,@ 8{scmÈW-65 KufrԸ K"(!^y?FeW@`lf~zYSg[T3f7@nez]C.0@]r,vX*w2 fj+tUC1^x{Ǹb;OB qG,ޣDEzj-`&lwءy ?gAĴ Cp゠#l 7g1{XU0.m7;0U\.RβUU0 [[Fp\"9@QqAlLveL兘-a+X ~O$Kdǖ:n!WhL؈-֏ܻ/\qR͌ÌZ8}I-jƘ`eK07!% /UɚnT",o(p~P-г&.~cJ#"@&_, ̂°ަe FT 9L o2p 2P+d`hg{vo_1-~cO1TOw K,L栂ޕ&D@u.٬ƊU.}ȚV4dU[pJ|ҖU dX¨̧Yȷ-UhDvѳaR0Y%obQT^pGȈ-K(Jdv -` ûw+D^ NϕR!M_IWGRЂ{ M%jNkFR[;G3 PwZ +/aEu>E#dyVf xXov7$%)ڹG)0zj#AjY mxFū D.2#"vp/p6=s(ܮQ悆X`m7XJȇgq`Ӄmka ̶M)RB`[ &-%kTӪ10q6 0z+#+f#A|$o%C?؏TWLXx؎TY6|Ԫa0@HH0Td ZVeArQ|m"4 >me,5; +DB(lR[̯$ P )BCD\`Mwa97b(&3h[tԁeQx(\$b#Bs 095BEуnWS8)|D=tЕPKh]-MXP2f#Rp:V's0vx<&=uiو# mm  s7M16` KdV(`ef<^ҸL[\"]1ޠ|0<^UycG$9?bˈXrbjhx @RsWKޭ6ЃW,pWf|j KU;\Y^a! M(.Xc*86 er+U'F_<]=q\30C Ҍ9.,Bs 2R͌J4 ǵHÃFYPGÌ3^̗`z3n l I4m̃v7Ohdr5* E& 5`_Mie3%hɉp1Z(k@*E'^<+uɉ]pCL[Y%TlDUt ;V']kp0]& \D(:&iu瘿Hmy/%^& ei-V,))> Z?e[4!ݓb)" W{+eӕ5y2,w,W9zK/B{f­|6 F&p+z{P鵗Rl<3{z*Ux+qa|"ysBu@zYD,9^K5K}P-艔K>f躋y/#2Gdqn` ^ )Kaǔ) \WB-90 ys2[Lfc|H*̭@IK95!t'4L2EM!21 kj92 @L̕ͅv0ӄ11|UpQ79En`1,g'yx (K k!0ґ:ROҞ{Ѐ0md=jEdۮ1 B%j Utn]^cmԤL5,‹cl5Z muzZ wK7uX 1mBO+k0q6L7V` sNa=HC:a4BÁCݿeͿ)y-4F@ H9Y,ړ!|  ,ض\j`(Ja}NNQ t,@q]EBPF.ES-ҡFF4{1-GSIjfuQz|3#3j.Fc8z1hGst옩(.UU 3xc v%,&UxC +B6=ܾOd802›KnnAo}XgF͢cϽ/N?1R>-+u^ ȍxUnC`UQvCw;_pT-0|~ 85[r>V7Jm{>(Ÿ%DSfŨ~ Dq$@ ˂pG8eU&6 xcbC6Y%%%0p!mh+G@a-P2-=ڵ+Mvek,H!*gy3ʀ2r% 3^B6(wP= 4)G4TZEH3V<[A@#!@>)vxa'/cmJ(Pa8^c7}" ʯ+9[/P\@@#PV]QmObC)`ܡ'}PŏiQ'6;h4kY%̳1"![18eq`áYi.D>yFg.Z?aIu`}B_yeVA 7UKA9ؠΎuN.a! *iAM-*F LiĬvܵ~vm>NH`KeSFY3B*cN2F#sw˖䬹AeYZ R\KX{׬v$.k ʿ3Ef֦'W=0T_Kck^n-ZB0\RJ ReA%u5P ɫ ߃ kɹ_l m p,edgS{m{s ,hzki͡y-7͑ m+=)xSp{gG`XJcU9fhbL@4. ng\fgţl~&,&6E-n,&B LejQ Fy4TZ6_RR`t^5 4i棣}9鰘"O,f?LYA˜y]) ]+0gQBI FqU/]ыx0zL)%P3Ig̼.) 12W%\j~JٚK mZal٧a @jWC/71 L+eU,<L5dR,69ơ+Zn? rȌ.+)2CAR#;25< @;=1O67:Y"~5I%]8UċBk0ǥv&Wj8PXJ,68HY;U~SGJ~dꩤyEL֒T/yd ŰǴh18\Rf$Ӝ~V 4l֌*6é<}"u(c xavf ۹:%% %؏sf1#1!oZ_8\`T֮Xg&lC`ULP9MLFt}lk\@+Mʈ1x(K3b-&Ҕj6@`!QV.Xl4>Ax啇6URLD6r7KkԲM/u TDA/k6@Q5QY a*6Xg +nԠ">pK3Q.8qMl.*/G0O`jyߋF[W.<\Tqh8MHY#7]ŀi4"a;qG Nw;%F6FXSWuf1_ht+X9IzJNjS`H+meyb7 1^I_ Zns/ ;-2 Jlo.30.w=_5R(Wph袹L:/1_k6h-# &4@s?PF0R(s'"8NLq5TSHMʱV ᴄ Zv%8jxQ*E,(9EjhةH m7x'.L@lpZ`\Qa,Y,65k6g^ˤe`K>'.Vrfq LJ М6isV*}0Q;Eo)W̒jзm wJ-0%w?A tj7S$q^if.LF  Ma!0ۺOИtèXZ$)g v}m? *>e\Ee>3V>PU߂)v0]ַ0#L9WٌTBq[m_|{㢚Jȵ T[e 8VܬjR^ TF4 hdlcdp b[j^^%L7pzfQ>udAc~tPc3TA¯n{Q2q~ 9VK:T@aL/pL0,L:eo!* Jh.jR󽌤n@>%%%TA.23<Ŏ Vn?fHm1dSLüe^Ⱥ+p2(cظ4myaaZh^:CI䀛unr4$6֌;FXuBzc?3FǵyHr=6?*=Vd'## =1 JeB[oJ(Pji&ܥ[dFTyDP!:S:[Hp@t!?drߕJnʌÍ1=Qh'Q>VXj":ˇTXd@HfX Q7+!~:'J1Fd̞` )hӥ%* )fO  ,%j\-~Fzad3/KYEky'.˦4%\/.<U*4)enlX..>hip&Y@ɔ+TUƌqTńܭm xauyn8ͽ՚fƽRiO7cN <N\O*R\W剪6S^;p+G33FEb{YXU|ehG<" v(T¥1J]!w"81FjUN#-;́?U 2Ytw&#)` $I.@4\JhʔpVXN&Ռ!~ C MC}+
Linux 4gvps.4gvps.com 3.10.0-1127.18.2.vz7.163.46 #1 SMP Fri Nov 20 21:47:55 MSK 2020 x86_64
  SOFT : Apache PHP : 7.4.33
/opt/alt/python38/lib64/python3.8/__pycache__/
38.135.39.45

 
[ NAME ] [ SIZE ] [ PERM ] [ DATE ] [ ACT ]
+FILE +DIR
__future__.cpython-38.opt-1.pyc 4.075 KB -rw-r--r-- 2022-04-22 10:25 R E G D
__future__.cpython-38.opt-2.pyc 2.149 KB -rw-r--r-- 2022-04-22 10:25 R E G D
__future__.cpython-38.pyc 4.075 KB -rw-r--r-- 2022-04-22 10:25 R E G D
__phello__.foo.cpython-38.opt-1.pyc 0.139 KB -rw-r--r-- 2022-04-22 10:25 R E G D
__phello__.foo.cpython-38.opt-2.pyc 0.139 KB -rw-r--r-- 2022-04-22 10:25 R E G D
__phello__.foo.cpython-38.pyc 0.139 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_bootlocale.cpython-38.opt-1.pyc 1.203 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_bootlocale.cpython-38.opt-2.pyc 0.983 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_bootlocale.cpython-38.pyc 1.229 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_collections_abc.cpython-38.opt-1.pyc 28.082 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_collections_abc.cpython-38.opt-2.pyc 23.142 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_collections_abc.cpython-38.pyc 28.082 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compat_pickle.cpython-38.opt-1.pyc 5.33 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compat_pickle.cpython-38.opt-2.pyc 5.33 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compat_pickle.cpython-38.pyc 5.387 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compression.cpython-38.opt-1.pyc 4.063 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compression.cpython-38.opt-2.pyc 3.854 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_compression.cpython-38.pyc 4.063 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_dummy_thread.cpython-38.opt-1.pyc 5.91 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_dummy_thread.cpython-38.opt-2.pyc 3.327 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_dummy_thread.cpython-38.pyc 5.91 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_markupbase.cpython-38.opt-1.pyc 7.454 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_markupbase.cpython-38.opt-2.pyc 7.085 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_markupbase.cpython-38.pyc 7.622 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_osx_support.cpython-38.opt-1.pyc 11.336 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_osx_support.cpython-38.opt-2.pyc 8.708 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_osx_support.cpython-38.pyc 11.336 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_py_abc.cpython-38.opt-1.pyc 4.538 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_py_abc.cpython-38.opt-2.pyc 3.354 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_py_abc.cpython-38.pyc 4.575 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pydecimal.cpython-38.opt-1.pyc 156.982 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pydecimal.cpython-38.opt-2.pyc 77.278 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pydecimal.cpython-38.pyc 156.982 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pyio.cpython-38.opt-1.pyc 72.338 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pyio.cpython-38.opt-2.pyc 49.981 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_pyio.cpython-38.pyc 72.357 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sitebuiltins.cpython-38.opt-1.pyc 3.414 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sitebuiltins.cpython-38.opt-2.pyc 2.902 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sitebuiltins.cpython-38.pyc 3.414 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_strptime.cpython-38.opt-1.pyc 15.683 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_strptime.cpython-38.opt-2.pyc 12.042 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_strptime.cpython-38.pyc 15.683 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata__linux_x86_64-linux-gnu.cpython-38.opt-1.pyc 28.001 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata__linux_x86_64-linux-gnu.cpython-38.opt-2.pyc 28.001 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata__linux_x86_64-linux-gnu.cpython-38.pyc 28.001 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata_d_linux_x86_64-linux-gnu.cpython-38.opt-1.pyc 27.866 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata_d_linux_x86_64-linux-gnu.cpython-38.opt-2.pyc 27.866 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_sysconfigdata_d_linux_x86_64-linux-gnu.cpython-38.pyc 27.866 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_threading_local.cpython-38.opt-1.pyc 6.31 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_threading_local.cpython-38.opt-2.pyc 3.067 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_threading_local.cpython-38.pyc 6.31 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_weakrefset.cpython-38.opt-1.pyc 7.437 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_weakrefset.cpython-38.opt-2.pyc 7.437 KB -rw-r--r-- 2022-04-22 10:25 R E G D
_weakrefset.cpython-38.pyc 7.437 KB -rw-r--r-- 2022-04-22 10:25 R E G D
abc.cpython-38.opt-1.pyc 5.224 KB -rw-r--r-- 2022-04-22 10:25 R E G D
abc.cpython-38.opt-2.pyc 3.151 KB -rw-r--r-- 2022-04-22 10:25 R E G D
abc.cpython-38.pyc 5.224 KB -rw-r--r-- 2022-04-22 10:25 R E G D
aifc.cpython-38.opt-1.pyc 24.892 KB -rw-r--r-- 2022-04-22 10:25 R E G D
aifc.cpython-38.opt-2.pyc 19.807 KB -rw-r--r-- 2022-04-22 10:25 R E G D
aifc.cpython-38.pyc 24.892 KB -rw-r--r-- 2022-04-22 10:25 R E G D
antigravity.cpython-38.opt-1.pyc 0.793 KB -rw-r--r-- 2022-04-22 10:25 R E G D
antigravity.cpython-38.opt-2.pyc 0.652 KB -rw-r--r-- 2022-04-22 10:25 R E G D
antigravity.cpython-38.pyc 0.793 KB -rw-r--r-- 2022-04-22 10:25 R E G D
argparse.cpython-38.opt-1.pyc 60.687 KB -rw-r--r-- 2022-04-22 10:25 R E G D
argparse.cpython-38.opt-2.pyc 51.662 KB -rw-r--r-- 2022-04-22 10:25 R E G D
argparse.cpython-38.pyc 60.832 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ast.cpython-38.opt-1.pyc 16.351 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ast.cpython-38.opt-2.pyc 10.105 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ast.cpython-38.pyc 16.385 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asynchat.cpython-38.opt-1.pyc 6.705 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asynchat.cpython-38.opt-2.pyc 5.362 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asynchat.cpython-38.pyc 6.705 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asyncore.cpython-38.opt-1.pyc 15.667 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asyncore.cpython-38.opt-2.pyc 14.491 KB -rw-r--r-- 2022-04-22 10:25 R E G D
asyncore.cpython-38.pyc 15.667 KB -rw-r--r-- 2022-04-22 10:25 R E G D
base64.cpython-38.opt-1.pyc 16.526 KB -rw-r--r-- 2022-04-22 10:25 R E G D
base64.cpython-38.opt-2.pyc 11.073 KB -rw-r--r-- 2022-04-22 10:25 R E G D
base64.cpython-38.pyc 16.686 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bdb.cpython-38.opt-1.pyc 24.352 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bdb.cpython-38.opt-2.pyc 15.525 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bdb.cpython-38.pyc 24.352 KB -rw-r--r-- 2022-04-22 10:25 R E G D
binhex.cpython-38.opt-1.pyc 11.864 KB -rw-r--r-- 2022-04-22 10:25 R E G D
binhex.cpython-38.opt-2.pyc 11.344 KB -rw-r--r-- 2022-04-22 10:25 R E G D
binhex.cpython-38.pyc 11.864 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bisect.cpython-38.opt-1.pyc 2.313 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bisect.cpython-38.opt-2.pyc 1.032 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bisect.cpython-38.pyc 2.313 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bz2.cpython-38.opt-1.pyc 11.191 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bz2.cpython-38.opt-2.pyc 6.252 KB -rw-r--r-- 2022-04-22 10:25 R E G D
bz2.cpython-38.pyc 11.191 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cProfile.cpython-38.opt-1.pyc 5.366 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cProfile.cpython-38.opt-2.pyc 4.916 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cProfile.cpython-38.pyc 5.366 KB -rw-r--r-- 2022-04-22 10:25 R E G D
calendar.cpython-38.opt-1.pyc 26.444 KB -rw-r--r-- 2022-04-22 10:25 R E G D
calendar.cpython-38.opt-2.pyc 21.96 KB -rw-r--r-- 2022-04-22 10:25 R E G D
calendar.cpython-38.pyc 26.444 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgi.cpython-38.opt-1.pyc 25.937 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgi.cpython-38.opt-2.pyc 17.708 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgi.cpython-38.pyc 25.937 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgitb.cpython-38.opt-1.pyc 9.927 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgitb.cpython-38.opt-2.pyc 8.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cgitb.cpython-38.pyc 9.927 KB -rw-r--r-- 2022-04-22 10:25 R E G D
chunk.cpython-38.opt-1.pyc 4.74 KB -rw-r--r-- 2022-04-22 10:25 R E G D
chunk.cpython-38.opt-2.pyc 2.646 KB -rw-r--r-- 2022-04-22 10:25 R E G D
chunk.cpython-38.pyc 4.74 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cmd.cpython-38.opt-1.pyc 12.345 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cmd.cpython-38.opt-2.pyc 7.047 KB -rw-r--r-- 2022-04-22 10:25 R E G D
cmd.cpython-38.pyc 12.345 KB -rw-r--r-- 2022-04-22 10:25 R E G D
code.cpython-38.opt-1.pyc 9.695 KB -rw-r--r-- 2022-04-22 10:25 R E G D
code.cpython-38.opt-2.pyc 4.548 KB -rw-r--r-- 2022-04-22 10:25 R E G D
code.cpython-38.pyc 9.695 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codecs.cpython-38.opt-1.pyc 33.175 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codecs.cpython-38.opt-2.pyc 17.974 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codecs.cpython-38.pyc 33.175 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codeop.cpython-38.opt-1.pyc 6.281 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codeop.cpython-38.opt-2.pyc 2.316 KB -rw-r--r-- 2022-04-22 10:25 R E G D
codeop.cpython-38.pyc 6.281 KB -rw-r--r-- 2022-04-22 10:25 R E G D
colorsys.cpython-38.opt-1.pyc 3.179 KB -rw-r--r-- 2022-04-22 10:25 R E G D
colorsys.cpython-38.opt-2.pyc 2.587 KB -rw-r--r-- 2022-04-22 10:25 R E G D
colorsys.cpython-38.pyc 3.179 KB -rw-r--r-- 2022-04-22 10:25 R E G D
compileall.cpython-38.opt-1.pyc 9.204 KB -rw-r--r-- 2022-04-22 10:25 R E G D
compileall.cpython-38.opt-2.pyc 6.885 KB -rw-r--r-- 2022-04-22 10:25 R E G D
compileall.cpython-38.pyc 9.204 KB -rw-r--r-- 2022-04-22 10:25 R E G D
configparser.cpython-38.opt-1.pyc 44.661 KB -rw-r--r-- 2022-04-22 10:25 R E G D
configparser.cpython-38.opt-2.pyc 30.085 KB -rw-r--r-- 2022-04-22 10:25 R E G D
configparser.cpython-38.pyc 44.661 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextlib.cpython-38.opt-1.pyc 19.718 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextlib.cpython-38.opt-2.pyc 14.269 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextlib.cpython-38.pyc 19.77 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextvars.cpython-38.opt-1.pyc 0.252 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextvars.cpython-38.opt-2.pyc 0.252 KB -rw-r--r-- 2022-04-22 10:25 R E G D
contextvars.cpython-38.pyc 0.252 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copy.cpython-38.opt-1.pyc 6.838 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copy.cpython-38.opt-2.pyc 4.578 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copy.cpython-38.pyc 6.838 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copyreg.cpython-38.opt-1.pyc 4.197 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copyreg.cpython-38.opt-2.pyc 3.414 KB -rw-r--r-- 2022-04-22 10:25 R E G D
copyreg.cpython-38.pyc 4.231 KB -rw-r--r-- 2022-04-22 10:25 R E G D
crypt.cpython-38.opt-1.pyc 3.322 KB -rw-r--r-- 2022-04-22 10:25 R E G D
crypt.cpython-38.opt-2.pyc 2.676 KB -rw-r--r-- 2022-04-22 10:25 R E G D
crypt.cpython-38.pyc 3.322 KB -rw-r--r-- 2022-04-22 10:25 R E G D
csv.cpython-38.opt-1.pyc 11.646 KB -rw-r--r-- 2022-04-22 10:25 R E G D
csv.cpython-38.opt-2.pyc 9.654 KB -rw-r--r-- 2022-04-22 10:25 R E G D
csv.cpython-38.pyc 11.646 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dataclasses.cpython-38.opt-1.pyc 23.113 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dataclasses.cpython-38.opt-2.pyc 19.754 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dataclasses.cpython-38.pyc 23.113 KB -rw-r--r-- 2022-04-22 10:25 R E G D
datetime.cpython-38.opt-1.pyc 54.64 KB -rw-r--r-- 2022-04-22 10:25 R E G D
datetime.cpython-38.opt-2.pyc 46.397 KB -rw-r--r-- 2022-04-22 10:25 R E G D
datetime.cpython-38.pyc 55.848 KB -rw-r--r-- 2022-04-22 10:25 R E G D
decimal.cpython-38.opt-1.pyc 0.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
decimal.cpython-38.opt-2.pyc 0.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
decimal.cpython-38.pyc 0.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
difflib.cpython-38.opt-1.pyc 58.022 KB -rw-r--r-- 2022-04-22 10:25 R E G D
difflib.cpython-38.opt-2.pyc 24.352 KB -rw-r--r-- 2022-04-22 10:25 R E G D
difflib.cpython-38.pyc 58.06 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dis.cpython-38.opt-1.pyc 15.452 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dis.cpython-38.opt-2.pyc 11.734 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dis.cpython-38.pyc 15.452 KB -rw-r--r-- 2022-04-22 10:25 R E G D
doctest.cpython-38.opt-1.pyc 73.971 KB -rw-r--r-- 2022-04-22 10:25 R E G D
doctest.cpython-38.opt-2.pyc 39.492 KB -rw-r--r-- 2022-04-22 10:25 R E G D
doctest.cpython-38.pyc 74.208 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dummy_threading.cpython-38.opt-1.pyc 1.099 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dummy_threading.cpython-38.opt-2.pyc 0.734 KB -rw-r--r-- 2022-04-22 10:25 R E G D
dummy_threading.cpython-38.pyc 1.099 KB -rw-r--r-- 2022-04-22 10:25 R E G D
enum.cpython-38.opt-1.pyc 25.368 KB -rw-r--r-- 2022-04-22 10:25 R E G D
enum.cpython-38.opt-2.pyc 20.562 KB -rw-r--r-- 2022-04-22 10:25 R E G D
enum.cpython-38.pyc 25.368 KB -rw-r--r-- 2022-04-22 10:25 R E G D
filecmp.cpython-38.opt-1.pyc 8.244 KB -rw-r--r-- 2022-04-22 10:25 R E G D
filecmp.cpython-38.opt-2.pyc 5.888 KB -rw-r--r-- 2022-04-22 10:25 R E G D
filecmp.cpython-38.pyc 8.244 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fileinput.cpython-38.opt-1.pyc 13.074 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fileinput.cpython-38.opt-2.pyc 7.598 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fileinput.cpython-38.pyc 13.074 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fnmatch.cpython-38.opt-1.pyc 3.291 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fnmatch.cpython-38.opt-2.pyc 2.111 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fnmatch.cpython-38.pyc 3.291 KB -rw-r--r-- 2022-04-22 10:25 R E G D
formatter.cpython-38.opt-1.pyc 17.148 KB -rw-r--r-- 2022-04-22 10:25 R E G D
formatter.cpython-38.opt-2.pyc 14.766 KB -rw-r--r-- 2022-04-22 10:25 R E G D
formatter.cpython-38.pyc 17.148 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fractions.cpython-38.opt-1.pyc 18.314 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fractions.cpython-38.opt-2.pyc 11.104 KB -rw-r--r-- 2022-04-22 10:25 R E G D
fractions.cpython-38.pyc 18.314 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ftplib.cpython-38.opt-1.pyc 27.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ftplib.cpython-38.opt-2.pyc 17.801 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ftplib.cpython-38.pyc 27.365 KB -rw-r--r-- 2022-04-22 10:25 R E G D
functools.cpython-38.opt-1.pyc 27.262 KB -rw-r--r-- 2022-04-22 10:25 R E G D
functools.cpython-38.opt-2.pyc 20.765 KB -rw-r--r-- 2022-04-22 10:25 R E G D
functools.cpython-38.pyc 27.262 KB -rw-r--r-- 2022-04-22 10:25 R E G D
genericpath.cpython-38.opt-1.pyc 3.922 KB -rw-r--r-- 2022-04-22 10:25 R E G D
genericpath.cpython-38.opt-2.pyc 2.813 KB -rw-r--r-- 2022-04-22 10:25 R E G D
genericpath.cpython-38.pyc 3.922 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getopt.cpython-38.opt-1.pyc 6.105 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getopt.cpython-38.opt-2.pyc 3.611 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getopt.cpython-38.pyc 6.139 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getpass.cpython-38.opt-1.pyc 4.095 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getpass.cpython-38.opt-2.pyc 2.938 KB -rw-r--r-- 2022-04-22 10:25 R E G D
getpass.cpython-38.pyc 4.095 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gettext.cpython-38.opt-1.pyc 17.479 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gettext.cpython-38.opt-2.pyc 16.804 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gettext.cpython-38.pyc 17.479 KB -rw-r--r-- 2022-04-22 10:25 R E G D
glob.cpython-38.opt-1.pyc 4.192 KB -rw-r--r-- 2022-04-22 10:25 R E G D
glob.cpython-38.opt-2.pyc 3.353 KB -rw-r--r-- 2022-04-22 10:25 R E G D
glob.cpython-38.pyc 4.256 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gzip.cpython-38.opt-1.pyc 17.772 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gzip.cpython-38.opt-2.pyc 13.995 KB -rw-r--r-- 2022-04-22 10:25 R E G D
gzip.cpython-38.pyc 17.772 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hashlib.cpython-38.opt-1.pyc 6.584 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hashlib.cpython-38.opt-2.pyc 6.029 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hashlib.cpython-38.pyc 6.584 KB -rw-r--r-- 2022-04-22 10:25 R E G D
heapq.cpython-38.opt-1.pyc 13.755 KB -rw-r--r-- 2022-04-22 10:25 R E G D
heapq.cpython-38.opt-2.pyc 10.81 KB -rw-r--r-- 2022-04-22 10:25 R E G D
heapq.cpython-38.pyc 13.755 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hmac.cpython-38.opt-1.pyc 6.253 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hmac.cpython-38.opt-2.pyc 3.795 KB -rw-r--r-- 2022-04-22 10:25 R E G D
hmac.cpython-38.pyc 6.253 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imaplib.cpython-38.opt-1.pyc 38.256 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imaplib.cpython-38.opt-2.pyc 26.56 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imaplib.cpython-38.pyc 40.388 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imghdr.cpython-38.opt-1.pyc 4.036 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imghdr.cpython-38.opt-2.pyc 3.729 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imghdr.cpython-38.pyc 4.036 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imp.cpython-38.opt-1.pyc 9.594 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imp.cpython-38.opt-2.pyc 7.284 KB -rw-r--r-- 2022-04-22 10:25 R E G D
imp.cpython-38.pyc 9.594 KB -rw-r--r-- 2022-04-22 10:25 R E G D
inspect.cpython-38.opt-1.pyc 78.44 KB -rw-r--r-- 2022-04-22 10:25 R E G D
inspect.cpython-38.opt-2.pyc 53.916 KB -rw-r--r-- 2022-04-22 10:25 R E G D
inspect.cpython-38.pyc 78.719 KB -rw-r--r-- 2022-04-22 10:25 R E G D
io.cpython-38.opt-1.pyc 3.388 KB -rw-r--r-- 2022-04-22 10:25 R E G D
io.cpython-38.opt-2.pyc 1.934 KB -rw-r--r-- 2022-04-22 10:25 R E G D
io.cpython-38.pyc 3.388 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ipaddress.cpython-38.opt-1.pyc 58.586 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ipaddress.cpython-38.opt-2.pyc 35.305 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ipaddress.cpython-38.pyc 58.586 KB -rw-r--r-- 2022-04-22 10:25 R E G D
keyword.cpython-38.opt-1.pyc 0.989 KB -rw-r--r-- 2022-04-22 10:25 R E G D
keyword.cpython-38.opt-2.pyc 0.572 KB -rw-r--r-- 2022-04-22 10:25 R E G D
keyword.cpython-38.pyc 0.989 KB -rw-r--r-- 2022-04-22 10:25 R E G D
linecache.cpython-38.opt-1.pyc 3.791 KB -rw-r--r-- 2022-04-22 10:25 R E G D
linecache.cpython-38.opt-2.pyc 2.712 KB -rw-r--r-- 2022-04-22 10:25 R E G D
linecache.cpython-38.pyc 3.791 KB -rw-r--r-- 2022-04-22 10:25 R E G D
locale.cpython-38.opt-1.pyc 33.891 KB -rw-r--r-- 2022-04-22 10:25 R E G D
locale.cpython-38.opt-2.pyc 29.384 KB -rw-r--r-- 2022-04-22 10:25 R E G D
locale.cpython-38.pyc 33.891 KB -rw-r--r-- 2022-04-22 10:25 R E G D
lzma.cpython-38.opt-1.pyc 11.751 KB -rw-r--r-- 2022-04-22 10:25 R E G D
lzma.cpython-38.opt-2.pyc 5.727 KB -rw-r--r-- 2022-04-22 10:25 R E G D
lzma.cpython-38.pyc 11.751 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailbox.cpython-38.opt-1.pyc 58.788 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailbox.cpython-38.opt-2.pyc 52.341 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailbox.cpython-38.pyc 58.866 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailcap.cpython-38.opt-1.pyc 6.339 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailcap.cpython-38.opt-2.pyc 4.858 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mailcap.cpython-38.pyc 6.339 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mimetypes.cpython-38.opt-1.pyc 15.67 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mimetypes.cpython-38.opt-2.pyc 9.796 KB -rw-r--r-- 2022-04-22 10:25 R E G D
mimetypes.cpython-38.pyc 15.67 KB -rw-r--r-- 2022-04-22 10:25 R E G D
modulefinder.cpython-38.opt-1.pyc 15.691 KB -rw-r--r-- 2022-04-22 10:25 R E G D
modulefinder.cpython-38.opt-2.pyc 14.804 KB -rw-r--r-- 2022-04-22 10:25 R E G D
modulefinder.cpython-38.pyc 15.752 KB -rw-r--r-- 2022-04-22 10:25 R E G D
netrc.cpython-38.opt-1.pyc 3.703 KB -rw-r--r-- 2022-04-22 10:25 R E G D
netrc.cpython-38.opt-2.pyc 3.471 KB -rw-r--r-- 2022-04-22 10:25 R E G D
netrc.cpython-38.pyc 3.703 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nntplib.cpython-38.opt-1.pyc 33.192 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nntplib.cpython-38.opt-2.pyc 20.976 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nntplib.cpython-38.pyc 33.192 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ntpath.cpython-38.opt-1.pyc 14.328 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ntpath.cpython-38.opt-2.pyc 12.325 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ntpath.cpython-38.pyc 14.328 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nturl2path.cpython-38.opt-1.pyc 1.718 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nturl2path.cpython-38.opt-2.pyc 1.309 KB -rw-r--r-- 2022-04-22 10:25 R E G D
nturl2path.cpython-38.pyc 1.718 KB -rw-r--r-- 2022-04-22 10:25 R E G D
numbers.cpython-38.opt-1.pyc 11.931 KB -rw-r--r-- 2022-04-22 10:25 R E G D
numbers.cpython-38.opt-2.pyc 8.158 KB -rw-r--r-- 2022-04-22 10:25 R E G D
numbers.cpython-38.pyc 11.931 KB -rw-r--r-- 2022-04-22 10:25 R E G D
opcode.cpython-38.opt-1.pyc 5.308 KB -rw-r--r-- 2022-04-22 10:25 R E G D
opcode.cpython-38.opt-2.pyc 5.171 KB -rw-r--r-- 2022-04-22 10:25 R E G D
opcode.cpython-38.pyc 5.308 KB -rw-r--r-- 2022-04-22 10:25 R E G D
operator.cpython-38.opt-1.pyc 13.385 KB -rw-r--r-- 2022-04-22 10:25 R E G D
operator.cpython-38.opt-2.pyc 11.071 KB -rw-r--r-- 2022-04-22 10:25 R E G D
operator.cpython-38.pyc 13.385 KB -rw-r--r-- 2022-04-22 10:25 R E G D
optparse.cpython-38.opt-1.pyc 46.864 KB -rw-r--r-- 2022-04-22 10:25 R E G D
optparse.cpython-38.opt-2.pyc 34.838 KB -rw-r--r-- 2022-04-22 10:25 R E G D
optparse.cpython-38.pyc 46.945 KB -rw-r--r-- 2022-04-22 10:25 R E G D
os.cpython-38.opt-1.pyc 30.645 KB -rw-r--r-- 2022-04-22 10:25 R E G D
os.cpython-38.opt-2.pyc 18.739 KB -rw-r--r-- 2022-04-22 10:25 R E G D
os.cpython-38.pyc 30.676 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pathlib.cpython-38.opt-1.pyc 43.188 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pathlib.cpython-38.opt-2.pyc 34.711 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pathlib.cpython-38.pyc 43.188 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pdb.cpython-38.opt-1.pyc 46.08 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pdb.cpython-38.opt-2.pyc 32.339 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pdb.cpython-38.pyc 46.134 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickle.cpython-38.opt-1.pyc 45.709 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickle.cpython-38.opt-2.pyc 39.975 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickle.cpython-38.pyc 45.823 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickletools.cpython-38.opt-1.pyc 64.774 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickletools.cpython-38.opt-2.pyc 55.895 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pickletools.cpython-38.pyc 65.644 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pipes.cpython-38.opt-1.pyc 7.627 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pipes.cpython-38.opt-2.pyc 4.827 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pipes.cpython-38.pyc 7.627 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pkgutil.cpython-38.opt-1.pyc 15.968 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pkgutil.cpython-38.opt-2.pyc 10.835 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pkgutil.cpython-38.pyc 15.968 KB -rw-r--r-- 2022-04-22 10:25 R E G D
platform.cpython-38.opt-1.pyc 23.771 KB -rw-r--r-- 2022-04-22 10:25 R E G D
platform.cpython-38.opt-2.pyc 16.079 KB -rw-r--r-- 2022-04-22 10:25 R E G D
platform.cpython-38.pyc 23.771 KB -rw-r--r-- 2022-04-22 10:25 R E G D
plistlib.cpython-38.opt-1.pyc 26.478 KB -rw-r--r-- 2022-04-22 10:25 R E G D
plistlib.cpython-38.opt-2.pyc 23.5 KB -rw-r--r-- 2022-04-22 10:25 R E G D
plistlib.cpython-38.pyc 26.543 KB -rw-r--r-- 2022-04-22 10:25 R E G D
poplib.cpython-38.opt-1.pyc 13.158 KB -rw-r--r-- 2022-04-22 10:25 R E G D
poplib.cpython-38.opt-2.pyc 8.343 KB -rw-r--r-- 2022-04-22 10:25 R E G D
poplib.cpython-38.pyc 13.158 KB -rw-r--r-- 2022-04-22 10:25 R E G D
posixpath.cpython-38.opt-1.pyc 10.198 KB -rw-r--r-- 2022-04-22 10:25 R E G D
posixpath.cpython-38.opt-2.pyc 8.523 KB -rw-r--r-- 2022-04-22 10:25 R E G D
posixpath.cpython-38.pyc 10.198 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pprint.cpython-38.opt-1.pyc 15.866 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pprint.cpython-38.opt-2.pyc 13.762 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pprint.cpython-38.pyc 15.914 KB -rw-r--r-- 2022-04-22 10:25 R E G D
profile.cpython-38.opt-1.pyc 14.219 KB -rw-r--r-- 2022-04-22 10:25 R E G D
profile.cpython-38.opt-2.pyc 11.311 KB -rw-r--r-- 2022-04-22 10:25 R E G D
profile.cpython-38.pyc 14.427 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pstats.cpython-38.opt-1.pyc 21.563 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pstats.cpython-38.opt-2.pyc 19.099 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pstats.cpython-38.pyc 21.563 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pty.cpython-38.opt-1.pyc 3.877 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pty.cpython-38.opt-2.pyc 3.052 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pty.cpython-38.pyc 3.877 KB -rw-r--r-- 2022-04-22 10:25 R E G D
py_compile.cpython-38.opt-1.pyc 7.226 KB -rw-r--r-- 2022-04-22 10:25 R E G D
py_compile.cpython-38.opt-2.pyc 3.575 KB -rw-r--r-- 2022-04-22 10:25 R E G D
py_compile.cpython-38.pyc 7.226 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pyclbr.cpython-38.opt-1.pyc 10.221 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pyclbr.cpython-38.opt-2.pyc 6.704 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pyclbr.cpython-38.pyc 10.221 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pydoc.cpython-38.opt-1.pyc 81.491 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pydoc.cpython-38.opt-2.pyc 72.17 KB -rw-r--r-- 2022-04-22 10:25 R E G D
pydoc.cpython-38.pyc 81.543 KB -rw-r--r-- 2022-04-22 10:25 R E G D
queue.cpython-38.opt-1.pyc 10.392 KB -rw-r--r-- 2022-04-22 10:25 R E G D
queue.cpython-38.opt-2.pyc 6.156 KB -rw-r--r-- 2022-04-22 10:25 R E G D
queue.cpython-38.pyc 10.392 KB -rw-r--r-- 2022-04-22 10:25 R E G D
quopri.cpython-38.opt-1.pyc 5.457 KB -rw-r--r-- 2022-04-22 10:25 R E G D
quopri.cpython-38.opt-2.pyc 4.445 KB -rw-r--r-- 2022-04-22 10:25 R E G D
quopri.cpython-38.pyc 5.628 KB -rw-r--r-- 2022-04-22 10:25 R E G D
random.cpython-38.opt-1.pyc 19.651 KB -rw-r--r-- 2022-04-22 10:25 R E G D
random.cpython-38.opt-2.pyc 12.839 KB -rw-r--r-- 2022-04-22 10:25 R E G D
random.cpython-38.pyc 19.651 KB -rw-r--r-- 2022-04-22 10:25 R E G D
re.cpython-38.opt-1.pyc 14.099 KB -rw-r--r-- 2022-04-22 10:25 R E G D
re.cpython-38.opt-2.pyc 5.956 KB -rw-r--r-- 2022-04-22 10:25 R E G D
re.cpython-38.pyc 14.099 KB -rw-r--r-- 2022-04-22 10:25 R E G D
reprlib.cpython-38.opt-1.pyc 5.193 KB -rw-r--r-- 2022-04-22 10:25 R E G D
reprlib.cpython-38.opt-2.pyc 5.041 KB -rw-r--r-- 2022-04-22 10:25 R E G D
reprlib.cpython-38.pyc 5.193 KB -rw-r--r-- 2022-04-22 10:25 R E G D
rlcompleter.cpython-38.opt-1.pyc 5.635 KB -rw-r--r-- 2022-04-22 10:25 R E G D
rlcompleter.cpython-38.opt-2.pyc 3.034 KB -rw-r--r-- 2022-04-22 10:25 R E G D
rlcompleter.cpython-38.pyc 5.635 KB -rw-r--r-- 2022-04-22 10:25 R E G D
runpy.cpython-38.opt-1.pyc 8.004 KB -rw-r--r-- 2022-04-22 10:25 R E G D
runpy.cpython-38.opt-2.pyc 6.475 KB -rw-r--r-- 2022-04-22 10:25 R E G D
runpy.cpython-38.pyc 8.004 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sched.cpython-38.opt-1.pyc 6.394 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sched.cpython-38.opt-2.pyc 3.438 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sched.cpython-38.pyc 6.394 KB -rw-r--r-- 2022-04-22 10:25 R E G D
secrets.cpython-38.opt-1.pyc 2.153 KB -rw-r--r-- 2022-04-22 10:25 R E G D
secrets.cpython-38.opt-2.pyc 1.12 KB -rw-r--r-- 2022-04-22 10:25 R E G D
secrets.cpython-38.pyc 2.153 KB -rw-r--r-- 2022-04-22 10:25 R E G D
selectors.cpython-38.opt-1.pyc 16.553 KB -rw-r--r-- 2022-04-22 10:25 R E G D
selectors.cpython-38.opt-2.pyc 12.612 KB -rw-r--r-- 2022-04-22 10:25 R E G D
selectors.cpython-38.pyc 16.553 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shelve.cpython-38.opt-1.pyc 9.282 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shelve.cpython-38.opt-2.pyc 5.229 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shelve.cpython-38.pyc 9.282 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shlex.cpython-38.opt-1.pyc 7.374 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shlex.cpython-38.opt-2.pyc 6.83 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shlex.cpython-38.pyc 7.374 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shutil.cpython-38.opt-1.pyc 36.361 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shutil.cpython-38.opt-2.pyc 25.175 KB -rw-r--r-- 2022-04-22 10:25 R E G D
shutil.cpython-38.pyc 36.361 KB -rw-r--r-- 2022-04-22 10:25 R E G D
signal.cpython-38.opt-1.pyc 2.791 KB -rw-r--r-- 2022-04-22 10:25 R E G D
signal.cpython-38.opt-2.pyc 2.572 KB -rw-r--r-- 2022-04-22 10:25 R E G D
signal.cpython-38.pyc 2.791 KB -rw-r--r-- 2022-04-22 10:25 R E G D
site.cpython-38.opt-1.pyc 16.378 KB -rw-r--r-- 2022-04-22 10:25 R E G D
site.cpython-38.opt-2.pyc 10.972 KB -rw-r--r-- 2022-04-22 10:25 R E G D
site.cpython-38.pyc 16.378 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtpd.cpython-38.opt-1.pyc 25.857 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtpd.cpython-38.opt-2.pyc 23.299 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtpd.cpython-38.pyc 25.857 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtplib.cpython-38.opt-1.pyc 34.79 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtplib.cpython-38.opt-2.pyc 18.812 KB -rw-r--r-- 2022-04-22 10:25 R E G D
smtplib.cpython-38.pyc 34.85 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sndhdr.cpython-38.opt-1.pyc 6.84 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sndhdr.cpython-38.opt-2.pyc 5.595 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sndhdr.cpython-38.pyc 6.84 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socket.cpython-38.opt-1.pyc 27.111 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socket.cpython-38.opt-2.pyc 18.983 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socket.cpython-38.pyc 27.15 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socketserver.cpython-38.opt-1.pyc 24.781 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socketserver.cpython-38.opt-2.pyc 14.316 KB -rw-r--r-- 2022-04-22 10:25 R E G D
socketserver.cpython-38.pyc 24.781 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_compile.cpython-38.opt-1.pyc 14.581 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_compile.cpython-38.opt-2.pyc 14.177 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_compile.cpython-38.pyc 14.802 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_constants.cpython-38.opt-1.pyc 6.225 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_constants.cpython-38.opt-2.pyc 5.81 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_constants.cpython-38.pyc 6.225 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_parse.cpython-38.opt-1.pyc 21.108 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_parse.cpython-38.opt-2.pyc 21.062 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sre_parse.cpython-38.pyc 21.154 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ssl.cpython-38.opt-1.pyc 43.565 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ssl.cpython-38.opt-2.pyc 32.845 KB -rw-r--r-- 2022-04-22 10:25 R E G D
ssl.cpython-38.pyc 43.565 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stat.cpython-38.opt-1.pyc 4.284 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stat.cpython-38.opt-2.pyc 3.52 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stat.cpython-38.pyc 4.284 KB -rw-r--r-- 2022-04-22 10:25 R E G D
statistics.cpython-38.opt-1.pyc 32.49 KB -rw-r--r-- 2022-04-22 10:25 R E G D
statistics.cpython-38.opt-2.pyc 17.171 KB -rw-r--r-- 2022-04-22 10:25 R E G D
statistics.cpython-38.pyc 32.879 KB -rw-r--r-- 2022-04-22 10:25 R E G D
string.cpython-38.opt-1.pyc 7.144 KB -rw-r--r-- 2022-04-22 10:25 R E G D
string.cpython-38.opt-2.pyc 6.063 KB -rw-r--r-- 2022-04-22 10:25 R E G D
string.cpython-38.pyc 7.144 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stringprep.cpython-38.opt-1.pyc 10.717 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stringprep.cpython-38.opt-2.pyc 10.502 KB -rw-r--r-- 2022-04-22 10:25 R E G D
stringprep.cpython-38.pyc 10.773 KB -rw-r--r-- 2022-04-22 10:25 R E G D
struct.cpython-38.opt-1.pyc 0.337 KB -rw-r--r-- 2022-04-22 10:25 R E G D
struct.cpython-38.opt-2.pyc 0.337 KB -rw-r--r-- 2022-04-22 10:25 R E G D
struct.cpython-38.pyc 0.337 KB -rw-r--r-- 2022-04-22 10:25 R E G D
subprocess.cpython-38.opt-1.pyc 40.903 KB -rw-r--r-- 2022-04-22 10:25 R E G D
subprocess.cpython-38.opt-2.pyc 29.253 KB -rw-r--r-- 2022-04-22 10:25 R E G D
subprocess.cpython-38.pyc 40.998 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sunau.cpython-38.opt-1.pyc 16.694 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sunau.cpython-38.opt-2.pyc 12.212 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sunau.cpython-38.pyc 16.694 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symbol.cpython-38.opt-1.pyc 2.362 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symbol.cpython-38.opt-2.pyc 2.288 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symbol.cpython-38.pyc 2.362 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symtable.cpython-38.opt-1.pyc 10.979 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symtable.cpython-38.opt-2.pyc 10.213 KB -rw-r--r-- 2022-04-22 10:25 R E G D
symtable.cpython-38.pyc 11.071 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sysconfig.cpython-38.opt-1.pyc 15.49 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sysconfig.cpython-38.opt-2.pyc 13.168 KB -rw-r--r-- 2022-04-22 10:25 R E G D
sysconfig.cpython-38.pyc 15.49 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tabnanny.cpython-38.opt-1.pyc 6.88 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tabnanny.cpython-38.opt-2.pyc 5.969 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tabnanny.cpython-38.pyc 6.88 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tarfile.cpython-38.opt-1.pyc 61.177 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tarfile.cpython-38.opt-2.pyc 47.612 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tarfile.cpython-38.pyc 61.207 KB -rw-r--r-- 2022-04-22 10:25 R E G D
telnetlib.cpython-38.opt-1.pyc 17.824 KB -rw-r--r-- 2022-04-22 10:25 R E G D
telnetlib.cpython-38.opt-2.pyc 10.498 KB -rw-r--r-- 2022-04-22 10:25 R E G D
telnetlib.cpython-38.pyc 17.824 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tempfile.cpython-38.opt-1.pyc 22.863 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tempfile.cpython-38.opt-2.pyc 16.49 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tempfile.cpython-38.pyc 22.863 KB -rw-r--r-- 2022-04-22 10:25 R E G D
textwrap.cpython-38.opt-1.pyc 13.145 KB -rw-r--r-- 2022-04-22 10:25 R E G D
textwrap.cpython-38.opt-2.pyc 6.104 KB -rw-r--r-- 2022-04-22 10:25 R E G D
textwrap.cpython-38.pyc 13.217 KB -rw-r--r-- 2022-04-22 10:25 R E G D
this.cpython-38.opt-1.pyc 1.246 KB -rw-r--r-- 2022-04-22 10:25 R E G D
this.cpython-38.opt-2.pyc 1.246 KB -rw-r--r-- 2022-04-22 10:25 R E G D
this.cpython-38.pyc 1.246 KB -rw-r--r-- 2022-04-22 10:25 R E G D
threading.cpython-38.opt-1.pyc 38.516 KB -rw-r--r-- 2022-04-22 10:25 R E G D
threading.cpython-38.opt-2.pyc 22.327 KB -rw-r--r-- 2022-04-22 10:25 R E G D
threading.cpython-38.pyc 39.054 KB -rw-r--r-- 2022-04-22 10:25 R E G D
timeit.cpython-38.opt-1.pyc 11.516 KB -rw-r--r-- 2022-04-22 10:25 R E G D
timeit.cpython-38.opt-2.pyc 5.799 KB -rw-r--r-- 2022-04-22 10:25 R E G D
timeit.cpython-38.pyc 11.516 KB -rw-r--r-- 2022-04-22 10:25 R E G D
token.cpython-38.opt-1.pyc 2.441 KB -rw-r--r-- 2022-04-22 10:25 R E G D
token.cpython-38.opt-2.pyc 2.409 KB -rw-r--r-- 2022-04-22 10:25 R E G D
token.cpython-38.pyc 2.441 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tokenize.cpython-38.opt-1.pyc 16.729 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tokenize.cpython-38.opt-2.pyc 13.054 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tokenize.cpython-38.pyc 16.772 KB -rw-r--r-- 2022-04-22 10:25 R E G D
trace.cpython-38.opt-1.pyc 19.571 KB -rw-r--r-- 2022-04-22 10:25 R E G D
trace.cpython-38.opt-2.pyc 16.628 KB -rw-r--r-- 2022-04-22 10:25 R E G D
trace.cpython-38.pyc 19.571 KB -rw-r--r-- 2022-04-22 10:25 R E G D
traceback.cpython-38.opt-1.pyc 19.485 KB -rw-r--r-- 2022-04-22 10:25 R E G D
traceback.cpython-38.opt-2.pyc 10.791 KB -rw-r--r-- 2022-04-22 10:25 R E G D
traceback.cpython-38.pyc 19.485 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tracemalloc.cpython-38.opt-1.pyc 16.971 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tracemalloc.cpython-38.opt-2.pyc 15.591 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tracemalloc.cpython-38.pyc 16.971 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tty.cpython-38.opt-1.pyc 1.065 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tty.cpython-38.opt-2.pyc 0.959 KB -rw-r--r-- 2022-04-22 10:25 R E G D
tty.cpython-38.pyc 1.065 KB -rw-r--r-- 2022-04-22 10:25 R E G D
types.cpython-38.opt-1.pyc 8.977 KB -rw-r--r-- 2022-04-22 10:25 R E G D
types.cpython-38.opt-2.pyc 7.783 KB -rw-r--r-- 2022-04-22 10:25 R E G D
types.cpython-38.pyc 8.977 KB -rw-r--r-- 2022-04-22 10:25 R E G D
typing.cpython-38.opt-1.pyc 60.924 KB -rw-r--r-- 2022-04-22 10:25 R E G D
typing.cpython-38.opt-2.pyc 44.568 KB -rw-r--r-- 2022-04-22 10:25 R E G D
typing.cpython-38.pyc 60.972 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uu.cpython-38.opt-1.pyc 3.535 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uu.cpython-38.opt-2.pyc 3.297 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uu.cpython-38.pyc 3.535 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uuid.cpython-38.opt-1.pyc 23.012 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uuid.cpython-38.opt-2.pyc 16.023 KB -rw-r--r-- 2022-04-22 10:25 R E G D
uuid.cpython-38.pyc 23.143 KB -rw-r--r-- 2022-04-22 10:25 R E G D
warnings.cpython-38.opt-1.pyc 12.897 KB -rw-r--r-- 2022-04-22 10:25 R E G D
warnings.cpython-38.opt-2.pyc 10.676 KB -rw-r--r-- 2022-04-22 10:25 R E G D
warnings.cpython-38.pyc 13.347 KB -rw-r--r-- 2022-04-22 10:25 R E G D
wave.cpython-38.opt-1.pyc 17.689 KB -rw-r--r-- 2022-04-22 10:25 R E G D
wave.cpython-38.opt-2.pyc 11.838 KB -rw-r--r-- 2022-04-22 10:25 R E G D
wave.cpython-38.pyc 17.738 KB -rw-r--r-- 2022-04-22 10:25 R E G D
weakref.cpython-38.opt-1.pyc 19.046 KB -rw-r--r-- 2022-04-22 10:25 R E G D
weakref.cpython-38.opt-2.pyc 15.839 KB -rw-r--r-- 2022-04-22 10:25 R E G D
weakref.cpython-38.pyc 19.075 KB -rw-r--r-- 2022-04-22 10:25 R E G D
webbrowser.cpython-38.opt-1.pyc 16.701 KB -rw-r--r-- 2022-04-22 10:25 R E G D
webbrowser.cpython-38.opt-2.pyc 14.348 KB -rw-r--r-- 2022-04-22 10:25 R E G D
webbrowser.cpython-38.pyc 16.733 KB -rw-r--r-- 2022-04-22 10:25 R E G D
xdrlib.cpython-38.opt-1.pyc 8.043 KB -rw-r--r-- 2022-04-22 10:25 R E G D
xdrlib.cpython-38.opt-2.pyc 7.569 KB -rw-r--r-- 2022-04-22 10:25 R E G D
xdrlib.cpython-38.pyc 8.043 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipapp.cpython-38.opt-1.pyc 5.731 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipapp.cpython-38.opt-2.pyc 4.583 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipapp.cpython-38.pyc 5.731 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipfile.cpython-38.opt-1.pyc 57.121 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipfile.cpython-38.opt-2.pyc 48.636 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipfile.cpython-38.pyc 57.157 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipimport.cpython-38.opt-1.pyc 16.783 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipimport.cpython-38.opt-2.pyc 13.348 KB -rw-r--r-- 2022-04-22 10:25 R E G D
zipimport.cpython-38.pyc 16.885 KB -rw-r--r-- 2022-04-22 10:25 R E G D
REQUEST EXIT
U ,a @sdZdZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlmZddlmZmZeZejD]\ZZeede<qdZdd Zd d Z d d Z!ddZ"ddZ#e$edr ddZ%nddZ%e$edr*ddZ&nddZ&ddZ'ddZ(ddZ)d d!Z*d"d#Z+d$d%Z,d&d'Z-d(d)Z.d*d+Z/d,d-Z0d.d/Z1d0d1Z2d2d3Z3d4d5Z4d6d7Z5dd8d9Z6ed:d;Z7dd?Z9dd@dAdBZ:dCdDZ;dEdFZdKdLZ?dMdNZ@dOdPZAdQdRZBddSdTZCiZDiZEddUdVZFdWdXZGdYdZZHGd[d\d\eIZJGd]d^d^ZKd_d`ZLdadbZMdcddZNdedfZOddhdiZPedjdkZQdldmZRedndoZSdpdqZTedrdsZUdtduZVedvdwZWdxdyZXddzd{ZYd|d}ZZdddd~iie[ddddddddeYf ddZ\e[ddddddfddZ]ddZ^ddZ_ddZ`eddZaddZbeddZcdddZdddZeeddecjfZgdddZhdddZiddZjdddZkdddZlemZnddZoddZpddZqddZrddZsenfddZtdZudZvdZwdZxddZyddZzdZ{dZ|dZ}dZ~ddZddÄZeejZeejZeejdZeeeejfZddƄZdddȄZddʄZdd̄Zdd΄ZddЄZdd҄ZdddՄZdddׄZdddلZdddڜdd܄ZGddބdރZGdddZGdddejZejZejZejZejZejZededededediZGdddZGdddZGdddZddddZddZedkredS(aGet useful information from live Python objects. This module encapsulates the interface provided by the internal special attributes (co_*, im_*, tb_*, etc.) in a friendlier fashion. It also provides some help for examining source code and class layout. Here are some of the useful functions provided by this module: ismodule(), isclass(), ismethod(), isfunction(), isgeneratorfunction(), isgenerator(), istraceback(), isframe(), iscode(), isbuiltin(), isroutine() - check object types getmembers() - get members of an object that satisfy a given condition getfile(), getsourcefile(), getsource() - find an object's source code getdoc(), getcomments() - get documentation on an object getmodule() - determine the module that an object came from getclasstree() - arrange classes so as to represent their hierarchy getargvalues(), getcallargs() - get info about function arguments getfullargspec() - same, with support for Python 3 features formatargvalues() - format an argument spec getouterframes(), getinnerframes() - get info about frames currentframe() - get the current stack frame stack(), trace() - get info about frames on the stack or in a traceback signature() - get a Signature object for the callable )zKa-Ping Yee z'Yury Selivanov N) attrgetter) namedtuple OrderedDictZCO_icCs t|tjS)zReturn true if the object is a module. Module objects provide these attributes: __cached__ pathname to byte compiled file __doc__ documentation string __file__ filename (missing for built-in modules)) isinstancetypes ModuleTypeobjectr ,/opt/alt/python38/lib64/python3.8/inspect.pyismodule?sr cCs t|tS)zReturn true if the object is a class. Class objects provide these attributes: __doc__ documentation string __module__ name of module in which this class was defined)rtyperr r r isclassHsrcCs t|tjS)a_Return true if the object is an instance method. Instance method objects provide these attributes: __doc__ documentation string __name__ name with which this method was defined __func__ function object containing implementation of method __self__ instance to which this method is bound)rr MethodTyperr r r ismethodPsrcCs:t|st|st|rdSt|}t|do8t|d S)aReturn true if the object is a method descriptor. But not if ismethod() or isclass() or isfunction() are true. This is new in Python 2.2, and, for example, is true of int.__add__. An object passing this test has a __get__ attribute but not a __set__ attribute, but beyond that the set of attributes varies. __name__ is usually sensible, and __doc__ often is. Methods implemented via descriptors that also pass one of the other tests return false from the ismethoddescriptor() test, simply because the other tests promise more -- you can, e.g., count on having the __func__ attribute (etc) when an object passes ismethod().F__get____set__rr isfunctionr hasattrr tpr r r ismethoddescriptorZsrcCs8t|st|st|rdSt|}t|dp6t|dS)a}Return true if the object is a data descriptor. Data descriptors have a __set__ or a __delete__ attribute. Examples are properties (defined in Python) and getsets and members (defined in C). Typically, data descriptors will also have __name__ and __doc__ attributes (properties, getsets, and members have both of these attributes), but this is not guaranteed.Fr __delete__rrr r r isdatadescriptornsrMemberDescriptorTypecCs t|tjS)Return true if the object is a member descriptor. Member descriptors are specialized descriptors defined in extension modules.)rrrrr r r ismemberdescriptor~srcCsdS)rFr rr r r rsGetSetDescriptorTypecCs t|tjS)Return true if the object is a getset descriptor. getset descriptors are specialized descriptors defined in extension modules.)rrrrr r r isgetsetdescriptorsr cCsdS)rFr rr r r r scCs t|tjS)a(Return true if the object is a user-defined function. Function objects provide these attributes: __doc__ documentation string __name__ name with which this function was defined __code__ code object containing compiled function bytecode __defaults__ tuple of any default values for arguments __globals__ global namespace in which this function was defined __annotations__ dict of parameter annotations __kwdefaults__ dict of keyword only parameters with defaults)rr FunctionTyperr r r rs rcCs6t|r|j}qt|}t|s&dSt|jj|@S)zReturn true if ``f`` is a function (or a method or functools.partial wrapper wrapping a function) whose code object has the given ``flag`` set in its flags.F)r__func__ functools_unwrap_partialrbool__code__co_flags)fflagr r r _has_code_flags  r*cCs t|tS)zReturn true if the object is a user-defined generator function. Generator function objects provide the same attributes as functions. See help(isfunction) for a list of attributes.)r*Z CO_GENERATORobjr r r isgeneratorfunctionsr-cCs t|tS)zuReturn true if the object is a coroutine function. Coroutine functions are defined with "async def" syntax. )r*Z CO_COROUTINEr+r r r iscoroutinefunctionsr.cCs t|tS)zReturn true if the object is an asynchronous generator function. Asynchronous generator functions are defined with "async def" syntax and have "yield" expressions in their body. )r*ZCO_ASYNC_GENERATORr+r r r isasyncgenfunctionsr/cCs t|tjS)z7Return true if the object is an asynchronous generator.)rrAsyncGeneratorTyperr r r isasyncgensr1cCs t|tjS)aReturn true if the object is a generator. Generator objects provide these attributes: __iter__ defined to support iteration over container close raises a new GeneratorExit exception inside the generator to terminate the iteration gi_code code object gi_frame frame object or possibly None once the generator has been exhausted gi_running set to 1 when generator is executing, 0 otherwise next return the next item from the container send resumes the generator and "sends" a value that becomes the result of the current yield-expression throw used to raise an exception inside the generator)rr GeneratorTyperr r r isgeneratorsr3cCs t|tjS)z)Return true if the object is a coroutine.)rr CoroutineTyperr r r iscoroutinesr5cCs6t|tjp4t|tjr(t|jjt@p4t|tj j S)z?Return true if object can be passed to an ``await`` expression.) rrr4r2r%gi_coder'ZCO_ITERABLE_COROUTINE collectionsabc Awaitablerr r r isawaitables    r:cCs t|tjS)abReturn true if the object is a traceback. Traceback objects provide these attributes: tb_frame frame object at this level tb_lasti index of last attempted instruction in bytecode tb_lineno current line number in Python source code tb_next next inner traceback object (called by this level))rr TracebackTyperr r r istracebacksr<cCs t|tjS)a`Return true if the object is a frame object. Frame objects provide these attributes: f_back next outer frame object (this frame's caller) f_builtins built-in namespace seen by this frame f_code code object being executed in this frame f_globals global namespace seen by this frame f_lasti index of last attempted instruction in bytecode f_lineno current line number in Python source code f_locals local namespace seen by this frame f_trace tracing function for this frame, or None)rr FrameTyperr r r isframes r>cCs t|tjS)aReturn true if the object is a code object. Code objects provide these attributes: co_argcount number of arguments (not including *, ** args or keyword only arguments) co_code string of raw compiled bytecode co_cellvars tuple of names of cell variables co_consts tuple of constants used in the bytecode co_filename name of file in which this code object was created co_firstlineno number of first line in Python source code co_flags bitmap: 1=optimized | 2=newlocals | 4=*arg | 8=**arg | 16=nested | 32=generator | 64=nofree | 128=coroutine | 256=iterable_coroutine | 512=async_generator co_freevars tuple of names of free variables co_posonlyargcount number of positional only arguments co_kwonlyargcount number of keyword only arguments (not including ** arg) co_lnotab encoded mapping of line numbers to bytecode indices co_name name with which this code object was defined co_names tuple of names of local variables co_nlocals number of local variables co_stacksize virtual machine stack space required co_varnames tuple of names of arguments and local variables)rrCodeTyperr r r iscodesr@cCs t|tjS)a,Return true if the object is a built-in function or method. Built-in functions and methods provide these attributes: __doc__ documentation string __name__ original name of this function or method __self__ instance to which a method is bound, or None)rrBuiltinFunctionTyperr r r isbuiltinsrBcCs t|pt|pt|pt|S)zdS|j D]\}}t |ddrHdSqH|j D]6}t |ddD]$}t ||d}t |ddrzdSqzqjdS)z:Return true if the object is an abstract base class (ABC).FT__abstractmethods____isabstractmethod__r N) rr __flags__TPFLAGS_IS_ABSTRACT issubclassr8ABCMetar__dict__itemsgetattr __bases__)r namevaluebaser r r isabstract-s"        rQc Cst|r|ft|}nd}g}t}t|}z:|jD].}|jD]\}}t|tj rD| |qDq6Wnt k r|YnX|D]~} zt || } | |krt Wn:t k r|D]}| |jkr|j| } qqYqYnX|r|| r| | | f| | q|jddd|S)zReturn all members of an object as (name, value) pairs sorted by name. Optionally, only return members that satisfy a given predicate.r cSs|dS)Nrr )Zpairr r r nzgetmembers..key)rgetmrosetdirrMrJrKrrDynamicClassAttributeappendAttributeErrorrLaddsort) r Z predicatemroresults processednamesrPkvrUrOr r r getmembersEs:        rd Attributezname kind defining_class objectc CsTt|}tt|}tdd|D}|f|}||}t|}|D].}|jD]\}}t|tjrR| |qRqDg} t } |D]} d} d} d}| | krzz| dkrt dt || } Wn"t k r}zW5d}~XYnXt | d| } | |krzd} d}|D] }t || d}|| kr|}q|D]B}z| || }Wntk rXYq(YnX|| kr(|}q(|dk rz|} |D]0}| |jkr~|j| }| |kr|} qq~| dkrq| dk r| n|}t|ttjfrd}|}nFt|ttjfrd}|}n*t|trd }|}nt|r,d }nd }| t| || || | q| S) aNReturn list of attribute-descriptor tuples. For each name in dir(cls), the return list contains a 4-tuple with these elements: 0. The name (a string). 1. The kind of attribute this is, one of these strings: 'class method' created via classmethod() 'static method' created via staticmethod() 'property' created via property() 'method' any other flavor of method or descriptor 'data' not a method 2. The class which defined this attribute (a class). 3. The object as obtained by calling getattr; if this fails, or if the resulting object does not live anywhere in the class' mro (including metaclasses) then the object is looked up in the defining class's dict (found by walking the mro). If one of the items in dir(cls) is stored in the metaclass it will now be discovered and not have None be listed as the class in which it was defined. Any items whose home class cannot be discovered are skipped. css|]}|ttfkr|VqdSN)r r ).0clsr r r s z'classify_class_attrs..NrJz)__dict__ is special, don't want the proxy __objclass__z static methodz class methodpropertymethoddata)rVr tuplerXrJrKrrrYrZrW ExceptionrL __getattr__r[ staticmethodBuiltinMethodType classmethodClassMethodDescriptorTyperkrCrer\)rhr^ZmetamroZ class_basesZ all_basesrarPrbrcresultr`rNZhomeclsZget_objZdict_objexcZlast_clsZsrch_clsZsrch_objr,kindr r r classify_class_attrsss                    rxcCs|jS)zHReturn tuple of base classes (including cls) in method resolution order.)__mro__)rhr r r rVsrVstopcs|dkrdd}n fdd}|}t||i}t}||rx|j}t|}||ks`t||krntd||||<q6|S)anGet the object wrapped by *func*. Follows the chain of :attr:`__wrapped__` attributes returning the last object in the chain. *stop* is an optional callback accepting an object in the wrapper chain as its sole argument that allows the unwrapping to be terminated early if the callback returns a true value. If the callback never returns a true value, the last object in the chain is returned as usual. For example, :func:`signature` uses this to stop unwrapping if any object in the chain has a ``__signature__`` attribute defined. :exc:`ValueError` is raised if a cycle is encountered. NcSs t|dSN __wrapped__rr(r r r _is_wrapperszunwrap.._is_wrappercst|do| Sr|r~rrzr r rsz!wrapper loop when unwrapping {!r})idsysgetrecursionlimitr}len ValueErrorformat)funcr{rr(ZmemoZrecursion_limitZid_funcr rzr unwraps    rcCs|}t|t|S)zBReturn the indent size, in spaces, at the start of a line of text.) expandtabsrlstrip)lineZexpliner r r indentsizesrcCsNtj|j}|dkrdS|jdddD]}t||}q.t|sJdS|S)N.)rmodulesget __module__ __qualname__splitrLr)rrhrNr r r _findclasss rc Cst|rT|jD]@}|tk rz |j}Wntk r<YqYnX|dk r|SqdSt|r|jj}|j}t|rt t ||dd|jkr|}n|j }n$t |r|j}t |}|dkst |||k rdSnt |r|j}|j}t|r|jd||jkr|}n|j }nt|trP|j}|j}t |}|dksJt |||k rdSnnt|sdt|r|j}|j}t |||k rdSt|rt |dd}t|tr||kr||SndS|jD]F}zt ||j}Wntk rYqYnX|dk r|SqdS)Nr"r __slots__)rryr __doc__r[rr"__name____self__rL __class__rrrBrrrkfgetrrrjrdict)r,rPdocrNselfrhrslotsr r r _finddoc sn               rc Cshz |j}Wntk r YdSX|dkrRz t|}Wnttfk rPYdSXt|ts`dSt|S)zGet the documentation string for an object. All tabs are expanded to spaces. To clean up docstrings that are indented to line up with blocks of code, any whitespace than can be uniformly removed from the second line onwards is removed.N)rr[r TypeErrorrstrcleandoc)r rr r r getdoc^s   rcCsz|d}Wntk r(YdSXtj}|ddD]*}t|}|rf_coder@ co_filenamer r)r moduler r r getfiles.   rcCsTtj|}ddtjD}||D]"\}}||r,|d|Sq,dS)z1Return the module name for a given file, or None.cSsg|]}t| |fqSr )r)rgsuffixr r r sz!getmodulename..N)ospathbasename importlib machinery all_suffixesr]endswith)rZfnamesuffixesZneglenrr r r getmodulenames   rcst|tjjdd}|tjjdd7}tfdd|Dr`tjdtjj dntfddtjj Dr~dStj rSt t |dddk rStjkrSdS)zReturn the filename that can be used to locate an object's source. Return None if no way can be identified to get the source. Nc3s|]}|VqdSrfrrgsfilenamer r risz getsourcefile..rc3s|]}|VqdSrfrrrr r ris __loader__)rrrDEBUG_BYTECODE_SUFFIXESOPTIMIZED_BYTECODE_SUFFIXESanyrrsplitextSOURCE_SUFFIXESEXTENSION_SUFFIXESexistsrL getmodule linecachecache)r Zall_bytecode_suffixesr rr getsourcefiles"    rcCs,|dkrt|pt|}tjtj|S)zReturn an absolute path to the source or compiled file for an object. The idea is for each object to have a unique origin, so this routine normalizes the result as much as possible.N)rrrrnormcaseabspath)r _filenamer r r getabsfilesrc Cst|r |St|dr$tj|jS|dk rD|tkrDtjt|Szt||}Wntk rhYdSX|tkrtjt|Stj D]\\}}t|rt|dr|j }|t |dkrq|t |<t|}|j t|<ttj|<q|tkrtjt|Stjd}t|ds"dSt||j rJt||j }||krJ|Stjd}t||j r|t||j } | |kr||SdS)zAReturn the module an object was defined in, or None if not found.rNr__main__rbuiltins)r rrrrr modulesbyfilerrcopyrKr_filesbymodnamerrrrealpathrL) r rfilemodnamerr(mainZ mainobjectZbuiltinZ builtinobjectr r r rsJ           rc Cst|}|rt|n$t|}|dr4|dszsource code not availablezcould not get source coderz^(\s*)class\s*z\bcrzcould not find class definitionco_firstlinenoz"could not find function definitionz>^(\s*def\s)|(\s*async\s+def\s)|(.*(?rr@rr IndexError) r rrrrNZpatZ candidatesrrlnumrr r r findsourcesf                 rc Cs.zt|\}}Wnttfk r*YdSXt|rd}|rT|ddddkrTd}|t|krz||dkrz|d}qT|t|kr||dddkrg}|}|t|kr||dddkr||||d}qd|Sn>|dkr*t ||}|d}|dkr*|| dddkr*t |||kr*|| g}|dkr|d}|| }|dddkrt |||kr|g|dd<|d}|dkrq|| }qt|r|ddkrg|dd<q|r |d dkr g|d d<qd|SdS) zwGet lines of comments immediately preceding an object's source code. Returns None when source can't be found. Nrz#!r)#rrr) rrrr rstriprZrrrr)r rrstartZcommentsendrZcommentr r r getcommentsRsL      $ $ rc@s eZdZdS) EndOfBlockN)rrrr r r r rsrc@s eZdZdZddZddZdS) BlockFinderz@Provide a tokeneater() method to detect the end of a code block.cCs4d|_d|_d|_d|_d|_d|_d|_d|_dS)NrFr)rislambdastartedpassline indecoratordecoratorhasargslast body_col0rr r r __init__szBlockFinder.__init__cCsr|jsB|jsB|dkrd|_n|dkr8|dkr2d|_d|_d|_n,|dkrZ|jrVd|_n|dkrv|jrtd|_d|_n|tjkrd|_|d|_|jrt|jr|jsd|_n|jrn|tj kr|j dkr|jr|d |_ |j d |_ d|_n|tj kr|j d |_ |j dkrntnV|tj krL|j dk rn|d |j krn|d|_n"|j dkrn|tj tjfkrntdS) N@T)defclasslambdar()Frr)rrrrrtokenizeNEWLINErrINDENTrrDEDENTCOMMENTNL)rr tokenZsrowcolZerowcolrr r r tokeneatersL              zBlockFinder.tokeneaterN)rrrrrr r r r r rs rc CsVt}z(tt|j}|D]}|j|qWnttfk rFYnX|d|jS)z@Extract the block of code at the top of the given list of lines.N) rrgenerate_tokensiter__next__r rIndentationErrorr)rZ blockfindertokensZ_tokenr r r getblocksrcCsbt|}t|\}}t|r"|j}t|s>t|rF|jjdkrF|dfSt||d|dfSdS)aReturn a list of source lines and starting line number for an object. The argument may be a module, class, method, function, traceback, frame, or code object. The source code is returned as a list of the lines corresponding to the object and the line number indicates where in the original source file the first line of code was found. An OSError is raised if the source code cannot be retrieved.zrNr) rrr<rr r>rco_namerr rrr r r getsourceliness  rcCst|\}}d|S)aReturn the text of the source code for an object. The argument may be a module, class, method, function, traceback, frame, or code object. The source code is returned as a single string. An OSError is raised if the source code cannot be retrieved.r)rrrr r r getsources rcCsRg}|jtddd|D]2}|||jf||kr|t||||q|S)z-Recursive helper function for getclasstree().rrrT)r]rrZrMwalktree)classeschildrenparentr_rr r r rsrFcCsi}g}|D]d}|jr^|jD]>}||kr0g||<|||krJ||||r||krqpqq ||kr ||q |D]}||krv||qvt||dS)aArrange the given list of classes into a hierarchy of nested lists. Where a nested list appears, it contains classes derived from the class whose entry immediately precedes the list. Each entry is a 2-tuple containing a class and a tuple of its base classes. If the 'unique' argument is true, exactly one entry appears in the returned structure for each class in the given list. Otherwise, classes using multiple inheritance and their descendants will appear multiple times.N)rMrZr)runiquerrootsrrr r r getclasstrees"      r Argumentszargs, varargs, varkwc Cst|std||j}|j}|j}t|d|}t||||}d}||7}d}|jt@rx|j|}|d}d}|jt @r|j|}t ||||S)aGet information about the arguments accepted by a code object. Three things are returned: (args, varargs, varkw), where 'args' is the list of argument names. Keyword-only arguments are appended. 'varargs' and 'varkw' are the names of the * and ** arguments or None.z{!r} is not a code objectNrr) r@rr co_varnames co_argcountco_kwonlyargcountlistr' CO_VARARGSCO_VARKEYWORDSr) coranargsZnkwargsargs kwonlyargsstepvarargsvarkwr r r getargss"    r,ArgSpeczargs varargs keywords defaultscCsDtjdtddt|\}}}}}}}|s.|r6tdt||||S)aeGet the names and default values of a function's parameters. A tuple of four things is returned: (args, varargs, keywords, defaults). 'args' is a list of the argument names, including keyword-only argument names. 'varargs' and 'keywords' are the names of the * and ** parameters or None. 'defaults' is an n-tuple of the default values of the last n parameters. This function is deprecated, as it does not support annotations or keyword-only parameters and will raise ValueError if either is present on the supplied callable. For a more structured introspection API, use inspect.signature() instead. Alternatively, use getfullargspec() for an API with a similar namedtuple based interface, but full support for annotations and keyword-only parameters. Deprecated since Python 3.5, use `inspect.getfullargspec()`. zhinspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()r stacklevelzgFunction has keyword-only parameters or annotations, use inspect.signature() API which can support them)warningswarnDeprecationWarninggetfullargspecrr-)rr'r*r+defaultsr(kwonlydefaultsannr r r getargspec-sr7 FullArgSpeczGargs, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotationsc Cs|zt|ddtd}Wn,tk r@}ztd|W5d}~XYnXg}d}d}g}g}d}i} d}i} |j|jk r||j| d<|jD]} | j} | j } | t kr| | | j | jk r|| j f7}nv| t kr| | | j | jk r|| j f7}nJ| tkr| }n<| tkr*| | | j | jk r8| j | | <n| tkr8| }| j| jk r| j| | <q| sZd} |sdd}t||||||| | S)a$Get the names and default values of a callable object's parameters. A tuple of seven things is returned: (args, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotations). 'args' is a list of the parameter names. 'varargs' and 'varkw' are the names of the * and ** parameters or None. 'defaults' is an n-tuple of the default values of the last n parameters. 'kwonlyargs' is a list of keyword-only parameter names. 'kwonlydefaults' is a dictionary mapping names from kwonlyargs to defaults. 'annotations' is a dictionary mapping parameter names to annotations. Notable differences from inspect.signature(): - the "self" parameter is always reported, even for bound methods - wrapper chains defined by __wrapped__ *not* unwrapped automatically Ffollow_wrapper_chainsskip_bound_argsigclszunsupported callableNr return)_signature_from_callable Signaturerorreturn_annotationempty parametersvaluesrwrN_POSITIONAL_ONLYrZdefault_POSITIONAL_OR_KEYWORD_VAR_POSITIONAL _KEYWORD_ONLY _VAR_KEYWORD annotationr8)rsigexr'r*r+Z posonlyargsr(r4 annotations kwdefaultsparamrwrNr r r r3Nsb             r3ArgInfozargs varargs keywords localscCs t|j\}}}t||||jS)a9Get information about arguments passed into a particular frame. A tuple of four things is returned: (args, varargs, varkw, locals). 'args' is a list of the argument names. 'varargs' and 'varkw' are the names of the * and ** arguments or None. 'locals' is the locals dictionary of the given frame.)r,rrPf_locals)framer'r*r+r r r getargvaluessrScCsVt|dddkr t|ddSt|trN|jd|fkr>|jS|jd|jSt|S)Nrtypingztyping.rrr)rLreprreplacerr rr)rJZ base_moduler r r formatannotations rWcst|ddfdd}|S)Nrcs t|Srf)rW)rJrr r _formatannotationsz5formatannotationrelativeto.._formatannotation)rL)r rYr rXr formatannotationrelativetos  rZr cCsd|SN*r rNr r r rRrSrRcCsd|SN**r r]r r r rRrScCs dt|SN=rUrOr r r rRrScCsd|S)Nz -> r )textr r r rRrSc s<ddlm} | dtddfdd}g}|rBt|t|}t|D]:\}}||}|rz||krz|| |||}||qJ|dk r||||n|r|d |r|D]2}||}|r||kr|| ||7}||q|dk r|| ||d d |d }d kr8|| d 7}|S)aFormat an argument spec from the values returned by getfullargspec. The first seven arguments are (args, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotations). The other five arguments are the corresponding optional formatting functions that are called to turn names and values into strings. The last argument is an optional function to format the sequence of arguments. Deprecated since Python 3.5: use the `signature` function and `Signature` objects. r)r1zc`formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directlyrr.cs(|}|kr$|d|7}|S)Nz: r )argrurMrW formatargr r formatargandannotationsz-formatargspec..formatargandannotationNr\r, rr=)r0r1r2r enumeraterZr)r'r*r+r4r(r5rMrg formatvarargs formatvarkw formatvalueZ formatreturnsrWr1rhspecsZ firstdefaultrrespecZ kwonlyargrur rfr formatargspecs<        rpcCsd|Sr[r r]r r r rRrScCsd|Sr^r r]r r r rRrScCs dt|Sr`rbrcr r r rRrSc Cs|||fdd}g} tt|D]} | ||| q |rV| ||||||rt| |||||dd| dS)afFormat an argument spec from the 4 values returned by getargvalues. The first four arguments are (args, varargs, varkw, locals). The next four arguments are the corresponding optional formatting functions that are called to turn names and values into strings. The ninth argument is an optional function to format the sequence of arguments.cSs|||||Srfr )rNlocalsrgrmr r r convert sz formatargvalues..convertrrir)rrrZr) r'r*r+rqrgrkrlrmrrrnrr r r formatargvaluess  rscsfdd|D}t|}|dkr,|d}n>|dkr@dj|}n*dj|dd}|dd=d ||}td |||rzd nd |dkrd nd|fdS)Ncsg|]}|krt|qSr rb)rgrNrCr r rsz&_missing_arguments..rrrz {} and {}z , {} and {}riz*%s() missing %i required %s argument%s: %s positional keyword-onlyrr)rrrr)f_nameZargnamesposrCramissingrtailr rtr _missing_argumentss     r|c st||}tfdd|D}|r:|dk} d|f} n2|rTd} d|t|f} nt|dk} tt|} d} |rd} | |dkrd nd||dkrd ndf} td || | rd nd|| |dkr|sd nd fdS) Ncsg|]}|kr|qSr r )rgrertr r r)sz_too_many..rz at least %dTz from %d to %drz7 positional argument%s (and %d keyword-only argument%s)rz5%s() takes %s positional argument%s but %d%s %s givenZwasZwere)rrr) rxr'Zkwonlyr*ZdefcountZgivenrCZatleastZ kwonly_givenZpluralrKZ kwonly_sigmsgr rtr _too_many's*    r~cOst|}|\}}}}}} } |j} i} t|rB|jdk rB|jf|}t|} t|}|r^t|nd}t| |}t|D]}||| ||<qt|rt||d| |<t||}|ri| |<| D]T\}}||kr|st d| |f|| ||<q|| krt d| |f|| |<q| |kr<|ssz"getclosurevars.. __builtins__)NoneTrueFalse)rr"rrrr& __closure__zip co_freevars __globals__rrrJr rWco_namesKeyErrorr\r) rcodeZ nonlocal_varsZ global_nsZ builtin_nsZ global_varsZ builtin_varsZ unbound_namesrNr r r getclosurevarszs>    r Tracebackz+filename lineno function code_context indexrcCst|r|j}|j}n|j}t|s2td|t|p@t|}|dkr|d|d}zt |\}}Wnt k rd}}YqXt dt |t ||}||||}|d|}nd}}t|||jj||S)aGet information about a frame or traceback object. A tuple of five things is returned: the filename, the line number of the current line, the function name, a list of lines of context from the source code, and the index of the current line within that list. The optional second argument specifies the number of lines of context to return, which are centered around the current line.z'{!r} is not a frame or traceback objectrrrN)r< tb_linenorf_linenor>rrrrrrmaxrrrrr)rRcontextlinenorrrrindexr r r getframeinfos$rcCs|jS)zCGet the line number from a frame object, allowing for optimization.)rrRr r r getlinenosr FrameInforcCs2g}|r.|ft||}|t||j}q|S)zGet a list of records for a frame and all higher (calling) frames. Each record contains a frame object, filename, line number, function name, a list of lines of context, and index within the context.)rrZrf_back)rRr framelist frameinfor r r getouterframess rcCs4g}|r0|jft||}|t||j}q|S)zGet a list of records for a traceback's frame and all lower frames. Each record contains a frame object, filename, line number, function name, a list of lines of context, and index within the context.)rrrZrtb_next)tbrrrr r r getinnerframess rcCsttdrtdSdS)z?Return the frame of the caller or None if this is not possible. _getframerN)rrrr r r r currentframesrcCsttd|S)z@Return a list of records for the stack above the caller's frame.r)rrrrr r r stacksrcCsttd|S)zCReturn a list of records for the stack below the current exception.r)rrexc_inforr r r tracesrcCstjd|S)Nry)r rJr)klassr r r _static_getmrosrcCs8i}zt|d}Wntk r(YnXt||tSNrJ)r __getattribute__r[rr _sentinel)r,attrZ instance_dictr r r _check_instances rc CsHt|D]:}tt|tkrz|j|WStk r@YqXqtSrf)r_shadowed_dictr rrJr)rrentryr r r _check_class s rcCs(z t|Wntk r"YdSXdSNFT)rrr+r r r _is_types  rc Csntjd}t|D]V}z||d}Wntk r<YqXt|tjkr`|jdkr`|j|ks|Sqt Sr) r rJrrrrrrrjr)r dict_attrrZ class_dictr r r rs   rc Cst}t|s>t|}t|}|tks2t|tjkrBt||}n|}t||}|tk r|tk rtt|dtk rtt|dtk r|S|tk r|S|tk r|S||krtt|D]:}tt|tkrz|j |WSt k rYqXq|tk r|St |dS)aRetrieve attributes without triggering dynamic lookup via the descriptor protocol, __getattr__ or __getattribute__. Note: this function may not be able to retrieve all attributes that getattr can fetch (like dynamically created attributes) and may find attributes that getattr can't (like descriptors that raise AttributeError). It can also return descriptor objects instead of instance members in some cases. See the documentation for details. rrN) rrr rrrrrrrJrr[)r,rrEZinstance_resultrrZ klass_resultrr r r getattr_static+s:    r GEN_CREATED GEN_RUNNING GEN_SUSPENDED GEN_CLOSEDcCs,|jr tS|jdkrtS|jjdkr(tStS)a#Get current state of a generator-iterator. Possible states are: GEN_CREATED: Waiting to start execution. GEN_RUNNING: Currently being executed by the interpreter. GEN_SUSPENDED: Currently suspended at a yield expression. GEN_CLOSED: Execution has completed. Nr) gi_runningrgi_framerf_lastirr) generatorr r r getgeneratorstate`s   rcCs:t|std|t|dd}|dk r2|jjSiSdS)z Get the mapping of generator local variables to their current values. A dict is returned, with the keys the local variable names and values the bound values.z{!r} is not a Python generatorrN)r3rrrLrrQ)rrRr r r getgeneratorlocalsrs  r CORO_CREATED CORO_RUNNINGCORO_SUSPENDED CORO_CLOSEDcCs,|jr tS|jdkrtS|jjdkr(tStS)a&Get current state of a coroutine object. Possible states are: CORO_CREATED: Waiting to start execution. CORO_RUNNING: Currently being executed by the interpreter. CORO_SUSPENDED: Currently suspended at an await expression. CORO_CLOSED: Execution has completed. Nr) cr_runningrcr_framerrrr) coroutiner r r getcoroutinestates   rcCs"t|dd}|dk r|jSiSdS)z Get the mapping of coroutine local variables to their current values. A dict is returned, with the keys the local variable names and values the bound values.rN)rLrQ)rrRr r r getcoroutinelocalss r from_bytescCs8zt||}Wntk r$YdSXt|ts4|SdS)zPrivate helper. Checks if ``cls`` has an attribute named ``method_name`` and returns it only if it is a pure python function. N)rLr[r_NonUserDefinedCallables)rhZ method_nameZmethr r r "_signature_get_user_defined_methods  rc Cs|j}t|}|jpd}|jp$i}|r2||}z|j||}Wn6tk rx}zd|} t| |W5d}~XYnXd} |D] \} } z|j | } Wnt k rYnlX| j t kr| | q| j tkr| |krd} | j| d|| <n| | jq| j tkr| j| d|| <| r| j t k s2t| j tkrb|| jtd}||| <|| q| j ttfkr~|| q| j tkr| | jq|j|dS) zPrivate helper to calculate how 'wrapped_sig' signature will look like after applying a 'functools.partial' object (or alike) on it. r z+partial object {!r} has incorrect argumentsNFT)rErwrB)rBrrKr'keywords bind_partialrrr argumentsrrwrDrrFrVrNrHAssertionError move_to_endrIrGrC) wrapped_sigpartialZ extra_argsZ old_params new_paramsZ partial_argsZpartial_keywordsZbarLr}Ztransform_to_kwonly param_namerOZ arg_valueZ new_paramr r r _signature_get_partialsN              rcCslt|j}|r$|djttfkr,td|dj}|ttfkrP|dd}n|t k r`td|j |dS)zWPrivate helper to transform signatures for unbound functions to bound methods. rzinvalid method signaturerNzinvalid argument typer) rnrBrCrwrIrHrrFrDrGrV)rKparamsrwr r r _signature_bound_methods  rcCs&t|p$t|p$t|tp$|ttfkS)zxPrivate helper to test if `obj` is a callable that might support Argument Clinic's __text_signature__ protocol. )rBrrrr r r+r r r _signature_is_builtin.s rcCst|rt|rdSt|dd}t|dd}t|dt}t|dt}t|dd}t|tjot|to|dksxt|to|dkst|t ot|t S)zPrivate helper to test if `obj` is a duck type of FunctionType. A good example of such objects are functions compiled with Cython, which have all attributes that a pure Python function would have, but have their code statically compiled. FrNr& __defaults____kwdefaults____annotations__) callablerrL_voidrrr?rrnr)r,rNrr4rNrMr r r _signature_is_functionlike:s       rcCsr|dst|d}|dkr*|d}|d}|dksH||ksHt|d}|dksf||ksft|d|S)z Private helper to get first parameter name from a __text_signature__ of a builtin method, which should be in the following format: '($param1, ...)'. Assumptions are that the first argument won't have a default value or an annotation. z($,rr:rar)rrfind)roryZcposr r r _signature_get_bound_paramSs    rcCsd|s|ddfSd}d}dd|dD}t|j}t|}d}d}g}|j} d} tj} tj} t|} | j tj ksxt |D]} | j | j }}|| kr|dkr|rd}q||rt d}| d 7} q||d kr|rt |dkst d}| d }q||| kr|d kr|dks t | }q||r6d}|| kr.|d ks6| d | ||dkr|| dq|d |}|||fS)a Private helper function. Takes a signature in Argument Clinic's extended signature format. Returns a tuple of three things: * that signature re-rendered in standard Python syntax, * the index of the "self" parameter (generally 0), or None if the function does not have a "self" parameter, and * the index of the last "positional only" parameter, or None if the signature has no positional-only parameters. NcSsg|]}|dqS)ascii)encode)rglr r r r}sz6_signature_strip_non_python_syntax..rFrrTr/$rri r)rrrrrZr OP ERRORTOKENnextr ENCODINGrstringr) signatureself_parameterlast_positional_onlyrrZ token_streamZ delayed_commaZskip_next_commardr\Zcurrent_parameterrrtr rclean_signaturer r r "_signature_strip_non_python_syntaxjsZ       rTc sjddl|jt|\}}}d|d}z|}Wntk rNd}YnXt|jsjtd||j d} gj t d}it |dd} | rt j| d}|r|jt j fdd fd d  G fd d d jffd d } t| jj} t| jj} tj| | dd}|dk rJjnjttt|D](\}\}}| ||||kr`jq`| jjrj| | jjjt| jj | jj!D]\}}| ||q| jj"rj#| | jj"|dk r\st$t |dd}|dk }t%|}|rB|s6|rB&dndj'jd} | d<||j dS)zdPrivate helper to parse content of '__text_signature__' and return a Signature based on it. rNzdef fooz: passz"{!r} builtin has invalid signaturercs(t|jst|jdk r"td|jS)Nz'Annotations are not currently supported)rrerrJr)node)astr r parse_names z&_signature_fromstr..parse_namec s|zt|}Wn>tk rLzt|}Wntk rFtYnXYnXt|tttttt dfrr |StdSrf) eval NameError RuntimeErrorrrintfloatbytesr%r ZConstant)rrO)r module_dictsys_module_dictr r wrap_values z&_signature_fromstr..wrap_valuecs(eZdZfddZfddZdS)z,_signature_fromstr..RewriteSymbolicscs\g}|}t|jr(||j|j}qt|js:t||jdt |}|S)Nr) rrerZrrONamerrrreversed)rrarrOrrr r visit_Attributes    z<_signature_fromstr..RewriteSymbolics.visit_Attributecst|jjst|jSrf)rZctxZLoadrr)rrr r r visit_Namesz7_signature_fromstr..RewriteSymbolics.visit_NameN)rrrr r r r r r RewriteSymbolicss r cs|}|krdS|rp|tk rpz|}|}Wntk rR}YnX|kr`dS|k rl|n|}||ddS)NrErJ)_emptyZvisitZ literal_evalrrZ)Z name_nodeZ default_noderErNo) Parameterr rrAinvalidrwrBrr r ps   z_signature_fromstr..p) fillvaluerrr@)(r_parameter_clsrparse SyntaxErrorrZModulerrZbodyrAr rLrrrrJrZNodeTransformerrr'r4 itertools zip_longestPOSITIONAL_ONLYPOSITIONAL_OR_KEYWORDrjr"ZvarargVAR_POSITIONAL KEYWORD_ONLYrr(Z kw_defaultsr VAR_KEYWORDrr rrV)rhr,rr;rrrZprogramrr(Z module_namerr'r4rrrNrEZ_selfZ self_isboundZ self_ismoduler ) rr rrArrwrrBrrrr _signature_fromstrsp                    rcCsBt|std|t|dd}|s4td|t||||S)zHPrivate helper function to get signature for builtin callables. z%{!r} is not a Python builtin function__text_signature__Nz#no signature found for builtin {!r})rrrrLrr)rhrr;rr r r _signature_from_builtin<s r!c CsHd}t|s(t|rd}ntd|t|dd}|rFt||||S|j}|j}|j}|j }|j } |d|} |j } |||| } |j } |j }|j}|rt|}nd}g}||}| }| d|D]<}|rtnt}| |t}|||||d|r|d8}qt| |dD]L\}}|r&tnt}| |t}|||||||d |r|d8}q|jt@r||| }| |t}||||td| D]B}t}|dk r||t}| |t}||||t|d q|jt@r2|| }|jt@r |d7}||}| |t}||||td||| d t|d S) zCPrivate helper: constructs Signature for the given python function.FTrr Nr)rJrwr)rJrwrEr=r@__validate_parameters__)rrrrrLrrr&r rco_posonlyargcountr!rrrrrDrFrrrZrjr'r#rGrHr$rI)rhrr;Zis_duck_functionrrZ func_codeZ pos_countZ arg_namesZ posonly_countrvZkeyword_only_countZ keyword_onlyrMr4rNZpos_default_countrBZnon_default_countZ posonly_leftrNrwrJoffsetrErr r r _signature_from_functionLs                        r&)r:r;c Cst|std|t|tjrDt|j|||d}|r@t|S|S|rtt |ddd}t|tjrtt||||dSz |j }Wnt k rYn&X|dk rt|t std||Sz |j }Wnt k rYnXt|tjrdt|j|||d}t||d}t|jd }|jtjkr(|St|j}|rN||d k sNt|f|} |j| d St|sxt|rt|||d St|rt|||d St|tjrt|j|||d}t||Sd}t|t rt!t |d } | dk rt| |||d}nJt!|d } | dk r(t| |||d}n$t!|d} | dk rLt| |||d}|dkrX|j"ddD]>} z | j#}Wnt k rYnX|rdt$|||Sqdt |j"krX|j%t&j%kr|j't&j'kr|(t&St)d|nrt|t*sXt!t |d } | dk rXzt| |||d}Wn8t)k rV}zd|}t)||W5d}~XYnX|dk rt|rpt|S|St|tj+rd|}t)|t)d|dS)zQPrivate helper function to get signature for arbitrary callable objects. z{!r} is not a callable objectr9cSs t|dS)N __signature__r~rr r r rRrSz*_signature_from_callable..rzNz1unexpected object {!r} in __signature__ attributerfrr)r;__call____new__rrz(no signature found for builtin type {!r}zno signature found for {!r}z,no signature found for builtin function {!r}z+callable {!r} is not supported by signature),rrrrrrr>r"rrr'r[r?_partialmethodr# partialmethodrrrnrBrCrwrrrrVrrr&rr!rr rryr rrr r) from_callablerrrA)r,r:r;r<rKr+rZfirst_wrapped_paramZ sig_paramsrZcallnewZinitrPZtext_sigrLr}r r r r>s                              r>c@seZdZdZdS)rz1A private marker - used in Parameter & Signature.Nrrrrr r r r rt src@seZdZdZdS)rz6Marker object for Signature.empty and Parameter.empty.Nr.r r r r rx src@s4eZdZdZdZdZdZdZddZe dd Z d S) _ParameterKindrrrcCs|jSrf)_name_rr r r __str__ sz_ParameterKind.__str__cCst|Srf)_PARAM_NAME_MAPPINGrr r r description sz_ParameterKind.descriptionN) rrrrrrrrr3rkr5r r r r r/| sr/zpositional-onlyzpositional or keywordzvariadic positionalrwzvariadic keywordc@seZdZdZdZeZeZe Z e Z e ZeZeedddZddZdd Zed d Zed d ZeddZeddZeeeedddZddZddZddZddZdS)raRepresents a parameter in a function signature. Has the following public attributes: * name : str The name of the parameter as a string. * default : object The default value for the parameter if specified. If the parameter has no default value, this attribute is set to `Parameter.empty`. * annotation The annotation for the parameter if specified. If the parameter has no annotation, this attribute is set to `Parameter.empty`. * kind : str Describes how argument values are bound to the parameter. Possible values: `Parameter.POSITIONAL_ONLY`, `Parameter.POSITIONAL_OR_KEYWORD`, `Parameter.VAR_POSITIONAL`, `Parameter.KEYWORD_ONLY`, `Parameter.VAR_KEYWORD`. )_name_kind_default _annotationr cCszt||_Wn$tk r2td|dYnX|tk rd|jttfkrdd}||jj}t|||_||_ |tkrtdt |t sdt |j }t||ddkr|ddr|jtkrd }||jj}t|t|_d |dd}|std |||_dS) Nzvalue z is not a valid Parameter.kindz({} parameters cannot have default valuesz*name is a required attribute for Parameterzname must be a str, not a {}rrrzLimplicit arguments must be passed as positional or keyword arguments, not {}z implicit{}z"{!r} is not a valid parameter name)r/r7rrrGrIrr5r8r9rrr rrisdigitrFrD isidentifierr6)rrNrwrErJr}r r r r s6   zParameter.__init__cCs t||j|jf|j|jdfS)Nr8r9)r r6r7r8r9rr r r __reduce__ s  zParameter.__reduce__cCs|d|_|d|_dS)Nr8r9r<rstater r r __setstate__ s zParameter.__setstate__cCs|jSrf)r6rr r r rN szParameter.namecCs|jSrf)r8rr r r rE szParameter.defaultcCs|jSrf)r9rr r r rJ szParameter.annotationcCs|jSrf)r7rr r r rw szParameter.kind)rNrwrJrEcCsL|tkr|j}|tkr|j}|tkr*|j}|tkr8|j}t|||||dS)z+Creates a customized copy of the Parameter.r )rr6r7r9r8r )rrNrwrJrEr r r rV szParameter.replacecCs|j}|j}|jtk r(d|t|j}|jtk rb|jtk rPd|t|j}nd|t|j}|tkrtd|}n|t krd|}|S)Nz{}: {}z{} = {}z{}={}r\r_) rwr6r9rrrWr8rUrGrI)rrw formattedr r r r3 s    zParameter.__str__cCsd|jj|S)Nz <{} "{}">rrrrr r r __repr__# szParameter.__repr__cCst|j|j|j|jfSrf)hashrNrwrJrErr r r __hash__& szParameter.__hash__cCsJ||kr dSt|tstS|j|jkoH|j|jkoH|j|jkoH|j|jkSNT)rrNotImplementedr6r7r8r9rotherr r r __eq__) s     zParameter.__eq__N)rrrrrrDrrFrrGrrHrrIrrrArr=r@rkrNrErJrwrrVr3rCrErJr r r r r s6(     rc@sheZdZdZdZddZeddZeddZed d Z d d Z d dZ ddZ ddZ ddZdS)BoundArgumentsaResult of `Signature.bind` call. Holds the mapping of arguments to the function's parameters. Has the following public attributes: * arguments : OrderedDict An ordered mutable mapping of parameters' names to arguments' values. Does not contain arguments' default values. * signature : Signature The Signature object that created this instance. * args : tuple Tuple of positional arguments values. * kwargs : dict Dict of keyword arguments values. )r _signature __weakref__cCs||_||_dSrf)rrL)rrrr r r rG szBoundArguments.__init__cCs|jSrf)rLrr r r rK szBoundArguments.signaturec Cs~g}|jjD]d\}}|jttfkr*qvz|j|}Wntk rRYqvYqX|jtkrj| |q| |qt |Srf) rLrBrKrwrIrHrrrGextendrZrn)rr'rrOrer r r r'O s    zBoundArguments.argsc Csi}d}|jjD]x\}}|sD|jttfkr4d}n||jkrDd}q|sJqz|j|}Wntk rlYqX|jtkr||q|||<q|Sr) rLrBrKrwrIrHrrupdate)rkwargsZkwargs_startedrrOrer r r rPf s&    zBoundArguments.kwargsc Cs|j}g}|jjD]x\}}z||||fWqtk r|jtk rV|j}n$|jt krfd}n|jt krvi}nYq|||fYqXqt ||_dS)zSet default values for missing arguments. For variable-positional arguments (*args) the default is an empty tuple. For variable-keyword arguments (**kwargs) the default is an empty dict. r N) rrLrBrKrZrrErrwrGrIr)rrZ new_argumentsrNrOvalr r r apply_defaults s    zBoundArguments.apply_defaultscCs2||kr dSt|tstS|j|jko0|j|jkSrF)rrKrGrrrHr r r rJ s   zBoundArguments.__eq__cCs|d|_|d|_dS)NrLrrLrr>r r r r@ s zBoundArguments.__setstate__cCs|j|jdS)NrSrSrr r r __getstate__ szBoundArguments.__getstate__cCs@g}|jD]\}}|d||qd|jjd|S)Nz{}={!r}z <{} ({})>ri)rrKrZrrrr)rr'rerOr r r rC szBoundArguments.__repr__N)rrrrrrrkrr'rPrRrJr@rTrCr r r r rK4 s   rKc@seZdZdZdZeZeZe Z d,e ddddZ e dd Z e d d Ze dd d dZeddZeddZeedddZddZddZddZddddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+ZdS)-r?aA Signature object represents the overall signature of a function. It stores a Parameter object for each parameter accepted by the function, as well as information specific to the function itself. A Signature object has the following public attributes and methods: * parameters : OrderedDict An ordered mapping of parameters' names to the corresponding Parameter objects (keyword-only arguments are in the same order as listed in `code.co_varnames`). * return_annotation : object The annotation for the return type of the function if specified. If the function has no annotation for its return type, this attribute is set to `Signature.empty`. * bind(*args, **kwargs) -> BoundArguments Creates a mapping from positional and keyword arguments to parameters. * bind_partial(*args, **kwargs) -> BoundArguments Creates a partial mapping from positional and keyword arguments to parameters (simulating 'functools.partial' behavior.) )_return_annotation _parametersNTr"c Cs|dkrt}n|rt}t}d}t|D]\}}|j} |j} | |krdd} | |j| j} t| n| |krtd}| }| ttfkr|j t kr|rd} t| nd}| |krd| } t| ||| <q*ntdd|D}t ||_ ||_dS) zConstructs Signature from the given list of Parameter objects and 'return_annotation'. All arguments are optional. NFz7wrong parameter order: {} parameter before {} parameterz-non-default argument follows default argumentTzduplicate parameter name: {!r}css|]}|j|fVqdSrfr]rgrOr r r ri sz%Signature.__init__..)rrDrjrwrNrr5rrFrErrMappingProxyTyperVrU) rrBr@r#rZtop_kindZ kind_defaultsidxrOrwrNr}r r r r sD       zSignature.__init__cCstjdtddt||S)zConstructs Signature for the given python function. Deprecated since Python 3.5, use `Signature.from_callable()`. z_inspect.Signature.from_function() is deprecated since Python 3.5, use Signature.from_callable()rr.)r0r1r2r&rhrr r r from_function s zSignature.from_functioncCstjdtddt||S)zConstructs Signature for the given builtin function. Deprecated since Python 3.5, use `Signature.from_callable()`. z^inspect.Signature.from_builtin() is deprecated since Python 3.5, use Signature.from_callable()rr.)r0r1r2r!rZr r r from_builtin s zSignature.from_builtinfollow_wrappedcCst|||dS)z3Constructs Signature for the given callable object.)r<r:)r>)rhr,r^r r r r,# szSignature.from_callablecCs|jSrf)rVrr r r rB) szSignature.parameterscCs|jSrfrUrr r r r@- szSignature.return_annotation)rBr@cCs0|tkr|j}|tkr |j}t|||dS)zCreates a customized copy of the Signature. Pass 'parameters' and/or 'return_annotation' arguments to override them in the new copy. r)rrBrCrUr )rrBr@r r r rV1 s zSignature.replacecCs8tdd|jD}dd|jD}|||jfS)Ncss|]}|jtkr|VqdSrf)rwrHrWr r r riA s z(Signature._hash_basis..cSsi|]}|jtkr|j|qSr )rwrHrNrWr r r rD s z)Signature._hash_basis..)rnrBrCr@)rr kwo_paramsr r r _hash_basis@ szSignature._hash_basiscCs(|\}}}t|}t|||fSrf)ra frozensetrCrD)rrr`r@r r r rEI s zSignature.__hash__cCs*||kr dSt|tstS||kSrF)rr?rGrarHr r r rJN s  zSignature.__eq__Frc Cst}t|j}d}t|}z t|}Wntk r z t|} Wntk rfYYqYnX| jtkrzYqn| j|kr| jt krd} | j | jd} t | d| f}YqnP| jt ks| j tk r| f}Yqn.|r| f}Yqnd} | j | jd} t | dYq Xz t|} Wn tk r:t ddYq X| jt tfkrVt dd| jtkr|g} | |t| || j<q| j|kr| jt krt dj | jdd||| j<q d} t||D]} | jt kr| } q| jtkrq| j} z|| }WnFtk rN|sJ| jtkrJ| j tkrJt dj | ddYn(X| jt krnt dj | jd||| <q|r| dk r||| j<nt dj tt|d|||S) z#Private method. Don't use directly.r zA{arg!r} parameter is positional only, but was passed as a keyword)reNz$missing a required argument: {arg!r}ztoo many positional argumentsz$multiple values for argument {arg!r}z*got an unexpected keyword argument {arg!r})rrrBrCr StopIterationrwrGrNrDrrrIrErrHrNrnrchainrr_bound_arguments_cls)rr'rPrrrBZ parameters_exZarg_valsZarg_valrOr}rCZ kwargs_paramrr r r _bindU s                  zSignature._bindcOs |||S)zGet a BoundArguments object, that maps the passed `args` and `kwargs` to the function's signature. Raises `TypeError` if the passed arguments can not be bound. rgrr'rPr r r bind szSignature.bindcOs|j||ddS)zGet a BoundArguments object, that partially maps the passed `args` and `kwargs` to the function's signature. Raises `TypeError` if the passed arguments can not be bound. Trcrhrir r r r szSignature.bind_partialcCs t|t|jfd|jifSNrU)r rnrVrCrUrr r r r= szSignature.__reduce__cCs|d|_dSrkr_r>r r r r@ szSignature.__setstate__cCsd|jj|S)Nz<{} {}>rBrr r r rC szSignature.__repr__c Csg}d}d}|jD]d}t|}|j}|tkr6d}n|rH|dd}|tkrVd}n|tkrp|rp|dd}||q|r|ddd |}|j t k rt |j }|d|7}|S)NFTrr\z({})riz -> {}) rBrCrrwrDrZrGrHrrr@rrW) rruZrender_pos_only_separatorZrender_kw_only_separatorrOrArwZrenderedZannor r r r3 s0       zSignature.__str__)N)rrrrrrrrKrfrrArrsr[r\r,rkrBr@rrVrarErJrgrjrr=r@rCr3r r r r r? s< 7     r?r]cCstj||dS)z/Get a signature object for the passed callable.r])r?r,)r,r^r r r r src Csddl}ddl}|}|jddd|jdddd d |}|j}|d \}}}z||}} WnNtk r} z0d |t | j | } t | t jd t dW5d} ~ XYnX|r|d} | }| D]} t|| }q| j t jkrt dt jd t d|jrt d |t d t| t d | j|| krxt d t| jt| drt d | jn6zt|\}}Wntk rYnXt d |t dn t t|dS)z6 Logic for inspecting an object given at command line rNr zCThe object to be analysed. It supports the 'module:qualname' syntax)helpz-dz --details store_truez9Display info about the module rather than its source code)actionrlrzFailed to import {} ({}: {}))rrrz#Can't get info for builtin modules.rz Target: {}z Origin: {}z Cached: {}z Loader: {}__path__zSubmodule search path: {}zLine: {}r)argparserArgumentParser add_argument parse_argsr partition import_modulerorr rprintrstderrexitrrLbuiltin_module_namesZdetailsr __cached__rUrrrorr)rprparserr'targetZmod_nameZ has_attrsattrsr,rrvr}partspart__rr r r _main$ s`      rr)N)N)N)F)N)r)r)r)r)r)r )T)T)T)r __author__r8disZcollections.abcr7enumimportlib.machineryrrrrrrrr rr0r#roperatorrrrglobalsZmod_dictZCOMPILER_FLAG_NAMESrKrbrcrGr rrrrrrr rr*r-r.r/r1r3r5r:r<r>r@rBrCrQrdrerxrVrrrrrrrrrrrrrrrrorrrrrrrrr,r-r7r8r3rPrSrWrZrrprsr|r~rrrrrr_fieldsrrrrrrr rrrrrrrrrrrrrrrrrrrr r(Z_WrapperDescriptorallZ_MethodWrapperrrJZ_ClassMethodWrapperrArrrrrrrrrr!r&r>rrIntEnumr/rrDrrFrrGrrHrrIr4rrKr?rrrr r r r sz            , t$ >   .N->     ]   ; < 5        0   L H   _ K k: