ࡱ> ;89:n#+>=?GRBPNG  IHDRO X˂[sRGBPLTE @@@```ಲM pHYs.>#IDATxYPaKDD+{U7ʼn B5M:T '~i,"(p6>LzvWmjA+l.gWQW OWuF?6o49wu |BώE~ |BώE~ |v}KF%r  z4A%MP GT2 z4A%MP GT2 z4A%!/ *7.d.A%>;&,A]R5}5ׯ[zv.k|iPΎ4A%wZ=It*dä *}gP % jT2qQWH *TA*zCTA% *TAz5}~3M"\ou|i:l?SU󫲠GYISQׯu%]PAݨ.)J 6%̹gIIoԂJ %uўwEI TpPחeUPA]_Rò)lԵ%uYW/umI&pA%Ou]I]ZP|?u%uaWouUI~s -d) ǃ*~<%uqW¯5S*~=%5 *~>%uyW5vS */`0ٹTn69u.nTM\49%5 *5vt̡MP3Jj^AT jFIT&%5A]^R3 OP0cvuqI-J>A]\Rg Ғ?A%û>ۤpq6gj?u;O&ٿAoޞ/ j& B:v _]P'nKc-c->K&>2彙C~AT*BA[RvYA /ԙ%5+IPYMPu6[C۷X ٌ>6?ouS7"Mf4.v HMd_y%5[PǜRrڌ?6/`v:N}EvKϻi/ ꬒ *5v J|joHd34]P^=^N\J;xL;z6ASRWt% *+ jzhCsھw^v&n mObPCf4]Y'qжkxm2:jl3ڟA&Z{ԴxFV=d_Z_zb 璺jWP:ݥ>ikrZ=j6{6A\RXPYiUPcol<^ATRTA%ߛyԺi6v}*5.mjm6 lB3 uPSoϫw&UǠÏxz6A>reATjs;v}C~Pj=v}qgRUj֝IJs3stdR0L1jG/]F&}*k||st ;*00. OAHX8~,k1 xHripK( ﰠ6GlW-t*uA G5W%uv_3?hmEI *>u\HP iI5UPwHPeg%u*;"qII  ULPKf5jZB9A}( *PfuPJjH?*=ׂ:)FUPɷwP~ϷNJ6]I {5+q#7%ި+IPYa/r7%u*7~E/TA%NA2 UAKV]I ;5^cWԭ*kn~ jj{J}޴u^A]w8f_NPw)J]ZoWZ킺iATԴ=ՃfA5f|~qWP9A jJj^>hm6x=$hϠv[d^>hm6dȯr=r: #f_ZPhv jjRoyA}ZP T;u[`PS.r *v iB:JzwqAHϲ*7\P917f_FPS{K]P,n.2:.TA%ۻy=UMb@P9+ۖTA%> 9u*C ӂZ?rr$A}_P,J6A}_P,J6A}IݜЊ*d'`*dOu*d'V%UP6 Q3j.곮-KMEXP7+J6A}j( *n~+r4AQP7*J6AQP7*J6A/o}Ae7jׄ'g /&ޢ *.@V*J m˂zTP^NAIT]!̽z OSRljf=(qno&]_RlWFfԡ~}{nvp;>rmVGϟT.u#% {Ո~b{:f۠~ݠ *ٮqKzC^FOF9QAe[ jw׺ =^5SP.JKn][~.}'Fsx,jק 's dFP5H,JKu[ӭNT]!5s.siIT- j)=0Eb;>!֗TA%۲~;7ePhݝ!=7idӅ.,JeAM7lgyA(%UPɖ=𫂺fTA% >Lz}?N/A[̒*d[ϣn6O~5sA%۪n?2iض5 *5~ dmh43J+\兌uqA,Jj״57E]PA/y%UPA- jNITpP2KMP jNITpPeԜ*dXȺ^,+ jFITZ[삚QRl?uyIT q%UPA_w&KKw&f~8J6AT JUP) *TA*@PRӂ}37OPRrMY~\5`ƾoלXA'W~x.AAuaΎw}yT(yk#|ZK^^ԋ&ɯ8<꬞ߜCk5BCPY;~zEP~ 0)#bV:cϷ_K6Aeӆ2t`A%9Ajƞ6gQjoόB*Z_.Ch/6,dWK:78+uW^~:ќt0Ae\YTjب]JYT3vw[L*.Ӫkz7]oA%Åz}q9MJKu-zAJCkM8rA}~fMv(A%& ʍ¡ *,WIPpˣ*pQT8C, X,pQT8 *iiCY=@ 4k?; 3#(+pA6f=" W$j,\OsUǭpEwJz&QW5j> p7t*pA]0ClE|1FƆ22PD#asCI-"E4"2PD#a{e*?JPjAu& Hܰ[Dh$hUqQ0:H2ЎߗTͺ ԣ‚ YfHn5ITRo<}5ܿ5}jCo#$+3P'~54֧NMJ j kn5[Pb-*Sꊥ0}w-ů~qzeAn$ڭrVU:}q|CP3I({C7`tuxU67j7nT#~׷zԶ7xoNSugj⇖@CSγ~CX_.jFPw&Q0_5̢uXA=YB#)PLL{y6Cc4:I MęWZDh$4qҳNɚL@" ;*"E4vTDh$쨈 H/ug p92PD#)γ3-o7ÙsRFh$98瞍}_L"IqN Y~EdFRR: WPD#)ΙA;{C(']騿L}gtxɔa;&uw9tC;,M("E4⤫;Cuo/= j&5@nNo3y,3X&uRPCTҕҳtht7a~5t_qfƒTAuWW"LA=t;NMuxMf|reW83 *|ЏţDq cO4R5 0yj= j;%Sl.Ae1e?{3)3Q߉<3.4FPAe]QSJY׽4ME׷w2NV}laٛ *;IS4G IDATx݉zPx_[f ֺO;A@ik.ҷ^@Up[fKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άz_їҙUQA̖άz*|.]bʱuuY #ZӷlkN8 *=e#g^Y *MmYi&8ox7O}a*': oOv߫ *3<.Jw=Cre~3w\3;<6UP9>sv?BP9q ةԶ5ʱ:VP;kۺMߦYuufԳZG fߠqڙ*oQ7qrkia&;ՙISLs}Ǎ> -eQ|Ҿ-= >n۹/%*[zszT|ZfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVEņ7]򧆱F%***\kI٦K_Q.XӋn^GTA /2w-^VC)an5ĝ~RP؎Am䷠o3O7b^i|y?mi K \|Pen/^TԶbMW?CV/{@vcjyJ~nPUpT_]jlല;נ`͸.G_{Ln}瑪~"Wϔ!HKdo|7 Yav x瑪~ j&NAa%vUMCL?׏QUPFPƣAma2yPs&Ơvh\m[٦/x< AԮ[7zxK+/ly7ڭ3 ȷuM{Xg6Q_0-K·su싽sPmk7ˠ6W}q%4e}QM< *G2o6wBNsOnv7}83d.w?26ݲڬzuwRmM4utf=޴D4rr/q]ޣ><;TT*A}gV^* *}',*=9#A?T.?X&*MG5/aûԛ:Ax1L5S#ޭIuRP_\AGPVQœ>9~m*|s3-×ן20,f<ehٺ`PqWt1Pgl]Lp1+#YuLiVWin9]8J+A]4@ 2ģ~rza^YA%eP3uM|s:o;,Og)tszva^YA%͖!A5[7̝#T8AT8AxWK?5FP@P@P`8{e{2b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**dK]WX+F,IP \K1zb ]}jNwS-zbMA-4ssT=_?={uryx*߮ =IP9> 0`mZ_rz3ħN۾[m^:𷅷堮3- a;*eEa˧sׂ1S_ԝX?W <Τ.$vk򵠎dnx29l_=7<ܖ9,3V.Yۿ>sK&ۙ0tjCbV+~Qߣ>a/ҭn4[Q6mqԇ\o6ׂ}򈭠r| j`PW -}ĂJ~ms^~k3N!FS G?SJPϞfPOqzq(EWzp_οa]9쥪w04{-ٹAjYO}UP9|(/_ -m A}!`WoNUTPIҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XE+sݓYl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3b-Yl̪XfKgVE2[:**ҙUQ̖άetfUT,3"mוo/>U~{5_#kK+ck'gJݳwq ANiٱl7?EP9n1ڱٴ_Y *>FP9 j3in˰ù ߻vnk~ߞNWb==oWr| tv>+/۬ >cQn'~RWA6+}[z4/A헠T6{)ÉLoQ;kT[TxZz<1S{#!l$59p!3=J*a2#L&3=J*a2#L&3=J*a2#L&3=J*a2#L&3=J*a2#L&3=J-=~hn~ 1ܮ=[NӬ8 %*S)wJ oVLp8Hϴ;6Am~Z >5W&{Vm;NgA AFׯEw 7Zmӳ$d jsPOw-*AݛڞuwEPE={8Mc=<@cJt A 8j=]uR7Q^MP;Mr˻ oRwGhP}JJE^ ju.A]$*|PO?s}զ/5y:OTtPinzA]mKMj3BPaߒR'G !p  p8TdGP A%Lfz0TdGP A%Lfz0TdGP A%Lfz0TdGP A%Lfz0TdGP A%Lfz0TdGPIE_?(#GIENDB`n3PL .LQ(RNPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>IDATx v:Pem{^8 !iDVU] Y)3Am$|mEA|ե)TxftEArP[7헪vۿUvA3mi(p>kesԔ6]69ݦyT8VMWUmڈvaLM%6]6xް>m &WșnosP#!.mkSKCg6킿ۨr~hsP)سҳ>wAS8lPTM7tuZy_(IۃZMP{ѥ>'xԔ7 joSM.q.# jWGߞuҘ4g^,qLշԘ[ܴ3]oc-o9pY㠎FAz5?]ͷ9qy.OPbNz& ]f{&MgҚٿKxIP5Xgvu׾o}|s̳W {_~4+êI''j>ATA TA T~fܓGPT~ۚnro KEMP-.@PdM~4^nliܹy0nfy\PmM!5PIrQ@7QPGC=0>~,\ZՏv3/K] #OM$4{o}Ҏv>WS ԋ*yCoW8U_nFPa!)^1&hL0 nALv=&AL}';8]"Q ON:;|MB#A5ii9>|A TA T]  p  p  p  ٪>R,\Z?GP ]T.u-A}0UMhBSwhsP*UR7rWQ>қ:-בy;|x1 VWqX_Ժ Akˏ45 fZ5 ;|'/}hcXUϜxkBLNPa~`,kp Ċdk Ϭ%eVIv9N~fmXx)OwlKgۃZZ][Z||$xfkP˷o(z[P*VK)T AD !Ł⠪SUNPUNQԒa^WAUβک QAj쪠[A wUP a`Jk5M#3 ņN~rKm9"Pd6~\,| f+ 69@ 6BMVPXyP}G:cTWPتHߗ?"NC VǦn7VǦwP6AbkceZ}Gzkcsܜ ʂo<"[< VKBu #[.6]Oԫz_| %qi=FP*\*\*\*\*\*\*\*\*\)-;"a@ 4#o,ͶaC~0vql6N𫆩Kcu6G_QC~Jԫ8򈣍 A-~< 6vwA3e~q|1|svRTA?ZĦmG7x;.K+87yCP?Q]֓ٚ2컢vA#}kn*uԿTFk;jS0qB;#zMXÎ VƦ>ZrD`PxvAT(66 B/P,<"[fuT(:6io="GM[EwHJ(!PlMl2bv 6]jBv}G:mGX.R??/ʋ쬦n8"}xEy G_x ~DqK|n:"EҕbjMO|cMI0+Sx湁/T7lijS~D\}2pZ} T( ',SM+PM+PM+-plj(.%QR%TS E{*[57 [q΀뫩qH`XYnrBkG3L©USW0,bM!As *gI{5k gjhbk`ji<6b2t*pz2 q,^XS(p3*B5UP w>?%O Ӝ *nz Kb]/Ҩ[ZTSt٨ *sTA_-5nTSSWn4sXzTT i7d*p.]깥@hpT81.px6wVAs, *) FaASp;?VMa 5<8V7*(֖K * 0߅ۭ*%h ƷTxX[T8K{oIe{_AZ*VQ»^PFCB٥ض+*ъg *Ϧ醱Pri=\_^W:6_[a |9p38/ۃz~VTMmyPwؾ񦠶_fڠnn'hK{>Kk ˂}R jwCM ^G.:mn Wҟ  뇠vgTӥe㊩r wAkXhZ7äwgPt^?hٴIcW7AuAm^-u ܴDٹLjLgtߪ#4$.K(UKaN7qMs( 3Fl麏k r(7d5u zzo=/J:*6044if4 xЩ?Ba}Sbg:ux4nV A(\!ͭo5:wzMM~sPc:wMPs~G[nc]PƤ>,%z8Ƥ*5|FIk(,7ox ~ahM`1m5s=]RWANLe}Z=Gt5}l\oQϤk{&;X(9za\ʡ/MUTAWLFN?_O AmL *0Ƥ*5ƤԻV7^Ua+?sIZG5yOP3} =ƝqϤgR5 gxqϤunZ>uw,KѕR7~i__A%bcg"-^R3ۊyRYR>E0r y?,BGIENDB`nT-\m惪:/[EPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>,IDATx :PA;7 _ϩnQ8a=c{ၠ;x p {T8A(wW/.QqymWŔ˯.cpc޻w&  ߯Ԕt_~Bm/ɧg\KdjAR8u 0LIJeSPZ.fUP'"/|AMh|>5}RwuǨh1:Jj[w _ԟG :_$v'5( OJm7Lz"c,V?n?1{7!k;KwK7~0fJPyԶd[9Qˊ4M9 aИF&Xeȣ^i+ iLwXZaMj\ex7 7%W I1XZZPo_\kZGM^rP6 wZხrmP a9kcfC x't׵ ԧۂ}3/!̕//{8d[z.9Ju=pD#IڍWlɓg߮gGV *dq2L dJPcn ׂ|Ėb*V*y|#A /vazp+c{:o𪇃σ:UNuea7 ] ji%bZqibPө2ByTc̭LȤLL^PglX߼k4cMy?>1dONN ].#o`(unHUVaπn *!~SA}uEwOL4?^`>V>BuMA7ū/'>SQM[$⁊wMx./uPx Aa[^Og^6)ox]yJ!1 ݗ)le,0 W,UF f؝5Cf\I~%HaGMǺtkVsN9<VjPoT>=L>N: 7{m]J5c(o>;g` ?ae$CA7R{Zj)WAm"߲U5ǧApu>_MnA]?}PzAmej'*#=Ђ<2iHƒh{cT~^H87զ8OإNτ8*?}d@‹QPcnVx_2 s2I,9^LT~Oз{Xߡ.y=WPc# +ܽ:/ gr$| KvF3_)eػ$@Yr:.W𷝨#y Ω+(A77?y<0ƺq-q*U6b+ys:+c]57ˏ2Iam^,W8jlWIc0A].:ڵMb; XTCԟ%-f;Hz 磜b3/WnT>+|5_Ow *{Dw{ל/rk]-E0 v?&g-A-R2j[x+]t~×"tkmolv}2\v_zs'u\NW岙I5jn6z2)V|?3w΃oǮVȪ]r~ws-Ug[ }& "7_&o۾=kRaZ|b^Zz{xW︉rȤpzf#~Ux];)A-63x27]o?*ۣI='i`awgUI*,#]y CA-y/=fPϞ 4U~KДu+0tkAG!wxӓl>ԅ,:ݎ]PݗKƻiʼ9. h?cX۸]jkib?ٿ{򝓵i4Rm .@qƵ׺Bn0Eӌi/!aTkܲHqswǑV64-n]MRyaZeAGx݁^؎ H[RǕ.sAuFPc=:wzq<_;GӃZOzXz}VjwԸ/~+cp uXIj==R>Qa j:]P%+-7@oTuKMᡦoL:,|i9KԣQbr9[t ]9ew&=ZV~yLػ3K56c=D0Ce¹yMcd/ {`\qu#YΤ>P|:- 3lmv6ԟp+a+g^ێ sPvyRPKw(]@O\{`Y\Q؇밙%.5W/G}k wM PꀻndF&|.udRXJN?ƢTt̖0ׅGxc=>GjAczJ}qaԂwV蛾4DXwa0wnTp#%GNPcI*B$NT ]3W*6 w0xCdJ_u斯g A{ 1_A:kN˔Dc<՘ӮS|e"z31 */]giz32.hv Xc9UZf"3ATdAeEDIػOy$pqBjPqfPJ؝rRIwPPǰYUx4kNVA 7̂a?)|uA]?iPo&MPwԂ<2)-q陕]JwB탺87զ֮\Ia][ g̅VܴO{3>z%e,T֖:ktڇ焽 a엋 !u~A5kƂFivz&Q}o&qT.MڟG C@ cQ[{XPy %}Ren#gILT!麔JPKL+<#]3H2s)=a-a_-_8w{K ' pa)GW *ԯT^."D|i^|lBec]F58L)1_j8'yJG6]fh/o˓!fuz3|g L7?hefA+8ոT^J}~n2ACu */ {%kv33wɷSVmӄ{.z}M3u,z }0r>x^> ȧj{9a:ޤ0g >A3/w6$l cԓ'4醹#ӱ얆 ybX{b|$F wVdž:f[T^J׶rP2B,hv͟vo a$P:_mKyW69e_a<-*W|NwO5x jvy2H-]&k"ϝ0LAmw_vz:mH|mU*aX jM˾U7.KݠWAM-'JvPfMVPzw~{ASWσ: n$"]!yIJΤSQc\'1?)]uˌ NVTVN.cSy3Au(]z35mygAݢkBm߸}/Ծl"w\fPM :ouI*GsBPPǰYr4a-_~iP7UpUjXuG)radU_j:P(HtA{R,T!]MLBػK_qVgػ9P8~_B~_ϐnr:=P4 8D~(]$=r{N:LO O1_TSͺ<U9[MO ۭJ=GGD'V\xF[U_Nw>NP79wGңF]7r*|R>jx۾r }? ʍW}E'|DphgA#}e!.zN{FnIUjW '1T8r.oЦJU]10|Hv 4[!\\=Y!+>-_| +7 [Z>dlSif+7&DAHa6+f7eje /|ʸQPJg QP'l! *|B? WUpT-_Kfu4[a yTA2Xڴ#҄We<~rCX߼RLھbz} ߒ||mGL {rZNfz $@/%8I3{O38oRt/yh> >, {5cA巜WPcΙ.iipP y^”eҚ2M['itDZLW,?rDz(emJm#`Ӡ^RYc'3U/S&29'L,-azOc'k%Pp[ػHj͎'X(ˀ{y3s|gLj1ٌAjP..%8$T{A-CS:I~X57}M˩S9S|C[ݠNKt˃+:U wljgRh5nz}.)cNwh_<q $ ]>Jp g I*F0p<*P;vMHP'+Hvi^T&|9xaL Lm~QXx /Τ}2ATxYeI,GLY$^PPǰ]$5^0 @i-Q .%xZ ȤŶ.%xRű6:Y y$}t)>K mo{ս?OEJR $@.%8]Jp g p .M# TX.ۻHKu7@5լ[# |DfӓPdƉO 1vlT/s8NcY|+?!QR3fE|k3&vOc>W 891ؖˤB 3 jU~fDjAMLmԮO)y'QC~F*TNGPJc}Ko}C;\]RǶ?םG udžyԺK:{3F=)cPԏL)#4_;?evРT8AT8A?%AIENDB`nW#KR,5 ۩aPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>"IDATx :P'mK#k=|WEi{ѯR;88uwpq$IĩSw'N"ND;8]#r3E^;>U7U!SwW9"/Ե ojTxB廃5]=)ܗ[%oj{+vnp M2y'v@FCKv_{AmO)>CtyYu!Q<"#.RaAD^ 3+ɏŏ]1`DAD^A}pAdÊk *t"/):LT~P؆"/C ڔ/Y^b<;{.3CuS;ڟ͟L'E^ j~A䏊cPLEKUA T~K:e~t)cfeϾFMyyfE?QLj,c[mɮHc?6!-ڙ X~D,7y'4N?j͐zG11ӅAMi9MDPwE^nR, 'a]SP/oLP.כY{*r jq.efcrʏZ䥠GTh -RPE^ *|KAy)"/>Z䥠GTh -RPE^ *|KAy)"/>Zyzm[зwEԒ5<kvAa:N>ߐ "Aǐ!ӓ6S*NJ(#?-`>qw/x6w}Zѣ_Y:(Vn-7D:Oڽn8;:j;~ԟ4{O9mAԟzO'z_Pc[nu|loLFPQlO[}A/Ė;R:o]P,קRm?:j#?%h{]q }p0)6y)Z 9V#ڽꯈ (&0hv}kq{dR3MEޖt/ѣ[9vgܺ!Wꯈ ژ&rZ6n3ַ5mGH&^oôX`or Aݱ*x=jbw~=l;w[0]%{ؐR[ϼBTJjO.v%^mw{}[/ͫݽ**^jwo[u>JPVQYO_C7;ֿ7Mo+ߩ*ȗ ꯈZC6Sz-lSJ##?T?h**j*}oPTG<4l4WcsJO^<}|ةf -Ɖdw9@A 9EM ꡽rf8LMwG<4]۝MᤢғO_iD2t!1ܑMq>p.֜Zb_qww{4;ǍAmf8G y%m5 j|A!QSfԟ5ZG59z}2iw\mnu<9zfQUKPW9;')M92fCPO,ꪵ>Wu;MWAmigP7 hznQYӆ~x;(IWAq΂ _.fig3pNQYOPW7SzRBTԕ Gou8z8'+)De=A])N!* Jqp QYOPW7SzRBTԕ+* JhRTԕz%L+auxΑ/kEe=A])T֊zRTRTԕrW9e'+UjQYOPWU0uZsQYOPWk^T{!m= ku;XPY/*^L{z|b0zr&`Ղ|yBTW *Ozj`Ղ-$* 򌨬'/Tł @!* BT :)QYOP_+(<%* kC)* kC)* K򜨬'/Ta&* KLTW :IQYo0AoMm4ӢVAM]cѷr򽠦vP{򃢲5/tޠ򴨬UPsFIemPm{򴨬Am>#!<+*m6ߴ8rx[?|<^ .44ڔ'6ia-{ܰVT*D0ɞ6Og]kcጾxC4;u?j=TtoӺndZ^ n~WVz^ۅ-!m 뻼6A~s͛ZMQYo9T_7j`A{Żkq+8z񓢲AM jJSP?"R}PnuZo Pj;q 9ZMQYok3YзmCߦy:iv4zj\=.낭7T*De̓Z>'tӠ67hF\=.낭7T*De]fAtCfMɤv jyo Hq87ӎvA.tIpuZngejY1ʫ@CSu<.88o]G{G%*V,O|AP2CPjEjPrKT{OPsF϶qWuPGx˘?N]q]Gҥkp'OnԴ:7t De7}F}@p>)1{̧(m3r[aPv 7De=AH7 (X$QPko$^ n\GM63zڌpxGߋDeSwCUNy]T^]堶 ^nz |D~򚨜rCTԦ 42c!ߞ3&nUVzUAX!* Va'[އ܊v˂De=Aݪ uBTԭ QYOP*+De=Aݪ uBTԭ QYOP*+De=Aݪ uBTԭ QYOP*+De=Aݪ ^j=ðڵkw0+An66~3۴ϯzmEe=A]6뢲lfuQYOPW6M'+٦}~]Tԕl>.* fi_ue3۴ϯzmEe=A]6뢲lfuQYOPW6M'+٦}~]Tԕl>.* fi_ue3۴ϯzmEe=A]6뢲lfuQYOPW6M'+٦}~]Tԕl>.wzn/5ba_ kpvqp q]B|m_"N!vlݳoGo5nt)~M'Ammn-zGo{5?*ۈN)Nډ7S}mo Mqp OIP{qp K bF$8z8أ$8z8ءVP'qp K:7S}uyfGo{kC'N!i5&Go4[/N!vkƳ8z8دYA7S]ZmbLBjc_&N!կGo_W7S=m~U$N!/Go_藊7St[7SBB|I_+N!ͯGo7ȷGo_7SoD>p#_ _ `Y"G@"o@8zE| *|8zeqCZQY5U-MDZ4IyZ~Ax3A/ rϞIm-ۭOPRzG8Kv \=9/E )7[9}{hW:{A?A?Kޜޡ)g}Pg/|!ݺL!Tѭcʠ'7p(^A# j>5tIAc dRI*͠Y> 4}m:!HAx"I9ϙ6kR,cT]cnAJ,1Ymi鷾lFƻcTQ = *HVA\RqIQӬY!/PdJA5o:MfӮ+u~$=kwkV/nF )s4ޚcS.* |WB襎Xuu# ԔQEQEQEQEQERQEQKEQEQEQEQEQE! s[څF@3ɯWNjˢ^L|9M$K^ៀk3ϖzk <9SI 9MvQQ5EQ( s2f&K>ҷTr rEr4_^Z fmX6%2J:״+2#"z6ycOh[jtj?k:"ߺox~4Etrkc9unp?*xE2q(@¹:mkrQy"jo⻟@#mOS^V~iVQ@qL4H/`[$6+3Q4Z&K(f ܼu~$*inֳu5!a? H4(r%4xNt5]>34ף2K]6Pۆmkw:FCoT4gr=+pjxU ?*? 6#^%1׬xR.4EB2Mp+*Q GtR1G,O#c ¾CQ>'%7A|XQkpf=6V%*E|.'PӭnapTs򯡭mm*U=MZxA)@-nI#+ſ 5 3M-sj"X S<'K]l 2E} 7ɝb }* -QEQEQEQEQEQEQEQEQEQEQHzkM+̲(rs_9ǚߍ/v4 8?`{}м/xr R%hw2Xڤvq 'sIK5FH6*? h^'RW!~VV+|-]E1&=mR5E(WcIh/޵? $ 6%ٌD}*Oxz/ecm:r1{׿ibL$J +ʾngC^5TWxݲSRJ'K?4b\۵} {-GCӂ fAWVj]/ڍ66~5|;:3I+:Mg3sonMڑ׌pmoZq\\JҊJul&]!qYfXSpѱ#XHG*9,/_In|^ xs_nFJk< 1i }­u-%!J(((((((((()@Ҽ[/;Lr(9 4sZKoF7}31uy2^: ڕWnaZQ^cxZC5 #{y~hq4n٬|\qҾw+M\S ⾗VWPAdyYzݨom2W+/jZ]QX(uiؽ*иL ̺ cg+0$5~{y Oz'58𽿊=qg"5Ah xxKIJxgX-}_5b:aՁR2=k>3,>p%F>Z|%`4 ָd ƼoZ?!62GAaKM m^Sy>w ѥHc]Er3 7w{pCQO^:ϊ5+^M>/0dtm졊_:UP}kGc4; rTaG"y #gdJ<UmY_Mcźglub@~e5QEQEQEQEQEQEQEQEQEQTyG c+築?Z]+CdI0<ҹ_;|ev;0ْgJc|3`}G+TA'.xͯkHۡDoG9h$<+q;(P9$N/\jVf;N/zNWUC۹\U#+7^O|S tqGnk`Mn$#pZOKi V׊m*(/. 0ֹ/2ҼW($^IPbxcږi>%ɶ&|xᯌ5kUKłMqs^yYV5@ 1׼[Y4rVQ7c!ul)?_TcYۅ%\~:QLwTFf` OJoֱI}M{4<9[i n u5cmj6ڎ!Jx|H|\ RyWDktG2^5 j:,k ,с+t_[.2A4M 6(VE"'EQEQEQEQEQEQEQEQETI.%_ďW$M7Nш$dsĒǩjHir_Iime)HEhqA/jmnOGc/Դ<hM ނo豓yBU5ɏ31oՎfV7 4L:ҴW?&owSђ E|cZtMnTNA_FitW$jq*ʹwVA.J:=NgúLq9,qQ?P)䢂IP=jڥ􂩟9n>2<xӓŚ [fufwI?-AZ r#XڃW7xcKuK۸CMlۑȮc-yŏp#9S{xP?ɯl"F5u'/ v Si^ɵCv7G$;hZY3tg'WUËXıj 2y]k"d=W?~!YRi_x-QEQEQEQEQEQEQEQEV+hi$H2OJĩCw.R3`>|/_T)`*>}'imvGP8W;yhPy o#I]G{k%˺9)5ZvSO^ZIc#]W¦r~lk-;6ifx*e7EWv]wJmcJNNVF@kZ,g&YFI5*F bczou(UUk>9Xh]:\o];I"~|G՜5+১Vu1;ո~ig៼9?_?AQyWj{|j|Fmu˸{U)>xMoxWQ;3?5Vm>4jk<@}E?һⷅu;ՂCq]ݽbKyD=5ltV>{e,S"-mo 5"ws)נs66g+cw>0Ք~[ts./ ߵaש5R2[A!yz54k.xMP\%` #_zr=ih((((((()ŘI=oyt-&l@HJ]l?j xE$U\|qikCPbWMq'Éj]#4NUМ0?Jk6:=7w1ƈ3 7ѧvhaֿ|su=^OX8~wpk>LBVJ5k51x퍬.+on<;Isr"f[>2ibŚt|0+i+6yzyjsJѰSWjռ5OFBmZkTExr.b xVγa+ح-" (UQLu m6K(MxcǖX+CYaxn7ۻRpG;źd*#k;Pռ P4St9WEb^6yv^4jvu2W`: Z(#{Zi=C[xDbPng5-B)μTQv j2Ǵ V|;r{[xKKv?ZmB.-fIbq)Yx $QeB"Ny-*[ǜk&Ծ+kei-?t+Yxke孔A#D k7'|}us:Hϧ^t/hOhf");s׵E4w,0daa^Ucz&a]B >7o<-@[d5}gjvƟ C iEQEQEQEQEQEQEQA\|UoMk\y"%'MFR}p3_Wx3С X֝a][NpvƤ?GS-k)m.Y!qiMgƫ.M*M?ƻ߃VΟ& f2r^8mj;\_؆kHzG_ʽӌgj6]^Lă%׊jF7IvKZC_k5?wr8ׅEp~;e2u'A\1)xOvmq^[ë~ex!;H6yG>64=Bb-?,~( QEQEQEQEQEQEQET,$N)UWcelB}kվ t-uP-{;tƋ[]_HLVk,q^OA9mm2yS]+?R-uk)m/"YaU|  5'KM'=Sǚd6̻nf샽z<e8E.fiRkK~(3p>T,k?|]9B7 ? _K͒X@||konfQOݦm97$}szP !x6UK(sYk C\\n>|Q}lBMGQף 59j4 㷒:v ?Wc]FCQ^y^yOxYG\֦Mrpj# BےU-x1oK"_\wqDeQɌ4RZσ|U%,,pƀҼCڼ/Ֆf ~t.g^<ϳ lo/m|95M( | [_ ev/3LܜoKQk]: 6a <]K"RH=kt5K lPZVƛrq a 8+WŚ LRosGu &hyCjMT^/Zkvicf?vOŲxwB֙7ן5 NwjW_;uJ%vEx-rY3<֨'d3EX: }S!8ߎi~EaԠ>~7\S:W|]ާ}&Ny3e#'"+^0l>6X4Y=֡r  ~'x#ðJv^=/ÏKPcS m+~(x:?jcYlr}x)ܲ }}yaAYCwT UҊ((((((+?SMn/ep…M|}}f>-nvM/^3_M;~1;y[kc:s UI=Myx#Ŗ7(;3;RxŖקMfϛIpzޥkdrSE"vq^[=JӮ6ڽ2AJqO3_^:F XWiVgW7ţ߻ ^img[Ek(EV^Mze!#0 s6UI֋ˤOBӚ]kD3ۈ|C:/DRk !7?fn/dDu x'Ě*3(2޽VWW+o>&_~U/.'7:&n?y]~i^{URh>QTGV-nzQ1yfdGkz(u+s~*_vZ1j#[f;vX:Ljt.|< tq3zwzrּMߋ>(}X-V[DqJG&| r+>Q%eP1jk^:&uKhktrp8VW~ݦs&f((((((+ž;;HMLMs̀\? k {O}>v^mmحTVC7e^Mж:vuj.-2F E<|?eˋ-6dl4,zUi_j`;r {W=sV<o4f6M"9x Az$#FrTJox [٣ҭ+oz֑i}{oy6rYi#{ƛnEBKWm_^7G'oagmuM 89>DvO F+f?d/Ү^T]cP_WWk:**yoa^ QM.IB[۞ M{-EtH֬69Q0S}k%BH-,,dAֻxŚ$w! X5*") ⻋%9{ 3';Ew𭷄? 4c'dҞE|;tgz*Vg%Ք4L35DƓ,;Gn=+%_QU4]f8U#=E'҉C&Q^ڕ9o5 Qx87ľ#ƻ0Ѯam)Z7enດw? ~2k,o-ﬡ*R 6->."VI>(oheT$^?,M;I,Y#A]Ox~oQrbg^ooa!Qs1Vy]h@;5zKíLhp3W@(((((;W^~ Tkݧ5 |: "n_[*(*N:dSrsw a|z0kzkP)+wc j/kiu,Mz~>$&pAjτ~Q~Ɉ8=kXeX~j> oI$:5Ǽ^)vi5Myxwz&c]-n[|n6{\/&aBB=Hz$Y۴Hkbz X Yz'~G3$2s[KGtE+s=V#EyKu$W"P$ՏbToTsФ ߻aSGҵQel?rLӴ֯Nb? 鱎_Nv%_4ؚ- t\*1f{!{?LXՏirkǩ&vgZ4>yMr@C]Ay4Z>ﬥVGySW"w0Ĩ6[hk1dV81!QߏtZ_5/j knLH-8"^W%e#K(фF}%Cj񯆡O,Am-w \?Kg4\g"HhڂF"cĖߠndӝ*_ ƕzy|358q8WXZKs1csjfk1Z˾\wſsw4qn<Wďː]4((((((ȯ~<{XV˒]R꒡ܷԵ-A46_ #ֲ-o1@Uw n~{Qǵ~=-<3b |ώ벽7&!Tu5kWpxn.$A+حn`gD6 "J,(WzbG?`Yrl)e2Mx_O{ wO by^XxCL /v5q+[98Y~ /GN q]ei/)*?xu';xl攅 I^T|7 D1f}9 "{q^Vw,-C&@$WTkAhV׿h7Q>S3}\qkKm:[$1.I'mͦY6UP*;Wf&0Vms[Iӄs;Ivt71=OL,ed0 SE⏴[B~A蠚'Stom\4R`G8{z֯cv0tP`ڇ CF9ci յQjr#$g> ^&ݶ*A?<9;SlOWZ:k |'2c`2]<][:"NNϯJF>'jwTbdcJZ }+w^~H"81Iף\4|5{Tm#_UxXMw}X+((((({tvS9ƌğa_2Ɠ6Kg_^xgLO21!u gqt.Akw|7Ϧ]m/<,::g~h4&m%aҺ~(xk"[ubGL}+o̺,&7OjZZ//@=)9תM㒅8Y/qs\<xɺPa$AcO5$o[hsK/$.z2[r|yZ~+x]>)j7ggAx" i+5n$#VW0oåj*lH77/^ Ct9t_|Ga#}?k?ɑ_Z]#DAw+WVZ%׊_ 0zQ⻏j;TcҺxW^*Ok?-Nr[WuԺ圂n<;x#7EƯoho4Oפ͢xFfc$W1O~$6icbGZkZƐuy9*IT o h;+!\>2hZeÍ0q,uO4%hB:W7xO[8O/8HsM?H!FyW>> o>O 9A^Z0Ad\V Iq3Xx^cpV~:f/[rZωP}Α>Y+!c!|Wզ6C=@)8Eb{Ӊ:lrzҮ~am3!Ҋ(((((;W SV]#n_<%=) uvG?6@h~+>WYSOgWxh63i,:\3_AVKaZ"E? ڃ:bKO 2^[gHm`|s^p4_|D?M?MȀFp\d^ii:jZķ ~3\Kf|c]p‰EgP3X$ sN,jpsڼᖉ?YRG]7Voi887z.j=SF"⧃naDwVH|gz~G]qOV.{MgVY Zb8'ں1rV&uuv>bȥȮG)>κ 'A_?WIc\+a׺!k3-.Ogm/ XG,5tWK4p^GTP9,p+>!i_c_<}ki#TϨ!=sR J,>&h h(O#41*i\j|#h|,{)7fH¬CK<w5~2xj-gmoRO_ŤwSr c"/x'9 :g-OW{cvZb%B+_Km+~Cgۏ]d-!a¾9wQ| n5 yzd5}?zYMRg^pȬ"4Ka!w}kh&}-@9eɮុ/eLA?Ȯƚ%V"ϭpƋw:/%-u h֟'R=4j~ĖX[lW :j7V0_3>3Z.~!x Z[wH98ֽ+V#4 s^;*]D,:׹+Fu4\<-xՉ+5!NJJKwbo-4F܋z{ױk"/6R(_j._[C 2Fps\2ַ$<s槬$ 7@.HX5T[լfᢶm Wfuow-lFckc$sϪ1777kM͌m9]L^H@XmUyo|cOMw kgivpo[x\5Xƪ}gO e{-]lF_h}(=+E}i|C! 9gְu?M񞋪rZZkmb:|$~5ƟHGae(J|Cڴq[Of?o/.bU x{u+ ϮYC= ƣ<'}eiMRqXc3V]Fw[|qsZ~jFDxf_ƻQR{ K]o$.]hlC_ײl*0BY:|?VCd2|J%w2 Cl/SPXDW`;א3;/W&;RW.ZҊ(#}3vczWkVڷkvϦ6d3Wg4, }*ޟ=LU[m6qܦMjX]B"AYAk;kUD=@}寏:x*OI$׭|&&*(((((V <&,_s('}[@ +ɭjGNh.%&GpHֶ<j\w:%ܗ+k)sI{Q7Z߇NםKzgXXm1)obkpX ]7Qeq `oEݤcuxiö pť0%#j4 ~`n-bF4 ?SL46GEe#FA?Ox]ktGF03^-'$=X6*Ww4:\N]q?V!Q}*iffvZFWڹ/Bκ (#LAwn"ZRzW|OHH FT)ָ C㟉/1٪[„?G?B@j(]T8;Nq^&7ާ'^0á{X״]?R1 gV gmD\&~aڕp}___񭶏ak s-ܻ0thpZd=xIs^EQEQEQEQEQT'1 6`x|ů_i٨K8#QW|{eMJb@In;] ;/ʚ?UKIMJطt@J#Xy5@kx#1so@!A5'孚H(,~_ c }*x>ɩ]%ˮ'r? ZytZOl[Kp~ +_o)-ZR.bŝٷq9>"i{!i{\cQې> Ȭhb!\v<W"tmƖ'k'V{--Լ~VKn/n)cR:&p-杇ʋް'sɫf6ZW{yLTqNԾ%\i#%u/ @ ^c,Xy91S+]F!Zf Y*-IA|u ݵw pqZGXլ@p=EYv_Gko9!PxSҼKkxLK8dY𷇾xqVC{kup:!'v‚8KdU* q?‘HPژ~*xETy{"֎m+ReKApP9t;1ιoN:4vc&s9+L-gW]B8ܟ¼Tx|%!oN-kʷfb[yzcpuO]Y^Ǧ&-\O+~:Ϣ%4c<r8p5;d {eku^>+)Ͻm?oJCs*ך(}kmѫzkh}Nq9ʻ5H^EQEQEQEQEQYz>5} /t{bYg k=Yi UpdE|}Fhn]O`븏_ᶳ]cJ!km5ŶE9#\U*+ {-4WxOZf]>_¼ ߎ:̬ ~D׼y)kd1z5?4Iav֤Vgw{{Zܐ; ʒjNw-q`p \gl#݆FbA OR?:jI{-A~&k5[y#0u,$cH]mVjpN%aj};z[!x;~ė c03of1+(՗崻no5IE61Ut[MSM2I ]^0*Oxm`uijey4KN:H85ھ}iq{B_'yŚ ]>w_QBkY.KAk<()ҡt,+h-l0e@**c6x:C'4W '>0k}&5KZWg[klcm#ci'EtT(?j|5X|rndB- T]ڶZl"P8~n%wd8x/tM2OJJt#T hœ85l^'>it?Q^X*HG<:'Yg"^]}XGѣm='+OuI5G@9et}+>>6k5Ze,OWxƱ<,pRMq%cSr׾1#1+׮bZmD)ɵWX7𯞙wcZSOM,H0H@NL1JFU8k ҷAں}n1LH5(Q+!Tui8Ȳ?V#vB3A1sJ|9g^^E}]׃|l֯t/iW#>Kḳ~_ t?-pan᫧mATsَ+zZn/|Ă㬨< 9qWoP?#Hʺ#)dW#xC՝/٧<`;Nk ìFվn~چ{6I\#~nT~/q7! _X4)"m$y4mNKh$91 ?/ _}yMwQw[y3tV_P8 :(((((u-ꎦF9nzA}t*U.=B-Ṿ* 7FӴ87}jZa|15xW`sWA=cgDg^iiS-ĐD+~}Y5Mnw8xNs=›:PxWKi=F'`ɭU`2 xg[7 pg_ֽcږ}iQ;W|⼔ F1sk *0ʀ7Z{M99)H KVV+"I\b?X/m[ܸHFf'\?<˫iM=:_.+MzaF1ʳ-nY?UZ MxŶ!Vo%U:4O |,V15C gGT|* 4'V_ \nfZe5dQ:^݁ƹ$w.}JUXC+jvOAζ#TsFK;KƔȏ^޼㴅C7//zސNfq"xHxiT3u=EuY[EooQTp*;Ra}/j?Ez;sVG⟿[?}EQEQEQEQEQU̲OFKׯ4]C +P oFnjkbTMWN5s~5=P,?wy&~'1ku} 5Qx1_v~ ߘlKk wFxsI#dL?y׈>I 跗8W++Y 0A'-vӯ [57@e ?VӴ:5=svv[¹\o7Qz \U?o5EC o8n Hs^\ l69o!-CY./[tyKimMqg>HSMsTPӬDKҘ=ƩikVEp/=i$ Ecs.~&w;ִ5[]^%ôI_硫nZ?!!(;dk#z4Bg=t񖣯_^LdXPFW :oH״?GՃNneHӖ栓UѴ3@l kޡqx#IA<5yiEDY#w~w |c,;NCDV/>u` =㵌 $Oeow@:|?Gf{M+kAE ºG!v6?_^ 1PҼg/|=umS^w70^jQGjܼ8zV=īH2YOvq뫲IfYbnC)ȫhɶåEnZYx((((()2z/d*s -I9y*_jMzFZ(Z¾Ծ$K6^J9#$~ k>H\<%IJ6y?{WvvV:[İkZ9h^g2Ӄ`G^ WosT_/G? u/daH;|Q Ed:ɎGhզGyg(x~^Ƽ㝳K 5^Ch67L"gVC`z8-kz_PH@Mx>9^,?/zy6[ꗑ M&q־q2.;D_ݏmf˦<3[Ն8W'eˢk:4MxҴz](7kh wQgt+m8EvatCJORj|2lpXJ;kᯇZ+#37Ax~NV2uh汴_6m^]K}7):jv7GeҐ ~Oҍ T/9Kg}|/=}b|;ahiS)rƼ~{K2/kVZ|k׭kU!N2Pvc.+OWlb^lVJ#}F[Kּ?OoexgF H$WSZ|SM9eSM3Ym{ J%Mѣ_n?_XLӦ-4}2i H >Cފ~\zF]Z ['^@j&ut# @7t=GX2ʻw?ZuDŽ|{uᕙ?6;C|C^x=Cfa,s^EQEQEQEQEQA_$k6^?|af]5 uOv9tOš 4'5|7f*(&t=r87~,JM.n$epp^k 3oks/2R λ\B[ysA)OQֺ?u1TާXc90=L1Pƣy '̈Bi~ eaxv֬Eq,j)Wx#$;4[͍ # ٹ W9S]7m6fHb^y-Ċ3JkǚΦZ\;|ipG] wjz{Wu)ΈARď]:g@R1q^iJ"1ҩg ;Dd690`z 8|E!Tui8Ȳ KI)qHG/Z~R$HH ǿ5zu4s\"Wz>'i>" mrMFolנRQX^'F.3+>\.+; ⦭seᆲ25S\FSVʹ6$.#DuPda$8"o!xNg}*ki,@Xбx{v~ kE?t=wQoᑴ@mgaOXtI{hMy ] B66d%jNYb2I^W^oWkezq^?|> !9XF07~QEQEQEQEQE|C5]?Pa?t'Չ9xdHbϴ, bsMkUY ႀݓ] 2YCWKa *#nâvOQXZ74;:fomkv,W AٲZ0knb͞ED25ZVw kjЬC]F23Uiz֭}b&kч!y׫>wt,˂پ|_cPl=9fҬ y ~_ʴx8bDOEyUTdڼK?^ yY&^7Ω~\s+)RxkźՍIF,j$;H cAxԧTFy"GR`7/ݶehMK|#7/*kAOӭ#Pz™D;#!5=?tʩ*;tPp7 OPsjKVp+>4jS >mqn7_+oVn(^Upd#ǂ3@yl)"Xھ2麲yEp?Ǻ^$w H-9+$cwجjP Pyeş=Zu#3G_K֗2ZȞa3<I|w=`Fz~yo3i [AݹwwFi5':X6$8FA xMg y⻽7K,$*cc? [?|헐uj&`V<"?|Kruݹ%뭃}}!c> Q٢(((((& kgx^w W[O`ͅN=}9ڠwyQn9l f{maiR4fc+̼CD{{{N~7n:fv'N_N,Y,W{QҼ#4 _zg`bpֽ?k?\2"주̄1^x[(/>d⭷/yږW|NԡlM^:]x.'< c X}narq]G_ IJ7e 2خN{BD$^C]_<A-pw4-֮9*zfVMEE^ (> yV>*#HبX0yeJ~ʠ7-ԛm{Pk-ɾz ԑRIX4ڌo4gL&'*sqo@Mb8k!:/Dnu"H*58K6Lc"X j4K?g~l]bڬM] mHͥۂɽQQaSK/jh-׬FR2j6qrcKg=kƾ^*NE״wO<=+l>i:5yIخ_he bD*/#יW1Ck <70s-oC}HͻnH UMka.+>:xYXihiWEᏎaVD_O4Mn :2g` oAKQ|q J>[Z{;ۦٱ)QEQEQEQEQEL: B/#M͜1\yo?¾͂d9ǥxſZxWG/vɰ< M-b7!MzlVV;x@r)ml>hf`*x}Zm?P'BżsޛOÃDy =qx¿Bok2ko--[<lEmI/EQRM,pHʨ$9&U5YGFk?FQyeq( 86(_0ޕxCZ悗{7SW޼_%-ofK .y5^,A ۆG+dI|RGgI;mLK,jLI +2V༷`J_D-LW(q\y#~dE?5<32ohu^únyj7;Z-[Ð?;6~vjO~1\V}Zus%,sj/+zW]x.ħZOHb ʨo/B Hq^q| 4^Nqʦ fE>"+y+)k>24[cfNޣҽxQ+>cZlm~Gq4qs+I+nZ((((()0kω<*lfewvW$j#qJ xO"=W⎹^|k) qs^E&xL?[xy2L֯g4'GPU(O^6Rnzku^GҸOn,$=^uK{[ 5&?>0Lӭ~+g|QMcp,#cjo> o A^#$WRr+uռcx>^M= { <9]7b pB>f>qcW7Kcה.Tާ'Zo~ E$ ˌhI}8UπlGjٟYw0^/^GA bebF\}?W<\m~>d?6zZxn%Z/:>,C9S\7Q&t9=z W|PvI[~UTh]_;CJ_R٘rSXxvkHn_b;^[u 4,̮ x&f%t.yZVo^[8hPC#Hl:@ׅmmvbWPs]x#RъLJ{h.P$Pk| 㛽n("p? Ofu_Ih]) 'q:m9J((((((xOlӘ3FC>x8+ȴwyM렂Km? hO4粑gk 鷚Ov Xu&cy_ I׸\^Z~6*{O8܊HSGZƩ[=֛pۧN}EUimt<g\|ALjk}>& WA vQT@Ҧ#">kA0s\<{s^ t2|~+L!<2659#it$մ>!x[4m=sGQ;{xG¨y]7v3]H ]<73mb.Ҝu5EiX=uF𽍒.ݑ ܊:~l um9/K"2BTÊP3Qqd5>/c.Tvt5nM[×9Y!rUM{5E}+7k7ˣ˟n碷{Ҳ-*T1\*WW7xZ[ɎF:Wl^)e ,R2@A\ΡGREc+):<+/Bk,7vAJXֶ~7bX$l~WꚔF=˅$,rk<c?}q[&Ȅ7JSW6Ǧ[sll MFfI#;WJk6\ Z6]#}\׊&.y~d+{ uqߌ}GivֈXc VQEQEQEQEQEPzW;5 X:/+WZq1%^m3_cj:|d O|O3f9;z_xJ-o퓄9${> zd>(i$;brGZ>giYıƒIu}mcN;Wsc& ex믇^=VrQd^ݤ֙ UV쌛yc?ʬ)R0x,|ahTCz1̽s^sx\{ 1%;b9}kb״}:Y%LVt2 *-^,{k_#nN:Wzcx5umlʷwUJ=K:8A {XPxFeж\qu{^/6"]?i_z%+mz|:T`b8ѝ?uaV%KC|dpNkH#hC Ic]{ęT~Bׯ* 8S>(^:3\2 x~ |27:hjv]i+G$T8+ςEΖK%?ѼoO5Ő9|muGKm`}IT1NEղ1^kFSaN7_@ O߉ɥCW1k֦BRa2;Ҁ t((((()|Ÿ$т=|W|A<>t{5aXf[;UmooP51\?>!Cn:qs^ox%:05 bx@>t$t> /~x+; 9;(xgM%j"c_=,znrp>xO2ގ$f7zteXȘWSA:|v;cƶ3\?iZ}3^ڼM<7ƕ+;#>v:$܏{V4]HxpE]gtp*0>W=O]͎"CMyƯ/MtptȯG_Í/‘1qxF^w9AKER1WKgMkKWߨ܍"T*M6ٵUwj76[תqҗ`T34r"2+[sCU,YrC'BkuxcO쯶lE {/ 1H?[ԍK1>?qOYZO.!gῇÞ)CqMvQEQEQEQEQEQE|L70$y㜊 ^/g܊ys)}yeyWhP5JdH|[^OS /y\] +Wm<7e>m#K';N3y[v(j+1+.Z'."m9q4.Fes\ÏOouD^ I(p})C( W⟅ݥ}%c$?K}FNN+WK,-IMg( wx:*jz+ⲷhFk G+c^ rCklుa#F pcڗ42`GRxŶ^dUQ5ugU"H GYzvcOq V;KAY?k"l;^-,>)~/Oo+UUT` ?0Ўm 7\6*_|&VI= WJ1ҝEQEQEQEQEQEQE5*As_,dFڅx;FKoq^H*y_>|Ix/?oA'{|9\P𪂀k;N43dص~ϺaCԝ~y'Wꚵf7 H9,kt?C':-ܘ,A*=s^oq)4.7PGz󯈿VYxߊ4?Pq E: 񦕪&y߀v u(Ԁ3ßĒh"_&4R ^W FG=iJ =+U𾏭!}5j7u!զ~Y"m#ēEflLtjTҾ/.j%k&_֝_5/)µ>i*VMJNGuOp^&DB;jiMJLbº;_@~35yn}iͽ1oV6k.x%}k<9ͤhZM3*[ [?z[<.,Ƽz+C2鱶b#Z=œ2 > ~<-O4&y74>`lཷKyVHd25x:w"+veITa]T}4ifKnmީAܾBĚŚό|[$2ģ5Ï -onT y[k(((((((ҹOfxvDaRbltjVPOnh :dfοoM PpC3i۬c ؊ƨ 㟴Ӂ;8R*| r}쩹 ,xt xj^&Kk xKº,)hl>Z:Զ;hQ.^Gj+ 6hڎ>ϪE#/4CpbLf%7WF A=+|y;Bkk YU1mF㻵k4I!u"AxQЭIR2qW>|A SXp4ZF>o<ѵl#nrXhCKMN1FGQ(ڎFOݱYZϋI҈\f<[X Ge$vVcJiu=sƞ#[FK=*7,J~fi=>_د3O׼OizYeaL0{΂PIF\l`mҸoEӼ%fM|G מxkߏu/[=ۢnvXGoo4UQwTFa7{o?yi+ >Ycq |WφӅ?,L3Ǩ⺻OXK [v=&//Gq /[.,)b(,l4Rvڳ/cc5e&Jj^َ/ֺ?4zZvIP?|UYE·G&㪹zJՎ`|)Y;$r=EbxEYk4xj5kbڗb[FŋN+WZNEu4riv8B ziwt]:]Z1Z|-k-E[?xHEq^ݵCCsq -,*F,q?|ZyNX1FB7d_&M&-{qq"U?QH@$l4h IDSn\+\6l* k~,(,"5|צ[gCQWpGA_0}U) }k I>".l/Tc;=+ڻW -,"snJ-QEi6Zū[0Wk _6)+Wß]7Ķct)r0 S!IgXd`j(hʞbTM^n!cf,7dj%\e.Z'`R1>][ԏ6rx5ү7 O<1YOq"+k!w"["(9=Mz_è5I1n7_#FWogkuq|jO NծSCb*_4{cY\|GY|ɷֻmk4N8hZvA%Q2H_|Nм4\]tX993e+&ߌ/|>)ngIuS8v t(K2k^P^y?ɱ-hv\N0+ۆ6Yޱk]ȫ`OZ+>%@]џd1¾W4𾊗WHGz`Җ(((((((J|S_X]v>9S_'ZV?4/nxLq([Y[޽jZ(3Epk/_Dq*5yρ|iu纶>Kp+OGַ|rdہ}'Ś.cR 4[kyABۢcՂWDӓQ{i\a&ܖЬj͸W8v+B3Q-gr[@FXcPԬ#/ws*W`+2hN,zd~> ;X_MӛxcHzB^ 1A*"Q*P-dQEZ$ #V'|1aI G.G$ֹFs1=fNVRl(}k9-uXs~((((((()O-`9W'A๷~Wa_Ox6~2ҖU%%<]#(UZXU@',EC'Y(x[G"x-[pk_Ф~bB fŧo _0F]H>F4RSmֶM>Tw`9}ϊx9o'`lZ|%+`[iֺ**P>(]ZY-۪@-_&x]ֵ }tI_ |DZ¸ˮ{קTnbAh2ǁ_<|Tɣ貕^%O/X x/oQӐ嘏}+ >L!Q@QEQEQEQEQEQEQEQEQE!+;"9}oèF27{[[/-aoa_Exem`TN7}+҇AKHyx3Kִ{á+&>l1߅fGf9o0pGTy /zt[Wyr -<+V,*<I? iX|t(=*դ7qIꧡ+Ŀ5}KKm(g +# H aT 7 A(d;xY̋$%1ι^y;Ld ' ^\B"l2=qEQQIrEǰZ,+x"pP3}+KX@6ƁGSH8ERMxz׶ZeshP:R(x6N@!W|(oNuWrDC{WјA5_W?'gBT̥C޻/|EC4 lTQG5?yncVSE gŽsIlmInWx͗.E_f=5)  `:~5reܟE$t ( TQETM,,qVc+ǼwK2X.n@~Umwq#{?;Y#!+֕* ?QEQEQEQEQEQEQEQEQEQER`TSC4Rtad|Ԍ*nycx#V$'F]gE%i|:ne[W1 [5KEW^ֿ vQ$_/7.$|ڽss^2xk×Z?: 5b牙RcNъQKᆭHZXW׾x7^_fSd_{դ K$mXdi:zp<Ҿvau~9V`ׯ,2A#}XHS&kĶ2Ga]Gmj>(EsdEe w(4 )$+gĽвp3HpFNO֭x/6YR6',9j'Ҽ+nX[(`>iHqREQEQEQEQEQEQEQEQEQEQER0x wW^PI>9x_4z+zG s^6E=ū#s{m)oBc~>_tf%)ʶ◵QY!+) O^νn#/`8'Ʃy:5ɂ|ֽy2}G?fh[yQ}=v[u".2ɞ^{~hGu}J((T Q*J((((((((((((R0kt?}f#0>( {h^CϋzH5'#<[QR^g+м3rme>: \`{S$8q\εh?ڵ8wk̵-ѥzIҼ\oV[U_99Ğ%rڼ1&Y<+KH.5/˅i(5p6,QT`U8((((((((((((1H@KEHW֑N̼כFO%<:f\)}-FqH|57KFQEQEQEQEQEQEQEQEQEQEQEQEQEQE*JZC0?L%|%K9j5?NiD}뗿6Pʽ;uw6_/Ys=up1U-86zgя?Y<5/Ɣh,'gԿ?zz\WK?[6Wr}pKښN0u\N_KHYs]$qh4U_E&((((((((((((((((QE`S4QO"ȣȋy'*LQ(((((((((((((((((((((((((((((?(   Xhttp://portal.acm.org/citation.cfm?id=502057Xhttp://portal.acm.org/citation.cfm?id=502057<http://www.usenix.org/publications/library/proceedings/osdi99/banga.htmlhttp://www.usenix.org/publications/library/proceedings/osdi99/banga.htmlhhttp://citeseer.nj.nec.com/douglis91transparent.htmlhhttp://citeseer.nj.nec.com/douglis91transparent.htmldhttp://portal.acm.org/citation.cfm?id=35037.42182&coll=GUIDE&dl=GUIDE&idx=J774&part=periodical&WantType=periodical&title=ACM%20Transactions%20on%20Computer%20Systems%20%28TOCS%29dhttp://portal.acm.org/citation.cfm?id=35037.42182&coll=GUIDE&dl=GUIDE&idx=J774&part=periodical&WantType=periodical&title=ACM%20Transactions%20on%20Computer%20Systems%20%28TOCS%29D/ 0|DTimes New Romantt  0DTahomaew Romantt  0" DArialew Romantt  00DWingdingsRomantt  0@DVerdanasRomantt  0"@ .  @n?" dd@  @@``  / 5#3:$   !"# $$%&+'A)+ hb$+>=?GRB#b$ zïLxv4yVh#$$b$3PL .LQ(RN=$$$b$\m惪:/[E\-Y$$$b$KR,5 ۩a_# R$Nт۳ Y*2 AA1?www@8ʚ;ʚ;g4XdXd ^ 0ppp@ <4!d!d@k 0t<4dddd@k 0t <4BdBd@l 0t%0___PPT10 ___PPT9nnIt>"ՌPNG  IHDR +tsRGB PLTEfffm cmPPJCmp0712 7tRNS@fIDATWc`  SP1H $XLIENDB`? %J/ ProcessesYThreads & OS Threads in distributed systems Object servers Code migration Software agentsThreadsIdea  we build virtual processors in software Processor, threads and processes Context switch Process and thread context Observations Threads shared the same address space Process switching involves getting the OS in the loop ! $ Creating and destroying threads is cheaper than doing so with processes Threads and the OS User or kernel threads? Two level threading and scheduler activations/!(F/!(  \"JF  Threads in Distributed SystemsMultithreaded clients  to hide network latency Web client RPCs Multithreaded servers  improve performance & structure Starting a thread is cheaper than starting a process A single-threaded server is a problem for scalability Move on to next request instead of waiting Using blocking calls simplifies overall structure Simplified flow control (?) V0808    Alternatives to Threaded ServersAlternatives Problems with threads? Hard to program: synchronization & deadlocks Hard to debug: data and timing dependencies Hard to get good performance Should you abandon threads? No  but avoid them if you can Alternative Event-driven programming x( (      Client AnatomyRMajor part of client-side software  User I/F X Window System  X kernel and applications don t have to reside in the same host Compound documents Client-side software for distributed transparency Access transparency Location/migration transparency Replication transparency Failure transparencyV.g3b.g3b  !.Servers  Design IssuesIterative or concurrent server Iterative  server itself handle the request Concurrent  multithreaded or new process per request Point of contact Well-known port  HTTP in TCP #80 Superserver  listens to various ports and routs requests (inetd) Server interruption Client simple hangs, server recovers somehow Out-of-band communication  separate port or special msg. State Stateless  no memory/no problem Stateful  faster + reliability headache Cookies? PcPPdPPgPPUPcd  gU"Code MigrationWhy migrating code? Performance Move process from heavy to lightly loaded nodes Move process closer to data source to save communication Exploit parallelism w/o its complexity (parallel searches) Flexibility No hard partitioning bet/ client and server Models Process segments: Code: set of instructions Resource: external resources needed (files, printers, & ) Execution: current execution state ...  ,v  ,  v#Models for Code Migration$Migration and Local ResourcesResource segment makes migration difficult Process-to-resource bindings By identifier: only that resource would do e.g. URL of website By value: as long as you get the value your are ok  e.g. library By type: weakest, only the class  e.g. a printer Resource-to-machine bindings Fixed: it cannot be migrated, e.g. a local communication endpoint Fastened: it can but it will cost you a lot, e.g. a whole database Unattached: easy to move, e.g. a file only use by the migrating processVHH  % "Migration in Heterogeneous SystemsProblem  target machine may not be suitable W/ weak mobility  just re-compile W/ strong mobility  a little more complicated, execution segment! One solution Restrict migration to subroutine invocations Maintain a migration stack parallel to your execution stack State return point as a machine-independent jump Who does the modifications? Compiler or preprocessor An alternative Same as for porting Pascal in the late 1970 s Use an abstract/virtual machine Problem  normally a new language  e.g. Java^ZZZ|Z|  &! What s an Agent?Def.: Autonomous process that can react/initiate changes in its environment, possible in collaboration (!= process  able to act on its own) Collaborative agents Mobile agents Interface agents Information agents @GG'"Agent TechnologyGeneral model based on FIPA (Foundation for Intelligent Physical Agents) Management: Keeps track of where the agents on this platform are Directory: Mapping of agents names and attributes to agent IDs ACC: Agent Communication Channel  used to communicate with other platforms Communication based on application-level communication protocol  ACL Separates purpose from content Purpose out of a list (like QUERY, INFORM, etc) Content is specific to the communicating agentsXI `I `  +%D AgentsFormerly known as Agent TCL Three forms of mobility Sender-initiated weak mobility, migrating code executed in separate process Sender-initiated strong mobility as process migration Sender-initiated strong mobility as process cloning Basic architecture 1) TCP/IP and Email for communication 2) Server responsible for agent management, authentication and management of communication 3) Language-independent core - start/end of agent, migration operations, etc. 4) Interpreters for different languages + module for capturing state of running agent`4ZZZZ4  )$Presented papers (*) M. Welsh, D. Culler and E. Brewer. SEDA: An Architecture for Well-Conditioned, Scalable Internet Services. In Proc. of the 18th Symposium on Operating Systems Principles, 2001. (+) G. Banga, P. Druschel and J. Mogul. Resource containers: A new facility for resource management in server systems. In Proc. of the 3rd Symposium on Operating Systems Design and Implementation, 1999. (*) F. Douglis and J. K. Ousterhout, Transparent Process Migration: Design Alternatives and the Sprite Implementation, Software Practice and Experience, vol. 21, no. 8 (August 1991), pp 757-785 (+) E. Jul, H. Levy, N. Hutchinson and A. Black. Fine-grained Mobility in the Emerald System. ACM TOCS 6(1), Feb. 1988. dZu 0(n 0, 0 0w<   0` .T3f` T3f3f` 999MMM` lff3f3޲` eoHff33Ҷ` ff!` T3f3f___>?" dd@$?nPd@ d " @ ` n?" dd@   @@``PR   @ ` `(p>>  \T p(  p p s *0 "%0  T Click to edit Master title style! ! p c $ "R,0H  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S p Nff??"? p Nff??"?T P p " p Nff??"P p Nff??"P  p Nff??"P  p Nff??"?  p c $ܕ "`  b*(2  p # l 1?" K: TCS 345 Distributed Systems(2 fZ p B޽h))? ? T3f3f___ 0___PPT10.[p1q___PPT92p22 aqualab01[   0  tI(  t~ t Hff??"A t 0,F "b t  ,  t <F " F T Click to edit Master title style! ! T   t "  t TFff??"  @  t TFff??"  @ ~ t Hff??"A~  t Hff??"A  t RA)\ :?nwu-seal-gray"@)i%   t # lF 1?" K: TCS 345 Distributed Systems(2 f  t # l5A ?z[    f 1? IOnly code segment 2    f 1??  Ke.g. Java applets(2    f` 1?/ Q  NAlso execution segment 2    f 1? h<  Te.g. D Agents(2    f 1?`   Ie.g. Web search(2    f 1?Q 6  Ke.g. Java applets(2    f( 1? 0 XInstead of moving it, clone it(2 H  0޽h ? ̙33y___PPT10Y+D=' F= @B +  0 F > @# (  ~  s *4 p%0   ~  s * pR,0H   l h HT  " #"r9] R   <H ?m  XGR GR RB (or GR) @`  <H ?  m l$GR (or MV) GR (or CP) RB (or GR, CP)%% @`  <hH ?  q)MV (or GR) CP ( or MV, GR) RB (or GR, CP)** @`  <"H ?H  fBy identifier By value By type @`   B+H ?mT   MFixed @`   B$H ? T m  PFastened   @`   B=H ?T   R Unattached   @`   B?H ?HT   R  @``B   0o ?HT T ZB  s *1 ?H  `B  0o ?H`B  0o ?HT HZB  s *1 ?T ZB  s *1 ? T ZB  s *1 ?mT m`B  0o ?T   0dJH \ 1o MV: just move it GR: Establish global systemwide refer CP: Copy the value of the resource RB: Re-bind to a locally available resource 2 H  0޽h ? ̙33y___PPT10Y+D=' F= @B +  0 P<(  ~  s *$\H p%0  H  ~  s *4$H pR,0H H  H  0޽h ? T3f3f______PPT10i. #;+D=' F= @B +  0 `**A(  ~  s *mH p%0  H  ~  s *mH pR,0H H   / _; # #"2& @J  B,vH ? _; [Capable of learning  @`  BXH ? ; JNo  @`  B8H ?/; PAdaptive    @`  B@H ? _ l$Can migrate from one site to another%%  @`   BH ?   JNo  @`   BH ?/  NMobile  @`   BH ? p _  fHas a relatively long lifespan  @`   BH ?p  JNo  @`   BؾH ?/p   R Continuous    @`  BH ? _p  |4Can exchange information with users and other agents55  @`  BH ? p  KYes  @`  BH ?/ p  U Communicative  @`  BH ?  _  v.Initiates actions that affects its environment//  @`  BH ?  KYes  @`  BH ?/   Q Proactive    @`  BI ? _  u-Responds timely to changes in its environment..  @`  B I ?   KYes  @`  BI ?/   PReactive    @`  B I ? _  ZCan act on its own  @`  BI ?  KYes  @`  B!I ?/   R Autonomous    @`  B8I ? _  U Description    @`  BAI ?  _Common to all agents?  @`  BJI ?/   RProperty    @``B  0o ?/ _ ZB  s *1 ?/ _ ZB  s *1 ?/ _ ZB   s *1 ?/ _ ZB ! s *1 ?/ _ ZB " s *1 ?/p _p ZB # s *1 ?/ _ ZB $ s *1 ?/_`B % 0o ?/;_;`B & 0o ?/ /;ZB ' s *1 ? ;ZB ( s *1 ? ;`B ) 0o ?_ _; * 3 rOI 1?   MSome important propertiesH  0޽h ? ̙33y___PPT10Y+D=' F= @B +  0 $p(  ~  s *(I p%0  I  ~  s *KI pR,0H I  p  HNqbA;A ?lm D H  0޽h ? ̙33y___PPT10Y+D=' F= @B +  0  (  p  HNq(d#^XA?B r  S HvI p%0  I  r  S  wI pR,0H I  H  0޽h ? T3f3f______PPT10i.g@FKv+D=' F= @B +}  0 $(  r  S |Fp%0  F r  S |FpR,0H F H  0޽h ? T3f3f______PPT10i.qD+D=' F= @B +rX ]k?MkVX["^n_qs|))++.+1Oh+'0T hp    $, ProcessesSteve Armstrong AquaLab05Fabian E. Bustamante16Microsoft PowerPoint@0cn@~m@`VJiGSg  )'    """)))UUUMMMBBB999|PP3f333f3333f3ffffff3f̙3ff333f333333333f33333333f33f3ff3f3f3f3333f33̙33333f333333f3333f3ffffff3f33ff3f3f3f3fff3ffffffffff3ffff̙fff3fffff3fff333f3f3ff3ff33f̙̙3̙ff̙̙̙3f̙3f333f3333f3ffffff3f̙3f3f3f333f3333f3ffffff3f̙3f3ffffffffff!___wwwSett4'A x(xKʦ """)))UUUMMMBBB999|PP3f3333f333ff3fffff3f3f̙f3333f3333333333f3333333f3f33ff3f3f3f3333f3333333f3̙33333f333ff3ffffff3f33f3ff3f3f3ffff3fffffffff3fffffff3f̙ffff3ff333f3ff33fff33f3ff̙3f3f3333f333ff3fffff̙̙3̙f̙̙̙3f̙3f3f3333f333ff3fffff3f3f̙3ffffffffff!___wwweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮϮ՜.+,D՜.+,t0    On-screen ShowEast Texas Data Service Times New RomanTahomaArial WingdingsVerdana aqualab01 ProcessesThreadsThreads in Distributed Systems!Alternatives to Threaded ServersClient AnatomyServers Design IssuesCode MigrationModels for Code MigrationMigration and Local Resources#Migration in Heterogeneous SystemsWhats an Agent?Agent Technology DAgentsPresented papers  Fonts UsedDesign Template Slide Titles 8@ _PID_HLINKSA-http://portal.acm.org/citation.cfm?id=502057Ihttp://www.usenix.org/publications/library/proceedings/osdi99/banga.html5http://citeseer.nj.nec.com/douglis91transparent.htmlhttp://portal.acm.org/citation.cfm?id=35037.42182&coll=GUIDE&dl=GUIDE&idx=J774&part=periodical&WantType=periodical&title=ACM%20Transactions%20on%20Computer%20Systems%20%28TOCS%29,_0Fabian E. BustamanteFabian E. Bustamante  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&')*+,-./1234567<Root EntrydO)PicturesCCurrent User0SummaryInformation( UPowerPoint Document(4DocumentSummaryInformation8(