ࡱ> `!05GIvi 3e=5]`ZxY[h\E9sf7lzIS`)TҘ􆖤7!FZmMse,hlTCT4h)i_ykA jQP(s6ݘ6)6oߜ7/!&O9 0rг2x^AqרFFNTYoڱN[d?bEE2/ثmTjco %}{)Jmzʳ<|*3Q4}N z3=|'T2LF)܌B9,?S>d닾n=g2z~ߞ1x\{׮d-|ϙgڭJ&v &rMf44;C:ru6262SS\j*zGR{4ӣfWj,S)GT{dbc<YԬs5KYsܹg&/\dnr.2. N~rN}S6H9]~üfsRND6aRN@O6oiӮ)ger ;[%r#zr.#:E.he3\+7Y]rfVZ4P l/d裠J6bJ5[K Lf[SEmV%Jɕ MVgC [&J#:(R{^b`+h]`2P lns\=Ku@V\1W(TsImb`+\fWe@V 9効B9P lKΆ)(R%R^ TsbP[撺(b`+KXpϦ;ZnL~azazazazh3r=Q"'ee]O>KGN2) 'S}d!'S8pJ)6)h92d 8`)V;yD|wiv;b/^o K0o hJ}m=\!&'W&mMr=)*s Js=ףPSʎoE{5絑iXF1h b/N%ZVS8e`Gb(O <~J229Y|cHb5dS0=>Hߔ75}?5=>ȼ@-yP)=J̉(ePp?Qj?Fצ?5 nTo̘ay+|2wv| }c2A.Z&Fͥ_|;j~}udlwyO I=K_U5 z%ָ4B-\_PVg"dlY}g4?a?[J 5[JY>sU}|ݱ5ljl c9VBb=#xȎUE~έ~Ive oA4Xd-Om8RHvVww&]G:{Cߒ2ђF(dX0\7wE:9;t#Se,X{iߞDx}/:=*"Oa׫z4tsO,TKoОCϑSdY[[G?UH{saORk9lF @ȿBNn`|mGPNG  IHDR8LhPPLTE111999skkΌ{{911RBBƜ֜ccƄkBBssZZBBBB99BB9999JBJBkcޭsck91Ɯ{ssRJޜZ91ޥ{B1֌ssRkJﭔޜsJ޽絜֔sքZ{J1Ɯ΄Z{絔cJ{cƥZ9経{R1֥sΥƜ{Rƭ{ZΜ޽sƔƭ{{JsBRJ9ƌsJZs޵Ƶk֭cƽ{ޔ))!{{cƌksέsRƭ֭ZsJֽƥƭZkZέRkRƭ{c{9cRZskތƜ{s{{ZJ{{Bs{1ckZƽޭJ{c9JRccs{9k9c{skR{ƌJsJc{cksBJRޜ19B1R{{Rks9R{9JkJc1Bs19R{ck)1cRZcck119{{kkRR{BBk11R{{skcRJcB9RνRBcεRBZs{RJRB9Bֵքk֥֭RΥ{c֥ƔƜskBZZƔsRc{ksRsZsBZk{BRJZBJ׏MbKGD cmPPJCmp0712HsfIDATx^ @u?30xՉ h@Ax{ _1u9Á0:ry:㒥.B&GJQ1MQɕ KSR|sR$^~tm?>>w;Aw p;Aw p;Aw p;)69s;}#Yh̐qG>rNJ} ߟ0v:[Jh$sG`p\P_{9ed0(gq #cSBN[ f_/8th2 )~`]p.eT$0Ӏ;] ?el)<2Ey Kur#B@5ˀy80prUWwn^̺܆ ]M- l%#BVdv [XlO !n]j] ?ڮS YKZne+SRB<4/tq봷ĆICv#fH$t<8BwA/fGB纠y~{ɥ,ąSRRL9#Z.T)ị_]koo?Kۯ]6E cʥB|N82*ʡCh'T=k?!GBIOy+ϟo9u&֩?^~ٳn~žz {kJ%0 Ag.%\E/\mA?7uU<%`4F`SmFh4p)9-OF 9$>yu]iz$xzM%ч2p6e0#2ʐWRsK$;S`ϑSbxf/:nIB) 0Hwd:c]Kxgc5 a~vOgSf>{pAjŒ4Uךvŗ{윿gD؍<[t``ŪN?eL/8%7N Kb5oO;+I6h1'( ࡈ/#p2\'_]睜̼Z<& 4_"菽E&1$tЋΟu{.PcNXSޒl~8m *rrSȐ26 CuMu;9*ASy;jP66u2ٿMXm-K^|ErjVd90(!qI>RlͬY3e;&|=0kC1>'[ٕj.E>[VU~NܥGi6k7=/0)Q"8169 8JK%A*v:k)1Lٝc/(?߷)AI<@O<#_9Nǘb6K6,N]_-"q +xؠ 5ͫZo ֆ|w?`mn_8㣹N{^[56UH(5A!Hh',8']M%FNK1b9 79)9H+2H$g&%-=Vs!x.1bkvn̑Q?iYIdr!v6:^2I>k)J`"ұ}0B谦EE3{]7<~CzA"^~mQSݔnW 쑸-)ƅ ;~VW?K,GU6 JwϬ2CCcXzN퀁0؇~g[ɖ!/]s ae~t; 2XLXηPf94qY9{Ծd:wH V4:һ ˈ%q`j:=K&Rj)`lP"͉?44M˸Yה,i|nkȤOCO 6@TOnz7G1B?}P:3T~X;kݾɆZK;Òz5 TcD&J}Ή;MYf CQ0Śsd#<9@3'nL8ezklOg'DLƹ>;USr92*bOGw!mB65*899A=`*_:pNYPZ/zYY1>.p 1ǥQihk*+~xaaPEOn>1Mv#t%\H%1"yw%fbVݾrvR'+sZ @ xM1$s4%{pҮڌ07] vU6嬰R4;"@ T{z(0ƫyY#a-b\}'/'0QR}":]0Hp%"TyWNl (U;<M5=)c^@ HH"ٞKٕyn$۪9RNnޓ"^U2"XWS(F IȼET53Ԗw΋E`IE57SiAHEx8wA11=˪4KlOImZ IO'm6hk뙳Ӟ[_Tiޓe: ׃w {(! sjrWP'*LT^/7k`߹oEy'|ֺOJpQDjEܷDv\\8Wc[6۞3JҪM'G$FXT̆z0gv&(yg=V[`%˩`|zBG$<޿5}PGU #g<闫dbBmyU#De8 T/?9"#&tw?GғKvH(֓LGRFR=!iUQְE.2<2sbBV#3NWAť%8iOz?|rUۑ r ou?e=`!k[v2qBىvnkŚ@pPOLB_ӵl8N؉$kY ֨K TKDFk 1OBuJus6˕#Ҍl+Y{ό?Ղ=29 ^[v2#" Yzߤ#*1"$uY?{©EK7-o\|YcF?~ZԑwשE/]ܼF)+|1xlbPosbY)ƱBgYƈiox&DVĵlM WՀ=SS}n6{ZVZ~ dþ2MU+-(ô+|oy$jID 9VӒwի.,͂Z W5E>D[g;ҽ][g=SUKݸ&aʥz04KU+Ml&b5ƍSv?\!`7.GᦷG$Y (nHM/(Iϵם|пچu.aS-Egf޴>kؼ&qB{zk|l d|/;1#²~qO⁐?qDhY]jVU[:o@<H2 ^{!`} tr+땶N$iXmy%}jci\Hqtym[AK}K. =òz,踐4km`Oo5kAKtR?$j}4 L<5@ *.Ѵ Lzڶ#%OjXxݥgWMh7eJ-~!1ESI h=:lF7O"f["yԫ~¸Z2^^$t VM GnΘ^ho[yWbRl9ތWإG@.Xc[XRaDѱ2Dkwk^k=1XAN^0Y< ;jlj yC14¡eџJ~9ܶ<ZgMWy+^?4q*k7HS׍HnYlZzxEYJ`OoI,77O1dֳXFN#fUb- i7pv1loLMns:G%e4橲MIL6Vik4'/Bz RɱcߔLYp6u"1@7&B^ٴ^9J?KD[ zZ/}fA!݁1ķ*eKYB. I7~ iѣ, &i"JŜ! h5@UX<|TaEؼPP =|ĉLF?"㐐Оu A 5Cz4&wt2%\ӧ5'$4h_Y{^VVUnM}cUyI?z /$+^Y -򊏎mDHE+wݘo?AGZ>.a U%v9Hǥ[%Ό7c.!& iTH]+q Y=PNTW-',[;,,uX}\we¸m*oQCiᴤ'NdZY{SI9M݇g'%§ŸW+vŌ>AJ09xxz1ayh>!e4*pc55[BUUiA#I m 5Zzomw[9p:N17,L6QU#^y xQTP9xJt,^qCsh™cp}rL7OXbntݿq~\HL4WWbmڿqyIV|&c˩k8?.-*zItg]i ]IrѰf#y &buU3,t!EdC4ח-*09hQt?KU9ɉuh]2M<ULJdzabّ|?]3+(*{W90V.0-byb[)\ g-x9*F9usXA=x;&zc>RbVC8ow+˙myB3nɑCt_1`C;C %_((JlI[~Y.25C@sR =ͯpHX6!,o  [o"a75xgzJFC+&:d2!Z'>nrNI8!2u) .L5`B 43Sqwx2*?zo 5]T #:U,*[znpv@.b tTid$SzC3cW$AF–w59ȃ`s$J)6֐矙1]!YCE?0 fC(UvG|9Gq8q FsXx>)H"2[V]Y*n t5MQvbwQWTj 5'Fٰ 3fh}4\%*Znv,-((XZt[.p='ΰU'5/l8ϫ#km[C2VH! bT$@"aR~I9$p#I%S2i?R~%`jkM!'Zl x2tqTGUʰ#UPA<_jIUJ}n0LI8F/ުhlxbkeez #$)&C 1ڦ*ۨ22}JV ̻de|nqpɮ'w rJd! H8MdQ-0i+XKwVVd0B/晧W:G*GY6wsM^ai#B3xx8d`H""P7PI֕pp}'[*by^opT6KB)%7TrPG/r=` 踫`B@ll,sn6JQf#blujywl_e5y-E˪y;J;ch3gf>97|2і jUZxՃR"){b~8R` c)rM Sd/MpvhA-lRRGNF){FhqUs^i4OAхsCLTW:<(iKN)8 7BVo_E\c+͑aKi5Z}Ѭ9e]TG4Uѓ \ v lj#i4ItU`!~r7 O;[`\ A$-!n:F_,YȄkb +/"_%)m.Ov U.Ab8 3XTaXm^ KzVGtj3F\ .S7,{ oSOUYFy?G O}H(uw9b\~ER]ED ;]#$ .(͒ Y:#c,utIItݼUOR%.RXo~ )呷9 p.x ,u]8Z RS@D'v`Q t֍*Cr2S贴ٶZS N<>R]3B ߒqoQs,?n^c 1ECح:`nNr%4902:ݪș?Ϩ/q dIK_A4s#SL IÒ?79Ls|)Ýsg/-_ ͦwwSةS*Tב3$F({9SB@Q |H8@9ΧZV93?$u[T׉$#H-EG<t:ݽ>|oj Hh m*(݂i3eƙ4({)ɫHgH=BFDRKIk[3J%YfϭJ O͏qZ慧 Xaw+W.u xzksT@IBC]dOzaMdQQòet&$2 lHMHAQZ:6zܼ%3Wށ" ­4뜇jQPbY&<HiK6MB`O~0Zn8WM[kG HmCrw(K %3%_J B*|MYRcZ)Ɏ{k/nLvZʪsM*_6Uͯů cӏS?`GpN_\BȈJ S A:PE?lbqYP]^zV$(c|=(<مŸ"2O=N&׽eҋ`wtQu3]n l% )0s8; _iRKLfJG J=f? I(xxt*iw6,aU~HY!%s )wN>~yu!b:pQ^Iy+?]JMmOÖJavw ()U}]7rq|hR\$?r;@=j(Ysd]rT$[i3dC)= v3\vRq6C' #x23蘌x`s]"=N8j*z+9C ]~ ⸍}\% ہL-Lh#EB<2l= *t@ԨΥ}:ks)KZX5{"!,}lۯ!RdlR 5+w^ucp@hC4%|}(́"uDfY`/9+ PMMj61Ǥ(l-nop FcS5;{,YWZ[i> *{,._Ĵiw%w|ق8OdU HD4PU}So*'oɃ 4+B67*Gr76w|K0*F~wHR-bƛFF?+LE2+|3k .19m|;v񛢂5UUTLtEr++L݉%KP 4#{R& *M*͔Xjg@k9ieu{k؛Y8Hf|e6-q!ózY&iG&;)̃#sn4;)4'#Ha!/W޴Xp8.;}vfOdGClݺ-S!-x/i-Q%C\'G6AV=FFQkk(GoIvWE )] xp|rF]\:Wd=#wX(ޏޯdىjKfWk;t'3sMcockmU 0ɩ'SoP}cۍFJsf'+ع1$ח?'Q+D$|Jrfu YI"窍Q6\GΛA6&XB3%JGb_~wd,9ڙ-2rCq J(}Sos$<d0+Oi!@ ReI;en)-B _O;ˎʠ<GϦxG3%u ?BOq?}&$`%C!\oԜ4C3ߵ/t|6n' Z&0J&fn_Nք7j+^M?4 u9 IfCN N^e:3(+E}N+TÓf، :=)!> "%8)hr(L ~\RXvወu!Sd*uPz^hv_ٟQ~ \\h9qQ`:מn_ Y5w]5ɠPqSz>ǑtB(s̕ևB  x9ڋ8(8sT&0h~zɮv\Щs;̞_;]Ӧ%-Wƍ +T:`gҜ>S곢~$? H)G,@S~NݛzT8ƃEUmw+] 'p4߅î\_Ƽ i3US;ӮKJ=+P]l}ι8*/g'޻e]C}R@ G"PNvNRBDÑ^][) " 8p: WPUjA4sY$J E&+/}! \=Q sݷv}cζ^~{#C.6_SHenZ3}RjniнVX~RBg}ΰLV%X I_sA)JN]HOHNÓ0])^Jdʄdts>;РC:N2_/Ipv?LC'S¬-%V3P2ΜB/ k)+n4=l=MnRV]^_\A?7ٯDiNζxeg]9%&>o/+9#eDoRGCsەC77!,x*1clPq*)]$F3P`YV9vy9,8Ñ62p.xM2T|e=fVu=YwpzwRҕxށ/g&tgڕNأ)8rW[,4Y# <_0WH/4=avuW\tDTQ$|-w5\2þLbíѣt}ŮoS]9f86-Ԁ0xE3LD ъtPg-d!T{F-5!8GL_i=!pBR "?d-c>trELaik҆/$ĿŘϟ:]aaaz$vOOk``ķ8JBj"/4pψvb)6G}"N8}˝W;vTlEDc.ptɈJFNM>$,IE*U钮rدZqUU(q.M7(:nE1JrGZ␹ gN(qNPϢUm4Qtgv:։wl?ވT0,khp1yvE=JWeg:.}̱qdjY) %1٫S\NwJGcWRd~.U\B\`7e!2B~Ο:<0j P.)AZ-"[]4*NLu@-dmFqa?i %"DcUl}q##V?z&tS>AfYdIIgv{y)ɩ?;}JeF1$)+`0JJ<&SY0-K#*v*mסCvA.r@n֭t; 8r}8M@Ta?bQpGY@)?"W_@94%'+1U\g\Qೡ(7G@q '|#'oEAmb>MJ!dI"^R5y^u ۺ: $ol>u:CT^ 6}kW>hqj(FGtoL=[@'ɫ_(N$xZÉ'M?7EX1Gzs.ZW}dG(߰n" ^s|t1OOʦ0Uኰ&SPhJ%.E쉗\[QJ}FQj#,Sz9U,P5!h=}0@ jDRM(KP#}CLQ%^Ȓi "kVso{WdAKu6y@6B> Fp~ p䯭r]JM A[\DA .aNoH9NlV&0qqH-gݐNikS;(csn3p\_WСI0NRX6: rHHxJ~yWT9@}GxEvE,[aÑqi;t]|)5knαGH6!ħ|qJ:k.+7 @XiM gh5" KStt E?6>).@S3B%:(l"+)f a' iF +[!(?2>Gt flHٞ]2Ċ h$Ý3 LVG>{N6(m,hS 3ϰpkYMٲ8rt8d>}m$LB7Y1(+Пb@ŒERmBWo cvDg1ݿ㍒]D+:Vf;6UnZ0fgIE_P} pH")GtX.Bnȟ᷉w;K~áf_]zo_޺eB@efeyN3{lΠˇgI$EN;lo &qv|h)+0֖Ç㙋Wo@Q?`Vq_mq\ݾb-RAfA"D1ԣΐI=q\l93G}V'ľצ_8[W*mRŷ赵KWUgKO :(=SA *r L3J?1K'M"%e}5)zlŵ![O宑P_Ƶͨ )8.c1sO05!CHzʅҞQd(r̐~V` ~ KT$SW+-)˯pLɝop}ҵIG=$8;]SD]1ygiRNPC/*1GJA4o#G/15ƒ.{o_LM:.wbɔ**[q ;{Щ]ڇO+th_jupl,g  1\h/$ Z$l zxsbp48" bX}=Do]0]GB~\'nvA paYJrFxUzJ? W82{6?ܹy˫ÎLÜ%^*O+@]'x89^~Vs$326`0G XT_;EψX QDD[;z(]Xw/}xc:E mF_t6yZVA`?֐+Ȥ"C5?ȔA"AAN Ғ%5B׫ȯ}jČ X9F)_ pk=B 3S3XnXVqZ,j Ԡ0i__M|*8!P 6T&-*`ȯR$<ܬXn(.TWG256(/v ؆Vk475 &]a]U8dG F~Af\Aǁn—#}9#NÅ|x&XNE*iZn7 ~HPx\w8M%E #*,g_\ VE.?i"06VKZT|Z!U)PQ,ؾᐫj#iŤ{;v^S諸 0!谒uҙF% j۶RIQփ(ńv69;lL*n6_֛m/{ .h `bφ_55ʫ`YFPwԄtǀr=$Gg/} }hPce&+ Ye!A%bI(2|*f%{+u& -ny ɼ~(.ʗz8sAΕ"jJҦjUWP2~fYǎkDFOn.;ASĘ_މr4wEFz<y )Hl3gwOĦ>~H)lzlCc \O]P\%0SRǍM{/LN9χItDG}bͻA21tۢ#mʄ  r$x<|ҘE3`i{Z)rߠ~58A dgLT"Ŏe.4d.c+7"(X].'K<qC풆c iac/H6n^=9GǸ,6؞@qwX%ٹ>O>12,̆E:ش`^?:6?M77djl/Bcu Rux8:x8Z]Y˹>Q]/~sYd2FЍ;PYy0&Y1UF8wf%QY|)O}DD]ȟ<e2fg`+Y9 zS2ݶkʋK+6TUe&MhVMKFAiR vXik l rHߐpx 1m;Qa䢀Xduc B.5Ǟ:^b-?.,V|LT/ٴISgdg4$ >`.Jt"`yt#lE5ZkD/gPC]?JՇPC@Fm\v톫aplb" wf8]ֆfCDZE,z7O{*'%@e=NFj{.I0:MV3d||&8o$CTrRh4O9D nJB>Cf.iV_չxjgV/Ӂ2X(r?2 Pp߷ %i>~ "2` jD}zhZu;/6hݬV2e'-.[k |Qpn* `7U9d8uAȥ|`c "|H5'W3\hmҧeLIi~lrTo:2=)7BVbp"W0?@0/K\P75s9XvD󬍽q12,>+z]x3&ʳ ˖Xr58b9QJsߦD~)<Ġ,E| b8㥏m!-V8`yb4m.9UooXmZI-=YK}koqHZk:6ZO>KA ;2+`y75~ƢJ݅w]~/)%w QʯmtTc!PnC٣pJVrF0ax -K%Ti \Ic.9%_8& It)us뗭*J)<+>2=nn+ )~TEi57!qěRcg A+jM^>RGp?7fsVh:s #nz0MD~iZ/rrM8-{PY}b٬ی\kDŽ>An~ڤǘh9jG\6j×U+azSm5xeWa:>?5w6]!"'+$-9ztψ5?ז efӖ7$~5EJsZ7=41\gr[f|ƅóҤ[v,$/ᜈ5+L $`lv_[#6PdDm3dc~ yu= fG O)2&՚J]m)d҇JHߡT bzˣP,garZȠ(rN"#%ovU$EXRΨqtG*ZA ?MyƸaLIOszX t !`*Mx_E1nOF<&!!l2&b$ V(`?2ܤ!+j4HR"gtM 'vd2.\ T#F BʣZַK -bvg<'O??KSK+zLU+8 :Thl۵ F񙡨=.fcl}_>Y?:Y`[ LZ3RgYY;ÇMQH2\ p'ƣ[ϟ#\+ s & ̯ʪV(,EJ[-2xr\]ʈS69XoID*No.9#$׵'S?âϔeو:7,ͥe͊7o*^5%T4~J|eis>9q |&㈭֞9h8AgxoxD*Xx$?6R XA\FۑksPiyHarӺѳy-Tc3Si4dsAC a? vNylV)<'>̩~s|i| ND.)6|[ 䰸Fye`.8m] +RXtސ#$fyLD'b$m_N=kȲ̱Gɥz]~!G 1"Xt|j4`>0v@TЫHqm7 J9ex?tŚ߄s׿PrkiJͺj+<,!cM?<'\wpxÚt諧VxPHP"́ay^i/8n/9El#TGGbm'.&dqx8[ 3Ө}`> /{beŚeqSش Ó9@ݼ6?-b>qxjirj""IŶg#X)/KεH҇Y4.)7LA#xX ;8(rWgNA84{zsOENswj=1tpW3.Ŗ5>R7SsGlrld24.qXӯHlGGIdLAyt'+_ IG>FqL`4Уv`Rr#;tyE!u{*[:ә§ǁMSH^M$0n>['qv:<yrpI'ԅ{rkg*)jʪI&XǨ1T`rWe/=q:f9PPsjgI}BJFuH8Ի4F֙%%щ: U+ueO[Ԡ왓( -ʝXl*8:fu~ơ3#={{."/͖&iCU?(8bϘ:{>Dvaڅ{`2fjN^Ȟ>_ǥ6 ?)WnAuU'p\.J/4T?K,ǡXyD U+6&[^EN#+v.kD)Pl 'N=扯|AF@}֟ep I*Rl0Otޘ}dzuo0L8QHWoNRbrAcS~vb1ZYDѬ?lOHʡ!YwV[[S5Vc 9)I=OlZynnV7m(ӿ]I~85gLN(>ijlCx|oxL<=k0. · ̔΄ ,:2wР˲JN7 hFj_SDeť +7x_UKz67:ybG(IG&g$] %)(]%kVהӥ6;wjɈg$PT_HlR_~ed[bcҼɣW}".aI G?`_ԁ:P&NkheHj(Tm*m$fBZrYqILl_^ճzW)p+|pz{W..)7aG: u":),V_PJwsPm=cu%f///,כIg5 ?AQ hTSa;#aVɁ`юI-*՛Lɳ 45?P#vqftlRel*sfǒ`ᒾG^裇&4Rl5m$դR*{'JnayF~2/S#,})aC{_Mfu9U-dɑ,|N{DFz]%S+CȽתTR;Ql5I=&Ay-Wk9\/<}.Cyl/-ivP8{Pfִ+9*XhŠg'L6\8B6w5CorG‡PIaΒ#Iz7n6c:R8 T<K3 ~܍ېTj @TWgfSeurTo\Bcc:I=w-m֍+]VKzȾgL:$~QC?&p17>wR3z&`9OZ̡&"&JINyt9HepCxNET1h}gIf"%VXma;JjZEAύ1>)1k%p:x k4*ڕߒ47K } ["ܝy9\{.zNގ-&791[nv&n=znKHB:m.<Ÿ h_YS $.GIR]I ?2#YùX]W i4N_r~qq;FEB]e h֦7xA:;pF$G|9BEu,go'[ZsguD5aܟs1˱aꪥԼEko)}S3NQNa^ƿY"!BpX1>=%^B4J(|#K:Mצz6t!΁*}9vi< )W'(*6h~h0Ph``դo~SX,Y9):p<ɵc92}^Y~/2FKj7TWm%㕖E3?:䉢o^lRtv^!BB#h>p;?6GB[hZިӽ[߬ϥ\-HuɳwB%_V67 eg&+(iv5u-5gVk+7?+(~h&;3> HfэPM%<"n1ʺ5Òme"ZLaRi)_NZRReC}biO<9Zm G;ﮋl+g9#ry[sqt試r[r͌+Kc<8 >eh}h֡ *U ^#RY!n~}ߓӕF44xZ2y@"OhMy~4^sDlHk^ur3#FZ/-l,(,,,/?R\~~[|$#qjbb||n轞>EGCo@obܱ+֎RZ(U ^a(Y{QT;[oK:eǬd0&voYxdvEk҇;%jN&OpUFjQ$&` }ZIeAupM+ǩ8g Du"R U>sXk#+}YL=E# +nD˗OFf !2V;tAKr#m 7hQq8 ӲRqބ{5t+9ava8wo8_h2::#_2,HXvkP`S{y~e:AJ\b&6=9+"kFy$B$knSǩBH`HN/.xKn.\!y[0J*נ̡~'q`W1{2ʚr􃣡V*)9ʚ`d/80h6e-[]V֋FfzZN9D„m2Ψa>Q|XUPobspJ̾UC4Udg-iW~8|qֵ̔ʽ3C[ ΁o[)[/nS߉PK!p?SmFD$k'LT!4kυ%|E109F99M/1͝н?j[0W̢H1b-cRn0;ag340m1}|t $_a =Z[LZ=0M-6%i,maWNLl rN(Z]T\:S %!@Qf?ܑf5E(Ћfiq=^eAk Q_Tsbk@=z!@ ĒD%Ez l(>P#ߺBO@E.\Zə|o2[ ju>{t6UT+̏hsXv-85"(j.#?)`2iR4JlHi˨ruu|>! X&fm?q[uxL{X'Y& V$*AHuبaJvnA $kaq;\ݦN[$'DBwΝ;7?1E&]lEd?9V} :a+Ni5! 7?Dvj\N籯#AeغN@ºDR )W~6+9ѐ;cC=aFz3DuxuM~AAb Voqhn05Aݙ;w| =l%Ч|pj>+W{C3 Jr0֒RwcYulxԆ>=­OR _*}1B{͞59mTN7X6"nc=V_oܩGŶI*U]zр߱"־H~ h(y+ @ =]Ga%JkP`dFAq-AIZ RIU(9/љ+ZZ"S֟캊z~ѣ5, ovڍuN]{d1/v )IڨpC>nE􆭃p]dh'.oшjA ƹ4|:Ȗ8UU7~$h4R=4RGCk17ydj_;w)YvݎF3hhۉۻ'cմ/9yk NJ[ktYnyu!ؖ#jee3۰^!ʭΞ af(PGhżN;[=Ry)eF !ߏ<ΰuH0MC^c8,d KŁLNt;!B%c!c/hʻah{)-$X%ۗ8uʜ Ƀ0I쳧N8gѣgC!!4 gŔwDJp#RwGy`8G4M7W(]upu4saI5O kSPOqPkȌXAD[tA۶LXUZfB>x]pX¸!Oզ<"T[aم$ka1AmECÁ! ;> ;n=Z[Z6n+w|XvX9X+p`KK!شen!8bbBb&/[%/+p'^zi6l({JۺĚE!>DG%z{k!f ϗ`@=h8/ٰrWTBZ&F\=wKeTץf*k_"ѩ !X^!27;f >+N370J)OQf_{߇8uۇ궳[مtiQ7}ibɨ~0]H?w+ 7lO!ѐtrCxg}O9 XPYV)p7sI h$KAiA[ԍ4KEdUGmA4~gxO^8\4Cmwq?q|g_^>t#dܿXiH PZNܓ1i2՜j=YxќӤ#VAﭨ;T0 ]w)s|G8[4 QfaYD H';V0Lim@B`4JT4+MxtdLupn%];l?53 ~sORUHPJאEpǰ-lRQV+}rx,B+0;Q,YNK3r aF=E{m¬Z~È0fY4g-Bun1!c0хjЌL c1Z)1|YlWLШQY/YYs!97 /*w-C7A.!4! ,L ~B?=qd!7Z7hY.$b#(.O]Z'"_1" ; & dVVf̹3qa rH~Ş݊51󋞜>絵k3y^$bCUuhD,E#6t:D8"%B*CD?rc`XwA6HU<âQ;CZfVkcvjBEE'Ja8@'WL3ۜz߅ˇfZtO{B2ϲ CA*9-ވ0.e!(3B#uP%v݂_ϒ׊&GDEMKd@aUMJ~u.Hۖ>lʽ붾^udpX͚r%4}z}q2֐MGr!x3Or B4/Y巚>vEscu_Rɳi %]%ؗоyկT /?%ۊvN}Id|qOp(}Ah(]VU YF, C}mʥ `J\v "&=cɅ07tڴ1 ȉF~/ǝ_8r9@][8" l)uLTiΝ9ST}w?mqb8סdEq[֮YfMҵUK߉+ה{˖ٰ.Bm7 MM ٕ8q[=B۹>sS?G[/r4hSޗG^jflʨ(>?[GQZWUK:`Mu͙=G .9eҮeQ>k֮q-v؎̈늫*q#n_J"H< tp<2h4)L94tz,榶X kƆ>Mpv7C1ӦE``(He{Fħ;\cĸ1Om:܄M<>Mt,^{0b+x&yнL>,>>yBƔ)S&8rmbc5X.ͣCqb+ _ rf4 PFӰ, #޷[ÞhAmÂ[O+YSOFŮVU.?/n9mY]Si54.hcַhW7ozYU9>~I8Q#|hYVnO&ݒi6B>TW* FHrEhI7~V4NaiV -]_|rD0}dvY"tafZZ( %5Ur [_/޴Е9>>d+/8P q<$ G3")1WJ3/UFN -b2(,1KERE&EX%]U-(\[]VcD6f?4_ǏEɏ)s#bD&44l\zqڥ\Kĸ'`{+DkmhἍ}t"BIKLN#`#Q88'/9~R% ;Iho"Ht4hC((QA&.#,TVzi]sdkc}3RG\z-Uk iÒ;ji x%!EDLjp$7#5.ƍ2UwVn]ﯘpKZ.Q=E01tsSQ 2Q]E` YHK˫+ʊ%K~|y񲲲MUk滬');Z8@!#_<P'F%.;t7vba &f5XC@9*lph3!C.Z~UOHMLq#q3jP rp?#eػ|٦#L,*lGJSrM52_=OL7fn ] h 2 ç5ucQ%(P\lǒ0eoDq#GFOO6lXRRbFF'.[VYU^Xr QëlNʻPWGF*&oVHsU %@Mrv3{>Q[E5k1Q| к.,`'` &ְާ{4DqJ÷n3#r%ZUJWrKF8yH3^vl0-pHmAW񐸈+{]-9x:;$+M(ִ +&qcdu ZAM#`'OHg}[xuq *|h;l}w0+LJ>8ppR4 f[}Wpd\C/ai>8Wd) Kkp,e#>h:):m(aqm@N >ؾP=LZL2cC gτ=2"P =Gl>^Nq ,qDoSZ(yʝo9e%Z.>(7ڨ6/JT^` :: ܞ-53``^|i>| Z<;," dzzBT k&: IRZd <_M{f԰ΒkHзH{ɿojukVD0_U*, y1l7X>o)2i:}FppטӧO_v+,*xv#,4k8av+bSҰ 1Q=˪{m ~P}&j@Ci6C8[q׃ȩ3Zn&ǠbAv C_b)) MPmѠ\B@m F,RDq>EQA28!HӸLz`ƍ\560zF{=t2ޗEZW(38=-h1> 6+d[̧1PGBV+g(m4*L7MDf)e>;5ycA:|Ps_?΂i{nh;."n$[Oر>ٌ)J1K\3𧀀lN1?ocD-^'7nL#?_'f(9q.^%׌nE \C^r 0߄14d.6E Y7pz6~sہ6pF|DT>bOX ]׾+ȶq#a)>U3-R¥&(;$E4+Yڌ.$L]r\l1@-\ZUDՒn37> Dc1.ϒ8tt=GFdH}]pNlu0M}pt iF8UiA0HKKt]$ɡ !aVl L-) ﲍD(i9wGor4?ҥ 0R0nB0J| hӹ oKQfŨt/{p;Oy8U$N)ĜQ2Ҵ6KG5M@t]&$5dL03-6:nXη)>Ԇ_}%7&/,qDfFCV,~-\^@%$VYe_PB4oQ.'yZhMB6z&PݣOÊvzm3{Ⱦ"PH;/3"ۆ a[)6FV/| 7;d8Eȕ VS>\$fl ͖siQ*`ޝB )f]Bz"ݮdL-Q l2^aeаLlNvƓH Mkv1C-,n 10)A˜%MN~-[ưq\2~J !T @WN+iIobJ`4|\)P)rٸhAUj#5=T $DvJFo-OkDu롥;%(yNijb(3),aE1dž{Pk?nX5Y/h9 Gntk=ȉ|vᱯ,A<%ٚ@v|۟8Ư3l(.5c(^x5g_3"-$ qS;؟J$b oWAWϷYWRVN²K?}_k;$"> r,0`/~~t[N_QY;n\e|;ޠ}]NJuhps|oq 9h=u, Cɠx%" ;-wKH"+?۽h{·ԜD?b_EdWj8`itƷy3/n5]lࡎ5޸ު-x 8ufB3Z' i׷Tk`sps~}EM5~߾-;BG wrj=τ">/7gʼnrˋف9g-*36Fj񙌈aIq˹5{m[y9?= sn+ф|현W?6a&(<=? 3Ϲ`W>(sk9qݼv#{c"R#sw p;Aw p;Aw p;Aw p;Aw AHJIENDB`@=K\W sL4W gxU=hA~1phr$h$ȁ&;5D2MBPLcbӈ6* SH`@[MER|73o{EDTg|OyrͿ=j&~F-7})~  ~睰/%~ŷxV AmH߃ﴊk Ռ6y˲{nsχ"bz|4y0Tot*sy{7/YƱ[Ny{/ pF7Rp;RkH(g?~CCx)nG>DB?V0lie MBrY}_; 8ƭHzp -sVJց."&)^Ո/o!^el׊2ع8Qn0!端[sC?cGG=\k7˲쫅gWCjVGДjyx[G[U w޷7.Oy1>6 _9eZHq3?u_zs/p1ĿyV%L)Æx'2dC<7fSL=f{1?KH?&9ܐcq6[\wco/3W;[DI)9S|뿦s7r21D?hHHy&c|c;T({&b>O{'\|'X ۋ5ŷ22d^=qSl21(--MɽlJɁ++pv>O3-ꖾq\^tE}6>k9чG ykӾ,+S3£ć쫰{@ ʾ1kҨߠ#ޠ9Poh3ޔ}W͖ /AQ\P.zK͗ &q5hM<:v £}j @x1 6G VYx$cDx8"|3O!<چSs <C05߈Yxt;{Cx 5_u{F?£ՈM1\ D@wxu#ZJ>£-T_H!<DԨΕdsq5k"<1J>G%6^-V $DxtʚuTDԪ#ؙ@Q z, #l1 F ZNU RՈAJSNs1B`kIMgNqBW֞yՙD0 33ד)!V5 D(p9~r90!9?}lKz'yfmi\FT|ںO[Zc\c*::1 ADUJB`|seL bջ*z`CUG-IIT[ΕmGJ_'+kv/"@\AeseQaPl9L!VW*z`땹ʭ:!Z}+3#FTln+D#^}Ww5mվwdDŽ꼭WݓD[+x4$'P=J;[s7G)H/ݨ@1ޮ9?8cuDٌ`>Wu_|a>^+_')KُIE #U2 ZF}}}l}`wp9#7-x$16| aޮ5nwc`(d<Fb5B{0\g`}ue-^FR"\p}u霯o?G|#}* Op@j2n%Զs푈/XC%.wg=0stߐtϐ\N ɽl&~I5LϹà rwN 7rk+cŽeINnKN$'ZàD :Gr5]SܯC--aɉpw^q߉HN{8*9n\q+9nkLrY$9(noD J$'Z]VeTrܓqɉp7wCq+hNHNI-%GI9y\#rQvǀslJ\by{T-%%+;$ -LRuB(@=,ۜR ppB(J)p!Ep~-ZE w[Ew EPRJ)jq!XR8E?+)-]HQYu*'*hY;'hY;'hY''+fY''+fY''+fY'cY'cY'cY'+aY'+aY78YDe+k]d+k](NV=QYʺˊnOTVNVNV.jG[,P`gL5le6B |3ђPwDk/yHٞłՙ:DfV#KtnћeߦmR$ZW>"wZh&5r=ܿ;={ܓם#L2}>*vKv >5dPn&k`Jӽsߞte_ú2=ݙ}{'H'YG/a!3Tx_Tvs%|lϚ߻f>;.ofZ5X9cb 6wǟ7Hs?O4V߬3V1*31NCOn먳^.e4˟w9ҟw"ڟ<o+k^LݎO2bwt :{;ӧ|>ݚ:>}{! ;<7f},&iqy1z7b:?OQ?o'>ƜswCL|"bT-3o/Bt>,J8gR%\#\g9W'Wr̹Z^GW?!9|TGj[dٖqQ.3՝9ꎶ<.qG5 9lWl;_| ֺ|_)_/u?O+;{уw'ibKxle>:R[ˣ|e+ӗ?dUJR%팈aw|{ؘxhSW.wA|`!fCO~gZn.#=5]`Zx_lGg޺>T)&פ(1FX,Z))TƾCy2U M!!>HEDJ- nlfg|w#*zdY:\%TG)q%Wt~-R,( tkh/`V^(Tt[>\湿gs;WZe{^Okb*G&:B|\g|XOmh 7~6K j+ i<^Tj#%WkK䩹έus!|d"RIsW/hp8|ʍmq}j/n*(ljx=`=l1_WƩ}I%cN:N:k)=[nYʻb*ICy"(/%3.(bxhCb+Sƈ꒾]l{kSl^sMW\5X.B+y f"vyLUݘy 3;i7-QsOPSPw,c1(aL]sһAsIvFm¼A\-'ͅ:s|Pw{ϔq{)Cսp՜k<;t*V6luP b5F0A 6`D&kj@ kj=XːzBf%a4cjj R4Hwc7A Dkj\D+j܊%%$1ĚZ$F@ v@;@@ OG@ F!b5.I5B$6"gBnJb7!>\D vݘk8C02kBS{S,bMm 1ĚڬXn1Ěz!f\#t1:xgӹ6# nkj +@ oBqb5$"r 8D_\S×HofMKbD M uЬ1Ěڐ$6D@ YbS\˳n XS˳ zbM-Zkjy8P!ltgH&ϖHwx3Iyv4MkjyP XS˳C\#A q5.J}w٩;XDiև\yU9c^+`{A[ʻbzAI rpuE W^JxAܟvʙX+v[ϦN[~i9Hsky񝑁lo<-.i{.ɭ1͝W8NYWD4^ h~ob(;yM q5WPI[eוZ_+QM5IT_ZN@0beWʴњI[i)♍Zx5M׋3Oճ2ٖxںh{ Nd1U\?l4wV~/_'/2R?V5Tf_k(OWUѯz:c5-?+L|e.n,τu3Ǟ>7GrxّM \d~^UYHR$*߭.s^gUr.#pq3gWyQw W{^ܫ%QR=2_ U:6(@ PN \ P Visio  Visio.Drawing.110.Microsoft Visio DrawingQ Visio  Visio.Drawing.110.Microsoft Visio DrawingD/ 0|DArialngsRomanll0"DArial Narrowanll0" DTimes New Romanll00DTimesNew Romanll0@DWingdingsRomanll0@ .  @n?" dd@  @@`` VN S    ==<V$ B|Z'(illkkkmqonmkpkoABCE FH1yKJ MOPQRSTUWXYZ[TKdw4M66;8=?42>FDrS9534B?yB=;;G GGtv^\^rl_v_cfhiiijmmmlkokov[UN_NL?BH;9;Zpe~bYSX`2$05GIvi 3e$b$`|mG"$K\W s"$JO:m02Ӆ2$ c 4cqԵ̬ $$$2$fCO~gZnc $0e0e     A@  A5% 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||s " 0e@        @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab 3f3f3f@uN, ʚ;;k8ʚ;g4KdKd8 0v,ppp@ <4dddd8A10lp <4BdBd8c20l<4!d!d8c20l80___PPT10 ?  O  =*EAssertion-Based Microarchitecture Design for Improved Fault ToleranceFF1Vimal K. Reddy Ahmed S. Al-Zawawi, Eric Rotenberg 2# MotivationTechnology scaling Smaller, faster transistors Transistors more susceptible to transient faults How to build reliable processors using unreliable transistors?PM?M? Motivation Redundant Multithreading (RMT) RMT using an extra processor  %RMT using simultaneous multithreading   )Alternate solution: Targeted fault checksEAdd regimen of fault checks Specific to logic block Arbitrary latches: Robust latch design Arbitrary gates: Self-checking logic FSM: Self-checking FSM designs ALU: Self-checking ALUs, RESO Storage and buses: Parity, ECC Positives No overhead of duplicating the program Negatives Not general, i.e., many types of checks neededt4 ' /4 ' /  /Our contribution: Microarchitectural AssertionsNovel class of fault checks Key Idea: Confirm arch.  truths within processor pipeline Catch-all checks for microarchitecture mechanisms Positives Broad coverage (catch-all checks) Very low-overhead solution (no redundant execution)fV`)<V E(Spectrum of fault checks RSpectrum of fault checks SSpectrum of fault checks WSpectrum of fault checks )Examples of Microarchitectural AssertionsgRegister Name Authentication (RNA) Aims to detect faults in renaming unit Asserts consistencies in renaming unit Exploits inherent redundancy in renaming structures Asserts expected physical register states Timestamp-based Assertion Checking (TAC) Aims to detect faults in issue unit Asserts sequential order among data dependent instructions Uses timestampsx#N^)o#N^)otB y z { | } ~ {I      Z  M RNA summaryRNA previous mapping check Detects faults in renaming structures Rename map table, Architecture map table Branch checkpoint tables Active list (renaming state) RNA writeback state check Detects faults in renaming logic and freelist&_.&^  ., 2!Source renamingSPure source renaming faults undetected E.g., fault in source renaming logic Researching solutions similar to RNA However, faults causing deadlock are detectable Faulty source name causing cyclic dependency Faulty source name points to unpopped freelist entry Other faults that cause phantom producers Use watchdog timer to detect deadlocksj'J0''I0',X"(Timestamp-based Assertion Checking (TAC)RConfirm data dependent instructions issued sequentially Assign timestamps to instructions at issue At retirement, confirm instruction timestamp greater than producers timestamps TAC check Instruction timestamp >= Producer s timestamp + latency Faults on checking logic can only cause false alarmsb8{ 858{ 85    F) ExperimentsP!TAC - Fault Injection ExperimentsI,!TAC - Fault Injection ExperimentsG*L.K- x Conclusions /`RSTUVWXZ [ \ ] ^ +-./0123456789:;<=>?@AB  0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@ |?" dd@   " @ ` n?" dd@   @@``PR    @ ` ` p>> aY (    6 " `}  T Click to edit Master title style! !$  0x " `  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0! "^   @*  0 "^ `  @*  <$!pGpG3c"$`?* wNC STATE UNIVERSITYH0 G G   0T  "@  l&* 2006 Vimal Reddy& fH  0޽h ? 33___PPT10i.0x2+D=' 1 = @B + Default Design0 zr8 (  8 8 0Hf z%   P*   8 0@k  ?%  R*  d 8 c $ ?XK   8 0Tn  )  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S 8 6@ z   P*   8 6P  ?  R*  H 8 0.k ? 3380___PPT10.< ,((  , , N,KX&KX& z$  y \* +++AAVV , NxyKX&KX&  ?$ y ^* +++AAVV , TyKX&KX& z  y \* +++AAVV , T\|yKX&KX&  ? y ^* +++AAVVH , 0.k ? 3380___PPT10.(5[40 KC@(  x  c $&  x  c $'P   =   `(xaxa1 ? 0 {Center for Embedded Systems Research (CESR) Department of Electrical & Computer Engineering North Carolina State University|P|^  C 6ASEALcommercial@ 0=H  0޽h ? 33___PPT10i. *W+D=' 1 = @B +I 10 `XP(  ~  s *x `p   ~  s * p  RB  s *D!Ԕp` pRB  s *D!ԔP` PH  0޽h ? 33___PPT10i. z+D=' 1 = @B +4 0 5-0 (   ~  s *< `p   RB  s *D!Ԕp` p  0+  @,$0 l(Need efficient fault tolerance solutions)) XB  0Do   <H,C  c  BTechnology Scaling  B1"``Pp  ; Performance   03P ,$ 0 X(No fault tolerance, erroneous operation))B  6Do W ,$@0B  0Do @ ,$@0  09 (( \ ,$0 OSusceptible to transient faults XB  0DoI @ I B  s *Dozz,$D 0  08>b ,$ 0 `0Inefficient fault tolerance, correct operation 11B  s *Do,$@0  <,CP,$0 V&No fault tolerance, correct operation''B  s *Do B ,$@0B  6Dop  ,$@0B  s *Dop  ,$@ 0B  6Do,$D 0RB  s *D!ԔP` P  <I ,$@0 e5Due to high overheads of inefficient fault tolerance66  6o p,$D0H  0޽h ? 33%$___PPT10$. z+D#' 1 = @B DU#' = @BA?%,( < +O%,( < +D ' =%(D' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(DY' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =%(DV' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D' =%(DV' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DN' =%(D' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(++0+ 0 ++0+ 0 ++0+ 0 ++0+ 0 ++0+ 0 + 20 (U(  (~ ( s *J:p   RB ( s *D!Ԕp` p ( 0 `p Duplicate a program and compare outcomes to detect transient faults Positives Simple and straightforward General solution Complete fault coverage Negatives High overheadDZZ ZDZZ ZZD +      RB ( s *D!ԔP` PH ( 0޽h ? 33___PPT10i. z+D=' 1 = @B +~ 0   , D (  ,~ , s *4UW   RB , s *D!ԔDD , BHXo"`F  ; Processor   , B\o"`FL `  ; Processor  XB , 0Do XB  , 0Do 2  , Bao"`| 8 -  4==^B  , 6DoB ^B  ,@ 6Do6 ^B  , 6Do@ @ LXB , 0Do^B , 6DoF^B , 6DoFXB , 0DoX X  , BHh  9Program , <l  ,$0 9Power , <q  ,$0 8CostH , 0޽h ? 33b Z ___PPT10: . z+68D. ' o= @B D ' = @BA?%,( < +O%,( < +D' =%(D4' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*,%(DC' =A@BBBB0B%()D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<*,D' =0l9 BBBB*<3<*,)?D' =%(D4' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*,%(DC' =A@BBBB0B%()D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<*,D' =0l9 BBBB*<3<*,)?++0+,0 ++0+,0 ++0+,0 ++0+,0 +6 0 ""AUD@ "(  D~ D s *L `p   RB D s *D!ԔppXB D 0Doa  D <  7PROGRAM D <Xo"`G0 * XB D 0Do# FRB  D s *DoF   D 0̌@0 ; Processor 2  2  D <Ԑo"`H u l 4==RB  D s *D^ RB  D s *Df " z 0  y  D 0 y ,$@0HN 0  y  D 0  y ZB DB s *Do  `B D 0Do  `B D 0Do y  D 68"`4  [ , D 64"`0 | g , D 6"`4   , D 6("`0 / |  ,HN   y  D   y ZB D s *Do p `B D 0Dok k `B D 0Dox x y  D 6ƹ"`  [ , D 6ʹ"`  g , D 6̹"`   , D 6ѹ"` /  ,2  D <չo"`H u l 4==RB !D s *D^ RB "D s *Df  F 0  y  #D 4 y `B $D 0Do y `B %D 0Dox x y T 4  P &D# 0  [ 'D <hܹ1"`4  P , (D <d߹1"`  P , N    )D   `B *D 0Do  ZB +DB s *Do   N  p  ,D  p `B -D 0Dok k ZB .D s *Do p T 4  P /D# 0  g 0D <1"`4  P , 1D <d1"`  P ,T 4  P 2D# 0   3D <1"`4  P , 4D <1"`  P ,T 4  P 5D# 0 .  6D <1"`4  P , 7D < 1"`  P , 8D <#p ]  ,$0 ? Performance  9D 0\& l V@,$0 9Power :D <$pV  ?Pipeline stagesXr ;D 0@ l p Q  RD 0 ,$@0 PD 6%"`p Q  , QD 6 "` Q  ,L 4  P D <˵1"`  P ,XB SD 0D  XB TD 0D + H D 0޽h ? 33___PPT10. z+ND' ѵ= @B D' = @BA?%,( < +O%,( < +D' =%(D`' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*D%(D' =-6B+checkerboard(across)*<3<*DDI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<*#DD' =1:Bhidden*o3>+B#style.visibility<*#D%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*8D%(DC' =A@BBBB0B%()D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<*8DD' =0l9 BBBB*<3<*8D)?D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*9D%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*RD%(D' =-6B+checkerboard(across)*<3<*RDDC' =A@BBBB0B%()D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<*9DD' =0l9 BBBB*<3<*9D)?DI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<*+B#style.visibility<*+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*D9' =%(D' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D6' =4@BBBB%()@@D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<* D' =0l9 BBBB*<3<* )?D9' =%(D' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D6' =4@BBBB%()@@D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<* D' =0l9 BBBB*<3<* )?D9' =%(D' =%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D6' =4@BBBB%()@@D' =?B70, 0; .2, .5; .8, .5; 1, 0-g6B fade*<3<* D' =0l9 BBBB*<3<* )?D=2' =%(D1' =%(DI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* D' =4@BBBB%()))D' =+4 8?`CB ppt_xBCB1+ppt_w/2B*Y3>B ppt_x<* D ' =+4 8?XCB ppt_yBCB ppt_yB*Y3>B ppt_y<* D' =1:Bhidden*o3>+B#style.visibility<* %(DI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(D' =4@BBBB%()))D' =+4 8?`CB ppt_xBCB1+ppt_w/2B*Y3>B ppt_x<* D ' =+4 8?XCB ppt_yBCB ppt_yB*Y3>B ppt_y<* D' =1:Bhidden*o3>+B#style.visibility<* %(DI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<* D' =1:Bhidden*o3>+B#style.visibility<* %(D' =A@BBBB0B%()))D' =+4 8?`CB ppt_xBCB1+ppt_w/2B*Y3>B ppt_x<*D ' =+4 8?XCB ppt_yBCB ppt_yB*Y3>B ppt_y<*D' =1:Bhidden*o3>+B#style.visibility<*%(DV' =A@BBB B0B%(D' =-6B+checkerboard(across)*<3<*D' =1:Bhidden*o3>+B#style.visibility<*%(DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*DX' =A@BBB B0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =-6B+checkerboard(across)*<3<*DK' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B+checkerboard(across)*<3<* DI' =4@BBB B%(D' =-6B+checkerboard(across)*<3<* D'