ࡱ>  !#Chart MSGraph.Chart.80*Microsoft Graph Chartr Chart MSGraph.Chart.80*Microsoft Graph ChartP/ 0|DTimes New Roman I'@\P^\!DTrebuchet MSan I'@\P^\! DWingdingsMSan I'@\P^\!0DTahomagsMSan I'@\P^\!@DArialgsMSan I'@\P^\!g(.  @n?" dd@  @@``  o && "!n'N[d9[BPNG  IHDRXPLTE|¬><څŭ|4ii24tx)1d/ϓVTVUyx~|,&b$}t]4|קYWWiQ^( &qvj耼ک><\<>_idl$rtܰrtʼӔ\T,2t|lKL狌^\PRZbKGDH cmPPJCmp0712HsJIDATx^} \U1Zamx]5IN$p$@I`׊dyCvdDd,Џ_iY8BBl'nP2MMՎ(?Pm-m=7333o;s=㽹Ri+RUTnR)Cr ȚRhCOiwE9W_e 4x]B_IIh:. $;Ѫ*d$RI4)+HMռ\y%,bM<\ώsP#\szfX,\ :}ȋRjGju(Nhb&66c.]Y5GW1ەAK9lĠ WIT>)8 LyNO0n j e `AF %C EjCj+P&AڗQJbR3rDFCbb1-ϚTN$DCMQU =jH$\)sA/%Uh'FNOhjЌA*,E RGthPǃ ]6vH QâS&]1FP") )Z8'D,<+d݈CSLದ6nuhQ{5fD4'R9(KJ6c伐a8isp͹ k&0$ .Ka@ A2E t\_J$ ''Cgbk7%h6UаIynx-dy\ i36PLK^q~Y#HȂgqX :”Op&Xfx A]Srrݦ4n2=à)Au\.Š 13 |EcIi=sK6AfO T2`f_LAWaSzt=&H hLD @|"[n!JFQI6i* _XO}S9T`)(1B3>JS; Qfx[arT#Ֆpt*ݟzFh ,@IAP/'x,~r3!R4(f=>|1.A3B| /$?\kh0FT.!D*L 0>:vr,zRSOQI%+z `R *bR>cW3pk՞#"JAiY'[UD| (U3sfru4zw09T!VJ\O_6ƅI[՛[fPPʡϪhiq7#rVsQVOB;pTh_Ĝ:8J2l̴1/Kz~z]2xF DbUSҙ7Ikhb'kw&/jaYx.#ၓ8*jy0$;l)Ag- ?빉Z gL_u>:@i'[ ,8!?YW7R9(Iz"t"] ѕ}oMTRƘo;dceU'RsAgsɲnECEТ[ʚ8O&u~!IkE`$[y3(c 4bBl"e}> ՉI*! h֬4pN\+uJ_ tO5ec\caKZt206p,0waQ'u酩x[8 sO+ xʗ W1 t wA>XPsJ)EI[`JbfB*oj]VjNGT4 h. 2\R WGnTZ@6aS\h9*GnWP=rN9<#G癤RUYLETobvctp\Y4-(+Mf69Z0[҂*sTRX:6$ 9iEޔ$kKf>IC\0/p֜ഹ9sE!mkʬY9F>=왐T_#~d,IkQgb[gGn@~Y_h-#C3ۙD¹Fk2a*;7)QƹD  ߚC׀= =ڻHSD22#4MԅqPiC?P5cI}W8隡)N(n#8."t G618ߥ3rƤn8zQ饝SzWhV6/OQ@*и[iPhHƕ*K&YҴ挈G@ydf1XS 8-A7vIl)蓝Aq9)x{MA<\2, IګB{eA5=Q1IeꖅD ER6Yb򆩗VymeyRq*'9_c zEGOi>WȫkQ%+%^TLDb&3 V J$Ebⷹ7Cnw ޕ.wX3gݗ9@n5vkQl,ve+.Gn.Ucˇy\.ɓ2ߣYBMq*iZ`W5;BmtJq&[(}eQ[ԢxZj{3/rOи-SK7_m52~\Qb0TLF1F' ]WIA"{;oxcTbj Ly& R|\}XсA(%Čn3(BU5VVAb+:L`Y{ \A PPWJI@FbIcB?`'1X{;o"xcd``a@P/g`b V)P# @tXi3  1@U5NVAb+:L`sY{l z7=ٓ*S# eBb!( dsBlb\P?L vc3Z9a`=W,P4qf@b @w SNhɑ.(ISoм*p6؃FAz`y )?H T T@R~0l$ff|}(`ESxܻseM/ڶmm۶mۚ9Ӷm۶m>3}/Ή]{WVfVUf~M'~_@a@_0_MڿF\9_D2JbB+s@}}_hp@~ֿ}`IEihHnΊ - Ml͜ ~ D-M&&Fv&PNΎ&6Pj#{(OjSi> q@C@˒k4v( ""ܮF mvpּ^.vT0}p݃## 1VvDN#Ō9~4eUS?S8C{D*oM;5[cVN*Λ_+8ur!7( þXi{t uHR0P,7d[*QlJA#N $"Sc<=TL_ (<\ftV /ZM/M@ +\wܝE2*2rT+\+|HLTAY@CJqc0Ί"4nϡS1{:8Pl2 (| \+uiH@rC\^LGRNX'!a TTʆUR[tLjeQo*y= ۅ?khlATKfmͪ,SsRmxSYUdSU iFɖ=f(z]Hz'/jׁhOJnY7"ݭ\ 4u2 Fu1 ZXwX9L.\ּ$`%Cj}JK66%hP.8Ȅepwp@µyoX%N][cIŮ3?''7_6椂⁠IRN< E<1/T|=%/ͷfLE߯#G? ڒJNk/eiS '6WEe}ķ0;-ƴ!Ξuީeǘ'|4yԀ+ TA3S AU>kftK!NM ŕbG,$,8 $\ %56Lߢ6v!S&F-mZm|dgT܅`I9㏹>A|C?03ȢaoB@'o`t4u&`eM\LXv:w"`ۖ110sm2s02G&yG;#%gߪ&ο'kmdo`dBg_ xyCEi?Zz1W{t`7f Z( h/'3UG*XjBx-v`7XnUQ;ٹ9nK'J+Ъ>#  PGrSejSWזMw@>O6.ޞS60 uS8 k /H@H*ˇp2ݻw-8g1 evx3nodPPc((5jɶtS}@ZҪu,~V崪/PҎCr=Pj|kw))1}֧-IRA%MԳ}l)B쁴ɋA Z R^ ^Ng2/r$.eN@]oBvF:f% M7\5WwP O}^nŖ>Aӟ 1wQ h_1mF/?ߛSBHHĘH" 6= }1N>2"-HFHH1e:@ %BTG lÑB by'ie5c9ѠϢf!izjԶfZuѰkv 3L]y|&vN]ywv+1l9;lЗ§ KJ Q=?f;ح*7t E׏Y};S lHbO}p OH\(h}zal MF}z2-jYnA, hGm{#;Ю?YToΆ2+ӱg{ONsV=ax~dNyilCdh#jÂ"aNyc&APyh&@{=K(:29gڃ& E:K.kڕ_NZaWF0m ;Xg{лN#Q2t&riڠ0of8 Y.5;'d=20],Q;iA1٥ʯк an[y{L!{;t u^~aOr+ziюk 'vAMG@PI;#Af*.7LnpnD^gwH^JCRa[aS<{WJ誝TZq,S,7{\G ccԘkOv+Ϣ6Qڌu_I].ro̫yjm<[v3~S -.-F[ JtP! < ;VJ[jfkL f%gf෱ޱh^AxT(E;ĩ-݆EӬI׆3}o<a̾;ecbD9cwbWgL=hXfKFv4=fk+<3111[" }k ۏN@K,,`b^\$jhr[simNНDW=IVblgCCe]wy.5 ob!Jz?詴Iϑ usC`TvlݠN7@@L3iz7yT7b7v9pDi]ugAjLIE/'פ uq3/Y"9; ĬT:FiHqtÈ]*V0Jk!iøa@ߣ)'dsZ#G }x;4B4I\QQ"O4 tuXJj =4ʝ%Q@ :ud,@,sôᗌhnB(Д b~p>Tm1gQ« d,Ibs(K9I䃼.YC au"ԑ⡽;KD=> MeJ|fbCIZM`hSg; =8}Qsp?OF1m '`^sMpZ ʼnfIԕ#x@-cи:n%DM2P&( 0WI`>jnLJbV$k-!ul9NZãGLܵI'$ĝܣF0Tq}ЂEc=j8h4$\Ȑerǻ3\h UѣZmW4cI|{VR+ο0f2NN8g(95а[i2CM "Y"rH<k1\'*:3,gJdz-:G-"u׎Mb5fPRf^BqIL+ 0_쟇bFs7 >PoI~)篍(E<p>ە"c&eX1bxDS}f5(2HTCzJ@8u*--!SpM7IE"oNѦY`Xn"plo 2gƙ Y(!%CuiӴ z'g~#w-yh}[G5Zpxge<$eiXͺ;ia5o~WF)L=FY{ .#m=i V2wtٌŬ04Df  CO,f{L>QȚrXcbIH2$Hd[>1èq: ISƴq':*'[t%zʆ;oj=xny G x.8 * NAp|ttT\Fa.+Z.3e/!cƛ;9 7IpTHhpBu5|/)𰪰lwC|9\z>6kD#h zӊ6,ndnCs)4l:zg t 4|DSv)I/J|6*Z!":S!:-K(cweo=nUhjQtMR=6uc(U!-MH0܏Jd`0MBhɚSJn a]Hϥ1Qjc8̄4@X~RfаavUwL%HVԳ]c^aU'z9#y{ lNXO8}ĻUŤ"F/V HіV p iC׌G/]Kn5{ F>| cS PBP*jG%C2F1|$7w+ݝcRUE;mL+.y<-ŕK[ZOvEB¶˷T4(ug>8ʙKһ]c@B/8!g2]EpվȲh6Sgva6-ᕼ|qN̹cH0v bU}mm;Cj1I-uzZ#- ƾ~ˆ( " [UJrܓ~=uv}WCHx3uB;..k&ǒTn}sx>q ZMV.uԌviuINiW{]QAY|`ֶ1Nwx9!-`9|Y=%W0qQ7!<R;tw ("$<qhR`kf?R0k%9ؖPp +u }0aS5⮡ex8ǾZ`PjI#c,71K-HXqy$5-хj(R4pwEz[£x Eṋ:*i˅*z,{ ȓ gAY$PRLhRȸ#r+A F$+=[J8_]hn<7b>Y |YՆ{l-ָ\ b jvՉ?\K&kG/)0NPm-'PK`w|j{6tIoVʛsYw'G=v 6}bHSl8U%_nsbQk@#nIY}F}B8,vL{+R,ky~zZ>f.Qvs3{鄂Ņ,z?{,I;&T+7OܜJ'V'&$IH#w]O KHWC{5l wq$'DM损 L5n?M8n?S >*؞C>ZT>`QR2SʯS^hxUq+=W޷ab7Ce[_* tH}pWm 9F^*z]iQ-;Py=2i#[ܓrJ}ǀT{ Rn?tB˸{Kfx:0S d9Udm@6!Fh iy7)ǮX癎9G jXǭ u*V\@9PQM܂DE#{e 5bʪ]V^Rym:}Zbil‚ Ax: Kw yB YebŃLhw}Cn#g-3Q3] ƞ,x1UYd%lz=@h:,<5YKaN-b*wNB& wm^3uc2 mQL Ϟ¢Hq(N[FuWX"eDjIpэHJ?߆c#>]W1ĒmVAx7s(6Bwxvf*Lj,8;}$Op<*Vʣ`<`'n4džVcGP*R(hXd;@U' TZzp?Lӻ'V <#cjLi8$gþZ MgOR#ԍzOQ.O-˹/edF-Ø!l6rSa=lxqr!ݗ3+ߋ@ɤ$ aXm ,_TR o+$Co7?'&þ_ShAަRЍ!6A<<*nq'.~XQ/fY?FpQlp"+m%{#8KJ<OD",*hw'"8CHT@`GGN7EcF5#,?{;Ɉ50 rE.r.  S#C"BĄ j{_JU^ ?c;!=1_\* r>7i$@-ihab+DVO4HR@OlU 0iݕ.WaG˭\g}솊8AW1|`@b-nr0.rXaіԥ$J(T-;B֍rFWTNw.@~ltM Yp[U4J%C WEl+% tWG- +V}TcǾ<@ S| vTC.*E=K4)<oRW"2{7tD7cT[*k'tWU+]7&^TZ~.d/7Kށ\}jNПd&1:b69v0BW?ɉ q%忸Lv2v#&= Ut&a vZ44LllL ؕfN&.*G-ha`M#hgm, E'l`ma$`kfm'E֌N]w`z#ZX0ES&idll,5 bg1XYfOc}CYO< c3s _co+u1tTvt1{&Uw*UN,dnH 1 Dl*ߵchgc`/ C'd,3B[I%*>tPkP ,4!%iB.}gtN({Y0| ޥMr-՞LL40c[WƇ%ѺK[$`h3[C/^j(W4iX.::ZG=7]iVE ``Q7;+;heg5:/SX\oYoHWZ sMW$yklAnAe{:|6 ]r5<.02[gkc8=[c1xU.!pF]$Ğ|ܑ7e)o~.$PXB,͡iC^eSpz-vL}k a!<:,#i EC:H'7]w;gi5Sr?&HsWۖwY[87ꗀ!VeVX :>Mǜ@tzwQ8  3MxuQ놋&>a8 BXbAʹ3؛O/+Czvgy6hg77C4gcP6N~IjZKN|q){7%EʉSHkG-H2iN9e _4md1[ j*O\zf2#%qxf^^:Ɣմ5; zƨ4a- n^D Gdl1yi43(iJQȊHhS7،"DdS,S#EaxL  BۗTmbqqcD&d eS{tO۔3ftNuHp'0e"*p}٩#SM Mx * &@mjPe/x΃n]hZ@LN| 3USU'[0^n3У91U~lliWb>-VV`3fi-c,;H$Rb;{ir8@ Ḱ5fU,̦6SFF]m_n?,'^F~R;ScX6 6>ʴ17jŅ2qMCƨ7#y:0i1[;,PS (L+{_s-mu^\uiMdbvQ xgM.$v Y e/ʼnApđśy8<<=qױ_5ሼ$C垔tsDm| *!q/d^XcBGSfQ}Z«^/ Lf"٠ȷ9g(};U-jMp-PlIEwoڊoy#bYnW{U_QY^&K,]6mͧijKb iܵca-)b@#%WQUl g`AN*{uCl"Jʩrm&4fU>i"W@I53Z^!9(ad_3KIlQʩ߭OH 0/!1}Zac{ W z 0 5͸t]Zh[1Zp$S`MH-ӾuW5Lr7q$0+sVVָ0 cP);} WUCKTHz:)ֹ ٖ=%~B*l49v1g 33PKOQ`=B ZZ"-# ,?"^`7,)B?,;D2YBZqQhA{rˠcuv(펜6ƛ3ɮ2Vdl$N%B~6U:9$⨓. xu4-M`H߲ (˶9(@_k8,~'A&kdu3^X)7D#T"OO^&%V!Z!f8ymŭK:uVX1tMf$seRM )6 %c-q;'f SA m>N 8lPg iCv7`,M\ע)dsH14>W(5e9Gr/#u>;Ot%LUZ_n|OhS~[^5c-恣\ [%5£Z J'0 @Jd=WuIZw05~GFE]:9ڐY0!9TUy5t sdjB{ |oJFb-TOwn_^Hh5ok3ԍJkPPM`e ]1 + kZ3@f㬰/ (2}u:[?_꼊}9 PoPa:5-/vӭvo^w+/~5~8̀b@N+K}DHD,кIhUIH#9eu 3΃qZگ7BiU-![Wc@ 9YK Uo"!a: hXs($O̡yd((Hb7*[Kq83h'LL(S*E߁<xKά5F[#1k\gnct"yㅕK=gf]ϸD9p2Y _o)’#[STj,LMɌ'FWS%ukȸ`9g l8Gd*O/q4U3)9('IWG=8mсO]Nd aG#Z8s¿*-Eg>b"tZig0?\WFב9G,&]ө_+[Ϧ.ZқZ-rbvugbU5F@,uNJ2AnutN¤qDP!ekSb>H@}vKkf\T*\qw:y{i! fxYg:pg`ƭKE7(IP肓(JJ)JI"Q(I%IN7$h|k-V?ϷYoz׻cͳd>ݴf%eeq4rˡe=z'dM?#9%s {%->E}s?]Q.sz3&o8xN̈/t@u;ߗ&֫ky_-;,TxaaF-^e@†5zr븐|=k֜e{Y#{lz+ݣWruSUyurQm̃YZmR)NURTu>a"hWt]Ë82=Wܭ^,kElZf~*CIٶ܍fNgO"VYfuݧ#%mK/VyQvS$?=okYwWUc 2*".;,ʶ+ \@M,F]Q3ԤmJ!,a]J]m6-]k{^;uuC'> vv<l>mRYW*IZi9ʏw)$?+Ygމx}E3Ϗн}'~񶃩C 3&{ؔv\m2usץsN_uV|i_V彏Z=Yr [ K{Z|SvW=ǼϤ,+<g82Y)ͦOFV3ޛJ7meh{@MGzO2keb5Ύ'cHPtZ|:F,T+ "L/9cՖ1p$oh!2.<%ITM뒿VDm=q\u~P߼^yUpC ;~imXqn˹M e Ny7\gя{̞7nEWY%oʶýivo9[I ;2&NY\Yo%V;ESUvcߗm[eQoT$޼d## >%V ZըW_uD:a]CRd5¬JyF/v93&5?}HgSGIZ^o1B>;lql՟&_Yn5y|<7w /(~o%r5 :i Nq =Dabߵ~'W>Ujf#)hgUjG}o_/QqeGg!hw RS g8 f_= ( X4g6e qaXɣY K8.,+ϊ\ ޷|33xՙwՙ:dys{_m~̼ p}܃7b\k1ty|1oHe\DPh-܀֊Isct n2r|*[1op[-~0)5ٕNc-XZ(v6ڹkC`*ǡr|\z2|6xA:T:ɤD;@1΄Wd:p_ˤ31x{ & w-.>3]m`8ve0Aqu@mȵ7÷  o }FDsu ]|Ah(BBiL`Kc2#?< &R'LsME{%*շ1b&*z5XIPJQ@e]5eNE| ߱b`JQ*Fe<y9: Z0 a'@)JZ OW>1"B8a@)Jᨌ OW>;B ӂ@)J5 OW>2 &% |P*9ӕǁ',pH$Ql#(E)瀛8(#,(E*9ӕ7/pPl@P$Ts+n^8@XPvTs+n^8@ RZPyHLѕ7/pvGx%Ts+?/$Ϗ~Ql#<PR<*9ӕ7/p$(B((E9*9ӕ7/pB-B@)J3PA|yJQ@Ǻ9C'mN0>7+n^8LFp2@)J Oϡ= rb"Fy a@&ce(a e+2t![zmK1Cu#<ӇEzp#@sL:M =Hn <԰h t3%0b)A5=c\1ȱPȱQnqP.( r<9>,{(}?2_Ak#ĠMv ȪM ,} ?ٙAgV8`ߠUAl< -){UDCUD`*q8l*^B 0B߆sLY~)(? ꏧ7L5t6CӄKZ;l5ODO[dkY"/cEĢcX.fwZͺ_bdX%$XH)z}5}g4󵚨>);&}gڵEaD2Zy }Z# [T=Ք5`Ye$B K-RjUP74xP*B B=r?PtJsЇ >PRVA?\ +}ȊxYhRB: %BWYx@}chS JzE& S_ F U g0КJZ3&rV4 tКJ&I6&yO 0jAlCVg1~ם\뮫U *CǠcێy* sF.{rn{Mn {R$%p웫Ӷ ̄u"`=Ȩ2pCN,.V 7/cop'^r[@tFyR,\hvȑ#\3B M]k۰HCDv2eT_VJp [A,lFdLfwVg7t;O]|75FBaRWuދ;16;̰3j^y2 =Pc홺rK=uh|v&ސCCm2{RLc֎ xNO"iVqY\&)HY)8:ڧl rщ% fa`avXez=ݰܡK??zuaб@soxTrgՠRVe(Q+X,Y]oHUl۟?w wAfK%,,?-TTFjgo:?3˯y ?th3(4af ȡ)p6F݀1V)2,T`nAb같/€"; yu?w=܃p}T,D{}kCs3^}mDkn T-: & s\L]F'V;s@r7] ip$UKG7ػƇLVr˻6thq8 ߶;tρ=6i6VT?n/MӵxCMA9~~; [{η4 5{.TʣA)<2yWv9Leh kq4ɐGD`нD%0_s픧m =W? "q y1aH/eU\F Jz4tҼix5blˆTR7\wH4)-00W 5"t+uyTt1%%|5 Jz \E{jQ%Ә!!P°6BLК*aΩ]#89=OG@'!^QJ0?[W{4_׷)ңg9&9T2T$A|rZ'4m@w{ǸEQ(#S8%DOH0]D 忉6!=tD9L_kN䙵n*rhvyf[ f%j]5wYȡٺrɮZ fW͝gֺrhn\ȡUs癵n*Zf取U([6W.@sqrPՊ|.[-MA֒0axP+&ʠ٪ VBבc>'WTX^DLLT(INS ȱ"!~Àa?`IOc9A5F47oIk*y=<4nVwRY00 ظѤ&/:$+g䥎Xuu@SmQzŠCDy]f]ƾEK^kgMv.BV6Z%u41P_tYt苲 rh5VV4"Spe MIQ"PgЫVkUДNˡ49e;;@&-Du!?mk^"*|,1b+<٥e8è)4Ho P m2iflr|<$ '.(%!R i3I>5멐Q~=ճf=cxEДetIhGqUg3h$[ۄjFkMs#tR(7ͤʗWʹ< M0_;W%R,t ֈu!j"mi2cDڱ'[Q^|*Zd_ȢUєҴ3`@S˄-b/Eф%æJ'LJDSM~aY.Zde`Y5?| Khho}RRQ6\v ƣہf'-rhIڀ&rԬZ+@\yy @ͥmK94{b<ӥ-Csi=@͞=ti \FDO,4eި5u2pZJ?"X>V* u?h,-7Y+Q xq#4ET/Vk$8ɵoz[y[jB\2r˕64ZlX~/H_7fYWA2> =~ =& }.Uv_]^ BS7ʶaϬjSoz1BpGm⫂MuW 6{(*6H붛Mw1dQë.p]YR*e.P҉m+M!L&DMFCm/3ډ, [I0{ &a;%|.=yCP44ʶ{= Z+)4Wc૕m /EVEuЌurDq|]͡ɥ]5E7Ξl 1n[9#x%X=NH1ғHlp㣡im@Sazm2!4qjEơiw*h=kNeBYc˒(PGArHTs94 S`\721:rrf4ֶqnp<ƑBn Wd>{U4J'r\UVg:w7繶kv3I_žu3zkOd+0 h.mz,1h~#CUV͖T%ϳOځyٖڔ(W7X&4 r+մ!nWhYuhv'h]k˳ w>#{䄃dGV뵳-JR`& Qu'd]x=xOo&"eri(yuh>pHdoh1^Nv𫒞,6fMD.$}rkX\}KBb4}mb:\`NEZâ7#:b}1حqƔhkLcb=U_dSXbu Pg ABG/3*Wz%D-![6x3Tk6Y#gg)gyˣSd:̬a{0^ 3 :tMKI0pDf :$ )**\ ʭ"qkn?g0z9(Pk* :˩ߖV Ƞ%h&i0x R#F?KN69;P$vIw+:nҘKM!RCh&ȎZ|`1&+I:Hbu`ZFZVbI xqh 9*d#h:dCպ"Fx2$l0y$B~(`Ȉ[f yUy!cG77)5w,Ss]nRuwTW?fpL0I'rXN,vZ/!ݟsl6qqhz=%TmȚ%bBk?·C;{ @,# ?"{fZEJ?:B.DaBʼJE@ bMbHaI@_ >W@s7},LeUzC% CiD]9A:Wȥ"D$5 :tA*u2cRO< Ai)yaQ."ف#zJ/R߿Ԉ裢 'z)-RCݤr*&=k80("pwqņ).("^1\t^~eZhL*jZ?Qwo؟{pK&Oh>,4u\7gp?\W*>b=cbN)&S(F+ȖLt›p,&,^-Or#ɵD!$&r H|"fl^JI vL.ǩT|0 i'Ʊ#CXT ϐ<|TJ@p9}"qw Λ<0<8q])OGeMk.ȕBsѹ9W׾BgɈQ3RaJ8V}C.-?F?C-]#֨&h cF1sfC䗐?7GlאUw btTHۚ5C4I#[hkƧ) $Ğ `GšO4M<<&.)ybBM,%r3D~VWI}^U4IR vDX(Ukd)gW io!D$.3_KiԚo:tdM7>Ӆd@=uX$֡C: 7# N80 J罋Ͷw ζKvѶ0EQq|i ZrA F{fkXfִ#ЄC3{Jƒ Nzoo>P-i>sZ#4{Khj5 YSŲjG`J&>ݻڽ+eL=ۇw}ZiZჲ{$D,IvKӠsQxSX+L Y+ wbѮ7ӊCab^% (==֙JCbA_zZy /<ס7w趑7 )f578ͮ6n17I͗#xwFۋxșHKx|'_Kq4OMcC`ilr^΅CK+stdř|r&:!.xϸO55z{n^ȼ#n~&w}#dz.̓%x'4,UU.IEP{jc`9ʕzyVʺ5A;Ǥx,N!~|ԤՈo% 9 6*AvbJO|`:[zW?#O~?ՠ-䴈 sXjG[IO'$BMr]Ps7eewQyv$%A#H>xbI4,Z)jp@|z78<O#'*-"kRRO<ҹ=f!bB bAЀ ObbH3ˉA!Wʐ2̭ȱq2\S# QZ3qi$e TcJ-#V =~2,C:?%-孀uUg T}r J[ōE2df!!m4ZB+,SX 4*: g9ԅ~}KOGG&>W?rAS5D2 I$嫗L&FczJ%Lqd)зPZqcK} Eа'5 UZsi OvoХy/g ,AI2uUd\dؑk:5 E}'FYL }$.9cZgi$XJ\mGb&Ge,I&-ʈ|CTy͗zQ[3arknâk VM{H V7Z*-ЙCۈ^' A L8P&4X]$cRgM/В?ϹHV'45S澦vT3ӖhcBa/d!NҬ VڕCB "Q)_m0Xciě)Y8Z.йpoQ&~6OVj@o>|u>tk]h&wBt`3OF2!Wv$#RQch|MK&]w .jJ!)(am.{`;t,\h mpޡA('q^MN -w]C[ri< ]6Z)\ XHG(5ETUJ盈K#ZRk Ʉ_O-@E)Nܹ74 '=wzM`~`7ҦX럢ՠ:dt.| ұ*8tc*)x$_l%ug%yV^#M0G(KeIkvF05cA!%rO G_{e攖A{VF,#ɣZ|̧~"#HhGBapw5Tp5Ah&.jv`L"p!BN$O7aŽiC9Eŷ'JD7̚;7zě<[ WLZE~橧a0)tSG?/#77'_Pjoh>kzT yHt.y#)FT Ux$/kDQU )"+^b:X6 "x1XVNyH&_ݻ~ _~hw}5a: }t݉K6g6&8Ǹن{qvmmR~(jh[jJlbIXx]LbcG}qJa&'GJVfޢĔ=(F0^]a2Gm:e3|g`&p31ls}Q ,wTJGݺ\ Q|gYA xE۬!TrLBDŽ%閘OzEeCaiUVҐ%]P -"B,(YD5`;I>@`֑rCP^욬!ꞟn{mzsTN|M@k\] )7%+}ʝgBm (%lF\\R+4n,ehRXuKj ЭY~)__>:z3_;]5gM%LE܌f: "4^ )Fj8Jf@}̌ 74+qr:m GlSZ׳ M*XT!+rpz"2^~pϤ<}trBvF7Լg&+iT~dMIxuwJVFWʍ&Kswh5hb^9} >b[CVL+#Zon X|)d#4NL ܚñs‚rHBZEP:a>wj5H"RibmHO%n ^YD p)[;Kۢ6rȔOҮY,*/4kW`7i 13.f"?^JJ) rl,WLsw 0WB#!gT!'f #p-l!VRɒiOy*oXj_>C\7(;N|'S8L/ "-Q1>0ŢӣL5qɇ$a(+)Hs ,QrjԼ9 f_j"zale2'%K WeCy ey,6Lg?Cj[,R)TrkzӝGikkB4@VwzKZ4y }MWJ^:@6 j<kdMz;OE/lf-/L4L%U}-@ك>@x=s^^<ųϨT]8R>"!&!+T*~b '*0\ۆm/ B42rduT,ƫ4P609@ؔ]?2"sĆ#G?y6Vvɘvȑ#\3`WÑZ Z /۸ka/&}W ơd5 j듳sE[X)e7`|br'w$B0s/p穋/WYT4G X] 4y{2?w3?Q֕%j a:xYP&&]%j ߷7[LA;l>Yt˳Z1f;!["Ǫ#VcӀI :[1?? }r"w#ElJYCȼyrW]o[ܡ?e]&(K&*zpߖoܸOBsgH+bkHBHЩ>g~ZmҸgD f* $Ex'n4o}ȶS.ُ'/\nX,W/Jw_8 уr3Rh$|wMsQq7_eIE,+%,NCo>V-@ oQJyz aƣRY+7ŇuۉSnw##LP. sG>w큛/>l6Y+ 9|,ݳ,LKI}8 M*u8eo|_y;cr:Ν 8Jgf@?ytzgB|4+^ΕmYQIOC=$BWܾo-[nhC5,k +UFg LjGwVK̙ؽNi\P+ ^DS(3Uq[qﭷr fVNYs:V*fBQ|Н812VnfYed<:N, زMMH}oAh[G5seZBVW3ѱ1 `mj`&ɤ cDC -⏑8?d $Rz¹O8-n=+nO(£VEd  0O+O]yiʏ) ??q~nCszMMΕ5H:ytzСF=<:+)ίh=F@\z (>a;ۿyď dؿv7|u>SO'mqT1C/O_tysGL0uXY5.+68ASX5Sh^ׯ+z: ]|Mh쳰L ,8(8 ~O01G@5/N 7bK ;q"@I S=Ecya͗L}ׯ[:E #w[w/ \+"f`M6[>Ӄ[?s?Shf5Ѵp`/c2j38b/xmffA f\2xǷ{>u8ƶ;ajr\06ϱ=SWn=?C9-utl\жp4A_Sg:>~[s?l\o53kgӘ00,Ua dItS9=8uAM%>;. `MYW/M^,̮y^ҹSԭIv$5qV-&YY Be,w..?CtG1ur3=J٩` F7; Ma*ӥ@o-E.HKI6^ bҋg$ %)uFUJ+Xdэ*[82:Qf]cp"So@w<lV-,=wӣ^M~7h[J^dzK=}W27^dH!4NHO 8C間XDG,,62d6,v9)B5RW!#t7H \P ?XC~FIOҌ ׭(ɐTRi?5[~qoh{Fw1[;Z9S_Q~N@Fs} :"iyIyI(%NY\* d7Wt%k}a5X̱fAYY;:g T dq /*&/dΚ9Rj̱fkIWX7\ 'W[TꡠzٕŒnx]]ڍ(3ǚa^'wA%B ,fMtthSOp"g5E>Z.B,QYmB f®1s|M`LW!4ѓ2bY%NiY2=kO.*JH"| NisoH,a $]Y4dLdEч7V E][&isDZ3ǚDzAӓ5&ɇd%:c/% g5.$ @Ul F'ILK(a (ÚJcFM,GC#B3yHm*}XklV1!A'\.O0݊y,PpY3l^AmJ,FFN-^!!ژ(rdLl*ZrO,ˬ{㷆֤z_ii_3er9:g̱fkC#z[x] vGsK.H k[uZc5ۮiFvY ֵMӐfbExWf|JXxldK6hj333n333mf;;o/m/"3Dd) 5@RtF@ƀ?IҊ@H"+(LMOIps6gF Vǧ6t4- l ! ]W+G.=I85øA@gKմ r`F d}RdGj+y vm%m4薑y&;Q>g?Byf;X5td!gg;t 4-}cWC!&*Yؠ w.+ NL"% "  '"*"  PDQӵ,z}ѫW23FoBT "E6(XXԑTHZٛp۪*E>i2R`[SXlk@ֺSP6I B*#/pf'54DVDj-XPyPc,h'm/]gO'{w1&;LGӁaFe !8bd ߹fkO+gY;3+Ul YEX;~5224qᳰ33kI='Y{#G|/QP˳ײ6 zFruN|fdgFO?MZcu 9ɋGW(PW 7#R+F0s]{r_൓+8$!4|3bA`p8@p?1@~&ǜ2]^2v}vmyj[|qrQVǢ;Z{gjDBT,Zzpym4C(ߟЏo*U7z Ҁf@F&!%P#;4dOmcH##V0AN}vB^{]F5 aQQWb!ɩ3z]UsGϩ\<ClwV6B,s櫰{p{2GDF;jG:gPtw7M/8'bLy'V $r$NevmpMUj>33-ʒfkIKU>눨i[ӊjx鍜LW>Lbs/鏂N۴)7lV;}653̝J'&M1oz5f[Ӛ4̇5 ic(ltނA~@ m,?{j8 Hp]7%?H?I+,j KP~ e/4Xv,Ē}䐍Tq,Z_]I^O0c-O/?z\N]bYN]KSUy)d4GiJ7bzF<ֿӋ}kHONGGT'gPңɅc+)t4.)vTqE|lN?O׻˩SBʥ ^@ (ExƲ "Ik!qjǧUex/ڶ_xߪmti}prKe| r駣nt7h_ɗ,ThAF<7zp~1/HVjV^XA'PTs@7 8}@'&#!ͿhÇ+f/p| HGP Y6 Pc ){'𫙯.[dbG`edJy[wcq86}o㠇0"[x+OZ+=E+;TwܭU|iZt_|hY{a=$[؉^z*]X+[R dw'@FkY) devD7Ahc)`1exȈbAInvrÊkAFaO8&B]JHaMIV務1Cr=_}c%aNCY\\֣INNza͇_vx #O#ņۙ k/J=g9٭991` 9Gxy*5?f2hzmg DX-rnWgokڤD~$XN%W)l؟[z /' =jH1sI2$N?Jl̓¤ԮGKQ Z 'LW65K6 8`WN~hv>%\7. Y5<T7vʞz@R3VNN7*nCt C:!ъ ضW[Tt.$c`&W"#_Z88!!SyR5k\2Yӕw =Z3Ά'N'Ui2՛ړL J%73"eg`n)+]Kj1UV-+! z{]x‰OM2Չg]q$`Mzhm-Y?z0HDq q"Ѽ@^:aTM=1 (00] +ƻU*\a06HL|䇗dqZ@`򦪑ς#ו\|_a9t@g7CpE~`AcS MM/4">G4XE곞HsW; =W:f=!]Ħ:.ov{1P=翃ֈYaV B^)✋;)CBk:!gpZzRL4 5hU-poK3BRT42.f /\ ĩ mr:J6ΠlHQIrtL\BM/WWmϺN}4jP 5\XoEkDo$>܌; #n' ģ74I~aR f\>Ppsii[N1~Kۚڗ{,:׃0VZUY)4hh,@[ X f7W9b< sTW%r~?U0GYy u@N^NnZ)IYzUfFǻp}1ujUi[Kaet/ .Ѩmmϻ4Vs&T^,NӏƯL&$Q^ HJi]fmh@H@cmUv.C3oM0.UxU P+=h^$fP-6cFLWiKQ2ӌ~1BJRnA{Gm`J )Zm goK L6}Z/='zv%F*N(28 ?o68ڭRy]J}R G}C#: emV3QHED63& -V 7q~kWꭆ'̆ 3)Zq<շSBz=KW~ YW̽ƑɇO4ob mq="Wg9gF:ˋ$Ep6m3٧Wp+s3,9%\׃\ 99G0El#P5QR 4Gq?DB3ZvN,d#ѶOY\uٚiRz ;c EEE3e JOɳryE'>{Pj5;5pKg'eqz#تQ>}kjǦ h n˷ ;[2/7P.s7NGمvC!{joBQtӁ튼i.4fařNv*31S\2=+o K\BNܟlZf:\}B6y+ AMձChXu,@mV{t7pF-iCZ:ܼMbrEhȋL--iq죟?ePC,CBf%Ey|P㛽afbL OO|,8Svϲ8x#'N]<CIJ+Lr_ g~HP+ܺۍg]É3lC󇢳Ʌ A*O}.yFv8#'\]0 99hFrD~@B3jj7O 4 {\ ,* Ǧ>LK9~ fg' ;usḐB (*/R\XL*W5F46i"*J ^Kxd?l/5(.=/ܯeqDtހD\G~RwjLy),`@ePɳvٳbiwß\\+{|CWN4!` tsv iHBUZ gb?l|fTj"N;PE)8"9`3Ɓ;OC+1px^Mz~hqjY3J谚 X& Qo 2}d~,7qS[43v 2_oO:w5;IZrHvq{oHg%%L-ԬPۦI%B,_U?6;.vB!{Ř2+4 1~\YPAʞu|9Xfl{xӮYA'O+X:.m|WfȹGڧkϐ:us443{y)5*dpјgLt;]J@񡳎~-UfK2=yݓT5?5é~rkt"ܶgƢKYEK:i<<Vl#BKhjONjyi)1(|C=v+ΏS=>ަqmZ*IIMݷIGN,@ IBηSUW3ĜUc yn\+3nh7,^w+g6+gg~̾Ӛ]qFD\]Q(-! Letari1i l7VAP 6uwu8ncD}J)Uc}qε!Q$(mY5VC $2|d0fh;&8ĭ1"b3EuRzaTρ^OoO~GۤrvM4ѯҙ(n#ޥ"R$ SF,fܢ?ΚY,}^K^ưG`4Esy~fqNڇFFm%MX'{i^@/EZLUH){*%2H9%]=M..DE)c.j\U[o R D*wdŒ:a ~oم0qR̈́O[™3sN3J) k$O+|w+*qB]<>'% B]F4c_ j"Ӗ$ >oJιl0 0 ͳm){U;FG1Y\0Xdz;E,4P0%6 1 YbEkPUP:;\sTIz;B[Hgo X)EN7J[ERk'vwRXL Iޛ|b?عVXK#魲"-wa'ѧw~|O}|/~L m8V{E  EayO:SKx iGΫ3y ĹێE&XB2ry5N]e)|%R=hG/2Tw0,J54%=k>L᰹BІ}LUqcx2zΒ[&=D Pq{ľCυ_MweifI"M7VnӘyK6֚\7C+ۼ`zn= &pxl{0RFpljnLD`>RC;k |rUSˁMSqbz->nMwG;'mefB;y>܄2]>cexG)4fQJ;k["^m 1 uA۷dKK*6 t(IMx;$Sf)+`4[Osw8TW;Nח>?eBu4:kdhB#nn`k(.$.c|v>wx Aԙx/q/%PSXݝyӼs̉w0 x̠uפg R3yEm/,y*N`wq-iOˍ͎-*;9x~lR⢬ԼtGϽX ݶljȓ3șoL]NsK2 "<wv$N8F@>S*\#PԏSB[M3.άTַq]Gq̓8 /ם?d. o:UFzĢM$Zgh\RL;X IV1,`LiFq)[XS\RGnAoo-X? NzI6AE4hYz$ ̈́FH]u.e2lxK˴v('YYRfѹ]3%]^ }CʍC*[V$/V͢\mYѢ˪T!ZNK9-ev$WPjr83߸:(w@ex*>=[5$MZK5== >1Oii1ݒ} aM Q{d0:.w.xi\yDϫ?q1[]>kǬKz E<2qzwA`[{X-Cː"C!gQs!^;رe>&} GKnFz po794kgc ⥓K>0vڱ$8ʙN'Ό#첅r,7uE"vԓ |J6u;wl^6;4X ˀHF@PZUؐry` k<:/m_TjZJ16 @f8Š+c`:)CҮ07MN~$4ot).[ToX`Jm;rg^0 :L0ة:*i{kOΎNNoz~XRVH1bR!r`76* o:L`a:ehژfo&QIJq_״[s"hWr*-=-%v%&f-ϲF?8U&>Dmfxf/3vO7dL:k!L,V|f)a̅ حbuuk^\b¤ۢ$u0v/W0SV>/:+AOS1[IT*YmF_FBFӂָu -o摎kVAAqцn)+:8aRv{3 7b02 ՚3;ccծ3ǺRo|( Q} -6N뼃Pa`YS:ӳ(4ELB%j1L$NV`RVv 8qƹ9qù:5mr&vQp) c(mRlk~@J&"Uq!NRb5EPݍ7(z<9G7%睢30+o=`NgUϾc[; @2Q7wpph2 }!m$[u&Dc&U27~Upmp./Nm`2T(% X`J YT]5y)'wnhД,hr<(׻Dr{4ϙ :`QM#r'-̜e|QQ0 q*b>TUag1m4wvA[M{Q)iB`fd-AlTA3rfV>ə g~qW߇R'oteɗeXj#57Ϙnp\ؔ6+|;1siy)ߒh{~0ɑ S Y02bJօ1!Fo'J_ F3BolDק)6J{H9f~㑒1rl51\u?7#H/iE-RzQ<w07x+ǓYîxK7T=BJ.E-M7;at 5P3jFqfm-=Q-WM a_oX]>BQhѢMHiVE ֡S)FL:MY-9r0l! =EX*￾ FPWML39Z]$.Ѥ,T)"vy$.(D'Q @> ?b F#27=af2n Ԑ|<>N4[F7|vƨ>}_Yk, 2jf Gje L t,[{v ܽ3,K2х4(t֔c1uI- |;+Y l[w^Vz u;Դ|=3{s[ Gj02p/!hGg_RJ+1LD~>`Rp1⁡tvz!@/v p|Qfon;():Lq&.Q||#\)O~Go^^ϺlxoN^4 wX¿7%7­e-&|z#8RL) bLr%4ron@[_d25NrWt?AN ޔbO$'&q#:SLjC1ҳ*AnvE "*q^i+&ڙ#7Ͼ OO |Z;,rǟӷOR]}}RT u x%֔}“6BQ_(X@ ʈLO6 O :m(C .iۘr*@(<;8}.vyDw@W]E+ i"uf:dkh>)\Bd\~Wj|d7yaεvG8#j F T4O?;um&E/ »H4=A(W2tvsh\[X\Ad+Cy EZa:*Ey 4byա9|@1 6Rp,![΀_BX_.w}bee3\R7 0O9LN|M0p䞼;_'[$`܉9t@r_@HqR'HN@a9 _LHQ;h>{e6X=hT>[ Tu: (`ph3)PZSXͫ &xšſM_) 7Q恑H ul̚m8x0I*;My(?ˮQ6#JQKlov*Wz@}fEσr7} KIТ ֽDAA·Zei^U(2].--T8Jc#]9Yհּpyv_ycbo4DkZYs6ٻdURyK̬J&/s5-/yWgV <0JIh©%)JId4`{é* e&k])宒ٲñm^.sDKK~v43šf:JaMW xn'ؗo=`w:RIӁh6 y^MlrKUP?*hVB1T 6x^ -cLXDd*@ˢ6c9~0G"hK緀z7|"^~`\I* ?ȬMjj䭶"-b:vd#.)0ZS1Q;m⻋_"fy"ʑ@eL藡ʍp5g몯CU|h?t~⟼(GfXGca-~arj2?Ff6|3ilELLf1fZOŕ$#ÿqfa`çfdegcd§SyBZ %%5"$? FVI#=C3k|FF|Z)=W3CGӯZQ҈b1y(dw+>+3I?YXXY6s5gZ33_zȿ/߾#1~qσlpcu9*;K_WuU;8 BI=|𗂞+T l 2ҳϠa/%,ϒCF-Ғݣ4G y?^rGTFr=sLB`07h?u+~|[YɵӷmlP_1t bX \#tI.qZ mkmkU.8T"{RP|fQ>0C<@X,c}U/^x% hDA\3SVagry>wZw+ iCd8{k;p":ڷ3H?x:ZXv5^|.5Ү<\# G5KC&F]e"(cR(n*i-XflFڟt bK}aIdc9FY|kکPG*B\Rat ;p {d5`0Oyo9~Їx+ 2)xD ~dZ^!m |EnñL;ݣ*)P<~Uu)sѺ:}T"\ (]=j\4wAP"pq20)?ds0dF"!v ;& V!8iU9b+]J38ďЛ0Z;}Y0aZ;i*Gz1z%x}rB)[yOFNy^GNl`4IN4v6pPHb^3 |9Ŀ%HG:._D[i%5Ic>KS!d[A$7ڽliv@ɋww%S}0j#?3v V1p/.:쯌⒝N~;۟WM x׭[nso珕%ܞ1|*k㔇8y]L hǕoqd䠝Vo{߸\05 M oj2FiWN>z3yvL^itЩ~'Zl|`B۲מ#rNً;C)ܻ]1"ř-W&;Hi7d$o[V2KjщŻ]8,N9_{*%ƥf-Fuz]󋾏_{?Վ3LMi":oczoK2Wf>)<);v]ѻ_5޸k^ihIi'V,~ow~FG۽efYٵ-_nbżYEl<ݦnM NY25afB޶+/oz˴f'>zcx~iͶCxIvu8/o9Ϯ/gH}ZY~%jϵrq- Le?v;˦ O(>ړm*ܢH~)+3l ucB_,G܀Afi7]O?_3.h4$ƾ'Ͽzgdy]ý;5$/׭UZWwml6*'ॅ :m☑VeWsGz2/a[nݚ<<>\zc]}#f8K}poz9zNq]̽:myҘ?xz'Is͇BF"ZVfsEk.ݸQ/gjߑ]q ٩~.ϯѨmzM9S_-w)ϓڼr|?//~56d95Q/7^Zٲmi'ۗ9׭Yc%0Ke틼4ȿ\[(\E.P n/{;/Ϻg*񟖹/ݽuy=g]Zx+&>Zr%w99a)e%Z8uOB9S_.Y6ad㋑5e[T!{RWuxuIMcXs%3Vϕ̏xNkNT'џkO3LKGleFxsO͚5@O)i:]`RY ])Tor1-)8ǂ.49õJר+痖iAoRj_pIgt͝,h[MfPqp,%ٚZp-"$L"'c8_ڸ`p=\EIEwfLau<bǵR槤o؜wum,ތc*)V7ǣ->agؖ;ӆd̾Ns׍rqFP'<7zy,)_n;Mn5Rk;9rK[8tRփI֧K;P5%#1oc7AZΔD?4=$%'O.7k]Glؤ~Kxϵ=A9NOCGuX.l]>ɸng̵ҘnUQ)^#ZEYvBEVm(P~s eub`28rB}iuP}XQnJT;n(+j+ϩoWq< kWMC`RQ5z*5_BJN#JJbpXQ:% ++70,>2&'MPKERսȵHԺ--fdCx> aPs; Ţ.e Ⓟ+&ŷ7G\p$B, wp ]ER7nu«`¤ <%Tln$b4N&q5܌p6ݍ<$}5 0.sM(&PG& 1i}}tDP")ȕR:yD-}7*hިyۢޛuZMrTFcBB"K2[8f9w6sbAbkVk1um# ps8roCj[ VoCX2M%LS<oCj[ &ճ!#)Wc "# mil6p[ aL:\<#6E cko6`nk Іl)|kXN;ƒ-~xG;hj[ fކNIt<#6ڠr>L"$MX XBkvMѶڶ)m?<̺ tA{mhZFm'k㚖cmiMж'|ʪbC# 1U.C5i@:ps Sx0"҆܂Vm.N h=u$8bZO3au̐O{bnV?BI"=| .fJeZ]ϧ7r`,[Tp {J qMi?Q\|8GiDQ<֪ $rD4=*ܤѬ܅v`%zi!3"0rn,iUQ)_l 50U@̗3J6R(L6\a#B!ZܥiУ`DfFs-d*oHڣ +R8жnrnh9*6ѣ_]bV__d/DRkUĖe!|X7(YTnC*m9PE- AVn B4h1؂wUVh%@)4Sl="ӑzg ".;o^[{\!Ix&y*QmNNSڙR8=Z_dBȷ-ԏ)vŕ1_+7Õ5A$2"\,\k!Jx"Ai/=ň\gAF3vfG1e(ܮdT܊Yx>?]md_XgT/yU ֛/9Tuq_r: ֞A~_ t_Jȑ_ȁ_/Y+@?Q//_'MPR|qr = Ƙz39 K@/`. /PȗY ,>r0H# iO1'3" eYdn3!v\d#XM6P[؞FF>2ׇU> k5DtDK>z? c==bWކ+o•7?OWh+QЕ/ŕA lI"3EVy-S~1 ]\- h56@`@ TmZt$RC d8/C8@V5@-j5|γ5;bxت };Z՗F"p($VWG)@v^%8Ҁ]5?=?:,&*v\8*٧SnCY>%e3f c?{: rN謜>|C[JGrd#f{4ZK#hK{4@諭N _XÀGTjz4WQKȵ㿫T5vP1*ͪV*1U@%"Vi|5dU!eQR44 gpN4oQ4>ӣ** (4a~ D/{k3-Γ,8<.=t:hֵzQ2иF*!;?|BcZ1R ]ő|IN-ƞ zQ|NT!R)5IDGTo,`,ư΂1*&J=k?"§Kt\dWcwh+-ZY2ćgK4OOKNl cNUKt.샰ߖg'f/2Kmc-4E[&ֳR&&gRl̄jR_+](pf.3G0̆fCu5ِh3a6$zPmSVCMjU*gRʣOeOOXgeT5ZZ}b!oo_bLTYL\:~ S9wbZY_Zkfz\`?߷frpH\UzԵUSZ=J=zYhekP^7)[jJ Aҽn%U&zC'ZzzS3h*݌5iEVU-~V 7^u ]a>> dY ,,z[W2^\܀͂+كmz;À1$J'A7^m+*izw˶2ϖx"t,>0F'KecjFj]v]Ie]igۨ(\]uF,cƽ:zw8c\'hȏbvĖ Gv=gBh܍?+.ˋwy'kgt3=6e4ϸdf\v2eN^k7"!`G?I$.z 7 ԣM83*ωv_PqvH/;m 7{&F;N3{x49';GW`"f`vK XUݸkF]LJjotORFvs0 D+>ֻ9o+|{b\Uws\$@fro4JE9:NRPR%cjsFNnm:xqxS^KڧfAv8?:;Uݏ 19ac L+My 0]g,3Ǭ,ô@(=Ϩ<0Kx#e@] aΘbr poک`oQ ن؞޺7=huXA }Rpp{S&qI 9VW1QSnvbǶرS`PB݊!OzKuUb51<(<!JgXٳϡ߅p2n =k;͍\-PNG  IHDRbKGD̿9=Uf;<(\8WSPdM22SVFowtJd(t-ːyG[d^믆PEٜ6ZiѬ"V!EIgA`\*sa r=T@AdD3œ!5 h -aemk`{z-Ot0,ΣA-X2jyAV؎ t/)<\c;u؞NxȨP BLPrX؞z@8jH<^k8G,Oުak`H^a4zoKF{Dd&{oKƞP@mʒmwcpɥsޑX2փ Y+d,}dP' KVEƔ . ةUqTzNS+Uy/a*7'RdzEq񭶶h,,SO]~V{Tzq6)( aɀPhr 3, "BAd@(4 T3P"aBBȐKa ! 2 D\*SH  2 D\* .  2RA$vDrd@(4 ! " C%BAd@(#0wQCȑmzd,v Ƹ &u905%FOdV}U+ ň/tTV0vҖܬ~;qk![Hi(BGg|KRmN|ϊDuhh/tzSVk[ v{V <7+k{fzՉYTuwyF 1C"M*wb @?\Z+g` A2fVdY{!Grw ?plu ӄQ%AsƠr-BȈ+Ur'׌ӈDd8ix_M]}QKT脿:~2viZ=l~kk߮?c6%[*ܒm, m*~,fϊB m~믆=:gE=" UyEU٧oD{V"BP(G{g|i|֜?VƏF.?>SQ~!}g6xmgg`z+}_K BY2]Espd!7Gd4ǮuK <\jY2p 2RA$g"9X2 DVDBȐK9BE’ 2 D\*SH  2RA$vDrd@(#]7uJ+ `?amm) TEom.V`ɀP(wհd@(4 ! " C%BuTAG*lW!f;,U~@EzXlJ2ibʻ/<-/qƣ*lM(LFM*]a3 ʱ’ 2 D\*SH  2RA$vDrd`EAdqJ+ `m]k{J{ h[?Y%>EF[?7:VOOV†Wb3>acd@(<wdɀPhr 3,3 "sAdȥH0`BBȀPhr ;g"9X2pg3 T,3 "s;D.D5L"kE!?aNYa絽j2z[͊ϫ^tmaj k7AE].yGcoփ Y+=|2hۖwj~*ТRZLTsw2p@IG[VئTS6-t"a;fG/je7 FWբ8q<^'T¾u]٦X۵`gJ ,KK o޷:?XjX/> EЮ:5,7 ȵvu{I+~pHfԮq:R5;v:}sY2TtWٯl ӫFɍGn޵dɔvusM [27׺uzMi0>S:Y7. 85_(XzxI^ 0xyZ S~mGKjX:{||x݁Gr7lY63Z 6B?@13Lyc'h1@1PmdɨsqU\1G A%qナ FƎnRN&V!FQ K8Z v$]'2ﭽ{Ko#gBLyZ! 0V[wG$#]-?+O 5:w*T@F#,viB+[uv }8عknњ)(W1ldN0&*f(c{-Ըĭw94e]MrzQ;TMC爲ATJsE2m& W9]i=tuEzۣZe+?w͛>hM9HIENDB`0TƑ8[K!Y|g.^eF6Vu`E0Vx]sՕ݃y+, T62E<4+xemHz)jiKf41fP-/d7] !jkw{{[3w4B"}ι{9HZ-;nVˌ) e ;o7nyh=c?ڸ^۸ekܴE[І6{p`R?~; ocxqv *kj݁[FQedzdزc|w@S$[uu֕=LȥSɁ\tgk*>-a Ǝ\no&,H5\.-psoD.mZ4уZ8z ou-iۍ䀶*hjYgZbsd۵z kADrb%d-氋97ZmFoW,0}'^C+Iw97wn@"hu5z~r[~c*3j{oH=F: ڌϥ2ށ|?1-CF<:شZ[Ij?L i[(Z#8.Փ߉[eWk+?5@"9л&UX$FhXmJedkS;l*'/4=obP[VM2p_U[RɄ#ޟOO&>-ggLl_ ~wMD_:;TMpDm|Q+L ԰=90"ܬ3Yv6/䇸+,[f8qxpiE9l.z6hP5iuwsf|bM'1xd{ [[Gap2p=͑><m_:`E(0KŒ4AFLSޚ|ÀF/֘z "5gV_6~}Wj{QH#Wz]^_̠f2nn6zYĦIAh|5Uu FrZ&DVc:ֵ̈́e0V +vdmz'IHWlxm}.9>kon[?>ϳ7%p w.-''5Yngz}峳qp>[ )'$]wLu"]blW-=-cjWLyAFw5U]jw4 ѕB$Z)5\(ft B%%DKKVY]BXu 1 ]%tKvH0|BNw!4jYKpVNԫħ^CU"T!D*1z(M\ǚTR<:>7[,[Ϊ5e<gJ+U>wa{3]3J2ޙG:,cgJk#gn>)@&3f̨;ݚ"R9+Yܞ|+JžHmʤS3R3;j>WlK#s_p`KyXEedO>HH `0BVq&E=e-A]v 8V]f`T`V;tWHWֆ!Wîh ΆpֆWØUkèaXհ0kms5.gH3RknWXFߌ%)Aؽ!GhOXJ3FB1YЮfzY](!]Y_803TvI+DC EDhgvPDHY_gWSb+⽾E"0zPesmhK5]壁ch]m+u^]L?ndm_n6lȖbxۍ5VL=lQ;hCn{ֿ2_#,ۦrϦȂg(`p秀} |c*菁1Ѯ{!D$_qc~Quܙh hҭ! v~]IiSDSbaڒ̅|@݅[&nx{njwSt=M iao7ڄZ)!`Iꠄ)A-MYޮk޾k_BڇqtfoJ+ƺikkXgtgn%zLFx+g;Ԩ|(ұ3't$gNyG 5E+r]$}(ޖsZ#q᮷7Bev8_ϓB^";n^U* ^&M24M5Me"~&M/ɱ"|Rx$|xFL!|6M9F ^*֦)<b?9ح.1x' eY6E0G7R n"ڍnJ2-|(pˁߠs+d+@ |w.Y=tk:G{[| nF[r0r0rO瓃fg^ʵ9jdFxH ,yTʹdA(F}0B(4Gah| I & N"z9mv$6\ pFv$6 T'1G$,z+[)%lͭjܫ-;ڢOVfUdЋ?e%k7D1=E'S?!y\|Bs^_ :J5 #@|?hڿxgqU[+joSunztj EBݍ(U)~_~Wk鬣B׸yϻZ=oZ 1ckߓ u wk-wZ '_C$䐵Pwek-;w/S>Uk9Eg;QH&k-ԓ/)SO"HֲwւL`>8P9Ż Zo ϜωOq #dx/dw_٤6;N"k;eruNp\ 1οₘLv }XH~;zFA/J5 #=) mh;mUۖ*.JW6f~yTǣ+{WuԚ̋LϼZkny7]YPMlyѿqd]9ŻY#ԗuUA"spYIis8<;-x&~EW꫾1j![z7}ϗOmHK}mbmZW]ܭvknW E^HZ*w^I׾kW޲{7Xzf*^T..jK+_1x'wXFye:+^0`Dy@ۣ*'ڍ)~/@xdE@C z.Bǀ_>s}ϡ35tk:G@|omڿGt\F@?7􍀚KXF"f.}#;-}#􍀅Lj&2qdsq,"7RnG9k);LlB-; Ev68?ʇ _.#V>@<8}߻$) ڜS~/h_B%;; x Ajͣ0IAg.Ë8-^OJ6Amq-._w򗞓쌗ɯ8OI;ۥw*/+ϱq9q,fe酥w\Py~x.+gDSn^?2Gsfe.}nEo>NGOj,b)hEx4+P VΣ,(1)sgl>OAzLůU3ijwg5Z=aTՓx`(S{ƺA-n7YA6\xS9sgMVId;c};&E.\ڙD;U1JS m|.@?ɰ?~}'~3~#gS~'=s^~22XU l_vOTlo{ܙUXWQZzaKڭ fhi"NWRSR=]i=~3DŽyDp1y"$/=}@yp#1=-7SIK@L=']ʌ'vצ"vJЪ4=aoxzZ3c豑ϧH<{62i2fxIHR^3>ZU4 ߭N+wRzƵ؃3nCjwg*RfI樧 O3@-P--RaPE^*@>\Eb+ro>kC׉L..UJA9%ȆU3h~M+1i!F"4?\m<|tU X}b\gy V҇E&l6=U{ (_@_"3o(@JT=XAs}k峝r']?=I{-Q4vuQ4kaW ̣} v8p".8qW?@\gFLu)*F#HG.㈘t$;pǀi^Dnj"ݫ!bL$O'`'S8az^ݣ7}Ɠ;0zoi#g>/"}'ώNS?i lE?魺SRu.у5UjjTrU5U S/Г뉓 tI6ŝ!Ra]apG~(t::.3vRNwujTWuZu[6{GWeԩ뽫A+xqdj=X^]5ݩ~ۈ5\-Z oR7o߀ؠ(WB#FzUԯA2ɳGB/eN:t!*?'T\ܜ, oZ*MH1t˿*bno=y^7 ؾ7=!3tH7 >l0kjm0t }JZuºG7lMҭd0 n-FPb##s:Ƭ,tftɺ^5r?57Iwzݻi.@&aM]荣`2ӈSh̑q\ƧɄ &Gxþ()JHh7ʛ? #ҺC#8ትcNcœs3A^ 6jeofoܨ+^vztc%w.S1KOYdEuB^I{'% [ _+U]f#^{<1DɁn#l:襠*p^RWkWWuz9׀]ǃ\/lCT#0o|n9pn 큱#p&$э\]grz~h`140EWkW#W<9&So wN:/BnAwesGsthBM )G_цeֿ)8\ E΃5L]Ƭa2/`1b8gE@n3[T2T1,cVRPA9 =K(A/,` 2Ȕ"[J2jA6(MYF,J03PVFJ},s*KvIcaFSig`GF3Ҙ#xCL|Gt~zJˤIˤIA5wTLh-tE? 40ڿ((hAzyF^xy3k< ڱZEkۉk QAWh9U,m'@tPn %/⇁tz?r?FImYQQ-?º?rsF9mݮ+ϛw:2vX'$?>:_q]-A]CZ_ R>+( ]8w p[3G>ǎ;Ju)*~R^ku M:;coG}`~Kvͳ0KIKcT;i{D\?G|9/Ї}۩h?Qu8Rv}п mEЍ(GGkU Wy: F2'q5U׀kկvnD(ikK .W}{z{[?GOLNJPl!3`.af2?=}6OSlRZ@7z111=fvHbxi\UUYA9AMy'@fǰ#fbO̢?y /B,Bwm0e6*dQLJ{1};&ׅ޸~?iV:dv;$ݴԟ!54GHkyIt7Lm)mK tiv䉻K$oeVw{8⻷ ތ!8'BfzfυXRZUXLX%%Lc֬WVϬW,eE_5z̄؂[dC[#ЦPTk SK5T K*{= O_Ī볿uO_ w?}L--(O_Ttiv>y<1Ϗ6c)}l۰vk{(*D7PO9=?wnl.,=I{b%Vi7 ) n2)oڊM{ #{< 6^l| ZA>oX[m`.+gA V^B2$$/i|Yګ`7+ p{E{-(1Ž"{HLqϯx *߳{WDpp8 E%xn F9 =?\4u;yti2]aC1KUB]Ի };Lhqx t'E?:3>͖_ΓG.>hRý+y4%.'`+3O1ݮ+-8:v:-Fˬ|Yj?辈c` X?14g,xs@>˂Њ`^F X㗰/f_y ]'ug Ǒ{n'F-8zy ̥\~rEQQH=<ʳ? VR_F(ܣ4Q~V ?D?D/vEY%~VS;?Ǥ߲JnJJY%N[%gΫڦV~z,7Nb$G}[Tٟ$3K3^5߫;گCک{p agspn n v- #~Gwt^GW{}Mcq;+ )^2{;) =6F_puyAx~G2^Έ9z3)3RNg##{>僺}mmDw.zP~#Aȅ^kЃq^ HHS|38;w8,xg;s}V7[?>_P>nAV0l}h)Tti)Գ;,s3<[HA5ڦ&[;#5EyC;rA6hPY`V?v'l0r\̥\shw}AVRO&y̒F`x\$x:7d3NE!!ޙYQ]ki 6$L*Ch$8p* j$A@Qx (qQBCKC4 YTLO/-zМnkZ*-~qM_4`\s?G} !:p7~:D'}{ M\5L[WdOcz/QUgJۮ2Z9QS%ݨ~?#smA0Hx zCՊ(r]H]r!jqQ'>mS${')nѣOה7AET^K/w3C0u=v}hqw$nnv+Z-݊q4 ?D}^A d&v{:ϘD3!|/%׫oRD=`czEh b}F+k䪒u%] r/kQ; J65T'.b%o˺L%7)H:\RuGZ 5bzv0ZeO-k.!;Hiu:"x9EzFzu[:"OBn@݂ޯCtA'+m_:>t7 vq') \]=Fu@>7Q2w];SZלUzݔ5vEz.|Z0Q󒹺`ܼP4}DLn^ᘀc=E!Mݪ|;t"{Քvy^+ -5toQߴɵ+L$ҿ^i)KvjdW?`}/׽@p{3 n]7j8ȭj{ֆzޠ%#}? 0`볓!_hlٺHr589(ۑ)X1}ƱJm:5veT˵C?{5?zHmWr= |4G?X8?½? ĝH?~[ 0UJ,ΟNIDpI߆ùg8 'h| Cx|m|-B L`lj?Qɴs1S:^ruޥi P({i{kSgݬ^ߍzYSM@rI3 ǂax>(sƄ A|}Xȓc-/B>Y|x B<+|r26iFFoshhc_'!£x |xS|)ըH;zȳqka|9dtJf5Ng~uDVy-~TS1ű8;$iκ4-muj_ZWN{j\!Zi XWe׶-85z됶6L#_} 8j8qHӗ _D?~"Y_ Z#ޭ+yD0\ "_桊4UW%* ]s_%^IwIrxކem8ʘ6UĞH*귎w)cb1qlm{oE{)rt/z,LLNǐߣ47mjVw%%8VRRv~;4SOk߸"`ޡ6wDzi?([ȕji$2zJ(KMGٚrroBn܄<V[ov⧁\w"WA 0L#|;mڷQj!M֕ӛR[9MkuD#VJ+Y+c+\Q+u>WvK#豏F niCsͣ}<]y7'b8'ge2j>;gMIlNkDfRhПOѢ?%?,#4UUo+-"r],D,)SzdHJI<;7GK{%6Z [:\ 6{}a׿Ŷ<׉hzIYžP(8hR]ǫW}9ycۗuV@Z^]G{U^Lck#|9ǤC~3%*vB0Waٱ>q삋||*"jd]fo9ϥYO(^ՔVvj*H{F?Y(endGuw :)#O?pi3NX}.oQ%ɸOulTa垎|rQ|vw.j"u20uW.cMw[FSV~9K/{nˠ'rM D" x/Xp1Ľ. PE|` U􋹯2St[jeuTާ^kVtLLq{c?eO Հ( ^v1vn5 Y0bk9ءe5@ѭ~V65%s*Ғj@Zƨ=9V5s[J?Pj3rd[+'#oOEk7B-i~KߺWB]~ 2TWtJw2rdSDƿ Y*] ~ ~CFn"f p#ouZWC04SRxvqU&}5kB~o%7oyuhW7%Q}ޢkԑoyd\Yp|rdGl˜^^9'cs>~NЭ~wSrԚ>Hf)[U{'w(fƸ~c3y40c쿛qv&c8$1OtH 5@ w{Za,V U~1Uo+M..MqMt89㴽ۥ라O9s S;g,m֑sƩ;*ss]fr[;X;]A#%`XIx{]=վ9Jw3f$ͮ"yWNrwU⚐fwo*C%`1ϭv;pqn)U<*T- k &H=Z+Ҷ5ڬuHFt̩>45E9AgG*wzpl~V6}ູ$AMi[ƀR(ú| \ҍ9`/4͑}#4G KKЊ{m{Cp]ĵ&}+jo9%Z52Ӿo~ȭec*}ƸW|:~P4&q}A7R3؏[ dk7Mu]@m>hv]3ZhF4[s-qZ:. I}[+zƺB}7\GU~v5b]AV{NaI72}z} F~~G䀎@whλn9t BgN :+@4yAu`h/U㘱/3 (ڙƷGHut1?"|jWx_1GԤWE'qh'K-Ix]jpR˗3AR'϶k)dI5ynI[(lVu+ Uj]a9>0~7(27 ByPtuC:?lYiCT$=_:t]q20]Gi&vc$AoK|_h?5{@oL|1'<$0\s+nJm={c_䚑׽o-oEܳ/|g?3dweb~c\[ nզ}f(ryk[}2='G~ِφ|8,4! qYligC>Ӑφ|6! l玓bOC>ِ')Eg]5{ב|֕inwSW.LkIm<*rﵝڵmxw5aEf}Rj'Y3qZׁ`M/K󠔾5ٯmӂmZ[?7q򛮟ݝ~ wh27$nX27"ωm9Z}_UzqkYwTF͌35/>JmJ Npǁs=&|c#p;A?Hw@ĝ'Q8 ^ߥ1 |<; z "`a zuf"r]EaO\lrYS{⢯I 1['vl;A5,+)aQ~s}{o]YَWR=ߤz-iVESph 0nlCBS{o[EʤYC#~H-k.m1Z7NnEYIކGW/EYV},:$]p;X5(+߼g-b.gt%BknjnɖWl']jH كiJDZQz]:jJ+ ~eYY+3zuJuey]}ci,%9EG~=Btԩ跓1k^;D0\JbtٱX00 #a“O!*MvN9gϹ'BPC+m'k< Mqyq#d*-k.kPK|ciEhZb-(Ӯ/FDy1F̮хԻF}98YKI`u{^ut,vt(GաdHey(CJq+Bt:j;jAsH-wKyV\ײ{eϡ4m )Rj )wVyVu4;CM2K~W"ۻٕw~]v坯ΐwy׋;ɰ.=aySP~Z.^a],úxAQE\\u ".C8o=2,w y7+ڭ\vu8R㘷xW˻jKI\eb/3+U~2x1vw|>a>Eձy{e!U]e>'q( yOwVe+q6}xû+#+ͬlF;1TvN:$.ׯ΂td727C- %1;JH^wxL ʬ7"q_lxgd&'}3'Fm_|$-KV6&Ļ1v{7&ΛG޻Wֱ/{XuރIG=|<Rp&y+R=;7-wk܍' SM>^be_U]*1)\?Hȷ4wEwEvb>x$>O|>c$q4.KbIY4ֵI|A]9\$1)}bgyǿ67x$_;?8)X%)XG/?Tx|y5Hh`E0:x`TEn @#Xz dA@z7)Kz! M銽S,XQDzAZB ^ݽm7ȏ{>3g=g콛_ݥN~/@WZKףo:kn߳{>:v2OkӠ ])dM'g7dOљM*j`;.˧Eb+.֬();/N۸GFpԻ#gV9V YNtzY·?՞-^A^ďXQI&*bJ'SO'Nv]ʏJ}EzeXR!}FeYcC +,=}DfXY+:,3>m\zT[cƧdjc:3:3zF{Ux?]RBQ׻TٕsNHI㴦I2g$' Eٽ܊RnTkL=ʹȊ&=WCm;չ^RfO_e9&ڬ==#'b^cU Y{!׮=oʘd8%MM]{YQQYV\J'']a `M-/>nuk66-4$uKJ07JIo9ĎjjMϤ=2+-9.uLz2/i'[ZMBZj)#`Xbja ka a1)ԬNiY- OmHG1 qƷՑ0Dꙑ9C s cjl/ӿ˓88W=JYiiZ߬oZrBfJ'bKeo3ҏɴf:rY ́!.96HYZx:cRDׁdNHu)'NV<1jhڃUehu' %7fLFqNOKH2gfe%Y=8Af1KKư1B$ *,0X<31HYܪ (ޫרE :B<"陧Y2LkVF\t\nXa*LlT&[IwONLK3,=mcDӿ;|Wnȉ\#WkEc~E5b3)=aHj^һ*w_9V8>-WD9m$̴F!n#0 5anPYgB%Թô 񚇸_pJ} 9yDWd!W Ыf'$|zfMB.OϦJ703".ʳdtH+IK OxF|YRBvLiV Sq#{Jgbx>w! $:xe=6Z6ۖ4=p/$%{y3﮻eRhyw{2_{'XZ\4-hil=>YV߬(>=wbY ? _+h7i˚_$EVks|L6ge'k׌|pfzI^ kwy 2GexLQzoGk#>HTtE"ayJ׾?ˋy7VkA#136}|kLoaK%hEa-7l=a׮/׻\K /R>P#5"/׻Qn ,«Kᅠ{ˏOԟk:(&(]\W!p#W)/|PYC (-zo5ˉ.ţ8j1cjG-zyw ,1]w앯PZ!kw}zRpS<pk{ ]ߋ3RZm5?p>{G2bG++0乀Ȃ7eԼp~ >[RaAXnĹOKS_>(̉o|'jW'g@;]:%Ch 3W)`K!`!Rk{-Cص=! qm{Ȃ=4xо5vW!6Z;0[{RMj.bZO-بkTK!{5!M6?ڥ,o,HG WC[}o;s`Qs~{hc3JD6.#j_yڗ4Ab:o)snq#2: ?e?Fo3v}: 94bMu"[䴸+~au_ެP d׿o{ϑnȼRIF{"knw߼y9["!}݊ȰHEf^r%?,0yP4jj5042s lV؁!ځ!Ak`%ôC,!Ak`X#r lVFjv`\#" \w%!%u(qgE^ci̸x /$$o,3;_Hȿ1;_hh 7y k^qƒC:CGK-,2$\nLƖpC=*UwQ2ݧ>/]S>SFTe*%Z,ٝG[{>v(pX`\sa y5s~#Z`Hr.OWepHH*ӝk)!5a.w;2D>~wzvs=yG]%P%ˍ1]@!$ٵopji)T@t'|,_o8?y(F/Skn..4| }MWB߮xLf$$&W7Vnr7+MC,_N"#*!ٚq{L_婠+fD~W?_)_U #pkI믬A,U_T-r/XW)B= "Mz]Ur6LT,V+#whm5VyKDHVKW c5jNMR60njhe=֪#UBDIoʸ8Hd)b).vb.1|,ΟIYњΊe;&,?{E*QjseBާS[)}6Jo=t]J2=(DRIS;)t5rK%yZIOvا0O2$]w+v] sufΎݞZ0Ty4zwͣoXZQD/Q([V;=E;2w뒈Dd:}:ժ UK ՋS5=Dd4& <3[%*PRJUUgx&+ՄlST9#Uĸ)#~T@ qDɐ>؎oRR<5s1=oe--[x[x|s yTΕ2G S}'VbGC*TQ9;>sPy}_a󵣓qZhlfsyZIF7c_1W̳}Wbו9(K/>-aRB窜}-(|ܑi[GDOcžKUs]JG<d9mȾKR>v)%v$/ 9'ñq v 4ӱM.iNadKִ*he#f73J$qC{$go8}^og$*n&QqwU=7h2FQqSņR=D{77:: Ґ3x*=4$2n,cg,dQa3 `EF? ~8F2>ߝgUWŝ@CGQ~V%K$쬡TC3A*LA[ MLᩱ25UUa1e5wSJPVfvSJPJ=ԮrP !髃M=jX}g|}jM=jXCJR j_aSU?ՠC})KbW+{wUSjS]H?5tG!O5FyV-jUTZ<ՠzUZWĮ"OzSy*< JWؕi,,>TW'Jp/ձW3:w}|g\}ⳖCvxl|Ur yTMZ{ e>eF:Bgs{Wt]YS&y}ɶwR2n/[+9v1O+ ;ۍn<;]`*+_r3nW:ΓJUvJD{(?=Mtt-)v8oDvovޖ1hl8QFѯ-vkIl [t.Oa'xB4a$a6 kW_N2>3=9cd-Xn{$B2r sb| F7s#c61+vxJ͢fio7~)S3Do5JPbB+56ZI4Ȅȏ7ǨS8NN>Io󴒌On Sg LN8ȄT$ a7 8%0> R;O;;+ I2Fʢ=L՚LuJJL{*&ҨIT91>~;:Y.;<*PYI>~+/Oyc*QDsvb5*bz01Ϛ >A&f|dL-֑~ngΝWWwgNOaklP6SZ)kmm5j[GL+l-6ad# 6Gl;-C=$bs}Wbǻ?f_z3n#7ߝgNW>jKJD(?srp z8*Zr|k8v]/?!_f=b}2ʰT2N`a-P?!}M9uMr.a84|6T }9~z!D ^;wa۝]3f85ALlyWN3,8#{':XXn%q4@dLtcK>qyq1LrHD7\RGby vb8)Ψ i09}&e2Ga?gcS$ ǣ_4aahBC6g-Fr.kѭ#8[۩Pvwvlo#[a lBވ~k`-{aύ׭v B1fw{f7afk=67 ÒrzNiu,Ğ4Q=E#(#\sr;A$|g3.;s3Q;?v1~ve}]Xgx/1e]%5xQ O' דEwrx=soݗ0 C7`$"Q2B>Kyu(}8~Лx$)U z^ꃾ`<0a79!9B?}o[dFSWPW,}'s>!ןg y99_ι]N]YF]~ K7çy_F XX^}>}?d~>^~ ^KW`˙cuK **ַd_`o>!{}݂r{>#`3QBdmvqwݜd|YA6uS͑ЗCaa'&kr{yk7A2y=YgHBMKPr&BMED߶62]VΨ$'ƦjSI5Xr@ N~7SM>5ijiڊ8vѴK턮 }]M{np)tg;E=qn>%~)UBr3jKA; Nё|u`vZCKз_qRӜ8gnxΗTޒTߕ-v_}A^OԔxN9oΩK83Ka,|IWpv4@>(G;'>6W?ຘ诒ЗCa%gk%Ռ[5]ͼ+K2>oj+hjP1j (wV-wN-w^-堢j%3p N SvG?ʸc?S"Q~;Pz/*ʼ2W%\e^E8\AkG>_ZoZx7&oB_^5RCBCX7#Ĺ!ԇ:ĻS}gԺ3!47?fo?gc}62~?~Ig${Uo bX]J JNqF2񓤏WHA DNq.:n8kmi?rkmr{3`P]oz]Bu.С(zB\B "ѵp8u-v_1" .oS/@O/!9}%}KkN"c(C3@oF6dLCh::EiZMh:Ľaa0oc^sd^'q0u/r=GWCrD"TjD&}Cd&AF*\+"'e evp%t TCW`gg&f2S U'[ՠ TfΊ*8rߝSg$+Ȑ? s%ZI"Y( JAIi8+N[`OPDمSWLb\KkНTg$:#ݠtE rǫݟ_tn~AN})vWY땳<\A`ɯ;t?۝GY,s`2 _']Ujvd}d+ޅn'A7DϺvEwӷ ` {a?|K"8jukN2wwř/<g <AXEu:ũ3:fN;Q 냜U>C#hUHAChĘ&@ o Tq$bޛlqg(ATJK9. :+sUW3TwV7TukWkFj.}u6k#`_P,!fg%*bSA{Sؔ6曟۩ w?=TѕՅ Ig$N^"O Zn-ylGLij iohL_S g+|H74_SmaF] ߘ .ך5XO Ւ>rni( !~bzBwЍ|t!Νkg֙u!awrٓ!D~Cz;>z's~073HbFW`\uƛMQPQJ~xIS %џ<"ViZ]ʹBٵ Lj4b:,< 3`l韍Y1M1)lJ`OAUDy" mA% P%>^uXo: ^WP*Cb6EXUtih,&_*Xk(\O7ōD#ge#d[ZKY~hlϵ4AH_S:>}pVVҿŹa[[dh-Z|*^_IuWs%̷r1::ֲOu5o5k%,%"]g-Lw$g$M uL},$bۉ625v2ac#p$;{N3d$t8=JaA{v;v2.ָ#p ;2^*WNwD>;3ucyXi2V^t*v8,>,\N8RP*<}9(W_Pd8+8C]c}hglϵrSa"UiW q{z979[:#- .BX~Vٹ:;s}Į'.9[KxW; t56vufL7] |`}o6E*=> mu}": "P#GHlFo D&~:ξԨ>DC~d?@F` QEc} FHj:0Gc[jG;+5Q0 IJXheͱ?fGdg7A]_ D",T"Ft2 E?،!Y0Jē|"H`'ēx2O`"YN"d= c7 O`I Wg`LcC ̴kJR/ FCkYìa85?'pXvB;`4BoNwdRgj1SQtSdb5}0?J#S0 d̂d.9rQ9"3`:LC~O!Se/LeO<ޘ aS蟦>cc;1033,k} 25Ά'O/4L~gixf,?gd>i+{|׌a׍&,D~ؼC.!oWE"{er y~u!;K\܋]cD9[tE:_aWkuor]6w}5I}[yZ\,a)7~Ln'p).'+F^~=ۀzO% ks- V7OFbFW`MQO-DlF!;.ȆbNELl#+[_Qٷ-Dv Ho%_mdt; ;a o?6?I ]#oGMb]S ]~su}e߲~v^va6ql}Eߖ4ջ3{vW~hg7;2_U|Hl6ST;hlȁ}G@z 0 Xc Z݃n|FF+ăgw:Ggi8 8nT3 R!J=,F[0P=i/-H4H¿{8-y|]TdDg~?FT_~#{2{2{2{Uij2eS??ٕK4&%6c3ũF(&V3@(UoHl _Fk8a c X0| S2 WM#-aB"%YwISZ5Źq/L ̛Ƚ$r/I̛A2s@*!7yGьIg4֝dHr}.C4!$XkS Mp&>u&m_Y):4Dmb6Yj{uԵ⼵$8999ݠ;<}oj@olzcۛHf\OSԮ^Ԭn #[sAnJ1S`_ ox^W%xga><sa6̄0(LG`"Lq02a4A*$C"(h0 `^ tn:CGhm~hA p`f!ԇPjC5"TrPJC)(wAq#Acbo \spN)N18[ .k [`luVJa),Oc>E. o^x ^YO\ 3aL'`*< aL 0@&tHdHxQ0 a>  Bg-%HP 4@h >ԅ:P PA 2PJA FЃT<6  ~KpY8 $cppA]6 [`luVJa),|]x›^x ^YO\ `L'`*< S`LLq02!!!aX!` !0}} t+tZB p{ `f畆PAfՠ e48mU_6 ~Gl]m4|'=?;=I/'Y3X;]mնJ6Xka5/m{_>]>Xd3ޅwlU MXۂ +𲭛Ex V9jY0ۺE&gbf-ſM}S|}; |~B,͸Gy<[`oV( ԛbSSՕՙ/ UT@.U%:桟C,fb?q3y0xT#[UTo5Ցk7o6=Cit蛋l2fcK7;gϴ/gyi&o޸V B!"LoGHbF.i7@cw̗9{naz1X"wPu9xWXkؽkƾ|暇~.slqGӞ;tNO;T[ږҖ#i'rٕv7r_<1Љ:+suГvotb9}7g>$gוkgN?;C>u:_ ڏjgii?_F^H=y=y;]y8S/e`>oվw囵F [_-gy~Yo7nNq? 4'ɷor|oqx)}:ϛx_gVUc^lFtoa ݧ |6Uo46m=w˷wݠ9o>_ȷwMgCVFE>,}6:l9>eO56C͇o|:Ϸoht/#( zJ~̀fC೙1N|KAFllgW~c|{Stto s|6B$lo|6Bn Yjog܋J ǫGx|m?1甭Y xuuk`F y)|u^C͇"Ee'(omm]Wgп"<=eRy2౩k"UOGS5G^_1,\_io ٢ϰ <>\r:ymBp- 6Io*ixl\0[?+=D?;f~}?ڌǂGNwgL8I7er{hӷxl?oᕧҞo3GiJᵙ?ʯ-7{&Aw$Mw [L{WJ}mJ_.5)W*^5 ^y+oc{%e6{%K˾O_ksq}1|9w~AYٮtW6 <>\2%% pkSW.c8c1U mU ;pVV{29U)|FxUWt$0KX-$dDL FȞ@@VTr  2dH21NrX}-e9-ߦl] Gu>턿 ~&Dt6e]w#Oͧw~~接h-W(*;>BuOn|C/bKiW'B>Hy#ڴrJ`z9O:u^seBM ēe] ?i8IS8ErP].p1r.l :[O5R3\zl -AQ fIwKIPWvq+`~P=1%꜑Ey\^w3l~i]c@5%rU34|T_zF& < 5q@ԗMr,.VJN@IZcrE$h%-mR$}4Q*(E|V~M 7ȏ#!JA@hNuLDzȫ Z,)ۼ=d5Atoi!πH;vܽTjK鴉_=ؗ'VeIxCy2҉#O/wk)tLcqU0LdW0ksGQ.Ғ.YHvգUj8XŞj Z;ʧ>]F%u)SFmF)47끸iE%BC!*k?=;a"C%ɢH$pI2R=[ʽY8]Luˢ/\ѳ#K'sFxڭY{tGNM%+Ak%}hV5DUUt+(QTQ֛׉. "]jRkkG̝;?t͑c~93pnA>9r#AI5Ar{'7vFt -#X*f>Es6?7͟d f;]t'Q@t*Uwn>:590Mm%o[dZk$K4^tԆHc mMF<:fRc7r3]6FHv8iA1еY>Co`$-pjVx.bXA m'm.uU] P%Q{R6~At 2h\??waKL]`0~ GS0h丟`DP fͱ h( hx{ؚvk̑#ͨ&Hq?; 1~OfB)Wd3q?ӂӄF$^,6J A,.J b  [CE) /B l5E5 `Tg+|Nƹ~`6uȘB-]r7|˖-[pi ? .l߾}%caaa6lڵkvl\m߾]#Ϧu?Kظ,YGٱqw^i&?6nܸ|ٱq MnLX"!,3EHZ+V즛nʦ:)S&;6~su9;6fհ԰ϦևݺuXbvl\2ϾN@@cDzoRڵ^zvl\EJnݺnݺ 9 *X`m'wTd-ko_v_8wTɾ;?A 㜥A,gϞ{{.{k+ҽ\w,'M\75tƎt Ŋy@aX (_NdUOi矮o)^^|ƌq-9tHBC咣~~%S{<݉,t+ ?\6mݻ[/T|vr,\(KgW7t@GX"_xٵӝB'ȍ7^x:ju!S/DW{Wju?%@={^|Z/a]%fPlvm?vUEF*ޡS[Kva|! )\X>B߾A,]_⺴ k^1*Ur}-h'0,6^=YӘג Owモkn])U’%lY9|ӳg]h&gi(VUa|! 6L6n_[=jG\`SkL>BO/6pB^vmC%"Bj֔YB߾rQ?M*]g$%ɒ%9eKqe_I2и^ח}Ue9~ܕ<+ BX"_k|l J^ +@9K sLJ{éS5$+Z H)2ttf neyy8 ޔ7{It.J8K=%1^ya :Sej{iCzOKw]rVj,4JuP֗+/Y"Ki3V\mu OSv i|wOՒ]]%ou{dِFlaX JZeL˸ H}JV5FTj %KȘ2T(Oȉ_W0V(|19l%#>i7ș54ַWF ?J \%:e^X(=WjLj'qr1)6CfhhV:urY%KJUI,u<򮮳P RaG.XUr)/J p(h$?i?f֤a9[hE~d_WI)iWޥfxk;&Ǵ,+e癱uI&/; a/8qMR7T%%CL/_[HT̝I ZE> r&" fu} *K k1,?)_3xW\`.[uM嫯.,w6AjԐN\'Qf$ҏrO?idVYVvtUl6-7uyާ'i2EFe\ u@wv9xP6'&%I\1>^]@FX"_;67g\ޒ/t4nJGxyI6\&n"FѢ2~Mdk:)x HX,X 6Vv?D%͚]|ZfΔgOYN3l?] -7 p= >|X3=яbTm?dsIVS|!)\o')Μŋ]\zgc⋮W_t}M2e\=Q;Qo'LJ)3xcZOR Xҥ%&ưp.*K ҥ_/;sJڲhQԦ__7&M+eK gťo_CYFxu3 U*[vu}è,\a(yy2D%6V&Lp K/]wqqRddW/)QB&Mn\\GA e鯻ץ@FX"__vpuȡCү(ܽuɇ]bugOWq {ɮCN͙#?~LsV7OJ^\uZtڴcc;q-]IYZM#pbYLtwȝ,/>6Ȭž@&1BsU!@nHk"wYEIոE,&qBsD"zI^3%jnaTr >Zj#)O[L9i_.rȇ"ELyME[E#f5t¬wT?/R\uim,/8eEDZE}tle"UD:YiD޷<'5M"ڿjզlMGR0A$R$I*OOX2"E*3.͕5N%W^s\SXJ7V(ֶA"sE[u*|eEB "Z0m)sI/iyqRZ+WoR4V)4rzHY.r B[UTOj|vcEe] +%%r-.:8%"En!8dWvzYu=ja #,/8og"׋aUrY'JO6+ TN͜;8errS8#7G5USjikXMk֗Toߑo,We_ׁy… #G|]:_ٺuߧO+W^ݻnjswN2%;g*)j$e:ULIJr֬YԩS,#FN<9p@ݚo߾}׬YS/ҨQhfwdSָyrРA۷/^b&&?~&M:tnmڵ_{)VXvoNX:fv'rV~"M0]cFZGvoIgtsXXfΜj|K|||۶mmjϞ= 4uٲe;,9r&h5D+nرc65jTDu9)ʰ͎wB5ЍDeQV|blJ.<JΊYya9yd]$/<<<ÛteRN8~)**j͚56mڴz50Ν'5s9GW=)IFYGb΢䔫7 LQwŧ7jil?M{0:>r]B owkݺСCޔf޽{ɓ'7n~ CZt[Vwܑ 8oktvY%[AlڎYmŚ//qŧI)lj3l?mV˕+grǎ[xqm'$$„ TV}- uv}.ܷo_```&M´9~xÆ {fǻ4TJ5]%?!ea2δWSR²iӦӦMW2YYj^j.>}zРA-ZЅAAAevYOݳUn H+kKEdY|y޽M6K.-Yuvܙ /_ޝ%)SrRgӧX6[+򬧻 8rժUׯׄk,g}/rY?  ݻ/7n\׮.g+$R׺O3q9+O'O?~7h~ܮ/\[^x̼c"%Eg@ns3glԨч~8cƌiӦ5k=>_ȟ_uHMt~'2޺H-"m{= $[s&zꩽ+,̳|+np$e[n]f5jԫWVZc[~ 'XsiLcL sZVYhU~#57[J`1kV۾FkIRR u}J3kWGra *5mHLLL~ӝBn<(2SdvS-VXUbzZuV" k/H#.T/WU)o䮔=J-估;wazsܹݻw{Gp<1e R_Rʞ.9 E`k]VɬIݦoq1*8/,;ui9 {c!=[c"[]ZYUb6uDkV-Ymݹ+m8op߾}}c^~ Vٞ`su.8"V)'8?3!qqqpS}Ӑ`Z)sJHk`kMSyaYlƍ=z400ɓr{C|H7.(jya#= 弰#Ȁp. oO؇d4>+Vꫯ4۴pkge}Ȯ]nݺ5**}K~yEe:uj޽mۦUܡC^z])ǎ5j\jk<~ح[W R K`'>}:wQޘgɒ%_VkQԭ[օ-[>u% )ڞ IDAT ;ի7sL N+~JJT+W|'S/L㽀s90l &Ne˖ٳg?ӝ:uty`ztἰuCy;pu.9y|<طoFݡ9s{|\w ӅʼnTܰkʲiӦӦMW###,'$xyy+@r^Xj:.\n=ztȐ!!oseۖE2 W{XiYR)yaٳA*ח/jIrL~Pv?=Vn >r?+.@ok\aa?P\+UKQ^XT {}1YӦM-ZԲeKv _>kUG'aNTO~)]K% R<"+R.z oyapBܰ0agGx]n\lH#$jkRG~!ޖ;v]fiF"ϟN:[o%$$df⼰;v=WjոedklLr-wvlQBHȚxi{ b˗ׯO t׀ݞccc|}}=8Cs6T.:uRT{ oE9W8DfWpElͦMݹܵkٳ-[›oyWkz Ŋ/NR"IvѣG)S~פL䯾t'鐫ttor̹O#Ϟt5'G_Ӈ?~ݺuxvٿ^{-_wE_{ԩW^y%ߢ ~޽{Mr&%ظqcf<;O?ի=#8@޸EWZJ^ŧE^R[|/vʕ}} &kΞY[uoG}-mO"##}9sj޼yryY;v%o9x`u4Juϩ@'3fЂR|Нj՚8q^_3wޞ+p ˃;xqt_wRUܴk.K/p]w >?]Btt̙3o{|֯_;8uԩS.]vZ@|Ѓ6eDD̙3YE33vϞ= 4wg˖-ܷo_Z qƎ;>W¹s;&ȝ8~5kqlذRѢE{aόg귩h^ Wq^XfhHwX*Uĉ>k׮_~yǏ׿V&M| ?g޽{ Yv"d9g ٶmn=ŋ{GyS}>?ٳg+^\yaa5kw^}ƍ_*SLժUu]+{uŰԷp Yk޼y\v駟~G=ҥѷo_}PO&R?xR5ԯ_̙TV+#"",XТE jٰaC]hҮ^ڞ95v\r>CM6+WLLLt_?UWY9rw|ꩧ|}}=#;w_o;udcF: rRX7xcҥwߘ1c Tj3GWKfٲeKΝSөr͙3GKLH8p ,,lʔ)'O_˳#_{Z86oܝ  շ~;I rN ˾}~5k|͛w9q ȕ#7?0`ԩSOuytҢfzwԩvyv ̙3n-ZtѢEyai+[fdtt%K< -#F>}:tlr^D3$I'd)SD\N$I\WxSۧOO>w}OgϞ2A H9kɒ+nᬜ,QI*iRFIQ9 9PExDLsvX|Ν;NʢEN89ڃ ќT*/mk+Pא55-K*U Ka}ToMp ט,*Eu;. H?ӆE#*K [=yazɖ4R 9#FnժU|Rj%H&YWCjhbiÚv]dFWjbb&.9.$@cO7e./7M\;;e&a~ʅvgquIɅY*Q9yacŋϛ7iӦE:tɓG-ZvLӌԴN=GcIJCH5455uasinvvI4;FϢ(6^ H)u $),ëU@~:ӧI&|ARRҚ5kBCC=/j9?Oppݸ999&aZ8j=wRNjF!94I&iƘTrvT2gKTn… O8"m9<ѣvO维F-%XoNSr:.Vbґ#G8/,I ӧOKr36aΝ;]ve|_ZJkcmdQ)!HXἰ9sUĺ)`۶mӿ_~n)Sjh4jV AWMxB${$)(cPKH:+q^XNo4,|t\8/,:rl[h>|Cd@%dt.Pg{G\ ǎ[j脄O0ӝJKpp+zϵc|wdGYBKyLUglDhL8g-'~夜}GU@⼰lڴis2::ĉމe˖={6 *.K*=lٲehhhN-ZU`A->タoF_ҥ=m96}wޓ'OkI(&Kk/8:RI:$|pKs wq^X֭[N:v;&&رc쌏Ob44&]@sEEEuꈈN}wk>}?K=zwhp7p¹s4K.qMR_ { w&*RYnRRD#9izƍ5o˗/`4" kpjߴeXWT^}GO\yذaZDKwu})(?e;wguڵaÆԟ?oGfwcsԝw[J6&aea9Wv.ʭgyqM w'U7oݻwkԨa/_=+KnVMD^\bVڞZ}j:o|xhhg̘ꫯ4^~-lڴ)V"k nǎ;w{kZΊ=XNޡWJ!YRJI/Y,GI9gsySNe 2dXS(i׷]vZb/LNN+=q&}۩z?ڵk:onA:}fEXX xFhd29q_jO((P@.]4)źpESp֭={|'WYxq}I~KTTTnJ.{{e"E r 0M͚RӣY +n߾/?~<,O&Mϟ/߿ĉ ԲGuv{jժse_-|=yanwygܹAAAKEgɒ%S?Rr޽FrrJ(q|A IHHp }`hFJd$JZY[WKxI)-r2"""22n,ZH=ݣvںˢ=㾃ce[N}&o?n.-"?ȂNTN+"E'e^FEE={V:?-[״ꫯ6m6̽|ƍ _~.}3[v߿pH͗roRZje- 9),6l8{>rܾ}=P1ӦM[xqz 0z͚59sf^cO/u='R4@/39G1Lk%Kr-yK+z󭝥s'Kr:`@nर trˡCRJ#:uoqƱBRG|6Ȇ%#XkH D/I ;Ց:vGNH''bEEE۷/9_ .7~smVF޽{W^>JHHOx? rw}*[ſ-k&^ĮK.Y]rIII+WHq ff֭߿>}tW\aL?U׾}{6#}BCCG1z ѰԚ'ī-u}<)yܜM6?ϠAwYr6l؟+V3$$䮻r/ΟީS30'QHtԬ!5IҴ{?yRq޼ySNݻw1e꿹jM4СC6mn6ƌ^R+\~h"{IRRR ei )(r@SS34L=f'66daWBN K[Νyʕ+keE{V سgO v:ulْՅ je٧O4~CeVnn&1OV~V!zv5=-O.Vi`%yk rU?`+N㺶V`-uoη^iun:i$ʪΫ,K*Zv>}zʔ)NJ*VZ5iҤ^z:uO-_\+׊ *,XDulٲSݍ8p`VmZs~5xדz$@yۺU=̜"kTK.O)ftaB ,kDڊkrbQ?k}QϾH}+ [iZY.J/屸^)r-睳k8K/h}0uԐҥK /S|+ҥKhhh5V/Ҫ*YE^ɔH=񄕔uW8rDno MJ?#ۼ|%y8"G$JRU]yٳg;$׬W_ˬՊYe9kdSzԒiaDӽ{jժ֭[km^0 +*EKfov_42i$jӧOdҤW"3F{`k7][]w]LK['d%煥tx1::o?%{dO)PX 28[vϯDUZp%"E4:z݈í"vžrYya_7ntG|||-[֤I{/Sޥg!9IYu%GݺuLҔ߱0X]h܊LISSLp/-|1> ˠ'|211qɺtȝ (aѣGkdGHHy)(>$e 1V^i]ф ~![n{zޤ$%Yf'梟%Jba)#1veywYzv }D[[w[GVro('9Կk֬RX׭{yy2]_}~;v츦:u +KxI)YA*oaוie6k֬|lbօ߈hrI9wߕ-[vlɆCh^>uֵܹӞx=?'Vb%9"G4)C%4.6M6sxktKf4T%[8,,g͚5~ݻѣgϞzXAB.lٲlR0},#eJ͛ٯ>*TH{ u\VME @.ð vt-^xF<#ooo˺ôyO)v)%[m۶+&mѢEݑ-ԚjGXΞOA,SO=&E͚5WZ!vC#e˖鿍W:DIT+d*V8~+5A&k,<r'eƍcbb>c0*H} ylի/GKIM~ 80"păDžD~{"7=@Iґl\g+ܽ'͛-ڻw۷X.O 9JnFӧzjʕw'~o4#)5#kBSKq=քn{jtKa.RW5B|NaoXpRXz{ezxG;Xv~~U3%K^_FE [ĉYz7֌EZOwYqԊ,{EK:-rܚma5GQ5|abb 33r' TR\\&b壏>ڶm[ ѿ?s瞯<'>طRߤ.)^%4.\dH-kkc+Mp$뼫zCT}};Mwa]Eo>퓜,@㤰;w-ܒzIrr23[>|3o޼2e\mi˭xT .̺UGAMo=1z;P:kZԴRn%&գs_@80I)!^gOPPPB…-7lݝ:utS:1:gg7f*j|:VٺXugN'qRX2(W\- X8'Yc9|ݾ a {;GYGOY*Ȫp[sugEX XX*r +>RL`vG{y [HGydժUZhv!fT3TP+ңGMh;+OXE"uuq ҍW)i:Z'K*YJZ)kbŭGlIEG- Ycy&Z@둌DðޙGUy[I! YH0!a@QAŅg13wߨ:KETR`|l!!!Mt;9M_:+$I֭ӷo߾I-6mݻww߽y># H鹂nsQz~ %53Д+iArRF`WѵHRʖH@0T'R">>~Œ!>yn ORمܢ+{JqTv86Ŕ1b\PYǬH%g;6f-Aa!?eد())d?s477?Ã}^A&''G;?|}}ދqx9_*.**1Ǎ$沔rҩR4*clOb/g~v9;`$%A."6Ecgh+߀@0X._\[,ͮt;w뮻CѣGAMMM;tK/>J;S; a;'O nyVG{IW!ܰIK_|Ǐs*SAfIlǠ DDo^UWs2_s;${h 2LׯkÝI&Ibi6]A >_}4M VC͔Rh"NC53"鸌Γ7y ѓ8;\vk\S,$$ido7* ]bYTTtر۷3}Fgݺu_4޵kCU w:ۚa) 3j(97,]|Ҁv'q2 Q,PxMM((#HIk裠"qI)VIT㠊>qI`tRxAQF-!NA ,O,m6u\lm۶%x32JQOiBk_6xzϠhFL|T nx:)৳ 0SY2!HńekR*3~.`4 S!QlI+7xdLVHRwѻs4)1p q~'Y9v&M6وnwd,2~QVDr)~8bq6$q)ہ9bRΝݾ@X+_~Oƌ3g$* Wr[7|}}?3шBkK_`(RGw.34F+ËTL0+ek~&w^+ӬLYQ$GDTkh{ btL\ia_SB%v(tظ^kCGu<$x{!%&n<$tgA11 W22L#m:o):4>@rY/GsS2T~XN;w2!|Ol+.yG;-FE tZ=#U\뫒7\py~O8qbѢE~;8C9Gn` Ȍ4\&(G/xJIT=w)߬gp,K 7RV=f)ԝ6b@ nd]/"h\ 'MMM˗/|(Ѹx⧞zj͚5K,~aܹ111֭۽{o JOヒR>8|Eј`yL P\Mf" 쇞X X2$3`Qa2Hm-0#%_*|asrr?) ^*]ڌn דz<==]'''b']U].צM.Pthæ vٷd|EBB$s N8+Q9#tSun0({Civ<K!'X"Dv=].O%xlqҌf+?z_59?@[Þ*^up` r+55|&ZF4ɌHiN *(J rXJuuuJ)ӧ-[ַfgg_]UMm۶?MvI]p!dfpS= ctLwUĨ[fnyWlZt1RYDk.x$'TO2*./n 2HGEh̠XJ:5BQğ.{ٸqc@@[>ի|@fY2Ȩ_dɓk]nVVgBBBuvu,bYH5&4/Tpn;J(,_T^x衇V\)=PPP;[Eggef\ ٗUCa9$&)P(5+;GQقQE5 ԝCK+tqۍy* U$%iߎa-ٰ\@Q<Ob4l6ڵT(}YMM Fupaa4ٮҌХp[bj$'^# (g3SITB=iH+C:JT"iE^, q]!LeOL̕~X 9pP~Y̾m=096\(9DO5X7` zĺeVكA"`d IDATJ$zFQC? L{79*?egdqR 63MhbfP Fb$A7`ãx4J+RRRۃ+ڶ((DɸByUA)S^OgqO^fm @Oz+a?C3ה[cRe gƍZ;}?(92N_#ˤv1\ qquBMZX}uhz*( PK. 01HPn.tnDc;lH쾙Y/M6&2xL&BhQ¹fN7gY:skm.[E l6v%}8.l!W+6#S*(,n(ey PZ= Qf Jgo^Zy_ٳcE]k.wMhXFu3=+ N :׀H-֧Ӌ-"~' T K,oLe(!vlߊA R5HoA RRW5pXavL4ޓ.m;IWPԌT g ԚM8rLs֞I 5=.!׌K1ІU+t=! K,of+ ^% b;%RB, '52Qq聇ؔN61DT %vF7 .M$mCGDK,{$!0I7s`>NZ,;f}Ig>=(nT40HAAa@-Qw/zR&g] 5BO|6r# Qy/@>Q MtgGR in v8}8uū)QZ K *ƈs& 0БZކ۲LJ*ė!V$a.-&6`曲dpA }i0 {8NFzA_w((((,5(T+t-iH6 ԏK K2DB/;A|ىQvtD|>PN>/g4mn-sF~i$]7’*\ Y*De(#لM{C~H;+-6خ$ E>9$rtO#I|ʊ /3## JP*(,i5Kcþ .)Hَa{{ tLdk\pL&u|4۸ $g׊pvqYW7E_򫐬:cj* WVPPXPR; 45 X x=FwAz\0+[TT$ "E}bc(%Nؿ PKta"9PSg%q0qIn|2ۀD ,( @ k+Z~5N/4:[Ӄdư>C,."wW7Quc|C"w 5"0CXnH6Ht$qDU;^{J!1XHDBF) >Y4fʹZDQը&YA,8'{eβe3/p&{0MҤ$\\p_u}GCP!ȃx;xg'pb%%\?66fITbӄ/k]{ų%F[V{uZ8ZME0|R^;ӿعo骷?j XV V4ODP8?Dn.ࡁ==oyǃ4Qhk!t--p:vt+WPUv*5sXLTYm-NF^`DYtqsx.U++齍"5ڑ V=h"r0h9YF#F"s1ON TM5Q+Wc$OF +Wn^m:)|RTŅ>Vs(>AEP=6d?la4$tqtil emEo 2]͝>ufX]-U\9iW6\ ε+Q;gޫScxXxA)NB~KF^ ONFSģtN2CG]j:؎S+t$jEґHU~~ĔD6bJX"W8Z,1qABAa@嵣O?}饗D:0Ѩ36S$j㪍ÅN>k\3g~qgCjt1\^xt$j3jLDn|P\MBR1A=uFf-=sgOԄ{<1L=<1B*`~;r(7سeټ>GLN$uco'?l<g1H~diSG &koEC,krLe+ /ӪV+^$eKxg iHDr o=g%LeG* Y4#qKba_s¯>λLn&n YPwH}Ll}U8v UUDGlh:$ kI2Jrx']bCK4<S^ rb*H>!J$ѤntWz471H({$jӐe/4T8ֆ? _YRЗ; :#i?rupAК9IˈcQcpC%LU+L(M: #|ҭHzy$!E.Y_hSD$ 0mh;su{? eg2営{DCva6 V%&B-O=ӯC8"ᒞaY!XӤ1Fvd4KI1WT$D $FtIxw)FAc:;[gge (` ׂڜ5jҝ)pPd9oDyx>ԛ bjhHn5};A$SRįXƉ SĶe&rEh f}@e8ѓ ޙGU{=Ita AA>)Xl\)rW%:,GAKKXHBtBB;v@wBH:q7Lx;SXZ 99C9 PP׮%/Ã#JNlw㟭Iɐ68Dhɼ1G'Bl 3[ I, P@̀8 w:jyV#L5ݫF :5##ٳ}sydy+92gA3 ۠%Mya]aRI( lc2tg2rD у5|ssP)1qQ/ḨP(!PwHnKbLSCԨ﹔@8 PvOA$0;OK~k:/+[<٨o!./MXSegFv'<۾G [@EV,ʜz(x 7ppW"@Gt Aȸ^N21F&![s4hS ?rRJ؛w𸡵ש :d 3E6n79b뎒No2!{[@MR OSu$0>>I JpA^ qT?H·c%9>{a>baE&~-[o͑k>;pc!h|?i.ѥﱍE0q.r '^pIB/0q (4fknzBb9$i%NoP!Mt7$o Pa7 ^^IY%eH?"&典p:M&)IQDܮDHפb@"&Z8y"~8erz\R 1ו6..$=W% ?\`r3nTPb<1$ :,>@NNjʑ h(T* 9 fhUa,t@ 0ZA$pgc%5iOkGI"QGG{@̂#Bn^U Hf \En%eRSAb׫ҐOtjeՀ%Zy6;a <?V66و9x{?^rhIX Ҙ^7fFjȀ0Ɉ lq *jhy8AJ\ ʠa4TUBv$b LWU`܇guPJߞ9[nEr"ю<Ô8 0* =41sDma2t ˃.җWCa|DQ>wa/n .FLH rW`'=p2㠵vYHZQ _pu5&h@"IL1kb)D? qs!뿠`'|r4jIDATŏh*$qMG݌4>*:.}iW4d0lMP(CrXX˗I?0m+v-'OPtDKJ"A,To1O`ML$_'ON]?qA\9SI->RmA|Qy9<+wMbP!Q"%$ BK}}?hѢ/kZJ#҈ÂZɘ_1?Lj(pggF„- &L.9np1 :sϠ>zz`Y@67$nhgg3,&HQe(Btв2rH, Qb5&.jk#: .2)ytM qB .{[V}ń-)4T,sss;vA =Z ?~…s~.<( .,;$f1SXƇp_\LD5a֭Fu`2!bzo%a%aAjjGЋE NKUKkk}2GW abA GT"(&h'+(c|N7^SQܐ4ݝҜ 9ޮ6msO0>런VmU4x: K .ZK 27"I)F+x5dUEFR@2Zbqv(SX2~Tg,[.TNP:G[;NepoCkXJ:-œ,w'ʹ, W"gɎ]Rxpд4C>69V>'tCEP~P Nyym322[:ڵK3JMJKK E~~~hѣ $U\\p8n~ 9e&Q0=҃o'Fd8~KŮEG'KJ]4kUx Ң[N٥ڛ-hLÓr]hm}xQ4!I l88m:KbIW-$˕'jVUU}MqCǮ `lܸWz<+WßB 5T,cLNVDDD{P6333C^ξ̙3g3gdOIWI8~(xq|Z7U$bYV앲E7 7:;AF2FƲQEƠS9* N_lsDI2N$ 0DXX؂ Bb*(I~~d6md ׇX,DoȕBT,3iҤ 6--->֯_ E 5kHpY9:BPG VK\\\~~l^v1c^|BQɄIw.8aL{P(WX˖-[z-Vk2ۧ? BAr v{{{{bP(o * BBP(@rhoo_~]wﷴ`^s mv}\bܒ}o̟?>֥ z[b{O8裏.]  /̙3w߭2bȕȐ7b?SU!/s^<9ɖYc LǠ,e4s UEhr;(#K/ϖb3` ?^QQIlJ0СC'N,..ed['x+V;H͛7/778cƌ~!oJP|7xܜzAl UVa{znݺiӦqb8s)j [nܷoߏ?:::B^n!dQYsrr>CT)S믁4H~'|*,,ܴiSVV*B8(ˑb̙Ǔ{Ξ=עIuu1c_GOLLz v\M*[yr^/|yfҠw<cE?/_ 8 .xt:^x`U rNQs;wk׮bdg?἖'rY A2|k֬y䜜|ߵkfta|hsXVѩLP=?n{ ϗ_~iXJJJav`0 z 9{=YYYo|om(<¨@M Ć ,Yb%x[O>[ckk-=پ/ĉ۷o?vX~~/ښ?uT*w=6F+ 6b ش*\%5H/KKA@P/ȵ"VEAPH  ŖqN&; l|?4gggΜ9g۝՚Z}dK$墢K'Ǐϛ7@ Ԝ1cneee\s ]۷ɫm۶ ӢW͛k&M<9r^z)x~/::ڿ ך5j4mڴDeݻo^UU1s[%՜%͐!CQΕSqQsaUyү_?333͔FpJ_e>x̙}[l zU]#5SSS߿ڵkSz izUdIII7oO0pRjJ*VgϞ+VPc… 5z-Ӹqj_ZZڰa_UmUfD{T:ꬤN]=VSWgeekNcǎnرcIԩӚ5kKSd~&L=zt- ^UlR\1GVղeK%zpՉrB>iĈ*жzNSه4ڢP||*k999111yyyZRRRW:tP\_x 5NI9P*ӧORjΛit3fL%դU5#???5 a5$u]~ٲe1x|cM٧~Zeq6m$Kմk.;vT 5}8K_E~[nq}RS={B^I|!:ux/|_R{r";TZq#[\\\^^}'&W?cu.OEm?@dXmX,K,K,K,K,K,K,?K222] uɹ#=-Z4x`wI[nEdzhcǎzl2==]3cccĉyXağ9uԡC v+#/_~IERYYo>...L5jQRR]bq>7nSHu>mu3++/T3f(((Xzڵk^.\tM}]??ʤcǎ+M4IOO;w{G4iԩS5+**tonݺic kʔ)jΚ5KPձoذ߲enN6m/R*`3 aTT)Ts]>;|V+EO?񔕕%&&N8\ٵk{A111*z~.ةS'U\|ҥrHgǷyߏ?{G٦ꪫtڑUVoQU^(x%hxV T oȑ#AӫA~{^([ C314tҬY۷GY/\)&M/+uMꫯVSMPCDSꨓ~!**\ӽPJf To'QFRYJR%G~ J,vwڵK X gJ_Mܼ6nܨhwQ_ŕS9mwMVPC駟mV%cUP'ԚlsS/b PY/U% [|:w1BUNO<ML |z*.GYYYT?%$$̚5˻Z^^Hʼnr4|H_N|Yriͦ/ءC6mڜo*.5Ԁ}"|wxޙiG{]v\|W5pSsWc.ݮiQ.]:n8Ŀ& 4hOJJJTVv5mUw\2sPEXJ钓K,%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%K,ʺ?IENDB`ɐ( d P  S Chart MSGraph.Chart.80*Microsoft Graph Chartr Chart MSGraph.Chart.80*Microsoft Graph ChartP/ 0|DTimes New Roman0 I0@\P^\!DTrebuchet MSan0 I0@\P^\! DWingdingsMSan0 I0@\P^\!0DTahomagsMSan0 I0@\P^\!@DArialgsMSan0 I0@\P^\!g(.  @n?" dd@  @@``  o+ && "!% "  '"*"    &DSJ $$* !  "2)  (    " "(' Q- |3E  P    $  S  4.     !   &7# &')+ %%*+;"0$(B$.7ESnu|^MB$ ]WIA%B$@R~0l$(T b$[d9[B/N^B$؍3>bExWfX/b$ =k;͍\- B$g.^eF6VΑB$>V{29Ub$y62%fU3bnP 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 d33@d@+ʚ;ܘ5ʚ;g4ddddnP8ppp@ <4!d!dgʚ;<4ddddgʚ; <4ddddʚ;g4YdYdnPL}p@ pp>___PPT10xp          Hh    HX  (8V___PPT980     0           Pph___PPT2001D<4XP4___PPTMac11*4@f   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography h- lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp. ( ʚ;&)ʚ;dd? %O  =G)lNTowards an Internet that  Never Fails (($,WHari Balakrishnan MIT Joint work with Nick Feamster, Scott Shenker, Mythili Vutukuru  X BZ What We Should Aim TowardCarrier airlines (2002 FAA Fact Book) 41 accidents, 6.7 million flights (five  nines availability) 911 phone service (1993 NRIC report) 29 minutes downtime per year per line (four  nines availability) Standard phone service (various sources) 53 minutes downtime per year per line (four  nines availability The Internet? One to two  nines &Z>Z&ZCZ)ZBZZZ&$  %')  ($$((,,0044,?XLExample Catastrophic Failures T:NANOG List Failure  Analysis GFaults and FailuresFault = Underlying defect in a component that causes it to violate a specification Latent or Active (i.e., cause errors) Unmasked faults (errors) cause failures Failure of subsystem (spec violation) causes fault in system Internet faults occur for complex reasons Hardware, software, protocol, design, implementation, operational faults: could be triggered by malice Internet failure: A cannot communicate with B6SZ'Z)Z=Z+ZgZ/ZN    =  *$$((,,00 44%88<<PY{ )JThree DirectionsConfiguration as programming Defines BGP behavior Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems (and stubs)Z;ZAZ*ZZ3Z:  @)IT3  ITPh 'Hp"Configuration Defines BGP Behavior##Which neighboring networks can send traffic Where traffic enters and leaves the network How routers within the network learn routes to external destinations.Pf3WToday: Reactive Operation?Problems cause downtime Problems often not immediately apparent@Z@KCoping with ComplexityPView configuration as (distributed) programming Large-scale: over 1M lines of code in some networks Programming tools to reduce fault frequency Static analysis can detect many faults [rcc] Sandboxing to overcome current  stimulus-response reasoning [FR03] Centralize configuration platform More  intentional config specs Push configs to routers Push routes to routers [RCP, F+04] Use static analysis and sandboxing tools0Z4Z-ZqZZ"ZZ04,  -C"  8$$#(((,,00M?h W~9Proactive Operation with rcc http://nms.csail.mit.edu/rcc&: ZpRepresent complex, distributed configuration Define a correctness specification Map specification to constraints[Factoring Routing Configuration Correctness Specification sResults: Faults across 17 ASesg #Web-based & Command Line InterfacesyThree DirectionsConfiguration as programming Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems&A)'&@  )IT&IT  IT6p (<i Prefixes are too coarse-grained Validity: If a failure occurs that makes a network unreachable via a given path, then the route corresponding to that path must be withdrawn. > RH& but they are also too fine-grained!%%~~70% of discontiguous prefix pairs from the same AS are announced from the same location Allocation explains about 60% of these cases: Registries often allocate discontiguous address blocks to a single AS on the same day Routes for these prefixes will  flap together. 135.36.0.0/16 (Agere) and 135.12.0.0/14 (Lucent)vZVZ1Z1ZF  11bBH-?n+Proposal: Atomic Interdomain Protocol (AIP) Exterminate prefixes Name  atomic domains (AD) directly Addressing, forwarding and routing on ADs Like current AS numbers, but finer-grained Example: MIT, Microsoft Redmond, one PoP of a large ISP, & Flat AD IDs can carry cryptographic meaning Self-certifying (hash of public key) End-system addresses have the form [AD : LocalID]:ZZ,Z&Z2Z$*  +;,%  $$2((lLKovExposing Paths to End SystemsUltimately, failure recovery is an end-to-end function Current architecture doesn t expose multiple paths to end systems and stubs Result: Various hacks to  discover distinct paths across overlays and underlays& :7L S,@ {SummaryjIt s worth shooting for a two or three order-of-magnitude improvement in Internet availability It s possible to get four or five nines of Internet availability, if we: Develop tools to cope with configuration complexity Develop a failure-atomic routing system Expose multiple IP-layer paths to higher layers lZZ_I4  (0>/0 .MNPQU_blmoqtx|PȠ  ` ` ̙33` 333MMM` ff3333f` f` f`  "23>?" dd@ ?" dd@ q< " d@ ` n?" dd@   @@``PR    @ ` ` p>> ph(    6  "` | T Click to edit Master title style! !$  0  " | RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0@  "`` | Z*  0  "`  | \*  0  "`  | \*H  0޽h ? ̙33___PPT10e+D=' = @B + Default Design P*(    0@  P   | X*   0$     | Z* d  c $ ?  |  0)   @ | RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  600  `P  | X*   62  `  | Z* H  0޽h ? ̙3380___PPT10.}1  `x(  x x 0  P   | Z*  x 0     | \*  x 6`  `P  | Z*  x 6P  `  | \* H x 0޽h ? ̙3380___PPT10.}`80߱0 0<(  ~  s *~ `  | ~  s *   | H  0޽h ? ̙33___PPT10e+D=' = @B +: 0 #D(  l " C  h8  |  # C  0P <$<   H  0޽h ? O(3e1&___PPT10.u+6/D' ܐ= @B DI' = @BA?%,( < +O%,( < +D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#&%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#&d%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#e%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#7%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#8F%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#FY%(+8+0+# +@ 0 +B#style.visibility<* %(DT' =%(D' =%(Ds' =4@BBBB%(D' =+4 ,0B 0.75*3>'Bstyle.fontSize= `B<* D)' =%(D' =A@BBBB0B%())))?D' =1:Bvisible*o3>+B#style.visibility<* %(D!' =%(D' =%(D' =A@BBBB0B%(D' =+4 ,0B 0.75*3>'Bstyle.fontSize= `B<* D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D!' =%(D' =%(D' =A@BBBB0B%(D' =+4 ,0B 0.75*3>'Bstyle.fontSize= `B<* D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(++0+  ++0+  ++0+  ++0+  ++0+  +  0 4 @(  4 ~ 4 s *P `  |  4 0 HA ?`/Pz   4 00 8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  <Note: Only includes problems openly discussed on this list..=0 28 4 0@X 0 Z0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  lMore than 70% of threads discussing failures related to router configuration or route announcement problems "m0(2m\H 4 0޽h ? 33___PPT10u.0ZS+D=' W = @B +} 0  (    l  C  `0  | l  C   @  | H  0޽h ? ̙33___PPT10u.q+D=' = @B +! 0  D(   l  C ` `  |   C   <$<   H  0޽h ? ̙33 ___PPT10.q$+FDE' ܐ= @B D' = @BA?%,( < +O%,( < +Ds' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* 2%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* 2X%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* Y%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(+p+0+  ++0+  +{ 0߱0 WPOP** O(   z 0    y @p,$@,B    bP E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?N Pp~  s *  `  |   c $  <$D <     0p @T0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  >Flexibility for realizing goals in complex business landscape&?0(2?  H   ))?"6@ NNN?N =$,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  M Flexibility& 0(2  B   `DԔ))?"0@NNN?Nr ,$@,  H  ))?"6@ NNN?NJ =$,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  L Complexity& 0(2  z 0     P,$@,B    b  E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?N Ppz @   `,$@,B    b E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"@0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?NPP z        ,$@,B    b`  E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"  0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?N0P  2   N))?"6@ NNN?N P0 2   N))?"6@ NNN?N@ 0 B   TD))?"0@NNN?N  B   TD))?"0@NNN?N  B  B TD))?"0@NNN?N  B   TD))?"0@NNN?NP @ 2   N))?"6@ NNN?NP 0 B   TD))?"0@NNN?N p B  TD))?"0@NNN?N   B  TD))?"0@NNN?N` ,$@,B  TD))?"0@NNN?N`P` ,$@,  H>  ))?"6@ NNN?N$,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  ITraffic&0(23   \0e0e    BCDE4F @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| x@0pX @    s " 0e@@@  `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab ,$@ ,z 0  !  ` 0W,$@,B "   b J E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2 #  N))?"6@ NNN?N PpB $ @  `DԔ))?"0@NNN?N ` P ,$@  ,B % @ TD))?"0@NNN?N@ PP ,$@ ,B & TD))?"0@NNN?N@  ,$D , ' HW  ))?"6@ NNN?N P  $,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  GRoute&0(2 ( HY  ))?"6@ NNN?N  s $ ,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  JNo Route& 0(2 B ) TD))?"0@NNN?N 6 *  0e0e    BC DE(F   Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||  h@8`0` @   s " 0e@    `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab~V^ ,$D ,H  0޽h ? 33++___PPT10*.P-+{D)' ܐ= @B DK)' = @BA?%,( < +O%,( < +D' =%(%(D<' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*! %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*% %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*& %(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* ,%(D%' =%(D' =%(DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*$ %(D' =-6B#strips(downLeft)*<3<*$ D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*( %(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*' %(D' =%(D0' =%(D?' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-{6Bstrips(upLeft)*<3<* D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* -Y%(D' =%(D' =%(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<** %(D' =-s6Bwipe(down)*<3<** D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* Z%(Df' =%(D' =%(D' =A@BBBB0B%(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<* %(++0+  ++0+  ++0+  ++0+'  ++0+(  + 0 < b( )  ( < ~ < s *0: `  | x < c $;  `C | d < C <A$MCj00787110000[1] B <  bD E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"h0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 j F p   <  pPP B <   bpM E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"p  0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 Z2 <  s *P@p` Z2  <  s *@ ` 0 `B  <  0Do@0@ 1`B  <  0Do@p@ q`B  < 0Do` Pp`B  <  0Do@Z2 <  s *``B <  0Do` 0`B <  0Do  Z2 <  s *Z2 <  s *@ ` RB < s *D0 RB < s *D`B <  bc E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"8 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0  < <k GH H@0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  LWhat happens if I tweak this policy& ?  '0'R < s * H < 0޽h ?<  33___PPT10u.N+D=' k= @B +} 0   (   l  C  `  | l  C    | H  0޽h ? ̙33___PPT10u.q_+D=' = @B + 0  WW0": V(   ~  s *X p  |   H^  ))?"6@ NNN?N1QQ $ ,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  FFaults$0(2  <]  X x<$@<   ]F 0     p00"   N))?"6@ NNN?N`     0l  0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  K Configure& 0 G   0q p 8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  ] Detect Faults40 G   0z   0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  HDeploy&0GB !  ZD))?"0@NNN?N0 p B "  ZD))?"0@NNN?N   #  H   ))?"6@ NNN?N0 0 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  Ercc&0(2 7" % Tp ))?"6@ NNN?N ) 0___PPT106___PPT9H___PPT2001$@FB___PPTMac11   hnamd` Arial&Monotype Typography  Urcc$0  & 0  A  $D ,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  jNormalized Representation40G ' 0p    $D ,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  iCorrectness Specification40G ( 0Х n   $@,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  Q 40GB ) s *D@ m F,$D  ,  * T0  ))?"6@ NNN?N$,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  K Constraints$ 0 6 h + # ` @ ,$@,B ,   b0 E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"h0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  D0 Z2 -  s *0pZ2 .  s * Z2 /  s * @Z2 0  s *pZ2 1  s *@ 2 <  )]a  $,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  z.Distributed router configurations (Single AS)0/0.CB 3 ZD))?"0@NNN?N   ,$D ,B 4 ZD))?"0@NNN?N )) ,$D ,B 5 ZD))?"0@NNN?N` ` B 6 ZD))?"0@NNN?N )  7  <0e0e    B` CDEF @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||8\px|` 0@  s " 0e@@@  `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab ) x ,$D  , 8  <0e0e    BCDEF @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||lXPL`@  s " 0e@@@  `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab  ,$@  , 9  0e0e    B CpDEF   Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||0` H p@  s " 0e@    `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab  ,$@ , :  L0e0e    BCDE(F @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| 00XX(T @   s " 0e@@@  `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab@5P ,$D ,H  0޽h ? 33A+9+___PPT10+.P$ +^̌D)' ܐ= @B DL)' = @BA?%,( < +O%,( < +Dl' =%(%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* -%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* -P%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* Pq%(DL' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*2 %(D ' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*+ %(D1' =4@BB BB%(D' =-o6Bdissolve*<3<*% D' =1:Bhidden*o3>+B#style.visibility<*% %(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*9 %(D' =-s6Bwipe(left)*<3<*9 D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*8 %(D' =-s6Bwipe(left)*<3<*8 D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*7 %(D' =-s6Bwipe(left)*<3<*7 D)' =%(D' =A@BBBB0B%())))?D' =1:Bvisible*o3>+B#style.visibility<*& %(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*' %(Dr' =%(D' =%(DE' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*) %(D' =-6B%strips(downRight)*<3<*) D' =%(D' =A@BBBB0B%())))?D' =1:Bvisible*o3>+B#style.visibility<*( %(D' =A@BBBB0B%())))?D' =1:Bvisible*o3>+B#style.visibility<** %(D' =%(D3' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*3 %(D' =-o6Bwipe(up)*<3<*3 D' =%(D7' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*4 %(D' =-s6Bwipe(down)*<3<*4 D' =%(DE' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*: %(D' =-6B%strips(downRight)*<3<*: D' =%(DD' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-s6Bwipe(left)*<3<* +P+0+ S ++0+& S ++0+' S ++0+( S ++0+* S ++0+2 S +7 0߱0 hh@66X g(  X ~ X s *p `  | B X  b E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"p0` 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 F ] +%  X  +e Z2 X  s *O % Z2 X  s * +  `B X  0Do `B X  0Dos s `B  X 0Do L s `B  X  0Doz zO Z2  X  s *L + `B  X  0Do L  `B  X  0Doc 2 c  Z2 X  s * ] 2 Z2 X  s * ] 2 B X  b0 E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"`P 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 LB X c $D  LB X c $D 1 B X vEF$QVUVW ##0*`T`T-`TK>;`TJ)`T`T-r9`Tr9r9r9BDr9`T} 4 4 } } }44}}}:4:4}}:@ `@@@@@ 0*`T`T-`TK>;`TJ)`T`T- XSxitower ; LB X c $D LB X c $D a B X  b@ E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"A P@P 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 B X  b E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"p! 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 ^B X 6D??Q   X BP "`  $@,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  `Ranking: route selection,0B X @ <Do 0 ,$D,iz 0 V X   0V0,$D , X  B0 "`0V8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  s+Dissemination: internal route advertisement,,0lB X <Dop lB X <Do P  X  0e0e    BPCXDE(F Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| P8TPX 0P  @   "0e@`       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab@8 ,$@ ,  X  0e0e    BPC@DEF Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||P $@D@  "0e@`       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab ` ,$D , !X  0e0e    BCDE(F Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| px@pXP H @   "0e@`       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab ` 0 ,$@ ,B "X @  `DԔ))??"0@NNN?N ,$@  ,B #X TDԔ))?"0@NNN?N`  ,$D  ,B $X TDԔ))?"0@NNN?N@  ,$@  ,B %X @ TDԔ))?"0@NNN?NP  P ,$@  ,B &X TDԔ))?"0@NNN?N` ,$@ , 'X  ~0e0e    B@CDEF @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||@d `@  s " 0e@@@          @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab  ,$@ ,Tz  @  (X   ,$@, )X  H@.  8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  fFiltering: route advertisement,0 lB *X  <Do@  lB +X  <Do@ B ,X  b; E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"  0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 ^B -X @ 6D?? Pp B .X @ TDԔ))?"0@NNN?N 0 ,$D , /X TE  ))?"6@ NNN?N 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  HCustomer$ 0  0X T`J  ))?"6@ NNN?N P 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  J Competitor$ 0  1X TPR  ))?"6@ NNN?N@l 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  GPrimary$0 2X TX  ))?"6@ NNN?N  0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  FBackup$0z p 0  3X   p0 ,$Dd ,B 4X  ZD)))?"0@NNN?Np 0 B 5X B ZD)))?"0@NNN?N   6X He  ))?"6@ NNN?N0*0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  GHundreds of thousands of lines of configuration in hundreds of routers.&H0(2HH X 0޽h ? 33%%___PPT10%.zP++\D%' ܐ= @B D$'     " "(= @BA?%,( < +O%,( < +D' =%(D' =%(DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<*X %(D' =-6B#strips(downLeft)*<3<*X DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* X %(D' =-6B#strips(downLeft)*<3<* X Du' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*X %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*X %(Dn' =%(D2' =%(Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*'X %(D' =-6B#strips(downLeft)*<3<*'X Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*!X %(D' =-6B#strips(downLeft)*<3<*!X Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*&X %(D' =-6B#strips(downLeft)*<3<*&X Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*"X %(D' =-6B#strips(downLeft)*<3<*"X Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*%X %(D' =-6B#strips(downLeft)*<3<*%X Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*#X %(D' =-6B#strips(downLeft)*<3<*#X D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*X %(D ' =%(D' =%(Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*$X %(D' =-6B#strips(downLeft)*<3<*$X D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*(X %(Ds' =4@BBB B%()))D' =1:Bvisible*o3>+B#style.visibility<*.X %(D' =-6B#strips(downLeft)*<3<*.X D' =%(DC' =4@BBB B%(dD' =1:Bvisible*o3>+B#style.visibility<*3X %(D' =-6B#strips(downLeft)*<3<*3X +8+0+X  +0z 0 WVP// V(   ~  s *@ `  |   H`  ))?"6@ NNN?N0| iL$@,@___PPT10 V___PPT980j___PPTMac11D<   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  OPath Visibility Every destination with a usable path has a route advertisement@P0 ?  H  ))?"6@ NNN?N/ |\ h L$ ,@___PPT10 V___PPT980j___PPTMac11D<   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  FRoute Validity Every route advertisement corresponds to a usable path<G0  7z  @    @ ,$D,t N  p     B    b E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud" p0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?Np02   N))?"6@ NNN?N p2   N))?"6@ NNN?N`2   N))?"6@ NNN?N B  TD))?"0@NNN?N pB  TD))?"0@NNN?N@B  TD))?"0@NNN?N0dN P_   PMB    b1 E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"P_0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?Np2   N))?"6@ NNN?N00B  TD))?"0@NNN?NptB  TD))?"0@NNN?Nl   C <A$MCBS00369_0000[1]@ B  @  `DԔ))?"0@NNN?N0P,$D ,B  @  `DԔ))?"0@NNN?N.,$D ,B   `DԔ))?"0@NNN?N6,$D ,B  @  `DԔ))?"0@NNN?Npp,$D  ,z   J      ,$D ,t N  p    @J B    bH E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud" p0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2   N))?"6@ NNN?Np02   N))?"6@ NNN?N p2   N))?"6@ NNN?N`2   N))?"6@ NNN?N B ! TD))?"0@NNN?N pB " TD))?"0@NNN?N@B # TD))?"0@NNN?N0dN P_ $   PB %   b ^ E`FNQ&UVW))? XX6381-D81^ DS &{'LO^ D+ YL^0L8]T+ YL7Gn2H+IJ7GI:9]T:I:Q= qR&QJ 7JJ >:*;9>:+$.+] x!+] 6381$ 3-D^ D %D^0L8]TH+ YL^0L8]T7G@8Cn2H+IJI:B,= qR&N7#Q7JK J 7J>:8*;9+ +$ x!+ ] x!+$(,`C0*0*ITNT0*0* BCCloud"P_0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  B0 2 &  N))?"6@ NNN?Np2 '  N))?"6@ NNN?N00B ( TD))?"0@NNN?Nptl )  C <A$MCBS00369_0000[1] PB * TD))?"0@NNN?N  +  L0e0e    BC@DE(F @  Ԕ ))     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| @h`p @   s " 0e@@@  `       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab$ JJd ,$D ,N , Ho  ))?"6@ NNN?N|, $ ,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  p&Example violation: Signaling partition.'0 23G - Hz  ))?"6@ NNN?Nh |,  $,8___PPT10F___PPT9( V___PPTMac110(   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  iExample violation: Routing loop. 0 23 . T` ))?"6@ NNN?N0 `x$@,DH___PPT10( f___PPT9H@~___PPTMac11XP   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  2If there exists a path, then there exists a routeJ303  3 / T ))?"6@ NNN?Nv D V x$@ ,DH___PPT10( f___PPT9H@~___PPTMac11XP   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography  2If there exists a route, then there exists a pathJ303  3H  0޽h ? 33""___PPT10".2+K}D^!' ܐ= @B D!' = @BA?%,( < +O%,( < +DL' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* P%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(DT ' =%(D' =%(Dp' =A@BB BB0B%()))D' =1:Bvisible*o3>+B#style.visibility<*. %(D' =-o6Bdissolve*<3<*. DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B#strips(downLeft)*<3<* D' =%(DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B#strips(downLeft)*<3<* D' =%(DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B#strips(downLeft)*<3<* D' =%(DC' =4@BBB B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-6B#strips(downLeft)*<3<* DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*, %(D' =%(Du' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D9' =%(D' =%(D@' =A@BB BB0B%(D' =1:Bvisible*o3>+B#style.visibility<*/ %(D' =-o6Bdissolve*<3<*/ DA' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*+ %(D' =-}6B!strips(upRight)*<3<*+ DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*- %(++0+  ++0+,  ++0+-  ++0+.  ++0+/  + 0 ` (     N))?"6@`NNN?Np,$D,,~  s *3 `  |   0  fA ? "`_  B   `DjJ))?"0@NNN?N` F   H <  ))?"6@ NNN?N`` 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  NRoute Validity$0(2  HpB  ))?"6@ NNN?N 0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  OPath Visibility$0(2  HpL  ))?"6@ NNN?N000___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  D0 2 !  HQ  ))?"6@ NNN?N0P$D,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  o/Every AS had faults, regardless of network size$00(20,  HX  ))?"6@ NNN?N @$,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  z:Most faults can be attributed to distributed configuration$;0(2;H  0޽h ? 33___PPT10.H0)+"@DN' ܐ= @B D ' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* 0%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D' =%(Dc' =4@BB BB%(,)))D' =1:Bvisible*o3>+B#style.visibility<* %(D' =-o6Bdissolve*<3<* +8+0+ ) + 0߱0 p ( {5  ~  s * `0  | V  C .Aerror_sum1`PNj   `@  8c8c?"`0e@      rhttp://nms.csail.mit.edu/rcc (H  0޽h ? 33___PPT10u.E1+D='  = @B + 0   $(   r  S  ݱ `  | r  S @ޱ   | H  0޽h ? ̙33___PPT10u.q$+D=' = @B + 0  R(   z  C RA :outage_conditional_ann_finalH`l  C  `  | l  C P `h | j  S 4Abgpedgecdf"( xd   `  8c8c?"`0e@      P  l470% of intra-AS failures not visible in BGP [FABK03]5(5B   `D38c8c?"B0e@    H  0޽h ? ̙33___PPT10u.q^+D='  `= @B +  0 @8 (   ~  s *u `  | ~  s *0w 8  |   T0 d))?"6@`NNN?N p`$D,0___PPT106___PPT9B___PPTMac11   hnamd` Arial&Monotype Typography  Route objects should correspond to an  atom of hosts that share fate $H0H H  0޽h ? 33___PPT10.:f@+ksDO' ܐ= @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(+8+0+  +} 0  (    l  C s `  | l  C u  | H  0޽h ? ̙33___PPT10u.q+D=' = @B + 0߱0  (   l  C ! `  | l  C !  | H  0޽h ? ̙33___PPT10u.ͳqi+D=' = @B +} 0  ( В1p  l  C -" `  | l  C /"  | H  0޽h ? ̙33___PPT10u.ѳqd+D=' = @B +( @8(  X  C    |  S   @  | : H  0޽h ? ̙3380___PPT10.p   (   X  C    |  S   @  |  H  0޽h ? ̙3380___PPT10.pzz  (   d  c $   |  3 r QQ"` 0  |  H  0޽h ? 3380___PPT10.R tl (   R  3    |r  #  @  |  H  0޽h ? ̙3380___PPT10.q9n/ tl( (  ( R ( 3    |r ( #   @  |  H ( 0޽h ? ̙3380___PPT10.q9n/ tl, ( ?<< , R , 3  ' Q- |3  |r , #  @  |  H , 0޽h ? ̙3380___PPT10.q9n/ 2*8 ( {5 8 d 8 c $   | 8 3 r QQ"` 0  | VInformal analysis (collected from a mailing list archive): by no means a complete list Be careful: incidents not decreasing. With larger scale, these incidents could be further reaching. Statistical analysis just shows that there are a lot of these incidents. Don t want to make the statement that 1 fire is not important. Do we need to make the point about  fires ? 83 power outages, 1 fire  Two rats crawled through an underground cable conduit into a cabinet of power switching gear adjacent to the Stanford University cogeneration plant, and caused an explosion that cut off power to the Stanford area. (October 12, 1996) Nv -l;  H 8 0޽h ? 3380___PPT10.5Q @ (  @ d @ c $   | @ 3 rP'QQ"` 0  | <Workflow!! Away from sr towards operation with tool can be used prior to deployment PICTURE Problems may be masked Not just mistakes What are the kinds of things that people are likely to want to change: For example: link provision, flash crowd (simple example)H @ 0޽h ? 3380___PPT10.o) vn0\ (  \ d \ c $   |b \ 3 rQQ"` 0  | External filtering vs. internal dissemination (external vs. internal) What makes distributed configuration hard? Filtering: Who gets what Dissemination: how they get it (the path by which they get it) Ranking: what they get Not much else in terms of complicated side effects  Verifying distributed program s correctnessH \ 0޽h ? 3380___PPT10.M0si  tl` ( ?[N {  R  3    |r  # P%  @  |  H  0޽h ? ̙3380___PPT10.q@P  tlp ( ?`  R  3    |r  # ]%  @  |  H  0޽h ? ̙3380___PPT10.q@P tl (   R  3    |r  # @w%  @  |  H  0޽h ? ̙3380___PPT10.q3  C(   d  c $   |  3 r6 QQ"` 0  | Primary route selection Talk about customers and competitors; economic/business landscape Goal: ensure that customers have reachability to rest of internet, etc.{ H  0޽h ? 3380___PPT10.t. P >( g  d  c $   |  3 r%% QQ"` 0b  |JB___PPT9$ Most of these stem from the fact that these are distributed Every AS had errors, independent of size of the network What about correlation with network size? Faults in every AS 2. How many faults? How many were latent? 3. How many downloads? There is a need for this tool!<" a" uH  0޽h ? 3380___PPT10.Mxi tl ( \' \'  R  3    |r  # 0%  @  |  H  0޽h ? ̙3380___PPT10.ϳqT  p (   X  C    |  S e  @  |  H  0޽h ? ̙3380___PPT10.q9n/ tl ( l7p7  R  3    |r  # P%  @  |  H  0޽h ? ̙3380___PPT10.ٳq ] 7/  (   d  c $   |#  3 rP QQ"` 0  | [Play up the fact that normalized representation is *not easy*! Interesting engineering sidenote: difficult to parse Scientific side note: had to come up with a normalized references so that testing constraints is easy Compiler guys try to do this for multiple languages (cf),WH  0޽h ? 3380___PPT10./ :2@ (   d  c $   |&  3 r$ QQ"` 0  | ^Can have arbitrary policies, expressed as decl. queries Need to make a simpler explanation of the property Give some more informal language here: explicitly call out the problems that result when these things are violated.  if you don t have path visibility, then&  ,* H  0޽h ? 3380___PPT10.0pe tl (   R  3    |r  # pj%  @  |  H  0޽h ? ̙3380___PPT10.OqY`x: XSW7/ %`AJ1,aֺA`*n .F(hť*jҺV[ť3vԩ朷@Z;8{ν{.[-=.IDp$%h?*!q'g.:.@:[ nOxt  x/?@o@@@ !J@( @ xmBhbbqoH$~D9@(|K|kfWu~c''L(M3ɏ!zR@@L27 1bW>{< dgG &cqo?m'xoe?qH2by!(Wa(f-nXt< I %3Mn{#=vrHIn qzHz"DxX}|}z꥜0x/ =  }L.{m%PxW V2 [Zvܸ`WX'Ga 46Ժm#C`1V댨ND5p`X_x D~EY-fj%lGs(Q;*C9<8_zPVz U*UX#RâġPVz PVzs(+=b=VzTDkXaJ O]4()]=z^<.sUG"./HQ8խB] J_TQzЙ͠M_>.L? X/2UJlyJZB.y~ '0j.mj9AJ$.Zԡ$/sH)FdYBLV *^LY$rdvI6JÛ2҂uQU =W4F#W`qpNά܂f׺;<; 2 i)TcKPg7zC?VPlW(יnb˾B=$[]R% v|V{Y;|K>So")ԁsȋH͞VKi͕XB>fZ]uIz$ z3U"/;̈́{۳O6É2b5o7-N\7e9*ZA/ڛ\ >Nَ95X!1+\0[ ]}ʊjv QΕ1|J"q+3cTE:hM]"M7!jS8#X } $Tt~!*C,R)r^1ӚBvΏQ4`DBz'%^b Zö/s_ ᭔kx4eֲ0OKY{Ml,Blyh&ȫb{qyMz {Ɉb1WˠTWyC6ڧRG!4$ӭU0_b06kZF?a@OgF f6~+1uޫU9}qah~?A R6aL*~}~.h?W1^n"khXIlM0 ۠A&һb)P |J<$4|!O} mϰ,.E,t'q(oq |r;twȯ$oWnd1JPAσG(2a/qj ~^AS` rd-?8zg_հC,tTpCaoU \]/ظWBf[fa/y Ѓ ǎ6Re>v(da30 )r2!-gʹ5׮ʙ ?\ʔP/t Gz=uH5Xz\;%ǯ >ի0>q>ȗˀr0^{=oa?T4W2N̊eN K*^BK%ȏk-mO|>,Զ`gB볞&Y:_wW]r)pn˯LjgOxS&g$^V}i$Tԁk;[]ffFa,}Nl,u̺Q /ŹQF:GQg7 ;^>o_䠅--穭·"$\U6gr/^t*ѽGey|)^*Q[V]?HgΧ'V} 'u/y_f]0m,q֤4є݃ݨ/MMvz{ҫOyeK+oLIHzڴ:豦y-"r wDNb%ْ}gcr`X1wY΍YW7蔰ffen48*ised. OVT_;tb|SUf¹k yLe˚.#|| S7o2ʏ^o;ҵ`?9q`äo$ݩ84u{N|[n,J77EZ&֏k癶85mM)?%+O~0^ֻg)<{rSZ7wbӥߤ^gحȯwK܎lsiSG[o/'-{]շp/nl'MǦGL/~UWm+ Ky<ޣ3TsyGOo)[|&iL0Z9^,:yRe?QPD֪kfe*(bXfg p`gͺu}wȵ#)W>Y}zE =/wYr;sUX_ 3?Ĝ/|}ymMoz}nS_E=z˭W>Fޝ+̙5jS~hܝ}[{ntmbSa&vu[ڿߕ<|Dy[wws'o)s{Z qAN&/>rxR fL}z]/?[=9f̾+0z(R*y\UdIVh3&2oXޏ2):Đ3}a1ЍPˈ֗9R?l\/\>c'$A+llH֕Ce`7edX-ƨ@& V:*X)KS)&ÁgHBX]i^.%>tzdYe_&JQߥ{-Mߖll^oƹB?ਓ_|ؠJq'/q>WE}ՙ9-|f`Kit;tOkp䞿 Q 9=Jkd7}啯_t:3ydŁMdn5\e{^6]{k;V.7q[[S*8C~w&oE%?;lewT?ߐ:[7?⛩ N:2V&'+o[mvy̝̜0uaff9hdOל* *ezaV,Zjxgkֆ0W(S!T",fivږr.[櫘{R=y9`Y# 全 AnG*m b`JpϏe.n(Z UAas[CsmӪkKUAi[xLW>L /鏂.4im>~[Z#.Qf`S۠p9AmB'Ό'qr/Y3؄vv޳$n~MlCsuA֨&(Ϥ=7B2s WatB .!7҂Xr1jVW|k{'t/b+ri+UK֙:kpUi*jo9}l<5_g׿ӄBJNIaa!}ǿNJDI/Fg\f"fSW_y;(G2RGd(S@b3@LːȞrcʾ]^J7:f@͗4g54ΪΔTyQmLytzuRXV\8wz&@۱3[EВf8A]ss<'n3Ļ?% Q}mԻzһޓexGEH_^'4&raLڣJ5 s\#mza'Xt{ٌr:i6so.Z:Czg/|}7tw s?''$XOA8t? >U+ÛT[{ gL|'o|x2$0,R|PU0+3* 3Aُ 7~E;2VOeG˛a5qg-=U뫑~˿(1>CGptubM!0ϭG9E# l' Ǐ3֕3W~r- Ɏڡ{` q|J~G^—6 h3 N`+zqeޜSbv\n 7xSӻλ5ln+`(4 BZWpɈpF &~>c*TI,ƛIazJH5GhOa;0[L,_P5H Wl{4OO(%ȴX^#HYw\Ck[+[%X6R, ^(/QدBw8wa[>A̟>c ^9G2%cr8փKcrwxoCwr[BkF6_/ lDQuGM{ͷ~0Vy#j-Y|rr?,'Taj_ 1mG!(q7'6Bx&h 4mM\ E݆C6dF-nљd1 %=86؊>@?y*h܊٪؊آơ;lqx &[઄"],BY+".6/`WI`QG4aF O|#ˉy~B3 'Έ`<8'6]tT?cOHt# pI9V-%}'X/e]FKf(A\-^[Q)hD%Hz3[Կyo\ 4B޼UN5 D5O,!#[iwL8ʵ(7 71ί_ asɼ>?\.X_m3yH2'}߮ .A,qV~(;x5&1ޣ! qw%5s$NMd#DF YCeye nтb{4 ߏ1ciIܫ8ZN\Zb%bWvi%z uESY(״dh@ИRjR`!0~Ä%aǕH)V?LXrO2-Jń:Ѡ vbpfCFL;B-E(Xu2·?62Ϋ[,`mP0o\; M>0#ȉ읽̅ϹvlxLUR^q8YOV^G.ӊ}fc40ͤśOC}@\?͂[]3Tvz~$r+: q.~ZP޷ ]YNڏʘjBt4s[df+2@\Yv5nm/\%p\`'8tlZqvÚwQ+5<9t.%SץG[0zmP|0ܑršm[L?`.3`i" isz-V&AX:wLTꠣF¤TiQfI B~L\2t V\DOM|>؄,=D/P%TWg.τ&zեOUMZF|v*eL(h.p@&h/=. BY&#jZ8}2 s}Ü|$HmXSb*Uɡ@y6@>9HxAiܾkD(#s=, Ϋ̻cpW{͎]V>GNm7=ڑ'+bVw&SxJItVL\-)f{|YLs#BCIk$Bo3txN|dS}¦oDه:brCFaaaa8ޞʊFu/~,7.yxkEr OSXᢁ{lv&zd9~ <;㝫V.Z K{yhvX8>c788mc2yf̖L,0j)GasI2d`_{|Qp\s6<|Vw9ml}p'j`P{ke ;EqoupG#T}c@,Y`NjŘn { '92&h,XS'(:_o3<(zQtZt4<=M)get*_HXc\ lhKsm Lrw}vj/&Xy8̲\={|) _i v<fƆ35۶Fl\e'yjmr :f5oksut԰tѴW0װYWφ&[aQ?R濣,l{r*< N#(E{WR/`=tRIœ3^Pw- /;{BX-^lQ{*u i>^2~f&{9v$'%f^s0+٪T̯7'k~<7Пa}q2<2wbK|817r,ff!23>0nf/Ui4Ϝ(FtFzOc&* |7'>($%r l Q2m݀T,\n~J$f acvׅнߝ\w#:i]&+hy-AtTnbcWe֊PX=pOZMЏd yf#\ IO BCA1V,15HMNEӵ^.NYn mğ8l gzW{-t:9V}o;yc90YfêmI^S D]E8gV?YF>ګ?~[1B:N8st R9ҪjYxcν߯!_V)f&~+h,M?z\ 7"*xL| bb+MG1 / ژ᙮ehCجM\kVB&g=s-hVh8_1ߤ>:[-^Y<" >x|{-%;^wTt 5ȗ;ŤiժTeN?f|ힾ2<'yGX'L4 <܊RS[)DflP2oȥ",R.8뱀+iBsNwDx;+5孎9x@ex,a\0 VZlzb\^Dz6] GADk>fb(%I/p-;z@eFQ_{D{|`PO.; {a{Ecdܵ"aaAr:&d&3IV6[E.) }NʸƸvߋ.1d.ԽtSwXG #̰1J啲#j7"ZB5uӼYC\T5T[ܝ_^JT)E߹3i.o<̢O~78I׽9JfXng528t\ ;U׷.婐^` f 'ֽK,°\JNk+g<6ya3\eoNI+՟ )Cw .6ad./xW҂oe2)b QЊ_dMa҅?utBgs/-8%NPa03ڐny/?-ٖ]XNu]Zv ]نnooTv,v}tzL!CMG*S_Bil.k&@PW)q;pܐڴS,^%dRwC_=si6=RԚidC,?m}>dYyDueӜCM ;v6pĐWkxa2BKEIHygCTr>v>l,|侤CFb&hZS~ W*Bj;0ṌX3%@x2u=,]w.튚RMЮY5D S &5LNpR`n[ %xﴽ.Mt@tlԁŰw􀼡k^9;?g{ wm wӊj1\#}% $741Ktyv3\9X+ՇKdw|V+wb(}#9 0kt=1? Ž84Z#bəG . ^u7`)^pcc*s=r)OIYZHEH)ڑum85?>|4#9X1J}Кw X e ,5NQ_86<*#>h]'eM-xz.z6v7Pё]Mڋ`4c2ոM~ tUSaC#`.f7Ր Q֪LN2% @~rĽj&S#4R%萰txEUaӎ\܍}_ƫ#4ıNX,x 2򢭠rcl#N$b#m[+ڎg&ȷOtS Q_!t:NC'?ԯwW ƲUS"z8 {>^Pj.ŠxӸfu-BeB?̐7AyO>/ [^c\yE}^3S_9㬷gne)fUnh@Ex7YŚTzY}+DLO/͹q;MTOnτ}w xܝ8q ^a@!'yf7$5B!ȷWҊ cs/ e_dhTE6e1on7GL1k)ÄlLϾ)Ϭ^Ð&E~qLM,h{R}wjwWGʊt5B‚=%ň170}̃e }/DcGoF2bG 5̣ 9Vef3SDf-m=={"$Hmƾ S\T22Kc˄m=X W4g&gXҍ[]#9Gr>_EA|NRN0X1dXxQ7n`G+?</*?5n:$$B2`xWMmSLڇI#Phed]` G=Ccj]s.+˭<MM, KN..&X ʯUO[}_ d.&Pɗ2Р5Qm5B1W>XRHXNs 5'"HUXvX'`ESC^ tWK'k8k3n 5rWGZ0D$wfwŷ)ة/,HpjZ ]$ILd9MD̰ηL` fK%8֙XFsxi6JvC49V}Y iJEFJUZ 7_:X+بnI7Ri<0#f{)f698s&R=iȄ6KYW4do2P9z`73VYz^Arq1$J Զu!arĠri?S `Rh^&WekdETFwkh`Ըws 0ߙ ABCy ZĸZzFeTiP)8d, bT(@d0|덦 ~"E)gPP)(BeG˔>0(9ᇓn9DͱD$ xN躓ѯKH&DZ֘=Ӫ2o,TZApЦNv?c/R~j;rl hOCǏıJ>ίw_T-ϽIUw-\Pt^bM ) sKm9{ 0n~@bJGCE5ma1Ro1 ±a4`- \*oX{tE؉[C&ʢac;?.Տ8/Rǽ,3[ #`C?& :8‘ԣ1_!U,P=(G0]2Xp.5yCޣdȣdCƚ\&΢ΉewɏKag5,5|RGPDx߽} B+a߲)#7^#ZW.G3쪘Y8Er~K(\ 7mցQQXN W+?'g /!![W"M"zvN"z ru&!*O mBVFa%V憂6VQ[)Y bwU37/D1s+c`J0_GDIoSfk7̟^Ϲ&"':v;8⏸_oVJDs{'?w!ffN"FQCۿw lm'O1!*&bce?k +=u<6(geq^z0`a 0EgerC8#!&XH'Zab4k/mb~@bͷ{~Kx$ۑ"eYC$o(5c,T$Y:ji!ߥ$n2e7_m*^=Zy _*46g:7o _}˓Y+SlXkʊT[4/_ʌmH iN[(;^ƕtNXiNn<:H xIbCB}߮)L fNn\.4Gx|Oz$2B*YY"-9FBvɰ3Բ¯tG~,~6DŽ/$?A9S⤟B Bd⊇G`7K93sf%)ctg*M%@ }Egb{ꄒy <'rD3P5z9*'y-GjDr;S<^QA4f"(x,_$pM5e</X/{yF0%gṼ#ӿPS(KBתֈlJIa ;c^߫xS0 ޢr}Ƴ]⺝dFdι5$#[cѣA64P䧚K-N+sRm @*n[w ;2FVLk*L=ßx^cQ_K:Q_mBӗ}R:9U "ۍŝ) Mr'{M@%5_6̾-#r.HÐ؆j9vTUF;sYirx7[{.9uqe; ]ujCГ%έڦQ'|H:}Ke>hM_@G̃[mH'Nrvv7|dS#Nj6W`}K|)PeLJݷjzv?np${L;KZYm@Bpl-=WsS9d~0d9&\-[Ecyf(Tz#FQKC9(BI JiI_˖fNC\ipHM5; O:[ºw3=!+|踀qv5frt[J.ߩTIAtOm~\PfC٭r"7EY2MۢlQTK@ 0lvJ/>5ravg~f?U]+洂TWczԊ_{zB`+x8I#$e `DZo-Gb~r '48 6gdOFQ}32.YgG4h+H> +܂IIHqb"(,vKQx+:-bN3& A A\?YU`Wd\pm5c*|,n d~dL9Tu8 E C /H]eM2JzPTb2SuPGm Y O!rS>/9Ӄ'td1p4N2iteQÎ@Unc;a_s<1ø9wfWcXvrrkӞ=ϵ/d#^_d=9(,<:CExH_;y۽k7BGMu= N4&zYnR& jh&r3sU",>u Y*b5tGBe"?,[hfmBj#NB bpƽ₄ٚKAJxF!fzPFXkg ^] TrgoUA|a-y{v\#k{H l'~CUs@DƼ(mM2fgS<+U+m@ZLTo.ѭ_yfM>YB^1X㋾QӖ3g9stHDd_$K8$Oc>>VE.jQ)YE:"#:Tҙ qp(ohuR`|2ш 0FX$d# ?mjrweL'.wSў]^گ̃X;8,Rc*4'mDy ݾp*Pq/G3oGk%SuӾ{ 8RPI3Ё }=C#XW\Yr{0`٤rڶ쑿k1GV?0N߰fG{Ʊ%ZəʁbqL=5иf]:4{eEIވ`0@2JNs옅WǢ7Θ6MvSV{utߗ}q15}4^ޛWIil"&&KwVsগn"Ia r$Dȥ6¬Z(m뛘C?)D1ڷa(i3֟3q{x"U kĶ#r]t!V '"lL ɡtD{cÝ-pc^3f X8V0~C-~'5z PЩNgiM) ^ȏBȍ1>oD̤R-JJ%bݺe9"'+ r  P2s\Ԉő@V0]qu?uͼ]^H] W tKZITӈӤԠCMkmzJs^iEƶ ٫KGGU(aW aзʅ3 cB%^pb_ jWW UW@uY:;ѳ`  YX-Ԩ0OqK5cjT'XP ݕ+)^:Շ?y=>_ H響[RQwx8}(b,ڮ,, }ɜ[TRd +/, ~hnq)p<}yċ3s*˫֙M6z!bGθuT?aRMs(\ÇS& ڇC<2y z,*',ۖqTkDI`^ytPLd-ߔdz)>_wdin_3n ߜޝ7ӐSe?Dۆ<0?:&vecIfb`<;_P/YFad+,\ncNWC@U9X _RƱdd#1qq]uUt$+xU%]p1֖/KDv4_HpC}W\&a2*JP44Lz#%XpzةLÙ-`TA&Wg㕬O" soр|ףIKgLJ҆}7ÏRmZBFMZ-kͨ@-I7h{S )k;A"2t2Lۓ˸ L ;eӱ{f(:Hc׆bF߸0=IGE1-e+.nT p;xËMlCDe 85~ˤ=^}bQ"`(.'/5'&.籊,f2)e=݅;oGau!q$T#C2`fiBx')ebw>TB̥INUөlT{~x<׬F&ȣ`tZr!,xd(2Өx ,H&A#6`F}ٌVt1's'Fz`c i.]F:< lBirOu짝&Zkm}Ijaa7T w>q|}dcdڋ!>vhJ3w XL!}hJZT=V?Q`v>k^i3ڐΓGPE~9n۽<@%sjTtSK߈Cܣ2{{~x @]T4;IR߁c{j"MLVv KUl0 Dd+\}[+f:e)A,Nٲ3Bﭚc Hv~`E6Ǖz !3[r$ R* k?X-$Q d^RɊ)qmFVV}F`V̀sG+W+_+Yȫ.snTv}=h>FLj9"wX0,S"YZ!>mB{slٶ/j>+R=J2S2,;S%K0;mv&Rbct)S *jըr[lEh̐76MV uZ&2a}!NnZ.j{F@ 6}1]B2 u3M)}fdh(* h} iR.+%5Nh _4x[b3&GX\{P'*3jӰtcI8>^2;VD$g{?9]}}sw4.4"7/lʸGy4-1()81F$RIL:o7׺_vba3p2ş@@^wyʮ1d -<X l3;)1uVqΙw kp=}`L&/ W<<7LČlO2 %a HI(!R@pEFA- "̀_c@ (Bey9g&Kf?{y{yKr'-qk?Ysڶ,LME1e;zg.??%y/o jcnt=WՕuZ ϟqrɗ=^uwb^vb*҈-8Z ^Ԝ^者o[ج?ptJ}vە:ħow{t<[+=oRsw?<^vW[))wW_z(=ywLͥ/oj]^^ҷ,yҔɖ#15ɛ̍cknr[njiMM=6:?]ZhriU?"Ó!qzڡ?>N%mueYU[|B-Ƕؐ…+*N6[ZKw}s)?߭b8?qybElKk9f kP>jkںϏ1lW7~TTu_|S|na㦉7Vl.U?c^C pa#؃cq/wOVM5jб/ 3/_wCg㾼mvHt;g+mJ(?Q{ cz,GL=kl/9,}qa_++(]𑌭5gr9^k'ueV;ᚿuxoN\|J+{SWXnۥᶹC̮WZV׫Ւ(y(H" nfzP&\ZdZ$a((42WhZq8(J|4mwlBFK!]R-kut P@K;m"nW`6ԃP86td`S$Aqϭbk_rv7KU\㲳Kl/;RӲs;u]j& 4t"ƊimJ&G5n겊Ԡ;eQvEMT8p0rEItP_%5ť 0!W$1]Iw 95Eճo(ڸkVI`XbE"Qln(ًEb$3DLUY:$ lCh S OCgf!9xXhxtky^+2dZ9٦'Ɋ'؅]Ib,'ӥ )j<։KgskbJ'n퇖tjmO}3"xrVR.)~_EΘZ!b!R[WUCQȢCRR2'2ڧСVLqU$X|T~R)mmJ㘑=,hR TP[k!ld 9+S;/TZ&f nTTQ[k!ld &:ExPDmh-4ҙI RIB40 ~U*Z&vo TS[k!ld (TAmh-x#RYDmh-4S<\%lTv"oTFR[k!l?j⡖pJeFxh!TB4Z([U*éM6@Ll RvX,E" 1FY6!CU*Z&nqy}n1X/s3AqCk8?ӂD[{Hsz]#\@.6%A@] Lc_Bx"h1>ʛȺtb .)lN1AT5joBFfZ9T˅jwBEۡZPnb6n)/1')\C0/1vtHR@f%F=1zvf,(pa X_2 q- ~%;dF8﹎9L(ʇ>D7][0ƒ vD<&=yǒ B(0>S$,;F^7i#ȉ[gc{d'xUbR$0/LiH oan Κ#5,Gˌ`12k&6sFxې1A!h?F?gp1#VɯpH ~Ϡ7g&ᵆHrj՘YH;Ї{D?W,r|!iXL20GWEciı$ëxC/d7f"}p~c|,"3o9yLYgSiHD\SG9= .y5~Ds/[Xᜏ3`$~ Qv]B;ea蹗+G8I^/B ` 3-!2a@g}(8/'M>N^ zbg9 =$[k*EN0[X @!^k<#4 yoMBtH/OANeH-N D);FJ9 -/yIran UY:#r ȉ=⍧q[^em]f+ A3$nMd (\kPF.L6.GGmgCXZ¾}P۠e}g-Tt]i 6EdFS^axZ TS>7 8FȤRfQ[΢2A!I@)j>*!hQSVJ_ZjN*W% _r>=&tl(i4YMÃ&O7YVWzC߇{cKR#  hppi ]]=O'@|~@@_@   A`P@$Y: bqx@` 000y(hX0HLc$jH"bs~~k+cݾ\﷧ipoN |s9V פeim#2:r('(6g1Q=V'!z8q?J;o:0<`''xf)ˮ%2G)ѫO)#)>GY)1Z  7{x] @p[h$HK[9?i݇?%a[ ܁F~06" Ԑ~1\ȷqI, XYB,RD>bNcѣT]5U7L$;0"ARd@2'Ѝ|b*^Ū%LūSƖ;SN{y oO],6¾[SE7Z2V2?:(jÿ(zFH}>I /s q{'o.UWK.~Fn CכxYdX]'O(j+e|΍֍[:ṷbK}iCL_{d'ժdW7Oqu4jmj7ot|q+9N߈4/ sbmLRKKF7Zn&W6MT.>|mXMm0ڴ>- nSX*1~ha審im oO%!o._gJ\7|'쳯Kƾx50}H'>?RpӊK I|̩l ؈(d|Ö ix@N(!1wj@}f2RbN_Q~XgI2īD] _ ,E8 ,8 +U^zoz> N?B rqyf:/쑬NyYJ? Xp|V!^G"Reќb+z3lz@{~,ܯ PTҖ(M~,1Ý*<>'?<YlP2XXZ1].=Xp.-+Xa9YRΒ[b_˹znQ_O-u輟iEo`4s[[a+Sݷre&:?A#~>B#"BCC;-$3IrKah64f=^`v6M:ދZ!đuon%oCxZSNǍ$C.Zw2 6d!CɟpS~2ſC:0OPCC=Ɠyhz(y2BLO)p 9ӲVo2"q\X[~LMB3=73|*yƽVlGd'X7wTn: 2hn8'eC@H-,qN&"M/ b<&R$bGBmdy(L10 ܘ݇F 0OE]` ZS7-ơUߴ@+42U,6YgHK߹ ^vaq(xNX 0-#+DaB7GٞZ P՞RDԁalڊ+H"7ro- 'O]A ,m>.Ztz?1ǏEnrjI,a^U"36-.`*'N.tnj2ց1~~!AaN~Gݹvߛs T鳝"#eG)tٲ(J~gnNPe*dQQNZFTx~+Ǖ/^bpoДsV)3=0xiXyDGV%2nfW8Q j1/kN=Wnl2uTɃ_ ޓOL}llR]#>9fWpINuI~7$?0V]Sm1ٟ^gd߲weaq_+Oq઺ϵ>8%-I(jݾ=4dz򻡟 }+ͭ"`w}c:{3miîy.LNJvns,=mtQ?tec̛.\z7?ӤO4(?kT'yVօ,8_@Nz<Ɯ$|3;^Mĝ>)O3=nWfv8<֠nR:?U? yw4xFQVM^9,tUAkcָ>i.J̖w?t.ⷷ͝Uş 1*`Z=elM^ΆBM +g|yD[%gNc)gݖuvK?6tܨ{ni:>vFш C}oG}\{QvænzKk_Y68u##DGB]vjZ3OPz"Evl mQ/I'ps1",\( Y[?jBd(\AJB9z"3'-NU4 `ᲰA8yMm45dN6 YQ 6WIVe(dX-^" `81$(i":-B]wsMƀ(9q$-2>K_\wRj$[.UVWy]_ynڴ:W!(tȾ'FyI)r4}얾b5(l/fZ fz@ކ"=3HMF>H7ؾ;'gt-(˝yk_tuz" ccaͥsz[ڽB.O::*js_]www7z{eݹ/^}xhɿkguQ#[>__W S<sqОo\L:4}(?ʼn&J끔|$~!q{'82} q3l9gVuAI]*8t-r>1eK}]*Ϋ|_^Sn}׻,/\E|gw A]wl۶mxvlضm۶m8woVWVwWeEdu=:&B[4kZ5f6f&U -2wkלk֑3P%g5,39.%^SA3_] xS8fNnw)l<k f YTN+L暑b>,Gj͈gXjPu9mMN,| üE!TL scW.j ɲ.]7Y dȾH_+?,j 1*߅2'[P 軄܈ cI;rKXߐ&o$SFUѼyʥVMV-[enTM⧩JrwOK„&!?I@??|'r9X/Vvr\? G(d|F,GS esBe<X_R9Bd~2;IhM " (=A6txظlwy?^uOTg#'JQ;"'CJY9]Fw_@&X*%"Քd7EVbNqp-AUتFEOn!.eX'kȓy$"(9B']]bH/mfftƵK/M^m\IU>;Ps\hrkmQbt)ƘZ1w/#4Pzq3;)R 1@Jˬ ˘=pXLIc~e R7j\يsF75j4'-lp:,XtC5=7+ ŗτAf5%%Z: rByw^Z=[D; ڋ)~q>ٖq]#-FĖqa!`Wb ܩ.2#8Nv<Nqk9^@|s05@q>%iHWLtMW5Ao\2kVɊU+7qIHOCϳYK+UXላک12Z/2@u9T2UmkXJ _>/лȬR(:i+{Ca7eZKdq`b +1~ 0s9JC1gX ;Z^ayâ"c9IT&GsXJPBݫ4nĝic]][/_I:=U)7_6PqnD٣{j [H%%k[9HG0vr TDFcNZ6>Rk - E-7/$:DtJWyåZs]WnR>/f65^*Xug`[Rυۍ1쫆<\@ WX"|sNa@iO>OO._[|bHյ&+jm@\]WMq@t0TWt [?8Lka-"gݛL(Gۇ(R"UU@7Q)qT\4uxF05}E,oUj)nu>DWm6\\Oe`fR~7\Zܼ;dY`NgY|;[Aud5ךTDyMDoYQ<)Nrxp'?fF!aa~`aN.! 1|dPw5;闔Q=9囓~PdԕV6zmvYsS=?wU%My_j3Dt;1cd=ls}ؠX_m˱w/ _G !7#Cpݟ , dk3s{2@ڮg;}s]Nws??r5p~l릾Kg&?DLh*4[Kۧ~Ekid-~gf ؙcdߠ/9؛: :kNf?o+adfb)7mebbǦ/O;;##3'_t{՟$e+2!߮^껪3?v#&F=q;@mwyN< ]9@ 8j18\PYsGU,T_;i ]of#;(K<̈́0>=||F?M),4~`چ-a/$_D~u??6O!A6yKݟ_arΖKpoYй2~\f 5?Hsd;>y4 jZlAd5{Dnޗ}1q%F' . ^`t'&C>`IP?bVgZ/O}`3ƿgs -?sXa{x'st> HweLQx`0EcARق`|ggߋ7A+c]dI"[QiIT~]ߚmmB LP"Z2%)w KaWVV~ձljY(=l8ĵ(_W0  _ńebA M 'X/̌CɞqEt'27WD±&Ft7yZ5*o;pȩ ™H=IyR~2)~৾.hWSS8IS> kfZTyޤ6b'es7pg~/~wx?/I:A-]aΩdx;0'j.¢K6% }Ѕ0ɲ%ߍHka DQF:E9(wZpNhRw:??xu%3$!/ eK0Pʇiϭ/hxT;#`V4XswUgirNw$hpd}YE{#٨OCǜ`=IZRl$oPZ c Ȃ_vsb`fwMw̓3f?آ/<:͜s̎>t]4Śd$"kb(j RV@Ӯq`먞ځ%(Ut Zٿa~}'"gPd0{+|^4lL$q޷7]Yü`?z < ?94Dј͠wfa05"5bt/t7΁/U 5e >h%яAu$2p2n1nlRvuMH|VFÀ3˽[`{1g DRZ5v/|"KmX,UcuC!dILl:CUږ,z<Đ8,@,D-g H_[{g8no ~s,W%8$0J|y'n~4 yKu gI.` =Hb]" A f wpQg^<o5{.d?,ߢءQ4`}t@-VݚIQsI=ԍ!(v-ᶹsK?m$fþgጎtex>0qQz*uX$ ڱn7$)Q GrWeaSCFߔDT"`74j>gE@UzQݬj ǍQiw4vxr{nOD:1궧%]niovRw };AjSbm@Tj(vPNv8LJk-pW0v`anr Uv'ML4D45xӸoMG'k :E-k $uɰZebk 2 ݗv-&wv+'p,S?)L5QERGB!"TBTs2i}[PddMX ęK6 eQVZ ;q RR㨨 dO $ BcNgΏw#QPs ;+)ͨT~2:e(b4Ŷ"7NAg{'7` \%}bxpY( PR7MLbAp@]B 8 N*h!JBIoHe%E.Lڧi|[ڵ閻&+Nnn~,3$g`UKs?35-b %/V6|+ j ^3] 9c7gskU(uP[0*[?Ni|LP]c-r>{BmGxǰvltSd5cȊ棎Ĭ}=X`mB3X 2Z \coa><2 I'Sʝ+Ȁ+Ef-ri͔7ukT- k6bQ66z_[̣ZHqYUaު"n;&jj½ӯWg|lv#t!F4m:$g1p| &y)i^i.5ۤaf1b.2x;vʌv(+\ݬ^֓4BHdkL(\q VEr%G C3%1DW`a|3lQCJ1V5nz@_>L^(ƺSI}Z_FZVD#@ƫ=DXi2YX<.Y]]Y;S -VU>BFs0y*dBv>C I##][f2bId"72M^D;H!0AwңuzɶM'+vDIH4~fNRvM-]qmOMEfN H*e*v!~ޝK3Cɩ 4JRꎧģS̨w #%YqΎF[Adw>n[G;ّ_4e_wPV ClSeZ ^ٌ@~2cn3%s%ݭ-:X & -(k}eye1'=6;$f5I.PЌjr(PkFӷqF2 )4;)j'ˇxea!̅цSvi6qVԏ ꧃6EͰ/_ǏQ{:8VXj-yL*ę]bzD,σgf\=x^Guyߓ- ߢF^s7zsOkZ)J+^ddX2ghm <}l/PwZ@.g-RS SVqKM*RWQ "i@{W 6vqj՜+n]2+&6/|@5KglyTSSD@Jv dךXIo%s{\K$vC a~4i<78jhY䠗4A^nVNuT<ח+;?a&zhC(J@G^xDyd+c{ ]Gh5WR]y%y? m3t0~K1+^%[[SCExpM&rf# j Rz4lˬ(k\0O037$Z:'AZ̘Zk SVx)_}+ WdD0Բe+rОߪƛe3ɪ]jw %UQ:ljӖo;}(N&uVeK6cdƕUtHzRvz(<2U,;n5*SSOv;'wS!w^ \jKM2ѴM6KT;%U` dL݉%~?bm{,oݸzLCu/{Lڍ'YY$p?ہE\Rgwzr$jwn$)+n 7eEՋfjUEnb*Ku&O2i&n[%j˅ަ;g(i9yznIt$j>ߧ:b9H32RH[A nrW GU{+ !-52퇛R(VryY;D$MN8ˑ7@{\qMoAuQ]$75wL1si3Xe^I&4~RBN+UGZg|җޓ.S1_XP%2y.n1CMEl18VSVqK+RtW{P ˾ҔC % (٭gtjR#05YSnڋ6,cr>mo'㛨Q` !fe&"Ń4ιV+gѷ>+e`T_@6Ucu '>_2\70/jɨ2gx3+SR6:^PvTzEas0䈃NVu ؙZngn.ؒVɫ1˫QaFKQ &IZlKSHwHTZ X旀X,*g\þjN[g+@]\):qC}nY(Ll?JN.R?-fEq`"]m,La^Fq8٘N._k՝rx ʏ6DB{|GUMci;(-0FXY$'Nj&Q;1]'ށ3+ 1im$SrwAFw e@$`㱳1bJf؜j0>݌b<߅*Yc?y@d@/č]%/ tVٿX١=[}q]?Fw.S3yy<&Z.\¹>t[M_xG_6옻 eqT$j|H0:/Ir,9yDpeR &05[i_WJ9ysvcķDWcO 3'Ƹ!4xv#YIIя3mW㨗@iv1_\~:6QeUՊ 5 C(˳`Z.ar =m:w}zϴڎɛ$գQ!F`oY6*תw.?W7aR4qՒ`46e$+LG5 1_% B`z:z;=7&Ң(1}lAz/s/EҒrZ ;>ȏRYfoAvLt+/vh&:g>GZ@]7Yx<)mjwmEp ٮzVl;r|q"0vD_<"U^BEx3$b&ԊuT9@*{f.5KhE<`< tgrFX&}EL:hGIXfim%݆Y–sz?sz{gPܛ?i/7Nptu6 h?L~>6w9FSUoVԊ`ј[L 3w>vUl*rbҁ$PݢkлXˡ dQ͊u^GKQH kC3h`٨pŪIUJ.z{gJJcn!~@cv.l"-=[u1A>\Ee˙rvƾ-UG ~w1ہfŊ>څ! Z-\lON@NR9{LwIc޲yR+`E]̈~EyUU3ݹڹ9&uHXQ%s[bHhү( +]mK2-u~_w$-HeQ)A\/A ?1YbYw+nT4[57ss2։f=CS%nc'Nd{NM qT12[cܲ -TeAd-تr:{A!͋ c&B9!:/O#l("tjH{: xҎoC1Pi<;}w [Im,l0=)Ȳ펃85cy -!|μI `gue}{I)B)N}"rIa 9/>]a-xuj2Y+'&S̽DrSD6PK"=-'w]ۓ<,nsx%fYM:J"TiOlcͩrNfZ)0:,NI^KxR `<L訒z7;&p'pi  OnkY&{Q/w"k*%NK 3FEq S n(oT[#K nDa5npT#p5>#\|M Uzbjutn<]b[|_r|R@7&bz& + EF~"qs 59 C'qT*tK5lbXN-#kT2"3Hd8jOY KÊ/k DiE$%Aiur]n273M tc62lzo|LO1fij KEɈQ[v+f#*+m#95"zJZfrx~{(YMVVGUʱg)]Wfަ@ v4ʾv7[}'7\%AGuY~Fb{ ֿɃc1Hb |e}~gfijՔw*zLT>:Ȏn 횔ӐxGk+*}l{(m8BuNR6I]]Y_ǧGpd 6-}^sJSL l&V gAL_f>1[A aٸ5(MbMGGQhRrUu6 dZ(*SJ1R%zŰa)Ϳ(o|֑5?- >5J֔I=rɾ0ۭeZR,rBI s"3Rkay-o^7t0g~jP$ݠZ\kfy,iSNjƸ}25FK-zl=H<|CC`\CcK˱(VBx&D5rdLr=' (9#a =2GW|..}c#P?}oD8SOǚR9{p"ЏBgKs1FƵMWFH,z'֦M^ f geGǵ5,f|-AA̵= bQf{La@31$0ӮA.`??u.YVʑyŸ@BŦeZܺթکQ XLvaʩ^Q?\,g{qIT?FxW &FRp#JTk^k;ZVNꒇP7&c``C݊9'O thZzW)|J8k (B_)E+EJ3MR0(JY@![ (O_E()RB)+TC++pҿ$_H)BG@0T, s0e/?"QO GS7hܾ=Dt9ɰG x>ը'0sEZՒ@)4R!.Ț`_ItVP3V8{-RCaJ%SpH2 qxrAԷ+fŞ3ڂ[YԜIA٦ĞOZ%J*CA$ZL@ۀ4G'N@RNA)JD0 dԬ{|?j?r UYs-aS6G ʭ yMFU4EupK7~ )5ܫ_>(65/`) |iW@6wG، ?_q;e#waL8!(bP=6JAA0 q| &ndߕ-T?bΫk,z^C&N<3yyٍLFV ;T+"ΘȋM&4I\hj{P=Җ/.-d0J; 9 i,5@+ b ϑb-/R IF/}KwΘo`۬lieؽl`LvEreO|wf]-\z1]nraC*:S3C+X!>gL]AfGx3Nv7TKnÈJ*>!R߱|t?OOcGx% &(u(@;!?hK&_ޘG]OkZ3kE-ƫ|KGx&|(e27}/ BqHcB?d귃$H[Bj%\ĭcIT|;co39OAsz1sLv4a){We'䟟=ѱutkび7{<|gOúS9n|n|}_g^>{kZ۷jr3ºU`@»{֥N>/︷'j}|+7=չN>)}“_ݩ(=qL :6޾^Ћo.y=r''wkm1dGtwwۯV,ݶ|Ǔચ}Vyƫ{{W_Bfe~K8+&}>9%9A.9A.IKɤQ19m3Ե =5)yώ6O3âQLU)G 4Zf̙rdJNƕS/D8k9H h^6k o5a3x<僴QOA,C>:J={Q2-̙jf؃"Zf Y0.N3 -w`ǵ@wzŴFJ#oG?X-mfĺ*RtTIWAj\6Wp8MbK"EYt~tB?MΙ`骗n_z \Q/ݤM| 4ڸ%Ԁʻ:'! i!rξjy"OYaP_Axһ#cY9 8 ˶W혊\EԞUN1C`IT/n]-zܡվ2~+[}eȾMrڗ @Z8"qWP׀%/IX:\)ê_UB{@ Q7R̝{Z.e/dZZPWI+dDEוtZ}iS butz"/ %&BR\Nwy)%Ssb]szc7h1H/_4 2Vɺzɺ^XWFGMVE(QnRG]G>$4"8 q'Ì.jhuj qwu%[%RW,X>wM!/͏4y֗~ w9d}93|9o͓'Btodػ<3nrzL*mW.r(NUخMK&3_Q!kf=Qyz+t$|)Fi4F$ EiM;TOQ(QJFN%ғuk^cc9+8oiEe$ߣ #iUY6[8Uged|xwp|GZX%+YGV'Z+64pdT@h=B'j"eP-23/&POU-,HR3 .iqsE!=SRDe# nј dFmR(&65ϔZ e!g)m+=:)-+[Z] jMx~FG<,<;:_£dkA0Xxϳ7rt4/Nn^,+‹-k6/1ڷ?/V/fDħQDT?>C/ȋ1[Du)yNDs"cr VrImjmR:6GU2K;JDw/.SD-i3Xʋ]Xۋ}ǁ X% ? 2bz)ˍphwԴUh4zHoВ7cJ)N,gɂ.zT5խO|?w:|`X%wOa5(PFEp dkw>US-|e@|~lz|f- ƾ#=gb[FoFC#AW7`ևZ ,@Z;%#s/VES({0#uC(o\5(%@߱

