ࡱ> n2!r|"_b9XPNG  IHDR&IAsRGBPLTE @@@```ಲM pHYs+ IDATxBʏ<r%[Q9E*h}8f~wmtQiL雛Eo;)^qD?=t|SS1l-C&LY|L|zLk|52qsWwƱ}q'y}xj:r/1>c|ک8GiWtexd4n^^&s:j81Xp{Ln2ylS<2Yד׽TɟMAq͡z\Kri(Z53<9j>v9w<?2]ƛL'瓗Lu=lǴ-sh|繠v?m&w/M]詼9d2Rfn27'e2cx>fߝ yx??Nw?>+9484841n"21itTbt% CwQ t(u 0X:q/zQs3|󿏿3y'z:Rɕ|m[g3kO Q ^2y|#!J<_Uc?{rμ(utoELjQ {5_wRɕ|߿2'zdLORN_U嚷k3)dY:LΛR7fr5(gW:L:rwtK_M&(uIfQs$T:ȤL~(u-(uIfQ t.A&eELgr [ J~b&]P|W͢'f ìɾA&}njA&}W3أӓ׎Pf=DuϊTغj2IQS&[^T_>EuO,Nt9vQS&S|wQS&SdQS&S6KQS&SL!DuO,N:]DuO,Nݓ]DuOlzQS&[^TETAo{;s׎+{LFeh*Sd_qwkE28-}-}-}B{W4z2e.b]&[dXh[+evo=uwXhϐɛW거͞k17}9b=K&cam^sSdgО"%baK ˙\lTwtn I2y4j&/}j^t 2Y=!B{Lc7]B{L8Ιw Y20 rμXhOɕqs\^sSvtg.S~g.Sdg.S7:vʿmY,gZˠd.-Ι 2Y"}BLַd_.-2W,d}L 2Y"}ͩ]S2/[}97erGL7erGL7sdrP1LT2W̑}}UzA&2L7erG+o>2Wߔ}d);d_qc'T~qLAq'|ϫ Lr7k.O}bevj#͛,^,R2WgG+o:L7k.iO}bϼ2LTL#}MG&2L7erG+oz_Ў>2Wߔ}d);d_qS&wɾL#} |qoUh7eR&2)MfL8 JL%o JL%o JL%n??}zd*?zyꊩ).FP-1bt%2d]@IL:zˤݭbt%2I]@Ix=@$FP"N.$Y&i (I%z&FP,cSMTK/29U T1YM5SdgQޞL< _2Y1Pd55LxmFQG&3I#2LnȤ_w7>2Y+fQG&3y4e#2yUTINQG&7dұYTLJo#󿏿zQ缾o_UkV1A>qL}w΋SvoaZ3jjLgp|UTOIDEO*2H&ITXoJ[yLber#7^,}EE$)*L**ȤL~#^vQG&e;EEϤ㴋>2a?yʻUTINQG&7d绛EEϤkX>2YIk}u]jm3,tWi9+ LME+}dԻ|X*Ж,"(:w/vغb29Ŷşw -"6/-qi7(ܽVLN!mbolr5Ndؼ"Gýۧ_8i(o#[.HɚXYo׉d]fm b}&_)lr ][HWqݍVܛ$8bVtb&w~2طJ;T9;[E29dB2y|Br{7\XԼo}!0;In|7 }L5Myɾ/[M&ؿcTv)|M&Y4ljm-L|w񋦶C[L1{(Z6~qPNi#Ȥs͢i}hB&hˤcw$298qg~ jbOל l,JM?5L.\VڝV&ٹ X8:A~^|ycT΢0w7: ,Otgj7nL.z 4OK7_2RQe^Mǭi=->CEdωNL{.L9qx}3s8/$Nf,>\h=-2CEaϿo7r)}>Gۆn#7Ş0O%n#7Ş0r=3)}Xopd0eoz|/k*, ;{vY}?L}/wɾ0GX3h[A[OnXIM:0{ wh~)}Ea@Gŏ`LmGlƙoƊCkA#Af~zyPvx: }EQL_ym!6/ɾ ;pg0)|w|onZa+ڇxqVy_e2W4p P}50FP Eӽ{Uig_[oBw}(bo`h6rq32W9`Q; mL{6zTl߾[4Hر͋pEE˾PnXDz=+ }Wъ}ܰ[/S2WlU.w- \-غXEeێPnYmݻHYl2TNl-w6_mWŶ#PnZαs3ŦAbK-Ù6sɾbK8M7rۂO4HIlʍ m:,:ocq-ܸtR~D bv|eC(.>?;5^DEmyԇr낯__ZQlyٹDEey+WrL7Hh6Fcn+yPn^z=>%*z;GX2|qoV"kӼwB}W^sC^"kjx~CW mظyY.sքrǂ|;nĶȊ(XNǬ*Bg_?fXQ"ˢԡƏCgָv/eQ[XlMcTo%(.E23To׿o^zo^^mO6<Nd_vg^t"~ϗ7/tz&}}]^Tts㚮_cϾK0d_|W5Q6[>s"FPw'{˾L (U%r sy1-V< S3dr5Nņ疚a5Wiq/gE&b/dVϙ!}Ewed(6Lֽctņ_Ɋ~k2Yd(6LV}a3+ '1.=Eevn_V&w#+n~ac >,fr05S]Kd=6qg 05Su^PvLv 1O ]YƗ= S3U_AH,4̇M&i/)7J.ٷ?/~k&OOy-񏋅_z JL%~kTbW " JL%.'[ܜ|f TbA&%(1Xhz JL%d^STEJd$ADA&KJd$ADA&KJd$ADA&KJd$ADA&KJd$ADA&KJ<6y2,xS$X% (I JL%FP`J.$'(1]@IOPb*1 Tbt% V$1oee>^݈L$7a8yz3%|.)8u)f}~-"Ns378b&18O5}qj_-_^fr~ᴏ:usl>hnɷ{92g%9(g^\3|ǔ2L}&/u_齒-MN_kn2\ü'MfۋZ[\jkv]즯ax'?lw?sjwN}nyuTTb{d{GNMqj'*Ssô@g-炊~.v]rvߛ L&?-'C&?MҽmrJn7pR-MoLhr\ɟ4y^<|l'cz؏oNǓ{M&/ϟL?_qi*'6uޏ~Nj`O|6l]4utM&s'>uAL&>C?vk`Ѵ ܸ4CNJOMD'hr+ӶgAhZ[/$5imMhZ[/AWNܕ/ɿ,AZ=ULSQַz~MM@L ʁ&5@Mj2(dQ4hR D9x4)\]z&D9Xb&9H%O QM_yCyӹz&Cywv4_e>E91޼+V0 /5=ێ F OVUǯR8ĐR=$ppm۲o[ UYͳ K`FekUŽ!_y-ư^H[Ѭ4{aPYuK}چ}yM.^Hk!f쐖6fK[L/6Žԑ^Hxp4غ[?'WHa?Q u,MEU[xaGvGuc2GBw?vl0QR _~%Թ 8_ gykBZ5͉Vh~!/"jP?C#!muտ;_oĿ~{U_dh>uc)6!CZ;NY߷~Y*?f͗'{7;/kn޿Gmj^ܿꄴ:i{3Z҆lzX=`o԰ꄴ6 i+FݒOTo~^!m74^nޝ`? mH쫹>!=( iӔѐ6Nvޮii([wp†f24^Ҫm_^ܭ K/NHPx:n>[ٟ6eQ q iɽʨ !:!m4 =j]>nn'-}?G'[tyy̔ͼ{o8XGu!G}!m'DޒcGHFwqn)W鿪c,~OGbUz:>LH^mjUz@!ҟ{߿1*^V=}KB 'pp2U7MizUz@!NH!K0.*^V=}KB 'ppֻCBZY *^V=}KB 'pp͆__BHU^R88!s88!R88!R88!R88!R88!R88!R88!R88!F}Y1Şnˏ6+&w.|ZTBhUWnӅ#Ҿڟ @Z#tBPW%Rb*!]2U :XJH! zUB!e(֫u)C^CHtBPW%Rb|:& !W׊GJҟۏJH\Wu~+cNqQBSuBb|F2\/?OH/-7yb64IUe!ebէhcĺJH/ntH'3^epyHFZWBzi!z+۬i59񐾪! U[ͳEfӁ䭓߷V(hGm#r=㳰7,W;K9?ҤŹCj?{;q>eZcշÌbZRe1B[Sؚ3tgܐ%'Ur촪Zg !;EIUeJI~~IK&h8!:?oO=c勹A| |^+LHo })bB)ҝ MHFYLHxޗo'Yڍt0!ϲUK+_OHw LYLHwdr \f޻ u5ǛunFH*1d)6W&YF{%lFHJHNL$7JH窄%b*!RtJHY"֫ҹ*!eXJH窄%b*!RtJHY"֫ҹ*!eXJH窄%ba$=^!e(֫FJDW%sUB^Ue_!_+֫ҹ~TBb*!Rt*7?U(_,֫:oH˧sn#GJ#No!`1ߕ?!r^CZ<2U=]ﹸw* zUB:W59|Bb 4e9vxURb4))C^C:غ;rldI/Oz^ɂ[D҈Nҧ%21|yof"K׫G}a҄4K׫ E|3#WiW/B:yBziBիiNw,҄4K׫W!NDK\>҄4K׫!-S~qY_҄4K׫!t iWC="n^fU9~! *&YF{UN754!4!2ګr yb^fU3ub˱K{<Nj7E҈ܣoE^ڟk}Y$8!=(R BE dL_.L@Z>F;UNL)BziO!}\k` Sp2b>iU;Sف' 'G"W.Z#!n_%U_@2Yt7rffC&K i4wIUi'xWf_y~{^fmR\fS 孓'dLJ; l!ܭɕvgM8Cz0=*ǪүOFҞ7z}qW*}]\q|:ǹ5#GG>8ӫNDיJ:7z}?T5{=GA'28۟!v4"~p^ QLHI1&2&/_u7Y ~$gYHv?ik)>[O^Ht=FH7vy9efybUY0URE_򵲯qfHci'/DWfȑs}Zfr-I-2NHNjt+u.&F22JH7Gk!FֱqN!FdL1IH7u>$?CHGf-_g7_w ]w7Mv"Y/a8 ɕSűLHj6nĻ4h&pgD AH-A)ƛTu͐[ӣb!!e(֫dH䁞' 'G" zU iL7=)+ 7NyƓTuŐC[>]HϦ g{{#!]h&Nt ccғ)guiW_&FK&!=bmH*U9Y?ktӄl'Ot597-f4!=jK?'U]/1vUHO1r9c˅0fD1!dĂa.q"Y6[33zy>Lf&df|KΜg|nuX鉶lJ/mfܞ7z}qW}n,}-yG}YZݞI_b|~Ų |~GKeW-ZՄtYeK!3es~JRbUY0UReT:ke']&o>zSd+w_a5ʑVKW~HGDNq9v٧: Z_N9#:tkU=up/%_v bB ƭ~%!T5OF5馒£!ZtK W;`1!PvKY->B%˦\0RMH4 Z΅j,Z0-+ZtrfJ~^|Vz8!2ګ?m\T?٭p/K,*+g:wE"iIU 2mORbˆt[Js[X6XB@Wu>RZWBʳX!VB-z])/Uʄ4K+!e7B!K,]i^ f i^ ),zBzqBeWBf4htʄ4hjc3pBzeBeWBfCZNjY58#ͪ}6䝐GHH/-7yb64IUe!ebէhcn#"iIUw'GLH/977L*h{݌6CHL/Q/[H +,(="YVG1FRnF{$l9t*CtgA;4 iQLH i>$[- dfҫ N6o~~{f:IÊ^2#on15*^D`-IQ| ħqo~fZUzHj+ZI_wq>!e~e;j2CzLBʗ iQݾVNa[fC)#K>$|/VKHGRyHޑ6\|wiŧ:W4(Hr,ħCN|0dVp 8!p|) ? 8t>SNH ŧ|JYnxXu= L7zsVS:1jC*Ӡ UwB^itSw"eH{ۏBnD_9sHv;!#u^HbfBm6'ir_'A;!#AH iVu s>6ڶ :kwB^G*ٺdيt5QpԔ~*NvhYOMH c?}JOO[wIL!/w܏`:ꎇK;8ڡc19gZ'-zz꽣m܏n%IDATxݍzc@P`ov7~Fɐ<[m!U[1:{<]іspw14__M\ǀ *_'6yX K *\LPbӗn-6xc~j6{:Vh?O~Tc:ͳLOaoKyiZ`ZOwi jk!ufvl#2TCl7SS7c=.n_ 241]6sݠf̟jϣΆy q`F}ˇ%R#^?g דI=p?gu6.vыNE,ןKV jv$jwƚ.zIX]]of9%f[$uu^8[E{WD%_ ;|Vx.a*c%Q8zƾm׸x*Nxj?5|A:iUW8umPmRwA*Ϯ9)*9_=: *ˠ^֪ gW oQ E< ꕭT>XP/i{ ^UX*y5\ڬk_QW=5/qʡ!9pu.Z5e˹OJA-BPC.ZU?q.<_§7x(xj[ FaA.urQXP A(,܅n<nTBP7 *w!ԍ‚]FaAaj=G +nTu1nThMR_6Κ$9RAA?Mb KOׅ#ErTP.,1 j5)ؽ9up.A(,3Nޞ6A}E>:._ԍ—ըo456?6[k^v|nVTP *$Amplg1?7+*{ՐvRAƟYQA]/,0 x60|P fO]Vq4Fza:|6#TY#A WU2޹N5 צۤ~Wԍk| ?[㎠s;x:+˟O fB>lɃIa$Ae*.w+=Qi7w}꼠-=#<*sAP7 .kӓnn`P80t# S`8jL#MleJB7wp4ø0TenU%#'F&Q[^d2_z2wT]J^݇͌Zhzlӱs?c}VCWw$Y&\ӡsqGl–Še[{ڠ&wQ KZoB{ov4QU=~SVP:Lב 5 j+ 'I0TA=} |:6}%?CPc`PIecBջh;85om'%^g䪅as׷:û lzRYAv^=&L:?*Aݹ~RA>bLQA+%>~*\X/ *Ӝx j{VțgT"NTKPuriPaiYg7>̦g' yCfTZ>{ A_z.,o}.BfMqomrқZP,\mF]8qglB *G-~];G]os!YΫC^WP9jnn_Oe!Iɢ'zV__~ .*|v<EAhRf^P)EP3ZnPw.*AjA:SwɾAGnT}={o~c}w7?=gMP3Z/"?ł^P)EP3Z/"?;ޤSOl.=ێ׵ʂJ]cB:P )zGPTj҂JA-RZP#EJXZj҂JA-RZP#EJ *yHiA%)-"O=|A-RZP#EJ *yHiA%)-">>{|6_pzjoZw;UnMh#\5QxՠڟۮolPwA ÷0Z jMw"cnӠ6~ ꁍ:~GENϴ1Avjԫ x^绾՞]_RPAtBAeBPsciP~ݝLL p{|0Opg-jr& yT# <kףvgĒF&%62/golc5 j=; p; ӠL"OT>FPQJS>BP3aOT=ӏT7(ݎ?FPcYJ|TP!<*jŮËInU?4On~[>Az]bw^#}pįݜooܛgA^L(On6? ׫_(|mcCէ4Jךj|RTԱ7h>58Amm^\lߖN>0ւJi݆d8ݏ+)>,⦺JkAm[A -%gUMR-봏 jnfy79d4*ApPfP&8 jrHPqA?~0i8[AP?r0)nWA;=ڝHLTɧuO jb<9Ųߥ`W{b[ a4apa!W]njLrvcI61 igə܃Z1a|+97uP`w0A-BPn(EqPjJA-]t3x A-BP#E*yv8rVZGPo>đ"K~J7"^=n_+ϳآaG)j'SN=CFnڹ$msDͿSxQo!rB6vwk~e4&O [j^c6!=W;r$MVc4ַuνܿnjAm28 + cңamO#Kn{Ls/1oXz< |s/1cPI؟oOtW;r3ԟiG& A=ucIX{o3sFnڹ=y&IENDB`nP֢v;V4PNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>IDATxB8QAe&(c{;MmKg xXR9y^^*/0/om~N޶[Vqsdi_Gr/*_ZE\E^$M>ֽjWWtQ;w_i!_| oP5}} k5u_'xow˹99{;m)_-`l߃SvV?X{}7'g/uNuuќ?l X?H o{N{(~M)!y{tޖr])m)Ӻy}RIl~yB~{)>Ki\Ws2/|R,|{iB~Ky"mؼ/o'L0-k/}o~yrCzPG׾(e^>uDרoyr&rO Em^ e)͔_=-ꋹ_/6 x]nçʝPםIOB}9{)ޜP2W _9{}wi}P}.e:&??:֗;7fi޼9+C=6ɺLpCm6[>v}J~dҋ_-ם:רIvg}S_eu}sf^=:PwGRLrm_zǛ?SNKOK+1CSo 5b ,d pEYPϳ%g!K+B=BWz,< Y\y",d pEYPϳ%g!K+B=BWz,< Y\y",d pEYPϳ%g!K+B=BWz,< Y\y",d pEYJ$tʷPyB 5z/)BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')B_p7˟2ꂟr]t,JB}a;}j}QS߽:5ۋosPs+}E@eOG&.?>2i?Ȥv{R]|ԭ3BxB͇|xz %}ݶlVK7*݄.Wtj\MrJ7*DMʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~IZQͅJѐ%+ iFy",d pEYPϳ%g!K+B=BWz,#ɷPyC< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~?esz4]MO~h+x^nC}laۯB=:3ylBe(?P{ϟMYPEq>e ~7$ԇlP"/&%hy)Qe*=>}[\<-i-pY/7|_.Wh)+ȓ尉KzXW3:mK%TC]j-o+ˮzuV_Pg5.厛붇2ΙՔs.rxl;Y_wݓ<יO^Ly ~>ҥR򝷞>{ro0i-udgxuYQ*\>_/}j}]_Y}QM۲mTgnu{xv(Τt\硞hC=Ez*9P[w_.e^2nޞIכ{}mizw |OC]LQcQPm^ߥS$}t\nr=Bφv05-e'nI :r1JeG%G&$uœ#χ@:Giz4Xiݑ>m/?Y~^Χ7F),geE?}w"G-R;~g*J?jz^W+*N=ҾZ^ ㆐_ 9)BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T 5@ʣP')BP< ~B (T!7*P7y|",d pEYPϳ%g!K+B=BWz,< Y\y",d pEYJ=(փ\?mF? ޛAgR5~7P'f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TF%f&TFLs/ɵ}q q ]뿺_^wC Ttw[BPu#=U&zy)oByφz}#H {7Py޳^frGw{Bލ Tdε,mҜ5v%Zν/`Ns>i^n 7Pyޓֳ/rSnPTn 7Pys%QOO/!=.3/xO7Pys.rur8Jj7z\B_s}on.u~F*{*ԮX+q }ru˷AN_dy{!8lDP|\&T;{vNN' Dy-uzdR=d_wYӴ뻝#z x A7IENDB`n<-,5Sy]ZPNG  IHDRO X˂[sRGBPLTE @@@```ಲM pHYs.><IDATx뚚JQg.{(g(Wtzfv:E*nfw4]_;g}Cn1u>/ uz2tٓI u]χj*tf6ު?-;P~NNOQMCg}zzQ~iL W]Qf:lf/P5'sR^ܕIiʤs%I]N_T+%W&8T9?__}[{~?յB8q!2c+yP!JwީB'w ?oӮ T["(+v{/bW"(+v{/bW"(+v{/bW"(+v{/bW"(oN:UWLwfqQOZkrdTZ,>=Ċv\jurYIEP3kx"zuLuyq^F[5*dX?Z;V'?awl7wS*բ}GQ}hT;ɢɗ? QӒVrgB?x~cf^-rt$f#vfE4Z\oDfӽ&{P΅ZjZ|vCLJ燬0YodPn){ZOTE:3LeLGh0-j&VBr{n잇GǂUg3:qYZ[x ,7@\P.8XTN^i|jr`3ـɢf~n~VHb֡ż2gPWŬCMSN^u}\ʜ.^~8Tw|-Io稓?KWgꉧ8ke2yo&A߀gI uhb 9NmoPv}%rTE>>-^ nN1jnw<BwBmV}b-Yz}Z_c8^jSB]\ByQl|/dp(X ~ ͉}f}?u5@y[ݴoW{[P Νn㵲4-jwPϽq|ڢOAy_{Ay_{Ay_{Ay_{Ay_{\ſl81yL+-l swTV*7ܲp|ubOq>Fc#Zӳ[swM'V6oKw^WRl%8Z[n~Pھinpw \foypvwq>6O~>o: %wg`9'>iz4i:1X|_XY,>0~y*iG[oq*ޖÏIO,kQljֻ/]n|T-?}x &?/wk.AuogmAuv6Ǚp>{@:\NGo3H6ZH:\sq>>\oӗ[5B'B-n_:Wg=׮Fy4(~^+B+B:h9hV:\03?!hR+hnW=gܡVTjO^=9{o? ;񠺵J78۴qөEO8|h7깱~ڻ-Z4vў8}ǚ'~/n_xMm L]U 4[9zx=ך]ҩEi9 in[I}x]D{jm]]4>󝎟%/wpŹ-ij?_3񠺾Tp2w:uh|=}ىx'ZkN%TDں'oݵi?0s]|Z妸T᧥~ZqqoviqC\FN-Ԕ]Қҩfh}p:`{fg{OPjz=nf̏)V߿ɇ7n-{;Դb{M4?̲뭚/Qgf5RHVϋzr5Ei}fTkԭ3 CM1ֳX{d^E_gM/TycWs]6:cOOMu>d;f:%Qg!q,}ߠ^e~]_g秹ṡ:K{r6;lԬǮ.OJMijgvep/I5[ fT'}=UeK3.< ̟TM2KݨÅ4F_.j%bn8QHSAS*TnnjԎujAcP)+4ԁP!P#*T jTJaɑWG}_]LkS̈́_qcRB Ͻ?ťPzBͮTsfWܘPP U܀P U܀P U܀P Ul߮U-v:YZ ;.> 1c9?24w7cIunPtﯛYIpNaCV|ԈnGf|8)_Q:IiNuu vK *WZT|Vu&Q+-3HwB\MCmݟj#Tdo냥/LfPsԪʄ~bY;k,v*; uPsQ\ӟ.|jWyݧ> 5 ov\'K<. 5 ճI 5sf~.P8 Yߦʆ:Mr갵B"o:_Nsg%CMP*9T\;}3QO}3wdi*9jzZ5˥TC}+PșPs'PPBW9j;LUյ'?D \Po dR?/rKW!ĝ.׫֗K_}2wCNg9w9qQdٜBmZ.PZ^mPܶ;/ͭLosKP7B\Y5o5~kE(?P P P P PfP[LˮT3n=?)r\˅=hTJaBP)LS* 5bB0FLU|#PI3gO7'*:ꧡ^zqQ!TrB*7 TrB*7 TrB*7 TrB*7H/ 5D4R® iuꓗvBmvw.~*.qsA `j-T~xW' 5>xU{(z|'&Ԫʅ:,m.=[/ǟ|4^:گBzy&"mҕNUZi6WMgR8,GK˗gJ\5}elxQ /xhC}nqI,oX^BPCC}kBmJ) hojd>ׄZ.~1lF[xӝ3 ˳W& }jwTPNB}L~>f5/{>*/! KA ԾSvW?>;/OyEk}P?( =Ӽjz4x: Y㩐mRZ7&ߩ}{5U+#_Vʿq|ʤO8>}=Sχ SQ,j:.3ݿGG>_{C%ƅږG}6: %|1T-N&M Zڽ j:jCjl;'P+W&+n?Kn_;~ꏅzPYP~].w`/stsP :KFbC\.A1ԫ P#pSP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ &|ԠAS"S_.h* JCv(޳ 1SljTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URX~WosaoMGdu>.Ѡo}fJi[{s$BD}KufMeHq78qWjSOES߯s烮8 GwڼjFW6dgr)w? `lWmwwZZx6BMZZ~e3ԝAukBqLy'aP}dIP6oC] z5Pн<Cyyfm~C]3[_ +ڿLf? uxrQ^[`SG8T"jTf5O|B]n}S 8j-iV+lr 5PĉQCB]YNUD[?<>S@ۡ6B_r<e+ԭAO]Ej#T%9jϿj?GKݟZЗ l^?C[i2fv\1W'B=݋w^\`mnj~Fz[ZU|I~6*b>9g8 1b}R=I/IGtlB/Յx _dR*|ӦIp}" _2yՓG9F{Q 7g&)@15hTbT{ %B['bUB,FLU&Ԉ „1URP#*T {ebt>cϮ[gsiZM5+S̈́_q{ +ZZo<u\qXZoᜮ;]0: +7SwTPƩV\dj=$K? uf?|'KCo Z]CI|K'CڬC}8)-NZCNڮm0ni5|/rYUn?OP{֙PGqǒ7CcP#ig0L*`j /_,}!ԿEeBBNڬVU&b߽P5S'T.vxۡ枣VPZo:դg08 5 ov\'ޟ%dO&[+T.r.C%}ٜ?TPۡICV\PK 5sD=}ַ.jZmPȩPקR&yyΞ{l<>x;;;YeN^i;NɂS6UP C}|!T.r&ɪ2z#aBw9j;LUյ'?D㮽}ī./ ~'*9p]6J㷚<}3+& i'/EgKBmj3{y2۵Zr÷mw osk^x[P*r7o:k8jE(?P P P P PfP=L_j&ԍo|/rg˅LLU&Ԉ „1URP#*T 8C|s1C=}.99PW_9jZ? 젯LUܑP U܀P U܀P U܀P U܀P ,>"MA:P3_*T~j?ivP>Ć *.vNR u6?íB7~x惌vO 5>x-"vR}fK+MCMTjݤ[B]Ll _(C?uj*~Uq9}gq֗ߧ|ScC}vEBYLJׁGR/TP ^IP-E<3a {rz x "/wףTvPWq-.V?#nUz"׍U/z~uP?t6_Vo>:wտkwP5~´&;PMa[/T egjӼз82P}'ݭsT~vUj *( v[[wBФc;+Dz<'NBZywj~.pj3'hzw^9Z\a?e4[Y˔ǏRB[?b>SHǡV2=~{rJ\ɤPlIZasUp%N%jtru_G"B1")jT([n z*PM6/!ϡV}PPQ=2N^B5hl\`jzL&5㊙}:^BosgUt4ׯLmoP@~QdO=nɝIoq|( „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS*uXASMEz#\/T()h*\y9Wر Zf!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~@Ku7W}zǿG]_/BSk_KԥX _Kuz _ ~@—jCmPK=|OTORKvOWz_n@pB*p7 Q\7Z_]·P<= ЪQM%LG~_PR/T(ne"F]Z`И'TjTJaBP)LS* 5bB0FLU˼?bnͥi5L5j~ō%T 5ťPSnL_j.K\AB*Tn@B*Tn@B*Tn@B*Tn`hi=[8qai=zP4dNݝSMwCmkޯZri//$OE3wt?P*e=ķt2Q:Lj8dn:IiNSV*WZT j y},Qx3~q19 =vT &RB[T&j+d9jUeBm+ ]A?~Bb7j9j u:AF^MzCMPPoZ|2_roNYdRB"B͜ ~=YݗM u8*j!6慷 umn*9|F+8K\ďbX P P P P xk^[ 3Kl-̈́_fBݸ*x\˄>hTJaBP)LS* 5bB0FLU&Ԉ „1URƋKχ^|eГ8UrG^t>Դ͆T U܀P U܀P U܀P U܀P ,>$*MI:815{.&5]*T~Ï]l?P>l~[Z _背~'-K{#&K[o2 "ԺSwBMӏ2Jݷz+vR}VB7n{mBmazR!ʯsjU"a'7˩>F*~UqeO&jUB6_ {<{& gu2)_Q7^)j#T~3]꣥3af^Gm\/!P!fK.TBY^BPTPW)T9PUg}~qj8p|% |P0;;^CËv}QzíB7:yM ߮ǷLBGP P P P PfmsP[KB|B4rF*TnAS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ &|ԠAS"S_.h* JCv(޳ 1SljTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJaBP),uz.Lp޿;hjm5V榺7?E?[/b uwz}|u"Ծ0~TsT 2X<{*:q>~a^4}:ti~Qj:eng{킺Ӧ׻S[~J\"j{ø~[}wm^̗CM˱fV;cPyVFP]|e+jOB*ȜIWM IG6rP֙P_?hjt2lP)BPc^9P'hzy`F\a74[aAO< uxv6PaDAO<< Zz|> u1cBL>GC :a!1 _| uЍ+T ) jjrojPkU.!gM{{{ r?x 7.!t.ʟ=o?h~??uQ~Lx:Q*mͭZM([ostx%dw9יK?*WȟiOiF7軡CL6 rۖ0h%TGDLU&Ԉ „1URP#*T jTJaBP)LS* 5bB0FLU&Ԉ „1URP#*T jTJag}l>jРTS^/ J Wjbn%v"~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-M C4~&фZ`!P l?DjhB-\?nu7W}zǿG]_U֔:]=`tH%T~<=o ~H]·zX"·zY?*Mzx[ WSP 7 T>T'9 70/|ʤ$^P{y ܁ nL;p]2P4MqIENDB`n^M|&%5V5FPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>IDATx݉zH ى,-.(f&QS?FD-(]8.?k͇m.n n\j}vϧxns|t1:feWoB}>û)bN|IScsB-{:"ԏ/;Y~o/:r<צ?FP^ K9C㶑:niΟ ߞN >-O2Nv1*@:n,~R2,Y6>d~IC>Ǔcb*aM iΟ-PoN⳹~qq1,~|7h 9B}>E:}~ TtB ^G^~QP9bz3ŻPw僋Ahܞ9mee6?}IvӋAB(++t;F^Naξvv͝~rCNoMwBt1iMqNwO S1)z1;BzNR)On]wfkS<3.i 觽[VhwC!ž;wnG2F#kNBS*#NBS*#_kgZjB%@Y#f T5P jB%@Y#f T5P jB%@Y#f T5P jB%@Y#f T5P jB%@Y#f T5P jB%@Y#f T5P jB%@Y#f T5P jB%`X)/:vЅJfj7fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP I uxe'ߪߜwUe@eOB*sUqP&-<{2P f 9A?]]_%3.a3i@յ3L*mT-TC|2UJiXٓ}}E+֦}}7 OŒi(" fE5C-B%Dj*!!O-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" e8xgIxIb~JPF*BA5k ԬJPF*BA5k ԬJb':Pr]Y zPP jAPB弄F*%6P9/y TKmr^Bm#jAPB弄F*%6P9/y Tk-Ԯ^߿<@񳕣`I+c)Pet]k,o^|p u9> u֦X(H )O9^>u9> u|'?xsr-B%dPme9 ubۨC>_/n}pu9> u8Hm7k*!^vOL6|kH!?m=:]Cuœ _?7p4˓;$-PwQi|ƷxH6i{ҬeRg8|V6W)KE3LVc 4K~0缙on Wfi .N0a;g?P]Pw>õm mÇ;$u9 6u[ΓZJȫP_K2 u9> uEz1BeW/C7ϻڗۭ"]wPLq]PZxxOb?_ϴk^ٖOCmB}3E :I|ee㦟Ksg:޼ʟ;>m9>k{&Nq݅:E{AԅZJP64+;c:CWVᇡ9ǡ..L oS8B%PgO?Fmr^Bm#jAPB弄F*%6P9/y TKmr^_BPsR)j*!Bm#oPB弄F*%VU^k~^*Ի9Ee]{PoEluzP'7R ~D6eOqs)j*!Bgd~Օ=?Q;`|?oB}c1J`B4a[El ux?=#}{nHs)_z?M"2Ժ:)j*!Q' uĶ޷ר7s\C56jy12=3-ϫ|uv^G6jy>E?O~ZJƭPw7&=̱9;f&ԗS"TB6ݏ:o-/@_~w?~XnZJPv ~Pαvu[} B>t>ḆV߾q>]|yT^Mv㟗C.9t=:m9(ԯ/ZJȦPvnXm qP VIDATx݋zH ٍ\"|;c ĔQ_oV_e_Oͧ\ e `˸ԺPO2f6XO>a:OeS0|go/PO2fӛaǾaBs]NozVg~.|2`_ 0Z6 /@edPm#eJsYB/xkNsnuZu4ryp?r'[? ׮ycҫ6ore^^7&8BҖ2L|)}#MfX*#~p;C}8By?ꫛ ]]ԳP.~aG)C]l=fC]ȅʁV+t\١xnJ~)1n|w48b} Ͱ~軺1:oEY< y2EFOng~30A[ӉPoB ?.7_-O{7=PPzUPz_?Uz2\7Sپ>~3|tJo.=_Y7^JiB6,MSCJPq"?g }.^_O,U& ]k7v^?kg!ӵW"TBjOiCΟ.dtoN,Pǝ9uo%j]jY_նÿ"TBNj׎|xxxu}j? uzIx*! u uX 5>U! :oLZ.yƤRBM<X qGVexFK:_>OXo]v[}kVM^:NM^gQ=9sy?jmz_qsLG#.}-ILZtsdxrIV_3Cӎb u<&+{p︱ɱut}DZ${"ԔP jE5e"TB2q*!BP j$ B%HJP3 f*AB TA 5P j$ B%HJP3 f*AB TA 5P j$ B%HJP3 f*AB TıP I+4c|#f T5P jB%@Y#f T5P jB%@Y#afsхJfj7fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP I u?ovSgpJ@nZ /$ɎZ-B%$7!~RP3\9pP/'~/oSb?g\ө~C{'Ξ?$7!˟7ө~*rnx,n<9\G?> rpD'ԮfJ49nNve鮴wOYNprP=u^:]?: iqF$:4ZtB-#J[}UeSeQP 9s$o˳IvlCgI"TBBù=&nEIaɡΏj>-Ea{Pз]K?GYVe˝e&gB]@vW[Ne&pP/M#v1i<5qjm[^Oe~y?LOZ.W3;U=JarP-yzdR-Ke#(u~x:rX2;cr0N=bPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB" fE5C-B%Dj*!BPP jZJP3"TB2%4C~ X7vB%@Y#f T5P jB%@Y#f T5P jB%`XS:Pr]y#<"6P9/y TKmr^Bm#jAPB弄F*%6P9/y TKmr^Bm#jA׳Pe}-SO.^?'/ѦίE< uXFS٫Sw/PwP-Wlk_Rk*!C d%=G\z~[Ep4m u~1ErŃ Pe|h9׏O=/`|%s|o6+.ZJPWKrN?ag~ns|){ZJ֑Idz8O[ YnQwPǯbPEx4DžyHm0\aG_PCPsa y^:CkBݞ=G]~BczY_ڵJ)j*!o:{{mU,|e߄z;u"oeEn:osZJ32֕>Q;c{ȦoBc5J`B_4yLQP y'NkcN鬾tEs\%_ZN1>~kZJț ݄:|dza۷޷Ws,F?$/E^2_2W4[_W9˫^G9jygutkc}sc}St9E-B%Oϴ %6P9/y TKmr^Bm#jAPB弄F*%6P9/y TKmr^Bm#f(IzPP y#{j귝1P jB%@Y#f T5P jB%@Y#f T5P jB%@Y#f TrA.v~̍0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P #0?P {'aEm.Y卵_ov=og<2y`_wC\V ۣNʻnޑ/^>.nZJțnB} ۣfߕվv~mxλ_Po9[x90/oZJ{Nr,Ɵ91 _z7G4Q~{{"TB u. '/o^\Pܟ=*ooZJ[vY^ӛ9.9t?:m9(ԯoZJ[a5VP OvQP y/bja.PC9.ooZJ[ɡϑ׷G-B%$rôn~xED!v9ԣEx)G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aB=~&G*aʃg5C]Frb8o;c ԬJPF*BAdzS3P+'XB6f_ ԽoBf_pڥ?;Ob b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b _V/^A2 f/_}51n(p YBDBS*]PzIssyٗl??:$:gv_ nLcß]zwwP*i72N)ǹvI~?={mC<㦤PLCu iPסz yP=I4cM_uJmupiv xދ:W Y8wM KI82-?8ލ{`~~ZmO͞gx{Ҧ3IENDB`F*Nт۳ Y*JFIF`WANG2 CREATOR: XV Version 3.10a Rev: 12/29/94 (PNG patch 1.2) Quality = 75, Smoothing = 0 C    $.' ",#(7),01444'9=82<.342 i }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz?Ѷm:LREQEQE܍L-QMM/L3NQLy5=XMqq' X?|%bVX?|# rgK6 ¢G4'  ͷy!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(((((((((((((((((((((((((((((n0q]WAų7[[PNG  IHDRO X˂[sRGBPLTE @@@```ಲM pHYs.>/IDATx[v:PfۻH 6`JuB6 TUDY- WWX!\]3Txpu> WW,\]pu> WW,\]3==Q\]Xtѷ󎡸c#tu޺N[ :z:AGP A&9c CRtڠw6Ji::lMy$0] ܅rR)uwCno24hڻ=BAMRPUm?ugI/G!ޡ}JŠM{x~'B$'ڰV%`A}S=~vн'ۚݑr|vL<8!]XVã*= j&LU<\jwn5>sfq!];5&#igtɞ75&GFA,56& ZVw5.VycRlnnVu*bL+j:^GMn M(~FUCPIUj}eI|OPsa vOƠVY__[7M^ 촔7,K yӠ޴ZmPǯT&qS:}]*-|ګ;= tD *710z&qA}S7>/[ :z:AGPo]'Au#t5 WW j,$\]X$IHPpu`& "AMe5 F%vxw *ԇ%5\]*(c~.۲CyB2g%IuN(PMd8U6o*ԺyS rAosxQ/zk{UkR. "ʍ?!tqE?!tC.BPyp`s5zxA!)|r#*_ּ{v[U +*5f+7 W3 Y8:RiRPͦMmdLcVPH8&欽[GFw7iPA d[^ɻˣ=wq*P3Vyg_7q$\0ly&Wu;F5˦IA<uzN7@ЖWsrPxMU6ٳyh=j!|]ƶujKԺYTA|͖ӂ:ZRPɊWJ|kQbg{"Wu{vۏHG֓u<]H.|ޗ5,ffUP-T갷ǣQ^~%M>!Z~E$sB_|æ7&U-C {PA^2Тfq_Ԑ<|PZ}K4u{߷A^da'TqHx45N33Թ먂\!a_?Y܉dQ74iY:cGiPoKM&N33ԟ&]ߦB5?hcߦ'qyB_ڿN_̝7)(Zqn~N _"5Nt_P6J!eDZu͡o5ԐJM;堞37kZ}q`6 a _ȂZ9jVnL$'87HqⲬO4Nl_:[WWi_Kz8ܷf惽GY+E5~]P{ϵ݃z<ܶbގq;y=R1noǾ}Wn)(2أ`PCj,^+=UPypˢF-T ,JPa$ܲ(A\Neke2AP^@YZ@YZ@YZlWγpӲ2NPO_l' g ͚2׽ )@y^ڏ6.J8e Kk gnZPa A=e2,RkP n8 pJi _ VC *lV VvtA5 jH?6C>(+SLPA9 *|#SJ?zBZh>CP 7z% An\^imIqyvZ^(\hJNk~uZxE 7-nkԫk j -Y`hmVZTWFk{gnZkŠ,hn6X>`*PX}u}5XSkPJ;`*P;_Mk_CnBۥ]쨡5nhfu#焠vم{4 j^T^80#Iߴ_?Gݎxxb.Vw!̂f6 fV7sU\&'ȋem6rvpA"UU j^:[і:KdzOY-kء.k_AEP_Nmu<ϟ_0^C!k~Ӡ&?I *%Ѥ9.2?F͡lPܟ% Ž>5 j֘bhUf8܊˅F] L oE5)wx jN԰$c}qzʦwM\Ԓ†K?K:3PʕA(9|W3A`w ㇂Uo#/ժŰR L*&l)\t HY{7ssϴa*^uo,}2)kN2n(8J0pYJj_uKi[4~=T鸝(?xAعVq@P)f!\Ü/m?8se;' AALL,k=nC38v.8L,}\PL]Õ$B6Y6L6BB=LP phfC7pB]g⨞inH¦٬[8̗f:L_1b!Ajy{\S~QP&mzvۂ:Q39nFg٣V8)qw}g'FȽP~̕Ԑ-ZU,CPC}U/aSPƤwjmMzI5jxqAts٘Q}^-7.fnI׋*8uafU8Bnڶ[j&p1ijv!gxɬ3M?B3),m%_vgٯ1cnusvӬ3ac],kۚKnE,TA" %BzfAiϲ 0sIP>sE*e]GMg:jvs[~TnaP-_XVW(+/-L ]?yϤ;3~5͂TnB6y_J__շXYe_uY͊%kU5.ʠ. VAmD{'7Nw>4W~Vp@P9Hlkl0\]֡%S,5 י j#0(P+)vTX/.OPpyZuC6Cy *JMP8!ԍwO/('u؇azZPaA([ܛ3ih~Һ?~iTB>txMό$Noi6q>9#A5*ԟq5*|6:VV Q8(h*1̚U__xnys8bK#eV_x/,kP_Tb92̜s P{O%pT8L(VaBԓY}Is6kugG T JWL }; )V,ܚGM,bRA/Y}P_|™bQXPy4j?A/Xݮ4&#5OEdkT' jݤpAj`GL<"TZTVMjj:oL*qoVuv4?17a5 n\eVU32_GMmXyPWNڕ]MT&vxiLdVכw(Ժv_L:TgR؄sʨ=/猏,V!9 %*<ov:;k&eGN}tM4]G:j팇ȠۤBeTdRP4z&KR44G =BT7 iºbL_W<V *\b}$::T]}֠ *ltϠ^SֽVA-q+pT8KT8\A}U/R-ӄ˯݋CPy%WW686'nl+>& J];rxf!^pepu`pHW\~0R{Ց/Oswާ7{޼]],S쭯㄃T(c PP8Ժ)*-fb&׆֓6o}}m]jkNqzCT((/ -PN8*ۗ޲xA Woҧ-U(.)ppp{'PPG7.=#E7NQ4[ESdՄ\eQOd8I(VcT6R.^MuXPCT(ܬl1()9;TA %,\o1*(I_'pBN" sDULu6ujtmu pA_37=B0ƻ۲.g&}}b}}vkǎY weDGUn I8a\ հc=Uo':p ?{Ǎv.WQU.X%Q녫c+T;f[75\]ݞO bSTw{u`>s_ӟ׶ߌ%9x$e5|,m&T3}CCPy +^ܰ%}*p A6 rϠ>,oXUAR%V5h3_S~n:Q>u#lOj~w1LD3qfm65͵ᐆ$=l3??mPaDe-" ڤƗl2pᆙzCP s[}4Lӏl3M{>/uٌsd4!T}iۍ?+7n"?[?dA:.\粟7㢛S/IE4i)M#ݔm2:~M/A!l3)}PAdvQnӵgz?ɩqi7١oԦTk+/h3A j?M*NRydUP_wGķ}Pw4iЕAh||M 1)1i zg }Yþ5?ú|j-m|Լշʃ:N^ݶ-}o8Y̛+*ZhA.A^=Zm c_#UVկ{"R]i76ClraM'fb(++j탓-ӽ, ŻYPSGIoxfGPIo1|xAӞxWO5y *Q]gl4Yr_(Vg܉~z}i1e\*|6t2/T֘蝏෮W2U^onF-WoOiƏ;_XOUj6t-|sإ j6{^P'A M{6S1Ut_!Z"Ϳb~KPmSkc`V }MJ#߇W'߷_6O oԺIAmҡpW^أ}6hh5. ƕhMHmݳ^òz6W(u}'a;MWutK;pllɮ%ᾲa$I1k:_|V6*6Jq:+5tB6sߪvY:N#5_~3xhU<.[ea1{TUlrXpDZ 0Wj N ݁ۨ$\ql쮮G? Bx:\N *.7I!5-LT8p0Wt>M * j'     Ph]eggق +1뮠n vw vϪ- =<r[ݤU7s;Wg#Wv#'Ig~L4Ad& g7hhҙpT*W$P*U7zehʂ 'RIs3ir[qb ݍ0qɤ3qᘠW^RP8Lֲ:0 iڠ}PZl/ *|i7u<֘pwW%ݶ׼j4a ?|x_roэ//_ WW x!jnfIENDB`nr-[cE8@IQPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>,IDATx݋z:PxDK];gF+MG]']߮rdzP'WP馠BՆ,ϜB7na~GIvӴH8GAoq?u1H9}OSstS`miHGP>kk[M!o;}6GA]xssBق =u՚7İYfWP4/i#Ոar6iݺaY7~\8w\ jۍC~m[[Ιjn>n3asqGPD/i#ՈarjaŚl|vܰXy_gk1UL5^o:;Ӳ.N˚}AMSssPӼV#'x1/ueOԟ5J?jޗ?M5w}7ۇ4Y.{⴬45|&xIAF Qqe=e&w6?j>UeTs>jL;g/BXiY+jGM6Z&ݮ.׽cAmkU]=5Q= ^FPds_o6sP_ċſU|rxs;תa^nmxMEqfh3?.N˚}AMSssPӼV#C=A5{zl_X>n F3._U5Zcfkvq<޲YBk]sfRꚿVL6Z~pԸu:|\-sSezqrk^qzrysrُ.97u+&}IAFdjwSPbڭ(6"eEv+HY݊b#9*RVdjjڭ(6"eEv+HYy@="q{{LJJjqҡɊb#9*RVdjjڭ(6"eŹc)+M*~mC5MEoڭ .GA%nMop> *y782[Ql5݊b#,8Vڭ(6ݞ7782[Qlv~or=b#.69]ڹUjzGl־l[#g*RV| |ڕj$}P;ADXYzhfn% feV"6ݫ1[}ԭ]ZĖ;]wtZpgѮn9On3s_O{˻-_/؏aVIso{Vi-bYvqE oD<Ϙ:dͰ5mϓfnnyo=t@EH-nݰ i2ĦqVnnv^[/X޷6LzvzV~⁊Tf*܃ H9dmi-nǻvG#6͸]=9>~lHpH\q#˥{Gt{jDnNwΫ/cby݃w;GA_|CNƽuP.aPnl^eEP] D<=8T.S*e~e|nPJh're9. ~O-~ ^y0)AƲ<4g|djEAX|аyOx<.Q|PӨ}71A}}8"mz<={P_G>Gmu8<8jqx⁊Tg͡v̤~M^ W̤ahg<3pP_Wk=u@E>oe~osy<7APW-vMs}㹋+q"{~O?rr|¸u״(O*%$^oꕠHZA}RQlɴy|=H YcMuP|dj*A}VQlQ+*2j{ҏ@ETFӖEETFCP/x>Ϲo*UFPu}>W(6*~[]wm8WgߵV.*RΎ7vhKqΧ uO?RlS?!! }޿l *uO?w+|̻(T[k}ih^{EAm|qxEj.#|yo]SP/0pp^:ڿCPB9ݺO65Lnob4Yƍ^Kee >'>ӭOm 3^gfrlșOD_[mP_4[nLz1:8QQfN0k+n ~ jMA_9biԫ9#Qg.%9:l ۶"aOPCM}j=}0]ys6}DAo 憩Y[|1]ukIVLCNf O-_.HXޞB5idnyɆZ걤_^uQۓaXn:V:G]QN0U+~\3c)eŲ~0tot3bkrfҗȳf88}ߔ/OCHxxq7yAնs=NR,L_0r6A-0jme_XTf)QYۀԂ Ml/NP݅+]?s\dSz%2\]|uO]? A.>VHd|xw4T>&ʖKymוXkpWSKT~itJzR[j՟$EυԲ ];/}6O//*_'ё؜eA}VPVU-_?SBPo8cGSsp8\]k)O~,+ُCЏBN$t;_m* 62y@~7Ny886ݫF W-|,H&:oy}2Kz׼=H6zq&(P,Si۫+h Yy}Y}T9/r ->pm*A2 *z.ү+z]Tzߟ̇~܎zY>w-JLPOP\78?(w-]iOD5W A5,G pt.r͗Sr/M.>ZׄxL*_?Zж[N+G YA  M:[ITOO?Z|ܗCڽ>Ꞡ&),6kn K~kKpqNF!BPSC'Nlϑ״AM A=C7`3ˎow8iv#Q=WS;G_/q2%o_qU\EZ!_$2}湬FluN 򷂜~xuγ 5%_/e)?CfW,BڽbP•be^OA}m'GW jq-ZFP/*?j?0M 9ul/"EEvu&cŤMp=X*2+í_u5L &2/g> !RL &Q^UdjWP7K/6?EEv3WZKW濬uznag'"S_3"QI'5>*ZJ nO/zݣA}>1?-I"1L{{skjk|OP\bnWOA1LuA8]plqs;x_ͧx&sPMbw js73.,|GPYta<&sPorXz 8yX -[jo/Nw1 }Ɨ~5arj-}C7xނ6e͟iYN-QF OcP)eyYsp*r5潧.sj=njA}Q0yvuX۾+]@0YlùכvkO\j,>iavOPqja(<[% ^ >vf>զbn5Fnq-Wbc0jP˦CqiYs8%|d q:=4.]~fR4LG<\<<;jN>~O65Üs}es}i7A/8wdPW\&2[SPwhrH k,YV,8.2{͠c^Adj/>n~ڭi%۽5qx}K5Lִo>n ZnM+>X=kf'!ݚV-<|kfƗڭi% }|w^.T\+ڭi% }k-ڧ;_OwlcMMo%,/ncK#ktv?aʧb6Qs*R[ ?dLuNEAUr7܇kзb<5N7Cy+_X-AnMY`}TL;j ꧟GDv r MsQ ԋL!mmk5U)*2[cPUׯAMt"S5Ŧ|zmMMDvkMzwhGdjؔX7Ae,2[SlWX| pHdjؔXXEvkM*_/ڭ)6+~`ڭ)6+~eDvkMWb"S5Ŧ|L|1k\߼~oonMkAR4 z]4}}Px<[Y5z\b+y6`d53usͫ0҅ A\AujI<I>=p5oEm͸k80Ons_-sYoWP_ԼSAKsPsuSD9׌WvnYch^;ԧc(7׼vP }x}[?c8yF}yM݇vƦ90M w4k~+U6 +_%DFpx:}0#bfvE6ռJy}.t{ j4]!ރͼ|2b{ ó;ԧϛk^w%޾z>~x9qAtAػ]ڠ ꖚ]w#]&on갖 j; 궚W]۽WA]=xhy{⍭h`gaR ^WSˋ قzbyq KSˋ_ P5L>[POU,//>F~ IEv*s*Lˋ\.DvkME'nM)_xsO3N=T/f+/x[m ,ŋÇe ?(~jlIs7W|gEbs2qRu}?1LtA΄(GADdjfnE35.݊b#gdk]"SFP0Dv+avLVA=#[ڭ(6zF%2[Qll KdjfnE35.݊b#gdk]be^Ny}2RO7}+q;%$jUq_xKuA=YsoPO_ y[خyV$cP['_}LͯYʼ-EXdͽA=c~n~5*V o,A=YswPϽ_ y[V1^cag]8ުNblvY[?S1MA=~aʊyZ k8 t>Ǝ4wg0'+O`PO</>ϺPXw_߯'ÞNMfԹH3WVǂz摠xIwq?Wjbe}iUYív1R""2rtxC_}ϕX\nZnVѐ_u.| ӹG*y0G_}ϕXMo4ЌM!tA]W?fI5K)Պyӯwԯ>Z5>V8"<:z㨧^}n{Ô++#rdim8헭 x\afIS5p%jʼ|q6՚i5䩍Ƕݽ<:Ov~~+;^}ϕX7n Gۦ{A6vTE#|6ԓ/>JhA̛Nn? )-7yq6vT0fc|?{y9S1M=AM~:3V28ya<1uHtzLt><ڄ&7'_}<ϟuUlRw݊b#gdk]"SFP0Dv+avLVA=#[ڭ(6zF%2[Qll KdjfnE35.݊b#gdk]"SFP0Dv+avLV?9z'+*"\ȹKmy(B-'..P@aHT([{BsD1~w톏6 aSO?  ͡Ɣn56[ 1c&Hm}nCH~+Esa^Oݩ)`}6dM;p4OgU&׹jԸ?>JZY[6ݛI'|FPyKvǦ[luM_ AA̦Sǣޖ &M]h &Abx]#gPQ2:Bj4MgMAL}.Ѧ}Tg&At|CLwX s}Ȫ{}f5\lgj~/ Ku9(fW:0rCMSj ɲW55{MA;YM*Ǹ(T,4Sͮp`l~M)5~ j}&mEΒWS-_Y4n~$]J5m7}f5fY<0J׶-iJ~-~ j[Xw4ԯ<ݡhPA5uhP)6z=n j.j'c؟); ԰雱6}Kv>6|&TG}ĨoC_s(YW:8jΒxfRѳg>yfR$h\nӿpoo%O}{5{d? Q?WQ]ԯ!j5>tͤ,ͤyqͤo~BX>/NwNuGDF;IENDB`n$naݦ,ryPNG  IHDRO X˂[sRGBPLTE @@@```K- pHYs.>$ IDATx v8@e"f_dWN1(Ee'yKuw< *\ ^Tx A *d jUտoy)bP'l?tAL)*\-57K|!#+pL˲&}PӉe7p4iNI۠'? *\-V}!p#A ]P. H5o1JV_u":* j q3hz&Ҡnm& n20T 2 24O?x Qp2ԃ8͐O;AO2`ܤl-W˭7 (ge Qp!j0V(P6GIlC?VѷF}PJP᡺6OTx6eUcDSPyhUbM(O 7+U%msԪ{&73A__O*Ļ߫zPޱWۼXŞݠ*5NɨUKƤ/r?x;Jq}`4݋U8h㛚UYb0KbpebXǦ4/4U.ʹ!9mS~TԲFi/f7A :vb] f͆ϖ _7h@UboMw7)ewbCjbk2f?ɚBP92WuǦi%=NS.͋IPcӫxڮ?;^t3ayVٶl}諅Є8ʠ&mQ51Ag. MyIPèN aDPg$wRMK7kxLteʱ!iKPƤAg۠/"q*Z}oܺ5Immd]X_g< |MP\GM﯌VIU7O\G amsq8>YT}92y{L/bpeYgR2wrvgR\r>V5mM}s׷KA}[zS!G}}ەUn} VLQwȇ#,qP< [GAo"O;NV߱Nֶ3O\3KNiXDX 7q_P -n*!e:l`haxi;ԡGE7Y|яxy8{ Vު:M;upnh<2&3h0M?GR=ꦛ%.ޖMG֜PIݰ"?XǥhEA4c1iPOhُw'w`dۿJ9xA3aeP=A-iZ>2B∖Ur~T ۖ4.,Ϣo7C>bi7.BKPaf!]^`Ԥ1)jҝakPӄVZȃ><24"}sofɠZ}ۭ EטT׵&As LMN|rKs=cj51^xms2q`R?~4i#Z?Q7k:j15' o{&&zPĮ{ ׾GdϤ^3uŮV*b;1VޞV/>u9A/&8YoQ Howqf׷SvjvnNKP;S` lLJt=DGO~2WGv_ډMU^ 'xVc7ćν}qPO4\n5|sPk*d@P N mR{?\s=GGFl>mSjۚNf8#jY jB4nVsIƪo1Um P?-S[6_TAea3T^7}_4& [~ ׷)6ms8Gu6\Vߪ_̠(_tmxy& &~E E#WgfTַNYr0W5,,D5tWNЄ9oa7dԢUֺJ283]Ptһ}b羾ovzmCҗՓX#XێMA 9{dysb=AuPe oiʓ4  @ :3-,&!Y`pr%oz̤PO.wIڔXAGl}(sߍWcgrŷzzP_Ƥ<=_?{fjuV?YM]Y|PeÛ^=3É& *. ZP}PvA]ISL]Jʬu4곿oX mv9XFLٟ&2)N~E5٬J?L*6Ab4yFNwP,ͨHfge%vX.&w",z'&M|/,ENYcc6j'7>?,0WG-/GT9e:a𲫗Q_.l9G}I] ;gX侠6C . !pvҹm<ӷ`[-<7X7 iq#ƥ۟wo~3iۮakp-,Eշsx_ԪgFgZ}4}o6wtʗRV9yHWi$Qw 6ЃiNÎ0ܠ='$ϟiUĦgR~į l\6 )6WglH:|C[nԸi[}߿=}(7Iҧ/EAM&^H( jB *E{5)IA-bSm,&-l}PX +SCM";4&fkW]P仂08rYP?\Y\zA6, ]WzڠvsO=8,oPAm1v9XqGN x/_6I:ݐ:AeSoeズ{UN{fcJ, Aݱ^A*cUN js_W.ڍ>Ulre⫆uP۹/X+WVP੠[~ĠvÅU|L?z`8tjPͺ8thЕzQf,rv$8(eߤ$pCZ6β *v ;"mcRMPG}F ]o!!A/IPuBPaQPŞIEԦqIPaZ}cR *8lϮJFuAr AGP#\BPT.!*}K>%uAr AGP#\BPT.!*}K>%uAr AGP#\BPT.!*}K>%uAr AGP#\BPT.!*}K>%uAr AGP#\BPT.!*}K>%uAr AGP#\BPT.!*}K>%uAr$ wTy[ݿo2U޽pLwﺿ%&Sݻo w!en2 A *d@P! TȀB2 A *d@P! TȀB2 A *d@P! TȀB2 A *d@P! TȀB2 A *d@P! TȀB2 A *d@P! TȀBjF{k j-/= 3n mѪ9N:yKR辬ku1x>ܓ'e5FkcWnFOX](߮jMT߭T HLgmAʏOWe}w"4 m(Z9U*ϱ<0G{Qu S,a V.w٢WDjaPm CCb'oYPSڹ͛qD + ͊ߚIyXt A]PyU"^?5M$/+?^H.m\VëN9NmaU_5_zVx 5WKڲ^ _SK6h9r=ra'Jo`wh/'f]Aُc~\9E~|*\u-9;V%l+MV_r%?n\vYNs:k $u.l$!.TV wRa1;ˍ 2%YȮrpwȃ"v @uRD?/]r.sHe~|zpwxpw;`^0/]9h?m19N^9ͫ *od8PCZnNYN=LnTȀX ߳ ROQU;9 *S/Ű M\]/ٿGP_Kk7bspwVmP:_uEni9Y5ql#YDZlⷅUwBZ Z5'ni9>M\5ĉoQ3p jt6/Iȷ1)?\"=c:\O 5TĩMϤgdoTi$c_ߢZ6ôpwxpwe..?cxVt2l*!.-9pwh)>>>B<>B<>B<>3"O -0..0CP/9w w,.pw~* Mn0\MP%,.o wL8IW w)9G *mPepw~Q)z=OY)[H*Hl#)+6y?0:i]8g:H҈.Ot9Y)w'{p%DuW)]AF*-ܨSVK.s o:qS OoR9rC۳\?~G goy|r[KweU#/YxMd{=&5nbJ6$}N z;o?)ZoJ[*Ʀ#KEAu`i]D_1lqQ].Bn6iTX 'aʨgߺ[`QzPJae̳QJa/niRҡVU-}蒅ywo!HYGep:IENDB`(9( &/ 0DTimes New Roman(0(z[ 0 DTahomaew Roman(0(z[ 0 " DArialew Roman(0(z[ 0 0DWingdingsRoman(0(z[ 0 @DVerdanasRoman(0(z[ 0 "PDHelveticaRoman(0(z[ 0  "@ .  @n?" dd@  @@`` "  v\*     ( *,-oKM+N.O Q RS T U+VY"\ ^acT  h ik lp=qrsUx$$$b$r|"_b9X:!b$:Y"ՌPNG  IHDR +tsRGB PLTEfffm cmPPJCmp0712 7tRNS@fIDATWc`  SP1H $XLIENDB`?  O =R* IntroductiondDistributed Systems Goals of Distributed Systems Hardware and Software Concepts Client-Server Model E@Distributed System A distributed system is a collection of (1) independent computers that (2) appears to its users as a single coherent system. e.g. NOW Workflow information system WWW:$~$faGoalsfTo make them worth the effort Connecting users and resources make easy to access remote resources & share them in a controlled way Transparency  hide the fact that resources are distributed Openness  so that they can be Applications can be portable Different implementations can interoperate DS are flexible and extensible Scalability  world-wide connectivity Scalable in Size - # of users/resources Geographic span AdministrativelyZZFZ[ZgZ&Z Z=ZF[g&   =GB Transparency3Kinds of transparency Degree of transparency4Z4HC ScalabilityImpediments to scalabilityIDScaling TechniquesHiding communication latency  avoid waiting for responses to remote service request when possible Asynchronous communication Reduce overall communication Distribution  split a component into parts & distribute them across the system Replication Increase availability Helps balance the load May hide communication latencyVc8\Lc8\L  KFHardware ConceptsLGMultiprocessors Single address space shared by all Coherency is easy but scalability a problem Solution  cache  now coherency is an issue:$,.$,.MH<Multiprocessors  switch-basediCompetition for the bus is still an issue Switch-based systems? Crossbar switch & Omega switching network&@*@*NIMulticomputers<Easier to build  problem is interconnection Homogenous  System Area Network Homogeneous nodes rack mounted and Interconnected by a high-performance network (e.g. grid, hypercube) Heterogeneous  both in the nodes and the interconnection network Problem  hiding heterogeneity is hardb-!hB'-!hB' OJSoftware ConceptsOS for multicomputers/multiprocessors can be divided in two categories Distributed OS  tightly-coupled systems Network OS  loosely-coupled systems From a NOW, to get a distributed system you need middleware@GN<GN<PKUniprocessor Operating SystemsOS for distributed systems and uniprocessors are very much alike They act as resource managers for the underlying hardware Provide a virtual machine that hide the intricacies of the underlying hardware Part of enabling resource sharing is protecting apps from each other Dual mode of operation  monolithic OSs Microkernels Pros and cons AE( AE(   hc!Multiprocessors Operating Systems0From uniprocessors to multiprocessors  a natural step Protect OS data structures against concurrent access to guarantee consistency Semaphores Monitors&SNMulticomputer Operating Systems&No shared memory  communication through message passing You can Exposed message passing to application Hide it through distributed shared memory*BRBRVQDistributed Shared MemorySince MP seems to be more difficult to program for Distributed Shared Memory AS divided into pages Pages distributed among machines Performance improvements Replicate read-only pages Replicate all pages Weaker than strict consistency Larger pages sizes ! potential problem of false sharing |MdMd`  bbXSNetwork Operating SystemVarious machines interconnected; users can access remote resources No assumptions of Homogeneous underlying hardware Managed as a single system Pros and Cons Harder to use Harder to manage Very easy to scale lU;2U;2  [V MiddlewareRemember the definition of a distributed system Distributed OS  not intended to handle independent machines Network OS  does not provide a view of a single coherent system Most distributed systems are built from NOS + middleware@0~90~9idMiddleware Models and Services0To make development and integration simple  adopt a paradigm Everything is a file Remote Procedure Calls Distributed Objects Distributed Documents Services common to many middleware systems Communication Naming Persistence Distributed Transaction Security Middleware and opennessl>V+B>V+B  ]XComparison between Systems gbComparison between Systems b]Client-Server ModelClients and Servers as a model for distributed applications Layering: general organization of an Internet search engine into 3 different layersc^Multitiered ArchitecturesThe three logical levels ! many physical distributions and potentially multiple tiers Alternative client-server organizations0~=b(e`Modern Architectures2Distribution can be Vertical  what we have seen so far Horizontal  distributing the clients and servers themselves Distributed web server. P2P system:a$a$je Hints for Computer System Design  ` .T3f` T3f3f` 999MMM` lff3f3޲` eoHff33Ҷ` ff!` T3f3f___>?" dd@$?nPd@ d " @ ` n?" dd@   @@``PR   @ ` `(p>>   F(    # lX 1?"g: VCS-495 Distributed Systems (2 f  s * "0`  T Click to edit Master title style! !  c $  " 0  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  Nff??"  Nff??"?  Nff??"  Nff??"?  Nff??"  Nff??"?  c $x "`  H*(2Z  B޽h))? ? T3f3f___ 0___PPT10.[p1q___PPT92p22 aqualab019    '(  ~  Hff??"A  0hK "   O ,   <K " O T Click to edit Master title style! !T    "   TTAOff??"  .  T$EOff??"  .~  Hff??"A~  Hff??"A  RA)\ :?nwu-seal-gray"@)i%   # lHO 1?"g: VCS-495 Distributed Systems (2 f  # lPK 1?"3 o!Fabin E. Bustamante, Winter 20042" 2 f' fZ  B޽h))? ? T3f3f___80___PPT10.[p1q" 0 P2( "   0  P    Z*   0l0     \* d  c $ ?    00  @  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6A `P   Z*   6F `   \* H  0޽h ? ̙3380___PPT10.[Na $(  r  S PO O r  S QO   O H  0޽h ? ̙33  ,$(  ,r , S  O0`  O r , S `O 0 O H , 0޽h ? ̙33$  $(  r  S O0`  O r  S O 0 O H  0޽h ? T3f3f___80___PPT10. Ѝ:  #*4C(  4r $4 S 0O0`  O r %4 S ) 0 O  D  *4 #"6* t JO  4 BO?s D  :Hide whether a (software) resource is in memory or on disk;;  @` 4 Bd?s   U Persistence    @` 4 BPO? Ds  u+Hide the failure and recovery of a resource,,  @` 4 BtO? s  QFailure  @`  4 BO? D  ?Hide that a resource may be shared by several competitive users@@  @`  4 BO?   U Concurrency    @`  4 BO?0 D  ?Hide that a resource may be shared by several competitive users@@  @`  4 B0?0   U Replication    @`  4 B| 0?oD0  BHide that a resource may be moved to another location while in useCC  @` 4 B80?o0  T Relocation    @` 4 B0?Do {1Hide that a resource may move to another location22  @` 4 B+0?o T Migration     @` 4 B40?D j Hide where a resource is located!!  @` 4 B,&0? RLocation    @`  4 B@0?@D FHide differences in data representation and how a resource is accessedGG  @` 4 BP0?@ PAccess  @` 4 BY0?D@ W Description    @` 4 Bc0?@ X Transparency    @``B 4 0o ?DZB 4 s *1 ?@D@ZB 4 s *1 ?DZB 4 s *1 ?DZB 4 s *1 ?oDoZB 4 s *1 ?0 D0 ZB 4 s *1 ? D ZB 4 s *1 ? D ZB 4 s *1 ?s Ds `B  4 0o ? D `B !4 0o ? ZB "4 s *1 ? `B #4 0o ?DD H 4 0޽h ? ̙33   O G -8 (  8r +8 S >00`  0 r ,8 S 80 0 0  p `  -8 #""JKKK$ O  8 Bh60? t  u+Doing routing based on complete information,, @` 8 B(0?`t  `Centralized algorithms @` 8 B00? )t iA single on-line telephone book   @` 8 Bl0?`) t ZCentralized data @`  8 Bt0? ) gA single server for all users @`  8 Bh0?` ) ^Centralized services @`  8 B0?  SExample @`  8 B0?`  SConcept @`ZB 8 s *1 ?`ZB 8 s *1 ?`))ZB 8 s *1 ?`ttZB 8 s *1 ?  `B  8 0jJ ?``B 8 0jJ ?`` `B 8 0jJ ? `B 8 0jJ ?`  H 8 0޽h ? ̙33  <$(  <r < S -00`  0 r < S 0 0 0 H < 0޽h ? ̙33  SK D(  D~ D s *00`  0 p D H _P:5A?Dz D  `01? K IMultiprocessors(2c D  `t01?B 2Y HMulticomputers(2c D  `p01?3 \"Single address space shared by all#(2#cH D 0޽h ? ̙33\    H(  Hp H HpiJCA?L)$r H S 00`  0 r H S T0 0 0 H H 0޽h ? ̙33\   0 L(  Lp L HiY6/A?)4r  L S 00`  0 r  L S 0 0 0 H L 0޽h ? ̙33  @ P$(  Pr  P S 00`  0 r  P S `0 0 0 H P 0޽h ? ̙33  P*T<(  Tr #T S 0`   r $T S ` 0  p G i *T #""G i T B@0? i k!Provide distribution transparency""  @` T B?  BAdditional layer atop of NOS implementing general-purpose servicesCC  @` T B8?  T Middleware    @` T B?} i  p&Offer local services to remote clients''  @`  T Bp.?}   OLoosely-coupled operating system for heterogeneous multicomputers (LAN and WAN)PP  @`  T B\6?}   MNOS  @`  T B<8?^ i}  l"Hide and manage hardware resources##  @`  T BDI?^ }  TTightly-coupled operating system for multi-processors and homogeneous multicomputersUU  @`  T BR?^ }  MDOS  @` T BpT?G i^  U Main Goal    @` T Bd?G ^  W Description    @` T Bn?G ^  RSystem  @``B T 0o ?G iG ZB T s *1 ?^ i^ ZB T s *1 ?} i} ZB T s *1 ? i `B T 0o ?i`B T 0o ?G ZB T s *1 ?G ZB T s *1 ?G `B T 0o ?iG iH T 0޽h ? ̙33\   `X(  Xp X Hpbc2*0A?\  ]9r X S r0`   r X S z 0  H X 0޽h ? ̙33$  $(  r  S $0`   r  S  0  H  0޽h ? T3f3f___80___PPT10.P\   d(  dr d S 0`   r d S  0  p d HraLFA ?6 o XH d 0޽h ? ̙33P   p(  pp p HU8EH+7A ?o +Er p S @0`   r p S  0   p Z1?"` Ch  PCPU 1 references page 10 2c   p Z1?"`- d,Page 10 is read only and replication is used- 2-c H p 0޽h ? ̙33\   x(  xr x S 0`   r x S  0  p x HocLFA ? ; H x 0޽h ? ̙33\   (  r  S 80`   r  S   0  p  Hk\oJGA? ; dfH  0޽h ? ̙33$   $(  r  S ,0`   r  S  0  H  0޽h ? T3f3f___80___PPT10.:+  9+1+0>S*(  r A S 0`   q' ,;  Q #"6* rrrj"   B? ;  B  @`  B#? ;  B  @`  B,? ;  B  @`  Bd5?  ;  B  @`   B>?, ;  U g) Openness    @`   BT9?   B  @`   B$P?   B  @`   BX?  B  @`   Ba?   B  @`  B(k?,   Xf) Scalability  @`  Bs?   B  @`  B|?   B  @`  B?  B  @`  BX?   B  @`  B?,   `e) Resource management  @`  BH?F   B  @`  B? F   B  @`  B? F  B  @`  BȺ?F   B  @`  B?,F   dd) Basis for communication  @`  B? F  B  @`  B? F  B  @`  B? F  B  @`  BL?  F  B  @`  B?, F  cc) Number of copies of OS  @`  B<?  B  @`  B?   B  @`   B| ?   B  @` ! B?  B  @` " B?,  ab) Same OS on all nodes  @` # BL(?B B  @` $ B0? B B  @` % B9? B  B  @` & Bh;?B  B  @` ' BDL?,B ca) Degree of transparency  @` ( B@U?  B V Multicomp.    @` ) BHW? B V Multiproc.    @` * Bg?B _Middleware-based OS  @` + BY? B V Network OS    @` , Br?  ZDistributed OS  @` - B8?,B PItem  @``B . 0o ?,ZB / s *1 ?,BBZB 0 s *1 ?,ZB 1 s *1 ?,  ZB 2 s *1 ?,F F ZB 3 s *1 ?,  ZB 4 s *1 ?,  `B 5 0o ?,; ; `B 6 0o ?,,; ZB 7 s *1 ?; ZB 8 s *1 ?  ; ZB 9 s *1 ?; `B : 0o ?; ZB ; s *1 ?  ; ZB < s *1 ? ZB = s *1 ?,  l R  `1? Pp  a) High/Low b) Yes/No c) 1/N d) Shared memory/messages/files/model specific 2c @`* S  `Д1? q ? Le) Global central/global distributed/per node f) No/Yes/So-So g) Closed/OpenM 2Mc @`H  0޽h ? ̙33_*  **<<)(  x  c $0`   ( ,;  # #"6* rrrp   B? ;  NOpen  @`  B? ;  NOpen  @`  B? ;  PClosed  @`  B?  ;  PClosed  @`  BX?, ;  ROpenness    @`   B?   PVaries  @`   Bd?   MYes  @`   B?  T Moderately    @`   B,?   LNo  @`   B?,   U Scalability    @`  B\?   RPer node    @`  B?   RPer node    @`  B ?  ]Global, distributed  @`  B)?   YGlobal, central  @`  B2?,   ]Resource management  @`  B<?F   XModel specific  @`  BX-? F   OFiles  @`  BF? F  RMessages    @`  BPW?F   W Shared memory  @`  B`?,F   aBasis for communication  @`  Bi? F  KN  @`  BL[? F  KN  @`  B0{? F  KN  @`  B|?  F  K1  @`  B\?, F  `Number of copies of OS  @`  B ?  LNo  @`  Bd?   LNo  @`  Bl?   MYes  @`   Bt?  MYes  @` ! Bh?,  ^Same OS on all nodes  @` " B?B NHigh  @` # B? B MLow  @` $ B4? B  NHigh  @` % B?B  S Very High    @` & B?,B `Degree of transparency  @` ' B<?  B V Multicomp.    @` ( B? B V Multiproc.    @` ) B?B _Middleware-based OS  @` * Bh ? B V Network OS    @` + B?  ZDistributed OS  @` , B ?,B PItem  @``B - 0o ?,ZB . s *1 ?,BBZB / s *1 ?,ZB 0 s *1 ?,  ZB 1 s *1 ?,F F ZB 2 s *1 ?,  ZB 3 s *1 ?,  `B 4 0o ?,; ; `B 5 0o ?,,; ZB 6 s *1 ?; ZB 7 s *1 ?  ; ZB 8 s *1 ?; `B 9 0o ?; ZB : s *1 ?  ; ZB ; s *1 ? ZB < s *1 ?,  H  0޽h ? ̙33\    (  r   S  "0`   r   S  0  p  H m[^S>G7A?UH  0޽h ? ̙33\   (  r  S 0`   r  S  0  p  Hk]3/A?O~7H  0޽h ? ̙33\    (  r  S K0`   r   S L 0  p  H6naDG7A?P m /lH  0޽h ? ̙33r"  !!0/Tr!(  r  S \K0`  K  ,X# D #"",X# K &  fxK1?,Xb YFault-tolerance  @` $  fK1? ,b OSpeed  @` "  fK1?v, b W Functionality  @`    fK1?,vb hWhy it helps?/ Where it helps?  @`   f\K1?" v# XImplementation  @`   ftK1?$v"  S Interface    @`   fK1?bv$ V Completeness    @`    fpK1?" X# eMake actions atomic Use hints  @`4    fK1? " # NCache answers Use hints Use brute force Compute in background Batch processingOO  @`2    f8K1?v" # LPlan to throw one away Keep secrets Use a good idea again Divide and conquerMM  @`    fK1?$X"  r*End-to-End Log updates Make actions atomic++  @`&    fK1? $"  @Make it fast Split resources Static analysis Dynamic translationAA  @`L   fO1?v$ "  NDo one thing well Don t generalize Get it right Don t hide power Use procedure arguments Leave it to the client Keep basic interface stable Keep a place to stand .c3  @`   f O1?bX$ T End-to-End    @`   fxO1? b$ i!Safety first Shed load End-to-End""  @`   f O1?vb $ dSeparate normal & worst case  @`~B  No ?,X,xB  H1 ?$X$xB  H1 ?" X" ~B  No ?#X#~B  No ?,#xB  H1 ? , #xB  H1 ?,#~B  No ?X,X#xB  H1 ?v,v#xB ! H1 ?bXbd8 &   E   B B ZD1?+  B C ZD1?&   xL &   F# Z  B G ZD1?+  B H ZD1?&   xL &   I# Z@B J ZD1?+  B K ZD1?&   rF &   L  B M ZD1?+  B N ZD1?&   8 3  R3 B O ZD1?3 3B P ZD1?8B Q ZD1? B S ZD1?v vB T ZD1?v4 vH  0޽h ? T3f3f___80___PPT10. rKU&!O( 09EE7WG0O[ZsK``LPSVDX[]b e`P #Y!d D? .0jOh+'0Ux   , 8 D P\d IntroductionoIntroduction to OSFabian E. BustamantePabiFabian E. BustamanteP43iMicrosoft PowerPointP@@}@ OQ@ PGSg  )'    """)))UUUMMMBBB999|PP3f333f3333f3ffffff3f̙3ff333f333333333f33333333f33f3ff3f3f3f3333f33̙33333f333333f3333f3ffffff3f33ff3f3f3f3fff3ffffffffff3ffff̙fff3fffff3fff333f3f3ff3ff33f̙̙3̙ff̙̙̙3f̙3f333f3333f3ffffff3f̙3f3f3f333f3333f3ffffff3f̙3f3ffffffffff!___wwwff4'A x(xKʦ """)))UUUMMMBBB999|PP3f3333f333ff3fffff3f3f̙f3333f3333333333f3333333f3f33ff3f3f3f3333f3333333f3̙33333f333ff3ffffff3f33f3ff3f3f3ffff3fffffffff3fffffff3f̙ffff3ff333f3ff33fff33f3ff̙3f3f3333f333ff3fffff̙̙3̙f̙̙̙3f̙3f3f3333f333ff3fffff3f3f̙3ffffffffff!___wwwüݼ޼’ö⓼üüޙޙ™޼»޻ޘϒύϑϒϒϒϯϒύϒϯeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeύϑϒϑϒϒϒϑϒϒύϒϒύϑϒϑϒϒϒϑϑϒϒύϴϒϯϴϑϒϒύϴϴϑύϑύϑϑϒϒϒϑϯϒϒϴϑύϑύϑϑϒϒϒϑϑύϴϑϒϯϒύϴϑϒϴϒϑϒϯϑύϴϑϒϯϒύϴϑϒϴϒϯϒϯϯϒϒϑύϴϴϒϯϒϯϯϒϒϒϒϑϴύϒϒύϒϒϒϒϒϴύϒϒϒϑϴύϒϒύϒϒϒϒϒϴύϒϯϒϑϒϒϒϯϒϯϒύϒϯϒϑϒϒϒϯϒϒϯύύϒϑύύϴύϒύϯϒϯϑϒϯύύϒϑύύϴύϒϒϒϯϑϑϒϒϑϴύϴϴϒϒϒϯϑϑϒϒϑϴύ՜.+,0T    On-screen ShowEast Texas Data Service\!A Times New RomanTahomaArial WingdingsVerdana Helvetica aqualab01 IntroductionDistributed SystemGoals Transparency ScalabilityScaling TechniquesHardware ConceptsMultiprocessorsMultiprocessors switch-basedMulticomputersSoftware ConceptsUniprocessor Operating Systems"Multiprocessors Operating Systems Multicomputer Operating SystemsDistributed Shared MemoryNetwork Operating System MiddlewareMiddleware Models and ServicesComparison between SystemsComparison between SystemsClient-Server ModelMultitiered ArchitecturesModern Architectures!Hints for Computer System Design  Fonts UsedDesign Template Slide Titles,_0Fabian E. BustamanteFabian E. Bustamante  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)Pictures+Current UserSummaryInformation(DUPowerPoint Document(1DocumentSummaryInformation8