ࡱ> []kl\za߿ߝXo( UUUUzag\Oy Ek( DDndk )b+/m׼PNG  IHDR58sRGBBIDATx^I T/EQ'0l&Dt`"+ aDht uA45 %S Q(RݷUuouZtoW:=ScK@"3=MMC_)!`|MLWq %)j|552]Ɓ0[8הzt5RB`w]cƌVl),bײ_~IqjAhu*תY&0zC~;xW^y|󍮸~=~ /͐ 2XzUW! tW\r%}ݺb Cb?㫟>ꩧ|nM.\;gΜ!s壏>SI1^xk0aq&%j|'N(' i60e艀1&O}lwg4uq}8 P%V`)XЩE|USW;v|K.k?[o/^zƍ^D5.q$aΝGͦ8$ڙqxWޞd kɠ$6/;{T#Ud:tn>*] ]c9iErɄJ"JGGPG1&2*`OQOۤN('y*EQ陓%RNTZ|R~4|+v.fqP,(Y|m? ׮]~/SaT:Z=-_|Æ @Oaya>3`4@bv{gэhe_.r>s?mkC =Hu͚5oe_/S_0!y9趘෮0ztL2E)`{ ;U[06m/_mʗ pCbdG.voݺU~>/iA;^1/6XY;:"}i)_yTaM &0-g v$\^U A@X}iy͋/'Ƙn_3fk;T$.2Lh"c#?S0!_ rzD2/9&!]A.Ql;`>}\X￿4|8`a<~]6дx%[ UkCpplQ*}ӡVvxhؾ$3=Rk;LC4i_S&3!;2ghڨm55W:^{ce65|`2V&_Q3Ϭt"! |ų(^+K>CRD3Hųlb}BBU祗^Rb-h螞kw.z۞"쓯`_'|>{Z"ZV_Dϖ#TKy+Rh'9ӒN5 w6PWL_hZ|%㣏>) Z:U|2@Cx#Pm'Uʎ` :Pw5^*u#XPFt:סKe{5h+<+ k笩du2:Y_c#nA`0_ͳVώ+.!BU^fcW-^X;Hp@;VP0$ Em2 Ď>MoD6 65#4\K2ƶVZ)_}`mĻwOzW__̼B - +Nst0zn5L76%{'L54ASw@)/KOJQ{jM(>_(K,.i4$` ɞA&/,Y@=碋1\d^4g!2udbRLi6"vA.lHWd.HS2Xv!-iexoGu?4ԉL*袋+vb8$i~rE1&MwNhXѦhW)1DE_DyUTٳg;mH82Eҍݻw K B?~<.ݯ0ϐ- ZRXWXSA6 P{GykC?*p ^/P;o$Z$PaYՇv8R)#UK,) E^qZXvRh:SB ަ.IcWAfE,`2}DkS[oŷ)A=ƭڥn?wBSVR>tcqze~ 0 G<+{$`w^K@%(o,ALDsG? Hi\tyjssxTl)^ѧ#Zqx`ܜg>+qҴ6*:0UZ9˶lhRVR @n4BXǂ~Xi ѤfC~VxYAREڣI)f<[V7!`{c[7e%ԹV/ꨵJiSfdH?~ǁ}HV<+ ,nZ@b|?`s}~?0PjaSS+66||!\aX[æ W !La,c# i-[Ǝ²>+EVNccey ^⪲pq9TBPe ԩS}Y:}ceh?U-p9pbV㪖X[1/G\UpL#u!/bBW:$\ղtqe?X[j ӧOgwq,;[F$ ! 8UXE־ʣMuwn6D\U+F&3ֆ +2*W5hp@xemckzQAWjZCt"S |-XwlE9Ȑz. FfψJBB`ՍΟag0Uc _ 7l U$W$Df;JNbu_\&hZJ$c:ɾyfwVc`.C\Ll{e)+qQ޳G} :s*[#:AuTH 5ݧjrW\Eĉ!ֲ$Oe)R+3<ݑT.9EWͅm۶U'WT*q' /`9l9XQA/y:=g4b\!my `=`X/ !$ar- So_)!*_bf_q7LxVD]+c4;v4 N-]4?b2lz˚PRzL'uY~=iO~eΖ<VVp˘?{JKCLH}iznf^h7_XdI/ŒY Hu^,["Y*-qa a7nlaJy$Won߾]Mby^y|W^Xw9B I3}7xΑ?~Be&׫uՌjхe˖/z={6k -6ȕ=P-} Ê+d5yע-iR""O}~zֻ&MS,4|_}iB#n#vo`5&D5C `@TMf(5!0@dB YkTMf(5!0@dB YkTMf(5!Q{n:IENDB`n <0iQzPNG  IHDR|-!sRGBPIDATx^]{lVIF !"RR\c?x% *`R*6 `HSR46@E0RV g,kBI*˛B ,lnG{sC}=sfw~w3gΤw]#_.#ЁyEQ:y"Z>?WfN9;- 0c38!a켼ϟn߸qcƌpƌSSSߟ={j*r 'hv0 u+m.QyMcOgr! _cKK ~ܶm8hCvƅ'_|(t3聆"Ckj̝;wڴiq'N=z_~::C$86OcAn_#yGq>~7}nρ+/X .$_q&~΁***d={;w˜)..1bDAAL069.COvƉ;cP7z24_~ڸ7 OTz?~<Нȫo>8>E}'gϞmhh(** z$~SqMދF<5y0K2@y4"(Z̼gD}}a>dHG">322#e`+YVV6إ1x_RRiBq7۷i1@h 8X0!Ȓ,+TW8H«x<55nw89{DI{0C]E*k)8Ș;7n|L\zW^WIK4HFí[6o,#i[Kl2) u JOK}HOFKZA^ W N+V೹GčFo]7ZD&Lx5YayAF!V~K Ǎ$%HiI&wY^ | 4#Ν;ݨ’N>>g6-^`9C >Ȕ Ly)\FX3^4 +W=jݳiyj;x~5CKaoc:uʽBi@N~߾};z." 0^v KD!K=S絇.\`<stBA6Yf 02<0'Ǘ⎨uhs \ lj:@ B?+X]0Wi{`*5XlƁF0 1~ǎX O2E^ Zmח?||{|Si[[ _Sҿe/Lug`&S׌=z(fo0"ܽ􃲼'zxb\9nyht oN>R!QmoӱV\o-zׇuO/}ݿ57H-Aacg`h6 LC\ 1S#UqxLHrKrKeǬbA Ғf{h 醴֬X^-h5ΥK}'>pi_m{{td/#>k|;I/:uo(yNRyFA듧A?ۘ-9S0C>-Ͼ\WL4ދ%3s8?yxL9KZx/XR@K Tm!؋@6v?>&^&XkG 0ኻ)xayNxe߾[P U9$R1c̖/|Ѭ=줷3#oBY(PG<~i@z'њ#Ya cǔAzzIh)O|"+WΟ?o Ҋ8VWce'Oȥ!"&1k׮ݴiDh:%u"=@[P1?'O X[`}潑wޅH-ՁGGz)^6Z"6h4~9r2zcfňaNӘOrw`Ybl)H\;OSo:QI7lY 2{'}x ''vZ(VQ }y:thyP_3Nbc7b6S{WSc 3"}yvH!Fe2WHtA}893g |NIk@}89v֭[>!#CZH{2Q492feL0dQaۘ%cHC%4Res&7+ h 7'0ー_uuQztM`޻nXx>QurFzC#UA4yk"m7J@!_#3MSVKsB4*{-.&-0CԐ4++K Uq3!j|)G吚ⰌD(BDS2G&γ±!%IzrC@}aӒ=kj+ޭ1g̓$kC Vl<۳zjc,m{W ˜)..92eY6{%,H $mAӗbD'ȑM8hkI87wfι3g!s8|̝022򙽒oϓ_Oj0ÕJNڀSg2f "[ MABQ M!@HEBn4 E=,4i zX  h $@*r )H(aT4)HSPh@S- Rр[ MABQ M!@HEB>!yO>}!Fݶm7n4i^cKqvC\O5kMFESsQ5SPiMGFC }zdL$@E ?cy Wx:tH2}EEŋ#zzzΝ;('=@>~X8Wmm]#?po߮C/^$ȇS*zT8i;w~zժUH'-(pZ9TH\GdQm. N>}?>{8Z[GE'OB d԰scJes-fK, VI8~p5R$ 2d߆KRI^@ȜsDвWSSGKv0$JU  `9E%+++Q]V xWhXP_kppY~ NL \6m0Yl("(&aBnyEiM? 0r_[cDy":aSKXݺu&O7~s:oZu(@2UV(٫(C@;t" +j@P/ȵŠ"P:gK."T9JUvSW+>"fT'E U>|xر ,t?ٳG5k*%d} 6cǞ{9~^t|įHEPREfԩӧݻ7}֭[wUի /#Fؿ4 sν {oHp'N> cƌIªD0ݕ+W76m$KYD'N̙3PȼWe4(,!EC裏lY) ɶmF1mB c6gA)c8.F߇zȑ#5T# !ؽ{w C2-C%rϞ=vZHmI'B{mq^7fZ9ب1|E աik0/͋'@ft;cɂ(2e+nR"<-"ȯWzHHϋ| CA>;G22)`]׽W-B<|(P_=Rl㏪IĄ&DB/۱vJ.}IQ?}Kd/(iFRyH=4Ox_ 8%* >P`(t""4{ "Ɉ,H9(HqbɇI^m@{Fb/lpF2Z a#h6o9ZrDd ILaW'(3xbh |n*8g&Οn%YIDWx. %78šDX:;!k*խB~v޼yヌ~[n"l.5ߣG>c<+n3*TSXv1x5Tu(6JRjQXXjBxF J&?Ud"-jފFSB@>-d"-7{gK'8\$477{+2L7%Kt%SSL h-.*JPpǰ񃨡d>W*x#WfAH%.cJYTXi#~npjffYPkkk>}B%~ƌYe ²A)y{{ݻwpwߨO7)QPall͞ O91\W̛s9K\adn"yi? ;N<۬8q7GK +/0OfU{gc[nkbCr- ۃcdǏi2[[t 8Hb|^||ha1ٓF{ܪf8s Fxm3۷o$- ,#fCMiT:w= !+̵oF^1eѡ|+c~f}~5s<|H_~MMMQ[ᨵo#H.?G2ƖPG 8й微(nmT : mȺMªgAŋmB!VW/m<̷\:1W^y3\$,F|Xc>FȩÖNJ-7fdͲbY&˩CNJ Qhl9\xE%5{2hY6fz{e/}sePgr/WeO9SϋOEjΠTB%D@6j2{$ eEPj P|\F&5Zdsky8=a)w\Z\qlv1Vk'xㄓ RP¯sq[J^eǍgn5 6%/VO.>Xvmz\)"ݛT׺%---A԰y+sH_IewlyxIDcKNN'c = 'I;gmC>T]i㩛,v*JQ# 8Ulu169J0/q%x[T=K{^1Ů#L<3Pڔ4U 4j'f+gjԼ.IM͕f  gޜh &h؄%bĘXѣO;wnǎk֬,u2dHºW^uNH/dLjDY!D-[fYDȻ{n^.hB 8|m"YCڟ,QiO){}Ϊ ondzy$u,8U+ׯJ ًD?lh&L+MoX;eݐjZiay2zGg=Ӑzg*=o3jSV \qs~RHWKfutsxfH*km qea=(/„ :=\RL&, 7 ቇ:i01=$`,`|zfS?.kcyg5'|#ʯ'٥>"dݦ I#rn>lwq~='٧, eS^eDsw}7=Z g7G;q3,fyy_{‡݅B )fu6FbN[Hcr鿕h}M?yu[>;~s}n]nn&m G(8xNٳgmzT--lc0rYX4ߐ7w~l>r+Y}6(h#_yâ7,k-2IE=c>1l>yaE# H~'Clb6,|xMO6OmOJ4)>~"@NlOO#'W"1qf'0Q*UfT>^6r؍߄>i5ۥFVYˌ]P0[FT:yU~] .ht%oNnZ}z&"(nr'jjD}4<K;nZL }~w_//7k~;ȿ^>1sa9ьAͥQI m;4((|RIz> PS^eM6Rq\ JwLE(˹W}`ž=o)'{FuYeĺ-6b32ea<kUkkxLF؟i4D@L.ooA9Y~6VJpvoOpkGiee1t?{|_37wgww/]1=b&lx4yA~$r r͘\iQxQnβ7 '[IW!FMoO9yJyK^;?)B8gy]kQC7{r}޼yklcպI2&w?q͙lCP)S4Hqˬ8Of/ӌt㪥%)TRMD9VJs)9 P%]*ǻ|*9{YRr'Ud E)LNװF(=fX#pץtVg-CVoj|?~ܞRJ( z왼\Pc2Q\N]#ec\/i N ms۷+U@vx{9fO.L^P)rfǦ.%g1AM#K"jUN0\ eCٖ X=tLIC)} ʔt&"\H/0FĘ-)Q/jY? QDJQk!'!b0f,ٍ5J霓7͖l|ORJ:A'oUOu¼Lg=vV.kHkCcu[n ~/$}?]dB'a#"dY¸@v_jپBE.%e>a\|Fw'ND#GKOyq Z,#_ti]U">|tقʎ4V-%o~YUc47M&Qyd8СCK[)1CusR=8eUc! }93|+# {S&dmvy{mI&NC6m&JN =]#p|o}k· e gc(`G\P'dӐ'WA _nzBm’P&YdXDkf6Ն`ea*\"Kh1#Ց|p.DHզ6k2 NѩG4/c}7'շۧ86v_5ɂFuR-9 lb< э3Zs=؎S"p܆ Xl : ,=բSWb#`i9 V YVsNz$i޲#:.*`\3rXt}(WO"xqi%ՙȈU ıEGŮ0K!1]NյAhE<h_YwZӜ,\ldžN3* z{'uk 3cW}٠`bf,^S :E=gyv"Dr w>$"F@^5D@N|5"ל@N7ު٫*C@;t" ;D@|`*)E h9)"A" c9"A~Nl+C@҉\+ | A~>\*nt`޽_ާO~57@*ynnnN’i1Uh֭A[ZZƍm=:bĈ {FڳgOnݼ7toɚE_mVyɒ%jYM#sf͚%5k^Z"Z/irÇ7)?CG}4~' %\)S. I8qܹs{{#T9!%ߓ[n)Rvڻjvm*|!_'UW)̙3ϟomSipK.^%WDg0K^xO{Kg8IQ-[ W\1cƍy?p47oz{|>־o>,";m;/әauU 3&M%cɃLI`׮]ǏAرcɓ N:Eȷz~i0:5 *ŋDFɭ\4O:`RyE6x!CO0UVaSNO:{lx{СC=z 1}|h)j7ڬxOСCn qUgϞp?3g V>}YqÜN%Ko^0~C"yc|ɧy]:,=+Wү9r!HEھ};m*tIiӦ"lGE G Fx'%tӧ(b߾}-[o9r q<|SSSOy՜`KK j(G Ν;Ǩ |K/d'GϞ=ݻgXd9>/jwOz@~]2^z:~׿{uCzkX8 ,FPr e+Ԕ HHuFp7RO&\]JjA i%= N;C*2wՇP)qXF],<GMVpҫ빜hBo:E)!h^pvQ)_שU 7oew>=jXGV@2Hߒ):_8S>rTob۟g< l$-1sj^ ?hL=mƎK{`YĦ =;,7Q5{񧼰7oamf…Æ c DZcǞ{9(,]Ta.[a,+B:J9Lqvup`Ѻu S)9Hh`% @}QvQs3=6iVG 1~sm0Ȍʨn_l^)Gо}oٕeBb|_|zI%b`R W(-;wQ}i4ҵ`WIENDB`n(˲ ffY.Ȼ=PNG  IHDRsRGBIDATx^kŖǁ !NQ(Ǎ( dTF G``D$"A/|"/PW_0rwォk:''ݽW_^s:48u_hG@y-=p[GΞ=[hb _~'83qDN!iĈ5k Z+С 40zA;(̳ܠ  w%Ė-[86Ux+tG1l)?Il 袋.ZzСC7mt%"ۧ~) W_q=5CǏ>|W@۷o:u*;g S{1TA3g]Vn<ٗG@#ҥ OPɓ˗/Iȍo/IsrHy%B$FK؏VaW|_|ŋ)ڵ+yEq!pQljN}W?hMKF@ӧW\qŐ!Cz?\wM<4h') wF[w7K>CR״(nH3HKn r-|=H^;pʕ}zϞ=,Y"M#I%ST`sСteS"/p` A(WBKqg#9>ɥy+yl$rh%54FGf 8PWm?qL]s~8?N8[ǁm_}N9;qkhƍ'2?-[V׫0YcUhfKGm!?r9a ?o&FVԜY-l@_`B .r?msm_*%҃}瓍~{Wҭa--F2f|??\$W/?sY,ށ,X'l웠x}1L`lWhDPutBz֭[7rHǢ~%KrďOZx9#Э!t>g}f]("feE,Õ+>á%.f%{ st^ 6'-s|cnAQ%Ea'|r-R-ѐ KI])o4 ՘ɞueא=os`s[8F#Uq_zZy+^QನQVq!AET$"`r$oQ3-osWIM`i&?f1+ N2%Nݟ1;{c{w,kǼGeutEtʵ#qJ &RY)kJ]cAW\\?i@KU8?Ʋ"b͟WH߻w,SYzdNUWǂq^Ǧ"Q4xrAŏ?&˃$5jst4d}K2kNww$ہjnKO:xK59R$ĒQԈe]_zǙQ FېQw, ˮ/=nۈiAmN/=>!M1GWJ̈́D͛7Ll0e |']-Ky;*̾|52E1klхjd",{co[:Doqf_mIgR/=6>[8Rc 1W\\kdIe$F"-m{wg3)&*-c[XlٱcLZJhGƺXgBЅpz׿1A:W6<8qb^͛GGW$׷|f3dg{6켅aC;a޽{Y~#\axLqײ"Ǭg#4?cYb_Aۿu8yw3tP(C^+WLi:-u,2cxϏG)qycԊ+N>ٳgs!ʾtz"&;9pQZ=G>_χTf ޣrQtkmӠ{Ω̫Ю](.r#G |K,pot/Beh@< SijuW^qR8G*󧶽uz뵎}֮8nLF)o߾3u@D6-Zӳɓ' $=ԩS|MRg,]W/ڛQm~TXb3gμoq{9jnذa&Lݺu#J9shcQd'O̦Mb&>jwy(k|u|Ϟ=Gmq2*nD%ٕ6(<#=@R-TXZ?iW(cfGx|=lݺBtbVq UĺīVWK*oYjexFeHnڥ"]`vlzp 6K-R"V+7ǏQ3k֬UD8/\PFi8/Cu x!g}vر;wNK`>}zϞ=bFr+ĺĽJi<tf[W#]eܪfg*Q(i'\Be[LZILeݠxXX[4yu4eʔݻWLgIWj+ljQݻ$ڧT^a cqB̹W:lV^%`O󜼁muSV?f1O`D#3@ TPM0nSbwt}8uO)ZOE5"}u ju[-h32VQVdžۧNb[oM?v.:@/Uyd})ƻr)q(U9XFܾ )@ )ʼFRO>d׮]]K% ʺާ\=癡'"sX:=ULc=ql!Koc*C_Xwh<;w.sGD0Tjoyls}*)3NIJj$F,5ȕ/8W@󈂪jtǍނ;cA3 wРAig,*å[cԵhق:p6zLci-̈́ ទ}%UW\qѣk/y\EzldE@yA-ZƐ,cG(t169!zσ՚*|!O_s_|EL׽;9UI'O{;-qK/ݻӊ +7M_Py;F0Zl޼7}J{uWvFY\~c BeǙ^t)0EŃ>Hj{׏o֌0fܦas&{օ=㳶Y*a̻3jeӧ dQAtphl:J3ZjUXhz#c4h^LUUҠWxҤIvެz4V{칺ڵk?gNv|-؃\ yE׮]կcR_Q\ωkW%| w3 G[e~,Dվcc>-j/kg3WA*R[bD\5WcVZeY0x,yŖ-[X 8| ѣ̙3-TC,05fv={OT"D@**ƐU"v:1$^dKW$\n&/>O͓/R x2pWy1VJ[s zUMcI p" BK$E&tb2Ēȵq)%hs9VRxM$Xzú(ex]u 70lB60{}8p)bݺucgϞdbUkIXtէN2|2"/:b+"WIB[b+7YH9H e/H|>qGA32:Y-akC1)奈Hpعs'w*> hP?V #a\ {}9艄Ui\C/(6 'A 7=A{ƍR_m8qC uFW> \f^zHjé_~7Ո=<~*nQ+m=V*.pF=G@ylJ8ܶQPc"<m3{Xd(m=V*.pF=G@ylJ8ܶQPcYdQ=o gΜ9̃.K)SC _z|3 Ƭ&A PȡY'**|X T&tbYr%6a +a#Q[9LBx)&fr4WٗƬL5qѓw.bvͯ%q%$_ve~q6jqה Y*Ti~DI8lZ(0ǁ5 q*شP`x=IENDB`n\,Nq1@N PNG  IHDRqsRGBIDATx^mUՕǟX2Xi 6lZ)FRl$:4@m}%d$JD،Ĕ"3,{νs=޵9箽kk74I#)W@S zAi@AwEV+N +rͰ^1wP]k􊁾Ӏ\36GٻwE$-=M9gΜ[:=pd `E,Xpر'O;_Q񩧞Z~ʕ+8BڛoyوJ;v,»D_)JC >2#dG7li+XG]p#$_|8 2 D;Y{$͛p ą UJI~=-h{~+m펛vfi֬Y/q`R{ 0KCb謈hAv3^DW>J|e]kz~˖-# J'G~g#EQ'`ř.$H X"0IT}ĉWUV{エZz~zWHosV^ƃ_zYj2?/Ќ&t0YeکB29;n|f; z2 k-G}aJI (^;C\C4 #HI7^՝yP/ (ԥĽR@^ЍG5P<:{Tc@5FU]*@hxf4=}f5ƏX]#R|_޲eKm![ˌd4 \ÜIg2ܹ)(ZPOu϶~K.ݵkRM>k|#Gs Rlʹ|QZe@ɗ_s;Q,ašy|A8~bМ^=۰d?^>vc\&.(tתc@Hr}Wl&4^0͚k>w-Aꫯڇ"kuH}( g>H"ϴT kOe%]nQC[ >%Wg[i3̯^ЎL^z%K~߰#5̿TYQ( 83= 3/~\-Hy 1&vNƍgAR|hUA_Li&G)]+.86xn,/4{ľZsmMTRr-,s>c 4,nIǚ{~r'xBWW׺pE|!/DgrPL@35^Vk(Dߠ`WK[")E`gWB/ETbIKAXBj$I%&n.|Խ ӛb (軸T0 (X ..<=L 0i.ր OEӀ>Lo5S4ӛb (軸T0 (X ..<=L 0i.ր OEӀ>Lo5F̙co(,;rn.Ӏn"[)E6Qdv(X J:._bŤIn-O܇% 9D#.k{OY#@ :bS)%$p/)ow0ʘTq@Dxz30;a2b94sY'|7@OۧѽTZ^ǔqGSKG@I . ",3C&rWo$6ܷwoiOaٲer3aOUGn< =jޣ݁N.u&}o "e.If?lf1ەskuP0_R&cȱ{CћQs SL,:m ^d`9܊Cm&#_Ε^ٳWZd/܈ .p;3{rX9{1wCǏe M t#&P_\vBrmpn`ms7-}cRv\= J{\q`9 +qi付v!t<4?wl[8V _uoZjkjΥm'A0ة0RF׌HmLwYݛǘ) \a|'ƣJxi9 LD ,۱p2}b6@06^ecP8Zv>)%4꫾pӻyT1X2.gs&FQC^O| w\8?+m"4{oڴ)+5pٙ6mZpvj1mg:E_+ۭW [v*ImٝoKWKp*G>$d( k&`Eտܜ(Qu!Kz3ՅMl"XQl "ZbPbYc,  Ȉ+-R!ᐽ[n/t, a~ST@|dj 2vsKo({V^b3lK~Ȓzxvܛ,2hql&Lp7{^h)7&lx%k1v+{>Op -V#W>xF+R&`@*~)Ktjܥj$Th)^ q5کIj,Q۲ҡ TC^R4QJ;S_ zJU%*WYS zJU%*WYS zJU%*WYS zJU%*WYS zKT'ו <5+3S U^D-)aկ~޽CAߕej6آ?9rdWfr/^l8RK]5"f ;G@j FA葉zƫ-jDW3[$s*KcEm0cS,9mbHQQJ;PWWa'LvCJ n(%P ( U2 (軡TB5/R7)D0N5\w`pf>.hS0FT\(7,Ҁ|א& k"Q. ?=g>ƛ`h lP)aǚ4Ӯx}?}^{kH|sS77t2i$c`xE{s>ksWۖjw6ΡkFg}?}?>xb28fӀ(@Z>xl=´TF w~b`N lӘqK/9#׬_ztEӏo3pnP!y'O/7!j*i/"g cwzv5ZcBDܧ/xkǏ#x<\wŮ\81yWOcUCw`vq]ش 4?nmxru/d>5kք](wyU(vLKU?bSLf[[*$?H՗Oj X1-\gTڱmiHd&a[~֫Cܒ޹xeoFzW=#qtbR']M W0猈{,~7HByFjjзt=_[~-;Z&t!pl=`bה֭[e#_NG⥄;v풮ڧo+M2 w&_~_INHbZvdpl#u7n8w\hf͚%2LJcF-e?V|ԤoSNmڴ[rm۶;Wzrf;v0e2f@Dg.,~lYpܸqڵk7l ws fȟ}arп[gϦz0O,0U%Y2T??_bBILZQDqA ̔1b=l|+q}Y)ln̿bflU7 .OPRh?yd6s\Yl%-j+dϖkLvdQJMQEC7eG:J Ԍ ,RсYoRVIP5E} v>F=r~ |Km'C`3*&\bU^~U |锥ǐ-xW{gf~G b {=[tԨQl¾}fΜi^1 \ n~J|q]wݕY1\2w8UA-3u}@! >fgpXceW/@- ŦOK^V96xxO'۬jV'^R9`12x޼y7 ז-ÂbL@eXG$/" Yl\/94aŎ)1cFxUsȵ@b`,vw X"d37 )DdpF+#k yeڎ@@Dva][.ڒI/l~ut̠+a'L dtܖ,=h񌄤kA0rvdzEWc3x(3 p`W INة(1Sy,z_)'|bHUGϨ x! -+2 (NQ܁7bm3. [ tX@\"IEB}:H*KPF@0HDWZ5~޽{6ƍPY ,X%4! X۷W_اO&CdLP/';MG@?lݔ)S0hڴi Ș #%AG#F@0Xl]`1d51net6W< &8\Ȁ 2WڦWkʑ!]h}fELYh=Ǽ /\Z%KY)4 f࣏>dO? l7=s挵%o"hڰ{dʛ={6[{a%T論':2`ū M -9h/X+"e\P\?ko߾M#A&7 I̴)r(-5klfΜȤ_-d )Ŭȑ#j@t&$B V^ALV*EӘckkkseq(B@mR97Bߞj 2@9I,Im`& ;_qpU-! :(:T@gN+C6l8:Qfj†W_}u`+7-L0Ȳ1s1AY&M|Y&t&$;v,W^D4PŋN'9eKIa$,Wk]A@0R T%EY>Zm^.³>_[뮻$ +bEchrr>Ō?nGfLz&&zQ\y啶3!ӌ+<&I 28TD'C3wpi4!P,Nl_8 5)<PB]o;;DBdZHسgҥKgC8O>ɻSYCӯ_/cǎIZu-B (_Oݻwk;w,lW^y%c%6aT\P;vphI"ò]XL}Yɗ(_q:tߐ4Ř" x,N6\ʃXaB5$nB)8\6ҥ:7'I[om8~UejR^q2d=/ ,TwyUo[#[TPk ^~]T6}}Gyq T q.'] hNBy r+CyF&\UWW)Z__ϢBJ_inݺYē*$ hRo~FqEFֆQ /;p&]o1T( eN# Xa/TU(i hhR^޽{w0m5JZD.?ab2LXU={dpk)OaA.Ks-tbVcZBB hR[8x/K+*jc)88 n8R^*2!XX(ed2`tlJғRiY9ZeOg!5容"'(*PLh`ͫ`YIlxN(d&@@ܵ(LD@m@wha<9"A5אl:m)6 6` EUR2!6;-/gCB5$⁀ڀ('2 \pKYk"R"sʀ\ST# ec)*@TPJIPm۶YoK{/t] s]`R;D8TbOL?~<8^H.?-2;ܴëTh@N 5CqOkb׌ =$\[ . Jðg핲 e_,QN,Fp*6}RP&Sx8FABr9ZM=d2l 2sˋJs_]EC_4 뮥Krݺu/-zs+9 ؐR)[)1؀?yd)` \Ö :+F Q6 %#G6opnц-?֕-eݰPMp 1$АcY"]*"^sB ^pHXE ^M0Av]6^ʗY۸2`m\rKnʕhMo$5. 5cW^6G5u1^ϯYZj޴Jv3͔]쯯߿oR4QF!d^x!7T/XZ~ؓCꉏ[d˖-)7x2sݮ];HI* 7'O4E完xcuܙ!3)1^u]}mmmP&ON0ה,X@̴h3%SACB435x`qHEsڜr@1*'v 92dÒ׌KLTNOޔVj7VnrK͛&eۗPEy! -D0הӧӡصkQS"$C~t(a0LT$/! (58 yYׯ_O,gR؀qt0󧿸s>k:%ov)ۿc+m]E);ÇkN,G5: XXz&0揽/v㟜Z'7K-7t7oH=F ʀA9 q8Ydg㸡_RoOr!k]/78cryЏLqm6@֟ӒZ O_}+~z3iJp/]-?W_M#!q7n5 ׹,iqd`+ߗIzZ#@8$DI ֟z楓2'-gJ>Zґwр_07wǀ>/%(IKBSj?#f ؒ5CbπSmΜi~|3,8 ,kcĿӖ,m zU%L..K~wյ 21Ln풳VU2㭷ޚF!#o~S4K߽o0 lv]`Um IJfiv$y=/ag@Im^bπ~SlGF}}lcnqOsQm{ ?o\B ЪU_'6DMauYGe9 sӲ̀ySu+C m*IX(J-[z^p^Yfpbģ ߦ;Kb+! ?U`a_JZzO@a_{/IFz[-B<1#:={;|-o3r,!RU`hR*l;%V\j{^׌(K4T(*'?[NI ُesZC `"REObͣ9\?9ՁV]xx?9IosDMJVs\ԭڀ۶m$|7Nr{.Y0GPAk׮(0oBE駟6ECV&˃~ӸQC ;vРA#nO0Jl$ %6Ǣcq=^XVZյkW Nqd{=gc7EmvEG^H+Qto2M4g"`Q1xp7L.'+OkޝwymJ=Y~."ǀx!]3fLIBQ"u|f-Kֽ;s̒!5@IdyN^€޽{^2JN$Xÿ(W8*Vɹ+YaʰZv9'xqPGCB$ U w]58xhql4=̍xPtM}20M*Q['# $4So['HvG3>Kizx#YR _xdY\@u/XӨj^0[]T§b׻42p y p s& ?ɜqYj8NqPC?iUt㜧$u#b]):}&A_XY2EޢAE_N8T1@QNRuE)s!ƫJjHVO! . K ^@C/؅r=vqCbA&ijmri:K$ ^6`1E *(F$TE 9e0 | WM5UBA\?EX=A2/;;xj(#᢭/nM!x7L#yuI[0>MYﴇ@ ѼX1#pi*͢ϝPc4W>"{ ټb@ \ '.~gYqr0֗2`OW*~VXs\Xa,E[5m`Wi L 3MC2rνslA0E'Uq4Hg^y=%J#mwezX W._NG̋5*Vw;:A)o~k|lȑ"<'HĸHf⡥mɓ6`:rHϪ[zy~E@m>3f̟?رc۷w/)q3\TzP0%9V.\ACø6E_7eW_mK>}&MMg4SZ eBE'O3gΌ(EOЗ7꘴t0%:vX&@6o9&8={.]zu׿/isN2 >y]c49 Pʀ(m۶Aݻwk;tвl>#O~zMwȘ1cVX2*܊@_|n|!㯣G>(~Žj0f9Ns~ӯ$yڀ3 SxO8K.H\~;w<~c+ƩDcS)<}#zh*|D }+`9X8 WzͧY8qP0`{~gҦMjkk!C K.$'*]\^yc̏&fm!‰?XF/, h8:<?WFߎ=+a 襦F!Ι3gzo|Xy¤S+/ n٧ᴊ癟3V '( :Y%CYX^H*HPr"X"p""Ƈ*{-IyW\qꖝua+㧥4\kBOB\L %5q9K ݶ qkh$Q ]E!ex0'{'scVr401l۶m.[6W-i|& jCך.I^orԋ#@1bРAZR)*LT!DxLv;/-6 Sj,64'FGא@ٜ."u VǏϝ;[n:F/xܸq~vJSBB DDcR+Vgfۮ]kkEXE'yhTyngY$/6{ԩSf5keΝaT2տ{tY?s5pigCVd+/2[ VD9Am%w!7HKSY/E0@*p Fx4 ̧=?{v!L},a1޼Xw/7;iZ-ZXÍ':MW bMEQq3uT2iHd@l!޽ŋQxtWFW^yzj1LXcYw%MD܎&7Y)Odax2ȱC|lXN}>UWpab=wX'ȫʤl߾}߾}GUSS:ԴOnF6lM<ܰaDA2.`z#~u,9, 5dr\̊ 8C*9k.Nʭ乓VXf{5SU+4*z ]0{vC&@Λ fvi.p)r02Yl.+Ā4QYR2մRey,r67'2`ŀu= ?ez&[(Ӛ; !;WNP8.v֎pybjEz0P ǘJѓ@bZpvX[Y}z 8PeTQ@ytuNv24"UlޱFWW>iXcC+{pτYn"Є@f 5dH{11TPPڀ+RZ`86/<ݗ+D@0Z2Wxx=KF@PL^'AKHʀi+q{~9eGzeAZ Ғq@p=2 VLi`PNӧOJQleVt7>ҋ<(GV]]]̧e|S[n=oH.IENDB`n@l?&T8M5PNG  IHDRa)sRGB IDATx^]hIoB c&q:"뢋ª,₫A(."*]YQqAD1\[;x_~Վ |@@I ƈ!@@wD@CBΖHc w[i@d}ԸT0wƅ ((8ȔʛlFEh KBlv'ߙ?x N@n~^.o5s۷& 戀05n!9uwCD!R)g,IaJܞ'T?_J|jzSW[/   P:zxCz"6|xbg `"@aO[..|_M . Ds{ljڽ h!nXh8DwW@@ Mk3@9TVo9|f)aY$]חx,sYܕ͛7=e $3乶s?ߴvtUn:wiYkH;vͥGڴ|.-% z?y @ ։"}wA@c2N$z' &aݠ}cW}D3> zp v`Qcƍ@M ]p#~YwN+U'O1SL@gz D@`@gƈV%H(;t~ݻw@Nd5ț0ࣗvlS%̸:f z{:s^8g}Uc 3g4LeI[nƌ3a,wܹ6b;&W}m{ܹ̾c~cq'hz*Q((͆/^͚5kcǎ l%n}qV `?w$C }JŎ6D^)\n| OӧD4^PWcܟɾ)SߢH`#K/Tl۶Ma9h jEѣG۷oĈSNU)aB'`z^!( @'LߑX(Q*ossPyP_YbiF9rH7_{sPy*P+YVZE_~]ZZ.kz^Y>+ޯ7.Ο?Om @Y;ٳsh?` qWJ?~xڴi  =(J*\(^ڞ5550]?pns߆+NX` q;wTMO/_N7.Xz+< Ç9Cj➘_|`·t֝3g8[;'~ܩ% ԼVСC7oLv7u5+VM_t޼yUUUdsFq,w OSK>}z!Ch9昶zG/Z+e={L,N\z*qM .0ԿvmhDg#9˛6mt޷ GV_ t +Web}AN6E@緟[Y~GOr߱\=nҤIٳgwkhh _ӧO4跬~`V {ne;Т?jԨ;۷o~CH:(n>T+{ZJݻ>_I`~jď;%RI?,.R^u;=vUC"M/B 6hּ֗,M<2d] (;0=[FJz^igkyeyUco7Pj](0=lOzp } Jj+)rxذaEO)N8Q pXy%8LKX X'W&LϫZk8mMgSNٳgk?@_;R oĂBP-uZ.kz^Yg_]a Z.kz^Y]zJZGN0!Ab]n" L@8'\~ CQiC"f`z^8^zV(N)"=sL DzsJ҆r, NC(y).};%e=R9-4Xy n'NH3f'O(2?44s_}yרOhz57UiRs;.y~B˖-uÇօ!g=ӧO鉋7nxѻ}zCF}zիW={a6Hqtxs>Wvu#zGϨXN<٫͔U-iڽk}.h`+A3˖-ƙ)oǍDŽ%K_q6l~UիW{SDC"c;p5][U1m1zvŊEO\>~QyK,%)[~\hw8 ި 655ѩBM\FZ/[?k8ر4qXtM@g;f̘2rpCoWx=n})g`!.ʩPKA@ :ʼx {w1 &U/jtYs;ks~u!ǀAZYz #zg]1`ꝵA:wօk Yz #zg]1`@>W-(zj˿'ݞ' 7:C~H)?eCFewuuu>L!61cԴkt Hp{j?}ůםQkGKA;oY)MqjRNc&ߏ!կ.cnݎNy95'X۱K ^E+y͙#Nb^L?׳g.2!u*YheX 5`μt8I Q`i/MŹ]D V?C[P.!=ֽriR; y7=kc,*>}5}3F۠i{YWe; AW=2W>|I 2w%TLzW;FNZϽ8Gmnnm۶ѣG7BO8Qī1cnHL:d^lq~ }]Zի?8ZRP2@:|ŋ leŊO?믿~K2QkРA{GAt޽L{*G3(çP/hЍQ ބ@w^3t߾}Ic :;o_"9~)쌈VT!ؒʵrJ1J le^|4w7ظqc!.^TF*@H,٩={ [9Jb*vdt>80Lʡ/(B)gTrN+*Y@;۷s &f}AP  >||04ZFP2@ا/Suuu)­]+ݜO!RV5rH@7S;sLAyɒ%*L)َnE0.4!Ν+l""PZ+z뭄a!\j;3+|]Yls) "m-dݻE"!c`?p~CE6T)@A4:}Q#^![3r1MT%|j x*1"$ŋV&/2:!$캗`Vk AQ(<( 5Xi(+CRI`OլYpn̯>|￿HyC S]Fu4d#o!STO!=9rDTիpD:|NEsgT­ȵnݺc[… ׬YCa XK)@ZS{/'ɱJ/_)/Y,XQQ8Qm8RM 0"l2=.6+8dmu&a/dFL1UDC$5_mGRAj.ԩOKE + 1sj-¶dz>cKe WhI0奡=Vcq2| 9XKJb(BsJ@45pç:itL^>efL W2S2:8رGR?WT*<~^9 K%9HF9ՖF@9eRc*- MÒ g ڸLr\(LőHGҀ\/J#O "f 0? plhƦ[Wm ;ڵzzɝsY0S,W_}5K()R)X6o XBY,78. >vڧz瞻뮻 3FW`R >)#]^q ܊G[X+ VK>fϿHOF%SݴH6k rC,4%hsIʠdVQ^d4#E; % O~41GC^^Jc;vy̌)սѼ+Ab5 M[@mg=DV{nD<"<1$D]n$0o8rɓ=2?`Vr^ "?]IMZ+ɧD[/{|qNYD*)Fvn݊{GxX8 xctg [o_?c 9>UUXg} wdp  bе VcBE|+8ҧN~uIzh|W>K`rX Tw񶶶 6?^8.G6<ū睟 ܼD\&Ut!=xg6Iuop,=ѝ UD-uHKCc"'rP9o)+CG_A9q<ʂxDÛ:"/$G@K}B0hyÆ }(ym.Vc A(@4|1pO lWh%hH+%Ǣ5Vw,@Af7eeRr$ s/ 2q % J %"h'@gKVhN4+M-uusmh<4ɧd el%6s_|8>_dζ|抯}9V{-R}՚ }'c<·Vka"ts]d[Lsj| ބS` (4fv"J~ 4m_u2%xG睍6~y.rvڙxsh+Z[[Q8 4؎+4Ƨp?(OwBD"1uTI-#|υ\D. N _GÿP=nLm1o%>${dJjz-}j7\65c'QV~}Ik>W}o΁Hb^kNުz$@@Lsj|ŋ#vGZ13D-L)#Iݻ ~W l;1oiβ♳OήA&^>d` ֠ rb׋Mk\~3X7};̋v*$W,` `iNO_@w&{p `ҲUx/5 VwMlVj#'ڗco=t؞zG`y$/Ϳl}RLeW^"s:Bgہg撞 \Q6dqB119ٚ's5.4O>?o8?|;;s'ٝZ.>e 4u;i`)d+s嵤-OYZjzsCyDeR ;zmjk"P2x1a{U b.pLxtcB%9b7D%8_vfH)T>پҜ]J0R_ӧ۶E ]3YNZ0UWW.ڻ"""aU#GTa@| gΜ)@/YD,*e@b?eB\2ݟO`MGR_2zg8JaUuȧ"?aرPEެdrl"})v{+RXid9RET-ͧ+5D$Ċ2^0]:vm< Yf\\4ڽ{S$*){ 8Ja,ͧN>=j(^~}Գ+65E qѫW.k8⚐i>ș׋.} :`&. \%紐$UIL+o-^qHj}B6L S/!OQJK5kΝ;/d2>|Tg_8SEb| TQ H%W*% "׺u%KerJbe>Um'ZQ(80Xo-l"[|ax%2u>eaJ1ne֭SLjkܹsE 7F@q{ HL,`ͳaҤI# "PKuTp( ^،6o0cOCÇO nes566:OLʷbܔVTD Zi٪5/۫.LT%ZlXATCdμڮ;9מ \H9KX%Us9MASD:g5 T"81QmǕ}Ѐ-^9YZ>2‰`؞H ",qM B)#Bt8̯o_`t4D[^|+e/ bU`f79sL6DϞ=9zƌΧ@bVg!Rb`YF,VfS=nD>}mgܷmذaƝf[8JYe;Y}" _YT>ߟh잱Wύ1%1"ֈh7#uIs1>%{DjE9Zv-%' D{[= V3E } ʟHa;h:t{}("PO7bqző@jc8ܾk.84m۶-ڝa Vۼ-,4Dۦmk^@-A}ڋ'~k_L e 7,[,&IX<P6/ Y'W&8eH$a,8Ja`tK1vdk tD* -Y,R>e;Z^d9f[^>sWپigdKK[5+],BW '9T^Y4cY?vV| 4m_ufgZ~G}XlGlnϛbͽ]оVQC5l;t>O>qcrL; Ed1wGV"q%S"5=}喏gNe\? ~Oh|l;1Z^H,̪t>œE䙀x,Ϟ:l_4!k > 'vjf?I3X7};̋vֆ^syϜv"puQ#Nt[biI)vs&!\!xu, '?A2e&6^+A5#ez6SCIϥD;rgm#yme.3VdhB,` icf;)/'ٙm#LҀ)9Q6B|귗ᙳ$=2߼Ms~%ܥHP~C'Murȗ|:p~L a`ŧ,R'1zi=qp\y.ǨK ƒd9XK)9[{TU̱Qh"4( [ȧ̖ P>坲Dq|r̯HI05+rę)adr /dQy ~"U]-[E˗5%DSr ~XhPii޽Cgq&ޙ@2c"C~xᒊ:w.gr0cJgYЭRJrh ȹf\QJAs&IX$*ğ9A4ik"7%Optlusņ3 ]EM(1"0:457&EwwS)eRUt(y*$@fZn9r֭ʧBȺ<3gJ#K,Q&OmAH/Oɓ9iuZ 3=*a>sNږSA |J(DYD*@ ޘ\fH':u*v#qt*@(-Opt뭷GζzPk0Lf xW=:4UD:K(D<{nHpJ-u(|ӣFbׯ>;Q";.ZKP*|jӦMӧ |5Myaڷoߐ!C[I<.lg^sC8oUV\*@SYDHrkVX!a^|Tg_] p\+*!Pd3!L Mܜ9vێ;Y§P^ye };u#2xZRP {wΜ9w]%?.r/_9!3Qđhh Qejcf͊@ E@&a/-a%)L'bT Krl;wѢE*ԩOK% ᷬ("љzŠ@^K[nHkjHO>O~X#*Eq{ܚ5k`U\<0o͛7ϊI&yˋn͏>( MVhaE <))8~>` xۅO8`ĩd'Ρ$!TEcDzAAcc4äĘx5׀ ܠVTA IחhyJU|t6%)>) ̖W5z"gqAW&%,r΅ LDsfPD+L#&pZLj ׅqE.cx̃퉄,S$lSD ×Q{J{TB"TRvǍ77Fw(YV|nIٓxf̘aN >l!`Kd SN=nD$xU< 6?a;ތԩSQq1hlJtڙ"X,wBR!íq^qJ&$0QWq2 QΈІJ|h(%<+,RaXYL) ";mYHH dx~w.sy3o:OtKP)uVt}dc2SCE(/OyyW}JqE]Pb|>퉯dEo|"t8 ϯ6ѐ,hȆ1QuYW(ެ,nRK*K{fOCt'C-%E@ ?Ol Zp!$ 7 …,|jAE J}Bsv64&?A":X&!k"5E$L_ \SPzcEn*)ӖTP/1~:ZbPkG@[TE "O}R54Z\vPy*>l+kThui |* ԵOE@AR>0a-#I/-䄀SNi%E@H4QvCPwfժU b])@ƧMrltNz290X4l#CZEP@j|@܉ HL:d&oS.~  㐻3gfnJPHOx(M ]O!C j b<{F{2G}TX;{GphE@ )>  ބ@w^b#Ps7i,r20p/i8p耒:w\gI3Hڠa}:̧aEй1 QgΜ!B4[iYBGI.CN494D ֊/t7ΐH/WM\,OS-d2" U/6PxƯn"B;_i?z.#Fkwͤq\?K02ʉOa,ollP|~عLy)"%K"9s_*OgNyDSڑ_s ;VYrPZ sdAG0k_xz=ߧQv>XnOErEzw!|StY&;>>7U($JTڿVgζXFKXo08PUR[KL9amT; \KHE ^կlYŒ-8m사_ǭܲնǞ2jο ʗ};w;ve~+b2]|=eyHsi%.}<crf :{ Uy?7߲^bOg;v,>V7u/ {=հ_~aي*rBӦHTC [oEf-[| w,ܭjb6_5&U!&O[_)Is ߼ RuO> vD -b#ȪM! ފ$՛NPj?!{xivY((r^._9q)KSfy?Qؿ"v\-f{)ar~ÇNu#LVtGףPkO h$$WsCo5sS1kgi.q'C=Fk,]wQL+ h2DCR&ok׮O%3KBa*ֵqr^Ƶ&P#;b<;L9q> 8, &/}iĈַVђuQ2mSZHOD\xW,_e8:8g6 az{:=Gyx e+Ƨ4j.Zp(d>$DVF\k+abZLC@XU2C%LO jX7{ଚMptZ#U=훫LQ[%;hB5| @hm\SbG76)\H 32Lgbީ^L6Hw䉙 Cjp$ C*fB2R2 Gm>#z;zΔ2 R/$ S@81]$! c/ȸлisݺu&O\r[A( z ҹ*J Xwc/j 3=1UZ5'vV?8GČLߣtٻ]&Xx*p)F"H]ޱȖUHL()g[`yDaL+ .$0 y@jT)erk*8u@d=KN-zpCD0\TWEa7*hdz?¢Np1@T]cziLnz_$RI5uVV j [.9 / ,M.+$2c 9e'Œq ^+>x|U(߉bL/[2O%^q ,@ %Ӈ,FW9CmÆ Ǐ7{ϯԩS|C\ovm-xKj" . W 2S.=J$CN2gpd$/魐?""5Ȭњ؛H櫃K3)G1Y]#0g^sc1>kWYTjjj:ֳvFx~nh, !.~ ƅ}4Wn`zۼXՊC3#\|dә%%_@׌𾩯'~|믷]'*Wx~*˛yС}V $ Q.??ۋ OqIʋĄNg>b)bq'))ORw\>)^|lcnCUF"bW}.=rUbFUPJ7l÷8eh6Iuopjei饌byO,i~ D<^u;lCq 1"…,|j4~G'@vQOÆ 3g#ƒ_| |-+"bL9}̱.)IBuQ=4%ƏTGjV[62E@PBR)ԓ ~Վ^!0UJvTP,P>eqVpsf|hjˊ"*OŁ(Q"|*J4-E@Sqm*@(MmKP@@Tj"%ݙO8p0Is;wng1>wVli`iT_BuiYʼ"|a4GEto)m{]@05 KOLr_dJMCGWnٵハ;2ws$W?w7Oou+uhu5)3\e/4ckzيgz`.OÏ8Z~_^Yjfc=sJ-7Y.\vasyz"@7S٥2#G>}:WJPH7=zDY={+ry8ҍc{9޳ FR!.r)vH8\_\ue>j"nΧfѢEВ%Kr|^+}KZ1r*n^S{GaO ҈T1~Fk_`X4};#C}gdeөOKN 3[ZWL}J&uɘϷo^[S.lX$ZKP ),RTy drSLv(JS:劀"PTWӣ+(@Pϐҧ(ʧP#|*3))}E 7xIENDB`n%?1ND?xud#PNG  IHDRӾsRGBIDATx^TՕ00FVF PD\-0P*MBTpC?\an͊ZX,W 5X"TD# qlgݯ_U׫7ϹsNǎ! @ rY!@@~ @\ŵ/! ⊀+-'B$Pk__"'a! "G@ț@!##WoF@Hj+$h+ F;BcB4(4hOWUV\mw?a&oy+L46q/V%!/ށ-G3q &fi{ =JZ/m;ob{^JB 7 _O=kmG뮛0 ,F8fc_[pm΍78[87yg7bD&Vh@Y$h++ٵr+ [ؕE⛩g(6B $u/1mNwnճgOΖu-1n:nξ"ko>1o?.mvq>ȐnS'_ͯ3<ޱwb+ qㆥ]QM?cǞ1v̼ӋuqRB@ PPh?fBƏ93g >Fڴi;pT憧4ʤpcL+q8JxՅGqr8={N/VOt+ 0ښ5.nb_B 3h\3#z՟.@zg^{ʛ&i<ɧ (Q+gOp^S M\cb53\> n1+!C[.()5-2U,hń=C*fS܇Cu |;p@so"p5sVڃ?j?^DUֹ}޷,;&? ~allI9f߉Y-[,:Zbi[*qe -5*H5τ(/]};i)8;߂s1c8;(kO?b&uFPL#=+nd 9eʷcr {"I$͛AY-J@"P:Y0-9^j՝Z4 ؁|ʜ|Ar@%YMB<%gS)X+2a)<b;hrmM7U3Y}7{;wlfE4-]ld@K {L5 |>daR?mT\ߑ_)TK-\,ײ,Wؓk\Е0.'φ>n~"r͇;sg>J0g!ax,K΄mOkm|uy#XǚA(VN;}_)brMjC4Ղ`H>bq $'\0~ƀ)Iop[Mpe0.փŃ֜YAl]X 4XAQ 6#^H?՜ɲ=}[,0{,xh5|agv( 74U<:;XB^vu>MJQqlN߆iGqu| I^,Bֵf;Xv=2Cc`2_=VU}_~%2"ak\4;φW @a˺kł/"A%!'d2%YZGUG^32Æbb{Q WZ8zȠ[$_ᯥ"86?%=hkĿ{~2>?ב͝RbZܯ_纣̓[*N7mlDp |(f%-KGms=3/ޤٸzt؞5xG1T棺:A vg:ƌ' :N}v,m֒sI3|6to^Pl(=5} vú&~gt|H`65uR/ ]?$io䂈,daRb;H*0OTf Ƅd2#`Ij6M{ o/5b^:dz 6_0bn)!i‰?Qyq&Yf_&^^{{1moK>g3 Qd.W+-,_=SWڷ#a=eD+,ZgBCEj'hlhЅ,0X]x,~U &a&$0@L-wHZT熄wΜp X dų>nYw.Ŝa YMcd23L2mCx-B$mf',Li@.vN{:Xf`5@*p_NH&i@+ʦw{b^ &4b0ބf{WS@V)v7Q$@MxDoYA{NY>dPQ_xԿb_s.唏c_qic-+ݷ~6eWj;/tT M?T!XH$=?3[48M PX>l12~*/.{__'b"gKWcB bpr[ HE`tU"*6*S][2+)fX/m-*{/R<}4|S72to:wE9<.0\n"ds67MMZR$$؋zZs_)>w\&$ߚs*;~/W]~?b.9sFCW0\{3ر{݋X d񣏭~sܼ\5c 'T^,3 Uc{k@s6o~]==ܜ?%gnN8*xA[/YF@CO{cW"죎=/:zf}C-l@űDl203N6ؖAGvbgsg̞=;O>?k7B:P7y52V`2$̄ FV`,Ɍ5k6g}ihnс ML@kʔos^ _9(*m-XW~PcۚV\kG;qB#+;TͫopE]]#!CN?@o*i MDUcZ^c_7q]3tdÇFKR`F^pWx$Ylj29k뻎9w$iԖ "2pCqҠɔuuuλv3T dv<~zY՝Ќ'zbUUw.5.,ЫW(UƏr+s⯜bQ#sց0$O.yYUsʣ>iaM~^ &֭}&dͻd32B&^[jyW=_ĥ8D]tH=ga| ]G./)")(G⎉+/.{_P9/@|ŷ*Lp3uɫMWE<_.}ť躴GTv]|nyyX)ےK0۱Gd..SLj]Fێ}Un}~..?,0(@);L(  .~)'@Mw2Pm$#@ Vo'DYo\nT>-+ݜs]rm咿avTyQmdeISaPJq]avTyQͭ%Pt(*&C ཯_j)! @TB^v@X_~+W䤗g\j3$C[~_.qg.>ǴmڨtQ_vٶ6g L:ةr٩6Md\ͺQͷ渼B?DQ\@wcrgc?s9mYJF?C(6Ew9lYusx_>;ulE˖f\dv7'Ou$vpĻE%sgc?s{< mv%ֽ;o!wڶ>AkdIAm;$#mg7n3Hu>ieWsmUfU=Y2NlAҶ%@cÆBԖ͂VuDg\=X؊a#`{kNX}|G Ɔ1~{p']Wal»-6aF7F2|%>%WHPUB@W!P ! jA>/%X#pdC/|r]s] !+93G bZB@x/|~tXaB+. /[ɆW,,e|J[/!gM)6)/G.2 :~B@E !@o6(W\#viknOW_@UeWE%KIWij{! JJTUI *2"@T)@A_....غbWB@ _..T#oN賋i !\]t~tw]KWd\/) WTˮ\Q!oRwTFv@1 v9~賋tTUf,pXTvvQM+@9# *W݅@Ż(g_7%9*]FsŮtHA\u.>ؕK>sT.gB? S! @T_Q-B@qE@זB@̕ (y3,/ kT!kSgB oǾW(;M 䊀k] ! \"(}! B@++/W/@T=7 5%H]_1j,*WC!W_qm9-_B!/ū_" RoB r[qE@זB@+⯸B@> @\ŵ/! ⊀+-'ѵ*IENDB`FJAeW aJFIFddDucky<&Adobed "6Jo        @10A3!5"$4Pp# !1AQa"2 q40BR3#s@brCc1@Pp!1A @Qaq0Pp P #\]:)( \Qd82blj DtZ"!$6FU=)@iR,J#|(eHz@Hjqō #t=pHto lwlhW[ GF3 T6;ln ݋`HY^;ؐW[GFQ^;lxy{Y睵y)][^;lyǽx8#hGk޸xŰRHJFFz}XxŰ2H=#)W[^;ذHFLzNLtoeW="ʧE#hMP ݋`+v- eSѢrrW6*~[wbS$)(gG{Ɓh3"Ѿ P6;l]@ض) Twb ݋`e ivm +v-)xK|zh ݋`89(m{(xŰbP ݋`+v- e"RѶ  nz ųbRPR*΍ Twb vg$d3\jW[^;ld΍#R;lLpXxŰY9)21㽻cDxŰ]+΍@e`mdض1 L5@+v-ض!%=<3 7 SF;ؐV%q^;lR"R+v-ض2 D#R3|wb ݋`DR%7 ;b!9)X1dJneW9#9$%"&!pJiP ݋`+v- bH9)3kb@[xŰ[#)2 屬V4^;lc D#2͂"r;ؔW[)hOQK|zdxŰa&cc@SZ*Gx H2)LVR8}؜=؜=؜=؜-|$$ٮf8ܡ2:Hju%n62t8g.4g)7%#!by,!p0ѥg 9t3:ڷUTuPnRwUT) Ȗg-a{Ͳ7h8g.ದg[V]Hh %ӄ᜺[Gʙ>JBe~V]Q!<9HNrM]m%{ 9t38l@u_l}l"̗ޚM8Z?FKJp0 9t3:]4}Yҽ؜=uq^~m' 9t3:̈UWl{+ђҜ 2:p3KyYS3~;NF25: n[p)kǡB}_&>M,|X4 .g$x ){222 H=ͱHmد?]8RnW!"R(drvS|Ӆj6 ly2UfW$˫8dLvMP?BЀЀ> *|bSBTjBJKn-ġ^R]_׏yտWhq4i>&Ch)8Ԙ,$HĤ*Fw{;#Wsr%㺯?F[Cq drx/Ε2HD\M9QqRmyI6%/d"W%Y NvG.ǂ<M{S'JD(eCHL8' _ٱ^~<]_׏y9 4&C07"%Ƕ{Kud ˛9 ~;T+]/TjmPIR~8<2+9bw7KKKKK6CіSk79X?Tւ\?c;d=Ćd䃨6G*vgN8Dj6:,##u^~BA9u HhA!M&NV>8=S>8}Zpiӂtb[6:fZ\s[_#VKSIm:dr 1:ڷ㺯? \̢0DPLfR{S)$&B;SPl]a#}'<"y B Uo#u^~Ws6G.>D(",I;Kn(⃛L\ n=b\_ G$NKJd4b=H)";E%Q"bV#YxODkUA5I!(\D-2iRp%J]f+>~;R),0dF#ᨎᨇ}ylO4ryfnp8GymLOYbWeFi_Brlc y>ք8s\#UyU=Km+Cr7y6-qTcn!vgڌf%R%j]Җ59Wv}o#u^}mQ Qc)DDE*Iql9̪x} IJV]Ab?!dA$-Q%ŰOU^bڷ59%/8CFjxǽbTVXeVXz!Z9Z i#pZ Hma[pr⑳tSٶ, o+ .Ut¯Kz]=Ff31fc3c^O^! Q^O\*zW .Ut¯Kz]=p^O^ci6aEx=W .Ut¯Kz]=p^O\*zW .ukl)7^]^O\*zW .Ut¯Kz]=p5d7aGx(6f6 `6N vh6ɽ ݰ ݮMrY^-.l*ov¦l*ov¦l*ov¦l*ov¦l*ovf3r+ ݰ ݰ ݰ ݰ ݺ3c0G{\ݰ ݰ ݰ ݰD2+ݰE3c1??ڨїCt>Wo 8Z}gC-^yCf5:蛾Ϡ4jX#-}^\. NRrg^ n2V7_.鿫_.鿫_.鿫[ZuݛkV\7kV p&7Wؖaۖ!p)g&SM 9ыPެaдmc*N–9I˖Z~//iN:65D'}-Ktl}:oq'x{b.RXstkUm.o v S+}ٷv/8B!s+~ck~ck~cjh(ZoS\0n'>'zE0-Em0*=ax顭$8[حT%$j.VQ;"]9Dx ̷{TO7B7pyK4B[ҭ}<] aMkkWsn@Zxk9)hQo*6kXt榴03rkR}< tK1–/pזEō.6+Uq=")RqU%OA"1t].kmYEx۞]6y1t].km0DW;nepVܺ+k(ˢAC} ʅ-SE9-_U:2@ I\5vHX"ګyy龖c,-K_mK.NJ5$-ま}ğ[5lۓMljհ9`sVjol XrSRKdWQ̈E9ݛUV oӜ/wp܈i:sQ8p;pK+SY/)},( Ԑ#3BݢZ8¯Bn}ğrޏ`%sQÍRU|O7B7pyKeA5PkCBe"M/nW*QkpS\ZKneP8+ ݒTxvB<:ؗ1'/>'zO9[GGGF_ \r̃|:W̃K6Vh')~JP%+qc|1;Z8־sկk;ZoVsկkl8sT@yv5'!`ضDcwZ+lsEn qV筱o+b9>Ȯ&dӧ5'e7?N̍26TM0CJFRGg.P ܡ -[MYEkvlfѵw{5j-o*6@&9xc c&%/u'e7?NLZU.*YX @ZviKBHTIS>Z>Oxg=wsxg= x˦93939TL;Gnb=ٔ@n\9k"-5v K@s=ൠzS²GڅjK BZⴝ߄U:W1kQV7 le`pkiۗ!oq'xw\L8̴j($U7&ӴiJ9&ue oAhA፦1(s OtT0Xp@qJ&-j*M, t p-;r4 CX8ڽZhC싛[I+|(GAKB +Y`Ϣ5'e7?NLZU.*YX @Zvh-< /iAyUZڭmߵKKaE|t|t|t>8kan&mr7)cq_M()ʶfGZ>wbr*k9'Ҿ ZeeK+] Nܹpiq)y(oɘ0m~C!Z_N,;\XE]*c(sj۫T&iߛWZE8ݑEOakS r}Rjj6ԘfDJtg[;K+] Nܹ8)TV*v2^IN~Zs\FRGKeq)w>'z'zÞsᏉޏx s\\kD`iB0-'LtugFR nj>.eiq\+h%:NjO֮}jO֩`vV=/O8M ;2n*;F+Aj8Ꮙޏ50yA) DVOQ ]\2%K!c.}^\sA"k}ՆBS%8L8 m̵=Bޏx s\\jFaDj_mIN[LS!qT:" G5̼ $ =)Haq#w *-m~:+mK MkZ Hq9mZضZ|1;54]_Џ]J%S8սqvݪw|lqya4v$ma?!ٚ*ӴIku)"ޥζv;"0D"RސC&G7vb\?W+ q¥^>R% xXae" sr'Wr- g_ĩѨ!tzqŮ3=ȝ")03jPFAh#z`y *)4Jјf0RPPS1jd9=SjjCp'HS7Tp :MTRK *Ty<YZFut' ؙKterpknoTCI|Uy^#=6-%\g{RQVL.Lڷ NPN qٵ5!=ƙepx 0`vH 3Ӵ`0*"s%( 0햅x },Œ_,WWPՄk?wwI&9 ƞrPI`^]iɘ0;V$ 0u*x e Dk1^[VEFn"⑻)zMD!L_֐(Y@;L.Lڷ NPN ql D`FޣeJo\?W*?P& AaG E&]7C؝ɽɘ0;V$ 0uKyQȝm,ZÿFTCF>'en@Y03j=;AA8&iݹ/i|n`$A=oSAK'<4ٰ%yh o/0{ASK>-D['ye?Fɸ4e%hѣFLUb:V^+} G#trN{.8pWa}ǫA0qlNFyfDͧ_+Y bq,n%*X9*#IA92Sa,vǏx%0Hd*{9^tEX6[ڡ:35I562[HU ӻr! jv0Ė{^da`U(Q.A "mF,`222b'#ָH;*@H#Tգ]"gG#4Ek,BƬWl\mF҄TU򢖂TbK=]0~*W|ț-?*-rU%_WU)oga+Xl:Wb7( "%a D4]`qKlg:l$+nüBz) Y )Sa,v%]"Thv-yg#)mx$ KP!L. ߓrL1%׮X?cddJ"AkT!0Xֆ.舩3T Ӗ7@v"j3 iJH;esZc)Lw7RL9dHW*݇xj2:<%x\a,v%]"~QwёI /:s+427nhSye)"92-k%OVK-hZR[Pg$Yz홅%]"~WK:=(ߺ_WU+ ՝ `q"ZUYrҨ-) ȐU _QLډ0Ė{^fad~*W|ȞLVtsBO\aw/ol^*TpD*-[4/X]uԠK`YV/u9# asWj-_ū"REfL27 2Ⱥs*.Ww 9(WU,%-X%_lep t D~эibD=!hlPa5j'3KL{dS_!V U-Fac^+w HĽϖsS pĈ{4`%KJ1nXP:T! ТR Th%}O _}Ka]XAPr4 X_H1f MQ-bz}~*5 +D?jF 0 HI YeenOUm^dJ%'ȏ:`3E Y ",E2JbIJAO*?,~`H (B7EbK$C٤,ZQu2bޕ`ϒ*$C1 S /Ky/@@+Yƌ%!Adi-(ź`hc@ʺK'/^ ht 7#"`~F*)5ppp 7#Z9_4\c DJK|L^**P`XUd_VIwItb{փsi p2K4bL?ynt 3r9؆c4ՖE*p r "G2)q&{,rd>yǩ D)$^nVe킜)0Ad)ƒeo(0qeag%ѻ[PPjrdz$M'0Y:%pPÞdJR[iL TLUINOJC{ShU?t`Q %!gH* , >L,rBƭZH nBPshYi$!buQNPH(a7۲Hokm@8G*/)rEqq^+w /\໯u\b@ղ1֘XBO @KV+,"|\"DFDԻb O˾r*1ELuhZ7r1֘XBO G)d?' U* 맧 0JmԄ .?е2inr9p wFk`cˇA@yi`b 9̎E. I9$H֘XBO G)d=xے >9,(Xx5P [|S`$J@vM`; Q~ȚQH\Kr5dkL,L@ڡ'cr>$St*<}l涇8ln$E. )zabb >3X \`DL=h /y \&og&hV1:jժ$Au Aҁzr}9Q%L9l0Lo%Yc2&yѡHicܦ& AP19{QY;cF7TT>Ŷ5jD3{r7g7 5v lMeQMEuH$E. y!-Nabb >3X \ ScH`%ƿcѩ6 41\a[HRr$D(?dM@HV![]01jD ڏ,.Rl1wQ@bB5Є{`"VM&!qk:H I&!ӻEA+rHޓчqիTԎC,7 3fvZ89񸿖$!p$pJ%BťX;H L$&4Oa7fGnuktVe^hׯJ\?!%r~'r~'r~nc?GGջO;X{?["-}1kgvv~avyݼǝ=yݼǝ=yݼǝ=y%c<^ںں&.}~i1kgvv~a?;Byݼǝ=yݼǝ=yݼǝ=y.3]w?5s]Dekgpkyݼǝ=xynck^Ϛwn[F^۶[F^۶[F^۶[F^APPB*=\Du{^꽮їIeeeeeeeeeeeeeeeeeeeeBG?Gjfx9WNbbPre{5U*. 7BD1Ar LF$\L&q`\0ԁ[Zyz@$@]6VaZeTj.a)BfzbڵJĻpBئ,KO$L&q`Wږ 255dȃe4xnjb;o-i ݂q( EZ!n6TddX`ٳhfI[ChٳfͰq*{EH ` eF`(H،SasK{q(s|}ŭ PZqo3rsTY1Y[e Ji:u6I?\?\?I2uUUUUTe0E#75mP =̂`+p32^QPȘZY246D75e"-V LXN֗s$YZJ`DCr5u~>ŽΤug\Yc#ru}b`.&rR2JK,Lb!7lTye^XoFDXKEy& FP1LOFE\ ɩPEpG)1!V{S0/׮pS@󪓤E"a 1ҸD`(_؆I a*-%"D%,9U쐫 U`58 s7A9L!'Z܌}hνthÇ"#KJZ3j<" da cẌaf\65Md HA:ռfG Fu@9nrT)9@v@E&!q }FI#/l(P2(\ŖV?54qCBh% xO?JJJȝVpαBh"-9͑d HA:ռfG Fu@9ON%,NLS]q W$ۂ-B Ђ;"81'亹k.(;>AГ!ufORi3]ȧKђ²VX*+%ҧܤY^X Y*fB+7~xO?JJJȝV$>4Y0bVod{BL.b!=JnͦhνthÇ"|'th$`b aIR7Q)/Hpl @Me$[ 4# 0)5%0X焲3w.${ƚfI*U4%26rNp޻1\_/k5̈́9PєEmΠBn V, +jee$W KrO\#EN`@2w@q3;#lDp5 12 =UnCiz9dqvPӢgl-uokr(QY=4O?J> C(q"̓0tJ bd{PT6%xr߼6%nFa(SR+-Lv03$X z !i 5tTVj&d#y"%Q evq]lAy\E <+bZq4 bd{PT6%xr߼6I%,E-.0 `b %`8s>bf&rB0LK3( {Ra  3dğҏ} &Fƃiqˆĉ12 =UnCiz9dqv~\'b}ASVHކ&3T YJ"@Rcgy8 67@& 80Vm Jxm{"`1eGB.PS{Y2PIEab% 3NՔXLhӣjZffmAxx,1/? &&&&& 1v:7θ΍3|93#|yq-z'8{h&jX߫h,G=ow'vGVq᧫tz^YNus۲k!x{~vn7õmvsx}o϶ גmAAgv \n7õmܟ }7õmvsx}o϶|;_ݼok>۷~p`8Ͻq +W:tvs׍~vn=i}7õmvsx}o϶|;_,sA%%~srq +R08Z( / 0DTimes New Romanxv 0vDTahomaew Romanxv 0v" DWingdingsRomanxv 0v0De0}fԚingsRomanxv 0v@DArialngsRomanxv 0vPDCourier Newmanxv 0v1 B.  @n?" dd@  @@`` D < |DUDHA%/089.RJ($*:)4; * 0L I)*'    (     r$߿ߝXoifr$g\Oy Ekiib$dk )b+/m׼$b$ <0iQzsb$+cbdd "#b$g2UuX 7-b$˲ ffY.Ȼ=0Nb$,Nq1@N dMlb$B[fmnnf.b$l?&T8M5Hb$RJ& sԕPFS3$b$?1ND?xud#-8$R$AeW aJe <AA@2@8, ʚ; :ʚ;g4BdBdԼ0v 0ppp@ <4!d!d\vk 0x<4dddd\vk 0x <4BdBd\vl 0g4(d(d0v 0[p@ pp\ ___PPT10< 0De0}fԚer Newmanu 0uDTimes New Romanu 0u DArialNew Romanu 0u0DCourier Newmanu 0u1 AA0GGTHH\IILJJ<KLLTMM4OO,PPQQRRTT$VVLWWDXXYY[[<^]\\|d___PPT9Fnu=!BWk@~PNG  IHDRF} PLTE3:tRNS@f cmPPJCmp0712Om9IDATc``b $<&40(Zжj˂AtM iIENDB`d(AA`GG HH  IIJJ|KLL MMlOO\PPQ Q<RR<TTTVVWWXX<YY     [[|^]\\     ?:+ &cpeg323-05F\Topic3bO =0*Topic 3b Computer Arithmetic: ALU Design @+ aeXa + 8Introduction to Computer Systems Engineering (CPEG 323)6-2 9a 9 ADesign Process (eX`  Design components how they are put together Top Down decomposition of complex functions Bottom-up composition of primitive&#e`%e `  ee%e e e`  GProblem: Design an ALUeX  LOperations add, addu, sub, subu, addi, addiu 2 s complement adder/sub with overflow detection and, or, andi, ori bitwise operations Total number of operations = 10 6 Z"Z1ZZZZ"Z g(Xb(!g$b$0 g  b g$b$g  b $ $g$(=(b((        ;    7 H Design: divide & conquer method ,!g(Xb( !  Break the problem into simpler parts Work on the parts Put pieces together Verify solution works as a whole Example: Separate immediate instructions from the rest. Process immediates before ALU ALU inputs now uniform 6 non-immediate operations remain Need 3 bits to specify the ALU mode %ZGZ8ZZZ"Z%Z$e`e ` e` e`7 e $`$(e((`(,e,,`,!,e,,`,#,e,,`,&   k I*Design  First Steps (eX`  Complete functional specification first inputs: 2 x 32-bit operands A, B, 3-bit operation code outputs: 32-bit result R, 1-bit carry, 1 bit overflow operations: add, addu, sub, subu, and, or High-level block diagram completed next ()'gb6g b 5gb)gb' g $b$@    3 JdDesign  Reducing the problem to something simpler33g(X 3 For our ALU, reduce 32-bit problem into simpler 1-bit slices. Changes big combinational problem to a small combinational problem Put the pieces together to solve the big problem. >C3'e`e ` Be`1e`  K)Designing with lower-level block diagrams**g$X *  LThe 1-Bit ALU Block (eX`  Partition into separate/independent blocks logic arithmetic Complete each block at this level or further refine. Complete logic block Complete function select Decompose arithmetic block into simpler parts ,ZZ5ZDZZ*gbgb g b4gbg b K$g$(b(  M 1-bit Add( eX`  Computing A + B Sum= Co = (a* Ci) + (b * Ci) + (a * b) This is called full adder. A half adder assumes no Ci. Can you draw the 1-bit adder according to the above logic? # of gate delays for Sum = 3 # of gate delays for Carry = 2_ygbg b 1g gg ggbybZ     ?  | O1-bit Subtraction (eX`  mConvert subtraction to addition XOR complements the input B Setting CarryIn adds 1 (if least significant bit) Ngbg b gb&D  # PCompleting the ALU (eX`  $Overflow detection & opcode decoder (%#e`&    QOverflow* eX`  NOverflow can be detected decoding the Carry into MSB and the Carry out of MSB V&)%e`'e `  O ROverflow Detection Logic (eX`  cCarry into MSB XOR Carry out of MSB For a N-bit ALU: Overflow = CarryIn[N - 1] XOR CarryOut[N - 1] b$Z@Z#gb>g b @@        TEvaluating Performance ,g(Xb(  +Logic path has three gate delays XOR + AND/OR + MUX Add/sub 1 gate delay for XOR 3 gate delays for SUM and 2 for CarryOut Each bit slice depends on Ci: the output of the previous slice. For an N-bit Adder the worst case delay is then 2 *N gate delays This worst case delay describes a ripple adder 0!ZZZZ e`e ` ee`(e`?e`@e`.e`@r     VFEvaluating Performance  ALU Block ,$"g(Xb( $ The ALU speed is limited by its slowest block. The logic block has 2 gate delays The add/subtract has 2*N + 1 gate delays, where N >> 1 The arithmetic block is significantly limiting performance Consider ways to reduce gate delays in adder /ZYZiZ.e`!e ` 6e`:e`, e $`$  W#Speeding up the ripple carry adder ,$"g(Xb( $ Eliminating the ripple c1 = b0*c0 + a0*c0 + a0*b0 c2 = b1*c1 + a1*c1 + a1*b1 c3 = b2*c2 + a2*c2 + a2*b2 c4 = b3*c3 + a3*c3 + a3*b3 mg$b$g b  g  b g b g  b    XCarry Look Ahead (eX`  zWhen both inputs 0, no carry When one is 0, the other is 1, propagate carry input When both are 1, then generate a carry L{e`\e `  { YCarry-lookahead adder (eX`&    Generate gi = ai * bi Propagate pi = ai + bi Write carry out as function of preceding g, p, & co c1 = g0 + p0*c0 c2 = g1 + p1*c1 c3 = g2 + p2*c2 c4 = g3 + p3*c3  ZZ ZZ4ZIZgbg b  gbgb3 g $b$(g(,b,0g04b48g8?" dd@,?wnd@ n< w_@nA``< n?" dd@   @@``PP   @ ` ` p>> @(8(CC '(   !T    "b   # " \    "B   HDA "B   HDA "B   HDA "@@B   HDA "B   HDA "B   HDA "B   HDA "@@B   HDA "B   HDA "B   HDA "B   HDA "@@B   HDA "  B   HDA "  B   HDA "  B   HDA "@ @ B   HDA "  B   HDA "  B   HDA "  B   HDA "@@B   HDA "B   HDA "B   HDA "z\    "B   HDA "B   HDA "B   HDA "@@B   HDA "B   HDA "B !  HDA "B "  HDA "@@B #  HDA "B $  HDA "B %  HDA "B &  HDA "@@B '  HDA " B (  HDA " B )  HDA " B *  HDA "@ @ B +  HDA " B ,  HDA " B -  HDA " B .  HDA "@@B /  HDA "B 0  HDA "B 1  HDA "B 2  HDA "@@B 3  HDA "B 4  HDA "B 5  HDA "B 6  HDA "@@B 7  HDA "B 8  HDA " 9  # t?A?60%"@`tB :  6D"tb `  ; # "|i4 tB < B 6D"`  tB =  6D"PP 2 > B  BCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T" ? 6~ " ~ X Click to edit Master title style!!  @ ~ Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"0 ~ RClick to edit Master text styles Second level Third level Fourth level Fifth level!    S  A 6~ "`` ~ h*c    B 6$~ "`  ~ j*c    C 6 '~ "`  ~ j*c   H  0޽h ?>  @Eff؂o___PPT92p22 Blueprint*  0 **@GG*(  B$T   "6b  # "  T??"@`\   "B  HDA "B  HDA "B  HDA "@@B   HDA "B   HDA "B   HDA "B   HDA "@@B   HDA "B  HDA "B  HDA "B  HDA "@@B  HDA "  B  HDA "  B  HDA "  B  HDA "@ @ B  HDA "  B  HDA "  B  HDA "  B  HDA "@@B  HDA "B  HDA "B  HDA "B  HDA "B  HDA "B  HDA "@@B  HDA "B   HDA "B ! HDA "B " HDA "@@B # HDA "B $ HDA "B % HDA "B & HDA "@@B ' HDA " B ( HDA " B ) HDA " B * HDA "@ @ B + HDA " B , HDA " B - HDA " B . HDA "@@B / HDA "B 0 HDA "B 1 HDA "B 2 HDA "@@B 3 HDA "B 4 HDA "B 5 HDA "B 6 HDA "@@B 7 HDA "B 8 HDA "tB 9 6D"$\ /c3  : "/c3 B ; 6D"/3 ,$D  0tB < 6D" tB = 6D"c2 >B  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"]Ft\  ? "tB @ 6D"r r tB AB 6D"442 B  ZBCENGGHʲI[TQ zR(VzR(V[T`TzR(V[T`T"   C 6Ѐ "Pp   X Click to edit Master title style!!  D Ӏ Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"%p0u   [#Click to edit Master subtitle style$$  E 6؀ "``  h*c    F 6݀ "`   j*c    G 6P "`   j*c   H  0޽h ?/ >B @Eff؂of 0 P$v(  $ $ 0 *  P   *  j*c    $ 0<*     *  l*c   d $ c $ ?  *  $ 0*   @ *  RClick to edit Master text styles Second level Third level Fourth level Fifth level!    S  $ 6+B#style.visibility<* %(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* -%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* -E%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* E`%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* `%(+8+0+ 0 +m  0 P*$(  r  S `?    r  S pa@ )'  H  0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 p$(  r  S u?    r  S v@ {  H  0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*` (   r   S ?    r   S Ȋ@ x   R   s *J<   3 A?O  H   0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 P$$(  $r $ S ?    r $ S @ 0  H $ 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +`  0 @ ((  (r ( S ?    R ( s *w R ( s *)I)j ( 0Ф ~v0___PPT106___PPT9 $Replicate 32 times for a 32-bit ALU 0% 2#ed % <8 ba   ( G D ( 3 A?baG   ( s *䫅F%   F 2b E  ( 0ԣ|#~v0___PPT106___PPT9 _1-Bit ALU block  2e  < ( 3 A?j  ( 0~h =~v0___PPT106___PPT9 $Replicate 32 times for a 32-bit ALU 0% 2#ed % H ( 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*0,(  ,r , S ?    r , S x@ e   R , s *y< , 3 A? xH , 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0   0  (  0r 0 S ?     r 0 S …@   o 8 W6  0CN  :H   0 Wp  0 0ą :H ~v0___PPT106___PPT9  (a *b*Ci)"  2 g2    ZB  0 s *DJ g gZB  0 s *DX^^@   0f l 0 6 ˅ ~v0___PPT106___PPT9 x + (a *b* Ci)"  2 g&    `B 0 0D ] `B 0 0D j @    02 l 0 6Ѕ  ~v0___PPT106___PPT9 x + (a * b*Ci)"  2 g&    `B 0 0D. 0. `B 0 0D% &% e 0 0օ 6 ~v0___PPT106___PPT9 w +(a *b*Ci) "  2 g&   H 0 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*8(  8r 8 S L?    r 8 S @   R 8 s *0L0< 8 3 A ?^E,H 8 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*<(  <r < S L?    r < S $@   R < s *@< < 3 A ?H < 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*@(  @r @ S `?    r @ S 8@   R @ s *NRN< @ 3 A ?N zH @ 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*D(  Dr D S * ?   *  r D S d* @  *  R D s *< D 3 A ?!H D 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 L$(  Lr L S * ?   *  r L S * @  *  H L 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 T$(  Tr T S "* ?   *  r T S #* @  *  H T 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 X$(  Xr X S @&?    r X S \`@ %  H X 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +   0 2*\(  \r \ S 3* ?   *  r \ S D4* @  =' *  R \ s *< \ 3 A?@M H \ 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 `$(  `r ` S :* ?   *  r ` S X;* @ % *  H ` 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 h$(  hr h S J* ?   *  r h S K* @  KW *  H h 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +  0 vn@(t(  tx t c $0Y* ?   *  x t c $Z* @  K  *   t d*  Rectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level + From Prof.Michal G. Wahl, wng&     H t 0޽h ? @Eff؂o  0 pd(  pr p S l* ?   *  R p s *3L p C $A f0424nr p 0_* *~l  XLet us add a second-level abstractions! Using a 4-bit adder as a first-level abstractionYYb Y H p 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +m  0 pl$(  lr l S H* ?   *  r l S  * @ 0 *  H l 0޽h ? @Eff؂oy___PPT10Y+D=' : = @B +r@Ż; Ͳp@!4G@1@. &q K1Oh+'08 hp , L X dpx(Lecture 6 Instruction Set ArchitecturesPGaoPC:\Program Files\Microsoft Office\Templates\Presentation Designs\Blueprint.potGuang R. Gao954Microsoft PowerPoint@dXd@ EZ{@0UG07g  -  y--$xx--'--$:::--'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$ --'-B( DD--$  --'-B( DD--$ $$%%%%%%%%$$--'-B( DD--$ ****++++****--'-B( DD--$ ///00000///--'-B( DD--$ 445555555544--'-B( DD--$ ::::;;;;::::--'-B( DD--$ ???@@@@@???--'-B( DD--$ DDEEEEEEEEDD--'-B( DD--$ JJJJKKKKJJJJ--'-B( DD--$ OOOPPPPPOOO--'-B( DD--$ TTUUUUUUUUTT--'-B( DD--$ ZZZZ[[[[ZZZZ--'-B( DD--$ ___`````___--'-B( DD--$ ddeeeeeeeedd--'-B( DD--$ jjjjkkkkjjjj--'-B( DD--$ ooopppppooo--'-B( DD--$ ttuuuuuuuutt--'-B( DD--$ xxxxx--'-B( DD--$ x x x x x --'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'-B( DD--$ x xxx --'-B( DD--$ %%x%x%x%x$x$%%%%%--'-B( DD--$ ++x+x*x*x*x***+++--'-B( DD--$ 00x0x/x/x//0000--'-B( DD--$ 55x5x5x5x4x455555--'-B( DD--$ ;;x;x:x:x:x:::;;;--'-B( DD--$ @@x@x?x?x??@@@@--'-B( DD--$ EExExExExDxDEEEEE--'-B( DD--$ KKxKxJxJxJxJJJKKK--'-B( DD--$ PPxPxOxOxOOPPPP--'-B( DD--$ UUxUxUxUxTxTUUUUU--'-B( DD--$ [[x[xZxZxZxZZZ[[[--'-B( DD--$ ``x`x_x_x__````--'-B( DD--$ eexexexexdxdeeeee--'-B( DD--$ kkxkxjxjxjxjjjkkk--'-B( DD--$ ppxpxoxoxoopppp--'-B( DD--$ uuxuxuxuxtxtuuuuu--'-B( DD--$ {{x{xzxzxzxzzz{{{--'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxx--'-B( DD--$ xxxxx--'-B( DD--$ xxxxx--'o--%)--'o--%A--'o--%Y55--'o--%t --'o-- %     --'o--%)__--'o--%6h--'o-- %__``aaa``_^]]]--'@"Tahoma-. @E2 u 2005/9/28."System9-@"Tahoma-. @E2 uFcpeg323.-@"Tahoma-. @E 2 uM-].-@"Tahoma-. @E 2 uN05F.-@"Tahoma-. @E 2 uQ\].-@"Tahoma-. @E2 uRTopic3b.-@"Tahoma-. @E 2 u1].-@Arial-. ff2 ; Topic 3b .-@Arial-. X-2 $Computer Arithmetic: ALU   .-@Arial-. X2 0?Design.-@Arial-. @E-2 C,Introduction to Computer .-@Arial-. @E$2 L3Systems Engineering.-@Arial-. @E2 \C (CPEG 323).-Root EntrydO)is@PicturesbCurrent User)SummaryInformation(>8      !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGHIJKLMNOPQRSTUVWXYZvt^ Limitations(Use principle to build a 16-bit adders 4-bit wide carry-lookahead  Fonts UsedDesign Template Slide Titles4 $, _+oNEoNE$_+ 0Guang R. GaoGuang R. Gao  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ\]^_`abdefghijoRoot EntrydO)PicturesbCurrent UsercSummaryInformation(>8PowerPoint Document(ODocumentSummaryInformation8[Root EntrydO)UsPicturesbCurrent UsercSummaryInformation(>8      !"#$%&'()*+,-./0123456789:;<=?@ABCDEFGHIJKLMNOPQRSTUVWXYZdefghijvtu ՜.+,D՜.+,x    On-screen ShowUDel>z Times New RomanTahoma Wingdings ¼wArial Courier New Blueprint+Topic 3b Computer Arithmetic: ALU Design Design Process Problem: Design an ALU!Design: divide & conquer method Design C First Steps 4Design C Reducing the problem to something simpler*Designing with lower-level block diagramsThe 1-Bit ALU Block 1-bit Add1-bit Subtraction Completing the ALU OverflowOverflow Detection Logic Evaluating Performance %Evaluating Performance C ALU Block $Speeding up the ripple carry adder Carry Look Ahead Carry-lookahead adder Reducing the complexity Limitations(Use principle to build a 16-bit adders 4-bit wide carry-lookahead  Fonts UsedDesign Template Slide Titles4 $, PowerPoint Document(ODocumentSummaryInformation8