L65G%F( .D6}4 . "=18S~IL6.Wt "!gZV!nm5G%h,>L65G%F( .D6}4 .? !حح˩ "$B;Li Wl-!nm2Aߺ(21b# ~)b "$B;Li Wl-!nm2Aߺ(21b# ~)b< ÿý͞ ꧶ ٜ󙦦է "ia)3k\`/1O ' $IW] nmB !! !!d$#˜%Cd "ia)3k\`/1O ' $IW] nmB !! !!d$#˜%Cd<-ٙ˳ ѹѹ-" Cfn W_ nmLQ#&Q-" Cfn W_ nmLQ#&QE٩ǟ ߠл6۟Ǥ٨ʠ"*&/-A;u$f ')W_6nm@s"&y3#{5"*&/-A;u$f ')W_6nm@s"&y3#{5ǁ p  ߅ p ܥ®߅ &)?h6xxύH-2 &)?h6xxύH-2ܙڪܷˤ𥷮"#ըA?,>jK~WL6hj"!QH5\["#ըA?,>jK~WL6hj"!QH5\[ܰŲ߱›ײڥ;?o?ߺ(?=}hh :@H ;?o?ߺ(?=}hh :@H ܱٜɣ ꧶ڲ> !!Lxa!: hr $Iϣ@HU> !!Lxa!: hr $Iϣ@HUܱԸ ڲʲ>Nhr fn ã@H|@>Nhr fn ã@H|@ܱǤ ߠڲú埣ׁ>rs"/S)hr ')@kT>rs"/S)hr ')@kTe ;S ( ( ( (.1 11 . *   o   *  ՜.+,0     7'On-screen ShowP MIT CSAILShĭ Times New Roman Trebuchet MS WingdingsTahomaArialDefault DesignMicrosoft Graph Chart(Towards an Internet that Never FailsWhat We Should Aim TowardExample Catastrophic FailuresNANOG List Failure AnalysisFaults and FailuresThree Directions#Configuration Defines BGP BehaviorToday: Reactive OperationCoping with Complexity:Proactive Operation with rcc http://nms.csail.mit.edu/rcc Factoring Routing ConfigurationCorrectness SpecificationResults: Faults across 17 ASes$Web-based & Command Line InterfacesThree Directions Prefixes are too coarse-grained%but they are also too fine-   $  S  4.    !   d P  S Chart MSGraph.Chart.80*Microsoft Graph Chartr Chart MSGraph.Chart.80*Microsoft Graph ChartP/ 0|DTimes New Roman I@\P^\!DTrebuchet MSan I@\P^\! DWingdingsMSan I@\P^\!0DTahomagsMSan I@\P^\!@DArialgsMSan I@\P^\!g(.  @n?" dd@  @@``  o+ && "!% "  '"*"    &DSJ $$* !  "2)  (    " "(' Q- |3E  P    $  S  4.     !   &7# &')+ %%*+;"0$(B$.7ESnu|^MB$ ]WIA%B$@R~0l$(T b$[d9[B/N^B$؍3>bExWfX/b$ =k;͍\- B$g.^eF6VΑB$>V{29Ub$y62%fU3bnP 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 d33@d@+ʚ;ܘ5ʚ;g4ddddn8ppp@ <4!d!d0gʚ;<4dddd0gʚ; <4dddd0ʚ;g4YdYdnL}p@ pp>___PPT10xp          Hh    HX  (8V___PPT980     0           Pph___PPT2001D<4XP4___PPTMac11*4@f   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography h- lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp. ( ʚ;&)ʚ;dd? %O  =E)lNTowards an Internet that  Never Fails (($,WHari Balakrishnan MIT Joint work with Nick Feamster, Scott Shenker, Mythili Vutukuru  X BZ What We Should Aim TowardCarrier airlines (2002 FAA Fact Book) 41 accidents, 6.7 million flights (five  nines availability) 911 phone service (1993 NRIC report) 29 minutes downtime per year per line (four  nines availability) Standard phone service (various sources) 53 minutes downtime per year per line (four  nines availability The Internet? One to two  nines &Z>Z&ZCZ)ZBZZZ&$  %')  ($$((,,0044,?XLExample Catastrophic Failures T:NANOG List Failure  Analysis GFaults and FailuresFault = Underlying defect in a component that causes it to violate a specification Latent or Active (i.e., cause errors) Unmasked faults (errors) cause failures Failure of subsystem (spec violation) causes fault in system Internet faults occur for complex reasons Hardware, software, protocol, design, implementation, operational faults: could be triggered by malice Internet failure: A cannot communicate with B6SZ'Z)Z=Z+ZgZ/ZN    =  *$$((,,00 44%88<<PY{ )JThree DirectionsConfiguration as programming Defines BGP behavior Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems (and stubs)Z;ZAZ*ZZ3Z:  @)IT3  ITPh 'Hp"Configuration Defines BGP Behavior##Which neighboring networks can send traffic Where traffic enters and leaves the network How routers within the network learn routes to external destinations.Pf3WToday: Reactive Operation?Problems cause downtime Problems often not immediately apparent@Z@KCoping with ComplexityNView configuration as (distributed) programming Large-scale: over 1M lines of code in some networks Programming tools to reduce fault frequency Static analysis can detect many faults [rcc] Sandboxing to overcome current  stimulus-response reasoning [FR03] Centralize configuration platform More  intentional config specs Push configs to routers Push routes to routers [RCP:F+04] Use static analysis and sandboxing tools0Z4Z-ZqZZ"ZZ04,  -C"  8$$"(((,,00M?h V~9Proactive Operation with rcc http://nms.csail.mit.edu/rcc&: ZpRepresent complex, distributed configuration Define a correctness specification Map specification to constraints[Factoring Routing Configuration Correctness Specification sResults: Faults across 17 ASesg #Web-based & Command Line InterfacesyThree DirectionsConfiguration as programming Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems&A)'&@  )IT&IT  IT6p (<i Prefixes are too coarse-grained Validity: If a failure occurs that makes a network unreachable via a given path, then the route corresponding to that path must be withdrawn. > RH& but they are also too fine-grained!%%~~70% of discontiguous prefix pairs from the same AS are announced from the same location Allocation explains about 60% of these cases: Registries often allocate discontiguous address blocks to a single AS on the same day Routes for these prefixes will  flap together. 135.36.0.0/16 (Agere) and 135.12.0.0/14 (Lucent)vZVZ1Z1ZF  11bBH-?n+Proposal: Atomic Interdomain Protocol (AIP) Exterminate prefixes Name  atomic domains (AD) directly Addressing, forwarding and routing on ADs Like current AS numbers, but finer-grained Example: MIT, Microsoft Redmond, one PoP of a large ISP, & Flat AD IDs can carry cryptographic meaning Self-certifying (hash of public key) End-system addresses have the form [AD : LocalID]:ZZ,Z&Z2Z$*  +;,%  $$2((lLKovExposing Paths to End SystemsUltimately, failure recovery is an end-to-end function Current architecture doesn t expose multiple paths to end systems and stubs Result: Various hacks to  discover distinct paths across overlays and underlays& :7L S,@ {SummaryjIt s worth shooting for a two or three order-of-magnitude improvement in Internet availability It s possible to get four or five nines of Internet availability, if we: Develop tools to cope with configuration complexity Develop a failure-atomic routing system Expose multiple IP-layer paths to higher layers lZZ_I4  (0>/0 .MNPQU_blmoqtx|P} 0   (   l  C  `  | l  C    | H  0޽h ? ̙33___PPT10u.q_+D=' ̐= @B +ruKu9 ٰɐ( d P S RdO)P"g|@Pictures OPowerPoint Document(-ĭSummaryInformation(m     l      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuwxyz{|}~vZ8  !"#$%&'()*+,-./012345679:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY[\]^_`abcdefghijklmnopqrstuvwxyz{|}~DocumentSummaryInformation8Current User8 grained!,Proposal: Atomic Interdomain Protocol (AIP)Exposing Paths to End SystemsSummary  Fonts UsedDesign TemplateEmbedded OLE Servers Slide Titles _㠭t-msinght-msingh Balakrishnan &7# &')+ %%*+;"0$(B$.7ESnu|^MB$ ]WIA%B$@R~0l$(T b$[d9[B/N^B$؍3>bExWfX/b$ =k;͍\- B$g.^eF6VΑB$>V{29Ub$y62%fU3bnP 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 d33@d@+ʚ;ܘ5ʚ;g4ddddn8ppp@ <4!d!d0gʚ;<4dddd0gʚ; <4dddd0ʚ;g4YdYdnLkp@ pp>___PPT10xp          Hh    HX  (8V___PPT980     0           Pph___PPT2001D<4XP4___PPTMac11*4@f   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography h- lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  x  lnamddTrebuchet MS Microsoft Corp.  lnamddTrebuchet MS Microsoft Corp.       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk~nopqrstuvwxyz{}( ʚ;&)ʚ;dd? %O  =G)lNTowards an Internet that  Never Fails (($,WHari Balakrishnan MIT Joint work with Nick Feamster, Scott Shenker, Mythili Vutukuru  X BZ What We Should Aim TowardCarrier airlines (2002 FAA Fact Book) 41 accidents, 6.7 million flights (five  nines availability) 911 phone service (1993 NRIC report) 29 minutes downtime per year per line (four  nines availability) Standard phone service (various sources) 53 minutes downtime per year per line (four  nines availability) The Internet? One to two  nines &Z>Z&ZCZ)ZCZZZ&$  %')  ($$((,,0044,?YLExample Catastrophic Failures T:NANOG List Failure  Analysis GFaults and FailuresFault = Underlying defect in a component that causes it to violate a specification Latent or Active (i.e., cause errors) Unmasked faults (errors) cause failures Failure of subsystem (spec violation) causes fault in system Internet faults occur for complex reasons Hardware, software, protocol, design, implementation, operational faults: could be triggered by malice Internet failure: A cannot communicate with B6SZ'Z)Z=Z+ZgZ/ZN    =  *$$((,,00 44%88<<PY{ )JThree DirectionsConfiguration as programming Defines BGP behavior Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems (and stubs)Z;ZAZ*ZZ3Z:  @)IT3  ITPh 'Hp"Configuration Defines BGP Behavior##Which neighboring networks can send traffic Where traffic enters and leaves the network How routers within the network learn routes to external destinations.Pf3WToday: Reactive Operation?Problems cause downtime Problems often not immediately apparent@Z@KCoping with ComplexityNView configuration as (distributed) programming Large-scale: over 1M lines of code in some networks Programming tools to reduce fault frequency Static analysis can detect many faults [rcc] Sandboxing to overcome current  stimulus-response reasoning [FR03] Centralize configuration platform More  intentional config specs Push configs to routers Push routes to routers [RCP:F+04] Use static analysis and sandboxing tools0Z4Z-ZqZZ"ZZ04,  -C"  8$$"(((,,00M?h V~9Proactive Operation with rcc http://nms.csail.mit.edu/rcc&: ZpRepresent complex, distributed configuration Define a correctness specification Map specification to constraints[Factoring Routing Configuration Correctness Specification sResults: Faults across 17 ASesg #Web-based & Command Line InterfacesyThree DirectionsConfiguration as programming Tools to cope with routing complexity Coping with protocol faults: failure-atomic interdomain routing Prefix-based routing considered harmful End-to-end routing Exposing multiple paths to end systems&A)'&@  )IT&IT  IT6p (<i Prefixes are too coarse-grained Validity: If a failure occurs that makes a network unreachable via a given path, then the route corresponding to that path must be withdrawn. > RH& but they are also too fine-grained!%%~~70% of discontiguous prefix pairs from the same AS are announced from the same location Allocation explains about 60% of these cases: Registries often allocate discontiguous address blocks to a single AS on the same day Routes for these prefixes will  flap together. 135.36.0.0/16 (Agere) and 135.12.0.0/14 (Lucent)vZVZ1Z1ZF  11bBH-?n+Proposal: Atomic Interdomain Protocol (AIP) Exterminate prefixes Name  atomic domains (AD) directly Addressing, forwarding and routing on ADs Like current AS numbers, but finer-grained Example: MIT, Microsoft Redmond, one PoP of a large ISP, & Flat AD IDs can carry cryptographic meaning Self-certifying (hash of public key) End-system addresses have the form [AD : LocalID]:ZZ,Z&Z2Z$*  +;,%  $$2((lLKovExposing Paths to End SystemsUltimately, failure recovery is an end-to-end function Current architecture doesn t expose multiple paths to end systems and stubs Result: Various hacks to  discover distinct paths across overlays and underlays& :7L S,@ {SummaryjIt s worth shooting for a two or three order-of-magnitude improvement in Internet availability It s possible to get four or five nines of Internet availability, if we: Develop tools to cope with configuration complexity Develop a failure-atomic routing system Expose multiple IP-layer paths to higher layers lZZ_I4  (0>/0 .MNPQU_blmoqtx|P/@: , `#D(  l " C h8  j  # C `0P <$< Π H  0޽h ? O(3e1&___PPT10.u+6/D' ܐ= @B DI' = @BA?%,( < +O%,( < +D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#&%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#&d%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#e%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#8%(D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#9G%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*#GZ%(+8+0+# +ru FQ ٰRdO)@q|Pictures OPowerPoint Document(-ĭSummaryInformation(m      DocumentSummaryInformation8Current UserA grained!,Proposal: Atomic Interdomain Protocol (AIP)Exposing Paths to End SystemsSummary  Fonts UsedDesign TemplateEmbedded OLE Servers Slide Titles#_㠭 Victor BahlVictor Bahlakrishnan      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk~nopqrstuvwxyz{}"