ࡱ> ,^_`abcyyuvwxyz| } lmnopn@e^P23) PNG  IHDR]pjÍ}sRGB pHYs.>?IDATx^]=r=f;XEHēwP!MterHiRȇ$ @K仗%  Go@A@A@# ~؁  b  =c ￾gǟO/*$DL ՠ5V4X6\.っ@ĈQ}$4{Y5Z* xexNVN2WX)א A0.֫6춫0^>^.dU_ks{'&!i'i-p 3bIu"X//7KWCC}#|Kе5Y r{2)MRh+m%6M5T#rM˓y"X03BH#0tROtZ]wKO$D9x='"hB]^LN qNطدjuߪN ZA?~T,DO ^BXr5(V&e`- ߛd?`v8@y"B-( JL~л2⛉~ӝ4$ӥwJ6#2+&aqx7 J袷}2@ t稚d~ 4ä)Ԛ3O߶nxoxϫEA@j+ɰjՒ(좖aӄkG'ӌϺ   ÞTIe =}).Hg.i:${Tk;GNDǒ+L#9RDbd (?kA3HBԫ#;-6a5寊3eoC #V&A@x[Bxy~wa)\Ƹ:c?>{&!*Zf}0O[!|쮡pu0LM _F8rK'*GhI.`w /٧$&Z ]%Iyas ԗL#--͹)A %/V`K z"1OxP}Hfz/t(|˞ FN$DjFk r1y].>0\VCĊZ@I}Hew"F1ԑwQ|*5"ye|EX)AL7E^4R_ mn o/?,iR`phc6d~zQ7Ь~a"ZlTX'`$G,!?{wi#8aBD[$饅@CY-Hɢ naMf4flA}~=}3S"]3fk}z y$A@x~壜}sdN!n A{$e號b_U1.iLBeV4Zk^O2[n:N"ux3^3}|Sqob.㢕u=# #ǭ8ֵwaBj?^A x!5$q.ͨ/]R%dD{7@߰6H# zl:%u@;{Chx"g%@J%緽Ӽl{ \  DS$ߋ;X%~c9 TAEBS3N6kfiY< :Q`LW{Wĝub7sUɫ$%!±"rUs}[" PIN%6:͹@b1?m1;A@gZr 2" p-{** ./|]iX3Wb<>ߞu 8%   7dpo aA@A@fR0+ po aA@A@f,ݻ{Gӽrzw2jɟ:!)PxZ)PIڜ/NJ= Nh$^QIO;NS{8klHAAT5?I[=Uה v+Ҫ%sBs3aERش-@:Q=Wrd&V~Xif`f& \|4㻭6Y;1Mʓ t'whYv/++r` މY 6S k̂?;K0 z_m_0XS'iHt7hej{^>kL?ASVQD̓#r'Z"]P^;d[xiĹZL݄ucaモƺ(f71(θ~C<H8 MMsS+d6PBhEӪQV8f<Ï{fR{ Ğ{ֶ~aٿ>_~!NTi'rR`K2O@(#Y*-pȶsnNfLukőԏEu8{GAYݭiŹRe~_\4ɗpL~یhP6wze,;K#@G;ZAk'g`K?A$i>u#7 hs q̠:@Z1KRlIC6Ds1˿Ų th$,S1Y%rɈ{ dQi~P9 )̳PAS M}L}^ߵJP&œaHcɹd48sWgeƱsvEBz3Jwd(I!C`Z͹Tʉ!ΘٙvXnn~a$#qg>vAGuy6hN@d kǧFzhS6G3'c=XPߓRx4U; #9 mBF{v +E/;tgCWL]9'I@ \ݩP.cI䯖0V>i!3}Rp/oW./{VY0Wq}{>X9@:ݩϖk7Ra-v/;nj׽v<)Y=m(&xL=&!5O5sZk ]\9W gf:tꂤ|۬:3[prf<0c"u"FIc`~^fihv_ɽs?KawWϹM;574 }~!qG3?)3LW pjO3; zMQh)}ʗ\d): CPk87k?gr֓eVԭ'o<<Jf (xp?bQY2!3`dB-Q{ O_:Y[Et }MķgFA4z@r5~CVܩ Zp+{ڮ[utYGS`aڵ# =7eS -5 ^hft2itxC#BIN]7&d;@z o P>$!Θy^A%+ 5ko 8zRA߬-5NB54TJ6n@~U< eԗ Y{V߯$obiܧ`y=iD`$m9 zOco'bHdB `MG/F]BΆb2%jw=ͮ礬fP_"bm edΐ(|JyƘYIF3toe0-7&I|,GU^ff7W(Wv1,_=~M[%馹6?Sn~sct't"5ZEub< Zh7[]/LCml-DQ҄e9ݤMyXEsۄHA$!Or;:%uc+J-e'`}ډ{LoFym2 H-Z oĀǾbنrjs-] UIi;[%2fVe+.lF3u *4Qi)왊x$+;uyL`UO_nU6mRtvc7̘rPQf\XLW f'8݈`['!¨jelaQ`h9|E!ȌTUq0MeN,Rps*JMxWv˜P<]=dW}4} &5b$" DB׫Db,EMmcta?&!ª++5 xMgS H@!ہ2`2H"vlOk9tI LN@ULRU#= ,:S^^Va#M!ARI5.]OS ;2d eRTv$dҶ~P:M=%y0ƚx ̬ #q{_EE5#e6>.m*GGĀ%7VTT0T1X܇[3UnlgNJo=ε6Jv @"M7Mq/Y%8t֝P΄˜;P;WϚseCQͱAV\qW J!e+|b\hNrepfzlsqhF#us|9.}~aj׸;珨 j2>k]k]p mOj{ {h][ x}"eFQ~#MEUx=3VbM,̦T6}M?WN)xF1•CA;!"0s_qf>ffj13 `f9l2QSǟW?4D{eZHGR6TKe6&,1N$_S*e܎֓C9DVlҖr'3 Z-M Zҳim8h+S:>KL`OHwtb['Waƥٞ|np~i['?:!9(ܑ_/fE=Ga(ciyOx6V+dA@ pF`t| ^4k^X7t15JՍHݖ S@)R %Sp A ޾VNkt2`ɨ.H]f#_S"`>{-Y &+0FIϚەn‚I5%M10jL̯=@^\OaP5M-I5Õ;l} 0PU 1B&c q-q ޫ5I1c.$"J} .~ߪuWͬB0C3A@[Uܦ~L}: abubjw'*KD6nI =-(y6+9VVTbh5p!E}RP 짬qY5-6ts[`3*:e̬-S4Fv.bcy~ rd0/2;~.Q-c8;`'H0051` T`qJfd59jٺA lQ7Rɔff&^z]w `L=oTI!-XftQ:ǕKߙ`% QDTƗ!Lh30P45|H/dR y,CZݯxH0MMjUB?MiL1[=-l:HU`mNki9P  qI xWL'BݺL6gwx5ڥX  TSӋ[`nJIc2,un~`_'GLvR90Sf hk٠x`n Qm#d8ULFM"(<cT˼>q,B&0 n\wgj)?V-Hv-yDbMQ0o*_\8J. [j~A@Z [֖ TDPDw&Q)I' |֕1let)^j&QK= :LFS4j@kyѩ]%uj*1fGe%CaU<.yjQcT c8ldpȞMa )EϨbESPzR!#Yo(yȶ cɡ\7cG~wzJ8p3$3j5/A` Z]s0>?ayxxPxjoW8L!k0lEUYU<ߑ-tviz৸jb'j2IWRH(FVgJ-Xb ŠaB}7$p > p7nAf[uo1*y&S‚L_8 _"ݥ>Lq61$ևN4V1y4Z†EAFaE{p佀?#0?yi]7Ć~8lno}F-ߵl јQBKmR%vk^ZHYHd cvxrv=:^$.Xg *ݑn e%*ֵ`a>5Zq&ƵPC W;pѷ).pJv1L-èR LEv&` }_ =0 Dܫ.8 >i&f5VpҋJ^f/fW gKuvˇb7D ZU`)!DN_.gx(2-@3T(62a3 n ̘pg 8jA>/H-?T`ikƟ@dPXe%LP=:il@2~M[Ekc۾sCYZN-;P1 ;KKzDU+Lw11ԎV ȏ/U^?j)Ao>\U&.WҘ'R :5Sw BKʞkt 8A*6(*4!˫dS1f&M歺xzm |x$]j8>.8gW&LfUWDU7UO_Vaq[J,4lyT;KzC^3C* 6_q 5*%xm~BBR 4zk9*g2~O= >.{$+ha)k=;NC`'J2 a:aC/(4RR7]fs( P7&I|]|<ϗNʑ3*fU 'idMP#2va8S_`߬?WZzVdk "‚Fs OQ |=Cgxu.1w")~d6;NLx%x*w؆ w,:"60v%u{l69TQɌ>cp93 vg`U2{zr[%jX[uر9dt+ijbw"K}A@hD`f~!=kH 8ށ@<Ǝ|<|9ig@^^|{AL!8'} 8uOhC0C: څڍ(^Rfi~>?*8`48skTp9eUWzB[%V+Y_8&L6$h+)%BgjBդFB(@B8Z$S3.TzB:2a?Dס9Ъ0dSs0:ޔˋKz/q5baW8^5.&Zy7D=YRnN2H5FDOS ̄ƃ5 "X:2SӦrtK XeWP?V55vS;pq5 z]5qMqrlMF 0=3 `gApe>snHγM ?aNE{9N0hi C1x l"~ȝftZ켩MCJ!Qv<* DTXw)2S56X[YG}Oo ϘF=UV۲Cj|0azE sI=o^SL2$MeOYA@xC' _?6/pZLv$X҇w[Wq{1m.(m2iTK6 7 npraaH@{,`JFhT){똡ZjA^zRPqB3C-b6ҝ•=:gla=1d7L[Cxga4VRoӌBE!j,A`/,^xwl<5Vg0Ƀj \x+qC* -uȕbR+)/|Sꞿ?쀙?]N}K# 0аT퀆 m$/   # b   A@A@fiڤǪ !`p[6$`0H4ΘEJnؘ;ii/ۛā-m8ÙY;:T5xiJP_kW<$})b{J,5: MIJM=pb+tdnZ;ƵnmPInHgVnfp{A.\|Έ9 F6Z4)mHnI&O?/mA=pf6?#$Pî](=ܖǼ<4=KrN=jZe'FRY\;K57WJ+mdM*ɝXp\qD;$XI`;>ܑaZ՟80>tQ~ˁKqW\;=fC$?ĥ~+u?$\7 !TLwv~Ҧ[9W/7_?%kY߶h<~}+[xA4Ǜ:RDhL'Ał&h$*I\$.PE00icD#!gMWMboЉ✍Mי1^쮡{+lsyRͥ.3yEVM0] 4/j!+ԑ=OwrWɡ!ʞZ{ m^^Jbh *GV V=?퇞6pxD#kfɷc|7T5ɾ׏Jܴ>?P y;'b;+= ? u0@Tٔ7E[7e%V@ʩD?x[:4~&zbB$)f S0f-) Zצ6[DZ`ZbWwj2’@O^E07E0+ԘĞ,\jL1L>? wI.Dx7jBf{?+t*(a6%K\)>OC87CǟP.iX5Z`H} SH^wa F8NS5DL̒ot9K[Y#vA-,E*/pAs9*-b aԳJx] cUz!HR]إ!;@8]1`qt~3!_&lnӧTƶr"x)4'LZRȀ}_)UA,v7~d׾[fTZ0MV@M*X{4OuKeO: 赁?_` o΄lqۄH@o762N//RtDz_lW/Fl:g{Y8Zy7b LIK'oDz֠22['֑CFWqN ql4_)Z|X@M\ϠP0Mݐ, ֞10-WӥMyeM *5C 1LYY}AxĠ ,m;|U7ycN`9ʞ3|IkheɄUrgG\W;?|u2$=St hPiW8L;k⨦77p)/𰷟.;4pT^8ϻ''`̀"Q;.m}r0!8C|G>Zo]|vtԬ%@ kjOeB/?ƯdŞsu^f/+KÆ.(Tt IAii-L]\zԈΔMW, -C3 ¶  # *A@A@)Tq¶  # ~Ājr{hAH   09Niw2t  D@}+A@A@ = 7|6ϙ*L(ע`dL?ܣkcwO¥2d[ 9  0cupQ g]Cpmu1z՝Op!&_*:"p)xiOCn~wX̱q~]8p.C߁. e §mCMLXA@ 0K<.3mu3KoZ)Y}֎y %݉ܧn4k=ؠ9 K ٙغ) < 7Pgwc})X<%ԅR"t(AoڧTRRW oSlWA@C"0Kл[3!sǀIC,L+cNDhIP]zh0NZFIENDB`n 8li?::jPNG  IHDRcKXsRGB pHYs+ bIDATx^]=R$=6M6 ؔ@mw؂ Mw،lP$ Om?ju_5U0Ӷ,=-[v5("(@)2"(" R"("!|}9 +)G*}c0O%RX0_wpbأy{T= KygrAM.Y@J5S5EPvKM(ƎʁΎId=)/.Xnw#Bx_m' _9ϵ>Mt<9Hh)0t`mWLdӫ`g|uJ~̬c~Q(ӯ^+_wddl;¥Ehg:F,/m'%x)\ cMx+n͇{(hlԅG`xuaHٍ|ՃJN BO%&Hnm4C,;_ v"8Z6͠L@`-+sb_sgNŧm+ ?:=K#fr"׻#ru"\̞s>v<>kM_KY'yg&S\Q´K3kOj=ղn@mCJN_FrYM`CC2/-%H=۳ȰDd3|*s#'rOX_h%:cMh7ĄrE|T޼IRBgR 8k A_Y!*4 U@p5쏔"*:#E.6/](5IAjj"rK؀(KJn6*v:^'eecwW\a(^v$I" PT\bĖu<ȎVݞpȥRsj9 @"}qsĆEƄnb dgbʮ&D~h26ܮwY~UqV@gэ缳ؗn3=3ޡKq|ჽh ζK$bK)( 'bDU|Wn[!iϮ_>M>R>4qc$k39Q' 0km{*~ڒhBD\4kl] ,=Du6s &{V6/1!{q2VXJ1'< rp厕zH`;=)z@k_KJW)dixX9&D>ɦ+&IxH?nBC.5 j(mP=!=Y/ )] MRN4 e l(4r+@vZs4Fp\g9chMR.>=ݩټD!Ff9h\/=)uYL4 h8$6HH,AoLΞV'NY sS#,\ӢValZӒC4+alv_yzh"@y»4)s+T>4"k v?bF@xKAaN?GG! EdI6m(Y P& jqj؇?KԃH T@'eJjKZۙl}xdGO$ b>у@lԚgrwk[氩CyLUt 9J}۪&D:pP4\aƳn"':e̤{H#Kj\=W]* JvKA'CPyUN9-p'u{5J*f,DGOI-Z6 +{d08w«)=Wpܖw8hQpGOcN"("pޘsH|{k^cBdD\B"ૹ928hM!#% uBOG:I+OvU'jBgv+>hlA 9{ńdȭ[:5˦5^.EQU0qsHX BٸrC2~BK@ja%j(=3Uh_f ! ab_`/7C]E KwdEÌ4`14^^9*gm)W[肓p0OKS7kؼ6l6ddiKǜSoi%d&ݣf}=6[d9}.o>q_{y%7!tgpWX*Z6#N8 0]1cϟ{` U)08WOpao*vYIچ ܡ3 y)"aA=륁JGJ)V"c~.$]mEIB|*jWO\/# jjQ>+@=+} jHj0?|]5a!0CKd_KF4,f{ؼse$#[XOA8|SյcUbصޚ4W.eFb9$.IBU\~1K! oG&LeiŔ Y. ps)~Y[_CEy~B##&VA9z8V55;"0K [7u-ty`h6 g9\TG h8W 6~_[6HpW+eeOJMk6p7r;<\郢`~FKvBfy{U<+_Rluzb4KMq`ĉJ;;2}rOy. M\ۣXmmʅNH`[(iIkY$MaJ }RuǞ) C wŻÅS B_C|(b!ɉ4Z?sY?-ZP?Oio169S?; |VDr5Mn*'zݹC09\SKn˭k69(+ qa;\:Ok_+j}vJ=y?n'HU9U3oB$maO`p||Kֿ$Rje^*Fnw'ѱt#0LGRÚܚ4,;\"+vR'1|$C:qy -toh)r{ϕo8עE@Pf,)g("0WRUsʷ"( mpRE@P技ZʹjNVE@xR Z"(\PK9W)ߊ"(o\- _zI"l(8\H+`Y ϒ$ +lI}XHB,&c $&U4蜘EHRHm)-ExguPst-Vt{G"OA'OݜhDx+j%^=PWL*z:b 43BI'ɅX֜iJ'lJ[8 wGp';oo{mp38 * 6hl𷖠Rxn*RLK&Q4\y80$KVfdʊ"Of}46B`5gy+ vP |4yplXnbQVV1`,1xB&*QXhB"$e>L#dMB~'x8cfhE !0CKah顰yy B xO6꼪D\[ID46.nͶ QVϕ:{\тD} 5GCGxiC闍x\ ){B`7|_y *s$1:I\Ʉ1|[fZD I1*P 7+)^$gRǠ7iZ"|NܘEϘK"rc&O+4!˙*+v鹹Lw >$B'Wݭ\| # .|9? ++> }GT̫Wܭ<6*f :sp}h >iRLH&TБ( \+B_aT6_'ͨ ZJ{:g/=WYEr &Dzˆ,$4S+1gr}}.Y~|9߱hvE`>R-Y\Y`j&͗yFv[t;C-cjBUpIlb!zrBiAeJ1!Y]DiНB% ِ=)A]QLxe)}.>sNۯ1"AdG_thY3-wq:o m+wd~OiG!y lDۆ?a%Nbe^f) 6 W l֜!l+;J;xRLHVSb",3h{jRC$ ȧRvzʲ"0#1ٯ("\|HE@PZʏy[PE@ZJNJPE"j^VE@!RRE@WE@PdR@G'.M_=BJ_59Mx'Z'ZSYB >te,^^1ZUMI*a@Y GGm$g RS=I_k=TM0-Jdd(ƂY֡nKj4n {ڿ{&WdNՠfd46[@w<gnD73#ڀMn #')>j|1WV^Qd;z޶.+8.RWO$\CP[4}5IuW X¼ 9f㪓AR ZwoݒۯF,%A-g$d׌Yo+ȓn4/$b _%8h7;zҎ(5v=eB[zX`Fx6vB`m)ѻ[4q+v"5yFkYcc RL֢Ёf8zln* {]V{5w6ŧ> J\=ok(xAֺxA䕭(Y #,"[7߲&Y/^{0CK6n8Q/kP;9pUـidH'ظ5>'DYY>Wza Sv!VJR0Z|X:!k$] d)/82c s<1\!aZu}Md9yٸ߃ᵑѻ*2 1RwYX ~u&Bٶݙ?R"@;.^PW:|mnzᦏ*FDGjCpt.!Đ'nWmY-4$ĴB[Jgغ?vɼ0DZ˅wsH !cpl@DwR?"gU^Bw&pǟm䫟_|>Y"Ϳ.f% X'>A\!N?-j]G!π<%亃=ϗ¢V='.#0]ͳ$"!sDž38;OUvc.u8@]Q&} mՂ&KsM(tZA\%fn) Fy3DegjBmUpIlb6BW žq=Kao]y9ag~>_կ\ڟZWe;`[XvI¹n|nL'؋V-"٥,Wn[@%aezi׫kֲ\$8ȏJJzlx!GcGGc;˒r35)Ӣe- %G_+8q.8U糣._ng'MGWmkM5žCr?<s {!cyºTZT3ƢPz!e?&" уD c)}Wțp pb N;(ۤ y:E搌Gp8$%,1g6-9[s~?2ĐG'7/O2VPhotoshop 3.08BIM8BIM%F &Vڰw8BIM com.apple.print.PageFormat.PMHorizontalRes com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMHorizontalRes 72 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PageFormat.PMOrientation com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMOrientation 1 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PageFormat.PMScaling com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMScaling 1 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PageFormat.PMVerticalRes com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMVerticalRes 72 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PageFormat.PMVerticalScaling com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMVerticalScaling 1 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.subTicket.paper_info_ticket com.apple.print.PageFormat.PMAdjustedPageRect com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMAdjustedPageRect 0.0 0.0 734 576 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-16T22:17:01Z com.apple.print.ticket.stateFlag 0 com.apple.print.PageFormat.PMAdjustedPaperRect com.apple.print.ticket.creator com.apple.printingmanager com.apple.print.ticket.itemArray com.apple.print.PageFormat.PMAdjustedPaperRect -18 -18 774 594 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-16T22:17:01Z com.apple.print.ticket.stateFlag 0 com.apple.print.PaperInfo.PMPaperName com.apple.print.ticket.creator com.apple.print.pm.PostScript com.apple.print.ticket.itemArray com.apple.print.PaperInfo.PMPaperName na-letter com.apple.print.ticket.client com.apple.print.pm.PostScript com.apple.print.ticket.modDate 2003-07-01T17:49:36Z com.apple.print.ticket.stateFlag 1 com.apple.print.PaperInfo.PMUnadjustedPageRect com.apple.print.ticket.creator com.apple.print.pm.PostScript com.apple.print.ticket.itemArray com.apple.print.PaperInfo.PMUnadjustedPageRect 0.0 0.0 734 576 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PaperInfo.PMUnadjustedPaperRect com.apple.print.ticket.creator com.apple.print.pm.PostScript com.apple.print.ticket.itemArray com.apple.print.PaperInfo.PMUnadjustedPaperRect -18 -18 774 594 com.apple.print.ticket.client com.apple.printingmanager com.apple.print.ticket.modDate 2006-05-10T00:29:48Z com.apple.print.ticket.stateFlag 0 com.apple.print.PaperInfo.ppd.PMPaperName com.apple.print.ticket.creator com.apple.print.pm.PostScript com.apple.print.ticket.itemArray com.apple.print.PaperInfo.ppd.PMPaperName US Letter com.apple.print.ticket.client com.apple.print.pm.PostScript com.apple.print.ticket.modDate 2003-07-01T17:49:36Z com.apple.print.ticket.stateFlag 1 com.apple.print.ticket.APIVersion 00.20 com.apple.print.ticket.privateLock com.apple.print.ticket.type com.apple.print.PaperInfoTicket com.apple.print.ticket.APIVersion 00.20 com.apple.print.ticket.privateLock com.apple.print.ticket.type com.apple.print.PageFormatTicket 8BIMxHH@Rg(HH(dh 8BIMdd8BIM&?8BIM x8BIM8BIM 8BIM 8BIM' 8BIMH/fflff/ff2Z5-8BIMp8BIM)8BIM`8BIM008BIM-)8BIM@@}]vk@h ve`w`>.N YNY@@>"`;`+Q@8BIM8BIMSSSG_backgroundsnullboundsObjcRct1Top longLeftlongBtomlongRghtlongslicesVlLsObjcslicesliceIDlonggroupIDlongoriginenum ESliceOrigin autoGeneratedTypeenum ESliceTypeImg boundsObjcRct1Top longLeftlongBtomlongRghtlongurlTEXTnullTEXTMsgeTEXTaltTagTEXTcellTextIsHTMLboolcellTextTEXT horzAlignenumESliceHorzAligndefault vertAlignenumESliceVertAligndefault bgColorTypeenumESliceBGColorTypeNone topOutsetlong leftOutsetlong bottomOutsetlong rightOutsetlong8BIM( ?8BIM8BIMe8BIM Hx,JFIFHH Adobe_CMAdobed            x" ?   3!1AQa"q2B#$Rb34rC%Scs5&DTdE£t6UeuF'Vfv7GWgw5!1AQaq"2B#R3$brCScs4%&5DTdEU6teuFVfv'7GWgw ?I$HI$RI$I%)$IJI$RI$I%)$IJI$SI$HI$RI$I%)$IJI$RI$I%)$IJI$SI$HI$RI$I%)$IJI$RI$I%)$IJI$SI$HI$RI$I%)$IJI$RI$I%)$IJI$SI$HI$RI$I%)$IJI$RI$I%)$IJI$SI$HI$RI$I%)$IJI$RI$I%)$IJI$SI{_gKsXoWl{BrDoόr;jIXQ)AJdwĥ%. $)oK+I{J[R )AJdwĥ%. $(9L9c2y 7 ehP&+a~EKZ@:ceֽ3}u֭߳~޳ H HK=_*:ñ(vE^#~I.Q%x޵ܹ<~{10a:VhIOhIOhIOhIOhIOhIOh:wUe_ni {`m}Vm~?K[I_藛 ɋ|da:2r/v>1g6-9[s~?2ĐG'7/O8BIM!UAdobe PhotoshopAdobe Photoshop CS28BIM7mopt<TargetSettings blurAmountUntF#Nne zonedQualityObjc ZonedInfo emphasizeTextboolemphasizeVectorsbool channelIDlongfloorlongpreserveEXIFMetadataboolQltylong<MttCObjc NativeQuadRd longBl longGrn long progressiveboolOptmbool fileFormatenum FileFormatJPEGembedICCProfilebool noMatteColorbool8BIM-msetnullVersionlong8BIMmaniIRFR8BIMAnDsnullAFStlongFrInVlLsObjcnullFrIDlongY:FStsVlLsObjcnullFsIDlongAFrmlongFsFrVlLslongY:LCntlong8BIMRoll8BIMmfri8BIM:ohttp://ns.adobe.com/xap/1.0/ uuid:5AA6AE3FE68111DAAC56C0E4BE15BB68 uuid:5AA6AE40E68111DAAC56C0E4BE15BB68 uuid:9C3181ADE1C811DA84D0DBA8BCBFB467 uuid:462A2314E0D711DAB77CDB82D65B91C3 1 1000000/10000 1000000/10000 2 256,257,258,259,262,274,277,284,530,531,282,283,296,301,318,319,529,532,306,270,271,272,305,315,33432;86E97DFB5EC40AE8D9991E176F50FE89 2006-05-16T15:18:15-07:00 Adobe Photoshop CS2 Macintosh 2006-05-16T15:18:15-07:00 2006-05-16T15:18:15-07:00 -1 1000 750 36864,40960,40961,37121,37122,40962,40963,37510,40964,36867,36868,33434,33437,34850,34852,34855,34856,37377,37378,37379,37380,37381,37382,37383,37384,37385,37386,37396,41483,41484,41486,41487,41488,41492,41493,41495,41728,41729,41730,41985,41986,41987,41988,41989,41990,41991,41992,41993,41994,41995,41996,42016,0,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20,22,23,24,25,26,27,28,30;1C26CC30D6EC2DF62E0C3C6382B8D420 image/jpeg 3 Adobed@      }  s!1AQa"q2B#R3b$r%C4Scs5D'6Tdt& EFVU(eufv7GWgw8HXhx)9IYiy*:JZjzm!1AQa"q2#BRbr3$4CS%cs5DT &6E'dtU7()󄔤euFVfvGWgw8HXhx9IYiy*:JZjz ?&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb&}6UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWboO3?8~[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[ߥ?o>Ko7~?ῳ/S(3俖wO1ϒ[}UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb}UثWbY^hv[fpk̭<3 NRE&0} @4?~ Xx`DYjqjWpiJQn66q4#1 PϕN-㻛V//L9Gq+} H=W6 ƒ&~#gk_?D?ʟ_V zGۃ|]ސ}Y'|$υv&8/tOI~n5''B52*]Eqi1_L8ȾQ<c-вV;c"a-?ћ/̗ثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UتG8ѤF j fbh8 o<8\׺np9&`+ٔ\Qi5~htK '>l;^w8C}4?"|FrSI5U,lV8㇕bqp-_rdQGk X e~9=/I^cD~]qpTa9K%ǣj n_["{kἴYU{ke.K_uROQ meJ~#}é<1 OǑ?|yH-u{ wP׉!v\/ =܏fO\UثWb]}UثWbY'sj~{܌L=̓Gm']ɪi[^[W6Za}#]189,jY\5Î02&<@\`Goš<2B#IL9nI-6m#Ȓ[~Vh3NK+!zRTbࣦ@vV,ז]|#=# btv?}GXvW)1<$UQiisbɗ[/( 3%L&Ʊhw (%Kzv 53y8,otypϊ[JFuN]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb`7u]K̟Iƍ:@]-}RmqUQRF5^|dC#9hG ݖI 3ϐB#r'gC936_?ZgbHmT٫=W1d=0gvp6a?ϟ}|jLI}=n [N]/di4?3vSI+vnyj0krOy^Ou4DߒZ}{-ͧZ07U'`|>:W9xi c(Wg򫯱gSVTqT9;Xϓ̱ ySK~QyV;乳]>2YLti3Ȉ n~G_u8f% F7fu1AkQyH#D{-me\{yYe/Akm!&+#+MedK&˓o0#y_Gzc* ~>k:dRASVMB=1@{AΒ8# Q_(O9%Fr sj݊v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثT˞]ۮ^Y6w)iiO,hI @V|fd<.R4ˍGTv?b֤HXc?zua۞evOMx)Xxw㱧ťk551Cmx^0jR?D.x[@b6km1skP͋K71=}γ'.r*:{a+dE!pT:<ݼ̑Hq:Dy*mQ2x1~AOdD//8sH|:~gQQ}L'6 tZsپC!"8jy=E'aӌc2b R>O垝@k"GB4wiRQqE̤g?/h{;LL4xx/G~~N>v k2B?Η|F|yԿ0O9 y ě@?\ɗg,0qCWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*LqWyϒ?*VqJ^+ȫϧ)0:9;hpϸ{|óqOC˼6i!rf_,o#c-$Zmix!yJ)_Nᠧp획IveiSPֿ*=$:^sE&Er29# +m0;3وk4_9KjkNiM=1{_W'=. /V^`k\ݛE3 k3eˤbؾ vZDQ>Z~vkp~o1?S閶HmrX}o'dXeMd=!<&нN滐jjwWA %U؁?mv>V)#.{_Po,'#A,_s9{7Z?oqihmUN+ٮ)HOUW4V8a$w_qgz]6Ib6xg:b]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*U99diZm~sk됢nd<#%ZbD|8kG#~<#>y)/f@2J=)J/5<̿lOgC ~bCO(K<?i?컝7S/o3kf {M'k|>~ {kqQAga˛ۢEs;lLb9OC팄2iy )מ?54&yVz]/ZwL2 ~^~v)"S1nffBqc"w鱿>OW㯑8{8Eog[NQ3AětX)n5MvLZ 4E7mSSeH аk|\4?4y̞jѴ'4Z(cq204+oAZɨBGʯM]O,GJSJpov|5 u#M5 2=HؘW͗`Kswwa󇟑X&9; Col7 "^HĜgDĠli@N9^6s٫ru78vNHmu|F|9a9%uxOI4~.$GGavZg{ vn/V%w]={K/lqGyb]v*}UثWb_=h^Dwu?u&xOlgK/7\~v򶇦y~]Fѵ뻙!sn/!2KPsZ/`ִ}K_Ҵǽ4->7j,iml_MʤJE&R)kyF^9de;R 1UZ-z t[FHQ";We~B_;:?dKKY?tVg8UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]`%xEQow $@,o&3e=)K3OEx5 vSs0rGhoL%'37|ͯ]k>gfZ ZUa5 nn &,,q՟W>O$'^|M2??1+iiz8A)N*ki;7O7κnue\2?=8t,K?\ʳZI`\T1 rX+ALNO/,q㻺õpG$*ȟ77^Aw"f+rYM2_gb@J_6'hj4W$KyU״`KEՙMU8؃вeZNi%ŋ-×! KwGk[iyU[--$zNXu)]nN&$p9?we赺c[5y|c=[E}~HmզA3&7,I "|X0 5k.|@"D ^}1|uy/ԭQ-+JYB'տ8~BŠ_j:I|aZ-xձѭah"O-ʺ>RUo<&Ώ?wnOՙ쯎;v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb$6M,˫-~jcapKnD(0NĀ|,8v*dA?c۟f峾9}C1M<889y7'u贿1_k29}RPw'"i{c;^hG컾a]إR=c="-i[7ZMou+?ʊ"{k?x%u>qݘ{{MOJPе\).Yd~~℃qGr.?=yO[qG\hv#&o J x4X܊ͨVQXbR+}?yQgN kMkiISu@i/rɟ_Z)DǚFF卸ہy꽩 Yᾐ?'-A1]fvl>iwWOU^H1yUCHt aD!GR2ze5q?:k{UǃB?H[Y[X]]XTRHCOe̻?4,`UثWb]}UثWb_4gksjֶr ň*=øsj/Ӊ}HFk8Os#g#g#g#gx|d}m YEO:OdwL&A{]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثWb]v*UثVK_9yڬzߓŨykUa{\<_Zf>KQ [~SO.םXVw(&ڛJFIF``C     C   " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ? '?#/K>_;κnxU|h>-> t|@Wu U9+qk vRI/Kcr{Nfka֏iiI%ŏ{]n#" Z}i^+ߍ??⠳=?cw5pI>N| /ٟ7̾t_hl$h 34BTɕ6 ?_P}-͚/.E< SUCogIj]b_q9pMUό?<X[t[]~P[uhFIUUU1ҿ8< k鿲wq߈Z&| <[v4zuݲ2D2J#'Uςh~΃qM۽.E-ܞ|P133M@X0ouUL/]JXEvz޳mg3YHGRT8݌eHkk蟴էkOO֥F%(R\C[sʲ4Y<Ą{~ӟ.vX>%=z/aYt}JZݗlQ5щ' ~?=6_67W&k_ om%m#<]cɹE}զ|oux!,ImYe13p.2[84Oo|, oK9[Yx_G6.? \ijeZXfIf";ce1xBV7wxRNebNwTFIV T Da@>js|Y_:}yٺuGq}(y &!h;A 3íkO ?bM5h6ʹ,Aˆ@Yq |k~^nنޡO%ͭɦOig,i`M2#jΌPYw 򯎟m/hou)+Oq[Z^J6Xܣ,Fc135Ot çK$LeNc|Bn>\k?>4Bڇ)wimZ=j1#QjE*D#|eP'ğfoKQ-QTI%mIB tScuj6Zxkuʽ;D%*A 鮝U#AFǾ&UOa&m Լ)ij:mŜZӽýCxD?| |NYOZxN^VFd3! h5߶Zdža񍍷eqw;Y؇@:xu4O>2Pᶡ ]vqytwTmE7FFi2 g;_|ex~6c5nlE,wF.|X2 V.x_ZP,Mfd2n(gAWi?jhg|A:7n#:I-nҠEch:FX!?rgWH5_ڗv^>>ۥz/).eaR_7P1I6YIlK_eio/z"׭Y 4 (2h19te+ßGí{oo3>qmkCWoen&HPJG󘜣*7]OX{4v_h+ y-q ľLj]_=P|i/<7{% +`e:P/ iZqm 7_G%Ruv[*Xr3YZZ//aǚenuhYB3,Ъ-q Ogc ֵ.=v=2x A'hc?t $xM}k?>ϗ93+&~ M.ү4ֵƒGCmv/! fI<#6*{%j&fG}i(y@`[Y(YIf @PY|ou6>ׄ&ך:ͳJJ،LŸٿzΟi^Ǧh]$j>][+m;Qr%w;C|`[ᛍ?|| u>?L׼{KYh*H^SEj ĭ:4:rws--JVK3 Bnm-Em@-R+f+xۉ;;_|X>?gHQeΡo~4V\6 ΙE bADf2Y&S(ֿko J<)kZ?=7_85j%%xbAvew۴gkҭ~,xB5x~E/WMҵHPfd[x$YKF bQ2 ~E콭Dž5+ S~_K%6 V?))s7vN_eυVW7vz~7F vQ-B4 hi _Ie?floZ[<ϳf7gϳ;W)W v>$-2O\j٭-ϐq)Г#ib_~hoO'@O-Dy%qe7ޤ6vRxO 4oH.d okfG-(cdT P֚__|[tMjWƥylد緸`fEk1q{Ʒj[)D[220*==oo>-1!tM:y”Apb@] ]r+_هtNm," RK"U(`y_i?i [KPg;I$/x/ﶴ9}oj_C6uY?F]%;"U2M|K7jokw_bt>*/|ɂ$IjͅRp5|9ӿ/VƞMTܼeë!tޅAro~!xWN񕇄.Msg_\$pR|zǂ Yjڗ1*CZV+’$\CrKs4'XU^:m)skyi* :IԐA Es<{hݿ?q뗫ZZ o]32-,u(Bmsa@m.,4%T}̬f$΁( ?|?{n-gxRnE-,M$Zdo{ -Ke%O XgOͿi<|Y3cx~:~| >- ok~ !z"2im#\W<Ȳ0JWA|a  7ڿ@=m1nd+i5FΠ>+𮍭f77ڴE寘*˓gg^w_yjo}OKD߇6esL?\MĿgF~-kŗΡoȶo[S`))eSm89}i|X?UxcDig۴}?T{_-ryMpb+.|tៈ؟m}%kWK݉>V1'_s_k?cvῃ4y|Y,:(ik}X(51Y*h(k !;ை^KC?ئ6^h^BV1 v8`{⟋5էx[ /|=I#OqIYiqwp"b>cBp*fS,-YźWo-5Hc]Q  ÿk_C|egH/~Ͽv3vۻc8C_ֿE;i _CY}[LU1YV 9|s* ῄ>~4 |64[Qö/ٓpeU:}்%jUE Dm&H* FBtgZ׌/Ěkfmi/Xc0+ + }k:mimm)$`L}cg#l?('>ɗ6,y{&>ƿ4/÷)h^54>.[jZ(>S`1!63*'x:zK;BWm5nš1i#5(ˀ~!xV [m; B:Om*&ʒ] مLj =hW/ Jҥ!mZlSi/4K!IBt;s0=~`xC%=Əx>3.-7-%lȥ)J 2fOjn|76iON"^Y VGlI.21(f [޳E}GKKyF"VSR:/W/|S?Ncqx~=QıBjSK)t‹g6{,6ˏx>Z˜tyٱziYv@c\''E5^ ~Lj)1kV_@e;ȼu\L,H1?x?|ֿk g VcffĺbEE]koݬmcfu-*<-b|T5~7  O>(f񕍢sb]f?2h|xS_?g/;GW:? (x/KO 6.D5_c6({| 8?Zh:jV8V(-"tPZ ɱ|uS[=C5kk}ZHUDmڿ6@rvwԵS-| ,,SX~J$d|LF!o5v@¿`='P?XO>Ťr+G܏V<<[OW>|=?^=ԥH.QAB't ~^?ߍ>".4fZ|QS[Cgh#33C@%Tg*wi|&Mg_]E 淅$HȹeC9fZ9்&J\zǂXmmmM Z ɛxw$h>J߅~_ 3}yKtJH*[ wHzQs"vO3s1q-徫6鰭 ʱaSg|_X? vk|sdox&gFYVi2휘UMsj}':şv9m<_vY6=hE݁l ė u Cg|eH[-_^o@{h3ҹ_/M rh^6MV+ۛVP#i"et q%z Yo'?Ybȿ"<7ms]_O;Y|7Ǩ۽նun$)eYX@UQP_^æ\]6 FI|ߎ~%Ayq HvX~QntW s{9muHVnaf8b3ۑ?vJ/uo{uaP闑Bcddn6ebzx'jiq]\=sunY\^ npk2!R>/C$%axv[[GuMF#mLʧhdrͷEyW_#@==\vwp_=S 2gET.$C4[ Mѵ?ŚݼF25jmtk—f䃸Gp%f+EF'$㿃/<+{iv}KVYѯt[UGKRv ]T#o_<%UO &tXu pʦYD3[4'v%kEkV{4nk[ KjCHGw"@M3◆5:Xx7z<+/~b'_ 8"?xGre㉄B)|S;eGUJ|@=όd.RMk\csqc5x"yQɶ/UCoo5Oڷ_g~߸s7OXxq>iKY̢X9n@PYh-C,[2t>&¢~'yKHuT}:Į۔.gJA//ۓHPat.4}\(򜤊m_YtPBnNP n,4Kx5IBwbXZ>)xcY~u<*}Pcͼݧ O~ѿ(\1kZ-xDn]7240]K,!x̩ Mm3'?-u ԄZ;1DoF-?.m#HDy2mh+L-_O]B!4ֱuv773[zыy˛|1H'>Ljg%_?m<fic^d'on;8~J +"^խn|Egy4}.óCex]moeӠ-%źYaOGX5J'úu/ u4qsi{$yL[-3d<}+EqW<%|/~!ɨ\M=N+M:kx om34I7 @=VMg}Iq\MyͩXXwwwwB8 &VSʢQ$f8Z'as\\i,뛛l Sy~d^Db@7YW]gD4o+)t_1 yIUݹ[ |k:ޛBb< D_W;9bݯSB4{\n D$HTutx++*0ѭ '֮&ẛLk$qBDyIO6=EP謟 xKkh_k6ъIWGFVUe p> |+K__ڗ,FCyu-YmlfqsO"F]V)@=V?i I/~5;闗jVz5k,vֿgR܈YdUhͫB0C*W|d'ŮpkX}:;hż;iȟr&MVe6^[iwG}h@YI*FA? i~Z.ecm4L 4aT $M`|!)[q5)VYTgY3npX i<%1k\>&9N kx/Z1o&) _1>ff^yv<-6mr2h(+_<%UO &tXu pʦYD3[4'v%|d'ŮpkX}:;hż;iȟr&M ?iizٵoۈRCMA.r$:$qg#n +=wMZOݿeOO f_,$i,$dX̾⟉dվ`ϧ/kI-/Fw5XoJ3`d3(>7|ni^ -OfiڅX-#>LM5/1ߴן”~V '#?}O_j߷f7߷oxCD֟ĿỺ49|/}r^Y\IEY$ĬQU/]^h_5]gW{FM>19mf z⟴/ƽs7Es_'Z}7li`u}M.psog6-Gqi鰬[Wc jgI _o Jk'^E#Nȗv\(nyv& 9[xVwv:UBHJ HK[̻d6 d@;Z+IOƍskRk_ Gf1z+HM\߃Ӯ$n"x"g @lg>-  qI񞣳P|8G-P۽&$OAk(kM}+ECwwxqwW|= o j cD>ҦI6Mk,][=Z(6O >Ax@n4M1/0v 5C y8cHVZESU|Y8xW~!Ӿxêhw}~6֗$mD3l m/Ox1)dZ8gXe*܌8Ola]ijwɥW}TFv9_5|$<5_7cŵbJ,==+I/n>ZmS#>5mĶ~wX/čSR!t{.Ð=4Zqkx(c_|i0kSqoy8^.-5~DeJ@?`>%g֦ z_=&pg4to7nf#,_3~Kk-CI?I(1|@twAOkg:T)m2mb˻y}K$c0~ͫ #_CxG^ _:|xoP(.$UKine̋kE|z¯F-?j-|-z4ߌ; WU?k O>'[]R]*eZ,j`)JG"wyCq@6W[? ;exFxVm:=ƗagSMe-LiyM1/4CN_^iw7j~WԯT|u{"VHL`h|"a_ZxSZuΥi3josDDֿlGF2K''^.>'NԼ= I!AOSiveՍȫ [r#vW_ |1#2kggq-aok'[ʶTy'u6jLj,fK4WrK`CG2(C0 0 W~?{68DHɶ$1ʉZ`/񅥇?W-Q-7M?-"}3s(?`Q@/umSLJѡ- f~(WB%wBΣus>V++,zi/&immA- M'p<5 (cZU75k߈ovv򵵛cZq m1ҦI6Mk,][=Z(6O >E|UNY[xw 5&/5X%MŵʹP$ D壑Iڿe[|"4WDwyo,5}[PNPwBC#:bG2U🅴xWFމk-GOO&GnrYXq&毀~4of߷څOk7PM;y)&6Rq'i|3w{j'>),F \M}+EyWl5 ;C~(0F3MgRW!H'Yj6bd@z PMwixt1o6@>DF~N>Sh~Ax⯁]^CY;˔Kh4Q0)aYEݻ?_l3ᖱ_YC]!M6{yh14P;\a.*\gwxcIW1J)#F L'~.<)|=O h>xT˥X4RbD8̆3/k>_ދ\|kXz,MVLHXt;n"dγ%G4ۮ#6?Cgcjo__Nϕo/kZ(4 &KZW K^4L!X55|ah(9D'ymr{&ƈ|=M|,lYQ|ID{ܴPl6}rg|/Tz& 6dawme7 O\m1I 7ϵcgqlc5:/N4OClJ -_Y-Rwro7oi`fyo~%ÿZlj~$jfiv~4YƗ [CrI8x>ʢ>jO\ }~o:W6>W}|;y5j _w7ċ;BH-kykx妁x&eyi(D_?ڇ?li}}_v1};3M[+F> }cQ{WoFedkĔƹvHl..Wּshzh-6Lt5Zʋ,P*]t3yrI.5ܸJP|55#psu!q\ID'ʹE*;m<.3מϩQZʣ%+5'> gK_e++ߝgɝU^Hn/I%:E^坲`{$eSk}EdQ_xD~Kn!%XM^ RCe`T$іhAy&_~ ) gak GMG˺Mfʖ?>-&k (qxJ [mb+}Vi-DF&x^q TV&0# ,g^|eD)C +Eմ[f'ӥam RMIJGPʿ>8xW~!Ӿxêhw}~6֗$mD3l xn5cZ5" g%2Fgf&[E|c\?.MKqJv7[ye.e2mGpy_4A5xgvwa<&2g%n"/>'G+Pƾ}8x?5K\j? UbXAt,`xJ Gl@Ѵ|<<YkxG]cUo 9ŝ tEm4奏͸_~;|pCm a|2WT4B-(m."I,fx3# D]W~$X|/^k}[z~kDž4BZ{. kCrҰfvkq¶%Z ;OMHW1A;Z*bdVxдnNkZGZ[jZ^kEߟs x~u%C*_ܓ\HBڅyV>4/V/gU- 19A 3wum_#O77i:Io?Ooba*ƹon4f]Sw-Dm$T=IBv4Pi'Jeqg2JvpXV}\}%( ,bnkbºuSd uv.4,~i8mI,7(JE^-O4ZhwzLt"W:}Mk{+]58F?g_O[Z)4P-FA8w\)(w樉D@Zu&x/u]Hye ˭#J4'EEm`J#`X~7~Gx~ - >"-5tY E+'ؕ_K!wT[%Zai~&Ҵ {<1j Ԋfȉ妛 G2VL~=& !ak5] cAPU#Ծx3Te[hޮ~},R潷y@<<O~5ڦdZ2M)MYBI,KdBJ[.U~  Y^w펓]:`gYE[KYȺgw,ԑ/tkyii^uK&њA}}9ci6ψ|G+Lk+O5mn.ݧbQ +ZN9|> ι&]0Csw7qZ|iI<('%,σ~ zڴ5]N=fQKԵO2,xRnC"Dnn~>knqt}kIƿyo<jqlZI | UmxNƥOl5[/j&_{muˏi"KNb#SG]Pk7n\PEۙI1FTxKӬl-t/*DddE\驒>L͓×PQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWe֣x^[^k6cm)(rNb126<{OxWh{XY.:u9nm>RJfFty_?=|W3gwkk a'K[2{KkA%(iݺ'E0 SF?tI>gwhsog5_Xx/S7I~Ociz-v5X7?jH [8 v@: iiOSax{GujPWĂvj3ͦ;xhH"c(1I?HoiL?Vۻc|ͅľ_y~,j,>ċ5-C-IMZ2,?tjׂ<3ĿMB=Եk=2ZK5r$Df2fV-"Q?Eh_^ !|ca8ߴoխ]V|LNKO2Bceϋ%$5ݾPRӈ与H QșqX4YS7oYo+ WRg˷ymj.XqZoċ%> k !7^!KOQMRky?+Jۻ,K(Oנxm{|5 ^cZ >KfKn˳/^k@uW[^? _t; iG1gXL2LDk? @*_1Կ/.߉֖6+~ I K[wKg,&d\ *;BHN5j}P 8t-KK|C}mynUيf`9eg~S3IlCm1tkId R; xmc!Y] "HGV/KO;٤,l :$QʙF* +Bgi|5x3b&ٯm4Ŗ lgPX ddx|ܬќH k_:oSIޱ֓PL`^mX*[BZDA3q6t^0ɏ? #֬/| [ifM6ld\AR$cB> Kυtoh_mu(u -*#~[j6[. 8_qN浜`F@s;ß -/um<;?$Z%ͭwL-p#,ȓyao9Gh_4ƛ7ҴII',:,Fk}She,w~[j6[. 8_qN浜`F@rk>)?V_g/[Oټkʹ͖1|> ݿ/5Y魧+ihWQ&%Ks$AoWrHQ*<15Y6R X PVmcO:~kkFڋD$k2݆7W3ĠJƶ>WWUie14K2pAq3ȍY~ѿ#֮s wp"I44ikp3/85]ˢexRIK^V8TNkpIƪBWo|R};^m,6Ihl\Bgd#CII6@i-[E[|dπuqih\jnӮmn/:A=V@fG2S?]EJPKtk׺j[ k -yܑnVXm___hOϨWXYn$o%"PZ5bTDQ |>xS/|c6]v-+Tmfu8ij5ݬ|.n#ks,{/xwŞ!t:KS',g2-,C=2F9>־j_K]w-~˪Zּmn,ϧ YAw,eIv= < /Y~ڎciWֳwlr)xjwN/W[ԛr.!(.խ5xVt؟Sӭ.{X2AOZu -tk-2&mKpBS< *QҜ"[jMǖOCԨW1j .5YƋlu M+VRgzťhb'ha zpB5P"Xë[<%"M56@ۣbERTRpZUn—ݴ*UlQ2WZgI/?M_}fivSxPM,H:L[|,g;/E%,wN#t?RyimI8PZ+Xwu ~m<t{OVIv. [ϖ=M\#E-dd_#߇|1_o>L׋;Mm乙ekyrK&$ E!St[Uc-r m2[S*H t@%-^&X#·wZޱyZ8\ow~*|7kO.m\gl|!s[.M4 [eRcieUXf%+ *+_<%UO &tXu pʦYD3[4'v%? )? |W{Yjq{W"vӚw46)sx_ïxs7N{d?_fSy'x4!T>=BЮ5weW45Z4B(^C! J4A[Оx NKRtۛ&g4i 6ۤ!b 'h_۷?.-֜Ϩ̓+ܬq)'>*ƟgoԵKxo:߇%{ J/ɕ!Uo?h4Ҽ=_iƝxS2ZF̳V9 )o_> xGuOxB@] SŦkePۛ{ M y_#;>J4Va >(/9- I|}7B" p"W~|M/t7-&O-3GmaA?4F7d#6$ax^i8utv}:L q-bi`T͹ur$jwٳÞo:uMF /-o"4Wb)K0L`UWzV|'/>ѼI]}E,,n|΂TF\\x@4߇_ K >"Zg(Hv';OLGO\xf×[mӖյ=ݢ;E|) kMx] D.. K buh&̞-x$cm2#J]4XExFU έo>{&8chws HV#~,jpZ[忈k ѫAj.Rh$ltA5[v9m u~7!~4|6N5koO{1eo4ʨDs U^|L4-ֶ}Ff[u.mGY7{| z`֬"F{KQ5ռosfBFdb:cS-nz (Ү5>!Ե~MIT7Ztw$`]DDi4}wQsCxnw9nZٴDǟ6$˟SMKHت3?ڵQ.eOƳ\G 2BApk.t>+V˘dbY,4_x,w_^[B͜vGuyTcdגxW^p0 2Mrn YV G7^yM_Oе -!2 p4D wI"* -.y:gd/W,VkΑk۹.Hv/C${i'WxѨgi5߄_ߴM>{&HYI4-<'*ݕw\ gO-7 >Aw_8 2.i۰=2'!!la%nD! ΰl s-xƟ -~i}CPU mSAo\¸\8$exwOq\xcPtm>^{Coq=Ƴ׍A/a< h߇'wB;K4Q7jR<y X1Rո|my YG5 h̼;p@nY>D(]⃩i9m+ND^WwEqkqgz*HmAIJk |z,:Po4ɬ4_X]R]&-nݤwiտ [q(@j<dzLjfmdiQ1XvеK>"}*cnsQ7oݏ/E}ӝs˟5|\gx~"5,O4JP+T#>5叄Qo뙴k/xPNk-yf,qwN :k"v'ɉ$0hd\;r [xKVḮZ}smykY$lW?:_E񞏤xDΧb=Eooˬi-~fֲ2|9>ѣm-u&.uI/.g[:+M1gkQ++M2-VUU4EnK+AtT `_+~Ek'е95 wQah&;- bWl,K!u*|_ֵj&7)|%n#9˧?"_>yQ3+uX5OxZݾdq^\ɅH}6K o",HZ77:zvqwog5]Ptbm&:Jẖ o :h׷vwqB[EyyV'f!A5 j*f׈4=Z|W9{ۛ t{ﴺXYGuE <п|O?~0|) Ww[hw>XMw-vѽҲyG+~5}ψ-mu7үnUCE(9`UYd{y$,ʮEt^T~%xc)suc%O č YeS-QEQEQEQEQEQP%9c FROZi(?@]´?Q?~VGx =GWEr4z? Q\+M#V6)C-ƙ)ڔPm/Vg ־uo7ċwڅhr@@QNH݀xv6p?'T7kpxYW V͂2+Zc'XIo- .YSMоx Oּ3@i5wWE)⋕!־(||/4;i͠$muDy7&+eaOxN\o9QiiVVR(c6."I#31Q_|m|7Ni>8iu46RjZUV( Te8OUf_|0Ρr'KDEsw|Z)-?Az/Ï~ ԼChnuM_mlῸ#Tr"VTxcdU;t(+⿅dl/6Du%-YhWyS,L49]0X_7~ >[/~#?ktoG*!ӦxR;% +[aLWğ|Ph ~5=eKw{er p:a;v; nHeBTV}+vďK}G55O3MĪҴmfưCqwyIk~;x*]'x_S]M#w!f72,v6e0xu6^,co]6SG &Lb$waeXmȥ.O@?m ? ۿO_7}ϗ뫠(((((((((((((((((((((((((((((((((((((((({'ǭg⦵.84 ,xbK+z-SH f.vn+F񭖥=Fை<;?kv/43*-2C!2&B 9mhaP{^^{Z<҂5jZn£jdz=գj ~-t=4,n&Ko .[G#|<ʡAc($3;" )oAݮm Co^I6t0v8?۔T?^^Oq:EFoo=sme11˄%cN_Hg|5jK -̿`kX5r\j7 0ZŔYcz>5J49_/I~ R̴&2_EKJ+5.No.%/#!1X"p# ~'x;CmuKŚ]Z BR(&- F`x8ь!= z_]x^bю6ȶr_?^HKFT|"_o|Eα|ö,j=ON^Wd [sK:FۮxUV]SU:\)9(FJӞQM5r^kK~1;7 OQVYb DљF¥* +?{3qiԴgT|Pu 9aKts-U +BB#nj$AnkOck7/b?{*`ezb/+OXf$vHʚt Մ`";eyv*Nh?H6&t++6`,>s^ TOzǃu]3?x{>y淊&6y6,Z+wEHUbl~"eχ๴g02@%Ua柠}xV-N zHk/$T6G!ٗ]j˲5]LDԡA8Dx~D3d_|4$>X J+5&Dxpo;ӄ؅CIA^QeiGvz۩u -e ͽ`FYyWĈ|oVu+_6Dq˧?*ҟ˯'P(G 0c3Zf|Vֽz߉|bڿ>"h:FL4ȣx<{rb$K-ՃeUN\UKHE;K<~^Ѻw5ISc* [%a+څqӜ`!_Gᯅ-5T~5jRB݅P4h#An@hsB/x--9SpR(&g*1勻K|Rn-ۅKl."Om+I8KG}j*J7LNI >$_?C[)Ol<7;<6x=姉4W.fT[۫v6:ɐo3t|+dog  |{<_d߻G?e<Ǜ/u|?W~95ޙgugvm&kn$ w(WInҰY'`01sneɴ7$vjKri$i8snzƯi>Ʊk\]v-77vJH2(W+ʑ4Yĺ/8п;kڍ#Wi%_18wY >Jp W4kOmj>Qwauhֺd_}f ]Xmkk@ ?w'Vk뺷dl`Qy\²͸G@zv֧#$TK6n+;~kּA[oC:_Maka-!"Wt3\CD]_Cմ F+ʑb $HhWt{t,. *ԅݕ"zj^ӊJ*RdII}=U [>u }FK{"+id6>dl 8! xźևZEvw`ԮmXcvor@Hr0|bO D7A=G95Y4[MPO&$/K 4lY#E-ܕ 'qž< %xW~/,ir'G$mgv ^q|mmq1%aڮUa&Rܥߕ&V|5cx]xH-s40m*̠Ho>/:g,OkŻ3}7;'cϵ:nJbA ؏w9mf{j:|=kW%7u.7OnUdwW+=;7:]S+ߵ>V{ʟj0USݣ=ZMKG JrI[+?.Zwq63j/\+p";s qKŽ\H9'<1kZ{RևʼG-ǖe+ }\"b!:?U΅ֳhQ]ZKus%7 uq9H%E1 g|Fn }{MB-R·Oflakۓ-# ְDqp†8ۂ.h|2mI:v.+T*ӓX񝾭k.kIjBa$A'/qvV9^4kOi ^IEg0~:񓍟*$vwʝt2{II>{ojCZKEr,D( Ɲ, jua!ƎpM+Qm*gg#g\dӭ5k3z&dິ1۹JckFdY6[NS'k{ݽ>sKy^/M^\~SA=ھikw?ml2wU] _O/x{COILӭncPDH3 +ϵj>"MK_~_t]GP`EH<# 0@E eo4:*?ZیUեiGk7Sw{3Y9YXf^o/ KHu ݰmc> xo6<s55LJ:TѢ[؋jq,bF{a3(FW%2zOA{ٟ\Sh|3 ۧZ~Sŵ|w{5\u>V"~!|7&NcQ5o yFVa)&G3 obUBi,BNI4^h(E[!Nm^ht1׊|16H}C#{΀HHQhF}$n \={߉|xAԗJ|uCZu.w%MJDs dJ$F,EcOkW4h_]|-@kG>$62BOFeUYa#%k=Σ{]Q.ԉ yڍѷDpo2.&g(ꒈA?šxN: 61[R՚o64!ϗkg Jv庅}|%zM]jP3+xKğ=kǺuvsAo{*ncmB4k!x>xĺޥ; rJ׭4ɒ|CKak=iay5̲/+EQU~c>xrXnw6hڵs6jgh찴VC"6F+|~Ե^p|9е8mauvш%2J,y|X >OX,K4Q%ʤM4+M[7OU+Š((((((((((((((((((o7g(FW(_{6b\TG1|Mo&_x ?7^Eukf?? _Ody3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&_x ?7^EُOdy3$n w7uQD){8vG1|Mo&nC~R>G<5K Gm%x+/TS*a]}LV+ͧrm~cP +,(((((((((((((((((((U5{~~;ϭk^+xKw^Ηj/g%Q,{J()c&$p@>u}gm=5 O ]ULJ o2xpJF_%DVG&\2(iNKenY.Yyc$ZWE,ۿo,?4n+mɧ6l&Qn<24:P_~$jL>0OOw-NȣKذO~km&Z/n|R:MgNmyhIĶoYpK.@ E|+63%xg0ѴK>:iZ8O2`06 tWƺ72Lox?4 +ųv[&m6f!s<ğ!%Y}ҼEkx?"ҼAªǟolfəygM0>EWZgAg@-obxC5̰E p0V 5QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEWA\e>,7 zk+ZtwIn-!ɖlҰC{]^?/Ao~,'mZ@_c36⬂'((/꿳MOoM,ڤ?ȗH!RD+den؋V!|%ozmv$ijjVZʊΠymK<(D>2~!/u k !_Wvs[^ٚ 72E|k WW?G߅Sj۟ ױjLkI`+S&0OO<m?Z=DŽ=Zo*ϭkj'5=AoΑR'q*~ʢ>5ׂ4x{-Oj,xx21kVWU8<++M wM W#'&?ھV<_ټߛgٷ|U_qvԛ__ !M@,eGK@b+VP >ShR۹,;MB",<D+C:MɯK>_bi;iu¸oHp4k[n2 ƈr<|x4U7!o_|mSxP}jđGeԧwYI$i49fWi$VOǶ2⋟Ծ$CCV$F]BO2 X1#(~ " ˍ:ŭtsi&.iҽ 3͖@c&BTQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@RVӮl-mn/6qM*\#yLqr#G2v碒9_ouUL/]JXEvz޳mg3YHGRT8݌eHhO|X?e/KAew~k87.z4Z_Ҭ=2QoaK[IVXg2HVR`H (W)_C|egH/~Ͽv3vۻc8C@]_F⿁!7;7[hB$)Xq"|-:gOut6mbD%[ uEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_.[xQgD5H-]k %Y&v{oUX0u=2Qo|[5ͭ夫,3$GRC+)0$Ax?_< g}@`'%q%Iy!D<ș_~6򖿱[+=|aoiʂ/ʚ~Z^,C#6c oլf}V-uk*O,r2g*1qZM*U쵫]mxkkЋ UO03+#yJ}>xQ%3\^,s/ы+_/{, m$xS_<y //GåMo{uG-tM/)E4ܘeh#X?[X 5 *-BIIX &Lh%5 ⷋO>'< xN->QചKK{.v$'4//HҴ/vVi6/n0a"aUw0ځ~+\𗊼mc?}YC4wƉ2BIp%71:0&2#բek>3ϋ414>xĚmkZeKg4ͱL!DVBV-_G^okѹյoOg9]wMq $h($>(|Nj~|C /u9"tCnm+yw+#iiXPEZOKtx_^ֵO9|_\xl.(xe]8\Xզ1ǘu%EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPM2kg{ 9iܴeRFEynlE Q(_|1&Ej }KMu${_*XYLO-1H KxS4?d{EuSntO i{[˕O#TH ؠuPґ@jil}M5Km*ȫ,R4RJ$YXEyCo5+]sOܖ\2#ZM.iw\ 2L!Vo=|4UxXϫQdMGZ.WiɌ6W.ۉ{O?1ܖ~|;|*D6xIÿ$E÷Ú愺Ž ΃m-Aѭܔˍ̉=+ŏ6T|em 2HU  BGZ}EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP٠F˕}ڳ;JFIF``LEAD Technologies Inc. V1.01    $.' "+"(6(+/1343&8<82<.231  1!!11111111111111111111111111111111111111111111111111  }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzw!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz" ?( J(|?C?QK6 pOWtrhzqIu!c|?p<[^"ԴvTHM @zcqlu8OL'"IZNR;KG%5)mjga+r@emnqQXğiȖ<}+{C1>kvWa:H?۶A^ql6ڹlR1w(~:%mFC@k>{-:On?Wyw=/UMhi?它 v,v4{(viw=?hXs8\5n/ K?tkvU?/csB_G5,'_.#zݪ_ '?Z3'4}^g}p5?qՈ!xFO !uw~tWoΗ?m?#e|ARRGIzKΓ>O_W]Kz֕'J;2Z@G$J.$Kn fTH?J/#2*tֵ?VnlQ_/u/}Z~4eќWx5\J>#xAg#8O~3TT|}5Ï?Qiw]Fkx0>!zRo)}^Ac<џz/.A^ۿ֫1VctڰMKL~'_W#lj-0m<5z[}AhozZuQ9?Hh?4@2/okݺ?j ?y/Kϰ;Ex=?r>(M,g=>Q^WǏ^DCT㯅nS]a+gO $4 p;B>Zі{QHaEPEPEP|z~ *#R:RySs>?J9RQER ZwRLAK@Q@Q@Q@bPEQF(Q1(:t(? ( ?EQ(qy ãhG~̌ƚ,OKۿ4f?57 G (5 ( ( (>#>:׈3T4=]K;qu&xƺ{} ֶNTկӷTF;AWu31 舒%ջqgpCk+:6h(ZCvEǭGpr:a}1^sx"M}N*Xo<}Jn╇r*1SmfOTcÏNh\8aIHaEPALQZ(1Ju&(R⒀ ( ( ( ( PC42:2ss1+t+P(((gцeC'm0ݷZJֱ|iόu{cV u]Mv3z$doxMF->v?dNM|Xq\hGpum zk,ڷ-2fy#k@v[O_v]2%<H 3j;J(ii)qF)qM ;)= K|ҝ?O©E9c41P;-v35´DB}V"+6d܊dJia~1TѮm:wsS7FG<.;r=G"Upp* !86c+IS*it>%J( 8 ʑCI$FK]:x> 8^k6]} / 4Hr⻈i#>֥RП|SK,{MJmsWz5l::zcIBԎxKO[=yxw6|9nҵ@?oX5[[^ bFiIBE(f/J2ss1+t+P(((F5T/48xf) > ûZa]%}zseQeQIjq:ʽJC\'MjJ[ @bE P3Ҟ(Q7,Ū=G2i1Z\@9.)@a\tb#d#U > K%-y-=vf#N2\Kz=[[׋ ӝ;!+;CBƩaf: 5LŧB~if~5vrcD)0: p,4A8hOoWD@F=.ie}UQZd՘edF*sPѢk7AQ}uϼx N| )E*y(l/X"G΅C |]&\T}HfQiCEjɷnb}$SڣOyQͼ[]>[Ď:R- 'ۑN q K?.ԇr Nsnt3:|1zOa䷠iJ H1֠w"d;c希5&$C󡌑 s4;7 ۽j\q3:s֋[x~V[M>2R}8Pz&wTxwHмl618۳H6jtP8Maׄ7[z?08qOhnac=~z>:f׮Wu/’Wo\"R:yvK"<3CSmda˯(IEh’32iR\}$hp;q׮8|nGR՞uK[_:?%۱OLm #Z/51z zbw⯋tjlVhUNB+CIm; A&x}:]ͭ)Њ_}4c}F%K8JO|0.b=;Oh=~Tykme1ÅڿjnL~x3 CҖًG=Kf?/J2+g]/((((s4k7jOωsORh2S&maeD=o#~i.i,'7_ WFC(#2I$meou d{%3(E^0Oq[$Mφ/ n]I=\m߂Wh|j JrwL#:/|F/?4*̡U0?욟_<=}i*:љVs5,?_aQ'فU5<]x`^-~'`Lm{o5cICivH{B3XOQݮCXFr֍/W=ߒgk> nYw2s@Oc桸%dkio75r:_ڼGs,.?.O_~5ڞw7 I?UZ^ST-.Ln+.ɷoJuU6(g9_oe|1<į+uB(MB(((WpΏ~U i8# z>GVRufy[etm >y1ȓ~V[uoFlo+w\źeHoKy+wIQbD2yz~TU|0 G+Yo Y5qh{֨pKMOOҵR H캏qpA {;lz=gsBFJ't f_??fz*jB!p[1I #﷟Rw5;o@5i9N@㧉[ y+^@44Gr ncVQ3I#Ѭuj{y۟Myy)շn/$_$}aMt4uk dFV!G?q2O,%$ē[aIHIr?5DԫI/ n?ZH3RV)I2:)ON)1u1=bWu#`щ_EQXQ@Q@ָ1j'tEk $Nv0K{Nx lQ3[~O ^.slw9E~K{kLyh!T` Yڱ:ؑ#2IPZ>OoLfC$k* m}׷y{?1IԞdW5Gy[3k}O\LD;-,Svp56FϭB-?2;FI,gA~?lE.TMGmmS=\ݢD%OW\˵~3$'Ԁ¥ D?U[.}ʛ-&oT.+4?FtckeO:RlwϸߗzV~Pp3nZ$&ߑ9˨?wAf]βz-|P[)k!DserO{8Ki??ؓص"H{7޽3$S |j-rΌ*9%mQq"Ek\u""= :'6Q1 Z1Ml"X9S?. ϒ?t)X.A$4@G.^}EN+lh-I #s6hoB1L|8E C{GS4!maj0ސ- mRhkhW NH|q*R V{Q~jJB.u~tl^[ F{TұyqJ14ۍWцE?d1: q=*iX~DA` zI^=G"ż~j“mŷ*a9)>\zbSkVH}TTؾknz#`fPG F?^bWU_;h!EVEPEPHzZCúC5}km6ܴXe8u#oP3]r.ۣ bVITT,Ol]Wxx{Y;ur7p384E( t<(liʑJn TO\u*R0E8g"x?Қ< CБp"l<mYHS ZIˇ_5|:Aj9s SS6\2GAڶ$thϞ-HZMntN.x{i+IWgma1?f_Un['n-GD+Kztu]4&_?!V#ۧQȞE?`yx?ѬО_rcs3&%Κb)yE,&=rƚ-헏 w]? ]w}$G(P˜ 1,~7<% SWsB3jTSSXA/E; !s,C˼NCM[}=v;'>?&0'I>ƓLjv_վ⻘!A7dɑa>Z={D2G-_zwsVZL6ʓx #1:7`2#!w);gV4RQ2_Tn!2z­~|?Ji|HN();iꟳT'u ܑ+jkG񎢒]e VI"=qt-d?ғE)_ʙ:5˱#ӸU9)9-舒#q4RT,=q$mhUoƮb?[˻BOf!Sju*"Hq?QQ }C$?}Te _tMc.̪$Cʻz} Fm|RvaW~ʲw'}=jMc+Z^UFw}۟6A"zi 񨍴:S"}ECFVUŧ 5aqj<|C'm 孧/?4qf7ۣSE0skrvxGPѪv /o1yMR'>gJAp14~S~>i?3)"i>!M@X~!ILA4߲U~V<#feoj)6rJ}d F)|#_AWGQXQ@Q@!iiC@3 dP3[m-Z{&[ɉJ6;Hp}gGN_ ֟/.4Rk+kR#fcxhq=΃k,-༽y!6RD,|#W'x +hsn%axl@ ''U9 ~/ 901{/Z^>7Y TU8g%wNQXEu֏P/t$+LZ"byqcQQqUw4GzQEx(=E!@ҫ!$O񪲪I.LvQ̡O27>^b!a`3XI݈dskh:/4Hv?qtP߹y?>H"]M#o,zn Lus8??qU$Ccsp_D&n~‑l%q )8=x4Wnq|ī}O?4 AEn S,kzKƤpVȼ^L)?¦ ;QEM m,?a^qVp.Jgsى)8Vtq"t0E޽GՒ0F1w2XԸ)t*hwQQHap!}fj*61M6?b2*0Cݏ FsjXu5{uSQ"scC>WYEgaQWrVV__F֭M*,͔hUib庌D?Qζ}CY3G)y Odv%'ߏ*3o=mOFH.8AhTfx3-gޤX'EFmOZɼ* ]E\c*3i*2O9Gxa 'o/ȈܫQ?+ gOPOeccrKXTmi רSzӏ1ϼm<0_@׀~<[q8 ]Gzx(:((4 _̿2xg[42· /'aܵ7"ne$_z=iq? g rѩ|F,:z=es[64FاjNv'XVWONtbG8#Wxz$z|Ŏw1O?OxI191\26$erz(袮Ƥm6ͪar'27=*quq`knw2]]z;Dr{ _Mj܋"Í#L!>'jZyJB@1om~ Bndg](肴V4PZ Ǘ]i^Ej(,(0QX=C!t*I!Ve sժV;Ffڳ:`HlCHtrjD%h\c3E5z  {ΤFȕGӂ*,'"1>3вiH8)Ӏ\с*C`>S} ~>6J=g!*O{]߼;teNuCPP=# ?ơ.u켌aX}g'#a֡kW 2(0om6xn.;fhi!G}EXxg =#9ub{M"E7P|6~A08a;\1_8ȟ+j3d3 @5O {%B_Xfɴn?_bcͭ8 %ߛsd2H:^Z|rV[2]Ky0^7!{;3L:ftvYcipŞJ 7"V y_wwۢ-AӐYw7'~X֥dE6gzd60|RJZӵDQwW]w"YօuFe-dRzTR(Uz7oEV#$ jJ`t?1#V׳j*Xr܏k%W 8?SXFMer) )aMĝ`z`w\: WcװQaBABh;0Qݥk$kGU}oCR{i@va k50a{I*a;0i\u#)Xt 4(F=Niؖ&~Ըߝ.yт4M WAx:RS400@#81Ifҿ2U[' M!jE&0=6|Jq8d4|ҰBQ\#Lv^nR+vM/ t=I!d#=~"tb)cMX(=OTlN8̟ #XjUf\G=)dpa8aNrz75[$5Y}*:#+ZZp8CIRo ><w{q 6S&9_ټeo/Ȫgo,7Y̙O1W8aab콋b 0Yȟ }Efo/ȮQN/a}}j3,j uRq Quk*|_]&+Duj7=g^H_D&0Qogp?ѧ1sԴn/Ǧ~q]AJ; AeҽtNG/'*N^^N'wQEs!EPEPHzZCΣv5A ]Kf]B/p?TNoy1cDyKkU>VzsʜWsv1sUlaP="C?TPpe_ҭ#ݿ٢X|6ҳv^F\]+;(E>{ոϢ߷rҢhQ|sV  n zFV rl?eUZu~t{%9ߩ]ysZVDB+˷ulj. iZ!"wvy_Gmg}-4{=g:WLX;>#1W#Nށ?\88ΣGgJd~nN rxIttJ#%`v8<kݹ5xc~T:QnGr³F:W+jo}7n?,KG9:+K_Hkef?J۴|.#jݫv$q\#mnvNJk4w^ѯ䰃GR#k\gUW:=" {Fy kqF>>R\&r6$n99j=O:t}J&u/&>lzt8J)5R3qiel^Y)o A>Z.oVC StS]o8y?q^o8Z :bq Wqҏn(җURҁ@b\B)1v)(c4~qha80܇"'0♷iܔRdeVNW#cMf Է*M[3`lr;⥚"6G煲cgCRhx_p)"R"Ȍde_}*fymw*oC'j#ndھ5 E]OyWc *&oRyyœ2e#/ѶR  QYx_Y#佈8Pa֢{cmh3_s˲,^}GzPe*苶~EvIo+ǘk> >{ ^ x q~WQ5ofnq?dΈ_/ȯ%yW꽥\0٬<?nƧkBt(!Z +g6nG¡cxzlzoosm}I& #6y\;קjz[rzWW!Q\PQEQER7CZF->~/+1VVqiuaduZOe h,o`V.go?ĝu qo 6oRV"1*YL$TVg4յJlҎ4òӰ˱6kD-pǹwkƫb{aaon-:cq1Wd?eM:Y?-ۙbn.~X#hۧiWYΤ} ``"}^oNQ1:Gmo.H }xwP[=LkU J~v`S0ϧZaޞf1ZqJm[|;XCyCtw{fTʎjեZ\GC?8 cҔuls6ZdEP (4PiSYGo+IDˊmtҐrtW7vﹴFTgK8 $ԩ&|.ӆtp63mq&WMHgʼ<0цfxu*W'˼ɎiwW%R[/JKo Qwt0Q5yw_®^аMjhK oZlVt|98u:h:p5H6_+PwiHoV ɕ q{5 G1 ,r"o=M~_B0&!0|z/r3/+0fZ_'9Cx魭z_esi]H?tck+nBw៳ŝů53 #h8ecW׍V{Gz{Q\XQEQER??JZlq>0ա׾:5pZg/|?X֤귅gy26;P\*b&/}>6C4658+m ND6hW5g:!lq9g9UIP-#>޵=g)6P \?5bI>7{]}Qz$\F_+b-_CƨA#HS|j#>iGtjyw_ Y5꤬i#^{{mad @.8sqO\*0ǹ1z:R g1iGJJp@QGJ(QEQFhu TSF`W6/= ꟩|G³h?Z|Wcz=>S^' ]ןx?^nҧ=F:+f2ʽC>GOQ^(TlqU3Oc)_${vϗ){T }jRpp׬ fn=m KͳmapR3nvH= F,6NPͣMrD\FVhd >ZCs,p ρăWhb>Zh1V,RD]J)/Jִ|p_? /ͥ%Ee<"옏6_8~^ 'Q=.O}捗 q5qO>+_^7}qͅ±+n0_q^[f ?=*qўC79+^^ُݧW ȞGP8Y9Ο*o*+=i]MkApTʼ?{z&I ;ub{7zK[Q\XQEQESe'u6_O4vݝBg?.H@(u&MB1ȿ~y$6aR\&H~1ȣwӏ֬[/M[+s#}=? 8壵_j?步ŭy)n|_ZrShϪ0m?ҦK?"}A bB0_V"2jϾ`-~À=vY%|2ya"? :+Bd72H}j3]|3жR+Bz [Dη&quj)?W[z<6KTbs<%`?^[iZ[Y$&OMC.OMxHƚlU-c*sU#>B?]>Li _ӟּռKwy {D^*ߌu7x@b?Q_B4m50ѯRucͮa4UqR>ܮçٸTҼBKb#]ɧu< FG o/bث|wмA6ӎU {{W\A%ĐΆ9c%YOP}+|KK%x??G╒P\"уR5] XJ3ìUn~3w3q8@$<]4+e HebՓAW?U*\A=P$hnG\VUeV%R:01Jo -okUŎ&r|LTPAJvnԇOQ^WM8j s;h˦Fr}u1PݯwSo $ѹ5y@4 8A9@9Zkڔzqz *2z^6pV ;*9sYu%"'o^CGM.ʅ9 [L#8z> m,.S=iïi <>22^ʭ4k[Z܉bmه=z?裌j1{u|h X,W7HS`~đbH7WaypT O%dI0yeϽK@:R\F̥$é^G^ZoON -mM| ma?*yjF/PNq fr?c_q7v;;Oud?8+_Y/|u? J2a:gW6/s?g/5|WW6MmMRA,3Fրc+ܫ (((4d_@3ˈHL<|ƛۧ]fIy\̧OQBj$TDU?QmJ.%|-ln>dOGjFNl[~Zό^_ɁNܚЊO! 0!SWcg/8-}7WWq /ٴOnV+kU_*<|mM.]퇗9_Kʓ1#m6зV\ ?7'+>c Xqh޵n$X߼oA]PGYY_כ=7|jfGN{ O\GaD'Zy$=Fb!8Zo'E#.` <GU5u|!| "&oΞ3ray-SZ'oKƓ{_(v?1Z? vekBr+Z_?34,jTe폑݇č#,qwc2O[VnT2X)5dFte#AYಹ{}:gkH[ oZ:Ya3UCITy|_ox+Fb*6>NIՐ~#mmGko,5WE1Tb3K+`*N\.Z"d[n$='x8W1?8wl ekOO I!uSvkvQus͑5XO9"3 4GQcOn7+τ5 0?v:Eq?نx[} 硦ً_H#:O!K*>P+[: &.^/4C#ڭ^?q"ۦ?ZuyG:զA<6Ҥ= t?+&Gc3|YH[k_|WI69s>т?kyR. њO뱳mb*̥eG͌68V0$F1{~"4tIK?߁pQj)DquwNTSVlleЩZR\JrO+^%*+~<54cSZP<  >G&9-m$]G5Xs ʗajG&o,0l.AnMz1o/Wtu?6q$c>t{]_f L}w/*'MId:~GPO*ڥ_<j$Z6r ,Z\phQ8"ʼ|RC;(:((???ʟQǼ@ŷWh/.7Z[?[H} :;Wfj;1R;)qd٧#+ԋs˚%м+#'TCh];,K6`._AUTEl#_doϭYM:'Z}%M輷fkwJC03#եazLǗh/Bù[aj 8¨cVԬҴn#1?뿗Mit^o̽Fcnc? }0w Eˋ ab9ooÿl+^lo{Q?Z❋߄G WSF5GKL? :sEA} FƽϐHɚO2wV?9OUu5"zX_1k7ό[{ee\"yMf-Ĩn\%y,)g׮H^Ѧ (gkAJ,S r885*9צHx@=]G+hW ĜxS(J痗q0L@FqkRO$s)-SiA8kPHGKc?b*S~SExU6 ͑wgX#O\4g#/'a#zGExA^{-\D3ҽ-D dЅx7QL Y `ÂJ ?i{fu=2/VSxVsj3%,5ʹ?."4$ h#s2vN~Y>õe,5TF-^azz75[勗%z8 .W: >54"$s^ʧ!~1]s(*y^!O\s.#" 0ש| bW1J#M*|ȵ*cxb;?(.LR_=ۂ,bir{$T]Au>T$ɲW;Pp:+zT(w[^圮?eu9-atwU_W\\Dj{` ~5,; ժ4Z^Tn8LnXPdVr5uo7NhK}ZLP.m-#⡎YHaFG8TAOt־aͼPK ^vV;%j v:ipV^ + >3̼/mY.U'dJ:2Њ|,\^>_+iDzdVܨAStr@3P]늑eR6K{9y-cy3~CjܰoݡY:}Ɠ{H<ȏqU doLk[6Tu#JVEJIT]W\ӤH#IpVGMaΟt産cE.JLGbǿQgpnяhj+Rs0me܇Qgnn_CO7:U{*SQΝrsqjzݾ_JeRazq΍ha׹ׅΖERK{ jХY~qJq?=/Š(c((*;J=p*>'k7y+==fImk?iln<$ZU,K$ ?zhvyuE׿_7yu!6Vf?½fĐշGo&?v֕4q+]}],ni+u71\HC0Ƀ|U.ebfa~gus#J3nCܩOΦȓm#' r7qs/xh[Z:Fl!˜ͻx#w'k,BkW9-Z*ӗ*Gyc0fHB  \hjPSxxzy4qՍ`~U5r;+e($u.XC"5W03&JCc Pu4L#BzN>x[{%*X@8ޫ×&RwGFk^ҼQ&sqMpƖ!ʲ5:H[9 xy_΁[Gk6֒,^E Gi:qjVUIRW%HJW=9IC'eu;3ê>iXnh{cJ#RY/n-ccZXʂk|EM]m3z Wھlڌѷ{Nk :r]/cT᫽ 6:^]YL,%p=5UN{^÷,Htg= va뺑n]ⰪT4K(r%/SώO>E̤GUg-In|‹58hZ8݇*e׶kɭ'8B/uwsZdæܕsz= Dԅ47E=5O6ey#~{TQs:}sw[ogtk:.ҧcuF/Z@܏+6:TiօFWr;򦱻oXK$>RJ^n se5Q7mH?F6>XL60zq᝱ڬ?os^1S5]-\W y-7S <]>)u\6nxOSL_.Q*<]ߟV^KilOVy[|g~p[-Upmm(UE{xW~"^FB?^^N' (ΐ((oT yO\P> |̀?}jx4Ɏحfc֢7 #Fϭ9gg? լ s#F-.;oR4;?- %!N^O=4|K(f8c^&i~µqO_?_3Y EjVT~ +{SV W#/~Jg֪^`:sV iK˯규Ek:y~Y_moQon"eOsiZya^՛oϺC鏧\~?VOޑ/*P6+QJ8<V8Bu#tMm/+SpW~-XRj@UulSP$XVWS5Zf-STCS`7pSsUrIթ۪إ N87QKMiZt} 뷣}Gz~! -ɰﴞ3n|Xi&oteaUGD0Tz|Qekitf>q_q4Nt-zO,Y" HȮᯄ5 QVc[_."pO=IǚZn4q <=ZQqjSFUڽkdeG"w+uMW`jZt3m URRq(SihzO>[ג潇OO|,O>*a6ȇ}3\u⦐fP?FiFN昺(+#sIDz~\>d`RKu5&\hnt@"O'pVɓ8Z=Y/<7:Ж8 p"߽NM5Ĕj=-}Ɯ|PI Sʷרcj͵eHǽa\3%ԖQ[:yo|]ÿ ^x[Lj}UVS GZ֧RaRyŭp /L> eU qVM?#$@pe9^\j'$*'>l|=^ٶ㧊qUҟc/$|k_YN1y`ն˥O3y[_8f"^͢_5߳tvk=Y$|.RH55b>3~aEW9QEQE yOʦ/?Ϳwk+bE''OؿtɞɅUYLCkB2?^znyhm0uv!GzntinpnJd֨F5-^Qx?*AWEe]/59/ 9jk_eԆ4O4P5Y`UԳ6uBzjooVטpt6r}Z$뚪/&;m->#< hLAl$}\Ӷs"ǙJ̶HzoOδ}]+zy"~t#8MWdKOFyGFsF^Ly6}]:|"ejHSqB`YV杺VN$ӃU&C`7pSU\}ԡR专Pu;uKG{-]rɀO .g_H5K4H 3V jBR754U*rs;v/i?^Mk!ִsKDOӨ)ii;2kfܿ^.:{y?5;{RY??q 1'NBzE7iToY#4ӭn1?{z\V҇/_ݕwFOcue'ImUnFgMDJSE ;"#4#?駦$VԵIm#jBzE.܉NR#ǹ οfU[&drjsbK;PsNjjKwLж \s ,~i}8vH3 Yr䳶X@l߉$"O<`,VM'em]}?WeMo}zifH[Lsy{RzOεmIP@;(XA9NTc}?:ն`Uگ`vQ]t_'=j?٬.&6!?X=kStpep1:ֵ,9hn)xNR!3Z,rznjd::ԁC`5(j0*3q' ;u@PO)8|R7SqUt'mԻ n\PnuM*"ԛ]nMJZZZZJ#qM-L-1-(-Lf[an*nZqLcHZO5-$+x5K?'3jaӑ5fk]6)$'S$tYmQc:L[s.mif_mZQVE8?7>a*~SrOr[CױerY_c;7tt+TCFڤ77|4:'"NnYӫ$:U_-+Oi}b> e\Hb+ޫf` ՚.c䕃7"漼F0QXQ@Q@U4̒#5jkȽykq=4Cmht'D`<_`,kd9J,Y w6ʩr2ni͹MN PҜ*CD85B 4h74Ӄ{\qJwryIQFw)>7T.7T%EÔu-n<-ѻޕFZ[WRZe-0I844iIғ0}M4ҹii=i jYhm}uhٵ/el˥Og2loqY٦gTRxXkKy`o\oksF-kCkϮ3lQE`jQEQESY/@=hѯo i>+5c[R2Ƥ]"8^ߐN3XySG^/7=fG9N1)M 晧6+g}ٮp~zm5l20[R#[T^HA5oOw0݆#j Zj9rZy1vX5)y:#g}]Em-ktR t ^x?ߩ{Rf1$x講VaVRbB9Ek[l#tkdq쥡b2jXW7Ĩv{/9v?-ѹs0\^k>i=%gԐ59OpCh58v껒&iPNd4J)ԻܞRl҃u...RmnwQb&Fppp$FpM7Rl9I RnnrI Rf-Iyn)3HN*nQzwRnJ.ZCSI-K) HM6ERi Hi M4Qi4H 撊CAg˟1k_} _=~0k_kZT+@((:'C?fCLS[|K[ {Z,@9/j/!o@O4Ӓ-GP?[j/ַHЎJF^J?V7hVM;/+MUEQ.vm +{pjkv-?OlYWkjIisH?ˍ@SmǂWakKEi4zLULJ4 [g77XI>~ky ӭMMe3+yu4]7Qm$'ˁ1P?[O,X;M>/H1~|T1ݱkh8/~:ꌔW1զISOoKCZe?"R漇.fYjTA.i.hAN PO4ȱ0jP}çZhMԹ;?;āɨKދbPHuD.E nuGF} n<ё@XILϽ&z.$HZϽ&qދ"Mئ晚3@?$SI4}"GsIC"EcMFi v CHO.M&h@iM!sIҊLԌkF oc} _=~???е[:i!EV&EPEPY#bNЬ1Ol%m%8##kq=.qt>4Ijwx$8*As?qsQenFNkԿvp*vw55.uFW-[MRXm ٓ}={zl.Xք7~{]RS&a%>WnمG}n?_CG*ןAWaE!4c{g\omI,m,fGv] 樶l‡_#OLc v=#ft^lGѱs4/`{U,<;a.Q{܃sROx ~j\@ҿyq͜u]E6/WeRIAݾgVMKPaltkIr+r|dzNiB;!Tise.iVڔm?4f3@I7SrhɠVP8+f4a٣4њ.3Ma٤'m!,;4f3@;4ɦa٤&4H\њJLU8% Z{G5Eh[]}_oR+Va>x >H=BIII1M:yn.kI噏&[(;ZEQFhQj\$[h<Ԋ|{dHyUQ_J|LV`=jӍjWћl͔Ќ{1 zPfHRH?:u7q|ǷOʑo.Q9\cqUε3y|?lC)pM_ w#3'8q1RY-c'65sG<~ί S+;6?4o\[?-Z}S4eø{9Pi3^wN_r#fKug׻C8ǛwZj?NS7??fϟI_E;|56w_E5G{6|E}5!$܁//$zG+ؾ 1 fod?5[7cxn/o쏑F~"Ëᧂ zşW"OW0۪KۮG€÷?Jj? Qc4vQZt_-STJ>?f|/+xoUmX1VcoIGkz(Zu2[8?0Xs'ֽ+Iݖ(QEQEQES[Jihľנxo'Һh!2]gڠ+Ӿx>hK&@KZOA]+nl8(!:޿MV+8\WQY˹vGO[zIj/>O z=κNԜp/w$ۢW!𯇠?дZ:wzWcE4235@TilrFJzҊc*B(){S(RQIQE0 J( JZJZ( ))hQE ((((((((٠FLpvwq:/K^0IqAJFIF``C     C   " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?t?]nxZgtipeXleF8YC|G'sWyߍ?ǀ'RO͝;e1 0erOu#O ҷ)?8[\b_my M,.`&ـ?B>,:} ^OٟhcQmo"GV)U%v>c_7ak/׳x= K|5̐/1pr9u O~Wס? /^,]c<iSoTwQx|omK'um1mY//Gwj#;+'/.?ONtUq_ >/xwό {sqG6t x,"4[=Hxb"@?Z|Y/|I}E/|ɂ$2HPl*p |kc+~n[j],   _.KOCR3xxo~-֬/-/{!{rӺ}nϔTW gAtYAF]q^Y@KI%+*aʅ,(-koxK-;|'`-{fh{i"?gS#4$jc ??x_wO?<B>ͧx͓KԎnwO#Ks$|89coǁxoOx>$nR O:(%7wrUXeC, e\#ߏMoMO1M,'1:Do c`s]_>5~okxnKIN5 q;s4WY~ h^2o|~73Em4蘚88e*mR@IW/YxS* xZ] Ν-2D wffVgcώ?^ +Ě?e_ Ēn0}@f/MgOodoG2]w a|-X?~ /'Ē|MԼCAiX_EFr.JLp J /Ɲ_j?nҮYN/o:vJFH )dec[ŏ AxR>,-kK𭖻t.n%.MfYneЛSV __𭦥{ N69fO6KY.d٘Gʼnߺq_/xwý?j3]Eg=&` 2U9QW?e/k>#-Ҽmykws/gk2YvaC ߚ X|.g;OԴ{OA(.ouHVD6 3@W篋~5 _/xڅx&ݒ\Hl3VLAV?b-ߵ KV}3VE|a>)oYbXu6dVvY3ĬvnQ`!]x7z/'2\wb>bܛ#/~¢. '#?O_eٻ~78ٷogϏ; Yx=|,Fִn,aT6fXX/~պE/#h.5Y4-JuԮ$teCi322N?EhʿMi?Ə x> jZƭ-nm4`,FBl Od N"T:m> 3[I bZ[ٖ?5nnYxZy(ּƽvOB%{G I.͞8b4NXpSW |Yк߉ơ}uM/NX,w,qeeMĨY[w|Im?>:uTj {WA{+GzjGL @ qb?rhȿAĽ_{-2š|=xqN+iO3[-XX0O gU'jᶗ\Mm7U6h~u) `emG;p Уd?^?ӾK { 2[K0{,|5)yW+ mV3F!b-[nkfO2=#)){*cl~%^%ҵ]OƐ[6/ڳS.^U:V[h#$2ύz~,|E{akCx;J{ml <>K,U!*9O~Ο5Qk r KxVp2>_;տ4mN_u3Z=plR22Hd#mĤ.G_4 ߊ|;:~j4!-ąʹ1)+RH޿|kc+~n[j],   ]xŸgOѿ3i?Iڮ˷ymj.Xq\)ߌ;Oog4+]C'>n#Jm}U\| ]GV#'ۏcd @"~$l->K8Qn{t˲& \H]Jo ݞ-~Ţ_ o1`-79,U,I8@U5}w-u G>IplRrÀzS~n?AxE[P.nu9eܣ3LLULmjO+o^1׍R??-q5Ē[xlaZBd0,w?_G=C8edҬ~ hKmabZ%h:d0W  xFx^  Z|oxxšjE%}Ϙ1S_sx]ëGG4%嵆N%6r::DV0;WxxBf<PxN\JoI!Ӑb rTyńr:Ed,Wmm}O[[˰ 229z௎~)~/#o/ \E}5hN˦[G߹c6#i )ύz~,|E{akCx;J{ml <>K,U!*9@xC7ak~$t趿}Q.sU2MyV0+BxXO^Ohyqơ23yr }^D'о!xnPu?jw O$ QFZ&# x#5 ۵.,5,Go.\D<S_jßweZmot Sa͑Y]iwoI' d w~_ [{ ?-mlO2Ink5Xf$B$Ѯ ;iE~Ecm۟ğ-NWWӴRey. F1|A?ex~koI?5+=/^Kif%ke (YH 8|BJ{cCVkrkFH浊DKw{` ;O2 'Mm'Xşį? olx R4m&y!y.CwG%b2a>gtxWY&u-GPO&#@YNq&=įxkdWimv$SIJV`+@$g8'ym/? ^vfPHLOm\R41: Au~~vNtxSR𖥡x-AHnu4h,l.!]f.!l;"/'i/dMcLi_xSz=Oqb M8d(l?[xUa:Ɖ _aw@ftTHH;}DgpJ!xᯀ[xK>"αXkL5'Dڃj&f2ONRżgmχޅCV Ow!_htæ_7pù4لyeڛr>|~#|hOρu?E:{{Kl,[W[ NR"WZ>n⏃1kZ-> ՠ׮<%C$uy>^HrdJc߶>'x_ޫ|.ִ]{ozHw9n(pW s^'7č BNxYh6 c&0p"+"|Cc]?׆|AgD-~ RPO}wpb e$[ů|dgo #k>?m.iEHqe=}7,Co7zm]I.-|E+xCᖻ; /@a2=s_^/.x|ܴ,HU!70e^~o?R[ f%MGVKDhRUn>/|8Oq[xVy͒xF-{m:X0s,Sº74KŔ:ϖJHk˕`p@5ס>2Ů/nmtB4F8ehHbgG %X (|Śη'-M{w5E#%\Mg")7π_N?^aYkWa7%fip/*u~,|O :#>0~ M;I{˭V4/#n9bhm}CBn{O,<5ͮ çB%XkFQ]dMo/Z5 jéxcijib UdVNO_ ~ W4ϋ_-21Egw[M2"*Fa:ʮsxO:_|+xDnYCXm$ V Z/VֿaφC}l2QF BhUT }A@Q@Q@Q@Q@Q@2o[d>5n퉜c;W=On7۶} K7l<]w3nlu5CDR*>ɯhLb|lrcV0M}J.[ u=|,>x>\< >e1\Hw.@5|'?!o?H. Ϗr;ٿ;p1-|Yjv)n0Ѱk+@RƉ/>$|Ϸh~[aG.]60ɩoğ|+WE 楢M.Rk w#y;16;SU xOC6kxoF?>ڥ;lU31=MU]GW6uE O}mD@z)w9_>(XAojGS`ZdxJ[ .pd3r gZ/|/aǚk׭khYC d3,3g-ux7ֹdn˥*[!MV4RJ1+hZ/Ľ~-unVԭ]fm23$iRYn>85,VwZy6FDBr(|:eΛq_B&]7FkIgbH (G#ಢ_ ?co? ճGv|ot+xz_6k_nl9Kkܙ#QRM<-x[Śt+]ozΟ w..mdJYNH(+NO}Wo5(tJ }.(L̡$*vx?_n-. /lݳwmqAj:{wve ^]ʱCHGv *K\>,xkz?{ڎAqn.h;s"9_5hUS;a _ xOC6kxoF?>ڥ;lU31=Mex?(}/ſaO. ߳ۿQؙ3sUFctqE6j:ژ⺺6ա)Lj/#[hY#0Icr3M&8-x?(}/ſaO. ߳ۿQؙ3sVW3h m$=E5{TK[{O\(W%"lKcI?>ggߝy(º׃St{ 0.sa+ELQJBUqڸs_ ?Zx?b/ _}|y_hm>|n 'u xL6zdխ/y^qnb" %QjŚy-]_2 >3Ak'#ΙZ8JH" GzZ?Z>jɐP éIo/|/%fKr'ѭ견Tl$fpϒsZ _ZTŠö Eıln5x+~%iR~66)%WUefxǁ(}xſa-R ߳ݳ3Ai6:{jvV{ ]YIJ6ywӊ/ sK|3qXR\"-ı;3(@V#s}6xNtm4(/aKki {*U 0UC7Þ gt;("+˴|ɱUL6ɮI,xW^Ė~Gtw yp\ \j}wW4m>Z<-F#>tb`VC׉]cS|}[RaSѭ$h# Ub@1FGX?f#{~_%jj~/UE[ѭ&H3ȌBw;s=o'U ?6 'ؿ>ʟl.3v7[}ۻfij2^^6N {H4nm`WEkCOΏa7kfm"Ţ3B].0ۛ9ɮ<~/n >Ğk+9/`ydP*^2$ͣycd!`| bď? "M;JmӢM{f*ȩP'ս{]GV/ΏuM5O}m qWz)69ZZ׌|/Ě׮tki/X +g+q 4?V߆?-:]\͵6l2 W?࿍#xCX{cLhS,snfxF+ 889|S=:։MOuvj6m`7[ #'U ?6 'ؿ>ʟl.3v7[}ۻfo|cZfm\ԴIͪY\Ma._.tF&&kr;|X?UxcDig۴}?T{_-ryMpb__C| }g,ѳv3Eݷ{9SFV}ѼIyn4./.Ï:m'^U*xokZ׆tjZeQom~i%V֐]ʋyy\R $ھ_^kE?tfkwYf*v8R{iό O.>$|[#t.]0đɮW? ⟂hx}CF>3v6NNJKKֺI_MvGh%UL`A]'^1Ҵ]3_7D][\Ca_.t"%cj0; 5o*L}GM[ѭ}Aԫݺ2Ӳ  Myj$4_[\5xkS_{բR\lɽޕ/%?i_a_%ԚG6:ӿ?cٷ+v~\ zg i<&l QشR2`UU˹esg95|BA¸+kŚ/.K L%7"]yʟY+~imwř"%p@KmOIRd0FU71U>[?_a'"zGN:ѳlٷ-v~l w|+~Ya צﭢ!9E"Y@x榿+V}o|Ia5 . -|2GL]6]a#\/ObR6l3஫?h|,o e~_/~ݷ~7mp:P=XtnFun-RK5BMAh HE?fm~{cjAF{iIrdCx9~_ <)7m~kڭdǙo.h܍8WQ@~ۿ o%kF<)vMSZOF&}X I'2 wEutPN=Gu}nF쵭cmR;)JCHi6)*ek i'gĚocPs$~T΅kuF95@xW'¿> i MkG𞋩^hk,RR,&IgC<"D 5䷺@ Zq}7@G&MW4k2Tp1Y_}WLjtnl`t1%"峅; T==U_xkdmZv|)sg{o'ƭS/5)W^+\|k4-obo07#{ߎ ~ox'W66%{I_ ]]F_Q% Ѕ#(s{FUS^ [_gaAKq}vl;\e|wӴC#~5ss?fY; dO߈x_ėx?6.B`ma{Y }dc3$c/'~ ]V[OW,<1{o|:S%*5ՎꗢE;$XlfE[_-6M[D1qi,<^srM'ZOFdVx*-Kq [2laIe#i d`8 ⯏,[ǝ_Z? |F=2nSJ<y%ē%żQCg4$ (;/BE{]_O_?C׏WV=͝ O@4X_{ }rжKUko)Of]KF_}j714ֳl|mȅdg(/~I?Ѵo_}'6cv1V O~k?}N5[kwky.UG!kҾ i7.4?x5:&-SMV&Qa$Hɾ4((((((((((((w?g:?= O.Xavy+& $=-^7UcxzoobmJ/ W, 񮫫h)ltC$TO/ '0-ܫqq7fMr!! Ox7KjVEݖgʒFZ\9낥vAR??sY:ķS@+ 蚄V[.db6E"X¶T` 9>VjiھnlRo*Qm s(Mx@egT#M984/ Sh!n.CxI%}jK0!b;/Wk#h0jy[#PZh$b-X5 >(#tYPU{G1己zղ4=+B|oͦփOm7JmOi"I6vI2Iqg!0Tnju{~Om#[+y4[\ErZk} c-&cGO!o{ hf\W[勤Ok,hN H$OU?_V+5ieΕڤ:se+Kʼnoiid o#zD'm?u6'L70cjfk-DL& Q%Q\K j |4nJŤ¬֒間}$:ZH#+ 6GB/?hM?Dмkx_Wzx,[VkTCđ4i6<͸,%j!]w} SȍVᑐ,,})\>Y,BW)Oي/Z]Z+{_-K[fuG ؘʫ[ /\[?N_|A Y|^&#}3f"ynF#dS$(` _ |kj( do[Ùc.mn,fכ fEVFnZ!O oV:kR=Owp"!vuH;nR>ʿа`O:0d"xRO8^.u[P<{$)gQӵ(.X^l.=YelJ^cX/!^ֵOxn ӯ%E+J̒ ^9r9KOđk{}zM:eyv .3XѤW?OOd4k kRW/rq$ō۫MjVfEj/U4_`5Lҵ63EouKaXI\X0ڑ _> hzW#U֠>&cOG8.WWκ }s-:+J&{ϱjv-I+t0#sdXtCxM3E6WF "Xe/ mn>$Fju_񧀴}I h~.]joi˿GV~69j;W/'C\gOZ~47ծC.Cl #y1 -~ٟ|M? |Xx^Lm.wխdc$-tb-#pWWſo/RK k]R幒+_AQ䵓`lۭᯌK3fRZ׊ë7Vm,Ḹ@.c2:%h2T1}E~`~^?w!!e.Z[ĒBtYPC$l3Z?ocIm㯋]6Q_[i>+s +9^0"呣iuB@U~xMh4zʥ͖$LF] B_HW>,t}+¶گm|1-n^O@?&+؛pOTRf~pjDz#]@&woxcMtSū6$Ji$x'ѢB_}c_q+%߈} BJ!#FwH;{G| 1`W)|X?UxcDig۴}?T{_-ryMpbך񯊵o ELW3iZek)'E#\+|VRX$W[RDnj/ ~%t ltxOhngkx\1u2W]54AO#\EoAž ҭҦ3[rYJ$q,W6qbә 3V֭OIimYeFXR@dz+=ZmVL+hbeS4QH,r2g*1q-x?Þ5->(=OP㸓R}Σ<ɲ ZLZA`_ `5~Y->>xTjnu/[kjI-&P-P.=?|!{˫Odơ0A3b8|IHČSyRme֣x^[^k6cm)(rNb126𽇋hmAmie b@Br+RfjYlR>t$yq"l;au'?)Ǖi/9xV!6W:in9;Rţ4 \'ES~4ѵ z_t#yZ+VH!UrnY 2+\AmmZi:g}w]СԴM5 J`miy+Bz'V-OLtRUu #! +OGx+{#\G-gX^X~,kB){3m{VXuxZ .U}.h2mN4p'J'U@=?uCm9-_K8$0Ἥ WcǫSV4PIypl,'X:mRbc8'YmiCٮ{e!6{G8Q.UwH*TdX~7:Ӽax^wk=zmf,ne9v)ItgfVF^qgկ.гxnTA-Eyma<%X}Jab>H+Ylimem.YvBZ-;xZNcVZ{o鷰ͭ夫,3$GRC+)0$An_5?k_%,S~ .<.Sl s%ꋵo, -qZ?yOD ?Śo U'ǔ-Y#exC kk_i\I՞Rlem $ARd`Ozl s*ƭ,,QF  <ՙ c%ơ{oanClʱK,Q#*fe$_%x׾0&PMi4[x0gaK, ̠ƋT!]#Df%WiE4GO $8,PSIլu*S/m6exC$Hee "*NoX]϶yo>mWqGkW?z j (Ӿ"xJm/o u4ĈۄX`9-[ @ƿ==xgІv#e*n(YX ,ͫe º!imŖ"$6R% '~׌ -+D}bᯊ<%bz< KDu[i0KW6弥͏ WaA$knz^xk޵IiZ.cn/Ÿ>rwU奐4lSxCg} 6}"o+ɷ|Y>?3yWN~kzhGS~Yua䱇A_+Oi-b6p$,l Hi}^cľ!Ӯt]#úUdH vː$$a|&}S7+/I|sLw63\Ҡ@Xm-gv~mbҵXHuFkc~S\dim]rqWG-exNΟZޯzo$;WQ27$""\E#~$j&|%]KS͙uyHHnY(wpjMϊtOifY\[2 w9pFֺ`N!_A+>!?4;,"ii?w;bFۨY0-o;e=mVGS4V2k>kx75ȫXq^[,2j"`芽Y@ WPjh CuA}J7yY~Vվ+>/,NcVZ{o鷰ͭ夫,3$GRC+)0$APhwcm}qlۏ<ϗZ^״kW_`FSh{}k$El."lLm5 7յkJ;};Mn.X$R#UA%I xF񵰓L;%n_OԬ&X[[IWx&΀?rk/:j!>Rn/u_K6+)Y)!ƊLU_>#"o _y4KX/Ll|B$/G>A+ Ǟ.Ҿ V[~4 _C[k^!BIX̹h7KH7~0׼g[\^Nu[t &-ZN ɢ}&@;fvHMKŚgOɲ]KPMG;Sbl|Ԝx_x&SE~Ykv/s5߈;;5'Ћ:͓\/Ů8,k[2;wԭ{5LE#HɜC(V#giV:W:c79+ _>R6B|]W¾Y->>xTjnu/[kjI-&P-P.: >GGx OD֭[mfK,yHQ4Gz º׃_{ 3\m+EՊB Tŏ; _?᝞NR Mwum&3^5w^ nGe}iOiI0Bȉo9.O?x[L}jCwOO^8ƩhꈂGTn7HgIuVOӵk{ۋ15ɘ/o(&PZ=[64%-Wo5_V"-Os[^2{`E,{f[:ׅ/4bgwhsog5Y~kO\Km2$BIIcMt:¿>).Xپo?~aGNyV>|n{}&N{+[{4Lsд0$D27F㪐:|X?4&x[V=5;T]HѤvDrk4Ъw*26~!xWN񕇄.Msg_\$pRZƄ[ Z}Sx"6/mgC 12džC&ԼI(gL1dT6f^~YFj7u}O5H#fko.|͸?tZwl<_w NcmgM%̠19} ?|SS¶EEDž#k:g5 ]mYG IROnke 2ak{-!fYgtXxB=/76z %@92GmE!jɫXê^ۦs 0Y&(5ELh0D~JMj.o# 6uQV-s\0.k%[HfZv.v _0t]/{BVK%kسX̶2}4K :-\j46-̫ȱE,@,:"VfP2HS>)]k,-eww`h +"$hUU?*$+ Nއ xz9K[k671%hfm`@U84|km;ˬh峸~gQϦރ$suh~??J5'mC }F"̏{޹#pWN~k|K}?Zk%!{`dוhqJuLt_ƥ[ڵޜzk}X,Q.K25/SP%֣5nYNki,rG˴I`M^Ou(ce`u!xWEjxP6a7׮oŢA;0B]pۗȪ?_xM1o˦jzŬM+#‰E5+TM[DHc %^"/m[CmÓ,n|"%h(6v +‘"Q˒>iOm?i>'Uޙ Piq!kve mf2?}Z'4 ZG{.|%sGkc 'n.[@A"IWi-d$ > kZ=ø[GUu]kF0ZDp|o,~-|h>%G75+g|qeֈ\9ViTgdU,jaxkFg<]}y(|mp R$L 3FQI$)-O $VG|ayh>&W~IslC?Z\ڒH Gf Sv*{_!4:#&t3G KlGlvOG FK)RYͭ%C$#hlH%8BW< $Nxßغ΍k6|qkp1]]r= $.Ȭ,oc|+ 6GEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP_g!NiqjҼP8@)$ $Wj|w_a].B}I/oo"%;V7g@ #Gg"fkwPYtvEHcGb1J,>{eށoSxZ&קmB© $QU]CH>3 Ny'gғ2=uRn2֧53񧅼5mggW~%c̹aS0i0mo:(oda.DV:h1,H Hdןk.V:H&<|vJlڛa܊l]`_jy&.hV|1iY&)qmd$u%O}Exï>%WG<yMqyi-É$+RKE;y1/f>)'IճS0KUӲWiZϝRmcG6>C_:o.5m"%{6_jZje_n|%k'ď˟[ž'wmɣ38զGDuӸQ_"ZJ^۝kX.%yoHUcFobG|0юtwMV7VOekGo{k7tKHtջ ﳽīGDEdf9_3ԾK=SA]^EM͊{MNM:7+yBIfX>gNeئJ>$&Cc}zIYew3,yUd2oUTf1H|5OԡtmVB:iڶ>qu^&:,KteT]kX<$8(:*NRwvIKMuMY.4qi:o Ʃm9u^++5 TeDH) PĒ¦7=|[GÖˬZfVyZ|Y%TVFeu)H>&xPtU@l1iڙ-4EA$V$j&A2E/{'GaGC=s<{``6ŕ,' va8,-)9*Wm7/q4ⴒjyi6toY__'I>xs-5kϲY.[}An94 RȬȠU%Ƴk OW]Ezp?n! F 3@V|Oqth-55լl$RH-.`,7]zR?noĺŎX}MoԢ*'i![~ȪEql-γb6{ 2BVЋ[1V{i6ٗdh2ȉ\~G3tyke~I)>g;i%ͯO|# Q< jǽt/R;ոҺB{W@,lqB<}.G~F4=;M#f6[k)%U ._k |OxY4#DV|;nt5VxEk{.7Y2H[IM"Yÿw:S}IbЍ$Nm[ͬpdn܀nb}khׯJcѷI9k;+ϖ>;[D'Px`[gzgg[nMxA#"ޑ-嶱PVHXA{#[ZG!s)oW#uNl&t[]^(XnU*"wZ9M^і`KWm[Nfz/ _ |g ᯄ[?"T|)/ nn3Һj ?-e/階\kREMRO7m9!X& ͞Hּ}m;9[&}~弇Ou% m0Ha`PۡCyh(PQN\ũI_ҟlӳ[^x{Ěw%>mՋLOo<nA t|6~Z>OO?kjzΛbRӶ vVNǕDHf[xr[vU48i)cm˥Qȹ+g3F -9Es)7E5xy]K rW4VTږ|Wv4ܯuc3I&_VV7}΍v7ɱɝ&Huq er>lg _!x]v%⡫-Tm㴼; 6h~2WK2`yJhey-uUƯ3>+': Ascwk{ǶKYo&[R&T^[آHr?#'yɾ .3Ϸo/qbF7'ڳ[mz^>e5˽A[2+f{tkkk51/$qT壕ҧe+F1jim'.9tڏƫȴ$ "xrPhmn"B¶È!DWN6hWhn4SJV3]HZ6s$%xkK o^A&>ɭ}rW6 6eChnmׂ4M_xQqy :OQ 'OGx$ 1u/%z<$)Q|(ni7kJ|jVRؕ)_}?746>q*Zn4 Gc-{imҘ2KmwIoZF.kF-BϥJƵY6-,v2B^׿6g W?_^EُOdy3ׅ+/M&צQGcAaUi3x*{[O}0k0y`ƙ9;QG@*3ׅ+/ML)j3ag o {hz|sɵR"=;#ូ-A_m^׿62?/g?g W?_G3ׅ+/MLl'Kò<& o {k([1R0p3z|sɴ=x[9^("=;#ូ-A_m^׿62?/g?g W?_G3ׅ+/MLl'Kò<& o {k([1R0p*?fokzmޝxOm.uI:ttkX# Yz|sɵS̭ody3ׅ+/M&צQK[1R0p3z|sɴ=x[9^("=;#ូ-A_m^׿62?/g?g W?_G3ׅ+/MLl'Kò<& o {k([1R0p3z|sɴ=x[9^("=;#g/lͺ.~׳Mwcgڦ;1hMEխRJrI%dQEd0(((((((((((((((((((((((((((^5kS}7@.u[ZgWT B$ $u3'e+¾/W|> C9g16nfi}kEyWj?|UxWoؿ&{='oqYy) H''X>w^!ޯk׶:^[8lYjϐ<3 G?lσ|CKo|?{oc\闗e7$8Y:1]`r쑉~5~ 5K ~Uol/^h2Lc&gdHti4b-}+E|o?jKO8{}N/meXl8շQAwb[s|>q4X+4W}&O@֢+Q`0"Dy I6*@x,]CDtI#|D|9VƮd%4-_WZiz,>#ڔJVK=#%tA˲+>? 3MomAhLRA<>b(VEhٻʕLRl4kWjCL[M)X,sR qI ;[ExW?k k~#|<4dD6jZm6!if1yv$P$,ܪ俶·oa3< 똓!t_=֊ЇkYGfhDAFխıǶy.d_f%;o(?>8⯎6&7sj^hَO*!tވwM2R[y<aiO*Yu{{_칡 砳Wspd_̿۷៊|/+Lv߲6溜Xm[Qn4.!yaÙ1WV~?|g|Uom3OUf{&{HvDR!a; +K-VŚ˯Z7M~L ^[ DYcE쭜֊J)~> x%ޑ[;Y|Ϸ}G2e]y>ljw/;jwzO|Gg}tVVӭ&+v$6~Q@=;^[?Zf/Im_kdLlWlWQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQY>)ѯd<ӥZs;$WT<7z)542eY7'r!H׺%mݴֆVLEa R]J@+e+Uе ⧎4kLK6h[iZm>F{cY 3J0*zÿ+d^#5漻ԯ5QjSȌóٹX2HIE#MiVVR_]k5*dq"b2B"I-EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE`N/?? VsO~2o^;ڦNɴkF HNɴ{Kiwhm;מ 49 I7z-k ڭ_QV5xcHҭ;6ZmŰ(Ѩ\7M3* >[s &j3kG -FȢ ˻qq^k᷀5 A_wr#U/ZFUiOݛĒ6듸(yyYtOM}r\ӝWފ;'k]w7x⎅ZY4hGR\N ]P D+7Vv '߇rXM|=YC"C-64ÔFm 9ׄxK4}8\6WO)uүu1FD;I\ >xwT>-`[EuOxt3kuh;rtfS"+v*G^V|FVy_MUl+zn;۔g 5ӓW5QnVMݞןU?!tf"d *˕=<>&Z^xkZO{]Gk{432iU|ڕWwcJi>fw::w~˨ÏGPJݰ0*Qit{&xB:MY5NrzOOy~^iB-R:߈_ 7SV=;7d, ĝg:O%gSC[Nu􉮤E2KR-6m,[qjψ7՗|iŤEK; v$mD$"|}Wڟ q5M_K<][|XpoNx<97u+6;=kSףQ7N'8\ל,ܠ $[+qrZ+ٷ6|cxŶ~!4;-t]3HIdk[[)gfܒYuSQ-#F4mc횆;yPM-ދIq;Thh~$u*ƤQۧۄ̖풪R |/ߑf*r87_{יEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQESVtB.$$KKi.feU,BE")f8@u柴|VߛWHe#G.ܢ5V9@)y:+߱eef+w}<{Jdš{O]?$ js[ʙ4-Dy#2즭9ᯊ:忇ΰ.4I"-Hī.ylUrB8u_Eo|EYA\Kt,.C:$n~ pp~C{|l.4d&H>lv;sL^O?#vQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE ~9ЮOh4[hӵKTk]*eV>C\i(:i3Es=rC,^f+$p1砱O}37o4_~k~w.|?x䢀*u\]Wa,Fvo@cDl1 ?'Uυӵ+)ÖqMDue``A(=Ilt *L,6bBhUUToC|? phg{8ux<_x,I]zFe(A;!prWZSZOF&}X I'2 wEPWEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPnZ6]?1PNG  IHDRh)BsRGB pHYsj[IDATx^]1R\?7"Mj9@tC.49Bfr,H:M 8~g˲-o Hϲl˲|xǛU}s;;J};817 g ?IC1p> @` 0PBb @I:KE` /e\@` $4Λ sp.nR⫛GǛշ;Q:"Xã806I4l|H~ˤ.WXLhGN FK5ThkP98и~֗TT7spuCƹFl'&U0tmnJ>9=›+e1[))*rК) AgT6+$*EL7 #Fڟ:\5gXPLhAy"T[zGLjEE]cgJ{m6;ahvCy<7,ﬖR>A|F!'Xsf{efF ^|$5Sl{#P_q>+5}1A WLI*2^ɲ;~d=>w|mkkg2-W4bȽ$U0ߘ럄c Cx$X~sں*D}%}|ٚ^Tm]Qe67iÕf.;j5Oo_eɎ;: ᩽zю~N7﫨/@@ve)ˇK;4~}e=^Bhخy*Π-&:0}ք.:5[ܟdhg`>% ~Zcj?:'CZ j?rܫ$Y(Z9-/}`(忶3#ۛ#4]aZ #iH/͚@V7c5PP0 O!SF,x ˠWl~VWֲ?D0n$5LCQScR >n|wB(/*O+,88'n?v1*r^ИӕH(db7&~pdϿv`Agn=q)qݻ|A?sP3 IUcW`ONEj3Dbo/o y EEl h6B)ڄOW֍Vϒ>ͤ*RBIQ 0<)bvL9̩f} jf*}T>|X>/+o漆u{biVoj֕dӓj(\єl@ ,WL_T5r%fX]iӆ[zub D}^ƶ$!r}l:v/"1tr 1^UX]*l<Z7eΏg4Һ^%U8+My8p`03[0S:% %zSW[D1p=#WxhovUf"D4MFz 6j&R-+#7ĮfzJI-_1m(0㓜xeQ20OE[F8笭]q(t`n /JN)bp~tɘkiX.ŨC/%B`Q̏lZd;5z¦XRq^ypbkMUv+d7ҁ}*rɇ_`G'ۜɏi܏,퉀M4%yF4}iI?mZ2V>>[60*8f!{{+\81ֈ|t)*8Xڽɂغ!"6`U4,6j]d]>'NR:.:i`evZ$MY|s)Ng>bǛ:ַj64z> Mk , %jm ) #nAIieM?7Χt{6OYLGނ;5YQp>x'AY ?=~ 6%%@PaaSWk x;-ʇ&-tyDyrZ?̀a;p2}6';@bi:(E"{n}JSgر2\N+TuCcB@Fdm$@78Oz@Kax8sH#TUPҴ=%JFe6SFR޹^X*Y@*- +GSx/[MÅ)& #@+g'zPPZJmSl W6nqR8 ګCE4m9s9##0Y졜|+P: $&С K3UdN6`UȰPx; U QzH FtaIne3MDI'j{`>{HWZ~|| ]E#' g5je?pLQ3)I`SC&II WsIۢ^0o2h%pLk^WI]tFAՆBO7t=xA 8Es2\/yp@` 4cŹ4@` 0hw7 K#0Υ@E# 5ۭ]$^+{!A^ wKFhKA.%,WRb1%F#0%4rL͡T3!Tr5C+rEA$prun,x%޸ɃNXfeBhQ+g4L̤q;}c2/zc)"oJŰL tz(`_:jӭ%80pxFĂ ?qHgon̊'h9$B́#F͚JY0?XW4gؐbJp wg&zΜ^lJ'ɻr { E%ne?R @&M_7>U2aֵ-2py` #xUrQ2Gw}(d5J&}QiC|NU+fL\,B/JC;vv| *UiӬ~X$1y)3w!uX&YqbB*tIӒ&9Xi1oZF`WoJ=P8cξ]4+ "e#,9}Z'3Yt@-,}>+ЫZ5!~8yح@U4at;WmX)-12S6yU0klfVnN. VEjO!:'4`UJV4it.aExױn!8 ӗ ᴄ]5yg=C$ldm!`l>H,ab;фۢa* %>Rd)ɬSӈeXJS|55Eq(r VͺTˑN؛?K t+^Slis;# QQ!UEn:|3vg#XtK 0bT=7;BS PxQv4$.8Y)/s dgbL)Eb'G8EY+=I<+áRz11ĸ-7(T_X1ߓr#aae4 *ƾꮮ]?\:6~5hcXzT+TwG^'XW渏uVaUW]l UXgYd>͹u ~gc خ?n_Axn(=_?8,BDh`# <2{0 Ψ^P_2 -ۭ9)yo0>XW]vqU JC$c|wL^(XHYGMhP؟ ׇKɭ$»Yt?/8b78I7 Q5sB,O jBy˺C@R'a$3N kw{ HʣՓFZU6@ԣj,# d+!lF`q"c4E gbe)F"f(PkF((TiH? z( Ob,W)}&B+1YRhv<_4@HTHiCf,>/$TCT0nk"χ@A| 9Z(fad0بva c9z'xlYo!SSɕK|*;ҋHW]P-&niUܙ!f4Qzrt[#W" X={3d  %NQCK |;KZƔdk,*H_Cn-A(ԞLciCyid֩i%oKiWT,ۘBRHT残Օ9:%}\7/y=(2ab*<<9+wZ"ҔIVmLeJ4Ljթ7k;o@kOևǒQ\K3ƨ1pp$ͽby?U5~{2wh8M!>/Oͺ[<+1_-eh i=4ZK\ECW(]S}$'إO!{'5D N+9€cK@iߟo8 g\P*g.iBp tȩސ$ciF@q/Hqp :#~bpb z]UY0^c()2X^/#7uO.+P")UH  =(rճ 0*`=h'T1 0*`=h'T1 0*`=h'T1 0*`=h'T1 0*o3=*Mvƣ!j2 3oppuu3\]:k-ЍԊ-\.[[]*yz WT@\x1w3k=V+/<] 'CF+ಂ@A XFgGVdٳY~ysQaU26}h(F$EBYlĒ dMǹJ(gܹJrgϞcݼt 3>S5F$OHRH:BS6bIbRT$ Pp{'=nHmZ\j ǥ !όJ5Ā@ ×|Q~*JiVXX T}r/ sc>:nL.#M*$%ΫȐ-8;Yy|uKoѲ,&pHi=t#˝O^Xܽ erY 9^zWĀdH\{,E.k<ލE|βXӎăPB:"w @2tq,æ03;TD1^!2MiDrIf)waܽս|Bg̪r'tȒ  @2TC~OnV=f.ڷЬ-]>MIR΃D kX^T;  z:j=< ,11`b3I>ҟ<1^$?噺x1@Hio8{ݫz$WHR$IKA<|>)^[Xk;"'_saYGL6H }'o=tۦU s.N7;mK|Xr>](\xh.U.\u,' |j$b|3,b5J2K{9Bz?@ք)9A~=(cl"$.@@'))JH$ID %$$"B zgA z!@ǿo=@ j]@|KJ.n@A P4M_9túV\^.B?D=~e8B.IdZ\^6H #`=y/4κx%4҂@ $z F*O5} FV'P Rǃ=O'Rd~z oQ)`}1mc$qցN9@`zcޱ4k \ryYi#=F7`ԸEi@t4I. aiI߃@Y f=q{z( `H&uZrye5 z F#v#uya'ϼciVME /P@JA0Goq:Q͇igVqRcˬ HxۤSp@A 0( 5ilR@Tb z@R„D "fna;U}H4*բ6J҇@ /ӯ QnzE\A뱂w EJ. H!g=VF3xذ;/efej/9,JAI3V@ zJAI3V@ nژ:oR{b剭ڋc?%&G"z/5`l`;<%Ugeno0W7+~(>hHa=)ZؙoT*]^sqw )ߗ@$q h=h;ëx-']Y_4߃dJ z*sJ"-~ sWMK#SIA$ZKynY.G0V=(j]>8@ dN&gV3)lw‹R$D@yd=: gd\?rKr?{3XE\O]u6m 0?F-*k7suCW$Y3=`=GޛccVvw|I=I¼>hG@{̾] 8DI֓X@v̐@g`=ٙ!@'3#ğ̌ @ Dp0∵ p4A 8g9AE6VhZ6H  \*@`= z,@G  `=JX Q%c@X@փ1 `tT  @c:` X Uz0@,X*A`= z,@G  `=JX Q%'q t[ƂZ;1[򯵺'%,R,Ʀ(5Im0ECG|_,XO"ݦ7A Vf-ߘu5 t NyԞd|ݹ5VU@(`=;fr]kG/D_Ic_ ɚt4*\DT[rW9b"o6:)RMG)\Tꆳ,Eo1؜tF|`=\W;-K 12*콄{h wG[шOd9gr5}H>tr16:|&\{H*쓗DɍͶ2D{h4 ʡ;a;_99p:dco؜J'0tK :AlWsS ^F0+_}鞤b=)rhCy"2b&$r-z"憸g]jT|Q>6P`~c  &׀:Fփq `tT  @c:` X Uz0@,X*Ao3 ( CL6Xoz&=c]j >/#9!k9' blkXPr>rHW4''Jsqng|f*Ggܹ¾rgϞcݼt 3>S5>NДX7IZuZU>H[yw!K no󄼧ϵM =V_]md!dPR.@LYύ{9CAg0%TtL={LL% qA_nGZY6ek3+)$ZOǵp9ΦqI8'w xwA؉+OKN! I '@sa|^@4)7W'hrҬ^zN` '&B&X-/͎E*"7ESS唍L(9e)HV i6>yyXLJ{Ƣ> "hG|~cBrkg2lz3CEIY'ZP*CєF$7thBXLVݫQӴЊ!ɽNGɋ,@1=xz( I܈;YmA>``M^g=D>XpK6U{u+$nꐏńf2ҟ<1/d-x1黸YO}x'V,"fK!\)u#n·9i{u^Y,C2 I$rͼ'k km<[dCa⟳Q"K&=gެ'zwHO r \9~VrL)mV!,\V JYN{S&WBZ.;ųb^]"{cQcE)SGyŤ4!lDW4EYx+-".OE+w;TTS>9 eM2L5,:| /d?ܒͪWǼpX߁w,ܚ{1[oMCiN=W exs8P&s_o[~78TR^%G:W:H=&%~W.܃XOj@` zFzDc <&GAX%Fgpc9nq\^c!qc着M_[̉agdʮLAl,+x@%7+^I[g/} r6v#.U2ThC4ϔ-00_!iO^_`]CySzmԁ]^?@6g]@< *"A9 Vú$j/~}')[H } j/Sj y%N$D %r&s+|;W(n;Wc{ߩ:;0h0C۹ ,}271G9x]p5'Wp0 xG=ը+ajf_m+ɾmF25[oh ߄#v v?RӸ`-Zfzy]Y܈uclt[ϲDa@}ٴ';Es/RV2$L`W;8vl݅}3]̤Z~v{坒) _}BRmwFnDdg[Oio[E=nr !\ʨY2+Cp==ٽ#EƉ힛&Ju\^JiaNGC*Ag.GgWroKZ>ܼ)jK9uK%lzyMz-Bv N]䰞g+l֓>N"@+zZ y_!L߃q x/ѳ{MW A>X>At4 3m_gHb]@|Jb}dEZue %,ѹ(@ @{=~p[ae]@tV^pdVfe@Ҕ(c7|`]@<(Tb‚ObAz0>@,X*A`= 䶞>l8_n| o^` %Ŵ];7꼩nژ:֊"I^Xy8秷k/^|䶞~0˕@$&VVVd_'r/5`l`xxޣT;(Yjw to>O~$?pSD,x7*!{9T+T5QtŖ.C_==~U%l~JD?ZgKyhTa2kr`ůD.֞N 23R]++ S(VbۥӦDsbZ_ر^=śn9=J9y~||ot'zWwSwgT+t%oW.:_>\ssh D*rT_uNe=,ECS}Jb.5r< {sW緿e˹]Qj( Ѧ0n| S_z7 -};NeXiQُaa|1_i~I6o9K<bSr \LO_>kkփpөYKh(YGzcfnG/~xaMBE%I#D~Us^5PDdΪZA(I-{.zMsuAk^F|4y|sf;ηbߙ؃ynYNթIe^0V=^K_?h[^\pwE1}. EK@*Y̞cQRCJR)XYAt4cf{YLs1´s,8{&l3M>]gSʣz)~h=\ίNaL>MD?IF'_`Qe6v˝̯$QL~>3lO>\w&2=2ҎoT&pGg3i3: gddn+ ?rKKǿFT>LnuR_Ciֻ~&BH2|6XlT?ahQ78J %s.-3svӉ3i7*o:~SOR>+2.)~RbmϚB{6ot±szئ}__4ۿM7KQkg+Kf b}"O@\k,`@<65ִX_n_DL J\>4r>hT>\ܝޙR*Ho[^E5łN . `=JX Q%c@X@փ1 `tT  @c:` X Uz0@,X*A`= z,@G &7}/IENDB`n4qA"6]1,? PNG  IHDR| sRGB pHYs+IDATx^]?R;c > Re(b'CFR4 =zuK#uK3("("(_@PE@PE@@ԵU;PE@PE@x#kFb("("k6("("Fŵ}6́w̰yE /1BHQz"{sp;EU7e1됼&b #"g-FJ6)T1\#+fa, vMk6<c(C`sZ?--"e0< EGfA*3[Iݹ` fG-kkbv!.=_u u YTD<ݿ&p9F6<ƅv<'ќ\z^63Y@?ikME@Pѳ=wKKnVUm l*t" sǣ d65a!GJ|UPV4lE֖`_V}} `͆)Dfo3WdZ n?JPPjy;¿͕1#qi.BQ,D;\4wkb Һ,6!D}2υꒌ}D MCCC9 )LⶌI -{٦s͠?sd@@bfx G;A00,^q,'h,1RՀWQ5@d{,+#)uTΟ`w6*l$ ۔vÌA.ʶ-CPk*"xwa-@faeQ(zjqh"T§Dc ) P^n,2R6jxY]XJn{XuB]!Ee8E]+ʎ oE9ac!Ǫ0<,4ך|=X0@+Muw>ܢZEU)"|DQж6F(}̸:^.((oXr-e@(Nu"G,Fg!RVHҖ%쫽![B9BZu 6 d/ >Äu_.O{Ԓ5%hA\4k=Nڄ*E2R6< 6ę[ `%o"OP($<^uLS/HE@P\#^(]&V^ Y*>"6Ѥݞ(]U4j<-D 2#xr]gҡ`$@|JK&c\G‰]n6fip `]֣8d?nb2Q"QJo&@ )-<^CUE@PQpVHYC0I3b4'IA \''$]21;HΔ idI68U`V .-O~P,WynsNƒCbQg{siI] ȏ8 ٟ 'p"7A|.\Z>㓦v A!Ʀy7A 5N[3ꔩwa~9u~փ6tm@2{'9[d'ղVwFd@3녶Q$@v=UvE@ЫB޷ {!anΔYE@PE`F6[m([E4g#l%("ھN#)/#4N\M~E@PE`V4 aV8"("(!("("0+ SE@PE@x=Ե}=gE@PE@PYk|#>ջk E._v)[,DUѪck"@< Rx)Ƭ/C, Ȗ [6!E; WnHZQ ֊*7("._Z?}nM;[i(z82 W ExVBd0G^#51;ea=# 22f"s 5킮Pm\{_8thpV {鱦\4jl_M .s(@ H~Ϯ/؝l6JUA sJ,؟[ɆN8|WX%Z?3>w<7Ā@buJO ߇J zjE@Pwθ?GJto0Жf[pu!w-@("4؝ ''cLSw+=J#0PG(l 'G]wFrv/ UgyU* umj^ tm݅[ړ,,#VjeN.,Dc^#ʂWz AFl84YT9vnQ^]8x4'113?NR"?6_z ncqq4h'M}p0}핹óK;nZm*PnS_p{GtKiË" PJ黲E[$vV]ewKh[E,Dg(r$l$u-J. wQYaִqj|M`39S)*v8:T́JMjZ左MH0 #ޗ_|DxvK|C56GU)WtviȘ'_>Fht tˢnmƖ A4\ZS%lJs$cG|i>-n)$Z ! P;An٦sF6" N8噀CfDE)r;]i;%zl(  Nm,'2kO_У ERߺЅ Hpcrdj9K-f$l KD;(Q8 ;s!=A*IJENYtTVn7ϩ%x:^/%;nW$ #a蕇j25VPW~>kۭ}O<, EnYѭ6M YPՅO_)mX#) P^n,u2&kE t]կANЩ,l5̭"]C[D&ib>r9gBY$ơmW;Ev X!_eG&-aN#P^6 Z TSv,F\ŖdhfhȖÌb{6#, h Ǹ<tFMJŝ.ZyOm8LM7X))928?"Nn>rۦeʎd_ԷȻH:G*ZڊOO c$KĐWP{Mc3?AK%yx5s['g^/ѣaPᄏa&Pf2 D&^U]d`V-AɆ//{N6bnkN/pmon}SF'taZY<]kl,AڞsφnĄ1Ѯ$xf8 kM@o5$栶w|ømӜàL.)9uga"ɢuaF>=R:u #*'> L 6K!xx ]6("uac5 A,nżsrPpx* MPbP"=(pGtqȧc ~К5smt7 If}zЋb4gP霱#-Ǚ< !~Ʌ<˥ j kȆMP{%)00^YCˆj-ܚ#F@'ׁy^9Jw>ߘxt9!b54ƹ,+U*y1\4jlK .sN] XwFL. }0gçigC%EvGmec *=@C4iOMd`;紗CuUnq|Gp\ǚ _3rmuuAJp(R>'#}croaxL _K8JNXZ6 NGФ\Jw5jR,Kz6?_K3 h E`:޵]9BZX3Ml&VBSħROa). ,DD骢Vh!JfCC Oc/R[!&{e͏'s5/d[w;i2K6*1䖽a`8w+I00.Osrk,pGcXZͤ`táW@R6z&]XUU~[Ӡܧ)hRrK I zO~dP7]:JMjUψn+r0~Ű84i0EBlMmmAݻOn ??y)i__cC36M럘[MHde( E8Gd'a> |hld+9yOSp@Le~Ex͸^8!˜JTLⲄT԰BɯIffNUWsP6z~zQO==)"LUeyƸyK}G֐ZrԴpB@]y ͆c5Sv\{u1\wmloV YNk(S8F("fy[hE^Q^IowPVUE`sm!26}|\}&]w}MoE`FԵL%(+!n7=f1w-Û>t7}!徒jh@܈*=E@PE@PWB@Wm_ xVPE@PE`nԵQ("("JkJk"("(s#܈n|Iʶk_E5-NG$Q^6e#ࢌF$ DL фHM=^{HycrAMV 5Wb<4&uziPE#c;nM:[Dާ'O=Gg ԋ,E[.O.,DA(ZVeW5]C> )u @ >%Z<^lˮl'ſAm7:TskY=lǽQ 6PEsŹVVE`rσyy `v0H5\m~QD)Vx4׾IQN`*@QT )EOD `U7R&V͛6afӶہUOG=u)>^Pxx~82/2G$Ks ~g!bwN.eB-Ŕd{~+\W 1I2Qxui矢PAWAA|XȞ ,X 5[X+نx (5tvs F)(__Q־Nh >bYbdYGpǩԖiɀf8 zZSPctCX7oz16@dmt1hǟ1~gM0#bp@MA$ Mh/sQ:P<)B0Xi q\/:)ߊ"l$ wG"d缲T ,DRk*l6̮a]z[? q J~b""N3 ZSW I6[@ uRC<ïKӖ Ѹ0ZD˻TXE@P#[`#+GnU1x `qY Ӟ&2B$29U>6ucX,:O>X0z$r]J]ehx %Nd;ˢ,,{}[.ƠmY},7#'1F`äJAB`*~C: O)P+"kZMѰsZ "VC<Ǿ"6~SJ~,Dz`EFi2+_\eg+. ɵ 0IPdwCvZs֊O`-|P_UŞ& {,T c0|@uz҅Č]C(:j"ھV|_.vHZޮR<hR_2u]4j4 d"vQ=ǨTXNZ$K Do?A /p*|yZ*달S?uL@Gx ;Q e{%R?L(N)VSE "+)&qŧc1Ν /ԯ[4<1G({Ӿ)bq%&BD*m5 mV"R:@!n>[%)*GP8X bm&]0*yuSc5NNhuJ GE^ZL8\:n"N>Lc NqW㪛/هX "({\m1Af5Ջf$y5"۽z*Dl4gԳ˒2} De?$k(&GSsir imkU]I#PKc_ (6*˰RA_'#16$tE@xs7'doϫK$mӢ\q g!2/hl9q*)Ikg Cuh0k@HUF)vL.KrmѰpm]GI}kbN]S7Sv_"(onOכmE@+^|n{7"d*"X7PGW b0HǾ5ߗ(ߊ"(cPv,bZ_PFbxV3TaCmn"(^  {&eRPE@PEڶ1"("({{&eRPE@PEm"("(^ ^1Ion5Lqd֋(GYD9D(_hQF #"FفNB}F= 1`nV ~|Q6<ըtT#B?Ŏ6 f}%5-y`V+D@]}Qv8rs6EV'uh"9h_[W{ ;:*`HyS-=cOwb/²>^\DY)OzBZQg2%&v_GьNp_ \WzDPvumwT1)[p\z4Dx_vryM:xX]`"KџY܅ dO\9E>T\|A,h fP[\?ȃѻLۨhZE뻧lUE L ˘5gʢSc"nޅxXcu/b|LN\܌4Kh_ɉ5˦δ"5ԵOZOty=|]j)ZOϾO!釙F[Wƽ+{"qE.1G<;8GHV|/aHu lKxz򧂋X{{:jUcۢg>W0q->bր%[b~FrǵNt]h; 76>܌9RVV=E@]WT\ؔsx;UdӞ&2B$J0U>6ucpF) IU]JOprCC X`!:H d$ߑ_jPZϖFjDkpDZb91Gs9S@l'8Gbuf PZ{0ІХ@d4g7ɶ E`P[a\:Xcxmc_ B.t&H̹h6@\@V,|Mj%!98±qIIQIPdw&Gg["/OD.nzBBe}}+]WXR9\U26߻T{ `h,R 6.0j㗏f!"A]Fv}Fr>1ek,'-BG%yL1PjbW$:p[Ep߳-|M$z !-U# ،1n+s䯃HQވ-m("0/΋RSQa<я񅽹ʟ8;z\%O屜h}E@P-" [WI+"("$jhk_"("([D@]-E@PE@P^um_mKPE@PE`kEp&MoYv/wԋ(m3qפ7Q4㦲ZȃDiYCB}ې= 1&+J5 oQY MNgpk0%Zh3!'rGPxUԵ}UGt.p3ϯ <ɧ^EV'ue" \-k+bb MCCxo~2uPy@7ye?^\./L#쫿jz#eucjΈul)~33#URD@]=+zcO#|s,_<%bO V^ D%+D٫O9lGs 2U .kZ8<~Ezz=J* #tJ(#P;̯(qyy{BQq~ .X1϶.$k|\l}gK/(@]N}[d!{2B7@.`ԮfeRZ,+֬5߻"ʤ $b[B +Io2R ("y KC:#D pcP >V -L0T_Bj{lۨ2V kQd`ީȸ SɰP "{ߐ?7m~|h@72D(me^`(/Z{H-YC]f!㓗ErJ3ZlS܊0JҹO;/_I!=7 .!i1VTUfZ:E’(Щ`ށ*"PE(6{u!N]"' H˝ *ogzG1";b#% @ \)ؗ IXc ;n!_(c6(r7dZ [>K")J̲=?r 8JRo uG[53^™`^Fz*|BB9NV" vF؝x;UәlӄTYD f#y(ǟcTru _!C|#IC 6`Hf:$1Hߌc3Hp$+b;!1n Jy<+/HdXȧs]QvK ƲtJ(䙸V1 tHjiYLBaoJ_C0/!T:BzD-ZO[Ե}-ATHQH[7PyS$ɦ=Sf!plQ .s>-|nrɵ 0߮IPn [WGBT#Ӌpcy`O۝<-U/o TJ5͏yAxg {CA٥(0vZElҕdJ.xX~ "dso"[oW7.;^Wg pxOzEE>j/Oď1=_يi#Jy>?m|Z{mWb[j⭊齭RޒT*IM]µRI"<U!\U E]˕j1u]t[޻kH\I.ߞގ 7V>B 8$Wm9tm_6 qyſoчx%7\5_Y@w,zv1hl.$ 1%㼾$c\[#QAA'[&˹luw\/mIj<X ?X{Zǧ~:_2\N)ZYb7&<Z}=ϸ LwyMdBժ^v}9da,sc9/(8<~,,3/:3KVg.sZRtkON_c?A6m?H18Nd..D| )w NLGSډlS1Gf,jԖ M.?."M;'Vf|5[|g bzøh l0O7!6=UB5}rT\f >Y|"\|Ve\9W1T{yr"P,!  sMa?վV|xLPZ-D1&;n C0| H&٭k"nt@`l`/W,p:BgsֹdFc  }G>s@0optt{gשdQJ%zn2kw=Dک|9Yjw/hۆNiF{*(\A}eST jB@]B~~':,Z 삮PVKc)hB_\*m53_&Eℋ:,4<`ڴz+$ 1tK7M[ATqwk - nP{83e%r&FPb,% KUrAd/,V"%w " 4Elw5<[rK<1$԰絽"~HeyԹΉL6΍m-75LNoh&FI6GEL$kJ {!#3/, aq Ӟ&f!*Z1oU6*) B=v)9'74+SC_B6_K\]m%Gs&c|L/co7, u4 #NsjawMK-_~,ŠP}p*`n_X<^t+K[}^?!1XY$E`p}[ܭvmC.C} ~a/XѢi%Fmً1SAN ZmP!aGU]سP_PSPd'ⰼKd}w: shmx'!9v k+ ɍvә$(;Յ%N6[P!~UY8DD1>lNY Bg5FgPmY{1'NYql E]0W_<1ݸ n7e*CdX]hN]EphOzɽ DGɺӆӱ u]p<u֞oWXXߢ~-q"uhlth7xB2K}.}tkrb rO|iLT]R[FC?Z5j(:wĵ0`]WREaXx4PV(ϖ =w?Uٰ&/݂jD)z̵N`|(.釛2o !L\",3V::u7GMeT 23P| 2]?T˔˒#lX!ONZ=+gl2ȩ0{RmIgJ0L\TVw2KXR=DQJA)XQb꣔ezd/n̓(}jqn*7Ii _.JA:I%K[ <ҵeG "QhkE0ŵMGp"LG4 "uRV}FbTP` 'nG?%m(/@y*xy>B@cmwHʊ"TӍt.+^{"#t*xGʞ,ӆ"b_ث8}1gGՙtɽ`rvN{@^dBPE@PE%Uۗ@YPE@PE@xԵ} E@PE@P@@]ۗ@YPE@PE@xԵ}g98}dc}rd>ovGq,?o@=hl\{$ uCRK@HX!h!ˣ"?W !Uațʾ1C[-U-dE@ >]1˳wYyb?3]-rD۸lQ̮s|Gxs6Az i:VNjZyz,yƱ! 2WGsI8˻~i"(<\[lnb<<5p>o`쿁-\Z]*K1 $mE/KA4Zw6ʘP:_D +y'n푷? \tҿvesS pa2JDPE`ڎ5 cо5d^]|^P/,D_{߿޷ 8 u._sE]e?I̷/B8tnV$:bѶ1 0 h~4P!Ii,>9'MS0 t_( )41=c8"0r55I$JzE oIR"s8396p6h6`A@c,5r2:J|tAWv@̠gV?ؿBI6}i."٧lvaɖ9*\^ 0 <)Wuhn\A^/Pd.-t{eX@,~#9s\S)%:5k K%QVkHLxJ{k E@P^um_M{(,n. E6tXlsu&ɈO,L4*'扮R[WßVl,W(` sῦp1*aP\nC4QA R煏GjY/}Ս}\Ҵ%( b^+lTFpBB,D0hlk_zȮQ#&Qf6e#ࢌF$ DL ҄H>^{HycrAMV 5ȧ6R;P0;YƩa3̲A<_nO̴YSǀk,l%twlA" 3Oy$&|vz]G`aX-`| ܺ/AX"8?W,BʻElvENg,)@X)}MX"g:OϛBm/xDY k6RAh*~w_\gh-|71Vk6Tt{!3fCk;HC dZo&zBeC:(3u}:Չ} هxBhTsQR έJ!kSnrǛLR\צum10AcēJߚ>HY=JPYA@yzZ8_&ƭVVmlgO7\kAV]:?5~82/2G$ lBJEr @Me:Wntpm{A4J"vo$>}29> .S*7(=Bddwm\ɥ1'no4+rbY!f~~t~:_2\N)k]Ybw- ztߙ ո\p+,2؞<1'Rv- OczyJ|uK񗇇E:@~3g:9g=( t$)!V]4A.i$OlD;YFcGf,f1:Ѻowq._G BѰ0  v<&-ںՐa&'⟸%ʘ^/p}}—Ioj(☠-8Tȃ:5>ӿɖP>JfAŭ3m+eP3 *g#77/y^_l$,MKeAQ d5ݔVVR+FL8ֲQ@kq]F]5?3LՙpЀ-%]\v(Ž2=Y[FnSȶ*+Xڛ|HPod#c) ɠ0DNwL:ĭNVk[ZaKf{pLU2Y+P?_}m)8j w2DkJKL/ɋdgQn>2y֌;(0dy{v Ώ{`]Rp[Q"e ^-6K/Tl̲aiOˤ# ؏6`Df4ĪYAa2f[~$ض< jGƸM##{$3Z[t:QZ!k)B0>#js"V[f7E=x*8a˳G6 `$BmFykF\e_ *ˏ N kv9aMbwS]؁(zX<A%˞,"_tl/fYN:ah'ѺƜ6 ,E*)_6vjs˼YK m)~Ŏ$TGp! KҦBM#{1ZEG 1iwd6O\Jq kY{XQ)YMpa}eYLFv2ct`= _ Idq%+VX>~-t`_Rj? ;5o,~{Yj`]4kYc&Im;ؘP9mI ˛ qdu#**9@zX:um_I68>_0AR֒ݦPT^{n~""UhIln "cHI2i٢?#,.̈́KV֫] rʐoNB֫7E$AYcjY/_ V{f,)*)P=~D:L)q6-y=TS#l55۬?*,Gy>HbӅsh"Ya u-o{YZS7Fܞae ~o IiʣuYVk);A#)?.kb;LT^ vPVmAPv5$gG6ZCv',;ws0h> 4 AMBPE@PE oD*"("(j"("(oum߈"U E@PE@PumXBzA$椺':^D)^ sTf!bIohMو(#C3!mמRޘ\P$y3E>m*52CtBn0wrTgcC LJyfxcLyfҽ#{ =#)iuEPۯ6Ju]y>٣EV'uh"ď ^-k+bb]DvYP )u @ >%a^ G2.ɥ4z#xl`}tN?^G>[%eU֟ք~l֯2nI/+ZOP6D@] |a>zW({"ίn4=$`!قd _ kW~=2)W-RUZtߣΗ ׼S'nx3y DNREqOL~]_Hm\* ,<nn&lf C j]Ql $\5T+fVC;*؀ Ra-";\p?ޜo븅Zt0pZ|Te6r #/&Ox/S@s-l+=){{ ]6_]Q\1%e8:luƇ6IKEr%Ϧ/}n^k5!f:fhA.T(SPdA3lrT!χV>l{0ST:Up3zlm(o] k֍p_ʾ"Q&ֲSe "' Db4f!RVHҖ%% 1d)dn_ad;hByw|qd'}g-SpKNcWe~w\QW5 ξھW]'-w"/ R2JQKvLHmr#$_Me5K=)Ն PRd^iE" xvFF)ڝx;UdӞ&B$J0U>60 Q}()~`$Yv` %[3ÁC|I^$3E$ug=4A,6evdwl Av =Nsȴ@.(@ ?BUKw$0T´jx# * ?.Dl@7WQ?\X ֯kA5sF@]ۗFgr_G:!6WBMt&TNeH[0KsBmFykF 6m]&Nmh]CLSaNXTv =cA%˞,"T\5A B{Vq(T aY*^f Iv iXWWΜSȻd-F͖ "Ե=$B|Re;$ ko?S)©Maf0YLF*2ctՐ%mH֏@t2 32:II\)>UCvo?k܂(X|/4zBUf A%>%Û&\bu1A\M0$c έaԴpDԵ}%]~c1Ν FK:r`BQgAW,Y0WE&p@(dE[ph[$GP8X632ajUeayUtd qK6 Kۙcyc%T +PJ^3V'ũ1ٸ>ųZWccwaMЂ0jpDx}4ͤ8eԋX6OM;H ]"HRfYaBE(F ?6GTq.GG =&;q 4cؘvXDļ`zO/*ƗЈdLŞd8bHN-%(jQkw:VdZS;21n*KNH(sB+J?)ᄄfb-gE` zB^n%20qw_JDڦE.4B822M^r5Kسr&%;=ZFC*ϼ ß]'YR=D0օ Q06@.E(;+Ei6Y:lF'W㭱vy8e-4FM}yẁxc@PQ` `%\bXQ\be Ee{8Gˠ(/ھړ"LE#gbܙSj;EM#MW#Z">k8ȝkM9|]tԼ.! v("("0/j;/JMPE@PEPՠ׎E@PE@PE@]yTj"("( 4[R\Xszu l+"#p탒x+\I}MEd Ƨ.,M%FF?x.B䮠 5OB8j>X1 mG  &`i E@PUhqx~82/2GǥBQX> |pr~vrˬ [.)bw}6.>%(<4OQ ߠ D ,dOOsYȅ-,ڕlӿLUe}UAH}wQ1<*GP$xL&Q*eqz@fh[_b  %ʢGrk-φE ZfQq?iME@Pk&TthQVt< i^-{QM`y?W˧#ʽ*qU!Rm:@Q{OA]'ɷߟ~\91T{yrP,! sy\:zAFq~7Mq}t-zRD$LG 7^ zyJ2gL`P pMX5؏WnL5;<fHnXשXVCWkvs4HwK EN#PI #Knf`6HƐiNVA5![? q: j1{s pRc" [ oŠ_c% RR'dcj'$v^a qXfLeEPjaod]7k vҙlӄTYD&Fn|yuu|2NaX>H(!l`Jϵ ^bB|I^$oeaIŅ' ВYz,7ħ%&mLv=uhTWVq?L\;B0?v|aSa#]5ۆmI*"0um'CaC ;1_pOcOn7YF[m5 ec\3n??_qQ9( Nmhp Ά($(; ۣbUV|LyBX`? fRM1N:ijު?m(Fk|ۥ1%.ZޮR<h_V]4j4 d"|cTCHǓq]1ؤ@t Pjrg*(H#<'4-(WD+wSqJS,\м?~Vr7&ɻl^Pum_@lW|:cu߳n]E({Ӿ)bqe}BD*m5 mV"R:@!?^r佐aZ +`ŸgPvIȷj]|5['#?_M:@8j{t0ʹ2V+՞.|.Q6PmY+"(xD 9\Mz\B oNjX.T#S\ Z-h,yPTPSHé==m8!VWu!+e=cRK$4Ď]vZe"?"%=~nBn鮘Uȓ|3V@w. RE`fv`)d7\E*Pʅ@QfƳ&SEbONZ=+gl2#*^&\tJw}=2;tA,? `.cfJ{P[2枔z(;7fY Ӄpc7vC(n쫭E@(!? h<5!DŽG*~TVE!O*""@gk\AN#zE@PF@]۽V2$6[݅Uc {?lqvcӺ"{4 ݛ("([A@Wmߊ&UE@PE@P=ھ{PE@PE@x+kV4r("("PvLycf{t^.ՙ@f!hcIohMوHr qLg>^e~m ~~p'VSx*jxd)=^\V[EϽ|(#zU*:KnxXD^ - k eϓ`%lp{jof`?-ի?tҧ)y"~Nm$?|ٹnp9\r3Il!5Cթl= *>5[\j$ ϧ_@6/s &] `p< .)Nw%Ld(p:z)DI4l+}HUd!իLߏ..O~+kf,~/On>ڸGD"nyA7Q(,(z>:c3_-{n.O|G Wg CøR*Kеr˭Kl^cH83n_yX}_3\z7F<6ʐ_:M>NUB\\TC6!!Vvl-_UMwʎĹx<:3$݄%<3%*Q)ݽ` C'4Z=iB5ؤ>Of/)/&cլ':4 +RE4|o-k"Qh@0ѯhTr"="`87Ex_?\ګ5ݥ ؗg\@3ϾZ߁Rb,VԪ[- UVrfp׎%-Q"Zе!O'MNd/nr8{586,U .˗FNMvN,cd'A3G#i!*acѰĨsunO z.H]'ODf~ɼ4j>/K'MF"5LyT] 'A\Qc5ccYh/@TJQ!UD͔i/i!/!)O\KU4 d;_îtrB,bd}8A6r8!Xc&| > E%A(cUa)/E̶q]W6X.Vmc?>#~Do<&<ɔ3X27Dl%84)X_Ԃh%{6l 1iRsQ7`<]@a0d/x  .\٢ 9Lc4jn P %R EgdKHyVfg<BE.R@JuLJJzo&,|00'y/M'E9H<:3&N}uG]U6"P%椚 ׊SǢ\-#S|Tڹ+6/Xg#^^U)ѽ 7^]LRݢktY/t"1h'{3e`hm;9Jl/EϝhE}\x9nfj1(9uEP'!.51|inI-& 9ik@VTDE@PE@P^]}y̵GE@PE@P V`U"("(//("("Ե !lne%/fxE"׳q=<ߛkޙ(Z]l/,1 9{_[l`3@'<ʫhJ7=FN'R,e+`0^7*r_./k}+2<6W<4nN(`o:zeϡ׏ixCI.@._ PNʤ\5c~>@꛹wQ1GzϨʛ-$JE_MXv'h:0t]'* ZΡn-|"{̺c;D ԉYZyDי$eQF^f X >589!{~CdE# P?n~-SG@YvgVfê]u!61{~"d`oV :'g1^G'-m E7#S6kfvX}cfy74f*^[:2> ,S6 > *x72 >қ%hA)~kh†)ZM |PъztmQҚ( pg$()(UePjKv:N %^TUWAy5sDO3; ECYr-Kvm w ii~'kQ]M| aSQ͵`bfy1)-4N^Qư3KĊs9EC"cV-3hBN?i6 m&DPJ`^`{P`{Ԏ&0Bx'E_AA7y~: 3`6ІĠsBM͉-iuaN~F>ݢU|$۹ QC[>xx1xA^$sO Xpoq'FC,9.ϏYSL׾Y3I>uu82552ohhKJ1`^J3D*>4;fZԆ6C=A)H,(6kbLG'1gSdھ<xtBBCc&K EY>-r xtFVnm ?.˙B=Ȥcivzi0l u~x"kC?G&H k=zpXz-Y,JY|*+U4epg!"JWF v}jh ')PCb5Ə'sÒ"-`^9t=iaS~;j5e74 3J .cvJguVgX9N﮵aQ@a%,ҩiiFf1uPvf@{->> j"_uΒ{`̝ %;YCOvN 'B_qF[McRJ,gW3(Y2ܺ̕ah՜{^'[&1k%+b6Q`- 聤&373Eqc葂g jUQe,jFHfզ]9ɦ#Z1w FIE&=@(/@3W+l ! k3ɒ݄'ޔ: E42~"$OKIMc0(dgwdMǥ\fR@Tgu"SfCS=:դ 4$eS[ RSNH ' aUuaXV'$8a<_h>d7dM yX81KZ7 k.0HW<tET絁HlW5N 0=Lha:ҫQ*#'$l F༄y ٛI(wxVn"CZ3?!)Ex4T32 -Wexڃ?⭠r }ߢ`ԼLt9!!3k'9d PEPĊoh{;'[RVGk;SsydK_)S5(\p7)zCv`0Zd8P TcCJ=~&+tm-j6Pb]uZp$B?>8^glWb<"=/k"GRL,nڧOn۫rAq{-jwl`w8yQhgh`*)E@ @DfC;~ $8G)hԢFC }G@]}נ.c|xŸ}0G&s{*G;ZΫHTF@FT)"("jJk"("(s#܈*=E@PE@PWB@]W^UE@PE@umF {voջ^k_zx-_? ,&FU)W.v=nLE2Ž~դv-?^{HycrAM֖gTLMUSl۬1ͮ*ɳ~ZQ3%޷ӑRUo]Û ]- pjقEV'uh" CC-k+b7Ҭ̯-p|O׀ ۆ3M\K%ݓ V`8K1n<>zqt6Mu95(6mJ- W;GꯡW5"JJpC?DF]HwV=CVres q&+K5VdBܐh )EBåKtiDLNd$EE\]}.uUc; <ޛ|w'~ip<~CUh'7}| PJD\hChYVub04wO'1,#aGdx֠63[& 곂9q~M8t]r7qZfNO"tZ]g?"Wcee")$`Sff#% |Px7']MɻO/ 0N"N7Pω| ba;pd]WU +KgZ.2BA2I>6҅ϐ|2h5R`q8_ %ˣ,| ?B\i @pzjQc3)vɓ-7Pӱ!)֭pU5UӍ㲰Kh9쵁"(ھ7Z BB7e&Iݶ,yQo.m 6+Q7lIG 8K؀CNjrak*_&kGl`bOU:ZPb& W6'KvZWs[' E@`k ®'.I8!اkY{T)w[6yi45`Bdhh6:j(@ <[سM Dw>C]a\r]6B/JA >q2AjR_Jc5?dW+XDdS}JKPھ%Sʝ Kf_kIYhx6>"7Zo-wI[-C,f]mV"R"f̀K޳WdO8wfF".L=CF;ݐoEFqhp"5ȐS` I ')_<}p:@*"t!qO='ThNH!ķE,n.O?KIϵm]tdIrpF%Y=]Ye];?$UeHCJe꡿Ht[aj5\9[]߫2|f^68<u?>i^L3/I`钅0+UbE@ f+T[Ao$q/>6- un"I 4Eg#M"?)J Pw|Gf `!Ew23K^z\X]ze6E2 45`,g8qV&MCP^`kuW+)"`\yɉp1&wE@P^} E@x+ ]VdV9E@#Ե#e)"_ثG;6("#P6E@PE@P6E@Wm7EP+"("" E@PE@PMPvS"("( (bٸf9^ E,Dgb$1L{RǠ#%٨Y#I~|Y˲'ذƐ~vD~"Ե}z@Jpήn0~uf?~Pk^ߴIza2*ZV</2H .R~mcKKVx9Xswnn݄ſr_XFM;KPټ1Eisj)lQ,6TEPV@D^Twk.gWd ?t@M(}mu,D]ڼL:Eug`c^ThEpȦo:Ptrmv}Y'k0\>ʣ"(vPv;'_;~gkOJ[yu1EY0ћ?E:x6?e#!OfN"=}m 3Ho`$CݎOBPa Is!A{̗i͡4"1'') lQ YSy6"לFq(6Pvev5,@~\DaZR ~\+ D}t"چh:X1K1P;Võō9J|^@'=sfY.a'} 6$[AdqmQ1֬}E߇P*Ӭq⾔G4>9P ˎKݪR3(<'|RTe#Q J![U6E@}#Ϙ;|&_"WVp,D25ahsIT+a'{M(,ePM.cNCJrAc'X[&  #*媅ޙh1ZDyKDLؐqr `s5YܸT,D8eQ®,$Q"(#3uXYd/q8w૘}B$v5UN6 Y;x=[}`5[\ =9'G% 36׍.Ҙ_c͑Œ~BŇX%l$X6'r6`B>B0zCsy9"E}.WUi=E@Pvumw@ {BX )J? =@x=u>B\4jlu<M4jjr|76-Ԣ㛝)gZǒeOz3r4"Z6k,s_U_':֭ "̏ѻJM!`D%+/$U Aur׵LI $Ajt0S9sє +BԥdbzФe:)Œɢf((a>=QYs(h К"LB՞aE'$Xo\,D(^2/sKzxxhF`O!H#`ugoS|^/\er̹g_1%Z4wܶ">J 8z-*#p}ٿ 9 M"F^|ʴ" fo8UFw7&{k ENZv;:~~6uo*2S4zCqT&e2>wH=9ssw*n;ہ3_I~mbXLA 1[jIhAmGͿB HJx Ե݅YyP$LZFasqdF:SA`LŔTYD džM"KǟcTTl]6>`(Aٶ ,5ėE2YARWwFt>4DٶtkcM KIR&/ƲN.CzϡO) 4Gj<ȵoiS}ZMPC@]zG:PuyҟBBC<+c=H:Z*,DzPEFJO,gK:\[/LtaJ,?.X-V 4؞((a+uK"buum]=wi+W/](<k;{CŮ'.I*NMbyR_M +p4Qɻܳ&m5{, PCo-ϖ'"dE+DI>C]ajk]di((pԍ~p[2FpFDh=p\E@um7EpǍFxNԯ[4t,04\(W+.@ K>gp?4q@H%r`;ٞz/Gp'uFvHDI*&u%ޭBFG`${G9x!N c9QP WE@P#~pE\;LGS[*"X۷_NPE@PwH*"("(o HxUE@PE@xG;R("(F@]۷_NPE@PwH*"("(oum߶~98}4c#)>_Zau"v`y?hr-WXMBB6<٨̣"?\ cTiK`z$a!;">vpήn0;suf?P-k^ I7za2*ZV</2H .RUPM'xm!o=~O⟯7y A~`("+;+"]+{C@]>+gȜbSn ߠ̱+ Eo"WY iyt"F)]M`/A_[NnGϫT?*j"(;;ero 5nz~Qg!Dc.a]LQ u._k~m=c((E!|:7w0mk0u0 LЀs IJ1!i."huO[R49Z$Ģ>~Dm!Y3!K^|8U JGTE`kk5h(G ?. O|)pG\Jdm"ǽӉh !`,ֿǜ:{&AJ|(@'^sfY+p0P>~+2 Xlݓ&zEe|[!D 2'#@qDs ZXAPriۘ Ϡ8l$FJQqD'1Da*YT,E@3#Ϙ;|&_"WVp,D25ahsIT+a?{3JD^>V/(Z^co]ߡZ QZED\л-%Nؐqr,@2X?,O]o,C<媁[5E@xtv>E^]^w&`2Ӊ[]U> g!*Z'kl>0BQ Ȍuc 4FcCsd?E&?!CiXpmIc,D~_~!!9_<_A^bN1Im(<k;oJX ? =@x=u>BG1h62Vˤ_롢u fgJֱdތV Z4˜e)c>{u~0s1|Ndw2"(//~ )_&K\d_yl(: uAMd3szZU'C|*ozW|5C1Xќb-eNr범%l ]V1|^ !9yWVEEPE\ ~m-ApP7p i4Uk""UhIlnm:[Ee%{W\ GuQ9'[_>7~)-'XjN -5N/S/1_.b>4ُ0y_Poѡf( ""`XO-*g"Hy3S RK FL#9yC QUFq&+B¶4O3yE2yZثid!d)1*FFk4c#Wь^u% -'idQ:ҜQToWYBkʸ"e`LE{B.6$h EGe)Wf,DM((؀Tĝ 0Y;PQ`/U,3 zà2{ǵM8\({H9R*e^~3pRʒ,XTdg $\ITTE@P^zgVE@x@ދbɬps;!PE}!K*"*nh"(oumߴzU8E`Wctώ=m;("Ѐ7NFPE@Pھg슀"(")Ե}STaE@PE@xk+"("PMs;<;Ϸ>k_zX잊1 G{MzE(W.v>-0  xI 5Y[BI3jT='iDܦ I\%(um߉' _Y:[D'ق "KV˓K4 Ak 1{eyd C[s*+Uz'o=^\/ۅ#iɁĆ$h#l!PE +zӟ뻥o.w?auu-,ů2"&bb†~$(+sse>V.-Wc$]"y| *{w! ({@@] dg~82/{I}G EB'~Xֹ lbJoC5~<_ /Iы=$`!Ye _ kW~2)W-b¬Yj_C綰ICMa1=>S@$Kf x]e4 DA Sx"Oaa,kME@P6@՞p[o&;\0T{˼P^.AynZ j"{LP[ WD"PV8[ Jc"ƷDKFQ2.VZ'ZC!q⾝<j TF 1@rRe5NiE@s̞,oLqw0uH"mT:eA,)itX;b5X?I_QG"ϙݩ(SfZg&ġp-5$H o#N?C!$%E4DٶtkcM KIR&/ƲN.CzϡO) 4O1^ԻVSE`,ڎElC@]H<Ϗ!! 6H:Z*,DzԕF[mßXG`Oj78_8fgX~\l g H`{ϣ(o+uK"buum]=wi2 jm(Pv 2I&1rN`1;5J"|S27%D%rBdhh6:L`3gu hHlR hd!g(59lU-5b },/~Vr7[n70ࠏeJ"(A@]ຳTFeÿrB@dZR-|˻ZMw,DDETE&J,Q#I1ږ\ڌgKvQD9VaN-fft8Z Dܸ E d'^ Ek)"q=_u$l2adԋXT#k=yy*SfK#Kj_C5~ OoKا3 vRG{b꡿:Ynj'+0i8OH bV% aVPY$W{BtяlUpE@xW}d)*qwFڦE.4B$ŒhlT3WD='墄=+g}WCYB*9| q:]] E *eVj5X=t%:,^}@\nzI[xE?3٦5w*XxYe+[Ɏe".421D(^2/sKzx8j{CԊS|^/\e@Yl1(/-A2hXmfEAJOv.-:2/u]6 r<}'l\6Ŋ` Xth{%FHcX[C|( ˾?BP?@|NFϓ{/ìŧ"CߵM_FP4^xoɛ y؉5੤& a"O|wUL& %*ýw&qJ| 8yOp T}cq|S (ڀdl|CdJd?MN@heٵ- k6IX0Ztv iPt06^*E$X 8#~ ʞ,LŔTYD &j#aǟcTT'?"C|I^$wH$u^ltˌOdn84ߏ[ny)FU~:\qB0{!0;th˝ [f1- T6IFMUEl,8FR-}@jn9 H?a| U 2YZ&QT3MԵMl+B U'G%%ɐtx4  shm{I'3 llx؉ ˏ XЅݤTÝ9A=џeHN %: aw3\UwR#Cq[K6[)`mF>*q||Qm]ٕ`Kɂ[pTG767)|--m!7tdc VZv03},k@@]ËqvWWx~%eJ| $Mw,DD`V`H> l1eR qWKKc3V|Lsy-Art<-n&pGZX`f4j'F'd yAWe j?·u#/2 ,g`" &GYJ ~W$7>Ŋ$"d&B)''̖Fd4`j@VJ.e9R\"LZJP{:M7@· d#*ir!`Z_?݀$hL؞po$K=GV0I휊 ƱQlԒyaډ& y I=h=D@OHC 4|%$H۴(8ׅf\Y>5Eg#yCu˟ŷa^q8)%Y9E2[T*^9sì⋮mp-ұvKA`ovX~yݵ&W"fa׌ 0Vd@0t%đrL8"A1`c*{+ ʇ"(o z7plp`y Vxg&?k;+JLP5xksy.b4K ԪBMdD@][E@PBb G#] [ZUD4 a"pLPE@PE`U]ӈ("("0um'E@PE@Pv umwM#ʏ"("(DԵ{jl/}3UVBHQr"{sp;EU7e1됼.WBXM`HHo ,< hmi!.bZ=D;1&X=6Hw+;ɉ\o3^ӊQR++ +W]0WK{8l2O# ޭPo3)cO/Y p?JQį)_b9{E3)UPJs<:{wV9"ɥozK}sϮ?=Jh]@`ʃ"7k7zF+c~COn/_ͥ>_Օ-܉EWf2Wqo"\dK+1 ",%״ 1϶.$ uQsz=RUE='_? &<1$ nگXtv([eR1?j?  g ܻks#=gTMdd"[Ġ6 |3 /,U_ZiG8YdKp:W%wbH,JcFdTT{x9 d#foMyX26&柿\ &'ثDfa(/Ajzzj2{ߪGd 5zg>-Ղ0V Y 8K^g\evpT hH>o^d@wZrF2O0WVc~ܢqYujjd"UE~˗SDŽiD/B#P/'n"[:MVOҖ%{Y{\&JT%P#W'+h\[SR~(rԝTQ56EXDd ]7JJ(rRqmjݺ眥*WweKh52_188N`-'PZ xw#X HxDJoT$nO5O7 ]c",D4ѺذiL?OXW)gb0DBl?Lt%\yV#zb]9slV>tYs\'b؟5lCNjY8MDPɖl-@%;z/$=4wGIYLW(oumߴzsoC?<`n(2"!34wdd)!綃.Y7kaO#'5QxH`fgZ@Yl\.l \O=-'4sܤԹ"֜dy+r-QG5SE)+{{LѥB!-@zJkRЀdTUIa& ,DD骢Vh!Ю/[a>S5p]R zx2;.r떾^9t=\UX a\U.0IG ks!D9OuE8J ;6 ξ"P(OZ)d3P+<5kq+ YrOsdozɮbSk"zkVؠrR> lI RYzؕܺaI2hÜ{f*/pM5H-%1sN b#0(hHȰvn0 P4OftPO34$es˪*id,QMd:'$DԦ`U[ιE@P&ЄH+("("jzR.E@PE@PkۄH+("("KE@PE@P&6! |떟k_E|{"9l&Fޔ~+^Ijm{$䂚-ܨD6R;P0';V'`b38R0԰GN- }^2@zڀI? LA'q.u5洐yh~lSi1q(-SQ-kweѼ8ZִEta`Z8yx8:[y^d)juyRwf!2x r0M%~mE^Yxa@fTMBy@7y=^\/rf{|-nϭg}tR>_Yؐ|CRWЏyAxg@K1`fN~S֚~&ח qƳ})`ͅMx"2r Ѽ&ҏuYw2jUA Kl{dsۂgxV ?<Wmh:35~cAmj n4bو}X]./yl1B[#E 3&:z_mյ}__i&cph@7<"7MZrE*avtSWNI A ăB?߇{.O?:c7I'7}| P@Tw"ϰ]Q|Zf<^`ɎA{p bיWg CømXl`APh W 1mѳ=!JP"-VTO aMDGk5?@7z[3B*Aap49CGq (E6#ͧ7OI]77!Dd+bNSE4ʷMBu*m53_&JgTSd5:VNxV/%E!#jP1+}_Y@^jdc)YXb n%rXC/,V"UZ5nE;AhT,Ƞ&6Qγ%!8q zتg=rKȵ^nt cC&MVjm16ƌP αӲ.-kbMfBg~g۩ڐѰu~;)Ed"Qͫڅ!kpr;,X_ɪ{-G;(0vax1n12R̻kZn+J,"AZp?fv+aKidŔbacGzP2iH^GXM#{lbm;77փoL;+v3mXbE%\'?3-Nm"=zEFJO#'\\]XЮ%])4ME&lUoxqV8UY8DD/10 ,r5]g[6Ԡ۝, \}V백V;zw?LjUGtmX^&2bB#Ӫڪ n O6O- ֞g*U}ɰES2,D$`VeϻLC I taxH DϣR?d o1S8|Jt? ;5s* (qm\, ]׬I Bg5KBltƻlQfehlݭ wu'%]_I#Wz>ۖjv{l8x;CM&2bȎj SS +wDKS;+w+?J96wBQyŗR-wIF[MbuY`E`/"*8J\b-DenLc2~RR<^78 :< ,N`f"TJD^әlLLWu@Ki4^o{,+X y1*# ,LMصB (;@%20ΖB: E+B$sWM(CH_T'Ej(J4% a\$~.}W e/6U$>I"YVCO{(;&=C֒E9vv~$poW\e E=ZҸ &*L 1Wꕛ!)uC Rʬ VC^6`2Ulepm!ũ#acx]H#G8ϧ}a}*"({F}IJp"K"+!P{$bUcmߔ:UE@x9c+寉~>##tNGSwZ̟8;z\1.yKB a7a[E %#Eۙ$EL+"("(jQE@PE@P"XĴ"("("*FRE@PE@c/7sp0v}EMJޘY8ͷI4Zqc6=יJt\&hH{'$Ԭ (44oI‰-~kvt4ks ,7>df`q_Ǫ t~qr)rD#{N:ad2 tFt6TjMEEPE`N#ٕ[í"ůK'Cѿ#'C͋za2*ZV}E -xߵk('x1r:?^38yjfd4/`рծI?f2W߅+zPS|(n f,0M cLm^]26O'O&L0x 4Vk+//ׅ!V?~6+;Ov<ʬ(c0 ?zri3.K+ͯn`{E N"?_;_x9:^_Y@wvQx߂hT6_5a̵jS٣"f-W!~At: 5Iq~=|cR}ܡ&{ąlƓL.{A\A.LI*2(-nݯ#c~h.ӱ9_?^ÉP U lyenra,75AS+&t ŗs1)MQT]vRPk_t5ڪ]n{1,@~\DZѧsG\JY}>a#o"چ4|l"/*u(x'#h)pv;lI_.<v7cTgMaw{ӕr?m>gG&uu'k!Á ,A5df*M~S&ǟcjynz?4xq3 \UH/ 4ZdyzzT",lh {()5bkTMvj[uK㻝F:ͯŎ+ڪ}?&{Pd\`.|W{9o"Rh9؀=Y*3~3^ z;!~s Q܎[AtC]k>."Ϟfc[aCNEjDb%m>` {"A)~~}zòPKVP4ta3RbMŭfpU!ähBL"~&#{u/MStu >NK)EԵUy LN\2՗?o"ᩢuY\n>Urb:F5X˄nEwa"s[;tki!ꆜ$͋Ԓ M9Hd۲b+; ZgEB?U&p^?$a(o)}.|bޡܤ @Q wͺ=] {tQ ӔlN6bBCP++um"vR80VA(z67w+/Hv"=V`p؛@6Aqa5I-_?^om0INEf`rl[9>eSO11zף= NHС 8rF.a>ϖ//@Z&ȥk 1͡0Da۳uš\H DD]5߂=D\A DbMUvs {&4;qTj&7ȶe}O Im[.ܖ8qǺCAZo? Rbhɘ _,ͷDťe6N[Zc~p!|B0tU{j1%pNt7Dꏳ TPVMcGp2Κms"ߐ"Uvacp,DDPV`,i -6F?cn]cCsQ3c%SƉ;C`#0(#,Ҕ>n.m&"b1Pxm .)%]Zf]'5,&=־j30GJa;3E'\(GA̚wk[JN~E+lHN?Hݲ1J\  {5cȫ ZȉXҕX!VIZ'~u#5 ġ~luد>Dj ekɢȮ??p"gr&LqIN0 *~=˞z#w_)",<뢒:2HSd`q(h-=% rs&yTd0ev],#^"s/ަBV7\-`/hTؠoz EEν=+{%R? &ںO6du<Ep_ƺOGC^k$?ȹJw}NI[ˡr@2cb ԙR4\ۺk9y҅ -ջiad$::]Y%q2ݧOt(S>km~;fRwW)"U NNuY㍦m>p",j;y7_)(ھ ک"T3>]t0W!Y_lyrB@]QpieE@6mq;\Y4 {GT8(6VVv<eGq 8p(cЀ1hi]E@PE@PF@WmwX9ʚ"("(ԵUE@PE@aԵa(k"("(cPv ZZEiI^&Yćo晳%y͏f!hm׼Q4ZuS6xn'W¤ 1{ zqzeRVGYR`RM$Q8HJNչm EqaVgssiV_M r|<3Ѩ:&qh~0}.#q k)||l{#v#LMv-aR4$߃7'!C).a"scX-Onbπyj(Jkxr _r(t}@;Gn rROn<g%˻E?&UùVGk!֪KqSN!+AE`~ܞ=ܰ}'{Y;$ DGbwߖw*lw;' M\| `< 6ɢ "whvO9`ϸM9jcX]W1 ,#"쮆_T㑥QdJ,R'pT-> (ˉY#(Ӳ~]@ƒ}ah{~b}3wHJtaL"])Fd3}+;ߩ9 ?SftA@Wm gpk1C L\9GT,Dɢua- ׁkT &ń' Np|ci'D?cE`ii>uO3/q!d\% ,oqYݰ$ Բ`FSPKKZAwò"]GTViZ+rg4iZr!XŽx\69Vt+&D"Hvt!+Y+ɲ>C,XbTV(yE !_fcc"[⺊~,Dz0EFp {ؓцOfcP\OACD/-l =*?Kh3 VXOmؤ9YS :}eZZl ,}l @Z:lت>/ pdXCe䩻iNOpܛ)ڪM0d3CŧROaf# }+^LA27G1!h!T\*F"܆@~r[q˻_Z?"MkvI5g K=t6M:jXFB&h|-XP`Sl_;kG_]!@h~[ JK˹?=i~\S !28ͩaN.yNd#oSھ]4 |H/!uC(*oڵӟ Ig!Ҝ 46(wM7I"Cub͒.@Trg`oWzF@Vd_%-&O89ɇMH6K-ǖ˃FQ@ b’۟htqi5mZBIH`Y Z #\XKwMt]$GO`!8[Rdܙ/1L4 PD' W(/;S4 U"ȟI%`]SYhl@(߹Ȇ܈ ԉƐ[e&XKVW#{dE>o&I(ETе*dU:YrZnk2$p4gЩf5 t[R-(Zm 'sa<0[/PH„ ԠJ P^f D¨ϵeɑ4*? FSbMXhzS6mג/# FڑE]^$NpgSw1#Q߾o?=!-h ʀCݾ?7PTLM(Go99'szF(^k7=a#EQ2=$`AnɧZQ@ejeL=PPciqW6e]E 7a dso0wٳuGًqG{ 6;&}7HSw6Ƌ1y7߮H@^׳E@PE@@ ngbnھ ک"("DFI@Ե}ZVE@P=GMDt*ۄm~ZPE@PE`gU۝Q2("("nVE@PE@ԵU(#"("(!fmC}e/ѻmf!(Ul5<;:^ɼF{d&۠Ǫ` uօ,ikVs7ȃtåE@Ե],̕.H\sd# Pw &e~?#ֲGm^6܁5("92gR5qw IRN.&գ96|m9`#)KmޭaX^XIi#E@PB@]ۗBzO7ʘrӀw{˹-}/V"~=ނU\e5OR HѺsWpLQ W9w_SJBi"({{b4]pd8Tƹ ^_Y8w a!h1϶.$ usz=RU"x0|VNo@؏DusURORa pe`,~ՃblƁIBb77D("OkO ^NtX Zѡ9cwϵ9pcwD`O`$QMtѨUeSg2XC{ f |< ]i);Q?~vpS)ךw.ޝԞ 9ISZ"(;;byw_)d+A j\8B=*m5@?wRSf o%_ {6u!Ÿ|x>4@E2򂟺?2'[ p[/8>&V[DFpQE@xk%܆A`Cy~> _!8 @{h]lXw؁֫Ku~2+䦑ClO+nޓY)AG(("P *u+"@ɐڏPX)a '!`g"=XV`#=u:u_ !щAy[uBY'?Zo!#&|۪j^8, ZvlcBe"Hפ_5CWѵ D: ꂀRQE@xk:Lnq+ܩ ): Blp.=k,9xf!RCC?DԹYj):zf0 "\C.gYz^c{:\ `h>āMDNt.o)tdr6j}^=kUSzVL P?@`O\a u 0qD6ru߹(~Z.wN/~"] [1GT^4) )cH5~H~ňT@ ^ lm/oIB<` sdl (5Ir)ߔ _uoR)][->R &:;1)p)A !Iyc%!rV,}O}ۈ3j_iDn\8cCl bZ 55M= vwɫ ^Zn>dBv |(>bqvA4Voe(0< ǻܻmgu VI07tg_sjDpiiiNs]PYr#M&YX>D"+~3Kz6G=)&NR%rT'=LV)}RD665B`c[ޒ1eg!v0卧Im䍹8dVd)Upu HE 7ߘ;ft`;rd&fhqM32S|3=;sA6g~ QѐA+w:IFR{ؙv1@efj${C  # (߮ƌ~?ͲLwEL;IK9cK;aƐ&-d^CoWѧ*z̬$?*#NRyK# IO3R+&bi[/2?A0EK_$Y( i4rӯSn _5O4[WZ (Ikp#$귋 CWmɲ>r&-+EU,L03!Z6v)!Ѥpy_!ALG @n@  0q'0@ԏ:8@Wp G@L+r8  &P9@Q @@C?qE~ !ꟸ"@P?@`O\a u 0q'0@ԏ:8@Wp G@LSݙ8 0@`77^M/"@`XYYԏd=@d}@@o]ZP޸ FV隝+KGJ @R%o\dV+jeesF7@5?j% s!B QCJ rB@*|饛Bמּ$/zޗe"]ҕ Ǻzg?IMydoJr%B $3f8^4C !?vF{?xӗ>/_{|?gm|'.*Ԙvy$chxT \tg4ӯGhh%f|~ d;7cȶ>6N_WRS:VVWlL.1}M!xwT'bo~ӛ<5}Bo˚Xg֭pN7ܡEGiRUAStG=Y&Ӿ t`#D"G]~ik1s_;L|2 07qðU1o> 'ߏ4)bxi_H>0M/*c MWW5<3ԑU~1sԟ{8w֩#n\~iAM|(4?(bѯ?>#< JDy9Za[T=>}sÝ.y)IGVyY vCnSnsyH*~(]te>bjaמ[_|Nxn=yS/ɰUgM*Y[<m ]a Pxp_^vܯy2QrgjDXlSF%O|(NBJ2\U՝N3/J4PjEJ򨟙^OKN%m"1 2&7<OGw ga:%J`)<*dTc.-k `.(0u.M=[T57שcW (u^/W&zV*AOtk+nf e$=avN a^"YQ1PM|7ld=R(LnHs5WRjݫ+hHT5!SʾCQGiT>܁RF yHw} -ԁIyUpH3/3E2w9m9"v%$@CHvC\^i| ~Z2Exڄ`B͝쑹3 gboG0z) .VO2@{_V/Uփ] ׬GQӧ/_T+-EjP xD Shi5qYӢ^>s 3e>_EĎ{|ꗅd'eWf(絥idJ\׬lR)/l^8Myc=0$SeNy4F\z҉gIUpLX9u5'7j @V7UOG%4wn9WJv?Oi%Sl{Ez"njvYkԒd;nQ0#+ UG`/K=twN 8h6P*?r V%r^iz4?{9?o?"l0 :U{rQȒ>Sj ˂Z^)Kw;>%:"t_O$pL Fxp]ITEL!3*!F`]vw֚?H &eWQ&Yf =eF{HD E@:,"Y O]N+3qa @w3KgʨryYߗzurJ@-.K G7dTNkZ 9b(f 1IYg4΀l+g0TFR7AZr7I< O弳 %91wZ#W遊|耾cL8~aoo!kh&pg#lIOGv/%WɯoRkզ\ C[HTw['.S3_ꀖW5Z3iöX#n]aI3QLcX6@ug$UĆJ[+>p?"1r(ytbq *7 ŧ8ȣ~^a6hErM 9)jׇ9J#$ @(ؓVy|I$8ȳ^M}fHN.~Z,ngx?@;bgz<<u* dyPNK$O O-u"M'W^qOg/#wTR`a6&*bCܝD1Tjj*)4 zϡ=>i ܀>ڙ>g|~ϣ~qN\Ƣ=tEP9w[Q8Z0$Jܒ|2Hiw nZ<9A _4mr:BE`2ElsGIZ[6.7Q8Duϡ=>i2܀ljn^a\W3\+~LfzJB^3]&d]ek*%ųӜGT)k;6;?ë(QvrIR=qO6!'o%)] H$O O-ex dGNeT+K uJEẹTg)G!nʕry F2(C7[{gray4RW8wkүDI @U8Q=5* DT2N! ,D g@"~Tz 6.n0j`1"|@Tܡ P!Ӽݩ,̗ϓq]ֵ2V#압>B ꏀKԿ`!@d !K v0^ <u̫15;? u %<[H+7 y7oٻj k0D. #ƒ@r PL@ @woL~ؿөb"s1b+LC@tMigm֪/߳?<\ЅŢ.V~NUTu8!;=׿!eجbj*_FM F.w-7=ȕ"懏xSo]=xToURqNG?rZ^>s;W^ᮘ~mRnQGAXwm9Z'ݵ];b~wjb.!6{@m޸IIʻs ύAoUKJ/wdYi/W6Ho>tltM91bROB7 DGDǙK{vgJDՅ?㠔__B-Nx'ᖘvGؼsb'5赕XmS#H8U$ڳɆ8s>OYQު>abu/T*2lI+zp.Evsv&c4| PG6%}q-S7c2q_i6^K)[D yURuݝMjK1F j8cso8bPINc/^5v .7^~^yuea)_=ݭ* ^j|Ss q`b;! X 4#46+; Zw@ "?!_jeL܋ل**G~ Ӑ2*Or"[?'>ccXpKXs>&Sj&E%PrIBRcy7@S\dǾpz箦ln=Vu"k"ў[wϙ 5'WT@nDm஠iE3;wEV-zJGEgǽp0}f4 /`M{@!mWpD{C3cѻ8*x23 7ԱgN{w996/zݮ˲m!'pҿѲ F3xHsXPp_>aY1zNa 1-BKll_{bp/5%%?+A TR5_1] j Ƥe'`Or{GϾo2nF4˩Ƌ_ݭ{NA^K,P#ΛEMgm}"i !Eh]h}9pv*Qec pE]A'pZ>[24+vS[{ Bp+(ԿwOőb9𾼤 ,+-g J I'jEZ%%k>j07]x*TĆ&3cۡ<,t/7>:$-?]K3W)_so6HϚHNu㣑g[svAgj{1mb5)QUGcN- e8hC|rwywrK\%WQ~ r#5l[f>'Ul%i| ӫ]~#<x۬r1ӡ498ִ-I{C&M\w11ހƋy7ԱZ"\=|IaFگ"iX)t4n%ĝ2&b3!ݵio60L8UrՔ/_c*Pu裰`%U{NtMҌ|/zgz MyEEtmo~JUAοWA//e`xw-Ѕ_DSMn ֜g!mM!zNMpQ-vS'>3FI5\iu*" Pv]د? 2Xu_ @`FƟ"Kb7 +F~+:w+7`|{{EAȕX>5t&qFr܀qwKIN hHSC1Z͐D@]WV(~|* EJ ?+++v !,@ yF[`|ԺWn@׵2Vl @ l*7 S|5| 1 Q@P PP! pR@BQ?ҭOo[HL^{(oZ3vv}=\3ۋŢ _%SlجLkx;=vlfS+#_o_;pu٥GgS5^31'\꼰:ps <~3Cۣm1h~M:֜9kv~՟BgisWzsomaDais *QyΆSj;!vW(964+XvJrK{fYa](sOEO8tpУ9:efiǞU5 ZsKgN״+zles_vrXLGDǏ 꿸~o^a~ x DH?l^xz<`zzDg\ f' wno"}ZE3q]@h|͖ k NhOwium{EH\fW>={WWbPas;o` 9 ᱹSu2쳼&PH:WTe<⹻j3_j%F[LۈAYxV7]9(qdín'7DODIλR唭Fʡ{uvH&xϙ *$ǻ3fi^^1+զ?M>v՞$4RX?$%!5ya4> ҅={-ӈǬuM]U}jUVcS#14n|LW{GL7K9ϞC"%W4!/-~zh2&-f PU6.7eG]?gI-~8O1-y6=Ŧ4P˻%#Eh]h}9pij k[i{4N9zA=+^V]mo;W.{*32<𼜾0чᕤqJSRջwG2$ֿwg/dP}J^XDjLDKMk[k{x6ٯs3`GXy֖IJƳ\E{k~8WCz:gH)6=*զBzG‚6"懢uѪdiUP|Uc`>&T@ʍe9٦IԻ|eY%ֽBUe~'g:\k[XoiXv [ey+Jba:I.;Ǭ ѹFMG2SJL-D*dz:3>RnJR ]k҆I׬|'lzwyGe¿+afss ]< nF*{弹eaͷw"5=v5jf?{*.rgC_Q&rc(I{B@y;|t)Bg ك#54;j+Nwoˁ@-y+7`|*(|ƥ`'@`|fH@@"TUn@vEy2r&k* EJ ?+++Wj? &><U!K v0^ u̫15 ~ )@6 k㫏=aw$+|Jbcbc^0 PPq̐ 0Ǽa>@8yONui ש˝z]#.<\BWUIdU d!Y? ӧVTJbj*_UM k+rg.Q`0r|KAsڡV,6[A|wK;oюhPv˯܀Lǻ?o*8aS7{@mOt7nRs#/<꧃:`Ɖi9TAn77[by6ܩhK`v Pʧd r28w~6%gn̉uz%ٛ-!OYGD+NbPetb$B͋K OWGˎxfSu|i5eGbfgS9b ,g.'i*5+1*|ZӕՁdy+5ؽ9ZJq1ȨX2JO8$2ࣸgehS/> >7o-foO lpɀ"h|;KטK.?5qEE ;6zȧRՙC*5 1>Tk!Z^i Om@b|h`o2hw+ e!Y5RIJ5z/锭7KwT;LLz:ę槳QܒoyV*6rqE`]<#LlGCGhFimCm\Wh?~Eƾ%7W̮1z񕀬nn.24+vS[{ Bk˭͋CH@?  GPQ(E(@ʍBJ4xg鮅Tc]^~PeVn@V|OxVR;,>P]O֦zWՕ8YX P2sEJzDs' Qhٺtt#}`V#H+ϩ܀Lϻ?o*ٟ?aSټxչMHhuG\/IyOәtUY'VPsIs!B\xۛQb'0MDʻ~t_agWwI0cOƜH;jgeo.r0>Q?ꏎo0YIt7m+mJuЄg.)nRS[Zy$SFm2:__G8NDT@=PF%v#߽eUW %l^*OeN~74#4ODzw9Dp"oعm]V17zpo !KY[*|l+Xrr $2"-x [ ~~[:Et!-s lӼʍ _4ssWDkUp/v8d签DžRZ}ADR%)q(\#*W 4精er#-ftg;Hf~ /O9]2{$uF ՖJy cZq8wCH%V -'VLGRV92[1C(%ƄlDiUD}SOT+}Pp0 [ApO﷞?nCU[;W.%8qZ>[x94+vS[{ BLk˭͋`w:*#<𼜾61WR渊*TʴScVW Ut(!>Lo`0a~@%Jp3 Hs/z8nFv̹OFg{_ y匐dEs|;b%YQ@iOR>vULavw'tm8=iZiTfdf#$49^\ti"V%(4,xW8Kc('QEKK|g;:{BF"R;C o߅zWz$ps܀̪03 'BWj%7,yע%q/'jr޸2֜g!ηmM!zNMp%LڗR!#a@` kL| .%ן}IDrS,ƺد6 FƟ"Kb7S$cN&@;(DqCPꏀ_!㋀ џbPSW|w1O $;IKjyBY=E"@i^f|<܀사y2Pf\zUJ~H G~|_^ P2YKVq@֥; V⚝q:BTEUdÅO Ukx ! p@("|@B_.$@@G@yϻG>弐I˒3! ,ao7Pr6 !gЗCw-|MͤV%Uҟu~޴'=lLdj}͍ӕ/DXhN9ЧKޗG#VvKJ;'cet,D-6~cfqb lsdZ}|[VjǣOt޸ I.륟3)֩&E"e4+8_waFulR/B&'"T{=,ٶo p:n3 ȰO;_$_ޱ'v ls"BI]|aLϣ~"}ՉA asC[_R'HO#Dݼħ 8$:)>͠N+),O_yGwB ,_ .'Ls% "tƞK]XFcM=B7֟( S}RG>.[9]p!qy/>=}EpJ{Itw/ b39]|˳Jy@ gJד|3vЬ~w74#4ODzw9Dp"oBmsEf-E heKA ELCmB'ˑ$E6$I \ҨEe,?e}(EIENΜg>[Rg Ym'l.P1MZdBf o zꋬ@dsgy=Y4ssWDkUp_/vPӰ签DžR|Y3LʐJv*GKۄKP2淣Zo4~sފV \9>ہa&*%QR_B}'_N<B/Xh j)_jjaIv2'WZs~:^1"47A$},-UGi0u<"c_}TK)'aP%Csb #h?~6?DΕ(_ 4N:b <^7Q: o6Kw:*#<HTXCG.t,T9Y#+7)'Q98 ybt5Hh\*1W[.tȴsHș\UHP C/֊ Hqs/z8nX_Gv̉"t+P>shNWqXn 9PgEc lhI[)-J7(33J#$Y73Sk4,+|F`Jk"2gaMPsZ}C[o$y~O9"66:kvx}WKIXZnuTRPԆo㔞J|oS< Q~8\򨟪\Fp+v]Yqa,ɪƣ>i\ݻLC32P]a:WWGCS[!C5A_?1SNFbTE" Y4 E] EmFz\/<| S7o26[jF@O9!# C\I^k~Z{la zxXf~59:b( 3{oE kCDt& ^js $ZS\)q,;ȔU 0q 3qE~ !ꟸ"@P?@`O\a u 0q'0@ԏ:8@Wp G@L+r8  &P9@Q @@C?qE~ !ꟸ"@ټ(@Tq̀G- \ kDgK 6 B O5.-aQu0#puʌ#E?[یak ʌ#!#@`\kn \Kv F 3Iו_=Xe$]!v5*av߳x ^Jc@ WW@/|=HnI3|y晗,I8x R?~CߕXk8k0;Șe(;K.?R{Q$G \??wy0'vQ_15'ߵ?~_6(:oTV]jT.7N~4*y)bKZ ȡF~'=J:Nw`%'"0'V]QF*ֵ^c˷2s ,,Xurgrhڥɨ}O-<~ "PReQ& P CP?Q{[_fee{|TQӚ<Ս7 wb"PN\LPq{m ˅R{ Jj-|X&2SrXҭctAG*0  ߪ?͇VxxИsΗB2n| ds:vؤ] c7q'9@~%ݏ$@_=KsA,k@)>/B*Z+bR9%`EmRY.ׅȻ?@'G-*/}s8a!7{"0DS @8/r],B͊ FQ~ulB>@`8?v@4owwגӦe?By8)VVVp,{nMFH%"##CH@T !HK v@}$u" *D _X}DkI@}  LD'.~ !ꟸ"@P?@`5wצֺC"5 ;:eRd@aQ _?;8VPf)1:R \.mw,, pwkYLh1sl ,&/ҁm%@@. wȒg:@@6SevYY0;u#NbcƤ1{7R`>'mrFj^;:Qe-<@'?$,6D}Gε g(2d%[%4!2N[,ˆ6,pNksUG&>״@'N9u{(>DZ2@ 8WW盲C-㻏eǟzcn.̀H.nQ{NINo]hziE$u^lߒInSo[jiQwK\|d! P=Eyp1޶ 4/~c[4A[PƉiwڲwN]W_`A 'v9487z1+Tx&To:&\cw+3w꬏\H8*ܽ5w:*!uEbB\fLڴz{m]GMrz5Kn`~6$k~ks.ϧ#MœmW%qcPBeޛGۿUwmq ̿PH+Α6E1b(5RQH]mn|ec~PjA@2-E>eqh]Z$W{CA@~^IloқY@!P%^}*5+&(jLO  <.;3_>OOS%;斈BWXYYzj-mc@*W0;q/ۏO  G 맾FJ  S3E J |ƶ`8@`P@"|@E?EÁ"r.-HIENDB`n9K/[=c`PNG  IHDR\{sRGB pHYsjIDATx^}\qYI nXpݠ-iqw ABBU(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` n.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =:<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` d48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL)t$ O$``` `O`-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/  0` 33` Sf3f` 33g` f` www3PP` ZXdbmo` \ғ3y`Ӣ` 3f3ff` 3f3FKf` hk]wwwfܹ` ff>>\`Y{ff` R>&- {p_/̴>?" dd@x?" dd@  " @ ` ~?" dd@ ! #" $  PR    @ ` ` p>>      <(  r   C <A$Slide_NO-SSG_blue"  N@ "`R  X Click to edit Master title style!! F  N, "`IN  RClick to edit Master text styles Second level Third level Fourth level Fifth level!    S "  N "`  ~*2ff    N "`  j*f  H  0`޽h ? 33D<___PPT10..u* blue_externald0 Pt(    N˄rArA *   *b   U++UU  N݄rArA  *  *b   U++UUd  c $ ?v  8  NrArA  Y?  RClick to edit Master text styles Second level Third level Fourth level Fifth level!    S    TrArA @   *b   U++UU"  TrArA  @  *b   U++UUH  02m.F ? 3380___PPT10.Ҹ`u\=0 d\  (  x   c $  6@  <   N쇄 p?"6@ NNN?N P`  0A8;89 O1>2,(2   H  0`޽h ? .\GV~`Ly___PPT10Y+D=' = @B + 0    D (  Dr D S  yR    D TOq ?"6@ NNN?Np(,$0 60:5B ?@>3@0<<=KE ?@>4C:B>2&08 P2  D C RA81362ed6210d9feab32f278c69dc` ,$@0  D T? ?"6@`NNN?N  [ ,$D0 RParallel Composer :><?8;OB>@ + 181;8>B5:8H*08 P2    D Tk ?"6@`NNN?NpP ,$@0 2Parallel Inspector Memory Checker + Thread CheckerH308 P2   2 D T ?"6@`NNN?Np ,$@0 %Parallel Amplifier Performance TuningH&08 P2  % D Th ?"6@`NNN?Np@p ,$@0 ZParallel Advisor <>45;8@>20=85 ?0@0;;5;L=>AB8H.08 P2  D T ?"6@ NNN?N @h,$ 0 N+ <=>65AB2> :><?>=5=B 2 :064>< ?@>4C:B54(08 P2&(H D 0޽h ? 33[S___PPT103.D+\2D' = @B D:' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*D%(D' =%(D@' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* D%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* D%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*D%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*D%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* D%(D?' =%(D' =%(D' =A@BBBB0B%(D' =1:Bhidden*o3>+B#style.visibility<* D%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*D%(++0+D0 ++0+ D0 ++0+ D0 ++0+ D0 ++0+D0 ++0+D0 ++0+D0 + 0 ~ v `  h (  hr h S R    h TȰ ?"6@ NNN?N0  nQuality Control :>=B@>;L :0G5AB20 2 ?@>F5AA5 @07@01>B:8P08 P2(18 P2(( h TU ?"6@ NNN?N0  pQuality Assurance ?@>25@:0 3>B>2=>AB8 ?@>4C:B0 : 2K?CA:Cn08 P2'18 P2" '> h TJ ?"6@ NNN?N p ,$0 H:><0=40 20;840B>@>2 <=>65AB2> ?@>4C:B>2 8 ?0:5B>2 (?> @0A?8A0=8N) B>;L:> @5;87-:0=4840BKP08 P2E18 P2E$Er  h T`H ?"6@ NNN?NPP ,$0 |:><0=40 B5AB5@>2 >48= ?@>4C:B 8;8 >48= ?0:5B ?@>4C:B>2 5654=52=>5 B5AB8@>20=85 1>;LH5 =87:>C@>2=52>3> B5AB8@>20=8OP08 P2b18 P2b$bH h 0޽h ? 33___PPT10.t@Qcl+rQ8D' = @B D' = @BA?%,( < +O%,( < +D' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* h%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(+p+0+h0 ++0+ h0 +> 0 @8p l(  lr l S XVR    l NX "`I@,$@0 ^H>4C;L=>5 B5AB8@>20=85 (Unit Testing) B5AB8@>20=85 >B45;L=KE DC=:F89 8 :;0AA>2 B>B 65 O7K: ?@>3@0<<8@>20=8O, GB> 8 2 ?@>3@0<<=>< ?@>4C:B5 A0< ?@>3@0<<8AB ?8H5B <>4C;L=K5 B5ABK 4;O A2>59 :><?>=5=BK =B53@0F8>==>5 B5AB8@>20=85 B5AB8@C5BAO 3@C??0 :><?>=5=B G0AB> 8A?>;L7C5BAO A:@8?B>2K9 O7K: 4>?CA:05BAO 0:B82=>5 8A?>;L7>20=85 2=CB@5==8E A@54AB2 !8AB5<=>5 B5AB8@>20=85 B5AB8@C5BAO 25AL ?@>4C:B 2A5340 8A?>;L7C5BAO A:@8?B>2K9 O7K: G0AB> 5ABL 4>:C<5=B0;L=>5 >?8A0=85 B5AB>2 4;O 2K?>;=5=8O 2@CG=CN 8A?>;L7CNBAO 4>ABC?=K5 :>=5G=><C ?>;L7>20B5;N 8=B5@D59AK&v&gcgvcg c B_H l 0޽h ? 33___PPT10~. P+DR' = @B D ' = @BA?%,( < +O%,( < +D' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l!%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l!W%(Dd' =%(D ' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*lWn%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*ln%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*l%%(+ 0  0(  x  c $dR   x  c $e@N  H  0޽h ? 33___PPT10i. P+D=' = @B + 0 ` 0(  x  c $"R   x  c $5@N  H  0޽h ? 33___PPT10i. P+D=' = @B + 0 p 0(  x  c $R   x  c $n@N  H  0޽h ? 33___PPT10i. P+D=' = @B + 0  0(  x  c $,R   x  c $(@N  H  0޽h ? 33___PPT10i. P+D=' = @B + 0  $q(  x  c $8PR   _   Tdۣ ?"6@`NNN?NPk %check-in to mainline of the component(&08 P2&,9  T ?"6@`NNN?N k wcreate static version(08 P2B   `D?"0@NNN?Npp3  T ?"6@`NNN?N 1 qbuild phase one(08 P2B   `D?"0@NNN?Np p  Z "`` P    Nͣ "` p pbuild triager:`(B   `D?"0@NNN?NppB  T5 ?"6@`NNN?N`k add the component to phase two(08 P2l8  0~ $0.   TJ ?"6@`NNN?NP   D?@>3=0BL sanity B5ABK =0 phase two(#08 P2#:  B   `D?"0@NNN?N    N0 "`   ` ?@>H;8bn  T ?"6@`NNN?N 0  4>1JO28BL phase two E>@>H8<(08 P2$ j  T ?"6@`NNN?N   0?@>3=0BL A8AB5<=K5 B5ABK(08 P2$B   `D?"0@NNN?N0   N`# "`P   ` ?@>H;8bB   `D?"0@NNN?N  `  TT ?"6@`NNN?N 0  &>1JO28BL AB018;L=K<(08 P2f3$ B   `D?"0@NNN?N  B    `D?"0@NNN?N   ! NXq "`   Z=5Bbj " T̲ ?"6@`NNN?NP ~ F>B:0B8BL =5 A>18@0NI85AO :><?>=5=BK($08 P2$$B #  `D?"0@NNN?N  H  0޽h ? 33___PPT10i. P+D=' = @B +  0  (  x  c $R   x  c $IN     TA ?"6@ NNN?N ,$D0  TA ?"6@ NNN?N,$D0H  0޽h ? 33___PPT10. P+kdD~' = @B D9' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+ 0  x0(  xx x c $vR   x x c $vIN  H x 0޽h ? 33___PPT10i. P+D=' = @B + 0  0(  x  c $R   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B + 0  0(  x  c $xR   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B +  0 z  |(  |x | c $DR   x | c $IN    | TA  ?"6@ NNN?N  r ,$D0  | TA  ?"6@ NNN?N@4 ,$D0  | TA  ?"6@ NNN?N` ,$D0H | 0޽h ? 33___PPT10. P+2D' = @B Du' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(+ 0 P  v(  x  c $ԁR   x  c $,IN     TA ?"6@ NNN?N@  TA ?"6@ NNN?NR    TA ?"6@ NNN?N p H  0޽h ? 33___PPT10i. P+D=' = @B + 0  0(  x  c $DR   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B +} 0  p$(  pr p S R   r p S IN  H p 0޽h ? 33___PPT10i. +D=' = @B +} 0 ` ($(  (r ( S ,qR  q r ( S qIN q H ( 0޽h ? 33___PPT10i.Gc>/+D=' = @B +:0 lJ(  l^ l S v    l c $ Y?   @` H l 02m.F ? 3380___PPT10.ݸwrgH`~@Uj@ʼnOti@p &Hٻ&# 1(V(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/patOh+'0 hp    (Suites Architecture SlidesIntel Corporation vvryabov457Microsoft PowerPoint@F2@(@p[UdGhg  ,V'&" WMFC*m <8 EMFםXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =;<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsuvwxyz{|}~g      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]fhijklmnopqrstuvwxy{|}~Root EntrydO)@edPictures(Current User8SummaryInformation(ȭPowerPoint Document(tDocumentSummaryInformation8 -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` n.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =@;<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 N< @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` 48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 $ O-$``` `O`.`-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $xR   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B +rlZ&# H-]1V(@   Jhttp://traqs.intel.com/h ՜.+,D՜.+,l(     On-screen ShowIntel Corporation' Verdana MS PGothicArialblue_external  ?$Quality Control & Quality Assurance     0 (promotion process)!Sanity tests for Phase II builds     (Code Review) (Code Review)    Q & A  Fonts UsedDesign Template Slide Titles HSPSDescriptionOwnerStatusReleaseSuiteDocumentCategoryCommonCommonDesign DocumentsryA  _[vvryabovvvryabovhelpF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` N48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O\$``` `O``\` ` '-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $xR   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B +ri]M&# E]޶1X(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO ==<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System`-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $xR   x  c $IN  H  0޽h ? 33___PPT10i. P+D=' = @B + 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r ''# I1X(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO ==<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxz{|}~0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System`-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/r'# el1,X(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =<=<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System .``"-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rl'# l1LY(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =\><"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) .p`p`J 3  -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r!'# #1LY(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =\><"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B)f(aW>&G dda` ddX` d & `  d  ` &`` dddG`  % E  F$^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) .p`p`J 3  -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/r#'# #@}1Y(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =><"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) .p`p`@ 3 )-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $,R   x  c $(@N  H  0޽h ? 33___PPT10i. P+D=' = @B +rt}L## P}1Y(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =><"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) .p`p`@ 3 )-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/r## 31tZ(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      A@  A5% 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|E||s " 0e@       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxz{|}~       @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =?<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) 2 <5=N Test -> Edit test run configurations -> [your config].``l 3 ).-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r%4'# 421[(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =@<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`bVisual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit test run configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8EF]``]` 3 ).'(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rn'# J1[(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =@<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5ABE>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit test run configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK^]``]`` 3 ).'8-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rK'# 0N1@\(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =PA<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit test run configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rlN'# HNE1>\(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` q.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NK$b$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =NA<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r '# ]X 1>\(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://t      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCD{FGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst |}~?͍A.~vٜ=;g9gyyW\|9obJy칡( qT AB;1u COHRxUP 5pCAASwʢF.':\#n(K(Eh~ yՍ$yA Bɡ/ (_*#af(  Z,8:xhPɪH^2yq˔HZ5]9: eP<%AD@yy]e1"G=ǖ"d# jFIh ."᷾0*x&,KjK/?+/C~E+Vû˗rAs5(>8ߙC*^΁?9}8vدA _eCPn}}`?~=t|ujEc[W:d0 HɲqS./f5E5DZ@0puYll(8_TQP[ ItIE]hJn۶3seA T!T$QIdQVE4|K4IT-0f ktJQ4TLi0L`hWէB( ޢ牊(d28@$_]Qu D BxG])pnjxoeEeaRh5 ˲C 䘀?ӿ/m63A-:#{o|,U1Ҿ$ .nAW |{k%WWDȼ> ?/~[~_,直uGǁiH_烎[!yGW|Lu,_`w܁goyG4qмg~J,Y?Uٴm43 d>Q gY@DRydʺ0M5$:tUUj+ H\)v8a GL&*4qW1jaLPpU0dATD+ B_\MA.ƼK.҃Sdst PYk()ϳd.ʺJyb F!VR.\KU@c Z/E˛jl8gxW̓f$0 = }V̒"=\ȁ47)և-kߖ~y+$pc߯:t' <iiĸV7E `{o݆{}q(k| ,˯~86̰AE#lU4y#aMRۆ5?*`@g_as5o5uӚm߾g~bh&`)(Z&&у5u Y]/G1}AQJ">cC%w 001ǂ &شEˠ`Fc4<Q%3,~+;QmilqsvCh7C X60[ǯnQwzbck/Y_b1bEבuplO\Y3:4 öe`Xy=5#?xCGaU5O2 %VYyL8 2B}!3&Z R hI14xW}(&8\Gb.A|`_H4ݴ<\BC99ˡBaV+.$RD U:/2 qeSY:·HQ/|aa%T,o53X|qv hJW*pP#q<^]Qȗ^Ulc}[GF:|rmOF`b4|8dX($sl 9c[Xtvɏw~9:+k|uMv>ߤߖ,h1~OG⨔󂓋PetF3tQW-3ԨТ ϪBVK !&!\̀q;1`ұxYAË RFb^HZjtgA*Q&.aBKz@`uBc<ETC@̢hC ̔Y&~&F"nLL9ZY5@K`E dЁ`:iirɃX *@(S hBR鄜\+<5+93W55"[4bdW/%UKE,p]&Jr,TnA &OVTNrBLxtfG|zϾs7f&-=7hǠ:cJ! HER<0Xsv,Z;21B+mVb*0Cw @W& gLJ`E_+0%&0-r/M('8xZcO +sB=+.!A u&0Yxjv^nm;6ntݒ I "Dt8_":`ZRKl<-_8=AϩS)R9T5{w3&/=R34{y,o>1%ӖHQv^JwCߨ]QFcRMJ(Ydñ$'Bn}qײ/: us7l+ǵoD;nVxg~ OG qs_|M.2U&)^M޿S].ݻV| 7sϻ//ݪ}ԬMdAWU0/:F\9iZ`,wT c&o@PY͏?;ZbƶLgv{oG͇Z""PFdPhq#^@% ,fl#FB_~eonZ~.t//]^K:N'Ү'*Tk~+<lЉNޑI֊Mg_=QΟ1aԮ]eٲeoϫnߴeekK1HW;-Zmkw 3LgMTnyBlI$9o^+Z ^=?"\$"ryk~G~ қ\z,ke"u_JzRn'\YrL6 w/\L*GgFbr['8=NSwU5tvb[Mq69S e2_ԴIUQdJ(Y?ߧ>!FX凗]3z) ۙ'ܰfӆ1ϗPNhm{I.?~ηX8_/Z%hn6T 7/愈!. y~CyD<4 w> b'T?UdvGyk>kTyAyGV%Mز^82*qUGۿSܫy71*Zᢋ~Ŧ;~KźPЃw7ngO<+*_Gȧs.SoV0kή э7xY]ʵhy7keƕOx-gЅ9sv]vn3 yt H ̈Z >$7ˮV,pjo O6?jl_r̒J(Ybӏ=d ky@LY&B^Ⱥ"/I3-a4"d9 _$d]DQuŸjl 2r<^mi)]nnIbC[Ԙ9p=i VV ܤ*\%NJRt-U}Jףp|2H!"ہ|@8y/q+ R:e1Dnb!Uë oյT@!5ZD 5.W 'FJv-' ϨuPM'r}Hl"Pr[M'Pj{ 1tAHGP# 4bP&'A$Ne7N.c2MٍVSZcY9Y~,#, ū`]~!g)NQf/ AGr}4h1nxq>ިB /%s\sA*+x[=л׷Wx92 8^{kŎ`2)`gsk9 Gszt)fȂث0%K.D_Wv7r9ϾLnBj 󻅋{j_%PW@Ƨhhp-x\  Hpą(x(z 8jB`#x|ȷGQ cSABf'b!eF'PZl`fx""I(!APjh4/̪(@Rr beF@d dQ]F69̥py /PСa@m,[GBB`5#.HnTWp.lRPCԄe@Y?ڋb="|}Ul$hT_1nE'#ٙ g׿S" `GZZ.ŨX_ukh8 XhV lz3@1̷7/3~Y̧@?-԰9 m<~=kQ*e/%``C 5d)/v-e`8S+T =Lm 26X+TUݣ· rH*#2,ZT [ q G*ȧBkS@X_yOP=Wl 'TG5$CY`> ФL3ŸnhX-_q/sAEAƒm9z$lځъfiGX[@R} &=RD¸5c: \IB_wk`9F(܀>ri1TaƳS,$`|,hA!6Xٲ17[\R |MRz/YdJ(YbcNh@3J^|bDJMuL'hƀ*+b)Np*gЇYc>i$(h++i=>|d7,*k@fEh;h!@8RU\ l@Jĵp|rpi" v]š *JXp@v dԖ>qDS7q@DCBNQs l9QXA[ӄږ!A!LT 7~x 1# Yi- 4 Â- 6T25 & ڃ~@YEwCDúr!:J9 b+Υ&TgIu٘dk֚.cfc{reǑ]DÛKBQqL49$:X0t 2r2f!ph4`uul5M|^@% ,P'C-׃hX$O(sv&mnE'O83vd¥ ael%U!H mc[h r8;M+wQX8((CL֓CȷQ 0*F(g^ُ}h4tIS"S2Y #hJ DώX Փaw:m `IӀk(Lzh\V*] Z嘭80ةHŠ)l.jE,,q]J8 qY͙b4}v0Lc_ :Gx~#XޏVdI|Of;*d m pø #F2i1*HOZZpd\20==ߠ~<MJ,P@% ,- iAf/>'|*a S?9v6y6.A A/!0*J47 &(|OGXMTϰ ϲo"( q|QiG*gI|p3Bqb(whߟ1LHR| . VQ4*bbPÌ~ CmQ# C%&,lDƸfÁ!rrf(&cU@{DBwz J΁1v|g * ''>gMȏPdY-: P)f`B:gק7B HVY@WsSi4*eYc4X>4^V8 ࣂIl25z BHۈ/ZѰDq^XOҒhUO$WPAKb_vWaeȐ1'ûxH5!_ЫsXPm1?Hr,xҲ+=&.bE2M@IiWUdJ(Ydz tIJb# ~sO=KWJ ^~q!*x Gj c)8]@ D$TT-AŨ:%$UճlJq.8T$pNeN@XE*s$:_茁K WdTh[&70Q$p; Fq)u|K4+h&: C8^4N ^ drbuezhG;%pod<ّY@~"9p`MFϓHJe \2xޗjSH )rXIÍ9 DÉ Yaȱ_$PT2]<"3Ud/ɞ↱VE}00g'1V 'A֦lpw89 V!,I ?O.*_u=j@\sXp"7;>z :<]kfsC,ӢLCم#2jE"-*H22ULU@$Sh=zƇő`{(= @:VH`W{R0FQShہE'^! VMLl1_KҙkAbC g`%f\0݈ E/"cIYZq[[V0$n ڌp3e>0VZb^=,IY *`bTc?&Q+%:*|@Qy hK|tgo0J2 <"[#^;N-YdJb:m`ZF" Ff{ Wb*-hP @+l>A%Gk4< cgLz uq*^p6M8GNC7 4Fȕ]5tY\WTdBs|qFHiee&Eo\,:*j n&mEvy:1`26S]wY݈AGt V&@5V(5X@ gR%X8^P#ϵ%Y-1THATA5HJ~V}_CHpUāZCLvUPj)I2A˨A !xĺ3DK`3h<hZHfB$0Sk 3, h%H;FȒ#!lXVF*n;LKOeT ϋVS['>N!`AФIuMa?`SNY.֓@>~ MUH%QXb8瑁 c vH0 S=-+T)0= RJ\gPc@- Uja۔"Dzu$=5>:MAsfSΫڳ;ggkRk]u1tC!FT d=TOf n }ďN9znи$ٰ=yĩZ 't2i9ryDkH2 .y]DcE>ڢz_X L/\W?Q3JE"9tKJ(Ydmq۶R޶V4hs0gec`4 ꀊH {C@Z™b%a⇻ X(l =WTtCR7`e`7OPt {*m LIL3DfjO ~* ^i*E%T@*TLض)CDAUDsP:hQ # *,PBыc@3.nx!xd<;l+!Z`FpTpdǐ"xTh`Y<>R&?Fu/`S`8*w KGEsJF` W*g2V,J & tȘd.6),U{ymgk,ęuFEPRb8yzy+7"6!RU !!X,0qZ>N=Fˁq.KGFGgѭ ð>?V4O("A͚͵-%"Ɲ7zt&>ێ4Fx.#sl$ 2T2U,ut,Q&S`)o, sH=Fn[Hy"[jPU% UAÏN7,@{UM&ڤ D7HVC>9)+ X9P|x7yݔtNӖE.(rm۶wСM6Թo!Urcj|+Gp~4ł]0W% ,P@_b&Me2fAe&1 rh`d{mq b.LW`SXG{GuG T| a"} m=SJz,oT$[ iڸGTXStHk`tB{я^ĥ3NF5i׉z9tؙXT2rCp:(eBxqrM h’Ì4 LJ0y;  5v'd#tGo:CǪSPO238Rt Bss∅FHЁd}Xnd" B ۞c CD^IWi 9#JC2GOj V1\u8"$U I@cYERjd[$Q vV:)Sc; P6 F7ÄU5fL"<٭gmpzn^SE ^,PbE3یPϨi8Hspq݈Hbv'=v& :y X@9abawvPܹ jRcWV]m|qCkI>>`Lwd W~-nA#(*,. 9Ҵ^nɭ}֘bNXb#G,R_ܹs}E+l6Qw(;,P@% ,p8LC7; n\3 %2ƒa dlwDJ}L @};U57|A9,%D$} vuDM5(n90O ]TrD $Z%x2BU|l7$E)^-ZH+3sF8 ?B XŻ 3aC"n0i!Xq- "b`b<=DЄ`bLqB旱TC#  d6򌤸Н0E5\Xȉ›"0*+j.X7bW¥+/QC(2( Y[L.*EXהaEpDH\gtMbL5<|T,-̽<$.k-A@S6iP`f.t Jp@ĸ#]!dg.D((tka5 h*pc`Sn&1#]|yڷȔ}@ RdȎ|.Y`~4eM&mlnڲ}úo}vbf>Cmdmmuh^5%?l.+wgsqR bFs,\\kMHw++kG״yڵmyDgaQ;31*-7x1[ }K_4 S:vh޼e;w;ճscb3[i'6t8=7Y >,h>Ϡn<i=h@aÎ:C;Fm3|HC۽31, V Ї3=sydž=䲹͛T@Cm:mڔx4޾@mb,amR:R@% ,P- % h{CuD2&y3!gܛR5ö h $ iL'wd-$( #-xQ?^EMSXZӕ2QĢceG߼'wj,EtEO~Y=4LUmJvp wnЩ"Y)BчM S&uu6"x-a5+wPY灿ݼhwq/Xk6/@ّ݇~novŗLԖ-:u4L-vS%yE _ǯ{nzU7v˶ >#aUo 7ߧ7W7UDyBzn VPvOl-o#u8YYu˚@RU;{պL-WE?$@Am^1/O -aִOOfwD/s}\ -uCե٤j=efs/|HK2& IrԶQ=%2El_܄ԂS3:KHj`U%Ha[P,F(J`> 4`CXrް`1UQeUmaFvW%k՛Wڮ{v=̋P48ye'oG1 Zfy'd2Ky; 6Ut8uL; n%- a1ro#e`yMSg~A!x:+>gB4D1n:*Qo/ϝnz?k/T6tH@jsi3X~@ݶйg7s{!n)" u)ha7"CžmuW!x"\HBEf={uoּIMmM?d舚g>Y۶mӽGW!7i@H% ,P@:$dRɆIJDP2y0u Q圄:\I#L|1Wybya\7uH$,;Ȃ/G ꪱ}zN]b]ÉNzO> =S=ڵ;s٠j+S;ȸ#"';DXq'Ve!Am^pFvA6ڵyˆeʹW&>Уo}ޤ[nKi4$jd]Ko}D sOݮ\q{Wi`Ϛp.&u>deKaߝ?UKu .lU<&.9šLm7|݉>y]wIЎl݇YѦ5/oREU-EIrwg} k ul߰'\'7哏[H*HO3͙5`{G<_g*_z=Ks7>|NY%{}Q  RMM?O]=̺Ֆ_;g0yg^=?3iҴ{nի:psڋ.>7pW.\L]cߕBUm^?أ`w4JYQj5bY =A'uΆ3&:& ʇb;w/^ts.Xh%+Tɔ/>;cǣo'ny> X,9dyO^~dmM6,^iҵV[dEV^ǢcPh K:5($X%֥tkBEH*:'|ǓW,QKS|h?geqcF0nyW|k~nV-,a&'h,\DQk6|7d&=1}{!D05r2dڟښUCPMAEf5+!Sv:\VYA>mjbs]a8t\e[C_(Ğ~O}}Z$ [Ǐƿ^>pצ%,jK1:FqwAM0w+nЫ9d0qB-[;3}c{)8[B~,\T]cV$=}TƩx߶Z T;[EfpC{w^}tm)硼IE:C0kf.mnټaז?m=\7wj/y7xG6^"^Fd_J|}㣙/}<> {j,"FSmxlԓ!_U`Kl;`+IAVȧ_yyNy|~PuCU&SC{lKX$Gp)Gܹrڌv2ca#F` n u(6H$QtvW@% ,P@- AfœT$DZ a]]tiٺ񲥫e^Gy[~&%/8z B/V.o`G2, \p]M?w Ya^|Z;5q;o0kg/0nݼeЗn׮C?Kj\/?ݐκ#ǜ|'}.ZVF$^r:^h UWVH\_|9 ;yݯjNjZ\Cz=|훶VjAMC6To*)fbg}eu+W1}NnuhfE@Y}y˶M=#EaG 0Qhߡ=G6 ? |ƬÇ;bom|Mz儑hcĻKvL㘌韃رӜO>E+&<6bxlyۦQ ыDϧ"0y1r&H#\(*e|7cڄeEJ y;O!rޅZ]eݞVY;HRS|m6,,L|ß|gMc< 7ݦfFv̈́S?7u1]ڒY_ǯ#$'pNG{륧 9Uvf0u$ӭ۴=#[lsQ훷8#H1?0, u" d1.\ZE⢤97Ʌu.믇oMMm),]/@װX<>p ĘX 9U d)GZț-ś\+YdJ(Y[ ~JΆ)ьq'ҋ.q1l_zhޢ?w!ss,.Z5cF̚%t>sTצv˶za}s;W.Zr ]={,~gV#3מ}т%"MChU%%G{i궓1N(ʛvȹ\QN6}h?ԑJ%9^d˦uUǩ ,Tc䄈1Tse}ԐsNET(!AzWS/QhPjtni݇ =vCAٶmNl Jpѐ3$OWM'/-ѯPgʛxkL>TNJg| >0BBCk T-pER:l3{5v. x,$KO<ʫcp'@@ Pp6yRT6!˿`01\_'DaƔE_$%'$3\YZ ^z닧|DD6I-l;gvUWPfOn:cAP+K@/q:ٴyۓ9 ͩ?]\Qޤ5=EFz+?uP]OqT&k 'Gr7і,](D:@CץX L#`nR]&}Rɪ-g sian.5i+^G9e3-{ʧ|p륗<~- e8!~Y<pLX !qo\f6lb U5{TNT.YrYW,X ހbbuGMRdSO_$$&q9S?{Wy9Ċa2 \k.pX0!`EVᐋo.X9hMEJpJJ\>MCb|xsqZ2U 1-(8…1[ $jF7[\J(YdJ@lZHV9XNT׮zd;yfnG6~XUˈ0#]^ue+/{׺w;6'y3>7N6XDzʤjۡCˣ>.tNǴA+4&iۙt75=VSWqđb*&Giɢa[k׮wvo 1" omª< CHO(ȋfj6`3 e8Һu1c Z`L'C},P@% ,5-Q k'ʵ^zvm{4k<EϒSN;.||քH&؋_ק9[,Űs魅ITvl1V_^R ::kvݟGm4z]53/R3(e7QvCmC NOK oFK1ޘ7xg5k<֦y @4Jp~b-̜nfQXYOHg% fyZnն=;*2Wһృ)}]x{߭;V9JSGM^{mU6#I*IQ|#~: w`7s MDشyf??mMp\.@1`aGۣ+(`J@V~@%ɪ?+c,ןv|A\uSj@TvJm1dq6,ex5ȑ,P4J5>Ϛ+fΞ&5[ 7o'$ |g=vtj=<Đ'H]G6["v,s#&b?֫fڎ{=}:Rܥ'ݸHѧeE,hfBtyxh[cuR8͂`BKT FNJSQ/=?՗&䧟z`Oŵk6XI?O .)HOMs̍@XbEPagw>֯ۂ-O?;ft^[(>  థN> @ Hݙ{˲)چO&k!=ZR5$W"]|!lEbj"9f}מzVeS ݘl<)a, S>)dTBm/VjΤI|񧯿O>צ@#2biuMX!)S;1# osD%KR!:_XY% ,Pod@vKUub@Q_51ǜ;B\rv~w> igI:e1  ` "4aBuǓGp <{ߌ0t8PҒKPS$`t} !g[.isV2xeIaG RІ(N>}ذaab d3)T励xr5{v킫_m]]242P~( \8+̙3 B,+.[L1U>a 1"DsYxeY4w?w팩ȭbQ&hƍg|n`^bmUԩSG$<gi/*YdJ(YX@\~EfkWiMUe/J\GJ 5L8Q^~IC;AdgQ rʘL^.V( T5>!+2/":6Zg < C TIKP8 v,7D&$;'"4?KwK~P%EJ< iz4+k˽|qEE1'2D r$y1%H+-#: Lv 3?4]qBO U!+;4ySzh  a0,"Z0 'vӵPDL3Vl r'Q&kT@]h9QX  >#ٳF37 ˶:5Zh&f^`o:2X|w]RBMy|,I8-ɥJaP Xw'NHÒ3{c̡`CP0U|+:*|o @9pp|"4L[17m&&C͙3k~P_0h5b{;} Eʥ^x橻EYJ֑\ry\PYPd51Y>Svf漅FcW!u-2Y'ǣw&qC>!aPuxQ"miE`RvKiky})Rٔ*˖ֿ ^03f :.*F iE C-T"[ӄbcSHb鉀%3uٳ 4-BO7}/:/2v"HY[A}I)]>̓<Q[W^re"8p 6hKmsdMٰpfJ% ,P@% |- -_d|^$&ur]lIX(d/C:˱玈 7(vcb‹X{UUq5T1{Qam*gu8s)ró\DB`'|y15^)2LJ /EV:~K$((,ЌC )V-f][o5`u4 H}LrtCCcXb#'HjSX B,J['G{2Éfh@Yt5B{0 S @VX@dFbTL_B,Tq^H{1Zi}om qӨQ6BtO"dGrcmHSݻlۖ-[ OLzF8wY2XRbzHZ),P@% ,u, ]C֔).kiv'yH@b,.c~"D|+~"$eBT0; RHpeF/xA1=4XfQ:+@'tP(/BT0 wNb︯e£Dv~ ;`VȬ}3hkDrCX/&(K1( /~)IRY(8] skA@-RMT O\C0DLLMaK^\V, !=3MRN7!eaD5/6ɡC,2JAlX )`1HllLΧ*AM &( ZMzb7O'Tp>"|`zB=xe 3$CmC[@"#cN֭#%OΟ`<2~@[4ڲŠQ/${$ELhbwDQ7)/̎fDoѸ,تe˚a{$l $Yi;8(M<1p;>\4ykWR CL쇈~X]&1@q3 Ba(1ћ0Gm\D?.T6(\<\zL =i( 7xh: d61@B9s" 2:V@Pz~N HM/؃DHQ+! C(dJ(YdŚ@0`bH- $3lpj{!H@6)'Q@XYCraQ>r-{1Y(^$%+;B vʔN;Xm,10[v]kp$ ۬gM) {8!~"(ZE?`CU.nsĉZT&Xo+R0 ! N1*߫ pqaSQ2`qlM<7ѭ@@:镡ǯndx:=:|5!h}DWй܆d@YF GBGNBO1-g 7ū_ₗ t0{ަMb]= D#4 U *0*3U}}IEBfk: @MWHXS(bĭ O|1U0BL _#8īL˖.ջ/LID4 şP [S,a e-Hȫ@`j|{4Y>'\:3 *~˓}^:],#IU}lH}l9 ұob%,1$Hh/$x}y`pgnߴ4FUK1@?TvƤ P,EDfPP x!O ,{Vżi qlw,/0qM`Vk7(PO(M)ͯ484eɁ T`bab%+h @x>4Nh[.6Pag0D}c['Fbd?"}.:EM ZV)m@W6I$ /qE%0DAX2pՉ?5HĽ')P3ƅD&ԌA— n7ԗ|<Aǯ`y> Ł6ԗ u>,eȗ_b5ƁCAPXiaWf-*BZy iL,jH~Ap9ߏGgXEژdӦMA߲M&1ՎF+8RiSEiHO 71Ew$), aq=&VeF0/9>xA[ %1:11_5^K8pux(%Lh[Dj?)-p;v^G];p!FiJE'q#K*M0q<ǰt΢ZdJX @Jȃ&,|BXDnE#~AV@Q2qJ85d&\"ԨL-̲ q?4[ZYƆ Z.4X8?U~ȴE&$=Qh}jڱ#(!@cHAVJ $LP8US9Xj5d"jZA]~Nns(cMGPuF!R9HY1ey/Ωzu$Ľ1&.p bT/"98Z*cb6/Ma5o<\LE߱Vh#F/`V6"1kS( fK;" }  `L 8ߒeϱ~"a}1-sZ2/@m'>P‡5m/g6dJ z3 _|ȊeȒ Ta︁^7 [ckxYm ^c]o"\[#n,";ðxfՁA\1Ȕن|/)ױzk'ئ"X)H +:z}U(^@Yw^_K,.C Cq ˗%,E!W#H&žPoIKY("&k,f Ui#(2Ŗ`S3!WA&E,2#IΡNS qE #;eYr)a¬gBdNpm65WEOhA8`ؓqQo=&GNX#o4ī*>t*=DT@f:ġ S1+gʩG6a:k\~U08ՄLޤ% .E4T$,bR ??k"jT0Шj0G4C'p3鋺 *'}v CE{I(0dFnC\D L0ӑ3|_/ xZ'|q@\ڰJ3Hftyx4^k݂"ا6T `1e^"m/^ŵ*Ϯ\@Ǡ1;RD_X"ng n{([c'0BVxT6(`GP@zAR6)؜\ح":"s% dtYN7Ǡ_]:Zi<2C}{UxBՇf#Q䎂cʐ:+Ly3bm 0ՍU( Ef1Srvelkî11}-+q]NF #^̅llD&fjN\S]Zd.)J"ۆˡzNC#b|Z)u28&fi"2f1lTtcJ)[gVrhUF,WXkg@Mk KGSRO{E$ku|bCHL(BHㄜ ,98h| A+|Q6f'sBT5_LﲽN6? wv@(@E: j/TŒ3*U]E@r 2ɘ  ep-0o4$-IUKy@/^7>U.*_TkֳEӸBʥ8`<1eԝ CpI(sv^KYmؕ pV4?U 3Q/)OB+>9).|}$@9% ICN4$Q(EMe@[dgNu /04l@"S˓|]D,+bTMg2aasQ\y@7#H@h\5@M岺`;#O20vS#8D,s #L3Eɻفi8W|u: ~) :cgn`W پ^nta4X jQ~VQxZOв XeˏBD[=/]j~ɡ7]qa. l΋m䢈v(X{J.Xa]fƲkG7K{% L[,Z:YZvD}O+zEԤAp胡Ss~xoٰgc`X_0\x`Ga@ikI&y7MO?]l9=Vu&CIGd%ebHHh(r"SH˖;T"t։F*(*ΑEŞ&s(=Y_ēS*2MHh!}/b2ʢ̅@NM"Ա,aǑɹICXhahe ByS1q0n9l9x ."[ˍEme p$rXrXJe !xxxYcۈޔO':eŋuMFH^Hy[B4T} مRGiՑR7:U@"cR'ͨacGMT\;$>~c 6@(ډ}8~k N2GN!su<&2c!ѡEM7zT1;j. WqČhY'l8H4DZ}ZQ͑IIOp Hңl*5 !N n SI!չIтT\<) wk~W.Ǔ|2s`a<,ɻ $gHɲyRjIPrAaZ=Xpw]'L:6.'RKޏ8YE))h[?!Gpc(Hn w> ,C@ޟ0KmAKL.PwIJR t rPhhYQD##ٖ%O3w>L7|Тx{ԩ?t񢅰SAQn0at ?V # V ޲X8cB1QH=,{3C|Ox`S>*H .@8?dž"HD @ղ GM:hSOD4Br0vмa Ⱦ%4T6(I(C4S^* a'?[ j@`#oyB '3o)/YL<^G73wFVgVdYl*|<'AeFtʣ;V FPmb Hީf)t+¸eÞ{q<Xc#pn $5읱r/聞VxUϦAFcp=sbFx[vOXdkl'S)9+!52k~yM d!RX+!`CX蕗'0#!3;K>{ӨĠBٌ lDY;`͏] WA}Wv@`͜E4d<1Q<$i X089fh5&o4DmM%mhNFih (0HPMx&R5V>kzD4gmfhQrBU#Q?o{N]c 2zG^ZdA)QDoW):yx?B𐤔 @w-ߵ%4|8(H`!qG܄^rxdy`"p <˱3 5n U,9xB sYiqa9v"oy{*]' U|.I!4(+kƓЈGmZcI pb<5 -"$cZOD)J@|O\jkq4r䳾U5Ѧxq^/&V BJ]}P֌̀7H 0l)i@C]cBOfzbĢ#Jա;d@."T&X\ń(EhB0L7\,MbYQ(ݘwELȅJ@=;`O\:›0^.zuhcNvMdZWx\<}u64F,=L @bj1bxG8fGCT-j>\K`U腈QMU7,S @& dX˹|ڶr=d:H`E%Q@kYtAQ.kE5K@OsiLHs@0lpyguz C8V5 4V!aCg !-0MT5(-:.5|G ^ᝍM4&uKCdRLٌT@;LT7(+@dݜՓLβK(2x  ZpиUSuu-+))T ()d t:׿ލ <q b* K/l^̷Uפ|:+arXY/&IPcAE2ea8XkYV]7|dַe'oix Va؋wC`:X] . RAet%Xn^[SkMDv dvV$ϓ|L x &昹{; 1cy7"=}XQZpXF9@I5*~<p456v@Ǣz TGK_uu-&&MIQbDϣ%Wd[-# ^!f"遅u='|iD4 d >d$P`2t6=8[C.Xv@"E7ٵgν{ӳm-08";:+† /"W4+aF! +x]ehtXX3ID+َaYk/LS^qgs.ucڵ @D8`$=Ʋ DդmCml+[.+f6kePh߼pIh,㽨l,"<$TP $;_]״$=w?Xˆu3PiuG] `)n :jĈ.]z<3^=Sk4'> Ӽ.$a5uV(7eLp.*xwAeA Vj--"4E"rgK;ޥPh&2$+/ 7R,Д1{j=nhz2a- YFDYrYǂt|qHt2eDL5s5ɀ.۴Oyύ)<շG)- e..ᲾmA+oqGR&R}Q3"vHgDqKvWFLPMHw#>__F--S*f<1ōûxw у,ԱTc 3:BUeeuݻ;{-ֈ u1 ݱʄv6 k  ;A@|R,KB7&R5c%|$ NvYչ?EN;F;xK2`'Ty@Z6T٧\0p}ץ5kd :Tkt7*RE[]l$ad\+UT; fΎQ(s=vwR“̂ǷA+`wB_qy"1DCθI()U$b1d9k?v%5YFt˅2,.Dyldd5A\H4Jqu$)PhM:KJ6>@#-ZJ+ % Y׾C=SbI(zB1']im &PVL9 ̝?[n* #! !#q* íG2܊^? F*NtrMBU:Hw@`=g9RvCXxO~IpQwyW%}ش ZQ OZ2wʲe_{wһ}ZBM>`.;!$4T6VGIHS]ULפ0U4Bv*lӢC#V]ɗ~l|W 9Pn]p_1u+Vϛ?{LZbD"qlMIq4 D@jycHa=iylXਥuLTh9e\?鎻!-X9w69)kX*U-tB䱹D;$s2piT K8JUM[&f;d-re˟Ϟ3~?܀4cXe :'xs̝>}x9 Š$tK_Ҳ6bؼʧtxFĶ { (g{0Qp,E6-j=w<8cDJ$<] jcQ6e)Z}Xi'6pac'lە&;o륗:rtm2zź]5ߠkxw6s/9= 5l͢{گisWf|~X@p$1>;d,oEYb.) >P)/e+oUo;zw[A^}G֛NFREKK-Zɸ*M13Og`z=_rem*˿suW턓7hq'Ys^~sш)hRwA} n~2{ =`/ްxC'lUT#@\ډyP&X<| ?߈+%+Rֻ׫๋@2OعbA'nߖZ2{^}n/$#Gڽg5| |ngbx@FQ6}><^Pg}xBv2ّ|¹{ 0lZ,Gw}t]HmxWB,؝`ԩC 4`Tj->vةgAdvewú ~60z.w' :~uR 7wǎu6j ~d!fJ"j+ݾ{NƆ VSJw gX1.Gz'g@#dvxJ:3c:wn.DBc|YQ]֨Ly3z)B}yXYÃē!`TMMSԽ_!3r&-V#W֮TvOru>h [ɧrqo=|H5UOףW~#FlS%_pHtU^^SY[ֲMr#jiXJչZ+/2g ?| gnj;{ѳgY;j1۶ZlU}$΂\:bݻ(纑"X46)AQM@߶!YWfժW_#Z܆{M?FrT݉'Ng@Q'JUU?ҤUWer/!dO?=2&c۶<^|塃Sz'ݳGo޼MBSN;scN^_vT DlΪHeKH(ٜb)g[R1= T_}Z ,! d8ՕYDp^YswW5l̰=e BK\q!G6h5廆?g`U oOt[:GUޅQX { L/C+ ^I(@ڟ}Y{3lCmڸ8* G^]0ok-lc=~ƌYPoy ,}շ{\֙2yj۶G͞5<ч~oX >ѳ맟|V,KϽko)LLϞ=6mJ"fp0x*yEE% ,-#,? UiCۣ8i/Yx>+/fϞIB1?ܤ9(XĀ?:=Ck{_nZd?Խw׬g e!d]kn ˟_p;;ywiY(w|rS>_k`Ἁ'uJ& ՕN4jÏ>:rD.:sN='o8u?sC<#1#qg^}L0addsUshqСV&?ُ-7|އ[}n`xǮ] _w^yw?W 坉w{푭s6:pϧ35'L8cf#NcNBcIh |,t>Fλ 5vƿsez Gxʻ[o?Eg :܅j~߼ޤx]1M8tLyH$ʿb=GwȒX>&I7%?鰁<Ql0EE o .}O?v#M//o ԥ"O~[.Xr'S^{50رcGXVVvu׽xx-}~gΙ>eV[yWW 6;DpQMzw س=K.ե0 O.;Gdx'q,Z0ŀ5Aԥ&M,Sf-Ρe2ّV?CdXx*>CCEluQ~ {d;<ꪛnu<?֤ԳXiv:jjj:ˆ??Ҋk~G]oA^}?JOo,[&pð_nEM>I&$f%I'5٩LGhϠw͞3GA!AS.5O 8`;΀f;>c~﾿ \zObݻ7LpmMaj;ogx.=iByrEYU੒Gtg<(Lon +ŋ]$ݥ, 1F/`ᢹ,𓏎j:1Gٯ{Lj&|9|Pa"KgAy fL|"Zܹ}^߾}j @X`Ը|ų^EIK6ץ8mc!jqDSeh룏B,OɃ?)6#' pБqݴI._!v V]v5ݱ ZHD3UC;e+׮9 DmGkБ:j;䮝;ChIw5r]:r민ZMu>m.K'Ur-hf6f%N=kW7}8:]pl!ҾlˬJ;[v\Qh֔u?~gy+\F!OSNdF ^;ݲE (}iblP\6 4`"@xNUHBёj Z{1h䆎{\ؾȍ骨-^0֎-G0Ə=w'b {LG6U{v :k'zO3w0s¢eSeѫKlC+!B)pk~w|ɬ?ϊ[jס;ld5);g f}ۓ^~URİ|cݑS5sw_h֢pG/CK8L|λg3 YSF0%y%ϟ5ܳr=cfL>mI:7FR8xZpf̚iƛf(/!FBxf.]p&Mjڴya|0sxR>u$o+Ï9IN9jig^83+kw&(ddG432QF<d @:l$HtCO<,؉ȳ?3m/xİAV.1L*<:Q^!ꈘ"~uЈ-[e"@\^Viq͛lѲ"S]em#i6gΌ /X0w=@^Hӂx'Ϝ>}e ,O Ŗ|VD"ApÝ[O!~6h *GZ54}NEʎ7nxɇm+ 諯\{cFexhF<9\^Y.hóQM0*I+ gHBڄ`/k.DU}'%ԏրfnXt0#43)Y xm@ "0Cu4y!<Ue-‹O6.ԓƧģrzw.,@|Fv@?r2!$\~GƖ"11.;ë,v-;o֭[2ڬ򡙶s܂1p丑Gh\+V.ܼm-0Z#(mbxQ1Y {01 fFo .F#x'!9R4|ʋqL_z,P(OjUxdcbƶxj# Оd=߽mgؽi+\S*N }ճC1G1?+]^t%!3u^DiԠcMga\_޼5fm -7'`G@Yʥ&wTt|•YhuTSs_jsuRԧMyoRW{ʼy5xݗ/=a:{݆=Ii߾W +7@Lr6q W;lTEO>\N}٧[֭{a#u8oGFu'mQ&S>dHA@OB(c-:k/" Њ6-+_6{av[eB,XY-HCW:uęV6j-UkM#t̅N"o^:cٲdl^jxMB)w8Uxm;'O<˗^zi= A]qfa7)苹il!}X=b\3|R,~_"ZK{v͢L] f̬ZiWw7#tcTϞS?QGeàI˦?z u:$=,Ps\/[Vlڤ#Jk1eiꚊHap{Bh5uҌ,~&/֮ڜYvD+ &Xz0 sH&+vkx1)[?صlbGjC CIZ9WIDwf9GJ}n.&MP |1T Q6]fcj`QBfW,<^@ oЧRFqMS8RGyp!Ě ;="6'D#i{|x!ÇկL.3j)#XV-ݻ 6=f \\eN~ڽG\wV[? t+X؉ݝآb׺6*vbv ]3s0(zя]egowk=yJKňqe網&Mj֬瞽wN I.u]tE;ˮ]}e(b,c}a7w;q5Wλ>}_riv@C!QV֭]hʪX>[v8ēo~#LcG+{ wuW\pŅ< پ8s$N=x?쳧_xԷSM7aHZ!A* +ٹ X&_d^,@BUC?hYPEwywO=qN:8 6<xnB, [}}zî;lg_|S}u޾\p9oP wǼ߹K0Z~ݻxBp!yT<3 Gtq;=v7wA6(u9<ڄ+W/^4 K MumwtQR_9I5v@=w>rLU %kw>]}GD/{C}MW {ġ~/{nvئEvmZ{5y/Rj&/S H@|b|nww֩Zj^v%;oK8hI]N״nݪC9Mܺeꬊ)жƷd'(ƕԌA`Ԭ_-޽#<{.קc & .#_5~pEg_r!YvoƠA)?ӗ^yv۹W\,_j <O=yUW׳sn$GpЁtX|imh'A3r/X<ĝƓE?O:pYYCv勯ѣ [LM!_|g@.ݻzC߂xUWa+/'w'^u% ҹ۔3xsgpC=Nүm 5Fc_}mF+7]v .?-6d!,_QI+O_X[wt0{|jI:K56\A` Z&bI '@L\X"'Tggdp;}P B++q(&(,OaYIǵ6,!R{!War7|<)H l:!O6;Z[ZD//~yw/?lIp,//*G* t" O2\()B^LK뫖RdI$hHX]laZL˦0qV=+#1rdǠ]2ÿwz T)$AMONpQ$R9{*\"DVe@4) 1:qCqMQqï.ϙkzrNՓB+^0C̙έw_e?qE^G ġc,k'BtV^O1\Id-X 8)aihhVJb#/*w44 @c0@dB1.hTM!V ?O{Cip# ҰX'knEem{C9/7SN2zX69ySǨXr}?xanIJ„7eK7IA+]Þyw/lIp*+<PsaF0#WOp+*s 0gZ ⰖBC-&hA+PI&mN>J=”dJ>%r&?L/fg}ɠmAnh7qZWQ% &7@{gC覓)p`I41}1'?}FߺkU 0m 3^ҙ#UR NM0JhHH˥X`vJ NXu TfSVJoD2ih^<_#G.g UEI'3";@8(xTf 3B BX4/M%Y@\>4(-ZFb"^v]=;n#xI9(w"":F%|zϼv?",Qݢ)SL}[S(bo܅zKpܐE* f D%Q֓}| #YGy(AxS7f%"qVL9 {UѐÑ&JPy%ږ|z_w!H2ή"U!EΣ3*,KN_ '8X o' 3Q;@70V4uSe6??(Bp^^]I ~HHq#tʒ ZUXAHrGc1dCL؇SŞfd~ϸY,  ?8PA Z8K6[aYs|W |K_:gR*& =bF}d<ƨ!3z<`]5ׇq72= ܰkUN 8d2!ߥ(nu¿BLz!zG8\m_=R(M.z q2K涏J.? 9XHgt,]t'@!Y(gN0Cd A) +IӘTE(7ĵ߰y|G`D :k# b08T+_Q,&X{NOP2dP4D?%Ih D~= D319hiT2dbR k;<Ѫ(>Ŀk..BwAbSK tOQG8FQ3hB) .^3Å&"/ʪl$4c{+xx"P $Hqa;ArR墑PQr,RM8VIA'Vj[Z^-P;NY(n1@=,K1}B IL7H'_.vs+FZ{.EJk4ɾHUӫJĄcljۇ}^* ^\+ļCʋBJ{dLetAδyy hj$mOpJ & 2Ng2oA:'v?J[2ƣ1 q1GN*{!pč%uC E3ubαbġIcK(Q/q ^k Mν!*KI Y\~ '+#%c7DpR,.Eq,QdħkVDq8䥒5~.9!!B͒`f\O@OJ_ǁZSLkw |vٓe.2Il(Yspa\( }#!xHEQ1XD,\JxTiRFF(AF,7M(i,t2f?k߿bv9?fqt\!m 4~,[wy/  xlg!]̌`k^r 6\q?!PYQKNԎ%!K!ZQ1xx."ؔ'O%Ɩ 96z QjwPU(+7%,>Mҩ;3 TU֖WN:Ï~ӍT)z8d>f.3Zp܆b0 /sq5/"^$:RWa9iX&, 9Cu*2PF\f88Xe&fq`DAj45pGJ BpDIltN;K&p4{i+ Ď{OBOإT <9:ɿ6bz؇ 77zC2" n,݉ z>v r>6)D*D@k3$H3p(!";̎3G-8+A Am8 RDw(!B :_z@P%j5iN$J 'ǔ6l-i!'k{c1'9}ʉXKiM1ZEwXF~Anp߲a&c( ~ʆ."ei4X@SV + TK0Fu)nnq,Ds)%QԪi+OӪ+UBB7- ZjdyR,kYR\צja3Z 4Z|WS"c)iI6v)k2 ͙Q7}u*Ek2Ѧk2ϭZBV. YP˜Řc K+-XwEYNs{@ HCc|xB('{p(啬 N GTIRX ɭ~Ԙ9 sƀ˜l@TA2֧(/\܂OUƮU|\ܧ"DRB-99WUXuHiDO\H,Y!Byj2,hB8S 򯬡v\°܇Vfx7u*zWiSns%q99'N|h-@pm}XkX3r")Ħ~zbYXSYD!7`)j TBa87$,HY&0_9Hr_Wq1RfEwgA|%R~Rۤ@naG/6)l"K d tM9,e p"z I&cq5jQ+L쩜 ,qc<8򎂵И3?e 覌=y2C,5%س۸gtqdiYlI„A<l Rm&#%q:0pq 2 [bp(>'HH>n3%t#@#we&Nx'V42S 9mZ1Y x㮰c,pJ) {F Ej,^bխ 6BB6kԵN7z8ebͽqVf{uaem\+I-a+UK#h][ȉ` |B*vZ K)Xiؒ@ ]OYY~d$y<&M&lٟ4c 7bpp"+$e$]$,as:)b'c~^+`dLo43Q$dƷ |_hHoy|W.NS@\ ,;קF"C C)^ԕhcus'YBe`)\f; {yG\X-\Vse W .[C4c^+e$uwX ϛ;b_Wmk^cp3i]\cgX|:ɹqY %I Ý$sX5L[a͝[ţo+򙧠:Oe)æ^pѪuEU9m˰'_A(x7Y`׵g,Ӹж y"P2Dy*djcd%by (d@\7Qgx+T"OcJ,` BY)-܃1?էO>moTlUys#b~& ^͇j?[u._ʒX>t?)؄\]t\6kI#|$ Ŭ+F&K;Nb1I7rI^>E"G\ڣ{kd]W4_Bj kDO~OMֺT7Wor0sg:=c&Z4-(d~bŘHJ ohYMS|JԼM/:v#ZFvn֗nrIحze~[PgY5e$5,NcDa%}eB' x͙jb& 'SMhCuPV.Z@a; r̹9{5E ޠ5'm6oݯF~95rCl~:_g )S&6 4¸<Ϙ\5U  XpUf|!w >~o+^`+imbm#1mqD#ϛOM'->NdblP|(+/bdaM Ê0 )ZhA .qS[@4dg-f}LV^)gr.Pq|$FM$ 12B\u sS%&|Z<_ȄRM٘ ] $/sq߅3av$ l@[f ;D{;Qc Zۉ{M_ GZW@@ ?mP~&ఁ"}gg@8[$:G nК|6T4-[D9gy{1"cʝli*QEr#FT'8X dH#\)І{9TࠉҊRB%cȴ*Ѵ9RU= ȍ1CRn + ""RZ~4s' rp'wpRQ]&M5wђDe!h%!P˨mes{! Ã7*y:`!>Gߐ¶ &tgԠHv l[ Q6|*+H`P@k_'77 VݜZ8 o*P}Uެ +|Ubk}pF7c,yZ}Vj?Pɺy04aR} oSdd0<"V$UO tPk0L41Vtf,쇍 %UWb`߲ [{iwܔV}?b=|zqscҖzVZqk@{}XkuF>}?9Czdh~ZU凃BVf5cdkZ``& 3jL)k]GV65&e77տk[n5NtMLMjg3 VvDq$X,%5iB5B=)m+, wZJ$A螲}몜f>iSS'GyRxKe:tih^:ߚ_4{2j'՞5d7)7ĢUXi@{Fȸ&}=xÈG&m^j(sAውEG($! dw'!ó9ҔV< h= -$qq_CTF%mK8^F.>HC4\* 3r370(@X"DBLH<=FdqĒ 7R/-68Mwzx\|~p:>bNg(|RWQ{+yX,XzbTn2w?nF` I=W T 󴻰% iTĥt }<+C@(8\эE+O T?S%} 1. K>7L. lFÜ9B^邑`BTj)JH$0"q01{:]CfwK9,_%5cR*@TL'].IQf6?~6,f1>$3wTevl&+#Ju<*\R/PǮx*W]`p(I  DgjF)hM7k|27{߀[1buI ʾlطúPJ/t؈p4$xǣ4[&ȢZL1Nʛ5gj1s(c&Q \wra5vQ25 L=A R{)"-֚͆| }}'%I_@DXHw7^w l {{SG`SΩ ?ثp(b}6%< <'maQl;,`a8.&5xPA†-q0 pXBhp0~+zu81o#@n (٘vèAK[YXJW.E+wK0z f__6q{LO=kes\oI>`*h3w?yA >Fo׻w\U0sהlSGUBR8-2v`-y)*prCn sU KIZ# Dš 5ztDa``;67 t:bx|˨$wF0P7*间5hg%F.'3=SpѣJ LAɔ& dV K%SP4p"Rm! jzR8/h5,_EB$Z-H XF1Jh>rJgϑڃNs(<F2TO!22;x;RZvmT,R{.ʄIT+c|RdHe IzѴD@^+IPmQ~2nyWâB`Ic-='5?Xy^f a0KKBUrj iDܾbhi ,O/XԈ"*=ބ-c\2Wߑ8B:)EmcW@ۭnޜ5е %CNd5P(Ú,&Jl s2R3r߃֯\5ՕiOI6mWj"b3!GGlB +e@U ) 7EKC@)|M=8c7c$muP hd>|x^ GnE5΄Zv镯0$TUI/iCtblL]qx_y1kpblߘ+8 ? cػOijDw^s1 $LSN]"ִw(ϊZwiJ{ .];IJμlO(zN8Be.<.ęjhOgD3fNP|ӱ!mGlnO:NL s8ک]'6'N'Vg~{Olo0@I"@iORR."OիU|1 Rz BK>QǾ:EalE0'g3n/-r8< nJ9u6]{O>gwض'd@;C͆ #n~}(m4o&D&AraZ01K&`?ͷ|!+tx!o gnQiOƇ!$,'>"ێ9ⴳ*7v$fcC~*ӣvkl5Sy&I3"݊B`*0p'*ErϽ$l쵏d\㭷;p5X囅5'|MOcy|50m93MHIڜv$+ة_ @;JsI+Qvvő< aϯe֝uzxV`i([쮦=*֤j7:`g1ST$"ᝨεXMGOgci1,Sr]~7t>^;dc~c 1/e -{W#Xeb}lݺX5+:Y#*C5"MJx&k.h|eZA"Ǩ2TTԖ7 B*ǖoY=I( E/Z[9nF$a L9ҍs,YԧKW_}&B}28|<(œP n>{[UV%tn_L6k֬UkVɞN=2vyq?-YA#Q'M7mzþvO$Lzڶh+o0p7*'7Mٞ_>ŋ~Cx{~_~ Ih{_U ?MyO'M[;wl# Jpٷ& SiUΘAJ 1K2c'b\ y'^䉇gcw_95"C}qE {Hǥr餇TG2yK^|H,n^zi*zz33f.~Ԁ ;VXgRѣ8mq:SN]+*k铿5G?o|s.]ĨgFuT1Zv)y8܋lEGqĪ/YzEmģwRmC^{nእGmqq'UWd]3w?FZAnJ( W?}<`f?aI0 !k|%NfW._C䲑u?N5F$#hǞ7_ Ub򛆏\۰q}* `<uﶀ1lc A)aG"'yxź .V/>X [^;aO6.Y~5\uK롧 c>ݳƻRMuq64$vw%D ϖӏ2m(}byȹskzece%-*W tǟ4n²x,8)\)݊) kCt S@AO 2~ɉ?pƬF= WuF*}Ѫ ay?|X=G ߂>rdOصgHjծ{cY8ʗ{IB=*x7\*ļAL49o5FfVB-gc>`ՂukM:;S?۱ƻc'f !Ǖ7_xEF:w{뭗< bG|ux(kaǽJ+O;7zǖsm w5tk.*v&N;'ܤ?_IYpF׆ JϭFګyQxD^zoπk4[/ 4(?zΌy}A]Иjo%iyY9pYA2|u`Nm.;|s: G㍠-m5ϺfNٖ _smAhU-oW2ݞ\z0d.[4߶Q&-|g/Le`(vxr|`*]\6k烏>4M媊:I/Ze۶M$ϿA]uߙo#Upq+Z7Q@ W'Hd2( @ELm]A@o[סYvn&fAIIݽ~Yիo}x^yU#nnr!C?R%N{cg~I{D[grիś0u' Sa+ Bј\SO]4w¶-F2 uro9s~BfR54teKmiޤe{Մ +E6{zpbs8d)M b+ڵi۲77wAb9)]Ʉb?Ԃw>`f)V 7=SjOӢ@= ,3BWamc=y!Qk ,1czG#J m 䅎VmL2a]|)-۴ZڻAwk]؄u"9R8gtGO"3~evԁ'[U*J::hIoqSUok|ʵ~|b赹\L _}uԡw_|IU"i01|ZM=بK.'<,~bcy{Y:":Hv)=wwq#2>W^v].٣G2_@reΙٖ*oٺZ~pW n{/v]Rڌz;i(mrYp'OڵkZMp]ޑr>|lQhPnîJUmwBD]׫_[4kTd/ ~'_u.?ASpQ ɹl5U[SNm$s6.XTbl7$ć-3ƢXUPJG*iJ ']viL0O 0fU քևlSkreIeVf>8/ُ_( գJrnU='q( R?Hf};o{i?h")eML7g 6lxeX| nٛ{|eB;" ;y9Q#(IbӔ+)r9YTkZU³d P*4;8C*5^vj6lbiOT]W^k߱2 Lm[z/>$Dj;3xڜ})< h_}nU\|my)"Zϭ}]^HuMTaUƍ#vwJl%SfL ĕ޶u Z%V xro۬ɛo^j/#X$~Z Қ:u0q\]{cs)~Swl6  ?dG ;oR>|%ˆbHQp|i*SvU!tJGMs˚[߱&s{8d</ ]m?v~9d߽= \8`HYXoQ߭c6,k!%c"ȢUɷr+K]wgOWY T|mM6QxV Ay󊡷~ {/P^{Ŕ)tT԰:xY zM7r;;ש] -{l7=Ee{Q- 7SU6}wi_VT~^;cW7$u~{|ٗ\gfME~x˱~N ~AzyT}[KW?9bUJzy*H~!G3c$TbsRv(@[gGh=}gH~m^6iȤ CٵCߛVJ%<4ԍq6]/n[r}1QC&i%Ra[2~_y0+^$ c.^6 |eV{> 3Pt}53پXcTFlLD"gj[kow̨{ʓMX8ڭoUyƇv{~Y۾6g3K\ •N@5WwsĄ@jWT= 񺩮f/2쇦yhUy= ScvD` ;S4k;iC/>2e`ܓ/~'vn$?}wݿKѪ>z+/(r۵iױX@TubǧzjE—^{ (pґ-:}wFt8$fZ2ǜx%W\Zlwl!ZUbMeI4gY4pvn,hp5˷5R` i;\r #`WlHY/R-CZ{? 5Gр^[ZBR5,|^a`Cʛ pw&[JQE'uuM9l7ߜ|Tfa<؁Ǽpq6IDATIǟbJ盯[oyl Ts;)1Ͼytzma[S>#'`p_VB.R.-iPl)* H3yGo'qHKKO2R.[ ͚˶mkv1ez Iڊ4=o"pӰ twodYiסP.9gU;+csE#)Vs=3կjl qD鼏߽kոmnWD_ԯƾ;X]gq~pz0uH"G xpUVu5<3>3F\V@i.CtՠQ9L$8 G +P Wdϝ{o~ۦzAMae]'G?եw3ho* 1(c^D4rZ8/:>[L$U2_z}xftq4_~Cv^Խ O>6u)M\LDRYixp|RavF"QӾ˖,_51K܊@M~S޴E8hŲJ["<ҩ N:뜲ƍTk/e$҂!HeüCϼɰW`'[!KѯTa)vK&p6ަڀ)<"wᐤv=z}Z$g9nΕ|0 Fwie>kPG_ta/Sqg u3X7j/8AfۖLҵGWOQݳH,Fǝڦu mrLP)N} .8^CU|ʛD%rСcƼQj2Qh])q#c_uЯ?zؐ(@rڴY[l⚪ߌ;e- 4:?#" Č`6g^{K%K<|f%}vh)SM1i$?vTVc\ꭰI9<ȣ&1wH gƳTim ړx|<֫K{S i*}K)ddn߿ ~7CPR_vk+k1ZKg5" 'CFJtB*OYfE(te"WĪz^tއirqU)H@|B;M3A>sv/v;WG#0Dw$z;}V%kIE`u?paV\姟b#`#{/*~T_;n5*̈́1w޶ߔOi%pؾEp##ASNoٺS>X-xlTR^?+7wW{p%Gz!Qs_YC[ty=|W 6[}-D5kgGY p7j٠}ų.[(uw) 7jR9<s7 -Z{=.ݗeks={t1ןuA;C\FpY ο%|rXhǖU&+%laSWrcݰEn~%矔W>ZWnVfZSۦ/}:72+c< 4M})g  MXuX8e/_Ov춽m<-{~ij.[Xם"'Ը@)R}KV:r#feس xb P{.P6ϹЪԹh+6o’K k;ą~P%CwlGc4mҪUinK^(n]sc?ron۵=C2~}_‘셫ٮ}Ibjɸ^]Z9b>dm6'[3A2TwXXC]'P'\Aγ2Y"~Ɓ{\oB6_|>3ډŅ3*To{r|w*p-G59uGnSˎ9o~_㊋؝NEK5nuy ZLI6["z \XgSR7^3ѕ 'mPZz1a6$マK;aeϿrF'i+9tԎ8^`m.5/to+~iweG[D|| ۲O^7J}myqӏ<B1G=\\|bWn{%];e\=؅7p'&J[ Pؑ۠=S]K 5§?wk/<[7ĀVo49~iɥnEGPp3f̐ީf#oMzӣܶ[C |Hݖn1nB:>1߲o~g)u8ȣp*Omi,&VriJUҡ6z~N.Njo}Ɠo+v>O ᄆ"?#G;~!;ɧYvG2v He~ݺnfӊ%K4l7}I--!U\|ޭt ej jlW*Qe`W.YuQ:_?qvmF5UaPHnmGaL&NA Z7Yls{Ïʙ?|[HҡM^}ϒ72,;W>Y={rM(_Ycd35rP$ܾS33c,ԠQCϲ̠&0}6ɘk-]ü&g g(6`SFzaD*3^{C: R\_w;;tϰɻfKWA~v&70iaY~ʓBD81cad~P@nl  b:qtaoܬ;Βgo8Ǩ`E6GӖ.1ō͛װX I`?N~7 zڡ,3%E/(!~*ExcvH7ˉ6 |2E*EWH!r.?'# B(r!#P ,Z;ۗ2(,o UgZ \)| CY5#̗8z)(pJ IpNXv8#uB8"mA+!jSvB8 y;-YWX瑊tHZTɻhmɄKhi Hmá~/gS *t.%vZF="3T+ _*svfH:"XQz`@Ȝx0ȻNCHʌh=!LĤd^HUK4j +^-0Fq+ڬ[Cث]աrƍӻ' ϊ1ݾe5Μɢ#Ql@Jxd+@ڹ!E#X"Kru)zTHS-7e{c GH)ZKfC<$K)i ū$l 1 2T4J.t"V@'>&:7*0ְ"AQPhWVÛj'Vq ?u(*QN& ˖Iƪo콧U&ti 0^_7s3^1W7_y_tj*knȮbtХxTz]D/$̽3~: 72o{۞%d.h7rczk \GT `7q jB蜥XuGI,zNfX)7d4D.$CB^Bϊ˴GCjcH=_)wEV㫲! $ i&jm\ yjߪp%* nZKXY6nÇ{^ZXF0 &N4(>GJB M)rLcgOd,hJʹ<70sTssKdQeY CҠi REf"Y-ȓk'Q؃Rl@Jj,>[2FY}$-<`}|^3Iʋ^C_:Enn 2hٰ찱B7id65̙S;wlvZ7B_i6QZZ:0Ȱt W DS S `[5CO-` j :ujמ}sIۡr0T?0q"i0#XZ~IJn^wx7 7x"چ^Lgc(*!;gΨ`m:|ԭzMiulPn9 yHs̬4" zɥyiYMYc.mvf֘"ł1ur.%H$Estl`#dYV:!688AMhm-#2wC^\_Ȟz҇%}(tv~tإ!hV'MѻUY %`WM;`wZ2,~S7[[L} %E ,vuD dwj?`US> E> >0{PtIXiQR m鲬+8٤BidOI?U1mwLUfQCa9- UmŽfc3 2h tE=~ȠO#XO Z3)ޡeì\;6ySv:dxz|ZJ,*Lu8)@T͇b$=Ul;r+ 39S 7<Xdv&YFE$}p&Q\ul>N⇚n/>/J|nGU mB:86]|73\VoUjbݪ*2pݐ`huhvh72|f J^\ae3 sA\z_re2be#G _|H % N S$R՘y9I(+wGE"/ ;zFI䅒~}xH~"hn Qb ɒo/Qbq>O&(T<?9"p,]b6lrөxiyYKr_ٽո<g?!(8jj/A!Vl*Ab`;>6n;YdYx)g]WV_#􋩣7:U|xTjlUtq0&,usXq^SSIpw(7Mki0^}ċ.Mg yp!`G&k5gad0ekYg 6''\(IT VؚL$0iv!6: DӍ%OyGDm4Cv~!B-kLq1Q/x~)'×}o~;敯?|_0'd؀UvLh\C7.5h`s :=A{@vGX~Nws7XxuI\A'iPbu~õ'e0 SbQEO{Kue5 Wȡ,6qV>uV"LboJz#ɺyl1q& dD":]ʡ[t!r^IfP59[e xKrag+l(0H2 #["_@ղv.@PgbpAT3YA6B}[E5ncu: ȷa VQCt4 #鴃ώLآhgQ+KVlx}eyi7ˍ0V0,%n1 Q ߂v |;eNȱK!ϯZLId\H7mv6:1{,v@!󫼡%1PkdڧL?` |x!-P'}#~p{Y%xP/KqYq.%)STW(1c2 u_n-IKϓW1=_nL%X.}^rkTL+>%KH]L9* B7$ehS `C4bk"6c$N6T܉h$٘Nd5jTY""q+x2]FXmE*Iir\dFm^tݞ)"ʒUUeb$ ap)r[`G*kI<AV1Uƍ"/hUX*$s̍F 9iSÆ &4\ڳt .pUEp I iOav:*M%-KJE|Ux!BLNJvAY>D[U^+ɔ~O܄'b#'uv7Ese̔ #&UJ*u!gmڈ+T ;jL#̪,כKRcAlAŜnZFpb%M$[2o& ]V 6ArT";>[Z벆]"_}ίu7ўuSofBx =)Z\i)7~#ӫ,!1ITTaM"0LjA"(r[!J?R`$SK.?{.ىH hߞGY11>v0q?`lY8:e!W1%0[j1ʄ%m*}^w[IҺGm%iS:wHG͕W*6:[qIZT"9 K1m:b?0bU*[ݺzYesw$7s.]bcQJ>2ɹd"Uu)gcT_9 ӕp~\Wqsɣb7G8(.eU.hV20Et,g֬Y]vU:8=.^O\@k ȑҕ4hvX|"HCj32.0&=}'?]U!Â匓WL3@ieHiP? cԻBm\$ SK/2$3 ҥQEVTˈL% @&rդ3p.mTͨf Kʃb& cQ؈[\ Wn5]F`y`QJg D_g"na`sa,o޷ڭ\;hg<KΔi^tqs7IXM9do›T2'>2UX B:AuA?gl yF Kh\Mm2} x ,%E*񩠹qӏ 1&=>o$))K_M} f! 9*%CKb5m*d6:LoV-oڢy x$tyqgdG D}/@`-A'+ Қ00&mz?]vMME,iNɐKQQp#|PhSlJ[%YRIN =8B_'yaV#;c TR-lUζn}CY?x:EM[ɛ]lY 6)o? &CK4\V !븸6P(%`V)IPǨ!1XLquS)/1,HR4FEK+>=SB[oּo2c ؜$ږ+]hH,zJ %4>Tlʴ, +lIH MMf_nĽě4X4k'! .YQ׿LV0&WU(4&C ܝG*jUr9"9dYĔjj4Wͭi2ZP~~J0|`+H]#p`ѵ ѱLpZԆ*HZ^"gaU\y$Jי9eoVh>k\Vq{[fLM"^+bR:+MfA$¨`W~_*qۭCo:7媫;nx؝#o>$q %]\zͲWBTN }gmwz''S\.o+tR򍗟ר)tnoiS8hc>_.B" $@Mk3-f6m?cPحJ mWzqas[isu"$2~{6JDq?|v22l E_-NP'̘ <Vֽ_Mf hL`܃%][ 2F3./yDI΢O>'“vB+]dFriS52q怭>|OJg- }u;~JTc#uveb uܼ> ]NaGo6ѥmsh^2oŸYZtɜD%-[dvbAbYOnĔaDU"C] Ua,h!$DBC@^q)"6HScнfl6Ō;;=᧵'{_X0` J ]Vn**+x&Ɵxl ̽+[+Ōu~ٿ'vW/EF̍YBa.@NP:߼>*ȫ{xKaR}ڜ g"XٖL5mԸ|:Ѫ.:qaPAHz S-sOGc[#b- ,!@0V߉dIYChsז$1 pz YYxaᦍA腕o 3VeU1}⏻ 1 džg},uO<#VY6Z,e:!=,ݟ$mhi5jY:k.*Piø& PM`]c6/>>3l.5}9"R3pA~9(Si3:іKDkִ(*iU.,GrQnO#?SjҙIǝ_N#]}Aiq8 (]xQ ZcA G%xCǖN?~!Gx[rܱ'4:| |sEN9h<7}|+->Ӓyǂ~StzAQg:|ΦǟpnЧQv-NÇ툰"6opzvchcvq-eĒReK5(tР C%a]:bx6P'#2/j޷~{,ùeۡ[3pTC(0~2\Ծ7G@Q!L"_{/9u箨ʷԣuŶ 3gPdP-Y_%),p阘SaW`W_p\{xUيnC|3h믺'mZ_y吀+IKLTnHUeq=wK2Zto/jJ^lv_Ű{8!bq~MoIk/ u Wkz>z \W_;# j N4F~of0=~)deM^_(+)aC~eI4RX" Av\ X#ɥٷsόs+ Lc* C+Ioʃ$Ծ4*cҽf![U˿n2| >1Edjz4.mz3ѸQP$XIW& aR}yݮqYp>nx2^u`Aj0imwޗZz&Ls|W%+;t g;Gz.!b`ˬxxvq<1A&W2ITN1Zj= m7s|Z`ԩWJ'5]Z(VēO?n>L1;LZ<,[ڞ[~#o)UuM'O뮻?}sO /_}'~9gJoz.cƌ1vkB^\UBb12hGb8T8m~h9iP )`_Xd-iXTDV\gM|}=_yvmꋯi$!|W$/ ^z9Fvod뮸Hp$AnM֡k'LqʾjŦBb,d +?1!'˫;99_W#d~s9,'gH'JK's.<*|tU'||!Lj~qqv[D8 3~^ ]pUf:|mJ$ktY1gͺy{uʪD~_ }P:%U_dNt5U㿝1|xM޻|7q!wf:5{Hܫy|lt;(MfZAI({|&3IrzԿltl⭿0:>RЌGk@~~5}R6VYZ3"~7cS6-_mz)gt^bǜS+8qә2Uul~a,lbք$ |L>6} fs~~ %.e%m-{vBH+F$^tQIa%G:r_sR [N"['* D 8ȀoQ4Q=~c`C.ES&VqfJgwwDOrn_*57.G+" YηÌCkjA~~.Kc8$`Dqs#8 {7q}u8]6Zߵ&,؃ +3ѓ?uꌉ!x<~|y?q`ni6{ǟI14F=65^ׁlKnʔIOljq:>L,7Iþ[zNC.bGۻ&Tw_vQE<_}eCO `+%}ѽTy$jŲ%w=3*WƤd|…{WcDYp!G|@ӒX7'w=C,9KSeowM<y"0Hvk8<,,ٲrO<,ZÖ,Xr衇j,3OnHAz5ãN:Fͨa3J!,DhJf/|%^&``.Y#JARxUr|Q@$ʨ+ ? d'*qZ5o9{\[ w9r,k'>&_z\L)sTd0mcl-%ÊMZ2rb5"2{D5ϖM~퇝[}\pֱ' P viX'TWF5^+9("vs&bei"E_49P˞ cq) R|[nSO5nhfOzH\دksBLQ3|<+?>ܾbڢ(B] GTXƕMS1tlAA}Ml8}A ;Z|ꃜ'Ǧ=XbM|{uʸmۮt|_K/Ydc<ӢIƍPe'|. eaDGniWZfsJv35+rL6i/X?kw_^Oq횗Ϙl۵stOc`4 b4reK&5~ ۊ%t炶,\$)*#uY޿}ޟ9NRdHuj}"43=.c_:kN(ۮSp(]<` dbulH[ldKAxSG8e@D8ݱjew:SiUY |gB&XjDZzd+-f@Fwd$JIG2OaNJ6z -ZRzfMi/+V|2vl-7(m=ole-:&fF*Tsy'̮ %wӣ$^?T[XV4,C>Ԟ'>lmĩڳ\d;VzP 2`_-jQ"{g^^!t>)=.1 Ԝ'm.;i=g wr5էG [ou!KO9GF?׸#w?vaoڤy sS֭N>䀻 vޱQ xgc`pNfUr{} K;X$ڗL(kۇ{.[Fŗ)zCO>bmr;|z EL4Npx6tysz1{7|VAq?N:mU{p/+vmPwߟqi߲Y3&Ўr3D$uG] W@d2Rl:E󗕴݈n/K܋ye%ex]7ܫs9Wmڷ;s=^'0'[v2VtHݩp85(=3\۶{CЎ$ Wi!QBjitړMN?eԐ[!^<lP丣wy}`zfIHzo7gz&?˙ e6&\5SέW?tGCo&t>gi=:[Tհ)S8Xz,Av׊Ӿ׿!rlq[p1yϢ+*MࠖZrd6Q 'rHg"\{~ǧmU+|w^GE LxY+DWBi<p|Hpg <M3RpOTUj#eqlO;(pIb0ι]>ub*ZJrh~ .:/x|A<z 7Aw_ZdR|U.RTPkOD E:JnttJG3X޺Ymߎ;ŰLa<1Nیv%2$/F2kG !ʥ;K0#(V4W̖069d%jz;zNL 3qMIe"6"yLt1`LD- /ފTrw, ZߕD^(籁fKpÊCZ10Y5cL>k|63;vA ;NbLiO f'C~jp-"a  j%͐'ƾX9OL%2C0Q%9=PXɈVR#{h3Jh4R:2Rס^6Laaݩ=zK DdXt]d Art'Q,f %uG.bL`'%_hv-jBD "t@fX[c-Sj 0#Jfu٭EkYwM7?m݀di;&+<3ȖʘUK\ܢd(?ҞMFba{ IT"Vs0^W.7j*Ibj8tKJ.ůz #UwU HoX)1A%قRi3v*Z4m*Z,w [ډ!|%Pؘeb7=>E#WIɘ &x*gQt&i5/~xrqo믿 !K嘙 aœ1ӭ⦬miӃ($#L|?aĮl)Y4ryZ͹_UՌ3%%ےJffR[]xw6W22N:"zf$Z@wG*Q<XR:3f`(c+BueC -hU{hM$/[™g&;ͺie|ùI&3 ĐݕãL1;+R=Mf6+W%-="An1S'wk;6@26VfK1\OZ>`L"ɡsv_}s},Vı[CWz|f)}zK.WYJxZVj/{j4R淭X5hQkL2W^8\ue B[Lo޲|rɈfu})`ToQ'hFHY=+zělƤɓShhR Z/냖ClFH[w=j9̸ќC%l;@p@3c M do-IY7-RjѼ ' `(dF9߬HI".gݜyAu3QjnsDτh)lƒ: -oFAҍK/oLhbXnsasfrԽi̛-"+@BormSTb,8]j5G}5SMnVf] lpxV2_fڵh6fyG @ѾXsހ4M756mclWTz)u"kY.cA;nI7yi,lVPbܰI*hŏRirvsuޠ #lOiEdտ5#%|?76>ӿ̙ӵKW`R'I% B,TZiNuA!c&cu[]S 3ճ;g[˫˱|޽z[$Ih;?'6>l|eq3 Wf)FaZn1]ǵvjN}?3`>2YL/,y<&Ǧ'Op_y啖G ټ@8Ad$$ND%DUb8fGh溂=G|acֱ:VD'̃s6}5a*`2Aw䅋IVs}ԺeO@zKeÑL@b0] gUVY%ɟd SxKoӤ] Q+_vUFhѲmsȦ{GXFK!,fJ4 ~1V 4fc6Hk[Sgu5h$DYMm^jVYb9_>&n_L>u 9r@0%4 ͔dk\"DdaoDco6OtĉO$c3gbJ='M'xӧF%@עi81-..&H, R#Afv{,qk.;ȸ=PUu"| Io*9큲1H>8lFX4A(b27;%ړTQ"&L<& ]1ppѵ>E|Q*Xf<*A w0Xm^nk<01+r@snnL?p&_[䖨Rkު֢[wHamс:s~r>3;m .Wtf,*ߴO\v([d:]d3[vTvOh*/kE 603wS#5G"}5}\¾r3?hڬā]IimX\Tc+sq7Ecg/IʟYg XaݗRRX<`L# ž`㉹˙||H4; aI\cn^' 0򨨳+[+'/[Xإ܄6*c>8&"UuU^ȋneq`Mo;b^Y߻H|+pm``g!aJ"TP.;qD賧o9V!UeFÆڙi@b I"T3ĦCV :ņ02T#g X:h0$:Olwsbd&䲰kgl kpn ZQ+X2HڜlmYnCUڣ'sN0chL] l^ X;CQX}(UY~[!0RP3^;nUYZ"B؀a"Ui~-ƞ@Bdd҉froX7˒J#F؄0B`"6>K ؄-[( BW0نt²f՛?Xdk- Ă>ot]e#z} qu4LZ)vSzһ&.3glxq;m8~$ hDvøI.SK]ˇa(l1id잔,Wsȑ0?-rLnumjR3H{SV|o1|\pYψ[&ˇc$"cr҇!(J1Җ]ի ܾV ۓV͛\uID+DYpNjNg-!jߴzeVSi %zmѢ%|R. ƚ9sYp'! +O_#m~% c%ܻpl¹57>ZeP5 0 S-uDY&vX !=Ɯ!7' Vu-[Eyedo 4-,0V@^T>1ʿ~uD WhގPU "[CτǬ5ά,s{v9B6Ge]?pѵT`h%)_ uf^Y nyV'ϵEwM;| tI>Suٕ&]: LɰHUE)oKTun ˽U2Sved2ȸdZ&o 4?rb\BVBnl7' KX26N/~YlY&^;F@`V-&7tAQɌ]v׺T8҃N8G]"B!nmQJ`ɨJq|v!Ac*̆lute0ETČ ? 0 | J^c4ej?YWx_ 45Qo-U'gʼn-8?[#7o8loZqDܚ+ `WvÖR඾"nzm9?uE| 1M& Aʯ |{ׇCt.[ EJ?[NnU2}D3"x R@*l:M$<;3p&[zهiǩτRМ#G(d{O䞫%$AHDWȖ8qٔȚ5N(r;52?R-L$iKO4Dx<~QǠϤCUC.Mma7 'eڵnH_>?-ItÃA"ڵKv0gG %H^YHy9x"a: ]{p]Vn%5*-2I@m);vY=&Vpڬ>H?O\ 3ӧ?镕UkXeU~D&I'zi&.^虧/=z„nE]{j#BTm޾lٲMg3-t%zHY 0}e{(UT>S'-UĨ0LRf7)?}n裏؀03E8tB l1ت〟زMvq3Ilu޳dMzLq$-qЙ?K6;_mcλ墙S&~w/(R@x^T\^get[~!oP87_~i+#U.\ַv~3PpeUR9t4v@xE0kӑ_[v?3dob\[vY婰˗;h>w-;nARk#-1(G ϧ]#^>uWQXP k*5(M.xxmF]z{3pm[9}$vԯw=IA"Hc-nԚ~e{[!\ PV&gq&z«qh8BQc]bbW.tqF8r1a.Ɲ ^=L5{65cڜXֽgW3`!H?)بH2'Nlp 7٬"8P!jRe`(6=^ e=g3ʫ|:Q^ei !N峉-5h?EC|x6Ï]vű8e~x͵r%}W~/';b!Iܓ(9\ w{2P>_ ւd2:u>{eǟ[}Գ.hZ KreA3Uw{j!Ow; ˇ6Y.𭋆:=e~aT|ν+,r%",~Yz}N}7xe歕; #VM6[;/_xDZ&k18e3;mw4 oiLޫhζ|ɒh<ҩS' @:,^h>}X 氚|_Y /.s=UUK/\̸%˗[^Yڸy;sD椁b_~ɒk,Z|u&Zξ|3%2.}7ec^>ȥ@ER^7b+Rw[5jAAXaHǭ 59D-؂^.$uw=oc VĖkuu/~uۜ z.jT4l?u>uؑ"`1r5 BA ԤHu#78k-۶%v Fv/8{܁tĀl8 ![nܤI%EE |ε@ :^_W&"!Rf.rvȕkVTF[`ϛ;g G^vۚ e\F1^y}E ;Թ{7nʹvܧ{Πo2c;~W{423^M')y=EpXwԵu Xo$,V lfٯݥuE3IRg?{Gr ^K/-ZjoonFr-`UM53R2*qsfœǟ5u)o` =>(\2xVD+]9kc|P[.;޴yw?z,7`{>y6/Ʌ;4n{? v>TsQj5*ֱ [7gyg QK&wO{ܹ{EH+𣎺ȑl.2)ϫKǦ.KϮ|nҴwϽ‘䠃ƳU3f.!3:mxl|߽wL\}v%VDxތ)J8)/*9sB&o?7eҦ˚l7= 1`^?s3>_~bs9ȵYHgtL>1s;/*q-ױ z lVCGdKvPDn~Ł9x֜uzG0zͷisX D#y63@\uS oUUU6#ơ\S裏\|ٺPub3n @v{-}]{N̑ݭ[W^yS kSbm4 s%L:܋/'f-Yv?K/ `|q s2QHzr"vzg;vl΀eeAg69:lqEl[A:3WuϨZWtYBSz K=?S[!jL?ĉX,lfղb%Z6Lq2;l⸐x 7m^Ș>֗W9lmr˟-\{U]r~E<٪"-K!Es'496O'ISxA^8sXE%%k ßM< ]+bej [6ܤ=wdz|uQ1.s8G'mږN2Y>ڎ]C)hִe^x)|>xElƤ}dKOݛoݴeïi>>˱8vu?o.VŞ9.(%AX?mӤf_83o_qɰqt 1q'Ŵ65ukꈾhύ ?*OO^(ZlW۴i{Oa<:k+;]f~w[}x޹'ȝqS4>F11䓫. գ{P4'o+f4 K-1ry8h I&B (P_&'tn䷭[еOG^|S<K[4o+ou֊t@E1Whͼi2*V#_T`<(,gQI8$ڵiݤ(7k8\ cW+vlFwة]2DKe9g|9V,4oٙF6*~q&nuԲID|C0wakũ6o T[2,d0 ~Mp+TiA&'&Ͼ%bpB)(a } B(,{oުN=j\ &usq'\xyJ|޲&۴oKO/cSxܞϿ{07?XV(oz'ؼa=樝#IA)!FCmXn~>YfgxOd0͝OO,yp}J]:/vhP|>h߽<{RLJPf'*L2ݲis9+vO:?)"$ڟ?@$Ɛ}6V/t5kP28U@-`(R6NeVwډ]>=xfH\yͰ .(auɐPtx82N/u FjmVhҲ9\ulӼ=ښ4l>v;Ƌ^j$S,W^?̳iX]Tq:O+ܬ- tdO!|._=^{nYeuԮ_jeM]DjE-[@]:4/f-׵_o{W\ݫw/bE#F+\Z;@Z+7WG_)p5v$ɖKW5|ئC׾=x]Iخp5z`XY;o٭w}qvNސiu|'+H{]q>ɀ~F=tQ UՁ_U9 Cj .閁XDla~[бqÇךgDŽc3Wk,c*% 3(uTs=lᬷdmie6[]C3谥#ty[$fZC泰 nL%c"jG_Zu>Ƞg֫& @mV+v- aZC7LFZWP Ł !?geAYԺ:uAWƊQGפM*եVS7rM< =p̛7m۶nps1dd1fp;bR`2 mGaJ֍-O3G2 <(q̛5}N2Hna9K [VkuΩ|7C-~@5lI1:E"msRa5֝DߪƸZw;vKqny̼(f .h1Y_ pؒ?zɷ.D\٢j m"X߆}@dp8-^9sTYx+rXesDŠo:OTNHp^Ԕ~MPGh[-8 N㾁R09[^i߭K==Q.+tLT\cƈAkaMg4 49]naW&Jfһ, 3tv A~3v։ b8#Mʄ8>|ee/'}xX|&N[TlzE!T=SKd6:"f0'N&Nݧ)P|,W.w,vdh]dX,- f`.֮ 7.+#B^.h:h38aj޽Iu 7mW ொZ}9ՀKM.( FJEp$de ltO7XwKʼn-ז[Jú|s3! E.B4(G cI|Bct*h{'L)+eH`G{(fKZcC)oƧ5V} %X k=ƚk6}s9S L$Lqb>sQ̐^ 9J$nT6 >Na78ĵVu x{@[g<\FVZ(cK=[m~bc~b! `dHIa!iYNL 20rlKRfA䞅!< R~iWLcCjJ6L6!gk άƆIaU uf 3 Vr3Ό&̷V$ca5uK,k.MY]=d#NDƥ6~3g:X2Zx;JRFں7}yLkbdRpQJ`E?AoM9LiV}a;&:8(<) e$ҵ%^hejvg].iJ-[|LYz{LɄ)5A2bHLcF+$[4_EJ($uc}+-Q׫)ܕU|-$ Z$JaB0Y{ wUuu[z!@ ԐФWI"("IUH* HR m;l6(q$lf/w߹瞛yWhr#~'}>Z'ℬN VɲY麶I㧲Q4%rF!56?GxÓI!C;?DsIxKϗ/M/+|q^@X`oUGC0ℓv՞P&coCw߅pDcd$ q0"_wjThICď^DƇu/+j[c˒x/ *C?­),7(ŒH&5b`PRW}l=:P ml88UkmCd`~Xg Ü<K2D![@o5a"Ô' CY門O=r +SAs \^QSOC,L,җ?ŀ`gJ×K!Ÿ́PGB/Eg|BO r8ÄL ԼK.XczH2%PG׺ˤ`:6/mYbկh E?$W/]RX1$CTPbh9 PeQ<XŘ&/V.Lؐ"2Lhp? XqUF)ū__- ̻$r_J+bD*[P4;;I%8i ܂HͻtQN3 J+jY=Wj51Zxҥjs9,)'W% 3XgG,(>(SXtb:ҁTxEuD/_T|t9B}}}4,+6a|b'4K.ΑEۘܐ*b:thaJ!0F-WG|TظxhHo`A9N&Y8. `+\NCǝX^5^'kmSv{$90$4]cIXJ=qUuMA_ԧoƾ#wH.hд=嫚†q3aC % 1kdg[j<%>!%jK\0(c9Ĝ@p| Uz+ЂGfCsݩUv]wٽ%En0n%Ͼ6)TRpf?-ދޤ'8Ȥ:Sgi@T|%w͞p|$ˆ&=i܈v)-TO/:\ ;{..?vɰK`#sP!NM ~g'| 8.w {NSj~TbsۧJ$@ s_?6b9J\(&AqyŮ?AljA儖H(\{i_%4B 8^oE}ڳ9ڒ(ׂ=K6A3햹QȔ%^;2=U@q2z$T ) ]gʑ}7vm{$ *rawT$=jz mȃP IMv6 H6 6/SO>DS3p8mUk_ &Gm-mhـBq%R{ԩa`3; ̝13O$FnrV [ZmF\0cT+1&$Suŋt"d I/4զ2nUz2u?m5 9%ͭiPd%/Z:t|irpq{s+;E)^!a<nt =-%y?w}Y !O.sNbq֣ifs)ܜA"|-Yvfmtf%@lԶM^xqkS3VĢW~oΘ6H[._wU-tUtY:b;ؒMn/2g?$UK" r<z+`^'E>f}b\jIg$LW:ݥ4KA)H6硧ySLOWGwz3ҫdO=wد(M=g'K;(do|{C M X,"Q6/TSjҧc7X_VkAk^x}xq|f(Ϋ5tPxJhؓI%9VgyY\M{Fۏ{Cꢡh1efʞ>ѥK}}l֙ {}س&~ >kvzĉF<v^Ǟ].7p8Vo㋆#g% >8|sd\ugqΙ1mBSL|6aOSO?tOIʁڮ- eO^G3Os s!p"pdt:"O7ǍRߤ?>.șʣ;hwl#g#(c{ѭc\Z ijm.}a ?V'v,p}WYR+kS~幖܅|yƯ8tR>Ŗkߞsn$VOl"a`^cښ,sOt쉧"0\d3\Xxfg>#fsaNW,m_ez|bgh\v<;nsDHE!_dIPdLR/M᷽꘹K|Ͽ6ŷO;n85^S& @zIw>k@!H['$γ~wngM8>igWdgs e.Lua'NڜNBTmxB]‘?p[/=u76.j9䘓^{u1u/.l|yi%-7qڌKuOkZR/-Wkc!r!/&p"/O!/2l|ӌn2M1̳(Gi'\$BѼ?@P%! r7bwQ(#QJ]zd:E -y*A[Y~+EM] 'X&Ds#G6-*}'MiE}'s$&e]rX 9  er5TDnud:w7^{.%+xb57}׉DjεG…i0"`(Z+z۷y7hwze\(xB2iW׊b1U&@q}ijCdS絺7ڸ]GB76fzZSt3U{%W׌YX?/#E;zƖ_~jb5 OX/uv\:d_Svݫ&!.Ȇ[n4B>|MyEi#|k̊+O _{•W9:'vq''o %;qMMsQ^  8vj"/z P7yt1TҒyw#۴м8Ӻ]zٝlto.jF|r׷'V|BjQ!Ŝ'zs},Vo5eJ:th@k&A1`$"IJ.~ケF6&+}?r" 98x|M Ԝoy`CA gMԒTFo\CܚlIpF7+6/ׅto=i/PȾ@Vկ--P MD&r!"60 b7p?_d-뮱6vm52z~2jx_T%$Ue+r't"0w,yjC͜T,̃>>>+_.,yo}ьP!$r4/]6hO^z/| 6^=~ܔ*z@gSf%˙gxc䉙lSp~nАN*&"3/ܽ)с 6kM.1pޚڑ&6-qSC>^Me{' UDs㆔bKȦnOl<~b7|^}bJM; !T1au2kjbd<6pҚ/:gϜHNycaM5c`,uh]I)mI>qFGy/\:D=_$T_|//},r8Y ]}l|Wz!dͰoNvq*gUeѮYkTJoe-O u;eߩmǵȿ_w xfO>B>6J0`8|g-͹'lGRhկmeYno^ѾA7clcI6`3 v)%m簣rG_`HOqڌ{K/R&'D?u=g[o\zY/6f>TeF۞jſ9,Q^5P(0S uCHZ<amږy!u[ Wuת4[ns1yO z{@:7}wxi(Rno_|V;=JBz\Ҳ4Q.M~b5ϚkJe^FvTo9g4lܘɢ]q,ʽX0~_+پaжQ#5eo(MeZ!uKS`-XVw+E9Nۻ%fd1W |?R>)ʞ-D}.bRH0ijx)=r[򅂰6,r(X,f 5]P`n5s %o@Lm$5Ъ,q sΣFQnasF& [䳯v3`{#fKy^{Rmg+eɩlfKLxds>%r5}d DU?~q=:u?/9<^86pWÄ?xg_T-^?xg0͘#zujjg5n7SG>=v\q5_g^|G{E&_1ME(^1w!kz|ëi ;_g&WQXjCFOU=|f/[qLڽgWf>zgm\$<ׇ^gݧxS?pۍ|F.܃d?|}v8>WV/!rl+mu`.Bp}k{'{-7wѣi2ګ:OS>VW(zvxyEjk_q% /3閥Q(]h&V> xsvHּEEXnnL/HJ/0N ,~,?\W_G4GON89jonsm=XϿ]vY^q+&H}j,oF[hNUyph }T Gu5PI&A*.H% kzhO쳝'gn}b9MΙTUC1~6q/2ҽjGs.%⹨U"WV77a9P34[OI6ޣְI<۴Kxs|W8*e ܞdJW2O\V.Z}U@XWT튂4V%ٗH͒?%6k{L}攚ٮ-rP`vAvew}KDR}O+j(O0~7,f3RdcP G%C?8zXUR*idg@?ƛ*yda%>R5YLH} &)7@ hB.)(FsHELcsk\p% y&Yn,̪U+7iyo'-͟h@]\jE8J,%'"],+tg/-gT%FmdUpxǫdL>W!@A[Ara@ꐱot¹R-S+ܚ.2υ4>^)&.-禀wnҙXKOR{,|ѣG<:|sFbWEZ KLK |̖ȹ88+mlO틢 /Wj߶glװvJPcEZ8/oMc5+QCBkTS᱕֪m_wa@QƍxfLyUZUN(4ЩF9}\ @|",6D!UrizP;@ü%dv¡(Ydeum?0`[іXGBOF8v€H.UOΰȰH"r"dCEErt&mV,a7dkoDqk䈏j+^I"I-`ByQg}6ue[RJd 9!L[+`[yPOjaUךܭ}}Ӂ;vo2TJYjNf Nf`7|hOm3#6% @oa~(bALtMv+Xse(=yaM*GUE>r?s4n ʜC"[GBȞME|6n^3Ar&F ޠ1{ (H-k2m ʫ8|zjj0RN@.ΏQ>RU>^u8U/-e`} |TS"5W/J Xt_jCC^]IzŕeC[B`5:p4sbJzUJ\ݬBitYUSA\!vf60TL=N5Jkۃ R.җlE ]rM[m*1ZO˞QTȖcE}K߁\j.;)}S,;j7w|k '#rg)niSpCl>WG`cq7hAT( :@Tk,l.x I:]D^if!,WLs$/YHζy6zhEBb/Cikv *~bQ2G?z ,l]1H өJS"X1hLQU;CYSx/eЄAڀ$!r(Z|wR0_ M'i-fQѴX@VuLcf3NTcKtebHcǍta?Сwȳ:;섇YgY.+ N؝*>(ğUdžo\328Bxr|e(l~ ,O߀(!I Թ<| Ti:s4*3YBuxr+k51rD2p{_L./mRtɸ@Ɂ" ĉmp47!K /R3 EV ^6ݜŢ9gAy ) !?dtvmeMѼ^gUTؖ3s /ۑ<]/6+^̺]Gnf?[3#hWd_uP)@²ݏ%yݿ{GKlOj^BJ挢Ÿ,7``&Jb/w'\n=ǂ5wN"h(ڽvpR VX/ūY *\ 5w.Q . ,׳W/P?DnUȧjT߼aTT>~%̂.`U: ʶ'tܹzaf;j2as% Uua=KB@t IVZ6OElNK _DHdb s:J@(j, M-Xȯ$ey=zYFIiZݧ)ʒZ&l2DOgT,٪UnXڵkW戜NXLcB@gk+r|sz2pV;Jc8x\|%kQz[li[l*_&=$Dyݫ Ci4x9v2~u|z1o|4J, 6pJL1(57+ֆL- T2x & gn.+NZb\)O"䧪e|Q99wtF ƫ *7TKr֏`+9ƃd\bnknXL; V">_X +qB98(5?O.9yJaPo6M3BGżqyʝ49d99[9HxM-a,4m S.Mr]7?_^U,5ݧʑud;)-g--!XE6pg{xeMBYԸƜu673嬲 U&WTa C%m٥ BX^-[^J:Z(@Ij! 2D~SI7T̏* ih ٬PR"m5rc(xyJXJ=küHXx9b1339ؘR灴DOc3Y퀼%/DVJPb`F\mh H ]'\/2j)T󆒉D6+g'"Pɷͦ$M^3hއP{vp·jqv\!q[{f=.DV !ծ5[owልfūS9-$ޗY>r3Vn늦Sɒ 6ePA2oUZ$OA:# &ם@ [rEh0|K W'g.}Z83˃f9 Og}u6?[quT\*fm6j?ɿ-WʼnEoe8 a<àh!H!+q59MZZ:EHp~uH hZ@-t6ԠF#Kt%-қ~R c+Cmś Q Fid Z֦:bj3|H_F̵3SO㊫cra,' N>ֳjNap%lMW.e,MVy p ȿJx@EٷeV@7K .ͤIWm,7YU'+)@9 T87H d!X86Z # @& *̀JT[g9Ět7a̚ngJ>/;E09aQH =B=\b=P; H="`0Fsʵ*b̢4F1SI%(sjlWF(tڌX1W?ǞejRI ;ف0`h5yJ$7d8Uk{.B)4*;H ue:؞m_mkʢ{ )[?#?SЊL9tv̔;k!}bn^XI:،UE%=r$7z#Tdl_be/#C B)K)f ИiXZ<[#wkR{R,֛0#[P/JƝp3QI;nAv~{ub?-F.lN_Ku^DL3u{ZUa\>2kSKlH2'`3SU-ѕ"F3vC6 3Mrz6R]8;~w>ldE67x#6XT5_d[0Ca{3w)#zƴ|jIy)Zl@%(VݓY?3S&̳fl/-I@[PrG̚1ғN:4D,N5X1222pY܈Qe.7.Q~Y,Ʀr*xTkֵ`+"je/u衇$3"%@ 6:t' Wu& f/:C̜>K<ŠVr: Ou6!G͚3OiN0ha-L|n0T #46a.{1p-= K<`'[c>9SyS QHa 9'LOFXl{cKI84?!sFRع28S7YW6G.;?^Y>RZ3S5-/DH`.uQBv l, j203K4%S]2A%@A|UTJ%ᄵCk[$8~RN/K1 1S2߲mgaޭJW*dY vaiT<!G*n%ES9aQ݂ǜ$.lњtY'8vKʆfM]w]5|eRўG%T\x.1o#B]#IH 0: 0 1@c两祻_w˷~=VƄj1Upg&= `.k|+/q qXG+4/-R$lyTðiCYDQ-̛3o>$² Dv}D"ma|\,sUlS^Ɗ9*<Q9 ;^ Ck0?97o;5gNBt(qw%لd֌;w&e՘n7c~O&A+laڦ6m;}CJg,=o^A|խƌݰ9C,1 HQJ\5$65-]OO)\C ݟyer #fo= 啐Z+x,b:$7#K +rK?uCq[eZ+D6sGx܃89IւgkDZox'\ 4O5@(^9M(?q#=1bD>0O(7#ZF+ba ӑ# PMGFp풲,Bl7IqME F$hO(.L% qoE4mysfr#y}b"h5TVy9ZrS lˇ~6)LieaT_zI a5>Gr_wfepʞpZ[8Gǟpa;n8\_ v;s)'˙uuj6I|uO>R%-lzu׉w%'~Ԥ(ſ)ݿ7-ѽ[6^wYd.ճK04P(ڛu7wt-'iWeq[۽Ĩ;;BXԦ#\^t>8 bK %=*k8S8Ѭ6Xg&Obm[C;oط_~mDc96PUb{mu_,g;e0BJ$عZM_vU1< x@RQ1A#34jZ- xom֝|zxh08ةVR,Gֻ-Tc],p^feq6ښ +/Z^&hoG\X 0.=m~gyI`KeKdK- 椘4'*.VKʹQ&y}HyP =iC=I,X0~X"5>JybK0r=xӟq~mvra , 2Pl&AXu,a|&=RN /rxM6eNkȭ*˓.Bt/rSg}4A^}5WDXZfU=!j(MyC Е[Jiw?PS & Et )HT4 NF!HfRiv8DF)@H8 Jc\XIvӐ챮ݺu7FAb)mf]sDQ<6۫(|u 5S{Ay`yBL)5klbiMPWInK2{xE'w)3gO,XJ.SdĻ[nY~]{pꏷFnqi?+9/2d="f̜r]w |*=j̨ s=x{wiޱ}zЍ6Me>Y ڜ/?3r+6 3q--.6l fʳ;xZMw'ͩ8\z]}|7굡_XR+սw݌iaTᛖ(i|e7p5ȜC\ LTܙwΒ&A-$rj8OK.;`<r̯@&RT/}nS>HZm:Im~++lwG3>>{5hx893g=prgCRr/?tu:TnsxQbb7#|XлpC~?3}քC9W[[?RsXr±G%3%_ȑO>XBږ.=5v'w}PaWHKXaweU-:UdgQ/`Ҟٍ~s|AzdZsdZڸkףGiU#ρ~iYM3z\kަ.3xnR vi?!߄#h v豿"LG*_/: F~r*ח?Ï~#b\Mr~IU?'ẕg&mүOCϚk;wbwJmE Ǟt&^:sӅC}%Z{N۠#†%Ysc 8e."`>÷:5x֝2yzlXZ?ҙ5 y1gμ;rbԏ[:;}7k(}J%Fs=uuu\4;c24*(Ԓ\Z}eᎺLmќL'7~„]ႳʾX4 `$2fsj7-̞۲&[DbuǃX(ܵk,k8*BEK{#&KmAOQ!1XTZ*"颶_{lxstN,~ '?Fe̽ݾLJ]U8ሕ]zɧQ|/K~O5v=ԋhbRs7` _Á<*Y}I/f_}lig}:q.Io~;%K^>XJ-ji}<8b*|`wj[x />{̝9_ڻǍ{Ud3yg'OJjdOwaw|q:{G'iIdbu)Uƾ "fFˮ'[?Ay~8+K2o8 ; $("䩉]uՇrPS2u="&YTngΘN+iC|](Fj\QL,^ ̟0^}xMh zE]^4sCxK-N&o3~s9g|)qc3?uW4oB%yK,zo"NB\rOnj6f'(8fJ9ꫯ>{3w}[:k/N6h.l/mmV7|-л~O҅c>rMg1ٚ^tM3f~޵[/ȝ f]'?9"^\z0*R)3tk¸Q4Qgu͙Mdў?{uėf-FѨvo/gLzkM9C>oGEDZֲ &?kAW/NOZɔڱ6whS,#=ܴO<G< A1ªˉU> 1xW)mh側bzD,_s5kB7|/並DKsG}5(Dko.W^q vO88`>dt$zwិtygf5BZ~i(Z%@ǜp`ƾXa^,l믿?8p]n<"77t3_&r~<}a> \~VAi7\]>Q1a$\z_DH.%{U5bFŻ⦅B,k2{~-Ls`R(t'{XnJ)em:뮍[[[Zp ݡ׀t}ς%&کcݺ?3* gUY 츸e!ԊD9w+ޚᣎ:zkGou_3\\ZX:kO?JK/vgSBwCAǀ|CNYK~h)!7G9@O›o:loiOf[:hƹ%KjU tj6PfM$ [=a2(zmnBc]vᄆ#]ϼG~+ߝwl:]n}^;|fcJK 06[bk~>3vu7_H_HgG$g&#_; noC=>қ;n+)yuB,!DLN dן=*?c~IM~=;EMjvD7"i?% {!u=_b>xT,ku\!όlLM7*[_;]5Ic?f]5/m*%~1S?cbQS?tffo: &_yM{wA3dG"GiFvI[mbݍ#YϒSWh31m J7U^M(K/pYzw>??:;8Á nW*FG?yZ&Aa"eG)RAS.ڻf >q}<[υ* QD0M[=q'-:©_${_u>霒 R׳GD>49+qjcdi00{X0IXx]P6b\aC/` v ʹZ}Et۷{'R(fA,.yG tg56"Q `[IkOߩS'RE XH-1mG?qƒt?9jI(\'exI@4US:wT2޷&\TXiBHfî˷.E7[ T;a:3SI4!BlV,ڬR7?-j!1 EH  NM8"R_WÔG`UlY&!YϝNQy!@$CCmzD !a96ߢ\J=OZ!_x؁/\0qKC@ ,Ҳ$ M ]j;5LgM4 E@M[8dȑ|dq4ov[cs>c}Z{mi&}$ Uh֌7\i/PDkJ>싃םzO> IsSR$:VUʡJFrρ{H-0a⤏Fs-ner T#?owPxvv`Ss#Ɏ=<@\=2avbٳOSglΔ~5zcH".rx [tY`vH`)Ɍ9e<:@mkĤ}{ӵבCk}<}}فMA>ܓb,U7W=D۷~2G2y*g3 id%Yq\ϟ-U0iE܂=GO7ăvcmzӦOQ( >gkq.viBdan ȤzJΊ>*=SִgiA| N$1h-M7] بŢ/B=j;G 22`GUYϾxu֙1k{XȦZOtᇼ VDΓ SdX{yӧŻ_zjMv )% #y//8W?FK~4be0~jh=G0k: ޖ.pKSBI|;)f|{=wۿWNɷvo[3-l" l+Z9HH6RgqO^2]bQ筺RαysgN6%8⣥4.~Oҙ"QBmMo4hPܷyޫ>_FXM=J11Tz.?}î=0~NÚryrF}G,<-|7uP]Q* 84gz.^4.daGAg&ǹqZ%?|T*T\!?l10fX2~ҥM-xRIGldAfCJvjJam隯> T2ܓ:4fu4YMt&}9,'ɚ}L1duGx]Jmr-6ܹfůVKKj֘ޤmZ0U^`wN=dREɛo V[nеSE[xǼ{h=NkM% ,uu0H)cCZo2xȐkWd5ro^/ۮgc}K1+rd!^kP[͟?%J-]3Rv:w5{ x~>v{л~(_O384K*kjL={o^z.X+olz6}P](ya{&'M)r=ޛn;k{9\o"ԓO=cGf٥KZ}{߹7Hzðp=)۶)/sM7=fإ!^VMik[N0?~2˂ҒEsc cӹ_|;/|5#o!lpwoJ(g !X :̋]`8cFOLAS |*iao{.Ng11g@R3l{k9HP, eJqƌ55x3dեrr,3ҽ*ue{#jEu I^xxt{RrJ`R9U./){_S?38X.S<^AR9Y($P(gZ>؍5_C "H3iDZВ.>={1kр.a%-\,UrOcN6 z '_.g}>yݞ=?8UOh?`Ը.ӭ@܌mwnIo͙y6q:q'S }pg,bz1M6$2Erv칓wDrl_O7Lwj1HnҨ̼Es&s4#G?.;oh۸%$ϔ٧beϽ9q'([ lsR!R:}n-r~4h˭:䔏GϜ?urS&yb t-;kMPw=解Q)g8o^|ԑǏrfsk=;-mO{qӸUfo?]*Sb5 >y9ߒl6w؉#F)w97ݭ(NL|G.x7vuWf܋2?x\)_z0Nf;9gFGoWÎ>Gbќ{rK4˞?;nq2shauf<Irkuc_KZ~t f~pQۏqW*Ϙ9ÎHP[e% ij:T`I>[@a+~%R*Cĺ[,cj~3'woPd {Gi=|O?{(N}]&ܾe'<(V kP1,ϟF}; {~ۇuӓ 6!S,Ol"kU:1'c xjP^O< PA8s5׹OR^L_%zŒ# OFaL=zQO>:ZoOԀ>-bb}} uյqwET \~ͺNWMd 1KӥkwOc~zM%+m`T3fTg"i1_ui:GK;<\(mY)K.dСo<3hUL)!D^,3b\,#*p>>s_D=qSÆ/"BAJe Fr<>jH{ْ؏Q}Qd[ S+" fZHRrтeϢ9sN/~a*ҸpLo_oz(r{Gv̞&S0 !@u2P< ̖+M?QK<{7OV1Ub*KjK!brP;Aʷ:ac#IOVb~xy5ǹbJ+$i"m,$VZaOFs2 azAQ&l* ޜ^7IlDddH$-A# 6PDkaja+Z9V+PbtD<#(<|\\-byH̗#th. mAjCi㪪0йl@t"{M')ᙷ/dr R\e\f|@O(J@h+j8r [ 8:zQ(TŜbN3Zԅjm& 8r.e"eNlBaTF$ H?HY'*TNTWcTeW/3fAs٬IW[WDd>ְOX>5Q\T6O+K`UoW5/Y'@K6ͪ{Vӛ46\:=VU Gm2WM<*.0zWk#)I)7ԥkbn☫_fS9I!)h6GtPuElRaYrQKg/rڂ|!&-φQMR;N23!z)Vq_¦fگG=c:nMnZmsX= 槗K{Ϥ qMǛt>`J K%7707:FD3Ʈq!1+W0+5 Jg@ c(G!PF!+G)4QRVhI8/ԑuf$YYN akSh.OQ@ucBZ.м{VDX5bFN<D[I=U QUW9s8],? ) # ,U)UR)&fg lJA&'!PT T\)*H @hMdȩIGIzEtaB H=''Q?xlk>; ez,MF{H6o82Osx-*'_.—fAkΰz'U+iޫģ*UM`:OTb9-T@?X>Vu7n+N(TqμK"1(쉄 zJD? 0{_L;QmV-܉[O:8~d?4eDU+ pR Ъ$#32 8Ā+QfOzJ\,Ee\&ޯt>[OEU mܸWmni҆׬ DTع>Ui:&QSUMkPqQծG6l06n"To/`e iSLJ< aDUq98Ј<9!^-T zHC"8bEb<+j8i4a2`dq6 ed[[5VZӬڸ#6SM&=oX^<NX0YIxJ 1•Zr"yA63[4!-E '59xz_XPIXso&mUi' 4밈&by$ *x jgTof$!^ Wkm}NGDjH'{ ɹP?u$[RI.ƃ{ O!Kϣjz#wm9^v Z)HVhLVA`\0_XF+[nYQq!=紘 [mp \Tir<n^xGAqp)3T0 h xJcC[\- 3ނTy^!d&1@ģB*TW3l\p*qYay!oqmɕ b"=v& $]R]T )b*d[Ƈ|€r^ .`SmژRo;Lg( SN oRN_&%T\D!^ M؆_2Թ\~}y걚XTr47`wh9wt;Z_Kb4?yR&wʥ&2 Vʔ2# m9V}+ DR1JipC;UX hq+ Eh +MX tVIedW;+"'L vZ=jv<V?Xb,$敏Eڗh,KT ܗ{Auܨ86k{vg V$ʪid洆)6q\QLx}PUxABYU?3 <8 W]. Uhyt]5.SEc_rc*m[_\3P]v* 6y~`%FU=RJXd+.c?Nԃ\5tTu\U|" r5B>}Z! ؾZuyiE-+Хݵ c0@G*m2JX!Rp*^UO =;&nA"yjN!섁NKD>e"-GaYA:GS3K\O.Q!@*#W-\(U ѷ#wnr!(IoK*#P*RQœ4Zݪ:]Նj'5կl7*&:QE˱c,!M?Ͽ%S,b6!#P)$`8ddu+2 Lew?7.*zHrrA*-F(Խ _6ŢI+,N#\32q4Hkȫ:X])ّ>FI&]DN Ll7 SVwyH`8&K9qm oۤg6 UY\Tێg7a>(u,iѹT B6O,l0"3k:f@+JTzAJ`~~jXBi_YXjK@"@>RYeU0Rn)X.!Cta8^rr` 1hr, 2UQaI+&0VN q<,2`>ik+5%ZzwoRlڜUZ"a[<[d,cN)Jppox@ZXZp f»r^?'OXo qXtPD[\DEwҽt.=Z@p##b=!4~ovoc6a?v9 8s \p^߶GmĥeCë4 XNSr^mPL#F&هPeegRbeX.FXM|73j}(GиxWp -OxT ԼfhOVJ\Dg©p >ºV<)W-Y4 :tAs~)eDLj j(B,&٬#+*" a'!]$/p#G5?aq?G!Hr6WC:]oKp7Jl-&MgmV1A/џtpu:ܩ2"L= \Wi[;~B%5---a RJHUǮ)HԎcy/ig%9K&_ V,<\eېڭ@}TpԺk&Q|1KÊ-KՓ R$oCxM,YXg$8'f4+ c"yz(ikD9|L=;50/F%ZQ Q:ӝʹ,u5NYTUu)]v?*ͨ`b+TfY9s{nj":qe Dq)X nMZeUJe_Nm&Wǵ&1Mawڥ15%[ѰH^6-IHiBZ2xTՂmA,@nl^¶%S5dsp/lӧ/~ :̻D*oXxqCM}[J TE28^r݄bsٕݻwO$GDsKKt'$&cwg+_zCvbzQڋ:qv,,\ga"E(do%2)!@U J6axx3 3.󃬀,ڰQN\+߇P+KOF86^I94T/{Ҋ!Bӡvלm/h"Bh!SrIBi'ltZܷpsX/,0trh'8A4q =ȕJ 71z6簪Q.q5J^'$E`J DV*8g:Lݚ'W0z2++obdo zA-83&tSUӇLd[SٞPtN,̌C9! M@v`PeyѺ59B\@}*ΞZx t+i۰s)$`(ڏ [s7+SH,qIla}ۗ[M];A}[Xav@EUN$CkXb(rDVӭm|*ݻ)~ 7 䲬T&Fv r@=X7pQE J)V~bJUu8U& e{ a!o!K>T7P*p ٘qn;R;[r#@"ٔx_oE[[bz:nǛ ć&WD$ |f1*K-7ZBgJg aMP-<4'<,ԃP0BE(Xܘ~_yUw_?M?Mt7vC^!é]w"Ni%n1agF>[-+oO)K KKTbE08e4M&DRȇP*%mNLCt*WTˇ \K^4-ް|*WDB"ƈ;~\3sT˳=1-\JjgYe"{ܠcΒkԕY0{>7,K8gs 8$cJ9.ےBƇ|J!-qnpTGW%SC= u w>ڱ_UIS(W,,d ^ O0>8ga憀˿0s|7h Y*jveXKݜԄWWBr(aףrʬ[_r h>bO,mC4(HsZO:!/1b17% /B!c 4)4XfPhsQq&vΏz*/'ӗ|B1fv{-:LV׵9TysXc &Pz)w[lWwš"9k5ŨJDԚМX &CEh%ຐ NtԜeU4Xm 9l2EӐS2!`C{ \~gܝnscSwr:Nؑ\Jwݠ^x%\j)S$yy~;w1/DBj1SboZsjtN_j$e0u)O tTKcECXq=X!RJPIvlo&K\S)D ;ʖ{eyoUtWi3J4".1޳<ϸ&!`&^ M\eocAԎnCDG* !xت @: s h}U8gV^(B냞hū<]0t ʑw.pnIZ5xX)\ÃEV^ZvNa<B Z (FUv=Umxd4 ; ~brl'Ui1>&`yB:ԝ0cgՃ(hsvK{39]hs hwm2Ə RkLvGlO"m=b)g ;cڴuP+D!C#޻kQ^ي棌ӋH6P%Qu۝IY3h.CϭDZoY6aLBM)ͯXQMm1 jƌi_{]RhLVϫ6Fyw͊p)I"/deeR)B"JJP ,=Ԉe%ʟ1{9'}E1djWfQ T2SQeŪoq顓&MׯP.K16nGV!vhq}.m;P@8hUk)NTxD [0(xsimJPmCPaL}g#׈ŵΝ''<>D sDg,G%% "Um׷tu:ע S.qʆk?Bpl&:н׈ŘD[,BUSOfMV;O;De 9hzSN5:TEA 7\FwqIEw׳xQCˤfb}6'4oM|b LVŒ9 4P ݶɶJlKvgN.=?>ZIJQ` ;A!`la%kQ>O€[ H,U9tQؙyOx0Qm_2 еu.̛.g[$7J 3 `3w;%շfMl#p XUA2Aw{v;2T'j)]`sowcl ]۞L?v!߲]un񶎁%/L9"5v"GN᭝X0hFkܸf̲mqBf$#MGv5X{+&R A6%Mz%&Ԣjβh81lV[gDڊڸ]Z9>W8HiO%i!+GӒ7MH+Sxů~jӄ6TeY6D W1VXT u(,Ŗ4D h^yu,%J7Tx2%ٹH%4T+ATLYS::5@):z^/'42vWrx8K/ f2`Kp] |6+w>ˆo"RyrYJqR'FGy}/kΤ]z.Xn"ca*LxXI?2MQ.QA7M/N.F/4(q^=נɗ"|+<ʲ67 )W&y fVVVy)v:;uzveORI.mD(?б[ey9N11Jg-y.\1gE XQ`_S<9ݷ hʉ3bSBw,m\{t cnSq)Z30~۸)a?UMƳSQцN+܃ &#>z h&JŮ "縟j*{ [LlĒia~Q1,p8f{(D"=#}`|l\ʹԶht k;X^}j;IP[[=3q.ɜ'p@?Ц=vv쁱'#ϸPY݁ߪ .#,ѤwCr+fHgIB}X-UU-Vl2!\-r-ޭ|GH8׀xC"icZWTtgCԗoV?<okT&D2 Ss7?0TLOxv|E&յ GjNm?ӃllI9NA9v&1 N61ڳ{w~39ΖQ$zb)+v|6n1X0*|E<-ӢE T!h ^$*Y) 6@5:rnR8!@vB<TZnymoM@^|ǍG%Hpd;1B= ~թ]R- v8V#i)މ# ^{￳?zgfxno1iPy1dS,3̤??ȳ Ej`sQXҔDyvYz\ yI)8< 6ߤ_|C iQ2C7`_g t@cKSz"X؃Qٓ&Mp^9W_|BANFp:֕G{27ۯI@IˢÛm6E|Į?ךLnlsSs:zOr ߊQuV?>5#\JwVxK+e] \ewwRr KQxkĉÇ_€H$}Ky')S]Wֽ]\p1߶ȃWec?S%g(I%.Y8a„~sn'9أ,=n{ޢ&.Ȝ ǃd mxD)jͽ_l:h/>fr;lͫMk;} gۡj[_)WͼZƼfS>Gh=&S22b(S5Jy~hlHAƔ O<@,cU[~ɇ" QM/-(E钡 .v >;+4yƥ/[cjpg}Γ.}_tz'Q+U T^n֬/:'M )CtONX L -50W~pHBYmz™Ǐ|sp_x=6 cEឝ|޹]lHB)_ Xw7zu˳==цbOP\r5zb7ݘb)C~ڏ/"9c Oj=s,pLeMZ\`>m\wSbSıo#WB+~ S>_k@d=wkf-X~߁z=+,Ͻc~rqOs/蟞:+?(4.?=h#GyK:ఈ/79;$)'6Q;O4ΕШo$}#w9Nr/wڷ,|pmN &,3o>`Hu4z N9j_xWW,>'{-]4/H$7uB'fXpa$Z=?9l{ Zs?]yގ7d>=Dk;Nneꚋ'1c~gG{{ .&?g< -hӗ6xeݺ뮻=ycoG ͈C0{?Y6Kٵ ;ԎvŜuC{ dcg۵*֣݇|ǫùM{3x-8֥-{D3|>挪ڕfp"+t',-E+~SٮW4im-ͩN/{sJg&3ӽW]TJUѽSkUv Jy(&V%|*1 '-z~z"$D y k\[xZdƧYrvZk[t0oj{\|B̓~[-P5nÔrt⑜4Cߥs}%YB9lL'+s 6zno99_ [HIM7Lrq(\\r%&ٖ)[9U&楴~{&p^f# .5Lmw\`Æ]s:Fޅx]wx |=1c?jLKQT֨_SStبqf`[~mwg͒%hR0=A --W^x1oOZ?uee 헧:+.dst$ FwӥSH՗~wz9/٥cϻb>/O9]|WNDuQ E;|$ۮb"/Jt"WtWdP=ϦƏ|eWZN|Et/p8OGo3Pp'eHz^{5{6[ @A5.=N8*!B41P%RPMh$3IQP@ x~@Z]ws>$S]x?)i^|-Zy/(gr\D^o&}-uYH7g>cPNƃv;ob6ש!3 ^1B,uoҝyyw~Iz3gނl)xWzxm!8ҋ/lX4$A~{ιXoN,x$_brenkCx_.wL/&p/|%hFJK3$tn;ba=z(X<'ů(3G@;3٭U ؚ n=6:=z޿F`𚫆A!4Z7\}#sJq@T̤tϣ'w:qyn}7xc=~|wyeJQ m3:d:n ?M{Civ ]կFuF,a eRVŪ rKGR,aHSE>Xz͟sIeæXc֖8J Ѻ/j p,v~nLz$;KϿܟS {`w# lk# vM̞5obОoaΟ\opbsČ8fS-ȸk"|.Ml&w(\l2bc6-ж%|W׌bPX lx /"]O;Ւt{\}|^Q&L|=8pKJU:7tnlAPR]IY6$VxWs|v$szı'5/#\qՅ6LTG:w~gE%KQ[Iʼn~O:z!yE'R7ƛ#? Dk%plkT 㽲[F`_]s*%1|=3 SO><)!cѦկnqD|RSc .Izߞu]}Ӏuy': [%ӭS{?o6R~ƌ 7z=QtJ=j:e,7c󥢺=b6\/8e|\ ': L8Çqh/fYz;ot'#].&~ȥKw=-MKK(*&N9~ԩ|ౙjM]<`SUabaPM$XSDV(Me[=%d- &H-EPHBiX/j;K7MSQ@Lya+ޮ)NgH\|HDbQ i1̯L9$/nss u4x1RXС4H[[Ep\uEa dБEmTe쐒 bH>(8|takGá #iQ0 h¨=j.ӒɴPLOpYkvm(i[ZL).zh$䒥#BX ~?;2F\ՒU>n!5_˟̃ϼƢxG~qwjɉ/ǎ2OMxt'◁z$,e2ɻf_>=׿Lc|GO4ԼSf3Yz@|h [Ib th~ Y_~+LjleLVCVԲ`VS[z9:Xλ䓎03~t)DnjYcMzr<_:'YÇ3 Q> q;ZooHlaMT A{ eƴFz<_Y-36/$,ϷGj"o1 )+ b8C)H%Dg_%Kksm.x^I'6ИCbrLqc󴔳n>(.͞9 c$7X#P5$pd"0OwEoiʨ)rS]] ^ҾO~gݷٽ|~Yip⯂x&QLm鸱l^l09%j !՝(O{:tޱW֤ƍ[tqKiln{m`{Nd㊡۪ϧ~ད< p6GdOwQYҩn[(Ŏt򔉉\n}ͩ]7R_ݵ]ul#Ϟ-h%WpECb5BDI$vy>f4U-zcsdwZ`27q^JJ*LoѠ'Jrj()ճOGoK%Mޗ}@X@&wb`~ jXRbѵYǼu' /{cBR2B*E\'r*歫kκc=:hYX+N3u̒’L( `wx♚B(c"|waH$:p wf[O>|E$koBmF~vq7z'X ԾK .u]vn9\wM;r-lR9tkl/x?l W|{!rՕ÷fjɱ嶛vdb>|SǍxIB A _vQxQ}KSY3~|wIeĽ(|RĻÝnJ֑ޝr;~vHk5ɪ_#0;ԅ ҋ/ttBA^D-TW'e vY0jj!A#?Qջ>c ǰn/ {kŦ'J[ ]znJ- l ~r҉& K_{=~ Tҫ?GVU>;oxoc9|ksl^/6lƃz}B!}:}Y@N:x䑛lcR G$*{|'#Fu#&.wڍY3bǧvZn(~qʩlmqC Nx͍qH__|TH7xMm:?kkT'{Wgyq9KYu+uYv-"Eo /G]\6|M׬]k.`Í7l隄H)x}}v܉eC驿`"J[[r؅7v~뮾)Rl@ WR{uQFFd2輚=~e+љNVVR۱wLh9ɥyx~?u=yM^_~6XJfi&D2CE ֚}vn?j[wG|(`VR]Ndgw+ͮ;tojwo ~U[4]Աt:Bˆ^r#eĥe9:# .BR_#?)m Ud˺>עt)7d]F|/tU9TJ|!IrP2{HirV!sL=M98_>ϭ|@-Ty\BZo$ۥ3‰ 1y4C+M>Ãѽr ڜ/by6^PO9&3igJ~jRѸ%;gE _ρ\yi_wA'OKJ[܂98`D8??~.Z4-(CǛHJRt(\/r =(h0rpi%s?]%9 ΢*ץr-ݣI[|+nD2-H.G}973i}h mv8s᎜*<+A7]4K2&|2R]-0zFfn+3MR2WjT`oU%rj;_}fPR9"Qf0rcؚduLj`V̩;r6-?OrjߒQ~j"e&^X61zG䖔 K%8P,F\Jw3V,Z9mI*ȿOz*G7!K˼cȣ|qk-k ~3dk;71-}bj!W7yXTPB@*ɂ΁*kih$&Y3nՌzO;i:*"s*U^HRM0"弯Df\Qma~-S&-2* K&+Y GX/h:䡨?p^EG !+5H9r\1`^G­"BB`IRғ2aXmj]˶ `sK ΉR_qT]gr "ͧ] ,mz`TK^rBnV㸲A'|0BvIL{ >!/S8Mkt] + < (y;vzF<l&SQAE  RF`) dn+P7YiwNm1.$oIJ%( jWKL7QG['-#EA, M֙nF 0\bzn^+gy0M[ͤ*x02c&U_W^Q ]V*P+9(&;ik"pKjf\56lhb<"KSN#]PCPfgcj/fe4WUSW|/hJ%[q{?=7~H: Mfb.%mV0?"i*K]MhƓ=+#CK*Y.5N^J Ú>e8D[xsԶa(&hA%JEpRHX[mN~-'nEzșw}'W3cn)pW"FέT>ҮUv@9L>݆"WVM?1_<$iZHfp\? e.@_b"q 寒$?v_qx(8XPHTIҫ49zҊ)uF%XUhښhiMBE'B(8TP╱ĸToVpW9Ͱ+e­Wǿ~e5oVT nIC蕖\C()mݱ#DiVNeG0jFm)`"k:hhV9uˏ2avvze1˄ˌng1vկonOFA3lr_jmmk+j$ǍxXbӪsp-Y}V!#_Bܪܪ$-67[o0XEQp#*d+3WՁYI{KzkJ٦nCs9Վ;.#wIHa@{TI˹%y5(`0wS4wnZ*ݻ85AaS$(r\DT3}`]6&ul :k5jUmhCP-b9h37ʶx50'TU2=adv-M*}>Z&Cokkci4X˾0SWTD :Ǔ'/C[ Aْ|n!Û*ۣkȾZ0Y xE &o_LvU{i]7eݪW; yBܪnmәaluvI96R^ƀ S5HTIwhF3shжTCg [g\6m[SL7.lW;fɫ+AWMKuYVSۢ9Ӯk|g?{bMbmf3zFӉGS$azem*e,o3Y]ZX7)2koUt)zgx%Y|i;b԰9,lX1l8ڲut=IQdM%k!kA4k\}ȗl Ƴ ee;u'_@EL jڕX6 \?/͗e%W:>^ؒ|ݻuTiðkOk/%.uZ$e72L>8]ɗdi I6X|0jN5Y`睺jy~4z@=m͠a(R D @𱡬ܡ/ɒ< pcQBh>86E}Q,k|7SnѽhoAvN;I^WBTX >=~pkf 1!9x0BBԮīM˂8" ́FwC0Y̪2NU"*}"9DG4LT5Dz#`@.zE;\Nmj<(٣YoC@StV%d[JHPfcxkYk7|kk|[ ֖DꢪkcGws9#e4*,LWOW!:Mt_J= C[DW ,&^EHT\۳M.;K+yn_XW yVcF&cEe؈xqQA/7BXEaXxe-*nL6cјivN[O'f?m' Ӕrz-זf̘UV775ӕ R1ϑcQt}aXR`O[x̭"CZX SB\e а}+5tDitdlʸ}*4_O,m裴 uuԨQ c&}81O4yh4NyV!o w3] OS`$PQUVc|bE8=xl.Z)MK60\]C%J4l6R(fA9-9}tIkX]M}҅jok &h/vя1*pHu"g(v<:3_x *K\S[q“2/8n yB}0ehpH*&bkCQ.'R\LPmE;9 Zcۈ6qn uKBmd4QF!5)#/ڱb6p!͸ 6B'l$h% jʸ1q<>w;a8[Pb EE43ZK/#5F8^(Tt__E|{^UtmbT$Sz'4.&0+`FJ鍶Վ NcXre 6]o_4 z>_Kns_uvǃROWUYwrb΋ *? m*e}*6%*H8.;̲ۤ9V]X2)__++7yGoH&lI-tb|-9.Ȃf  Vs<#QsέM)e{ j,1>qpfN$Vs9oh $ Śc~P#"p3禲* >c~,={v`@\ g8O̜%語=} zYibAbjPa5:̌iNb~L+]W/j2|UKތ=}̚REJ>`:f…̇2"?Ds1*?њ4Mx Ě7rڬ8e|.\W`cot]Oji*(E#W,:f/Z p$JZu i}hOY S#ee^Od]fm-y̲`m/of' Bl Q65@)+#_o59dEed!+\J|V2s0|G˃2W3s-ox`o1"Q2$hL4nQ$Ue@m>Z741M%l,Wt%2LT`wvZ.I2Lr)(f+<]s|YMڶ^.Ŏ68t 〃&^f-;.h0Y\}iض0lY{_Ptn z9fZi`N[d၇=lW0t#Υ,w'g3 vZ88p6Wm}$ W+y"7$+ofƒe|N,C6[d8JmE1~l>%cG6hֲؓg06IKE-]tI';3ZpkG;kN"b k!pq2dC!f!Lzz7'} 0 H3!mLo!*dP[ tІ` V$rl1Q l[Aw6LYckFcts̀?\Ȥ wwz<@w'HNMHUi^@Pw`Z'o}.lp-~5۲ASOnw!;zx;^zUvl–1v֟s  Ewclؐoˁ93x$V%crzY[\ }Ty~uE3uDު뮽~&Ӱ]n{ﱬnp>7i of~EJșl˚ki>zK!QY"xFSO5>o駬p6=bP_5c'MŨgq*|r|4e5LC)r.]zUX[n7K:8Ay#%>z>*_nl>j~ oO2\fQ;'[ z3L$ElYsAϗ/,_\W!N zoN NlOX<~oI@u)+D틥PEycB =9r wY~~2lT^4H*$= KtvU6ʮ"gw&%|FTLwNj >*v.ߢd(@%^S5Q⥟|' '%:\fr]jEd0x[yԈNcʬSG FBnK]5mA+/VC:IPxEhET|J0PD/}Ϧl"N,^0k=w2BR&(Yb.BYE*L*"lߖsu]__rpgX"{y$Ѹ/iW [,JB-*kٜoHƵɤoDwHeZSKgW0ȯo:qȎW 0LŖ#iE QoN;㒉Q_أcu}.= uV ɣf'ܞ 6O?qG-*fL]x}sQ4ݟ ;]+ǐU`sʔ&T(e##t{õw&S-F (_-͛/\K;cNbSyv>,' 8;W)XMU:r}>yeKe_鳧mr>h$_3zU #>ˀ˃i!S]N&;._t;ri={F_Awv!΂?tdrW2͵o?ڴls̒")eݻ_ r .OƛH׵761Ym˚ MoGz2!(P(O_yoӁᲯ-i!(<=w晽:+.xz>I@(ukn/MɒqŪDzӁ B^Jpͷ`.9joA6ᕃN^tH[>J/)'4Xz=N*?5c}@M[F _ln!ӯ󰈻.aLv^S4\s˭0|F3Bq `}{l1U2P%N>rbCsn:U|iJbmFQ~wn킋/1 ? Mm6V7̅6m;vWfl4JֿoW6$|%8W^Լjժ埍шz?4dހ;XلB9-6>zE*+ m)'R6{DŽlK#4UT:[h#hoc5bjN!N6&{꽍Jx΄YPڎ=fLɷJDrT ;s.i*'Svvǟq߶q-`mYtt|>tKwС fN[forZ=~_<]1ˮ>~t_.'}cbdKyxc; mg֜9_dm?p#Ǖv -NPñ`XHA0 S;Lɍ*@iUaHa`̂rU\z@Vy]7?]V!jIeARsD

Bm6e2X+S++F)Ea``-6gJNC8%^=O;'ܵW]wocqD 5\ԭO߬~5!%|J7F堐z.p>y~$ 4];a}Z>s>'^Chknywl.g;}ECdrO9a2i"sLnحO:S'IM1wxfܴ tAg:lCӲy=ϣN;X=Q'dSK{g[7evWX$[{>HP篙2w^2@}mFKzqJSm#RUBDL&D6^xNxⁿ閡4gbM_=fDv1glkΝ{Ý:!T$E|Mv6[-u)>1y|ߧ>!Wqs=Rpxø\^v1૮(ꪫkj:vvGr1KyJӧL]GKhOᤔJڬc]sϜ3z=5{h4N[ < ,6N N:#W]kx*KqѢ8)h <λIe⏪*k h -ѬX`֯R!K\n9ԇΦr~ /{T|L5Le^#*>Ў_pL&Od Nn~ˆוTRD+ьK&yx&I*L \< H>+>;\nlӛ\P4LrEgYi'|a&j] )̣"Լ%K;LUUU!1NLa>R4*ܡpcɻC55o#2\>;-7*g3_H' ܦ`v ؚ&hu$,'A۹ M A^f/^~͕N}Stɧ߰sD-Y[C z/69Xw޻i[fQG njanC^87@ɂ9Og뛜!'ӧG-McjKjY̧A_w%M8 &  L2Dd}L?i F_LOWzƯΪBKaBmU* 7fK53XS&*Ŭ {od=bOܻoMoT0[ xϣLB3y6ȣO֣y5VQ~2"]y45WǪƎlu) (@ĭ9'pbЫ* A4Eq9s;Ã<xI%(#ZS pxx,ƅ8qx\) ( i'VMp?vUWgL`bSa4&N۹vOÊMg=&<`J8yӼj?gQݷhĢ?ζ@F~𹗺oy]={`sywKpQB 1+]q zYt]v{@9@EX?ECxP8{TLWJ5"y靾 K.2rw>t{ kR$A(ŷ 'MoVUդRSP=lõ/:4u7]yGSL53%Mh'PCc~kTY铷?9²1S7_mN54z=nĊY٤DO0FIL<} CT0.f`0ܽ{3c껯[h'fbLg;wmMg% d b\^z$ڹKSg`Ѣ6НO>r֫ZL0sIvCdmf"(JFW8I{.D.+/3س()Ԭqz>?E,w?2:T=}MwowouOg1i%29SG~T 6lLOJ|޺ab:[D[ rAœ =.r`ߟ|ᤓ.2w¨W_zq^}X-Fӿ77L>C-6J8y$']̙^yEVKxK6}Ovd<ŤmϿձk|ƏdqK6]6Q{r<-cg)m# VPzInߘ˚=׫sp@EHR$טGV{5qb!_ƙE+BYMO'('Y#$ &`}?Y*5zo_^6|24wo{"_ԣevFOR?t`*"z gS j[֜*9K '#nOx^~ԭnݎ8ѣ,I'._2Kv̀:=쇠OLhI>]!=x%R_!U?{ʀ"޹]Ͽ < Oc8 |IRW 9S9.|ѧ9/~]m{ӄi=,tᩇE;ՒY{UO*LX|G'SO<GjuUuB+<}4\guƼ99bTb¥q5& q |98W+}Qm*4bȌv>J͘ޣ7 /ۤ4 |-ʜS(/]>s#NY)o$T PKpϼPXhɡ%HxgժS8ӖtqT~va` f͠~*L1 ;'QSO-2hBiɜ;ǰ^ ;GwA[Ō NB(lu(hz̴gA \P%g3&Hy8 P/;>Najr6{Գ k6S/=rWHd0 ryvhyڲd~=ߛ2~Ul> y<n0\-C5K?JvƍMmң;?_WPO#}Z2i\niŧ_4>l\,f}RIW{gwٲ_DfO7C%s&u։\US/ O>|UGz9Yaܶ(ްo>RjBz-z{ĮW?2x"̩hT;}2nB)߰j^=yiruNkZXkP~?hI6& XkHKOl_\=x^z嶪ײV[/誶/yiyԝ%_KY[ A.0[ڂa\R-vC5Z 15,?CaV5wɤ[Lqse+:7qH,".мkjxskc}oOG "&'(lUX1gIK5ze)5}~6⼙t#.OB_PACbmdb,+8j#jAkZWWḇD>N `jOJOƘ"%e7 (~^+orXRMKDSU7Gk;|fI5k2j8ٚӧO߿?I?M+?nb.v%!b-^  ^Z̿ME :cɴdmM//|d$D*(^2ѦWТM`]J*! J|Za*~b)f|$OvQW%>Jjxfl7.o 6Jn7]lՄ>KP @%ހ )s+1`Ty`3r}84]Nl- C [=[X[s}THO:hv d7 w{λVQ]&RH*yrrִY Z@#(Øf퉆'Cܚ컼2YW男`lyѦ-P^GTS(o:6֐bzLM,*k+)L83$ ̵.r^e0ɣWLYp~}]n$Rq?U%*JAϱs+,ƪHeiִL5ŷ[}ͮȦ̪MD-)[bNJ}0MkC1͊ɏDJ*[$hZvG6ki 7k K>V\-ntiYk;Ш-gUm5;N 6c^╃0 Z0%M/UA78}.n0r9'AVu#,JU9t]UTP2 y090ှA3_L[(O6KBeÔ1䞳O(FOYTsFd[iQGKL8V\#T;aR-#Y뫔%=,/^VE6дjޒm 6jU)d* s eg)4(2p9W:arXh+n~3^~zVX3ee] XLyYcƭ^8qCP ʔ)7\ w VL"-=,JMk'ff ]eX(*ࡨcJq9e'f%:dT),Bޛ8iaXS$Pm>qxp]<̈Ԩ# BH2,@|S"5UKNJ2:2!BAWCo _Xp(Vu<ʿ7$  H+㽵5"B//bo| Z E~P\d0zņ N8[uɿ'Q4WӇd0v<7eQ4+_IAj3>t)F-Q[rae|%6R Ӡo8*WfVϙO& BQb|bms+ߗ>g4YY+.̐Ѷ̌ttb@ix!ePXɚh1ja<~ƟJّUJ- M4D$ȊNuus0e<~ 8C*=F0R^e qTX`|[kÔ0Zϰ׮b9c?eUfp hw^Y̗h61 V!`[ř*7IkU1gy䫽$]pOݚC]O+K^hU{seusOafl1jo%-o)6o8Kk9k^VH3(@7ms&NoCX̨n?ڸ%6T748 6fv Gb%s˲w$L3MyhbhwŵVT漂fGnNi[ܤMVB_ƏΟekj 4YWgSLik9vb:߂@k O2jpN֓*!ٮoQVVhZ,64*S/܋Yydme%<֭huWXwXs3TwؚϵYD`7ȒRoƍ&-~)<<S#klk9ǎu+EѾE y."E P)bȷ)u͏ԒWjpc@5?m•K2-"@W'2e)oh˜0 SzRq Ә(>18Ils-ϥ_YEL@׬F]` &&}ɥ ( [ +|0kmL(Ridaڠ~E0Y-/Sq Z 6L*JYSupn˒V{\[" miBӹWl&+劎Z[MPp{=T盐.[8NS'Ю;#Zh z4(\5Aft2&$J|\E,hZ-+;v0WcMfMO.x;fIB1Lf"dqQ *m8`%}@zvժFCZcDL]FVƗJB\ FRƴO34@f6d Uǃ(ɴgS%|D_Fk2maJkjk;u;dyR4K3+ihBϘn\|c"0-WI1x$ Q*p%*Zip~ /y2]yv52wMcm9VV ˿joG-)1o;PeNζi=,9<^d~wՙ\dc Gs^g -K6Mv/Κ֫x2g 6@.oj1q5QqMQKcRvnwV&\VZ8mڴ7˜JNLCwniǺ(meʈhƞ Qe $6p6qM7uTvݳv>׎X)Kz Z1Faq(vH)|1~oeZGtݰٴ9c%ה  @J;3Qc,¢e'?̂P6 Sv"GŇLD⭹VhLv_\ɖYp3fׯ.]vBE 弗^z)01[<*]!63aMW:Ķ=xl4YFƖ ﳥōCf!m 0YaaQYB[r@EMfܕ9Hs:y,F\\x6_'Zdz7oaafBtw+Ua0C566k "/j+ֳc֧[ IYؖT jXǕ cڞ:!=M&)LQn-q+쏷^ؗ5Z}7-,Q͸=TaJRk⿦ClF0|isfK-w B 5R:@):IN2g>*#2NK(N +{[/=5܏%͔HK+]pIͼk]*5Vg9ğkZ+/yw2gIJ義u奓7mhJX|5\Q4יY|"0y(sZ]te nRؾ6dZu2Lɣ3T}F|5KU4{NŲNx(ZM@AE7V^&5 =aGJbhM"7;X@21$iU?VC#c )CxsԨP̹EkE'M^ZMs#hF|6կXpa|#mV56=ظύ7Z4ەNCӒف/#ɦ,MjQP+}º&j|ӥT@7s`!:D ANs6 ? -\[W$CF,kf<lFt)IZa E#$ AF7[h!O[8#ςm[,Oui fD5V÷0ڏ.vEsyLl&<7Gd[v&fyft S.=sx4_m#̎W}hHj rz 5d)fT8/w^ݒO^kmRSTh,XcFfV -B ;v EN摭4I'|fqP 7F'\΂F@wB"\ z @Y;Gb(CzC/bt/\6[AUM y^"e4̣<=HݟܩDy bm.d#;%̳E#2n~䬜;o۽^D9@ 8?p,4ḇfc \{+=o rGY%&*F{݀;>8Wêe={tG+++X9Ɏ&?Ҭ.4WQcڪX &e&q"FXdawNۏڝPޓgdq9mP ɤ-c:2={&*PQ4&2}ouLZa!q盦N4W?{83Ӳ3O:t3/J$&.sN;8YY'%%0&Ys;ZY]kcK6ϼ5u{4Ah[czaa^qkq*vdU+{MBy1!KY6s!5h7뫏R8s>Hx^6|5w)"y s=`xg#஄ּٲG'}ZՎ hY٠O?ON??>?hǟDAn_>ulw_eV#dm3kAgAsFyj2r,-3 ya͸ǻ ة[/yþdQUX$~< 7t{:.d4NpՒ.(Hqe~wQq<'SZi)[(&-Bf+VivqK +>_]d*}j9lnꊠKc,tO>ЪB"ӣ:"LPs{5(&rmRe?.Y.ʦ$kl-=^g{l@:DZHUPWcM Tb-Š#;goиb_W^Ŏ˟o@؇7D-_X{]\r#,0V9swA$[fkJnm_)/"yds=TSeO>Ւ(!ygjU‘&q - Q[C:^խ{g?Jdܘ;kKb^{︲o GYQ$zޞkl>}_וWR$2ƛÃ,gv.7i^_oΣlodej]uloFZ'ĉ0.wPH{z O;͇"?-vo|©zF;kz.] [/.:C>?,h=|W NP%H, mTW%G~ÎhZӧN<>H7i]A.hՑǽOoYpÎ:mOUsܑ/\,S 3<%K4t3<=Ƙ7Ѱtڑ^?;l-sAGq>O <+f-<#[ɴu=+/狯FO<+Ҍ+]G|>H$ ?vjȹM/?- n냏;RfKoXcAu^wKXC:X>gFݹÝv߫){cł0la̸xE, NZtOM>Y hj^XbPX,s\ _ n}zuL[T#˹W MP:܆kф pEhVlyx;UױgMm{n3g8WS^?_cA>h9sg}쩟nУkհ |2 }J2) TȧrN]M+d܀M7)56 Λ *Ѐ`"1Sbv;rgz뜃D +OV 5,>7*U|t-wɞ256z@ONEw*sz˲F]ոCFƂ6ƅl+ZH8dd.v}HDY9jD׻ʈ[D|nC`I/$,{qqAyBlhͶ~[fB}ܺwz9;x>B]5px )l^%8Xdݻ+#Ubt2|]m-j.8^|l{S,-JO9aWP99eKN" $%@`/! Uwy <wΛ_ڙgH(:aܘK/ oqYd3ǫj||vtb~C^אL<vGN4;bx͙@@O>Qr'͸[ 9Sׯ &Lqɥ;ꬳ~Ի*2+K<]ZՔLcr=]W,mhX%. uR" [xDf n+4j1yNEC?n/oE vu[0+^|(/fرc3EgߟwEKƗbݵ[ݜ9HRWMy1Hei52-VbL.jSN@쎿Qʧ9" 5M`h1à\^{r(*~i (B}cVm]*816һOI'/X({ŊUDn]zz>hxi~BK-Q(tUMU"b*ҦքC57_wgZ9A@I/v{~ޘvħwqrPLy%ŵ|~Ԭ"iSH)6eE5?W/X|Avieb.#g Z gM79C0!#"w=hXޑȟVA uTz}f *|1Hço;{泊_Θ<[|bVek :G窫rW_=8ڐ!𱆙;䒋/^, 2@yٖUq)يJ4q[K#8Τ:ȃC2\1@vyclɦzb2Sݱڍަ6}ӮԖ[ӥ&N;G._DFI}}M&^l836ۨgyyছ1ivj7(3KWzw]z}U'Vo}YO(m6^ÏCǠAWǙ"4Zs(Sl!a"l :6/_Plvä;AByj( '_FsTBlTYw T.ޔ$ }.D('D|lC-XSs/#uy:? {ڶ?o$ә\.sί,cV.ܳτj؟~K<3=z jnzI?"ڤYT,EՅ&Qփ\c_֠H:*RH3g|筷N16 •b~FPF$0]=xca vӴʙ/V$^_֧z`kowUkjjdݪ"SǍ㛆6%b@ ;J rxywk岹?MW qȅyst>J,gL^jL%kf+q쉙tÈX9sRWj~~ǿm+Px\] D)ZK.J^yUx]1hl Qk%g'tytޘSM fQR,9QE±>[^'1wq.XHKXCJaހYD\!wP"enNˢE{+Rԑ>OIe\?[EINQ!bbC@4)l6D L{NYJ8b1uylJ:id _1\!Vdu(fr&e_4] <1}׉|`t8ΐ]%VeJ pRUQ(B+6b@usN%X.AM @ EwCobx0@kkEu$ۦ{$Z]v:IyU·E7L۴_ ᔛz.~֨ıYvM- x06v->Y jd[fuTKAJͨ$S_nz_`y V~6]{B.̦? 60XmN-~>K.q4$)Z@2$/=vّNoz׽79L$8q*RSaf#*;A >f}FߒIp]-_ PyőHj e;> Ob`ʸO7ݪN;=kZzD:Ӯv[/íʔ//]xF}֯8=v>r ׵ߢO+]~pE 0|P 9Z1YXukذaxceL|޺:x?v-e%sL?^~sy/`d{?2 )B-”FSUuzٙ}xK*UE~uZdb:u `LC T;_EVt?eRm-Pf;,fMhPgnC 呂'x .k괖p֘9W\%3_mTVy=qը )ua'|R@Bmqg],tyRu7Iiou&SSᗒ Jij/o֑;;sg-M W4t19Ej ن͂w̕;oX(fsnl啗}ę#ݝk˕8K"SL- oBXȒM?^"rko_ӭӄq#_{u|K@ėbg]*-Yjw:昣:U;Hݪ,S6~DK;`Nb i g3_o_SD"QؖΛ&[[o)XCa/J&zY6IU/SY莶<7?“ǎ+i]A{ݛ=Gz9U|#GS,-+}}֣$%bifi?~vUû̏Mq{?< mgvEcU-b޷^E=믇Pn?F:tlm‘>zG0Ldg#U' tamb뮿iU]x>{R__{D¾{o [oKT,Ҫ}UUUU[ tqHAQ=doX1`fϿOjcb2w& {>aMm*2B;t }:u=~[t=V]%Zu1,蓏t@a˭vzOߔƦP0J\qb*q| ;毻D"N*a? HN̦3ˡ;"}g^  ǧtrf{%- AmmM [׀q!,,L'WA+ES6iV 1z #7\s nF]gν6#;=[<*mr'4Eմnph-O=Evm>z ];, `[nuk&j=C?*RmY˝v]q'0̺փ!ډjc+Z~w봩VeZ}~} r`Ȩ!Ч f!gE蟉`Nl;A.x!HO1K.T,yuAҷyWЯ}%lANgT_Noгp?^v]ݏc<:29 .mU2x 8 I>0LmdzPDy XxQCww`RyRԄUW͢Bb+-{d{y"Q  |N:qyYRgqWӕʀPǑx(qˡ{DJV HѕꪦGJz@O$}(c b*>&c$i hʊ TF-$":,&||eE<\sK% )׭k[QYS8^3mOO{_'kiڊ6]Ǐtj|R% )+8eJ|] C!JzR&WȆmNAsZ 7FIVH8ocV_kuLmݦ\.l)@͕BҦYs9_;V3*,;r˭RzB*Ok S)( RƅHQȻ}/yv9.b`f(!rn `0q qXIEbKjY(j{;s#[sa2M^9CZx hHK0(Kx?KA &]v.Z{Kd:2",|Z~{/djYgOem$WT\}5mFqv[j-.pfNoElX6$%{3 >ebn9}3;<6 .[GVb*ƏVk6Ƣ2Uɾ̂nڽ?GHM. FJzW`)c1q˼ K c2uq.TFQQCYzR",큲*Cۂ.,^N 1 9(W2 av:DHx44jALӀP̚AOmB.5sTl#(GyWt/]{n.6VFO{Sp0 i)ahab GV㩉I<.+GJ*ِv^"A'scG?R ^lq=B*¾M>mBk&%JՃX5b@&/Yv^a|_$41POj#o-Wڹ\ѨEVM dN0~h?EvL P1hO0h!8}6aE4B.&F^ (7Ud ,,b>Q1<]-`Ԣ)=-֭dglө/"|#_:RFޯRYVG\@%6̴]l8SdiB8B lSbl84\(.yS 8Ios D̔N^[":rryP5q}aFbN%UWlLctDQc`->]ݓG%UeK1Zf ?juvfX[5Fq21Ap0N)AG\#ojp xɈc`ŀ[F,Ea  POn1XWzH%atH*W!Rp،Rt+Aq,1Paoɗq̑TbZd L`2I;佀XBL٨K ;p ae9se@D#FȕcmIF!j0IgT0M`6ijcM;ϯj yY/U qjYRƭqѨBg`e?־nEԙT TVpHV&ks*fCB ŖbYR\jK fWB* BfRr7L.Am 3j+m }t ֿJSM;k-erl bKdw_נxt1E L!Or eX @lq `Ig=[s}Pm%+K/ƛ#&UႁD^H@еėpE}T9l$nrJʱX5+/b[H&sh]!?b{K}Ej2[\o@$r]{Y`.aGP9- ' <瑴rC3yi%-"N bC(fA8 )j WM` = ERb^8AQi['~ ޒDRqPxf8Y5xULq@2wpeyxB)d( b&S`ŒdT1aNx2Gs.[6`ŖK&[(OWѪ<ZR6^|d8B?) @g { q3%h< ag&>{5E+d!ُk op>q8}n*03 b2pͧ,:\ Fo6D>Rꛤ!R# L|YVJZ6e gKш,,YS&#M>d{)BpTuK| *חvr6g*W>49`6 i[Z548RhaONg' -"i DihjIhc(s+٠:Q8ʷR#2q92oñQ*&X=% ,HpKxE5caX9 X=8O:O: Dce0h\>+|#u ^|4!ſ B[g` `gܪE&Gqn0-5^M!0(چ~0 d)#wa H(9HVvCX >cΧ"{a( CMJDc#˯}WKx~nƬi TqIV[m#&stvf[?h~d[0x o喆{ZfY![';B`%FRHZXQ $ %)A,MMKT+9Sʆ*CO&YbX/_Bi6%3Do_dNΙ;k%[*) @ 8XTt]}j3 Қ-])N7rv@/RM6$bY| 1)="vZnxĨ b՟TNϼn2<>,ec*.\&o9Zw[ O1Ull[Q8}ˡgc\dq!!ژ'f p@ʈ N| xdɜ >obˌIClQOv @SNyEy8)(NIPͤiyY+  3u9j2eU/Sߒ/ 8|".{BޠîTUTV0WW+ɂKC2,B$-QkϓʉL>㾛D&fkk C%ރ0>e7r id(K\v- HORj4)'8*qnB;@0 ^g?.z/)I1ɴdRl CЙ \+&=s "Ep-k*[kmmmãv3/0H6$dmu_cW[\?V_Emjv#}Z&9IX'{a]`=6ph\CX&QYy;G/Cc5ֺ][噺j_в AٔM'\z DP$J8Cilۭ׶uUWeH(/&~WXl@ʫrd.ɽQ*XȄ;!C(X9 !hk!pc.Ẽ"*XL_k@y#Ѻ^T2>g1Ҿ:nghSGĉL߫ȰHM]S1pnf2n 9?#Ǖ!hd14~A" X"/ A=!ъD\'M m? JVUFq FwQ2xJREsAՏ&Ze!N XJ%#6C \2H4Zrb r2h2ьȚ?(fQPd?Nh*xB*1$,yu3vBKAo1 ՐZWnMof"%:y% ١ rp$bPsN0UњQ ?5$ PsFvQKe z7fC 3=D!|Q\f7 ┤EK8&/$]PTu A`epr.sv:-Fm0Mژgqb(,X3~|c >Iq9hI0Q区PF$5MB ô9om01R1hʸUعˤ:T(Ęo1`DUΞAl\E`#a| n'D=; L1QZ01n90RM f<| z@/%#-(K9RYC3&$}}p*P| Yp+нTFTB⺬_E?tAIL,Vz\𫀔 JhOQ(BK:K,Uk5єV൸Ÿ((TX|toe|Шxl-i`0 6pp井/3HՔe/|--d-3n(^rǞN [1Yuds!GH+'˚chd^rYpQFΙ 4QaYe(Ic&$(lqia z"ʲ32`%*|an"tfN<4.v\jF"}3uef"!ʍ.5bLŢ6 ;(׳g8ꨓ3xҁ}/JCSD(e'Jߘ=%uhEQ %s$hRM솽$sZ4gGsLYgJzʴKĘu#sS#BMkXhtSH>赚9 Cͬo7~EZμS*])IgY[UpA͍Ǽ163s&?-_floK6 28*_drjxa`h2'f\O% yՖeUu.4{daJJ+8T Gz_NTV`Rf2[8?.H$s!hL 4aX)k5JXX8di9I2)|b>֜u}XrAUßP9~IR JA3Ao1 l`gܦchZ=& 0Z]h᭷^-p=R*0uT9.z\oPa' .pݘ<ӏ?E]|ޚïgr l^ QP^: =M-nw{(|+¼j)ǽ%{W!TZvSp7ئ7ȃR] wYAMpVfuf/<_䈃O&˹C.GR_ゅk;P_fPd@[UOߍ;W="AkX??XM6ZbxC( M[[{{x;G+ g9.M|b _~Ty)aÆ`^䅘3V,NmH7W$p#moZ_ў?1Z;Om'FkHuy;zOKsSS9WlV>u1 #-(8|ނ_iյ\XfC 5S\M9>&"[1~N6 `/V%/*E!J3 i5=*br'*Ee)iBGar5ĺigQ\)twgc?g}J f倍c 6XPU-&Pt T<7k~~rWVÌNfQ@t=iPOծr~;eU;Ts xC<^@?i:~3w}1ׅBjH]S]uu&vISg!B(TsE $ xAdEX3(o6' omN:0S̡MTXy} wy6s@IC%P&]$ѧ*V]b/f5f,jٖ? w;~ >@8]dI"Q'[/nzH>&|4sάxD~95B7ѣ&XLd|/wOS'nV}ݷ"cq_ַ*aK־G}lHoZR3`eo}I,x0Ж~Ӧ^` -`QY2ALVPķa?tンHnp wqg?d3x: X恻d{;λ2f(1u[m-g۠_wk UzA _M-f>eJX>1H İ)x AK"vc%V5,3k}ϝ\664:FF8}\%n@?%\!7{cQ?~w"Yܾ|R|]PKڍ2YwK#ώz~4iIP$ /cPl)unhUQ{F5îo2sGߛܻˬi=bp$v;}v|w<}5J.?䀣qC][LO;ej~:q?7;w>zs-]=s, Ð7@KcصiJx6SqG%BwR`ޢt FWC4r(L5JmGh*~զn}T!Iw'FG&{ŠK͛v~8a?ttf $PJN;̟, õnk@9cO?|0G.9|`'oqfLǣF2b6l7ܠϜiӮ>lY{/weڰۏDFxL7izt%ƽ M X1v={E{o,^ Q 'RRXW+$!8.--R$|sK|Ckh\@dG#`ZyV.ZfmjDr5 p7~ 1SO:;'`1 ޥWl 7/Ғdw޵ pꗅA>swСn1>Q0|u} qPQ9˺oag9m7 mv}Tg⩦x.]{Sjvǝz݈ހ("YUw#i[<{-KB䅂 fg $ݪiM߷Ӏ m/l 4PPj#Kx(MyIR,[>}d ;#"<xoϋ ru[}*Mc*vqxqY/o6tʤaO-\a:hcٸ固p#TE5=j`\_{͡pu(1f_t4}L0v70Oإc$-+O٧:u E_y5[v η0&_ŰQ[F/M_X彴o*O( =\*Ȉ֐o۽͗h񘣕&Ϙsޤ SzՑ:N>lQI.9z0ܔ$! "?Pxde|ƂN3f@9(b V2~g'Ͱ>D~olT[= Nl)>Zw4hn+ůD\|s lPMMju_lN=N(/;-SItyB(b=4yPG'Ϙz!ҐL~"DŽ*.D6_WMR [y .W'{b}x&siPE.Wal|LIH@LUM+J" SPb >xhn )I n1jl_oӂ,+8iu^䏦YO:VE-94 9m|I,Le*5K\#A>HyV,Z(ib:GZAټRAPHޥ[ٳgM4%?J8ZM^d]!,3)e¤*ܽ]xfoui2v8 "dgkmxy~UYhSdr*A@<׳N;%ͅ :ȖxoV<ֲMhU"[ް 92\S1AK E∮kd[*!`DISGED) LD$ ])#a˻cP>\t r J\EڱqN{%U_'7mV>R-~Bu- 1SS)9#ۥ|:OM&TIk?LcK)&ͨy*XTЬʀp"[/|JIVdY5E?8n2Jm"u<ϟn7yU֌v 6[[hG V$4$?(547̚;O?~7Q n`܉BKmwܒjh&CՑ*i yu;cS(6zb\+hܹvsJo~Ys ~W(g\L-VJ5.oķUx0L@( Y[C %\!r[pU]/73:aoiB6:V䝏yU+;:$]Hպ|sð+O< )d%u/}j:,ਸ਼߂lKNR˛>K#Ms'jO.\Ǔךq e#QDӰ̵ݖ?9#!'3꺎Qrf}e7'(ؗ_z_tE]0J5d~6jc|G@-ɿw|͒1$߰R_fO>X-GmmF&ȍC<3N;oEјo"K>ܳ&) Y@[o*Y_ ,h Wڳ"`ǿDE<㖖| ꡣ"YzWZ Siw#CߺyJPxFĜ'v,C"6k˚j@u$AS56Yw]V6|wt$̛5yeKiQ*^Uj+96٘6Ƭfm1 O"1NLK҃gʯ?_+Wʢ ~X(&~xHcSMo,.Z8GzU 3%S'u҉_C-Rq#tpVyQ^A(Ybd8_}:jYK/˦Tչ݆,qmf|ٷ~sÔzt,Ů,t’ZhD?Ĥ 9$7?'zU:T\zN)A=X*fkuwϯj=g ގϾJ~1g6R$~"1cZRԋ.-8觇s+f-}/~:};E)+^k^<ҳ١o'O>s51jsO= iOcV]ثQi =s 2ܲfSߦ>TvJi#LCUKZ^x⮈&HGzE$?os|PkyGa12䳏}~oZ}i c`Ng%m힟R*4'MQvVk᝭gS?~lef_' r%1b+ZV]A > Pajpph+ΤD0UcK̟31{Y'U -p)G7b@ 퀊B^r߃ȱ rĖ1\[ua'S"`v̆B.Nf(1'B")Js޹>yUӧT $ɆFr{\2!GSr* 딺@+~/IlJe:GL+.j8u CQU/ TVrISԊrrQʣ`%qȔj^GzWQ8>);IЃ}4PR6rhbHx[N*@h KʦƓNs Q],k`Q3~w-hzhFLAJz*FiA8.'&b )aE}cLFZtBˁO@TˣR ;4ɮ0>𘉟n&"@F\>dʒ +du8X *[^ Kx4%_3 8~I*P{r\qS#7[uĉ[lEa/_|ylآUv&Ð%O8-y#rs=.x "茊MX$LFa*orƌ6tkp AT /SF MKqDs ҐPM Z񕭇 J0ʚ;WSIyٓ8>'izUEEGZno" ?)Q\B.~aN­ș| 4% 9JP:D2v@a;T`Ur]muNJѦV&tA{Xڿm/[D6,ͤ@ғ%괗h6I0jPDv0 eY?=&A"0wO[ R(U&A{VZD'Daq9~>Q+AT݂$or@8h@uюDjT&b[ͮ0̡Jx'F'2MUBIA`COS,ZaU44JfOQ] )% 8sTi?l',U,oT*0]&' J匂02a`|T%-KR+`Xj\Y\)^A[6 c3.W!D79BdB-%'nl<7,\M ټ y  :_x Ƴa9ܚb(G^]j$ZCCSwq[T@K%(9Mq]zmFȕTzGIv8@MsqX.V̅"jR(*%h‚4I9CS]!W p-S%T!"Fl%HDi>/ UQzLE$A"OR: f3@M}~SDH^)CU ~ u+XG7YϽ_b`@^:QZcڃ^("-fO ɿma'Cp5{O%M#fLHƊj9޸=(LP54/%zץ䖕s$(2&EA$gp`v4,b]75rU"끽Ef*Mn<4o<~c"I,ګ@,nELڮv#Qͩ9*aiC1iz:9'QAWi+C"x"'%@G1g(Hf.ߺڭN}Sg3#9s)a (96k277?3) zugK! r؄-P& b1D8!Pu2^:#рy.H lh'ی^Q TTB  bJEMmSoء$Ad f@"VS`UYtZ"l!y=Df ɭWHc*Rf6<_Ⱦ kRrIP}2Yq1ǐ XheGfe 7; ZkHESe/BdP4֨4[*rU[Sh'FJS֨rKV/UPsKl3~J&b &`PZiήf6eIkn+&-`hP,P1SM2z;mM |YeEe$3eO` <[MO }&b=QYM {Tv:} El YsY Í +0Cu=va.NavlU-p3YrrݐQNgh_2յUyY6]0ԲtkXf{Vn2[ƕ-Ymvb>#p!q5I2WEf~"p3@"|mi]P-슡YyUNiٻkֽ^ s>~H>E;W OvyX7Rr/T㋄k%QC CW3(P,,]r11Dv!`EidȭEufۙgK];?%؄Î7T?K i%DQ*&z ΩOD-U X|u6Y0\!ᆻP2-u$WF( GWf}x!C4at4l'n ݝ¥׎gTuPsW.91" :$l f^&S(fȨB )%3S،=r֩b%"|\x&8ծƭ0tao@@S-fLFPgPY+cwԪw#wbVXiaZ^eԀtؒ8iĔcOL:>Y/YFنǚG͑HĂkË3[k2%[ز*0Í& T%Yw&YZc k|SSţQGA R"eJ-> ;u#R2 D`[kꪨmV@VprՊi5qRTg,+de[ 8uhE(5:%˧x%bȼ"ϺI#Ǒ[RF#~5*^;Q*z~X\׹9#c-Ix*WR.],eɠL~ɎkY@.z!E/Ǟ2 ||1a@W#:h!㏒՜J8nwҙXMUst,ZsgoC0gRh|B8@lP4[,v ńHB\;;DMh&Pü(3dXh7'a\5HlTP! b FStǺyByKHԟL3|Lj!pcf+dt9FC7-Ӕ6>h0|ذ? ._>1^ʞ~l Ȯ[`dU*?EAIgr(N=a8 Q O8&˭dJkغJ![F\R?;~gm@B>VB,Xg ڰ`rv<*\CTU'BքZ"L:ȹm]I5^rr0ANFb^Ǻנ]3uM7T~}wW[{i~`%{dt<[z>hF }KAR  ̀Ӓwg3+gUHPQ {h@냂IƫI>c!f)ԁ0+ߓފڂw) l[*-B* zAPqf=?覍#-β(/aU0s(yhivqCyJPr`y V(+#ULiVmE-eDRѾCS?FYar+"F恠`[ɣr`j5(O%at D)F6ѢsbPpڍC5cz?Me(K94e jsoۤB8L6[P~^\I@;\sgӃh70a w\ΦXeC %ٷm[NeAe/^K&B4RݡHbcgL;|Y S{D2RX)P1Li%"Le2##eM"ZdEeeefJ1ˢ@n_ٻf _mj/X4WMGX h?dBLZwB -1uLЊ%>S`XSZW_GJ]^StIrqfkձl4f|ХW baCұڕ]m6!@κ-B:@ W Ñ/bVZ#ÍcT<xmR0)L:37n.ZNS4X;6|rX볾@ 3rP쓉 <~}C5Q:*@8*oG@]doYAO>`ZehՊ k3snо|K/C^jJT!q9$&٤j}Gwqr܄)r7zAh#QD)0_Ώ:y4^mTYtH0Bn&#R( e+x B-44#|l1%,>C<&^4#Hm S55n$+@n=Q6+lf0HGQNT&ss6ݽwHFxBd(d5oݴrɱv_$_ jF1u "LV.X| /$)4mey!oQ9H7{Z$Z5H/a3(; ƀ Fn#MP Bh=i֬yvBnƗ.5ۚ5qx^L]M?Z2i'lbQvQϺƄ?Hd0ünffڪjTfhu3K{kk䋡HX4[}_lyP[Ɉ|i2ySK0'UkR!V<#4IDAT.U %`̮ @{j__R(5fb݀ &5Ud:*)'!߼IL<6~Uf[(X Wq"2/kj)>0PⅬ ۲sU\ŨxPRY֩.Y8hX\;R\v{gm#\ez_{ n gȐa b v(ْ#w6~gaX| -:6&=pΝao8L3"l-T%L;<%QQ6I#VAr_NV?4ϭ|vq`] Ͻ՞v"3fcШaOckյڍam2YI3ƌ 8QhڸQYWP =OG_y=$@1?ԯmmbn)Iɓwi72lan߶lID}ZH!%MvΪ&cZY@X6_vŨ, "W,+3>pZIwɔ^#> E+oF.㸏Glܱ;Vs]9cGp8C<(@'>‡JHx`,V^zՔoO[s$_r%ϬzDٰqHv[>lę'Vqv^f-FӵjT'+\a>hqC;y##xE,v|ƌX]9=­7^ry)|хt*ijjc%̅qᩢ:q:ܺA> nŝOĬ(GI 'ٸN;&8>yݪP@Dxȁ#}ZY&HːN<:ldc&sg>{`ĕXEMq ('7LN0!Y%5r!Jc<~{=y'UL͘1䓯12a-:T LJ]J䴓s'#~voa.ie7WTMyHLI٦xv27/>h*r>u޻g޴ hyP@@|R쳶kl}!6gFb5HJ$_n>h΢z9bJ`;ulŶ@e (bhЮP(B9cnjyO>U*p7=i{ᛖTw=8q”3_quoA_2o{nΛ+&*b^bחo3$c0aXƪ̝ 놞*?e]*~|0 5Z"7g F/Z UwSfO|mΖ2̴;~d)K-z{@(* tԩ&ϝ}luq͚?'`j<"[Mˎ;-;˯ t㍷WՐ6184:ębYM(;`SV~-`I%["cf O WX8qҘ=w>ʸy]ґB_..>MPIEVUt;o}*RLf]~PG \Q<3{t[/諊t본Sӎ=È?ݵV~o\6*\+ ͜0/gkogaɓ?;}<@7O^ x̉;<ޟO<8QޱT|atG9L+b<ЃN }6ilt?_l_"gvTdZuS;r;D c2Iݸ8Ŧ/ϋOuBuD) -9q~~_rq~c'MpC9=MgS|ȄI4< WwB,!ȧ}0_)$UA4O;fwr5!4%2&YhB~أc.:O1C[MP2O;U{Si Ȟn*PZ(Gʺ+W4ot^zt MaboK/n̬TMaբBt۱j ivZ*{џ|)x7|.W!rp^۴)KCO8z]SVhړ߶Q[)(UF >ytQbtÊ[u ݫFYtQ~ݺTwN>3 ]bYKSF!).nX,x=tzfO<Ww)˧~(4hԆg74D4[ 71PNSPMo30IzKo Vo.:x< Wl -y!RciIҥM|gy>>^ \WuN":r֍ٗWn⅛l{1TD3C|2o8_\?|6zUÆs#>8WgT}e'L+qpħBlĈ{zӊ߅^uǎdN0bسL2}Z"no*q&]uT{ew1\j5Ŭ#,-R2ÙԄI3 !R?wƸl.|Xt}~*NS3|!b t@;H[՛aĉMgHCk|[PtiI83majZ>mڔF ?n5g4(Ɛ"1. r/9$ny驜;[SN]ΚdRi*w Wzn<.aX.;&Z[y*S7vv6gY.l$hc@kj-|d ˕Dc>YiarHH>F=mLOG[{ٿF4rZm`k㠼F=Ua5jw'Fu>/(*kN{Uq.uP,a\LK̍;I%D7J4wd6,QXȚ?a8D#zќɶ[7g.;t׽W Y NarI3?f>JìqE?r6W|P̲A]W\1ΐ!C2敡CnjnXx#/<܃uط[/vٿerf bmt$ۏmC%4 J,pd(ܶMV$ON VD \L1O<,@6耉θH` K 1YZa `!ʜ+a'=!7ӏa0ϦñgƬljHY&WTE X0;S>:wbl6ͪJɸTK,WP H55Th$ݼ#hXC=*Tn%&G$b}GMay!}E~NJ(Y̲Md*wQԈ#1ܤuy9Qs)A$U4Ĕ GZ yRv bHgn- ,ړ>oH`J0tޥaNf#ժ&v`Rr6|0.mؿo pgZ3WtM]!bK{o G 3xH;^)sCzA LແUNSzݾd2. xü󝀻eI}bО"%"~ W;ndˎ1YV|i~ɮ8HUN>>7w/kg@Tn0W!8;ڮiVX F/X+9$;rj4i#QKƿBCtNj>~sjIa$,+I4:CHÊJi05>ۏoj>9+ʦ;9O+$$CG?iz " RjWE&  {O m^s& Md_[n9<9LK.^O,6l0e{$|$  DV`]M!Zj(ǴYrX*= mTuP#6STlvAg2}{_pq6M[U?B#p]{ k:U5j6~h@t~rE|v* s]j,uZ[Sf=vSzw݅{?^\Kz_?iQ=)iNͳ0Arƅ}~P}kK%u a-պ0xk$م3&'綤{ڴ_֗M`ъ)m@7JL*B2.Q'믥+a[nJJcԤN)K‡]G綀ilyGn 1PXP7E|L {U7tEzn6}=JL[2Sw&\rßC47緬2FCzo̘Kg/N0@vZ 쌞4esqmm`%krD-#P)6p~@Tvpq<0>wݎK>J. @$dnk+*[IW*+*:wOsG\}.?e* Y,dIy/'MuM4h'_Ri7{~#O[GJٖ{tmӀLA6upӄVXhߍy;ȣ|c} L׳ nlWȤ7л"-{RI铹S= x_f/?pi[+ӎ=S~cVU*]uGUY:꒣N%ʼf&v)26%'q>}{o3V*\_9#zt>7ralӎ:v93z 7F`cޜJΙFN1koQBCf 8RVxum9I$禵Jk/kǏ;e2X /j^' +LjՈ~w}Wy5aʕ cbn0ni<e4GMa8ے#6gLNx-+Oa =kU#<7](+m7ʤimʒӆkb]?gߘvq1Nm0ng,]`HGGʮ)O+V)cVnj{6y1ɂyitlp(qO܅J~›juOҩbrM~JuOUsoǭڧ񘐂xW?U߬&[m혱++Lh컁'Nս+ٜ x{W.7f:nZj _s5\rI6Eͽ黨;0ΰ/2D?(1FW/,T64)ӌq+s+o~U-hJTaRU PWQB4!>ts). Ǭ,ß38JA.񡶠&U8jFęDH " o4*7$5m.^^4wY{}{)+Q^*og 7V-#{'e U9MK!E^D$PJm WPU9@U?$/ΛG!4ȇT2 %]$tN_ Ji~GpPHZ9 Jd!p-caTلT/{;D1&suJ *ǯr/ ~@l $mr<ߛ6!FA|,ʼn;O1Vl6dC1vY8oHSjHce_ք![(Zd! BRsVRQ$FK8fEJZDT1P\2ECf-AQ><fs~$Y&8?9o>ڐδ2pLu<\h=$9:`0i3'汩 F%J2[qJiLqy=I%'A TR VXIRZLGl+BRU4*t^離3>1;]~ jO`R*%=RsM2%iU],Yl_\kQ1}fTm9+q"y֒qbѕY4Ս60RS,dYde6̱'Ҍ5սo3+*g#JYAWVxZ)zgURZ&27jOk-:4͊g_ÝȒu$xxHɂ֠\ \? )sp_('<h\D8V3`FJ = @C6U:2Y~+a*Ӟn{|'v ;{5 Y-5JdRU#@eoe3"{߀G .6\z|[!RDt2Ϭ\R/h\sb9Qc7Y Gc{b[;."R$X)5T.dx Ԛpqj򧨳OZwEX-F2p9DESu5#dzDnql+en*RSٳ'j/mi/HPluUf\Ԩg%0en!?SWkoW~ eĭ-8yG5D;B {(W?[] Eq=jkb?S!.3nBU O.5;"ƭ#įq|s ^Oe'[i#=l /ENb\^]ڽcXdp /M'l&ь?l&BA|5$>,斶%JնB̲U@JOi6L3YWG.JeD,+M)&&K'u&VRLRH t?Lb֌nwטN"AʕICl%uYroh32Ha"9VGѢF=:r]ɖ[smfB&$'nm7Ga`zƸ=>9}`2C2J^)!0*c94\ƫsSKI`NfZ̬BsKK^=WTǠ,wc~Y6[gY_ok}_^u&"GMZ}Ž5gv*+O}k> NK:OzYۥ.cj- O):-KV́]ߌj[3=3,BZZCXRmkfmO[҂<󓚶fkMngKӧp,^yb-t^aޫvZ$vk#fDի1&-!tFUɫrC%ׄ&8/qV]4\or\}%KA@'v .N|ydu8^6O21X%ԙR4X0!.`o&ښdJ0nTB.F^C@C[z5RSh!sC?PR)AR qCb 0@%g_6(!c%0{fx5unMNBZmvWUصgq!ݞW0/[P|moKw .s= :Җʵ 0%'Y[#2١Y#0[S@ʦuWFЈ("$qWb={(|j8M8a7g)b6aܲ ֍WL83EE?}#Σj˟eJB\>}[neWs殃eY"w/r8,.T0ULj6!:ka,$icn]"sn?2Xމ'm;q[˹,:k=gZeok}՞u1E(-OΐM6ycT2\961| S mj]b*6j Y$=foesi'O[v3ڥ`lXMF锫IX,S <2ig 7=ږ˄x30ax Cyd8f~YO.0p=pxCcuy8Bc :B@.W(%$2f%%_@ >ֶja$D慷+zKHrHVG~LD2iZTpVkSG+} 8'Z/=r ނS1!RS-׉g)\$*u]7n\ օ З!V -( *y:ENspeC8$Հ6FM%+K ymKຌJ}G#{`Ndl}8C\olmmERZbj[y-M/i81a'ʻȃCCCMaң7Ktj>_V$y0cͷ\Ŵ"Y-磃VZs,!UMG3+/spC2V2>&h}={``8ż=Z#Wlt&Ǝ;bZh,w>.BljϟcqW;8wzr \PrCIdB,:?i;Ns'w?JڒC"s8[TP{U܊'I [@XhnVc(Hއ~0_Y 5qTX"5N*Йc~瀛 qcty;ZKwMGPJN muC:rSP adq5Φ)h_n՗h]G$#b}Wg(3nG<3(~$Sh"<)5`I;IMÅ{}( ?v{?%NQo(qÎyl+uf=46s GɽmMX=K6 `f=*F~'d14x]>vΛpT%IIM` k hU=6;Wn$Wg@EqĈ97?78*'՜N:kpޫX-wv$ c=*WG|F 7t~@`f?ď aņ,խhAm]ڒ1G'a ;{-aeyH!-@5/"RJq݀l&'dS:KnY?1a<Exy~IdJTnڌ F[(O{(.]4#O5m`Ϛ{ܑGTINa-Fn"{ K nЏ#h+Ν7@U-_X=1JCuNstu.7'ޜRּ6N8O͞3j%_X Ueڇ&ݡjan4L`uaۡ-'=vW#9ē&O1DPV07ڜ_sQ]Aǡ WU%3X%V "uWuq# =97x 95 Z,&qnl:giu,AT[A̒W F wKz__7ruL`Q'*)ڪZ΀G͊XaY,;`?#lI&v/SvtP8{9_&"k.t//zڟ]ǵ%HS) J'Em@M\0(C-_}~ޛ= *nWK@C6GwD# / ugTd0Tb}\WQm`gb*j|2FhWmDrzQ5;OkZniSrM_u)RC 'PJP^6o޷}\2v2ᒔع{>WثpȖ kђc`ĭ]Fp^lߗ[0GP0F"f||Bʾ$6\*8Z⨱rZ[dJ@NڞEpጩdu:ZB숣P+MtvʴFҹs'!.&]0Y+ϙ>@t{kw<}z9UJwuWzhI'-Pzȃ¡snj9YjкtvW]̈́d~u[3SON2rZ)=ф7ї.fL" :H &*w}U4&1,Ma{/E|_;g hw?׿ܾtɲr9ͮ3RTQbV77T(%i ?+Kkg?-*Er7VBP 0+fS{L.QJwW#\8V.@R5nq`y jP0PVu=Qb hC a3c'נ|(,#P˳PvkUo+W n("2B=jɥ ?o_ + OL KPwGl*tzsH>='{z!ܦ\25O^R g5B@$6Yڒg=J'M׾o8~Z;GOο XzM>òt?ѯ?kk371omn](2Mh|c6 ᏷{ g|޿gHJ୪J,JRxb*)s!κ*[cI6UV"-{.[oIfMtu`X?u0 st6)UOn{qgL[ ЦT)@|O oM^8n97sofqfJ&{+fW_~SnfK_r.{)i 28'v.믿ށohq/HmzJ+.7ṿ>yo{|!{/hp*`t[/~X①jޜrn5_ɓ%oݧWO}i޴Kf,no x}{Y0q1K+ΣW Z'/^ ly_uV /ߪ5jPvqڸj8j X6m%cĊ4.h~CYѻV[oqA]'3v9H1z옫P*Ÿ,_7tO8}WgJW_E]D˯NWjh޽iuyСGD,S[w2eKT:h;"U'ؽ{Y&Θ9;pq<'i 5x<8V? # LКsVhI~먣_5eI1m`~B8hD,5pE_j qkL&ݒii+w aUؓS!GPuII'9[$RG0C"fN] |ph\bO0ec H7i.˸RGx5tJ6JJX˦a#Apfel *YyO!3oKcr)˞Lt* Hv5DsO,Is٤㋅$p}eF[lͧ"5]r2lL4hg˪p8_Y3ܴ $Ǻb3[0GOIQVB^6HND)B3+K6Re1-9[U": S(/H~9 RTmX/x ␩5Mw 7|ŗdP+f.a=g!gW?]~oO~tvx;*u|4C>1uğNiu(M0X ʱ#RԜ3F}_/>ykߟ;) J• +21EP.GgLr\I!PGO0B,3L(&Ѱ7\li*|9EtҤyn½@v]ӊemof! zpa20x0XlWXS/9ڛW޶̖hsÏlf{ްwq܃7o/< <p(].RWDK/=L-U~AulSPꠜ4YJ,#A0l6B.)P>KöGRsf2kʗ_ ƣҊy+B.I]5?=HD^t)[+ZXz~3d+-C?5IA۪eKRANeQ$|Lfy$THѶTc0^S;n }?^ %IkvODJQԇSzY3Ok:-29o$g'Ե˨OJKg 8{aۀR2kk,[/Ġj{٬c:ٽ4*v떝9sܲ2}Q&zq V$$m6$^,nշ/Li M2nْ͆̕n;bࠞsg_N[ 1+"'e˕M7C|T2  GUSu|j XR*< `!Dz;[ sۼCoPiW+RJr>Y]ԫZ*0oC&_p劔g|~#>C+.xIKrQ{lAS]`ƌޜƜ+mS`Ư5-YJl;|r;H_a(VCU ]'N5xPG rR᫽RZU+ kRYYӱ/d/g)_~Ri"\bhઌs?ur5 o){gc7ihj@76ZrO Np|wY-p`:=kI}<0~8oE}~\??Qӓ  \9S)5Ϙi^vE%e{eFiɃKl+*ы2{ut^ `gUw ƾkFR_qHt}=X,փ =1Ť{XJsˮCVOd7f fz+2jþC=Y*BHLo2hwS,Crf?vZ+o~)P{ (J&R:2l;RN7_8@ǟ_cwͭ|7n *?pva\k%ԂWW?c>.(~~EXGޫհ/DR/7/j-^¦ +SX~$# jd f*lӿ,/ Amŕ:2LGvǹ@,,=+V-;u}jXwAMޥ?<(+.8ԆE E='$7x"|a&q•ɼ(SIv0JW>.Z"DL:r̊Aؓ'&!R(bd8עa/ZtwϼG@![p0ļdKBQ"~*/yԞ?ΆݤP-i"kIq[JՅzkEgNjOUP[54]o;jb[m:~^׃ǣJEfAG5^b2)fE@NEUr"A8 zi6eukU\,"hLmc$uedD]9LzwuX1M7G<&_ >)o╕h7ℬ  YVĸJkja'u ;FZv [ 7s uaj铦IW۪Ʊa\G#Yrn0juraMsAQ*AP2.[R8_%ʪ0_l YpNBRr83^x|L 'Z6=҅^UsDͫ|ʲ2 paϹ=gyybo^YYj3*X#\Ԋ/Vl &1wU8\-r~EHk?((uuOUmUȣĉοEdN@@lEVob;~l{!e/a&[ܚ81=1nB#pĥWƳZ U)5sTiIk@Z܉#gdLaªN曎){-I^dA7=άӅ3b0/骙~uΤڥVNluTȌFvۗd7k-ᏹZ:A2^KfV1EDAlM8mM7!w# !a6Zv c U} ۢi)<^"UXk_~Nau !vqb:Gq„ n+3G~pgW!6&hAgpgC@M5.P3lʩ#-\!vd*%:+:]z{om#__ެt``Us"rkx[~܃yVS;Ӷ @͓ߥeIkI鰀[sVU9ymdtn UPm.*{8jb&/U=+f ֬9dW| ЁZ}7JX/zz\}I^Pz6XsŮ+A2|/>1/W!I "ٵfUmUOU>u[{?}&fdVJhbu?Dڄ? 0J Bu;j{j/X'3s|JOnHm 2CS+Kau*IƲ!!a0͒U-z7 ۥe4 +(񫖭H$kڊk_!Bcg^=n"$D^&]G,T_Qt+FV[ Wf(Nw>\}>70iњ GP.4Te$EYB6l'IȪ QIa{ALx3W}888Fv~.]I1jk\%8,3@eܲs;vNyd̢"?@tEfCu䢔r*dJxz޸F6TP" CWnM)OWS|DIP<Ք^"6Bꡒ4Vch+[晭ܬ Qucy3ldģ)EvQ@}{f)HSY_)c2yep W,[bfVoVv8bB坡@)[fȦX^M:|5kKUԣ9d~p@mJШ/2ي-͢HrLW7uVShM_$>Uy8m~M;%gh2-hL}/V/3HR [mM-+NЊ^D%m.ŅOM4OM`+qo2D]o7{=:?hn0[Zںwe& ͖ʤ!K!h0MӬbb֣\Zal \!mU!e*&KI |*yD2:NnF8VQ`>jag~tb"eq^mZVokP]{lʲPf\A.HiҥݺȦ\4Ma,zM#nZ;0gӪ;iKzr& @B1ӧ{,X,*VTzHnpQdaKqqJiEv4NM  U⮀XXUaЏϪ(՗8 FxV\w}bvRF.oLW^y饗v\j./C-Fz1`C;UdXtЗϒ&|aO4V;?J߬*7`MUrdj4ͦ8&rmSN*bA1Bx L*CĆM>TEv@2Z6bx~=3gLA16m@ml }\/uL!=g-B޵6p23NrZ :Prb~HR;3~Guᄒh7m 2m9\ܯ_eU=v)TLGTolcA/8.rGK?Ώxdٳ?`֫~3{C*8ՎLF.sO6 @`ά.jG>qu ),\ieMxcЧQV 1D,~ wZ,E (cZWf4AxQk|bkJDhP[m@V9}b؁s<}7ޘݠ;mpԐ!zk!EWAbMWBગtPz|Fhy]u{mH)of|>C']ݱqYEKjH2YqLq#MYu ._4±tl&C'h%&@ڠaFy;v?lMS"[M̆ 2kIVYF ^j,h׀)X99Te0\:KoI܅uti&uX+* _&(" WgTuo6t pB bBZ'_% $^ibMM !>vXݣ_r'Y( *ŵ宨nG;|*qj]*K͘tZ{fpwu]Z,x-QFaL- l(v:<;vk,)wJ|L 3DĜP*䴛eEDc%.TѢZudY]Z2[txfm_ άS:~O~꟝1)؁-:LMoB]M0>,7&;H1_̓|ے=qJOZ`h=j櫱(Rmx ,X>Î Z}>TBƊ֕>Ė`5$Rpyi|\0cчʶKWNC?FJ^. %ޜ^ouIhdd 凩f(q6ߓ)2xOuҙAjbf<1*sUiUP:$Ǒɫ0AF҈y?d_or|8 Z-XvW̙7CìjE\=4hS 8=-;vprP^2$dqxZG%\*{, eiô&Ν푧Q}ƫntL2  X,% z9ݧ״^0˨z[]طx9n(J j` xC9y>کmF cQmRn%u# <[9l诽{1ѽ]-`-^0pm[t3C}2Gy`6r12T;dv z=)Ř=Ah3Kcr,7~3]m?a_ˍ??mY+؎>}G-Qg.2kl߅0@ߑoFsF-L FX/Þn1—r,Ѐ,1x0^B-3|CUOğIp**gTʞZs$J@˜j}~gk/Ļ:mJj|bpq?3]YI*:lȥΦe6*vD8<x4%KAFb̻|@CaO 'W0 qtؒPaOʹ\20rw)x!:W#?OW쒥ǢHsVyB~N`W=$}aP",FLǚ[G{ʋ9d ɤ |˓ Λ?oo{CNㅘB]l@-)C"uT+ysGx5{Ƭ예D eP$B|_nPxZ$ B9=/^tQ 6!@X\PEf=ӓOIs}ίO +)'W[J?\}[)"t_DwHf&)BT;r߬ vE HҼ9NJiK:ijWmmg 2g@?Ņ#| $29wy֊51 O&M$ayʁ /kٳ|D\~314}UĮZ2Z׀MBv-6냁ȟt3y}uH'ed,[[߽I!d9@ToE4œM%7x^ c!GOn% ( Jbn[f~Zju))HCj/:kUx=%¾OBv`f-poёsUaKzHR0ϝ8rd843У< MCM Ï,8 Ls‰?lϱt(=%M}XV?ص+n Н0R&3Xi@~jl\&P^z荝7ݱGWhn{M2O`Fp_R+=2 e[ҭxl*#u:c3˶#x^! `]b@@h{f3BpR+;dɲ hty2n2Q]! xe@'T?~3$U/PIji">&7btb(fC ~#8䩧 KyB~@YXm/@jTALr@.C qywql |ڔ+ibɶ|a,=M6:BGD,Jě^@o).j'}DG"J_}]}$Z_hns~?2Ǽ1OCiS&{A?wJY.ٱ/ǎ>;ɶ$&դd |՗vЀt4f㯅HPvz鯮~).eaR*=TrF ꭬ZoowsKĀ\w p];DRsfށnՌe+VlŒKzS>,ۼg>}iK& $؋#?~wQ̍x&\>O Rzz"~3S* ߲,(0>j FXgO&Q,[UKq?=Ne¨WK- YzNx>18jQՅx:~`O^$@ٺ'qIq24p#T)wD4.Bl8=Ns੠qOp եEs7<ЯO=#6IICr$mt>wꐞ%,Z`a;m8`7;QarR}S#ɣtoأO-~rozW\9*]ȿgqy_d䢟2++3z|sOVack/'"X$M7>нw9sW[pb?bn=ɧe[Y,.u٬9s;;oQ,q㯸Twܾ!.O-=ɶ|FBA%:ɞt[kSC]d2aŒBf̩cW,$7a]d~~C#qWe{ KYe%%" z0j6Y -cr9Q_M`[1x )gS_ןzr%{_n:h?sO2l1;IS'Kλ7byz7 -f{ōGl6tAp`ԹVs]mI~ьuAxS&xr(ƅ]^ί\dI3LXzw.Lv/Xy >oSfٯ?y_?*s65vĢb.N8-7_C1 ](Rq$U[p~ja،ZX5aÆ+abuH9(" qutr |.m J tSN9λoV4L$%-mIlI0"aۻ7]wLEVZ6hzN:T>h/J0~wvy?W:_D's8XglAz}9+\BʃC\=J,N03@/O`cܟ|K]w9B&(Kŋ-otq=CӅ/s?g> V"Mn+$%ogL Vjhvzc[?}vo8) 2ݢ"k/|b->{WpQF\4򲮹JfdU7}]@ɟtwsbݙBw? f<<'C\l?"^{<D{O?. j[l*Re3ݾg^qםw%W}=z\-Q,a[&Ae-#{o&YO~M\ d?# zCѐ$-*g-10֒OsASx.tkd 'gOI%mn{#ٕp)|5^_ybٳ}#=o}cC KkW|~m#S^y%ޭ[Y:wi>6o='+6i@%iwcOmH=_vS|%]^<+ug& eb_?`*dWPAV: .[ey[ 9ju΀%7_my=t\:3O2;9S+MO8Pb2L uj" @+Z5eYv_ݾ+ZLn)(g=p|ɂ22L=K/*g+'?M/mQ1TQ}̅h$Bo$,7+7/Yʤ+uk2޻L5\)$(j%BB SZ1xI1?=jw!Uε5`5FqtvnLe" |Y:'ioHUYPȲ+rK' gb<*㤓OLo~- Ch]7PY+CU3s:$tX.22q^JN.ň5> C͉zP V7@n5ՑgV-j Hsp ]orĪwY,"h&8ŨL-ۻw1R(y+?'KSp„)܏gZFKhÑ']kޟu7ⳏ6BT<ڱ;ȓ)lPz8b>2kBNQL־ CKs0m,٨P{`GI!V}im_Fu|q?R%Y}C/ 븴AK{ӟo>?zr[ZGu~Eۊ5'q,}9i>qG諯I>fኈ^U1jʗ"ٞ9k}_nNwޙ'쬿r'VI۔$vިC\iw!mmF;R.p<;1c۳Oi`c@>N5ysmNy?#TeG_ܳ5D"`IcAԂ{fN[zmwL=? NObg^|>WuA;mh_8+=SK?cO;V5?spћHr@r0j#B^`mEb9le}y%+}-e~c灆0H6w;nDZ |UBu~yR+9@\>TΓ \EN4N8}L^yu@ W3ne˟}w|k,KX ?ߜ~?p_S0Gӧ>{$lEZ;|Į//xہcm xwzRjF96NBEFlc~邅ǓoȌiI_T[o0$dGR&Si>R%kc ȧ}h1\gqUOJ:}Koi=I$OGO`SCm_l#\ y;#tοn=b/qƩgmؿO2UyW>`$ϽBv￲󖨰y9z6AXcN9Czq[m]k<#6ȍAA@ Jwv.կ=x;dc*VnDӿwZAy睆DbO<׿԰`otXs8ȝCgͷߘpλ Fb~MoۢVy==W!Mq{$%ljY0Ig; 4n?`&ϋϿhѪ-2bS7?'J#o^tU?'^|5l-7}v>}Ȉ>P%}$cWIvarcwODҙ$޳6 a5>q<8:DQikkb8FɛO]s/N>{띿hpX㫓ޗt;8 g$Eb/2l&nW}ObQ`b5y{=C{GB{ B#j4^EY$}T=/ğgݯ?Qgbcg#W[\7B%lApp5j΂r;~UWwyNUXC wˮiqQhJs -,bdž o1yfkfm/߮]ǀט/4 `b"?P:A!~yv)# $9!Eaٜ7ħxĪhg$-s)Ҋ(Q 9*&[?yk ? ysQO䞔lFp3О\q[W=#^|A RAukPµPV.qN=Wqg}]5EهHNf^+}6/. wCQ>K _DBA l t6D-Lധz#W;נd@1YrIJȵ&N _  *# qRg=:Q1IX(r&c+k,5 2uUFE([`UVR˃>R}+e2y(1E6+6#$u:ŰcmO<Y1ېn-/&hl.UQsY1 o\7OM%rqJi1[n?e2H zv*m˫!vFՠWKp9 9=cx*{K9)eU]v:4!Z+:py 1JwQfC" mlOg]Tբ}abVw+`j䮝JjSDpa(JlQhڜap1*X$UcYB(OXfSϓH !Ǫ{1[H9P_suU hfH."4 /!ZLe^BjOebnO.K>h}<$}J2 L~0s[Ms=|gaTQ<1-c΋4 \F5 2 ]G]KotlDE"(STɴq5?KŴ 됹ih`,dU [dxBŗrJ2 #"Z ĴKOUҹ54<Ѱ-%e==#l^\F@EDZbg7O \4tDET56!RCzn}6<жM{DK+N'O0$)t{+unj O* @'7pq%c\]Yud?9Eyɰ~R!+ZM ѢPW|PvH ؊Qhe Mk'3Va"р]q e҃Pmrhz:O<%m?ar]ǨMJ:UiQTөAŖr4ai%Sn*3A|GzؐyI?krJ3{I-ME@DhU"["N?D.ޚǐ+fvB$[ax1+d:¯ETwl后!ZB*/ĥXU OTu_q0'z .5?_ a:r=t >cNЀc5u'+V= SEa"D+sV՘5:W ,e).p\6AS YJ&}T09D2Yz#l G ~['̀^<^q&9>2tO x lT _TU )R~{L4t0xi"+%M+D67d\@!y)' PNx@mLנ *nhցCL; I[T 4?[rN\ಚ> AY8rOq>qf[ׂ5 X60,d-T[. \;9 Ki}~ ~2}8%t6P&أ,%  vAl"D@_rشhn.iIu5e E[-Zدo?2a)PNE'&e. fK% IB ȾX4t1p>H `AY{pPDژO )b.bYξ>֯KK,Zol Id- *Zϟ Bc>ϤZVX޳woBjcߚF'IJcf,.=Z-sAŜ2Wr-"HL3!v  UU~`f`\AЪ 2"k5NS܂թe7;x| |)N,ݜY׺+CC+KU1 Q;0\ Q0 B#"GD`{+I0 `3d:Ӡ/"SL GC<Т&`Ӈ/Myt!,kIu:6D-%!ء| Kpt]lKh]%EfޭUuYt!*1 t=g(3`%h`gPHފ¼qyQ٣(mwjT[H#Rpg~Q`"gm{F X7%nE?,@mh^C  M=4 |  6ScLX)ABD/c4r$A m \@"t.|+`>tnTm,! ~;FsTR2e9gکICX[vݶQ?vv:p0.U;_Kj5CYa쬸C55ޞ]G紀MIS#l'`Z/Obc!ZG(dP!ⱼ1 0AA\MA1Q0CT+%ؘ&kY۩cˁCnM_bXdv┻Ǯ1(OljM= *C(ÇмSlzA$䵾ٻˍ=}bP#)›xky?eW:X!56:4?;H&2 *QZYA<$= ɱs<M-"&Η Xm jO y2Yӝ;3qWr0#?E!kvn'lg0= aσz3u #c x /]eX @7UFW|ތR 11yΆ6gKih4q UW8(yO+(g7[\X' mns"VTh"ϣ:J0cEzlLR2@S(\3G Fb("0 -f+`@Ї*.s9[4#%m VDڬԱAJ۱hbeY>ʗ naI}QPmrCtk;#'bql64i[Ρh tuViD @B((j{Uc96,ZV@s٤PiB&"h@<Ū.E6 t| őABv/fӘ0BlI{)@P=B0q;5zs!ݗ>1&1bXX뤼6' V6`PB x)P TF ȊH^2j8\^fmNht*"eIag sY2GsL<!a$(;:R:A_'K?ĩlnKAmPd7PЗe866ذÂ<m@sAK)]be f5H0F0>-fށ7ThAJY_2Y4)ɭYIsSr '~ ҢĕϤzrv KMX"տ$X}c,uo-64)LYp Wk/"3ZQ-w1 ,/ʞօ{&&^6CPrJ3pWO}(HhPǪ)+r6' PCE,8 W!Dp.0R'V*!*18R jVDHgp@}N=F+,ͨ&iL1%ސ z eopa᥋HۢT 3dB/4*{_Uyl؏xiˬ!,"ŏte-8,+~SAQ!L9; 32R3t FR;Q꣔ JUǂ̨ي uu7;fW RQZ؆ڈISl$R-\eB!'/3]H{Mowf.ļ:_(=3:tpП BAj*kg!/UEk#n.M?$6x]ig6MՖ۳O z|dя[(3,4A3q^%V}Z򤲊ejmR!OO!zߌ&Iŕ"&p&qL`c[ql}sDu ЋLY2(h0~/z)x?ǽnqD8k8Vy+tł|`XtNn|28F9(,.y91Yȹ*Yd@|dqNNT&LՖ[ՆRN(87V)=_\81{Y0S+Q5hzր8,!,Mg˭5׬_aU?۟*V췔PND 7Η8Mt9輒5I r6sC fPtf$[XJڄbJ)^5DSD6u9"RVT/(̔y͉P2R RPfxљ-4pR>L09 TwՉ/[!r©0UVty2xݸӊW.Ti氚 _o _"](n/n61oSW<|ukt?k_uZt(:(ATI!;1>('Xe"'Ď nT. TC# R9Eb8?B5"9SgDޤ$Q# }iȓ!/e]x]za[5Y'I1=AU &3# "5 o`%4>(2*8P]BN"wŅP-B `PN*OH  }<+0\3*#]_j.% ɤґ0clP|>cpu/|6ƤR2$ȡ[T_@&b|0O~4M(0p)E Ar}RHG >Hlx(}ArӐ AZJ*!벶lg7"ma*B=ٗƚS0}26}s +|9"1PטC)+ȸSաZ/Gz]k.2[ PRϋR:DFjI)ö^!3 L89R;N t)#s,#WWj]upZhu( 0¨Txp ,:S[g[2VP7#8o0d7q6 piFZ9cP;X0c1y©%E$j$'ߒ%*j߷'Sҋ5iҔ֣u8di>H,q>W\՝ ondڪ)wOgC"LcEdL[@"+' yO dj ͬXణNN)/Q h96cSIrykGü@K=d$Łu S3HuQ+6'] < b sEB:tn*J@TxLVr($'YXhy+fDɕ-bXTҝ7jPyG#4P5OqN :h`q29DxnW2 ݕE811~#!EtF {5"<]Qו -^#3f'g~GM6lf׆yq!i`$x >r VO)(Cʳ\ 'vpS{mvL\R_?նK"Uq5;oxP]$Jl[y*V_Y,a+&Jx=JOU͂*|qV5ʎ0M=k,IJu̠3sz̦l<q&D0S^H-ŋPեj쿿޺Ɏ6M$yj@ n4m;ՎEo+Kã|QB( p2O\\E/+ KIq'ʧ,D5qqM'3}F].e~9K#çqu{J$u\lxg DG"tiC]=zq)= D(A]ŊQ F(U9FNC[TD0ZvgZkEfBQZ#jÔJB?z^yh0KRI:#lͯ}QE׫\k\hU cL( --kOcoW-Ο6#⇑Գ9_G^o?xE9mAym vs*+*,☬8%>08v|ohQa` e쯺]vCeT#:G;?_&njk Guy\XPO<`*)5W~)}݀y^siw^"5Py+O$0 xY4ߨ(ָGEng 0mֱen-CuWrչ9p `, v6fl5h-|W8Ad0NvKZ24즕e{ΧwsJ {yBuΫt{֞\B.<| DU-8GS<$ {f* (gͤW-\X,Μj*@q}~e%yO>X]I'B%KEn(v5J;&m[PĶ$h 0՜ /Q_=` Gч|衇Qr9S"pa9ۗ}!Mu1J 4FvOΞ3q}ģjDr_2WQ)B dH;eptɢtڊUɖ|5e 2pҒeuG\c.Y$S(̞;cOKJ\α)[>{7j(>8Nt<p`rٳg=sv<o|p[# }Cezq* #q8$c#~;u@95eA,=aǝh[<_@}]F+[]=m9P!֭fPscx ?qT<ޭey*ݶ/_zWn8kC[3DbO]ʔ;]ả<'nhx1gpÏSW쪋9`4: Phܑ#>㼾NNq9CD؉z_~qǧ[r;3O}4D'}+#5l 3v[w l%A%ȃYCUP|s^•]|G Ō?{nʙS O󫐧.ﻷg}G?HSzO7ߖNnΠd_MUtoh7ݥPګ ~Ҫˎ:ࠣ/sIW]3x}}̞?wg Ќ{;؜Շp5\m_:.@Y(xy©L>裞=O8=<|?kL_g.Y'VP6ht{ l̰"-Y1c7߮O󌳘Gܧu6ӧ(5mƘ+OF ڰƞ9ɊvR kͶyao~탷ǻZeMc؃d_}s|[λ6[բ cǚx|bGwL#Tv0|8 fQn$iP[ٽaƾ}f {eL  |ܠWegd=Q?E(`9ZO~ْ1|uEB0tQQɊ}<%z?<,ZτiS.jg_&E\^(5h[5ew[b s%ɩwD_7Pӏp//*~Ə}u_.x8D_>Oӻ˯My_̬G~ȢFZ%ݞkXB}B ·w?/'ym977_fs/a9" ͐ '7kg6rT[n0 @.w;gA&]af9 H$^J5Rⱺp4){ (v O;E{]*~?ro^H{[npTDdP0H#yQJu5GR˕:0I>#t}E<.o:y}k w_}{ǭ˥p¸1^ 'J}ן{-uBp?G֟we&XO,FrZYLQ3~3FiT\)~AC"Rth͞1/ul^E ےe!Zӏ|moNXs ӱ 7'(>׼2L% Ftꪫ_QW]~ҕW]UW_yNx_y'nn@fn“,4?,_T(Y9i?lm}Ji* 4aenC0_iR{[{.l=ǘa͋K6yf7ԣq2 Bٿn7.)R9 ~ Ŏ<-Fl5m΃6ٖ;vhʊ.x@}' 2G&MAVPye|szl_sͷ KϣZQ18;3hX_Ļm7hJӈ?tRؿɈͳZ-X.\s8FLuh0XKiPEGȢ&  c EJE)X nu^o>NFzu/ Z#ro}ܑ,[ǟA?rO=wʒ EBB]\²s1 kPk#^)<6U.=?3w3Y1ӛ=N 7u[lQEwkۺ}:P1VzPEk1Dr2k֪ 7 Fse*Jf*밓qqH(>ScfN E F?;0ڱں4Z (5?8 Bǃma v9.gnx "Q4#b.ImVɫ"Gނ!oVN |PJbc5g%I%,S ڰRRV&c Kz=fOQɵ#gkmۿ_zGu}e 'As֗i>P?)Os;]+'\p(~z pĖ#mo~k'rF]^{0G_Օ-nҥh* ɝ^}O3zHat; l3,5Q"C d0Rq=9sKVYuE*4ve#'21.4DC#+PHB.3AW6E}9?J| F f3pհ'DGmܟߗjog} ϵY@tLaPI"#?Lbx`[*P`es)J͂oo5 8߰?P )B-X)` t>t<=$پt-;SsrUǹD"k2T Ǧh>W{Pϟ3M7j 5zZkM~dF߶rժ=rɶ?ZdՀH3=,C$ʞ{-ٲ8] CK)TW(Lj]mK>V kd/v瓟S؉^8.l5D D S|$e jAJl]}htKq;04Bȹ,OD(\H} ҅U.Bj.6^2#QF9l*9Kǿ=:1y0&- ̀E0ȁn:>0 i%u|j |F[E'c. `']DSx!Ox{xD+VbLo)m6Uo e r騴vopL4r ~{EƳ;['YԪt:ͦIQEq]z.,5e9o ?}-~ue oٶd.M=8<&/ ל'쏛v  (gnbA*x~U|$Dmݰ )mi([ٺ- z!+ѾdK.7\ UV}zM|//_/˔5ez+qwUK8 CI\5G*?T=S?`( YDW70qإR I6o>xO?d耆YǮXdy{qGlثoܼg-I.4nطwH<|[SM" ʂ@uLrN).xmfWZ@DJt큜 hS bhwE Q 6Ip,Ν +Ansf͙l^{z`hmO>dCLSq7g|L*7WPzݍՎtop;!2HyĞ?P>yv.?W{'.GÊU+_z{_w+"|쳾KՌmڞiKvGAZo~eS$qSIKhxW#Hk\0{ήqnȹE%( w$ Tx㵦}?˯ }aG :;J"ܻoP;*/ЭhЍs{}V fZqqJr[CXASϤIObCope:{ߏF7ԧyIWx's+ x' l4H5I9XXCwⱆHnG\tG ݸ;m|wަX&B|ԗ$aߚ˲멧َ&"pvg%Q0]_y^x$ͶKQ PfUk_L6( rFu4?yf37>} wm <;ȇeNQAQ)N\PlƨM#sAd\Yegヾh]1+!]-S`6[UG\(z P,_?-KQ5@\׊RcT~ )l5Si_YZTao OR $ & ̄dTT.Xy9֛z LnxG~xL" *G ӓ"L9H_Ҁ)H8;PcY9Th%%UT&Z*rlDtX 1R*ВtD,?>HW*J)`4rx(\M;3PS-K&+cbTCR9KC?-$ mUӧOb=t%!:*V.:w4Ie +ǎbV|KXLK`Q,e dq&t2ՂTHs$TPT4I4RצSDXS 2D:ÊX$leZYMֽI?I]&:a̸-Gl_xp|y1^OsIͽePAK'%a}ZK5N˪G:{]9ƺ C˂Ѡ )FD !k%%kAuF|.B>I@-5W uq[mU }bxy\6S (45m(eA\r'Xƨd7> N="UKC ϞDgˍ* *̔TRRiCbEHy9!iz S0$LZaD=а.oRHÉTP/P)bp4c%"˴(KAqPJ4IiVaw>Gh1ʗlEy2%4IFTa彥WV5U _[rd*ooǧB,AWĤpUXd2@xZ>#E";B,]~|)A[9$μ;YS[NKjwj8>v¤lraJ>\^y¥I i]6J5@SLlOCSwTx1JK6$WDXXW둄9jGKDa!nmmjl>7%P4@ 8J_ qu-@oHSɝ{B0imOcRAEYv7֫Ws_$G|7OhyEW\ʕS0:jR.I"NWʕ&捭TN&x FS}74\˦ R%eDlu^>&H҅h~Q E9%>.p*q:]ğޖte|D R{2T$0dQ,8EХ7sk?ΫrJ7GEN$aX]O6j/" ʳ`'{ɤ7(m]ϧgk]h뗎Y}NW\?!F֬}*hЂ`rQ$c$188}BN8p0jDer]Há0]@mTh>5 ;X2PnFiPGj2s1ϛA S}7(v 4B}՟lo6BR>P,C bA|4"P 7=7,2mKהQ\lywV+z٬3fׁb ߆b2\&*PUe뚏-$RtVx \G -<+Y"-1$igҷT<.ǒ jLᓖYGNp]۩kØ4` ԓ0b@u-ƪf7PDJ<5elsYVq9^?SF3eXSVU΅%9Ifjďߪk^W2ItXI5mau)ZV_i>#up&V0Ɵ:<` o ZЍb A 5#v.PTlp!u$+#1\*)&l`0/kN W1 O" Q*aOI^ Q$*5zx98F eaFs1B, ĚEUT3"*i{Y:R@qkUcJ] -+8`an=mh LǦy/w?bOb=Ur#(CP(4?hz]%wV@1="X0*j>wX uPWAuyuN.}ѭ,z%~(tpl׭ N6}DOrDW 7kWڅ_m/0ry:ʌen(yA'YG+Uo3BH2>LflEA!60ɬuhZB5:v4 ^8ӤS*SЪ__b`OlbɱfY>pXz,&Vg__r k1+7`ŏi0x՚'k] arwPBk΃}XK'>LEk wNfZޱcGw:TH@׷b]\C_/*~Y/E:H 8HPd*X,2{!H},1t]8VszWTKGKTs} Pa?ĂrtwBRKFJ)f"!H, ཌ>l]^B#Ŵi+ k)b'^ʕ`Г'Z.a肶LcAJ 3()`(^%fP2r(%̌()hm { dx*`id#P -f!־CѸ/vҲ{SUx"vp AeVL1^<1AΛ6E#q+!>8j6E/PNVpV kHrlW(+--DN}sxnZWGb cm qߡ#-mr?ziɯn3Z|2' KTR6 <^UM|!JEQJ2x3?\oЬmRLw\ %Բ$NM U` +O ؞DV^"[WF,DL" [*i)"zU >M(VI1!=RҒ(r|. .ÌUx4bU;_Ri[c&~z6|/TD6%lE؍' hŰ]O7 uBk*QE MER&m`dWRC+ Ģ7g,4t[i\DΧfrXAwߒ?Ko"wVC/ᇰ"QxK*u@UW^d0V|靥;!1A;IQj:ȌWd-*`a܋9ދ qA:B|a ШUu~<Ԭp,9%yQgrgබ + >0jV˾ xYj2*r/.4 .䕜_PJ6 `jUqd_i- Fr6pZaJ%̀u׈LmccKLʜm6><l64J"ZT?Q/önF{al S!,tEx 򰰠30K8}L![uMrnRؗ|'.:h>5FhUwBھҸqn"8jh6IǢNM#uРîA AI-z&Mg-䬮q_A;(RB'ܡHp)Ri@qOB H$q9wfwM}!2}+>l*f2.> 5_F5v2wwߖn _c``M[k>U0¯iX!PNTb!*py!!@Fp\M3O`$Ì:Vȁ5D%Q#>j S=4&&ћgIB9pW# 8밯eؙA>t-Q}s-qȰ>y-bD[D1Q]݈m䞪Il lRN| BăДu0(2lqxҦhjWRAXmem7N1⠸h֨,Mr,̭%oLZbF6NgZeyQ&A,Cj\""t&_b`[0Km4ϼӦQ%=eNpudy@:s洁'_#Hx@,l6j }Md:fAw>iH6/8}ڔE]Ԍ&HI5tpV,66ǚL2 KEqRA%n,e-T;qEDw x3`)g/á!w︨g&iJz~?,o4y\4r(Iࣜ$k/ʅ q;4shѴ),40HQHx @胸-'%DT1kI͔)sxwl!$L)+N>D'5Zݛutcg(iS bGC> eXk{6D=|r d54or -ƋKPWJ?[p döN3Բ t֓b{#J.Iō- uSZ53)3BG x`eDAfn1kb0yL=9ų’ՂxVEW-#9@,l㓆NrcTY8.f?n|1o<AS*jj1+K8AOf r5.Ȁ?a{s,J0:0.;# .`>z^Hp2,؃V~J*D4qz @}5uyש>|{&D+v;߽~ d3pF;4Iĉ]z93:7Zk\%Ɇ ,XKiB*[!X[3 (y(JiRjלe"4B۵r]lxp1ﯶjx.̛cJ^^qPu>c>YЗDdzRPf_ FEX0O{[F#2K"fa`懹hHqߊeO^'G̑Zέ͖*Y|):KS:r()- nּqA X“wN]9X cT;S7zi2̇`袋4y,a\0bP qlHEPHKPA^Sny+r_)h TW,deřqCD^_,\ux_xVLL 0RMb-@v ŒF>`D7\ͦf/`ݔʠӺlׁczMMv"#N}ye Ct6`$P,cYsZ'`lŤXLYaohs$ɯ\d>8PR$ob08]w/ S;Sf͎|gOXl#-ȧ|@ʚHv({G7_۠s ZƄc |_ K npz`,)osHyuU;CJlkw!y͚BϿe{Z3l+]Ī#> uFcݍ~g!ZώѕǂAAXN"c.~g-\ 0lAja~L Qo I)/ZNM Xj>+K>GH֨oecM][.q!՛H𩿌IW=),߅o!u'c|{"h( ?HҊ|ߗ;6JqJ!wɝM) Sch$yRk![pkY ${;F#-zG(B~'HN|Fw?|?҄b ߃;S߬/7d b/ƾoirB5x_9]7jWw?n! SCc 9#~bз]N}.#vPSKKwDvnJ&w^Ҭ%vaoT|XQ N+}ԃO\M)ײJ^ٌRSUи$1O>."x1U錟 m fZ8XJ Q4lᆩtˣRx'Q ՠ?j!"DUIeؔgRh67gG4?]W iz"U(rM Yjz}-6ᅧɧɡ\'FRd3ĩ;1*vA8 (O~z4a>5MZi +G'G+99-Jۢw=`.bI_‚>V|^A tj[k+$?[H/ɦO<*%`L. <,V%B\oi.8ǴAؾ}+\gnqgp zoc~\ ӁԖ1{"0?ߏeʔidJ{R|6I}}^ߍ73_|5[oW"&6`w;>xi_NzOwwSبnGń+#tvDƌ^g5Kʦm3OT ٛo㲫ijBӽǜzFƏ{ƟQN3H6Nnz&Ox]pf:U97׏~vʹX@VM7ѸO&MmlU;Ǝ{ܤI?Xgw{~ٸG|^"Kq%?kWkZ*9sm׿.nj^ܓط b?&ohG7o:h@F:e .􉱛N Vc{@`:1Q~d>=?y֤g{6#Ka)(l\ZΞ3<ӷ'_mV b9~|_ T:yo _F[pxͦqhS7j7YNZdH0[hK rWP8xGxn&3 MT>KSK99",V[r/o_⟎xmu툎 G:JEͶUgkYfGgo:;{F)瞱ׁ# 6O(BΎ_v8fvoC#hMKx‰b]]!WZ|CJOLV-O{ff܊+)wL>3/R"NՙuUs#?]#>/AT~}̀E܋.+gOy=ʀօǍ3,*oݥE^r&m׿=]>ο#~-oۋo C,%:$ PXM8oE/'|='+~ǧqOֻuQDM,bovwRnw !)WЀ?GcTdIM E ՕpyއOWu舫GL*d R.i?GyJ/p!2!8%|9g9PʒByn݅]Ui6?s7/<_Ι1!0幯LEO/PLK@}o:d鮆-129{]͡<B7YEUD(!2$,ʅ0W Qj*w$}~J!KZBK,{oW^ۦͨQ<4-T$D~io[vVR *\_ͣF$TS_1=x [NBKL@9'qr岔Cp/ hI*Я 7MxRIKr:zk奿>]|ǟ~&bhd);ǜ;^?|F ?q+mJ̆mSǏ,&q]p(5+?B钋/uY@XT/wy\Fvvuu!;<͍P& mTpꋯfƃI Cnk-2r|ܹ)ܺC(;TIJ+$n/ZjL:Gl,T]ap![dK?4?iJǗ-*, kYѠ{ّ+?db;ג/ 6MZs=v.h$ىoi}klb.]͗[<'X?{ᄋo=sx><.dsZd%/W?u^:kl+RN{0rBw6\[HP"P)v ;c8͉ZC4`μۮ^z9W=x5`::ۏ=c>LbK'K]oܲ6ZYocHM^~ zk,WJ"(W c37I &["MYiq 8 REUô+ 5E#SmCh^!"e<6y~[&9)UO-w?'MX#^j *91噈%i( J1j0Gˈ\t\R^79HwWRXǛ($k!Un~LSq_͜ l 0dps4۞Y:|,PHA徜n?j#ZX!!Xj1wJ Z󟌦> +u %ۥbVT$ #(fkSNg)$P!#N~>LOϚb-M- 9L|{?I4ڈK5k5ĎѨ`WT!B쁸܀)x(C0N9\`nsGb:9Ĝys;uȐE7F;l SVRxvt̽;&wP~ЊOٗ_N‘q}~=uΠ  ,)DD1̈́CH)I܇Bt.Mi|wr]vm;PJnӶѳ& b@e xE/֒TίjO._PPzvQ߰;̤Աǟ5SO-XwWJsAKTo~i9( ECT*\;h0cd{ԛZ%O(RbR,XB[,+`cJ(MF=f:͑R!b8r/z"qtdė>kgʏyC\,Q'! \9fuJ<w^|[W^y^O"ydTRjNr|LOɗd*iZP(eٶEPd T =Ӧ\lBȢTScɵQ6ESJ`η)6+`.6I `p7xǖYnYѥ`_Qg3D,\CW}殙&S8W*7/iF7ɄkUR/Ԋexҩ4W |z`OU+f3\?/~8lw&S"ȰrѦZyW'$F.vH-#MmFVV#r.֬h4U` TVD"ON10bXLzz)k(I58*ߗ-cdUb@{7!at:|op 'a{%ys=lҰ0ԕ4$uTZ`'г-|蘞G_*l&QOBrOkRZP'M{t諏ͱn!+\C(IzSO9A≥Sej̑Dע,ɸӧ.6nt%P :RꉙG Y(I _OW"X!X@=*YW9BZ53'N;ī&Ϫq _I[ =oíW;sf<ҫ0 IDAT2(" a H#gO:Kpd2FER6J8WRM=_[wE<|G/%S(1^!7<%H'DkFBӾj_muv{@D}Ɣh/~yΉx._|a;,DN9?lx 6EHI4Ebʈ"{o>߽Oe6l[hq&ƿL31'ysoXȿx+I+ԢD$!;h_l)x.!,ns5Oq&o.W 4q%VYe ,Qvߎ*5-W!;pIQ8~^XFƒ?xƍ3.6(XϾ4'=5_n%<ٛ./DC[Ϛ>Y/R-5էfLY^iU$h?3 R[( '15Gr17{FTդRr 7<_l㦶'Z~,|V{}Ke8,V <.:h7SM#Zc*JC6xϯE?BzCMlLJ]{҉*YכlO?T+ge;.4l>e4#o76fS =ZR)#9{:svzB\dЪu]b_rVwкgqLrNkwՔ没Dl7fNX`oɺ;k;yyw{Ͽ2`2lң~!72y7o'\7% 6?YkT5*F Q?W74Fwm3u+͂o@Obռ0;?>T:sv筷pB+5[ 7dK3xQه`⁗'vOrGo>(񧞧okFkcO NW3]"th#Bq%[͆"G]'pT劔qLHsR3*qj<}մ)SrQZqc/%EsHzUEM$SlM*ĂH:r;, 0N8'I$G0QZDq|{<ӿzu>µV|ـQ!>\,q;#E#1aPe_ b 5P~ r}BF bw|S3.\h25rU ځxJ#e dsY.*WTx |t;p 0DVi n9YDF drGЪZ}m}Z^{$=)}OkXor}VG\~3]6^>GGs\1WҦ2eJWSDbRu_1o1AN!%F$ ئً\J%MXE5ḡ, 012(OD#'J1p}A մ`[I_Ϩ=aQ„4m(Ng VP09KE$J7|bJB"Hf2PcL.#k2UT ^B!!vF ~fzTW97cQOɊ~e6ˬޠB8RM lT(!ZH\^)-q~2iJ aѧPgC&ițn@4DÖ¦d%%DDT]A 0FhSTӧbĒL>д ?߹Dc9n!B1mA_H/_RP1APGkԮ`\^Q+mᾤsg̐6L|!"yZ@22Ī]L ӑ&␷EkksApl6yA&u?=<,dJRwyaIy k)1 ۴„ J$=xٖ|?*=w'\́v@r%K ? &ϟYw;X Jg?-ВY= ϥe &tuw)/EPϝ*ٱ@eD_6r*%(C K)hmrxgݰǸ0QM/YN)*\zesnGF۪ߞ] 5UmROW]߱O ?q)5ZoJ\ccnjYs$0a冬/v]n(ߍ<}y4)\a1ƚk]&fytԨe'c hԋXԋI}5}W|qSE.W ˾3Z]Ի4{^6ԋӰ9h@Y ǝ9аwn_uK{ 4gv (D1ofȐ볣Quhb%PGhvm}g-6hĆ/|҆ep]g>.mGggr6dGf*b%Y>\mݒʉ_j3fOECA*">yȳQjnl _Dښ_ %JW<8l&^}^3+7}3g"xC~b.O6Zޭan4p:;% H;ο 8GUP2^^bov>/A};ݮ""RLS.Ѱ ! 3;Ahsڶ<ta=׼:v(IY7~m Hq&B6JnoufҪ~g^@wg-/݈Q0a*a֦D#mc>ܙ_SƀѧMΘȎ2IMy6cfl/E8k04H8,9rA(L P%x>샥WZFuXD!OWQBCϨ=5>y(F s} 1s qK4:n`O *O>dUWu51nq:AbΫ m܉ =]Da"r[.s鰷Ԁ@2*VP6pR=jgĜT*F2Vb[`w RE=h$fIps?ZXoѴ#-Q?dy%?>NkUQit~k k+ÁXX5ǤNe `8*ma bcz_1j-F-emL{bx˪np"hCmIhzADӐv^|uWIJz">7} H*"\0\%_O2j?aRqaʈ"URX|O+_ix`#*;5ə(߭sF2jV@ߕZ>u_v#ldXcԃu]“:bU)id.}>8- ^-q;=3 wKK YgO߯_T.{_F5?s.iZA~l妹2z.@T^}mGZJ20>j8s:Od }@JxJ 0 W?(A~GCBq6[s[,Wk*crQ͟!sUφFeh b2-Z;#e`'߼oeF@<>6%1 _ ?-3 TC >WĨ^aYYpCr v1J%[.WwT*D~b*ɝzNѮ &9O,2ѷVK)Uj‚hw^́T-%}bTR?D4z -Aբ ~>j>/GVü @cVJ C5x=YŚ)E1ݭyд=еsg1 6r>>#*PlY}{BF7L\wUZ5Cr-xA?z~#]8uz=Od hV/rVyWoMi\ۈ|@FzhS%TOȚ^ecw&\7vڽkЂu'-rAPR Iӣh6hoM`c}2zF RR5^<˽J-*pMRX֝ KZB3\?¯n?=?s`رc\sMTF+ηMgF @,]H#n˵$VpJ[L7Eko sZp0PB.U5dxn[52s[x?PV 9fAWumSho^Yq cyW`MqB`otv?F$F/!+,ddXJe_[[uTAF* zQ셏+J.Z=(sLe:}Qk: (frpKkL>3ghw2Ygn$=@u.֧c] Sjsy;-u}y}ɤ:M}k+?=H+wa׳+PNJvq\5~co`hxwXܧoH=6ǩ:P}\5-,ON3"Ш.Eճ#VDw8z[NLKsC1XԬ{6PۖK\HJg˳PXOl8Jw_Շ,x0(L0:=4fZٜ!%Ʃ$ ؒ=A aÇP:͈$yy7k=ax;(ݳطI{>kh?Kb$u e3DGzEOR!FW?ާ4Bu+~tB,HV:}nzVfuTV̜5}4ve:5?YgH}ER$t,c=bY8S\N>yq}*6[i+}fB**3Cg.}:qwꋉ:]eG3B?yߋo yM1צ0c\"Yv;kohXǍ&h_>i[Ӫ}LbO[}wu 闞;R9ޭAk߫| 9 z{w4R&1{ͼpHiJcaEey=lzVjGHc{Tu&T{J#03t}ł<މ̑{{ɵ]ݞ{{_6DSICu$ Y?gg:?>{n&ZtW Hn&:P}%wfͽ8J6 0&A`BIM.rv OyMW@~C=. IꛕymgXs޺v񅪚(s.8w]xs^rq3/>T{z&Q6st-*jLɧYy_uzƫO xa2YUjDϷU4<"Zga!kxɓWDNkJӵԜ-980x/ˠ-rT_I YO-~՜tFY |Ue}rx*&L)"<#pv+rlԗU-zDAE> ؄> [4l[hcP.xA!=+J_zw~9>zg% Qs/zGGJ*&[GY֜]r31>m*w{MR^Q}z3"պƌ>wq%Yk4ګ~sb?{-F0hϞ! 78,b%FOM"k#")y[D73O+fOEN[kv``}I,e[_E79g*$[e*b_'sަE7E{R!lQūUcZק+7:Ψ̈iMH;i|3냫wR˲۠vE`ҋh~] XcKcw]?5"xmwcbP} CKi{|yoJ>f#r?s/PHUk%ڊDjW\qpilMs|0'LO[vE|ƿ\S~WƩL?dR~҂}̻u6@U,HAu|a\1޲|Go^NdhYۜl{`s$N`ɖÐ%kU`\-͎B/t_oVJyTsT0W Q1SHx"l!+I5{}\HZM)r$ʴzEz SNăJZHB\PhZwh$"R"I.T(IfBU xX҉<8+3hcF3 P2ОB>O\nAJ3O2IrJ =ա`c5[HZ8#IЋ>! YF2|9@Ψ붖uӠ00TV'tgJ7Ƴo4)W)?bغ)vmsy}ٍt.i6&ܸ|g`JB% !GZ?_k. ? pOKwk =sNat1eeq<0)沵$P %|Ùn`Ä6i4b OZW/ecI]icNKs9T>Kr}TV(k!WyhΚyjYsY^1.'mv`W*8 ;-M=h(D4f]aΔȠSrP"b,4b닩zsiPVECh(Y[x z5`^&n XU=+MqnZ #w(D4Rkzj+3.vV`Me0 =ΨJ,0v\J tz/ħ $-n1 5"q?Ɗ#Ȝ[B1U4aʅ*- a1(`ANLv΂uҽFrӂxt 4R>Ƥ7_(QRdS  ə-Bj~_Isf6p*T/ZSP־kA =Y)WDAeF[j:q b.vbE_(V Bˣ-0KlMaxY ˰^Q۸RRg=y/6]ZB7*gBgZX>V=/C-qh; ѽdy\IS0zTaL Y߷V}А d\ѹ#Wܓg=yVF)$pFgnljf-xLf=cN m U" !I),#YjʇYld7c*L4O{M]HZ 9_0IibfE\cQ"W$I_ˆE'q@l%,]]]d +i[c7%CX1E.rPɕ(Jl$;4bg{&Jĸ+lTo0̙#V ,g\tg 219)j˥2c+&z:CN%o>pEv Toן/Jeye8䈭X+aM%HCg.`ljEåJ*HZKҼРPQg蝻=u=I*Vm ib`p9b"5îto\ĝ8"E%r'Bu'av.znmTmXq߱ũa=}I`uXmp8.6]ou]o7[/GTfɢMfLN,%:6o#}OܸFo㸿ZACoߞLw' z̞DzyzVz=™4Tnn:GL5uWv:a5Aedj&[r+j^r'6SjѱR;bPO13K6.U *@sn7 ԜRo}+C ?(G>)8s&WG3q68\] ^׻'ﲟf{Hv9i6J%X4~嵪{phbR̥w-v81_+A@M0㭪nάe$_.YJg)C͟EQb p5^0r lfW(:WP4C%S- f/5fF)4Ry4CZ?fj(]M2w^d0 S 4r"e6[\,iF: 8o;^2.E q>?w >P˹{oMT,gm?]cYĽ'5n^)됶2}/BGuf ;$hZ1JGt1>ngl-p-zK7ΠFYGi?Wg>qqjiwȷcKEE61#Tι4mH앑gREG dwQfh1U G9'_ԟSS7zud r{"QB<+|pβ,وGiHEz L(Z΀IDu"5rԢ+=&oKZϫ/ᬿ,\`-{#L[Bi Z}:h3 Dž"*+PBӋfdckuJ"(?iΡ~gPgE|^'vr"8B1q 0*~;o0O Vv[g*|j˺mk\ L\>icM/A(-y]TgomFȇ=ʗ߾#_w?yA/tYffr1SZ!_) W*c-C0ﵷ=P 0q {p[ia<}`MHHIah@E|,!mQ 3B0(_QZR.*i\&{ff@ipڜeRb[*Z$`ڡ2u:ϹzX~?$GMy)=; !e 1)X*ԔFJUEN| .BѸL'=q+wdR!/D "LGQpk̞$.싉50qDm`is Cw { mÞӇ y}6ꤍi3_>z}O:מZuORU?nim1{mߩ3$thlzocZ1 wMjb\,o$؃kmZ.- F^PcE􉻰k H`">nH8D[i,\)KZ0qL*;+C]݈k 8C0 LcBٶPЮ216UkrpkYcOUt$|vxrjmø5NGrvlݹ-j@Ƴ8`o~WZ 0X=lT\Aq@;=GccY҃B {l:_/ TeFV[$#%b$Ոy2lfFnMjM4tDqVzСW0*[0DE&uc΍~{9!TVr6ʣ.@̤cFy-b-⺔5mCfQZ9]n]|}'2Ep+vD#P ޅSܖmN&0$0Z v(caٙ؆vϸ\u3/HRRe;᪄BJXChIk\v}O;+m=̑򋹱h P J*H2†(_WsS+i'ܛ%T!3LEFN#Q—#h.,9|o-!\f8C4-u/wIG֭uen~BFW<wqE/d^mV=[:X \XTS۸znB;"0fKK2jqf>owW=XA3z>q[ekdaGŶQyk^E52HN>>޿λy!tmKFh^[xn*'KTn4Ɣ;X;> _\Z#ZƼ.䄱#x^ H,hϝ33F*5ʰWdc' XɆ}"WG' \E|Թ$ө Vu8<`{"pKwJ1 ?1$Goُ9_5k#A kZ;r^IHF)VJs jePֿ}EyjĊE`(,ؘv@C׀zBNk2;Fi*AA̙ͬ*mZ4#4'8G!Ks@`(^}e݋T<+^{\Jr&e%N( ckE%$mk8sw*y 9FlX绍 {^v \4v*ߐYqTU_B.`bavl Q#jmjNX<aU8WE+Ca|s|a&gHs-X@n+Yà#qQ wi/&nZMn.iwra7í.VG3Q=eaLR!on VahdSBlQ4UjzK1$Ql<_ Y;xz:dd+Zo.QG[ ',*VD@xL)ۚ1nR)Z'T W)\&YhKw6k+9mBfg>Lz\b8#&#`$Ǎ }"L沲V02qj0#UŽJ.y\(HbXdW"ft7'@}!t{4O L 4VH"#h`)oJ3M,R ʭxWWG,JŦ[6~rJͰՃmViz``zy6zO~TN#udVǵ6K] \KSɭN8HmK17H\syqw\Gj)2ƷmIq5uOmpscڌFs"6b/mʚ%J#MWXdd"Q\]ك]%=-z/鹤pc oquֈ#[/v(V^I+I&x+36 gs]tO6X@R-e¦JdЅSef=5jga" yc._oq zvu/l7*!u_B\S8ƱAƷ뵯evoʜ˱bxpC:f AhH :~e1p8lK%x"u=Xj9>wޚP+wUj4{ ȳ:#$nP.+ўZpBp6.B ,Xlp=`Ɍ݈ڐpx 5Ewah7?gMuGQC}}q5|V.3%P;`Y9~aYqor)1 }} լ ^Ak~9gecjm؄+}~ ]QcJ[ JRET6鏝":+R.\3d@WOeҳjUЏ\Ƥ_D=/ތS! m y怒#-Lpv7h%VT/V`gi'-_ Ėm9EJQ}6YEUzkE\:D!X]L%DexEZ•$d_ 1^I($C1F<ɕaK sI92!HʨV sP(cCڹ- Wryh͋ P-dm,w짶zOdwss  (H8F O+^o O5 2b"FrS r0QEQrv+m>h%7{C p) k>~mBP񍳇a O6mZ?;?m+]ZkstI¾. ƥEƒZPNeԏ?moL"`Q P 'ʷMMqH6t_9mF>?WPqB'6œnHpg |^5W A]Ƌ& X ¯A)evB;*;xr>W|oG'Խʭkx=u]Mվ]-NKܟ#68D!Rgj5닜 \uz5Ѝn bMНqruj 7^31ݹ%Nc .sb˳T46m,pTh,[N^դgH"6ﯿƆl*H<\dhiJr9U>Da`z^GA`(H?GkX,z_.`\<'/ykEo[5ܕhB TW=y)y¹BM6KALna;vC2UYb0Nfw+G,Z/` 1G@V.W̜ 0cGbae(s oɎDVYUB5Z6-EO"_ap6e=ͥpK)xpSBx/vpn0fyXbZo"{M{bOyX:½*2Dd{(#$ 3ͳg!G(Q&mz0P, |.qXԐ`I(\ 0 c"/$,U @$VJv㖋DY<4I%넴%(Vb;bprwFRH0r\ۡa-; łI`QrEudf?7f>HJp&ie M:f>m2ȖHLtyUhr,2qzE#И'[y҅ '|Icb}5෯`rٓrfuкןUx57iwO&t:n:^zc}kS}ħ^>VaL(a+1E&]j3Ƃ%>mDdu$l#CxtY+Z*ElUQ,)NqjeNJZSJtEUdwl_"Nw?sL6DKS4^1?H oj m7^?a/!GkNE284"=bnhk|_> c4C &)sn>cOf6?YLlRK;1pϼ~aG頿Z+[K]|G7FJBWB6Z"1SA,XClVʠ+ 2IZ8MPFQ=mm-T /*mǰ?~ٳPsqX fa #֛aH4Ҭ1DsD3x: 2ƚȃI t}c9kT*=q[0;3 /WJGƏ-#+"͊P7$؂j\$n]0ÎzM,$IІlg2B "\j,ҝ.ٟ~䑡wj*ddQe lIJ%SwwN)ef_~¬?*UC;K1bexM=s3(vGڰX.CnwKkk'*DH#+ ;ApN|д/c>ls R6S;_& ](,q b@ ٘a&zן6B-^G[V +L: bt3,-f1ׁUү}nn/Nc0Ś^s.]l$bf3qA|5 Bg2_Tds3߲Uaq-p 4a+\UX 'xbkor zeQ?LeT *Th?'X!Hwqi(%DkؕgIV~EߤR؄C<".LC%147m;gɈSFikWzcŌ%PB ɅeTOœep[v ^~ \"աXhmnIh!)`R Adh&63B cMdIEh/ϰ}[|;=y‡}OttşO2a@gYں:<]Nȯ񤮻pf x o a*,3mH܎0#IJ _.=ݭ7,O!BI3 O4br}#Hd E% ϓ'4 afbě'BAhU3LWݭ,X7`L)Hi ret txJ2PI7NhTl˫e' ˱GۓjX)DPjlW2{@#+.V)=t͙Oȸ4|"teQΗi*"H("S 0=焢F,կ_k:a3$"#bYWK0>K9qc o$xBG9[dX.( X&t{?}/Y߻:˅ݘSܑ͋zTc?1odv^fC#'ǚD5Jq 9HFWJ竬SEmGu~ͿnoN9!?fgf\?>5QzMd$bS2jvFJ* u=|jt } ֊$*A,9l8kX0IeIa& 漥lZ45%a%P(l@5l"Dg*@wU '&?"_xGs~n»&ÄoӞ k?КFUHL^ B:mFJ^A: -qb[bhF'&B1 +ű8YDfi!Qߑ9unGPޕP2Wʳ/@P(! 0\${'b yS,^&-oBDU^tG>jE?<91[D3,d(0{/j1(M7jP;:k5mp&[/ \eXlV1އ STS䒝E `:!F},x=8t'e4lBӯzAw#\1hsDbXonN ׿]en| )bN;Ft'D$@?* T "tU.\GtQUѦR7>_tN1~sW\,Xxߒ$s(%i۳(a3S< t/t@l0yD3 jŸfp[؁16jZ<0@(!,vwwuYn7d`B=^(Hq8K1f 'l>1Q jd!@;יhj!iDttνQ]  b mH0ݘrˆ9)ܶKRiZ6:hliYu:]ge_rf6 'W~DI !)bWb>xR9q5Et'ELơMc;ze?Y2?DD+xx qB $oӯ999 s>s F#Oy na\<$E̻Bg.Č&D'Yȑ#Iqzkx!f 30,#_ @ˆPm\fT{9)--::S=B!/Y ,CϰpM9o(" ʄ nPjnKku 0{֬/|ǛoXDvym6m "X2^ ݱ~(?h!%k5| *re#SJ`f*^ߠA6b]ԮkYmUI%\Snc͌byZbE>_5"iq.=3 |cP 0x:̩/9s;$!8ܳo<(×9ECC(\u;=|4 =Aʎ!x>ev H@=JmdW^3gu4{o~gTkOyz|2Yx}m+m0aJrȲaѿxsow9>gzf6tZ+}cΝVs嗷 hc}d7b h?!0M5ڜK?ԧJ-b|zL xm:l\jP~=y.GuʥZ$NRJ/J.-U|ܫܵP8){ř3\f "FtGxj퓼*oqğ*.1RJ w RZ|Ƀ9a @)2To CnKJKN1 ~{K,ӿ\+"4l7/ 8[S⫍_/141^z 6RRXjVte%.|[8Y΃ߎxRe)Pۑw|+ϼF'9@f"+p4&.x+{=p3{>9wn ?x\z%K.|$֬4q7"ɢ a|!5/d;8Mywyǝ)A#(Uυ.-Oۣwsxkh_10璫]Gg}ss~Jg壏>+.+kY|q26bx̲ [aeBX j6kq͵7\ygu|НJ{p Td5< lfz;Y̕1x0Ar0RQYoodf rU<8VPS/SZv!}v[WeIvk\|_Ǯxk\v%ZKƏT<‹]W^xW^K=MK(_!FGI!bH[ώeb.vGQkBaUk$#~ @CS=C<_}z/|@+Xf  5nJ ^lᨳoΜv\qƢ{ǭf*bsDW[e{oy%W\y59]0(YJ!@Oninu f6Y!Hk+˓t2QQu$k?O&L͖c?(%Eb*FxgGx??}?_!ۙ<ወ_.Fz17~0o|4\Q>XFY0w_xofe+^ /_ә̇c-\u7ݞ;ƛ#EGsupj[޳+QzwBul1b6f?L"UTP؛( 9X \u٥g}mws7e 09&kUHZ cl: i㢊/7vقses֒`M1$<ڀ-ŗ]{[;?ţ@]b;B"JˡS϶~qs(,KR tMN BEh q93s{/#7yotۯۣkW[痳L1fmb=FTw=|k(/e9eHy+׳r*ү6Z39S+&o6ɧ5R"\OC kʗh (q$;l?+WFeQRuʝmiF?|oʎKyZ֪g'^ { ݾbws0r|ꑛoq-aOodyD.1C1̙͕Ϗ>)JIkV>],`Øt|AB\U=o>~7~owW{L<$S P)J[+y7|GzfLro?~w'xΛGqaGx|0+s`f؟y?c_|Ed|->Q +A'=vfݷmwamֿ6o_oPDʾ4O0)lH7-Q~<7p9gǝpQnja$Ovg:;O-5S_|,D ?Aq߾sq3g{;?̚{dŅ~1?yQsfţprg_NyiG~DJ ǣߐ5_J F`Ͼ洷83qo~}=[nk#p+G|{O6xN{G>8(/$Ad±8'<! |s=ĉzw{};=ή$\hH.Cޘw//m옏na ?㡿ʒQ6&(T$}Ow\Y'|dJ81\_~cUUh8?m:K. ,JHǀLjk-4xŧϜMa_.R0 hB;_ e̖>4d.*;}Н[y"!JΞcZi 6.fc*KVhYg9ۮ~AKg V/aBwuvP" ;@0'R+D>C! y;p:l EX'n3V䋳SgrbMDfz赱¾{}Y'`'礮t67C ˥ ?}gs\BƸhPڛWz |!MS w$;mNgs^&e/ʎ; }WD1x|>MSk;1.f;;svv;}3y o.0t]0ck;3cuDfwnC}9zw3]ti4 d-v)jo~wK!>KD=B\5 MK͝]]sko}Y|g:ӞL:h Ӧ[R~8B\oW^ Gyn=*faš$wEM%8O>_ksC>Upʔ\w.4M~:n;=Ѓ{c+?sUV^)3]jI9|/BwOw7{u]zQn!DTdO̓|1H D1{TnE\| σ̒I7;D2bAk[G14,7g8MvĆnT(MȑvM|?|#xޔ*?Q{]v_V[c-ͷʝUBCJz0套^~e!q]{?}Ӎv$W3㜆۳ﷅ[!*?o@,k/+˭/[LCWg֥Z+P-0HZTmEXoWvz0ǟiG>>H"t \co3{]&O~}O,J^rŰwW#Wv9p<z>\LJevxX}/'2dEYtO?3l-/znSO?|~6s9cywou '@K_iU{\;(\`5;Yߗ_N`ߚ{7 ŷ~w6?ͷ0ũ1Tafve7.u ~<~p_~﹎T87!9IMAf!9 DqiM92#{tVGX@1_z^{wg]pezӃ+Nnj9q? sÆxO=CB33 /³m#g82/ (G*fCu6]W^9/̃:b)C5Oj] &M=v513:K/9xu7JeĎ꫋^yVh .v=Cgw$/NܷYJ'yэ}k,V%7woN뢫n:r|ܯ;,pZ)z22cN8;ѱ͎3;gL`~4RExZ%&xy\t* n,]<ρt&RQPȕ_}o $;yyC=t%ybk:@›wPJ _Ϛff '^{]mPwg}w|؞qww?~^| *8rx9W7at _/}a R`#["J|HDʩMSB9x$Ez8_tt--d'Y(B佥3,( lNJ8Ed ipsS<~!+Tpޣwj[ <yV:tA #z-V@%ܲjP2%Џb.R+ @G+d hc!\vv'=C  /䉧{Nڲ)eaF:ں !t$jQQT)W`}W^qf-E,̝HSgB6K24R(8|E{#CHEѕ"Vf3iETmJDk[a>&A0>:, nkK?J˳B Y>]'|:ݗIu͞9cT.D:W fϫۿ9p4$sٙmnH(tu ߺ:<俯Ƌ-\#,kJu\r7eWz.#腦hh-{dw:0 p믽4^eU=T$g̬͜[[Zb]y4nmن!ʧ3 0&fE=UJJI:`nyuI` a٨R2`!o?6XcFgrn;鴣}/g̮Hvx GbK nֿQ$tֻ̙,ZPz8Kmc56ETDߜYIgZb`'KYuN:"pL9lEsk#0cdbn5Zs7 ׼Z:L;gH/>xO:x6XU,~F&ɖ4u{:yjY(A&NwO<{Iy`|;}`OM=x `~]{>mzGҞ2iYǜTU\rIs'3g+í"+dYG@f%9_?\c_NemL^(v1}sl|[}رGa銾l;#2dKqh<5'Lbm)Օ2cn!!)A:`C ~w_FDB5`a1*(/}]v_ͯ*gwY<5s}%݅# #[lхH (lv.HM i%T1Ntࡷu[n.KkJx>Z6r׆ɬ忝 'ipA>0V?[o;p8ȈDsiC6%}x|;@&K:N;aZ OT;:̝Zx"4XJh壎>ԅ}鷃bI :UDsyDڰm5wvCW"+pSEjlWWH[:sYko ΞKSNsN)x#;gt +4X8'ǏT~~ v|_#wāy2䫡Mo2HEDB;uϜ5`7UmP]r d"uA&? d"Ӣ& D0F+P&=, 4S٨TNMg2{S (\OAjd}gĉM8ERyODj"PhS]Xj+`:6`B A'dZZ.{`6_+ d,@`ŕWolG"z<*9g`:SI9!d?B$9i"- D>l2<,pyJ#lpiSA:Q$Pc`,6r` Kz@wy/bÇ뭷^#e?C>De\ߨT~hB#: ;IAŗ_q8͞;R-eu\k}wR9z%#}gPTSMQO,+t?څޞsY  /(mikԆ8[_zeuXkk?nlX#de2XӨ[GvNzS6 fS|Ɔ+,ҽұbo# ș(˨7j>_,VmM\<ܝȅ$"A4VP#]9D в-rϭ ]ֶ矿ɸOvEd$񓛥Rs%Rtю=(䔽vcȀt%_uAF[u#;Hvg*`5\f_{=<bes/J6x3S-IwZ}-B0)]l 8ɓO93y5NQBLLlVBÔ׳[X^?#HIr"M_v-L ZBCQ}LyZPxPls/>A Lj%:L v‹$L "Oa}-~OE/"_vsw}?ʖEtuZ8yrٛjg^zc*Źw{g4 Hd} Ϊl*cw?ovoQ۬6Yyx?~!MWX"[ٕ\'ӕ<AGke?eVZsŎ9:y3%!,ޑbK-I'1ciH!eBH>1%,>"ôukѕZЃí4]}e#ۻ;}*)W.UW]ÎͥftɞbW4Fk{qǑQ= ]Q:4$Y"fĂS#?_DPjHr taGߞ{í7G0%(_$Vʥsrz=>NGW3DT!`UgyeռGǬr{;)x}_?|c_GL=N<#8F;afG6vLܤ+-%\a)>7nƬY+jᶜCWw&ĕUL4:*/h?k4 )&sݩر+)VXvZt',뭳_N׿9],N? IxDK3!xsmȬJ#,( 0B֕/ W_y忽3/< O<~wIq&IqM-~#  KZ~) '~bq1cV2I6Z8!;xTqgMo Yd9gLn'x]-N/yדعsCnÿqsGR<ђ՗'N4ZsӧM_k͢g0pŸ6 K,̐i,{os.d VG#t#Duee9DՄH)*U*E6QEW_ipjG矹;%'`RWkVa |=BL5z 4/g͝SU&Nc} #aƈ lk U7l?sZk $`+a*=3ȆS٣~+[yW[m&bKk#H  wʱ{ Cդ_~1Q ZK毧NyGB뮹rgxw̝t~хg YҙT{7y_veb=GReaDDs#]?ꅋxs<lZ*ﳛ .Qtͮ{2`H?{Yk'Ӆ溏c5Ӑ}Ï>V찫k{)F \qe˙bx烷NuK0N^hsP>?f͢~3܋o:?<1\ I&Mnh7=9䱆~N=KGl>⋯R9xdT7_wqMn-R)D ,/fu@H:xĬ_M/>n,tٜ/B\kx㍓|/;Q\2~H'3Pou[mf5dCyʿEoQH_ivѧp"m|KzSB1CxŦN>㯻?yo#FxO<ĻkL~DT+T]xBϟvi{LKK3#9>|O>ʫ 0R:7CH4GѝJX THb8[fc0wiwn B%"@?dL*Rlk{#r!GD[ ߡ_}9ꄧokq/sϹC;@d;C? f~ lw7|3;JBan-;.Cw:䐃>M6hԩ,;#Ț+B+:CJu$`4t-5?9Τ;|}< &<hwB?{'>Nzjvm9}5f6$;W^y饗k _j%8}ʅP|?qرsH0+fL"fͶ~o8sG5\N!z<^7JWPclCw?b >kiAr3T";CɈ:#W3NAfP*YgDq!-Vs5yǰO-8`G{rذa{aG;#/7%Yk* %"* juWƍў3r кQo-u-?`nYe mB'yՌGtnAr{Iyk!,n9Нw`Rx_gup'C{hwyerO*ݢ;{A;ߝpg#0"C3hYe ˗ҙvVP7,o|;7!h|D|'v‰G/ҷrVlV3W~΄á<6Hҭ4R`‹4ś9u /lZssϋ>0b׭QvP# ! oQ]ҳ { ^bƜCKg0Ayc"W\|_./jk V_eB3``-<'y3O ZᖥWXl Bx堗~PW1P[Yh?3x/wuV"׋lf񣑨33< Gsσmma-5~GQ>rqn).rGvq;e̋슋.|3Ṇae'lª>ØJ"Z`Xhr]v~GvvaI" ekxZp-iNBz'^uD)DzM33M a<K7rc]"I]j܉d*B|JH,/}PbZf`DvaGܖ~{n3>*@beqgmsxѰT<?y"&+S.򈌕}< -/f9d1߸EqWV<ԵgI^hFܶ[k'}56`DsΖdܚ& O]UI;Ki*,FwJSv5a*#ok$ep`+EDɖ(le9Th)7-QJLS^"#8pի:NΦ<n 9PbUEdmGcyOBՆnol&|BenJ4EnZ+4tv!oƔ(^óWcg C>0L=kPQBv ˻\KEThV|)֔GÕCjjbg[CK+V[z 7uYw+Mp-u&KBRKoΔ<uv-49~㬤<2y_Fq-P+S(F !jȶTTI{P\:`jN+OC' k w{Giֹn3۠snUO  1 ё#3=g i7svXb^W]/Zr.gM6S BbXWդ\q=CGm_|[o>hx}`*:e3Ǽݷ|mRa"L(g ET>*E4 =0*AB@F_,VJA'ZPO'S=%@+HcRN* 2$3t8ɚ*3z~05,FHG/Pl֩xw4m>pjZlN;Sg<ؓ2}c&вB+ hQ3UN ,@Tb[FĖ5OoF[ <3Vkeyxp f!X]] 뽃,|ε:!*"u0L֗ZT9ͬN~G)`ɔ?hr3"h:-Kx]q\b>xʤ/h_p1V:*P*yj+4k.2Jvq"HV0X遞6JT/e ǹE 4cm-|1ė\xB6C"}pUW,8pX@ɂB\SL臟f|.d9+6D< 2{a!.L?40h WTDžG1B*cMSu2~Vg - 8ĉ<=8{#xF nOI'i P*e4MUA[5Fհz6΀yq3`ԼED) 뇛L )@hVǸ$Y4C:$YWOÈwiLB qp:͕h5Uft:.#VQJӥ^6HpN[0ꫯeXr‹.3d;Wpuw<_}8Zmlz<˘&`WRq󤪵/ۜ [ʬbݤ z~SVK۴[P1%1L5 aA -K4^y͕"NܝX!BR,}k4v.579)~18nX!_b 9mh5&^ X Ehʬ*BoԈ CXLKRA Hqz, .7+ز$u|^zcń, 9VQ8o@hi ۄ3Ez W\nJԅ9U,i $gP_^U9C,x?<|271ܾ8<,7@:>Yq!#,` \0",H`]45f!!IiN[͆Pjׂ`XItg l0>PkY9 }yϚ9g '1R/U3Ajx & \Й^&3 _')^q*TXi9(g:'byeKeZM2ԛ@MJ` +D/K1mD9Kt7ONCw0(_#[o%/ꫯK^2e >B2;<-+[Z#ouuuz-X$K!vw J9'0k%Ir89<{!Hg}AR6y? 8vGO dU]$]\'\6U 6];w̞=sc="Lv$1DlKttq1ru<>Y^tt Efag(zތj ūid;_+dH@B7R 4bXzL6ã ǃDhq9IC걕b928ICDQϧX4Fc%Dd~,^ÓGH ->2'} 9/S?BjAA0no b+-`tٜA\|Z܈3Ⲳ/f{YNJ\_]iv@ @Q-WoMoٔU/p P?:3ڝ(O͍9?Cp@K/X֛ЪW^yfͦr<%rA *sݘd7gYmp$[pd)m'*۞(}vMvh:ѮTVy]aEŖXXu]+;NJD2jk/2D+ GPcI!N+`.K®owmo k`|T4$s!i`\KjOD!t >)8X\Nms[$Rnt&c+<2y.-xAHtnu8ae/ B7y;}ӻIk& ES, zWmHSr,x|8d !^F٦hPZ9 "JV[T%ٱP(gxիj02Ni v(fGL#>,n2{FKIBݧK4@,Ko4djs&l `PG< Mgo&zOM"q0m /K kD3rDk['2x-gAoh$j[ꆐ"3">rV$[MX>$Ddã8L[YZF x?-}MW쵗w^|*ޅ;W--I X@5<%4ME3h ^1 ,9]|fXpM`Sr]N+ Զ937e%i'fI%QBi ͡_)sJN?Kx^ ֡qG8-ȘgJUӃP˰RI[&&UޢO =ao٨+5<w~7~,]x⽞8B-|\`AB"qMfgӺ-Lj`I|T?\e)7:z_)%nO01#\YX_ N HXt{3BD n0Ua JN?93K<t-C)k$dU__Ofإ`,] h%bu@Z!׊\Nܔ[u-É"ާ#7twXMKDu9l1͔&,*<-"C` %^^3֨չcxuabiBO Gw&JM*&V!:Sc" ,/^` Wߝ:tC{`~=pk۲=&֪e™n=[sd6  I~^]!=+Z$c= tbbѿ_H# WC>m2?=n*4tczf*H@c~O<%p*<.cQ=I8%d L B:a$R~n U:LU Wt-",\jȉ*v) Sӧc]vX:P_"}D|y 5 ~Ky \;} kPBd!ρ '",j|7Q"duBni)~4ΰ#™`nXwV{l*`r2~}0KdԮ^:@nFbEX WPXq >/ +RzF$~D UcFQVS*Y; V rA!*Tc޼%YGfQ0CúWqv6!K9c[PrSai= $P !HJtR4Mƃύbi0-/kPT }>zV م~~a:>p|cC[a09%W8;(6ԃ12<ρQ`̪?Hȴ)06dS;,au*?'iidǬj5l V^ZnqbS1%[&,St+>k8kj;Og=j3AdWNO3ElwM ˜gwMk:Z_p~_SptN)y',p '1jD`(NAc$SX2M 3O̤;NN= p|1 eBhL uC$VwYg/&baA/ =9kax.R [|1bthq.mK7a!:D-m5o!`!ʥ;,g!bM7و'8u =Vc(1X.|aģv]5en/)/HDPf`b:4ʑtǞI6~r2=Z$s6rN5e_Jlq)qVN .eWiS j;:nvl)֫DžHL }j(v> ѣZ:GkYY﹎~~luDN&2״<4Cw m𚈞ėKv옌=/w5]lYk*$j@*ST&%n)XUkn}906)9uHޅ{xdcBټk~-M{L\'ea{] :͊ے&+Ƃ>aas%Nո}Lm5B<)ćj0r^83ט$o_ 111:ˮaC0:KY!|<];1h42?V yak{-[&DM|X%'-ͧW?!qs׻2 ];Ę8kήxC@,WAGBzp.EsHڶVYO 88֖b?zѴu> M~v2IjҭT/&F6R21X6>.;HOԒ{q9lJoE+rL.ε0qYQސoij[ ~*^)+ *"?IENDB`n+Z/b\JPNG  IHDR 1sRGB pHYsjIDATx^gwgfXBx;%J)w(Riq ! ,$ēkwh廷6 '{vgy" |D ""Ab:ӌ^ ̸[Hum#Z1S|LhԋTZ`Fbn,/E 䛼x6Z4WW:WZ:M-H+EםXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌ      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =NA<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/K 0 bZ (  x  c $`R   x  c $HIN    TA ?"6@ NNN?NH  0޽h ? 33___PPT10i. P+D=' = @B +r h'# p -l1a(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; = 7> ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { } ~  ?߈+ \˱z^"nD"ˮߦ VSxPcJ}M}KmfFtk3V7Z$V*|1xF`E"-VZ~"#r%-^**:q݈F]m -|5j/ADdʕ9RW^%UI^Nh|o'tuMъ啌ΌE#Iunt2YedJR$h[0cZjG-W*5T-t6֜I^PaXH46RXr%3u#e[+G%ʾ S%h<=-}\|'Ӄ/ UbH^UIr;/ %ӖOL 1L]ngewzLET-in ʬ'_14~Ay^</ir"`SA,WZfH>lB]׵J\ DܭؕSZ i$oEJ9lj4Z:1j d*fEvJʈWLLz$sB4a2L48V$aQ-oxJ/cڥx*N+~e9m<a òl_,\7njhPʞm e'ud{' fߌ/#9d`۶nf+bATgN+~,iz9\f<c3Mu*ш\"W?,]%ec,|ee˄g$b4\ oie8!x2w9-2JsQq VԲ3itm]Snʩ<635:gb3S螝MVŏ&ONdOV);x܈ESБCk0ŢeJৢ<hX;GnRos9OOFZ9jhq'R̤W*~lD`2r%]1j+#xXpjLe+5^9LK%6.7,$kƙ[Ƣ[^PNI)+X2֑9br|P+"Ase#"Qu Y(tǠ"g8D|SRQh9H8tB/1G2h dˎeꌽRfX1ߍ:'8jF+l8ٚ ʾ%/Xez2-wW0̺c:۷lˌfͨ9^cVgQ)&^9}ooAN,h A J:9D*ɱ`IȪnjhO֔[h@Dcr!ߢeO=TuW*̡Y\QQ DZc{&-c$hv#a7a&DEm1ⷱ]Hu͵&HV7 Z0RXE و.W<N\4QJ6Y0VHr c|WLH$[Ţ00/x^CAJD~q11,N#N."ˮL)26:SDul55A%/i&H'Sp8 Mq6SNv"cŏxƶgCieb_yg8eS["l]*/'TdJey 2fkXɘaێdUl>F g!j\\I'HhĉE4݌0"2*Bz*c֕lÎuI AHX26BEee\<q̛Ӂ$8f2D Ϥeۏᑘ^{sxŗGU)|m]$VO4-\"Q5Xͮ6ͤ]^9!]Jks#=M%em>kDyo$3#gp *WY,;Q*/(Z>h:I;GA$aPERoZQSs$gDI%ƒ/[uh)>cI0a[ep|<;|84l82lOv2- >w0ʄc+.Ѓ"6B62c;z饗JEʤR1GL7YlFJv1Ah%:eHZEׯt^:W'4&u|SBgf4a:6x|e`Tcr{Kk*E8D9Cr;'qhY*ʒ ~#,9&T/"wbf16dP=^{rž@҉ayX?^\pWI>Gff&B+WSʱ{063b{+32o<S>=FMkZ;w >i%n%ȠbF^P  lz[{>ݞhnjQףuMS纚v>Lx`Wט^&1=vK$uf]1)iB82I2"ThokbDqL -Mc]4c bIòI[\q$%+ '~ ~pR|HSes:"/{+*ܘ'y 'b%bXq6=AYִ睆,*-J9_7ͱ\#/0ؼlDSlBG1"3 ݛ[[+qp@$pѐ$`7KK%-ֶ. r'㨳KG{zT"0õ*% K,Ϧ au31E8ڥ {9Qq]C)E$gzY-{,b^B\5XeKQ#JFXډ4BTjLVd&or᧟~dH?㘆x](6Ԉ*MN[D&CVLzZ\#crOݷh(ζcpt*n^uV(TgM$RJf[qJl( q98j :7Diò1CODK =F5b#j^:X"Fb.4i{>a&LE%{'ZUмxN)MAYs\ht}[1_U<hM_@*UʟRbؚxSXQko;!Dw[ILM*BX!ړP@<110_ zL)`\Ωexq_0g&R ~QS(E| #mqbpb)ݵXe#&A(PV ,˕eO`YY,!kScXC:3@V5{.dpJuA]hb){E5+"G'bE A]{8p_+ԱX_3_(M8p40Jh='?1.9 $ҏLܵ[ݎfxDC*D|://Ҙxp 1=W0DpJNmC- ƲbXؕ'x.A%ՊKZ(T25u$\PBb(x _*B$F U>q|d;M%"TGNfS5x׿5/8ؽ7xc}ehW^yz衇J4 avɕ0Z@;OQڵD l dok*G4Ym9(R,oŷDbfBڋ^ɣ:w bR/1#]'""v4cy_ Ql (T$X$&˷bh+!N:#̪W4Ǝ23(&0WGzDTa޲= >a;A <0CexbxcKX8!kJ2!*Xpo&eWClaLDpς u:O S]!Jڗ}󑛦'pJ;RcX$ㄗ=+&G9OH\KJcfp2SKE + f}`r| X(ZAK8ߧ9_*7'HdXU,[21 V׋8'wI@"P FbJ N-D") $(Γ ȼ )bg4!<;"U2 x$Gu\3|bM2aQhMˤdLMe XE>EEUTʤqm=!GCsp販ښ:bd9d֤(A|@+Y,nJf2aCBDK,= Ex 뮿O7E"^U meObrb~q ]tCPkJErK%ۉX$DNOq4R$' I sP 8ނ@ ,ZW"Z`*"$ y.lǞ˵2z=scFMJpY;ե+ȫF^MCb3g1B~9mK'7.8(@ 2*Zc[&!/=4cF\$8&'IfF\  zKLoB29X"=OSy)IBid\IFsC $fH Ŕ1f" ?a MXt刕ݜd6lii8夋&&ȃF3 '%sl - / /t!L"-P=`b5v,}y6M\ R`a7_Ct$Ir8*D$mhĤ%#,hV|<`/UC^rSwwH 72moC5k|tׄORvKDGTZ\B2jc!yL?8+7]W@ +ەG؅@8sH:O>uUW ȍ?yV9(] ޶㽇HYljCKE VsjB1o $G e)B/(q9N{&j0k*[L֣ZSCдx%+P8C!H^(!QU6AKr9WBi[,jc>gEI9.=$.SLX p8IZQ߬I A:C6p6s{ӦOY8o©/\w#) P'a=j#<\8&e%/'MN5E@.6X?IUZkvᇇ8v^"eX>[BL`9;JmA4wuOw*PQ2)4e>iPqKkVrmXD%4K'ϼϛ3KkRe|R$T6(a ҙa\"YLg TY`@ =LF){Rǧ$u/R*O g^pPNY{zȀ,G}WfVHykLGTO>dIùz_Ͷ$;ӟuMJ(OM|j8`4M l&!ʌ^3{$g#1eL륣ilT#Op}q+;}kUcOϖ6ty5.c۷j6sEa1E#zCeELp'8ז/FD(/MR=Ϝ>rɗ 2F8%IR43{|jiՐw3nvL|#[.[I3#|fD-c;G~Dc|okm#~|֛n?8qC/\,O-\1 W&CbCB) LT: sxs5lԈa+ה򅔑{FqHB#6iF8|E^Xcvժ>nӭ[ş/5_ȕtݍ?λ"dǜpch"zö2|9,4H &X{^2r=X+`9-tİ1CqWoj.tۃ=cq~Q3'zfĘ݇i\h1qOgϼ5CGB͛7gxnJғ=O3pݵO>c/H4A'-u̱2Q4;ko8pxi[w_{Mo7rsf/$HN9G#:wQ\vGc.aa+ wuUIt̝5}#GnN-[5Xk8rw/'`aF{y8Մ~ srk E m}8rN;!< 73R{lQc׮m?~ƙ(Dc>|[o%.:nXn[kҿqwhnn];"G$pmwFl}}=x!Æ5U3d'sf%kj^}ݑ#%4A f& ,=7bG|Ɖ'l/`@sb2fX즑LJ|6q)oMw4hy,4lH'_:R ;6xĉB#(L%Jd̘1kqcƌ;f_,\{ƌ/f 3tF]prsf{o헋+>4t8pqn?7v%KSMO'ƌg^_{F ;r|DMmpЈF5G`0d;ISk aT ^_v G8bPtյ 1~_,_O7~u7 k~؀!__7 vsRsY>λXV4w$!|%wDܵ[O)xJD8"I8 /۷ RRm:IsFP*u!!:'%$\#4w޹xM:lY K~׌8R$`,, o_ )|^@ `eqޟ}v_"T;}^Ql bd$ebc*M֭;tzw_rұL=[H;owq>_뽏u >q5%o݅?;F"Z&&]sRhАߟv͞ޫO|Om]3/߀c u ¼d*`֗1nu/~Ƭ#k#C x滟|4iS;S?Iَ#(R&8M;̠MN4Tb߄2Z"ARǎ=ɟxgJM~~pMg떮mG?x޻«>|a;u/[#_-_dEӰ|9xygǞ~Gz:ğ7sc2bi5)Я;b >ܟk=2TKR0qy;osg;|X>?,gɧisa}Ҥ8R+1]p$"A/.Q}oQ f͜Ѭ}'B|?qܹwv޶nڛu{3NsDcƑxK^ۦ:hzE>x&N|r#I?cԃ:o@_+u~_+~gb׮]1/vx# |\z/~מ:^aP>1-Oz/:O8̈́&tvڶw픩sa13xWpr9p0{<4si3~vdt\ :!?I΄ߞhn&~1ľ[׿ގD 6/Be-=|ٺ:A$L}ЬS /XeFʼn:OeߖU6+nR}\v+IyQ'hnnƓxz- }Dض6ܥW%k;O Gf3{ |pάFt ތg_d)ZԚd0Cg}*#iu|kY^ǔϜ1`*5z.]Ql$KͶ!ڹo۔GE6( lts[>;|_;^0j]a+}h1[-T%Є.rglvm)c[}"Tb' 40'ݺnw3g1F66^ݵ쵬o#Gm/ zէOqTVĞ*8\;j,zͺC9lԈqϺum%/6b̎ٚNx߭[HbSsi=n9k֬3?0;Xj-0v+˽s}۩G~o>C:?M:P/*Oʔ2^Pp[W.Y5q̸]wc߽L"Y屴) 'K1j umcyA{SO>ΪQ Is8tvCJ(2LK> =~斜=by|Bzb–^r;}-i Y;fK`^`  n<־~]{6pvBhEMΓm='y P0v *6._vwr~$uIbJZES<1~sK+ʾ"NԌ5kl5V^l\*;u۶T‚Y9WClSn-pb"A1E?p.P'wy<qΜu)'v%B@r &Ks>Y3=c4qR< (cnCƬ8Ws^کf)oڽ3"y}qmFqf;o~b~AZHy00&p΅gDpL b\Zڼnu{gSbá*ʼn9AMOM;Q B)AiGnOz2 ,<-QpJ42وK|k+T{d[[9o-V<5<;OoBHco`HM`C)Ds\tL%p qap2Qoq=?ߺ~[ N]?d51P~){& YH0. HU@n1ĚȸIۨU!8>mzNϙ?&-@7:w(!twS<؝#*) D^9 8^^$-V9XdPK!VFᕨԴq\t-kMP<1 j"EtMWf_|57~azceemp8@`D>Ӥ"|&C?LP !`䠎WQXp'N Uw@Z}?1LT(to둅3>z͗z(u+dUs=>̻M9F5+J<׽|xvcm픱 х͂835>@Bٌn?݊ZB.Iekقi>[7$k>0 t=f~8m{Ohy3%. G ȔBӞ>{G~OyV]kͷ׻o27~}o˃ӦOG޼pt*qMQ*&Nς $'NGnePLj, x#(2 pVgIڕ vtZr!ER(Izr~sʯo9L2uH>xmR6(˜*&wO:QAD*πv Js4{S?X?i FIܔIW,q#iPJs'xe@jAY. /|) 6Bp뙉ւ9<p$<Ђ!S>EplBoE;,鿙.'4Sq)6TUEPaSkC\yzxեfYE9/Oۼx1#?h׻o4u;]OqPȁXڳS}g`{sF7d1%B{R[jB,K69YJ EBk+9y/CcRB[Qێs`w9sgb:W4d=hv_|AhG p!!iE.LD'Ţ9H嫀s#}Th))DA8K<𓟮nZr[wW77(&׎:~{jّG1 N|do."ߔ+7rWAEomm[rӭyWʋYx}F{̄ l/s>Nlvboenڳj\pu*,$B0Gwm=C]u9"Ղg& }w1{> 5(d(,Oπ;, }%<)<vҍ*eW|gi a|э#GLE'dB`v3.HBx-\\(!Jʯoom^7-3ԋ}1G Jmo2C?W([Оk⪔ {O?' 8:f5vߢf,GjՊd] dʳ)z613a\m< /+*cB-jq^{M@ …Njtip~!trzt‰DDK{N 6f:re:S?L>H-:vjj`|K>'90xn\̭gk`'{聣=i*jijY_S_Ͳo}[o|ɨ%Gv.>.fl[uN֛ABA_۾{N 41H]x])o|x1fE?w&c檕kXUsշ&}<8728!MN*jD |)/7|D]z)׮[tTNϛԠYUJU1GT.u9|'Xb%is#cM;.\ QDR,׮hv۔JiZJ,[6ݻHK_.Mx$P]/98ЁcFvԉNj~eytƑd׃1Y&#|oVo$1w=@]M}✲M~4kǟJ]DpwT}T(+hU4ϰ+>lQ4^3sۮKCz_._P%$k $|9<|డs|ʼncFo7`C>ҫ/"tvߡ_q` ř~-Op68A%&Սl(ԥ!ݗ =q̽>yam.n vaTqH^ֶ.B#N'i,=_GiaJﱬU嶕F1q>v5$negxigwݻ!CI!N)Jj:/:aCG8t`n'PNM|,lh>DYl8]7Mڢs_poyCy~륉3x'G>7BT a}Y#] ļPa}=۟'Ofbӭ6n}ަ-z fΏ2'ص~0o߱6أK;q԰1c9 .*l>nhoձ>.Ro=m>q^;=t{cƜrĞ{8jԎF=몫6/S9S?(ً7ۦ x֋.8ka\|lSNyi4g֖3=zyT,n{Fz]B0"lеw#6Z4oqMfvp^c2tܑGtGSK/=>buJĢF -p%=cGo?hȘߞ}F'y_~lB )\wg}za⥗>C?nւeo)ɤ)^#DSԟx8lC̛\3pȀC>ⲫ3GGm7va?]#u Vp;i8 Vܚ䀃afmf.K$4<&a~9RR[GPFXA?c OܦΖĻa??[nӇS&xcҘA}va;eڶv{!6$ ~9Çfع-:ŝ9bG닯:/-Ny1# l{ٿ`ڢȢYIMW"$/򀏀Fn6zMP,V.IUbF^G7ey 0WR4| xBfuY( ۼD(Ix͓(kuFg;tTݎ '"Ar4:p7if: /i(A-ܩRL`F\*K'Ǒ0qiDa5Vh.:endE؅Djv *SD/{ɤ3Vɭ_˰_y0Pen,;/TZg U܍\yeT+8n݅ O/3*ЧH< Uy. (&d,ҭ-[ *|w(oYvÏܞIBlQ@JQ*Ȑk>15V˳*1#CxDPt1؄H{BD}Ks8W?oSN01/-idsD YZ0ב򀉣(H C),%!B_b; VEȆw rMD'Qt+ x8{=Tu>qDY55Ј7CJH)v=Ǡ%[ EE:YDٵN|-UjR$] `L`' #C2{ٓG5UL7DLĈ<* b5&ɘ+jiiF$b LعS._ܬCw#B{(] Y4I kS{|r)גԕ" FXjw$Sq' D+ȴ h@#N:CO?)EAڄ(3I]Z]z>yr⓯_0BlƱv&0e΄;Q[{93TYhϵ5=_ NamU_R{BzAɹœbU@ŜS#Й<434W*V5h:JUe,!C8 eV `‚5{#"RHatS O=J))NEl^aCJ??һ&ya i$ xR@ ҂A/(M"Kb vH <% {Y`bn,B{١l2 < et4݆0I'SǼqcK2IoS/VC-Sevېp"KF` !ک뭹֚l3!N^Ɖ"a I@JkvM RÏ9d$@3l,J4"u2P]:3o0FEU$Ig(zYGp$.@73ҖoKV :fi'v.GcN⊱47=P'Ke'GhAy%A\Ss&Px6d/!A6 w `5(V]V,6ó #gb+vI3<7ᓽ""86*/38Bc&8U)$od[QKai"FKQDeu #߉^H{=&.ET?IX Ar>i!)=-[ʓ4, D_<#Ixĥ7`]:P 6<|AZҾj.)2NpTUn.IQB%*^9KR]04Ǣ# M{iN_H; Ԡ|1ҩ I!=`lsc8rꋨ$*>e,4]b/IHX\2TO⭚tbJuGY0)(hPgX*/*eDH48<ű6o K*SOd5"kSq.{< HfV-l%I%K8bI6)Z<},GbBtavI:T&YLd>!t"(qŬ*DH_amVWR95_-%9Ehl lV.ݡdmFB."V;C^\́ w~T'C1Hki)Ln| @F1k(jH=j!&<#HSۂ+,GShż ~Cא/#^SLقP z^NՀrtTWv%TfYL 8!# -{epK@L'Aӡ CL",I*%܋Gb^T1OʼG҂rE~wmo* :2(s3P;A4 ;wn̛;[OU uv:tL1JI`! 5ăLaP-M 0Ԁ0sCJ CQ@R*=j%H4I0u,v(lmRRjC*TVJqʽ,P8bT9"*P^a'2S,[\\ @\ }phJ#Fx$e6s<4$X(1pRߒ@ )N慘T_Cmm˺zzhjQuU{_vDjԖ\%h~yBP Ye?[k=hX,7lWVgKUlЀJjU Ui$STP'aXWpN dC5E.Kj^EHt_cc z؂gPn"QHlB:V+duPPT e5tVUnd BY3bR^դFh^.I߆*AUWHơ?*BII"@i̛37*IJI W1? lJˠC LASƼ8<,5Z*c1s?f 2HrDe?4QU)^rFJvEHH,yTP}2$zBAHcyj@TmFjCQWHiV)tS,T# $#QR1/ { 5-T1VĦS' H$*-P]r)Zq@ rb %P*8XDE^m ᆗ(QUtRB$MY+@ob ,;l|#HLZsQ~E9yYP o-:墒'10M˧M.t#YXYPBDwP7_V YBBՁMUY2y$4Rĕżى^vV AQhNdr`.C@m(P<;Z#L|`D\\.Pb^A'B#l$(]..T !:&HECTLDk''P9cD#X]NK0DI;TU28B[T%F"׬VΕI*`iXF-<ߊ=3,"?,y%z]|}:JH@Z] rﴺ/1hr( ËD0Ŕyb&$i\g/k454ЃtX1|5mK%tLu¿R+0k n8o{RG[>!."V.?W2?l27Il6D_F3r_WGubA8 :<N  2ąBJΑzaMȞK?|R}<|L! %]Lz"*O5yZ.116l` B0zGIt بi1/ ؆$3yOJkH*#ՠr#Q"e^ o$V?WSG"O+՞1V8J#JC"G,ΕUh𔥁ĄGE0,*5K,|ZZZP  W2 Ve*茉CK0IVHMғQt-6TP(^z 1P0 B Dh^`ⷼRŹbT]5XjQŬ |+C~f*4>dCb$Ա;f% 0XĒ2/i$ۢlC|0H y($Fdt(jxxTxdS7 a#߼6Nޒ!?lpsR2?@L Z(Cso4z5YM[+~U 䫞a4.j]YaFqEM!PBΔ)Su2^!?>_ME|t1 y*5`c('_a*B9R⼆y~`!گjWuĤ@j4RèA P%JO:^u%S&R*J(BPpSVVtJU3V#!HS7'hE%%hdH]Cpjr)H-C8Q*:5TJK]MGդk'Sa)Tz5Oq4\SH\~AL n8$:>>qܿf Gl*sa[Sa+BS(+$|' [:J^ѩ5 iղ]Pda- Xx5DŽ #%^V,bI <u\_07U+FZDTn ]+/máz!`â[@R bА!Ε ~Ǟ['xQu"U⦃IhըŇPz\D8r8T6j[׭J=>ʷ(T" BUj+z?L8:Z "/NaAЮ%t;ah=5!Da$=U1R7yϽuMH)FqƅKC5\SgD>C11 }8s!%$?91ix Uy3Rv*0c4HΤܾuFCbR4 WH9  iGKqcD_}Q4b1x1AcL2I-#`#*fa E~)\ѡŔIN,Djbؼlt a㧼Æғ(T0T |1bITiHB-B8$^PxBXz4>Uy^UZH&."y{o?g` lq{= C6 b>eq%C7|󫯾z 7 4hK y5ͷTU!mqҴV&FpχWP;(P0eOUt&@EYp )'\HCO{GW֍ȡ4V&1F "H !z#.4$ + rV F8t!𑴃"@%HZS"ш(bح0`u*\ @(EQFPTiFUk!q$~O.b(3 OL`8"җ0*"tPbaD^*]$įoB9S@P}Δ񦌹8h}:L7A*DEË@%Ut`#!`a#@x'tbits4([ UV%܋O \:Dc!*h!,Jd>oIt4 ك#NFl,n =t{0 VbKeٴYLbP' 4q3CLVsbQ xtU5-Rl5mfvg` gf `h0g}p޼,Οf^~sְ A |UPr"Ym׋šBF 'ށ 5%nAl/ULb<:|+Ae!FO*ZJ0 =YboBܩrh@CA`iB^o "XHB>9!I.g|*.# XԢ<׬>{۾ijox]5=S[>\*,XǓ%@DEC!n#T B$-;[?7KIxKe[(Y`+_`|om8_YQivmw~+U8݄:~q1q05ILT){ Z. G6$R"/HE/,~pE2oH[bk l3Oo1KK*}o^RralUK"_]V_Zbk͋/dѢig_kC/v4 1/ 9U*J$ܙ 8: H%f/_ii'ZhPIB89vw+vJ*!2:ȼWd5!uoIf |%t-%(.YQo +ZȨhJL!5-ƃ#Fnnɋ]Pj7IkѴ6I0pU L$\< %ɜ-Ŗs~>7r( 9[s2D<~\!&1ȔCBcBDSP*zUZYa64ѩ3@Sⴿ( #bN:\d")Ѳm|5o˅cU*!"`ߟu _Y.guA6:b 'Z c$z ;L'tbS!+L."ȂT#Axx =6xbMq_.ã%2ipB`5l?b:$};cq'I8g` ̀ Qy@|L#Ln;7*%;80UW_C6J7n͟O~S_x[T)i&@J CD2 lbD+tICqW˜lFss.t v: 5(Dܠu &XV@ Hiy%,3Z"IBBJG#椚OJis7ɂ%*LZ(XYZ8PyA7֯\[0 ƽ-DpzqB9kmKhjm}nI7 *BB=IPÙIzY 1cO%LMB"JFElrJM&K*|ޑxhWE#$GHg\-иڤoO*]1>CЋL(,|b j-”r ]tbiv쀯4ƕ*AQΈEqČy6.0q]2P)<;)I*!Ӈ۱ ` 4F) ޽zJvmǪCGX #1YEZ!Y18|-'$TyPf^h=k"-_w'&!<4$֒_*G؂ jq oe(zyqhHɑ"g` sf@*}]tQM$Lc6an#Ӑj`lE d@HrOY.A.8rɓ K;WY+-s>zÁڼW>V:> RC63YWϾW@DbI\=Rc)IP"Ѕ\åRAD|sEz$->+oED|@v#1kii5?8E;˒)LHynD[lPۂS2BJyMrQ=*K'h,]BIhi'K&/<|@ɐtGn5)`C|q'-Yhk۶mQ{dV4ב2P)тdIAYhGDŽ)ВC%5;⹫N+U ;so&+!TUBTp\>@ R>!A   TsrpA;vGϵիė)$e~`%(s+^hK E.)v!lp?tX{1f޲vzX(ށTSP !) 3$蓦Se % [}b9bhU7_9Hжc 7OǐynB|p[+O[ɧE6]ɢI=kEmo3t-Ks[6l+S5u=\kxb{-Rn`0=4 8qFъ8 !yk}h9})7͐`8 xN*V횫/ѤS@A3JDW&c/gkPF&R5TPPaPsD\h|蝷ߗ+9FѽԝwscpKIwyvG.|ɧ_ևn܊7w{}'HR\MӨͷ77e \~eH"ީ;߬hөV@CPd7 @SiHDRȏ4bG\~}Ef~!quCRY-knZks&S-{ ٺYh_6qO?YY~v=6zF3醡늄,HW_tAҨMo`i)2eZZO%cz]xF5W {`P 2a[֐! ۳TaE\zy~j]M&M͚Uh6;7lǟV^{%qw]u\vt~GA)ˣ5^iْ#7[?وa#V_'E|^y۽[gbJ7\k\wŗzT(RRFN?+Ƈ8ggcXÖPl ]|rcA1ja1tИ MXX$餟!+@[|w6tЯ߾{}~J4w|o:.ZuwYH[N"$ORpM+^qYrC"'f̡™KđzG%+[4`K^p.t]߅KpDRb'Ҡ~CQkz.| E_z޹JL`97.8, #E~{}y5d2[]'.:/_2 =eM-Ukn#bf@&L>Ca))#nD5[.)_t< IhcUk)[Iծ˵Ymr)|.CP [' g;`9xZ]5o;{JPXݴ`䭏Ŵo^Z{})\ +r޹_r_t+o:4edFGvj=h_~C7\q/Zv˾;/|q}Waepƶ\l]OO]Al/) {Y Q}rκC2|~k9h)֛oiw83ƻ8yKu6R7i8}ԴbZ]}ʅ+J+r\.]rfi|~=_mի6/j1obSw1BJ[-f}4ݮLYqwV;WqN/9sW|psmEtݚg^޶&N>'# uI0'73q6 d"sJ@6$93 |ht~V?$?Y8g \0wUW\NϞ3_q'T̜5y/<3>w˛5w? A뵃{BO~Ao>{{raΒq\[xsnoZ;+?[4yGjy˥g)7vb XkZ\|eKLFs{t?k[6oIx&(}9 =J}|7~s6y熹 O?>䈣=f2ey9\g_uh#T~.c1ޜAASY`Dl_I~q#Z,Ve8,zh'v;K΂jsr ƴu>;߷u]~m9|pg"{sXfFloݜ%j-hqoe:٦V_f#~QV!ُ=tkjE.D;m.Fu}oͻoUs/[<۵:7 ~qvĠ,r%+k^_&7cS GںpOԧKZg#N#im֮?9 KSm=yŠmuzzD˖-0#Ũs1(4De:uk.%i=nN{u-yMo5p˿jE]xsr-E9`XUbR Èv/O3~zJ&^ZnaCGv/Nn/ykccGcu?թݾxi#};l縓a &(, TkM8ҍ3qW@TNCJ(nU+@ӕd6{GT*Ntac(#/ܐ;EA 10j7G>H!jI%Ϛ10ǽ4jHZ*aǝ/^O<S}6$^N7mbclٲuoړX\3㶢UNkUf`)Ju/+BowFM&JVa٭^l1ի<+ǒkjSvo]P-zæO9kޣjͶ bsa^bn/Szs: )rێJCKE:W=)j,2NM+5vmܤe*@j3oM}kZ oZdmIi'%E&aԦ=R%S}֯[ :NU]4d@`A. y^䝌ho< & :MOomKeRG9!"`YXh>_#$X ᾒRST mOiȾ+뚄bݺ{ʔ5By VOٱR^n+ᗽ/.r^A|IL=ϱZIemj+a$Ϥz\7HRNeXˣ?·Ӕ|lZ*zޣbx (Kŵ\*VJP%7^lU&͕/ջGKv`J~;RKǥ*a6aAG^$/h KK2Z PBd9ӟ=x( S: Ti ~G*琤[(Ayhx_/Y%ƛo<ؓDB:O,X;%s=7 ZCNBmp%bz<k)wm/Nu+Cp")!%x*QGDhƦHmZI6{W\NܻK!EW?ܗK=tM6M+L '\۠׎ݺ 5y(ѬMԵha6 9޾劻/()-/RfEøOfieZ.°Mޜ0#M{=<(ZR[Fi9{?]817׬X]HR̢Ƿy!u(*m%VNQ)*?g` lVpuP: "e)\ !!K"ءLguP}5a_l: ! ySam>|]cW<ߜh5ʢQlzWjbppIGھ{[ $wk:ݜ>]E]l->;C޾{M]ݩi3N= jj3=Kl D";3 hJutOzJd\׿ܳ?#tV?1VfPiY"dӐ?[3|O>"#kōE)iIO߷f3we 8:\(\bUGӗ[:|8(;m'wj{45b@({mt&/gǂ/rt{t&Oq[tC&3 /޳_CE!>Iט@H:Z:nK.\w]2eҤ5G;684U"~1Ǹ6 ,= ]j~iϷX^@l2ylǝFSzhH3B"dӎ;(0>wș\^|9ӟoL]tHNADXksqH5$G @!ڠ/N>1ꫫ֭504}UzǟpLBONT"e?IO 8*\)?zWO>dp3Fg?;.Y-I1Qu+b㟍3q6 q Kp H]fl) 8͸J'0>*?tTRLWm*F5ӆ|B$v]KHZT)֞{y5ү#g'b"OIv%6Њo{nkm̤He?^4o/>,-[k[?)A{=o']ǞxjRn33Ϩ38l=rw4a8z诔Sa;zu];x]w=^{pap:$m/p⑝2C? Ϊf"MIE2Fٻ\ze[v~vrY[-ݲbHqJ\Ef0ziH!@M)9S8 &RR:xeIh(Y2+ScX?+~M3S$fT #Ij"/]}sچԂD(DG=we 'IH)V5؉)\=*c%i.*`9$=RLp^A" ~͐HV)R*wIWX/#K=}g_t-^k!X'DTJs>.ÌH;'! ߰=*n̄NNAЊg6Qh> KبF2D>V/Tv+ cgs78r3𝆥Kq.V]O?x뭷ϐ}dʉlZ4tN;ԩf2?'H4AoD~&;B*:U%tyS5jiU։ǝx-<٥X>(!Jr9 ޓҘTx4o!NIX[J1 !"ѕ{) QޕNRXe'iF#fVV[>K`D#,!ţDŝpBK3G2+PB$Uz}?R;+0eǠPJrI"2t!&"I5O}Vn=ꋷS!e7 Fa` qQ` 2U'&䱡*SKldLf:.r<`%C@fE <쒓#,=[l ENJ50V4I)"U%!N) lobWBJQ5Q>D//GƈMxʥ Qh[)0U&dRJ'c:RVY" jo,2L!|sKщ|[#)ۋ*]dKTFQ zZ1GqhK-]I5ӊDjJ R?w0]0 TuH!E MyRivBhƦG SlAy '#Tbx(.Q5l*q6ro+RV[}_ Z=^FN-mmmSN}Wnh}Q?һS>xͷ7ϮY{0a+db ĂY&lʔ¼aS@Lx8$mY3:RB,^:7.39pGJ2&- iU1ǜt]4Q$Ԑt)] n&h>4xQt@ikҬ$b;6EIHvB6UesVW+P_DI;@;GHK Y@)e?UUMKIWtմLMo/Bɬ!u20Q^W,,ỎO " CVzAw- Z .+1d0ABAhqцp_0pҔDT[: !3ѽ d HYMM]ŒDŐo_)նfF<cXa8+j8_AyJS| (Z!WJpPI_2b oaU^F {H荣8f` ׂM4DEgS3-M#D¾wyg߾},X@_{v;oO}󭩢ÒV\@,~>ArMbC鮎­ߔ+(F.)dդu kZL;_P*8"1+ջbXzE KFZy=Zic!dhC@ny\!s"N4IOQs $dLC/rCt'!Ԯ&yKqQCJ\ i37dJ/yyH9ֺK*@2tp%26"V*wؾLc%Z!B>̮lBp &n)%]-ŚTW<Ȍ9 z5 bH>o%ޠl԰j8@C} yOBxTG!BB8RaF,Nڸy !S Li4AS=dǍ[2YDX҄/Ɯ;|g~{?b3P wR׿ 8åݽ fժDDh ̋~Ң]o7ޚ>ɠ(r$EԚ: ^}bX“Ȋe:N-,"fLY/N05J $f p Q fLUFQ; /``T!YV`A'?%Q S#b|u"XNXJGy+5 (Ů߲]7l#r alvj<;IF\=v-Q!>2CUY$%>`p[sǮZ`ӥKۍ3_;n?zo;3Dz I%L1 XPtaGWh@#%ڏ(?|blcPIP*ۯrD)YՒߒՠI4*!:CCc\radT^STŪRuC>WBZ 0Epu7-Zpz70(+%9oV!+{ʅ( O&PYᑕz$qQe7h Lԫiju1#B[,l‹3UzG.h[SwسԜIEvTw`PYT5Al :XFi?Kg+ liՕ#߼.~~+G|_^S<-G)0Ϯ(~)at.!Ā3@l7pia|NhcqщO@K(̨UlPodYC , >'ʮ>&WP^9D%("7R4\5ʹFB *M?$RVI4WJUD*j5UAFj"% #<yU-y?L D% 7l3a&r3+L?G]]h>ɂ;?4Ώ8fS_Z~>l(Jf{z{P_i)tFrS2R I1u!E; Bʇ:;q #?Qrщ1>a[d8X9P/`B|2 SFq+"I- `"Q spL ]"Y^L1hJP J)]yG, {ҿ^fKr@$2|_T<|X)R#F0R"! AN!(Hl6rΊzEB"c䄀HVb(KM 'TDh*t)f SJ|BS#LRHˆ*[BR2l y'Bߘ _^RY ハo ?*Q+tN v<Bx /r_]_?swUa"w@qV~qO}Y9uh|FI\ヤW8p)UEHv7T5љ]~ bp,*WAPVHCV)Rr 򦸅"%m-a@ ^DTeи=&J8*VAEe'xFoV4l# b1eבF4`M-RڑWՙ71O 0Q!yE\sժ@~8㥦IG>I)cQRKF#6J:=^4HN 6Q 2)3!dD2%c 4Z2M׫LW$ĖE UUS*Pa< g94+4ؘ+QrP;I1Q#VÈT5awTFbbq ePH" Pc Q2Mx$\x"k.Q MIiȷ),,_D /TZDjC*+4Uÿwu*y?wTjUAc凞KU<9.c[<9AoI%`%QIӣ$Gү#n]~Ev:7O΅Vg"LD&bC?Dti*[ M鉤 bhU &I0d6b_ !xVGT(E͊N!V&Tn(L6G!D6@K:ؗغZ[sh$A D v˷UH>TBGdaX4#ds80RkGP抈|u7y d\4IE*M&ߚV4-Z،0(NQRT ԈȦ*}_)o[\m?*)JUI"!)WaL*+IUV'kKB Q)6 +2H% $RjQ} $'U#ra0IbBFRQj:WhV@aLa}^ Ċi0,₩AHF 4#JF H Zt~BU%Sb઩a&V*N퓎 StI!Q:F? ;Xꎲqe+QꌇFz"#SuWÄ @o?dq'_ ջT>iPX Ꝩ]lTfrume(Խ?u>7|j;yT1@jʀFZ ҪYd='-Cߒ"ًDLWWH) *k S\p-{TAuL AomnEyd,Ax5fOWM0 )Pa8;cC](DT`ZlPGH +\겆Gu;7MձBuf *m`x ܫ=;>7 j|ukS=}!#E_TIuó0&$Ԡ C0[kD×E u IFM&mli$5f oCOǢ5@2d.!}Â'PDMy~-ۜLq˥܁P ꁪP]@)u*KpxS),oC!d(gJ\EUc ޟoZI!|F9<͎U &Tf Mo4|4r>#Ǣǩ9C9R8'EUJ^x#G$uz&+~*P V(_'QrѠ;ceҸl0&Y3#D;+8agbm&u0P@ÓZO:i3 / /] Dz#6ı$,@n@kS( FI6sتVqlKB?uIx!:!)$%B)rd7._͎M[e1U?BYWB! d ؾC.Ssw!Oףv H+e\7U u8gJt4$%qA<]tϓ&#h"d:]`RLp +Ϯ!¿̨U) Ƃv؀\\m;E %>X%r=|>YOR_/3KJ3,Rr-:-H,/z,S %&LF e#z#ͽ%R*Nqs ZH4&v6#, E;Ƅ V]Z !bDh$$0p|nb eQ".cvf1ّrlH8L5T25 5g"&EWltxtx<‘0ˇ:p1_$Y Y+e\S fwR5ʒcLpY1Wy@qzYv!#fE86 Eno8/O2X̀(3![ٴ]9b,+g%VGF\a&cԘ@+%+- "+VĖ N4UXp8# 23̈́,l9yL&HB)-v**'΂3ɄHG=n$ 39Fpڥp2s(d愂'OΒ(4ꤔqT 'FR !q-|FyB{{(9WRs$7$ D@`\P8GubƸ;B>!`̹.N-AlSrfF6!p 22``6HH`":Od "!vh[ʳ1v< |hYҐR3MD_sQ"*Du < hw4nHBw*[T(mš;-ҥ@/R]D dܮgf2 ~ownasyy?H~=4^dJGː3iT3߱{K}! hu70&y)5J^-yS rs, SSsCGr}h=9(|Hp&|1ą͝7Vd.6EDAΥ51$$ % -Qȗb#[HXje'\8*nopۊFcR2N(pe(zKyd8BX&JXX04;t'S(#Մ}i*TWPgt z@ ' Cb҄f"v;y1AdH[>{QBV!/b0SdAႅ*`Q0-Xh8L'xğ8(=:cu" tP+稀mҙjJz5v J-.I[BtшEw/"[Z|b2A.>o:go kc#@J 889$;.z Jf$)ا*)Py8'H4fDX?[ ä=+hը4+VbVBuFŃ(`UH-h v^aJAWUrٴ `$W0m#uW2<ʧSC}dI"m]L;@K #\:˲&8QI #p7ghF;^G* ~O'(5)VJQ2.:GW8ySQP\2hX`P9,R4*-cO(`$VuPABt A/5к:)FM[||}Ne+*T)$wS#JrCG$9Ld S>h+9`8 R.O{-H鰰xGgYZxu0zKP>?D x%_y"4ȶ**bڟh !-͵-9QW(BˇP)faڜD*ԛi0F.P-i#E0P[ PlUU bV! P(@#K b~W6-OI3Kt6(< f!/ID QtN&B1T).{HDԫP<1p25C4 pٴ͊[(þ`J9 d Nt4 nFę,4&G@W;__rڠ>|o[.6ܹOu1n,7OO7yn7R&̰7z(G߾ ~BljG4/j&5 ћe I3kc7^ 7zd.}sҟ ?薞}oy XgJU%w,8oN}+P!ʧr*KaЯܟB^/ yPh,"tw1) >O MÇF7^A?Bѻ͘ruy:S"|iJ?'V߱Dgg}nY]>? PPU GVN{':  #w5W8i|IG3667ihXi&p]=$w$0[U ܡ4S+YuQ|G;+):&j)iӿȇ9a%S!cAI)KkgPX/ؠt Ǔ  *i )ĶJ T=р'Lu1CGćm1bV[lݞl*a4JWݑs-CrţfÜr*f+D+|c(<*,<6`]>]8$>X m=8ᴻVbaWsG{0/`kB!;Ww4kѡѵ?_T)44T\,͑"SDQ_0)4Ng|!_EA$z<{쾛GՇz B` XpPn%}|kQccjU:GXjXHPLUU9`F*$K&9۟~ɣ&6/miZ.Eiyk̐AկJgB(dIE`A?x H? 4լ tHWXl[.řjhVS[YM7_B. ,vLۗco'I]1)"cr1C9x{C&'R50Hh"}٧P ><,fҝVlZѰvuG6O>^Ks ++AjyiG[(<M#aNktM ws$ AvR1v|"xࣗ--W\ڝ\غe]wD`zpRHģ-⬍'D;bxW*ܮxYQIjs\nzGZTB,0x$^NlDjj,x$Z?A0n;n.xÙuu5|-y0,,'s "{rq5Dk.s7kew5'=9ec='?~w!eE6NZ),Wse+g0V! xR.5%,pm(/5_2qÆ'!::q"UVm„ cG9#5h%Eێkʤqb Z#Gdk"1+K 眓{-ZDۺ+:54[%7WeE1qukZ+fjb F#,4J4~ur@e/sĉrdD8ņD{Oj*pK6 %rBq&45r_t{?l!TE,8JN%k06ўEl`HX* -q}U 008hp[VX6*m@*eQExٖek[[&M ; }bUV64N  ֪s_x),-q8 +۝GqD"gC- b'$B8oRY^{=C׭idn95-yj傪i:$OU Q.M."~yʉRׯt1XՇÙRmM;{rͪ^z҅/  .[(!:U|≄8w^}6یsVׅK>_~/mI ޝ7247>Q_dMڃBBw%38%S>ɮ{oRgG':nT8ɟznў'8Q|T;i'PAė='2 ţw)N{wES%W_~Ə4eC8E.FKޛS?hG?Te^8v°n G;KH狅,d?2g[SOhkhDw{SKg[y{knX?hcԍ4ߗNv`=CM1d ޞ>n;WwgPn'moD-[1nPlڪSϺ=mJ8wX}o#k&7m}`+=y'{VM7zO4JH׵W<&2iQ÷kOx$ xJ_~!^yyƜyM6-_'zw7~?>eԱc]KM1laC=JOUް-L:E_:tĐ# =KZ3=FԿ[o!coU5k3=tЁN =vQKoP \R8Rh؃NP4d7{mdznmh7f=T1FHʔʙ[pńaQǝtÍ"V.J$Gn.:LZi#vea56,CCYrަ#ï?dYp0R_];ћMl;BA pdCΑxrNw9ݶxAkq ^Dݝa#~\q“wЯ~N)" qĉ??ۏڊ=J$P^;{7f"? f&N'x2P7 s$?]]Z>dt'h*( d4Jw 8}xp(ld+n~C:ݩ{5:>[ri\^R y-ɭ+xp(Ƹ%{'iڎ>y_&Q.uyY۴ju_?*[S?#xgΘ1cv/>:+:[{7XG+.f-wh,kjy筷8l%+\vYoxđ>Dc{xb/yVs=>A}-^H&ۖ}9VqH]93\sϯhn˭;w.&а~5q7 =K.bW4CwIhm&`G8iם&NܜL/imz'<CN<_?o}rLu!OZskG?9Ο0vٹ;o=3l Ħw>7r钗^z剧z7Dӳ?!zCc9N;;_!g&t㩴S^cB}3󰒝vmyS' VǶ2kJQ !x^2!w6^7. rl 5a_$#$U\Q#6?;=|+j=Yܑx9 %/=/W*j>oӟ{Kً/`- k=SO̟[lbz2vaYNޱs]^ҁe!ldĐ3ŗ_6ݹgGw+( -c61K"o V+CPww2_yU˖-kX~{)ΧAΫ/=? p0yotpN\>w|ypw漿l}vyc-9{<\Qz=ذ~5~"ue-[i]KAIH\ՑkOڞʮmn{':2NzI<ږޟ{g;~=`yܓY4?[!< VnXyM{].9sgp1x/G`.gF)Sll߃|p1E[3i|%UU( ՚*O0 _teϝOxl֐/ =gGfLzRCkӗ@ >ԓnj0ЌHd GBF ={XχyGB C4w^GGǺK|3چUty?B.67*PGMϗceS8{6cas1ggXKԾv} j…إV8y|GN@9)h.$ỳS%J{HyݱCx.|¥0u27B/Oķ=HQ8[ .XeDw:{BB7X0o8 ɧ#uwx]]W$Τ:xA+J4 $x\x~LٙdmWr<6 orǔ?[ַ?5tʈ!Q{?{W2.꭯Ynxnq5bĐB*_Of=&2~r?N &* B8N42wAH,m?޹d՝]~=}D5b\mwR*&DK|8xݻLuFw,Hd[ ƚ3Rⵀv#2J)'jv'FÓpusBJņ0%g= f!{ʉ h\Dc-'N8xوATgx;٨iRyMݘm7+Wnݾ1.ZEw.N+>l;/=SF\7f#wNxuQW_|͟o%ekoOCk[mG:fؐqCnIiꢇ'#)~ȠA?1_-DX  $۶S7^/h3{ գn6ȟ[X &RMDi&R3c 4taOz#SMKޚfwՎ0nyЌH%dje7<ͷ\O ȰQ;m=. P -]dUJ˿p|W h6c{o&IS'v_ :t𥗞=/]f?rAnhюrI[\.eRG[蜳nFxp{/}!~wf'%>tO?Q-OՕ\_ eg{zT-|u~޸64}ϖcIR?rvEaC#+?&t\Cn>M]e`Io>nٯNt4TpO?=%'+ q.jHI7M) )[wOZ8%|VSH-9X^ cimՃT𵣏êf͙=AqU(' tݧowU2hO7Ti+=jhn2 } '9 4h"36;JcO<9a;sCUY~LK95 3Oq걫VhXye{E&N%RB&(!CHpGY~.) q@OH `JMׅf1TNN"!O:>Uau8k#̳//`jŒP4%"\4BЄlґmͧߏŪ,$hi{>[ٗK ]*!3 c>_kb6VUt'ie8Aɓg葩M R(L'S 6TCp`^]JQ Ed`nON:ݷ|?_  3f;}ޝg $% 0EMn" 6e??1 9l)gJتW4kogSA}+,u7<)+\(H( U] ?)OB398%JщC7p)_ְ|W+[;^y罓N\!֌[W5>^z%"8 mKnXtaMr<}x|sTff{G]{oM*)9kʵ+ow'ּmZɥ)aSe7*Ɣ \;yV,iX՞_~jiiegk5W-Z4/&9iRT?9a?y>)"!*GH'bĢ8J؄X "CukrGҗ(E3$pL #y'Z|e:GOed+rHsc5Hg>dWs{kckǪO?*FzCc{aEXgs}!6˹DDR2H|DQIuTVT"$nK^N}5O;aa[Ò5kֶ%Vbp{sPmM&P #Q#%||&lHAؔ F~r O77ikYz%V#iU^7ww޵{! ϒD!7o޼k>망~! 4آu8(rĠ+IYP4Ȏ|~چ<,bLxfc'er`4 @H+bEZ8g0r ]]kz`n.Fa1h(4a Q) !!/ vRكC?t\n*zcw*c;udqUk' DHpV\C*=RSA}P zk<ܸƤvDZ{[]7p"ipbg򤸭EJYӏ7ܘ@HGP;OmՕϗ[Onƍ.f1 ̖J.d[0O!Z";ڕ> Iwim8vrSȪl&8nj\"QH^5iH6X;HfԄ1Cͪ_N /خ&upX'):#0|.rRbH`mVSVǗI}2a4Ə;n}Za±G."rsiQ@!v0)O?ϜW܀I}L1k}r+'-;O>C!0)`r$|YTlCɚJ!C憜pE類୉ԎLZ9艂{Qc'So}c=`qs\1|6U(N5CM0_|˭-*I)Hr FnX؄*Êk؈Q(_Flkȗg`V+Mݏ=w_ '{GZު/ޑ |HmwTmР@ҋSʕFZ,Y?ib+%\.\N{eķjj\[E+Zp {}uȂsz P!\(t @QO !c|+# WɑSm$  'moY <"UƵz?ɸ:[l9ϪULܤKGC/|"nƎ^o־;ABS C9 qTFW4yV|UIgkF =u䰎4#,wr02wTM%]I<<+]:iJ僙(ht/*=aiR-U!r]#L(g.!C{а?V.èQ~g]}Ne*c($7N*r"P ojKlwzz2 |d/`UU}Qn[V3RT)TYˊ B*Mw$R)C-e Yh*::;JSK0{Q Qq)P oS1eOPQ> Skfszm/2jx[/c$._zEcnhN/lє-tsy>uԿ#tNu[:[|kg;/GN93ze+4{_xǫv>h9v=+_t`\՝[ӶKNצ-)qqڝ?]ixo[%92^r iW`/]]j(~U<%ύ7=_mId>,Dλ UBWtzzu^Қ5ak<.W=~'jNο??厱yʢK.Vu׿<;_RZRXYnlW*Kۭn{msv]w˱g^ŏKnnkO4@W n[ao[%m5ʚŚTctv%9/rk5 {i}YPW|[ې?o\8mXڱ1߷>oHګ ,1j/Z7M TsnQ R+u_{ueKejk+kZߕ83n#\C^utw syFF<{me3j̭mLv$ʫLdyWeu^QhZak/ku+G ]WlN9YQY=qʖ.?ϭwǸ]h;R+rj{e7o;+rr igmmYĕkZm>e3 NplxU!nп#3٫Wwvw#gs8Y Vn5i8#}kY&QZX(W`o޲[|c?_:dGtï yr5]~ 8|OV>n1Cμ\爳௺r:Vs)@bgK+֗뛦?__^?g,t Ճ}-|hQ;4v&:\Y_OKٗuW9-e6{e[1K?5v{]{e}''=NR^M8u1zm2p&otrЁoʫ.QVBl1AGNrIu(/F6::uq`z(&@ tx buG@Ibt(w"LL"@1pu*DUd+Uvj>o ˀʆ:eҠ J] UѪExCW_{(o.~߶_ﰃiMx/#T` F>]LB WG D ^~_!\Ԃ_-W DOA)r-hN&F ap&PBOl*,9@=D*ZDz5$9dͽOW>mEjTMZsT<^hmD3Ar~B~B'rD&m88xECܚe_ȹ\4yǭwlO#d*SڠΖ[x5mV\\)CjkM-f._roϽ$<-^܄e*Veo@LrKΥ6!/v%(pt}%NHbÓ`6@4vJo*Bxؤ@> ?\nSWlsqu^͔s.xm@iS@b-R&Lӑ/)y,,t 4hd#fXV)$[ LB=! m 2!,LM[ ^L'ei*  @e-A?S9.3KGm}$>F ĕ\`<O!/$n4^:S` 2E«BL,p5qQ|v?`Sėkn*?lăx_~/HG0'O-P#iUʀCU]"8J$t7P|<VQN/`f# {'vctΊżlwxzquTׂ',.VEp"᚜U``:?8V Bՠ)4&A TECDp1dY!N&W[SPLKh.H—K^H:p+@yQ$,dA|0 t_,Y7ABoȮ(Q2],F RBdIxDtOKP"GW*JA&S@mj*v; ^bWra+2nu5 w4 =RвlݫBT@tN 6 n-/\3 *p`,`EL((ĐGR [z; Q8JBх,C28hY&NW+EI%TD2Yrgt*uR@ g=L1/R(RWq(/ iGe` "EL*Kԁ"ٰ([\ Z)i;\y'L?G[r c;wM7T~&pI,τ0}1Ѐ_`y J'݇Ec5VaqG k\׎֭[վvSHTv4 VlK3FIM)̂!l,ID?>28 ,P$3J1CVZT \V*pbV(R0M 줕VWHCޣ !8"U#YRp8jsU`J meY`'|X%@1HCP$2OfH#iIDAT!P_SNb o5%` 7I P֮j` vu%/_NH?CU ecM M{qP.,$FP^TGm_2( \X+ !Jb^aj¹!$//:(B$DfdlXXѐ TU׆N=(Emzpz|{79 4VM d#żT֤~ 'Jɹ>I'R9$wVѼkR8hm&%xaoLHvF^ :ˀ"W}ѥ 4K:JuMJHY-('WgGnXg"( IІJy#'¨>rE ePX88C7L$%B0`Ԏ1IHSFLz@ Zc.RChSC'mpU]'C㸑lԃ)oV5XdZK :J`c B%oUj8M4C`L}NB-/PuypJi~^۞C_~H6'3`$4;3FA#к zjp|(ʸC] lO5܆~:fŴ8*pJVҐRdT*$C !ɬ k=NK2OO)Kg dNcsp}C* ;xLC]#Lyʌl.rLe?\/+ \q$8Nb<2K~ u80!R͢yUwu`m=2NݸIlL[J]dN-PgI .S/08a4Nc(# u}trU/F1){.jsK,'NwG&C X^) boU G%kH\5q%S#}&mC7ؠxO<^C=-{bذCAY3g>N',suU0 A.rTaLrdJV, !W`jǑ1 `ST%D+pH =B x9SUEb%J3cZ"&Un9PO pM&M"h\O9Sږf"t6NTR 6 m A$V tUp]X0F2|ޒK_4x1Ց(r( QT(kԅ1P;k#x8)> X8 .+h= @*I42\X /Ŭ%S^&My sB*}W u$`㿉ت Yv8.$SN^t(r`rj1A \i 6eXsck‰pl"{ҝ)lv l`4P]B"yjBԬxƠ2M_y?J gvEH wTUuu>1xKAu5^o1KSc%"vc6dFrҮ, 5f"ZpaW@K5<p89 "Y肝De$SszQD(z!j2 *~F_%bB-jv3$OG *N9|08( PJ1MZ(EFf_TR,;aKRP)rP+L X>dwi"Ta$ypRRSG^1IXhe,|!x blM*WC~qxsce_Q'Yk= YIyU:fsQH2e, B!:"4 h2,-¹)O&V|2Q'I'"-tV.,T?D.߀@Ƞ `?prmd!XSm G#H!DTK@,If 3IЫ9AED*G4UHpeDc{R$TNi݈;P:E.6ڠQS4ZhTc  ?aZ/7F,NTcpc#^UlhC|zab&!G̙geiꯞn)|vڦ ?U*B YYdN`HI 1qb$SVF) TPEr`/Pi-a sLzLOZF9lp:2$%SuP!$x$0RQpOna5G(8FSP[R-J9.t栿F8a _fpBl#Q?/(xp]$ݕW1U d#*kaLXLj-rSt <F(Z0}Xb`P둭t&C* ,7T ~Q . ?#kJ1t죻O"VE`0PHN5=?O0B:!*KaDv@tf(w#TqK re0+O0,!@)u$ϒՠ>bw*,ELx^J4hԏ d<@xZKX@PB"L?[8;SJA4Jz,OLI i.$@E{Hcb i=CyZzaMF"$E}a> nrH"be1G腃?RGgG$ ! h B2Rϓ(H,/2`$aSQg2Us~#X,+(mQ7ZS<9 Di*TpN.q􀡔jzE0('N tEr6(\{XWSCUQ,5!?j9B_(Y>tU &6?bخ w&HWz?:46IɩG%v&TK%.T񩺠|N-R VSCe#MTbn*B =F? u<.ƆQ&ҕgQ;0(NjP)s)Pk@PDJ.V/l# (;'\]͖Vr(FSB#SU`N=Ő,A2&)dRD!E#9H`s4 q\X ԈL*Fe7 i }~P*cQF?t6BТH]Q9@sAUJTۓR<ٜ<0D:4$ u! ):Zd1W$ wE'(Xe/Rjﮍӓ=]қ25D1TVvUzM1tpSLӽ.r~'Ӣ7!B((zS-ԋ9L-h C0@4?e~9ŀNj.ˆQB…졪5 eG =-q) k}*Jl 4i+5 I.1CE)`*E2Jo:UˇH#z?)F6t:0L !yO=Ή.qꄜb&^W;PG$RI܍Gbښ,6%!yГd.Ҝ4;4t I'25x4'Jr(B"ޗ@-!xrMv0` 4*x khoÕ?y@7fk kr剽BT!%K!Ђ'R~ ]s&؃i(ךѧf zwJ'()U?}Psgu7EP9d_Ҁ+e`q9Od8u jtʴ A]Ue`@ʨ0/ge[4|5'BɈrH5 ء[ڡ#%"dP8qdD;r#WϘ"m4 ꦮBxY|dsR{g猶O"8y9%OV b7 NpL5U?,D&0&ҏuJGuaG-rC)VMW1K $;S(W&>dh*C^Z"acmp3_}$PMRMG=; ) c|!E)/Z0ɡ!u̦8G*5Ǔ !9*NN3t3hJ5Ly a5q@ްS8nz`,%sf<h1;ZsN!!Rb2KθINqsz9`7^Z o\9Aˍ5)A %P\T1 GXܚ;;1l4 sſUz) A4+}trsyhz'x4~OqW6x6S71i^k}e:^i2aY񯬰Ñ˒_*QΜ:{\7ܤ7ڑ~wsf!jOrl2ڍ}M!Nƛ6Y磝{B;Sxӕ4M/n=)j_w_])迿ȿ}t5k+gݧp%0g6:;&wη?s1#qلwm ΛΑZqnBg~N?5y\߀Fq*]mtƼ˹36Y_ïݑ>&wϯ77)0Au"GR Z{(z)0n:JoyB݂!:{J#nԯ\|ɭ:<oS71m&3n}n]7,spZ 3[]Ϋ;[ ޙr@76q}zVW[֕{CnO 6p_K_ +ӻ#t+gl_sZ6!7]ٟzuw6~y?x7Zo8s:ڹ8-=|?@0\!}7oocϤS46:&7篥MX}&UWQoG6Y] g;{Lo^~KeW(:EV5xwŋ J(JPdlW;xSRD YoW/6vc GN9هB ml!eM B2%4f 򧲬G {&}٧I3V[[G,HV``V``V |zn!{ EArx &@bb Xص|͊G|g@y0[a8Z Yoۛ63j҅L"(#^ݵIDRNtդI>/H->W[bH .qXX89K:0ҁXX߾Wb۩I!V0 d A?(FIPm>*BV huLR')-)o(9񑯾k`V``V``Vo+W/ TB  XAKs.Lj (҅+V'oMY3nnh: $^h3+0+0 |ziL?{!7Q{QG}b ?{7+0+0u+ǽpj{$ #3@u%p;ܽhr\е0{\SC@ۀ{_wXXX\xpd!bIp4 ٓSAG ~‚U|BOC& #KiYX 9Fm](&0pXX[oW/6 L.( k/ȱԯ *ZQ {FtȏQ=KܖW E] `_1Rrfa)hz#= eGaE;hM;˕:OSw+ZpXq%r4gfg^EaV[3j3yx !ydFpV5Ws3~ѾzyH6o+G ph Z׿hrWœ{-xp2MStžg(?7lChBfkpq3Z BDhq:$k27PȹY3BYsTp~5$,g;DR^>!ŠC!Ȧ=v`V %ҩ$ɗ|] [Ioi ^Z{Gtxvv$Br??{"H o$M<ΞQL`X[C'KG^95J Km@{Q.Ejm*jL e-Qq"&TsP S,)Qaj%c20Hfy1$V*"*hJ\m# ,,M.p{rL32ovu'=Mb>Cs##ȉxé Ey*K< dAf$!*:&hȂAVĹK#aHWXGu VWbq)^䬀J+ϥ^rInVyXbP[d"0 RHu4ɂj<ʑN(^6ܐ\,~fĺk 5xv* ;ChIvƔހ(9.o>;7,_I| M] NAE(m!62e |ajtpJgEd[!{(+.b2+8jWfҠE{B9W;kx1fnԃtMGZdaF88pY쵏v*чpN0HnV_3!CT'9w$͟984 ]a'5%| Pqσ<lMeA9/5A/!Ţ'_H6.0/x}]B 90;YX< 缾(H1u+),Y R^e:ƎEU#Cm*Rˎ 9՚%]3b>ސk0.[T?< )}b)s-j8'S@ـ7XmM;1 FAmA(˶{*WX傧=nT9sPwhvR6'UG _v{JnUAbq|>HAWz$̮y1}/E'՚K;R;:O̧ę7W TbTtAJ*lZ12s5]0AG7"@j"]aVZ=I(+ J5)d); ,A=.oK y~TR]ȸa7sq*K,1_j5dg0^odIg˜JV:G>!4XkYx,9zrMrѓ&!Rk8.S;r<< %BQ1AyWΗhغ9 )/AK._Pj]rmHRm}~3#m:lx09GUr1;6 _6Rg;,mg.n+R)7fYeb:|M^ڔgEa"VL'+~:z<+g`i>EA3 ,Cܳe|!ÜٴSf"hcɎ1Ha|/ÑƸ\hZ-1\1D 6"Q Y Mmr.4lWݶvy_9& m)vR9r_;tlx1h Tɱz vaw*4Z?d7c1ƷyeX= q~m NE,MV>;Oː&/^dFCbO"PƓ܊'!]QEM`xxt^̫Ʋv@k E^Jf:KZGYyYsy Yƨ?Ё9W+4/YRsp@="e|tipX~=d^q$&suvd#,Yb=̉&2wg%ſH401s0[Mp*h9Kap*ÄRDnȇq+ZI ;ÿ%c|dH\C]T"*_ F2_R=pBziaN݊,$A #}cƌХ D3vj= qHGř N-\ZR <ʐјȌ|K D4rR!R)Xo}`\tVOopS8!b0O1GI9d(ʴ੃(%l*MXϤс+ H3@o/g!#ia8e|# Z]!%o&>ƌ9.7~ƍϊd"z; /cP/TWiyIr5db>>)3[k)L)ˠW al* R#E)ż`bp-HF p(B!C)a3TTRL'95kH_V|Î/L;'6(xq1Mō,BNN(Joa9mLqu@7"^e<3"mG)cn'5a0d֌#]B0AE031mS$g#boW/]sF@ Hs,$ ü{ tP3k /`Kdc`tBohyvhЄ0^ef%M"v-.5 8E=|S{s٨er]>!] %Kg/"c+r uF. A/^ |H)>dyܡpy0@SJc.\ъQvWޞ'EOǯUReL'"O+*de*.[񪫣U`{ .nFc=c\ T\mm}NF)CgD1zPEca!nȧbm `wj|U _~g7g?~]%O>>zϽ}w'hVA^{Xᇗ vî|s)K3N90L6ѡ j),N;x=^{BMTz*1hRzN\p-Y6+Ն,e.؍Xaaxm)JXy#+VP7(y߻cӾsN]`tqH ։[Ehxti{!>){:,)+ʻ ;CJ%ì0v'1ZԊ>e5;(7S-e=T*\AMa!`/Yr3 Ӟ?*!T'W yLxF(d n"D~T'E^'< [[y/w v{HrT{S>1BK.;uЂ"|{T_I8SD!zJQhRf RYv1J0N^rQhpo~Sm!#T=Ɉ,7Yf>Ծ_ŧw4S EudU@P'%]}%u 狄'DNdB:gys((r>~}p_p䧖S-$)XʖNY+>yz~5IVx w][{QRB W=;$}v q!k0╫d߄*#Ƭ8^FTd)3czHH t*"9'c`%:JY;]ܺ))yQIqJQ(t庖_s9QftQ9k {RL?&g">m&_G8;5,1zQ; =~o2C7k+vV(a%`+~tsWz<( s @AڗCJnR*vz}'Ý%וssð~%~Z]q31g|7ްַ*b1-V+ط?Ĩhqّh@f"Uh=1r*[ xe_Ea,)v$m7@j /_lB טHE W:v+Q!KKֽ7f"zDL y{J03 c2E=p Ju $"toN%Ygq%B { C閖6>͛n+r^3f5y|JuV #2x “8T 3Igw's/4*sۻYfS0J%hQ4&'>e:dDS1=HKF6p\#;J:|o 1ygWIՅ}7lЉZ$|[,lQmV9~XWksr>A)Y!#h[ɕ 4Go\z~A;rώ;&S I`Ma[f*bf niqL%A k4B=7#xȕFKqHp#? ^}CC~y.16?\ܼv < ڬ= ?M,x,G~Áwl7a?":҉&?cF؜ٟ@`=-vuwx_կ:0q0ӏ=xA?$o#|X@LA .k.8:0 ۺ1G1 ˞229@^Tb SlΫ>Z8>أ&|rov>~=Vzͅ-OO\rI~>ßSVI16GmË^̿ETߵp)v9a=u{/֋bGFc%*1$Ejg-,uŶ{8]>|}N!>[ֵvE{{^3|=_9|ŋjbvID"lRn=9SNi"=b&H~?Jǟ>Ϩ÷L#>WRNSS3,\!x9]аŚZwPb?s F'RhS`esN."|$?:Wg_q%y+gjLrsD>Sx/ywD]Պ/3 ,U\vn18:l"V_qʓP[v53Κ4|ly.\Qrsr$\Wu\ڲ\òOI7rȑˣű@,W^uuE!O`֬٬ݷߎs Feb1|+Kܠo_5N/8:\7z[~ )÷qÅDžpȝSx#O=?/ÞF' d] x/){gv?S@"P?C5̿~ӳ|\X(=H?UX=|2oÏ΂w?dg , ޷͋W^m~8ʧR^?*1o®{)QKRT;m_nK .ƘjA|7pҕ 3d[}#qJv.'x5£RVk&)ByҰfL:/XQ\LwfOq{SYZObҬ|f0;c̐lgЅ5//=B ~)09>lλ631Vg֣?܆7 {k/S*`Y l+{A3khF3/Fe 7y":zߟ{GV=v)\t9[?A>ϕ~dۺ+:4-~ .w~R+`(L+&t_V#;i5S~`wynm7׻vŚnO/Nz*-av)qG-~傋8h?dn{hwDܽ~d/Ze솶v /6Ozseo{j3a/>ɬJ^߁vCݰnkoxŐuNaS'=uvwK?]K›[a/{K.2vkN䐽s>n; 뼛5;tzvo_$̴;:/G+}|. l/^asD==9a7'=&V^|v237FHr޻F;nwu> {|d-vK.WZ"bON)dxuv6-O۹/;mˏv"k]%$Ӽ{??Zq.[q.}Q_j?5.\xwOt0Cx8$WjC+~X~ v}?Ir+d}7 }.oGZk `W^+3bG.uox{ͭ~~iޞ߳mP?Lrvެ_}f.F~襽sΣ/<`*}ǿ;_*B2Sl У ]v9׸j tʺg:|ܷ7#ˑ*Dk3w~3ts'{7YWN !s_zӸlҋ>̗Zs\"~g~,$?7Yk{LJfRvYoWT'/fg.қs߽GHWWOx/Ymո_˻ZV/g^P^oS;_4~&ؿrB.o/[47vv޷JᥙK~~,>y<_/ыW׽.#d#ts?^xܫ?_%`έi_4{ \կY4+ǶtjJf6LP5vɃv^sWy;][Bwvq=PDYpt?MŢO~zag8e~c8*XN_saNstԇ,6_l]y$g<9ݙ 9$Xgv{mS_܍ekyi1lZB#_Kf-/ꂫ!*%OGux<\T쩇o}OUYN#5ۛWv:,ܳz/W??=T̤s<kۆ!o]mNf}^nO>b:hT9 Q(G?zk9UXѰ=OÑew^u9g2l5-]6_6]. 7̗~a,C# Bۗ~x36jmZBÎ+XCFn>T7\}mAґ5 a%7vd,2E2ݲ=J9 |k:{/7;uZs:XsO\df}[L݅^FZ]漓~WdZ"BՋo _1p|j0NrmcI1)H}M[KHPeIJN( A=DyK1SMUVC_61rﭏ?MV&N?r@`b* " d.狅lާ<8E!\BE"x,K@7P@ӪP ۃ`'^$nx&ME.܍pǪҟ'3P4IzC\Z _!?pIUh,"c}|%7T%> AՠCucAΰ#{~Df^rC 0G$;$}d"D2%)!o>,N%Okm{i\ e 5 L G6ٖT Ih,FLC4@8 _~{_z'rA+ %ח׷߸u+T̸t<=mnTAz[?9f_q}{ֽs 3g'L& L鎒])s!n[HҀx0242+WU;?ϚǷ޹73{qW%L+ '\x0o9+'Ջ#Kx,O/(dIcz2IsN:O32k.Rejt,+f2q?ȅ1ls nz[_}޹ɧ<čOUe IZ8C5@ G^'y="ɏ72h8X %1m6vBX/~@Yy*"bZGrU<&9J k26C7>gVV_!@b!$J.& N*$TRdrG)眞+&Xnt/61/)NΞ)'OZUJÎ:̀yB:STcDɝĘ9qPگHaRXaw\?xGωҝN VO׭^P ILYl`bD=T5/\SmOA0.{ B6 s.st*ƮFw u$I=ġ!\ l0FI91K͚ ɉ +Uݜ2 I$0./jպ}w^9Rf?KFݳ ?.BVgwy|t'˘ :>Vy҅es9j[I Ő up4eSʌN(GT&PeCZ"es "US!̨_K9?v՞F&FXRFiGȰ/Yq^Kjӏ!f)savP(0 `V>w|ޙI7{]+)[5E< S&U4Oa]w`#J\dR GiG=}w]pݐ/x1q?$ GAHCf`N/*!ݭJ{P\+Qz~)[ :1Zզ1jgI)N[5E{P.)Su]0"W'Z!4#.cE(J\wY/R@<QokU #dۏKJ(|_hqԩ׮v}M_@-^/ RH=ed\Ū|֘!V]uKWjɄ#CL򓧞tue\NʞN=|] Ld#u|\sw|!ޔQn;':9&T;d>$HRVIz; TXT֎%Z:/z2|kW"}nCchםw5oۍ Ϛ- ӠBTzӍ]k1 #ǎط_mGzX"8hI%$. >^p0zq%JuMcL]X)wC'wR S ܶx[~Iۡ Q8J:^mQH@$b(WAm^YWx]G\h9bIqkmJG "l ĢLF?Q<#UEm1Nad26/4S_])SDSQ/PC};c)^Uյ]DkUqʹ|ltQ^ր%P]v 㕧*NVP"]w"5X|wnFW'66>^sҤFIHUຑ"nlӮ[F-k\uM(踱͌Ra_̆X[ec0n'P)ZGlޥ _|qۍ:aǩm1߿ҙXJ1VM^y|g(i1-+.]'/!bLkh!Db'NvǣmNw\vbdMg:ěĩSNfuK>M~g㶘z~7i#9yw>mGN{~+>\nG.:&Վo~vz򁿃oX@9i!4otVm?nO>3'wC hZu޻̸%۝⩗Z|';mw[\J[l;;>8l6~.%?uGl1;tv6)yN;3u-v9YmDE5Sz_ &NOjcЭ;rGCR^m!hSE'3'o1m.O8!^t9SvGo5hm?3D9>@7U,z9c_[ d`};0lbN_f<?(Uo%}.o}͈I͉ll]uѩD4܅C"$f]wѩህ]ucɢ!ԔRĎ HH\ V۸G]o%LLSQQh?ր`ӎ0&-CR:d]p =$eN6m+/fu]xyX^o;O^vŔ (\?U;l9 c58Z;-Y)u`qC~$sCO۴GiTMHf SEf ( }gۿXl`Ǣ5u }kM3Z"@X,5tR6F.@}I$ʐ^Ej)D%s|z]n̛xQ2h_T*O֭_{~&j pb`Ԗ'A8,ड़^ρƛ `j1kkOؓsNNc'VCaYWZ.@a*XI!3ZX7*E2Ϧ:?ٔo5t?մim)X~AVXɇS&)_ [-ISeHG(ɸmi`Pƹ#͢ڵwGFG!r6^C2K%E\EL,N`ZvpK]#( OqёUr.'tSU3Cg$&F5Kx1vMA-3>0ƛ/R-l 9X@) 0s+Ve@T\&w@ y6|$)qY0G.&|8b#9.֋/ί=Џyj-훩7/9qD'*\< dz8'ٝ0)xa*g$]k{,ibX^%8b&|)Q|E=AMHխ0Py[Vfs9iq=h٩)=:Uq<[%cP8l p"!y4G)t + AB9j P qEQcÇ;0G5eYz /2\`9D'!'"`+*RSkH8[nŽ`ԪH {a/C _Ծ;, f l7|Di_C7$Tm65w~ P9RFjkn+n{=l;o7< d/,@ſ}Col{᠌m$ JN08!^/^EGcu%bWlHG/68wCHz_1Kb: V*j.80ir86;3 (,U;[#.P4py^X24h6)E7x`gxW\{ e %iƬ%*yP$ J24dp!"[t"JMwlj37=AE&+k:F'dQ^C!XĂF!$R%H'(SM.m0ș`F8B"Vm֪ _XYQ9@`F@Yq8uy]'od0/Bp7p̾rO1ヹ$@Je`D.v%`]%- rvKH!7L B:ZL51\Hm!|,O欌c_MY Lx#Tn!9ã@\P<Ls4S>PwFP<i`Q̐EjM17|W#^#͓_uxEpiȊڀJ)UpM5 f8y@K`8BT@v|[QZYaB(-է1U60[0p%^`uXn+c;&`R )n]$_b(/@'BPh> !CGj@kiN -*,FœAmU;~h Sw4(5;ƌrȡBx&ss]1tVwQéֶMq2@fМ{?/tQ= B_uU^ry f ͡F{/Ae!v Evq(=[ 6[Hp9k.};Aj\5#ΐZ@"?`Jᰞ pisqSQPE?('}epU;WhQoPڙ!G!M|H|BQC |6qN[.ox@?SYАb?IvЍ=F0|␰H*gVQRx(>`J4_X8V9l }ip#L2)wc4idGc 92<*wqRJ1d\( p )qYY`ĭQ2J ]p@pk)fKX23C {őz@ʁH&;F_M c V `(Q8M%QQXiOn $M@G{lDM=ʒyHlΔ&[K76A9BJaD2;.ijV%J ߘ&,nm- WG/G)UM]g`5ZI Bao<`JKq2P$lKb[`  Ga IH>DƠl:T9fV$a7HFG)b!jk!rs>fn,$i('Lyt(VQƖl-;'d Q4{UkUr>vrpD:ƙs`PI%'VO莣j8R!88(M/=Q:D: )@MZ .pN^Ii>I4o$U+0JBвE#$@>$>TO |^U`Z<ʽ1kD:YM&@"2uƤ)ʛ@Ŋ`46vh2t:U*}#֭WHq6%YOqԜBAT<"of6<.x۬ *-Ոq-@b&s I4Cg|PHBAu0grJh?N0-!"+ub{6tJEL%R+K#!lve48э-Mr*@NBZ9|ץR;N`Z$G("S5:  QVDd8i02<ߔPV Uo9v2ȣ:C0 yNZRQaҠ1e;G+sYbFqtJR3_CDDNF/.3[UDWaKYQs s8K?lUoxIa ږQMR tAUc$%>E J3xI2ש8rhY2.؂xSl`Ra?F GIkU<5U g#Rȓw}WZU=Ǒ/Gѣt9Am2l V% ( &RP j gPLK :ʵ( cE㘑^jHAhq*t%6>*f`hէDHde1HJ堉%Ip 1Qʟ ,0)th Z8 _#KZIPe WȀ%b5dvʶt7XJ3"D9؄ӜӞK$j:(idL|hHNA& &C$Q0T6QPX&i]Eq%':֙:6 FI47z $5z2eX,ViGMGOjVB!zԶ g(xo \(".=S3p> t#Ws"Zv=NFjk&өh?,(*{ʘxfE'5+0;h{S&g4'm: t Gq:CxSEQh;lGPp(j0p܀zġͦ# L9=s)_ߨ^HQo@.Rsh`Kh^(瀈:D+R3BvT=ֆZ=:x5vwz]MT+Z/eåppMn'\S99w>t g̨gybz^P:p^F0";JVзPAǨ:K-qʘ~?) ]yK1[TUOx?@!4"Kҁ']Y Fe)"H l'qSgR%JRU UԢ-#sK]6KA )89DY)Ucvn_C8wXXXo^oW/0>=$ɔ[87~)8`^=ߕ^-{n!eKMF2a2V]in`1 Xn6UX$"s; z^$|)IB;$P-I+Oud ޓq%i~, #讈GHwn"TMM G(!:.@h﷕3Y2OC XpMCbD=޼UI#Y"V%TImx vkt޷=*G6ۚH^o{fLyPTƕA߰4Ian : KFN \SWH(j N#j$CEb?vDLbG8aed-㱳51Ik`~ ZY`;AT zrWV``V``VJϛ0Es+$`p[ě|qi7>f<ɊFB.Tn9/=>u׵_&0g!Cvi+Eo˯{0괜d*%"m +fϽʜ6}m:[i9m_3tp!G}" Vk[lwc *IC_zw|'L6|grDkkwH$xcl^7bfG[T]V``V``VaQ}aF )oPB/R$z4`D06|_w\/LCa("ic<T5wx/tA?y;y>\srAǝ|袦--}NJ.Ϯ~,d[jheC JnPps.ǧs<iihuc3- _~ϥ=zm3g.]W[־ާʌݹr709?P̅*Wt†eUj[C h6"@$:ȴ6}CYp9+0+59=#߸`*P_=ɣ4Z©_pWJQ5*N\IB>']|y\o`I{ŗ7 w~]O2Κ0a06!wᾇ]S.Zir5?@gq݊Cw(E@)@Z"C `݃fu{fv7@S_i0lf<\9; |  t5䜠kTY(( @PۯeiuZcL4}دjF5zՀ]25ȞGMzd%UwEtm,z?b:Y"THOomsQ$?L~T鵷^˺D"j[Q%^@U T)_wp`0auBK E2zP_gz$Tч!q:[4=Y)C2p2@Q@Av\|@2Jߌ8rGd[0KeAO+B]RuQ)%(ֈ\XJD۲L'!).nXu_=w?>ٷ=GEk.} %b@D:@P/>r.5WSVEgYugXUCQKrR=Qa !c!%,ˀl$U}hU T)P+/ƌu\`kM0.?k.`XB*^uY;R*#HNFϹYISq(f-_XsչJiՐI-P@cćjE7Q_ BoKHb:(P#9 C]hiZ) ( +R0ב"N[܃M\;)Ltsǀ\DFam:Q{k밆ǜ{eKPj ռ?U]uU T)_ŋX-QyOVF8d9` f>꒕'g'xEWϧ@M*v&()m]q̩\tEƳūSNF3e¸4hHFf>6[55}GbMQ`նl@)C 5wO7hS~sĄ憡g\zܩ]cؐ1;l}G~۝=m;1:6C7mA}7t?~؃=-bmûgƢ‰nX/0Mojꚫ\pW] 4RJ*RAoYs k7ΧRv,4tq)ͱP$}GSHB-؂ܺ۶."6N A!W,d 8\Q ~C64%#ڨM( # /ۚLH'2*4a"Dy=*z5-LȂi%`) %(=but{n*V@2Ut$5pe qmU@U T)PGM4T@,)IDO^f` b1$85e@Z2ʆ4qTV"ܔr2J!6 +=|P(&- _ALMp2T_2`Ɲ0p))(YSu(3!h$Q](Sjʁ'Fʨ&@_RL 'Cѥn/ӌ|CUapCԉ&rHK) n(?Ij W5IG:o(k> $ U"!PVEb8N3ZdB&@ d1 CfF57F}LS>zPeUnK_ԺBX#)+ L\gTE"Z]_R[tZ%i@kpi~ϪHeY~xA@ |v'^W^9]KF .=#E/.(GW} te9^U~ĀRq|8{(Spݟ;L/wFrkkl4I?5Y}ìiXW>KCU oR[罀}-uc~˿iKqvNBCTXxT!Aѣ IguTTA+j8p`8GlBM8 ESƄEd:[(SCGJ$ԄBF@bM>"Hni7`|C2P n5#3#Rc֍m2yn <A!U6T*t78+YOa cL_\nKʳV&=/ ݎ>PniBZ! bi0WM9X:5Cъ{NGq\^GsB^^0;¡yBz'p܎g {ʘU(VFc<1Zg1:45з-Pe^0;`}#C?#RB| $XLpHDInٴ 9=ǯL*G)7Ě+ߊxj*eL$ք(uX|e/W\h4Qi+1$'Wq ޴2jh0P+S A+?H+M4C0v2CdFɊw܀ HɑӋZct$gOed_q&|o @%Dz:e(Z#x=Ϥ^h$g q7ȼ 5@GskIΌnIk0':2Y5)TjQW(B8BIZ#cSLd&aC_Dx B#%[!RU͟}/< #@; 4-xwCkIPƲ !W!=*b$!È8 j!H -M$DG tCF-j4ֲNq/٠5'gK,F!!G! !w2D$j& |;LL&_4/ s7(Tfgl~'Aj|Acg>Pn# lBP|! 3,(UlDmΤZW(YF$x$Ti,J'tEձc3*H`!36!: +×"Il7EXcvuҦ ȦT3ҁ5I9$M`;$*A1% RR,.GI]*a FIIɁd Id[L]j󡚐J.JDZ-QZ鸪!ԥ@Cf-n$<ƒ@jݠhZl4:|4bT[ : (! 3k!v1p倔$E n JtCZZ>G0 E#4')wi%~/D#Zb\@G$&H;efST4 dJE/4- 1`Cf1ҿEbXY0LZlnD:BddE9İ&AU\!O1$KRAHdy1+ - (&lWv"]/ځL3銎'TWp6ZDBqb/hb*2QC{ry-mfBm)P O4y<(9' p㡿.,uA!-PXF(#pT,+F`QkCBq 4m#Q!S(cȪd`N "* jX `S6[`҉49"(.]"[DlOMJ_+Ôn"w^]*Dy"]uD,1}d1̯@FU_hl( `|{N*R9ugQ"v3ɛSCJEf_y}ma?`f?ƋJ +A;(hQ,K濥ݍXTO "}2M(¦i&Sv|PK9-T$2"V6d, $ Nn;Ev1E w XleP4a)T,*UQc3`Q߉pn,"bQ*Xj D%uQI=!`oC-!3b_/KKڶ 4Rli)KڱW!ȏQI$PpH8<-ւh1)IY˧aP /}XZHU ZPA ʨ4%h~emJ! 9IJх>|xQ 9GMAx0)b"3PJ2k0l / l @xG2YkȈ78:VuadYQ(hIZ4Lϐ0Ca0 wh.0 w `#2́u ҽCB$(MInClaM4Ŕ(^xU)LH&G<*0w$0 ;˻ m+BtȈE0A7?`L 'qՌ*& tͱTDTT")! WV500"lI;e(AHFXD%tE!n舋H/ n#Gib`DPwpQnMϒ(% `VIuׁbn!-?>Ey.+*VYlw@ J6b4w$ J e%DRt]MJ1J4"LFĦ@9fl3pioYab$ծT)U \-,^в"MSx׶fR ΓAv^`) ?f֤ܡC'[㙨Ob󘋄 62jѲi}n!p'5p]VMS˚B;ari!Kz291 iPL!-Ө `h%TLEP PDI]3AkxB:)DkO$59{C|l² -HyۅS b. ˻nO JJNV!m@d!GGuM/W]ϱ0MPh @'Ⱦk0|в]9 *^Kgp9 'o Z2xX9;a~ «R sI@%n`kt\A0`.Z-ƀW+L*>َͅ0A FM*r{M|@I%šX*Vsƀn U'@/$ 2j25 # U@$Y0O#P`d 6!]¼ Ð+U0[6#K$^aY.M΍11}^!u`ep1{0pF:y(4s6gZV!tH#{=dNY6\Ɇ\6 ļ._*!\~*jFJr8x=.|dAI :!T!3%2 PPW ^mJMEA{f"b>4aÒTNo|S2&=G11+1E9S]sa d2́ hK*$ M{&&*Y%P .EO3ِHT# #ЄL| muWU'Vnf,/$ ˔':ĕv%6Q0HV e b7#U>=&vw:\`W |(NaK >B7 Ehέm0lPht)oe#$TT"n&>s c y1ʨE2QO*FcCb0PcL Gu46m"X/mk @vȃdRa*;QH&y 23S`Aԇx)Q!P82v" ]Cwf^[br}l"+acS6U`@.u[^}ɍaC9G6'uXP`Cɖ\GLr<~xIDp{Uf#5]{o1C#41l!?Ժg{`zG EIGIvUλoݬ2edfּϳHMT 5]3N䪞 /;ғP(" &%Mu4`=,̄ Mƙ`@g 1bHQ {ٱy 'r*A bgh\4# \{‰#Mj:k8|'$̑dXL 8C8Nd-Dk|~p$< z`@R|ЉC8$ nyvњrmE8 Nϒ.SO ʌFddLmHB-,w^ 5B5>~C-u=flӐO9I7 h&ØHmf<R2aMtCd1sy?2WIƈ!CRϼ":&RB( >0jgPkn"-˫9>=0X[ D9 l]DSԕ&{ۡw6nءC5eF F/Ҿ#놩>{ jyTsS7ED^0HB 兔Z!]酎W^tvs2 Es0]YUX\N`$md~W?z |e\!p $s b(ϰc -ߊŒSaA퉨v[͛xvG[kGۂys?rT3)h n> <L%QN H=́mn*!.& u؃P3ǏZLR+eHLv[4p9dn;tۧy,*l4> ?`~gOG{ʉ'M|4d䁷Eh#?rxвS13\k3.Z:g3۵ѥ(YH~R!L?<삒i _1wY{r..8!0 *Puq{g(|a%S(.|&ص RG>uN~   Rt(U'ɵ %0 tFH.<%$bL*ۖ-ޝL#GsN[ IXXk聻Q\!U 9F+tZ( Bw@$Y9N=#!c A =e B4N0gƸ#>z}N9騏CtTa79Av~'8, bdd[mߟ|]ጙ# EQJUSL\A (3LugZ%TQ)>vma%L֛afacDdY2PtVݝǍoD7lEm<L8BUAIhX p > ɔ/!Xl57DmE4' =^涵 aьk6:v'V?RJ33 S[sǝq&W W^|ވC[;9?_ e`n(o>ハ7Vۼ6bYW곽?{N"muL/ra#F7Oll~#Bk}锋^eCMhCu\=QJׅVB4*7j٥"d̘q?3P;ӆ}%ǏoR{WbL˺'lQy믱]5fU=SrW]rÐcR qY?7pl &8ؽ~ؖU>xlQ Zd޼1Z'۽ņ{!ި!CV@!jҽQ-'pW:O438tȖQ#z\]Ud5I[r4})@\9ÒW_m^;2aW[ȡs/<@ZVm-5խ3fO=3i/t#ԍoj:ȕ!bEnYczb|VY?g+&[2vqi>g>xBJ_Uwu7bڰPD61>a̟O?h5V]x)B88a$kons!w~qAUƭCP`۽d٘!c izꉧm q-#$*۳ƛ oȍ.JP([Yj@aCg}>vH`Ʒ 9ӲjY{"@0顩=,ń Ə%"K^4q|UWۤ )gm0yͱqG<@E"9YLKfˈ_q,==19eƒLR`:J4Fz 1.o;M,xTQ ˓O(a|Ӏm]zI,U,@zQKB5[qP-Ve/U T)^pjS *&(IB-8+%GS>f`GP ,a<)W@?BI!U:eE",~0v0SO>~y=:gc;=1Jv3'yo_.Z4W>>] ܣ8/:/[|a;n@0^4udޒeO}3O9OS{~ h]腧i7^̫po}~=}G3>;壷]}ӧ/3>t{y٧okYzz,m=ti]N=gΚmvGב}EoH%:u5) b_ꫯYku,k|>yg=8ߚ9oG}t酓9R>w?hgg>|%wo;l@Isf^|}L6B){I~w=]C-?GX,9aKs%<,Miv‚M)#=!NW5}`9~w'A4 [ίR[{i hkl_>/gΜ yX,.O<`W>z,̗ y 4.L^*NTXmVG&AxDaJrX>~5V]K9%%l0ٶu7_m|{O =1S\Et o,3yy.;N&#FN-ZlNG9s4l O]d9NAJN/LRj9Q [eT)o z d?\q 0c[a5pA^]/ǁcf i+nw-"z?\rœJPYF_s0Mvp%jH/_ mB3V6{~jT X-L)a zbСR2Q~> 4UI )X8w۟/2jqXnĉcSB"3b7)Y L!J~4da5î`WjpCNZn:R}Uw1zuW"F")*y}o$*BTv 8}$ /9 SBrcRTL߄ݻ|?cǎX7~iS#Q Nl" !tk|Yyvku6 d}pOIl|[4)rbC_)LX<,> ^GaXk6| 'mX:S4pq7׶ qME W4kmm{e;3dϲMx"<9QIn[SᢶB2AE|mm- +`3P|̯/]>wymsClZ?\gY[ǟO10g[dޔ#Ou{bގ9|ܤzA0J*Ύk9++s~YuXjbxq`/nXܺų> dʵT*k>yɹ!b"@0D@p`)Wz }_ˈXHx΂4z*2"BW1g֤{:,^OEZ%\G# X$>փ4gʶ)CG>wζօZ|::˙^>x||*!b"."wT"o EzC0C#?*Y@@PuУ-ۻdYKf͘n&"Nطt| 8 .rykCAO7A76:Rj*E ߋ1}KZaZX3g\U3|[b./ΔU*8'ǁu1d]Ҳy.Y$ۛ٧}K^͐ mBR Ywm&m'U 1b+ʑGmEs;o/>hl/^1sΐ.^ڹȷAIYB1WtSJ [J *ur3v@B9'b6@"RIv۝y;$^'!kb o,! K0X!RY\WC:bVŋt.633e pll []tvu 96JJjJK)K@!?زZu~iKOsD@BY-䓢5ߩCBV`$E)gH=NѓIۗQC2-=Kg+iR/ww[YiO*0|ٰM'Rdp[*r޷>2Rw/ Iᘵ&og~AՅ+#)"wDI>kjF R:~(3r2QCOJ/<^}XEGBk,2K4 ugX*@B { 7ꞻv 'er.(kvA&Dn BR> !+^LQK#>fL/n]㏷"= O̩tnQ :bA>WU9#7Z]% iVxVAMP$A 5KT Y&,]nJ YDl{Iչ22Ԅ[0(NcD rQ _4[n ծ?Q핐uX"CCJovdԁe0;gƌ^DIY*G,->X4J>6?~͏LtdMhnS?"<,P<<4O%pvJSNb9S, _hrwnǛ-tEnw¸c|}V[o4;7ZdEf:@&Dw|+і_x/T^1Zs K;;;ۂ,( [~0;Z-qN;w)!-#}2wNWQZ[7[c""R+ku,u,Yq)&mQrQI<5}L˵w=n˵ԣLd3%>һmK6\}5R7m)f󡆭f7f94^A<3'!QڻomvW>UNR\~}rVؚ/\ص VSBrdicqFFHłh^J^yg>sJ4Ib3gt5mѼRk_3jpa{I2_n/ $kWyy]QhrqwgkR'KY0=nUAy%}<[ OBTo&]xb*矺+Lݥ"()&sמhs:ƍtuX)P+ÒuXZ\ї_xݱCDZsK]A_)j {={l2+Zs~OrPytAlyOvGs?zo&x=4A];s5,RaYg-,[Z$-\4'nMKi0i=TnMۚ[sjde17naklΚo[$4tD˗_qMb6.fFs:E= lʇ`kÛ^ط*o~R@oWswɗLtn KH-Òk!En@@SmDQ`;% أѸ&%E?= l"qp95EKOd /@h$p .K}kP g!Y~!,dr t2  vhx0!AȡD6 O%\&j5-kRTQ- \IK'G)(p(JBr=t]r_csn`΅R&i{!_xZAMR)䄹'Rh3Q+?}ڬ zDІHȊTo|NJ"GjrUz(J #̓R#NU=ZY7|Mp-/RB9ʬMJCBgԦ\C. o{sܶZ -n|?B B$-Whmnlԉ[J DHt P} u^(9%Ӛ Hiy<yJkw@OC Q C <n;[O_Ӡ։b1 +k]vHʀa' (Xk{)DvRlN!z_[tOMQP$!yHm&r[5aH!ei& pMɌڙᔐbf08v" ֎V$5TӳC3b֖JT;F;D| 9mw<`*,d| A^M`jR*^sȴ=)_¶;dEFZJwGd*pHu>{n<ȡNHTY:Ka|gN3`?AwdR)(30DXDBS7jT7H[::23P im-6j 8F DX0?Bqn!RGMu: XTY1_`^%Q[:Gk?ʛ/ZWX>NPlMt4 $x&{UAO@Y))qB. \d:;>RpA@iUTR)+Dgi+@eJ&NU;֊r8.r حP{Tc !a1!~A 7Db#,=#a"&R8B&v MT 39uIhPQ1ąlaREfd}l`JTAJPh2`]Z(j{uj;v[HH$G-% =JJ @b~=O>Tԃ!XNUE,6HZƁa|NCA(*>"[X> 0C )#b$r|D0BNRV $"RS,>c"<FtB24Z /4RTJ%A "5PlȜl!"t in`XuS:\"1ru5Nҷr9Қ4K zdY`6q!K 8.U&GMXin#Lg :' 1py 5cd!$8.eb4)V n.CQ#f5d Cāf9kB$2~TOPJrHRyzńq!ż1H&0R**||v=2֏b |)^ y6PjVh<䪫Ԧ˖t#`alt*PM!Hz0H K(eg2c1~ZH0vja4Pae3鉬ɵ~~*AVlc_Y_J#,*U\$e}Oj9xJds(){zL2ܜ8+ZIH1ž׳eMWǃA”>  L) Gw@!#2Px>CX* f,/ʒUѕt7#D8;-dx蹬2 !XD-KHORt0*StJ 5ʗ"(ZG| )yj*sZdq2v<=iP~.艧%A}cI ,Ozd@K*gǨ1C>1Xu1x_lc2|.8qB>+X5dN"f -h@s)?ߤhDWTU@ҵ"K d'Q{T>Uc>‹.sdR\E%-v2 vXX* BF8)#NS@fPyj[AV`>ER{L bc}%5lzdԉx0MR(^L|#M!32s5X%wD(Xk @@GPgdtF^e`+p#_IPDBJDY5A޿wFTV@(k 8PGJgP_m` 45zVg \ ӊs'.< jrP`X\UfQ xKB*-T),`'UF@,T͍Um[? 2B,HNҵŏ`]\ /xH TċyIT"pp&PY+$63x/Q~s"3HD{/@W)P@Y 0A1(Vkp&ҙEVVV+}CmeeʋO1#NO Ex( fNiQH˾rxO2&F]@U ){|C]{i>J4V.^|Ek*0\̠p  u2ќ'Rjf"P 5 MӫP+ǫCQ(GY*R?Dڤ=y6xOOoU)ߣ/V>/1<9 ")0$'7DYDN_*RA8-v*ƒFY q>Jhb8Jj2t2"3J? fǍR')/,Y2IvAhԊ=dJX*RQEOW,׍z]?< \&33TdEAq?L8{=bg]t)]3C~ )G}O<Um`$ƀ-RJ*RGF*A瑢Tɋ|Q"O\ 3P 7 3o= -1 EQQs2X `mjU)P@8}{$ի~S`psf9*|Grrc 0:\~W]r) +%dNjlԇ( j^"&P7Du# ~ϫjR(PݹGC+te , "(L!T'[P܆L Z$B?)(2ٔSKď}uYM{㸨ȌwRV(oB޼͸U;Z@3 ̞ CluY9%x(PPZ'~/p|pUF<+M3'>Q1P B&(g3e6UI5P2`sƂ[čD vQ|k" P0bŃC~_w uVx ױ'l6QNaJ\H{dM-2CbS<<0xqE +u7p&vUK+owQcqQ漶,:;7%GePc+U"@AfehT|;DRpѧvt肊]"7Fl`x˨p 7YE?%&T>>@G(t~8Hả}nEPWc K?Jw*we~J*E**!p[K2*a&)߹t~qa]A!/gexbY*g=>y4X ?r""3s<3'6Оlp8̘w}}ۉ4/v7j?(CDs*y?WJy/p ʦW'6HR3`ЮcVV]7܊m+BXcj1\lIHA[*\/cDrxzJ׬0O6փB3r:D{F?P}U)@uG\}92C?u7r#P d-`/oC>yT?A:xIqy<-p8~.p5̶}Pxw2[ ް༊] OewpU\ns` eVp&]" Ȃ\naK$R:ЙrP#$IAY7K)D:AwPؐF#^QcQ=7S ‚H ҳXw`ab5q@ƭ&hPm+o~&A)) %AHS ]˯B02eKA_ye" E+ K"Rß[?Q%U T)?D_X5+r!, `b$bAH$"0)?S& jx_f3 y2 .D^$%#lj`fq";%$֠(OYSA{bK%w;j=u `DkL~o,?9kr_IB/7k=N2 KY~1E,?@_'0(WF>H<+cp7>Y]F䁃ΝD L&ԫȁ$ $]zŞ< rZZծT)P@! Om6Ly̰C/]w -i˾xI5T4mx.@&lUCH0CSBbYb!q-򡀪"ꮓ.  GzE_"jqICfojTP J"ru:t,G,9!S@APb`K@`>BvP-P `{`)zqfDOtCw@F }[ xʫ"FfdXMFjNS,Ɂx(|aVj#썫/ˎCq̕d4ϕJf "= >y8n9"~řL2eWTpOH h.wdő^2 ?) h2} VxX>X<W9'x:X7V-=z" RD@'aDtImi y!7W&R!`T8 =aÕ+z*RGM}Op$%ȬPEcӪ 叀~0CC Lx@H6p;HdxZB]PxC?+|aD`3}q;O>x8c24[CD J| (dц*X`a X+Ӎ\JDJf D@g<o܉[b8Q7a.0ۉBH>|9v f I"L~dA{+Y ! g2* zp !X BXtWC!hbRI8Pt"ȀY% Uh4rTXHѠ6+@x2`2x|>09݇dF`FK jTORJ*)E_yq<`gp0 O$I@HW! ϣ |%t]lMg|40p v.teDCzTCè~̟|7GS*CwӍw̜Da'(m”bR@|Q$hbT=M#)ϸ;']PFlE# <$"Z%’`ɪ[r#h}Iyn$ s 2ft]VEIHh;墳n) vh J. *κ>eVG|%DHS#"kn 5$ھm"%*"+ č_vF{ 5! /9 BCÄ-dl,ۡUwqЦǟx$ o!wܯn󵣇7n{'xQ CF5pqsjZ;ib5VۤTtEnHna'؂@ZQ{4=QPJAԈ%gg^uϔ+ RL)=|8(JU`p셋o|)8"X DCИM6XR S] |;eEL ,f% l]󢈰&k (F!Es Ȟ=!m[qvHDp:ȂG{eFQeXkD$U'Fe$jpi:mB nP,[Z2|i$7P!!rd&> ɒ-I;{BHqE`Bq pI#&Xb2ifDMvD"{k{FB/ +ah ]=CC:SM7}>:SjzoN=| 6pq 5tۭGr"U>smS퐴-r;2Tϳn& 9"%:u mCSdΰ sNWU T)P9Ro(+@GN3.(-J^NR#%p$(Xk8r-=Hd}(O? 隑MC9=@dB)mH!y# 'Ǟ,R.7vԫL#@cj#6j_PB-D½ߍmn/ሆQO[Ӈ'Ǐ,f;^o6&69ӯYs@/55o|GoQ0D&45*-zW\jTڗm< ;c/rKHMDɊx~SSa` Z)'7>a'nHf)9]^clS1cyCƽV/,vkk3/:k 54mnP'y:"g`rl~2ac奔X "0(ކ91#դ :4QW3eȓ?onl^W董i/˺u#1pJMȔJ˷~[xw`Ut22yrP av#0[ C`$3Ah RDѦ[lѺϏ?8AP5" `Fug.XܞƛJn EL1{!wk:0gyֱy^`Ygqđnwo yi'usɣ>8o @wkKs<<-/-X޺^q2Z>;]ѾÏQ'Jl_ynMן`®[[{?^cٲ%wmuKzRV\1W,e5S+!7VS\,XܺOvI*qG?K}9qm:7|{wv.{G:pflchEI%Bx-\ݗ]`QGo_kg¶϶۾sI[ǒmKۖuwhn#K x$!g6l՗jJZ K$=&U3Dѥb)Bx7ф]+m@T#cूIBO "IL$SɚSXG1L ;0TV_U T)P@~ \L,P52ep'x'DA8~uŶl M>/qBD+(j jŒ$LOKyz]ufE( ILΙ-!y8؈% g_sy7܎:jtc#D"d>(,'צأ5L5g^r_1jZ@R.m7uEVF3tMFu>q8&:R6u-„(y וV칟 oP;~WǮF_˗y3( 5FzuֽfekYmLϹˮQ@~--㇎қ/\y-!-lZ68v nnޒC6{#e5a{΄;nҹ X|NXH645peۓP _,zZ5Zbެ w~c̄u #oM{, $GoEvn* Hoޟr5SnL14^oӐ3ldsM݈1CM{~Ts#Gkl7răS2rN:d=kdC2M]QeEQ0i6m{o& q!0EJ%,0 UNtt-; <1F!G>\ BLA<ӕd"i@,~=))H^ JRJ)V.^|=ƳL~=夂Y&4,eGaf%0жB_Z>b0q5LBKRM_3&[;bɬ[ XOz$l XMCs$dE'R,XAh!&' xte4#@Ζv#?n^Gk_sa?vګ[W9sUx,7^~}^>sh*)38?9T7FJKz ӲA%]֔! UVq|!m&uQ>⸣v,Z{Ce3gLo5 յܙd^#\jPDD6l˶ή:{/tz ,]h⎮mO1(*kF6,dO~ч#rA6 c'ܼehh,Ymg~Q }|[3tG6g#,wGݮRJ*S \xq |( 5AnPPށ BBn?.E)~5B3ξs҅n-M/iڄ/m P=KavYج`+`@Z$r 㪪@D6Zޓ]lhW)^x1躜P!9w尨EW*F~/LQ C&Hvgcf}Rܠ;/[ػƸ50ײ37[v.T'}6uصjEa,o]LyN.(d'of٪B(.GOXp#溫[BD(Sg*ԑy)Bk` o]2"Ycu:su:jٴ۬qޯ< ӑ^7bSo]:jiD.R*.@)aԅD\ȹrY'hYlA#dž$z˽NII%!QJQɒACФrK<)'֤XU?<@i$/nL9sوE8lD͟nҋ,g,+'amj x5iTȻdy>LI#Yֈ7̕;o~T*&*/>J.ͫRJ)Go|:?ygw"ċQpE{>+D|FG#-gG+l;,>{nEx C8$qt'_.rwdO=W(4*2g]YOi }ngq_+Z\l-)xǟtKQ [K0r˗E Ѣ©ǟ`WIв닭o}`ʬ 6TWYzu3>?~̪bJJP?8N;j,A_~#{ٚ$)AL^y=%}N[ֽuVGxay7qA֓&AO̾`f!ȅsѼhQ_4Ý,Ez]^^7/qava1hsk_8siqqw;jtb,h~{-W1s,_kjrÕnjf/ysʒ-赨H"H\KP3?3 L\y NSuvebTW>~˦;g:Qux4dc:% F~FYjlT.+cAOw\$^޽u;lS腌 axݎHJUgU T)cNŭOSY/(}'߭IexŔYr!^,FE0h֔s:.(}K< &A A%?>B`H!9Tpp|B,/UC< 0g4*J!印,IWeCwpP$B:#jH,%8%AM`0}"sDx ŞC4% `sc)>[YjJ*RN[W{A B\kW}ӯ:OS,U賓9ZE&o,l*kJM,Hل_U _`JI FSUCM: ZȘ \ˇTy fɡ00S$@ ' TÅ,TjMKf*W6/ RJ* b`Ke%[@& `@QC}x 8( wa" *Nu1i"+ts-=;&HF^.X&pRD|,TҶ /8v;eҖZ5 tbDj&|;&DƺB/i葏BIHa#UGzȡ L&RJ*vV“'OfM'*NB 0s0 33Te#l _+Nd`ZBACUPGBk:O>XY#.Pg}RQ q1aA{gEh9<'ա-4Ad[ x>D  et3Q0+G!}?fUU T)P(|c.pcMъ$ FiCdfKq9)n([:-8$o3e&KFE%h)k 7Z^x(Y>ސ_88e Y1f(~PM[2тX4_(Leqttc&]զW)P(^|b7t1s)O!)%a"'Z4S\{UQF G=urj@ex\e779txLrwcӖ)ShMӒ|{_1 5Xm\U T)?Hs@ȅAh pr؜@$quPO5!=>5{}= Àpt8euhϭ/?PMW  1ePX2fD@*mz*RJFdƈsmtLQu`(%YRYP >kSKl)d2QR_UGSӕ6_$S*RJ*+ \XɱM  yt@1̈K``)-xUjDֵPh*0PW?/ _9,$2}>:59A'+z+_;S&рcRV'T)P@' \Xޑgw^lldΘr٩Nxe6j]|I2A;nɦ[ =}aCUx:^S.ܧo0KzavЦq&L+U T)P+/I],Qx= ^f/YBӨD&ERJUP DLEģ;xgkR )WG8 xdNن1xL_w ?FҪ>J*1SgdkESοʙ+J4,CI!% __'&Н5=x3sO7` Oˌ9ݡXTeDAt0F~T*U%2=Vq8(iG(g74qM9 ;ϐ+hsGy'@Ulf0YL*6 t9x\)ۿyQ]$iv@-$it&xǍ;MCyh4M]~|S*>7ju9gOȁ0%}X a gu)rVrYeyrU&?ݼ< <{m<⃉ 8-~jy+2 >6T&O0X5&Q8yůQZ>'>?^xwy!UYTBm-99>n h@FKظ`'D8y <ܯ@| t!le! 7^w_'zD!HE5\ֹªHЊB6+f|g o@frį~}?}CLR\Qoc['B+@J/R? IMy UX,!,x{WU4}EX*x#G)߽2澂.e ,Ì%_i<.{D}@([9@+7nd 1l089cq:c*,:۔G7rNI0lreh8ͭܡLA$@P@X&>)㧗sO}HkjSX(Lō|&nG*#CY`D$b0#@Ap(qPSKek*sx ЯGM}gӼy7nL=5gVXVL8mE>Lr4ct<3UuYhdT yЊz(^|c ̊DXʽ-sA%*B,g@PD YPz0˹m4J &.~PDE9ɸ|Ǧ:s-6O UX]R[MYV\)(M >r%@-ۊquLoĺkJDDoH*t`Ov-nVq,-h&k7pȁ$҃,D43 )bDEb*-4'Հ<)d~ qAefCW%{Zr&嘺'KҴ363dl 'lm4^ʺp|: 4CQ?&b8@BpqIDAT#DWk̝W[cKÁXm: 5,n.d-lٴ vc-RJA=M9k_$9]qW,tvŹEQ4IʦCyja )+`E`e #HY%f8`nCC/J2śG1 q6$sj=OSM~͍+tR$2jZ` `{\*eS%;Oy0Jky'2iQcХ-D`}+r}~RhpE%G4x myo;X t[e )UF|rNeA' ҧZňSvf+/B3O0QM .ZV n̼cDʠ9Djx.Ci= u9šLVɄr\,[HHNۇ$Y\p"exV&#C2.‰Omo5ߙv(Zlt'oWOY@ 3@^㓐=ehcehWMxx i`KN+dsU]|)Q$>Z;svܸy-a/^c4fiE"@nS?͓X͠eZd> bNs6[^|1ҋPΧ(_VuyVP`N뮻!i/hOb0–FPæP.2ұ\%C P2 :n[M{ #e3A>MFU( # 3P.cgzӼx%8_e}L(WH'1Ir{1&98La_jXd_4*/jUe lBce'Nya2m;6sKD$[qh#ĽvJY[sd\_℃g+]%~ٝ+X&ŭBoVԪvHekiD FcsxzN13)wwҒ6GPq;c?wF8!ty/称7'a4:rK㥗ia8FXPLak:kUyp4̄hq$Y+ eNwZ.Fa2qYp T{l 3jL| j&w@iӀ |eE+>xZVXQ2⬵n $&r+O܄ĔA f.5]~6yB.{t=3bw߸IM̌6Ewm)/F~+&?5 X E;q"XHWTQ`$* 0"%^4 L{.^oıYEec3-6m+[UfL%[We,`-آ Nxds BhEdX˓Wd%_Cesq^9N gr]N؊}.-3 b7?lt9㾳Y218sg]PsJre+B?/"wƣ1t1G >`&k ݁5~go}1[gʫ\ p4 2_#e鞾)>|%yi‹Jcl@63iP٩;ɜ?2 =Qo;_}*nl]gl_ImZst -k~ު/5=%&WY h͏8ڏ\w+1̄>G8`Ӗlb 7qcFQG_H5R=/S.ŋ2[,^|VETaL>DI3M[sD$6]0xŴP|cnc9o. !L ,HQEI*6#Q7&Lq[!zpb(t&9qW3;-rxyq1%"uyD;5 d6|nava|V*l*آ% k*e3vtfAa#54K2Ȩ!(䕤*,Y8H`3}Cwd-:tad xk!oaf8ED7PhUKU ` &Ŏ`;%m="_ 3.)`fBe-[D3|H2it<-'ĝ7(d1H jгa$ůmGA!B1*j0m4[ٍ $ byF3L[*:_ Wvj#Ԧsb !Di0 IBHsPDyl09sjS= ~X (1{[ŦwCܜ1 X_A[yF) -!Z4߈̂ X@ hm>t/0H,Sz cFX ф *3[q= ̖\B!v.5]nzY")i l]aӒPQ|[s. *bJH.Nd1 6:.[ɆR,2 Mw,fKVF1IIw$/<0?EBP*<=A}߁ "@kRpId)NK[ȚPհ65B1h9=$ 4*gFȬOvŜD Y ]O%tP(/ YKŒDҠҍ4-vb[ r~:qhD"",J)(\dbS҄(0^La׆ O^5:}0#(lOWHLIܔYM%̌Sr,TǶ0]dG%iFCjkZ |){+E2.&ɘ]H6V*mHL5 }"#. Cn  ozATJ6[Hgk0$Ur&][(5ȨCt(2@UiR^N}Y #), V.i+$ Tmn4+/EA׶8ctN\'rR1쒝JLb>`zȤ l@ F"nfMזrɇcI.Reɥy:uGf&g)pGK湊yN8?5Բ,n--³ @=+TSUuUV"nkd$34a*( =0d:cccxn3F &p*ٗͲ'ӣqD7$T ϣUdTaaژ܈%9%0x0"/:sV5]|o/dpf"-`b&,lp]Pƪ55@N`gaBv ,Pбq3M$(`EKzjo4 +<ֻծGoӃ?`qFoIn  ݉.[~cxً3=)X-՘t:xZ^.4ܔm:@͊ y Tx+D0N*sTd[Lz(Y?֎*֭9Ap gQP(f QBMatyhA> JSߞ~U7B4O7{~zz{އ<{}P 3_1-m(Y`E&*㕰) gQv5+~}c]j3ׅeJt`}!sA'h}^W,t$„7[\A$ ]8a mzXLfB()iG vGb o5MTv; .~O;ڳ^1= u~@Z"ӂiJCt&w R`d>#{ជm!^.B״\Rd 0ʨAR2zQO" ĤdJAomA>pYg'% (I(GFqspD>Kmp#(C΄}1(TM"_ # D^_og:’ч.EZC/s {!$Pb`jX(jkThK SH}G|U$鹩OtAt{w-u̹R FsaZ5~8b[c=7{v?P^'`9&%[SzqU.ZE br0kSw [%3YS"]r,X>p=~').>pҰc0QP&,TPUX#oN9\lya6`+UdHسsu ގ>XuL_Ѻ3 MPG% ,0ߞ}Zs4StdC1A/W_}mm%F:Duuv9L(ή*] rhB@cf29ZGDY n  % ĉk\sA2!FT*f!Ï:2jh l*0'FdR/<*z_wq]`Zu]$ьt%TUNǀ 4dj k(yi%D&DErXQzQM9N^h$pI^υ@ޗwtCt3!BPRg>':ԔSOFr/ f:r {: _2laGO,k~YAt [+$"`\U3a =SbA6LlؔdmMˈFֈ~P {Y9/14Fm* YEMJilb'!F$ 5 m=\wϽ}.;,!=8V>/S/>{br alE\aR撞mm[o@؁OgN:wOI#^s=) n(CR!Bշ-!jԘC|ۖ$YIS;Ǭz~{隶cO6 7ק'Rn`H*|,)\qmI@Y,!q=:7p+hY{Է~]jL-JemG:l6Rc9;:t#43rZ0[9 ]kޟGr+bp&j $\q ^4X~P$$ 0T8)'X` \?UV4mK½KRL"?ȭw9wN{<zݷm /bרH.O.CAPa'R{wvy CCx྇v?}qf/N}{8퍏?|vSE%zg6iwc]VPZBlmuWq]VEsɂw{ޞ~ٵqeH\y{&w_s۽Ganw;d˽:S~( &Z=V_]h& 4)nwnv{X"#;l}nÞoz?soNz;ȭ]zwƼw=ࡧ/Y nߝ;^)P ;H:c~wyv&ݞM$tgo/_y{y䙗#z]Zr[L_igO_qpDxd 57O>夗zez>\FP.-hГɤ^N[e 0;zXb`ˎ7qM7[JͷܺÞ=K}V=Cxhf: -Qt|ӽ9wڲ1}f}7y/Ɔ!MN?[Mvs\,66-owW#dtd66f?q|cG[wwGv9 /; ^'tu[V{uK^*c^@HE)~_wo=ZkSj_~n{Md_L{mQ6=Ρh苭v?'Jui{n>g\tUWjKw߻nz>p}jϽ<زx-sުAI6(-+oÀ2ksr+B6J fB^P 'tí.v.ńU~""ˑu%j=!eU'w߳Ѯl/³o 3M~KoN97grO=cz n |l--v ;yrȅvT$R@醮9p˟zΤ|SZhEu]l?hUb/S|f]t: 6[ok L yx^n-x7&W`T_o \ Ɠ@XNM"$Ϛ||1 =wЁ~^p]]s5б`~?W>t^v}y襧޼/0oqS9n?\÷^?} />lԨ< M;,i0D>_>} <60;$LN)Xn|!'mw\~`*=ޘ{]w{?rkhS̋.zzkn>{ꪫN9 "@Xj MꪫKҍ7~Y|~>'yW\wYS{'y~.;$Zug5LC(kM U 9s',"YRhؒ0g(˳Fwp8sB:\gv͢Glܡ$q.\5CQ}̱7teW࣏쓷O Aw44}x;n+:[̳O=>E!w/>3ӦMcϻpIf|:c̈1=i=v;.X ,q'L|Oaڀp0IͲ{v'{3ԝˮ@0$W];|;:zK&_uMy'>7tɿu=uݜ|<5ũxa;d:+ёG[.^{ۯY"e33|h"X ̭jl46<5'\KEGM=&ѿ9u93iHS"`PT5V>啗g7Yrivm' 23uW]kJLiOO4CZ[|oČ_~'P2f;I^~+>|w\uT-,քa( ꡿?^~Î=ȢP*9y74wz^u )1g#g0ր+_|6˚mդRӧӻ„oY7n0d_0pq2-x!5 @&8?廗I̬GrW$u===S'y~`— pͷ/{r @UH/|ӵ8S46AJ:|FJK#\dlFH[J)lVIn_~soa5wqrE&@ph)g*p| Z3\ hb_K9yB#;rjm3Mz-ўۮ5}ɨcH~^5`WޅK۞>#&?b/7^_oUt_wE@tƤ?o|խm=B7_ tb,;Z*i,ZڞPkپ\JS֬Mfmj2Bo넴vG.lm=ѩW鳻)eҹ.Z @p4!0'ummNp~ܖ5Dyh_kjt?lyo7  F}螧fܱ&uC)Z%s%io~/߶-#谒a 茂+]8'?IDR^F#^C` FĀ 019BXw?X&Ƕ"M9Ͷ1#3C[mR5)l梥G۷(<30+%SAp>+l4;f)sxK n3r:U"=s6$v/ 96z'{/lr믳.IQO;m퐬wi}Y={⬕2R%KZBPM+H heCcBv98҂pq]e (ȢQ#ꗝqf[owGKF#lt㘱pWKѐcqRzҌZC }7dis7S^e֠Qqí5ɧz Yݦj]}TU'O:cY-Zּ/zm RNZ k-V6tͮ2z'ֈ^-uV[}(^Bdd lֹ7Q]M·_q⬃{4P780|/e=fw2]oI#XS9{#8*qQ[l3O? |]vaİ&ʍhi^OΫ3OW@f1̖3n1o*.:k6+ݑsf]c2 zR6h {c;z/Ϛ/e$i抽mu>JK/«tåu ? ..]y RtOr%ee_pvs .bFt/:t(RN3~zIȑcUOPۋq3 qwxnxF̂WJ`j0+_Xu5 c ˆٶ4uah*K-=6mE,l;J%lnH Z'DKOT;"gAPSi%bY1b)SSTߢY!sn!BNbDH\Yn*=P) ):HeE}r AHD0䢢9a@QA" JN & $ Hd3;翪>0}/{sl}]jas;"+WM #!!=Sҫ~heqþՉ50vi^QQvqWPB^ "bz,i˙T~p\l OTVYeFyr>Y K 0b2;4nw"x52Plr'N\}BP=0ĵdSfΜ={ !"!#6oܡXvY[oVχ^cOyp]wzAǠf̼ V_{{c&p\$J| )OAsƏO;y"ۿ{:D>^k Z#!hMs'1\kN* LW^ h*滍XB5dbɈ5|?5;;_CxͦyzqG83?S$zE\WyeBDDݪI`8xGLo6uiC.d웼Jx adR) %F-2ז_)t۵ FVO/ ]!L}B5fg tjf&7Ǚ^44-]\qD{9z!6"z  A"K.8Ӊ _L0+VmH$ŧ<4m 8; U ]?QbgΚSh8_$[E J堷>U_w?jB'|~Yn"6b] f7OSCxϞ=>KDc$(ᬑPG2dbA1*ś-An+z-=L&p>kEQE0+֗WBj1XuTfʝ CN:x?+-*ފ{KW抔q?]qط+\; *IqiRL`mr&E&0 nȑ/*PTn\ ĜFmMo͊JVwB#):mBlfA/t?mnf2),Hu'$[ z -f.ͪf7]M:~j+~^ƫW枼B:Q_x5]4Y`1c9ĸ'#M5WNJ+3m,n֕Qy ڱR0y4 L%B5^*{NI' Q<Jfh]&-[}2XZK?^C̵=Y@T}?xp׽azaJtZ+$,w]u MӐ~s Y(,mUfBI'6s 2A3FUCDŋ?9q;M/L+s/<:!Ȃ@&Ei'ޔdouP [<Nd,@_d7yE`[&̧`|32#) A\R"*x&3|Q"y }sgsr;WA=l#_gj*r@GkJ,IJLZLTyrI@7hsY_*?6dh%׿/=>IA\Ѩdr$ 7n`t믻_<#fFzˤyYgZF8usVUgJ_[O7yzcm>O'uo 8s3_&":pA,G܅yz:vYgYui?=ˮEK/dѵj\tiEqKsjMҔd T2GRL_[x?=ejSo6Pc7~]c޻h1vCqv0%>م<yqڟU5N:v֙ggׯ:3;B{q׼ + .\=ʶ*]x\ˉsK^cl n>gu[<}~aR~%GzoΦ3 - {Mo2#9m'޿FD_p"v?ʬ}X1%H;޾$㭸ʫWh6(AriJX+gvS*)͊Ւpl |jN#Ӈq[ ǟz˷c޷6G~s_B}:&{J#yQ ~N.Z/ᅠ\i۷ӟ{#owwaֻ%/}gc}O8{ )zWswR78]rȭkzq!ϾK;wg>.gL73qW87ju7(Mvy|b~*]y'z좢EdyP/jU{$W"XB<30#ȫU.΍pUe_0cRwqYlfO/;#Ӊ4ّNp2_'%yFa̦ ~!ʼnt~Zuq79YP]N:#" 'g2b'@ORJ)*4R9:?9٠F8; 'Nc *v`;ڌZBUD@S3z|]# T"XJdF oC̭vD;&G)9?33Q[pQa7Baeq!P b'O}RNna[. OS 7F6G)0Qܭc4Sk*{6ÞN/ZQyIf7ʖï |r2f >|*dpttT#(xZ z*Qp.<m+A INƫ_`yrCڲ;9:bF5?zF9lnZkH(.IO* xT*ZךNaW^c  inַѴR /W8dSj% JP" &Nck9#h'vC Vm$rFY?$j@p!"yP-Q ͦtqC"{8SY9:4( YX0R/5{GL"$uT Rub%x7) !>u52I1TeP9+|gN l9r{YotuTMcfs&2Oa֬גeWSV;S'ykˏ]Vz7[|ՌeB{LX/&'%-So'9='kvpݢ3^717) uq_@BPvT)Okkc?lJE&8x"W9&!ofԛDYEEr<=5TpdedhXml2E5 E)C":l2ە*%o֊$z kp-(ZFH6vw1a*TM_nӇw|9]wE!x$AsԂ$Иes3,2M)Y/y%?+lS !a&Xvxyb9h~B2&vVndfŻgPs֝x|"L`FG  wc1p Z1΄0?"o:U`*TBmMIrb`+$֓G%h۠n >_7R5M0ULQN1P:9\zz)~LA ֑ !0 jc3yϒH:A6lY-Pp̵QsCj<r: .d m!kbdz(7p& oT'J`Ϥ9۾;1};l,>vxλ|` 9[R@l%GES+?S(p"U5ݨUȭƫX}<ɞO>FS|gwHQod 1P[ň3|>C\TYeΓe6j`v;bJt\۬RW,M,hC>BDQ6D-FVi{Re :b*JCc`"%sr@<֪44NJT0rv@gOPѩ/'6dZU>ʗ!0iL?[6ܐ r$!3S;Y9,zAK!z##eP]f&b=uOU Y@NP~[K-B$]|SM^W wJ3Ȱ4uߪR89 FsT* ˄IxCfbSIeuDWFF89B$a$'⅋Ё1wK9P(*[@iQ`+(ngڨSZA^H* XHbJ{nDDKSЦr &'*$+Q.N:3չNyTq866)_FjLgt4(IT*/ℰ)ȍZ3ZE  - @ !Pr"P7&+F''PIwRU,I mj>Ό7ydNa^/G xUV)bP R052)$=~aD:|2N[xE^Z-7QJ|1Ftȫ^ {֤F)#JPGKJrZa ]P"nLԄTf@gWWW%x̤`᠔E̫J%iM?Id~F(׹),Yѐ_{ty.䑝RC|%#Ekta<򪪿":6&:MRR' 9,VFDy"lX)ߨOΆGRN v pXBG OFN=p$Gfa<1*o)S T8wB]H>x0h=x'ZQJ6g67:9) ^A1%"Xy stj`l5OUblt4%KMUu/rxx 5S8k(E^z" a"G'˔̔Hˑ usTTTv|zM'ZL-I,65#͔!'df ~>=DTzU|(NS9j-U'71)Q-/DCRdǤ~>Qm!\0%2$Z*W$=` (8E!NSlj'Nހ461-Q8\4KCr*BPD`ٳD^>ƎOz-")$ʮUaq$.}vIuN~$qE} 8&ڭA JrRfx 'ͤG'+9HB7&Q,DŽ%_D栵  ^=xZ.K9( ;,dl OC%aH-.E;K\&,,^H\ٗ#7wt`5gU/sNTL떆՝ jE@5Yk6䅡zJ-a]#Y[/HqԑGz',^BjP:I䪳o ЮJqJ#S"D/Jԫwp# FDG6X9걞'l`4YPbFHHNhN.$ȫS`W2W,Y/I>%dMVeKMALjL(H=egF* ,`HUraI3pc&20P̮ئ )?L= ]QllE5jyC0N1t&@QfLCnPBvZ/7و^gU=FIzD!g)M cAtyj3~+FM*ht\$ap132)LC< l j K )%U Q{Uҝ) jÌL1fN5-gbl ECZ6h%UpG< 29>Wʑ FHORɼ?4%M)n F2uP gJ$f^c$.x v\7լ[rc Z?7:rCE6~ZfSġORDArp^DIpZu-0,(KH2Z9mⅣ@ЌCqA{EA7-]HYDY#l„Æ]]밅zᑵ7ބ$~z|/^9B;x;R eHt&~ ˃J oDZZBt\qWg!mN{q!*eѩ2pVm{&jv5vq*?'ꈊܘl'_wEߪ䘆E!! beqCJ\Xq2DjKE-fʚ'j~~Th0{N FPK:%< hWA`±7q}\NKS3'pi3@Z@D2`)a`֨G0B <26'\ņHua~@#1O?"`3%AAGgUC{QDYkt1XR1^-Y_lo%2 5uԒ  9>hXZ~nCٵvp0#܈bVL  !<u8E:*e w'ɁDɌvu9P81y\#;B]氝w<"b$-dٿB{z5I4Gcv rs  T/=udQ bBhwB@H!&`DVat V$Hct1ĩtrg%jŚEӨ x2=wԑ/{L({#D M9EO'C)KQT#啿2 mӕ@X/ iة4\Y9~lNL"+/r]Y!D16Ox^xʯǭ*1n<@V[/c+趯r6V#ggK 0]*Bt rUu)t Jb4 }8V׃oEr V^WQ!Cłd$e`e┝Gz5 _˷^ؖ1DI V8'lS<7eC"jń bzҭDbp6UOl kI[s#B2LBV $BcGv\c娽)3*w>16R]WԿz eOQe׾{3Mj*F *Xyq8C{?#7j@. `n2VmuE"CX}z~zʄp;ndH5p)߼m}Bx$/ $,9~8s0=j՜uYٿ)+`֮pW >{IZR0! ٖ<@4?oaXFw1E&= )'.N1 Ӌ`$ݢ\qΣ+Ñ_F[f%qk1\A`jgAё '^Lum+:iŮMH"ϐ!D͠bǑ IZNg烑C3l D_'eT/ i?"!oH!JАy!0\TǶg^ UubTW N; AݨWn@3|%"cRV?KZ}^c%WcCᒿos,@HÆP=2KM\ փOHd)>"N[~,_x!kSRE^%.5.#rIrO 2fO<+c_JhTt;#,x/~+O6Sw'D_Ab%!rK9׺q;csW>;tYRG@#ChQvj۔PS/:xٳ_?:ٵ+2a~``هgz.U8#gKǰ|4Dt+Xy-:=O&pG(f ,k(0m8/sУԥND3IحG;1QY8r]!9H"Ld4/!py؝5xCrȾ4fտ, 050Y~~?2\9Z ي.A/ )O>neӎ#p W =&;%[m/"X7/^Lv ]zgtnN_$Œu낓HwIBTh:7lފǝd*dUZѧK>yVq0Y$D*Ťu"CB-}:?Nu?K\rηL'~FM_c!ZϙS fϱ\žV|9|Grvی.ź?Qb2z:҈v0 򣠋_*'bnpw:SI,IƓ>1KUJa26%BC8^5{-p@.2}M 78(B,- b\q w@{43^VKiW>~CQ(nF!@6I$^xݲN#1O` 13@.a~L  ?6 38M/@{E>(N#?=剜G!2DrM#uTǁvd][bGQdf/|qlp Ir 'd1D]9H.Wh0Ͼ4($t<Ž£Sa 8?kw95VH2@(Z.A\c2ՐbÔ$?L@~xqxhә/q]u4̓g} ?B@Nohw+eQ*wH%#jK"Gf[+T*( u-1t$Z׈H_o([ w$ ϓ2NB[w~Q5=*s7)VSaZ]@54_Ў8Ht߳6ZO?!nTDHD:>Q?QƃUR=^f".FI~win˼aQh |˂&d3EмYޜW~/OpxjrC* %APqQ+BCA+X숣>A Xũh?rј.<?R褋rMggs|8R,OBDC'*G#c^6B˕Ȉ2Rtwǀ^TSAQq1>f9kSN 2T" D7!']3N?~"po 9GO\3E9RZ <3VzH]~M8j 4¤%pogr_>=C_,0G2jbT[qpbGyp ;}}$"SO7k +k  mhJT6cEwxjH?^wI# D8hHPm ᷅GBG͑Yř^"4ephI'6Q0+E]3WƱZp08\DD4Soΰ_ǷEu}9x~wT3%&Pр6ԓ9|4g1km脃pA*!̹Ґl>u:! l >ƾs|B") 5slE,:nm}uI R5GiIߚ_W[H$~ /Aw-, SnAX1.QJJQf % PH~* [҃-!nėp0&ǫn|aҤJ?y9CI)o Yjxϖ ٖg#accl7b:dhܝ,t[^tG}w)J uJMAYzU"J&oRrˎܹEl7r@ˮꅉa$yXAyN ߭ˮ{ ^i x ?, 'p1(p20Ei]NEān 9(fBPBlhXI+?v͗w]*Bu;QRq}{DPоV^y~a5=ö#f_ G)6ik WB[El]cBem4¥I0 nh$vCnQq0gar0D7 hcZ$(Sd0{*>|)Pm1VWM8kk'q]v7>g-Э6Cl86Q7C:b.]7Kzd||Įgƴz QT 6nnڼ0G-\o/x?jD0 xa9Bg1Z>d`G~qzJwS`_Rc힛[ zi;ť7Ŕv6:&db*,4S2<egj'Ec+G:#n ݳz. S^jӲJF5@@8 !)le$̴%ǰZВToNTih1,RJȠhlF> !td oBG+b+0`By嵱)J۱lu(P vM07?ĤT |*7hqF<A'RV3& 9aN#B]W%0_ sxxEo'r,rOߤ> iS^]>E4wNf5wcuBm0 !?󌄒GDϬJm {<`˂ZV"?4*a`QP* F`gK<\SO{j ℳusPp K9$ YL<՚ ˩D3Z!!,y'iY.,S4;P8A٦{W ^ng8EmQ }}=6?폥At +.1>6Dw[*%sX(W %t<6RPO g'afi]$Kt0#fmO+ӷ"e"9gS85lLrqvrI`Eitڽ} ";J? q6Jo@ƨi V9!Ra,'Ʉ9h?p UkcQJ <])x`OM\3b߬;OnzxuPVǐ?fj +݃e %3"D (&Ul hd8tgdysg{#g8#ӽzҸ:%qy`U?]#T{ ք8v 3Oבp} eM4h{ʹ<\~81g/vH߹cSP h7g8. Afpȿ 4fl&Tn#ZͳM` "()~hl*ި5 R%=TBGhtPI iP Od$DC9bIKet':أhEkٗ>uEӈN4 .!UG)L#{*0 /RqYƊqddCCs>֯U@BM1:O{OAȳ[}[> VDV/uTR v+v^F, u&g wjRBy0ŝh_+Q*M+F$-"PݱZ`LT!/dzhM·;#_)A5L rw@W2!!MX-P+p8= ]fgNB近wvoL8Oͧ: YD:n=*L Zӊ,6FgA@MRzAng/qf}^k詈C6d*Q5MO@s_|‰\:4zpbT,x6yy61M1jExq!F7IK"{( ȒL/m>rZP]B#C7r@ ) q6)\΄~) EET7|NnƹU{*[+ lMA܀=%N7ylC<~3 Z#]ʂo1uE8(&ѓo`lpr B iufx@-鴓0ȃV&l4EVu#rZ#y0 ;< ex?9p9T ~ܘ! ,Jv鰲\M>g}Rn6o"?xKwDIz.sAG~%`bYg`C|#(ʠ鶄_Y+qů2U1΀ٻAÿQMZ"Y@Rx *lwmw!U x(Hu׭N98ͶB=[PHov(7~dBTCJRo+;F^;D6] T+̐}L"xMh-gvtS/DuXң N;D\=C*;}".y`EOBF0 a0x#DK;V.yr2\ĥf?~ 8~-h`f5(~*ύ QѪ)9_rV.WLteRp XٰvҳeM" ! Cd})1Ȇj Kxɱl9J޾f3DX:riO-pH=S4P˘fXYJI8K%̻Z%^B # FBg,v `<eFȘ Ѱ6 '?l>F$ fv\V˹\9vcU z7(r"HVu_"jo $`ap̀b)ODMv9J,3xNF6㤓og{5?A I! &?j ء(G $9>CHţ4fą0s[ Oԡ7T9`p1\) 4^_ntΤ,xx.; 0/yMIti4m3k ll[X'F\vKp M,M5n%l]o0iwANk\8Ԡh.q$^?i MF=ߨ褗t:cniu"V6Cw$:Z& AtY"G^.uI)! u{,‚H"`)y w)u`(SsK%_8Tw \91_@e; D !(/D2Ov(U*'1o֚gRՊy&{IEYqAtM bI1p[Q(|n4N[XLC\Y=d^൙,(OƙyqqeTĄU\2Hq?WdrYHn$uS%XA~o6KLMZ~ -?N8SWHz 굠k@`2j h 0ODv{Vg&$KJH}z.DYd nI'{(ٟmZ-̩S`@lQ.b2F43\鸥Lnٜ gٞ 9Fdj:fb#M$} ӂ\&j[z\62oQKZ 3S"ȶ۴FYʾT, |m26t*ړ*:NɚG򕵪V8iNݫ՛Nt Yn4QElwDK[L诂GZzWg Q>(zn\:Y7i>pp(J)40v8 [?Zg(NEPn71Dk; 5*'lT^ŹY&t\6S&O #D$!}܆NiH58Lb6E!-`#WȢB]Ϲg>׀8%>K ax@#SBA|iY8G@d^'Y:85TM\J2w6E.X8j53dIB$A".VGTkY\ -j{dx!ĀE8K岼#%E4Rf%\|;8 .m;4%Pg5"V8)C&c* %zn;: R-;Bt8r:if!zUk IvM1A&WUe?uh*,9DlMg0~-h]@LLwfÐXG5ZL.u# ᵓkR I*#p2L + !+Bn?5!Lj @G׬_ɦ 0prN@VLye5azh.(S;Չ$rt 2)lդf\JMwjYR Bt('`b|A_1 e,*A .uRf&ƿ3o|h8fӛi4U߸MkW%G[H4UUa1%T 4GBŒ::D&$u1 P|ceMӦMLH\Jqs!l:[o6BW)FϤIHhvvv0QjNv38ƜZuNM2 .z5xB8$2YgYҎQ,YD-+v$XOěd.94winfTʤހK9ѮD Haab}LdL$]?$-;&. )j78,uMVg $X)hN,v%kΒ (IsVՌ("2T^KNr p&ɯmEmdtNwuUGIv(; YΪdA_O%E˃BP^FNca 'VFWlaF1B葩D\]59Kn3;u{2y4Cja5?&]/?/[B/ XrFTXeE)0T\J™E{D9.b.RQa(< z 9Hn8P0ER٬,&6a(gWFPf P4iB2J"ِ@@NGc(+\S" HV~2F𻂱Rx>[dJLFg $2ϙ AЋx?,ZPD](f){M(*!HV\U2 l˃# ¨-Ȭ޷w#as/`PV`@hjbzсJY`uJ6Kbɍ`:E6>w NbD0x*j29DUAe_l*܉,cȸg[Ն31Cg gQJujͧ*if,3\b2:|`7P EtVvR k\TGIuJ8jS6L*ʼn깒RJSh2! |*MXCo$Hn\Ɔk?0{!͢9ix:Je\JEea4 `dZ`ںTd"f9#.VZYs@mj6e CR;,dHbIoηDS*\8PKWV-ux mJ&;fÑ螓ȑޢu=ޅHa $4XJtVk95,e^7!$m6eV*zI<&{ FyËͩ`|Ėj}`Fp0ElEN34ͤS"q(Q)SHl Ŗ:ǃ/[ |b L1`hotg:8-A?ANpqJZb3ܶ6C_#TDf)=̕-@ j+gKܑ3G>"%285f5.髦͟vi]vYi|_tSCy C]'RUr Wks9DAD0rm6xYq^[n֖M_~hZz*#BYʼ#Z!rSR'u ׼4) r8 PN_/;Xoyhd}K.ArVQ;L1n`R`j5DWzt`lpߣ_l>?-+oۊ-mWz׵Y *e"Ith53|sz.u1i'78!`xwy{67]xq.[͢J?(pg}w|y#[Q,Y!oP#[m idZ")@T,ruiM3/d^Q[I&Nk!}wr_t,q j-ʂUޘl707]w^!|ub$nSDMwMhmM75Ud&ApYp-_TuADxkoog^5;7KS܄cB%/&'~/hԗ]zi"m Z " O˪-oixd[U+K*˹. I+$fECOߓV.ٱֳ/x_d<~1FIe@P9 N%ʌ;#t~w\H?O^tes`N1s`<Y a!W|x`xx8!.䋟nĘN"H4TB1ȐA^M-3 5 I=;Lű/rp@[i&LVf C4_rB!N@.c9caD(.Ta,uѮ' |%j`mXc͛kWs'ZJzXNUf>W!2wmM2*?ʄYz?GGBUw̑G(#̉3Cd1r,7eڄ@XF9'pr4 j6cMV[V]CBhV~{(eyn=%Yhӏ%!nYÑ'_ \IbL) c;*BN3dwPo3 /H )!@vx,{)\!zY.a\s(%->CEod oцwa'f${`2vƯxͱtzo~k|s,9R{-Y-_1 MZʝssϳD,bgZu5{.F8B=jnY0aغ.p.w/\ Um-10hw BV':6VV D`>\O7z=UqhSw)O+ Avq[*&U D >q椳U&4O8EL!:SO> ISJ&!|]fj\쎱 dǾ'a>N2VQX.ta`~kvߚHG%'tzO>%W_u$J K܍EA]$:{M&9sŋTl־t|f6>/wM 9]NfO~Ԫxe#h9-n@V̞.ީ>RL7 ?Lr##3nϹl+ ^>%_|~sEqFjw,q-Lw e.avzbm?%8%?EP'gEwcY=_XQ!*zXH6MvKӋB*[,Fz:f~y~cgKaSѯ(Xy?m;G^xҩf >_M ,_!rn.Y7V[8Jlm|mb/S^^(w#;^~of{Y0:v]O\yns麨8f㳾w޲ޛmw}$8`핫N?qcw_}O+/CXࣟz6m[l{ ?(!l/lmK 88d(26 PMVqȌ_e8.gvQbO &H)"{Ӎ-y' N$f#_>_<؋ c<(½>tJ(֝zz2;7N#=!G%$ T9/א(wsۃuU9|橅rXzla>Λd?[ftv%2jⷿ T<Ͱެ~R&|C{lѻow9?)|]\9.զX*7kށ֌s\>={TӭZ^e7߆8v Ϻ[e=j2#sw]rB2U^+P/6o =13b/;/NY6 +uZ;PeOy˭1u*G~[<)[ƜY9}i]p:,dUnԶt ?a__ yWLAO,:L.\}]hO {ϿzS=<)hڝ^^{зƻT;$b^m|6;*s/UqZroyU#@~}$oSի]qu{>Ekr. Vl|M7~En邋mB wV4xpO5DEv+I~] qmQݖ?~BE->{6x{[;_{Io|noޝO)Zc_~3N荏W\|׷ڮķ޳{W{Nνy4^uW?^[8~Ǐ~~GuW=vEb]씉бo"t*2~ơy+z /j~\Y덍{wͫ~oܥZދ/-x{?u˼%*^aB@%B|[N_=F]o^}`QsuCO [*/.v잵NYރp{^p^C]vE7x߇> `ʻ޹cM|?)ܫv<tlr kZ}9tƹ;jQ$p0)z;B掮?%{_ۋ8+wm}e^;n3P|7;Tʋ[xFͥn'! yn>>To+/;>iw-7d嗊nKϟƷE;V&h;ڹ'?uw.>Խ8tp7|eW}g ޿Ɗ3zοջmzwy*w7Azo/}ݛ̫y{FZo|i 0G%2{|cߴH5N#O?vc,5K=q_dJsg_zO!]޾ 06j]_[{ZR>3yGV~B,S߷/MpB 7G84ű)|v ů*6# fsgAwO<] -6"@ >I~iHz;;;vA^2bImQw(u Xr֕ײ WBww֭oVd>/Zr9\y jSд3] ?Ǐn{Oçn/9*N>_\qzqE<ਸeRU1bsfhqs4ZCT[]1㤏F'QiwkJ.$Y7=r+aq?89YsL5t{:e@,nKL 똘WY4LrnY\i#NQ%g>-+c6k脼ʮ/+g ?2mŪ`Q*);gUʼI?}WU^hr?ҙ*C*up;*|w,1C" 3s^GiA}$YO:.Ja۩yUl+5** UZN-6Վ牶 IHmkv fԒsH~57@A@;ޱ'>a 9@htbYq+I sO)g\n̷:h+4'NKwΪ7F4P,gZ iH٠` ].SW[H|ZcM2BCEz߿jX/>T_F_oHLxpy/*ܶ4>C?U$oノ~Яd( O=\X,K+OoXK~g=ƹ3Zʾ_GO.nJp_}/i&=9k,#zF}AŰM"n83ҒuVAn\M *K^3ߌO65B$@r<5$aӭtr|3 b qgG[oۯ"$4ATqݾB %zEL2&,Z(^usXC>ZJ㒣RH#%9"!}m'&K'$/C&jڔ5mNg=E/xvX4?.#@+,=?YpzhQnV]ukDҼyeѝvکT*YtK$#oŒ wkP3s! +re`*ͷ- \-{\S Q Pl<Yڐwi}C%ة:܋ZmoQC)Lsm`)Evv}[~Z!e5͞+`o^p+Ȍ{ώxǖbJ0R qxٶݯX(s:>ǯSo=Ghu7>Z{l7dwbG9U謷TvGG N7^ 7|h7z 6[6'z"])nB+3Lb|j7sNko[}M^}-@?Xg/n߾S-(kzf6&olGvbYE6mS⣕{f_^M{n{W.6JCFom ?{u.!{o=7dMʎ- Bʏ'|XMX\~٧6[.hu{co C[ne1w7g_w~Yr >p#?}/\ìi:ΕH{]ǟr7}5BH 4~ُDž_ܔ"_!aEm^5<6>>iN^C\ULico \k?#ff<&H6ތcIRcdbݾ?~tk>9*1kҪZYy>1kg?7w{g|k M?KZ@_,`Ogg0{"9g bs[}W9[T&/V;dW޲q>Kp+մ_h,µ 4]@M)v]wkW[ћ֐`̘h?݃>c* eƿm+G[0#EsXEwtыjJO$cW+o#e32_-(?q#3<בD G+Wo_l 'ݞWɰ,TCU?t!,鎻>;sYF{'ZlEj5lȐdߒsHURYO[b e7t)3{8oE~~g:"Bmdr(}&aNa: jTJm*K%4 :FA!4l|Q )V@C'3dfSW{oƍ7(Ьd =כm׽M XR>㷼{ـ]ݢJg)cO~'#V3-0gK2YW\xX.Q3 qXڱ rVGe!/*L N[m.$2g r+fEQ̰J%;e+&N/~U5WYbiʸrŕvP2VZbumOUCT%G7V*oTz4UT\сKb qIVyze(H\Ne.-5OTNA$:cYA:vkn'}v B5!9j/,Yሚ `N\$U*zǯ7}3svr(bQ>~TíRUR 8wʆҒQ%~Mzt3Tyk7n Z,C( _m7?d2|KAb3\#(g51UP i /"?)G O'>o:tJ%=Z:+n(Q_yXDBbRFvW.c*fw9IS後FBC'J  A>ɣlU(ebްbߣ.8"9CE(.Y K)]UevlnyzoJ?,o^ꅵ,p>#+? $=1g f~/K5̡b˺CDC1wUn+ R,2z,`!nW;,j=%j%(R(OuZ&[XQ)J ,u7+Zl0J k)>w C۠xjQ?gחw~2ȑ$˻P$ c|8q6ome Y6lڱbvMpM} Ÿҥ"S*i!1fϪTm2,B(}M-]MyʰQH:El'UqdLo7x*1bG'/V5-]Ţ8$qa9D\oOu _a NV8JpR,cG{<P/:qT0P.T-6a8EnRA:FTg4yb *nb>M&nBVY^ZSuB :J`STn {3˲FA-4!0ĺ~F0˪)TDSmg H-2300At'P1%K\z0z\[dS%eWJ> o&InNWG+q/pҭryhe1y??׿ }Ce6XmΫV ZVċcmڎd/p'n۽sa v?| j}녝8o0Yźx!MF$!WU4ߊ `ܮ BF~ ;&Jn(TIt O5[kJr5X>j3S'ke*mSY,e9-T*wp4+BNE++1:*xsaZd /UTe8:"AdE NZ/uX6R1i6LJhΪNY0n Ql-lAhonLdoe7TSzRSǼ` ӮڏrIچ;R%X r9U%u~F\\NI1K{lE̓qj5@ur@u2̓(jfY#@5`wEcLMX -6B^m#:h4ITdN5=A L\03[, \5֤UD RAR|3p5Y= (l\`S/ZR0@UJO\z5a 9@YQn$RMS4UM0DFJE̤`%vcjǪXr5v;mf%-$E}Pҋ#Bi՞VK\&y(ҼCck L>Ɣ(0 p8NG{d (peZ8Dt8WXorݫ Te1 jr2}'u bvuXŎNix)F9u#D:P֨S=| ֨FtB:exTհ%Mvͺqt"R@^?]`]˨Ѥ͆G1 Q 9ڲkZTiȊ8at1PjqXYv9L qNQm/ukWw _ 3<̱WWvDY*YIyrM P}PzG&&sXmZ }@mY 3 aK< %a BZݖd(k ]sdx}чz Sx$ SYX&dɠ%6z8QH BS](BT_rg Y(UmfzP8(c:i]`4XtB1)o+Lj6k. Vhn0 H}M\-<b(h{B0b-ܐQLuTpUna] *{Xݶ\G{Qg[4 C7={Zfɰޮg1Ϋ N;kEEH%JqrF9*&C6A99/WTtY[CEہ?k6AG޶a4v&ؖٳXl3T~h8`/KꙤhUݪWzL1l*,熢*к;CZ#E`՚5OEbQX6%/ыm-; MʋAFNTFxnmTڶ`(믊e4a_gvs&hEhzȪv8 mUT9Yȝ 5ʂZD:n38kh(VrvXGPb|;vLTMe(*X4) ̜ 8 }hni8D?8':5x8OG ևN,l5ucLzT GsdT߲smWU0G;\a#QHZRV&5]# J_c کfJ9sIoGƥ$}_V[z1\/2I?S`4q} ]~Ƥ !ݛE| Z@$<#rvQsНD L&6e"ǫ9A*\*hGհDbsX3"Ift;#uQ5#Y+K'Dh8 m0gtʃY=uL So6V;--IkON7 WP[t- o +M [(7BLcM$ȚaȔ6tV~ /0ܫ}(cL)D b|V9j%Eɭ6:"bvf kĬB}54&kn^r呥:zI"M%TiΦ!Iy g(D .ːX-5Z:3ᐋ.p:ttndTD2ABc/X4`iMZi Nw0~ST۪NnhHBg~Xwlp\ԏ} [)x#ꄩ79!$&+ *]_U8Y ijBKZQN?+tRRP}wvzeVm֨jo0deeL"v 4+}iXǰ8 >c Fֆonb8u+5mflCrF;,j vͦf߆l ]v%lS1=5ed8v@8BQu,tsxs' H&j;l]2wn/{]RlbfnBtɌ˭oJ;7ہrm|5XlPh~j:dFK%tDv /4#<'4]to/zapXȇQ#C"\PS%^p9ŋ$pO87bpfs/up"Z r9{7d9fP" U+a5)Ŕ-piHgǀR-JvH4.hCK Q3)NY/d,]{BR HuzLjQ *SVz>鮼I%Ub<.{R8*:W?R,Ndx ѩ}&%@~0ה (m:8#]WL#ok@ ! `ѱo !Gˑx א`IU2 ~½<0*g AHLBt"HJ. DB Yj\ڄ*T.kjx9 v"A.yHV AeC/trW ɻ=tDX](Xc.?ŋLK`̝z{NF S]+u ⪌ΘxaqK&ȏ6uxh}ld$ xTp#y!/Y"3^5 8 rQ7[ҿ`c/1}Brlv!6Eg kQE'T;X =c-g]8 /RHNv!sȠ*:|2˄7( %S>e˵f8_X5J۞Nyu= QM&zVb@#nU۹z3(gF=[oe樷V7S&2ʷ^cv>Ǔvg:A:iv`:=ޛMI(ӪNWNwFx&J3nڥh8+d"YKE,6jdI9-/Vu&+LP#:i2g;4v׳XKdE><%W'Tpm8D = !F T4enT 3 _m˜N /d&̘Vx - "y=w8)c5[5+AC{$r2xw87ӔIĐ/,X=0ӢL^h vl2GK*P?.j 4j6U=q|K\=]Hp{tJ9 u{zv˙EZ; 7%g@ZR 2ߙla|f{da,np}Ƴ]vkJO!2Pbd>7:WH>B#<9+$[x;RgˌmOa*v&m͢7V2{4xVCUxDV E;Zj:3 LT ܆ ȇLk!Jӎ:˟\Ŏu,bMS'^9=NC~_dIdAq3îG8;{RN/1`ud:țOiA^.d>V3s_NpQYw2818"gh;gb 'ġTWh9.ɥR|BN iQ1/8m+ SyQLccWo MG26oɜr'UphnClLNG81]k̇FWbd?A&'P8 ^9Xl2G_1u MllYv 4`/n<5WKn M4C5nmx8#T@0{:8w`-ًK,R$Ш!L ,4Sq ~SUf'gڱO0#.@ARB!㎔9?뉛}^a{;uA@y 9.܏ZhC~ӽC4̖`'z[ݛ*ދM E+eCD і^T$wR'E 3p:0*Uz0Jt2**M%KDĕH< kL6Cr o\R|d}S!EFbC!|6Mf|4!<;F 1_F~ ;T>f7#f1e$P*SD18 =9%irev;fUp6#Nk? qưrvAX"NJ`%i7h"<<&b'܄"s.#m )_1HQxi_mavtydhq#{j&&zҁ/vO$klBgEн4EcE;EoACP0&ÃC&GoT/wk[XFVkcFhꎊ}im !KPg)բWI+XYԂEcHfF"[ ;74!Sr;7(ۇ1􃍙3Ufj9Rz482=[4E°'uရTZS| Ms:%332Z;+MoTIvNDbgؓJejz&#x1dzQB/<DΉkUM0˸S;nG $}<32ao XGY:zͳZ ݁:%a~ Rmb hBny#N`&P6ē?h xIR$͂^n}at~W׸ :G}^; < :^dS:*gj7 epo f zݦ[_ $6Ё޳?__mR֕iU)"I7ߺͻ^D35>.0@:˚rpߢSW%DX`;%%Jcf.#32 b x\ fFhI83aEaϤSD%tjfLvhگ_{]Ur5#_VudF)Pt'ⴙeTp-DoWl(Z*T˕T@?.k֪*;g\F3z]t2c)@Y`mUâP8շD] O ņvaVRQJ ̱Jdab;(Yc: ÛjlYlcua0'@ .)|' ء*D'Q{|( Mu6"ӭ-<Z%b&\Rw|2bwv\T tAڗ?HJ$5%3`e$ԛqH0,⠱mǧYGK_;[C4َhal* Bx\E29ȭ6ć-;P TӨ%Ab2H_y9wE#rUkp'xgl>>HCR[w܏mr|%"p< N,dqG30Xdvp]k00!XfE`'-. sIkoSq0TȔt;Yʍ)1E]Ym%6[rHl&Nq:SaRWB#6Ge}o-jv6L;:؃^JRvKoV{0uf2S}\Me)F3O+k~|Cyvn;EO=W[nлkϽt&{w~j~y?,6\!O q9眳G 7G-ZTk^\p|l>??tnXe㠃ˮq׏ϼxTBušm?>*2mn3CtJ6Es)ҩ{vȼyp$W"יZY AH6#U9  R_Pi#GGP@ ORz:T:?.)ɹBfKÅ t(%-Aړ_Y0 -slEÞn{GH-༄[/xןC =4 J^E# ̑{ \@Z:Q1#d+"/9Q(aTV! Lk-!?C>x!7@0Ph`8LܭT &ҟ[0& R`. ps"g*9U59ȄOsB'S95ɅQ縕[WD6 i&} p$24y{SDVwDSO//أ 8ϖg7a|*$=@MqE8ЛpM*<(7!.UYܦ9첖)N9-T^^ 2 "r dc-Qnp7Wk§}ʣ9GTY4dסt2q;ɨ|G/xk=,sޏD^_{̤ʩͧ6|7,_H=#'$i*?C )8 _zgE;P| Z^LЪ$$Ug'ǨOc2;Gr1~Z3vΖ1Gw8Ol:Qw]oh%W~a {5W_;}N0-k o^gݱEڨy^ ??+8!J8U@0զZSO%d0W ԭL^{ɓqc:mձ:16B1 m3pEᏣN!}ʳH"<˹FR?:-0GwxDñSm4&[r*Q7|S7/) ?]QrsB | ZB\2ӁaMkKܹTd 8niDAѩXl{gԖ BUW}>4 (fsf~c<y՗|qCR,+wA=0j6>|?H-*͡HFu/Orfs ӣ$lVM=*.TV:d$,_K2j|Þυ7?;2!c\?B#R|k%gSd7'3B2As?@LWUřc ؗVW<trJˆOT3Ơ BeQ;^ɋdPzWp?9d Lw>\$"!|Ҭ']oX uO:ٹ2SԜLJpч F[QIO8䰟y'GJ%[ 4hG.m'~Jɕh{7sHn &Y=2z5Ӽ0G?яLH:H!"R]."K_х'Ԥ9iî`,/œLiWL6m^{/Nv)Fڑd|,$G|q[>LY%RKw K甤q={^jwW@-e=xGY=;KZ6)w;<7E挨+ NftFr0e'T-} nMf++!RXx\I01N1yC3jj:6 Tjc˿q *H8VObӥK egwo5k?TEމ6o[->]0EnCoj'QnWDqI(߄2_kOy~mwzv?d_ŷWwr}vɹ)?y'?=O;j33=㜫r}d~[V[r9o~kހPB[WT!2|!mCSfk95]M:_x(WA,ٞ"?}GB *x"`RPf 6.Hv!xi~{[d G翬]LU"f^26 vF>4e@ߥזKWްxy=Gܪ y=0 h'IIH Vuẅ~`NXL !2pP2 YXZ˸_z#i:j SNf'us1qӀib>;o $?%[L775j\&7$ML5en\v;_zY$ݎWۉBiQ:6Ѣ7}HYEi3jt+ii#I#xgngN6ѡG64AV)T  p*azJe0|`(W0Xk=Ofœʢ֥^>kշeͻI]LQyFf2KxnwPX׀kJ:)>D,R3Go8 :|`',( T;+'#,*:Lۅ[srg(&ߗ#]h.wK8Vd}8|x+\ $X/Bp)L/u9mSUjCj,ʔ ôM2x̴t"!RкЉVQEQ( P [V-h):J4>i cu] HH4dnN$.3/{~f1Dl$3Th)|[(fz/kˤ8-d)$̒Uw6HEV =iZR' -8m[0U ( l:UMTJ,/lUO"_=nAQ,rxd҉/N:ua|7͖okj(BP$*bQv\KV-~AP S>Ew 8`g,,~%wSoi-g4;Bѵ,95!4E-}"RA]Ŕ]Am%=Zsy+!o0e š ux҈E J :&s #RLAx5ԏij+| *X<$ܨȉ+*7DJ.@O%.N#j}kY#KR ~PK*ץ&"j'I*Y UF@ Xmbs ,JM*ZdVSRN^b,zŖQ(719Zb[G7i\! ܑԲfT%.IdJ)RU&N._+i[TvsjlfX|TSeV)1l*<]63ʼn;l4L/1"D>SG}otRp)So]m3qc>2 qR3l_5qBWYa"Y2<PY7)vlx:TFtwrFf +Λ8i0x{i)YeGaC!ӎcCj#9ĆqGi"B}Q$N[#Ó 8h1VM-ԉԤ閤?D{>}:5EXW^_ X|qtY/;T WwP0Wg5mVդL`_CCO/ 1@KBR:rsMzI!XVBRk=zvEɦgϦJg0*@_TE3] MbCizTɣIJZC͓Y j3L4u[I ۞UvR#k"fsTfud\oR穣Dop_kY^Ŝr&k±?M|À_`Nvµm”i!EvyT)vgWXŠTV޴o@ ^x4@WI7⅃ p4!wĘiϱ{QLfIΧ,?)iI3eP4<_e f!O%))Μ{.SN ^nbm BP[b3'''ƆL4:B\TP' ?1"cZ;5I4D-T~lS*\\.:DN϶{l1iG]UNEt"^`ۨԻM8UZUAl:rXYBײ,.ڭ TbKRQx7] 8#vOS#ϑddp kl-bR\.qY|xc1kC?>|aȊ n־1d&X30@R.d &лM>⠛v.i#LĻ-L8oeߙ*^/z6,m͔r\/xw2i WCugY)^?/F6%Gy/ ~8(^hkRhuEh0@"__YJlGZrs`Pn?N H[2pUP("eh0CŢ=.4G8U/cbn(2exH%>xک +HQɜ$ ShV~VB`% *:;W7w-w|,T`@ /Aݵ Τmt"஦ y;! ޯ;m"6AS]x!4=|G*U:2y7;\*&h9LT:+ΑtLސ/TJIX ɶ(cH ՚-á(k%)z&R\0D|ZQ-@CaSB? Y@`D^+M^FƉRF')A ,ҭV "Mv3IDATbC9(ʫ2z1hF4_w.x;E$55d^Di`}l^wQB<8Xi=PD1ƿ|+5е-s2饪B7tPRibn‘-\fɎ*.ʾJGJPƉbaF&XCP%֘j0&#YR (44\˕iCT- QT`b><$AtpnH"3 hyBzjFzȺJ <)-?Ad1! 2 W24kͺF9WCOJ! Qh#Ifng9\MC $V+mInxĦd"Y7V[M6Yt7  劕Jκ˂N3s{M>Ṟ%^j[羚Nx" i܃.sDV=DT"d@GzWjUH bXX)?s2DUWDWlAD.i<͏H )Mo""kf8+0hk P{ɫAC/5Av^J&zD٢2UF04Yb6dZ5DP,,=Ì^mYBwkapNDIXX™Uޠw~@OQ|?X Cl>hbeBiLu*&Lp ^Ꮺph![G''VqW@oYqK'lVy PW ӦEC@~_81֤y:^mՒi<lR>j: q At2S q{\י.ဢ@zjX͖[Y3 gGU3J97TXR4$R*[DY:ZC29=3 } }M[X0H%)6m`>&I>cEHPm+nS"elHf|!Wv`Jugzѓ5K v˫ i"Q/-ܴF6+DuLDgsYߎ*FlwmzNdqNH2d~(n7~G7^/O5׿=+/xQ*p=<~Lgm/Lނ=vo}_U?_]v&̡mK?< i8՚ͤ^r obC;Ɗ/v+!xqQG~h%mADA#faeXEDQ+G?#bܤ,!T7^{kiYvXcK/W͙n@|I&۩lOu%[ z,RD(k+*[U@k?IQX-9Ц/{^fFjղdTҽ& Z,a`W>Oo{:ZT511qױm&[>uA>p !ɒBx"^y5o~ۋӇ6_;n[E?b;`o9**>г/=[/HEMT bHl]B u^z%ok^z>9t"!k>O<;J;@Q,V]ޥ4BCHTnT3.8_%^De} _|awn#pX@W$TpSFZ쥫2Ux.vz_8DFU"ȴ Pu3=ؓoĿ˄3iT x@yHRUrUI#  OQ "bBD@D9,s$]6I*vV.*նtw[ns&۷MݗGEK%pZ5EK"i3ݾ%Zu#󈰶X k_Siy#)3![0y\V%!~J'|Dt_]oLcJcfS: !r']MN´TJQA#+Vhj%wn} .7a/mn{ڠ>jWuvwy7YkryavGu 4xx w·vcϣN<+(34.%ⷶ{rԯ/HCx,("<}Ks.ҽPz/X~jzǖo+כ6}.|s_y;I}\Owz#O?S0 GCљ8֛ooYb.7nw>^xqwv]= .Gw;w[ru%4{w;r\$$)b%niww>Q&) m._?\qP/\vO*bC4D}`qpY|В /`wv_{D?vg{^[i׏|q; 큻#Glw=;͎s̭6SC;y>nC蛩y=itXh~Ho}z83L*FBN7 47`Gwy…rϤyZZp]+C7O>.%S9Xh?۶;C`MOuo W0Ooʜ][QeaW:6;Q'W zDkm=VfԜ0nIfrxCwyɥ|p=޳W?]F&Lͨ7k]>}q;>3^΂a>3w~ߘ;v(3zO~{W{qc:ʁ_l`ZT]|vygw}gv?vN@~Qֲ Ii4{?ʒt[+aK\tuVS*.q+@njׅJUGMxU$cG"!@C! +u72lS@]Hfpdw*p0i*3U!DeG  h'4$)bH`][6`k ̳]$\{yՅ'|οkႳ7k]?SoxM~}GބCIU?^-L*u- "Z- |u\tyA?={Gs_p!?l[7N8W^zwq7ዻqIAo|O?S 7濜__8WLz?_oݍY"hs}f|a#F,t*bGPCw ԭ5]g=s8:Bb̳s g~d̚])/]Rpbcy≧yUǝ|½=#fOߏR疁<$(7 @83οw~=߹۞P70H&)+g:܎r%>R=v/9oϗ\zɧzHgՃ~zDazg)Xn]W|ɫX!X&0)#'?{n_5Pn,8B!K`;cvXم(@P5||y,EKH}1jkzf3l^yKR6@t}Kara9BXCS +Ax_ [~S< BU0)vq.=X4Xxc\_99wwa9E-/G?15Pj5ߘ>O| }m1'뿾WWE'HWKC凸`J4(n_r8| <4 ݠh>&~ăa%t)elч3 JB:nl*m (}Yώ9dߍ7ǞuC>`{~_H/\2@P;otO؝@?K}r^4@pE^aa\V1Ϳy 9y(=}yvͽ/AXLz;G9 VO0ۻ_l褋nv+<+ fe^!T^l˯tBT_3/s}cHIC8q9ygzi19𢫶y׻޾b):X8+m:xi?;}g>SO]`w<7{K[蘳h=9V3gG>"DZ}~BnҴ-7ZIK.x޾?k'+unۦ‡|ty}x[M.uW><.@t)4._y+}.A?9cLGGN~ |jM v߃;}KaHFIk=׿L~ov|I@|Ň?nG%^.%xo[ aYC<|aHJy_Wjÿ㊅+9u3z߾H؁mI"-Iڡ:N+t;F3QJ L\Q2 [oȯ83GVucb M(D QM˼2U/hfж"/G> Aqz6HtΩg|e2O2  EASƊ6Š.+.knQ/YN.҈V\F !OAMR`0ىQL"Ԃhъ/|}wڻn[[vM?"N_ziBO%N<t{I'R6J駟y{r=7ve#aZ3nx ̛wŗDRu܁_Tm|8M|UJ q= o[?kHhaR5PѴˏ:Q@]2 BJ-Jd"8P1 &VYӮ?G|_;2J 5҃``l!WO8#D<ꁫ5CU=F޽6;R]1|+W|33~Ld8x:!sg'ojHE NrOKzKq]rǍdξ…˖@1zA[G9kh@(E>w~g}'T V˖;YHv"Z@mQδ7kkv.쳟YZ]tk˦xlؤ-oc;{s(V l_4ETYFTǬY֟,a&nf8: rp2-G 5kbÇ uX&%m$Jn99kBTrGՙ%j˥1)ǩ嘺Gŋ豉ի[TjE %I> C(J*]PݶR񬏩{e2\ZcTrG2J|ijh9QMH#h3v@(tǯknoqgΜ1c/^M<߱.._~qƬ_§>f$v@*w]_V(vD: Z z+v:-\6tGV^Q{*߾֎)DB"0!,UkJ \V@':ɢ^m 7\ɴ0 WU!B!:ȵ&]] "z8"TZpB1jOj4},,tv7}ZJpbB/-wZa49eywL:t(UM.YvWzġGRv\$X/Ijn o$ڠPZr6 Et˜zeѼ]:K^rOy5Y2~L}`H&D%+FV)E,F㤃g&:;h  FVZYFJeW^δwf;]JԪk>)Sya<4d /2h_||7xQjڈ(xAhL7ZfoD.9Dqk54=@$jBe @:0 f}\, .!L5` #Fkƨ!S?(9yk}"S@vۮ,#pCPͱ]Km+t˴KW 4Jkǟ~XtRi$ _V]H[q;$jp-2p[8ChM3;n)96@NÀY _^w(聇v1y0Zy<.K(GPbЬ Vq4@sJ~Ep0HǦt`@KQIENqstLU`0!8*p⓯$gCiaA66(Cs (Ov[ꬼ`nT)z] ‴8OlEd7CD ޚ8.E{۞kC'~iRo9*F?DD`Q[&Y~U HcRr\yҒGVS8T>c›QGL"PǶ xgbFRiSm6F'蝟5Zm^)Sz~e "$Lĉu#@H!B *uY)3%8B@ O-el*jqnɲU0R⼽}BXhZ;nʬPk"z*F#N Bl0DjYUKJ萐NUl~qHNT"9B/E2&1T2G@ Nj|LKjQ˙^3\@2o0V& $]"*ƀ+'\WWW2ՉE)UE9<6"d"5j\v؇Vrq ?5M2J[fB?e΢[2DB5 AL(I 1ib!~ K0sWةsTaS6EpEkzC1Z̓ z-NQLbJMUcLbNg$DF`0KLzꆶ]wV]XqH*69b=H_]yDKHs%^D(E_ Hz!T.-yj<z ˔a9x+ zOdEEA38|hP^q_]bDϫ i+% [6Q&]`$򶰢W⬺Qs1#s$Mrv Y.sh ܱG?&TO,~F}[ kX` ٳSm?mFnx KDVE"̰hȄ):@Y IbCQ7^Jّe W37k.A 2 2dc:rG5,%3gƬa;5P~jq'(He5BHGHj5 0&2v3opd(EwR*ƪr>1{/_*lF3eDSQZ%NTeƌ}R1\}2m\?NXL <Fjr(%(J}UH9k}TAZm4K4yk֎2d6Bå&\fg+8+݃lCJhRj)#H[UMX ʡh(+z oiS4F|L(xUF2%,IN#k)3BYm^i]. 1PUwn)BX.UO{(QȉN(O.P6fL[ήJq]Yc0H*x!$Et[= o7E춃jN,krF8SL<").+T68+e²fzTԨiG-.e5[֨+Pjg3:X+lUr*#&Ye (2ap dj9MYiU0UmIOPsc]5#[2u|/]5,[23k3!A`2s $AGR"!D} Teaj~c"dX3B`KDߙr徊 F(GHū!HtbNugOE`jB[.hgUN)rT qcHf%"{F UwQ9".fznYk 6Y3+/%{&8 TȤP]"?ŭ-dbHb8ʛLԡ2sKZb!8ldk}d*us4XY; Geflm6ܶ-jV̒2 Pv9(I)GCA5&2l&f#ڞdli׵B?è{n r+:mOҪ'4 go*IUAI*Ŕ|ϐ`>FZw'#W6<*2j” !:J[3=FUaKT4ddjW| ʰ^7(l"F}sSȼHƀ 吷rf ,PT?r"=$dVoȯZeK9 U18YWUR&Vg#r ~"[Mn&\s{(V8L)JxB2r*6 V*f]T.kVnV$TUD[䆪# 7 B, 'ΨɍhRFUe%;Pkٱ}4{nJw.r]嫶q4U*՗uN%, 3A 怪ê!v:s2l j#p:x䡐V)"#^* Ӽz%7N<u HOXU:Q|3qqh +PSYlQJwh*7C-[2$YBZ[dg%%`r x] ^k6WSV<7ΞF~)*?YTCOZWLH ^+vI͘ @'\nZծPkEbKF?XFMv)u41y !^Wn{Ebd-)jQw)l XPʧ4XiqFX&ddoQYfEGU;Ն(/boPA9ۭ@*"ـ).?k}TRX@b(S{$!KkP^,*]Sq_qzGLTEnl,Ł1* .Jmoӊ]ޡzpȡڙ([b*ZQvG%p"dG-WjnHC[&w}-#=z2q+ketԵ &{Nо#YKۤT j"+M#nו?-^^fLD(0T\!<_`I"lm/ìJU'M )`ƈ̓<,8KYCp[yk= QsOTKP ʩ33 9a^Vcl,2O {c/V jߑƌxG90}pu)S.$Axʝy7sj/([J|Ld} z37mH13ceF鼣R׸w#*gf7mvY1i?::Wq1FF7GZm2KY^eorel>#bjoжav%(Qv^uGϝ:r[>߆:\:čTgflh}g9|Blx݁Q\>r *ЊV-:j'{@۳z~ִ8$ YY%CUlCmZR@UYB5P(6֨,lbEM`!^h_p4d5<%LJo_ ~82\2ZVV$^_^4l>E& ܓa@6VmؑAax7rţ9+εr?-ױxۼo5Z1AV]rxWHQPqYU|aU}m޼V6j\}ͨ|U. \Vnw{?į^mT" gv(Yhj[ 9"ciZ ()RgH*xSj$KOU'_7E\@ z?K TPMƙ) F -[ @n7-zxn -VB|jd DW9}쁇f 5<ŝuit&W!C:xO%T88h>J|3(Nso}RcS8&ē%r -[oUmZd ˑo3f~҆6~RREA蔊^L1v?mٔ*!{z^U]nr -XJ%Ͳ&Zv#y+L˂A`'1-!X,SeX[*V?-ET#({RJ"N/7[o >é+ 訔a0V}XYc;;-[ @nokhK2LGB$` .Nr!q D, ݊N-Cf}~U Q=jJJ"""T7i /CzGqsN-&Αp7-[ @nc 9xSJ1<Yjp:"%ˠvJ jIeiD: %#"ي$lh8>-_ 4S䑜x?r -[_aׅ{OfPP6mb°D;_0dLPS؈ Z|feR6gJښwۻlu+n´'-WX,?Fnr - .x=jR22/tEdT3MZ68,ʏLB_{Knr -dn,%DCTINj(a.!Cf0ڒߴY*EcͼSdr -[Ͷ2 jnZ@JSSOn2hB AYqmy(t.-f(?~nr -fX=xE~dV}R-""֑+QeV Cd>@g&(JYF51sxZUyKk)s -[ V/VfJfeQ ,SGfyHU WY~!f%J 1dvip%((kef;؊*\r -[ @n-F!0RU ^KMtNj;d1 8NRV .(]$Ẓ.JHEWW~-[ @n^SKMӹsS5Ue (d RJ;h=]lS?3;l r -[ /^W="ک|: [uB")>@;&$3ZjÁ9_l1}R?u?|15= \&o aP-]{#CtQV5!N2yk$dTem-[ @noU . #C@ A6S %?4Va6T<#"&&7Xo|I9ȧT`M؝hY3ϕ-y^~0ު;r GbK?H\Hnr^FT mCoQ`H GG~"SMLn\ eSHLjATCVWuBq?$*'J[ #ar -h7( m,DOR8wC I(S4PR΋]7h! <h4 -H7{BѢ=]d$ke%z~ѹr -[MJ'|O#mQ:L<flP/"-!M#~qHkJX3ЊyNeM28}^߹k8(x4$<Ѣ+_&XQٵqE3?xnr -Je4Jl]N^õBFv{זمb3 TI,LqM f4gԛ4"hFs9s?N6 \ CK#TU a]䱐s-[ @n; B\H҇p#(QĘP9XLq?Q5R Li0`g\tAW3/:;fH\1 SI`h M,(?[d*-I\Qar;?snr x X`ū25Po)'E4J-#Պu Cn"~#Ak07x-[ @n,!*pK`[rQ՛DOD7K6j nhT ҥkVZE|D\C ,2MIzm?-[ @nX^S3:K`T`bšZ dr"ƒVX ,2* UK5x'hG=ep^Vz-̈rpr -[ @n7T;g"r(bfVlTtD1& pĞ">86{F(y *@}j{/QoRayǡ R Mg~r -[@ӟyb\Y ":aQ$d%t8 8c:Hl(F|A*\Qda"arHbl7bS:uY"':RU7UPKbiwKs<9hy-[ @no{,>B̊@QINi[X7]HZ %Ud>`^nB1]9ŨV7.D!o7=zN[qQ\OKSU-]*?Anr X3x\C`'@&kjj(dPb6vD~Gj!;mI-wk^,omV*A曂*SUĹ66+k$%r -[ Y`Mu/.(J5xdG f0!ᵴqlIT;V{ڈiERS;㺞X  0j"U FSeHhp>7Lӈ[abT)V`?4j>9E#R_r -[ k5ֽȢ jWcEpD,@iBŕAT>RK7Hs5 #1y9bk&|>ݶa;?zW @0 cд~j{FbAlٞ镚rK!>^ySDD\G-[ @n882vb(C$,(kGU'%$\Yupه 54 -cРZCpܖƦ'$4 Ne#6j5K M3u:ZjneJeS?tH%$@nr X# ~}kU6 a,B4 ;FNӴqSPDDi MX2|q]p1GDlHyiҢka=3ƶ QK>/;󓟞?T*Fzٗ??.ul̀8B4h3hHF$8@nr V/V=ppaDIS2GV>Јf0晀 KkRn3I#Neo+/S/zߨz:4oiϼt;ֿ\OtE~3[Ư9?_~ύW{~KGӂ늏L@k $6vy7-[ @nkb5ӽЁ ^{qSC/$:fp;дÏ= 8F"^m }V`)EvO J//XߞZ}J%Gf0 _m-="CpHJ(6!51Qmnr -fXsm-U-=GYLP `Fuu00 /Ԋ"Iʇ$'>r7>|㍏\u37]еWJ+. R'_MtV(ƞsֹ~9gyi1g_su\;oPtqEx 53Ounr -XsxAOERI*qiq҉'yX Uv(?~ӟH.͘8ac_y-T)L*n+ BaOb$~хʬBqv7馝VGGАkiLSԋ5$r -[`,XEH]P#$4c2m+F`)q/2-PyiwvOxe {q.ͽO~ 7` Ckj_rv1/ ۆu(ؑ}rRN.+|O~J+i>QŚ|r -Xc*B9%BT+MLڊ!~Er9>sI_7<VJ꘲ PN1~qԬwve:_m9dlvȴj|r - J ]Np өDρV0rKI; )j*Xm΂gGm]Fh4 ׋-;I+Maq1I!4Nwژۨie".u]#4@nr O-zx*+bEj;sY;.·! *! naG]#D7C/z i{Qo&V ?&!Ĺ  F>4zh%Fl^QԷtqgw~'Ȅr -[MūO>0ڼ  `x s7iB<JgI`Z\q(WfeUdFwX!O7{؈XtVpD7x4VJjGob@p,J-޴Δ8@nr dx]x1AVMp%E  CHY`EPU'H3Sf K``0n Nѭ`r!T 3L`GjY/T֫-cSU\kU||,2s ȇr 'Xuū 宜&o1.[%vAU3FE_(f102 \ڬNOC6H!x!9?א[ @nk082 "3p%%P(eȢ%hp[$., 1 1j0zj n3y\F-)ޢ{bz@:wn Fr +1$~Kȃ"m@ |P0%D:\ҶlgFĈ@Y2d‹^q%;y- /t0A-CZ[-[ @nkV/Vj簫@JeZUE<do Cr V,$n) ?hժlٰT,/XE7 nƊ#,v y+r -kËѽh+C9Ӗ覂!' mPX)}68Ɛn׵8Vְi-wAaD!zޯ|r -[ͲJg$R"PɦHPpuQմ~uW;Xj$P"uZԂ~!jhfC3k3ξ`wU X9%Y,S5_FRe?r Xz-[k/BbJJ$dvR䏢}ʚX>0[| -hv`_wwd&-t*DBӾ}_{'EchAif*\+@nr ^(I,!:A S@@tvJ-m|KO]%W(D+!yQ?;4] jrXZfV"Id!#!U:*^"eZŋ[4<&o3 -[UXc݋LyEj(ȷ_-\LQA!ZܩNgq-9wJ0,3*sEOUԦ C Qo;}Ka >6م&;;W_KEe+;Ѩ .:J/ىF2 CYv6EN*W'} BjFva{SX*%6g̾IJ4 n+̢,ꅈju Y\Feɱ[V0`ꆏ=+W]~ +& m˨SÛc|S4r^1=`e>~8k]^iiA lPpmn?s -a^vPQ;$:!7G%15:" n*![HJ?[B^(xZ`3L LcmM2:VjZV\,UtEz`58(nQ :F#6B 1HsԝbZjP%,BB0Loaˎu;9naCwykec 7Jjv!8~̬h\!o.׀ObylA5S5ſPW8WKiaz iV޲[&=ʳȑ$lb=-;1e3S*pޘ "ncVZ͡yQpJ;q8%@'4̦f\n`o" 8v i]te%;U1wӥv`[;Y.w$1<6cK+j#X%i4ضt׏-کn=R}ԍis49j^8'Z͕;kH[@65WINohVQ:abVˑf.D\lc{]Rs[әKaWIV51T@vic`[[ [ /%! 2HID! fSIR.8+!LqJS*DBdU-!8ib㤽$md|M7rGdɖq<aԌbȑ$t[L]qZ,WAl:Lz b9tRcG.Z+A+f_ݢQ G-@2b=i~3,X)e586a&s`.ĒZ#IuKm Jef!p4 [1Sv -xCMҢ4^,S*At8ȣb tN5n a)nRJY.+G[,sXOG̃6Sכa ^!em3_EEfǹc6WntJwQj66Ӷn[m؆D!e1: ٨`P<`ҒR\ !I&;K4aGgU,y!Ԭ@>p[@aZ9Ҽb?jeM >Iwtez/ xڎW,s_wE 8 cAAg$VqDeY/5NS]@wK>V-[ ֌{uxPd4a>0:c›S1v6ks:㳐*t ¦rE 7Iך'lFlVۭwb~Id2CXqήFDA\ 46iFn` WU[ 0 zѱZǶZP`e\gR5(P.%q/@-N$BƑyD<'L:˕V vrJ]$eL1^1&KqH zPG]&p 61qZĶ NIGTۦ`ipRįFRm[144F#0 Vꕆ$}Skiutx | Y !BVe K]tq`;h5^ ɴp*0D̈́e$c fa IPok7c5qߚaud`(S _9)܍Xx Z bvFGaV 18'[ LFWkh]q74ƫ@N#-mtY%b$~ךx삾l?#C9mVVlnOMGZ|\({tj@m?H̬Ỵ1];ْ=n+oA#XxS.nB5Iֻ,`6"\d5k˿o~z/)*:h,zaɼEz^^R}6@,1MC2HLB = N8LE"&䤕Rk`i%xTjDI~i(sw@+ˢ>Ԣr\:2A9Рa`M#@0a ص ^6}_CeԷ'\P("@K\{u6XOᇟ|q[ +[yDU8~l FI8fap $V8Zi^sݢatVTGkr#t߉>jSx XGM#kT ?/O.dr+Xݝ=}eυ}}_g8YP&" i fmpg]p쾁-Lf䔭!0SyJS4{}=pjM?uؕ[F.[䲫Zhꎶ,_咠$$H,%*9[g @"._sufSB-j [<榾5*-զOv߾;{ H}[ @n{ ^TBdJY*w$W #‡TJO`i SVՄgĢFD%2>t&r4&6T=GM2}\7(* 8nqƙƮѤGIxB@Ex^&8H_#[?Pap n|Äu'l÷|qnÏacctywԎujKҊ.czSnjrw/Znp"h_)'mԽ/\14~׻۶\w+|5+Ͽ6\o͛AAs@BYk4@i`J/x配K`y=@K(X'xԱ68k{s1tf3ϙ0"dm޹}YoK5un4''X)zӍ‹]W^y[o6mMb*=U)Wsn1\S/>1cu60;{[(7xQ;~vw=c&ĕg{۸?/5D_K7^u}n"@q|wG.-V?N&tPv3ƭkJWI/,īK4rxJh喫﫪;NcID\kP6{eK/0,C$>~gųf,uY0D#m M Dd0Hjlmm~˻~iތE}烈F9vă{__5o;o䙇!qıGn;f]0o8':V-y ^2gy|?󸟕Z?/\w=Gafݿ{?O}eތ9sg/ wf}tTjq/`T+bFQ?;yӍ|pywzOܻY!^z¾O>uOg'?@pd=;_5'>?9`~:땾%f,ۗ(C>'?\>ۯzsٵAb"ŒŢ]-O.XV`93_!sIGA v:hezѴO<|—UЊcLf3I~,М_{nw 9Va %E},̎<?qW|FV<x1KgCH)N=% ч\ajA BHf@&u,[A9n(>ߐ,T]$o) ,^/b= qc+/?Ə:SO>FU:_ ~L{}x7ZmSN:f:7쫹JfYgtɄW_ nUn`U{}^gڔ N0a&I ΙhfoLXܴjuPƷ3~2c'+I)ŵ]vs¸)ӧOY,ATouI?O453N9..QJ*.Eg Še p{qW<[_pW^O3 ]Ǯ&VZ4qeL &rބ)`.7;'\1('^Ԋ$֯:cނad؞ ElSOYl@=N[W3KA̖1s3 g -#IС_g,[񗿶g[$L8qOUL~~;p7蹧h 1X!VdhP9):gJr^*Ĕ?_֐TzߥW$l4qAUAuV?)3g( UI1E' ,zQi' C4r(8" mzuo׿6 \/M?:_п(txّoц\KeEnFQmm ף{rVkR.B&r|m/͚ zD U'D5V#p>xk6kqsI4gβ7xޡyrvs悁)”kviE!?9@|(zA+LѦyK1:5K+MѬ2 NK|%3.ӉbEWЬNMc_|e{yB+7V3;ο|v54X 6/e95]㋛//|7-X6%t@4sYmvТVhLz//Mӗ-ZGvH*)iδ/t=L 8m̻ȿ{ČZYs&j$͘jlܼާf2a HB zgˢӎ= n}ԯOsܩgkN`\88whޣqf1nçzgY_o%E}ze?Hپsp~ho?_OsCz:wiWf?wռtҴͅ/ࠓg-Og/ot{%˟G=Aٷ+@nkV_s5*#>#hk@ ].Pv&,oYC2'\:%K/y @cyj4"%ne}?k!R?;~ 78C=CZɗK[jf(ԍ[D̩H^֩7V]o(Z]э"`Tq+1%8$btm D?CeK |-/^SzdPBV](`@CVSDb$Amft~#;RV!BV'->O5E#U{ (pH==[A])wcFH,f{ZMv.u6ڐ:Bt x"NH63zWN:ܖG&ɠzG NO4ժ~d UӮ2Ҥ>T}ș3|I1%ZAP,R8.E,!n݊jcBQqI= 32 ty2A;ʁ{L+}5'>)cDHIPnϘ<Í ʭgfᴠZ0/(yfK{z65,[Q{3֊EYވVo5vtl#`,:)GR5-F dem¿"v Nh2|4(RF̈́a5jT;@:ӆ5i頣LN`T@Ѥ*)2]Qd"o,{9S[~{$CFS"]!LO*q-v[)sLܠ"[M2$tA&^IAja(hVѥR9A &*Y4&DDDsl+T̓ ttfO#~QHPJrj7Zn,-w#d():EҬ郃582Q'N4kڸγ9s;بqV='pҔ)74ܳ'>?$BdP"y4vWR(bBLjv_HaJ}zp*}f%]ɂ4QM' [(>_Q )eP5jPenX2Шkw2:Uqnl'e`b- WHVǚ^"H $Ǐ"U6W dLHv8Keң!\Bˏ F׏tejd'Jlpc q=)3mñ%os Vexnt!ZM]܅3/臶!xt|r X*yQm wJ91%ܙW&BWCe3P",$2 TqPg!+;mI*_J#% VIL(ZRLb@L{ h&_G_um@"Jw|(.!%PU-F)`A'<2 Chg8Q!ʎԞMpX#\@6jl (pTDdjC9+u, TзJg)zCt5*yʎ,6IE)" !p(Ma" PK048[B)#o9XK; z(=QmD=%tJEBeD|(d#ȒPʨY( =SUqj&,t Dfu4n(.v[1|:29> 3 vk*&[{ܒDrѠ@'+@v+zra@ ,K'."H5WF(<ϕE* [Ŏ"@E˥H'(şQF4EiWܙ[]a *.1= [~GwNͷ]1:\"e[.kJP!> er:d-[Yu,ޡBбfHȞPLb+8 22-'TTTad @w tÙ9Pf -dD҈UTeW-`'c7GS2^TLhBH[)#ݙU_3YKHNfAưΪմR5  !-JĔ(K 6RXV(nḍRJl`tJ55-LpV Pp]x1S>PXי|8 bg[a4B ¿P‘5q0PkNɩth@ [վ&]VCTGq7f`]`/~RqC_OTq5B`BC#FJN=RFZFRTlWF!v4"4hE,AE\IA l MLJFvNTj^ZrʐK0 sBEH`\Éxɮ:P܅(NKXԅFqz1alXCB1 _"O^)'ģ1FQ$Qx20:+nf3vtP!Ħژh3)=[(^zsLa󘠿啨8C#F*'S^{r -Y^dף*0FՀȐ#T`pz`KޒcbSq`+nP I6:}lIZ"rS@S@Ͻs u$-̈́h$T 4%"IPKYY 0w2Pf"࿏(U)0}7h"^f 0&⌤hMxI7N i5E 5 o 9&jai(R65ݢG@)55$\ڑBX aݨ ,ρ먇Q*X%37v,k6v )9~ܮF})`vjQ\lJjМ\_IhsKfݣ:B"j $W j( J-1KW6yr@P,JB&UA&I@5J*zH%~V U͆ķDβ6X+1EN쇶:三h&!+TX#~!,Lj- h1J8m/8:wlb#8glbi .Ǝ)fz(rf;KnL 8߇TJ%o$.`Ȫ-=4?, +̵o[[ [,Udaj801G{GI"^q2< ռٕ 70C$#OÄ'Er18—LVrLI@u8 xx$Qyuҝ϶Ye[d|M1A[\yEvIe#-՗< ?6G$Yt% MیꦷmmU>sQ׸JGg}`tFΞ]QL~5r#{+{h-[`m^|` sb+cf~*1蒙FFesN6P `v;޲naq d9V Ӑp ّ[䝕7yKߌlW9rV5Rveo^}#jSxf"^ 3q߫bk:|G.'^=WiƯ*vUVʔR UTſ/-[ @n" ^t"q]!2Iy9:u0):Pv > Nf!D B&;h_J)dRB+9榶B( ?MY%- ( [?wӕWΐ&@nr k,zxM[@ CT7SJ{Jȕj{dR&"[JBE^""ḱ-OTDMZD5\C47aP 0:wm[LXL {^ч6^#gl4-'ʸ2r Ǒ#ҀUFdk}F*3*jgݚwG蛺Jg9h_e׸A+p#7=-=n5IFp.L6I5tS@'k=zi336,<#|~;r!>{H=.+^~ReÎիLJv j?W#fyߊ-uݣά/pT=&N;wsnKdJ^*[[~͎D|!0ڥθT,#V dai.jp e}XmX*| $iR.EhI*%Vi":QaQ#UX%AҀJ4d/*)Mޗ@_Fiv(Vd@aELşڏX.*0Փ͊r~+h4bJfsQ"ѵfC~9[*+U9pSimTQw@i a3J1E-ZRwxhZDf3_)M~5 MdShod[?--!>vPUV#w< 7Iz9htMI&!TYuKa1e[QМj `na#Sa #JGAeb7ty epA/qe-<+ RۿZL,II 07fS$3nS6PǍꡰEp,<_,Z-K;16'YHiIakVe mN Ϫo7bۄtH0~&>{ԓEϞuD5'U*aݩERїsҷE0:##$۪cqEl#@g-(`ji[j0cǨqDΘ ,lXRQ̢F5%fyg ?c_kn.PG`N4p׆vTڳ],ϑܤ,6n5ڞ}DNkx`ώHb}+΁S(-Zi&C=Q3[^3`m٭$r]æa9~cZ>T*-r\F6m 2jbIKfz l:%5( dAce@bGIYy0~buu+t(,e^OWTQtz^7C]B3بNKmYi(*BԀ[LQ> S2=ii Z@.ô>-]UMnMx=!y$)ϖzIXjS@I4Z-'I\F7Xȭx E=zX,2p̴Vtt7J;h4V AP*[Qo-g`@J**Kh p½0}jVQɳɾzN8(vtu֫ GwmhU ]Ij6q\F2}5XcƍzTM:j H706CX ȅn݊*N٦~# {b+Wh&wV2:,T,Q)Fo^[Q+i \{Ze˃_ XU RԬ{i9XZҥ$ 2a2(77Z[.rFWGѬ⠕W P#\, vvvVkX^/=i5Y*u4"|8#izihT `7rg`X,EPƒGz A(lfpsLbMntbj06XۢF`_q0_\T,aЌ[a{2~yr_-0 nV 3Iˬ%ahFk\&E`j0),&\NyjB>d;a˺8~.YVtЃY6!&Q,$G7*>0"egjK^PI,-F1ȗr ]w2dr4N7HvE|* 5mAB]˖8") 3d6ۮר*[)0Z^ӠnSZĝU6nRG1; FN20D9DIiMlXۍB%Gʳ8JRb$tѼPuY#P&QZPj:NayF$ѡrMskGx@2mo% CxK;ݺtj3+n <'Վҭ$f bEs "" '[1== 5\0 F3݂[k%p@X]GbiǮaz 'C - %Xj3QRam<,i(HovZ8 zttgYn\yzղ.7ۚ^(til,4Xt]2Hzu#-t"$Iago'Ơ:b 79%n.ްU$)E[5Px 'XI-KwMv{kJGy>8Q(@՚SbceU0$Hm3rѮ7qZ*~e:ܸ0HN :;KXQ_+ !UBpjG$1:hns̜Ώi}&'Q9n3KFY?DMz]bIL<-0۬tE6.*taY*x~_6㐱W{/;&mF|Vrx[i `UI;'&zE`F+20Ŵ98޼k?&8ZZoPH'},Lf/n *%*#7Wq\(A s C0Բ _ŭO,   Zb3R?[aLpF#Br Sەg8 2[zI2tk~l/WFVm]xMo)([riS eFD תի?1> >^9]D_Mp=0 SךUF]Cw9?;Ar\97, aFĞ1~_T |NiZ B`2&LV䇕7ZG, b82O5^Jt/2H&@A Rv7DOEɖoO#u15v@h^PjdˆA;uUsi~ /[uVi<*ژRo҅M=:6>jc#A֌8Hr2$˳ hNa] }ȁ*ӢpL\zRhtIRc6`gȦd&=_k_ sJgGOPwG!\X|\m3)z7l0R'Ҥ Lt6%9Ј"0t#.Tg@j5HԹuoe#ekVm,mq]I$`0AS1swejTx(,ty %]ՂMj6p,PP;ҪtF$<,a";+V6fK3(X}*ȫm cܵ:j'ȂS*?)݇_߾}:f3Dqq70qñk}ظU~ySӹFVqZ n+j2D`>J}(QN%(yaPFG6#bjYJOZ<47qqT ңXZ54,$'wz؟`y5CS-ũhŚT&_$3`P m <Þ+Bq~𡩝M2v̤MOWQ*f:VEt 4" dU|go/CgB5z;NI7~Q 026u׳o2 {:Dc8n3N9w rGuh:gx6a8S̨/wB"#ao iT\|2&kMwJz@fu+@!K(2 2ªR'[ܰRT/Δ c_[ 7UB[28 vBV 3qsLJh=h[`u?`ӳ[L['KD?k;"U@rwl4m~9Wo 팾KBpU9w%Nue׿=΄ SLk1]s4RJ?%̴>8G@ ~@  p3 ٲo3$_X9;N\lʋU݂ Uj{O;4u@\5 ,~jVqY#mU$,/܂J&kQE*ۋܧi#A uRUvoܳ//}~΂g/|gE簓"Eot~6LB^sA@Zz\Sz×Z.PƄUΫ$ͻf%# Zxl4Ed# ==5njOŘF Ҫ]H|#;oͧ%.@>..cgmw_:w]vbj6BbpM.Boz͊jg|J V1m(N~V{3_>c 7dŽgy}9tKD`p}/pLގZ ø,zu$p6 ;=bͪ>Y@M8:f2/zuH+uUsAQ_UB]c6IűKfnA`.@@"#{6tې?Κ9o񌥽}鹛L[I@Nvw>/sš*G?љ 麫 }%U6\'-s Oy[+c9WtftfxQ%,Rj fBamȇyWKUC@u&c;ZϘ %B>3?S3bB|Q2@F<(뗦%GQVȯ* ^aě"NBn(2! Rfvj궗Î6ψ!_/!@h;ϒzwVrȗcOzэ&Nb-Y5ȣLt3jE悮|\;Ee{'yr7¢7[U?80wqrH?0 Na/3q)7bo~O`OXo~NB~ѣTTbk}|[u/ s Q\`  \ST$vğS`č'M| XWcƌ&<=NˈM-lwOuǝNuWtѲ1=יc뎛fj Å|RltǺ&es x#IUgIDwì`9_z7xY/a#TfƩ}IM8᠃7tϽz>8g6\E[W^~v1S&^MB_RD}-'t-_|zW He\!_xI&N7vÉρ}Z&A԰#貝 P;#י4_oҔIcƬۖ.&YDvw츞qW]s_{n Ӷr!(x:O|]硇u6p-X¯d dCym˥5y'hJ el>N>vun8qF?gd،!p2xb#țr҉g,l[ohMD=c悥['6[Ovu7*!Ȫlv;{}wNӽĩ|G:'`@n wA/N;~ M-4}ۼԓ~ά@lH~ig7g cnf6{?+{|>}'|xFK/XӦLĩsXn5+-?^яm3zx4H_o6~-ZcF>m$zucfB }_w&K-5K^%րj{K}=QH6P$~efY @bHGG`Y9 Un?|SW_iJ͹VgLipw~rѿ.}i]m,^ \y{Y  6^Yp=>woN.¿a_A!LOc]>0oK"TG?n?g[bV3,%{Bg28gv7w ,2GnWzZ@kDR]1jQt'Bߒ ݿ P^:''wѼ;n~3j=G馿_:=綋sf??A8-?8`#f7^=._ۯ0Vkw#O^wq >#BØbg{n-6)lj]VX>{!Թ:IAWҬT! d ~#'^>)oi=ҜOk\\.L~/?_׌ށ?/KjNYg_}l~}3yG]8[VUjAPnny~9K~wcI/x|#y>>yf.Y]|w|w?w\6w^9csL3qvPu7r|mKtw]ggP0m_+PB[m2VO=vw_^0+_9@WϘ둇œ/.lO 0d1܄!}o3oE3npoz_:F {9(*ZѲ9П۟t9!:mV+EngQu6?eY>l4'p)[n?^vY[[}^;~}}7Zgʧ>5:ľ*1{fO[t=߿&N>G ߈yz=cƯ3zxD[ߍx_x'L@q3nꄞ c֛>umwZĻe=S=_DrH|tP>yc{~Ϟ9ǟMI_N}g*!yXMʓjc=̥Ko댛0e>MI'r)f^÷.T@~~x%ǯ{@ӧ?/Y;fjx iZ2f8B=׿&[D>Flz?_V3g '{r\ &KkKa^)Y3ܲSy;\2'PeRέpM3m8bɛo] *kNx 7,[i=lՖ\_Y-kw;i8v:yQ0ӷmIS{.<7iX#/\-&Oh cO=ȗ^A0ţE8f2>7xLw:çn1옄ದeMjFW]y9kLy1G4s>!zH3ޓ.跿;Í֝έ6Yt&lN;-`o_q"M{&+M _BDO`7FHvq7.{OKh1;}fY3_Xh[wtNMX䄄q͟yW:u5VvbGsAt`! ^d#,ẑ/]T*Am6^z'&n8kcwqzϲtQJĆx|Ȱ!JV7{3q=8PB7_ywnyP8渣71Q_`u gP]oB;|{" ?d͡7BɃr={VCKZBLvKHzH!L+8o֜tb^otgl%~ 5&ɪ⺠2vJ+U> RF)2۾p ƔTLK+ƓAD/]o ,^:oǷX!myh@rETOJBNtt~ 9'96r¡%q,oP%.}#͠1sѢ[idgQw%Kf.]xm7uv)+ܹK/3oYx!P1vyO~eǩ./^<[hY{~X;{X6g@sg}';lZL)P("o/"I=clϺ9"Zƛ?П"@%Yч !q+gLOzsZVzM[.=eSLQZ2~{_Y_ts#M0 )r7 +L!9Vk8[QCcT%-~X*p5 `f fߟi˫z,[)uBw?U}\n6.D.JhK TťHq ݊S;IH%$ij&;ِKLa͛=s:Ð6,ZSH@nI59ў[5q+,2z8GHA^ bU2Cw0{{CDqQ+6/n]ѺxѧCb4`0]4=H$<>8CHMjTW/ʒo JeipmL؛BZO M@Mh}}ǯ!񳨡P}̦eK{;Vw|8(c[zoZ}٢UWPY15lə'r B=zޞY*kڞN2+ 'k>N#"o(:|0p8hN |;{'{Ԣ!+k" "%VB-AylE j& F6 !# '9qm+z>#%@Mo! o5j5jL \sO?V@z ouȕ\3X WUDW_u媶.QkQ߭w߽xY CգPU#-"ȑ/Ljv?7ߖX!\e (^Cv7rd*plEC8:!8h =&5sѢգFOB) !B3 uPTk$OAD4p: kўTn舾!lᢡGlf| H6cpPm2z{ a'mI0l~m{^m'Ӊ(~K$(=w܍j.:ő’Q4 e 9 XH{U#*pˡzSO«tپLL!ZqOB#jq;0v%2D8g;3oQò&@-avuPA4DYBv9El((}}D”\F xȁUUfhVDI[Gn t;T Ig7EN 冣ԋJ2,p,XjRO:9xh<ڊ(gCܝaȰQ[l1oy XV%GAT3N"t8> @6CNG%T,!ˎ Ȫ'N H0}`E d́R=e<{~/r娿HAWC ;?sxA= KvyytӉ͞ѠAub ˆ*x?SpBy!xp#Qg 1N7Y ذBG1Fѱ`6v iVSNIrHo\g=kf[]=msfO;{3xbhu"$;!#ׂN6m }D(ĔQͶ;l϶ȬFP n۽Tb#8 +2ߝ=zrLKhZMjO mUm Y`u'7lP-0W?j)˵z=XZ0O>%iKt-C ս>Q)huK^cdi>^igƶdsXޛ_އ7fm}ltXHI{Lcؓ`ެaFq9WًWn=~c Pżִ=s4Omd7t[˺gr:*5e_'i;iWuS;@c M]?pMUjyiJGn)͋ZS ?w)9[(CKoyj^޲|U#u6+nE^솛KWiޚP瓱un,扠V'~U3bOsCۜ4nKYᒵbdKG~1Uoj F Y\\Qd6%aj5ߐ$}}'@{O:Svs;ٔ76wLfVu痵t7Uՠe]ʾwg(ӦҖ,'KsIAM~ (+a5nS_`<yՕŎIE3vtO,K/+2'm"$hX{Z:wV;kw>5գlyvpޑ/mP. w= i?=}ŏ^uek(o|㋮{ٷ|w;geQ#7:S |m\_vڋ`xtWkվgy|{ޢ%uvC{qY+[`Guղ{q/%cth+Cu뫻s8TwTT伝J}?ZϞ#MF9l?O%$ΎL4^ x"Q fz&'==PClLWDA1+)@aTXSLVE5#4HAA0Aq\$ &mkև~U z}ulB6$j{⬝V+H#El> z BcP&azȣ*0\@ۀ>ko~8%S0A RЍ$#UT1Q^T˂cG|d4V SBA%ə1[,W<ƙ瞞iBXٯvm+IӇ09v!RNfv*Ҧ*>, ma` 8t&L 0RC!!0; +X ׋|_ \ 7VKؓNTd -P *T3TI[|&qP'Ek+ؑZJi䰀g~njka3k/5xfE/b %C,1X>ArC:@`֝h f}aCuß4KPmcuL_,Z ՗P[^/M{Q@UA&cfP U␲ImjJqz* rPJPBw0j" CKrӆXG;U5g,djc1;jVPo |$| N|+ld~m``HlukT .̒D*g BJVu8q[Kjݎ;jUuØaz?yY1+ H4D2²jD:R󖭼g{f 1:j;|p̦im"eaHFĎ;f#!>Y(z~{Zȫ\a6ʠB9 J1a;GXO)U5 ( ! iDj: %-rruW_ Һx?UP ,ZOM;G) s$Y0f 0GzMAh@^z%@åS2NŪ(lPO[z^lCxU̡Q %ʏxAݬF/Ľ0~$-Lѥ 5: *,S;;H&%" J~z{}F34gt3MT`Z(qlX[Ѿkx:RE')vT8Q}urJoNGHr 'gP 3 s'd21A{ߓCP2}t;w %W\>xH|qCGp[_{%CG׏կ~C7[<kj艀uQ-|{8oQk(jGnY,_pzpĦ6.s7i" ^ q96P 2)"vJ"!,QJMz!>Q1\Gf_!  r@ 8cu%qH&\zAArTE QTvʠ(x*m+y!V!D/ۨym_H&k=vI /A_xp?dȍG$z[{zѥw_yxAHOœ@ lGed8ʣb2^9 tj=|$:E<YygQ;T#K%F{Gb/-2DV5f ( Dh0%TM ~rbR/k63GwCT>36FދVmzB1$F}Pm5. P(/lAp4BA"qAFR,T`F+ӊ䴡Zуm0:3X9#𱪮_ј ^(%B}K HfK֎خ6ih [TnEWDxEH E-}ܸy{P*?5 =mT*ֹQaI _y_zqE?T#M:5 ADՋ^@̀#驍2@iX.@fr"IVXRV.zC3?g "D9>J@P# OZ@l"DI%TZՉe3c$qF(h&K ~u&e  ͊ 8Q_ ?D'@ VpϡMx T0o|D9-͘~1P]Dv8H ȡBJP=(kz~B&!*C"h +Q͔ OpP?8EX96,͙P'폐t$DE 4qVeҡƣe . oa83AD(MB/!{ĦҁQ@b0@9ۅp`f<#p}At*2t@iQ)6BsH%,0JA:1_%9xp*^ w$m:"¡x,LJDD Bh,(JÌcY%ˠuBYe0<BHyԁ (6!5('a {g *YM<( cP 2,1:5CIf 'ATJu:γ( ŋȁD-[cLD Ǒ1D4ô݃צ`= !UC#H uH,sɘ.X FI64#) '*QC*f=cE2@DMT@?^B'&xɴ25(P7@\F'D+L8 (cBe5ُ-({A]&Zb`P )R^ P̛{o@J [0]?pD LQus-mb 6o1`E፨7m4cYtF }8G]!e@M{ aC}^k|~N񂝿l[f(\S[@Y7-g$r rY L>͑O KaFh"DE]iVA]Uq8R4 CGn(9_-u%0rzMaaYM}ɯ-\EF:١5UtT0>K>ĂyK-A)v /Q?>+V[,TWZ)V>rgTC<$1Y+7 +DJc"SaHp(kNq_'€ai攲"#8&f\^wZm67~?bIS6v; z8R$,# nAC}:(%22%$!̤վ , ~1ᏸ0 R/ՃZ,> ESr^BY ?fggwhҌ1u4Pu"(z8T.d:X` R{#qY;FU;;nA04 qG(JO@T2]|yP^(]e::HG?EH/-NƬ11P P`MaRE@t@k/v 'SjA&* pQy7 ̲ *p!ӇQCّ%ϧoxuͣ#xx sDc`Feskn'JwíAS ;d~vPf #,K $9PRHJuw#v,|ڹU=@ *@ իt$QU_3$^HAy*\cʝ+ %z,M߲?;ChX9=|E[[1HR"t}t F& $*NU@T @ ԑ0`wFx*vZ0rvYko3hRqqbR;hs4Bn;y@cO&B|f3FĶ3vwT P@~ ̂+_ Z/Tpх(uD"g?S]X-іNT bP0g#hLU4L(6`#AqA6qSm-`aRT^jh9K%OT P@A@KCq*CmoD[oB5&O K/JL 4(υ*.%X@B FnQ*\F~y(}M㩭}睷qU"{E<H ڪWT P@f8gE ĢqKϝmbgZ}"5>ʋsZR#,L`DF P;6 f(~HBM/j1,{†'`"b)җk!+x>3S'*W}p-3;RyU P@T s/DnA?gZN|L-RY  D,=x4vΆvc 4Pi *S@>@X=>-SᏤ(V5\`F0/X"藉PM,j@ XTU)ƻ56Q@T P^aem}#9̑a "b|YEJNb.3[HEʧzsgzAP:ן9a=S*Ň]q=:=rV8RI3he_y#Kʢ% iUW,)U%+uG *@jNegm%*T8ZFQ!=Ё- 1i_nTw獰u +=a` f@x= y䭂σUNkc/DeP)\SlKNwS z 4'X p87)aZ&d hقIZ/ ,;n?䖀_3cdhG 3'^2+xZtI1teT P@uUw]gN ֽPe77k@R(\xLZz}L^ESS=T̀B<#,-X'gC#҈, -yWy#DN G[H*@ *pň5GsO;Z|:^V*鮕 Uz]_l_E C#nȋ  z(T#B#c/+峾hW\T P6}F"4fI `pJ#6I-pQat*|qD"aoþ *@ G!@3  CrdBS/0Rc#cF<1Jt7SGq *@o,XkNY<4l"U-ڬ`kT P@ ַźmTBP);r.eB9-S`2=}!b`!C%Ç2 *@ Xoې]EUh4Ce&"CЂI#= 3><ojz.d1X)tB>ovTVY@T PXXcB)|~vߔ7 59;C*D Űn81l^7.}8}g V|>_@*@ 9bB1<6v;Y#%ٔmJ(_QmOny57|a-yn뎽-r\8l Rʫ *@ 6|񱽖q"a[/wͥ:ZMа]{i7]r& +/:5gh}%Q<QV?A@2 *@ *PlA<"+B uRޔ-3h_jB>#[ V9(Q>Ų d(HU@T P@ _p( `UVBhdvp|(rE<]" wsٗln@\g([6lhfhm`ROvsX:^Ou-,Pz"?8k20._yl_\ˢ繶;guvĝ#lk$.kDP-^k{jy~uAd~$OA`J>71H0p*ݺ{ DŽr ](>yп7 ]v(kMJ/C~ʚ$=WLJ)12z_9Sn"xR#Y_!;Xx\P@2U)-JI._(T?rfEIr!BBD}e3՗%GwmA8HK}_'8nM%VVU`[ 2xVZ@`źf_M‰*4EF)lQP8e{f#m5dQ jV@3A&_9[ tHdr7;$d2Zu)(OŕToآײYiL yq~g!rML,:$D --?U: kaոσ +U=xvbpz-TpCa|]ќ+eZ9bs25%Of-:A/@s˔'VE|qx9y6㺺˽Ģta EQ7V.ƒ;%.KAp2; >^ DcGHt6#=v ?T=xG2q2nO&𓳷P8&45'drɣG H5`m$hʂq ̱wl|@,T7lwR\;'GxHMf!~!S䘩"@0"([C}o W|W:[Sp⭂I8(i\f5_ݩ< !@$c  Ʈ˽ xKDq Fo XHK&# >'a)yAx&`ŷZ0+dx!X_xɂ*|}B8ex;l| x^Q/S+꒮# J n U`*4g roExH[.9DtO[>)Lx|NiW*,\a@Ҹ"G˩!=RD#0M*l<@['cd nB/e<]:VX0d2!ޯ;_03DS._R=`c xH(ةDRR Ez`pf0 ɘ\[9u@&$r:c#7EQİDsVnP+ybòk< #;+ږ Q+Ls$ 3Z-Q\*q_v`)gM c@fI!h _I=|r78whbF]}(ĕ(^ʳD=bP&L_ W ` +^pcaevK<;+J6$o( M."MP JY#ObΈ*M ^+ib8 _Ijjx6+W~c1`9l c7<+a /qbUJK>t} D7UnJS{-I2bΫ,hJBr"p%"*. '2RbkgHN1X1kCpjmv?_a/|GiaJNc36K&t۩9 Z O5nyQʓ8'*g9*W삭ELL4+(Ý%XeIW>+D=F+ i6 ad ^xhE0@:^P RBqzGD 0ņthxyr Njqҙ/-;HR1&uJLsvM׎$*Kbc!D-ս~4 gnN`ԭ#\Jy q ۠2`1ɏd[1N# d Uy`pXRJ1B|I@9& drd]P]$t̰ }Z {xC0$h"Ǔ *Q$-Pxb/!A5e!)!'8VZK(&3Rpc_ыLC34HJVB߆[/ik%w߅b/oy9\_(絸MU3вsI0i*Sc[|dTsA6&no<ڼ߂ ݰ|0DX"g#Yl=́. uA30xlQ"s:`5Yó,'%}6Qx EESK+#+1M3W"Zx̠ hy0<s :HED,xZ$`!eJ`%#Yh>pV %8"/JC̔%n;&)QMd1F%yP+|#"#mu`pV7/^ZDgG'"`b&K~ X01#65Sؒ_6zX劫IM[<}4]&(Q6KAJcU% % ?avg"*Ŗ^&랬K]qpUL n$p;iK[T%L_jiq?Éh!920I~DӁ!:>\/s|4sKK@oO4.7#r+H>"dXD |@)R|$2 Fl:[քO)C$)x"ʐ8 v܌D@ރ|iPI@&YExC01-򸄞+HBqJ &`r9*"NElJIp]~GD" F"y%FnD؊Rq!2a Y9y()Ty}!nW =yNI0bjDv?i_*$hմ[0tּ ^h[pQw֮Ev.DaYs AvTq&۴,Opٲkst8F FrD}b16=y0O ?x vwlJ7NeҰl:so~ӱ/A3&yL*-y@ѕ8thQ7F"q,=uu1^N;W#zQoy=w:O Ѫ::̼ Dx| ?vx(h` txt]?ᄿ|w.ѵq岆U[| ~kxÚ-!ZU NAM UEpopj Repc)} DXMB:`{G}. C΁}h.ή>y~LqWGkkkˡxqGGeo5_D $|8rE_&Bo A{8-scÊ{M~yKb hH?g(G7Ob < 8#j?h Va@~g6GdnLU}V8`B_Q<G(O_|}ǪcU ƌrАpȅW]"h[g/?zF7:7ǜ\3;W Ѥ-#Ul15ia> k{5O 'vƎ=[Vg;N-?t-9x9-ɀo}M#G{o%-OГ)B~A&lcW2םbCwECǏݗa6xg k[KbA-|O\v߽7ӡp@[+O\q] =yA5 EO8 oD| -5=of N+~۩=vڼ]ۈڭ7g1bIvk y=nà͞+3d*#w<|WCG{}ᆅˆo1t&UpiHCBJ <>l=_ 'zsN2n1~uС'}΃H,ExjfϞ=~薶>\ky,fWjY棪#hѪQW :lt%7,ގ;^r l=|-Fl;SfR)CFCncp ͟-1rбU*sήxwvc16ۀ-_ê~l*geauo<~^|n̘G_y &涌#O>3ݢϾKNzOo]W!jCC3x?вb:?[CX"&Ly"6a7]!Bb6W~1CZZst6Di3E{D*+䂋z->stUMF=ѿv|tr]vw˞C2tlgW2]$]g#Go6zAs FEٮv1nm-Hvh[nic | Ţy_O]ֆG{5}v΂O?B[ۊG޳w?Ѵeѹg=c hXl:̡|@Gv=y9̝qKsKՇu̯~;XiէݭG}^ 2;_y殻ox_|MOhnB!UB.@x]vulUK낖ӧs_O%icyf}rڙgs`8nCf͚uv ?/.ڣc'zȆw߰*{_z72jo:j_}97<*c鏶zÞ( c)H^3v`y-q]7w|!{:MPZQ3KgGa W? [M058_L!t!ka=>aG{Ïwu>M+y&m/1xZ= =흿z{uug`']]]Gu!@#O=w9-}V6uԊ+,;w-6onھ'Bx$z(E0 !Pn .dw>zs*ۛwL+c'u=f3d6wYVvbVs zD&k?魩S'qJE+V-_{Q4El,6|!5O<0q 93-ܱcQ倃CbO?y {Ζ۠{7 SUM+ⲋz>w9]??GN>?}_λZZV \&xoMd٘3j5xo0BL41 WB?犋ߛ/Ï^#\P l>L$˞m}wתUm{ں9/(ȃvX=O<-"l})fJ .?#O93zЭ޷yK:wϛ%ѥsl>iR6mPS9㝆埁{hd2\'XUUYmm-N*gq$zGUnd DKd 0u֭i. sH j:~wѹ\u 3of`y=`$*vDhRDF(IyCU;4P>|j`P Yƫ Z.P-=>V͎xkG=P$`Ւ~IlͫO>t>?Ŭgu&ڟN9fd=xCp ߜ:gzx|0 CN8fXqM㞉Es1kNEF 9r=iI#iWxcN {3ݶѻϿ~ߨ?_@LO;e<1W/^2:|_\1lÂo˹ g金v< L%[D&yR&W7@+$=#Ke |cdžh3jOQӽsSm0Br7E5VW&E0[<=އz7{!d00{oyȱ-C' |] a؞Vo~ͷd3ξK/ F|o᣶6bcv\;:v܏;XըgzbAN/}̰=ﲿHڱcG;|_oi1[KVzD 꿞~qkޱr-sn{SRX5?w&{3Xs s̆#DF/Bw˚7uKuW^=" Hg%OϘV#F zO}uXGxB,1;;n;8neټS'B6قzD~[[w544,s=7#  =a:#Z j?lG3d/>3xm%{y;L1 HhU׍:ˮ룑Ơqη 7 f!c6(,Ua} hԈ _}{*St7?؝c7V m;;zsEDZ30XV5>16#c/=^=~}o/˯<ݎ*?q͗lGH#AXD"f=&w.ł <4qenmmaAR:5V%dxP12/$DMg#[ x]0qOPx%\!n =<ڪfd1<fVA7=ڞDA d_\Ӗ:탓O;/ }:WχZ[8oqС3L\!" rV H(^Qk|*ᖋ-䣹S/af8wj\bUk{_w ~O8nÌ^DdG!W84 C؟:՝ж'mifR G8*2bpEN^W7Hg @4 0s#*@0k14aW>ϰ#PƳh4 p syıQ`rIׁ{~+ g5w{@x9tos_?'ȼM' D!Q^Q'$a8+QLͽ}`v/"L:y̱I^J7u/ZKTg {ۗh^:cseS o޾byGkSfu|#[3>hiZرcuGws%Kkcg"`x7L_O~AݝF! sN]x W|Q=ȃ;W.j[ٳ|rmA_.ddE=pv`5OL+{g1=˚-O2 A!; tinp f`?yCFrR> / f?vv.]ٸq2蘹=  B+,[7} QUU5l6K+o6 "j!*FkkL}qn[榥-<&X$=U^}ͻ?ُ#filGq \ b.oV_h=oI',nĂ8$XOO:$$p.jzJ} 0 _OiC{{l!8`*#H.A%!\@cuPGD#7[Fmu+YO㸇rydY,k3x`P?cnCO?ڞEgADMq?qӥ_vnުZ;a F=crHoΤ:s^o38Xֻ¥*D/E|(^;ꪴh_qLHy4=~: "ͫ*wA{?va+Xz!j^D", p&T،F/9zCޞj>l "#Q^qv|z'8zH#hڒڒffHl.KۿߛM z>zyD#fǽ }5qȟdjw_߸bA::!b7`#a}$=^4՚' q&)l>Ͽ{[q;>1(Խ:Ӽ,DM&+MZY4rsA p_& 3J1zu uu?ev(v$uCimX u͘],BJt`B#I -I7m`8\5bO hEns״NxL,0` MQ8频O!?X?B4sH|c)֪c7Ī ,zog&!wazו"Ȋ U>ps$L`2wf|oCB!OzxP4;5OWp/kj] .UgV& q` ?(v Pތedt$0y9L 6N/[Sg| GL[(;'EDTЫϹ \+56*"F *"ZktsVʓ>[>y=l5;+5'>(]b}#|}>G-LlS\DFs5x#_2Gp RYE25{2{YS̞٧3fϞLp2-·d?K"[P!T? )7u~4q ^Gp\ ׷,[=YNPAah-ϴWL[?˭7Z28ﺣ{綾z:[V|jϺ}5FV 1lJ6}ddG"E6BZtpoax|z>|APEtWi 4Ҵc<`_|,a~󝍙9|evEP"A R>:\1%<N{|\\ckO>~Guww6,*tma6TEAM q#P^~Is钷_OpW_]7:V~2㡚 k| ~ɘV%o62j]a>^}~?~G} ߙ  sݥ>z]zZ +٭fcCyqu޶ jve U9\ {lk pߣd^d5-6g뭳6nqeAy~zռbo_O<`_|XZ9^nZtAL}kg-+rM=11Zw{زX>o΋YW:uFCfB?آ`Zxhq'?n8ΠA#/YL5e:g{G ̨_U; x}_m~a,Do_Y=Zj̱W~u}Mٶfirqo|kl\%rrtDgtg2>r+5ou$־xqq{է+'&̨QsY+MsSWtGŕhO+*s]8nZr;ێ@v1 7_}Cw]jo[|"[|%R]2g0/,Dj[}ZF=XTOg[V[?.}|g֏{7c+ZrZKVflyyv̪vrurƍgbߛM LFC'Xp3e4X%.g= 1C̿F ~ڶ`qzk'uO>cw_Sl^8Wk4o?rӥg<]WSWە*cA}77Z`%N@\pW'v"s74(no]=װjx51Gf{L{or6%ӴOԛKM3;χMC -ss--1Ȓ>uJYF"e*R 85LRzU4Τx)Sͻ1[v̐(˃FRG3OV4~`[ bU?zg̘ڱ>z@]x SaUb4u+?2T":(Rː.Bdm%b(8Bx*Ԥ%U tRdR ({`=(!*P*`D[瓽=}.N +ZG}|Mi`9d59hz$|6{)` 6FrHu%Yk݋vra!}tSThKK8 d0}8b҈ *`aCGd0tij],,@p&UCjjZWF(, ^I y& ^ Id"uUtlQI&2:!>ps5><X<0r|*.Ǎb|._@iuS!~9;Vm&&B[ϧ(3ӀW\}a 2nl.輈3!GHbO)B Fz'%*s-ϥұ*X3ϾfAac㘒 U.2Y7bA͊2t቙ξNq 8ޥBj|BL!݁#,Gc\6NU+o(-#ZH[3%Q7)z> Lzu ;%R8| T38l"  $ w0 c|PbСCZTjh=vsWdRRD ) /?H{2Kڲ &V^_W|qԵZ/.|):^:yJfǘA%{BO,j"4A |}^l+HE5 Ecf,Ph1K!OϰmR8Vpƫ(=ETJ$=]ձDBP HFb P"pr@Z^?M & =&@';(Mf(7D_U k-->G(X(o.$(_T.^PE ב)"O\62%xr9„(9A ͻQ>{/%XJȌ@29bljЁQQ"JeQ7iJp>:fjhaS \@]\6lv(pwCL*B1Pga"I\U)8bEX /3NTdB8D`g z3}Ճ0u7y~-^(b+^C*^KɁrv̢BOćb@T_M ̘Q5bZČ_qє'ҙp"08V& qJ>zݻhi@lQ,b |~,\fX,b <uT_#7h/ֲkecF t5P>Z&^zjntA*J/π(>Y< `f@FSKs n U(aW |=\W>  CEjxHs+RGq|xQa=}L|r(GȚⅣ/dHn }CAYCzUI/V=K/!Ģ; 㸸A5p^/@!KxLQ¿4_ՒVL2+D'NiV*`5g eE_0FRsV22@B࿈%>iwF/Wxx%e p.aY:u&V.H{TC{3(x /l􌐉B^y}]!H/΃x!W!I-U!"/S/x#;|hiJ&]OX*"d}KD}/zu}䄃bQC(+ CygL-3\AㄯyE,ZA1jmXV`}8ep+ d_7 ڰ_3_,B8-ijBW +TΟRPSmPUJt(G+ל* ;E J@M9ҀFa(K#4ȿ8g8 ,\||%mlCL52h$mҼB DG;-B'/<:>D-@.O՘Ws.  Rk | 1$TC[XouKMlnJ hB %eaqsǿ7vz/+$A[=@r|*E= %(|RT<dCƉ!lj3~0MJ JE;ةn<+_mPuAC]@ P Fd.v @ލƎ"S ő/?~LźgJp2#WA2[DS@%Ĉ( .45B*B  zRv3{ro _S0h(_, 5<-MH)e}M"Z+*ԓEstI<,' %S?%rݹ(75!yqEdZhX:_娰Vhwjpwy~ˍ75ˋU(5s>cbsE~ޮ~WohwJ"KzMԿ@U,)hh Av3CL@X b*1o{痿'03 U:OҭvC^Fd109ەQI޼(AUo^22*1е|m[P_'K_d*UPE]^/_2c_0N3@@@| GؠZ^@y5Q Qzj|8g7׆p14pt䏯/垩*?+XoR>bv_ſр%OK0ȣ9JI2QS<iG{Q5gpH"[a*=,5>)%Y4A c]pXuP#xKj >ȅ@n/@K5vW?B4+ܔגlӥs-\?TV E/ U$gTuR'a3#R \#L(K'C0fn{}{ta* 0inE,mj\G_2z}EK3 Ǖ կD~>QuSm l.Tl5f SA}ͧȧ^N1b58* xjD'xEyLdL-ݳprd+pMC~[yߗȐ=RUXգlJGG k㌵jʱNEdka)ߵ˾A?'?q !&SW>0Ǻ$Y"(tJs>wSw<[d#<NJ SK#H޿gَR=9 0\Y:due@T8hֹ %SےFϳ:VvGiCd e>ros(Z6׽P7u^Ti2|( Q\ dH/ 66.Z%ɤjgch|,DOo<2,t̒QT0?t/4;!ިL?^Jl?&#g.*yh\O^7#⿥;z +{cHMY6.10.H;6+_RVMޔXj2x$:"& /IjΝRkOF.){<S9=]ZQ[;ۿ;CS u8+ ~ 9 gwby,w6&S{>93uP͇[,stᮚOq&V0L>p2%.':/w9jP\F]!LqlTZF|@*Js`$\e 2gAB\ %wל8HXN蒔r2oT))3+@Hϐ_9xKpOTsqDPY`GB ].-?Qw!;D%JL" :W2+c9q0X=Y:Cր5/>Gjj+(FZ"?!eVua~/ЊTYKҖ(Eg+bM8Y~* \{ȿ__ad5#do(DZq>b%39rR8 _Jw`E9uu J%*:A].5([:ׅi~n$Sw%(B{I18U7nK͎QK/jIB@A~6--Gq.IWm,^w澆,~3;oC'&KT|I"YzS|4re{`ςqqטbH3sGV:iD$r2o2aPn>(C,7A9-@dwfH>ܹ^DrW]+9Cubf,Z{iѧ1Rw6ҌgY|/Gn+QV>\ PQ\ ݽ,5WJ>= kPڠ lPJ&+Ot[YϿ^*!@Tv6v%Z^JCŚbPTntr˞F,X_2Għd!HTԽ j VTbU(929ag=B(rPt pN(w K1WT*˰ݹNkG>  = M -e5b0Ɂp7TG+sͼ&W|sJ>%R9ˋ{#v Y(騷hKR5j IE MVGM"r8T<`Z!4_tb4z]7@-4Wt`稯jbt KO'4B冬<] V]C_žHuz8Pbyx/AN7@͛5=WgD V6 92(Rҙ-hA&X" `pQ)Kju;KͅR+5}l:\ҬP>R><¦) ZpQA Om/PƱ]&SvnҤ(0mrG˫K+- X<90^Us,HoQl&Zr>wM~:R߁_)hk+J̙ eiDJ #6c2grKA9Žf 2I|,|x=q ub?^)J E4 YV(݅-Gbp|h;s3XGޗ aׁQܻˀLQrqDe%ތ\|+ę )u\]2kTv'!H\."* a58 QwbDA"vˑ/ ;G鿧oO˻7Զ;ů鄛('#I£C!5nlqMfNrp)QD7VQ1CMձLȪ*^wo.~h*V`Ba+4,i;B?2 N P6Q0e PSR^f(%usV]b1-J;W,T߁.~ImSBکcP2ѢVA_\Bi]U?3U;Wb#΅=򺠖(B+_,DYeT\O|xƀFT@PGUXxeIVi\0  @E F0v\hZ^\' M}5 O)Z/`y'ck+Rn,W%.Eɉ#0s"HB a>mҊT8.įnBPBP86`4QR+ a~IOmd7fEnv:cig"W+G!Ά)vHd f[T{p Z;X`Xxj?sSU; @8sFRv``r492j'Aq;^L~nuQ1ΰe֙,%Q:݅;ԁ51cF5#D]3 ("I4C1`YiwqciSB1:¹nw㗄E$ey_ *X&,>Ү&?Vy}SK w04Ơ4-0i_ y/ϡ7X%K$Q<.Px8m4JpP|AGOJ@)rvT=w&r>%欜.LuoPi#,(F#O> f5SSrP+ oJ1O]+) ^)+#SK@؁1@[QB(6 i#,HOX+tP0]B^JrR6!&>WF_$k"OxЀC_#-Th|ܟ )8oJLA(G4 U?~'.EܝTřp\ejFUD퐮cljMD25V s4EERת}+cN5øZUپ;s% T(3?N |2π *- %-0.(!Ӊ_tc*S% Vbse2g(;.Ү *gٹPH~QE#B| g E6Ycjn)TFrE~0(􉸷omtl;[AJBd끨Iy*;խ%VaCɈ;@+g vADxuGVPɃ8rg0gʟ0`jO8V%80€Tk vePUQ Š6.:nPUj0QkibG-q+-|3J:9,:A)%T.< gS%<$E2Xl4(nJV0;P,Tshe\@MOg\h&|F}\&eBb5ԕϽJ&YajZGbP2{*O0οxeU H!N SOL*SPug\ jV P ":CoA\;WG;$|dKmԏ-_^-/!ƞ9*]SZP?o.𰡀a3B:`9SP%`*:2Uɇ:+9BL[(_Ʒ׫yJdPW*Lb$G6TiQomQA[ጃRe* =X#xIrtD K`вU¿5Nz SvPQ1TPr='8Wf . `o$>X~)O?YUs;+u0< r_=t+IH*Ap POVkCl#n2$QeBp 2#"oPQ\4W:Y/W{K-qٟ\q!nf9{&CA%a_"SpV!Sd+eEik 4wX)(}x\{Ɵ`\G#/R9긥*mWS+*FiLwʥ%IMS>HD9GH}5 U^c|GrPS=HdHEd '?QS(y(dQ{K!eDoJ/RSТHnrt0rD<TA]cvƹgy2 ",c)? eDdw,:xhDlW Pb()ٹrЕ"G[9] U.K]k 0x[ipkЍnCT崳`(k~ 3첈Nͦp5Ka Kx5~‹ETkt[c3`(Nԙew#.R*fW1%re dR1^Я 3]78Hܖ B XO/-nKZ"1  &xl O!=`-,M8!5/T+g9 ***r.9 X v̀E_Oʼn"9x"?0c+Z;g`'E P$>LfyIYU /E6|ĎH6.*ÜX6 YJB@⌓hd.7֒h5tRQ(8+@> EC>quD4h?n2em˫ vPDZ}Lʦ T8]U/g;u;zi@i R!fI[q/R- b+l`8L rzMK%F3ZgeL0$Fۅ WSM}T|lwlJlTX~ y ,|f!#=|B.vN")_aEF]V6a4WpLu/ RQpGɆEg R7U#M[ r1=يɛ*Lv9 D ũԫp]0܈Q?#P$Ų@$"!Q@~_GZjcbsT"TAJq肸/T&0m 1e{2A 0 7IBD( !ޟwȿW6FSNn\E)S,Hm@ȽBس3lN}"2=?TXTv‰ڣk}!Nb]R98S 6`a% >Flr4.8_EH2cc|"ڣ<T"/QP!ax>S$@eŶ0- i+BBgz%gHY,0 b0Z0l0YsjpqфƸpDeszN33yCiLNP抅 CT["şdu wYt75!@"yl>[d @8j HHIFJ \Xoz҆TgQpȯx\MN(่S [!rnD6!9 ֜ӂAFc#c|  NF#b1ódX ÌiLHJ| h#ǛeG-I0 J!xxI(`H@Aq>QM(\cJn+BA; a?8AAp8)$zP xG9_K@*a@'WQ/zs`ˀP4hՐ)4c R_Q#WO<zERb + ^TnyfpHpxq<] 5ȣ q)u3O:I1$2~<#RRAbx(dpUh/0? p,DgsH7ϧ}#x|Agdm\b@)IRq pQjXxᔐK{G -+TެXE3rB >0h/&$^_$‘E({-r#P D67329LA0eHwscO# l60 Mq^țy Mʱ@p7^0'1S0bjxn-"k|8 \ ꠅ=!NYh6yEZE5waγԂAY%j!H'd8ăaH#8yQ&bcUpc#fJ&FzþAs%df8J< l̴-Tü3. /*N k/C aJUq$H 7~N )\DX^@W6|.В)Bvl_e2 - r"}CzlQWi=x9:' XނF)gbd") ax'Ma|N=h ?RFl p!aQځ耑(!n3Q2eϻヒIBzGD(I  1@&əCPw_߈Eb` Vц ?~냏6V|E dL!w=BӃF! >70 x > xb"@ &-(غ4ژy6 C~<8$EČa N ؟P{ Km~cl+'#:P'{Uy}5|x93 y 1tJ%c4}`U^NDvu3-"3eŀR  sҖB)Aqpb]"+(!(O%*G#Qi#ȑGG^) RIKzN(Wa:sYf6,m%Ӆbq] Z]oA eI s $}>Z`E&%d y ,!ע م0= 0(si}uܰ/=;=E_<[ӏ F{>UoΰRQ,}  c507f{wd\_;b>9( ;6r6^zS :萃)G9s>ONrB`T!H󤮞׀'ALF=3b^Kn(O62xSy{ [42=Ӧ oGC0 (;||XK8mH\e@YtY:D@G- E׳(cZ,W}ª`pjT8&: Uh.6[ckktu-,-xp~{Ooy|ѧv)ߜ;QqhSO൷UdF&̶fcv>ƃ]{hvS!*Z1D1\en_%WAz3Oyon_}=gW؝̉!ws?bXω@Cq䃷| ϶7m_jd0P;y6[v_|g蝶EiCw^Bќ ׁ0@b0}أ NN/Kb';]j 'ן6lO^J{B 8$& 'D{hALiJ6A'32/ww^ٝ_tu!ϼKo~UJ " 9(ZYG0d[,/tһVI[W;Î)9Q@no׿?r#+>_O?yyA3N^8_CUs>[VpQĔ>< X4 KSgu-mw*2taƘ?:#mݻl0ł0nq0n?vv4EH<~, SZ=c=s.g̜ >@5?Ჸ &-&S=a龾63Lī8LeF_ z{_"?߃uNlp3y8DXTy xC.X>û1]/ q%H:4=<+kz) oT3<NU2RƋJK/57੫׶b7 zCGsFLB(}GO8Nt>~V+U^_͞oueΙ=Og̞=4ɂiѸ !l;Q2fma2k۫m.D|KyF@GLnW=ỳlmr?ѹٍҶnGܗ)/_qa7v󅧞WӗGP\jd:sv]ln^4C?8p?{ּHm3T YAkͷhn\U/iX]vΥo|uG_SŪzlkE ν4pqR,ն{vs}*@|k~|Qd`(G7~I@fz/;n{%@|\/ž{ާ֢"yLoc(_,4=ih 9~lq"/@:yX!Ewvڀq%[NafN4e'W8i룷н~Qs ?j-_wCq"?%u/1q g{xL؅촻vl{mgɳ~=n٫ӧN! 0ˮ|e;{Kݞ`_?y;^b!;la?jLx^njy_|mvӭ.{{_x/C_6t=瞵{[l=ZM)Žq@;QmeO{kƫ/v8+?n+o |b nM}{o֜ݵpٲ<I$TN>( NotedO^xM 4/nqY?`5E`L2S {B![ֻjٟO>[y)r஢qWdlFhuvv{.xz[!]vo^ZPy}Eh_E &_@ޢ 9 bDx dm3&qnd(ڿ'_&*G^ы@_p.\ƄyTn_{Λ#d5fxfonMi<;}gϜ2ӣw\87G^i>H"%P%ċ{ " 徻F,xaϼJNkƃWܶ;)^PۅBKYOMbrPCR7dLߨ5X6Ng?F@sٕ]{{sVr]J0 ?D~'[&_eE6Ѱ2>?Iuxd}'x\"L%x\1(!:M&̀-֓/^i/ |;jģtؖfz* iwRT6i[( 弟kwOj$u"bRSSszW_`aWݹ/>(}BU~;9}[/AYHѴ.tZvZb* y.#RVuͲxU?;l x÷6!||p}ާPvoj_|(yB\r5"Ȫ@,apݚ=Z7Ҫ'@T6U_j?yse F~MVKqasiCc[[3Iiyٍ}}%Y A5Zf|]Yxz= 3S'?1rg,ɖc`| ޙl•_~IWҔWy>R q~ڻ{M(-큧%f?*lZ>}U\P}g3|u4c6vضko$đWHs.dbן{y!_3( ;~KǞXd 0.t6,S #^1 h)ohz@߯J~-Y /yg8݊x% ;GoLߔb98F< l=UeH\v`x-zȯ%{jyYOj sfXJ7w,dgf{{GG/GxěL&%2# IJiragp2OXAoh&A @ 8".q&T/a)WPdi.bB&I f]K#A㬎W#H>, 7Bh3E)f11k3R@h0xPwd, K.!pD03*Q2P@>ZS -')`=}յa]v0 ~VLrO G?;ߟysԑ|;= I #S{맽{o\{wpJ80nIw6u"aS0:,ÖwW1w#;i8SO8Ƚl>ad4#4f^}0oQ™o{՛z7ߺkN@2^3?~\Λ7mv˓O q@جb\BY/L2{>uÓc)]0EB /hpYġ寿x̙;`x<{b80@3SOkkQðF{ŁŀtB cAP6 F2=t)&r dUsS: dɆHak,0HDB΁$!Y;N -3xPFrCjOA6hxk;MNcpؗ Il*)e@.Xx3z씅;]]D `@ǽz1` GAYCkƞG,a:ځA*s&x=(VPha܈Eqc,6a >CvY60jECvN1 a|1=] ka-,cJ[zӪYPʏ`0p:~c6dA}}}a`8DG!0!"(" ge"$P]u%~^A@S(roQ֐ v7| ;$t$ӌ\x@IUqG Oǐ7ww)vnB\%uVp'8HHQK便3 uy "Ow5uF4?"#o/Yz)wFze61.3JT{ P@G$'ь`1{yQ4s [V11]hŦcGЍ|Ͽ *`"h|.ѤՑ9ӧH-hjWګj^$;ϫxM+~R,^/7`T3*ThPQ/4ͷ?E0:DcFogd1s opOeGp'%>9O#_ 7z\VX@M8g#`~HpSATŹzݵ4`Hj3f̓YFuEGHut[߫Tî= dpw fFwGLÂ6ˀJ-+M3ckUw֕{Ȉ DAo& }CJz p1I|/=qvom BŽ%|v 'waOf|y|&bnVi&]G0e %n[4+]AuѨ1PRYj0`[l1*6eRo Z_vXVCIn8G'uRgx\Oв(M0׍l-h}ȞToGn<_v<_ޢs!۱tX$;=ZZkg/'DX w]}N fɗM&=P.k:T*>d[[ l>w薻A,|5˷nְܢÕa!u:®tά.%9͵w}f:&^V^5=ju|`㛧\(0xպ<_O> V=f]wݣ5Iy|q;rGlt(0'~7So׏]oӿ<(xcu7ounѭ*Ѧ_{﮲wč6_0p܆Zى[0Bڜ_zƁktܺʚ?U`5&POV\poS57w{^ڶ̈hJ7?zՏ_cq^ԡ<Ϸ_g6xo,֟^;fUOYuW[k]7áP '(dB Mn2 5/Uf~]7%敗«5w,ޛZ/jϛ|u }_bSNrSfQ:ӿZx WQc\샿kٓQjC+)#SGwh5V^!"΂`Z'|k+ВkϟG(^Xvޯ\}Δ>}}Wں+C{R_%\8aP&9ah_s>h/ Qx&=cc|;Sdoz|+}Ϳ"[kE8{'˯bgFZVYui춞@`_wBQygk^7ت~K0/=&5ohy JH7b )|[@l\JĤ%tiRN^aۥ^xm6lr:A"k+o|eeg7q:Q#>褳grXneo_pO'"`ok&zV|I,f "YZC}:#{a}K(3]>5Kk]yފ \pyS9* x +iwYͰξvZS;R5vҋ?ȞeFu;i1  'yVZg(]!l\^1M\Vo$,i+Is%P)0 -Q7U}w/z%_ji|%:bϦQ~PLR)6~)7"OŹs}g9aA{? ]dWÕQ3!l",`KQb#m.J24XdeɭYڬ.Ak;2iG"l uuHqtΦ= 7ϯyssaݰEPEՊ!oe1ZlU8Ėa44Q_!.8ql9C_}<'`cIC G r6#Ld,KJ$7S4!֬biM$v,)Ri xh-&vη8{[=уÁsνd[fQŀɺШ/@)Gf5@ˑd,Yacgd j8VGex|IjD"=,ZWlgTVrk ^qj+˪NMnp, ^J $]p~&Z<DUr!C4?8TY+Ǯ ->S`]V$_em%)v9  Ta"cbuB#55mOS\ddD#"fIYydAV)qFEwHh[#Gt]>+?r}+ҕ4nJ[5 i V&XHSL2$^x#Vf&< VYnz=q-xTn+?zw/y~ 7yu*Yo?:L7t+FpjRR2p7=pݷNFmn hWN]3Ri~iħ͢ƿ|g8;O9bʐT =!g^|P-zFV" JK)4"#<(;NOΖPt4tMD#xG=uF8u @D,F^egWN' h_.NV)y]w^{,Ql $IIIjG"EPԾQ@R8.)( C<[9#r-V t>$RiHЬR' (*3(A.~Ah6 :/JΖAfb[{ؑn0s& dӸ%Qrvm$qB P9Ɍ… Tͨ +M0Bl?"k4@ 5Ll"&A;„X= GZqD2/b Bz*#5G?mCÁhUT Hxzr 7&%Q$ex!9IXx%&ԧ nJNciцs|fD]͈Gc!vYz5eSS㐯^8DncvR^"G"z%J!,!1LV%  -\Um'RA`hq%*]m6ɕ?`h.h(Vdw 1Sā+zFQ%%C` >Y( z$$@`3xҪK k@Ek ^iTפ2Qǣm6 uZUҞZh>mp*nX8e|iU-u\YaH+#>6Z$bXٯʜD"I1DR2d teL. ?V)68`RK32L`Ot<.wZٞRm&R+GJPɷj53B9jsGrLaΙJ,~L/~,4"F&ItbUܜVkTa!rE,`oj0z]S#a\ b ;o-Ma|+ꐼ)xPaL.$;;^kZ\ G rDP6=biS6ܕH"aN0իZ+EI6\4SQpw-%}u`/FKF _??yaj;Y ]K8CWdsU]; 5hq۬S#++d1J/+"ZnB'a/ul-M{ƅe] 'VY<;(}'گgp-9v ;gYRUb]/"V#P'lH (!Rm#3„ylmtLY&ɉTl3M9KIQf٘8vS5j-EHl0_ m1I, n|;zX0Ē>$ڒA"ٚ(F4BۡY %^چMq4'aJ6Ud=:+#J2IGnr0{aXd٢֧ȝE"\#Ffݔ& `mԓZMGh)7&ZE[ yٝbb=>ᆨsyck &4f~q<"RY~ړatcjShʕ+#~8_Ԕ㓡xNQi d8l+UcuyrOeqK$D)MMFea6߳`AJQ>1a-X~s7KSTvV0vmU*XØa }>ya{)O?1/twwKwn-wH4* d@p ?r0+ ,.Q ~J+s C!u苧DBfkUTkXAq ܜjw"br& ֭b)Rd4P$D%(3Eʼn+(D)N\AefɔTkXLEׅmߋ *T ei&G՞~GY"*jR ߬v`zUZ~YDrxSa Pu2dW87({MsJc_ަ͖3$KeXvCȘF])z %f:ɹ%ӭYfՌ*!1Y>!L4A()iӵ 5i9C!`* +E:Ҫe6cc_*b~4ókYBg9('*u 3]5|Df1A* HsbO$%Wd2_hpX!(?)#*8',l9\h=l GHȠYjX+{\0֙#22 ř9΢ǓrR-H=j5"a&)QW*GX.f !1` &SldlBE * FJ X]&-i9S+nG[#aU_!He-i/b0>ڐwAd(PFW |,rK;zR6J5p°aV>G/Wɾ>XZ4ZQ, D(W/F9%TA- 36.FV穔Le4Fz&lEd^`'m))jZT|NwH%un[xJ7+'#`)*`X$aAX*B_{>4n&$bdR pn>)y)gA6,+jRY j(Fc6̼1faxkpt؅"kk).e&-I.4X>H#VJ}LԦÍai}lq[^ZXS#F7]@8Auv"^]+ͬ'S\d( Ŏmag~ l 񀩦] ZX66W@$-%sWE:$j ]$~KR>5kED|T8T,D8;p`0dn?qR %$\?FB.&N%G4^BtA\KICKebpT͚M'U%N:ECRK \~ZRY EPX&m~-ޅ.zO /nnj{=ԑNv$$߾}=: دqv\f}+ o;Ogsg?_0HYtP )ua/ +-|r<:ؔhZ PD-0>[,"㖜${Ct\i2pB";f6M)`6Qhc"M~So=H`bJC/Ǹβ S0Top}!JnSNt¬qʕrI2t,50dSzc:g(+!bCОJQx\|ę'V q^>j2zhkQ6YlʭFVHDnɋ}gv }ZxN4d:QT`͍1-k_ZYPC*|n~׮K,k2E:϶e~*WTYK"kǜm=qV'(M8&џ.9BR1SY Վa䧣lbhQtNssupu+a^{#a,h/s-𕭃Q+/U?'N?3D{v ێ$XG,]#v?i;*~|>wlvµ6q:oĦsW1%E2tzǤmvՈv-vϗG ?t--:&g9# ק=ʮY 2z ~ OhPz%>n-Ycd(ߏoBRq xFPba(T!vX_J|Ws΍C} dž`,'O`&7Hh+gP ~ЃWTSw{"`4H(pB2Q|FN"MѐhfΗp$6oh(H{Xf\+`oslj͞7P) gJgΜ ʖӹXJ#$Tz ߄K8/DING!:We_52Bv*#:aֲ>F}$WG TI-t{hNgULz2{Y/s-8b*pAʗt:wQۉ2R?98(9 7;N7)}Ӗvshםnto$bmĝF͂Jݻnhzv:+;q4L՞a|uut?h-d>-Ѐ4gt}PԂ:7]oF[y[G [c ܜ7}Gf[e>k\2̌1fWbT=;5m{MK\ri1><[lYw^y  $),By OI.20gF\v>LfI 'a@z!!ir#Bs8%GIk"x6IW I5?pfi,E+۽d]q%>{e`e6;&QU#n lJh/ אKz(eoh"ZXWIFL8;{je+!2MDž0Ti9uT@۴,m} QCJ3h)`V裿{ɧs>`vmw>ge]|nn2l^ys^t[ Et€)]#\]Mwdž;Ͽ{7kޚyL<`xݧ?!w=)C6n]&%*'_zz{_78q]v9}cW_}CRk< wB[{h)"4!. ,,RÕ'ѷ k9Edŵk56o -ʘq `t y5#]9] ]٥~Loh_ZZXw t}'Fw>9#z8mƳߢJkM;{w:4ouke4:LӾkGHx=tK}Yб:kIz gg쌁߀&)Ѵ[j͠ecyt߭iOIpOd;60 OהoYoK1cedAe +1)f@hΎ+ML؀`ygFqu4j?su] Ӌ.3|{>{{N?>7s-z|sڽS aFá97?l@M f3/-w>kssO=ᜏ/wWΜsE>o\zO> CQ1Hԥ\Ē=`̌4h_jLfe"/d*T۰`[nܦ#}y1Rt 3|·13xZλl£%,@-!%-HYd[op[נY <sjMZ(zBKBM @;APz~ &J(lK!_ a;\zdz !5)u} ={*pw2JnX<Њ]74OFgXB5\ys<In'(ԃyog:a^nV,}sg音|;ع]`zs@ i@#oN茺 7rwi;CtykV米u7 bo2B9bnį#NN;u=;M܈9!Xuw>#f3 ],' ^G]kʔKO9sehR-@)z٬EXrP\VKN9{2]+U7RM9s\b[py]ts3UUs/_&*tve:+KY82\vҋ.&=c:ݿ aMgS8-=o!7v@PUYx" O[g5sœnVr4pM9&wve]q୅Z _wq=s0hXdoϛK%q8Ux0 ݹ?&L$kKǘ!lFﷺ%7 o^.Iז)ΞvcD~t5eB=8oƄ:Qgo{Vq&S!5صCs悍C;(FP~߂aV{]Q!lݫu:ť,(a=o7'ջNt ewϿp)z~}[vm~Jשw獺w6g9^kEy;59 | vBw.t9Z?.1p9 h:]o=uQOоX]gt5O.W7'OZPZvlvo?pqEʧD>ah1'XP{-16#ER]/a(ګf%ެV/ʽ JAz(#E08n %Iأ25Hd5X/Ǖ J NJh (0!1& 7KJX-<\vO~{_|׷^~q&: (\1` ߣJpI"N9B2B7Ck0a!gA(_jXSyj)PFe0<~m|Sϫ!b̦czGd;%\JL/C/e vSxVC.QB/<;%VNuџw& iVB۹]As\7r=)6 c-.PwA$j̳1![wtճ5 QҲ4H Ƴ{ggm=es/b^yўu -{.p9\~jYEdXeu& N\r?2?ULEpJ#JIBHjW]"9/& eƓMn|RjԿn4+b{G{FJǮ_EQN#Y=U(̅/n\Bit,j/爱1=cfk9݇Fɛ#7f>/jg9ݫg6xFʀB jQEr1a%bo]ɂRFQ~u# KrPuj*ua|ء6q=;_zqgy/`֜:ˮxgoz=OBpnpzsͪ[m2[I ?s<ӘAׇnAsyk}IdΟn,z% :{R| `~w;0yW?<*-8 W`.b #o걬zJȩl xaEbm~RGYS#okWΚrt;g?M-֬Q:n 3ڛoƧיeYZGD7aiM|1:1u<@< ay)f)v8_1Al+)jQ6b ;hCxpk״c#06# ;9HI3+(2HdmߎxJ dX(GP&OE APb}eD%m)CW*UkQB6O?MeR*ltlٗl6.I:>`wBP*g3˥tU+Qo h 9?]'x=R,*± VOXZ,fɖVE!TS|U`<4AtRơ*l4[ibR>8c3nͭ*y1z ЩN /7ynQI/sufԨK82[c>nU HGvp vm+]^P:Z;BægF9cȽ6L}Ogoh*Xj.VBf9tz ޹] on,ZpǦըu-/sӲ3 \gY\ gqpfhf'ͻx~)o줅̝\Q-r "K EhJqJt@r렷zHsKZyƿF`lދWZn൯WE($Bj৤ʅ}J|#T1yQWUaֈ/T&mgT3XtJn+DM] .CҔh/Lrf ԍ>{]tJ/IRE05}KŇ=u_Nz_^Q?; oV:o'}5 OG7/ ^Bw፶vxNa CalgA,X\.Ƃqqd)\HTRCeSdPSWqPV< +H|A ^TTc" 4 uX8ctXXhQ 7qdb޼L4*Z/&YCm+ªv1 ootuq1C gy }=sY*zoV0v6~B?`WyUߔj'z#xݜr[r6,s2]Ux6;)*WFh*S0 Y9\s~uwuxwUmS=?9ܪPQX 3WBS= [c[x5t)o:h{%el#n[3*)-4UUiը4'TԒ'塰#x  >Tކ8%pT Nl֚e2*U:EXɵPԷY6E!GAR ϣUzȄC0{ u[(5J?D4V?F1ת+Fœ>&&m^i~ ?AwV+S~w/o[ "Fϛ]p ?v4.'AK~:m#.ճoC,݈ұiĜ.sYyNgM7\ti냈[tSw3]m YϹR2\v#p?E#?Jϕ|>#ٽ~O"[6v2x( Umj&EU-Iw9?E  ߴ=O%ǧVA*)Kl"L6l2q\DR^) hG `IHkjԗHe")LTk+V!Xhs*yw%־@<$T9Xbl>,ҼP$RX{- bBB΀NuN[[YpuN[D%"-6DY X4H!d@Tm8 j;hED7%)F(n8uB"4Qp8JEp! "0TBLJd9YJyeP;\'r .U+x IP uab4.£ۻDRKbc.ID)n`m$c:EtW@& TjX j*8'7.\EycDq )!,=N2)4Vg[ OڠA#O&*,S [tYP%@3 z[⮲E(*ˈ)V=LTEpÑ RE[ ǕBs،Yt'\X}8M2 bh)-uĵ%QT,T2>40?OAЉFd}1_'[غ$xk 4٦.@tt3RYiVW adVeb^[tz85^ODc`~0Wey}:>&cX-#60G2U4ժcbbhd,V8H1?>NEJvļ2<1Ԍ"0):m3:+ %RqE<HD^# S;Y/)EP#Qz:i8 Z/5RnlQ ),yMj224"r% RXHAQ4Y¡`lZH701P Jq(AKĂhO[*Y()=@f57HU,r1S$\0*3!r|K `^&K*XIi bK'I=[RI!oR7EiH[d5VR) DB_^b2Xn[,JXOdz8<+ZFjT)SL5cVIZXa u5XJ0kKb# FjchZSUJ)x*R/k1I^J4 yT,2⮯CbJ6I>dzǢM`Db6"LR(iȋ 5a ߆`3V%_HFC07֫`#Q,yǙt*'h:S@p+Rƫ7Әc#yg^'v,aVokgxv->ww&Bb˥J.tB;:ܬ*t [b*D" RDF*q6#Lb뎯HYEhM Nz&1#VB\/V8l'Pd$H%zf4KJXѿCh)db9 ţ)٤b͔ kT/1bH8Y+5: B1X'ȗӉ48$d<$ģT\RJPG[}Ay|l{2D1.9@R>5ëHaVP%=h(O`5&lM\`Rņ3sg֊Q>cI"]Pg'@jТCùB&CB7.D)R2dH$R|Ph~14COq|0~%J`.d{bsb~E Z2)<X7ad& . -r9WS.,d"SbmɁ#3e0^K-e{l0J5F`mdN1MкE,@NkC1NqnwW&=.T`L@CL`8L2}a_ZLmo GgǹWoPX==A4өsLPѦH)`DݸTaK aw n*ƎE WZl|o( ,c ^ޢ$ F)|_3כ-@Rgz{$dr`c T(L{D*C9'/F<OXPQgJNr!|,vcm{>ݼX(}g 5Z?̎[aQfV(M HjvG> p3\*IEÀxh|@ۍ$Ԗ7>\i7 w=0xUJԆH,;Pz(OHS]Xr ^&ҩ<*>1|\*s$ rsqCC9n5A5trhpNpϤ3sO{#:z + $Re" tv4槴)Z#T.գl*La (KUALO; HP&;J cAtm2۟/Sr!ȕz9JJE%5[1CV%P( YRI",B'Je8 /WH`+6QRE`bvz.3a Tc,9yXplE4)NMY@D&<劏LRCл= X,vJpK6dX"ZNU#QL"S`#"Fŷ8۰!\Eqb&BlN"%pDv(9D6v6+wb( Fg= ʧP ,q B%ʩnvܡHO8q3_dQ"LEd1ղ=Qul[q3f`$+T .]+CT׳ظb:s`6z1ʤb2$4on?XB^~>gbĆ&ˠFi`*Hbsɤx x/p8`aTJJzv>|s}.FVy=:2%[]^{v?pÝ}`{8M;Ш$zX_}U ܗq[ ‡gJB D~:{[x 'Xz=ޏ1;dsP QꋙoZ_zwǟ^|i\fqf"5PLf 3Q6\ {3RJedbH<KE BQaSg.Fգ <Є4"/GH%2`?  H)8AN$! V lrx,~w˓AJ"F,by3:o٥?il&nU$8e,ލrjB:#}i@ 3{`K/;8P~׷dQZ=CaRoT:[#gL5R&DSqv&hh`p=d5X5ӳW9|{r +7q$ڶQ (bxgHuerreM$ ҉HqH)?ރA~== вhf/[`/HESETo?Cs$X*i l MX,)J0ٿ8Ab7.1aIan%@'3~V;Bg0oμW]VR,=H?qj x䓏^w]PrQ ԈD6 P` Xk*QB0-j=a\R 3[rcuVr+/>d< %LDeRxX2Y j-;Ï~_7l8^`pk]Zk5\3?KT#B!ޛ`C" I0/%b|\O\|TLe[z뭟JN9gk= WyJ^e[vא %5VKeek`BW3 an3*ub.ۛŨ*!+>o~X/2U &mWH&\|b7i%~Bvbg^Xʍ,/C;<lrMۻ:G72alDsvEMLk'|D+&_+ZSo[<n:imvuf3_ Rnv|=w:w C'Zs>뢩L3`I{+4ooF'yq7}+~xd+odCVic.k.jgR$P.bfLZxõ&@a*}7|t,[Xޝ$v{m۾'{^.,C^oN[;KA=/ 1qN:fJ7vu~׃O;9\;vcmv'PsGsfx9c}^.NdoUJ4}q}6~\4oبKB9Lѭw;r8S{w?Ǧm6M'K/ǛvUJ% x=!rtVo{WLP(nMknp+{I /m:Nru}tVy/o|s>= (?{w6e.jFӄ[~q[r~.nN$riOnx m#L76xKDT-f&,4au7lI *"d\$Sl4ɍ݆;ۇ2/gz[λU=L{~6eߝW(3|_L=0c#`>y~}a i?7@}1y ;s(BQ\2tӮÁ@^E!Y|z֨Rze饖;w^/[ozч?xx K,c+vF ǓӞ~_Sӧv+~z?:i3{z=`lT꯽J+4_ͷ|Bh[+>8Ǟ~b-wx֠ bH )fYҌ?붓N=/:9ˮ2f.V rp$0뮻λx'As7S[C_<9zduؿ *vy<>;N@}~xw=M{p߽#?3kދ./?^`=ϻ{[tϮtʳ=Gɯ ?K.u~w/?A\9w™\tєOrdz?AH Y |0?~k.\Z*"ko@B#RLxwj=~`})@.9˦=tׯg?bi}s-df?3dnZMǗR^ZJW$7Tq#>ɓ/Mx}㯯ΚJLM<XVtTE7.+@V2I ~Lܘk;/yޔ:˂:*j(B Qg]ߓZFdևp0EN=^"6*ɅBN''M9fD!ɠn?4>Y/1 'ܙ9\Eu[lhyw6VY JdY|OlΑ~@v8' KMX;{}+0aň>@"K3'}d #W0H'_Oxcy:NL嵫A*{ɿp>.7.hD砷 ff1@/B^OC"zܩgv!ko7'lmࣸP?ɾ@~Z6ܮe٪1>㻧 G9=xP_=sA.E+9 "7LN8=?1u6Ya a_xwKʗtX|'k})GbOU{O/Iǟ͗RK<00w-xg<4Gw4J9\oymu)O+./kgH |8{vDx|\ KΜ<+'gA7XkvƧҕRy{.f)55Pb(@շqgq;+ziޜYooo=BXb`=v) ͞=O/yw&}V~ϫeW#qg]olW7oBWzsnsCO7ߚhR>;o#X.P;nIBʍʙw(VF+'ovJ*\y'vG\xn*'?T) zv]b)W=sN~-wHDx,7/[l,<$W[S)x?͛?wpx {)- ۶{︱'δXtMW[ePۅ͒H;BJ &Wk*lgQԾJaFEz/0b3wc0 !(d ՀvuHp\U("h;Ry7}}͝_P`W@ݦ0?<7ofjg}=oG`ZƼT+`dA6Ā!Jnd iH5ߩhʫ(G8>3{iO>=J%RTZGv_ŭϮzqk0?c3~3O?4Q_ oޡZW^fLkv$` Wч?lvqp<|O$! L.#^A%~l?O0 HדLjys?N'ns3;O?CO4^nA tO B(N_`QmN?>>ΩlJr%m";=O?6z~s$Y1+FB{TYH/¹䓏>?|c*>9lak0}%P E5H:"HM9Zl/UIS@ @T`fӤ{l?O>Ӟ{_|<9 j 1Ix#Tì!`Z PSkE_̃z;zg=C1KFdq˫㎛_x*(7=8*j0JiG@T=ʔg-#Wb xq;@]!+`n a':ƚqLRBq`ۭ!edȫJZ2ǐqah6ܴkzb֛~wO>ۇf<7gzi ",~@@j)B=Lf~@ 5jrČe|>*eGG\n CA}ѿ<|b Xb ?'_o|2R+Ȇ??/8f+H\2_\}y>XB@H Hk2 Q0d:1r u0jE|b}z E"Ŗ|o^nJaw?uK5Llx_^=?_}i8;COZVeo˕\&E Rۨł7u{0l'AR$KPqfo(-Ϧs@+qzݗ\r lѡ̏éP^ UAR|jپ~W|B9ē=3 zp6O:sB- fRL?zrL &i/1j>Fj43aD8.A[PCzR5/7ٌB{?INX6%R|#o!@F_CޚKhSNx P+^{;;ۯAP)I2fBP<L!L4Ϝ _H  ɇK/W%⑏Q+35Y&?)BT\%r'܍LLH5HyRyfFm*>{Qq9hJpH_^K+DZ%  "(VxBKCFnBG5/y܉Su矙Ǫså9=Q ㄆ`< ' gʤ 0GXH TM쮰:&F`l7#5GȻöI)qdbF%;8HQ&5d- Eݎ:p|A Jvg,~to @_^%Ɠio;ȷgUp8/+74xѢRtfk  o;^e K[e0lyoPG7_͆oyA5N·xgp}ϲâXjnY,[Z| htrxG.O:Է>,*`UȇbR>NYo}ÁFNw\ )''cuIó=p1p;mo+va}Xk/o; /0nOR9S&Ӂ̸W\q}1nt'mK^}Ӟ~ct}?3|юceg}} >u)cC\|u%$>w\rg+Ń04?\%I[+|Wqez'>zp>;|4qn-~s{>|//]r/=[_ k'45}̏x/%]}UK/ї:S_LP['B{~}gO"%FZwܾ77^mu0Y =߿/?AIm7 '~C^+/>iy NxtnGiɽ?]u/rU<{ƿ?疛Љ'YA'떫\777np('[T }bv4%f,ճXi~!h`hhĽҘ4Daa&C:Ro"^|0ZO IBF> OA}pk YW&{|T  7D悠fr)(upi/Ist`I2aOjĢ8SPP-łB%O- UDŽZq8Mj X8Yd3eO#3\ECU 9z*kJL8op\kǗJH8Hj¸T@y:Siɠ&E),."ႁ 'T"T"( {0bgER䋯uhd ƼXIdz>`[/*HK5*V){4a`$łFRƸh??qI'Qcp8N|. BPMVetE>,~\vRZyO>lrCYh9"/qhx+IDAT\{u:WL^BIPX,;.O8vKD ƈ$U\ xHnA+n<'ÚB7""dZuv*x G/kN!\/yrUSHJؗ".֧9B6ۭFa'? CL! Ib- 7P`QKUf_2I7,e(bQ&T6* Bkjǝvq]w^1E6~~'o嵛oRK- 8)(rýD`x1FC1Ԯ %b¸]q_d̝?wUV[QC©j˷CT¦H=0ߖZaqT5OԂ2[Q1CcgO+y0x( 2wppVCszH#?0+$q sR40MJŹGqz>o*! 3nj7?ÚnSc5J%ELpqa0jЉb:&UR1X$@9醃d"|J/W @La [bH2X+ˆAfM{1b92;oJ0Q!z*} V1wTVFl $]YAX9<Y4X@E^ЂIOP⋢,55#SH[HKKD]TwF{3AkF)D 09BחaJQ? Rd\SM!JW J]P#p\%i2'<5+d]@%m<;8@%ZU)~%JF'#7s -g2HR X,H^L3}h 5$,(js>-B<#'], '@f. R SUWD, i/eI"#֫"P27>o OЇ!,00@@r(EaM{z{ dM(Xm<*t.:.f.?)TYPL0>+÷]%MAƔtR*F «CJ<6a vZɑܑJ " މZUZ^͓ -,bĊ LJ{bn[' zILeժJLHtɪVד/}kdpPLq!_d%f[ap\)b!<+oɨ/6"^\VU0W\DE "/vabRDN Q]M[K\hw@vRIQeI4@U'Apȹҡl U$:h Yk0uR9$(UUUnWD0 xvO e1uL[d:FY)*g2u6%aߥ艪m DEjb36c#yg BbI{!-K 'wXY$Gi%[(8j7T]sIjk_ Av "FmBZ @f{BO×&#Lwǩ"ytMy`u{*+i7]½nh 䪻}}ifq?C#V=d8/]c;\ך);n}3LyPYթ1)ݧFU*kyRtIeۼ*P!͋[8 mhSܐV͞%-QU-[W<Jָp sHO۵9VeJ m9 |--3O,sKsֿQwg4{6J ;wgޱkݲw ~+\n@XH7kY-J3sij7o^Ls3/4zμ &sg aG*گ9C}xk zK0MM {aCl9/LEtR 4;64EM/vF/Y{]t[?vD)!@ vX~lM#@E(aE1Ez# Mc\ ZNΟ TO5x;OhxP8ۣ4ڑW67a?~4?#DCja'Wɡk'g#v~SW)$yf84'mzl}CGٿ.'T q fy 2^=A&"X!$ h@2 3l , {$PEQK1Pe[ cm> towbk;qHi{@4T>q\V8 $UDqWRj[0G%A:.^8*l9cٓޟ:`[g  M٢ H$ozLa<:{؜*ΧPl(fy:3:읪i (v{*lV,d?BѺNxoUQǝ%&؃%hLD K3^Tj!@Gmy݄[G3 pB"10v3̏0'6Fg#L\7,wo8 M30HJ:nDSX׽2Xȸ-~0RpDXCc#EO7/y/ܻgAMkJG;Y :t:@_kOX " ݵ$z;9 <8NOv}epםXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =F<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  0(  x  c $`R   x  c $HIN  H  0޽h ? 33___PPT10i. P+D=' = @B + 0  4(  x  c $$#R     TA ?"6@ NNN?Np  TA  ?"6@ NNN?N`H  0޽h ? 33___PPT10i. P+D=' = @B + 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +ril0c(# El1a(@   Jhttp://traqs.intel.com/help/t  raqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =F<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@(-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0  4(  x  c $$#R     TA ?"6@ NNN?Np  TA  ?"6@ NNN?N`H  0޽h ? 33___PPT10i. P+D=' = @B +r^X9(# :<1@^(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4 !d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =C<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler`-Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r)=q)# =1^(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =C<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`TIntel Compiler 4>1028BL >?F8N /Qprof_genx .``@ -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r> )# 1^(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =C<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`TIntel Compiler 4>1028BL >?F8N /Qprof_genx .``@ -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Tes                          ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  ting Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/r)# ^1^(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =C<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`TIntel Compiler 4>1028BL >?F8N /Qprof_genx .``@ -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/r^)# ^1``(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =4E<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`VIntel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL ^T/`T`/``     -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rݽE )#  1``(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =4E<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `   Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`VIntel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL ^T/`T`/``     -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r! z )#  1`(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =E<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`zIntel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge ^T/,`T`/`,`      -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rG  )# # 1b(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =F<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 4;O .dpi D09;0 70?CAB8BL CB8;8BC codecovT/+))`T`/`+`)`)`X       -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r I )#  mL 1fb(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat                          ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | ~  4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =:G<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecovT/+)'`` d ` d`/`!` d)``dX       -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rL  )# L 1b(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =G<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`LIntel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0T/+)A`` d ` d`/`!` d)``d`n       -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r  )#  ; 1Zc(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =.H<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0 @07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`pIntel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC CB8;8B0 gcovJT/+)A `` d ` d`/`!` d)` `  d  ` `` `       -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +rw z )# S j} 1rc(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =FH<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (1/3)..- Local report A -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $R   x  c $hIN  H  0޽h ? 33___PPT10i. P+D=' = @B +r}  )# } 1c(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` 2*x.  b    Y C3!DA?  %b$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$       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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =H<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```        -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/  0 z  |      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(  |x | c $DR   x | c $IN    | TA  ?"6@ NNN?N  r ,$D0  | TA  ?"6@ NNN?N@4 ,$D0  | TA  ?"6@ NNN?N` ,$D0H | 0޽h ? 33___PPT10. P+2D' = @B Du' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* |%(+r G #  T 11f(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4htt      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~NsRGB pHYs.>IDATx^}= ICC!@ܡ+RŭR!! '.{w_^B<`ٙ;gf9GH?-,+}EQ$Y) 1%b;б&D*ۑ~Z\F/5;I (8)<#\%P0" $rr+%x@exuQ $x{d@U*./"XH`Ֆd(cg  r$1jQk% %?YD*<2tB +8Z\ X'VXHJKF h!y||WBV5?:weZӱ4W"?|ZH &Jl.uEBĖ4 @="0$EvPS",WMw"AC_UNիWwRo`f dL^3e1%7 1E9X)=1`/Qf#"hԣ$Өp@ZZ+O 8"(!M3x/8 8 At?ilNFhBx>QP=.!Ãxy6Z7 `E@#V kcXw?hM}?&O,XGm0"ևOYm6 ,KS CWDYTuQ2 qH U{*Facϗc VT[ʥ|.LOAkt 4™!|O/ y^,/(:'|ɓ8Tb/^DŽ` x^|ܗz,g6Eqm ;vUc5#"0@c([̾TFΞF&zDׁf0šw3؈}!SA`{rDiFg Ј@8)R!aEBgDb˛ ;ƶ_^fD>Iu=d.A3e9dIǜ'kXY HÔ()2Z :fRC! drkԴbsfiN͏ȡY wΓ`Oa/.Q9 +c!S̒9I y6Sio@4:Bb=E5ysJ>$Bo߱s6 W5a!48.(+IsGQIy $H,N,@Fi0MqdƁRPUI}Sew|=ez燞a홪\RVUn^0a$‹qG,i^Z]s$]2㓟e.@FRExnEHCme3Ā+/UFpӁbz/El#Qsi6G^dD!<`?qBK B3Q:&N,?12<zA Iƍq'Dm//+e-% ; 灏̒kLfUUX T40}7mԥZpe,?oaۨ\COګju'%7$#(x9`/LdށBS@*R <^o=-W$*" XA|ޯ@N1¹-[+'xtr}/s6T8r4)W6PjD6!0+Cܞ9 \ W (&I29%`D` 5CՃ1 s6ʃnÉU!g%Z+츬*Gr?$gX @bMeQ^4G`/AOͤ54mhdb |e+[j:t0cG(A z;s'9!T2."H>+ac➙2xAr$@Xe^>TD,7(w#pPbzJF9,)ee! &1Oq9.fTXr}2 + ,f|EL2ilX$^>@b_܍jb*aY~R*ۙTSZnRUEYˠHt:x$|f$-f{db> m϶딑|쀩jbT;즊-I(VAYB'"B.iIdS6뫳:[Z5$Z%FPm!Z!me%8\|!F~\v"DZL*Άh3UeH.@b_, Q{j BjUsLƎ;Dm*2*]v+4!$i9v@e5/Ĭ$?L!*ZӕzLrЃ8y_n49EOl|{AY5AH6+&^ WHL<Ke4V W]?XUɂ}92*Kn=zbh^=<hOнjCC/l841gD?|o׺ӦTYrs!__SWX8hϗ49n.5n={75|ȫ  4%a"q<+($ pLGG ױr6n}Sx©i|C)rr&z0 '{1cV !bI}(%6@<dm e'mN%9ڭaʊhgI:JeKPөSSˬ2(eɩB..=~ݝ{|I lJKkuz(]i{EU-KP娘&_IUp_=^ 0gz~+MY3\vdaJ⩙{5H=U0wMd1VUnH>q%9)*ƃ<#6;Q)L gҬ$G? <Kje X ,Y]Rå<+E€hx2z~%k1%KZSUtBG]>aǚ::O$W߻qri/sjw}WUu\bYcYSǹϹRҶ()^[^Qo8g纩@Q(^N33s3Tm*hl[4#:+PH5Ǧ}6Wp'"b l!pQE-C>8*DEC5 |VИB1$I9L `+r]dx''X @bg=| x'6ڵˊeK͜b[{]}sA^|5= ֽg-/=mߞ{.Bܤ(_Ë$rY.\kƱlȋB T*;1BV,nOrZ};p#>!}Ur1AI"@cĻ2u Z$T_] eABG|䎅(e?+"E  Z)Ii3k+l&v.8m lX Fx qi0`;EhDlvwjX/ 3X/45 K-ݰ0g_2d oݿGQEiNUz_XmwJQB T O`! 4"\|Ef*NsケEAɆ‰:`Oג+?>U:oQw<`m};8(X5AE/>蘾axz& E+CvӃE8&X xVPR^Sl黰#q$ϋVPUcVLCXYRqyﳼэXVr% {nKEpcDJ*O# Ca&~)̉p,(P؊/~~}6`{m~Bn1)cc!I`7 Bӛst'6D aU[a7H騜 -O3UD AHЋ!hX,\C}!uУ?VM]Ϊa i!9=t̏l~% łGrub33 n3#ָO5dQRj:gnCbXaKIG(g෠b{.oԄ/)EbJtUې;m\5W̻$kr\JF,^:9?O]/$$ЍlL9rI"!!tV<-*0lgb -71 trD y&tBJkE 1l.uhQ/ZE[Qe@ 'GX@3Tu/Pb":8풀d#Z-hdjZmJ(wn@ɀB#bm ߇aʥ+Ɗ=]2>rRFR8 !+芺 O"M ?ǖ  z*B=`^Ӑt%?;_<1g. -dd*a~JOD-XO-W6-ﹳ.d԰n*_'yy%9-!1BJ䑹nA]~sKl7aԩÆScłReHp-[;\u zUk8dIgܤ_S:M-C۵93sʧ ;4SS~t>鎃v)^z2ǭgˈP֩,rriwƿg^>{ k!IaM>5FgATlxIxQݾyB9BZ9^ྃA?*94!F^J[_ $H,Ю,^j8dt @/dĔS 5FFA9XkҦ`}{5RaDѧVO_}uVӡU܉ⷢ5I BxW(hTU6pQs5)b"JOȦI4|C{?2}خ{ȗ-Z)Q6Xjض^zŕ}z᧝מV}_.7=j6y`9;sw^J}ԗrԝ%-luE?/O?\Dub5~8a_^~{!gyǣl=vLشj$lI~$u*^=u0n-[uh-Frp9_@R3@bq, !~~0~\s%OP,]ji^nQe0񪋏BkkWEq]nMgv`F>.oY!/4嶬Oy2 LM@~\OH1h*-=N_yW.^~,֡{q\^ٲ\񹫮_k)fO)Â6?)qs}zoV$'_hɊs/?+&>p\t&{.`ۍ1r\Xg=x=viܴ$^fOJ[8!ǥ؉Q_Mׯ,x?-q0ukOj׆Eq?intq}Bd7Cr $$`ngxgv Srqͪ!j^W\:AyvܘBcs/>O7}I^Sn*7Z--vsc~]t~E3x;qDn~x lSWZ9gϊE8@O/vb{L^9W\/;Vu֋ e˖xe7Sɳ?V{?d]λ;h|ⅉ_}ui^y̍:^[ṱ |q/+yhT{ƈ/ilzmz9k?A'-"9͈4s<~ݽ4̩|vBplnGO{b+ Sz*YiA:ڎGPR]PSJ:m\ 8gPC6`WW]}75}0ͺ)Mܲ|;պW'iv@PC-v . ?6Ly@ Y{4^x5xp]T6MUڣӧfO [e<AT"ni&T5@RS/xq 7b˂W0=GzMYW@b:fr~}ZR}H/f섓ƀuW^ }m`(‰]|G8x{1RXjՙÆv٭aپƏj¹- $H,X[Y:ӓesN(&^̤3njZ~n{~x縓/~lm(xkjF k)rR$*M7Q\r)G׺B9>2QM&D7*[Bژq͂*}\Deu&{ŗ9nv}z_`Vm:iڞ]̛=.aT iAȁ*INQ{\.4tRVXwjg>1u 4}G"RNWV !7g ʹcG_rU}ҏXxg;fNز'L)AQ[ckVtnGl167|g>l| |-mk Hr =3&LnsOoSYQtR۱SﭷdeҤ73ftT9hL]LJ5BX@OL( [2Iuq.WI4R!gu8k4) :h:??/,Hi=IiϞ7{jZ(&f}֧/1Ot{Q#Ig΋tt:Pȁ;AB]Da7zi:oޛ{J;nE*~~яN}`ރӧ<>0&Ut+f?9 / T+]_{(SRhƘG,\\od6?әMz[Ǝ~橧'zgf?u̙#vܲ&iYa AY>}[5& Gey:%.ӂ2}{0d\#{H)ݳgKTsg,\lEIٽrLV]Qާ/h%7/YZ q "(TQG}$/+x}ėSP|EUdVbZ^-&[E kN=b3Ӧ>9o_?~Cjzvy/̴)o}>g5*#y$H,}lhe Bh-|KK r ׮W9뾲 M 64o.+K|m˥իj, %;XИKߜ/[ߒ_TnZ_.5ޚv )zddYjHwM c_r}N[}Q[а苸qqT]ƃ׾]ҹwa銡!I`͟lbqTXkn֭֗)Z֯Y䴔¦UN~}P(56׭+4M+bܴ 눲 kW;55-=^?N OVǁ@:Ejhd2x9ۊj秾6X G_}$kķI\IxM-M >턳W0%Z{%8g%!Y__pltGl17?lݻյ#|6 qi>stq=᠞o_лӘ[c1[Ҽaћo~|.w8{^~/4#<){ԭ/rz}'@ uHx!8O0amE ^/ ҆R)2TtP-r >CGJ}:k#~vTz-|2V g.aCc-Θ'I:"xitP4d*hB6F }(v'C;V f  glIQ 'DPp-N DQ'u*5Di6Bd}Hd, y$H,X;e>FG&!o :E*Z)>@1S @Q3CW4ݖ|J- ;i3pHrj v|/D[c·UctCa8m1@  ,ɬ BN&ji64=N4X#BX?EDQ /˖D]-$HJ(@kzu' uaPF5P8a 4r}!$yuZE ^B+2)fT"CaI >1j\W5NՀAh 䑖*{i[ы;f&K,>,Jh8裏j+4xB:ҳbf)?ĬJTp?ᕘH`J^bG hDM*x5CRL>tn{+S:Q`%RUc )H]#gaE"TgVztWV9?E=Yt LcM5Nҹ[[v([81ueQ+oFrlYf3ס8ʆUiĢT;_Bp7~Sbd{В2%dnND7z[3+HI,X FɄ;6B ֧S,GaD*@-oIPځȑTCMBdIM |2|X E8>j}8nLޙMUIcU$}d$O'ZX3lŹ<+Ǡp$ԬCk-f*e7 l\zL,e N| CcmATUabŠ CTHZYTX 4rH9iҤC&A)G"ZIzP_ %W3lG)Ji|`Q39gf%Ȱʺ-VJP>5s>#$eGbPo)):0'4±%H~c+?$:mQzH,X ngAVB̊vl7 vQaPJRx(` 3f |SnMiL55R)mvҍ adlΞGxG[:~n $H,X?XqAsM!fDХ^sUBL2Xk;Mmk *0"2ZM"亞#')1XeۜOƲe^&Pȸ:L$'&u$gX`[i^~PEReT"Dc`/!"\C1|'E(=g@"յPYb !ZpAY\˵293SfI*B gB0`D6 @b,/2pe5 5ț FM"eEsPƨ$ۏZַ=7<ߩ#vEUKt6^086$[AU-mE.k@paUmJ,@"WT"`mB0e&BaБALi$H,-@1%rCq03Plb9E@Wb&R 1-Y$_'*BUYŴԼK Ǟ*e OJV8KRod $N547n:o"BCUt | UWLm* ͨJ\ VUU1QK꫚8E,_ hLnX@cHRSm`_ ?S%gX X^ P&Юak$-mWQS^KB5E|Y_ÆIk]MO=;LAH 5RmM:tto~QIT*n$H#@bډuh߿?@#~SQ4OMښ G* HR2"K@]N) JP6ʤmYDSV͛YAB 3Qj'7G2Б0_ 1ThEMihr'sC?X=%H,L5p#@"9 (Dl-Vnf]#4b[)ŪWT $.{(P.=V@MˮDsa%P#Rh#*Hb?;19ڣ)hD>Pz X\6v39=m/F E^n@Ԅ:zM82T "4d0-+dn}FCO[%ӿaHj9Sc*Se%jL:Ac%I,X @ p:(Wh)f@@C?1w ДA \Ŵ'¨_S(ʲK*F9%Q{Cb%8ZdIЌdh#F 4XHn  |#ЈL#$IB*4{o-/髢|.X, Zf;?]w}p"z{bu+W)HZ4bGJ ^Xin[t$ |wB%4ep). Ě*nP/qlFS2~a*+w[nuw> A@ (y}zYs*O=ȈӼ/>:t @Jb`4qDX @b߂JG։/d6bAw gCQ'u4_rx3J)rfAc4~'q_ԟ,&yvY_x}--KU+څyA$, t+r8] dq-0\C0ĥRXК 5pbgI>X @brbȦRI\j1ue!uMB NVS˹w䩷wn1'wq?Gw->oM쥭;tw;n(ͫgsbQ\QFI-o $H,.,@#&qǶs55Ƣg⍷}_mjʙ#kżCƞfEw('$:Z~>SqǾ5ٓKA$.dx:UEI5< F*b$鱜Igrjb,P?4,%T>Ym?X @b,A+]:EE#XAjϮW6̴i{}#zsqSG4\%,*5>yVSq+~;;zmWOC[2g~M#[ (H"t1C@.\#1Yn(Cb;Q@>dݺ5u9$?PݘBұyC\nZ%]3}嵓O;k@5BiŻJ3;݆)}6m}ȱ2^H,@#Zki3iHbMDBKFRM͐3Y"/TА*S"BL&#] AFq"O *!iUQ'@bBzA]6c[!Bh͐CCjhъFpHI R_ߡ[+vC]m5-YGm=hYW_{%™z n|Mmp4hի\ SitŔ15X @b4b]k1S/j]vt{faÆ|ӚQ6yNe};kWg7rדoVkl ,"IIQA# hߐ'H,Ю,@#hhĞ٢uꌆnvڢN jjB;(~ͷ?|S^~s\bZ/7xl{k@o}={v21B-4$̿mK~,1Ȍlԣgg^S,ǟݟ*3?+,|>J-niں#/NX)t$Q\)}m)sܘ!/=-4w+ `rCԱ0p6[ {hQ"!FAN4u%kf JGBAVNI?\.?AS#iY1&H,X?(:i=k7S5s>Sɐ]3\Z+Z-?xQS}9`m8ԣ kV{Ĩ/6<=nM3d-;>`s}A#ip{W]h"RKc&Sb4z")M߂0|6@bE |k@ =R+`h:,> dcC[-{0 M Wq ˇO% Nvhd/(тy mㅲ2_H,;eΑ:b гtUHJui,Xe=Ե3n%+O4SBc.gn):_߻QG3@b]f*(?QgǤ8aJ{v}n暿$[P$CgkЃ&%Fȯŭt$Y8KykWj0ַooIRzQZ[V@i Np~09~0c\BsXpƏЯQύ D!A)fW*ŪKaERkB PM׎t5^$B)jˮ" qKF930o}wGҮm'bhgUiN hf*bXޚ^~+mmqٹ+WOƒ pyJ#۞u|C-*{*QT9.?z цP-==otX1`հ,*o+lWN?b4*C_Ab qvhucf^;dsЈ h @#҄4?ڳCO~^ =lCSʧsĀch$jHp'tǁx˜΋Rc 7Y iuԮ1ʰ݅0S p%?JؒHTO⧌0 hE_t#SE8 Ak8H6 imv"^D!\KlPL*aY *mBb "ҘI>M՝o U〽z$aGX|5\S|T\:S.a5Qb8jQCJ5Ev=ya`LX,f$EHe8K` dCq t@d(Jayŋ߲jA41y ; \%Y*2ᖑ$ TZ<]!ʚ[64."0a$EUVlޭ/#]{ vrDTğX"@xH£ +`#i^cQ4Pl0 V pXtcUM0 k>B8@DEqQe'VVހO,ax!.πⶕL.$eG9+_\<.>RȊ/6E?WAe/(䰆%&苨cu!4AEٓ q5ذ=Y% :jHh͕t?(Mtb5-CnaAhcgs8z0@Sן?Qr G):dLC 8 at옂`}l,X?Cn{ȬUڈ2B݁GNch˚Z*2жSjl-Z=uB)g sЖ#CM5=X0LHW W*h`kF +?Zi93Vd2r H!#V@Vt}6ńb1 R>Aǒ(^NȘaKZi$$7k0"YG1M9I2oGbMlJJSPl-HD`TUI毞]FN&WzX }q@r#B%KYBTFm+?&@bS 2؆H*N85,ddet-aq842fʾX-tXM-PpM$&t}T0Rq#drKH!$;L#KNI`(!%j1!KbJH@@\@ R}@YXSL))/iVJzX;6אjRgLPcch1Vb(( rˋ 0~"` @L]w F! eG8_4r삢ŀX Ax3D@AA D,1%(ِv)%j%,ȔeV"Ӥ!11óAS49KꚈ Z2@,,Gm-lXn9u1a%dX9Dc_ܣ3'D<EKPκ#!e5`mGQv2zBcV cEwB`qdm܄W <3Z#a!78Bv*P4#|/ZYT^+2uwn{YH!㢿0 mq:rVֽӴ~dY? Ur_D$^*9@1t!%z@$fX’D߱c%`oY!d˨z#FdR&Cl bxy7 +j*Ȉ(gGc4? V@C@c7ȢV/t4 ]'US䩹*h(P"R$L :T3x`MAR'41$+u Z?S3h 4lBr!eHve;B%iTdI6dgrha6( Wł  bg ܈md)J .2.`H,Ⱦa?j@ % [sU^лAvDy]9_S[zB" ~ݔ) ڞ|侫O?}:)pC#KO\%Y+ug]pj6%V;-:ˏ/ԓJp#os`#?ŔvjX:}[lw_QIM@ٟ,9sϽC܅8S8.;n%.U ǞcHl!h:t< 'k%־Vn60$ЈZ|0ӹ4m@6,qyb+6w8?ַm+" Vmf2hGzDdwBr X-U7e}gxIïAG`й9-r=)ظ uX3sRwˢ* 5n#nvJpupR‚[y%$Gux,lHLCA.’vwJՌ@r;Aa3(dBzb[aK NzCGE! a`UǮ1$,X)\+rL,* ICC)4>f39.(“^SaObțP4u)v'"b3Cg\V_$:jl:@VB˨Τ0DRYKn>?>(Dx)ԁ*]l'C5O]TcRԤvA h$KOBV: 1HD؎SYe%T'Ȯ8ₔʿI$k" +rlhr[[~T𔼣v̳B h!aU.j:Yav{M{i.{34 5ꌣ6#oYܴ3~u??B5Vާp}`M^8/9-ֳnԘ}WӿA{]"Բh賑QV4/}=[oЏCfLlOi18CP}\E=naGet!BYVMQj'rjEz m*D|$Ή"*%9RDc,XA}Ip&2Skea9(Km0ؘ2C kH*HۄΝP5תf8hoD!NjBK!"! xAxi" J!2- ՑIYŸ$oݱ!|Rs*lgc3@@E$6Wgy[|̌N^;R Iv*1l5_2-"zTJ]!ʅ:;AbDUD, !J]u֡lF"*l}:(%YkZlȓ}Du֭XpW .h҂s֮_gŀP aݚ?dɲeWj\4N`;dQuD`O| kwA)+B`D{kopl_tW*cFh&d2ts,@H EBQ7Rdw0(MC°ٸ=d, $H,يbdj)Gp&dE -%8 PV,1s~P@~KU1^}tlܢTO W[k/¹M`BJ2W\"#0HN8}mLs2SC%8!DEl P-P^<БgsP4MaXwⳎ;Ա#,nDcT OM`H`Cy4QlAV;+֮u|Y.Zw! p)VvW3BJVg^$i‘(TDY '(NŞgKX@b4"pO90!.:q3E03:^|_iP=+TP!+V`zJ#UBbOR˂X,V ZϿt3P,z(Ru  7.(wK0劊/nkȱF@!aݺ{1}x)ziu״A,C ,1 8Xғ5&ډXdՍ&1+Q5B“5%6?~*xX @bL?-'H kn 9ײps# zr5eP$;w+-{"Axn[X4bubK5YPP `&&H`Z);!$&qn{y;3o<}h[uŪUq̩'v[-;㷧N|06FvȽ9dTQ>c3'7Ss|ǟɌy_y38L&ZZEw\dNC =մat9@b? '`A`9qHy(Z%N&"wPkOPN_A΋+=Kxe=wߛs؇XBKn>fR)߹&#FIAt.!@Ȳy-|)sWdN{/C6D0Ͻl5]~7>x,4BC@F-鎺[AO0Ԃ\Č1'S -GԑҤg= SSƅ+WLd裎mSiӏCھ͙-)}g唔G6Sln΢BK#+V-QA4|BiQ{ NA֮^Gګ/:04|LF(`l oiAlQX2OAЃvָ޺g8ctJ5}&tUwz'} j5?șgǟҽuFeX3z: /NgǓW<|Z {!cz)"s=z5 g##O<?[j*t(غQ䩒ڳ)ī~'C]Z$((ƃp`_FVW[VݑfG+Bӟ~g k/(~Lǒ̂5&;ެޛ޻s1g?4PS%MfMHr҆)Q6ZT,A:TIJ;T#ŝ{.uCUPM =}ˁr Ujv]To*]ܥWrމMDD5n!%8(ɍTKKKǜ"veZ LZ4=U,+t$jBcS2xRS|N4y$H,,{ of 鑓 Z0o"l|zp-l;,a.$bǷCqb 6|Pm#1O!PR4BKP~_sd3C=λn JB"kN yW'尤v jcxw;Q6D jYO?m+w>˯f74uصk׿Y \fHg3Λp/?amJesog3 7@PW*[|}KKzHN z6o)@nq˖tY=E5jh/ƜԏkB5f-wq_la(P۽3O>i71t?>t_* 6uׯGcH &lڶ эt3 P9:G?=QKOS丒*cSTEhhv;vWHŞ\C7-Q*/^iM}MzQd|9gf|)u`:u@f{㕔MJ-^of.eI X%[J BUI)_DwOO-DmlƊsWӗsڡqՒP2ry΋Sx tSVD)c]L]X!/E1eyA6ՕLɦJÄI6قL;X@ rKT5TtH'dY1O9>9{i򆌧nxw $H,XkTfi\V"'cNw@D,]֕lNiu-Pi s~}AN;aJ>ԓ]rikkAl7]|)ɝ=Б7P# YRvg@KKN9/Oj>TO]_͟m76E&78ʋnEg#,ʩzÏjXC;uk'! س~q7A@a+NOg_ ̛R=}W/wkqoT,[dcC"wu;3{ώ87]qݱ#=ǝ-_(>;}HL1j\?oȥ-ϱбizdjMn'z~ۡ[.:S?knr}}?kl4Ÿs/tF2hA JC DT삹-sekvZLe.t_}isO}ч.!vׅ??pS3ϹZK{%r ӊ64Q8 e:t) /$A(D8i|SYrP.yEA_/7i[F}1Whā EeYg[-l#Y蟊,)Ǯㅒ,]\I&YeɉL3L (3ffۚ:k@ cj++GrP+,@bՎPDG#\6!FX"4K낼ZS̍(,>R aد f7C+;|ub FoT-;.=t5 DP m %RGD3268yhھ2hvN \R&OtO2$G/G:'HQRjh$JkDAMAwz)%O !.@e@T!SCʑ*:1:Uz@hr5TBXX@ QNFa\y:RFCʖS~a0ϿpO2LM9AZ(RJA5+I rADT w0(9Ȑ*lg$5 m",4QYXHR!@N=IyR 'Mf$hx,RWt@(8.+wKi-HZW`tx8VH3thuR UEPI[mmz#kVKs/zAw - TZ>"C%C>ܚ% DЃʬ.(j&glkx%]JԲ.ih.'AFw ()M~6 F=Tcl`NCo*Cvm3A$3@ FEy$p +Nb к7ѡRKCש>nbHea>4EْL,X`SZz.1F487wjҽ_Z5ETցs\ɛWUvq9tꚫHu uA_}0VsooնmW2淍cQp*vO/U Yfv *'nR~跊8S&*8iACf(RC>˴!vBGb*STʴͦȐ}4G,͝0 "YhLE^g]B(_x%IUTYD6H;7I(bw\v"Ce"{跰h+E9-|iQGΝ$ _K5X< ]Jp("|~ |eK6ѓ\+Vyzln g%nı4R~٧8eo38'ר譀=V*yBG6 V ST1&2/u"čA 2-g/lA>L mЄi BPa.םƀcBo-i*(`eFF* xcWHt,uV^a>1j $@L 9Gj1Db'LPPuĭ!GEtb"b@,@pA^egir1á'e+#‚حV1#Eq؉rv<[MP6|ZWi]:V~^Dc{9{5/P}g[.|W|B/Ik>bō6M+N4Q WU;\~s*C-7$}uo"QhvŸl:c/"E(V*A-}xdv ^6ml,F`0D/Q5N>W N΋&]4ǂ}Bx+fI.FC)`VxRZFW@ޞZ /#DzK ezM*NaԜK EZ|1/io՛)7@bMchHzlb @<hINZVnjG e dؒ?;*u ۨ(&hoٱ#[5k{y#KD$B!@890/;r;2T JV>x +:)ehA"(3=}*F]| 4 hk@6 / 'P X!4 S}@#8*UL+Ͽ3 ,PQOWV4cPG 20X~UpB0q?iJE`AFՖ>XQL϶X 7KB?E r&U*՘Y:Xcr)R'E%p(iJD +WT"p)ʚdF"XT?dEA|1|3rNP)"03KQ 5WXNŞ:jzc|H9=0ReMGFQvvp $X`g,O|5﮸klzβfe@GSWbDȡ00IՀ!3MEf5SXv{|Ys i΋3;,Daڀ3aJ8ou8 %.qzɳ1BzY7,]Cl 5 QV +h5|,~Xb\ɝ[L:]B)&H,-遭lin͒kS@yڈ4"H ۺ%TR (Q@WR }D7Pe׎JCAv|"z 48CQ=D&E bh8xxCH'PsB*D>~Q[QHi[UjD%e)?bQ J ~H2 Fj~:d!Ά\hH<\7Zk$p P-xRb}dFgR9-I$lX 4[2Gxl-!/Cݢ3ݷe븸$;YRB5vqa{f8AOHu(~As]k;@#Aa# 5cB˒o칈ىg@;1j­Q)\)R18'xM -bDVd8}"8:2عe:vR 8_X2d"@,TP"%Ih N'F/}%- $^Z"SB4RY#&^:J"8G=*bZ._L,Vi97m$E#t jeSsOިRL;SDY@#n4T]b Hh|}L~ /ԢI,TNV-rAj[uܻk'Pk%r'اDVGF!_(rQ:RVM%!YJVeF\$hZE/x0i1OTIuԨ 4V1_ⵢBSy˳F`(vqeCa #eD?:'z,Ib`Ӭj0JOC55y- L v&DWH%76U20U0ؼ,$B%ݨy$Q&}/r,Z6;BTf𳍔kE|e1HyEdñ,]& *?)D*(ec8֑kVlEsW¾$lcRfąH2NAmɳ\}dG%O~}JRS^W{gZ&fb?m=xyjl*钟 $,o+/~XY{w{۝up12qHՀP0Fu{&:d=xYTeCxѢVAW+"UR:k6&*eZ. pol+jS`e,fKg)l? \2hH'O <^7{Zo@#hMEk,*!h7$2lI+zR`l(e[NHFXGkkB+dԴc%]{tCs7(m'f| P"jCm0!Ho1M&P(rW0D3* "}غ^8xM|3kר؁ldpޢOwlN%ߒcgEnYDR%Ru7 I.aX6.v",H[Uc Kf\.:?sHX$䆑3}}eDaGm:1U!ו7F3@bߙ#+P~R 0^d-ĮRjx_LJCFM [ F2 rnbNBK߿?V̋2 F2Bac&^ARBy|<<=O&lYX&1m=T4#KajY VBH>$(W| Ri::AZ6LTC12Q\d:+%=@bnB6ӱ/bZ爂X"`2|# /0C'ۊtDTNMB2AC4MW}Au*IR&H6M $!8ИTʢUO)GbmNd2KЛx}~TvBmۼOMC;$2,"#WOeBxbTXi$p-Tuɟ+E "snrH(}~;qH%*Yb{̕J$? $H,Z46IwԒ An)d9e4E _ZE+-uO2ӵBf8i2z4#[L&:.edN +$J-FuA‚)T=_T'9sg`!ГB_YZT3"XE3za.v$l,(Ad8R66-FVda.JxWmCĿ'H,Xkav1Y#BB %DrAGOmP2z4*a):(q`BSJ)HN tGysPY歽<+7z+/IL֔0W!lE5!Az‹Z0?yEsChVa9>@MaEjzA 0>_B@p#aX?[|`H >&]H h d,J?݈0nc'cH,Ů"p(CVy|vf]UAF/ȑ?=ܡc|w=]v٥SNsu|Dw]}a}jjzN];Ux0BtN~CO q!4d(x6M!4]Z86!?~j*@6):6 89 ?IbFx*xh<@$vܩQK>Pױ^y*O>i٪gO\W!ktjԺvr7'Y\*׭rbJ5%qQ;yz3[O$Z4XJ0;E!-RV*@NE}?1{݃vbP,OG<g44-D@! ۅRQT"N,z6)['DBT7i>8%*~J:*wҌ=RZWۀ7XفWnMjw#q֢])F6b\.'ś[up^e |kzp\ËEU%Oɵ\.nuKEYy.n z~\MWZ4R~ 'S>i_3pE6}2'[e;BP(Ѓ1S8Y0 !AAi)@[T @:kgpHՖCb*0L3C Gp\(eՋS{X[/Q`V,0tYE7V J9F01(crCյJߓMbm-6{V cr<3Je:eamʷ|~񯎧RpQl3Tm}/?_1L4פ!!Ujsu\E.!"F%Lenn,νRDE`|D@5Q }kҸ P!m[|mF3" ,ZE.܈]D PEЏ$PA2Lr!]!<% K0۝0dc/XH #w5ȶ YLc-*ȟ2BiQ~98zWV^i; ̯:=bUVTkB2#@b߽3Fb4%U$<@JrlMWFr)B i@&LnFQ" 6j@IWrqv6fuh|rV HWT/cFEDZēIчhtJ`{aK1 <Y^vnod<,[ʕʑ(&b$dsn1`!z:2R)rYr^ױvv#+G$~ҽ6Emglikhd FAIh? P]d4D\aVƋ%0>^' YZs=jcPBOVӌBJ=,icTU!DlV1 `'wiu e],m KȻD^ET2 Rz2`"]#R>P~W{ [X؅_5;] ʹy |7C#j*M.T(:t7>eiU_.\{GPtVaMgo\w kRx+,㨊e"_Kg_䦭uo&uA p&(!}ڃB/([!Ǽ# {‡Evre@1 D ;zBKdXcCh1?=ɏu穏_J6yk +[BI) T \5ЎtP4ûCP.cC 9Db H]Ig]8ɝ`8tC%a}PԆCoVjdj$/Zm*Iɯ0ҁ2&&@b= XcB謶M_L*8΂j6pرP9a것ЎvKap/NWUzf֤IkVgVm^F "Pꡃd̘jy﮻.e6dٞW)M6smw7Ժ~_ʪ?d!;e3L]L:Dl#Ş&yj.4cİOs[\9u16dzs޲?Y~;l}!±9t[ ^;c.aTT6 'qojohd4/KTVy4ORd7CIlؘfP0eY~K-bQØ}wUҕ~SYQא*u EsULjb0kh&8?fl &Ҹ]룆+nd<բ[jK._s^C L ~6'~.s,I7T>C;:qm~Mt4v]u}O% u2%?&A5Iurq-YmݷXiKrس=+{I'rGp') |DBg\zY/?Y_mK9OXHu) ¤y6D7j?wN5[_~U\\M0(ϛ^& l P<#аA|y.oTXHs1{}v}5YQZǎ:-m]v8vic5uv>QqtZD~?Si4gjɔN] fOקׁ]ۙqxzq_s;tm+p=idR-v -/o3!t3ijH5,.cS}DE(Xc>(#/<}ao@s)ng%4d1ljPgɐuS;vwnCz  ZRg0Pàj$ZjzV[~9fP in:f5X>/ٿmG6 CC?ɵD/c%E@˿J-$m=/ *IOm\!o`g[>[,*C7qRlCx0$qױ<$NV5k?z!RM^[}6>ʅ :#?+WM66m]{WUɆsZ?/z~BRfrY ba[^_;pB!҆[ 3.Ï[¾8BSӞ;8cg`E) mp 5-'D๶*>3}n}Tgv[H(t#^9>uwׯmXo{aMN79{ƔOfx8AK>Џ#*8WSBC94g^s67 nEq[dUqs ;=vn6EL5u6lコs'yK!c,H"ČV=}]N͘wlj\;g .2mM $h3=WV:*s3!Ofm;ur|5ed՛hQMSa{BJr9SfDUs^wgzkҪsnsW.L)1A%왐ǜٵobFsN;j؍\wn3q#?iZcB.^ymYl#\|ŗyҍl5P]f?2enhA`)A S|r#~܃jZ~Q<{oyI3jAprE5P,0if(#m J)=*`)oLjKa@ +!ƣGe4bGT ͎_clҰQNjm{͋(^)z'R4)uCFŌnFPѐ#IAVnd~!Kct#Ye~oM!ɏ[og3W\\t*`TjU D=(j\.u-zi@Rf@<) (CGh&JXubѷvcc|끦0KS3JЄ`!puC=/rvòtZ|_-!hNŞnJP!]J?D@٢]+e6fǂui.??}5wS&,bx @-]c CѰxx"0Κ&{" W}IW*8dqʩUGtE8 Ɗ=/}>e;wҠ/-C;yl2 T/eAM eݫ&ls_~ O Q~VK,s/Qٝ_w6cX:SopgӇ]kvb ߰n me |5oa.\$HҕDz=5xVͷxk#v+v3[Q~ʯ.9o+unSXF/6R;ZmDrZ-@fV8a„mFQ}`(khW#/LyʊY@\Pj 4lz[tg E乔ܼ/d#iqRi9ȴgQ,5pංdy/pMC!T'Q( W=hDlM?n!\:c|\f…wr]=vwaG;[AUN:»;1('|IѨ_` t7yOgMJt߹_, Yƌ>2:ѲTEG{&՝+nQK_0uY8eѵnu#IQM<4SV^n@?+FjI;ò^4b-MK4Z)Ux)DK.]xC0=nI9c.?TRa_L|r FAb2QyC4?ˣ(R}P8='V+ik'k' /4fGTh^ө?s횆r:e )LQ)>ER0p\LJh1,@Pޠ7~jKjmCplKPM@$3Ԟgޓt.@1\L/v}돣ΝUKƎUat*)QCf8 ,(GX7"hxypHm{h*o Qy d1XH6#Ip @$i 8v1=,x"QQbWN/ OH[c5q}D/* ev-x\V͜),)K F:R(7>vعVe7oo<63-p01)O (C~g*(SeV$$h葧S6`"*4}E] d*X[we h1‘dLU7jC:Ña KH"657ˆ_(-qe {aˈ/ ^Ѱ$aԳ ?u<( HQ'JbB, !R: 2I"X!y@2T4. (ʥ[Z',"' ,D:B%~RLH6E3e(&#uݏ"!tUz]Z6P]6h`@-اw=k,d؋Hym0Ò؜y.n,/wz KoeX&:%Nm].b-(_l:Ҵ>6v21pj@psQ$%Gġٟ'NF`cቤ!Κr{>n96tqꊠ?5p Yp 3WwǰkuˤuJ9"yƄ$FSGaY :#- n54݁DwN5&MjB2Ti0$B|r?iH4SDԗ(ڲJ爅|6U."lZӖy[/&)k*݊w\]Ml7D!2{E:ig|CsW$BФ4q!03GHq% ;ŗ[#lDѼ=6ǗpR5̺X00Da5/S1X0$%12IJJ6* >#C/#$piV'ZQZl* aFT (*dX?B(hx)+&MIg'ho֠$`B)bee9piVTXPځ F*퀗ɖqY,wLl6"s ֮a% B Qqh,ZH` z$33PF #^a󓰰B[hFQ"Aw,2GB~XƪZ(L 3X!RlMI*YyX`2հ꠫!i8}_1 W*#,{mc[.\{x6f~}A.{g +CviI5R0)з[Eí@A1A2b:X4EdHt`J@ FVcU +ޥ.ț!G:l9A);Q%lYh)rY`+\#yg8HʦM1Q耑 a>AI4| FC9x<2إoa  b)Ha Yߑ⣜C !L4y`*+ k!`)_T70iUD4I󿘃5Z>2LBQW5ܢ Blƶ"0<''@}9W1yn P Oą=ILG!H(NѮ?nnp8TLA#ADe nR!J& 8H<IƆw~^\z9@ ,-ai-Oҋ O| qVB$,i= |7Ka$1aBw* A4 57H'd4+~~]?h"=t{ (+H!1@H(/(iXϷai0UiDǠ1 [xW_ﺵQSBG ?F2?q\7Q@w ͍֬Y5`@; VcnK}{񹵫@9p͟Ը ,%Ȃ*ȯZ ATF(g_Z݂wHS)b9DyյfLi."በQa $.:T8bEPABPT>`,˔-)DgwKud󬌀3Ry3 }fdRrt E%!:%jj@gO9(i (EJ]y# &4 [^ݷ){SҊV# H'P!:FPF܋,/ߠ rg! 79\GVSIaJf˰R.,Bn,YP-,1jIJ> "5R3؟j1˪5b1~u"1J9,`ގ7L2.n>3ҝ جT$y+87TOK=g+fR4b >"9W4IPOl ,mգy`=%jdA;pM@ ,fy$=Q%;ߒJ;'T>%J! J0jmk!E>P z`1p&_e<BcϴP_n!gs_SOۮsrRLg )'g-KkAĈM٤&a'f"IS̀^ 1#-B阗y$$^((U2>" |$ ,SM.+V޽;7j~Bt EtHV  !jjY /A`ly&LN:b˺"sha5Y[u#X\8Y |DR0eI^]d Y) ʎHr"w4U+W!9o|RÆNWVX+/2uʂ Y?h`ǿ0en_xV_}=wmii~橧̝є6nX;xPIL|Gm7hӺe{ܮ]Mཕ+v4Q\re lbdYsbĸݴhdU/4ug2l}.URz6nj2d)'Lxg9fB_MMEC}/0{OO4k#Yеfy^G.5)eGޛ[ nsgMW_(/3{O{q6k+V0k2 ɢ|>2fg~4[a;[6[|ͺÆF,k5]tB؁*H/[wР*p݈kΈqWp1=g;.D Ew:(T kVٌb՚:(2|huXq=@ۮd Q6$RDbQIhzӒٵ79Qt+ =Ĉ^Iurw(/!!<#?Gyr#M"QJTP"kax<O"C0C+Ps&X\`]h<" |{tQaj鋂op؀EAۻ뎛}0cj{M|sѣ%Th^q:&UݭW]5^U bD#Ϳ暭U7^,ݗ/dGHӁd%(|?ӟ`Es-0=9?o??YH?ogtՆOZ+65_?˞yG~lΧ3xT }$/.`6tIR^ wK{Ͻs3clG>YDl)tm%RQqtaZӳ{77]>CxLf +PH '5`6-`{:8 ۓD1qF 5550ç:I*wd=$Y#IP!(DJ0] eUHZ艑̀$: ]x ?s=CMoKM]XY 0.G$)U+Ι8<ÇZxIܳϼw}w5solڴO ݏ/8{'@Ihޞ>"cl^\zrj=X[YѵKn^W3%ud]Ee~}_XCZ;P!TUVwe-"HUy|~+oO [?2s|2NcDk=K|qR =3C1!ri%웅!Cg/iv\eqa|pá2>CDm6I۔@48Eb6 OU7hC$ZjU%h==Ƅo\x!C8L݌rtulm,83ϽU#()owV%VRe' zdm}r+=hΈN +Vȼ,&<7~ 躂3S|xQ7b ?dO3X{Pgdїvyʐד; UY|3F.[В=^# fϘv; `/. o$tC*168ل.;>^Oԋ8^m=.+a| xJzǞzqvXCfΛkaC]e sBH@\:Ș,[|>S8l6[YYZF.iv@l s^= J%:clps;d)Ѽ=ĩH49HDE6ptX̂a3pvfϪH.]Դۈ]t:j=*cP7k*Ae\2(lN#E+ ޏMO> HPIlLV-;-S]_kDѪL vcH'BUIU)Ԏiֈ %p%iߦx|3rbFa^IK{2 $$7MgMԴiݕМGM\jE͙9S'lZ}5TUY~l_qbq_=oS[96¶ꐐ?=4vgNePfX@Mb}e vRR0_ `ľkж5,Xӡ@^&n2/C4H ti4 fY6\0S[S*۵27Q{$Z 81:K|.Ċ |mC'aC[g2:9 (P휯@k9w[X6)831 ot5UD;e BPDX 0OG80BV1ytƮwm8t:=PFMA {uij_£I(v{k ~Fğd/WiFǮ8[AQ"wh3ej_RjlK~;wN k.!zUUVVQn v{vիVWtǏDCz\0eJɽ3&3Nx#ZOg`!xeco SǏBٚj:hcڲ)-T߈(5<#O:_8`GU!3> fi'PQ?!$ 01CE4J܏V@Ӗ6RG,ζ[YUDA%]kHM8*%kmSB3 VW9C{V:/U[~Хe! ~V[Хv^|18 je 2FjӦ7~!AVv =FR7AdK[,xJu*#lf!Sρ@r+ +"<_Զ.Fp|C{ 0w@ili ʮ0=QeۓA \#ߢ {vÐA'y-+45>#FtO;Tf ӁDDt[]ZeEչmju&0.>K ŒƗm?j-)~Рyvz bf bؘg֖mb} kBi[onv|M7YY$fz} /TUSS?X@~юSLӘ)NyG~w>hh=h&/F0)ֺᜰ=t4vSVPH$}BI*Nmi ũf(cle꒟ēA' g̝z}S?8R|:0\o٫W;SOız%h~@ȲاOYWTXteHUˢ l ]f>`Jѵb@ ۾@8;8TO(5$0U2~WY< POSxp]bEyx:.ٞBi1nyalEW-[pY2xPeUr\IRtKZxRAt8pB5OB߱Mg3z9 ܂hq+VyZl3b'2?.Gԓ}؜ GYۨe2la\f|Ƣ{S,2c(М$NY>vSvЋn=>ܞ;}rU呡Zj+%Z]*4#"mÑnV*T b+]KHNV4w6xSmv8脣9y1GD<^k2^,eeݽ'gT?#ƞ<]s?+R]zFYv^pI9 0E$)BZou!Ս5 ˯Psw>̓s.X.(pvoPMMByp}{9ᣏ>zǝ<͝;G8r(ֽ7~TULW$ 8(h %CfBY~m CՌyELZhygY|0@bʪġ:SN9enem? ϟiL%K/PQ35WvGYqe茏'?f?Mೝ[`+_6_jӆAj4QA>6 9C$m.slB}A yXRIȐ*6:,@yQID2cEN.2qdݸT\@w"f-1頗LUɖ!e2:iS{x_|m!w~c52:HQEח|K50e5/3٤K2.ڊ$, 7$z}q{e%JG<A`K4E!%[򖯠8FwEi1A=V*yCL}&4:D4B֪qz1L"b(kLn}c>.Fp'AI,ڸ<;pE!׳EPh㈆}=-jºtrr6$Pi#Ŋ N7_}롚~v8ӅKsG9 NSR0㎳ϞZ?~)y#y§S?{~JQ[}o0aDfڜ "alwYjBwT9:ʕI=L),\0 4A~ 䩝@ԈSE76& Q{T B)t Pv: K8TSvߖ>- kO"y:{;/ G[|:iZ&0Pr#oVL:ul$}Zr%K( ZTz:[ѧZ-$'I૳ Go<}9;ཪm"s?9v8:ѰxxG!C 槟|PUy5{ ߩn9׾?iJ]`s$HʕZζ>᧭3gmS-! [R6V AC^wB0ͰMxbU, <^R7-`syM3?A\ixkk>S BCa)]QڲHpq詇qb< ; c]IJ?gW5$>{ ?QaCz֬$ `{h3j~tLJ:f>2Itхyq]-DG^=)'beLx,L\Va-}E}߀ݷO"y?s_n3` =0r?9x*d$huD5ȩ牪H$EO"C2FuUm XTb9b"T Mk͟͟=^ M2"Qڭ2;s#笴 c91_xV+,JQ퓭}9Le(>!lMaKK{h ;vjwH \NɓBUoA@.>E[/w<aKsdO0) 7 0~5Wdrdwk]{"@M )iėd@g3ǟq~ɳ'{|+e)'6T6gH KK0:̴>xЃSb\e%r`NGFDpjp)SxQp[:ROl@ipcJ*YLi^sJ l{ȺZ+=PAL&ͧN2IJ̛yL=$c>kۯ9vߴhU TQT-:^]ZAItuM< R&0D5)5IXoK gLoެyG2ddU2 ҧƎ쓯>ɓ`y /M6%\CgW,**AU'%@ޗTD C45fDQL!SS![&% l(d])VWM%U<9lD@¤k>o}+I'X筂I xfK{~1B=XڜK*|v̳ egZ:.:7bK?lg$2_@D)-=bmbŐx!-g s qL(`aKx8 G~  /5 \2xBeǹU WL8Rbyդ5`tӖM9?Ykdi:I_Ib|g%꬘II]y!(JVPZEQĚZ|9eRΤP5^k @_)nKabZc (b8+ۑeF\S7Р$(r3lZƬ%2V)z%3x~UJ, zG \q& V-7}kkF^ {{##.SU*e_iEsF>lhjiۓ %\u%ܡ " Q/@D n!=bG7Z2Ad,^̙ 8r}Pyr2^Y"EX! P+w4g\*+/DA a<GJ*0~XOkw9h7O6$?\\J7 $7 ,j$϶ɓLcxBH)R3E(DCǁF Wb -6 ")AUTNMC X/[CQ3I:LM-6VʶUSBɢT-^tw&Nch8|0#~LTB"IJ}­lpnsQ;* \ "TIE*lϪBlI"+4E=@GH`XLpE]7ʕ7n:1dV0_,cO=XΡ趪*&'@@Vt0s RŢR)}+$7BƩt*g2oFonT#,R Ȧ¨\O#$"䫰O"{O=Vi)VF\:˞  MANcL<@,h`v>2c~r'=z:`yh6Pv3Ygjj'd+|ңt\s!牺N;] Vޅp`wV6""T K=΁}pOA4g_T^ ߆BY` {C J4~On;gi8XO=p+A۞U[W ]ƒTXBUږVTTز{lZCaU+ 45u:)OY9g悽 L%sp=L+ cO#$OI~|5y$239X&iz:֒L>Ky|)Qp#9{|JвE DGÊqD$`@` x'a]K@Vtz\0Wo~ڟ|s2!& ORD}–1!`{vˇ]>r>ҫݟ|%JkwPH[||ؑ=fYͺRjy9 ut I,ٕ*l_\VjQ,䣻5Xɑ J-'|)`8[G 6oRP'hQX6d2VbE)^>Q^8|$XG|P`wDA;Ip(΀E]PE܏4,AcXCCD:JqtXBֆ]e POW$/LѲ;WZccZ"~nKw29/=ҹ&v'Y4&$2 CWѡ URj"y~U[;-`=1 %(/Q&N!&tCmy=]);E ZrJF/[XyEg0ńǍl2%|1#pzmCxE;5+p]0Qˍ)nAsE%*GCA*ljX/ P90,~dʆAS}M\%9M-3=ǂKUGR|)-2XG"@ y d!B1`B讍^,>>~Th (fL`Nf $4g t4iӁyn]LduܽG٥kޣ:ݻײͦTUUWNu5D~S>Ync_T$<* %C -y8 5j70aHIy ҘAȒ5'G>q#!x,c\$V5ѫeԱ#kISx^=׬Y\q֤]vuHNMߩ 5Wen掽Ճo3x[^2fpۭmh=p 1vU ?PQ0 =dbpvEYzOc`Q-l1>BLďJ\2P*>PEAZ#JyCWJԐ},snYG\d<Iɐ]=,ΤQ8V) ?}bkK^cD7Kq%,$ `T(tp!DtˎI8C B}¥ PV$0 JQ3Di5.89\dPlY}(:0&l2QRz$2$d'~8T.;ef<-ڟ]'WYTl#2JyE:F *Pؓ Fr/V(rUV싮ȸiRYúu,\fӂuUޗ66gg͚>O}ƜzX(iAT!t4]MOrP7[^Y>ދ3t0{>lS]39&ިߠ;o?hheW$/q@^}PERشR$/E€>t =-i#}'}{P~hNQpu *CRYBX g9.Ig ҀxJyo*kWKvؿl>͛՟y-N#;TDFF?|f n?ܛ=Ù r|,9T&!iS#C!gB-;j6'B&OMP@]i,HGW AH~"K!\U5) yA@F6l! Ql!QcXCdCm3΂P8 p}tPrƜ& 2- |+A$!kqY\mWd' )(AƉ1ML ;І`H_ҹwb}ї}JW'W \3xKxTs/Z`78="D 3Y\:kswQr'\jkrvs=۰Z|;Vrd:M;~r [ _N[O#$O"{/n$>tű'{tx{⪊}kNJSYÉj* Qc„#FgOBE X&A"3/ꅵ7tx;``Ĥݬl;Wޛ4x?o5cQ/0ʻƸ,t^R?` ܹi78x@B TD#/'fр$> E (pHp"UȹepJ~:&?ES 8PR-$eOڦm"% 7ClflHdD^d?)?1 㓘B;XcT0U<2#W  {ZEۅs/Ƭn=bx?[>'nɾ]N@$8xgx误S/UpK{yxh[ @ yq`и`<Soib[ԉR@ +@lgpAMW'#y~UU'":\CpO <(U퇶3*F4`>eCj`<:Ya;xk Rl&ۨgLJ}/Oޘ콝JU~oR+>< BВTz=Fh_yēNNU7ѽ30r̸͛O;,5Ӻp믻VD'4lj|/iN7v(˅ٟpe3.=3Lu\B%PЧ-vB~gAX(V\!} ՏWFɡO@`wU>tէ3 PƑ>idD^d?S|?|pDй`=Ȑ6fQ_@Jm0$w'uט,Y.TIf;DJa&c<{Yn^"h'Z\U[J_]qñǟy?U5)ôklwFJj P-mQ!3%R&"Ytlʶyߖr)o<ӯmEvܠc8cRͷ皼qLqD:.O)3'7]7?I|3_VL]ku :tsc=ҏņFtF }’䁟-}θU_YNʡ]FJ! msZ@i4!+wemy0X¥;71[1H]ztޟGv&dEs&h_5c>P0G꼁wx7.Pl9ks}JZ5)S`zwt_߄[aP[7_Od}R}R k!e#[m͜v^'cλJcC#\J'"%Yf3mS2RUٖh5\ncM&b&IH@JsG>o}%pWm~FX_D&$3 s9H\ƟܘG"P*RD LN{L#@M5/9m!}|OQ>o@ε]gQ4r5<ʵlb(ypwn1גMTc]D勾`L6 N"em\L2t̬Ogp!Ewni?akGuM!PX1'Ãdo9Οfc'GV|f>ۙ3 (6@$HߺidFzi8qĮJ  n1T6yFUѣQe0{*ВAQt 銚vɕr:S-LZ4Nd+)yAO;ЯBm?U)86lr9:S1cw jIeE b0 Ϯ;݉dDNW*hg' yx:6MYS֯YuZ@ՒҮU,le*%jJ19&xU1N;BsM*(YMQf0&d,ԇd B:iĐQkB0U+@#@b #>hᅵ,yI,i,oSInS糆Y)h6" |G$@;y  PW4\ӴT*$IFтE%O\uu-ͺ6C{Fb%U.:*H<#(06K%,GsW,4xPwx(#:C/#wX45B%ŠZJlgSE$I .j8 \ϕ5ܖ|cj'E*BlI|Ue(-Azϗ}%&hNLfZ-o2v̍h 8(7B|+ "XfYrSEA8g8xUN%8k4O|Չ"2 =.I0eZ%oG9R65 r~֑9xW:(]Z>qGN7zD@WЪ%Sv:'?#] d>e;)l9R4z~ (S2|3BVOٖw9wDѽujAgW褨Y6q~nCs.5O5 jlEYh@"Qt Kj% mh-ư*(L&UI)*N^-ri YJhBB&K=`[bϾ[TtGh4݄DG )oVtU|DĮ `%NL>꜋h76lc?s4E\ȰߕF{tSHjp]b#N#Bް^;Xs4;L1=K]F0se|%>`p_xnUG [i!:K#lj$$sY}4c&i8xllUB`Y1Ľ$Pv)3!yFhSօ2T")eM sH,yԏt 3l(W5J49NZm) V߱aHLkqX5r`q4\b't.rT)͟b E0p)'_F~I 6(Vx*kQD 8 :+8?z{ O ҇u҈*Iר\BF?ȚPiz`f-)3J2$*hohH KxEb'/)ZиC8&6RYˍi7׵[uFEg:ui$^~%FG@ t[AWt:M%.: t cFGJ1&򎡧t1cȫ /v6߬I(pi M1cnJ\Quu?ɔe:Мi:+# HD5*eJE[28:4j9][we+qmI@89E2^4툊Xv1or:kr8mI#0? (cBME.L{Q$Hpvc8 xGE 39*{}yRFROXp"s 68kBcז?!<-<.{'D-d /ca:mgf& r?9 )H#a5K32~=F?$H{;2SX;r\/vBb6"B3W)RRaZdҪW쬓VJB4,MV\G 2ŕ~'fGwJR/.kt\ B0lx8T(cD;G}rd3$9-nQmG*hYTY# bVGǎHb'6c>H̳ɯD{$I 7/vy3-;I?LC !AUY^XU=ltz݋!}$HDgg`;xJ%96y#y*E/UCs9E,-s.s/@b,_KO#3/M[l-m l1M#(+N91;pн}`]5lӽ|){{؎#ym𦋝7zG{c^{D_Y:(R  8&Y-ϚtF)v)xMAtrIN4-qYbqXuRW}4  X[j1B~:>Ѩb\zV:Fs;%i ʨVe*6$I#D#ٸm\IϨ|!´H ^_̕ # )I)ȏSRU/z$MIy-}ZŔ$=ѩvٌ,brZ֑;ʼnx)d$DeD~RLZI%9  9 $VU@Vx-G4S>$I B[qmI!_ s$|$@Q?Dըa`kg$&-Ƚf|s$mIJ+}HF<򍘅3L#K9VBK p"bl gZ3E>GjJccHۆ6  2FXUUu1G' 6o.S_tEQO;,Nӷ_/ϴ=0W: I;dE.?.#N$)G>qq7Λ^Itw Kpk?&K{c~.RB0Eū_rOvZiI-mH'=mf]DG1IӋE[2њH" |g%N=Ca%ΰv!ezp/&1%he OsJ0́9[g@# lS@w6hq+ ËRD"&gka&FcgXL%x{Z="/5hTj#5<.+b04*h et8m_DZCm>c!(Ib1)`W.YbamW15lh/^qcvfI(̘>V ꀛ=&, }ň@ vb"ANV^ x4鸖&-OxoοgO_` +~صc%VJ鑖OvEWU`U{bnZCloD?!/Y٘lEVdEE:-ѿ{ȯg3_շ O*npHͻ3a|S&Bo1J]akkCg) g2@rK-oY熶gj]7=f}gHh9mtJlw >G@7B D^2.% XԳ~}I`Ѷɉ&"H1{ۭVԜ/K 4a@KBKuayE-&M` tcHmҩ37Nm$-IzzJp3ĹT%q_1sTtJmMˊ?2<_r]}n]hlXSd{<\St`OBi\qApJ,o:j.>BU$&bJS jք嚊+WnÆ9xiTNgN[G?~_<e٣WsA]94f^9L6A{&y>b)gߐ&*heaXմ6o"#kgu7f}E-# tDX~4M&6*~+٠AbAA;%Ncö"BFB^F=1-c}5ȥd 5dsLŷ*5?Kn8/w%K $D,F[{'˱쵙\[N'E808YQ^L?Kfnro{$m.D^2mV $a.@z DT[o5Ĉ0 &_`7P88Q+öC]sO\~aay{RT87:'O2pOMxml>oVßC$:>yr|*r3sMF`H9"QАMG*@2" ɂ%خGKۃ2ôh#64-ƴOYaY$ZOUWHVH(NcuԣK9KTT!lrbJPGgTҵ!.~t80,, #?e"2A/!jH拲H믾fNr1⌬ws^&em9h GF Z/-Ŕ :i?hw~quw )YLOnؐI1`"cpYy?]xL5J

<6nBEόA%IBW 3S<ߜw&=~ïo\?ٸ v)9k&8|p%CɖtJyTa5lAA,2SP0VCNB6_r.lv, &X?ssϭP mu:?gֱ⯘Jvh?B 0e<jP# IYi䁵: ]33]t%1#%rSTNþ`K~ס]Nkܾ=a?K~n/mIcs޹] v/Q:7l>1oU΂߲Nu)"tv6 Sn$Åkc͘ġ[* bLrA/_=v xd^>冏?; nSTD5?E CjAqK"8F{^4>yn\辕È?-y1$ cfT1:8aP!@M3> p2\8M$?cGCn7\.= Q§4~QR,^F:Ұdi)z7I*r+1 t3_hx4>P>AR7fH[sxh6XԁԧXUEiiwQ[=$XFJܱM'{ҥny=Pl#y/;wfq c>m9rX `)].W!;[삑Ašv8GuKNBQu1A*ƴV6>=糅u=~Kf\`rxFyȮ_x&uUr:,LWUTh`%Z>GrfF&vn&9:vm>sdz۰-]b(퍟f;,$=%߹ mI;*c\=Xc);K'֎Te#P=D\C&NȴdQ^`BQܞfe>ONA<Ê$(yqq_3`KCfy<%F8yE.J0 <e>jsyQZȜ &+LJQR,"HutΝ23Q4/PR(b-\Uȯۣ?AҕCƞ{sV]5`pO+ BA-&$*MId Tް&cꕫDA>dSǿV"]?YF.z'|iEU5"ݮy!CIVx-n}$uHp ^C )}n  ??w<=_4}n̲N9Kr97!\v<渝Ox\EӛBnn3hґAա*$pnv.,l:8RESZuBLqb>ο?Y'9)hZKo.:op%qߑ/??Ts>#x w]1Pלip =aK<(3 ѳ{ 9P<(Ӹvj MۙF{-7]/s{䪖L=vk/ž )a[z%ԯڳēPh̭S~ŎLgzsE;wyy?^]m.nrzyЈaCllv~N=i Ns.7xICpoՉtŔ%~e4̧o88SP )RmejK(`D*xH£ <0:x.fE`ZFzOQո~ʹXV3.xKߟR߳Բa]w$8IuC&N? i n>>Ԝ+9p&{y7^w?Qyg^ٷM{O_c3-y-h ^CA@Øʲa;ϰoQ| adm` UVм^H*O{~eL7n;qM C};>lC׮W]i~Cj{ރǠ}Y2eQ4H2l)SW@Q7Əg≤"h2N Q#ǦudD`ϰ:2ܭlSZ,DvNx@TI1<0+XfEpHCfs _QW)9"9!Ґ J drZ1JT={Z `%?Щ*duN|.jxv` csK/v[po[v)Mpð ?aב^lA̱Ayk-[EnV&߾g9] ak@ϋ#bfΟD?Q^cw0n^.(;>rGPso̸3Π$Z=a}Ӿ_[ٻNftn^轹KɅiEO/9m .pD|q`!]T;_޽j2{%NYe|耂XPG=|ƪE@2j HvC-f\1-sB tUаQuFۦZ y DIofrp%x"rv"nF2C*js^R\&CDŽ`v*|px4`[0z,*L [ߺy˰LHۮJFf :RTAr2$[>{W3/ }-yj"ং,ĂaZOi-[( \G)ll KZEhnฆM(A~L:9vgGh mQmZ,۾hûhQf}G΋ע1r^xx|myD *HD'[\ZhiHNXfC`)ϊb=Q ؽנFU *+3|t.)05tղ[![,$Eo.*UVE'MN#mC !2 ` *#&E D 90 .=Gs(EK;2r01pzs-5='v{YT$ [ H&Y4R@i0|-1:%y91F'Kguf6_z-bzޱB`*p r*UإstvYw&ɞt 6խrk| KffF"y2!BH@t]B"L.uqbfQ! UWҥMߎ1Wt^+g4 (w+.Q w>oIlYIKdd aϟcbp0U|ɽ2V,׿*EL3f9d˒`6xޏ7Js6{Y|ƈuӟgSRqU?jkhLٞ}qYfSEմPum=Ps!b+Ly2*,(- 56I;vY_1L)~P@u;z4v.̨jǍ+F?N OiU"!]0!4m" J rh3PEk@b0WR<lrEƮ,3VJg#i3J xF刢EC`,EV"%2gC\Yڞop0|1ZKlF+(Eux<[ٲyS `%#d[ƨm22H_z<CP0Pɜ֖Nm߁4tGЊ/=!Η![C6h|G;q?=CD H/WQkLJOJ>J-y)TEW_?k 'VEétWvw}&vnRn{Uy!gj5I G[.&ji߁K^) HyC<wX98w10oʳP{ǽÆ @^S:qju @'ZUV|> 2[(zscsvF:)c>}:8޿{hĉeŵArVлneEk՚Is) }u¦JQp'7WrЀ ۴閫UsTf]OmDJgT.8TPek,Bʷ3?ÁH z;wIe =(K U3S~^UciҴ17gtZ7Aҽ_b&y靹$SRq ġn.4LтqjݖD ]`8Y jZ<ӰIJds ihZ#)36ss=N_zvl}fJuUnE'%o;kK3$>y g&WYk}:[$mJxK %g u(oUuP.%"&wѢX 3QϟD`)M}쉶c{GHnT[HY6ڭ#ٲ Ft#nxpVdY۴ wǡ#aFԏ%xVarLGfϨdۄ]\KL4KH^H}ѷ#{;|om$P9Bh%@bsw5i®P i@n-F{c`LkRU܇)߮{䡗s4cAևg $Pew߿9)+ ;Ap^d’uOSy]OϮa#6tuè.in`;~[n9Kz )*Fqg{bnPrܨѯ-[hI@V?ƟwE+W)׽9wj#v5yMź3tw=aMzYuZßs=kڬ]bGV~T!5SfΛҷz{o`'sCQmȕo={̡6q2o=M|s]W^?^ ;qqߵG7)Z,^%wٝP]aq0@zk^]!/a+V6wrqҕK4Ζe][0E ڮnw"olO=h("h3?+(ee];#*v-}-# | RRlD?^7wOjb6Vex%i{SA.[M8O-eBt2YGSlv"c94([Ⱥ!6[|ˮʖ"m-=P!輎!IO!;es)n(eb 'bv?]MTPH 1x)׫_Ӄ@ !SVz$Pк eC1/!DER-D=844U%E,A׏pV sʹMr|kǖocG10 (kt/ExXDWbE#}*5yĀ\|l2 CIӂ5ui7lM4@0ltlXI=10axX'B`WW8wF@j!ɓVۜ* ,TUE ckv3"8Q|Sx,OaOY;at(,5Mr:@ņF26lL`ٸ6e,;OhbLE>)X.Q{C7M3Hϭ_/aQdqH&"*jJg;1*Q%NU8vN#VD`bkK RJ.(f+>JyhF\/5c4/&Ob(_.m@a {YӈACT-YA#H!+ =!cL~a` rSc͞}7 R`  z{Va̘c_j kpb 7$!ш/pbcSxtp4߆d$(%Fƽ%k Yw{n/! QxG^蛯ZVn=;Z&۾]t {0 ;@a/G\<]$<.rnv@8v) =좱Mou A*C X,`"9AL0j8{墀ǒf,B舚U'BD ~G }s4Lqhc`5rb`^1c6Af(`藸#> q֭~ 686q}* zKml;}Dȅ}Q:`ڟ37gkT9FKz'3pp2 > z?iDk,V򄙵\nH BѭkTԈքۏ $&@ !OkLDdI V%/u rlx#ydTM`w@Is:vdV(>Z`C=hX :`SⰨu"6GM-@A>I]?UQÂӢt4S3gBbP6Jt| ms@|1DJm 2L/,V % [9<-Jv3wCؼFPl6H6d!lɹiK̕!me8 3ѣBГz%8xޙU.$ˉ pbwsd[9 !fyŹ! # DN>7W$rY܏a p"ӄ* l%\6-d`I [Q<2]#4e!Ǐ"a5$y1ϖ,WGEjhN@))\I! =SSllVvIn@BfdB`Yp]m`P[x;<feIaz?).fz_缥|qo HCCd\^VO)12BL L<]!I=Z" D, P<5oRxM15 6QN^TDhS;*BYEdK F!|i]P^̢L-墨G +I;N.L@4I+N*<|6GPE+l:5F=Yju "3a:0:46 RA| HQ,2 Ix T*'OK_8$k[>k('t|<.GnEpd;{*RA=I۳2yU+e9gS0Uctl~PF6 _!_ a,a`R})' -ȁ pSL-ȸHj2,ys^ Ǧ;:epV\+jvΤmxƈ*4n(Eez?7Y-42S#ŧySs UK_u-,"^f̊='/~i0,J %sC8rJzQ"ld8\GNs>6>`-1:Z"meԱ̄<82gGuaOh=pAv𐙡sF@b,yL$)odY9%%+C EB8ӳoKc,3?J7GDb}kaNJ@> Pq~֝(r7B SATe:޷BOF .!o(s6;>vy )rHjKin,,!7@gg[+:equ63#RP÷L9Q1x0̉y"EJs>6(ǜ%< nDF<5 {`5o*( R"cX=:Nܾn¤K%:zQj1 80h#4x(*!&΍&|gyQCh #Emeh,җЦ+"<Ҵ()ȈuX2\;EL&H>*)4)Jzʰj.JgM8&a1~)@0M,W&ֱYL J-n[5LƸ,koY`o8.Xwհ@L+F8M?C B&. k8eWߙLf[b Qƒb 8H8XևdK;'w48 $4t⨰0@l!7ځcKɡO|lZ rῥn'EQN5*cTfm cʌ&32W"&/ jupRCŒACzN6  vJ{u{k=P!"Xh5hWhLUBWU!UCIYn+ 0pwoƈ$E$v17 ET`Št [SQIs 5jܴFښ@LއK޻..<<?-}쓠[(vaOh4*!T>X&0܅c&qa?ЎA6pvP0LǛ `i=h|*Y`z,z;;dsv=/9Ih{*ASoѤL|d~FDτǃ$nV@:Bra( @-<`YJX[Y7ЬkVdJL)X'H)n-LV뚄QcI;5.jse穤6`LӔ: DC{!NiH|DJm*#E3R@&:EICdz6n^[Mt{̠D$* 1Xl8 (TZ(MŜDN4S<~GohHhYl} =S^7l!@mc%XL! %x?uu]?q\vu>}R׻g!}]2KjYdnnJ`⌖\ m [Of4*;E ZEi^V;)I*!y{ D*Gғ}5{B;aU~#y}$XrA>NEU-[і0]eZS:;11RRi-_R.P&zd~+*VN ;GБˍci5[`j7BKt\c >>9 1acxaVZ[?ʟOl=:̠ Nw)+a;|x^Ȉ\t p8^Y@q,2I9ӱ2pYj04) o= , ~߉qE({`pߑbK|[+lFaQe2xŽ:7b1gfЖ >!bE쩷G8CiPtJ_p& hx؉Ep|6 _d/t.87d U"A $Ȇ՘p g[wȟ%&`߰(^m e^6FxJQK<0M#Q_< Yᤪ!W\~="օ\86;*sĩE[Z=Q̚i}?fb-Qkv :W$~39"Ač2'0d"!H5e@vt<[o\#J|L0 1QhT`ES(*KLf[x:,`?(i0vLʛBpJTh'hr vcH ζS2pձMŘ&-m ?`P)jY1 NG_Pf0d@ؠeH8\pJ,3WbFX+N%.*"CfJк$\#Ø၂tx!.@3b^&s ZZBg3*h H@?;ΗzY d}xp HH 1M(R別CX<{P a&%7 H >ENJr]0Q ?6J \V$C1P6gUq3 g ?~i%; 3z%(~2OkI2}&.>Ö^(@L"g-F Ggl۔]dteE<*-,x.i<l]\_E"&0튟B1r8H/, NIx`B,[74 YJ8Q\T D/^Ϭ: |mڊF٣zꡍ)%x K *Rկ~LI'l8"K xVt PЌ&vk W`R67mo2ͬ։KU١(4 ~, _'p>R1 D5OR66Q@,<|ð5Hڰ7ұĉɨ`0pe)np? \s9?9䵒L;7YƂ`L}z4!0̾E]zu^¥Ĩ(ojLJ$PPԆ /4qIPǺ5'F.O_dD[pMvނ ?tc'\ր'[/`Sj[$ O)=;Y>q0^.63|;WL_%8l0+>Yd}>.c&Uv#,~­2iKR q`s H&˩t}K'BB;\aX_Wv.ۖ2(ˈHL /MzEJK!IKk($ _y}U @_.\=XC8bǃQ <{Qy$tl\u.;v=J\oAdm)B/4wp6KH,L4W [x&L0b*$kXl[0V{uܳ|4vx_5^aX?YUŒIS&{h(W+*V@kR{cߟ 5GGtX|(zh|N5[I۹O?p8+: bB:o3j:S$/+e5spzh4?1;֥X yΧ\q;SUkaxkX%\/V0mYU)t[c;9|μUMB9oAb. U`C>j9=hj(Ѽ0"CKc-ʮ{=p*Ƞ@XA V5D+J3-4`ZT#Ak^x@XBJq_xO;Ђ+pSJR}C_ 4垥 0M5KXTH%`dŜ9dȂc MpWW(›oI\jҴiGo^|y{L 5UjBee zu o/jW_"@IM!żusPdڢ/{+ ǫvh\>pIsZ>wNQWE} /|8&Lf{~-9_sJڱ]՝3߷uu4i6A7 kdXg?mpȮm-p]Ӫ9d ۮH#-N|rۯ`%Pb3"@H] p<,lt_^c1")5Gk(f a횏:k¨nXr ųW:|چuVmKfllA̓O>ߘ_ܯo7>i#'`}Ͼ"SxQz1c v3]q/;n4CfL{mތb`.^3{v'OW^ h@Pj6fab5_gvdh*ڽg!WDB"&c=askHGo3G!`?%V rrpi[i9̃(r9uPD$I`xtk# DUhN8%rG}`̜,_S17z]ЄKR+&ȹl\]4 ^X BۃKJHi/JGS ?8lgٓgL]kْ%,mj[(x\iv%1lI <8#m&2D'@(Y5!=ǩO š+̙Q]VTzWXJ ]{N)FZoE-3l?Sf|bŏ&Ϭ; 6DXUhy4<g<8`+!e/_^@7ޛȚe~8#ۍBpx(uuN<{_-#@U7Z' "c b:⪤[PEBd'bÚ)Z%{gnNXo<@S&a egRz(?bG3EK$H:**<){܅u;, s+ vkʥ^7i&GϪu^cBۀl7xrbȹmd}ާgwB$*]D_N=Cr/(>ɧ{9/tCW={Θ5?VeḢemm! xjδ\vIjQ?>ToO'5]xYXɻ $@sϾ_7g=vłf ilKrL, <sMTeVVRXxkZ׭Z9{TuwoZr9^]j?=Ά@I'/Yڿ]E<ݒt_jͪJ)>o/sʕdV'&lY1%ԯ`8X{蒫ry;v܈; y̆M' ٨2֮\b*D;egQ)̚=:S̸iTjH+Z1jbiNkc`lmI ^* Ki(+BRcք59ӧ'kvOf1. /boG^{>pmp$=0o#Nsƪi L!@!TTT,)'MԞuUl RÆ.;8bu׭kQ>нg7%Xܐ,"qQ1)Uǫ BB3JS4sdLJWBѿiUâ>Mh 07dv6bJBi~{,!ME q?[m 6N]լѣbrX7Bm16wu7N6e m߃$\'m:)Ŏ+x>pw,\6uM_XY+lb9SԖ.%MZŃ-I%r+!8g8LM$uN?3>%w}ڭ5\ɴVmd܍UAeM + <7uЄ>eu~ҏxe>yyִ{oWXڧ˓f5mKs!GWO ޤƊS)ڼJyxvH BRqE.pђBS*1R{^+%w8 ¼QAvOS%PɶDr*cD>dD$I I4*_@1@R?@0\˵i֦Y?}j{t5kVnO8vG8QCzu5oN"S]z yt!ßx>  RG0a*3K"P]v=yFc'x_74a\/sGЬJvAj^3s\'$P/=<:iL͑L&~M>ػALyћvi?;4,z`LgQWsiIj%S%˪5 9W0vq̒%\}-ɺNsK˺%xD}\Ev4zEzMH go(YQD*J(zԛ[^%ew93Ϝ-ϛ3M q'_}fѢE? ؂d'l&V煩?PFC2-,D ҴsΙ4*iuc?Q &YdKjs6t2K JXS|r e/LS'>sk,^Oލ?믎7s{_>O<e0eFSA cm=5DnRȥ D.V6)&cځ'd/¾҄idX "o\;Y)4͈mYRM=w M`6P7`X`ޭ.W[pRUZcA5[4Z}oב64\Tkҡ׆_5._ ~xui8{X|j?^"т^b‹8Y^Y9(\}8.E;oD{pI6'f\Qtzmў u1m2!ٞ0JQzRZ/{f%,7/!YwI BYOgz5ɑ\ef?LyE}[N锕?{0SX׹K/zn~'NW*+_><(Y*eʢddu7`vS+O:Oԗ8]WwS=Ȟ?b0.7lk$.rQ'_6>tE0st,Bdꆫўـ&^ǝ"[\ w w| cJ:r]{7t Pʍz/xK~K&eN=[5uSz)=vFGv{y3Ix˃;{'V6>b.zzN~oQxH|i%"Oz{mh ivg6tZoIx?EqnFMO!WyN#%~{R>L;4/[.1;/M,^ ?=՗˂Z _d+ICVk e~<;/^X_:88X5-F}`? |fS$_ЛbhD` Xʹ6*Ny7cCʿyq ZϺfZaɉ5]դu"i-fI$v}MO)aV,^[lHyHtlKK6]V2q;9Q?*C"[o롕61-I{iTg^FuOh%2NzHpͷdNҌG]?w֣}](fw3ŁѫuҦgtlqS7Q঩n_]cx`78sYcv<[4-7-U$aL4j29"$Љ4`h& p aouLSQ>bHTDsO ifiP,@GaXc\EM Z<[\.HNRtT!(>4ß_'XIU0neXt.NUaazV%1 !KKKPcPwKHD x 7!@ѨZB(*d54]-i1SB*v9ǎB9TJ_ U2ݐ _-N Ã_OqAQYM} TJ^#J'ı4cHhhe⊈Bb`RQRko0&ZhRN)du8fY nU0Qnkoe=Ng`M(}D5M!^1(-Zt  AKpos:f Ye$кO qo؅QBO+"Hmr~Uݩ=^y6Bv:]Dj1!\@3baYj(q=+6$(Եg$1r( tTi*( Ǔ)%"8[;)'Yđ4wckC _ (PgYȚCkBkJ 0;MT3#/r%ݻ Ş6mO?YC:6H:> u<3@D$]̈c.Fo7s\8/,:]MQ3*t&QC)(+X6rB&V >? SK #ƈͽ)"<B!C*>^w1A{4M&i փ 3PPbeC"OT/O0F*%kP`Fk0s:8ʟ7S;~ʄQP+ 3(:$ydX!@0Ф#"j3[EVlF\ %$ݝ;ElA+zݙOq^QWqouc##|%nD!(k:&ZvF!fl4mCr:aT[3 YjZXe96P!v56xAytfJlS15a~R$+1#*ZVkX>{dl c-wa 37Qf<%_Ay =퍧N;ShDD0 Qag共Ґ4L*A1"(FFTOpk{ibsEQET73#v+aZp"pu9ifl1L΍P:̂,<%jP 2߁=|n0D}5TBhppj@vy⃮m5BRv۰yv7Xoz{v I6(  <`HTrݶQ+G.IEImC$Q! V*cLhXPq}ct-7 b 0nL`qZDI~ QƃtK%$.(7Z-8 Mĺ8 t-srg%jb 2\9j:Cg7HWN?O^L\})BR;ڂ>9\MXOx=\KBoZ-TgxJ):/݉!*v9\uVr )w_>$ Ӛ2oA؀VB ,A$@@ 6 )R&2KQa{!E1 ,2H⺁|M|X5!*•j}҆eT,eb%*MfxD#R0 >N7}n59=\Cl6G`C×iZc4 ^$~jT h-Q@?ZhU"vIuki'`jbOZ=iD̓Šheko5JˊNk:LCl.(-*bmon 88kX ֻ8wJz=MST.eo(HQ=DCi&v]c]<«^óȷndvj.>(G2IjP,؉BˀTp5+ F|ieʪޤ8;p9D_(8*RgnB9r qhDXB䘏0 K` T"r5Aek5_рf,ZT4ᰲc_f퉷4*n y`BN0C`:06<PLki' \Biγ5 `Ν9fQS$bxH*ۍ6pVFo)}GZDD͠oo糖ՋOxeĘ05ƐMsCAqB1u&G.RŻSYPF51+礤}Ē}mUbpX?8ɥZѭ[fz~*j@6@iͿD$l ?JJ,Lp`#cK1@0,Bw HaB^E4:ἵtAxQ6#Nr4Ҡ>O9p3߲&XT؝&߷qC C1+ވF"KuVvS/K/"lNs'H$+!\7ƺ)2a̟; &8J' 82 i8>|rRAU62U#/{Rh<܍s5=o!Q;P_Q Y|瀇f:.!ԉ؈a l(#OyڏybYRT_pԒ.hzSK%q`* I)a)!2@nOq$> SN]C+T'V3Y̱p`o<@ɃyTApSz$_ ٴC|cR͌" 0Dٚ+~AX\u+Zc=ŞHk-dVcHZtkPjdۈH s6ִ$TR#iG7h{Cd-EpA)EY98n,WZVe61(QA6\koQ`X:(.@nh#qV^!?rrUDMHAU^wL*x"046syܢ&&6szeBGp rXy|dP#&Y-hL&baCD)z"L"c-BaXx R֜Ϟg p@)|R'賘0q<4!As4 gr"@V>x'yL irݠ #ɯ^ ⤨B aQ4Ľ^ľ`j3[kf%:q _9h,x],wȎvA1ItB0~!Iˠ t G1u/(LT,6jD~ H0"1r$1 ue iĞp <17[(h-#^,|{(]BnPl#5)`R1jt0~WxЂDm&IA,c8W ׭E'PED>Rau,!LFQՠ9(#L4cuԈTjxkN[hsi% 'd& A K sZ}Ϸ"8!&â!͹6%)!ވ jx 8x 0_JDRtQjPp7.C!CZ%ibN"ŞB.+ĚjQ<>E|-69~NZC.΃}H)CX:5-Sn>C"FUL紹 Bq<iH4ù>(,4|ۆ_9|@EShcDbDa>Z}(C2$rL0O$X*'j۸[{7ƪޟ]}LOɲi偯#6 h?plN"hfތ/*0nro$o^u2RO ̡=#t**ݟZ4L+2XHPe?}X %!4JOcJ$#M =kyggR/BJLXBQs*]AX896wR1"êTno]o._aMDf Kq1D h]Z&v!#E:*P8Vqng䯵3:jE+Xa rKςjcASW"CbD$c@kft^P$ .` Z7aOFNDq[:EkubaY4Cj m]s{036{dP'C@ 'D)ڌzqc|Xh( NNН)h( D%^M(sf#V,l{5e+!ȑh؀E3iH&n<`#6쎾p&`I$-ڋd|5FYyZX|s**;wrta3@DV8X)jPFCð#a1G6>YI;2Z6 HA4"2!_o:kʇm H#bliZȎ)* V.?ڼybZml[(|;Z/:_&I]h0+ȴC>!ledpO{(GQ`{D u9>GŠ(Se]E6+V #7Ru | B$NOZnmn^ P-DN)r gƢ D}6<(}\FbΫ}`oVfҧX8AT|tx0!1#KcAaNIwݛxobUH?V5~ QըSC"ՌUBj5h%C|p¤dE BPU󇂘*&>1Z皓b<)Ԋf48dHP#n_'m"!D ?1\~HZP(>)KHpjP3glfRG9FډLk ל92Q"!dfPEוaM#/DHVX)O%sHR Z+Le~bxZ>SI >vB&E^0IZeXlT;} _2bE܌ypr j7)7"n%_NMq&7ZXߦyzV$ϯܫI>j4HMq&$Γy,*k6{߅Mz^}38-u,1x Dw #s ދ H@=&0•dSzO\3GȥT˺1^J$koI FL?|B>`mc S5%(jJTb7kC z`]˨hV)T3RystN e[C)YMhN@CS¡*  ˴I $sGP:: )>1@p-;J)lcDJC!,O@*Bf|!2tiSVs.f;P]pp+ Z^|Aa2-.?˓8+;NpAR3nLnִD(Xq"ͭwrX2 TFml!HZjc0iOCa  b"6.AaӴr.M=qbg͛1qMZ{R)X2-_H?4E)X[NS{6Wbēt?'bMŁI&']bg ^KG(EP{ß)pl#nMzY#Ҟ8tߴ l_einwCOS_N8˹J]!X;y1. ly| ECO o*9)%$#0_LY[*)mتߟ-(eۆzEQlɑ)LQ;uKI"wj4w&^o>[cM65ɺֶ^iZq'=kR%{1->X(\ILq‘VUZh5fG_4\I ƿ$iI7\ɶRE jj60XwHHJ96+!(9#*bZ[$Mb!lvz$hsT+!-<ŴRvcG'5Qj/Ny¦ںV dˇy=oª9ՃZ._>"ecdl[a}jחGI$_L"܍0p\C`lqHĨgõaalMO7+lv?izڹYJN:f^G%H<]MX/Gm>-d4]+lRz[ʯ]{L_'yYߒd);?\0:0]DžnPчTfi$Tinx',0یr}rnuy2br?*HtStlDG7Xq͞jiy7$m&``f{sWڙifU^lWZ-iɛLj#Ѐ'Hވ%D`u#Nb yo{㴺/'E$OFy(dK# #=:/Z675-;Ts^|vQ;>/BN|p໏k̴>K|'A:/By7+W:6smH \`=S5>Øi$CY1ƎН1:-Wh>x4GpI$4{@"0hD){3F6H"n"0QP؆ f3瞢U͈+ qDyŠF?[f?r7|ց{^}~^*WNW]R㤑tPDQQf1FϠ!}wZM3q^jGY-F`WqkMHr幋ϑ3='{-vql:pJFotyqŸj]HhzꩧO[l9bW?rU?.gl;ej bE4atiS+d"iE䧵uJ,"ʏ K_r,MAJ8ۿ0Y,PZW 2-V"M#2qQJ(m DMX)="gEy+J'D@"1jSpA$lށeo+P"$ w^Ȕ!RԬOW3utzQ@r]CGIaC\K9`ҖaK2hnoZ汥A/~*hBSP vە$1=T@ Cpou"j(lD@" h# ')y3H$+fl7EkKMVJ%la@a4FQg~Ōc<{O=u~̏ zIٞ'lwIz&yO|Qs<0uAEh(si'\h ȧR5DchA-grڪ]$JFJRK! Ky: IbWEx@*QV~llD@"&hz^'=\WMϚNF-33yQ %4AQXFbIwm'6|HE ׁI~vɰ\ UVevEQ,1 `PdFXMeS<5LmT*SIі燲I)U0R*RyQ8* 4@E&4Ve,uHDEP DN-?"W.1g׫@N_" xg -[q\[X^ iX[;.%R˥FFBb(,@ yXOrNECWP sQNۑGpQI w#JËuo \ad,*POѣ(V(-^w/˴ջ!'J#CvwI$k34ͣ+&H$7גLP]O%He!\.NlH0':0բT'x])[ \_B{ kLϲ" Mı-x HQSyBץv0-eߔ5KlP8 Yd!k+&n$f苉mQFoTu cQ&a.IԉbQ|@{RELk2;HP7U GF3xuߙz5$k|yD=2"ݰ\׫fZD9hJpy˯ޮ巎D`# |+)L9;Rʨ-ac8ε3rs3ngani}CWԝ/Z\zywuݝO4;oΎRvt+RU5,ò/CwF "l_<LgpYu"7R:CxT rI `JAX Y4a=NAKhU3NNS  $kvZ^]D, IJ 4ayAő.{F" X}`⡤07GrDypRu'Q9Ϭzap]74 s}}av] IR.+ju8|H-$i\[v# ܌m!Vz}AOmG?FK͟}]7<NS<{oˏ|ӷ9;=GRVx9d{_OjZ"唢ki~vY}t߿Wk-vL{WsOlfia䇯!E8t~;l~_TrXoq|d-zTomYms^;c/-uXR-$te\EnxrwSf^PepX>tkot{n[htEE+vNS?4{F.~t׍yp$` Da[A/؛i yabm}gw} ivfw,x&C+ův0ܝ?}MN yFU]ZjêFXS$0ݙ<ܺ]C ZI -;*"O=MG{a D@" X l",$H "P =5HT1b>7fM%-b֑9grҡ+?d-64iI:p<ݻARTe8U5#4?~w<1ksϽku>Ͷ7;Q<;{ޕGg{waϫ% 5U䢩<ʿ7枧ptt#8=cO|Q4Uei떐+Q4$S_o}s_~<#{zku .xŷtCwO~lmlg<}]tut,Qۃ2au3{;g^?U6κW]u3fũjg>x_oW^~K(v&aB31V2$Z}2 ?di:LY?]W{x(,Oou~G?Ľ>?:s~=t-_qol  Zy`U$[&Y'kk+/-X=VҸz$"M07yrQU_>$BqDcI_?KPYvq5󢾤ģ;^h#,c;4  9x $L XP\v-xI%uhƮP6B[RKfˠgjw[y%b>G_ǿ/Y6녫ױ@U׵a0F@D\Hzo}?Ӽ:uo'_ZsN>0 *45P[؃Mhdd7.AUZ^4@OQKGӱ^,-vо:g!Rdq_G."O1r0-.#uIס]=@'[FxeǍʖH$"|S lMLR^܄ Wm3d.+" .n[nw|璠~gS}ufM;o{啡}}ӭ6T4U؏pCQxj5I9EA5Flh-#ì/w=?Xv8ٯyo5}e*yߒާm+=C/5a "5~'\mpOWw$ȕ3M-NU eY.32Qr-fwgA.D~#,JfY'YUu]h]sZ>H+JᥱFAXY-9#:3Ow/}/=h;a;n#ȵaN5-.*YD"Z {̣e~#*ϼu^m ϼsFX6[6<}Q2#--B+ꈠNm:ݝJ"L}ER y>>Gu7^𞚀o|욛:uc'pOg{G7UBj>,6}(jWr3E.juȇD`]B?|E6Wl.E˙N5ݝՍZff !Vў5([{JS{W4#-{f jx $"B !׍ hH6"JU]ޥӶPC%Mlp`l|=w>zib 4 ~.B_\w+/=䓾͒.e-_V*q%W?nEO=>ӾΒ{1w3[?xƹ'}fXC]ߟ?!?7oþo|tOyj(1vw=5֏ AFQ?g߿ 8It xifjSo i1=SA"jd[C;rFSQPA<)Ol f=:~Ө Bkal,늇LEjV"Q7.|Vl?T 95:bYp׺ p 5Wg1]}J1^֒TYdjD6y9yiJa*<2ۈY Z=H{ՋM/[!P=]/0{)2ܦQ3Q|#W7 k1^u\s C3-!_ )vaѴ2c ǦEW3EQD+3;9>l /B\lEfc5f'=j'{5NoS-Rp1XnW7 ]fT|ulΔq/,2:355;u.T`\ P#$8 *îcta FC6H4k@ l/5Kq^_FX1jEs; +_2[ eIՅ3b @>x0B>[|<$(Mdwpä]Utq ~F;)CB]Rs7\^yq Fsא[1{}]7d_f0uzv}wrWvJFU P  DT_g7{@]^Fh07y'WS t@@dOB/"RivPfPSM&9oKL)~nӀKٵN0j]CyeV^"/IU(a'9\Aª 3U̺nYBfͶ(MX}1C4X_f lز5 E R/@56*M@ !#/gpZ!zwm \cnZ,4AT5 %^ϴzWUkx_ha5 juVkFYt/ja d"f eF0¨gl@-Z.%cl@?ҍl/a`wԲXo{a/-ph͊Yꐞ/3XW0mmgAb˜\*@=Y2[ }vGm3-];BO1 ռʌeJ5 ⅶz=WDlQa gZz U\#eCq:"az]D`!Zx!"k5dT|޳50D`ED" m^WW !PXW"(\?!6 zEKH8đͭH_Rrəf$##B*5t W:X EYڋua4j9`&|-Q1/DZY u%p(c w4;F^O(Lˇlp@kL_)uԥ'yJv~@rR 5kЖ*l0WAb֗j+ݟeaZèҒcLauǰUae1 956.EliXz@AMA#uހk9c’Qjn,F/`R/|-X]P;\iZʦj^K @azT]FV-W\_f頂g*CWT\:$umi-yEUr6蚈ˮERL *nw[Ӑjq-^h 4tQ]/{tM~?QV+i\G1^hF|ey(=0 >o}lY*xSd%k0(P)O..ʱ :3 uVXZ$7`J_jEo AJ!4%P. '?4Ir!r6& Tu;h=zMxXs1FIDh!RdR\UaY άaiJn*ޓ s,x8cxP-TIU,%:!HQ*$g. SDp!iĪ!/] J +>@cPbҰ!#*%baJ RsA6T;p|H:TX% (vJ؈$R *!%r}jDH(48ы^av>X 8MbKJvTEOeē&rkR$sP5Q(S]]WN)M-OA,Mʧ,FbY(b d,MqXk!Z pFP xi0M aejjA?]CHҸ A\0FM PQ}сgE|H$5O+G#]-Σ8/x BӐ2 vGᬏE'GI$W zRr#y7"̹Yuw@1uЧ6 btpNŦP}q\@QjX2K4qT"u5DQ)-8h%VbYaD⫐P͉^,)Bi \`Foă"TRUkV:T'rd"B54T/I@f4hPQ4Ѿ3-QY!M^G MM'Tr"SQV$EGF*NJAleN40(1ҦA#548Ӹӌk\"7Eq4pt˳JH#$ 6m 0fj- ukI |56r=c:H7f@,6 $W3|ۍ!ШUeRFPǂJG7^`824  ƈXg6VY b9K)"m Rso['8 ހ7 հn~ QiZצ u ]w^| VM mJ:YSз׵>nO[XєX-HH1 yDVÙo^o\KxpҢkN$J*I'ϲXkwnU²8En@Rs 9uo]k=EL]G 3t(G8@8X˜P)#dcuE $"y-x+uxMs4Pb3D'&BDEp/Ӑupd* ($:sp':rmg ,_F ƩQ@mLTJ஼n&kB>dHuIȀ._F1 (sf }A(jN/t$  @ Y`5Ku'@X.Lό;Ӂ_^K;𩁊#1a^\tU0rx5q0]Z p]XR$. CO48LeR7P d^ӢFJKoFRfPQ, fj1e~C"n! I5޲k0c}#)AiV~##^>$AHf.*rV}aB؍]϶G!nQZQ1ocϭgb8< (~׏]7ew˴=yd^twTB|2H$j3獂52 oyUBB+ Rx78Ioo nskH3CW'W M[ϊO3s Ϧo.J]@#"퓈//͓eqd͞6 lGAb˺Ǝ#f.Ɨj_1'[6ǷU}W"G@wvMB|1H,ȐubrH )$:pC" F(,u /Y͊!^7\[|?u/Ƨ f[_6M,.8l1뾇ngk/,&x&"")xH$ҢIy)D@" x $iD` (钫S\ U4²Oc+ue W^R" XdרꏾVϰ&aG! "z\d"z_d "#QwmXȞTc[#"/-Xq,|e'ֈni(/[ؙRbk/y߇>quD@"D5xY*,IҀFŴTo\OUc߄ /ByNcp.~33 zD NbWԨ'5BrP*8P&g*2[ޘD` Ih َBLa^TJ{E9~QwD`T#eM=S^@ZC S>nᳵKxG{{q'Ν;?Bz9W{ j_\k|%C-D"-8E(*7ʇD@" $i-#!۱V"0B%R4H4c ˾\8H37Dv -IUswN ﳧs;C_~dh?vGm7?|Oo)v}9war-rjV5b)U*SIlD@"#2pk=,jCwl:}twW7j)o) uT*ǔSÅsHL7)nXP8h]vpAi,HJիy])_rW^%f+})"gwGxT*ͬ`emե^zE> ȲlI(<汔FgpJ T˙Ǩṵ$,PXřnY+L+, Tw/VFEYghhhf~M`Q cao‹:&O#H$.rFwK@M[)rb,D@"GgVaZ◉c%~a=ޠNÎ:h_0:YmW sͮMS<`nJ1D[ "Z(ވkBL51!H$JddрlD` d+WHQ myX,GC1bs-G4(n w{]q#3VDi&幚k%j٪Y҆Cc"2,LcnfD@" V8 /$X?|Z["/&HVD-:͑#"?(ڶҀ046zzē7m7 =xfqGg_qWiyVF1;V<}s.oVuu ]F\w"9@Lb ڌܦBxE |H$Ռ1F>iUbh7]wf!oqp#q2H?|nރ69-8h 5Sm7=N5<`b\YQA~dFWT̐Tcc Mē,E)4&II*8gK!bu5To33eY W[Gq3ku h2j*("Hf'9n9Qzh%l,١#o8[f A#0s`h" ]-X`()S4ƤjWj)6'$|aU,ORtHǨ¼$:*  WNy+@ Z$*B"UoQn`gVi PhLh5hb`y{ fId( s0D!Lhbt#*DbqiW tf' *0:T2[)BX6.ґ TZ "+@/t>[C7;9hcBhhLq Jt4$mZ(򌏠o3 B~fF QYh<9q08MLSřqG&2x&ݪrcgQy9IGF=,͈ELx͈EY5V7'Z{`=HF?o= A=7^s3n(.^?YW/^??M})'&-3KNJQ6Gfޏfj3Z`+<񲤣$u:±jL5&(<0FQ@,C%fT>G-iiZ4K`gz Yi%Ei)@5W)]K"VQ.}3[3"S0lcD*hף:\j6)Ħ2xL,Cs3D2Nj%Y2δ hg:ȯhOGsAR\ͰU&Fm!Eu,n! n'\Pڭn wbV n2⨁{;* ^6_`D&ke`_kiV*y\Q,kqq0D+b28RZ1}lw .oZ*z}B)4;͒FXТ,t'۠e3dji1Z^Y6gq].t @F)Hz_YW4A8F8d&a C?wQb ÖxPU BV)JZc818d6sB8] {y:1$h߈{G7r R;$i\F[u !r82fd+V2I7"yYip/I?,rr,-wuDj:ǏLS;t~RnZ3k,'=KRv0'S6;vRٛƐk̵<#iVg!pI5"GɻQX9_iI;lzAY3nynu3Kw8MVSEge˵MnF? YF.t쀥0hxq*n9 y{J$K RL x f!y@cZ^Uuh%Ep\ul=kt\O&8Œ.&5,p<E-vgaJ q\o%mЂ~S> Ο1cLwlXXک[ǵEu4%x2t2wJf{ 2F+NzV6AAt´체ȏ>vbHUm۰%6+@.Íg'ч\6c3tC25;tcp&v7p9G40W/SuPGێ N 7Z[:jAy5f﫩 i:`H~`d̳>t [/5{^ 5'fSa& c8vr`1[qzQqE9e!MYE OHS#j 44,̊WZt~e[쵇iPFUfEΟ?on$IT\ܿp8G@{v&(U-0; \DSy[]c<^}Y|O<*;'vYi+*ĴI)᳞1fj6Y7,[Fpp1*/3 4(tYqOEE fx wi 5&hY4] &7nVL3#]%m[&:Xlj]= Z<%m6MƱRZ AG=j6%˺ VGLƳ( K7x;f%_?xC=| #]X/ $TxÎ?/ecn@y4%Dgƥ")͍LKEbĤ>a4UaAd]>Ť}oeۘ˂uqW'8R?Sb v$/M}#E[vl t=yeL7-q2s[QB#h1U/iO9yNmS_x{چs޳;Lx߷/z#ͯ]QTE3\Cw0;f\w͔cwz:csfΛ͋}v;o{<>sMc3dwz]6{_G)/i_)o}.~ߺ?_kdCFVKkeo~u|~yOu=Mwjn[FG,LIs#L]’c!FX-[gS ]On[=Y}6zv-Y*l\);mt컝]6`ש}9hsxz]? gNZ=s`IGo+aZE7ôcw=6:NKƩE'K;.[Ox#w8m7}c_.܍A81zb*yۯ:TIMW?glyo{v=Jf]׾v T(/ٻl}9gTi׃,{q.d,/sؔfw84 apd%D@" GH(\ۍqoHԬn>vIDAT_7jcWz5~wv 73xG߳,w}96g=Ƿj~9Aۻs.o=~1UKq=ݙkM"p<'>Ǟv#vEW3fģ7ktGYp(u?vy7~ӣ=v_6L!P6d&$a1'?fuMpy3n7ߏU]/}Opc w?޾2Cň2Ƕ dx>c=4LŰ[nc<:;恙>U}Gg9c֬Yξ,~}O>hx]\=q=W^yK-N٩Q/S47WH1꾕͕wLy*o%J73POm_y xc9p?~87pG>'ouaydžZGx^-S?s=X+FZd MzVO|ߡUz*S U)a؟}\#bc7t+n+QP:18:CGp/ ٫~K8 Cwμ~s=ʫ;vMM;ɨ &yiZƦj(Lq o__ -U"߲e*]p ~0n,6@ \y&NW~`TgmQtDKA\`\&`Sy?:eʆ**{xվPݡ裏~4#յ`Y,l$BŲ:T4; E1?OT@G?ć;U~^z,g eP"1Ua*\OQVE-HRӸiX쨂jeRX-Cjh/{e6Xg^R{fxٿ=)S7xRS t>-Tx2?,(cfYv7y/$yu-Z=usnDTg%bC l0*dwQ)A-"ҏ%j 7!m. O<#_w}AFiOُ<]q~t7L<O9g~zxiӶ7Z3t"{Vac3lc!Z@+OJqu^A%DG#N(ҹ)YI^ݨef-?4}!^@!sjT BFbIwm'ՄYճ$EP@X]-tݼnAM<a>ϼ )BD\z]t`zGMHVŸ "fbNJAMUTBIlJΡf6jwa RH0QRwm6J51xb#I"+]Z8FRyuVu~[TX/es!g.] uS>fn2yKF'~O},͈~az{wͽvB]4iEpKW]o̅z S ew=;/\]vկ?_gv/ʯ/?mn?ew .n| |b\RiwO;Sf#_<8r,$)B>ǀ j-D613}^KlԶ=j^?1sN"+; R# nJ",g?[{>oIGD xʒW/\[]OnOq|ꢏז&sܝ4 *+8@C( բwAwx]`Ţ߆#;~x1MgF~.g" ltic"߾{KwM_Z|G_=jg8O9䓋Dp:,.g|油 H:m/}U3ԟĆF T=  ҹPҵr7f 3g~c.XʋB}v÷u3a#?Š2#oN5Y ;.8Gy3/_9\]hD@8*MkJNsiw$k "@ڥ8DO5p<8Gs:YT,ˋ(nɪcuUOCG b#4謮/t'YĚ +XF0*g3uiP6xJZJ܂AԘX .e}("nQNg%: qVMP+"[ϻ?WbE͖uIݱ=_- C;5 D0c%Ij$yD`FVxk(j@r<(4WtFbaM-[8e)d!Ȉ)zjB0%G uNZL5QSQ+q(v6DYRjty|I4/u534L -C^wF9a: yzUǤ6.8*n(HI# [zJIXq-O}O1FxjbuplkBxQDRl*1@Hx!uY'T)+/di+B8K!ZFH; ASQ>ZiLCtYh9ik u0X6)ɳ|f r=s@_e!lPR ͉H|}[KUXfn'K}o+Pq-o8q;0{qCalW T>SN| `ui_[YmO3,B8l,Fɠ^RPVD*a=g!\B1 m(ݦ"ݨX{5VX`%h}T>QLYc%@#>AEBU›w]@o ΆVwUD9X p~H0W)f4kR TK(Ӱ-LY`73j I%Hs^ӬWx94(ڐr$EǗxfDuvtbna UEG4/4H=QtCieqy~r#))~\ӆX)(, a!a  | g#pmP-o0! 5Q,HE%&~ fj5A@i-&R/eD+҃ aZT3NMMY Ro}D-F:\E6Dp#̳:M #N4(" 7MD:=z} v:(O4P̡T]Ltk(GZ]'J9"X5pU \Yg0P\h~e$18"\)4 d[pÂ.)`̆ $!@0뉈V_1P(PCKCԮD \nm ^%O2T@N-?q% BE kqAW#eꪋF v :Y2KnR'r>YfCAUE/n嘁I%[0所Y6EhQ@0,H m-)B= P4@>ȿm1J>JҲ:|85p 0G7hmc=G1U"A#],A\ pQ8E+nN#E3D7ʛA" XP7D E's,cw!`5bB]Gb7بbzFӰ˦w*2z 41ģ*9, ϤV.'׏5݃4T dJj9k5ҁBY> g<8GtЈwK,48 >Zc{62 ޵Mhlv!&ªRF@H,;"vҵ R j|QxZ qLG%Jq$JôRn1Y+> _Ehmj\)I·*s 6Hq8QwVGaj0. Qo5:[*9E<c;"SKxgKm zɵp}dT ;$IRDjùp84@"pR JTy`ZZP Y𐪗(2TabH,-XYgbY_Wg 8XldF!?jJ#TΚYBS0,+:zVD7Ve#EJ }5E9&SIC"\GL<(!p^ʼn%bp\N@ApLӌ1 x2sA4JQ⠪ i?VH %uM t$>jD+\sHT䳩"x<@%<` 0$>8xE )YN`7a lRCAdn3xR_@q=ȰBñeR^5 A*A )U 04g<@B5HKA\b~B)}8KHzPZC-ơlNW م^6t #`]D ֑ .A*4Iُ`~Ѥ`XJE(ŗD$*84 @ρ Ӡ&٨J1"CnjPrfXz).SdeHl)%+|ȔD-ܚ!_ɏ=~k!m"Ʌ%C" N;Ñ>F\"Ql~mofCůaZB!nlۡh^2)4=wulnnr`vP](F^zE8,Eң̷-VAB="CFr@ҞʟoADU0[H3TUOhbdEq,~6RWnm3ЉD#WXF ȾSQIxk @zGq@#3]X02x<-=hoW tV͖y"M@@t9$1(gs DZ}^,Ң#Sf<2\WMdZ-<[wdp&ZMՏ:7^Q)ZHvX"#IlNJ#6s) `k_PM{zu757??p垗1wvi;WGCj?[mik W *%(B>5TPIP1#D@"0Jq lD@" H$'y ڌ~PqMWOLPyiCAh]}l G%.L\]4?ݳGwmY ;vGZT:h 9clnHw}fIt%$K$D#V=QJj4"% yS\oauwoePytނ}9<8#کaYo~wN~QqHkTd2A;Y#һ.ܣmT^ϸZ(>K$UF@ȫ n O>.ɪ,?G~hRɟUniǜ7\[]Zկ}ϸN#cF*As^{;Q\I ?[yBD@" x{HGK# GH<ٚ\BD" PV(MYK;uuq[pvǿF8e7nz>dH3pq~C89r~Ҩ8^nD҂JtS$:± yD@" 7uK#mbs.X ԜIϚNF-33n \TšeK~P(JenPctRoNZBT9Z6y]UC{dcrT~;P\ }p.ҋ.Ωj/>6k ʲ#l9P9ZQH5)~0P.G-5]=γEJ%MH 0 CBIB (pGQ]ܿv[TgEC-Pt.bwTm9tMB" H=O~Z"J|ߓI$J,$uE ?`}uXi7'Z5 <fYQn&Jő؀^b~f'Sn*i:SMͳ(P4sKAʶ؊ Uj(3Qv]" eH8D6gC@xԯ(ؽ +X|&Q>A"9qcxcŅZ1E'ԋEkhj7,wCXAl+A,V<0$ˑ, ?yت|H$hAfjZVEA 4D) J6R#?A'ov-vHk4%YM OW$:m1!qȋdp-Z:5(ڤ%%s x_sSM /7D j\EwVV`8aMٌG Up^2{\xiBӼDk۷O `Wşx7u$'No>"L,5̶T&_oQ閅JWIT`ۥElLkڼ[PҞfIV|"kB>QUE\4TU[HRJhx"PW9q-GFCcC5\q"o;M?|x\8B%/츣6:䠍:p× β6r3竏g\DfYbKp%?|<-УT)i8`//DEyS-&pG-ii,W$c17V@+zRdy·f 0ęOW`7AaQץl0 9()#d`vs Qsb(2Ea`ZrH6"Q8'J́ s^ *.Ks; HpBtRl\nt*M"e%p6%q#x΀Wp/|uFPy\r8 . ڐk*{c-IIý# gDS0`8O$g3Pr08N .2Wy1UxEYkp]LP¿V,f91$.UGwTfc,m)?vN  &A, E@ATZ>WMއqUƻk5k杙yUT3b1JFFY r'?6Cq=u")IAIN̓,>œ&Eyu&bLRN -N2jsTč8m9x/廈 G$ rح6!&l#Y0AɎ8f\[L(T$TU|NyqĊ3CL~SZp+ppc,qO-KSUuO9ԉrR8;q|K61912\rI'51>p,LgLr]62&L?[d|,ߚ&`:ԉ=ScG]C֪ڀڍ:uNo kF(M^s7_+vz~侻L(Q,zM;m~ٟգm`cZ>,ME/K &alc :_qmufvkѬݭf9X{A `5YUmr8! le٬ӋR5XuGwfݪ',Et"<(i `EI:U,Sc-+F  82hTz1Y L~U^6k0D=qٲ$/ xَ+f-ΩZٞ{U#IO͔)q,yL@0i pX R T̎fP+VɂP9$0udUK37>%) jb)_U&Il%_U=X|$6h}zu+,ezL%b~PV4(SZګf]QJ=ld):D RV,M޲1kCJkQ*|$Kd3hs"N9~ۺW"t9 [)V$(8P5llfsSv]@!t5-Y%$m%Z%IJS򲦣CWkKYu^ 1q-Nt9j7ѭ`Ujǘeלٶ9ӒVC`ꇞiR\ tB咦em ͤKda8 =?(~nЦ MRԕ͕>lbبZf6j9aSGzƅ'B/>V6HUQ|ܳIPf04#>IDjҼ3[d%`#~_(Ԃ5$#5c[j͜{/ƆP+gqid _FZydh RN UTy&@H^ ݝv"𦊀dPol'y"S,EaT 2J\ l e8MݠN|3~)G(rlv^FSmw`SBp8D_+q$^dz⦉´hvGn7ĝ6:l]J\sfI|RpxL$h +&%lӂjk%DŽPUC;nxs 3Ӥ 3cvٓ*nJT?ʏ~akJYҒԲJVR+j]VS/{dMaw/L/bJw,P&ێ21ibX*ԟezHU-Uc؄NvT[uE5A%[>70Dy;;nNMuz)^+J8Q }iT1N6C $,{.2L8,62TzԤ''qYϠwZް9+hNYjPQՔ`f٘cݐmSvr> ;v UB9VS†=Pzwq }jZ1ST6{Tun/B貺@0J8gZ!4;ը;Us.cٚl*S`zM6V&! ƽ]=~={ul}vd5]]ZQ^;[Rгiq 6SP]wg>/A)UB7Ggqo'smc%SRoBNFNQf:+*P(\~y9'nֱK,^f;~{|ؼ͎,~Cg ->t|_U.'ٙ{޺j}3_wNk/ݷ|}}%ŮA+փ蹧|K.r5YHOKKh0\~z|Ƽ-q< 1uMOm6w-7ܣYFm"2?k2+=7;'߼w'o=_h0^qyۮ(΢O}[6>uuq(YOp> Qoq}7/jۯ}ox\~Vn[=+L&.хܼuR%aC[{kup$Pv'wm7>jMvl6Q!Fw3AK1^}.z#vX>ftbd=ݟs|?[}ݳz'q]Fqcn{mU{Ndmp@dj7K{ll9yT)Ό܊+aXS*#ϩ{mtsmw=tj2,q6q{7{E69Z1yb.:G m7|[s$]u^E mN{uxqnKۯy3N WvQkY e :)kNM()ҪJ -p`ۅg44ԝYbpj us;.e?#ʫH풡_Q29.y-v72-EySQPp_KOgzpG|#c~3aeZ~ARiam\V57f0酗yՇkE1|֙O}咟lq軁62:8w03=bqr s#mƌjuo?wձyUi5mzguݽ=xG}>we?5J#R~˳c4ސq|ûڊ8R/o=NS?rfmqWoiZϿجjɅ_ǎx>YlЏF(S5 h\7f9y1A gZ,|5}[wo.)ϻMfu>>WT7`eֈզ5C,8vޏg(?l:wM7xفuذT+=q!LL_'?yÿQ*ր,c ̲bOE*j X_C?4u Lvһd 0*w>C^;mvO.??w7`f'\3)ީ!^:4[=Ժ"З5.Ha*_R?uGVШ~wM%ԋrԱ'ϘWf~7mFpf7pX`Leq(Ch<ȏ_s~cB>sH9낏M_c?ϝ÷NϻiAK{')#ʏ/_:p4|qR7M%i%4}ٜ];>q=iHM}7x|i:ܡ01:jلemKua`Xo}jK&_U>ƇZҍWڕhYύ76'ւ=Z6goqURTiš 6$cppr$(ex`:. ZyI>Ly*H2%[V2`R/LkJPF)FXꌤMM,lËwby[hd VFo~vt_~K-LAz{rrg`A\ZvmU]K ,{GN{)Łs_yG_,T ًnrWoQ-hQ[s!]hZdڽÍҢ /#1&'S-f+?rJVTkt7w@eIqXXK{F\sW h<︭;nK,-wFTwnORЩlPh+}[cn ? [<@jdyI%_xxHG W;߉2ucbDsGLًN:#!?y%cp!y}¼gM_xAuv;Foa}[J|m׺0{|hzOn`tƱ9ు$kͥtWaab]&M{oԛ#nbasaoJx?Ox|ҔɩН˯>^2pe004Xǟ}Wben~L^Aśu__NCj޴V2M h)-l ]$P?LCL:QofXǪ:,F-eZ9hz97 Mm61b&ӔdRG)k<*Mעůz?5?})|&MGl.|Da-f`Si7rcO<9 -<{̗^|駞}_|IL7IK =Ðu8U<-kʔ1֖iJ"aHrŝjڕ$U2ē\}_yU{nT-/=wO_q><~kgMuz.㶚%5+լZGvl6+tՉMɨq t9Mؘ>whxi5 F=;: KU}4>Gꎻ{f͝(-L?x +@<%q\" U,p l)qic3 3{o<=:kZI-"M˼I5xޒ=/SF1T&J&FYQ۩@]JAm)Y 2#3G bPH;m3YXj=%^mV .:(E_}v,DŽE)#._\!gy=&SA #I=г,h# =DrV=E?~=1ufH(Zhg~bC[ڑ0V6XC5=)כbڕ I usZFC3eCJ90bs؂*^yK4L:ԿdtU婲6PbJ0 oq=WS kl:sLLK?S11$ҽJW9FLD4Ɓg{|\2ґ )zQ P@ qm&-q@fϰJcq'l'P{ۯzYUiCKu\ %rž_hj/azrTVOw?\s{O> &k]v]xhǏ=ȷ-}N:/(ϝt57~o?ԟ\p_NzO9O}4OilD :/,ڪ?[Q7ecˑbVxT^_Uۏx,QR_Fߜlz%_vM'E%UZոoy~ZHF{ߞ=jEJM?=wݕjg_VJȡ7c| Eo /zV,mg;޹ǩ;Bma6MX VuGv«G&o?W]qu77~+;'oGnΗ;>3;g{g[h|jhbBH*6[Qk;gSAkΞ=u?߹~'Xlfgﳚ9\1- Ѳe eCwqH.Z6N:} %u>'oOvZ]/?>r졟ʲ%e OcmTmji6 \O,)2RIL5GG ǘRo)v7dh>O9udM=6+ *m7I_r)W\dj@ kp P+aXSIe&l4ZbQ-)R# M.w}/4Rߥa63lZ?l9VFܜ؆ نf<) N껮CIeJOB$C6phn,Q)ѝ2tPY ī zmTɷ8Q 67AN돺jgMWcx 6 +6:^MespŢ%*S:j7DMźiHLWn6GKdTSa4ڑ&Up-W 䆈1rmk76,=6MbQwÕ" )6BfoffítMɣ*^|WLʦXƨGY;"AB_2j޼gśs6"2D"=8–"=X5&/x.nP(Q$I)UJ!BXJr+m~9'jqfj-7]&;F`0FUJnS4g:?S\! $\D۽pyۯ7\VMVvءVo=Ηu"ЉL&w=%[S bVXجP/jQ,]+ШdRDƹ{j7L#k\X&73ʈn!%чtB2Hmj`a`Akey^5*4n ў D*Qe t8PZpP8b"ݴԞ1<#X,1wj0AXˤMC/qa[ڣtPcFZ5j=gME>Ll I_bf-񯔴J). x԰&%jD<ҔМ-n 8Qxh 阆M3q6Ep ҚTrZiFkV dy6 G R12D uTaZkӲR(AкGmal:Ȫa%Q5z+1[XaVj~@#r# F68F5|uq_1CEӠ@4RP$]. ̒ SeЌd)i%(b\9,s[40mx҂  |(jgt*6v)dұGIpZYw!R dfFSi ͚DQj+(7ctٓ (7)/W&G3 O܋T)4}ƼFҔibu~B3*t2*V 3k^1H:tk;%^#K*A~9ZQ0]Hm5J}_} gB# iIy!?yZ7 v0ؤͤeJhB趏bB@;lC)3@tU eS( 0!j/mb j⋑H'ƉqHʖ ѐ\"M8-aRJ28Bd  ҽ#q8|hzZR+SD~ٴ!%) ZR "-a )-)gD'^D$s@.Z*lB+2*l Rj&P/"%R.!cA5FTjLzl8H5vޗ*Hdj*Iw4Q0N]svx4]ǴqѪ@f(p6iqTP9 "Xt .-Öf'~@eJcoCC0T SP8JڎO9B3M[i~*@?؋5}4G`T[UN6sq%ːR6: TI\t-W\%Xr*<1'X7tb9V-}R'7LΚy_Hlez(jL :8$}f2XMnQ#++WSqyщJۚFoecr4JnKM3N=X\eQE#(ەrg~ COʩG'C (Ә?=qGU޲Aµ!@e 1'1_LcQ+Qw/ib:Q\)Ά|_s# #ۢ90PyeJaR @@Z'>\Ԍw'-XRb YC;c2E'h\z* V4xBq%<&+8(VԠ"0kBD5&ǥvf" n2<͡A[J H-⥣&(4̥W#&TI9+'2ah |; Y4G"@'C  (+ԏBPRAV+SPҧ9EE}, ~ceQj&g`qD(XС^J-Qs6eOLiJhW"TVq膙'ܲk1rf5f!90cdtҶ #VT4>t TaXk)U/+ClPK yMmqe.B>XZ$Nsy@E".9 \ LTfD'M5x Snl.n8`~&AZv[aBk K>jg@; RƤ%*nҀ#xqZ`č9L;4<'"ֻ-t{Gӎ¦kThBW`#%yKz 5U֔* ֒j@ܨv5t[5 S$IAtĢF_!%<}7q6馩K^Wͮ6v5ae!ae ѰcśO{j֎u̵6j۝j:r20' h /7]UT纅V,Zܒ728%hdgͩh;#y['QIQxd?!Gg]wXFdͪ Uz%֮l-|gXrZ  aVu/ZW93#e,0HFaEe!o#d78O\0 Q@)vXfMHI\d88Б Bu)8.@Y+`N A L<vl3(+5Z-Q[r- w΋U|$C֘IGR_)"- oURFp>oc܂/b̊='>|w]I'yq޽CH1rF3Dr 09}Ίb@&JX8FɡM n@>TyjF "'$T84m3xKV@2턜62b *'E?pI,t`׸Z뼘o_q'fe)wHct{6%ג|r7>@ E«`$RĆwG6"M8>iM\`샔6r$8rE)؊%Xi!5|R; yN;N#Pȿa'L-fd7C-hb^}{lujm{.FіE]';o[[їnTa~dMExuyXfⲯťğdUT2VąVGjoj,QUicӶ@_u*t%3zEuza0_!vhQp4RXG,uN 54@ }@_Rdt-٦W_v*X,9@tDE%\M* !T 7%ds0<92jjM= x0--ۄTyyTe%_²7?bM^mA a|i#Aj:_!t)\K(7ør,/'& B /D.adrRi3V'Ӥ+XjjaIiIK FZ5=,} )t󃚋Y)`0x-N T S_QCY=z I*q% 1ExsaRϘfr.śerOـ?V~pYƯb8SŰṅIٓ1U*?x =2VB $Eڋ BC!j0Lʊ_sxܨfXBPM)ŏEǵzFOIU;jˢr@!wgFb9hC L]n.YsiɐH?0I` IRws]ɜ[.?︀s*\T J%"F2 ץenl-uT10f_M1V٥ei Ft bTPɕ9%o4)ishrqU-un=J6[ kGEPpZG3!l,F6>.S5e2#‘m4Zi牀w5p5ξ_smEÜ'$HrJnPmVqK(i{iu2ijϞ{y{H._qʽb1{+yt"Љ@'t"Љ@PwN)ѧi쵇]-כ3f(?q Ǽ]vŁ˓LYg-h}:MbNӳZ[Y })C:ץx\&?rޏf=vŋ5#Jî8*bZ]΢i0UQznd/n$5v~ n]%ݎ6%?E8*vzaViUjh_%C}S8+0nTU\;x6[U2gjXaWG:]zpWm+U=QiePPk]u֜^ Eqbg^\]$A`HI{W㈃uΗ/j᫜bzF't7hˮv@rsXڕ|Z'؝t"Љ@'t"0#l OBe@UiSYlxZ[m`4D,xuvp1W ѶgP ^pӴaQFc8LLy'~`I}eCt]*,'fӂzktiJڝ nzõDڦqWV=@m$VjaWa;i,i놭Q.in#Lܸl{%!T#HoN )|nܯk%sGz 3:Dhlִxdx%SVɊ}ZgPn^P6\;mZO!]M 7W_x?8W/s>)5~YZIKm`՛N3;cV\uԯQ No S2__͍+_lҎ&Z@"s/5a9>ם՗g{wKHoWte]-oh&`mRXӈ6k1nH^gp0PCdW.WC+CP)cۊ f]8G_ 9CM(o4?Oo۷r $X%1[T|ˮ{V*_/]6R9Y?/Y;zZjFt"Љ@'(oVmɸrg&U*ZQW'y;t30]:`fNuߓ7 &h$mZy;Naqw ’[3Gs^좟D+Q}>t^nh vó踯|al8c;F6+[{Rl6 tշfm}liv_^oy]kn+/ѩb_>/xh~;뛪F־֫8&EiW⮁?N9`iںOUiF'$8#j+FNСrxt[oƻodȬ~3|=ulk5;/~ {#уiƷC=զϿC//|?u\ x>hΉG뮻_?WwQɱjݻo̴ >g=mlճ- b*c8k 4ۦ5ʹB|kF5co0uS;Mvnz^a}W>@6ZR{C}cNiFPvKЈFm#OU2}iKIE-vQ ҿy'mGv}K 7i;ufnVRcÌQ; z鴍4fLvgЎ:N{oyaZ6RG Vl@mSe,q?3 iaǭkzwuNI[;l7>i.h{M.938n`[2KVH̼sщ!xR ln*5xi6܇'iJS-BhNY6ApmGGGʼnD7_yu*`:oDZrAHګi悅M{g-~Os>{Q\ww|!URyIm[нAqڠz!$ |Kb o1m}ҳ/HGAOݖ:%Mk@ >h,1>|dKnTwv򷿿Nz ;~Tl5L߹]yf͚木5R2="=ZJnр%6fΞ{9?tųoM\p]Z?]7NCn{򱛟~?/zFbЂW WwO2WݛƌvSKݟً9l#^Cֈ2Q[VSiIU{#^^0ЈW,WPDI#z%E0U՞f#L쀦`/XiUtJE9:eeFpy;ZMZ;gMq\j_\kzE1?5ʳk˻oPɊP錪V_?.U* \S^Z<0 Se-VoU]c}Gy򦩳fdg-zȲSҰ{NȻ =-ezt\Fs?2ظTF^.U%:Rn\QoF dMV_w"_v[;ϛv7wKZ͝= Fgθ{'oYg^s۞͏\q37wǒVnwz[Ƨ~w7^mKAjрb ca#NQnַzog{h$n3N8}psÖ?jZiPh;;oyY3gϲ ZWI3UjnmN8vmۮ㬹6;n6[;0oVݶ骫~Cg\9LXqzV{y} nv?Sa i^vSgvk]r{|c;\"e?(he\UU93O?t~[2lY0h{M{آہ(ZBA+3 uR۩#revW?rO P_"Sǒ~},Lee_qō{_}.Rڙl-'[A^V{QZsqqf^5`%n.x5כ|97m@o2?s٣(exI1!OtWFl%Ղn$F0eRhB{ ױnQ>MO *0mY[lzSΏSoJD$uԈQU5{*pc ,*֬7Ӌq34(F̬xP~d8u.ݬ,I==N@S%?5W\Sn+t%S3B%p.Z"&Q:ɑٛ&fdYӠid; 3CCje\]i*hH$=KB˲ڥjԈ\ʻ=C5eAIlD0I}X6+a+xF*U ]Y2R,mbZP5-䶡!p5n(;#+]w o;a ExRtIWcO0;(fhMrȽȀT0g2mE[n+\gֲPY"bea{!P𙧞~>h͜6U|J3G'Ve;cDRצUM~刑5j=ZC" 8[^% #PPonHiSChy^eͣ%sa[:#OUZW]{^u=WnL]ivP[\nڨ68:S~Ɓ* @?o~v֍7_oL/zJ Z؊1~0 iYYOF2P&idQK!|#B9P5l?vS2fYZa#Toɧ<⏲)Q5hYuX& Xj33وSMfe 1_2Z1zTI@=~ZQi갪`1*,ߏR]* |GŦVTz#yqC 4xRٯGuWwG-Se<ҖR e28vrT`*̪Iy)포E1+ڪ*>Scf2ITl+J㺩'ŕjKkVVԳEъD_+ jր{nx8;O<|JJ'O17v"F G>|3_v淚h㻪[)fn)/q)1~>rE<2K-P&m"P#RgjHdoFoh?c;LTwv7s+MKsS2,`06S?Uۭ*PɰK<\!P\)Bm f/hd FCmn;L 2r%lUR!JB.dg?Ձ'jvn`eZ*WKbıGaD@_[ĪԮhºhiRIaXjiB%60dQF/4$n.,B^4S[ ~0V`vEv۩SԟuTP(jE;zkdroclheE˱&]`|iꡨRJV8[ϔPXtGw},:-l[KuY`QiTaRLB!XP5SʼncjFRdk"7B*[=Ʈ>gr0P1ֈbH,Eѣc`H?-l3NCG;BԬӎ伐^JL=(ɀR2#N:C6Z P]AM5tr@EԡǍ^+iKZg K%kn&yAewT&ʊjhLat|$)=z +/$G8ЩuԦM驖"(u:֩3Z't"Љ@'eUc!W-QYnB߷=pCh;X0J(,SMBP:KytHCôCPV)N0Ad(V-q4R,ˎ|ei=zWfi;f?N))b7LRA)Rh _'jÁܬjJMi[ ͥ(@;5ժƊILUU#6:( jn >:S̗3nAhU+9ڞj Q4 j^+Z=hTj^]j'pM'ty+UK]Z#:0V 5ՒI2U-[ORAAE8jS)I)cX,uK?R`1 ɛ젬!V9fw#@\s&9NH]RJ1 ) 2rjfdڨ, Se(5P b JM +u 6V|@Mt d5Q$xZ%OtŤ Q5\gtJbU6Qn~مO4,Hy=\俒.G:F@TGƳ=7G#q /Fٶr9$୪kԇu97WJۃ Cz5Q-j9/;fZB܍Wމ@;??n<;?zÎ;v*h;D7P$(E& +{8 ) & AV`*|@DX'~dke/ (EO&ݼ̘K`Fy^+We@Bāc8 *\{렪l#%Qi*hU|]s"PG"V<)Q;=Cgz;5r2-Bg*"*""Cea>?h:) c6284: In!Re!lՎ1Vo՜J;3 6X(7ҏexi*=#6צe xTebJ0eϻgMPm}6&S^o0^/:U ˱ʔ=c.dGb7$?V'S/_RTOnAkS廊(GZ|_ޯŒQv3Jl/>E+cǶ GIœ2w'xU\0v49ؕ."zcq>n<9#@R|HYb ꣭r*ZrjBT*#)h1Zb1i>͘>y jgȋXgh9~Eu(mzh.jhxs^O71J {"Q'g*h|Kdv+(br-a;=GnT`0nZ*;Q&JCo[4xh4uWspUWM(,h@2I{ hyt"Љ@'4RF_b[lhphxpbC5 Y.I?U$ItUg̀=-55L GFU"s'?+A@#(EUƹi^Nhuv7`4 "S4^vFc 4q^c;EN:E` *)M$k.!V ܉@'"2@e?e*c= u>Kr(:ך"hlCѣb9 V8nCl.B *R-0ZbXiqui7urْhpVZ AtzT0jPl8pHGcϺ:{f;CߊI|/Ej2egbv~;O@F+n* jV1ZYYv"Љ@'TЌfy)-mO]حҍ<ÙQPG[{,#m7աX RղrӭYM=[Uv[qӮ-.0xR*Fޚ9HM'xhEkȝmdR6`JU}Z<~QT^~1ic_x~rZؽv]4$i ,'E)/s=DN,b}* xX syj KE?8(_$eѧaQ>ų2?4gBw@ 4J=7Rϯz]m,v8,($U!#Ч>U܍^|RZ fq edV&k&hX:Չ@'.WG}C2SdwԿ?f/}Q]Ww}?(X+5wd^zC" F/L-ڻ6mf5 >7ci$ >Y~|A:pN0 ~&" /%i2,? RqϡbS$Z˧¬^6E{OF't"0$K/sD<ʂ~iDBOu؎eG"slY)8HO%$XkCs6Y ^:O@n\;%YXj,+e4@Vb)%@$jTz|8S-lhi1t"Љ=%I9{;Y]MCjhTT,FCyR?7L ϼ|e>/\#3TņS1iۉ?"g2Hid roHT*M U$Vd!5b V'G't"#Z׍.j /,#ZZ@Y+6=&$Z~MqjGnI5Ɂjž:l a݀2F5bCca P@?!KJs *3W4Pͼ_ )-OYQ:cs☪hϦ|k>" s'=D gEZޔ)s]s 2j*111X@Gye<3:Y>`)nEMcf땤FqÜj۝Ac5LAj2_޸o7+2>9J1v8Vohys'@֒e@QX#'靏ܑamMfIc76; 4,oJ64niepي V!ym 2+QtJX5rᓯmFī1͑,9Q1`O5U?( y,R'HʠN: ikvebr]HQbMS :.Pِ)eS:qRMDIfKNYcJ3leͷQЉoqLF&E29xΣ h\,.ń(ElOEuC Wnޒ< 񧱳dK4 CRKŶ!I5lhn&'w<c.Y79Cڕ +lسQ⚃.r=*/b";,bc8[Y8}\DcNrxqliHq|?5QTE)8~;HMnyYkԉ<0~}&'hwQV[ǩEbQ܉@'#$#Ǎ#BX40*̬V9uIݶ\7f,Hcͥg366bMD Zv-ChꌍKcie"Tf" g"~I (m'đ4SD,p-4cbcV͉J>h0)|R-<>{󿭲x\#wHbN|coYɳxCq d.0XWr]zXmA>ϳ9"h|W_ ׍32_?"~/s:czîqsڱ5"8Y_r*Bfbi1 ),o$"I'pSK#eqfmJVDQRv$ ? s>ƙcZ):(,Wf j!G7Ok6B 4 JEAѭzwιDx";*vBM,]a7q>U'h maTN$WKI|e\ d O CT$(gqI_@k)!%sSqh(4 27sC[g`AKhd/,ˡIVLru&%1L4J7SlWNw[gI:S+crt%5?Ɯ.kIM#ab@CG kr[$\x ^|2r"x ;ށXau唱zRS^k'(௡?*9ek8@Z:+}L0gx*$^Qg3Hyz~\E`zˣH6^e|[oˍbG't"?@}iG"FQ3&Tb#M|X|0dCӕ Fq2S5(^r+|Z/ 9:b,T %S& ~2OD q [;2<#eTOqY9{U@" dHJLfQ/+6+c9|;2b])f2⹫j/Y 96egwcKb>aZ"ƍ]Ү{QR9j}m/Ely-'-.s5h{%X&8OkPZۢg1#^l,$B3@]y"ƕq˅O1 hw~ֻqtKDk И`+8W#?k,򀅺IM\=ڸyT>&\CdenW0ʭ(#"^wߎvҍB26H36bcyv8-S&gb-NL vl,/|'Le9AOY9˚,l Se3]5Hn"g%WdBϔ0"Z2׸Az LzLa9[2|H suS5V#ᕤ4T^AE{wckjgϚ$m9sem̕m pVco';WP7%e2Y@ji+pSvVs-[Kuā[p(w+=qzFVL+.]|Hl 7qLX$d,T 1{.,F&J@㻼 8Ala=m`=OIN/쥠q٬h)NęTfaSN;tbtȊQ-_t`|X‰ ށ(EPeCm>F-*\Dj҆ݴ28WZ (/Uԟ H%9'S(8)`o0>*{CkjY|v'6Hb PKcc}â{o+S9a|E'Q{4sj/Gkb%#2yܨxzl1 E,b/,ٍ9oR9 t"2k<%x>La<[_`|//е$t*;Pەv>&LmZ\rj<$Ӛ;}~9Vlt'%ifb"}A$"+:ƐN #⠱<[KJjNzVI_*"5Xf)"3%YN+[cڶrU}{Ly#@NfcJ*%KK11Pc?hQd:m* Ohr)ؗ њO\@/Mo^d!Uc_+;Skɜԥ4)=Nbt?2TQ&`E'kYHU&5ٵNxàdV&ֲd E!(fafԲZnF[vtKhLkj# 7>gt[Г(=0 [`(IAC ^3fW g9W$s/haLij%IH%E]x }HH!%!cX6P$iz~D9 Nq1 $rXU$; Tf2y0h\:# J%2?DP(E Yu  ֱx|(@~^~8S@i|եC#K?b2c~Qc0Wc|Fka{_ǿ7Ru"Љ8Vg Et\40 rZ-wDBXfl9鵛ToAf0JeeOTG=&Mv/|URm7 )Q$I҅CY^2ZAZ4 Pbf6z&2-BU 8(+&LЬw ))b:36Kɼ/U0:x?rBbDaJ(C@ <,li*U6N..*Q6O Fcy`lD0}l/O%cTa^9IϕHqX$m/z)g8 N=ɵ%^qFE1dщaЈ ȱjA]CV~}E]]?m0mL<:{-[ ԣZUo /X{z*ծI|`E[˜I_JSCۢ`P&\11AdTM3}^*R(d ,`lA>"Y+i{ERb\<(! Q'Z%Y,b,)#'ɜ >^PƱp2vu0 +y4p`ח=n@wQōZf6>xZKj2,2 854`l,3HR4i©X@10 Wp`(>SZF_&1"TL yZơf1Ʋ?d2Vу;LK4*"}Yu {22cU+ke/Ա$0}cr<59> +~PJ+Tghh#t_fBȋ0sWU6Rr]Xe%rVfإ*ءX:D^$_7r v[qŋ^n O1S&H1 |TBVÊt阠UQJze+( dY w|F$؎5M?bñp-fELa0&m.)-dZ*L 3 ⲿl,r:''JJgUVI!T.mc,ɻyӘ*'ٕ銱@BE~u`dCٔ6y%>=룴⓸)''+t\t<Kq~eЉ~(h <*Z:zh=1 SzDz RZ'@m%-G?pt|#?| %mn{o} ]^@ גac%;yϼ8o}F+ɜ2<͚;UԏEI1h[6Q!|"(:B "d^_wq$Yt4]ҁoǜv`BKMt-%z󭫕)uo~aZ*޼MvBŔ<|SUN^'^T!+cS' O>p]Ęʱ5tܒ0 f *#d|,) h@XU.Q92UYI%C'xHj^JiF;|;g~_=k6jTL"Q4L4:͝ē74!s, O3존&s\3z 5tv`HŲ}j-:237XنINsiݼIJvu1^:KWx/XhMfD,L@X >yܒ&+O7iQ_<7]eP/t%9[m"6ޒf׹ q23J`L;#D$kB=$Xsqoךwz22Zl3l^s7eq^dJ11gtͶV{M|JcIsv\$4 sʤubD9H1?ޮ|B)='o,E9e[nޱ\,ZrxV&opyT(z5|o}  F爊$KQdͯtFg|Njc|/Kg~hb\D7 KtЯ(huj[Fm uΗ7yʺkᄏ_tr?ѷ4yѪu{ZDZ}_068o)Ƶ)M4JZkx&/m@QS$/7D }$ KFdtGn&6)Mgf%i&}r,xVbJ%m|E?7?=ΓY=y!4co>zX:Ž-Yz?]xJпJ24s.TT'OE/*yBv=oY2ڨ~^s I5 ̋0q9*YWXNAJHev*;fnӝSt%dz_M?&-]*'=@BUuLvVgȘY'8 gK^I#ur1ɷ<ۗX/t"Љ* +ԕk P3$!.[0q=h0W/ګ.?,O| S醊q%9~2q8B]9W_sHBRg9q4 o|46uA[r0z>_,f [d}?qL{̌A'[S8S zY'nv?u{n+~v0aU =ގѵ@q`>--?W4s2$o+OPg^hJiJ,NH=‹}ŧ,GNiv^ϒOc8s0GErt(F33^*EP#%z)o\ufӭ]33JO>]]JE@jV<Ex'p_a"9 @?y^՝D D _q٦%n/iJ)$FF"٠,j_k1:(Z#7^7}+^Ÿ{VN.qpΏ1﫮d \GK@lY^}Al:+t'ч?`Z{Zc\,l4|Ua{k..$"˔w(Kjz?lT{f `[gJ=]}iFmïQdҗ^~fڤ)}}%sj$Q%b%<Ņ"o|3SJSpmνfm[m U5kv%|zGMMdAqh+tnCէI>LU&Ĭ(bݸܳLrni1|?84JQeM+/ h$BJadEѦgl=}mLA˓9Izk=^+J`/Ɣw-:xV{f.Q!>k:οx^~T/̏ղ%.W\/\'C&}ٕN:aJ N@T@?BZ9m~}[7~5獌e#y kV(\"dF)Ïn7ksFZyZedXҥ|Kһ#>ӵ%#BڤF!cWm[<>MuZo~ MQ'[ט}jxU(JYq߱d U/O;:<< z\cC>P$\\yH;[K.}^K'>s92~*L)O \K n?4s6[UrbJccO8{kW<+;akx{r]WbŃO ex2{W_u}ޗ.ye]7Bq+9#XZEFFFFGGGFCOW /J֊'ew~C*sՃϼ:4<802?"]-{?Dύ6ׇ>ĆS֞w{Ra @k_Xf;ʲvY̲Qcۿ[e,[iB}9og^oԢS:/#o;[̞[v羞5{]횽gC+ d>&s|aJߖ-K3}sɫix$ _Bev|?l`EȚwy [bI ^ؾ-貖79gDބkǗ[|W8K^ȣ>?sF-ҋB-Qi%tْW <<%i;˖e_ەڌ͌{ ,,y!ʚ-JHWDǕf B"[8E||iA; =4eO>a٢~&^h1=R6<=5?S]e 5x<{q$Ξmzv 1#|v)(v;?cgDg'}ՕwwΡKyW5xٝ×5c(ȃ kB& wL۷;t"#P Q8S \be@^s/=ȋ/^}e֩)ƅ?hr?Y2Gᵖ-Ȇ^܇>(?|vo tIä/umwVa KD/Kb#Clۋ{~Z_t'dv{. ZYӓ1ZgY,0O1c9vZx)Gewޑ-^Zzɗy˖=w]hti‹Gng%8f,[}`ӣAdwW.L{ sM1W%͠56%O>vf"S)ُQ{), 1ݳuǭż=eGX: /˘?+vZr~8cK~1s.l:T"v-w=Xg?VG~oU 6Mk0Hk9Y:O {{5jјn{obAQRO?ϻ֜ǛM0gfޫ{t+ZgLaT!WΒk2#}T%Orʬ웟Ә荷LUA = FT>6swyEMwt,KL|Һ+Z+K9fMw_29Rky`.b:5oZ/z~F `8RD(q"ʾ9pte`^p%^ESEm?kc)/+@_J+7Se+L9R&* \c a!DBR\5B$犙6oٓp2!s\ 6U.U;8<ᄡ[ȍ ͋ mn՘ 6iSɖOU<'H+@ӍiВ!n&3`.3 eJTP09uJJ"ɵYMPE3 =;SrSKvlW[/i/&²eK5g'i_eޗIJcHIBT^gvirKcǒrԔS@5mUذMvG/tJA N;r0$1y @g$#Jѥ>O<~W$w21w֗ g㬳OrD'jro>ܩSߩ;G|ӶqzC~tˢ@K@EPӔXZ[ouCV6IݪS$wrE5jW_>{y\BӲ%b7u#/wy((v;iNœm daGQ{\$Ǐd[ g$foNX'7ࣅY *-ɾ\.ʦ dfħxSy2HJ^"UuBG^C8ͶgQ XqYRjM6G?lK>h-!LJBש,A@՛׹uJ| tEn8TqU*vHp{$؂m sz5|fb(AEp̛:{N7G ڙs%@aKLZ7o D@W *egpɓ@[<=/LMBGBkc? I !.7Ig6H3Q&7\|7\wۻ6G4}~0L@"b&^ؚpzՓ%NMf:A$J߆9i'*7ĉQʣ,l^r6[Fٴd/>dJ!UgVKF)j}W_m#CF' !3:^bo4zI'otͷE#ْ֯_u{Xokr=wyT)ćXʎ ĔWUkm5ۍ6 קn)0NNUZemN!HTD^TKȀWeׁ`КAEnsRW&*\*sȾloJl֋FϿDj~XWk*x"RNTez=BNԲ,n~9 g͝r9ۑM3}pg39*ơUazZ :[M>r#ˤYܫ\cPH沷\q \,@8FIoG%kpqKS<G_YMf#n6ߌ~xca5ܠG7w~+_~Ѩ;i/H987e6W?VX=|T:r߾7uFuN~l&~7wѯ~Ͷ5w~Ыw T.x1r|؋|M8Ze n+fwf' qe&e DVJ{ Sf\`ѹ#C}>?ǧOo6oin_z˙/N=v "ڜS+%⼂;E4+PHSъƥpRҌ c9L_*PB*S$¯S_U9JfR@%9M-yskj~" M~2ՠuj! )CQN${Ӎ ,=gKt6{n*Qc()O)" WVEN.H'xN$Wgb%$/\K ,eHI[wI˒Dww{ąobu=zӐЫ2?ƚ߸wƧ_~$OqK/jҚ]ݖ#=$}m-ɎrT=Xھ,jJ6D[[Gk5ҞjJ' 8̦榶t*$7-jmozs V&!oP)[\9ѐS_&?-MX{ |+@@D2'_|:=nkkiO=]I4Wk8|{Nypa}7síK+JvCYc~Cv!˴Xy՗4`+g K SQqX|KMn/Xڴp F<2 ;hG.K7PtxJjpu60 (=_Ty׸ *;lU)6o~R@bR.ohI֖HD`CO) ԟM)@PZ8@P˳_e!OL%߰Q*=xϞWd3=5S> o]Gen֒:m5z\~%D~com ؿ3 ƿ|g2oj1f1qG`F _8gg %Dk#ݒ-w;rmE-_-kKZKxeY*b}ƖtW_6hT*~߈[o}Xx*Ve2쉘 8a?2h|IJnMsC4sIARJ@++xeG`~S?zJi61>]cL 8+ :zMaI69x~{٘!S1G-NxEw?R0\t1#%=]Ͷs7#@"5]ظl묡p$;_ʈ'^vMZXNXmnėNC 8/:?Wɿa< T9УkZ)gm0O>{'QO/B. mh'"֋4mzEL.TiFHseqXd=z79t+?xaKg,f۲_~;`|yx{w}ff٧wk)Ж\sGw`{v6$5\8~'.RV3[ꋯc`C_Kd{ ֑ |]t\6TTxUk)W(\Ԑ)*jUK*U~@mN1O,K[=e*d܄N+c7|]@ M} ]Nxo1+`I 2 G,%Ȃbre0Ur~;?Sܖ! Q6\2 [=or&Wc\Ejri M9'ku@=Z?참H F\lL R0n(5xoj9*SXKE!lԂ) TW E:#E37#N+`ъKM?P2@.k3u:J_/ J%|CGMgn$PK6`nLj$|Om1|t[.^ 78C5]czVG@gϙx=Oh{!dvy`[$j# ly$%?8[Z#:ԴSvSn0hwBFMry wKٝ B~*xNb%k4@JU _p3ADg 1%4xC iE>$+egR܉#%R1" ]˃8qlgyC :{RȂܗȕQ32TS{`\N,vy%]\-%':N&(01<\ɝ&kr] )I}>gHG#}R`(Yeؿy?¸1VJSӔ:o+\BAS w'x05 4"Ti WŰ7!.nv$cF.*TnSg%}OdJeaBqyWa 6@Bmm}'%B3IچH|K |]m}5)zT^ S@K\Ϧ\WklHpO hDc <~Kys([x;QsXӞ bX1;W(g %0tǜ>?>A'C"lq*.[L\)ˇ.vX<EtGo\+aPR ^*#hZ qnș".VPj NqI>'ƞ<PS`jCW*Yr-F)"6$ŲFW?#x,ͧHq;jXT7CY%^N&?F"aqaQX=GG'˷" I@ջuy%*c+aTƮ죊V)e"䴥dVGrj1v>fo*ըo>0 $\2<i4B/V -3"ѲM|Oj(4MF¸G=t1';\ ;Dn;5D2nP\1'Cbc\<pEry9X%NFuZ#APcB2YaՉ,ach(9S9>Jhz!ARR4ZX\WWHaÆ|r byQxGM\%OϘg5ׇjYZ fZy[ =%9" UbuRpH;ؤF.vHkQU!;WៀK Ũ;mi !Y 3C.0ӎ+).FެF(;g緿?i?~޽i ݎ^7|6}~B$|ne褸s$b(A=% [0AWh\tZk, 衤J#~'jJĤe[eHPF֞0f0w k)\͔L^+>v,TGJ#oqR')+:J@J>wfyCRl 7W_6bfslAi_$W=>` U-۠^aiܠLKQF [&J󈋖$HcњՇRڥ,ٲR$~ fs^kh wbefWm|3:~if,tG}m^khg7 ΙYXG]m3]cߘ# b?p8aTKޥk8R=e75?9|!s?Aj [ʙz|\G"<`?cgƌ[lϯayM>._f=k, mK)+l+LY④#l-{dh#%!q P縼AЫ|c@0xMueR\lW א:l%_a[J{][mb*oF_쫂вEm$,.W3,Ɠ{T&>>c}%3&4"ɪ52~\8HMCJܟT!&"); 8]w1|..g&ECa4%&WO5ͣ-@C%JlW@ׁa5$\uQq[yIb8眾]wGb1kG|X@-}?{G؛jSU|eG>ͷw?g?8@MY]=tUҮA3M5?5$85%Q$REHKqIO!Y1SS`idIQ;9 o,@dhPeG"VrqZDFTU *&cM 锋bTpR@ Ϥr8 h \xu11R_ph*"f]u&T[1S5 vt"$o?pӒtTIDATۖ@ɥa$!D6w xKX3r0 uitseF:pvl;:Z7< LI4 Jo'VBId;sBM1b$FiERH1v7':j9qo'.U3uWl5PcdY_lOs];QFW `UCFv'/}@U2JKf_['C29'FY٣`=\~/,L 5-T4X^u6hZVyofd-1a7viDYjfb՗k[ƫ[vPrU\A틊SAb*Uu(Cx]}1M[`g3)cOVs4>0CڐK8؃ ,Χ#~?f(ରRUV&sA *aDIt8 *'"R>Z(m(KZnra&*;U.O{Ě ]̔V!&[HlGBT7R#^jneFfNI.1O^_m@Aa @Hn+57=CzW}P-iJMq{ov3[:EZR4@]G ^`[+d*èMY+ +r?do]DzgRЏA"LKv2[_ #Eue;ps zrBrɬ "BDZ*nR9fxt:&YԧMD*ɡw/9,run9[B+ƛXu@%7ecż4Y rkխD2) _삘loUq.8?,:ڐ$ Ƙ.63IQi1 t D;Jv4)CF@Bяŀf`TZUhkPwϪ׹0|p!`U=dP'YNd>aK°1&5UvpսCP8qg@ԧ TnpiF3L ,1o ED=ÂAiQFJʼ?(ZmH^@uT{!t 諸H7QTEP^ei|\t)zN4\.축tajNt wkzVN|ˀ86 Y߮5?]dxVg+tNw#q}0ww]IV~|i4Z)Ih229RlBֳAFd`#UՓ8^:l_ WW)A'S-.Eߚ0q#@1_ʛz][Gxw#]&JlAEkdz"@<2,J˄V'9˪̰`/^ʙ6}RC` wi ('B YVEUNCY(6*oILM 5!~me/cduvKq܉l6$ q29U YcEDt̏; Zf\RтTЫ Jm'9YR3UWhbCʼ4NN΃ e4"3QJYHEA婨J,!1*ZтlvyUM);QUxV|bj4%O3l%T vAo63`V)E آQv`eYvJ9.LзC{pSyh7x45^X2Pjg0s*U(n4꾋I ni@GZ<-L%/"PaLbq=ph}qIf7ߨt0)xjT0Z zu>[ Ԑ jZ)Ѩ@w9ȿ?,,!SbBx-YLpϭ G=¤b!xG` e|U^ÑAE̮}@ KZ[3]n켗m>>Scr-<])͒dvB#i7H6˱w٨J0U7+{)s89Ŭ7F1Wu^'dzBFL,V=e.X~+%:$+IpǪ^$;yEb`)LiDﴭk,z)- %E'ǣ {ڴ X&MIfT֪AX *Jw!^p[adL3`<&/)[R)|T$Mάa2B)+>e?ʼyh QuiS">\r\1{+wrs.?dC^1>R.KYf8xNSUK@cRsO; K6\?Fw~t5[ bSʔj2M9>#B`rket.%[0ҪCθ¬CL`fo=zM436^s-n#֤KTΜݞH7̙7{(p$&UhPT*\1DHϤ}P0/x\dGuA圏2VX3mjW$++ ZjFV9  cDy3[ĨL,NK0KzZ-&{}{_ATv(ּxfvfYݷkLWl킴| OY"O(-EWRqT.p/WC0 >HBܨ"BFgs #-QTGV4#)P B Oe>/\@P$JiDɒp!{p2y0D&{x _ԷVX, w ͙Sm3fى$A# ,O1[@m1͖cܬ3fTu?K0f(רDKRZ:o3~jױFI4[ & sj|"޵ $)+b6C8GF9eo*~TdL@m*XZ uHy%V81dF57m!L"\u;1PlD>MTUqaF6 T]ʔ3B2Q ԻR6?ɧx=fR+b&'gC,fSjBtuY ahCM zT^C#〉*p2xYgN:cq[+v+qHt̍*fwmBͤ.dz`4ĸ]v'#vx#lܤV*kaaHƖAb*Nc6e i,S6O(}y2ϦA$[:u 0d稽.P2%1 jNLz1ypAH;rKi;GU_aϵs&(C<=pp&LMD&zCѦ܀.%бmO\U1@`3}Š(Z#&c֠G$IWi"+4_3w6y$2iI؏Z@RYbdml OƾX/WQ*"cD}G͗*Nq Aɨo`/-x" u#E&"tW "l_W--$aI-4>[y?*}r@a%p\|CPc}h ͤb;!3R*, lCv$׿EdV-#O1'CCPf$y9T0 y kK\|;녝!R31T tA.6hp N)4 Ja@ >#Ep_XL3YU zhU-;)CQI5m[z𞺚ǽ)\nBW4dAu ݞx%orVƛ uݫ[ͺkEtD׉ 0-hϪQf9-/T'*L~in jĸo3 ѹfu'K׸MuBu:o E-detO0_q ݫ뽚nQ-j2B ڻ+;S2R(Gr"fLABŊ(rZJ.8 F JRr3I JNHLp9A^ot %㢘*(vDB[;T{mޠ|o%Z5+ 曯#bV;cx+ ˕D$.F>F@5x?Wv#:=a{ޱ- %a;K:+L:gLzgŠW|~g1 qU2)`0?#H[CM ؑ潵LnB5ݺw÷^R0rGb *ޣ_~}6jogq)&7NFI]'+!oMc z6@(rV{\ıNe3BuPqB,'dR+;IƁ PHp'-'&B{j(=%A'Fq[s0:4[T|ڸ!}%D!6c<.0d 5z&U7\8Ae("!SP\ hBLHkٴ`[^Yv& 7u.~mCNuHzz/LID2]\k1Y#,8\,s٠;2Xpfgh 5d24i}++j٘f1_ ;1B%@bb̄%tv333 &ʜj1ڶ ZХbJf&/mzԹ8Z]дA5զivɤg?ߦ!վ-@"_YJ,-ʪErIcy ZAaQv6]Jan~zX|TUSn'C;mίˣmϜ+͎*2:G(nC@qo9?1L5y^;\,Ɉ?:}㝹M-3'Hz왩`CKV \] KՊ\#;b7+rOP[:D|$B@riY=ZI6}86aAqRͶi*uK UšL"~74:62.Ƙ3pX M=g!.T5Y`Ϧa "%JV+L+R ~Z | n >&jرQn hjbԃq9|#WKdGB$_KMK"lNRfXgA5v:ú&+Y)@l6 s)d1_hAJs½VN!մ,RZY3f1뢎;Y&Jbf]L 0ա4]4/=d93L#kh(e8um=xQF2d(99ȇ ),ZI;(*IڜB\jwLukJiD10Y5k4քbШXېBC1L0aÀ@S*@Xf~1͒UfHl'xc,J!"͌lUqJg̲亲~cެ|4я$j= wWOi;f wV~H̜0%%?/>f|'[ V#0J_'C0iPUTm]NܘVSU TG"$7lfXZ͝qۛΏFc݉8m'//?\ԓMvڰ#FB}ן5|==>{u_ی>[+t=>޴-Eg;nmAR盶?+h'Yo4Pbf1DØ [/kk?KN 3mT[ecN8)g)]e%k{ǎ9p3k8Ċ(C; E71jVŌ=W0}4n;>EU{Ƈ&%;]dƩnxoCw9oW^^0H5.2lgc_1 AE8s2d;xS_{q©W5t8)uoyK%>b|sNi'0`P5ր@D/$q 髾T|᭷j5b"~K?n>uǝp0B͇VZrdϘsn/ nJ4ιJUUBaz(1SǪW}_ 0b¡-=e[Mz{ޜ%Zg6 \մXJ>3`_KSmjXQ%ȱ<1t:9sƔޚ|,%P.YxAƌP}'@+0>w[]v+9Oi@IFb"Q;3}zmvqgB2 R ϟ{D#N%>[`Tʸ6_Yw>[JVPtf;6ӔLf|0 Ij2 irWok^xt-Zwb48j>G{'`Eam'h]>L239}=2R `RfW|-xirfsf;f׽;p]v" H|5wEX9 fQ$ =X;zCgLJ(3=P_$㎻Ϻ-:h3&a(xHI5 ~]?@톌>S#g?ܐ+3Ŧ4T)wK~{8ҲǞpz0)?pe7bo2€wנVeѣ6gB!I6ayaD"¿72p'*o:4=5v)0YyB00ڵZ{ϩG@| ؅cksHRpǪ iO^v$~?;I T2 $`0Z4c!ݜkμ.HnVSc|gfQ-K[Քy )zxD{~읷vsϤ|K.<'o;O<>q4.~'~i&7$m4ÆV3i@<r\dKp)8og|ÑÆQ_{'=m]'qxMMyemv~/}q;<և[o0`GoGػ=O2w{j ?&ɤoc:%1b%R,Ny<|0RϗT-\8R_ f5⦫>c# [@"UJ70=Mܲ% 5 |igYGtGމJ{ߡ-[~9Pb 3TJ $8N-VS%we:$ ksO$1z=t /T=QKcKF rdveBЭ:]~Ŷ_#6vAr/'.8ö\h.~ѩ}buTbݔɅ9)X728`-g劤'јxV*4 pXOi-p~,.TZKt}n2]1kU]?XMA& |8snu٫zClGoMxƅ}Ⱦ#6aY-DEE`iL0cGɾr*ms`vnuK kcKPi&By3_RaDhF ҉Hh-qG#Fc`ٻv$[eXUtղ4kw_շ;mE{6?@R(%el+X-Kw! Yn4f 7_}vViݻ{_63nㆾBm)`⡛oLgWD{g_GE. ^{ﳁkSg;tS!Eb;.U/^bl A(JSǜB|}q\S”waLGEw8)ߙ#ϾN+rÛ_߷^q.K9Ed[N;5ӝ^*:u ;V2HnrK1k8+5{&ށzp&sӵ;ᘣ#k6cP:DcQc,lfw`+(;#Xx=&R Q/6nk4UHa#9MW~y0ͫ/;wvpۋn+Ͻ{cC^qw|*nGt4&~N>RV\|IwGnv9a]-Z=އI:o6i#ALL\/P9oy'Hjs/muZ1/n;EkW.2={ElR񃑃f'Q-1Tʊsמ \AeIt)P ;]#Kp΢g=(adP i6Xu{jkM8a<2B]H<ٟ0O<Bbpjf2 Dyi*v䋚hME ts.LJֿ0f$ 1ظZBH7ޤOD|ӵ~r=I>T^86C_[m/?xuDC>oM7΄IN4NZ ԮGׇ@Ͽc?iX(sM!'ڽ: w"}T+Tމz݉$UMBɁη4|<}Reu[?+_ף&+_Nj+sanfȋD{4e5!9 |-N,ׁC>Ib+LpV &l~cv@OLė/d{LR)]WμAJnEK%H:Ce(?h^g L0q1!xNeK@xSNyɒAӀy5畋ӿǼ=unx  Byw8͆ Ds+n."Vf![)cH4v\'|(%(X:!F"Sl4Y|aebwж埶lkyap^9)vct=kqoQˋQ4AzCdQqbkoDvۛӬK-e,F2*G&(^TF;/K*J! ?x||F^&ö< +ST|d0NuA5!Xo~OtEw曯 A= M4S#P/? u>/j&5^ 7: P4LE;\޾5*9,K* [~{ wRޫIuG5:@xETA$cҨD>߻O;/x͵E݃]ȁ?5_Gk>h2mo6 ޒpM.fL~p,r7zϑXIv>hݤY̫v7ts?n;t-7h͆Lzy _& \-GW(srzl`xa|#xGP[ogwxoLPe_'ĽcX#7mGh)"wo7W_eFl0xON:/V!JĽl7x>#w6qcT%Gn=bW]]wkƎb1|:3| U;7~˥>Ap:d ֛=m8>a!Gm+wߥB~nAkv_Rr)}C7z78{6gQ{v^{![m~.j FoռOgOwa΢u?lf]/}oͶcSyOq;Tѫ'Q?b]vy񅗿OYUc?hE$ |10], D4Y󿘟q=z N?^xw/5i_]ObsD!t #~R B)=<<~'l0_^pIgs|S7<"dAk`F1G֌S CHƅ5UT^(ǽ ~m|PX_q)gpARZ wL@Cu}^q\Iw'RpC.XjB޶tѬ^ydIpԡ,l̞s=F:禿>@c8sǿ[8PtW"ѩl*t2kKzRᢋϡFNhâN6&B G{z}a>eq.7laS*jo٣^Z7CZ >⿮?x^r M Nop)w4;DwQO'S2,o8OM7s-6[/w%Wڊ! f'5C83.bJ:u~AN4KfֵaIíK:BA|CǞSFzis6WVH> 95?={ӡmfb. X^O g>&Adss jBw~7,5yqZb!(.PU`I~zjgOB"._pD_ `/x$k͟; :C8HQf|B}0xEr(^<8O>9[hą.CZ`ɐV)6ӘGcAEXHLH Ϋ!75EM?{l:Bgó 6j-NPU?YQ ɲVN* rGN:uύNV(Мx7Oˑ;md_/i/C e™?{{R~}= BM&UZJ,DM73:b0huk1f2I (n-!J- 8x( o/Oe[O:kκntW&Y_B Uve7& ~2󗲄^n͸3szUwGqĒF4ǹzGK9gzٗ斖E_ڠgs+_ =. >c<}1>ÖR~ϯrO>*{.wud:i`FCĂ;o՝3RvC_|j8WhcO/T܋V|R,>ٽO`;7a1%h \Nax=qƳs\6,rc̸ʡбN8Wf: es@"Z ڬ+xǩ5엳_w\2s<[רmGǜÎlnO>Տg>K :ƽ=͙_7K=Э5/n!uK_My/8WZ~Xc!#L xadK>K<|>[0yƋ_I-sVλo.C.[wF)Wn AT.:?Xf4B|!H}D]\Aج Dw%1j׎dKѮkV]w_}ixG_uCCx^Q Gڪ7Z+bUBCS~Gl[K6f;l3If˥ .riӉGo;B)Эa'ӷմB?h[pNQ䧹zwXsryΛ_?p-]xH2鳩|%WԣZT] Jq +@&;!#~b2 >,*#,COu6@I&!ӓ'gST (*tIIU E@fFxH *~h+≋Hrzas^yN5OO,qDK*֢ ۩MdrPXG95 \)Du!$OeN7/ K.w1S@d.RH&W-g@ {03^x/HkoL'kuue˖?gM^!H&PU yWU/]}16q"Q%=]y)'|!nbe齇lrf|?#_:ɖ MHE\G*[7LR5,c+ 1wd$㉋/0B\*TJ}qTһWOV'M- X!ӞmO3Gn0N9nӧ.q?.^裩3zsE{~埯XtIG#a>4{ΜaC"?=7߰ѰM~KmR ]p޹B6T.&u|!!ިǛK*Q~ S)A_G{ZfWO,qѥR^|ܑGYgBφO>ZOO(`úA@ aɕ1@l:ֶOpW_ǿOڣ{o\#0ԑNRCdњH'/)P_ E2ml6 69ne"bB6Q/RmY*d^mnǟeqX`7ȍ7}6n1z]c/im|~::? e0 E؂2ԨlԢamUZ]@t{<P~pr>ƌij~YOQ~Zn T1*eyK~{Ŗ:u*t˵g2$8>F,?h {ޕmO\p2S?\yenQSć=}1Ӷ=*GN"/)eN*lQqefПisLn1y,b*hv"_mhl,\M`aoMw^]4ק~ᜯe%CfִKw]4WV7 njaL:u8³ .9ƒO9>/N;)xX1SwPd ϐZ<ތsŐK?LF/fӁ # (J:A$CP?P MNGb֑{buÏ';R`ku_d" ,%Ԕq(s$WK-ԇ P ƺr?"7' ҤB;c=S#udx+$&V*-3l{?'lJ6z]y<>:rYQ.T抙t)@9Of%Ae3E378!5b@!tCXPQttYraHVP5,&)p\lX\۳NU0BSO[Ʌ}܈mz L[ RL.!oJbTZ}ʩ (>Yb *Ps<?Lʄgs.Iy\&\m7KE-J,-h8FYF*PI)JWOFE^(TDV}Sz m-m ˌOo(V(Ƈ,^P,kу9E[5Ai-"鰓jgf*㲺UL.6Zs{pB-عy`lm iUQ&Z)r6\5/nl=ޫ=X_\|SA:7m{o w֚5u}m2r?}u.])}$Zw*g #.cO*%UOm;wMg=XWL}icOGM F!^i߉ddIM0>63\α^K}Dz]t.ֻ{msȥRɟ|WlJS,V$M!wܞ5D͗sQ_:-{\Bdֺ`́1}U`oΨjtQ(8N8wfL:STiΤ}s.T]_:w_ccJf,J)8hbpfy$9Y8j0'cAn?#ݫÏ=ގ{ A@=R2DIpSt!Ms*SB,{f"3΢%TvҔqRǡoJ )riT$9SmO-[G{5ڠg]wh77ƫJ@XZB*-{C:*nmRIT><*B.h[b/D8 LDMӫ 3fFe ܣ#Ӧ?g2g\DQV%#9玐洧'UZ I5miT80N߆v'Pn2Y  4Oh][VqcAvD{BzKcriAp!PW7ɷ~0㑩s\"ܜ3kw<$<'̒1d"S檩=2'[pm{P $Q@@C6jID Q{ˍ7]KQ{r{1{|1T(&v%Qq"0ȽY a [UTE_o&}y{[1#e-{lÞlo9\6Q3Yp:낃wM' r 5! k=u_g!Dg kCXM&C`~'Ej+ׁl jUeE?e5r۝.Z\g~「}?J.{|ſir| Z#eM3(wyPWoζ 80 ^r酽{jTtL=p5~u֫ ӭG ɷ'fRYN`E\^<~|tBiRFK)!0|vOW>dw݃ D/KA} orߓF;]D}(HvUFUnLɡ/2uocKRdv/3Q}Lc <ʵȗ5b 6([`6Ay=PWAS(ͭ&XBPԽ%fM@ѡrI&SΆ~x8C<@E-fW1,%$= B!KOa,(=Zځ/&%S` \=?Bjʎ,e‚r}M-S av4xgAY<&\ܙhJaH$'#;&ėMx& T]{VȢEK.rVFܘ(^ W rS;DOmʪ4lg5~ ͷB&`RklFW8ݺ'DrU /iikjoklK>d!k \#FkӲ֯-`AH1ңgݴO>YLƎ]=s#knB7QtZXo:7VIj]Q\a߉HP}]6 Ϋ[b.|G{l6d-xӍmom0u`Zc~ElxPQO=</pfkAxޥFzկd2"178n~z{zv꣱@b%Q94gAjw{OXH[;5n}?jwg|~ACSK]j6Sca/ӯ=hHO~^ȕFn1z_;1U!ن!Fky|뭳n;_c^̞ߘontAH텿Gu^8;++~= BzϹ֛{lpJ,I\6kopg Yo>E&-d?x"Ej$v=?]aƞ@z =j^{e=,j?f[oneݎKb9 \fu7{]sM>=^ w~-:b=~wbmj>zocבmwgU^w3Ok|-aֿ`÷};O>֜gʽwЍjaGNa7䤡|uc i~;[6lYsuT@1'<ʐ>ĺC>3Ͽcw]w\w;廯[o~ֱ r7;ci端Mwa6; N|Ǧx_Eܴ&lknaMr&ʝw'zpng{ְَ;6r냶bV[îxaРQw}bȉŎnV+R-Q Li8R\ w1Lj{G~ 0TM4bΘ"Րmhf,ڢx( D%2XwD. KnD|tB~t<'?6lpаT&4 ;V*QXL#x)ț##NUe5$a,pO# P=xD[BC Û ."%~+ߨ|B3ݹλ{8C JR5L@ᆉ H19l`5J#2xZ^DÑʛKTÅqTeJuYS.=6/9e ',[+*^=mQymY%C"9qe^8h7GtEJR!_&Y' T|U3MI則_|?g)o`aCW^ 0"X *W?6bmė:OF ;VPbOތ09YK-;qy(^_bQ=*$ a dH< pS\G6Tzw VdJsZ[Mx-@JQA,{CŹ{qwKgKo- =@ Ʀoq!{{ⷅuLW9 cP(wZ ٳb]9s">B~JYH:Ϸk) ̮ž]pرc/ I@yWB6 zv*TBhs8/k#6tC ܛ, ұH`Ƥ9Ҧw_ƲlHVʤa| ga! 䐬_.GVq=.uyX|@9/EGt\AQ7YEe=UL󸯉ˈWSڂJ4qjKʋUPQDLieKߢ"~AElJ1=CZei첞C%v6 萩Gň5Ȱ) J'+wxa^\aDKjT$V[GU)C3%kNC* @g@(P'h>ӌRvwN Ԫp*˓"}T/ x Yz%C ;#v<}3*__teNN"8`bC3WғhB3%# L)H]9A천 sTO } g!AkF˛3#~vmkl3~R˽篗Ctc[]WӺ7 63 3~=\dZVWm|3oň%x@BTuɍAF$d#?P+eIj MF $ GˀdI=.#SKYAuy5snRvV1JLryH=EX\[ 56BEw>cO'.W& I kӒLت.v"J):\H$;t^Fwg rZƑy 4hP *8)K Ѫz"GT@ZT Z*̓-rę[G~B6TB ѣz 4L46"6I02%۶s \gM2(zbjcN_AYb03g$! h A'u |(k' @T8ry?DSqQ)27?> =JfS_&%mo:"(NaezQ($Oq쁾UPd8e#]/BQ|Nӹ.}/Q2pQƕ' vںeġIhT&pk+J1cM >(0 vV7f;&^FM4'G.VQcSvuיf77l0 0eBOkQ*/}t?]'UÈ.vX3y@D(ȃcL kWK{q!mP@x@ [RU9&qצѕDmc~%g x+hiX.B!= eO(J:U(_̢D3pVAp0ȫ"a2]Q޹HmKm>M#\ 4׭bd"wZч`{"(- ]s 0v{4rPk%Bc$5`a$A'1rjDxBU2tHv[!' b=εLb%;2zm Z̚9f}9µ`iؐH񶛮k{S=3<rˬ3^|nˬ3'̓?{7~Ŵ^x믜DooWr˵MK5.]ώ?J{_s'olkyw2 xD ,RfǍmLZL$+ %B4p9PM9dArzʸ۽m6PwKoڜ)~El:Wnk5x朦l٘獉^Eb}Akj+v,.~|?W>anYUw矾Fn{?]էGLuC-6߰g>}מUSni .zգ&C֍7\~W?'&6G1/r)Sw᳐h" 8:yOVϹTl$29Y6Xjkƃ'1OD˾ioO~ᅗ1:Nj\k/^ڲ[գg?.B۶6Vߧ{&nz ]Ͱ@U Ir҈|Ob|4 jP"`Kq=0#pA4XaS{1Q >9 3*)V:iߟljS 4u3*7PdP(Ș&Q3 (ek~OJVA4fʸ6:* *PtDv-*;B"\2E2$TVIe1W)w~n!ym[7{16|#UpA^3EѕJqׁ&~QmX8x>&wĨJovF|r@J23]0nns"Z:6JSv'3ҌC%SP'{^Q^shFV bӞAgJ^s㍟ħFWR,B!{Ϳ²$/@%]f)hk6 Xj̦xb zq')IּPp>U0 jPdVШ6v]>4.L: 421|^()&X2T8 xezeW|/e5~ofBzBnt# U4(Efk00L,4N꨹Fl dj8/~R;["rs9;$Z̙S@#fHZ%®oc,eCFj4FޯhU6t{`X#W풓uc'\nh ~\sh9I m qÛZtElnϠSMb&Bz5 WYEX@ Yn'H^q4Ÿ=N40C3#yc>밞O9,MZ6Db\Ȅt z+^Ŧ zt7hT͙f ]DNL0F" _1r')o +cLct$ڟ|o~bB3VT|k\ce{a~4^xR΁dTO ;[{3 5T#Y3w@1% ٠WJ?.h403F&/ߖ`b1|0&Q5α_I#=_?s0UskK/>{y晇y;onkpQGm8x<ߛ Op5HE&_)aO=[o=i$,ŗ_:l{>ulиmGƍr-w}ӧsGyb zC ۩uI'>}<pm޽ɧ>xȰe˖FQZm f\ : IL_L>&8}IA=W"BD\÷\8wO<;q6s_ΛΕ[2xf^GuƵ.kcܤx+*Na`1^;BӝL埥X"qxMoMŌN8^{8ߚmWN:7~>c^c$wI'k,[ooLkL`Z;lղ,矽n /&C~=k\sõlwʿuѢ /f'p' xGT#s,'KÄy"'4GU e7iUX{:ܜ+#,@/qiG;(2D}B)I6P X7UK}$N-d|(%WaOIҊ;04vE$YED3hPSK VxQA$rRPҐ\4'p6dF8gUِ8qiVID+TYRV3H:+d_JFa$%B .R"6oU. Wv䭮_|G+0څ%s~$r]b֙.C\Qj/Vae>Zo7>,Ri>c^̜RՎOXY ׶mP#eVUȌ#y;vC5ufU4:{,o v.oC{l4tͣm>Ӻ.nE]q{Wm1ۣ~UGkmWUOf;>!_A5:] ] >y(Xz+_H+|иQ,q^rDE06bG`THD![#DQ;_+dzɚ4DIAx"L\A9]L0q'ZnjU0x7xk$DwܻI^,Bh  k˟-媺:4Ss(` op#oHc} Ͼ3"@J+BN8u{n[[۠6tY̰ڝ c({j7^{SK}w7bm^~饖f8/]󨑙Lꕗ@qD <昣A䄉G C615p:zIkli~7v5)wuMy0j3M:;/hwS/O=@4^r]?^{F&knj٧Զ?lxJv50 EU;9ڿ%bOs!j1+Hwe!REKQz/hiQ74j]% _y6syHp{b%іmO>s/f3Iopk/nn{N?ZR'su]wqmػ9_zSśO9<嬣:=g;]7\wα_,[Xտ]O‘ `qnHb: [n֣.<C{6kKf?_?z}j4ܱ{=c^8d6~'M|3/6xs/ PmMᎂ lo"@DC}ϺZ_#[/"`)'BO[@͇n~4n7H 0*)B>/J0hh$RI@d<ߓhKQPQKS2u2R&`y*-DCuV3Sj $dYg;چl$2_(k'9@D2$z0A2Yq`a=MևG_5MCP^|PeC~.Na"6E\K&(/ ?@ <ɧi7ۗ5!(w0v1 pR'S"jaQ7)р&UV+sUթV}i4̈́&/·e`o"'˸Byd&E<<0l1+x'Z+DtJ3fL5zUb'7@UcBDI!ʇ%iFS`8 m+YrJT"㫐9G}g  _ޕr@3ׂ˗-^OF.HfW|)UrPb.1L4Zp#,֦B,w c︥Z q XM*Tޟ ֧7r4v@f **Y?|^  ց+z'| LZ0z\"ƛFモd΄I?jֱHM*T fy]X.2+*>xwuIwY1 A =t_zQ=&$US%tzkR= |Fj;ۤ׸7Bۄw϶I$ӧ~aS>ۑ /tnSo>W4ތ9m'2abŔ`iX\ KF#B>}mruY Ix\ݧ_z^h㋾O>5uu_ȃq!h7\\FI17Y6r!]_}ی_O$oƲ5by)t^30X8jĎ.o1{G]zսǑt47;foqz_p'ԽsQxo=z챧=||\8 _/N(" 0p[;n?ܳ[ew֓#i|ػG@AhRޘbiθ#.CύI`:OV׺NX20:FOuՅ&58 YQƏ 4ua<`Z2H ȖweHK$% b-W0]2tT42pm TI*L/o2Fr#c6+3V&ڬr3ؓ\}4|6+C9jtIn9rDK #ipYVFV/k ̗Rbh({1JcP_„l -x(8xFS ~1{K@"I'qϪZ}#o+>%ՀvX*XJN>b? Q&nLC)#VC+4rϓ봕K%bPvC˻8Nd j#[ڼ|bLYЯȳew[i[r-qoė+-wtXRqJS\rZUi*eY7o<&O)ny2(Wک8-x*;:U֕`*6_%nᜮRV]-noMmojq9_/ܞn^Lo;wao2q6+ټ;_ ]`!π˳E}QD0mF <ԑlG@} ?ܥj".]`R5!^OΣR* [(t?BB6gD =eR&~-pV(f۟y~x}˭l*?t-̨]7ª9Vn{h>c!4㕗?/FO7Wx9gީVeg}Tے&ϱ_7N#^)Id E) IJ>S&$+IZZ=cuo'M (3m05`9=m&Fb\% ϰB&XD Î X]e/ #Dd#OI% sǖgu^lieRcgo2MyiqޝLc CL {!-P_6.3dL< >z̤1X'xe'/&`?,b,@… rG)tjlNR.!lrp6uQ+eL0u`*Zb WkR@T ζBW3hQp'OJ@2SWyWȷR[ɼϻ;_ƠTmYϲ: KeRNXn8-yA j"U5!D <^w2xf\=f+[p fYAgf53w|fy ~Bwq4q/X2R)=iQ1"GoV]#ie)/&#AN@ X+Y=,D&늑O<]~_Q_iqܞZR–;3b<CW) yYi4, ;YGx.'?>Yh-Gހ"i01< &. b z‘A?U]\=ͥL )YDZon~%<'4Lln:Z'56}2 ow4NjkNkӄ֖qm:Ʒ6x;/'x7< yh[kU'ZW,0֌t!$iR{\1,gPl՗_]vڵg^`xFMe_3ގJwywz՗_nmi5h࣏>wc?{xUrm09fkoݵz{ɱco^d16s{M7BlGE%vx .  o54<~̟? 6ho߿ƛn2d6D_ܵmTM];N=uYkӡqƉ0BNj%W&^wÇݿ;yr߾oO:eMc>h"QS]2)X7Abܪ}:G!-D#O/%FL"eM&x\53b-zT"m$ɤ魖Vq;7rhrq q"ga7A2FaCYd[m:t2x>^{4_ZwoW>ҙѡX}"s1Gslz/vyl׸ml DޥUEJmS"4[I0U2/ؒZGK76Q2*fB"@S[/l +p6j?QHz9nnGTg-gᶶH8^vqTRxNL*P ޑa$ʔ#2g:q *G+[Ac6e]sp2_*MT 9bSr9Od.i[fɈ2'PC=P,laxRo$%mU,wڗkc"Hĕhb6-[V[_ȥ!|+6iٸ_+q`1g% FG;3" ^xi0&to^M >^>1´u=Nm/~Fpo@8V;Θ / 8VwV|D*DO*-ea;') j.&mJGXkxuHEauĘDMe 邖Zh4޲dXp71)AwLZ% ǹ-TP]q <,J%/m]E4ՑX`(LeUͤ aOWp⊗5"X B:$3$SL}\$8S_|k<~Ǒ`c)DTGr-vx}yM{$'zrZT79{`0̀3 ?RŅct#$- ٦I`:n4UUT.  @UFt›ewbIQl9~e%R fX-#Э%c5#1͡bvsWACOں:_$D`9?E\uB\XFf?Zo%PvJў=}8 5NLB5(-0PYj޽_C{RΆXMfT*e02NJ =`B!U[RB>QOkc0bT(ѽW7@ |.\MCދETpZ9sc{I..8vo8pt4Zr]fyb_jy??Bg5h0n,~Ƹu"2gFq< C7dak }52tEKs\m~^{}6>XqדJcK͎o뭽/-MLUXfy; ͿL nو;{H)! 0Z>Px|gV\ve}oK`~&LvF62/9CEy=l$E a*Kň;XL z*!bK(+O2Aoӂ=oVF}XK6t'^ R[PP $ՋTy5'FeltΉg ԠB L|LĎa;Q9B(|Un4vXJN UD=^.3 ` *D 3Ex}1(MTB8/@dtKGCb;%9f@Ќ |tOKفߔ강3Xր$ĄTGا7Nl 1L#C$2Ov٩b$\fb;L$, Bm1`0bN<rl6>81)𥗕`n/$岯Kզ 'kG{D(łwTL`eb=TV:*%{C&-S/p3pdfrVvz`R*\XVݱc9y7&ɛb!ZcȌ,wnds~\W-^kmԜo}wѢW.k?JBC4٠.#Qf/.E5iUNN<uVj0ұd>}{qf#HR]>8+_CIB"ȎP/KLϡ/9㊂G| ʎ7DǹΞWM9%&Z+c sDIH!JJ4> 9 0E=C9f)Pz €ЂdΦOvľǝtǁ{uOOxk"R D_6Tj5(-8ډ-[y;I5žH]wX(T EEt4 pۇj.rM/4k+zmW?d1}?I{'Xr\b~fty'y|5=[O~Up^0O~Ο'OaZxy~ٜgT`~C.6)siizsLe>ջOA5M1wR)͞ )&)ǖqP{`঺g|/ @iو*t{$oڬq.ͯ8oCYvUm-}<9o8k>4O?BtʶMcWQs grzjIQO(/udjN&I`_43[Q8`Zf,H^wy#XRyB4~]uƮ(ʋyCHߢGd"ňb HъUNG?:Q`ZZr0@[ltry'؛! =ݯa~mIyPh7Txj7~S/k^ Y-c#1҇\THX}vg~K;明BkVvK$_pqF"0 :Hm_|%mŨŔ_ sloUWmSM%wҜ:L̦cȪ2=9lsS*^* ?`6v6;uDPzj<54>^[CjY|VGZrut. +D%n=q^}?kzq͠ W)$˗@.[7mǬ Ҧ|{nž/}VtW􊤜By_l 0[8z_\zU?9g;=tBQϙ٨7v9/i:Yչ~lUSPuubjQ3LוK7@TB5kjKs\@kT{C(ƨ0GεÎ_;B콭3t*\"@UOǵCu+w-y%UhE%)"*jeE/ ftcf=sq9Uq:`u"NkKOiGd\{{9W(\]vpStӔP\4ϔ0vݑ{2^H՝J-_=?ux+-Dal*h\;F#!dx7,L8{.{{`nBw63[lcuYg,\WN S|S#j6#O2 cxʤێtWOxkjkzkcλ ^?rs/lڔ7m⃓𥷯<M}c]A\.΄%Y YȍZ,}u~unua;n'nt8 sS?+e{6{y=m.{arl1sE?KHgC>G]Ţu6߂'1( EWUyRV7W5jkLc 7jUC1w.MRK(W$z,ʧ\9O=MK8^VvTsT^`m-jCU`asRw#6+iC-u"k/,^0(iaR@q2T&fi]bz4Mw-!T``hSI,4^hf 7L'-7WEull9"LJU=~B8Mׯѣb{/'\K *jh4A SYʑLy][O%N)ڼ=bQnpU1b{=<󀓪:^vwDE C&QPTPE-EED) &bVC,]vwڽ;B_xv.ffo9߯KS)K~73ztrŻ9*]&)ō9[˶rǿۣurB3+S/s/.vK|=?kw,-NQَ]j6 yW_XyRY3{O=|O, ѽТbcٗz h}ysᤚϫF]?//|nYax KV.&ԍUG4~cѲ_vGv<ߎږ?z݅ N7O9DZ]_1{wsoC;UԪ{cȳ/mb1 ~9W)mWw3߼PhP>F ˙Xh6FY# '`nRDԓ]>eOߣU0]·.pjuXZU62<>wEkS>xoU%VuBcI A;FPCtk,܃*}j7w}{+KZùg-x}f޺ {VGFHo#{JkybG(V{n~jғtc1zWe7^?s}jjqcBadKo6[Ѳo@< G20-s;om|_NX['6rœo|~YVxiR倎t>غk]Z\}Wh'.=c}s) t'(`q\iۢ*8\yS,RP juL?h$hPm;W !T]+?.P;2 C L~*;9ܴƎ(}KC{w)`)[5 _ O9ɭFtI"xu9eΪ~Xp^Mz+WS+n|c[ cX-6[^Zբ`"`|Wǣ]*seteH(cr,g~1cȭW{>[E3SZ_Cn k (*WFR^&iA TR(W([ :(F#QYYGe%#m&__0%t&$ I=@apP)x$897^"`(EB03dJa*s8XR']6*&:mS=*o#{nk ?O?y=D,#Y̔UG ++/a#.*swי\vΚ|lW|@Q wnUs&Զvh5ZC1&"\>#1©IL̼kק'OފwʛٺvӀ!}fa8̳>fDF}xmtY>g8#tVito݇SvN;+xnY}ē{B>e A&KKjUYW9q7_~o9]}׾VU?—pZӏ4Fj>6]'˕F3~ FMxѢv[Ft_fOPUO=-/CzNב[=> \޺z=<,ntbYa& {eykzxUes٢p/(g ys,4IEjRI~V} `fLMA`p|Y8?p>*v& b ?r=f:osWF\4 f(a猹S/qt7 oܺy]'3pT#W@ZK2Ѯu܇.9x3D1 Tohf,gH0eD@2?8yY( Ra8' _ف?eA/c`K/ghgۯ y\V>s>6gaϠnzA*0^?xqa1A&OUAAY,hK#-,bEM)q15GI[B^(rQVTKյBrK ށ:-ioJ4Sm`*yk x TzJ=AFL- R ;AXuپE惺:"BnP9f Fh0>q"0HXHg]}+dvQ`[.CK u@,{mf#2 Q GqJ#'xg6Qt+Vng5Olk쵹oFIû.`5LBe2R2F}vW' `{mvaVGw6jXVY$IdXpc'fuiglsرYe8 feH]DG GK8S"5z dT|b&?q?kȇؽ_' %2-O)XɍΗ!ckN׼ FcXTGo ,Hgm4.8r׫7~OůAWuι[a}t囕^[Mɲ]Je+s 'qJEš; ξ⒑w9G=ꈹU4j*+_s͈Sۋ ;؁tA0mFQTB=#YA,0|Zqk7.5?[hl9??_mmZHQ矝\bpz3]7+6*^Os{Z 0 ^ԹڶmjDj @ya#JBCDdG]N-+*LV^Ʋ/_|h¯ַu>] F=P*3<~뤙7<5GpaV'[2u.}fG+z)WnG0w}<+; G @5 "'Prz-'|l`H^ oO;~3\|Ef d"^[JХ *E0$l(vIڹzү^wy v/}W>l{!*;|:Rc+`H :ta5 W""0E}@bf$DDDb XuhHk|ǔJ|K6%2D)* ľڠKN{**\Jv Dƨ Ecڦт*yRÇW-,̤zL= <8 UbX)O-p}r7-#f o0I %\9P3s f4 Ф~+_y/9VfnfهϘiaMDu o$Ś',ϓ$Suzf%i޵u!كY L;3 Ijk, gU9nyL>L}'-Vm2ޙuLn}QS+No괕!ZT,MYS:W@aSki~#e1 :AhM1lwQUi۬!u)crH1F庍"֚/7ňs1t&@Gg0{جKKk~b:g&BAEVVQH^KD!D,jl'T*nZgR?)r/=fNn[ϾrY-uSO8 Y6ɐt3ݶ]дyӖ.?yP!jVoW~]Bk[oy^MN@hj[Q9PmU[\9GRf$h4荄St/PB-P70j'0WLWV bgm*תfㆯVՕpkm:ɷrZW1؜2.}ք?_K`pq3`Uf[;s/Vq>u'ᙩK[B/:iMM6Μl}aWnq^T0]7ɧ.޻sN}qV3{n'DR3fLE&j 8WC ɇ^]0ۈAnfԦý7䪋渫Y ȸ{FϒK?hlؾ8+.0T@~`LS _#U$mٮX )mPN!aʔOչ IIOEfg5Ϳ@YryF%RjhV"R&@Hՠ")N'P|HўqcÁ*SSӤv N)6Jjdž]RL6%yWrUYbBC ^_1 eQ$jYXeAAAFr-xSzM.\$2<0 *W.oK]gJNJdRFy5G;S*O0BTG'ɜZԒέUqfh8%$iMP "HQA[h[5͘Q:=h)'I$Z-$"P! UJVc"JH-(Z]` 㹦RO&ϝҘxBıBb2q0ǩZ>={Q zS9^7F$S Ax*(5fFAЖ5 ͬ,gaԤ"1}*lh9H.i4o9g0Eҕ SizTIHT4XK&Ej  dUs*\Zf]^=$= 2yz6RVh.TM)hf|ԦwGo|ƅם~/2s?6BeΛ˔S[AFƑ ϼws^Z)0}䴲n~Hyᛮx35"iqGwv?2ℵVȘ:E/̛5kv~"6b^ct_`%Y]h5pT܄%j-IjK&-<,U/qˌQۖRoS--Rg=G]+"eU2je`={&R )&A1% 0pLΧm@o`*O(GP1+(q|ehIJb)9G%\z}5>egx+L]s}jQ؍b&7P; RQՒB(j464TSaVf}Tg1 ڶT-9;Ifd[+n/)eweFѸѺwÌS㯋EEh\uX~O;e% ?fԦ}df1 #5R fGJG}ͤБ]tCED2 5yr#1!EzMuQlzM<6!Uj"CJ8E{*w`ߌ5 7&*)^m̀G+$j[mAJx-^Q_a˰q? KBSʝ#FyAFLN(·8u B8 p<曜BFc7']DȖ|pa}KRܐe^XP/IeV1ZVZ$ɒ lWE7*?˻ {ݩ1T9<5o{ rbr73{)S5\/LhÛ4gy8^:mK.[?=CyeB.5v "5= l.k}]+wZ۶[ |@H@rYcq URq3ݽKt'x[,[(L6UV".!#LP|,ڵk{<:gSMB1m:!J%ۘ$!kYI o^l521] M %mF,iQ ?SѨ }a<ېnKhzuB">)yoW-8i p~Rqz`'j-5A%ٯrZ5{Ź&RefTjÆo~Hv`PfWȏ\h4RRPK&ިѓ3aC+Վ t.^'X;U~szC8$'!߰Sa!7R$i4cSS*˔0JQs9GA2\uS ]\5ArJ5IQlRiTIz=)8߫]ϟKYHWLId]} xwh(mWK%)k;SI4j5@ּ h!(ց6IHۜ%K:='@e/1)G_oQqQxzoKB p 5كi"z]:Xow5TC`LПƐTjTPz)%ÉңDg- 4kGav;ѿj36ud6(h.ߟ" Ϊ?E㱀  'ipycZ h!oV~9a|^ >9$9֬N7꓿M]USy=:YKkju 2menP>Szt.!UG\޴јmIh#/}E;2ġpEڸjINMD *@ 4H+=\!R(3%I+)pU[j.G⅁"u`\Ķc/,mrE=2զ3rԦ/2?#/2͘VZ6P&0U 0X;fd v J=KEw"PT eRڶK#u`l4ܭ ]8Lj$׿5ʢ'U3yb jNո _.k.P&^۾e46{6O)g^":K;w(;;dƗlH4~Q6LҋٍoL12HM9<@^PԼBoze}Hsvq xXD|{VKʖW-Gϩ@,2<@AFw8ZP7W Ya A 1}>lr_dmmI畁==lf6]mXjr7/򐛞?_^y 5 l(qpڵ6O,ht9fxˋ=[ҫ'7aEN! D-liDy`TKJ2~@CI@) 0';GH6ꋞՖʼKmCl˦$"'U6mt+!TMHDMf,|bsST9N3hn̟r]X}ڗ? LQ3Ux(FaR + ;᧦?zǘ*0T\ݷ[7+ $}zL9 [4Z;6<Ϳ41qoܹ{~{78qzzMRFW44%. ,&IENDB`nKq;xMPNG  IHDRJg&sRGB pHYsodIDATx^\7q$!"-VZ8u( - I&6l6]Z-k 3w?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~rPB *PB *PB _%<@ T(P@ T(P@ T(P@ T(P@ T(P@ T(P@ |)PqKXy *PB *PB *PB *}*PB *PB *PB *S嗰 T(P@ T(P@ T(P@ T T(P@ T(P@ T(P@ T(@Ž/a*PB *PB *PB *PB *PB *PB *P+O{/yFCQP4S:̠ԧ"?ҷx)~y?[[N_{/B<ΧH^VS}ueշJK))1Ll5rf_E&om7Knޗ3jh4ݲMd X́g 3p;~C~÷yOC*mJxjjTUy-eC_o3g򭼹@VORm;}0]o9 ݭq)hewK 8@[4fGuFzd3lB} _ .srC=i,?[/r;[x,yZ)NOpBŶw7?~>u%]SWpKEw(]H%n\}7ڱ[ύ巶v?mlcn#!˻.LXg+nr> ŜT4[,|\4 (%M9c`#X0S(iD:Vv#Be3߱%}!2`(u'D| ܳ~~u G=ƂX4\yc<_ 4?#P3Eoc 0d yTTԦh*&-[j%ױ`$qXAXr ha Nr%Jj+x%A?g9@߅!I'\T{\I-uUϊR'AEyjgœUu:Yk@G%]HT>nL(:0Dx4:,~CLϒ,RWwŜ_])jTѣ [_JF=kɽ!!m=AwP4/4`~tʔ];PC V/ *rvۧtFӯ>6[ՙ5jy@ LO׿y_n(!,Kd.3l{+ӅKNҌJ#Ec($VBnmkT)JSk$ C7H]Cdʡ}DV9 xRZeC>Q"yJB[guR2t;Hm-n@eޫ.u]fΛ9˛蚬I, N^Rp*_@.@]L~C&uc%4_y/Ϗn\e[5G/;J|y/TSS_ew2!%RԖ]g=ށUsܫȑ.V:kKmkY|~tJ B ҝ+CTgx_=V.Qf3>S/$5LoMffX3ө*+ W}@ ِ x87RYXrHr܌}q.ɇmC;/wc(fD*-SE>,$)]| m$. I4σh9cC<.~yٙF]3VPEP"˟r~҆b(*uf%cߍyPrNrڈoBh$bQZY%J\rBNAΗU'˭nM}KRDWT-eMzKַkGūPA v;aYSPesl).;P>|s;&Y…pʢщ3xb8jV<Ұ {NLYY+[E2ʪI>=t[hK}/† Fy+]X׿\bY+>R@7}ڀfVK6PF MQ'KNxL9_3Pz@1G9bvNX\dKX!* ;cDW[}OW^-~GC[-%$!G*¿ m G9RVa)isvԧVD_)Uӷκ-;/J(}\ⷭ,Vү_X%pp2xJ涞uʤ|G*SR0+?d6IA҈u1THtkac:.SCFa+hSDE$o*ȷTJqQ‡,tJa,&(UI..ԒXYASaYLd%LzRਭL!zOJmV}V{y(`?e|+K/<5s*Ty-aVdm nzV GwJD.(x{? I|Ra @2'-yb-/4kVvkoWq)" TBK/mɉM3-Je"|u>t/?Mށ޷: e+]գb!x 9P-.9eL_[?rc |膴pޡXQ Xz[*).>:{<=2aF8yBv9O\t&Tqz hIQ=ƨVU_xEW.U⋈?P~Y'"C ];dL`VH EX%- +PwW[ʒL{WXy^0y%a),JZ _-Pj*$!"*(Y%7fk^wSExze&/߽TFV:DdQrVc%KTS%ĶZ 3A <QЕŸ)u.1%ES߳ &|*hRHsF/HL$XQ?(+{L* *?scJxQ~* dz6yq|"XS[Li+{/YI7͓a9(U .0@w]Ne.^tdؖ,N{e)E.|hR͐-`U}mnr A>S#!? .AǢ\>e%/2GYKg9r}Em=^@x̪Qokd)%_kp\M!J/d p n9^hhR ^ iKR~T# v))[I ER;Tl}2t\$iG+iVH *-X4fu2b:_f$ecK(\~ DVyDTwV9Qf ޗbLF Y#AM )kp6ĥ`)^WuV0WY! _/;N%w? ޹k)h] 6 6r{ FTW!#p<G|b*H^dPk^`Q1)_pm<|/]M1הSȷD]id!bZok$W]  HK#%&#e1T8!~[D{ 2q\>7)z$$'L=LƞYSŒ(Z^W^7%Vޫ j@vN[c Tv$a>uL%98 I͖xB~@~ XPRFF+XUTM—:Kd`]`ȟKLiWrb :/edu^Uc뮾.!re~MXeAFE (/sdߚ*7V= D`W$n A2X@d0NPxHS=E/B0Gu$}{4Q2DJ<C&9saGJ~ 4ܫ|R4 ޫ(ʂ))W諸}yXzm%l%Ot@ā EH{j:]tIKAeѭ (݌h*L H=KHia@O鴥);H̔@^Q(^J: &1x65w/p+z4{UbT\!d 4CIM;|Gש2U^ 4DEj!Ć #S({/To@}VB?PڸtY(o\ŚGeZQH< V es}b{FS[=ru%:D~^aK~>o~(e*ѫ5ʁQVGM6+Ix|E>XC{]'wkPnaHN5 X=—BGƥ:(J25'տ2нlS ;dc~7%ƔE$WŔ.K/zmKw2EJO(t#KTDbu ;cWCHFC UZte[BtsB5CX=x"{[+ $Nӑ}/i:"{%j2|z)qfljű-\T O\ߑCH[/E*x]%(}96?aym)ȝpE(Q~.wY|饸lwWK>}y9؍'Xme .J=Oݔ0=z[Uh^|%{_Asd[)yS% yCmE}.C(ߤdw[uY{mGg >COeЍ2a+c [ |: qChQ1of/uoZ=zLU`gω/y\eIBoaUt8:fiu~P3TV/WFB%T'޺`^+^ˆTɡ"tZ.⃔o Zw“ֵ^G Q;$/PzuCx}ϖ_r)~Ǧ?b 6zMo-62hrGxcɯ{%ږ 'mD)-ի27Y_:o(?zmSFǃpfXF,g˅9i; ӭ$hɸm)Xktpme tDS1{( ߭A7F('rR|%;|m.̓/Fa0g2m|e>ύ?'H$i`r3}2|̿֒~|鿧00VHmϸ+d֩!q ʧ Yjn!tʪs(z `^H:ɧd=j7"kdAVyT\Mm$r9͑&IF}@aB8Q V}6>+rH/(eքjYSsT0Zd:=: Qo3Ջ֕@98U ^1EȑQZUX ̀hD{ٺ,Ԛ L˘5[IQ\ʒ [E$4wAO7dc@G0XPei8*QI2DM$lf EJPj$=D-j2Zad"^,?*:wʄH1ĜHZl ;2nRR-cUW9u/ou+vRB^`ĔKoH,|LĊvEaEe8DDXx-3jYTWHس` +z@ 7 hl|EJdIbLjűda1g|8 BjlH.ڶ,KQWU^'@ٝBpWH\v""~% +Jj|Mv#|i4Rjw7Pri5ve!X6?w-g\{ck`n~pt)ƾ9%;t()c[yՕDFf~,:E^ Jj >,%AySh,9JTX[E 6NF[&%L V2|_y„r1Yh-ݞԿ%2\><]f,fdeUDpտar Pu]t灅`+(.g"Id$Qv!ʛ6zpC&p"0wO͉3t.|D* XɿsEa,ƈFlYJl{&CDyC}AeeLg [zX8VtV̤b-rxb2ͮX>x*=LmTZTŸ,c>/e}cVn8wbq0DhR;&36[E3+{@fJ}DflM֡.tǞE4d53[K+ա,,u:Hʼn=oIchJtO捘#8lLTHK)_ͻ<^=(&ʡ)F .SDT(t*_NoL)B hTB2!+%A5¯ȶ3Z|jy뢱. Gd]7_B\:GTz=L.6Tr2cwn c1/U.P4+ *|>>-W%2V֨lbu(=^TF 1ӗգK!x۠t$2gdPM"7&͎̗4K9F% oVЕfnJ)S*dhZ*.XlFs~Iwu)iBtqg6U?g$痶\6U݉dvwcƞ ) QvjÂ%2p(uK8Y 6Tѭ /x 5[ؚ)Zb :n`=RKsr 1,X} &I4*ET$޿yU\ 2  ."?:OV3ct6HZx& H'cH_PiX8Wp:hTJ,=;5pX߳S? ؋V/ݙg˰#e^wHׅt"X4"af 9LsEċ-dŎ&+S_Bl&qSK[]c-{*R2Z3yb cř`kv0vx9pniN%Tg2F?J)]OP<D^@rpFvcQM—X4UE~>j+r%PpRx7[z\|$j%j%yǛIc Iq؁<5Ė|DE(+D A]: #FZ3K:c(κ*ٲULEbn HExJF@4yA/ -)A}C>;%O+,`>$$PrVJ+j ;6sI+I<9,`Uf{PnΣiTf%[CDCiB'wt-fӐ]dMģNR Zy؃N)iQ:Ju,mT2NY&CͪHe%l6@#4+ҽ|~/+HFɒo fK$y|D fS1]l=B%9i~ IEC-=~P_R ~(^2ҩa>hkn.iI^i tdL נ՞)co$LQCyaԩTe غB0ϡ`kk2ºWEu7Ju/Z@6X2U39X"ѽv$ȝgR0vA|hodb5%,:0߱Զ.ȾP&q كgl&䗤.h^W##g-V\ +-:h ր0As:ld̀]eq p݉KfV`4JPrLKG 'ʌD 3R N`zkCIrXS]ŹF"6y_MRݴ_*]t;DhqcͤfA 8dP 6y+]&BД =V|'!'Q9 0̺`#D>Q* @Y$/;stM@Wx84 ŵ00͜CzLS"r9ۋKW;.z>f#\JBgܟPҟUWa~7A'O%"U>nY'[?Fv9> R0QOd %7U>J|~/.cU,J'2IJIQV˵%2h;E&y *鰢U!b 5<|,+I(P6gkX_IC; (e 1o+T(`nƒH\ėhUձXH%E%6.ʌfH7y(r<\KUM0Hg,L>= #DLBWsDx4V6ˮo[q?alB WYI%SB=B)sa:ve6q˙̒.qS9K1bjL/7*^!Ee5#Y5K谢gm6q\l8EcD*i(5C T (w1P!gtPгVteLvAR#DѰ3_N9$E`H-P 6qhO3p}b{<>}[,~h7R|i1yRgs8MZ2GZXrCr \J6dLG2Nf(6HXDx 2<[qp3XV]ӺH-KVlV1҉~7A0t,5#I ;GbGUf(/ @12BY(RbVnz0y҉Vy-CVV, u6N"!:`5@Ižd 01ThVP!9e PAlϦ'i| D ͎jgp,.7`T2UFaݱWY{/ftU|R6}%Nsf>lFD`@ehh6I--ɰ2hiG^dC_ &_vNĤɵjI,`jYR߃^/q%єUk^)9螺CltƊLd!bA&C lii:$3L:ĺĸ@ʨ!iҏTx̦͑;A.6ٌ4}LG3oH]sWp&ĵ h^вȼV,Ni)KK'OJ$@T`'ȹypwՇB2,S%,q t+"H4HK2膒5Cy-I~3Ց! e`>{IZh'NjA7u3O؁͖G*h`0ȿbxU;M"TD^ Po>%^VS$t!݆n53j&tL=9}T){7(It,@C|M6'$`W%m JMy'SD*(dTz4-B&*a̓az]nU)/7D&~aF{s.wiKRR48~jF,.-aQx/(*X3mw+[WȽ9AQOc""il<!GIl$bL~X2m,ox^҃1Q؜'Πÿ S+b1!j)I!\i vDb-_u,?4b8 F#|"C+ gPt0R/jeQlhbbNbíIjr#(-ٖd_:eP _d7;F+K!k0qvcbJDzŬ?%iI6 Aos BeIz}(jVA,Y #1A@(#&FdON|66lXIʨѨAP,#*FB9Иa"_ggrk+/el.מD*&xe3۝5&c%, >˄lJ,0$ c԰8ԾJ>-F$%q7lH'KmE$XoBcuY$}n%ta=LIIE*Ԉ y|*X J@˴H8FX:T_3EEJZ_,KYTSߩ<J:wl;mZGzd #jE8f`TcJN=yl_y/2^2 b:Nf…L P3P+$ti+[T+r36h4 z ~i\j7TR?]}Џn~BI$FWQuH&+O` uOG!I%7&aWU#Z2R6I4U*KOQӫ[^UUU9|]DSZ~Kuy=5 wvG*撹|F ,V<(SodSy?CRh]z*Gh4't1|GJWbT˙أ!5Ǔ$\|!Q[%!lC6$35KM,Oi4Ke_zU^bjBxAyCS\G^;4bŋp& 5ZJDƥSĶSxөq峉cF C'4Oby*}so~Gܙ-z{U.dEх* 1ֹk%fuDSkl\reBC|{y~{9fԕk½=wءikg(J:iF|pXmy]i\Bn&}4nHoM>  Xλn/A (O?鹃dmosɓfYBf1@%P5 rd @bF9?8XW-A0Wմ؅]Nf;qk4 6_Wiɯ KE.Te(Y!fCGVM<:E!<|e)ƩBrg]E 5` AFi -RcG4M,zok~2oz鲎 ?A{_7'~jOO[y6Z2EhDH4DBL߹>AT^#+ <>_]COS\ BRGٶ {oذN-z-X3"k%2AbIJ1)HC)@+/" T [ j+_oO(:E~,Pn2<KHWRNvxYGW$޾ۮ7OWwd0 ̓g ReiyGAR{ b ku ch\(|5d0t*Lw4u( }(gR9OJGc=Ddmi!io7]5tσle] pL::D(IF6f8 bR*B ~>C2&x鏮oNn[CwFBu"U-xNM0v;2w Gs9H"},}?kc'Ç;$'pig9Մ扅ѿ"b!)t￾ҎYVBHD6_GA>9~< N;->cj_ArEO?v> VwvwW&w<=i Q`rO޿0?H z}y3M?{8,)F#}-[荇ͭ&q(}Qpڍ* e 5=)/RnYe5 $7pu,"E%Om peuzm:- .S!,{O7T{ \H!@Q_px+5СlE x8d8;H<%U*(KN||g_c:r{o~eF>,IS-K`)ʕ)nZ" MH q{<JOLˁL'y8U N􁔃tG*$g(:ۏRx\BX L~й9sfWW/K S;~hyGІc>k=B fT0\k3Rߓ6RF*觿4S[IJ8jdY2Eb,SB2'kϡ/Hݘ~w7;5}=u764eJu}qI:6P-;O=I'cK~/?r$?s<#lq(Vl6 Y^}ɓ'GHdܡ8fщ4(d;7{ @r8Y3F2CH&c R9;¢e%XU 8^tzK/l*q`T}.bZZLҤM@>EfUHA,xb .H]PQ=8<qRJZ:gq++ؘ<2e3U,PB 9FOX]2xLmPgeaL^䄵#!J s!_r,{n;5HD.31т)mqB:NP.bQ{% H|@$V #2ʐ} ?>.%v FUNZFY&3,_/ M RH^HGz{CV㈑}vS"YL']`P%I>,TʣW*s lo./G?dANCl͚ц6 X5\(+xżM@i% ~TwJSY%ORpǓO䈯6$=@I`'ђ-N ^\Z(+r93"b ? Q`fpu:?M'x#.(qe@:6>͑c'cn\Tpq{,glaem 'W0vm# ˏ=E۝q&Ҕڙ*H E OJB6_)ѳX‡di/rEPwe6O;1l ULYC "[0 eSc74 ۰m*jrR@A)W` k)ȞR vG ;5Y;3F!5t##bU6,?+E23`o ʎ6sM2J qZKV%&[XD)7`j}s:µ T6 L t5k4EDSkjj/Zy#k8LFD*sWPQ2+x`ewtRM{h{ϓ=rA_o )2 ĺdlQBˡxEAo[ҐX  y,WCciR }peQ+v4lfPk*K'sahQm-iBr#`,RM U=$ E*&Ϯ z2V'b|>,!z_#GN#dG\8,Q@8V.ˊ gV6:^^Ūز`L=4Δq1CU^/D9kZ;@En%yэ(T"biT|7t9 DXWR4AEJ|-me_qjn4Ez[mH)AhM +q1N Ņa2E0iN(PaʊYRr';XJ=I^-"[x@!EKBeۊq < 1a}#l7W+`V{Kl'wשǵ4wb +083ξ*$ di2d洝v1ܓ÷]p߱ cNn`^j@. Dymuڪo]kDf]Rb)f->|5MÛƴv55ď#ʣθ'tNsrX&navM`֥ 4ps5@`?0z; k} G ђSvN6k#p!v45ac8f̥)R!_[N7b wLzwmƺcFgz31vys|]ܬ5;7:&ZϜwGsG7J-G}ΧT]Ln.|exjUu!8_]  =gߵ'ݯ[+4F {=l~õf1=}JuMm?EbTWoՂ2&M?2ĵ\9PsFsv5p6EpwjzV Mx:aHN[$Y>ZϮ3jƼ&̟/z*Lhꫛnhm !1d] v_SUU1ͅ~tBoh5T^k3wQWjF`3p!6Wu5UȭQ'4.. ~z3";걿m M%#l3w jY4A ;qV6ڜ eWCU{Lg ^dB㱗Ǐ9 aⰉw>Pt}O`I]6wÀm>xidT56dqQ;5:QGhØ7zau,.Yi;vnT frmޚEPLofVk1y7:xFrl| ľ3 uZ,m8\J;z{Og;8;X#:x/zm`=I24/2ɦ\Uw߱7Lt#[(.3/9qwb`@;LAKXP@C唌JX?YW^MxҮ^s_f~Y^¡mscN9/ל4k'wx;qo#t_iԁ5i#qTgA;ꨣ6$}3vy/K';W#MIlQENuu5L dK&b$ L2h&m:u/1=jko9ft.t3Rek&e wt0F#A8z7vosQ/w ܰ%V4&WaZN<̧^y' 6uڒ~ 7?򈣏{;7.Y0 Mah^MVL'- aBJyY#Oorӝ>to{^~GcH,] ^rO9 g񓧾9g~N>ꈓz{c"/OT-7k>vIxȉ{Θr]SϿBiO4cu4Uypo]ǀIk?^I">i@B  L:@ƙ5a \zu;1n Z*QE5ybch'[{Օ>spwb;ΐ yLHƸذ鲽 m(osͷNӘEƙ?ݭv>u骕/6/ E5цi2r6DFAt*z\RSN>ƿ](Ͽ`I{<@9#sϽEzA8q='Ky[{kO <9t-rGy. #yJ\{u/sm-/=ˏ?t%?KfVKBbh}7ߚ̓9G@4!ugbwۦl:ooD{λ|=b&uoKO?J[z/%n>{ .^}Q'Tc;W^|W[NVK.^ƏYv Ցz6o8n$R$ CY|^_m}HǓH"9Iبg4am1sܷ% EOqԉu_{G⅋ѾwؾvK2~@4[,I mO8_z嵷^yrCOE g踎pWk/Eҗh,rz*9b]Md>{z6b}9x> σ{H#ټ;-YW^ 5>̔$A.RQoSN;oa; s?_#:[EBs{7 :sP hpD25i-jڵ=O4hG~Mm毺wv}<8{[Tt!| .eOG"3w~|֖`c @?np {#qo?5npK.={!_I;/={w gukg?-Bm=l!n .! ݾsw_xz 7K`BCNtEWKD6f:S_x^|Bl-&@9n枮G¡*܄-iNIۡ}; DG=dݾ9"i3gbYX5sGiٺMpspwm łW]SN{~00ez;nٌ:|`_ DV* d(C؂V<vuR9EcA2AO*"7YNɯOI$`O?n8d8{z~+[n+}_x]x $U}oSO<4٧+6<Ci9}͆/rw4Z4 de8LhRI`DmGo1OXru~7ol4ݹ`D#3{1Ҕd ttoxG8c.sK+1<m+o^:F7$R73TGwtN2ɇy]/ZiÒ d0BZO25qVO=bqS֬s^_M)r@YvOLt[[&N7˜1rZӾvN0mFC}і}+WB%FR!AJ{'ocG*@<'.kPU҈3ӂ}Í1/ܦ9һ+ "b1:=~y.qN9ERH|,ww7ax#TwsKh8݌޷K9+Wnw)bH=9c̈́͛S&<_Wڨ[ѕH>toܩ5m=D|õ Qv0@r;kZ[q{vo"{L䱯PCQ£O?(-\b]G}6`qLi#jӔv߸L#w-)^t>RX!%h܆|_֣iξfg"-:s-]Oz0G!J" X(R,C(MLTd Io|s2㫧G4}utӶBZ֮*Z0ZKVueBkC17Iᇟz{|'xfg@}<Qu7.K -lN&'6 ͵~*[`UGs/'J5\dͺ(ؕ @WBnߣ9 =p!)ۇx.tߠ I'cf$nrݮWEV/]d-]LB3OU{N j >k7lq[`aL]X7D~/w'wQDz)Krڈ4.hoKo EbF3tsq~ÚjǍ>ڒ DkoW[8Yt-&7ɂMsݱz=8:.LԴO.pt;wQ썚j͇Kķ)j𪮿cP]]; gM7`h`HT1;#ADv(Ue\5-yMqL{qE3$הijiP(3ԏ(`+]}}v=='kE˗=#Hcp31IX4P/Zx 8[~[_sZ!uF0=._:E4d gbq5bZ2h|S'J&6Lٮ6ԷqUl4j &8أX]u枖TN{2笱5m풑WBD3L%ݭ^yd=.Zoʖc9\Kd'$,͕JV3^ejkn,=RX`ǐ ݭ۬9[2^Qֿ7oqgpl}/hZ2w+bIn0Ef[k[/' e8̦thLײmd,m=Knz+ ʒV(d^x}ug{}Vk1(2ocҿf{kC&}$:g N9nN9}1m޾ㅄ$Q2KZ%ϥQk)k("pLNO\`1s9Kq 7&7Dsc]> %nL!͘Dj~¾7[br[͍X`(j[nGhp"$41F|GKةS2e0uuo($Po[vǙ_ڗdKfNP>7;?Sv7uL&hćtɴ20Š|x`Nk.hy9?GtbAk \^xF kcጔ՘LI 2L*"wyOWNa9,:LĒKr(7UW~*E?ȑ4(Lڞ6?h 'ؽjrPx LXnB\d5Z\BY&cGKٴyܤ𓓉սFQS=.c Vy5SJ )G+l:[fLe8۳d?;\㳣WSM4pBЄ#1 .`s(e( ՌҴ0eZ}p^2hGz3nl\ﱯ[Um^ V'I n՜WMkwɷs $#*&`a}c{A$26Rl7F"#HP:1 Q;lG `bĖW }L!]3_Ά(?j deCLHc;+<;LRNϰ\R%BTy&Cm\*;s z/4jQВ]4pu`t!75糦Rdh!վn4̞*>3ʼn=׬\T`G9̔(a/އ+P)\,9K'Qpc,uynjߦ^X3>vh48|em sM#dl BlؽX wC:XGpn}͏U`烿<낽>e1fM9@3wȃ < Rs>F_468PY`X60%ws qali }卮@,|>ҏcޅdӧH[S&k]01fLW 6$f`g(z:5'4/;Ȟ9 U7|B=l ,0h:Ee#]XcyL2d  `8NĜL͛zB uxiߕ7c4"6ף+Y-N \ 1kX7nlLj mDRĿ)誑@ JZZ;Ի[ (T/(1!pN])%QFǼSMɣơ ǦR=LYu Gsl:No4Zbgsy*}cr4a壈7APUxw{jFabʘKs&l8GR1 "Fp/Kivo=s'Po޻jtw8#4Vfe"p Ǧ :Z601+fʤXj9L=78Xl4F#d*J K|bw;N+SeF<^)IZMDRe`bȺLI C\ 26)p \z*u_u[jh%E|٪y-^m1wy$f?:ƺɣ'>^5TUρC$Iqb\l9iv҅]q%oM}lb175ɥ<~߰Z)9zB<C>tNTX[|+uVpЁh{EPnLw!T7sDsohlBラ].(edv4,:jChp4DI7 !`)!T2-`|^-b5i@ ';[ U8eGGnZʰb.v{X^e>r#OSLMVaEsYf1{ر_t*!}b*_Ƒ}=1fT/e ._;##C. 33M3cj7&R'k?Ad|r`Y%+JGj7om ^ޱF 9bdeB&fʔt1ģ=ǎS`~ztc:13J(#V_j&fXe+0L"q"DwdY5j9g{:xGbfls f=cz753acL)bP*Iks6k;p,*0/3Z\4!qwwtl|z&Dii]:Ic$=;|_XgW`r,N8ܘHR^&̒!)@Ѥ Ee?64RH4AmiD =୪yZ$FZuvvl;ѓJK)I$+=>M4r̄],^zbdo˴AC0R('TеGjYp 7Vv;x9~yhNΙg)G OP'q=>QE$i8sQVzQHsks2n6k6,]0OO?ݷ_mkin۝MiG#Ix ]S+8c nw05;n 8[?pQ;jx0i%;J"h9+؏N@S4/ 0 /]g|Ϋ/Z%M5bLd%1|tf͹UCa Dh¹8.84HWv9> c  # .}$U8T9ĨsQOV˘q-jFTO"^yp<3;TΧ,ZS I`+:mYݍv t,c`]W=ܻ~fӺ3fE0f"1 !&'bknF$xƌ ݽ]݇w8ve8bb3/u6F6F"k8`zPQ Rhf~{c͑%7_w ]ܫMu.$}Nǰ5fC a9#=$4 #Ob23ht" YpVie=ȣ edNۋQj a%:% <H2L\:Ky#IԡQ䐑hAs*9V*"Ma:MͶKGcM-[]vn$6AT(̘dy5҆M&_qZ+$,q,kx1fh8$ş%B[xFLp¥Wާ\lݮg󖔵g&XsVO'[z-__Z~5?q O=&BYs"bNf,",Vk( F ͟,7|ـ>8/"XcÉ9a+)~eQ*6 i*j7mV4:X=BcJ/]n?K=/oǐ}BufgMvܛV7/ZG9_.dNPPS(m<0%l4b-ƈӄJa%hOb?°Mu *Z:mCCǪ>GnX 6?\뛻CwZ_4鉗c=ipōwUg )v G2saK'aKhѓ7x솹WD<y,)p9}p3$[ˁc*x,ei.}K5-g kwƧKhY Vf`ģ*+nwև"D1cݝ7xWckP4rdSBGk_P4`LDy{X֙/ԻQC` S#?4+`Qˆ5M2qwi"eu© vVZ1:Z%pPR07o1QP1.@6s>ZO7l^MѮ1q:pFB*]@$ڋhfpQ 'VOgmGoGǂ>V$ܳ{xVcɢx >}SM*mth6 cqR 6uw+{L&A8_I(fiTj1;l~{MGy`b"\zQQ|qp?_;:ӡavk8p/.D":\Ķƍ[5o/Xv*j?eC `g/P`/$MTMUFZg[@D;Gux Ĉ0cy'W^vEyw42kߜnhuZm({)yEjRn|*Koè-4C?\s%|&Z%{ *3vQ_}mxQ<ղv}ߘx΃N',<  `\ 81=o( n H.i\"xl[ F2;* I .jUm7~jcW<jwtMd7m x}w I<(+,N\CrR/xW"zdzh/ڝV揀Ğ/CH>3#ZГQWE4]{|ĸh'C\_?ud#xFhA< $A[_1ۙkV1U䩪N"I\I7nZq wye~G|nOS`şjo_ wլu8+OqP޴J)JcT+V #>漓?%'uHdv+{sOAg'T7IL'n19`W-/Sz# *]Ĭ!AOO? Ft M8,wdlD;a'A3ϕwO;5qr!F0p>  E  m=m! /g5@ 5 8A mp^H ;a G]?۳_uOkxg/ͩm:Jb0Ad^EiJh1iv{N0;=v}ڋ9>A ,n985>PP6xbE4YgMSD[x k+T`!2/9q8qHg{l۷{꺾yco4N¡}s5LsN;κM<`v`P 0}woN(d~ڥL9m }Wb4;$luC23(9*iy !Dz(OVlOk}2эsg7O Y ˤ< h 7\m=ݸ*_?b1 K5yk'Mq)ZQcFS}w8R pٚP`!D b\B/oroΦaGw4UwWQ'|ݍ˗&=< uID-5;,N9i:"F!Ter63bb,Һj)ghCiI+8p窱uhI4Ouۍ궺m-ipUd; rSƅqA39vqNi4q44N0"jݴ~IFL,1c uzsfO<,bEˬm0}qH{敄|0qUpb]4|4[9 S&)*C6dd1Mcs͑.мէ>;;',njGV@̒g/[5N8qx㰚`=b*ܪSa"ITa1V;S;|nrGƥPWLayb20@ZL~%B=˗Χ 䚃s;X8? /MC&o/޸kG0cJaku 3-qİL*i^=\˓IΚ3n j1 xubwWRl2\v0)y%8:@.%-` f;lESE{ta'?J ޚ:|nH tT(Ȁp52ꛆȗDn뵈^gWn|t25V3OSO9h "˶W8t.snH| P:o ;?rr KB/1i HEX,jdee` I9'M?fѷI(3_{gw)NE 5t7$*-L!:ӧHVZaٻ?S}wWLqw7nn!`E>%)>:jjՌo 0@;N;5h> (1Gu6'y@VIvArI+g]}&!5uı$JҔͩ|LBpg:mv0U]Cm"o;,f^ 9ɒu{astq Ғ6&YGutҷB[ADa0#)tcMiΞh:9u(;p·t=}\ԓ_u>*ũy>f'FS:O>q1v-o;B}1@ˋB:xh-joqXL_jRJ.G[KZ\Ldg=q_KFnrԜtYX]ߘ/Akn#$Dt!Fi4q^Yx!VGV($4 u%w ahjȂHܾ 9*%;]m#v0b i_0 q$NIDX"gxt΂ fn>rwq;ktu$Q:|s>}1J8 ke]62v2Uء`0ڙTxtZ$ 6KA7 EJQ M DqG]S&wzo$) nj&O8(ÇWQuC (3 1L=`SKG|=3+2MrȋSySpGc"2RP J#FS8 }?#AmGf{'= !D>K:]en7߸?lԨ4{&uS40q4e:NRd"MyEvqٗ`&ğxD ?^8L9" &`t&bvˉC9U1z/Tcժ`6lv~¸q/,-q9X?^cO^R"hhGz. 0\54aq پ{iIX#VgAMW\uepG7ǿ{14PcWʌCb'梵 fc ns>,^~3_Gvȇd2ge1n,(uDz%& t*IUY}ɥ^q( #\n_84s=EGͣ&Q%f^QüaӪ^z q m%P\P#ڡw/:rPpO(<#QI6ZIB0VZs`_^C }\Hoh +[t(uxI!A5Fzpe;oFC%[oӚscg8/F1ԽXK-q~r)pIg2hLoVPcu8vlrfOEئ9tETzۂLdm-Uֹͭ}Pgt[;==H2͛sLO&ͳ7S-ĦPP23oΛu 4~Kot"OMillҖO77#|7 Ubo8RlO.xR)]U/٘MBޕ_~%v:YbKk+vi25~xywoWooҥ4Zݑ48▐56 ~y緦6EC.mY>Mpwؾz9?m7T<ۭju'Bw+oKX2o2N3OpU[Wwǐ ~PdM7V?۽mhܵ8zH=hԴ7`}{hGlNZ/w.mLþmjӑM%KYF.nkZw88{ʍoǭ#Yxy*MယS.9`{ytr9SM澍t=r5Ie|yhxy6gu g*ڄvhtk'^2 ŃpOP. qXzb%=).T6“>\LOo)Q;nmq\ǟ֓Nuu/ۊ]4{'7D7Xw|3VF7Il {,GЬϦUkLr%ҋ`WoNK$Kǀ} T6l담ms9e\ڽêO4T<ǵ]&#Fgū#˗N7Ǽ1%/x {m/^IttuEK« tk2i_A!+|t6оq΄QT5!>qs'Tk9ʞDw'5C!=ᔖbg"d:٨pa[#ػyذ yJk_3kD:Rt_Gu/?/5z$"U?iBhGWl+XtG_Kg]7/^2;?\l^yp 9y /,վIY)p{g/=GƨɌ4Gb_G='ԷaYNIlt:7J슅/G+mvM +>̄#+-3hc{lwm,mR-Yy;]WʲG:VϞ9} g.+eh+j7~apbql0IvnotIgu}/,2Gs՚k>cJ^}xS_<phٳr >% 0cb/ʓCIƥwFDŽk׬ک~pyK>]Kߝ6fc\,n˵vmJt*=N;}UgKbkk{,MM WzҾ Й Z_KXSnK7[Jl̙' {ESk56~x=s+ߝ ۀ1E-pw__r"ǣm+P mO>xCµ C7zX ~iS[k7,\}i5-;[8ڧi<7^p>+bLܰйt5n稅7-]=q9vtz\9?۽j!MXiI4]1|'d oű5Tbq'uFwoOg".27δ>H CO8}ZlĘ VG__o*qR0v#޶lؼkf-tDӪQm]d|+/KM.ou\pml8'.8XdQjhىфƻs[-`h_SzX~Nno7ʏ5V#Qi"[lpXtX'+,PC#csM6mlMtn}gρ]7)_WwOŭxmޚD-Y3壕Ŷp'Ғƺ[^{y!4Gթ?uk҅ǜx-]m}@p_WuƢ ^V䚰r]7Y\pzXb`!^u=4Eh z}ޮhyݔmemto_[1ږ^pO9%@l)7v;fQ^۵y4iCg'ؖdͻq'nV,ˬǟŅtO. )qCl{8 æU[F.`骥+p]+pɌ}8+T,nrI@Fmžd;wG7LvC-h@q#,ݴ˰Xd(HILo7J^w~N0/ E.Eǜ|⦶HW_2mݴi_9{]y-Q~y{!u]oՙ|OϿ](,ڡǜ^v;w;y屢Ӆ65;;hâh'׉"hAǺ~,΅(E9P#9ẊV1gEr=t _ϊv`"uE[\6ҫԉ˘v2|3Yl>cϾswᦧIVfa7MJ.xWv݀EL2p,  ԑI!WBA8SUٚPV[C@Lbk>B"V6HgR$v`Oס]ƴT`TH{Y!8V-dtG9g:h3`a7ܒe1jAf)yFBj!ĎXb +%-dJ~CӺFTlF{dާ /#ĩy\!c vb/y9e[^/n =Ɯ[rtρ5)bX4j8j mt}*[CUE]8%䞭PNF!, Y>1-F_5L̎hZ^:3x괝S BZR(\, s44Gl C6/Vp$~x7D7֯' O42l^`N!MJjbXEA|&ANH7P٘PހnDf#EQz@\Tj8"f5"X\4asD @HK5d{Y*mvF06- 9lE_3wP )Gas3vhG:ÃP̛{c؜55Gy+6>COúYR` eaCkkn{_+~ϥ]c%Kf!HtGyӽP>DJ:ʄ-)ґ?ph(ѓѵbI;D"<;BFl'#-`$A :Ea+e&d^6ZK~Nu07]HठKɐ̤z]<[g.fM=}6ܮߙQZ3^ tQO<ʕ P|9N]6R']'xϾ{2o1$tZtp oʢEc~\'sA$vvèe,HfG} g%BS<?ZzilWڹJ6 $U@Q& 6\Qm_6xKN'~qʩ*]&/'XNA%X)jIY$ oʠf9AeuQ܁j(/E7JKrANq1=ؙb>ٓE(%a DW դ$eR,NnB#-ɧ2LPWIԘC5m3q*Ij{ЕxYa͘{c^`År4jE+G)R 0݇%.R-EwU_:M8AYb \GǾH,M5'uX`sZ)S8>u^@PP+ǰT4 j'Aكrk9[sBnd8XY_j v:Uo"WS ^.+ [zvO/܈\P6Sfr-z*C7X (WPLHƤ>SgkiND՝Yp]q3#߼_ڜjJ.Lxx>3(I+ɠHJh$ sx΋/8S$ *H_4u66F`NH 72cB6H=#Y! DX+z\a;EzvU|wf*K'TJ+AFͅP%_]1)(ӗ"f#O^#du>M3pGI6KbHrdi3*NGitBlY,]Eq݂+3Y,8jҍaT^H$D ľԴ T +:PچJ)dD&;d]"sXhwW~Tg-J(JnIT;BTʹDiiӦo@Y"䖔(.P KRViV^R)ნ[ȝ[+}¼TXHW*k uA1P%)BE։Wu" 5zv#9 P""aVlJSǔt_biY1HS8:g71bJV/e<>l9u݅y@v-BI-Ɣ;P{\YOԮJB?BĞDΟ1hEvڞ(GE9PuG{ M[6SBcYS!Go~H34G[V΀oa8MzS%@Qb䲠k*zTZ1E=4 jTLQ- @) clLwBJtDaIWy>nzci&B⅐;`~7$Y?OI魷zɧLո,A} ]~'xzۊ)O ljV?a Qt1/9 ubj! >N`3*5daV{S6q>u׎; _'M8=2ǀ?rֱԮ3"ďF6t=RF %=DΨ94ʩ#Rd$ccP1yFRw4C8 '!b'n [EAi5*1^Hu5lHS`6,ag(+sv>AHI@2Z0pe)Ň,8a8idn< ZϽګlN24$ڬnGR2M?kšܺDM.! |jc9d$D*$fݹ 3!Quq|@z/[57t0'C'h\ u̸Nk"#QVx}3[ k =z&?/xٻmu3zGVZI>1]@l5xl1jy0ёƏӏ9j]]Շ6o|N,NV&f@bDHK"b ƈIvIk36²\5-?$ԈgSXw!#hy14 NF&GQ͔szjRLj9EɎ86Soz6lIPWs1:*Z$Yl{y>p߅15{g0QQγܺBYȀBCz]SiЇ(mXm3ĵqܿPMv ?}XFU $|9Z [+Er *;fr|ύ9 WHÆi i8\]+fA| ðsSV3Z|39/г T7;h iw?{hEiBykӟ zOw}S@_@mPѦX0`eɆDgI&7>!F#ʊYdg Rͽ"#Js 4(r+mZ3 I fM~V۶h%[y{"QnaaúR- "vI3GiDޡMPo!!w߿=G %=03K ?KKl6H8R {`ödCb@Ov1w޻˯p沱вX-`ؐ;fbnU3ԙA),ʅt'y-Nets a@V*$Tk는t[ LTEءޱ+:zͮ@ fz*\w OV$ 5Vߵ_N>E{E.`$ZYivfh%ch":IN4mf!ddMHMtCj7%{41\ǚa鬗ed#)͠HjLU҅D7SLN l=q9N+Odؾ2kƶv-wnwpG1:Q{j¤2 BGꝭrIm4Reȉ#쀄,tr|䩕2jj< ?e] &:PtVҍMBOㆪiҼ|:2\M:+2=&u)YGe/_~ |CjV$d;4fk.Ƕ)$1*lWThڔDh}C SNS}3O22]&:Һ~`M\ rB #N7IPZ2(e'|WtLfuzŀݣ5('0@|{՛w}~?Hu 6@D*u;plE>23e,8r xp< ZH2Tm3*"\Ml,WBw%C4΅ut.hIkqU 30%c# 4n.0e핷q?}aZ HbaG]A.@@ũ~ޫÑu" s\y't"=XJ8jzЇ#jO5&M'3>-$oaP36 {kе< :.8v~7"Ymip7\Uݸx{Lli'p BJ>uh{b=4Oѯ~sJ;0DfĠ-@lYm'WRv,II `A-b^P:bC#Ñ)R *W]'69B!X.BA2oY 8/Ɉ@YZe U),CFwsBIs0"U!k$B2|zȍtzz$i#5TpT/dT,*uz- @T>/TK-Ե4s)uef>ɾl.&g !or -\C6nD>:-U,]2R@r!$GeJQuajՏRQ8s 䂋+͠KDH1jkĽOąǑy2j%a.^QFfj̖яKtfȚ̍).7p9&tLLT߲$YZY.zL@g"^+O*u[&zS"fI kJ<ͅ]_ќ5 ̵PvӼ}phs6 -:UԞ"GF]ǘ9Z6ԤP+`F~ gETIS(M͒ڲЪ"NcX8~}Zm&-ff\{\ܞK[Gd_~H`EH#Q>*|D*-4̐ ɼXf:t15:7G.i5ٳ&2NR\HRPM=bU,ZXfX -w" +|f}9lvܫf wԓ;dd/sC: eB@_b.6Y^K 7pXHc cFhVjTD#A+g v.Il[#죓+ ]FSieiH;YnK;iw2TX!N`*͵cwۘA5BB.n6H+ !enAdf2 +.MUGF si2mI$̋0.O".7֙Z* (k+&zlr{ShZRA(}* g+t]IQ ?am1{8!%:Ma@2P\qCEjҶuPSHBpIYsa) w[ <Wd`erªU؍>)}h2אr熶 S6NtU%(QȅB&J);6iLIQ (4K̼n91|v]mn&"=,կEak2N; rÈèˉtȶ4Sm{jK*O:o(j ]ǔnm=zbLoآ4å=m q$+Y Si{c'M󘚄iP\$/1 KC\4e)-CVцlS}Q,iASvHCudfVk͉oˮ zlߙâ],NN^jT$q•5GXbt/MhttgNg!01l`{eO`BEuD Lu~G$=GMVLV݊׽Z@¶m-C{Dl(jUٚ+),uwkS Z >PcEXn*%:Iz9ui/rb e"JU*Wv|B.akUHo M|=``M@)Lg5A4 K""Ji!sl̇ -0z)UJVLqSHHEr7 ^AS1o^(fng&2x4'׏iLieLh.Dž U;t\֘؋=k;֜qZEYZAZ]2WԼr(WcRj}HU!?=AUcR1cOš9ɲTP*YV(}ɐ5T"a#I $La2zji8E` t2RP)+YJ+!2݋{A]:C49!E z>"!JIz 2-Zș}2ѱ,O&GF:R,ՃJ|Wij YDLcoD̫:c*T'U5FAYDSxVBY/^!1&Y_1vOJCA4X'&SRT*NdW`^,K\܀(3D,2ɴA 'ZGk05Xg˥8D3yZͨ1hTjHPk*Ф[Ҽ< UI@$0 ij[˪;ZkI):K=ӯ'Rh`:lzT 3\'GZ)wI kWjPbJHjWZbv ]}dh{A~Lhyݜ-q64g`Fϥtd!?i̞ 755bPLni )^-*)+!4eMf mU3_G霰ZZr(r\bHT\{ ECh#[]GTjw^#D Z50DҒ0X'Rĝg] `ڶQUP鄌<&%7nX̖!jn"9t11ٹrTPl҅+v}i#2Z+PpHL(y< CI8?7}iB`֢\!n䷩qdB qA]&Q&&t*AnrICDi@v;L}0ceyԑi> ; lʾ;2_`>NԪiҗY5:1~ Iut8[h:Y-:6o%Kά"DyۏZnw8i薈A9SԠ7{}X(im*GֈkTfE #9Ġ3 WFMe[j*6QE _Vm}HLh&UX! fV]$5101!Mm'sI&NsrVy Tt! )؞bduy[oU> L4A }e#@V `!k9`g+噤ȓRMz:ց%YSجSxYj+l:Ĺِ̢w I&/F8 =^r5]UcVM.v@V!Ij X9NkZg)$944UV'SU`TؖťM2SJif0@2vvkΛakd1SuzJ2lưvbŊm o y)jm[օhuYL$`[Vџ ?0ѪQR#>? g|{[n]xi 9<|_H_~ l޼'C+ #lZmWV… 9Í]Tq zQ>+ևFg,iHڏV't m"-<*7jF~SBo%vX [!z|g2K #ZUspNADa)#g 6cT bBbf).hD ?J R*V "ոTG}/T--ɥ\9+롬B&*xZYN'He,3x?~!Ӎ)7tD#ƸF봢2K9QRA )!]o8;SHXY_jEd7ge5V`9N>d@&+] R)lۂMeޙfTzK r׳_lJ9],LPVH8Ğ^ =>mbɕ&1*6_#):11162'Op~#jLdA j }`TT4ɂoyD 8- |w$SD(a|6GA4BY:l:+G%%?;1>2  ,dH 6jv <+*bܹ/Â`t͚ŔM\tcf o8UhX]msK0IiLT&!g^ tQ¬7Lo(MUol89:;c&Bb|wEOZE4p3m Ӯ Vo2@+FÀzݨm} h*?<2JT@㿔+x䳊wGi+ٕ8+Ŋ y_غq{͵Տ*C9i]9T3ͮ}'YAa:&}RLBYz#6Q[K-(t8 X!SF Ar'[Yt9Zbc? Zp*`{wB0Yӟvꩧ2=[>!}kdpoC`N20Ʋi,6QFT1TrNTb{$fM͟pĎyQZ)}s2bX¿eϳkr ۣfBI(dm3+jgC%TTEh\ >Bځ6HB8%i/ fp5ZU{YpjұD4EpuZshbKc!3lk,XҤG0'X괳3j"Rc&u$-fLUTOr,KB^IP| eOZIW]T в)DƠ*G l(}q!RbEvtG1.%{M@D+wKғ^hBD@Hƅnr ;aZ(%\AqU\fJdd8Sk8mgxJ1<- K>^b&"5RMZ6ESӰITGjPB]¸~u>& N,nxٌ,oB dš.C">SMLdk]3Riv:J`4eU- X tj*zlL,2VXZ[OFx WʫO>W9Ȱ, T$қR4cL>ӌYfd@=je2*̃Hh3J`Ma"dd)>^ZI<ĶPŭXeEV\n0SVTD A͸pͲ qlZŒ||"X8{(*J!L$|,a!aآ%UK,YUe> l #=T{XiWxdr[W򃈕[E@ƒ[D9`Y@gX^2[vb/IP", Ҙ #B;y )?ka+e!.5zppzVCS8n+ vtظjZ%jZorvplk#A:gdu6¡r(h5 $S_V΃9XfTѭ9W\?z c1{)"=YKilNYcױ*# sV JφH&4X;.6+gsΝ>aOTMWB3-6x28vx@+O!&|f9AyS zQ Kf4ͼOi.TU~>>mh/ښQm`MY4Chgjʉe5C3,.ؤcq)+-VF}jda(BZu`BsF\eta!Z֊fVH5fhE[@I\ Z HfXN (!n+a:5 XҷȠ a(&˳@\hAr@D2e\x–vI=^OF<`A4 \O"#_e8 "U"B&r óв/aAOi5d){XfN =[K~ʾ'#e( SMdaZDQvSSX(4hɘ o{%JH跐/H;Lh&U)IJcqFac85wUʼ={'K e*DxԃFƮ ?^8<<{^8!LMTBP(믿b1ZJSdd-;:4Ia Jyr5 /mE`KWt~]<׎+p6,߭gЈPCOCbl d3hȽ\J=X֚2xfLRۤ96"GɈ 3;d8\g9NS ձ8̴ z՝td鋊; 1 $"EW,CJnƠ G/_*{Ċ*%]{48Vx8.D6KLXA ks61ch6c)V >L!0jt@U 3ȝSHFimgR+D֫oI i?BŝzRթedz3upҜڔHh&TB G< _ROW(O;AGNe;'M Ɉdrmݞ*c# PD )_}lY_]h\A1gץ uOL!vs.V7%KϨL$T CAlvGfE0|hVk18=*"`6F XO%s9@ȋS9+lGQHHg\ְQs/Bx07R?Lkwޯb@UHA|+tMG@0(" )ѓPĢ.JXy+'R"ÀWcdQ sh$FH"z>A8L#ORY}̲s{8:[;1]2e8_\O * ef.kRPۊ٣XHNnS?'Z $c2@Xȩ,6MUD sp{0H,Q6 "`Q 9ղ]1mܔ(cE, `2bzHOt NE 1*Z}eCr-KSpH^3!~;~ԁWcm—a':C*gtl fEڀ`. ajg?:/ɞɋLJFfQ#ר %u=8D(?LiB +~FĀjSd{KJ2`<ĸIVřT  pu Mh:fWk*O޵]hNa^hj3r ,`$(L>Lt[ :N ŠCz)h2ӷFbqY@{<@qrT( oYl Yj3V/L/-6! 9yi_FN)=춰4}'4Rhčgz..hKe(KҌ"d)"5s Ia&:tz4.J (e }1 bA;b҈BcP1.%Z_+N7uE6)_D6V4T 7ldR\vIcz#z!R}L{_9"[:W;]t"@2"p)}HLw{/jP'%FAQiQXU{8X1?yz~s*4S2-z`K8.B.<$(m?"rJjW9kYVv,\H[{@m锄aG,8MnŒjVRBc cdf7LyxҀJMq1)%0T;,pL (GiH)Z#K(j9]yE]Dcݐ)[!ޛ|ɧadEѾi֮U l{PBz:ܤ7dCNQLh~>qFNJVk '@`@#OCqs9Y!3j엶YgI2C߮\t.jf5^Iy'j!8n1Gܞ0 9 t^\@TK<7 j*Aۄ°iOa.2 .Pw$nR"^UYf,](xbII~^ov*B,Dƻ#BBhJXѰX)΍Y95#t^ OjDc@R|rj  X h\;YllT}w@'.Kb(j;Db|Šnb?xi%l T\0TO~9A =>r+V(A4ә)75$: #R )%ϒ8I%<T4]Z@C[EӒ)P@ޞpSfO?帛dӼ3ZOhB)̈%8ƊED'},6MiP*u7 -kK͠V2U MmaBylid) YL;D TbA-CnWj T;~HZ0jqzD20N+&eK!wd lڦʐH* _$I谊 (~ Rzt  dlWuWiQ`,8WŝPVUX]VgKݎgsE%]cA#M`j_cc{6O_̸3߼I  > s}}v v}UwM3 pLǺ SlwKj߹*i.<1Cn0sJ/`<=Әeh`=̐jq2CxVu tYɝ;&#] ,1Jr8/'i8GId9@0bu:-huWIs%%!}u(SC0mu^&&N׆@-Q7{vJ 0= 5)).> rٛ&+gs3O[,/ ͑w),eFQ'y%n|%\Dw|8>KŊ ݄K8%Ьf7SAi®X" vm@Q/|YELqyw@3yKİ Vu(t @$8]'#Knb-D-nfʧp6B^(ML8{(xŗ S|ʝY`sBまEB(+/0W0`ެ jDbSNCYVMP;6A6EXUu;F! 8-RԄ#r9zi,FL.sH5gF]HnV7Ikx 0T?my")6w*\<,vRUitì9mcJ 1&A4:[K9wBб<AV;6X`A_5$6a(ZC,%R ݮ!AҾWEݬawڎ*ǡ T@8 e0,dQ^ #rJ13B<ž 6 KbcCi+rг3d {YT2IxuC4[tI(-z1+qՉ=MBL\/4LILFxbK\ su FIuzF}&W[UM:Giq4_0tM@voR%4fe{!-, O)M+ǭZS(tZqeʰ0&jjeVzjG-h ӷl(P$ИldS\ LTBw@mQ7ܧ҄1cSL3+ܡ@3q 5i~ uA(%0 $s0SM;,x<Vʙ# d<)cD{3+!67}Z'QVN$(4m đjI5>I)7c(M^l{C#Xw IDATl030cL㠌K.AO8O:ٿ-x8^z0 z1,q6ʲNa_ T+IsH Ov#h H2nvg-[7o.i?0K [ԾS4 ǩMmuP22ڤ7*(.77DCp2e4v%؄'րiJǞRƼf{ DJeJU'eK6"r}1=`OJŮ_>-‘$O ^pDQQhR'2yB䚪3':!|pYe:T0V d]/W"bXʆm9TI3&/у+% G;|0ĥS/sIR!z^^46g?m'#U+|zwSF N/V뽰ҒAOttn.^ȸϭ6`x VV-e/ӑP j h P߄7q_걧HwP1l9p*.W䓀[BRh`jVҪ@ 4]I*[!#FOab?j {;ꕺ_SRGi[. bl&~V!,8ucƯ*o|{ QIWp#l z9⼋"Wx7{[E3ByRA(4p ).F8x Oѕ Mel<86[R$Q^ d" ,à(\[#Q[BKa]St@y'P (5p6z Jܡ@19y8A@:zp0LXKqbV~Q֛-:0(@зGI$m4Ai}hspBIz||f4 w5xFϛ+-Iovwlȥr5vwwdLaOӽJT K2]'LLKA'(Myd+'|GR;B#,[oI\?:O0l뎊t_eA}X$00*is?5*O0,hwA ل, nW|"A *!#JP!#kwTa`daBF᳉Z F|/ o7@htԔl ^ 6NI0cH=׋C05*XOk.5ʢV-]U$TB Clk?WÀ!E(;SMo!hA9)ScF88Ev =K_ ;q+( g`ꈹ A@]?v0OHUʶm,]Y#R#j?bnD]jU/|닗M~ģ{|>b 9TJptS5F"0g":8 -ֆ֔W kQd`7$MjDNgp}p$N wnD g' 9$lI; @4:2?!^GL%_^󈻪 pѴbjN -EZ"qu`!BiY=qf  U<:Rn@$-ֻv8Hw+A)#ZSHgGL *+/ԋOY Gcv"I̕*buJYSF4)jFZ|YT9fEEE*(Wi I|X_07xtŇك/Nҹoy]WjՃ'LBM[˄$^C֍q [S$/|N֨3BVa\C)ƷvN5QXK j‹0 c/'5T`& wD "3@Cb7`%*Y79Qڟ(kf i3$FE_ptʳEуAۡ(,H./vb*|_7o|ͷj{ޙsSV>{͚ӟC_nQQE_dՊg^}OZ!uB{Ig[\epނr(+Y>i/&;bš79w8o,|`| b3ū= YAXnEZjo !ɂ?joTMc #śVj!׭U{R0p"'z "OdOJ`vڛLI|{ Ker>)]BzH/zsrT ~PhO[tO*Ko*CsTgpeVD=$/ 6DXjO+B+h4pm‘BrH֞,:s<+15`")1sk@E%LhP#|x„*=XuKс*hRYЇjF{픺l ? `tB^8hτkhR8[Z Tā@G E,G$*iV*X$J6QX y^hOm,wk-]) 6G_-Gxzg"̽?^O^/GDp=w{{[4w׾zcw^coS M$-'T0e/>L yyoUݭWssK~o()):n;C U!ʱD]>Zx`"R\HKO8Iڌ gHۖp scǁ Ǐ$(Whs]0Jgcf+V fCvkz MAP|8P(icr)TwiboXM~2L4D/FaD^=JW7#F#pcQE,Tlmx,me^.A4=ԨAb<%QL~ Yls!`}2Tb^au|iQ#P k!n-v:(xB%le^gQVΣ4&0(#vhqB "Ϛi#L_*KTQ4\=-ԡzͬ7UJK..R07Уuu쭎[k !qIm  ]jyS5:ۅ"x\H+BFXMtILIxn^}Yq#<q/rʫ> o羹U+y7^wz?K^ I"%yp|5N0*/KsZZ9Dؗ"Tp%r/@9;Sa;@@ɆXmOc벝UeHSgG,L}TU:Q\N4gxhvKZT'n>OdDBau:n >ʇTk5Wg xcP9Q& FɅӱB(@@` #+R'Viaa5Q! wh]K1HA`豦Ku}o/LNȊ|MlGf18?-JqפBd׀ yG$0a/W9䴒x!)Q/QFID{R WQBM;sܦH"]W,ׂfm B3_ @Oz()jSV b:^h̩{#xH=_Ђv (hS1 0K%A8`(̶0J* ViG,m f`\G<H&"RĎF|Il+/y#R'mNMcY:<ʓ7ݵk_BeMXN\\l|ЭFcqTSjE ,#ߧ:a|Vy%@A;x ;Y-NB,TkϏ9QhصXؐ%haGMxlw(/X׽`aUշvx ƕD9Ǽ`>9pRA[XLN3fcI]-AaDzG,CIWGe4=V_1-Nܩ̙sT/Y:#qсӚ$W)+/>J\pJS*WIkʎ`áEIeQ qx()UVxhY0B.y#bW:_(  =b[bC*ԋt7ɖU΂p]ND8 S+œ \@fE@aQ^XKp 0: *6;/< g Usڷwz݆V>yV>;ˋ Qw٠߂^:^ e1KI:QplY{yߔFs3EU%i:?JFn_KҜ4DGkliσAtP? pzݨlz= A}ޭ%xZ̧?OZi+څr2TZǿ;yVbPfx 10-( !Yovq,j,uq=嗼@HFҩ)1[{xc~?$j 1>͚N{a9ܘtU^aW%MM¦bȸ {DYtXթi /5uq{Y;2KVz9>pne?_[ū M:ԓc_:Te_ c`'o,CĤz0K ܱc9k;qlKwҼ0y6y)%'K*\ xN`p9hi7Iy7Du^iq7XT5,]qdKioڵ-Yvڍd[v|dz]OXGJ{LRZ.)FE Ui|ɷlɒ huVꏗC؉C֢^>L]|MD3(o7\٤JyT1 SӐ)dC(ux>g0@aa_I=RqZ1[k/?Z <åpi3M cmJu _.IF,6BֵE)fi^J>)cŷX̂\ w0WT{K!S2?eT&`+F2v!]f:R?::u.S[8|x?9gȇ]/tv^cx*D L2+(6xGwlzM?{ַPP%Zu7Kc6r&*ċ(W>txbvX9+ˋC9U( c1tݥ^k]txT\y dÚCZi V(潱MSO'Rwϳ`y1[r w“M^"lȺAzX4 j B{MDq֘W`ђ^q]0LJ#谠]j;v-+M˼׷eӪ[VwlH,2˛{QqT>C7׉F&T5"$a|hX<^6Ab]^q=2pG.PwC/rǎu~~oԚv+=E/nu khmF'V%\qN0X4ŧdT44wЍv/C;9 B_P=kcN8~ׯeG;soz;#yV_EE,*tUӅlY&/dsa;Y}ʷr:?"*1bC~oI"<yʴZX77&7|}cp}|_j~ Ct|mwo7]wzu~8/k/&e#B0DVBoM{j}n,_Ki8v{#?.y[7lҷ|8nm4y#' U;y4>o3E}eXc[imr4/qƎL[=Q_ǟQKLepԮu'z'} >yxaS#brD.»@H1ͧ6un,{} hk/|~#q@hfo֙O8Ss*M$@ jLzlm6\U=15S ȰHwWL G0XUgZĥQ?'pPIGm{~_?v%<:#jNhN[[j8m8^7xdqFo'Kai|cSM^zcYS{ωeQPiphڽs:kjq=WR)y]ԝ:CQ9EJmp4TDBQ셯{w׽$#ftsa,W$!nO/Mcus7Yl_M;ڢwD;?Hdzzu#^̖Ֆ)&h c'0{`t}ǽ?| EU||ܷ׷MPJ yGwi6B9dߢwD9"I $*;2gyqwo_ρ ׁV\ ~bƕZ/7/S74E/0q}m Ai4GFGZ)?x cΨTgӣZ ꡑ?h|yx/\ZvK#P4է䩽k Bw'?-贱uY4N^Le~3`W% eShr(mt۝W FwpTQI0 hb5>EwkbZdx080Lک`0En7 ?-k=bS/˖l`Ѧ[ڒ'st]{C7Nݸiӿ}@WXi:ws}{5Wo]t ϋEɪww\7Ko^+Ѫv+<_E Oy>،]sѯ7,[uCP2_e'\%KN<;pŒo~-:lʣnDW7ywئ/[5ޓvlxGYyNr?#(蜪ڲƺ?r֘֬޸pᚵAgQ=}yӞ9Ii^zqo{/9|5_s`yq'}0OU[:nm\믹C?dɚ͛\|FO+u)~8KJUMTzCxٲUOZ6<{8ʈDӟv×,9oľ.|ʍ;wκpg=χ^- EQI"lC߻nY}{֮9u_WBhiQ%!B?o)jէ*+x5+6_Cf{zW]y7KYO}WoXr˧#Y<Z2 jٙ?%Ao~g2x#jQO~?*kի޲|#֮?߾/2R=kAq'[nULV;'N}G==` ڝ{w þNoYO1]-QF%@>Pr}gm?KhM'NtWZyěU+\nkxhΝw޿n9}߯]s%k /[ػt͛ẟTYݾ|զu6ctl_(u['zqsLBk<؇M+N۰I}^'ts䐹Zq[v.khvs@cj Y> TVdqN4ܷ;⋾PezN!r~ܱkxҧ?b{x۰̀7&CY#p^7)nwp)?:wn]+/p .>OozaپtOok{w~{ 9ﺭw~㦫?F<7<< OnpϾu?g?+|_oӃj5E.n4=Qx>jמn'< W駗ݳ;nlTǿ;K/}n{ Ҿ ,d A++F-TiYGvBpX,,Kr`+_<՗nڸ?~xמKoٗK X gS.OW^܃IyP0ث]58| S5{QL`Xyxg^;W[q) '.x+^K?f\S+zmWr}|xoyK^G7ޔNs_>|-;%Ƒg/ƿ{O-FxTBwXiZDS5XoC77\]jűs.kvCa'4 e\ꐗ,[AnVȹgW޹ʯ s׼lr/0OK׽oۿ'ODOodۃsߵz+|hD;zSжKwou'kJAl~}(\spwa!{9W\FxD~`{߂w\ڷ<އ˞̳`ϑ S^sJ7[!M&瀊ܟv[/z`o7^zwo;o{׍=wrDIygo~-o~ZnC>ڞ\Ǽ\q=xˡ"7g٧;~яW,n˯}|i9/\=5'WuE )0 YK'LJqmSGlzO_cA&N1re= )mzChyw.ad|I;iաB$^|s6`RN)t;yQZri+؇QGUVjjtC;:.p8l'i)v6l8JifENu_@ovPPO?mg-_SNz\P<ɧESysXWoL{s_B8kW]q)'>=ݻ> >^}|C;ov(ɨU.:˩+K#oz80#wjU Jvw׽nj0K^WTcO!꫶n߳?ZIGj⊈x xSbNInE9zo_|-m6N;G=QŜ(V)nO|'{q7NټV2)b_F3{c Act UiѶUkV fF;y߼2<24J׽w&z/xߖk# rS[wQ_eJBYyt'v^җsWw{/Nx?}[Sv?qcswÞ:l\׫C=oy?MEk\ՒdW.nF-4'0>: y(6P6/_J[I{߽w7O>oxK \Ozo (dlk$~w ֯6?9G={ɪC۝˾uǟMG!JQ{4\ "Gp~a^SgM> ^ _"vs 68L}x4! -M+.[XG>EܧR=ZO/IF'i VC58|o&9svz3PgB< GqK_yCmw""/;=Z׻P3 N>Ae*VhkӺVNP/}3K~odžV#>eoGdn!iDE@\ŧtY~;**o}G<#}bQ޸s~yO9QP<.(G#T_ "%|2qQy>>>KFg?3k:/zKZPoy$׼m ?qϼg8 ]jvhbZ۽6ʊ:|?3-;)+~c9WaXQy0{syQInkj@tН9\)WJ\֮wNPx{'gO\1t>ȧߵe_L.y'/_̥+g*t~K cYĦf1?^tШL{!"9E 8koN}?8/zOy%K[wfZmv)y֔x{K[~\tI6:oxYcjm"pY^6o i=/ 0i镖N*( Qa_k7=BG R]7w'D禭U~a(~aeJEAa/=;[LE!įNYvݵ;3绷}~}b:DU#0xN}|׾v ZF|e3+OFc${K[v}w-X jMCʓџcCޝa*W~Kt Irrj9g0-!*9L= @}o&_g{ 8[n^!C5tĭ޶].k-_=:ry4gyw5{a|X٣,jaծE։LX~_ʶ|;{V-x=br'߻1};Y;nWJbN[K>y7.?W@ Pܜ &NFVkَ̀hYRE#duv-eK#š?߾vs{G>W-|{׃?w_ܲ岵kw'/=c~n|$️˯tmGjMw~*j_ڳGO~l铘ٵpGўs`"{=c=S  m2>o+pշwǼ8/^dFr ԡ@jP #SC/w񥝻[. ڡtKӱ^\P߹5Ir/r[MZ:"Mzf &5@Am=`[ wŪU] )}_e4$vC~}7Or P$暛Wys'?e3նLep|x˾(˄7|?:"lXN/ÓzSJ-{w}۲UQmD:kf{}d͙޺|qg;N6UoF6xh[&䌩ι<?dQ*6vkԚ' Netނko{?$& #Q2TޜħzHf}w׿y?o[K?o3QfAsƺKGAZ..Ը]oīNn8쿾N*voIʀحt8|.‡=0쮿yˮ񕫲h0=VBXW-ms_=W|x[.7 /4MJ&d>tpSy4(i:2TOpi }ɧv}[{߼>RW/nyn=\QY_;cl7_>2Lo,k_Jm 1$_*-{|҇ȉmww%pϥ邧>O}#׬9Eؠ(5GY\C)(zz?-_>2Woxϻ޵v\|k lo{ۛ/~__}z_d?\p[_VϟlȪ'_wƻޅ̝;bᛎXKW,[2bʥV8|\+vͳ8ok:5kVs=1=<~֝xܚ<#cSqu֬;6l\oʣum Onm|u-Ttkp|п}ϟWYI#8agzW}7 q38~e\:Զ~ԜN~I'}tOpOG~“<umc?ǝ}7K9Dtpt[.;m}N3N>|/gga ;mzk?pѷ淾/{aX7G׭VK,_bæ7[rΒFYfx5[rPyoܰa󊕇^ywM{[ Gl:#[vx[xƹ7£{iG>4>W\rKV_a6?ᩏڸ6oZ`%CF4;:gu9>5핯zs={W^{U m R}8g~i9'{o|[]s(/'5 Kzϥze kYdɂCtkwbxA׼xb%?p k8B:T 4ɇO~q֯?/9sӧ޿n֜|a]se(Tx܉Ǟ7qCaP~-kW_izqD0_!/ 9XG?lZp,4"FyNkf mmXݩQ)òu?!6")iУe7xVUY ٞ"%:>&OeÛ5Cb/Tolʥ߆ǀ_PP\ϋ&] mQqA/,6 YT_L7'`4Yn[)4ptX@ASzS zVh  -l6&+yTFex^%}ջF;>No.ߛyc LڙyABޥ#꧊6h2m+t ;0hk1 AV2Qe_tz O ڄ44 ӥ57]HJt(Z0H;0ER@sG`8>2&wTb xٛ6'd[\z~4*((dT*󡴀MWJDn*/%M;{IA256h\H\XԎ5jӄ*J*BLS-vVæumtXo6anK}F. Vj0 d=`8 ^/`ؠHagp|/f}/^fHeC*In(ҫw3&;>QjpR?j-adZC*wꕻl֫U(iDFMX.?`)!j7awt~ژn 转Z~NG7? Lۅ|oPKJzB8Akrdt@瑷oW]:.1@lerV،8mih8s8;i/]h I#$:VE:r!+ynwwzSCS%̒^q$-j:#Fyq+HiwS6 MFKXjՂduIK ͩNB}_zm%2yXkx3_>Yy~+p0:g<(PWb6\cTRU gI7i9Pb/xajG> R~J-}O\ZI\4eQQXډa-͆IN/5_Cz`8O[J@sƮN|Ըwܡ5]x9}PScCZaG`ԜP[ͫeIvB9MY-G<=cw`B_UaS" z<arm%D6B<ZeTxA'q@Q4C'K*QsQ E(~fCn,!qKsF.jvP*OǸ._L׎!jڸ+YȄ:{/VpE v4ZINn46EE#HT\jZf SAwiN^ Ʒz&A^C (ٕiQm5*`yPP $I*xEQӥ`90ؠN#Y 3sBQ A(.%rҵj$Ɣn(kvxu \뭴'?䕦@\tNH- !p _N 5"Ы,TS+K}>#wA=5ԧ8LF!юuF!PG+UKx_C1}H2 8<1R<܃騂euu9 INʉF\T"$Q2 "$-o *jm%S8HUJ$籩9yݛq8vܦnٜ1SNr0dKC/3A?49=~<%Q'LμW+Lh!& 1mxlas>9dB!!hKp/x#{v~:%9TS<{֓d 6|/GIC+C" Ž,f*FFq+ 6AƀE7jx`BbczF1y"$k(%Iv^*Va!ׂa*~4Q}cʷSP1"8L> àWLT Zr RA",Vؓ p@7{/l} >iۚOv#ػ\T"2^$ <WU }!TR(o-JKz^&`{М_q3Lj 4¨ۢXX\+ ( p%zyVɳuuy}e`# rCm'ԥvX-U 0lJoJN{ZDOa஋3n_mGR}$Vg@m+Ůc:y; VфhO ׈vP.BmdXY@ljC2wi\]!Μ)C?"8wGG v^EюD<2j~UX_b󪰃pp`Yi(gu&DJ`RCn@DQP"P.G_%xZz4#aԅC1h<r@,ΚD`9p! efCL(thb-b@)eB焋2HK]b(";5 S|B5Jxt##2GnO8ttC$@YD}K?M'||09r]h@`XcbD^_- ]{ R(i3JOᦥExP0Q)Sxjqjtp#OVȪy.`&,i_kĚpAL9 E5(<L t7T0VP&&YѬX}@wH@:#{~>أc \>v2A)aRt]0ԋjNKwݵ}K~p|O9qBJ@Q{vqPQÒLJFk? aV#QS-9ҡΩ@5{iQq|+O;'81!f_(BZZ ]ON"m5Rej0iM9ڄ)bSr8 RY;<2rLέh>0ؚr\sj0zp!CiR,Z-ժDHG4\U. 4?^ZC} LTIouCJ59H6S!aoՊKoc$DQ9H 0tPuQiȆNI0-&`չ&|` LcaMaR)*}v3T<Ť`1nN^&>O_( 21H)Xph:(qF{`WʅÈrN| 'vɑ2FdUCv#%[C {"$M{uJy'5$_dw%spk֍V[, Hmv߬ %[bLqp݌>zY۝`)cK&dNuQ~u3,@xMc$p<B쑎.S d:Tq'R\Z+ID&5" F5`gِ?udF߹(TD3a*GHPV22!E:1 #[6ҕ\/I$P &,h,|>^ w]fDʱ[fSyQ<]-pNi&^ >/zi+dܸiQ\bOHfH#aH(ÿLA2"߱Vo-Hf&;UiD2<Na ݻAb+&2 !OV5r*a攕C;M$v1-!Fx0P ZQ"3͚4r#Oƽ\mDM17E*1|N*F,F&vOc!Ȝ^m*xi!%iQD+V.? '(z{M[=<9(^}p6{W3)*!iD3Lpa=4HE\tЄ0'X֊\I#RYBБ&T(NSU#v -SÒޓv"d7asʶz'&l(`8HsƠNnSY$(;nRa9o)"&L|2:CVtb4>?0,b%:#BX=\itZr a7R0:v#XʞKK40vFwZ'DEY-Rmp!NoćgU VVovAw$)`PXu`u0zXY"s(&ʹm9f#df, I(D5@bEad?b( $JQ/*U',(3h PIŶjPقp^0JV&g10rtj0éG5bjelH UN<[^Ɓ|k,n;֟tgqVk6+BVsT𘶹%صϼV|K]yl)[^O⥓f6>[fN#U9Ugq\Dc;N5Q' wsҵDOȇ\Nݽ/03ۗL}\XKܕpmwٻ4}w_yv,]Ŕi.r}ٱy/[E*=]헕YA  P+S7a&>o$bOYTkhwPe77)m"l B+xV=sFm pgYu2#ȴ9/җ޲mYbؕs\Ϭ?0wYݥHG3c_^6N,9%gHuw9^n5@=Lj;#S.1e6L[كNHvF w7;ߝ?Adƨ̹Ft6;c_wy˝f#iz)fg6^/ vvmdmuȷ<`$;aAfZ~ԮwvB5by^3S]W4~i ,@M;;Kf^ڜq=r=7zgо!$>3FgwIn1ke7f'qr5CEso_ |%@$YN'x E.J>0Y%8,f{-$0@ $0@ $0@ $pI@US%y %_P~m5҃@ $0@ $0@ $0@ ," vNuvZD"/NUV ja][k H` H` H`  ඓTڧWWgc#ýo6 ɹX݇eH` H` H` H$P;=X}XT5Zp]f^(H` H` H` 8h$V_1uG+ =[\/콫wXAA3} $0@ $0@ $0@ $ QVIG.uM=_ ?@ $0@ $0@ $0@ <pz.%<|ǜF(Rg $0@ $0@ $0@ $0C^ $0@ $0@ $0@ $;-{;=}$0@ $0@ $0@ $ :H` H` H` Hw^w~ 0@ $0@ $0@ $0H` H` H` ~%0pp $0@ $0@ $0@ ˧|❢rϽ?eo?f铁}<\jv*{*W􊅼h鯎eؽ//ȍrF\{˃_z@rܽf>~ruWoS_/?wtտ/^-QdJc7~w_]!R{al~ſ{_̢8`fۆ̠.^4 ،%#9PV(H` H` 8h$a݋]/k^K ^&{>mM*Å`gn6oLbs""v~ ~ YP<<s o`s0鏽5cCQ/??xL$b23Z=ˌ L_1xwBIQ#:=&p~{FOGۗOAI{:'q#mOXĮr/r =f#xxWL܈ԌODa´0Ï~JE/_,0;mwͮ"GLbzb3Y[窹ٴre?3 BA$ϻe6;.N_2{vIz/wt}jͬv]!2cxIv&鶉+p6N1l$3mEvY͔ͩ 8/ƖWsvdCMgAfi?H!.[X6z:;Xxq.qᎶ\mp;,q<-;,)DlA_u_̊}Vh8͎n߰ŀ%sahGH(r{)=9I"M􀋴u1;+f^|j H` HX#߿m?4,eg;˙t_Y)%z=pK=;Җv`'Ŝ/?+mm!κ3F\`Ofleu\pd߭:`SpDr/~yf Kf~nMgo_?Zۯm~[a'9;HF{~_e&HgxiG5/`_prsmVfې[Q_.g268jy0gKPn}UM-".ɖֆCa/.S3yJw 1@ $0@ $pPJ?zMb"̭'/O,`D ,+Y9#=d*QVs^/y{~.9lTE٩t.g-]KjXƩ.I(AgY}ۥ^ nsWx:r\M~.48f܃$*L)Hd>ߕ/ӗdf{%J`$tA=!2(hBcZ9kkɝNIkP[cadR% $C*(! Qt$; 7}'܂A=/yqkϡ%kNV.!1hpB:u,cBa%Ow>@)0iךЏ~ڟ}/ y؏y\3ϓ2?KA ! b:_ݯxe[3z|Kγ% AZ5œ fBIu6]Gn)eY p#wsm7 wawC<H|i 2čޗW.=V>W(tadѐdL{ⳮJ(Zk۞S?Vf),}=Rٲ<ht/yjUBa.\ $0@ $0@ oK?OwS]JWRIɏYrIP5;*'\P75<#tU}KkR?%vfwsH|*[MNubz/W~z^cX"tޢ5ˆ13JhEatN@r$^1t^j)UX1ۤf2q9e ʶ<h*qn0gy)@P؛gh}??M^gf[@/sw$m/8(ȕu_0k }V/_}Nkf(f6j?/g=MbUnѾ(9^\tlf$+ZEhFŧfB@HW ͤVaΨmUhˌ/2S A;3߿gxY)' ˬD~yIEX]}EdD`׶a|GP.8}ƁK[tV)~ǩk H` Hࠕv^؉?1wu+5ꗭʠݪ 6y$v HN Cاv~d\/p]vZź633)4͸Tެ?ﲾZiJKTrug.83ѵ;Zmgr<b[ʷWw(-ۿ㌣2* 0Ey5.{/4!ۓIV؈EZ))@?)]Xv*  K4︌},9)iavX, _+4܅xԷ"SLK|3& 0&,;_ tnZ"SnEPLk7X\q[O7^wԈ]SR)K:$ޯx_Sdz+Ηv]c[u5${sw5(~9#57,7ږUl pB-[LV|)Xl ̡R6c8nB\!WsԹ L Rsf9D !\P*͟y8ff31 (qe'oc N.k4 {ƹь-1NijljwM'1.cKl?[9_k}Sc>l{i{;7Fه̤wqµA? H!\mm ඹnm'^L[ZpI܍ .C~i1V6+@i=^E@8͸}=#|~Vc8,O~Y R٭~ SbVK?6bE3)S􎩲> ǞV1bx 1V $0@ $0@v1OVe(MaruGG$dK9gDY\5פ]3R[@hv,~~b֜g'P▎9Cy)ίȦwiyhH5IJ|r66|y}ש7Ttې@v_ IM˧rjd،~ϼW">\36ELKnU\ Vȑj+32gy4<`~d=jIyW ]aUg߾ʈ%m=+8a.i?L65**m$};pLD,d秱XH (#ОgoüzAu@8D┺HN)vqtZ`װE;B]ٟ7 K}C1֭3&F{.6/x~Z,1<~2R(Dp:Z}i `(Z)*PŸ*5LqSM. ޱ.`8@ $0@ $0A,}^6Du.n?6AFMuvpQZnYd.l8C\7 -aeH~(a3 yKx'KXZ`lh = oJ|y><]+2gc|9Ɇz)As@h?g/;3>/@^ yc8O^^x85HW,2wqWCʓ24oIXxy:j.;ǵ ;YMȘ0&_(A~k}>@QttZyƔzjH`O!N=++/"!K˅V/a9-~KBtGri~p5W]+l;I\z?DLx/B6GK??Y,OO&VlR`Ep;j( Bȓ^qre\G2؂/#OPW0J|rSĭi?"y9y4<^t;c^:%4-BӝI 壞PLPYΒ`J:kf. ^ $0@ $0@q]@Ppڵk>LL5'<׏7KլDX!~*Tw?t[\O>(NjR"VQe]|0nj^\ƅ\rMbR) I|/JE.&i^|gϫVZn (p( 8-p qaN&"@2P V% AV*aW {N7:m."K3^U~E^)bQa*Ok|֫ø*z~#)k;֧qV.ReE;)DЇfdh%"ؓ}2O^˝i{_wun: դ"+ ^7"=3=ÁM*ܢXv: KAD8:E[xqsGFRGRkՐ:ux^p=R'I8^zq<|ǠRq$e8׽{.']VYg*K3rYFe*=XANZj}N$v/d\ ?6 V KŠoJXCsKNjn55=#pbo:^m<dEr-HwvD ].!ϼr6{=؟+b6jDq'ZǛn4~ֳȇG-OvܙZwm.TB"bU\_5(W'J+LV{3O{6$U?h@!<Җn*;Z-b"qسxƙ.$yT kY83-M}:MUĨbAM4q*e$OfwI\,Ƚ+^X߿CXqcMMYjB^ hD)[YI A'a^ $0@ $0@{WojܹY'5 TӉѱ+Ui{ޭ˕yC#g<ɝP}xd'-Z~j6zݍ7|¯C?z >424/}CJ< ) ߺD]lϮ{޸q;yܹ&&0#\ZJVJe4ƨ׌ ~'Ml9w?j+kD*Y1|dv& uW*hx*LOBQ5۝r~>و }bK:; vIy_4Jя(;::>|?ض0\[o{xڲQ5bT Hb(iK+. f}mQW^lrȤQGz_׍ja4T͟??UflxQt[-n_bwvۅ+WD0'?v6}Oy^©\З._c}u݆azvpUo`VysѤPmJh8Cc?Wcppsޚg1(pgot/:e5}ކ͉<=Htq}ge78-ü+׬܏~ox@_{Nҕp_/}S9wؖ7~I9 o!m"B`[{պ``p`QS7z̺UO#w3k-[`~kʕRDs~ɭU~u9c[ii9v1cLa";s~?t^Ϝ{YjͶqcn}KÁF#qco|?_UHz\o޼y%ՏuVm{(f`I߲K7Zupҥ>0N1Z#^`L 0&` Ty,-RY3ݏ|G#oۦm!QF /~1E04[&EU"(F+`% S&9g1ozsӟ>g䉖ce8.ّK?슟Ȉliv#}ʝp~/帆JT ɁZ-mA.Uگ{2وFدXF)o~pգJWQMǾɥˆ!z3J7'>ғBm߰Se1޷w~)Jkg|cSL1rT=%*bgBCNK|ն Adj_϶”Ij+1eR5nGF>qe9_y~Rٸ/]VTj]H`n{f}C͆e'Sn-^0ML?ƑЃW1Kk̑~0;~>Ft{߿fثPAD2!]VɎi(,Q|կZ( k9}G6krY'qjHhD {64qn{  Cnf ky5̇/a#a[;qD1HptJ/5?S 傦zRq*Ӛ1~C`wtv#?$HcI3VޑR#4{dA4kCa~:R!j"1p$…7?wά9sfO^4r:/(#{b>((M"ͅiZ 0E"Lt~r]LMv&SϾ,SG"~i={~-kk)3'#x{~V|: ;l;0^x(|a|Cވi8hylݱa# Ԣ@2oT 3:\"'HRD dkӦ^iM8#KfۇzC7FC1F8JSQ6"2DDm,+mnX=;>j6`:m'wG n?ן[n}zYG̵Py%MWTƗeИ`L 0&p^6k5|4]E`6/|jg?پ~' ϭY<4&նRWgIŞLiz֐$\:e"I!N\w\xnvTDZٔJM*L*c6~a/eŧǮlj2zȠN3θww qpۭS<*eB>J|5Q6n4w ַ`AC+Rj4<%|hx% w޽),mNlj\x8q,sr[ jo|Y;ϝ&Q+5줈fƃ"OռjnX=A A䶵=en͏X/"pKU(-zݢYGttyJ%645`qB¸kD۸#QRd#-*<1$ (Ug2* 8Bllw]X{m9$z! b8\cH{yȧKPzZG$63ڏA ET㼧tݷ!;{d#"u$p%S*Z^3"͏ 0Rܻ[cd^ 'cٟ1?=GN?[o[g(*6u,@DWBxC]*dti̢J4s 93>śhT7=2?=4& *Sa=tQծ*S'aijZ(6cdH'"ThL0$J6iXǎ}bC@ɉCm?{8xpO^ky1y&#P;kd^yNvT\i28>5ϯ߄=,uOt>rڇ4nvPSd{R?|LuFdׂ ZJz2\zֽFoWQTr;*#%)&6ħ$@ATHsUV@.`ORWFuƍ&!EJG=\[(Y(ىAWԣ+?`L 0 -s ˀ|-G65~tChL ⼤ӦͿeM߸JLjs'{nn?j^藫yTov֎kTx [)[l8ߧMkPE W+%h^BhXVO_anPX K Y~>ufԣP>u\ z6s^CI ri}!|&$ zRj%acuÚy!S:⡭+ z DQ[E5k[Z*NՋcM8lJ+ㆫ*hſP =2UÕߊ^$#|ǎqVUv3pQ nL֪ ߸ _: S9f|h2ҖvE!y =԰܌fuy觉tu@5ب@އ+VGZf׬ySa;! ]3fvӍKmN40v#B[g]}ۺ ʊ!<)>4~TO- c /e3a@1讽ʽ!vSj8bPs NP+ȷSWA6t K&p;PChȚ\RVE+NFH~!Ze+x=\z Q; JD1E LI-+{?#P@=RYXi>#ңjnUdC@FW<6{v^^j>węmq~3Sp(בX^P1u@Q;xǡ25AAXLǬZB,AW!`k+/BS01Ҿsd0J/أ5^w#Ta=XΝ 9Vc]i_hΊ5j֮=6<}?:᷶c\¨ճ(tGmy뭿W?y62}2R8>~۶n>}r^p3דNoկP6-ΪMA$Bl~L+;|pf:cĈֲ*^¥"o(-M,j6ZMpv!*K=4{Z=vll| CGFڳ/_y K\??ƍJͪ͐{t?v(ij{Gj9玘ԎSP(=IϏ{zv8b&VwEn܂S@lkҟ1P F|>8ڌk8JzM[:l?N.n7Qpo oɢzv̌Y0TQ+6{w:;5gMM>Tm6h:B3b !PqS'n{yݵZz8n.:+;QG+t?V:rd`kU=VCثB$&BZnE%v޿xuG׷, ,Y<YbO \tw?[H:Zߤ,p/6\3%6@W<0 B~5xEp ┿{ݵ%wSn ̟ 7>t(&== ͡O,bD2_E{[f̒?4p]]c@Q3 _Cć% 8\rzc*iO>1кĈ9;3̪XGfazoo6ehV Ut1!Tc 󰱟do5YEqNz88|i'݆8sۧhӆ̣j0&`L  l?5rtS0]rl](oWQvxmyu*EqrJwR/댡vABu 5jSso/G{OoMq|ç _r~|ƒB?xu#@3'$Z.Rv9Ȑ@yb$SS4?6 S"0%+;/>:9լ"19?aI1n˙FC%QL2N+/@ńn=ݍ={>7pEC/L;n੧?m31\I7O_.O9F#?yK>GTIJ'=y8<x 4w1"\ 4X>1؀&KVFGGU~ҼUB+th|HYSHG`_{ &`L 0?k 1L`Fҕ_r-GOvQIFJGB ڏ;/L@<7ⴞarʗk0Y7f?D}Hc21<&`L 0&z$x1|xO 2 Ab5C gWr4b@FHH~ `L 0&xH=;FJwy1RQ_֙s(hy}uCZi?:,R&zMCH1kp0?^r`L 0&`L"@nxIWi{㟖_@cͰ\j Z [o {AZKuM?̡ס RK0_ˋ27{ L$H "\pE_(XG޿Z`L 0&`%$S@Μ#=&'4u%+$}v!m37 1Z(VY6_U׎2u{\Rc v鈐Y͓GUq 9|+=S=(|yV`?r3%& 2_n(XCz4(g_@c1c !Wn`L 0&`L5 83#B,G'}fYueH_WS5V9 w=;in E~؇> i2Tѧ.v8,dEaxU?/GG2 &jJO~~|tvDCe%ʹS0&`L 0&O@&S<قŴ|}^>~NuG1ҷr#R4˳!2+`&p+pCkiv-}^TZȈ@z*@'0 H  W&kY||}aC«`L 0&`L`6W#l!]3XnUxakzj=EǛT>VD8Z4;S]5#?D(hf"QN(>8BZ~bpc{vE=ӇjKRzٮU/8) (QñE#%鋂T/~kI02($X$NCWPDϲ8`RAܠh[bhYfL 0&`L 0D2EGS לIӐ>aE&4Х 76U+K.zԮua*"`,h$zSW3. ,%jʹ jdnc m''Cǿ.}U3l`i:4AfY6ִϪbc4Dk, 4L 0&`L 0& PLP[kCaY%T:߆J4`L 0&`L 'Zl8rߌPӚ coYuh/Ï뉒ZL۽ۗO4M2<-olh5ڂe yGMӆvw?|c̝: iYiӏ5z%8F~\*g@lsj1zuBI%6=baC;g͙0D}jV~;aFOS+B9|Ķ\Tnߴ.Cy,,L2&`L 0&~$`f}pkjsL~`c\`OHdp'M8d~3O̙މ%Of]8n)S{|C6e-[f ?ϟ6ms;25qԸ𙇟}z昷͛8oG޴I󦎟qך$m9sw<4iwB߮z9чt|^S:gh=Y0㻣͍p}ov-7zIn=*ʓGOwSi(+{ߏ`L 0&`*J!mF<;W{lLqa%R˩'GzT]ᵉՖBT24Q(ӊ6_p: UyDQ V7-[Ts K.{PPӉ~(?7끟"%D }vv%KؕJq>}9FT ҅Cc<%(H?"R1J_u/O `L 0&`L 0-"$HRGa|Md)B鬌k/+~hRaLx-$e:qWDmi SB$ȷ-l&>#7tEﴬNjP=ƞT_S0ae~t7ݳ>7ljѓO$Q^&xW(( b `L 0&`LX$ Q<xΧo{_-^bp^, J3hltfŠ|7SƘY%WEB( 2]9fʑg|>qD=cTG_ЗT2 HGzxiO|(13ۆ G}!b66wQ_q@8j1Y(FOXUl f"RE-;e:WY 9&`L 0&`.45M3(N-K@O0f5 !w Ѡ튪7wuFVNRP_,.w``L 0&`L #~֠}](zh s('_+uQaafG;Ц{"s#JB w  ^,:)z //FBS) *bfhut`wm* ,3^{5퓏|/vab=/ d*{مAaeL 0&`L -!ڃ ( A%bY&롑4Jc_-Y(BHB̐Mt%yZlV z>SQ4X ut2J|<Χ]h|OFqc`8Qu /Q :FkᔐS*r˃c8 )TO& ;45&-w^Ș`L 0&`L{`AC[}Uq$V57h nLC~=n*fTsO L҆j tyAG^6Râh(Iޞ # QhN*0%ND/ ->ԏZ'DJ%|=hDqP?HƇ}(Y%bm"&A)b+O 0&`L 0&ޓ|TGjy^V)oڊ{A\q*$Jb!}m#SEW;F =S2<؍̮[4,Z@)auG~푊~T#A)@m,SďaH~Q/@t? tNv״ $nZ;@PҌJ(a(Arp2MyL 0&`L 0&-3a'HG=-|߆O4l:hifN$lF1Z7 !maj wȰLy~>Xw"7jZi!i&B004 TAMRl:*FaAGS&P`L 0&`{,'m/5=Ul4}RP/is LB B@$cO9:6wJD> u%<+|4s i+d@?AK*zaL 0&`L 0@:jVVsk^*\r~wkdƴ}'+ei)#̲$%GuN~r$SgO~~l BIGR2 7-k+ `L 0&`-lGk.|{e˓+|.fn%YoƏp://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$e^P23) %@b$8li?::j %@R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-b$Z6]?1NKb$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =J<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a*,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```        -Analyzing and reporting testing results (2/3)..-\What we need to do for investigating a problem Open a full log Open each failed (red) section Find records with parameters of run tools You may check output of run tools Compare real and expected values/strings If comparing didn t help try to reproduce an issue manually using found parametersp/Y")S/AA-Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $P R        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkfstuvwxyz{|}~ x  c $4VIN   H  0޽h ? 33___PPT10i. P+D=' = @B +  0 $ (  x  c $hR   x  c $$rIN    TA  ?"6@ NNN?N0  TA ?"6@ NNN?N  H  0޽h ? 33___PPT10i. P+D=' = @B +rT  +# T 1b(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` z.  b    Y C3!DA?  %h$$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =4G<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a*,!8AB5<=>5 B5AB8@>20=85`@070 40==KE B5AB>2KE @57C;LB0B>2!!a +8=A?5:F8O :>40 (Code Review)`"  Review Board a&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $P R   x  c $4VIN   H  0޽h ? 33___PPT10i. P+D=' = @B +  0 $ (  x  c $hR   x  c $$rIN    TA  ?"6@ NNN?Nx   TA ?"6@ NNN?N  H  0޽h ? 33___PPT10i. P+D=' = @B +r $ Z' *#  o+ 1b(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` z.  b    Y C3!DA?  %h$$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =\G<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a."+8=A?5:F8O :>40 (Code Review)`"  Review Board a&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0 0(  x  c $P R   x  c $4VIN   H  0޽h ? 33___PPT10i. P+D=' = @B +r+  *# + 8 1b(@   Jhttp://traqs.intel      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeghijklmnopqrstuvwxy{|}~7Q2~WtKnJ t6-$)BЩpAm!E¸U⢦"P!hJjA鹖Na T#)6\`*5QBx.`&}JL?CMl;H$4u V\&:HM3 J`Ѐ-C$0BAڋv;T *4SR|&9:]Z:<:ڠڞbjFSܤP 7A(4 ׀;kyX)<P9!.S=x4@PB o0>9x /liPTp\0}^YeUCD i8`lj$\z -+,HB%ɆB^D@" H642N0OzfRA =%/l.t}s")B!!܏dr DiOfոE{/E?Ȁc$_?J-4DXX5G I S QŬ6i, qC&*G XCE($`<@)a @tBB? xu!K)u_P„=}ĩ Nd,qacAz%brIl"+@c7sPSU (i !t qI Gh(]"c++$"9M3ԢX(#@&*% ,傠*%,DZHUBPѹQ@|9/jDZS#9HDp<8CmaQ<æ=!ri4aq$(A6קJ(H9jJ!*po/,C.6ƖPX-/dQ$yI$D@" k`!pǏ e. D<41enb"UKq _"DLj#f0 7rz_pe> ET 3@dnnSf@:rUMJ 8f$)㐁;HElJ' t8H0`YfG7)Cd x_dp5IKoM:R˩n vp+"~X-D\2DHB 9hVQTs)zL!0=YfQ"y:١:^#'WAxPƚ%,00yJHӅ`υ^| #'Fq;/D+y#(a0S~I3M;*pRfAaljMTeq(n$%<1[k6"_(H8A!\(H2!V6{GgX_C!I+Sn^ m+(KpIH!ɊDx94Fjo2\ٰ (9–%XxU9-bymc#I$D@" [qLX&6]+6u 0D}cB(E?oMB;-D$f Ieސ]^jzc=kjHeϗg.]N::8y#+* >'?"ᖳ.S.W T?]!ƙjVSIe,5e}:7s4EVreMMA$b8$2GM֮Lgk2La6g G\4$C0P5' ף~mXeW*= 5"=V|'~KhcD Q`OlĈGb-!;Iq~XNQ؈ߺkzǓϾ?bp|Q)+ɤr 'Zq/d>k1So c#Fb2huFnqIM>WAl)cS8&ѲHB.P8۵ (cajC䋅G\Wkz앺j\D[d&mY=0H;VQ=YCwYѪLa H#o'y (Z&]UGN-H$D`G@ 5e Kj߭+Ι\Bp* t8{?W xٛsJ G8~bz1-UXs|mb  ;FbA`\т4Piٿ 1q<7ov[ŹQ>E_ !n0~?M<0SߣLƨ+_ʹW|Խ[7hr,x j? l?-b~/ RjÈg7׫&=}L 0Dӗ2p}z:K,4 &itX Tg]NQ87{eCh us`("/8JF#x_nsGyAIdVv.d̂L&ůƛ.YHMEhP%R6#J%9#}! b!p)D s "ы[+S7rk 5|Mvmo 7^}li`Bzא^f(uC5/7κxmv[㏿j{EvMaZk|1Ꟛ8̳>z?ԇ0._'JLm@[=X"߲!]D@" H$X$ul)W=7N'Bz{x)  插NAK.&(8-8"Xb:T Rw0Xdv` iG6sHpB8p |~ =7l3L\>QêїٙI2 i sVgj?Lמ}9͋M@e.C .J58A%< F{^} 9)^&._Xp}* 0`F!QTBa~!it&zd%"PIz>ܿ!8afa!sI2(Phk uZ   ÌiZ|>yZ;waX",iHq S8?BEc+?_ MMaɠN]F\PtpdXƆ =BFHl$W1H=25ɉ&|(_Z F0c Ko-kV:陋Z/Oko|^tE9$|~䱯n֠Cz^%?ѯa%TJb>tW,PD@" H/ɡ޵&>]-޵w/-VjE3qŽQ.#!! h"VN[ `I8@B:v2Ԁl[ .awdRu~!@-:$*Q0 ,*@n2)3Dgk5d21Tkn) WЖ<TI#xώdbcDe Y&b|\M[o}MBasaF% +Uj2ş0 ix) ǣJcGmKgMԓ)[S,Dp`;ibNÐDzSeB4;Jsr)U;~ ѱYUZ4]1OIz7cth;)<>"r!uN1?9_{X]<(4D^ &*A" 8$%є+[p]gf{Hd 'L1;L' | >6!(/Yf)E(C KN%xB"HZDH z 0pARA@(ajv٫c}(KX3=/ajV*=aU歜ʢx% &8ȣU3桌*nNhɦ;;{,Zp+MdN" H$^ГaP'o8nY_ׯltc+)4m\ՖQ0Vg}4sT]Ұ:vXՋkzPgLta}Xs;mꌌ%թosplؘ-K8{?gվ6l*ͤraLمk{[!T)HZr\ ?<, Fnfui3ӵSP^^fQ"3jL]t%"3 YS389{csI{Eq+6lK?>řǥY`zi^O3dqL[3![tn._7 .s킅_<c$ӝk}jfL=3\gWO٤]tݑ~oMM U%#G(~yhN^sm gNb8c-M#UHύ4mX -Y[ہ_HARpM#Ыt޿+.=Gg~W۸TiUYL{A9W k\!^w|٧ Y!HWT箽t>?IT]{y "pqcf:Lvms3)oaUw495X0 ui̋>s&NhT53g-4 ިknRtiw9dӔM+fڪڇ駟s&OLduv) DH5]ypK0Np" f( zن[Z -ۚa0y}|_uzբY!SK<}v  %LΕ,\7cͲe/^d%D@" Fl?VS vzg*5w9 sN!p7~wMik08c~ ~M8)o/(Isa?lƙ ngWW+JmUi7UYCkC9^|(N߼Fݺj=oٺ`w/ooC/,,xN2m܂}=^= ̓;*j'SVg:s.NQ(j[niԅd !7*Me!vͷmwrAx?omuHD; keƛo\nlN6bw)CoۭJ[|a.'}[}(F&eiaH97:WՉA96_t=k|+3r7cĩ }5楋\xOf?{a~u'*Zߞ̄tǜ^QlnB? |;MlzB:9olb)D- KQ&5u.06t@\zJe̻EI[3ף|m MW[gvP>O P=3oWƺ*܈4l9~VܦCIUpD=ad4 m;2w̄!iP枵/jL_b_*|iWX5Ϝsx'_ٺtz-`K]lvhWtsP_ Cn&C/Hv,``/띓ΧBد{1׽8`B\PvCX\>{Y닛7\}ՏZr;t;C ,dҴXhI+RhhbD@" H (X$>rٟ2fG}!at&\: pݵںURsQPկ92_ډ(ny ӀpEv/_ C`p֨e:I6YncEa-E[mU2VbYꗎJ(\n칊k_vI5ʶDae3 NkcӶͥ={&R~xe݆7~/6ݦ--]j/|Xtof i8nE!Ju Ur=(R\UU1_񰆭2boTR] [ &q-ܳ 9,W]ns,\`lVZZ7*֯_Ps'vRsݳLy?đ5V==mk/:_LUB6gUgJ9d/@Q~m_,ea9%nݴJA--LI9 oc; ev?k.Uj#CF XTy"Ls[h9l:$O@@Lz"2_#m 8ogX٠yq׎TZ5Gzv.x౷Q2 V󼖗D@" H$ ɈtaBi7Nq)y][cQQGڮo2~"-Ͱt+YRf^l٦ov2?S/# [ToF6;L촟襇oc~&S]Ukf5+Bm9[Q"?}hYAQE;xHpkLo= 4Sdّm9t}ʱohtg7\fs<儓W9| %:$^!IW ̈+.PZ_st8 ԵG=tFHb5Fc3ݹko!s7Gil&At tppcftCx/=>WuڱW͹n+]u57lvUhn؄Lȗ\s?}0)c 8aH*W?D@" H${%}9bCzi@'y;l|9?S ) ~7©xxJӬz葿#d"8#!<!Ԥ)̭iX_;(eSc^yZkvk ֕2 J%-Zo?\Qp7"屇ET)1vG1>shK˖n(?24>Wτҿ<赗4c_0okν޿ާWBUӊϡM}׀}qz] &F9v&|wRM^o)fwE]qF( 7ΟKipϟ~6 %kuӜYrqK?ZOz[pvS)NHSyanQ`R1O9_t%[ʿ$XE^ @;RKдxS+ ,⧟xoر.~-x*tOm^xe<|ԁ9yע-8/i{% 똚xMqYJ'~ [n?=0p  %;=I9؊pF^V'wK߲r|$ҩ.8=I'7msCuV)zm5Z͓. RDNy|)RX /(7F0$r/>j+1+\WS5W-St#a~䑿b=BhPE"J0I1Htpn#>Du*(ft\)[ <:=Ԭ%aJ(ywp^C"ù^K ՠ"4ja*/ϲKH2NA,t(A@&;&NmQE9," '.FcyVCED CX`\'Y{  6PYb#ӛ^D@" H$ Wxx37OBb%)`pJ y\Jg2K@E@<*΅`qP)V ,.JSvl":cQ/'+L=(Tpa ̓q; ` 7tV9q)m{x$z1 |3@#~w$,L #(0|-8`R"1E)tܮA`0R L!DGWʑ,0:bZ !0Lrt$2$H@!ΑA =!t?Y8Q 9.pP q?A, CҞoAK'DU/ǺpWAF+8=@NdAah%R 1F`4A$AڶGmFj1RQ7kQr 2-pxZha2KFs xyP?bXjpI)hJ|=z` $d0Db`e(> S y]CRC.eF'0/?!ikD@" /#Uha3nFiDq:қ)``M!=:>u<^^3tX -+h`f]UqڞA;U0)Q0哥\(|-q 0 RU8WȨELs`Q„F0?'Tn/&\N,tGxΰ~auK`91lN%M*L+. *P >!U 4-d7]0SR)Ӂȗb:FlH` D]UftF:xw.IW!;$G"4rD`t .bPh#zK6!LG y$R- rF0L%%,2 <ٞ &h9ݑw{At)VtSH(Hݘ$&a@ ]g 7!xPPxM3x#7dor2`+A!SJ4dFTAFOlq&3oEHHu"`22 5@ !i L ,4h((]"لHRkو Ckt&Maų=/$P0;it4s+bh`$z&E*f"~D`WMbMdV&`yI$D@" 0EIsD#&]=x"sCtUaakXG 8T, ± [`(:y}bE}tqÓ{ Д1`#} F2IĽQIp7T\,-1JŅ=A$*XbG VB<ڐkCs4 ܪن{ ԂR>Z_g%HY'IYpd! X%ʅc%լ IV}/>|PS CKE gFQPExf ڟTYI|@^" U,:\\'9{EcGٌ!XB,J a-Qe5d"7 -Vг  0A^TXBo.0@K0wM2 К"%9FEI`@,!t"6lLlX4HM|6l.vBtىjT3DKra!%]L&oX ,$(-@BK RKw)WOPuiEAP HFH#I1.:" J&=jd9z\-˔ J5DxD'$(:[,bm0WPp%# !.BhD(*#ej-F@0bE#`)\*n?L|Yދ)ym Ҋ&QE-l{U\11F{3՞4D(0*GX1ŋ0P2IP.cCo7TVG^q Iz,.^홶ljKe;J$D@" 63KI"M?K$Mg#C&Sa L|2$Gf3dCY7z  ܡN,sD((΁pvR?vʄZ̚o4ga+v'xՎydXBTμ}o+5 6rmFl3Ak' K*ƾBbw(a"D/(3ahD2 NG(m( d&= /?cE0Q64EnE#IZ-=Ʒ(2Ӷt=U1QS0]@u;j=Y_j` 3m@!H$D`Aae,?V6\Aj @RcX*knljQύN;TT  bOEC;ewƷ|4JUѰ ]oֲ8׮p)ˮtp*3e$fB=Ei̽8 -8[l 9`aAO G_IG5W2҂Gm7bN. ּծm'Ўˮ$n {;ooWaaQTPrEBM!hw3e"]ZYةcxK-H$D@;+>V ŭ`OYjw E/byyC8běS8gR}d%'V>*e~.)f 6|VNd:*E([$Ӗ<*%D@" |Bi)=!i;Nr;=ݟMfsD} Ugc.1v%lљ1NU0mW~P&VT[T+'ώ"M{$~2\\D"ۮ5ұ(2]kc] ? E>ST6ht;BX˶BSF$'?S"hnW{.e=D@" H$B@ - 6D@" H$D@"q! iYD@" H$D@"BˇM$H$D@" 3`'g>oT$O`I$D@"  _nqVm4 @7q{HɶI$D@" u F0KWI\#H$D@"?χb6xqUU$#wCftAA̓BD@" H$E`̙3gذak(+V <1D@" H${0BPR q,* xL -+D@" H$DBvX` :/--.D@" H$DC"ZBq! -~ #>4+T_ SRd\x4$ݧxݶu~,;o^;|W" H$D@"#0 S S(n (EE9,r(xOK ƒK9SsZqŒC !m!b}WT.4EҲ@V,H$D@"𿀀WrȊS.,;y-h@ Q4w ѿ Kq!J !Jhz7VE#AyBo} SrF2 EEE OAD!Y >l=_ M#cY׬=bвG lD@" H$'HdPMKN膒0 FR„49nh(f][1D| C rM2Lq!JĢ+z!L(تnEuScM T4]8S,NiiOV H6H$D@" H>r & ٪W/p뮸:'e:$W]= ?َeI>T\AHnIYI/\Ι`< yPҩB"UCPnxy! +~ɷ"nXdQ$ BL>.H$D@"  \kcI0+QcveŊv7ئ%]Al!Bd☡0auq=W,P L3:T 6 &xE]a[ BɅ_FcpWCh ,<$!%:Q3a \TbBD@" H$O,R*G ӂmT,Pd%MT+Sw~=;>tM/ƒA,,>D:{ HJTtK^R,_1QyWN婨' u#&'(B[f4 _ 2 Ġ)=S&=#EbD@" H$f:2Z&&tMp}53!a>}b*WI8%CpMb_ tYr"bȴnU  C? %d$XbTXV8r^EB $!FfGU01?0C[SĿϏZgEiihY6A" H$D_fJ*ŒD߱=2 QZ tޓo -(Mn--iX'HLL|lZ&#a:uiek;pC+jJ0uh$KXN⸳&M5t6kHc @/)1-H$D@" " ĪS,)&bmEI*j}2 Y;{:3V>ll2u9uuAuB5ڣ|#lbѣO?廯gnl<͜ReaM|. –믺|Ԕ sc^sr†W94΋/=.In߂lD@" H$D`! rtS 'SaPbDNԸ}N9y ڼjƀn~DZI g_<=EO(l˗ٰ;txdI߁mܧ۫on]kMMuͲE[7oH}5ْ>7\5ӰCMW#.8y8rв lD@" H$'N;"%Ɓ+8PRT cZuujeRKRCFB 󜶫e|3ꐩU ճOp rmn{0zKx\O`[ C.A7OҹӘ>pU6J[&ժzuM, MZdL'8e$D@" H$X~N'l(qB󾋖BJ>(H$D@" $ Ko&-Y2{ _LH#SXLcf>}I}:H%q+/TWwJ[OoY u=5_;ycɓe&5͘f:Iw_׾gHX\tY'ڗ5-mfռƉPW)p!ND@" H$D@" -·tg9SVBDۥ Դ,UȎaȉLIGE**2ev NbWǵPK#mUɅ[+x!d]h/9~r%R-Leζ-C^i.*Hs`p 1S=إR1q Kzć0T._gE AE2b|ÉdA a}C&)_;Ƃ!q*6MvAAta-D@" H$D@@ p࿐+<Ýw ӐXsAL/&ܶPLH5;.b q$?qQfT{Խ'^8aRh/O*H$D@" x@PnF { 8XJRn!*8bH̽{_FWڮRS{HYB2D@" H$DC! @qhKCb">}凡nfd BN$ ѥ,?Vg<J6tJƴc"[!H$D@" E" ΝL&E-֢r$ R 7Mco/b!E8sd]AE8Bbw}=mC+._p2L彺S;F}Xvz!z7{v3g~&5:X,b7Ǖ:( {e:s .<>|aE'q ctܭsTTuGi x9ő^xEF4T9He)\ ]wѢEÇ}4oС")'C݋V% !N\r}ŝ r04b\vUK. | ^'e$ke…?nBɾխZ ?'d )4#/}HO *6 "4.z_~+ež>Z/ $PVJz9{>e|ŊÆ 47e\&.+aOL4L]#${dOn0i_0Z,J´ _ĒE (O%ˊvz 5<xX3e,vEt kb[%2 &JtJV.ψ/bO+>\:]fd9,,{_|מBRRkA"BȽ[.1 .wX,:q_L*A-c$""F̫q([i6sv TTIׂ@`}EU}VBw,tBq*/=d ? e#%>L-/{KXyw|JeREs}mƽFh!TDen(@' M*#~h'YC@Vޤ(QFK.P~2]['o^ ]eMmy PoKG6tY*ܕv|D-(b| ~b6Uڠ?By?"Pwa1t>FOV B|g4Z_ T٥T>B^#(j+nG mT[5?'Y?VtX6sfez:{$QRv؍12y~R5/\anm,ŬǯeDߡvtc#'i[Zp][ޚMl({IdB!sh| H0q6GBaC!e9ݞL̅@?{d1.-drđت˺(Qū[ܣIt|wuy5xW#˯T9 뫰j&햪};;U>-C, +Y+%"n{]7[T:JU X[<H ɘpcU][*oc)3e>v|R"{F VQ\v'|?P4TFL<*NBOlw"be]_Bū,@ZQ3 /QX y9 EJCEix~n jw'jjԙa"j;@(kj}#6-;L]Mo"Ui__B"HBD}3xUSE4v;"ֻW,%F6kv{wcZ11[֛ u..gPyIObODsմ~ʏuE*"DY!y h@ZV"E*_ҊeὊ)<^ml<dv>g*L̯NźrxME[Lhƕ2.3n=2;]Qw_V&]C7,yx%P*#G{S #خfЁ+ŮOTt*zaу( 誒,w;pD񒾓T1*w.s8Eۍؠ9XQO 5瀧~.)Jm)~ou5 le"–n]ai+LY+=lLې_`oA&a.bf_vte6ێjoPmBjvƻr15knSm}!j ՂpGyJVFSzWCt#O?;dhWs_ 'ÃҺ>U>MZ't}Nr)6SK8-z DB2CIARUJ/&Z>Lh1'XUzwF]4?vӛ"MrlQ=~;̥R!rK۬+myW6rNPR+ZZ0re"i,#:h{$nn?f'Ciⶍ/BN{*x_SQb %,hnWjćeJܶhgU"&"K1LQqP(z%"4?D6 >te"149_ITxGRk@Pj#3 nw;+1Oy?h?>NT+6xAיhn"D}m&^7cuF+RDθa0/ =mS"ZS6)D$/=~=^bhl3m{VDx:3%Nh2yD 5bo*m}'@lΉufb^LO&Dh#rEn*sŪ `xItnyA-Y蘀(珼WQ5 9]m1S\}Ł.B*_E)~TXv*x9L3 1tUbWlŅMWQ\E2E?R&./8m- 8b!dա_a?E,DE彆(<#j30+v HzJ蓀JϥJolobزuAC\=o3g4b+ C/9Mۥ\W2U[wj(D\B}-9ƞDŽ؈tb CJsص,ZcCN2.d@1*G+c: )4CnWk9^Gx}*Q1 r,hCϨ4AM^ ;"k3;K!4:k_+S2_>^ZaX}&nExK2uTK-[*H0VĀOX+!JS 9#B+m[ v]DCS G$D)p;>1yOД16"~߮&ee˻4h|XFB/Ox +'ƑXv6xI;欀/x VzFmH *!h~9bgP~E>W+^[k\/^bq.vg >r֘ˢQ,ʌ#ꊀ:*TG|MP 9G;:bzP7e.|K~7>NtGնsAbj#J2j[*H="?h0y.p7\plUׅ7~8kΌG~?SQ*$@ v&|M>G}0Fe?d;rZŕ8;n{ #4OTl[CVImL_GVL@$"kwrkS!(q{>0;ѓq(BKEYU/ESU ^b8tVu- K[wՅLRYE~u/mKc%Ї5 8ji 3ɔ!p z@ǔH!fa˓wzE VQ N(Ԉ6`3"^鎯˰h ".m n&@THp!RGMtqE ^*=ʫX]?&8vԤه P%tUaV} {a|MigҴU$j p5+"A]B1V=w+Cv&'ZW4?pS#垧@ϰUCeZ 4qh7ѤZzˇk2  f y\L2O]ޗL.6Ak;B*`jn҂Gveu34[v< ybB<@_ P|O(}i"HՐTW縛DH =><~doDyX T6Y\@8E i EDQ4w^cD 4,Q3u<*pJ;>muy*P&DOȿּS4AG\A/*fQS iV”qqEiݨjRԇ( g3i"1b^\ь7 , =>"&fq}$LA)#sد /aeU0M<UD3 pEO|L݈9NjnE9)ABsy?K+<?LMg(eY%;<˟Mb/)#Wtaÿ=@c* D&a[ <'Έ# !E`7'bm-УscGĔfY삑ΉY9iE9vda>cxeF㣕Iܼ<U,U d1</kUyDl.-n3"Q-7va+ݸoy2ƊO̘>BĚͺ%fbbuXa;flM+ -O ObGLk`~.SnT!iE[&~Rx6,(quehNW܈##[4^-AeޮrG϶-nge y#x⊗R=?aoX^*ʤF[ k+EۘX}2GH؈͈YX+fS䘍$xhqfx)U@D3l."+>:^F3WVBnwE&+]s.l [1E TgDQz5_yl-W/G\R@lm#~Ȳ vԢ!o,ZWx'vvҘ륡$9 6&.`RNZ,FiUr~)׊*!]};hS'+z b5vs|+L|HT':mM4gGYN#M+xT,wm:; 7,;sF?џ;n7^zaR. h^ZFϚB -8l?JɵU zw3HQX%|lxSᢍ,"jA~LRDUl[o@pf# L."Oxk@Ȑ"2fGGOB[tEÈ?3]9'01KitbVO F+8Xy#(^PS0 ڮg#F_52b c#^D/%^O:Z<:G#.0Z tڨweB_^'H_o<K|!1GnceB< ȼ`toAOy+\ioc įmCSHv($X+2 ꉵnV7"EtȠPRe2$#)3Ó)_" XrvrD#4lCGF԰:]\zH|ܰ3m(.F$#e >폝OҘB+ SNYg#ՓULT`b&x}tѭjv砜R\1㵙WdSVH' S; L.bXs\ VAwC&Y]6Iwx` vp͏B ,=- M`8-ǍkfQ\t˝ Ԓ`W-LNԣvS=\ oD@H*Ğ_v%vgm 5T{ĿؙCBG,!m`3IfہPDXOxCdsjAbE$6PA)̇T.=)h)A:Ï4)oKԠxu #M4lzJns}Dÿyqhqc'44>K3o8ç͜uq?_x~-RO:+&Lm_9{r,H$ad$<*Z*Ů2N<1/.ҭX_U }c奂<0L!~&5Qt\Xj_1a Rq* d}.lj21Xj!md# ] BQ{cM#(X~8z#xgo)䉙,Z&>ZNU0.½<~"9ڟnQlD"&V@U-]_UmGe{S;Tdm-n21jǢUxYlQQaWr@KDrb*^꩐y sG6HBGG/&%:-Dd*GkuZD`(#mVԘOQZl3=wXix=nykrKOŖol}6/t}xl}%?5^ފ+F07=k%$CӧFyƱo2F+>bȵfm%b(߹o{c.%ZceA*Pa1ykUL{>h!v ,X5iKZς9oX7<೪Աe6XG‡ˮ{2HiJUɔ_=]H뵷7kʦ5=lkm;BdXlM-MqT"(G9Iz6x02+ZC3FK m> Ody$ރ<= 'sSIPK.i Jȩё̈́? /T&h8Ѿ-ˢ엜:rDjPֿq/LSY4VwKę: !y2gn)t=ihZ)vςFݑȸb}*ôy3n?)yj B`+2?s{u] }$*[7QkF10$!Vc4M!JDM䄁e"#ztKjPDW.ISļ-g8v /ՈPopD4JԦ?M=b0In(~c~ cP+4,, +Ub@k0R3QKQjgK*nϘ2\do$9Fa.xco,&$RM!ދ!(mʏCȻfLGߢu s"XX#e_qDO,1K$ 'q(%EDB DHϳ,^д# #F6X1:qM,2K"ZmYb% 8F:Y)T,`,Ifq`wOtri_v:-΁&0,ND-h7y%e&7u ȣ/kq =ićzfyMJl0U')ۛE" #QqD+AxSG?_ HϷki;jS gN ֨xW9sSri '&X.ױu@p]= ik8G,.q& zYq gBf60,/ r"Aez6p2oȃ䛆JSqdN-X;%ѻ(Rw1eةTM[4oթkZOz7jU]y%UqY?Tƨkڸݠ L33mC~x.򬬘H$煛ݫ_Ο vxB:E>)40 _zP 90]#u[8YM&SDXZ dQuSCDlIzt󂐁tbQhh-l9WLLqlL"@HbkW)O6f`IKQHFVp%%rsrJ>Ӛl2zzFjEwwM2x)y@D9}NSv $?%ЙtzZ !2c9aWMGL?F:7(Sw5:yx(K,Errx^XPYQ4a}t88Zɸ BG_OҰmX> #WfՃd CdCB :T0CF:cߠ@&EGZ*?8ϓPx8{8I^崠Aޡf+fr%]iO3m4An 1VT!&T^9"a$=)cX[B!f(6!#G֍PB5)=Hqιul:bB@khe-`P8CE t9_ ֛xې֬A%F8!bs`rIKJM6x0OOب'7aH` (}({Q!! Q6K[PSC'cVFPSBa QwLl-uRlpS-&`i]FQ +HI s;>h=tn)Tl|-ȫ17*_* . hKNGk&Ȟ#P?~BWƝa/5)ءB/}KvNLG@ nUM7}*V>Kho1Td5\xw q4 ' ?w GĬ#393.faiWeX 4C`hp`nh4ndB}IF ~ԕ60%U,lƘ:n KhZY2P *&&BEhqA lu1]4i{+8Ww{D<L.F|V[1tW?ޕ)-du?:{,PÆoijRd`)a|7i8}8s׫NrJ$ {KM%q87!rX),]:Nd!:+nyu*NjiUOjf2cGFPZ@d=0cj9fHuMamSA0C c92ӃoMM9;o9an>p耴V''xqUi=rQhm& ئ-pfaW Ii‘L `#eN-Y` Ϗ9"Rkqh"6lªAwey^2Ak :po*8xg7fȗ6mܿ_ifGZ&.,B1֮&ٳ!| YȓbQ.Ǣtzm N n.9`쀆F&RcwqKx) $lE1"X[^Qqq2 ="_wȅ޶]Low%}0>$ V,864?*f]]y*p"INoAL@4)c/ s$YE"DSVys+qHAN6 K= t6:qvӵF%T C iE#itEeUSG-iUFVwYd5eFwÌU%֦=:w˘)U}ghh@͗? c@Ͻ_nI:2G\G,X4\#4 1"w @h CRfu}ya}%'7kR?dȾ*VC>~Ak=-uNe*$AW\E;M7 r'1ɆOC [uȀ}ؙ2{ވ[°qӾ: r5uEH[)v7 %5Q`k+Kì޷FșLE=yӨRai!`pռ55lɇSЖ/z,ԇ- 79]**xȈ6;-˧vW멏aX*V -~rEXrݜDN ,c$yanCJfe d$_[yڃR(@&4h.%Sx62fLEiӦLCv9y6.Գ.wֳ9q ݷ^CJ8aG3s+'o0 Mku [;\h>OxH4BcLud˗Ic XKT}1+'@Ch?U;kfJ6:`_|#ȅ)o[cǨ5qt<+jو|>|D*9CX anӳYIV1D.8Y*d?䣄a$f{WW3biuQp oOiӨHs.݉~XZPcq=*&-l\\7b¸9*fl4j :@ 38wLTp 6X%@/xeq٤x P nڟ@7cJ0a01TjM^}) ŰK2ySj΃M`3ULX! A5x{9ػh^ bqSx"N7v;=Gv!b#@Kޣo(+b;_5dθLoΚ1_1ed c ݿgZExk78WL|lȜOKӖ.["_w䷉qw.@qie W?WG 0Ƨ c?}Vu˖LL z3 |\ 7Ǚ2Up)Ѐ4Nǀ)71%{u+u7K ^3殦jah;ʍ{qoOB _pL~g7斧̘Έ}@]-~򑪍,~Xo%P"ݓ3,_t[orܯ^jZ]G&AOF(%/p%v`ٔSGZ[|s^ru6U Gt dZ,RQId|(Pۻ?~6r0̜IB:N (C2.XC +ٹ_ ݵ*gR-)㳥9ր x$[aȩ'#,iΩ]j/{~'M- qʅzĄ'ga>p Jс?4ڊj&/eTLRA0p N1Y?Am*-6CXC^=p6sBA&ҳfQS% D\ OL7wG<3fLNu3IN!Tv٣~;PI[r(N;z={vHBwuppabj2|N YU<:,(B[~*J]Ր2}Ĵ v0#>hX`JOPI%+½ P×LQ #hb>QN!rgo27@i5Ӧ$hBI`YWx7E o\A0v?رCaќY/v5-)M% ?Vpx%*! xq'l"8҈7i*iYe91f̚3`Hp D&=a̘{BjXǻ޿_veS"l٬$8 ;?ߝ#/3YJ%rœ=̟1ѱ ԳGnm_-y]S٪)ӧ /l8YPrF`ĉFqIGHzF~Ͻ_M;vkÏ E,OXNH* FS RD뛉u++e8.B61&?-o>Y+Iߋ;KdP񀉕>V5$C2,&`%u c< h8 6 3{Ѣ$x҇ӛ3AGCNUB#CS<&R-I񖴯dv'7F ioս{{FrWy7s )!T>11PJA_AO l&َCo6II8Kgx/ cH1K,IN4[/qslœ?>kLa)ŲJ]tKhe߶%usW/aK-G[6~_Yo;w\o9$jj.o\_nxp񀎹$&'E+.+TvaV> .Hv%E9 G3析š !K+8jU₟_ꄓ٘c&!\&8󜑱F3*{G .$-Mb":mᘱ *s~z{``kָ> ϽNݏt5Ix"aA]1P|x0z08v8xfpV461-HD 4p>URb$69P4/U%r&$3 K?mƸweh|}_K\ MEb0#8*k 9 ߶yF&=[@Pa#Xz(N )KA k,*٩e-[i(-N,"s/ Ob\J Uų.JEi:L):;y+I܂V8dEN(v^YM~u/kw ^ %k:~!E (jS,ya>Ws40:pHWdC9Ozك;Hԓ$fC -r YV͗ߔZ&(UF}[C@EAIhb ,4a%;hyѤ,(yX?ѣ)S8nQ|Vm5|KHaamDg^3~ qEv7ZM 'BZmsu/p>grV w?MJF8== m \d8xcc { T;>\xBYyxLr,R&eҞKQΐ ǿ~s`*H%xKhUY]չN>R2m/u}*ҹ`_> !9{ ]#ԋ'?_߼JYSɗ4$d() OIԀKJ@uʩ 5adK K=l'DcK˄8aAiQiѐӄpTCMq3n BR?tPMmH- ~'^i`I˂(QUm pB&3Ӳ^xcZe+7}' %#|-JytDB9):¦- t$3V_ߑSc-U 5*θ >)AM8&P$))nnnBXl˞]؀EaJ,?&RF"_p]B6\ R ]I\X`8.)MUJQRPe`Tvgu_{7#?ԚUUiUeS^x9B1֊V BCZBO.PZ@PNa2Y⁒J֟d 'HIv,0ɨ*O-^r^qS"v p0Acu,j+xڀjgGF0cuƅuf_SS`@N/BV D3A)9||/_p]/? ƴPU?wgb"wT)|P\}P~X(P4m.6슘pm9 @UO;{gaUSuk7k9:7tOٹɩ|`*Ck_ _1̍yZh Xi0~ 烏hj:УǐkW,^Xc%2Z]4a31glJz^du^zJ囇2gђ>}d[i G |KkjK7Ǿ<ỮfZH ptgL?6QUNfSƥ#~ cƭ_i^uetuiˍ'npïMǨU>qZ(s M~;& 0 3u)ʍT71g٫|Kn1ZS sڍPshSb;lA˧NQjI fY&λ ͪ2{ _z` +Y~]$X_H[ A7;@T!ID4zUWwZgYg Lϲ9tz?rCH^zkqyJO_{([:lEVhM:u`Vt,#dmMV=S 's&N?F]L饓w2lC?N] ;g_1j3}Is̑G.XSG1,\ILm~ۥ)~lk rSN:Ƞ[~׿ 7mŞ[__Y_?JUxݛXl`(%Fj;uбۦ2x#G꺪+76V qeT {?/ЈJвmss?1hY0Ľ%Co& 9;gLB"V5s٬ݥ#vm~Aݫopkߴ39YM(w8u5K۸7ͪn8K5nZFP?YcƞuVo:#:ka QP[sOl. 6i^zEu%WNt]O 25.]#eզ3mذ~-Zѡg)o4/> '>: a VurHNY8&6t3Wk K7O0uЀa^>AXӦBkefP$›n.r%Wh*lթjPceU˯?b6{gd8}O~Õ$?u wQW. {#F~KJI`Q>}"R[[(l뮑A. YZ1pޞqoo?gKw4yg%j2͝>3 &NkZpg(' U a΋{,*&B䋥\[)1wъ}suWP~ ]_A!%̻\`g@B^ ]á>ӴlImKf3TXp%+}2$!όkڅÅX##}4&]u>snP:z %b_#ܜ7N-^8uYo;BӔ'խOPo܍-KΥfCnQCYƹkozͦp oЯ'/ޛ˓T*bZ.܁x}_[/+S1k(55= pp3nv+Ft# &ٯ_,;!\8K]'L/=D;Qt^u!ʀBޥ;i -s߂7KDBW\~czv5#mZ2=SJ]ҩ~5jwEeӲ'wIwy7QӬ>7;SyP3\^_/ .̽N5_ӽ'uKKntYv3\+,C̘83}YҺ|:Æu7oԣ[w&W8#]ΰCv>nBwY)Uyhb,GN* )1[Vާoߜ7s1 qކº5_ME^A1i63~EaIY|O5Uq3ֳ?m뗷4455g钿x7̘1-Ƴa墷k|#~4w o5jyW ^[' ɱbݎw11-fLY(> yG߀+n7 \5ktT#U5QPn{Re ڸpwTu f7v0[0ჰӯ2)\8uP>bStoX}aʁ}=uZ /ysϿ3RS=K3k=;q,tǝ!JU ҟ}ݖ Slܯ[Sby+sg3 ^x:_v17}j߃λnD%KϜ9v#1 km+YvⴥTW]ȣc\t9$o{ wڴpER}} 9~:R5kOܲqQ ofNOϱSq 9,?Nx)'pG1Co+08tu'~"֋pOư<?55ik8H/y3/[n*.^Bwoa|mV1 /xsaΛ:E1:0~cng2ƤK1tF-Y2 ޴q[>L!V(jrQ,L~?Ccmѣx`YDQ8̗H m"] bymA+zbϘ@:}&Zyq.G%5x){̚0|a8i߸z-aiE+oDO(R퀽'O 8)S'"z۞xq7&2ai=f/l\x^=pr ޼nkm_ޏyH{=y"D4B\kj?y=$qpe:}KAB ,x{ًg祥o:zɲM]*#_Zf"5>IPܵESwdU"{T2ȢRI$ BJ#}~TI Iq4,<5*-uGԒY6[{cQ2?^6sw}{t3eVڠݾ0dVl]xޥGFM=,Ya岧^}ah~A}js %= ͚ɱq8=V>HQ|)Ȇѳ_ވ&2KDZ8 C:ۧGWZSK.?I1/GzM_@`:wSx\5B5n,9c#𙖍 7̆կ~S ׯZt5w9Cε֯߸jj6LJ8ܹk]`sVsh@DΤ2]H;.\|Yxc?#ÅHe_'\հz r{go-ZӖ`l o۪}zxiWԖ^?{Y{@z̗?47#>qoc Zs@.p|:F"I,aVh&tvukV,[p8|sz,AZQF4gH=u/2nv1G\s]t~k֊9Gfwd2sp,B\MTU+)e3)oA}a@#կu޺3 ,Z{~)gx#t*]U(zVAjRCtǼޯ3~^L>Ù{A}p0KyC$z ]nk0HANiLx]L|> b]qlDwwVlYc|ӪdGs 6!wر JZ^t.h] K 2bɕi0] mѽgԬ =S'zT*dk; 6, \x {'z횕WQ}>| KuY8URud͂b(1g<< چ,Pa6wS`I >V9"QH cNMͿׯ- ո5[U`/Xjb:!-a \(DVH"*^vwi'm]) Ҷ+zS`Z Zٮ=w)$rWWgm9#ʼnpݯ $eSATuԩc]mA>NvFD-vSR߻eEc6E!3D/뮶sZ N>2% lpWF88 dP |!"9R'(ƝÎGNvI,]>*J}Ӂ0s$=r705WF!Z!sz>A&wJ \# 5U׬9{&,N%t-q}`HROWOB<Q\"kKD@ = K h]N>9NׁMS1Rzr6{uYz΁\+ҹCqtHM8س/\Ҍ@-O9kpt ea8@3>7Q DJMUDctKGulk$-U$Gƒ'L"0  UΔik55YUcwr/W!:L?J[J9E)fRNiFIkTz兄%MISvCғVWr!*qT]ma%:V>}ޙz)ۤ6-hiX2Sn_#S^RrsZ&=mۦueAnfp5B-d6("> xD@ۿHrYgY?ԳHIVXd \fl֫:tpnqE?(L,ఐ(v)}{WܻT)6l6WF a#TӱcVYjoU};H"? Dh]a.a$_xA D`!,1g-٣~Ѥs+Fg?._GA 1 $c7#3M[AȀ dUCSȒ~ RУEt@5PT,EeQZ׮޺IҎ=-pG 'yqM~px~Q2J JiI,Be Qxy&=p*g?[*'8 WIoPqB#Oz}ś7_e3݊0aOAHs6ׯ0WG$}dD ]#'jxڵ4#*U֥ӆ/ N!e ѲyaSOY@\"6~)G>%WFT 'x0s~o}D |྅5?i:G"SWt&L$\J8Ji< @1Sڼa J%RxXB[isޝjqĄq3tӚ-6->Uel#sN>R)MyJ~ $92a !5Wx3#TCox5GEذXbl 8aIR/˜7T)[irr*(uF@vS9.}U'N;y .[N>rp v( `-΢8-I,Xma (e ?}{.5"Jơs L+V6(=};cM3WCO5;&9ćA)`[Md&NCCSl4 C$\*s.duu ~&K\ jdRsb7X9?D'F 89:h!wuL .t^X #:EEE]4]tz'C83UH+t)}|J5W i6@mZ̶8C#IaI$uٶqłl,vπA}(`A,.PaaJn:p-:T{k֢=),G9PJw-I9--1GwΚ:[1XtujKc'CsnjlJ*.̚ia #5Գ9)Cq^mtEF yi2Ԅ)h'x:;d\#;QJ:`Ɖ+JAo84lӻ\*A{e|8q? φ!t‹7-ɑΉi (Mү_?i™Kqe@K8p SaK#@(<ⷽ\T6C'C b#QPMC}z44-=dxMvk n" O>)xJ,#d`aíxillC9+ `YhCE ~K/f,5 [?'^)K/.4 ,n-L֌1_g  ='tHmR@ඇDcE!ܣ V^}5#%#4 :.^R =?{7RG yrZ?{Nqy);eTfQ(?^|Tt[{~8 '\B+4X_{Ft: 4wvTW{湭ovlBOq(R HKS\;bx  F]w}μ6Ȇ͓{=xa!!#$gCqToQ i o/^'wPUA 蹰H'O:N<' 9OaXOҺr$5pjFs q"'Ů/: W}qá`!$?n%!UMiV#gm.#:,SXeSp?SǪcyzӃUJ},\ 0FO0;t]z%#Ye2Ӹt\lٳ׬#wW㏁!zc{}Ba\9kW5"wC9ˆHFÔ2fYQ/XyIAua*jV6C|gD(=X镗 @5V³oNK T^F=)ZLd;zsϺsOӓJmًfiOa QyD {J;vҩgǣaw8|~ot.Nk3'sѝ} .XIJ|WoaUew_yYGX]Xs ! ޓH"^V֌@7:txU{q>ΥK4ǚP|N3VRfsBCo܇.̄1KZyrm/1TE?=cؐEBzC#zT] u{Lol$Gu{gο\TI2l(8wٜG,tfL~llwR.&xb8}Ϡ}.:.82N\d믿Mc!X=7dx!{/^&/#U]a}9sN>D(#g>Fs3O?ߟQ^F&qyN*p+2@K; fcݚ o|O F0 g -ի|PK uE7b=={D/(IPP"N$AdP,'d$Os9!c xܗ^}o^7o<<޽ w1iٮ_p !*gOߴ^.'ƒ_{mZ0z4 1=(&\p Ju)=(hmvaw)1E)$o3= fa#Ƞ6뙋GA{_~ŏu PqҴ otq#`F-qX⠎^&0B(V2 2*́lVvD8 -]iƆ<,ΪksAqcX;vq"@c ;4Ǹ/ E[ItH,C['xY p0t; CU=^~RMsAP0&v f0xȡ{ߝC_dN@Yps|~᧜K.k=xwߥKѫkpG} 'y]P'*%OWXBZ؆iaVm.9Og X nTr9ƻK:IDfcqWJ쯃,UM1cGVN_ O8;*t.<̔ilk񛮼\PWߐm]d4W]Zh2z =u*&!#jnl:ᄎV K$4/&O}ɛ4큻_uP4f *NtIK5vAM,odbxO=q.@΋6IMTѓFV>7a=ߺwy鰎1{oܵK[IƚދhG謋leq `0Jeܯ2Ed H^k>`@')Vۡxȵ˯t&ӻ(̽ ҕ&/NjH+:Fy`!XeB, )@isq7'D|XɐKG(0&7%@p5?d@/wD2[g萠c_g4}:=?}g].Z IgLEQ#|׸AOO=iԂ8KEwnɓf۾(^a+ؒk Zt!.o3vUvęβw_s-W뽦LSˣaI'JdվcDz[?+3y ! "{E@,ɋ|r2kB/y 7Bc>|U;ZgF_ML\tdͅ-]zݟXbst+Z˳ǜElkVI/&M~oL5a .})gCnc{0ozN_q{6DSF*;] b6'p'=bdR!/)27L_.%v<#v&ue4}bi4tBת(f̙_/}%ڻt)sF6 -yI ]}+G0g[{z'EbCӷt؞Dlp_Yq/UzI`{u(/,^tq,s~ .W%ma#ZTNEXtkC1OCLz9,,3!&p5Jˊ;G7Y)E>PZ3>]7Pb:in>K(BizPu4 FɆ*DnPzGa"-wU k\NV2rӋuBb  F^}6E]fD|՛x5`ns%~ >T=t?lPYÌ.6P$l4@A[${bIT` Mg{0 Ydϣ! }쓱cy2s۵!\ݡ>{&SΔfj Dq6LJ]hf˳Y#dG7z @k/77b(eBqUb -E>*HC˗VJ`Es ÂPeU;QƈI_)Ҽeޗ}b:s#<5˱YQN'^71ӜZdɋ/:a`a^A &xS&FYIzB]{y\G҂3z$) EQAaoiHh hBm%֐24<<(D'b(*y1(4&Pm.,$<:k-ə$,{Q??`(aKrUlX zI{•m30Em=`cbiL߰.d?$/ dKi|9u >yJgqHxͨ*mLgWhZKzZ8ԌNԿ@ߩXAL1Zm1ձ6_=L/WO8+q vx2<0h BUj5XqTyGQAO7x n@8m_.p B whjidT I<:@z$@BFYu7hEƗ2Gmy͓'O$ fA?,t$_m'JZ\n(ռ\m K`0L P!0Ta.{(32r 0J B/}heIU/sܰ}5m{Ң짎>زj/%9ҁk24s$% :1q IewO"fiO<ɌFMb׉>\E89x49Z_[H S 3LS'[9H6f$[H7}8侲ETFLrρ"i&ES$6#a`B4wÒoLhP_{9m *o9fx!NXQ<1LYS0+tIY&KebZnjbOB4x|E.wowb]btܓ-YO [$#ŹеF=QgӔx;HJiJAiQ2ps s)bQnqr(,QbRNv-YK Ba #38X&%*%&¿Gj  cR1:j`ՐZM J rrnTi0v21EL9I=gm 0}d]F@6dc ĚpxRɭ'­OL؅ ~dP}@H@m)\;N v E4!qY{RZ&M}$X]d]YFV(af0X)/L@)(dLH<¬ =)k9YeJZk SL{!0H9&-ZF:VP+rһc:B>}7 Q4GNUiU ^, `".'|@*-i{VQYL#$N@KCIݚh}._JE^X /F>A  QV $t ̷L"<* QQkЏeC)BK b}L E+MvCM$#dIɘ:u:&CjSlG7&@RiE0>I,ЪY2d}^f[!𱝵Sgh%\~td}~, W8LEA4 b}LqH#@\j<ƨAE? 8[xAfB1\ps[E * p<2)H VAgUtv3V^)bgzuf:B\h28I.&&(;tÂ~8Q\tӈA@6 ֑>}$P:"M&-U[;ַVMn3Qr"d9$h% Q5 "L6 Bk3aICB9CjM*F5z#ylʔk<-CY#hLw\`~V^Cd?m3ilfYPh5:mB`&guY1"tps :b$v(,_'رeízAA>BI 8Ld&A :>քhD<{êCuoyRXS, |7Ja#H p$R)Z"r XIy0#8n$Yub/ . ]wDΪ"К[T :#k& ؄ qbSBwd@VA֧vQ3aCҤ}`"?bn#@ԯ9×DiV@JPb:MThנ Jd6Ⱦgpl@lQ֛ jDȁ@3imRƑD`_6ͪz$q(s;'-Djd `(XbTpð +b_8߰HIw|(DqZ$hxR )4,}e4JTSAM!xR4lO TR eF,A elY Ȍ?KDQ=H:6Hi`Gclte0 T#Pc$'k6J3ppm^;>!T*gV^L FFu(Q!&2H%VS # as a`R1DX W&irѤ A dmd1+… $ Q*["܂>XՌE,¼H d@iXW1}E ܼɠT䪇>y WڇQP;]{4i@OQF L#q8B@{L%PلrU], fw ٗIR;$Rt #)RðJ@""cW*ay,$%"``X5bshw`9i:kQOf"Ɓa^f̪uOKV4RɧqvR Z'`dzȕ.6k~a@ Ky̌& =gQ%K=m+ IQ%{rʼ[|ͷfϏXOOBBA)bBMIPdӂ*MڥvJȣX٦lV8R S, P  VE(S|0W>1!yW0X{jeZ&^&23(Ç"CoMs_33Zp/`T2f$jw X#vI2jA$˘NZP^ ԫg(lxŁ*Gl$Oy҉@T\K !.4qZEpBU4 G- ZHvzbG-_r~~S,tpàD,~1n$rpbCfEF^ 688n Ѧ;`#r!2!o-v:J/jHx(DI+3PG>6a)6rAH!#XJ5"&X)GWQOmLůZ,(t5L2~A]CƉ?p%GmjTT0ZtVF2r/ZٟH,χ) t)gZRmU!U o&]j>2 !՜ҨhXw`1P`K5u~ٸlG߄CRn.j8V'xrSDn|nsܤX @ats؁ qxѣp/NI!By&,h^[o3Wp 1B$rE(H# ^0}yٹQЍ"φZ N'< ăO))*4C$baVoXΆ@K|v0I4ʱ Hb:\[.lK:a̤:`tTtUoIG-4[3~%mE- p6i&Diezq@urH%LC(_z뭷>ēPxӘns<*atrp> ([xOzeh _8# Eb B2NG@d 8L$ 9 v $|H@G2_[>,DXm:Rĉl[p % |#|Pe /I% ,z3T^ՆX U~R]=cTG@MRjkJ?:AFɘ$uʊˠ->jm7uW^=/W_yf^Vn8s~s [׾F47yeHS݊[Qh+z͛Paޠ$ VqR`*7zl/iUj>0Gc\6YE w D`JHXdZYO I袾*qe=mK l~A WҞI1cy''YvJ.&Dq"FV_veX>Xꗥ|KcIҼލ@ƍlb0W a@GDejEi,ck6aEB(|)= s$1]I:Pp/dxJ d61vd | M1H8'hʼJ5vjV%[6AiٺS+sN y@J >=V\L uJW",>a_+`@땆G:hXVkb-AP$tiC܃4IgtP6jd>߉]PB(/Zn+&i#BًJRGΰ}ryOD4!QTI,:@f!b1X\}>(Vjܟn!2N$E?{_!_ XL(wyHɓi%Õ#P 1*؅P`!%`NXp{/е_'^mJ6{`}P3eLjPY0u֋O8C/Vv0zWճ˂чx]U7\ S&ϡ05hx< :T 'N3.8jÚa\jހUoEˣX3stU{ KK.Y /kheQU%m 3W6*rJ\N$` vT`vJdIM%) F)!,&ݢȅAW9M;>Ju(C Lm}bi)$^t!I6h95<@bsUĪ%rSVg2Z륈Z;(5HѡsNEwS+mCCC{7&=i>0ŌwF&Դƭo^F"o}mMeeiA x/޶<rH!DQx[˄lc[_b%M`$[PyDhm,͵vehk[qml7|ɸrS`m Y"ؒ8WZ%vd[IcF&+aܣ EO{<'G%#"E ߀(&I.-+cV5`a,g}S|7?pP.pW{_|5bHBxΞՋ\s];V^4w-76^5Jv⼘"Vvfu %[Z+;WK%jLπŽ<qgQ#6/%ZV.K1d9ppV|K/d|z2t" PԴG^lޔѫK~ZFl yI>.W–qsO +wAd=ޙ8čAnWUB%C!8M[Fod°1 Y&e)ͣ&N"Fh9 J cPwԑ ;mxVF+ TZɱycs~ ,f:h?Š{ҟcW&{#DD3K> ~L"<-TW*`R 9H&(D(0Fq(QޞUת[Vh995)L.{=dʏG 6{Ẍ-2_ G2[n-q fpkҿvڔ(ǜ4M~ojj.9snߖ*'ne! r7랶"wSJV/1"f)ᆳU5'Tn+kTLd4xN7n,S[r"A=q8eߥlGF2Y¬T$KĐ(w%#ḆvdĐ˚JdoYkQZO9 Mqԗ]H-`yfM[R1P5G}hgGjКXsh31{W*1>M Bi * &:[gvMfل{%T*Av@ 3s^nErM$p1_pڌ0M#$[U?{rgr' M?j QIpT0LkΛ;vcQBGo އ|u{xn;.8sNw!1woukB jնFQhXd\$OR(n#W.{QCJN<9bTˡa k-˒jcbNH kԒxCsCz=ND3NȔOմyV#02+; u =]jFy6(ښ-,Rw;w˶U&ʸ@R qerd.eMyVʒ0[I)rѨ`x.`ᘍjYU~,&S|Vh ojaԩ|onr#Ygŷom"[Q>0-0YĠpN Ԓq/QTR|:dyԨ--"ۢ/qb:''^(b++Ƭ!g+/;w;g)C-tYHvH VQLf~뢬Jt"ug1LdT$1Ȝ5aOsHD#wRLK׮v.?\΅,rW{#?I&@}d]ǛZ똳Cd%rUUp4)! ϊ(E"xܳ"`IpO:e!|e9 ۉ*`4LUsY%`L{Zr'.yDV-UC2 V*{0a\P%rs0-X=Cu&wߢ%7h{8,K.Mpu96׋wlK-=3>hPE_43?,Y8c(<蟶f,[sZ,Uz1Sm˦k {d%F*K2FNJdY6ȗ!Z[#\Il[q]ߡGt ;!qAנ,jY"ZcKεh n"V0jOer;u=ٛA/y(HD+/ե,1qV -ء $c:hHZO{+XՄ@GVHLϲY?k-ԨTJEY)C)B -0vIDAT rΑ3e)^1dKv6Ě囨ls *Q9:ct߿;,f|C!yRKUV(RNRJ-D#ʒeĶ̓BYO]+~ gml75xxH s6|r m˾VF/bHZ@YWꃫ&ulO9EdEZ6+h$ܟ&\eM%b5kuݶL˄lh#-hZ>!9O!m#UڳGKX_ I}6 ^v*hsnx-N+SFo=PKl jxdpr4fvHXApCasMe[W "w[a۷tIr^TCK4Dο蚄3,{,füyCҝ=yſ5wJ'ylҠ#o)]E9FjŬ`#_[𱅍|[$&&Umـjr7Vok,e<KdET95m؛!!ܷeMh~T#jMbIy]bh(*GM~P^'sX /yQZ9o*>Y'OjBjZ-Dj̢mXY)9R 4mY4)k_D)vrCqv8/Ҽ5zSrSmMosɫ͛.ȁ)P7 RAKqr•=+&D.!'ei=m4]U/ߜ@ka]R dMtMEPU@[S&aXBA؂*؛Lr rSw6m f K-\ΠhZ=D@̛Hj+^.g0m--<l+7>VlY9V;v 6U(F2lA< MXDS͢#iImZD:Z$f<ҲOY$`*97D$gHҪ;P/ht"8brhw x?qxOx~8ښbԱ4]Z4Qk)ci*5ctjn8TljYձ |MNS(yG+'[lv GHYNh?ŎM<& о-!YT??Wd'UL {9@-rx`g6Bo5Tx1[Ȳ'P/QgOeu>V0{|9c@`YIBfO~ VQZhm=H-Kc DpYPƩ&iH;؀ò0 ۉ@9LΚP oE[m"y⺝qo/8`LV;\zmpX)k[Y$$Yة}a%\^r (wn6Pi {g2vƗ,L!δIH%"P!vrͅ;+;ktwtv'^vBwmEh 1I6).GsЗe 2X"jUt\ ݲqkLrEtK&t! ?Y64cn-B{_Q!X&T^#Ry0͆GTv<X(@[AlAnYLβP/5Ѽ,MSD9Fo뽈@YźuQKlW6J. HU&Z"Bl9"%^:G+2m Lq+h>J)_(.oUʘй ONI'4g II)1H!}ā`h򅑃R]]9,}˳SSMg7CI6-E,w}*]R:;`)۳g],lݪ%q.&_rl^nZVc5|-Ub35K69z2n-܄e*'|PJ 3:KDۈ^t+gN U9&%Q9MD m&d/8ffEQ U^ˍ !VӺkn[O!%cXRUKM*D|3fsEooobByqwvp%lpR}?g(ƒM%"lχ7\zy"%JuӪG@aڗ#?$c@ kUUʶFjEv` jj<ٱ=; kE9)#plBm.r-'R<GVS |ZV 7ˠt2@ C$I4t?*1:? )JT-X))}OcO yQa)32Fs8!֋/}9s, 45Zh (UTn@V K,qW`)FߏȪ+"<a.4+b6{\QF,3T4el;vC-7tKU#ى뒥/l)3pv`;Pm,v}_Io|B ؽBN,pk?Ly+1@ 81ƘeYMbcT+ |d(@[G9$vپY(ԏ|t͂...nnnU 8c?M6 ZiU7Ç0NDvAx~CR2YV'{BCCAuڴi 1 f;@ `x)S0`ڏ;h;qvf~*9s&Dh4{8D e|1kAg͚@>s0w@+uWV5nCq8k/A;V[QZ8l03%Q33^gS gx5 ^6h+(fUj؞!d֜YT<B@$ǯ=U=VRX< Ӊx L^QV7}ƆC8 -aÇ"oK XwPS̘]a(c<$*/N%LJ#Fw0:nWL إ*,WR-p6)MCWQJVGEcx`xF"ĔevU [aP s7FNBKb涺m}~9΢\ծ|mֆF͍dRSwWޭ[vw Z[hF%GEKQ殧%B5(mHһ_HjT!dO]v0GŪ'Ug8uh!6' I1LEITp9g| Dk/1 ZĹ`>J |D{Zh-V}7Rԝ$%2Q[#blKQD??[7`ma@ïRp1Q`ߨ7G9U9u>;pf:;f^7bWȟǍsWfҽvfsTG.GoKmpd"ZCR'&zD9ASE.KV]N ŘCD0VDiѰf@"gySRg=RoEˑĂc0uӥgLJi!rK3ZNbTZPj1,_e*m"}QxN3τBذBlbSVS0a<;}7[b}e5 ^*k`SӀ<O=z4bQtӄKaR۱ mx?~<0GU}7 sՎSE#bWv2ÂUŐ "Q}]=R7v1w>Lx`vmSPb$(N  65& +a$w}Szz² +UFդ%L9ݮ -NLw-w<)Wtۯ~^|┪jO*m[ŌU2P1R>@H>IsEDJsX+\#Fts68@8u5ƗpԺu/r+ 0CNIŪM3K 脢 Qǐäֳ ˕_CE:mCl`-[8gϞݻwoy;QTˡA!f=ė^~[v `jܹs-REO0`޴nsd4j޼yX̙J&; a˗/—s@;e֭f;ufQDFIGb$  r-׾źZ8=)ゅ?#9JiAȔTEE+ k#%O>YX@j9+ JK ra1%bf΋L#HX]B#hxU'i.s͂oҟt02 fKB~xQ2PCߘY;fYc8r+L97+p6y#F"C2dU;{?[u_y岞^ x~{(e%PzlD&K@oؚaB1=@c|Άג? 7k:vᢧŕA:ܥ'=zϱv;7>}[֫}Xp9xzK5xӚ|z_ }zˬwW3laCD%Sf pADUKiS٠UOTxٹ;ں^wQd}kߜu0Yr7[pU߾V8Ue76g+h0_Rh)+};Xf.,׻N3.İ! Z5`Utޮ ;E$ђ.pD^Āa{"%  šrKey'LYF*K)EYI*Y>~ ri'8,|HWeh.IX@&%q=6i7&J'MZM`3rgmF𐬗#[qe{}@x疈ڪ;d)) )V<{i7|R#(;WoQN9 Iu±=mȓ4F6~W.U;,vϲ ,:v%w@8˚Ⱦ5n7kAg*ق0לQ2c1KszP,r&/N%uG- M|#N:Lt#N&SFsn[9䃺#G"’-/C gvb|Ju@_/wvj^xH0DNf]zAP>:׿qejd*.q[@GlC,wn8`,(4[uh;v.v} s]orVWܮo(&~wAh~C6 QTY~3͆)QJ WPR ݙD5`X:`[RdУEz4jMM(k/Sw&LN T[b9jN c`f6C%oWX&ٙ6) P -=p?I eq P9,* Rr{@S԰ċM4So⧔Y.鍃mI*6RQTr| Ӹ$H%;$*g 17Nu&ʝlöNt^N\F]D|gWTE+Ε`ʤXMp7YCaWC>)V+x.{O5kL_LgR*^ k۲ H\R)RR p#i!yzC G1P[D̦fbd* Ode:2B*GBԣ<Q" Gd.\,-@R{P+#9U:)ِ\\eOvZ/ϥ2v^ к6w  +Mp^jFHJT#5RL#%** w~KDu(#i|lQfN!AY0Ӭxj)m`l!ϤQ=$[ݭDLY)͈+{B c*@QI8_D3_sN<2E^+!BWn{{&tHwڥ+Njk.8ͱ!(I| dg SKkng>Ekn{|Mw|ӑ>Y#f @{7+XZtxH#֣J?tuﭼɁ7NCo7t>'pL+ꙘQ x7(I8.K9`UaEOAζ3C7+a 9F6>ږH{)<h(=%t´96[:Wu)^r!XR4XϚ(4]FCUr!"CCH!/U/<6L:@u χ 4 ^hVH3rEs\|M/Ӵ1O  -x ?)fGNiZq)\{??_fGO>05-|{IH1ߚ1ݏQմXyٗ^fW+sO>t IXtC(8j8 h/>3֡rQڝc4t|tR;OHu'Uλ.ȴ >V/q;tk(ԧaͼ#>j&5^2|ԹUsB9ŦrtuvhF5%voX 6L04틤RuLNzKz'K;Z? Z#oL%gK+YW`'qJUPyɆ5)nƜkGX[VmA mh@ r &h_n߱s]b02Wu4DQqM6kwSLk=' ϥz ;5n~>~MEŌY ZPZ֮)>]*b2=}θOڈϛ2m킨FpύjWdWMU;&Դ!>"=fR N:p8p-ի9&ZX8O@k/+66Mh.h,ynH[ՌT~sW6KSƠıO\ZSU{{2fw`׼2%(Oir[:]RO}\[3> oSkSp;P_=9'F9k 0+ڑvY%<"g™#[͠Qa_kV5 kұ\?t*\̓q;0FUkjt$z]d<0\6p8ݡ@aI#n6z*vCEIʽƵ`y]Q:tR\ީO64@Dʇ'Qi-ұ/ǝ '4WQWOW!NnxZ \hXjv޺vfm'{ Sȇ7^>,>Y[50rȚ]2'W[{]꽎 pCz,Q;}tE@gvkwH 7Xoa+64zS|z*֋h"Y6C9=?B}=D9' ncT9y8j#/[QYY2c)'>C&%)5a+IJC5(%YPJP/ӂ=mSr,U['ie*~TQ6A mh@v +1J;<(J 8| z0ThC bXLںAt#iR_pm": tI Nbp؊ s1Foj͢*dYZu aJ Ky֢>i-X0d>XTQ{z2b@JjHC~ΕLh>oLKAG,!^7hX!w 2pV8w/TbQNַ|NUOYّ5^Pk+)=Kh !_ԃ4?ALO6|ͩw9{vysmuW*;RS3qRu_s,Ƹz,"ưUE"s]7gZwl w3Hu%#CDD72 ~PZA]!sUx0&+qR>ìhizVgx$'GE[x0*֖9-RpGGRK1M H%9:-v^cCK%)UjYXұ6A mh@-M-$F[h_uѷK>@֊id냸7Q S?G߮={p/>5+0s.Zf莺D~Q\ +ݣCmC`6&`TA/n `~g"ڄ!Dsrolj%vqOYaA*|&NSS$M Bz'nLp\pQ< ;J%*Vjx$G ]=fuo"Jlh}S`jdZofq/hI"Z`c±&b.6ۭȔW#@|k]E߼A 32u/w$KlɚU1'@w㾒ZJ^0 #º[$܆Z ]Fn-Cb@w T&n.zdX є+ZyX AEW@Q95Ѥ9DoqĠ-).*?ǰ 'ڴ E}ʮO89d`p! 1&m M L17iϲj|si; mh@ 69=˰`H-^~~ǵ 9j=F;fYLlŊ7k0YՠMrSӫݿ+b !{q%Uȃk:lDܡhҦ^ׯ s:?8-L W\$q#so42~=bd/bՠ;y,t|)\IF%Q# e,m*"j􆊯Fæ7һq%vnM==-$D,f A=Ҫ2MyZZ0]RZf`yiFGA+Qf&zM43 6&.Lqd-snG23Rٵ7K" Zg (f@+| }JU ;tzXz.Tlw#_} Cy;{ُQѵ(P@Q@w"Ě"LKFѣWtV@am6:,yѫξaW. }nS/xNqA9fdV#A !0.>P^FMt4YZd(6NW,aH02`ihJ2czC0C#Vvz@x1RHtᒽOy4_g5E q`WFYROVΓOA M26hhXafn(k/?bƤ`'3,b.H*`_}3{u5ng0ݱΘ1yN"A T(^N*F8h1(PVpcBv:㉸Ӓ# ZjMCCM2F=oKii6A mha]Lu|ɸ>BXŌo.wъ =1$/?{"@At,FJaqU~wBIH׃YljA$8br4^ԴN|PBzG -ĐppwI 'jSf0)-(w򋥗#PҼΪ!Zݞ=)rikxg+94s¿bhuMJ\uՖNuʸGBKjUX` 2Nx7#>ɲw@xHKMZ-o˅n%[R6^UB<4Lh<|ި=q# ڊPZHpROH-2D3 @<픓99bBcA:@6ɒBŸ)=T.GdXBQ>#=CŨ>IICC=";Y˄(3v[M2ɹϤ>O裪ǧθƕ!Z 6A m_]"@>I2NcQ,622h"v-B=9W'6XclЕ&{N:1=T"fjb8d D95N(l6A mh@v6`-$CFA?(0JCgbj-iHƧ$/wNà91F;t ,t$O4 B2M+a"V`jX&I6,~0CwDhALEIr!)rD]& _TxXלiکݖUW=ʛW6 w^vLEPmyjFl Dw?0b.◕Y}TUjV.+ z[qRϕu]tNE'ZAտ>o)9pFV{kwY. ^Yi;v(d2@N'/iQrUZn k_O[I͉0 S;cڒY.,SU;v6D&#ScسFR! 1VG?_B9T@nBIn: {4IPL%7gU^|E`}}=zA#PQ[}ruwz_q魒傍᪫< 祗rVLX$LwJ6A mhyu؈Qm0#t$t"D<[}`/|)HGv ņ3HA|~SZ6HC JD7R8\La"'1C-/aHF%0K_I#QZsҌ9x ЖثxB@40q;\s\pskw,x䮩w=ᡳܱ]3ޛw_?Ͼ9]>K' j}\=tӢGpr&<.WO)w9ۧs[/fz[~eXEdC/7yd,raHθ&wRP@UZن LԌGP/޹6xZ`=psB?k]fCi h֮8瞻g&CmȞϟ8- vԄV}޿:$Ik[ozbڌO&IsٗfzmWge@/9m{TZ:'8ܫM]׭Ynz]2_j70sD;#5L0_ Uh@ 6A ;y un ߙ#%A[DJ:ۃVL~O&tXQ #BFwrsj21EUS·љ,d=ڽ{$ #m'|f0jn6p8>GHO9YwXW֕te28#Pip.kg?1^/u-|]3] TT׊T{wS={.*{W/eKJZTO#XK=ݹѪvO+|n,+yOEϴ/| Ow+G'?ե3/ PXu@T:#?<`!k_{MCW/¨2aw>xp h )ݿ6~]:yAI>T#]AC޻z樞4Ҝ3nɾ7JRG r?LJW[AZη8cdsZZ)&%*]l3nl-Fi &y|=>U+No.|ss+ I*{y6sXb}L*.@-ZP W}Q/q6/ p5Yٖ wx6YGl٧?[p87O>gǹylй i?O:w>ov#; h^_tK:!*:k|cՃuiE/cw I>g㷂35n I8_?'|k>݅_p6&*;團̦a6ǚ8H;v4hS #0#%&OD7$_vH,g*juq+bI~8˜N 8G}XW6,MP1&nd#IQ'dbgFI3#iAQ݄<1aA?ДN/sYTqS&x )J4$_X3PY߃.jZqU bU)$|?a]i>ATDfls~ )3H x@e1d?Q dd yȬ5!Z#V̳'b ըT8ө,lܦ4rs[ku2 B6aaLx9BIR SI7"2B:E5l1x"2` s601=|RH0dJVm'fY)#F!ؤ) N`Pn/ FD%=po |a#{VnIl('V MK;Xsk \=9:V[0*0 !4be4ȇxfBlت (&yAT.*hrd%@$OA-|q5nbu &qCV` U D&#>IQڱx \;`Зp$P^+܌T[HQ4u$x%" SM\E pVC? `zPvq_[ ־Z,h$@Z_|؜ZZ|f5d\7`*7Z7,%1 epֶVr1m4S @11I݈kb"}_xB)jR^q';k-v&IMb@b%%Rp>x7qI$Oߐ8Cb/*K8i!t;81q!!A,tY0t&(X,8,fh9yp\1 &FȺ~08т/.pk"v|:WN"+5w,cʲ785 9$Bˆ\n? \Ӆ~})H6LAv*<7 A*՛* 3X r-^Pd5N0{5 s\p88Q{ 'NH|Ɓ5TbA<۔&/M,(PlũZn d %xzt= NO~ ˃JeR_:uבo0Y:t>ץ{VUŗW$bD Pq2ڝ|+ݿGD:8}]5ډngvVWFqXނ_O9;)M ӌ p'WO@Q`>_xH],.o߯khp1T]ɨ@oL6@)lI(b2OQ 䖡=f8<h/\,( t›X,R9NŢJ ʎ.( M@N>dwŷ-($D㔘zNwdt!Q&$pQ('hT@CqCDgd[2Wh-o/ '4S1lMh" 53AC G[KFIʢy]۔Qipy'*g.b訅/K:YKl(@NZE IDJD3+t- -e *jw`h=6Pqx;| Cz W:qx\uIq..3.̤; ,6(Dc#2@cQv#S uQ%#R!X$^J8T"rWA΁SsipSMdD(8|[wH]J=PZ%Im( .jdD" ʋ%K& 5Fd!EWj eqml `~:å0ʲmY`QE% E!GQ; tO[K*ҥ#O @_kȔ= szbb<$gUx!=n/kiJ= ( P 'ZDZi/J%RE JT-tY".cED!ub(JH8 1.FRw|:i%ِ"G+d*7Bَ5\vQ0/7ui4R4Q8Tz# άy !mGc<:<'XɅ:zD{wem:0W"xկȸUWj˃T& $ש!ٯU^Cݵ( E]*PO;VЃ`:=AQkR wG{euNZ XЋ#w[R&dc.Ilb}e53M7Ac"!-YF BIIP] ~C#/lbuX< ؔm-`@4[rUv;b`tpTc)B㟰QvA͡rxQQ>5eb\& PߴTfARk VL_뽇֫_ZǍ9ɡ5ĝk鲙J:h-4IҾКeͺ}s~؃5N '&c, euVIz}I=_ͧg)4D^|7]wE#&3oި?֢ДMOEiTEPePqAػU9'մK/h@kK4GD(;}ʈnT:'k9HFQZׅ_p97hfN C N/A6;@ñ"Nf԰iQ"zehùnMGW'Z5tڡ< ȸ^o\qAv:Inx.h (+n'ԣC\>8 &pqc1X} 51Ѓ]Qyg$` pOk1gcy(z=^je0y0`Iב<,:EAqo8Xa/.+bZ*i c(,Tf3Vb@tƥM ii,Ӓ؃& a` EOb9TPJ kE=v1 V(-Jy6$؁P4&Nʐ^`.l'lĉ T]1(jF!]|(jh"B ."›9n`'"X>r2 5#'dHx$l!10 F}`]3x R /RYBk8QP1QK:}| #ю !ދ<"$hz\4ҺAӚ@-ZH4G E-}Us+>B\Y'%H(2Q{\p+Ϙ΢E3C$pUC H(lt&]$lZaɍzh^4`i-Urcn=*  X'4=H!*6b)AI[jj PS$t,DR]†,ZV[@,i&2AkLӀRND,`z7,=:Q `L̵昨"K7 i `t@ ,Fn@M6~#_dX(:#1b!^3X4T#vQ|$Bg<(KcYsE^| xM+p&gjx1ҾLC@KXf5AoMH~$7RX@Ddc~SNπ\ޮnX WWJg#1ꍺVS9GF +M گ;݂#V^а#^ƱiC*%2+XLԒ Ɂ<ľQ29af, $6g2@E+k |a3Vժ %Et;>Ov)ڜC;e X)''TQ2! -kNO8v7ҥFcQ,ޥ8(KA8ŀ3YKz5M' ա9cܳY,l9C"%{rejBsOO3ys͚X_~EZ.7^:ק\߾RQtןF{Y=rJ}O~v^\[=c¤XRّOzXJ+/jN]~ 6C֖:wpʙMc#|0٥>\È^zysgns#l٠!&MjOМV(|ݱg]Z(, <`_ӝ3u)cBlFl#`D$~V|S0R#ɮxS?x,/p}uW(<=i$#p8' ”qqEI&YY+;#5z(O? !A.XK?pMG|\NIDu)F"V ab a͝9ci4{0O|Jhq+nbȕ畂hBpJbw Ѝkw6eBF#3Ҏd|&ϢMcC]L3*z*P K_D4. t",:$h#@xA{݌!EBg< ,4" N(ABS˻!5}ң7"('iN:2zR:V:`?3$LBWl.-?%wgtyJO:l-Z'PS  3Fj͘t9}t2 ^X, NH+Ibrlw(@%KO4>Ѵ-)3q(Sy;n$j8Kbܸs"1 >%Wݨ_ ӱ W_WMٳ]ȰƹPeL03> &sUaBI9 kEcQġ0 </aGr8q4& :L *x,Ȉ]N<=16Zu{W_ ;X7jIO04ch&L"N 5 pVO4~㩪;&} a~3T장'+ x'}@?A+u賾^B'[lO{3v@?ӊ B*=PRQJ;eE2W+vD`: a`\i`׆+ @9gs`` 7j*} * c䠽r^0gBRA04vE#q}c'$0'У2I^㢔1;5).d;=S& s`Y]"،ы|@qEPLEu+YZgCgb1E-J4ejJ&G)f@OEXofp(~77ɟ Y2Xe[4gL{oNˇG,]cmݐe PĖ7L1M ~ l|zeU6ԙf}hx lCP_TΜ0u9i4 tIDXO#735Kg+:UMuєE<ߨ^>Wѡ&0#k)F"~Tvs67pj]X1e*wܔi=tZӬO`پM3#DBt& 7iLhȷxNcd*Ė`f8n/|5sƖIҗ&q6l\t"lfӪw{C_N cÅ#pT8 Wq&; )WȑOÝ8$KDGx!-3~9 !'! p=Xg|&¸"T؊#Uef[u(Q(.23zx# Y'-rh5`qKyq 岨P~Uwϭ]=9f614AuqC\'u' jD`#J%W\[3  h!TFIeA*=t`ysTPN6 *!QPwfb77~ǚ9Z2^Х]Ec<}S&>Ιߩc]]n0x^&MY|<$ŸyS(BJ_ڳ#cI?rL@-#A$L4% $C @ A7Wi`#3kN2dn6{:@ӧHB%/ H&ṯ?u1眾g .#(h}{_ߔᄠEMeۨy`a* ƇْGI6I= i*ME s)<_eqoƣzgaadbQlg#H0mdrs"#4//w)x:e)xa # ${5Mm4!L6"\O}]Gi;ȟl%j !Ķ .Y$6uX @G_\*fN|sBP5q|"IEэ`j\TԴ)RN308h0g%M|XWl++V׀{G? MRZص> ,̘KmDZooeԽ̿Ce=?j*[Ўz/mAcSKפ+~:@;1|מMV;a?AIEڨ} b=hPBEg O!,JOC"f6f;쁁/ ͜8nȠH\p 1f$ӄ4Hjh:z'N# /II;u8 X3ҥ<ě8M1 "t6|%4KA~$t+㇇AYGzZ)_t'Ds/VDӂW_ד> VzZ w?Z(2[ne{^~%uU+Ͼ:[Sއ[~Ȱ^y$KQz 08J3}{b Љʶ ø˧Ltˋ!4 ֬.)瘚p$ iS&Y|N< vk8٤ю\cU6L3ZN /FUbOR` n!θ9u81@DzJDv]:$EcEph*F,(bH:H ?}0Ed|ik׭:Wz J5`A]v;g2# 3?h*-Xaa!w:Ⱉk_;._i5#O(&LVW1|OGM=P[DAOڦbZvQN]|Aڱ^(e C4M2‡|܏E]~Z6(G:}uuqt~W\~$2ګo}VX\/w—_}OKFyv]\ O<P@.J-|Gh r`T /vz|trlPJYr¶זtWGPH鐑}{F́ƆK?[-((g{ W-2|!n&v"Xyz_y_ x?/>bZT}cW/w)"5~p51&F'DqM1H ^+ox-MKHx=#tCsVO;ݗB@?Su2$Ⱥf2$)=r2|Dky 2qي+pu dqkb{Uvek XxģwǜS&M={y#4_qkt)bmD!:Z 1I&$d@ڽٝ˯oԡ/xqI *\ԥǟ:SJJ.vVU]VQq~ڗ_صOEuy]E+;yz^VWu,k]XDcQVW$$L9aE)f!e :nݍXx`@I"n7_5b!-D #xycx|K|T ]Bߙd~h2S wcN;`P_!p-y|"D]]REt&~W_ X$PI& bB"D[(3د9 Gu } #hDYOܚDGa8$ފ̜JnF-.G8OGJ;̻zՅc_ة=3Uܾ|ôE ݎQbAŘ\4AR;+NfV3歠::3j1G[ڄe=3טӤ|>Sv[C9uZ/-*k% "&)^0ovM2q4EY,:L&ɍ5 $,_/9@RD#R lFt<"53Q@;_ 77GPpd3TJ!L<𙰞^-1 FD *PFA״4sUj7*Z\5H`Ci| NBfaAD^_WqFa]pC}!H$j,=C\>˒%UğD!H^Evƛ}لuv}ɿ|g-Y0경+2B[ّMڨy@SτO$<, GGcƈPCx!B\eoSq-&YbӅ ,4]`e%$d* AѸuһoO4DA>p o4` \f]}' /_)[)v8 VԟSC:rz\rƁ9J t),,g`Z2&Mo@o3e"Rb+F$!T m$JQ|Jt^,FJyG$/Hv`ΌL. t9::'4K?xCF VnG"ҝz.&fawbF 1P8'S>zk^voD;A7=<^sZS`2!O)cA(xX# ӨHheΐ_tT5>ºрOfy2 ? E Ij@S QdhhW+Iح{>X1Qb`*W"&ӯyNhRr*mm].Xr= ׅJ a((0CF?S07٤%@QuՑwF/KGfꙓ@AAdZdCC'޽/;i@m}Vt1Xzn:[[|?;kYU(*l}$YB ii{J2Dd|\Ůqd`A #Ue,*kw2%q':E8(zmATpB zU: Szgt]Y|)W8}T84P##l7P i!Th8a:17^ {մe LǁAlNhڷtjoЙtN0@ nMcϫEԏ+Nk=+(vfhEZ#I72Lޏ6}Byb &{Q(/TgLq5`/'wAt,=`߃|ԼЋ)SV^7,_?.tJAd_yMe$ ӌp3t7BŧA'±TT #Iئ cnD*#vŹPkKUA.@cͮ7lآ-B?sSbT*T&d ŢvEM%AH)kXYC"\ЂRG>n}Cu|ъ @y3[acjْۓ|f:~%/vГ灸oVUʤ G jE+:p&vz=vpm 7l}"L,;Jٿth_/.Qf!PMYSԥ}*1>Ѽ({d:UcӉE?=@4@е`dK:C-m_8rd^0}BӾzN-Պ6_O]R_jg`k0yhՀ"d2KhŪ2, {pq ޝ8a1ö^pn9W_ƀ<"7mDa%"JUzaDSE6t\)+wu8րi#w{Ǒh~v/P,46b ܭ!]䏟^wW(NhAl6nN=?$%TDzpڣia%K-%xQPK27A?&5T "^…D:Ɖ! h"ذ3"EJPJAWm%KǕxSa#n)u+@<Ф >CU JbfX6N9`P莅Q?[V?[G Oӊ^}ե m8>o~I'5nѓoLۋ5:Y9oO>r)~X 'Ftb#0JRxÙf$2-ԇ{&2=.?C˨h\z҃=|lq!נQrSwq /e;ԪuC!uU餯QBDCwwڹW"in ל,6gM_^qSFfC}1kQV8Gyg>9l|6i65mk_zvt_xև__YZb`1miɭw>;fҮ V @Yq]߱ݠRckkS.dݸiE\7 4N_  M^41_&b.=.{Ad9sA"Ć.3>p\LH{ȡk'R5ӏP?{'ХϷݱj^Km"~[8{QyǠaOdTx"{[OxMνv?oC25K֔}`?3™O<%R`:,XN(^dJ09+sq}֘6,Ȧ^ 9:vB${lJ6u(`("򚩩_}ֱǭ7^RWLQ{ϾXïN;*$SC1^.J探thƥ7x O}seY)Zŭ-BÇ-W\f!xzJ[[/iox~b%F`}v]jgħwi+?:gRjY슙]f9A'f7j!5$EeN eB嶤בPZWtok'9ӌ6st{aFMl1[!Ҕp28P}݁"r-"3亙6T"#BZ =`I8P%TZQY  §Z8sBץ_u?Ѿ*vX؅x4ިܳܓjkf?v-f"E (a#%%Rr"pL]:_DZab,ͺF#; W8?0$wo݀PYm6ij@a_; CH4uW_>ա2#)X]ufu#~G0 s=oS^r鋧\9o1~a_4sdstH p{?!g&LЫtG+j2m^\u%NQ \vNňğd 2`G) .9wuC Ba7Mq;3ySqkoɠU-TS6im[Y8eo/JAl } ^qC٣~ՒqбJaKq8ڱn~U?erzݥ(X$m{ V0Jk*)b{ PΖ*F M%2RZ;aռSӝ53szoG B%@M7Jww)RKǚX[h1\GxN" [yp;9`YaxMLj.EasA{ AVI7ßT롚^u[[6ٸnFĒt[>w-fv7A2="P#ϲ_o1T^?Q\J&gzwX1z~1k q6k>qe[G +)&cŲo$QI,]EAV98 eo?D2%8Q>5KĹKշK(˓7R IY3iTRZ$i(EBKZ+1`=oڛV-&4Mrq YiR.ӀD$Z.P hIXqY:Cׂe8ެkJ8L?Dȕ*R4Wu]K;?ӄF瘿PNA%Alg8.MOh%N/ʲz{Ik7@&>Sq&]IYS&Yn}2d {gq !D0*0h.Ȃ]XƐmE@Bmk,a{A=>0Y hف~1"oh>xYĂC^swF}w /X갅&[9 h.2FDخhՆDuJ}"1&b!Ͳ)T6 T_!!Bc8'<ˇDCZ CI#W{HͨgE$BO"0Y> k13@-fi I@NR_Be D /'_ |ڈ`h& PUhVڤ Z,#q6Xֻ^\!Y9T}} ܐnkD օ K\<ʞs|[s#u #mME ;e CFO z8\ @2̱{J) h 4*Q bU$|ca}Ʀn2nM7__\ks^$ S,^R=XY%ZE`K^>#jdKzZ7d2!-8 S-%%t@q:Jx0aY$ETucg0A6DYU YVӪ-kTKCt(aVIKus_C̴ FUGf޴tAn:TDK)~ĩ;X2⭐T#IMynXfe-n夓9;u>$eBL#IhSQI9}FM!lXGsa[M;S (H)؋&8^5/Hb;گn!{WpKJ_Cd TԂK ,b\Fnj?Fl?'!_/i* gm\aZ(2qRō;V&*,P.:Wn_dɆ`G$Y ѐNg6@dT-=fP׮RBcY޹mM:Eީ_y;Oa黿Pʛ+S DDͳg^Q[7j`/ԊBiE-ZkP](De ԉ Tz Pk*Jz$6xE6ڢh(T^UX!%3k>C?B)E{Ÿ!;o⺋nkCcOb+myxoҕ4f?)pO͛˶7 ªOlx{o|,%b!-hu S`\PNdCf1,嗹E\?eA}ˆR![֖??p=wf?}\}Hgr7ZdnuIG>/hx葚H^DpU`c'M5>MXvu~7SO݀ЁqpQ$zFDU_Bɣ//y(.SۭLXأo\O'")hmJ"_tk}3f/XaՊuƷ3wmCO z+ (j ʑ_ضj_3LGόMRҷb?1eXuG43ϜI9E%-a36dv Dd F5Z4Nʺ;aBr^,|Ѣ>Ҋ=A0 H:L/Fз 8&?PWE.nV]Tv+5Q /)uvQIzhx!j2=qQd*F3ی (W ;v H`}Oo锺V9G.PRH^.E[c^ʔp;MftV)E,F#\&[@HBB.Bzڣ4C_HS-(C6⨂^c3oqGGIJKl;(\92(#HP†e8.@% Z@:wˋ#E:@ ?+kC} mu±,VD10J!xX,dzXI^TbƔ#KK!@vT'XfkI?/QT$qݻ x{GJ?#嗳OY$(VC2 P͈ P]!'E)d\! 0RRRb.\+B/ עV7v3?PU \;wi֐&R#J2E%tx´/H,&K$CKgHG >HǚqU?x]MM[@8n49o΢qԑiυ , cCj)\9\|n IT:Bk7sI[ZZ}wX' mMUP0h Dys@AdyA"wշfqƂL%?"- 3Yt,<|bH@z)XΙ"z@y#ڹKn/\1}ڍ'}h"׏:dMQ۰aQe@iMwͦ>/*##;JXw'tRk[УŒS0&or@dt; g ؅1 @Rid~õ5hj໲ښ!u8kGMt~=gxh tg2LJ(6 dz6Ec@#aiȆHe%|XXVWg\=b=F{nX4 ]~͍MZ40kd8$(|Ħ NrE #րjET (s<,Yz`o Է_{"xdq"# ɂw#5BK-XҰVճ?m ;m{ʪ9}-p]\b00LUE67s1_tЁ#֯[3BL.Dhe R78b{I6ذ (IUTFU$ꃛ0  &'x~הQ2%4iY85-x}Ug⛗]MChc7w ܪRiM5#^d<{ypkC{m~D}X@:CiZ:Eaoˋ|Q!mhK]괋n 3s'}B5e S@ J%m `e '[>5HC7j2}hmY xͦfgcnj[U I2t16b츊RMʺVXBP)ں UPo+%#UzpPfOv .RG@"2@wˋ-8fiHJԡCRgu+d!3!UeT]iǫ^GTI y*be+=TL٫5I{6ڳIfsaN"UNvRQ Dz"X,[)B ЃzuՕ ;8e!oC %^DZZE*<4thim B[ʆ F*#ftei6k3IF]Xd$kq|ݪmM-X9 LM'р#)h뤪'ͱ嫚 ϱ|aZq% P;,-uQu}!YS>,`R5f@cSuS:_~#q`|G*X~{?~m* 0eGs- DRX UCtRgW~8m攎!P93]&pba!@6X,0s#] #TALui $xN^0o$ /01᧓;k.g.hoo颥/*m&5nPxU^(fwhk.?׏#={ll)oL܍j5쒳!ź&_uTVq}ޫW#FVs9LhÒ년/.;C-4q'ǞK%#|9k! tIv^@6z ^T]Q.":i$(nZ'ld|$~@(4&}`IVn7`` f/OC=h3N;Gy_t_^jIEbv'ey^zK/𧷫(gfz5A(}Ԛ69jx31+S'iKNS/)F E˾}?o^YC(zyu=Wz!lI-.Bfj,4ŜDP!!Rm}O\uS_uٔ?^,pTުΒ}-L̽ѷ:7mO:ɮ4z%D$DF æ Z&g#N9QՎN&R'q6hP紏Zb t[5mkJ6db&]=u%9u]sO锤 Cz_~78lb'V1w_{ 53X^xwqсG0dd`tHIx*aȎ?dp})K--GFF o>yx)#=QWn8uD봗#CN l)\IVx  m^-G"=Gb!HR9$B^s4tueɆtڑ}m17eee#j 3 jBRѱGF(B~Dj0kot߁Etٕ1U?fۅa@k Ҵ@[z&Hæ=rUW0VnwZFc67W1>6뫮]pۃ7DP\AO٬bD[9r9hE\@+=к76lFrי^x,uӼ$ |Qm#HWTѐ*ՠ&k@Y`TՍ^v7hW{d"/:bt참U- ԯ|сs68UCʻ(@7y^QTq.QOP' E9bK90T獠YJ^2CDz%_}YL'+]x!A 8I}I|F"wyeo9.(+Iz$XfO߽wS[uõ? C+I}g.؈Ns YIƎ@ "Xpe*Lq|UP*5$3.jR14M4#)Rz:x=k%pfo°R*W2ZhCƨ*[s3f#J.biء}A?o6D(VAT_C!7xst4iAEd^~5TqTTtbSWV,Ub#q Ρ#61ePIo7} J% Ծ{{+u_IZx jn]G n{>[@ @[Ƽ{ؤHY7or`<JU+f;o-bug{NqcEP)52zE=6M[Vam=jdKl Oٗ+_wI:<~t3NeQy}iЖ^( JNI*&Ir@})9JAlb}VۆqEϞ%*p;{؍R>ѶtƊ%(FOG ю/\fc⻍ ԟdU qQQy= ҤAyu{I(B\c4]މ 8_;xl;Tn-yܾomc=7ԕL浃բ:hzrgʋC%efO(GaIwM!Ԑ>^yUH;Q 7̗iק"P-S]{j~7s%Tj 6jt_[X94:=sıIt1.N/ g+!)[~tŽGS nY`@ih;SCTn6Ȃ6M/59ކ>+μpy[ŃBP=cAqg~[`Zö?4Q /\ + N˘ߧsNoN2jm@Upʠ$.{;`K.^0{U|tO+F 0jƹW]{wKZ3@ M9LFQ񣆓+Tzy l_W~+\e$[<?"9i̵Q.(LlM=795bct6t$ලf'OJMMNMc;GE, yR(gv굷_eR<*b8vrt/.ɻqZgIi{֐#DBiH8$ѥSgU[o닟0!TkH%* I|Gל-j;+. w8pFV✹+&ONpē&F1(P/;! <(&LxtO3>3&#c4뿹ggO="9q2p^6PWXI!M2wg= ([҇p>fCk$P>;sOl~ppΩNyAEQ؟B'd'<`ѽ=)V͛xc,)ʞ2^-+r+𯳏CH&xŎH \S 3xpW[Шg}GB쉢Dp`_ٓpj*@  5&k j&FܕmH$%R6T \dT/lYENP>2 66q͝4e2.pބPE)>h0c(j\6V2B 4 ;I" Y>(H.HqC@4h^0dQ\I. DL`-\8{⸱x7gā#\{)(0Pt2 d8?!"@h\L!92=DG0.S$7#C4eVbb/>RT\@FA\͆ЫA$0Ҁ%UU`_, 5PEHsT* ؀äwlę@?GȨ'xfh=qMg'h8EJ@0+S9 cԂa3I8rYH#ea>bF'=9/yUTQI'损<¼ 8&m܀ u 7CcK%bTPg\|);7Fҧ w^đ0M"H'tkt $d`!\J3 i~ ]i%ۡ-8ǀ _`=Z LTēOi-G[)\ۨ=gɓpsgO2%h(lGJpBQ ,`vDv JR@u&>^EF3J"Qt1`T@|Arb.Db7 HĚxc}m;Ⴁ#GOEQ#@LjkG׀6q0QHI' wQ0 v O "I}*K)2 @PƏtZ#1D6C#L0+3z#;rޥN< &q&:IH1д_z).&*CZ [k1L9XSaRQ8)QZ$D05,MY`-;Fj#8*K͞;[,= MX^4;[Hw\|ӟL{[fQlKh)n)(YM RM kdP L4׆_Je&١DET|Y#ސ!i4xSǛQDlh12p`^LcI8eQ8VPP ͅTa"#,0WKC0,;XհQ, z.^ Ty'%/uTvp>CAw$Z̆\CY +V=lRY]l!H4FxyU5 $KNNo\&_q:R #&=bVH3>k #)% ’zK'Y-2@@3qUkDxy]b\ P]u]Wg*Mm۝Ȳ4nϽ;P[ƒE6C51'X7a<>A C(f!oHpBz/7n_04P.hL- xpBֈ 9" ~SY2[@okz`0[\;V mD"O/m@)-N^y+!b"a7+[J`j,I7K&aYKH|%D(zMP5*0dPoBl7o ";***47 w530YrS+HNU`1In(2@Jtsw]s"Y׈1A1%xD1!aF`a1 }@a/$ze4j6HJ^b1kcLnb qRzFJ;F& ajJal%d9QAZqhсe+'cZМqVc/#fD ]APj&LJo0a?y8*!L*CdȗV[@o(o, 4yʒ"uj!]!\ I@"fݕZHi8㸉dDe bWk( o&k mcGOYVU1.jDK8E];= /ȴ㬓5˖i!}P*1y!LwbOI$fUN Ne$fx{m_)` 8'leRҍd&*)˘͍ju4Q> @ 1{߸nAag ָG78Kb""g֣92qHfȭcGEb?(s4)C$ɽqV|~PeYe!8[Dq/ c]/FBpS݀4.;wE3D[P 2C*ujXʈnn!1JgOzXW*tck鎨G'0k :# dxQs?>Σ1H-džRZGĄQnf NC|Nà3[I 4L;?!U &2DLD[b!piԿHR) DjLO#V܏)&Ryr'9T܍V񞮤nZ4Ƨ<8ƒE/+$<h<`#TOޡxb\tvX]FH#Ɂ67Q`j@#RbN Lt?@HV_؊͇5F=CXClăA֢?l 70Ȩ4`l$u\4p$ܒ: dDB z@B2e4;BA˲ѽDwz&/z SGLt|G"m#t(M+Dр @J`S `B! (cNMB7Id`,uZYK0 t)hǾ@s yՃe^BUve!kũ+t[3$U58g.>qncinMWfMִ- q֚ zNCMKvE mnl?>}q-7$/]vcm`bnP(VR^'lB 4KY+pϳ]Ћ`DC.֑oVGI<]ېY].3h:@F"=R*1;NIgz:Cv;;#7rݽapMN҅?/>G۠w ?>2_`EbYBrN]ȱJʮ樚R~f۳'m~KsnOsQy!īrUH@s"1 oniӷZfqzӭ,|~$~"snv9~r-!.NnD6Y:ZvkP%]|%mog`9]gBWu1BnU) ;"jyWܳϱ۶?$klf%_VYiٺzΤP GNjkoP[v&yu_[Aԍ%G{|TB"Gа~nSJAN"U$R@y5o;g=}~|pmf57Q74&|諮{M^;w5fUW179ᆛ_~kwMnyM7O xpn~u7\_qՉP#sk)iѝO[̱<_T^ ?ʒ$gH3@\h*0T}1. OmfݶqZ/6 rWB8a=XCq 'dZ]D g -R9Kѥ`"Wn[NYu*\1߿N hS'٫׼3/`7cT÷< GpT:0i*~Sz0FHL(?ꫠt_ϼUL=(L(h|L=/bْ걓oXa*_w=F5s2pEsH=EdsB'cF -84{_Nw8~TbwVpsU&Z6Զ~T8#྄U^aDhd:)T1* S3y{DG-#^uWYBm)33i5D8+u⩧H*͘_ZRN4L}Q?S-zp񒺂̆8ߢ]F@ vedP8ϼ=_ P20G1gr9Hʋhl֎P,O(PsA+-B7sY(dSL$-Nr|̑~.FKވI@(kxLh'4=tD rig%FE. '9B5F#tLL2S.Ԁ3R3;RthqlqKtvc얒Ȭt9V͊TΒUkc%KeȜTdŢEbc 緕(Y0V^2[#E ' Җ}Օ8H>1G,Ā!4Bx7z7/Iը)aאf%]]wl;6!\ 1*-BB ^no5!1 @x!-p^Hۃ NjX" #8%ǿB  39IU^~ⅿ+@P5՞$'t4{ -{\`^>"JF:!rlpS/)TBzZyl?md-FŘj:\2XRhW`WaFqdQ5Ni)* A Us81OB 8`\D.R""@gRW i"Tq^LRv!"M2(j_x+RǢlg*AQpuoOHBnD%2J&IJMR\5HU*dh&E+G]Aj!=cP`!8?V  ΣBNʅ%Ҡ" oIw3VJXp rہ̸}[mo:3U^io)`uCF7Fאt!g4aP-2~" HPVϹ}Ed#bd^_}gн+7MYl4#X~- C(ںa~Wׯ!,ܴ2PiIPҝv\`v>2DZ?vpq92Dx:b#P8 8wqh,X; jlSX1Fo 85N( #!驕MSK['Y*o(5-pw* =jUQ/[&p *CfHéEXWpWMF0=^^޿%^֧Ysf% \v|5N}a|SPjcZr1ߴCOϤ).t5N<ŋh˔97Q1UO.>mWZ=鿽!" su[]g=àۜtс0lƚͱsTSNo=+*#R_8@Yzǟs5' h@ Nd5ZN(_1<+ }_hn @|."Q bs$\TL/A (,\剑)|PaJ_Ϫ|GM/]uǨj8L*Xql6X]A[-/ݑjmIu T:F{q=f<o)Xe3 g,wоz(+bKƾ++j ՘m =$)ʞ(%jU ٰ=/,[VG(PB,bm~pA:\7YX'?/kH0]Đ77ˁ q+_УU:T _ SO@`3bf"$!-⊾_?{'X+&Z>Jtw|~%e^Vwnwy>zzaWVhYz&HJB]*8ZEDJo#@΢\%' !rWWgQLK@*s[t:XڒP|PT 2ed#QOR5Q_R#.pW9LoPEQwgGN ni*Mu rHgT Q14HeANb,r B!)!xmdCTRI.+Ti~ tX޶SNBϗiF7Le^|,ԮɇD8+D#~s!7\Rjx;2 8 YX|{rw*F_9vy_p QyGTCDb lSO?_^| |SDEQ6J}k/Ad6ˀ-_9aG b(G>/ `)~Q A] $nu7;/1[GJ-˪˜"7֭_x'g{;06l5kM $ovTΩ3*SLe]S1p)eTB܇QDmׄ/8}g&dn"E1a,ianÿ_W{Ww>_+\ڻ>{i_|3ҾuWpumk]ݿ/_wy |2*,4~&.q@N 2E~E=ᶔo  6N&}ѹI MPS (P@ (P@Pd'Q?8㔄.D޾+oBƜE<[wȐ!n i-Pt'l8d0v]bS촅Rd D5N]qGEѐKmR}@gdUkQZ% UҠrҞ,]XÌ@+Qn∄(? @bT9O\_A Nep_GBdCVW "BBR|ClAcgC ZSK'3hJ`y1e*-WT`MrVR,-6K% (R*4Bzz;$T/yWCmQXwՠ=܀~5wU&:bp )k`^/B X$ rY*܎`1.U 5Vj)=/j%#QfX!W{׊kXzNR_v(@ (P@P`mt # ߓdqKc{G_D\|W\rXg5XXӵp33n?šʦU9kaԻf__hQd9KT߸i[~ h*VQʌՌ7%cuM=ݦ"ȮjFLd' S:%ekARfWJRiE H͸%  D| B@cOaYK2*q<[R<Ԡ*^& rQXJ0"hԩ~ 2 B ~昵)^@ (e@~J&;: >/ 3|v\8?\d2Kx"C2ZIc%"W,/!rS'LY8RLL^89^^uThpFu\jfi4nns^YoJ8PMj:K^j^QШuH{#eB/ԤkeDbȽ 8x< J Da@`rXE!}DAYSZ^@'agS-<j(8A.Pr]P`$Bvrg\ <*(CrSnL~SK/™w7>~zThoj5BoRBX?*jTب fV>wcTt-wڀ`7<_쒛~VV %hGjki/΢| 9qF!,}EX(;Xb>2sroOg(&P1ϒ=P_]QyEF6P- Mb 2NV~. ~U᪡=¹P9W.嚺&\7]e~J1QoWr#w@^>vGc19bv0|ena֝Ӻm_:S,1WpṡKFtgaGLZZ9ЙXq+lE &ۜq__;'q߾+ c=OIT]}grI #gƊe#I$җTG~Qc60EMGs)R\0MM/M.WVyl?&]17T7JIІ4cte[~xWdg鴂(+ڶC48AJ %tpn+J Rv$ٖ,62nWY``^rû y"'a33 M!\:@ (P@ (P Fo&dbCdp"29UQ(K%DӐ5!p5j`c%dg_ 85x+T)-R"6wqGdkĉh$jN 6הeFgeQǘʦol_hz]"ŕ@62啝:qJCh|=gpCXa4 Y3$/sOErM 9>6^|!Q6PZ TEha0</^<,A d(:ˁNj+aK QYP}9T$71h?p#ձu[Rb( 娲NjV8t.ܹ@ (P@ }ts. L r}8|-[|-i[^tNS8s9[nA;w Y u |58wbo1?뿂-K_aW}CCc>֭ Vl 6@ ʼn[klmr)n 1^]Sq횪Ȳ=ECc^Cw?M %kY-͛P+di'^\,1Kze{%kJ;KcE^j*2+{W+j奝%eɒTYQWi:VU)ݾex"UQ//OT'*r+W~S}Gߴj,Ks;`=nFbH[(`{͡`{  :F,%PK0[Bzh #E['+tihiX-ޙrU /OZ&^R-URuFPz%|Sm5'_zeʴ+2 gAiw.*DqZ"By88',"ڇr oܗ5%5DI.yߧ 4tk,4R,JhoL^h 8p| pʏO=Na$RPk??:}=oKx][c*|_ʬAl8@ii#&Q 2EZ;\Q={H2*T%r>@d W%daF;|,"A)"-%IF/%C&]}9\!&9X7N.zxȡ_SY @@MFPY$v*'.KN|&ʼn~Ks,#%|E63Z_}༨[8Y^NQѷPYϣٵ-4 mJNEzD}ѸNB#">U"JN x<>uA@2%)"y&ߌ5 _t)qb]LᴏC+814BI цǣ>|ȏ3ڵ_y 2  {bΞ=[|lջoX1 ,:(̙U3 SLAEL5@+N.Mw |5t/"s|wkL4(-BːŴ{nG=e_`/7@c1bcBQ6 }YOȅD.}YlܝR/kWG;l8,7H5=\RZİxz ON(@(-݉ux(GBi9sя:hi$ U+Af 0 26iX,DŽөm5^xQ`}S&MFwW/}y1X)-ja`E8R"U'+%}g8ʵDf<`w%.0M>}q 5IyެYge>a^Vf{X jFM }%13f8؈) x fowv]O_ypBaZx}! /+`@cD 4_V BiC/3w)9g}p7mXbQe.b):wZg>K*4葽X'_%7PvG'|;aw'5O?Dh>'vtڜh|>R5*SqWs?]SFA~e†~P̜駓>U[i\'R?'݇ʌ 1>ضY_h."SD>/iP 3h@J{*@IcBRW y$Iʍ8(+:B2x{Ah2=HjIuhRءҐU/~ f#člܧ$% L-ӚC ~|9g EIYMAI$~)AlRVT46 H#2_QnB%kP "f5|As,,7sTgE+wݾ˝+::] TWK~G-nJGwyO٦)MF=,D4C gH_|E'|FD00$&h}n:CLg"c*%,YI?ؿi";v>e[ˏ5R~nǫ 3DmPK/~X¡_(nv8͚*OK;d^vMN&<ã@O¿dCIC ~"71 ?HRF ΓTȰh|mOY@CHwh4@y/RPlj!%E)yj}b(EGC:PST2'DdXVdK<+06y.m C.?܅@?}C@r B@Z 3B'T_ 3g#*/Sf n 1t8B7;V+=.f$>K%(ToTRE/ !6oYNtS;VEhipoƲWĠ4]ӣ?|B=Dd/BϕN~)]7)'ޘgfaȃ^|OAA#ZŝyWW#K令3 `. !0vewE5t5@0OzqB}]M`]ÏED9 (P@ (P(OEE(#NIF7} dP%lT4c,cp>. "S _J&| Tj)!PH!o'4+9az "t/RNԴ 7 d=Dl͊&E:J:9<BV0Rc΁Z gڤM j&*J#>89"& R0NDA\>%ɡ^CnE) 3es<>%Jr!fM q_HT;_bsq||>h . #.I:s^Ec t!?`Odaq"O5 'ߌO 4Jz_rMYaʼn|dBq{Nt|`2*%&%CSOA-+M$v3 (P@ (P@m(hXPXS\:Fn/g,} Z {k{rFMځOib$k):r ߳pF (P@ ()N !hȬpf:U048V QŗJtHs1ʢ!/XALkΫD@$ Ȑ%-nBҋGP}GO( haM5mg' Á2]#!<% [O8 JA%Ry3FY"΢<u d<ӼJS#ذj珟[l? ie#][l~yIf2#zk5D쾪Hkc/鷩uxЍJU-6H!u)#&0gtϤ@7h#Wͮ-Z)_As;})p lkbdnjE[ Y2եA hPkٌ$A xz9yN,#=%{nQ,w (P@ (PCg(ZE{R9YyisyzyeTCsh[+xӦmOS&xVY뮼H ǞЫP썸gJGٳڝ͡sb{mq@oYsץ^T Ocd@B),;5ud˵߷yA@Eg']7>ߌ- ?=q?_ǢE'$(YQ}U?\ջqzJfڄ%`p̖gᾕW#vUb! _O)5Di 90 yQsB7_dΕ-CTp#Nc0)(2rW0Nx.2,5P;C`*M˵9riE"M.5=lS@ (P@ `L̞"  D>.]}wO5JaO5q؍ފ`f-_5f6}'jbR}'<a]k2^Eq)!Enk6l5f\˺էv4vOτs/ ԝlO~h8̙V#2翿_9,K~m *KᑟB%KzxtLDxղ<ҎQ}J }~NZLeK掔?ĔLg4W"8]]֯R:8)vbٞ]}Ɍ C vIbuK) K/I fGΠk#vdkHq.u@Ң?1 {/ kUBBAK*fj](#wl7HqɁP`>7t,~z1 i0pJ/Ne1K|ZZXz@h$"T.w U/_.GT (P@ ؍`%dEuKޠC*K%Skuc$rvZ kW-=zl}&ye?D^u*sb]t񸺾a6rAi{ˇ P[!`W!ք\wyB.T8 (P@ (P@O,/Ce07hB YSOVLCjxA/_㏁r±**SMr5|ŪC+ $3FK$U3ybtƓV$+6׋ShMU57lD>AtA[Idt8RS^bsptzVUڈoYGfbc1_p2aFCex\Ci*R΢-ܱkcyފ D֫ri6Ys"[lR&I jw܄#u)Q*2@ȎY9 6^"=4uL u7Sm)O;I2C0g"(=MDi W'3D%pkWEj1 ?4H^G2_`e`W -Cf.U<( :)h+BA^o+4Y (C5Q{B$Vd|p\p(P@ (P@$Aa,,,*Hh|Aeٲ!-dD۷:\}aɒ놏Iȸd:= 2zp[9o^pڭGG yٴf頁CXIB̍ԡˮ9p@hT)66Uk'5p"EKt" )f @UlZmZ@LU&9(N]PWמ E@N0[ :g?YuˣA .^_~dAN˛mWTp|,QQm֜#FCvK7n(~8j{+o,>kA5em%LHִ-i.?I(P 7Gk,{ȣ$\*ȗ¥R\9j]i QE>Ҥ>ߐfcY{1:*énsSqvOBr3/Y(AS 4t.Wo}WNI^P Q] 1^-ߵ_r>ŭ4 y+fuD["56dQ(ƣϝ4"vGy3J&=r>Cwٌ%CWhKSJN*[WۆCSτNbx =Kqv,|8OM.]?pcۀ/& &!#/V2uu03&-b0-iTUPJBRfA+Y@ (P@TsAAyOPƝ<06oU{PݠB2b oy½\)a萻:ߜ!i)  *!e3eذaZJ 5{E#aN KwfEZgϺʶ"4FyG/u#U$̊KȪYъ٫ӧԡ@Ԕd#muh9LPB\k*%a[fR wD^ky&K׃GB}G7F uiEvtonLByGO[kʲ5^i0WB2цSf Iyah,i̴Ԅؔ 3mc;V(s-vgޖ'q- 6\~0A!:0"ؿO#WBc]7{QAr!P &(0)Vհ| 7ILBl͖)ss!4152訄Gbӓr̙]-ZJPIϵP)ނF5$5~<.7 $M V+)m@#u sQm6'([@ (P@ tQlB34ܧ9"$u[6nnl{AmjM-X^1t-WqSi+/J=&fKUlz⁃Ar4m1sʌING}u[wRƓ5-]'S4壸ƲK=0FbT 0!{Vo57n=Z\SH'+)M:nҎnRņ1>uod ebMrG?F_p-qjWDC:Ti2}xQI B_rn4r]Zch 'IO>|\OK a)Oxx~MCk'(ÖRW yr"t:׎KI%>B 'c\coNV:͝LtX >^O,0ryHUs5*J$S/0 Q#L R{Ɂb@4o4bߜ2qي5$?h|1O5 +P@ (P@(%(H]p?h9gO\tWdtG;͐&aO>?{(EGnJǴUY,qHԧѣ$Υ)ǚ{9km^Xۧ{Wk\ۯsǓ @HldWh6s}/\*`H=~F (P@ (PgPxO U ~+.חDfL5|ā$ @@qdžt='[{UAXt`4ffL4toJSn8$]iиa_h4)~׿)(a#4rW瞪+ְaT6f⥗]jr4OWIHN@ 9.Et]RjOx>ȕEiGmO( G tqΆ>jP6Ң;s3f1ҩU?II:N#uJ8ovѣ7%$ -MKQ%E(~vttU>UTK0Jnp 8e$ƷJuo\4`w)z2`5FT`8uxbS GEDn@^;Y;L斋v P]4^56jq0r,7Do.AP#A r!#Ub-0Ev@Ss͢7rQULΜ2%N׭r@9C qzڃx:,[J-:#2Bcڑa8K?n Su9z}kJ.bRp[]ϫA2ݰ[dGۯ|N^a>>-Va!OIbD|% ܯ) >7]n\_%]#rNfn3F۸msl".dm]= GPqҪyvvHp:&[ `;ݎg(QE` &b%IōRyB ""5% @k- =4f j'y#AnH7+UHLx89lCts &D0̖ ('ߝN_Hs3E-5b6E'0hV" N/E\(q&s&%Mm:ā4L%46=ۮO 0"OtzFdRs()HFL3MdgNt$MUP2g~|so_" 6't1G +Bߑ; c373kb+A&ˆ;TWH c`~bpY9R,Np*Ҩ!/hsɟCDJpA"zt7k?hvzJWlY4PXh%#ؑ g9GgZaQ& Vt [`1a|W gwWs̻O9G4*B`:RՀ&3OP=P,B3ݵ "P#yo#6/y/bv[`%hW.ߕk >2ɜO'ג"v/Q5l* LJ:dJ:A 4*aHD]$ "rLQNuP94fiӈ*<' K0kHX EqZ FpK=Gq zu;W%/hi=9uIS녛:.t閶s77YyAc[;ޔ 6ni9}uMoh`K[c6w_x΋u?%y/rޚfh;!ynk켶26ސ9vĹmm<RJ]^o2{rv =]qҭ,~: +Al,Gabk|JN:o SWHV$3?4Y,сKS&4RZDZrU X ;^20)BTT?0ӞWv!_ (=Ȩ;I(z&kNkǞ{:y<,ԭđ҅'ׁQct)?7 "5JO}ߜSխ\x\P=Oă" . %GEIh932̘n-ԕ9sL2i #Y{U~_~ܹ5cr=wr}ϴtN{nZdOc e1q̈+[}wp}'Lӿ;_CJa~w{L(Ν;wĉG%43m|l kmh ޥ`:6ôK`BA}E/] ~jCj Հj!G $ CF,6 pV"VKt8AvQ#5#YÛs+ D^|,;w¤NFS; :3]/̓'QOV c@| @yG_Ȃw 1?_$S@/f8!dՐ_uȊGkYXb\aXCs?܂?Λ;{s2 V5})1mC<"ڍxO:! _TO3AaBb|˥ @e:H(H@ ׊ԟry=pXR6u1a,AY$RX}a8G/9oO` g2P0*V4JƒϑEdW 4JڃbALSH#0U0  HXա܂@!O[dځ@~kGI|mR ’Noׂm:6')UBvEepvv .޶mO!`s<40`/ 莛BAtdx8eX=vgTUHGa! FXE-Vwu&!oH)^$dlWe'לյ7[mPk*`DȺЁM;&!0NB>bCŜLPVڌ.\:0)[8ℱObEY[<b}byl^犬]t($$Nu;NIYn4dJf,+Z$Q;@FVf&%,@N[-( ?T ܅TK _+rXMB;C<-^I5RD,~h?O4zi21;JkW;xP3XnvՔtAo [kP) fgxni G]9#v`1p|G: ~jIgh}yqջjՆ EեͱjIE <{WIO{nfAbE7}֟*:Oz:9]T%w 癙/7( 7RLV2SYd hEcYVa4{53] ؛m`G>KNذݓe,FB Mx{`Ⲥ9GYyE^4Oc#bW/z$5]I`\(h(ǫEBb i fġ|eA9]d^h.)##w9D0Gɭ$B19)&%6bC.D`Xav1IװJ5vD:1}0qbCSτJGB%s1x7%^6v6%{xl-k8] r&BbPsA߂H"҄[H 4i*ʜ[5kt2h!d.M~>!GեAi!9e2Ih,6,Z^S0aDJe@:ߚɑ,K,B [i@ "7y=ZKpr"yyTΚ|#ELaNU\mY"% B)YM`+)FȆ~H.R6V8p+`;I`t*@*X@DDM S+E2^b0DUŔ9|^V;ؒyI FS2:@2BKAnh,4 <5c-u =eߏ$KYk#>= }a0.~*8;Ko$ $?T>QȜ"< gs؛D 9- #"u HYQIc 0 0e K^t 2Ai"I\DŽyfA!8״cr_"PB9iR :do*0ڮt,аFE-hPVN!k$A0dGy2=>$%4^p`R>{)XI =xwکÁAgZ$LѲtcs6 |el{fsoچ?<>Oyaijkտ];ßO/nuOO,؆ntid'6xdG6 yt__?u8 C[;g ~6/ݤyQ|xd}Vl('욖 m12^(V 妳fvH=0&]=0neQe!cmA&iLIhOT]?%b"hӋ$B[5)i G4!ŋh0ߚALéJ&ֿl"d3!Jl?EbE;xEuZh+I yhH_ǰjvCt*B6x:~BgW6.>i>} $8:,Y m1~k+˟)FQbo~uӥ__ 1Z6Lhm5zol: +xrL(8?if钠mZ%ψ9)DfK,q1B?` X|5@Lu w0C &$n>|pg:QD#\/T5D˕cȥCB0{'naXHIg08%i71,sV.T7ӳTXstEɄ;>'CA\RW"-jc6qO.!{$2caDWQ 1tՅzA">?"]@di-|Lqx0 $' !Dܰ↘$A\Tz|g%s+>Es7E!X Ct¢?ł~?O-"O=LʅBуЄ`ú1;ƅNFI&u>~3l 'G2CDȖ>i7E`tB ʉ珄xj-da Ե o  ڠ+148En^`%Gq[8 4 r1qYp0S\ ?BfSH ;%!.E{yICIT|n״$,cF5R4w-*ŊQx#BQ|5#6fFKk3FKve&Ba!.s$o &-1~ ݿlLc"E`l6nQy 9rDf8{/ќmr]k8A h&cc62&tÀCmQ1`\}G1D9-0-) ;kNB#&d&;4F"4F߀ØŃ1Is,apbUY2‰e .9܉"=W7X PV_e"b ڌdŪVuU:[95:7]$U"Q^{hv|^|~ҹ%#3kb˚Yɢ-^ՆDh~<#=^g==&U*Y,V(Q8Q8^8Yn]쵼==",hJ9bԧFȴu$yj$rY.44ᘥXbPUw w֦}lN+LA2 0ӂASy 9V(HƬpi(tDzR)\-b5~N)!]ntd),G‘6g(R[G=t곿'MM e i$sUK=~I7THy^a-|NyK:ⶵOIVrYdh(hv6l 3/]p+|Q7fƑm~9+)aup JLeiq0%@G3ߔ^{X޲Æ+$J,D{`.:&5\xj";`bqy?r> &rB G3[4r`Ñ|y#$Oy9$%aR=pہm?`Q5;<5A3^~vC%qȕ ;\weO? 2dhWSEɳ{98={rCOeQ""wt?- Q' !!boǶHn8fMbUS܄g  aC.k@Ru00ˀφk[*ڰxa:MR&EpђO@\)`6# a.R;Myq-uW mXrfP`1ZBtL3+uĿM%ͼHKBAc/3nKPjA(DE%3DBN>c*2XMn=2"ėbT%6#&q gRp6K"3ȪK> cu_ˆG<Gf,F(MVChYJ&a( 6`ls>YX^cfX# X^iYm ^h n>Ky#܂PSBɓDZB:|>8hLB>k\pJoNG7+'xo3bQ0\F aQ` ߀iB5 I Qa¡Vvӌىg!R[4,k%:$@ Q<ܖIw!{׹H5@`M!611 Ϥ6CIud009I!e<0!|E+q!5X(kCa":酝 c>'sp] MnXaE Q2bHia`150&Zu)d!|aq[KJ@-C)E/)E!l &P#>a|ELmɀ3F!Y+ ,F妍# П nJQOrDWMΊTЪXĐ&L+Dnpy#'(w^x"ގF󹕝 "˗Bo1/Zӡ b 3p)0r!. hc V`~枿NiPwl*)z!+F2ֿ+!\jiQn"  47޳]F?hWGl&fŕ՟C2ZI[JZaEfـLlII /$=vR0S_!i6QTt5+M#z>~w=9R<=2%i ßPu0)YI(nkXIAΨ.K?oOڰ,MQ8^C`1pZZu4S"2\&a~J0 )w y|K6t]'EWVCQg(3᝴E6&>E3Nq(_MI'Vӡ#J !A а.l Ld אϫ$K-4YY‘TssB {y> B[+ N6 ), Dײ EG1d--dB`M9yN: @qruo99$^ Awٽg6$4[/oGO`ޡXXY "t8*nHI;ɀE,FP Dy#lX`U-@ 5@Bvlq6 Ni*|$а!慭Xo =8Z9Fؙр}Dn3 [æ 0iDOD#7 ]89'7vRH5W<ŏq;9%e"lrV?wY9@ QQ8VlȜps \MãP\P p9! !v"{̛[ cw>$dh$bU 2oC2ї)]c !;3Qh!}KU[HӔ,xc@.$zx# \+>nC6R2jB:v4? zಏi}rBph0A%p0$\2-R4)k$?xn?h79Vo]0A97  =!ļ&q(E54,$=\J9nh`ez8l9=_SEE"vD,ECMBe%H.Dvn , :.4LN: Q)8M s Yi{%RS5g/vW:[CGn=YRd1T{{jM0K+֮ hEEb_xP ^x$S a ` Ƽ Nxk@Pk$P'mo(XeuEkT e]+p#sID*SN=YAqb"h >10}X Ş!A`ɾڴ`0Zb f͂Ʋn=bJ~&Dl*Nz41/~㚦 tm:o ,fLGT)_.xWVU_8m&9e!ߞewaB|^p-7t,Luv-5Ҩ&iasd)0GIYw9 "]E% \4rb%>sn E{mr|ӤaZ_ϐ6Nv'8wjߦ"{2R@VH@^E'~7A'd"}xlӐkX̯QN{DcUE+R$beø [yEG~^k޶ј_BhIĽwZriܕsK\ % )-iaZu9K#M xC7ٗ5B ;n%Fz'~dv_b'. 7}c7Fov#' “h@҇SFJ$p0BfeP^8w>k<@Yo?X}бt4@q0d槟7 kx$IЎGC=?c]ftA~Q 갷@ 2/e #!-VeZ ko?bSE,ei,m_n|pp͏_ {߳rMY4zX - f L)Jef>C+jd8 `z뿮ؓ.rY :y@sN-XK07=mXʔ hƱ1ާ%%¡~(ąAVvb/ # ҝl8H_ֈ/X*L`2@K2iL5y4)"`Y~d`S"gp1LR$7>Sh)LPKa#pvzB>L%dg/8̹ ݋=tрl9c5{^F10 ^iҺpsG4Ҳի;D:-6mwL=:L6nL"XdgIQC2.{e8[1g7VyUoj_żf;cTb,s& ]pJɎs6PG `_s{ icy&QXa) o*E: 2e9% `՘ l811a>vwӿG?{kګkSUI~]?psBkC+`OƆwWߘ%EX0}Rd#aX僶ZR4Wо ^*uVsj{5cn\ b`_{Vf~Mc7q&\Ze@H^{NÔ}S2#sj%ʂ٥'FػP΁)k9 O6%ަh{/f{4QOˤ΄אfӳ:<¹o21/uļ8_x I5tқ׎=!Mvތ͚hUQdYwIv >\!wAwwM}ǭ{3;ݐӿfիj޼yk5EvܪxHx6j+uMO:Hj0D '%/ct5A0(a *kME JUhCp_xM@bM#hJ Tƣμyk+5}K3\aL_[[BOtxU]'j0D\>_x2ĵt9=y}LȞ1u.U޺c iUck?81g_ha!/%xqW4ͫiWmB4 r֘)Wكh΍7^0@193 _kji԰>o}5@ W-ve!>fisSCU+-%w!CfYJu YEnwjEk0wU+㉩Rcχf8|^5EsVߒrI4u]J4E<=E-W$Lw#ڣI o8)Sւ_EK8EΜiu2#Sc@I~xk/~嶳r$iڜ9n`8i#L;kyp2D$ S1=~Y3AQ7PAeIkV -gW ^vp ػ?/c:Mt3H`5-Xښ-˘pʰx"1|s.@}aZ NɑRWX]tEZ#cpJGXQ׮٘_aCΘ w8c7x7.v~qyq䯱O=Ӆ'"fJ33xLHq׮oq+4\ Y8:s̿", `bh_ lT|{[oki<&YmO),Y~j]ԍ4 ;K wٗaAǦ/j74>25:}OSG͛,|co]\32OCCpJ<(bcN͒oA7As~O &6Ľڰ@۲I#hry-h1/xV +6 oV/5ݢ"Ο w+h@_~um9lX(vcbG`Yֵ҆0@9M>p-{ܥhF: ݱ؈`yenBkT >=rՐ<2cL-W~4Gֆr.w;CN.d{[Z>|Lz/-{LAK㳼'Hgg oxl, ݤT>X3.(iFγ>\"!SO(aZl1 4vaa'Ƣs8}D.R PQnʪC =~~/حGKxI+I%t[ܣG1"6b:|:|:b/e԰1a|rDfu7ܜKIԤ- 9vACΚd5`GBX~Wz}шLXs%uA۽ݳ]j]R0upczw]Z]OxZ JI/@שм܆o^rւg"/aPhyޔ:/x>c  `0 yKNq-Lga.C7`8MPp@N ~Lx>$ pGE%KrB$um`M$h_B=\ÈUb0!Kdp=V҂p3th~ψ3D6Q5F"й+UxY\ro-/+C}e۸aQ0~"d)TcVFvE4/i/hz+g̞IO5O9ް3Fo?* 50xa.σٙ67JIwS0G9uҍW]n6gф"N78,_oBÚj8yͰ}gr:+g|n  XF„LXaË~Tfs%B-bԾ zIR1EGEBk119P< k{c ?WW+V=nFYH0S#,5']V(ט|'G m_|=fcZuu5k3d٘Ƃi _'0qɜo?dĀ`[+2+/>dã{oI ?)z=v,Sg)l)yNڜO=&f@vO{Hٟ""Ev͋HazF"k-..hw,~bIS6|iя@DRT]˜͛߷D }mJ;䜴HYj>x 0n)y>+mC뙿?@QvV ݖId=JG^қ3ˆc [|ZӣئGnR{3|lZgQfO?dvAd+n޽k%זTVrנ~wߘ+n@ \vSyۋnucaO}\;p}^Zz[aэU皒+_ۿ ޷}ʯ/uh!< U`JzꍄM@B.ށR d< "?) ZRI[HRV)WGQ"G8",Jz#!R3rc. N 7Y@ɿ].H.eGN [obVMZ!%rx pmդҒ 98f/ ZA%fϜ : ćhtnaQJ,p7DЪ#Zg}UO5mYv/G|%ڊIorhnX34'?ߖtNe&E}07oe}L V-XZ~zJIi) R4 w… @8f0,SH g |EC0ħW6a^3,#Πşd $"FHheV\16 $+H  (d =HD| BIc0m@!Ih@X!͉xPх0uHJFF[ba6g5L2Љ^BdDzK);8=X=O'!tAԚsީ' sʟYܯ 2bBHӃ T(h DjcV,mp #r@ D]yR J8P T8 Ȩ"( &Hy?S1cS!}/]2p?BEQ1㋋1hoKFC^-5nؼ?OH(Q]Ӿy:k~o;ˆtgz𑭍h="3rk0v)1:b y?1l6D+zAuYGoɁP;Uk³RUދ H4PdT@)~JHNE!٤e\lƚ? R%7[op KH^#WF[xyi/xmAn/l\cUdpn~L@ ĈC8,r X(c)1 RAԄ pAXHi%H4Fp6"0)9ĀQ@K:6~jCtOР qrƘVFN aLޥ^Fc#XxEB۽B_&wV|, S KrbAqzxzOEC+;k9lQv tmsrNIr\0 p/~^ŧ h3ItUjW^ VwQ1)kCjZt̼MSۤ֨^`ZhE1ֺtqi9v3Ѹjʔ Y-?Vrn xtŸӲ&NĂBmu L@)FXDwd[ dVO6ɋD>CJ]v_[n4WXP((ȞXCk a$MSZR|U V6WG^=ʄ"l'BM.JV^x=RW+HCƜRigMEʤƤ7o?)e2$CC6i(RQ (P@Fb տUdݖǛjnkytK}ki|r}6=T~pCu폭xwSc OtUUU?؊6=SꞨ~摪jE`Ad⍘MU׍VLD Rp)7J=;IwL3R@Bc\kn68۱`4e:-JX(~Z^=$yUH`9(rp+C~rH˩^1>3rܚ<~y}C|Ґ}jWG52̑ufӂK*4ulKԹk3M4-Vä7]{ZڡW#7G9*@$`44ؙ?LPq [`,[,7 DD&@*s2JxL5 I%@e3HcCéȷNin/( E#V ƚfRQ9Γ5o/WKzɑD4ĖUrmִ UP5Wnw(8 g-=˨mHR(@"16'`&SzSA{-/ 1ʛRk{>3&;`i64pLK]dVl1)p2xht9WTh>|ۍ( 0Ά:(n4L,ITwMWH%6:j큻/7#d"4ertdo }|?e L))xkziK9,P": MK2mt{\y5q1̉L?OZ05`5͉ eKfΆKl-࡛]~7K/,dzeeY[(mF{u圳@ O~M>ӒWV9tLLdWe-jәg^)k-Fɚ_84LN  O.DP1E8JOU' h);zKLJ z7nYekuAkώW7b{u ~Ք?pi:뉧W{f-Ƭh?:?|?`&?>^vUMi>/3AoL[j}\$UOQڛG;uQ{7@fը>Fa>tύ(?aI˩^,WlHޗ\}ww٘1}:N O=G{09y0b\đKӱFz# E-mpS(S6v:C{k9-bv& C6BXEֵ3}{o[;Q@baq1#Fsnc/zXt<flmVRRO0V3/.~%C{v݆ڍ:Ε܁#KVϛvV[!۟='X/LR-/88ysƌ EtȳZ@N:kdW}p0Ȳ`&0=;.Y7mX>gIM zazÜ oਸ਼4>u,*ׯpǟOj:kP Q3왒WPI,Z7`MO%.C ɰ_:޽^Z是c.i~O?tVݺڷdeҬE)kĻ챀RjF GnǸuk&JWطm)K$dʆ, >|ȱI3Z:e(وKALQPK Au-XY9y)-=fLȣ0*bYu2Zԓl]CfXy9zgG t *cChz" şM*x͠Ċ~ϨE|+jC>$mP%Hj٪ ~!Ua)r޹g̞;ëx,YonY;xժE'uvɒ%s} + iEz}Yh E|.Xը^v%s}Pׯ+ނfPyؠ]dDV2y>|jZ5;e79̕+WbX;Ih z C "ˎfkּ~6??Śqδ?TVl/T"+~KWk=3̙T[W]soVV' B@z镇6*!Anym^2>H㏼W-sl&ꪫ#oꪫΝ(paъKx3c!r粻VZV|D}=#gyVPm|W;iii7uYg޼yE.&+GˀP#1IcI54~4/Dj@[هXHc& l:Cl}1 ;i~~6 ZBEmK4Gݸxc=hs睿~>vZJ$zwfZn nznubCԙF74(Jcz(rݽy9Cfiܩwt ᇯj(B^ Tw_|QgVx% 85OW őCF`ĈL6[9 ``}زrzWR VY1??笿dNQRg !?„&t?ϼ-`K՚/Ye;ns=|?Q G鑨W"Ecf夓N_0m^rߓ{F_I9*>+įͽK oJˇ>=foՖGa.7 l?xhL~1k>w7\wGg^_U-A 1!ŭRg^;n(7,ڝps#zw%$ۭs4"Xk+Oyч@pXn }Ƙd[fVrso/]\s`GgQTQ9|߁y{e*_"%I_nl2fXqBl%2\vtVп7VIXo(lF^BU 9WNGvz/4\_vZz: =D hV ꎱ73< XaD)gxio7/j[ Ut548_qb*V\{}33Yj%izs.)V1v9G o`n 7{|vJ2>50qwJ̝2ې5W-HQ(x$?-A |ζ3p͖![AbZ!4X5>T̎+QTYƌC,T~QP{>{ x͡p1[xҨ5熁eJ!,9d{IAOwܻ AS4X[u&?Rnj9̕V 㱗Ӥ]Q#RZUV'R cp&% -8hX;"e\Fk,VY|` NH>7Sl -@Ť {iG=wӎ$"NICO;F_K'p)ٴe˖ֆ"nX]Tq&TA 0Jawk4?ĿD,v0 H-;bOPCuf*kzi->T 3BjWmv8|\J `:݊n| U`CJas{ᖍgvOYUyU۟WY3Z[o֬:s؜x>#&~I!A*{|{c&ӟ>/Ls--@P^3-]πbym7mF:X{,`8wx‡y~ izZk]-uX8v Y!P-PZ:FcbB~PR'uLdǃ9rH#fT۔Oι° |M V6d\vؒQ 5{J8}EaK aԬB xF#zٚ<$R Fe"KbxLr.}}~7rYh؝QyP/ WKp5;)W8(M\N5cLlV$2%葉$yP!&y|sSczbcXPjaȄU*BS9@ҽ&tP F =9P^`N1y蹘1)O&b .x"LKj>%#;ɢi|D N'O+pJ%:qBD*=>TaO_o.> tsϘ955O.r"6i F}f4JNhRg4X5DNosοE=?c7 0"'׺dDbWb ]ExE+EN>zۨB dvcǭY. V/;Y==a%*  Sc os3lP0,(M64o*4DMǜ>~M˦Օm/Me=f:AuKϤ rM_o#FsM~/V&Q#J_ĄZ>O@aާwp&V-Z"/M=aDّ@*Rj2M`C< WXS*Ԟqu3ϺpŤ^%>q4P9s m0Iu>S-γeCԟ MkL%d?QU#4󇯛b㤚-5E(5y~>eI'Y@EW-!,ya20 bfH梉«B PHk޴qSMUA{& 0ZPKPlu7ǵOiIhR:{E1U%_`=dDс7\{ޯOCOҙ;#3F6-,;gӫ<2p@/?fC>,5 VTCSDق5j?dJGFP Ȑ~C'n#K_|f'ׅn 3بY0 a+du-r[E 8^xZe4O޳.:׳*-y)?;iCOӘݒۙ Ep/aV&״iY 3#sZB;yΡg 7nozG6u+փ೫\ 6WJ); юF6LA(RQ |[GmZ"cNsAATB=nlEJ73N1ܫ(њg꺿>m'̋XWKb?B9sY6zAFI ]jo7bkli8ZY]b_D^D)~㏇xbs8<~1a\.!r(}eB+ڭ{`~P)HˮHb[gnb%cGt"|bpb')ƐDy0VI5RUjfI-a&O5&(_0y4FRq1.ljg\G2oĺ:T#^AނHM&7x;p( dbT&@qB,HnvuU=9HyA҅r}Ȝoo&A5]pNaN2701[Ec@,֊C2X* j'9!WK}3e` ";Hi,6e@)ppV)Sq; M%R\޿i-iH6$P66qG=8gKc2Yȳ˨Xt~bS#R(ELfCWw|ͬ&QgY$l_|6،(; hC %eGX N_%2J-j,` x9N=/]g[*s%:vmӊuKo^F"YY-vw0c(a <>'ۜipҥoɰ<ޖ:7:jʚp*Y`o'5FU`W|'TBYtm9pba@D<>?UP@nGſ(tR:碳_Yn #aOC Tb݆(/JycO<駟IOE|g]p+< ׃Ძ'ʫɪ;^yeB_}\B k~I(+ꛮ"ʸM,m~T* > C*GġHW-Vh$.Y%W^sg]HdvO? BnBǃze+VV_׃w#0fFhK~0װ5)=˫=1þ0fD]ekzA%t•æ>h(!!~zpTЩiFjPwhA :| y"sXf8lYB厇!_vفQ^@nO8\g$Db1On6xPL)p:kT3hCTtu g{dPg6p߃C='E39G|O<]֫Tloo_h/_apO(UJ[^U\>E![3K{`Οrҍ,rQv.P` kQ٣?2?쳃ڿo ehQ`0!j }-| MQ-3ۀ2x/<57޲QvpKizu^ITUO1?|ugAt QhIz[< \q3z3zN3NңNFEn(F65 |gM2XcC/MDүclXAM"D M;j]e>xLML 3Oމ<o,xm{X =-t#8L%s/<뵗^ JO圿6, 1Ӭ& U>+CG*KQ$WtX 9\ ?Į"FVjkK؂iu7~yIG F,T+%cf$sij'Svl5a !ӺX[DO[{w wUD{a; C] V *Gɫ pr@Z3N?g}dzյ^PgȜAZVO#k(RO,D~E UELMoͥy.*Jz$͙&q@^CDSJv"v 9ȨẑyM;!<֚ssjG€e^ /QBM Q V/H~R:WDݼQɼ('IAΗ5]B7h)?NfP[]7a[ælZF*J%QENp]<@vy h4͇D&*F?DAN5Ⅾ_(`V,h~N@r4kO\z sˍ`/c U o8jeȒ`~ENe47]~dd+yqscizzr+ q<;0pRC ,:O@&Gj+ #$.W Nv[ZVĸ$DSՐ{߁,?%{f*LnSO? a?<)sf#3}'AUQ0^8iU]ha*.Zj+.Br{oͅDڿ6 Prьi"2t@@rj?LWS-k= F$h6#-XJ`,Z(yĮ'oF(wpnm\4ՈRFX3D qIj> 7]3nykO~QEC$K!b7*bnʊ 'yj7h#\7k"\y+QUs!믥 ݳС\/pyU[򖖾pKʹ-%W= %PᚐѣNx\.XEl2i2N67լ⺻i oCCB6pX +|>*s˛Qʅָjx|zEZgQQ:コ#`p{nA!&ܳÒ@|7Qyƫ\QǟOHeJ7z(H"Y)SO<,14n?p 7ZڲpŵWzmx}$눋.uh-rg+intr6DU*J*Aڎ R;܋Zxw^FR)ߕ7geO=M !oR1(WMÃEZ0-ꇩS|_PDS_! n EUm 3?lbJmIgwV[ã"j@Hz}pk&R~*eG{ѧ.6,]<.郏WYZOgϚӼd) MaOXi7k4Ldt3Vu n>NMgn/'IgeKg٤7f4+$&,42(\I:!A-A%4Xia9G &F,,H xIחoռOkX{Q>|>|DHR uqI\De_}EuQ;xނ8A~'DBp&38x,: _v`e**?|6( ҙcّ֙i|3z jI9rt92Vy7JX/OjoWKyRd)8߬7촸$I*CΒlc)ibỉwO]p2 ~8BmIkꥩ.8%˗! \SHOrC'Ǥv#|u RpAKGYwMbTs3f 0_iEyȁ_%C 'M[dx @Ci:%ʑO?ͷve#Ǐz891.C,"Z`ѣGEGi_uhވAO86 ( 5X`%Em8c`R:#i 8,LNr/?J4UžȈLxWᕴ |DLZ@1H+" &(܈#+lF&'} 'a4>#2#*K.>r86XA($굨YTC 5F 6 P 1=Eͱϓ8օhi#G pUŋ1XpQ䦁B S5F;|O;Ad'FNʥ RWl[U_~&m&mR,F}FxbЬ@fd ;y76L5z3 ?DDaU4R'ZR"F$W(dKXt8Jʼn;AP(i(Lr"!F# P!@>@YAd`9сhV(oE8v1Ft[5 sQ2e V@6Sl0V Б(ـBErr6!̂Ngi$(f:303lmd2T}Lb@#aLKbrZ`[U4Bq.rYTXbC Gw,[7{"!Z #&-me,',rɛf9j$\"R (!3 [jF(ioDR@:U3l'"GSݖQ}=.T)Fgb H->7WdΏǶ_.߲˟}BV3ء sK$m[]i#!Qdh+h+k]q5I~To `h:*[sḺsfGf4&7Fz$BFTdGRZQGOSn'|Cm9s#i."(:xU@b!-cSٲ.3c= c/ %;VWe㒼="Ȧůa%K^5_1&Ȟш9'r@c\B&)1䳅i|AHTd`3yAV5f1-$e9&|  8U&aڷ56ː'> u24 L;>*.kի;!cA w!II$&6{a˂l2\gD/iS!Yp >ȊMY>#\PqS}YCoУ ٙ >/o9OϬ:83Ģ˴(9c+vdZU_0Rl{cC4^kEe+/ 'd{hĬ#2kl:<7:Ms6ޭ]&d=3@XŤw]~$d<"vEmB4-0E nѸh @V7X*z] X4B*n6;:髉-Ž/+x;j+!ku^ʣ#@l:v1MIWPa*f01NߓMhD͕@ŦR{:mrVV~RP<1<(1pqY> kU] նPnC+`#2 aBc/L)_Ag2  1T,ŠXSUj)b Ф=t @(QGo0[mδkq)aEQM0 s{66~6K*ͯÀ?Erj2G}CB@NL%-X>?0S c! K!<("$o!<6E`R:]v 0&3]ݠoioׯ9(,%hପjUAc.dP18#+?/Ą~ߕo(>+>bWs)@+Y* iaA*6$UH}'L}ÈCq;|75 kݠLʚ0)ۼA`n0+tf \31BA 1+(׈ւڀ%v]hxzZǢD2}QHpooZd % ,V$WH@ nu0XQgm}IkV'HVL!R;3&pkJ`ւĮ D,pڙx4bbXkxyڸTDb8#i}CTb p)<'HQuҁrNbB# ,*,;CЇFj'$Q^mh%[wte HM; Img^P}WKi帱 m(a#' `Si  0 gdŽ 8S*;# 1LlC:b-'Xcm哗/x9>w\܄YO6s~zy/ްɻ~?聇>o_ {6=x_=o! Ku6(=aBYX@\[*# n{mSnO"hB⠆F66|w9`i(녨.L5 յvKQ_o,/rQO<[;9̊ 輸L%±%\%rJ>}WWW'f-osx/fҠ&~UOzZ<"g+ƺzI B^"!d0W_R[+Y"aƤ&~ҿ-ofL/qj:틹[Yl`'+ CIA@ 9͉" HJ!b "lcqAA0X!BN0Ib (#ͱl`>۞.-+yET8 e.L3jqaTDMZd%:)" YYR$+ۿq HƦ`arQ/%,t+}%',d'(zr҈?cڬ a2G`!l9sQb2|̌i) ZRSY!q<#8uE,3}&DBK$Q192Vʹ_Ri]@ nݠ' E6B}}m^~lC]CLE&/|{a g$Gx$l ZI&R-4M$) i܃9HB?etg49uD{8 47lm) Blh -$N#x,p}`]A18aLeATV-<@QpZxb00<՘ HgH2㱘n 8gGrg0Xa"@9$K;L ]Yn%J'mJZZ cC h% zAHqIvf'$w޲=q$I@Ç6؝]o1@Bi@YRD.Phǀ3IQ={>jnP bт ˏ%M =7Gu=F( D?&]0m5(TC Xy =:X>'׎=\ Gxx}ҁh82 su2&Tʱt }> P t%>4і G `>l6;8+E~ 7I˺71MC}qPދC /^qYV|NjO;_~m@sxby5+>׋e{%jn˥K3(N{87,q 1`s9N]"34EHĠ/:VYUUƑ0 RRHc!a݈3.@)ch(Mt:'R;aPuPOzNunt2w#:NE֐^D s  {vbh(Ig PV*e;ewҀaZPs͈"BR,5%j)rq$Ny43zp8fE=W O4xS'0Wu<% \9)@? D1mX;""* $Z"D>A h٠Yx( [<i-ǫ6!&۰\ $xqNK<Έl"&v!K0)xE5%)1,󍚄a#_{h2#F,uJSP)x ] CU Q袐)}ȣɵQ 8u)InN5iaDliXȨE#xv2"%VCzǀGC4$g,1Dc7Ӝ -6m nsES]9۽8-3H<\d$2qJwCB%J):td]]"5ɿ>! 3DXxVK?D-#@2ikD6g?AI/nrI4Vu$"K yEh-+^OBex2vs"a PQ3AKo*1!>ΆMVڬ{H7avCr >|%Ri$ZY\sdL0zlD?PĀMT8p0l) r9I"p'WeEOE4>p3Q309b @zق2t-}lI'THPIn =YDz;" z03e3?W`m4s6MƁ'$a1=ZJpJs Wp4Id&jQ(9,!~A$|Z 41E)fC%- 1bVQ%a 8vHa[Xwùehh !lp bR|(5r0pFX,$cCb 6)ԎX)/#D*!Xk`"j"=UM }snn=(|tfcaǝ‡)tX2f-H܃9 Xv`$niUuQ7Ǽ:%b&"  #DX$F%ZrkYC5Jb$`~"'En@| eN)bFrQzRb8Ù6F5'C@/ Y " 8%&j!Z"7q: Bá&6RđPvilaL=e%jo2+-wV ۞ң !>79\Dx)o6#=2k,h7RP%5ɀ{ trx!6nidkC*w>a߲A 8 >IΓ |^jIHޣӁp+R^4ldBmG2PT2Y'-ղT BP*vKvc{~wD3s$7?Ժz"%>s뀸)9%ͭ. !yѦ-K@ /NPR:3p>E4ρd0t"b~>RN?U(ǑD[Tl G``Ϣ7I`2 +!!AҷJk%\hH/xG @}ǚ;6A^t($Dm/XHMfNzϊx.Y)ȇǙ]ڲ(n"22,ȆE~D )qx!( ie4MG*6"#Tvj5‘W T44R 'Wʍٞ@F&g,2ӵ aߊ&1H43)oĪEn4A4BlJ$Lh/[ .hKc%#6Q ? F3ح<4;R|w8 nL0?mGԻ݃ɅZD7! f;L[iذKxh2)gDrwhk'U%ͫE򠓖MT#yŠ &!/!&tKm.<ʈ!fB5ci S@>l,J #q\[z(2;1;j&#N B A &kvd!fcT_qH/'Xc@yh> bm:ydp~?&EB R9S*L)#! %f5>paTZD{Eu&-nb/aoveD(WdAQeGxu g4ok/5GQ?_hEүք akgw: =OP' #@HZ)vK?&xX,:V%Y0Σɝ}hݺo$NmI؉۽P M&os7DRfuӵC̦R)x;F+3J30kOiwyEE7׷uA $4hA%s#WU%?.vGݸiwջq]DA}7o?>ѵQ-2mnŗt=Xa-MH#;kWB@b_Bv )]C*[pMݓ5O7=L{T5E\[hNDoP֟~|eU`57jn#"49 9ӓ(&a!G`0=P+Y@cL]Y=q>˞ty,|>@{n(Wt*d"ǞvaГĴkcy3ͦn2сNڋ.D{oڵWؽb8n]([+lY8u@uBKЬӘj4ڭۄ[!vEWĽ"&FRm& ]Pw4A:t%&OLŔ1>k~lo>jѭfF],FyxG7 |lŎI' ېڷdnO|QYWb`$ EAَOt|KSrř3>i_oԡWlc}@ODy A/ʂ<tV 6$G9y Kdiƚ%F ,+Rrش!k͙ 7 P{Xx^yCX>Á`c4֎(/WM?NXNI͔]&,o,dZhgV]Nάbg)ȸ_}[zoNƀN5Tq#.VK-|D$G3"Y:+0i X-;"j-¶_F:O ] .)1Hҙ_;[ Ǡ ɥ'ru:(ȼ!0yD8 X(M܃=5!%ss<)|G*˼AQ"gj_oʐYȵ ew!3CՙP,|NYq&g J1Dń"m*uSE m;@Զ'%mDɐ[Jh3{V#퐳ebkB69)LECTiZ ,pɸM8Znb4fʹ^ո7q?'+ܲuO:_hK[`+{u>Nj1yLJ U? "=u `c4~CEh6ƫg|4|a.W_-[e:*5Uwq4APtUs5I珄 {yYLo(8@Xۛf =x!%^[)iƉmˏWoq|c䴇7~hAS` 1rtąnA)dpXaZIG܍t$F[?rBbԅ^/(uÐ^_yqq5E7Zs[q 9yf\qEq͹kr3ɻ﭅nʽ>'e7-(zgXvMϠ:0'r$CA^Ɂ˄E?4#DpOH .Ax)˘Л" S: eXMfp"ci[8.v`jBX]ÕګkkfCM\GڦgPOX`vFAݤߠ_K|Z(DdDKw*ڻKtIyjխ:)~|.$E=n"&x֯l7Z.Rԗ/ލtH6[s78ӏ4~?-183vX6T;on??o+#<3iB{ 7a/? c:8\9gM7Bd5 " 0SQ1HyNv}6vQ8 ]خVl3 [HVJW99\.)t@TWVIҭiO&T_ښ7]U'}]iii3PWg_0ʫR1X{E;!Mojo5>.P1(,9.5sP"Jj8t<;XVo._ĆgWzg6W ,b"ү[.P]}la9L3 r!ԷBu mf͐'Y-f5lup>@ ʒ.$R#'@Rg"E- _F(`Ђ57+f jgڈ DIIY(yrwCEU]@gM!jm[.l*zhbv#@ApΈ.b쨡 V FgHf$x.@h]6|ppyD:ߩHsJi|oC*W=ĵQgIW$;v7mOz֣E[ז V~w $["Ĭ'" nyi߈$)y;輶ZtT㟴\^\ENbn6<č%*!Zƛe֭YJ774ݘB~hB|ӭݻ>t}avWڷyQ% J򬳊Rph{Wd~O:kZ>z&T3Z|~O^}sUٴZ9.#9oeg0oO:2b/2v?wmM&J%{SOtkrq7B>d)sI"'0ArEzиo?jW^B1`@,~R@ 2,YN q/ 2y njEڠ5h+ r%;c?:_՚;qEul;->QnS1W@kG CXhl͊/<|8 QM>UoVOA^p"飷}W?%8łQ:تsnuop=)).V]<¿TeL陦X 4` -,Z7;fJrܣC6KGgmEC{$CP:]f \p¤R9wyg5#nq8Duv 1%~p2HM`|ۭxHSr_Ms$[rP}ePZ)z1A,S=ʸl%j5A?<}f?^&Ls6_炡{ۿp5?}}1M_ۘEaf;CѦihgas" ,PzoNBVF n>BVw`rx x(>LĨ*rL1PFXB'?;ޤe Gt֨΂W >8O*m`'D6fߓU YH O!EDz;t:} W>ܱ|3gZT9PP_}Ty԰},?3f2ptGoX-++I-Uհ-!pRU1UF:h|rj|Ir,*8~f)TD1H='l/JUwEVbA:RHQ ERHQ E~gfgذ!Uk,O)]vcT  ~>;F|I.r~,9D׻69$wN= #(PU{LUWFϗ_(s\譲|Ul:uަ3Nf  [ /أc5PZFtлfs+zQ:ɁtXi Z.H)ߊ>2F#XؤD J0 py*4)myj Y!%Y pc=Bp4H֨[/EfF{8aJiك#u) (@) ((@i [Bfյ!tFXHt G8H: TCBCMEwG D !>ҡ9mĶIls9^^QdichEG{$3C7Vn ˊU̴ʝmC2uC?m;et~h̆O;ljR,ɪ @wjIB/!d F#/*D9v N䖡(N:@/\IcЮDJCeV@?NsHQM$3!E"[ `LQ ERHQ Ew)d#VBI%uL zGd}8=e@zr :|*=0%#\R[*]俼͞n\Rzښk. _Vr[.n]rVE k[OZpuK[ҧQ0M7|r";1(iv/ 8:Q?8ĤSdb/b:g(,} L\O Xc e~6Yci>"xd uB4RS[gGڇ=*&z%S Ӻ/թǥ(@) (@, h`RԨAd6Ñ3EfIFTdD1+#IQH^ G\g&]dh[~a]Q74z۰[nq=nin떛tÀo{xw}MQ8 |ۮzיc~ػ2οfglp=&9Hf0%! ppEM 1A2 Zp=Cqt۽zؠ|K۷0/rF]>UpcTo+צ>_n(ͽ-oԖח 7};k_-zSz͚2;"F7dЅvxRrLkM[a,§)~ B Sj+IIJ EdPITׁ ˇjObR̈Yb( jakSHL5B_Npj!`hR z(Kʌzz œנxqTgD :/\mo B< BBB!&5\&.NvWmf@~`~g2iJ{Rk15ld]_bHl+)r()1;eZߨY7Ft[ya4܍qKv :1ye:]hYj1*Z~Tuj\c0e2VLe6V rT7MFcW͛u*`jP8T!5#(#,ӗeg33dez$eg2|Yp”Ǐ#,X&^%`-% 4 !*YPM O,`!i JGBr8z!]%|`TL˗9ҧ}S7b }J̏hv8QJo!k<<vsddDd^nHg ʠ `'RKeqR & /9(6}Vc!@EL9xL3Fm|ȥc3L53ZU}9.=lrU k }o3nsG3&'E zEu//FQ53%{&QB`!X(]N1T`z(!@`{P!?ADͯe.bkGB|=-Ӈѷ=;`I^<'f)lF8V(E"*E 囩1C dZB2C`wz#ЅOX{JC_³B7]osLCB;@M kaWrK BR hG% Rџ+lsI Z I~#d濢&|i~'AKыny"9EJ F Jad΄)r(-h/V% cBAj@2N)Nn`+ K#[QD'T_kƢ рys~]~ލM=07#Ā" g`:Hؕ҇&{q# ;vh"_>w\x*2CޣB#`H,NiO"8-8F'hbPĝQq U/^8zXo6ξmsCA˲CUE"52fT$CE \Tc^{)8Po:(->LJKE!2LDz9]CdPc$.A:,sx,{Cn{ŹWv 0oᤇe0QYO">Y|E# @id$U/g j9s"AK9Gyu)_ħ3C_b;D%R`D얧~9[J7!!wP-2pj޻umk 4lxS5OH=L ~?ĕ %V8iHuxuMUaA֊*!Hc /WYGTk!Q >˗Z.w7$~gň`hKmmm~~>PWWϿib&`^ 0H7ND&zxkWbLʝ;c|AlˇlVWWUP1=1o' !5*#%ZOX dB@L*iD ~u!@q! wN$b"*CE)܊0Ȉ@r8GTB=%Cܰ`0 @5 "$["Ua`~8 zzsQaaPX(͟VQP]W[Qߐ`o^Wk%=Ԕ6:<mvknt;9:ZZl5Z{C-9bokvy]-κFg[^l8kmu\_şn67y3}5Vܧmhr47:홾:s}{zsloq69jkviy`@@pZOS[ZCP ' m9 e`V0p6{&rC̠?+ D,xV}ƎՕe샐-6άĪѬꪠȆZx-Z_/Y_g6WRMWc<3X2HzA|5=5C8CI-]=M~0lMu'ERHQ Ev3xM&9 AuG1 yȏP}@yjDzTPi k%a&*$dȐ@6?B8zY$iܭ3M? ,zW‰08!,ZP9Lf<#$–`豵m~6kK9YdyN ݣdolu4z,͵rU5ݝnh379PlkNw*fop;[BI@h#4i|܅O$NZLIB΢q&L8ERHQ ERu("~ LAM(0 8x[L."_*6s/o@^#) "O\O"WUɌhI:oIh̀BcgH: נ3ැPD~ʒ'Qch"E&|;d(ah$:2$ѯ!^6X`|QLAbB:E!j]I<xg$T&Dk%?Ii!FTFk,Bj( :%^"ͺхmo46J]@) (@) n) ͆A.d3 ͣYR8@y & #QAH)(rrVT+Ȧl0xT$8\4ZV4?*fbM"l&`..HYTUH1 #Rh2@bDB ? &|,;0Mv.l#t`F!QikF:T۔bYr Xq[:;3oqQIiwt32PMSFZG4 9:5(9>%OwʃA%tkF)Ia(Nܦ?`w>`'U C$-Pt鬜kpbӊun!`H[ptyo[J^ zT) (@) (!QR"-nzledZ:gIhp*D%'Bw|b!uѹY[b H͐E?|b! LZ2Yycm*/>,mQ< +f5-/$.qYfŨwΙ a8'F?۫Jd3B<|04`E lR!-1CN6)S ip <I%|Ň'J¼cm?]u^kzFa[8/kuF4xPBP?ͺyٗ*1574TjZݔfCl|~ㄟ'0l]]p6d-[ BdUtzQI4-:It߁Qsgڂ(/@$I=:ERHQ ERdM8u)k5*H?oEۧMhO,۸b{6=3'2f^X6믛@7{(|C:747ǔ)S)_$+V<<ި}՗[ .Wa߱C?³/N "!njiǭ5B.Y8En;g΄%xusӥ6k;<7=}4[kٞJϘ݃7tCo8u46bs׽ IfB9.U d8"5R^r M*Wmoa->nw,@C(S8r]kEoh7lHa"=.CqX()qFڜE r4Q@.'r:bT->xn5b Q3fm0BHmWO u/A9-Z@.IQ ERHQ E=FbzQ69yO#-h:J5}nhxKiv_FTvםg5՜zRbŔO?EfU!++N)&W64ֻ.~/$k>x}lE>|˿“O1*1پZ?|fJK95ޫouz!zYL5҈ D %>)A-z=5pN=9`OWx~~MGiHcOw-}҉y_- еmʨVԶ~AYC'x %SR$}_a\Sn ŽYf1,6ۄ&t5y-P[m^bvTB"9RV>UBQl"]:ˡT E$r%Ʉ.Kz ;RIz.3b7/LBp~ "q&f%8n9 fBzL) (@) a) 3,IVbG*_VܷLBz9J>fWįN_9y}9HF$He[А9Mðt٢#칕-[޻ߠYIM2]8Чw*@< 5x&~=9ÑY5 W4U ,!?n v&nd{_~CYiL:WzyK*~F]0 "BXТNnI[jM C2"-~k' D5=ww|[W:gsRyVk+o> [@J*~N(<-C!L'!fH4SDa{ \:hZ8Z2|t\%W1_*fV=iJRHQ ERHQH((8YuLAmri6ڴnSC!zTRAĹfji ItSԪ-}z7Z([6UoXp4b2C>)f?t$ =>-h3zor QMrvZ&)Nѐi[B`X3ihc@螲 z})O{`c&*Hz3$UcBph9fkjzB^yxaN:տ`Ak9ISsg+Wվ~^Gxi}gUo߶Ή 'Ao6_6nOe(>%y5C1/oiϘXڢ{V_ƫק3=^IC>Z$XY'97(kTJ&{=4F YȘ@~>I@-a4va"^b>`)EUF/ChķMYs UrB  _kcY#4-C%$LϢ6 yfyQКxHI@}BUoOqbƈH-|nWfٌe) (@) (F\v`N?e uCe{eʇ P4Tg$EnhOp:+ľl0saNp$v☙g;]ifޮۗ:z::iv޼y30P 6@Sljr~=jJO$2ŅK|h4R~DܦiATZWhu3hBs%%-omSTM+(;.kN ET/ ;z<" ? Ӎ딉qԕwЫRQNT$ۡڸ1=pAumb5TCj+ldR[1%5 I%N@NʡfeV>[X/)a)RgW*Қ,^{pٕImE2 7QxDaXU 0Z "{:.P3jLI:A%nL;rB`Ԃan/BjJD=DEhMA5qJ޻AzBR\2ӑN+N[Eu`]ҿDF23rUHF&O: #Iޒw\MƑ-08>ԦW;[ur;N>>xBDsIu| ݺ\ةu_N 7L"ʼn4CEwSWVv贿E=DV?l_lͣt!ϜYZɔDwB?_~Bo<hctgR܊ }^ﭷ43X%`s1D3!!{=k2B{ 8Ѳ,Ov.[M"vGllC'll̷LlTMl4Mmes6enOgdU8s&N7gl zwܱ~kA=u_|en2E14m_pAgrۉrρC{ 6=i鳆d,f]m>ni wOptwٻk_V3)$lW`(c͢Rl"*YcX=~ L'x!BVOu aΛsKO%lygA-Njmf󂠜ye{V[qdn<$"TmW493[Yn\^WczݞN'Hc0 4Қ:LA! nm2q 7z7=\%Wty' gfLbAi=\^Y&, GdDdPn^⚥W7 *3&j5[0yk%{SڶnQ[lS]K5G.ǔ/ۜiFD*!Lf Ɔ g'#/:fDW)pɣ"zf ifS[gNeYE\h\3¼:?K-Z /nZGx(=Tu&;yr̙lXSe emÝ aAX0uR1{=RlRLrɹT| N;kA̓ lH" O p}mmXv[5d EG\8K/#Fo@TCFbHD1 HHsْ'c^й+PJHUl}/zyq3s蒠6;L Ӛ67qd₹s -&z/ۤ O+șG7z&At-}VA[ߢ$\<~b^e(q9m'xBtcd5Bijc1B8QK"$7?7>362a8?Imև4~,%J Ei7El&nfwlY܀1[Ϻv# [?k6[,L<_| RUdct-eEhva[o&DRXئ%ƉWn= 0,--wY6y e z[vh[SW쯲\ui&U3H9e?2|}Szc`oDoi81#^\E78T>8zui{7#i=p(u5 `b{kT Fh.|/,TKiE|n]t"2!쎥ŝ%rʒ`RqQ9/vJ.K=/zSK2p j_o o_CguO.{`Ӑ]\X^ADLPKYfw}a%:ؐ w=+RJC ZzAũxDx2l@W 0.T07|FjXn@I9&58LXAs/3v*qt?d.<$Zy G0njֆ4 LTZZ/lް1r,\J+Qq "%))EO ųTitޔe@4y mR3#*P+ԗ#S&P"xtL}d*:EsPY /P+N- twyྃFU^2@Ot?E4du5Pώ(n<,.jF]l! $HrRM SpBp2E[qĜ*]sKqƒecZiq1x"&6=q9* 1Dۏ_tA[H sɥ#YV/" P p",4V\tg{t$R sjRT>% ) !籲a=X(oKE1)!4Z@;+ٰ(OJDe6fK]0摧,*,+Ob,ͅ*V VEhx;\0).AǓRcK*_E)Ȩm3l5l*/89bϺa;!x3Pa ZW%Q) jId'w\gU-=}]զyWe=wj8xQ]WV%*_sL`]לa}G񊎭ky'T.=5{[@ϥ\|J't9K ]B]-jGoƋЊfXUŞF4vp#-yͼ)Q/ A96C(E&*__g":2XV>Y95G 6ֈD4];I|4s ;p([`L jL4H1a(Y tΒ07zÏGtJ%Mx< ZE5yRc$b]6רtawtzgnjIֵ2=Ha=I~{:u:_EXe='LNDWT(l=3|X8bf@vʝgS^oXKkd؀Q?va֯?|Ns}Ao :P,|_mCz$meR5o = 0#YrS0H^鴶ϗ}=ro~]wCLO^6o-x:'Cu0p%P^53y?ETWHf*~/аs@E̠  48Y6c8Y4)~v)wKu`n/8$5+\9iP7| K>l1m }'E|5X3%Z!Ut&;Wja^ ijiG[HJ$+?ݿ~ͭ>ݗN' E8ٷ;mec"#6o ST8vx@ 3ŠM2>TP;]߾7tm]})%tXȝwv%Zڈyƫ uҹNzAC0p\bF͢hYSxEQ5^Xw8]dWGF'#݃,i!F(\ZQ;k" ɷXksbh 4`M2{`t/z'x:{!r~LahKZnj@KBB\Tq^ra%&ثn%U'XeѰTmHY!Qb$4Ē j% U+1ND:?v=o=6Rw]$0S璤+m6S%m[9`Z8R2\DX&+Zn9{Qvʌ 8FDPrDAm 4Ú"! aZAr42@|V+;SÚDViDv&+M3\,h޻b ,kƴnߥ^GLNfP_渰eZ@I$xb͐V+,$"=3O@2@"@(ޔ#_y(n R簻ٕxFe& 90ZqcH!&A d&S< D 8ɦ@~9E(kP;SI"Pi:N-@f8<J0 (Hu'IјhP񁉌j*k1*_Vl':<_^|,,}$hn j/3U/ux_we >ӵ.+y{,r煒?{k`Evp<[xjߋUJ_,|  .n/)xOUezQ%ِ4=Dl.q.Z\&2t0LަbA r,+Ox/ Ejkfwc Q) 1WGZ0x;y6\#bM~{M(&6#r$e8!\Ut: 8sHeS.yIúL%dBE\áuИ|ե:u I(+;4S }s>E:|WI{bi䇺V|숥JG$xU՝+x !"P84: XӢL{VBȡfl͢]‘PYquhXU>x鄯~˺U|ueWU}WXYZbիIG5V.YQ$-FP6IV̓yO[½"沼g#C(tȳQm?5wA1_==G҂Yl-6fE3~x"xo޿!"#^>H`j \" BA/!u3Zh+U-d^[C2 B"%@mi+™`%|#nJMw矢/w(B Q_ k_jٵT j+@JP $qVlvQ0\ -_0c>p?`6m>q6H2)=NᲠ|ٝL"?yC2R-Ґ^S:3ZC !iAL;Y=̪]2<^fz>%SI`/#d'8tڳswq}20T0HnjA@it44{^p${hg LW*e ÿԏE7  seKsE\bycpzFf7?]"X.^>0#V>=Q:7Noώ-x&sbsىyϴ&H`zK4fsbyͅZ ohltNo-K:Ԋl D+$8\`jWBTђ9C%HŀAcdp69bJaX*Xt']04d"ݎ԰njk[5*nɿx}M+`Da.=:6"p )QNA0ӥg\5.8}N|^P(yܵS %"\EGZÜ`ݩ!Ş9`ڜ%t|yrXfNVO2Q#}ܑ.[P0e KCuri5Xhz&yIGHjۇch2LmlZ}[w[f4'WNs9*Y\4͙bZsӷ*YU'4dqWSLZoVILZ{)ڴ0o[DSh )'z U,MK)sVPL3d2xM > Wg^Y@ (6M'JQ$kElLdgBï!%Ɛ_d 4 s2hR 6eBYQ9a_Лc‚,+6óbAD,bucj"k|if9@&6,{-͵P$Ens&[Am\14܄YzGx6mNG.ÉZחI \. c%#! m.HgghVlb5m^Ԙ!N;x.IlIUwYKhrZD ЂK wKrL!՜I(%5Ӆ=t'{fѽ=bRQZ_=ss _@ ŤD"I)IR4a{~͵'ЂtKZ,(kc&pnn$!ւ OxIǨuFF|՗-Ib%".Z5H&Z(?O%R< ڰG~hOͤX"EP>U Ñ&e1/5?Ycm\ $O;V#,d#׼o,,bbC6vK}/6mbMP\Ŕ d*has%:&WNObPΠMd | rZoeu`gB- 5 s`i@Bi2 q ğ#l(Ok<4}JB_x`BwVqV, ߬b)r̤6ϻH.i1EVr4BC6aԌ۰xP/3+sݎf&:F39Xnl`XE"V&D@o 'cRPLZ=~`T`AY򶠹0,.E񧙃+LM(kld׆CVqɕr1!8 0 9H54*i,,YDହߘL$1]O;FbtDG;t:n 1%w=(6 fO4HO pY'ޑ-* i,[A)EHMg44h$ 3_#0.E`+hrOLmxQZFW#JEn=ǮB)I WG**K6LJ8q4Gzy2ETJh;*VwF(Hmď6RDX; $r L88)+mm+zs:f ;fpŎ"&MGySckV[R?Y3yw<>xVmHϻ4`HaqBA .@I/S eĵ)38$TeHdަZNKjG*u! !{f @:-<׊u_y#c~0*&GMjd!!^xH>$a~AKZH0$\4 ba$lF,56R}b#&y_<DM9)m3@E!ɑ3@$<&m 4]tM'ʼnnpfѦ4j#x;R e]"1x¥ /HCA0o1b<d%9˜4̗dp6!]OvўOC8dWErGEi,0ZFG7X`H't$Dh+NR3QH85̠ ŲӜ HaW+xu` w$5]ԧY1 1[#f[zl(vΕH 2 +ެNT@G<í´&fiX/Ho*-Ěyq T4<aX*!b'A"F)8êx#un.0h…CC6Is=8*Q怍b@Y!^ϠL0&ED%m{L7-L !/2Kؒq7\KJNBtmf2 ڼ${`NО͙Z0isELW*\HPӐ4^GK<sߊ=,>?%P @h`eثP-qV'Xw'l-u+J#c&NԓNvZEk ͡M$PMeh.C 'hzӟdQ9F$ubbڀ}Ymπx*:˽zMBa[dAD`*]#v9ߪa{d@8؎wP;H>]6jƋ0JB`5k(k2fXLMzzcx98f+tЖ[veJ bteΞ^ȓqƳQx [o:#ĊyzE箞|ʩ7}滕ҵү~VC-΋Xfw9sӈe?(TgxByNv8xռ3BggpW.ɤoaS݁5g]wmA}^"t׬^>_vNj/rsׯAՠ9N: k b(@j1 ZZpaŅ'5 ʷ%b|Ʉw lW@gz˱g*?fptܻ6d<ۡL8M$K`Cpqkcݜ5섪nPt%>u88V_ƞ}y,’@ڛbERH^9+ݲ>"}-- xkL\)GFG>n^J32kO> `h4/F>hZ=>fOr6,AxlNWఓN¡ؽ1iiզ{l|YpV߳pe}K"a':-Qrq bL3)<",}1"u1׺"'Ѧ!8N;\rt?NB5. 8䔖t*M2źT:i.t7*yFJsIAJ78Һt$ S-w6̠π ȸev`Tz!쇅\nH u? 4h$, zۼQګ2Lt]J_snYKY#T Np {BaH]r͉g-UH41PeJɤHAN%HZ ro$-sa}nWi>,crQlT4\Ww_Cyn^ziY\zyi]X2QǏ ΂3C$aSN܋fX fvG{ z|ppRاIWڭ[-?hgQf誉1/-`hLB{ܒoͯDV%wQҕtAU\rSx= nS=( <$|*t۫q)0̍w^ٳ&DqaX:Aйd)w2Z";s֮yo첅TdElNo\t; .zj:J>rZpS0epcMaxJ)R4qy8nuWW^]*iPPD>v];yj?n6v M\1P['oV:V4t4z/0)Sg`CF*PO$RQn\P!ahzoSF"m$tYqB&nDRFGb70V5b #7P24%d˜HA|3e#0 Q#0ZTMaXya\5BxLX1BHW<~1,O鈦ÆMŅ1q xxNbx8`%3VbM5pI3̑@b<"] PQЁ_S'6mq`k̂^s.XKNs;0Zx5Hw1䍷ňo>yυ_q7'@~StчEZg?Nh3151pcN9%A H JקOFՍɓ~ ˤ8-t=K%髩KDWOï/'1ZBqڊ `-p%eOQ.KϿΌ4P)}~QyH!ikӦNBi G%AaVVZ^y[V-$d6ִқ' ?NU Br0”Q4$J?[{"y'c9N$Xt=`InI*`t$'r Ly0MJo2$ʴCc ;H "$}104S` 4UIIgڶ@\Ø.;sWO{lT,uFy=6":@/)#U b`njc~YpL= * oXiQl}wǞlgþj+Y+KA~dּbG'V葩%aD~Lc;U a5jW2'iUC\ 6 <||d/N|Dž|5#AHw˖`0t614C"(Uسh@alta#|$ mdʟN:1mT] Vȧy˗WSΤy'Ƌ?m =|>t1xx˨]8̧1Ii3& NjY9k:ջv.nbmhcպIxZ6 }yNuNvk*O(uqI|ј5Ji1b A-uJ$N+HL*`i$JI(L.4V%cǘ*S%?&eT1EJM)_?5F-Kq;w@R'4".r iv11HSA`ՇC#?!\!ĒGf=[arȑ} |G50C1&G`1{qfs% t-Ii-4C}9KB&/>#  @;QxGt7Xo=vݱ?%#E_QG|p[T-\Pe骚p&܂D{aZ;~*B"n'u!K7!8} әH.9[C2rg ;7- Ens Jp"9Pg_z{_ +x|wz퍗^R6̭9W2] n<+g3ܥ[oz۵7tv8+c]Q^2wʼnp4@.mԂ+]ҁt-n^Q:2:( P2ϸEK'tYጉ@2 \zkSIʶ$~2J/%WޡB?{<݆)]8̅.c9hC:$҈cq J|冒|ŧO>~x!H =%ݢxϽ [:I&ʖ/M}_>cTX]7v>Ǔ?y.9F@(BnyUX?AXJinZumYU.W*/ ]Vƒ:r :^[ZtiU]ʯXrsQ eo.|miU..pe xiYue"SieR.7NlӖOg*Gl x:LdOS!*>BqYvf)ƀ#/qW 4VҝDSҴǣ'DYi( M74ƁtT~NO!Хzj1.7#`CPk!y2@aE6 cPECw(s)r"E^`Dt,t[Utac}# ؝$y"66'[h!OԮi9OإyuNn+yj_/rE‰82$ԂuH:R×3[ z- ę]+VXWP8]XLٍ4#a](IwϹjL.?8Ӧ!F㪪0!L4 UT V6 'd3;CZP6?h!٘HgU9w{#=wz.Է0_jٖf?EZ=| EzA P NV~Ȝ`J#M0 vU(x0ȦsSqGL, '[]бcQi)EʤIS&Ҵi9uAiFUq%JpS@ަ5q[zqcWV/,ZQ{$:qr-h! tCޓ.Iɶ^zvЃ>EWRi7t] /..E nhz3~:r-G`UݱG @~Beˣ2'MR)QPM`*E7hQ 83hsಔ\ ڥ];:vqoMnڢxk,$R~z愁ݒIzYxqAYIQYHF)_!̙/ c{﹛PK6jw^1yĦc+'qbnn]PlRCHB醉vuq.s3KWߎ!4(I K? BZ͠E?رߢ&$3klMN~ ۊ!t'i!ԤЀcٖ<ÉrLX;hȷGqhCo1M1yZ*kfªP˜ׄ³^Q4f3"uP[$'mqNº,n80*+6.o<~3 yKkcEB>QGUśܶTpr ʇK\~$;ܗ6op !(8CZd("ZeR7WY)LĬ9G_!6 } vVuy鎪kT{vOY3~1t,aJSZZ\18=qg{+uk1x)>J`,+F04//YvUZꚿ-]h͚-[肥.YڵO]؊{[o[5kYի^W-[ʇ,kMݽܵeYU54|Md*, )H@Lt%pQBC^ERߢ.Mq߃rI;Xi| YUə.$۩{KKIN[{7xQ?](H'YTx,buKe3RI-C2Y6][d / eNxYsfmP+M<ʸE tG 4 [rF-Km.Pq0~[oELtw"``7}QI5ePL1&.:,l#`(˷: P0nnЛ7I 9lnw Gx>l /,;RqHKM)9?8C|y|f. GǍo>XQߌtJ՚㑂 51믽2j'vU(s@r*?M)) TUԬ[Hiɫ.DYgK]7^u;6{Pp .XX|KxPN~;^-(cnMϟx(mzH|S9pʕՕFwiRx1:ulaCܥ%G9^h_u;Ԍ゚sebt(*.33J YK#='eУk02bꡎ~{EM-'W6"t*@.З٢a޴^]9A0W4h留SayjvkߊⒺ1iG}0un{7 uOC-Ynv/( ԗUWt؁POG#ly@qlplT)[h;Ȋ|⩳fmt$TMBZ. MNח,YR^RHk P֎eglݛYyr݊P x%ןpp Z.A~iEH@oƹSgvpN0sJsVW{a5`g-]RRVdfeK!g12g:73CZ|澵2T[`zsW2uO鵙ߺf(+NzT7%RH 52Fw@U\꾖Ug]R[8[#΃~a$,)'^)Q\c PI9lC(Y eYڥInR+=pd7Ï iNw]SS&=[s!۩C| 5V׬,D>_yg)[b_[6 FQCtP.-gS2Lť3bK}1BtCmbd,S'Iz2w;c[YA n A@e]D.4i > i%S 0摼n7r@PQbeP!Ʌӯ\l~Y sCYkzd4o3٪vDU[ 65alq6-LcaOdQ;5rNj6F z$jӶXro*5F6<v ҞӎS:2˱Sv1Iǿ?{U=OU3^~TFZG> lyڈ}ś)O'ogR}N@I+FSH#P=`0pÁ K1c_V&D[G< nMlnK|/|T-z\.o^q`7`P:]vYpY]٫ߠ|Q^tҹ3G+$^}q?iLF[{phAA?ruXZt]u)j8nΛ:/z&ONSO{g5zh Eߌ"!W= '-F  ?{"gbss!w~;h$[|ۯ;l]{vߢFoa$ʻP2ௗ\L`lu?,|ͤY­s.?PN $YIfҤ.o>ow?~i+?ʪ( O~8#p =WDĿڄ$jqqөAxբ= ]dO<`ƚ t>sι554~]G|7vqcwnՒ']֌z|TPKmCig;mpqΌi䙆:.'MԸ(ReёH?ZQolL#$ uX%Nu!Ǘ{P$H:PJq}uesHXt:3*5Ȇ+C1\MqH@懦X8R-C7v-*y a6lٱ Y  EU6D@sp!OCׇL /6NfĖq@KP¶͖Q]ڞ]=0uDž E PV|M tVK.B@A%t} X-)Bqcqrb ~vI)O:v\cXu Ouȝ# sE> OjGXۮ=p#cҕBOw;x+ojB 1b Q&Pi4MfiV򧤀lU0\Dl܏2t9!CX:D)HiCB$C!Q6ԥ1T{[_եcH|Ɍsds<4}@:dɅ0A>RRMCL;y;RCkmKR)ǃ8 \r;Wog`YfF+lgxOmXN]7K?@6ʿ+L˯}ip`:FFb/(qv١y?OkT|$z}%xolKEW_+bϙs@n|ܿS5;Tt/t-/,ݩDW|^{|hkd9>=FCkkv/^W^s￟7cjta w.@Ze+p3<-CÇ-%rr\_d>muGn U/H;C%nPc -L>]˺oE6\v"TKS9a" ֍u8(xpf%ѳr|D"UU] ؑinE T -oӒkHwxHa_ڳTѹSY0ؽc?;sOU1GP"؝VUvr7սu=JV,ߡtɊ øAÆc{wNo _̥$9?fƱ'I~Tڡ@ @/+^@Hpf,C=hK~H4r+))>eƜ#vkPYH}̎%:~3W67k%Ud856{_\xɵ^@wCrkS-+›C)'K3-zwڱh4!Tz$3ȃ#F2^ %aG bOS1sP[%[ KSƭ!П%LI ?q䃩>]IZ_l(ws /*d.*tW)]9/Td'6v -eI(IPC{ap} ]e ?za.Cm *C3u+-Dʈ5dEr6PoD"9g{ -c& Յ[uh؞WV ,xDOAPG WW"R& b[f'y莒>o3^.({fI%pzF ΅-'؍EmѨ8z[@]U8`(Z8up rJflzԎV'G"U {;Iv"m\X+POE3dm +9(>uv|v1lH?'B8uS43d$렙 *U_d(Ye<D:*ev\! XX)|u'~4W00&.)%St'DGn [?P`)7s 0tPx14y0ea{7{S}=)6W[)* x,&NF%7gwqP<(j_R[!s|Tδ+Ү㞻qʧ_4- adQjngCG2-ZrKz\#-/uPUe Jig_yJ^c.5 '_Su~Κ:aB?xuTEQg['vBdU)̶1P4 y{C 5AUAx.a,+EE(yo{E?yW^xpxtKxa}FwY8.Z!O$uA'qSٹˠ>d{1xݜvw='H]¿ֱ.f!qlys'[ٓjuPylpt/@i%][jJ$Zjr:݈)k3J6W0sl5Kw en^>btУ/P+ ڭa"$'һ B6њ0~;k|P-2e6ꨪ$u5c " y*h-h֟5ic[/ *K,VdOu(BVnKAz"ӻ D2-6xDaaJ [4f&$l2lmPq$oQtjf-T'-*)gӏnhuYKL;'.Yyq ò50f~XT*&cV3$vy‘9g%nDYxzȡ-+s0YQaNX};KqܱG#4ύz&iANK>wܻyP*f_|7_{*0;jy;fła/ڹ_{pPCцG߾]G ]$SG/EB 0X A8 YPVFh-*` AFYEEk$rRyE@v**xSg/ɢ݈Ԕ;_bE gM1̍'|K2 ]16)~vT)Pݏ=c]&RJ<#Gڷُfe$!wҥۢshxZC!xP%`($ AB#lZEW,&9xwFRS7=qrPXUw ~F3<;o^z.g"' HvTsB5]udqZܙI;^*d;RQO ]M&jtRjyR Ǻdnx9<8Pi[ oU+֬c0|>߈' sJwq])& w딪.O?0KEgvק{e|L.ȇ ~x"-13Q؂P:pa@b#B*V$;nG|Mb/}5gKs㪹+PKUc/=^|iKc $Cѣ=v &/L =F,ϝ;,_%_v=wsjz-\|^ӪV;ko'}0"^oH9'DE21;ٮٍ+tט9;y9pBw験.W0ƄJciW.+ܵW@6m6p:=Nk/_vHksM! JM8%ܮyyT8a&!>n[)iuM߿{injiLٴt9i@hcYtr{\\pܧK+$cG.U*Ҿ!\(-5 K2 !>UwЭw]*FW^0핝ȿй;9dєG~~BQ3:<8j~a`=/v6  "g{~g/]6#0q,5kVw8h7aGD/m5pq-S;F{ι{U S ^nHūe7{졃?XJo~GAUX3Ǣ pq9t<~$?g{tCgTJMB'`1His:m[kzv~= B HpEv 5ѽ~@(QXK3dNΦWVA@ 06M{?*sD#XB3sμVƒ{Mjkwu)'mxڭOV< uKRP%L;eÑhoiGDᇞk. aN=x?@nJS*v/[S'tqE]Sعl;e" &,YwaV͐1iFp+C:`,κ1c&%+K. ` r#y+K/ %%99 {4|}cn/w'j;V߳z#R~bfwn_}.\zee=Uyq5 *Z<ܪG"|]cbsBf",ӺD慥wNK*6 TH;u CyhG4KEV-qV:˓~tg~:t~rcqvjJ1( E6#0\#BX$O:;0F@˯J% 5~-`Q|=%q{PͫmJ 0H)ԵR-˝-'nP^ވ}"m *4dAKֽv,u an kfkB|IG}WpHč;-? 'QC'@ѨT<%p1B}}ehJykeSK 5tjGݹ۴ɳ6mh%̏?~3 1ݴnD].@$cՊ5Ͽn 2I}QX:Ee1'fk(jwV7ߡɹ B4-t18b{ |<ϫҷ֮}(2TK\D7֞Ю_}>5LVQDgLr%0$7iJL - ._@a\w r*D{f#3~ܷw•6lµg޾5 :QcJddn^ih7RoZ"qigզSՈ69KzuxC4ä4ׯڽC&W-/֬٥JD;hj- хoǟpYѴA֔3ŘѶdS#S7TvH%uj5C[?~7Ez. ttL֯CŨA=}D~\݂QUTux4jնe~O~S-1s̾@馆U g-khVpv[jf=ݧge/yH\PleJ@KJV-K'"B3+y0kJک`uȐg18l}t> e2 ȶ55:wbl.:|H W3/&OBqBLnj1ٷ}7n.}B'w(V2eFKr^Jզˮ>Q'&I+v'-'tI| &"7uc{ }Kk/KY^>:);Xl?RI,0fM+;ATm}p54M)9eAhH}x$OhE ӬXJ;M?:͆3xY]:-]{U.X0'NoMr˯!}<飏?8")ӯ"tv'"Rٕn@%DA>= :$[G:O5@ItƐLy9A'P ^2W?N:30)L}wIR-"d sb1}t0HY?3N_]}݇3l_}.^#+ǜEjYN Zlv󩮶}급cR*Omc4:ǩ/?Vé*[nn(@4l2_?ۜ%/.f , h'.Iqsk%7&J ?E;>OJ=[gkOΐ 7S)+&;v (M*=Pnڴd\ֽzF?`ƱcW1p1phr{rLI:YΖFmeQΒ@ .I?2|:x1d1h;thfG~!'I{cD4%qjɈAD#dI?|%`–X>H Vfɔkj,9hi3&2E4)>_|j7iWI&K 5YINYcVI6ELRh.9 $(% kpF&AS:bl4N<rRrrø:r"T]Tp+dZC~{so* ȕ#Ne_n$Z&4l1bO C{9r? N!e:M1b] NHGU0J}&<- 1d W{GuiNeҏ&ǮX"pC{_]U!܊.83MFc^zxخ"aBhFcA1GetJdV]!ښUL$x fy[!~/'XT^`$5xbTDas# S6S4dch+?$.7肸0PF{!͚>sȈaΘ>rp*׍GZH$;=(#ne' >4&DF"Qi# ʸ܈RSv+Ztr-50ubQCnY49S 7")JE 12 i a ]nuiVqp+$bY{1gЯ?BLL&⼨N6z(NF&2PRs)5 G =d!F0 -V{/߫8ɐ(vNUI(/ĵz 6j"t*=EխDh/5q&! P RSSIU`4#RI Ew(4J0N6by({?s Jjr7VA?Gktp8Ӥ ۨ B!_ZwcUN@EtV@Hbq-b 7HMF^g۳golmO:]2+l[ gxtg<\tY1~OC`e:eZZ۽;si\kr<h(Q6 bA "mbݲ3Ҝpm-YN:_D&tUPejdmT21 |Hb>/% z2A\u6 vRi*1mQY:+v!L[m'Wt*2 zV>{R6hߋr"E YBE\4@T4p]9E@2tK\I*.\ CS0gCRCYB17=Gŋ3:KC XOɡy#ʱydɩ"S%-1.4H?dQfgwĴiV>?2PB "(Gls EC.:LJ4k:BA%GDCjI xYf҅n9-2E6Pa tyl(a/|KȞƝhdYِ֏z0Xm ~j AңP4æ g -Ndƃ$Y,AخݾOČfeoq\>B\sL3)$BB4kq`) qQHn-GGg%A"dDic(E8IM!jI%aHT ]= :446IΘ ~2NM<`cPUWRT?[~Szg}mՋb5 @^J9!ݪ~-RrP6jЃtvP1UKu#2ϕ1#cTP0N=&7*@eR3YԉC,v@*׽~tBjq7gi\ThD+Ф>KX❥peJokTPDEwЀ`hh ><NXwg]*gD8ލ|T~{^E'4G+U՜'*eҴRtBq73YSGliH7% )#bmnf`"- r`.5.ԼRKqF^KSI&CN'3(p%*iP``&@Zxdm\M 09̅zT&կ̨;=?c<*EbR]/rW_߷U'ku*‚6CNp.B.xw֣҇#$DFo#ec@*fKӕ ݥ8`he9.w+E W%\0?~tg \xcچٟ!ٯq.ZƑ4}a bOW!1@6)T:8t4bK˲ O fL`–B!TAD*ܐ%0jJM M us{RGN6Y NydaHhQ A`/a} qTn(DS@G6RkL<6@,,J#hl4#ڢKmk\AMWd,'KBy@SC?Ӣ)\bW[ד!憤mbiip6aKvL.RCkF< *AbکF(QI E ӃF|i3E*G|+.Ta[Rq9)\ONz"ΨE7zP{V4hi3SY(Xv(ԃÅkgo QV?K h_@z05Ot $v}?CI:ED`džCpމ@vŅ`8Ot*6vy X?&_#O77%1ʪ8%NN W9·qKDNK:۫S7L_wNݷ&~ږ3DYxڦ gh>gvIk)ˣ4?'ϩ`E9 ]uu.]P|†+CY>|+B-B 4Jx`ȌKUa㒛]`shD 5LG(8w?v|TŒDLVn)JFԢX|ӄIcptv*D{qNwHwe^@he&*X 7bRbxD\X)UX`/UA ;(B0Ta5$^"!K~*2M2 ㉆ "WR6bU}zz[{]x/|qc{E9%6)<' ~뽕K[覗_:MY31>,!lAq4Yq_&I9\w}"kn6cIk}w}J3a+X{,8a2Zc vG A $tKDHy٬eh1R1P8CY@4liH$ -B6SZ6{rllH2B@+Cx{Seyn$@C)WxEa}%n+Bc;ц ZEGY0!rPhn yA_"~pSME~ BaNyp}jd T5#l@`/ 6K;Gb9pjQԖVi+ mGamUqmQ(q8hxz$B6r[zgXh8:M. Xqpt .o@Tk67AFPt5pS׮EDŅ]WUː7&TPy|]pb@DcVCeja8BS fUhs!V!')%\v+jx2k@d5Łs*jr{グ,NEƖ8dfpDM:> `-KPLJ:1nx~wa^Es]]:u:DbHW5>CpgQ.7~L*F|v4Met]P{NDC/UǜfKM*l'퉨^N]ē=9w=㨁vor˘A\7kqwkv㵃nw~\=Fsk{uo3\ssuo} ne^=ۇ\soz~W >(*F +4Q+v.? QoY :5{㰥2(WXxJ5 *U̚ 5+3t1'!.T2Nv-/erOզF[9'gO "*?aZ5>7U5@ݭJI\ ю_ \(%ta7.>s73zΣCKy<0tnyb-Qsrt/un-!AM MD!8UJՆ1dxA3XNr咅`e!@Vvظlxõ0  %퐓q˱;/u-vr ;xM^LX6`g  P.( niO5STf"Fyt  .Z1`SHuf+:04 _= ={ФQTԒ3uh|) H{'"o)!7u 3M ")ͦEibMG:!JC@ SSh䀣OWJ|FJ<ͦ|E8R ?wJ%?!f \1.юN}?xb:@(4|d2f_9L-x+/2V<+ cW?NO4ʁYHM wc-=iWm4(uoy4T'+/+"Ӥ G㈟x4D@p * (?WMrH_C W UrlA$=ܤ$ErYut#jB r\oR!<2" \Z zd3MT~Z%!!2ܑ_߁H'&-RT2\2qm׷Wtz[kz=^]u=^Eݞ//ʞ>-~ki{{As w~xcUv__^AsVⴇ:B RqHBct a/fM%c"Ds ʾTAFؚhݑ$r &Ю)6G% T :x^5@s[{,;pi I$A('ZCeL'z|6? ߆r l ˢ I-h6zP|_}2 cKIU44p5},AD?R5p (p,[$,mP(8(ǩ6Ik߁#]b<%9_:3~!Xd>qBcCE05EN:0>o{#t^qӭ<)veӧN.u7.G2E}H'!'%D<ٻݓNLp 1zӋ]<'-#u/6y3"amِӎ>a)3&삦, LfmF̲- ʫU `+@#x<= ?S)HG<;=kTs#gF%fZYK?ϭM<ƅ=Z*0%͚ʆ b3^ˢAp`@`nGPމD"Gis?aԄP0z/hR"ޗy6EР5,?.q[PS&A):=f``SP*L24SB"EY+D:FQZ2)0)jqMN- mOO-K- 9g2K9Mk^*([KDJy%+bskS[)g;oԶ }ebLp'N nZ&iU,8,-",zA2loֽW|?flD %+:bE*?m/@+e84' .3z7Ქ-\û ~M!CfKqL-E3RK!v*#t& 'Ty1 a Sv*I0*", Rd%pDwL!;Rqd9e BMv/[>oq7vIIH>YmIKg.0ew/?~S۵х+H#ߙ!3s'I @Yf;orZyc ꆻ`s;VS-ފ3Op8O 48X7{{rL 1y*X"iZIV]"/[: ,~ mUa`nꡋj-)A??4IaaJ,ExiR9G}[Le ,Wu`>xuWd(Ea:~^أc=USr3Wriѕi-gWKٍd9#("i'ИE Dc D84*Nk]ޚϠYNR^})6cEYؔT9)j.-'b'9kT܊g3hb7h  АDdr8 Jٌ028NCj 4*$ I65@H@>igaK1BɺeX8 A]hG {h+wJNEZ߳Pd xC GzKTA=VR S"=tBuW =4WؖVz J@< nȿI)#C5ͅD5[Vt=*٭z3jе='.e }"4͙S͟qX@|@ ׄ3IJ<DdK};]yWT^YYpMB#_|eg{<]{ N 93e vES*ά]k>pNCj ).Sf&Qw^Bg'QR*ņV~\P/l=eQ '"1i? Y $hU@YXSJ)/>UPbV,LlHk#IM ql+f M:^<Kd$m~f X}&0-J\P}0qHDޥ>w^pVn; +# j_hKT@O@FS*E:h4R_OShr[QbTw 3}/r` Dje+%ןx.* R)39ߛ|q:Z\vd޺l81?{ݴLe06XK.ȝPAgF9eҖH|"?,>x\:^Qyi'lS6iQ|}?%Hf)g{d]J5ؔk~ŗ{+[ʷmJb¡\m7rssYE9ǖ\){zRet_|76xM}n|B+gxzQߵOUhTE lꎶW[}䨇XpݣJ3ˑvqn5؃8^& hBK/ζBM+b~SbC|P{L AZ_sHLQĺx~,Dx/~}eQ!SeqPjLmW_,~CvcAS J= A+8H,S$e x(Qq~9&ͭFgqg?zBuʄ`Z>­VQ=ɒmvZB{oiL ۈטH0D-XSB%St~_%E^kƅ9,^8Pl^aTy6Sr,o;+;Mɦ iĬ LR,@Rhν)iYMni'!T¡0b`QOxfV.@4]V,C^RR=Oy0)TZrhf>5[X^m❚ i/)|S2\e~ 珧?8[_5U\Wό1UITC I3hF1QQD: yABF8P3DJh[̜%o=[G #E%3H5Xu\uN sAA5f>-OECqFoa"5ݵݻԥ|}U{K+{to1]ܥ͕UvzC }mϪK;^ܩ/]Z}eWtuinxmWUwWө;,LVuC1AHnO$LIKO-HMB") P38q#\kDX0ڶT+!Ic /эcIh)N=9kOZ"w)ۑְM$|*A/ _hRѲ>0!8;KS;Vޟg+nO JC҄Znu_^S^]Gz2d˙j+P˴!aI ""^ 9i%説gPY _sf jJw^;OjZcO?0XBo咃Z 8Zaŷ&Y V951w3$kĨ}?ҺڗV濯uߚP˘JnՔhfPk7M!ŒͩLΎuyֺ͌dɄ)("\0`nb[Y=JKָةL%1rL{D̫kR64"f\r@AW֪ϛ7?In !.hQfUۇF'ȗ[|p{[w. TkH /wq[f]rL;vVЕحkaՅ"bPmI S|<:d>w56"'3}䋼( 0u=apNL꣏64ba8MMέ( ڃKhV Mvg,&J2-*SIJW~ nq`''PtҰ ERNQH KEKFX2M* 8 \R'5Rve_Lv5SzWj (=Kg?Ҫ jO+mߛɀ,+(FPIX7+i{`ƴ+۲H@ D7YE9wD33&, cv_ACkHEM\G9%_,q"lfvp~RFiD:%&cP9R#0rd*BV1=eYPɁJ~.] 2uy 8WA\d1T6ـ.A, nHɟ"oue,8&ݾbҥ5u:W_|9g'4AVԈTؿky.Mw=~2eȨ!f8yVlOyϓm-Lіt:MQO*;Tj2Z_dR-0Од i֎E:њ=tГit:I+>?stkEJ:g<^[Z1M Re"@YzTG8g&E`sޒ CsE$e ,*7k5FѦ-lğ&Hp4ix@P">%ď`tm8_+r l_֧jjHN^] yZFM]ofò1jm)1FA_Cx>.h Q$iJ d䀔LƝq]{${{HY+'RɴS/FT*X !ZE'OulH$kIJ.vMr<ғ P9)5tOrMgn87Z"<6̐g2X~1sQrJ SyB/6(rI,֐6M}ٹ^جU:1GWyН7IIIIvȵb/; %s58^Ew#j2Nսcc_WfJHHx텧|?zAeVr,>ݖus>LT2=l-B nQᑒ ir\kujԝ 7,ԥVϊ!3H -X.k>9giQ;II_*!E|E%U*My%mM QCpQ.ⴕ/GJa7L !ׄdl&Wi|K?vDaY<n#)EA"bZk ()~,\pk_[,<H̠nN]c;/;););),:v{R[ "7tˡ9vȬwpO+j4s3UPU]VUUJJ˂ 0DPJ•_8~j2AA3ٓR5wB v+%~#9w.4mѷkRTYɷvKkҎJ]qKj~bբ#\UJ T-U;!JgfM Rʡ[Y+y&DEa[EER <؞t5vSq)"`<=-8jE11. A-IPl JG_=誇\{Kt3AkJ9 zu6]Tj3sGo~x*h$P ,n&rY}6/żL^l-K1*.F[;^ZLdV Ț F]{ѧVm\bUIl= T҇DoJ43Zy*5zԓI-RWgPS'|mςRw8Kx qdo& 4oyʲ&e3+ #I$b o+vmHbna$!R!)=r tաjgq+;DŽСD!2H+(@I2Weh>ɮN' =^|ϚgR3脇 ?ۗg˸ϐ}rHn] ٚuYAQpd]k!=8G tY ]5(EmDx(KJf9u t+N}=g@fQ"* oſEcMdpG'OA cа{7DUcƌC opaÆmiӦ9<7%ǻk `Λ5kV~00/y _a 8gk{3ɓ 3n#kHKt XF|}[GlXs}С-gφMvʙm '|iӆ:̜>lp.֬9RTTbpϨD&R ?r,aIfs֜9X jۊm̊V9% *^VPJΘ-K4?;ce 8)@Q% Ea* _pL^AI )2҅x vvj j.DiO0I꽮]]GF&ƾLT~s*pT{< Rb0jU)I-.u{Zrҁy9y $,B|<)LyL 5(FZ۪3c"`Cp^V=:da@ 1(vXYb,N}-Oſ"%t)> 'j?Wgr!M @` "ovu 네ş;łG6"&YX;Oٮ)`%il+pa-!2H#|Nx4[b}b4OPIڸMwH#0ߓLa5k"6#PlD*ޤ/vt2T!x[9?RCm K.Y4u \0r%Rm J]*Mk (*p|*uCp@~Cl7)<^+…:anP Lx'>>o5n050򕶬% 0aPvޱ-vu-Dk6.ut" 4Є:ΎGΒB8(>mAcx PaUgni ;tbLpP<8gUJfLk)M {}5h WJGTD-}66[[>SsHI~W)`1`r8'8eP}R N "P;=AOh1r)'zrl=gSX+gnp*rre° i%(X,Gp)݈T!nd R( N B+Y+X텄%]wǿ"xں{nYye#U Vb Hdy"Q`"OSin0SE Ӂ_ 3"1 Vtk!ճF˯ j’rn93"LSؒ~'eIx&Ы)O>7 P<&%ꯂ*s]HFTtct5;'>՛I>$ʭOUP#*:#ǂM,6Gԓɫ&'΄+c.!SPm4~Ҥ1$2^P <:5E!gH.2 ?+MRә"oP"K36)pzg:(l/J.7A@@EޑQ (M@Bz\.}wvwyٽ |{>o%C܄5 4Xv`lZlZ[Dd8:y1XTRWQngHJBGJ+ђRI/adЅW]DSN_!ks֞{z`OwB}XX %bmB6'- O:]кK L^6X'&)>֎XWܞ==M.,`XS/Gq uMZ'J\JǃeFBA+$Zy9C2d?X i mLPrCx" ֧>ŝY1@yu&aEL}&өpIZcV{)g Iͅmk%&KvLZatlXދNcy,HQ!^vs% ,JW$gy!?s|.b|;Vσ $c^K2V PZh2! (X߀`1+hQedao*&+9}Ő0]p'BÖf¯J#O|F=5ſ=0x(bx:xSw-7]L,Yh5tdt``E(Dq=\WZ}\撄t}aI4!1CSySN͢ 0i3a9K&ðA2 $PM'{rKw`vWW,kDHǷjPA<. ݁KdU腁]3K0$­=461q\dI0t*dr[e1l,1^ai><%x&>iĚ'- {a * SnKTH؂0 ~G0ֺWʽxtJs+&|E}L]K|9mO"ؓ_$L ji_lŨ#@tɲQG,z[){a 04~+ؘA*žed$?W S`Ȇ" ßEhqkn(MX`pFERQtQHw>[M/Ἐ#fz*n=H_q?igN7BIr`wd2QҭM`9S> H$C ^ iP|C|ɞ'bx3ѭ\$/$UyIėBq]Iw}*rR8e}Qwv)#ýjjj***>HA kkkT*!{۶mSNjJ@S} +Ѽ*//Gj.̜M6a¨ c9m7V ۷oB@ ( 0ɩ/f @M/$ZS\0" 0\U bX r Dj"><\b܋:EUK;q6ːtԞ|QOk%ZsVz7@Àw$Gt )``PhuJX%yGaDaw'FX:f)M\CW>j-V54?ٲk;hev CUe#BU <`H#AEgy+E"KN ˝%jQeH@z+R#ֻd)RFDRNCh@&06!+>+xkTKd)B[ZN`Ap bYqDnsb\$b=|7G>ґَM 1D=$3kJ f>=kI߈>(Ӽ cR.c:aBhs4fLuքĵ`N$ȝY;Kj\nUE6%a?關٪_t Nzābx"t&/W9jg#gb&̜\kew6;niೠw`)b IM Z29z?w_hJSMʶotzSsrKI^5ŭ9m~KPkn#gg<*+XAP+P?{h[ZVg,&7 }Z1lLS(;@ts"9@-[~]T^Ւ5X2`DIEաwNKwtÕ/RG}V *A2l1)2^–cv1~+k?iIE:,o)3ɒ$@FD$-+65tpMԀI|$(2L UɊ%/ʌ:'ҩH4AH<_G}d hjjd5.?ulX(0va]#?u۰*53PBI7frlb8Wn*!J17󋤛j_bj->qT 'y\ uǁYقUJjk~z 5Yhx%Δ$lI:Xq&2^"- ]d[te~j0Ӡɀ "NP *@ ]MWY;  QthT"c߀/t"mg:Nӣ!!>BAGq0o+cg SߦQ?I8w$j>DۭrF_iQ(+gJv~ŕ`PQ'T/sT#KڪUXC sb1,B! ?ޤl|K?UCg=, 9dXjs/uVdiQQw9(ZҜir$;SIQqAwvv@jP[/v4?x+ u%g÷D|v%"V>bu=K*ɞXZ\Иqp+C8Ւ/:ҭ MT.U+^8f&2 la_| ݎ 룓hgp;SG/UR> N[TC*ayWA1L1r'J\@D RH =6e:QxMxMNK4IJLZA#Ga?<[{}N ,R5T,_b'3 cQv䪸LMnL Ft7|>ȀIVLˠ'Bbde2qee3g^]m3XS}Wt 透:ho[ro9rK"s*?.RFg:0ד^?\4o /%cÈʷ hXDVBN%UZ_#NP}}߶.nݸI)}r4TboclZ U_)vIDmP}5gWgb \ F,nSfZ4_Ram%M{DrphaC6wa2in8-۴6\\%X,O@J u-KD/ΰdY@ޞI=/?$iu@G~ļGj8_]=4i5i36g@fz OI ; oiȞ)tBEqX(ȏ?c=YLrOi,?9#0ʀMpR*t;PC1ʤuB¢CFj; hU ϫ cIw-]svI-v+n{[ z4v1IlSТo2 qQ:; XiFK|d==`( <.]xUPn)ԁwUUfπr1nsC6!%fwU*b[Qщ#Bpl֮9BH 'Pe]vs==+E*B9FQpѽmOIT_X,L':m@B`d$b!;%b)jβiŲ^7?f쪵5S1?`ѐ6HpFB4,{X&zPSN>-e;uRW)lW{wLX j#J֊:L'}xꔸ0'ԅH?no.G艇~GSe_9lS/mbx]d뻇}IC[x֥RO7|<݈Ϙ4m(u`݆GxI}Ȍ%ZOSos6guIz7Zf//U 9=6-l9qQOMox1e7o5X0UbZZ銸 !@Kġ!{I apB-vg:Ro6PݗU^qGC-7y/>!9;S戴b^Ҙ{ OHrFK)82\VV(۲ mbSK(ej,T&!)wH]^7DH!&.įM8|f!{mK*m= ==8ʱ*wPz7]nI ͭcgwR7>CIl(v\otmHcA'+(>λ?c1Ь<0h^j B?}@@[$a 0:ľ66Htw!JikNnpM|TRR_gUO;4wa8O}7hmZy szm* Wӱjc7lzig< {f>nG::R?wߝAy{򍿾_#3yҏ=j`兓Ҏg~̇L-.Dx?I4B6YhH0#Eā7ll_9GROkegW_U5G"aw"w?LULZ[q:{+jxfЁp㚂-O*-m+D=CZϷ/K7vڍdbvБRH'Z9!tAGM*J9P’8 ?U6T}+}S)Lo|y>A; !3Q%FL0<~DZޟ{{z`Oo@D>B|}'?r"/fY @@tR_4r%g:Npy"6mнyEEIQES"]L7T=4_^Ҋ9`i];7o?`$cҭ T|B1dcNo}҉ 5G=B"J4Ua+߲Oڴc}SZv+'5b_4^G3iW^qݲm$0$R$'Fy~O,ڮ_[|ZOjFA@oѼ[7M-#Jgf"|7- 0htLVy[hM+^|v{miBM/l&Ü鲢JsikYz<6up7CÎ.SY8y`LĽI BZT2<-],z<,F tbfSK$w0c\2:K$CI^N8_[X"FOw;&l:u{{z`O׭_UYPvQg|8kun{ΏnO.xg̴3Bᖘbq,# ׬³nf)'3}46/m۲ճO3lT')wpN&ޚ2'E7 CѢ.B+(R0DbϱN=`EW=bx4^ g7:3R%6s>gukG=>{ (OkwK4 ZӪC775W_vBŀRtCFL 1.eC<`~2Q:nXAg?B i8QD1#6{~IŜ)l2岻HⶨYWG > =vd16<=bi[>\V[_/ '5Fg}ni+8Rf~mCW-ds'[{n]5qOSЇ._oOdr^S+|47^/ydT˽D}A}iͺw) z2Gfo"ߖP,W W3BHٓʸ?0”= ]t>4;ˆ2$BCEEcK V%/wcBdS:%7$_0pwGXy%u~6k_\Hl92d?T.!8%H~QS$N Y(&.cXK>G5#dt,43ו3gڟ{;[+^uY|\WuR/}Z_ZZu5;^W?:I5-輒;7s{ ]ձ.>;x?L_t\:3bA޴Wm-\더͟isZEpůdWw8l`]e}"?oG;ʪk7m\׏pp1V//?pJQyyyCTMu.ں}>}2u`y~P-'dbPuuܾh0m`lX@p~Xw|&6w܁x (ZEڛ|zΥzN-h0/[o5qj-m+mDl%C !yߝ< +YvƴL1N#Kچb0j| 7q+Iđ njk+)툴8SdPƑI@8[j 1ڒ?5_hmb%95/-K엝-_()w/hnm Lo{nj,n.B3}]uОEK}A7R;IDATZ@qk#qߴ-yKv8;+DH:< rfñ0]e0hXQIM,Tg0_oF}ѷ9|)bYʖC)vAJtΫ({M4mYY JaSb{RgCjf; {V f˜ynAF;QH3  *(%@;g 3`uce|+K W%(&s7`d͓BZi)#& &3ywL#~.2'3%O%@! P矫~fKSbwaTi؝UόHZ`v:+;\&wY9!Mok.孤Ζڴ}2ҲT-Y8VY3nXXΗ"x7B=dg:wJn.w6dgWjXJqwUT@g?7jx̿˻kݙmKgsFYŭ;]l,dHw)UIWWd[5֎b-tS'AG:;gkCMNͧdLs s%Z, K~pYD$peɪM[,_] =^­5Хc%6j.i3l5f>pT>/`5LA:?_ӤݎzGK/,6{zkY5K*г( J= R/Y~%H%ך6,張GtLdέ;5Y<;ջԘI+yT%Im IHejg )QCMܰ!RT^4Q[?ma+P 7QBO~o>|&=AqT FDW񃆗B[ ڣ {v3̟֣o~1Z>Wg^Fwt̬!/,)Iծ`'J˴duza~AEoX P`+.vIm{‡CN]9dE2/haT}3}#j4giGkU”35kZrs43]%I`0'[]}kڸޞxVԖ~X+4mΊԶޞZ]Std=,`zSRӞ@=DC4dU&|UX/d jSfKMHQΦl2 +GO8Jw/:))UNEIxUeǞJDHLJ!M޺iS;> ޅ"z$SF ڣIGL鎒 3_S1*DFZ $Lk09Dљ$s>3)(|*4:HuX];J簂MإZ6z #( ^?XCŒ>:|)g; dq8߆kTeCMd6 H=x*X 8Eb~Ap uBQkDefwN/ss] !"%{X̞N {8 _*-AA>amꯘdRs۬zd1Q$67ᜬ֕여H} _F^P2:;{|tNd:9o{v'L~YhhxY(tEw2hؑǃi nc(H b6[߭x mq'H=v l`fAs /N'Z h_y V7n7ytTB[5n23-õd+T \>$|q P@ ,"-l":yO$QE m7q?NMuil`r2)nX]0tڝ1D譱YPVDd׶t97V+/-X+nco,Dd#'.z]I[֚CzIS0`YM{<5pzY^ny$ؾږfmF ,[|)4jKB1z$Ҷ:̄ .Ғ[6;q_yK8=kB[O~}6z܅5/]iሧ=>E+|7n--?f^yŐ2dJwߙdbzt݁t2IOW7|'MߟZdvukeqfٍD(RTqCnj;{ɅޞP?4TtfVy̸"1w۹q>n[^,i\q4L{<薑A^S|lIM ^ VI,Ul:[BxNeՊTT4pZ_ +vji {G}G_lz2x`j2Vg#J<53+v ~StG!ӂn*#B!Ь^wΒH=®-s[?T>\t< D/];M-s"m;%wa6ݻn8'NpحS~G^v%,F64~C*ˎ_i &hσNJpixIܺms˖Nlʕ&QqpDM9@>Ÿn^YǦEb1__AwH<\2Rt5 -'Fq^Bͺ:M:eɣ8eSy[2,yR8 8ؤL$ W*¿$ ,.8 |ЧX^%[VcQ5|I iǡOwLӑƺa]1Bog"S_3g.qYN 'g_7J~;m ]Urx86^qpRJ܍m4!,NQ0Bfԍuk{ig| YfQC˟f6ծ=hȤN80(+3bawPSs?~+?F ԶaՊ!z^VPwb_xw wOnZ c쳮-K6:AąaJk~tz+r淋4A] q9#1LeW(pd9d v[}t9@.'`ܓ6[>&ރU+ +XxRgL"g^4qDCq="iC~1u ,_y7=%e٘e./yufoJY1oKJ5Cֽ/Z;u`Y3g>޻n:}cW,1Dl' bKZNN3\Hg$Q_hk=mkքQA[aInmZ*f\s-ٱI&}e HsOGQXKc}RhuYvlunM r/wdKVMXB.!HE +Vf-i!oF_baR nCB!;ڥ:7CH;N٥kv:I][ȒԄ9p ˨=+Bimvά\7/O:d66m=f[,^}ܾzBGcǏ?=Oײ8H]zQo 3鈊kjVO8`y9C6lЃP3_9j7c˫R[{i'b}f W#pebIF$ +WĦ&guSwsSUj=t(u+Q \UjFn]X ;3W@岵q; h5F+X !@`#G]xEm< X(BN.| "ؠp>‘6++ z@`8p|K$vȑ l_0t#v2׃iF@+S>XV_.2B}cz_uvFe(խ)AbKfYhYJyw-X,Kd}7 fn$:ޒeZr[,F!.=p~T"TQFH\;F7 In^\cUpa"G(/Qjd糦L Ta }2&evkdOMϼإ}paa~_X"N@;jNӜ uрltyăJ^7d;]-jS -—)5Oߦm ]n-B4=dL*l&{~R;5™t8mon1L21Pq~/__ؘh)?;L7];wʤ?aM?I[&XP9D.{ oҁXxrq8ⱸ݅7!{ ~D&X0r#9 G ):]˧`N$RI`C(h")P{4tA1 EڥLA~ʱt! æsx#l?ןez|CYM(aÊѥ^$)DfE͖x41Koٴs d8Q?ܖ Ui ۴2wH±?ŘN /LyXww_CN=`űi% DZgq_#3/MjI31aEϖpGd.:fj{ޒR @݈|]t vP. 1$b=*=*e7ROڔ1Y+g.e[7H)̸%JfDA)FQ0VxPT>L|1AϯZ; fK$1>؃)Ww"piB θD `> F<ȵT PyuPar .>L{9$CU;)tϟ|8w kLaRtwΚ das m_;N\[ dtrZw' ȎՉO&҄e *N?G|#r!g9|.B7sf/nCgU٣7/?Ze\A~4>B #A!Ng ,No>䄈T>]Be7q S``~XɼTY V_YBawʞ( ̋ ,59Kݍ}\[5-s$F80Q>e{(?nFDA&$9:4?6!޿ ѣG(8qTYz_ke!i!ϳ7>/?ECQ8u3L~˦hĔ:G_1 ?g9J#J*"8mrJ Rt]\q6R[hځ/[\+n7H'Qlig)JRa7Š89/z]VV~[i/.RX)&ozW;ᠿy{Q+-y@dZ>W>'׾fJVw=V $cɶ]?xǏ0.aD.S!)H }n;/*pC)Ӷo:bOιJ5(L;nN$OAЉ^gv>0T!tng#-Cb9tq9p)bmVrmb!Om(sKߜ}T(dZ䱬lҞI$v)ޭ~ȇz75A֞#ǻ΋*a''Sc DQ-~ N80B>l1:y:eToBv:ʠ@QcN )qYLmKK@Rug]q =:IG+p' +s ,$88 tN{FrŌ!6-VI谅E4lRL3&V̚"L O -I ѳDϩ=tӗ6^v~C_xeu-Շ.j]ԥj׶5_ݸ-5]rE(vm5K7=ympYU^lKu˶Ἒ j/oi8}K:㚦ȹSW4_LCH(J*.U ;ǭg%,OL֓Es#k{jVTLudgL7啸)BVdt?BNV&cg7ENܒ̟pra4&5Wq2g d񌴽ձ? 9i~x؝jk6hG?_8ɤ'iIW\D"I>s=D/ |7I,hEs;Qw>Td͛0aXv`ݶ apIg`f}>y{:޽"}&wm?:|wM+1Esk.ژq;n ?S n޴GgTx*|Rp# ԁa+E Ǝ)=VQuakTcK1_5?eVXHB&2z-e=i򑝻*(E̎I`|)bObFr0P#7Q'植x{(7^tYMj8 t8d7M`qjd g+]%(G2=pY?M//#hͯ=s.5f@ܖw>' ~8n8iGwOp #^JХeF *P$.?Zi.X 481-Mn69Tt*"8ND| xʁИhNhhBI$"d$W2S<ppF_zq = S nDL[ CK/CƏٚxXU򴷧=q?m}u/%<+tQPC@C&BEKBrHY%7w_Q> }{ymXw8ҦUV-ߺ[۸ K1큕ddN=rnI6gEլ 0\x-m3+V),)&Uve~AQdDp39# t)r+;ҋk`4PY1%Ųl!wR~`C@PpMJ:g&8x%1k$.CΆ&r:haAiq!'t(o#m/Vy-OE™ P ԞYC1ހg6ɔP dY`vCs(t;1y*]%d`j >b&h-"b$ Z!!q;]((e^naݰoH.ߐ廑 d#$bيD,a&gѷH,_\xZnFuQ|7?xW?,ݳOYϑ%e=c`i4W0] ("2Um[?Sا g3YSTqR: TW_;nrj#T%~RSJҙ饚w·zwEPab#(@Og"|#B3j^Bf RPw`]nfq{D!%ɣ;*\81&nyĚ)_JW9apagw<ƶ*svՖqK[>ߓ>qK[ik<_6Z=i+5_M2~O7~Ϸlx[\7ڪAo|ym˛T3uyBsՋ.8*xl&i&NcD"…<`=,?AŚ<5+g$\T!Ry8OBg\$W!XɭCۑ !;ڐ.KH+")IDM C}Ӈ13)+ w<$Nh{׏L޼UW'A&Km37Jor(HۛܰIyJ2q'>d2(qC[=qɮlKle펣/Oh3p:ڣXL@0?:$Ov:I?:Znٜq=m-H)jFĈ47 KMz!MRǎ {p~W qڈh>'J` Pu]G"MYRCZ}ੌ : &Ǡ.3lVw*nay6 8Qmc' >i2)3EOJFѠ 2'א8 !CG tX0nsꀚpDf -]Ml% DHp؝Bl ˤMaiHU`0iN*$-xM;A邽̔T4ta3F-{c˽%ѩa#EKT(aX;1ҡ˫#VOn](Ў~`ͿDA$9ōڹa7װ&7QFq`' b8ͺj:~ڵCv6kItɍ4ԪZ - Ke .Qj31G5G:nwщu+]ObNGݩ{\fpvn oyuMi ܨOQs h=E~~+7ZT (FN1 }Λw^x5^dMfR?7L7E< L[L Gb^Ӫ.Jg&Z8^=trtE}>;Aĩ)Յ@V L,85nwHMS&!ϵM?UDVeI@1譼rTJ0>ķ+Ay-2̸e:(u4; m 3__.]ջtEgI{Xf׼f`HPPѼpἶEy+yF隶m ƋGK[ EKJW5,o-XZ9QkHʖyeUͅJ/l-^,Xš1M WaW },j$P {kh?a>.,)Is> Hgd;p#18_#!I[t t 7s@SkqE%C r|yJ4df pdq7Ӫy">e0#~{YϏg;R݇!*ں唤kqHX:ƕMUG6QMX7.'D۠:_u"KYe]3mLK{}e a4 UIȢ#!p!7" ~BDFmG6N9 QPCVl0ҀBqHc!+.܀hGؖn@&"dCbDq$uQND^ EL/nV%Fa,ZH\y[t¯IwtcZkCc㞂$}C4S7ctn Ŕk^$L(]^%lC  >&X8φ:CcKh0x6 VW`:leS T6hDBcqFxYƋr@+t$Q/` Ebgt UJC \dZ/ ܷݺ @IP/ ځ`{}tg1nCGB=v@j|.  |0fJ]:R_ѣa[>HFtכyn|˃|CiktpDGӞ{=1DPHu>Ui7sν+}iᏡ©׃Jz.WQ2rf$|&pW]x1je+ͷ4W Y*:f<,Q (SI TW[>!5)f7^8%^u`yr^jt@0)E7G3ƦK_!SV2X*Yf4r c'( {i#O0-*Tq #"ǧ8fTˆ CCZi^]էrCCRf]VK,;h& s0Pޑe 3kx(*a'2X>`*4!'m1ѧD5{8jj"&DpCL*aB_CcewP)tOۭEHF[Ƹ[;2\3SZ>, gznT'y?88.GÂ0fUiR:^laxY = m :׋M'xGa^n_z켛moEf=dA3; xDQ,tY.+㨌="D钗/>c D"U_/nɄ|sً-{Z+ vNmcn`˫_|vs/mXsP;'Vok=+7oJzAk[uQ^PuRIOOt-[ǝ֌;7FOKOTC&my3]vrZ^#NLJAzfR ٪E'7@fjw~tGޛ/K) ߾[x(SP^("Pa? pnϻ *iV&Igy$!b>+d_*3. @80pf:4WQ sJ:'LU‽7}.? 6{Y=ut[ӝ*C7Z0c|Qɬ)RGk8rZcϾ{˞@ SRz+AkNy]ՈJO9pYKKCð [ۯDu77H@]A9qEz^Gх9.&b :BIb|/X2^٫z 7O\ueLo ׾f/<ЃA*7uyS/sjZ'Xos+&XBrGzP,fs4I2xFsnB_~ 4޾Qhzg̝?K ]X7:cj 17ܛc<.(l7/vÿ=vYD'w+/4̦ \e,^6k(bPoeR )7snÌaQOT (B孩3pF0Z?9ٸ!!hKP(B(}QY[4m~.O8D_>K!Ȕw0i17)YجoޘqϟH)fA`Ձkɰ]lo1ܭy*t% S-bFS?\E<cf{kڬi+!B"u/*IK̹DQz9fWSW.}8lCEFA%Q ICfzk|R_v1 V&W3an"tCk'}5kP 袥T#7^V< ÁDؕ4-Ռlh_>j>)"${, B N.ZI[g(Ms6T mE"o4PrG ,`EUT #a[{m&k(G3 Q #v;E̝H9C~ʊE_zSM#ܲϨ/.*+ ˌ.=s GpnkA_>쵧Wрi˯wm2z9sʸfԟ5goS;f~s7\ΑK 14P2ڻe |`={dQ}"}5KN+[N3jݧ`yZ~_iǏu?[|a~|oGڻ~vyh\ʆk kj=qG׏/IE5x_w @Xo_zO҈mlii]k$pu]w??|SP @Q\}嫜n)c&=ɣ]Hou_EXٜLS?`x!{}VG|ezRH|r3Rp[̹G½FQ~9^ #;ή h%ŏ!6h:CH"OXJ©ϟtQ({޶Jp&|fGF8R]u *팹qe"d &F+LH}FJd0~(b ! ]ɆoP:痟⬋Sm\vO1XwH# x N:R-?rꖭB%qzxj YJkkĈa u! o|e=w e_[0*Lv' Wgf)YpŌx kxa喝dtUڻsS`7{ztvᐞ XSTsA3ZVnցF8aj!s&*#͚֫-pl@Tg43D8r?ౣf&vHHC=5) |چ&։nˬ#/I4^|A#7Bxb{ Q`k:9E x3/mgK q"_N@aAJ^!ʐ;ħZuCGؿudPkOO\S^umU/6ʾ}nn_U]= UU?*رqE^۷ < _qР/n/E5IA+Pzf)UMw3>Y@2OI+ Ĩq"/D%#SodYzP5`ՕHB0bK&a(}%Wpnj,7\a;yO@<?P r kf^(ZdmoR8܆ǦFY5FX[b8 `ray<ʖ[Yud3zpp*38`E t$>"L+ 7 #Bb6S Zc7?,.-v(԰ڸtqfΣ2;y+(ZE.?'kQh-Mc"]W-]\*6gAA]9Y|3`גdXl m6]s{|kg| L5i's6,+wzU`Θ&߮:i?{¢/8xzܚ_vxݳt&[ޞ;oX?ldd |@㽾oz,L}~{Oz*7g}2E)tx#?<|7Yxw޽W?⁠ɔ3-!KѱgR^ j-xϭ?q:\=KZV<`ذB {7̟uי1N;!~m|gd.R60~h Mn`BuL\#-`9hp;gpAPCl>n g@-i^HaR֫xȋPͤlOG 2!$;-2+Gc:S@ G¼MpQة fQ.(D;9pE`{AsaE>q葖@ʚ!V2(H~YD(YŲa뜎Cm֍ []-)K&]QQ݈E"umt1MִikzoS7O})J3W[2:9cW֯uO5}4[C4\?S!!r}=ݺm[)NiH|@[,C,Ņ,_-"-aO;]oq4met%4bUWv}5W,zN}yD0UY}<7>y^B3Q25퍈|4dqMpϖ7GEBZx >`KJ=,.肜9CXM<LEe80 "Ɍê f|76c8Oʓ=ؑ7p+4Lvצ͑RsHe=}Vf ,&}8$Cꊀ:nK+b$^-,!V6"MEa LE~ = 1s@wV/, ) 8`ѣq>{EB3IΠ8DLq|z2rN50Qv\Yhj(bzRY/\ 4CdE2-TpnxTkk<>9=ZаqÁcF.ZN?S֭ZϮ_'rG(Ҹuk‚@`@Mл\0Xuڵ5ثl(x('|yW/#g<fykWVXe' P0(2-pzav@V5N@I<#;HA%憞 -Ӹc[AY,OH^'"w0i/7DKЪ?b^1w꒻ l܈&R(P47|_-CmGB -EeXH8nkoO1=SrϭSQ`:f{~iO({ #(+[y=Θj_+pc>3Y+)PɔZ>9眅lr}͝d:mі+VK[9^{7)ؐJ=HҢN<8r z哏?>gus]է_T3zL*ݰiӪ;cɢ%뎟H~uO?9 joQ_sedHǟzK.k7l?y{eۖ=wV' oqz&.4(TEziF0J;Z0GM#,)u'p{7BGZטLƿs~V,wsl\3ρS'mbM*--m]R Ҩ{o9c㾭6R e[U.$bxŀSxlz^ݗi䓏[0`u/>ƚLx^7^{e++76]|ًLMěoyɗV-k?iq:U+<诶oɴ>n_ad7*nsèqPQNĪvw~2cAQi;|i{uy}}Y"`RiKm_tἅÉU^۪(D7c»# _*zNoTGn>覠`9"Qb4P44^!^B,]6M(?ah+X2 | MWǤ[#rXPi8w,xKnS|bWPP|bn޸vuD"c=r<ć-Pue;o {2ZCB^={IwEUч{U ?x*^sͥ6gd丣OfN胢Gg(3>t]F:b[kSM]Ce*pVg4:!jV;'}^ZkU\L(N/)$+8aI4lµk7|qk_mh]2Zqug̼9XHrsx:i=.@9 \Pj[,jɤ<*<.u-ii,;zS* ΃i#+i'9eEQ.AVώRYXɤj͊W;Btci旱xcE$Xm^h;34>L0UzCu!DH .[ WPz0L{<kj&`Ʀ+6,n$b`Eg L½nzIu##t~dl6Loˆ%X#.d!Iy׃+}| 6p`sxV[ʷ6H{3MPރGrB0OZ#g@ ;+6$,/8 [4i Vg,ED%$Jqֹ!ZM- FICloSZ-3F-|FǻMohj-Ufj 8[7~:7~Cʳ_C8kVS`/2l 힑7jO?? ުVϚumOs=քR@ v#mX#q#{wW 2$i.,$cD6| U ;xժU1fU>.=j0-iz^yϻ=L1S0׬#0K/w{L)z)_^:cnX{o=;6GYuW߸~[{wIQTٻH?j @~@ݣr^}GLZq `yzT ۫]o!U&^$(:fʽ0o?˯C`>b@aJb˅EdtCզcK5xɺ2ն38@PSeblCpMoU GE}*ln^ŐBF{,}8xG==<`] U%0[SDㅍ9t/>ŧf z,߶yѳgL5r-RHa'"[; arC[FTWVUǨ[\T!tOxI eG+򷷓XyEWw >I+.Py"V]0VAҁLΫZʼn!4zC e~@ܮyV9mc;^P_s<%[?` kEy6ADq۰nܼV\"*dXށ%iKM<"j־2gȥեC|\Rz3\k1֊\U@v"#kbp WLm!MT19؊oͧ$5lJ90G7 lēd઺ifI v@BQ ?G1=;IlҀY$4+b$0R3z)Bw¾#?_2a~$rR0"ƑgGz= W7dj`: WA:;ChqKu(hI T(`'ߟj l<, /F8UBpQApc:,8<(:6w~x,ހr{|yXU?V+Q&GWg`š- i:~R>QTgj;g5$R8śHg痸箜c??,2fLuC`k,t?gmi#.-^ta,mO_r5if<Ԉ>62 \zYɂes7sO:@]{<]*{D7LA.2&xKͧ> 55XPqDG'Li|?mB|sͶmc%esl ?b^9b|ÓR>;R*L&Z.:G`[C?'\Ǟ"3o=|Pa20M+B3{}c)J'fF& ^dy& Th.7ArLԙg>iDq#ֵ6^3}ʂgCSP ꐅ2p{=FyK,4BY6ְאap\ӣ&)t@D50gsWu bp5RnrHZ7_;}_+.%<ϗH4傰3j~#at(#AmS=Q?lE[b͒9Ip=YIå RdeRxp]9rCR ,Bg y*瓄QaDo.N%v)US:Y!.P# l(|S nrwVLT| Bu%dEW H9e#Y5j݆+S  ɱUܸO>`5[L#Pм 'LCby ҡݡ2;; ua2b Oݕ[b@BSYAhFY'ߖr@Dj:4̅+׬k8'sFK0n|2:6BL&(8 2փq@&*LDܶ6y!?8nxmd$CC|m`@#%'AicOYH10{\nLI %8dl ˈ)})GEYe dd~,G`Za&l*X2w UUZw;FUfr"*RѪ̯{l#v٧#V]zCH-lǎU˴Q: ъ?(-|?,=ۛBq'kAXphnЏS>#^z+۱hatD`zBpq[{ 0gZ{=^()!t?6Ysxlϛ2'!?ǝފjBd πf,!xDnn\=kQ"l&XtR`  R?$+aj^vډ8ىNF*=y1dÖF\y#өa-((L!jcJրA{F",S_%%M:Tݴfnp? KsTh.o?oG'Lf tǟ"X}V@Y.j{6ٔFoIsMagO7ڢ->0n!L V=8zTS^nzP CD£?RkwVU䋟r - ;[fdcV" $/D .5O/(O'{FiWu>Ոu3Ey1,1 Uy o)غry~>Xa{tC27sy6 F͵H8PPiJ jO";l(_f-].^'4^ߨM mnnV.a?[HEfiClrRL}Μy@ `V3<2m63N-"D#ֱ]YU5#y_}͇ x'9N&Z•kY 6#.t/ ۇOnbnl|_tƆ4,P:`ZLJjVYt %#FPF1\Ffۣ!`dC-x8A羟DDUb  -i~Ğt"*msc$1yѥR/MۯK\`޴Pg?RQ]X|\o&G'_2׿eSM[ljA69<錳I|#LN{}'l#(D @koK?& ؒIx[cOy  Ma*Bf6 L6%< `X`|$ېBM:o:  \mM[8lkܾf%pS%C#?i^HL#m& OOy?/D > gR3]w .K-pl}?_yUۇ@`gjlOd8co1F{x<sϽ7o{տ1;- O'͇v8Ԕh"&1?_ Pa!+n{\cKo?|>/\{ wؼvςYa.v"2wUTO!nA#]RtbB),[RvG뒉}G1kG!vp[&8QT11JjPxǟtƯU? ;nkX z@ X*o[q(E6xuVknA~'Mp]wQbw G $a+3`:#9tv^ھn'4: KW'1ZJ'g7ERFV ϛ%n>9yG63m͵zhf4"qբ_z+^q'ԻBG<sh2rU羪Ѯ}.^U3ILϛ7Gf"x(Hd7]7ᓌil1/z?FעTd)CW5oѷpCvgyh>\O,ofE1TUM]*ƊK3il A{KC̥{P$!T"[GN6G)Iwíh[-x~`H1-fqШuؾ:R:;,ES׏9ی?hOs̙5ʩx]6- oQDlC3qknۿ_qV/^_?DbH"9~z 2b02M+× m#QV*_¼e/g(6HcN0\ѭ G/zTxNj_8:5DḰIMK&o:/x㑛 [uEÑcFAN/ }?+|-/v;὜=Nj?ahۆ5{ϸSêk+3lqIL\KfQrX2gЊ_N}wlymwA'ybHM}V W1gު=SlsP!dc<4bXlvH~~ٌ[׫7s˕:eZP&W$kM8jO~n\\ry" 3Y>f^}53mIgko;͵N<(( 8<swbjb#Y򰯠#KAυ(*0Q6 #\yǞy!jjb2Ȁ{QfCoX4ujcdFZщK 2սGq~GB)ÖϘ ? .šFaêgvoKC=wU-(7%)Yrm5 Sf|4W-;܅ck痀@Uu;6 3&z zG/Ь,k}[4DE|p1[hd]qNnY9vH/?ǏmZr/jjPp-CqsBIP(uw]wn^Ġe5bxo.[1Al^UĶMc4yooJ0kUt*kkb_f ВTO-^鯿J"mzב(tz6]K>1cSu"#ӵS{hg>,P}O{~3gjkhOUx1 LGh*\b`)MepY?0_'(Х?_R>갃G&ƍHk=}9vwh&5*K~Yqɱ;DlQy1d|`K1czeQ2 [KF~el9\O}s{g=s6̧wic=ښhins\,2ݨ,)$ ӈq:1y8K8[ I'H5nľcH4@1FF%}ȳzG*{DAǽ#(Mb2De͟;v_5D*t O0AYΙ3jhx2Ɯ+ތ̢Af,L]tU&o]~26xAW1sB0~x4iYursDLΰcG?ݧpA+UDZS.y~'Bmځ^`1q3[r)(4= ˃d("o@"] 4׈4ѱJ1mr @86b6wuP[뤵AJKp@uap#lϧa݌uΝf9¬b-X8~x3sۇ.""/;6)w+ O=1=Pw/E + PEu"%~a?^3ұGaǎT>pqjq lvw+)(h"ܐ #-fwf,W$m$`b9u$MsyPVN@`D/(}IBV6 `dXSkbJǮf+t@`}@(d$B:Y˃8zkֱ Pb9b,Tu@`Kn~vvurs)!s5ŋ;6>/i~)(ăP(6@ pI$ YN7*W(1/Ŵ ƍ'U˾PjDj?}a"hr,} St sA4$qu*nsTttLk gR/At4ަ;=sg]>(s-_@D [!cy;Lf[s E,b< Pcx&TKĆ CR}\t1~{? ?oq1@ k+=?|?x[cLB=욧l~>Pül浫{ TB;,8L8HO.LRlm/!k̍DFlrԸdl(>|w#,CKp ,'beH pB3"AlRm̯XХG&<xMԹ³r>rbk<0g(dI;FDwܑtZxXG.$ߢS)GӒGa G<=RyP;;Lum%U,fY59r.eNet644+]XV/)#h(h̆2gb MyU ~& V*,jfφiwU$xL# oIkJUOS(]&" 03h'OpR#l!Xb`{F![f:r \P*8`jz.֡@b.Xb]_s*zշJKa&S eE= ^bCn\܈{--^␐^(E|8HqJA]ٙ~gw!VaaM)?MQ6z3o9HI=nK}U5nԡ~ |?qG-Z_?CapCπfkdt[ʇmk&` r8i y(*+ee=֮|r7Do񅯞pIH=˰֦,*E+"Nb9ziIh-BȗMCdkLAEqq9w > { -Q  2RH:3#kW#U.U7?%_ҿ;ޛ?y6鿟&3+_W/Щ8ڙFiME@тjE;S)O1zGq|7qsL#%NW$"AQ+MXKXFaI$Sx`hR ַ[ Eb(2&$5!=j !8$Kb3z+5R9"$J5h[_Z#QǞ+pIRHAqHL![ GVˉdɖJB^ z$Å430;ľ@ [TC_MKVg@T;·bpUtA  -Vn+=f1%r{ʏTD VAe"_--9#$+[t(lBj`%z1C}t=JYT7(k.&ƚC%^ihO6v:,`qټ.4?T %T#+-R3].4((,q;9j˥nZZj=;4|`f#PMqЦr $+?-r/ַ<954 %'@&Cw I# 0p ! cu16[|qA牦B+R&F@6wDLf{UiU6fİas '#r^K#̜ڥo_V>|ǟ$Mj*nogMW!<dGQv{(Bb];otOCԵZ6邳+V#ё]֮؝|WY3U͡DÞRD&Ajx_dre@:rj[+B;>QZ¿?V^|0.|orYlg<#d# J7lR;#A\[l*}ݰjɚKJ^ n>w\>swpn0hD`In{|n#̢/h`D9QÊ2o6fN2`URxYNDV*-,,0ez')\8ČzDq B+Ԟm% Ϩ0ζo]=Ӗ&BJoE[k#۵8ܖ_E}pd{A<YQ'a:#XAavul['$fNJY,&b:|Sl05Jn%ݘtH dqg.Bķb|E-@X-5w@20bn y2BQ"X硡')B%ZTwa^+ [tC՚bNvCXS['ˏǑ.H칲9+fmDo-*GRaK%?nxZKgLOĸ[^ i4p+AyUqGrOS"{C$,`ΩMwbp[a<oҧ{/(+u+)yֳ[O?[^Ez@ 28 0unEXg_~M_|i~aq=SW O%oveń >NʺVWT:DNUD艼aO>2b}%:b'N/79~\YU5}tK{|FiQWBMleQrW.;dI<Ңlql" B@.1*|b G>Nm x{P q ppB֊,-ܟN vbD]D*)TUX?ænor͋-jY«\ c屼ő %8+S矗,^ WE n QK(K eYXhy$gn$on4ga40-IVF,BBFcF(6-~-2J5mPBNCZ jg^HdG]&p;$}V p˱ 7o`RgY)܄Jֿ\BF)P]4'/xsvצ8&55\I0QQ%sR2٣FA1pQZp.L((-Fa.Fm?/۴)aFBQmkL+oKA6wy]lw_p\ruYsC9!!J"dg=P^ S(dbk%qdbv,P8ΊÒ9?(Ab[RÍiH0;b"q8,Y:I%Z3JE(J =e3"}k=ۮsYn!%ы :Z7쬠 2O|JJ.v`t`Iz10a!3= ,J+"/1_/ǘ !!9GIU)]H?+2tY` $[2gCS kXB I(詄o ɪ'gбmVIΨb3fAL-CwSn wμJN{NP%o%A:CKݔk@U4=8ќؔ=ɼ!:ȤAj?bO,YQzd)28&ї#$*@nIr"ۯ`ӆaR]K#'1= H~Ê`SX$[{Hx,Gʉ]!ߋ'ϟ:SĞ;,V) ST`G ˋ1̽S>suU+Ah:1H y.`Z2J XH8Gq T}P@?3*@U8!Ahsӝ?uL O@sr/kjH&RZEԯN>Οl$l"s; ~vVCd{vb;X'g 89:#(!J;C>=C(pC_jq|oxq@ˮ/JE6a'!n@D8MTP1MTQuk 2j\Q+ " Rb09f8F,ͻHh K8#7l$[^k ·w !DӜ.w ATI @ ?%P,F&jNb4LH(!@Xp3y=I)AB4m@>䙺r>+qmh eʱ-q<u2m : B"!&nQjNQh7q䆶(ݪbļNtJmmKSx$b2IB}S,]wS?b j,2=T X\Hn\19%eHCbSXD %VbR_D@D7'\bXkMd##_% ئ!{D‚9+Y>jl`"-H7ik,xǿXE)hpZaӳaiU%7 d#儣BŢ9K6Ok[5˶BOoDb#,P{`;!xs̔T"a:RmDp)q%] 9؊#"ز+wt!! lݧ;;D ii,s:bH4OeA<9e4A,ϳJPYaGxId:p=ߌ`,&dŌ-lk ^/"L#W*Mf”r`Ѣܨ2 ɦ%G)=ؘk=TЭV*gS!], Ai@=uoo=2^jE2k"^d/o2un 8hN7/Og/ nz RZ C sM٧%-!ϑȋ"/U" eq '}"ApSe/3NR He? , >+a#(^:8IɅJld:aVNYcs~,)B@0_"#ȵ2A@j(Wڹ8?/@ظ˸fŪu  Bk4j0 EMG,ЍtFs!5G g"PPGX3Ʈw,AUH&Qw#F2W_qL.BRrpRQ(:?a LU7RCIhQu%7,_\n\w {$d(jE 264!(S4}l3kQ1ijyU|P̿`3} Qhrz@q_g"ck5E Ԃ4!Pkq'1vFe}: ͅf99`Z  z[KF bQ6_ՑyͣEFwg aQG bL,(]RW)Y5$%7 tPP"X$ELJ B 6oG:W s"=X-Iۆ,f2z- :Kڽ[H!*{ ?,aм5,iܯyG׫ץ'T)Hq$J ^vxݕHՒRBbU S$CmZEE?z <; H B,O)j'J$MnN^\{ W_+Oy}k}\]Uj4JXz6#ZÍ L6׮]Xw4G^NNdKsYaro1:m)iTLW =M2klnAV}Zk)j{< "`Tl$3 P;hov,l LցG+iT2+)p)h8Vb;V9Q S"d0pqrXAB$BvyR 荼jFLDXB&Py ڤjD8s )2:Wfb%PF|=pDEʵgEL= BqF d!x#,F2Yɴo/T dI#.ŵ8Hd)d"EHaJ KQ$ U+D=WHjO9L&VU+{&AҴ9) = D.9h0irР(VmBڵVkղoo\o+{QI:"xlD<` [ r6IrR^ N}KQ]>R3]Ҹ(zDX0v /4_p(@$raEwF9HEHdknٖHSB4LkM`="JUI,[8uq+-9'%W)h9Cszjml"P0D(xI8l%Qٙj1!bm L+PQv"?xڎqbi.;~}ϟ{aRo$L \x c)ȧֻ:!58,[AX$o4m4Zi]I J_8@FV6 9iqeV@ ٥06B SȾPpz^ Alg0 7%[xGa to:b hM6 S*uQAʑ{CZ?O? TuݯmgEuJ.=׀`sJqNʓBUGD*L,5:b qJ)}NSu -V=,zJ5qHI$Iھ ^j[xlF¡ |)mY|@N[1ctpRn2 ܶP%ߑVb7&Kϧ M]OWkL{ABx.(uc_S{^'G:gWro>|Q~]G k^70pS:+~&bF`9[ vVQ=_}k*jIΉ+ gSG-O:9^:wιZ*.;7grܞXSNy Z4.KH3gbaj'%NAX@PIȖk삶*kwH#neE}̄|) ;*bQDLɨKB;3l`r31 ob0-ĖϘcm];Njvd]h|[bw iDJ !:nSkC܄_Nvq|eoK1'&$٭?W+櫅 n{5ڄIWPHȏ'ZNϵ{37*mL/" _FG4P!j 4 /-y6a{>Z =O$u6޶坵2nw-Ggl_U0u 0q=po8x܊,ݬsq9 5ui劣9bog]Γvˍ} W\q '{mw·|W߄*~1?~)|:q /8ccGT}qǬZh496UǢdcD7]r_=r{&L sssg+$^$~w_M a+ ]N|RZ em-2cFB(a)n'ruZV{I|$ZvtM+~uEo`,gM5lqktsUog֔^,tV׵Pm$R:cːI,nHpfqETlbASfdh-]|/>@,Ԣ[pJ#L+<׶ḿR' i̙phUJK# Adc,he/2VAj-4`X8̙=s-8Ӱ,ND~r 736*˝"C$$ !o /<0SݧUǶZU 29F{tB*-EV8YJ>ZF8L>ⶔL vh &Nb JnSREN_L"3ATUYrDܖ̗ %%ghދuE%plX[We;:=g`.th M!g|3m=-;hi U=bӝ Nޝ-nGz]f<'.fq~6mcGa,%_KܸS'9j\")E jCVY_dHy ${ K\1폷I>rZ{X}ЄqdXI 'fY #7Y3EVߔ>/&o{T"B du4-KbL0qt]\?KGYg{"ld˷\\RZ3b\|R2\lI\ ؖ\6\B둜[[=q}Ar .B%Tq6"CY]a0 -qto4mO-řf#v<:-<*8>XdÈO gą(iA_* S}۳2wV9VW e[}V'o V37-T'V`?+2n}}KYUfb9=Rr Y$>AFt&*;\EDնlǷD`땳3l'- eN-l֋fLahL$Q F\rR ,q[XQQj5x p&u܄x4j9hV*(,qܶt}3n"ZRQ]){lKܟVFG z:٧~ r`sxyK+6ihlohPw"^*'N#яLТox0X$8aa1SJnqɵ2Bln6U9c]2WЯG:u; 8jCJo 7.v{>'* d?;s@iB^ݞ\*ܤ#hERJHbi)kRI8*("mA쭸k *5ݖ K_Bq`=3749VS8N 4&rz.^xu߲ۻoZxKIՅe]і%%w)C?u˿[neע *ƶEqt@t@H) p#&ePG,C/aH0@r-)553Sԝ@n*iuCXq͘m闑JW9:& Çܸ(&Ȋl킷^x-!oӚ3=9?^9PlW!#?"m8$|\6tTw瀞jPjJK1Gn&LBX >,73g^{3 (AH[/1x֮c(QHh OO Fscze|e]))0 Rea{9RAeC._?lsG u #'fV9glR]xBn9@>e!YёɥGVzwZ l+VnRME]1anp7coO>9h+#zC!x/:O#` WI1{(l A!w p*:?)[jE@r- bln6rJ}q2>chNz`Y}kV,$ilrҳߖ_vY|?a]7u)!=^#4!nŐ9v#郢Ex"-qU$wXBS'~ɛOp(Tu#8x/J0Α]iGt@tKלN&ɲ UW9*l٣uN;sFuءG!`bv+=G/▨ڴ򁉷UP%`-p@a_xuW"N%Zp8bO=?9O^"la#Nx Ts=|`WW:㓁'ݥ}cjHnOTxx8:FG=bIqH H*z!U{.)1-{='uĕd,*NGO]E8&ܽ+_Ey- x&E @!g0ڤҪ#Aw5Ryf3W״ˀ뗂7x]Xђ׬(vk Z)!YG̠Z(*Rn_̾&;F"ʮDM y/Rq;%v&U2N>r YG%y`[U^wܶc:Fc:F%PW hYS1|!hS%/[Ch&H [:(w ;j,[zcٽE #-BINu̩p^ueMdzѣ j yV걸a&DL?휟:i.STN27_jQ>F4#ȩc:Fep1=-|vKbZLQS/H  CPb1r!C{6TsuhH1g-hȽ *ƙJ(ȃb?a<($ Iv7Cp /7j6% VśD\NMG>IF%BG:a qyR8"%F)!I|Xug/k&sY=͚!F1sm;Fc:FԭЈE0MGs:t;jB *q.1p,ܥ9Q0gr#j8:ߞJwT(O )8),zpU@U{^rybZo`Dj&?Hwz8E+Q+BDJN,ņB g1|ǁfvxÒ3'r=y/>ep>W4!ĶG_TBGTI tT:bگ% : 35] +ÅDTEӔV19U} _M^jb_Qy i!"˪ G0㲚m|YL]2&Ńűhhyb%Uo8:Fc:FcF~7\ybJ5ݟ~wTDἍ1'3v8rh^ϒŧ?Uj~3 WMٰ*hWlRei53*V#PTZKs7]t-d(pH6?G(MTl[SNxo7CA vO@i pFzڂ#qo7WHBEX"  ~')w(. &iY74\^ШJzM KWRK2\Ӣ 81¥F׼Δ )LtiX1Tj:ַqp]V(]ZBfc:"uM_2lă;^ϨKgi(KHVrG zȲgTUHH:OţCŁD(byY@vW_y5}0X`8O^{4Up|xaqnNAI^'S}Ն WU_ŗr~:sjI=u]zy;qŽPI7[0 x}gzB G$nkߞK>'o{ɻc(^Ii9@c~#Wdǵ3ndD`4՜9ߣ)EL#]J zY;ٯ-{ )5 XW<יLSSܙFKOǍoFrGr7i1ѵ.H:UR)p > dt}U{J : X4CqHxňa"m3'B,7 ?7?Ee_(EwOGS͔5[ zL$5=6'f"qyuHDZ55T?P?d^ɮR>BsRoN@Ͱtau9[_݇`mNՎ8c:Fc @*`MR.dܧH/Y) ԆŠ98aDUCBPp٤pzFٱAO;$Y n91.G:h˦S Ind_ƪjߥTwQ;8k#@[ ~ilFC٩SaZa)gJ  !Y>LK2`PIESf"T WQ=ܐrS1N0W-D6 "M3sPվ'YJC@qjP^pOMH(_3xmchQ_4W8L=sA%9RkS~}-Kb/GZuq +FRŅ]ƿƗ$[̨I豖Nwh{ytYydžzq6fo'oi״ogdTa!hɜӲ?u@pFaV zPSv8)"8, 5F̄;'ʍɴ5ه1P RJ_ Q':&@%OT8qp`?\w/69\uz *%4T8mL廑L>g>;z#L G.e2|BAa!-`t {MFFڱp)nb6ԴA,>ط@P8e@L*#? 8q#n4'xwseWI\{͠uﺧ _?G^sͨ~ ouصWw3dI}ۯ- s<`0/s $tp~O+u]^5^}^[lmuiu>klK{j{k+_Y2@3+U- r mz˾5u`8lώ^Ť %u"(@#;Fc~#@(N;Ī}04yN09)`]ȯ/tC!͐,=,N $A_]l"qd@ ϶[¸˔II4Hq )wTd@@C8:FG;BnA6a%z)nJ*saҐ|s޸H`nڃTNtNc*X4i'hO+=ʙa]6'Xئk~[Dۘ?+'c6.@?/\m7].sUJW#Zjǻɔ)܈۬J^g:Wij\T=ՆcdcS(r_(&1_A Z@^Ez7")jߜDbaXn7u>D/oϋM^ޏxF~_7)OˆIK줘% ݘIXGbY/L56i|rq,Ne SRfIɏԍ&,CZBfg$i,&YӿdC)`TjÆ B23w\P4{_ᢜ0 Ѫ#G=s1b&~}s[+TΥu%ٳ7LjfpBѪ3gbG`|{_Ϛ5k{efs-;mms9ZL]X įtz+oug7kɟ|4N+bZ"[\tb6q̛7 ,Xy\x{U^ $H18{݋#`mCX0cF`Z\VX&rަ\|l)02۟E#ftp+؏ v]KSѬpY:DV3=D4ɃdrZQi8m@C'j̟7nΦ>xRq'}:;$xhlQ%$dczǂ_#Bud/123lvQ)zP+E7AÝ-m*>>:aW~Sq%@F4q9L^L)n"wFy4gGjk~T>8D2fwJk=Jxj("//JAhKiGTd$G:M2cAVʎ/QSLPRr̘1xe AWez0bh FL4@ `F )Z2R^$g?Gmo]aAO y*ms6.\8Y,c_u_Às $O,v ``&D4_Md96F,"ox ..$yt&tBlRKvt٣Ak\ kɒ%jkwb "e@cOwc:n{NH܀0^+[E}YX~;ZǎF!J NM(T/*oSYj::Ȓ(ոm'xhZj,ZED{[د4 @̌pеt^!SڨCLyjbMui.EV t31Z :Vdk둽bEKJ:l:h el!J)Z˥%.#Ѩ$wrv0)ٴndIDAb H T_V"-p jCIx.}8ۣzվk?cde[-P\Kx.lؗTKl̇Biٞ;\d;QǼ)[ya%D'`QlEOC?R,>At bIX6-p'iE 'hqc E4K*6 f`3`.Cb eLh8NIIѠ$) 1#$wcGܞDKoL,i*᪴&xs s P7sR)'ƘF &0m/%cU(MPˣ;'pr!deg>"{VaMWoGfIU̝2\Wb`. }{hOfaFo{{{_ce:kB|tƱYAO:L8( R>c)?-mH3diY+2+[`Rde7㉻}0'&7 Cĥl=~.oH X8G{ O ~RZH*uZ&E6%y;"Ge=hI II.?aFOV|JlJ9".) )(58R+y4(0GWܓ$%dh8' Z$٩>4~#GfDWv!TOܼ/lki^OJG-3Qoч[x$,/_ ýnL@3툿@})UQ[{p V7d\.1;蠃Ќn H0f5uw1Dh-8PKՅ[SѣG*9DMwhX#̼>a6u>|6ՠA$X9 >V͘1cԨQr܇cxu__Њ1 6 dhA\6aIe`N|d8,d"-N .u )g$ O$zXɲw3D"w}=yƴiƍ#7&ckoj $ cyL^EoBc%zd2Le<&P!1+-?2bp5߂rLKcw%Ae=O_Zʥ1Xf.ZdqgÍd %!~o<GVDގ~c<(KPxɱNBϘ1F[FD7,wEG[/f& Mȑqs!fπI~H@Y BLmj2d{ZdJ1#I#OVXC e<ƎfGm bg y2VLHZi9y_G쵽o.1X=?5F2AdBJX@Y, $&l6ÄSX'fEhD zKKhTRԶCKD`fҠAUQ-L pC=YHeXf;TfΜNl"KBh%pxNú<:a 'r ;;Pa)QNP48-O6X{sh?l[3Ь#冗՚`䌁apo))gUJI^{YGR /s(P6]eo|o^.%'Ν?b_"6l4@(FzxrlZRp1ӧ9ry f9Z 니[Ov}y"|>BPB$I6iulbŏhPt@|wS~:%nlyG G1ǵvעX /sHq,"w_h(?-*b1 M]=u f+VvD/[w2=@ 6@x>E8HX !,q!2>U9/AnY,D/;cAᣄ}kSo:1X0 G6krr꽛jhUkׅP=_m DΔ*Sqr ڬ~Kc!xJ/Q0%TY; gxHV /n qL ,^`8ikYB@dGwzv`] eRLXH롻pH+FUwUrEHIe{Q*dtPA:~)Er3.g){VGVbwiAw?53MfLǻ #;l}Æ {4Bb(& (j<:oqF5'M brOes\946IJ F|13Ţ g" 0 R% L~ 0J3`FO8bd7'Hs@(ZVDbUM#.)nF @ɃDlkyrei/(Se-.9g >cC[ҷsbbbf[ ׎H9e@ ȼ_%Rza0ضo}?' {Fwy#1#GT$n,֑m*DKaJ-[%\(L)P-#c]?˾w^L%m;'H`+4! NO2 La9d\4Ulc|+NH@2T!q90T 1iTN܅CI$Xf=ax`{= BB P`[A*nA0Sˁz)!'i*HfQAol $J?c"n6,]K ޾Vo,gZ9/_ -[R yCNZ;OO*-{pZ:n1#1#=4  "J ٠iĶ/b %g|{ 1iVQKG[LƐQ(i'JeEwNtFIt`n( wE# lg+95)%a( 4ԴJ%vs`|[ږ?(;0R/T<"^\@(9#F";()#2d0YI*@L-d{^:w $h hPl"jڍ'Z'}e4zh]&k xJ\: <"V;T֋=t`48c?2+n,GqЂFV hR.eSz4j &;wFpPH4"D=2@4xq5@͙a0 VTG'vv)q@l1F́*ZTr !\ 2e˺=g c{8t ~Hdepp e\n:DKKnlj]:T?9>8_quԀ!"MpJ+ Si3%9Kڅ*bC2ӑ?jߣ >l;wea!B؇,.3;C`!: cunJٮ 2<ϊb έo_r-xO.'T8:Yw(!]~.kDͦf'O1Z"pD4EpƔVXb/ι^i`4UAB=Ĭ.Cu@{F@ +ݶ'cѣ?r9sfk:.a)[oE UU wyNw}j1r$3I]W`I&6>zUZJG1)dO&oᖽuH a'vO<|<$:4k9ϣ2*r'pp"AHuqnuL‹pxP)Kٗ[k,V8X,!#ߜa˕a,lE/"A׌Ʃs~|*"ik/8gX3eS*Ӕ|=F@<\8ƍ /ݔOPSP0۪$b`<CC޺-g*iyyozq#FUv =b+ ' l1=kY-i%֒(bil|Q^8<ċ,Kl@#v O_ڙHV5Tp h B#1#1?QR ڸn}5HF ݡ]G? ŕ6-_v֙3x-w8A|oX{h+לrϼ\Zy{:m档s֬[٩*!GIReu]aS<"`< ~JG/>p{TJ Wc-Foŏm[W{߲ RQ_a -F=7-#9܏'Q%Th|˾ifMf?VԾ%-ImzЧbԩU~rh.o`zϣ&,IO+5x%#̤/Zz]{t)ޝnNi.=;G6cwsYgnX8^Bf !iqAPdHQ_w*-ݝ Ξm kW 2P;BG4ؔAR!Y3\r d׭ /8~>8u-!?&EљZ-!gs/Kض?%Yr&{$H3#:{ȒҙUJ=S=}8[:l!Ҏb2 hq"t ]P7t7 / m1 Bl pB 7B.H־}J_ZT}|;g{gKJgYMS`;p[aHag/jim,E!6 xoEtȂ~B[x";n`tZ8ܲ6[v+n|8AMN.`y^WUWLBACF|ɪq]%FJ]82x< 3 dsb*E9̰wpiuylD{ >ZJalZ6Q-/SPG,'Uh RKl.ub5ec!n~a@ōӆš,a(Uz V۽ 톇Tm;[ ՏR"إ\A l?S Iz4Ճ "`F%-wce䂟s3>_:]FItHss J!E nX[N*=K7ނZB\ց87\2N@q/ UAR hf EÐtP AWKcOpѰ<;$AF(r5&d(sT kF"'su@r8y %*T St7s&-  \H|Ku{ -DM&1Z/l'g+7Βrlh{;^\H`bxdIKb(/4]fIDAT2hKHPf d*KِT;cVkS$-*{b)P'3v]ոr=U-g$@Hgrztʍ>td~cZp |H+n:Qz\# #XPhH#*3#a vƆd-^,֖mԶ[>ھwcʂl5̖#mwѬ\KiםU'n?!?7 m"Q=;B8'z§~ri45̞қ/X?_駟(= 9)(#zÏ:^rd\Up{Z)j6*@GRh,?yRYmDbyFt0@IZB"_[xH6A$KxX$[Ϣ$>hO!n YXSRhrBD)O)E)p I~40 U]JӒ;Z sЈ!JfkWHDb#( իHK7Yx%^8p蘦(ں}{]Y./A5!#{t)SnK& `^CsCQ?n7 2rxD02E"ZsR&X ҚOC % Dத'0AՑVd)E S=n{@Jl*>]Rq Gjp)`hbVZ)of/vnoec3l]r84kg:ѭ̑m &&[5 4̴,IccՆk p6v~$Gɾ-OƖ in[ϳLkΑk:/\?O :1ͽ⺫^L{okkV\XJs.?jM z6Uh ~ovz݆|K@G655i7.Ic9%ۤ`~mڄUQ).k#Ã5Gp2eo M: 1r-QI!ђkHVI/<g sX?G}[9cWPD ypB{prPz1% PjDYphmk >3ֽe% $Ey80C"'iəpyN/JR)O@ /V\%pե &`ۊ-7fN>Ds)tNDYI"kP,,=@s )D?T ²2ijB֡^Qa; ԇ@炭 HJN| F$noe-7{Z&8ӏX̄Bf7(5@6Fw1g F Sj_ܩ%Cw$h9ݳ[i!C\搏SUVYd PiSJ*sKŅ89<'aPkUP9AR1tf LN:}>)7Q,tS)vy$i}h@Fܖ gK0;cA`0 Bhm2r@n* $z=TyP_D d8+fʓ|wS`+`A!pHn|EA^~q5NZ7D_9ۭXA$Q"UXS =jHPS T㊘=Id /j\rh @{ [ )cVXL3!ZOz]&O$?m Έ#9V&IhCX~/7;QFN`_:(F:689g0vS$ UlپnF{ҊgKlm[0[2kɐVR`m{{B9B p+%++9۞=O˹=h{J݋}xoнnS3P `u:gUShQֵ,&*NCRozNw ASqu~ʊ_D+vM0_܁>=.4XS/?_i\5vd_h!}zC҄890O>'B7!m$$B쟌v\NqDꓽYb(.H "¬4X! QCT$("  "WbykAc! (m7G2@QtG@AʘEmXujB`)%=}T=Ҷ'gjmK ō5>))oڴi˒VZ4:;>iVsmUc:WKVdzSGhSU]ŵQmāޤ# n]C$̘L*O~uqڬh攂8{S>6u< A^HVd欣HBXt昣ą3Q5ZHW- N[,J#)q{Ix?4RH.ͣĺSnevoYkS9E8uoj A?5Ct``p\Tˮ$^j?s;:h[U O0(~c %e'kFU_x֊./J n@P ~B=`fx"ÜИLjz?2Qx+]z?0M2 YN<(Xu?> lգ}}8 QF3PH((M8Go2Cڀ$u* y}-wR*yȐn,] w!/]DZbZ>H[vMyysι 8{tNav#lFV^ܫ λI(>wN;"}Gq=gc2twٲe=z\zUCϽR8|h} )u<W$˯k 8-.G_KAV7?Urxx5^TɅLz2bC;ȅCrN4;'zb)/\~R[|SpVidC#UK z@S}+n{kJurrܫIU6fm47%^z+:?}a0'xz^]=[X%sbgGڴjS 'ɔqwddhxw񟏞5ńgjdӀ ϧ?^sIs` /VoTM!:Sz_6zYJ9,mF  Dc7]P[_/u~헩x_f 4,/pg`҈%[\1T MIKat&#ץh(&]>yĐ5+j.;$ Y4emV4AvwrjFJ؉D@Հ]96ڬU*c8oc|o1m=2h9vdzv>g[YۆB o[a`E-ws&j#R=q+7tf|;C7N_5sZG? ]cgn:C{w_n/N?p wlaQ?o[ji=e˺. n%ď!" f5":V@x_v&341E ܂!Y 8Hg~KAAPT$ $U\ 'MjޠhB"{ӏiWaAAIW]p yG \BD9_1i /,y] %î#G^;!HB#(ܳ}AL Z{3Qq8 3_7:$} >ܷ +˛:q(9vZ7'|=h>=-^S,5wF_g<"=53Ľyx߆˛Yewz\ JÒS+]#h\k| 2~ı'v{ޭl߂ eh 3!JQO_G^D|,~԰鰡" 6 9ȸLI`/AW0уO"` 4/Fƶ,Z H%.${>ZEDI)pQ ,$t:!o?%6+\Sr[OPP|5oa[F$>C-y! $E;[:ae"pk DYH+91"ŭ]vevWbxZ|_1XhpzUӵG2NM78k,<6NP'/z´ -Jkэ׏:$ !^]֥t HBth{w5i GWNe<_}G)m9 L*ljk7b 0zb`4onExR{pw̝5)[B(gQ*%Q뵱rq׮&A-NP4/!?r⾽{Œ̕5uÚ5TnR#> ʚS~~jPהCwMWa 'RS">"D@`$~ؑb#"ߘz4VV•ߜu& @7CO -$Rxi27TbM9d(2#20ДT t)''5~БG@$]pR+L*7]|5 4$5JRiKqtᱎFƻOS?Tnm(^ilV;N.<*5Uq]fڈ;R6.خύc"қF #Ry)9%}Ajn*5pIo.qy ~B.Rv\F(`v- 1-{3ȗKWt{$r ciMלA!";dcĥXTŐ_U%䬫R=D>x"[F?h/Д4#❶#Sm?N `7 Φ~ 9KG".y@J>Kh"yTڬՔʅ:$C$^v" ^͓#œ^f BئȲj = TV{|d` 1˭RgW`s`r0{#s K\7xaGqv6obxv'#=~ `">ؗ0 TE(øCoK7qJ }VvXNbube;a5[v;ol|ٜm{Ci& d.iU[4aβjRv6}XK?֦0$EFud>xւR:$YK/A &R{HNeˍSF-򋏒I5(qP8Rb#e ( . $뢚vXXtwMksCfa  +]C-zw ] >(FҫE%49( (&f*A J.@pa3>yiݬ;XaO2Yݙ=&,dݧO= hRHEkW/ŗ{ˆEY.= ]V.˓bU)7c 5v,5G}xFtY=JMX>X!G'!,b2R8CM Lqh\,v gR"7Z2,ICVv@$l2%J S)hI-zYgR$[8<=^KQNXcUHV})$͊ciSقRAuiBu-n+1/Pm NrM޵UCVx DhESb9ǐ>y7-}v; VUfJgBn8TzY`4-]>^2R%7p ٤R^]Ҝ }NөƀjBNBaFT;nɿ3dAZ @P$oq<\o}nhj9lܼ3ȲRg|;wzVVȓݎp}QY^!xkH!"fFE܁ivq@.映 -2o,D ยU3">2^@u 1e=Rܜ:/8|w8N1єh(6)/)8PvW.ޫXhH!.򑂁D'3ߪPL1h"jm_@Sͫ EI\HYКp9~mޒOdu Vh;G2r7=i0OssY3"'t ytBt?bXb$RCZt,ٛc3siٷg'AFƫS@blWJOelk5LjK"@h]O-DD Z-r#O]dbC,DD6.I)ò(- MRmr`1?C7 7ttL:+{Z((by`]BkzYPըmMG,2ʮnE*?7LW6;d#lPIFψ^qdlsλUhpar 6{Eε0XIIKABC@u2~c^{SkŦۂ:E4O/Uռx)DpjK;1xt;ǜxw>|&y8V%\Af{.GjK+~ᙗK-_tʯOĖx+Vuy sV+k=5-U]YsׄΜ.5փkkNRcN?d Z֑@{B"TXw]8^1a|N"2$:ǥH Z$эT`;!| 6kUL f&@<&)eH,%Crw0ۻu`#";J$Pc }4D=g$C W-J.)2(BIa\V7x/ԟ֍^=c(An,j/FA*%$*Rm܍BAQ00gvC/AwYAOAQLMƋw%J   Z*-<QltsAģ_>#* 8>yݨi/ CxG*r&AX  ~ؖ>m S.\ +cLYkƅ84꩞;]* Q w8@07bY ûҔ=y řc.RMSf.*(;oꂅ_4o g2>pғI|nEc2b/>~mƪk&OmĆK9%+|g鵧nD c>l0 cˏ9{Z64&}sb5FQ`z=rs!+ Ga2 h{IPrhF8z>zRQ iJHr7ջ('a"ya7 K2B4X- c."LAo~]5ɉ;WW'gTI>ܧ[/;qzaRI6w%y]_~իgoȣyHOzHTWx_y_)ҩdN0K/\{.qCW]u_mwʃDq'S@u >/=% EzWx!#26(uGeghdsɎCYM\SA4 oW#XEsCvOӠ4}tP :8HPx'@:jOɅ{&#maJَ%~ŝ$l|{o E:CRTP] U[i yì5=x0?)Z < $MaCAL+] ãPI0ҧI'&9s\V*hj놲|j4D+nJGf o{,dD,ؖ{QBDkm2Q9B-\+(g& [ir2wb\0r f$@ iH鈃= g"8<aqdԅ ΋,|XW :n^B%d9 ID\YL@5_=;0{Ͻp8mꔷQJp)K"Ef|!6/ )ʗ)dW$U2]Xdæx]4 }IBGk D B:'[`f^?b~7TIr>gIjJ6 Z$]Hچ\QE`eAZI "(b͈()q) $ׁD ӓܔ6F[ƧMBV'v}B3uSŌa3dqR F$J+^v@^Mxı} q}dY (G@}r͑@ւ<?;쒭VqIJÄCЖXfaqI`+ǖl=iX%B -A A\>?'#JOȶCF5_4&#A "'W5N"  ^ٔ :g"RB2M2;i9"B̊1kgO[i/Pqq(,O*#-Cb HeVx\G o6 CNDh^VaIp a 0^ذ,(d/[q;:Y>q1+LAHBy"6Lh/AXĦQBُ2'.IZm% h )BlN.ָ2 ْ"]Mu3G9ҸA7#`>h;ȺiH59RY-ޜ*lMMj = ADy8]>/MJD %$_>RJՈ3hdNM7]O5.O@̢ꪍ66oJݮ=}E>qs*CN8e4{3 6imADpj΄ DPBA!kn4Vf7ڭ>aHTLDӺ KM7SγQw! :R!XUsӟ_ߜv#$s.xO;w:)KP1?C*A X PIV[Q9ig0/4)EA;BA1f7Va xY7@`?~?vu]'2DbrŒ*?ApL bw8INƷtfPqFÈ:7 In!%M.B pC]m'PFL)JX іX<2Hy{tE%kDɬ9`hQnj8F"j&,~۝ùD $]@  2Ȑ.E#@IRVf"Lr)E:їa3޵amIM膆81i  a")Ed#l sUm%^Z"߈6lP)ZSyh`JP[:UD4 x."DF2q:nnkUh"+tG/,M!Fؤ}"cX:VbD"p [I&lU:CV],6[iCz읟b'G*$텶ؼd˜sIWC1;oϠ:എhLiHk8uWS~&~;\09ӮMxRJ4^6! C4*tקlj"@V B:`aެ .[CL9+4*``:2񸃊H5G_D4eK#5ѥx97'JySՊNq)}Zpf'6!2ʌik0ps(PAeD@݄7x=B+dsӘvSA2 ;C1Xe֬xDMm`;lnn3/c 8dSu R"p4I%=Rrz.]+_ Lz8]cZT0]y?3ZR<_;nM N5riKlNn*,HT.[NtY*]"꼪SdB@@ АLv[^" SwawDKBI&̴=ğ+T(F%MsQGHˢ%R.^=6ՉY _ZsH+0Dk%'Fa#NޗHFJON@Ȝw t>ٴuNo +ˍKzyss{π0ֽ?KoPTbXj8ToHƨY5TW]zſ>Ӭ{iMR>:+)Jblk2!۵S%mC߾){8٤ b<(E$GB$na^#DCd@}086L8[0plGO}x,"PW8[4lAyW"aȶpc@Lpp[mlbYcE9Vع 8][&StGDtq TYt`L&1)%Ŝm0]-=@HPbf ?% *Oi[-@_S@tP{vd8ev9R ǚB [AGJ[d ;~ƂCANz $(Vm9|oLlc*ꏀt"$l%8$C99 8 HB{ů0+~`b;4/6BizAl{E.~ aF7$\h<(´| I_/K8sKCۣ^'tܜ/~;xhИVͧo{U̎;נԀ:IєtMDuT􇟟lsF}OhjW`RipO95|/5Ee=k1OMR7OL^dO><ϱ/?QD@y8{9(W,(t*n8C|ӍWrL1R`~3M )>gf{X5f̘9 C4fߞ}0kS&G+i3ASxf5 b3n@gi ?a q1Sܹ>sUfF8٘3BЁi= xExI"QAč~xԩ3A$ kExskw9(f9Ra4y%sldAzs)>kAA V~Uv.,\Rq@٠IWIl=6 {qX*wtk&0H >ÉHr. L_DnS/9 "90AGu޵`2eH!Fc[|s!{1+D ٵAߋWev,b"+s0[Ƞ8<6zIF:5\;,?-7AU?!X9HAM(rtϮ ~#)Gp_ N'ߦA^Dm:#绉ДK}5#]f.uf2|& q'Io9INur^ (Nd/jneo3fnf_MfswSiȾ#♹mFoEtC=s^k; b؛"}f -wK B,z\#?f4"RH_$Ob: ZS,w1k'gnM"yxN@`'a1- j) va4kT|[1"Tڅ%>zt.YsвOksbZ˚bz3{,hYCiYi.|ݙ5Ԟ㯧oo o֚7I_?Cx孯#4*7y~;{15)Ok'$7ܳ+~ z !ٳ8>{3Dȉ=;IҴ,#lLܑyheZ}3/mHWŒ:-HɼsYSj L$ ̨/ğIUXh;TZh$ARFn!Fg\ kXHL}cO0*$`")B5M>:Kg-"4i:PK8F41b/DehZVloʳZiz'[8kМVWtί$'w`cR C[@jNNߎY3I'7eO^~bVk )O,qSKT0" ЗǠC%0K%z-3ŀ3J r)d bO DUC+XM)^qR\ lKG@/t Wp>qp'h/';9ۯ?5Ǔ!\]zNŒ][#OR&E3P&DYtd >kW72ڼYS9Ƚx=qĻ8C{׮cTxgOD7L+?] 7KZuqA2R5ȴ?;_t%`PLh",!kET΂>h>?B)EՅ |8α* R$L#!w"r[ӦG(Ey@h5#{ɿrۢyOD1iDTeX=%S5:b. \lK;`vi+svÍS\GD>4gSf}V rI4>c.QC Os@B䒥h#Pc'r0'}ta]z|K 0HĞ/ 䠀?|=LaA=M8!n[Ȕ#XP4< l"HO*BJܲcYÆ&Xp.݋{:@qJdB "dNۋxSb/#qť?c<I||(Pih7ܶXcއ.*@q22D!aBUQʒf˜P=ݾ`9 "mRaq7T 'Jy H5p211i8je嚓~v:%:& "jwvL].%yeue T@~޾> .Ӕ O~ c܍}CAR[1 yj#?p9%YAwzB.( :L~{S ]yiݻNM" 0FUJF. Lh2#ǣF䧔*'jeʉ;T2-՗ew?zDc YF#TrHZ7FJ,9J?o}@xՆyz.\O_zfښFi\%(vI۳o{O3_lEK9 e=ڷ$s7Y队Up)K(\Uh&)'OX2[ l$R1I@ι9eJ3zb=A 2[N- >v;/w%B/ B bubE ؓ04I"i|]b#|QHw 5 F 9`uTn?{rKG&IZ:}G@^Y()€TzuINxQAU`_^SNP iͅ2*j U9FvieMUn /hh]%k/Y"z%46l0Z{?ҪKD.k} "n^P= u뢗jtU *~ArAEU%knhHMK6$.YdEՑ*.Nln>gaիkhO)&e*L,ardH)IfSȵauk+ :9Bp/ˋBzx˺.1'^ \fN kD MO6R{wf*eUjńAEnK|X=bc,)yЫK^ΊY@UWܻqÃ\Wڪx`݆W~CU/Y5 N0`HBu.#T bD$wO:@,Lc槟y<T-N^I1Z3c=c„[P=c쁫V@]}=sze0ٜf#ǟpuO$548賁ex`P $OBn '͚ ,IbObf"FD"77d^N5W..c+/S=OmmYhmv+8H)D>lj_՗]7w[&-%3OrJ6S.lLHN~ǝKMtG0P^A91ٽLj͕q%c;|NoAp8-m]랻}pȓobM$J;n):Wq+Vl: %'Ϝ9\̽;r \z%@ J#|=7\p|=c0n#T4nf+/;9~I0~9vbgi|E3 #8},:/0ܬĪj; B!6dCm]uu<TqyH@ҥMU͠ xWe$&A;Ҕn"6r 3j|3c2gڂ;'NUK*GY4Ѫ嫐\Nzĉn]W.Z4j5 MYZw6@Nf4<T޻O~;oC(y\d}ȋn OlY1!;*p&\wJ ai͚YVNtnjj4dLWn!ڳxP3xk'f,!NNnybfk5C?2`9nCߩM1]2f 8²;m`1Q[-fY_ kA,C{](e@D8 AD@#(+66n{.~&%ĞkcHwy ܅ 7ă``6*h O~Dnް K#LO=y> i,0@+ZjU|ܯ/.ǢL1c10EFdƌ |ל& D"kǏØ;nqM4|anrÍo|8x¤7^ 4x2!>7\?_ a°Z\8ao~=uՈ W8xuoGpoa؄Gzk?ʮcS9d}'BK- Ūysc3P5֮W1e`WʊsS>XU 톴DP(y}5M0Sr|҆"?mutN2?Qw d &™q!ܕS 5}\u1"Hp)Nq/RH"ťhB) Ri (Hg㞍llY={n /-avΕsWR/ܨ$]T%N+9F ŎlD,+gӓMTֈZrңi o@ՄU;\ۃ/SUn(oӚ?|12q7q6zÆs5g>\U֭:Gǡ`zoaKֳOVEnճJzvi';~F]_nͮĀkVܡ)߭ 5wczae#+Bc ` MBbǬ?3ҵ۹(A͖RMvgӄ򅱟dD\3i#LT0ݻ97f2TefַMGJ6¬%++L遉&I>jW-_s@`f^=.:b]`%Kt>=;׿t 3lrr`TP?Z~6e>%:{ /jZh7fGobfTS+gz}&3zdn/wZq'~UkyAf:]ɦUKhIffYxSzؖC~A#uǵ]xRqhRkIEfM/NKS8i5;GG~[OGs/!ZН7]s N;$fNqS&gT U\0 k ■Izvagw Iw9ۥQ8'4 Tίzz{r]*ң']u/b!-Z5{imFHQ՚K}3Bn%yLj;3NE#xm UMcjNGp*NtݤB譏CO3c?5׮ճĉ_ 뫗k~+% N*t(1wqfQsbɒꍍMt3*-YD+:mF}su<6֚ _q)z`NKC8 !tblӂ޶O/8 s6Sqͷh2AйpQ]{}I8X;SaB{rߋ^ӱS6_|*y~D AAv u!ԣa`l;i UI$76|iT5E4eG8LNetuKgYsOP3@xLiUw"'-M;sgb9be. ; k3ݯ]ьU-]^1 >0${zuD {~7oN?6S%>ہP3Zd<Ɣm6Z؛CW(OCeVWpjRT72ip&Tp 5 nAyMQ6֫q@QÁ%u#*?(i?̃`!QInMXC0FBEp#fص@HSc_0ۗp@4.7=~y a/۳'K=7W~O>eu>iS;_aCı' Aa!*%z1VK|?.lwً뫗57kW)I !uN9{N]n%>QFiv 4˫k}^t]v]j"HfӺbp;/cl5k_{?#O8 eUzv4 zvcx׫qd >L!LyS/[^ov1cJۥDR!NU/QG̵)qWN7~qeڹ }<3H Llb ٪h1vI 0YX~j ]}Y'I dd176X6'0H5'G6_ҍ*'DVU8;3u5u-0ٝ/pҷߖtVRTҧgx(L4{"lՍٿgWQV% Pă<nÁ7=[̮C \y3 WCd:jCG;uڌz;ܬ9 +2 &_a|A1r):uq=;w(WQ_P  ֊h' Azzt-G]\]G [O?h[߽{y.C!;%uQVouWXssռ:`e Jpzei.:e?UFZ;{g_wpAc D(E xqⶾwWTY(qvCvt#uJl6F*}i&ISK>ɚ6^ҸlEl~l|K(S[P8B]ӱ̟5+gvtÆHyQ/!X@f\ҙYӧ :Dvy5I7VX߫_;n#6Tb:m`V4ZrYB2jjaʦ E"þ!ɟʟ_*(, WF|cɛɟ,([[\8ppNs\0P0;?/7???c gCl*\X4  6[sqh}vy^ʽ!mk0l@bœM 6A]Y@3oo=4 #$)AymsIP02(NJbb M(9WA#fX2PUXu Mh^:?vF7i[]Z(nMUajc[E%We2"N^Xsf~$0_1u2_$/b71=͔ouE/M/ҬLrZo"dfm3(}X*l#1o/<_Y_=b-BS M[;8)- .^udt!ڂ ^VslK&֭ZRь Ma!D(>iB0^?o\!;\J/%fz,x >@ڽ)y]}">`PQ$-3l܆lSJOQNcs`{99pz0ӿYSSMô?lptvouyinp"t& WGM IlVu}ؒM\fh,`6.bUC[DSV.4,^P[Ӑ6yC .G͂9油z MjBߦiE Qi14G#?g'\ԣ<ϓW<0#E '7b}jyi;5@{5fa^{.MD"Jv W,S1_qߡx3n{xҮQ T`Ye`^ uGh$^{鱪' ӦMjYz&TԶESxl@vME~i/cc`ʷY=V~MM'r2-dcnxgfTdą>-paҵ# :&fZlTANd xZP[XTQxч֬_C0u…=ۡ;ݧ]2f=[k\h]؃l\lpUU~r;u!A&_]q :8 V;ܣ){=CUUk/>?Hք &k^F .)m`&*ä'Ϛ{٧jXyMb3^ITa}Ʉi7^ h֕kO9Ժ/> /p-Vp#_IzF }2pFEkN/L2cc@ VsKuPx䋯@1ZBdv6[]$lV$DsbӝmϽ>2|P(Ӡ]Sz2"yL^rvmcIsuԯoeӬ)\ҥ#N" vymÝlk׈Jb*Jy%V&aɛk`j7vx8jf f4cdqS@A rLd%ŀU=Z%iI"oթrc ԋcR(UvʯFDNidpf2&Q\^HνĐ.l@3(:@gW-z9*:v|.Gx/q.sŤٞT>Kf!`@$&R4DT.>,m72k8iܧ,k7r㝿7V0f&M= |}Ez(wp~qh,{}^5S&0ǻh̔"y:c+.YZ-rҵKSD cKo_}#NG?C  MxCEqbI(dx( 8poް ݛsL|zb&.hF=;FX7 a͚5semQmv`|efAx%)f$ dh]jL_]ztמgglz嗽$hFݝMX._<|zt]C>6,Ѧ-iE|>_"~

n~SY%(@L/YV-N[OXi@h":|K&oeV& J'a$;a|`B & 0ASmg QpSqS:R̞X1B n3fpy#({'F((Q/|EC?HYbxD-BQK0c_Teo=zկZ^d ({2IX+7F6 >LR@[2mhZ9s#q.0H) :!)(P4ZЏ;#liD d'g ]$nhwk^GZ'.s`.7x~G8n~O'$-Z]LY97%~Ij߆%\I{sP$rbe=dT.u)#H?4&ZhtBn q+/?V,e7^smC:f.!>ap2#Jؕ'_<}w]{u([x q}G JocGNs;pm jufTRI`ӯz憵z6ayWD򠡍mg|>oq?I5tԬ;^Yx|ת..8l+ll?Ϝ4׏p% J/35[yfboc$;vvC+%PJɫHshVmy?3yRR5c7'I!7|6KZ1}=p /Bk[<X+Yݘ=;ٵoƅӞ+.zxo< ۓ(풟ߩ>u3i>Ȉ~G:TKHu0g͘Asax㯇<НpQæ#hTx5͒B.ulhYxFpAǎG-rQUm0%g38}l?<&]ߠ'yFj4ϹWܼ] @7O<,c؞}no4,7u/8WpI؏iu2OEJ޻oȷYm^$\[z'QJLʴy& Wijֿݒ̷{_G.2yVhm^hw)?w2[4CDֿ#8hE6_%+Z{ G8eBL*DT^{O= j^,Hm؅GTt/go7}o>@n~jHD]1oIݍsum@0Ml!UYuϐ6X&oGUkf]щ+Us3 y\q0Uv"6tN~mzpbxl;s~h`7GƦ7䒲+޻w_x[]~i37q )qߎ(9O7H5< A ϕB;pÆ7|7ɰKcOhdfZ ,.Dww(2zz$vVA| = 6E3 SmNԥ@;KP |86zt˿r:҂i%u:g%/C6t.#ک?uze3V>s~r&i^0rtÚ}8O]6E L69ιJoTaLbqp\G0X{O4!௦M>ܳs4b crYg6DaPGORKN.aUݰpXGK /*,{ռ?H}Za/m,kT92[;hO7e6F>ߵ3Fi]kFu^uK;TRV M` - NeY&;j]S+\6ūoXȃAUŠ@;e·R6]$ކ>ق\rW0SSg 6a$R_N*b1F0n@oEғMU-Nn֩3HF-SMI53fcNQ9KM%WM];:'՗J@Vi- JPЅL;я9|"<^D!gC7 mk(-C{:D6}ҷ5cj\S3q+E&j c%M$1=P[n\ z $hmc07c @TG: IMam.Zi;ROp*A`GJ;S`pdDyS5Sy P?3 YN ]ԯX w.ō2n@4wZ׌"!N*GbdLhf8(!)-۔?@=#oe'jBشWQ /> ~bh82dvg +F1if 4`%dI4GdDSÐa)FUMtrLu3*'wݓt2~+(?Žtc/e@=52^O_!N Lr8r <ڿ5yRhHfp]Y0we'&.v ǘ@^ ܠG8M=oOS,pLK?OKh B:R22BAܝRd0m(1yu5D뀡̸ |W*؀]"\is(Z.q@,/x4 s N3\ub ~`BhRlTxP:uXh9H K/ AsxK@Q6v2%lt?DH$P0dQa=(pK;>frNs\OCBsBv|ԁB,P:+-NKVB6+.c" WXz=?V kQ{yi˫Tɒ$hC7@a# *{:>0Tq+,F`ڱֈ 5I* ZȽv#(NAympûY4f:Zd+OxJ ϥJ*m Bܞd\{|S{UY|Vl<8TR90Adʨ >0D>mbt 3h*"Wnws*$`Q9D$E "!xCY2P܂Ch-WcھTNF؋CR\bx'vLߦ]CR"K/)]6hbJZjNnHUM0P-N۴8;\^:lu#NiړZ̍#K1&!Փ*w/^ ^ cx,tn;JgL.|ƀSf )d(7aш2rl8frʿa QEaL3\a-ӂGDSf-24QX4s!v)-ÌJiFcϏr[_\q)¿p !ث3ѦB4XImA'D&Ul``5#%Rxvrh#2]X=66'͑~vܡ(ƣ`wH:/64HT->'ā.k}Ų/ V292;S,Wa528FM]Ĵ!ҏh 2A6p{(G쒼z犦Pe iD4* p=@\8y:h1P3L"aⶁɜ|yrBbi!z%Lr 谡 !%ot,iVv']bAƸf9PC8y>GGw)Rn "פݵN=A:PZp[PE,,VHUepDU9R 98.,^ B;u_xʏ (#/ Y/0w\E)vXC 9? P/AϢSBg RXC;&^~VSt >k#6iu`(jI_PU+@a= a#Cܨ¼c}r#Rx(}icUs[W&-%$Ev'\E 'm(r Jppc!;;q,ah @gE6 ߕkH)QzznB 4'k^д(VyF?ʻ<ح8P@Dưi8ԣ5DTSsF+`]󨛟-J9CXۄAN*TpyvJu{@-1m(ЭB5{A\CHhT[[[2nj n%bAG 7zI@,X?Xi$#eM+H Q'P'O"2e%z&dӉF',aK"&kRLAhE,Tj<6hYւ4ZbN;Xy/zI kˋf20 _V@I;cu`rM;jȋ1MBiek92Idu,0"<[XB;e܃N5{ƨS~BBaŒo=H ̙N`1LΈV hNmh[4u -+ܯ"]`a|s1ϛꎁ`Aa"wm2_y]Ӕ&gAV zU,}/M b+@fWRI#'" ;i􏁑ZL u RN" D%tf1(TD /+)c35DAB.+KZ-cXص5=((h,c t釵x#9 s3;u3i m'Eww}O.m$V F ARڶNzpf"hPȸE{G~F9HŦOpvo }Јy˖yxIyT?/vSݝWޏpm3h5"Jg)cu-醡&݃n'L+n]P#aHӈ¶Uh[I| e8a`$7 }zX&,r{)DU'zRE3"q ptF>4CՂ{nܰq]q&4 kd8hO`ѮBPna2A؃yiuV}@{%1ĀY" 5貶$ XȪ][ڶi4 = :t'& p 8tfHN"0vLNT]" CxR'F:68!ShH6P'EÑMQx(E'mي awISHԖG@zIlCԝ`jXѪ}΢ )pn)V'Y4y/۠ )9h fcHG#Q#熋K9#.?TƢBތ bs)e&q#{pLae뽮Ⲙ6XVbjJQ;SgZXuPD6zغP7As8ڸ%vAi5xnplh" _b\jvj^*cl)$-Cʼj`1bF'IspuHmPѐr`lZILw`F5%5#q=nۻHYZԜ@omN=t`Qsk.I{#Vd{PWwtn:yceV^BndXgH@vB2|XA(fWDai,E,  b< $2nDnQla$hO`4B 8{*6hq(qyhAIc )5}ULEwO,kLMD贄2f~ lt&Sp]<k/8,8;޹oi$ LC9cu= ̨ݦ!E?!6#@ܧA^IlW̩8o#ƕByA&Fm鸙aqy:b, 0t 4% vi =mba$;ŌScg,@}ZA!2ۘvu1{7_ZV^~eϮ~̣ξ@"~Y_˝)q3T+ | 2+aXK`%ظNxWecC?mڜhC7}LFÙ_~cϙ`Ú%Hx$С1M*ܖF 1|x1 W.Ir(ˡbe6Q$!<(XVTA 6+"$! S OK`V^`Ünw;U,P4e.S/H( }dtEEªQ%>GJDEF1m**+f s8sD"Q;@Q2<p{7.cشe|\):ES ~m9v9=p ts$5 l9QpWh/#n vaơEih!6)<!RtA2,mP$4g6$t PdH2©a(ć@X4eUkAjVr0A(1hdk{hH1"Et ޱDz9.K1T݁$`RiSR3P)PJ83HфOq(GUޡRы#Ԯ x4` 21CD Cxc`"ѐCr]i+xp k)7^{C[ j&)R$LP+SjDjR E"YT3|c2Ȏ2zM}GCD1?B nCilQ%QΡ|D4xpj*=GH!2pQ2P[E;'|Mf$NC:bÊŌ+PVc?L?]46%+ # b ,>c_k<㕻:o.x1' UۯرS=+UӌL/At/ZУG/$#%/*j:~%K{5ǝxҥW\dQ/b£?lyղOͿnάi0>K%޷~;xђG W,|7?N[hNiAsO= ,܌!Hp؟QO rH"\UOOa%_ '0طU^ܴfY E27ߴbԿZAA~{ǂE߿׮zMUhb)xfY,[jI d.A 59UذcQDMAZL9HQKDfXD *ˎV"/!\Q$9x* <[6cba$Hq jӵq̛n6WRw"Vw{Q67/]JN I3@@LP; 5AFvb"[ˊmE>k (چ"Ӻdyd0A!Kag`3 =,`G|bM#D5HmbTc t_VDmΗ9AeE YKM`Q 2k+i6q YF y2^v# Vw3>dyҤ A @lY'W}8塛ᒫgGj{LZOOCW;e$34瞮)knUȺ)o/!-/*{^/}i,af]wܻ~VgYIVv?x;x5[ZA!`sЇ0l2;oqAû(=af 9 3x:p(0V0 CbH%6d91nff5nX7ijv1<FHx_J&#\"H㦁^n! 7I^RD KPΫQ%` DGxiH`җAi'Q0v3D՞H%%d&5Ke 1B]b` s;+dM*0'R>b_ á%p؆tUPG\s()c!+=nPPES= –˜ *ZI#(yI l<lJ@T(i-iԫB[Wsxt |2xD̈́6"N 9`APyC$`Tu1{,T.Pz`LhUb, ::D(]@e3r.ŋx;5wxJRLNR2w![ec]9\~%LV "Մ*$4PaUf k3$E\11rI ^`AUK _1΃5!=H9bf>-BSb[8Dy-UZFʘq"DFifK A2p*%Y /c(aN"HJqTuaɍ@<wP=x4hpʔUە[&A26ֻg+b|AB fM +Dt;QGΌhЛ^5 ´W~JDPBK͉裏M&}A_3qX(#$fsL;(F@p7X_NSqYagj܄~=˺m#:w/,h̷E~k{_ 0lɷwp{qߎ(+/-(9k_/6t~&+-\y}kx<lP]HؿÑgPX0_Geڔ׽CO#\j_|_ߵkk; }ecC⢙~!c]Iؤ+kcŮ9YQ0LtU*qtAlDCbHF*Pݠ2arxt c HpJI1tBJd5)Q]E| JinB4G(|ES㱣 |/Bl7;<Ά@#cT_i`zt=|)ZϜkzH$,v ,+ o4,xXAËL,D3)b+F˓qWf0}YO~(#`˸b$s?Ͷ$A+[y^v.qcNCrɉRX'c[[뤗ANY1-i>'c^;:?r7 J}ŇHbk+z*_㹽&i`ec EC2^{'N ݥu+XC fV[0suEfIG“r;d@@f͆TOJXpy\6d(x?J ̛_ۼ Q .,<>'.4tC!TJ+YU nw {g&KƭXۜ. T[RT66/aF+1j&t3N(B@9 .R1OUvB =p .:Q!Tu >U <v4 HZt; !bOD$1PkD G6QO'he$2&6Q0ρj}@|0c,&iEּ5I\UZ=BȂ~t&&^)5T]2'_! 6 gBVİ3՜0I&wVZL)zDT(Sʠ&)C `?/$p*%]@/fa]''/Sw$vpP;N=i34|tLxF)E*!CJQMv.& pӐn)* 07<)'h 9@C5 chNqlFisD@|+3E&a#-q궄i[SPdy]i5;3R2/҉Cb :r/sbbZFv{'ibA{ӵ`N%F[DUJQ >SAi5ti!U6tyQL5QS۸tgl Tņ}lwbl@dukV4v8=(ɥl3_px*T8 ]xv!W<\4⠓ȭwllXg5 XE._h{ eUK•gk({_FaA4#+1"ȰNQ\6,⎘Bu;NC6SҶ܄ۗt5~eI'-9d& @$Zu"\\=j4>в^վzsjnhH)-pu MV`j դMk4Q|wm݋<,Bqs~>!%V>"xcH4x2OQ`^Bp1Hqbف(͛E:E,ipA iVu[o/ ]ѠGӂ\ ٪ &<(5 x&k"POS+lNIl5umbugj._FKMDa^hX# hFet. Z56uʷxZTVSkG{L'6G1F"Dm4&pٳ*}9GPv͏g@%\EK.~?6-еfHzb,Uأ.*~¾Ŵj0ZF1Ak̋d-hv#jE0Lf vi@t)sƽ $7_N|l.8#CnXAkQH"Xe3 oS@׾=$Wafl/!I"&-,.A-BjTVwőu̝-xë PE%FlNU/7&gVK_Q11NZ$sAu)>*4$Ռ@jZGi<  e(U8Vz"Px)$RZQ/cc\[9u'lP1 %][O!`XqSWÐ[2M2Ã+{HHm"* !)ea< t1W]HbD85%u+Tٿ䲡 V1" CEHV"TEE*^v ̙XB<8@78y0dQ$H7ޥ¾@~ȺArNfv-H H!0iD؇q eV@D E2"&+ D qEroaREPEbDo +JX&SB' yyI;EfKԓ; KTp'R))¯"kD~ǎ]:0Ԯ`ȡVW79mxZ@\2F2k,h$ht7N%I!E"XTw7D#sm ECOd@؏P+uS7_3|s{N],/n0Qq3Rm[/,` cS@)fT 9.|/ x|sNu|q ,5̘ɘ›mN{8-{g 5B;'3]j=5hl|U@ͨqJ0eg䅹,Dw$'7T[MG'H )f  h6l?jbS?:DuS1Ы_yIeJZ LZ@o$N];ܢ!w=䧫kL!"v욫L{/9wQ&Vm|qа R$ֽ_鑇߁<͚]KU qNia.h "K "2M3i2:TtWym0|V|͘4>шL (4-Pﯞuw{ፗV^{?s"R]$y`%ԛ|EڸʾzodCK"${/byk>d*`"D>3FBNԻտkEꚺ}MDTd_(9 ?o>#b?&mҴi0dPJ,L##[OROd}gZ7oVeњG@=-"8<[Kqx&Z ! )=ЂM@1x9hpwLAϒ+m om{ ۥQhJzf4i^,/웪/yV-*H#PԼjV&vz L™Z,uAƅFFG o(ͻX{&Omm[He,V"$"$13_Kο>#EeEڦG]0j}4z| \~M (ڥwV'( ν E{[gjN-Iԩs4s;J;z"̙3}fGO?/<- IՏWw^e@y?3Yfμŵ=%,D b{t#߸{+ { +x4&s #r&ITZ;2z=Q?Jv$y:Ko`k<-z͘1gL.$$Ј@ TnעeKkhi/ܖ Lkѧ~zϑw}%Շ M+״R_)gP j<\ -V{{Ͼ✰8f?а*q]%S~:{[st,nh 76 #䵗h6U#rjvz_\dl~<5~~/ᅓq+uo‹ѵa:MI_41 ͆bWյ{!IDjzgVΕ$!cnDҘOy?S?&Ve J|: +B3c$E>I c$Xq& dS %SdO\Hm z`_txkr~nQto6r m.0Җ>Rv5SZܚ?S/WY`w]wkJ{r`WtQsNFBzA7Fk:D?BKX!& UŎf6L6PrzN~`QOi&+9s|͖ &M [0 DXuY@ ^*.J2,z=Fg ' /y~La1lwZ~zN 0֩NdFzjqpB-P]j3Jx,2^e®YXBFeIএ'"flè}JҜm@&38=pȋ˵?ӊdpRNˏrZjNaVZ a\Ժ$Qlx_5hyH ba4BJtt5)BJ`׍PhcIԣ`()0AϚic N44A~OJ, Jp9"+_ [QBَH%x&MQ|:n&h.رHPOwA5̟KrdoL,+0gAܪK.Mfe|asj_q:I_uYf^Ư2w圖D>^vEUvr?[AJʫ;hsC=5k8: O†+j/(_k/,;hG4t=c\N Y)#@v+ʫiwZ~K9 ^¨*h-Xdgc’w4%$P(Xr.MbM%le"fzdgk9ڒGe#>P|ı4kvQRo,ֳ wm`|b:M>B %hdE fKor@>|{f~?n LaiqA%v-Q%+-<~dM;hX@c8;pT20ɏw%[G /g,J2v@Qw@GJ ~-g7aѾ /'r(%οjqd&iFI9pVy`AUdykЫގVF=|Ax ա}$C'ͩ@?S(ĜN҆bׅ x3 XHPǦO0N k!(ᅷ*b(k>,=~_<C2bnuc)F3zuܵW`&V99,GM]v.)BM,yu3cN*Lbsx7F/\Ç+62pY#ZwFz!R lhsHBO'y%n lRJ+wWbqrorj무G`H+W_Ξ={Ȑ!ԓ>Q8tP 6<}+ދ/屏!U5!!4^/z#HTڥ$ceJܤcuN/ 5>xi5`qpÏ~ : )ФZL9TZl|Zo E' `ƥD!]!Xܪ\h3*g v H  ~3-">t (ENof_SYՀvxgg,uAN8q;!H I Pcr6ȟeZٜWz+Wڮ-ĖyEzT:jk79{>: 8T-(!qұ;VGYY5_^ʺ_\5 l{>PJ?oziG64#>{Uq˦Ac#D@B6 sɊw? MEV`RUo/Ng/_Ł+bEqVe))t3:!s{qe%!s+]MvǟO2>_\:CGZ*Wuض~ldTzI4w })6 v@cp jL _ǂT ^dɣ'0|J ٢M6̫WSB[ 61(nR"[3/\!\ud_0 YvD"(6z갯J]`a j IxdF ܌pꝴUuf<^%pF6j"ϕ `c> i"_`v!g˾E5\i9 M;sqoDwPCB<' Bܣ=NnPٻ-[Us=JG}.t{I;Nϫ7:9͎:Fvu@k= Fw+zwtEW_-GkGwݥ.uTQjgt,w?co>(Kc$ |_{b )z]2'X% {Ol1)$f$] vBz WKaax+- ,3.yB* 2ټıL1GIdTpldJ[  Wg{ǵ@^5 kQ~^ЏjќD +k;uX[v]RzO>vİ#5}>&o׿69t(Ԃ ^x֔b ߚjn|][c5/_^}}4m\.DKW/?O=ݥۭ7ߞaRĨTdِRBN/L \'\Ɏ"VV7LS"pv_T%3v&z7,LȄZtiT87z2sIJSL?i~Py`ŀ1& ȕ@}8$``be$er9?8P[ą/BbTf' NO+Ÿ%,K2));3Bы.z@o$֭gnw>f;mgSh `998ƆR/=0{N }-"P8=\(V0/l ͊fE|~߼P\DGe`As<\8p~tqsJh2!Z0=^1:i4 ],I#W^ DѰڙgQ[жP8AHᏊL LݢA/B(UG(@ ~3 .ivvlBir`8sͼKR-p&9l{"; ܡEe1|?^)H7>#odi,k:ΝМxytt:knT;O>87sgٿsA:ܷWAHcNg"fϷ 8Tfэ>iVjitb_&˄q55M:t_Q^"؆Ѭɛ1̄'uEݬ] JQ\~.Kw(WǨ vTƌlGrbuG=w*戭[vwx6H[؊= /b0).,S ߓ0(e9ΪF[(V.mvE6C c#2)57NR@ՆPVڈɬm~4Of+u;{tlG!͙ygzE:v?rSthtaPH9r2eϴ8HNћ|-zG@o-/+V8P:S@mzTFR5x1aE9LLq'(4O%Y¨xڵPvwqg5U9ڍf4EgJQR2%n0ѓ*#$5a!be.ϖ$I$E5jps[k+JC:oI?T /]~hm#cH,#I754}hBs77Li_a.gfCKWծnvX4O:'vfAl'̰M:=;vB-Q{/+V=vE5&Pa@NQJHg"zҎݽs>&? cVWfaة OeKݡƷHo0e 6v,P˵I Mze=YeSnn)x{}{[>&ƻ^U 麔y9D-L8֜&ܫ۫O>ȥ<xB #>###޾o$P"h5s"kOh6\f[wak5 6B3뗄:ꍑ:+c"Iyl`ɢ5IOƂԄ$ԢN@M|T>$\uuu(K@M#`h4eN;2{;7^X0B/ެ2GiU=Mhc6")y{ B#X4%UYΌPK~7,zvW=)Lmi a@ZP.8TŔ q) C]O )nQH\YW9 IMTC%y!VICWU `\W8kjiǢR7\ԈD+#^Z#>t .`jzox" 84~ѽk-dlc!}Czߡcȡ/@pRUCMP]b) "C4;t7|u(gRKW೯@- 3<'a2Unб-/'Aڑtxmm<懷AvnẻÐ}e?W{ ㋻,9EyYGb-ݚC͠ 꽜.z.}Ou#$V|H:T}j4Fh}X6(4 lks~^LYO"@oR^410@,%Q_oSx{꥚a=  jnU5i뗚iucTH&Hvd%*>ɽTD DU52s/u$ghŔ ZiTD鬶R(ҩ%"Q&uJqQl,Wݓ~h#r-X]yIawzf`^]Hs]U[ķKgf):;S{a'bv>qKu-ӻEC^V+u[M̝(~~'rN簧Iwۓ/WX?{>[B7ȾظX}9we"ֱJwгm^}UJ# i2A*`:v/ r?l0f] |%w\25rfKXe>>1Ĥ73Kwpvpge7X8OHOu9D7 0.l}D > Ŧ܋NwN2O]b+#@{ %m#f\a'k#cYΜA2B\F BTq- +9@DI,?ɚ4/0 \vkG;;>%NP#o!lC<_]Ȫ1$HqC(DSdg/5'AKìbHȴ0}G}t)p:ÓMTp2G~jh;jƮPݻVmۨ'V~MFb`[y$I$97$񫯿rAh$|G]dlc`-|dGʅqI"X,mب?s[mNh0/]argz.nj+-[ ~AK5|lږ!l8YKSBFeV߭wMlzX001 Z%vwߑDzv s1rT:4RՏ>i^qxh$fB2;/"1#H8J+2a|\ = 'fM+tvP<SE_ fCw!nsB%fB3C֒M+fK{6[w3x@b @1೅"@q \v,@$a$(3FK=8Xm" "#"LkEe,t)Q^۠ӀaFI'8 OegmV{D y{1Y3k1DcHȚ0oŞSw 30{W Ϲ'm 0le:]}Om)VҪN[VYLAO4vltU=*3po3RNX 0Vii_w䉜s6 RhtLrJ֎B# %u8+ 좪OA]9,'Q-7t6%63"t]mu >lB ̵:͉b (98l ',fUG%[~D-ږP6 ~$ʈsk mLR6ܢnu!՗֧jq]Jk6gfO.-#>#XrJ)"B/ 9cNn tyK؃^|ԥZlv2KL : 8(0pR).e&ѭxO˦!vj 9AN ;V7h ҵ7I=ף*_bZGj޺ݷ`iepfK1\}#[\&gLlvG4C\q PYj9bX=4VCz+392+SɜH'mV>!t#;rfsZfX&b饒vQP׻ .ؒ h L0T38yJԔdF}57n  苭V(QlUp e^a, řD?7[dа`ʥvPDl(i`q K~T`@a Y)4i~YfP[[\4y~\OZIj6›'`l7ui),]Ʌ;[vӣS0䣦F͂z*,SR̳8Y"[fw_xZM- gvQ4t.oDZ]{[nc=cuU+L K̩*QiX,!ophYAav%[0 4eA.qdhT k , })n A_ ^P)g.U #AjQ[Di|~c"[ÃF{@VHa#$rl"d;r .cryv(;!v%5LR.r֪MRgi)'+ig"[+[^ywY3jT$  (VL*8A$%|aѳe/;&Lvvޠ[m`6G"mxRE}L.s}Pٕd#Ev^jIy#U\|/u[cԇ{F0Hn1uKZq7p<{ѭU=PRc x{UPQ gH'W׵7{V<7mZ؄.or܆5b9MM)Ymj˦OWgxH&+}Yyr3a*d9嫨&=/vzܥv^1>j(_Ϊ@ 3nptYYV5IwgUwЀ°MQQZrj*G Ԅ9R]{* 9Qbjnn.--Uw}𺆴C5u3qFBD`K51:u“bũyBmCjpwa~Re`VaD _=e>a.))Aɢu uzRw]ɢPQ`BaQ0\X.* 5 BEp>) ?]::_~?ޥ~\AΟ?_50*p]1`99}Dq_]Ja!)bY ^{<>?PqlOP2ت}{8#i tWozqJJQ-bp/[ B8R;yʬ-N Cݚ' H\LI^[LJeq79{>!C0rP%*#+@a穃]r3UUn*]rEGӐTpZor[+%OKn-'XR?)];-{Vhu=(g~sB.{mw^%ȭC;|w^Kmu;oc_K)(%UAd_ FН?Vuo r`iASkG:Pvɷvzܥv^,fsUs:TmʬqMrҼӗJNغbM}q3DE֦S#Cr@rgKdTcGg{|o\[dYT:d]!KSKa5H[pHB^4`iA;҉Ex@D윽mT AtؙIENDB`.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` {.  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =\G<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a."+8=A?5:F8O :>40 (Code Review)`"  Review Board a&>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/K 0 bZ(  x  c $P R   x  c $4VIN     TA ?"6@ NNN?N 8 H  0޽h ? 33___PPT10i. P+D=' = @B +rt l *# P 1d(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =xH<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +,!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a."+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/ 0   0 ` (  x  c $@R   _  TL ?"6@`NNN?N P  %check-in to mainline of the component(&08 P2&,9  Tr ?"6@`NNN?N   wcreate static version(08 P2B   `D?"0@NNN?N  3  T ף ?"6@`NNN?N a  qbuild phase one(08 P2B   `D?"0@NNN?N   Zc "`` P  B    `D?"0@NNN?N  B   Tk ?"6@`NNN?N `  add the component to phase two(08 P2c  T\ ?"6@`NNN?NPw,$D0 m code review( 08 P2  B   `D?"0@NNN?N ,$@0H  0޽h ? 33g____PPT10?. P+`M!D' = @B D' = @BA?%,( < +O%,( < +D' =%(Du' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(+8+0+0 +r \+#  m1d(@   Jhttp://traqs.intel.com/help/traqs.htmJhttp://traqs.intel.com/help/traqs.htm4http://traqs.intel.com/pat4http://traqs.intel.com/pat -xhttp://pat.intel.com/wiki/Integration_Testing_Infrastructurexhttp://pat.intel.com/wiki/Integration_Testing_Infrastructure@4http://traqs.intel.com/PAT4http://traqs.intel.com/PAT/ 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 R___PPT94/ 0-? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =xH<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*      !"#$%&'()*+,-./012345689:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|~,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       -Analyzing and reporting testing results (3/3)..- TRAQs reports Use option --traqs or -t for Sanity Tests Script See results here: http://traqs.intel.com/PAT Now TRAQs has almost the same view for both Unit and Integration Testing Detailed logs for each test are not available yet, only summary view over all tests.@^AF1@c0QkPlans and Known IssuesPlans TRAQs view improvements full logs attachments improved filters for Integration and Sanity Tests Determining a build number for Phase II builds or meaningful build ID for Phase I builds (e.g. ). Collecting detailed platform information (including CPU) Adding automated GUI tests into Sanity Test package Known Issues Sanity Tests failed on Intel64 platform for Cantua MC (SCR #5587). Fixed ww33.1H PCAHAA CPA,  Reference Integration Testing infrastructure documentation: http://pat.intel.com/wiki/Integration_Testing_Infrastructure TRAQs online help: http://traqs.intel.com/help/traqs.htm Solution Suite test results on TRAQs: http://traqs.intel.com/patf25%'-c02nc0c0/rm%# m1Z(@ / 0DVerdanaic0llx+F0"DMS PGothic0llx+F0" DArialthic0llx+F0" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8 F0p@ppipp) G4BdBd([ F0<4dddd8@0lT+<4!d!d8@0lT+<4BdBd8@0lT+h___PPT2001D<4X0___PPT10 2___PPT9/ 0? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =A<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       Q & A(!?0A81> 70 2=8<0=85!c/} 0  p$(  pr p S R   r p S N  H p 0޽h ? 33___PPT10i. +D=' = @B +r:^,# .1Z(@ / 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖ Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 2___PPT9/ 0? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =A<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       Q & A(!?0A81> 70 2=8<0=85!c/r/(# .C1Z(@ / 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 2___PPT9/ 0? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =A<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       Q & A(!?0A81> 70 2=8<0=85!c/rw# S1Z(@ / 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 2___PPT9/ 0? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =A<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       Q & A(!?0A81> 70 2=8<0=85!c/r# =1Z(@ / 0DVerdanaic0PPx+ؖF0ؖ"DMS PGothic0PPx+ؖF0ؖ" DArialthic0PPx+ؖF0ؖ" `08.P  @n?" dd@  @@`` .  b    Y C3!DA?  %hb$E$0尋H@$R$Ȃik"R`R$>םXVw(&ڛSR$˕}ڳ;R$Lpvwq:/K^0IqA!-$b$K/[=c`Aib$;o5DIn*+z-cb$qA"6]1,? <b$_!nZӌb$+Z/b\J$ b$R{gkӘV 1εb$q;xMSW      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 3f3Lay@\@ ʚ;z6ʚ;4dddd,8F0p@ppipp) G4BdBd([F0<4dddd@0PT+<4!d!d@0PT+<4BdBd@0PT+h___PPT2001D<4X0___PPT10 2___PPT9/ 0? 09.14.05 ^Verdana Bold 8 write title of presentation hereO =A<"5AB8@>20=85 2 1>;LH>< ?@>5:B5&b `  6'B> B0:>5 1>;LH>9 ?@>5:B?.`#Quality Control & Quality Assurance"$`#"84K B5AB8@>20=8O`,>4C;L=>5 B5AB8@>20=85`\K45;5=85 :><?>=5=BK 2 >B45;L=K9 18=0@=8: __declspec(dllexport) 4;O 2A5E DC=:F89 8 :;0AA>2 ?@8 A1>@:5 A0<>9 :><?>=5=BK __declspec(dllimport) ?@8 A1>@:5 4@C38E :><?>=5=B (2 B>< G8A;5 B5AB>2), 8A?>;L7CNI8E MB>B 8=B5@D59A Unit Testing frameworks: TUT (True Unit Testing) Unit-- CppUnit PyUnit Visual Studio Team System (4;O managed :>40) "8?8G=K9 AB8;L: assertions @>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=><*[*b8`  dO``[` ` t*8N9 :  !,>4C;L=>5 B5AB8@>20=85`@>AB59H55 ;>338@>20=85: ?>;=>5 =0720=85 B5AB0 8 AB0BCA (passed, failed, terminated etc.) @>AB59H89 runner, 2AB@>5==K9 2 build-A8AB5<C 100% pass rate <>4C;L=KE B5AB>2  B@51>20=85 ?5@54 G5:-8=>< (:064K9 @07@01>BG8:, 2 8450;5, 4>;65= 8E ?8A0BL 8 70?CA:0BL) 53C;O@=0O F5=B@0;87>20==0O A1>@:0 8 70?CA: 2A5E <>4C;L=KE B5AB>2 (~30-40 :><?>=5=B 4;O Parallel Inspector 0 8 Amplifier 0),|`9   "8!1>@:0 ?@>3@0<<=>3> ?@>4C:B0`!B0=40@B=K9 build environment ?C; <0H8=: build-boxes 8;4-A8AB5<0 SCons 18;4-:>=D83C@0F8O ?@>4C:B0: A?8A>: :><?>=5=B 8 B.?. 18;4-:>=D83C@0F8O :><?>=5=BK (Parts  @0AH8@5=85 4;O SCons): 4>?>;=8B5;L=K5 :;NG8 :><?8;OB>@C 8 ;8=:5@C GB> ?0:>20BL 4;O 8=AB0;;OF88 8 :0: (AB@C:BC@0 ?0?>:) A5 :>=D83C@0F8>==K5 D09;K  python-A:@8?BK. 0 2KE>45: 3>B>2K9 48AB@81CB82 + 0@E82 4;O @07@01>BG8:>2 2 0@E825: >B;04>G=0O 8=D>@<0F8O B5AB>20O A8AB5<0 + A8AB5<=K5 B5ABKq`.9 9```q`` ` .`9` `9`   S}#,84K @53C;O@=KE 18;4>2`0mainline (?> @0A?8A0=8N, ?> B@51>20=8N) A>45@68B B>;L:> mainline 25@A88 :><?>=5=B G5:-8= 2 mainline ;N1>9 :><?>=5=BK >B@0605BAO =0 18;45 phase two (?> @0A?8A0=8N) A>45@68B AB0B8G5A:85 25@A88 :><?>=5=B (:0: ?@028;>, AB018;L=K5 A=8<:8 mainline 25@A89) AB018;L=K9 18;4: 100% pass rate A8AB5<=KE B5AB>2 E>@>H89 18;4 sanity B5ABK  ?>4<=>65AB2> A8AB5<=KE phase one (?> B@51>20=8N) AB018;L=K9 18;4 + =>20O 25@A8O =5:>9 :><?>=5=BK (8;8 3@C??K :><?>=5=B) Scheduler 18;4>2: Buildbot (open source)(aW>&G) dda` ddX` d & `  d  ` &`` dddG`*`&  % E  F $^>;CG5=85 AB018;L=>3> 18;40 (promotion process)00`0@07@01>BG8:: `  Sanity tests for Phase II builds!! rSanity tests can be used as post-build step Build notification contains additional info about passing sanity tests4sAagA,!8AB5<=>5 B5AB8@>20=85``B45;L=0O B5AB>20O A8AB5<0 A 1>;55 A;>6=K< runner >< >;55 A;>6=>5 D>@<8@>20=85 A?8A:>2 B5AB>2 (.xml) 1J5:B=>->@85=B8@>20==0O <>45;L B5AB0 !:@8?B>2K9 O7K: Python A2>1>4=K9 (2 B>< G8A;5 4;O :><<5@G5A:>3> 8A?>;L7>20=8O) >1J5:B=>->@85=B8@>20==K9 @0AH8@O5<K9 (API 4;O 2K7>20 C/C++ :>40) 2AB@08205<K9 (API 4;O 2K7>20 python-:>40 87 4@C38E ?@>3@0<<) 48=0<8G5A:0O B8?870F8O, 2AB@>5==K5 B8?K 40==KE 2KA>:>3> C@>2=O, exceptions 5:><5=4C5<0O :=830 . >AAC<, $..6. @59:, .!. B:840G /7K: ?@>3@0<<8@>20=8O Python 5:><5=4C5<K9 48AB@81CB82 Active State Python 2.6ZZZFZZZ```F`` ` +.9 S  Y S%,!8AB5<=>5 B5AB8@>20=85`A5 B5ABK 4>:C<5=B8@>20=K 4;O @CG=>3> 2K?>;=5=8O MB> >1O70==>ABL @07@01>BG8:>2 2B><0B870F8O =0 >A=>25 4>:C<5=B0F88 MB> >1O70==>ABL B5AB5@>2 !?8A>: B5AB>2 B5AB>2K9 A:@8?B + 2E>4=K5 40==K5 (.ini D09;) B5AB>2K9 A:@8?B + A?8A>: .ini D09;>2 B5AB>2K9 A:@8?B + 2A5 ?>4?0?:8, A>45@60I85 =C6=K5 D09;K "8?8G=K9 AB8;L: A@02=5=85 2KE>4=KE 40==KE A MB0;>=>< (gold) !B0B8AB8G5A:85 40==K5 (Amplifier): ?@>25@:0 ?>@O4:0 hotspot >2 4;O AB0B8AB8G5A:8 CAB>9G82KE ?@8;>65=89 python-CB8;8B0 toldiff (diff with tolerances)1%<#r1``%`````>`# ` Db.`\a w +*,!8AB5<=>5 B5AB8@>20=85`P070 40==KE B5AB>2KE @57C;LB0B>2 (TRAQs)))a.",!8AB5<=>5 B5AB8@>20=85`*>4@>1=K5 ;>38 B5AB>2a+8=A?5:F8O :>40 (Code Review)`"  Review Board a,8=A?5:F8O :>40 (Code Review)`" @07@01>BG8:: ` &>:@KB85 :>40` P48= 87 ?>:070B5;59 :0G5AB20 B5AB>2 <5=LH5 B5AB>2, 1>;LH5 ?>:@KB8O 48=8FK 87<5@5=8O ?>:@KB8O :>40 D09;K DC=:F88 107>2K5 1;>:8 ?CB8 2K?>;=5=8O (?@8<5=O5BAO @54:>, B@C4=> <5@8BL) -B> ?><>305B ?8A0BL =>2K5 B5ABK MDD5:B82=55 -B> ?><>305B 2KO2;OBL =5 >G5=L :@8B8G=K5 >H81:8 CB5G:8 ?0<OB8, =0?@8<5@$ O,0$``` `O`.`0` ` ('.7<5@5=85 ?>:@KB8O :>40`Visual Studio Team System 2:;NG8BL /DEBUG (Linker -> Debugging -> Generate Debug Info) 2:;NG8BL /PROFILE (Linker -> Advanced -> Profile) A>1@0BL ?@>5:B 2 <5=N Test -> Edit Test Run Configurations -> [your config] 2 ?>O282H5<AO 480;>35 2K1@0BL AB@0=8FC Code Coverage 4>1028BL =C6=K5 18=0@=8:8 8 >B<5B8BL 8E 70?CAB8BL B5ABK >B:@KBL Test -> Windows -> Code Coverage Results^]A``]`A` 3 ).'@((.7<5@5=85 ?>:@KB8O :>40`).7<5@5=85 ?>:@KB8O :>40`Intel Compiler 4>1028BL >?F8N /Qprof_genx CAB0=>28BL ?5@5<5==CN >:@C65=8O PROF_DIR 70?CAB8BL B5ABK 2 %PROF_DIR% ?>O28BAO .dyn D09;>2 2> <=>65AB25 4;O %PROF_DIR% 70?CAB8BL CB8;8BC profmerge 2A5 .dyn D09;K A>;LNBAO 2 >48= .dpi D09; 2 %PROF_DIR% 70?CAB8BL CB8;8BC codecov 4;O 35=5@0F88 HTML >BGQB0 GCC 0=0;>38G=0O CB8;8B0 gcovJT/+)A`` d ` d`/`!` d)` `  d  ` ```       Q & A(!?0A81> 70 2=8<0=85!c/r'># >K1Root EntrydO)0Pictures(Current User,SummaryInformation(ȭf      !"#$%&'()*+,-./012345689:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeghijklmnopqrstuvwxy{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkfstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]hijklmnopqrstuvwxy{|}~ N< Q & A  Fonts UsedDesign Template Slide Titles HSPSDescriptionOwnerStatusReleaseSuiteDocumentCategoryCommonCommonDesign DocumentsryA _[COMPCOMPryabovhelp