ࡱ> nz^RT!PNG  IHDRP^sBITO)PLTE@@@ `@` 0`@@@@``````@```` ``` @@ @` ```@ ```@@@``` @@ @```@@`p 7BtEXtSoftwaregnuplot version 3.7 patchlevel 2 on Linux 2.4.20-1-586tsc.W IDATx흋 F+K H `"opqןz׿ P˸f.trlWcWR{L(O_4*x$t~^*xy,Vx 4񹼹+pWAGRRJB#$-/ۊ^ۯ@`&tT?e~a}$p Rlu?n~#$p\R˜N+2V<tYt4 ޺h|qiKؕ)EBX =!@_e^V Դ9:/%ylr2A/Zs7`0[KLFs# ܿ`DvK& x|ZR@5;G@U]fֽͻ-qp2dpjA Y2d!$,5 TFk؍GD(<u1/0} aL L"WTA䔕؍.0\h-P|76NLA=}" QT !kz-)U5eD4>SVl93FFn N@R~  >~NH5" P0R("0/Ag`(`ߥ1 X.߽2P{2|= ܄Lw*E$zQh4;e#L@وά.pd/Nٳ[JBdi:5j_FPɈM~'7\HQ~"?lYFZ|yc[ۛ?MgXMnIl;ޛA g)3*v4*P08/pňV^V4nЄ[*fa^R!y,Kb}*i.K;tE'U?w+P"zm|ꪴbm $!>T}#EyvHd[W`T-g=E /vβABF2")půpJ"0T|>܈'ё@&0E'voooG`-{MJ5Hm%Fd܉PF6W7@ -ٜ}:B| F|Q аA' ȔZg}(T.#OXhc0*&rn pT8(!&mjaFTX ىmB]`&AAن+mFL`6 Jۀg# mk l3;1t$3 ]i[D,;8sq!_'Q)pIAJ_݈ˤx&Ppo܎/˙O>ֺkna? -vp-& bv PΛJ!Ўl mgd m#&F^.HnԋJS*<&Ki8d[ t Vr& 69#I$1xouG5n ݍsc $q~@Ż+-Yk))}@3A'l9HIH#06I 7b_%|n8A$JbЋ[OW#pQ2[2d,e qQJ5 u~-T Ц5gj@?h:bɎ{@S25 n25 ,qD L= B |\ Ðg cd@Egbs B| +b@6 BTkEd5aL-b@3"<ΥO B à{~d@mW)r Bq!sjfTq!wnm>% >!cbX;11lH {=[ } + OG<ÝW4.(f3 ".MyO& L!H#QB %P2H8f?9Iu7 d̩v8ecx$+{Ɯ9(7WוRg%^t yY R,7bM OqdQ7>?@b"ߴԕ'4-brJf̘(0 -G[űYy$D1:"%쌽5\ŶPWG[Ι#[*VmdV^ke?Dqynrͣ'HBX\?J2'=Ȑ?5>QTtD掌3jgTY=kK߾?[=j}F5Փj_^HzWϩXSMxZnoTBϩ&zZ-L*2ϹBϩ&zZ-?r) -" V-H pU:b+ǑKA+J;R 1jCMj:i=6\js|"E/CS&s|C^_5Q-rt-=rn^}it-D2=F_èZ- r>-Jy#~/H's/_#zEuy.Eƣ>h?@ 0*>IENDB`nDO)F;;PNG  IHDR(IDATxw`չ?G{oK,Y8lgBJ RHG^Zʥ{RZhZh@ !x)kYRclqr.Wq{s(AB!B9jB!\B!̵!Bh.\B!̵!Bh.ǻ( qw;v( D!us-.#s$555}s-B!H8Mdp"h[nOAAyUnvػw={.B!4`-z@`hhh2lx;J{mrɍL&s1c\.T=;;{HPڲeK!BMgydXSSSSSe˖\;=>ӧ1"Bp?k۶mIIIWVVT*J#B躄h|>?/LN \.WR<^X`9xo rB!F\ݷm{ǎ;vX{{ɓ'<O.\!BM/9v׉'"$''www~Wr#7rrrZmBM ̵hڥ.^_o+~ja ѷׂf :K?hrEx7!2kLX~߿dr\. , FB){g.6B!4}M=NǴ>}*++'h|W^=uŊK,"BhV\>{{lpWգGʵ=ڵk}+!0עRRRBPFnq:[nO~"nŋZw)((y;۷}o۽{СxB!f̵hr-0}ƍ+W$SD"H$6m:wٳgYfMnn… E"%==[n9x3gvu}-(x+B!f ă O=c=6fJy嗷m6mccc^^޸W[hɯ,YrnX(!МM#<000mQQѨ:`z{{c^ux2>u \B=8M#RT*'>F&MrxB!f/_B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.\B!̵!Bh.ǻ!TF.\w;}``d2֖Ż! d2Vk}}'|Ed:qĎ;l6wBs-BZ,ڵ g CCCk(AĻ ʹP(TSSj#9Nz]wrHTSSst:!4a-B9BP(.T^^ p8==}ڵl6C-BsZBs7pécX%%%wqGۅF8%"\.ב#GΜ9?!A**ɤR7ble˔JJD %ޭFM|Bh.bh4ZNW^^az{{{zz\.߿VVV~~~ii)F#/xp8`/vtMMM@@Bws-B  |3r)JAA#|G?D"a穧ZpP(PZB׍h4x~ӟ9rd˖-YYY3999Z;d0MNNfXr*^4[juƍK}ͭuuuJrN,WUUE"qc |hX,giiiSc``+++K,O`E襗^0#G>wFVywǽw}y+?Еy'*?l6=ӧND_ |$HZ=hoh_t}#iMMM`0j@02מ=oy–-d*Œ8{J$>?ԩoϋ[kz^(E(84~~СCdu{… #裏>zJb?SNl~O>m6333M&ӧ~m{EM )K>ӏ?}}}===͡Pb տ #%pxx#A^ԩcJW @Eكmm h4xP(FG^Nt*:2#R( BLJB!j6ND"fggLQz^hFFp8b477y<&SGssA(14l߾}ǎ/^gbO>ߦh6l>O?O>D޽{޽oyÇoڴfUVV~~3gvرf͚h!ChI$qmm-hhh0l6{ݺu˗/d2,YTb0LEnboݯnਬlHK |Zl5J^7~Xfz $%Hd2L&cXX^ BtL&Rtxb9z#q8o$\. ҷo߾nݺ ^pnr݃x<# @N;~Ç#t{ٲ| @hß~4]N8Azp8wu˫q'|RH$3glٲO?-++{׳>~8o[x1_MM7x"Bʬ[B}>xZVՊDK"W Bb Gikkc٥] N4e>y7 {6lHIIQ*Hd8JAAڎܥP(u:G@ߕ/ A8 r9(~X,Ok޽###H&hQ#.f`W*jûV_սysxr8qynCDP\KiiRT*tzOO|zj\WWd2YYYX,TvӧO;w677\ 6TTTI7;;|)G]lŢhl&prH$|>%GFrp, #s- <fP(<OϛW,b@Z b c1K;夥1D =;R@  ȕj59vTW+rBz]RV檨BB>]\fԞ={c2>x`_|Q>?8qDo !t(?MM 409rk_Y%Cz%j:;; R9rPUUUUUըעhYYY_W.]:%dTհkhmN6'F3p0t…~M7Eo bho'bҥ0עMm۶^z1^z~D6"fTcc믿-oP*س'}8퍍RT& [VVVTTl6{QZmrr4튆NBNO8R'OKI'h>x_,otK\0g}FN]xv @ `6Zdhh >$d$G W7LǪSE x<@0r,l8njj`T*F(b`L&QŸ~46mDݲlR4Ah4,U% =xq]$D",`R#[/dɒ˗OpJ?>ox |>T?JTkѴ裏ڭ[p =Lht8dFm6[ {P0>h`0*U@wf *Rݻk׮CMpdQQVD"cwbV>!J4kѴ[d ͛y<^ii)E@(bp8/ <apc c0v,2{{]Vhh())f3L|Q\fdWTTc>B!ۍ%12|`399@Cx[ne#+BRY,G} Ũak{W_y啽{N͆ >䓻+ލEV{rB~F.@$ L 9%KRRR-0zźux<v֢DMO?R Ț c뢟?mFqQs,rss }999pX"deeŻ92dNggg|>Vkl6L&xdBPE.kZ^OPFv.D"r)xBs-]nwyg˖-d… AD F躆Mj̛7oɒ%#Sʕ+^-999-y̒%K(ʻ GN8?P("&BAffl=D" JÇgddnHpl6[ccc׿q/` \* AnB3- dggkx, n8b_|q߾}ʲZ%Zo{/Jb1mmm֭5W9 ~dr ٲevΝ;/\0ɋ'O|xBS!^Wx<^wl)tu>䓭[jV/]vQ(Q%/82rFBZaE!4222݄lgdddgg;P sΙh4JR/[zb1L*x-JDX!4;w bxÆ ۶mDT+\.Nt4О|xF{zzd2H$w[~n|2,͙h4D")..u:gΜ)--#BR daM'm! 6opp0Bp8FeL&3;;{Æ ~n{29Bhl6{xH$t:n#-kBM1z@p\.WSSS___{)**|WWU󵷷ٳO? BCGhyc!Bb?ɹhj}jꪪqP(`0ؑ N3] ßHBSL$fs]]d…[gLJJJJJpK`0.[!X,R4A% xdIIεX,.r)dn%2̵!Wyyynnn[ȁÃh'@Rl… Fn;sڵimlKJ?D"Z41̵!V|X,w[WCCç~@V'%%]EfS__o`0܇^'==["L_>p/PtMXgM !X,DrײfXjjjnU_g`` vp:}-FF񚁁ǏAπ&!0Ll6[ x7(k ڏ~"CC?o}}}ǎ?bMs-B144T___RR/xd9;ꋘ}Zm,3 !  mX~NS(#OhGGYYY#kӧ/ʆWD"PhϞf٪*XX,8u8q///;f/̵!A (`($gipF"e2YT|ol6JETblkc[r2t:tձX`0\@ Vi4\B~1ፑH$>Jm-+"pTsp?Qh\.JD.BS. r8t^෿#G^x7}g-**"&F].oԩS{Wp804@ĚLZ>5U'Jz}nnnZZP(.FP8BPr|TZ@  GUn0~{ #23#NS(6=nEP/BBII A~immAyyyf,AXpPT\!ʢx7M˗'%%+;wxl67媭# >|>Jh"R9sm(joog2l6[P(ze2~$aE!tIL&/^xJ_xqu<$;aX @VJehpȉM[V]Z|AT*uCNRf@rugC.'''u]3.jvvv.]L#\Bh,`x :k/^XSSSUUuw{L>w>Tpyyp'@rHl(0hп|@`xMShNH$*jxK4s Zp;Swޛnf3x]Xl:;;L@P\B蒨Te)u\Fr]OT'1("rܔP]4&@޿s ' p Ɲh@ 1v {sBf|ȥ+lvTb0iiit:=-C1}J%FEZBL4\~ctVrbLL|zK'<;l`'kP #j{<̗$Him3n@*--B3)))_W`UP\BhH$Fm6P(ڡnaԚ _bx`@5 (s7 [7l<PP 3ptt_"׆Dk0 /57J̘t]\Bh4xf3Flx<}}}rw" `Sb)\&GiYD"^/K\D  iGZE={NȚ>cC@  w 2B\j0"h4L&1Q/,sK.,XpM:^VVW\9vozzX,Ɉo&|%>@6N@`pcx@ү4X;B s-Bt:͞?eCm[[ɗ$92Nqr8)_UTn޼7|QkTU <*#NshHhy^{_zsܯ|+̽㩩ikkR3>\˗$\=4.̵!Fp8DTx4`P"LYkfr++ KJJ$I 0XRRB0  פ x<@?  7 ɣ x^b6\Rc}>_jj*D!h*jd ᜜D22|y`;@=@Q+m+5%\,{އ~x 3_`,^z~=)p8FcSS7@'@@p;TLpݣ6$Hp Md4#JSRRxBrӧ~Z؋-˞={iqڌ PEh.  P8C4s"K eT]i!./`0^ ,|&v tF˛ F^fg`Jpk{x ضmSO=5]*رcǎ&ixM7/O/Eȯ><?xZ,qB.pO ŏ(;oJte˖׏^QQ>p```dT63gmhhhX/S(RO0G?*..˻[Ρ9s-.;vUFW^yw_z+Σ>z뭜Q~g#3B1L1I[[[^oFFƼy9, .MK`08j;LQ r`<) `3@3bqZZVrYV &h*XfMmmc֮]d2L&LP($RRRW\^RRR~~͛GUZ[EF\dop?Oc:z<-E(Qb1744reZ?f0@`@01&ANtĸ+C6!HX 0\8 EB j4ٳFQ&I҉OD"pvM,K PK}r:^&%%aM@kַo}kEqOY~}gg'466JPĉO?ɓ'O:%.'Nc @@ `]o Ǜw cD @ 0t+VK/_254l6[;3ro ZDPL0ע8ٺul&}GDO=NK#.޿L-{;VX[RR6s333o馴4Z=z@>@FMF@ @G nhhwb` Y&@4΁l6g?Yrrr~~B1D9sF\a`` Nkl6F mmm&F rFRYs-vX ѨH$# 9sfxVc2?sJrm8FdFnD" Ch B.E 8q,;;`$jR(jzA;@v2WB6^`> DF.#:"AWJe_e3tvuuL&7r0`HIIhRtz4Q}}}0^G0עiW\\zɯ|g}v[neT=7|oW''7~⩭bCCCEbk-/9].P̕,VB348c$궻@4p#8 p$ /@ߟ~|dNW\\D"`pZ"4]xر}+VDtX|Z/-Lj,Kק@BP7! :@4 mj;8_!<bj_JСC3vkMދ/_"L =FP(_Ɍ"1 r:~ÿhdff~!4Kcǎ;w[.tַ'}R). Ht:]$=#Ws@ P @Dy$хr䐱0oF.5b˛HF_tJ; .=Ci Hlqpbe躁M={>lIIɥ? -ڶm7(33szbBcE"!N*<8{hccc~~ĹU*UzzEx pdI4+xG!{ow6@c?v974aEe@L&w}wܹsΝlٲG{ݰa[o#t-D"ȷ}UOlٲe_*#Z.@rx$nlݺZxY 1Ͽ|P3Tq'}G#wbaE_O?}W\d2w}#+?쳻w~-##U]!tEF#93&99JG>32K˙Z,ƲL&SsssaayF7nUzR)Ṳ̀FH&YvpxX,&xs-zl6{忇s= ?ܻw/J?#t>O>Mn)))u BJ  (b1ˠөt l߾}0@)749ΞO?d? \.N&e\ h4ڨJT*U((J@P&;;{yǎkjln|򉡫߮[HSXxa /4(}oh@`6lWrk*-`-B%`Pp1@dz7.z@ŀ&`P('F|i@ BW s-B% "˲ٸb1 `.2T J?gDh4J>5|[nJ2 x`cJ)!4*]X,?X,~zh.±,!( BXl B!(ȿ`G|{eXdu}ABقJt6MRfs(wд_?!p(`h4u`*bh0 G" F-R#9kR(2h46.pB%zu =ٲ'/==]"|QT X g,{ -[B܅!N8nnnRc))DJP;,IM-H`}~~~VVւ/ADzz߰$ӧO+ʤ)8qZJ8pM.TT34Dg0۶ %fz>;q￿~+Wڮqr-犡kWSSS[[`0#LuP"uPztHdժU7oe˖<&?xɓ'`͚5Vz7j~ +!Pa0YYYL&j~D23J---H$eeeǏw\|AKK |e@ 4r| F ZJ8L&3''b DGCY>vQ*wt1עY-JP0mkB(A555?~ʕ^J}GկL 9rܹsgϞ]\II 949δ~!tWT܀JX3g^ 4akB(Ay^ǣR\Q(d2=C544?D, 監)144t颢" RPPr>䓴4Nwפ** F">?-B%(v5 ǻB|;a緿yd2kє۱cGooP(ζX,Nzw.]zM7]T*JtPhj~@ C@P`0X,p8Vr9ϿZX%) _y .~Eb@PBm! T(X.wW`]wݵp•+WD"tUO\eeev=mٲb\xʢP(W!*Apg kWWWf3r9FbD" )))RT"ƻ)p8V@ Z*\,2 Jd`-kl]mmɓ&RTj4x(^1LP`zrUj[smjjjjhh8}#GF]<O$-^\js-Bsf3L&'55j\׷3444l|pkUc0 cʕ-..^j^npBϝ;o{dΝhF1իWZb2 \TLƽ  n_pa߾}DV+$.d2Np8 \.WooѣG Ejj\. ϏD"fd<"… dxVB\*h42vz{{/ NOKKsss\pjkM~XNk Ng?nz55=H\k~sB!Kε>_n~7^KKeo̜\kX.\^GDΝ{w`4JJJ(Npھ>Qyk׆0^w0&H$p86nܨjoVTfaLFs\qׇhnn F0pX,xEaf>nG@@4[lille4rDt0s}94Y_ЌF+r![oǏfWVV~_9!toFFFF MII)//MII}^oV,6E?Y4J|̙X,"xJr0rdD"BPRB4b1F#=Ԓ@=wnEO$d2i"O,fv6;bm2 ht:T#kkkG/u+L}Jp8G@[D^/oT~vɼb# 1WS AA8[AڿT9rBذa`w{ܹ{W.\zjjh`!@B9GjBLJJ\MMMnllT*㛓'O .((xK,wcB*n#P(r}> Mt:]VTxC9ڕ!H9/fX> <O*gL&#hxK(px^[ `+Sfd ڥ|>\D6MA@b\P3SzHDٔ6dHXhҮ;Yb,>_ ǎ D1 (A}V'Of5iEtxht^r[[;}R "+lY:Ysm:uTMM͇~\.j?~|!766۷raEh~?n Үh"W8>=]o|'Nn޼'|sp8,I] JiiiL&<ɓ'_xᅝ;wB!*^ Amwѕe2!---^\]p8 S8QTT*d!l}D6 qůNQi4jN mؐ$UUdׂBDl^,rI9L `ՂERC/*RHil6ͦWVjBzCUUJ0MdD"VQbÆX^PtF"3gbE1%&uvv #G8NDqF9ƱcxF(.WgffNWaבRT:Cǒ6dnؐ93/jUZJ PhҬ]1/b%=iz֢N>SIII*׎RSSsɚu}xJ,f& smtiii]]]^CCCr|ڵbp@JJJvvv[Jmmm?'vH$JMMK(|fp Fo<@BIOWq8qˑj:;;ѣvx=_ /8H_Fvu[nT,dsw}?oxM%Jjkkv;J :&S!t]py}Zզ/zN>M. 0ٯf 77FՑO/smRTjoEPTzjΝ\t:n/>_usmp8O?t{{h4<`vŋ܎M3g\p`}]'l6;{+++[ZZ>}ZPOJbxpcǎ7n\n]wgs4%0&wyѣp,55UR'''ST&9 0 @hn >~:??޼y=+ w"k'IB#t:B/?i .?izEҲcǎf@_JR QRH$JOOB8A>t9TE"X,rn,BhP(:bȲBp2Sab؅ t:]jj*T쒒`0NF%%%8oPHLTDg6/^a4r^Ș#APt_GkJJJJΜ9S[[ܜh*++233g~h?Bh8d2JdޮV'Y9qQ(@tEeff޽?xMnO  ݻw+t:}Æ wu^P:&Vk*40&NWVVznwoo`l}}}_h4z^T*`& _V,kiiYДReee*[ny7O:oeee .~/766^xq˖- .T(Y'`zJM ̵ |O(t#r(fs:F1 9ÑZ$2LCNfs8`CpIO2C(D"r3Tjvv6.FcCCCCCАZ&k+LJrX`\ИLfJJȢ'䂺uuu]]]{!UWWǻxjjj:::v{YYcHSR)* }h ߿jժxɓߞ{9ZhjN:t_׊ŋ?Nl'W@4EXk_FsЬef@gg-//j/dˇ`JH$_Λ7o…{eKxƽ{>|?j[` #̵ - ~=]$%%t$\Z,#bvә<\r{*Bc룠i@>L&ĉ===A&%%%%%xr;KJJ;ox7!tȲoVgggyyd!8:s)TxBE-ZG޽vշ~{qqq$~lv즛rD"d:}?NR~iV;%/@رcbqzz,!>}zΝf"@l6ܹ3qn,B*t*vi4P(LNNz~%%6fBII\._b|;لmmgd2gujKWCů|+YYY ,jS5X.  ]D[ۙ}~cЕ\Ο?% SRR \.g0CCCnŋ<s-B/*J`R ($}b@+i |^;slccѣm&U`zFSmP H'rQ[+ںu+J^~kWKKKCCTUUUVV~{x4r555;vPbS<ϦMP\ ߵkWgggt0&.6M~IIIL&JR(&)J h[ANX\~pph4X,LvӢu @3 h`t @r9dS(SkZ)U*`A*I$'OLF&.`M\ϯcǎ۷oC[PXXtx!t5`8p|Ԕ\\\|B(}(Qܾ͛}Af4)dB:xvr}e͞Q*+áPN:=:vzv-Akj=z'?z 9fT;|oo/n8Bja 0J2''g+?ԕj(}(1T*>k׮&-q$IJP4Fu@y Tт*D2-SU*Uff.APA,P(&Uk<~ٳgv]H:nmmwBWWUU=zd2ɜ ߳xJhB!릛WN?/dg֯Ϝڸqƍ[}h `M Bp…IIIg,\p2.Bll̵`0oܸq޼yrV#\@,ˡCL&S )iiij*mG]H$D@gg`Ͽ8A0Y@]Xq\Ǐoiiq\<s-BםP(vb!!\ p8 >/8O@P()/}B smxzX"o'BZZZZ,khhP*)))#H|뇷_wݷrP($g}8D<M7݄qbP(d2bZwsBh&`MD"hŊ#ApŖ7|n:t1M6]'GO=vT/&ITn/{Iʕ+Ϝ9E>lٲx^f'==z#7|,Dh V`0h4 |>UWW7h4|xB]%̵ $EQ b6d2577744 5L&JeX J_Ns܇zhTՂm۶A2F"`0HĨsmGڴc_h׮]k)LժR.ki4Z8v;ݝm@ACCCpxT^`M &iϞ=}}}gΜ1esss \._x\.>׸{1 (fxIo<@`0m0Bʕ+rc=sݧ ᴰjȐ奥#'CB7VWWg6^hbX jrh4Z4%gtMM6xY,K qhʅ9ȃNmg{… ,`FY s%|NS2224MEEŨm6F#sm$!hqrң<1f&h|>n?NT*\ILмOOO_ti!ڄv?>Rlذaɒ%טDb6vww[V5rc,X,3fTT9+ `) Z&:!f=̵h?'Hnˈ=Xd2GD|>ULCh !x}_bzϞ=>1H,ko9SSSo[,H$sxB]1̵ $8NTfGUGpt Bwc؏~jr-ܱJKKO?tШկF3r֭[q1Fzg"}4MRUWW zNf+,,p8X!t=\ $4\. P(h4dr-? =ZyQQ{]vmRfp&oNjuZo (f+..޼y3E]0&K/?r7tӺujXVɴcǎ#Gy睛6mR(y9Px%J%cǎ]`pͯ"9r䣏>曫4bxFnh40E!33S&qܴkגBz6 E-Z6779rvP(J.Sa^?Y@:QM!ZSWݼ|DBRSSxB]=̵ Λ7/???b1 R J2KUE6t^fBۃyͭuCCCw}70&4 `0OBs@(2LV5 ^vFʨr" ̵!4ށ&J6)t 7z" G)!f0-**h!f7ҵ% EBsZ ѨgX<o%BPJ:pBh\BsA$|>_*^bjkBh.**==}#8}'řp.ӳB̵ - L& =@,|B".#&''_ BЩT݉!4`Mh^ԩSdqOKK\֬Y3Am,|oɓ'7mڄ!̵뭷:qĿp8F=fڵK.wcB9uӧ@ק]0cEꢬ۳4D5B:WOOOKKhd =FQ(x!tIAb1b8Ͽd/lh6d~ B@=kWwww{{;D"Dh钒R%bp8l6vT*\ nN*x!^/|^|x!tHNMX+@ @%~VEQk@  P(͵YBPT']0`p!tƻ(nӳ 5RL&`0 edd;Ps&@?ލF r555 T*͛_|[lJbJ$@RvDnwnnպW{Onus #Ex7!xΟ?t:0 \.L&ţFfeebEh BN+RX,ci6w;oK'u smX,oٳgvgppe)6lXdIUUUێ:w\4dY F1,_0&.C)YYYɉ;S__P(RSS/u -Dt f45 X0&>_RR'yJNNVwB B@rD"Tzè@Py)yTo}HJJĻ)r\.W,KIIIIIa CjF[B sm`ݺuz~^o6ĻqDp8o߾;#''qB8!4aM86-NXl1pxppСC@@,cEhvP(`W$)qhƦ1L\p?900PSSc6 zi6f޽{`(|h4*KW5 G(* >d@ekŋO8qE `߾}j^B!rWNNNQQQ_KK@VVL& DQs7wcBhaM8h4h4J?D"TꗆQ(RTT4x7!4>rT*áG>kfY4 WEmkNiiH$*..xKͤްaüydǥϵ ,PqTwUY[B sm)///,, 7e˖K-SP(x<^- y< |\.6>|8˓>G}{.D@ rqxKV{Z:ND 2FQJd2G@S t0B6|VD 99\#jZqObXŻ/Rl6…  eӦMc! l"Q 8!4aM &Gkk)-*..\l M&lH$c!;wBE)-)pHBh\@^occٳgv$O,:`0h6 JH$c+TJ R+ ࢊ!tq8'Nzrܹ3-)oKX!6t'v\s_W*jnj\.}}}r\ƻZBR=ࡇNq\Pǻ!4#0&DbŊo?@ :n޼y6lx~ x7!4X,^\.OJJE@@r[B3smڻw履~ 6n( 텅zeZwuW|PTTt_#Ќ+~X,a..fŻ/1 F1 W `@9@\!__T*Jv\N~źɥbX4wKB_bv{ D"h`0F `Xt>*VAkWAAbzwڵvZG\.׉' ++,-E}4 cJVv/YRSBh\,YfkkkvCt:B V5 r5kĻ/1L.ks>l0 I B(aM\999A䴶  Ns\B1o޼ǻ/ld1:}"J>&gR 񊋋x#GP D6QT.[TTj0AL&S B.;7!w EՎعxh4ri54TĻ!40$h4(BaّH$FQD"HzNhl6;mGDH$244U*u@~~>" TJB3sm~Z[[R鷾 N)///((u%fɓ'-Z닋?p  ǻ!40&`0ޮP(|>liii,lL&Yd8!p0&p8<44dXh4Z("3t:5BA(lPۃ`,&I  HwsBhfaM r|dŃUV.]tSp~__H$d#looz(q\P\@BaEEaXRTRXT@0v )))i*8+W5@( 2RH6~|mB3 sm#'HR󓓓\.JR JFA(˕J]X喔0$_J8k+ӧOgddh4ʢx7 hxxIDAT!4e0jkkZmFF]O<_ ttdǻ!40" áPY"߿_TJ$VT*E"X,wB000b1 @/\qk9B8 4M -Z@bEh60@ ''G(Nk~"P_(<.ÀJtkLIIX,>O*W*a̵6n;K$:_fy<B!0&?Ozw `04MEEBHMM]bE~~~[8|T*׿r-?n",w[B(0&.t:?t:=)))++KєJ$>/qBqMJJRT #{<\.FZP\\K~`0jڵk,X~x7 !%~``PTZ >nL&X\TTrx!sm*..&_xf^xJh4NV+++zEr77cwegg q:qDQQ-+WG9z(Ϟ={СGys-Jdrv/^dɒ/ نn.B e6m6[kkkWW`8qDggP(: Mz:էO?|7CD4td=sL]],[|8 `~Bq6q677_xqpp\GpD"$L&d2ˇtWh4 ?dm۶%''[@ w}p~~/F`ptvvVUU Vk(*(( ײ"RJ\kסC?+fkBNWXXX^^~?_ƦOٳg1ע-X,zF f9.^`@#P`Mht:]$t秤hZ:NRt:6رc޽#lܸ^{lRT$wf~y;!f5̵+''***4MRRRZZFgV]b;w<_-[,p\.W B#7F"Mbj&IR>H Ļ!?kŋ+**یԜ;wn핕Skm6ju\#7b15*"4;uvv<uɃrtKTn.Bkuuuy<^AwSJJJ7oU/VɇcBh:nqAJ -E\@~gggcc%$i|R\JNNځwrYϫ#4QT6-J`wwwKKKUUP(AgBsmB ===v}zN#и\.JUT.<:"\Pd2 7PTT-.[RRj\h<hFCN/r?zL|C222vYVVwc}>_JJJIIɇ~- i4Eq`M |>Dӑˀt:ʕ+  ^wR|w,#GFnYn?x`0u%K}Eh~xbXH$.A.dŻ!WkD"Yr~?Yz˖-û ?~E2Yrʕ+"#=#ܻw^??׮]7izm6^H$%%%hiԻ`aE%:̵̙3'N/^xbru]]] f;#kuvv]CZZڨ#կW0kllj~FAj4$\3勃< n.BE_ l*F`X,6BU曋u7l[ +++GUMNNٝ yyyqt#!ׯ ǻ!ۻ࿬&i&iBeI2쥈 nED([^iKw)]=f5Ę(ɹޜ{S7'ckȵ=+W9T*e2Cuu\Xv/?/bcc7md p)D;c2}ȑ#̐P.,넆v4!<t~;[Qa<5<<́v?~|رgΜAM \yyyDc OD ***jNFFdee544Xnݻ$QXXYyG'ze|eٳgbccn ڞ+&&AAAn@OV;w^P*uDd0FoɻHɤ/CDD@t|թS|pbq }v}EK?ZhdJNN~oi֭wueɻ?[]v%k֬-Kz뭥K~ &455YX̙3ܹsqqqBtȵ=WBBéS:V'M$H0U-M$'ߟwAhsI}qb^zj]$J&ZHkϞ=K4tOȵ=ןy攔uI& >_uc$ \e0DDeDiIJjdmMMMVVO?t;j^JLԤW(Z~q࠻c 6,$$IJpϞ=L#G:u!DFF:uꮻx"SxԩϚ}-?Y|yg2cƌRQF:u n ؞H$7n3,h4} y WDrP"*2lS^OUU SRTW+Fh" 瞩l6]1[/0ZgN:ߏdJ{wE?f0nffU+Ϟ={DԫW/䮻z&),,r`k{.oopnOOO[x@OOwGG}}}=܂ ڻwT*WZ"75~;:&6M ҥ&58z<|xmNKK3T;wZ:uԎhrssO I ՔEDDDDBCCR400jin zgm\n }{ƌ"Qb"%ppl ޼SO{eeVkXdС~7n(--~D4-[tŵS|Z`Wכ,XpY"O|}'HKK䚓3s>lBB1 :iÆ ̄ w}<ɽgΜga+ڞ`0TVVjZ`UWVVt:\ 4MIIɡCF)!jjСC|>; DZ"{p\H0fLpcFKov]__߻w)Sɞ!LJn֭Ъꢢf}8sLNp "͵(ݺukTTTmmm'OW^999[n}̅MMM/_&"gg瀀N අ\sT ^xQ.Yj󓓓!Ch$ZiVՒ%>Ĺs5q|ĉEEE?+cX̭B^^T_OFr9]LnnV׫T[AJDLL[k"##ׯgJ^_|111Ѳ_|<6/o<{Gyd̘1/{ٳg~^|Eggg1sڊ+m}nڞ+???##A"xydVVֆ .]z]wغ7VMNNx2Mo{_k93:::,,lСn#tȑ#M&Srr㠿jlld~իW߾}ϝ;W^^T*{aÆtXlvW^^n0#""D"qqquڞK32899d2oooɤVE"T*xDTRRzsJJJ\n߾}$$F"=ȉ7  ȵ=WPPPhhh}}]***w/O>Lp^uK_rr^۷ollls6#zڎ \Dt Bo455mٲk._h|}}G!ڮZDEth zWp M \^^^~~~"D(d2.{ uKYCCCnnVuuuD\n;W.lhД)Sl ={Ý;&%?tR"bbxҤI'OuKYIIɮ]JԩSƽ@ J runKȵ=T*>}=###]\\z}dddlll&Y`A||P(dVgh[15@L&`0L|>l6FD"|N>|y $ ZV.O<9,,ZGCijunKȵ=Ronnp8|>y۶mYYYeeeAAA}uttju믿 RkAG$! %qmCq>8L&:uX,޼ysNNNuuusssqqkCCÔ)S(@),,T"4mDDD"!Ѓ F`0:u*999))8j^gXUWW;**n0@s8oooH^D$*!~ ܹsw}ϔ Ff"۷ ӷo߮T*x[޴~o߾SN wrjxAQ:Q_>n7m iii)++kiiqrrݻadzY pΝ;wiBhء"" <mD,"[6\ۃhJV+bccx Xl2˛%ɨQ&L@D * Cuuu,Q&x<nm("g"[ 8;MiiZ6^7 !f1 }m7]DVjD(ɜBBBmFҥK0`w9s̫L<"%#Eiv֭[@ 5vYX,n?,X-[*$WaA;NjDK,LHH8qMΥ]fAG?z@WRyyyf͊us:.YdXӭwuٛV^LD-rwwW_,Ydܹ.]:tЛxy桳Z!Dl6[("؊F.((1bDHH… ӑkLԩSZw3f̰a,_ѣ,2dȸqlw }7%.]Z׼{_~׬YB/LD---Vb|Mˇ:f_X\\333?hrs&=KO==FZZرcRi<&Mb [7kiiٷo_ii=Ԝ9s,X^&3&ӫ&S}[1bĜ9s^x/,=馿\DDh=sU#FLcZ}nݺ\-//޵kZ^j^g*_~d23Yyy8?c9w\{kNiIIIt"ڸqŋL5???Ozxx0,_cʙ1 FqٲeVykak;ѣm͛u.\?2#˭6X,\kfbت˗[6_ٳL;#11O>l0h4 ǡCrrr,vh :kow}FE2:m4:ǎ/{7..βw}gt.\<`W.իW sG} u>6۟ea"2dȌ3ڬ{nԙ3g8̙c_ {$J5ͳ>h^y˭@ZH$7nΝW9u`ٞywKZuǚ}|>_./X9ӟOZ0֦Mzl޴iӲ|͛u/ЃH$#G(NnK.F//r܎&4D]@$'jɉhS%(tHA!ҴS(* ޹sg}}=aeիŋL&VkID~~~/޶m3)).^8&&\)ٻwoYYPZvԨQÆ l5jD_~euuŋ=<c۷o7[Yb|>aXm}nY~}vwŽz2sRz&MdVW\n.|饗FA>sGf6`ŋC1-z~ᇢ"Y._믿Y6o̙237uG1 "&NWk ՙ,?!!*SD D~D~D=OQ QE;[kDWvjDt ïk_{5˒+W8p3r .www_reXrJ\nkh$$$X1>}\r߾}93oo+Weee]ӎm+/}[T^{m\r;sK ;_~yrc.^hk??777~866k] NNN7L߅ ϟ_~ŋIltm۶""Jb?d0>>~B3,--5j "Fs_^6oTRT>>>6ٳgGMDLig|GjPPP_ãH\F~~{o,]L2 o۷oos-! ,:fB|DWDR"J$%jo2_o܉Xӂ+W/]dRQQϵ,>Dj"U;ǿIz}\ 2*q8ۦ.(^?w\s***:ޗ_e1z,+GCCÜ9sZoڵkWJJʵ6디0s=DT^^qF"j̥1wvL \_Rjdy(gGr; XcȵH]]\.W2SR*ʈ܈dn-Z*;9kN[RSSKKK-Mol +(('oٲ+^qW}׭[f[q:'//Gfrmqq1S2x`掱NZ^0-cǎqIR@p҉nI݌L&k<33fJ\\3Eɓ'k[߭8qB&Y$`'`-]6--Z۳rJLoĠAjkkd2X\ff毿ܧO,wkdjnnuuu...|>SO"9_ еjjjU*U``5&D\", ȵ]d2㏧NmA߲eKVVVUUUߟy'OnٲE.)wwD[liB^zu0 b]*J|>:_ ]h۶mzzꩲ2"Zf MTTɓ'~YV^bE||<ѣ {7n].]:qD||U+|T'\^QQc_ ]eРA~UM:555|֭[WZeYRSSb.-Xࡇ̙3u8렿ڵҌ Fk.ʲy777:fnO&I.7449;;;88غEʶmۘmTٳ穧ud*,,hjjruu nC SSSF%JF;r܁wVU*Zg= ׂSZV[t`ց2Lz> B;To;IA||||||l}B=ѣGU* >|cSNq8vJرcD$ nٹ;vٹ v\eeeMMMSSehlhhhiiunƳgDD[C7d0juqnr-MVVVv3f* Dr}5ME~Zȑ#{,*p [7llc={vg*>}:11O?,_r1cl}****233'M=F% !OnZO˔JΝ;{b&-^ܹsVAAA~eIeeebbbݟy晻ロy2iҤu̙ON:ĉ_~>%%%%yTTm/@))) `F Ǜ@LLR)vEe>hnOVVÇssscbbu򪫫v4LƲDӝ9sfӒWg$ǏEFF:X,-VVVf1KD))) mhh=vhAF 6k׮]v]x144̙ӧOsov׮] .ph&QoA>ngϞ"Ry!*냃/񍀞9 bv]w]xj/ooo:DTSSa~DSO?1s8TT?f͚'Xo>|xqqqPPSrdffӇ)ٹsԩS͛wwݻ_7[lܹsG}3K,i+wy2338^td3ftf9r$Etv),,L*7?kN{A.666J$={LM=!@||>B3qDLf~#L&SzzZV V":r3wʈ#np>}$%%QFW/LNN޼y3988U޼y~zB' <8))^9Zrqqqmn=zBHNNVTСC~A#"ww'n޼-$$'NX3{n6(M5FP(Z՚)*Zә M&^WT%%+*.>)2d2VW_}>O?Ѹq.%ZP$yyyuL"W"_[76"FոdD¬ͅ,I$^WPYVV{钁hKF+**<<<,T*5L X,rwwgzjo|r?ϟ_jS*v 横*((H$+(ȓCԫثƳ?p8G$8 -'rw'@`2,Xok{v>>;ڔQYYujrddyAGDD`);3ȵ7G~~cǦNU[[Q ׉%"\{ݤR>XcV;{W_}gBlly>裏*ڵ˜ٳgQ&IPfff τp>D"ZWTT4k֬ӧOT]]=k֬2O׭[gCΚ5k֭Vwuƍ-{f͚iGD[vUwܹYf:(XWWW]]]UUfyz]'OJ(N\SSm@"R&rAgmzjBAD ~뭷&{}Q汫+ sqRnPZWnsކ[dVs4Ƭ\J&''nF;T*<҉D&D|"eD&}c7DVק_&DDY p3a ),,rZmt"?"_"wLp3!ܐ\yMD‰mt\ pC222v-J#"" tDn1BNFQV3y{{[N&I.766*~yxx >J駟}][7CN:.--M(*UDrD~Dn78a4Zm^^P(J&2LJ[~!\Jtln\ p=JJJ233RFj" e0z幸takJrb\mn\ p=N:[D=Nr-1 rGjwZQ Q& n7܀^|EwwwMyyy9͟??0KfHJJ:yel}nwȵh4766{ϯ\"#J JIJuz]ys5KKKp8ӦM\{/QT[ld3f߿[U>$@ԛ(ر!55u„ :nСn@OZkj%U4D0 BR*Dƍ#"XYYy̙9s游899/h޼y U|7|CDoNCCLD/(@7\ pmt:]NNNBBB@*k#v!JyfGGGwwwsرcݻGf"~嗙DO8jrmcc#SF`5(..4LR*%J$ u헫ڵk;6~ѣƍtN\\}M6q8iӦXU=z4T3uBCC+W0%6rj{z_ p JKK333+**X,Uj0˱X,GGxPx!B!Guw׏źo_~YUUe4p8FٳNSYY~M6UWWϛ7\sڴi}}׮]/_f^{Ν[x1t 1V"غ9@l6[(&$$}gΜ1LСC{_O>|{;d__0Z"{z!˽̹V ,_%##ct/ȵ 555%%e„   usǺu벳 矛_xqAAAJmmmII 3,ZbŸqڷoߑ#GRSSkƍ;3  ”{5jkkB|3t+ȵkkk ìYBBBvnQ'D@F$u ___N^|* e2YllGeeerrrzzȑ#b1;tP}}}ii^!!!&69?>j(P=z?`\;v;v `0t%Cȵ i:Ith Q dmnʻNNNޣGvttw>vo蘒`e2:Ţ5,+D/XvM~嗍7 `k:EPl۶|'PDDljv-#ٺG^:I"H.^:&&f?06L߾}ɓ'|||ha;_ڨQ&Lyf[_B@NwE2!j! "l2%bX8P8x`'''ggg"2L(X& 7rBCC}=''O>{Kt`ĉ|>~jsP(|'w/3C蔖ܠc "~Dnq8m4faÆ 6K_o߾|IJJʹsAu>>Cm/׊DkxXJJJrrrjkkF#oR=Q!яDRn1*߮{ Wvpwwl}Nk:T+.tFԵ>+DyDD~Dn7*RYc۶muuuSNd(--]v-566֎1bȐ!Vzڵk r'ȵijlޜ{XFiiNG^^>aaamW-":C4([>HKK|\vC=?/XO9sϟoUY-X`ȵ`uSj;( =[}}}RR-EEڣG EN uK~UHDD[>"MjJg}?F#">V[[BD2L 0uZmMM x<T*$H4rB "ggg[_ kڠR]ȸR^R( K kD"y;dDDD[n6f___S76,IRTbXlk A={:ϛͮ'jN,nD\޶n:@O\ @ܫ״JmccV[X,&f"r!M40@#GFz{ld2LF8bD,"#~+Z69Λ7 *J,\ED&]wE-\o@0 {;V188*rOBZH"_nr-5NW__ X7~Dln@0O3f//vk#J%(MZl.v=(( {kM4i3)҈N=G`v!ѕ+WmۦR=<<;`5DLDD] @OT*+**=f8HHEHd @OWVVa// 6L*xvwp$L4CK׫꯿:--wޏ=]]]; pBKVT;#""*kv\ =WUUof4իWۺ9pCkJKK;ӧwD%D%D-DSmzhl)55M111"Ȳ$++ymCwe4FcVVVvvvKKw]$*%2-ȵ`KӧO/++ksSzzUڼyN8<>|ѣGm| B駟ݯh;#\ 6 /.6?>{[oۯ_˗ٓ'O~wl}\xo)))p8Z Vuj5(c4'֐k&Oh"м'N$%%q'O޾}#G{9[7dF(J)ʣG* VKD#R5^\ pBC=tY"hݺuGMHHuӠ[ڹsgrrrFFF>}϶Y>ׯ?Qɿ_z!B7dɒ~{Vu{P*WFF}ᇙoJë0߿ZLX`Yy]wnMjjjͭ􌋋ݻwǻHRP\ p{B۾}-KM6ٺ]`,YRVV{[%r-ȑ#~i_|ɓwߪUm:IIIǏollH$SLJnLȵ`K!!!wq}g.ϟ?q?7%t:`5\Azd ^oii9}tnnOTTTTTǻJ\ t]vmڴ{Y/QVVVSSdYh4kkk]]]]ff?hѢqyxx{sY\rm@;, <[J[~#""ƌ!>>g{²b4]\\l}ZZZ"rrrɪP B.ܹs>AZg@"$Ɍ!*]Կ9::n3]ߞz)"zG{[77|sŀx $$;m'HBwaOr-^|Ǐ[fff>zXXe /0j([7nSzΝ2L,_e7>D"G"O: lǧRV7lPVVcWͭhӦM L!3a„ ƍH֦t`V۩ Dn=\:/++*l.î]&Mz={\_jV ݸtҎ;x Bѷo{pssu liŊ ª044Ԫ$::/h{TTnS;vΎ1cFhhhDDDG7{U5 B_ =k^jsmnnvww_|wMDFt2|{l}p_ v%777)))''gذaUUJTO4>~\r%==}ǎx,b߈܈"Il}pضnMS^^w^z]e&=DDqD}::p;B-؏%KJ#GxÇwT5bXEDn:0Z.]ʒ<kʔ)111֮$:F '9r-t{FjZ(dѣG]@TMHKF=r-t{ǎ믿֯_믿FFFuTQQ#ћDn:<ȵЍzNu֚#FH$J$&#%r ̓\ ݘ^WT2a- ufCnׯ0`@~N@` @7SQ(*jͭ 2fxxxhڶo"LL$&u @7SYHIukȑ첲`Vr2Z{\ ÷~[VVuRզMbFrLoVJȵ=xԳ& Hg2F^~wX"BHBQo"r-tνï#hi4:Ֆ%O4h t|?|@U &d0epsy{K\\3鈒r$D"xn=t=Z QIai&͋'RJBL4M[n_&I.9rСC6mR*,J"1Mӧӣ._>kWe9%cD}!B =r-ܦ JںukqqqYYFD@rt: 3z@DBNNOnSrwrrrvv&""d"rso_9ε Bێ`/fn3 smQ(\ 6P]]]SSsWVVj4.+H\\\ _X,Ͷ̻c#nZ3g,_C"Fijjx>= RӧOWVV.]f hg5'1Z CSSSvvvQQŋ]]] Q__ߧO6DuD/k5tD/_nlldk)!銊֯_SO;V" :*{V#NrQ9ZN*…F)C67kX,4G(H r,}DjR|b2"G"?x"o[tsȵp8j%"-eF簾}NNNYJDI4HbGZZڙ3%55\" /oi!2L|WLHHoq%E4((ȕ'v:E׫j\T*ϟ?WMHcB!&f" &D 7r-tB(,,ܿFFƮ]D"'r)//4~~TSC:B 89n}c}Dd!@jjj*++srr;V]]]__`24zSGDoӥKg\Fo2e}!U9hqD gv a4FcccFa:h J%qwwg*455 Je7yyQ@qP\ł\!Xg r-CөT{:uĉNNN HLL>|K6mU\\|h~""jh jW͔G4(֧=r-PeeŋsrrӅB! BbqLLLhhH$b^^^3g71kz(Zhju}}}YYYnnnqq˗-ɘp*/WVVEBA9&sq']_&;l} Piii?Vxw}q|h^_]]=n8,w7Ne juiiiaa]bN d2Xrh\"̟S\| oΜ9W\qtttuuD"77r===BdrSDyD(7jĴFb@O\ `'F Q+񼂂܌x\^SSsܹ⼼<" tsstnnnRtD:j"me ,\N7tfsn Z;a2ʎ;ql*(\izy}|O=Tiiŋ ֻw'xb...SLQZ6,,L,Ue]& zeM$wgw_=+***,[ޫW/[_qkh^eee ˍJ?EEEEEED$7i-X,b)=]Ң'͎:'å/HM' r"`[薐kJ]]BP* !+rNNN...V ^o4 Nt---W\+**;BQQQnnnL%"hl#8:}` "r-u2 i+p3 tGnذͭXd0{Ç+ggg_r6777##P[[{常>}|ѣG8W\ +ԩu,@ph[cccMMMii)577\|Yџ5~~555F-JefV466tDsM>=88HArCEꢦ&FM_L.!kUJNޞ-T-3B/2R?gyf…QQQ?p8Օ --:6ifBG"jllljjRTL|ff掮2HDZVժj???ɤVz=rMmKibSH]`j[jk+9.ђBsSA|b YBПkQBA4DX\>DAg&[x3+^jVN.777̙3hϞ=/O~M\\ޠ #64z=W fb;blN.//:Nۢ6lb+ 6 pDΎlelQiM l6[/bc$kB9^}ztQ79ug|wr'G""ZtZa5rgϞh4v@ lI\ cZرcѣGPl6G,RZZ Р˫tss "YxyyyTRZUVL&c=^TODEnZ^x۶mrJs-I:"d2Ka Da,%`D0l@~X,9+ e2OM6hr4hŋ'agUl[_hX99DDMM&.Wh4b ZAFRYbRڱ._Rz%ǒ >yBB$Dow~ԯ/BBL/:w^114o޼H[_\ v^T2RUWWtFOh4M $DDTG$їh4bxРA7ƪ*BasL&Nrq-k~F^zt:^n%V+H|}}mݐO\SSSmm\.':KD X\2/ob_;zn8;wFQT ˝"AR B0ё .T*EmݐDP FPP]v^ "WWWT5T*{uN>ݯ_?www[OMM0`T*u[z'ND[7INNnEkp8z600ۛB!krLj.]v7@7{nuq={''mOǏ?qDNNNsssz>'''66688)qppزeKLLL^lQV=zќx///":qDZZږ-[ TS({jLIKK_`듳􌌌޽{Ya޽999FDte#G$'' >Ã?e˖C0՚ݫGSջvw!+++''''' yyy^^^111={DEEY߿?'';tvv&>}z˖-Gvuue)ʜ#F3%hjjjڷoɓ'KKKǏOD*j 'OfgΜ9{lNNNccզ̜}2yyy[lݻwTTfnnn@@@߾}%;w<ڮ]waܸqNNNDo߾SNmٲ%11Q"X /'uuuGQ(C5668pɓ/_f:>J={8'Nx oaϟǶn}:u*s7ozkii)[\GٺFll,sO8a)11ٔĔL6)ٸqŋh_>'gc~)s͛fYfY 0`ĉ% A˔L4)ٺuZ^^撲2"Zv/CzWKlٲ6+899=%sε, e͔8}ځ撓'Oю;%YYY̎aaaLIII Smu=?|V-Zl^{)YteM>/[d~ڲ$007??)1LMM5W۳g%''K;fe2ә###31zM6ٺ!iGiΒ%K{ֿ}Æ I 3y=111拹z 6XVca̙JHHXre{[bcc͡ұcbccϟ?o.KMM5駟믖|1cbd~!wߵWᅬݷo/li۶m&LHMM aWGmo"z~˒{ocook/^\ᤤ999-Z̙36!ƍccckjj%'ONMM `n޼>塇js -\jӪUn>>b866χs#Fp8ӧO+Jsջy={V*5@0eʔL{bh4ӣZ˗ӕJT*‘.\ܥqʔ)2hbΞ={)" 25:88ƶ6'ɘ+\SSPcy|||2f̻0qD8ǏHOOtBWWWˣEEEY}\piʔ)!^SL9u[l ccc]]]jcr- 2?< n~8== 7|OL\\\ZZڵr۷N D.\_~<^WNJJ@+Vر|F͟?˖-7ܹsΝsG}cbbɳ{;W_}[n%ڵk,Xpzω'7RmmiӾz߭`@s)Sغ!φ /_~Spk'nLttɓ'nj C ٸqc{!CmC hC=d5g-ZG  2֭nxn=''!CH$˛{Nwi"b`V^^^^^n2:sh ər-ZwރfCu0<s=::zРAcJu!cF󚚚:TWW<|;웃èQ|}}۫4j(<=rHaaecǎ/5jT7 0C}}C,B|Q̫\r-@t~y\QQ1f̘ݻwۺQ#Xnn1cN8<]lYDrС=裇b&LZzƌ1xɇbV4l_{1Ϟ=;f9@ƌc5on{<<<:\kJLL믿ʟ~g.Аh:駟sSU[[G:u_|aU8iҤ[ʹzU鉉m: n^zW\aJj{5j([7477'f͵w=<<<...^xYPC[c `2bϦ͛7TZZJD֭cg裏lnüʼn'6%&&2kO6)ٸqyu???gn ksSDDsΟ?ϔ 0`ĉukݻ)4iSuVs5s bJʈhڵ]Y6oٲemnurrzǟ9sΝkY'44)fJ9j 2OǍٱc(,,)1/mKu=̋~V-Zl^{)YteMY\n~O[1/ϔ(KMM5W۳gS8j(d^#e2߽###g5>[=))t9996l0/7bŊ۷oO(555((/\;))飏>:vF8::&%%Y [nނ EEGG[YjU}}=m޼>"s΅~gLO9/))7 lݺ̙3t/V{~mRRҪUz)'''"***2d[on֯__uժUDtܹ?x:IIIwYE{n̟??!!a֬Y_… l6{ΝV2o߾}ӦM~̙3[{>},|;wΝ+ҥKo%%%+'NLOOh, LO/x BOrxMKe5qtt8pT*mI(N8155YA#,, K.]޽{s8"b-dzh}'NxF+~}BBVݷo_KK 8x`oe;wd.o```DDD'N|($$֧ W\ `3+OHHp`` IDAT8m֩tD,7UWW'Fqd2ǫ4D6+7666773Y,_:͍%NNNRBV#"GGGL5i} nnnBy*++U*4::zJc??QF=c˖-ojj=<<˵>>>cǎeZnIV֚߅p,{544\rLJFcyy "2|6? L!"W^LIffц l:rS7n͵,Y~P+HL& /`<+WZĂ ,+0/ѣc֬,۬{1^|E3VA>SOZJ,[/Y-[zu~~U5kΟ?ok2~x9&&{;wIJ|ժUDK/[nϭ{e˖uB={ FSO=<^v7 C!777FP(jkk|M ^,3766jZ"ڿ? "PWWwȑB\j׭[T(*jݺudРA*JP|7\.èYtU|>SjYCCCNNBt={=byQ\ pvvxTCbcccccu"&:88X^w1g\{ |e\\\d23HLqqf9L&=f.^ȌLݻzoUUUUUUM0\ثW/ԩSo35-ZĔZˋV^jy* #k[뮻jL:u̙DuV1wl믿""".>KMMwC'N j/bvaMk֬9seɪUrrr,Kz-4p&?Bʕ+7cM6rف̩Je{\dɰaî1~uZdddX^.z?N:vX `ekp{A%D24\f_iSSX,N]Gc<==-Zw3]w|P(ryJJJJJ IAo5Cq4Lw߹ZMEFF>sn=Xr%Mk;Z kz5rK}u:IIID4riӦ]і|`~tA\,B!c_hZniiaf90 JVmoAK*d2>h4@ 0`32L'enpJJG}<\fyMeZ^?MMM'N¿-CK.}'v0JKKCCCxkjT*]bŖ-[.Zu(bL-@Gl@{q-466ZUg6 7l pNj2Lq1%vbJ.EGG3LI`` SRYYi0\.wޱlJWٷ̔tAnI j7xm۶Y0%%F:ךYp87Cyj"?~y[^IaÆ-]T(ޔ~GF<'5f;΋7r3f2-g%q9;;߬f1dun=@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`k =@{\ r-Zȵ`<5OL,km+8.s qߜlc)}       5}TWEAAAAAAA 듕?}+gY^^%"8ի7n$`t"}G У/\lA@6c%sݙe(~;sL,[18eJ\\{p=^uYfW7[J;z㯅cҶW,;/ʎ(-W}zZl;61 ciFkFg+>'>eQ&ZȻg6뾳/#9ΝUZ~5=@]Aw(q~f&xMoĻEIڕyv2܌2[9pv?f7E:opsz-^EZCYm\]2Oj<ƲxiV,7c8po7}f{nYoMrs,fw| )Hy6}߮A yn ҷkk}izm~/[;cfj\1M8>a}ݳ}^#뾋?>pضVǾ8vV"=I{vf}1Nݚn8=WY4B1,Cgž6n{mYYWfǷ(j#mۢ5ۘbўEZ~x}VB?+D_ݴ'Wm2+͞e=qq΅:1߅U4~euxNWh: aKY|ŐY=dՅo#y/{Lxz6߰7' /?`1)ީfiiʕh9}](iέ]qEd}r5]ڕqk3>V;c.>&Xpuzu}-<'Vx9, MqsV}?rP9oz^~<`Uf~X18_rZ$Y9žc[F|wq6m5㱓Ocn.u}qUZ?%>O[vf?oYnl>:ebvvcܓpsX^:ܜ2~r3<+\7`1|mC߿f_mmlΟ+WZa|rY^&'dϫM79l|y-+{ L㘗n6qs՜Wy9('ͦ514泈s{m;ׁmݷ#i>$M]~|ލ5A>8me<<\Em̳ MwLM>OW,(;s?j wC|^1q^IMB㘗/_eV,.Qhaa` ElNqk5~VYyp;n/.[Z=ڲ?(Sn}a}~M_b ܃ewk~x爏10ɶ^ ogwyl9I^c]U,n91}EmXg{ qfcrތsf߯)ٶ͸nss29moo/؀ ß/Oohzʳ(ZnQ~7? ̮흾l6a I⚱~fχcMmӾ_9iY:olӾlv.Sӹ>28,A}[lN] O.z_Ml{B?+oAAAAAAAA1o1ADU?QfOF}Caqާ.m*sWQ]nzyU}I|MsFo*~2>*sWQ]nzyU-PvoyEk6dۭ5a&͛'6>0lhveX6&sͥKtXJYauu5E˸(ݻn+GOZxtpq~ \8'y[P6JYUC=}•WCmfЖm|M cM|ԕm U ^ͳieעϚg-Mzj A{ W (chQui>ǐׯ'Ǐenͧϊ^$X!ۭ8E|C{'j/U7[SO|~߾6y(lh]iڗ`{%kc^G+gMdψ^D_yq3Fnf{% b4^ >k+Ks!__ d81]mlu_`9'ǫ_H|CWϚP>ťqs<-JY=\#1GYb[ܦ}ţM.+aA5,L:tyƭ.c 8g=ﺁ^WylWzqk9d/'^ >6bUs۷oOo:7q3 9^JYٟj̡0Gy-7l&usR NXmnZ9sLrMs6W- dee%ǫWXnryX<> t6_]͉6y7i& f v:dNoa "7ƍ /c}Y/_N]p6>@7Ѿn{֛>ڌ&7p3xT:ۊ]aK6u7㛁o+3 d>q1|Ɵԛ^wn ޼Hct]\k}}}j6go3٩:߿x<}>(+= ǻ,k6žh߆&}!q?~P&7/\=o.?q9ܼpz=m@,`{MϺ[-ߴ͋蟌GWc|mMq ב͋ӑ&gC_uGA.$+Ϻ_.;/.b>fnl[r3yuxϺvrIg:ؓ2k=,mCדKSΖ3Y$;rHL치Ln^T VǬPo.pyfvS*bN7θ,F. er߷Ln&7|xa_'NL.]~ ^,?uov /sq4o3u<4l6vg]?я_jk:7wIYϟ?u67{Z͋ nD|:0u܌L?T?m݋u};8r~M 7wb :u>UbӱܜNn&7/*0eLM?kpيep0~n-·ܲ|i#ӈ;1E|>lj:v;:vV.?r3y#-p sӖ}4?ps^NWr3yQf8E}//lr3An7L1}W?[n܎=Ln^D (l c#Ӂj|?<^4x&Xܼsx eߋ_\ A]ɓ㋄1ν\y'E;zh2#Knn&͋kۼ+M= _6ulsK0'/Hs>.ސ 7l>ްXp3='o֛o rfͰg?|;!\WnMl]C< Zs}Mo󛛥_3 UV>l&!tA,h9f?KyudqD|a׳dy||vbU_<+P-s+;E]}cZĬAeyɮn7s\se,cyr~; ؋8n蹹o΁6Ͱ{[k7γ]N7tl/c9rd _76)998C<|:>kC]XrLy>>ÇgϞ%方y,6SYۦ[}>|ͧ8sy:uB k _>qD܃?6.͌"}1Yw?5/_V;ž^W y?m~îuߡsuoXAi\H>O?&6Zس|Bb>_$nyG rs1n\e5bZ}Aڶ7\uɘyKm׳r(AΫ[=X,9bu?[(+ieͳ]|T:YrkW07xcb0\&O)%DgT6tyӢ H9# rsyi؟5[(cEu|MMͱf8Anb.bCLxڳ?@w7ۜbMp39֙_ 7|7!#Y[>!kGkf"_q:v7sY# ee bQ_l1dp4l+ЙǚCNy])×e9- 7xuݹmtѲLam=.wgX_UnNn&Ƭ7͋9@&oNȱ ?~|ӟ7_<9b[mrF:ujO\ME^ rsw X<2FX,ܦO[\77?s1ȽWvAr3An~9z䣏>s/ج_CA6}L5n=k9AN81wިxㅸGpe2);G 7w7nhf}Xc"p~îfܝ/t uSBΞ=;ʹ/PWO+'q< \K $Α7T-|8 7Qdž@Ύ?Ο??\Anb 2~'m+G$9ۦa9;nFq.&r3QϹswrsMwlY?%~Xnr[O1mVWW[Sߝ{0; %\JXcXK~zmqL唷q|/ģzNo[./}dJlx:v<7žh]g[ӒϞW]Uy" /XΚk}7l2Oif0OnajZg&7eު\V&d.r B<8ַoaz9?ԛUpeK\ Y KGX.c9j/+A(, N:㗈!xСCe+ѵo86 ϚH:Mf8|_qCcg̬!o{e>kb>s;_u q*f>kb,~rkt4 5 _asaK} sܐ"0VaNWY1ΕFn!ҖJ;>k k!#gX@5e>>^2hzs!_}^uA?܍\r(|Į0Λul/ʅgMi@7fYel&h 7ߎvPl;w> |ost Z 8F "usYmz5flCAlB>k/vhp'?۬r٦7}͹SOM^z%{ // ;ڛ>qɁ&ϟ'7a7s^,O8z Owͅ|Z_YxO>IE7IJYeأSܼ?!1/kkkr3m/Di3h&uVfڙדiYNi>k lmm%re@^hkXvAYw+ } p8tGasg䐆$ۿm|leCl񱷧`;6>amA:;=l*6 䶬g Q?ӑ>_n qi7'L:{@cb7QG݈XDn.+~ f mvjqm-izې gі:x`/~G| uئmoŧkފ96!86g}'&~ab@ 3 ösǁƬfg ґn޼sX6}.}_Y~|ͥ/Nɓ'c<8w;9w\njkG߀`{%;PYC?NX6݋23թkM^7}`l An&pYlBuVAm$;oK=tP*7[>v.Wl6ʎY=fLTf?EZNb|mSڸ]X*Y.u¾y,VcGL']ُeqױc.%ZWl܍fwC.xr12ӱ̽Dbl@fG~b6a2Ǔ >kb ܌"L&ކA&v-~$r3gMq3$9-cfz(+kAQ|~|7Îc& `{%tXl,뢰=XNF2+-d[UsؾVصQeJYCmͱmض/3as9M57Kc}t,cи66+as aRWr3A46p%tn5li6ko6yw|P5|Y٦Bޜrl51td[~UaXn o&jh^ >kh} W5Ak19UgҰe岳X-cώc~?[kWlqhP,8b^vӻm=p<JYlӰ?vhbGbjl_Y[;H7sԷ bfbYzmKӛn:VVo<~϶Pt#Wr3At7c%[,وmb\6movy٦^ >kb(*24SJY |oXs~.¶ͶMgYv=NY,?Nn',x|y ᄅmM=&ߑ[IJ7YeRM7l8kge7X1Fn&7D5_#,[s?naBue={ 2!oۀ)o ?y،_lWa ATt_m2}:kб lӖ'з=Tg "6oXoۧ    xoWݧ}'AAAAAAA3L_uk''/X׏x'9ٞcgAIz <x B). BޠP( BޠP( BޠP(B!oP(B!oP(F5Y___YY_^^amP*"^z#sVW)Z\0ܔ-<пB a7bҤDwem;B/$Y{NL" ɱBt$z,Z˗/9T{{{Q-bOr8]z9+˲Sd'=wmɯPQuK(ja䯔A?2_zna[#oGڗbYWW_$Y*ѲoY{N'm>˘͖( SKKI-6LzdwUJ;$tviHϩd5STϞKG\&`[#oL?Zޓ-.%/~`&oy#v;)of_l^JF(I(jANfF(Aabzd%W /pb/i6N7P>^N yF-HBri9D%)jЮSU5*P7V _QYuO%/s 9̗\5=c՗DYgWeX_r!}S f~Rcl-h>r_h!Q.js.y~?EK%GBTᮣƞUDNTZ$zdZrMi7E%ڠ -U#,ȷ^vPא.>y{j-UR(iVs_iS Ro d;4[Lmz;[` 圮銚9SЮ^:v\5Ѷh3ie?Jz5O^N!o:=H 9J"II"#]ƛ(itE^ܫHwB!oP(B!oP(Fg] ](g1oPa[GS! >lS0h;r.HOeS7w@ `++ߛ|1CS`tEՁrJ/j& Ex#k/TzIC#C+5mDCT7C3" ӈ7Ch)jgv(^IȂl8Ы,O5}E SѣR[t.T$N#rxC I* RLӑAK^W&oLGLGQ<605{?#*S| . ]hkjU*T7F`;` H |` Du~V]T?IQ?dUBe!@/̫E vQ!ӑځ|z^148ikcѦJ<ʽuM{aVKQBF9]ڷfe,>X3/4Aiśo8,g:j UTS-7t[qY}"4ݬh·j*B!oP(B!oP(B!oP( yB7( yB7( yBP AP AP AP( Bޠt/7n(;A!o45IA@vww÷~}}]Ȃ4jM'dvP^9Vtbi"ý74ѴOr0N (ZU U0/N&zrfV̒ n(䍡Ύ60}dX_쐾/a7}9HӶEY=oScOe:__¯:Q.*O emذ=\~2՗NZTKUưxCg-e?W"73QUB+ DO~Fia5 z;_y9_揍.::')f7ISت´!WU?jF!5Age)a[6*iW+t=±F}V"_Urڛ}Ai7U KA6%z:e~bTՉ"FЋBW3Bd*ނsz޾*''JE*jfIh&o 7«[jؚ QTai ] yR\tN@Փu8oqЯv~yW) BޠP( B!oP(B!oP(FD} HC}5ĬKRFT՞RU.F1ꬒ7:S5T1WVVMc7A#6uqmLJ,FۥVfKbY%o7VM:-Xװvu,FۥVfKbY%o74Bdhy#mZ1-U΋QgQS卨7D}Րŋj*R7%nhFT h QZy7RU.F1ꬒ7<>$fŘxWvr1-U΋ 28!oP(y yc2G7*J#,<|pmm-ӧOn_ZZ=F5P(F7^0agoll;w\^?w\KD;#(l# 3,ˁrH9Ő{{;vLʓ5'l sɵD=o{Ƈ^H- '_3[-ݤ)%WrY{OJq r@qYf`3k3zO 00(" Zl'e믿Tpԩf+{/g-\.QW1DP?hԔT#Y՛E՟,o҅țoyQin%"J?#.;֑ז /9sFwc?rre'UTfU@NJ%| %ѳM+E"7d7%i}0y̐/jo " ڮX⋪U K.y}#T EyUU$6Imr=O* \/B,ȯxC#JQ7r.nrrQ}0oHkN%X7: rNyC;8y75CTA(~f!~J!TE||x͊~ӥT|4l>DEfvF\E4U3"o7z%w.o%с]7sd1K>oHWoRE L7.ޯ_~ԩǏ28 `c'o·(8I8O?ꫯ.--5zg7X/\tI*nT :#5|-5aSQ̌(6/^d'o*33rQyu>PX;A짐7Xc4:LN7w01׮]+#J!o.@>) 8dmm3d>1:Hɑ6o0!'a6޸?AIH۱&) DC5TMEh+7`7XT:d^1<| ӻSآAh:I۷o%TyϦD!o,:KN,u&7tfy6j|M={vf8vXꔬD8s挜ʊS>byC:)>l9OU\@Bs4q7(p!/",Bp` o7jʢE4N8q%ͮ)m\h&eQK~m^?+QRV>F.+5uG!^bp޽JΟ?ͭo7By\zUT S6:~Gd!~7B F#ooݫL5>Ҹ+¼R걟B}C{(WZfvOoD.( FΓ5ֹq 5VT&w#u4F o4"yC ε{++U9O!oҗ/_VgQߑչ0FI>oLO]M o4"# WHߤqW7S.'2:8^F)D- F# T皋FW'Mô yQ_Pxb-}L\MP/yAQQuX__W@\g-2yB FsF=W\ƥu۲ !o7H0khoEQƥ~h,yCC*AhV._e'uȍ*ߺukfNE$B F5ՉY<u-8ԼcTҸvښT,Dh#ᗿ. A*ayAި ==tǕѣG40yW ,ys֜A:;azOG/!拒vWR,G͛/rPΜ9Cޠ7ڻtytVmEoeooOh;ʫBohH~FuAyC:)?Þw4|ټD7*t(42,ysJ#1%xC\mlΪ6ꐁd(e?Ɍ gx͓,)+tRh oqii_ /uxސ.6ymuV!HvṵrNYXKDr*]R1Dyo.= m깔*"mJO%PH&4:)}:PԲ)F5 [vVi7677B=C*q鉔r,}y[#G?e`[GZO)*xJQv?SKQ>ÇkjгgϒA0oȧE3t&:ܬ)/>8",HѫK: F*Ex %"127F?/= t:'%27zOb~64Dž[EŋA蠟2魮>}z#.y[N~j:\]LTF񭭭܋F^2?|7@Nޘ˥."ކeFוoJZZ B;줐7Zz_ *G1/хx# C#o}s nay7}ݶ(1mG?< FK7^-&ж{XV xW%o!P\LreŋZ3 o吓ޥǦ!*A{I+ȭ[M=o9sƍ!$m?1^z*эN2>K }_}ii)V/]9׼n-Bb,h9CExCT1Kk [-h7^0KO7us*yo<эK}O0R|w"짐7ھ}C(Zf6"7ZJlJnDڵZKqF.A5I`o4YRtD!o7vi5B{ݾ}['p7zȍRǏOJ o %q՞7#@SN=ob "cC FyCz( i8=^fISC u ׹d瞓ݎ9R$ (yѷK`PնrG裏b-Ӫ[~r䍡_:̚ϼĚ1O vĉ{8v|=3Oz[$yѷK[agB! ivyo/>Rg<;NME o>m{{[z+>B?FSN-lV+yFk;s7(]tmmMg"Aޠ|m]77ܹ 1//]v9y5k*̤ Yz* Wx"䍹0|VWW2y8z_9vyyyssS=da{{[dv"W\h o,LWr'j2ׯߺuk-q]eu@վϾZ 2K,!⟌766"4H(UZ'm=oh'E)HDzJV⊽R. 6ƲtxڵkBǏ=;6ɕLs$rv[7DmP6RL/ʇ>p=P{:*y#?Q=_կF4YN)|gDdafC)We|Eِ/ VYҁ :X"k~^Q F SKo;t㳋Jw#eJ^۠ܿ_9y#EW>sJDz Vy#}:,Wt9#oL(sJqȈ*exC"LyɵkN>z od… ORT߿/uA䍙qXʴ䍹B(%Bި aWÇEȟBP: 9#t,:_d{"!tQ?1NqŪ oRC!oT8'aCaQJ8Ɲ;wX0a<DXRRsƠE Q6vnFs֙1D{0ן۷oBe<䍁&ꩧ^z%7*Hy8k׮mQ:?ZGY& (䍚r!\|vG;ƪ o8~ooO:)o4Q_(u>&luʸycgggeeeyy,˖C' 7R*tj+r~ 9}㲶&VFBǑ-{{{l'RyQS>|(qi7|D?nTC._ѨSyuƽ%Ixܹm { ] mRߨ&׮]㏅18J}'I|ݻTCoHcC FSgW7e"H>O$t!9Ν;0rT[qi_ܲ m7oޔݎ'" ۳iZxɑi_|IΣrIwϝ;%ʱvQi&o/TgZ?S Xvx1YUv01{X]]' z zBJDƕᓼA(e^IDu떴2m#C"PU?zj:7Y'B o7~/J{P'";kr mm*] J5)uY̓hzg٨׿sѥHKT^ 3"rDiu ݒhMm!+iLʐ7+WQ0F@ޥ_=Nܟ!qƍ0'i=DB߄yxC4 { liA7|xxGD :y͇7N C'Qph#7 a6pUW3fK'BՆ) +++Q0oF8v?Iݠ)!Ii;%D oP`h h_)D UP9D $luM"z 9c\oR7q'xCҍ0WifkQ' &wxC )X7!̠1oM=H*@IqJqP :&di#Fr*YPCd `ߘ#G}AoHK_DR$5$yA0Q\T+3tC3 ef!o7B a68%nthU]յCz(jX[DjS] DS:y*!?wSQCtEv1YCClnn o!o7(C7riثx/Ua=E!q}#>gN\:2ojoȲ*'aNsojQƛxz)o7Cy2bF~e Jŏ`_G? ~, +A`aX9Dhfv㕫(@@ S< 3Ua?~+B x_wry9=s|wj /?S|a;^km_o{hu5=M'Wi:}tc|16u7oSڞ۶\]CwƐx6\z5`W gmgfM_gvmۡv!q{k?==cCM{v]ikWk^o߫0TpO{[9~c4;ݮ}?=fvk}럯Y?ghwvM{״]ݮVÐyYeoCٹgR \>6jLriT~Uٻadg~CQWɏL{MnQ?Eマ}V?+LdrҞkS/‚O291#b'm*'cl?+';w.}wK<>ε?UuUr+1T)fӟgoQn|iL.TOYUEyw#EgZ%ƚdiN\ū?yݦ9Kmخ]GN{rݷdرv=-Q=Xj5.;VʞL+mIb5>'{F*Uɮ}96ϫ˲sh㯞ێ=;DN)rRHd}.)VO_0ydmi2G]2Q-:OԾ~l{>'?/?aB\l&l-Ooyuikڿ^rJnstظօLPuSt{>z6흔źs&+Lx o>w1װgz)c9T_?A{9nѸc^h:m?{xld~e6[zj^> @~6xl/.9m֞7{M9K>na練wu}tI}wR&;ֹ#2p,}εt*Qʲrs Wʲpjux~e;kVB9.'0/]v.1΍-l>JaPFdCExl'd2L&gW_:L&d2L&d2L&d2L&c3VL&d2L&d2L&d2L&E d2L&d2L&d2L&Y&Z}>s&mdYͪvֱ^ə |sg5Un5.8[ B߫C=jN[]FMm+j޳t79k[;|kضs[M?mu[Q.K29/ 0gű!f^Ƨ}T1&L,09Si=Uߎٹ߼<6k)v?zo5l[ѹM4&G>cQ<3LKNMyyeQ^zl*KԨHN*a[˙LK[aa6 rLWNcT0O?'A!If"}䤿_m+:d>I29?9i2Mu_ź!ӛ7ӱT؜=Oejn#cM5۟_[Q.grvOo|"OZ_I29_9ir_2_62]l==7N^\7+`6,c:j.ˌ"?2d2L&d2L&d2L&d29XGWLk>l9 γӶ9݇b1Lsnmm>RڜNM=^{Jk6kSlsnc[_kې]yHisʻ2wrr6Ե099غŔmC[]yHisʻ2wrr6[n)ɢ6voWm,9٦CGJSޕ)SSM)ɢ6>f9Ř>e6S\˓39YfxLnr~bXl]P̔6}UUY>%xQKisNa3cnS66u)moL&d2LΓodrd4/RbH$Ұ+{7myJj~y+omM>o2TvO O6oW\vեKV.\H&x'$d]yS٧ۛ*6yJ׮]gǤ*G7ScQl;dl2erP9y758˚>j/RNNGNƴs_*T>l#%RN}ulrlseVuda_Gl߽5\Ol-}ʧN*/M.Wi2q]+e XoP&R{Q-mT*G>Ouᢚ:]o[oz+gݷ bPl_9O#eT]}A9لU9~-6Im!ľl*+o9fl}њ8vrz /('yx6m"޿&fFY}KF﹉&)V;+@~BoV;??yO=TOO9~B~KNZ<ڈc9~DN*mgM? #x/ɔ.],c(\ʶgssͻFLZ~7ImqEˏN;WIuZL[gE1?~nv=c9rױ>}ϝb[I{{9i*q"9i:?us|-d2}RעŤ[8p`>~{|ndIslocE"9iOϯM`'MNzdYnKxn1^&SNf+(bmj9dʷuʖWm+Sm=uT!&m|b%7SU݈64uscI9?dN4fm>RrnmUFϔl]#7'Au6I?Gcz,7m>8z6rh1dJ1vOV=Fϲu5Oǵ4׸cX)yy}ۭ&cms1MRNmjLZsy&cOmq^ol_YX#9sLC:Le'}tOV{w[1Oa.19ǯkh$^S쭖ޟiۼbmwl˴8vLfҖ99uII:9XٖYv;*纊+sO{ײy7}\'qn2;x3;9)VOUZ`8$a6œSSXm$^bYd$Ia/c/f1>^>I^"k(k|x ݛ[ d͋oSiL[ΚrG4Fi5z%\6*lx"zVHW64gdݙS>9$~'VoF\T9Z{?C=կ~E;ـM^˷=cehdStٺ˶eg$9ǘ1bL7yҷO?٪#jO4i>}7璻I+s>_|Ȕܴ79ٺD띦ϧmmM.qww"WR>K]wIa=Ng2=91vgnkRZUn"IK\foVk1]9ܬ;̺`-9nX5=cI7r]0Nb^yS_oi=Z\evǺ;|}~3;lOWbk-ni,Gu('ef>]yco^䴱<c6E|M|nSyT]mQYd%Su~^TKXqz(m]/2j:ti'X%[wwUogJVƶ?HI/˼lCTnkYgyk)}H%Vt_\4z7TقM*W+أG9*c)('m wKZn^k̩;'Bc. 0? 5T&Nm]c¦ZK~B=ƒSNr=*l^r5zY寙l_ku\Tۖ墰x+Xo V7mW͹:x֍wYGNPV'uN~n2Z1emg))E\}ɭF ivK-1nK -Ekd=eӥZq:n_NQ&7U֨Vu>bwǺJ)('Sɹg}Ç[. :o5~mR/l*Z^I]=:~x'r CX[,5&Qu:~.¦|_!6()VU4Þ?p{:mb5-:ּJO>hscQx&l˾ߛo)[z|N98TwZN,vڶŶ5Ȍ!bw/+-Cӹ ssm$z[f\>oEJ򮞣!^+b486~8o][bX[Uqr5W[\r_Kl2!ڦm~>q]ukr^kp׮X)O\gwCol86ǚ|4rmt?&*eY?z7d1o& |yXe7m:_7{q2F{.SzMksiN_|2xe\fr2M}cĴ}|d|7k<<*ӕ9G'^k9u1EVM0AbL<kױ*.c-]GiUSTKGz1-wy۵JflRrtL]mZrxm:g*'yYigΡUuP۬JPHXŦ2z&M>dɦBk =杴z裤xk/l-2jm[Royy11'㸆s;0sS$VyXRit+X6sc6){('!RYs.kX$7^#| z΢M\eyIrH;zΝׅeӥs[\cL2"'-]I{߻ab[=+WJ=bmy}͛Ľ疋<9]\۷os66 -"/UZdԶr'֦rnl:{9iTkm_ujoyuגA~~ꫯfu1)'cֹv\޽49I}:qU>#s[TKfX+gQ۵┩'T}mUolnm:jjU?dhݓvL/9iy9G?&}j4{Pzϔ7kkmxƗײاi+cjst}PisU^y啍Lkh׺{,}{OOZt[C~f'Sfc,s}:&6I6&+v;?w:_u]\rc5(k9)V' ]9%X3DsyJojw_C,Wʸu@}EVOm]jͽYYk痿eXsG6F9s4կ{RN*gn[}Yl|u&ԞȮcٺƾS73ӕC*UScos9LYyqPͿUFvk1rd2+C5^l|}SD}սut/kq"SNCd5>s2+OERsmr;/k;R㖦KɤXﴋ#֪.7:?z\ÏQ&siX2u1Db`v!+oT;%v('!Rh\z|1|TYK}I夞sWn7~W$Zf'Rso.}өnչ1KPmc-a})6|]DE1NS𣤌9dK$|>(bY[*}rr(k% |/>#OVgno`\5?~2UmM-)ST[8}>s\i:kZ )*'rr>[H{2UG}ܷǪct"j#;ئe~)'zujgIx4-UcjrUm=!XmVs9nT_|&G-H.阞̱6%yxxLk-߶hkir=UU87C9If~m[vޯ2Lϣu(50GZ g[CeLmme>c,W2*vgHko#/UGUݲ ($Jf*ss֑YZͮYe߶O2~>[Ƕ1;*oU5/e~UﲋR엓b&V2|]eQ믩amnc7v[C}t=W^a]q~OzC%uMr=eOx%S*+OM푪ZP2drLC71pלrrrkng9U~Z.Ir}cCme$RrXN7g&3SlmlokLfZ+?w95˪bfjVb2I%pQX\}Qnu{SC{2S/3o$x{4hy dZn=' ~MCNa)b|M-"Y8K%/7w){RN!{lnsj1MeHƐ@XЗ~M8dN~s˥SX/cWWy9˜k$ _V@vv2uYZ Ǐ{FG9IcY'yҒ)'MxL9~'i̾"wry|Mմ\k󝢜 ' Xwn(S3qKǥ饻ֶ䔯38j֛&[%/XM{=փ{a4?$ᱼ;zJP.W7yD!bk,ǥ?jT(')'ٗuC,,צ4,*ˁi2jMzN'd׍%t4׮1Qu ͯuMλɔTYarUW]J)U9mM]hKҙWI<}9Z+NU$ |'="~'+L&wmg߳d3l;϶O}"ͫE~uW.ߴS)fjZZɩ衜l+zi:H|i)rRe֜0=|d29GV=/acd2>7oFL&jԚ}S|d2L&8)VX2L&d2L&d2L&d2L&32cd2L&d2L&d2L&d2L +7]+qJ d2y>dl7gQ V׫/+E?˿=p|?C/sp(~3D%$M"oD|H${rgu{D|ѝ;wΞ={oH>?^6Nׯ_5W7СCnJZs5AZs:!M<67D|oW nH>IF.'Szqӧq*Ynv c}ñB3@r6]Zk*B_KLKru\իxpD %ngCE 1ri"e >n꡷ik^VV3pAe9y(:[p|'/O\Ns+o|Fp;7z"D*)ߩ\jwE\Mx‹Vx|Vz:|$} )S6MU˜w6x d,?e_O5;$+Gc oVt`.p"N^X4:| l-CS4`0۾ A۾=m b RDȿS~o uWA|C=Q%Јd'Alwo]av9 1ȵ_to]*4PqWT ߸1 g =O.,:w%T-RvCXI3@{l0N+-})wx8O~ReRQ9:jrOo#bKK]訠1. -.ka8xٱR*ܾ(a BGK䄲W+EE!^?"Xe*:&mw> *D:C'}q!; %,Q{kxA>. .Fbl  .[ ̂ vفk̄. cҟhv x.m?ys\ 'x[hm~C0z<(`7,%i!ᐠUr/Np}١srԦX)oyN( w`ec|J?y4>~@.Gg`?pQ|g 9% EDcg9zfswʅ}"ΉGbAKpg̫KdM('p/+ͫsiD|H7D"I$M"oD|H$D"I$M"oD|H$D"$M"oD|H$D"ߤŋ!Gs2&!5M,ٳ}'l&M7o $*dHkWۑ@!P822 ʡ{f`1d2ፖkՌ[UьTX4:f5~W7cV"ߍm{WaԸ!0UaUX07zn'Un P7kԣϣfe?n`Jc-;fҌn[U I$."I$;SQ%>ip#Eķ]i`|ehcDӸ=s =?O?4 {xK.]p&ۣ6)D޾}[> RW`*׮]_ݓ/;eυ6ؘ+/ʓ ˰}ʕ)]Xd-%vvƷ݋2fc&M|Og7nߢO>A_a@9~(mRNeX5ɘ>~c0;y$6_lRSz;ڵk%[Zw*MlםƷL7H$oLݦKkWϿS;{SyOOml|תVdap_E]]{M8!boU]e5{$S׺\n6(آ`-'BP+q0>[ d!._K"ڿzcCzvoߖf/ǦF|ߢ- Q+۟%O=X*ϊl3{RF n :y:`CJޤsyWq}1sM|--#7<`2)sokSl{j)x_):7BQ"1aM|O 0ߺuk<BTf`%}.]?&IsMD|K}o"8 AuˇC]|9ncW|;w{> `\իr \óS-3H@߽Md Q _C!#{ɼ#/DGpZ5ٳȅ#:|@fl[8~ߙ2 񍟰Q$zU0҃<{?B T>S|Dǎ;rH9dqgFrҵñX;~a-;@WAoMdK|T&B( *$q)A!Sj$O1X9|Rx;ItrQC3[wP;H7摾:cvR.joh9Ƿ1_IL(EWД`7͸ t[X’6Ҍ߂l8knE\~ Sί(°aU z('׸.Xְ 4 9oY _ÞVe#ۧB˘O:.:!ŇĄbkXv+_}ź֫]v j[B `B XAzyG`{v!U|MK.;vg̰6;|OoLC 7F|`!4?@Ƿ9e@y[94BYO߈rߐVQ欟!Aջ(ۤ̿IJ5^Eb([JķbwNTΩgoRcb ;Ι]̒S77.ߤ$3ozs7@lwk!,GTA*K#D|ұcf7yl|cdtz-F8lac+Ez4כ%)&-$w#o0(9`6,Y>8pߗwVxN֖,lI2'o-Z2{-)T'?_B:[mP=E49r$,M6*C[seV|%$Te"Dg}{1U/L3F5dHjveģ֏ kP-}eh?3ќDzQnS6"[~ ΅R~{jo]X _J0kX-ݸpR+;`,2CUhoTeD=zqj" <- yݙ72ܹs!s߂Q-xcu)p"^?"Ǐfa^C:#U6ЫsͿ&Jߠ?+_ϛo)ypQ9Ŵᅺ7&k 駟U\VX "᛽~ 6M~x7C:CDV5 pi  ̿߂' *:v(-} s?xcOf?~&?|>裇uDISw,¤.`|N&i1e 1~/~ B_jY\F Q$/sGʰ`TN$!)0wf^DM|wȢO>ٟ֝.kԦ#tr3'2^>#0W !T,&w^ \?w!8"]Sy7~ܹ_=̿+bhaGJZ ;9mjwȿX|Q<&ܥgXH حYssٳg}6rМ>aO<AKHDÉ'B3ȝR}~FMǏxb4>l_&A&.o;e;Y@6&rNL%0hn; ˞o{1~@wcۓlu{9]-Hj-}gqnXi㏿⋄tX?[ӭH=@%9𼳯/}8 yHfOy^;MnO2$5HP]KֶT~.snA6R$/ w2Vg~饗N8e:w!uU'f ǒ:/9B|Oߨ,usXɂ֏U?k s:X*e!9BnҤ[]}9H $\2Z:]057o0U>pWTTj`^{Z]k|.ߠȠ/@J5,8xÇhepX- /flҭO|g],Zg8S#ԙ3g>裊Yzɞ$ exƣ) [{H9~̊2mPٳ6k(EdgkQvfF/ҫKtNV?y@JK2M~ aX=((c(#PK+f@1^b[yM)*L| Q C[e~G&azu7"7T{ U4w]"j{<1fL5w9"(e'M}~jeLaf k72VUpiOӇ~m3 4Y|l&6Ѕ - z~7neE9|v2O,.XB֏-3)qݽ= x[TwEx{{n2?|cM UDE;AW_}uѴT(iR_[8'`bjB[&K-8+} )|Z,ז̙3 Πictv@!=eL7'߳7;P?Cz'mr8ױ2+ߗ/_C\v.Ru䠟cBPN 雊E:*~6[.{{aٰ wًYr'Cx|^ յH7"eƯU,MOZ70| 'YCjQև+SG'F&Z 7#[;wܺu YGIm* q\/@@^Zxem&#l=H~^iQ-/N;52C/Q?T4 sk~žy>z'6U[ !Bs㷀A7y~2f@> 2 ў_Cs~?m?@ܹs>;#j_Rv1B줌?sh}]dU4?e0-.-cStV[BoS:!unj\CH"+vN|߻h;j76@`ZmG|X#kǬiU#'B,wNZгiXKB? M|- @v!N- $1tzYT@{0=)/\pԩInR#&Z"s,EM @q(=v*gʼ m^XG AP$! M%N4k*TPöB%y ;x!{^6V/d>4){OvѶ(jj9QXP2X I bЀQ~wɂ 53ۛzv>Vuַ% ķ`ӂC]xq:zJ 'Q߳̿!Qf>EazP QeӶs 7g|\s&~kmML|g`?,|My#|#%*wfP۷o#acY"a{fˑ3m."$]A$ޓ&[¾[>;lV#v:=B*{DDw믰r @qnD/Hs!¼SX"' ˖ nU{wF,^BUoWU ÙC'A%^zS64_vZ|? e+"|O8s8Yvt|lU \S|oRג`~W'o&I${ffc97La˗ec{qwiܞƌ9Y5fuF-o,!M|ߝlhk$ij ?~n˄kH$׃D"1~I͛7˿F"Ƙ={v%$A^$M"oD|H$D"$&oD|H$D"$&H7D|H$D"M n<A `!B+Ay F3&Ax}[Ena#`Q9:3" A` CH AJ$ 8f!$h  ɞI>26xɾ?~J~TZUj3Po q[5qf y!;ボ9οe>Ok$9PE,[߅i_+M??o}6_<(Y*/ \72o ':ϖ~C__sI]vGG+ b|exnWB߿ׯ\t=v9>imm}ì.\H}aۜylpYO}lz>ދJ=m;о|m/3=zٝt+z|.n>i}68-.|-i~*=ǽdc]Լc=s-3t˝%;q}G-7v9*A7=jx/2. uA lwe^$]_[;W6ײmߙ.ۜAem+JXM~+KS..w\͟ {/ϛG4LoˇIz^*_ʥ Dc-QL}γm1ͣ~/~qx谨ߤXׇ.~IKKvuէk7k{B0w*;qfM q T@|| PRZ ܺkr]{c8C{>WׯgZ={=[כu>ikQ^ ~5t_ׅez+{l=۪t}:{J=w<]OQkX_n^Vm5nV.@90{}a>Uu@غ.t[׭mW3t=K~a~:ɫØb[&l{~zOag W)_W i^wP}}OXXOo޾3-}g_}Uvk3:@풠t0Dmw,|oH& ٺo10h;Я;/=W  _T?(DG7Li t -*=M=Qub)I:O!:,:y\y |z1S|BACibHǓ+-:߱Ji|B=vw`^f{'Koi|;E+S?v_;|Ow~\zpc\Ge p' ^:؛}\ۧq~?]&6q"E@%nl7Ax2Owk7L9Ϣ/4gLG9aQ׷+?]?}gAM)OTyVnyS0y8C |+ w@`}ؘ'e-I"O[ؽ^zccu#Kwnxtvv:αcǜs΁ax ߎTc7euo#GZ[[qK︤8t6y<ߞ+3Ҙ::o] Ͽվc:g0\;؁_WR2_'@qcüzLckLP_zg~۱uy/ULe|L߁r]_ ںu;Büt}Gz~:L4fۂheSd~st_`|y5sL|ۏwo8q_\gܽ{AU+P}~د?;~ V=嵹3wvYch[qUE+a0?|[v~Y0.oAq>3EXY`?#߾~lr-xo&:u 2Ià-^._I]:ø8x3k,^xO e=W!JvlonK\W;I9?zrg:;AuLoH,nrV^=z&U_ ϣf\j_of^ct͋u{`VR;-?̛'|Ç; ,p11IۇUUקVf:_~c.c^q.,Af S } [.x … $P6.N76=m6lbdr |g[\v;sLA@XcA6x_=X6_:k;;vݺuԩS6P4;L}lWSc޾3ULuuwvg|D1c8{EtX^jB ;?<|e:,oеI^;OXw͝;_7ntXtkN81bc*嘳(V(+p\| ?ީu߽{7*d*uG/8Ų\eر6[:l۶mF99Clzc^L4ɩv=`gӦM(f$toONoo/g"& YxW;zhg(cnذۍqlgToCRl\r2d@ ʺƖ|>Kg=o,1¿;s FdaSm-?T%a͛7;3fp:;;QCgѢE(tX>ܮxZrP:67Yf a r=r@(և+81ݺu e+= UVŋQ<o)S|k@ߕ[OcGww&ӄ?pEj |nA0y۽c</ay+G` oo|aKu+Y͕*W>fرc^:,zFے [[m1OH>\p gԨQ1B[[Iۖ׿0o-a=vXns+sVRhbH+eחcт3]nwLu*#:rkw"|̦N,]z ˡ݉C{{>:,C;,.1|*Y14_r"Ucss +|ٳ>~1â-qNoWȑ#hWxq}sDB̙3uցGl6Ib̙EQ5}Sa)t#$|&G3X|;9}t76 >|#}cW]zclc ^cu|78ݻ".$? n?XŌۼrݻmĺqY_l?6{:¬^|Lۡq)מcywk׮!ρU} .yp?  y֒ }O`5}B㥱+H'WۗX16nOpvljl%WPwtO tXuZrxoc-96hUU100RMl2gz(ȓdrgO6:r}f3fpN> k(%'  mB Zےx3oE??tX>=.bΓHtbWұo>w@SSs! yxЂCvm8!O2fd]X0W 4g6Y1awtR?gΜJ'Շ,k$_l7^?xFiGlp؎m}>zEc:t'C\zچw)gt.^~~Oma@t0gGC3nS[D9۪t[tWx~G}3׳b1 ՍlyﭼWg ~ѣ4]ZKߏߗi^Q^W |矯^ڵ4s*v8kT0oOۚ, kzFua|8QUQ_8|7 峚/?7Ӭߏ_T JѯzDuՏbqOUc^$QVMacÀb֪_*uz3 eGFiz%Wxƞ7o*t|J+shLl v)Sd>UAv=G{}v-vLlKZjQ6> ڦIXqŅ'CK$a8sCLי㘽y<@C_M; +y+y< ,w\py+y1[Nb$+b=퇆z?hRK{.1 N0s}(= o.In Ԅq~7Ip fE.RVTIVN)IJ}$2MpVrCRgʳ2夨g( ?d0녟4)4'}(ԖAyD\ZK>9-"'w`C_DLOPPNJ,ZpNI+YI*1mh[j-̲4ij5e:jroVW̋ɛHb^Xki9IwN)2&(#iRF]h_DFU ]v3ZцZ_nvO.Dz:9(I>y7IE3 z ' S`ۥ&> ĴڿIa-6iHJeα$Gd} UmsR1/c!71A(9"o+L4lL$'Mg 43E k=_Փ|I*2\9i&1 rjOz>˴gS1 q+}'Z2%>a$|eQʧ'!=&n $c34%> ,H?$SNq6%Yj4et|rލdKK(_6J^Ž Nd$hL\"I{2=7_2 Hf~r?xL\]O<4H\08 I:MƔL mfgr;wH qS} t沪“'O:;;ۏ;v9ppLmˑ?7Ai69"}A$9)ڤޮ3e#cF$Ձ---6/m͛毽Z+!烓㤬omS(9F&kJ⁓Yҗf<'DNp[WIjwbi 8 NBIpRҶԘؓGJ_%?`> /MgnpN'jI%Mi[F'!Op]/!׉-b,zot𘩶&\*mAq눊hSP,vOix0_̈]f' 7Y}"qIRQ5k /|(&Yp;uCk]]/iL>Hyp$0$ɓw#μuի=bZ~ o$,$,;29Ko9]sy򍽆z%(nԟI;=t,Xݍ\"f_olK`Eڔ QtػT$>I Vz{{el9JϩSh… (ecIyjm㞞U{WN0Wf?D^uR>v̙3Ϝ9!$E zIږJF'p!Z"H gݺuSNmkkC.zRƌ rҮݞdx{R-&qɊ]sOՐ7nDUY~ɈŧIi# NOq7hooGN㯦fE {aكb Ih.7NܼysܸqǏϋuyHOwwwUUՎ;!d\6|{N%=MMM߲e =Kz555p2.y9s,YS[z޽;}۷@ɸt8?~СgF9$ɑ#G>|'cI3f޽( p2K1q%'O?p$Y]!Xƹs7n@d ;q#FHk׮|@ EabI4&%jC~I[J;$d$mۄ#G<<*D|2iҤjɀ6mڄ'_z۷ɂ3g, =x 'IΞ=sϭ]p2$9|˱3${3朤rʕ-$ٜ H'ݠ'N‚dS]]}MH9/-'I۶mC$.]cIZ[/?5jF,! ]ˌԞ|^lsu$=zɓQn HkkƖ$/_6l;NRxK*~7֊+3$yEf8I{!~$y'&L$Nc[~d=W^A$y VlMH;7-'݉#8xCIqFyr᤼b__m_z I;wN<(IpC#'mSI07=Yǭˮa|ף$Ara1s]B?拓Rg=*m=:L0$=)F&,^Tz^U\+W 2GyĚ(Sg#d"!Z5,KIXsmE=u,'mRqd3fzrj3q! ߸'ɓɓ'ףTAbI#$$===/_;HmVW*đ.^]vAbgk̚5tnv%* ! 'u8,9y*M W_AI'OJgO%pĉ#F7!f~(dpD4}=su֡Pdφ9s88Y@NxvJ*8'X5,ǍGiywNd49Z[[_\Μ93x`h;w$S>d!UzzHǓ\R[^z̙H':tܹsdW>@\w0+8vT/_>iҤӧ;E-Ç߾}{ǎDѫW-:%6nCC9WLY"Jpw;`tEsLfqy-3zpݻTZnݢDB$I_~pE\ ]})]w}ڵk(IKtX.NPkp>~G"DKJܹs[\mK}hwĉ#G?~<<*㠧ƒu eɌK$$~dR>Psڵ&LFoy d'S甘b'q#TR-Jգd5P&3ƭs$_$Ulc-QO?ά{g_}U=%؊'MD9:Fo,I S}Kdv'Ֆk׮}Q[V '*677=|pUFsnRmutpfcc1c^z%9'3$8O<ٳA r$T'sޙ3g,_Qζ+ђJ81]/^z,!~۾}ÇoܸAD$= d o^Ο?޽~ܸqTsR"ZWR9сX r…jLI<'s<*?|+V [mbm˃O>o޼͛7SN6޽{'Rݻw=e˖9sƶmۨDd),Xɓ'_|yܹX'K)O<ٺu+ՓzMM Ѳʕ+'Y'lܸ/F9X}}}bIӎmii ȓ'$Q6KIFlUUj夑w*e˖=͛ȍyXXD?T'BM3f>}YQo,I sB!Cs'9KlW"*ړo]>ߞL%i]U ND7nܸCU3)2ܹs¥w9|-[8@̲Ơ!6} pOٿ9scǎkI-W.]ʛ, NqׂrJqݕ۷ϝ;cٵN1+WRU1'7-X !i4iOAk*pW9ٸq#mPIC~%Vn[PXSzܡCi;*ja(7'!1\^vpͼT ?~ڴiǏ/uJtJDl̺2MNBR[N:u@MI 55j19WdL&PK0t t$SGzF ЃU˻m}J"ӳb! ÇK(5TRHY aEJ*'ht>ьH)&Rt:!]{QPްpl鹝Ћ~J $lٲիWS'0E "F (SLVs̡xB3J'Ep~Z1(kfS\r$gpR$ mʕT g$k<|-7믯\b:Lz}60MG7Aϥ @7߀ 5&P~W:"D*<{DN+zz:xA]RDwPQl):bJ{&7nUt8 )ܾ}n ={cz>-'$K4kuuTttGIk&5ށ(JiOK)رcz-*TM3,idܹSޤ? bKt}Pӭ9tH8 )Hdz|Khq^*Lys.YD"-(IlAp,z__,2K4@L*،>$N8pZB*e 8jqꕸud}C#G5>ozHH(}}}$8 NC_#m,I$$1l % Tvmmmܹ#cIB daۓ:ӻ#cIB daۓ ] ۚ % @ $NB p'!Hz0`!@}ac~qf*j GP)d @x}mU-$ƷX$Q臑eY]}9{Ͻf9k=śyG=O=y+=m_|x,g^=_w{g)ttɖ[.|4~w˾4߼;46W}6:6Wؿ[ޞ/eg˝;w 1#c``r 2I}}}޻k0::Iз,7nqu_c'p^r>'}_֏cq&^][m )=TvTdbb߷I־?~Ή'Mvv>}* ؞|pd>|8>M3gBM/{i|rfa`߃D٫=u|籶]9Nu˭uzM*Ww}F3>4i۰4A~G\GZ΢VWrPq~hr:'ry^.tA9Dol0{=e+X{Ƶk78lF/7-]߁V{y}_Ճ|L߹nԲɢ1} TthBuFaz?M3{ʚkr^6;{Qy4tE{Z⤹w<8gqHͭMaM4>+riJo% 7*_d1n Ov [&n>Eʿwt]˫,N[8N{6.hzsqњA\r'ЋUOϿT}߄崸4=vFz1;{nEzѵ\ɿvlkJtA9nj:*]mV]OmZ`jՋv~-nTFV/}Y{XcԡAz=o0;u=mHP'VnHuDPg/;[~QD9*IAe;[W꾖+|rmrvtP=>,}8}Q7&@%m[T7a@Q]ռ:&3lNmV~c_uZ&^ Ks6w\ۼ?Asj{i>rDQTzҋU]cl?z:>e};jpJazQ˚k[ωҋn|7J/'kE}QGmSspk6#n??Sc'Jma~o{winQ{Hgk9N_*xq}V&mQmkM4 y5((IE-c6}ߵ"myjbf3N#jm<'+M4f {1N_pRY~jzѶ/iIEm =(hh5׋v:4z]}Їu]ԋn{n-Xty6c4jJc=hqlúwq/qx{7K<ЉvzA ^2P +-ga_BQzͬ_lc^(To+C4?ji]kzv&bIS{붽 tczA:]Tװ"y;,m ]O]˚ڥ'YzĬOtC]Q0{[ns:֏^mk5VN9QiPgk>TNRꚧ~R;UEuV%zѶծ4麔|;zzթaipm-7Ջh@m11& ݶڀkf}{[vbTEm ]_$)6v/PϵUAwP;Rӧ7Uw ʿW_(Io@5}׶.εڧ\ yVc^(TL 4 :L ;{84.x~< ;^oo{b\ndeI/Vzh_&=M^Ŵ~$ 5׶gʿE j1 >_c |> k@|^OQ>rVvoppG7%zQ筬^u766o߾}6ǎ3z}=@/"kՋ:ڏ,:+őo޽696y~ڸ"v[i7Wױ2lzmi D7zܨ?1H9vN#"j'B/ЋF]n|I~n_ϱc~XE>cO꟠vl_/uuo~JiLu:~5MTQT7>:sPDOžBWCg:^Z*@f4 >|_1"b9螧󬩍Mt9lն3v|}]ӵ7b5^u_cۺu^綾^Zָow =S~c_iE&IԩSq(o@vo5z[~=|3)vc>j6-]qH#v͝;044رûq1T\ Ξ=ۆVB1e=ow}yBLOok '57sq7\Ffcu'n?eh^͙3OX`vܶ[Q1nJ!u[Zq!>lpBXm/|c _CCoFu㶹ݸq=O=~8J͓q4vLw/]c*$7?/w۷o8H}a -y_RX9&k/^6ի+VЋ;Ԙp7"5n\b\_]m'D(W>/^dyz`/E}W%>o ^,vuMW I`4W1Ufoҥ~;.\Пcgʕӽ^{p|+: ڵk fΜ})lK(t&S᱂cWE+.]dӬ}ih(Ο?sj߾}wv5 )ErΝ;$> |^{ ,WS+0kuە _>>Cz w kjbgǽ0?_3CyֺG>@p#yx ǀ7{i6kы ?uX?6k^d?.bCj~Fo["!e"C>@)Ν;緡Y^|En}^K z1{`XM5'O9+x76:~|E>@c%Vbp  xnW~_~-[xmmmg+VxKU;|vf3_|M0]a1Ћ./1,|^^/{衇{.}+YՋAqֹWcC_Tݻw_sڪ|l:u/mdG  <ٳ=uToX6w"ƹymٿ.ay67E شi]_̓gHIL]6sls^D6"P8pܹޚ5kJ6*x^'egXk f`dd[rf:'kgh,~_y3f.^)E%lKhq~=rIHQ;Kء<%#x===v=|˼un/db"cyاZe5 >3x\G牯OTg/N<~xr}R\5|d1ϟ/|~<MD>@<?^Gًu/j'mkwy9Wmr#4رc޽k#Q/&~5/h駟-Z7At @eq}!dچhc{FtsβeFM/%KsU@/˗%KzcK~]cc%k_l׾[lC-!%0Vdm;Τo?)3X5<^6S|zۦ;3Y1)ο}ov4qZۋ׮]6lp*?xO>yӽ;B^ӺiXc]:O"qx9I^erY|Y:[U}WW_uJֹV5i/՚5[Ӝj'Xnqv_1od}۵9l2~t'?;뜽pBE܍d_'=nб kN3ML7ކzDX p9'͛緿,n{xxߨg #~>m>t:\gntDg?o;2x}85{7Ͳ}vﭷo﫾qRhƌ6y :q4u}*vp.]=È醽kLbzOȱD^Tx1j߱?1gho;83@@1L|jMטAyKfٌq{}l#㮣}g6l#9|\t׉>#|XCy[c{@Rqw`=Ȳi&?=z~1Qg 1>:ӦMΝ;_+pX|mz{Qu6KC&V z#6}+VN-_[v_.^|_+#}8Y[[z1}5W .9&^|_}2AH.o{Vǻܥ&~l֭<Ør }\TXXl9v#G0v|M+*w 5Ƈyͱ_䋯hwBykP+PM{+Yd;W\ɠC_}4/ձСC8I֟<&楗^c7P>yj1Ocb|{c|Xg---~y\:O8͍>ۉ| NC/6n*Q`ڵkf2裏—XGb!X?Ν;X}{Z#+V෍ m[B@/63]:'nzgQ+_+Iˣ:W.hD !_~eWZ>Ŧp|Ћ@\ӧO'Y nxA{?}iú:[n]̹4b 5^Ћ͛*7<-_` ]ֻ{y%Ǐ:vݱc""Hlذ;t_a~,4ۈi+k:r[~j5YpCĶ<ݻ1fXq{c'&&8"ޏ{ O}szsoz#O؋ы:yl#=VB}Txa;pmbqC<8.mģGK`/߷mm/U׷c2; Xkiyl#{ \;xZa;ߏؖM}i%1O,Gdttt`iz$1Xq[3xn?59 [Eygi+X?q{ar>W"COW?@Ws@X?q?Yb-zTv9"܎o_׀aa6)f0V_^&gXo@"օW3p^D"1V>F|Oӵoy@Vf1:x cC"YgsVj Z%l2+q t(lyS?gW_ȇ V6 ly)kqmn)+wU\~oN8IW=~ :l7]+[޵ܻyڋW\ߛMLLx7nk9VzzzzϜ9>|~wZ!HzۿTr ThBj 4900p `_a__]zqxx.",uc#(hL @^txmfp Vrxl#6޴)3TԩSm3_M:2YN Fi@ 4!8 ȃe``ʕ+H9=99IŹ]"5{ZxyHS9-+_PRY̌ܨS=(p'Z mؕU$@]D*lf&&&|[N6 N8aN Ct2]d#ɩ~NrK^vJ?ُd9sDzA; 3_*,l,}#y s %m:Α$QVAFwA:. b ی SWMIjmy؂&Jd}]e^Mf=%;}J" "$VHZ9Zi$JYOIfPZ?' IǥѮVV: "'j^~!%D)-mVAw_Ae[r^6.&OxlQDSyk"NdUy,͝5_Mik SEOȣ0d!9-7KΔ0o@^TN.ESy#@c9]:&im{eQ4Bb?Ui'([}Iyif Ϥ좓A6Se[Tq8]aw"q8mWe6鸱 N LF`b>S#%ژ19mWbfqεrLcBTo9.R+*}YT5ubq K+.\^?5Tiى : }aW4WLsmiLC>2dtIul7m^ԲF*01{"ۻ"$2 N/'8v@۰4$+'i:S4ʹĶNm(}%Ip1PJ4̙JH.MFm[I|5+<׶#ަ_-0 rZJxRƞ49.'9A&r&J2_M khJ;î"|daO*o! UUpX'U N-IC \G"'.@X1ae,ٖdvۉvr7Ӹ01')1ʾA"wMb&'~i2"<&W;Kim/fqb6~0Zh!Ü^zZث9i1{雸HLlNN'2_L*]ۗiEmЯdMBiȞUx6"e]KKy:Z*&H@FK1 p:9iz'N7}tU/UkA爽k#6/f Kdt` p` /k~{$ w3aH0MNB tv8-Kr#L1 F NөYA:%makA-ݐ (2 Nׁ2;Nߺukll6n߾M} :Hǎ6>>}>+ !vMbO###{ +m"t6{=~_"·tZqڔFv!5doB7!B"(t5mڔ-ANS< ɉ'&&Xnۭ-No-BipӞdvL_g O+⣦ ˙NNsw<'''/tf/tG?#FGGeʊI+2ǖJWX(Q;f3#}Psؗ;ּӴ100 :H,pb6#V[C 8 NsUFz)}K9-?A [S"\%S!qپGuKdڐPٶoG??Sϝ;r5p:9NK4qRO3;*\+1Ow zNōH  ?lwtts9HWMXis͚5kϞ=Ċc4em=pZ*rCNuZئ=-6ig]8B6UT:[r…z`TlNdMɊ$=]T:uJ,j<Q2TIzhI<:Hmje R4ٵkܹs رƍt:+U ٳgb^ji32~;tP08b)D)]duwLW;E6&''43LYMnRWzjoo9s>ӺapۄHUbQ0T۲!p:Y]lb3#2"N-Hj/ 6wvv:s^T&3 Km{ۑ'rl;˵/u82.!CCCҝUVsx<ӟD_v)te@"^zZvzR7qi.!D11'W^bŊK~o]&߶y"nOn4lt }ŋYzQOWޞvB#}O?}̙%Cf9m$NoNCѼxxJҥKvVN!8]I E3Šcx\r>r!Ͳ ըp2pZquV!s/"ִ N'$D~oDH"rI*NwӶGUQ9ݬPn޼wuu5ep$*Ը9s& ipRO}-[> R~x_$268 i~s?>… etww#6!W^={vWWϧvd8m$tell駟^ho~\`iHC*?)%zZ&%e[n\BK8GW={ΡtyE"v܊JꫯV,YDroƌE&t3ARR[Wƶ4hVZrN_0V/\`f^ڞK/M~M w53/8E8*6v"%#)w'.ʪ RՌnmm##4ôAi;T|H^OLLlܸq{7 w]2_W_}u޼y1:ݜ,(/mX'肦͗K.ϟG!POK1д!=ZtFԩS{MVcM6_~ʔ)?|nֻ)mO=*$~-3jڴiΝCfɏ"-_j3PY8Mzȑۙp:_c WX1u˗]>ŋGFt$ U3ĉ .lkk{?pիWt__ߙ3g4}U:*ښ6cZs#eHtNȑ#r=-{wnZ###k֬/~јSp6»* ͇P]S*\C&siG&ӉHt_51W_}饗zLN7=Ml 0.+O֯566zK'&&dN,tR֯ED---dx#i!ӛ G?q %oOGN| ,!-ǑB3-[n%݌AυMĜa*p|ꫯYTNFepj{ȍsZhMUt힞jC_x$hOBkْ˗/G?B?iɲ%q}Yْcǎ?3ӖXK&:j@ٳg…gϞEnA299ўvDfp²e1>wK__U̩ EÑӧO[N O~d頺sgH6ol!tsm޶]{nݺn:4Qׯӫ1cP]"ccc>ݻz:Rą>::=11qQ_"vQOȄo ȁz:e;g| tũoݺK543A zj!6zUGDtj8MhYK/z _^3hkkNY, MD{t*m;АDjV1Y;KGGtGL9K5.11_._,ܫb&-Z4{l]v-ip2>>Neo9s 1'RSKKPip"l/cqMK=]hiiNݎN)eujI;v4]E*3+Tр QU48/N /h1t^8-\p:,2zF?UaٌyNUOK빃t.8ߏ08Nt|5U#Py߾}Ԇk Si@FLF̦0Qݗe˖ NTkve-5&yG|K.m%8N˒B͎ڥlNˆ Ν;1NAu=-i8 fDMJҰҋzA= NC 48 4." AE= !p@ipNAPzQOC i F= A= NC (ð!ި!4NΜBa{"Hp!ׯS8qvok-=wvF%l71aH|+WP/mvwwOLLlܸqԗ8pN \Oۜ>sÇiw=KݰzɮddE ;M ԌG= @ijN&2h_ IMBN @iNC p!8 @iNC p!8 @iRwNOGp2pjV2( &/ 00DArialgsRomantt4 0DTimes New Romantt4 0 DWingdingsRomantt4 00DTahomagsRomantt4 0@ .  @n?" dd@  @@`` X$JA      !!!# %&'()*+,-/0123456789:;<=>?@ABCDEFGHIJKLMNOob$z^RT!b$O)F;;L2$gD({@Y&P*2$%HJ@dMtUPPn2$+Ay BϾ2$}ac~qf*@ 0AA@8w~!I ʚ;'  oApproach: Linked Stack The problem: fixed stacks Overflow vs. wasted space Limits thread numbers The solution: linked stacks Allocate space as needed Compiler analysis Add runtime checkpoints Guarantee enough space until next check t0,A0,A Approach: Linked StackiParameters MaxPath MinChunk Steps Break cycles Trace back Special Cases Function pointers External calls  ! !, OApproach: SchedulingAdvantages of event-based scheduling Tailored for applications With event handlers Events provide two important pieces of information for scheduling Whether a process is close to completion Whether a system is overloaded l%Z.ZBZHZZ%.BH)Approach: Scheduling - The Blocking GraphtThread-based View applications as sequence of stages, separated by blocking calls Analogous to event-based scheduler#Approach: Resource-aware SchedulingTrack resources used along BG edges Memory, file descriptors, CPU Predict future from the past Algorithm Increase use when underutilized Decrease use near saturation Advantages Operate near the knee w/o thrashing Automatic admission control $ZEZ=Z Z@ZZ$E=  @     %Experiment: Threading MicrobenchmarksSMP, two 2.4 GHz Xeon processors 1 GB memory two 10 K RPM SCSI Ultra II hard drives Linux 2.5.70 Compared Capriccio, LinuxThreads, and Native POSIX Threads for Linux u & Experiment: Thread ScalabilityProducer-consumer microbenchmark LinuxThreads begin to degrade after 20 threads NPTL degrades after 100 Capriccio scales to 32K producers and consumers (64K threads total) , #Results: Thread Primitive - Latency Results: Thread Scalability Results: I/O performanceNetwork performance Token passing among pipes Simulates the effect of slow client links 10% overhead compared to epoll Twice as fast as both LinuxThreads and NPTL when more than 1000 threads Disk I/O comparable to kernel threads6&&,q LResults: Runtime OverheadTested Apache 2.0.44 Stack linking 73% slowdown for null call 3-4% overall Resource statistics 2% (on all the time) 0.1% (with sampling) Stack traces 8% overhead #)* #)*  Results: Web Server Performance   Related WorkKProgramming Model of high concurrency Event based models are a result of poor thread implementations User-Level Threads Capriccio is unique Kernel Threads NPTL Application Specific Optimization SPIN & Exokernel Burden on programmers Portability Asynchronous I/O Stack Management Using heap requires a garbage collector (ML of NJ) &Z?ZZZZZ"Z4Z"Z3ZZ&?   "  4  "3 z#,Related Work (cont d)6Resource Aware Scheduling Several similar to capriccio&! Future Work Threading Multi-CPU support Kernel interface (enabled) Compile-time techniques Variations on linked stacks Static blocking graph Scheduling More sophisticated prediction  Z#Z"Z2Z ZZZ #"2 " ConclusionCapriccio simplifies high concurrency Scalable & high performance Control over concurrency model Stack safety Resource-aware scheduling Enables compiler support, invariants Issues Additional burden to programmer Resource controlled sched.? What hysteresis?&Z;ZLZZMZ  L  ) , $% /d'()*+,-./0 1 2 3 4 56789:;<=>?@ABCDE   0` %%/3f3` E1Affff` ffCIfff` CI33̙` rCI]2}/<̙` q3fff3` 3ffffff` ff3f` ff3̙f` ffff3f>?" dd@*?Fd@lK " d@0`4 n?" dd@   @@``PP   @ ` `6p>> p (    <| #" `x:  T Click to edit Master title style! !$  0h "  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  04 "`P  Z*   0` "`0   Z*   08 "`  X*`B  s *DԔ"``2  6"` D0 2   6䭉"T D0 2   6 "H D0 H  0޽h ? 3ffffff___PPT10i. O +D=' = @B + Echo  0  (     6 "`@0  T Click to edit Master title style! !  0 "0 @0  W#Click to edit Master subtitle style$ $  08  "`p0  Z*   0p "``    Z*   0 "`pp  X*B  s *Dm",$D 02  6"-gB D0 2  6x".  D0 2  6".>  D0 H  0޽h ? 3ffffff80___PPT10. O  0 zr (    0d} P    P*    0%     R*  d  c $ ?    0  0  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6̊ _P   P*    6T _   R*  H  0޽h ? 3380___PPT10.D!** 0  *(  x  c $0) `@0  r  S h*   H  0޽h ? 3380___PPT10.<'}   0 |t0  (   x  c $x:   x  c $    0@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H  0޽h ? 3380___PPT10.< d5  0 ph$(  $r $ S аx:   r $ S x   $ 0<@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H $ 0޽h ? 3ffffff80___PPT10.= /q  0 ph((  (r ( S (ʥx:   r ( S @˥   ( 0̥@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H ( 0޽h ? 3ffffff80___PPT10.=0w$  0 ph,(  ,r , S 0ԥx:   r , S ݥ   , 0ޥ@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H , 0޽h ? 3ffffff80___PPT10.l=cG  0 ph4(  4r 4 S x:   r 4 S    4 0@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H 4 0޽h ? 3ffffff80___PPT10.p=-  0 ph8(  8r 8 S x:   r 8 S P   8 0HI@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H 8 0޽h ? 3ffffff80___PPT10.s= $  0 ph<(  <r < S Lx:   r < S $   < 0'I@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H < 0޽h ? 3ffffff80___PPT10.u=PSc  0 ph@(  @r @ S 1Ix:   r @ S 1I I  @ 03I@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H @ 0޽h ? 3ffffff80___PPT10.x=9?!8   0   `X (  Xr X S JIR   r X S JI0 I | X Tn ??p$ | X T?? $ | X Tn ??p`| X T??c  X  `NI ??@p D Fixed Stacks 0 |  X Tn ?? p |  X T?? p8 |  X Tn ?? p` |  X T??` p |  X Tn ?? d| X T??d X 3 rG HU}IG?? p  X C ^0e0e BCDE(F@ 5%8c8c     ?1d0u0@Ty2 NP'p<'p@A)BCD|E? (P`xpH`hx @    P@ X  `PVI ??   D Linked Stack 0  X 0ZI@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H X 0޽h ? X 3ffffff80___PPT10.= j   0 -%`(  `r ` S d\Ix:   r ` S kI  I 2 `  `4mI??# ;502 `  `pI??   ;402 `  `tI??# ;202 `  ``xI?? O  ;602 `  `8|I??  ;302  `  `I??G N ;30 b  ` # lG?HbI.??9   ` Z??**   ` Z??pA  `@ Z??0pd! ` Z??0A ` Z??JJ  ` Z??2 `  `,I??C   ;20 ` Z??$a  ` Z?? JJS 2 `  `I??S   ;30  `  `4zI ??   y MaxPath = 88 0 ` 0\I@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H ` 0޽h ? `` ``` ``` ` `` ` `````` ````` ``` 3ffffff80___PPT10.=֙  0 .&d(  d d <I "`x: *Approach: Linked Stack d 0(I   QiParameters MaxPath MinChunk Steps Break cycles Trace back Special Cases Function pointers External calls  ! !, O2 d  `\I??# ;502 d  `4I??   ;402 d  ` I??# ;202  d  `I?? O  ;602  d  `I??  ;302  d  `I??G N ;30 b  d # lG?HbI.??9   d Z??**  d Z??pA d@ Z??0pd! d Z??0A d Z??JJ  d Z??2 d  `I??C   ;20 d Z??$a  d Z?? JJS 2 d  `lI??S   ;30  d  `I ??   y MaxPath = 88 0B d  `D>??` `  d 0(I@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H d 0޽h ? dd d d d d ddd d dd dddddd ddddd ddd 3ffffff80___PPT10.=nNN  0 h&(  h h <I "`x: *Approach: Linked Stack h 0I   QiParameters MaxPath MinChunk Steps Break cycles Trace back Special Cases Function pointers External calls  ! !, O2 h  `I??# ;502 h  `hI??   ;402 h  `@I??# ;202  h  `??  ;302  h  `??G N ;30 b  h # lG?HbI.??9   h Z??**  h Z??pA h@ Z??0pd! h Z??0A h Z??JJ  h Z??2 h  ` ??C   ;20 h Z??$a  h Z?? JJS 2 h  `??S   ;30  h  `8 ??   y MaxPath = 88 0B h  `D>??` ` 2 h  `$n ?? m  ;60B h  `D>??   h 0I@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H h 0޽h ? hh h h h hhh h hh hhhhhh hhhhh hhh 3ffffff80___PPT10.=pI  0 NF l(  l l <% "`x: *Approach: Linked Stack l 0 (   QiParameters MaxPath MinChunk Steps Break cycles Trace back Special Cases Function pointers External calls  ! !, O2 l  `2??# ;502  l  `6??G N ;30 b  l # lG?HbI.??9   l Z??**   l Z??pA l@ Z??0pd! l Z??0A l Z??JJ  l Z?? l Z??$a  l Z?? JJS   l  `@= ??   y MaxPath = 88 0B l  `D>??` ` 2 l  `Cn ?? m  ;60B l  `D>??  2 l  `\Hn ?? v ;302 l  `4Ln ??` +  ;202 l  ` Pn ??@  ;20B l  `D>??` ` 2 l  `0Tn ??   ;402 l  `tXn ??p ;  ;30  l 0\@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H l 0޽h ? l l l l ll lllll lll l 3ffffff80___PPT10.=P 0 NFp(  p p <h "`x: *Approach: Linked Stack p 00j   QiParameters MaxPath MinChunk Steps Break cycles Trace back Special Cases Function pointers External calls  ! !, Ob p # lG?HbI.??9   p Z??**   p Z??pA  p@ Z??0pd!  p Z??0A  p Z??JJ  p Z?? p Z??$a  p Z?? JJS   p  `v ??   y MaxPath = 88 0B p  `D>??` ` 2 p  `}n ?? m  ;60B p  `D>??  2 p  `\n ?? v ;302 p  `4n ??` +  ;202 p  ` n ??@  ;20B p  `D>??` ` 2 p  `n ??   ;402 p  `n ??p ;  ;302 p  `n ??p`&; ;302 p  `̘n ??@  ;30 p 0X@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H p 0޽h ? p p p p p ppp p 3ffffff80___PPT10.=p  0 ph0x(  xr x S x:   r x S `   x 0@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H x 0޽h ? 3ffffff80___PPT10.=u  0 ^Vt (  tx t c $xx:   2 t  f@©??0 ?Close02 t  fƩ??@ ?Write02 t  fɩ??  ?Write02 t  fͩ??P  >Read02 t  fXѩ??0  ?Sleep02  t  f8ԩ?? ` Threadcreate 0  2  t  f٩??@ >Main0  t Z??``  t Z??pQ   t Z??p0 P p t Z??p p t Z??p  t Z??@0` t Z??``b t 3 rGHI??( b t 3 rZGH^  0 ph(  r  S <x:   r  S =    0H?@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H  0޽h ? 3ffffff80___PPT10.=@2  0 ph(  r  S ۢx:   r  S ܢ    0ޢ@0 t@EECS Advanced Operating Systems Northwestern UniversityA A H  0޽h ? 3ffffff80___PPT10.=ޮ> 0 (    c $^x@:    OTHER GRAPHSX  0A?` F X  0A?@ WH  0޽h ? 3ffffff80___PPT10.>l 0 (    c $,hx@:    OTHER GRAPHSX  0A?  p X  0A?P `(H  0޽h ? 3ffffff80___PPT10.>yD  0 (  X  C      S  0    H  0޽h ? 3380___PPT10.D@I3  0  (  X  C      S T 0    H  0޽h ? 3380___PPT10.D@I3  0 0(  X  C      S ȥ 0    H  0޽h ? 3380___PPT10.D4  0 @(  X  C      S ۥ 0    H  0޽h ? 3380___PPT10.D4  0 P(  X  C      S  0    H  0޽h ? 3380___PPT10.D4  0 `(  X  C      S  0    H  0޽h ? 3380___PPT10.DV6  0 p(  X  C      S #I 0    H  0޽h ? 3380___PPT10.DV6  0 (  X  C      S %I 0    H  0޽h ? 3380___PPT10.DV6   0 (  X  C      S HI 0    H  0޽h ? 3380___PPT10.D 7  0 (  X  C      S fI 0    H  0޽h ? 3380___PPT10.D`:  0 (  X  C      S I 0    H  0޽h ? 3380___PPT10.D`:  0 (  X  C    I  S @I 0  I  H  0޽h ? 3380___PPT10.D@~?  0 (  X  C      S $ 0    H  0޽h ? 3380___PPT10.D@~?  0 (  X  C      S d 0    H  0޽h ? 3380___PPT10.D@~?  0 (  X  C      S  0    H  0޽h ? 3380___PPT10.D@~?  0 (  X  C      S  0    H  0޽h ? 3380___PPT10.DA  0 (  X  C      S  0    H  0޽h ? 3380___PPT10.DA  0  (  X  C      S   0    H  0޽h ? 3380___PPT10.DB   0 0(  X  C      S | 0    H  0޽h ? 3380___PPT10.DB   0 @(  X  C      S . 0    H  0޽h ? 3380___PPT10.DB  0 P(  X  C      S ˪ 0    H  0޽h ? 3380___PPT10.D D   0 `(  X  C      S ڪ 0    H  0޽h ? 3380___PPT10.D`G  0 p(  X  C      S  0    H  0޽h ? 3380___PPT10.D`G  0 (  X  C      S  0    H  0޽h ? 3380___PPT10.D`G  0  (   X   C       S  0    H   0޽h ? 3380___PPT10.D`G  0 (  X  C      S ) 0    H  0޽h ? 3380___PPT10.DH  0 (  X  C      S : 0    H  0޽h ? 3380___PPT10.DH  0 (  X  C      S DS 0    H  0޽h ? 3380___PPT10.DH  0 (  X  C      S ,Z 0    H  0޽h ? 3380___PPT10.DH  0  (   X   C       S d 0    H   0޽h ? 3380___PPT10.D`_   0 $(  $X $ C     $ S @ 0    H $ 0޽h ? 3380___PPT10.DerpM*P^2_?>SFVNY PV\^_fbneP~vhx v{A}kca t|D G"$& ) +4-H/\1p3579;=?AD$F8HLJ`LtNPRTVXZ]_(a?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)PicturesACurrent UserSummaryInformation(PowerPoint Document(!dDocumentSummaryInformation8