kylin-video-3.1.3/0000755000175000017500000000000014214075177012400 5ustar fengfengkylin-video-3.1.3/data/0000755000175000017500000000000014212620632013277 5ustar fengfengkylin-video-3.1.3/data/kylin-video/0000755000175000017500000000000014212620632015531 5ustar fengfengkylin-video-3.1.3/data/kylin-video/kylin-video.png0000644000175000017500000007214314212620632020500 0ustar fengfengPNG  IHDRRgsRGBDeXIfMM*iޠĞq@IDATxieu&v[kZz@ IH(J6=#E'Dy4-kƖ"ƖƖ/1?H31!1YdH$˖F2%G"ERX}}y˽w2}nWK˪2ɓ'ܓzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁz8[yߞ+GKIZU ˵jU4F  RZ*E>j@H /l4O[TJ5f\X+$ͦn!MBTz-.6O4d~=ZQ{6p i8(JP'Ƒb8 *i*}iAґBT|RҸ(H'яGp">5h Ï[4R)$n h(jR;! "4MBC\N>.EC 0V `<8Ѱ8$ZlRY@4NaCE7x6M<.Ŧyyq6ɶǟ}RDՅr_4ChF#`A D f7$ Ѷ3C ü_q0,>xkz*2!+1Q7YF|1ZO,ׇKӿW4gnǁupHkg/:K#tFófS7YF6Ej@44rc2jnq~Ψc|ⅸjMקx`C4 1Kb4[LKA,R"aeY=.{D}-_Inմ4ɇ0^@k$>£P 7AC哣~/Yc:wHe`ӯ`0<0ŵ8LiR3UPI-H/a>Hះx-ٷk~thqeYx^Ec,n ~z[I~4qU/QE/ k/,jxiذC-8b5|kq3}ڦHfGdXWɴ-> q-C'Rm I Cc0ȯ~,7oDs394^!ʼngǤ"}kx0 dF$4#[  2# !0*ĀyLLh0 Yd4 ~GczqZUs05wbNt+NahDqry&0M\q{Qqlmѳy^̆b6 c:t<iԾQ,Uj'2lM7bLgCgQYf䓑$G06 ܦyp}؀hwn[VqFpL0<0 (iA-Ҷҵ|o'd4_>ߖGOIR}D?ؗ2p__Nw=?4&P~,ՏD (DGr]hx᱁ p)A0,5-m />FG!h=XO'~VRi6ǽWr]!C+r2n6KyTj*j /{LBc ^f/2 (e4%nLhTȍv6J[(dt{{zai<V;_ͳxc0-;tgGG7[}UHO.cYq &Z .?NC#FTf7'qO{OpOOWexFJxsGu|fCj[|0Ϊ@ q#f՛hvaa.j7k  p5<ȃ\;Oʘw1.ӌFarldPFI ^ɫ{<:/J?|{+Ger,Wfc7*;|ohZQc8|˫vD\Հ0ku_oEqyqLKi@CA%-0%ýFδqke<cxv ]A W͍ C I[-\=-M)ѯa@paeJ%b0̬ iJ$D<th|[vlky|ie`8lT~8WPkpr/YS'`#  ag@~Ȥe&HD?4,itV'S~h=6hFv:Ql^'tflZ.rbmI4-I,[ T!wM6SLhakYoĊ|][u?5I!„u2QK YygoqM_Q}Zp97`mtal2T@ #<ã}2$yYnh8:psa5Køx ?˧UìiKi!G/ѷhej,mZty4JZR?({ڻMn?z湶nmY%ӿd0ܞWJf`S+:G GpW _me"nC4dZ+ g!,t+Ïﮪ`5ݠixvY q&Ԥ̫ Zp-oy2P_$azAd΀fu3Aa(xa\8s]ĜHaݲza@M[gogS^OO6O? wZ)(nj*OH8YT@ppӮHו50.28}ynf4ٛ1<ćWFNO"~7~?F|jȾ'zw3uŹ0)e`ŠTh"7oi~kkbo>NT>7KZ짥5HHG>,`㧷(Hvy\?z&F-$e iIm@@d9F! svUaBG;!ܖX|l/2߃[N5F2&ǡw' &Dе6Z_ mmP)2 04'5 mM:ؼ40~]']: \$ 3W~>{$i,^5,ii,H\qBd☞7X̶KO ./DTaH*G0'CjW#|K|&#L,+,iLW CFq{,px!WM{)_;rdvx|WHb| >mܕҪ 㲅on^'|N83ZhpҀ[a=4YZ^Ғ+˒6 p͹Sf*6¶)(9if!5E-yPb*<!_^JA\o2 XUV7 RNˠ;%C!Ȳ "4 /R^fp%N<#; ÓȔ|KY1ӻۜIBAg`*)0V }g +Kpĥ&M<C:|Z xm`ޯpnqy1-K|\yGV:>{IsW%n@M yD+Bw33lUZXCIv'yɞ3 [/BdzHJGexXƪ'eA|VCI3${Uז>{jqnei!B[i8nnO+pWh<Cn"eC\âS.gxL{_EP:AeǀDAku ^a8T C7GwQ])xϤi[o DZ|/8޺m5kem6+ ['U0 /< a,j{<@Ӝ&Mhƕ0i2+˧-Eiuˌu?Ԕ פT:ˈ.etKI6w5K9 &3?lm3F3E 7<_+uƇI?w2+YUňSX`mQ+t sU 5B nFsT/v+9I-Ⱥ泞eB Ƅ\^kȉ%|v4E=wK.ߪ^[=a&F?VC> fe6BR\u:N4~y;`tY_C7+H6G12ԐiQ̊'¤_u3 r|guX*mu m,\7W;ڔ~wys f3;pdi3l6?'HO;M.O(N ЩZڊP.͟K|Y'N,wlLҺo|En4ߐCŏ!9Y0:#Mky+7|uz[ ~Fїg! 6BcE aNwa^hL`U1 ql4˰ҌS`X4twz4ЇU(Uqp~LLI91waIt",G_ rߘ uXՋ&1Vy-ߓZϚ~gIG!/>/߿f\/K-,ݬ:f6.{! < cnCA9cnYǥ_ u[ڎ#u.S$yUx4nw)ci㿒l}_d_ru'/k02ak̄_'|ѳo}@{E}hџ?$!x[)ZI8Kj;VsGy{p-\#a܆K4N[<&7L!X_d2$ycf3-e!❶g-F_;E iRӮbz&y_ 7ޡї$Ⲉ:[wB&ĀqL tM -+or,)vsmԕ*º38\ q(>c{ٴ8oyc9t=M"amnb"2)&PP]+)rM$n6c 8jC&>4-5tSN!9|~%hu^|BxsF 72gwZ"]N6 g s Vf,:672'KҼ|Fѽ**t2: D@aw!~˲a]yM?J 4L &90 aP"̇wEH/nܮ˂,ɻc]P,7 |+ msgqt4f;#kmp7^YNz\N=GŽCfg_.M>458OMx+`/3-.gZдn01 {G[Ҽr.HuNho_[9I&T?I սIS4" _. #4b,c57fcaX4{ hW yT2flf6 Яn pZV!n+8BLaZoƐog <'q0I4v0 TFveh nc`[8XEЭ gzڕ\ ͷ%o[y?Eox XﰫٞMlC0&0-g N7P$ wYNg=y@9WgbyT!G?~0|5dpC(+$ ?O,jiwѵ7<u"V^JUq*28B Mϔw'y).չZcvFݺCRx'?8UBx[-*!Xwnv5mκr' 'R./5,$,|vs٣1\;܎Cͅ$OŴ$,g h:u ݀JW;@Efw%z"xO~1-u#z.E's| !ke4, ~ 9p75vOSbhgx,~ %T,f/Jr_?>g Y_14)A &aMq SQݑ~1}f(}!8T.Sb,2N +J bexUĵxpxkRYp[^-LW8MkY8mNuHY ԓ~)6mA}{:^ԕc?%c(z Y"nYBQaLJH/6L1If MX[D¡Nj(cX^? I`Yb b]RC^ Yi60 } 9e9qv W14;VMe9qǣD+,^ZCP:K1/D|ppPd;z ;%Ѷd^+4q kw}KLAxXFV/|N=ȓ9.0ePO]J:exO2al40/fl`:ɗym{1Э&CCfC1^}:nrG>1hEO2T ̜C;نl:K9_E7Wu78bNc|ߧƏ20B0_OL0&T;/KΫL݆xL Z˂yGC=aSZ7qxX~Gs\<+>,`3&j`{\Vѥ ^ql=X1cz:N--,%5\)U}ύ5Fzm*~8 ⱻƿ}'͓ŨpBfM42îa0L8W8Wa4wqG dMvpGJ[ QGQ8P4.?}\˷^$ׯ/ȕo(`&\|8Ë,6R1'S-tn@K1 70f5i۪c\\ϫc8Mk>Nf94Ιm 3:ɕzp0}m Wx 8VCn^Za_pXǡ*)C~@F+@F0%}%,`7ݩ@j#M]LĊ˥K9j:~G0gcņD芾֔,@-.cG=z6S* sJBeNN*%ch.KIs˷f? MewCX^ r<<< ̪t2vs84X {|2䔜ju"|m{sW 'h]&=*Q p4od׹ e^XnԼd4>'t[vPg<`Etey+`҇>;/>pCfB5CpluGr4?_! 0@MA:o} ŧ!t>&0Ŕ=8 }C8Z)G>vD|<$g\4#.'А+%ꃪ,ˇ.m7xE{&}/YsGmny'>j:^|G)Yh>1Mu_YUîdn˱1lcЍxGO# 3^L/^^b>LlwFstU]2U|1vaȑ}R71RM'^ܸM q%T~dh$S|! Eu%vd0w 3?71Fow ꪉJ3/>PGEh'8x֦73(CO`R$ 1Z[861>U[%n9k?jeY[vk]M} drA &7Ёw,{拨}cx8>,#r7h@)s9I7G߸+g q PU',7qⓓCr۩6Y'8h+88޹Y}L\·d$9xH'|Gd[Oۄœܵ[`G%yqpw]4$mX`e^+ q@ CEpҀ_8Er<]@ {°g߾c>|9Og/]Q,p?xKY&ꘓ+\ U 10&Bgͳ5TnΣ3#(~y ?ev5l1aߡeXRpC,ȸEJ(%=y\q)mt ~ e {^6/V_Dd f|^IN36Bw \'y\C@gDCL=&[ 0aX L|!3/.`=mapa'Joy0 טL7M_haߗv k~~La߼zIZsJB uDNyga2o8#ЂV<_ıF-w$X8`ScMc#}QTs~x0"8a:K1]xo^,~I\ыH+(W>1nX p]ژQ 0u]F79Rki|4l jTR MUd2+Dpt=A>M*^w-K\ei3fi ]JLjK8AmVXC~Ƹ=c.gk}ۈv\DBwouϘS68;S°0KBDAi#vkr_.w`tNZ/j c] j:u"f*Oq>BũyY\4X,!I`XB>,mCnRfl p.\Łsֳ ݟ89Xz?yE^;s]NC *-bu =~صaf;עYYN,`VsNX\=h/YK♿kq& h^D#:C15 cmn B8yγ- V9gBz}8Fc~Yn9 |po NaV;@tgh|Ek v"Fģk0B 3af5l[5%%K;ZT o8iά |Ěߣcx^?3%]叿n{ѕG`of91iuR"{5@bހi`$.%c/W3'!&qvO2$juvbs%[Cx*\,?f~4k~Mu,Ocᜍ3wˁɱAyIx ؕ `e4ۻ;^\(St8 "vmj$Q5;Oo3&x=F؋Jo?vViMM^yG[ LlL4s7ZGBXf9ݸu,ܱBtZ&a rwjJohn5_s-l{gߡv܂2[P@?B虭0~_z\B;\0eG7ij}Y ɝfūU˺BO/p)No13z槽M4?:}`Gms=qU} V:jC rԆo͂nCFOf3Y'z6QXO8u? 'ӄU`D3;kYq$[PFcaawO8Aa0fafF 'LUp-ݞ 9mdIlpoln̖g-ݡ=c~CPM06bx23IDATY{Z%fxF73[nûzkQOa_.-e&4j2<<7|g[4-ָ+xa q_Kr> k~0rw,:f4RI:"Hx6R^?3{/Uc ax;FlNj0֕q=xv5:Zězf8]Yqu3Of(zdSafro,Gܒ6\ MdajI5ArB<$ק߾$_y̓Xnգế6Co6 6= %<}ުg5C20GaPv·ǵmfyɇ<²&.5q#2UmȐxϽQPIo^!xںnň^ݴ0$Fp̚=<0(u|Y@FN qd.b3ir92@+vWX,cJEo628ky(bScA u2ެjE 5ڷ:za-vuO6[M2cbwBPg241Skfkgn[<S%Z1fSTU +I_mY ϒ5۲6;Cu׉٠ ^P˗p1cVͶxd,o0> +&DH87ߟ} ]!m3v<>݅d p0WS07X}~M&լűFP%1ڗa&x~Y'+wasWKwז RnI3Ʒ0nJY3^vˎBK\( opYc;n:b#v?.S.Z&UHYƛM2]Sy<+쬬-l(`8. tYj1Ù< ;$ ho=7K7.]ֽdec=pL3>\ݚ: \˙̑􀌥8ML\W4:Y:navN;/xwVl k1ƋELwY 2p,ġY|GtmN.])`B[U6l`Ej:j7~41tT<#nĸU'WX?r ]P\~p2] PC|"_+^{ "A w8׎JRW`ٽg.^3K_O+c\0֊ȱ_҃QedqTVF>?np711z8f"E[!eaf[P$ttWyf)X.|8% 5*6MDГڮQB^`hJo8Ƶ + Kp-9Ƃh WkW9Pù'ծ%aa] n%OvaĜf-9:^3su6XVϴS[r%VVn| sy q7N LEMp>}oR/^ S/ݔ%\Tt}_.>? wehsɠ\^7atdDpnrWxWjd[y[=Fpɂ^/JҵukkC}qWU^xWB-2u|~5]2o+<|ͫaʥeܘI]Erjkn:&P8Sj2ED^j;ޫq]P?zG ǤJE{, > hbn<=͗5|8?K4hKG & TE0~ro?,_DXՓ qK0FZ^މFn nz040_Mj7Eo'fYh,θ B,ͫs ^ȏ9,p ] :/c|W",ONٹ l`!+_+WW/̲,-tkU Ny^NT<4QBG]ruVVU#pwq:B0%Z=*xa W(r)t\LLf?e"7G7? &Qd}0q{lLen|ޗޝ޼,+8Û6Z… i}LaLMFOenᒆ'yg29wc(3,"~F.wq7o<,ᠮ#=&UBq1RG%%qv ps7YHx_2T)Z@Ū܎U~,'.'YhS/=]qctXqX|]Mh;,k4ΗtR: 廽mWs=|-h[vq%H\Fr/ e, \[Wf/ ܤ4 $X}Kb C0|#xd PPqJ? uv|jwG*RBWMO+1ɍ se%djav" 9+nMCPRk+'c4NА-v]L'dzzMoQ1\ˇ&a\Ekß-p . ^V,&*wL|;A0)$H0ok㭽YKdrpD{;SϽ,5w;JdH0c\!lt< MTqfull˫N`$ϛ!$zQؒߡdL>ay\RyA/|La1[/^.{ d%@ aKq0nN^j# %}6>1Qq4# .3]̑tR>'סx lV`I HU]]@{O.SnfI\%LH1tVήZ&"jxA٘˕33 W䱧qhw7oɟonb)K®b_ !l9\'\ǢyRC+awt[&X$6`IԐ4*ᵁt a f3Ka@rzM[N5[Ny1oD*_:׸C݀fӋy+v7:Խ;ZD>|qFɱ20>\\%93uupJQv#.)Z'1 a>K v\kr!~}bBD(&t ae |HVkf*[E~}ʝ!tm5iݰ<)\EL Matqmq itvBHӂCC50YnOM9nZ. NBڪ \Ōe͖!)n @qxlk!ͺɫ}~y~Nxu^ iqp}.ԕ}lfU\ݴ9о=< Ut xʜ{4T?Mōsnס ћ4N`q,6 ܱ,b{ץBxTڥy?WLJXr,s ؉ p$]Hw 3˩ ܉@Cm0r3yݤlqi&\?%g\5lL{I kxVoK CRĘ cfu^9ɕ%h5לd±XֆVP؇&Y̖dp,WǺ^7adIm4f0\0 abVs",ീm^ [T81ȫp]nRp֎SpDvyo!ܹ[ah%"^l3Gam6A,cCn+"*؜ qH핯( \L&եb.a )vFPI0ci ;L:+H ƒipiǷ1cYRrnS/Ɗذ=qb'ۚ_ M\Ռ𲼅֌%FqNVL^ OC] 1mԢ%[쯗 8%iy j .oBLBZTgqL#e >ak?nAs2܅fo/@^GGPs_BOk=_"~[~¦%4j잨CH܌&a[tn^eU[AMGn]sL` JkB*R*XЄ=.7S@$JũQ"-r҅g8ⴟ/6^7 GUq精w3 iac蜞C%6˾ͽiW4d za2׳s6̛vpM͋C&OqGS@xAgO(.'Qx`r(B`8D{?n L{mq HmG]A}YV%ɭKd Fw)u˗Z%6O!n~DYz^nl(clAc!9Jydj!:ri^$2X[.@3ܩRo` M׏]+M8 XYt|[K/JI^`^F܉[pPi|YE u0NΡav61N13jf*'W(lh˱j#쀡;SpP''u"ōPXJ"%1,-,gpg[x^i9Κ+xh#\pc;aUUCh|& 5CWtNrᢜnIm(B ,ci"\K!|^J`kV60HO 2?fq4)b8p[&nPr_9lRCy+K }Y=)hUPrlޏqN$ 8ۿ6a=fȑa0q35x`1)F-&fk)%2جwuƵ7R1/Iͬݎ**LILUChjC/A|\Yl&W08Yvx5>]ĆgbT?4k MرvxGiJ-8-֡t⽄_eszG6u2\B̼]XA 3>ȻBI0eH'u =^Tj飸'e*BȹKk#r㺍&D^Hu݊C/c5H埑;wwj9Q1=+Z/-aPF*Ns|]X{+wvϭqW; T2餐h[:Ef;([qBL:v^kTgIvU*-aq#v1؃cYwU@W*M^s5a\2 8-_ˆlWq,7+MJm !N> # .;qtvJcN0 H4._҅֔Os]%x<0) J6y1&p!o͏4b˘kM, 5*at)7P e Er aٻC1.p|WaW.#tðH?Ӵ? ϻWQi#$kYcR.b&[>MBW@70mn>6bĹcnBhhSal CpMB[Vq]%Lc1˛']8b9~gtkJq.\õ~Q&&N]!xܝ±OsݬX9Vb&iVF ˆx>|z0ѓ8k"n@.B'Vp:]RL,G0:\f7 ҦQyl|6bc[?f eB@W&x fbWsyKZEa`xe=NX+j 樵:N^A[a ^1qtLV[]!x-R|U]${Bg&np-<5Q Xv4qdWsN. ΢;ZydBЀPb|E#Yj-}вØ&; a[8qrEę·7Q9JmR$k䜱rY9ˇvsBd0pZ<8\BAXp3Ri/z7}0qvVc܍ %gin~"atӶ7;g߈M1o8w5E͙M6|Fz Oq tӮ.]4DH\.D!FM"r[@]B8>ۉS;1/ 9iuOW0: BLZq·\P.")XQ}&_xKzne7qo 5Nðܩۉ-i4m.V.0+ 6 4ND8Dz}xx''C9/XSȜx81`5&ðN vyЋ oy &'Hw"k`;*x:Nc|7r·-bkUV; 6B33\cM! @\h%/O,-a&L1_Fa4f;__á]UkG;53SVV8(/ ̐m3;O'aZnnƄ47 8qkЀ<ί]g*`2pi@?E,&fp,\p_(K2U Jg̎ o =>aƦMX1'q f5E8i5#,toq覱p1XzY|~R0d4n̄1 b<)kvL4qyESnB(XMFtZZiHTi[,/jv-z0:|5t>?%|Cޘ}N~ g0'6 xouK ㄍעkxM\BCxܖ7l-,GzO_bnqP.4ץ&I׺pfe0]q%n/s%OY؋BDzqw2om@aWr_07KR0Kaf 4h~͟a) )TߚBw@.@KʶJiIˆcaF8>Zm`QkvDxײ93 +7`{co~7ln ߺ PfذrK:,c q skb'O-=IvJ6@%wM7K0g&e+9\<;","2D,sTzO0-8|,Fv^NN~7cZby΄r mVQX|A||"_ڿJ2wSqWcY({\6% j,V!m 0pYZ8ɶ)6:u N';)<3|Knn0r! m4:fMI.c}Ғcn+%^&[lm}L5p?& bhL$;;<]aZn4 nרc醏7Wόǟr,+@k"9D.{ q$ f ]{=.~6ϵݶי_Uꚮ1+*9H_v,Sqȳt%d|T?ݽ']f|:C-< ̘Ʉ%יʭ5jIFJ{^W ʵQF{QF(2 '['ʤ9aA]T-#^.6:51Sl +`ٜg`/Q#Pg/2,5~,bNؖUeC[5VW:"?DFXraOFĪlhx7W bXB]װuotn5p7JF;;.Oi2mfc!ML|ڰR~[eF:*HWeWKOU_yo׺ﴳZ?^atOɬ@5USɲFaeedV´h6$j%-Mj&mG22*gneKSWRr .tޤxpI[yj5[ _mz8ʒڐg#!4k<%X6j:[[~Q&HiKO|LU8ԗu$t X#?>X%\ѐǡXdj' o6º(}Z=p, &X^?3ABPdgqC^teW*N\2֙I};s83QǿߌwRVb.a)N2+ner5ƲF({1b:'i WR9(ߓOra m䡿p/^IIs܏dT~7Ͽ3.ᆺ.=6L[i)VFv@u٪!י$_Y}S;Fn xˆ`u[dKLԖzBsf=,֛y~?L0z$盃Owlkbb=;8_*w+(@ .Yh['KK?,UkV]0aH :n qحwV fƥCUl~l(ٷ/cNxQ&s3Y,\<*$tmŤә: KgyQN4F_2Ov yF>Ҷl+~6>;xSq~X&eY,zZY٪\xk7FhaC{XBuq#: 9ڜ&>YBxk1bhk0Qan O˧TŢUy6R2n?]u^2DӖ lVI.&a>oOk?:>~l"1iΆכ;٥pWjDUav &KVeцznVN_VgeVnU?ClDHNedi;|zxK-cߏOttpx~- `xSͲx}#be -Zz077Y[FbeʤKlSQHS8ĢA eeJ~\!#^΅/pa}؋Y",j=!,RÇ|1!0 %i\~)^l%tIo/LLVT%,O[Ѵ2hѲh`OPIn})rS&_ !ϳ#Ţxy=F̎{cEk_k7\dB^뎅;/,O6fvtP \?pb3faF1 Q1 Mن5Z)N ņƒ0LXG h#;ڤu1:: A''cK0t3|gKG;^XCO11klv;y;(Gy|/ctN|Gg6mGT'N7 j̯N)aHhbS&^$'O`cPN^ƑbVqXWU&~ǴvQlZɐvV_˖{{ƮLxif?6kX/1Lg0=l\eHx VWF[SV2ً^Xqd/;aKkǃtڭߨ5XgX{/L`g|πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3F l"՗IENDB`kylin-video-3.1.3/data/kylin-video/en_US/0000755000175000017500000000000014212620632016542 5ustar fengfengkylin-video-3.1.3/data/kylin-video/en_US/image/0000755000175000017500000000000014212620632017624 5ustar fengfengkylin-video-3.1.3/data/kylin-video/en_US/image/8.png0000644000175000017500000012410714212620632020506 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\S70a*{Ҁ ʼnHj NۏV[;\V .\(."Fda=!q5@|3s F p2 2e1F=#lN+U؁@ ඵWP( i =}QIE B2DF43{^y [a4L$>k۾?dvhp\@4=Zm:g1dxccTTyyL0bnaAR4k@W^@ >$ #""fϞa +'>M '| =`MI I*'v6fZӦZH.H́m={v斥%^<؃JJi޿DG=[GGW2 *Mi)+iӳJMMUPAA1XL0` ]0=A=<|n5[*T6%b >%b6ׯ_1ߡ`s'ҤUPhiiHݦJI9qYDpÁ@ 4W#2lcmOlAm!ޚ|NDRd>_L.y9`F[dLtY.!iT /CݹN $GCf-*#@ ;15=gЉˎ߆߬/"e4%``8\@aQ&fûqPEE/r ϟ>9~" (۷fb[3]8yq|CCW=֮[mk۵ӧ#R^=7400GֺB Zf ᴵs:u>nDd^'Z-Pڀ# <} q}ha8j =bH\[[yBn_<ӏfff anny_~}}Fr&N%45ՙ\.7f99v] U@ 5fGFF ܹsϝ;Qi&[bLi  R D&;G8 Hȥ/ׄw##up³0~41G]v9?|& ;wo@@~gw6+W#=z^cƑHv!NP t̛7/"""00PTfOZ P9@mT 1!#쫓26T @$l)..ھ3# ^z/Hy&kq0q/DQ#GS(X@!:`''Χlll/^':DI<ڌ&RGi)+k7<6IX{b':wxv칳Q7n\--+YzD*,{![mPQ^.kqJխSbh& ;kjj*_r(Zp`G"U{eUxod J `" d =ѷّIV3QD ]*RiiiQFbB$.m`˝^EUFI'ߍ0.T_/h xo%R0ډ @uR$-A,ϲsF226z&gE&NS<kCC˓@ >Pd%F#Yh@ײӂ7++_[SS;V=C D#:"u뺌 Lg -8X|0ű~8*Jng:dpNKKuuUuU' lذQ ul6;''L&{ystt&f:deicdl\]UYYQnjn쪧444f2JJKKLMW\'22^:^rs.,ϯ(wrru2UtQ=@#2{fvXg7T&&[ u W,kjjܴOM^-DB=yLTSーFy; G< ^ZS L @ y~ mhP R 2Pq @ `mmRN9( esWhTP$i/2qZTޛ >HEcӝqFdB=U!ңF ^QuSP5f 5E @o:(,Kc @ &=.ꤠ">$X8VDU٫ DV~] PY%k&){J*#E -qAL祀D!T }zPDi5Zzg⃤DTNU,:j& DT EOu+(w@ j"@ }QiE>;Q0PJV8 j$@  wz/Rx!%zqLcD( D_$9"t+"@hGJ;"B D9۟ rcJCQP@b@ Dɾ-BtQɚRЮA @ MgOTAfu RPP{(ʓ'yHA)(@\'*#\$Ԛk"DE>ȥӼP;m"E w,BRPS޹ڵV"E RET>/wy33K$^[StTOtQUEIzz .)鳕ok+NTVjJfeee!#%yj/C UUFF&餧\za˧!pݩXb#pGs 읇C!SKϟ;M{ }c&2f>z_Q^o`^=yߴYO'QiύYB.>y\aØL܉deeZO"jggg ?O?񁡌%.+hwBtt,P88M).T*5#oޙsLF&Æ{1zIInJGYX&<=x[k됡#TڵSS_u2]S䉰vkWJ+Wz{{/]8.kѮ]֯__^^R Ett322Dݿe(LNi<}άI?РBwxUXv#455y˜ 1=}@i3A4{\76??x9Dqѽ  z܆M?1zAAϟ|&I[KGbb 8gΜ=ztbbM[4nl؁o$B&`kԙrY- hڙ$:J}oX,۷֮]b_DVZѣG'''/_<11QY;v/|捿7oV\yaٛ7oΘ1#&&f#G={vqq0ѣG낂//j[+**FKJJJfϞ]]]}ȑB 4_~ ROLpx}8ϗ/Ǫ+( !u`nn`9o7a~j @@|542!S(\n:]Fvra=%isOF5wСC;w\z|3T<7ܹ/fwmoou>|~#1tW_}߯[ԩSْ={9rdÆ Æ Նs߱cٳ >>8_XXX5?--mȑhxP@D;::۷{˧N/'[qqASSW7_8~t;מK@K[gimm'{zBB\d J(wgQ2dHddf̘q)Y*|}}1b˗/EAz*.]v8JKK)))```@|555EEEr@INX$d~2k(gL1J4 `g(eszIN=cv^gJK y@9sO{us:]sG_QP33={޽N۷oϕhP]]U[L$H`gg٢pgw!n3227o"6Rf⫃ս]QQFFFd@ ʙS=S1e::~D[[HP|σ;d;?Ӧ}6mg 񎾥C"|}}ϟ9q#Fȑ&("ο+tϢ"tF???'''8cF2 -!0ٳQQQEEE111>>>!C j\hӧ]߬e  --MxP]?XqcST׫W._|񑑑-5> (nI{xxxzzz{{w]NF *yR=)q1ߤFhw^ojjJe%JHW% )ѾӭN{&X'J,iooܙJbDzh4Lff` CP\jee["Ν{' i4 Z@|l(,2L 7966}AklB`˖-OHH A_nnn@Ln6{ƍ.&a Wϝ;ϗi?zmMKK#tT0N>QQQ eee<(K\\hĄhb'B%w3,--QH$E>ŞEYH <{/2dÇ+**BBBgϞ=G͝6mpr]v%%%ř.\P&3lmmG5k899ǟ9sFۯ[nϞ=cƌIHHe2_|Ǐ544455&M}6Q[nTVV*ަ͛75Jtcccb.1ŻdTr}KA X,ɓ'WXA޽{?v옷w222fϞ}q33ND"/999Ϙ1cBw^KK˗/[YY_K,F-ZT[[I&΢n߾}͚5PTTm۶9;Od2lvxx]m۶v)St<@ >`g/pD呺n`)S#6!)AJI\디(===Ǜv=w\Jcrv[z U~hXPRRrڵ &a cԩ!B1Qt=jF.T-oH>,BbM*qjٛ!| NvGT$'ab,LWDϠ[PPp֭ RPPy?<44E >;/5]D$WTa&)K'7o޼vZFFGxMDLjh1"zғ[*KA  [1옶E9E@ yR"**)(@|pf?u|"Ǹ IDAT"k*RPE @ .*݀'RPF<$:݈/)H,O8>b+(,, nnn&DGGqY|O?ᨲ~o111:N>aÆ'nܸ1##C4b~~͛Nk׮),+33S`HHHhhhsssxxxPPТEg\SX"I,E[[۹sBCC}||/_noo5k֬V P( .̝;wɒ%qqqA2JQLA?Q{{L:v4CR_|bŊ'n߾QONN֭[Mk.6-<]#OHH`X>\fW_}U]]{ӧ?yD7==ɓׯ_,%,O>;eʔe|]>󠠠#Gٳ{?ݻO>]`? wE։о NNL[ZjjjK祧de.//io@k+8*/+rsVX흅U)ʳg(ŠAbbbrssGa0!!!g톆k׮%wSΘ1ӷn:y򤅅"vϟ?D"͙3'++oaD$_xqEEٳ###.]dee%%% .p8 .,--|fff^N=:""bʕ7oׯ߿?""ȑ#t:}ժUt:}ҔqQQQ!!!ӧOڲe1cرcnnn>>>ׯ__nݾ}%^;"^իWK. M8grX{ }v~rrr D>|y|||\\ܜ9sKD{֯_7mڴQʹzjddԩSq"1͛7:44P(9lڴŋUUU? 0 _f͸qVXаѣG7e{ڵkJ%5|pyf{{{CCógώ;GQ݈dIDtHtkMK՜;sLC>z_x,<2(ޭL7a:: UU-r܄Çkhh 0233%(ɜ5kVcc D'9pɓwA"F`m۶)bjXXXuuɓ'݉E aaa [n577GG5kDGG["""jjj8+W̴k޽ٳg~~~uuu 8p ̜9rww766`TTZ~= 122{jkk>|Kܹs>}ZYY9c 0lĈRCp)%" E4Z;WQ'"ꠠo%)ZNKSS9D"0p۹:yؿўUSTo@VVDGG8N"|"]+o޼Oa.//{ IYY888ߝJKKo޼#b؏xJVWWx>~֭ HLLsΗ/_Ξ=ɉᄅkQ7r10[Z/tÇ}||`߻޸q:#_娎#=4>h~gΜ~m„ zzmt74D_Dd4TP9(@/cw(4Y+9)UPS@zj,2kT|Sc H>5gv'K@ h7+[Eqmu{zu:E f ;y(RP%Udn4s6ݏ"E 筈N\u *}.)(@;?%1='U+'+E0@};WB)( )tyVD2}3PPWQ54Hk7b@ DTMDtw@ jtc} nfp0|ܘoҜ蕎ׯ_744dMM.p8>d2]\\z ;(mb/_>~I]] i1lJ\8㔔uL}a<zk?kkkBBWKNH*\jׯ===%LNNNOOG:@ (mbQ[wn՘[566\u,)} n_6nlv៻7 ɩ[#=vtPM=8biB1V( .0sL@ g2222U.VO7Uˡ%=rP[Q+$ #-Zv 8Rú\aMyg*8t+T<ݹTqZZ:to*ϕJ{aX,Tv) .**RQwvww@  s玊2UǏmdRRRw!_tE.J[Ngzз2FGTɎ)@uu%zz ]=P(g頷rt.r|D*7Tt7*kMMMOs͵>B"&NHlmm{J&{U /Z59%Ȥ0/_<(c0tG& ލ'iq,/+fN2_?3sڭ|iii ds=_Q^o`F?; #͙8~\^nB9j,5tVv^k3455GrJqi)Mf>} 6>ܴ{wDx1>c'KUDzPK.--mwMKK;vqUgXOzիWoSr#[ˡnMN-chr*TGGwΟ;ftpثj82ze.*b;sʎm#q",kk;'gVnNƩȿ|>%gO:J]zusa uJ -o\T]] 0t Q>wə5ir8ꙉi`eeqo]1{w@bOff1WμN}>?7M/^N"p?vdo x<++Scq>A8S|hO;{et16S|@ܭϟ'dR7;?D"988]u7zE ]1[>y@xOuM'uF뫦111MMM:::_ݻMg͚s•+W577gggX,"~֬YիW\RPPdɒ~6++"655]z599ŋC Yd0b~~>}:qD9oŋΝsrr !HGTTԍ7.]:f,= DիW/_\|) T*˗Ξz興+W޼yмGDD9rNZN^Z2vW9k^9uT#""`mmmW~ҥK555ß={:.?_zzDSw2}-[Jcǎ\~}ݺu]"wDT9Q bZ"eTtI^^޼y󬭭CCC[[[_~A "M6\x155ãpa?'|2|"0ټy3a?sԩ˗/wN;[]t}Bd+\LDkkG[[[vop\杸;q EDV..,d_pE_vh@DĚj`2>80 erZZjj\.7!!a L"d2g͚ظ}v@NN΁&Oc4jԨ m۶MSªO<.AXXd֭[q͚5֭?c88~)3Zx1aw~왟_]]ݡC3g믿ݍ%,PS9kĉfffMMMcƌ9{, =wÇ=A@HHHbb5k6o(ev}}}TTZ~=%$$Hʪػwo@@Ç)cVeCw-GLU7.{.Yn0{fb& /_`$;;m۶&ZWW7w\o),,updj'x_$CkNu௕e55UF( 7^ :]kx_P8$2X{*DPS5<[e[Sn}w^%u~P`٭čG<{,((H4iӦ7ŋie2zKKK777 H|ɭ[=zDh:1U2-- |~dd$&SӦM#TUU@yy9b2P]]-QDɓ'f蘘hiiEDDXZZTzz3O>^A@[[ԴիW, 0ٙNyIcc)( 1`eQE@%%%1 BH&Aw022"#v5k8pp&ԀO È0 ۳gOjj QV}"2uu um`lܿ8v)CKKGSSi`bpTSj9zoMr200dih!> 6"]'=%++ JJJq'H|>_ o޼`f^ PVVB '"(--yG23339::J?9B¬Ĥ(r>1>___OX"E#)Ӥ* r;wΟ?Ȑ!cǎАHSSS6]SS"*rXF1%"k__ߪgΛ7oƌQ.o+0O?Ta>>>waӝ{݇@uuECCB14 ..ss+M**Jtutg ^8NƎ RRxxցw;tgf^9?q4b2muUECCB120oa˳^ 2ðܬfs +R55i4֚Jw B;Cj@ttpHcccaaaI&_yM|VdWN>w/_oٲESSS8 b7==I&ikk9sfrD!^7o,zP~.;p@ZZZttƍMLL~Ojihii4HeQH3g޾}رc۸q#m!G#֕' &L =B G^^VNvc[e>~4zy&RSS7 Whhеu&L{΃(TZA~Q: utto݌I~دiA;ISyPfFꩈpC#̌T 2q{E` }勧[ZZ GHG$UB /8߿d޻wϟ?uLJdAxMMM$Nd^A,70 >{ǿۚOtIZ)u5G;nd)ʼKGnl8;ׁ[lluשtMSS3-X69F?1LIgc&r-,\nL4XFᵷ?}򠤤LNO)fT0L)Wv>zT^^^TT4vX1M?55яxlllZZZ&&&z|ccc *55577_  Ɔf kׄyeggA|%,++{5p8Aڱc?l2)wX9ժx\)7YIIIBT[[qAJJJGf'&&v^QQAMLLlnn WFl9 rĔQ&ÔH7,2L.PZ'O|zjjKJJ^zŷqƍGYZZj``0aKKo4gϞ.\PWW_lk{YlwYX.]rYf}͛ܫ֨*555QQQdɒGZ#&&4j˫\vMIIIAA`t֭O>F ??Ֆw;y䈈7&&&DEE>|XK%K8::1[nQQQׯr͘1̙3k׮566 177ܹzj##ϫ͛7Q|sZ%~lm^x1sL+++&y'''hmeL4c u֖ΕO{S3ދĕ ɓ=z߿nnnfhYfн{r\tuѢEBM;{l&yڵ+WX,999CCË/]t?pwwݷoppȑ#O8/p?'O޿SSS~jxs[ V8T[`0v|;wL4ͩ!C\|իȰ?x𠳳3ǧ.""BEEe޽O>-cǎ7o9rɒ%&vhk ߜ~8-FI_:~СǏ۷O[[{^^^԰V],ω՞K\ڍ7Ѯ]tD?/?;؈hϏژ>hu. fڽ{75:~~~k׮3gkMn.G7:*AڈP}H85B/L?֘K~u!\^^^WW~SSS8"SRѝK`G ,3%|Ϣ@'x8wy+ؠN$eeeOOoVS!CC1>(yOɲO~\!Ul.9p.OG=ޚS\94UW؛ەshꌤh\ ~j~K@/B͒:7kA2 D!Բ$8 *^ɥro4H3!:B4:Wm9&%>VhD)B!R>i<;HT@D!$UZ:'[z|rN~3dJ IoOd}}=w}DN3 Bt3۵űnf"?LPMA$\ l6b^$~hKX''LPjQ__/(HTZT{ö锿/Kka1D˧yBI=Q   K5O υ~χrD8!$:Vhv2g. MgW8;R1$~aN["eI'zU-L:^.'Jr '\n2W%͐kB+!+Ɂ#duA>L$,f,U$e5dbi\P2~O(BIHir03tÌ _k-2C7eBE& rW4B[.(1*G9i}A$XիWb=^z{ !)%{-jcնNJbG6D|v1qăVV r>}dff {~ȑ/>ydqqLLLL>}49zho޼#F0G߿{b= TUUwq…gjjj R_ii)0颭dTTv>}Kh4`2/_^z*j#B3cOZ_ڮ =vKKG_fp !g:}ډ&ޓy#P"~hqZk ,Gv甐p,u {..Rt̕+W.Z=Əokk ƍϟ?l2A &$$4J G˗N`|R9-!CH:"D ȵ6lDw3$sI"x=b{2^/9/9mPxơhsAsUbzN Z6 w̌AX''OGijj*Ջzjmm~z3zJsrrm¥$%%5iH%zm77~\}"<#mN*?"qQsd.p"dA" &!%TS$,UHq500覫9booA=MII_f 6QVVֆ @ii)*00pգF噙&MrvvjBtwW ŋ>>>F?<ۜpkkk ޅ իW+Vpww߹sgUUwU~~mۦLd1o޼#G9s믿٢EnZWWGmPWWwܹoM+S\\|ͱc6Zi&+W^zSO":;/]uuup8!!!sΝ5kֹs稵$IN2e۶mToDmwߍ?~ڵׯ_OHt!}6 B ,5"k'g+:'LЭ[#G [|ѢE***C=o>ĩyG6p¿[WWw̙^^^`'L~?`nn޳gϳg[.9yFw{yuO:E-ə?&MaÆ#GpK:uӧ4mӦM~1XUV;vyW^]zuGǻҥSN߼y˗M QΞ={e5kDEE񮭬 ؽ{ѣ6lPQQ8q͛#++۫Wdϧ2ѣٳg֭666˗/ccc} +NCɒbA\L,uE ^2>ۨdΛg~H(Q}H-MSWWW?Áܹ~zq4ڽ{75xcbb,`ٚm۶;7KV\>u?SSSsԩMwX[[{i}}C?+VzEQQS,zzzUUUG^t)S=gϞ ''?}^bzDD111G۷/XXX<~xСǽz)SxoPٳÇl޼Z>w\==^aϞ=GnjC.UVV)++i?Ͻ{h+T555W^544111T)CCCEEESRR;700АzNlJzzg\]]y^v Ɋ $ʊ%766622z)~z8~xjѵkטL&/..RUU}YCCCvv6t]QQQWW7++͛7ԩn`o+Q{KTCLaaUpCF@#R 8PRM@wULz*! CzP ,tl`a ڟ_Ox;[L>YH'-ڰD())-^O>VZfPQ/77W-Zdiicmm̻*77Og[PP~[[[So{޽{…}:t(E,JTGf#`CVb8Jz􃑶4uE0.6Ly)B8vA9,_n( O%g'KQ!'rN⼯SQoGЏy1rj΀Ml%.$1J;zAy{{߿?""BUTKcǎ=uֵknذAAAA/z)NolEחzjSÉ{h\6h15{!InG=ٜ;$IRJIII'O~Avvvrr-MMMۗpʕ_~E[[ի o+{I>;)pu'jɨdva-@Ty*=JxA`_\Yky y"3{MVly٧һ pap)Ŭۆ-L(%a=fk@+"S2%'HlAcsȬbHG$ɎZCu!IuȀ9꼅a{*iӦqƌjcbڵk-&HOO'IM[.lbbݷo_jrS_6lX jBEH߽{GxXYF$6޽;|ղe333===y`ccccc3sL//-[;wN(!pgpξb;9iՈC(O;aͶg7]u+[(9^y/Rܨ"1&)ߘL֭[x)PmD 7CIII=X,˗`OJJ |NnnnAAN{՜Ç ^DAAa„ 7n܈իùup2`֬Y7&OL-&1%,,lTLJ9sfÆ O,++KSS}VPPph4Ztttuuy'*zܺuٙFǧ?5wٳ۷7u6;p@dbII im%B-D[su}N10۷1vX777nۏ?/))yWZ5uϟ?|ѢE&&&9FEE5^`_qƑ#GL0=m$**JGG^R~mTTԚ5kOz]oog4iÇd[[G۷:SSSsʕFR!C̞=ܹs%%%/_JXXغuz:{VXXXx{{8qF-^Zkmm}]]]555cccjۿmmGUUU]ԖVRF)bx$=%G͛1: //''wfggXѣԯZ=off>hР{6jcccǎgϞUTTϾ}tuueeeO8Y~嗪{Ɗ4OOvqq )--ݸq#uIk ƶm֭[}ϟs'je2]5o߾]GG'000==}ժUӧOaddtÇ?~\;>>>7n,-- qqq9}4|>=4hP```^v]QQk.o-D}c8QSZF"U~ ykk%?p%&&Λ7ܹsԘx'++aIW}xKn{i ^S aY1?~1%ޝOmmm^e+**sNөBң%oU9*Vꬅ6%pHOGw"J]]ݥKN')Ѫ *Q-u~\FD*=Sέa8#QzJC1O?uOmlϛDJ!$v$btQw֯%W5TWtW5_kWilzmxJOqO:z/(B9_HEQ}}}wNg0"m E3E KhrA HD5/ A0Y"㝺Fw]{ z0ia#yXnK!ĴqrrM th6GABQ*UUUm+^[[kjjjnnA9ťQmaajB“l6r3mce%f J/x3XZeemNjHÇ\sgggaÆ9s&$$$00lԨQ>>>nݺ/^cǎ;FYlYUPPnݺQ 7Q”G]^^~M_*++dee#""y999gϞ>| B_ L]@n@E_<)+-4y&k<~!HؘҒtqcF9 umk@oqJI;ɓ;v찲rwwҥKWZpBo߾ݺu;wFɓ'O644[ bkk;w 8pĈTKKKAmjjڧO/^ٳKCCcԩ$Iر|||TT>+((O>/&& &`|rٲeJJJSN-//߹sg\\ܞ={t B]t(!??GUU]QQ s 2VꙜ -n[0RO{}(F.)Ϥر_UUu…߽{#̨mLfvvו'Mt+V(**~W|y ut:cǎ9$$ŋ֭:t(y85޽{'O<{ .kkk7l`0Μ9 &&&" AuUO!l6QG=Op8V WPڇQjPZRD*֙;i$lB-~:̘1CUUTUUg̘7n-j*mgddGT}tuuLB-D3o]<`6oA55 E%eEvaA^EEAvBDuyw 6ą ޓF!Kد2=ycbbAJl۶-,,lرo޼ѣG xt8|p T!ԕIܹ99t:]GGJ==Cd*W|$|Sނ~gO+xzº/3ޞjw^I=9`O1xРA7oެXnb޽>wĉ6U!%*nDzbfM!5 ZZEE%%EzJy9ΰsU*-:w'ChGuwwo:uj||<(rWWW'O&&&r7n.B_&"-Ofnz)\CJ u&-<hZj˶qI ^w???={ :Ç=a˯\½7 6ɩHFF׷Պ{߾}طoߣGѣŋ+((̟?_YYǿ+P矯]p,Yc'''++/R/^,_f̙ B}}yh$!ʋtSo={6! ZjԩSkY,7W.!ՕN}6<< X[~YIIiر:::/^011;w5kۣ͝G}VTTܿzݻ7uMEFF&44TGGgժUM=TSSٳaÆӇ:ĉtg"""f͚eii`0" =l[!Dhg(BmD9H ݎH!ġI Үl OGHD!$BHI}WB"'!*2!D!ځCr1BIvL!)Cd}}=͖tEt&_/;um$IX,LP:fX:7RW!$ط1BEuIފEk4?b0l"$A_tf"BHn FBIvD!?Qt `WF$!q B!jM?5eQw2014lÀ G/Q} 9zBӵxSVVgiiI5;vX !ڏOKIL~^G_*(**+|w?d62E$==ݾgobյ@MM01!!zx-qK$IZjܸq?ӧO%Uoܹsڴik֬ p8M wtt󣞮]Ө(GG#Gr}͘1cڴiG]jժӧ8p ++}/#  ۷T3@HN|-'/OE[l6b``0eSF5JVVԴ{kȶM6ٳGT5t_|qƌڿ=zf1r 6̟?_=ߪo6++kذa # Ç;w͛7߻ww zիWϞ=WPG]G7mbaA^w]}*AڎwLMM,Y"._|"߭._`!lDVdܹSFF… !RYY~zÇׇ*N޽n: V7yfVVֲe˨NJJ  ww}G7o0AQg|!۝\Rھ ަ$>}XTT3pаU̚{wHSSS5hTAح VNC]EcIIojhhx[ ?ԉss2v(vׯ;s,3#ͰqRǏ;իW56>|hooc__5kر#66퓒<… srrKNi!.܂$I޾Bsu1vi}y󼤤Kݽ.##3{η<<'O;g^p;sX// ?zhhܹsˋlҞ+<<< ..$22F79&~ʕF=a'>x`޼yTl̝;oMM}mB5We/իW7>hѢc߿:uVSS366 >---Ga{n栣3zwu۰+6mfffccs]޳;TKW쌌]d2[a A3g XfMii)JVVۤ-ꪧ555@8| +###W@K7$88XRIIIoo߾[ (m!eUSLΌ6Ro<@] ht> <C#{~ A)] ՍTnn۷uy)**~I})**o.^8a„3g~&F|?cǎVh45͹kl` JJJթ!6KLLܼys޽pRYYyҤIgϞ9sŋm5who@?jmUUUA未vE^> miipڵF, F}ʅǂ.oS+*]ן?{ޝwvC!8`<|3SS?9fBgoݸ8:JKVijusvb՞9uC!&!?OE[nPXXtQ<[rr2֭[T~ǧ?{bnխՂyٔ)S"##񪪪t Jn%@o߾ЃBөnyyxxpnݢ2ᆪNE$I ^NK^^~ڴiEEECۼyʽ8:lmm ,8{,զ///?t g2 "U^P=LfY0nnNN2FQIz; TTRyBKKgx k̜(ލ=L<&ϺtOn:,xp;#3֮$MGȴYY9SS g}]b9FEE)))ZJ@}QRR:|pIIIMM 0***~~~4'NhAAAjjj%(\sݵk>|2}}q R/]]]ssիWݻw/PS) 6Ν;񇍍͝;wfwիӧ[XX0L###Aظq,XZ\\1`3a„2j*ݏk@@שa0۷o;vluu[lmmnjCm0uȑ#111ᕕ"{!q``Qgf]¦)wכ5{w5x *+L8#ʟ 9r'~m6/B](n& fOJ/ I,K l6"[!9%Dm!$9ҜRT+Yҵ@X,<4Iha֕Oh mP^_CDѝK\Sൾ[LZb|B N]ᣔ$IIIK!:~sp+҈I45p1NII_^8iu0%8L! jUUgOII~%ŅJgZy6ogG/׉6"Hc4Zf}czԸ(55 4B YPZR$V]?ZUUY]]%0ˮ$-++˳/BT3!* ||400n.Zɬ>n_:G:um޼y***ܵgo߾ݽ{ѣ%XO$y>}̙3ޞw .DDD̙3%TYP'8D6K5 mm/i4zĨ{e=Lƌ:c Ņa7ssm{;rFߊ}з."v~^֘Atfvn~CGQ"ff 6AEy#}Dmv‰̌iLLͯ_ J{RWWwo_{?muh͛9bqwޝڀF5JVVTUPCCáCΜ93b//W.Zѣ~ׯ_=ydv񌌌 6HΨ\! 'ĿLI~s+4uYYF[KMLJ|edlFԤa= ¹AXZGE+).rs[6+3=2⎂b#UUu6Ouuu=b08Q[0] 5޹8yhINFTWHVVi([?6zR-fɬo#h֮0kjs{Zq ďs4MMM^zQOׯ_/ƍt:LII)..NVVٳ#G6ׯPIqq AI?lnFntz/_UUy%\ӇaJr솆Z&U&hfn4 F,Ű01-ܜ‚\+tLDFYE6MUQQ$5јFcZB=a„nݺ9rV>_eee @5kVEEҢEZi)*****ݻ,dggq]]ׯ܂={vIIIpp0áO`FuREPH{*.9uO JP_619myɏE[2]MB{~wY~}>})hfffffF=xb]]֭[uuu|ƍ...wSN-,,ܳgϐ!C:v`N=-//Ϝ9 NsQ}rmI:>504N44 R %T$R|hZHS۰yvۈ&%%͛7/44T޽ۺu5N 'OL A eee}==jԇ/۷ŝ9sF=S9ZSSC&(B_BSr ]?̚jjIڻkCW000fTKM$<F#/(++bvYIol6;+3VdXhjхKF)R%%ŋ?~\IIi͚5/^`]]͛555n+ݻwrJ={@LJKJJ~'ejjjaÆC*((XZZG؝y{{Ϙ1/ a"KD30:zxg&u UU~QΟ;v?VvyYvFfVξq^`fnUSS5p3.3mʥB15{VQQh*ee3sԷI/i|~ >*^rRoSihw o`<{È9Yٺ&++1lvNv܄+ַ2cւ_ed 5|Cpa$rpjTUVV R611qΝ^^^Æ ]NMˠ6dH_$33sӦMFFF==z۷oK*++i4j䈸)|el9Iw` ?5PM1n[b֯_d2nݪ {ۼyɓ_AAAp0Loo .SFFI"&yK4 JKK݇}vՍKAAP"$ٖhݶn.#6h[BG\CYYپ}cǎussqㆽ[-]hllࠢqe˖͟?ڴi?1bwXoٲ%%%eȐ!ϟ?;;;y󢣣ѣG߻w %Kt@B]O-Q>|JAvdcTV\-QJll bbbz1|p///Uմ%зoߦYlݻwΝ{|߾}Mfm-РDfΜtɓ'/㬬3gDGG-\gϞ/l"Ŵ|w%ږjw(xs(B] UT҃Q@KB!Qxy&m륨A)e48HŚ_C2cQ $R0BW`0:~NA`0$] ?I%s3Q"BNNN:[{t:]NNN3!6ml}W)-)[֦yDPi~A-"B/BHZm󽋵G;8B·'Dk"QB  M45ENGE-Cj ?RWGG!ԩbtrTB+ & u@!*ACTUrTИ!$>#@|-S% E!)'D~!EE2!jp!z(Z!Z tKZH:UD!4xIFoB6ΝԹYWq-4.W!u}`QGG%+чBvhgb[QB4 QPhg=BN_KT谋^8\/i,N!B&[l+}9aB]hf, %E!͆'?W;G=B^KtW }\" ]?BqG"ЗL-QJQ[]l!:1D ΖcG6I1B%13y) (B}$?$!*14G)*(B}QeX%/!ZbKrTPW!کΉJar(}QBC ,,Bm"Z 輀@:9,f0B}:N6Rӝ*U@!ԼmRORS!j&[)FB!$GQBGa"Z;'*BAҧH%; $2l6bq8IE,h4 NoC*<,avOMX:Q>X$m9J!.l6'0L-lT‹D% w&q-d3DGBueXTVVvpjy'  (Pq+؂8[wW[{[W{z;{z^;=ov]ZR dZFΉBg<6B ya}%y>_ᇆgFhYQb.(LHx"MaԿg[ceD'LP qPnX 6[il@0YZ&l5'wE`ΘRR 71XzN]]]ss#c=斖|1`Xr + ,}]aUqti zOc~QRDuu5Xbzzz.\ۛ3w}bΝ;Ϟ=_UUU6mZx߽{Ç)++p;w_4L_}վ}"ݾcǎ?lIDAT0++h4Lm۶N:lZOl%w a 0Ta懜A*qQuʕ+D<0-[j4"裏8p **h4+'NXj޽[Rٳg޼yDTTT$L&SCCΝ;(##c۶mO6nt ;ƽ(>M{-^0YѼ%%G~D)CFIjDJrJw3 D$] 6DEEќ9sS",..#(%%%+gNgiiܹsĢ Q}})  ^ "} (6N $D' /v{ttd k{{{CC-e;iJ""rj˗衇x7n3g6I6miG" |jcHfd1+cX4Oa@ZV5!!1fVh4.XZ<_/f\N<͛D믏}]LCDDH5ѷcfݲ zd5Ėa~;55uMMM۷o/..ްaJzO3v[\\^W^,"Y]DDZt u ݽԚ~7\,&+iS8se0臁NI\RSS㱴zJ쪝t"o&%&&rp8&Quci;%sGWo1G3DRRsvG`/^VSSs)RRR2<~x||ӧ_|#GMMMؔ.))W_ݵk͛FF)--jEEEK Cee;3>CvvVZmJJʚ5k7#OdRcU ͊c. GZ<B\4W~UF,2H p{ulk׾}Yz{L❨p˖-oll\t޽{Z-iڷzkƍn:tPKKի"]v;wCIU6sUKմ>wYo "Ai4_lm?k-4i[fϞ=}^AK|>{g2)@eLTK0VqTNQ@`@~ / (56WM&PqDRW!xhѥj56ATߑ+^ta,;o.-$'e2J$y |19 ld\_@`on^ ٱh&@ؒ.g?ם@$ 8&H*HA1Q1A(DS{0jUŬ9ì%9\ PQBǘr)C c2D=,"OI)!ND@R*"bB8`! %g@ >DC<ڽc-bMp4pG}a`% O,& 2flӅ爣Stka ;O<ɱNzh(=@V: \#ǿ/l#QQH uI %c=zC6bܦJòHIENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/9.png0000644000175000017500000005755714212620632020525 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw|Te眩i36 z VT@q-u޻^u6(Ezo!{Ldf$d2=S$]fN}gy{!|wP,<9njJ+ˁ(*gỉ`[7!Ho_w=6@#T G72 ܨĵ/1!8>>ͩ. "u:6j䏑c!B'6$`Oq?A)?A}oFl;(mBAxt9I)k( {{%3\t"B(!]:':zXsגGBh`ŵxqbs0x!!1#Ԃ2zBh -&$e0B1J%Ua!K!LO`BW!KBqcBCt|ԡưM!&q^G-!29CT"c5pzHRBK(urb*!3".8_k8=WB$ "ŢYbjŌH"i(DMGFp@K9 rT7 G=<]bF "566hk|%ҦdGRAŨ.ιs&%c7"%X_~pݻwpXӻsO.6 H(ؠ`NQS/#c+X@@99=rf'&Q;// 6ڵ$Iz|ꩧt쮍!ZD>byR HH@!K=>pdR _1y EIQ-jouO!:?? 6޽G 5DfV2+0 a4r^\LQ zKwS}?t89np?L&;}i-Ms-z`*0$ ijn  p8ƽ< 핍!CL!={<A1A+['pO )z R~dS4Pp2EqQn/ɖtptK} }ajE\P^Vyy٤Сguvv154]M4*nq:B1 AAA?cnnL=I8B㐑@>?g:-U\>EFWW׿T{75eoo !mרWj]~K8r ( ڿ H 8 dɇL>?>w󎢫RQC |'u5CYY)DFƸ}W F4X"6tS-tw}qiH Rdm=TOgO>;vU;yETu(ʊ)R^Uȭ9|b'O<vwySh˖|W^%~{7wB!F3,, ֯_o߾G}Tz}hӱ5~~Yo=ZjMOxO6$Y{4mffƻwQQI)A.[O:C5s+GNT׿gYYqDxd}}ݷ~y%D!H{U8p@0X ( ( Š{$d?HH @,~~[lݱ mذ9::Vw;H?xk./\4,<",A(Jɾ[ZR[GP"u ypdq\m?^Vq/' `..wo*_gҒ"7UTOϜ9QWW;@R77!& &W]yH>ҩ GKZ.@"d B1&y]VɾW*SRd޽WIZ =~7;`ӧtpt,*ׂCJJ  wll߼$JǷS`5'ߝl"2wwKN \ W_p\+?MM2?~?uLqwWeeEiiŚ;wAtt=RRZ/zxx5674o Eaa)SBcR*[bblM@@QoԘQooS^#4"3X+zX_=PG.C?#J\e9LpnX ]&X +Qb*DՒI>oS=tAT퇮G26z q| y>_c!fWMy=v򌠿͢E[ XB!r!bA!dc(8׷)tՁ'AF!"2)}V#\'NIL`B2f$%~`+C!d8:D uZs!(OiBv1(B|MZiBv1!uQYB1C : żC!jTg݌B+D-n;A) ,v ,OBh\,A:΋QB㒍s'ֆmBh\b5Qħ!0'Dǚyى!4X7D5¼D!4X1DX"`5kCP"lxMԔ8B;eZ\{GBJle^T}b!%sv!&k^5kх1B֬F'#B!{aŘE! lDA-pt&(=B!@%jh B̦!DUX xLPLIkckOE!dםkuP2q&(!dxM2)!Zѩe{@'Tbv"]5{h݄sr2:;\{@@Dҭ<x|/D L_|̙3>g} QPr7C=gf ȤJ| !""& ȑkk*9o-;.]Xfb]sǎ'tuqҩ/gEyHDSVܾ}?D+׾"(-- y䑅 %KDZ[[ҥK"ԩS֬YwwwӇ***D<"g+Wo _۷z/EQ'O|饗֮]?䈿"ۋ/~7ݻٷ~+vءp߾}"O?U]ߋD={(k֬ycώb2s5-A:B7z@*ŝR^^Y^Bjxx1BâBâܷ#/oy^NX0z7888)/Z3sXWWBʅܬww77uQ^yzvUSSj*OOo&''端p8z?k֬sM6m…h|w׿-[vԩtuu=ӧOvtt{3fӧ_{5e6_pON?nݺ>(##c۶m,kgG1!%*MKТܓ'-^29yŝl6:vqTVvuu;;}F{qI症7͖J wrnFE_v!''cJL'BEM̎Q}NNNبw7* :DqjkkHTe˖۷oߺukܹzs&MqF_@}}mۄB~߿e˖;wmVPPꫯۏ<Ie尰Phnn̤g@g?xzz@hhׯӵXΎbt;v}s-/|b%帡{gNKOI~ȏrlҤu8vtgI} -^50п{.v=_߾}m ^b臱4z̎Z'']'ܹs###Z ^jpYB~zzLx{h{{O# ݹc̆(,I:::^u8-Innw,//quXl(iM-% ngh߄d77lo/B 0\*%nV___0VTTTT@\\-q?sL~ڵk͛0k,zmii)tuuK7,gG1XCtn|:㯺? ? Xǎ,6{ ?6-3?K/I?XUqϘH(@gg\.W^SKR^^˴:٦CpBOO9sP(Tfvee%|j{NoBLp_Aq85N͸ }cg`c~P(rRMYz644pH3ㅺ.W.Q(:z]Y^zΝ;6lϊ:O/^0!;f5Qx.]:}Owo SRf޿ҨGKۨE~ꩧ@u&<bJ2TU}L#I+ja;P;SUoh~C_հ`6vG͙3rrrq#ƍ1 ,\R 444'6L?*0%Ai> (oazj~~+3g\aVrr2kO7-uٲe0\)vwwӵowwm4 K=t555jzN$988\v---f'%%)W-Z(44WŐ3Bv1MP Irs6c$?+-ۺug}裏FEE]x1((7ޠ.\p۶m~mWWWsssYY٪UNT.]z7m|7 6̘1ŋ]]]ZHHu:th֭'O>wܲeF߂"Muٳg[}i)))K.=?|9wwwN׬Y~Xz }^{gy'kjj.\~7773!dCWԈ'2l eu7hDċ/#""tӦM_5]@DDۧMv__~޼y2k֬j?/zuڵO>[BBB{w^zI7|bqnn[o;@#Ir۶m/bgg;~ZH|鸭G/`UܸqcNNΝ;_{5!4>w(}Ei|hw$z&ԳfN%ƇVsҥ_}͚5m2?s-f*@ BuhS]1"mL͌Z0B!;a); 3޾Yt%h5QS*Q=_>jqʱ@>>5Q߆*QC|WC SfF(B9ús58HP!&$]gM,KԠ!44قco֠!4XgtjPg5n!)2GC!0locRdg0,!4&j' f! tR`eKLP0#tEDgԈ B_1I/oy^btA[a"+DǒfIvUuqnC, IDAT%cb"cd  P3Ids8YXi㚫nQA!HOԼIISCB#n^v~zPs}!4i QPrB'ݺhP;t0c jX#T)V8BLb8A/l;A p``ߐK rj "2v6v}-^޾Οʼ⁇ES[u+%E_,F.+ 9 7kYø<=}46EUV#uvGĸO?@K"UiDSOLN]EHu+=15Q }S[__s)%OջK|$P(_¶wظ7.Μ$q{{@cY^\? d6@w$p%snÙ7Ydd].@DX/UF G!dVZ.Icb}B0'e9EyMMRWƊˊTW@DDAK'B!C7$5נEES[\ ~y<9 ®^=\z\YYQRԪ2ggo?Ub"SiD2A0zh̙S-YRS]-NjZѴc=-B!KS[Q.vpp(Dҭ$Y$AtP:ظ+4IPCp`"C]"8طwӿۻ |} C{.\8Gf slvpp(Xhďjx&A;c]p A!1>Q~ ' 98:ICGD6UO6kaQp-tjQ~RB֣qtݖ.C\+mMV=V p]%1jy|KFac{Op >ҨGRXxƉnd Tj!z:4m~{UU2l<_sdYR!'^sӧ_v~ZVV6}4R[ly?8qBunRTw_Wׯ/zzz4iҤG*o11#d0SsmcoQR()~l2չս⋋-1c vfiZm۶8pg}KKKϚ5 ?#??vھ};2 B{{Gyc=YK-癥wnݺuŊ@322f̘abnJmذÃ^/嗓'OW^y͛s1KA2G8@ףUh͊Sj CϜ9 r4GGG__ڼ?޼ysrr̙OKKKXΈsٺh2;׶AoCkWOmi m>ӂ#G;|ABB]W}gD!1隨Բ j֎L~;hhhb$@Ph\O_wݻwshhh]]ɓ\LBf5Q|˨2:o1#]Avvv@ѣG %%f(̙3w/v.nR&c{{;}}S>oWBa#hϩqp5"蝯A[JԞx{Lm2Lٳo+Wz{{{M6i'bbb***ϟɓK,QRSSrSRR.]y֭g 7xcŊ.,kɒ%^^^;uL&[bEDDñE7,Q#@E>I,AAgopN)A(1P>7|ի  nv2 q6Pp\BSBcGDUr^B!@3Y+ 'AP^\3K!5e5Q-'0&cDv5:&HP"!olԊ!A<OJ?lUJAǦZFJPVGX,LPd,_]xScGY7AA8aBf_b\j;BDŽB1JF,?G.PAw ]>> !o(DǞEeg˾2uv|¤1SUESQ1uꬄġ~󳎎_xȣVjYEh+OB1ٺs]=wnS\0MW]8- 0×/hA# 4m7}oW/C5&֢!pX40'Am~E N84c觛Jl~a@(NWo*ܡ󴷷j\T|CGOB􄨁ݼm- \\fWyrmfjhܯ(E 6Ҥ>>R5!u@WWGkkm d47"gZ@,HrN6o^9Xl_\zX&  _h򘕕n^mnjpsHID/߹ zzˊlEIS@ 5GcSeO.))tppPEݺy ?Gp O/hn݃\#5gyK4@%O L' $\.[PVZꮶ3ܸv rOO')(_D":uÕeuUyTTQ¢isdg?3ϏOdI ] ⢼Io@C}miIaLL775zzzhj[}}}AC;&:::22nTVd߉vrrQ(^^ wyAAAAABPp PYFx;B!3ױl.{7#]1VxC_\T{﮷O>O/liiUcg̛3o)ry"&&)/7+)9E"r^&I(o_z!!q2}@L|pDfBp\b ͸sϻc-TZhhk¹J =>cDTcuuEWrj{om0bG!hf/""& }5GݰUhin_;F-HчR]Ng!}̋N]pJm@z9@_|+#|55ܖѭ'+nC&?@mЏ -!s\4v{*i i|VI "Y,婒Mup\jW_~ccm_uBQ 'јZaG.BhWWP8T X)o]]UsSChX#/&&ᨭ;8:)/쪯R jt@^bqr X92L׫R{l!P$cοow~N?mkk;Yl6=ιiA\Ow&JBQ[7SK`tt<ɹ#z0wO,wlOOͷ(EF@~^݆ޞ`-7|ooku uZ!Ok%jTzxx;;\8wk>50o26 )E%^IEyIi}(5{QEEɭM ~Ꚋ _N΋<}Ȯ?9ؙ3ko]񫮩yzఘĢ}{vzxz%KGQҔ;iG1""c985-E!\~zRWVWUzxzO&*:^ge*.,\M3sBR 63/ݸ\^VT{R(t)'LruH~9/?b{y4T/g7t5|EyIee峣c~˻ / 0dj5_ ₌;7#j5!dLj_v^Z{4'Vk82gFos0j "4OBȶ?:זU7a_Bپ #W+B!dc+Qݎ2.Sàk_B*1fu! 3=;>O\HBB1*qOK0֥F.ձB!%2&Q4B!C 2BԎ"Ä&)L<B!u#.9f=>[( Tb./wUК cĹ Ԁ+!TD>j4c![@4PgL2!.DUV ϜqP!>+_A#) Q1r| B!{b b""D͗b} Qa"[w.˔=n^B?g{f`1B~7(Lo PTVuwwk;7L>5۷1YBNXK:R(*,"^Fqa!:"A9k.,)!=M:H"p}"]FJ @?  ν1 $ \[ RDԯt?jCCt"~x#TԾQ B1W^ HZZRy*;+D p}`:6r477]#uqR ;;GR^^ڒvrgg{LL”i#kV6-JtLr?377K DSZ% 2[[⮆7RcY)+3^] }8\ 7?/[-z70HٻKzRrjɩ|ҽ^w!5XW! C_RJe'(B1Ctϫ$X#!hƒg6"`bnI!o絩&6iխwT}%+diۋy0JBјq~C%d9;(I?36~ϨU[B`LMtRlm,]YŒBqh xUTU+LDL {"kvzW$b@$)؜Lu\1978x` YŠ'[V 9ySX3U{; ಼/R :n?V!hD(l(S\8)adM;,{N4YBUPsɝORU)B1B4ڗ  "} ͓I/YcY^|u% .*^E/ y /L[-bs!Y!̆ ]BUKLLuA;b@]8#9CghL #XЎG)`ZM j Jf,|$fg4K@@iq#:_A` i8]b>f ,J'ӅxhI<¸#H@e4xH|9(B1sl'3?| b| XZ. a4)s1ҕf15hJ'‘E!d) IDAT poR[Ó Q$I@O{u䌀E ,!$ ְHp CG[H*B ǶPu"™U-D6m;)?7"ɃVKI!ȃ( BG tŬ(rnh|f$\Dz:AP,MOaBTN iDfOJVA{RdU-xXVDE^꟧e`N)jF"‡&n(^'딚U!̒ѕ=g|AU l B!Dy,O>~[BHW9Z!dt,_1÷!쏮oLXѮszl BFPbZ1G-*ڵ(Br'5hpJktn tK]~$s$hhBB̥\9~9ֺhGh}2YA3(Ws#14fz{NQm>XB Ÿa|LJ+FqY_6vvlJx#B!^G5;xB1s_QoąRB\je1T_9'B1W1p ML)BcŜC!TC潩FFkG!KPE!di QPB!Fԑ!E1;QB5D2,CqFB&aP;_=_W[MDhX칋wn^xjX3BMt$0ljۻ˂GGgANvO+nB!q=sgI@qQ.g,8'D!dI Ѳ–F_:A :&qhAa81M#6E!d BJˊ 6Vm;6{zzO1/"*V¹UBoڎW.r;FϚETXvrcC`_BƀJԊYnjR2'ι3G8QeE/.[&)y*e{h wptJWݽao9NbdfZjwx媵̳٬hUTp,{*!cVwnWghg@-f'WSG$Yy nRsgR / g̜q 6/zzy@{|^2B!ed ֺHi74,E.ښJ(.ISf;:8)wlkkil \%AAPy9IS==,BM̪DBWG2zU{[ (Z":;}͍PZRYuyw`*@B!d =!jEB[mM%}eT"u8!BRh$Y, -"`t9B`̚;744 sGr.rMm7($'1qRb$/;0i&BL6(c=kr3%5._YQBwH*+Jx<>}3 0ӷZyLw/ڪ2Be'bXٙޞ&LE!``4GOiIAqQ~UEIa[inqTt /-)()ooozgђA}/'!3fmmB ¼̮Ύ֖;7щᔕe6]xbixrտB! Q ,H tHm-R@DdCkGxy47TW n>L;G575{xz_ ?/0,<%ڪ G_U  쨭鑄?gWk Qb&"#~{( l0.57ڠc0;1.M@!ʸo՜4 b&#C51!2JjHB[E!d;ٝkVzrc!(O0waP"2I(3z9BHSs#L9Bh!Ja`nR`xàD!d1 ,bFz9Bpƅ(3rS+,B-.Fνz$QB*QfN`d#Bf0J19j$=uE!ר5 7aFZ50GB(CrԸow1X"nDM[EmtPtL  Pݖ$-}|nzRt1Ũm nPVZ0I$*+-~XlShkkIt%6>iyʾ+gܾ歃+g\<-_C\#?Ϝ`μ%kj*] 999~q؁T ;R[w4!4iѱj4î3/ZmP^VXTx/8$˗N=AD$6]ze像[[Sy5cPpx[[@*˒Jһi'elzPAKsO \ˊΜ>a+QXX{EYqSSCXxrS]$E<ݹ4m/rpO^nfUee#"cU7+O=󢧧woo?(-)_tjpPڧ#"c ž=_g')=[::i%=i\.o%C%:yU'@ࠔPRV5t`PteWAFό/{(9&w˦RVLT21Ԯ#Հ/(FD?Zי裡2L=ͤ;~~?dnk~=9%OP"4>Ts?=G4>_JW=䑅z"r:Zq; glݸa&1c|: KF(@P[\sgg _hp{z#*P'SQ!D̀-vkZ8"$>!ܯtuuQbh_X"ug߸yMiipC42ͽ^{wϟzwW^i 1Pe"# ii=ֻW._$"UрAIC mۿ|g'-/_w:-͍DefcۈrzGDfs0F/)@stV}XXjڸ+#chkm5*ȴ|ח?O֔[گ[˜crUUf Xw^xɞMtߞ_c0qK]j !fO;#/ԇ3ښWڰG6 Oho! ,\,55-MCTG,qԵ~o/57͞[{te.5<4:#b8JKo^[YO;8l0 &sj`Il8\ -O"T稲U3 /wXE~oOԧ'xO >. :Hy"Εt4ebVQKo)`># r$EaoEj3#$Q$E#>sV U)Q$y%ktR0Jbn丝u yOT@ʛlRD<6~j!>L l~h `$#.FhRT4&#63R?8PlA@>!@9 QЮ{}#A_v-B*4DЈ"d[/S&ɪ(D"e(Ϗ ~PnYE;Y&[BSJTS1SsJ)gE\Sy XOta]nF'O}Gf̘t[(ϙ037TUU/_<>>^Fѵkٓ 7Q7-a:m)wv:-):_"h ߿/ߚyEw@ZZZ6lP\\LDIIIׯR]g rX^'-fwdžy_staTVRB_j%q}_}ɒ%DT__:5YS @%2Vjjj%e˖)۪8%?ݏL?L^?zvYl'*ʈhCvȑgϚ漼k׎=_y'N|޻woOOd*,, ܼr͚5kʕ ޒǏ[,ٳgY&&FQڸ9h}HW=fKfLb;'g43H}JyJ(##s=sGʚ9s^y^rm۶/>}:0p/=u /PZZ=snǎ"ͶiӦO?477d2nܸ1fM72Dilo:\tQ~ Cj\ݽ_UwVk@b]|FL~EQll_~YVVVPP^۟|ITTdz饗OIIID|ȪuEDty,}_3_t,F,-(7l-h {wڠ6lذiӦw}w ǎKHHhoo\p]~yUWW;&KIIy׶nꫯL ^TTd0 > .ܾ}СC^JJ{ӧO7 _uGG`Xj:zt2hLsWrq~ٕ^6q>`͚5V婧z.ҧ~gX,O3gΖ-[;آEvܹ`3gTUU͟??4 Dd0y睗_~Ν;y]]ʕ+Enqqq[n9sST ]:T^z/}=.~9T4l%:>R YhZ89<RSSЪ*~+囕R{$f13E>j5P9sI$?P8GMqO' 8C}OdJMsCsIDDM'T+ɆG3_ h be١f/sa^TVVdt:]RR`(eY`0$%%t:&PjIbT(ITK+ϙS@x@d;X Doy\oD*zD yJ' 9Y* QdBB4K;S@^z OPUV ҴqP7@P}6P3(nh$D@Pm*TP T+a2!ҽ Q!t -J48— ? o"(CąN1*+bu8zݿ?e6mu.-յ ^eoTT=YuZ Cc_f]{oEcu"O=uo݇_\nC Gum]=::ױ!Xd9{-[NDE!IENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/6.png0000644000175000017500000007114014212620632020502 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\S9 @[, 7nEj⭶UZm{mooVګZEZJŁBA38# ~jYsb'8'ļ$5rho P^)wKR@xy z RQӸL(#cf=0UDWIE4&B)A[GjsD7 Z"3A?ReeR􏢚)]>:{"Bȗ#\%T|ԖT ;9pײPyWumS/LbJ JǓ QS_1(B}lg/*,1(_H6^Rk0GB1cjkkUvۭ^.:LzVy;Bhh1QbTzA*!kBԴf^9BH?BUݖS&&--! d)!V&^4z8“zKDB544\[\\kffa/Kh%DZ fRb& S_u}_:"v@^*|9+BB Ɵq=uTKKKh$  fbqaOVbH:e׆vԻ l"POXvmPPIQ.{ٕ+WuBTN(ÜEEb ĥ\6NNo2\@$ERAlfj=',V)BڵkO:tR777JP''HHZf}*Mn*a`A@@QbzKS15Я!tJ0\>8#DBᕈff&O{mB $+V  ͛ 4B(fxMYېC I3S(S66d8jL2 zm! ʠs'J(9<}=b<А'z7DcYZ!366vpp8{lrrr76&A!B p@OHݵ:Qs%PJ|2|x!{uӲEǦZw}ڃG.Y[H)'# AD M%.`Oq٫W*-+ٺe'IĻ}e*U=ehiTT9:x&a @~:*>njP(%.0B`P- 9}ݷI ǏT^^{bS4ܬY 1\BHém@y$ ,XPuy,`KfY_/*h"A4Ml綕ȑcUU6-Xl[\lllGXr3 ƤIS=@t rp2Ψ(s66fY&ee%%66vᄏ],5z\$Vz ?w9DuC#&R%ob[WLtlJ~^ +K39ox|O!?ZW8l"fRyLT@4jmv?t{~,dR5-[+JPuw!|ڨ53WZJ 0ŠE0c깶)B6"I{3VLPE!MוWHO8"BBTc⾤]qEBW%$4E/BTTKc]BCTT#!^Mhtpiܽ@~]]JϨ)K%j*Da"G&󡀮IrPsN!z1Df%FYz+DjCG!+Q j|jyL !4b!P+!l gGECTq)H!^}.0cB>}>> !ߑ7NcUOPB@ODǠR.!nݟ݆}!˜Zy;PT!z,D귽E0ABH QPa"ffƏ3dE!T_zQRR|]m5l CFV! ݹ]l*ڭo-s'F_uvv nG]Z דr BS~@kkKܣAbak렖T8=!!crYS]IQbccLf*&B $jjv5{YFl07>NZZppJzI354dmڼ AL̝쬴zS3 7Wc} fyy"ѻ0u :Ƹܜ;&f>>ӧ]?wIܣZZZs-ujqQY<*+/(WvvZ^^^"Gߜ7ugw0H 匲s^nbjV]]պwNT-?#/8::ŋ'O\]]CBBcZZ+'lٲe9Gj%FFlGUX.2y׮\(^zAd0@ء !@ xb}}oM'(,XĤok+))*WQU~TuFzʉeՕ uL&:bqمyVֶ,zH,JN~"z>ffn`2VhvkkK[. vMJojzKQ=p}nܸ]ط5((hڵK,$x<^HHΝ;gΜk׮t*@p<(–/_x⠠ m۶߿?ꫯjjjjbb}^˗/y6lp8o+ùwG#++޽N6߿xb[[L<ޗLqeee_M%ѣG?fϞwF%"--ߎ;bccmmmW)//\o2113vs^T<<9ZZZnƩhTPu-[<}o?~O?1 HaÆyX7nܸp A$x~_~?~KK2[3g IMM 3am۶I&8p? bkkKo|]$9O/X 33>333eXׯ{533۶mc$I\233s\.W+ĉiiisvvח_;wlݺuԩ7oNHH }zǎǎ;vԩS;POjvHЮEk߾w'2//+mnn3://.R abbL~sm6/3GzɓgپC>+5%dXXX[[u &ccc%3L>|xIpww_~}tt)S ƞ={쌍U[n ݾ}dsyxx\xRr}qHHȣG^&;qDI=E"Q~~Sz-++'[>&&ϏyO?{,ٱcA~zsss`K,illܻw%K?ѣGÇbX|9s < ??Ӷ<ܹs C~Ϟ=SL ƒ%K*++<8a F=wܓ'O.^۶mS8];POPĢ4J fY(gQCCr[Av: dN6g9W:,}}m(gM;s.;wxUHN)vpp  --mʔ)rÂI7y%b_~jС1qĐ!#'5jTzzzQQY"##덍. Sa```ccSPPSC0l0 Irׯ_644,++knnחsEѳ ;vQw}ʕ+[`ûy".h~g|CQ2^Yl6[WWUGGG ]gEŋ ҥ׮]Ī^neeel, cbbn޼[[[ \)SߝI|IUU ]t'|"̌~p}g}׵K򵶶-mfjjq>̙37nɤ;o߾iooJsqq9rHjjjhh],--8НQXGAݼݶmOC?nwnu窜  sꝜ\Ϝ+uJiӦ=yÇKݾ,ٹG-2?]v-_R?rR!tRE\\\P1 ظ7nlٲرc8SׅsDu$xsݖ->Yt-mv Оlز옘e155|ź?u/_~d&$ w\v@ tdd5++ $J.tglKK }QĘ1cW7ojkkӁ*} ϯ1رcLgO"vAuu׷,--O__? &''X,|ґ]PP I=[[[_wߍT.#B=iV6d>T3$Qo%EO¢1++B|.kbbzzz_UTTv1--K=~7 IDATSJZ|>Ç4s{FFɓ'kkkkkk޽{С^{dDgee]v-((bXD"ѱcǘLoFDDp܈V^{MzU%"+++==?OUUUuuy$8{Çl￯]d>94:g͚%YiӦǏ744>}:))i׮]] #::://GGGKu㯿~@ 8w\DDƍϟ/^9rAy̙@c:::nnn!!!QQQB0++_~ikk'{qssf׭['ޒ%K~yu읖Ofr0aŸyҥ7np8Çʕ+ FDD_ooom?~xhhyt"2?ܹsO>s挮ȑ#]]]Æ g2X;v|ϟ79r@<~ @6HjLPPg*ur,!@Ce,E*ڶm[TT˗~#G>|%:Wz#Eb`?ME/kll  "BBS"՝ʽ>,77͛nݪۿ܄T"'t!zX7ϟ?Oā̑qo,xL"~)YU?: ~DF_&B E!ͤ;KEVvRY6pu* yTuv-!6C) Nc:ݓ=qi,B&{6 eF*+B!M#/Dz8|B?Zr"5§!#y!sq{ >!{7B!E!P/[BiekÍZY9!@߀NdX*&* Լr616B~M[` ɫqs'}BHAFw]-^~"ӆw|A! f?Vt1EV{'NF}lgRSSO:eMKK빊u-[lٲ*`ѢEgQFu:RMO{z X`*WWא(Tu\kR\I/NQ!A9fĹu̹Ȉdʓm^jh^LSq"Ӗhhj 70o<33-))JiPHzȨ+FhC񧞨@ ]#Gy"=6 Cŕ-6@VnC$Db!<׌m;77 &I=zܹs5++|PXX0y䦦&z9-44ޘM6{q8nݺ?޿ x<^HHΝ;gΜk.LO?dddtdnXXH$_br8KxÇ/_\۶m/))꫚%f@bb}^˗/VΆ 8_ܻw5;;{Ϟ=s]|}\2O?מ={ᔗ~3fؾ}{aa!믿ߴiSxxd.Ҋ+>|_=***>>~͚5_|Eg-6ZHH_ >\o[[ۑ#GfϞnݺh-ر#66V\ p8ⰰ˗/^8((Hr:thٟ}{W|.TUŋIΈ3FzojP5((hڵK,n?|r8j !ӝ \>2p4'( f:һbm&lO\MUc&ioo?tPQ Z~͛缽 ~ݻw-Zƍ+V(**숈kWUU}WED 6^bE\\ܪU )Qcǎfgg/_'O@N]6bSSpPH/' k^TT[olٲEr9֬Y?hРo̙3`…?6ߊLLLxʕ7nXx1ڽ{Ç%8qÇ$I~'433;wdРA@P;x =tPmgر#11qܹ)))ݝ;wV\аyfvx~o6lؐ!C$-9;4f̘͛7O<V\)y%Kv2]$>c;ںe˖qڴizXX֭[%Meё|-++?@EE888@ZZڪU%{Ν--/ZTgΜYjZ| \$eRʆM:-QPXM9Y1+C{BIQdniR;ne޽{cƌ\^l6{ɒ%{555]d#G}7$I?~͚5G/ 6mڴf͚ﻸ|嗺gϞx,kϞ=vvvu۷/QC͘1c޽_ Fg%$L[[_?vXFFƐ!Cl%/Fߟ~#O8ɓ>>> O:[oYYYM8nݺ111~~~)GEE۷+L;vرcADDϟq[~'˖-NGVWWoÇ8z9s藟ξ}}vwIh;=i#|DQr!e&[ſFokV!H %ޯ,24#P.B899ǏyLz`uܹaÜfz sssOf@[[x{{o@O̺… qFd=Q"/`snJ:RRRC#'ЭKKYfEFF:u*1TܿLKЖ0aÆItJ+OwZ[[$YTT$kjjds5O +++-ZDJ%bرiiiWL/R:Aܱ˺\ y Heeeaaq||P(dɒСC:t~?fAꫯFMj곊;*5\R'@Z-1};\]q5ꌥixz> %%%E$yHԝyyy`aaAJ˕JWZZzڵۇ~Gc~ڄ5khit)P(yfll,=G2F8eY,F;gΜG;wnՋ-?EF}.nnn~tarrr***|errr,ta;t;uuut3v̎ݧjU{M}}==M Hr}yyy . *//rt?9Zp.Atpuu!J(_C*Ҡ ijh>.dHՈQt5ܘ:44T2C;<wO2b9>>ӣ~˫'Jd0K.=p@aa!^̭;jmm5&_UUնmLMM7n9sƍc2tW۷===U$I]vőW^k׮.D2:{mKShС#F[H /Z?,n۶M)Aw/Q'H/733#^VVtR;;t;Ԯϧqu:lпDMzZ =Fqn1)wx8U魧l޽fo߾MU{prr?)y(?D[[[ӃIOOwEOd;)QѣGvDx~!J4)S8p 11$I2O$䔸hCCÎ166^`+W֭[}v) -Zo߾'J{Ջ~ͥ(Cee%t...uuuO<4hPBB=sՐѯUcccU?tyGEHLKb9;;Hn)ښdѣNNN޽{w+Wξrƍ;8UBwfee;,)--MY'{ﭷZtÇM6o޼ڑ6n86kbbɓO?TGG^a7K/EݹsgϞ=C>r›9x{{:uƆf;;;s>!o&::ʓ,G5;eKPJPZwfx>'M7.&&СC?۷W\I_q(mʕ #""䦵[nuqqxbhh%ĉ3f~…ӧJ 'MD?`Tݻ/\ܼ{+V[+Ŀ&&&|>?00f[Nz/==%K͓ Ə?|ѢEVщ*CCCu?NBPH$9r$UxΝ;}3gtuuG䌕.AAAG={oSSf!%w߅ݼy^^^4F:9*v">E$ ReZuQam &&پ|B/t=WOMMԩS===w%o)m۶˗/˜VMG9|ÇU=2Bk &&>$ErSAT>{)ri+Wի5C-,,p$BCjeZ-%(ASNq89smersso޼y֭mBƊr6P&A1E_9bݻ999K,yNiϟ8p}rċ1Q.D_*U^(87Վ\:>>xBHe[휊U9=V!B(eִY!&{9D; ,=YG.@V(Bi0Tx(&(BW)D{l4c1b"{rzjW U~a BN'uB]{Qyr%dlBH\ݢQ2JEf'ݾ/? E!Mtj@|"_; SLP7 ( r!4rc*{(k܄ߔY!ԿmbEQ&հ٦>'zEQO%%VMF0d質8~f}33 R*OqG.f)Bi,M,w;A W"Boߺ#+وTw\W]mccc}[QW_ھ_r?([v)!y-Q;q[[['r݆m,P(|֡ngB?UJw.55UUO!јϚJXFd2QŎGJMXFd2,Znb'ԎKj"hR6iiO++X,#&Le sjܣu뷶 wn_+/+f^`ee 69Ba Gi͎yxg0zKݽd2Ǎ#IU+-dVMvrXVV޸S8F)yx7-5gck?m3s (/=6AH$jj|N?A3f)Bi:ƦۺmmƆ4ss+6۴׮yM\\=0l IDATH~sJJ -\Sbk{aZZmmSG sH<|5)1.9]]oMMlKKHxXYYەeg{x70ill(/N77dTՄ1--ܜL>ŎWh|C6n``(S֥%EZZOvpprppxIȊKt^OXv!uUommByxrfҫ22>Yb=ZzƎ;yH ͚=<~OIN6|4xU K5k7$IQԯwƐ# Af/ nDN7gYS^Cttu+:{q؜t33Bnjj7Its3lԍ+WcNċ{;y[uHMK: !P/P\ M_ ##vFӳjhW%%> %.Aid?ԔD]]}!v2S3nag5J QfQR3/YedNOK>sC:kl4F橧_Po|(u!5߀n g N}](+k;9;::[kliir1oވy#Z##W:H"襪y gHa!7,[X+Ŏ55f<;2A55Uv/C8VNӳ=LS7d(/c*+jjLMmLvXIO>Gj+Hg<015Szs;]eų٘d?%L!٤B{W?k umm`aa]\_Q^1kuuECC43zܒUEE U+CQ☇w$ %Awwoݤ&Hq(#='>y^ժ:&in.r ^D!7'~޳KntuZ[[j+_AD4E~@=cff/޳),~Lr|rs3NkS3//7k1g̕ e9V/oLKiL_htǢܰg^T2B"i!hLv`LMD.dv$dRBG3BMQv?B9Wo`DH)6FBH Ք#:YNE!M>D|ň&"4zHe  ) g15BЀU~/G&w!Q(y"ܜzUww=łTY*"$tۿ;S6uk TVYVjE' n޸o靝 C B~sP(T~.xy^.%[ܨ~F7Z<^CcY,c6;-5鷠#55 yq'2ZYYXF;&hNvKdǞEu GB鍖hܣ薖f0  ??;}cckhj dwNvllj ;Q (ėޫBB7B_:ٖP64>kUwu*ًSb.BiQc d{{hjDXJr,a#@Q!7 [[UollSSSuʊ2[{ X,#,@#3|G]X 9U%G t./7[ h¯?qm.7'RSS3 dC (Bvssϧ>kb~"S.Dn4b临ĬԫW¦Ϙ./7+̉ $ٍ6,//uvlmlrvlbb|SgVRbܵ,,G+.*+X<3R~4(3 BAoD,WghpJrB>7{_O?g<-//+=-{p#o.//uu1bG2t477y WzGVU Kon"$E?ܻsC^*B9R`tڷ5^; 8 %wToee g]L#P_|YnbNgRZXB]]s9 rv&fnT:46|(7.߼qYz9hdV0Rs$aI[!z/Di^^ >LOV5Dmmd G %fL355S\~y׸ P!*"]]}W;{䧏[-@wRXEhѻTd@g$" q JMnkvve[-!ԯ5|й|~$/7kG5@ HO{ dlbUkel"kYF::qMQ<iTzUתX9nG;*bb//֞H$JR}C}0j?y1#ӶwwN8w>?*c!"6ƃ8C!&''/!!qltWDzo@\AD1JBɻs*10̎Pk2MqnFr#x" wj4qYYQZ'!hpڎjM\VvnTԵz{ dej())%'w@k땁^&.r&~\Up%9s! `L]~{ BTUF1DN1[ c]n4E Bd7lt2{lq' 1 \ Qo)j˝gS֓ " 9YVĿ0!uM޼ҍGT!*|Ξt=j*(p!DƒL}p.!D}䪠L/@pB'D9:;/Yk@XB'DiA-;g?{ GDCq,D9 PD9(XYg|!( @B*De]B GY:5t@ +D.,GEg Q5|xQwAj!jea-Ddnd2M%w9 h{N%<'D䎛V Ue_|z;.Ɔ%K}ޚ;gF.u\Qb%ӵs?twwx،l"c~3-b"J;Jb׬_f=( SHq0:2>66b0{qE9Y1@@Wr}))ifYXt9UVQ;w/OLFDFwhq) /O߰M.:^vaܼmE8Mw P@}4LDݺN.D3ξk#Cً䊘snnf^_ZHDkwu=#""}=GnB$:(99b޽E5F w i4q_Uc/֬]mDTEiUWΞ޸ipbD pº'j펍(1J*&F۫5ϺܱV{)+>Q:a}=ccZmQ\\LFvp hwwT*MJJ#55a$]DTe;gdQkq{DTw!oIb!JnǑIDjj'EFF&$hR2ޞyvWTS1|˦sgO N'nu/5Vr||e٦&n-|\#[#Ui SIewݳ'1)E-lgTPk<,]W"Fy={Ƚ/""~TTt[YT~C./IQSy+ջ/rokn[<,ل]o./wS V%a(E= .] F"JB!d?Dnj6@;:7 XaU(ExN| 6Mbo?@(z <951Q?,Qw0"AC+N!( \(mFݹ+1 Z̫EM۫#t3u| р֭x`JTGw9eYG2~O:66rQ]W09y7oc9ʊ/>i;XE |S2̐ѽK rBTT?-Pd@Tý`>rx8cn&uQ߶|^r'9%KP"/(cD$"}NDTPPh+͗*Ϟjn^9oIuդxj&%%}ގ#thŒ7mJntetW|yGdYY[Qz1؝a"%]{bc5ˊZ蝝Zr ξk#Cً䊘s;{goDDDQMrw˭x2,wQT*m\QN?_+ah 0٭&Od=}Re0>Y~4?0Z./}σDĝ(vdY,ky?QddTMukGGT&=$"ڰU 5h k?'Ovڧ&KbDR]25il#z"Zz#1DD=9y\QFf6黻Xڙ+r JDZ) $9 xA֌LL'"k1jhdx4;ѕK|7 D׫'4„q]mܝylTn.7e-Dd2MDjH$DU\vyjZ9}s؝gDrrrU D4>>j]222l]Va|lZm2Y̖7v&%Q__B{xmwwg}nIgGKٱCDl0Ą9**:#33zv:L&g]mWozlYT*>7<<-1'z| ?z`aW/5566_|LEa|tI~aL*:*J榆ᡁSGƉmo!/Vuv\:fXRS3r-!Ԍƺёުʯk ""&""Ɔ͍ee')Q\p=j3(=j͒% ~izqoRKD)I)}:n; -Ydp;Ak]j"&pJa5B`yJr1 gfdd w'& ً~=QQQ>]oW3B@fbe%,|j%Q,#$Dn r&Z~Z kd "D^Vmvc}~0+Q&Vz_ Iw8r"x9 az:qDG@<Xbq-DE2wnUB2?Pv <̬SYԣW-r^'@ QWq#8Bô U;ASn0#ύeHlG˳Jt~ /tx0w G;uaB^:3(ƛDQ?[šC%'s%x߯:lѝX)\I 6愨G9hS(eYu0ȟ92r itt6esslڮ%]j-o~6wE@s0־WJZw}h_2w?_vƿ?]|za^% wʳ&+."joZuZg@!ˉ؊Qw`0̸5JR D卑E\љŽYvs/!:55-FϮu 9 懨't/O#W D"zF22svcJDe]11ʂj-?qǿS#=:M\b>g2M YnnݴybpζM'Q>mwv~rrɇ-&9xAn;qwqjsU_jmn?\Ѷ;"#mrrYًXmxoOD}=a >ylhp;ioWg Ef֢Xwђ4 8#0$ё|{[uۮܽ8vŲhIF•Ke33}xq^by.5ʵ{OnYeӖ6n.1NWUDFFm\XGd6K{j;[^&'gfMD< VѤ۫_WrZ~5  |3ь)~'Ek ]y&Zm)1Q٩3bcIDATΎhbD$H`kr22s6o||m;zS%h\R{qN *(c'8hm_;%OVRf37V$7wޘycaz{D^7x A W,[McĴx5;/O>#(%Dizzjr2=#$.^KDc%cc#DN$R Zp"1vkY$4c2}IRRu2DID&"bY Jr$:Z9==egdkznll#""a$SSD6V!"=KFD)8Ɉ e.wYDDjzVչ1M;bc5lpym%wk~hpGߕ_P9_Uw-^j4N%ܼnT*}|JhR*U/zwjq*zh-؂eŧOkjl/twwG""#[$ :K ܺmWjjzչ/u]rhŚ-[wFEE7)9o?q+ rE%ou[nH+͗*48mb2<-=ۏTQ}w^KIIu=Jvm6uQw|[c#e_ST=;'n\'RS3&vCx9 *LUM3so+SYogZuѲlO wro+$VVSnzs xE9!_GsB,D*F*h<|}~J$>ޮiנ(TC땨y{v gXb=2Qi z) \- 3(y[2xh4JRrS"Q6O.89Mzk~G]z#GDǭ\gZ#uy=;zwDѹ~ 2Lm Q&Z(QN# ʻ@.79*!x|(`:c,?ySsݻQpJ4`ՠ >4|!!]OA켿y<]\DV~;C( z(itnrԭ9l0ς7b=JԓC/`)->G[%:!@(gƢ(E^{ۣrg^uHƽn^Os=/C=>/ytj˷G@x>|_ Yr\ףWog b>>==mXH$QQQ*J*z{VTء|牗ҙl`ӍEBQNإ)l6 j|r,V4G i CW\'r4rh! ~1>> jeX= .AC4R[%DɋqQptxDyuպ0߫b&e(Nj v y LS1b4>E W er;7QO%N9zvǒ^03gr-+W v[` ,03xhddO>9̆ ㎸`7? :~5iq&#ab'qڪ7-Mc k"ʈ[LJsҰ߾z%6O۷Z}zꩱ`KT}m3ݺL}2u^Ae '(qE^0TL,˾K/wID n=T$YvX~v+$ӣG~Ǔ%%%{쉈o{U3338}`Xn݃>T=#,-3kg5RFVY~$1$#FJL/%iT @h Lk;v,??ڵz' u/+V`f߾}={O*Q1qcoXz*T*,]ڶm[dd$~lm_}UBQRRӟw}7 2쥗^!ݻws!Ҫ{nÆ D3Ϝ:u )*"IӜdTferTT2, }Kb EGG@&ڵ˚|Dգ>P((--Y%#GٳKP"JNN果ٻwozzUDTYYEIl4CDܺ7lʗ-dai"&2 Iu)@x޼qWTUU^]+\+Kd2FDD477jj*..65cbb|$6D97m"n:rђf0-FEC*D}cXTTR4 !!!6555`()))(((++cY 3+Xj-׿r, "etQͨQ#4߹DR!^ _JL~YzuyyN^Auu~={<2gggwwwێBh4DiӦ7^7^:X"RE3JfRRE3D5~㭶2lM*]3uC"x#\bF{v8pbu]\WG W%%%IzɴpwR~xZX6_{cݘȤv|&"6 CtO8O+1f9 /^|'NpK:::I"jii!Y"bY̙3n|wu:dbbZbKuwGȂuBDr/ ?|~BDބC;ז?OS{TO?쳿<ԩ[owoiӦjكI钓_ ?KJJ"##˧+w}Gl=Š+r~844$333>?z˖%Lf2 Өgߩ؟OEBG,(/^?4]]]'C=c sέ_w2wm۶+[n<͛r"~uuu{/JѼ k׮={l[[w'UDe "etG5 EPf>F٢\]qaV N=RSS=~«>(1?oyYL `rOT`֨9*A)X ^\l<>'(x0=#|&*=ުVv Q %J&ŨD"q]4Nd (V){oRV!D.kZTIJ=ϮNIPhl_yG\?Shx@B|"- Qz*@tU[D}Oau{vVZN*Cr /U=QNNy5~+"#!è%!\d`B 2¸'j7 BD-A0Uv9QԩTbQGNL !JbgB4ċQ9Z›d zG>FԔI70½`0I1n$n:Q^-9sǺa.\~9e6GNt444-VWedPl4N+H\7W'U @SSvO!q?gP΅swIENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/11.png0000644000175000017500000010414314212620632020556 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\w3ہݥ&bAE(&XB%ݝroKr-得7Dٻ1D,`A)JK[v~+,.|8y)C,~}(IMbf$CB@x@A@*57ee,( `@ 6˟RrvWLiW\ 5C 22lm䰃S:;II-ӠSC=cq~tiAABW 9qbx# 3Fh۠ ڏ.ڨC!6Zk 3qs(ZTĘj(4?! VI܌LgxT5/imzuCyRppb>kt^F%Vځ bJ[hVJ >-KPA(MBmDA, O%TSMYBAmaZxj: y䉎-/ aĢ1# #CuhVA'1j ZBAF!E[haw,Pjk3`ͅtcADTN{29Mp#n' %BQ uګ`" y 7==,``l`AMCS eHXGgAMccX, Q[WWrtmǦ}` @L`bOg'+K:QO%]7"O?DvE&_ &H(`NQ[/#ax*@1@w91 Qd: ?...;w$IRD_j1J-!8p@@@B~.EHY+n)EIQq'`GEAᑜk׮˗M"v hK haC*p`0x2)JAtt֦vtj5rrLɬk-MNN3^ Ah#457zyX,NO-ZN P~ P[[gϞ^x =o+]\&lB ( ~9)w268)XLRV_~K20Ee%(^^> +++&j|GL>Ύ92dܺ>zq: Bgz*(.{B3'!!T%&NO)uIW@o PgV5wu0ORtm,>eoo(f7AdLC=RzwYD)"!Ɓ@3I>BYL[NPD;vA> f7d2]EBy2Ap}VXAEXRAR@*WCxx~]?lvƆW,z (YD<TTRȽwرe奶yhɔCޫP2yCpGq( S&Ǔ$}ޝr_7Os ]qr\<-0-~漹 FKS*~GAu;vltV5AD$ݻW95W^}aGAgO[`J B PΓ!")xxx~S$'HO9##}Μ p,$%sh[ =??H+W.w'~>:slk{ 7 栮VAN5kٳbŊQ:K9^` 5s"oFʛ ) b;)Fܗ'6vϧuu>Q_)9+VP>m&58=[H :dݯXkDI;!/WB(H9!PN/9XZ>ۙnJ"I)ƒ=Q UoMvCRSO54ߒ t~F,6G o`4m+ 8:::::1fuQZH9{()&u~(HEwSʻjRu8Ng؍} .|端uj|̦&v-ڵ ŀ|: }Fi!AB[UIp(p>GIg52vM/_PAvvSHbz| ]S^V?Ź|usZFWqF߈=UM@Rx@iy *$fD*p@.)Sr 44(}}RAEE p`ȁ lza^"7 OU0@3[\tŀ: o@xx={fVѝBe-t8' JW%?7Ԍrc3ax: 9%HN>Rx J@1XE(&}䔠հb~^w}gkgS]];孷7rsn}f| &zkSKSiI̫o`0Lؔ}w|ʊ?S/wyzzUTpl| BCjE<'ooSn(9ׄ" ڢ]̲3~1cO=^ /G7 ܙZv3[7wIod+WQJg\\S$*//a03g g;o)+/iin  흜=3_+UPm*{wAdl3WMZ6O,J30(`*Ep?Ix}AAhDl k`4O7 bK)W>lO> r)g# 2JO|X2 AZD r6(@5E,0YB5E,FDŴJbQZ>AKE !fjOkVAQ_䢛|X>" O=Q!c: V1ùzAy"0嘨A.YAܘFDuOGAZ0>CCpQfAˀiIzШF@@ũG N'!;+(x0Oĥb5$rrSZ:Jz{{{{{mݻw޶6sbN޽yׯ&;vŋJd2͛;s227o..VGd'Q$4R}]aaQO_pdT 5]UUe҇ߎv{3td_c9z4=]ϸM I7"#']\UUe=ݶ6v_XZ _g8>|rzEߓ& [[[777ܶX^^^6d H|:M%"1i_qΟ...hii\E# *Khm .p{{+V.++J#&1H/?XrqqBwrkII#3!n0 f0If\VX(=T`UH$nT6Et(D ^^ǏW+ؾ^~\/;:;C &0_,[{.c'GEMb#/x mww:s]yH$rI҈#V''[UKKc[}GgI˻T^^/{,'zŔ/y~\@$&yz=L98:6jXI*V)ΠE?*ST-4" B*nA~Cuvv._ի ^^^f2:ZSSS\\\__ODPPԩSL&ݻ_tppK^z5;;{…!!#|u?;JW ==fԩ7n󋎎xbŋB!xyy%$$=(--nmm'}rr2}|ΝwvttxxxL>QO3<%%esU=ӷz`@FFH$rtttuurnnnFFcccUӥR7*++ `ԩl-4??U L4v/ ӦM+2̪[nuwwn$2EEEzΝ;wy \B1uT555</44tҤIʬ#Gtvv+UUUYYYr-};t,//?r?srrΟ?Og@uu0}c#y5ǏX֛7o@{{={<<<>s(..NMM ONN3gӹ/^pϟ8qbgg:;;S18zhQQ}nn=Ç߾}Z8j RSSI2eݻwۛbkkse٩8::N8188\\\?Dʕ+7͛tz[[۾}ݻyK.+HO_ wv{@݂h:`2RBS\͖H;8:+ 8=)6( JR<怎^b| Y Z[S(㣣 %%*((Hs` bΝB0000##r„ {}OOOtΝkgggϞiӦmݺy???VEDQQQyyyXXܺubS__okkK=kjj cccO;vVz@1(..nmm ꩧ@(^zU Z[['OL?7oL8qg1b`Zr&O$/_$vuΝɓ'JaʸUUUi|ҥKY,H$:qDeeehh(EQ/^T(+VfX999'N" Ҟ}Y___c1':2''W;;?|?ؿo;LO|҄GtwwkT(gNߺr SUCQpϝM=~3+ll>#ŋg22}VVg;F!ڥ$b :{ۯ}@bCCÈUL&]Htwwvuuu}}}cz5qrJ+ @OORrG. ]]]tɒxdC}}vgf 2*mN芡F胲2݌:_^^N7x<&IfXE57khI+A4訯 T ?L:u)(dLTqPgg׵ɯg\>WUUV-*wvvK yl]xxsrWV;=5?)*G(//ιf/tpv~?>wL' ͑tK{,oJ@eeeYYYCC=Р|Z___SSz=Ԗi/**G"A8::vvvr&IOSz {ݪ$bN |:x19s+Wn޼9H7x uehw~b)"J2$}ETl,|VC 6 vv|77OtO/_O/M5 &s,AQQ yf3,c>!W!/wQBk4:vˍ?~VVVNN27000==*44? FzXɓش̀[n 7DCUM41Yt=ԎNxEuttܺukڴi&Mҵiݗte_U]\\iZx$Z]E=WrجLPAi9R Sbttt2 \psʕ.Drӕʤ$e,ZzhCCCII̙3wm;88(CF5gB}sssooNA899555пbڱsrr2{{Ceff BڏA3â͕#2LfGB1 1.]"H\x䉃97IFc T-ݏ]I~ʅ(ј~]d2YQQ<a0wg IDAT666EMHo12l0dA zVmllTͽx񢃃êU^uz゜M_N1+g C\9w>0-JxtcZ$ =ꬊBZy ˆWj3]@P(w/Ȩ~EW8xP(5bq`g\CT(o1`W!}2x*v\`64CĒPನ5(sĉpgggܐzƿ_[[s=Gǽ{RRR\]]ˇL&ݻ,vd WUU]t)00~语mcc+WlllHxs„ o>rH@@\./--]p>u :SRR|@LLLaa7:::z{{= h ::ƍbbbbF} LMMe2uuu>>>, ܹs~~~"hhHC. )}u08z8 "56d㋊r)S&O<(wԩrחw3Lgccs Zl6;((VSvL8Q*EEEرCwĉb -Z wܹu떭PAa0K,IOO[bō7"jggbŊ+W&%%=zTL+_^UU111۷oӓA|| FDDDgggqqqKKKll޽{U?^(%$$|U2K,̬~͚57nD9"" Y:H.FEJh]gHA~vcߤ|4J9tPccڵk1ҥK ,Pdw7|P(EEE.\pww_bC+$:+?4 V1ilW>J$IǬv!U꿦0ͪPۘ Ȑ]vZ %%%"H&%&&ZKiwqwwbAXb"ۥh5R 0tGD5bԑ "X"AYe (*( Ș4L߫AMOA1f5sk "a$AQ>AFcAEAap.3["<1ZDW'n..*( ȓFU4 *I+$6;:EgӮVPAA04>*h=o[]]5l>_;.6v*$>6j&*( ȓV-h1 5 !!Lvn֞[ôk({ #, X$FY'j@nttdfqrfƹE`X Xb $Iytwwoirrrqptvslj j 0DYL ډ b}5Fy>x<[-kEwKK45dR¢++Jcjk 00LFQ:Ds"JĵA>Q}ȨIih;|w9>>\9w27,<򥴊蘸 ;;ȍKAQaP%m`Xa85H\ 榦;|uǯ~sW8 |ѵK-$@QD"' Bp8Vs5ưSFd0y<RtwwC54ԑ$$HʤCGdk.@``EA;8NJ^dBQm^ D{7ߟmw\{k~IY__{W7ʊRbp+$4S%ŅL&4G׺[@a(.bXwXufѳf/H+Kx6R/y> 0$>= ~LI#TPAˆ-HĈ&$@)?>5ĪɆwCuU瀪& x{^L0MǨ (εh/Tֳm-w Htܔ&TPmQ%,PHA,фsͭz;*:6*:>6:鮠"4ݻǏ Eii*RtL&رc&*Jk֬a27-bqFr3HWjMssロO\no[8==7M``#G Ơ"VSQ^^~W&&&.\$ySjjj8h˗O<)> !`?0+ń[j@Յ~!??ӦMnJKK[b2/""bܹCt sڵן:ujĉ===]W2I===:m߿?&&~gg,D=y5wV? OãsG`ҥ]5+00f-_yZA`ŪЮaZׯ_IIIu<orܦ!zF5&j&!5`FUrj) ظm۶ __ߤŋ{F׿z{{DK|Ͷ6JQQQro|e˖-Y>3*x"oSRRZ[[S_~$IT:s̗_~7p¤m۶͚5 Ç_~gffΚ5X]]w^OO3f:thD˖-J_le r#jtvv)SX,tgΜ9O?|A=imm]hjʜ9suֽ[YЂѡUb$:e&oD箆sCTPsic|||$%KݸqC)QQQt?77W, ={в!!!PTTT{zzkcccooP ˈZ2 MPlڴI[[/>NOOOIIOi]4k(C~ PA#Vr3hcc#)JmyH@[*CvCfy/RggNZBbD2H,á&&& )))g3//_ TX 7(m鸪Z\PvTԮ8=}Gg"SBdhhh~~~kk+[)DP(4M+Uq+ZA3#nnnPYYIQ----0T* Iٙb7.666K[uAK&| YYY=L&$-W4:PVVFHҬę Inw,`UFAY2szǢ_|my3 /<&?&j5|Tuyl bptR(eT?? zA偈ꯏE,Ȼfo7=b=aTqPu;f~~vG{S\ܴLݾ?m_}I)sC"sO1 Y@CaS N4Jͬ X&hKK9 վa ._JbRNkiiTv3WW}^yGMnմ _4&&V_?m6I2[73׽+Lz٦:{ yT&ɸrT.$&.d-߸~)6vZxD4G5d\PYQd2ϊ-M.njMegN+++xʊ@QԍWt{xzI\MI%==Oti3Ha_H_ a%TG;@A,=ё,e9׎$~i%%9+^XO'4cL.[`)?w*77v,\fo]?|hWXxL\p)O;UQ^rVtn굯 2((c/?rz@8#a^oOwkl6{ƬU!Ƣo bhiAs=}Iq?^FwHTj o I;y\Mhh$kT*`W3;[4)R8w/싋 A١ة] ʊ <"108gcSSS?1 7V X ~Z``ݫ?7ݽ4T-Om^8r|ʠ\@=:xlb`P֊7ZE/`P(4LB}_oo[}OA?i  #br-4wpt_3)U6=M ]Κڪp6vs-:r| bX5ՕAa #bg'H;{2FGMm$z)YR\o6'gB&9N!*zRk??00iJ,uNu8Ar1L8uMDUբr'g׸!K]};y)3Qߖh05k_v5^H(t RF`t-3LCܥW.,ʝL ",IzŵN~Yi9 m0k$Ko];>voA";L{&ZW\six1˫@ JT  b^ ?;לX ~)ACۧGr`Xsmhh㏛_~e:oۻ;enK,R~4#0M-)[zgEJrrr:U̸pͩS&O]נ۷QY&00¤tuumڴoٲN:5c e TjJ?_Tg1Ub@Ll|ZEQfynZvniin|1y(:ͽ}¹66N\.:wPtAJ XՆb>/^Zv!ZVzΎ//{疶emCʕ|͗w o- |*hƊR{8\Dʢ덍-ZaÆ'O*kˋJKK;~ڵk_}մ4ՊdΝ˖-ۼysOOu? ,ϵ+ ֭~eeeQQQ~GEE555nڴiܹ7nrX/^Y~ҥK׿{7!l,T:eʔoFPɫVڻwG+譛Qq,E7 Ni{==r}7[Y+r?^2Buuuk׮%IrժU~H$zw>3s9sۼyٳ@";۶m[NN|پ}{QQŋǍg_#nٲe鱱7otJJJ{zz.ZAǯAQTII 8;;͍ȸt?J:]]];vؽ{O?ߏc%Q?? -aeldnnnں{z=֭[.\Lزe _paRRҶmf͚EÇ_?@HH333g͚EW޻wgww3:4޻wo˖-&Lpf͚b NWG}bŊ1 \.wh.=H,_ti3gZ槟~ >x𠋋ƴ.ZH5eΜ9uz-myה_~%L )DTh%' JM9v0I1&Zс==}V}'vҥ-͍ ,ԉUe,'Ξ sՊzͫNWwcm qrSSSlܴC>h;4)wرc>>>@%KnܸѨ(>bX(ٳLJVP "Ο?\]]{{{5OBe˖ݯN,Yd,)(< bӦM+(~qzzzJJʧ~J<ٹt0N_t7NjʱyϰٺEN:UUYW~+7.ޱa\@rHwq++TBogM}RԺ{5NQ(&.7RP;Es-BT ((H:JmyHpcTTjfEw;:M6B!dtXC?MLLRRRfϞ%K\*0:9՟S[-*7?)0(LsM]UYV\T9mjj Ym9z{uՕ~񌋫{KH(jW.(0*ډ"eYss.4S;zá}G\5OD-$CCC[[[y@DWLퟋ{oEFvww?VVu  uu5F2R3ewRiT$}_wXrJP#pssJḛJ$I:;;q544NSAOV}{$$$XZL&H$][b$Lw.[?`2/_:[^Vk ҮN#X72͍p~''/t]@11M3B$HTXX p MKK ^ʕ+===+WdX,JO8,]dd$;w,]رNIMMUTWWW(--յe&+bu7nH7IL*,.-. תCّdbf&$'y{;8YTgQ  U[o]reƍV*//?s/˰G1g* } —^zN._'GFF677gffnٲE$R-4iRBB™3guв'O>dӦMׯOLLlmmtҥKhWrBp޽\.>??III|ͻ;}*zɩ6L8q!d a J% } %~x)(ioo{G#j Ql-`hH ]\v|mNSGa4+ }m۶=zp/_. SSS͛a:b}WǎpBZZZxxxRR(A_~9$na޼yǏvZPPG}d߾}Çy<޴iz{{ѕ+W:u*!!A*lc X E7lLzN\y6PUY`@gg;Pwsh ]b7wOTZ\T*@h uZ%hH+~woը* i纺yA8=Ď!(0AgK4EEӴT*tQABN vw.ϑMT,znK =oB\񸞠`D;&S~jQ5;A C bQ{p/DԮiha֠!ю)׍QىBCr4ZwMJ%**B+юѭd[]m&ݼmB!c$D;f] t xBY9N8!88(Bq']nMU9BJ_QBl|S0zKM'b"i8=Ӿ[5T{B,ݹ mzж`p"75DXWhm69k!9D $Ņ1b1GBcVhJړmްhF<oBմ7l-*[((i17ml.֣!ZͺsLю;6B;!X4ndSe2Oݮ4Ҏr!؎cwnĝ="ƾގgp_ ;,bb1'RSv6at@a&Ter!yl L 8}!wNv}z9J~XS*)4]__/ˍ4ApN`crf~FSW{Rz 6m\\R)wE$) v|$e...nUxcJ_U[q4iqӏbVhu(ӗ&˟jjjŝ|lcm__^]ZWw|iA:J(zp4 {qqoX!ڮg;%Ẍ́hSVV< 5_ee/ݤ[9s tlsVuL>Rb(NGfְٍ(#N'66׮^R 774b4?̈́7yH{@qM7ۄu!RNhg o(([Y٘[XZ[|`j}x̷fjbjj2|ң=hGUR#U bl"'Dլ2F ?W.$x|xxRJʆJibvd[M!G1QٷPbq6Hˮ]lcnv!*I$5+)iCh={ (B'i3ޘYcnn&@& )Uhkk ss KvEG'=Aj_gJvvvݻwhSbcc!2lʔ)|>ĉo/BaڹLZ<ٍAXV (gvݹ= =xHl\dbbs;+}Qjj7lذ0%eeeޔ 6ꫫVJHHоm+W4iR^^I&mڴIZqCQ,Gp2Gsrr"##B=xHII?~nn1c***8Tx]v 2^;qĒ%K>cƌ$3={ssٳg/ZHܰaÆ V^ T. ,Lrs*>͛7ѣOu6m233Ȋy晛/\ڵk7/77wBo߾XS!bi9sgQ+G޸q_~K,YfԩS8vصk QQQ k׮ 6 ܹ3n8e*-7ox&L(..,Y2j( _yf߾}|N ŕh.%8N+}W$(:tӓ%OLL S0%!^X[4C"## %?nݺ1 tj`nn'X}vqqIA;%%E"hݻ3_1XTB.FAŔ-hPY[[@~~~5IPD*@䫯sԠ+W@^xZo*DFF;::4@q)%%%PbsFFZɫ7_ŢݘtoWUOeգ-RDd0>+E_IRxZYd{͚5/s[n8A?MnCM劈@K8qb˖-+VXzH$>|b׈#ܸq.\޽{|&{7=z%Do?矟>}z۶mJիC*++˗+M]3EGGb4!naw%ʁY-G|͛3g۷z-6n'Nt>|\XX*VHx{zzl2q۷/Zh?޴i:M.]kkk^wʌpٳߟ$I+++___kaaf͚˗'NDׯ_4h3...sٿʕ+I|7Yhь3ݻ7gEscihK U=J.}ɓ'kjj>_]m۶8q⯿:{lnƍ\ʄD:30sӧO][[r^{Mg75-~Ӝ&?lfg4{?/]EZ-aڵbx׮]B3gϛꤑM\>~xꨓ_anLTClAh0PH$^z B ILa@bcv !g^^^gΜIMMH$LKK[p!z҇yBjx,Km۶n:k,fǧ~jˍ#sDAaQPP*{zZEEӴT*~TqqD"W$B@P(~)f#R]}" KDW?8w y3Z. uZ<O p:AݹZvb.$x,!1z2B!ԊVCK%B IDAT!Օ0GBO!J<iԜ+ j>&VTEk+^} f"H`YYӁL,,o|9}BHXw˙ؓ55GbHM'xdkXB B4â|g7&A }jactw1GBCk!j)i\\\w_@ŮښsgOgf=qqqocsr3MEf/0Y~ y<>w>9BT")[&ۙR2)1llM`'~;ӈQ{ 򆆟)/+bjfx +_vReeŘ>)>%<'"Fb3F!aΕ*Kq|>,,*+~˿/]$2Ms4 h`mc{GhfΞome&&;7sHΝ͜5 JKYBqz-jDQdv K+_߮u59z^՗9\| r ~R}}}v\5B!`W%jemSQQ^]]|WiI(9JJv+/+[,,Gin^ q ' !D!jEֶ9hϊԧQL) d2)$yڸpuu/(B!k\H}x.;{G()[[6٫"/8 =M7!b!ʎ+ 0A,ξ6%;sP(xtVWWey>8a89ڴ}B!k V*#+k]UUUdR?^?RTvWd%vZRRX/wp4dԃ$WW.`ff޽{Ϫʜ'`ggWfT[R^Y]]eBg Qb'4VFʘ\uzvrw6vBK\Ģ zZpq.b=r' "pv.;N~?Z?BEӴT*E\$˥Ri+kpRD(:3ح 56ށ ֠7n]G%BvhW%ʎD5\b"RݹQO(Bf(m s]%B!h1ahQBlMX^`Togg׽{w f;EQ...66MWLdSL'N0x{BM!Jg~5"F %1!Qf]+Uldr˗/OJJb;wʕ+/\l2??_kzٌ HdжߺubbbK.cƌ7JcV^ Æ 1JKҷ6B\J~t8>R CR9Q));u*%Iܽ{w׮]kck&$$={vԩ]AAAÆ k۬YMfnncǎy敕_z:~[V@}H>JjhCe/tz,--M&Ν B]~~~GM9eȑo?_~mc5O>g~7׭[7000((XAHOJ~y映Z.QQQѾdB1 {! y8pۂV^ͳ0X;:+y/U-"IrǎG533?>6xC_}ڼ/ٳ%Iy3ERtŻv2dkvĉ%KpwUϬ,`>a |SL}ܹs#͛gooQ:M6@|||dddEEży.\؎l |}}$###/\0n8 u޽<==ڹsgXXXaa!<~8((XbŊ[n?x`1Kk($2%/oakke˖[n3F"_~РA۶mx'O.**ھ}{~ݻرc7iҤ+WTVV.])4Ù=w fK,--'O,>ɓ';vڵ}@@@@TTT|| ckjjDqaInݘ(TZff&0̅bu+~{NIIH$6( IԩS̖1c7\\\HɑIIIVVVYYYeeeLFb]]]GXTU]Rx1{M)//gFԼ͛wߑ$L0a!Dto6s]'qqq iiigfjII#H^^^̮ XjUW)//oEggzk}}}#dff 'ON8ɓ'̧ CEjQ.] L"i:==)GXa^fvc-Vn%.M8qb˖-+VXzH$>|b׈#g/|5s-+ӑ߿R?Iҭ[EEE-\0..g>|h|&{gϖdNRlQ1U@ PVӧmֽ{wŮ^z:tH/WMuuu| ̜9LMMǎ Es m۵kW777LMMs!sfB-#w&U#7&0i.LtM7=fii~EEFFN2E$]vmȐ! |JJJoޣGPKK˗gdd;vLXkkGDD9rwgΜ;/oDZ>yөNĢ<_'BRC_I^S=72\Sr $4M#-k :}RcTX’y.xRD&;!E+k]]9A8;zE$Hbcc###.t$|||cVXlAsܦ XѮ^^.= m̧pbT q;6>4I|2oc)bJ( 'SP kӷ)ߝƬJY\ 73(;XL:>%. 9V<2KKK//3gΤK$-\VE,?a8^OĞ/)n<k?}KӛA<>lSK eB>~hόg9H}rQt %DzPT 3{,M6Iͣx?O(w"<O~Iܶm֭[g͚lOG"`Bojx0b4^}B)y?4dUDp5 5R8JK, όg//yvDN ͯZ,'' }bDbeeeoo]t! >p`[5"F_r~i9`BBwʪiE)f\l:T xR: B1Ax

>֪T,.mUӴi/žNŏcͽzo2ul_ޝ[ֿڷÖ鏾?=ms綟9ls^>|tk/W?vXɘnkFu~򎻟Οj~Cۯ~_zm7]TcG~ocCOgw޵BS<- @3;vl}o=\c2qAaS'G^UCu<U(ME%u+Hk "# o?|Z鮋~?{ݔW/sm+oΞޞ_< ;w7⮮.fW~,Xx@OW^x̩cC[Λ`…Wd}#;~f\~ނAik{Ϻ;߹g?ק>%K3Lk`Y IDAT7oan? W )}5;uܥߨ,0`.} ,N3g$^uWyg@GBQ)(L+B B,FV"@" DE)$ A`(wA'DDAqa"Bq”BB [5֊pV.ؚذ ,b8AH)tj\x$OE?Wp`]]݊+ E|]cA͔)M}iY3KzgNn%@ozdI҃GfuO]s03GF+ lV:|.H@1/6/3+ꪮzɌGQ3t=ODFF]x}C!1t]\mqխV}!_uy:.l1:u uׅUZuPokuz}^?|/b]ٜ+7F[V?gwwwWKzc0ۜ?싿ի_wݏ>諯^}a O;@]!w!vMc׭:v1C[uaB !ϡCѭc:cxw~>n,Ua}Bb ]<|Mb }<6!vE͟> ݧ~ӟ?}1n%Sb઴#ML&o'/??O//^z7W>O!v1~ݭŝV}/?j}o^~^Ǯf9g:f&cۼd:}uBw1njel.k=]b!u uu!~Wwŋ_WC2|aA:0N>gk?|{GW_~͛w޽_a}{xD7.ltv>">1^YUoKȲ~܉A 71:vm=<~~~(AiqiGV/_~?o' jJ +Xa@QA[N1_FU:sn>/>qx!{?oܓ$)pxM^%mRL`DBl)xGHUrG,nº!k4sTIof˼[}{ҳKM&yM"M\kM%I<3/ɐܦS*0.yͦQX!MP9V 0xϨ|Z hgO7'Q6F,pGQhK"]^%~P2SF/Us,@!PfaZj/i8!fI}ͱ49ʈ'eOs7Of{h[#vF Ԅ/ec+b7ϫ2|0o"!4}MՠO*rZ9PXdUKU,H60$V곤+o)26wzRXt Bo^KC6KVk!$@K}6cAXupUW `DQD<1NW+dsGFY^{{L}* z[0ǚB0:p]8X898s; bSd}/dZxyӚf.sz/"I4 9Ǣ[ϒVO'S,0rǁr<p/4`8.Mq -*V}$_ce/vƢYR8 ]켑^xqs}ի4; k l=_Xh =F쥒t+W}\.z^31+UYr푮R,O KUb;`BȀtQb)òSkoLcb >TWKGwX+,{Mbr!MmHDDY"kJܬLz祮KH; \{)"Ꝝ;+cdWeLPٺKOJx$PX ~ 󁬭LK >'}ȴp^f˩2?h^RHRa~+*qX]OSFUyTa,XrHwqՄW{"b| gXyɘ9Vx4rtB^;ct*&65n?_ޘfU;޶ܤM "좒Z^ﰀ{\Ő+20]->FLkPKŅqERՆIt5?]CyAѩD`npکUd\ 1%4Yd7tcPenID\Am>=._y?"4XX+x؎Ki d q9# Mq%M[cZ?ZnTb5zEH7o]t'{tM>MP! u^D]Kx1GyX\L36J.|z3!3ZmQ^YfBK湯DxՂ3WD^aNmΒ.4渧WhW kIz);K9`*KԛӬtW*F˴|gc98Ǻs,4X:@vxuQQ'fqjbé~W{(2{876?)37+4F= /,α9V$:\x,IO.9ɒX>bՎмQ\3땘4 \V\@_W{"st؄p^Ys,iE!XgIYmnaP@ ή(^a*xxK2pjmx9i^ZiP,nx\RYrlOפcz߉0fyBX@4 y!\/oE&U`($fGl&qE+tUxz;W'FUfRjiθX{x]zG`g~ Jnýp}djQw?K@ ,tJΜ9fSSLf s,*oL, 5Xx?o-7Fn\ פkjk2e9l)W倒p@>mJ,gZj)xQ$>͙w%\pՉ WkW{"nZY~@Q.(/U+Ĕ Wz .,ms ;0J\V.I>\I\^Q\d^`*.0";85dEI/X Ƥ-^$WS @-Xv^2Gǔs#<ېj[Rzf# -+&/Sl=g2%AD)`F+p@W}$MىS fXxpp۞el51 KioLݑ>g't->F~ BlNuzkfL%cϱقw=5.8^һS4K@2ʼn;F^>+^>-K7:=~:V}c]9rlZIҬYBME&U`҅C^Y5i鈝~W٪$!Bصټk햌s,gŰ^z=g}9m lpWk+t=`U714|-_\%^koI. Hx3Z/ܺ\k.2O=^DZp k>Ugc]XIk^Dtez_j;-&e鋕*W2EbW}$ neis4஛]dET;1EuC@+p+[xVT{ՠx0vd1KtaY٨+'4koap %jBIgAu!tM> ЮD?$R];nY@垊ǃ/B0{=*%Q!ko/VHtO)-5CWnw9FU /"IM{^αHÉ=[YbөLz&̀в1-1y@kZQ+PGR{. bUi6>OP SG(Yo kP\@8.M}4s6U-fap  ͛EǼ}ǽ>p%p~ш4q@whUSpIs,M`JR09xŒ m8؈@kG2bLy^7@ve#1 ]+>i\dR9 [+P} ;WUz{Ʋ59&*Й]n&E\" VkcIjHm6ĜYA[yÕ*YkGS/F(UדM}w9Ǫ$l5/9gVͱpE ldSƄ H7ox%iw; .d@/YAc] vA$એ} ] BWɽ>\xJZĦ&ƤL} ^7m?nUbsL1Kz %651&= (8+[g>+jV%1Q ޕ WĀLFCۜqoj ٖ #`ĸ urk?ڻ Bpb1^fVL㮃ei˟ۿQα4ʬk%bos[KQbԁU:' %Z( hs{}cI* ŶD >(%b=_/.$7$U/nA ({U ];\b[LQ3mlp Z|=ޙU h&d +jsj g% FI WJSR@6q?"݃bJ(tmUw^W U(.eKFhsĜc] ]DkS w<,}u=ܠ<[d H.%E {SqDsrd+˨^̯ѐ>αα1IZW`$Q<Éq@J<ʻvQyݏKrC&.2G8jt L-v .%zc^αrCaqkK vd1P& b*r@u Y(6\U=#;6gR".c n0x$=8BqaZdV}/ ٖe\%֎ Џ?fUXA+P@B@{}cFlVB|]'kc=-4m 3<ǒ9 K5QiĪ\Ф+H̿#Id ?J) +qyƶ;y 6q1;WDXφKn׾t t."SLsrtJMp-\ Vo7zm<.] qAq$ITHlm1wMzYLTxO:!|(֥l5VUXX4vn>fqoܰ~wh|+Wt/pcq$()cgsܸI=42~)l\kr9Vܤey9$*HRmb}-#cpr_U ->/ ?nmƴ8j {H,:jI ɱwZKM}[CcB8)1ł h.?~ [|\bB}Z-d|sZ9g@Y\@$lQ$]F.8C!,3./ͪbyY0sĈc=%_(c>αEec*@;| \v IDAT^ ͦXFK-1XIeX46@lBAʽU 8Jׇ@){@$1,|GM\;ے8VV}}U nP@rk*M[mbO>αr& =\u`l7-=UCαϱ*,wh֎;ֳ.r?KOpع%iGNǡdpOqU>ϸ'=nmQ/kؒXR{}6fr׈a7QSp=.P ;D]y bBcZg(#pѸt*>O7,iPc箂of =\:d-(]OZ8| N*^IV w$68|=縁QR=[^9؍=1/#t x QX^kg=سȦK{!#+{pXe@X3z00.q4pǦ> 1܍^[:n͡}T1I:ϥcM'w29$iH"w(%b :pv:⸼bsH[ťc\I+1\ : 7<˶)ҸBkyb%i.f?@/<\LF~[|\\*<æKx?oصUc"e$IH :?> \('~w&K{)Az%|W n+@ ˪D9$b:ǒp#fN|>9*êD9k9M}$IRC|ॊ|r1qE1AtkG|Llrv?U\^n~'%v٪qkԥ~Τ(=hmڹ#~`ӥ>*`i&Z/nm~kzVh C4)f_׈u!ͤG$iDZPV4EஈV( m;XLʀl, S,α *k bJZЧߓ2ĸu8쩼; X)n=y|@>Pα &12bL]!7sL}$IRC5+>/m7n֖]VA7>wWN>nS,KT z](145nVsle^BEy{}'ܷ H`})=G˜Uj8* W'{pUuszj#IbS%!./`LTb5|jO>;5#1&CY􅌐=,S0R"1ܑO S9JVhGOc4́v{_kBM}$IRCL}g`|nmԬms [7tܱwp/Tk,4oY])GW^Jiη;'21=!=d7^̸KD _2vfLkꞖ ܩ?J͖9.<8܉4HK甘*8\qhJXbڮ8ί@*mR6wqb^JUb:M)NvܠbAcޣ3/tCS^5:'X+tL(vӞ㪲6N@ɷSucRbs^$!YOsvFxsW'>knT?e]d`y98$dyO'>{H-v2)UR:-QFY4c5<_Z9K*HB(\R:}<<ϵ Trm·9:o4VCE7R}e/yb]}6֟ M>_)?Q&uof~_)?*UZnsV5X/)e ?wiLHBHQv]wset]ϧ>gw}2IjJׇf3 N}>cv3y*t]<;άz?7x{ 9. Ǡ*}wszo~_2;g"hZ*p> !|ŗ} ct/Ɍ(q/cX}×ݽ/&=BwK3Z[v}www/oB޽_/^}_qc}]]:50]H)]Z]~W7]ׅ }_zo}?<&=ٙxFvcXVg/~soϗ_~W҅uw7qIEݱ?"hNK{BbBwUws>u}?"p?cI!pއeDmv]x+]7VjO#Ըԥ}O_`^"$I69q[IENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/2.png0000644000175000017500000163115514212620632020507 0ustar fengfengPNG  IHDR/=:U pHYs+ IDATxˮdIv%ֶx^L>TdSjI z@p(p` h&AHMfwXUx~l/ vGܛ*m!<Ͷ2;Oݽ{o}ӧ$abbG?:eiYk@r/ 34^ekfxo?牉w>裏~~w~wտW7>|,K˭5I˲'|:ݿ/\&&&&&&&&&&~aho7BHԭ5~ߗt:uo}[0u艉Gww?~4⢵fdO<˿yvw t[?#wE/z׃<|t:Nۿ_OMzbbbbbbbbb.<~7p8XOO&|'ON2_/&&&&&&&&&&~gg|KpH}`_oۿ裚_ub۞īoϞ=sw'&&&&&&A:1ˌm_a$}9/ Jd111111111B?211czc?'̻=1111113?o2= <3mxd%W/I}ɝ7_淯_:*%+cߒ?=o9/ovo㿉3?|-rY~. pL4B* 8v?8Aܸn XwɃ4P/Hy+ O|orz儹?IDفAB\QjWF$2.Hmۖn:|a&b 4? :OFwM?+ߌb|q:bAN &p)Wj|kn |9 vn_o[Ch޹}Nx`c׎ۏuMWy; 9xG05~hթ@YW>^0q:]oc\;ήu%zSvO75&;hc_E/pG23=s7K;xue j^WƝ['ǟd /4ݭ۹&NM/؟-F:Fgu:'K:~k3pqqavWcX53!KKlȝD[1 ܝ&]!wwAI.Ykݕ?4#HB& 3ЌʝYl JNZ{[*$tWKwUJHk u4i͖أNKPywLbkww)Upq84FH+iH.̌4 >|t>o|xqyɏRg7?^߿?3y[k Wk~㣯уf}=_y_{?~}?zy8o/WZvQ'~<$[+WO~a],]v?|v~|乮O]@ 'Wj;X9mߎ[]R]Gs+3#H 킻iqv $#T5vl}wL./g~$lM6(ĂӽJ+x-@$@G3i:`׷[߬at1;VBuzI%qwl~j z`ʂyMvʖڃĒ;o{ζu~};*wmYݻ;Sŋ$nng'$ՖSs}E+!Ŧ {aZJng 2Y;ve~7^Z$8qYtʻ`5*Hf֢ѺHD9 3k 03 'E5݃u9-KX=F@&Chٸ %FG(9f V7=(#5kAPmgQݠ";d4%;] T 'DMtIO_G|q4h3IZk' _{F#@G]Lr͏~`/_}׾?|tЮ=lˣ <Ɗ`f lqW=}~'O.[7yϝ'J05(]Ao5}ǡԭc4Ο>(Zq@yG[s B--T0lN,%.ٰ>)ζ"ŨDR(jwy`oOn'_Gۗ'E_~~_7+ U ,.X7|+gxI~7hvA6 qzi"6+iH|pW~uj%V%E؂gI{.,/t;k3gk38Cdz?s;w5zp!;c/tGpNwֽǓ#>ܕ 7ڨP M,w_׶Z pHjiGGٍ ҍفvevj5$:-v O+, /hFY3[E{dMIw'!4KV FC(ΛeУ%7k$Z#OzL @9a0dc6X={SanD4p ^MK@3R@ȕ`fA{}6IiA'19aچ(#4A <cŵgqhO~t;=x[_֯wo|O|:6dd[ԧ3q|tON:ep2VQN5q+Uz]tԝwmgTk(wueHC-zfn YK)6F@ң!ܟ~[CʾܚJ\l'gk;;a/wȪ?svGwU)?~{ިVx&2[kFGᓼdM&thycS$;a ;M_;2f{ߑ[V~k 'nzj,#)=SJa33_%?wkwoe}z]mW-?fs=y9*@v}XFH`q4 Ds8Zo{Zo׎_;cxc ؼI;\4kҹwwWt N5)H1FGR$D<\8XEe~DiIlP(;|bT^ ї3'W8~k;qq]i+V^[1J $@hSvDԨ.Q>Is4̕p9H=%y:dU_a5w">-𜵐mQ6m`c;JܱkW~1:+t꜌?pl, FoGyA^Ѵe@$Gcp dtj7@[6E Iw!ܙӑzęhMYlJmSe$&:h-$ydڌ2vѻLq5pC.X|6ݷ*5m\gߋns : y!L琍MflyvY0 &qHdQ4G:ٔwq2qR" b.AsA\h9Oz|]bWJQ}V\,\ryJItH |øtp2Y3RD#8N\Kr&>R(8Mզ\bDWw7YkvL)ny=+ݕͽ;.ؾ=zۿO?xrA.ݻyx.־Bh_y|ޣColKapkB4${͉+Onkd';ݵ ]I_:9\@w⵻Z\Gu>W7v9R5UbT[H?^&~{C;R hvK#ٙ6vG3HZ!B|إ4o:HuF«D{L1;hTuh-OR%E2ՇبMHnMQS$4%QpXd-3YM&9hSdyG0\yki(w6+^sDEj.'+mwXVbƝK]sphh3 .,d%ǁop(_qh:njQ@˶9bG?Ƴ3D3(h!r?,l[ca0򱦝޾/1?5alsTg$i.Ml1\uNc?rq:̹Bn '9%{.4.aQH \%U.j]zh-Qt5ƭ2w'B ?F6R ]hDjŜN;z4. j$kVF`8SbJ@|e0.ZoA˵$EӺLpE R2W=͕ISV |~\?}?೏+/S_^^.Gxxރ{W]Iw%Lv: vyX]a'YuمM1Bs7=PItESâǭ>*`$t$o[<;2С+X.v6ܦZ %p(Uϋ@ ][y*ٝ$.KCW &^9m\vtL.6@;SCԇ$K6 WVQ!vfr|@KV*DKQ|G b)Ct$K[4bUɣZ`tc40I9g|Ll92w1<L$ VGʱ2THRD@=TN+BYDvnnIY9.H]:;|岕ATC6RЃ82k$U3,I!sT}h/ἪC "3xt8tZ_ys%|Dk֛D>qzzcΓsuu]77ڟdsgd!iwd1Kd *9^K$a%Y*BQwƤ+DL IDATZTڹFFHԷ,vSH4Q;G4 >\j#jav0sv X$z# 6/1>IN#7+R9^=3Iy98aYR"g0 =W RKSZ})ͽ"9C1q QS?*Meb&/ a2BiQEJ%u۫+ ]9F--U-9–Q#V7V{`$'$!@4VR.1 eb.$f"$8LV(>F>r 'kdfؘu;Tgql"h!vXЎyEԩHl ̙$JB8ܺYȲYji^1Y;BUr3Æweתwbd7СʨƪVf-+g#ukkMW\;"2dOٳ罍*6vܺ-d-3WQ{1ij1XmN6ϡ**O/9X)mt_}cUFzw_R .y\8ڪKEu}/D˽-Ewi]I6e;\O#ylU]Eåf[9{/BˍFbڠQܝ{7f 1# yk`08v>}ٓgF{ӛ )|T?=nԡdr~3uz!1 Ҍ5f~gƞ8ɠ:қsJ]2E]pO%qKu3pfܓ$̶Ǘg{`TҨ##ňӡcqJ8EqIJ-0wL#:`A{B[bшU.jVMXE^̦9^"8O}l!A'8 pzR揲 n)X u FG$WFuQ%'ڜ [$4"1W[v4lOky9mMDsKΥ1Y+~9jB]uŨʫ-o0!xsOHeSIoW&pյ|DqmRt2j |F.UNF4shB̖fZ-@ =׏xz!4'ƵJ|~:~Zt:몵GD:<HcG佻z} ՕX µ"vWd{}qֽLqc_+w''{ԣ C.kr\j cXn-qKb7gCv ;gU"QKyٚHk mif$߻^,Q3ݬnϮ77~}|Oї+I傇,j)pT k{_(9ؓEa5xhĩijz[/6`7n:F} ]1uzA~9hcMcn!y_#JN+d33t֣5ĐQ^])/!mT:d$Jbq~yN͸#Yp;:N:@'m@- ijd hCT@2X9QU0N&8bFu#3%+z-2l1+U(1вF!L oO\j"%6G35PFv!#8d5Ye jMD%mqqd\#^m=*U]`qxY| $d3ŕZ 1fgc!lgE4Ҭ]+S\T 0E&HZ#c/fC*ҩb jN#G)ZMB9 篊L%TȚme"h l̲l]JZRsY^9mգm-!- SbuKtWBna`jYk|]M) /lyWF+:NJo Ŧs9S S9]"dE=É4.(,Afa9]u+^RYe H>ׯ/q1B퐷+-$גzSu-0g[3.P\ܽVaj\A}fcsayi$ SfjwH+@Z.x 82 R L$]mfcaKi*)#Bwf<`w34a):Ww7jf{n%_ v:,3XFR`c)V<$.` q~}:=9Wg7q.]O0^rqavx؁`r!uЈv9_YZO}C4…F7nxf%QG"_{6J!r!$mU<|GCX5JiYMj:1Oҿkn&,]'ٕeJ.n;ި]Ѯc{Vc%-WNa]5MMSITm.|8ۨrh*=Y ry'91a%.mݡ5u0V 8=u3j>CȄ){:RBunljU6R2CkħЧKޖkxa;6oxO X Df1q좮tә7Z2HL\lz3xVr48 U32(Yuxcrԝi ?j~/6ꩣ2NN4Cluwo"v(7$dW!'xWXj#G dEJbEjl(Jy k99y6IޓXe'#Xl$z@}1eԌrW9ZΥT9WjqJWK'R4YCdcʬC.\C63ʛ?깪ي_^ FDqr`-(ɢm[q +7} %nc#ލ >/$kp*As;`EIm:KMĕ'oz*tvN|F^= RrY=ƥ:a+{QCis ˑ#p6WNX.[#4g:]5, :s'%EYU^28'9@5 ? RaɋHLZdGί= Q<.pkU`ұ ׂanqj%Fݯi7Ўor9F9;VJ VݳFwA;'ӣ̹1;T./&=f߲v}RuDߥzׯ_ ݩp7TRZfI mǗPT}+o'IjOt`` %Zw1"WsZڈ݄>sy:l=}Ť=-,9} {7wt N!= {=ːK !]"zƨeƄ{d1\ˌF |h6fDfP6ܻpRv#<`qh {X(\z<)2D]hƥ`-L<ʲvi#5:XC=ݺNp.vu.{p׿ѯ}{8}<qvifpіe9rvliӧF{녃:ux\?ySH9 `hf]p"WMz/:сV34ݤ΍iBe#KULz7+xymlh+Qd$V* %'Ǿ5PKHjE`0^]8 P[9b% ]cˈ|sNfU,eCp J\$&Z1D}s7@.ؠ{ySa;tˡO0H? S!!PR8\ ?1_H%:J91@zI85:X~^r|0ֲ:EȽs>a\sѳL;b W7`Ers=rkCEV'<ܽ\akkvyTaIm8kR]ceQ=;UeZY'Z"iL2UxcRE> =!7ō;̥#@y#+1hΈX,?ɚ#׀I"/Nrzk=jS-DE50`9pÛm]=sRqB~饔!(SdޓŔ(])o41;[gCzg|k{+_9'SY3bWK{pܻ"q}0'~<7ޅf8]Pv%[Z4(ŽM J-v[V|ECق:[֔S zaMBx/Z,cHp%<\{A9[DղdcڜZ۽֞ k,Je4!`kuBdd0[!Df9m,?V|:_CX%˒H/f85ZrpK\0`PτbTKJQv:!T|i8 Azh{fԬaQm2@7s=#\)T,Uձ4P),Ӷp" ?[e4%sҳj#~JR)^m\1Au@x,(#ʈ2̟)FP `-yTaj%̴-ggGIg&p#Abxss߻<<|pK'MӟO'ʒָzHvdˍF[ԍ]O|~O*sOvVC>1U.sңd޽aص&HJ'v1!6. lOI#Ԣ9 1<Ґ޸Й92bkpzkLTR"9b%s-ty51=6;^Skٔpw$,OX6JÿkY|z%eb]uSSL{#,X*c<"@Phsw/AF,1?P Iש70)SCxQ&ʾdЖ*&BDd%59`O YO(^pZ\aMfP,g#1"=sL\_x0PM~4?sR]JȫT`UbXX**e-xƊXc;UAJŔ&Zyk=Q{]E4}%Ց I? )Zg(4"xBOI<[TP5fL(6"n5* 5mWNvƊ1$Sj:{Li}=[Kc"rC.zp.'O>鋕x=~x{?x?[O#d߻l_yჇuө=Y~rO{YE04 fttC.[-ffZuџcg 7.%޽?0ԉt$t/u-:q)#6D38P=sVl?|[ ۩[-Z`nVԺ<;:E/R,9ߜw9{>Zj̲;ܲJx8H~Z+UOK񱏴_+3l3b[rdz*r;KcLT4PU'U67m`4/Ǎ{ʀv5yڑT3qZ_Km,2eL\x˚6Z.bdR0iD(1F^uVee IDAT`(Un5mBĕU.xd8D#)ql#s VY`6Z,dcj)=NU b,r$gNh%Zf|Ƃ9T)s*3o0wi[=jw Gd]©=/QyiDG5:;9Hؘt5")TC!F<}3ƹ0~d}D) 3WՈ[Eb͗WU72>l>e,e+ Fwթc80ZI2ƲayBj_tR_B#}f#o"p ƊM.𮚟!9g"o$bVB8obHnX*籤[[mM BJWPjjXw`WmSMwGˋFkrPB"zd`-toHD$P1ό;{w M-Q=gLNK{tLDW "qd bi<hu}]] b=5OZO;͖h],C[Lt0{xt<}>ϟ=~OoVZ偏﷯wk>]>?mi]޿ZE{_bP~'7qhX0\F,-,CƵI~أROnq!D]dW*T$P2ÖMākP-Ԁ%W;qӨko֛ dYga g KOtYU`6v"%y)<=|iE\^5rT\%6K vrh @'-_qHQL3NjZDN'͉[92$)kLkU˕=iv<_'dFGlfl|e2ab*-ɌdL}GTe-&7Nn8,ܹeYk`fkwurٺOm1i>9>}خ.rzVՍXl1VC>bI-np 19X rug t+owXI5l{PVNFŰeJwoӃ-YcƱ[*`yƝ_"X-Ml5Ye C#l1C?6sBퟵ1^)#nm e#~+XNg=tΆF]xhZ[I*P#6:iU U+)OHf@CwOȡVxB^2C̏du T0:K~#/hPv)W51] to.IHb yDdVU-I "ns]_fP̣z('\٘ws3@Pź -\kb_q. [tmKٟfr:gj-SlbMtMJVKsŞie)󓡣uLo\= D#m穇eJO3$ߘ_ڤTVw3bRuUϔnD!tqRlafȺ*8K֓ɒd7NB޽yψ[{oO vyǷ__>8Zo/Gs}aKKzz㇗/ݮcq~hM/xrtinƻ[#!pτ< 3zy4OS6Es;j{3+^L_R?-,([_9\;ҚdLp0t';n{[TتE.NV\>WjO؈0j;_\kae6csNELT*-֓2C3iIIkiK 14 Vz,m~9r ۗI4)/Inx]crrfs`U ՍĬpyCۚMLUH:laZ@kUG!Nu+Q |O12Y,򐨌cy]I4  [g ]SZ/בNq*Y+'mYΩII#5;m&lqR/T]gtR=ďRbO7]mSZJ'$lwp~"I}"Wgz'|搔3 U?gWRa+}~5ہIa-SSu⁤cS ;7_m~F||0W$z@jocݚP}WFL2Ye#TXI拯)1)njC<s:LeSJ,4slh[K18c̑ݽ ssa\+AL0řEk {??9U9SK S")[O0inݚwoVB<FZo8gp>һ91cpFSh Ή~ܲ,ȟ?~Otz\߾z}XĵOo>}=o_w= $OwxweuFNsН.9F GߊSٸ%m5DӢNPk A&adYS0^j/ \N HsOxkre$sYPg՟)AMb'D[>@k7!vʾ`(g`ԳZ4aH@ַsZ BMZl9`J+/vb4I+(k8:V۷x_^reޏi>yNѺ8GFČĠv4^>7{L4m,(`?^ruf)U776c5bIϚe_wf#T.hmiXMfGڎ\ػ"F&e$b 犮,22Äy#5CK# 2Z]P" lMZy'Uz1(}-PפC8*ݑ&ӪYia*34&TDc+4iYr-O,}'[@9V6V+\n&h,j?c٭:f<>eZ n 3" 30#L8nbO .fu;up(V6f+u ~ƤqZ$YaesXJK`vN}bi+F "yJSY1u  {Uek|'f 4MNxTgI!B4י̽сʟ$T] WwBv,3Fri!YR5nuuAflfn G$G!Y0Ut^إaATԅ2Zu{+NJwT% c[*ұ[ 2?2yLbˣ{ I[yr ՄCUM"|օzg 0 N| 6NOx]ն\^hӐ$֠;>{ӪHժ{.{:mDRh6]8xfp!`{ztK aaO?)\a`3DMQd禍LiX(zRBN|U|G|b>~"fcu%#_Uk3;K"7Tl(cPӲ{͘Fi bRRA/fQٝPxzJELv)]GEbb)?1۝C 3m{r,7f]rϬuKvF(}, ԩ-5쀴V*22emUԜߦRŻx?1Ǹ[N5_i+Ad0sl|_rI~n :lf9KN,`f[3XD׻ a5H5sP<̌n>8"B'`@ pz&2 pEN'w^;d1bd@.棾Y[{_yuw|uE6債`.K`r9iD6rdhr鯷zGn>|x{ox{cnǏ?>">{vO>>zCkî~_޾-A3ާ]bu #>m669ytv6> 0MrҺI£5klV~-yk7]_u#ƪ$C\)a:م6p|`-"bc Lp3zso8]MHy&v_Zf93N0 # 4#8ݛ5d1dḱ9͈cGLf8߬jXA7ֳ>5Z1cT?[Zo8=9>$.-c V=S ~2RH<:/ݮAF~}pxӫO?O?F\/K;.vx13wp߮3?y;{D)wWI'Z 1ns=}JK3S.H=_MX[~a2s@h䫢mp{ݴir2 f_zl:'yERA8`VC}g0 NSK^HE uf' )f?n{&3Z囒JQ*VFAWZ#e]HXig Vɥ(XӫO,8%@թ8,7ڊ@Air*r)s1?[(ՓTD{`4~Z,26z˾%sf4Bqʟz|ޓc/:F]rMs8p) rKHNx!j!h:BY J)7*?}u_ʭyZT5.*dp_8ә&AJs1 ɽ^¹sA;M*(6-暼ʘtUa+wWgrL9~R|@&j+;Y&-5DV JH|L _lw]9QTy:X.E LYS2HacU|Td"[qtOÿp`. Re]:N~4zß_~yyx;=//׏/oo/..-ޛxk/kǯw=YKN2wLj069! ÎfG`ei/Uae~Y}X`̠bl b%vLDŐ z(*stdɰ/DVZ:Atv+榡Pתi0 .?cK ĊĹ1׆u]͚͒rXU,2kV0DM/kwz2ͲVybhj_Yd@qWi쟬k/Υ {a۽E,(V/OEuB0r GUz \fh2ӵmj*z=YX5pwg76au~ּNnQI˴8\\,'ȦyɮU6i~P=\>6醛-f\0!DB:]'EBri\ )ݢզPi-I_$&MM,d}F K'՝"+SU/Ou*t1#ԶB(AmPzTKap .V^4cpȚJʜJm=e+5'y+a$4y6kJǼ{ U1p10] 9k!49PV"!jzF9ǜsWژA#`-e\!:l2< 3t Z=ټJT-95 qX ˩Kn͛8_%i'8)"465fnt:"&c<}w|ˇ_۟~ۯoGӇztc|&<^?nя0ׯ_{{(tfF =3(w;T+[J%kiFQ@ 9}WVI,`Xr\~,7kFe6iKӜZ_ڦ<ٷicKj0,dDzehֻ%L[x*6ڶ1i6Z'$=?aDaE~t/j&Qb1:ҷ(|+<-L,Ϭ ݗ\&(D{#`:fP!L%Li! +U'˄Zb<Nف%lxۢx*SEt nsBmkikƖ`hPTpteQUۊXJu mulO5B|J>;PuL9 3Ad%/*MZVG<<˝0zlMRZS|qׁHdf*AGZ;zIӉI}T$n;"EMeAd=vu/YD@W7PvjE xvƣz9Yɫ7$ci4!g `OilaTj֕XHZeڳb Kc?r2ӜkG1FxGfٚ(: Ha-*|bޏ8.09q 7Jl ’@+2[m]c)/MvrXIDDr$h3w?+A2|Fwss2ZXH6Oz`]&7x+kNj KMq˵_.zֺ'daGdT7w. ArD`o_|ۯ__oavooo[;"rc^xy]>ŏ6 5ۼ_<  [ b>m֛1msg3X3gfnBDu"~ZrjǪz| %Fl3.HMZJ:) u'ۢd S(^RET Ro[I%)(tVl}bքaI P^_A${Z`KmNe/(:SJ JA,G)#멿fV=Zgiv~Jwerc{>ZhA샱WV±az1u'HW^ i@Y~$4Hq'mK{9E 2N/UJ;fu 2<ꉟ^;w$C,^lw'EAY =яB(T}i.9nxEG$F#vuL}*:+h*TX>u 챊VTL R'nŚc3t|&Ru*|E&p0T06Ì֬oT7+ |Puc^bi/SQ *^̲W4Wh3osG`P\=֕]I;7؜yRTew$@M~Qr$IYB[s3yCL7K嬏\xdR7kn2% I4IN9*Pd(%g^ꋢ n[y Yk~֏v^.u7'1f8ٛ ֎,*H!FmzsL'#o_~]>~z\~v^~u{?Wh^9|6љJHmJ }ĠYw랋Q؜6t䠩BO,Emtq8vETYģ`5J !:X@uu(1h͒kO!ӤRЄjO ,WpD@~q`a6kC1b}377B T%:sɜ9"~6 ޼| so"G da Q a* Vrp"xmn g@`r@YaU'کhfV)$l_dVDµa}#{^_ z3~Z;zo60s ~rxLюL;9Fz[뭷֏ 4sAp\?}x}r_?v~w78a1ّf0 &1 {68؜h0`9D^!x3Gg)+ UrenDُ͉5CvIy)Z] *?Z 5.<,,p~|~nKAbVB@q JaCL-#듿+md8:)W?E7<RNg&r'ŊXa`Tך!k5oϺIUI5ˁ]&TcgZ!8u(>rsls2Zބr[$ҾNF%Ut 6izbTC0kK활ya\51f2aʯV;TqG*7LY۝;VѕU: y/4A ĒX\Fzg?Wy$S Ҏ{y>`VR2vW9:nU3`^ҙ5fV`)hLTỷ4̄SN!nzVqA/-Bi5{Ŷm[X~ ,Fi$ZRKaEM}$sJ^6dWU#3Lִ_3U}սawPMzr!Y3*I OcU6{LF v{"z")%LGJغYD5`/lE<ƽٯbLNJzBPZЅ d+`g< z3H)1#8 2b֏&RXc1F|cqdcg}6*S51WH!OUĤ/ٶ"5%WZpe&=Y2BJ.D UApf;l_C;y#X򵮊 jOV\ԬYQO4љ=|M[뽷t?wѼyqK?=pys륿^oq{У^soWO??}x_AO+%>oo?/'ɶȠ?xߧ]xm#[7w5DwiHx0*o#jOӡ1jɚzvF@~^]EBuNQd9 e+ӥi"?ղ?s.+|>Wd.D/.+UCP3aXUt!sݵteUubMLŲ{U*> -2@9CZa}1{v^ "N;[Kʥr5MP^X QTXaH0?O`DN+)D~Xd&eal\x=aP-/q4 W-gMc 'ՖM}>@X@NXJ'Y{u{= $討ϰ'yRm+"1e43Šj̽<{+9E2̋%HLZ=!alX+ ަVh(jWhALSFI+pLqyஹ,RXڧ|~KT6@+ -c<͚n9 yN1V&v=l ljP* 3ykaS+|bp2r 9@ueψfU璘j眉,ȞNpƿ}yb&` _5̓)Q3bPj2Ŗ0U;m~ d1;c qsBs8go4 !`gT`DBH,7 rvG€3o9g9DFcQj!D[(`s]Ac1)T U)F4 gT}8i$4i@*f㩓DEF#&YBf@kGhZCstzq>lf7=3ˈ1fnvy^nˇz9Ͽ&erF~{n/O~z}h_mĐU@`L |I$ q4f֝w{cF'~jI;>F]2ʭiO[5Siو@$r#% Q$&Xn.TEy!'Tۯ,,iI+r"s5&XhK-؇um}+{[蹒ygA%~ґ2 T% l 7=oVbH\ʉG&Xu[tEi)48.Tҡfb}ԣkH%i 1fD66￶S޵^` Bn[˸@]Y1J R}Xh^ō֬2fkgn k/L^c=\Dp`ehYXw8Ž4"zŚI|ҳZbv}X1Ӷz-NG'f|#s_ Op:ynPP|c"zz8mr l67W`Fオ{k~`f0ĘN)6',??FAsC N=) eJ[I!ؙpY,`2:P[F2͇Ka1OK"~klYyO7K.WQcl-Bn!+Y#At0oޯ_Kه;WttzD|ǃpo>ޮ//r?}|y^zpr9Rۜ/vݮvk6:__o}MAɗx42|n7-kvwfmLGL؈x &EJQ_\X,ThFcg>)B{jbAH SIji3I٢?~+2żl Qb`V1ɖJ;ಢ ߩq3`g0JZg( R[u{[{Vf M5L5Zkjxk_-H[+ʪok)MiW",Rr R11j:Ñoo VR9ժ$`^p? ;ofGmjόZ2nD 3*t&/c|F4\b*Md;Aa\1 0ROsd (er'w[{{=)Q ၙUtVzݢZZm9_}5r xV%<494*i5sOf4( )Yvx]EeBFA=\ӁhT앎,& & KN 4駫:ah Cf61o^Pkp5br!g/TjBufOx=%XMyPg3F/05(WS.}",klip_63;ʾ2jK0P]^#) {l57p0ϯ6=bDDUÛ FDtטi7DH[wo-EĜ1tLj "L,KrP@]?^ʭ]c ez֨3AvYRb"J&6ـ\}ri.ʉ:"3] 67""#"%)?yWK.sT` 39>4>ޮGn<=2s_~ c9 p.ˇ7vq~q3CX33sK{vi8*+2B0AP"!ݤ!S9@U/eg)L>#clN:N H@8-p7,ޗ姡LTH 6ʑRX5X y9 siyȯ}VߊdGZٮ;=j"VQșUZ:B 6NjPaV)_Y?0abxd'lqF҆H潺;gndPj= :wg#[ɫK9GD ̈ /( $2*4.Uͬ/5j} j D~M@h"[ZOiKÕ >tEX#6R;+aSDjt6*47']M)6˥Mt Ц!>Vzk(zj7ӃNs5*eªck :ᠮJqiHg')w-tՔd3˫f+_~So0`K`ihgf9kC(o tYl2;24_9N럈yFsZ L&&d9Ħ˚իDMe-PdOʭiO8uXvʩLsM5+@AzQ,^z{"{$$lx}h* pxD~&Avo f 0֭{DĜc999gQXl4eH49h7+/X?)4VVCD8 $,$$;]\[w+ah`ɿhkַQg>Xpѳ2}5eS> fl`NM/s#/זѥ˕f_~}*;O5o#iIV;u@Jqɣ%&65tP.!&i-jLTte2+PȾCKU4תnj&qxILLl\(ܟjF-b $:EthYg)8 8kZD ʶ! &U*K4oKQ>q<|)~[~f g#r|{<csI5 2]"Y0Ȅ9gDm@ܙ1csLsVZ ʪh Ij[0L0%M#RaO=yZ2YU"Br XM·Sw 1XΖɺ 9ZYׄf(.]bn7;z?^u>z}nGr;^^r\Yw>h{[kN}<̽n,bO2~t~?'*Ĺ;dS#tL-4Kge[ O M2ƙbJn5N 2fqOՄQMuE?.4M;uJӉS941jCł:d,=[yF?3댤Ug 3IтIw'k,ECrj~]Hzaֳ0#UOj:Qd^]oY97 Cg/gfڈRC& 9nў2L ;|σrwIբdyfc sW_x|$9Aݛ].[="Ő݂-1"ys̑T4HdvjPu!i`_ ^f;;0,%L*2)ȖI?DIXXb'6P}a*0<;UF#f6gRE@ W*[s:[=eq8zc_9v^ֻG'7͛{nzoKD>|eAbr !S݅OQruD)Y/ׅg!z-ޚXEdҴ߼#}QU4AI//h gn{|\F 'D=_K_)8zbG x'BMg9P*TvkU&L$Zf~/ 6Z M'-L #A+U779I)k})Wx["1ֈRme\ Ya_^}j0z<^VNUن <FCTSMP,ETPװmѶFJV?tdGpRh:GE<(1QHGx{1"4*jjjjjWޡkV,7(mאQ}5b[|h9< ƃ`(9Ƽo%Ƶ$ + o8lmf򋀂L KxjUme뜞nT_T6?ktp-˨ka! _m=nm.|ZvzFh$$W=~Z `8F#F nm4}E^F@onwq ZņJ=h\ciR:V'm>1k+W6VxQlxS1Ʀ] %H1mh2;_rcOQi{Vx)w( Kx/2W//gǥbr^aiuC̹tޖ0nIE !wMb" 0]t0=Qd8p ^+eOc6紒F˗QX5Iގss=󹞟RxXga 5{* .CFiHƑ,v @%bF"Xӡyc9rf#C=5)9 /_kʌ4LpHyccޏqC?oӾqu>yۤMslϹ sqvqc15 c#(,c-0(WJ/ zq~mr@ÉUˑt=Afa<'mkBɚT֚}Z2D֊RriD_hn^,xԍS)ksJšToet1sآ“P $_ 4Zr pJFɎ 6B*/t zc\-3E/F#e\k O}0{0' X|rpl`Iv9'q`a2EPA3aX .8g eD$-ӂ𘋵3ָ;,l&czة-2_%aO'<&T"Vir< $B9˓!hQM>rE)ngI_<R&/Iz37])_J^HoYlE7 \JTWN\Y(CVC@2@wg5Yyg3KTCPjF Fawer*zfXVyG#xb&TX5E /jn[WfF4²f۟|m-dvBÊrF0ÙǥN(.2Ⱥg*BLcwJ럊L{FMI(ZG$ͣs`# Ҋ csǘ.gnܖPkJw1{07GCʿ<@FJY,z%ZGI=s}_F oz@Ut6 3mt[$ <e*º/[|Yze9)d9B3xHŽt6t::>c0hLf/L+ld'B()}[1U} (_Ԃ*gaF1&։6jy$z|8!:0CCjf<|>ʙ#F!282g v{'8&+IaH<|M$B,)ZpI.?<IX͉`Lpz@h:HjC!0bĜ Z:0)J|<8zec'mX'|`ϥm@B:੷6>R<;ƀM0eR3G|yjo<2`t wJX@@2g@qz'@m'2qdr&ۆ5숔uT~x_phSBIu#- IDATYQ4ۺ8vfj6Ofp7Er(}}*{N4 dy=1k+c .d`Х`C0\[8 9Y b"iWVw%v1TI2*Ր 7Iאˍ}Y8}9@gReY4cVqg'JJb=RhE4 E&r0\Y2:NCГ0'Y@2p($d@6i^XE[)C@ǵ\aS G}Gs=V۬GEez-s0HDYgȘIN9n++"ZmyFxB+z^XPn`]n:7#ķ:vk~nBZm~z쮭IDC,R'ڻ68V:Ò(^O DjWdzL 忑av\p4YЈ+s;\b+Hf^._kLrE^.]7o%ZvmFTH#Dl3td)y{z9~hGZp(#"z$X8p6 t7IZkSZ0Af&i+`iŁ fBJ IFw {^,Cڵl $aa4Uehh1KcSgX؄(*]vaת*$І9q ;;F$3cȄ #8M#s ¢Na<ϧX+|Z4?on&1l z8= hRiZF2EltVxY\8l61TPV3NԿ~fsKKH]mN@V[%Wx{N?Y! ^ 33cRu_LmCcPBV0V*_tܑt)+Pw~}_L66b)&,c*j=< l-XV`  14b`;GP[\,=sƍO1o(Hj^hV8`;lO =ה*gJO%U!fxǼjm}CN349b!m!ͺ" ͓Ӂ.ai#ZLwVeTGg3p{\r%n;t&,\/au׽6< ]G .N'݇V~ @*yW![s|HYsC#LSpKq3N(-:\QYv<JQg}5Ew3e L5}!&5\ aOU.vb$(/ !!R]O<jgM L.zϝ2)"sjqJA_G- WH%A:ALO'1oA9 #O^K*3+џ%=,c\)%Fn3T~SɑPIOirwC<2xyvGhaixZZOswsV{2p16M3>\5X1Fy>qEy~<ߤ|XzIW¼C\ˍ&AqNhAs c>|vjۏRK\hBu{Skd- apk`@=8YxF@/nF^|yy$wX??.2^ tS ^<:iI`ڸ,YYNVrUe,Ħ~a˯m'oտB%^;]S1.=|JdN<Xϟ\ZsQ9= e :K$16f6l Iy>ϲ0>9$2pHW+bG(Sj ^c`d-z:M԰.,r#/itO 6"4o>n) y>?~e2$yJ$q ޏq'0>pt>if:q w/߾9hqo,ڼqHO-N=qxUA+ $ 1/|ܐNfq"ML.ydcXX5UD5d)vx 3$#YG򅵥:ټusҥH)Js DҊЮ4Gdd{NGb}.;ݩc \ P4.BE!8Rx[;c\yՆ6(Z+g~=nY99AD0sў#Єc׶Ui㝇k`kH%k~WP#lO{;d{ܯ+`tAC=˙~,-22>fb L"!kS7$JtٜQé©M0g@X%zv|?>teS;]q:P!6RZ^\VfiN£w,]dӃHZeVJQׅR{G ~,re99Kt-t]>!Ucׅů!r]UGط"pY rX@'4W]R{ۛ%0pWS6 z >\:3f _0[8q%8쪘]¨j!Լ¦^YP.0=u7M3ݘxE" R 'x$˚yq$>izBz8i=?:h_|efsLVqlشQ2Tqc Z\ӗ3=סR9xT@+o6H.V#}bW:?  툻r ZIE26Jnyr/2sqh6njHa-Y;5XqB1c1hc\:uKyrc~|?>vo6v)|퀨Ϗ\1y5lNK\\9ٰa㘃y;pL ~, `0k1FΥᅁyVDei ]tQVE2F7z s_٣Y2eaäB(D9]˽ǾB6/Œ?S(8 Z0lU uhUi);TpP|+U!L\g:DQ. S9##cC_xdF@Cݗ#WEZJ$k2cvAƉb=;i׀ rx#UwQer L`K1#|˱^GiE9Ikb\stjreB|1ܞT`Ckrh0ZeT3"fºKAFcɍag@VW&Kr>$e- ё₌m6 o:$S\ʐN "*,w`pz%T 5iY6#/;Z ]%ܣlʓ,vUC&d(rL#i^g rݰlB4BMt0SQ'`ӗ3oբ#+O?tHWߟX2|xq\}}o;NlapYsa0?LOA %- +TffskY1$`1X Z Be%aF3VTa "[(% 526f#R4H?HG$ȳ!ImF[Y$ԌjS60n>6ǀdԘs9q???Nc<uisbI:䒌C'=H-:yF?Z\ߏo޾߿&|vyaÆ ]?d=+`c+x-+C3VX;EnOW>ûsKKjLk$Hfv6ۛ'n o﷡ucsϵ0h%-*6rc }cLN9!_Kswr<'movmvߏ%zk-ΐ&ߎ;:#0чiq y~?^C(krMϬ}Ue]#t銸?9Zbb-k@tWڤ!luZp#i*rbZi.uGPz׭KȺ*_"0NU1:AGԛ0IR'=u% *$VkEtwCe`Umf;I"R`bsX+V 5p+t\uuLIV"n8F(1]A5b ëT5I {crש8 ~_ j&H#ƕQ> }MKRS3CϽ(.9.t?j4+Xh Q o}k{As@w DOa'Tʢk`R½Qa着+tDžjk4^ׯ#.@і3RG).UV@ɦR \U:,YfHqq]|"~AGQGcu>ĂU_غ}"j2d>տj$_~yY|0Gh2bke1/;Cھg2}j`TI IDAT88+qpbB:+) \FE;*m#[]Q7rDh~xpcz=aso JAU\l7H3faM9LG%AXїg\tk(U$4L(M1U vqfgU,l׸UEf "Y,n~|{;nMݎ}}vt9m8cq%^m_db7n9Ӎc`lTvoo~~9ߎ_1n6\QYښspS4 TT>l`xaw?ǐ٦Dgi:km13+M86n.`J7s2.HBlݯ$5"wF=P)=y)Oo ijS¨jP^baj+KiW|at+ LȌ~6a /ܣf_k re!*^-9'BxĚ]8/%y 4Y>z#ªm;;_q*/- qHJPl#gےZMVqe-Mlj5=/ z%QcAKe!6(V~u/׾㻗36mr a1舞lr¤f~9hkXOwH;9FCsFGwC1>ϧǭ(\zZKǴãI=c0a0Lc`&0AMáy7I<*J"WU_.@c; \J^3ҧ=_AJMc!y5"Z ɛk`/360JfdZ#fGX\cu9[E) ^cn =C2T9&CyRZܞQ$,5H'όK{]\`er=!N,h Zm X-Αl^6WLr՟-rq z4S^kz }j#SPJ'CP+3\@Z+d-+RIօ_c9I8%d_~Fl_⊜>l=իsC%#՞YLk!k ۅGf)&o11/3:P`N)ǭs(sHmQژ,_KxTUszzP5)U"%җrv>S\m],8̪SeQ>cۺwvcH76'`QQSH=K: k$ _v/~^qvn_#]۪g0tayR&yK6$k<5d>RgsF-q~&n#}<#}+9a]Hؤvx `az=3"̠8 X !FHɥcEEUۓBlmf>s=:8i%$M4-}uXWR@!O?sǻ?+R8Q̃"k*N\]jţ#.B7(pE=6kKzQdɾYV.T!{ )d*b]o%~Fw>ͪqOl= zh6kQ* S@ ńGlG1 ujk{]*A ъä3wQT$!@bw!R8'F1ف˛̚bGA['!rIJaF@`+,udr ǖWC@l*1C<" r`k^T\ddu;pt1szdZ 8̥nƱKk(Z"L_֞5;5Nw{p`)X 45u~믝Wm_гxHg)VVZt4]zJo!Ug"/rO5 b;5Qz?F.goR"E"KWHeez}N/G|.RܝJ",h9*GQ#^ )?]ld͛F f#6=ɗҌ%縖hr’W w a}"T%4ڊ64'%^4d+`3˲7^=i0tza~AsmJm-uOQ_n[13㘇lD(oy| XYAXAuNr6GA)V,6\c3Eƒ$u%g c$Uj2%/RLm%1o:"E\ k=_.{E:ƅf"\u0*ɰ$J`jdbpdW(<lE6I``Ri9%-_Ow?sZid9܌ g޽# U+7 nt#tHkvEmdb͵s|SQouVsL7.)a(\x68ȔDZI_s?ns'۷?~~>!!I;,}9vs%EtZktw /fsithIF[9m[b& Y,uW,G̲C䮾@䬓rA XҋpwiK?6;iY1ȟ/b{}u_ qn'ח4b/Œf/>o[ g4Ɯs3BkZOjAf6's23EKe)Z$Y[qmhUA8l$- Au|MHB Z TXOO}cWG6$3*M+$,l0,һ\icЦ_~믿rsڝ4qp<Ɉ#MܛY[I107;67~.'݂N`,ABrcqq~ySi6c!z>s ?·|6'dχ>>q 6nׂ`fÎ9cs3 14~1 ȣ[i=U“o/ov<Ǐ#"*X/~ U|ьnp5A_bN`r+~Ɲ*+ ,Nm T6L#2~H-gl#’KQҷ-3$.2 қG2\it2.fy_1^?B!ϰj~5'Q5[͗<@Rʇv5}C{m<,؊lNhCKҨ+hjTYT-}C8eMb%&cNF:Wbfg|5`bCt"-pW]H:$\gur(B|Bތ*IQO%ko'L/HvͽLF0/;\ W6W+ .<-FǍb tXLGޠӢ<(41@ #M([:%z6t\7WzYil`~,vD6jwd+Il[zvax"|F45)rGIgmH?PU!i$^<ƒF3AX&ăP\ô˹Fe̎2n8S4\y\3M~Web#RBxɆ&jRMG[wSQD%_a)Se:V2t@06}Rl}<17?sAce~7 ?RȪCUD#g@:_<8y>]>Ƙ.y:#"rѬ_|y>MIEgxa|9,|JNȖ/NC6."ENiАxCӉ6*/j~?~zo.,wH/oϵ@8'yx>s?8̠0amŵ'~\k9My~|~N ) a|;|*udBa .$sf{k0y0MtKLCyfBi I+F積+B$7~@uh6Bh)͑6tMeF>1W~bi}Х[I2SWoW,nbb z̿F7r;ض?df#(ÕzA I:vܣ2k30D?cZ*ET.$:xhy]㵁k'siek}e'F鎼'nFTmҶ;WTgS _9Xkܒїf`ش{t\:")/kTѦVAv#NEya0`xпO2>`ZSχ't#NAZP&t {ɒY̌鹫B>} vgg_II?'B;xN7B2a΅+P16sݭ8i16ap<ѕm<Ťy!*"Ƅ7*[p@+E2licBg~t:YyVp,'QQgBuiE:OnD4/OWϫe("paZdfr}Hq~CE('>5Nw3BC}rl"]dHs IDATʐT bFNlf$Aj,h5s #_4l_rlw|U"iaж0!R=^*'*b0[y%qZhkhT]UlQ16ij4|t:-XٹyN'\hX^E,pM[ͤ6O>)=I `3U-l媫$ XxSr8Gc:ЬwyoDB/"l;o?B3g۽%t.XF/EP7 n<ҠEFMTJu0qqF-zzBF93r'`U; R,%Ffb+>码ŮXmhfTtwL2:%tk()B%yȏ?oԎ/8)FZQHӳT|Đ["Sz:=mbK4V Ek4ŹR 4.)4X> MjVWT9-]]8urnXYn@G?>UL}XGrʁڱaD)@ 1gnGu? } Vb"Ol~c\0 %#UQ@n? m.[d"b>q="N./ 3) Μ:ZiX($#uJ6]6')uGG6C n'x8}Qz{4eGTe.XP1nJrv߶r0b :iė+=" >Y 2ye(>'qu!pg6_f}oٵ0$[HڀO?Vsڰֺ:Ks`s1/MʎymKNS:RS,롨؎TŞ&G]EI|4R'|PAQl,ߏBpūzH3s ĉƣ[ޭ;'&QZ3} @I@IJ{6pIb( KZή ܫpVCIc4N^u1̥х?Jb#/Ư\ɈFe~IvV$MD.0&!O;nm9 5Re4urȨ|/oGg NZ"0n ;/q D0H%'P Z-#CzV XDSg,,9?iT*fw/dK' =[_e /AX{?[?3C3PIh)`S=|ǝhԓ5ï~KPw@"+S%n@gN:mީڱ4'$fts:3wevu' UNGTobd]YBK+?E֨ubsMxQa0p^Tr:ρ؉<v 5&Wc+hE͒P0}}E!?EQArcxr >==>?m@" 6}oːw1n:Ƹ 븨rt||1gkވml'#*";K,6cNnup(G@@lN1DM+;_^U"ǬSG˅iO@Ro]\.wiUcL |qY uQ=axXkSpᏆ]%GK D lyr᎗xA`9*XK=kF9,4QFKIEx_Y*1;^'Dw5zb@cGR=K**uᤸCTjֶ4c?ղ"-i]@zgO7u.DQ|MZ/hWy'gnlNZ07-J0WtTֆAy{ku*ƺ[k (eWvNIm)efӃ_ #suz}roI.UGcCD)t+Jy1^~`qGf9G 3X+>WZ9K3^zT?mba<¢nbiWggi,ZgT) IyqjQ@ qUCEc);OG x Vgg( h*Cqz0A ziDuuX{8ED5JZsʥ#Y9JEX}8Bi;eF>Sn  h "*COx{趉U}P|<I˄ m˅qUo1qeF!§͹3C,"8 dMvR`r)֮j(6mW5X[QpD=^Bc>+"G1 5J5L%_00Dr @B93yDDN~yyOU/:6exxrMU_.ǜn|v_/ Ǡ_˧/?zBOwاO 7S|L?J:lrhT6d("-C1("?.claM3]! _lop%<33FfNyl'GNln6"E;eXᬪ}]$v4v0'ԍ x|Ӂ׻_:7S90(l!2%[mA+D Sw4gBlDa ٟy6!lGAFcSwt~V9#dUZ jv^aXuiTKZfQ&W Y+=:PRl9˳F, 8Kyjʭ4 E^XԵe &uRvTa/F4s=|]; Yu՘+'w5Iw:~l]$Ӽ ;[DnxnWlQY&^Ypϟ{fD j[? ѽwLlqu#R ; a^ZJs3`4`9ԓ:hJTaOfsQvMlj@ 2O޻A/XDXM,W38SF3 Q ,ڦM񾐓l'ٗN=bPDQɅ}cmâJ`XN3>\]1|d!ҽ*2,fi7O)OuPzgh̚ݕo}V:$8Zqt^_-=~-> m%VrRfó*4Vl*']eh`6E9mx9c}N7w)".a7DRpPLi1e׶v.:V4gU%p3di':cF5"|]V6dk6#ZUG=O sŰb`߰5'@}u˖" d|=vۋq:54J1\u&%4V fMg׾,UIFU-dnuk/uTW5NjcPFʑ%nk SS >trtR{0o$KYpN8:cFMbdCA:#"QO*5SD*`u``_Wl=< bv+yU%֚^/$++K" dL"ZH/ˬ,ysk//z±;2`;.T Y&0SꝚd^5n93;J{:?9N#'ҨȐt*YTrΥU9;(H ^XwA3s\_6Iz@-:RBWo;?u;بׁ/ϗ t>*6҃w  Rs|Hlp |aR(B%cww [V7`}NQ]*Ce$35x^G阅@ͧîNjEКvQ!QDƣ -E <",8gm|~>?_><<?oϗM!my;(R A3.4Ӧק/q"c`*Ovɋ:Fj p3 D>#w# @y>$\(sBD8BBCd|ĐxzjԀեtl2Nn>02L>Jΰ)sĩh~_U?wW8ܯHyFYkYUfoTYO @G? ڙN_K .}2k}WMKQ4VU, ]KD7T7_nU?q./^%"vI'lN2.?ڔfNl*>u-f&wڙ(M 1jU˓J`bS Nr%Qmqp+%gTESE޽"컉l@]5m=7w4C=s'/U7i#= jP[FQRܩuQjDVn 21zJn[7kY;ָ8钔6;'ͨ:O'88zt=S'5FHoNgܸ뫲/Ս$NWH4QG?-G?:i*O^y?\|q>_xFkLbr.\^q?’uh #^HVAx):)?7`RȒ=" 17c9#{u=ir=x$o߾0u`D=OƦkz%60zwNÅOO ~|B u";nƫYE&=F0{s: 7O +(#G)>VgSzjP8\+nupxƌ:,jW/#ܖRH 3I4#>^'CʖS!CK{Z1 $cf$ Xvw!@M-QH_{YМq)s IDAT CGsjOIKw+vc[gC-Ț}<m[q*}>%7>nK4CX/9yvbwGpbUGG>ڱXE6v;8e;N򐎌|50|*.<"X-O3Sѓ Y&螗Zi皀y]Cs8?׺uHQE~~y~}ylBnw pSUJmOOx~_~ff*fL "2dȢ.ڭֱdeGkLz1>C*_IHXK>wçן~- mZ@¼󊼾f™D-bؔs$tv!/"ɘWIZa ʠRĎN ]cfj澻kz 0K*`ĦWYx%O#X5_ н -ZRj{t4oG=9 uԣ|pBҙ>s+ G+k#FӠbK?oX✪f.UN]ap\u6IұQrFw=6^lGKֻ=RS}VzBr ٯɁ3|՟V!c5Um-7ҚrIA'$:D :#2ԡp~WrIJ^d|t?9"rپ{0|rd}pGXL=u9y2;D. Ś ط u?_Y::ֺG /3)yjߴՌN,ڇX1ḅqkLkuQ/I7Q n­!itR}MI"A_.BC=04 YkIz.%е2+1B:?+./dK,q;x-#I.QO:Q4Yg\YϟW{}󝈎>~ŊNV]GUh$Fm 9DTm9w܆~z?l6+c}]507$b>4D@v2D秧z6i1{{?mۦBn 1Np2a̒Dl`z䠠OL_Dl# !Tx|̽ 2SlקZ{=j8b⼡vӯ۟G#yk!f;;cT&WGf=YN`qfes/鎥(|~QR.٭zN;hFV}zB$"]2P&p7D*#FjSYZ+vWi]_.f9>ŴؑmA!M%yGE KTm%hrnm+I L[Ӗ@߅9L{7pRX:\&iQz֍KQr ʥiF&^שLW|(Ҷ,=N3 խrxLdvt*S5-guڶagE$wZlfSfG^ok1V>?ʋ4UrVM4ƺ̭,~fl1u7TG6"?ˀ]ڧl[g)߹v]:XaRb1_Ne4?\OPTaY%)?7k98;hPr:ȏ^s3 b!pPJ&|qp4><4Bwu|?9YN⮎βy=D#Lg'`vnB)cX1—B#ZR9Z䱤MODXHy¬N2H61Tu@jCD4mpe3RMLW(^lm|t󗧟<>_߰χۆvzRa$;(ouQɠ=N ]`EP\M1k 9]&PZ7YշdoI \FFO ^CgKwt,g<܎"e{s$\x5.ɻ@e o[H2B<9¿'$O7/Cx&UI~-ּuXQ՝, Y ڑqNX4ȶ{\) q  ?CEdރϗu{18J:{"6ą62UaVc"@Xғ03!"i)Jԓ+%mv$ᬄ,s[P ++<~~y}z>}U_oܑrG\YScι*i{kXuhs {ZMR&n7V'k'KA1D|m %`:tI|![i//r4T1P1Ďe+;7?M0N|BoƾGTz\_^Jn/r~"Or@k4 cY6 I{DߜWsEܜV]>ps*fbdy tO g(7s!Td\[ތF XzR'Q5Cj^"B\JVTqZzz=ţ`SVu50*eLCcEkɂX7$urEKLy˭ZႠSBiǚq䮩.2HrXxљ|MwskbQMV҂>GZ#8H]/òD˃ HO֫L]V} Rf$>a iczZ8:Au75+f7+Ŵ%ռ>W++D.l}b9]ȳY*uo} GLG{!uk|<`}HaF pUGf{`N^/TD gI WE,00c7 I) L74T0& DNFQ$-xĒFwPPa;4/Zka0`F-ƑEԆ!7'ҢrC_^./_?=>u o˳l(ITNU7/e{<ų]tFz>1c&!:d=6drLZ- +'szDESZ$)F@U bMt"\Ag%7ekx#F8^ q”]wt,$]U\>Wd!'XzƎ.k*Q]^V 2`e2XHUE*|oqR;T5m¹a 8N}rR-Rum48y򧌥ߡ"nɇ Qe_#a7ͩW޺RHGej$1 +aIHJ顤ZÑS1O:^!px7+ѫm(W&*T.c|_n[aJ1ơySG]Y2NX,4"X3/ ؑCP^{; Qr Y5 fk-ZAmTk JQ\$G3C lcP2Y/XGao,'2x]]}9]UnYz[u@%'y%Ca(=gtʀ5V.y=>s#->:TĿfw{:OQ1:'SP n8t9}oú/=suh\e3gNuMs!9u1V4RSirUこ5?"ft+;F9ǯ(|36r/,@]A =-'= f$hz\IG蓊X/gijQusm-0t($o?+m#`9jZn>(Qg}8vWGFPF+% MI ˪bVR3uDat@Ł۪]HS y}Ocqۛ-v?șXRFf:?_~v=|1o}R~A>^U7/m~&AR4a6m&PQn"2T (OF ?F""?o.WϷ_nvHJ O5UC7`Ϝ*ITo;94Mfsr*4-9<ʓ/yO)ȨL4.1NugjTw=#$Jqhf%7'::puL \Ĭ@FJwŁ-z'|e\W=g 7ˋmtM"\乏a\vQ/@K88q\#n=#a!C^E/|ƊF]RKEtW>]1;78Jҋd7?zX,וդIT"  WΈ昏ZǼ RU=P^D%Ֆ#m%?\p\ D7Y}D=p7vsmPIEnΔvPsx4*lw3+D\#;BxfiXo `nH-&R8)z^Z># _<VTDUpPp2ezE颂vB_?ۼpYГ%Pn*uJ8 q+?m"۷r}}:4͠o*ܫ72-ؖ"Q>Ij'_XsF꧍/'o;ׁI|2T%$Q(b*NXs?ˇ>Xi vQnOlźcbaCu 22cϗ:Ag;\;X©钕W`_#6=Wkў'D212)y,ɩk7!"&ߟ ;2d1$e`\N6`x^SZ ɮMRg0},Tmt?8c^MgXH?jt,*DH,E`!d><D]5d y}<\D4$'/f9*mƷ p073wsoN)**|.)Fv: Uud:.!(ғHRXiME7}x's` CJ?AHD1c[:j IDAT߾{V!v|{{MDcç2&rQ>oOϿ}{OS{\T66K#wՑ=RD*iT}MmP#$XaP \Z-5.LO~g*2'&:QV[/F8٪z0/qt O׍Oy cf17BȖò}iQJ~Z+ l/>Q i'$A!g_z^"'&vwGr(t><2Z,7]b8]?rMv݁"m3W?~'/0GWbU{#A.)EdZ3N &Ѱ&X(iU41K\T⪄y2Y%b#¦&C-7f?]S33=>+jrW)$WpvݻG:H'' |]cuvMRY'wơW>9_S&wF9!h,,+Џr?H}ULДw_G\H yVê@e,DG@))n~~k:X6Oz"9#4/UUa۷"pn{n"ty~-ԝ_)4 -SU/7*!AʡTB$)v:0ݧ1bo2_wjxeEy"h=X '| Ũ+GM[Sd000ؔA^z"Q).&M*#bSG|isȮ,Zz,_̧gݵH$# Hu=9jUU*2p82? [<)C{l'IOm -:VXmL@Ϝ!Ӱ/á;O *X9似8;0IK 9Z9l|r7E 1; *G# 4¢jL^Ñ NTt*UQp>+OxnhN:(yǙtcUxMDU2Gy? O:⊆N'il7/'E͢)uČky;zY)CNVn$qWplM>_//ϯ/OTɾwqaSۘW i+ (Teq.Tjwoz>JE۶=}_s;M榡 "46Ѡ1 tZkyN1a|FT S%:˂6L%GmVH9%~UWFzCQEد#;/L猡gڤ?(tW~^?OX1]=X`eN'mQNUQPC 'bjf2`ܡy1m pϘFv 4QBgKYY ]f|ajJY[{}.*^nWm|bov0>Lp4,BeN"j"\AP"y'q^W>]륽dV"{%ز KF P`-͸z)P$kkD#뇮DK. Ns8,F,c1uLzfbk?@m{PE̋;/"0* X'5?~FJW 0,$+tSNj|J,XG#3 #'gř~k'g}D{"6\)}yfX'"\B>q [Ov#' b#hvw%+G#VW-x3 0Kq7N zf h0i/{H!*Qh*I8qlҨVlwV&Yn<9}5$UH`..l@DdJu8%ٓЪ&t8?6l97`WcYW=9W27(vvG#Lbݗ>\'34ZE[if+BSiTd̎1F>{ QBX!o@J{i21Yo\2T\ /CsG#: G(3$zlgB^/_o˿巯EA|<Ƕw}l+=x뻹^92BEnfIVd̶76ޭEv' ѻ rW=_1Fcyiq*| !8 oV#N2\b1 ]'Xoo-7˩,z5'|=[r dKS,)t -0*?z}X Y2R)/eJ Sғl+hюF("$"j INRzk)[P G^8̄'Xv# *VVٖQR|ON(I$b^SpթU 3bpY/8%@iFΝ"(,X`16Dk TWQ^tQޤU[ò`]| 67Qm6܇ TiA 0s|NJq &Y4p><M_qx>D<Jp@{J!NIX:<]𐳗|tdzĽ# XQ&ώNrTs:i*PL([l7~|xЯs{trBUgxC[:Ǟ av<>294'ӣj{D‰ÓgcVpN]q7T]N@ZY ǜWϭ΀8>z\'YG3ݘ*bXDEp׎Guvjxe9E%< T:Nugs=فxhfŒ=]1㰊vf ɧWΞ+~wW܉`ͩ)ϣVĈ%scEYcO;k~#^cj8c!=K5gv訷ynH1 Ňy6u3n6=CsF@0a1{W>bH_h "uLA#@ Cl/Dœ!จHNyNMb3!%%v 򰌱#./_^~_/?Mm_S;dUj-X Y=MPDŽyە*)Ih2`@ZbЧ@+sne!㖺p8p+8x癯 gl cIKϿ|(!qtΔPz|e:& ٹ8 VrBEeF=T*܁-&zYTuqOWk^9} Q: F`l}nð` "q24׋>?_?bLvMW͈ zd:WS1UۏC+j[3,ECTy(uEM9AAqLcT.R#UpǨl(;fSU( ;" Szܳ;5BQuqˋbc?ϬiUn Q ^C2gKMjWJ (<ə91qQT$YZd5$6yhI.3?cY~CORx"N//ߡ똠c Sn&.c@-QP)sgdw>jFy0'3Aue j<%$Y<聤SqoVrpąL U*8ϓrrQ3Ħ .N;C§#D%3 ww&uD8cc {z܈*t4 8RW(Gj%T7cN1%e9 L`dxSҟgJPJ8il0jèirYvYnۥ]Vy?m * c`7{ZkQBEi߶a1̅.8}޻>v3磵raez[?\}6j]:G*Tb,"C6hK:w~lE:Lm֖14cIQd@DFd:j9?3x9~ӫωUD2ѿU.>bHY BQ9̷UN> TyfvaεQyp/31wHbq@Ҝ*hdHd8ЂDtx첪CPNgXjTzWƏ|zBҳӴ4ysU+E(N*F\Vi*/e,lcWQw6.Daѻ}piV9>hPCu"dr< e+7OL$]}/sVdB`y*YCq_R2%14@eA>#GsL놜YKJDEÏ(2Qlk ! JmLt&e zC~25m$D6EYW!,&$ZkKXUpm 7w[׵wz?[7-aBRjLJ7隂Dty](\zYwzc}m**__emFRyl0}@MPb@XUm2BImw^w{a|˟+'*rBq"N!xKqQlWJ#\{:C@WK YLϬ6Yj:;$̟߭&& B`vGȋL9;Nf[UX魝 Ŕ;|޼9;0`wSI[ԱN lBR!9v)=O~!獀A&3D=: a8c&"aTp,N4}k^<9g"PI FdbTէoNBis2LOƻc>z_e,7}~]c {CUP}3PhF,ח<Gӵ}}Se8ܬJJ x?F?y^n4z[׏!"!2G#:)ڀrPsP ܗxOmۏ}= ^7 ZZ9jjz"J!P;>? zb&Zxӱ$Bܷe_vb;?3yRQcP ^xe~FP2N'JtIesgF@N6Dkq2wr֕uS{a KH(Tbfdfs5N_?Hϱ "57܄b70{5(Z$u*_>}yi*.e80# CEshD}twlc&]CS 2&I\s gIXL1 D=ESGK0Hs j1%+VF 94wAhep]@ܨzkV %`RI7瓞՟"@"i .IS0I_YȚ{èLr["G,^˹3+yΗІtYvXA+=abg-9lK$̓-lEsXcR:HT]0^q[hQu BVLOb(#/'?} t11 ~VM^!&㨲j9܃1CŋH=7ܫsDZTxiq g*x L{bCCR]UŒ7ئ|'4AD8EX"eV9H…CѰûEDTti~CFnc`bbb%ͷ|uOT`< x$%x#f`j.CY(#&|@ 5O,>ЙEr-1۹~ IDATԦ`H?cG|O$GRӔ0ξ۶fA[v{~o}Rdv߷xF l Etiz@{"T%zg5BOś M67[U pYe<[Y=d8 RU'7cYT$IU44'ї&tGӃ4m%?A| u{ك(gd RaQR]ʟ.?xѴLjZmKٗ+v0 /{=GLu|G)׹}ߜ7dc>{ެ"R8u]/KwnBcCUE0Fw1TAIghk`nn-=B`F 'h{- m]\GRF+'*H.ҾE|mT-  | ٩zkn(%k`yX,j1ңS9:q9058f_]đݪ١Z٩Lyڡ@3qns|;N3$kyquOJ20sP11;#<( z]9)# U˷Pz\vსH?>$r49M¹e򞥫PΚH2Fƺǧplߨ!ruʬ<|`PS`']"↥uɥ -N4b @HHs@kfs&NƮN:`a1IsOa# 3V0NxH=NsRcYpӄs$AҩIIA̺UjQ=&KGG1X}#60޻@Dd8豋g.lZo}NS`F9IU|* gPz; f4I@K^(=_wS]C:dP4P,h9юE8x|T OQ)KT!t:5h8R|'49p݋)sshL+&@}ʨ= y#sܶS v='Ł@/ìq./O&K[[ڢuw7baе9TU~y}~߿~0zJuػ//˗ .,r]|o~_r[zg2IHԼqGpuCDNC xS;.]Xo9-oPics'*g 5t(%;q*'qm"c=kֈ_`&&gE:ϸ olV Cg?"\0~J'%uIP97 W$'x*fnl&?]ީD8va'yt4,f["x"sɮ4'fgA0GIwtů-q:Jw"Q~ͻ>.t>R8NcYr0Os$M̙f햸ױc{G .aT̠"`\&&uczȩ0?˜݃Y=F?XC&BMI),jVOs2d#0 nQvQ\y 7O|_,J{^cD~ݼx=l`,a?Қ҇k[uV,4…&N۶sy~]r} ` _H1ע %xCoc㾛;6fލm7M!]¡ĈƝTeJ0ȁdyx.Q+BLNz -x,zXćIL1Nk3#*LIՂ͢T| x5FRŽ^CNh9ʛByi@Lwؼї#e eعlW{F(p 'rxh8c/|nt b`L '<2 A%R2(Kf$ec?V7֦xcP!,S/ †sQč RQbyPR*l3vWgcO0Bsq&%h)dF $+ҜDQٱN$ʧ*xr_cGXC8%Ѩ+o"; Ng mO~<`/)iqxwL7U.@`$1_V(C6Aр9r\tFi(3zZ?N@PQLCZӻP:quGTe 1Zvܚ ZˤBľVfߵϱU>c1)I[6yX:;}::F. i]]o$!an5NԈyM72A'cR<͹k̾܂Ň9BަI殢3BPСQ(l@21Ρ1t s.<=$?A:05mcqwXOkx\p4&={nKtFtA'Sg$5Ӡ8cf&Y,Zfl$u۲c\mmh#t'U׵lfÜskΰr@*DZYu<%(Ǟ!#yf!!#b:G$v:k =2꾷:- z EMv7|Ds! R[RT!`Ql秮pѻXQz@!@$* C0Êv՗-!rNeIE"M$Q,XϬU {"D,I&[vF*4LQ8b9f f\7I7L^^ݡ HrӋY>߷4dU5$>`t V\pRHOM Y:(ksN Q Y"nHSyL Z^ętffu6+}:7VtI}`0TD0EZryam* u;10'" \#Q]wkߌ|ȏqo&} 9."LVvf:7)~mKX[ W*EDIgoTCN9*L6!koz5Gk̸^8oD¡)(\|FDPuNca̝Uy%oQ\5)THF# 5yy0px]’4^myXg^[j֑.1k/zM ;h>8B1ES0g!XLc!c5<>|DW ҺatmAiIxCq%$b_hcXO'=oF R&by@3jRTނܦbX6E?o[oo|vmvzt[c%逬?{DDHxϷm]>4||}},K]/Ϸry}}~.zG,*@8\`k6| w!:&"^05@;wl;c@faw7z gHB1+G5?2S+`xDmq#-Hj8퐊%ؕH)#0ĒK}(y I7 :yABњ(NJ?"H`q(Mٵ1؎wV3gLrG&|r I`!#'`CSD!Whd]ѓ 1Ɏ#!i NsQ*i˗eQ(MƢ1g@w}6&tc`r\S+,T5rNHaхa2P˴ZZCߢY޸ck>{>N|{w#mP;30kf@R,Vu O5':i`@ @;TgHGXbfvQ2!_(J╃i&2sx%G/(JrDmJ=Ϭ<E0#vaq BA'K|s )6 I;HK#=I|e(; 8_' tQ0 ||c!Ίd&S535H]]Bi" N΁2Gaan5+ʉG?|9hum:'6LJʱQKǽM,`V.1x|\f4EnZ ;d}NS4gYI9Q2.\5}rYu E|8l_nmY_Y_JU)7iP'B76sjM@H2cu 3),10ҮĂdL{Rm.v(a-hJX$"ّK?t)soDk"&J}L cf !$"a<&dY^<IC2Ҙiv|' ϳ Wf.xD xz f&BGm~G =xu#ҭ k3g83K7|8MʦD ʷtM|;dI^U 9S YK]VXu$fg̺H|@.:ί|Z棸ڬ8"Ţv+P,TR\R`duܦt,y0TF&ݑyH?|+,OD}y&FLFmlQm0L͆:0JY2  zcNG+0k@ON,2Fq8we<ǗBBE"ֳ 4o",ʑɍ$ (e3&>1z }UQHk"]1 mW[.6TGvo|=]nvm}/ÇE/>=݌*c؏n>zY_n۵w.Kܛ^[WQȭ͆a3Y } ÇÁڮs},.BEJ`;[EWQUiV8 ӞJ%@9Hޚ"4'%[tډqVe#Jт֩B2F\KqVᥖfmKCEx= %b))o)h"&YW,\9EC@G*JNdF?>bTC'̦ŰmXn/$0@Z4?֧۲.\ Jm 8c`+ArQwo9 c8.L)`Y4< wư|&Bs3L+ pςސs~1̥4^29,6Ҙm+Ǒ53븶U?+ ՘c%t`A{h3T8,GS:Lx71ؐ䮆1qv'"ܩj =-.m)d书:1ߝU\6!KW)(j ť0~7wU:)r1.E15c$jV`ZN?:ʈ#5ʗC?A⁘<'yU0TvD(TXItf?8A#?ATv.[@牒'sYEvI 5i((2i0J`!Ki{hgIoPR< pb<;Ρ@s'y>Jdn9X6PxQt极 FǩF3 72L+\7ufCB![lR>1xfRy,_*e l"vl EDWw!mP4`٩]67qb UA*cַa۲m~|{zYummEmu.>=mOקulz"]//O}}篯Ϸrׅ׵5^G۠KTE\SIq)}𱡛A t.o;?FbZ:8y@8:جܢLi\RRMVAX̟~Ik#"q Hq%SdPwpOxvfK<jGՑySd܃AxV+M?`?~ar-87bG)KyR5Df)U!Ka\Hzdaw֧ ,Cj)uNݐǁXi7NUqJM:eX:q̹b)n%|Qy}Ok} ff*h[lW ~H06qon U zr!"!!Z[D{?Y&'j~uÍIi(v.#M t)o=0\gMT]\\^B\Z{t 7}:O8U| 68ygl*PաW ۚI_"Cm$)'0#>C+92$IHNZLsi/4F2ҍ4 i=s7#NR{MSf5M4Za>PI~9M7 R@fDs|d6>BJGi<&Yw3. H R3*%A e;B2r?̜@t7;4ԋYy=D#j s<]Y~f| u +>5y/Mf^<RdBnIPRdfyI}r3P _^uptLݨzP*̙UiT˰.^'Cֱۼ_"#"ąbbnm+r_|Rp m;,6Yz*\8K⑝8[*H+鯤kv;q~S魂sr4k Rp E5zeUaɴwSrIR x}qI5t FsX]^EdR 29  Y@a|SB!v8N,91]!3hn 1C:ABWz@(#U)l] ^ FSBqKHDHbȣ* @OUӘ9;:3'B$3d F\TEduK %/uJI餍 %GRLM:qVؾ`>5}no7UCv*W۷۴9猌&;I`6A`\jbߝbq/SAm=$Jay'%am< D (S2C_w=޹ea+dUo}㡃ZY`-~: -EZoi&zt"]h\Rɬ>)ɖNX O%gxPC tJԟ s~|J4{V о% <0^t'*=nqe%,v=GbkT^qOjںL4j˚qMɚGqڨ8v=w(lӋ`It2.Qy\>U=<@.wܿ!7DDCDSNvw#<""2XH盈u:--O(z̘@\ޙNy_ka!"O x+JS5wܿ 53331sט7Em[~>u$vsof>y=B]ZgǚG`nvw%Rrc ۷/wD$pyԘf"v>\6Mu C#9P6qwXp7|qo ;4,{@P™)Em\ǕUHib2KLU S =M@>Viˆ}@ lF惭FI"k@n_kq LSO/լv EnDwa=U V}oIaQY]NwJ׿`fZ[?M-eTqȩz69(K By?+oV?%UE>< wY2Pga3`g-t8f黇yX7P:<,0$="Q4lB3 +^b^EG@e"KuՅXlUi&7UGZ 5s:A$D$RT0M~R(V:W%RWjkw0,2e`xi[!C\e@矔ߞ˃31d}yţz}'#Zh)3_h;;Pg#j;|Ϝ(dFE[7]c, v-#2+h>*ՁK-6Wd 2>٫*'ɖ/U+pӿ*H#2ʚ,,@աZi73_A8gIЈ»ui1 QPeQ1^mИ'腤O?a$냭O^'2:NlڏKXpLFb#^wT\!.;Nw& A %mB#w}F`ѪΒp7DXdr=#WҚrSlv:-E.FJk^\)4'|!jcr \-%ܛ3K:<P CcYz*],p6Du vver=<` @u[Їޝ/ުSn}o1;,vc:VS̕VA _I{j[H*8>wS#"=nlJyz1dsvP^?ZWp@Xg*t8:.uhV%B+P̎[fku:Fxcݐd#>ֆ>l2LuڳhiK~b0, X]e8£Ȍ=p h.!ҷ)6=^uS0OS^h,5cQw4u8Osm7wX`fA%w Q鵆!,#`8-6VɅԺx+U*@$H DtѶ6{;x$v-Ӆz<+L\(^X2K^. 7a?qtl>q?\v}yϿm\rrlzڱ*%jH Qk8kq5IF S]&ҵ)ߗGM -*'G=)0DD{n_\#T9n{Y*bAK90ȩ3͏҃unZΙ%^z;dVAJ"VaŴ8,NՀ5eݝOB#KQ0i9;B]ƿZ(YPg?LT2NGГ?Nʊ8A؈>Z>o!ȗ/ID?yί7z;]6] 0딫2&nkxJZM07Lᩈ0NX8Ię,\=#"Ȳ %A=/u,kDP5)T5?W:TD06\Mďꖔ\Lh7Јi~Kpܭe-sNo4D;M7W>^B <>( dtN3#|?ޔ.]6!"JMU/ૻ):b\^>ĐiMK}ׄ#im).ny/* w>O@H(ZL-bSC<[9PB)B^jO4 VPr f/n%̳%}-Ӏ+p17KGF: QbAUr~?uDnTԇ+dN/zyæˎPDjEn3 ,ZT%O, h)b^J~uf] 蕦.f:?t9V>R浀DHhT\w.`.$4ޝT ^=s=nPQAE#Q)8cY-MګOQo{mpUҙH>nvnp<u*6wyQvzy|<=Glz}|mM& Hs5&}*%kT8T99ij篾f,fWZ!b(k@>h>:#Yn}? ) mԅ\)%*I&#+aw8U,ǏQ>ȈCRg~GXZ%Fz@ޝ48l&Eqj(x Q~A""^TGa. !ǁPQ6!OOۍ6F<^p "m{ GDpzw" M1'f ICm193"*h00=̂BΘCKl*Epn].eHzȄ*9XG|*`V-TWOD+Tiop?* v2%`XkpH@ǁG!!eZW˩.Q>?ng sL9h='# ސW(TzNGВK(uAzғ";(wX/OR?pխ VG@eHuSlRa.p\iZ`S6WǤإciAeHĞݣIW%?J'd»Xr5Tsy(KiOdgּ٪JГW)xJH{h_7D,KUmdﺳ Gr/?T\<#~|<1=뒀 9ueȘK:}.c~ s Rpsdwk@BmDӧUfLt?_6HZ/+H\h}riu_ B0RHʡ>(Iq٣ D&H ^z<.6iNH TP,+<q,G'8T4zWVm]׹n9EFw: ;F~,({HEf*:!V{("Ro72>pԟ>!OC +=CU)~GOۆy s v-tƲA\o UDjHrFMRcT4T2P$o|V ,Y*QzFqmSNKa?%j@J“/GDH}O/)D4GilیWͪ8>՝>g~!03PDYǜ-!}7PU@BMmfQa##^ZIK`r= MR!ZQ%%ȵĪI&v`/5 ::Tq|y~EUL3 Y D cqۭeIbW[ѷ4Z Ey,9Bkhp^*BX)WR*֍% !a)^EB.H*ƠD eZB/+:u'ͣ-jÒ$ųLj ɔ=d}Y;mu~0^A3JY6As^]WDuկ.p`(TǚP –.ڴB \}:M@DuZ_Dlo<з=;Gs G@-Ԡ35pql*笧Q^wre; Cc:DH7/Ϩ"DÝU<0NI9ۗW9ˍi(bɖPNGh?}C@LY. `N}$kt!0E1-KRrX}tJvJWi] dLw(D.pyw{{o>栛O>^{/_o?|xW/D8;/2Hq;Idf_D:fP*_UD4=g=:Z*54ZdR"FFA-aa-.̕5uSO # TkyB yd KO/lFkdmI3ɘKj2i`C9~Q70qTǐED9 {MfAGDU*Jt nT%i(sxZC ,d2*C?$(yxz^ޮNKҰGeu3>vY+gVV?zJRMЇj j"=>"ae"MxTXPM󇇏w韞du 9+ zg@%/e-,kbYVQ+/ )̗gd DQ QBZJxpVCi{|3DP`^yG$`ZI3`Œଓ[xc|Dj mDfX UuA4NE1@\$ΩdvM,%/ >ͰYuwM\IyyfW\;{Da/b ܿUؽz':k;Plzo:KPvIyA!ܔU#z9ڍft`Vy۶mZb3)b>N:H~'qP|@/ك Zvfmѓ;R]kcCX Ta#, "_^,hɏzETf%1Is.Jvd1!$U10d^ro~Ppp_.p>^.2mz%ID*fEU39t}98{Rjp)2uT8Ezz~uB٦VZFn1.+zzJuJv7CZQSn%@iv>ә^K\ԟo9VQNRYoV; H[:22@BL#!iӋ6_>kawQY1A<]ef/"Ii !TJHj @L9zNw컻Wo˶iU_¡|TDhV`b"]UsDȠTx%K[Yd79=ë{#+a( x=ɶlPa_>ˇ591ݓՉUɺhd 5zoq c0'G&AȐ@q y~x@R>;L2WQx4KBٌ?WI!v`F9io8kpb^aýPnH/HQtwti#. qxZ(=9cEzb%L,YsXD s:U:"ɿ|3~(N?bbӇiS^cDN?L듥 w?uEM@~EZ9 `f? #nkWNASǂ Mt'KX!z7֋lIX?h.o7Džs J7[o+?Tƕ<4uMݪ.АTG]p#&lwv"CsԀE0tX8ArXok~$."(89/%L$evɯdQ&EHrҋ@?} UT|{2- VB )fh/gahM1AiH"ܚedyFZE,H e"4BJ(%(Nj^{t$":3.[{R.`),S̈)t]ױD KS4e+bM ͪKZ$_>o!3gԕ']!"c 6O".rɂF &Ҿ ՛[ qЩ=$ˡR ]',Gy`yB&W Ϋ_ңoB>Z  Ǽ4r)](t<[v=^Ea>˭O5 C,3YPi3OnbPh $)!AuwZ޷Y IG3hjW&Eaл7oc]k"}f܀m'7T5 [C5Z]xg̯w2G~GSwR)nc~"tF&n Oÿo7=P*laGus CK?Y$ZGk%}}v4Y{/--vk猃}ϏMO9M1 ff75rKw5 U1$& \j bFpH d j{U6 VH*h)THqdYnwjTIq[-+/9E ?R2Ղ!7>;9ijEE6L(IƼ+yq˨H#.RB-ýd=E%rQӀ$]9RgR`cEnn9U".z7>_ηe}z8>}7ׇmCfs>oi1D/7)/>]×vds"dE%뉚Xokqކi}D J䗹,}?gSvMTHǪrtRåˤI_J;? =T;6!dRtK3Wv~ MhdR IDATr?8@B~u_5L(XIG ;|Z)\hE$|Yᩓ,2eBHƺ40Yt}@`\q*f=WT%Qeӳxe$7AG8lr紉0p'42w~?",f4TI Dm"L܃c03b< T#HIȠVQ3j!bK dP`2'!Cxܤ}=yS%?92I:8EJsy&VuGY)t۟.?xlj5baw<3 LJt [zKT2<$RZz*Ի=!eUԛufU;b4"9Djut"pjèsBWR @%9t~eS&k+gjQ)F&di'1ҨiV[KMdEuѸ^q+R >UA3~񢏏秧ǧwh/r /omo7d-8=_+AAf[ewx9&VGs+IR#U_y|@urJ_"d˷x(:rD=/ eO04m}v$r@sH?$vHf吷&=ph@)_$Vhu K_+jفOR_`O:i$]cxpߟdm4^Ai݋H>AY-ub?ϟϏ92f>41#! %dc(7_$ *I h"b)P tTwsn)GŖ<#!:FH!JPaTJDXZ"Iz[LT.M̀L> GA84({iB5Of ߮ZIhWtw|Sy[24o=5J&R?7FäzfYBGA¸IkUtϪzu߷(kh3r~4ߜ 5+'I1R -6C}+GΖku!r 9JXP3$HΟr(-ؠ R&X= 8QEAR SnfxMZxٶUƃc|~*}iׯ/^=6ۛD<=觧/>><^.lz6i>\5i@3&@Z*IDFkq{[qVepL͝ϑlXDI)Zϓ۴fjfLX% 6nPsG}t%Ѐj /%j~Jʕ61\ӏ6 |']AnJݸN_J*IEo$v3+1 G+sc"ɾn5o<:g(Aٔ#54 BACC6i4s3if{Zv6n͈ /%t?aJ&0R]NX2%k="\DD IGdDnHK2.%#էåFc5]EH{T$GvBE*Vq# *0U77?]~hJZ>O=4Ii/Be*|5¼ً|Z8~t5 fdh{nk/!HӾ;!B]h͜D#3պalu-Sc/ȹR둭XJґu0 #hKs>,ֲ}+`y-?FN+ G:GƝܣi a;gdw_Dz4+cI_\h,E_SG05ȖZ>fIQ,oMeB̫W`.|N kXťyky=|51yD`ޑԜ0-52ZSH6X½2(WȾ fK82F^ )D^PT@bj"_d]"GK{1^DMcg;MHNG8OO_% AX"o} -RӼ HMˉUٟ%i_e'GW€HLOPH)+Arz~}@ 1]_son__^Ǹ}zwMI_^}7<>\|y_>~˷{ӫݝZ&+(QټAj7x\'D벤VU `$sd[-.`W#骲'=_N=%8<ݼNSFHZ^g,Z0\ƒvm=ϕslĺSuZ+}tN*p=Ÿ;3sna=ɎC TX[?G"18dM/^h==>~8$pw3汛EDXD""1P^cg5"p7mn!B֎eWT7/M p>g^ ñ.|0 ~3X`4RbFQ7ƻ*&+IV;J+ExjP5='7E4( cuiE$e wnw6fxRɶk;C7 _<>i nR'dgĭs׻Ú+tHa71^湰Zs9$Ћ̬|Ӥ@M YNa[ݛX.es"GG_ʿ^$xsgt0=PLBhLI^vH=_)@?j,{,:] Oł>JpӦI.Q<%}J3iu~\W܀=׭bxZDyWLU_#<b腑+$i5'VX=O,jF P>#WU,ӿZAKWj߹hY~Fx1ݲ y;o{b*H;#BQbz6HK+ѵ$,>c+ÒGLs@X^_7Kv*н7pZ 7G|TT63!A,@%$ \u.D̢̀׫- В4Mkd2%N94!1׷%K_'}?}^/&oۯlߧYӃ???x__$Ps8r'7<+KRj-sUw5)IɃ*rp0E "&EmP)ƗO&na91iJ6DD/ (Db!J`1TAҼy; q, _z I}szdla-x)UF[!;v٤\n;lIr̪}s/< t= z#(@/!$j 3>g]kWDӔ:յ˗1DN)^P*z%.ZO/,rWٕniNidq^3eug\cR➆^nVDp"!c8yz!!1booxG-9ZF^ji7JSv`Z2ȩf1'Naɚw05F& Q!8%!vV"k%(M6z#W7Q]HKi;X)mrMv&L^K rU&_j.A}ʞ̒I-jNguo`䱅Hɩ({{6~ҥnxM:VM9g$e?>EϹ *D4ϱAr #R0eiF;k3ɼ{'f s֞m"cE퍈FN5< \?go(EeBfЂS?ׇHxfnӬn=hVE|;e t=}.&87C \JA"n$c6qvxks)WV8å܎>1X3kks̑&X=j~nc QNG*7\t7u ԾȫEWFjR%TyZF)t2csE.l`4\IX_ϥM1"bJ I r;ax{߂YvRxe1l 9^/\~3/Vj-}qc]9"}!ԪJ$W+-l~*.f~/nj^18d3gQIiTbOlVHz BbC'ŵcE KtT=`{/ܟ;=Oٿ"&Cp>1C9WnzSq8d+m>1|\zH0ưaW_x>\3A3Z{y9@tƯ~hem 3"R *(w#:GNϙ)R &%yD|{{w"iHѴQ+b;X&skŗ/~צmHyɩP xB /vH.6S*0Xe/"y#KPS|&OnqtF;Uϻ#Av ޽=#,t1%aU%jne]?[wqo-Ņ2=^Ek+F]J(KZ+O]e䛘u,AHЊ"L[ʙ(EINY mþXӺ8+jt>zj̆Z桥&Άi8qm';;GN7vk*dO%W=!VC1 xͼ&Qg}VErGQj9tzhLnIʨC5;{6"}wRz}缡kkm&dTq4*$b<ûڹ#T{Vۡ0c,5-Orx!\#yv%0ӯat932Vun`I@2 I`J꺬LP"zW; 7:"3^6Ϣl=sCzBUx8q T-{3i'wޘ@ϟok7ŪaPX0Xғ;ϓ IDAT~h HPW9e#{7K1nY}.zU\lK_R%[U_Ԏ隚8 VY P-p[6(J0G}6CW$1,=f!jQwrZdI-UNJXSmŷ|{o_}x ~M0ى?] 4~?~AV[~.¬"ˠsصl~|$ VcUOQ.i5\1qzK`!4NǘRYRme s'svek^{Hf}Tɵ`>v抈s.RcL'-p40a/>^nr -]Z(,Z O//1p:(p@ nf]gfa~6vGh|?ϵ{K^R$ϵV<=w$94x$gi̙SKLC pL9^sfrx֕#sE#7E. a۫y`p]|fѕ^ņITܷnwè΃Վ{ITq'*@\tOB4W%H,jwcFS)(4]n,xǶvذ829 Ba]َܦS. djKz5W]#.lqNBl5_V:Z]s$eF2jFY;`AUv1ÎXDo-9Ϥt#UOmnnOT3@]WycM;Rݫa"3GH3lA"s|~b띺% ٧|'ϟ(JiNb o\_` ;u͓ڈ9XݭuLu ]Gv,6(gUBy~|[=/Z31.Ā_>dkU\,j8=N~T)iWzk$*&əCMȖ v^.GPVχcu~#. )ݒ*| ?21[,.m#kb4jmMn>wtlC0pLYH^Je`}&gMEsC" oC01#D҂nv(XzgtAUߖV}.SNu&]z^UsBX_*1X>Xz3Gx} ;]GbNo%.ڔw/g,7YkAw:lu(ԃ:?5; zا`C3]y tM}"e]\;#9,qq}x=c,ry.Ɍ?/1"ppmPea*tJ i71HwPNvVp9'e%Oa ITGs!B 9lN0yF&x(brR*,4Zepr irp%TWP b̠{yؚp*V:yYJl(J a@Wx?|1@=s_UT۟ȢvZhVջ5LCXhCǁ9_c͹"D!b"FpEOf@=V߭T٠zF-\ݚiZfkOEL)NNL G֛9tk/Jmѹny޵akSkhf-μ2Ѕ@`l4qiXBO vOYޘ)VCU)OOVE?,ТGtg 9Y ˴K |[1YqpNrѮD6EgsbjFh ]м+l'ϭ'oäԞ_EOhUܻ/yoc@/|xRh& ('`LB},\P `(V@5b'BfM>4nYǡde/AWd`Yg]]_&j#ȦdQ15ìH*6߳:Hl]k}/(G^f&+Bspʴ/[3uwBג 9 "ÖP-S݇z1#ǨE l˕u?brQM:yim}q|.TYi׆啙 ՑDg})+ŲQjYu5 zg+R0X"ZV>R+o~[MSg;×Z aoeR=.ԗȟf®+&s68xOD,sȌ4Z c3%-bB@q>ߝaf0hJ"t lN:p53Ib͈C!SoHa{F?'x}5ל+84kKr=s1t}a1IL-k݋Y a%|I4m8/ߓa* XZX,a͘bv:i%eza(;_#3$K?Q3EMȔ:~1T$2B %ZҲJH5.3Ŭ/NjP$x})--0^TWba+jUmd2 JocdiZњVaD땯.rg`gT:%_ǺyC(;'s%O|Uy'Z~څ8yWiT8Uȯn`?e۵:tϹk*|v$SkHO 7֎}c@ pM{1o۝(:^]qjN+Wn&@r=̃RuW|m¤+o,]؅Dμ-7`kҭ99!|}{hj)VT a08!j{"1_:\6^na0j[Ή$SE+E=$'XҨ*csAIZD2ENZdXaMfnmcW,Zs=ϊ5 RN7 D>L"Ү1:l-a DfZJ]G&@n,ӌc\N(B˥mFEPbS w9&i7B..*ǰ|x73XBX& E'hHȐ, YDZZ(|Ƅvj4*B ?{1Wr^aN5=t`Hc0z@L+ҚQ˰ƒ- 0z{OouP.7vVP_'5znxUcDM(%c^=|\+X֌u|X_+;q=:?hX3,^j,f0ԦVV+uW+=b.85fLO\)uO*,նƋ#+f}ПJcq<1 <IYI$J4̍Rr$+5^M3[Ze2X*Dѐ5"Oո[`ޣ]2w(t K* b4F)3If/\߭{CyNw;V& QӤJkSf9B P8{ y}TDXQ*@ksbSw;y|ҌtB/%i`Zյ?6. [8ybcG/KtYV%J3O&VJF{r2/Wգml,91bJ5)dXnWf6S3 4ݖ;ǟ:}ﶮnT5,/g~uFPv&v6V*ó%\x rZkes>=3{bl a " an vq T%==ķXY(bbd3yX\٢" QxpLh SEhB朩 Ăޠ0hR^t 3:Q6,n>&܆u^nf |oS>k,,tKwhbP>0;!܌wz9XS68ŵĒLPzLkstH2mΨR@bAs`NON "=+N_ %f%ZIa a0 Cqë}ƹ 0$)eMVHD`Qb9߿q@2:C[#5߂SXL$Y^v~Urg;m^B-LH/YȒ,d0L/#p{{.RlX~ )J*!޿w+_lI#.%)J7~I1p*'1a)6:,GbE_ ,ǯ/Yu03ffqc1!,rE!?7ddbM&.Bb@I@C3{R#Lٲ7o~x=\1+euZL\9ך%q=E[v8ǀa vz̗۷ʋ` sWXmSѣgI m4QYv  *?UՎ'\1jk5-w 3dnzA28@Ya͒TDO9cɌ!:#C]7җWF郿 QU4(cnjy2ëi-ٸ|Oy87(hGv$Cj 8v?/{抣ߺƬµ [ܓZ//GyJV`a3p^Yk+)EekWVU{ f8!k^=cXIU QQ{CB'}-i1<@34. ǡXWDMUeT_i]2" &w'm1x;_ͷ\07Kgϵ>ɘM5|a~;`rÉF)ymR #&$zop SJŨ67@ODx=$$V7vYpCm--zJMSf#[f7i2-6eUUy~qx5xz iSeY\C2׬sn\ker/ckBf20Əom頹}c͗rS[ *݅rbΗռXVC0XԆbm=5ֺվr%B2ΜEȫMq~V{]Cw.lNI}3sۮAK>?g`@!Nn[QZwfO2h^I-L)c+ۆqsyEtnn^u7T#;2Dܴxz= wY!iىo'^:>fO>ӵUHz+.H6 V=G>-_v˵K-Co{۟/_~llڪZX/5_}Uŋk /_&%UAaښZ̓sI>\U lEY]"JpV! Z KI}#VU4h Ҵ̰:Cv0ݓm+(XS}vB';f1!RCVձ1_L++*jaMXI0ٰQ4:tEr6_>'?W<|:5-ędz {Y!NW3Uy 6˃5v;B%*U><{OѬ9[@ȷH;IbS@༜gU]Eh!YL!G!wϳD`Ga.; M:1*vgx:~\R.5끛:Sj-%90#n>n> m0GSUZt8Y80ô1GhΘs1c4dD.A st'+Pe]n%>x(Qg0w1JMW:b!ΕYVrn̙ i6m4a@ 㝷q.@k=׷痯ugnnAjpow7ۉZ)fH`1Q3fP "+ԇ}z;3;2 H-YZJF'0Xi-*o3fzLI4΀1ǰ8k3B]&[Y Ţ,$ vK`i'"R JFJ >L>f@thSyCKX%CtMl#Tb_ )*W^53 M3Z2Oqkk3fKfZi8Zd̋\o sԈ,ʞKf&ySd^P0Ͼzl<K`,~kSv%0'3},2Yy嘿'FDܟ=u IDAT-?w蹲, gs׿Px^34E'[zo~|9mE@1L0mc8ikt1~9D 2'jVńҥ/KPrKӻy/aDӉ#V1HΊXU=H"tn2JPt/,aYN C%#;g4026C63+-*È%J@z3c6{`KLD .p0F˺_ߤu_n㗏և_tw Z {#3>0}7z"1+xUZ+:RI(NRl͊$S3IJߛ'kAQ!J\?qz1wU@NAz7 [wVwyC??e@C{P ~O"ؽ5miPWDYTB: HSCmpaXk0fqm͘y-MH"mޏ1 MtHK:( `ZP\9Hh[} D,1w<o?Oto~ʢwb=wN[[*U= Hkwg-߯|!6"6?J!RQ -V'hX^jUt sjs)U3ø9ftNn쇵f.\6t4{՛S3}6=o?f}*J;`= x ~n}z!3"-2&-3a7k1FVI꒝**驜8 lS ki|߲b{9ϷϟnǑ=LkemR] x+dT ?[{`k[ V߅Fm3/=4 #u5dvQ$;>af LK5_xЮ^:K#Qxs{1t53[9I44U-i~ܳB}ymܟ~⥠X3\ܺP#A`em.fHIe^Ya5uǠp?6_hxG9+k-?6efZeϵƌNJ +"$L+r4 :/ɘVZXN|Q0p({i{b4ss0`E TI-F.@`Ɇsc"IͱIQ3G^Sj_ylΧn~q5H[XHY^@:T>|aFBI*"AR"\a,\1" s)"rxsUe>mF",yK@~_7׿7׿xyh\aNYg"s>b-ckQyIɑsfM^<\[in,SJ챚:RB`H4 I7"*)`5^ w؅ |4ӓ3!) Ѣ)dDGң~=+֧y嚍nr̜`A-KU EdHdy0td] DBO/Cҷǯxrχ~z皫Հq3=k2Bn'̶a/0r\~]qtDn5Ʈc\aGymi$ iV.6 csnv>>{4/jzI!4a?y?mkw6Ic~K>Ӱʠ`fk3..ԺR)Rt(fp1pV_):WaNZW#djJ* ?";NdD9jv۲ 1H [taW$_Z'D$8nV.5vאw}dUtdF95k A%a%lu;JYxGC>ak IJHMb},eDm1yma[ QNbJ <#]"h֗4dz۱uQp#o7/ 7(nU#twf$JF2$)zNs,)zx)q~ BZq$v Bse"QK$Y6K;(DFX"mpZl̙˥`L1Rz^ fkȥv02nic=L%"ҧ<ZVͅNh9qx^}NQ JJZ]2)jQE_"&igp.͹k xLL&a\ՓR&抙]}[ ecv†&8H8ܿ>[K \BMd;+>nfq9SmfVV-SbIve?HSUZmQ@Wʰwm%;#NVu`DdF7]#5i)j5>*OCɬ;C۝zd 3;Җi@da bqT X}h}4ѫD%~ "m“ D+Үx@ 3?ïz)Zϰܖ X[ ZQKݾܿ93PYutt Y /Mi R71o.HΚMX.:6-meh{NkةzDx|X!⻴NhAvz!8]yx({_ʌ$u;h+N7ӢZJ-]M#蓾Q.$E -"d{B*Zc(sb 1CL B֊zwy\IXj^g@WxSVnjGڈMXp&,xp+Ղɨm3LJ33_ 1gRm(Lr D(L4Vtx~ފW!"Q*patث͐ʹshMܝO6fY DBK !z"x`̼ϹaV{^L#d&mweyjK3;{ Ƕa5P/`.DH1!gy?e1WCbQ(56_y+9x8u4[ehT-m/ 2WnB=8u0qjOqkjsǬgbVGv0צ;ڔ~`ХV+}P r=q..f"B}izY0qǰ\$/dn}/##6=Nk#iekjA'nj!Zp \ex:>8~@/4'̓Nj|+bnN/\W9Ǐ|owyƔ964rc8RBUW"sI`'DN*շ/8mnj]!j$H*LS&wvAPvzj^U:#(elDkf4N-]1ju4pT%Eǝ 5E}g $ID`,~Ґ MT3nƱ9U21|y]~k>of刺 i2W,?LW{e/p]S-n* 7@Mjq Qa"s*[FTU\5[|pou4#GeCl ,ƩkEjXnk=QHZ)OO֥VoWiQi :حklw㼞h>*Dipu޻'tkXӜ6fO%3o{%IE\uZ-;$VC)FR )s&PIFӓV$:>SQr۾_hai4HfЩd-F"-"!0Je" IDATyvc!"`35}10?̀Beyh$Z p6)x_ˇԻSV~m]C = p>_}mrШD234C{^t枩 i&"2[Sɔ"iww7MN} F.iw c݁j0 VK3{~sjj0B/P4AlK1-"w֬`cPLġ%*kq P.,\z.CM …kcwEr5[!*ekmɽQ~CC5k a3mE]3q )QCT/.3|i %\#H椣@vjb,G>?q…%#ʇ*&^NcQĹ8Jo5oqϡuiIp r,hCѢMAI[Z}ei͍z2x^RX<^Zsu_"#6:\ knEF%X5 +u9!ҍb"{2ITF|3Ԇ=,LqKnp}_~j3!X5Q6E Xs \{4.Er8y@GɺVYDˇ:^Y'b>l[`-Ў<+T=qvI0Ӎ]vȠw/o`Xu*)qTYN(5i]c ׭tPhY7V*\w|SKP 'wF_ƍ V뭪dRHsrsnf1,/GQ~x "ž7ShL5  Mq 3R;'Jb8 9w7%*s jol=RFX f>ڠQeѽ̼kTnY0z`~&9,FX>̠L3p4VgD4o|e3ʳ" AɈ,`LfO?]Xwr=rϼ9Y-^) fh!cD inG%͹+JH^u4$6/}RxC y׺nYV>y,s/6$`{'ݱ]hgCfRVGZ2QBRExÓ]eP*ْ% B"VN[@wW ?I> BЁ>ꞝ=WN 1Yϻ_)fi-J|a˅՗hƾnUoGK*l KɓY:7C[Q\;3P*@mgrWa v"*zdƞyRE vʗg4gfLƷ*レG| &pcCj0^4JPe$` b!i{jm\ZjNĠeltnclb7mΕ  >|rї( H~xdi&H.=zEuHC_/Y#NՔz2ёgL&z\xAo}4UAu+N'=OEbp~W;7N }f&)Ee/^[>Fe21Tq 5WKIXQ(W#%m/O-YU]zd4o31a@zX˛:*%2̬UHŴfdۦ{ ~+N l]RYkLƢU)<֠vG{)i+VN_푕:Q0^6^o{PxY}G}v7=_?^?_7^ƞҦBo {e1SyLfPhtt^֖q1E˃>9X7\1ɬ޸3;u0]ce uzc~ ̏xҿGuyNXc)S<^3G>2D b.˺&%-H{[4۽quh' r:f^?D%zs[L'$xf,E\{r5winq6h@*NTўgRNU$tyF)ŭ$ʒm"L񰚱RW @(c t"ܷm)aI1̈;s T:<E3 >IZg&=cXT"-u_4?X愢DejOD྘B^ru#h5dF"JϰOܧn{Ǽ1g{(DbtH2Qޠ9E;%DMF`~sw1ኈ9#v~0B"9%8MD RCa#N8{T"oՄ2 navt]e]/˴oNUy|U,6y@Al_B]rys&3U7s*;SVx+5זn8qꗒV3p[vi:!N: OбQC!ҩjۯ0y2)&!u^LN<u#X $/|zt$6Wm=9Pf06=J示N͢x꧹a_团HY9TB{S-8Ǎ"z7*Q~;B=s2ӑp+-ssjzbFnfb6}[aP0,"6t9 &AI$D*M9SpF xE#9a4RWO@$:@dÀ!5Ce *T@ÃVS`Ua#a%RQ3C2E0"rQUvOQ!n[~ +r}22.mױ):XCī/_?~xw}~>?~ߕrQH.+X.Xsuv{ҎbEU-1-nXa^ x } Jy"i. Zc]*IDXzu<.}W%#8W_)?1[lدE$IwϖƦt/ͯq9<|S|RXf"r/P O'_mfQ0{\WsfmKCꙩ4DMXժ+D.v˜‰DmZIT.٫{3 c ܼf~aeQlV?dI KNSs:hb7w"3'>jHq7Vz:#g dj&$ 9"]/?]GzL12#4g'{x1c1*gGK8ehlHeN dFDDdtK\9v()"ҬE.sLȺ|{d4 V+~RDp>Ey߇asw+4вi1Dw\wS=^3k]%T\>)Rdag51WVYGN8LǶ=35{ ;">.bOnJl(*l}~L S=JUq5[dK#<B-Iy<(N?k|!*;||LNN|gne@6zN3*v2*'?_{~E=fDv[`dzoo%o'x̝ȫ15#f+dFɔ @ͿРb\8NOhj̈`Gv8WҢvF,fA-ȥdQJ%246`^JPncA633* qڭE48V>XUoEuX\$=C`%!uv$ lf#"8ƧhZ Ͷa؆WɲGY"sRatݞyc|e{H ?~ŏ^w/?/o_ʣ| hm,*,cj ;ˌvzzT?cxW`Q,Mqi X 'n7Px[`9zTh&UD[cPgeknYWQ(UtXr?6_gmUqXúk[ojˆ o=j4gيC$jIn&+buy3>vՕN<]|x|ǜyp+YZUBݭś!U;mX-F14'.j` \PR!" #$f%f~^,J:`G\\Dl`0Eff2f2i\B 4:Ԫ"T]-Bp&T@1Qs-6.@""(BJϼ#wIbdyk-"' p%IfF~|U: c{M*}I+Y3 k*(mm8b >ۇ۾=U3؆]x]/csHg^??׋~{˷>Ϻ|7?ow$)xpйVz.^"Av\`%jGnEk(i ϘƲJ_ux_H`Y u8ϗvRGGkRMW#[EdS(HpR[~[M@%(ЪUA\[%'땦atB㲹.\=unt P{[Z;=2 qJR(7j  1K/n7z+G-uXojP:)@͈׬N-:u'4,€UQ#Cܡ-+N PmYu?yp`6$+B@*^z̺^-yxU_އC[/!fMuJ`D izW)!L! 2e4 Ȗc (sH_`0pfF۬fE`Q3A\lpOfN+^Eϫ9rKvSH s;wJJ[ҋ:6~"e-fYfy\,J.2B߳5 =ybGXH$y4euySr3&zzU cNF t͇o޽= t0I^E-'ha7.m~߿M_oV{+V~.\y V]Z$r UnTG,GƥY!3@kɜA+u)zf?cŵau%׼* $Wu=zd5b!R]W\z"OS8pRwə(SȌ1ݥO9!1wu{ .ʯX ,L*̌C 6!%$׀bpc0}$(,$픛mnY@9~W+19 00y(<%4in@3Nwl[Қnd#Db@ d2Ȥq8UQ'#KҮ{T"̿"h÷\Rdʈ#&N7b 3wEO9߿o{̐4 1 ̬.IܹdYT=QZ%>]:!@68/q.KFl0_vʧT͚"Sm)ڀFg̹> yrdrf@/6cP3ʎ<\`XDe&ep>E8 ?k72\dhFta\B1S {z{j}ݭ)ќ0a)2Våbb|q5㯸g.xs2+'\l79PȾxni]#'\NԕV IDATiA3_~cJUA/6 Z14WGra7<?6? k\3B6K0s22Jl eX…E$0%HY=(q\0̆1.F^ƇU()ia"aEÚk zi%kvG`Qd@̔bڰȺG4y Ej=j4Z6Z8096Cvjj`P 6^_2L/hPX &F_7o_=]7sݞƛ:ؕ:P{$o#~ #>b>e?~>d_n1n'nX=*kssgqViǪylGvG1:nM..DS5[5HeYjy_ Ǫ j?$jLqnb#ZR] PTwڑ@kgiWdkeb;иR?<>(,%"~=51H; x]I3 trWO|y!38`H:d˕ި?n hIjw7&\ڡ#prMh 5}X WXz'1#4$v⟻ab~";Ou![$vmmRaGj}~@wO6elYzy;|מvGƺ~h8(Ͽ1 o$oIԬAK,?oa;5wG1j^^|De 7 =l_r<[i0 Iz\kke#cU޽h%k%2E:Uj(Z-ʚ)YhI'!r2FfYe(wAasZoBQeSl,kUõʨr/_Be_gWۧ_036EԺb]B$~T(ƫzp [I/>}y lQY~psU}ak[߽쯞uIm_Ͽ_H%jdVɭY>q%U lܪ/hʧ+޾/\.zƟHg\܆@F(cVPs &fk̊ 31}*76MŢjJH6ܱ&06nc3ppH"" yS5 Ab $Pfl[nr\LԜ{.Bԩ9";6.UAѼ&tMw9˰Ňt43g-rfG MO)LnQPZjJJ}N!6Y]ƨR{`՝ DfhuSm6v}~ܣ+3B`N S*w$ٞ1b71dr!Nxb Za\h} O7)>EjI[tweHw%G[t"TK_ $1k*tuwh,ac=łCK`tfVH)Xpb,?B꺭h ?U`6-|1:cU-q>E‘/~_;^{ݒm;S 2j~, U-{DzeT: x޶^Xan4p8U, 1mlkaumʄEVXs厇R orDi@U3Z:(\60j4+u\c{T^–>9/n5p}"M7Q:֤ KWtBЬJj#GCZ,tV3.6^ۏt}\rr[3Ѣ xi;qSE$2CJ(mD>C(n@MȌr})m=! 3JBI# 5WE#DeHeOS]uIjY 4P5I6${m^" .jsB 3ɅMi +d"1H ABI JvK-[V&(3 9l\ftnc{^ k/M9vqflwu.6FnGRN_F 7:9L۰ }3l}ٟ6)1AɫßaLD}ܬHq2+ROdr$R1Cpj\Hm{BT5 i5Kp+vJ8 ) bm Kw bR,GC@~?Ph_˙(V_|w8A\cG?~ȧbDH-t9{~i#u%yxXҨ~ u\t,]R{/pe~މcɄ`82HS>YoVb =OGC>ԍ UCQp_׿!QbHCmA E.!Rw|osz4b)f@;GV52 mlclc۶1HSkUyq룰A*|,Y)ƱEIԞ̶Ӳ5e͉L&݌XۮAڬFI6|+LpF}EVJ4Kv'xn;y}y~)J#FPLkEiolیWsR)/(ii]?}>~mׯ_]^}75ѺHTiZfx( Zh`ݝϥZ>eg4p%Q;.[Un?mÕ<5jGiq6>Nj^i':Wv)a`/;XbviFJ %w1!GHGN3'`u5)3k>'BDfaEA2[N;P)rf\|1SҼgFT'Fw'o$=b3oeto_}}n$Սan=YHTʲBo/?vI| >JT[&eEN%LU5,OVjPHTߚxl<1VTMeeuL+CodfWRH΁3yOTjvlY#"cBeD߇⮞\W;q:Mx2􃢣yv,!2y0\G4⭚Jw wF%:W|+ uh;U2LzϘl<ܖ7H'ußq`]ґɸU>o~/*#ͱDT/'On`YŐVwr@VT%1A$>HYǸlOfޣ@XIRpqg$h84#4{)Cٽp )TJ iMs,sM)m-tڇVb97NRaQB*0 .| N}3UW_ ]\X&f5q(tV}SetT !UVD(13VOeddiSxbsZ]dUUߠLо9~xw#)T#LnFtӶq2ޝxz߼~/^_?_|O/e (m҉wO7|ǻ߽s O/2=CrU2XVT2xd5aT\m1k(",;Ҕlaup]ju0hr= Ch}˼]!]#ڧxUDYmŨqVlm |5FOaei<^Yl^n޾R u\ OBK77 mliw7NlLy7)HZ B^"ok=rsl1f9! q@cLe2ϙfeìC3\i*~[*|9s/E_hbIeH&+ D4u|Ph)h [1HrZ?)Jl?C*w$r"gf5 N),%!= P}T4elo 죢 n#2/3/3"9+b[fZf25Sf9';tQn;UraiiiT"sp ~!d{&ma2Ӗ_9͹XL<1Z*"E5k$TN"nW>T Qt)7 NnU-*4[9Vu&kRXi`wvs~ҩ'NT+#E@͵ lV"W|noE+zW? ,cC#jig'v0ڍ=Eolut񡋚Z^-~(3_^?Vn[|uzKċ=RK )a.(yEp g/{DBUL@1 5'ݮ5|Pi$CvgS բ$*"B32˽wWt>p3+7yey`(btQXٸ bUwY]{ZaUuխ5(zY S.M*;% HzTǚ $+3y+ZnPϗho`\E _"}pwW/^O/ۋ?>_fDf%2n~ww"4p>zy闯~/^~O6&p-]SmbS~grVv{rBqvQwc+"i*z?"kJUto8k\0mYF!7r{:xWi VzrʔOR\\Q̐MJ=VG[; ֌cW *Zy""lim'7ƆS?sn鴍9s3ܝn^䀸W#ϻYWB!;g9ssΔ83f슠PD#u>RuIМU>!H8J1Azs5f(7T}݂fUICۉ9${z گNa .gCTn$HNr@RIdON2&Ş.3.sRqsƜӄrZ8CQ @<Ɛ4b2$Ukr7;m}頟 c&#fZXMs% ̙H ahl#ʵ]4f2YAQjWlyu2+D0SVsRZZY.\%!SU{_f)1ZcpR}2GH,Ncm~,ț8`ޕ&sDv qs1RU:KF.bOm_vyk`㓣+B?[lXS*~$\:KѦ}=$ AU3`uoV+@"QK#5u)oq3Z+Vy϶# P9os5/ϕ7*J'fv&3Ҕ)o fJN%f6LmanmZYs IDATA8Mtw4Zp[ؼ>M.]v>lUG OsKjjLʹCYuI*-ߏVzf0+Au~ւH,|{1@og_?˯~wc~ vŲ'Li_7\Fk42j">Ӫ:H#CIeQǰVzsNw4"eb#:.fFEfIpd8f,pw>oARi2S0$ VwBHTCJP=9S/sB=!2(Oaj$]Rj.H3A;ͻTYh2!A_-$Ȼ-4]޸yh[o_Jho `s>)&"lQ+?5KEµ!2V4~]{*Qb0A"eFKe@1+@9VAQq}.CҲM)32Ϫ=u;@M 2~6:fݧ=wPRTӶv+@P-/4kcw*Di  2.AWS/Qhޕ]\ݡ %4Z~X{kre>P]7iYKoS*sx DJA9A?;ή1]fܟ^~|w:ƫ߿}cDiXo4|śW{g?,x͗?OO~ݛ;i|G7sW.X7V_cV@:Iu9b-b1M@ImlbFÝwR=ްVԧԓR'g珀ڲ]&V5ԝNpn7nN܆Λݟ˶=;Nd "BLkzDEV~feSse&9Fތ!i6? D]Q0ҋr 63u\Q7J)3sDd0sO0hf>`fif7GP4ib]nn2A3# th,ʺoNѴmjzaI`O fXgee,yXv~,+=H3}1TTm;JMffΙb5kk>R̙p:\ e"`C&CdflsdlFOf0[JJiz3wDBfP6FxRŦʫn:7[+\8+#*k[@+gZ]&_ ӕiynr|k}+ tlY":-{VRC|ћHruM{3tyϟ؝E1w֡y8G_v}!+[ ӬO6.Ŷ/~~kH<<޼|8oN˻i=iЗo~~?GwNq"EƇTa5Ff[ׁq TJrq~9TvH@i֘i5U*= ёg*-ڑxUhy<Qڢ E7}~8 7 # XP$"8즫LSR]Y"6N^!{HF \ǐ$4-|{cNy9X} a* G/ K`Zzs.9#(~CB$,IcfrfuЃ:n\ݽ+&L2"LH) Luء0s6fN҆QiSl6sr wEa,GÜR @fG ţ$ e],]G$M9qw%"[RuvcU$瞳2@>S4Nkap.3s#OINe)xFH䕩[ !7.ti23@J`&ݮN*m||H|6U)5lsL#ALr ?Y 5QŇOBknԺV^wO1<ѪK_;{^ ss9"EQu. `JPhXft-:$(veG{0!f e2䀕[}=W'`= {f3hb\5B68JYKsL6zXm_0\/T.iMȵkƿQڃ`WIbop}"3Z x偟NP %>e4l7 sxI xn vD"UNT5i߻b(>b=K.m&z:3={փϠAGɨ#bΙʲ$kNQOV$҆K kV8(\XA+wJvՁ1du~ d!Ez_pQbE.]=}C>N]Ӷmd/?<3//^|FpÃ?{y~/?~o׿><}R*sqV'q9,.n:<AUDI==.O_߇vzfrBkRq?5eÌ~gyiws~)ލj>Z&!a]&&9JJuz]]+W4RP@]w~ ?D,%taf1%EL#% ɘT831Jh+ҁK"p5}2W"%)+X( yfkيIGj898% GJA`\]ڸF*E`3V0RDj2!Qw{FQ:ў訳tf&kq"%Ko%IMГQ-6+Jf2+Qkkdo*$UAKǧnm3OYϗ^a;1'wgW_xÜ{lW}xۇǯ>>N%UuZ㡪љ8Xt@s z-T.Tt8/?[L|z6wo~/?:.}cTI+P7M.XxUW $jgp7>*I9ssNn=Ѣ BEc!^iA3t 7]υW &k `%Lw'셿~7/qn־k٪j{4Y lk|cgf~w(+i `!+,0Q[m![s/9[C2e7h`Xm%`VIdJV\ q aޞ7+'5hJm_07?I4W1KKMɲ}#BԀ+pAh*K,cL6*tޝmr!q>st\23TFEyOS9c 6'Em02G%W$3.i[Ln^$rJYR,.̵AeVG̈)IX&0$6 L WM~sy1/7Y0x[O3vvP[^k0ݍ0A ۻOgydzhYID5|5[ j?Zk,!;; YYX1  kNz-"+R('<9%mQhI૿7|ЕE6d$8[![s,zl\,QS>Q({^ۗQ?bFMpT0j7aUyS:˼]jasL_Y0(V0kԶ㍄p>ȇaY!xR43VJL7/ Vj1`NPݎђydAi, gs^U=k/"~67TE#钝VBEe7VoT'P#!$yIz L%խ-ɺx0Vqx$U!=KTVÒ:\9?ܕݛ/cݻ{ի|i)端߿;K};#Ӳ o?iNmޯFkz w׹SY5sn~y9Hc"bss=o{w/eglw^"jIEWDn6z񸢕uopKEsJ:?z6A(ّA8۽k('WJQ7j3$E|=.3Ԝ[5-Q3+۰1r(5Pz:l37ejʏ//- (bf(="p23*(7t02cXF7sTo!3O `Ύ'=MgS wg6i/?JNǜ$.MCꍛռD0\VXj/ {\݅Uazr,z8Pl):9@_.il+E+~[df+3]J7RХoO# O,-LؤxlNsнGfzdwlFD6eDRn!N(jXKzDWHdJةD:ʯ\*Bֿ(z S0 Kvʤ»),#S,Q] Of9K>.9m hs/B&H76 dnV_. )vL ȌKRX^!02JQ]TJj:TQ㇘NtO@mV׋QGۯ竟K^˵!T][%DQ7hb`>0Ԭb +_znK U"4yӀB|R }wO߼}m˷}xW_}{LJ߾lv8mzLK"Q}ֵ@%VT]9^rb&XHg[z44=>_?.DB s@-~$87/~p3:1@ ߛ ]5p9JdJToX9]1Iەqd`)ˊ?XֲjWe9Z8Y(+4PE IsPg{=0Z[4ۤ!S@@f93Q՛&`@v jo7 F9g"Ŭ z5\e##W5..Ԣ& p3wDjtc4)>HSb^J.6 7/ksjf(Y,SO-HE)wJrw,{^4f< 5ner3%`gdmpEVTva\h#_` $ UK]MœDx:+g $4ze1[KR[揜4n0@k9O,6c*"c":7ʙ?.V NXPV#*[@XX+#l!>T _,!y_i_[̊3Ҫ ^6!@It=R!@:033H .Qqy7w-V~RT㹶uG@֨F,7f`7K')!=TWD=S(Q>][D]b)'\5NrɵA3" ȣ}nnߘ,9AoˊX=f $ey 66[W~>^ⳇ7_}~x) gItox7oc>̙^ܟ~$C"jHBF} 'Vt+qaH4ZwM -c3Wݿ{J,` J}x\ӓ9g>W/N)ZyU);hs &U=㒪;wH@ƧwE! U0>۵u=D)+x;:IӰ9c>bl9.ZMѵǠ_7?=?35ńt1w=OE^M6ɔB%yeeQE='$he0Cf>S3sݦjU2ys%F&*537'V=b}w%+慠LCfG(Q{a ,巙I9Y֛,QRdM",>Z(K)q@$V; `8|173=g-Yf ɼR3F{2B3(̢<5EZM3N*{2sh0͘Od#$A{ LG)K"s#2%k6ǧyF >UkhP32Yy*⍲0{ jMKLsN%H6w1_&Yj3'rOg3J Ʉ tR3Jw^{ jA`J%ܯ)$'#v5eXr涹| &𘄋 X/ZyDͪS{R'JיFj`I%J$:0K%OfFq-θz<؂q|[Rnyn=z?jE֞M~!Ik+տ7OORs(e ?nk<޼W^EG1}n+e_pe~hp6W|khn+7K_NFe9VsxLz59)O͍XV2Hm۶mΧө%hPYڗD @,wPlyFHhPHeR'2ա DufdY헕^Uɖ"L,oi-sM{ Ҥ8^vNՋz}waOef3G~0s||?||;|}O8y9N/<.4C=P pMxUhY7^ʋ`x6SͯϏOwM%36] pHHa{ÇLoq??_8|_0D ^;{T`xYX40&P#-GsIWd5_=?g=ע7Nuhavr>a}O{<))#T ")nshu2Ï>~vM 4ϻ̘̬1:z%v|Q$l34Sڋ^Mr9@'Kb:fG{G/RʜB]BZPs`=?\2#Yg6N'2W-;j2p-)ƌY6q6/ڻ; WbGDmv:$ ;:HR61-2$w22RTM6f扌 s=bfWCݶ謔S= ׺᪱Al`f0L tG8ǰ̠;pk av*u^u$]q'鵻'C!3BYx=f>K ; )cKۆ̆Pұ4+dMVbLžC%g U tJEPmFOYN65kb-m6(Jh*&VБ25zMA`("W@(9ZP;e]db/&xD⌀OOO~?{|3?ӈwq;wcGVug^WɋU+z4KXONN l [||}__"m7j8" r<ӟn3WqG 2tj u).|Œʰ^>9sk /@]DUii~V\A4}.Xt~S‹bGKuм*@Scs/)ʲ$v 'H#/yϯc^~0b6PB$E8ӽZjjK9ia\s5ƨ qD^v:fD#3fǜ3$eq9g*e5{\ҌsNҕs$qz,ڱ H&"Hj, "{ 6'gР|T AZ pɮfs?ٮ;T9"Aȫ"G&R6jjf5ZUm<']"dNe$:H!ۏ!'*̈́PC$M'UJ_>0SY]`R$FXds7>؈NrCINn K$<~yֵTX݃/@_Qty/T(G89I>~`[q^^Lׅ?Up?Vʛy/w^⤱HcB')Nw_?wa>;">l2lzW9T\#fT7|@șLzBES8ȻgwD GfNw68iJUM *!-[MuC ` fd 'WPDI8e&  (^HU |_M _c/]p1zu\)a`F[P]_yZYoV#{2-eoWle\)}>s1#w?6>{_odlh監"spAy<۸^>o~۫ղn;b7+__<}>?nr2Q!%8og?>]N> i~xBe߷?bQ5Jji\(֋Tq7:YƬYK/=ukL|_92k ;vu ¡ 7͐TǍ)u= NtE(3Z ' GfoN{%)8Θ3МQ,< IWG*ؚr۬M%![6QԪJG!AVzCk9]"J2:L+asmk'Vluz}MES,LMuW5TĄ)Z\.d"IiNIʓ`[fһ"ʨ^1~^ٶʘ9RQ\I03U1pYJG#ٞA򈘡Gubj1Μb_ݻǏww_mݾV}1?_s<&Vi2Դ !h̏y\fDbǧ4:JVc0ջ?'LJObr^Ow~zhAeo&`F}KCC,ݭr_`UYYuE לli[{Y iˏ< Jjvy>g6@ 1Jy5x7tڶ͇SRX<ӥ|i8<=tū,PmnYc,Rҕƈ7]Z<̊Q.-y-XW S";_Up `Y/fA`OS_=zelDe}0R4e&F=l)Y4%0qqtIlUAcM?޼~u7ReyO|y{?_}շ>#~W_moYәwo_~\'|? ~9WBEAuր6yw"N}|Jf{V:yJ#tZ *H|圗M⛯̧obr;_۟&9ʝfë\fcc܌:E,{,WWr0d}zym^Lni]+A[ԃݠ9sjfAʲAɲtg^t$^P {fu߽{C<~7?W|vII#?ofva8XL6Hw8#797c̹n=RdG0 R_GhN(Oضw?rx~'cD%u$"5FP sCfmjBBɮ[A(j)* [hVT0ɍp둙0J0/\:F"Crwlؒgڜia sUw gLtsĪZfFlq VjpQeL(3BQsa$9%ERE-fCP*.WU ۅ*[ZIYJU4UnNq+v"aHrN!` _!r0Gb6ƃmttGCY=O$g.n"4Ȏ !hfJh3dsR1cl@y,u 䚏 v+XsBKGS'ڬW3̬2 (Jk20: z<- Zkؑ2̇ΐN,p {fL$633r gOϽ2Pj4X2s'}D$:d(| wI3XD>h:EiV9ܽp[aQ{0K:25-=~^k:ʫЊS7y|eMxXz3ϟWń`Ąr742ka6W MЭuz㠢[uz^/ L/~h͆__xyDIPh`r雿:ty՗̧oYAҕ22MXD"Eܣ$/[8XPT1,y ddq(f1;>'wWhf88N>>yOt.["I%CWP(6­W@=za\GvfogL6fSTY?4)x,QZ"咺=>lQGB])a̔v{\ΉY&ZQYDVe{T%"9m/#iC=(m7&pAbR.wNxɾxo0܋N]rӫ}_W||yeKdNGbeiHA=7w϶O@vm@N?O9rQuh]mVDRrZ&2ӈ|>97wf^DN7|b..PX{i숸ܠ{;.2a7;j~Q>WPrפּiN]XghhԓWQv 5b΢HQNBi`MUEHN'O/GE6TW~YvAh^&/X$K_ezB93F5@g Q aB*#+#g"(#TU9)]X]G`<*1$tfP9 B^GwV OϻTvHUfnJv㵋Ѡ nZyˌ 8Y9pc >2.1P$G3ji1KM=cfD,5QUQLr+{e)_Pi K4yOrh:adZ|"iÐI>@;G' ߼0jYĜBHτ4N2<="X r)yƤܶ۬e^-4Ľ(Wb86ޟɈOݯE$`HLR9i5/Ryr~x: |8_?t4gJ1@[~Ĉ}tw6N:gy?4ǿ~w?(ƵӬ]&&)H^R]*04>,;F/,Q!V^d̛O}8ˌz OۆzYY`;rHDB(4AyӝF? F"d^L=2y ĩ=71SȮVUx(@婖)YFZ^Dݦgff(RwUҲg^I]~,lBЬΎ(>-Pš|@4bݎ;:؉aeflLt܆\'o'cɀБ#13tH"+>}hOal{fx뚱PflQC;dj3tP͆_x]3Vv.gIC,Զ>*bN>ܬ&(ףlXI19b6<2?<s#:r}+σHw 9pS2UaT3U>#-^%Uc۔1eUJ<2ghLy*J gY Zx|V¿숇\ƾc޶(h[k ؎\%-T_tEpo5H!܌,uCPMnK1gAr OcܟOfvO{f<ε?Tf$N> tt>CPq.^:}Έh/3Zr!fF؍6s( .dr:rb'\S̵-JXyu+[݁ٻIգ).b @b@Fp{y^o "J.cemTِ8Œn[ LW/}d 6ˤ\3pg,1d64T=h!Pce5d~սrWg fd2g]p Daai8lLL)lÉ"/S#!4Dʨa0OHL)(Ԭqqʹ[7S=X uïU)?'Ϊ3ܹLNG(`1#oۼ~LHL(z;F[|;vB\bz6*bVߋj~dx֓mXt\)_k9`77;sNJ`7IvDCEG=b2i"DfiVb= 9w߶9gySrRΌ(|:UE.ˆ2 US 7ؓvIR7THSNR/cGFDOv:eq|ALwTCY` ܱj7vY FsLQ-g=IB2_|z/K&]DSxllip1U}3w~5Rb(q{f1ISUu(&ã2`3k"" ^qD939#ms""S.:#KZ^<ۖjv}[CIJ)cQ6U~.4eV1aHrJLT<>Cinerr$@ѐHu wTځߝ7LdyGPWF`e<Pu/̍6Lt6ΆMwD.ۿ g M\dn6En0Ongޟe`(#t ,Xܦ AfuqL Tډw'aw#s"4f2# {.BA d1 ٨s07Gou,׉icXnlZj[ܿ,Wmv-iztr BWΙ7N|ާq+ W%8Ͽ9?~m91J c`:}#yOǵx:hYJ"ՙ-}#HHs8+_yPXVA90 &94's3#Q $7/!]:)s_g-  A%%Jsx51u5,CDuZ z}z\(#a6V:sG̜z16$iQ%`J} rXH&6=n!*1_@ 4Z#Y*"K0zQK g5fK#?ڼRY{vmLY^FBGL8 y( tgo?z{irtww>?}{z}wz7:#^OK|?Cpq̨yST.i0!0̀xx'??~5qR]`Y1 9en : P {W#>OdN3 RQ/gJSL{ݴ|mT%'fIc ԭt,c˛jb֍oDMFSF9̔t7x:W拶AtL>"QT6AʫtWNcܺ美nyY"l㘔H!QJN”#'}滛4";.{Z4)cW^ΠUZn5ֲ4/1%=I-JjZ\ [`ق*șJ3a^#؂T!v<̣tcY;$NÝNnƻx8^ߏm=~@wCM`tczY1X J9rfR%̜3g~O~qI,+=S0ρӄueU? ¬}b7w.*l3zAq 5{NJa.R{W%E{>+ff(`)7J CRI(2DG7썂`O]~/[]zJ.+)HH3nγypjNh306H86ܟpƊtOtzmC! 33swbS :S)ylC9[ %IQ+ -Yg3몲Gdh`#Zpkͨ8,VNҙ#\\_7+x&8,MҘFTv63j~3 ׆YP#_h:.A-H3>2i]t;߭ĝHs\O)5$JiV*Ú (r8#5hM݆b,8i_g_|f,!bC6V4CZZ6p_A&ĀAxڟ۶3 1>f5<ewt&[DIjvR}gϧ1 _.K[g!t4wGZsywYZ=:k2;CI帯"0ں&2z[ZVvO{A/F ;UwF^rėg<ѧo |w'^=6v:a3q>m3>ƠTgJ"ɦ iJZ{x)3^T2+S*= ]yVnFf!,t X 9'=r#l~}ײm(F✓nO3pz2-ԉV7.W{PKV.;h?w]UYr7Vk̐af'pBXmȤ|s=ļKIU4 IDATZxEVc唳N4hM'jH3d"!# ;BHRq4X*Ֆ*C獭hӛZ:n07 j}1Cʸڜ{3uB)2S׌͹9iN֝1bB*)ef&MtNÌ13-TZU$Y넊4m)H'P" af&R8 U,,GϷEZc$*Nʽ[Of,V g |,Jtw,r(G6*y3f90aC3c|>15m>mƑQ ڼe0GTvfY$IGT]#'(U12m,]x6b&֬!ٽuf/ TmY!^]`L&τW?[ы*:ևiP`Gm")L`#ʟ%87/R;ݕclssh9ÌߦVz9'f\*j;gRup Ԍ.pIۜi(1a^e0-nG,{02ᕣ@wVG(ZҝyL͙M7:32h-+v)֨껭F?%Q$XR9+ g[Lʄs;]Glr'=G2d!ͶH)c ̉}.U7J=*HmUspᢏr08)fK?o:Ct RGY'GE=@RʣiI V4l?$3Y#J܏hfU 5 |5R,e0 2&("}7*64YEGL]~@[vZ㫚s9>Ήm)yI$.oHx$  !"(Ȓ.c\^kY{QsGq=]{UU.dH.ɕIK%4 iK1GF"!ʒ<..KDi :,%#|QY>W톄t"FJ qIWa~\ r2ʮ\75`;쒭V zg`[6g{4~ ݙ5äSǂOwnk]ϲ)dƝ8wfAH?m~S[N}pxd=ߖ8Lg4;.zu{v ܧ|ӄu Sd`h# ̜@Vʈhz ݜZ D 2(5r 03 tPVFZ)ğg[ǁ?1vTi_7/'>. `wgͅ< qH1g؞H8l4rE\'" cEVJD1ײ]D8Zp)3(gΩ;1}ٍTyu㭅Ψ +Upqtvm;]QV))k]]MQȈXs"VpsО o:3*X4r@*oQ}?v&,{WؕiHȶ}bF ֨ t[o!QR{rx{G1BvroWR7J,!Y$XC٩#۬nX]Z1ZRWXq[Z+)jE30r(v=v(lꠑ3W,%`B*`> PͲm[dU(Mf;%FJyhfyaX&e #dEawn\nJ7D?,mi(*uĬ2!x.A|;QcADH)wX"RStS:sC.+u12F<9:"3}y-K d朊K+'__+ؿ\hv,5؞:`S[A7U"$tpb]+YwjF=oKfv[}73ӌF 9epRFa< PڏB u=<3ҹz Q2D)ߞ?\D?w|n>"#Uia./FKac#,\{f> $=>{?kj˧VI{իXK167E7JIh 3/,mm"f{ڔn6z]`G]l`߇iAQח>n%.\9JlA~Br\msZuTN u7TfGӔ`> w)cx}}5;9M1WcVD@XȌzoWs3q:|d"L-EEv,0Dm(us UyY : ZQ{|aɴ"F̘̎g~K0Ei7hw_{_\\~|:#s۠\b't7K{-k7ƌvK2 8,#y _s*adH3eڦ{J/5FFOL|y}]ZÕyar}r˚38قit> _7{3duFpY/#GVK 5z__uDVh-Ǩ2H+(MJԪТn$P]Wd -,Ncy+} +r72vP`$ aOI:YtUX!-#َn ss*jQνVi0 u2ﹷ}Ѐtߵ}#еY*R0КUU ՃIYJ7C[uj1Z)j0vZt3,`HF||Oސi޷o9G[tFč>ȅ4"@&=#B zQj!5e33S*K~W_A䰽Ś:'"`#wϺ*hOy EThS h/y{}c!nьTE!5I||]SwAZ\4w.IK%"R*=x8g}+K:!dɐwf+R@"K #"(pEB@ĔGu|}}}\.%3| t= M' |Det)0 ͛{x֠Th흔ʞynP<6'ӹ&iGa=,R?o?__|_8xOH:B~jŁy9.j&"~M:`W&!+r=n3ah"+ʕ5$,7D[B~/;8Bsu?|.`ͧۊڎͬwOMwWHy Zg{~׿a#w9{#KTGlzs0:atCSE1J3I5sA6RNIynr Ɋ*6E䄈E)rfU) J`DŻFŧ姆R[@jp TC)] ة68$ťJRllUlx4) 6D4JGolSvdPsffʲۃ:STȊeDdFpdiFe4.v#4%Hd A=r/xxz◃aGn=Xf( hHP@2MpNbRݨt 8\<0e&FÌ8 0ӖRWpOS1ЗD`e/؂RhDqg "9f +5wf" s>~aQg97gǦ Zh~,N-)6sM'DuJߕt>ؘdl}Djl@|>c#5?Q5`!oWS7d@܍p_M|oZy4SsW{&WUC`0ꚬ" ȷBYևxB smǻ m<ysrWY_`ken!7wO|񋯿$6sr}%ٰ0uk/#Dg.3F; IDATSSY+KZМ:Wu Cr̬t*ݘf%bZor3@%-sSJ+p"6bAk'.u,Ϸ:YLyIƒdmW4^VM(~Lx,}2 a'[;y?@[oxR ^D##εL3:1 k@Gxb4-hJ00laS*j!K$nrePtivAQ2AzPPn?i@mP[r=B {)Tm`d(. ƞw̠+lm3T!2yHUr`G+JHK. fdc]̨{g<+6 Ը@&BQs(VEVYZPn,MK1@gfjNJu M,d8zX$BZU.D~m+뭍hQզEMI*Zso tɚQcBcb .ȰLdF%s]JnhߒAw/ERquU"RKXF:Ϡ0sDO-aseҊQ,9)i9˼B4kqB3b.ԑͺI;)K3d`iS!EOXv-O_5v)`W%a^;-q7 y¼ȫji2h_a+? _=eW/ZIQϷZ _>O#OXw(Qr`<HNHAߚx0bI@ 5 U2c'HW E,|jP0Is9UA+A1l g6ol]$9 $0@}%U܃A$ N#5C?{F`hĉ C0*f67Č0G"1E%\ks|{9f"wfǰ̒ "*E15}1I$'!i%Eg珟>g|1zsퟒzVУkm16o5sێ E ltmnV}4j^*0@ ՘wDtkidTL5&o}g+A9M ,fCc\_bMebX@۞8U1[ty7G~1T3 gtUQ>F^*͊ᘩyεVi3w%Zc1O9i^XѠX u(H=`EgvjA'HPCDkձ쒝c "?H&<~Lo{NUG8t_֨~P*,ݟL3᣺$S>KqyE\oF] `$a8Hci#KvT>OJrϬb-0;(ΝH$:˾v,)t#軯jo KZ3дezP@bCإ6{.Y@MA㓚JfӴHv[+Z/eFz U l5 -LfM8SA1 6A31*1{̆Ό)A T`fZ*4ن&+> @*QN #zGa$C+YlfT8Vg$q1yKWػ&^7@xP٧bn8 Y(lv% Ӂ35>qtʜç㺘S|a;GtS?seR՜TIChV3jI5f[jЙ F8,@Φj>̋lSy9AU'QauTMiù]Je(Un>̢(In,:k.gJي~<](PuF쥪Bp?}~u ytWFCkA]UīQ6XFI,"ݬXyr8 .Gm ky&VMkqIy #"$||2 ֊\o f w=&i%9IqH8T"TƠ̋+k>l?_g?G?0n#[+Dې$˰n a=zq ψz4K_ZJ޸,\XкeZH8Rh"3X+*.m!sF¤~{_ۏY6J8NB+/8j8}/_hZ-RI̽utR3<8H2K"deEr{ ɱ_Yp䮤 y Jnq.+!/8g rHV?n,'-Q=Zq{ThO?hc邏]Su]uޖ-MwIPdfN:^F*f̗ҋlRD4}q(Pku!o3@r)ɊS#GKu G(陼p3ZnC)wg߻ {yL| @o,e4֔)'`:oP[jǨMy/T+%V V0DڶJ`-}pݱ7{_[Q"&iiO:2֞z60,/T@M@uSyМ a&3>jE]%ɒ *Y]A4uu3hL:!"BY n#3#l9DYf;<4 _[jv\atCqFp%a tԶ0K\[-4?d,g;E\O3C&D᪤TK0s 6k|%~οEٿ6>Zo_|g 'ԧs8C(/E .Wr?etNyn(ViP믩Sr5Bfc9l}O$-mi2&d}QV1}p~ĸ_u>۽b'{ ƕ A=pRbow}ZAu!*|jwjW-aoOo8ࡹ` 'CPeDZFM3I+IMK0jI5Wd3>DuN-M_-lqһ灵 `RECb}5&*) 1%`֊)K1L5ME""hAG]j;faǰ"L̈U\`XJ F^Y}컣VJnwy3,2eܘa;{k2N(/uPZWc=ڌ as}(͐mnPwp- ?20ݜ3o^gۦ K"5OޓNW>,nJ0$V{csN^y3Ux ́W]sUau"w RYv:l5h4C"KVRX":rEcHqM9c~Q5wEz*?6!!/21>QcʈyjJKѹ$E˳(kM0f m,q]U魹aY{S9ێFm,rb(>6!I9KR~ \\z}u atI+Q]O{E;̕O>﷕B!|0OMHv>s~q_ײD$ֺ ;U~٘yةd`U[XՖ dFΌw& ک_ LFhɒ$.#E1WwuCbxHF6WζU -e:T{Myj[$\d7c]Ӿs-mW[AmwBm==~&#/?5ZJGːt0w·妠n8FN/s^>!@dou$Tx}3iynl%JP۴;T1_z<̶^Cŭ4[jr -L*G`@28F7SHq%TOMs,RQ6}+k֥$,sU)SHu(+R\PW*@3Wf埥=Sx kp4ϗ!!P ,TF;!}~dO W8h<xo-|l{k,(U;2^Ջ56yp8mcQܟ_L׏Srk̲u6K* `1~~%\,^_ltƫ$Pe֛)ԕ4-BF{EsVrW-1L *^) 6][n?pD_EbRV*jܿ?1Sk;)@+2ÙjE Сr5zh9k٦]Y53YmeyXGKR\ H]NH4 |WϏ50`*/t;pw!2|p^>bn"C_Ƿ/Ymx7Ԫԣ%:z!kLÑWHD;7yhu|-1C @Նk5x|RP=.B*51Z)ft vU=|*U@ ,r`rq+qjBT`ѣdlH(E``%HE/KGM'CwCIy:Q*c,QRfTNPC@SfC K#p rﱦׂFC Dbaq <wlC/!qHIS}u=Iq#(CXGL܄"JA-xK-){I:lUs)X&aa%ɒ!D^sfr;%mpnO*+3vĊ0 ܯ-WBl?.q]!ɾĭ{JoU"U2[:xm\Al}1"al2HZ"d~1+삀¡j3[%)Y TM-s/}i*ՈAFY̵]kEDD~P;'o}G$ cU1iVaMd(܎e}JZ8%5t3nZDFhDo{DUHؘʁXZ`3̫: Zjki؏U 1Q2)>WFUW7;31SSRuT5ڣ2Y 2NPX[|m۸I%aǔ QjTqzL z_?/?yZ* 9- Ε̩N̜sWx_ˬlٵ9Pznt'cS2e`3~{ǰrp(fבX~J`RR3cmP3֚)_df5LV0LKU5J=!>Oߨ+{:Һ1U,J{k|Bǯ^vnTeO%*"1Ч#S@$ 죞f#4(*eyAɥhZ.3Gz(ۚ.lJ2Y.*} +Azk&,UGyգ#C](6FKț@]Rat+.B3Z2& 3YjȈg$y+-Q,YEsYyүe3BR;E-sy24ِV$ɥtSuqwZ)3Tidzhݖ'Vݐn7I%nj',8S瞛G`33 <٨+SNDw76`Za&NjILj\.bJ{S*f)fRl6zÀL3, 7 Hc3n3K{+nc8 䕞'wKY{鿷R*pfkz+a牒ߡpHcOweZv4T*=Eq= \LJFB1}I̟~ES?v3m@-_3A8?t57rjpMjhQvJ1c[F dD0մrA6O{C=PІ;۬2@eZE  ]pVqJ_?4XIqs&I^2Fh|?Gf81>}7QvΔ%xs`0+pߚR)W 1okSI8JuQz"O4u^vl5 7 W5P_\n Z12jMr*B&XUʎͼT43!t,#6m|}?Pޏnחo9)_HG`]IL ֜g#Jㄻc+j[Y3Np&Z /G03.}Xg`x9x͉n)\> (w/o3lp(>lp6y~P6?o7G.8QRT#Q5Re޸%ClVG7ֳ.YgYY[򩇯gs]o$B:$p^'&w_;zC"k܆p4Sc"bEm7=1SY$ :lbϬԬ&k`(c5m\K>..jqҞ!%ą( 7l0VFֺזĊu"H΂oa2hCUZ^n KQ^si ]85JEĚsΙJ" 1MVdIF"ae,5k)V6)lbkar3{.@}׶Fm\ѻjnl\m;k͢4!LUfd.wogkr7)jLڗM?4kIjCq8 AC`Kx1Elqts,Z7CbJ Q$W[d/Cvx"/:f*͌z6k;vUG "J]f^Of_ڬ&h17x<:4WMjrRF\yKú>o짯A'ʄ?_G>edwYdk(L|gP3G[`R2\֩_B eqET7 (WԞXFѩ,.;D %f:JN+qemy护ѲoF @|[32:?jE} _{N+s Df;U!Z,rԏ13+T‡w[eEͼ2t,2(Yo3(Ef8tSWޛښL‹ذᕚuV9gM<֙ &ɟ!"Ȕ^e/w3)OQ/IAs 7xE"{.3Wȍˍ>|0 Xco{=z,=RsQ㈜!]1XJ ̵?I[ QNeatZLӆael\G>Sq2>)[6$cO~{mKJoUfq܆%1 q ~~cMFKL~u||D p9o}~d^oؔڂK(2#-'НU46ZhYwlX(mo GEJW+,g]Ļ~MߝwK'YR{e( \RTZ؉Xbpbf Y䍀̆mnf%RH  /t&u&6` N+ˑ ݙW.nSŒ7S`Ɓq;v@kdgh*f␹ FD"4W敮`&a2r& ,5K%uIYRlntD Pr`,,-33Χђ p26+g0%AvDwނ ;@H^״eiR9>~"!ìd;TK Opwww}<;9FNͱ)7e FGnf^Z. mUS.bc>sI_dfhF{,}RTڧ{Ȏ) f/PY9VBL=> ^]+YP2"No9T~4؋Q13?EEڈ cN(8g@r)X 0[:ǶHR-ss_nfv3׷g䷯n+6;R?__?J!"_߽~;O_:0gX7߽}e UxyJݙ6db-ZheU4^GVԀ2)yö%~ ^OMs,z ɫf;h9 qUnJ v f2>9˫%jUA!U/4]I+E` + 0+lmU9?J34Nb|j ]mӶVKhϐjV`]_XR :=8zwُ 7nr@ir0(D Ҩ s \R'nG@Ȝb&#ePR $!Q@wH3F83"Wىh 9EU'fT!C慦hM&D\+b&ׅ63,jw݀Ra~{O 758ǰqt<>*pD,(l].mŴڭ?2*+l6aZmqaV3ʌ.뀙8snH 0ϚA/dG%<[ͦ,2wˡ&0sۙB)UO:7x;ff^:W+OFka@F VAa4@aã>gm=V940nQ y'U.,Q8Cs^/}&p}"q z1 7?"29yϏ__u!3UNpBLExÊ )3&"e辏@@P{Uin-efO4Wᱠ1C㰌$y;|Et@gxaD`I276 չ(L B,s>Nڵ8?};15k(67; `MtY3W%ae#pKp\H(ae`ARY^b(:P 7G`un/|na62^JjJI+Q6#9-9)c~dI\AIkXb̤8|d6 Ln&2 X33q~Df3oƲ'lCD(˚dE#eaCP*@]iACjjv+7JYS x_^~~;g݀AL̘nùǗ/闟eEd~}y?>0!I}Y>WbgN3ً@^Pv ᱵhn-?A*ݽOS%~JT6$ XJ6H_p3ӪJPJefÆ4W.,U#_DV7\:ݍ-kZȃlTH~¥aN~sE7e@Y"Z8Natu0.U@>)=4ʼ$$8L`.!pSW|/zB0?〖c;3<أqӌRჰЀ%]<ۅ`6ޭ:\qv{D_šF/(vЧ0\6ÌG9UL3nLʲUt=C-Mzil״[LAjf"He+uwlpRL?T%C+M>|Pb",ƤА}Ú(E54u $ωsX+:p%wo}9VgD7@NbNjAxɀ*Fn+ΖYvNohtjBtmEUKm%^(թ"tEvW@ֱ'N~EyWVžѿH??4R3Q IDATć׵2QD2c \E#cI0VDWYφ%?+E˴匢[~mXH2E=#*Uځ,3\ I瘩uwf4U 3"'#&0Ze$%3NXyr]߇R㨭xnThJ $65u߼ߥ.(TQ'v8 ^)MpJGBhRmvF$b% #(VI|RD3~KmBFt2Wanدv0e Z>" D*j%qJ%}aW'eV+P|nva]+D:#F":m=̍s^fgJsX͒61P;S+*Rd FUakEUD/VO ";kǐ#Εr˷o/_yU~^_^[nd2g%~OO{|e33|:F̥X)k=_? Րܤk\W4O{86fp]Km'pvuл} Ous:2upjT.m)_F߼W=U_:*Qu) !ÃI@ pixfH٢9MIߚK@‹RZ2HWBBBŌ,i 56$\=5+f+Da重;l,]WZ@u=Z x D/~i!Defv\)2IQ "@+2P ]'O*4G.ؠǶ:. ̇l1JG :>Yw/=}ߋL\?_\+egFDΔRΨw rHk>sS3ֹvwI0T($fƄNxh{_l +g[~C$;?1jyj-eVFU\rX [)"KIq)nE(`?AJ6_>'TpH32 Vv5kbU*{^FҰM02*/`62@P.hn'&AhingLmj21mbU/dTdD E -",e@L K"$i0zEҜ^ *>m-=4an8+9geIe4a2"'919qڊ\F/3X);kᒱB`(33kcTJS  yª.ul=BRsfbBC`w׾}LUENzS ݧ^2eWPVVAð%],eXȢ*F^s.DUMDeN-BEJZ2q݆dTދǰRk5gv3IŪ J\ ͏Geqm ؀[*e^%bI5dC#==G e'&Χ4fU iL.ꀑ8zwXv0Mœ'F0VCY A?Rv44nFXDFԐb@0lrcZX2kIUofBiHd:p: *}+@&TD6GuCE8ZEDъ(p cvG[p44A̕uoЊcR#}5.h}gŢv"BY45A{mW{(Q[l_zvURwTGJzB5U[ou3^ݺAI߼l&t絺]Wjgk)*S@꠫f~ߡz fw_w?:+9jJp,KO3+jaH*N&q©w>Ҕ\UENoC<#})QvG)dpw<L ^qVUgFDx~ ktW 1'J Xm)2//a#ZByCm7 308L3B;$ 9ATJY~R: g޼7p(rZEi$ZwSDDpP=z 5Q ͧ3/ %cdFsEYY0OULJغ\ەBDb ǜǸޤf>^nC8VN4qFԚ(Z5F\cVKOp3HB3݆3$4%R^XMt@CDu{zPn _x?>cwWq.7<~~;_o߿ϿXJ݇2o7[8ci沏~YΫ%ó\3VNmF>aG4tT=#?eٰ%\g,9s< D[Vn>>+*b[Հ%6`Ϊցa>_7 8.rAAmx.YF f,dҍZT=u fG'YEXh9;O0f`{iʆ?|?>:Kx<0{AdREh*eLn\u$7IsκJeRgG r噂Ytcʹ!u?#~ܾs:i?~̵/_^ǜ~o'=x8?q/΅teғQ#c]R>hm:ktST|7&̍S[?:h_ ;@: a?s * 6yK$ z;Q|퓜Rӯ>w(3X zӊ(tY7 ,S΂"Zu^!!}݆e oc(fZF[7'@Erv#xB]fe.&-  -rypǨ.]a3݄~0٢Ǫ,ZUFpn@Q$iX׆ (,-2eXNMܫ'2TCbV-^˻0*vLyoUF@^R#Vm qtĐX WQlLeeSx(r%BLaǮ;"WM2DB,Be]" ԡuڼ˪^ 0Q%!*+z.(.Iv vmʏ+b?S n|ځ]zdb~Nj1"34;o7g>1I$5e}\,}s{8(w/~z?jل~BLooCwBYF?Y\w 1':(ctU+̭_Z_HO22Ls248|T`헎ҳF@"8pRSY2s)^(ѽw<^ ڛ$SZ+15,'|,ULԇGY SD78.9(,VMq+zkpC(S2 a219 TN3@*TLL`GSKl#2HtB,S$, ̆SS%4l 3S}DD7dD\JөJ Jٌv03-sޏs U I5-JZ9c )<P|]VP2H٨iʦX$YVGN P|pxu~a__  p`F1> D|r;b}4^1mFr2x#{_'R6nW5R@yIlݰ^6qs<ԇPG])[~YOG7hƓ~Vܭ4D'i$N@hh4}՟u,˘<ՇbOrDh[OE Ksc t?H;hqDžFKa%qY-^7xh$7;hIZ$J zB8#؉y-٦s^]cMZfngb .~y0F5@+uSQD2$Cnh=B~ڮ&UYf?V2ilԫ?\Rxf>,$ҜhR r 4džI@!\`^egbD_(RLEHt }Vx,&r`wFt*+ .z"η{y{fhԞB7ZN%oqc5u\i)إz&õҪy'tHXs0uɈeSC~ˋ| Q] T+e_?Y\A~}Bړ'<Ưw|vп_]nm ݎy~H1 EAQΖ> D8Q1CkTwېffpzU57rԓ3G}R,s-pa,kV}5nfQ\6" cDƜ6+U._*C=сDfj1Va\U*b8 %֦1Y>0n UnbeoY^&Jax aԒ+ܻHY!,#ODD!abИQE/8/[VLcQ>nnS0D5vnNE&Q$eno28cFD$YJ4`-Xv_ Y3>"y/9ȳxӥPp%fDZ"me'HV(}D[={޶.n Rx=w{U1^n}1i2Vf?~|Ɗh9x"r}~G?|ׯ//|"H맿~߼qW}PۂIpeSBչl?V6΀\;4PBO#F."#8줋\ܩ51]O סO~ގ`bfZ|6;!+n?` KP-ѡb:KAn*Ee(IVajLhz/fC&ڲrxQXuʴJ1 %M'|xՌ~c n(56=QkKR] [SaVxaq;Htܭ\ɝV~ SZlhhL>tÔF֙ѮrIh&9` 2VF*L 45( K1/%IQwm0./TNdDDH k3UE?imfb$LlqՒҮR1;kUjSCSnښlݹwMWӝ}^3N#t׻_~ve.b ϊq_՘w)՚tMEVUD']5,w = d W3 Qr5f{jdO28ˆڬ,WO' z]nϟ~w7K TVVg=ס;2[Ԑj72dEqQY_cOu46$ưDTAe嶑t'B71ʮ XNo}.U pieG6(;? PZso?}$fz_@G@%2QCCFET9rwsb0yaW *:s7O-e6X59}jA'ʊ_PqsHˡ@u[3=#GU10#21ƀ2/yK+Ǭ]n<$8z8%V_e'3f^װ(3Q0{{Y>]w?VfrU%YN݁`QZz۶%;hsν「 4#$ t蘶>UСah qv aW޻'3Z3bЈk[58p Rw5(m2\>EhU5, R!6<^3 Q>,PóE]5JY4SjXy A8z9;2Gf%K:xY3[$e#ud$dTw)2a.,z$5GmEi vFaiOO‘aU vBojSW;;J&# Cl9Zь݄ V{t↙Gʌ0Qw=( uI]7׷|?/!$yfnJJ-![n?-)Q <" n[j(w,O!Qf4+kW4*E BH@XirhZ)Ya6QGHiVΔ*eNnL]#YJoF+R5A>2ysn&J1v;=jAbj51zڔ3g5i9l}2)&Hg>nWN9a>0/"J#4;3&mTV[t(m%89x{{35S}>=_~*cP I+y%\~z].5jԌkl؎_o2Wקg҇;߶')R3BUEE (NkX=4'utVZR[f9 s7s|!VOW"V EYܝ)R >WwN͙1!u6f!i[-I}a@֢)K8V"(Xǵ v?!P`S2iNGI|3:?<jbq nrw3`kɥXkcߤ, d@kͲci-Z(&R[6@WxTNBYzd7=ݖz I-WUQL'^$dUv-j9 &:P5L˸JN2x-[L&AW ʢdYr* mmCDHTYЊy`"Q> ̐Y4-=J*^;Gb!*90}3c׹+mߺ++mbϯYjwW3kt_SXu Mۚ r9aYE.*>”Z+8FJVuٱ"s5V?hJc)ױa.&S8u)'>zwܫłUJKoZ&7{"8Con5ؓe9TEcI#&q4A\KpnSXe2h=fUۻ7Q2S׌#>)ʦA֔jH,S'cSDr#i=2/a㘊9vL1Iɤb7ܳTdUvښ@+V V|Q+dg"nøG(`3P&PXC_6UKl+#Ө- #D! uBt_6"s"۫nz(7XJnrGFWT M(Sq\Ƕ٘3jZefe9F#UĆ1S#9)Nw?jIm8MׇGHqD8nj1IgB6,@}_o3ZɎ\6Ԁ bPfffu,SBȌH3t ǬC]OG۾?Oן_cj.?=_OO=UEmn?o~oi??ܯ׋˕Ͽ([+,.V).w<"TM/[5S3i^8L~w8qjYt&E.&@u\Fg_zӲJ.]d9 DbTiT8G, (\p*K8-b>Wwc!5: 4SU:oWL߻rL?<)0Y:Id5LF1똠Le[!5DMi\3u.w0/&90uoSحzJS8oV_!UgW-7(•VZ1DQoJԨx$JzL73v[-'E>]n1m9n)׋z ) 'x| ?9 sR9礬\"g:ݸuҀL7,ˈ"sIzTY#J4djk 6u_O}8vooytm~z5`7)iwÏo+9|H{{K~?ʔ乣?b?q^Z~U^ᮬ`K. t1RiUfdh\FR7ԘxјͬPqf U`kz@[P->N\He]s|8 4Zldes{߈VUoY0*'K~ SE,+(%?ʯ*]}]$@E̞V Sv:`.,bs'`";t#  |̲Fe>vCk i XʀLvή=*ƕkU#SS̲"5"]G/E8ϔCz0= 6w:B6G* avD,U 0yʏ8).fK_I*0=֘ԵXt²Նo]IaH*TcDY՞Y00'|NáΙX)뙙]]{5fhS5-U .D.ďlհ*IUΙ#v^ƵrtRb}!66o WgҮ!E'ں,.ƬCȊ\f¼蹴-Y0?"xx=総8<ƞ=ޤ<@%ضG#"!R]]I9e*$$&*'zl56GItY*"Mssl(%۶՚ U*J+C)hq43|T혠Ǣ )EpD$n<f&+6VKL%R3XR<$2.O;Izֹ\A LP[(SQ189i nnDΖ/V,BZ{M>*&-OnHv-(y{WY5gNR9f`0Oh9 WuQ<6KSsE5bKnt3KT/6@Q,1CamLb:]5δ#& "+񰙇%jc&2fNo RRFDi6lIaL "brcǪZEU\/csڠ\1Hdg7CitǶ^Fd|t_?t1-+0f=]|\/y}}{7grlׯo/fgV5E8 8Z XW7TZ?}6ėҬ*z.dcxobwPnFY^,g$qNSk6}@էv//X V`D|dBR.?ńd]~~XeSBcVS+7͗IeJR@WBiEzysMy{Y>䫧,V&T&"թۃϗI\3 фvhάX܏bU ]FMF i^Lr+24Xo ]8@BDʹ+f@Y 13' rLgxyK!Fbj7bb,J\CZ+vSOi`,׋Zo^T鿁fCu6\n!Kϻ޺+_B*cQt\ kԚ54BEHkB8ж1!"f`t% 5ZjܶNZ;\bS @Y[asNnōY>=mJp8qCү%;I(um،Ga4u '`GaUaA͵En.,/=JP5ɴx m(kԦQI(4OY/Q~36[~ݭܩ(ĸʃֺDL3sGiaYQsOrVbQJr`s)C邐l9Um\U0cJq 1sGEfL7c3is3`fǑcKNh:NfȈ(:eؙgwr?"676fq\Pm3ӺXf Oq6)"BZrsզ8|݆i1u^3i\.8|پ_8sB!Fxn>=}{_:_?<v\c 9O_~.HYvu׉1!|4 U4U?7;϶SMUf>6IoV{k)x"S\y~V\iװ)Y Xe|.<~ ='(Si 3wc[N\q&0PŷbamgbNƹh־6^b_]@[ 2Yj밄ﱇL>3SWU#[=9ISL@+XKj޶F]x 67ފ<2`TLXYt$u]@RY^! {I_ f0* 2 Z)yQ(jx m,1a| d2a! !!x# D*(Qz3sJVzQYFvumYKy1PgUDNOVa o j(ύkE"Yk1[пPFO`puGn۔y-E KIY%wzPMe|QJ;R$lUZfCWe]IuXVtT׫"C*^c 2eyӘkyߓ^}N\'6@ǜDZL?=o>1 6Q]QU!)>@1'N&{Հ /֜/!8Zb%,cX) x0e qFbν*Nh;1T\G$u䓵.@qUmRd""amW$EVe/,"t:Y,mT}Ղ$e :oRmVjf )S8܆cYbqcF)m~Jaf3j[1i>38iS,m%(c- m 8lHewٌ0K9k6,Ü);f8yLB48̍yTRyqls,oFB1'|y~qݎ/NHrc&LYJٓo,f%=g1Ered(vaٸNȩDT]u_`%z|1'^.?֟f32~}oGpFre߾r;8ǟ_cμeį3R]̜- 3Ҫ ~BY_^*` c&ŠDC(WZ\ v?pO=t! 6z-Z }X :rǮ(X{:$Rzd]]ypk[ :Lk$V $+/:={#EZݙ|jkgZ9U=K}Yj v]N,MM#cqLђ\%Hpa;CCɒ" eU~uZE=jlPIhk-DOl$ \ҭݯEO -Y3:7 G!3ω#{WT/{<^be#7?5M'{{C`B w}l.y2smvt漢Wz@͉`ʕ-GAb+ֺ@׼VjKL4\K4b޿'>Q?rΪ鱘cfdvT#CV`4{>9ѺI#\>.~w S3";bN)aZ;6F(76oh9Gͻ:]hfHڹhΙZ HH!$rjVkՍJ)Q .>n60c␼288FE)(ᔍN"l2kBhK!SynB&.cJRH}sh hAQɜ7mffF%lemvGS攜,L)s˒TP߶!)$X|Ig5N:Iq+/J,7^.#cWIE3G"1cR]JT'bzS2eYdnf;1596r6݆m30'*J3\M,FR,͜yO!bƯ Ča2מA̢K;s&(2rf1'gf"jzrqُ2]?O{2bhwb`Lb}e_UfO9wS`7 O.ڧ/ ٘td)s<: Y,Ȇ}7pr6g4יӟ VIx^wkT IT`ݽf.М7 ѦAMB-+m_?;ldq#:!(NRLPG%UJFנ}b/T@uWGcE-ChںqhK0tg%o56D Xw38,Fm!.n&iBlp1WzUĔ/b⏄4r4"RY7FNPۡlũ=%T#$\HWoBTփLKDSj20θ\K6)Zfqŝy8^B0=pVT8 f\ |Ŧ'+K+;uՍW~ $?jQ6j:cW=]rUzraݳ┠-EC}VU~ֹ  |0,}{/_ps8 #G^3 `ݽj>:,H`sGJS HUEڛ >- y5H,db f6$]/w(f09giQ3n~خ//.qyvP=fʐJcfdf)%Ip905%Bu2'67w4SZj~ ` ͫf2ߗ%" IDAT|1cΉnxfG˰1F"c`yDDZc?} $G?¬ PLef Tי-a FDja]3"3/ephI&g3"2}8"fOf=ܹ]#!ݎ8&kuSG'zzicF-:-0%0#rOV5c8`5gz;Do%ݱkcj@ars<6UV 5s;lc tz(Vni!tfr6`MDHaBWW&Yհ:;MX[Enb;^ɘ@֨9Y7`;c: PVTo_\ -6HdjE?ޫՀ؞Eٙ>>TE%u;J$yO@SB=Zjz֕ +ʧ lU:RbpxPXw&.WUeykx}7=l?o LIf9Fe>̠9y98eBarcΘk2vH[J$2DQEHYRJLVaP;'.?q3sF(IO{TWLiODu89#2f9%8SۀiL4nZTu UZ UGo,;L?"%SPI6 Pd1۷:Q2#JD֡E0͘u1L# D0hѡmTR$kT-YDCCUVgc\Jn6ѦE3JY؍HsC[V矔4# O: #gtT(IcОm1gF@9ţja10//ϛw7Ym#f0;/_̰'rx~z<33" wPAG_5O>So{>|Q@|W5z5qA "Bބ4aԹxpbN6=!:f(\-(OI]N> Γx%<-jU^Vh\MXW2Pd9Mծg~>6DΏu*W1 *D?}<X6˪bcL'ؾXSuEu2/m)&լ YzPW>d<S*[.Z jBy~|)D(]*U-*L4]z`]IB,c+5DB#s&f|]mOZWUI5ߵn=T3`U6.BOth^{gNe©<^ri/.)~}8|n '8LO=cu.IL6.ϴ}3 f& 5¸ RSwsV=_}g@8gvE02Y_d W"v<y|1D)܀Bo%K?g?p~9[VsaD593Hoґ11Nʢ :kZbPNUq&v8łȈ=3j$>ƥ3I:S{$~shƿҜcl{Bkq-*)t FDtq:tÝ3uD:dFfW5`@QI;`9Jw-9KnSfa*,3v {eì)0s$@v&3w)mך0}N7QJp;lno8&苓]n6EDVAn h7`8t)KӒ}bg| Q1 Sf%PbfUO2,jJ3b yzbٯ)16sfQG3w9c&P35ab ܇u\ Wq2ȃLiByD1+qsF=r>_LmS s?"PC`D۾۰af맫-SsU92j?-Ƿ)Vj?ori!Cq|GZMdqe;3D{LR1^z [5\xZ'4**{If'jJV,|kub\}RYhpq^^ߺ/\t}Rj6чBANwGf`%Mb(Uؓ;c! 7@񔪠-Z[Hnko.>Hc&+m~l!T*G?:LlX%2Vų o*'YEZZW :YhzTvԽ%+u8_%i2SD$*ogZҎ5BbnN]z"Ŷ[e ;9U__C%T1@P@%N-7. QA2p&5q0Vs@WWRWT~Jz sUoWfeYS+#*Z}ۆбn33TtKYKE`-0qPNY,`gwš#O`(gV4ʽ|vDzc2 ¸X IX{pTռ\E<(PNv?J9қEjU ߘϾ-٠}VK}إ^T;ԑj :ѺNs}W(S$@TB<2 ѴU#kFJEWWhX l@s/,6ds3|9ci+.@ICg+}ǰ1o[ mD_m9>pH3nǔ2GF gf9kյ*oOIR&sm?#G̈A%p9kg,5:1U.cRP*gn3+ Ulny>]WƏ?o}#cV3+iþ{ޜxyo 959Zin{Vo{=@/+W7b6 2KNVb1 f-]:HSOt;Zm Acw??|Uy-o:az\W];Q)W:e3|vT `Hj+y:ϡ]֓b~\QV7raC LLT`\G 9oSO=Gbod><}yyE@ vju7g3\9R"qiMJ< IC_nvy.ڨ~5Ouypcu~cQ62T.a }S_9q?F-}"RnlyM@wy}]>Rv[eVGfy"pjqw :dƉ+Jt]Ғ9sͩW 윬ͿIkc zԻS?a1ī =ô6.3]z?YAwކZe 7ss0r E d;,WHGai*Xrӄ;RZFZ2q[n= h^ Rf9Tg2SSPoOA!SfTGjOqO3%`U*yRIYHâ"O?̙ TCXqfDZP"gY^^ e0Yя(e19gĬtl ~@Yz OhK(st]a4mlxm6;Pfy}BISg!iR?4E}BtfN(7Ǔk]eU*n;ni˧NZU2cIոA<깋}?5HzSC3J gfϓ*TUEzl,>aHrwy`CiGE=_̛y|н<>jІDȲJ܏tPU0@hf۶ /r}|ןpU&8p=۶mϟ?%הn3fmXDXWbkjCHdXVݗA.mmN`ԪC\'^ ~hƚleInKl<78Exgzf w~-x+WY)`֞5SB UTR|~ œ%~l;__$x {8-mMmχaFg"i3>w Wki7l,æTxT;?J6̋NB!CUpi{(-ZcdV oDJS9 !JwbɛV6a˕ݻ IIzOiiB7=H8GU=5tk"z@lMK_GEǐ83NH]z }l.gdւHOa%6SU<|2MnV;Ř&!ڟ*iPj6e(PuoGDE$bȭ՛nieAuDh6f05&2p9 INճ]">$,Na RT}:8Bw?o?ȏ_$%ADkz`k[$"i\T[igi]y8!=# RD1x<7}тT|?ǧSM nBa!_=?w{l?pH.x>@ AL*$] k V= 2.k$9J2JPU9U <θα3d!T2wsj+S9Ы_5\̌DU12,Htٙ> 2t` kszwSߤMOOgV2qzMP=<ƒ-D3Kl]]K/~R8M9`)03ETL Ls<γUNT̰2'Q%UGT^ʓfEV8+XEΞ1f/*yQޚ"qE에ޠ* 2,S(Qx K6!=DTS`nfYJˤE<ߜdCZ-X@b. ss3Hn9ijMKyE؊ {.P݃iCvjc v$[v*ۦʠ*_® 4FDoaE[D7L1JU1,NOkd"BU P"Hcޛ "5;К haT>MBDTu1Lg*#TS@ 6aRqA2ڴiÚjs%DвQ;PLw!nB5 JBE+a=( dM.Za|O_^h`02*}XƁmBT6GlڎѻO?rۿ| J7ᦛFͯKt]CD`0woۧ6ŀ{|%RJF.$ܩq6+J/Xt|q$W%1/> ;j97%R]eJ>4z2x*eZgIR]8UYil!_wj8}Xql RzyRNְT\y$ Laߊ#t[BiCj<s?(`HYɥ .%fV:gINXʳz5O~n}r}UEMՑy#J[Rd'떖'C Q敻#m>@ #d2A,w@cNB  mQ#$/LuVfQt<\xބgYʰPIwHjc겶O~"ʃ?kN9OrFrɻtyEVɬ0d BQLF1,߷pShR_|BKE;C>//'o8(A__c}+9e;sfFY hTVa'"P3->s<ΰTa悗_G?g_O#2W0Pic C"lM"9dx̲׷ČEe!R mnݝTz=UHwhҌ s!pǾfgq@WH --S# U !Fd~" eR9Pe-u"8m7<`[k>Dx""'!$Jxp aNUɂD=G+xÕ"bnmD}R%֚J6[1PT7N&:F[R6Rc.zJb"@%-طp _&A<3} 3|0rC8mkg ^I<ۗ8޿H!ao,dWdosR܅A8||;OZJ')9s>QHE\up*qPo3`B-Ωz.cf2I*q;E%ܼńETYSIӓw~,%SWp#΂F8.cR(tZ$(!e) t5YYׂI\&,.B誢5:VX9'oPK)4ĠgoHGTR ~X̮Ċꆊ='Ln\t;r9+R g=b悎W61e;+N4zr -7LdO9W EiD@%l2r-˼k͔R4Awkf\#g]G[Tdxf.ܫOKݠ ?T []5.xgw2grz'CPD pR&!D2Ip)hC(B53}q1ϵc'/87*+Y2ڶDOE08V& u$n݇$!LóAɦPsPhJtw[]>8YgUe=U,Yd eLEys ٖ&!t2 ɐ(Di|#J>> .W ̿dgH cSiB>za),IUHfKDl<=l7^6R5҂LrD%A>FCȀe â*~o?O?o/w_޿^wq$;z7'- k'T{Df2sϓZ/Ou%sYKVPkbYUŒ(mIv9b^s1d(ԢL6(CP ,M)SyKJ72Ȑy HT(r'$fEN ephYtd[BUa٢""b1W+{߬t͞ٺrCe}&R)n۾YV(,ltq$0UiBeSm 3agZ! E[R_YqlQ3qߴ)W1EBaŶ!T]Q Dk#}Hã*6V* xiӴelǤXy@D{DlMF]ѵ5P{R&}zY%Nr}wnqm×`Hm}oÆAD|;8<_y/w0~|(ā!eAIy.cl3PK'?7vm/dp.Pa6sDc{( +HĞf[=D*JWF =g3D͙ɹkbdf]j_8 %+ EO'?wȡ95CHG`(zj'.?|=[/хPJ8 q ʣDMꌋIw9}N9Apm=ĩlRxM*i*MoP@v9?$H~ џٟ/^Z/mkdi;)i4"aÒKNpIpUaQ]$]۶ Yݑ- %ibkz7]Fֶ)8%8,Hm;" ͆@ȬcJ DuHn=n{i,-6 P!7ɦx*}V($!U7&#!Zn`!Ф̎ PdN>#DU7i @M- 搢1J#47mwi`r۷w3$dk9A8<^__1n]-|d TZ E5N6մN UdMZ 6a9ϻ9-GH%w&TUp<8Fi{kpEZT[O!I pw%qDD/}t+q|9ȦưM%y۾o">ܻvtIHD1t}4m 3۶m1w?^?_lMۯgȏ>;Y7 f޽SAxvO?ly۟nU}|lSொgh*zO}U.σ[␐K MeTȌvKdud}EyGaHe]&ɳ@ш6oJeQʜы f"r8d`'O6z l%p@ODRge 9S`,BL(1+*wLҦhvk$BMg4]k,+75UTh W5w2'V_ҧZC^y3[g?+SWtV5?N 94#LԎ)xZM45cjc5~XD"bs",N1j}MG6plCR],\0fa3TYtNs5l`@R]3S_Ra"e ~DV#S͕~ճW˸]4Q@͡*_>L F<újRc"02s x-/"`@1 "D0[w  4Ĩ2%NG_Uw̎qfT!L ;-IPDE'C5E=};, X7zDu HmDf?~Ç?7}y@hxƍd? =mwq_}y}/w×WsS}xҭ^|6f~sgvQw gxS꜎soU"⤅V`rg3S\)GY˧/ 0ELiRa,EDڕ rn,#ԗY #✝p&z{֮,L-,XJNkH3aՕM \.\iưi1'u8?Z @OP@s)%WLun.=^!zX)YO0oB*MIsG, ]Sٜ@JS}nwB؎*z\uy9îUI|=1ԽYC 'VSYDnaVN4-sKHeh \_ TY$(aotk9~E>5*qne$$Oŏ&`ө璓h CIZK`fKx$.yxmCldid$jf0j|TV&F,#;%nK!acd<u>M9Uuzc1ܔ}X֚jta1-k#c0̞/ L.f]bl% gg=D*T "k+oΗdnΝj7 HCFmwO,)Q`w aÉ#Қn$R[!^i{k-@1R>CJ#DkBi[kJ%T 3Lb88´F2܄Zom5yGSDO6o3}@D[?F1aG2YdXUM=E:ýÎRafkHpyO9-В?N҈vTytK8ڣlaSȵw7nm@v#{O}afznUsM7%HWw ywu//_8W޿{W*/}Wʶoo7r[y??oyo~(~toÏ?@dtV?d[sʄ+IsnN:14,Ta:7ى/Gnq1RʕepRMkHV8-IbnI/9oH7dJpmyg hM1Jv;x=yȇǏ޽I^<"q%հb_2PýynO5r͛!^3uW>84@mmf<cX8ச'MV"ⅇj(YzUED1eGrR\RDdY A#TDIah<9 @1u v[mSIGmە͓?Dg* ۹[< X-aj@#r&pwH{JSJQ"6ML.!h T 6M@Jj{66zSEa-Ey)',<"fn}Si18;f8FyXVRDP`7H<‡q{g&n^޷ִ =<q k"6RT Mֶ}Cf\in/M@|vJM[Sv7J(hê {@4/+ |>-3q< Gu1"3 q<_gӶ{TȳeFa9% }nmom3 ᣿nwmk/^FelM%@1?~~6}<TQX1{'x+ek[MM[ B(1<6mn>}-c攫OdjM6<I@1Lh㢉>^NbqdmXrP!! B!1c},Ik^#ᨼS^Ov^ɾ'׳ffl19-%蔧n~u$EszegFUoW;`!R'vU]nd%K>(^b B4=_ږBfϜC,&b殃s ̉'\V&9Yk},Ntn|gˊ;\}{OD]N y>bk2%.y@q r)խ3\L-J=ɷ ".#abA-x>Ƌ0g l}gsǘ ! D!"Nee/&7;籺jL>^Wm۽lyK_GӔymi^r Ƙ~Lm vՓᖔMU<ŧ9cX}hj%$ Z02ŝ}xTnia|mt{G9U;ڄ:x<n9Q_Mdz/>{ukB/_Ur@m׿Bö7?|Osa.=;A9xZ3Ǐ^!nn#?!dz_^nŧnii9hFB9W8Ȼ+Ξ?DSVX!Hiz-++grB " nS(W-W,AR%u_BOu f!~$./pH砚adWo.@pjmKx==yr'A*_ao?Ky&h҅bO;Ժ,2O @H˷YTH)U_r~L3SY[B I'ޭBy[S83Sz.O?Ag 2bO.zQ Z%TsL`sn1@ Oqƒ̙pE%&}gZAj*2[H``Hrʉ_#09b|}37ٯzA*jc$E#>Rɩ=YWLתj15`Z#W(Uz:@}JAVRտzׇdPR`F oۦ-[r6=܋.l6ajnٺcI5DH61KZvit@2Yh*[P5p$x"@t Q<"u#""P@MÎa|G۾]IvR mS%27@c}yvϯmxق<~߿fμӔT3#A\5I8JrN&*j"s;MlL+H;+53ItD29z 驫 {]/DUd]zK`ZyTpգ>:w9t-A]ok 1VxkKn/ ک9|RLB|o(L(3}pa1z9{ɘ9KO]Lvm鷨ׂ:/~ 4?}NSnĚEqͩBJ "i>TLq9q9|Fٽe9Qjk049싙~rI%Q"5[bǕx`(8B4ƭqp oXnL+xeZ#ib>FnfCi SjkBzG@DQJ$),QJRPvwUI2DZKd$ESypӏB*Bm4Sg5CZG9IcB r" FD\PUY,%͡JA?U]MT(z2k}ذ4+zϬ'6 Ii CAG4n0 cMޟ677UQn}l~ i8F'cxd+pT2+GԶ Aymk߼{9 2A6-`?Ʊ@READ&(zhi}v䘜 mf{ wzrΆGED8)9-M>{Wm#[{{u`xED"Ӟ/ϟwnd{߾ ϟ^{۔}x1_x>0 򲽼>1m>=>x{Ƕ?}OF/C_r?j%1H!RskqL,XL1!Dz99X|RYbd<ˡUƖKk)&&bnXxֱXTfTtbR}X:c"JTۼ$3'6yYq6̆ȵ㩀= }A$1fE,D4Qj̴l,*σ$;9xg`fxRqj 2uƽy]ά ί0ejBXߪ,YlTDZ[B$e$lODW TOӑ)gW=Jr =qY_Ɇtj26RwpbO'Qq{lVL;y.4rm\,x+-E mSI1U<gƉ/ “$ 8<1c.V 9qdB6YTrc7P3K b$} }8r\ܛ=i.o<0U9tԨJ08S)a] 3x#Wi tkm߶MM8,+sTP0%ő+l޻Y#̽8V\A ɺmPL/w eWvI 9=U璙nGj7'*OfBPDfH6'@D"YBqW,6ë9"A椈"<]L>pXDDkфMEzS 1CTHvBnŅ6#<ACte&0"He!dOr}NSI_w5AuCnir]iT?g6\}M/_^??~\BbrtaHb_%cTCnԆfP1-聈@\]Bq,0;-se8%* MC1ӁU}yT"4X;#fG'TXDniҧ# B:,_Hu1ZS'8ƶX4+Y\[+#Ƭ+|#K0uKXXp6PӪk\5΅ RO@Jng[|;RrT0RF,rN&re)w.˛[g{O?x))RPl\s '%’ <] !BNh}=+8*ei3P}uO8yChLe@;km>8"fMUQSxqқW ^y/V3 E;gqKV3Jéh 3;ݬVYf[EFWqeŝW+e"BCyTC2N}T58x(>ü"hA(Bv?`hd sKԚ*<T%uϨ!#KDP6c"nmF2&SȬ7\O@LC뽵JN-a`60> pO~UU[lLj0 򧔔"{ʒ~7a EU+Ph2M 62~fMA`91 DQ1ϰl ڴJbR,[K$2f@}Yqgw8ns&r6H۶ aR%-}'p "nU~;Q3fgYD:(dF5՜H"m׾miۮaCHXvo/O33sVU(ٕ. IDAT "bSJnj:96>=?7m6#(>T : 1sSe >єhZn \`XLwz֛hD8@nwv pk۲426Y]~jlLz%ri^q{ _WVlЍ P\E<Gn|C.3m:~W ' {X:@qH{,=^);<(b$2*u9^U <Ɋ$X2pf߽OK3xYkkSRw=uG~xq+ޯhs>u>渍1k~)Iepn4QU'%, !T< Nd1L-y:H}NÛҵEĘFV܍BnDx"|UUG.MT[2Duۄ6-mג#<*E2Z"5mM&"AZlH,๚/]UM\Z׶nմr cьx OT2$4'+-lMsΑ\*:.9M;|o/o}4O3[qomfS~15.=Wgpq<"IØm"$Ax nHANk4JTTVAx\Hش9n*Eґ#M}v奩ed$4=)*U[n9̩[of&*JP!*&yq@DDڥ}i4 iHLs2i&.-HYL׷[Wl2}nuQ~}u$1iYy$矶s$L/H=~x۰I/< p_<+6 " A-׹F?tE Tq(k8p*ۛh4UCkK, "#d!ٮ*Rkߟ*Ҙ:}ٌĹv􉈅_q, nJ.;?4'WS %RtX6EK_2Pn5sn;5ZɊǰ8?W hXG:[>k\ =+I\Hޓ p! =X.yg$kG/ol`şمҎ^Ӂp$HECpRUFSޗ=+`vˈ#B@D(∊"i%&K{X݁Tq,nfT^os8mK /3D5; "hoM)w8w{clJ#@ݦ9݆TJ 0e3i6cLwaͳǜO9Ҫ%F[{k Uv\ɴ&p[ZLPkf1uemMiFLl΁1fkkGPD婷,wC +j #ܟ/JOWs$}=][7]q6tƜ\40߆vΐ?T(infHXժ DVh.4Q=(z,JmqxR/"W1\jc rwq? x  ,a@*7> Z83EEkDF0v% Gu+\aTR=ۙ?35L%#i.1-?z81\ nst(Q,z+{<#lh2E=pdviWR+ω!xQarL1dS{uh2|FRU\F*^S*PZA.)(?ڐeMXk-ǿ?alɃYYĉ)ͫK7̥(W뾤G3zDbc.v8I$ 0+8SoDugYJ2GDC"1Ϣi{0,M5wAX,Gq}%C7/'f[צTpQydX ([on6AS"؄.["$!Uv4OܵoJͧۇ &~Ѯכ?}5ޅ88vpAZC;K? eAsEp9NF7Jsr`퓣N@CSVpv:L'CXH6"WM#ihk[o}W{l;4 B57!Iݙhp7Kװ&)}LI٩ D4#WIT[iMtm]:ssiw7 g`f[k"0J"Қ^Ueꡥ!8Ǎ-=H|y9޻PsEcLyꪪMTe9m0^5Έ9ƴAxD~73" xzf͹iVu} H^z4 \xL4ʦtsU6"i#Jfer*/w=tMl,U^JP{>07mvziѴEAI]{s؜n-NO'ٶMUk۶]ڥ䔆3ʥoB[[ckڴ+ ͦ׏&?~{[O||~ާm[߶mD}d%"˷~؄?}?_ZŃӧ[1Ƙf]/[SpjæM04(lF` )D:ֶ(y0d{.rNe8 cU a ?P_TGH Q2N3^a״۲DkfQ8Dwϱ*#ή48WmI~ vNu^<`6܁p*,=}74V轓4L18f=lXj%t ,+HsK9y xi;#筩f{L 2ZBU*Bt p`-pD\ %)b؄OG+s\E1#&%4;AZItyɵcgR:-=Ħ"-)RxS@3cNmjZFd pV=h2Q`ww85HklZ5EH>}__o_Ydfsҍ1-"Ô]4}}ѲJT?=sxַ}22'L<.}[f͋E:q؇bqQiZ}SiBZ!$!z=m}^׻CBU]66j9eA$s7l/gf=vOEc|f>>#WAOcfa43*o[a`Z m܄K5ƥ+"F@1Fkt~xY>n}m?0{}{kھ~tH~p:뿺tjܕ`8AZ s9XdZki&yYnYoTUVn')~Pd8 ˑ&>JvHi!3/ 0 $bZ K"D0(59*eWYERPpKL|آs9IBSe2(y>u~?O-r};٠;QG R/בx$UQb \Z*c69 Bt,MsrDjc@N?oR}|ۥNMvbֺt0+,b"Pj7O3ҵȺqw e@./_3Ph 6U KCHe`-@Zy߉\"**7rmG.X,{GݫX/x+RDy]1mG%nizcpvQ+SE0گg@RYy/[DXR 4QUFw "BLoVӘ酜g'=lƶ]0 _v94o 6Y%.0Cg䕍2n"lmJ *$hU=V[jr4hBET*jZ0 PaS1s0szxPz2U) Rp]Q."Dɋ{LDl><~AZS.fno}k$3h3}Zk[@Jj-H9`dwPH)|f+i è"'9mYo*4M̒>I4[v 3S$ńb>"oocNs ֚lE0>6Exp:0 Z]zn}4&/׷9_|}yyˀk2;~nc0c9!2Btj߆ݧ͉_{㜣^/ hP2"ID|{܆#Tv3%@#"~OhW_ߍ+T5H|OX /$s{=>iӅc)%V:Gd<7Xк4<yj7VI*NX0 ҃<c&$<ֶtIJIv#w-*`^N szV^ 'O:/Z;C翃\@x×&x=J65EɻW^?y>+ł,q0#M6tiRO|$;ɣ &2=_c ߥ7tkg*4"LVxGH/3^QEHՎ<\O)3a1Y1e\H= i$E0LHͺ-xbS[ޑG˜c#Cp/N\Ԡ/muB~5|EG?Աbx׻s^疌8W̜]Ǔ +r8oP._O*;% T >oRa67UQjy" L =;iH T_KVqe@*l΢Md1VQɦJpz*PD*^N"'SyFfiRB.Ǯr'B(iN,%FI`EUE(#‚50(Kۚ!"$ix @9Ĝ#YTn-6ܽD Tt@-& `k i#bd4Uc"{o[Zeí]4I,¦>tӧͻ8>=lz>GAP d!YOkkzK1G cƜznws,£fKPछ3۬M60Z[[>=].!ڴv{P"ЪIʟ>E=BR)(ZP̮hf2ZSR_1HnMA >5w s6j:?ÿ}/r__^˥חo׏__a "Ʋ$ \uH]5yN:ˁiӉ 4N8#?Tzq<@D4Ug6nG2ɈTTa"<,("0imMD|MʖvOSqPs?I~ωD顣XIZAlHZjlR)zDy1#&p*B{MTsj hk$-͌ "C(Aٶ7f?)su6Tgt1d5)t !#DkM{Vd\l0@Qv,@i$Ck1>(z{ڤ!fvAp#SMuPC[kz:wa?]~-LK׮t=6"k@4w wgmsn1?x57}r>}]~r}n?x QsOO~|ٜsv>omR(a|6o}>_,oNf9#cXbP?OV]^X`#߿ sQLUGeprJ <ˊ1$V SUucD>2+ kZaZe,r)dqkn&lV-ZO-:6.urdƏA\|8#.ǎX7G>kO?rc"CK-SL5̳a̪Bۊư+<^VpS'sJHN>cuzW)΍~RV,J~.t| ,>~uZj.K%5S<n0ljJ>"J9lz+\$7)oME7YTJ8YD#PUv f!屝a:@I͢c̱@`T%ԖBx#6漧x&"la3isao*J 72I"*lЖG%Uӧ{UfSnS(ޔLrSU'翊0,仇9Yz2 kEDM<2-:PvX?L.A7ٻ}=-3-caA"Ds w =0 jkM>}//߾~//xr1~e `k7Mq("p2.M.[K?,ܔBp:vLj/_MrJ߾}6ovOMc3}9wFx"J4cTiӑM$'Pblp3} zJ tL@DT{. ![pi@HmS GX(lbfl}DMN7P2.`Dea0HjR4vim`EC[O ҵݚ= i }f.U$[K c{ Ys+$"(K'#׹̋oDۨ%~vmn)kWP ZWoC($J+An3Д@LiWgeDje^3JB {ڰ3`Mhf<[ n[3(1fnRUE!VdDJ4}ݺv\z?f5:η}N^/w | D 2H""іlY?&ك2<ʘg^gQz@9`MFG"N>(Ua<ʠ+t^_~g5Ɖ*l aQ?%1eө3>łטs=B!Q*T.֦-rTl~Vu%Y5~/Z߮*3?Nc}ogHbi`2!eùbKI5HK>jWnA#(CP4 z8hdm+,>#o0@=9AԮNYI>>,YOHke4&? %LBCM( KsJTM*HUɚ#QG$|] $<\]Bd$ zɵ'U4|~NڋnV#CHyxjC\wHN^.3a{)L4Dy"^٦4Z7yheϪ1@׶((%<>,Y|)GWqG;F<9רty~֑S]q$6EIMjdRKNqU#[8ޞ3B,Gh<;@0yUgq>g(A~:Vu~zt;gT}i.GCG.e_%[$HxW #Q #ډzy+r KX %ʀ r]|13,TJZ=F!PYY`GJkMҢPXCs\濿U ߚ5QqrXjJTfپm}-nInCMjo wriT*M=,``,ϭwlL|Mza[] :/ǘ| 0tnsg ySlNwؚ."h ]znҺyiD }1C}n, ^Vkml%55*%=&v#e=pERn6 ՍpPS4,fMUŠd/6 ^Cj;hR{9콫4Qۄh@3i(A6qJkڂ~Z"%;Έs ,ptѮ*#| ) 7iޤޫ8U){Wa>hmK [U+U4|*zo~vvZ"*HiɴFZǴ$(DL>̛)a?O}ߴY׭&J|zdK*3ۺFp_~t-O~i>\-"ůP7KoDWQv6 7eۥk.ukUns7RԪLJJHc[rEd{.Ӯ8=qù.P((4]Ι?RK Gdd'-6X(d/|cў'\c%H b}wn2t!,q> 5V'hI횵Ů :OZ,F`iju cTR;eA.D,~:(YkJ/.2G }r`MCm„yR<[i;3cJY%@H BbȬKubEr,EÝR#2;|K< q+CuTʪӺw#3H9V4RzT?2RrTOG|_Qka7 Ǚ/RjnHe??ƥk< tCD85PՃUb']'U,s8$xu/>P갑Ee MꀧgH$CYi yuuBx\xq4˲%)A'< KAZdJN1tϱm\ӵo3pR# 339f{i 1ss<(jۺ#GӍ`DS{L "㖨r@scLDh=QH:܆YYݐ}n۞DDo-Ʌ˾}{DYҵjk]umB6Fi@rJ[֚J^[#0lb`#ΌYt^/W"z*B? {eI$Kh-U3;oRujAF/D`~^hdharmwSUTwj!*+NfK.]K諸&+)kR=2CJo{oawIїv\zW>, ).27"6 ܞBQ3'1Ƹݞ6{tm]0l%ٗ7견=7o<\:eQ6eilӧ6Wo?\xmԓAG7//O՞]!Z,4 葬fMB?Q8P1**%7M6w}rba4f)MɍBO= RkxI Dd'Ke~0vzSi8ec^;N;;a'IXGD(6O.p;k=jV5 }x2 1t $˽$|NwaQU6`4J'Cu!=X){=ܫsgI'2OL+n$]66NL<]1;| ¿y)L8)N:S:_#tZ @&mʉZA+;(9n3rRy1L*8% #+գ0{ r's9Q c:@dQeFrhzGȁHGe0rPq_#V汆t6]l)TM+"aCZ#E! *u]rR%b$SniM(]9JQ4nPJ]P 4J ([dD,~D6K/Lyom2ư/5Kb 8ʞ\66@3E"g~I7@jz0c4gUjbk딖Jsm-2!Bs(5"#谹E*zUAg<_W-9Ӓk8̄г IDATj3 ӱɐӯdZrN=]]Ԋꘫ_2xn9Qk3 h"}l$<+bSkS>ꈘ ԟʗu0WGBq0KYe^D` `1ƈ`:qV1DA{C&srx!$UQ۰ MI si"0KFD@ -;(TvYpòd)"6AE30yJGzPhR{P"e.Xd8-Lr7Fsʢ2.ژv]҃ Ȕ[SHWGD@-E""\C 7 6,D2Z!1lf;%@Үh!W.n" HnRaҐ.!G(egAW!fVe9ɅJP T LɱӁ39(3"-c 7BUU;aq2ffMzu9A E$M'mk˥C 7p]T60 쳩"iIT}+H oڇ.\lt?U/7ŐUwCSYaA%ݎbf٧u8" e[E<_@3R,ϟCoC[l-!OX_].0z).ۇ|g7drc(;u}+ l"ĎT׻fOx37c U|z^+>>f} G-\/~PO?nyۺ=<<}:0n۶<\W9_g(c^b߳i(=HyzN]2L =V%~ =zDfN#aǵ$/V9#uDݏǽ03N>< Oҳ Jy6f W):T -#4=8_Ϛ}e'f:_^ի9j]ٯ (25p)&*㳓'cO(vB~+/xJbl=e2\DOϫ>|lPQ m16mmݩn&M="lK꺮u!Ey4 ?}|S]TXz%??}~Z$._M0G_k4¼JI%SkzcEa2y~ўiWk$S7qb#sdJ w#K$0i&0}d "_&la9ZXr]?oAAOmߎ]{=0H@쥯)r"K(s wܹ'Kl[(˙/ J e~1CFTPuNٜ"a6 n]elVkv9&FS8{ DVd0+zfEtƩtFmfFv%h2Q9qR'|5-Ej(qY$^ykξc-̈"l<9Hb^#WpSi#`.;+L!Tvwɛ34Pi@#\ uW Pk/ 2:φ{"y1oJ>lOAMkٓS# ,HUp'9 fM( b RKjuWaOSP[s'0*^^2Ny$_ԃЯ?|3>sG:yɝJ5͸@'K1ݶag}Z Oχڨ^i La(I%W{ƈA bczDlM $12V*iA )ҳlbY:#.FlHEل廗4)4Xop !R)6܇{uMuXGx5eN-| 1f`S>, <ܻJF THΉ edovQAv?= jkq{ژ zd$}K5=܇fȂ|j,˥ hk R[_zgxWmMiv!%(!5e2ڛ~\u.ˆl.>elzHS8e[{بfn0/R.]0 RE#Y,0p0j^2"0,\ _.|y=~_>~Y7O?+l6mK])aK&兦><,׾t[e\4/YleYrF7"Q4D*AҶu7/~m{|ރ$߿oyf-wgp:$Ԑ"0yT)dGrq~;r,O3*8gY‹2?|A^[ʘ(+vJFLM]&LOFJPZHw"RW$y!ifQl"GI|Y]$ȍqTu"FqűUޠ<.bZXgS=i/ sE TZkSa~L9ǎ,?IUH@§"%ʰvv1!^|W`j.9yt[*ޘ)@8^I +YWI-}*Nۉ%ռ꥛h8XLy0]Av>^YuƜ?] XQwL8v\><:O3tXȒ҈O8]A̢G$ @6{$OŘ*j-k2ijf5HƂ(>x_R%3*hk)Qю]!V?k,E%Ov.yn_{“ 7zd+DgLRuAj{(EQ 3WvH_j.r@TZkn#'D(D&ly E1/q"7FI֥%= @jK~^ f[Ҵ20 07wÂe[[kz:*(\$D9̂wKL:LWE#4BQQhn^ u/um0 iMZx:C܆z>t!^]D' w6H#)!Ͳ1cX6)==?mGUZDm 0wBIS_H!-iGc`슯}'sx*OkcTKO- QJ3bN R'_(y$(&]lS9+?1ZU%jݹő^['޼GҢ!9%R33( T07b4Y&|NFg-?sVCJ/Ļv*>T2uER!^M8礫RN &jYyRn:,E!f蜱xj<*v ysN ʌ:cꚨ5I!Q% Y3y* eVyOfh^犛\FiZ=Z)M,*QTIcE9pǃﯓO9__s(`>៿u8o뾅>6ws@EE{P JkKk-MҷF}si`r{=l *=kO${ F yU/iD-lf a@P@I#GV @c,08c FB]e"`dgٷ۪$S5C)G8M,*DrM9lJ$׵EP)bHꀬxonB "bPFPDز;Llfp\EgE&xYg124m}¹n73wzXǶ B2Vws~ >%2P¤FBhmc=<`'?|׋)޷lo_?yMz޷&\.oFs?| w),-?Hdi11$*.Ts,EpABxP@]|2tDuܜ) :Gg>~Gi i@2;J=rvOܢfjbit*B5 A!LhqqTI93kO _Fͫ)Gݏb1Zu$T^T `7җRzȁR0󆗢R3 /7 n'7t"$?"c uŨ=#zp2<{9@%u>H:wqV *I1v^LmJ3>C|flWт\bsm.#c @ݍ 8=;3RU O M I&dlacȜlfB62GZK̆VQ "ea.*mh@pf#<D] -òu#ɬYFH<=ó<x EG0ࡪB1<\ ERmU`#06VBIFRBF֔Â-}lHZw{5ͽ @$FF<%}!\z\HmeOILmXPfqbÓPnaiB M+%DM-b5S0ޕM(#AI6UaT}Y"4H!*T%q/].][=.W"-=t"2%<~T] "bޓ/ c 5t њt}תNr.oX2r"CcYoo,e7^]ck"qn69A)~tl#woDp}\-52{vlwQ2q^Ͽ{zno~%1?QZn"_(~k_'!'D9khQ ׏ &wGj5۔CT;?)Emq,6pt`G'Gz*U07cVsd惙> 3S_1'Q'^HC'$ז?NeasWD8ؿPOCf46A m NjE2l6!I2YOSqǻ1=}VXwJf1a~pgȺ{#/2;yPJNx1#_k!ct=,<+oN_:٨+('BA$G#eF G0Z<hD(T!/KWѴ*_T%+$¾7afU(Kk9ݫhy7 &ligj$m`ZV["2]#K4ն#OCDal#=FVI@6fiyx֛T{vD%Kqpw+*IMv8xpwozzZ-*pi>nu|Z_H.Ge۶-mphm:$^"8!~K~ /5'ҫNU TAhI'IdR~8ϟH{W@ Әkuvx9{1'S}Y{`:q}jl3JV*zd9(K"ڤd|M^CJbϞ˥YGaB߹)Ԍej8kZ9U7(:sɚSJQv,uNJv gT\ʫ+Lmߚvd)s;N '/qQvJ+GeͷՄyDdAx9RGq4F@835?=kZU(ִ5Hd%^ڲ,[[w&t "a>w^&@7/i_zo0(h)qQJj Pwoni1"ڌ#!T`lsHЀHל'Hf DRTp̋ miZf-Zz .NMET"l wF2&deY^PD0,Ji"R@T"E,i&()Q; #2Lmsճ$8<&h;r EӍfm1GkڔJߧkfc2qY.qEP= @&"}YJ4/vo @k @ۨ)5&"\R[W]|?}᧏߼ya].ϟbW^(!Hmb7ҤeQߚ247[z\csZ+,aEpY̓ffu7aϿ[X}nO?osSRTAlޕ0)DOMED~q$Z -GEqr*8n#^p'E3߫~SH5#>u'{B<5Gŝ:?vtxw˿/ÿyFlanQeo ÃE %크t?.j K#.eB ].isS4$fڤeۆF}]C}?_޾˿&|lnq㧏)w@/z[o^-1 .mڛ6&l3}sW^3Ǧ`߆0ү.؞sSm}eY>=߶a<,?n[[0/5d`aϷ…YZƗ|d~SE9%~&Ϝ'oGLD,H9$y/. 81 Z}9 :TKHgw#?#Jz3ѳ^K׎irʝd}bVFDaN<wj*{;]ۿ׎9PӍAq-+ Efw{a1dfcr7ZnΛha>~1cB03X%ɀ=>gτǼ هr^t*Q)eqty#oj+G2&fr (%Nou /O4vy1%8c^I5[T*n,s ջMr*]Si#ȫy)|5#Eľ:V@5H7\ȧƃptAqD/cPFR")ԈZk_{;Pzݘx>pL㘓8>'k/~Q*w~:Qqޞ|1af$轁PW={j0g#|U@RZS2;h}clc[k0<vfF0">50܆HHSmꑑ %GEN%!LFRfג܍I LEUZM{2}+"w7^?p pz]AC.Q '&f2u>+^tH1c@FgzxPpHHпF3, #j7-Mwd ,")K/Vt>Vy^N;9̩1/" Nh{^dMLA'#Gڔ7amB Dp%(*"Қ쭵eɼU :`662nc V6j'Rkwjשf#6"wB","jkE4/w\4#bU`:`pSbdݡYҀcPE% 7.F.*Y1RCQ@UҗryZ&Annn*ZkMZiv]c,̔Avo".rBˌ K&;BBXaB۶mc rTu pw0kR%p ڸ">T=myjNst샩3swlD81ܷmæ`DkMbc<39Pg"6mKi$bf.?߶]Dav\巏 Dmoś_} xxSo#mHo|߆ x}?~l{pQFy\˒sQa O..,UsamaO^{>o}|㢏>O'?_)l (@#|Mr'xڔuzB?Sb1248͠ "2Wi>A>TKr,y_%G#$y,{6# i#*'DQ*\^eONC5рNij0?ITW͠BM5UdK"<,03D"u2t ˖̖4YjCC z0 L‘#ZT BI+}L^=V3RB닶py>t0|x0ۺ_G4k̇{4a acu:vNEH,N𱍱6mn pv|n[K1H' o:~|Azc>^^T25ޓT}Af^B fQ Sa@g^JR<URxy/E5G-5J!-$50/AVp>BF0j(Ry]%1 9|HB*Z}H [΂ጰi!O}q]\PJ7m>hj2p#O 0Dh" ɮN!}3Z[a6BVD,KcEDK9C3z1q~8}=-__~[xx]oܶO/~oWR"px~oz{~/)"Tuݨj6)bRn/O!FHlzZh7IUEp}lۇWC,E]k/&J2+kD{t0.3~S`"3MJḅF1us͉d.`>5$N/<{Xڞ{ӷ`ܑhbvup*3:+yn$>鼬*D)_#$U+k^;<ӹ/*RC9P7a4@'EDy'w * uG3s<>]yk䵤| ~c+LzI v>gHC0`eP>0~㨢${[RzcרIT'\k9b.TݩVI4V{u'*ڔ{f'IǷ/e&ݳXxG! zx3BPU‚}dW6Lk/e/P !~OHT쉃 8йE9Ns&0H縱ٓy[ip+Kp&ycKVv 4N˭o }2I8lefE -Z-ض%naҌ(#@q:p'c\RG5z'!,|OuY쉇8|O-[I4m!&p,-Q\3͚z3 H@qi/ۺe]G4hS"YV૊D9 mOy8F0l[*}[k4%AHk lޛa4ah63Yd* IDATꔬv(1ڛҖ=ml:<m@H3Ƭ Eiξ1jkBgj1@l]PwR 6ֈ|nann/?|6~~/_m}^3y]O=?}t ȗ׋ۛ6J#pT NSCw}#-E$Uu5{|8e]}Ͼn/>|^~ohsWo@n^H3r@ܕdQB-x:s۵ %4y(+ @n~b].,\M My1^Nj2W>Fg}wI\R^^djBzXs;/ԔW:_ F)re~2iaY~r<4I>nA:x\z ^yKgdp:֜) FmZ<7h+o^E1H | =>': \'y6=xK޿VnQ;d?/:bbY_;g0uQ HҮN厷ac1Ӯ2s#DysVsM'kMx%s$& {霱^@3r(UA̮%p{q=~XUPŬUR֙?#GJt<;ߦG?i7Kded$n} nuؑ#s i :(+oUqa>[1XIW PPbq͐L[E7U0X av0AO[.̌ʗ QZ-AF"V1F$RD ܏EzU5P-<T[xgɬ$Qi]yXm]&`1, H Mmn"\DlTش5CE18TR! .)(#b:if۰@Eg0B.[&U8wۂC% l"B‡P# sa sYLU~xzL;jAò-$BZT{OO*!G߶/mmg_nן?5:^^^ͮ7mۺ6?|Y-,oכP^c$t`Ѵ &mFA_?|xRҞ/ SIiyI 6UO篗e]-?o__o[;Nj_\_~ߞO4T#+;㾘q\9ڢ+fVޱ;wlP5=+{ pJwv٥[;۹BM'fB 'F$0[G%Tco0#pppŜ(8aFw;~?nN1D;zT[n1drW;$vPl X C{;u  $^"1LfKo~ȝNgРN3E,>C <ô(g;Ȟw+$|MVT*X$'Nfӹe gJ'ۿ=l̢d8P.b5cE>O Q')2 gvQE2%9cg<+Sy|{}O[4ʛ_ [s:qA+4s)U.c} ΰo|ךgh P Gu{;/B I/MeLCTI6u~)pj6@ԗuX CK?? ]x*VrC5wu& tƎp,E WUz ȅ.Dkd[\rbK$N5q"69-m .Evn>˭KXz nIF. E=l>!/HE,Ȋ YzMt|Ff$)~Q BgF$(!T* i+@^ J)#[Ӈ#q<-O%=fan"- 6E2( n;4-DUZSqBXտf鬛)ZK{"(K}X=ץ}xyybii^naњ7F_F뉺G6Z"Hzs,8WL[YY_GN_" Ԋ YVYoqL:޻E`v_:4kpDf1t9¦Lh#kjs|f|;?7H,̒uڣ{7s)s"yv\v,#H}.\C߯(Tf IJyfiF>V3KML(i~VS]Go'A`yy7O0qWgpLmqpLΑ-vEvyT2`>^;O_ތR(`'5;ޫ5EJdmvRܵ'>d釂heRc_sr75!Jݤ DȐ$"3]DxLd ҉Q3{?6u!!1ft@Yvӌu>ߞ3][> )n*%`ɴ9HTm1PE=s!3x; KX:iTч;zt38R%Lbd)m@VŅjTHUH@DI'̉5K33xWMa6y.BUսmqdRrVq\$}T4[]ۺM}w!h}1a& Up8XX *ҥ/nXc۲\W/ 4!l̢öꙙ)MMEE 0K#h"nױIi46`V{{HSeQmmL"mÂtYF~cD0G=a40ղ{ɕ-Yt]ޮI~p닒 inj&/*_<}˛ˏK>p^=3y$-ZTVz@aOO6<2bj'cU%G S+0g2=$ޭzw.䠾'.8̔ka|q;8tN1Թz${}_cGo>Y'u~o!Z:&&d=-d&w 81#%,#xR~g[j:6#9WCvG

>%Eܗ_;(dC=rc^MFw8JTU'Ħ9d%L5\rnܷ^ʱmp&SK} h\<{Bd"3wş!ˢg|WYH)ud G%50͗'3*|@$mg@}bB9Z,7UGUi &WL®El0yʊ^0=oO$.O2SZ>ag9Qs}sRPF!SP/BU:(;”h"o6y H=gڜw_*((*u]PݽP ĹaOTb VQ:%-dOvQbdH5Q]fr08~sݸ_x\kq,er &q<0e9֊:)Z=3acH՚ |na^uDP9qDSC %۹pzu1n41RU#B Ah !i]PBJ읫d@2oΕS u\iڸ b <$l1DKWM{fBam#?͆HLB [)Vea1-5%(mYmdJHCzWU67YסD?SW.a*-[,D$Ũ,#nv4zxH@5Yn$vY2-!oxPePtd%dѹnTA7fcDyk:4Q9(J {<⩠.բB0 t6̑./!ikn*M|XS:LtEOY p/q?o!o_.7o],ֺ:iĩu`dBҕf+;כ҇*FW.m.BGj;3E4q>͇/->ǧǭ>ů~mۗ+u|?DsB 3DҭDw> M(6#r u=󾑳8n=-ZIgMOS ALF`@3v&gDJz]mJr  2=:#澛KfR(!oI#~6dVVN\1?eYԨtRS089>sIcׅRGVeMГ._N_F Z0VTƞEyV;wB@Ϙ>0hU<=|O">hwFA,>|䜤'Zh=7ȿ}íNkf? dW8Vy eִ&fIlFr\>bb*/i;KP(>bH8W?3XrxFPp$!Pp(&/n-ȽY^"TR#wjCFZuɩYR{erzRgrHqH3P*SXoDdo橻Y:&["0@skdb i"-M}mؚOZض.eۆgXP#ɐbl1֭Tjk!="\EE.-jS%##[l>'!EySo*`6IUGzg<7Ʀ ۰ie2fN (rP0ḭvCU{k$E:$i]J"eY)E!?Ce2 hZuQPb݆]~ٶp `X*KUE06Jk J6Ga.ծ˲#hffB!ĉ؆k[v]o#r-=MX27~͆w4,ijJ4E3vݮ븍URF6ޚuQ8um*7%Z˖Ab/Ky`@_ͮfnK{D zvdZ*^fp![0ǏOuyYiM4i=Y-~oSdTetaQUUÝzTp`]mcX=l ul7aJ~˲<\n_]~du1Gjl,&9V`m„Y>y (ŀ yaw />c0)6Xw2qۢlWT$\?ƃɓ춰Ӳoa*@pnr !HnLIb`ijaO1v:x]>2ýr kPܹ{AJ޽'>BꎴQ(}KHq@5ɓD͜'M@?3B0hf+mh>)IPM ],5v1r^.@ٞ, ߿"agr:O?`Ι6L 7cS3V<+!dbّ =h뺧DϸgOas]7F5I?͗?%6$ Ar2HU+g*;D.Ih-@B )c!Z$?C/I F'kN]X0ц"aFm{Q*eƧGkZH^aR5:r4klXʄɦΈUنٺm1 4W1˰zjrWվnÊʉZVBL 0-|D.%6SrZJsAwUU)Pv@&y+¯ִ0 D=ly' >HBulFu an,ոJ8h"[]F֣Ҵ5VIRmSIQF^)koU,wKh5+%IhVwG@tw rKc4X#@[t>-catκT4G47骰|~Ym ϭ]u58IF[ 2B/M*D;//_{zŖd:hr1,{DkM¡UcDI DS齇z130GoC Dᛦ]^CCuOOu{p뇧6xnه?<^okPz?31n7^痗Ex~{b1+5(]>=/khCX e0PZkؚMN/oWmml[}Yr IDAT<o^>MԂWgm 3<ξ= G}S?)m@e7enq,%O."B`r "{g'R-:?Ͻv*XQgodQ"Q+ECğϿ3hEQ,߭k_,3:3<ch9IY&#fBZ Ϩ 3I]+`3V o+>,Sj=|b]wSx]] = u 89h(hf>]q_IZ;GHV4|q稿)069dJҭjM=6wY@)[?0+ > 8 C/Mك,HEi:dJ$`@z?OCj0FdtվkZ͉"#orX3" af+ܞ޿ŁYY |OGrږ8j. ij9 +=dӡ{½ָlss"}`խ;ʹƌ#*D@DS%4iӯEmo˙p#  |:qTܝ0hC i* 5M(Ap .fxC&$u<7N(*BwYQF#blZ t1 2l \xyk@"b &w۬6FpEHD E|m0B40B"Z&ͷ*!6Yس\/1m8, ' w-6@ I*aX#D XzJ$2_a#;WOO bff6- aBm$.wS4o7'OCTRVclgPkz5voY@Q xw|聢>&ɥc2t7P.gD&)=+̮QURBr|+JEc5QE}w',N㐻Lw#œ6&Du/#* tw/gTܦzwWr/zBZǒ3AO )S}я[1O(_ ٦" ޫ Q$f>]W:?J;ğ9o(M$b"<{O:eȞ"0>em)b?Dw Yjw>;vYg|rJ:#TKPWd|vv^ Ѩf\(g@ߡv.w"Lʟռ$~c߬Ue1#9J{'> $К}u"&H31CAyR&J:>[_,R*lTKDҔ&jbD`npFFSz pɮ++u #{oWM;TvMSD,:(Ufj(UO, !'"BcJ1s0 BMDac`H(BUHP(6VkB8IC]6<@o rrRl~x< #{O{.Sһƀx/O]n1FÇRXb>LN}+䶭i燸2j/~T@",<|0h?iM 5.M-]E{RF2" JvBf$B .KҺn& "bQ*\6-}H"Eԥzo"۶SHڵQE˲XHB$Jg{'Ӓ{yѰ,&~r]Ws붮v6~_\?ӗn}~rmݶqƢzy};u~|Oqy![SiڴBݶKMx^><1m0pm\ "kS~x<)Bsږ֚חO~/Dv VXgFh*0sqϴ"tvڞpdG@?(޹Àx7l0)3mlgn62śqY#%u9LmB|說c\n:lK' pK֨tʀ[cvmcXoHeiz0T}&ڴgIfvT%NExŰdLNԞt(i00Sp33FJafcdtU">ϧE*E ZiYaz0UU(j 4mK5FPDb.>gjw9utJD4m ԭa|8vz >(#S"-"BF …\r]LJ&燮f׷!msו>nO{zHw|R k"ikzB))WS߅V!#a/>I]ȣn S]õTQd KNop|U٣1@1A#/ tSuAQg&-!bPoL5Q{".%+UJm?c#Id#jUշnl/,grHf/KbdeFAT-zNx[EF9r}<lj$l:;D(;"O As݌ywȠrVA1wܼO!aఏ$xrgsn$Abd4|%8f_$p5ےvRN8,H : 玤sFt6[`pӞ`8؁qO`98,~;F|Mpӽ"c) 1L92)P2B(I!"X<"vFS@tҭ\f$0z6 -&1wg }:U=92`XdنxIo=O>]y}9[iʞC 9G]3! D-xzDDaD&֒NZn&:7F{L<U<+l#hf@Dz"tUВ6B["CM8GDfnf!@#Z j=<M/ ezkhQ2z BgE4(%`V֪AKՈpK4" QJQLPr3w`]jQjTKND-*rZ WRK)e-eݚR,Et>R"[ lOQ X7OTJ.*[ͽY4- b+w3kϾ PjeYQ˲RKV<̐mEAGZ%fMᆴ"Ň'7 a`|痗qi^ NkMȺ./޺ݮ//Qf wO^<;֪q`'_|釴|zX[_.Y\ ԩ지znXJzUѷִTRnvݪrZ>XX?j'$>#[-o+1XrSN hd37NǴFXk8QҠt;U)Sb8%ʄEFϳ}q(!toSؚ!K bxnC`\,ƅ.Np$."y|I{@U~+ c)8m?3)!g_D32Ý1v6qIp!f1#V $=D1T.͹2%?/}|b<'2~=049"76A_;dGFzƿ`"YB$K[uPDp&sL_0G+!8O^[tknmF"ΈxlúvZo鼾{<jN|W+K "Ndm1ץtOOϯw߶_~xRK)^x$O7`QBRNKt"̘{ 8;H'(0` Hi ƽKCenE~"uգΉ{ Ώ|#+C&JalIaMz*op8ޣQs& g a6R=*S7v$`EGndw:O2F <y[[woPUð}לoiL^?IT3xk/2׾xhslgXf̨܁1a.>;ϑ-OSAfbǙOo9d%w_‰ ӵKm Ν=yxx &8)q6 {.%F4ɹO0;;ʝM?f1,Dlfb"тӗVHAuRͬˠ8\2(DŽ>vYJi]0yAɖn$޺P0[P-Z mWkLMRl[#TBRDPBbĩVa\׭݂ZIIdl{!EzI,[CU- 9j<,WRaJzju5Jnfupuk=ӟdk݉ "{YVuks0 fj.B pUDJ- IբbY@$apwW0\ץ:]܋#<*Z*#xfAi'rvs[`UX?^>r>ϧjf׸/7zz].}o?l]^k#zf?p*ONڍY-j_KǭuuOK?~zZ͟X|UR5" )"{OO?m|nas]xmɾ=ʂD³a1{IJx>@/&hO5*"US+B"e}Ns8g`R.2wX`lc_ӻqrc2%H0/;"[o#Sw Nl'}u{)kD3eוu~2 `?/uI_O|tκOO1;Ÿ}U3D`.ܝHj14?CAO=z;>jΖ}>Zɤ'1'idrSU5r$݌C Fb"H:Y0PȺ7=/Gzn13lbxl2 ӖԈ8mϬ9DpԪb敚%< \1j1w~yhXg8&'kՍP`.{݂ uXxr^J@54}ԛ昏`=q;A-#Z ZN[w$tI!"tJQQhqE[ (% ޳aZ@D]k xw9a=R*=?qdXC <nv@odpn *Æ Kqޭ.R"*V-ևդz܃RU`^ju 5E53Tum[ ()┥ʩְEY[πq (::€*m݅$\D bkF벆m"b$a8YJM;Ё é"jK)E $R, 5EV޶vzX-Uka7Ϟ|$ElbF;, <,*amEjY<,BJUmcL_pDFHe! y P9Vv5Bվm(dȎi!fjD=x^kw\/OK=N*mۚfBy)ܿQEKmX­kst*g-PXi~][_|ϗ[ _ۿo0uQ" ,eUխw n[Oϟ_P_*~}>Z9_hx "$6qvvm7aiaL|qlAmd=I<6&9쌐tM`C]רb'9,b2ߜhiL@:-cGG\ʑےF^+ ٣/r娐Η1}i:@N9t)zQ/CQA>ԮwA(G-ÿg{^_Sߦeu9[<&P/xZ, ՙתv'Ȱ`>6Y2)dUaOޯqx߱jVsnqheDlfj{Xa/T"w߫yPw{&C#'ƳMB:gs a?_1^R@|#@vF#賚{L#u,7!;\O{#?(:}& OfZ' e IR :wAYEn@]57)uD]T\EF=ýQ!i,%4QXlkiUuYm,%p,ps#Ns)!qnn!E26xw h*%L5*0RϞG2 B3ˮNF*Ou딡@ ;2éU(=kR7[Ue]Ӻ"Բ"ֻn`-%euўnlk)"x۶J,Up" KQZnIVH0m<(kGH^nj({)UYj"e3" S}<-nm)=]3BA|UhKB"€#s6nۭ"`*H7oD.PUefݻyĈ҆-󀃧 U [ TJ)JnQ- RNZ7"BffX *Z.b[G6 k=zؚo:,wOO?/~z~Ztß_yٶKz-" \[~ͻxzzFv^Zu/>_ϟ>Pw=M'*9y}t 'ߪ$w^u I R CI-> CL{argonuZccDb٭h{0ị`֛NUw '>ÜS{ǐ|'3G8ڝMgOqwI +r*_mJGf.=3xoLJ R8yW0TAߎ ?\ S g/y*weŘۙ1fnfzWם0L򨡥,<;#}KQq(azjSLQ(D))qg<.yCwoQq{+$<8fxHsLr򯗷nᎈ  .Z=b*ʠ$ hբa-J]*B{UGؚ5[/Yk -=!DUK$D.}nކTH%Rwek9xX[uU JXDfi-*ͭEjAw'O]!%HHZޚ {6 nK<;EA EԒ0j 77wGkm{nVEDCPKfܵZ\'@֣{nmۮ7~n=B[?d]7k[k#%H4JḂ ;Jv%H\@[+RʢfHX7ҳ4 W RTe]Um}۶m֚`~=H))K]ZRRD!Rպ., ֽ;N˲ۖR$n}hE)PJhTJ)뺬t*rZ4ov>///mo><ů\[-k!E|r~iVJղ⛯S}]OA͢Y8 u2Thxko[:j9}|~ZĶnB>x vkCm\?k͓q pqXاqǨw;J"H'$!&v U w'. /p(pzf7 ԱcdXRv̅ad `[?&w<=}oGpRVdw(_ {8<L;~g&GxaޥK,w&'DU纝R=}gJ~㩟gA`û'>!f-Nf8g. $ H_x1Q}ggRKU^ы/{BGtQJ1oFa&v6wj3Ռ!"͏c- c!OM8e{4pYɛ;T>Y9 sb0#JK =ݩ5R-^ب,e, ͺ3CR"y7!NUG=RZT#uZ U_U{.f$ӟUd@% l6C(`Y2ܭ[fLK&$> a𠌆!{)eJ#It@HèaHּ7.h(Upon˲`f5 l#"l$YdtI%aZQu^DUX DFD,ER{2KֈaB*=UinUiLp3nH[kMRr)2ֲ@!DU]EQu 47n[3֭Rʲgj5[HmJ-ռZ 5ŒTy8pܬBDPÛYD-]Ka)koѷy+Oku/mZ|>qLo~^|z~vkVw-u*.|ӋD7_G@޿~OR[i; R~|~mzTIß~LQTV/Us|>~raZ u]_.v^Vq[l[wb?}?<~[<~ F%wS@L'٨j.SW0``q31?<<2>`yM-)!3VƏK ٬IToi͕;Pf0$Az3}gcޣӃ pOz{Uw%TEd#ɔ"=\&S9r&~Ц=kML&s&|m K}.7&{9%q^Ycf`@b#ޙ9nqh'mD{쿄8c^&ÐKWYsр5o'nMv;*cv 6T(( vlKy*a 7ü1MO7m|1ԙ5rǯ1HX݉CL"F>I=a28}] P˨>&ڎ{Ȉ(1:\2gy}f& lxƜ}_q_~^_Hg|M+5UN5kd")$ y)U{˨nJ2HzF!!Jf0t7ݢw3=TU V(u), Y)ȻafS;Td,fL,[$1j[7RpIJ&F4?F.RItk.^oZ3R#mZ*)'{kV齅 IE 5J娛VQkA[0@nٵY_n`QI$mnAЇ4a.Q2#4Di@0ݻh T{rTodPt'"!\%!d-RQTjͦВ qx:?`ûuyZ*E2AtzVub]= Kt~hA{fY ZWo޿\SG2"=n͢.Jӷ[iQ]_/uY.Xp^o/߿rZ_/OO*l|:\ֻK//߽-#,%|B֋jQIǥHjy~yhNTU9#CwCkY5ͻrEskaO vw?}WOlO.s>,rqz]K:SB 8s$JӨPyЈ*7&y;;XK樕 -~FݝF0H0O~sr)б TxzQ}ޟ;g?ƅ`|Do NrbɁMk_rtم?,K>f}|uQpC̟{:' 0LYKddcqn~ Td1"d9s3cJ6I8E>_/QCG3&#lo>{'W:u{$F ~VUgve??][jD]qM}P':yW]os#3\y&#;el0'YS{zf:{x{9$Kɭ_JźZ$n5sRU-ԥ4d޼g5K$F6i"PNp?p"DfA:3G'Dd4Ӡ#譻p$Je,˪Zqy=HU5[[*d[B֪{kֲ#IPYyo[[{lm3CvUdM*ZD@eT*KUf"e倶n[w*ite)ˢZBjnB _ZTSsn[ Kj)%q7u9$B g2JbT?_^]̚6CDVBaͼo.|Rvw _"n=<̱:*gxRV<^o|W^oBi*@hYkJo7_{~y}y===uu}hǧssx(,ϯ?~~6~˯OEP$ZKYe)z,xZ=N7ϯ>~~ZEXD3{`@ns IDATB\'gû$y3-Hz %wd8iQ3`c8$Ld{2em8lcRcҍu?M;F]s{h~~Hn33DR S=4ٙZdRP2˹a]ͪMkRt͸Ֆ1O?9# # H9dղk|o1F?*>ޜ\Lt ͜z}aϛpDcSdw|eT@R}^NنZ,QfkCOcp\A}9>r0xPO>vrH8B(/p<T'ٮ{9Dy0Ұes&`f{g?1pz#꼛pІ_ܺ}Dz6# ɶe!pB :ف! wW;n/P PwUU>7Kԛ.k0WR:s\hf3QaGXRj)@!CM&@a)*׾!A8ò <#0#k^(ٮ3.J/hYYPa[> Hhe-(o&!'F@naoNLN˺ufjBH]:#jYZe(mX<cΜ"%;]ӻL$k]k$l6-RTܽ7 PYQ,dBpWd<叀tD)(i2 =Ds1zx hlUxoftx |KIof6 [ݻPTTUEdm{w) 3"dDZһZ顦)Eʸ Ea)/.İZWU H7|zyui]=և'=/nOk|x:_73w WOU*[ZW~O=<}T}\kѥ~o~1RrUڭ;"Ox{T{R[eY?~W[բZ{֯rzX020:0i|'sC9vzᗄu'&2Mf/;]sN&GED...8qy ǎx"DM ܅p\P5a,1cVv lmEbt/n3wNhJtc5]m1W+1v`އha ;O+p5O 76gNx3]sjff߸1lG&q"`-|5vuEq]̑JT=73no ЄUv-5_󡎁Sb٣q:6p&d xPy< 㸖CZC9d:@+cd.)(nc=1mI˹Gv|2&Q}\fn8=x E@֫ۙ*V&,2e.}0?1kk-KB/s;3o"Ta!U#+UTw{z7wXT$Xf-xx߶pˆ`n[6Cows` E.'Ltwj-UasYxapsC/wkf-20Q"d"8@df4鈴(n,[l;&-ƚ,p #lPGЪHXkDhP.=?tz\_?==95wVyx"cw3Z{r}iz^?T-$.]$Fi +$Ef/Rz(ޔq*To_oQ^_N멖CE?>\_:/}çzQ-귌S 6\i5 aݢ2 ǜ3c6>a~w0t掇bT'fMsCM^c;oX~+~"7J&wwͱd5c&1}%88sڑ42͉dDlj7x:ϓ{5f:;7N`1 '2Jm"ih㽟?CҸsC`{332$&BO4;xg 20; ˱ g!E /g!O|\7MO3:yt^D."#5!<2t%"hC@1QxOScgعHdI }O#qr~' +܎$&{Z=W46頜KcO%2'3Y 4,s3O.yq>wTq;nL`zBsG]ļ9#ݖ$IsT#2n==7 K,+B' )sKDA<<{).ޑ~17;z+o{"۷ q IK~kd}awN=Lzs$KqKUOnOgÝoqC;U==:ێ3,c;7 [wݏlH'1`HQ$yݎPEhC1[:r>T#~,sz@!y}R"W b]1էHP ux21WtqQc{`Ʒa{X Z_y ;NxFt l[i*"#|q$?cq˃/*>h1>tɿ<Ll<<45|p O7+EK0k PDE7waJN!"ɝE<8Ȼ**$SsJ [c;û~FP45$A!)'€ Df^0щ-ǓB^sM,Ÿ."DKG2ϤY^-˺4duZZ JIpO%5J\Kx$TKX4X &>%{D3k@Jf5S7V&NU--AR-^ m H RRIG@Rt4,Z,Rk Bk3d)TKH(ʩTA2YUE$K՜?I9<,WxjMi>7biaVf;́0גA4O ZD&͚j掬r.( j)v>qY.!r^ވ s=^rsr1OϭQ8e}~>yuF8eŇn_~LJOW7_]7SJ@TֲZDUD§A,( Qa~z, *2)KZJ,nX?ydg",\׷/t~htcMíWV=_1V gƩu3LN夭?Ԑ`=z>u2I+MlFcJ^a*JIܒ%au5/cp%3GP"3XLXm,Ϛ׿򊫒]3죟 Gթp{t oG9^Q2upjdGfRΡӁnWmb `ssLj sXzۙW?*_<yG_ì{v )ty ]J~b<#`5b#ӱR bt˼/eg*h ;owUѯ[t=z_#/j׋WnZ?:f꺿O0[iLԈ:Q7mӒPq0]ɋƃsdϘ{俫\_Sd3H#*ip\j)Lֺc*BvDd4-z@p"]|#%GP4y@s+gȇOݗ>u|f۹z|eyz<NUd7ӯޞb y S)E Zn&?@-@qͱ\KͽH 0,fBQJMjۈ\WXJf1n 1c#i8pJi6Ծ/1ѿmTsn6Aq[!Hp(Y7tˮ51'@zAEqLR.uU/5"kvnc|l"Aޗx$s뿿1udxڎn(wt.yz񄃻| Ưo㧉ݡ5b;<_|7qbT#`WȇD(B=W=X6 2<9ui  >4{fk:ml} d@A:eLWe3;C-,ܞˢE#CǼ}NOwC+ x{_<ѱkr FEô??E>Hjj}ǯ)qK^q۵ a^2@v:Tg ߋ}`"SD=Hh@IQwBfl-˺,g_WAN0[IމA@tW İI#R*<<"Es_}]W@N Q hJt ɢJY7u"Ud.6|0` HU)[ (E-*[D2 dgfe܌n. 3ԊZj01 S" Md#r)tٛ,Նp&н <);vjtSF F FA I$ݯw 㱚wuץ@_JyM?\#1ISa+FR&ap IgJדtT ه˸# Fw-0 Ei>Mvb+8^>;}*ٷ;m1ILCM{EJ, ؘ:`Ta 05t;< 3u^,;^IėmޅrDp5"ņD@#K](޸f$z.stV]MWuo=$-^L,@6܇iPH4 Z_Teok PEHO )v`i0U"'TKB([ !)JFt10jj M֢'Rrez% d=~ ZpEҬ;$=D Hk E3@T!P04_aKQ"b(A4X͛G(EUt[[ E "Z&,aPbnIÛ[:ނSp{kZT ,BU'9!'/d)/xqibD'oz<Ԣ˺_ǵ_MT7wK|zx_o_߿9/tZ^9N9>>>><=߽z|:_.no?|x뱲i\zsw[D@d 2OORNbXpfVV']̛rpr [ϟfz}'>LNchiĘv@LQP/pRASgmƐ&}; IDATOicQnY캲MFcUF*ҷTpCT}_xL c 2w5v]YʱDݹ;hnmׁ# G 7 }u'UI %BrPK2sc Y+EW 4ؠ@L1u];{OڕpSCm2h|S'lIzD4pj.>p`0LHeՔIy!ˍL07t7,Lm]rX%"ޞ{IgN>G!I{ TÕ[?27G.˲kG$G! =c_^fN]l߸i1cG( l1&,1+'0 m`G**$QlLI޲s%'㚯 `ͼ* CR̚HP-|0Z".p 梅P9#R)AHJxZډJ-"EjZLAŽ@ݻO3'蠶FCi!a"j{J\A#,V9EAa!Rޢ˝"LRbP{3,eR!b2It(I<.́jBZJ)L&՚KX| 賣*UkQ E YRUDUZkfN"S-y6DԚE0XZ D4T- eRUw ֬ysw0:{Z 7"R1QQPG&@R "B@ Hz&=<U@kF-? m yP RN2*,dj`PAMI oe֬Oϧ9>>¬Ⱥ|9Ef=pLJy桪sW?bQEfsA`ij֎'yAkQ~ptYZ plfJ79LfJɈn\s=?~||<OK3C6*?y;.Tc VN]vJ⾪p}Rz6$5_j  Nct L*Ugu9Fe=9>n/gUD˽k7W nxy@a[y]b7|kސgj=lk_&ʎYSU/p^^@?q'{H8`Nۚ(Fуsw<:0yAk!zt> KC^c^kC!s/?9{P4Ie]~>K Ա v EtO0[w4xiP7nYGWPklKɗM,=FOx&+עݦvwyk:u|c>$_~E焠[_wsu/"kzl#F1^nu%} z']/8v1ك_GDߩN"5GSdzEO.)TuqB-UI"5(:d_"("[Hf*SkDtLOtd J[))TG[sܸ}}L]0{]%E" {m *0oCY"Na-SDhmETkS:r "aEZJuII&-*u  {3תS!`&"ϋaJ-Ae ]eiZzZt*EUiژtK)N ??~ӷF\,Ⲭm]ǏO=rPn=/߱Bt( 6l7pcyGL;V9~[ /{ hh2 Mtt}_!t{#_$iGt'{ap rB:˭+p}7n,;_qzxLq:WR7iF0j<`S>PƍhWH%{RDe"E "Lǩ.o~z;-UJ^4!1Jr6q/:\PeLM[5661vmxo(}G_Aj/2N8^:%#u]tΜ;#5#L}rk<3}]bU&1`C;,-=r/P/m}}v M3lh9\j$@ۓqOSjnuw琌YdnWWSP G"  }EEٴ<2'3`Nq^b>$ۼM -yC.X!6 t=WBESnl}Jbd2֤RFP1"c1P;I~I0v*TlRK#Sa쁪Ͱ:!e aLkPju"uimugG#HN:Th," T˺"(* H*st7a`QUaz$D[2$ TcI43.RdH-cp(2C iXXQK I 2ڕ#5ϥj*fTxxn-=hAt$i0f܊A ڹk Z*c*J2ܫ )Q #XG7{4a@SlnTUȱHx4DRYû8!@UJo )HEu!,;! իփ뺘n AEwtVp㑂(ԴHc Xh(Aj!jSAUmkk92$=jFA,aj-5YZJ-z9_H‰hFpknE5RϲK\p:ײ^^i-DJX{fYemN+|^:y`|^Ic)_:<̷߽~u<s)UD·܂ϗݧǵ{m sq 5Rqne]-8/'U!u](E`rVUΗrZvw<_rw??!]5!(jlrF&9@\s]̬z!"Pc 7MX&J4蚶Nuƺ5_um1hڜz^=oFeٻ/kv#У e#ZwQp& 1 ՁDGeGŋ髢&:e=oD;Bׁ3M13w?_à)c`02-w[ɦ`b(q}8*&ڈذ3h?6D2,;^k'֗z"iv9v6x/MCBQ5:a`Ԇ70rٲپ[IK!HO|ܨ/av.} =tķ(NM24bS0ח2ćRbs`"vs@m@WFvo0#~a?FunnCQ=PƷn{ۿAy:Kxvz_DwfcZhA7Ct3m\GͱDV&7n"ZL D'BJ  -bDR)L×Q]3M ")鈖|qY+a"R$…E{袥T-}fњz~srHQJTH 0:DXFWDV"$fQ:xj>PL$ojkVnjHLE;~#UX6 ,U+E &d"l!BXt54 Ti#YT (Ej,Z$wњ[x=CTKPڊ̥ib#ܬ4yh@J%Q! ҐQ"%. .h"߬sd rdyk~RD^ݽaixBDT1ZJY&TLѲ͓VS}EgV`Vy;ebVArWѕҿHa.>n%?!v~Woסs06a.W]/>Ԑ̤ӆFvsHR8hmqI;Lҽ9*#)C$%~u?2\պWtr.H8/.g@Ni C3aL^Ul'>1NómE9`L=392M;kia}-z4;n;ŗ5:7>W7M{CF Q€uL $=yw F3l TuA@޵ܷ57/w ](I% PsEȢJ[agӽW !D3:2JWGUMtJj 3+ Tcdل1'>RQ›Үiqlzsq0g{=9#"P|F|}np޻$@ܚ7O;f7DQ"uqknAӏg.EL1G4. UԢA[3uGds$Tf),@ܐbgdtȤf=!Z(@W?G/">WT- ʠ p' "l~i)*͈=hRB#Vk^9UF0DZEPR F3'DD"% 7sv Ǣ(RSPaw@PK3Fb!Dy^?7p o.dUET&"Ppqb.&" Dk Tm9&^@s{UsJi?@s-Sʢw7f^@^ښpPچ[Ep7aE`*HnZ #D>J ތ Pff6/0vҊWjX=KQRVUMFw;.ϏϯozMkm>LUZ<ڲSrws>~~eiO=u*k[>?n8=/&RrS[eus9"a&&jq(SQ\d>>><]@ 6PZA?|zonOxs}?=鷗}/}4r R=MAs\ ]Ѯ_ 8귲R fžr>w7bKKJ{&G T z2\}^(_\r+;ev}~_/@?k(uq𠎮 WW; U]_غit|3n|b텗Ž&eئ:\pN bB_xkn$>wz!=;H{035 ѳ1V`#ش.$ ߏvSlg;別EV񖡷7m )rF_[c]{fNj-iM/ku*uVuIN C{0== Nl> IDAT9e{\Vv+17Lᒛ$w5q_#|_Aض;e`p&,~[hvȗl0:Qn158Fy>XQ<ʑٽد6n=%^ޣ3%0r&Ϡn*ǎݶ[#{2Fw`LLmȑp0sr"!B f_C@$u@ %{iwHA)@PzyE2Աw,ֶH6䈰֬X_#p}GG@TR!juG !1p47Lv/$("AF@KMjknf.}pHJrs\7e4Ok6k$ %Ѹ#z<=@HZNfN)W+šscY"/4E͍ET<QZ9 C[3Qji=4w 3K:\`mARK㪅̔ J7 ",ZJ2pɾӤ$ԵٲApͼ֒%DEu Wd)qoib9wPᥨ VOUk-(R;\hEpJ ̑^'Ų.|^Dg?yx:g4wS-fx84eWt9UJ}>-ϗW?||,_BD?=?>Qfhv{?ejci"J@)fBiK;NN޿}}Wr9W7OOۣ~w|Z/~s{\eḿŰhZ|>=޽?7D^>zs)C@=3Ab*NoJAsOJOڕ{E6|'sH;؛LRC/kMO51'L=2 t?)׺Wc;(( ޑ G?lC}OGG~زM./Wǰ=) ?Vz]Ғ'f ]!$CGѦ3fu&>:,̮ת`l^_E|vaG9W7qjc 30x+S%{ZCqE+Mw(qK/̻]B0]xچmf Cܧ׽,vML6D3|}f1QqOAπ#:Bw`~)qv;M??+d\stׄxʶAlJ!ǝfUD%լٺxel@h)$QQ)5H8K9Az0캎Y ׀)li@<z{vHtD"_HE%YBpIJKD\pwdDp{s" &/({,] EEKf,ZTUٕ!B`*O^21=D"=nçE83Lt/W?x:M?<<Y,RSjKkRܚǹSqeGe|uJ7r}ri|>/q~U̼|YOKkk{uw|I uY?Vϟ8i ڱUWl9{lPF+E^ v-|4FwEݗPFS l[QDH! @b6ys吸o: +Gq+JrE?Rޝb%pܯ:  n;w^x  GN`kv3ىN˶!鎰(TbHY{t[d ڛ]QAt3@%ϑĵ_' SSӛl_cu{#O5~*Zan-‹I1&DX p!DE*YR72L쨪eѺ٨6kA=`!w(+ q\R4OLo~sIfKZJT]EKR$ O'8JZ 볍YyiEUkf(wdIĎ=<"UՏr  K\Av\B? !9]]w3s;)ш7+ǎ;6)sؽӛ/Wa-ed"8Lܚ j))2w Zܙh"yܼNa-AafL̢ ZSrVSKdtG $&v7` Ҝ*IIքbb7e*"JQ Dylrifu5D0ZC4%ty΂RT,5S)'K "H4KlDa=ΨV= vD&JLaHJS2P[2- f~ hrff.Uf|~5x8OZ,:*!=^Lr,ZI꣛=\>~fE_[\Ip/OOSb_^T|8??]_VV,4QZγNSp7:N2L S4]^a^^ֹtQ}}t4OjV#[|f=ci! :jR';DRp$ oJ$ P&euE{f!{͋Y8jQg"8qX NvoCDeyqlr&cypҠhDD[A㐍p#RE޻lI؈1FȞ,x{Iybް`|@}{ed n^zщI߉rb;{mG֧9џ%"Y;j|5 ,ʦcەvvAH"@z_\$DXV7JdTelu* 7=}|1f9@{N@p@=R+%|?$AV[kv/v6%ww_DTc?֥`h~{mXv߿Cإfd֎99ZbZŭ pfd ֢SX#d{v/gDJLYp[*- &) .ӧlc? i43Sk *_LXXK%э9/}CU"j N0PTHэC#K ![2xhNZ 3%c bUDdV+i`~,"Q0(jC@k`2Y$L(ZLP7aY[RXˌpkP̄P@305 0TR($ DskX-Vfmb"B5JZX"a ,EETD +q0RH#̘Uk $ęY \D[83DTy BH<ѬH{ \e*ZTA V$R2#)>&*qH e+u=H=ܵV#wgZ}b>r.A(Nϗ"Cpw8˧O8+;um͏{Fܟ?|}~,Lj=\0k,{@2+ӻS?=Ss$NɮP,bwbw纮D@ myey\"Q-XYRww_#|V 7,H"lt")2QMsCۺd_E"Է1Mrc G/WAǻP~0<\#RJk/_u:?ߝ,Z{] #N$t^q(C3\_N~Ej}z/wzy;ɉ{BACqiLiBGw\G2!xQ >7X5d qCдA!&c[wl1r7jgޓRO~v77k6z2[;Na_{> q3ضN 7p #29TP7UA[!Nؑp[c;c[m:woNfƱ"DG*޹IHc~9-Ɯ]iL{BWZ(o#rpۼGۈ H6w01<Am?.̩̓gD< sHc͜lUg%Աx:o{mb7GՔ_@=xmr-=cLў@fPpCn'+tGڴaLl`6,|n\rNcԇ͙uO ,g1dR?k$F壃Hw-L-B78G,l%!þ}T+~*̢6zTval?rkoҭs2瀓C?l rA;bt6c\guղr4v$l!m!-v+j]!->6v 2d `䞑F7]ޔg"{ЖAqQnyFsf𿖽9"ÔbɟBD-̒ dެn*̬,_d;H$` Ni)8ٜB"¤uٷ! Ȑ8B@B[tFCp7lY:l`L,Ĥa*E-!ޗ2"Hz6W{Nd󩔑 eW]XH3 '€@{ODDR,I(֢yi-K7Ev&kkݲQk[ZADSaB@)rdTJQUͼyTzhVݑT܇5J)"" !BTNBB0s9@UϒX7h\r N.eHVbw̥#GJkK7s/Kf-ܷeK'XWUUU[THϤp%BVf4yraD˔7(ZcQpfouN\iհEկ^?<|i:=\Տt:-5yr3 OOqz?>ݳw%s_AiiV D c* D57Ps.QFa<]Zr_.~Ztqr]|]||Yw燇z\L|ryplH4 IDATSaRYeˤajZl .AƅvQlbwj)[ldbC"׳l\f1d(0lN(F[y/@~{ -"t[T;Nd7[Ri,vHGIGŨxԐB7:mLrݿ۪}h[A{zronC#;EC_;ֿx 6A?GR> (d Om)j2LCƴ 6|CB2[l J䴕AvkEꦓQЃۼF<A$`~񆼦jp9'/hsDzOm_ٖ'"{B&A FW9(2ߺ0eVad' (ݪ0Jך3 ޚ8ed>$I";<6kj-n_wA"Z lNWa MEQa&`Dlei!Er- P6&8"0DkI6KJ4Ej=μ00kq$iV9cT&v;fJ쭦%%km^iR)BB$$E3IfNs,ɜ: ΀Yk͈UuTRuKIDxNAr*<\D¥" ^ÒP2OLBXp [ښq5Ks)T*s&m?"*xZس0,af!CoN"fAzkƝh*:2f}"Py7S&`A -4W3&[3sq6sSѺ1-y)0U T@pefnRHX# D2oŠuV_)n^^h.|V~"ӫhY#pY^q~~|~w0Mf釻χA}}YX|x53Ů՛G ՄxKf4㡬iҺ&Jǟ>_vrx:Ne)e\_N/w0k2s8EX~~KkfQ%DQQaaqpy}%PuJQ7.h*ExӐMt8awy[̊btږ:Ćw|7D{ z\cH'G5X7(?@=Xk79uCGaNU(>P^ʪ#r55Ǖ2pә# v*A14ڤYA!6^E=n#28ۀ (7cl8 j21`vrM&a 8i_k߅$$(9fጸҗ:vLin(s͟I3 {L-bvAiڽ6םD2anepnN,}Ldԕu0NGf䛹`I쑍^Hwq\;oâ,Bځ'4w2ִ3xpD$ZT фI"5V¬ܺ| t3`P r!oDnDYX Q@<8jiϔo&0&x4 D$ vã=Eρ, ']qDsCLD,*DuYaF,*Apa#ª7IEiZͅuRmmevo*! TL{:)*]k޸*)`^Kad'K%jAY Gs_ Hk@!BXx o$e>0<8[tU)Z[%g7 iM˲*{N&\,<< \̽5QL`]HID0$&e!Dܙكܚ=ё=!Y*bb\\nfN$eAZ(#<~2R#0)"R/PaR%RP$UT5/+u5Vpfr>Zsuin<?ߞ'bԶ,kKץZxmՌDZ[#q־\~~zi.zYQT:ϥWeusùz~pVź6ay|z4NjsoRTZ tZ[x^׵ |"`(,uK}~O?ڿý``2;IHE/ #@„Acm_D|ua8/" cƔɌi5n$荓ܰ. 18U߂A L-' izyy=}ϟ>.j~>-k~zVz5 `hmMDjK5f]{8?gs(W[~8:MzrJTeyeX~Ǘ>^?wZmm~Yny[ɦ#74VŨa2 2ߝƚ|׿ w? k) lAqB@w OA@̽yHLY4OJ$kP&%@Nb@HB̚-N話tkEv3Y =fkLIbZ[V2PQad@VPfMZX@fE 2Qe=x~.#6l 'vDJW\EXuh+E.֬9QD$D3 D#HÚy&0wE W!VF@Zk;6"p 7Rsa>L"©]IS5,5<)i/W0~pz2eY/~?52˵"7?}1ʳym5oڜDygXŬ? @E><{~z8^LR/5.k4Dr]_^R׺__kR=.˲z]Ȥ5T1}\LJt[=/T?-:KB̛$H$ λޭP_h07[6t#SYh[Eqt.nab0d`xnmhKA xd{Aǻ1Vz2- tw͚T-_W_wD ^]1-g~$cMI=#4 ]#&b:n@歇Sa:LB@9O!osNn#\g$miN1KO7ցvJ(h_J#NsڟɔdPHkrG̶s_7CEir7,/+%TʅYs`Rf8 if2w$Ҁh! xr5z ۙi_x Av 1GwwpcȝL. `%¬f<9@μG jDMHQkZV4ѤE9m0{H)bͻ?5+Bo5KK)Uk+ %ZifnnjkD!=T0*ںLyZ5k~][=]@Tt1Ѻ֬(;P(w%_- A&=aC y8 q9 4bobn,HӔkS1sKDI D<9N Zke0ֶgGA4EKQB0xҩjǹ8yc$&LQ X8ia6F4,bry~Տ?9\8\?;N.(Yw??ϓZ[t |Ym}~;x|}^u?f~y-×עx;=֢ ! v f4f%)E'-Sv=O廇o{7?{kv<<}p^bNE_.t(BݬOuemN}}~UҌR,!P8I!TjZ[mWa/iRdum+.Rq|g[:JBrb7:DJ~ 3^b&xo@mqy[h{ R/6{ڪH!y۩_X{ z^4?$}CgoM[iX7tvαrﶙϟя"S7: Ǽ=-+Omenm9޼X[j`'Õ?7!כ7/Bz۱cm`Of]]1ۘfo7%=`KlYnIq;{;/62n1ط Daprn%Gq`jJ'dqC, )Af*\LdY{wA؎to]%5*\y2 8} 4R8c̸|dLmhh‘G<"D;9Bffi&b7gFzD(1fJ' EG  NHL*E:qb{g emEGdK.ybF`teZkkiv*B[0TYY4{ "``52kQ#  G3V݈e*Z$jaVA@HPbԚբe>[>ޠ;<#[ֳ b I'< i, !S7o:Lj&\@i.tf9Zh 4T.eXk4-Bh[PUJh&kdjZ-$ *ܬ\&$*ZE8yZׅX"x8Xذǯj0 W8HD5 IDATZY=կz*|w,_3aww,e_Y5̦yz~yiz>uIBc5#FE@Oeb@"bm=χH" dtZ??.OUz}~VQ8Nz0r%i>r]@pP,¬{bTu.z\NIQDZs~"0IdǷ--EO랏=c?ؑ7x8llӝր™ٛ6(2Fc01DL;9Fq;#hgAqx 2!E8BA:n#N$ogƑƀ'Qѻvޏᛷ0ƌȦ߀ɃK*#=ɶlFӼg9@F(+ЍܒmNݴ(Aphjkr3azoTeR&dTxDDjgDwmYL"{0+sQnpces;ܽ-kD8`U <L:*٪<?T$3LA: f)1:ȱx!p"bRuju,3S!\kky;u<5[3yo}{}}m<{|-5K-ԛ޶m[V~}??ܷ===|uYJ,/ۗ?|ׇ`@8R73aepysX?;w^>|^-{cb˱_9Cb}H;Ύg<59O0h*SzN?}vdvf˷EË>u?@xi11c'Qϣ~xipn:]3X >Ĕ1%4־yVfyʐq|.;Dּ׿b}9ӯCs32.~Cqe;?Q2<4wO&o CdvKx6{ dgl5}t/8+{hpKDO|VCAyjSubkO$@DyjKhvxnD{G[{^{ A(}j-u)_/~m[MdqX,ʸ.W}p)***B@k^û͌mkkǏ?})~~xK-ֿ>\/ X?}][h)e1f٭nޗZm+rޭfAOjֶ)c]><+~/޶ejQȯ.q[~g>E{A)T&}>վ{az➇8zi7tZcNU(UZ&Ĩ;A6ѵ ˜[DDZe- ƼEzJֹ0pβ1B(ѵ1)ܠF d==sL9s0[W$#o?3x$OeR vN;4&c ş{.?'g8*4V00aOHl-24Us 4'T=͕sDߌ^Ğ8WHOM5sRU&F#sJ f7t=/SnSIna"TRɎO>ctD9wg̣ GJc"3d/ f-sr`SzKo|RѾࠝI{dǸ=YSP)%2anfD?cDGEu#dNe3AX4`"N, a$Ed[;@|kk;31tKaEoAQDݭG0ׄ T}0 <ȭ'f \)l6P8ePD5Sh5,Jfֽك9͋=LUu@Ō%#Y /恭Yz7S)TrAN@NAD20PA޺!PY=-œzd8AUɊ`IdA٣q&0ge*rU03-: S E#83oFǺ-(uIAI 0g:aC,/(R. f"楔0뽃DYEaqYZzus- @hq7h&F"Өsr懪Ki"XRR[ewk9D[kbyO͘2U_}_էmk[U{盈<^^TUFʲWo,zoEzyͽ]aHRZ۰"\Ke{vol?<^/۪7^n-/OO洶e`mnzEŬryݵHͤ0 ֵCTE0r)UEl׈(xoQ9k)=(AQTT؃ 9Rx8QUK-`6Kc!01 GУ+{0yQD\sĭfцEmk"@Kqaj4sw+M#lB`cpduof,nn6# NG;T3\=g7=3Hm*7ME-f)pA@١@(D"KkabKaEemB.U%a5 **EPUQϼ7R=90A+͝lA(*XdFUTUrYǪ"(,v7G'Z۽*w 2W})5D{ϯ7fv-ݭ[,E._^TZ]p]ƻe_oէ_||y~P&֢,LFDl.fnAO, \DYۨ]NLnD^k"EdMZ&_7u_[n[uzmpG [e]W0{Emͭr)7}MJ= `Wa뢭mRʺn=Jn΂-ֶ|?'sʶD~~G,cOz uA hcʁW>hM*| @_h, {4K#;XRr4e&8fo0àw tz 9s2C is-q&SśV 00LC̰%r{w/s2a8F]d8Wӧ􄫦2a2sA'M̙ќuӌ_o΢7O߯C?}w=P!}H§8N0't7 < P:_V#aq9&x4]w>uȤS=QWkƾMAGPNguS tp恞8G9/?2G&dx\_ٕHo'}d"lݿ;'{ᎃduPbs"k)fvlCDwZDUaEDrLnR2f-meWLayYN|]|۶wEaݚ5-ZRn$D@ŲJa8ǃ`ܻ ږj9#()BU hD*3D,Ur \*ue 5CԠ0a @ yC8w3n"U[K]TIWFR4m1͚Y>#@Ѵ$mDZ X%Scfn_u{ӇRKQlǠYk,Li[C\X5o,^<=,۶Ed޵nRXTxkZˏ_n/çOnF5@OQ.Sp&z-CxTDKSoT=1f~8&>&HaHQzq #gМ/gE Љ5?Pu^^337X04"Hlo%xث9{Ȏ}w]8Mi6l6=˜ChBL_ΐgۍ/ %$b#::3o< 2a>*J߮i:Nb-Xfy—t8`M(2| A<@1/0fL 9؂}dۣI!!01!I@ }^Nӓsj 0U z\DÛ_-KϮYߛ9>#̣3xZ9ZY IoP%3!۶-p;A W;3,pRVe)2)ٺZʇzPuk"N#TRԽyPBALADP"z(BXT@9e%-$TV&@](DXץVK/`((^UjMC8w& "ݭp8w,d58 URȉYw1-e1ihB͝{޻#%;Yz`y( Ua0@ǿ%'~pi L1+1t2}I `!8z C7_*@EeHGed1O)|Ss g>u:΂8:I]3PK~0J7듍>a8/{4C]33::SFovi",Ĺs7|ޛǨ`d)BDB*ti\8EC9bu9D?4qd'u~y/Ǭ~=D{x^tϿyHev∩h6 ŒL?wuY@ZoTFfpTSq)%[,ZYg#^Z.,]£o&umnp)KaZ[fdCPALAANτ(DDX,̻yY5u/ 3a@A4>a9Syd6{ݵi}޶hKuQZj*:ghYuU%rwg[*,DaTD-ͺ9ndwn "Y!y}4%<[VFn`PkYXȂ"FpBUI9D#Zf٨=[w1:&IMl:8\%Io@3ǰHWKŻwwS'G햄<*9p.gy0CTC.17fJ0Ǝ#8v+ @GJGv;={} @)>BNw8y?L "]uR-X3/Zɲ+'`0V^۳mZݼ7U/-fr[oW'\.EªZnpOQ MgUuzAH %W.)rcllw7 Mrv"Ok37#Ds)RYWc7rr+E g' !`'VOnE3ALK"#<"5bsKýw'R"07gqxmݷm˲ۺ1!ZKxBYփU"$Pس+$u(j @Th)y)A(̛g f)*i,aqDE Gˢ", ;q]:3g:oְ74FU!Dff[D#Pf)ȻrQ͂jfn"|@ MFݭ'en&* ϫxA0Sz[둃hMZ7 Co.Ek2ֵ]lcTEk)ǧ˧凜?}}y]"7~֚E:3*ۺfR[{2|pEiFDZk@DRDC"WN ta7t@UR$u].6v7Vn޻[>DE5s0 BBmV2Lzw3"`JAeޜH-,~:X"֒ed9p{WGQ0[3QۺQ!$4g Dd}ͭ?[aAd٨BY$%`" !mwO Q>Շ{6N RBb%;1sw#fx^44 p""0/k" CZj}EaNMUWRk8e ܾRZǧ]'~zX~ZN7~ݻH|߬>~N|=>\m} KբT[?{roݙKφ{D"@EzYjx)R-ny{"h|x{ވu3z[ze9ZvDu]+sV7ߺn#(JzU(޿t"&w\n?nA"d0#LB6ΩfNw`_b"wބ!‰{2vme|gBx(?xwN͡4 :CIH]f`rI06$ڥKoIˁlz'< >~~c̘O`v=@C% bA(g4oqSH d09Ho/qE*qq̳,=tBT'|z=bAopC ¾L0fҺn$?v{q!}C5|kADMb"rD8q?7uB'q|K&m56k09oͭ}EցHPYtO{2>g;#1`L.s㮑S+o!od k[$EÌYT JKʼn+e<<*l߽w[X3n=ТZ[s~P/*` ܶ7Q1'}p'BTUfbJG$J9 ҥcOF2"Ue̙gQI!ǁWu)@ in#~ֳh_ˆl'EJwfD`F )D+y@DݍZP 1CT;W16'EKJ[1r_; 29e_G@f !t1Pn <yTrrH T̬"BL[D`&E{hQfN$A @qXU*Qa,*Z\+"j*gF)frBXnD)7ށ  UYR/K 8Мz 7 캨rp2 ݬ!UEE-% Cٙ𠭷R+3-EZ¼o>j?駿|}!eR }{ vsO9]j}^yzᩪ^rڍ>}%V"ԥB ޕC#RKs߶bkUJ}2KW__m3#6 gEK-rY$/tgTxXu)E>9-"YjܲpmMחZuk}*HzO_?I(,1[쟌lÌ!Q8sLay1s'6(:!OxA+o2񧘚đ'bOcr<1=@Gߠ73;$.E@QW!bH0R2A ϖjAҬ/Y^Bq(߫pyf @ޙs^eFLErnR&Wˢ7"G H[ fp&=zzJـ*+D2"VQOچ $  {!܈#=!j עv7f**&hQGy T ,5<”I 2bR8DDh-{H Q,< V0h^m[3Nڜu'LJ0u IH,NAe**l P!G5'</@~=m [zwWfU~zX~|zx-c^h—/Ϸ9"{BRuYn=.E/U/ץV=VѺw-\\O;o> û[,>x/u3;3K.w(5!È­+#}En̪[MX݇.ݻm][_.Eן>nj/^XP*Oy,gG$$Jt&OtH O4M$=[ dƍב49bWRf~,>qbϦ Q'* fAӷoЏjcza&Ȁ\7g']1Y9M8/yG:_((4gWߢJ/a"߇ c'wr;6nY5 X_ N M$:CNxSSرϻ? sOMEEeqyL$ͬR1&v x`G~&W=bTh6"FYCHa APbS 3;yb߆ǫ̑o϶t!8!顁䗂n>9A^#̌><eYmEw Jk IIdv[vֲ㣓9,}g3 y 0[7"unF$Xp/TK-ZyNI q$Eﵻp# rTUم#ug* uE1TKUJ8NBZsE0t C9Zcu7&)"*u' 3B A^0"N=(ua30R*A@8E#bf"E05"zwPԢù<,1}Lp+aҢH33j^ ra{+QɦlP=ymRª``ۚfVRT R{P5"բh3o]DZ60wBaNof"g3DD&433Z4Uյm_^-?O_[~}e!ȗ/ϯk"!^.%u^.u n&ZM "()ڝE _|/_Dsn(=<)ӯ0"n0ݥT1~5\EroֻYz7x\eQEU-=ֲu_}T>\~)~TrIJhdL@Dk|镙9SY>8-Ӟ`.h "e]eov$ T {[}? $UXQy/&Ȭ 'Xv׵KcAL$ C"%F:+s6{Mv{(za3r<=C=vyPHojBzu.{&?ӑA؅~,ġ'H,lD vc뱏{(ޤ6?m;<0DFSO5hCQ6~ziA4z&2"{D:{ 0gsrSogUq{bZw fR-Y~&PW.֥rdo" mںye"LK$"Z$L ^$"uP|UdFb:#t:XfaW[d C/B2 nV C[u#nޡ*E3"Pʺ5k=Tv𞸧;SxQPܲ@Dpjy\r31g@ w* f. D(j) (821)(`;CCPOE DfY bpΜ:팺{^R}YA@3͙'s3 X"5{3qfu!*…5F$YXh"f֝ZP RF{ŋ"@>  kw#N(Dn[$˕63wtusHJ8?փ(.rF5}SUY `CfBG@ =|۶mU2$sCi M n@jSNI]HL5skj:'r]sfSv^Eǿ7 \rXdzRzsw8˲w۟|YW~cvY/K;_upwa#TS.y֖*Dk3ȇEf庴+%%I%|뺮kG0 wי8n'Ȝ{N$UYӱ&0M[kM̉nzmROCEKog#,) xb)Oz'+,%;6;h獊yqWUj,D[ՎM=jmqZ&RoxR up;xTɁK h@o>$y|v f md8sě?HbƄb(; ^CoxN#sŎn6vJ8e{Kݓ^mC2 ֻ󖣧=,#<d;J<!;KCy+~oR*U c'&3F b Uw{ɢkNIm' @>~ L͎OmD~^2XBEl }T+,~*{9vM#7aY{~oG}4Kcش5K>:ynƮF^</e!]Mspw39D W9gf;D)M<π__^-x=^? ) 'b01'akfIdw[fp%甉9£fnd ƉݠHB0VѦ3&!f\Oc} IDATIDRBmp4sRERN8T(%*)-F/6n*",DRؼ{ XrŸ$Dkmo7s4, sI뺦RݴI8uي`k3ww%$Ir }a4u=9Y_PxxK/̂VZ5װF~(Rrʫy9K^e՚ 馡3d$nUa(-8T[Ji]V@fs @{orpRCxp g@S'3R2R&7Q,%0A),D,0 ()ݕd"49\V̈́͏s"aa[؟OpbubӔkDڒPb ; s,Kp,U>wï)_/>^.woӟ?9/K_˟t&W x>_<};K^.K &JL\r$fjV6)"b̟NR2IRW&qoMSRė˵r^c2nI")%`fN@9ea*0c,wf)INR[uv:9Q9_/ez]SΗu^kmDN뺨;'~ڔ$_KiGZ8; I+D->kyq=ve!=1I&-qCb^F@BN;XEzmBX8?;«r}~n@q:oӃLhypf`8[G^![akֹaTo-^N㙽[8>n9o^¶=2"DaA'み1閦3Kա+Pz?[]VmIPwDʡJ6qq \>#|qahi 0R/=]&i`0311PrN"~.`ijNIHUk%LZK)² 5ÇuYBI][KԕT[ldUܳ;jmW.07pyw.@1=#2;3MM{P.޵!Ԟ$ WR]Nښء Z=I!\n.E2A >BDd-S818!4p@m|6`&fbv!͢KTл"aan&Lɺ7 Q{4Y(F$7iJ03a?ҴbV),NG DAnDRxDO| ;r){9ME8fFI$Ry>ME},9rU3V(Tզ$RuE;“4 Y5.-'Trb*< ̉SL=6S+efK ZPTR-UUHnڈ@k9'&R',98=joPӺ6Uc"hLk E}aU;IV j@c`$05*Dܴ93{b,l4eQSDUUdMJLA^´RT̄ݗ\5 fY57G.S3cPˇw|;?~woz]NL;]wxa>SY>+OE~x_j%ԝLn^Q.L`zJ몊$::"9Tk*53w`IqRks3&4ͥj[UQX2OSfw5jιjPVNSzf?@u]kJp:1\Or]QciMfZ=>Η9ГzLӷ/Zu; ?W%qJDLn0LeШ^{Z65 F.{jA[)7m(2 ۩@ҽ;Ď@y`_ﰚ66:/v̴8սL)^?8Ѝ]K#] {AzWEl @C%r+ceN{G1zmO^ ߀5wanm2"7!\miozPb;=Co/D.a8.7d`tI޼<JW<@c>Y"LFjfE8[mb!6#IЮ3Zo y^g mGlԝjla!W{:}#η#{K{L`bkW(_ٳ2z뎁9w I͝Iܽ9 $4%奭K1fBӔΗ8BLK"QSJňsN 7HÕً$\]q=n@{ȉYC0 'wU-L^cDŒS |(E9 H&f"X$Qc[s3#r9z'JLT%DSI WSK)єB<*BH.sNde8AgGz`Fn"r4$DX5['fm))1WU# 3ȡn 5ecXx;XU|Z LI$ڃۉe8\SJ 0UDkUS2oG͐虔ZUe9N=& w7P S"s grse]z۟?9'ݛONo_>/0$ooRR9Kmv#8s3<E\~,}yP?\/˲mk*(IДSN|]kdkսj#p3pča.M ,޽^.ץH]oO?]Z0r#PN$"rដ!ux?挜dYVpzTZ|YH^eY+˲ۛqJ)r.֚lk fiJt+秗Kry~|%?~ZǻGqеɛ4P{zW9_ȻONo/6|#7$m  *nFQT3x$n 2̏7u@N;ih ^ @ڗw)1<;ܴ˸N:Mͼ};|(z;ư_4tᡴ1sYoz;sw]c$.mOt#68F%ް@I}n^#phԮvBmt4MMdh ÍEģm921l\;y&+z ھG;}:$"d82  c>Fȳj]g(~7bTX4B>}7w=Y{N+2㿿{L}Rڧ1vGg1k=w){fP5(e:ݙ뺮rn˕]jF,QV 9$CB0f,x 1irr2B%FN,R w0=i͙͇"i`L.02ٱdBjnЬDUWm=YޡF@NKţq ̽YX|$v%kf(@Ю",L!Pw.Y@DfrHJLִiScfwo`IiP 3X͜[5hNPsUa<斓%UMcFB֭UD圫BLLֶVsX)ߐs J8atrq3Z:\efѦ1JI) @NB^[S3W55)">Vܕ89lM $EX=VӔ3I$I8iDMt7}{xVkj{N#o_2A`orEJ׵]uO~;ݟç/K35{5怭֣\K?Lm]duN",Ixj jvcA`Qm8c=nQD#f%z`よe̽7BiAj>0{H ҕ{u7G8#ctru"'c1Dm%3o'/WD&-[6i71`C.6D#0fw}G9RG#Qt#9l zn#~¿sj+0OgI"D̜qsʅXnSRӔrNf.Gg5 5meϊ e$]Rds&fr-"@HiEFn€HPsr VwO":9I?nJQ?2#jD5;J\{ce2ӜH쎺e䞘Ô4%ka^kn𒓶"a2Z4͹;ִUWcDk#&F sJD4 BߖijlDEMD>Ib! JDRI4 J6udΉ^Dඨ =Z0;Rba/)V>*Yi13"20pU4!Ot-DdIN= qӔ@pbRL,B}8`f8,58ȅ$ӊX] NT<@SR)Wm!#ww #sʒE^M\8%#ÜԖ֒eASc$dz5\ryeJBsSR$r֏_NTYOsSxTrH.9cem|>LL^WZM/{w<r8fִU"?N4;/kIr^ՐY8/9=G.ϗoO{ɓ*{4i1ФF^Gwc&"-mpdp5>[ Wl703 Zv6h?aAk8ӵ4ؠ"o8,nw܈stvЦ%=j:tR^0n >{b=ߣ~:k!wWj4۳~;F@1(MU|až]?-o]ڕ7NwǩϊCy̩/."*t?JHx̞lp̣thիo+V~z؂B?_mE'>qȧO }3988GY?ƳG6;v_cxkĄ]}9a:4?J 8ߎmw8Lpb-@8>Fl H}߿.@;#1׺ÉAj]ရ[sӔ$ab0so^Pj\^`f,10Ꞙ`.j( J ËPZ7PH0OfZ)Λsy "Cnݻ !33Kk1BRV+(ss࢞%14ZP;^WS{ĬJ0< ZENY̌SrbINS"YO6 $P&Ks08̉QiaRX@0W%#27!f E;hl}]q歹0JtYj/#"v5!TJL$1W7'8Q@Iȅ@Tݲp5d7fa2lrNbnBFBw[[T[9%I؞p֦iNܪ]J?ښH,D\Uת$,-Ոj- rXs3TTdJ֒䦚$(ujzŒ-4UuZ;8}\ֵkkOO?xuY< emMaLei\rjB_FnDW˷eiLJe2Mժmm`ba]ͫj]soZ)Y?{jLBlYu]EɫYmm\H((dxtHq^%h>TԱ;(ηdciN noْ[ϐ3~ IDATCLb 9ca^%`(>^x8uHz%Fun9Nwla D`u԰FlՍ.rC7B+qv@Go613\uyLDn<`KG"UWN[>2W9[N쎹+F{ϩ?9^?@ܚALN*ʾQ$pk9PꃓU!I2$~&˺T]3GV9gKqZ4x&d63c $HvDR<4fӡ)Z 1w(4pmp#"!BIDfFȤwTO֗)IdJNkme18$%),]dm=zwr=}[i.2N6-)q\^~.dS4# 3LG 62{O <|$x٠-OI"SQ)9=BLPu𣋫0ݶQaw<1jN!aq_Îoz}g{W4oQ04b+ߡsnz\6y;9Q&aA5n:^*5n>ѹp;ڙP˘R/IL1}֍%|߾OH 8mcwtu?noCsȄvvs}w}a0HѿÌ̃>E^4.EM)W݈\c; a|J֡K(xsVaSaovxLюPIN#82{Hceo8]I:}Ӥˬh ~+|kgX3KA)t63mMp]$eY4ɚ8%UadDu4p3+YsD`uXt0q#35$;Cj\-" UaJ"μ;AK^f\nB L]X[" 'UWs!J97!/Yʔ߾yHpHRy*/ X":)MKhcC2#$I(iG*iɛF'Qpx"0y462;%ijps VfB\B^DRB(!T%aa޿Ƣ19EsCJ!L6|&"VN)YzO+2)K (3%eުA-ښ̒Ÿwm"ν=;\ݫEnnDt^?!NN3MSk"0U F$$d&nBIY)pxq'I̯M0'.9[I݅6Da݌k#\$H2REhT[#Ӈ\ͧ|,E5"0˯_RKm~x3K&YxYӷy/6wo_Vm-l9RNt]afFU0rNΗ{k;Z̧u|BѬp˯ϗӷÁQɩiىjK"Dnr]SSj^A$Tsj}|p}n˷_~TqZuY֩fΒ/uY \|zq:Os>y9˯˿_JSL0!K/:MeBd#D `* f T`5A !zijҦ!iFWA(To7 M;_{bjq6Ʀō-.Cѕ(|7+pK'>m7isoM;6݂U`!#$npqfהz$CYg+}7 dyӭn.F܃ WP T?U(QI=e$6GG'hz}y(y8uSC=J]X@w'xZ< ݵClɈvoȲkݐQgpK$yC?ϊb"=Nq_̻c1&D!cP+d0P58oDu 掂Bn;&65WaP W3556c)ᠦ<׺TEg 3K!w4kj,Vfar3 {拆YhJBf9*jkj4r$)%uU .KHtwSN⦦pC# "r:04()ekJbT?{.,/5*֦zʡh]5Z+7u5s4 k]j^NC’N??=yz4~3=Tu'ִYp3uF)LS}\Ӕa.-kj4p: fyzΗo\LyDSe޹5ʴfo/W3O,|y*?y \N~7i=B`0n 6!y]zqÍO;YRt8vJq8TdyPtc"te.uE7 Լx{M.Up9v इ"c e4>#5p[glkvnC 1$4mu *z_gCݼioa!!~ DcW7Fa9]ov8i~2Ĉj*uh"I-69~ rZw]z~tKVs{ I<ω,N^IB*ߜv޿70)Ôum+a\JkkEG`TkO(GX0.1!+CC,]%e5sq9.@蚴I05f QpN IBLLlnQ3;R%S*HQîKˉ 0Ηfpo;0Vc$$⨪N[ cg"!c\$QpJ3R*d$D{6ȧ9(8DM˹$v(rY"N "N238+W38M]#T ,9d8.P:ga&T6%I)k8;5SI_t315B,:岚?)t`rhfRS$(z*{Gb5jD誾Gxɚ܌-'Nffkw7@7!wr63f c5S<)6)5ȿ52$ Lp;ZkKL%ZMF1Ipef;&!i%wq|.\Vf;YzMۇeE_.|y7?]4x_uyOS|8$uQ3ZH%NMw"O"LrnZI8͢HRr)DՕSC}&_krYIj/ϗ9r^*|6Oye]y4բ˵d9Ӳ,9II~;|zV)O%ñ\/zwS6Uwc?|]Vv:ϗE_+˷L:!:s6$!CryX*Z_|7ωܜEanIVae@6 YBAԝ64{ L&݊pt* VM?{ OlLhF]ΥnמJ@FZ/5mO!ݭ*ϥ"\GTb<|Yy><OBq?~]ĺ%;w;d ǻѧh-bY;@U kVC >~p^M_=z]~mrk:%HɎ f>%x?\_N¸;Nks'-"Ңuo͑YZ "{fNQS-/kf3cj{-KoLtZUkE"WҚ2M¸;I zw3BZ+:?2VDts[k!2 ND7V9VJ0n}!'V=NCwϝ%_N|:?>ۺϯp8}3iֵw 9-sm/ן~k}~ď` HF/QEґR#b Yx81Ѯߍ]:XC͑9+O04mߊ lE\4̛{[WU1HؑGPVԍ9x < P5\q-QGa /PxGlnp?4vh~sѥ%rL1#r]{8H`kpgt7 ux#Bހ q*;7Lk`CVc+] |/ޓFH0GaiH-6۠RMƗ ' ]H" >_켉Fձ<|#yz]XYZ+" nuԁ#nT{5X~wC2kĘOqf'i'GC"p,4a.o=~3u]!,֧;Q?ʩ{ pZ{,ޝ"EʀH/8fR"YR؃{w[/fn,ZSղZ,`zsc.>2=ܝ.9 !#JQIt44/kS|_pX3E=|>թ?4>^^/+TEt paT4M ~>=;󥭋?z}tS9_ʦĭo~MTHopxo06,ŀFv4B;|ގw/^zLzCCU^6Cݨ[8loh7?kkHyGcY|_o=759{yqSwK|v MDCCܰ;L;|~wzy6 >ؠ7Ů6Mlp_j`.Cl 8fD;7m{IBlz#2: hS.* m͘;}ݝ;:7l.%ۚKN O:Xл T% @Y 0@[o QD2(QU5r b '*BSQP#\ۺz<,gz9_._{hW3/:!~pYKpt:=ͥQBQS'wݺYd}NA0u MQEk@k0JD;3 lf쪥(3^Ηe LәXg^t353& d:+sa׵;(̢LR˲:e{ߴ.=Oߛ?~wz}e][oօw޿yw_Wb$www2+i0M|7|])W21rmpJL a7fL?qƖm_+ *rq)w)qև"Wt[V1tx:c>qB:yO0D_+V|s;xЌXޮpf+^]Q`F<'1Pc;{;FߎbdQ^0z켣}տy;+::`ޫ,} L{~J) >Pde|h PSWs\;pؽ -bۙ-sbpUMltU^ံd/]q4uGoms[)}=~Vj@ /)%0I_H)n| 8eN6ںkoA"f"h˥ٺ7 xuYK"ey5 `m"zP-S'CowWaiv҇R2pYXōVw.HU:@$S ̺٪ V3bQQTYl\tK[=`Ϊ9< XnR@n}Y:Cᢌ') U-IJeɣ7u x/*AŔD[iYzHfHQل9SDyg䘇&آh s{k.Lݨ[PJ$\[ݜݧIGQ&e:(Һ{TrAl"DvK-ϖ\ a2ND`l '`7sU,DuwO/Χl}|wCrz>F祓0Oϫ?>?/rw("dȦs!6K׫xGu#&C(tP} 6-d6K6pDaePxB:LL 275Jv:NU7k'6Nn+$vocFh H k\2/8`n) Mۊ>{;&Dߺ^׹irr ltBuD巬6xƖwlQIlwݘ~+* ;F^*eĆ&-rM6ୣ}D_.[%"%ivo {xUWGO!1$c龼1WHLt7̔㣞rCDqqxޡ Ǖ]) i}$\1w 37Z"5xQ̇TK-@.Y͌ȝ-k$k)I.r DE,-9UGx %!DTDnkyxA8ENDn^Ju,b!2aN[=Vr5sji5\-( 9[[ĐԬTXQN`f w< #D0,`n^\d f5EL*UYfľHAn1>zZdt-LFL\=|Y EYep^.kPzT RDAu 3t ۡX`ֺy3"h$"U1t BD!ix"LvpR᪠ #ṇ4ӬZ-ÂsaVnXΠ  (" XvGtI5d Zs'j#&nª 0?gQQ (Koa2E8 ’0&nݼ*up,_xV-ƐjTk)}]Uy9/έnN,0nfl0,aTe0 3"nOvV.J:M!ce˲;Bj*gnoI>LNp9Rk9^K7;2ӏ$iw;u"nO>^0Of}V}w7Sljc廟]M!<|DWm|ny7ʇc%J`ءnhk(QK]xeϻû.5BnaywC[-*Ft tt c|5FMllJ+ ۨJΊ5Ngk2$ٛ/һz<˧Ӻgew|<޷֖roD`߿{?/qQNxKݺcq?ח5ʽc}xO?]P\(;.f 2?1svSv|%Nn+x ;IH<6"P`8۽*u3~LYdD7nϠ3gn?`ME(7JwE'Rs" n"![&lL K/(HҒ6Cg$pHL+#<^G "ݤ{7KppllTv@#hD^ٝ4 ftZ\+pfzS㈯ ;}{E+S\=UF7saWlp`:#ɂh0q#9lrX.pVڎ5UCR&a{{[\#7Ȍ7߿_y"6خ-- nowǪn֚yZumYau ,̼`@:`N$iRLTTRn{g"o t9D9Av#D\8@Y-L=0Ex,H+ rC{'Zu;@d֪ {ѢBmei\JI}];Y8nlfY $B8n-$vbcá uY5d$uh*)#-01zڽV33HKnnAFDk[5ςvቹ_3T r"q\M,TkѫG) afQa-Cf{PAbX;0KZCʮ7ˤ.A>O"T5kPg@/݃5`GGh]H\##(!e3|YڛڧZۺZiZ @UKD&< "3O\՜T6 ?LՂ%(DTY8kёnYZwRJn:uj)(BKWf|۲G*x\.tW?{`q|x=n>LyK^IjfmIZs:XłaN釟?Ck_ϯݬNe]z81TKo2].~|3{D'hH35:a1^-RG`ӇkLs- avaׅUPneGo^+uf$pCB1`|&RҁS76$*72[ B>DW62[ȎDT62|J@ n( Cùy-t ;C[HAT IDATc95dR>''wg0J`Ͽdt7;Ko7C> {l0: !< #bf0PR *BaQ _UUЛ I{_uRxd݂nabt`2Pt3Rۨpʐ{֙ / %D0óN- @aa0牉eahQSv˽+(O2g0gZn.3S--.`e"h=ED'2'l5SV sZD`Rbn'Edb1E݉ SVm;-w'".ETkx6!)0Q "YanĢw0(7`a3X1(MTpXh[YU(X (1;h5̭;c]s?V)[L6r3!g6qֳcR& ̰6Yf,՛u#7Et@d[I tb9JS8̕EuI&]{\KnEZ,A sgj(D4O(R| 'I}SCƬciZe1o\ìy|xrz<áxV:Q2DYɚ&`>ԩT,skbZjy~}eP/.L@TumfDP,Sz9Ly]LtYufv *3-K[ݺ2 0EڃRBK}y>,}y.|ZU07<Ϭu鎵Uxpʭi8M:MZE[,__.ި>.eޭ[-%a6ha<^y1vӰUGoa1į7p ĝт{r/?@ Y/q79f[75fOO_-Wcovu[f_0m*ʥks +m]Vd۝El>e bXSќ谵pLFR+̫!ERn9 2d 2Kb DYWxJjQY;A#J DܣGVC#jY?(Xh\kp3ѐMM<|F`)Ve.mm9j)fpy8;zt3jz$U“J^(ByQur0/QNˊ\YÜfN $A0K7:"ff7BYp 0UDO3j|femy*H;QU$(SD{sXĹ91`RN.Y IduZOZzY{bJanqfvG$R #~=]}|nimɭϗ?%ݣYiOuu & ǻ_xww|8 |^wne5[Ws3h)A6rRaLyỸݖU4Xk)ZTQ\PS=Z7",g'wj(ȏ-ύ@#RKH@we}]씩ݼJΟ^N?|ͻvonfdeֺOp<r:_~\Eb t̼0:UrV2_NV/?,m6I+;GUfh!X[Jt}'坫 86M(ڽe'4=| +yf 0ަ"Se`u0>󀶛dCuEWz.~@ µGZ;pm" _ItUOY%k)n4_\D?Ƹ gQ@WmBB”Jdd/}lX?#@6cmzq:n6P5l@%XC v9cf<hvl9GL(#({IJ܇{DfVUWwOp@ dAZH"HDH 93]]7}0s&J4Q;NYڋ6‰2KrLO%i(vwXQGtUss9]GF*f%e܃:tkhF ˛ЖW&Ý0DKI"S Ȥֈ,jf]J17Ҭe)E8G(J(j ;r g)E3U6l2"5U2ڽZsXzyx5Ja&pd@BIRJ)4R`QqZ S^EbG T&CD  ϨyC=~ED SQ>KvBin|45q6yh*z^js$eZjxn`Dغ7!.DHW . ww3^V݉Zw"ں;Fz^GZp>kO%cK~ka?ԧr}V,"*bf"N* )QZ]^.[Ke)ݐѭ%"uuY-7KpDgfk@[63㴮O?r:ƺyyz\{el=3ZUJץN9n=ܿ;RqCd&r}՝Iſi{>r xzCAK;z}++o6:TXpnPEMWܛǡهL&Iǡ(AțW&u&HĠ&ȝ&?xrvl `vƁdn ́wd37{ aaю(wog&c: ǾɅPE`+ˍ9t79w*:hLYeKRkegI|xcfLuG h̼q y- V܀ѣd8]rO= J>>^Q̈nqt<]pFY>\8g/1˲}%` W ݿ`OcG21ѩL$2ZƬƳNfB晙YJrK2yFxwg,.Uik-eQ0(@2yQ$36R[_N"RS*ee Zw"R  pEn~^~m sUݶ= Y%TD2G0jr^+'cʑH,vX@(*M 10֢E)#zh&0ΠDJ1K̙p 0qKuƂha.wB<պt%H Ox Dsd-|*艀 YP `U2D!NZ7KoBɴ7H[]z"nԃyĻZZ,Rjt# a#%UyܼTjw'B)j>}yO0}W3?~7w$"LD$gFdӗˏ.兀\_g`XҬ#GG4aGe˞8=B`N~lS/OZNrm?}ݶzky:Us8y<ûVtwe x % nEĢ¢A;CL\FvD]BIO}v֯ϗw~`rZ˩ I?9A#m9^>MZW~cʒ#1iJȉiމ:=0kG<D9 wDF;> @A3o3$xpK鄁 M&CAL;(ݠげ$M_ӠpjmzN:}N^8fLnL{=ӄ9I XoHÉBГQޡKn"{SAIËc%Yfy*4M0^aGB q*Fsq[ r/-7%ݾ7Hz,cVa-ӎ'nx?v-Y;*qM)1!b Jrݳޘsw$LLS.9+1ؙY(QgcX|}  ѽ~%;2L: Z6$ sXMӶHOxGxzxܜ|ɸ8XDj3R| %*È>} `a)T y ZG8HBZTi,YTSǹ\zn}<ݽe~"baA@nfL\8s).'%BZ'VerzP5G͆/HJb$D&F\\Tda-UYU"";G u/jFJBXZ{2W"6dFDX XjX43B+cuHIdZ{R#phBgYޣ qm[7{' ^P #B($W q*"L$!ZHRu-"dpfz&P(%T## 1ww4d0TqLKfȢ"NUUspfeĭ+jnDPb-, غ=\/ZYDf?~z%-RŜJk<c!B(q{xǧu&R/!~˧ǭѰq3Pf) 2EB QUpK-B݈x]'һL{\7b rk'-5ýP͞KZ(9I;CJfKž!BA'kO}__.|y~nSN8,=^ZUUZ+DZw;L1wjԷI rոQ S?v }%tmz Mޗ:SAyf{7rgsQ9`'`x=įq3< eAJ&}W<}@8zoמJ}ct=^ ث1sK7V)dc^]XiR<=8W{Yk) isi?;;|29b 8M8>KW38FF2fM.; qE[(5-;3=G`)N| 7*GK+b@x%ϻJΫOnvB|kJ1{@s5%WeGsԭťUaa#EHXH*SUIkR朑o@Hm+1!fIb`,kx 黇nI$BLjnLfm"Z˵1wy//u>?=珟7GK0d]Y";3"7?˿e[j%IҚ]Ko^y{ټ{kD CI4m3x eYV-UZTt鞭u.fcZC"2û;Vk]_.H^Y.*9=DZAtD"W-BHt'qmx{y6n<< Ͽ<_~z^Xn]];HQpwlחͯlRK,!a{ vm*.mн"vs> ~Z smxeL_q[S{8IΛHͩM73~E5=_}_},ez_hO%4|\௾đw M5ɜ/tw0Y1uSh?c4n#_/ڱ(M\ 93g9j׿O"cՒ2m(NPI dhraQH& Q(ckfV-D)BjRFiYAED=h,2e0F[sFk3,cG8-L QQ) V>-|.3̐*H-U%5{iى2 ͅN NE)g(U4$l45A#rKawzf>AuRr}U/$XYfEl5%3Ѻ?]ѥZkJOO/Zc`)eڷ~~|G!FR]n*,'e!V UV-RYD8枭aԅEp؞ē痫=_So]7[^ikEUl[OtZ?|-˲<Çw/ms/uYZdNs wBFD>~[Fv6nb|E70_~w ޹ܥ0B\h$#SC; :&3Ž 0ka`L|;_տ~o>^yrȿ߂_}d;US"7h@s7F3pwFnҔ%D5t| n2:*O5{[xkC3yXsκ ط3 Dvy'S:8z^b?$ 0 #gwb_3[zҖچïx|9݈>+:1-|:6.]y.ޫpkr0| 7Tj\nn.Q̵ѽ:^eQImL?1&%qԅsBD>ʕ@uEb0񺮄n-f]XnmHd$w5R,|,K,x7FFĥ9ե%DHN?a]YHP%92;]0KNkOV 3s^Uy 6dT_燻TG)"J¨ð$U `غ&-+ "n"y3cETjYRJ]#tZNU@Fx@@v34p0xc:%HrBc\I())c&l_*!>'.y^OhTt][R*sk=̌a ru^t3N%!+=yZd3苰xDfVa V&e) PBfgX8%e!~,4ꙁ!ݶTfApڶ +&V)¼-9yRgHSRf]TEj~0 gL|8," `PVy +Hjw';L /Xj}zوop֌gyymi H!{ڐyZww /Oתr>KӺ\._^_6R̀ёɟ}RR7@fE 3M=HKH^۠ KͲ|鑬ON,k{_l;oMZ,pZ׿}cff񸙃=~OY ,DooV @;8־d @hR!}{ش ޾ IqC~:7w@͛Wnb~룯߾7 ,8NIAфǑ|r通􊤇o ʯ;^8'ao̪y+1AAo1~w@̹z8hot?tPsUu7][ z4U<ɧs|sF@>{}K< dp~u_=Aɯr/"Ў}Ò稡pTܳ$7߅|c=l|X<|LO?OZL#2"Tjf2!<|0g' ܭwe$dRfHA4A ̼z"b x AUaG&9hp*uq k!{$L) tO`RSz€Y"k2V#:yTQ%BDYS) KxVw'a%)waʈѡ=dCF,ZU2XJ/Oځ'mU1D; W>~P݄ܲ<>߹y Wfw+vZIA$ #T#~9cIqW#,5^ n[q} n!oADXG3ȼFcY/2k)̂aH,$^jeR@B78==ٽy$Q$y"]i"y~AkѢ:Cʄk{Bf"dxy cpPLd"&V#,l[s`dzFfnp33K !өn#‹;Ȃ͙lݤ,D4`wjE}ˌNփDJ0(ς#]u$!j@6R ,FNKQ̜:ݰhHbL:=G8!!,AD>V_VJ0)d`A-*J ĈZak2-ɬ B$-kC=>#f=??s:"c7)9dsS%N.Zpܭ=@8v5+/ ҭ3[Q|\Nie)qf{$(, bU'L ]2:a@0,@&## ^Ck~,xUwsH̃g@{~˸O\zyvA~uݘz싘h]չ=p~rp_wګ@u@xb~o1鵾MQq4/bĘ=)\s{O}X-AqzY qFNǫbx&XPn^lw8ybfd#F6Qt#c|1g+8N#ONC1Zo|)peF~d_UB,1: H8-cq.КR½w IBBn6J]Nk:f a %[o@". GJG8EkMB==GdXU$"RH@R@]T Gcd}KrO)=jٷ\x\FvR϶Y$Ϳ<_պҝ(R=%6ƑszQapJBՃi%gIZ\u J"#0?<yt䐵*mHZn,R0s$EG"*{y&DN8JbO8eP*RZZHT9"!,%I=)BG4gҐfHgNVb$\{$^YOH-`%"̪UY9VՅ) as-m bb]N岵F QHa 0 ĥ舐ދJAiU(DC"2r 3%G=%3 ,L=Hdɴ U`UVfm=DTyJfRUvRRL'܆9֘_޵qd[$%efUuy s1c0 ?9U)} ZIQ X{׎f-)EIiQ!@oͮm"Iy^_y[{z:nm=_.^|篷uaV뭮۶V45$KZcou)e).Dq)խB,pwq*e>Mc:u`G`>@j‡`ܻC_2 IDATvD4@֣[cE<&/w|D!F{yTO&6*;bu+?/݅m8XPg' #uv;cܻ|S22I;ep <r}㔽SX?^ ?hr H0}{mbw=bPptD6A~ۍt˩p?@{';~|ӵUC34ǖ{Gz|-(xDww?vˠziWXm\9p3Q?Cv{6\xKȻc=4C!!.b Q@eC~0p&ȓyvBCYDtfV"rCL]t$,2aQn%= GojZtD(YBITvQ9<`1V(>OfR>^.><\qfh2wsw9򰃍ܑ}w wV1̷omᐰsᴿGcZ w?]]Ck2 ;،QF;}@+PgAK]ywl%EauRu PhH^;h8->ICr$8c|c!1!XٳKG<I]g0]=Kcg28LG:>8>wy}qh3A771.k(fޡrvr\ :hDA}Ovםhl:=pc`D]$_DWduMwf8$pv}%+GwK;8O-jd]Փz(@Z o =}g׏O)eݙ8yc"M(#T'fQ=f"Be*`ʠn۵Y T^,hA2MeETKk `zC #"IYezr Z${Lwz̜T$̬_ךY3mL2u!p[3"@GOkQ̂BBJ$[dˈD|GV{e): I@!ZDdgf8X 3%Ty>;G{fL"ͣłfTNBRԓp,,I &zՑ< &*OJ%= )DHdt{5KdTXO35'qk'E#915V.KQlyp2Y^͛d9Im;2:Ҁ0Afa@E8Di1;ADfV-F#S, [q& hHkn:(-x424/:#zsaby!JwEn<=92iz“{?ɬɺ5kkov5U|,vۊN63 -篯yvs"nm[Ȝ逥DR88EEd?18=ӇgO0u+5a=бH735sPe:e>-'ay}?VVת",!N8/mLB NP.DAd3߶/zz|y>|/?=?=Jy*,zLtuܣVsx,bTX@|zUϧI^. {(YZ›Ϭpo܂خP7e9?}4Ooj>8A?XHjQ!G=wh鎕wDG` tԽ<\xv\NgڕxxQ̈́>B$(ĝ),]&TXF1C;fyy.J}ڿ}MwVAggwϰY$'hw{4d?H#ž8̴Spx`=dc9zGQ>l}XE?C*x1!mZtC՝waᓸ+U?~qH<@#^c3;?=)xLsh^нy$ 43!qY2zLt ry81wl}/2{Lw{`[@h4SW<DXk] BUw&af-kH0Kս;@j'3ݭm! Lk,$tS8Ai%d4s-@RuiYd*p"b*gsRX5Q ">u kofO2+U3YNJf ΀j@VyIs-\ΓfYe mF?$fޒYYX,%CAEFj)B8=-3m $hv΢d nN̢Dނ ̈y [DU۪DHlʁ@w5Ne*JiN@${R"IDI͜" fiRb] "2/!aID('a<ϗ=SsVHԜʴfdf^"(zGI-Bl-̓z[dsi}DY4<4 ͓`&fJIHPSQE^h3GZ4܅xk΀2E8HQ˘T2nj-(̀@lB֭VЫ[D|MWwOI^ίo>DoۖHՈHY­i0AT9掄 K! Q`5ts,e^^fkΙs,:DHaSqw"r 7̈"\T2AH-71{t@"jt/. Q/_no?~2Guے%[kA\ݪ~־|}z/oo/!ry:e#rbx>nUHY nONw`-P ;v۱bW{(ĎI92`^`{۝ݿڒJ L| :,u_!kΰK  *!aǝ<08^?$$8$Aps`1l%1ȧcw99Ϡ$]=ÞG=*xQ Qn;nޑdcB?-Gvޓi\`\.%J %J4r)D 7z9cGxz 7NCmp@f{}2|/>rJkut\q$[gN;07^fC;X:un|1pJ06d~?6p3v,H!"I]XU0>ba BI̚ UR,);Phn I@Q / ($:!!:MZH`2&4 kYi$bpI-R<3Ztֲ[Geo3aAɜZ g7U DE$iOKយ hn*, {!ZSm`N SQ g!E2JPpg82w{d2T5S&aP]VpW5-M LI{@31OܢG`V ǡQ4O՚&D䑩LQU&wWeS$9ZofV-ӼOb Y01C.︹h@[ wsB>b1񎤏y*ܕG_WsAw59:SNHzJXT 9xO8s|NT4N&(QQ6ay:!ԀCth~aޯRܷ:B;Potb;F{6{h8k]Yr/|tQ\ǐ:Sqy=ܽevQvki@=9~t] =ާ7ρʍ#X?4F0zd);?wE&0(SXdf`nL|:TYO1*Pھ\4KHMj Jsˌy25&92EV%+D*{tb-z;J+a \nEIAPi] 83\ j' 2MNܪ,ifF׫m[^B 3;&S zę+,2)Ę K:֍TݵL$eR6ϵ41miYnۗ/?vVYs/IDĝO/S9Ԗ9ֳ<@a̎ۡ} $ P^P&!wB$z& gO!t#=q}>@ eP7<씏ؑԣ_G>쐸|r L-N?~vغ*[Ƽqbx]Yf>$qE8y<݀rrTn|` #fA0X_:FE~\wcs&'ƯpD#:U ߙ#-ad^tDrEyJ 荇~Ls><~aGG Ǡ'p _@q|(};X'YTԻ ``n!o^ح넄Gk`YK J g>[@h$Z{ % n k j"[YMH;% <);k91ZJ@HEF´r(Q-4z^bL(߶,jXBje%\&! Iݧ!ݻ8f̛1G{PHk. ea0EY$'ED#gzge)D,L@4:AI;x'哓t0)I>j{2A~?<ϧ~xzyZޮW!g6efVeY矿^˵ZxQĨ,."L [˛i?}p׷~I?}L=rwzxT3e=WKu co ky"hw{rkԵ(GtW^=Z_ "pxD- ϻxķ{~tҮ |o򷿽 1Rǃ;6n2. wϑ >>~H8 u1j9cww#ȱ9SNGz IDAT#I,gD0'BJQLDYR-JkOj4$ ZOeQ>*RllnV2e&@v3G~QIQiEbQ#x*reR!je),`eY(:1,Ng17L%IQ(s1uZ,PH]j։9DI+Zq&IET<{C0r9[mID2 `▷ϗehNMƒ3[]ͽ`$ڄf1MArQͬ؉4}[W  IEDjufAI:eҧr]yoIKmvYY[s`2M &e\,D,TES)Hр7h IJ,$͒&mk3%m3tsotZn"D$Z6jiNFJLHa49 QF63 +LE 'z `J}y:O: ?ۏ_:p:]t.z}:w/KZ#r^><}r'}=Ҝ[_ꗷHufϧKƌKX)'p|y[VDx?Ozpgc{dbl߉~NFПAE~G1mv2ܣ,^̏/E3`otdžǿ@ v$8P }ASb ۝ڟ7v(R;zo@;=Dw̺SwĹGaWAlGde1<~GvF;>`I{U@h뱧22SH7x=FwND|?Mrz{z1WvǾG=eJAqz鸹!fh;R*UHgGD",D`2wb*ֱ6QEev9̌;ý[K|!s0 qSDThRIfHfEjoe" xDK2ȵ4Z-=e2Yt{+("4-IoksӮEּ@'k"@|۬wjQ-LfikskO!bjz*$tښwB{@z[o[sYA5q ̪Ӵu Ge ("YDrjDԖ*gƤp$(3׭f'ALՅŚWC8 R$#m]kHZ M6s!J̴5lxcfmm9FXsdPm,YVyԖq %S&%%7jh33{FDNZ/Eeۯ<(A;vzǍ<[v3ګG 4fx2&w˶A2|+A{*?ra7N'=v \Nj{+3ǧa>UF_N7i|6ipWrk>SuwxlK(᠊wz+:c1RXb?k{6yS4ǡ㞻y[㴿~SYϥDf;HF0iQ""&V;s`QUHW! ̣HL fJrB gAyLI(QDv^ɑa:dEEt׃Y286n-@Rй̬O-n5=ܳTO^."]OڢE"V5TD %A<Xp氈tVL_(Sdr/kHHU%H"U&!+$ITOebCEu**`!**5uMmfq &HI5 YINRQT"("#h$xvJY$IԬ!aKg 8AԥQ̢" RY<^RyUްi49aMS Iyݪ[xxK L=K< XٚG,"T|9fAϗeaܚV Qm5d0un=pkқP iR>r4eZn[yUXHuZ"y-K Ԍ< HJL©*̘֝," Nʓgzļi.p, @2AS -k5da`.Z{2ID2ImmiBY()`H2, gv4Ӽ,zƢç˼|~~[?>\ $cT#'=RA`d*$3-S)S1eQpj)f%Zd$Ǎgk DqG], q CƠcϟgMz[^@xZ^yDNa t1. td䗟٭,ώ^FȗNBhV6|;tȵWzo`>snz5¡jRvP!| B˞nˑhT$Frw|̫Ecw*s֟[_oq@q69rڥׯ8u' |FZyo-ID"Ff)eQo$gdv"Hx+Z QHU<&wDfzDJ UeU:0uV ~:SV tXzRUj- uIE6LwA^3碔ܕ12=G#ȡ һI}3͈l}$Ē&€wψ\`R숴 =zQٽE8bv3u_ûG͕CrNl2jZL{x#">.jJ`4Q1rlu*aC"#2G A$DBm]\[\[RUNu2w43Ռc(Z ;YVei'EJ[;gEmrLB#dFJZJi M ZsҪIƕ>p@Mki̓?.ۥ-d=bV[w,uϭQBMFzψh@2!,T<2Ct=G^6wb:h˺NUMgP¢T7Qh;=L[Hqzl\(<_}wW-m-dWx7W??۶ϧ]LOg[k)C0n(EFaU$)[oi*;zR$#x>=HPj)L~l`S^z7oK+l-֭;|6 Z "}?bdJ\_C8~Ǎw[(b@nXٓJ`x*S*K*"0BeZxȍ2;h5.cE<8 ;P{{qwG3tvNCܙC ;ME$mCܛ7(G+V=?7B2F<&w*2d+ony7=,#n|PƸciߞb_C^=GmJߩeC/Gw,sGxP5#k)H* HjL> Zd2 =Gnې+YD ZUZj\b̈!&l-lHQcֽL59IaZJxjbM;A gvo-"%=",g1EKYse"ܚ{`XQ)Z ZmsСGHLU牂hmTu#*Eb@N"4 33NըLE $ *i)X5 Qo)pV_!EpVU觢"z5Uj69SzED9דOi#Ȥ*0j #.P i2Қ|݈] SJD4,&Z,Wբr]#%3'"DCQDV;W-esw;Yb<=/EITyf~$^&R,͠oͻϑb_b]l _ڤ<[jQsp.?\?_B3>^u{֧TUv.^̒|mԝKK~))on>ow+@ۍg+z,EQ$j*BEPUQd1 ݙA/nw֗zX:>}c)HCF[Fw`!0=o仿Ei1r.8[,n XK~:!70-:gQq ð{=).I!@KJ@%$~RHoC*P<;:g—U[ 춝_FGAW>)Gܹybx$cbFf8D0%(Rr(.Fd0sP$+dJ1y:4׺:Y.RfP=z)e4֪PVV/륵-bk-TfpLJZलZn0`JU]f:G1 X;hp͓d2Z0%_gP+\ӇoxZu.L<_Q. TdHD Aa*4#nF uk Je=#J= &=Sܱ!i"EiE,#Lۇi* Y[О筭oy4nVzzx$x2fbzr=\H^˨dddH,ݷ%R"}y|lPmVy|˚ڕiw<> v:2ZS^oj󶭭=#.K(|~zTߜdTE@WUɘ ~3kѦw AMtA2MAt \,Ed%dr69TMK-;>}m$ ɃH yE^|ƍe|}F7Ѭu-7,*݃v xDE34fHU-Dd*)@Z2erkß&,=yl=1 }]޳"Cz'cTNZz x)YDh!9բ=Zi.sIFD{:ϥ"f{ڐ5tKgDZJQaCiTU֮bF'U-TLMULt Q-S!`&P4*LQڤ6 #.=$R|6hkKh=&Bup[dz E T*:Zvd(B1٣Tk5fd֣J亵 7֛rNUzT@a9i%7GzFU0=WH=˂4Ffl[[ZB3ȸ^{Ue&:$.=[kH7IO:M$%3kٚ[Pi:|eY_7"OiHL/Tk e q&$E-zꞟ>?/?*l}Sy5\Z&eMxK\/m][|[nm ֞@zg|ټ5`w$RjFyDU3-=߯ԤPe*c`bS`ܸ b"YLuY!@Oxi\ p]:Ud=q&sܖ"umVJ5tm˲9'mY.[oooEfS?gΧR>|^}koiz[4秧RfoΧǓUlX#‹mC}3?~mD?'b' R1ʨI9TaU*S"[RjiMB!9@;~3G1%!w&1.,Kݫ;>x4ak oǭ+2w0*'˹q7Mb{F2A$@Ak>3w 35B3! ~oAH>?wBܷٻ9A=H(1+$(\] 1KGy?sRIbx4O;"(dTer&8N.2ИDR0ô(3(`R%f7E&zDBhfZdg%P1`;)AM#R@qkCǛ^G%qCa4x#ыJ56_c;E܍gw*}; `X HݚG5Z3^{GHz~cnP{ {,gWN7=1: ]GSXoOZmKHUL*by"d =9LG*6y*繘rk )D*÷]Zoh(TSh -3@ۺS3W{Vm$YJ>Û`RὋPI̬*i֝4#!dN*-Z2U#=[oCS) ;h,"=Cu󥇙dGtdBId[PHqwA(zRhbCl}WFJ1kl .}JDxbVhhy(^<[ ֪r+zUR&\VOI7[%SANZDD>J6-yL!<<"IF#MvX$(MEMe)AJUHt!0qdNdmMB0:21zC&p={U."Ԅ0mhm`lRޘij5m꫇WX3"};%-{kCr4Eeg h0S\RTs-gr>OS-o{a"Fuz&Eڲ\MM h T( /Eٛ_D[;)֑E8r\rnE[>E0OUi|ycs|.==y7k{˜BMw$ ';ϥX~^2Ik_ۤ8?XW_VU*Eog+j>=g窸nWLVe[>~xT??]&2 ՗3O9 =&ss!SPlaE*f Ӭ"a(iTI,J^N{Vo?!k0w?fF| S>Iݡg_b?B0e㶽e/%Nedʁ*vO0*B ')(ݝ=s402)daNmCŻ*k:E$sf%!HE"HIͨB3]e"^4P";{n3Z@GH'QOtݭV \h 2Rw$ p*-Вy.l5JM7ͦj6J0Xͧ#ƈ "{eR:"38 C>#3|*\ޜj[Z$YM}Kxf+ {1B"3NzlH_fj=p?UEYMdg5 pV-“ BV~Ԟ%ErՌvJiT9"gùZVe,J#E҈Qkر;ЛpQG<CSQ97o9xgq_b N$o55ՒcA)Y>=Zcw3mB1& Yb- VN(5FF h ۖ~~xE0VTSw@}]΢V榹gUd63Wt]{;7YTLOمITRнRͲ}]O,k7yDD [HbRżUyL<Ȍc[xU4elٻ(wF_.[A|uPˈH)2P5uI[`5Uܶ Q<QőO&\^*dpٶ|XFP5GQ$OKsuimkSt^ηzZ{k.Su]ŞPme1v! 꽵eFEB UڧȨ2mq=~ÙcݮU U^[bȖt@*tm.QЉ`k^2͆,3FHRHHC AZsǏi9u{<nAY~\4>WΧS#2nO˗/f!tS3}"R݆Xvb #Kmzdy|%.%GǞ^'Ū%"Xͪk-&a1qnJGG(A EHuR<©!߲[Q|]opoCBbk*I;nE.bL$xKQ,BզN-Ed<9C3`mxxtYdŴ 4U3mnf̙]e5vcwաF)cvvn@թcWl*f$YHcU2-x(Ts wgIkLwLoIpp"]85*.fQVt_b'5kL;EjzS9_VzwT;0&0nm>1@ŠQa-kdTLV;*BmU ԽP$AE-MB\R+:(3=GnLFo}G@) 5޼5HUT ##b1^,k r-xH* &,%!#ܽ *'V!$dk'˛r7Q*}ߵisƭ5cŨA^w5]TTZUT23i*UAR 1 @kͦ8ޚC/=ӗO5efȺ\mL"6>-:1f>5W31Gܶ`b21܍U*!]WIQexT%כu؋m{KR͗f]Og;-綬.~EKkZq=/nۖY{k?~>'Kk?~x~xwU`˩WheiimǞu)۶]ۧ_yGU) 2EJ-Sƣajh]*dt5ͲR*)5$=(B$ ͒@,dwn_YHq%Lwڅooow/G wϞ}kUc:S6YI#(u9 `*1=4jԸM &*Mb*lE9ؽ몋& UqqvyhrRܚ\U{'VMnUECM˙d4@MPTh*f`A>%_byH1*#rtd:JL~߯Q9|5 u)}{Vm8Vv}~{u*wxE?x":`ǯ_)Vٺ"$ ({^wNfO/^܏<)y IFJ \[P'+ d4Y^ELU!ʬʘG*`xL$(Ft=$Ib~E*`j"33m5rVYP1T| 4b+(b8#LyIW]z۶I#c]UfGĞ)N[7--9ѺUkֺ63e6{"Ww.f`ši^nJJQo"[F LSݳJM uRPEM]*[kY Ph.#dV$ vsĈ"g@#irK{ ,U`jMDFAwiEVAu503I&$dmD>?_o}2Pnkk/:;kP3CknSsr(f1U,qtZ:lQ^dܗ:*#*+)b*k Fqb& aƔЊڮhřO-KƐ,Zb6"jmu렢 (#k~ߒzZ۞K_XUx~>ݶqǯ{Z " ?n<m,t ZmT?}~~>??Kk]/~~nizx8\|ӏN Mβ_Nlq?W'oqrqU(") ;֙R %8C$RVԭQ2$:o‘.!i_zc|`?}{um=y.\ UT L6![gpDI<9h+*)6seZLU(rggKtjc$+,?lBQ@ U+DPdMQdls?;Q,9zcmh*`6Sׇ.ݟ<4&NЌvucM\1g"z/M|vhHPIi% e*f 35ECRSphp_X}7ʓ^l 䡁~?N[}W1*E)֙7})ehN$&vOwɹJt*˷V81A;E P#qJjyo"jFKu,:bBDo!>;+pQӹʨ1?"3DoVVqm~c @Mea k$Q1FQm*":# v<̗| f+"d=^/}Df;c䈈Q%Q$֚JVA`6P岴fN D3($9# 0+V3m"<)FRLƨ}mKYe GYB0HiwT}YeÂLTAUfӺOssr@TCI= j6WVD_OummL"jn*r}soFd`>M&ly.ŀZL@}Ԉ4SQ4_9tK)2M]\*8 &MUve)^Dfe1XUU)(sw`oݪLL8}a-ݬM(* nLŦ佛,- x16@ZF2WG3S))=G!$`9_\m^koEQT@y0f b^MDd),A>˲1|zޗ*Q6@i 0i UUu;V+́z[hd/r}W2':}@0rԜwgR?f;zx󷩈%ח@d9f :iHC~X/߭?W{Z*vp/ݺ`|9khӇ8Mb`@!l=jw?*)87:#&ڜhbfȱ,r * YL")8lOiK_ϫoEdUf&1Xd@JEUZsD÷Jm,aD߈@{6SߪsDT),#oѻ"MUMFim(T$ =R}QujSDI1RQ ̠B,Uq* nZp7 Yj,cҬ}w3]V/"cxB\ժRXP) { I*%}]N&OhY*3zS$m,Nj)`5s*tWzh5"h+=ՍeeMy}o>!LX|n"̱h9Ч c *iAX""誨XdBhf3A03ESQ JzSLԪp$."96&SԹǎ(irz6)[om1u[-U?>\g؜*UE\1GTf,z7m&]ilu/y7Bd Rd]VYBn{mODZSVD-;{[99cs͕-i&xW땖.5[B,!LsD&LIfT"y{}ol}F9=@dzu'j燞 N8U[eۿ[ϿܲeT^9_/n^L5+w"ڲ/=n;[1^ǜA]n5W_d"HP,Ơ*pz}wϽ}#N"UR߾|t^?Ot{?ٍh?~OV#tZw/a󫪛(m^KLe*ˏ?dݿvo秒?=:H@TXGeA p=fHNwoUQ01nЂ7Tv͆ .u:T";ҌվglZ]N^ g+f> )b9f9v8ޗ)m@)R!!,UTԨ% PU%W} QG 9AiШ R\}1Y{FDT1ULU0ENT"Eʡ7H ",(srL_K^+UQahEfx^gНϋ~QKMeJHsrVV<Ԓ#":)(o"hޙNoO)uT~-&aPEf ˲@3 梩- #?y>=ԛ ̧eMȒ}]IhnD ҋTd7ݷT2 =5YJֈrw"o'Sa*Nk7u&&rFAU T٫BEҚMiPT̫7FNh@`#"zQJm2ePӢ=eY[k8 ^)RkTrFFkdDew[&YN.2]Y۶UBt_uS ٛO9NL}ʁn*]Tl=tw5)<,IemK3femaYUzq]̀&+*Ff% ;wzEOk055.bu⿯-&v e,Hۻj9fm6LꩧA%Qm+*nE+22[&* ћLjmd٪6)l{E=ݳZkv^Q~8ܮ/5^>4f}||fs|ߜmyX~,9F)ŀ#\/ḨRYդFNzo7|YO?rʱ* IDATE!UHa%rr٤{`>.\nBYCłTSbOٛNuB(=N]ǤOЅ]tQ.Ʈh@jdmͷp )Qo<䴎;ޝN5Tg_w-2זzM|䨹n| 7WDκ\n Q\BQ"zyW6ڸϳ] R$+MJ " 0g:)\qY0* ΰ(WKhWCf'C37`@LMv(o9o]}MxżU$`ǜ¤&g1q]MάE.}[ia3DkQTZ$8‡#$D7Og$Nʤ&-QZ8S-9H"0TPGܛ$iq?Msux&HL/JTE.UE{XkTRDg"!1!jVRYD4#lV"6%mxP)c֔8P;-O#c߶1U#fI.~x)ymgBIyS!m(mHoT,͐bf t][k}~{]1"Yأ 22Q5 9Mk޴7Ԕ11b/ZRL(E[L}W37jy$ffZc_d9MS!*f֬E698>23gO|Z!lZޫ*ݭ}1;gݢvjż[s%:se*cԾSEt.ͳ2 թ$XZwUL5Y'ZYo@`_ ZMlj TDT=ʒ:9nfy[=i6g 9Innjdd6c#% ,z*VƺUTifn(S4ӈl& "YS8U1Ԛ##_1Ksw%߶VwiPs5sh"`onK\|\vSV_\"q -uef~TWr]6f*$k.U)t]ɵ2fm'uY +̽RQ5~%=}r=$>BHFu\6)o?c쥇z=M L_zfJ0U i؊O6}%U*b!(cۏyUƯևO/mzn}m}2[z2k0?>ۯ}(u]*``Y[w9w~p_p?{|^{Ոʱ~|w/_?%嶿ߘ. -MpntuaTФfTq@2S M@ɢ1R5?Y*w5\&blķ1;?+մ)wL`N`),Qc,N0@,k6N,@M3KE[7W( Dժ&JDt3"ﳥ Ts5 ɺ,벊}DP9dU8^2ըJ*#S96g*69:-gXrfuKz-gٛ*"t۶9|^/K)Ĕf.ͥ[.ͼ-@QQ77SE0ؼ;?5Fj&\mc.bf5GL b@km:Se}0!YzXE*_LQ񉥆P)aUD"!r[ L9 MMFToC͊Ֆ&`ƾVTK(BU*u,k7=^AaER2MpjPGm{+2F~}PUT|1S5|1 `[dj$jsT)Ds]M$U0X OF؂*bbu|;@]3%x^Mz-)6XL0z`%4^.[ -Z/w`mU`>{d}ʼE! W]ݻw} #\EݔeyHj2SN=9<6nqyl11Pb"YTrݽvI kibvȺmܣRn"f Y&0AzZ[^+jEK^QUEWwH7/m/_>{8u kc}7e<*/6Rt@K?O~^o_oUT_oerˈ0mu9w|\ן>+ֲロii\2/Ld}q]b??㏿_ i^$Y"yTQS]T׹H3q+VmqH A F9:Ӹǂ|WQIOڮT~l4MX}3ul|Ӈ5T`l!*lȳ˃hʦ0+MlN͇_JY2)8G!e%j$VQgkxD9xo5흩1!PE)*.Sڅ2rߩ g, NNH;p@DHݥ3pVwȑw8)N[7HArM46EoFUE5\E郃,]kޡGNΉciW&$T9ar>2q =>u ' lq0쾯.~.M'rNUb⒂Rt fv_teWTD>VS[rTL͉ӼO<Qb(ST7in$Dw/nic4rdy;EN84ؠ9CwXjdN,(Ө[TO5spS~w̔dzNMܶ082r{|ͱNږbb9clײ HԠ TzQM)e&(5U+\dUpg~]yUXFL)ƾDX֚uzXT#0*AU"7Pi2ѡ0Pԙ0;ZU۶uʽ[ (̚^ ¶TW [k#Dmm)V͵"fe0F#xZ|\JD !H7nT*oMa$͘{E% Sm97 QA( !l}M4aYՂ'ಔ0*bnޗJs)d1YX<85k3 3WZQeko{xQEO,Un5JT!3J3+ܓ/[#ǖe8#$ofުʮRP5z =@4׏Ԩ&~BF*u=*M2윽X0K\nfַ f@\Q! "͕+P`+j 8r*dYMڸҞw}>v غf*`chQWˢLmbcV )u^'N%q ٚ]\rdIDZ3Vɤ)QGeb(`JEd>b4ʈYҮc1.BGjrNL"+SL5X>*,4:ia"FM9FUH:Qr]DHc}ۇrNb6w<^`y>˽[c~:- f؇f׷~t=qf+Gg|ˏycoWO[|x|zZX|񺙧hI\E>|W~~99p/5rw?ݼ__w_BhUZ(y} 5qE5W5%RͩH:|6W\<ڣ[l=kR:&UOI.ݼݍ S++zM͑%(b7~DV٦ܜk5>ͬZwYƿ^SLoQ7[Dt,1*m}J)5LEsΈPHDtY Z9)̊qeyXW œP+7#03Z /j╫\̈9)USfc,K*ƼKe~SU+ksܺ9"JTܜ9?**Gl#]`mGKE8ZS"[.j(cdͨsW͈u8PeQ:{wdTB7{\YXS6 (8Gb5aP)% tdJQ0wnP73ě9iU /R܃ťۚeSmN3BUmNj!m*RYP73IWRD* Y՚kl{s&dLdQ3Byd1+ŵƤ 8$kk[(Ne*EcF8[@|Uqq}p2'`%.#=O<ܑos.Zu,jmL2Zg} n,1I \iiqcu|P+(A bodO߽Tfs19 4]UpO/sUZ MVk:s_XM9G"DX ڜ!暪]y,]eRTUw dRTlP}|+2ߺL\J(?.yO6vo_^wRq?̔۰Ϸ)fdqغEۧSc/>K}w8<^m|ww>}÷?۷ow_ٿ\rw \Zq[kRk~B׻tSUYE)3SH)鸰H܈/33*( fDyR|):O%R^zz+VQPH)gȦƷ92JתJL$Z-{7<+(xvi2Fee'=jg#S&57ାX gMشLLטB|*G?$Mwأ7޼O9f1j4s3l=v1#X4iy~|gnǘA{9ݏ/?Ym~O淿O?5?˻7O޻ 4Y 쵢D@SAduqS%)-|_t@oEW kck1/xa,")ڧxTB( 4e#4oZ5*ݠJ)+SPU!PR2;}<ɃZBBUbB +@ʕ.&t&p!{U׽ΤZצAё rRU.N_m2)xZ/*s=So@&}U ]q9CU՚.I \!s2,25BX"MlI-"9O%XCkR`[كI+5^)-pA-ka7/veki^Ş[Q'w¬y5ޣIx{12Mg?'Jixa]5~CƬÛ=m_ݞ_><M}>n?wziߗw"dt:G^j=SDTmZf֚.SktWf9\9\>)bY񪤗+?OR+5e.zp<5v*P` OYZӠn Kj\[UlAg[`ιCӥ^>D$~f͎\?BqxoYL7{hMYB1gfZt:Y@#J nɜ%ET!1$\QiV jk3c$ژEͬf\GTbn}f݊ʲǭ3+Jf{cew7dV#*O[L."""ȪiT Tf1T37/DdE}5W*!k}P*ݸ5{s. sGhB5V2U UGe|smMLrLdYhsY޻wEYcW̬D"O4Lvisff(K:5kMP5[I.1ױi"?t3\T%Tg]La7ӌ.kz޼摙d#2G 4/?U3I"u@.<"):O҂LdQQY >(ޮK i{A7FU]?Ƿǧˈ=YQY([^O"d%#+vt_ nmj:2q{>&9"EY/UDZkIfehs3Dak$GD2kDMHMB#aq#$c$/ƣ:fto=XtKkzdJ3*eyeQQO#L>=ϟwZw[wowJQ ŏ?|)޿?"9Jb/ VXTE!X3jpX&/CRZm,'TWXJWNj9 _I Jk\cL6.X]oZ]]ݰMUIYv}"j >UEpQtLdQPgaz)q[|+⼚\]6ͅUNn̜\`-}Uc&jg֭ ʌBb$Y+Ii5_+u"aU "k?^ss_%5_YjsSz6-1!UœbUѼր8K PsaYHLԉ=חqmtZDQ[`ѳa"+Jx.AN"9sR5{g揲^{Yիɻ^sqU },_+(bkpOZ113OͻK3(qW[,/?PICP%MsN9K,_Asaʮ&z'i*Ժ^Bc2 Z(*6DEd"5ߚ43UٴC"&jT"SMzF 5\`)&\YdYwemYJ!KAfM jɓrB4w+;2e,͙d%5{^aᎪ<.X)s`Dn]3 UU Yɉ}ŀ73Iu)&,4V(" 2g ]dMIy>F$M1H୅%R{"FdDuOYĔ>]{,kn(P11l_^FAFInќ3\ĭVURє#pj *jQB[A # 2&LUY&G%!S8 ij3"DjD2JQk9f(T;Db*ʨwp.@MXp42H4措(&:ho*+N [~4 GVDPXJٚ:%sԻ5},iVյ>GyOOgWU|xn6ت^x-c޼=co!33c~~9]Я:|z޷6yߟp8b&kOzpi\Ɯ~.W"n^UE=F1k;̪2wSPUZͩ\תlj&RK7aHʐTֲʄq %0߾{yz#(ql5N[{hvkX )x_?|~MA`ufx|U_[G4xy1~7??c͟_&s LV|""庭PB;@ѳ*[ٯ'K>Uuf Ѻk$JP\7OSPVAkL&RtaS 2bU߽0Sg!%4iBxC-D„*J\fL FWdS*Iy8 *+c&\4T ` ʖg,B$m"\N2@u g#k4jQ2.ڢ)$%p"}4_-857.jGwX(Sɂ.~URprDNb jڕWe+tzv. ?R) J8?` {7WM$ Ƣ.a_^ \_ɒOMjSkuֿJb_z&HTYKF04LIvd&lYFZ+HTemP !jYXl}8*,XUPfϊĽWR;anQT3J-~svb6⛛TE3j懴Z亻IU.nobջ~u2!b d/ L+̪c&3#@iΐIhk,@Iz93fUʸ(Qn^NBqP%X񜳵Dsfdqf~434 *p3GpM>kvls{1+E j[VPi05d71Řrj*& qlik*}U] 4ь, `fJ{3jړ]T͐)~_4c,~vRw}Le<6-sVQiEW #rlOL4JΉU@0DՊٯc?2 Zx3A^Wkݴnj$9,`8jfMޙc3(7UF SWqU~L[hwcݾyx9~wBۯ޿uW\sPwFyG?SX=m Du\_.?~>/o}xWU%4eR+ n[k6GV}f3VDOQ_!0eY@X+Vc?-_ٕlݫRPqW<6$]de AJ%z^O3S7W=+Q*Jdp5JScPVK(Rp+ɵNj;ckBPLe՘$g2QUdR5j'^_eURKjkB""$D} 2„ \\))/$yMQ7,Ò\yU,@}wyhǵX#^ @19Fme3 Y-") )Z/;'gt}ѵ K8/=*jZ×**I luK{Huf4*Vv>];^ |ZHA0(pZ;뒔3ua""%O)U$ iƅ("sҴw_ <-HRͨPW3q3ߚA2Ɉeq?R!ddIfTǾGXXP$l@2Q ="__$jAwqLD۠P#[˪LmNՊ.9"*\W7̑}`*3cVΩa"ݍ"Fj$&lUyM&Te_M{>fH1.zcqJT(kE.{TPw`*xG͒oĘr,6sU4#(6X[rת$*}Q2D-IX޼+o1X6צP0KU"0&GD3 *ݷK3~_vd}/㘳m=btq]/ƚhǘݻ #|>&1'U"X+Es9dF(jZPGvQٷ eB;r1ژy#@nU.֓4qDv^L%%.ҽ Ydd-XGgM}.snUm󶢸nO{|¥ `h5/Mܘ{o3˻Too{4z߼qJ\1"$n" ?m_\Qݪ֪[}ٳmEkd1.aeYeO/LH # Lj{jj 4w3j^z7޼99YE%T42D@dpI0ԬY$]E$WHE͊;TXI判)3q{Ka>=\4ff,1yJ=\{DkoO1/}LJ+ŋ<ImT_~z.aiy~A?|||ͯAf'}ǟnv⻷Olf|Oy%jgZ~!Q Z!O/j?3?۾7?___vH ,9[Kht+G)%2 q31Ǿ>ψWr!8qŗXVi4*NuѱQ<ݵp6)*kd@JB|wSsƺMݺrӗy-g cX^0~рp*o會塬C,˼ Ad8";K*9<Y&"=6(v7cVw3E!L{kktDxySWu,D-x˥@uYTJYGFY8"Kb(Rޭyw_}//˲,kKo}?'qm~췱})bvOӗe%Ͽ{D\U[5R",Uzb5")0!F94<3WЪSy.xi(/цՕ c7vdA%!*>-Tl9ySĢS9)s)ժ4.4HyM0zUZkɉˈw֔D.ZQG"!*Q@!#in\l)*T}` Mؙ IDAT`rA~X4Q9<;Q rQJp#ADf, QB > 8)\qȓj\m׃)" }e6b`BfLDJS5(Daʚ'ߔvjCIJ`"9//z1M~8ud Y FKQ `.'GEUMnM̩lsUI^EQsQ5ʢ2J 2\D??M#0 U bYH5iȤyǡ3]dʣjHJAe98?{̜EYGռ~L> fA*R e3Qwn",am 10xZZu#+:UJbٚsR#riyB6SՖ]TLq۶LuTfcJkyIJrԸU3#Y 4 Y—~OceT 3'0rYd)jMhUΦ]}n6J:m]Tr"̦ѝ*T=HB5R"#9n)&PWaYGŞl*,bDĸukjs{$g " SL,׵nkL/w_~:*94A7[ṗ,d$j؏(Գpmң,0!BE*M,FV\幵T[w=1].O}#Gjx;620FfjNNы*OT-3D覢zDq;"UvHo>..Ţ \hkEjS\z"}#8oVeSek{o4+8KT`3McO\<2rd\mi 4Q0!%2?iiKY:ȪYNDp К]uybɹkPY1#U #J\MvT+ku}^ 2O-7Td& f U5c$T2"!e?[lk_.PtQRWol 67wq<6޽><~QjVo=eb@X0>jdB}7Q3#Kd$UͬۇK־ 3.9F,,S9BD"KՎU|zZ?Ķ-"(1Mdn*Mu{HUMUSUºtV۳T"3GPUO8\ݚnbۛ:LmR 틭RAEv??۶E_oǑ.8 ޶x}?zI}/oY,)Nq72*"[6#j;6Sږnޯ۶˜,wfqF]jx7_.O?3)b,X5,<6|قYMud_&pMIEA(d,>2O,~MZ^9V@f⇫9V-ɩ@s<eP0ʯȔL(&DcN29??Mp(XF!*w'*'Judq`)f <롪pʃ|8i&01"_oyDXY<,jb C*95U3jΰAB!rj:3TNN91 ̸Vr9ߧd01bTdm"&ˣ3+]ф3B>"2e(3FUf+"3r 1KFqdeQ&'Z66YB1؄Ll2 '9@y=88(px u{;mHT-$E2E3ӨFl3̺;TQCw1:HI`f}S HeUzX<y2ڕ|OO{n1o>|<"><_W-3 A6PnieӗqO={ج1yU7xOm;ʴ؞_tbJdMnݤ#HvZ(%"3I3)dEF*@)jW X,Ud''2Bf?!r*V$f8֔.L-2%/jE ;U*&]Rd)bfy6Nf]7rM Ys͓awR)Ya;HP}& 뜔‡" dЕ>w$&[ytZ0i)-@bn6_ URIk&P*x-UgxRftR5  G5dJ B2%`lGfCfP$('zo&ɒ*)98L3T-"(K(\lڙC~sΧX5CZ 6-dI,ԦdSde6\"0AHĔ.Irm")2V8YLcӽg6YVS/&6U! ijMrf ѻ)ªJsRRkqZVVf2!H<3KT!UYDdĶNv3_ښ~/RsGU(z@ta Ԇ \lde[4ڭKYRZKP%x&#vʈ4r _/,&pU5"z"%HBItۑEJ& MMPq*!۲fbM֣"1bQ9MwBqIYYuywQ)T(HoJbQKWHKb mm9ͺTu2cmUFrlwx^{wL/.8c*Y DZ7uy;݈h̵2Ztm1\>vi#b1&ӲJPU < \رv7}(caZRծR FJIbbԖf<=_]?[躸m T.%fSm,, B*QY:ƨES#n7O49aZqX/֯M]:]QjNLy@Xݝ<ԛHUI-{oLVvH\8SfVDҮڒm]WFoKPIum]JF@UudQ ¬zbӈP QUpS' bi }ۃ6 ǭR]2\|eۑEl==}DǑ1ʛQR?ktYZDkdh?|#Ri*v1u)uYm1۶t߷zvrmձ.I~uݷ=Ȉ#7/m;FѪQ&1Yf67V ۖV]yY׵0(i]˗//_ٵk׻~wq 5_md,924LH9|~Yu\ןx{y9mwwx8Ç߈^_׿+Ps,EN=.0(+:U2Snxp T0 IpIL6RJjd5bux@G9˘Ȫ"?/=ɴRQ~&L< JQ%uB]BNN<.W)b2)R,-:x)$D5fHc7k*. 2g&dH$N!:xl{NRN89YS6IU)g3_΍sIJ(Byxa)8ԚnA{#Ԅ<3rDf%z3{sl=+r RjuWՈȑG]@HQ a~ 9׾."Dϸc݇< D)"`~xylcJU}r r V/K=dҏ}Yxr ԛ¥ndk֚Hm>[XEeېqG#9N) z`؏QI>bB?6LJ;cY㘩e=C∌;Q 2+k7)nb]R3LL؄KT*\,7d%UAeZ}TStxۂ`oRjz]ĺ@j^?7_Du712(G}iAҍ:c}} fՀ&ŷї2#J"zRV}YԀdGa7+'q :>h.YCKod`֤k4WLUQZr9#Rq)NSQJG57zFH$\i3u@Gdf{Vsa- 3kQ9ƈ"sA un޽/m\|i]Oʀ@FvU#=GUn]1!&#CnGo-+H޾n/{nRTLbDf#oW7m_[]ק6>U+ n2FD_5{3 :Fe?n[uSYC$r䂅Q߮7$*STnqa=>rJ>xg#cvU$Nd9Μw)q1Th'j7qS 2t9_JpkY&O9ͺ3N]W>_)wxaET\+ǙXt&ZNKTDןH=||s^:e27|0(||DC<곂: ɹH;ˎ9 p!p 8A3c3_3ZEqrq5I PM:9SN= 1z竟qMLW1S2g<њzH!rT!ɪdɠ1s,P87 97Rĩ͠$1Ȩ0-|bH@Tg*E@ QBvx\2Y; 3IddVS ~9e^82.f"_O;&j*M< f]EP"YۢVQ8#XRZkEx, #eB 5t0ݩ)kӪXB:TUMOd(AU%vS~ &G̈́M-"IGFdvDvR}*ͨ"\/`JaҦjǖEٴܳj.DDN/A`ߎ"#bgPAP-B&ą1vw?"R:e*1 Rt5hު\a&`{fG.Ee,maRjuw=K]M= bJRTj(8;qi}i֘ϽEt " b죘չGNXFeqYGlm(#Pvrt}qw;qf7E}qjf><D \ Պ* nemd6{_4=o?Oʕ3VpD]4a[[DTbDytyo}Z/=C_G_{*Krmݴ˗>βn9ϗ~ǭ^~Y J8Uy}}#2r?zm8秷ݛz!^[Ʈ/۾]kyzZ׷շ'/w/[* *2 P\/Ʒyqfmoo?4!훙^0r_% 3FE(6wq$`es@KAduN.dru4PJDSHPDyߞyzx=ן)6>YX'Tx/ @&Ya"&(̑2 $Ԝ⯵-kςG\?0rz ZG9{sӳr1{)1w QYNȍsy-D&[c &cjGPTD"~ T=T`q ]DUH-`$U ͳL$3.#G(鷥2+JeNYh3p9&YJ*0 P&="'Fqq% ֌1(X)EH}#_)|ݷiȜ},A)3cd2̨SP ᮪j XP,cWuY U"#EUQ,# \k 8$ dֺt0-rtjˤ_4CyŸ) 8hͤBoQIo" a]nۭ;ںtƦ>6u^moGejbwmJt=gVW;uc{H15E i _5ZG_R~Yz}ɚ}2p}*o!*jҷ㰋;!vµUV JfUel }|$A5!H1ԢR}T,ifI@DhM՞.c&voF_>v,ޏ͛QU|_u_#ri|[dzznۧ <=e~~ΦwɑGfuw1<)+|I ٶO Gz̸|Ǟ/d*x߄ ~?L8r,ǧk~%@9/[?+ϟ kNÍs֑‰>ՄIb6w2#ħNXY" 9僷K%_lJz(]O='6&)6pmVT&5 p.gXdRuJCanq/E4LךBH9G+&S*<LR`s,>+Źq,gE&tOv_(Dł2\5CuBNxJѦLA &K;:Qrq3~uJqDl{4Q7Q.6ֶQ~qu#gQCᬧåb!J  #fQm D\4@d:Hh??#0yolfF+MFg+'JO≰BgȱeΕdQl LvŠgm~BJ4@("Xk޷j|jvG{Dcѓ)J"2ǑL(FǬ!`8ƌ;'f*RHtK.S1hh}!5F S2TcfGfRBCD &+`oK&̬D 2FLj#"#řSZ?3#1D0̽j"&T&FڡX"Ff?#xHȑ +f|(T?['-̊, 2Q-p] LAdwPf4>9!gmyo߷(y`af20޷C,\nlc#f2Q<1JMx>BE3#sՏyApf%g]lŨc@fJUhC2)EtQ D),5Q.X TeD2SZKEdpIv%cVT8$Î#X IEj$MUĠ>/UPYb9 9[HG4)=l}[4SspM kI1ĄJ&3 APuPHe)amP54fpj`jR"fr$nA1Zs| DY"E(1rcD#{s76lGs# uMZFiD1o*U4fd޺1MfU81JдBDrv."ջ\qcw0$fiRc")m.Mg!,9fUn\Kf1V _ڽ-z%-ޝ8MY*2euaaeԔH&-nĈ!ິ)82 *M}{Hg/ɯ&:rS-JJXeUqlG$TԈxZs\uDAvC^oo>]?Tıu,ݰ)=(o/-IQDݏ1qEu8rd6j _ŵIjvʃ5\jqJВ'SzoH^ 3 qչ6 )q⏇O?0o}8yKɀOq6, J}N1A6frw_S |"l'I\JPɦ٘+ ]dUTL\9E6Q NgD%UyVZF aSQ,&0+Q F#bsYcrޓ, DXZ'`2QUdYu$Tphc`NToiAY>b LdP攄U$9tnJd…gyxV21[#jllp,De1[ SJ-3!: jv{WU4uxǨi9(O9]ެ7}tuDQ5g\n[/tY~j^}yrZ[oYm/BfPSpPr uL(LMYt1 ̄+.&=# \@^Z?OK??`Ao34-y܄R 'V|JP O>uNf|󧓧k"i9c?^?%(B;xqdUh>5 tA;͢Pbά&%/;x5Ȍ͋te:UF`ƈ:_jS3J(}V5`UL>%D<ܘMM+w`eؤtr"JQEUkjeQf* R1}blB N)j!8O>sgΰgAΉJ*.6TVBh}"g$ߔE$醔&֏3_ "#ϓ !q51}Ԓ>)ǡ91_83J(^TUm]*1/ꮉ砙\.J)jbnƘk^uo"1+( |TKTbKY.&Vqљi"VLcb:\53F3egj.CTCEEG]RtqS$ Qc^CMt܇b1H~6+JQkGTEѻ,M(/ګTʍmN1=+b$te%k[ǡ˺b ֺ 2E{_Tc i6ojkH7qUW9rTҩ9K,]9B(ֲn4cК43m~۷~Y.#c'K|mGd(@ p!#+KgL n(&LjZhS+)E4kdEfL28S^">GШB(bti}"VG\jNEw ,GPYU8+$TOW ETbY\Fnإ7`ex-$m [)k֨Z@o*y1vyi9`H_ʌr/Bʥ/]xTG 9 U_:fhuxOI7Q#saNfқ7,L3%vRp(=-//c ǘ 1ۧO/o,qץ۽-Mdc۶erRz}if5?^[/Q$Դ2bP~wSCeDZgF5þﶮVjnwuumo;b?]ױ_f*kJ9ܪ.v׷uU~7>/w ww// O|޶4?j}ޤ[\(eqlyM`۱i4Dߞ__[lyÿSR94-M)TN3n=/9"cS{&LR:me'3I[p#- "ޓO;5Q \YHgO,\8)yy0G* Ss-Ug 4*&T,<Ɠp=扪exҥTLPUax@l`>|S+Y(QAH*E`3qF22RPK`"2QE01Iν&1%"A>X[)e/!!3C>v!tVwY78p&<ތlϟ8XӣĚw*kaYCF=ȣIEķxLXZC:YULM=b֍Әs} _yG)*[s-8 b%D[:`)"7736[kl鋈f0F&@+ڲV5B[S*UjV\)dm[hqEť]GOKwy(U3M̢H3,cb <"=uOϗk-QTnZ9TOOi5A.oOֻTT1IIN[Td"AP؏ #CL6 IDATL;$RK#ba*f<"+ 2g \x_zS4͈HF ~=\5FtiTͼ\cd奋)Kp7cp@{sQɚ;xz7 3 P&>P^fVO楠ӕ^m֛Ux @vJɥڤ' 31U(U1@&3UܛZSwbA&šDRi3^(J13#̬*k3*#8]T*ATф#cD2)L17""h ztH͒E)umܪw-RŘp[Kw”m YDKdQcB^׮j(.F$)3 ~!H_ۮ@1)i)Q+ͣjTsk^Q,i520QYyϯ_}xښV8U//Oۍ<Jd>JET43a>_~YeI5He{ۺ\ey}v}y_r/}Y[&+t^/e޼Soy{]/uo˧'6-bǡM˓~{ynmSln}5_.Qbf~^~_ۿIl5@~@I/œcb){):ku9 S'0TT*' ~Eܩ<3wr2qtߘr9*7Ndɇ{j#L(OF)|Hꁤ+: )p<֔aO8C[Ty'Y3m2,l'PDL13Rgdƌ5(y> /G >儜C*Df1 GeRIf!~k6)Yә8\r mYjJs><7'DC(2*8?sL| K&+] Ԕο=?G 4oG4I7UEHDBh} g@x99~Χ$i߫tZľ<5_)VnfZE))؃%y:` <@UY#(ITC:BEbv3Ks)sp,j* m?2#awi&mDdf u=GJdހD+:=53:ZOOkȩ )u&f˵;]vٸTR_Ś6J"rYY,7HrvP@r$ Hnd(r*jR(NMA-.41H>ߗsTQ{[L5!͛H,gRdD*Nױ*,*-Dy^J| ({2Gu9ς<Ƙv)db IUP\ UwcO@o{T! mVYuP#NUQLDK]fXZ\\I4UEtD+q_T%ъ2]4T435QTM>y.ɤ `,l6T yz鲸٨ZAS4E"Zӥ-1JaJi4,hV F!#j.L)4S LUSW>Aq=H1f.,jn2O{3GiIf^3kTe"iɇ0aSP\e<'4)n~/Y"JkBbI)|h9E*SD> Sqrvrb8S Uu P# | ̂(2 PDe'x`lrCM,&be1Sw|h"NTb w[<; c;9Y$%9xNAq*$'tFΤ( 5s "3PY7Q=G2sљG>K2,0G·r메aoNS2EC}<<\s}{&XYq|xD2g&^̢(<>~3-QwUJQ[TT{RrDw&u! Y *i*NW%DF_[ܹ<.+{k~9f:{F Q*SEke#k ~Uvo'Ӥg**,$!fG=o{]Ȣ;Y"8hMcĩEQbY[~4OBG`p0H`{O?ͷG{cM,9orۗEHP͈ u(BBbfjmnDX1zC GT'[Q#A¤*P#P7dUfb5U4OS?(u5W5#PUs"52:*3қ㈼T\u!8 >Tkw P˾oĖ-#QZk}JH UȚf,fsfɨTLAV >r#6x<ּY՚N] nx7#LQ k=X{Qb&':shALg}TePuuaUQUaݤdI[]P)#͎S-2Zk b .NviѼ-^Xq]eCL3Mݥˆ@3k;FBd ,hRCpkxKI1)xd^__FC)"8F,*GT)"Kd !y4B @"7_ɑY7ˬ$՛,9@lvfˌykMcJF=ˏ?_۶o{%q]]XVLj%),ݞ>j{/[x=ǧG{ݥyUb}[߷.o.#1~Q:~};_~},O'bo*fv}."QюM aW8c{W@[s~4Y?.,AN}"O|yJfCJDONa>#f9($EgOS1߉x>H ȣEdj*fa}8w3GLȈI&ZB$pFa$)8i]eչsAJE3ٺ{7qrtߏQ6.kJUn˫T3׋<5ӢfTDW"ʨfs\(Eh&U8`ݭ[e dcO8 3TjBAI*:@6ӌ#:+0 0FjE2sD7 UzZSoüPh\\ZS7Y @^/=bC])I`1fQSm-Aڴ5E"mqm%DE3EEd*%s]ڲZX/ײX[}e#"jUu.,g{? V $FbYYlj:YV|}}bb,Vt+-?|GQz $}?Yk^fr;iy^ßӧUo~*mo/ׅ_*^/TOJke׻dԟ̬r?c U|~f˗=ꟿO?|@zݏ׿Vw/קo??mgHn5b0n|S됦(W~;iB|DH3ibbOߚVLrNIǹƔ>,ȟIrR5/*'!DqJsC"cPiSOB&G3S|]<*BD̠:h%#3HA?'3HF:YRN(dU~ED9y8PLUc P3`"R}Xkfi,n,2$U5HUyRxk"Ũ1B1P[Mi-RGf13ϫ۫oKfl#MOz#D {B+TVR5!RETA*Q9be䲬5X/"ByYSe2E2rl"6;$JjBtDrfMJ0ݤ.$1`e U)S߷QY@BDL{w1DjoIDf#}7`ћ1S>[ĖS0MHĨClIUvy//K_M_m;0v[) u$@:$rU왦\%{%I$IYD#> @C a aw:w3Uy87ooJiykwok<}zr?DŽ崛|MO&^-,( LUozFČztZ7`ocV:9?y1iw3{{7y>KQ!cq ye.G}.4DRͲ*Hq>)ZuFPuQ+ŚidGSL4y=.«=E=7oJZ+F&YUiVTFn楴4"} huJ2z*yI\f;nӒ5)UCc"magM96s) oeiӔiWoVc9"LDbO90j@LSPsfo^M! I@fE(i.k#šjpښw;἖VkuQ0Jseo-RN@z{jLs*<4 uo}'U4yuXid Us_KbMsMS2onpZm(MHau-#4RoOԛFCjhj<%)Zmh(.`=%yK;-|kY 58e*fIw9zTg&*"VV夳X2sC;$"I)jj7GIX Vr )!j D$ Yp_E$Dlsb1hrJ$]*xi)W6ݬJHkLS9Dv5R%UN ?VKKj=Q}ujVܮW$ݱ oV"6MY)t07[[J*EKI5甕KlNlޕFIK)#&I(nRa DݻF5"-B|zV Ԭ)iI┵!T@IU0ҔWy] e)=i"@SgYxLYJS.GX~X[ϟ\NֵZ[ë7wuGsVݲgAoޔ\]G߼9~k"iiǗ.߾ bO)Vk/Ǐ>=>t=,jI3 )9tgLy)V.WW9/oOa=FnSj(em\NwO\۷|xWkCz2.>R}Rc!!1Ǜ+p.b_yzنYG"d}vV0twn`ׇX G7XaTt 6#PgM{u !% DzG`RWق1ɐ*mZMy۷KPt6y#,n0.=#X:6 % IDAT8}5`ӺlrݛS$4F^A94T<`wÞ'@ nC@$viJw&2|А*l=1R :4\Ŗ<-N@1/cޏKzB8C OiԒDf}Oo5)]|KFRI^H_&> ËVA0*p: R";4GJ[-e!piUs7 oKi"9ԛ$ͭ!Һ̜*iJ4;BsNu) K:oVTsDz Da9%k֪ J;jVůwWڌJIr@mϏzwS&7[|. S$*-=FQҚ51,ӀȒ2%:`<<-"R : IѬ2ϧVK5EweMQ+%DɐR[&yڹTJ@3_Y 6[׈8LjcS]Wx_W˲_N__h4gww\=޻[iTOCm=\z##x7_}m[QCn?5 5῝O!݇ Y4pfbhySlhC;*Iɱ=)t\x8fR= .C.@q$2ң{h1*-d9\mVt]̍'5bв]q^1,q݈{!CLkgL:KȄ2I)À*F 7d//ٖ܄5F #E,qhAtaN!myuakUZ"Pdm10&ȕ>s 0DS^GIKDW+ DլQ6 tY0C;v|[tnM?~@6GOlyV .zet 0(-3Ǭ"=a8D7il DDO* С9m5CD0d8,IR2aEDbH)}m-"(\BzN <$=|γl-B !gexӜ _^kݒ^kmUIww4KNZ:nYaӱ Ts]oBkӔ$+EL9b3=.H6%N+,PUa4a8B5 {wTy38@M JHwd:JލAD7(W;&&I, wRk0Rk%Es682)ZAH!^z]kR*Vs][ 9 (I[Mt0ADyϯ{B0WsnN-*IBEץ6OYG4֥vZ9gZA)kDde+qsZ$h_J>娥)]q5B& *sfV[7^%s"ZCdw&MhByIy8V-jsAEO ܬ4c9VYef*bhVW #EZWfe}_nZԛ"=*5xXy4ʌnwPinya`-蘦jk9ԲN)ODҔu>z:WI7ky p5]ϓ!4!LN`1X4U"Df 9k2DҸx\iPuҔS6 &j<YO 0[O3Zg#{9+z^ &0 mڧ/O]K'{!¬HkBZ>a{)YJ1_>{NoEL+k*^ZZYW; d Gd4**)C{:(!uu+@C8+o.%][_'(+$'f5I_<{իMS.=eϹ&B=^Oj?=ݤpw:8o}T+//Wtޓܽ}_=%߼ A,:Mb{\ixΜs]$a.w}#I?r~f훣E9WOvGϟɓtv=YSNG nJ˗eYɐ"j/ER~m`rJ9Ǘzv?~Ϟ?I:wckf͓Rj 뺨L9<$ 37 ^OnUD$kjKe_&N]N澬SԺk 4ažGqӕp $ 3T 6A-`V벺$qEf'E.tQj T"kvw2uE:OkW ?:54 B"v#8 ".}՚ S͐NIvSp5ĪWo4d-vɝJ9 _[5oaNM ݭr05_^Z53뻷3AsjtYNRnbYI->:[nAZD[ꍠ&>ݛץA IewȪ,.ȚyW^߭s>2\ҢYPYk^C5{J `]*5tu~x]jw*@KHV rW^Yix{l_t~ej,z2"S~:Ȝ`\_D'/z}ꐿw/ћ3n7y7ǧWyj~ Jq}"87oVpJ#Bw)|{׭ԻpZrݔ^xNdN?C<,C =gNzSPn[^u04'FE/ N*[BĪ%Aܣ32=,-2/FƮnFC{ p$UFiwϮDWC ID\scD=@EU'Q!ԬLIf !H7myPM:nuܕ^GC|Va{ɀZ"S$IfU Xlfְ<ŋǧ[rwok.绯ߖ5k7㿼2OrBZ>=ܣİGWᵖ6?wE!_,kyʜ/k-flFTTf `p $hTHYD[+D&t40s *J7qs$BIއXD~5%ZXn5Z-$Rz_p6S1pW[BDE0ADJ!ǒhe-v1ȼYBmTZ|=eiR"ݗD$JxR&"lbLDR#XV6^Y[;c 2= ,DǓ,D{]hNN!m4%QLգ#ZE`D[04]p*%Bu-*"iSdu9ʔ#AzD4df }{{ Gr7[p;}=~sIDAT#ah֪V,JСyKx43UwS[E$崊*)$'(TP<O댤ALT[SRsV3ZEü?ѓGEn%KzZ1𛫫ORJV\qsovn咦i]\!O<֥Ӊdz,ݴؿYx,9&œy]l]m9hpG"`N2JuH_zs!4X80Wlm.oYXI65Js>mL͸ms8wm2X3l<{AvEC1@ s=m]/lzƃu@1S-N:gLG?f<޻-0JY>82>ܳc3NX 6w.Yk!k}qbo$ݷ[惍D|MF| ^h?wSnA8wm.Σow(tP@~plwxD~o}7O>|ױ<7FڻolOl/?m1?;H͏f0xqn?kW GoJ~m܎2|_w>=#a={w8u?|pokFw|x_[~5mzo»mehX{؂Ц;_̇ |~\Gvj͏lmle&|?bhػ׻}߄vn;oV~CS7wmڻpy{hNl/^ w>TyG|\탏yk@/f|}*(e|d?O['~A= {kygwm@GF|烞NO}|YS"c||Oa]|;A_$>zSIijΏ+y&#g? I .N|دωџ!OקV Ï/ߟ|`:~dwW/n?.wPĿѸ}^p{1i!D9n?T6}wÏc{k/_r?"=3e?i_23}72G7ˇmKF\ OGG?.?Ộ0=sO_!'|ϕ |_u/,}Jr.`?_"y T۹_?bÿO k| p?Opk|?.ρ_H3O0ϱ@Ŀf]| p?^][qB韆f?0ӟ&>o<.e|D2p\?fIpa?Mr.r|"i ~8.?f . ~1\(Of f . ~1\(Of f . ~1\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :뤖EfCyB)0ҩb,,b| Jјh9G7k nQ6eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eH24?94ĵ^sJ)47;ߢ`09nz$&I_tnf#Rym0fRʦڕRRJuGGG jX,9m۶lPmOOO)R~ݽO}9_^^YRV)e69< (OӦiL~FWWW{h4><?=>>/ˇM5M3'|>N]5MsOzj՗j^?wh}~mR _|9g>ӫRΎIENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/10.png0000644000175000017500000007306414212620632020564 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw|TU?R'iLBKE QT.Q]\E]]~R F@ @ )H/6I&?n&}3sΝ3s=xaP =:lp{6OQ` QZ1V3D@XO!{zkSoOuIŵJxyf`̑Ӱa:v N5摸#!jl-z\ηII-RԓchxF?TB^z.As谠 Jw`ޛ\zmGlh][Bz8{ܤH1{(/բx!3U_!BH!А4vR[lKB=+p zGLE  {! Q#.Glӹ,6 fSb!fk,Yd':X;VŬst :BV[[>rH{,,,4P&%a ?mmK=s8Q%MLB Ư7pWYY١Cj?{.$  a*IE)a rb!|u->0GBHw...oI폖;vW_RR|0Zh>p$@@@DtLo$5ec,=W̧") qr18&BHoqС`IP$2@Ӂw 6!R NL$ ^)JB0q6nU3a6ID"Ϥ7999O2cNCC1B@_s=xbv4 ` { Rde5T<ÃwK%ދmʼ޲NqxEt>f*Q KK(..(JzTn -#xn2#>"-_? -[1|ek֬4q緅==۷wNN3gO<]B!RVVFg@@,[ѣ ?6I*%G1?ė%~tJ* &=~\,I2ZZZ9()̌yc|qqg͌,-t O>₠v#Y!RYYّ#GSsٲe'OTx:4E f|$d@DE+o޳/_7V*u nnpso޼:}sAAbJEx饅]` ߰$ɸq#wIHR)A!STk>|xZG5R .`u syY[F[Ky$$Pl'uyƌGWUU~Ǐ^z=mtĸ}~+Wvk͚O 0d677V<.SYJkD!dh˗/ vvvZTYO EB7|$]|v|S҄edKcOs%%(=X)R'OplMmM[HIY'eHAO"Xlmnnnln4@ ž+BqUAD@Ua[앹HaFHrQc$-^E0(Acaj< Adgݎ\WW))7SRn, ԧceڟg ТnJ^tPDYjȺ) Zɶ6cAwD9>! P$P+[5=(^TN‚.ΥEjs@_hn8,.. LO2wj]F/p::!`p/oV.Jiwd9ѿH Š>D8[e]yep\/Rx@AQ^)H 6 =B.D-HTwww}]R2[O,bo֔K=+_T#jS$Ċm!HS\$b7l/n\*K~NEi3mlmR=ȕ_gus|JJ.x%%EgN@dTà!Aj-@/^>UW磤uXO7Y'+^oYB(I:)j]Vɾknko/R@0f Ly/}׮Dh׺O?,k~`0Ǐۛ|  hooknn*..\d?m~Gu YZZ}Vooc.t8wTE!.he#8)[Oˑu@<(w&9.f3,Y4Z<<<ǎmh+++-*g0'O92Dwvqijl(,o wrrwڰ$/蘱> W|\^P_~|4Eij3!Y*ص4в X˷fEkAZ"tO[hh!E!s\rYZlb3.QI54@$蚠#0U @!7m9tV{ɠAS, z!2RBĴ Qr/kS|v{!d̬ M>hNaY!ԥeOt#A Džy|2BC0aCcN#R~=&0MBh0x)B f2nUt4BC Kb!гƜCDIG_ͪgB?e!j/pS J)xe&{Bڠ!:٩]RL4k}cl8!%&jT! Q]TAP_v.B ' Qũ}_J"z1DC!W?BÃBT :!gk$jъ!P' Q#?EjB虠'(p}(B iᙠC<B=yMT.YBf >1B  ѧa!\YBiHW@ũG!d 5\=k BMAU pLPLIHJ!P\Mj4ABCf!a`"!qjg*A1;Bhh%'_jJhmiwp;6.<"Z:.LLHE'ׯ_t˯׮^K?;PB!`DGeRVwmmbS>+UCKs^;?R[BCEj|떠@Q;;[[.0̗/U]zn K}ՆB1*C֖kmm-ή=9wT ^tuwؾ} w^/*|:v$&YW_s^X,cxlܴIfүʊ޽^_W4fL\XX$ܿ[vb{! U峞{!$d~'D gΜٳgϚ5k^z%%XiӦBT^u.kx1p"]#X,VyYH,<./PN{uɶvo_}0,EF7(S'c&XsgOfI۽t1ҲCzz+`~yEyfٍEEE<o֬YD̙3ʼn+ a466VTTD"CT. +** Q9Bt* I'͎bse:y(49 `1YAAyy+4B.~ֶ{;N4/#L|u;]7a$EQ~yfҨQȱ3glmKO]|k+7 atȑpΝ^Eo,--iӦӿ>㌌1cƘ< o._-Z[oz!drzZOA̘1兯qyyJ |R&EW8K'(g0B(^ $ֽi..nX89 0񱷷UUUҍ%{Nj/aS4VUiB&UOT *-o*+~=}tlaaU\[Z[B &0̅^Oo;Űl7@sW |MO\`0NXRROo-*$skhh0\ !djz&˚Ds.F`dHHQ[W]^^AOٽ|Wڸ(a?|UiI$x9 e4=w0zh(( t6 {y<ޞ={P__ϝ;w˖-P۷ϟ?7{zzd~wK,Ydɷ~iPI?%%%I</%%^~ӧ?|f͚{y<tU<oΜ9ʳy<|ܹs{=ؽ{;e}.AZ \=k* -aie%t?`ǎxwN20p+XZZK/نaaaMH$SLp8{7+**qFkkEر###oa0t5k֔'$$ݻ/^{n5Ǎu)h"+Xn-Q7o}rrrv%~D\\\xxxVV֥Kƍ7}tz;}!4|bݺu7nI&1駟O?uԩS`|ɢE **j֭w޺u:RoŊŋ+XTYY? ק޽{w*_`\t)::zŊ|"Т\srrMtfo;&OM_EVU=;C=ܙ|\zڭߎE JGo^Oxᷴԛ`em3c漞͛ޝzSOc4++8PXYY yyy{RGGǁ`ɒ%///^ZTTzj:A[n@cc-,,񖖖'NP:4y``7nrP\]:;7'9;ȑᲇonEvppwNIIAwWs_E?MAEE298;rppL}l&_Wf7֭[%%%":6TH$>>>... (**ׯ[jkk $$ښkeeQSS3XR:ׂ;TTTfkt3+K()XvO/_O/_%LӦryzx-yKPJ?w+"" &MiooNAçdYY|rki'$ݥŵ@_ mii1Di:>\E;dlVwF 0bΦgũY ;Ϝ9s^:𚛛e7o]ʩYP=J.zirMԸ8ϙr1cb^iGCۀPӈ#RSS~[k˖-Z{{{nn_׏>HvI|[oںgϞ|__eBC q/R^—QNA[2NV Q~#99wߝ?g}fsA)s z +3BPM 0oBJ0)0h#!}.@j~hBE*{\զ'ᣆ~Mڀ(B:騿6Aa!8sU0HP!ѩZ$"iݰe>('B /j-{v!4gvbԉBÔnq jB&(7]x7 'B=T\" :Hz- BHs)0m%&(B=3 B!iR2 *5I+ESZGa"3FYꒂzIGVUͶ 3f1ݝ$ɠ_"Aխ!=j-BG#F d2SC{{~1F!Y2}ȍ n&ݽsͤ^ѵR}}! 4D{ IDATB/~] {zC}Z硄JQTooX,6B[!dZ b޾]Cd-:=ͪiYL֖+׻G^N:?g(^*1RP!t % WrMT:~US飭-MA!vYigϜwE@qq%WvxB{{{1ABzM_󚨁)+^9*GD[ZZDD"ٽ]BFݾ\T7 FwwOk1 [fp! Wb`Q<'˩C 5e0E,6@PYW[p@`HiY%()BGo=Q%iH(W7;;KKk5KĢGs U @ wjK "V<.P*%L}!!J틎з8ܸ&6KQcˋmll]C|*d ^[KC"{{{SR@PPf O߃IBfJ':ظKоeG8zdo@Ks@{VWW尫GIqD"?kdHgrL?hƏeo *H$l$B I| {\uFO|XxdO(Z+^|%0hdcc]UϘ#Wñ~LYt60}L}"!db gmnek%=Eb޼\En %wG!:PBteL>Rwf=HA LPCTݩi3Tƫ?Y^^"M{ñPYFNfz\!vݦs~)ӧObֽPK675<$b9cO2b2!<Hw?~׮]-|>?66vʕ[Drԩ+V۩elٲpš?|…۶mkiiɓ| /[ZZƏl2鑟~ 9BHttt]]]bbFGX|IX =&DM:=9fӻ}1c؟-HW^y` Pn22k;DϜ9SYY0vXڻwodd;lɓ/_.W͛ SNeddL0`|G^^^\.č7!1:G9rI`6q)xBKtS@NNH$K.yyy@]`#"VGo]!;:G0r\O㴺3>O%,QQQp^xjڵr UUUN=td>]%6)))== qgYjIָ'jڠ5'<uĀ5gspp:ujrrrWW0a N(uߪŧONHH裏=jSG!j8DAj5Œ\E{A&= Su0c HTPPp.VhnnV/bÆ ґ#ifk2Jo#C 4v:&&RRR_>o< (з[]r^2  11ƌEEEbc4USS#Ν;l!dCkvi[V.VM0B~n8qbRR$'',qe˖eggXݍ)))a^$;ܹsF!/z甙^ 5z%75X7T5nΞ=L&tAD >+V777rlr=>e˖CCCob~Q.bf͚E嵴l߾W^1C!}"22~P@E l[\56^)(}/*NP"bNg8n+ٲeˍ7~oookC!#K=nAx@qeiA]BjBDer|& :8BfZX~Ey)b=B5AmAÓ0ѩ'(ABO#SC* JD,EQTOOtyp8z=Qz)%2h@GJDŽQ3`1A*iYCMо6BB! k7Tv%o$(N.B!'J)xe"_pH uBb~o Bf/DuGg6;;1<"Z:U\UEQYi99-MNcE;}{kii~s&'' kծ:.b)B!3ܛ7.]I:_]~夳-M^~mϝTպG?j/ UE!3E==AZ-W$?{G:?vKS%Vl˵Dȟ*Cܾvn}d=O!̚Us$vv\`2/_=m(,@Q-LO T $t[XXj|S⎯E!djrYGd4rGM#I\v!=֪՛{{ׯ]wp|w7/ܼTR\ Θ1JZgYY;7jƌ o _}mWJLةrNMz8w0RZ({ƣ9|O3❜]χz=b՗[&M4e䉁BC u^ h).zfo(w ޾y rsvvsrv gg?"$|~رX,晟w?/?7*jIq N~Fzd޻VUS]YT2ʚtt9;;;{w.O/_22;zdH$..5Օ,{B_;W!Up F8!ީU5;l6^FʩCBy~ñw޿xƆZwI~?aʤ)2oݼ%!!sfEF;]}$ 7o\5P$<|t633(8>?fg9yPhب?=U򥳙EyNN.e渻{.{} C~=},Ki˵4eVW'?#=fO:SYSX"RvO^>csyJNI3Y%?ylHy *$1^޾P]]B!7Axytt-11N~Tg̜p2.>Qʶ3f.GI4"RGr2صRBBxy&vGXkKIA -|~@;oNg!]\>/˵/%~ۯ+*N>rgE/*+H *&;}wWWss"~ҍva.^6o,͚5^jv̙D׿{_|ANWguI Em`K 5l9ܹ+]Mַ?|cƌ1 b=Q]fSP bK>>>J1??dx=<< ~N!4t JzI`0N %%%ҍE?fB&aùCGSGc=zĂ3g@ HOOg߿?]V={ܸq#<<|Μ9>|7Ml2#zС7nɓWXaoo?:)@Ӆ@vv6B"L2E.iSWWjժGFDD8::/; ''gҥ/_~wbi˗ڵ+<<<<<|˗/QulΜ9hѢ'NO4ŋ7o{R֯__ZZ /nذa߾}zl\QQnݺ7Id ?bO駟޺uF޽{wyy'|h"ںuݻn:Hlvof{{;DYYW_}o>.z+W~ӧO ԽuڣG6l$IZy2uOTCcX͘$5++8PXYY yyy{RGGǁ`ɒ%/~zjQQիɓ'[xKK'N444uطoD"ٴiO>{,]9.K7t9Nknn^dɢEAU3&3xT6nܸ[nҳ)X__/H|||\\\PTTmmmׯ=BBBVVV555թ)JIId B[xb!dL~xrYd*0"""`ҤIjNJ{)++^nH$FvhNNN]m t HЯձuYLUϲE%~x M1bdggӳ,HOikkoooMOCessF-ˠs\[[ێ9XZZ)B~ul!4< kfD˘KnBӈ#RSS~;w~}N8n:k۶mK.3gk***~W???|͚5k&Mt?Op9>>dlҽuPGdd>3}E! ~r? '^"/CG!Iƞ΢IQ.DRVV1ܺyeֺi۸d B F&rʊ2Mcemԡ7.7wudef]I:gee- C"k|QW#҂1PXÜ~ti1ยݹAn\=lm~XiAvIB'vS E| (#%m'/*,- wsjUj.]BH#QK灟ZKD/Fj1MW(B+cGDpf=*+ʎ477^vpp%.t }?&Ⱦ1ʊcG{y.{m3op>ewS8::%i;*iRC߉BC1B4zt죇9.?=c<6[Ν=UZRxk7 F@@cIIA]]M@w#U8;88(F|de\3fBUgNI$hTf!5pU!d֌NN.Kr3ˊf~)(8T3f΍ rҒ¼GᣢGE]]uu5!tGVKڿ?7_~ }WY"ssBhh0ҊE..o07ԛ께0$+,x( y1$=ח VÞv(TBfs-,-7__h<"L[KXwEvn>^9;[k[G!d Q`''j%V`mckeeP_K2S!J?z#"21 ' \HApߋBLp"z?-!44kʇX3Th*OA5ZE!w;wNnRX|ɇ }ٚQ\2Lw?~][|~llʕ+ԩS+VxSSSenٲe…555… m"[ɓ'?^x?,((?~ٲe#?s"躺Di *CBBs5 mTΨe矬R$c$x,+))IÇ%ɜ9s跻w޶m]ll? Wꭷp8&L8u{'@,_~Ϟ=nnn V0GB w^knn>}D"^yas(aV!HS@y2(EQ@ MȾ1ο++3gTVV@zz:;c6=y˗հyx ԩS&L`0}?11qƍFPa#GIT dԩҥK^^^AAA$P,Xff`Ell,ѣ9u2s ѪrEu>gx{YYY{)اkOST313fD;wpܰ0z477SIMM xyy@AA_|aÆWWW_K#YϗG!3 R]"DXؘ̘1 v`TĨAߪҿHII~zBBt;<<\2sL$QY9 11ƌEEEbc4USS#,,,r!LE5N~[kKPpD".-)wr5(MBJjGtt ..N=::zĉIII⒜<ƍ-[b ??? vww766HyILHH8v7__s466c"p.= UUgg?)=rǿ>ğݗ?Iw[WǷn^#\8;p@sW6Tn5g& VXߺܲe˽{|-[֯_Oo ݾ}{bb"F%-f͚E嵴l߾W^1C!}2pV psP]]:JU!DGnii JSޟ<2$ܫ([wٿ z/^x֛6mڴi̙3r̟?`iӦM6Mモd[ !̜!j]:D"UEiYt_\W`z햖1cf̚ɗHOI{k~k*8x&\!̔as -O"˵Z[Ո *QPGݒaiif`/~ˋBF*D!AQOT^aFjb1An^)kj*}lmiGM[lmi.מ~˵Ft4 0 X,6|;!dFnDouC7ItcU {@6DuP%})'QwsbI$J *رC_BF^"ݾ*zz?*BDQshlhV'K m.N{~iOcAp8^" b6HsYl Iot&E[]YMkluwM: iͽ9}f<P|*;B)Fi>>kimf289976775zzXYYVr'HTWWcccwG0წ[-M]]5j6:>vʣ9i;:(*ho0!n^?@06k&~B3[<<}d7zy@UU9ɜ.5Օ^[%=xyVV[[,xU5eXW37quU(+pOF!4 uhx/Ki3~gJhfD!>QOtxw,eOBQ9BÄpKQ"3ŒBtyLBza^!:#EA“sGGax>{wQQ\ifk@vE@6WԸ/h&o\cff4D3Ή87Il(C\cWwJ twW(m[hz^p"tWW݂sD۬7*BG3xu#*TQ]\mܑ"%}Bێ}1bYRZmQRCNe~+Y\-ӈru.أaXrx*"#ryRH%Z^'IUf8: tU+<_^!3bfx j]76^|\s2:_ nBb $,wK-ۻ`6C!z殧~+wlDj65W]q3Tb.W }***Ο?/mpcǎq7x`ooo0;XB-X 55BCC<^Q(K, `חxxx7zj{CZЋDDǏ4hӧ͛߫j{bܹ3a„M65`ZJԡ+,C84X4&M>|xUUҥK?s??)SػQQUUex[Ih!Ht͇s)%!Bp{zñ+->]hX5BJex( bG$%}r7*7hhD7kfjw˜Cnjsر3gΌ;VxhӦMO1crrrvqźӧiMMMݵkWFFF߾}'M4b*111۷GEE;w9r[o%lq\JJʑ#G^:x3fS纺Ç={6$$$11qʔ)v]V=zt޽W\߿)SM9w M,ZeʔO?… k֬ц޽{}]Lsm۶ Q'tgMMM}ז,Y2w\%%%sOLLՆѣqA5Jxk׮}gΝKHH8{lRRZ^l}ў={FUUUT*5￿s &̘1ȑ#fZnn֬Y7o5jO8bŊŋxƍ͛P(~Çoݺ BnlW JD$?yTLJ󉨶ޓd?c@@EDDX"--mȑD;[.::̙SYY)$hnn'|?x{{ϝ;_FED6mזqqq-Ҷ |o߾gֻJڷo\.͝8q-[x ?|}}SRRڷoOD":upԩS(%%JeRR}HHnK",Y"rNr >!A%~)˲{? _ϐ!Cۦpa3t;@ Uz3D_ٿc玔WosB=#~KF_Oz37ye ?!ב5|4/Iige獔4hr>ЀH55}HcS1a&0v-"8ulMM egggΜ!ݕYdd""Bq\XXX``ޗ>h{YR*K*++S(!!!.\>x}"R(B T*͛7KKKHs \dg}6mڴ?OƍӾYzUNӇH4'JM"}[Cs܂]"z70G% -#az'<J~|/rACIowSw?xFD74F(***ݻGzRP;OGB)c֠wyLB^XX;GI<|V^^y-[$&&'**Bos's1WZ5s_|1<vK+jc@d=? ݩo0{)?'"×9!A(̩*44T?|̘1MJ7R7Grrrt~qNJZb%ԅaaaBtS-R*۷o2''Gsteٲesݷoߚ5kvG@ 5&zOEDp?"2GDDߺ="Mz<""YUTTKD;w&K.ݘeYa/33S˅R |ߥKzCݓj&Qm痔̙33g[n=w]AAAsYtiEE[r qBQ΅;ћfʈ8=Y戈n+Nht/l^AUU‚ GHJJ~vz*k׮fQmmB?~x"ڶmp[RܺuCcǎmѣBȰ[e٥Kw} <(/DEEEUϽr˖-G8#"//|,;<~Xf}ݼDD:f;>L7lKy"0CIwQN9ٳgѣG9R^^x' ?p…3gΜ6mZhhh~~ѣGmKD{~W\9mڴgyF.}~ٳg_tiEEE .ԝk3k֬͛7O0ŋ~Wy]6,,lݝ:u/_}Uk뗔4vnݺ_}Fn˲k֬\^^߸qCwlkH$+V^}G:t֮]ۯ_'O꯿э}ܸq{|Bn)tEYxqF4s{,QP 1]%P8Cs]%XFpDB4أfprU8"m2#56ȧ VDP%\lOWڸƗ1 t/CZUWW2 Q3b>bbjYF\:.W 0,Xױ ࠌ/?~ ^\?pKvJ71sw 47}YV574O~9۲iݵz}{7baT/qqqq±4)T?3aJ^}iܥlbz!꒒8G+IG{7Df^lv+=@RusTM"CQkkkjr=˲Bo6b]E 9^(Tq7}DijѻJM^Kܲػ!bg=s!7wDte[ 5-1/oSZTLիW8믻ڻ-bgB7^Q_WWoHh'"3H_)G*+ˉ?Д6j6~cEIqs/18GmJhׯ_9vX{֗i=4~ڶJx4vu6ԡTWξID<_AD&%5ťV+[Hh_qqW5MA~.y%⢂NȻ8㎒fdd>}z...n r [2YpH ӾӰ/K<=dߺ}v99Y^^?e=z>zUl(̔&`q֭[׻w#FسCoߪwa"";V?([s\n=4͝JKne]ֽ}4uCAq2W.=/˻0LLg޹]T)<:44\:E ee;w :w c}UUT%>@E+S*J\\G%܊O8{ywnGY̦A>,j~sέ_~С555nȸv횯oMMMTo\L&~Y}uZׇP+k>nޡmݫw ɴ۶mOnk.+5.-sB͌iRk%Mo"[h#|wW\9zh+^,f6r}C-$[5]4sG!jP[Z"nz "Gv- Gy4&J&6I6>IFd^1vhl1&ڬb}QFB'A-QD)C Qs %Re;J&PSKԨϤ1Q+araw#?Z+U(ʶZ)Js_!A>e}ubbBaQ0Y]sDd3 ^LNfNVD! `=NR ZpmuT{;Y;,`K1h9ѻ(s*QMJ}<εUJ|Z(؊c/D<h+D7&ڈyC}={ҥKӧO{ ZVf3ٳŋ &LwΝ;?Shhh;-%ư tBS^:2OjepD*M/ˤzGb|;-.EGWPPtd" HNN^dIeedAC=/Ho`UFǯrOPjy%jel[^:իW7n]z5??Msx3z]:0!'KE/=~}}lm=}uFc(ӚI8lK^Ќ˗/ JD111mU06%m"S&0V*j[6cLb0J 8~8; =0`̙S|3gwȑ;w$$$L>]&|ݗ.]8nРA/TCCݻT*Ր!CMiN)Qk(ʂj g"(GgAly5m,/e1Q{y(#0^reܹGڵSRRx J݀UVO=0)))gϝ;7c/jkk/_+!!aov[Z7ԋ!jQm=G<z?q 0a(%S6ؼ-eJԱ`eX"ڵo`哶^DD5O<({0'%G*,:;NaFIQJ%"777HDmZf ;ѝ;wx'CUVVN>]HP"j߾pLCCÆ BBB*<ջwo"JOOIډCDu sH\WVӀ(Ŗ l댉:\p ^6 ۷o_pueهeT*%Z-ɲgϞMwXZZZ[[뫛r<77$y"ry2m\e:Ą2Sz?d:ư&#ZN81WWWOOOJRnqFJн{Ǐ<%ڵk{BY6ܞ,.dDDwufUTMl6&T2;B^R0 ӿSN7 ##cٲeӧO5kT*1}EEE|||(..kqE.'"/7SJ*5"*P>=]7?K;0Bl4hN8'N}vM4I5KΝM H$W\opP\j%, yxUH%S鼯#"R6Ѕ\!zc,gV/`AEGG8qɓ#yyy}QMM ݾ}j5<YOlݺPx*33\]]̙S^^~Qtu#ѫM ~>%cW'8|#]#\m؂ Z}wA",]t?痚P(lٲbŊ ƌEڷomʕofBB˩S6l>qċ/]ƍ111<8t'|Ҿ}{z)ww;vܿ=,,lʔ)VX˖+܈.l0f+R>̍b~e!z03㣘bڪ^v76-::?6mZuuuAA/fatƌgVTϟ:tG}d`oSGꫯF~ÇD.Z"))/𔖏ʕ+xܹ\a$ՁTi.񫜄%)ʽZո~[<==,Y%lMΨwL'[Mkt;Jl#v\YUY]|z,k`B8%_zssp(儜A N݉{XdXk ] &nd8ѥOG53Rrbe>ƀby/xJ:z%*qXY*5V#Hp, H}m'mʏlɮNt S }9sR׾p-.dٹMvU!ѧ4GE;prR"vl yJ.s& D9p QrQRh<lKJms PQViictP=o6B!03@$D !&8fjBymc.2l+QðXÏrYNt`]:h5)9$ h6ݝmnA8ex)Fbro Y 0\LKֳ{WtwA8q)ѣ `ĩSg/^Qf>P)@׮>rxfSyw>EE_1իb;.=Gg\ʪ\bAnXBP@;{7>7xΓ6#$1IENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/5.png0000644000175000017500000010407114212620632020501 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\.K]:R E1 Q56ļ&5&Xb{D vD"E^ݙum g?S7C|I ޲[MD*chMA , (.4YyA+>/%ŊQGA =]&& *Jl 2T)H+KKl ( H܈uJ^]Hi+c͆r6^Ay G]6 zAv] zm<  a8 tviEAT.ʠC1 Hn"$  -xҡQTAD) "PAyC@vEAғ  ㉶{R APf8ZzUV^"F񵴄EH' H+`}`ܻ%" jSEWzhCozw ް *6rbwqAwzqB&jjBd9Pr@Yy jHÃz% H~~~EEĭ999FFF-lMiy&TMSlj)/Wg!KvQ"CXs%%%5ߔqȑVTzO2LHY@bAy+%@BՓbB1b yAqzTuVAdΜ9&IR8qČ3,,,ZQ,='a$$@ n֟?BehkO$M4A<ȠwWP?RAecnn>gΜ#GL2w Ivq_̲|Fp H!JYci,f4M19 4QT[Ш|ә| W.FG+(|edd|nKΠdhRFyӳ:qD|||Z'zJ(<@Q={o3ök9eYšBªL2/!Su M<|iӏ:\nҲ5 553)1lÌ ՠiɗVbDŽ!RB 8.,6~lϕRTi6P =h(ee {;p,XXb%D驪l=o! HWe¹Ǐ:u*?:Z,٠o HH ȗ<ߦ~ߵ,-eRECF0zMTge&=7Ɓܗ/υJI}җ7u#?m&f[~ؘyw듓=,,n Bh0004p(#0l1}ӓ=;oڴ.-]ܜvs禜C 0ǎ [[ۙ3g9sFQE`ѲbŮdbo0HIӊ%+ǍWYI?IXw&=௿N\t[eGQTk7YO;ҥHu̓}Q$ٲDQrrrmtΚ5+88xԩG[쉒BԀZ-ՀaNd~QU %@@n$OE<<F+kۜ?@ӌ#c O>n`d!lvIIQvVRMATMMٳg;::6dkk`=̃hq() Ԫ (yǪ!JK~~W_v",&i[]ʜ`qż?'I2;+uYǯWZ;Q-)))*)Sb͸Z H`hhhhh(mym$vy(H .\PE4Y4ױ=ͱH V۶46&::r^{޻wW<3EI=UçښeTi"8-P8]gGn޾7yY^.̪}I ^K5Q0`Mm;LĴŅs{8%С#M_Hxc>hokn6=LMZ Miq(+ WA,PrTOeDK:6^QTq}_ $Y4;zm69x.HXZTYHp8lRAC( dT[[[=Z:EQqZ%I ЦvPJ[/(c%mGR}~ӠX,9B篛ť9ھǭls&EQPVV 8;Qu܇=j&3(75%I^d3?^̗!mx: BQMmȹ&e tC]BfzG)2ڼ? ҽiͫL+qSqU.͢E5X4lw}ܺS8A8s@H2+SAQ>AyLd=kh } Nk¹!KGAD<U`j\A/$*@5E tdjlCA'.";'J, ȻTmg*h ^r ]vkfv-џBChQAե MqiCcItPuvAiLh@Q %|S 0: -(mKAQm|~4F ]ADeP>Q>AA=? =hprԤI$ @Y~QBEA:N}>qA)?K[*ﺂ" EeiDV?S;4ύl·E 'ݴgPP_[ꉉ)..vrrTm E'M{)C}d/g R{ِӬZ{TXZM85/ pu;Bc(k!\4z"[ T}, r{X5|5!7NhAM~~~<7I xo]p-={vIIImADq7_\~ˇ1争lt0aA-@fQȱܭ;]p$Je jHŗRNw[hc\y Ĭac:!k.{ @kD}&gZY =`%a UyT:[[ی*CCCr000lذѣGm" D4!hGv'S0=!\A@~ A8(\| u6Jꄯ[OyEi}^7:z4577&eee/sĉL~AEt1Aj>mO|:|z)7k$ـ0ITe@((׌c`H]lx8ԘHG,׾$---===HqAwUQȭW`aH£ٓ!a[w3,tH墠f c ~#S{n ?<0Y%066 8tKMMb#y6aĈf͢(ܹs3gݺukU7Mӗ.]O'O|QlzɕoӦM6mڎ;'֮]rss/((xk׮U!@i/.o/.@[y=D?KtT:`}@] xE#Ze2i'F{0227=Ϟ=L(,,իWsHjj-[ob:Ok׮1b˗/^={={\\\\\\;{켼<ӧ x<ŋ^9A t~ܗ;6!BLkF]VMYNb:uAM7?-BPWQe^ 7܌Z>t"mⷬw5 *++ixVVV VR[[s3y۷8p?߷oݻ733sӦM7nܸq~w^FPiOOOW^"t.<:7`Yt3NG OhFGlgx& _҅t͂+O)z95/q<+&ӄrH* G?f흩F ՂxA.ez{{?{///Yz6X[[EQeeeZZZ׮](j̙̈$ KKˇ2N<älٲK,aT >f'&&Rp) @'{ѯE'w)6 - ׅng_r,Av1ͳ">`ir[f|Kx-a+ioJ ^xJ?'xYBCt$!1]1bٞQQQE(^:nN$:x8;;K, 222h2eÇBaVVW ҹt<Ѭ*XsER5td^# ˢòd73Ȣod $}B}Z}ue@i+څ/^0`}uu͘V ޓ`YmNQQQnڢ~YZZ>|Ȑ!'O,((HKK344Ê YDY*x $Tu;Paoo_XXڷo_&FWZh52zYRR"d6'%%eddCvvv\\\q @#m"RZ Щ|??kt_ۺЩ2///..w=zrQQQ$eHls ))uuuL'upp(*::А=~ D7ߑpHkIXI9a2ܬYqqq\\5Iftٳg&&&SLvrɓ'3@0CpCCCy<^t ph. *>QO:4:qL:Դ۲[_i^-us;-EX͛7AIyxxaaannnׯ_744d&z2,Z(**jqqq4M>}r&eggϚ5 z}q .Obf]z]yuaÆ: "NGJϤg/2ԫ6N-eIT;mQ~mee9xֵRVVDQD=E%%%u!H7l~v uqqVDɨT|JHR.$ق(6iܢyxx1)Nxw(*00pԩ- "nݚ:uBagۂtC¦wLVS:ivtݻ޵5,,A_~PXVo] O%oTZ?h2TÇl%Ir̘1...zjm_ܿck oѣGX,DD[$2U~.'7.;>yPUU9iLpqvlbjdL^vT"KĔ"pR+z\]]|͛7o]|[Qml)))|>Zl5o{{'OvHA}ۿ!4Mդ'ߺyxni";.}'M7ر~3fpRK RSUU%%Eff=uteT(V +F4::Ҡ!AEEEg(oj:8 4͵%va~ۻ5c_;I=̫* _0*?BGG7+;owmz;%$$ 4h& IDAT;M2_ܹsgΜqtt%$cǎ'N\zUKKO>]ݻK,ٻwoppڵk8pof[z5kضe˖'2\]]gΜȐ~...e˖ccc}ݽ{o„ йNMM=zhttΠANjkk ,xիW{8|>#((hʕϟ?~xCCɓΝ UUU/^~I.\AAAʪ*OOOGGSN)r`SRR&Ne˖&*++O8q޽#F̞=ښ$<2߿$ɐѣG/[*b h< utt5ag`eKSS[R ^64{`o$*؎ ڍOqSRR}6m|ohh駟455E{+V5j111AAAw>|lK daaq7n̘1C4$''?&Irƌϟ?ꫯ2223Ϛ5&((ʕ+{azEQE޽ǧO>w͛Vb\ӧWWW3[Ǝ'lSϜ9szxxC```DDM]]wxBnӎ.\055%X7ZXX0;bŊgϮZ|G{INN۷/cǎٓqO>" JETq W/TT}4mnMZYdg(.*k/7 ځsF!CvMQb?Q)Ư***R466fMOO߲eرcGN4q=k֬I&1 aaa^^^6`E J<;;whhhHӿk׮EEE%''˗KKKcbbfϞ32223<"mBKOO?uҒ@9l<=9E5]o\LNgֶ >QTkkk^[[{Ȑ!0}9vÇ###Q"〮\U<"`$`"W$̙3y䰰C۷o֬Yk֬abȐ!l6?NNNج[N<]u0gΜٲeڵk7lؠ)>bM2_f_u+edؤyDD"3 SלyAА<-5Қq&Lƍ/3  x)uu ^}RSmj2A%g{;-p9΅ tuuUQLA_B\ٚo*j԰Sj&q@WWW\7wޒ::~&7A55SRW ed055eY*Kmm 𰰰8|y_4lRRx_FFF||<Pu%Plϙ("X,~]UU%0vؒf h*̙3ߢw_6ZAJJ )kdd[F`  tʕǏ_\& urwp.sn?G\ж,l[S]p%(F+ 6 E>;c911122fxZCC3QgϞ/dccr7nܸlٲyM2ECC 62dÇ544 6Zl6{ݺu|IPPMMM#""/]ۺ#4%1U@C[INNVB\Lff@ 5uuǣˣLޑ ]v .\ J_x; :ǎ;~F[">|x'NVWW( *L ¹*ھ~TPTQA孈>JCtMVU'F J4˃ z*,-%+"( DL E|wI!EAXDQF۵ԩihݢ ]oqAZLˢM}PTPAKWvtC,UzC7#ADy-2"OA"ALQAATX$eILIt$$$dCAT.Εmi m5H*&R¾"* O$S"t䈨tvq) wAQynM) uQnB/E6tJ 7!!bijjJP[[+ ; A4 .aYY.}ݕUriĨO 8kS$0h9ً䶫&$$TWW6LnDQAq6aee%֕W.Ԭx o_vҦ[76ORNpj+sj*PVVDQ<4MSEӝ~~~'OVVEVSRR[m{vrT"EU%" `eGs?]KϞVm0LJm֔7 V|4u%kJ&K@IIQmMMD?{2hxn͖ꫯx<=z~zСbءP8upٶnɓ3L"/_TVmVrssSl۶Mu@PP۫W[m[PQ "y ,).iJOπ6?͵ȒŅ4MpufOޤIAДjvGZ?hK3>{l֭'N644T Icƌp8zl[9:\QN(#HEEƦ$&=}TX2d(\} b~?^Go߽\ h~WKKKTgFFj; <<9c_ gZp΍l6{P/oL-|elC +BRR455 4uN⳧U=-126WyOi ꪭ?~9r̛ZY?A͌7믍7?~|ٲemTkX|; D> #r: \s!<322Rgvqpr߻(ˌ3UV[Y54~щt^PyGƹtQeǂɶ(z|qq!eD#/$ >k۫ۂpٻwnp88hjjtsjjaýObgW]hȑن#*v3"WbKcc?1CO׉6%'=655;>&O3gRGWavs'ZJSS"2FgRYi UUܺjbj6{΢#L> uy $f>VUU9}$uu^,]0-5 ^fg<{̬̏N?!+9fБp|xΜ9v)Jrss9sx6ƌ&333׭[7nܸQ7@bbcǮ^:::Z|S~~hѢPGj\777wӦM}]II" 66裏Mv>Ϥ/Xr:tݽ{W7?)++K;"׭[,]4$$D+NuuԩSewgGDDv:7mڴ%r]w+V_qq֭[>|(M╣H ūW*Ҟ~''ŝ8§`{LYV#F}#/o4b542?-, 7%<y)A6UUF`!}Ch3uuYQTU.{;ijieemL# p nnn  ,XM>Ç3gR[nڴo߾W677߰a?|}}woo>($$dŊ⸹q8Wd,>>5&77wܹׯ_8qbYYӧŷ޾}{ƌ/ d6̘1ƍ'Or_}˗SWWoVXo  BOWEq͇p=Uմ&--~ &ڸq888XٳV]Uyy'x<իR``1̙3?x𠇇Sm```DD:Ǐܹ,!Cݵ;v{4M4Lݸq׶mX,V@@@aaۇ Fݻ=Lؽ{O>}6 }/ɓ<;w## 33392o޼=z >nݺX5vX0l۶oqСG~ѣGг={61,,,رc˗/:t]cNLL/_'$$O3f̂ 000غuǏ}}}efGѼl`ѢEgώۼyƉ'\ܢԩS|>˖-fff Zq#RGCCso旔3INF$@CCw3w!#d0wШjj Mg@n>O'euӧO2dȬYrrr~'=F( @[[<+++..9"`+++F'me @Qԕ+W,--{-P(͆}qpd\lMN|ƌwse,6ȸuuɼ5Z2$xMMG4Sy<3f}?zԽ` ӞT[XZkh MMGthRZd).M8s̖-[֮]aM IDATMMOOO۲۵k׳gΞ=fSS_1gccn:FF#G~zMMMLL (a]]HYhW\)zt}`roS__rs\p…_|W!Cl&?899YZZJ#jQyd$AF)**JCC}W5444''=88qMq:6ڝ8vÇ2H$"GdfddýqwM{ggeȑc,6<ӟ$9}uMՋ7A3cp/R.xgnnYYYbZ:^|?\jtގC##B"z0~#ޗ{Y[rtrMN?$9)fhxE1|w ~m۶ɝ>aggWVVkk똘fӷ'!))_~9s&!Ⱦ(gt9\y 3#Ùߟd`OQȭfCFVV?xp7/肋 K_%,.-=ZZZ~~~@QԥK@ŊLgADl@ `Ƣv9#';ɓ-a&ן;wNԢLGw'H :d7n`¿a^tgϞE]zO> HDxGݰaUud9"Z|(#ww #!FxVfzi5eA %= ?BKKgdS>W#v AÆ6|dqc=NTBlܱ-ݪ###lW544999rfkjj #""DA$Mvѵk\pޞq ::zѢE611\~= &M}ƍ\]] """vڥ!פ={zxxٳ<`ѢE[z;5\ƍ-[6o޼)Shhhܿۛt;wZjƌW\Ypq…s΍yiPP3DĤIo߾lٲ#GAx{{_|yӦM...W^ͪrۧ/F$bO>>=b٢!r?:>uTCC/BuСO>v544/Djiiyԩ}={?O_}kjjӛf͚^t)88qڵ̜&-_ 7n\ "l@ `F?##C0v .\pAxbwwwypd_ G1)o?bwLqi34yQmc27k">؈hR盌#F++WyK$Gm#vڹsΝ;eϬED*]f(mQ&BN" &&&w""U *CU\}ho9qiۓ~֭[*҅ \MJ%Ү9s _GP>AZ0̀u_]>#9IX5Mh-A4֤۴]o69ۋn@ATUD[/DG:Cs% mY庬Avc[UAb"}:R ⨘#вbҨ **MqiːNYC 0 '-11Dp"tTFDB7`TMA.HT# )AQ=TCD@[*@uA !&_WC): MQUq$)!%].84ADi*nڪN T##+€m۶)w[=yҎ7G_*NGs>AAkj4HjaihR VVWW To h)/m74{/)))MO>]~~XZZ*~]n]ii!555gΜ/;t!SO,,m66>bIoQu&նZl/*<.r 0 . VZVfխ_^eYy,41=TE@ @v}ߗa8>v3gy΀s:ZZZM+\z-Zf,y(''hMI&!QS2cT<{_(Teqaa!̟??###11qÆ ҏ º:KKK+++m<<Vf>`ٯӧX|SO=%<@pĉ?Soֹszzj숿[hhhmmmyyM>7ސ n۳nݺwtt+Vx4xӿgyfŊ\IJJ {nJJʇ~8{>]aii|0w/B>`ԨQEEEǏ>~{ƌ[lUχ߿_Dٓ¾}BCCԏ1s\W~ee}7+(4mz䒥^/97'CFO2 4e:6DG4y'4y:vC>z%WϿ6y99܊jY4(MMMeX^^^!!!p}j9Yv?O`0۷o߾}r֭jV''SǯZmÆ goߖ>(駟v9r#F(,seY&++k/l@qƽ{>S<ӧ7m$yUԊ^xfO47n?[\q̱ݻ߷[dիWW\)=\~}aa+<==?#!0$I~7}٠Aq׮]۷o1běouVnG{W*++###@g5//oƍ'Nz5y+sEFF<ڽ{ xy<ѣGQ!hmmݶmԩSk&lٲݻwGDDHDGG6ܹs65..7ޠ\CŐc'N_ u%$$L:U[Ǐ{̍gΜY|-3j ?ìYv`0ß{}}gϞӧg׭['߷qpGlmm 7|:u9;;SjrM6}˗/~W˳:y^z ]vJde&N(9H$*--=r / yQZZ'Myf8zhSS7|3m4$I?>o#Fpd5Ãdn۶ӓQiӦSN;mllmfii C3eIII---W^˯\Z`` $URRƛf%fX7.jVNvϷڹuΏ2ғoW4R'󡒒n_;uCjjLII_d uoAOSj >Slٲ;vٳG28& `Ϟ=~-.jݻw!o=cQPШ{ڽ E BG 38:aI1I0=.:SN$`0E"9y ---++aÆi9s444۷/::z͚5K,VXhhrKJP/C2_+6P\\ ...ԏAݽ{|||mGuttQZ,~ϟ}1cƬ]vԩl6zT@HJ%h8KooobbkגyNd.JP2D"Qcccooo``&/^õ%%% %՗/_NLL:~e ?>** <==% zrLo.^Xz z)JuН1BT("++GO/{a7<ٟ$Ś짹 H &(kf>>|rjxVMp$KD"QttիesQSU^,}*̙sرgy2d?}ԩ-[~WT=Bz|V5аyfGGǗ_~w9vW_}v+ꚟ&2䫩y===+**rss%ә8qO?}wnjmm-STTܹscccO>Zh'GߪC)Ȝ&󫬬 j*uK$##|ԩT=T:QR$I&Tw߸qΟ?_^^ݱcرcoܸwޯZ ^fҥKnzI 49<=>۵kWVVVBB[Q^ZZX7xc̘1٥V۷oٲeŊ =X"44t۶mCV\9rHɡh$jd&jaa]__/O8[OyYvvcEPawR̅}W_N^p}Æpxd b.y6ƕߎA!,+?/ҟgo޸r d2>sX_r3c;}f[ˡy+>sA>?=\wSJLLtttYX[[[QQ1uT533S}ظVWWS=caaa>&9dxU4,X:DUP^^.}KFxx9s\\\6lpU3V5HtmIs8F4QUm$y5KKKꟕ@ PqK4QSSC] R8< QF]|#000&&v zXٳɡ PH#Cߪ1_ݰ٠ wrrikm$I2 0xV6ն4_<$Nȱ dgаG,lCJjc?okkLㅆi%{ϐ6d\\\kkkk|\n߾j*WWWkkk6}___O ѣiiiެPVO;0`8,$pnǓeԘ L,Hz<}ڵkW\ Zp ڦgϞ|JRRRWW5L*o߾oٳAAA릛6m2dȹsN:5mڴKoٲeܸq/^UZq̙?իeee}ݔ)S= >xbcc֯_ooo/jaXXk׮-_wdCTKF%Cs>}z# dɒyl6oO={ƍUVTm|JW}櫒P 榹DUTnÇ:<2͛7]x[ߖ;v0~QSow~ŽJ}`N"RQ{=QS2>s QZQsڕd'3G"zuǓPOgfTCT7ZǟZ?keiim6M593j*BGk*~[cRc]Iz%˥O"=JD\(\V'^1%p$B!QqV2 ?;$/G!DG4 Qh>4Wԓ.5MBяY( SDT!2 Q}#Ar$?FWC!G:RWPBN Qf6UIŏ"$eK>6۟[d0GBlCm?h yg_!(BVd(cwG+!5]h>EB+!Dw*D͍U!]`,T*>!i+D9.Զ]UʏCBBTw& =&{C!db-D%ĤXCĄBA|P`(k^rQ5'Jd%^Ϙ7f>$%Nܵ?ǎ0}mz$]IInRI~h.+NCBuMT[[[eggocñr8ս^gOP?Z[hx C:2 rxE4$nXt"9Ѹ% _[[)p0,XTS]澔&ppp-͍`dz~@sSIJ?1WB՝Kם Ն(5]aM$5$/o䩗U)ؕBf^!ZYY}c0YZZt_*+K&S)n944Եpl5?Au5mmήNߎnMf2R8B!5Ѫr&AA0*km-ԚiIzz@^nhk!!c*+ʪ*CBG?k:$lI)B#"G?^͕|vfk ۢeF OuZ;"xBDJ憔P(BuP(G1JB\7DGԣԬBs2-)uy@U!dNtDx%/:)B!>DUNJCm̽!ԏ(6"95}b1BBTRn1`$"BCT?-!!7!!j!~!IJomA!4 \BH(JL5!g^^eRBH̥;W?S!Bz[nFBыΕ(=B!Gw9Z$I,;BK?!O֒p3 _?[[s49Rjk;ayX?#( ښʨ#r3mllm); d"!Մf|Ύ=s3VV Smb!ѽ_[_W3̓JP"G! Ny!uNy0|x rn549;0?`䡮ΫWΗxnn24_TYYjme0,xiLƣ욚;TW2YLz2!;#vj>z/#ʥsvvÃBK Ϟ>6k΢7O-M>>Cm8iw7>~젅EH>=N<-rR{_tb d2y3f7"2{,;A:V - dV?-o?7c3Ғ[.Y <{;Ԇ$I^t$k־bgg"8::6_b<+4EL;B-zMʊN?ak ,//,=v̓[bkk||/o 2zzzFG%(8::3= !P;Ͼ/PSc=HZQ~(,PW[ nnz< Bx%ԕQE*5FKb `*( xz  + T־!jJsMr?f?%--͒<7tvbxD/jCgAPWWkA!ϩ&j, \UU7(EaJ :;/).`}oUedN.%ad2677QK:;;j |!k6 2 '?/ 7^x~{k@`0õb[g775܊6=prrR^^RW[wJbEEX,vw^yyYi- )egk¼􆆺yqq1eţ^B U&ѵm B`Vr`[}]uYY0}ZYY hlrrv Ip8#Fe,aG Oo//֖ҎϐKlNE!z"R T:|B~S+A>B|GBE377!h^--mB&Di^V=lƚ!LJ xk+^A!d8tGN.GB 0CTyGt>}dBNˁE#E!!j(S!iTJܣmCBv<̬SIGBԧh9/_CBR!.nGX8"2&g*R gM!G!J]s0B)]%* ] <BFuw 5|.8B 0(4<E!7} QADE! L.D5C& *J{.֙!;B\5P-&-B V9SW(%IT2Ȑh9B!RдxEhmm~$I?Opl ';#‰! и&F&1Bh@_w\~G+ϲx9GXh sVek}y?|EvVw8{=B *QmhR&' 5nEPZr?n YA 4XQMoh6!ԯ) Q;j"L;w ABZ|_0GB? QmSVRpsy07ն/oYsSWL>> vx'&L߸Kzz7.T;8͚ 'H򋏨#4e}G?flyyIwwy6kv?ߡVCeO/o?NB|>yj0Lw4B!Sޝe*^ a쌂K1͘giɖY~n^>CH,w=.fP_W[~ 44&ܼ9im+Kn_<^$5jP(LMcaa6n"/M}]uwuϻٵoP}~~kk r>qgB"r3'fe]ZR8c¡åWū}ٵvP˯/]3X,>vбރ$^ S&M)=:iԔ;쉓gD:[6"d4twu CuGS#y^0MBHe3}0>[ҫx{9; Ғ-ˊm   D,wYJG{uUy}] w*Aښde8j! !J(N rzőaX7.dHDr$I s+3FI<5J !4dX' 4 2UoAMc$_b4ޙj0GB$DeG(twuI~ @NM\4i^*~j0.uDRE-!dԅh_K2F=BvuvPK ]U*`eeQt?HJAIXYXZZ ݿ$cuuE~^P$U ]]A7TWUT֎g]2b"yb(VNXS&×޾B~lX=L1XOG il2g  KM߆ 4~&57rGΟ7+/+nkkY꛶!CA{CqqkzЄW-,Z[sʗ=ѵA!sj9)woWVY[ۄ 2umv[AϮp‚lk3&OSE0‚ܔ;<gArO/~+>cN[[.̜P$UU[Z-x%Z>mm+VqR^n&rwTЇBȬ) O}LngLg{;!A>}>4B!QzMTm++c~v=IsB6GyR+U!bT4VIG1B?axNMM R s!y5@@jek1GB0ִ ։BUy%! sTy9BfsԴ}3=4KR2_CTiJz4ꝣrG!d~BfzUbQ2;uʇUj?RWG]2+k5Q!BjiME!{r>o<B5Zp !tM9*9 #!̃6G# !P4Pha1Bh2-.f6NAB)gJ|^!2&lAKe!hɔ3i!a"2_ꮉG0%RSH$joobm1f\.|VI6uWGkr'zj}j0n9Jpi҉H$jhhI]]]YKݛkp8Bo9jOqyH_Z-# 'X,noovw".! }9Ҙ@00"ti/Jo'KE! e('_*ة5d i1<^wQ!hAJ,ޠ !K\SgE!d,\5|2v"2sZ^Fo'BNbbbFFO<1j(S=v|83BHK---GjjjOOODDļyL((--2Y{O1C OZe9k Oib,XLxޜf|S!UTTlٲȑ#|ȑ7|2{\ vkZ0$GO1]Y(^Le韠@U},Lqv}/Iw2%$ꫲwyg֬Y]^^ngggꦙ!7"Li|9Ɨf$YO1-՚-}NxXdB*gffFDDP s1m 802of)&2XL8&4f< ^%E)3gTBUUիWݻW]]ϺPm߾Ν;.\=sLWW׌3VZeaa!s222b.]H=sܹ>?a„+WsFLm- v&zEpfU?.KJ3Z:}f3OgJ!?G^z饫W7ŋ7ob믿9 #G\xQhRR҆ bbbƍ~C}CBBf̘~t;hbh$W'2.{!%?IDATʾG%jWͱ!!Ir0lذ7|sڴi񢢢.\(Yy߾}6663fظqK/^ MMM9ꫯ|}}`…~ &&&%%e޺ukƌ>i#qt [H8kpwb|̩8S%J0*)!> VVV W`Xs̑$_pp0P+s$ /_nkk[j0h ΙzzzS@rrOD [$ђI $ a[:`DMr񲻻([*XRRRZQAYb¢F!np8%%%m4w`xڰ-=$qlj"1e~:Scl-NNN IOO?tϟ1cHRACtt*q@ Ǝ_YY#BZZ{キjժ{bks*QH0iҤ[4WF׊e \+*dp6_ʓ̡nD#d/KKzI@us>z9Xh"V+++ JP5ꄢ:ɀ^X'z,&דeR+:=R"&#i%=`"47~C^~ƍԒO? HLLL|ϳg϶*++%f׭[#Y:4ggglf`EqUe+~Op%G  9\iҿ.Bdnٲ壏>OΟ?x-GGǺ:'|رc'M&i1)ݠA~;w_1ce||@ 8x𠵵… SSS˗/ڵkРA=9ĉMMM˖-3s`(DzS!Y$ nD^5y,Sq^*!As!t5z.hP^# gСV\YQQ|ݻwSHW^w*ʛ6m޽{N:y={X[[;6m/dff.]zH~ΝƍKJJ*))^t7.[d% g7I]H`3H("5AOlQ.4x1P&s;JSXA?mE$!(-o[sNBp̠uSG2@Їu@olvJCݏC|B6m&ONvz塷5nwD"b`(,^ m Go%J2HHh2&lmmݏ`X[[;;;3Lmu+'r?\A# 2k2AoqA!z3Haqhdű!d>0Df!^0B*Q]?^t!2iwnQ \IE!d &JHP5L~Ze a:QK!DgYB&Ds!5Q ~B|ЩB*Q(֩!LBTM!I I!2 sDuU,B!=~^g !6Pki9PQ8r3!YwQB@$FFhB~*+i $?c"BHL+),"RBHػ 1I?{S:GANԼ?}!=.L)N%`.Gㄺ/Cru智 ![XZZ}C\j{8IENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/1.png0000644000175000017500000060122714212620632020502 0ustar fengfengPNG  IHDRY; pHYs+ IDATx̽{fGQ'\}旙$Ʌ'B$HBQDU캬+}}uw? Dh)B w$2f&dr$s=qNwWUWUw?؟7ӗoW>޷oC=_]aG(Z%y)kA]tڢn)ǂ=_PS/:0ڞb2`8t2SP$:x{KKMNU+rjv,+&<\oAȈj &jO1DEu㡉$1(Z`תm՗B[o~!b`:`Ud 'QC /?cxrA tЊ+߾-ͧu问R&ZRJNvt79g@߯%.{["^J'-\bꡍ ]/Ɇ= $,xG $$~OsђB,&<HL? w$~UBKoGfnvLs^\ط]ٱ31mKiӭs#~c)g~O^eiV,bҦ0BR={mLI]⚅kI[(N.CKrztzJj%ՁQ铠0'fsh34 磊6e"݋ruX28I:X]5DT$}rUa:[Zpµ_}lp;VoC/yךx /F׈O|_ _߼厐; ^*Pй %{9ࢤPF4?D=*EE"!ER 1:#8#5" .ƆE=2eʅmEL*gxG~+&WU=4=; r\Eܟt9VJB,TuF>Jچ(BS{g,S&GZ,'$$үxTt܋~T̕V坔QBTШ'* Am5*-Q<ԉ]&wJ3n6u?3XZ/}[z^kB M+T0Y-[`B/B-$nPv؆ sבWj#Tu(WiW ]zwRl |8*ӄ'ߟpb3xȰ_S_2>(ryK1y],crzx6ive7|Uk*B^&%63 gS|ql/=6nB.*%`^>riK.uZSr E=<5tCG:ips_ Լ4%EtWP=Ou-ԃ]qiUR}=I1 傇i]<4s1EH%G6}LlE|@?! QL+ aiC쇽p ~ d#jR~Oi"ku:D,Wj%L4zMRCl$9-...~tOb"4C&8D%u_ 30FpM;5.V%^q@j$t2)sĵZ9EBr?+ia?`caP-2Fq[ 6e ~ 1rt%BP0WNTML֒_Z$bB/˩ؑɑKg"I H,j8L0'Ҡd`gb ep ߮yV1.}k"O >-rr0 ]M!@ػgu^~%d~#- gbI$DFߍ:8LFzDa^h71TLZq+14@xcSMJb7BRJ]0{B-ZqZڢ%哽uW\?@6%L *: 2]nd/&X0G*+O=t RJOkqvT *ͨyd}iMJSsώ2IB[o.ȭT7 3n 0z5s(`GHP3-? ,>sdD?IUqa\ î/{g.=,V섃vqu|vR&F/`c[\% *F0.R&_Xd8w"(LH6q"<"f^/>P%- Eni%hE˜X3-|k٥K~5pУݰAaq9̖e3y.|`0"q`fIC!5w= ՠT@djiNiB)'%ϲ.9"D ST y̧bcMiBQSѻXHE mNJzV.4H#LX4}hЕirX)xȌ}a7Nб'<7@:ރy¶$~k:d4l\x[{3;Zb|-A+@NMFN%{cJڱ2-%d6`nZ!Yus2K Y4A !n9 z%*{5k ag7ZF}!Kc"5^S8#{}S8mi?氫1 8 fջWn|o6k$,^?}}Q2 2@cyW\o?rS Px@ޟjz=_|pxxؓ%G$s gbfAH<è$r!oM]ҒZ/OHo3`Yp(!(j=GEC>KP<0C#5%VGą!suEu$8ӟC{$&_v V"CE xkus)-'lp2^F()Yu#`]+Nb /; 5kZEy4  %@eFzë~jfpom7Zz޻qry kq1|+|^u׺M? ?{cW,.F|y+#7 @ꤓ7_sףg;dIo8ػw߶mo羿/~lf U퍱s/rHi ny:Mw=nXԧAsE!u(WzOVm(&D &}6\v GbxSAކ߸H<}ݏn >oW.epWo}ƽ[o N;uسgXy٧o˻~E_[!?nbKf7 !5f]x?w,<KS.>?Tʃ}J(~J}ioa}9-*uІ\C3M,0Ⱦm[O|~#b(UؤIaER[hikHⴙ]Rܩ`ޢ@8%1rZ4l95 U^t* wkZt&׳NU(GNێ}xb*ZӃڂ9ˇrpū&JH]m:s* |3?| oy@tˉ—?Zb{ >?󱛿wF1jg~O=䙒CIB !O00>_ 1;~o+?[睟nmb7߽~3X[h|,2b;%6G>O}Kpgs>soiB:# L X?L%Ċ_?䄠hph 0U2d ` ؎PH/#赣G \3pGkbeUns")`U_X|c䈔Y؃U! %p H:h,g͍?= q 䧉 ;8' BjOf " )훑m{xh*y.U!xQN;J^SUu`DwreI~C{c󮝏;? drz0*!K+jy}<$Rdv72 ;>r~#;ژ@nںA.v`8wė&L'||ǙgE",/`p,?c- / zio/~u}졍acz/߷rA;y_~ :5k}XyktPє =.->Ո_Ųk}kwrGs*xh;0dI<JP\JnhN fhQXyA^`M̋U/řdoR`–P5F: ^3%&\+`%CeșwmQ 4I'>Q4 p(zO0KE-P7xx?9yOAL<0L/Թ;g^6}`Br.pSAO1c w6ߍXD=( ja* / b9 5ö-~o|ѫ}tO|It\x{ '8 l' ,0aӽ{|'x{>}áæط~G0-³9&+9f3w֓6߾^?|)'7x=/O#7~I?'ܵk_Ο>'8# ³[۶="CJB&H?v8'm3_=ԣpwlx]?o7ֺuFuԪwg3|`5?˟'wםO|˷&c鍯|˟koõk׽uW=뙗.[6r˝fI,λ F#t\ xUڍnD5l-*a2*ZH aibm 򏄳j]M܋jA\͝z-H¼C'8ck߾C @nY~LWm^}٣p+`b;ߓDƄjg[VNK[^3pڱ}ģ:4rSCfN.-zyζ-~C}+ygx.uۼ08pcCLݿȅ= `=kܳ{ޯIxxkxhˮ٦'W=ܟmkZ3v;SBwܹ(Ś5'uժ;v-ica^}ƛ~w/.š5'z+u/9߼֯'HW ۰5&^7<[']|λ7;Zi׮n-ϼ⒧?p%ݹ]`aa]xڵn+O|~g:g?NTn髇z-?uՋ/׾O3O/qޗ<\/|kW< G?pono~ӫv~_6lˆ/gcK eO^,9MAv^%i'RA4}dh7<Y5CHI@RcP) DxGt)mU*uС,8jml'!Z 8;*U=7׬,kHnI?W;d,Qt۰AiDo΢ϰlr0t 8n4CO1L;ð]aGzf_~O?1lYv>`@._d6l>g:gʡFZu/}oK6UW]qQ_w7޻WA IDATwƯ5/x.?cr]q'y/9wo>Ɨ_p+v;;t?঍[D0˃l? 񼎯}Ws9m۷|'['_r|B05/@GwկK8;ؘv=tů7nO-5Df = tSC} eD}2cڥbItSF2n2%ܮ-g=_D9O’~϶4z h?n^'Uv!C [OOGj%]HO @4E\rٷуNvֆxpXk~{לo8d() F(ov=F !I"}Lt:qqW?u?m{ $kg S/\&v3XSN=Tlym+{w9O;|vbvvoubSW}֩޶O[o[WJV't|Gvm>ÙO<V=c:pc)۶=cq#ヌVx)kNxL_/|ɹ{ۺ>'c~!?#ǩ1쨍@%vS i # [5B̤B:bn hNMS+0 죝&o ~/NɶT E&׮d;h^?}d[%_}qWO_On sW| wg~g|7¡ 3C~c_mGn}\ qŽ#wcAngya+9񄣷n}p۶}~XxGr=tl-Nc? U'p;>~ ̹џ|t˝wm첋&nԗz3.u~/|["V>V<-5eː`}}%nCCK>sgʽ(Oxqˠ2ķdOPB  щ E j`7C'^ߏ8_TZ_hYb2,Af  aWVhRODv'<&烬ֈ܀,sb{C.$ D3혵ip eלyz=j/Sld]1$@ɕ~1Ek  땹)k5]+nY?n/▍w{ˮc_Z&UPe& d"q@a?xr^OnYa덟g}4cN]v2nhn]{7})g&p۷ש۵0]+Dzscp!+`9obHXU}?(/1R ݨ?y ~/u7On'3}1߽}æM[?Uoͷ۲!x]xi"D{n7oh+QeMwƥB|*op?1+=Q.eҬ3* Gi{՟K!j0GvjpiU@p^i6;Rfp -ydsN[敜jf++NW;F4iG_k*?& t+Q\ \i5Ay˝l#k&rjO'huA#|{Ce}8/2T@|~ Uw=B^sڽ!eW/n\9 yöO\+_6 V#Ky>t _ ŠG° fXg:W7-|aYq)˞w!8V\򐃏?(ذal} tGUjf;}绮}ۯ替ݼ7?嵯yOܝ;w*q+"'>']|k^cgyʱ۶߽O[-yy߷qqa2Jmև֮ ΀F?.K.9Oׯ}tW? AM{Fɉ.* @IDw_lhA/6$x*D E nuZ~CQz c\a"FF0d2v!MO5 2Jm jJJaj{AԳ¢J}u9;'0yvS֢[No|@;>%͛鋷W?Wwɟݟ|ዷg~EsEymG3ٰi]C<>w#&ZM_?#^_zy[<ƻ /3=|e퟿c?~gx.ݻ-wRF_\qOzγsw/~w&(Rj)5c*UOix(*x Mٺki fT[hhʎTޯUp O]}KUŽNWStW$]q@v60~ o+A mӣ[VF2oCd*i>Ov7n`˪UșfAF`3 <g"e^?f Y9tC*緤x ?z.:{ދ"`_6/;xL__.MGM&b-zl¶DrS}[IEU?w+_?wa܉W:rD>Xd;ʦ wE>`еLwR$֝><6ŕgG6UHR AnMȽʵRX)n9}t:D1ö55en@N;Lzh+d|7jmi%^a6n]_ٵCc5i_+z?pTQư=_5 ѱtbsg/} QE{PCX?fVm^{? Ϡr鉹y056#"XιfTjա/ze˴> Y:XƗ <Wď}a͂/&6K@?>cBNͭ>8OMbw̵3qςKg0n.&X&ubs>%a3a֔0"Ph_0=<~NԖm a|L1 |&?xM+IHwX6eZx |<ӠSSٸדL&Y@4xghLԩrF"#(|Όb|>ЅR1^0q.W9MŤЗb&zc,/RΎ'ܸ_;j} !,`ao#;V޷cՖ<^/.aINI}\JyHcQ_k)^zZK~G.xO>䗿 G\[j 'ұAJ_Ϥw F XiRvWu)=sR4Ik4d)hjmpz\f#0 Oj[琪.`QtdžE6щ?{Htc,H[ڶ"rX$  f߱f 0 +3v =7>PEJgF\~r=e%\zyk1J ΧMe7h3('f M-IJǨh-nBeT6hJC.Q%fQ)XI< w'&n[q(i)=v1m;sT$(itgTf ɥ 0wض[Mr0L^n*C[HGv c]Nh4PEU_P6(x#J7|K[{>Wel: 7YR)'QE|M@АV 2K_~⃒ӝ9joQjK鮘Vn4LxW'T2 Ai'Gg tJw>8LLdj֦Y-لTvу}8ԹLp -敞ҴPNZ1E'*5Hp0Fvf kaGm\ItMS‹<2 ;J<[Q'Ԕmj s[P6 QadlfݕI0*uyOٓJ2%bP;ۜRUxզj`!F{HP@[9<`2;.1ĩ4ɏL]Fq6 R_@*?%YGL>wTG(d3d!#lMdh Ng4 DLpNT%P՗U{OP缹e(QۿDv6CMo\?,\~"c(qvad{:F:E>1xC0<=y0Ӓ e `f]p1L xE*7L j|cdx)iYQ̺0D5zQKB!]-o@K `rfBk" @!1 Ôm*)mqit(/ ]ihsL+ xȄF攣j7 ;@.(<`SرJaӪ*FGţU+?Qcǎ_p2銳iE;sdC1{:v!,[O=&$YteȢ8f%)b Az4FLE40~Ƭ%n邑SH9v3)8h/B6B%0q Tɱw|3U̪C՚E ۆ^~G{8ԵFoj()?eSV;`sVZ$9^ OƊIngHgglfЇRlUL3y3Z&ċsS]{\$ IDAT:ޱi6^_F_Uuj34*[ќ4QZ%耲" ]"*EU!2e[yPPxHo[!8k=ހ*ܽ\3PCBi(#ZptPGw @TBXi~=>nHu@{]^c,f=kXMR \(*ֳGNneB_Vԋ3A)񢢇y ƸRӡ (24An?[Wa@=oD&_`Vޞ4~IsOL(NI ZAe -)K\`J[^[ Q& )ҏ`N!Wқt' D,(OF43A&m;}LE[WE|$QA+%4B>"x⣤ K!~J3)S^U( OYSk(Zʴ)]%%S|Q폫t YyOWLh.5Ԡz#gxV} \,2)כkaܱr \kI.21c \~E%>ͪ9oF",d9>R迢3BuUl(PZ NZHab:MJwFQ%Znji(jvMP;i{Ӻc B7 mq˙bkɐS'[@!9#A BMJ$S2M>2ji7W`%)X3F[3Pn-uGӎZqѶW҅(R#(i+ DdZG.MOתrh$,%]wێ,\'=1\ǣD+""h-[",E?Sub2hl8ʊz V  zC.@r #дI1S^CQb{&=hyjDqġ6rEB%ש1Oԑ12. a(4t7j⫠/RF $g`aG ]|ohE-6%"rZ{+0ŗ 9Eo뤸xK@$Ƽ _kظL Lta%g-Z@N#?HD\Uow(7[0-&%6+6#i4%4,# ;SqkS^sEjz]WCs0fZ3itq\JC +]}yB73I c)nBxTA6 %BaL7+"rK;6KRΒT5) jޛW0A$,eJcwl@xB[%wL >n(.Bzа&Xom.Rx&!4ğY@EdjCyi%!=hh[c.>]iE FgrW׏yl:xnk *`ۺD 2I  *rL-lUB=$<>^67 k=m54ĵZ=7Xf: .{#m

b"TT#F!?MKLY{ҼZC5=8&{{9_\K;g/It)F6Y,@!ƃvod# `ځuP.SpHTT9Io#j~JRTD_ fcm/1,$7ug;GzKB>z?n7(ǚb4 ?qeCϓ5Y {S*C3@rfZ Dl%d+|qu9V"هBM_†eJPw*s&MQ' & r]p=롃s_oIҽXCr"{N) %{Ӂb/q*#$ @򍞗IKj#Q_? {w& ٿeT#ij rVR`njT3oV)]4ԀUP@12*RQ?v@`/K1Jk^WJw~ȱ5ؽ7. #gV-|-x2'Î hP~ a(a[a]${`mI҉t R~2dWNn Sf/0wk%@R=&<AEoeHV,%,DiPoC<Y+ NS.m*P3ƿ:ߊ4j9LrYу"+nuJa8]ѽs=4㐈  <Ԉ Le^AG:)遀SY 9x@ V5< UU2|}SsUE^a+P}ٯFhT:q<$O1Z)i( |<$j<ZX2|aH{,R,Gۋ+%qzMtk΍ƹMFtE|H]JkT?!$oHs4 UK /:rӄd˯KHG2|bbzwćnM#SRtF Y~v\-/Mq:xЩ=ai$PX ̞Fw9- ȗ`@ !0Ya5$qfcU\(*@~9 ei۠ BO#C.o= R/-ၨˢ_urbRb)[ 4/'BIw7XuGmN(@2ȱ4/{o0G lAZԛCQ/"!Qd Vrs`JiNӄ.@fCNO}ci?j {P>As6B"iG]\gVFk_Jz\sK\*)7Mz \?} !QM)2htJᜲ0?@O#R}(F{=Coj5rN 9 r+/] 1 F֫ƯvbGqɆsEOfTDp lK+N3'Apx IDAT2$0v? "Y''0~ϖޡUQN!)Jek!PڲZR$2WQB:!<\|rhP t<;f&F㽥qmxORt9J FSdIVH=hsC&nH-",LؒFg @ЃKQő =kt& }_m 9uvǏǵO\]'Yrf=<@u 2 |xK|pb!2X . c,z^JKCr0pL^gDAb}@QЏ޽tI?3VfĿIy(nYq*fF'`.j!@v9O.L9MgFGQGإJ웼Owz:-A׊+p_EF?R8<@^+Uz$O'@?HVM2{?8:ZZ=l5wRUy2! *^Քxt=0t=ܓi9@{М Ÿ71NrPXJ֓tٗ&< ƪwqL5Q ܃h4=0A?BB_<~:-,pċ-q H<փ4&E{4*!ͺMϚO~2JeZ *O݉4|,j=\_PP但Ro`Lt5^j qO.aKI|E)|M"d<41 Q-4;ܙզGd2=x9Z҄! x*N}9eFK f5Vk]AZ5ŗy8,ΤeA^?n 4oHs1ixbE  `4 /Î.(yMBU Rj0(ALO_AmZ\ n۟eny7'k8PDa4z"^CΥF0< JBTA)4|fKLJ^PzP>8sE{!CDM{`F fȹf_?S^2hN:MF?BϿ.=Q(* ""Md35DdՆ[#y7QqnEaϷ:nu[$:2pl<`HKr BCwS:_%}(5Z!& RPߍ5ZA˃MD]{Ocr5L=4B]b*`ڎȷT+ 36.38mXbtY`z;8cЪwc ZZYUd<E 'h SWeVQzKeTE'jvhrR')eL4@,1kM 8L菓 dJEmnX5ZJ1T):l<2"vZydCL˅Aj !MYRRQ`8 c}S tBJl Bw xv$@ZI>m(.x_o3ߐCdkT !>6 K|GX0` OZ3xE8V ^H6DbD#K@T?J.@7FYVsMfE(`㶴RjZ+:VKOX )%&|i[e,c)1c>B/ӴϱdnFI=*5.,9ȏ}>U 8׺gAwi:DqpPrAkltj{<.Y2lZsRo"&a\b!|\Vu|F[>sz0m.jB!ϟnIW\e?Tj4N-gGK @^Jűv,Q{jikzDo0)*z֋҉9t=Wmfэ7BxGni (9 3jltqo9RthL iR陛- qP+3f ZU#B*R&2);gǩ4hRPZށp-tNyo|V =O4%qA)0"k(WKZ12D: ze8uXP‰5D G·.8lH+T_vɵҎY]WpT9:@fPG?s^3u$gt:Zm7eU1mMul\»mE9\[CaO!tRa51=m%IÓ P@u~0p ǟdr|PIZ|̘le.5.a7V6OѢLL<_BvY8?cGﲾ&Z=qbڕ&5 *Ɗ@[5ͳ=N.rez!Uah["@5]rnP^+Q}Z\ڷX.)~8L0^qk!4) bfè)r$ .]ƚL- l*(tt Gq[!n :6Ýr86΅񘍻,rp~ {0|\C{ T%J1Ev̓BדS}5jlȠCPUq5 };>;#'t$5M{z!8֑"X*/Zu`΀{pDF8g84тQ yT,x"B5>j:ynk:7%`XFᣒ9s q\Hm aX"" &\Z)<ќo<5,y k÷k+qOv1 \O&^{}! BYVnωiT)rശV`wooEAh h藺cݎ(c5c^~3 y|J,nkЊY>@DJ]|7YGoujOTR &lZ׈d1fG0Hk{(2hNS>t/zE[HoyWYJRW5حlfosԜM{_93_zH؈qxe*46$^&b6D״ȡS0=lc2u Rc%8Q ) A72^#>7z@yFMV[YB12m^WOf.ݙŰ0OJJɽS hPݓ\M4@XXJ "[ UoA\a%9xw`9xHzf&5vX1.EwNKCZpdq ?:C: `tf Z=ezlZ݀+Q=ȞHkV%@*)a`Ǣ>4GWtv?|+a KoԺC팠bw?%CF# w&~,TiqWK~t1J!(,T=⤦aHbжfBё-$: d;nd<{{L gD gD(xM]ЅHiM2L)B=Xz2v\'Cq-$, r1E9^/{Z=@@cf!$%Z1TC^&;أB&ۨ@6 hrU=Q;|e,Ùr(`;q_ a|i'pJ{w#wk uEnY<1&~A_zL{&C,2Үvۮukz6`@\M)o p7J b8S;$|FnvKvFas @zhҌiX@/4d:C$̏ =ˤ K| AdL#O8 3lYJNbp +cIBoK}ǎ̆Kç Аa:bxw\Az^-*ĉnx4_bL*"Z3G/ڃl )̪3k+uU@P[긷 I839lԽ1ɴCޣYM grFk:VU\ؒ:.eT$aYr˨". a#xjFތ!^d #2i4"s!ۿ4.-k˸s$C6˳5o\]HaB6~|_ePK|AƛnO.g"a RWGďc#xBU5^^uuEѮtɁ?e[8SVxB3"w`Ǐ܍ ~^jOGT>9# j!a5zUr=L2ﱳ)Pp kW|=Lśo붷a_|:~=YrEQn6jKP.rbH)w{*r0PcV.; >M{Ϩ* G*gbN6 뜵D@3ۂ!›&o o0H3V_=&,du^/ /ׄ bLT_upXWt\ÓTDŽ;CoN9d#>hj2]軭U=`ͮLDPt0j|4UKHU–cAee2u뺨==Zv͛+:{M\6 z}kIX x18i ބMȠ0tS{6^/&'%S4˅\T}5V},e!61Хʼn Bu ;Nm*zt0G#|p}9{6Qst]0@מmɛgDx%EnVp+ ^lPB>/o>gd7FWѽ=+d Hޮ_XB:sˎho "X.29/1xE5ݡw`:vk`P8v{7׃=':+}MHE( CοQȖs"#A-"\M% `FmZUirP,=m)9(X }X:L v(K=*$BY$Ju"T`&s|e sHE;$gN1m|k2+,d$ "Vw'hw?ͳŚǒtLp$`6t}~ 땥tˍu>c#W akc3d}3=ǙuO^4 N^\f1|1dxlXdB:pG~p=>&ۆNͼ]MdS,_D$FO5;D$?ZVCgY<`N½ zM[f|/gpd}c̯=ظ} Ylz)ۖ-bf⻡֚'o% `o~>_e̼x!&Vs7ڹsGL_ A܍ZR K>R]/|n0vUuTrXB,連uiFU\8&yHQ+cͭǼT\972a $9å@u C_KnPlGU;z9,QLNl]Y6m>;@;⯭Soc[C5-(ҽ61S@}(Dl4yrh0)|'dƟ-GSfH'˟.Y^@{T]Yئ&֣}]f~M`;Dw؛Iђ/~zϏvhv,o`2d}qO8Dn}:Z \E ;d_tr`QEw*h >_yupBrֽّu0!jzHГDE.Mt?VǪ#?"EehAH^u5=?p]{hOuK֣`= ts=DpKcx*+9s{vA[SxkNVOAUuaܙ/EHK!J/`=p`33GFՏ^o }8KQr60xKg?iP̧H\OcPY$51fJQ 矪 %h=h?JPI]e^Ϗ^] *-؁O2j&R.B ʼk`S%A:if-,:sy{n=PN)ye=J#]XC w%&8wF;'wy QT{`lڍMŸIz*/Ӹnin3JT15q>؟كmC{Dc跷er\:BX# >{1 xM9D@_~F𷌳K4vP}bU#O[zI>wBZ ޓaP4N8tk!=aAc% @$b[qD|}'Ds%~Ww86X:NMNỌyIIkȵ}8!p CC̯ޕGDM/|Œ[9!<|cY9-9.,4 ztwB~`iBj-dcLu==T$ߣ4ϊ7ecuXu-Zs8;X` uuİ&nE/FKogoOk>x(Fq쫟{ArnvPWV{l:F>kďPLUz}?{掞tR$gșF? ^7K9TɁO-(m  o) a JD/7P;q2q]:b@.ZWM.Md\>X|炐3(Q7GEg&_s(x5B/n(U5if_gg~Y%^GB޸bGȡ/RS{pz,M!v~a׭j!/_Pl/bxLmzsb9 .qM#:y>°6G96-, [LgZ]nO'i4%s\in_Vg-.l^A#}Ϗ~59p;Զ_IA@{exGq$LbFl75 "1;[M—ծhG~U fEK2&B)A^dF^O=jo%@+'^9Ffx>ӦmQXCEvF2mޙ8vVE߷!?`C]{ GZrx= 1S_)QDa_aB;%ȋ[뉘II]ڃ2 S<ҫ!C9][^4ԥ;`I_DCB\xM!O%݂_kyl,4#]R ?6ws,Nzuv;AAh, R٭8 O=Q-2jf f]SM~_W5D(<ΌR6^>_@h mQC) ͞tЂ$~%gmY ۡcEWnff|_Pik^=Pюpn̷OۗyPcaj 3B8l>+:N_0P_qAPTcmY12u bTh$pen}ݼY}W/D;`URu蠠 |<&;z8w4Q=9̇2(̩ND0 6bN" ^zFDf&U_$\dB? $0K--jmҵ}Az!q4d VgLD&YkQDΚzGgnW~S$|ԋ=ArD뾒X{ER (]#=lM 5jh!rCRK_iҋ^gk2ۛk鬰6`֣7vhu\5ɯo1R}?3t|A @Xs9׳<%9K;v!@^y S7AҩU9퇱s >r!o|kB*%"88 @?D F[Ag {P=ϯ,}\d$%P0{MZ7@@/'xO,ۛ䣵\4"̀-E3ӉM^xD:śNP(e~ra}T8ic{H?CmTñLIg@~j:6=BEAI`@rV"Vo *aiϡS[tkՕkZ5sV<(9)mz|ۙTax,L@aت }#u#;h\ B`rz`d0 z%݄zYrMV*kJ҄47/B8_4DJ=?!9@a$B]#ݢbI,s#Dz+mi$ 7CxAN<@p+6@B|uvҴ|Bݻ+@0MH kG șwpd-6(rn{rȷPKFJf!Dvv f~tgEsE@f_c9Y"óI*/6/khѬVrhK*׺#wɼ =wXa&6GHCIA?<梛Y1`߿/83&ޢ<7$\ŏ׷}D:(VQXga)Hg%5y,<,{6MDϺMpmgy _bt_O EI=s 01jS5Ou~0@w}L#@-J&]"Cl ( %|<2bftm@ЊCTz;kE%Yd>Ѓ_"]䰤m5I>|MGMQ+u], qK-GP (K SÌǠPAE7,Ȳ2 = f8;wn4P1Кw|b1;6li꟩~Ge_dnHͳz!]S#jX-g&йae7gRfXO𹋔6`Bmaہfä=gJy1^jͧJؕ+"HD&EDە$nMVULR9X ~$PIl"Xb[N"Xy4 RUyPuPex ^)5yz ;@Gu)d$%]ͧט9/u,&yChFP`ޜqyJgܠ`!I5i2#] qoG8Dm:7Zvz_Lf9M V%eg/7壇PH>>OS1.ҳzh ${TEš} ( dlwףy sYX;*lws[Q%!~V DFUу'NԱ/f@ lK(bƻz%5Ey csD3@( fx%JU * x}ZaA+I1YiE-6C5w>jaWGW*uE0Oh߳3{, K}>x37)0({oWcUzaqG̻VQ ?2垕5Js1GӋ&~ ""|_KS—혊`BPZ Ġ<] r442EY-8f D?z] hPaT4> @I y$n>H'Kk@M/=Zc2Ut""U7(~C,W9Q?Mj@i80豧Mp7Cvl8#3ظ]aBƇAX 3p#B7ȏST^ vnV z̒Ccc,T Me7+j%_0K'5f88 5 py Z,᪱Zd2 x;8MMϏ.4h 2ݎxy`s_`Mx]ż δCP7/ϛn≰͢dvp/P3CXZ"z;Ppf(q,ybxHjԝ+?Qv\7T_FBD.te1;EF-SD%rM-z4 =GxB/ʛ4tuC f~u^'v vv$9|PKFoA? =̟OWa ntEg3r {N =;֪0uGE;ւ #`R"xsM3M_+G[NTgphrf͗?<jlET;ήg +Fr|,Xl枋Q[(&D4 ٵ9t]7TdrtXzRo7v -9 5.-E6lmߛ8Z/&'jcL!򑃣oӜAz4 9-w0qѣM#Gk?%EPfLOUP׭F;e9\FU 2k>3PzݍSÍIJl.(vLЏ؍z s%#ƶeS6f`Mh O2o-j@TJf^$ō+ |!B*+7aLjկcgp;7^TWŁ ]L&Ɏ"!Y=·4dC#R^2!?2\O :$ܹHŗJ"PdDX)fmXs|OhG氎t[hKHPHN_&%iɐY!qmVSl?ᛣnHr̉=X##+:Jm:КEhu}b1%H޼e;IdzzhKaV ų_/< +~CgKQ ޏKK&q{Y6FF-N"@Kxdk= btv-pG}}+Rp_ eS{Pþ1Fn{{Ѝf}B`b9Ջ!}PW@UУUGD&[M!.nA Tvչ+6J tIEcX]cG (?,ăKu.gb2"R>e2 T!~w>VK)mұ1?u2ŷ}Ft/) )NOA,rCyE_DtRlƻL^/z 3r(RDY90y=nS#CXb}"dUvN][ma]8L;^OmuBCN(Qd2淒yM4$ $'Ռ6Z4oa YAO<#w)B`5uy(7B{,s\8j#+%@ql* 3s]',_$Mm~'"hۿXjt_&Ya[q~Hͯ}iE!ɫ(٣H ]j.u,Җ0leHZ+8i 9҅x B3OG]"UƚUqh+j`f(p䏨e_-9,{C="89!8ށT= %to Y4f_;>ǰվ$tAgB@=xʂj~|P%wg2q XϟQa2s0nc[i6%M m{kb_ IDAT!׉iB]آ`#|s +Mpo?~߯7EXoh3A/xh5av 8a\\/f~Šuu0~ ySOmK5O6;~ bHX#cqdb<&]^%]4TfƫVD|+-<檡 Pv}zn$,]+sf/^ c$iðȳ?_p'aO'A2הȩj ;&0xQ$ƶԻf)m ?F@ R =V"9âcd>x;!7XF|+/Sny RPt/*Д.]2lF[mZZ #ïX-+{!KAh#CSEzSK2edi)"ŀgi7%x)F spZ3ݘI0Kt"| }W@`@M;4LY^rJ>ı]ouk1n_䩪y*:G3#j{6}kx(oB$Ha;nF5$k@2.6b-l<^`/]rjhj!cqL'PFR֨묌eL(ҹ(x OՅwVt~GR=t};i[[2p0Vlظ}8O)nO6=C~T+ݬ U-aYocf+MD#vܬP)Cb9.%tm$O/>7ͦ%o6eS~総zxc~uP>1PO珧=jπHu ~{d7u}*jA&ƥ΅7 sP !:@q+s} 20$MG:!ct8niqee'Հ+w<(:1ˀZ9'n`u\Ú^{~^};ؙ CC-S6н\Nqt Ÿ֕9iN`-{o+BA(=m<\K5\2\C"64ޣLmMYـ݋d1]fdlѦv8ƵWI2P3Ͽ;V ¿ tMm `Bɠ'CA8Љjf'Lp<8k"#~dGra:6(c7K&?K"7v74>`F"umZ:Y}.?.#1%Dv5GPޮ w-EĶo4S%$14[n*:9Щ *rHxcW<9sږE>'=$ [@9E{Gfd {h+2f”vXCؔt"u9ԌԐsmmuca`:rاe~ND_Gs jO3_,U&7ȭ~|_ݷC  ;d{!N~eN-' f_(:[_1aQ7 j;"vc@e?=^GĤy3Q`3rGG}K[c[(  'VǪ#?G: RnN 7b.^Wp=ڼT;<ȹң 2r@%Q(u،s=`gnS1t]^ ;d+07v1KK:ȸ+ &+SK'yn=,QqOZdhm>'5a^} ̖&CN8)7 gZvTvzKϏw{ܤDDRM%!FmwyjDd_t< LaP-+/iס%ՀmjGǹaOpyuL.YtvyC?6epf)VT€ӬK:~nt H;֏RDye@{N!=`t"–[љU]_G+=.uSZbh}(& ,!?v,Gh3ce 2X ;P_<3Uh H`Mc%npXt~zvx.RO+y 1L`Ap)ȳ@iA=&vF@I:ILW2@ϻ|h~~*i~Ŝ`.ޘcnYp`Ӷ)sptOHY_zdӲA'[%g joܙx _!䵀ÊNtVPjV7PEDl@-AOKlS{ #ɣBieewO萎YUf?{6 x K_E>*@ٛq^Ksd%3F"b!exbsGln6$Eo3/s`3ƍmf>?oa;$Cx?yΆ˓ȬM(]::/DY8 rUsX^:GKᑻ8B@"b]6 ڝ6#L[;aF]ʶz8OAw*Obp(( L0cj2Yzz\i1   %b`x&nҜkDv'{1Bm Id/5qvL@ݽ:1ewKiF{\ROK=rx/NrH/lكliخ=VXɡ)r?L08Ua(!qKÜERasƋ Ӹ%8sh;Q[lvaȆm1GjN a1d%5>-ڍH+#l_Kh&U(ATbmu_oC 9xLcrL5܁,{Q.ޯ&`{溴(F9X;b H}3jb,_DO>>19ay PP㦫U6֏#B k4$9GVOGLi|")Ӝx89|xHge~ 'vҌh#Z_ǎ[ 7;T )]#=6z ||S|[b!=Nk@Id<7b'tvoV+{Уjᨌǻ $A 憯Pv<ʗ>Rk۔F Ͳke%3LE` |NXl^Tv2 F>?? to2,)Ddm|40%>)GǠgR%u=g8_cωĞPuf|>l(KN]3%yDOσ--W4$;`f5~|3ɜ ,ig?,<_rMpqbƐٯ潧X9>@qvF*AXbIF葋[г iNIda0(:2p 2$^n ཱྀ9̌lpA*0_].ͻA]& \j߻+6;ޚ1L?WUggnv=b$3:G3ESwې`Q<&vBL1pr^$w^yf~AZ{,:Comlw-:RD2;\jA SvyS8 V{-ips_崡ik01 &Ռ#'áw'#8d?4:UX4 D.FЭJDYHԘЀHi)MtAB:a \pꃢ0!lYdc扲٢PFXS@)>=5`R{Ҧ\p4 O,*ZmS}mHp=)fk >&\m!5^%%[)e2 6N^K VDZk7S\ @y ͯRɮh_ր"gZp~|{A'zx[o^sO5!.N "\HE1Ëq)(d?)݂A}D-x4 \,ݡw vԏ<-b6L%6 M扅X1F@  :< ˎ1GONg@!zCAUETR7offfĶ "AWhXQ HiS$B[:(ڜ@Ű^RaZ)։Gr8дaCP17rXA4 'L`:s,h7qJg+= r32]C`)3f#M-R5Cp|RizKDTzZk(>%448S3`mݤ./c8J}Vg^m;4Fh OaNހY0I aa3xwrlF튲`V9J0l2JJ-C_%c!8|l=4֞]SOuI1[娠@ꕻbsXe˥wU;aŴۂG'-Ì{!qG=s{{x6` V +tvH< sy(?.1<V_`E Qz$;fϷy{Ux>p:F3)5:7+~K)'p #"9L p>A1;Zk?F{s\|c _y4 CR V󕰀`8-llWJ_2/kJi L\=6?VZ9JZj"媸[{5 3  =иD)nnI|_SMoSR)vs چi1>!LfO T}|in~ha$ %'ygh%- {}$1`v #qOK/B{$#G$oTSdk&Ұg%hy:љQKc =m3R C3A&.zט",ņHDzŝX V=:)vr8żSX%rYkI֯0rpRl3.ZeZHe?[oilps 6,Zo_,r|iRK4;3Opf;);hjkvEL%m2H`ưkpXv@Ӹ'uщ_Nh9Qh%@ $8=7NK{mJҊ! ׯ.馭 X=V]w7?͂ R-tضsؑxaeV5ZΟr0c"i-n\QHKPGz8|mm ^WHYb2;i~WlA7+9>w+ZrxLGh;7ݔg.e lF22$~o81%`='tB[w`xf_S\N[~?z2l)x`KŌvrS :pH|! GF{[TZYs"AH>ޭaE(,y s6ZB4KbhԲ?7s6B P?XXBtԞ= }7TЖs PU7I)q'6$@WTS9g5#" ]Xn?b==E s5)04PzD#Jkamf==^>|0a4Zݔh=6{`38 6ZP";C\/ӠM.F5tG.EƺBI61z悚bfڙ ft靘TFL!pcǤQ&3r梘@<H6g89a@0JZ ;I/yw&x98 F]#Oyv o}z3#_FI(: dJ{&=O܀*ctפ@ C x\XƞdR4i&Yڪsޘ&. gaRNSG'/D5YQ*cx#X@ERIbF^Ti"b1ӓG#YɾMhv^=#~ɐI*8LaJ B|(udoyDiց6<$XMx!1T z14@n62nZ=2y *A)͎OopV\>9J+lyuUr,$N\i{-=gkk9H|\ut:]KWDn&%9tFLܰr}t6@)͎Xʜ5vA+G 0KfQ<7Cw3QϿ\ K܃%4$/w!,q%y_I&`$#x_p L8`uU{y 4mHI+.=9c׵jpW'W6ΐ7Dl#nJ[bލdXB"/jx]_upATHٲ~D:RJh{-uQ/jCG[m,!8E6ZmmC@Q6PtXEEҹwGs; JP:{88:Xk +čg/%B.4 2 sSpHzmo`"vhtk_03Dy@}|x97)F;ݽoFKd% Vm#],T ge-bZl>l@OP,fz*'})̛]"mx^Es=]=X*@@Ԣt"xs6I( ҟsdMq7m!w%9+6D m"-c "C;+9eKgY=@(hH%KacNjb7mFENżOs{ V^jl@/}XBVc JD cvY/Π j@VWcOftN EnRy&/5lOXR+m렄_8!B =\&{͊Wdf: P UG;s (6|%q>(`ӧwu[Rz' /-#ח$Jj(JC# o<֔Β9Ps_KT(&3*0ajLKl}5ɡt& ]ANu˱E'fdjc2?qGxƮ>ũx^sA흹_8O@ d\Cdw Up{P+"C{+R7KPڢ2ae֑7y;i3ܣ/6vJdHgW.n)uM҅mԎ G X "D5Z]:nHl5$g/œ#6T\K:k-h[$ktbh;A̙Xw r=+y! ̣͡~RAp&4q1%Dq*a_wVOIKh)?~}| tрEmL50SA٭_xpسRױB.B q?eΖΎF@*׭w8Embbs ni{}+EL? :XXvNs.߾J.G{H> mC9[zʱ29S>y3ː"(v=Vg}yj˼ߺ$/s{hH" [n$;{&G ՟D@[~ECN,67ܛyp`}$ 4ZE(-̮MzA]MK|]o*D,nQY6Jy%يeT ֞;G4ܹNpM@) ;" כw a-X #pDGyŲ /`+msBo Lc"^:nM{%={˔"p3%yzNvCfN Ė#{^<^ S;0;nle~0,0PO^rpda%zApdP0 %ʥ=pSvK'B:tܙZp4:%˻Q^zRy4.az`8$E<}ѯx `ޞ_+>9> VC1[7CA3^7^Naer>MB.zC.O!v~ YPX^0fM@tWH 4 @m'FR=G'"$b,:d$"@+dXdx*k+D|I*%G/8R,ja uAo@\73u.Q螆/{u QcL~>ALעGǥ>ZZUEղx6lhC-h̩}Ә,}h9^sF+QH={ :thsC~BSTx{hez54DOL ܀טr]ML~o.ld*,"cfҪ`84%0[gw3+1~||}|{\ Yɦ'v!PɽX칀+b g6u'1(}{}{CmiKu[f+i_ fo*^4̌;$F19Ǯ0R *c ƒI8qv(=[MZ2\aV b~v\KqW(aUx/m-9gg@u,;{z<),LVH4 f8Z19*d[-7`V=;j=;,z_+ {h<%^]?Nq];H&dE 6.؛nn۠S>áA(R $ ޻ue*$.|T'|ۯľ9<Ɲ+Z^PQSH笛+qAR Z92]/EN,*şQdNڱ9śש.$@x @uސaJV-x]B <)њbٶ(9'jXw'َDA/mK\X0RO o|qt@}w5ۢ{cڕzbub$o\EZ=*[=1lRC ~W䫔=V) ] *ˁ N`oI[GC3aޙ=`8LrԬ+]/(9XLY's"K>J6tEہd~,AyHO_ίU H;QMkI*XiZ4G9@g> 7xu&^_ cʜf F}C!iyBxoVT\Ƹ7 K+Zb TS1#7[oOc[0::ͤ m;媃lfoidMqUvER%bPtaK?pz{thkNYealEZC}w'ե92 j~܈dw &- 9T{ F|&7>ID7E} Q@>4vw{· 1 "4qe(ϠPxdHwK^yMH7~v]wdA =CqY^bLoi # av9os4P/O_#y !n_2"3x; z ڔ Ԣp@*h%t˶MWٲTl!ҟn:c%8U='D3.68Ē33$@(qL3^-*cONj)ܛvm(*GAY9@Fyҩ\i]?JnoODsVL1Ѕlzw`h٩bQ<[3-5WrRWbSNDɱڈi8eAW5hM7MA2@,:ek[>q*3 ԝ lLz||~Yb\b7g(͂C W>ϡ9o>Lz?Mu oU QÔkmJ@#Aދ@Eoo%*':-GCJӠyQ=j>`D}W5^ f/mAW{ME[wʯ>)։'Ix'yƵ'vhpHC8PE`EB^ S[_baD@p1D? U2ca=lg$ڛGL!ϊF8>=eA\w3~.ԣV !6}^ɭrٱvweGhB|Wy8Y1$Ă:7|Hsz;IyN'߀ Z0$Ǡoop~DGY)H!^f-MU\5Hf,eōR|$x5Eueh%b5I҉28xB2ـ8X3maPs}cwuMc$nwlalG&Jb#b"$0@ ĉ@88A"@eɠjwgsw9ŏVU>X;߷WU^rrrbdd륯`^+כIr, ,ğxTlr(&X SUd6L^vJiS#ge*v^sِd %?[UMc{V_1ԓBV*3W(r8(Ӧ52GՒ96At{kYޠ: ,K`޶Rm`W0rd7ҭz#tKt h%ZzWqJ mφ 3d;!"+߅)fdu+"TŖA&6DeV~K@lcT1e݈Tduh%/R-*b3B76XtJ!*{)niEn1E}â{cCMn 5ɩ8'#1ޚmDR=$zLjh p g3kX%CM`B%=4),L1"/gZ9~#ؤ{&yu$THe2yg;qܙje\! ^],ѶWUhLCTB9X/T*AjKs\swUAF9S!zk0o.(R[ IDATyͶXj ?xUޱ!v2/@df}qUUz1-;B+ʨ ?emeAZpZPq#~?GX+y.VK$-xkA[!`{`(7ǼȦ FrZI&k(1lW!oA[ⅲ)aORуn{4Jpm@U/ov wcR"5i[ 384;S\lb==$(sLC}%laGAM~ !nA"Iny! F?Ÿ}G2a(X c%߆C=zbWPNؼ-k"ԅi2Mb qg{D3Rp<\{Qd:H*df0OK|O?v`9tOPϊPFo4v]7Pi2[ۦ ;` q$TU)2]o41:~̭$\kCpME+. U[t8z@:k\3oE|aO$7NhG@#7id10rdq-D|ݰU3r<7DMwh:nͰpzŏ4rZC;ݩȷ ʹ/EL{rSnpPب>㶬7 T"Go3xt8Qt҂ГQr @Poi83%l1rLjζsD( ҝrNBEI4x`iF&a2RRA6 Eԡs]-®a햛^˯돍ɈԽŜ7Z &媰A,PzuմКyS#;%FV*iE+>J\r]#āߞQ ҭ4t40Ӄw]CȦ-*orfs1~A<[PzYI6Q#A.y=PrO`{!Vc}Ż}1 ҉`)P; $tJh4[B*A}{E&+܍)VS1xHXPHPGPV*/`#oa خ-JY ݶ^plBHzf= -[n3Fi"qQX `耴ɤL=Nk vPNρ,vwK^wƂY& 3+KFe^/ɵ\BTD ªRxuǜ !Z\/rpSU^{S=1VNbVx7QGg60u4gHMPdUA]Bzhc_F3bĨ㵍IRa'ŇҀ.Egm QGwh`xTTԊa͙f6CI6$.LB4a ?eOltIS6nP3J]c[U?FRO3cz1[M 9tw4Ã,F%33إ \pB{_CC@nF@-"_AKhOfV13ͥ=a gh>`1H0q[mܠXY4kyYZo۪h.[̄!Q|Obzs\N$nޭIm ӌMм8؀!@vtH$5jΗ0 ܾW"g({x<VlʆH7:%>Pj[Q-uHZZ#wly4G193>sXd`pQVB>-Z#ͦW֕կֲxI M^!2+ouxU_Nޖjy&fljw(N7'sj' z~я}0KfgH᦯Pmꁍxx5RBvH? lԟ ,#է8):)&(Z(+CkϜ=FwY:AOƁL6?xK%_2?3PkqAr)J,bf;Іϛnz rܜe&d4ts &V>F.HwίS#=_0=a&䰓ނ}f54C]meLH D" a)GD "Q ȴ[A!ҝj&{[-:!-/ڄČZƅ| c]J}I ^^]GՎ2aC ZZZo8u2 ]-3M<pvZ {SЩǶh~JkuZ1 4 t"aZIXl!>w9Hբp٬^i3ID#qC]V"PW'譳Fkٜ| I1q9+OVADo jwk4 -r.S9cbMU i]t);:6\ )%V0FL,x\WqC?!OIh[itU4mKIur4ڬȱoH- .'ߛ.0_ Cݩ=5S~R #f[vG(9GzlfE:z, C茠Bv\=E6M1?y1%A-e10Pa !(X.rFﻩpnPJ5}A͇!Xˇ?#G$1 3 $4*mZJRrn}h{m+~=$9K@J,1!vJk#%DN#"#MT2f^d_Mgp[ "ns#e/AnyeJn_ϋg+mv+8,tղ aNaX%~ם_ d: Bƕx07E:g,6We)"%R @sjĘ$xJn$H!c(CZ-Ӊ"*v@QSڷ+荒yՁ7Ss-GLjI'^9Ӵ8(zSJ Дk!1ENaC=ElEhS;("@+Fۃ.n` mVy)hccq贊DM|sW{ŧ݋WZ@i}UUWG[>}dhB1R_k/{G]չ$ۗdB͐Ԯ”%ӪUF"8;ҝK CcX3K4%GݡI߈^LZ ܮm PP^ mQpw2 Y[!<ӀPi; mF-xL![ʇK̀.}zOgaϣb(X\jw| {/?ЦцDIuWt7y99@cӀOh݄mBFԶgǝ_ :*ru :ͽ|5mCrPF  _M!| +϶M+*Hx«-hU3~kZ|Ig)WAu%yYSl8Hrz*!( Ύ's{ջWK%mJԐPϽU6cL.Q? )D74&RĬoM8(AZ (fW쁥I5ea5?ykT`-P"A"2 ;-`@MTy1J v  :6rpk(`ȡADC{mo[a PR;gC){ )r|qNa{=0B[!rP$"}!ЇS^޾YU"*דG) )҂<\\q?{p ~DPX{XD{t8|#Ǣˎ)+aŤ[Cq j:` KTpDXڍn&hU( Sҁw6,_h nYkR4ay{"  ǀ 5E.?1vxZ|1tlP'3Ṗ93]~vCbKnlO ҡ7ځo8##{ 4ר@#sĵjNS+] g aBuc]<rErW+j}zHͻ@*-xܿ<;*6}?PdT F/##JWIR磻h hU.f 8zt#4-^J6DM *M R?Wo(uyԁIMzX*ԿNl`>LBCYУ ]kۋkLM7G. 1te=(9ȃ,.{c#wJs{t1xh2(T@ڱtH.4^kƽ ZSlꑪaR22rŁR5 Q AķáNɧ"`,[q97# 粖 XżcSYdx/l+Rò=ZlHl_[-K+<^8Ch;@l$r 8ru9dErlIp_oxЊ|4ӊ1T^Q~{0u; 30ә勝Ӊr^0ZwW*:ƺ*@Hgrp/;-4:ޟ50O-7rhr:sx؃dvw\CQk YQXƥ ǿUzx;MJp,uAx PLd66 K  Xhx%(Pi% |Z L)tϋ8Pҥ{*(G-xwNĀd;GQO;=W0PjһwKCn$d{C{(̞d@9l5VN3cLq+XN}]_IzCLvti! bIj(OA, :}60la@C}aWkc{HINNКG@K@%Z)z t<9srYr;$iAmw?Q3CԁY{Xo,HJ"z8. R)Tah a;m$Ԣv!2Aۻknpr[8JK#3ۛ p8НrXDVag;j2i4X჈wu3WZZ508uAۧ!SJZm]1m0mf:$ {x;.\9%}}xZDv($BvzxAtT.i:,$jc)5~r -$6z}R$ؼ/#Yn2xӨ׏jgDKٗC6;7وB-4@\n*t ;H$gZV5cKY eQEz8\)O8s9lWب@wԀk5$TaVfHSbi'BHAXL0k 27&()0%HNd2/*d85dׁT⢋UJ&"u;[˾dሲ( A7}F^ld\!a=Dż7+WI1#mi{ 5AdO0rϜK\cUFf}9t+`΍;vNPkJsYiV>V rWeHjKZ`T/OuŶݖ*m2o C:q]u#z~6-_v B ~}׽Z2\#_kXD6 IDATa)3X9E^ sqdԹH]\5/txɸbځ8:al +a _ؘ Vp3:aBxÂ7J;﮹rg A;ޙ&#u䃶)ZOƦõ YF`dD>V1M]At(ջ1xXvhRSKI5Dz̬R }'Qnh1Y!SNY<^v,?Q*$ j]l*LuHی,cvD@$<({v7@˵P)̼Cn/Ut.Tn*ÛGf7)PBcSeAw # {\Gʀd)QCbN=rHT[@6܎nlMHڱK}װEӏG*rG=up`?YRib"$X cDI=))nh3ʺ!Obwm'"}TaMl˘*erae=oN_) m[%e?G \܆DC|r 8o`O Y 5ޗ&= d3T: u >P3ͧ -Z_GoWQ5Els @;_urJ;p ܼ#غ=ߑðؽs{7 aS9VLQ==ܤ%WޡXHͦ?l(g-Y,J͖K(|Q }[/f/!0\mc}㶬w M[Z ,^U鯳V:)+50 TCBL)Џ8vel ~_UoBi~4DD+j`f1r"c޻_NԧLG6[ ΅`;jz8TlWnʷEPM`،#j@iH  ."e6S*"'oM0~[D2l #vGz9#SIvQ5\{AOj+7QA}{ha{vB(t1=}\a{9hL Z鲜ڱ-I 0ivEt(rSr^̈́gCO>oOvOXruu2ۂou dHԞ[ShM6oDžfVh4ٍhCOgq0*V).Mz#1FcvY>*x*1wHF-zq(7 (.VۅUKqscrv!R!@& LO1σE\ zA5VԛoMCsE`@dk50GP#10TdŲ@lJW{( cteW- rZR=j:/3٠/؊DP?Ưb:PS>EF CAK b臘NeXTl5C}Y^gKv+JMא:ABQr3fX..ʼ EdwE?cB CKQ"Pt8߿=,%PPո˄` ڷ+(Ѻo?}\nG׉d5DO6dתV#{ֶbP@%DxdKʨS }(e9:^J@T@/N*ja%q㎨hL1lptWS˵}pi\ ﷇ}Bl@>H!̍/''o4SF?l?=Bubd}$E\a'B٣}E{W"҆ 3\T֖dt`6#2f,j $CKfQm+%a*ZԞ ii<jL[ HrIHp ݗӅo}PIVXN2M[\Q`T+=n+ެ8"'"m(Tv tu Tu;¤dzr ?5֝B1= X(aܙG)a(q'&;]Tyq^o=`jonF ղٸ5~!!RWLb Doai nƺ=V{-YO c{H]qko4`hRb/b}Ro];-_79S}r23|k`פA: \.MOP IҫTE{r, _tIs*8 yB;xo>nҤt峛 HlzDf QGAUeXscrhB<ͭɻd)nPVe :AVN1гcaLVcm P ä7i}0'({e*k =oD}rpo4d== AÓv y{0;*Άg+.-$zlNak ]mԆF(w$> ßX?R9A^J{ojaE,%̴1E ڂZ(N륒ws@Q І&b:OrZ ×KzS -ӆD"ҧI`Wzn `Lv!Q&w3S EࡗTe ܑR`ILdrٛаFŸjI6dg^!z(`{HU2Q&{mU- mʊ6*vyhU0{x KQx+t,mV!y_C%! "T-? 4]Rgv](Aay]g:#jj;t6̊%po Z4ÏUH !m%L˺!b+"`hoy!Ȏ:h5`3b=E\@bS7/ѓv5݁u^A1:qAV &xiX:Q` ֆ#''U7o_̞fPϕJK W ^B,}Bby2P@蜤Q-dz~.oHڐJ#\)+Rk, Zm֫j0X5巅gtH6]ѫ ɐR{8NGCkdUC`E65GtDq(|BQfEdgAgy ȃ6l"#&`A79&*Ț4<H^i !UiMM9ao8]3Xܹ7:F DHmwz1W,m(`JduIK%U$`R>Yv4eNjNHKUH@L#8^t5tCE nb>}e0@&%턆bDW8ږߜm8>).Mdjmw Cg%vQK ^GA0OCS.{؏6rP4 x\Au8@N{_+իj:n9ZoNi9S-l\3]V?B T#2!s_ c/fK8uS&8{#C};'+.P=`tEIug YTKxks; A)a Z;(kp*Cy+8!djDT 2K w;z;}F7G\hx퀬z:5byc)Y8Pϔ 9aLF%GlojryxUAD'8K@bøM=ssj:u:bLŽj6PTO9{PA\4rhɛ@NԘ-*BftwhfވBDZ|vtIm}Qh 9* H4 cH\(X0z{ymvU"6V*? Hd|'Jm@ȿe)ŷc?MkMė=E|`8/*ruTаjqj *Y/zf/^2guI}xKʨ+9:` .}NXƣ=P@ 0{4A/1n Eâ60r̊55@0__Ŗ7U#4il7t{A&CGG9˩3Gߠ .BzaD8!\O0&4GC/J;50 t :xNVŊyFDB*6r&N'hNpt6 (Nd!^w )=i~zea(D?򽝛J:0c""90'r Ыn@)fDdvx^Q 0n"8986B,1yG~iftN;h%t1q<(atH91j:f P]o<7Ogj~nKș2#D>^>x.*k81Şg[){9e JoM@C@iJeR8˧c(pf@eﰇğt!&V]]`rE>. ~>ri GaXcXњAPuu:qHh^b ܎I?aȡ5&5!Wޜ'=bF0o>`?#PȄ!Q5/IpYY Et+E5i@ݮW5iry Ii,QjTipZfbmT <b3TWOUV)bk2@^^ LlqԱ{(1JAVj c=(`ȡADC{mo[a P>N Kpvh6t!̤S`(94VJ'ǬeKI~aMNy48Cʼn4lVT] j{k#HuƏWʛZ$55IH"btN?K L*^=x"Ǥi X2R OT ~ُEu# jGFE 3{q z|B(0CɎX4RYy/d#Ozt#+(]سPۣd.6t *{,opVkv}ild(Dڵ?(*"@z ȁߧ[b~j tY¯=V{߹;ҨQ ґ=x1گJ ݥĵjN|#j_Q2òr:tlZQgB;&4z &vMZrnOks/NJJXӑn$z%jybrOU w4l`u1~?"pmC0iN=̙NxLJ{H)[9L sHc^^ z UG h\qrHQ5ll[?i-^Cx:iQ:0\rUP?;ݏNzw!j풁1aa0R|=56} \|%e8^:f< C Mo/r0 ˃j Gxrs(,g` IvqX(V OUm|q.+Nd;^="ʬ-R#~ISRST{޽2S.P7t.V 7&p.)xx&ſtLMx5?\z/ȡ -\YL l|Ca9ðk h_' vH?:27J8P8@!^RhZ0@Jĕ1=iV.uO=xѣ$pE.}?C!X ,/^x%/T!y[|\⬖A8i'yfN0g0lٸO>B ,fq|6[av_a+ceطH ' RD]2&]a x]5>C'h6o+o "p9j#EE2(H%Ԩ!yQZZLX Jsv4PH.;Aҡ)=R[{$P$G43{X$c$xdULKP‚irHr)4rgOz3~-r9c%XW7yfR[6M%<6ΜFTki=%v٥OBn:jT2.w8myV P  rd7PRCD<;;5!NM g YCP|Jj@Nj($TaVfHSb`XL0Kk2a{;R.~,XY IDATtSK?^|ISᬨTA-2bPd @P_չ-X7fUY^MtC}9ߚTdՓ\[7.΀(C'I(#Ȗz}YƯŎ?p 9Nqy *<+s2FZ9:wC o`F|!xspmpkɱ=0d]`Ո$8$Q|"1i.ˡh_z {0D[sT9Fsz8&Rsy%$"GfU1#NP!Q[q~u=@p4]ON^aRf2/ *(GOV?^nӳ #+ծSB m݀=%b2EI۹d=ZXƁ[xrh˧>"KoX v%'[S?e?|~y3-YIK*ĨczE?lZAQ RJf`sBQ$6m2كQ@RH"z|zo_7Ʉ7͚h",ȪO=A:|8˧ok4s))?zLj֣5FJ>K9N4O`ت!$r6\7~Vۡ4Y{lk\7HLe<З,5d%):鶃|E~8nRαg\kh\ζE+nl٬0Q_*<$Ǟ필-0J[VA$4I7^`ѨFI3!?怵,^]5+ ]*FP Ŋ߰lmEj]rZav d,kWey[3 @E:V@L'퀍%sـ]SizCSD*h0O; qmZv>[D@ٽ❨%GL@Z\l7Lx4T7|wP \!h4h0|P37]wtd( o 7;jvXLq1-gǞ}ȁQH8H\PNm,HCZxe=i3KH-bԀ\U8tïZz%pOtX.ċ/ճt)~ Y -N鉷"-C9HKP+9rO`QW !\6rEzq0ga%oSz0jeө`w_=8j1xdnHIuVѣt- t93Ƽ=̭+TB-hGr2gp]N@0rdqx+D84U3{o2~lVXY}4i ֤Zn\|d#z@|΅8AjR qՏ{:պ٘"tKcuF0?z)xl̨#䞬$]`*h }3E6]>r[ +Xpz p.[.~x&YIo,q,l~zPN&jDD+d;j+rOca"BԨ2J8j,9g2H/)S6SjLCj]ڃkc} zj uPf>+$9LCF fLCsj uћ{-4`4 *Pm?"t8Z{̸Le;|cE1}`(aNpO?+ wz+=9 0HS7zj$ئ0]jwDlz$_70Hyi{=ܢb/!cROo+nl5h/3 >=qCqZ&+OӁ@gj:pEԒ@Dhg° NMvdb()RKx h4h^7.}9p9]J:h%:ບd;l4.gzï>}HCM!y_^Nґw/ί)u?pEtkƖ5wMcrC ty6s y֖h2 *L:I!)SaF~' &cz f^I员e2w h({_hMTҦLg0IC: X|at2hH&?u)d57AAPS|naWkRh7Y 8ח z$v֕hQ8ןQ8^lsoE j҉)CIZuݰDKλŠg>?~%\NW!-K΋BfXGG}~䗞{v $E7h{;ʜ;/XƗPvnQ"ZR>3$3 !imK $ ;B1 @0S4n3_iə,qxgI30% u5EI 8\Z"{gmzlyڡsg; B= ֣ZP̈r%̡;W()hkya]iDI=Ma\-o攈~p B-mjL60UMWh|1*1DP˶|i/EX٨y~)b t~3C~w!r`ٖ @&Wh!Z0X^l}G^kWmȧ-X5Nn PMŠ9b/ Z\y't(u!WnZ?'^Oـ#[ Se/BoT)1mvcȹ?83XXmxW%^C{0RܝÙيr lD[mso8xJ~xjO2qzM <ԁ;,RÞ;[|AD}Kɶ,ܔ>+$Ge̠iAc}."w$4?zkqV1c 'e*VVpK.@=A!$F|T[m$i%gXvZ9xr6~ Ak/ۈh#{H0Qћ m􀨦cS4a@k[~=L 1.rH2 Y9ϡIavY8&yYu' B& [6s9E;GV Q#XAg?jv =*;-7cgȠ;.$ACFlv"tب4)Q. єhեA`͗~_7=ĖzQYƚ%C({.t>uD>I_sMv%@D*-ɺ9ڧjIj I1E͖#J%:]|Yvp5 aߋG۪Xc 6Co}0 BOR9Lm{=wX946@nA؃~DfRbw֫=$zyޙp`|h 6֯9^P_fhuz Ϟ)C@R'b/tW,mlIZ² /8I,邡J;NP[W9t翆JP/M9ff&L"p5җ N@zK &eRd@ y0.3o9t`yd%F<{~@gP Zh\i#3wXnMI&S6DX. [hڮokeb"}_ Z(S:bߐmכ$\g( ͲӜztM`=BƜ O#2ڀ=T?#FV$d wWnRaDTN0 \ _X&y+)H9:K QB *fbYOΙ|N5(lfJY&Al˚J85,B_!ݙb) ]ƺ26~_K|?az4֏}_]Ne|f mA7W1AӯXA0ЕلJjcA~ɓ!}8!kŏM`HZr9DÑ=iIڃRلm_nzJ~ < @k  4hx?[hu4 aFC KMD 278Q|#X5n.x803|VLz0Gۣ넕| &0 }'ڐf2,fEtnODzD=O iusH5 6 npYԌ ^s($mzZ?0arf U 9PS 0MH/8٩89-Nr܄`m\$a͉8*= 4Ckԍpp3*=X~Wo%e sg[?r$N_%o| W8{LJ_q~?Ο\ s|oCS.Cܴ7My?HMCmZA^jEzĆyU0hm&=GM͟g i:sGEKƏO5IpWӽ`.1 (ǔ9,6[d4k]泻i&lg}zy-تn~js=뼇9~ɴ/n`%'7sclә!ݚ95NIsYn4])_i0Pq.&+b?eJgʴ5 7)^K?IE+hDs ُ]/_/h'==V V͗~+u?v]7BL'A8Ù~U9o 'ɉT {' G Lc{^o>!0N\6 g,1嵢=W[ (Z*+ E{Ym8#Uo{014v*b ΁c?CHTGly04QwNhm6rşi{aMNM")];yF?a6yE UAYnr>.a*Uw{'hqb|l +u"Gj$>cU3)M)Fq5RvBkNfljsP(, &ްu !~'ꡇ  >y7~e_O}oGg0* t]e7ݒUo b?oxC@a[bo@巿|7oYetGb?d/V'wՋެ#a tF2/G~{^Ko|=q+|˖2S:4Ч""HR uE,rSyR}_XWylC"5-= vO}@@R$y|"D-X=֎]UON!ma;lN=d1c a 6{;C1KVX Ik0gvFl5P"*1qB ^1|l~Z ߕazͩd^96Z aT/%S\+02o8=hiȠz+.7pc  v3lW*H*6Ύ\p KWlFJ>h٨)c7 (R ˽3? mS?x9b>.Ke?ijuhVEn$r+_O>>̫//~w?~|?_Qd׿o~~s 0pqRP2•Y"O²C_¹N k[\.~_?+u~9t#pL놓ް4+Lhc[؜]90:SsINWʼ6ax:z0"r&m;%`^G3/ 8gJ#Iğ|(FCDIUԢ8V%]gۥCX2J⥃םf 0I Zx&#ZÞO`iRT+`$-pk:>yx[^r|7[! y/Ww@ Y9Qv z=t??BSEͤӮ6pTNxJ}M.zu46tn~ dal0*>VZrSU0`:P) Cb#RzA\݃B꟩Chωѯ@mwZ J cIP 6kSV֡5 15.J +n܈zh}iypҚ猑㲞sy7qBL6"gR=5& bxpm& v̰c'dΒ2CO57_ԗi IDATn_ےZ7W?/#P'.r;<>OE[y˧tE/yg?S^{k7<$>_䓏/i>9@x捯~ smw߻j:[v{z6(|oJg;.~|tz>?~|t*`_CH?k!ϭv_Ҏt{ ,HwvYmj= @Hm&wË^t&ivk.dF2fpژ>=j5{wT92yRfҩw5n~ qvAz9KdBO6'@"殷L4Ti]\HZɊcJ\p7L4 +[1- бUK([@a@QcP,(ɡHL-)Csv{rP>VGC$gN?/#ckO}ӳ?xuj>?RzHD[W}OCF陧Ύ*~;ߨ%p'> `ΝC[Da4ٔ>ճC^< 9|4@w>;;y_w޻߾\!5ĭrp;ju7R'"#j=]9 =_Ω*M|C9졡ӷ agƀ z,!ǶJ K@Ԕo^1Åh? -vy>,VrlEBʹfST5(YfA7` ,8e aY)vD#CДyv3yJ?i,i)h( N0*7e @hܢ{//BW4k-pWrNo<?r<;=Kov~<_dg>h{*>!oyk$^?u:m4>ū+Mᗿ}[%}Cr~b) i ZEeQG5twܽs'w EOU4Fd*:j +Bt:}{ IۊWD{!ke_As'F).:9  W`38%?1aoGP!CqSyKYLr"[G9S\FPTڕ{D4N}ҭjۤ_l,ek'd![0OfoF!cV6"٠gq|fq) V$X~s!G֗!9}r}-|?pX<;#/yK;4|ӿ'^j1;Hťw<=)7F>%o+F+?ذb{JgO XS#eA9-~L@sS(m;_޷fZz%?#C-^](:ȟNÄ oon0? K- 2:(m ^mgDlP/q)`H!']{*hV;+, l܃ok7e;[F8{Z\ަ:xK*{~A|Wg#F[;Zq Թ>r\~- #,ɝL--XʫyǶojvw`.#9khRnl&q(;:97ܰ{NO O O~r_t WmYڿ??ο~هzK{Ӵ?<y|oԷw荝GݿS68yoW|,O-o~ٱH:>a^&Ї?׽)1w{o*ܴJznwzխ>ہ>ܒgB.2ʶa$׾KOx8/~o(8$` iM#]wp 98Cp {EրEˈ 75@C6 [fg^41춇Hoy m%9k:%̤ g (ʾ!槲Eʱ[[/{OV1pAqQ2 s}h_uSsv]ڮi@)?v#1f$ZU{k,h*Cck9qU=gKMof\om"כw{=YEά^Ur|k=R&J`[oʁp77=Oo <,޽ޗGeo^z-%D|o}\B;ۉ9'u'_/_m>{q3~{.> MEP ꘁ f%)Ę yODbeu{~UR{vvOKdUM>PaODTi YАyL G`1̤&p5|w[̭Q>>)ֿOk1ܡY{;GwW@JpCdĽifq>{g0H 8%zeSIdUĆXmXw-%(aQ2)"iJ"( NA`gUUfUVz_ՑzYx(zKcY28B"j  A=6x !=nS\h`Hh#|&|e]ud6UQB滭j@3?Gh^4D.FFH(Z 2,n?~x'"!2d})oRCKr `5Z?W(2!h' VV (!_u<Q7fA3:ڿŭ3VAK2ճ@X 5S_[.a ~uKRnu &De!sRd+biͣB} ܅áTv#7׳84x?:z,fvΔqڨsϫ?(U8hTҳ9Sl;dZ9f•~< B{hG L~%zXV뀹 @"ȟHc'.YD+E3"CO%`7eE:!3j8]XD]~Y bcFt {CH)(CW N ?@D4i$T'P$8 _6UHā U^=?Ks rYo}hSPbYE6!?-OP؃/lWٞRV$qJ'S'lR*հYOF–- ׷>,SY{w˜j,0g%L{r6$PӮ-7ҐciڵK3kVY6w286*zl:{iC-&`()ḲcU5&uB۝^^RjYvS3Χe*h1 mLn?ГC d$4L؏1i%<'cʂ!/L.@%0萃z,yA;ʽJP ;`@f1р/gbrHnp#U@ 5sZ"/Ȍw Fwy`|0Ap3P:M)ѓ"ŇbEVog>#o90v9*BF-E>,C#f6}).49=gvE,a20XlN/&[??>k~?&Sn +m0/mѺ鎕[6=wZo:t͝.]&ttLMf͢-[VΝ;wj7]={߼IלENԲ+nܸt9ݝC}}ǎ۷3q1G C%iI*ի7ϟJBwtWMKKm+W-XpԩӦMQJ]wݻ!$bwvʯ ibZd K,3ust:M36-^:gi#~ٝ##R)^=kNZE5/ 1Yk% #Equ<5Bz ַ?qhȡ6cP>!$EN$+̯ "Js@';'Rq{ØP}4[=ߊ:a:0J4'fL[aSU`l=_UDHhGmdH146!^gtF} A?N{ٺ詿|]p=8]=e6u;̛ a<҃}N|g\SϚ50#//WZd䥷BЗ/@l3--]]~;_{mS?Ș'+x=]YfΚz'>rO~ /!\ڴycm1tt-Y2zgg\ˊBt佹I^~,*^IcS;ʐ$g [Z꾷3}FݫV/#wW^cx^uxh߬tiNϚG? .-Z `|%B?d₩nLHi@491]5 ]MjI/w†\OtL#v2ѓ !VP"!26ъFDI9 ΚәZUUVΎ?/N\YS+qJ7vƞ|=rT ̼1Qg^^F!.9t4/OY;Qn&6A+疖~ z+߿qWH-~MG~Ε+|OLncòes?3_|qDd,d˭ O֚WdmoG۶qӲL[Z}|̙=W&o:ȣZ #l[v}'rXǏ:xzttemMM˗.>}JcZNPJ={߳#gN_ ^F/` vqFx"xw(`6x?R +>̎d)3axHK_{1YnR/y5wݽi588윕߼E灡qv}}䱒:)'Y?&8ZsJ}pJpʟJ%MP97 EDzt>J\:Cţ5Dd<ȣ+616%[{VRW/>KMvX%ÛY-{7o=qV% J@,gŗv u@K+ۥpYgߖ8`=͔̞;kƴ+nRka{UYq(yVrGڽk7ZΝvb/O~+.\۵3GG-r ml߻W g޿p,Vpv[d|mۺ9gjgDZfb1-rL94۷|;Lm^?q™ӗU-X0sgtܷgqq`f$f⎎QBmK$}##cqu`7~}7g]h]wՊ)]O|qXbCiexzS.r) +ۍ-l>>{]flP5@`I~-5T)\+;Lc?#1>L[(QZd_RPhp<^)5'n>c甶'> gF7F7l Dhz pi@o[n@Wga׺cVĝHlyZȰ+o<յVvbT1aAS|L+GtF%K~֙@)}hѻ~lm:ڔ/}hlF/\v͙5k_ym;مv%+@Xd?1^3CZk[6/yG7^ԩS^yu}/Y:ɋ\pT>sW_m졵E:H-ՙeNEWw09 98H.Ts_jщ2A|ze9$nF[ʢ+}Iy#̱bWA-у€=a#isLwH l蠷AU@R3ҨN\ \ՙ"U@?CVzb]3R\ @lK^YYXlS(vy۵]KI&NL:? *ּoF0DBh9Fk=ˡm֖Fahxy/p%S琬vn i(Ї,ʧ~~z@##cv?v WÈ sϾ˻/rh^S`ƥt}s!u󖕂Z:o#fΜͯ?{ g3@8sM*/Z))o~9B9 &5 IDATdE{pv=Y+5Vw @ .hd "*]9@-bR⑒,;KX{^84(1N$h܌=bW՞@CK T9%{P5P1(@@en2u4dB)[dČf1?MH N(Q=G I$HJg^S)N0KN@BnSkuw|kD81 t~9Y?@oœ9-8±_xqNx6f3g=We Wګ{Gwn]vϺiӘ}}acϽ&ׯ_:o;-XOU~񋟘>K1}O0 |}`];Œszz @^P9~m;uk}0i ̙Ǐ]0o\e'R/.J R4uC 3 QيCf  i<9v/d Qr%9%UPan+BrŘN,{I4w}(xr&=bx}$"3?T} yu卞 zl4WA)hRh2Ϻ΢qULywxLD/MD076o37|MP;V\0"՟oA @Ѕ*k,>''O]Uֺ|G8흃wժ;6Wִb~ϫr{}gwY9 FFGz…T>5VzwyDΨ^zi=3q 0޺bӯVZ[kSN3wժȏ9=sybjrE`T;Ћ{MQb0JC< 7$f%Z[8ƀ@29"Q[-~[)BA{fcpZnByD ĹE0k[ *+O.URi22_ ,5j' #b!`?8 2vhe s л;~j٫Yլ2*nPl 9Pa1ZdA[h'g)Yv#gkjrg}uJ#^y\joV-[6V>|`P]r9Ǝ3]җe71^8rښU F9Rl>#|ArLѠ AdOt?/hoo! 7)[\O導d@ouX9rx9;+ 5r,56//Р.[/\lu:/}ҀȁQqh6wܶA'Ph 2 Q{XB8=(}!{p)rp$W+n;٠cDlAŴޮ;]ch@9l#iSLЮipdK R*/9 dG'ӣ*LB<v;`c+d"Ae3kCNݴV7;IO(I(P#*9Xoꐅc#jƹM}*X+_#^tajM UBOi v'5ťҬv_CIQ)l) OϞ d0xVrXkB>2ԍtݝE.a%K'N\0 4^xNKKs/WG~;/ Gڲ`E,X0s3Lptt"/\zkb̚3o QBRk{ynhT{7`RlYF"h$hII~~ȃ%ΗG59uxOMMT!|:8 A@@xB/)$S&wuA Tȇ^œEl98,N7}UiL̫XHdf8(h@dkchP3:kj`bGO8}u8~K]; 1T,L\; K59RsgFFu|cB(6XqOϞ|Й <EpZ"ML=6CbӦӁQqPQn~Q ʫ X.?SP\h-]XhrQ@&eoc)G$>fG`'*qz_T-#{d_=ɫho<QG<݌?0Ăiě3N.Qg C]NXD.9zlLY[*&*yl,JN/4ObH X޺5TwvO\pO{Rm`gۤŋׯ\ysm/`6vw._葳zrWkΐLlL 0<2IQ#3 "ťoI8 ${ϔWpn\< ̧( ˀSʄUNYo|9$76*w"Ŋ7,"q f0DD3aR7ߔO㡤X=حm ?m-_BQu YbmEz vo'4P߻3LsVelaeHCuΛIt34xQ9A[C` =9d}R  uMo<6Vʟ_{cT5cΌ _ u5XM&4Xo8iR q ldHULa`4 ػ~Z|?S3 8{ֻ&tߐh̗1ڪjb5Hq*hSgG?枔سΝ266St:15 Mziػ%[񌎎>k6D< tΆ Ѹ SBXAѨE!7cs bnUA 4$ڃ+gv6hO ޞ4oP%5E/x@͜f*E̾( Zp4W$sP $ J->cy(9I<]E#A4yvI: , |G Y;!(-_"r;)APJ1rYfsy#LCgkto5x5l߾~N\mԠC7O5#AcgP7%^ 3[չaсJ044zy|kJ…OkNQ'ΪңL gӧ.?' ><ޕ./:\fp_/5й!4뛷n Ƞo.Z4'CO荷:bN_2F@8vkO]$Tpos088B S(1Hg` kNC}CR&m\\O4h%OR#Wq2dlP{PB=HҏH@F)!2bhBsw0}l3!',ů]O5 h+C 8+5f闃w]] (Fy?LyrX+ӗ#-؉l@^2 6Rר QRu /:Xxauu<h=[GЙ>ب^\lBy!^^gf!RHe+yx }ez]ex\Fl/ɱ&iQ,\88)b?1w*ek"9#;L܀3~N7ȉ?y9 #RcA3)Sڗ-+l"L._qu_Cl . s9ʗ4r JDB{O%%?~ [}.b`R!;aV..ΐ<XcFTΥt;A (C+E͊!pLRXfuL"jJ34j0?g q ަ9L"ܴU3짂w-bfz]~"[t! "Z09[9ܫX\( ىhM*aa_Οj~ơ6qC-ǡzvwl˶?րƨpw?Q7\h߱ zp{ƿ*(ƪ_ōq|Z{֮^͘m3TwB_\-L\K#͖LB՜:ypZd{s3z 0ҩSy g,\.jhz=dc󪪍݇:pڃҊ6x7KpdT RhCD0r6pcc+ ,t_=-8O7O7-]:9ȱgqy~鿢B犻wvFRi Z`hxAeyK Bg%_!FFNHw}-O\3fL[O. NpB`.B==Slrzÿ`({h[C2aR`m=04u3DXaiR#PM ^LDNfDPGQܐj ٳ0YB1 tnXT`ٱS|$4gCR{p1z%b302#N(Y11I:y#AцϧMrt(DLRc fv+xVUӯ wR$v6bFpAG@Bs -e<"HS"t;iЌSB)xAꊟP1jƲ#9eP݂0 .6WF_z}phuXOq@@'5ϑA-VVt+]ku^vk؏D],Gi&as3s˗}*Y "y<7mڔ-[VD?ND{7ڷ|TEEFL7s~vwOYhj6٫W"=Ls͠``ɔD*A[R2K:v';@Vz#G* DIe!@ 6rbotJQ {@=anB˻`9ʕ`^B+`t7%Y$}+603'"D]n,oJlqɉlގ3]cjڦ>XYZ2U5n'MI\}|Eܜ`!h$E|FÕx| r̈u7GlD >>KKUHOB_y ?ARZ1wYNn6Kʍw߉!vC:'RvKK/~ٳzKW~wh&PJ}lwnAx~ fm۶6>psl_u rЂǁʆ[{}mӧO+H:9;z|_aU=~F+ǎygZ>S1qw7bًT>F?'l.C{c2)W 'cU@Ԙ*\tޡBŇ %U8ULXn^ ]aAԛ,XaX-sFYn*3n'@OL TXߴ@C¥|= ;'Տ􍟺9zoЭc7O}mq~VV/; oCFR~Pp⵫,W6.;ˣ<-^?gؑM322Ov3gN7- >.NIϜ97g:êU ?B)#³Ͼ l6q-jAc  Ӧuπyf<|\7,7DC;ۈܳm3u{v uGs;)ZKcL)ղm/:YvGcg' MmH3CNueD-d7 % "hgiL=1X *n=B)#7HOJFDWB 0* $uUE3Q0xF #q؃ IG,Ÿ9h7ot) (srNf<=*[\ m7UguΔ:Ԅ!~ sK!#; tSpFc/gٰcu( IDATu&}N{CÝf\έ7lYs߶^yuϪU ׯC?g'. t]xe>g\,#=E;tKrsKԧ|G x-W66zWlm͛;c띫.  @,~衇Ç$@8uԩK>Ïm [ZjJǟn}K{Ǿ4,wG_"`!=Ǻw#`֎X MIz9bwJ@Y^-nˋMch~/~͛Anذtݶ{:ϸ{ _g[Z[WnݺCSΝG~ӷY1덋͝kŲt鼥K}{O?~뗶,d\K7t[?<}<%r{ݳgls-7e9i^ګ{\_RCQ-hŊϔ&vƉ UR;f3ya]qxeNSF0i6jvM&n@H Fiw IQ.'&5X<퍆֞ACO|jHQ=(VEG>b <\/e io?fEVBO 2Th E4Yj]*%6f5}z8-/~R}?vheSyZzw]ý $G+N?@r۳b 8roo~ӓ//2n,REo,Ek`dt{ᱯ|?G{y9vAJ~wQ`E+{|sNqc?dBå7+{#C;1={{)J"4Ճ==,o xEAn[~JKN@ E-JU$g!"8y:;FbVTͰ~Rʀe!X48 Yh MN1&g!Y L7Rܹh 1gNƊGJs*Mݱ0?tbpc P_"hDSOA[GT!:`@2R@ljhizÞvod~W_#_?[3gK `zcΌ^~Gn du lЌ_dNq4npXZ#6?y=FGI9Bgµuׯ?oWn|_:r,.RqR)shtto;?ٳc^pWlqѰ90::?[W==]fN]_7'^D@W]lظZysg8W>{tԇGF_|akk뵚 \^>7c߻=z`&:y]ywW}uk_}esI{8y'WFMdH^ [,[Y9~*Ȼ0>Gμ&!ܠ ED)'kŀ =+0b|F_;T7@nXA=߷_?YPHzT |4f4$b;@n3TI__а)k Y+|l̤TYN'7+t(Z6[ǓC̟ʪyr*3GS i;Ϩ)ݫU&ߙi-#hNqdӍ[w~xlPrЧ&fRko޴b9ӦMimmqoySpz5Nf4LX`+=sl>88|>|ˢ+-V֬Ya%Ktww =zn'O^L_YhH*xUΟ7uhht?xU!@WWǃn^zQoԖZW=oqsvxBb UQ؆تcQF}n jBW#m,ܨ||60m] *ނbŌ Jk'4-Zuʑ{N%`dhnMק.PC0;Yq{߸58v UlŅo7+Ol28ҥb?MS" BH8ut6 WEw吲ۆ^ӴZs&I^V1pRo斮,Pp$ d-.4; 6aR3aJTQ!:aL_`F= º8qd [D mrshXfqjih& XW0p=,|49 x 2>@ }Ў3{ƙK')"'` \B kT8 =P}\W0pԠBhE l(D? řj?eS ' +[lDW@˥vu.!| sΆm4LJGƤ5*\9Es,$A ᨠT=tȌr/{/U@s;ph(Bn{¼ ,ni~ ӣX,]}3wvw-e q{ +Wއ4S` KOP+Ӏo(F,7dK#ё9b >ޛB3ؑ̄ʪȇ۾ٳ JHwh6P uf W{pRj\Hc$7_h*# 6U؏6 &XE|tPȡx]&/Fà;܁ j W9*, 6l?{ueS;a<\-m$'Q`BpXPZ i"AiM ILٳkI Y "d9$nO-q{PdAKB+~yqEh'8PCSRԫy^:7h& HVkCT:D_?'_^ lʜB!+^ؤN#9ESzNU<5Ѣ%Nm+2L%";vR"4nաv Z߉St)%׃'M05]?A[ qK> P@bi2RCܘD*UҔLX/!R)FÆLn.";YNp@GY ]y.h0=& 1e-N$}W/|ƽE]^`e{.,)SoQ9ra<4{܃9Ǩ=p܁iɇP0c=ž#Rbh p1%pA0RM唛U_b*#ҁ<mncP)f8RR㖩 ƾ' N8@D`\۱&o-~vUrQ\OH_\^ی[iHG5 uupv-B; $1 .ifӦ=nD.Q㍋ҵ`PayGErN!\XXɬinU± ;!ۃ@"fɆPJݰAWs32)'Z\h̺FcsNT ?'Nd SJTRI;KtK:f&ed䲔+ܡ7BUHM$}#d^zcv $'0Ϸ^w1zF7ow6H# If?b4 U^WRnA?z^~+'R PF4P Fҥt=|ؑw٫V-x+W.pySTF % :xwɻeeCCpISދ\؉`z]dDT)`X>/AWt2(;Lpj T; z 8܀\&{QB"XT {ͤ#((^& ^2Y"&|Ua|pByswlFD,T=]!zQTB菓w4G ˇN E'7zv^ =cZG t_|zgg0 WPJ#jW䦩!@~`swEc&Bl$fRxPrH kh&,i0'(i`f6,}Hʕ};~[PA)A&.dھsV,\ɯL~ђP^isQc(×4'j%J<ӣvG!!wI@]Cw 7<"jdy9(AZG_n8)(p7w7)/r/?ʯ<0N_rRUPyp  Qp9EPd]hb~@|U`wQ:`VG ULh9]ݘ|ٵkIHDo}oe:gu@KO CX g㍖ѱhpf2d6&:c&ϯM>A,wL"ˌ^$ҞLʗI)|+0TQ:22 U,:t>|vSt'/sS9A.uqC>qa_{(芏AȬF3юC e{pa=Vq!+bSDh&n<0PcuG/j@ڵe&M V!4^h"v_ P`7@;s6 2{q8!jAG)$n֬SG]y˰=$ۉ>$9:s4*|,g"n/?؏*M|K1(M3F: N1qFcigKG!+cr`Yf;Pf2v"VƲj!vbpd uby^Xt Q{*/afL`k+TxGF+H&Prat/I1 M|2``+#qX.wc~R鑄`O>;f$}8Ic"oő@N(^  -Pv[H;IQVvCTǤm7iiIa6Fr؎w%1bU2F1֑($b" ࣯8= G vHEwWv{^?^L~8 G)Ґ8 J؊$P s k+8y1c1 &Aev)THR! lsО)$!oG%tRP" c~RTIdXrBI_K2+aЁA |FC?"@EP*O`Kޚ/{%0wqf@L xP\(*Cy&Q M*?Mԭ |o՚ĤCD$,x:p F$PP:VęirVz) ΍#K:D蔩 B!5 Ga=Tq2=Zpy"RJ~ڦ+!X1p܋mڸ9@@PZ(%,/=[ %um X$7Ü$T}nr/cl&_&x4b1o=G.$OP}y, "'N;ŻG_ cڻB%AB,oy܃\,PGzFc2E4[)HX|C[&LC!wr%l$:!ІT<71# ]< {(Щ9kK)/+Nb. jhJ "܀jaAfxjTؓ)+y۳ {w{WM [()pk"[RLt/+\d mG-&~[W:wP$bK LE2vFpmrJAwD E"u۔G¥ hTH{0 )(ɴ5GP`]3:jAaa/%H'MH-2iRvp\t b`DyĔ#A>mcA{ !4P %wBH\-jڃ`ܬ좉ȶ&E D[ER e+3i) %6 Ǫ M3 DS$Ku3;?)=tv6$"n|߀ЊS{ RGނ aE & [ =+U$6v*I ^PUlIrn (uˇJW)ec+d'LS3rcGh2 iM蘬y,$Up"D1-&+>@^3# ؟+iNJ !$`<#w=同?=`RP hR{p9i.C` c 0T{ ٯpL?#+T@*JXC]$qY}(~H|'*#B5w 'YM@ÍEEebk) r9s͙p縤aigi KyfF&!ݡBSN&_7,p z_'&_Vr Bf AwLLl,aRJ ҄nMC,ZI\V@\aP{a,Y.SmhAX&P-sP>7DmeX9TPn=h 1nI xRb68s}~_X 3"\4,5GAFIZʠ`2?QVL4 ҷ|AL*2IG,Ÿ9ȇWj9Zi$ >BEcDi6h4/σX !8l'8HLG哾ώA`b&d?C)#oE YȥeUG+ѪJFFg; ?.rY jhB5G=Hg\ELyF(r{F,}%,iT0|(0IANGp9.N=WtLh$ڃ}ن1p3dDJV+p]w}םw AuSMNMJ"3yqWaM 4 "Uc)64uDC<KKx'yb":C7k'UCf%g @N&lc xs+gf2q;ɘṕzvŠُr'e3RvW8?$.:#sjH6w6w+҄ g!OIӜWQ },KجAi88.^ΐ WYڼ5*#ߨ{@BRR>BRk'DG*bhR($pz1 ?¥TvZ?#,hxPb14F mPM,~N_g(\*iFcۜEs Bo> ͉MCc'*TB`ox4o;; Jy!Y?([~D$קM8<.0iB/oqD<7zF1j6 ׊QXzC$6\Ɇ: ؋(SO8%AYN<[9~( U/v 贊كP1?.؝Eˡ[J Hr1SK:+@>4hz}PCUMG*Xܜa%T Ǐ64R>4hK8(Y\2: POxT8tq[{X&Fvd yjVM$DG@+ݦIrOH>lΔr-1w*Ĭse'M[7!(0(Z"a]E19Rf2^b0o|-ÀYL%K(čOXh#F: )yi(!zFN!;Z<${&Ad)% 0J mgPbB뷿UNDSt @A-J&D݌CR׉:C Zbۺ,E),koED$:=i,3v2yfI@䨊獶#w vbQ|-h? cp S1#Ҳ?H-^WF-PoT0CDb]̗e$ao/.H&!j;fp2hQW[a!B`'Cb="is1>#A`|,ӊ#@ZA8gd6\Uq_PW ^湺*t$|]g/;B2͂'@{t{D%MNB` yGp k4v+:w TR^k"qRhT1~Q%\]GZNVMC헄Qq !VB 5jS񹢜4_q [E4~*bQPQrXb XB[ pDy(j1&ݴrZ'{IϏvNb ) 6+\=kbm41W\@43Xv/CZ*E8[g$'ӻCL-A.]@7Q`1~$yxE FGA~1w+${` Q ZPIArHݜއ̂2X{K9h)/ֲr *Bj 2oi0MC RRd'UтH; QuH:Yx)u.p* 6gW=2)zDL-G`lQq GE:"I+D7;د!m4N'gxA¦2k:YL&YzѰ}Y>=LN Vý AZM{~2:)]]hS(0=?O> 0-&;ҟ([#01,*U#5:n|k!#P38dD'\`u% ‘>s,)!e4BgAe9bC1V `S@ڝ]ƊDdVvky }ؾw_u0kB՟L FuGZK>xO;P +QF#h#j|S߿5[Ǝ4Pe=i.-XI,Ԧ(j)l(1JP']H8h9H8˶*~"չ`Y-n1D&MoΗi; åaz|bxDVU/z,-QB\APZ)AxE&WJ䓉@/ sppv2<2hx-6i'3紅 S~4'llů-Dc]E>v\ґ6Rf ;a0 ? xED$iHM!^=OQI4mu="z1U3P`7,vB"={ž\s37\W!CՁyΗKAWa >وn(EXfb+!r0>i% :!gץ#OpgOX?ay [seCYWZ'׉K%dNJ͍@Baŋs9Sg9@NUOxƤȋ5S@( ܂QnHOb1Pts+ @c_B@*t22ŧW`$ }5±`\UN9PVTnYMi zb|FRQ:7p_z\~Ȫu.ug2,CB&q2&R@M4. J9p>DV:9HkZ  9U]cVAZLZ }xM: n5V5E[k ӹ0-^Vb#@ {0VPq lFS`dk IDATd?.ʰc7{E7_ݙOK3nCyь88<\xg ceygɈ k~> L>`<7?ei3nLn'|r0e#>;З ,p䓳$ 6TD^ܯ U(^~֗.i喇KtEQeKf,.mU@rGK3yRslX!4**X=.1aMO(vwi`lyt#9њjP5)UA3EӼ$+J)j"I!@=>qϬ1a2_.|!k#ZP馡2`.p0=h(s>6H 0Xzْ82ƨ" CM\;;4'>X V3Ì{@]]t)+ ;7S[&ho7fᣔz"(k_){) ct[>EQU8؍C}I*NQ!K5^:m @+߆(X (4g|6Eu fUP+?}ޅTI `'8M7C! n! }"r1ư5ǁGx#+BCNpr_Q#8Z39UN-.|o"2aJ#-m b,䬞pQYNL {ƵƯ"I+Seu>J%7MFOg $7:}!5 3LHaea&qQz&Z8.)\٘8maWOw;7K1Fr1AGѡ4ϙZ*|j{HxJMUtϋXݵj'CrZ4Q*y^n@$"dkTj݃  > bEj{f=埼'-0b) o}WbUNd1A <0w@H3)H_#\tT"K.)tdA%G]ᖍRJ쾥I#J>^VE}9lU~u _-.eh`2H&AuAYg-mEmy.{ q QPYAGvɡb^RK!k2oޛ: /r q;i(yckԯퟐRcL}8 PHJ$6fbar# F@`l;( <")Mu4%D#܃u IS|abh3nSsm)-B d҅Zi@d- ӾLc5Iv6rF-q1,}%p @WO@qI5%.IG}`:]ѝkq4c;I I4H|> ?5A)J_=TDY&Fߴaˠr .kUTr4!D0ɶ gjRˡ'K[-{/X}NzTqa|y0\% @e zhJF8yp2.5@h#Ivbm> ٩ݳ85ð&TYK~LwZ Zmfwv[fjk,v:rdXЭaZ]!Jy|ak5wjݍQ}9Ԉ0Psާ֛,a$HWG+Kraķ.0DO{seфy]1"Dq)Z -4db,´h9J"_}􂠌 o`ԦJ@*JMDb1TH -= ir.K%T`]fGz>*89_o4>tF@)^&Sp5~L¦3=H-9.O/&*q xdpfa)(zQX R YC7qgKӓCXgLaC z1!M5a%MN2\z.4ObQ{l=r0P=b{{{\}5W_?-ڛL_[)%΁9FߪDV$ %pFIm6@xXe#S1˙fCAD`o9kvFQDv>@Ż.l|)GӭbvuA)p,^u%lJ>X[e_gal{$#uEg1i=떤뵸Bҍ51t~MZlmj 3 q;s:VѥњwC$+ӣώ=>#F m*ް2K%X|1NM"#^.-MDs?E òT 2]ed\$,"$d8!_lr,8c(ܥi5+,W1šuN|g !?;x1!9z929+zReZ s$خq$ *YH{ ɝvMvwѼ!)H\߼o@ Nv0j:əc]` nFMWXL{`#rXݐT&*{(Hm{`%)AOc^}Y)c>S:9 Z@?AUja@VaQ3i4ga{J!fmO8{(v nZt}6C1a1ܢC~AVWY5i76~>Q׽VZjLp2N*@8ߪy Pi0uM~K!$f&VvkXx(d3xi!Â!"L+4u~0U(Kz ˆAcU“ i Ӟމd-DE=VCQVS%;0y_Ϡc0OzӞ؋_W~=szɇk9Xawp/px.7"?b}M_%֗=KNÇ]spA02PrTuАRSwړvbhsjAv b`-)_4ZXV-@ud¶QɈzzzm'f=83<#"iMT'xIK]>H)-"B%<MhaQb*@1>O yz zZBTJ`: aiXð53zU_)W)>Ur2fMJ;3CJ҃s'`kkM/yg?{/k'xOxiM ) ;0sL#CO/M{H;v䤓N8P F{ @-&IC,XFRa "jəWTfяhoAn^SowXղ(Ze4V|;4Or`ɷA<ԯ Eu@UPͷ#B?&.= 5 S=QZ#ΞX~Rl@DkՑ96f>*ŲΕG޵xK4~7 ~ICbub4Jj (dP)7JQ1//q۸ 7 zFz ;zuW\yyϹUs. Wɟ:o=+Y/~ėg?q8~?wҫ8'] _S?׽0^/SN>k̭͟-xt|)k?7O<_vw]}[>0]y)+O9ħ=~+5𷟿8ѱ_-ϿG^~ŧrϹxy/zғ}w#wH.Fo0?>zU=>hgqʯw5_ɗ+7_aqsv$eJpFIUWDłwhg<+d.uZO/]+|Hax9Ty7| {pF$[VlJ+|9ѫuصAԿÒȚr @i@~#oǛb\}EL<Ǜ1_o7ʒTw5,]!@n 0HAFCh)~D1drCc &¥I+UZD&3RnJ;_ V?/~7?[z.;vO˞ x +o;^49gʓO> o|W|/QЇϿꔓO?v?a's7pt)\Okk>7>\c: ?ʓO:_7)( [}i4 q4݋kc4H>)2H mm{ӡ̰4К:А\^P60a\[\лaVT_Ye|O !5Q/zg>>_<ͥo;շwutk_w[}w_nW!wox_w}÷釿/Q'?wy_5Ͻmُ8Г.zӟow_3 IDATo__[Q@|VO>eqo ^UO}Gz}W_7p79u';7~6~_qDʫ_-'뇟/}׻/úG>ɏy%W/zOa`,s y{~dt5g' -|6]ɏUeu9$-7␊Ģʧ%柠LPYVlpT6+t mLp|i@gVoiI C0CRwc@KZ qcut'8:^' F @G:Dô qˌB!i@wcþ-ZhYiI"K-p^teNvm~:&kK$ :H8X=Lq89qLxi)`RmH=f%F7ѣ/J>&&.?3zʉ_E7=Kb³NM/M7'ͻm,';tsy|_t]%_:A~( sg?mhx>O nމ}ಏ#9 .[nӾ'}yї|V/r9>~}|"H~GG)G[Jq}fQnaųپ şWWp52^eȁ9`bPȡI C=8|VO]KCf =N lDa.% #p`g"VwE㖁dK;lvp{>5+˭ϏP&ɼBɹX , `f3N?nTrO奆߻_p3N?=i =RJO58acrb: ovg>$w߽;pZ,N}"Vر#`6\ *avdTmĝ"bexp%Fɵrsᯨ lRhdZk] xk]L!sۃuκ_5:W'_^tF,sqJ 姂MXHYm{.-؎dw+:t'WF}')`b+~3*)c]0!#F0[ðۛm4rOb1®j ~Otė&q)HNì"qՀfLLW&eQaA*J}EVؐn><>?Lwoi}|ۦџSN<%N;}Yxڱ UG0rY~>w0JN~ pn3Cnrog~6W>{:zwV$*GƊ][],}K@YMv#s;{_dfC590T9O{)ѕ찇9,kP'&v&i}*^:@!&ظ M h؃eu{0)QM$`J2RaC~CAy6 H'Lʕ)a] " I3"[ -hblJAm@ RpGP Y&aE1M_ @)TVlWZɧ9݂0jpG?Ix/NaxW\;vx:8_{S[썷=;z0t om{hȧD^yYy1L r~{V%5ɨKXҗ:ﷺ3Q! ޺&_GVcrHgs?眳W;%|v|ѹ?7s>yO/|׻};>#GW^e5?w:{ĕW]]=۾s'>O|3qo7$>GT7tiͷ?}}WO+>N}ʓsIs?ᤓN5?gs+>O;~wp-wy)9~/z[˾?I=35$}f 3wc *& Hp \KJu6^Qr[[QTg0>^XfCMz)h mƟtHcu6TM{1Db:ޠ:Q2}74/)':GbMyEGZ3<RVe䜇> ʷ3E ^&W8I_ 7) M+df" C^Y9}&=9|tt6fۉeui>RspٍM,?}yʋ)_׽NozvI/'~%͵̏o~s.cG'mtM ^_.9S%yE~;!ˁ;XK$hn?tWSO??z[{>t=rW}SN;!o׿ <7]"WWs}#׾O.F刬;`#hhSTTPlqS@45h|IRfh`! v#gŤJ/@6\c1~tA* "1_Z = rRiDu QID>}O0onxYWBws`_ȸG| ie 6?bgd\PZh0O'ؐT~ȸ>HK a;z4+^J6Ys;s^տ~+Fg_NNx,~կyzcb E+Y>>5rAk^0@]lZb X9O v?c0V?3+[/ZDž`5(k:i?2 zT~{8}vS3Kz q6Sļ#IJq_~D:N AhFXr#ej` j1L܂D{n\>N7zWRaX N|&' = ";=3vOd;'̪Zs#"ՋH'̚5Xg6AX+)j? } hUI}VHCp4V*h\̼#qE)U*;*yOE>gj!A:}tLtzlŴhC΢Ubp5KkB,Adk<1ˁ/ BS0 @r FNK͗$Ûg_)^ =>2;J.I)He|R6* DZ,(,@LXh|s@muarJ<@|&Zn-CiW!zDFtm'~-L'XU0s ,Y,nXm?!̢Ǡ NHhȑ94J貟AGTP1pFƔc ᦾdEEҀHs`U\a^TG U~u _-.eh`2H&AuAYz=ɚ>w)~g='AdaL]ѽ3:|C%ZlWl, R^LcȮCشTX%9\}0ёa\,wsZ{TRX.vvT1<ܧR^\O&NaSƈ.Zm6mm[!Gvn]S9{jgMzDL#7zzzS7iVJ&wunlw}qfg ( i7Sd jgѠzw}#*rEa˹ۺ2<{ w,v\708OԮ0φ^t3/aWuLQJCr|~ŒZQ43yJRX :`/10jNtHCC+$b\!h"Ea,aw v1(Ya~:q ˅sQļy*+]vq1αgrbMN-0G7O:$sR>>; Tb6rv|6d?3!Jo]d Yt(z41₝rW~[ ۥ/F?mfe.gGHPmvg ;auODcZ$%m1:!uX,knX@:_suc4@CBc$-zS}{)y/܃hK,$._J"e8WVcT7 Q.t2D;P~gI9G4UWvίK%fByDsPfBlǬ[@7B% -G_7 ^6b?s;fSPʶiL[Zwhrp9S,*nk PjjybL ,,{lbV' .77A=a 9̙낁aψ`Ƶ^Sqf"23Hgb(}0fiGWYnxԏH4$6Ւsym@ LX"] j!ݞXY4v[/O&>Ka9r9`ڣ[YO(z$qAIĞ_rm)o6'|;7#tG"1^ZGv}( 5k|f׮dc;c^sSf$<ߕ2!**c\JUK,,Z=,ac#7;*I?5ZjP 8]>0TFGagq٫C>20D'2DR\%X9֯[rw1@0Hh} S,gQBܗKKQ!A cA.H\eQS>rB4-,BaU0`Z C⪾>7̕cw1׽aLK0ߘ6%>%yv⃒.r i"ѩX}$&4Z9^NU)k?T0śp(GSbu&-laLtEgQKirmrjc(/XU}Cy Л` }Omj{DԚ&fH%orK mҴ/AtoFh!ƭŕJǾ`$ėbG6Cu8S%r [j Av`8.g X|ۍK`o9ӛNcgRm)e)ՠ<]y[l.z|5Ȗ?[jBֶ3Cr~J/|* =~p>AX 2R@{nL#c[T. N(y***|2uWCHIY_/r&/S"lكYo:a=0A4,=f@D|<0F ҔҘa; $ª@ҔZhpgW"DH%3MGӄrB?E"B4by,Fsd++BK#_馡怑?]NgfΊ4[8i:B>jz1_k)f<(Fwq՜/Kן ~cxnE}>ECeX|]!:(L{d,j.Z2yM?s(ɮNYK"鿢 s'N:BאC{Drz^]͐P缐e#CǕ 踏!72,/qy)[+j0b񰅗wvmp[T֖ehsB-R!06Jc4b[P4ԙ ,I^ׁkxp&^%QraE`g'J3+*6Ϡ6o*哟<B;y$=6JONpc?fTg4t:5ml%ɧ[\wgdg v'gxˉSETQ;"!C>v؃řj6nTyڱ/tM{~27f-θhށHrz77;ZP_,bx~+M,' &zdbzʒSBk5. > wBd?ݔҔQy2Iavj"%3jڒh/kFvv\|ֶI8}:;Q6"(ho{SӶNP}WoJ,bTҀ}LHhiXk6'1*MBpf.{ݓ."lV- uD0;_c6*r|V GcO oE[z™=6gLRZ"K?T[a3"Ч<180y|WR͞bO;~1(-d -&B3WJQLlQcwq ($tW|bg6x2e~7͂8ҽV)s yD $j!w 5X/Lx֐ъ|6}(\ط-(Ys@^+Yp LkHGrNKWe@ˡPK}⥩.%ҶD=H(2A^L=CfWPV6DRJ|ʗC]|13p9Wxw'-oObۄH0RH<͋H,ֲ xa[&GX)XdSIX7ctI_ IDAT!)bDkoUpXVjY⍈'@J yfC}@ЃH_h|;a> qO/Yeـyqu (8l,ˊY [AY+:`rk jTYb t\9N}yRފ/ДB}_nI1 2HqGp)ZrCG b1+] #Nn*oHc%BxWX(>[nsϯ!4 qk\ r 1M Q\F(G[77L(m8o90+,-[Xvot9 j =@7hLn'.ˬ`Uʧ~7͆an,e$p u(X} >n \TtNZr yi"͜?AŁe0HnήQQauF a 7$`aQE`gjGFmsAJi"[MLdE~ K@?N.m5-nMŖ\$ hZAxY0mSU#Xǰ])VL1^c@L7`5+lWϧE7(Ba'.tǕ p(9< ϧS.L]1":@w[["g !%$,XLwpc_m{?I9ijdGMUd2|&[NTnr4q>M', l W\ JudUŦ'QS#I5&s> FJ98{RV'xRaC冢CiMJ-PGeLpLғmlqfr@uR_4'x`)%:#"&^hn0!~.S;]M9&o0#ciE{Ҩ1-Jk /*{v>R(ahB3ҭh+GT 6e[h UL H%SO!0?PGSmaŴBi{[ك_Huh\TQ`O>iitM@ 9_h$n+5bAd-;"K쩐 sUɒ>]P EϺ3ܭq 5@* "\"#9c5Âd 0jpwg )KAJNP3s\s赓+{Qd)6 2LSoq&L/޼cEn t*/(8CV-+pG;{Q6d,(*OD#!vH (B9nxX2SL28qVhpTg(z7*JɁEGZH2&A{W@jmodC~сJdY Yؚ_`ldyw-'ĉ{`!AQ\̋i$**j!<JF$Ft:f!F`'r/3ۀ'!H%*\E%S6B]=¤l8pPv20SZm/AGS=oX|dm M0e6̰ \z*,i=b.#rCxqn]4 u$oU{O3 N3op9uqEi1\ҝgzCaMs4u Sѡ>R߬tam.O^,a01}9v%:{|mn@δ֥`zeH]dpn`Jl2Y8Ynf#`oJrۏIuCa nw*fp1X!;ŵ<IW:t.3ֺR\4bcP-G-&9+dUwm85E*~*1ifB"󥇡=LJ5ڽKD=JΡ9\&#V %?)CnwX NiY68ߋb|boDL㥑uV*^M9јAYnNd_b13h%y"90 mpi+PZ-VQ8ib@WUta#8e?19:XcaH_x-<ƭ 0h>k7IҲ=8ܼŤ. 7ڈHWQC-S>>:gz$B&E__+f% 00O9'0w@S>b$%G1=^ zs+Jo!I>Q|u#f>z\N꭛3ɖzܨ?1sO7ⴈ>bV?͂NDwfuc'3S^L ɇMZ *&N!کOd'|+9)QOl6Ci0lW K.YeIm8 ?`gS fKf3 5+rPʡn 6j] bx =Ծ ӣ?PIf(5wl-b! 3DA'IfSGy`][* #$2K##4:Un;Kl1e =!͘^(6)X OI&,g|``8tv,v?n?p˦Ie:FTodXo)R-(Q2i+̋B\ ʯn^H3i%;& 1[Yz=ɚ>rj'[d6CiIPI1qbu 4Ԇ%cW\#:Fjlcb;i1M 4v(+z<Hzw$(%#^l:k h {\];/Ii>˙ߺ(Ku"}ԜtDǽF~*/)qۦK/0n&^73 29әcpsG1-Zڒ6oat#uT0'x,}p#cU}˰5a$ ݖa.4h硧Tqt_ _2A I@"|ݏ{qQ1B̜k5f'uscd,_<͙2~0/;UGDqsu5i $n":߈<8VM-BmgŶiL[9 C iqFFRm%RV3#F C vl- 2yS]-?/gK؃Ü.nu9ϡO'R4tN0pLsaXT٧_qo 0L40 P@DTF(  mB0  9E; !#R 5F#POc`owA4Rވ9}QD&v́%ͳ{~9FVE60G< |-"6X<@ -KO${f}Ai@Y˭Dj˳lݼXe fr ]}pUL%i0J*Fn`wTd 6^ֽ@>:k2CT/u:' eȐIq`aψCF0?qԢj̿OF-0&A `ݐ,%^p$qJHSwHn1_`цbHy9NПTFRorXa-Z dm$49FȚjyQɚDa9j29D}<9G (|\p pHքRډY*2g] 75`>1X#Nqmn0yh61E@RkPa0itE--⏈1~ꕽc:WēCC>IĊDdFvq'$v$t$rJIcW?6v݀ fgͬk?ZZRjPٰdӶNH쇪K;ɭht5 ӴcL21JCC {ꯇ\(4IRV(rnCF'N>05{l0s㏡)T yY@l?MJE_cP7D#=(}>܋HcG,]R7R%eZǁHG`)yݥpvگ,C]嶸fρ^߲ kـ>|g_Ϊ՝xypfR5GnUQ(u{ge%n8?J v(zl]JxHUCE')&6A޴}}'Yg(hfWX<6ZsFEIv4r:oI3RtP n$ XN9'3 6x^|F;~{rIeQ)ؠ0ilKy~c-2ؑ1C$r!/`_g(P 't~?ǺPS~?ԏ䯪 l4 IЁ 3;}QM rJjDN|%6*2>Z-q&_`ą2ôx`1|izςwZh:iĆ-(+ IDAT|Ía*O--=M[7_:lw oz6OtGu%Q$DvQu> ~~:Ч;vJI'7*3Xܭ@RpdNs[`3#_ Dx$<- c=wmv+A ig j'2;)qYM7ZO s'-hn) _TrI!>v[2txh4U>-t7aQ P`[KORLsJ `*L?MdA5ѻ} ?q[YLmHկz0BV69EN2l(獁}Ƞ{aHx^˗[ayA)%yيLpUnm|!`ցi4?~kK|^=sBwXB3"J>huϼ,%[,5V~r!EEz°B]i3 LE:skMzk,z<ʹ'vs6g8z>?O8Qk8x <YߡoU ,ASoN}*sjL 3П!Y, R5.P8zaTϹ ABk\C'ɑN(AVu MnY.59CowI3+)B˾I;߁E iŤO ul{Qu!B"lB mM[ԑw-/R9$jRPą L,P0ZD@= h} iDk)Ӂ_Z"BOTg}*9>);ڗҩ+AeP2aBvFfF,MXOҀd6%d8^eA84^x;|#JgߜSĶ$4emNL5w@svTGg+^#mew ij(㞶ϏwM& x{owD r^Urh۵~?!\1ԟŋ̉~~]S٣p^Rgm uE^Q5.,`F攣=[Z!'ڎDQ#rh@O˨_Z"?>GwoiiQwp 8zf\pe`9E@`A^͌e~Q ą Ȅ̦(+R)s}dWvuzȧ5Ҳ$m|9@2d3S&EQC.$s}ZlKgފOyvKZ.r6!(]HR; aY ~ @@>=Gpܷ&R _xEpCo/$/`2bTQJOPH)d#H7T# 0ܡNECC(@u> :=t~Zj9>?³iq'S5[?d= dZrL`Q]̂ey,'G2Zu7kj{qՠN4ypaj=XAKycEς9C @2ՂPюxCFd_vW1 @Q[* 8&qᶿL/*K\8>7Ȧxi8ن4)bf]N_5@WFdp4 ӈ(Je6UB/4Շ. ]1![+zՒ> Ďa08k)evUXQO@#ͧ%e>ʍ"׮]iF΋/iMsǒQ:.}w *:gX_Tr9f Hǽ=Zmз iA`yN+dmtÐ~?sZ~{3#Jwvh9PJ2ӊNdoϳQچhf($DPCBkΪbk?&#r:`Wհ =S&|V_hjN؞39޾&|k~Ẋ\\WNʢdG[#=^%W5ƃqCQ`RItF}i95FF[ErPK]?Vj0-&W\%= AZ"LQo 9x-7m\Yr=a ѭ:ryjV  *0Sހl 8{[)ʝ 7FdA=etefj2 glpfMC%} Ohd:| :p 9ễ;d 4 GC̖6Bs *=?贉?խ"(Q.xhŌPGr:6vY(fDlT`zMOG =2ݷK Lz(B0;d6ĦԎ"*|"utU>|Q _-B‡˙~0)RjL~cHQ8.YCxȿpʀo{A7'՛g'sn/_Y] /XR,Բy!+ʂ=Ƕc?LA]F`RYQZުo`Ia?g`cC>v[% 2rRKyuf%e"43fn6pc]QIloG۰5\@&6yF6T; A'}*n1ϖ qՑH }: v<&}:R^ӹ<\bfdM#*K'*fCqR q!\t\in;|~n__H='x,j.iag/Ku @I$__A"kKaZE.\POV<9ŽM1TUcrթfOx_F}5%*zҐ.-ƭˉzp~n@Ƒ4Ee4GE<"ˇqWE :>ȈnL+Nl!2Y.4>" *F\' !5>Įą׊僪2|p#en'2ߙD]I&x]oRDR_ݳ U8Mp~KE%: - ̶ג|  ~ (^=1Mj9{z߷ϯi/uj.(IƷ]έzR; tN{LplH{@pqHT}~=%*zVDDMG֐ `4~67 _{|Nrb=pӾZ:Cӑ |'{ Vίj?Xȁ߸:-L^,Oˎr' 1G.D8"Cv?N􃰷gCYZ6B:>Sl2'rBX<\E8W ܂ }'zt_4n,ij K_tю<kѣ6OyFoP&; rVzhsnjlF{X?xvq}ԊGŞ1Zz\lbdZ^iUD8gGҮdJa|(*+g/%NGRѾjޣ;S3T2ہ8zk-& k3f<V߱o-/)typVr~QI h5+[? Ta1atfGӗqc7P/̌5q_ImHUⅸćߵ2q*:sHypS:cO䬗D}C@:L ~es+ yŠof)a9, }JO~ht=2U;=Rʿ2+%(ZH_$}hh?;,ZVm-uI\_7n~DᣧRmCP;;Nh?4) Զ}#E15܌JI7y^YwGJXS̞5FlZgzj_ʟ{ǣ"aHKcܜcr`Bub /X4-DC&m9hppP8kjC}F3-;y}9Sid8MXΎ^?gzq6}@✽>my53x偲4#I[(`m?9+ NtTX3!hplzč Fud T jw~:xbu?vwŚvV~rT]7T Ս ѶDζYr#}^~WGHODDZZƉ^' :Cyr=%y,1J@Aѝ|CD-؞ͩX4sF;G\, F O3Dos}@1X^Pmxu/]c4qZ}H~C i=i.J>ҹ.$7ګبiY^WYZ^(0g90;JmGʽ [)yЊXt~/ؙF:qP! ~}0iod܊&["C`K"DΘ]Cd,~JzHitr X}SihǴ{^p.թњR ;؆E2o2\32db,}3R)|+zzQzX~ aNRufaH_e&1tI/PXJCB}ք>r~?6*⹳Ϻ pxᵏ/6 IDAT;%#aQ8كas@~˺M%,cZQ6d`"Tt]0Q1шBcؙO3oO+: R蹑kT5jԍD ̈ӖY#v`*t:!Pyb=R:i ۈhtmϕ@\_T#"a8ALVt~?~FЕZSJY)]a?䯪 )ղa(vBb1A6>8Ax+lT>#A`*Uso ?̇QTKe%X5!_ P}knCyj_SLN!C&]'"G=9)qx=nmÛТ@*6䧉΄``n뛩>selaįo3dU: 5 xY%~L=,R$EgEʣIb QcF{GԂ'kc> ~1h#su`}1/*N{ g+v^D;4gqRs z:ekHu==c'+HB][юBܞ7:9drm-LOq{R ;>O].۱Hwf[rFR|Ny;]ԙ4H(hцN;N}¯kxq8"7~#-%"7A&@`kQsLr]K֪}{/^ J'W ~]KaOtۧDg^J|qǹ\._^A9tA e75R 1 B)n"1v+= f"ǩOݶ n72%Vwpn~׆xp@*%E So܍`gZL Lڊi@RxS#DMH˨_X o/2_z4?&`!~Dt,.aHt\3=>By #fmW9V4͇;~L ^`Jу#s}}:ɋ lV<2>$r)D\C&3ڝ񫢪\m%P=#u}/?j=$!u~-_wah^ ܞ9AcL._[Q!d<\|\"Q(G7v46PZ6fO c|$"]^iqCM8駉ETDN0!oO>Zvsm*Į=k uPh_[5)E\+x JK/',RϿDF`NJJ쟍.LQz51C?9{&p伋[ -bs0;.gƈю*XTMs +PR[DGx|dȩN50yDKUwI0=:!ۯdʗYm|p=nB :_$W%.vJ hR,`r9(W۞j.\nԅlSs" s~ IL"h'"wwww hqzm:R^Z9!T]1q),GMf+9/=Ic,E}~N@zkSTg<~u)"b\FVwͷ1;-]sp-i:漴ǓidrYrC6\yAn~@NEܧ VATBav1uGvn=|rV+K;iS~pH(ʫ}%r Aeg>̀tHGV+ޜ2fa]ap z0`>CS@>EHE2Ҏݧ0A?2<Xi 3h^/,S+&,{TS_a3Awc;TFGPv6Y杬F|Phj|% JDQ|i'Ch:aF\Og;žf##4%ړ֞XO,l][ܾ-M7զƒJo=˹j 5x~+`B[)ZH[=|L_+6dhiMac>z@Y/WχfEaX8i!:tUT5ߏ|[h_F+ٓ.\_}7q~X-#09E5q(~ADGT=D;Pr̂v"P0} W6 69? HV5<ޫVDY%=EXY (J0/V&#|=d>>IJBW6>Bp/Uo;5~N7kc7675.CY$28y0FN}2+{t6<@c Mddt|X{`0~ \ 1/bsHoh/T'Jp[s*y4빭z3|wpG8_owOAB"{*@ym谏8`_s!>!6j\KAXjQR.4y@]EZK-bMȺg4 MQታNrx&H->:\#|9* LBN?d2XlV"D'SȏMV`·UJ؋V9"%jxfN4 )[g([_cwV"9dà턀;Moq*ɬ<܃yhZ5p\z۾&|k~Ẋd<-2DtTRnhbfkOCܨaIrhߒ<^'c$[KrhA=DIjd&ڭb>Onl-UĦ,q2&*kTHo|ΐ;q jJg;B>j;62 1厍\0˩ߩ _oO$4 ۶Qk3S3>HO'*֝ǕQ4[̆a5z\:Hd>+~@[3]/w22G -/G2A=,S e`5}=Gz7=T ss^Y=YhBX5--Ӄ9:B[@` )Wx vVSL#W^?j1iRa~/tHlLqPLAG!t5 sT:5E>L>1CPVOK%Y2¬ Bg:Nx(AJ"n橴M Պ6Oe /ԝVӒ3N!^miS 9@< 7>DM)Qia3 d/S>Cg&qJj4-񴡨*x{v +wٙFj'W@{| O/5165yqv_]7#oGC6p WkK0Џ:vmL0匫 5TUԜ^WZE{0?6O<?<֎Tؤ 6>dog\0Fd)%]`b0=%Rȗ7īuW?;% &bPh'xEL J;-$ 3]p.XBݐ4pZ`,$Ytk'[1L,S ?bLgӃ 4Q{|ziOK OzȭtV}yzDs+=I1Q27ro:jjo#8Q`˅o* B [Py Y5̀`71Қ*6T5󐣎gXG Yܴ"$HVa?͛3m0bU<gf5::CȚ%g`)3q8'֣W I7(}ˮ=Bo4MujگdBFܹq=őew_=\LJL~h8U%mIĄڥJfeZGy+bĐ^#Dӵ\2/!)Ef̸mᇉ>|XӇ@1_n`,GjS>!h#,{7ZYm4;A>c'מPNךg#S q-g3f #x>;0%HC^u W%H@J&I P%e$OE:Dn?8v~Y?09cI^2aI}HBw+&A u Z0SBOI/=!_RN܌9n(YQ2Sԥdav1dZz яi=ɗqnmث.I;pJIJ< Ohd:| xK P{!?)` vѡ`To3,m<e5.9tJxK9p*d&Oh  lؐoFX# .jA'pѫmPL=YXW:Է ITşR)Ք;Zi18mw8qye?$vmJ;__sf!n=P>\P#ي̞P`@ZiS_1y?lXc9Hwv'Ax0ʒK%Ԫ02%o9#7*2 /gWDr:N|ZC(-I=e嬙)lо ~x:Gחm0AC<p_/zLlnG@mHxD!!l/r.{ZU鄂RK{bG`˥FdVh7(Hte:F`(t(jczToW&d Z`h F6LM16r`HD4W4L$vQ5Fg |>zqyM*^:-Wٟ>p"Y =AO<-Vl)D~eL뢆 &X=z߱(8? 6Keɴq@7:2.B rىb r._Ju{$~HI[AGSѳCT< Do5_W^_ٙ$Ŀ8J7S!g|f-?窻|p$5ٟaJJ2dE!;fbSf &iJدIIGMI8H1C)#Gpz( ꜇Kf`eCiOGIwd HG0 +n`L_ dYEX4Q4^ߟ+L{bں̌4@~6鑍hk G.&6>'!} b'JW7S<_"+"R `Zv]Tݮ\v8k"w3I3*/R}{vII$ңNZG_::Q8FuCQ6` 62\湓D*spW[weY*tr ` oK- @JEN-,կ%/ M$cz֢s$AtUex} `dOu JBqlN~U?2+&ԃtӈ3 Z<YfhG} N69 |1dN0Puݵ#  C(\8Z`5 s+U k @sˮYcQC + aMniF #r7zoP`+~GBpx+~l).oqsA +14 mdAIaN]0z 3]+]H2t'P%UF|巟A4A&HAIRcѲԵ96m8^'̣+3⌓%Fu9ڡI'<2#sp?@ žHte@{S6W}!@NC SR]JnƁqc0'CШ'8j8T|djM4 @C]YqdՇ)^ANJmQSj1z;; /.vJYyKPUkZ JDww_{>m; Wf>>K\Pbw&^pC*<4?F+zBllkfMtI@vͼgac7{ 3A°aw\ =H+CZ4wg#+7Y^HhzLծ&i2p|&U NRs (D-l:Czx^aQ1 6`D4FY_>FZMں w*22Á%|JYJs /ii8+omAp|J$@6}O>EON+-9@u9I /28yc|m@xFDxU+5T䔃`d.]ϮǸ@Id. {3x='mQt#9TZk`=忎Rqd?U$5<ǰ\q a<`bp'[H}2kH)M! sٗ C0POG`>;G\{ҁ ^m#w|(b'.kGq1BSLort!\R: @R$ lXA^;0-~ <j D7J9; d+$Xzȩ:CWbd׾l9T.7T'vtG1e @yNI4rf͕]&.tΞl=vMoqr_᧤HϢvS̖R`WϲY%'Ō?)Nю:u4$#D3YǜV) ٠MElI 'e h<7s#{) BJ[_\[9gv".^MbC&1pG%RR{zv:,gZzpRۓ4dx? ݘrȴCʌyRrcCFY?S>ã bajǐT'1yw"@\Q;J[&w;BgoD=<`@DcCԨ*{4U Vyvt~n2v}9>S&H+h#e$Js]8IB?>7 GOF MEQل;a&0 @.->]0Լv&6'H8M~NNNL-"gWs(nЉK%0/ [VQ0c'I36o%O{q֨#^0KByhd- aZpд .JaOXEY_ЧNǤٖc(}}hAFm >fh ʍ=U5jbcF8( 7R{@2 -;\0]ÈK-Tg[V"䈭taR6*Et:y 6۾:L-j힤Vȡׂǎ!{HSdTzw n}OL[zukQN yuoةS0͈I >9 R|>_Ш:XAL=Dە6:?2H(o9cdBO`Wؓ[9.[\ӞvL@Zڞx9!ןPiA^>#Sз@ۨ"ʸt%`bj  %aAD7̚dV׸B멆! vaۉE|34 (ԿV~]gg6_Qg4MOK~fUֱpeȫ [j3j.#_GDC<qRj \,ɡa9|-JE̢voծ/,]]9Sd]J@xҍ#{5_.n\D$.>Q}{HCOCq@ٔǜS I..0vZطΖe{RIY_#95s#DYE=BfP9d,D2YGXFۧrh;:rr'xi@ z[A!^hw^?sz)('/.Y\Ҍ~5A%~=H rM&1Ѳ탚vcܐ_!ls0L9 $J>lzLB)$9MY\feM"9[ 8ѳ$@wcu=+؃m2w(Ǽ9zjpK dYv33G| dWOsF@I;jJ3)=!ϼSр*ft(B|{+%2$EW#_,a`6:!3geIm٨i߭9vR: u ,V"ߛ,i^E#oۧ LK}H;_@a"_XἫfTCV ϸ@hX,fh% m7C~ۡD?嘯[H >`} |H-M?].2T+LP=s=Q9!C 3ڶNۛʹh7秭6ܩ>Tj5zZk^C>'pAV@'U2L5/#cSNpX0,Z$@#l_FR/*j6fQtii0-i[Ԟr=`=,!npU i& S/z~eFSjV"|5@V@b|HMp 硱DVce+h23 BTBxgU/{V-Q3S1t\VW*o40/ۍGFjABaxܤk.Rl̤4)`9 63A׫Zn{W#xU4iQWi!m2m[VtDʓDM2JumNɣ`AlPyb2woo?6vO\&:Va,( e U s={FhDxg/#x?8NjS mThScCQwQ@1|q@ p!?D73{~(`$bh0|Yy6F/h(#nhzj|D#r>X胡HaL$zdCG8DAP19JYпM IH,yqWzaOJb/8܉#ǶݙJm%U(pi&B\Ă#;fB$`f [<@0Q{ $v"0^l9|=]{7@v麫Ŏp4 VjomO_~X m$N'Vn3]^/'!B7up#:2PJ&;]=@&Z!*vjGeOɢɿEDR|!Qϥo&j:,sZ ƺA.ݎfnQ9dV*sZ9 Pb׽B|4;zA@,bmvB>cq= ! ^aA;(9r>i.l~Qsxt|+@#:e_* p~`BDf.j 9B ]QO;2(Ə`t8@WX ު1)yMA4LF=~lT_Rhy-/ř"Xi.;\wmMԞ۵$/d>S?+q8,?uկmXj "?[gA;}WcA$L1IJ`壉հEyMQ$F4S> 'r pi!7c>Tt$|kq{&iW07mB /$A9#P}2\ktJN%o迋 =yR#^۝8_i:M߫9{e}WP).Hoo67Gj06$ZfZ`rmJDpC-=kubmz97{L c !v A>3.#Nw}GopGr$P`T A 7k ;]s7XLvct_nڽ.z0 ].i mp"XJ:OKJM꼚ܐʄS ^SȨkMd!sr|5 cCp#fyj B1WfJZ? \EQ(q°lO2Wr+i9cj,g:N(^nt45C2x6^q̳N#&vSMD8j+klZ,' DcӳЀ؍ (u, XHo}y O;8v=J!@[: ow6Jw6**b{yX]4r3%JFtĹm M{뙓$Ğ=/hT7͛jdQ.IL!4ux4e;>,jY?NA -J<`Θ׭G&' w.ʅf}>]AO *M`W/O6Hc 0750d!,L Vz яi=ɗq*:C/6U`Ҙ,*I{Vh692o=mjz@'`(Ã҉ rVMhvY \)]aATKv]򯊻:cM2SgNP?5AFr+o( r?a~Hh%H+'.H>Hʢq*DՂ3 u.D8ah͉;1efO^̤dT,Xc9HwLohyE}9.^RێCv-H-ZXJsTmcԘBJ< :icK?7[r}DY;Oj&t:<,Գ.HjPFp}sgo7G-tE"toˎ(Hwf%> saxT7A$`Ţ"Ԥ +Gr~QI% [͖wUOF„*)&ԭ̊]!Gs? ?ͷWP}D_WNU] ِ9aUНg `Y 2CBk1n >o3B^Y_Xڊrq/A+a///g-@~\v6tw{X7QGǏ=E+h4]/$o!ЃĥU+eΧri"בN+BJDžrG8)6B}$z,*zQ+LΓSzD-I#jKt`5"nG~C `l踙ؼfq/ϧ76~`=>'g'ՉhL5p%aH(+Fcvl1|bzQɮ Bܟg>( H׮3Q2kճe# B-_fRqVE$RfPgepV|x('~/mݿCp|zXTOWK 9Wpٸ{@̣TMA?qUH}$;&d .cITw= RմT_6K4Pr^O/̈ 5?7&hr,u6zF,D$>O%:IܟmAGabf)gu&2tRsaDnCؤ9 `- l,eA4᳧CZdCL18F'umi0ޓ\(.c,7z˙l$jk4TE5GJޛ(hw0v.޿;Wަ~w~ו zjmt*z EWMzOlpRL6?ZB2B{b5.fDJIۛO3g^12J\1Vh IۭjgmMhU :9>OC[9 }2'RM={?D* 4rѐͬ{yZ( BÌLN?p:]%o rQ?<5M_Ig7# 5N9V0޿̐g2vDP1 Ͼ]߶8^|<޿?xr(Mf5 SGH;,At岿;m[ `EGuW.]P_Le|Y2X|8@m31\Cӑ49D:畒g36fbd)7T7kUNW?d#~!V9!r! FN+J'gK$چ4)ُ#l pG cajǐExô O٨:X}K>WT usoryOО8P1E_X"9})zZϫҍJ`ՊR&o~oǣůG yfУI4{x't"mF76g$p6c)jj Ck>rrü#3ݪKCUAMc3u)Ձk!0֓*p9g Y\\0f8VȦY/"?yh xG<}B?E]h,=#Ϫ“v;]TYUzc$4T[' v-  bUa r8پ%h̨-Ü(}Dl!a !ɓQ!ӳFk.d^=6ttP~/,Ba6d.t4G{"}oK=Ag|fr]^vq џ~* ~:53Bո)}n̮{ԣ?.(w:^CLEp!zz`8^:sijjH$^_j=bys*uqE8>I({447M{sTpI#2OĄ= eŲ>Zfغ5.P6'.R3(/*.O8C=XļF9.?Lv.[ /Ry/ VG@~Yq z.#] XhӬ}rmSLOьx2x܈~՚HS~؟hz(mj^#g5L'}+x=Dwʲ=y?>?f`n 2I7\TbgP9 4 vh<mUG!/ !mPFĖ|PÝqM\<SQNc?v`I َquʌZ8[pAtg?_f*vۮǏ_w?"(zǜ#oˉǔZ0AK}H;'<%yE†~d,.TqmYPR `!߷B*=]OV0Og 6?Հv^o7\7F|~Tu!2(k~.)OE$6eVh<.s"-$> 7Hꂟ(ՁzC}dKM&qyxl;}d9n{w&qQ,s>'W%[Pȕ %wb+buol"d&"oBP/'[R'FϗAXn@VΛf3{3*Gzbde0YoxmgNd7Gc h$]y1@rkN#}0L<'CYadhayigؕeՃT[!fhǞ՝{U8eII/2IA}?4VXeY= qhhKb&cBzPʾ-mm`8,+mKf90Zr,%kW8Y㒞D3?(!0]? ﯴ'.oЎpлU} SD|ɸ΍>kqA Մ kn=`3M}X14۴F%g!h f"F%8+ݨp!weC͍fsb {+Ap0fcjzك}8A5b懲5L` Ed嵇OBK2lYi|dhYps~nx rHK!d aIONrţ:fh 6D;aUl"mx*gLE VmO>A A3!T?' Ly;#h~ n,¾wgKIYsջ>ݟ|@(eqJU@?# 5tf S]-Qb"ֽ3W ZxU@$n8la PfaJP`>=02ORU 3eXL]1;FCJU.jЃ^ڂCn?B_"w}WG!\4I~JEVGطn^^&|7/R@˾9Ty16omR-aBʫ9;Fž׳ TE=)X M>d9&k0{^[S9J]ۣM*ITJLx1F@CO[EapiPxc"_K CU TX49A0U6ݎ>AÜ΅{1` l)io.[T?  ZOK6vb#Z ? 3@%)̑p߿?B}3LjNH#$̱]S4~~ ,.4) ycb%N~Gs uDmIsJmR*Վyls3D'BWѹq\^;\2فl.>i{"s=ōڱwE93s}LI;J$|@r |ؼqELR4c?oX3;>U-;dPVXuLd4@gE.l a"a{g-CO7ryd!kWZk݂`Ls,i1D4`ÚH;iu߱Qx[Oy@Ȑ^ʹ+DVwM ȧn|[{}+@}8!1PҹS<(~KνV U3}Ҏ*T\fjKԁSހ֎TI:cd'#zikOY)g?~3d6`tC'myt/9U4<8j֔>Sk5I xg7Dj>J-!ԭRH-bpq; qGwtI-Y[F'Íۘ+&zJ4L2Wg @[ *NQ)aj.+ Kw%m;Xj+؎xT2R:n\}AYTuE-X2)N;KC% o duvòZsmk/`N{ hb]`6c&T#Tq\d}z ܜ؟:nsW55-E+&տ>k6g).O:6- RprH?_oPun#M_ځwx //4-8rꬷ<"`&B~s)@DL[m(eԼ1u*IǓzc#;@3#)@@kSy7(]ch_Cҧ573^-Bu 6ΛcCzl0M~zZҦXOt ĸc>% ؓ41` LS fi'v.^M&o0Y6 Ys\yhHvNvg cgH/ď"$ !_gJթ_H!/@oGyC"õKWn oLM9z^jiY9~36On"dGOаyᔞĥcB@='ͮw 7*յʎ0w$f}h%T8tGOt| Mb?Id>.D(:5GPwxؙ:ii*5 T?`Cܕz^p5L~Ǧ]D"z>Oh9HwCZT#zЦk۞Z#)rl(p7G@~08~ q-u 5r^Z>h޶n^??Nm%i l`P\>BcŵAK=Ddus @jHH??۽#Qo?KcQ]UcFQ<'cVkT `n;|'hz IR} znլHQ./ϧ:Oނa_?^ZXvd FW-hF%~h-1R~2 U|l<q9J"HTqA ^mY% j%jz`duNqYlꖚЃzϩ _Z\)qO ~mG{\rx.d a/wU ٵ١js$"aO d3#A|0 Z: ev>St4s!4Ň9+e!|scӳB< .ad ?~_R?|||v}}XmC<~0V#hR{4e`q5v3: qYS c:ˮFzrF>ZA$4 *9;C], c!5 bn`?!|`=.&ж9`&ܣtXmux B'TG(ycwkpJ>4K!*X[$l@5m@W",oohnQj8L==K_"o'+BoK;zrpzri|w)#U+ZLDŬ _s0xU+mCN,Ju~aȤDDDy%NvzQL &@h ^&;ǿCܩNaA["I)vq@1 c" TF 0N,G4@"q #0%%?M9^bJ}sBι-Nrt$0`Y胀+DC+J#4|VnO[|K`sjy~rdF7~z}B>޿xck\=qy~dqaųU~矁fLD)z=Ԋ9?'m1(Kxbnb'}Cl xE !!uv$mue? ]j=\y1лjO;Y9].\0nvE?ПkSH_+r#jFY2 ` 4]hɃ{FݝT}vh.ExNT V<3C-'Ṉq|*+"qt}]Վ:ڑ599P>Cň$C9 5u'x{l}Oo￲xQD p*s@n+c[،Yr jHьKOR%WL,X=c+uCnJ4 OQ-Y$4n(!MxϬQbu>l\Q!(i:+Wpl (T/ALzpB Sm{}-W_fڦp[=j I+g!w5FFsyz.z`GN9S~hA?:cT;5(GnYD/?f Ds6D'<':<1Pz }UX+^|_zJٗ;<(wo#Sܞ$z܀AOݒ4ьr#u]L\l E\RwCx|ht:QwFpǎm=hM;VUc B \ ǧڠBSŭ$FpdG4i I ?m~`C,Ϳ\{INR-w hG| Փ ־[ QN^[0'L04||oJў[L`M.͵E0]vF **?9[4A|D-BHbsm2As3ҥ#&_B>7{Btр49tw-V~A='s ~"P QnnhBϔ=_S.FB .R"x\ P"4XTdӓ!0՜$ھ]uznuꙈ~m{G@_JT Z鉋:Mfl.,-4 ֓#q,NAN: -oѫ9|W8\FY/ oC.B5r ]x ᐳy AcVACwE>_B6 Ρpgߖ\zV" f_r !Xv||4>mT8BK_-˟gy@ߩ9p8…D)^gIƐ"43P1^&hFc_RwXAxYp}jG[8<KX--?vJHaQF]Mԓ0O[΁Ս@}>/L;yu_##j"F (SqJ5b:S>AoAՆn4B,O7dLA=uW-z QƂr$7{R$0@T:bbz yhɏ07A@di/`/_>NYYh.,m}?]gxe :I ~{@ ϋGАEs1\,T"-Qytz5xknȞuW*;? ~lT5VO"Oհӕ*YTye b=r{q)N=͒'/ؔ^On!.x-7ФWH_>OexT7A(" c ^zw<hC5RŁQq/)G` C(FK;+G-RJm/|D/_@rܗ{SEd˗7Gx_&9̤Wt_~6QT mдWY7l7?s~WAS N%IdS;²?9Wk?zP.IWnA1?,=Xι8> fWA ZNis18vWCw(! e:;^)=lJx94$imIcC< .б\M\6q1^ b5O+A~voVvj_>N_kR8jl^E?@w1?h@ߕ%zB0uйK8z :爉3bO?i02$u9gӻtCK3 rGɧRqj:[岼g0nee09xhFLuQ%sK~ǒ$Z A>OK:k9DT1wX W-p9Ap W0S{}q7f??V.ބ`,$!\TyiBz<#biz}iW g@^Ҡ1oDǶ ΉX>.,IBPQN|MJ| %i"s1xYX͟jm9a'Ac[Sϸ"0z / 1v{-mwq!^e0gzUVXeRt B*w% UxŒ6ϒ[Xgab ^~%u|GS-ȧVd50s|}:|$F3BiB@) m(f@;G26_PS(~$y ~ۃѨ)@}A k&C7Ԥ2T ` )iH]9r315=]&xZuh2J]@I5es!";(WCg@#Ptn5 <(m?yDx&q]ǿrƯB=! bz1/^miPW?@oiO(OWFcgdHzbeI~`?~G߄)m30QmTTc<RC![-ӲaXGqqD_4`>39wkL͇c|ChSw }-&e^O1;|; _8Vv+W}p vuG}lHQ"Q4WLp9 < >nGL%* (Ds*AU>&n{_#OӓՐU }P{²j#ȢTCX"@Bс8\KיkZ Q~5+zq{8.\w?~OEvDӪc~܇YO/`D gLrnF;ݷY9+!lCL7a#ɦlpO^-Wt_.;|.QjdxX%j /@NX !+k4q*(Qs]}uΤUؾ#OB<>n$ٞGY&d56Ks,IkTi^ٝvNkd DjF%N5_߷COW:laCC ;:G i .F{?romHN?2D>?"kԓ<5+zr b+= +q;#٦ډD\/p| 7OkK"6ǚhz56ʹzr|ebKujqڋjgY0 Gi ^;C>yA!Iej-G~!Xi Zv^M&VsCaʵP%K,ܴuh 0zڃˠcgh6wL~+'N\?^WCC rg<GqZzhGl_ھ>? 7ڷOc4! mxÅ}I'P2$ |a&ap' M_r%Sg!AAa#*j.Ԏ 6;6>@!fAdX\0\*, u{}asUhu0d(}#Tq&;4zzq+B`Kc' fYOct3d]duܟ#菏kD@HQ)Y%T1$ YGƵ)aFШo%JG&gq쑏H0N=}0W~4C6d~T?q:yio2T@Dd*8F|@},׌l'ሞTC+T;$hύ\uxpԟ ǘk9kYV&μsrz Ln l#geg"h*Y >~IA YIgau8ehBg ؆CUA>a1Rʳ4 E兆Gv^n/ضj?WspCj\>f@y\.g}n_UH޸q ^}azӱ1G;8!G<XqW\\OvjX>@17ESԐŇJ>t3a 9^1n4~(q1Z_%aat5GSrvX 'rF$4= ̀8&K+0>@Z>|5o0KJ~q{7;,Pwv/rL54@c|P>#TsƑ%،N*qk Aזo=qfiGڿ~|Og=,Dr9nH&&cl(nsIB{Ҏ,S{J^WAّ$" Lzԋ| =fC@ Nyx#.@O.C|XS hK;kEi(W^CWUq6ay@@0vw\'ίCGR9͆@`P*ehͪfڴŪqnCB>)?@'*\kckr{S7b,9ƺglBQR N/"ӾOH?wcZի!]a9yr~Md CpyOP K\L`z!.jL Y1 ҀxghC :&/s8зV.Ee0# ^tVGT3 80hz3:̹*d1'=z!Ir܉tl&:ܴ84aq[m`(ofI(7XJnYKU+YsҌ0[~ʬHja{G5P?A'$m7W{'^fd/z=OK,wC4o֓iܾܨ'jP7=mUq^k3zR'Ŗw]7z"xb^ε0 fSn럕O}5BBEAu-̨\4 DKa3쇦K.7"Le#,Ÿ798<[d7#6chāe9E_QA=׿jx<OݥYzsEb.Y+G> 8NAGfng ??u?{~WڿӾqDpCϮL7%NWNap9UgbwHI`. ѫ.hi_)B9 3a!~r;?S)~P mjlKNQ 1syiZ,{©z1tle߱izF+72͘#lpEg|L%U\kͽOPW^)hN[ ~vm'no[U2bF~ۑT-G4BspU~r2=^@x]v35ύo;pY@JxGpyW~?Гcid*vP{ؠj#Zn+O7-'ZPlI:&;G_ٻ??Z[P|@dXłLv)Rwyِrdf ^Ǡ (`*xFRq[|FVat@vϊ={;w*R[aN HfSΥ%1B$eR,";ey:SCO F )_|oJo%>;9^]z"X(s98j rq?#/wo;* IDAT%j1O< ̬B[|A9|l4ka 1Vk~5szRs)z.@QFPPONCS%X§ Ӗ=$!3ԆjD0s4ӬM6C%eǣʇ.#`nleYsTΌ<dz>Sd?jw-;u#RĠ|8IAs-F"><ֳa*e\iml!|R|ڦӟ)}̼{vJt!Jubu.3#u˞AYErٽ#ŽoDQH<ӀrvnN-.}^ ;pg8R>h3Л?QhI?2d!{2āP8 JG3d ~n&u.dSljTyϐhd=.AC_[\v [0\S=w,Fb4s i"QI|3 CH .zߝ{r9K|^=BPhAejY>VU7>"~ L/ǿ7l!{FE_^ة LoLytJ3R#R9 C` ~xy^B7q\Ui;{J5o;q P1-?=D)5d[ n/;N t|YGDBFeAy48DΚ EiˣC:I8-f*Kixq L]{}W4ta=տ2V_ 06kˣ#o7txF֬΄/K;dڼ،>O`FO'vҾ[g Wg>?ʚ\ 6JHO*Fygp,~:rtz~wLD'm_^i no7 -mwgef;Rr%_}@|[$Yi큱atqt΍>Vy/-Ʊ lZMH?]]>}Bb\x?"" }';{Jur23R#鎼 à K NɱԖ8εDFߐC%wXN]XQs6կڑlJ|9 &@25,s=nMo &ø:6H>*|< jœsj৒eGrٷK3mIh%z-rh#cGB|ǜLӗѥנ4K? m7ysMqo)?8EAm'cC؆`ZF;vɯQGnf/OeV;ᶧъi4k<,ON4҅~IAhcV< 5?84 Q3@u)0! D L=W訇}aրI~NKuפ5(Y<0On@_T ܳFO:AHO1|2AXW`@jm$0x:S;8gz 'ewӓ=]>9W_^{R,#H>0>7#C9lhq?Yِ6۾'M2)1yS!$?!Gk'(X[:71`c2,/\^BO|W2]fX>Q`)h@nG%)To(#yw5 LIk x*YÎ;NC1bmXϦaC?<@k8kmdrAG+ vGes!";(wG(Iczrv6*S(~@^ |\HHptG|Ox/KΈ'6C{9(ج&|=ADm;m: @$x~?}z[2 >' Gh=vF&zq** $NX G]ipQy+ ;4ebxnבRoDm@-Ck`nB7Ubn@m9; ;Մ#u;Hn.dzmoFmo-n[o7;bΧ?0xH~28#/ʧU1rAx@XV.g/'xStI60J}PAmZzT%nl N,wv71&^A ,XYn.d FHaJ@iv|$n; ? 1X({l̊BRx?\9Dpu_ D>w#ƆGe>qn@7t+4<7hPΛS?WwLuy<!: 8s]= |8Dfݟ7|d \5B_#eO$i2gܟmPqվR NRˣer#v{qg8祥 uKP蟇=3ntS#7`d7Cq87 at퍏+GW{J#pL_.;s:B; )EX `k % ;A;&"9Ꮈ>9 Ikџl7`#ѓR\;fNΙ<;' 8^\=lTCR?CS/G`E ϢJ"FN=vVχAG@@[) Ǎ_` GNh8#'9*mI+3P<$n,ûȸ|ast8r(Yr^n$ޠAnU0>4L2WgGE.[|}[r}svfޠ@?vɧӟFJ[棢^/@A;v!'JU\.BœD{"J !okƗ7똰"DJ~ tGxupOT,V \G~RJyȟh4aCI|?"`?_7!ȳC9nukQ$Y:E N@M?Ao)O܎+:j+ʃX||딶 #^;a 8Q2'A(ː@Ï|]{Ӧma;|J 8@/%_9:~nt{T. ptx poHэ-m6@YNc vD´ӾX>^$D%t%G@ F ?0D(Ԃ 0yf(cUOVM\]A-\r$Mq@풭H#|ȡC ҈;7w݌?P="yU'NXUFx^42Z %='ơhClȎTvp B}7` 7n|z.T&]hE6.r,UWmIȮ=(ܴu87b7P ;ՏEO)MѾ~Dq<@(Jwj:!`Kv )^c$笹U+0T5w@vg%EIb|YfpDw;Mπ}ThWа'*X";y?-FL%K|.eǬ˗; !v0չ(sa`d^PnJMa(T9ХSx>blR:4ʅڑGlh - #O)lGWt\{ yM>ARtmJp 6Zjlvd49^/Hu,5? 4#LW~oj^aPha!ϯB 5#EBʶcp#=bY֓jy IuDH-]Uy>ar&&"L՟&b!zDƺ@,) 䦼z$G?0iq%WhF PZGev9$ˠ讵w 7%#[Axt ύRà彆km𮊺~GpH> Xux8F||,[O*0`Y$gϬ">{TI'vb.\' UO\Dus^FL*j= O ͹H >wTT|uWFt>UWQ`~Ug6鹗`X?\ڊYc0- =aʤ*u ZD=7R2=W;w.ewK|=i J}܆D:oP8ЪchgAi@_ۋ UC.[s!#Փe.ksP`@5H@9DXoB*&R I9,^߾Ғ55;`kYej#$}!&ĿUsdBaxwp/o,,%h3ON΍n(sv:k0sD>05D'U#}rD297굿Dbzb}&Cl%2挅cX`Xm[vl|ͱ.UOƣZ?FxAn'i3`5Ϊ i-%i%6fՔ٩^oXcA^ň;_Vs;hJ߭G|4E~PM@!͵%ӣ5HXv@{l- \)4/C4CR(RRO 5NM "lWeUĈ:%;hX(QK*7l''Fc?ƁY|9Fx:GQC"]+MA`m m^CJwu»ʄ_=r 5//'NrM8vN" * ;1ڜo9o0VoՕGE9.hD`kgmi^oPuUm xT= eɥ)b]\5zBKkR>,1` ؜/{ck땟m1~ >[Axy-˕K)ϖ/a,C0ʬ#vNvH!byb2ˡ[*ޚ a=]c@ֲy匀?:dgA #jQ/Z%~뗟A>miG[ ڽ0<"."7="<פsRojc~@"WYF 7eo"7'fûn0g䢰&+7Ipt.χa7?'K>hKA.01c4݊ȁPY@@WtKcxg9@a۔Ii'f.<ֿr]VqA0a5؂esE>C'X lvF3݉yzw*\ᰞ?M|k ;O^}5c%@3 H@& Tiс68P$^eQVTOÒ^d$\'Ljj?:LpȆSr;?Oe|*x$7T6~hzЎOGG^;Hʑ`ýMp ~i԰Fz>g'Q;⮠vTG.#;eGfM)={EDgPJc;>m?#QG{, է,Ѧ z2%ޟ'LjjH"<??QhQn8喃XJ2>3-Wc؜x%ٙf @!'Hj.C|FVo/w Q|"| `AVGå%03L܈#(GE천W_di!D8btj8/jZ}I;wac"}Șǒ `?/&>Uhh&6bKX{[24=yhD-%_)r|ؑ"<I!%UY ̵E0eIAkU~N#ܜd*gFo^˫eF8UAb*|6G =K! +z<Ƈ>qo pLC՟ 1s ʯ1IɐɁ.C@pm'*wKplq{| p+VkxG\N䠱/~`7Zˢrw=%v]bEF+!` Dv3{VW,Nj} IDATrpӤXOys8Ω37{Y o w (Ĩ]Jc}-sϿAѰ-P0~߽z΢KG쉡m+Ⱥ/ -U.=/?)\;t,\.kcހ-^l"kύ_y%FK=*P#"_=x| NC'^(Gݷ'@qVB|K+'Տ?MOS@>-QC諨D@q@jO\V:IKbQ쌿blҊ˛f86D-ϟS}r6C׷\4JCA6Q4?h$I WEOfxT46Pgt"T=1&266+GEgcRX7B@/R+.Q)oKT`30ٶI5$`!Dj Ka (7G`hn,?YE+Ts_~8lz' c;P?vQ=Z |?a:KL||Tˇ!PsqmɩItM}C@ffpGNS]TqQÙ{@ϬQuŎՂzk ֊J+AFde@Qnn{WM[8U\ `.Mwm&kl+IQ-zVbsF`jBql7Bːpfu>},ca%E:X"վUqtύ>'ٱ+$O$5_'3\֮wu'yVAjvSckQ< Jn ^;ݑ8+3-+ݐ3Bյaہt"Y=8'A`g(ޡ|!?lIO&rzCezE_3`5cW^ |8EdVǦ[Г$">y|="Sw@浧эtӭ4z$yq4s>yps6|N{ˉ4χ퉑0x"ji< Svk۱Ojw]TEнj~s U'쉆,!XAog,vKCmw#>,gŐ`(r3 wv*q*;:RB =0JmZ9;ou ;h\.>UO"ڗOUnPA3/H#݃ڔLX桢EU~Vۇc]l;C苧uI=)Ӣ h '|PJyY ױk v71'KAYn.Mt$MtVBd6 @]ғG¯ujX#݄ e'A %ӟA`VXy )DS ӳv!a|7E&}y08T~R;P΍&w;dk*"v(!J\&MУ,b7+P#տ\v\5L 3ͦ+0?56+ئ[ RZYFԊ Zv44rQ\JzXzW㊞,qjE^h)D!y@+jxu!}1Vl2$u6<`[ 7yL$⃏6 ]O  š \~B0lE෇A*$~]҈M$P"V6#%WNپ$Ƕ>ٹXց:XzrlNZ4k>2#XGՌp!Oql=d_o_mg{Iݾ=t->>?A:](~LVA߆7"z'2VV(`GL BigJM^*O*15W<T9߈bW>^#p~)<+RK~سzr8|i&{!Y.R: _y]4+ftH<  `ɾ73_'|ʿEjo6' Suuzr7)z^[/^C`]pJj U]7;34z6MyvQ6C 51EWkZJ@<6s0I r1uK;v=(ܴvџ-8;O,?|dzeW;sC |CöonVK}#h jȪ@쐝A%/ ,)P]aN?`.[I@D5R ⠔浶.Hx~X8b! 0IlǦ笇D5CRRO'arg:>"l9ԠAȧ!awG{ 'hWz!iْONq5Au,Ws أŊ{CpΟ<7XD0r!T= oOpչѹMU% ܑ?; l9N̲\$ /^9T|QQ1=W^ GzrL>4TNUD+dG[n;e+[ҁtcPP:;gHNE`-μsB!Vf.otG*8|c¢0lY\;q!oDS]-HX~K_жovȹ呃?"Wk{N2R+.'{3y=́?c4u>5TO'af_ qd7=i _3گd+AxjO;u0'XK SdI sgA-qD5jmC1*79K;8&5kykr5T:z 5@M&!b]Cil XYgVvHc'K@BD@@|vX6=Y'P_@2x?.)a߹T/\ezacH+.BS |7տGI\;d_\P(c3V|}wDv15΍ Wܤ)ҟYA&2]jBOt؍IeIF+ ;'VVikECқ [>GRKđ@D0h9 UYvTT-wgG;+C,+'p+r 񵴡K?Z)+GܐB3@>_,O-|O\`Y GL)3]|{<="@ Æu/4k$Q?rF)"fjpT +/X0u1xUe791ÐE-FoqL&S栝B@P 0:m3|Y1JP>7rSXg׊Ob|.rTeuL^O~]cv'o=~fHx-xnkvJ="^c^ >'D Tk=n;Šf:F?^E ld0|ʥ {zq'HBZ2,V_T Ώ _4r<24iG)1Gq H } UMo+fߜqQnAA^ Q7uwua!D~ ,F_[ 5X)߁P+#ԹѕOiЖ>ݖ2nڹѹ{nu,yUP 9\&j 5\v@4h }U5W&OOJM`CAI~6ĩ^J04S #V4-o_4Ipt.χa7[}4bvG7ikVDx-6rjHlN:ۺk#8[aKsE/PR񚈜?|6Ġa]gEK F 6ΜCt܌ZSIL:Ryuell0hiEJ,:d%k{"EbL_|;̈#d{c̻f$x4{zqam pMեq>ALd_mZsu}BwТuu<j3nވ/ -`/"UjB>KdɈEaͫ޲g0F$IW ) /5S)~ y_0 Y7-epm2g~K[cQacbXet҄Rb*VM$j1hPoTZkrZ+Ղ|M6]:jDp:Q-r^٦GG>CX))jm)jqZ:LB3R08B=@V#CU'd`(%zGƏG X[@$˷TA"5c>!T=s'^{|8 l6W$U|uSG]ķv&?P}{{nSEl?^b"\xLeTܖoaknzl~nƲ(ok,^94K#gT KI\ ɐVHS? \%dq@ςRS):/mA{L'C%OĶ'E=JE',GMqk޸n:*Ks&Ѫ ,ێm{7?>'Yyϲ$+mx?.p>ǕxUrrH(s󊸇D-+V7 Vr!U'荸߁ekarX K BfH 哪ivUmGܛXs6Q?R2QwϜ<{}#G #%eFP O|n4º0j9tI6?Vlm 2BWwk9I44Z+,G z钉2Z>[VOh{z|>E,ɣPZy'*/B*ѣɧ*^C`iC7dB97.̵:W- a~|lȟ';@ eO{8('i abd82L8稨iQ_')}d==ƶ'W;n kM-:~~?Pc *V̒@˪xmke"Rcx752@ΏB6Cj Б4br>ǒ( z &荙*2 ^3oN#Ԉv6 LdȡI8~3]? `\9(`cцB~9K)ĭ#ia'}qx]j̄dA'-iq]O7ULpf?7nȔ|2)ܦe杰OqK|nbB6(.;CL4'G{`QR `Fj{/铏>O F,M'`4w$~jGnta"`CjA a3yFQlyD]am,}ӌWreVC~QKQܖifU Q6"ɦ``ŗOpz|||_.o.)?̉Z`G2EHRlM; dGFl?mo z_?] E ѷ# ckԶI?}EDgG9=0b NHүOga:.1tsM/y*95geH).TX G셭Gn!Uyy%a2?FnT xz 8\ <,+JR} dVY1\X8Zghmd4Xry_'6.)IDAT|W^~͛7??"߯ !FIИY(s[.CyԈ^"'eqF)32QV_? ҏ+YT4S'j<e i;\''`[|꼎Ԏqg*p80y; B[;/Ac/ a,jQn;jj>bp|RwwtlGsYӴVrt{~xӧo'Oy IENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/7.png0000644000175000017500000007340014212620632020504 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\%a0=(bQ뀺m]/mm׊]voj8@PqD#&V!@>wxs=SN#=tY,&P>K ݮeoAfaKyIտnܧ(c`@p4ښXu|nvtoeoURuAD,5`su'pjv Jß>bU\?W Hڛ{g:yJg]P-{`Ų 8. MA {Qc1Fz:ZLI+ڔРYh'J+F9 2`02IxqbA(5JeD;3(GAA& _ ڙ$Jw  s,5&=rJ;p3yUk !5C'QAD crA  Gw~A^h(b* CZ R0)@d$AAEK[cF G ev6fm@Iq550CHoA0z>1WLAbzQ:c15>Ձz- ׹wMz Dw570",J,3De|$b,\ DuTFG- hQI7v:ZUz=hn8cvb(ܙr^ n$lYyYcܜdh~Yag~ ȫٳg?>a=LP V\m080 0KZdFlƦguM9Vi,h1ouvڱǤDXlffQRR|^GÇ{2L9'N;vNwA4֦AFe p8G~=iFFn`rIc~?~FGX_ "yMz luwqVtuulAnin>ɒ7A@ hz%%v*`Fh(jºB ibb(@0& a^>֟MKV?Zrњ-SO,c/!l60Ye FGamHAd Aܨs㣊v>fs Só11뼃7=_[f׵pz``PЕ /A;r {6wjjjqfBaP(?lo>/(._rX_X~PO=z }? 'vBAT ˥BBB̙]y$!/,梙Ï4,( 0+oQq>|8R, ndM99Ç{Y$&^]X$ Gx 444%-=gg677oE~~⢿z-AQa\.Ò`mm`ֽ.D`N]l媵{ߥK -Z6Ql@yO6} ?GΞ=u߉66$I^N<AA^: ljk}ԉ|q{_;' *(**M:44СCsU=(.}sk:9gx)We@t^7[XZ~Wǎ[W.Վ0NP3f<ܹ{#=z,xVr6AT… ?emml2G =&0f ,jIk6ZJK?6|u\"ԥuHnbNqs /7}sGJJ~1 @CKMB(/+ȃRѩUbjM }C_____gMLL+Vl]%5@@3aHD=?%WT_@ xEpR (Mx@ s= RS^^$;=UJd@@ꬆ(\AT\C(0lgV0/2RjĤTV\XHG9A@eF=Ieyr>yХ~S[%;=a]]);A1Q12L/c+\4+-2 R+7tGpE:4kr/ƜKttt 07G&S8bSj ji,!"E76 ``AC *NLM,pM1/*j -K]촱]\#?[]K$IjjݽNN.0O;oÇ%[ K(/Mp⊊ WGqgb`=NAq'uv+ pZP?x1/d8aP"92 ] +Rw޽{WccӧO<=Vȸ{o"}p#Aeܜ쯾A__rKU,9꾽kfN*//''ڪ*SSe/.X𔫡g_-v0]ADu5xv6Gbf椙>6"Q &6ce pZW}ۃxxj*++*+x&o̘9wn..&&#GzpGr?ޑD琥Qe/Qљ500+--.))611[:$#FZZX@ B<}+/spp^*̢[/T AATQ[ EXfGCH9+gO sZO>KKSA-QA1Q -ŕ,6?t{[ĠxkyXJPe"{|uAզȭF̫r&40  $0) (1}1XP˲SJA0MshUOwE 5,NYf*md1QAUHwkGJ4" /DUf.n+}\mvJA^]*T) @! ڝSc{3A!J *]d"AiJg&h];A`*E%o)T_}DS( kҍ0Q/tMzs0 Hk}DuJ@ QSQDA^#tనjњzwAc  }ޫlGA^ ]'\i2"Ay]/vQ=2A'8&}(  tx׫D1'(  ͖h%WvEATtKeBHr1ԗ 2Ry$h7EQUӮEEQamBT)ú[JЎEQm[=nDC ʋ'E>Qv %( @y |Km"wJPAE~˗ya2AdP[5A޾}ѣGEag555\.W___D"&&fÆ vvv}^_AzR[%Eݹݻj+u F2\R1M&N]LbMi&t$ [XUBʛSǩwyEEEdd+WH>}ŋlvT;vo%I~`jj $I;=ھ}ɓl% \nsss_WA>"]m]˒.^WS]iffU_W{lŪѣؿK)E~={Rca6 *!fٶ/믿w޽|򲲲>|{ݛ={7[ӧOk{{߼yt666) D¦`ulX$:R PJ9=x]pH :8px Dp]oٳ˗@vv ZSz/;;MLL`Ĉ~|r Ȁж%c2]Uɣ(RGf`͜?Y)mjjTJ9Jߡ֓²z {`KF>o}VB?tttܴiSFVU4{:P[[]QQnh8Hg27K 6{ܜ(/VhHq QVVOtdKKX,nhϛͽGT^Vo9iܻw|遳od2g̹r% mFZ/fFZPaps333HIIp>?...==Ν;#+V\fɚƍsvvdee:t(--5$$˫c_O>]YY  33q(--ݻw---f̘~P{{9qDyy9lܸqƍu7xCΦMbcc1YcDD(ܝ'6(M[69}H!CLS#XD/)x+9},=횁᠑Ƴٜ+YQGK[U{?ё¦&Lٸ߿#54}0B(ljii|l_ΩL\``_$X,^l?cc߼y3$$Y,VBBE=q}$III ,[rSRR̨QV\9aX`,**Z`Kf͚f?]/www7ߤVXvHcDDySfXjn}m7`9fg{Vf(<[;{<ѝ9s>]NMm.GlqoXjcIﮁ_JۋV8NQԁ_tu}>%mH?̛??y kij01Pd7U,x PRת1ZRMqNÜ裏~ .lڴݝ~ p333k׮=qDXXV```lllAAѣ6<Ϋvim3fhqQNX '54ZA^~ƛS2/3)dC)8O劚HԤґP__[lY~y$ _|9;;;55HΓ;~9$V`P(^HǏ)y-Lj P`_33o*+yuu5 :03duG 66~~I91)g hnJ>5X,P C޽%&L/ ~N873[Lj AKToy#mm M>hɳ.09: 7: )m{ 1_c9OE_ino>uAؠg0k$؃sptc2O q=z=089t-,ロ:u|ٳgܦM'x<^rr榦wK5k,YdΜ97nܘ8q3ѣuuu###ܹi&55իW_v-,,l=ګݵ㏪*@0mڴѣGQD%bjh8EﻹEO flu澓d/.,74q+¦S =GmܺZRx.. B?|~B՗e`%0 믿Ǝ{Ţu޽n:;;ܹ8&&b߿_2H"  F?>bĈ(]]]op"##9rmm톆077?vؤIN8QUUw߭]/׏>|ɓ' P1":wr^fb*S$AަfWW`?baS.V] 9Z};vs puTJi|A3D ǞA,11ϯ-GvQn$hBQN#&ztK;Ii~]]$@uu AAzU1D{-D1E;embG%^\ј( *hOT(MtMN# *ewn鍩@AdPpLT)P" rhtL E 2Ger&rOe' ȀUF@ʍN< 9 \Bǁק2sND JPкJ% 9%W`Fng۲{`(> +P">JA0}/e+i 荴C :РE^sE  B!E)-z;ڗTxP"|#(1݀VVirL,Q3A{)A],OA3 IDAT^E *MDZ J?FJCATOh^HcyE zzLTh1A>dƤBƯ(Aו@ m3$..U%2s@OTҼg6WD{AAܹs7o-[L>]pOJJRWW,<|QQܹsYQQ%JUv[TX,ͱ՗^Qao$\kUa$I+󄮏?>(( ÔxvwݻwoǏb0~JTUU}7=6PwAҝz :dH?wD]]rUVi3˗/www/++SV׮]9 w;w/]34dk+/ͼ/_N))9-xll)DV)%T&>=zkkk5jܹS|>?...==Ν;#Xbʕk֬9n8gg稨(zIVV֡C\]]CBBH\pmc,X0eΟ?~mӧ+++@R%z}I'N055}ƍuUGGǡCJ/d2۳gO~~ߊ+N6X^xq㴴Ν;oC jnn|rCCET2>>~m߼y3..֭[mʝmXRR|k֬/;m۶#:Ifv.Za0N͛7qDzyss,Yjժ3g?~e̙@QT||ٳg njtA577L:˝7oކ z游?yݝ^_"G)z7”&9W봉go[t͔)A BkkeWV=ʦ몪*Mud(kg 5 ,_7߼{W_}%@,/[o޼RPP,+!!Ar^I &%%-XnʕZZZ˗/OIIJ[n=|OUUG}tUzybb… ?~<}tKKm۶ر~jԨQ+W0a,X` ~afff``V^<昘6#}ѣG###K,rJPP͛#""$[EFF8e˖]vcB?ܳgτ O>gjjvl۷oիgϞmjj_߽{W ß}?PWWpƒn۶m_h?y}:t(66~nذ!99YkNNNjjjݻwo޼fW\Yxqqq1rqq2//]v=*oaa;vغu|`bb޼y.SηR0(g}FL)C8urppq|`>Wf``o8شϯ)xl7rFϟ@nffp~ڵ'N -((vѣ6<7""r7ni@>}z֬Y}?|||kzELLLT\.7%%%**J,Z*%%%,,lܹ7!ڏcH>|;455'OA;ܐvԩ؊ GGDž Θ1CGGgɒ%w܉[n]KK˪UoXUU/Eu&ٳ+leeeiiQ__󼓏$M6I'(miӦ]]]---Ϝ9'8:::"`0 uttbۗ-[2n8Xηtr$\1x1AZ¹Uk6hvrֱzV𤲢n ko5CNOX-Z4k֬/8p`޽ׯ磣n駟n޼YCCC{߅ AFFHN֭[`r6I7***֭[~'QQQ}|rwzz:A_j)݃M ZXXlذAzLZX3w6=݆etw!L 7o^FF޽{#G鹻=L .Y䭷j_. }7ogg:{PE_r(77w666;w:yƍ y>JDhâS}[`hhh66 zmm稒"'p f^yӰ'W΁^ط y4 駟:4vX__-[_~޼yP__f+˗/gggr8t? QEi8_T$''K&A71BaOv*Ù3gfΜۣ4p\h0Ƞmmm]TTAm'xzz;wÆ eff^tsڴi2z@~(J$Y,22R:wwtWvZCCüyL&EQ/_fXtP(n!Z+EqqqJJhhh$I&$$M ={V 8rHKڴi\tP6b,--3gW^L\zaú<.V^^NsSRR\C{!!!ÇO<6m&tuutRcc!CΟ? XSS~tQ"Iw<Ѿ||Z?13lnif1Y3xҥgQQc45Ϝnu?&55uk,lL_U Q|vT,㏙wpphllg}KNNnsݻ@ef׬Ydɒ9s樫߸qcĉ3f̐Vϟ'I"**,^0 8qsl윐DGՍTWWӻsΦMPSrrA;5KNNOkϿxҥK;*-((}]nn3KMMݹs'=$N<٦6f̘ÇM0*66vʕ!!!7Fɹu֏?y<ɓg0!>"::ZGG> TC.]t8EGGs8~ȑ#ʊAw޼ysڵ>>>|>O?d~(W1s]~yŭvv.Yokuz'w AsnܸsNCCyΝ틉ۿƍ ܺu`H_H?~ᨨ(uuu:1gb I>ӻxbccuuu.]*!É8r䈦q$Iԟ<Me=== }6=W"""uw}}__e˖M.\:..ԩS>>>K,~;333z!4zG%&&:;;o۶M2iCG[(:ZOsܓ {voq+%v+QV۫b… ? =-B";;{ŇVa/bu]nDf͚ٵ/^qFt=2tv\~v.&OS:rSTT^ӧE"TY |&hWzoBaW^uvv1ݫ***.\/(wCCC7xcڵ]T]]믿ҳwaee%Wr D\lA>ảP]]cߴcze>ݳ(A'NZJEn8#9\Y5jԨQ򔣧_JvY H}*Iёp݆y zMPLzH\p!}a^Ub H(!GD/](DV:FuBo/D{~ Xuqk|Q> ='c(P/]0LMMMYK;OtZS~OQtPּd(p B r3woEQð>$k*TjA ADu%گ/n(4T $(JQA2DU ;)A/LPBAB-Q RS(Wji2ք?L@KF&JPAUE9Fy52%qnNfRJ="@mPAu˒j+%hʭVߟe@ѩ>A>  Yݳ%ZjQjŚ'(j"0Y!ZgxͥD 2<翖wDDa% OXF 2j}F(Z"(MATI:AQ"*E'" %(eUET{"j2<UAbxށ y%m?_ U---cZeѝ] Pbw.JO7dc:L&],eՇEy}IG.~ڠ*BTҚ]&l,VL"WћvYUF/A 20(%:HpwR A*SUM:< *ʸӘ!aPŧrk)`evSU[j XEA(Q:ŮTW\nnrmF1W~T7|a&VL , 1^-z1z,K[bL.&O5,3?07xu;dM3+&,1&CYU $[|!% >s4'oIbzt)Ll Wz:A~ԭ/wEY +u٧rR-}oPmW6=q=lpZ1(]-,*m5+dgp>G(#SMp )!dRiaSp]M3S%.kacm1muIy 7ɮDe=Q.t<*:iP\EšEp.-rK;d3o{H20#}t& HLt]Run'⯚ FcO킏 "zhc,L 2ɯR?O `;/?$Rjdb;qBUۇEMb 0g1c(LdS$?L_'oF7eT Za^vxA舨yGj"(&Il Z^ڡ*ή+ P\1_\tNT@wc8>i.8D̪6 eW BR Hp0`ƀ+d(&62u~ŵhc]VUƆCpG6 Bjk(u* yAAU+ K-?,zTJb8`nY{Ϟ疄jp?L'j516 8;(\$ ZkU%ϟSPŧٰf侦iz޽ٳg߸q+Ҋĉ>x ܞ- KfYA]-SDR CzGK(79lsvJVe7Ӿ2V#Xz 6oO`zknnB͛ٙ.zEP Q(lc1n}7&TYdMSn%P2}RP\C9a/Z8<|t7/'WP3ӧK_P^,8;;;;;cD}߳yi0=-L$r .gE轸8SDb8Ƽ%-.ll T-!GȮ I` irX|[@=輖^OGΛ7履~r|ѣG?cgggSRRv%{HHdIVV)S|_:u*[f $Im8o<tsspɓ'~T4: IDAT˗_pAdPhѢٳgo }/~9޽{^^^/_>s̲eVZu%MyI.57|𲲲SNIT,bC A䡜D*:d<4/p<]\r5nZxPDq4En,maXp+' 1"^$W3&)p 5 iG.`WS#m1.xx Q@q4>]}qhh˛㳲v`0beg̘1Ç_tɓ,+!!at$I&%%]wʕ˗/;vʌ5,))ҥK ,prrc6|p}}3g΄1 &IrڴiͷnjddGo  ?{{{}={B9W }}}/\߄ wߝ9sѣGϞ=k׮{oȐ!r||=>|8&&&88hx뭷AzrB4ZqTn<1s2K?Q_ǪU=eW񩄻o%QíD%J˧$>% j^P\LRnүU!1ءk<5q5|{E,&WSO3@+XK{IbbbcccXXظq` tJnffp~ڵ'N -((4=z4ֆl߾ ٳgx;v3Fm /]4aS,뭷ڽ{wNN ܹs$똘l6; ((h޽>>>EGG߸qc;Ν;'ON8166633ʊ$xss!C[x<^pp0Qa׎;jjjĉwޝFhRRtkkkkk댌:s! :A...`eeeiiIӧ J+Ѩ(MM9sEY!FB1h_P#(hwPQQq`kkkJJJΟ?r~̙3\naaUpǏ@XXX}0DΝ;;TWWgdd,\֘p\zٳg&Byy5ظ_;*++Ҳ7v PSS[tiAMVhp뻚(VC}8/Zh֬Y/^}`L:7v HacG!7ƚ -&vpppPPO?tСcfggoٲe 6[_|9;;;55н9Yl۶-33qwwKhnnqАdyzzXW'O8N'~ee gEWڱ& Cu*-{=x&_pz7MsssKKK >yyy #G@rrrbbbPPdMOOO33Hܕ%*9FkJJʕ+Wo$ ׮]khh7oݞ^hQssӧ<$MIIihh={6'Npܟ~̙3۷o|@!;j@Q^zUuc'|ǥk}E,㏙wpphllEo>@񒓓92wK5k,YdΜ97nܘ8q3ѣuuu###ܹi&ðYf}o$IZXXDEEq8ŋ˃ó]]]˓uuþ|g}fnn~qPz9{2d:::666m:Qj:RR3R52jk*oItAΝqΝ; CBB?;wܷo_LL7nKuhӳ}ÇGEE{xxqMMq544! Ri-m+1gb z9ܾ}{LL˗/\osI&-[ܜ^>mڴ?ʕ+--χW^f +񢏎j:yܫ(Qw_O:1zkWͱV@lNvFʩ+رcN333.\pO?T){illlpمIII&{/_`>6m*..H|YhhX,NLLP^75DTjY2eW)>>BCC_A#mʬ,,,:thN[[[0b 㸥&42vxu..%|xtss 賝\x$]bٖϟ2e@ 8uT^^ކ Л?PCI K$I^v-??~o_~ X '))… ...}%8ۻ|o࿝M6Mzߠ-\u ^o3**z3f:wΚ\:ǹ=+*uTA,TЖ5M4m&cCHܳ~?%;>߳|-IOO~c5z1F B'ʐCq}Ot~%,i!f]Re rqO4XG0a\|f=EGÞ,[wqo(wH*"AA8B;7ĆUa=`*Q"l+KN:} #el>[j\:\%]X_tuU Qrq%9 `!jM[(d#b'#Y JT)g"!僈x~d20 :DYe211鎧O}ҋU剝4*hᲓG:XY{nU*\|yw#%%YPCJec?GSM sssrYZ8 f`@Tz>*Jh.׼6 E^47kMJJV3r&hK忽:;Q D%ZQ~zzPr["oߏ׏ONgfMKz짿t~C~a[k8CD_=guv{{3e}}ظ6-_ׂ\@ QCV_R}uSc/>ٺpGKs Z4''Wmkm,KN2epĵ\ڐ%יUS]qg knvw~~&:W9((ԙ(A h\\ӏ߮\cҥumkn$?z VԔO4w<ڊDd0Lrsr{G~D鑄G}L",ڋʎ; QYԂ(='ȿx^?w*OoZZ&CΒ<"j;ܑjj7kbaҲѫثM{mrYn-Uྔ;"Byλ32s_v&&.7oGGPFFĸǓ'𢿿:~㇬jۇ[d S+P \r/_V{|ZOCtnv܌~K8DJD+Xsbc\et1 D3f)"BɽLKϪx~8MD\(˚90ib󩅤)9H0Dd3`BB")EEɭֵ'Co[DD3>55-ikm$t"&ѱ"bY|q"2/]$kj tZO[}enkUj"t7?P.0L-šS=TT"!Otxh҅ g{;ε7GGkn^L&k+u#gNNNꧦ *x"qhh7'FG-[f&њsc=ڮ3gJWѺڪhuqVEUʹuڮQYuO׫Xs^"$$$GT mw'MM3{wՎS`R2V"7e΍KӲ,_;P((2JT*Fsu_ՅsJe%D% ;/3k߲\ p<+s@gG`F#: pyf֒+;51Y9r򈄄ľ>]__09 IDtxxypO_BbkD4j"Dt핓)xctpjǻ桃y(?eb }l+OT|X1Ƨoo=R[{h3 &b QAsˍlQ! $QxjMrCzHW!`wjQ`z#HQt^|/?W%qVfjG"}, QATnԦ < QsQV!G !7ngctyl!#W3^ nXjSda ]=" YX D̂n^9 r@P/s>F(&&avg&#@uOK*&&r鑒0n"RE(es;gQ+q{eDT{!7 ]Ok%cДa2%%{SRӕȾޞ?z47קRYbXs :7Oz-k*ʿcY^ٰF>.v-O*Q є \vʤ;ޝ鎈P~3*51aZzCuݻɽ/,,|ϣ]vc>?$mI@ M^|g{[3va& ϶uZ0M/xX ;ĆQz@\ԝJk9( ᆨGxvVѹZl^T9Zro~J^:k!tWl$0'>fbx9&9!N]`@@$0~Sߢ| ?Dy~yaţ--\~ Qk- QamQoo*H,ݹL]#B4u+af/ѝ~6GE$kfYe'0|alS("93_}qݚ ۶߾p-`e(!׫}g+kJeTw_3Mۡ`u{|~ar]+W'˵Do[P Q>zt[/&%r JDE~ s^@DŎ6hnTq`|| [r , _lS5i6;(=v("y oؼU*֕s:T&̹푑Q^ vall41qv^ȁhMc+W%w~utd8+kBY]Uncw]O=S{/=r@&,ɗJ kJkѓ1 -|!"UeǤ2ك(*JO?]v,?0B/uDĜ=SȲ#X#?Qx|æccF\&=D4&&&p %i<٩2EFE1QQ으)CWW;565W!"3Hή\KP"= B܀j~"!VkhxhFGH]@/57]zgO'OGDɩ<^,º'VtwswFmX]n.˚h!"Na-H(-=xtrZ8;7(ψdgQڅbhbb̲dttIJ\!"㓈l2(c|bj Ĺ',/(骫-l-=~3&ä&'mMryDzF6gQvZuw\;tbTZ]U>22-1&{| =Dp 0 IM;ښ._xL~b,/02R!hnX?2͠F5yyqfio@*uju̶wX54"B$oh'.>orζ0YزI0D56:ҭ혜ge-rO@SYDA켿ɧVOE˳x>"ABƛ g79(&[.A \.BTe`7qIDAT6sjB/}mŨP??t#'\ Q#}h2G<w\ QQC.[(` !\'|j5zjA PV!*nG( |Oj'H}* f8s-Dj. Y.\ .`Є 9 &Ds{q(d\ k|tr~ <ׇE,Bԣߩy,: Ou DEfgn9466Rvhww;˲99y7}kgdd]9GEum2%0XεXz^ijR1~ᡁk{0~ɜ{^t~__WfXUp8wjzPjݎ[$jue ,'tc+.GM<~brR?;;(IBuqEgZZ&2+{iVR%TDcN,?%(@( QO^VZCD- +V]"4_>;@Y:]wddTA7d-;y糳ƲGz0?>g4ΘLI ~㦛7X<9?锔[%%##_6׻:۾sߣ9K?죶&HDǎ>`|皛.qO5uCKs fozxMFfec_~v7߸zt [J g7l)a,#2L}<=e{W&驩9##8Ϻ¢UD4e0Z΃_4!<ߌt4#`BB#YQZ~b'T;eIFFN||")rtWg[Bd2"H$\o%b9[n||uz{R%BR{q6pwr]vBhD[JeGmB*d֪Tіڌ KDק#4w`Q˰X;Np嫈4F KLWrd3B_B&33SSiD433 1D411nY2>>JDqq A"ܜe [\q. inamx_ˢw@\%eYSInI[k%8Pe""iiYS֖F"bYl%9 eҳ41:]wcCd2uwB0驩i"hz6VkHv~vϒQ N2";jyDYY~^~!##8c錎֬Y;:a^]w~AQf7PT|d2a2&&nR٭G0gJ6>>ß<Z4j1mmM*zx-؂ŧ>P_;/<Iu?yΔoݝ ho!G71)Gđz2-%6oy#a.WVѨciY|gʎzu:mrrRL&S+<\~;>6ZacFE'4\d))S!J^<؂Ni~|![٩l]ejQqu?xQ K]69 5UA/>:By%s4Xy5o+Qs4^FI ^CaJX=' Q/bOhRb(՝,B|.gG.1:O9B !D 9 |CiSDy8&[#G>ϙ,^g,#8O2!Bus{w9 Nx\tq"Au'&/$;xI0#̻b5'[ܱ|~B tx?(h{E}Osna B pd J*QO#`xp:q/kp# (u=qvl|F"s%V,I{_BTcf( r`q ^%= T1DPrPX(OD}S9DS!G'*PxQ ,l" d N;/%;\Ǘ"@?"Lwx03_:?#Al[2`XA8"G@x<r=Qߕ E 411133c6H$r\RIR/v0UZvx*4yb4g(ގ"(gѥ)d2 j|rfL||9گ|LPvbj.fh*B_bbb"l6OLLx_p &fgx(y19 nYAD^]lvUv QY$e(Nj v x LS1bt}ApLvwn`k(K> r%֭[ÉHV;vl322+(ʒ=r]wED?L&MDvCDoi&"}ԩ?_t$r/0$D'∧J fa]R@맧(""2lΝ+,,$".w-٣T*(55:::X%G޽KP"JJJ➜ݻwoZZƍUDTQQEItCDזlΗdfi&< "' Srrzz:22f\ZYYID:zDr,dD4;;;77DD+VXx阘ԌloocQ][eq9+)Lg].yZEC*D}c1\z}\\m_u^_RRRPPPZZʲ/f^W[ Qmm[/Ч'"_\FZ*3V({~n66os=* Fsϭ[ܹsܝT1ϕ֛ щzm+,}ѭ"H(|u^x#lQ@03i6o>()?oyYL `rOT`֨9*A)XZ X"b8x8r:&Nn˥}qqD LAhSa |d8ob/x D= T!{o `p7` ^%~ 3;7r"wR }O E0R5hIꄛQo@d$#d dLrDFD-0CHB%&J.G9:J !I ?\U,Jx15Y&3k=#G#lz(^0x$hMQ7,=kY0R.]8v\bfmdRu'J@Pf3+-qhPd0(p\W'vO|C IENDB`kylin-video-3.1.3/data/kylin-video/en_US/index.md0000644000175000017500000000606514212620632020202 0ustar fengfeng# Video Player ## Summary Video Player is an audio and video player with beautiful interface and good interactivity. It is developed based on Qt5 and uses MPV as the playback engine. Video Player supports almost all formats of audio and video, and has powerful decoding ability. There are also Mini modes to meet different playback needs.
## Home Page
The home page function is simple, as shown in the figure below.
![Picture 1 Home Page-big](image/1.png)
The home page has two functions: open file and open folder. In the home page, you can also click the list button on the right to pop up the play list.
## Play Page
The play page is simple, and only the expand button of the play list is reserved.
![Picture 2 Play Page-big](image/2.png)
Main functions of play page: click pause play, double-click full screen and cancel full screen, right-click exhale right-click menu, move mouse to exhale title bar and control bar.
## Control Bar
The control bar is suspended in the playback interface, and translucent style reduces the occlusion of the control bar to the video.
![Picture 3 Control Bar-big](image/3.png)
Main functions of control bar: Previous Next switch, pause play control, progress control, volume setting, double speed play, screenshot and full screen.
## Play List
Playlist supports list mode (left) and preview mode (right).
![Picture 4 Play List-big](image/4.png)
Main functions of play list: double click play, single delete, delete invalid files, clear list, play order setting, display mode switching.
## Setup
The setting interface mainly includes system setting, playback setting, screenshot setting, subtitle setting, audio setting, decoder setting and shortcut key setting.
### Sytem
System settings support settings: minimize pause, sleep / sleep pause, run multiple instances.
![Picture 5 Sytem-big](image/5.png)
### Play
Play settings support settings: full screen automatically when playing, clear the play list when exiting, and continue to play from the last stop position.
![Picture 6 Play-big](image/6.png)
### ScreenShot
Screenshot settings support settings: screenshot folder, screenshot format.
![Picture 7 ScreenShot-big](image/7.png)
### Subtitle
Subtitle settings support settings: load subtitles with the same name, load all subtitles under the folder, default folder of subtitles, and font of subtitles.
![Picture 8 Subtitle-big](image/8.png)
### Audio
Audio settings support settings: output driver selection.
![Picture 9 Audio-big](image/9.png)
### Codec
Codec settings support settings: video decoder selection.
![Picture 10 Codec-big](image/10.png)
### ShortCut Key
Shortcut key settings support settings: shortcut key customization.
![Picture 11 ShortCut Key-big](image/11.png)
## Mini Mode
You can switch Mini mode for a better experience.
![Picture 12 Mini Mode](image/12.png)
kylin-video-3.1.3/data/kylin-video/zh_CN/0000755000175000017500000000000014212620632016532 5ustar fengfengkylin-video-3.1.3/data/kylin-video/zh_CN/image/0000755000175000017500000000000014212620632017614 5ustar fengfengkylin-video-3.1.3/data/kylin-video/zh_CN/image/8.png0000644000175000017500000016132314212620632020477 0ustar fengfengPNG  IHDRlO pHYs+ IDATxwX߽~rtD"*bAhT5Fh1cF%va, VPJQ. pw,53;m7f3# :*:vocc`СuZU*vwkq H%YiI`4 #8fFFD{z8}s:E3m;@ L3ΙkSBN!;Hyy9zbYYY5Wҧ`0Ji~nS!&= %طGs\`ddzüsgOi]-ӊx:77S3yG@ 8T*ȑ#111~~~j 7iҤf4ۘb:m 4*PWEНTG p*(0eES@   oٲ7 KK孚U53=o`|BB;dJ=-Wh L4iΝ E%tܸqNN9Zh\M!p (@P\~%Art^V,p]MbBPm4h^ð~VZ͢^LA^;z_N=!'s|] 6*&fr"E 6äIv5j(///PQP.ۼ6Ot5ZJD_2Wf9τȤcļ%†YmC  æM١CǧOwت̗ʤ@37f"Hh 58a„C=~g^Ø Nv9aoCcYRxw# 5EL'\Dk3YZ ݼ qT ] K??e&Fckgokg'u md"[9;vX ƌC6DT-TQ@).'̶`1QeBE8b =]8}_?{Z'Nl8P(LkX({Z~JvHP[S@ 틂R85jdKF@KX“bBmۄ>jʅx%g4}"qK55\~y_.D2f̄'1 ((Sν Mh>}4')'LBPA@ o{=zrǏ߻wȑ#5BENAI##׫T ! T?%/nݐ|662vs?M#*uΗ5OR1iRcuL& Oxk())ٻwr'LgϞ1c45LDUMl2ݕ~YJy&3@ih@ 44,+N±#z`T_^/b-[?=E|/ 6"kfO8U˝6mҜ=MD)r. S ʔ}ɩR~I (FxK1V̼SSS,^+뮧O?[TH>NsŭQW/B[I)@&:7F:884&;Q >fZ)q d -W%' J D@%*!bI3H[aE?VV<~CWzP(iWț0܆Uh4]SE?WNKQ&^IȫxB .x|@wJͫxhի۵xRU݃rytMLtcղ&6liRe(BLbZP2*`kSB#*biJIǎe_ثwCsoXzZk|:o P\>@"|F*Ø|01`uә۟/G(`GdCF`):|c).d2:cMuq;}*oaشiLLM/5w@ h%*V-XH%@$!& ( 'ܙBu̧ ikIbtR|k?6ŕ2mꬍbc1s;wƌ߹sa`b77`K7B@k,Uǔ0~5 2AC+@ Mɖ,Ojq+kJMX Ui)LS?$g2_$UmND[>hm(oz/Twg=@ mm!x{@ mb"E D[DSA @ RP$xE!E D{ͬ"#E %zR "@55Q 4imEz"y}"E(c6_tHb$ojEǓ!BikV_E'f#B+ ޹U:h@ ֝m O2IJ+hKh[#C@AZ+؂>{8WV>UT~iݻwBg7o^ -7dCiIc@#Zգ1AuU5UOˊe2Y^#5MԔywºWT]zA =XkGb.YDB! ՜Y[[S>c@ /@ DfϞU B@$ B@,ċN ZW{ `uViV֭}lca *14f,[+=BpǀP56h vzE<^B#@5%sOn1,d8<^ A|};r8fsFti_s'p6ˈ(+-Tp,MLfa0Bv"-lƍ~ΣG >멬f}:kd¡NP,,@. $Fl#KKkJMyCx{A˭=(*zP-8>A&E3@Y&7/E%qfF:%B.Siܻo{Z^hJ1s/C)62qpVsddϯXT[[ uuGׯP(3?]:mB0555444nmmmrru.]TܹlH;uuuo߶ |O{  @ ZQ= z+ƥ3A0GI[ֶ^@XpB|tq\'jW/<-/ tv=AO<39H,ݾb]/$^<{sXYn-VF3w1lG]3W5‡3u7n.Zu+++.\8|p5-**Zpi ٳg>\MDw}dnܸqD d6YBhc[[s-LFO<}BuEPnhTkrͦhR뎎.=8.׋:%]z> .)[ ԕ}‰y:E5@Afdl 0 6^=ӧOv VV6&4v;vٳgȑ>>> /]t~u/#G9rD=zTiiiuyy9?̡P(}%qBzʕ7vQlåK0WDHrupu'=z;p(7Q.Nlñjjj{&7/s;MWb}ݹ֞cn9otM]UmP%.\R;9v@สVU=''W[ۗg h-ZoذA]++YT矓 ܹ2? ?~j[FFFĨ[Zu?pST殮o߾t:pr[n裏fϞg'''H$ɟ~իt=2@ޯ^lDA T&}fͫ&&f#FN}Q TS]u#&p^6C왣|~GbdZZZrMLMLLE{vo|1S`ؿMx= s} gN9s%qę_aF_ *J٣Lfffff[| yPQQA{ァ' 6|_~E IP5k~GKDLڵkWXW_mٲXbh4 >?;=-tqpt}V H$bT*Q>~l?T};;V@`'A|~ʾ3̌ԫW07+'O򁧗o>yyw5*9,"=-IG9h=TR?~nMěQP%Է ҄A\RDKP ^x\.?zʕ+f@ 4GDS z|^=Z.(>$ e622bI#G7i򧤻lQǫ{ Y@(H$b&8P:Eh%@JҢ&& 7 b΍t:=$Dax3Jw###[e С[ppkmu„ j9̙:'T7|SPP:l0D КzZ :whiimjQn)++޻g}. It}ƕ ;{GLz8~9SWWsrruvv#[H<ԟ6Q:D^峃"f߮,ԕ#CT %Y,F_?gM&z055uqq_FiDaتULHib^t)!!aAA/y5گСC322V\iee<@=bTS쥤\͹٫ww<2f2~fl6D3xijjjttt W^>`[nMHH4iF@ qh!}%t~KJ$^ F:KJ BAݩ8ꐙ~N7 Fd[L&э٩sw8u< ÿcpxx$)="o$_~0(9)q ||n޸r=OZUUA󁞒ZQmK.ˏ;_5eY AgϞUbdefbbbbb痒l2 Tٹs';V5pddd׮]o޼yQF5@˨St X}=+X,&EtѢEs~7׮] _xVutt\nɓǏlٲ:tQlmmIӧϛ7oԩ:th8i$]!s9sl6{ƌ e7o\|y׮]ߪDkaJק-InXkw&gϞ]nyxYJJ"g0o޼={7[nʙ777Cz$P)r811wޚq322Ƞ .<%44tƌ[lY`ƍq9xgQ3Կv}{i9-?.** 8qUz믿Frʢ͞=[y7"H >ȝO>-))Q(۷oW+_r_:5/SN5a;s̛7o~VBw#I""UNۨ|򉋋KhhMU?EEE#G0aBff_K4HNNpuur ]xbb"jvdzzŋcbbK]XL%KƎ{ҥ꧟~2d)@7wb"%1 8 nH1r0B!P(t:]5LR=,--,,,rss?/R&zs:99-[l̙ݻwxѠA2M_~~[GGٳg_zuܸq˗/o4 @+m6h;O\8NP|>Ud>TΩFEEiݻwomA>>߸q! 2DSǎ6v[Z > -[5k̬E6HZC,I{{D ]t[bK([i Fxg0z E 4*gt_ LOxKh%[\Z@}}C!Uiav:bKH<]BkQZL.@c,o6Qr";I/j'.  uZ[ϞU^ SYQ~+=ٳf9-)@SnĢǏJO326 jj녂zQ^( :>W[#˻C̰qj-Ϻ|J윜̴feekXthG["Pphhu7(?T!@ o MQmv![Qӧ,beRIUUo.4:ÜcaHHA7/gehQcp|Y U U:chX2VzrUUZElѸ1 d2鮝\уB»F@UUű xٶцQfLeX/ӫCj5K+_ߎ99N{tx 'Nek/^5S*V<-gؖ:P7~;7|7mIy:pl-P(KK+e`0,,^4bdlaiMưD|"DhǏdeyz*wvwV*(柭V̽u9z{ÌML g2YiIj]xsc&'^RD%1mdHhyx.2L<D7U4RPhꚨVU:er׎ a'(x@y7+3>g?e͎dTUUt֋Ngses̽ <^KgԺW(p-Ǎnjp$_[W 0QD[*?PMfeʺW)(@".e喔7p.;N8vtyqxj⮝F3w1">- jllc`I{vo@-=sKg 82JPX,bd_j6a eg9-wH>]"M:E/,Kx$B[;{E /]YL&y\-/+ e`mmGKĢKꡝrݽ/\8 ^簈6ޡCY]X,# araTT]p*0SǀPl8oTA޽T*Z@$) sssNٴiSrr'^}۵kիWH$k׮5kfdd}9x#Gbcc=<)))999(KNNѣ_~e5jCxuD5qO Zyӳuuuݺu3dxxxR/;wÇ+_-\p„ CUf:8oBC q^e%ry~~^NNšB\5221j7X[vޛ dgxؾsg[Y)We2tqtU"߹ibb+~CBR"Ғll}};Gs_5~Hh V7-$MZxc]~]~ɓ'OeX,UutttttSZEF)[[[I1&eaժ3jرcҤI߻w8-_<**_555U+';V2ܹs-,, (>>>33S$ߒ\.q\ ,XGYvҥ\.̤RZ 8[o}=}0211 |UƝw|Yymjj6rDULaMάR4O/_ps`عl#:NSMP{yc@!vH_RJKxtry I”]w̙?ԩSN> eee 'iα7oO:wȕ+WfϞq=z8'O}ر&*lX\y}`ks K:OmC\26ܻEYiZp]5JJH84&&f }⅓2,U*6r f6WJKT+D;AUKju%9tX9J`Tu;"9qDRR^H+g̘3b=LOOwwǏ=zt8Z SS%K׽{޼y_|1iҤ?Nϛ7O Z;;;;;;oYǛ7of#FRzܸqC*裏l;C,Ѧ+v T{څ sR+ J!TFyI/dvvNv)@~~^ƝT##cDlbbF1Fc2zј&7!XW.KRuRMDۙ 6+V4ZFuOiJ^t/ V^.7C)'NP8pZm۶s{nZZ|.\+WY&662  ̙7B׮]w={3gՎ; lr5޽{VVVׯرpWzjf\=4Ǝ6z VIyy:ϯsptQF0rOb3 5ѣGJJ7oެTJlǏ}bbb="]UGaXppm6tPooo=8;;X'w4Juu3glRYY ]v$PQ%ׯ߶mۯ+*ӦM?)S 3 iq܆i(*,qK ӹjTs<**z˗@v:vt_iiOtJŊїñHxg7`2Yvvn\Νc=`0;wiia};v NNANiiQď?˷o۠̍Wnܸ火*>>1*4 LOɓ's%aaaǼym0U AeT*xiii999Ksݺu}Sx\n1euVNwqz9:jn5߿n\~b罁#711uu,)y"u蠾P1 ٳJRAI ׷xTXXZ?xL&{ `2,`1%D-XXwY ͭn> QQQGbb"CnT:c022"8'$$? /&O`%K_;v… .~~~#F^ڻwFp$ɬY***u 2Dhռ[޻wOWW֚m6++82WXXܹsT֭[/\m6UVV߆Μ9\܋@d6c.I}?53AA >L&K5ͭ_rQ CfP~5ϟguuu9A!!!d\x>_SScii?vXLvia0Y]),kϞ=...6kNr&tq\MppӦM;~ʕ+CBBEqqqZZ2I.jhݺufffRtݺuJBP˗ٳG4 믿?sR I#ȈbyzzΛ7oٲero1pNxh64hPZ{ȯky7oڵk%o޼@+XhFFFvvvcccSRRȐ:/++ϔI?[U{HˮP(x<^mm-!w׏y9+++ՕKHKKLMM[i.?.^_j @ZƆ5#˯\hrM,At 55uȑ}5jT^Zvfh4.Ƚ`m^Iš_St!''') IDAT)F9 M&YYYƑX s{駟aÆ?FEEE)˗ݟP(B@ 駟w)O{\.hK.U]ə;w.B믿<=_E2lذ;w/[lѢEz/̚5kٯZZΙ3'""СC_Ֆ-[[K.ݿjj*iܓ[w>ݻoذ!77W9@ W6dC~C fh)- ХK՝ϟ9{q0A&&&dΨQB|fffwZZO8Q[[K 8b ׮]۩S'aÇ.]zFM6wAmJ*ڻw&#(׃AAj ": E",Zv̙ 877?T\p!|駞 ޽{7o$%%e͚5YYYq(Ջ-JNNvppX|.%111Y~w}w+W_jLW_}% ֵISz UF^"ғ\(E 4[D`}hrzMEq|Ŋ#63uTe1(Q/^oo̙FFF+V5k4D.ZXX|ѢE.Yf͡CtL&:tP($;P ѵGٳgK. NjQ(zyy9ndrWWAk0ʹYh~ G󢄾^}5U+kk's.]{ m HTc衰PcA.d2yt+=Y$H 4qm[ކFvjZ(v\Pp.K ^FF{fFZ~~l#]>6??#sw7DEǏZ&;V}}ZNgklMMa |1=)]YhkZ)Btjǫ~w̱wP)@ญ3惏LLΉxDS;>bRD녂g*14fNj#'nTUUU ь'62?~d];7q=<^m!]#ɡ;zCE [5Q^u3L&9~ljΓGO Nzo 8{x=9w0n*┏]R&r1q1.YZٌ0ǎ>b9l#ٳ'$(d20L2w,RhôQh,ѼK];6w@ Wٙ;dȘdT*<;1XUDq`:r-|09n?e(ET"YFxmm ȤɥdX,"u|!Ш0"D Akh^nҔ%skk澰@AP@pp"SߎUVH8Hwoٷ[w-gRp-Onj!|>!GoݼV|P5y++!@g E vCkSrjN'jRRY-'/7왣R4K/E³G1qTKg 82F X,6?/5l_S0ʧ@z@ m9sAaffݺQY'ԩswк\t&=-х`%wң왣 eMEoP&Bŋ'ssupq~qGvMWF;{:~Ikg88:rHjݻw|>JeZ D"BannޡCÛMOOxAAA֍Kaa!P(󋌌Tf2B婙m4 RSSwl`;$--4B".]zjmmmrrM!ZDuR;`0n'w0yDsg;8q8G:㸢w¹+畗[ZL`)GSXtQh\w O ѫwAf:>l# 0 6b O]p*0S@@ևi}лw ݻ7Z2%%%''pݴiSrrMvd߾}vzbdڵfRь?O>Xxj~aa%KEnܹqqq,vMB… g͚* .\`QBeH$LcX,L&κӑFt1u ן:uvYj{{HToaiMӋ A*1߂iy]~C;wUA8Q^#8A=c\mTS0Jk׈֭!%Ó l%''U/R35AaZ^SLظqƍm۶QTz̘1IIISLٻwzC8/Y֭ j [Cq 114,,yMY[[Ϙ1cݺu.\}kUTT,^X cŊ“ "{5\.555[nLLL444on``@RTN(.,b.;4nhHXeE'Rzܢ?戏Tuu-99yλuRཛL&ӨYϞ}LL,LL,hh{Bx0*:hkA~nIIucj$ 9N[R=~IKf+.#77W"##߿iiip]~`Q׮]rrr$55_XZZ ZPP --ݵ>>۷9 65=߿?s挹iOIIy˗`ق":rH ø8A%ٻw$E"vQ:>nFQaK t.WTR6ht:hiɼt( ٕ1)/T u܄ 쌄ױ|NyyO ä%K\tFyWR\ԧO?f̬C~jGKTt~%ܿ,$ٺWpBkk *\j#vu #""Z5#Tw6={***6񭬬{\2%%͛ Ull,h,6ժ"?Υ`@$DR XRQ?jj] M,++j f70 ].R_c[X4O?J(ȇ xi~ j˷lg.,, BWWWMHH +ƞf{ďm%Ɲ:>C5SPhbb :Ιׯ_kkkرgϞ-_|E=qx` drrÇUUU=ڣT8.1%Z]]YX<UT Tm]Mԋg yIq}m0"' n4]?gV}]CKL傂\6d<~bՓuBr5ֽN7c~v`i-6jPWo2?yf6M&R8vd GKK /z)FYӧ={411Yxϟ?/4^V}r_&eeaU\ttsutz<55%\. %--// ! >|hffFuYt)O@ _DMLL*++CBB~''sh} SkjjwMM]Cp NML-M̅a*~p8i)tS WPX 6',M5H}:99VYze^^^666+VRO .,,{pBrZdp/#ӎ"J!' Ul>ɀܷD9]I3|0fktyMIPRRzE~Z =Ff18` A7o޴&WWWWTTM4YXX(*64@6狨>Mݹ.\piSvvvBkC̙gkkk0 2ëWNXs,:::bR+4EJJ,K.}}}OKKK[ZZrk׮yyyiii-]HdeeVZsN.~zI|ďFs2LPyJJJxx8FQUUmq7aÆ,:{'&&>|8**Ld2߼yUXXX\\,h~qP';ǫ211!W 6>x@UUU(9mLL̆ wIG-[lڴiƍ{μzjs~sJ(۷ogF|I>}䄷k-\.ɓ'ǏOKKhEEEBX@ttǠAƍ7`&|@ c:bmCv@ΞU9={߿ŋMLLjjjƌC6x`~"o'xښА7zP($.K˷o7" %%eŊ Ȩ nj+??;w[|z ),,1b%ӽ{|D/LPPyX|:u<}WFGG}mmi;w#4"*JA|u`ر+1>|vGiEVVk " : 7&8ʰn$-<L[ڎYڗ~hnwa!p8>T*NVH|KD[SlVZt'p1\2GC?~U|+xe :w;h@n@fb 0DnS^6Dq^!k5Ƴr(w RPK}}}:JDCCPq\JJt}-є|"XL Mi*e 9teXšeXNvwp<Ō٨taI4$ ,U0`2yj<>"Я RPN:p9%! bᣈǗ=g)–b$#EMw@j1pR9:7̔0E&%ѐRpzBC >Ԑ ѣA*==]WW6 k׮v<%:nJ 8`{'JUn2^D#hkGZ20[`=LJq+0SR%9>p4 h偳Ӕd/Ώ۪c(nEEƍ7;vʊ[K.W\۷B~ .]TϞ={ر#GXZZ6WMYYֶ c wם 5kp'N4ȑ#|ϯ266޽_6o?@^^ޟ9qSDӪ*C.܌a83=(T ! e:pѬV]BMX!A"'9V TT xc4 2Ħ9R{IP fv'}MM˗/N>mii)̙3O8,W֬Y#T|y[@^^>**ϑ@҆ׯߴiѣðٳg/[,,,ՕbD>Un߾}ܹ@UUUS2N`Y܏(6zg]υU ӍB헼0CIGEx!'F!<35~ ~KP1'pI>t 0cu O:cyׯ#""=zr eA?a"###̏9Iӳ/7n{ x񢕕 +WܹsȑZYY%$$]={\xq˖-mVڹsgϞ=sss322TUU{&!<?ׯQð3fXm۶lmmmll.]Ӫ>|SN">P1Xؗ2юZ&|\y".._ [ж6_!>'F8SJQ])1Wߊ'LгgOGG1cٓ|rwҥyڵDIj^z{ԨQOar:w܄ ֮]K6G}E~IKK³gt$''oڴãhJJJNN@0lΜ9*** lڴ f̘fddxbœ&Mz왍J 5t.KDMx+kh8Xa'>/q?+Ń0KJA9it֫ %gx뷝8t={ٳ󓨫)++ !ӓ?1|pҔlhID4))ɓpĉA1̨]vQ(~ tyQ˗/w֭_~p3gxyy=zÆ m5͛7G/LXXV3#~@h4㫫 Ill+WVZeeeuڵVuH/B5jTUU}F{$3J7Q&Tlm{ [LiGW [*NAMa`SXQƮ'ՍI46οSñÊLݻx޽#G4h5UP(((={v[ #>>jjj ;;뺺7n\xKf̘qA333AɧP(;v _?#""vܹrJAܶm[pp٦MjYfff^Zh}}͛7===Ňt!@EE nrrr`ȑ|qqqw_ٙϝ;wW g3jv&BqO7xpF覊Py8\x+#tS“ q:6ˉJµh^Q5xK3yҖ, hgZStUdNt1bݻG!_vMUUUЀw+in߾]YY#==]6o|ƍ "ljjj|ΝyC <(++N<xݻ%KXZZ.[K 7nܘ8qЫN'Ou)8TUUuҥpppp6m"lgg_U^^C 8q]/_sq}8q7'88Ҳ[nB999n݊c?~g DP(u֭]vǎ300߽{A߾}ccc 1s̙3gtr1]]] %5jm܉X:bGWp0qq_!sPPޱZ\b]K2yg&a34eM93-Qp8 'y+#G\RqǛZ痒o6lXS=u@EE%**jϞ=o޼122ڽ{+s=<{ ZK|qqqUUUM_ u R/^;f8w\HHѣGȶW\a2RRR'Nb2EEE[ng2<oǎÇ0aBXXܹsXGAn۶N:TII)888""@+GYdɝ;w-[6rm۶ܹDiaÆUWWX-&fis:vk8)ǐ2 m x; ޵Fa9$ϝ@1E|tjX4@5Tqwx&vn|8/p[Btav??3gδo1>>ZZZZV|ɓ׬YsNqS( l2A lmm/^Ҫ[k:fSSSccc򘘘899܍7?>i$8{lnn Hٳ۽eeegΜ9s-[sڵݻ?|0 _%=<<&Nx3gDFF`aff֭[UTTH uƌHAڑ#GJ^zԩk׮011; :w%D DM6nq7!ɒ^:cYܜZ"g*?ji^*+M-))IJJz1ܾ}[QQ]AAa͵}7000""&@.A2dȑ#WXX`ŋh4oo~m͚5_㽼ɵ:::gllHU&ׯߗ1+++޽vڦQF 7n(**7nHII{ذay9^ziiiK' eܸqds&O?]p@___p w6lr#.\/SVV2@ ~0̦bPUU/"TSS/7hQRbPX\Q>V,4T|&' $?OMދ~mr1<L%2 zal4DۂˠYҪ= ޼y3aOOe˖ ==[Gח, Zeeexuu7oYjggK v KKK++Kd,EWHDžL=fwX[[ ߿~DYYYSSW^"*(g~RYYYII6{ ())ќ8U@ċ/]6i$7z/y{ю;;fccvLĉoM "@N@\ mX=BD+aRu~ݨP8Iyw9뮔T0G^S>~-#)"wᣥrŷ?sg)-pQuhѢȸkjj yi?%%%EEEMݤPňѣO:Ԧ;w.\pYE۷ozǏj!sPZZ !KKKMLL7/))UV ډӧ222Br iDsacccr////88LZȿN/NDe99f;gוšx񎈕lQ'K+[ oZƜk!Onx uJe<%̈́Rρ5#і: ƒ%K5[B%'' 6IIO>| X$}}}}} .x{{ˋRFGG7}3`!iJ6M9x<ލ7Ǝ+Ojjj>|@#L@@ aϟWVV>zW@YbbZQрL-v Ujm *w%|%dpԮWo2.EBCCbJU۶E0՟fkZZc?%555EEż<_Kbbb~~!C)ͣGКDSXXh"ٳ;whk׆3ֶi^s쐐)) رdeeJq氣vKLD`rҮk)V-,,o UKKKw޸q6o?BAkLϜ9 x~~~cƌi틳ژ1c|ѣGKpB,_Ξ=4z,`-rNt/eۃwvܹ111۶mKJJ"͛30bĈ/_޸q#++A<{lРASN%+ݺukܹ"SYZZ\...L&^*܋@-/^:th׮]Y,֖-[?NF͜9SFFFdbcǎ/^xԨQvjZss/mK W-YQ$WTGo8#ז8j8i| RJ.r$''_ MѣGCCC.\hhh6lӧ޽{`h42 8rȔ3g(**C(WLLLy&;;[<|!~L"##Cnaaaꟗ]KKۛh̙ӦM<҇Jnڴ9,,z*GGG׋I7eʔ^zt{{q!E7UUU'NÇGGGoذo߾YbH(bL#2(Q(*KKK:ةĥ8q+ :ž5NQcaގ7n_l6.\;}ʦA4.]"׉̘1שzuBBׯESL|Wٳg Wظq#n>o޸qOBBXXX\zU|QM6wx~SN} +RU f[v2e ByQrrŋE&>w\}}˗ə2 FuĈ?.{ #''wE1KHTj[HщDhGDBڮ"Z^^+:nhh(x܂ȼ2 455UWW3Z1Mp{6)Xx<ֶ!B:@PWP Apoo äjcD$EQ"~LZTP 8N' Jm95˷!NH(A ~L0 kmzQZrnp@ DIMҩ|B@|t*uf\"W E 3iC}☾qM;B DbBYrC @ Ϡ-&&TUem+aEq/_ښ4TS5Ūs::IxVU>O 9u\Hi IDATO#%@  Dk٫(r *h2i' ̢G Ǻ hS^^t["Enc&vklLDiiPDddeL \?݇ U~/ZZZҒ;[f.1^hӎh9"O<|/T(/`faWҢ۫>J~pڭ1yE#| RUU2m}nߺ2c+Y%KG~&%Q )EEE 860 Ng bւt@ QD= ?ĽLKM>UZL]95'wJK; 䪠·ٙ Xd%% =/INhCKFZV^YY68NUe9TWUUO~P-IoW-ݻbkh4)))򪪪2%%%;y)0`%%%MN֭[kǙbY,Fd`##Ctz~ۘg]33ߔi`hhA~(+es.7[EEedvʔisՕ>T[՝>y~J0˄/%tcܹs'N6mںuZĉv&:22r͚56lxUTTv(Gl[@ 6l۶mǎ300hۑ#Ѥ8r*D)_WWJ54rsU޽z.T *fٳOQQF]ܷg ?',^]R\ҪKg ,V؏Kz݌kkkBCS$:|Dv50JL|@V'Iwfy3S]]}رΪmݺgϞ"+,]ThGB-EE_u֭ׯ__d YfϞ=`0$n wqxM8QGGgɒ%s9>@L{'jk ß TV>?eZ죠4e4ٳj00 c޾zv'FUO~݌CMKMu0E/yyR2ed0ld+4E!={i-UU՛::1l6W|ׯ_~Z ܺu Ǝ&bذaWJJ #ݼ>_544Z9k6_;;;:tZZZm;l^"hfϵ$dddm8JRQ/2 +k~C8OTT֬ EE|Oaz駯/Mo@j'DKK?^thhh 6P(Tj{|ѵzu u0}H9B~pa:nkk[RRRPPvvv'N =z(,\ ڵk(x'OAڵkȐ!w ǡ"Ƅ|9{ ?Qh%\&򉈊qun65o֕{,ҙ<:hɓ'WTTcǎ;v×^*.\UUW^=x,|Ps???M5^$BE ?8EÀh\?%9y\ݮ@Pഴd%e<& ݸ)TcLtiSEo4E62woFAlm_FQC4%77)%%5~xg]]]OB)YSSxtt4xzz ɒ%K.]p7B۔w۶mׯ:uj)[_EYEa`sg r J&ihj+)UMѨR/-))i-'@sNGR>bIUSSKHH ?_^|}UU[H;UTTl"xv޼y:$99qHIIݻw+IR?1@|Εa[}R$`\d7GRRV&`Vfڇֽ VZAA3r|GF<,IL+).ӷt3U-E[[[p]rtҴ{9%%%%gϞ 6m۶4WKPRR@|.mh:74X0.'4)˪`ʊ2AT lv!ܢWJk]޽ BC)+8:5Vɣa"Om۷o߾M˫vr6l ++‘e.2@͛4m5k˗*Ň gzzyx<?_nnnZBh^^^5B$薖_|F2f,(ill~v(-#RRRRuu=qF)((IIv 6m|99JBr9/R4qӚ3C` IttΝ;߿}**š5kh4ZSʺrʴiӴdN>"#`233ϞG2dH.]E$.....D9s̙3³BB:uҔ?}X޽,Jk3njj4z$ aߋƌ<JNWee rr@3M=wh¤iCYBp-[ܹsgz a:dee$t 2hʔ)o޼! njsɃ4 h9a„/޹sgŊ[ N F61d%FFFeeev@ %"*diicA<} :Qw&^#?]ԋ=wFMI\6f[\\8pks)ǶD\;w@|/^ 7o^׮]"dɒݻwxxx'ի#GҚ:u);ⵈ`dS^^^ddʕ+IkO޽>|XPPD@|aצnDrS!pP)yl˘Oյ `0Xpڅ}COAῤ _vssk O jѣaX7#U\?i&@ȼY` +k[ccs+[L22'LC*(h F㖖NLzk|֭(6U}hJ+-V,B>]|}{**JrvN"UtM5555E$:anK8CÇϜ9cff֯_^>nرwݻw :^z|xpppPP_DO:D@ȗΉ~A6@̈#TUUCBB "qQPhL>UUUo߾%M6(9>`mmK.M4K.l6;//ť~=B-%|BXRA%mHhhhDDDLLLFFYhooߧO33nݺCW\vڭ[ݻ[ 6[`UhrwqBTWWYk:W\1773gtKO?^zuذadLӀ:v⛤(h***Gsww1c6rH1+p0lfffoÊ+LLL{;K<ȁG9!no )߿izDEEEOǏ9Ezzz* D@ ~((_{F D{Y"u-ϒDhshr}bm@@\w.&ckhmH@tBeNsjY@ op"C DgsW""my(B@|ˈJ',x,]'x&+3(e542QiNQԦWr4:]( nVfCʰ1I~R~m--+Ov,~_ ֨`IJ~, TPPjAx_{ J.VmmSW[tVd W+Έ:%%%t% ; xL@Xh`eE`55 nNִܹsRDI%fK^upį2P[EEe!m 3ib+w)*j>cB:޽ySA _q h-<q))oTG(}jj"^|,qbkђ@iIхǜo HNz%%- slC;qJ6,4dU&'&[hjLlܓ.VݍǸ7nZsxuUYCjwnY(3t֜%jj*Ap@sdʩ C)))PQQ#EFU"6)(U @ ks|p8*jR)22R,,޾==UOPt)~Ғv(*XXXUWW)*)KI5n"9,S*t:cׯ]HI~mc@ ^CCJO]]]ee9XC5F6 t}Έ "_o"eBLOKm'''O8*JUU]W1yzMBHF$i ff&f k>.iUkHNV:,~]9*j :*wYMMhEEiYp6gzjhid'ZG| ##++K4t4tYvwVWa")P~hrpz+4B0i;w.q(BHkז>|lرw͛7}σzj:;;믁BsbccOɏʕ+ϧv6ȑ#ׯ_~pƍ_N=~СCqqq۷ou+))111155 sαcnj::UttǏ$Te˖XZZZYYݾ};22~9s&сf;v, @FF%??۶mO| ̞={ƍ$_1ֿ͛*=}1cڙh"*ahںAgx oYe%8;{ӟ0J xA pgnc?0}W|}}?Ly12,ɑkii\ZZzq .1{555566@QQQii$3 Ybk׮egg>gԨߐ;wUWWÇ.uuYYYt*++ (ϟ?zꕣ… ["##C 4C Y`޼y^WWgoo6f (.\$رcpWzlMMMϟ?N, qY6dɒLyxx\z500^͛7`ggcC çMF( 33i_hhss'^}(##;{WD荸:"V2wdycS^^IOKHJï>;op*QGm&N`qq.##>1*2c%hini?6hg?Ү 98[XXq(++L+y󪺺rt?$dhLda>/_677o}…SLQsȑsa߸qcFFƈ#766͛ ~\^^Bd&*:t(11񫯾 366&t%55uɒ%;2k,ɯD>}S###`̙T())͚5k߾}˗/]ZZZ֮]~zŦ,0dkk 3:---CBBJKKg G "Nw[ZZ/^6Lڵŋ{j(l`o+(D%֪ S "S.exoUh~ryYS 7YYiMjx\j#s!f'OAH }EE%~QԄ&1x ̳g47cF8u=&xUT> .cUIDsڵkϟvZq4mÆ m߽m6~˸q _?~$''G k'RTWW'''FEE@EEw}d2E?~Lf:zhqeرNJHH,,,BNOJ2gɭYfĉ?={k8^\\Lx ?\b|}}oݺo߾GM:VJⱀbtEGy< Ν;('Y[[3gΜ={ĉ˗/555BGf͚Տ(5D䵖tsyOJͭi2m-DPy] :V ӹj(((|Q2Ƅ;%>ir m$ѿ`M433ŋm۳EHLLLVUU޽sС/_$i4ʕ+ׯ_&9x=ptQ@DѣG6m蘔}v=<O?_^zzz_~$"*s/&YYY[ĉ%%%EEE:::. .>vOcf>HhìFJJsj0hjHdF8m/;qkUs7_9TpS۪{22^3;1714d11LM-?NJMJ%zzIqPOiLoG)*VZ%lddƍ<8aN>}ƍm L޴iӌ36nx1·֖[޽[b@AAAdI2jԨļ]Illlqq1?0'H$jMMM۸eIOnn D%,Ewa 2s.dI.^dI^hZA#_YYNNH$̙3s- EB3H$fII vppPVVNKK{Z@t"ھt3P&*fb`h\]U.Td/HV>C㠍[vL⅝JJ*ӱCH$ vɾOS{{gLm[ws kȎ>yUe9Qx甉Q|KKKK+)++_~͚5Bf</11#"b̌qDq"K@>|w "Rt-&M:ydppɓbD@++{p8\gϞ5k̝;Fq8۷oȑ#dLRy<ݻw;tw6l`#J紏ɓ'\@<~ٳgƍzzzk׮߈DgϞ˗//\P.oD"޽0.]޽{Ϟ=JJJ8_ty#xEɩp- !ta3kv(xdZQtFPש4BSafhhLvpvv8q/R\\LdUWTTO2e@"<<Xn3gν{~y)((nڴIWWWpww?O:VXX"#EYY511qծ222t:~ |eeeo޼fl"aYAݻw[l9{^\\N/++SRRP(WvttTVVuDj磩Q… o>g--;wx[EzڴiO> uuu}YaaOssO  uSn'-h߿0sssB" ;Szzŋ`ҥ3fo[o[NxD ) ,\ڵkׯ_^l[Qgppphh`$šk׮EFF&$$XZZnܸqڴi| _ܹCh3VZ%B N?rHlllZZZxx8ͶZ|y ٝ:u*,,,==˗_|Ŕ)Sڹ:::gΜ uViiԩS̙~wTTTHHGE0ccДoo>L,++?'&&޿/up &S7nlڴСC𰲲" Bŕ!V^oNQQqŊ222fXʊ b͏Xl;qED"Jh!B^'9vڬ,dAv5kH)*z*rknv /yaf"y<^|ܭye(@ prOCS~7RS14tMcn]73mH1>p UDuXs kHMy0}<55us STy "͕\.뻥GDGrg۶ 5NAئysNEy}[@WWg$ܻ &N6;{1$8}'Fق]J΅V144 +3V5q,':]TTT@XjjT* )Elt*(a%~L'y ՕYNNFzj`ȈȈPomPD6J[o-'OH|۶sm½ #F-ʪ&Ckkzx+(+(rɫ34 NGT~W.<~JH]KK3ڻ `}[W[ MM,`gGLRSSMl$!) !G@ :%t.^jkRSYX/OyUyPKM-ʨO19?/'?/GN^aߜCspb5Jf+8νTpU|GB1s^ o,~](/ ɥH! Y+=}TI=zTVV!ᐦO >'544$''vޙ%%%NNNHP]]`0tz'#trMɬD J36|:f$CCFZ&fSA?EkjXRr sܸL"&{W/aj #sAV>wVVvƒt F MFAFJ]mͨeJ B"rpk v Sll{7x`I$&&]vΝӦM7Ԭ[行FGG={ʕ+ѐ?ܹs666@ ^D[]|bSI5~zRA#k`WYM)>.ZUaBP)F"ZXFc<.o!+a!` H+V5((((Hqqq-,,LHHX`J"* 1YAAA)))jjj...SVVrڵOx{{[YY"OL'EesCSV`aaL8WV50B=:*O_ܳw6bNl5#G?~_qIT(Jl6;22rԨQNq?pBXXؗ_z޽;sL&/[q@DS$X{y([krR9fؓD*&Cjۏ哖r^\49)NR M^3i4Yr/.~FRkw\yye+wF6w"``&[I*Ϟ=ꫯ͛'/f͚͛7Ou-m=D6^MAÇѹDe0lB--⢍M_>ca1LMa0̒;$S0n_[SrOi:Ԃ1 p6>\.O&*00PWW˗믿\]] D4>y򄯔4> ~ꕯo=m]v_ZUUUq󘘘#Gƍ'0PTuYYYYhWWW{xx0 䓒RUU%rCCC---9@ z$.'zۘ uĩB&̒onnu]=1 }.smb=,~f-++*+s`0pr{7ؔ0*2 M#cZHIBDQ(]vp5uTuuu 444~G&s''Tgg甔tWWWnk׮m7o\|LLLLҶðas_t={EN(!/_~PQQt:… ӦM#tY@|JĈhJfg >ɉw=tvC#''vTMu%&p Jj sTE[/Y6Bx<ʺO y#tʴX,$6q4ۿFZ%%SUUyfc___yyy;wvSQQѦMRSSܚ.^"TUРJhyyy/b111))S:tȑ#&L NגPWW~zAAѣ/^,a̼y.\:}t ={6F O[ uJJ*&ClvdD諾3W@A^d<]غjmA fuu Q\|v,H n`_ sinn5ơ$+3N+)yU]]9egz⎹C(4Iq<66vΝ/_677o}…SLQsȑsa߸qcFFƈ##D\\L>=,,,))it.,,d23fh_xTTT?3""bƌ=;hill3g322N:%am[{"}Qp_pƌDPY=~U4䶯KYa>dg88U"k76+u5'VUU8/nI؂JpryƆG[ҸR`3r%*ĝ;w֮];k׊[Gh6lhFm۶[ƍ7dȐD]]]LL5kï\ҾFEEQ>}yԩiӦuTp?y$XoLRO>}]OOO g&t400PNNn֬YHAvУpܛ7B^*nojֺj9yܾhUUyՕׯ2Ғ`Ļ ΠRin?ފR.p-K<++M^^f,:}s(i0I333_xѶ=;;ZZZn޼v 4VAv9tPbh4ʕ+ׯ_6k֬v'<z^^^vvbS+k׮ݼysĉꨥ|ӧ%Qꫯ:t<BJ6wneE͈в7CL-&z_DTRV=gapЙ;ox>Ɠ< aݍq$ʛ7BϜ<,Kkjbh2"SYYi1qNn'S 'zNq(՟6O.0?/I~nKK1c'y^l[-,5f.UVF,5ձKHH8v옸.]tIDEx{Yz&c]mmѣGutt&N~~~AAA{=}E,kѢE&N<9"""**C"]vihh_^WQ"PSѿi#1bxߖ'g7؇3oQ+Ot9J_?AcNOEK[OK[OMq/.AP˩~xQS-mi?3tvc& :,9njrkWU ede'{ )3D`i`GWCCc@Majj|XyK$'fe}ƍHhL޴iӌ36nx1MML&_%,^mC fDDDlذABݭڲe OЦk/%D?".9ٗN70Qbta7c2 #kh658\Zz|fTVXo[ZZa?WTRRitFOuM%ǭhjbU0% G$Bss+9KpYYL(~񼪪\oL2iKwQ\|ޥ)Eׯ_fM@@PիW;,:ׯ cG*++;;;HIbhY,֭[~駶.eٳg?~h訯@]*ncZ k'L&: ?GOttņڻP[ 2fJ4$YP5xYJ;_R2 vas8;;O8_~)..&jTTTO2Eemmm!߲e]kvڵhѢ+VJoJo"uӳf͚zYYYSS˗n۶mڴiG899233) 077,Hxxbۗ5442DgϞIq<##p dee$VhDaLWY8M@ "lڣd2J"E ݹ7Nbyd] $,~@ 8ى'$DdI@ VmbŤSAR(@ k`s  P@锈}HGq$"*v=$"*Jړ.Hu:?'٣%t@ GD碁$r&$Ljt@ 2]^IJR|\D{*:*1t@ $"i})m10^Gt@  ݚ'ڟQɂ"@B"xuYGIt@ =P2"ҭ8t@ =S;tTv(@ $kVwQ@H3=Y(VH?`}RWuJDvX_@ +}LFi@~]|r2{TZu"Dc"%&yHGu(@'>ўOVD"DܮJRIZQ\G@U(O4/OHGzس8'B DS +d"DߥDzDG;V GpHGFD?3UqHG/{(AϨW'gE:@ }Q"*5]:V)@ Bz|m7G"\Azy-dž \_HBR]9<wWAC ˭IX,Vss3討7 UbBKԜnQ)s I~{C  ʇ1̎+PJ(I}],Dy`Htd3_{Z֛n;YQ{Dc8*vҺ&*HeJOˋ@ DΠ%N@(SS431@p8|CdlEޕDJ/֏v \Azɵ+N{j"}."nY3L&/]tP\\`%%%ѣGMLLttt ///88x޼yz*=7v$ypcr1T[b.RI`Ŗ̓Y$mU,T"7}Q5%˕3$D?Q1@R7mt7Ξ={…\.7<<V^vlHHH||ŋ z$5a TH"a`%\=q![2)#=_@ 222QQQ'Oxŋ̙3ϟ?w\ffgQT*uͣG&ڵaaa^^^FFF~~~/^0aw~9htpNV0PQCI9 IY{X|1fN&"^|->} DeСSLv… +Wt eɒ%&M/n޼߇ڳfg- "pH7΍L!?ܻp2T;x)"n%xXbZ\A$Ti Jlo%R_|NWPꮟF؛jePu()G(,`hlKIY? 0E =_A@QQ_D?~L&555ʂK,+99Y]]ׯ_*`2L&?[iPO;Rv ߴ.FHbtXD]"cD|14OWWw޽{ӧc`C/qX?X]L2!~8%GS@ t=zDc 6 LMMo޼ejj*4ܜPJLv/BRB2)Na=~m{e~(\Am;h]J/sͶ(@t7v WWHWW׬J)+rB4)X 80ӎl6qp#5sgP /"LVU@ B7yxxر㯿QF^RRRPPN|k5By&vB&A 8XEM5H @(bVH@U!OKTZ\RّugR( XGrM&l\RH:5ܦ HtK-<ܘ󃔔ީ@ +Y[ZZ̙&L9ʕ+vvvZZZD>hiiivvv۞}nMcf7]E:FH&ꦇ)a0u() }$Q@/"A ǫ ((Ç 3TWWw)###Dp6 yࡏA1?@R;y]94ΒTQOx^q w!`5Lc6 8a@€5E"!6E ĉϟ?߹s#Ѣo߾={x{{+**p8EQرcGbb"yҤI=~ʋ*xP{iu.w'8%[ċ+q?kd  520ņ [¹uyמ|LIz&fR1Y*`^WP2 >es֖"/_twwonnj[^CCZ^^`0Hօ7n={V\\LP444LMM;NΗ0a؅G¾\m:L6%pQ9.BV;/?=7nE7 )zv@"@t2Oz3%m34T%={ғNÈC }>OG'NVoltdv;@7 +H$EEŎZ+ EXmn+5v!Lf0t:K)D /1A1IDAT\TSsp!.'X=1N5/JB'W"to>6E  (@ H$.&>B:.@ %3tJD< ID PܞDE_ w {@  %*랏z;6D*@H=7'كDO^ʆ@ RODT" nKT!^OnRxiD%Ȏ$]@1;c׶wP^pIqW(Z7^hݸ]d@ }؂@ ϊ( ^!MP0lpS~bAji1|B¾Ohjj!Wbގu_@ }WI `hG~C@ }yEťt#/@ Ǐ_DJ#8v1,HJNx"tQѡ?/x8ǡx"! ] 'YE DSS˫Wqqox8?ﭰB[IENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/9.png0000644000175000017500000010462614212620632020503 0ustar fengfengPNG  IHDRlO pHYs+ IDATxwtW7gFղ {` $B Gnv7dfӗlB ! %j؀ ܻ>1FIn9EsJg/Ν;Ĝ f02<0bTˁAQOٓJmoo45sCѝG!$qpekKq\!awX|v~.Y I!Ս c 3X7B!Sn&hG75fw }ӯmBp8t2Kc{]G^\EN7Díbl|3!z]3EBc@7p%<B@^ 9uRB j+ie*PrՋwjP\LE!U\jՋkVBZ| Xk"Y7kL=XhB n]C}y+"8\ j悚+Yj#[>ZbfwB'PeeeSSeee|>ֶ(Nhڎ XJbj6Pz$s_~.dMaz.} 6'\{O~~GCda6íǬEAb=zt:ݻf͚nTYN/i{l,@@%)JUR8<  e!:[FHrfWCC8;oLH;v쐉'֛aVb"``oof͚;v$etʕyv7{=MMM TE R"^;L&HiG4Ѥq] 5NHOˇ:I>sOݳHmK?=EuV E~y{;-\t̖/4;;Ӥ/3.B k֬ٹsҥK}||@+Abq}߰L.@R|G'Jc[ 2Iqa?2Vѭ%i=25PxW*oE]T^㻥!HA!\\\V^}'(t'z4$xotJdOpD.iP6oOQIM@@ZɹwT$^dH~[Sgj6675M:|d#5o[׭[]رC>EBwwUVٳz`R]=E<}Kqq\vPߞ-k7WMմ#OS Ku!D@(4[23@,2cƋ= y+ƍ&Mf@I"PiZEu'*"j h ڷH 8ٱ)I1PB(ei|e#ɱ: ZRR}& H@褿NZ2-D3b ٳ|rhZ(IIYZ%;;[;c>vVr_@f7)[B4zce%7rnJsa(g_ nԴRjpR سgǞf$$w9!R\\'0K.Nu'Zf4@ia7n!VԆvhEX&k9_ٻg\._|uX':bdVfzbdy{2!:iʴi{wTիc,Íhi"㠸x˖-t=bUv޽dGMmVl944MFEb"&iΆrmͼsUk޺_ֿ棏_w7ZP/ !ԏ̞}aÆ/"Iv.DIi%嚻:e*+لDES1PB(V؂r&(A }h+ih7^_?D|Xi؏>k}t7:EzQB}Ʀ#Wm'* &De}.c h%(3kU*d-.t[ AS~`40KG}>y9?tFbk`LoRК^ E*UUSs/!.]Mm$%}Ylܩ(S hhs =iK{O'8GREOe.vt_6FQ,% S .m_\/63%)M4t d4+MGIp𠠐̌kW/MܾNBvvVR->`#u>_KJq]>B09D貔 o<p||~IG-H,`Ձ}Jk>{;;TWUnٲ _\/'B!]*#  dy YpHK! *I6M *jab:T]Un/-6}cǶ&eFpc?}#JJBBOCAH00vjXP.O?@I 8yvB[HT*-**t&ёcK? Sfϙo" B.rOEfk8A(hR-¥Pru3+&NaKRLZ6"xJm@! 5Q3zں/*=xb^rάf n5x]OO/Jۮ_zf<*jb|˗/ܺuc޼&MۏNKJ^hv~B͛NfjngUY4h`SEy^ݼsׯ/}JJw5nJ"I֔).\* %M,;00(bԘY$W[Z݀ _̔}!!" PnبVurPjI饗_rPz~Zjq&N|ף͌x3##M$8q*YR΃Qi!fOt@ܿ_BmSUiw<},:ko]χ=QRA[|!48us8wPu6/B=6l!А6tB6KoTBh(EMD" Op!.Xԟh!P=QzC8>KBߠ ^}BFt ɹBC RZ<>Bh,=QLPBCDt&(B~5!K Bh ؊Ea"jh%2&(B'?R"B~&av-Z{!A!zB@Pv[l[B#5BuĴYs]|b6B!gݬLPz|B퍙DgvIBil$wBhb (Jk*޽:44ݼyl>4F!4IOH4X___P_[]SUYQT*'N9AxznȉWWW]<-zd1&Lvvqޞ,mk)6r 66wQ ={B=L.v4 sjZ[Z[[Ҷ֖LJkή ,rCG4/H('bffߌ֖_BٞP[[S88$\'DLr:P*v$L6$ÇvGFN1L~B=6z's'x|>ߌ[ZYK$ 4M[ZZ[XZqۣ;wnQi~--ͅw#IVk[<ر{k43c^:q0;;IR.y ll@PtB!`C]өgjswQ'JeDD)35err2},Y.Rx (J}!J={b.Wr(ԡyvufV6W-,6ٿ29n~UIUΥT*]\\:*' Zy]]]QQ@  Y3DkkJ277g!HNd8^#n\tiOB!(eg0wR{{'ZZUSSj&ޫ`_\r61zd fL&^g&dҔ䇣nbO߶֖Kcsr2FEDM2K7+3-!5󖯛|g^vvvQ"BB>_,X`O>$&&?~|~7n:n8Ʒ~ּ;6,,:2ouB:BahH6L(䛷n^ -/YCiskO?hjGSH8{XSSyK2YXX EBH$4B][\9lsH{}.Z%??[39}T{˳Ͼj0#hu8>=wܹs3!ZUU^~{.]o[mm5k8NmEd2[A.l`ii;eʔgyJ ߼CTs:nvL$벳3n'0v]fIN!Je2L&U(c~ѻ)!G655L>㧥&^z~~!7o\=uSO=?y,Z"Y"n;?r髲 ?|yL*]M}ǝ&ǏeZZZbcc5=r766_?>¯j֭~s6l0f̘^]~}~~kt4]VV ѣG޽zxtJ QPt'D;KkWf2U*eb3$ {{|L   ѣ{b]5flODҰHmB@kk\.@QjJŴhTDV4,rY%5!B}'M C.]|gAD"Yz&ۋ/… \3S^t_>}~թFUUUi& 3!jaa]`۶mˁ={jW[[/0SSS`֭ڟbƌFGA=]}Z #G,5TTgGѣ'Rp4 7o\vtrQ)T, puÐe`?Cf4&ܷg۵+g[lRSS>r NꜬ[=Nr= ;rHyy9Njj3-(-->x` p` sSSo \&8΢ūw#zѲi/+[=ѡeH$˗/+:کS޺ukMM7o\[[inK. LSEb۷ooܸV\~$57|ʕ+3^Rkk+EQE!u]HQ\/fX_) -_{TZ=eA(q r$ `g5~B!po6r~U*\.tQ^^I밧07@Mu嵫d2)SIgj?+M5M'ڝn3g(*,,ܲeKnn.lݺ|޼y0gΜhڶm477jVSOl}:L&D%%%|>?#IrҤI#ɮ_.|| Ë8=C!d:6a~%:/+wb`g])iE435K Lw߉D"R_ǔ3}"))iΝO=foaa!#5X͙TTes\<`V 4v `XU{$SÇ>lbU)))QQQ}ҥKk}}}}}]/--CsbbbݻKĉK,)s9);wx&D@ f!f"a\/"5vܔ')uF‹ 70(T3C;A R7o޼yڣnڴi…K.D| 34Q^^4}tP''3K@RRhࢬY_~&cТBYKy/]6`i>sWL&ʪ3g[nj:77w޽*j!JQ_|!H6l`nnneekI$J`ܹ:ʂ*++3224;;G3 <C!d \3z {9wF b7oLHH`UVi&|7FRRRϞ=[]]fg͚Ť8qDllqfϞl7ow}O?-\Õ{ٷoߝ;w]1\z5<<]lf˹\.(B:Du׻=m<8_|1,, ԗ^zI3hɒ%4TSC)))6l7oބ „B={ښZVO8r׿jBgccvZ0ǏNVssiӦEDD[ɓׯgj6mMMMEyyyEB06WC{GaW;~?S城9W,GFFB`06}. ?g3eX_ubbLx׵ FEEEGGz{{kˎϟ/++;w0k;xyyŧC=~zi}_:ON@oEB&ڶo(tFD!Ģå_4=K!E<;w.kB1<BIb DUz-p!0h1.~LNz"zK{ Z[\XԨvu5ՕI uu5l{O )B=QvŢM&mkJ[[Z% 2||,\SCNv+ֶ:Jx}欅O-I0!呅2ғVc<>oTkkGp,]  p%=-I'DKJʨ֖_BٞP[[S88$\yff(;>ӢЍ 3jkc7 " 4>llbO zԉϮYsp{{' 7 6+W;x`DZc{-Z!23ck I*%p\kkۇ̭m@& !.D{6wf奧TRM$a/iw 3g-4hIuNdaażY|=۲2S5!*,@QDbRT2o$ J% ԍ!4Tm5own 31*"EyiImmm&NlᛙM8RkknjA8:dgDpS;iB,lVZ'd655677QҶ_~mQQdC&(B ] Q_j&08i䔕ݟ5{/;9yqxĝ;6<XUUV[[>XU_b& UUkKpHXZ=\ꕳ0"lf JL1׭{[$yBCVv-Ff#'@kkKY}G'{{O-ˤT._<`9\.3W\VV3!ZSS vvOɤ)74坝Ğm-.܍rs{݌;[|l6{;[12H̳/;eO?usJMP:btFzrzZr8fx<浫0uʊR1P]]vvvLYsx1bO Nf8yv偁"Es| 4E+U*N3+.^>|dpHhRO+:٦s!44u3Dj:/7]pO)(5ʦ ?}ۙGck^KKe2iEe)$Y.n[K+} y煏fbnnLvj8:M* dsc0Gf2&(B Y}c߾_*Udļ G  i…3C,TᛙeeŞ:Ĭj45znNv[ |32''.g \wߌ_h@O={T{˳k^[0h$(MJRVtC`,SQ< Q;TTYYiEEy`cmG[ 拗> vvcMf@Cttt{q[;G͕ER l(J cN2ٝ[YYiBRobEDDݾoo 0**J s]9h/=}nXxE|qg_F4MrUzjx<(2=QZocrr>u "Ic칋lSܪ,;rhv W4E"%K՞R*dKU^|YNv0)ufSfT >sO瑤/W.5CwŠ/TTb" pfшjLg؇C'i!Ӱ >׼޿Wk+kc+{Usloɹ˼(/Y\WGYٽ'~ebuu5/R*n^cK< 54y'GDM2h}B҅hדp,>߬0z܅::;ueefƐB!ϼɈ~\T*.]:SMQPXz'Q 0eB]xdV/Ze;WkuH]b "c=Ds\ޑo&++[I>:XXYBɈ=-]\C}}'_Y* $ /\[SSy9 pIgzztIg?:;W =$Lݪ< Ёn B9S{KY@g)ùgb2*J (J]UYL;//7/]΁UF•];=/8$A.ݺy BCGM>OVeedg1rѣ߹x;C\\ "JM54ƒdz?AQT*, iMyyy7n1c(BIs%)J-l:`8W0{%%E!Gz3k,0C9/z|MbEfii}O{XZ<C=j88 ?3&L<"!J~^VyyIK/ARۏܸqƍF>pmm5S/h§ C!4xI)t4;l`dvUoUV,Ue@Kw.n]]5h-?0lB0ﲲ{--́z9uuu5v03ruu>6zPTTeq<&?U $У0H*nqqqLO>ݚ7ffoxCHI=n庺z;:::~Ή<_{!wwώheekeeEQ5p8A BhAcojS=}! #;-109A;L=Lݟ☘_~^:p3y >K.iʿ7o4~Ju7Ν;^۲eKeevbcc?-X?ꭏ@7o۷766~?so?i ٰaL&cO??˗/w޺u뒓{IVUUQ&Aj??L /k=W^tod{>o]vY[[_bfm<`ϟ8q⭷Zf ,Y駟޴iӶm!)zݻw9rdѢE4M :^ΝkaaSN(*552 R-"ͭ94Moڴ$ɥK `nn>{=H$E}}|X7-aC Weggo?s[WWWSS蘜@CCCo=mkk#n _oOx<hnn֮]uرo]bŒ%KARVTTlܸQ(|.!t+ck_>h/wYOyw׮]{~X,77Ç!ԟ Pem=C439 Q@JRS@suSB0R5k6lt,--6L1B NBԤ`N4g 0rssOO#F0Ο?837''QM655߿MSU(I6l_U4Mi:BC>#f,BSٹ鴡zֵ|$'%Hrv]l ͱv=B!ShD׺9bƼDai s-^mf&mjj,,j<=}-2}&F;kHO֞#9rUmljh7!!a.2xWC)9Y,f6\u SՅk$ܻG'WEMQN7n\ٻg ELOv҄h[kK]]́/X)tFm͈!!aS U^Rsis@"i^c TH xJX,<,!ղ|`{d^Tcg<*ps?Bڊ sO8PB=ԇJ[n>LT;e'Yl6c&0fbc9S; rf%ez:أ[\]F?/1ABhP~!++ E nv52y}] Hau*oM4M98:7)<|L~AvA~vJʭ;CXn';8?:4??熏4诿ҝB'!T***J݇y/x k56?Odt 7'~`PfΑ%흄BR=;sssoG4-KSoi"YS,/+ k_wlp '奋\}jfVb!> Qxʊ4yصc+39f$U=}xa;~ԲAM[<&OgW7o [)5Օ#GwfaOXtb"`Wù$A2gf"$X$K{A"'g7P*A#llMm=w8MQvv<B--LoB!rB2\\G(/x!&jz΂ P pbp3$k\T(*S ) KKԤzR[XXA;q3Ͼ,fΜ__Ws)Jy5x3uC`X.(B !}+#ùiL{|1g7 ]LFFN`ިTʒOsXk)޹(2Pp/Yo?2W:?H'Bh(hSScEE)*\VYQ \.8dQnFʨ( HXslgg7gg1d6\fpyy 466 [`9P]]u9Lʔt)3=|:z^)B R}wRnIżnii>tpBnnnp߼qmWeeI>|*Kܵ q.trk:bTyj*33-'naA.A"Ǝ=NJbbCw Df֖2hJ" zyj((>vdZ͚D7O)c̅[xJ7?"44kͅ ?%++JK}-->Es<jk| >^Tfq<_Nu.Ghm# $ZB0D#\2!B'"Cz-F' ^N\![}>4Z1_+@푞(BnDE ]8B}o\MhGkWψBCI/(q^E& "1!4 Y`.!7!D90gBr\ 3 Bz|k)BG!:!Pù]Fݕc@!Pu?D&&MEE))7z;)٘x+.#=UiA#B MS/468;99?Ls5 w킍]I1Mꮽ==-Y*m)>rú6{"#z t3DS"IָO~qɲ0az,]_Ζj퍾 d^ؿ}^2Ijku  Q0V^*b-bOis@pஐȱ*~>}7/B Z5+ṯ).o5gqHH;iV360̙D#{D"4[5mW=ǎ]dXe&YI-(JrU;!o};+89R^iI歓 )R`Ĉ>~Ŏ A,6['έlXmwS5!*SDє (UJmd2)󶹹ɔںN(B vC/x Ct37o\?Sls{lV=Bdɼm4677M F(OW&VXWaaHX?|e/G ]SP-ƕIcd8W!LB}[<(|xyXx4[YhiiJOK$Ir"+.YT)n\QT+I9+W濇nLزuWRTx!2r%v隵_E!4++D7m~z槇ݺymMQˆֲXШvq ˿qk$-,`b)WybpPB.=x{xFD,x㲽CUu3>--I&\wz&>BlаR訪PG$$'hr]-M׮KKM \be%j?x_m6l|9eRBQTCa6&:D!3fB!}u|AYio\$@VfjJrS; v>rRi׶Ϥ$'/+^4N}a~^^H.m|][h3:.t5q&)BCT$?cD(xX{A]ynkryOcf]#h3wgnnju+OtU4e5QBT(J-I主vt(VQTB].˼aQmQѪҢAD-Zxy쬴S'v mnkkdztwK?T*Pha==B`B#R$Iϝ oZ[BH -\\Z .;QQQ*,[tׄbm[%uӒ^yGJuH1j--M۶?3VW[@!zQaJ$6ގÎd-RDA@%Kb]UU΍^76ֵ ïT**Kc4EU.[97Bh(D\\ت\zgo?o0DBč7 B!ӄ!jJ0:BȬ`N;VF)B s QQ2&C]!P"0GBȄUΒA_!Lh+DZ(A˗f&LH1nVnݳ!4S uȩ#e $iZ* sD/6 #B6R͒p)&q8\m\2]#hzwXk?H!)D3Sv\z_5VFBD)Yj2G#(ŝ2rYJ(Bﭧ{)okB!4!5`7"Ɵ|X'uS) a>\(WK㓼t!չWI[K>e:CJ.̓XcgF9G!41Dw.rH#eJ8R8\AzKWh'S#qp%GC]LƳ:W1H7;P;DG?=WZ& y̗Y :?ڠ~Ɖ2!2b>F{[j1ωя՟}Z{Z$ DZ@Νf'UA }Eu?G 9W>zZ䣻^0@d\uo F s!̆C*eOΩdCvxZwz"nTV+= J-Em{>X >tiIBD!z[my8!LTʔB!Qݟt#&($W9M&!@F6vv@M[={mO*: #lEDn՘cEB'؃|ܟ\oaYXE!0!zb,"'JJ,=ec p+!߳V֟$?# (hE+o=~YG9?Q2 уᤅƹd؂2[_"|WE."yB1xD2>j+58^Ȅ^Z4XG,i`ϖ竩Ho28D^؏p Sߒ_R|!4+D.$ٱH{0Ěx~`a>c;)-S4͞>u"YE "ω{ulNÐ,HҾ-!dz{}15z5kqԧT GϛNv;w(a O}eʪ!5-잣::P s!L`nAcZZWgTk\~ $Dc>B>mrU E̺d]5tt3:U|Ro1GBtMEM='vN 퉳UC(oq+[|P;z` {s!퉓leWI(NbL|, oǒ{}_]7} nn'2YtA:Og ^P巌TŚ(B!}Lw Pz1,a~zqH뺹Ħ0*9yV{y`H &_^TUKR^ "szsk![zjut HؿI:)e/ݵ UoNj+!VV,`[)e&"\O,C2,(be3#ȍ[x{ش J[ Hb(" jp;t:hB Dry?MӓzPɄ t'ͤϔ'|a9ţzA*~c'݁8dYid?;й\ ̑,F݄.!^^J{J+?8j<]}[{M!jhM2)JY-N E$h2؝hѣY%qT5SEá;UJY>~PVZ}r ,v{XxfauueScֱ4KJ .]9sqo}2|zFe<_'`Q2.r9XZZ<m'B6@6gB3C4'+U&YqE]]#\k00yYN^=R F${jVV]rf{-ؚ{bF ws>B%(ֈ֢vZjbZjoz'MB&MO5Ԑ~.q'7#zɊo%]h۾cR IJ<ɣY N.DEbP?jMz@(Wh_Zke 9#I CCNun֍K7lBh`M0V`U.n~|_z{OauElz5= IDAT7IQ {yX nШwTIv\QPhdg]+*JgM$Ħi7?wS*K/R0?_ Ri+wn.GgsdGa$r{yٙiB%w%bЉGG'-"4U*a}^;;{Ww3x<mEfRS\҅܋ iWWW +Y:UVe+cbVVvv+!=J<9^U) :|''cxaxE.n:L9O 6v/xbȨݯIk{;3B!#DǸ˰#q+7&zYo89jFЋXA=䪳Kbrm==gNml[ft>웣uuu,_vQt> G']E11+ܶJP՛{K9R3o!̑hYR)Qvu;ek6[XZhl[akk[puU6(8LH}g,@kKәSG:"-S'(XXZ>_JVUyӖ%q=!Y'g? `:wi}Bo(3}%C""j,3Di%qoe=YYywYvsdml{+TVC?HϹ:O蒥+ ro%]͖Ht5QF +ry=}{{aCQ(xzϋ}"8;uuu /ּnH$Fde%WOq9eH&hJUR\PR\~eeX".n}W.yrnY_ߐ$ pdܠ&8!fנ`Sy~;w=7.,wplwX^2s^}}-Pk 65L4bX]ΝZXmeeU_m݇il5)xf9Bi&:`mmk fv:J<&^{ܽs~'E&󳛛?t^i;{G@>$P.n\yzQ4ouZeGOr9A\ue1+V k!4&ZZgECԯ++JCB5܈U&nsSJRTb3Ͼ-ۓP_퓗m%EQ$$'B55wvEDhGg-]2fZ}{z{JxApfPX^&y_K'Jww;ZXZ=,+-*+-R(>Vo{|3F¥P?`ggWV143|ZOOtvup;B!dFMSQͻ),@jͦKNXn=|OՏ^ik砵CwS:mnj4|ս^>BŦ;(NNFRU y._% 2oezvAɚȟFB;1!f"7x?~PH]lgؿ$Qmmi];Jh]m N9MMN I2&v͐CuUx 8JERR(, 5eٚ-MQKGF0kZBhdcQP:Zݷ92D`1& Q2M$qcR0ҕ&wB1.2嵹Yd (B-D':ɇBhʌIT8a$#s'c<@5 ≟ !f5X5rj룘|! 2)xt#!kԠ5 |!=D oiqZYu?΄BhMxB&B31[0/!1D ֢; {!8!:t458QBQcѬs9Bh}pkk&'45֍pfVWWZT{=WtW.vgIM^ =Q&1:`!+35"Ri u2S$.NR)_  7oYY)A.Xsx Ri-,Bxs|z#,|fz ͟YRR\p)}7ӫn\ 2qbF^ajj4KJ%I\=U}GXl 꾓467E>ی$Zz\Bhkk),#YR}ʊw2N+D91W@VfjQݧvsppīʟ?:jLA!d10iZu/knܴ*UsS5{nڲ RnOƮXK_+YoZ zXw~`WWGWWǪ5DbkؚU`i%r8S<p:|>S{O}UIqATt u ,Fz{;;OҮNq'iooT*r6Bfg͹\ s쿟/Y6Y)Aɺ5;@a~nWW$~SQ^½.+-,+-|u9ٰq(uL֣~V#Z/Qahn / Ȼrƹ^ipU!0$ry'<~T6WA;H14]Tx'$,}o^0$s/]0PuBPȝnnfgG5sy|`  AAZIݬ mm3B`7Վ1ml,Q^V?ؕ,> &'K"qs< G$W"hrÉcߨKDzd2n*Xغ{x| rso'ƈDE**'+-=է9 Oqcqga}uvzzBfg5:prr޺yx^9PrF4gLMYiѥ 'k6_;z7O47޺y'2V<П/AP7srӤ.D0?7-5q[vixe|};8Vo\ܴgXBB5! 0}T@"qTDD-լ|JϲlKKc5ϓvVL\;?5o\\<£xxxUVYzEzJՑ#"G,`-,ʽ? x9J%CXV"1*òAzm\]R<IBhv`+ ͒EeEMM v@[V"qx`C(_|+?prvmkkrx"}:; 7;bWHIDpPDaA./X~mnnU*Z}} IOKjx~~H$ [DQ'zN&UR2kkminzLcC|;mls#I7.<[Aɲ 7,a9B! Bԑa ˭vK]e [oieVYY0$rmn,jZ܌wwmOzX]YVZtHP\qʭ/;9@wO&bhY{(@*@WWGkK9PzbByZEڣnF?u3/~)cbא[KsK~Ɔo~Ʋ,27n%ߊZj&hlMINx!Z~r^`YmO=;w?ϵ7?qQǐid66=yE޾x y|c|eN))}=̽1?/{/V_~Q<>: G]Bh:L6DSn%֑QKݳ s BȻIW_,n撥qxJQ&U(\]sƖTci=a֖>89rOZ")*; `Y֦ȨQu bxb"ilIL1D cz/!BIG_#X=|ϰ?L1Br`9:7!Bl:eZ9J B-D [  !t3nMԬrtE!4̘CtgV9;BxjfB)Q$`"]F2撣XEm5QBk5h15NUEl}:ѱ Ej5vӫ*!4+id9:Q:Q 7Ũ9:F;Q :Ot&G6s!f18k9jURQUbѤcpEL;iYs!f,g5Q#E`!:2Da"2e\sR QS(EB3PLD^]!f)y$lEi=eQSQEg|!:2P)GMs!f!j1\N"Jb"L1F"r!M5 e:G?VNqe}ء'B!dvj`CGǴ,dX%E!5M! Fq`>(Ba!:U4\k"Nj9Bhj:c 9s!̎5I`Nw!ѹqex4/Bhs57A +!4RћR'=LPqL9WVcynį0^NLMRT.3 3b$I Bkkk&pxc7|Aղm`Ɇ{o,c;I(7GW\dX"dhniiaF&rD2mꆗOR9_6Xُ/,GM9WӔw4_Þ!dHRtf'0RtG}%'6iȡ1g>!3#ώ }ؼY_gk! Sj$B3,r&agj?N'hHr٩,!fM_`'B!'Dasl MYCe*3BD{{Jҷ̙3SyKScHjt|[@d94j]&ދi:33SVGGǀϠT*W^y%44jjjΟ? /po?___777(--=y}||| QR$.]fԳA(nZ> 1*EٌzB3ݕ^ CLR7ѷu:CeYmoG}駟>pMϟ}{Ï=}tjj/lO`tOEbBMgԳ/F$rϓCJ(2"m6=!jB,C;vرcpȑG~yyy6l~ccc^^^ÇϞ=i&oo{;vlݺu޼ysS b*E,T+cU|nikEk0_wižh[<}dG\믉EM"f.[^x...\aeeS,--5xܸq'lٲرcgΜyT߮vOa.$B|x'MބH*f2tp׳eʇ v'|\L3&jGRlW\\̵j.`zֱqqqR$yyyïӣ5(`.˃"z(\.jBW"-j3ۙ!dht;99\v-&&&??_YLPu֭[tP"Ln5l[S*A\T2ZrS)3%Db ֬Y~|rחqogFhh:Yi' {,_³N5@kP'3jeO7qDM'",""kzyy'>>ѣ_~%7sZ;MWڕK>aH@y鐹d!eU2ܘrg]Ќ=%==]Pٳo߾n:tuu:u*""ŅPPP0|O=^¼BG%!OtakEWE#Jy`@.&BhvbY N8r=.:΅h~~۷aaa}}}vR/LMdS-f'.K@b E! qVY Rϓ7Ro~lOn4Ci!4:zޞGvww_}||>|iŊ$&&66637t]уݢq~ `L-?XNY T6=GQGM]f=B!).m5=ŬEcNwr#a-ՙSF!4^fj&*T{A!dJx1 =Q|!4 ja Ck#!dSK1kۉcK"2KkȻ0{st }!do%3V4xj/B!*)yp=dYdubZ1CBȴW,tI{>;`` '5.~BȜ)?nJNp=aXEk{IENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/6.png0000644000175000017500000012363114212620632020475 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\Gǟ;;HQ kDML|cl&{Ԉl( I;,8|?|twvvfv3b#FdгSff,|ҫZe Ҩs@ H(..($:$ 5q5UlVR;~eH]UͼU ְp{vh֗84@ 흷"fzJKF:iSw@  ԉyۜkjyP"h0|PMBQ@|@͉L?m @ m2%IThT/aU PKh169 mh4':WNG%$Ffr4cW 8`'PսoC]qp"!F DETmq&H9kLL,RIY ՀBNq2'%=T*a0ZrJ?@ A p8MmD\_&14!& &&eSYqGޣ_z<{f,_JKK[PzzO%WXR\TTRԌKԡ~2GZ@ mqҥc::::s̬YѬ6z4d $yDN k6Ê`R N34]Ԥnk'[ZZ)>xxM6r{@ sΚ58ڣN:ں6M{$$$$`DA]ϵ3p'I {hl`'Q˯ay{?uͷ>]Hm߼zZQQ LAj7'O;vU{j݈@1MF5k։'&L`gg2 r&޼~b(].aZ2+3~s‹$$& {M a;H$"`;5 ?xXYYM>=((}wYQ ]#%mkȧ H Sܑe\WVJsjjsI G? -xuY*5qyAB^U>Oxz[`l˗7lr\HСôiN> 蘒< t## >a>hזvt#BO˖֔ITGƒy7 iNMMM$rm9oNJj>z}w^|+=Y[ d"D+AFy#j#)I#qلzz2(ĂToD"#5 AVAsr^&?744rtt 5.BYB8:vsX,D ʋ;e N>=i$j~y0f䀆H$J_'bl-<7Jŗ^a#9s&\T*9Ҝ>}$g:tsѾʢs@u'Ljh4ٝ`2$@n^;kcW!+bEXy!5"-RThHDdwx{#Μ>! 'M&EbNv3tJ老]'Μ9.HOQ' E {ĉrM?^q:4YD8S  xUJ1Zp q1WS?|pԉ;uڬ6;b0RnH )xUbشkW%w܂b!D [rӧO?uԤIa6YDq)j0l T3gر!.;|oΚϦc`աYru ykx#s0ЀebnWQ3 AQD)֯vn7}M];[s̤]$њfҲy2`1RMP@ < /cs8c7p[w ~w99Y(/@ ԡY"Zڏ0X,=kj,k!$ 1HG긦 _qM,khhm]cV] ð?m-[6w@ t 0JA6=EDx~5&lpU& q&I01b]Ũp_ܱ#ƺy8/YWUUN8W/OVQ~y0عܼ@ 5,:T'ӬYN&C@ 14@&>5M #Yfvޞ}s^O;{߈1`83TV@ 4YD;X R+j}| L444]3*D2j~ʐ"?lnP RQSK=unDjo%LVӚ[ѬyyYYY`hht:wښ#_iiiuǏ?gׯN-MdN@ M/R㴚rfV A& Nbm0'Nu7VۮK}o^T SɫSTv@ѫO0p|׋yƌNVUU(qjHyj#pʪ.ai섄8CC^>>Mͩj ,411tu}fK*FѸuQ J5]@|(DB:YT󫳳a2X9RIB3v>ivE J;^Ռ"Dۤ\u\&_>wmHH@>|RPY"D{9 EHG}~6jʂюhrڿI;O@;#"Qfiœh1"B DдG#ҝ@ &/qiRP@'N (RP@?>d HA^i1cc B DhQ@ 7?O@|HuˇQmd@ D߻6;:OG@ ULt{U.j4@ UXƢַG5>T@ MךbvAQThs|R2I!Kk%oؚHѦiݴ?R(.) d3x r-W~0_]ժWJ+E0!?F$W^QV^VZVVZRRTX+} h}OMyz{Ȗܻw;JiGA+g}-:Ȗ'%*죡-2ԯ@ V̌ׯK~uMmM ϯjI!mcõ63TTj^ezKݵܡ]utt㼼jji+^ï.{]tؘSqJK*wsqQԚ:m'pv@ee'{zz@ii+gtgqЊ"UfRbp4laee9INN 4X>=}L'٥%EQ}}CmϟXu =m#cө;~qwvObjj;$8(99Qi8D, ڥ222HԜ@ Vn Gn@bGO{SKMyޥD˅BABB,ջT"a0)bU+*̧L&-o`4q3|OP(RgATVnUUeU@ >> dŠD!33R?8Uȯ ޣ1g<jԾy3//{@yY45g]bIpRFS-էv*x*G p>zdwԺ~@|ԙ ? bhҔ66\B*9Y7o\G'-z*cjijq8@H!!%OY,vNCΏ3ںۑ7]BRB A-_\?~_zoBh`cS^Ѳ؇wHd9DB C&&f~&Z(ů]8USK+7UqQS;@Tč@P{oL sPAAӸ^_KKn5;SRzydp CS &s=<^LҦg5 ҩśE Ļ#?ٲS&&f u4_e}4+**4hyNKh]"GE?m/$9h_yYipO?މkGrsa*FN5l6DO@WWOGGWWW_[GWGGɃa'Q:# i%Ɋ @B/^-19sq#7C-ꙶMA?^UU`0455VJNNNJ+dgg%)OaXnUHHHppplIIIY`]dիW3f̘1c̙3;*--ݻw֭[$Rtڵϟgٍ JMMFURRR^^^UUUUUUYYYQQQTT &k׮Cʵpȑ0K8v͛7޽($I^xQ 2D޽{zjÿ7n:u*""(?-CtIqK+Ib jkZV$'\rvEF2IO\trvx]Z2x(6s/֐ac\= 9?z.v ng) ˣ_hSS {z¼dssK'Y@O{65֨)(jǏ_|<o35}wiiiJp8111r-ܹsʪw 燅4.˓٫W/5m/ssy׮]۱cGxxC[nݺu%S̙3wiؾTիǏ733366600|ƍϟ/JdTh;/ #""tbllx I7nl`$}Q9bq||byAA<{LOOO)D!?duTnTԭԶX"1ͽ7%.]:}Y\9޺ CmmW@ Z(p T"W~ O>SZRMG8I'psTzbxa*/9̻<OMgttbhѢŋ:t~dsܫWU^bETT\aUUպuf̘ѨnܸqРA"w^j(Y`W_}8}cG_||rUruֳgU& P,pB׮]`ƍz#_x1|p]]իWAAAs&L7ː.ﯴ#W5kքt S-Sax\aII |R_\cggGRԟmpJO{yKOZDtuo],+G^,|~unn I9ffo,ѷ(*700b|H՗5X555KVD"6mC\pD{D%*b\Ҍ\TH*y :wlܥo; L% ttt54X>~~*{Isd+,K7:::SN+|ӧ}||h?~ }}rS T/f), _T*ѧe IDATU㸫͛O>rJ//q 2:_^]]mkkKɓ's[b"tСgIt>|X{5*,Kѣܹ.pl>{q7`;LIf"hjM4ſ_HFO0L,ݿw;##LL" o p4zQlJ" ]G%ŅQ7Z>&49(KT鵫D qTZ;W(ܹΝw333 88~WU!CCCHMoAmmիWU%K~;v|7~Ydܸq[l+V,_\*:thvvv{`Ç߱cŋG_ɘ,8S\YYgcccOO˗/S!E^^^SLQzbiiix?Š$$qCJƙFAN$q]\d0IqzzBUVƭWkjhMAQ/ٯ2%INο:tP(x( \]=H%/_&$efaףwg111/?ie{W{'=B*-//7g^2(KT*PylnV"WA`Ν4,[Q333ŸY'B(662ihƍ;8>wW::otWW󮇜'b)]8vvN Ϟ<}by]fsͭ:qׯHOfXzxzzS.޾=>HO :|¯ɱv=|0+---;;YΝ;,$GKKG|> Ա{eXuQf֊f͚P*as֭[tӧOϙ<E~ݣwvj*jU)l6{}YfͫW䎒$YTT4dwݻw$_9::k-ZsΈXLO7۷/33.]4-- ,HNNDrC>yE(#"%%Ym6Aŋ={tڵRSSsr*I@kN}б3o`bb[ZuPLfsUP?a1KUo8oޗ0jd@{nv]5`hd7jX,JOKfXl6ذb['Mf\233bÆ ֭s Q%++ʕ+=zPe3jԨ{0s ԔLMMm߾=99YĉL&3//O֡h|~LLLhhݻwq5jTTTԊ+|}}׮]KݻMX,;wnnV^pi:R^#`׮]|>_SSs۷oOOO&RC,oݺlK.]hP5իntt߹sg۶m{Ryycf̘A@ >yqF<J̔gj:-T$ K);d2/_nnn}vX|ܹsebСC}UGD:l2uDð%K\~}޽KÕYfŲU4ܹs7ont<pmڷ|ԩ_͍2׮][TTvA8gBSN={6Ax{kjjRJ&Ax333z,6mJJJjuE!mmmjLkRphgP(7vǏ}v.]5J100عsΝ;<<y$RÇ C6i̙_z5Ǜ={e˚hGM2RnV 000xQ>J #5WݺuK 79rΝTR\oo~i;vذabiQ G>qℛWԂljbfs=YSXY S[[d2)^ "##*0JKvRf_~kݺu3f ϗu)SL4 )(#k4Y$ZC>[Cn򴄂%urrzett4lShbQix ;;޽{O>]Cf^jjRFٸqM~Dn3f̠CImqzm68}cBCCB.A.\pppu,,, 9~ٳg=<<~}q,@WSNݽ{ONh٩i4@# JA&$I^vm:uxbII~AUOٳg+fZe ++Ki h4Fiz)PZZZ6y+o޼hjjRFa$77,Jϟ?gϞCرٵk׏?rJ9JG=u_-F ~YDDիW|7\]]O<dɒ'N4ٹ7h˴bCKI"VڠmO>Tz,Yd…_UUE trrr6la֬Y3fP%iiiqqq883 eECCCT#ٳ"%8({Rx޽e%qVWWo޼rС@CC(==w999?CDDϖ-[l3Ξ=ek׮Ν;WwHL[jU1(,##qDһwիW{yyQ\߁AAAT_!EQs!Hse G5ڂ8^\\תt">p_<<|UMv{cH 3}M D34YŗWztG9p.-s‡ukDb僶Є]cGHԫ WKTg6A߄4(xO_vN""`3K"bȭ$*k/n:ZbRt0KL0F-Ls" |!/H,3G|W \Cv$3:8GSaYцySq'#_J!-d39Rb<-!d)Ԙ 6XѸ I\59Ko`wyIj Y)|^J@vuGs+['0@ :j t2f|dtAa &GHIZS% $Lk'\uQDPG<8рjZb6 QuGZA|"D{UD;0m?Oa(8J fi~8|wAB Xc'2_+ I*#cWފH b`&֕Kԭ$ C74 OhW%ZPS۴0[3ydܔ1`3a7CM>!/ʾ,H[u(u2s-4a[e!y)ªAčWo{!usJ8.dh˕'FDil E  "Hcp 1L&C$* ɮx͛':޼NvlM0H{dd|{A\Jp7-wY*RZ!RB96#:yXzG D[}( ӜWDvdt_W@KI~SIv"*$,2Ro2-t4yOw']RG",KxE20R*s$2 enOWS O 5"%j]@eZYD1 <:c&zhbN:gfi~( |FoD ƺ"COpWcde =e&&p 2W]JN>d@ =":LuH^-B$HH)!ϧDb!֏1χZ6@K擷I=>+c 5p+$b _F> sgpƞ/5p%WNlllee;6]UUࠡ>6ϏqwwWD.[k<|>֖P7/++o e633ի&$$888latظDT~UJJlŋwh yyy"bXkݻ...MDFF|??$YZZHMM-++۷\y||]SS3c Gp9"̙#W lٲN:;wNVWsJKKKJJlmml_u{O>/6m4~kJ$q:5k]xQ_z5cƌ3g^.,,,/-[xb5ۡ駟rrrbbbԩ}~MVD7l0~xuD~  СU"6n8cƌDt޼yO|Bȑ#'OLdIIԩS-[駟@^^?*9^zq333ccc/^lܸqRI_pppttBPѥKfVJ25Ae|2:byӘ zXbNQhm㉡.8 YP.ȱg| 6Gz_e)}=>ZKOOhUG={+z׿|\M ƎK:88/ ʚRvN$YPP`ll,fffLf1ѣ׮]SGDѣG;wLɸ8ҥ5k׮M0/?>%uuTI$IRrx'NpttQ*-:t޽{[D"QDDN/=EEEk-"wNNNQQʡaffF ttt] }}}jW(l }ƍz#_x1|p]]իWAAA=<<&L`aa![.h6{MGqaǜlO)vUi.[L:{X򒡝 c,=+ͨ"ׅIOfcp0ʍ!%`*3>h/{6L:tr8Y SD"@c"* E"\9kkkS^~}U=ӧo߾ΝSqbV H@Tai > zU:=|얨yU U*W4ǏQ@jj*\v2;u&[Dm IDATT9RVVy#}ET,=zbQq4^Ϟ=@MBWWwݺu;v422b0yyy8pb=%%EV)e@D)#7٫Wnݺ5c}m]|%,X@׌;skٳg ,[$ o-*ܹsŋ 222\.el۶m8{lFFƔ)Sdq}rٳGѩw޺ukDˋRۉoߖH$G533e[,9sFv311СC@|g}]9rDpرL&W .++ ȴ'_~]2eʺuh n޼i``IeXXʕ+R|ǏU]|ƍ`޼yPPP0l0ŠY( 7̙3_~Eq~~s<==~zW$>}LJO0Ukkk/..>}Tю;(Y+==VlG[[[vj~ hm]~z9"d_(jjj""""0''ȑ#SLyⅪ1 z*RBׯWWWqINqq~K|}}͛GmH$֦@D!e3*9:ioTՐII ΕC֝;jK!ΧT<:95ŒrnK(HiA9?c7Q6Ie/R2!_2\;B1c|/rTńߦ-#n  4a3d_4kvH)UKD4vԉ*O"J;wf͚%B*޽9aCCCCTlԜ9ss9r$-iiixmCbXN3f\ aFFFRtͿ+ueE᫯={65, B!YYYG1YMdQQѐ!Cx<޽{wM_H/[hΝ;#""brK.MKK} E"h4XgQ[VVD7THِ$y-GGGl2mmmڨtA/'$I&$$]6;;{nnn:u&***~?y5k9rDWWݻբ,kݺukyO>dR-%K}xx8u'>|ܵk|25NG*DKs̉ :fU[ x xӡborFZ_TBKD'{NwQHNoѹ}uF3g¨Pӧn*^H|$IJ_:ڵkWccPooիlrٟ7̈́osݺubcc'5wɲ7|S"H+m/ÇwءWpűcJKK_xOO-[;v{'`гO6Nv$755555dy$|0^ -`9ݕY,Y- X&$tiR***Y,Gbkkk?@bbbppŋ_}U__uUWW߸qbQ?[9e2ٗ_~ =|W\ˋߥ/7ؿx<իW曮իWTȿ{t͛ccc"fǎQQQtK?9::~W;v}g\.wƍz)P ݦ=P(ھ}曎f%jddD%=z۴FoX*>}z O8'۷[EiaPLq=UWǞ <-]Ty! {=;;_~ᴴTUUܹڬwߥ^S۴iSccÇ_]*?~-X࣏>Z`KēO>9o޼'N9r7r۶m[bE``?q5D| ?S?#33O? |ͱc\\\gCC{}˗z-mt 2Lhتgy^ܻw޽{QygyF}O@OsliiaX2ϝ;|R0|/`!-*F玎RH$ 6ݹ_쬭{x>`Ν555Ǐ裏0[^նR겶n dMYY=4..ܹsX,$i۶mfff:0̷z _|Q&m߾}ڵ:^yݻwgee?~zCv{5Y,"ſoKKKw+(r~ǿF!S=RN^n  ^~. k3"Ɍ?5Em/H$O=TwwH$Rx;ݝ+O;ڵk 5Uk׮{nܸg}'_8W+QQ{.4]!UWua*GF-jFP9޹sgǎ *xP(ܴi6u677s,H$X,?&HEY\\M,P]]*GJKOO{Mt56_ C@꺻Y,&`H$hHD"L&Qymmmmmm>>>:H~`^YYPu%J;::\.ՊH$Ԑ㮮pqqqssKOOwww+//f|2z`q!bJPEӃe0Ab]0 Bhz=z=ZA֬]4B!%: 4Yhݑ=B=ohj/nn+.Ꮞ&Ozed!4(0~^ZoNhXRWBH*De2i]]%zpjP%L&HRfkpfڱo4+==]I&{!::2}n),ӥcPPF۷b^˗ӧ͋YDs'&{!CT/ijkj^|rLݧO:sȖm/ܿnK2`RK-';%;;Uv='O: ;?{ߡ*xTeEʷ V6px"?)B鱉ZSQC#?uwWǑC_F'ܟ,'+ R ?H$/]<877N)cj/[Xm޲ߗߦCT($#e  @,QCC ED5)Ș!4;;߼^¾^hJBBUœ$)SV|X~E/P1*j=fc xCAt^l_,-)*-)Ң^EYCRc_TTY~^B߇ %UeׯDQ &8\zfDj>s^аS,7Ӵ@74mϯ~g_x5q`"~Ӯ%e}`dy#8$̼ ?k8{)UUYzɸe""^+,vrrp r {z_;`06l("nҋ.>#+UUwc]]?bgY٭|,7?vD;w#' !noq)ϼSVp sHR| \c.cVV9:8ckisLc0Qѱٶv ;[jkTՏi$e}àB=>trMT"uzܽېt{h}5Ρ9 0KްqT&+p\/o_@_@$~qq3" F\܊ֻAAacS#@䡃lvxLIz}uE!t,6gg;:Z+BBȡ-,^ X,688875]z 11K!=fc2yV(46֖9͚&Pn]uZp׬HwwuDD)F8e'u!t5:`0610A0L!. ZY\@ IDATzoHu@P^ D"qvRQ^֚t*va&L=+N (B:~ \j+\ jDBB bܲvaL&53p S;wdbbb}I%qnnڰqf(,Y0-b",Н[r;چ/wdw9G'33 lμyH$wk^9cmcWj)W߾ol &&l6{?+J-5i" XxRVxC- JB1d02NYqdT,?J 3Mb9:8:̋Y$  ~g9knrMDOm|ui OouPKTm[*E!=[ya/H$r68u`͌9n66v df$ef$MB fF?F*TUݩ&"2j~t[YOqrv 015Ie}}=@72<ӭQ I@"PjBSulaia.K+6\<ޏᡶ(Z+2ry*3wn輘T%TNyK]͛7ok8tOOo[TmDBDրnzt𐑑\JaAVPp$Ji``(U28_W[ZJG{K[]/o?slAvvtlbqmuc77W;!WF@ !t0DfOL]6> Qz4]|d; l9OBЃ/mMmi5C[!a7A F,B!/쩷&1DB12EӌOL_B܇g>@="?B& _NLiGbTB1"ItԗB0B!t/DuS91G B!4YxM!"= )(BNEHqǩY :I 7UVn)e͸i|m!iԥIʒ. ;:88Ny>O03#&88B|s-wrv//-)G6QxX~ߧ=z#zQB7m! v˿dg%o|f!;{Ba~P%_~6poo׮CoSXӥPܠ0#c;D,:tU08ԑy@Ows'xS!t5}Yikԭmll+Wm1GWVm왣fOskmlssg߸݋^edloSe*OA0@,͡U[+{!m}6[4m^N dR)F{p7w RhYXXm޺Oߗ߹MP(024dlpD"%bjqhp> iSۤE!}7>Dqܣ+3$d!J+.z^̽sreps|fsk-,cfjN- xCANVt^l_,-)*-0ifc!*J%LذqB__]VM,d  =/N/ `7sH q&kD~Q͸RÒ{ vww#?>a-^[;S3lTKQݿgdd89JUeYTtlܲڊKOSY,o_6NڝϾ$w=Q*Q(!Ob$3BfkSn\(^R@PTxS&ZXZu뷹{P;*ǎP(OKB~vV*铔x<*:vCLMx!И$I o&Hٞt%8$"((LyZ[۪,qBBznE5_P88wd2e bi>$I HR&Sw>#M'qquW՝$IB.$I(nqvcg(; 4wG#zT䷿6-'۷2omڼ[a7J.;>sp8ǎG~7n/PꕳW/qppڵד>!n.^Bh[Ź)IWah>jTtlTt,t5׀`FEg9͕_Z[[I>=&,~NAZrҕ7+BzmBT˾NEyjjCâ}jjd,~5ؤNYq%NNb(%D"Y84.?&yjURVZchD ^j-QBBt ]V?j3Yi▭\0VqG&s͜TTp X,`9`hqċ7-rnP"1pvq  (/qrv ޒt*vaRge\56iT3B+Nh#d'ʯ̸!(J]=cl̅Z[.^8ٗLLV|;eXd6ly ?ƭdKtRB sCU^Dz I O߽PUYkrM /73#=q^>ZnkFzbuUy%t=[򍍹BČlشf/ڼ9;v'd"N!%嚬߰EqB]{rY(nlk .s֮JpwWGZZ@II4nL%BqҾ9#QjZ1VNNMtG},&K"0c7BA  |5 Ȩ*:}ꈓ@oL&{g)?td$H$jC{3#z<_0B"2L'9ӭ r0jD.ǟ(X,ds8߇. tyB!BT}TGo QsjoTgf#. OQC!4`>tJA(EYB}}=Io2(Bc!:lzL";5/B!]`҃H/NB`"UD%?B)Fc!53R6BhVUݹ=A-z$<\4%B>CTxį!ԣӝB=`jUW;݃&A!f%w}YiaJ%T}卍uIyS81BHwXcv.$,Z]:;ZrCBLLM`tdZt`0@ ?{|ђx'q,-)G QxXO3'Wo~{BěLUCCРX,(.= !EcvvjWg 6~P!:22}zxt)57(\!Dx= <<~ >u$((luq8!fhqQncCU7/(-z|Iصz]r څOm  JݾsΝ=~ww/*#c.⅓e*OA0l@,áU[+j& s!f MR/nVWYa:@&9'70L͵-[afftaSCQ-}t #Ccm_F@,X,"7MmScBHo0Dil6 ?sʞ. <<|ll="6XYY1Wgaa}S3sjqhhbC}ͷr%E%E3yEA#ФKeE E7 n\jj^ #P-2"jV&7dL&O{~8dR'8gE!4ct՝8:2PP2ߗ|hd 03x"i033d_yYԪk^u Tz1""'ƥ%q㺔CLMͨ442"I uIShON-[[۪8B=tuSFFơaQbd0̼ EH()#9|mtOok#b\]ݕNe'] $)HGiOw8̱sߝ`0G!݃X45ٹ7w:]ڒ|e\g,u-*Ç? _q=55*z٫ʗ888Dfj0GBH6D%RE-@r33 KaAUUe-\ ]"9a &3*: ?oJ{G;' rIᄇQ_%jie3Ruko絵U(hXh|aM;{G *X,5`2qV 311IيOv'߸"ss3LֆM;5C`I l"Ri2ݹSMYggGΕK*KvaXV2G=~+N#FooOG]~KA@}}[\Phbl6gæ?5{O+ [!ԙ5QHQcu$hmisOGxz9򵴵~g9kmvuu% |j+KP7=`K!zb`(Jƨ@@&UVL Oxqo2HTT{3a9Ύg}OO^f fF'J$%Ueu5Q-Uu'gW`_3LAt|_T|BYܹ00 -Qݺc}OljwpZp#KKR.KȨ .cT?u`wwמ~gf>6^SGݽ"_Vr8_߹/pzrjk*bK~C"|ڜ_Na MBnZ!\R¹VvKPQq͖?a)wmitt'@püS.P~]MpD,r8n6[ bx{+}0DBH?M2DaҍQUf# Ul8뮏d?!o@c.i5\U18!>o=M=Bh &6F ۲!tgCtf)Ss!{"Bzk\α$B!-QBhŶ,B!]R>n)E"(Bu]зB!hS%Tɴ BH䚨~f'Bh}]!F60QBhSS]ggL1YBh6c(#7HrL*{7ɯJ%*Y=XLV[fU &32/677|S!f5U-QUU@{GJ-IZ8>&f)\K[ vقeb_ ;▯R8JWg{[p/iNvL_n6_ XlD0p@r!#e!Z$\d0j癘R2Ύ|@/rU[S!n*p 8qQQ@ETOL&Hb &(TU\x)aS B=-+-J$0AGc.w:/55.Z_\rLf2RToob;akw7H SS]R,ɗg]<r҄Om﫪, 42qfrMBâ%I~^VvVkt"zKWWw`\xcׯ\KK]=I~QeTOMRBh!|͜Tk;?ڎihh$Im>+ \S[;bcCP(`Xe%Ts (o2LuLuz{mnp8ffw*+J3oDF.X)<.4,0+3{SY[YC|?+Tέ:9(:fg:22|旟:;.Z>>O ,\ŻаkKc‚ J126~7磌3+39';M#ԷD'RDV6`naIMPy7IRljC#œΎ'Ve`jjZڀPklc#.}f$@oOי? DD- ܉IKV_WjFqI4 kpHDo^nO692̋Yr_}RU!SΥ`2k wnG'j;;䯉Le3<#1K-GG2oɤe#"c753۵+V?||C"\xјKJ RyxPËznyx[!8BxEg%rJe{@QH$%%! +*W&2pɒ_t鵛ѳe0+T ?:)܁BÚܔrDB!]0=}MggՙxAe`i,m\\[YL{P!zXlfz?1?\ ü NGFvv߾ollNT]K<!C%Mus};;ml,~5(4(.45µɎ۷;7IԢA0CJqI~SS3zR,Px dޡ_B NO(.K>DBqƚjC:[T.Ll*jC6YiSMC"H$ӭ_Lhou+ߘkd0UVDBq6ŁE]}*zGQs,]n 舁X,.+-7w/ D"aey Z&73J((:=-\mfhdXWUYVUY&<|㖭lkx0?; 07HT|(mddm,,XJB^}i*p8s-_r)sԦ;1^z#џana0*_<7OU70Ypus++7+ddm߹yNNvR;MJgSB@ު!9qjCB蒞ξn )uNqoOWxam;,\\LOd0UUH (RdR*EҒB`cUIlnn銈?[Ё@r\Bi0S:kCL:]E!Mb<"tt@!XExknl2@rf2s!fڅpR;Db!z`4̴$$a$#@dPdiT<B!%5#l{!3dZ~F2B!5&3:WA;ӕla"R6qj&ICsQ7 2VیՄB0Cׇ)bB=t9ق? VB!:c=Ì(B!\j-Gg(B!CtXչE!4kB53=֦Į6 uH[Ź*ז)+ְ{{;eB@dM3|e9Bi%HͰsP|ZuG[K^n $qK~k217(\Y5..n<ޠ9,/7bqTX{9{а(¦ƺvy{YYʗT\xZ݉W`ff1]B2s2^D,3Ncmcgbb" :;Z:|`o]m% ?IDҒ"إAjrB!D)  /7xVV|^axi|6!$BeT*!r•6PmʊRD٧5 +# HxzxTz7aBâ9ugL:GI^xnʿqs6XZ1XXXZY2f9@E)BG('w[X@__ϑC_yjsiiaA^׮v ?bm6"_wGNyc4+#4j"hh`hh n*)T*1Ǝbrf]%ѱTԉDB026)AQq8ԆBh֙tw.Lvc,SS܌d[KsCCo#.+9hmMԘkc篿g +D@Z5>^.000 &ݝ[TTaaXD7[[MLL\m>d!K9}C?~M%!f)^d2)5Rx*[l7/jO/?V>D#\\%Ifzc06m5ٲEzO1'WoY K+1G2(84h=T?G_<yμ~]UCqa@E:,6d2D,&d@@`H@`gr8/)+ w!'@uc 7 **ȩ*JjBAfzMDYJݗ,]qo$(8Sㄝ@*611s›1\IhXD")Jurr՝ /+GgҒWϩ{k7_Tyg34|&!f)D;;ցZttv]_q&Ja2cj*.]8\.1{ڹ̤_{x'{;Ryzzxe]ɤ~ ^~tw1ݝK+66vaQ 2=W$^ IXZ{O5ƥ-۞#{SX5HA!bmn342K#7>%b10OdOO0opƝ3F|SڜOuswJKfo=<ޞ۷ ll<<}TeK>!hPӛ⯬Xs3;έK oi\zHRF77@"77ы\3kUsRBBJZd jͦPFd2.^DW/yjf>QHXVA_cuk/#z|Ktxh_,_r&)º ;'ܱLt 7xAz1(8bœU;8bcc;͋A*>yhnP8=-  ]<"O$E[h9Tجʥ]uΎ֣?}G$IV i#"-_-wd2B=>O$I?9Oug~9wC&U /LVQ+pwusRP(̨(=<m;8̹q[}*<6vQ$ ht1Ba!51_]uudRia*e k[;gg787fBnzG!}0ѥ_9J `!4.Dg1:  0KBۖQ'9BH!:̛U99/BhdZ;Qz }r{TAF!8*D'^Y$ENJf,v N0Ƀ~'- @b"A7D]M0GBqmN:f"0GB3]N@9JRzM"DX&GB)(B=t(QI "У<ջ---gΜ)yUR;-a~B!%\k^ڵ^LMd㸋/Nnppp||0::/,3<#^XXSO͞=[xyر؈hjjϞ|ɘQ/]&13mVӊN8lIf;)GǚiU :b;öd&jRT٫W^.XСC'N7lh" JKK"##=pu^XV۳gOzzy`ӦMyyygΜζc6}m۶y*D*ƛ֏.p7)l&3 [vn͝=Ib¤R(\k֟$*Bȳz+V ܹL  *w^z,Z=kxzC :02dkIcjy!A` [,_ҳS;effN^8w\hkkhcc#˲ofΜ9MCCCh4Bn=p4?Ho[[wq6v:zHa"&;;[O{ܹRa̙3㛚˗//_FGGO:USSiӦ]v :tf~ŋ+DߝN/}Q9e_Ćs#D>[7^_OGc3{z(-{J!NBǢ:_|q,vuuݾ};))IxKR999uuu/PrL]phsᙥ \M_q2$'kyX:ĆmK,^6P[ktu$>4vx^v?\K^\JMJcIB`…CCC:gffFFF=Sς%sxO9?R.V QAK fgư&760I?aoZR_3.BHQGdddFIIILKKIӧ„nݪD5vjt5jh(2g1׍$Ϝ;ݭA&Jiooooo/:u^HK !Z]]]YY ˚eee۶mLL_ZZjljCFmSyH~|~@b&&7A96tӍ-Ha[f>8+Z8_uFqǎ&۷֖~}}}[np~~~TTԲe$&jm돈q<"t|J5<$D0W76N&D#fc:F7~r5Q]͞={B9r``#G~혘ׯ{!!!k֬줤+;;[ImKoC5^Ū%z~^ lIfs$~ܚt4/!֭-p+WK} سgO<0۷?my2]fY3::* 8QX;'+8aJc3/p?_$.`' L|81( []!:MB]kK|ÇlܸQtvv]vTjn?uQ];[/,ǫd FM3T<h`s"3h+,|U~I"DNPT@Z^OP V7gXDs .rCTWWw ^o2zzz&Od2CBBA2XCٳg- ~~~!!!:βk"""Z_L̇%jɒP? uj1CV8ςox[K};`"4}]]]1{S?J8gp# CI ?_ᑛ7 ee}KyHSqزi+X!7)0o'WaPC|}=?bL G @ Z|=$FRbC' I"@ CPXOJԌ!cBkQ#◄ ߑj:״Iwᐗќȯ@ :F5v̔|9FLdfHP1@ &"/f -3@ `@D-TPc8\yxB&pN>iI`О1Z84@ 3}SEnIbt ƐC L G#q`M_i4@ wy@D-5!v)htj fi[{OVQ(4Q!) mkkc2cmv\ 0 Ѐ$4TLM͈>ڥ}s%8rPCc+m{#ψWey{ysm,3{1͡P('O\~}ppޡ#G޽ۂfGQ̨vp)@N 4P4-*4]C 1(Α'{ w_Q[i'pYO`8_,.aO}ݖ-[AGAemZ8OC !W)PT{ @.j/z*Bz&w>t&T aO=|HHXWWW[P*F[y#!bqwwߵkO?0~, ܦcQk(̶'ܜ`:q-Cj H  :iM'b3^{オxrmX <>vW28ӻt+:u2Lp1@ sÇ8â0`4lNxibۀ`zM$ ?@zi " ޽cXڒR|9}n|9Yn݌M^bDYOTE   %: X!Ԁr р.uP D' Aڥ[5FM WKDсbrُ!4VT98C4* ;9;z#@ H/#6ǫჇD$8/3q.@ fpݲe2fKWM*5m&,룂\96ЅwJ5<^*)-.*M 79mt'@Xxd옊F"(%44|d#U*ծ]SpNid"@cc?uV)v?l޼yQsq0``bJ@1?p p`4WW_@negg6loouF([oE 1q{Lގ6jahI)@L$<3:1[pЇ`Wb6?^ګB rJI;ťZ5L `O`S8.o߿׽5Uo'ͷ~ >$J%kԪ1ƊPF6d@ =cD 2FQ.uRDxWzF\$R7ed$b p oÿ>[o{aJ$e c`כ h(@L{,%01\ E¡}+5k 0P ⮭I\?p*AP_nEHO^x7OBeeE~A.\~FwF@ `RC 69Ct:Y'~&q?>j fQDTh4xd:?_= .D @1vKTp(H%1QlHTl)8i" 1=)(]gzk'_?W~%motҰoﶶXC@0[DWs0tETVqg00F h:& @QqCdzY?̙?ohu{ÍV@ brVVБثUfa(TKWW;dh'x.i"\&t"iTD")"߳@dc,z8UT}ô'iu^~u_Ɇn8sD2f$&.ʺqڕ[klHN^f="Xt?ݽli?k,M?A `UڝQ"RuQ/;(P5@%BOV2j/?/(/+VT8NYh [8H,oegB MH㯼D2hq6߲nVsjN9D tES%sYvH̳/thmn..*pp͝`bWWݳϼ$eyf浼b.n{SJH QT`%:%H$Ɛ0 w7ZU\r~NY|=d"d&ti8D@ 'sO3bo+r"CÌQ2xzZ @ f43GD cbJZ @ f"cX4 3CQ@LDO@ 31g,L[@ D l`D&)@LZ>h /g<@ fZ<<@ itD"b1(atg E Ĥ2"j%E@ )`2鷇@ 3"#E Ĕq(@  :&jTA&VPP'@ 䉨,\]t/"$Sud0y":>-d.Z1@ ;qQE @<@ 1]uU=CRT*ɆRT*eqE6S{G*ࠨNGDu$ 0ᖔK\bٌƐTӱo׭D-/ *G(X;RyU |PXxt||gN5 ʖ57՗0L&`0D~ BB#lw;&**dͺ_;;~WpCnw|cO:q.oD ϝqw9JNYl  X@ `>v/Yxɪ4gJe\\E˵uZ><,/.g0sU*J*+ȿW]MR" v9UEyVD,ۜh4>'*@. Ȝa5KԄ+s.Z7,H/?X;{veFsC.-YŲ̸ּfEW@wY,=OD3 GHv|˵#wAqpp9w$ }ߏ 5%%%%@Ytaij6\(ApӺ}4@{{{WWWHHib2F@$aN;;; Aeee......SۥPwww N sL&A1XYY %%% #00К]0:::tn\./--uvvMQ zJb#Oxzzk4jBxibx F'vus#bL& 4sU*UtFKss׬1`y rvB+KSO2|wǟw: V  b5pqAVu[7Wq>c漼<@d2rH$2_*D~L˖-k6++v֬Yz999+WPH$---c=ˋ薨Ts8OP(˗kE ɗ"X\QQ5zUCtttx vlL\~ɼ? Ɂ"49"T*f SN577 4j:--MV?T}AQ(QQQHDGDŽߺ~ ybXѐ\VymY3j5&Jh**7o\lOAiKdp\.+,=>CRIUeq$f~@R_y-xH'x;1 J[ j:c`g”MHKKcCTFjdd$Jr_YYYz" m \|ygmذAODkjjr)D"/^xl2A:}mcGuKLLVT?|w<O,;;0=}U*,kr|ɳg6448n~aaaffr*RHڴiܜ?qh@@?֒HGumIIImm{zzFjE… ƎՍTDXj?|ɦVX[ɓ)))5tin}}n߿XtiHH ۷ot򎊊˨/Y|g$˩u\N慇8^^l%KDG'ڠZ<z.,W7w 4]) c3N k0]D.;B+\*3\al~åfX> sL[[huuT*;w`,\***uG?==]Ҏ'}}}AZ`ATT 00055Μ9[A*&L>;!48..Ny!]8(Iyyg&;;{䉤h8#[Tfee("##Gjr@s.-- Qz++Kog;|wϲ;d2\.e ŰGw=O#ZVZXZR) {Ra0Ey72./[.0(^8R @bi+Jep@u2`!Zlhhhnn^j~SNgϞ%7HR/"N0^rpkǎ~$/:A444\xQP$$$w+rҥK4M/DEKcc#*DG"lڴ۷sxBrj644hDRX]㻨ðX+bji#rӦM' dadАS{{{@JVWWGR FAAOOh z1ȸ\]]NnTʖFcxww[T&b,B8ySGvy min|,D2}T*3LhjQl\^|-žΰh{ A:FEEŃ!_~ywYEv6C5Ê0V@rE,R҂- \APssʕ+@VkUX,VJJ 2篽zzz" uDNNNnnNeXW\0lڵ(Jg֭NNNd}Du֍|-Z 1U|MMJuJ$"/QP455m? IDATx3)u\=<<6mdooO~g2Qv~~~#GĉVx6 ]U7oެ",[`zhu23bbxN\vHGG6gN( N$%-ɹ!vV`pP133Eˏl!J {z:cF20,^Jk]"Kt7=q;Ba<8W#<_wu]OF#$ 9EŋRi```uuuLLLQQQiiի rWUUiΝ;vWWX! Zxxx%$$@ffkڜׯ_ókYzc029,,אC 233%^7Jt#luEƆ| Vcxxj:006l`0DT~V(W800JRY,RT 翬,00ҥKvvvW2Cpdň?qWrsoT'/\G3 K MJ#Furr I+店BBB"+*^QW;[d22.fewݽ1M9Nc .Ƣ;Կn|w lٰDL3QՍnnn4ڵkIIIvvv...iiiϟ_lA{Be2P(:S @I'P($3 rBǏkʴRa֭|ݡ'|rd,k8D"9{ZNJJ6݂F1NnkVUU⾾gϒؽ{py/ȝk&p._ד~J͹AP7mzԘ IKt/4Ktlj1?\6X8|] i%ތJ(5>w#ouqr;s͟~ITΛ71Bd@ĕ+W:k{`Sb 996??_,3̶6wwwkGk?D"iooonn0,"""44#??Ν;^^^#{…^ϟ?/ݏh4R+W޹s'&&F7cQee, 222L-[ɾ5iLoժU>>>>44MMMg Ә*pK&53X\q:qNk`=?s+cP,Zj#=` j+[/Z 6t=O`뫋na9åh7:x32{m릕Ec#m2E˥X˃fhb%Znmm&_<Jfggl޼988$&&i#Ay+|̝;b(:6V'4iNNNN</44Dk֬ыp%%%yyy7o#ʕ+K. )qH8=vuu-2V?3s#Lf:˗/%<ͮt7nxl6[Ѥ544p\`@ .\P(uOS[nx/nذΝ;*jd$=-Ȓh&c]:::@ь4 Τ/${駟(.nyGcLccB8NZ=et #?LaѿY,-zh A23N7mu着J~1T*>q~JPPi)65]|fhHaNmlL+M*Ɔ`ȸ%kTjUEyquUi}} ALܸ9!wwVV ,`7bUTd0͌PP9U쉣X /BN#x/Nx\77իW <Rd8+lٲNdff.[TͳgR(=_\?i=׮V(JxxxnnnooottDΈq|J_f/ag@HHR),,());ڸq8=S3=nj:@yDP[[k C֬YC~233qOIIauuuʼnvzzJZ`q&9sa???$f}smx |%PD7n~",<0 _SJJϟ;h֭48;w stz҂I /&v?sN͎O"y~ҒٷVdg?jE92rn'PM ]~/%h)!qmccc"뛣# # H9OTjHu]$!!!dℒhy<d 9 F#+cXnyiZp9ZETTt } ɴWL}:+XlE XH$LF~ /nm9*N|ZZk(J[[[PXRR۫h켽===UXX斒"Ν;:V5MLL5­[HAO(6#hmmioo'n]pP.\ʊ`>ٺz{{GfҢGdccc2$'''>OW 6%"J R qq1[\Ff2qWACB#G#բTO@ "w El[<=`[{ضmhnnXb)FZ@kђQ0OWCCÍ78BHOOwvvd @ Vxݴ4ggGw|\~ڵ9sH$ ̙sرk׮MD`&Z2AtttXX{D>ɬY6l`\,!Ɍ˗/'>,96l.tQXv욚c-CopYYYPPvD",s/Л}͝;wi!KԨ.s2CJb?x/ؚ(p`Uo I&qB:v ZaH8[2(yfB1i@Td2Hxbdb!{hlz+6h+#<&Ma}+$:T%~;Xq?<zi%p8>R`U#ڄ[gW%;T*a4C/_\QQd27nhooooouᔔ!FsZ>|r///E"Q}}vY섄Fc_T*!ID"/1V'`p18]P(w'"ΫBP.&YVVV\\L.hmz\{RQ^8lz6FZ1$7IDP M;Sa}4M5ù2b3tIhi W,h4\.W@$ݹzuݹ퍍QQQ^^^d|iiiBllիW/_f~p"Gc2yu0 KLL3gEkjj\\\LݘP(ӼƉرcB0J㸙룙ðs0̘tr$Ν# ͐C'!!!&&,//ĉdI a\W|`eOonK0֢UHcPб3<̬i@0n1d,onXl enu'6c  Ԧ #Fy[UUG.ܬhlllݻ βZuVA"4779$ g͚;wxxZ J q2Vي}I}}8[9s)//ooo3g$,ڊ8_QTjA:bbb&gP$%zq%%%=== ,~zN]:訝'01Dt*S0u"@ ̨L3)n\@j Ct$PbNN )(@<Ý;0)(@<ԌQkHʫv.C6`%j\\&@@ ҒLW9::bw5gG\x̱ZZN2L:da;0(l9T1[KDݍJz{~:|/JU-vU 'a;v>aT*;@d100CQ I v>#LȶE iZ4?LsPPXEEaAAaϝ=\\zgxNAn d񌘡stޱ韎?_x+OQ(aL&kN|HfW7ggk eT]=74$W8eN.#MuўNprr!+‚[|'`H*Iz,..~ewCR&|&ǻ}Y(@@ 3ݹcU\OOoШ5gNVFΞSZRPRic4% hHprr%ˇkӣc>WT%.XLH.vpPL&l*JW 鈟6@ f&TRT{z h4zuuUj+fN5붱6#OyY)hmmtq岎V)|wOrΞo=7/Yd/TMoR;%@J{GN`1aT8"Čeb-=Z_PS['LJZ?wAEy1y4,< 4W#b'^z &UQ^|q2%*K1Y677w:at#ߘqNݒښӧ'?vnc))(@d5*U}}uEEqCC p {Ͷٴ1prr;o! quu?}ȥg\#J4h4jHfs<.[sJ27BݼѻfceZKTDbRD ~{yf$cDjXmdW̼|WW8wz**@1P $wJn^(4WWW7w뫋6rǖFoڴًms7ʸ~)Kg1 /.b3?wEt2:;2Yl I[Н+Wݽ $AasL&k˶gN={[#U![@41k݆Gs{z:3_"W0i meFj%j"E 鎹e*Kwνp$9TTbѨ:H5 s=NN.T[}?eɚhayn MYFVUTWUWc;wΜwλC^!!W ,Rd$T*Y`r!5D GU?}ܨѨ9.O@{\tݹMu-- 1~Ad<<"#-K*V;;|Cq IDAT._>mg /6v9c]m%N II)aaTdLW*Ձo>v֭[2LܰPM ]aEMr5Ǔ# J 8Nttg.[.J}}})60 _X i$Aݦtwښ:;ZL'@KWgۀ?d۪tGaymM%Ah8,o&d0$$rz{{{ #r^@0JW*ښ :ANB5zW19-@x{a6oLю=:+Vx{{;vLZ4˗/7o޿oP`0GfffMtL&. 2;x QdtAsVi\fɘ̼yJJJtK233_|Ž{n޼Y\ wiiiOdffVUU_^zTs;vlQ;;˗kwoܸSTZ}ڵH[[C`3Bq∈]vJb9::hdzRXXf͚A &*K&g^3ψXlه~8W3m,;wVDJt%Ki`````$vhht+}}}{vrrɹ~_Wi׮]Ooܸfϙ3'===55… 'LRhYĚ8u_P(/2x===--͠!{;vСCg맜<}tqq37oDgϞ-**o~f&b3|Ivv-[^u**븸I1{k}3,T;p܃w=s E EtzV)h'O z!牝4{ϟ8qg;~رH]Bq ܶogff\r{3Si8agI_:u}Znnnu0 {'333O@u֑;))) ,e2ٳ>]nVKbbmvܙK۷oF/dj06dڵ`cck.ժ^}^{mݺu8[e}rBTTT@^^X,&K]\\LND}}=<8d@CCFka]L?1Sٚh4MMMwDٳxyy΄z 6V{.]d:8n߾7|r]_ZlQ:og[[[uTUUɓ'E蘒b N Egg';$gjU-9tv{ET.+Jΐ.J%fhឈsڽGд$v1m]OO/Ӳ֚p*s~_۷g}7===x c^׿ۧlٲ$t:I(?vӦMV钖ٳgkce2,K& k r9h4=Ĕ`;PPJYyo;ˍ۳gOBB믿`0,VP(**(,Z駟ꫯ]&>SۼonɌΝ%((H(Dq3%>`S^^Fn=|nyČᄇjXA-ȵNo]vsI(ősÆ pKLL gkdNکP-!rbjM]љ1z .eOW3Ժ0FC A.]zG5_VV /@zɐ~IRi "H' 2%&E@qqe'eTbǍv dO3j郝8/^lq#kFP#Gر#//o֭N"IehѢ>LV\.t"@AA*HڻzxxcC̝;رcq1[[1=B &|`14$---pq '57 !,c7{*w}ײwww^Z.ӟ׿7LMMݶm[bb/3b^;t˗rss aaa111ܹs پқHATA,AѨPcLcb>DcyLI(b *R&E U)ؾpq]vXwڝ9gΜii!o⏘;wŋ_QQQWWxwssss~O3%%/bk׮PTb< D0Vݬ[N"ZQ^RPmlb^XS]]8tҳJ]Cpؗ/FM70lS\+%u֑}·"aVWWcǎunPX\\b||| qD @@ dlvwQaL+|]]fqQՔdL()3NO\95k7K bn1b =Z: QU=.?€9 \ܼ$mP1F4LqO8CCI} X& @ 18>O}X\xQeX:;T$;IWTW޿^Tk``lffilb.vrRQ `dKVJTTnwj&`M?]1d)(@kJDJK `vg/8zGM Хkmmp8D&8H &қ3SCCKo.ū^U彼|++{I$wߜt]=uƆGer;̙) aB Ŀ1Q>ļĄĄCOھ?x"]=f̓⺺v#1ZZڡKV2UTT"s]9`0,'88Nb7ea\.;/7SzHDP}]msssoj$`v ER&%^|}`f%2:b1&"JPCml;3 oB&ӰAյ  fVr+ u _u tŒ'LSy3~%l575zѕ%g1DN$1+w.@w< H I F:iiutt&[ط?iSWP|><J9z4%&ijjN`[7 H@b"0E8sH$+x\t:!XTpɓ6Halbnjjana%PWWs5TTT^ikmNL"33SH$r0cfhXC"E  m5; o].=31 T ͍<w^[G/|]!buuy~~2娨R(%"t.[=_%@ [ @(pƆG@Һ{2SDH$[fDK&yzq=\.g$$d45=u3am2 dCQkY1Ns=@+x\(t33oZ46NeIMIHMIs\Nptr @(ݭ*'n󲳳9i`hlc0eH(jkk<_wWWK8&@7骪@ 1Q>Q1UU.[CS+4ty1u7lcnn\FObY3TԩN^qߌvS22nVVզ'm@(8x۷oݾ}kG4L Y\^ @ /' g:LF':JʲGIwp?ikPQ=IUe)ZNVWvf ǥRixjcw|~ey)Jle=~D~21RPD#\$29W/*(@o2xщ7c2NDtcT~ᇪ'N E p%aĄ؎'L#~32.LMMIOD9lQ~ %ˋ sn.^R_G|mב9xbۿI[{Ydd~][[^MjjjYYYHHښ(w;::ZV]]=((H|ظo>2, }M]bl]TTԠ#<ҥKYYYV4|Ǐ_޽{cbb 2B0EtxHuʹ%m ++JgR%--MVVB3C0$5T{gYGIYy媍 N|y䟳Ξgxa-@ tpp~6)[,|>?""J@MMM{{{{{;"8~~~kI466#;~BB۷7mڤ`xǔ={ddd8;;gff޼y믿jjjVZ~-[D"@@&DcxxxXXXoMLLFoj0KT|qѝ.-;/g8Hqq`޼>˅TUK$utWuӋ23{SRVNb.WZ,wDQKKT }:h`H$$H[n--t+++G%%%]zU!wH'''K.ꪨ@ZZSPP+++%#VVVo[l{%ŋ_;vذay/##cҥ|L|.]klC 6lؐz… 6H>رcR 33Ν;;w*..ɓ'yxx>}?hyy9NC;y桎9ܿLiccSPP:c |ɒ:;;KKK7oldd^TT43G &4c%f/Y3㺓1@Ka92zLϝTbٹ/uww%&ĕu526eqq}d2y]o=rWݤzĴ*A3}&*_ꫲ?YYƋ=zfoڴ wcJlٲ+Wfee%SN=p0XZZܹ_bp8555A(/6䵼ypB`0IIIV۬l۶m۷oWD⨜܌o(RrqqGf!QUUuUUu Hŀ޹- ihj/Ḙ%K8\vzZ*!>w>qvj,V'F+Cԃ?nHLsptCd֕[>hQOHTSS{999˃bll,&==7ܷoߢE$m߾=>>~ @$?˗'ǎSUUMNN>zyRv풌xd2p8gϞݍ+K~~d|$I# ~믿.]~dIddW\D?SPjjj7nҿR*LŽ NDBY>f $at#L$j=XyO0 p * 0ɯIL0LRJ1&z% 2b-[VWW:th^QSS7ٍwy6mڵk߮ 7o<)ǷqٳgS(?P͛7qVIIi֭bGTNKKoCCCGeJbnԑDϲ^#bg޺A+-]njH ؗ/¾u*zԱLlxJɒR W.\ Yd cj_˪^^^|F@AALDƍGINN_oǒ%틊JMMΥRy<ӧ ƪU:dee%v~X[[N#a<xye&%\l3oR*6{{@[[ɿT\ "i0P\M$"7';]Wim'ڰn}2'p  þy5;:۷y1---E;vv 7o־[֭oO:p*++g!1V"ZYY$瀋Z wekL<_s(y L޶SUDF{g|o8;BqSPLbB\r5Uc +6 Сa؍7>3Hdiiy>t9555{ e0|ɻᄏw={P0={ɓ'Ϟ=rJ5)N/r8?Yg@ V--)+d˝=p]OҔH$gg(-a``5u 1?Go&/X/).knjtu+A%n"pϚ5k؃ϟ8t萳w}wW_}u׮]xL(Y>ȑ#1=k֬;w߿NG/uppONN_nJ"8zj3Ls )fff>chhm۶!XΛlgsukea av JH fki Ji@p#>&֍Y;qTciIgCãĄ+Zx3zZZܪnogl'Ngg={x<>@b`XW^ߛϟ/.?77z׮]˖-"(66/r_3ի~嗢?/l۷EFF޸q9++F,SNuuu[ZZde;wŋ_QQQWWxwsssss!qD )UI "܊l'](^z1-5KYY QM峫nRQQ J[ks+>?33D".] ACD$C2q a|>}“ ˦򯫫۱cGqqu# X,_|#R`OO3gDFFn߾` Ez֭袢"''={HF 6o駟ϙ3g]a$0̃;w.''Μ9sD~amm-yЍ"}WQQQ111666'21G"*s__vx LM8tUGa:CH_^V=C<&|TGYY900000\*|hhh_3f077 ~P(SL4󀦦fxxʕ+ \]}V<HA":@҉@  $/LI)@L&Nؕϡt@ &HDpCb3D!1P"/>@ q`":vSD@l<Q$i/dl"Ąd\sG/@ /JD͊/~u/E+@S"1LFADc(M7L@xPp5vB bkr=./7]EUz*Yv3H}Bߌ>qR\\>r'O!;U=@ ^Q^ELݿ_!<2roBRmC'7=nXRY[[#.]QC07$kU@8?g#=@KsӥQg 1NCK4/7 U7/K9I[Kc#qck=uaAN.sKr3'.^8x*33KPJ[މ_\WZ,wDQKK|PT Zwa E  蒥kewӕz"0oz̹Dif~H27ECCkS'-(Q++2&joo>|> :;a,V" [@ DTP(T遒UUZZtt& `nn_?imyvGǓ'̐44VިvvX6Lsϟķ+I*2A(b`C C $By9%$N fDo_p#ّ'gvuj%|%b$2DBpb[yd[[?ꄇQB`rٳP(D4mB(!'wrCl;wD;==]^*rR44\|IdD&[yܶ7C;{ǧ>(ν,pI_ª+1!^Ғؘk2mo Iz&}}g xxELhH$*9+K4V|OwTazjTI[%eƜWą dkdU557YXNa%o]]-nĖ{RsTUU%a@X& !1!Y+kkq cRPDg+G bcJJN|>H"*.(QL֎@cc0gp0a"47dw"H"Lj<1yNNz[K%'͔pkDb+>T*5Ա7y%}VTܻtAz+^ Yd sHGb\LD E@(8^EZh`hO_r-//QSД *++nhx`KxO$=|suS%*+MbSnA=2Ư fo'Cwwwnn⽊TUU% 뻻-,,H # -r_mA^V}}Tacc}sS4ْew&kh>U>G&I߂D$Ϛ[_Whଢcv UR&%L6c8 loo?… 2^? j_oFGGh4E_niiinnhGJMMUWWK p*+1lmIWWȊhrbFw0YNg/f,V3f %EyMn^~20 B-Q|8Χ~b X&8o?33D".]ݟ 3%: 8ym/^y-[:thԩ[[[7V///oohZuu mJJJcc}dP(LNNvttTSS9+P( SS@;Svmo*Ф;wZj۶m/vny\CC+7>i=[ZR(ՅD&[0lmm-p;&@lmm>yhMߗDP]]r**@PC8+hيuieA踂8p֭۰aH?""J@MMM{{{{{.*jέ ׯ_5k֗_~IV h@ tI٥E;6a)ⳳ,', Y&G2S:yd_\rZhobhdhxf<$%͜_ {@xO?۶mر>w}׮]̯`eeUTT_GIIIW^֖|޽ёNNNRU.]*,,UQQ4xH_\1/ׯw}OJJ~_|+jLqc ⇢H!eݾ4ȼ}KW9{|*j9O_,M.r2o{@|@PRRXv@7woiyYiDG:Lb& Z]r O 4]U_YYYyIr;;Q W^/0  |ɓ'_o۷ٹsidqY&..TU}}}ttTU]]ŷ<ԩSӧOK.Wѹ cŊ%%%HDy蓶g?5&1 ,]#yvQanRP3mBUU+֟=sJ9}}#5u 蓘ffn>p9Le=*:u`7)#feEi}]mzZҦ7 x;[L o?.dъ!K{?pTDT(ܽ{l3UUo&((諯z뭷}]ccc6~~~ҥK555%.^֭^6fKjkkw=Wk4447%$$ϙ3gѢE{[=zӧwuCCӧ322455O|Zp}W;::.\Ǜ,]G0 bWD:4G@ XXN֛1#O7 ro?}aee+Dss+δYv0 IDATvS$S.]I* J2*w 4)6Sl(>?ZZ: .y(T*F`GI(-++;0F&;v쨯O(޽{,X06@pss;tЉ'v%)aÆ .\ذaرcRcfff޹sgΝYYY0y䠠 <~nܸ/000%%oihhغ7#XCCCxx۟ѣm۶YYYbehѢ΃[n鞞W\u֏?(/@7hQeID5qqvq*404$UUirǡӕ:1}(g'Mҟ4I~N"Pv~<Ĩ&;(;v066>vTYztݽ~g???\]ѣl6{ӦM8˖-[reVV^2uZ[[?nnn@^usss܎_z?d}}}8sLWWך5k Νᡣg߾} ȑ#x7|!Q5B{="8mڴ{?&D ^Cw )4~S!G3ܹsl5kNQg=<<w\LL̷~+^ {?Y\_,KSSScc# EL8z\E{{g}}vtСӧOegg/^6_>`(wA*aNNIϘ1ɓB>q vZkk+tww_t &O, _y|OԊ+ƃE Fui۶mãR믿޵kWlle|}}_`޾1~:/vqqILL===) Fqqq3 6,]а.99ĉxJ166ްañc^u܇M2Eg}bnݺd2WZ51&+D-???qܦ111111u斑# X,_|#Bpp3g"##o`0‚^G''~ɓ)))~~~?Sgggzz >\SSSZZՅ2C}Ν[[7|S7011rJRRպud߿K.]~IFeX"b KzK(Y ^{M$\2$$Fn3--͛7EEE9r&_\iӦM'Q8߿_EE%""B]]ðҥKϟ6[lH$҂ ,X0@ccび_!_?qGwz=96ælbQVV ,//ڞ:gf̘annM6ihhvڪU5Hxҥ%^F ם+Ôݡ؆ȎD aZٓJ̘1cs=H$ȝxPmm-abG7k#3Z_c&:>5Wq81bP(H4ፌΝ{ڵ~>}z@ qM\9y(lWb)U &|J8EN_a|>(IHHvZyymppOH$ 2"r5lB>sLH-VWKLJ[X@ٽb D+>;]d899]R}-'hkI?VZR󏼩WS|[:@ &":PGz  L @~-˦7?PUU_$UE4.[nG_>3cM&b.E(<0YNꪲ;R}5DwJml +3(?tJM-HJzb7)*ܸ}/@  ͈sʊ6TI~3=_QVm]YYjg,nPSS FFf-&ITʳ=-͏1Ldhh".QвsPФxaA^f|eʰ* uⰳ{r@I$ioo ,V'LL^t2ĴD?ё#~41GD[mnjJKN sd7=fR\G{ۢU|H$y'm-L>>O"'1 % {@E&;Ǎ}WeEdخJQqnnf{i~rX<%D" lmJ Z(@ aZEwxMҿtz .d;{Aߌ@ K;Iq@$>s0ÚIzdr9tww ,V@TUљs|PHR55j޿WZr놛LTdXGa᝴D3.!TSXږF (T*7da9eꍲɍؖ+r SD *"!xޒԄքz+t;'"E9P~ ^YP(b+XL|l\G7JJILâ\nQ~vfFӕz&xeoKW/k9G_ikJoa0TESPI;ahhhNbH@& &@ 8d c//._:-YA%& Uy }fTUox>k+_322}P]r+^ȹ9fMҗ1+3Ũ~5׽Iڍ2+`>~nz TAjm ^x" 54[6H 9p#V8PvV˙>s԰"uo<.@ Ns577fL,Q7C! uoq_WUkz`c@e-+{}^6F@ TTTW܀NKMjlg+3THDAК(@f`Qㆎ6W9s>3}ׂM|~qQ.YJ5J kO(,Yz>x000^FWRyPUv^1dz?kn}};vVSp@("٭boEB e~ L*:TyiI"`*1M@~#Smમ%ՠu%}%dZhyCIdrnNFRUhfnkjjZZ:VVo*[~3# M2oI@Ee7M3)E F |>OpH$ "/"B_#xX~q[kvoJkmi Pa=TS026jz+H$U?GQa."y;61 {~kK0ۙ"?q\ab|C h4ڄQDj:!}C4(?x<ADR_,`l9a~GL"&:X.ܭdh Q@ b":l9R]|xn $cI!$yfױ;%%%//oHX,Ta}}}EEDwI!ᡰ;w$Z`Q?bqK. Tog\.W.ׯO{%Ktuu cb3ȶa3bx9bŊ233|Y~2p>SYPALfxxxDDDbbyrU)))w>qℋ&@ ^Ȁ 9 _=$XBu񦦦m۶JAK'-B?XPPd2cbbNM4I}yYq .9rܹsϟuN:UgϞUzTڣG//}U|xРA/^LMM]zH$8.<ΪKdQ1$$QiӝLt.QPTT2mڴ3f0 믿Κ5kԩS?##c*\zUv///YܹSGGgRv;vܳgON<<޺uk…BuPP',X`ʔ)8::޽{W/>E;wɓÆ k3g΢Elٲ}vH_7tg#R 0AAlV֭[322%%%G;v֯_?k,a֮]⒒Ҳe͛76lÆ |K%;yЊOxb߾}]tQx*99yݺ[߽{裏Ə?~xggg=z7}]}m|PajE={SXXأG8UU!z9ŰE5tjo˖-#FسgOgmVO8񫯾rqqٿ!C*fddvڟ9??޼y_~ebb>...>>>[lTxСC0m4 /_.^aaaSNU驓 >ⰰoߟ?&%%]vĈr>s)))?Ӹq>ݻw 3d7oa`Ç);v$&&._\QիW-[uڥKϟ@||< < /^8p~BBرc7|==:UVe3+.kCӱ|ċJ0ӍyI99Y̋/-ZHxBʕ+ Q!۲8'<;p~!44tvvv 4>~X$ Fv Z糲0D5D2JB$f*BP SzQqJp|U!:s9M/,N$6L1G+(C`I|G%-+gЛ0ͅ׿fXwIfiy[XXYGk׮l(gggw}ǁg[t|RS~y@~~~ W^vrr5kL8[~SSSfBBΝ;ǎ8N*#|144 Zi230ԡ\z鈀^rch\.b3hL8\x y֥>n7ϔMH/'D\*^LӔN!Dnra(Ldaҧa;ّI>:Ziz럪0 3jԨ>}(F!;k֬۷gggoܸ̬]tҥK巬^zϞ=.]҄YTw} 0K.Nll,ϗ2$44tIIIaaa>>>z^BBl۶MRvɁ7m B+_zչsg[['Odddxxx?qqq੊*JiJJ qK8w1 fʧbOr'ߝx]0Vt/_^cf1/_RorTȺK(L]i33_QUU{hV1@QI[7PTݡC.,^X"BwgwpqqڵkXX0bO>K,EЦ˷ Ell,^$eVVjK.'N[nt}OOOFZ|ndݾvI&d0nTfK/ssP%|s*_J)xߩ0;S@i} L\%T_U@ҨBpv |rPw;*]_OD:03B)fb͈Ps B)=}+xo۶mddܹsWX!VW^sҥKe+9M这o"ċyNR Xe̬>vN*FLg( TkĄٳG"oٳ2dOOϽ{޽>300?~A:vذW!WWן~)88ŋ>>>KNNNddlÇo۶-!!lݺU/_qƙ3g:tGV oߎwvv2eʰaWi 믿"M6mҤIx 75ZD[ p+4'\\LUǤNd|>8OoKIJ>l-^lL"J`rO!tOs^\,kΕ};څ1/d7]d0|, D ÃWN>3|јׇ6%+IyeBp}Cx̙3y0a{'s[ܹsNgϞ۷@ ӧW6.WЫW^zo ֭344ܹs14//>|phh_|!cii9Zmĉ'Nz+=|Q===ӧ^Rq BjRdˤf7K6DkFVKx - r;/Srf+s>]>6)/i:&Z\uEs=xx3t7:҄t!4H7(C@ KH \ ٠k)'-mߝ2eʨQN[gTԪUm۶iӦ:Xbcce?p@QLӤ8qbĉ,BÇeݨ!jyR0Z2@'Ʃ%SCϼ|1f,nMݞy-w љ>B/t(@\:=ZCq9lX p;KASH'U),Ti#mF.4䏉"kfZ|&B qď?ػwoJiDDDHHȑ#ew&GH!QʅVM* P?戍> ^{xTsC*}O&P׹L*P~t\N%x^Rߍ]~ۙ,ɟ{ˏxKh΄ qe_އec`M_ t҂Jt ]]ݒGY|׉'N:ejjڡC 6tW3@òX,ncj"FzW0+s?ǥsLUVg >NSJ\/h jc<'i>ڊ:3:"xϤ3ˍέN7^z;3SOxax%ӁIɤ(?DQ#Tqj3f̘1cTR$JB.uRv\x0=1m/OsyWu =uE0\nA (]Vp.ˉLPl>U X`žL_v0#DB Sq`PVH>W ;}3.TaLE0Ǚf%ۗTڹ!2lNOs- !evqN(L@*mmpeFt`->^Uƚ(B5evܚ08mےD{SX{hr/lꞌ{ ޚȤ-^su4%@h7Ӌ)\}gV We f!'[ZlmfX|Lf>z/XELeu%d 9/I Mf]ȦK7š<,!ތBIn҃Erf ~<)miDFugn¹Ua ӵ J,!PL@|:]vD"F%}m]$.lD/vJ/vhz*J95# f!Q&2V͉G  jȍ d.*R89.G4N^ +T#=[%X[3ڒEq3ԅq=39mK>fY›G'sr&*WG8SX(.G*#=Y'kР*=K1._ z2z<-NC =z;z{Pz*~?uMRvҊtYGPIsGmKB5^UV$oYlE_6#:?#OW: u,Q"!9D+o!R씷(GBiCMs Ba%D7ZM T!ԔչOnQ9Z=!T=D9Z((B5Ir!ZRw6|Vs!&MqQk6s! ha"PSRAx9Gus!5XT|"b"PӠeT?j*!T7DkY9QBL cR!E!mVM`OjrG)(Bi/ ME91Y`.Bizh$lE!T_7宷(`"֩Y)ToQM(E!mR>D9z[DI(F)Bi75Ti/GB5VxO ۏu-@ ޹2B5:5HATR "P@! j` Ns! !ZU4Wmj =s! ԓ^|xԩ͛7n޼m۶O8A.sōW))wgPvӊ(Fm +Sr9^Nь2-D]Y7PDHIҕ+WVRzmK,ٰaŋnj3m4> ,\ti̙*:ٍ13Ts:;hoC|*sʩ*RIjtuuO>>6mڬYfΝ:tCBB,‡O4ƦN%mRf;aiX|i~6^NLKȜܓ1'^ IV4g[ʧJu>Ʌ}?)f͚5xVZCBBBCC-[&G*VVVGϳP O|ӅY [.qISr>5UɅq }l{EmCKMil͹?I TPzw|Ѷmzyy @2!Ag̙#t0i$===CCխZ/-ȋ U\evb>mGl^tIyD>rj,z`!NǏ={& ,ۢE k׌N \bnn|]qׯ@"H$W ߴzYObc9'wVs;;!!9Re˖ iO8.l400h߾ÇҨ(OOO())ٻw;w>c yyyk֬Q8-C+Dm {`gFGE%v\`P'mK<ō`L Ȯ<tmEڶ$Y׎w+{mTJ҈f:ZA2}VriX<]jp5 QM)u4i.)B)h׮]AAA\\{@~̭mllSõ6Nv t/=ǩt8-|\L{k61GVF{kp-5ucVԩ\~-[tttTxT8HtttwS٫ᦹ,0)H4Y, ! +\džt"јFsE!U[j햖'N}ӕ8Ο?y{i뇽 rYX?(7نx+R{32g3ԕqX*B@azM6@^<%%ǾC,ljk8eXJ?ωqB(LPv(;3C][r!Քr jRZ!5ssscY6::zmڴQɓ'H{Zas8l+b5ڜri֌Kr]{Ք1Y] .BHd,..7nuʕ+Tͭe˖|;wTܳy/뭤EH航'ۖx׉3l$џ\cXE!4QJ322222`޽^w;vڵo߾r 8pյb]… G-L.lV#Tz!;0-΋\16dbs,2;s$|^MTZ=N"LPڅwWW1cܽ{722r֭~֭ݳgÇG%={vV6AR;DL$ݷ?IDAT^8-qhIBbJ*> 놱4-p6"ޮyK,655ꑹ_!!!a˖-{ٳ/_\l6V4{Y#I/VOǷ2w6x"Iifm%iBc=7BD`q4W S'<BOE͹*XCU@넺MBH D¥} l'HD=~4!5FdM&6ތ!զ9fWqomH%_'h#R&_SQZ 7O͸2!F؂ ^՞j5Bj!*׼BDDHv}T[Z)#PK BHK3iHQ["jӘ[w@њR}a"Pt-͇ϞhM檖/B!z $YbX-Z1CBHݿy*r$y<ý[v-,Ltt{ꅟ/B5&IIi.:u:SP07"IENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/12.png0000644000175000017500000033317314212620632020556 0ustar fengfengPNG  IHDR pHYs+ IDATxieu&vΉ-ʬUMEZ#͑eK{Ð6``-??6Fa00HXD"٤lV^Y[qUoѬ|ݸq#w[5ff{fW!_7D$%!#–gYn e*6D,\9(Tojy C׬ڬF;fNBu] u{ʕ/}KO?˗_3ڬ_666G{^$YB$Y]zWW?xdfm6'?ɟ9{lb9$ ZSTڬ/O>9??/ȕe1x¶>O fmf/I??~8nooWU%lgvYl~~p.u ˗'rƶfmf/gg>sܹ,(fW~e[6kگZk׊x?O26kkv{}}}mmyEQF;woC$$_g5k6kߣj.\- ItՇ~ƍ.]L&Џ _I~gmfoh[__ꩧN>;O=;t_!@xgmfo|;wO<$w$Ixsνo._B ِ sfmf#j<\kd_E5uy<γn녗^}gOo=}Go@|[3Io 0uUUU:buu)qz-tn@/<}k׮|W=|/CGy֭݅Q0m'No|7r1ńc3i)#I|}~}U !0b>ylǛZmlqsЃ/& U h!~ Y /Û88]plvy ($uW1|4Czo__L&yAtdAx:&"B@BȀ$@ (7D`7Dp 0 7j3"F`14Y0"! }a l K1' ʀA!T<( ]oUaiS$HUUeYBUUTF¢,FI%bxr<G%ti;)WoZxRKQT֗._i_m>//׈duX5!ɤ "Y DD+u) ! #ɢ R1DDb뜛1 Կ"# )("&0#GF:@fD֟#"CE  t&3yJ@) F9˲Y+ZN49 Q!lqyVxֶ;'?z??UU׵s%~fsIjR/(qk44ɿkv}ξڅs [ 0D3S fr2|3B H$W 3K @c85hFԊ!Peb 0b 8 B%b9BhӤ`~sC*l 9%TRnH:Dfe@Nҝr2.+iQ i{QBx?&yŢGPB̃k,PEfpHW)uxh"famr8F{8 R$ ,N3Z9 1i5(#l O` A&5h@ bLK8;LL8}D2L -߈Ph J,51{1/M Rl  LdZ%hƸBPM&uaH$ I U]1vUVe+VkPPc#eY4+r2Ov;x8I!䮕)3Iʀ|b˘IXYN&x?[p8D777צ69,Kei6?^O,䒓k\[__9[>uK&dH V-%̆M) `I YXA R@8(9`"8HSRVslHSŬ7f:l$ %z$VF)"hn# `$"'H AjM(>XF,Љ̌)@0aO4ԗThBulC#M4rF%3d1 Lq.`a!%%6'ό\!:D5 80MNHDJPkK+B| Q4hqa#E |@ 8P&' Jʪ%ˉzV0P#\1eiz/dzh~x9\]DHУk< Oe9q{YYNq2vPՓY+txxrGm<69]!aaAjDdzcb kN[ٔ:M>YKBP^ HT1"Zb@ =pmQ 9y83bâ9 (ni&PNFi}(sI]{"u:|8BgYnU1bRqƣq~ii'Zy4)lQFnkcnN)CT!Y_f Eb1Q*iSq !(E 1"ʡJA9Cba/d=M'7ɘڇ,ɥiJ<_ZZjwxRݻ;ǞQ}f9Cº]$4M:npuŤuv[y^ZjG刵A,!sXbXj-hmxh! {A`(_Ū-J=#^U(0V,#p'MS@DHn ^4Bsu7PksZҐ)?nҝ&6 s+)1!D(J½lIQ KbDA 3蕚'ŘٓKh^ 4Mv{h< $p$b\U!i$?1"4EZ'pG6 ̚8#Iu"3Qk'R)4m[g A6Nǔlh$DDNr!FtBQIj̑7_/zl"@p ȁ!"&,g3ȈԲ`raAfj RD fHh# X4a<u(qdU0:RKR=jh@-"JbP-H'֤.WBt}(Głٔ!1:+P$82(3o |$կUQWE+Oj^QL8x,rDdw8 \~riumgp0z׊: @)&i-i:Uw|KVu_ M{93}~ fy^_WoPp[W/]xwL? IѠ BLJ qeLL= SPN$qC@ԓBD{ (T5rAY npX&ISfR()NXʟ(Өz{TkXĠy [X2FH|HTʹX\qDYݩ>@-H !2c@ٻL A:Xf Az[2V;6#(#e1,oަ* ! }9V٧` I)f=L P :1̴d"8䣕6a F@V*GY+1!,i 4qNkb>:>ʲ@eI^+]:^'zΤ_Wu{?z_RWVhbG3v`Jl5w"uM M\9ר!lIM& GQKl5iSF1# x]%2#MKMĩ+ d S54lJS AB9bJIjԉQ+K@Nh#8Q{T}F3.403z>Ue-A.!1b–IFTVc5&ݳ=>-AJ92̱ \TAu1>,8&2H@:N!tc =;1/Fl=ie˪$&hT ;(qI IBP]y$蜃e) v;ɕoϵNWW>Cg3}勲&GQRcrꥅ4Aya 4*y\LB99>>[~p{B VCtP bEpPAʏnCt^=ŝVrz*&U 1!rI!zCm(K9%k$q**BEtO,{+(KtYCPϫP6iKX##0@ C >Akܢm1e"&1ͯ'tr3`Q%p8`Y(0x$̡A"@ τ,aI&5uDơCwF"mP0=D P't۱a8VDM/ ̞=B0D  *cn *jࢎa`n\d܁JɃ/zR!xV޷Vɲ4MSG.qy9)Euֶ#:8>vƅwn'Udyi"bON۽_aQVo>o/ܽ{8̘2\_lXJ֋^rnGԅ}>jPxϔōD"; u$XiTduJjh>*M#D *9$pڢD[y@A1ȠĐ(h 9T4!KñX⑻D"@'jc!=CE!E[ǩq3a%HJ5h,)Q5II} O ^ /s-^AVԙMNTdb"JDr`C  FTZx)t"bF%%J!%tmH]`AYI̗ A7+`L6bAx JX U'L٢R f&45P1 k@T"$ IQ+wf U99WTU(30'f~Q9]y\T[s+%x+[[wo믭;=pReZ=p+|Q^zc?<%'Eq>v&}SԊh aƶ~LGTXx\Y&(1Ә8@[Lو>PNz`JaD9BKslz>XF-JT"d'kZ>)G$}! ٠o~Mvڳ34&$D$Dd04冸0IeOA~'ک*H1I̞Nܷ#X@721#)TBL`d G$IR|U#z8b+*~yId<zd4^YY @:8< ChRNeOk%.J__~{4֋Sm1&֩&cbi#6@x5D EeE+j+dt9- .FmՑTOډ]4uHEHS(;s"#RP$x/OacDd ba$_8`éQ} 0H^cd9ș̒]:0N U,F*S C5RjJЄ%HV)6VҊǤ Ap9bsjj BhM0Δ*ZEQa$lg 0č)!((|1^a&7ܰF@)lwŝIU 3e-9~ߑC"e^BBGwn,˲Jw?6NX;{@pqr%q]NV~xt4vnZ]Z3X!` H̺dǒ~*RAH3<^̈TcPtXVQkrsdX5U(gFAP{1(rZS9@= S5:`oiU=&Йh'"fnpKrՌXUB-7HVIfO.=JXw)EMqX- BP?hԛ 3;+edx$%ºȹ,88>Z_/#t4P,,~99DX0#J*:O]'F~KEC]6Q UÈ׮tbr ؑ zQXʣ{hO5%}G#nbCy"Qpy !b< rhWzà՝Rjir&DUe /:AN÷[sAƅ(Eg58:ReN$QFm4RɢpC檉MMroMHle+*[\m2&ajWa}Z]iPK ͱ^{b:1RY׉K@iU+˲K8[YV:mqQu8?֕N{`4,GLUY}/X^^ǣZZJz=ڼ}FMJu溭n;O4^{m8]Z+K陥ʾmW| j5P =ɤ;0B6KoZq&LAt [J^&P1n!p$óah`Sv-F0b(h6mN#ؓp{{IF*f'q<u'L#hq[8QJVl]gu f t6Y7AC!Ҋ>@ip|w f|28`yL16^&^kSfEؖ\-QrjunPjed,g.&n4i*2&q<OC A9$rss!Mp0lrϜd2K KK B;/u`𨪪Roea^rseמVA`_tpכnnZYY^UDn;Yﮯ?ɨXJrh{eG z%v@035z҅XJ5g2k݈H[H7!lel-(i%pS` QeFaYMjTq%)1LnFEiM7ǣ`I҄brاqY,e1ysTŗZw`<u[<e44 d/2wl@'Q֚Ju*29ŸI C $FHJ% ~\z `Z ʹHu?35 t ^@́0GL)s+qz6LY|`ƤDYLZB<}i[GMd]!2ζؖ-n Ӌd31iQ  TPD^9<򼘌q2tx<Gnoo?M]U!&Ir1iz+}^]^v>gz~鯽Ȟ+s $ 9L૪vsVt~imnw;i4oߺ5?P /]ykG~c> Zn^|ߦ%3IξkNnٞ6`>*5y؜[ɖhv2%B a2H@T(؅BeUAyG4G96oG)ͯ#d;cMcezmlFD-5QfS|B 5m|63hZ~xf$ZȩQ^gײa"qGV1^L`>=PՂ} >^h^ zN![ ԢF4Vl,@R-9{F#%&fQ&oQ&X`nqQv/>|YPWeu1iA;Ud*B 9X!VKIR埾xɁ>wiR7OQIK AsQwFKO@sM̃> `)XV?7BdUR\ ^tZ/ŲW؊ῠ|1n"T o?zUs08`V ,Kd1QUѠ9 & Ʉ(U#"b`k]$oSrDS=Ki%8B0`+ޮ:IIB@45/M.DDU&OtHKA|p{|Mu9Nbna`Z\NFu;w[gϜ<=:|eE;Yrϟ<=b*)gijnc){ZwMșk4\ .'OP&yQңAgBt}X@gV>)F!T bharsݹĹxiUE]>)F~Y~g3+wݳNPWSesn-θ><0%gVڷƁ8I<'<Fv N Ie"`g @s SZdg7hE~䥂1iik -6GD-DPY356̼)hf0^èoScߕ*W8V6!׃D KvS=h, #C&Zx M(QRDwRzȺIHJ~ѳ",;h1ɕE(/XgoiZ9k 2\ZD bl>}XYe 7Ea[00\,*{ n u !H.߄dûJO?)ʗk/,~BTn:$M] GeY9P]K%0dŲ[ {=V{66:?~ĉo<~;!}"6'B4apq {ZҤ cfb .%5Ji0#Ҕ5j ;[`MsYV00֢d tA4RqQtߐ]ƦJ%fLjm&JWPhƀ5JRs!7a/))~ Efz+@z.l+!AȒ#^5`GG׆F7L;T"<[*\ !هS,Z F3xf}[ɨZM>8FftHGA i)@8LN@Y&u]OCS?o^qn`WnO&=s<.kϯ\0}wS['Iz i1_oRc%xt+: R^Xoxm~<4hf̓Xu'M қHI^J$VF4iI1caw0Prݝ(jc8b2 Q+A&I5F,U ZGt;aYfDV\eVJQXxgSƝ=\-Ϩ(J(v8M`,S y@߶aHhSnn^Am#tU0`Zb ] 8STDW| LpZ* ,Z}ݗ_wΓ$ %[HS%eUCR9B*( %R  ft~9ݜN?Z܆=眽Wַ>Yk .eB`iA2ʑƀ 1'iħ@' 6.r#1P/=,__rܨrJQ)ik`4j%~fZ-T=dힾ$;*F)k׮ܻxߨx)]2V^EP; 9TF^lS+ct'xhfsXkĈ@$cE}s%pJVu uQXs8v \rDv֊cw`9=2g#n(^ (>B86r_TD(࠰^9QkQ#yԡ"4~Q h.\8Ty3p<ќ A!*h &)ė܃:CNgdԜqd^VCbMJQtg0.Cet-! ( Qzv$/3YiegqD?,EQܨ]/|r uNGǽ&dQ{Ko|[o=YO7I8kI7)5gyO+(OsP]=̲[k .60yt~U!*cL6$D!,Nf7 $ڷ8ud9z_+İ{DiJ3Q*?LAiGeEj$ΰP&k$g/R m$SOK)hAjbW 4U#ȼU !{=H+XRHRۢ*,-\{Iw:Bv۫RҪ__s2+> [ R˨d) 4'nz2IEÜ8ܩ LjKM~Sx6R-/c) g\R#E0xX x h)=$ȝ{qN>COpyyic}e_/OZSNvˎצG><<;=9fy㣿~nZ&(ѕL 2Ŕ xmu#lse3^zs6:팆f'?_8}ƥB@o @?*!BXc d3%BVj f㰎/|XP-Pc:BᅍMdBҢtK"#ZFA:9n9h83,L!`]ZAkط! |1EmksAiyPJ=[\!E`& e  rxaF#L xz7ca0B*" #K)_DPa@\/jPN-@XZn`^Xb1jvU8KY|ޅB` T1l=``DʓG9Z NgYzNqd|kpvm\nKQ\yo乿w`4kUӤ,⮋]zţQc9Em+䥋,=M[ppuZ$w_Ʒ_}ӣ[ 0P S3wj4$F DmMW@V\>*3`$cuݎy??uNVǀJ3 +b5Pb)ƠdF`hrd`'AsA$wOlŏ&ڠ@GBQ9[?$(Yj$!gЁsDXnQVxFOӁZhcZLVUʛ-e9LMȣ9'$CXw\aA2U+c|Q07XCV*n+uilD۩IaMQayjL`U")tbb: ܞfCTW}4K(ɤ0;JJX.IMkFSz! bX avu|#Kb&)r> ,wQ{l<=8:ǕiW.lpv+S*:2ԛH*T9qL;!4w9/ 0gu+ l݆=EPmy`'r(B3!2R N${)k ; N,fp` L7u(rs,g %2ek69ܭg\cyxVYZOfރڷ3yB"9E r*րqZ]d8I%u<`բ~Br$dr^z;##xTSmRGaFZ9=h9F<oo5\} DK" BimmWqQSzI@*Z|1욷ZfQXILvW ,DuU7Ql@gY oNq0= -sƍ0=^H:`͂mLdq<DbV e:cc+%hg2 FAՂMuj~[qcz{YN5Y bs*B;vQTnU㫛FGӣx؊}g I_fQYo֦nW_fgf_xX}lGt6^hj&3־sf3\Qu@"Ϫ۲ B? 382DQ@d,BhTaZFQl1*hm栔}A1,mPv`@&.FwiD[@* RU 0TwBhk. EV*KVI* })_.` I Ar f.Ţie@5":D(hoюgBj,_NXZCNtT,_#DpsorGZ}G2/gBȖk::@cPbad # ]+= d sr H.qfY`d<٬s֍[j*?dV}׾G7nn-.B Wꟾ^vNYCBqo4|v & ]u{''Gzvmv<%?uquXKۍtؠqUgv{[.E/PV JW ;^PQ*v[Qx@DNI>{3;YcїJ8jȱq&ɞƤʾ:pS !Z!$ D|t=zsVI!F] C`-'` :q3XaKɩ)6TG2zhO"SHdY7$BFIEeZ@ Q3hn)dSqqQn.HV𛈖V0)m֑2V60 rFRτQzM48 V'7j"%EiҗQ\y`"ѣ" gI'^Vpi#.W W ggx4;sj{Z¥<wz];ڈqnVWO_ӳ/Tݨ7(_h-U>[>h4[;߻ueR#4N?(]~ymgQ"FX3e4 }2[ɬكhlT&zh /#Fi +pc8PeVꍆYBk9=2y\ŋ+>RQٸ]3.ICl=4Ӟ43vd,d, H!bN6ERUTP3` H:ŬEb| !` BJzgVh5L\$x6-XYy([Z X6)OL'B$DŽP ,A** e\kLj&#z@4yFEOEG"6lĜtՑ+d^J=ָ:-# :EdHz5?aiY^?Q<81HXKVl0 gxo;_e?;[)Jq Ͽ{[\ng&Sr>Ϧ)=Yq෿|poTKݣN:} rŻRVuhz1Bd@h4\MkElGzŊ1JpQl2|)lA@-&߆+h膋 ;@ߨ{5Th`:(`б>|ih=B z<(RT"QX1D4#`͓#y0=(i( ;lXƾ}7 f@*Xr1&) CPXn Y%^?dWBɿyAy»ȧ+4CdVC^H'TrBpz OuGsDއ)K@mD=@ p@PM3E&=An99<sbqR"te *ihլԫ[M| 5ުf{+WZGY6V;aZBZ̳)zחNgt{vyù˗*Oo,=ܥM +A7NV7z%=>Xs CWv8CIQkԄ! 6dciTIiPĂ_ty[)#g!H'~|~~G9p5!dP0tdاBV6ۇedk@Ͳ2=Л7tEl8Q|C C$kDlΧrDC΁t_'hhn8]IE2XV&goY@ DrPB+iў0nR~)`͏h7/~ZZmXسHʸMMx/ŭ#4(9I((h1LE*ju N'y"iڍR3fβl0W+Q0y5˦qüR*a&Jͬ7vvޟ` o~pJG/_a]޸48&++`FVy>p6/\]YA?(;\ ]i"QvƇ[ttt/IV?l{8aWks핫x$ϟ|Zl3"0lv5ȜuzR̖fpT6%:cF@@&e 2kC򫂩j";mS,y#c"&A Pܳ~ټ!N, fʬ(k6W$Ymtb-E5Ws}7٪{1d?Q^A$,>9$x;FnEf '+JѳPGuHg%9|X5uU.t<:(]p W;k$8wD_N|ތZDDAZ0 ;\{έy,Wt=߻Xkdy?E F/$*:DEl>0'F!ph5<183DXa) %`v$,|:[<pnk?롶X)EI)tSTVɧg,4ê\^nO&Rǝ%s{kאָ.G|ν;$dyT*|2J9WJjuTJƉ/Kq>)g/bFn_Ɨ&BFEۢ XnpaOKQfFJIV\J QUޥsh.ЧCY4#X*YɈTm + [auю8RaՐܚ#QMUBykuEǐ'f JBA!#??tNE ̥Dm3J!R`D1VѳO6$r]iG^oVbIDrs-NX$D, OE) X21!JY>ɿN:_^)p1$KO2)Jst^InVUAϥÉs8 .S^MOp0;` cԹJy{f{:j%BMi6ȢR^ʓd6#UY2]ޣng|esV?jWVgNjͿOAӺS hu2 ^V!&H`SQ ¬!5V X">RedKqɑGd$hx?m!v YdPPGp@(V \`Dlx 0Ӥ-jXL+Ab.B!|fVNV 2ɐ)ʙ *$Eg̹r1CSzP:vV/~y7lU[I>rc4(MQ,'NxZFDLgfg>ZQBnGFGfͯG8Me 4%_;z?O]lp::SW.vs˕F!*K4N<:'7Fu?q aÎINȼd3 o\`tTi(! @ȼvو]T/R<"X0Vf zaO 7} X/ z{lvHuxQe;6*7ڜ !Y8]maYxn5re$dslP gBIx*2MX )@9%zEdAZzevDp!i90:r&&QJ50X(tLO`$ V̚0afB0]0"ëGEI !,9 +wwwNtK'Y%Q'iq6KS<P̅UN %z= *չju# "D6ԥJx^;G""n,fA"@H!A`N8dtԋK!Q xh/+{%ǟ>;Yvܛ|Cb{oQ%~[:D0`uI aNRp/&Ҩ@jEX{'x†a #4TFK+!a‚3@%3`F\i'(mo*xƑQ՜=# aR0f ^G#J KL"z/:/0j;  B=~*Ԉz gXC 5Whۗi){ Y%ԄP w{|mQ:bRU^+9EfJ0e$S8^F1!4 "Fzºk@4flt(K}ܼ48^AĨ0'&}.QE3(\mUXeWneG`W.,~u˗ܸpc J^ڪ5Zbȿʤ7ReY*ި^8zqTm-4t'^W*ynܸqorO>lg9tɣ܃76H _U`Dk^@X-yfM63ۛ,]sO)dzR~dlO9"`Cm|2ިf|$@&bI+|1JUd uCEl/ ~Df(ŏBkNFQ3"  F;" 53 V脖3.! I;Dd)KaNjzyǐ'2f%)L ݪIrVnEƐlI_4+ٯNPOdQv)3K >#)Ff.H.%ȞC>e,t{1`ŕ6~UOI9dgh؝8ZKUzB-N+ ' W_]sg`8jk*<>}{'o>si0*Z-=RV|drh-.*+QDlosKAyS[G[tp}{?矹l?:`(}|:9˚gXBS-B&֠ hz18"LLo U)yIáPc* Y<.:xF!oT!j㹸. C[f# Wb329@0H-NeBC+ @VOoUNjX@9Ԇ+p2ق(b" % )AI06%O#*BmE>e| 03*OyQ:B/H[8xiԫ4学z'Qb yd೴R&?JVTc.{$o>wBy| ސYwq1zrKz,/b;/^yv)!n3zyww؟?rvz6GUjm;oEē?+o~z~'W~e eTBH?0bp"&.iRf|cdTUBVZQRS+Ejto՝piVE cdJԂp1*nؒL7|0E"V.5]|}ĜaKiEzJwdJ 6+4i#r]b! U"($זfܹ!Z-l-4Q6nFrگhS*NᆥBohA]ts,@04*cyȠA `%:nR0VCFc=6x.9G̅d$r(竴+fբܾ@yp!@#߰UEuV-6,DL3@ (~A?46X"jFu{x`~30[ъ=pK"B8(`At"`k4x6--:֢qY eqAj7;'Jh\ ,[B$rֽ@9i^FhFZ1tኁ#99:Q"O'd ٮFM 2( SБt"y/*LX[amud "z&td=r.-/.#7vtSW..֯knm[ͭ?̵ OóY6^?N/nn5%;/O?ݨ 8IX=tqg9J{Ոej)^~z!!'s]IQ(?oʠb2lEL/Z䀝Y /ؐeΜ:4[-xBA!iML5pAy+O<7X _q*)D`ԨΊ˱O 3b VeU=YL-Yjd 1N@1 COb[e sM`T S5 !sōE`ʤ46KRЀex  !!JpƳ-Nj^@tF٬,,7Kv{7}zNv>dqZW[KU4. ({Ìb%w?|S_(O(et3rl4l7ko Vt2L./<8ɀ)*=6\zll2H(Y^Xx!"]Y.}p3ZTV6wO >yzj/7U?){wL>L*ۏmfsb0)Vw1ˬ{+X'xn2<`F,Bh; !Y>ъApsshm爟̼<Ā O\պM|Eh9ja\ DÆ ACʕ[ .BĜ;AL^  [-38>O, Ov2Ӡm@;R7,3 q\(SvRV~~ڨR4 #q"R4,6<{.-KC>e'YݭVU7}sx6Kadp\5Wo<0N] rǯ={7/]?[ >@ y;`b2*VCl̝ӽfMKjM}^)kpȿlkD;2d99KZ9w0֑q-d+JtJuAIAO8@/T؂Yի IDATP𬜫fU5sPh59xybմQ:rK[ʛ(\hĢ EeN::/_(XNxKB JvEm3_P "Fa+! \8AG\u7D``q.:ȅG@L` "ΞԮ p34g{ HsiI;;# 2*Dk?w5:)Wͅǧ&~T\P>Vj#.GIM#|um᧮W7z)!zժvH(>F_ph=>oog9||J蚋3?F+Q k 2eؕ:~4}pB>8o>{PKכCxcޭ}6 +T*Efo޹FBv65%BA![ LHm-Tܜi~Tu+Or- b#6vB5H@8;#P#'+ Õ@ Zc%zW#:gbÀ&N_Af`)9tE"=.B+a?s  O<` wO%  ?_H%*2B, CLEDjˤ#zE#i8'-0⽀4]W7ȋl<sNS|ͳKWO ]VzfL\jέL3zֹ+[Jwة4Ϝ/nm51yq)m\XqYZ+*8NnO&z=tb%NF_^ROOvNV1qeXDԁ)+fC SPdȜb +|&-Jh*ġ7ؙ¦7F*Z*԰Q&`f`Mڍ &q.|er̆=jelxbBVL#= `r'!ݻnIeU0zlb9x.,1xG:TJtben I&ykP\-T6Lk)B){#`ͽ[Y8|:DeYoOFZ|)\~oLgqVex2;hտK[0}6KN f]T4kGg4Oo~2y,Sg(n4k2 3w2Z&bcЭ8~ }=dT~=f{g׮]Hif^۷fizv]Znφj(Mf.LI7㈡6$*T*r q}rzV]y敓"%1#`^.U[q ?'^XNϔ"JkH"r+Jɤz{sV VKy(n %"-WãNfo$6# H Ho̺α?Vπ!t`ČiyyK{=ZO&9,LVʥVVpwz9KjDI'N45.-7q^{e>Ӊ_Z_k4?^R)v폦T.4A\,޿\:ML&ԿqO\rleg{9n=:_DF<N(ⅅf֚ :;v+KyoTWh0UKq>|?,=]zVW`Izq.SL,F+ hIE0"y*a3<k[BͲb|"f_-:唴rd6L8T2 5zhQf`Br3;PK@r9w52 NJC1bVس=.  ŏHŷ x@Vl0#5Bpg!R  2ZmW#+`HLh5ף ht޹LdK;"8aGIU$v4vuA=@-%BG5 Ti!1׬a#΂>~tClU(qBj%əZ~6b2O';?y~n5{#$_nӄWgkŜ2O?GįFO[W}pqg>݃U9'ݸyo٨tqg܅Q=>^tq7VmWj9}`j<{aVÓ J7,3xtйw4LGwU޾=NbLΗl~;|n_GB9*$ ATL5#"PHaU_2,x (rD*f`) h5S -"M,UF8-X, DAbDZ !u>ΕhnD)򮍸u&XzXKs"]_MWI^ (P%lC 7"+Qd6X譢Aw]!iASa \HV$2YfNׄ# 'LN5CPelJ$@$g9$,DI21,œ6ة7v~+h9=h-&GM7.\MGZUv>ٵ.{umzxsrxh8q[d0Ͷ~bkҍ;;I^&d̕TwƧ?y6V?O=}ǽ[qw?_{a9̠n7irq9ߺӪDc+m=:Z+=,ƵGYlTyoQwƷnhg|QT~磽$~൫}>8uhfqW1uϺo~f4?+_[zUܑ0lG0Ԭ8\X\AQ*? M|#:+TD VI?2fLƬS Ko"+"Թ*VZ搘 *RC&t#" }.HeWRN+ox4|n~НfL?x֣q?Gy> $!W]6Q'gY^yn߻ qTou%ZVAhdɤѬ}xv _:W O޽7+O'K+~Yre׻w0ZwmV`P/9tw]XvgSQISwYqׯ.Ⱦ~ ն+^B%r@6ɵϩ!;D~L @Ĺ':'] Oa˰, 9$hR\B\.7r/ڂ5c'݋.J+A6ELGrKSX0P=:-\ Y(L<F*F"Y)'>G)@h a?F6M(]R%Fw~,7tJyzvxPmͭŵV'WڥR\;{^V.:̸f-|Oo>?=LqyaqAݽj wwrimlmbW޻sxm}=Rte> [f b7tv(jfAeO_uR7M\_^ʛ|^N=<8kj.ddڟ./5n㍃GGWRv'hx{umFӸ|vA䳳slo=z%HVq4!څ~u@7R]3/`& Bk2|QwLJ7i3=H@cMh3#'X/eG9|hABلpv ?aՑRRw ~}]>@@#&@BۢkɹmVd,5J* >K~тQc]GFHN_b~ܞ,p(`4::R܄[Q 8z#@d;'Q/ZvRcxoƓڪ9{Z˓2R<'niavopxrүrۧUn7j/fnr~mן|{rGzg'$T?хͅz4Vn-4Ocֽ׿ʏ>}gd0>}zTN7^|J݆OӬR GGA'm 7I nfjdgeYv'_U^3=$'1HDH ?Xi0-6 @HAR42p8<==S]ݕ|s:q{so {y'J^?)<aVzux|qҬN?-]\lӍ{*Ǚ ,Ȅ +JgT]F5LgViw omQWς EQ;4xBw!L#nXCi\!2B>E. ,d*UXv_7:{O5LSѮX"fL12($@s{()>FQʁtQ42f\DY.n*iHkP3U8' C! $+6b9VZ50_dT]`l{#sBaIl8ܬa3tʘD-<;*eo߾2X(_?Z+n&/Iw$.:ZQ hRI?|w{NOv;w.4RΠF1A[{fOtmcm0(qia$DR6 \Y ;[VGֈGRh0lnES5ŋmBqsvuԺ߾>ܹzH76}(7:_ޯ+$*ʼ@%<]m,l%`@SC !Lsd czFaJQ rj)4FGɅVf>whM=]"Ki-}C`a%͆̈́@MqU ̂ $ڠɚ#!!PigJjM u,z#Bɱ@$LS%FdHS;4#z >BEMfͥ ag9#@`2폲 u. g eq0ɬ]-[wY=L%%lS;D;@ a??PBemd9߫8ŵuOdn2^ o\A)|߼yY*(Q,|R>:nGB1dĢn B\\ kg7JyשVVkg~KRյ#q ilEσTy;tgҨ0:8O/l.׫K s_z<* ']>jei1:QW菾ynq0>T 0J ǧBq;8nN{gIN;э˫~ ;=núڲ+sMikdB\,6}$4V4%.iYl}Iꄽ "hKJW0*Dj`L )pAu1:4hX7s,hSjdc,Be$h ә"T&շh8̀ fe]}h7=ԆQ;G_?եӟϻs0h)J+k?`k\qZ8'8VYt@}񇏄ƒnȿ}hYB7wg_8Kt/x|:Xj#.nr=At pi긞`;mzym"Az0۽Iw` Ó?0 977Q疫ͪ(0J?9z^w8ytzQ$|Թ[ÿ|\/Xw4TkzA{jJH5ZAA_΋-|9L2/. w~8+6$p3XX3<]3d̪yЂ̎р;g'kp]5$ަ{a͆kܔbk&/ ZNֿd*Y4KRVDSa!hFM;p`mt=m B\`v{F} +2 $-~c(LXF=SoA\ !%&PQ M ْ[ Ct.-0^OP=*2-K{K* 0BPVmh齾xI׷꟏ _y컏ke0jO"q$/+F^߬:'NFL+M>yIݓ)LRQǹBV+|(9髷߿[rXe>_b Tt8 KdTy~P)^qgJ`yu\VE~Gh" eH`Z.S)Kσ4yJ9wRB|wwʳWATiOTA3~ ;B%nN&0JX>?QAr~:U(>Iq'qV8Sf;k?!L?/,a, .^Me"D)Č`0ƞY$RSZ*MH`|M7Qsd,bX}~v ÏRDH~j1T؆{ҬnV/w9Xrbru@`Ye$׎IcPGn r+%]o5 &kS;ljt}0ߛ#x!@;,{k(Z͂Y d:LLv1dgm>X?X zP6" ^z<ʥ^*͵5҆8]_;.DчJW NONt^{jwNN'q")0*c\$8?ۇ=,;p{tR~b@5j|r5Wϕ 8` IDAT8QkcqRFXeVtTȹIX8:aVw|>T9~Oi*JQɇA 0u^]^[ގ Ͻ|~lS <;?t;`Q<ǃn4WN}8zŎOHp#.O.,.(/|ǽ>K>}'&U I[?Ѭ l lz]oXLLo]ՍhĶ!NY*gi7Te6=Y$ͥ7S2i̽ʄڎp*@]Zm)m~^9 6>Ki#^X0wL[l-x/G`_:oCН6mjƽFeĜhh@H-Fz1c4imv&/CȺ}^l~Zt+I0Qqw ­H}|\{XF4DwT*519hUóO-v QzɋW7 Rwh'@oh,ϗ|NÕF n*Us7$ 1y47+WDgMO^7~^/#)TQOs}qܚ(^/G Kj]`oN;sJ.+EU ½{ݧ^r* -,?`ְ 54]m0pB)kAf Ruc 4c[o%ML1ŚGc0m !$*D ,UaPVi`dȂM&mH $V&Fi3ө-@FX7-Q߲ 4iiAA`$ L(YΠCߛ0~_2P@;]Y+j凾uh:gly0Ձ+[٨EA4|SFrBf=KeS{mEs`r ʪP6Dz71Y 2ܧA07|Ŧ/W'Iko|t4_ N77nd+z-Ruv?y흻{~Hx>0x$M^Xo8Z&Q֋sy|ݣ:L[_ꇧtr,~JmNݏ\7._ B:_UJ{e_$|/\Xya{Z(WV^*]<9;: CB-7 tc:BO+Y),7?8/5rG:饕xkr<O1EP\Z[=Iu|{XWazn I5f?/?87JPtD"E[^Zpa|{Js_?R8e*Y"`8eD(W D?<<+$\mʥ[[OX9n?<8Pl\;0:<܍OQM #>C.!0區S`Xs4TV]!5+ˌmm4j_W39߱Jgu[}յB, Q~cOm)YCpV=qnj_+uASbd օtf*6m`:s2,ePl鎌#3Vv2\Lzb8L/mFU`(R0 G D3mDtʶ;ɦ9¶)ݬ]#QX (ckBMoG1%`a2GAn, d'm }<}T\hYѡ!QZ LeM{20P^yu7sY{YGQ/kK?}/W.nzo"ɼ7jE~0oF)\?8*wAԚ$ T93Bͽz&BV"aK5s2\񤛪p'BOj?7jZss˗7ք(ϼN&GK~LIO$Cjex%/RۑKoNO_g_s#>gY6iץn/ex߳e#8+ytAW@bVXW+f>Iߺ~I3A`L-h@qL ~l4D!hy儘mv/S&T@2@)d`$V9}YK@ݫ7y'PGN袉0~`fźXRf$-0x,[oW4A/5}$Nϗ~ϟ #nw+ #셝*ZLJ7 \իnann O>_"-zZ3yc3n{֋5Y_):2MX MRuyc30_[]*Iwp/ռ$-v?lqëV?:|Rsq7 ΰ";=JA9^EytId%*T"qdJ $Ru48mH * Xyᨔ c0dh8ӞDRcp88 rǣB4 9Ò qD?v3O/< z3^·Z-߽ o>^vB[?غ}븪sIo+k4< 0U` &:[ nTvH`iEGEGS_g܁Pbe^h Z_| 4<#; +Baf ߈ ݑfɓ ж~'s% sFe#Q,wτ":Kew F)YFF)NO6c"CfrZ4ݾfD\]M_MY mu/[<.ڳ y?fGLpir@h&ɖ fL+g6ga>-gL`ީPQuy1 [lbia#l`Y۵xڟXM\FzP3b\nwGk͒"Q.5O;gaQ/肊t:F>y~JS%i<Q8V|$!tK՜Grwgak4WIJB1qʂ( *B'R D*V@R!(utS(QJڸ@*"@)$0K~(i!fvA ̬@- ܨRG(Uf1~B PT+F:$ (_ً@ ^@I͢+塑0+s+g?YNRl}nEg.?>y"9 ;Q/A?Ggy0zq^'^XrҨ~?Utzi??/11dPI(r12+XtP($'ur(ĒA㺔4dvQR2@"B2p4Q F G)dV*LÄ(]M¸Z|/ƣq^WKRl7zu#yY#yh蓹 f$`]:Ì83*K"6TiNV(ng /L4ϊ؜6e(Fs6X2yg!"=v0͂ 6o\sh&,,t7ya] `:hI+jmSLoQgQLKc2)]ϙCVeuDR 'ѐ ^H fL6?MC z\,'NrY8Gww!)KӡUTYG_Ep%U؇I(ڊ#ݽ{1)r NY)z<n.VpšR^oli={{_Q E,I_M%OX:q$LYTEJS%Ы# P pH8R* 2d$2QĊSL2F(d]EǑ%CȀ( 1،GE$ iLD(1xϩJH8/|pi.L;+[;uq4+gRvQD8 W^}ym&yцx 8߿fпxUno2C ":WFd$"ۤʨ cjQ&@bstδVPkRE[:L?%tG<#f:`d.Ռ*|L_g–MfXED^7y#vV@7iqt铘wƹUi"!!*2WEl&vOls'ęKF-jH`$ѻ6fEP< Ѭ쩣Maj϶L;R?tHq.' '6I/,5nV:=U8O*\Jp_Yjեb3\Mb..7|ƒ՚_`p;AJ,{ʑg_xgo2V;gxs ó(pB5q< [퐄'`ı$XITKR&JMt0NLRH$(R  ZJDJ*+@BMR)Cz*)BZB(I^_qTlضV\n|rH*Tx|ܫVB,9׽sҭV͚W?{rnܿ0wҋm[R_Z\WkzU*MAhG^ʾs+zMHM^/yA؉h2JrDL`*ISU6  jmēu(+F Ȝ$k >O x"0jC@kutmq$0u)f1 !i#L7af/k"gVǾ&'&iDoCȨ< @0l}P3 Mhfh,k3MioY>2ȚfLfB'26ەF p{ǻyOugυrI N/)+v;$:<IkN IDAT'+yJ~hNKM5jUG][wK r=&RR/ʳH 1#BU ^ ȨwH$&R&JLE`QA BRM(X:*ݡE*fEIjzx )F 7UR!$"L/FrR#&(BZiF̩ BΕILD9璃'/F+o8b}:^o 0]Iӗ.A ݇{ga:|pHugo Ih1ȸ k e[O#>-^Cz1[̨3sٯ}?"Smy)#dJC30Ƭ0Ne5.Ȼ4fl*<$@[3&A=ZF*HWL{ZH nt/ +CO`BBo0%lu]Ʃaۖ`iY+oi'lqi=tڪotzL8T#p XZ>We,,-.O϶v[`' „sOjy^G_zi}gg^vqӻr~s+gߏXnNkDqQD:LHPH`4AL'=JIwWBD JCPB.IT) &̮# H8RbR"7{!BX2 O*qXJ)REyGz9H7LR  (RQN2"5WJW~Vvp=7W u6lKNxQ'm,}XzzrxP+R2E韍&ݱ;__^_~µWd&53LG z۞-&2ݵL!Ɨ&*482 P1"Ti`f$3 DCL !zXgFuwګ6NL7E bD3g, ݤ/Ȃ-2amf`ntdN@vH/gmYǏ`U?"脩wM"Mu'uZɔ~MyzX :wi~R(|9궛kɸ5_(lu 8]NrnoGK+&ݠؕj_sknJ)tvuUJ$v+QY{=h# LU:nR%J8 q(d0UJ#3{B>hrZd[X=˜HZzQdOTY 2=\&!}JEԍ0$1#4񴆡׬‘&4RU!4Fj|Ny@;`sgde/FbLwE;?`psG+B:|4Dr}yIbocAnl%ya26?Xm֯4h{n(wr8*cRo+WX𶏣*bNF=[mVIw>lB)CbXA &)Eiw$D A 1LЉKTE$GN)b"e*IeK* D)8 $@@׏*Nٌ|dV`Ta€BD*uQ2H:n R@A쨙"$T`ӛG@_h%$(*0LR)77UKB6r8ZLkq7pcl?z½n>,6n?nܢ; (Ep((k/ E}”c&Br lXʐ6D 6YWaJe\^aw{T{$LIHw08i6j7R4Q)g8Z@+B?viމÓKs՝$^ &Q+2c7]p?wxrYX,oGݡDL=K+r"i$ nhU(DZ)z)!AF pqb)IidGfvR%QG8@B* ,fX fbT  )(LJI?Q]˿{J=.WGQbU,Ryf%H0LYNW(RIqA*sv'ͥWV\Ak[`pca?駽~I1$Q8Hݕ rЭuaTMe2V2">"v)0h2HLϷ,TB@1m o 0׶ mZg?Im+@R&AƕC`3-̞48sVdqNS 2b`|v!F2flFoB 66o 2OiNujTQo|OznwT(~םQFx< YuD<7W\p A4sϜo~4LàV&RQ{2%px:'ÛF'az- 0`sM : bl2 T~JDXẐHHq ) W2 ɮ B*)L(ISf$!$+)YPDi*8U $QӊUT!el*E"(P%2"N]\lп>vⅦyAW;tQQP=bPE1d\ qZ %0^:u?q0 # XlJwί,WXiEZ/u*[ ߞA 9"@ Ǐw߻|~\ى);heRD#ɚO9]ʢcn/0Tdf{n?v "МmE 4kHFdML{hѸ?f6i C#3 ] Peϸ M/[4lfRwyͪS@HV3A)҆,-Y'e5gHgfISřgc F1&/~~~J÷v/FS^ ONG wIg,Qj}4<;`-}*qX@i>Nv'谸quF>OX l;dMȻ i'4*ywD%u*l&IIJSFY׎2)V E`VȺ,RY:`z2MPJJPBARbNqRT7 D,Sŀu$JSfD V; 8mPKSX A$FޝDx"Ç1:j7TnJB 5|ynzϗ#WKH.Ur&X+4><ꍍ*Iw? V7V#Չ&)`9D`r0 p17ǯ|8~iimg,X J6Bڽj&xFgʜu,t_,o g2z H7U6|hS6مِFy(:jZKu(DbV@B_ RS5h\ 閣fCz:S'i23kЎꙛփb(s ^)APBM#&Ji>ӾY.m3K `]ǝR`2NzU %@NgjV".`õ"STQPqI sgV98mΕZev=0h-IU3v: #O$\_l֎GT4_kTD+G |ޗZf PDB2 VvnV$Y! Ƞv=R%s\Jգ㊄A*@X*0SWAT$Y+u51|ڹ u/wo?IH @~r1_/ܼU+I89;Z[YSQ%rnxt<$A<wF{'aKh*|qI.s15KsY-7pJ jd\[Oom9n$¥g[w|0Wn\h cA\+EPʶ__2fB˨ gSE:&b i 3DBe xg`{`il'I7'POJ=$YnC@ hJ7,$ hkSz\^OY? p 2 ";O @5W5#v7W}2! "JBk*QB̶ 73!jGF@tdLtR D֑ :ҟ `X(ggqo$HD抎L`2זa8I_؜;n.5⃜V@/] M!tOV/x;/ aU&u!QR-伂tW+5?g]\0{!Kuw礟ƇJH2ق&4E(YHCd'(953fvI(T1ƁIDQt`מZvڜsU q=%d4$~Y{w任|xuc{+kO-Z7K~nJx=7WOb!Yރ6wwz9FYP |Bť⟼SJa,Q kW/~xwF_ܸh)xnŤO=/y4pdJqҜ+'9#0W&q,RPnPλnLDyEyTw+[7W5C1PvDeE@f}Kn`o$[XePgq 7hM(f96geFKOOoj5CvTA4RR`[67y82Sh_0ԡ/@aj}uX=S `7 49|sYsWuw5Эa$()4XR7J kII@A @@OU]sΙo~xsx/.ǒ{odEjׯR T1J,BֱJРli*jij+ EpopG<z[)M,)4 D(L(ҢCt35̲OƃE+IN(rދmiz[zvW.ZQ椥AVec(ӗpab, oy{w4g Vg _WGuaD A#ה3@`aEuhp @rSZv_{o~}Hp8̝kbyhӇo}cp3L|v}{ï=8TE)g60fmLca~pɫI7"c&̧'+&oMr6]Ypa:\4:*ʧ|rRDv,yK7 PK\$rn?yz$( 4K5SؽW%YHKDrrÔ 䰈ޝװB nא֮%u,Gpknb#io5u=6YSAEkt=R4C܆MJx"@T~X͵kesXFk`pSI"[յؐ_HDې&p-롶n7eM_kv`n> / hMa}{!A"b%!*(02o^/!uvl>[\e'$v1kY`aY״, N. 7UHvݍNwo\_MC$!ULi(z^ q>%So /svzUs{jV'>|{pk'r,O+n_~08^nn/ECH4J@.iAXX!F:R">PBD^@R.@Go7KkCw~\S~dHZuVz^ c:156(9ۆI)Dn][3]U|Y`6MYy2[ߺ?O߿6u6n ca duPߛDlXA7EVP-ڶ~;0?lEaY+RwV/Uč3ʻ(!\]Tt\/)6zn:]-ƈx6^QmӸ=Ɂُ镓`Ŧ?nvG{yyK'ggťE_՝prt϶'e×Uw"Sqz8W/+{g{|G=dϚǏe ҝd|֝:ރ ښ IDAT'?9?0 _i(Wn_d|5kiQ7ǧ_zsڃa VE3xu9{yqs'4mk|efӳVqyQqZt=#9Pеv$MdZ EeQGO^,N{Ω\$A-', K>>M⤉ъ}Y{ϔl>Iwں25")e_ge*@AY#|=bDMgһ#vGԸlYnETyF%h*'݈nق$+TQBCG!^4apՆif}% 83 f t*f$U  C(0lf(z}_^7>m`6pC$`QEdADP7MIFFE!@a1S4s50 0$.eR(lP2G)V'lBVU9g?xZ=~v6[<{Nfu㎮.V{IQbWN'۠訢^nE:6;1;*^\Ul|||Y8)wW.NIƝ|~yvc'޹ݎZ߹޼=">z6i/8f8/h .j_9~w0HW$2] ~/M j..n6JOotˋ?nu흃ts:űQ?8xyVڨx\;nJʦ(͍{SIv[T]NwYӗF\Λӫ!":BIoʠ? Eӥ].FY i6f8VUuFyABqQ%U7mn0n,GlMʶhVޫ|xf帶ג4Eah|.5o>|~uF.Wb5hc쥍:^Jgo=Rh@Hx;azF9fZ}rD %H#E  (`ЈD2S-{0nb܀F$S5kIKEKX :m`u5 @$t B!0N J]]!T vͻubZ.Afo&m% QB$\ נF,@@@׈= A "DE#Mt#J& 2MFH($2RT$af0#׉>'_}㣏J;~.BMGn{2=_NESn-Qly*~HLE R'=0EN\6դteQVUHY:m lwþ|YtSi|ܥN*|tv`Ǔo~ {tY\O-}gkɌ62ê &N%eeW>Xz2;/.?-c7xmG /Zm#?{91ymL_k-A`8UYY$208'[,/(`g6"eUeK7U/'WOy;Nm*CtT ڶqwk>: xnRKD;|jnj>;߽MΊIpJˀ@rON^GaQ"PvhnYAڜmU:O?~ɣ_ʻ]];FđLcB @2E ^D#FQp]ֈP b&Lv,b&Zlqm\&j ( HYdr ؍iص[Y3ր fS 0&%0X#"RH@y u@B@Y #*dP}0~s=q 5~ < 갣a/ FP"06F5ֆ]B"l(M |m/`]`@4Q Ň'}rEyn]Ջz9QP/NN/ʗ_>~qv~[ioߙs[Nq.:5Oڢ^vBР1leE(^6-vG $ml敵ҖKv?;G[1u@,'\- ndL[;Xԭ_|~?|[onܶ2q[Mmǟ{g7nIGQ(r*D)$Ŧld̓l\Dkӷvu0eP\SDEKϋb;[[yZw= wFQjx~qt3[!4LO_i {ìW]Xw`#v~<;2^eY=|:gOƷM*ngU/}x6?v*Nض,މ-1eu/v^V E3QI0hL' ~~Q[gL^f>4&ڦ-F}LC|vtY1l[&*MMlVZGqEA)\/>o|s%FViR  )c;dމ$bPbYM`k[0 H![/  z` 4>6jߝh $RDdfP+B?G D۠ " +'ZQHZDDF"0f66R/T0ҴNZ?ɥ־E(Eă `Nf_ L!jEȄhHڈ4'5ֶj""dIe984 P4~ZU+^8H .y~xqJW^Ҕ}xW,2F? uY^GʂL^t3syUT/Vr6@JU)z2[b*e9!p1oVy}6MV#G|S7nήΎM8gia盎RN?e [o~ɉWr4 ַs>]-kzm凇zcӍu)25E$Z,>>/$PC;l궽],p(ŴR(GH (_H`kmB^+MeѢ,*{{{[J R^t5Nn`>{~m{9vtY3D٢C)9|g~qY*WM竷vGΨ'<'?_kт+Iv3:.޽m?*n UDuαe)JˋGWuY$FkCmirqu> OoL^0d،z8'9XA媍{:t"Ó2Vmc墚%N38UAoSf zmEɾ KUԚxk'oX^Q3o͹-ۻLiD@)ằ~=+e!oV<({TjG_BaV:`}S f[YDw %BI"b@jg`1&YXhU`f(RP(i#EC^B$RDy c$BP l`i<{/+ (c","A8x5jE hDJ)džH UQQb'1Hų묈Dmuyx"0u&5`/(42&҆%RJ i>V;4ȣ !Q{>]N~^.~_>=>~^\WGgn/>lZ.U8-չr-TnN<:Vmj|R~B6H$Zg$D$T@P^oa+\ݴܲ*.سHUEywK=KV"bR7hL=Fэr>U'b >1$K}s/~68Ӌ6>}|H/kZ"ʒؖAGiN/N˭ч/jVmАw ~|Vk7Yׂם,k?oBS3oǹ.4.ikCbl'!^?hشmZYk;y,ʳIg8ѳɗnlW=ov X<1˖ǵQz6_|D]IM;{zڿ{^DbLc۶iztЫ,zQ6Jp\W)+ v86?v| a}v^YB^F8v{2)Ӧ*G6f/8Xtqy5B5kiW'o2LWTJr7OnG;EAB56J;M&(n(5IQR72ApMtcdUwvQKF= g'qI/+?ۻwGypx^b`p"[zpjK:N13ʗi6goݴsoq42%AZ7ɢEn{HŪ[Ij0U^in{YR-Q.70#Ӊ;6=sqnFeq9 x쟝79׆(QɫIAպh;U2DyyQ[$.ط i׭MlQBpettc.feN"g/0^ۣK8Q:U((x5ixQۥ`p9)"&).l˭$ϪʷmM]&,5k\NGݐiqE`;.'xq7kA"R j٣Tk-^`NCkL5keTևst\;.ll i)Ԥ|` H@#Fiд "zq$< .lb M<"@T`A)"+EM`BV(a3vn#B5B?[TĨ☜cRx9Q(" {$0x4҈L FZ)6QUT.0* &P4 }S(YEQB%w3m={VZm^|ՄlQӳiwKVrU S6ЈCrbsk˨(4ªd.R{b h/"b{0ʶ<>hMrM$Z˺8$iJv;w3L +[7D?~y ey[)]矜ԷSdpq#$;͵oWedqiEc-]no_^.zeӞN`\ua;[EV/YͿ'ڦedlTƬZXk*Βěv ߹1'۽QdUV۶^I!Jl]9LAf`ti3(?={|i/ = /vW[tH 3f!ed4N.i#Z6a'M4hqb:݆ I2F AMk\/s{ ߆_P$nYWk:xhV#Zg]4n3mAlDCno9vt?Hi`yXsaAHF5( jf[ztN 3:.bpXtum -"Ԋ QJ)$ЄFB@ 4s 5@($0, EB`!BqmbgusMu .0 !!a-@µa ڊgE,y#IUH$C}[ſp㟛8xyuƱWeQt{-H!b&qct`i*c9ݛ; (ldMzbHJwdo ;)ڨ% EdQt͎=Z@ dzPŸȞ￾ IDATb㱛7D DVY1GW4ҌњҶOKأW{_I"tFRNVÃΗ@'Xom<:wYm;l־50u1o/wև$zurURmd$B?w5M.&/Co 3Lv:-d.gg;q9[jREY[_y ҅٪mO-L|1 xRv:/_|?=(Ϫ9g "^7U!ҁ Pj8)ZQ7= gӨ)a*odbV6#b2]~>2)ƺz)-A4 AY{I(wI E+w*UcL_IQWW&$֔w){y \Mݸ۔IkUdg,5إmmuh|w M&S0Ջ<_wɱ+ ? gt'.tۻ[#u9_p4~rrn!Ky{0YUqbo|tڶGYr ;WWDzi4A*5j1vrvuo_M@H?{cxUUe?7Y` 0:ZA?R2Zٲ~qztq1mo}lou-WuWs??+P ;ϗi<&J fwַKTu{^zi)Z(KVaw8I.,-^qNyӊo05 ݼ?禉Bd!n;$Gk$`0Z5Un+//Cuׇ ׎\ȯqk H91B\ !X4*l_/\{_c Bʀ0&0 Im9̌ɵ)n:u'0^7x!3z`A׷n0 8FP[x$Y=mXʀ"dQ։>|3( e}?'7ψzvՑ!YXՔt#f=9uK$RB}CZ,,/5 1OP*Ŧ)V B؉M]_3W4j-z =lI:PbZͳTV+[eІѾnv;ZR[XΤUӉ -'m(joIs)Œ}G2=z}'r=zWíg"OhouoNʆc``Q}8&!4F|ٰ۠n'ڊ!є$];]WbE+;yt~(e1VLWݞ+䰨tx;7"E= Hx5^ ;F)wSB4MBy[-.nYkt/?:_!n?8򯼹=9|rquaG?__oʻq^\t\M]G/+ J}QJGԛ4˚]ykfonT*P HHMZa[h?! Zhe$@@ugY˃<fDflkbx“ήK'*&T$٦Δ$dC˷i肃p=rݾ#V:d)w)ax{(mUˆj1 㾂!e yO|e_?y^`Xj=0:>H`bXEnƛ"m5b$֔(eBHє("`qY6CM"y"y7+ͽ(O۷^7?]dV v5Vâ&ywvfѫ5i 왂 l٦6 'U ^$ҫ'/t557~oV*j^lRD֭΢ Q;yދX^_4Qb:,e͍/U'U㟟.vtl B60H@#nf[hEHxÃH mB+(ԐQ(@H4 XDq؜ nÓFb<P I2# Ra6 ,A 0z> XDȳ^ք(( ciSuبXԐ!05R5Rtܘ͜3;P4RYD$ǪD8"(M JQ?ccD8x6HMpeh/_d4k,N?G~*h66f}t$E/2PqUbi$XIXcãίjd%IWu—mpk sGT `D> lkXi vRMow;繒h<ؚV+7˓N ᢼJ/_wN_n]Uri&lԨ?JO^ۏƣt5*=Go޾_5`/zlu>Mڥ5KI2yjn >YUu;є}~֠$8݁jݰ)]>',e(-vJ:CZ(Q6gu]w^u~voot`8˯^{04"Bi}t'FSQmUGqbGG㪵B~sjyP(}9/>?_Ey0<<߻}WWߺ̫'[$˦ݭO5f?bupeH(kuڶ c R@B/#d" ;\8 C}{?qDyu׻w<W[oqfʠ(hk,$^EӨ>={?^vHmU Q/.orr}q@1{Ejs@6JEB @jƻyl7-B!"rAZώFD"j'Қ(1*Rfֱs^ &AJQQw,XiS70"*D `x歸V !["A%`ڼy-^T)Fc "8,h2lpڊH#s`$gd Zjѿϯ.l]Yd.72ZBGV ,UI沾A(q{lVeWk OSmBl%G=E 6rIMDλu!6"(LA3MU`F̢I|h҄FwYZj>\̫kKߖ?ʫ|xק +Sy?QQ\\ۺ9eWNT^H1k<9xz}֏4ǧ:M](yқy{kDUhһ*Z/\udggT捤/}PWI_v%h)jˡo x;r@ZǨMjb~iCX}6oYٲ}zB8[fy޶^WlN{dYs$VN_H0( 2]?X<1/my8<~s0w jy?B*ı#ۉJW6Nݹd[~;tRz0~*Qm{O6tR45EqUw裃wy::jMqZ6M?!kea6ͫZ0q SLj0kRc̶j Ѫ?a/M) M "`3}HzBEJ+Eis # ~c6|A@@E(FfE tSTcpmRFћ clk"XX6m%7TT7R5a hc`7ess`vY['bb_}?.N^KµoNBm᫢kCh;W qq=pENq-=~ްHS4U<,M#׵7u6L;3, "1(!c$.;|N(;zIt`S;00&hm#^TВ.A*z9;NLvdFqv:[ cv?6N- &&:?Sގ{e($58>::=v{l.eog7zx/clw236m$sfYQ:.:_/M0[} @[$"3{],RXkI?yz4,Ks?OtOi? ?_b<+y}=#{wN_w;Ϟ}8uUlxC+/i:DXue3F޾=}tzx/>y\8" nıDuUǻeDʈ?xt)z-`Yte1WE#:q+nQ=>FܰG.j{5 +T`?_Ƿ(R"X x.sl""Ҋ a4mD7K:ASoLM$žQu@!7K p3Ep3,&5A(n7S9 o\87E!7?n'EC`Œ7 ƻCD%v:5O(^7?5γlvk𭎨z1((R;0Ww}g:$a0{tGAr6~-^IWUPhd]R{vMF.̡xjF kFh(eGI*ȳF-1 `/CRJJ?Dt7Vxt$Bm۷>8Il}"={eN ~\Td;jV_KLt{`eoLu_,@V!͇3/_?eҽ*L"k㭱q~8'?~zf1Rnż*h.:xyiAoqyZ7/g{{djww{[E|5rUʼn'_&؟ziuwˆgŇ/Oul/] "׿8 cT)+!Q^-x~'bM'lhڐF1*J- *Qnސ~/γITVԄ^uoY-HAt86Ui.}W(7mQ;CaGӼZY\- RUF'G~}||WHH|`HGZk`7占Y8 ߰Eј ixc 7FNF5llmkpY l&JHID6-C"yWlD ܹ p#(ڜ\v r`MZ[^ϋ_|W?[\~u4xu6h;&S/K[uȮU#*jF*\_6(:A>ɓ{J 9x݇wVY{uvUC[0"1]lҁb[wNO: U0(7naAL -iDQ uCHoC]6٘cl]@"N|(>8}tEytgX`WN?S~ޱi򴰶E%eaNл?ȶh{و~D'a4@uڭom 2U?;[?]떞rvL fb򢺵9_4G`U^4R3؞+9EDe͗$dzr g;_|K$/Wn:.ˢ1|AഊM;˫y/gzNIU_.8٧0lR;ϟ}xhw/;^jDG1EQc6Jxp<8Hhk8kF$ϡCyeYҴ⵰;zݝ.bMQ=uLԶrQ {g'-x'!X:Rd (z61gU*r"s˺k*V")EH(#@P=2DZ5Zo\"8ՀҊX=zHGHo7HhMz,ܕX l)nIa4I҆B9y߾s=XaLH^?9WW8r/qS\.Oj[^\xjR^u.)\<Ph+uJne M*A}zլ"MrylrD⋗ ܷwv.+Ѓp{:xqYbL wOUyzyYɬ-v Nc. pX># aԯMK;Ԫ:Ykjݒ!i: mQ]W絽qҽZal靖wëӋR$>矴s:JcOLw)QcQQuӀX:ZKyM.'<'}H\^+7#3|Уr_vN4[ֻCAmL W F<M:Fd}Ly hu,<}곷~,~ !fF(7 ]@QI! RQDu"!(Q)B@iܬ E6HPnT7"V["!ݐw6S4 ЦoĊ`ڼ9l(NJ#DݼgW=_*GЉm gդ/`ُPeBmQ{ѠX*^Kc%u#i]{(o-HFI?W]EYwf`ww|wnlZsTQ y8m l8Ud4J Wh.܂T}]a$Y*̽X6_CܵX4vw"Uhyh`˔Cc;? ڋZ4V]{};w qm8ի³^ۣlxQ>=;oީ<;_:;l>ի,0LuV$3ڽs7;$FkmLT#ep8%5?{xjQԶN#(F{[nYIv,Zsw"DHGtp;p*rQI/Z萘t<<^_\=v<֕uu|]Iley/WO/[+Mᓗ%|^b(BtUggt)q?ao-Ip1^v6>YFD;/y[lk7wm« Z':WeG|& :J8֣,ٶ 8A3J]F":K,*2ve 'ڃoEF+Y+P!Ƒpg"fT P ћ :M'zC9H: a~ӣtw9ZwStC8a!@=8vG{pNZǝz:vzqoNy< PQz\1ǃt& ٜA{l=:'[ZI0TKVz0fR T獀d2yEFY]ҋ`z[ x|x[=y=y・67TJi (iz$Gd0նu״p`hdd7nRi <#VE{Ui*v.;Uuj2Mmi}_3N/_^7eh$f^5#qEQ,gKwj(}tb]RU5>]mO`;?{u`ֈHuCjz4‹͝A74I'{gkxr7s48ӈzo4guSwKb~:ʟV?z] A8(-$^rv?=YZx˶;>w:6N1i"r>O'@%K| h }ZLlIeHhrq^^^ȓl~Ѣ"d]}PI/-:C |]\u&mvT}FCwTJ)1:t ''xVJ+ͺ-Kªe׵+jª:,+^a]u)EZCQCYKQu /ʰldYE햕-j:ehbht<؉4Rγmլdzuh|lUPQ d5D^b;HaB)mm)`"G{~֣w۷ 阁 ցcʘ(h8I%i`SM] '[UbU:׳C@fՋn'E{7c̩ܶ0 *(ڌݸ8'=ou7Awܫg˓(j<; Sץ[=#H3~YΗsh}o͊.YtβvaZce4ryg- #7z/mF˨XeF_}4kk?~tԗ;/XV^yxϯvݼyW*V^^VQX񴟌NYCƼXuݗo=XyjZF]>zQ^r`wg.m?~7:\Q7ӣA<Y>a)]6 JU;먵$L"0(HEmE6{(̝T4ĸ?A_?{v8ս8t 0h `k`gmGlhͧxv+'`1aQG''rF4򣓡};bû=LtG qKөWqD(o}k$M861*(* qBZ/ꋯ>/N@8&is jm:'뺫&¦ DQ%l %"aQ1"6|"QkMڱj]X6u>tօeƵ67T;_5P[o;PwlB|ݹ e7YiD2:b,AmT,Z ^ݺ8XW\^Tuh&(wqT5Qb:$27;_s;OIT_]c=sp$у<6Rڨ$JDBĊ-ׯN^~l4b}<7_~+ƶDhJlWq\clJ9Z;F˚8.T[ngJuat}t-w]pP RIz@E5MCtɻt᪗ۻq6-[rj΃-Ыv zSLVeg_^9b?=Lsf.[7w;$v^Ϯy<׋`?[_-C>ʥr;YeS< ~ކJjjtnUk3R#uk8,W[̺g{ݵa~i[%Fhyl֘Q [Y+bLW: gA ^ Invv1x뿉v ]h-\̖08fHh2Z@HDi13hQ |cUF,+oEτDIBvK` )&!$"$2Pa1֛$Q%æpD(,O4K{Y*>+]\We%*4 0m'i"%UG$aW(mO?8{߹{4IY(bQ1(4I%l\p,,Xerv.;NwzkNfAHR+8;o=r9|7R(p֪O`48rV\g y&@yhhbt$U8A~peDy=",X,;*;zٲLom f2*5ن Q&k&BC3i Hj`7]ŲYχ?f4[yLbuyZJFn:64:i_.e\ALk;_n#[7A?r^珎.LUl.]`b*wv|ҧ~vŪ &t̳.&'S,&ݪl,V:.2l6˖?Lf_}Fr8mz}zm7_\!ZZ꿺8&KY4Eibbv;Ȓh Fՠ\?8>vJ;t^ٷw[2>ŐXAś Y!fF$H坴t9qFB ĐU&ۋ#jW~:rc.N?9<\d9Ų`Lf`>eO)%&4} +d!W[h n,vӥ=_x}OR>$  #e}KTA$^bΨ@y)F6LlsdxH oWZBc$ 1gcދ6bw6+ƘcC0 rY>1wQ$}.>.iH dO&΅rF5Ծ2lE+ {D)w߭o67+& a$ј2܈gĩR25ѥ] Fuml5|rϟ~~x:;ͦZ%ݶ҇(!0bYxc*|hk kMDX8S˗_{ۋvB wS4QmQƒlV3Աrs/eݻ9 ?E~b1&^>q2MKNl0G.\-,+oZ28uiK^nsEq iuݿޣ%RuPTד=-M;I-O;TEb/WiͶ(. {ChUCUa>xr8Wz[[=$! 9uvvyܕbzx>JYgϧtOo4 E[lߥfנPY^gN;Geȉ)II{㝊jJՠMggGg'wq \k캓og ߾T("DzcB1e" ZI{,8 8FjJRrBղ? Q˻燔y.B΃MGJ$:e!cjՕJ@bku 8A@5zmǯ-+*3R! RV笱R5 im@"QHt3Ĉ]%D׳U -e,=hNB5v*uCM7]B&јrrHySYbJ})鿻}\4Zc/> Hf*#=Cd<]Xg&78?-NEwç]5cl>?~ϟh>zw#$ƗrVR{ 1 g>{ }`ZCQsT'OjMXSɔzEd9 R۬--8Z&D4kV#oG<-|:_c22drN{Gyhyr> IDATKtu|m^w&|'/ܚ`\M|?B">~QloivoKUhF':(r]>E=56ۍqpj)҃t 8뷗]a_wV\HAtضRL[7g]C\;.׋2?YzN?:LLw_; rPj$ג'uzx|F??Z5{!$d Dh #g:~<ױӻhM>?/^}CF (XEEλJM0="ym6X0vP 'vQnv)ygx΀T%UOmnGiզڣ o( %L;4ƂB6cm+0D.*/np(LX&(a&D1i4fY>,ĸy!ZY(A&|p2 5LmӋ!QJY %IqRL@SSȩRι~?LRk YU}RU@ #fudȃ|XQ]D2EfǏ>?b~rߗeΎ*;$bk kt{ݷ.@Yޗ >AH*d $29 "xW'Ӄ'O'?y5l_IuYjJmK9ek` b3 4%a*-^]YF) z,ǣ_6/Xԡr':Iw^dm[KZv͟YN%*T8'=<>:߽[>9?::4}:8rI]x_z06h|x_}Ab}JUq??_\n73Ppu':EC띡m*/pd:&A Qx ?9H1_/zl_,i;v%)A 1Cƀ"|w{[_޽ZnvOf/_^ NN7ƌT1E &U& 1$ꌅeУ|t^`]QyhK)5Fgcd٦i^HiN*kƐflup2!iGIٽcax[UwoY׫e w؆M>ńLH])',оK* &=&^!Oi3Yʌ (YjouQyHB??;8m)C/9ǘQ }@۾S>} 30`1hNBZg 9dtβk׻nryynv[ UMH^087,>zԣd~R fѡŢ( >,S&BB"aͰĨL{K d)ǨHo7@chd ۈzF4VPۂF#FuN Jd0xƧ ʚϧ{Om Jodo2 Dq GEF{_O˳ˋ4t1T\^5*ךN7[D? GА# o7Y9ŢYo`sMP94YL9óh +.Wp `Ug*laի޽8? mR^*^@6:]l.x]4D @̶$sI3"G~m3ʨ}0~<\}r}CHfT.wܤ9j-|>X%>%`<&KN|5d-w= AvK\ru26WFa1]|8o`6Rz&kcg6Z\MQL*{W?Ɂ86!jgrue 3|j(!2mΥx@fե鸪Rkw_]~Ϳ/nvƔX@JoG%6p^'pI=-wvh央MUXxuӠe}1;-cUFÂ+؆XPJդA)5!mޯ(,B=>6af;)Cױ5!dWBCeMnBS@D>mm>LqPhXUv׷m'Y g餤)g)~ק%$1ʺ ]$X8kd8ڛ(e1T#ClhX ِh_qn:v] nM(NueNOL&`0LCn l6O:B(Рkl۶ A)kN7GӮӋݛv38Og?ͮ`Ԁ=7ǟ||r.|7=H\(/G6ŎC XL n=.Ɛzz8f04/_]b6MN}c[ҫw7W=ᬺkR^nҢ )^$JKyaRcc |p^]8c (6bp<0쐐v@ۃ=G_|un52(e 0AB1*Hٛ; $ clG/~lB^^.ٗAB:w7"6I}ThpjNN_{R1Ƥuw.X ")^2VY lvHs̡Ƙ3*U]h|W Yy812H U;v 05}41$ec g+oǵ4,}Nm/yH" gQa}V|8*f֖4rTR?L7&"b$fv""9&DtkN}ܭ.C7uލ$`ؗ9v|qPfY牌1 ȯ 1bΒ)pj 7-3ԕ5Eg,TV\X6$ s6֕+x٣ó{ǧ㳏{iBn۸-Ѱ:9zWݼ^#yL>ޏY]TYUz\oWfP_|G]Y6N8c`ۨCbuU?=w6,fx|o'۷7ߛ,^ݰxEwএ?Ҷ*ղc&NBr>~'7R.9k\ud @svX5i7!# Xq̅n߬r} :_4d^TkW[P(@.di}9Ff@&)'w "Epl^y ޾YiIb xY N+}q^w; &罓Bb9Y TX2h1iџyYOϦ\.ǼIT~~!T.z՚!_f횸YGt&LΏM}>&w} !H1$vMLfFI,Ͷ (%eƝ.I5b^~&lS 95"9ƾF΀@} 8CH{Pc4!3b2%P ޗȈRJ@sBzFd5{++07+Q@dfk}U?} J5"ռ磲q̆ W䔻mW֦m]u໬<.ڰ=<|0GK GLyOPAQ]CDr{o &D@!sdA!nҀ/> =| P-#E!t}3ܿ>qѣ{=>>80UCo/7b` 2M2 ~t0&}wώN糃lVnޮ7Wo{ÇMf<}ًO5] }6X<飏g񰮸lr5:<+C BvXϫ'v.md(GGÙfq{Zkh<BC!(xz[~e1 AxRXf_m}X-LM9x>ocnjYB*h=0 2|$!Kbu#onv͚|PU 4)ȾұҺ߉,7-p~׭/;]^m'Oӳo=|oW`JVQ@#11@ MǟӧGo.)%(ChͅsfX mSx4]\nFgf'?~p~|\\liz ;!vWz[Z_tM&Pyjͻm(y)z*5RxB qTY}z0%ŜsK-[*{M`\aeGd kVB0<5{*B1ST՜c{$+F{(D"Bn6ͮI!^&!B"@DlI)@qG?lxB vD鰪F_]ICećU@FaG.Eyds/n~> 6Kyg(;ykQq]ǃ6v N~XYD%>dCP} Zw fYA|qA(d!5*%̙OdTCNώ11CRHUAD(?L?  >+DiKxt?7K,%yW:!jIrˉMa4Uh>{^d,YArV,L82CJ9)E>aHBJlXD1&QɰZ}*WNFn&k+6eheTTu7⋺>x?h8(֫mYL^_.gLJ [wG>p2̏7Eq\[KX}C53gE'/NNU9nf^%_7m@j2?:}ݧ6v֙pSE4JW2+$ #y-f6+Qꓴ4nipv׿89>(lڪ#Sۻ8Գ-@dq7>8ەgǏgf2xo.d\KXLGs ^ .l6wlZ,E,8%g@17tPm1iQyf:_'G߽Iu]֥3|<3UUAE"@,9 @`. 0s$Hׇ>>"1"g|`7 ^ *j@$YrN9ɵ_ Cˎ-(( LcL1 qQNNϛvzqQwy?:v%fY $f,YC} @H)# ml8 q?AQ@rrtZXL8NMS3` Ō7?yGO>zD꘡'p9><wy}yJ.hk\iiuÓii`u~FzdƔb!"0HU\Yvu!F5a].aDFE#m[{P>j^A_n >>r۽9Xp849߿w~m|-+G2l ؄`q֬NN{BT YAiO'G@/2d7zڞ1q1Dr Uŕ%BҾ9_bmr?=MץG;~2d` )d4=cSr>L['[mm[.qYz C4m2N6} AXEEHnGGg/nM7 #u!L}C}H P\f2\p~\IeTOѿ՟J{,2;*8CLb iΜE. Aff/U%"gL)XfҦ &Jf6QC {7Vv/a6Qً͐Mh" fI nwkiqvTQk(2Mk*fBԅf̀ 1IDDPɰE :Q@Xxo%0 5t9xh IDAT}^ac\ΉbND)%D r1 ɢQÊ ,Aw}IѲH )'nؚy#*ieQNWˋ7{'ͦfd66/6q>1/CP8sr%l;7r>9B͹2݅cͮo_mӲnjRL wg| Ӊn;mȊﵲ1Tm?5p<ƻw(qԥĝe*Dxk^)BYMB-Y @fsg"Y*JC"B&12SR`O$i@?UiBŁ362=ٷ ޤeI­vGշ02`TB@b@i1+KJˤZ׮iŦ ɌG/glJCs\櫯 nb OOpO?ׅsnvEPx9sJa0߅]ZonT85~o3H[@"]5ێˌ!ؙ)gk7ˋ$pxA @ dž9K@@擃{=xE~ݭB@\PEݽ0֗ 1H})"ك1p1IlT3Ѵ/X #L8\U8,` H>b޿)t9Ŕc޷I>n'D3c-7m2#I6 !'EBءABEr`xڴu2k+'/Z[k`&_\ĶmtqʂSD: &U(߆HaU_ߨ~&gԫA+ݩk)E웶EEr '!y2Z]QX\ۢ&gI5xϊ`Q '[UQbSӉU! *NLgR!OIAT~N? 6$]U67_}v$fpmoڱEɩV,q2?mJM1U̎% ( !TD0ᘜ`/ CЇtu۬V[SC?:h6;;> 4b1}{:KO<Nؑ@ZE1D! k+f[n {_~s1:4v˔EFGQѼ qM^t$UxwwCS]o7 *:KƐ%dҐTRKO)jBxlbRҼ#„ #g2LDUPقgj1sb2hc{] ]Le9}\D,IaoFTDARTA&Zk-ChxzIIlPu bm߿ʣƂ( HKEU rD0D) D{'=iOМ K 0Т(7XVc('!"2ޚ̹)g9%ef@& {wr ڄ Ĭu:S8" Q,@& KH.!.+眍m#'Y5dS_\ͮـ[a)lcuo74;<4?zv0?lvwWj)&D?L 0^ǨR)ʢY&At2:zV"89%nz7KE.&#kVSU mT$`~j@#)F(h {x*A*3@1?pҨۯS1E%3|יulQ>_^g]V{fւMbJ!omemQ-66 mV6lh)}^ޤG,;;ӽ}1G2dM%MMH A4,V@AD EC%J@M6>}{-,_|܎}Wsj]mUbW]>:v<:P0jy#D,nf9V}{{)hNzS|z7޶=/Ss_ZauAnq?Ujv}l>NjؘYRJI2QrvD55#'F BEg@.A[suw IH8; RXDunbFaP"0-\9`Xe!"wX Da:9[U8X>aMp}J֎]qOӪveXe/93J !R&&@d3в/T: e!UD"f&US:,fFDn^奔2~¼j$s%:TPg@ éŢHJ"C[,MU$ndMFb 3?ʏ]K_ ]?zggͷ_Of:)"#iO}Nbhfm"hʲ%DH O_9:jh8b *$Z `4(5gL P`CBh0RU?J$Z᫋NoG D$[ [1gczs_=+ʒӫ맶/~Gg_K*fC%*n\"ɺ%-n$9, U}igV yJE.ˮ,hf%鲔,ffc'p7d$fxw=*pn[,z{pG:vq սR.(L%6}^vv4-DF(!N%ZMbFh4KPX,Fn61X,000DW"T5 F0EHKM1p#`8ĖKɺ/$n)۪I>#L<ήV)gw4w;˄sfn襒l6 Zm!" 9A6lZ}: U<,"$QjL%u7p0#BtozB|8  @cum gX^-Ӓf8*bG Q戞7\NZ^rso5=y?ű{oZV?7w5I_~**16$Bb|_X?~ntHIOǟX^& CED #*A3uȔ0l:z{Y??tj'vNN#Nib,޷$pŋ>I75SԦ%\Jv0f:ȜQFF!ig C@c0$N <"'ށ ,zo\$pΩz! ~Ф!ZqYd:JZoN&\2\?A" 9 "8r:FÉJyCvx 9"!M8:G'a䪣A53K$JWH]'߾}1eFO8ckǐ??\7l~:={vѥݓ??˿o89#9aEow;t.Q~խ/btr88̂mӄͼ&);7DDd@zfE~1zO.07mnKIFF(,÷|Ir"O^|Ջ Uñ7B`W1K!fA0M9%`@pgIE0Y@5 ' ܗ8t @2mN D+JH W.!!'00;jU2F3p,B껱LnyNU2K/,H)$u#2,@)3!"D" )N5N P-Zk `B 9 "#R;;%`Zf͢o1fEb#;j8q m.g9RN Ĉ)oP>j5D8H6;ZG͛8Ň.xW`N>gVnRđ[/W>$箔R"" W4>'Ypk6tFݮ>AXIxǯUcܿlJ $0vk!><@tE,gKܟ0RPS_ @#8*N y"'Jhʳ )|08]E1Z?g|k*;W"CerΗOOJnj.7׃aɓOdeW]*ɓ+zb+U3w0 5k4ϕ@eDԴP0#abL8Nn)/,{y'x=!$F:FKb|߬3u_+%:LM֚$QXl3FȑZhļD3p3fKXFIANĐ=LSDa]NvmP9P2#x Eӻ ʕ2Cynqo0X:v9Kb7@QĔpN>5˫C9_twvK0 HI1$K$3 1!d!'LBމ ըSt!ۨ ܳPpձ =WE8@S?Ɖ)UӤ`<<Y$ kӈ`&WGWl1KNcQx; :b΋*$")).r1M;DДzBqjVZ.$%b"93"9gyĵYꨤ ܞ~:|'v,Y2q^>J=o8rFܧB~S@aynf@g Ld6Q9146d)A)-_)?3Fnksһw9#8 r[R7:YW/t~h웛ܯw/:NE8~H `l:#]=Yš6%fXz5=faa9I @ lnQ_i/g/_7\Dr&Ajn_{cL:G4@8Z9ȈP:]x1NHH)rTfWv:އ o2NwۋGg?zW/>=Y:jl'L$I)2Oq9{DHY:X+!:ϔdYrnHa fMB,BDLI1ה* vT[ED n#SPLPr>[^\\.:M9EpJJ61<"`yrgZTeYp`{,&& 30"("hq0wZ/ lfs-#C:_咐 ­UurE`"ʬW[NMU3Dݛᄎoٛ77Y.=lt7CϿtuA-7g岬f*p03#BE SOA]Ĵ-`9z8͇4ǀhQHv2' msވ098jcզaSkjhAA@ G0YB(ʹ\"Bdb +7ֺ"L%U=y͞<۴ ;G;O/Ojs MRVA$1 F pJ?ߞ="IX 49zm$"0DfL$4 "psf"Gw\0T!K; 'kc#wI4S%Fh\G#=p8w?'O>Xj"I;2%t쬨VSED5e6OD1g;Ϙ* gG7o^Ŭ`C1b?\ nHC߳bV3ȉr`fOU)sxkRbi,H@BZYu+O{ݬ\'qo^޽|\,X]=.u, )!!#jTWB<;G0fʉO  )ܐf%QvEJ8_!DD}VH 1b] Y1Y.LjHfHԜ[i< SO]FE`i{{>gedp7-rjfF" u}W 8" %tߕdnql x?Ml|VǷ (n~Ie. Mgۈ[[h%6mX%2:<8*4j,uB@aq0GA7Et'𨷇 7c,Nԗ.IB%vu݆zMbuiPqucd;LMr_}Ò,hh1IŪX EMibc;2ͻmpBIQpN1T ]NS4To45]9WeȁD% P r$YR F L)jeI.$0&iP IDATCD<"ɁU 1$! G`aafHJDa"&ā`sW*ی/0׸@ʩ$$NL}ש$jP};3"kMA]]=z/7PD;E8Ά$xSU{A]fpU`@5Ãs&83| myC#=,("! 14LPHҒ jaD7="Pj3 qB'Pp BԴ^l`E?H؝Er9.)~_S H*'"xvɦ_u\{Wષ;;_ɫrۭV݆1>#wYg4 ^mrd&o^`YzxGSONZt13Zfhv{|kC'g$W3?9Y}JvW7pNB.Ƹ?";LM>a^mR>y)e޴YBgAӤ> vCR] CԠ4$12#1SxBNČYDZMXfFb s,KP!Ħ>5l:adA2a0N vu7yb4s > E#=ܝ&X2ptJFl)%w Pjdq @B#";Zfb; e.$IjGz.<ˆ89ĨPۜBA @(BgOjjq70euoo&YWW[#Dxn--H7L:)B;#67}85us)Q40% L@=G@+lƦjQ #tkfUKJ(  I@LAHYb00,Mb#)F3eF!FrrT8Y5hrf:j.v鋔5Tj,L`fARJD)KB$dx~_OL"2Qzyӫptƻ//d?H] ]V@m!L]:LͰj:!xf& ,Jµ"+e1 %H%0!TO^|J_O`2׌@H7PDz#@}Ŧߞ_>17яј_0^me8zXqiu dLFDfww 9ꌈL%chglCV$M͏c_d3a8F;60PdB%M]}Qn>{kP!DM0]=L j0Dw33Z Dyjkmj #HU=,#'nNDaa9$56#!9j8+/YLU32s>}7_MĻM0!zdycFЖ o\H,87R131.s:J.-@4F]l-rBPdnYƈ55w`NI-##TudjdfHAaAb.>w)1 %IDP2W5'mN4<č BNM5ܡs J|oNnZBp9%0A/ ȫCx@E#KZG h:Tui.doTyihZp:v"y[kj$rMJs$[B16MHpwYP΂Ô|rrbZG'i C?˗oOw *O嶿?./aY˂S]-7OxuƪAܚO,8"$LDQm>" K)96%Ifșe85tǻ#Tɛ4Ks"02Ix@ԒDJb#oouĒ2Jٗ'SGd2 bI)84u])MO./zPK"nq,ͻǙ 8&rJN43@-"6ՆUuwoT[xt,`"GUmL `$4g C3m`mů+4Uabl"jȌ!”AUfifꚫte/PY1Ml3i8a07 D,FJFȄJȏϺ,ixΕ55 GFdfV1[kD " Kf&gI"tnͧjDto їB4FE503 2WL@>wЀ ewwАHu.HQswY0YOYƋDDq 4֫Mִ]~E oVQLB]$C;I,6"䔐rBE^XF`!lDZRz8LM|m6'nCIt"YuRwc0lɌs'ht< @- "B2zi?h9UfDZ~)@ >Mi2swCdf Hi&"lPڒp82ATձyS  5HFX8;̑*PUNn7=^8,r͆ý7DZ@XB8޳2}rjZ "̀€hwf~TV|fW9T@ tyd 1KF.DxtL}ɭѐe|9'30d0"m?!80iLu a:lwwp™^fAHLlR6ϵ͟}ZP9 }Wsx;5eɟp݆6Ufr}y.roFYz`3k_s i!Vy,̄RRdt?O 5#"AOژ8%Ztd @uOy3s\uRӜôUj8'A8xϡ`AU46D@e{}xe$p5=GUu`Ωc DY.܍j@Fwe!"B4U7w9^Jj10Q* !"2dd"w`55sb8an65 G(ϫ,ݫ"lAP:,2 @OU}dP=I 9HXEYBVE1nKA3C9"}kQTB xj U.}[rD GoA×e@TSTЭ5F6.I)g&;Ueb!F 1Bbf 1zqd 戞9@۪Т/B`Q)Zgf$TwpKNjՈyj9sp .Q̘gMZC w@zsh&h
g"MQGTR4t}uICzq[|t^W=?軛npO'# ҏNժtAQ!C5-+HuB*~'R!nE8-%!Ymy-ųfpg$I$"29geI]grL+@L{glI3{D YU]tuuC`݆f @ƴ?ذaǒ%{mńh@ez!3+3p Z{U@-nEu??#W( (IL6EHZW&J10M` [$̉̔nTWD,OȈ]b 8%V)1%V ɺH]մW֛uv8CudJ¢]'wv 351o6-ЧMML16rFf/n Њq){=\Zkj"~p6Э8unX,&NT2:q~9-UD c`!0#fub4\J=,mfuפf;<+jhXղ;<;3(ՇIka8:R#,ׯ\Laэ-qITt%pJEPcs6\XԁdY<'t3DpbtSs3FIM8R$du5%owyz{$p$ #͙8w0FŧjU,9dqjXcbYC,%WVDR"yy'Wg*\=+9 BEsD$2@Π Vuپm4C/("!>jpjnne˄2։)mb" 'ƱSJ˅"aIg>_P.bS&WWW^yZP-4cm.^ܦDbXzEh[8GPđڋqL]`T\AH MJ)zZ1AbnR r&HԡyS%1"!"Bav/hXM 9-ZkqbsXs;7S.)"||T˵)ȱT㏟OþMi?LYcLUL2rvq0F00r3آ!WD>ӁyHj10jbա=ylXauhеPXK͊kmX %S )˔kCw D(![ *hU! {伟Cy1[YRqL 9MlB+)O^4܏jVF#siiu⹥8;P\ೀ]Q\b$jsþNS-jx3_{v wVC@PK; BLn2x OgfUڀ.93R1ÐkfUWH0qEU^aʕ $ `MBLQjäCqd4"UukjuD  L9`!PHaUMU"EQijٺSmW ,'\>s_&5mqkNoyUA9^^{ӿ3.TzXOj `f4F8aP'@,:8X#Z%u(+Dho_|K9pr~W "x{=ihqPO0IP_"8={~k)iNK謇!,qy<8@rl⊈V[/>c HLeʵNCz(X,R _4!,;2KΖq<>y6,˶mep(y(kwZlQPeݭV8+-.J#Q5gdLRJ)ԤiBJHRqYADF/ -ӱ_]2JH!?/ku_y/}kgKw̓_T @)j^,6\rb-sj G7Z@ JFsGL9R,r,ŻBDȀ2(T5+f fjZ_fi#s|Wͥέ͹iS(P6*fɍ@̧bM#HNf]'sYʄ`nDfeNn~)IDAT 6L15 JEvnGS)!VG"05јoS·C}(+5wElQq+%޶͘t6]mrw9g+Evސ1sPib"8j x~2\]ߖ͡վVW7/&ˑi8yrIm8nCHyzfzL~)Y~yHPbk Vn|㳱!Hrpgv2ECsFT ᓫWNV丽Iq!htn^Gf;iѭ@V@Bh7|i[&r7$ X"Lÿ25ͪd,"Cӄiɓ{"Vbb`$Nj p"pd5UX\=ij`!( L\ܭ# mo iqNkQ'n*cT!z@c>M9h :|r;4Sh]:ޢRmI:lݪ]qSX50RRiVRkvwjfؤ65Ms-r&4h1OHMM+GJ1liiA)5ab T (HZTb6R hs?W (D0WC2BDwSjJ"VDT^VM\Ig%!wZ/VgRӉ͓?"Wq]";"Ls)zDmuTfk s# gnve]I""FϿ#1KݘXEjHPݿ|O8.QLTY.c\:z$L+ay]ZͯY4x8/n"rݾ7WWWKHA=jVE rԋ371%WsӢ̑Нb~tj="3m-}qQ6l#sB`S4P/ )TW@"fr" X, 15 LNJD 1PUkB:m R Ԅ60՜t!011E ^퀀ͺ$Ӿ o"%ћ'I1Xw~,P@E Ɩ@L+A@|&u'fawȁTX,AHZ EX%U&`ܖiu&5Ar) 1x E̦ Ӵ?ä5Os ć8&+E 墳WEN NVի% չSsTS!#ioȬN:T]Dd6b&`jN9ibBLKn<KCHe,Mb\DMlL5{ "=93FHUI}WW}?H͓:p8@xhz$umL/U[El%?ʔ~G6CꁣT{.-9y]m۩L㫰\,w7u{8'/VG6= MG1DGMm}>X׎`\C jv!Xu !$Q!،1e Hl(͢F.7CKM~/_??.xt\~85#IYk8t_8Tf Q-3Hu& lz[g2U LCLCDdt5m.7y3SbhS٬QtM6pۉ!q@N!k\V8 nM9ipi8-2i^r赘fcHԵ-жATCW3RjkPS,ZN;6 (&\.5r@ %5QRsƩViwoK`T-l.a63<{+QCQn .Ee.T>" !9uQPusuYbqyx7kT`64tRq2@XL19q7n>_] #BvQ:.Ԥ1Mউihͽa4&RlEjZͻ?xWa ޷Qjv4Mr_ڋvg욦NY3 _!9RXym°h]]gxuNXk ʮgb\pyqvn9+~8r~VټgyDZTq=k~1YW"οNلt@wrL`s%-NsP/!$ )B Ae)jT*Q{gMg)iW0fDS(Ԛ&x6/?lmK_{t6z=6] x?7Ƹ^RH) *E%77u2 TE Mp] *@,e$ZJ=Q`wR(0'R0`²k1C4+)CX{V V@0\op% юerq/Vv̷c#tq5^O٪Z#T]q`XVi,E)ĐB$k9{dbX[CGR'c~x.gjuaq4J8R>WI1`.E c6 ZccbfD`82N[oVD>zvZ LLMDL0A"Tˎ":Z X p\I^N(P(.e8H]?/[?)gK4WO?{՗<3n |?/r'\ѵ1%Jg R9HELovEqjp SC SXȣ=9ivPsuZkEHΆL[A"2, TVYE蚦L͔|Zn|Zj&@"[}Q3.6aĄD4ZK.SXMci:}-aeаX5T[4"JMlhAFlc DT@})rJĀ@12%Ԝ:Zul/Q%qT],<.ڴ:;o.aRRr89h6X+C"Ns[0{ οWwW~[#hNϒNr@[Kn wY6D@ܻ j aFyf Мп, !+܏$ 0,@nAf+9G-8;99"+LW)=(3wP3G+H fWCgrS@5 /|" fq{Ol` xw9fy3psCzґ}!5weoH@ PpG'GP_UYODtpwY)|ZC6F iVw's&,R3'N`o}[ł_}ĉ'!%N8S37j5+"oofĉ'6zUoooUUU'T$ĉADfw[[=gkߋ3ŋ??','Njz7ѣji1F<fi^Y׉'o3#,4B4/ODan#"⼵YN|q_,05&ayiIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/3.png0000644000175000017500000005610414212620632020472 0ustar fengfengPNG  IHDR2&{k pHYs+ IDATxͽwu(~ܻEBE0 b۱_%c;8yNq؉+%Sm$D$T$@mUV*;1휙~ytw3g9sԋn RiGЈPHV! V*ZS?)Ui5kXQJPLB" 4 'S̓\' ,"{DdEӰ&^$"B`  "6A""R"SÔDDdh~RZ9zkHҪFTӵցB2TJU d),Q hK"AŒoK{!$@k"B+h)ca! "C |AwlLK  0h$t:!1@P@G'Pƙ'@ 4bLZޘ +$ Zj9P!B@OȈ.TAY] ? Tn) DGD_(9Θ'Ei(EYv *='ONrp5B kL@!&"@ZV x`OF|5i%V 4ǐ@hBP4*D҄ \ZI DTF" ښHc1cHT`& [ZIlLDd }@4+XQՈ4b@`l1A) >}@P@kGj~D2ֺ{4U-VC5&ֺj%l5 ЯֈTyT*UZh@5׫( h}6v 25µ65 &PP I)" iF5@8ZlTUDvɧ| cDQp+N Q]du=y2BK<$r*( h55z!ࡠ&b!*Nu. l`p }HjZRjb=&X-GdVJF2RTּA9?e~&&wx ҌX$*s)zƾZgiCQ>@3 q(Epà{P$ H4*ۿdռ1+'Պh:kE 긭 (#Kս+ 򄀄^՝cD#!r u.0)Ñ(.Ab0,  ÉHZk f hcKZъlFw]S٘UԈuBimJ&@,ԯu~~iNYtdu!HiZ{L:>޽>on*λSUUuE3O=} "Q=0|%3mEm4\1(uω9)"+t5 oḣ H'TͿx޸$= ވo Us$𚴁M| XQvTa ˒RCXLw"/$Tr!j2ҚIȒ%/erL_Ry2g @6sjgh@׸+(BRsd*G{ƺC' (2EdI89LB0><2^0`BܴpA7:nށ|fd:tD8Q?>jf@RJU(4j]3@U%Q>}6iȝ|x۟Lpd&9S&.-Z_hTNzVU뮻j L0K(S} >57EFMθzScKF0ẗL8)b20IHSJ$+D@`UEUrRvnO!„"L0,|VQE-ېڋ 3zu8*9t"\R#De!Ul~!Ӣm.vx=T☹;k`Hȍ OwmB@ &t)˖?]ISμt'<`,~;Y"[0]y5Ğ]&aINJa-A)(41vMq7*E<5 s,D hvP3[|4Mf`,$̀$y PgL(&YKq>"h:/6fs2Hfˆ2(h&=0j`^p /g@0-'!SEEFq8oKNʌeJ2rǵv"/ xƲ&^!&X%ߌd#09:"IY w|e>(UEU1+&J)T"nq5' OR$( (@b LZfMkXgLYCY"3/JETʙB"vhZ~7em}l 3C2,aTJU*gȤ@meP-^Hփ8l"Cd;D%Ɩ1&p$z̗ bS>fha\r eʠ,6,Yм2:uHA˻xmtJ.>fA 'c h9B*^/0 p9"N/N"xۊ)Jx3z) 0kBJ\✈ !0v"Mע^yJ&'c8ZKCxI%P n 4>Kf5Zʒk:k$(- c Hބ!Ha|&FJ֥ ECxN3c !LtBZ|8g%q'ځArۈaɂP;5< (Z4: ]cAeƝaɛ`̒&:F$l7濉PB˔yO!PstarLɳ%ҍq\Qnrc[^<9I I* rܒn@TĞ`}?ɝK<7&ȃR4(#j!R`Ͳ6wXYNC& $ dE*JMSY>S `K*lkݽY,?s9Lb:!c2 ƘpNBd+ڬKq4ifDTWPQ٠4s9t 83@I1֏pb{N?mrwӣb hRjՔ3'XFQyfg9[|s^?3o4LY.`&q1@ל=hnVaJ?c1".i& 3:Rk'V3X>d(}$bϹN<U .[kN78l,w117f-&``S}V{)7`D] d*EdbwH"  j\qE<N|p5ԵL̑ΎjSSCpkYav[hg$&ޟ~i\lgKbf_78Npۡ#>9#Ca|jU?X1w4v@-(Higә!`)%ؑ +KTQX J$4xk'4FnPE"c\6YȡKDگiNu \ni+ l3S)f#a= 2OY @8U(BtXV=KblI ײ{*[:y*RL kM/IU|3~ږDnNib?OL#{S( =L+--Ud?ev`C`ZX=:"{ cwA2CY {ڪG(奓{ɨ,O ;!8m U,O/~Ƕb 0p]"IFbK b= WQoh0^&D`J\!blNlyW-qŌ+/AS'+QNLT!F(2" m^1$[౽1zh.$O;!aأ'3'+Tb4@ )P>0 ?˷3CaR@f?VIn3_E" E y2" j \A7`;|.5zIa_ʈ2&yH%^9݄jIOQ*TDk&1&BPbwWKry0ҷVߞ Y238EbV]B"PH0-(D"`Rʺo*8sD@46`[S`a B⣌Rǖ%PY  ]mrulgѯ8 {=l|h6:ڗZG>vd޾;o[ &Oz01[bC%c#8ex5Ër:VnnC%ɽ+IXW>1[Y:~<سYPpv]r8l}&F7_f2Ȇ*UL/}fx97 _ DRX<4*ψQ,) DȾ8.$'FcԜf 92~E 5CWn&G'`a3# yBbݯw<ʚDn0W Su X% !.+eӤѫP3!l=SiNHʝL\-@'1? Aڑ9w/?EBi#z3]toj55m~&0>7um_O]N=6ݴ k= 0*U ^XI^Mt+gwA B1GzYʲuE>1AFy uh*s9]*;b`8qe]FtFl(Ǜ J` H-I BW=% xFߤd&ʹsnQ! rIn0ӿ~A %15.(O%) Fz?DGa"K075}4Ms#r͂| yDmJKKcȋXșº7zVm 5Ztqs4Wщ[0I_:v\3Җ[|7ov`͜iTh.y2,Tzr O(D{|,4H9>G6˻[^ĻP%y -n aox~B:B-5c+dP,i=FCf#bCbgժd@dAP>x"~`~8? ,q Yɪa5?y"YYYku{T[̆'HUIiD3K)j[Rʦ\ؗLKy9;kHyHhƹ]DJ1Ѷȃٚ _0ˠ/ E<-J1oe-X0$IQDΖ2:7aS+fS])Ih1E3.[]6,tfX*7<fT(B䞆ީ!1ԫ_&^G :Ni"ʐeς=g_  _ϣJ#d6qD&RE1.4;w ^kALx$v>hWgod|!"AWѰ"93"$PU"@ȹ6zFaṵ AKh 02(gH֍9J2KRUݱ d#_."C `i! xWylS\2g}l>%pw6FTJu6" =|b]~ɓNʂw7#[ M>hF:)]aq*9Y0%oEfq#ﱈd<c'sq!W /Kp&%@whZ2?eDHrĽ =3ֶ:/mÉ`kɘ<$#lX#tLxڦ)*,?cp}/?~ .Rp ZD>\uC07EjUW[k P Q̩o^liiӷD3k{a4D4>$s^1 Mn6qӫmEOx'E8-úZZY0",H+eU;:2Gڂ1;xp붭O>Hv4j>o51)nJ` eU[kklOBD5vsgڢBy߿tza/:Hwl޲y1?R-ai0,'?}-~ xeP `՝3>"L:GHy{رü2/mp9DD4 йj5{Un}k:8VO`x,aj3FDr$SΉ]$eުW ({(: ǾDL kY΃vgZvxO5`gڽd r#my-ojx'TFBhXnГQIDSܔ#9S肎-I 3[6MK3;AۃubkJ/ꙛt *\у `w)+ٻ7^re[x^x~g3~+zoo]x[teCP>a|oUϬuJ)μ]_|ᅾ25vtv{{wW_>cߧI@Q ͯ΂~l-ٿgQ^z姞Z|%s|&S%짉0nEG)o4iLUm7 "hsIUhb&@dǔoĶPb"lc;+<. iE\Z#䙯9yMRr>\R ?ɇ̑xX-DVm헋4Op_^D!B$E'w8ۚ[ZRuG}>2~zV,_3f?9p߻@@rŲ?Ѓw`sϸ34x #FpnݦZ饋[Z[+ݍ&Ӧ7/|Ss .Ї?Ԝtݻou/59ӦW˟^ήypɥzkƇ7ĢEoy/?aɜ0q-~]gTJ]y?靧~a"9Cr@ak>{.پ}= ‹4<"8?hkj><3aؚhN[WFQ6;I\Ƈ֖R7n0b2xw(ɶm[.ol>bƯhȀ[``$}iLܪu-m--$+(? WL`JUm@`ȡY`8fdy#׿=SR7L_OQj"$dWg6w]}/`;(5Ha;fYnI饨IO4MȊˤ SΝKg7oMo={v v w/<hѣ['OfeO/?_soկ|Zm۳g Iο}?m;{ ^|a?w~5sM}A_}6~n:_]E޻rM1bO…W\sg3g*N:oK6Fhnn93_X\KN;z5Uٲ>wƙg8nQ/sgVȑN== ˖,>bĤNi #f'uZwoxh_V>\eoQx>TmV]F^!k4ޞOLC}7_0a~[s-/N:䦦_}'N:C5SwZ#}&O K?m[0q5s?=e3gyEs`?Ϲ DGKG?O/{VXvY47eKhG??gVZϘa>s־}^ڰu*ʜ &Ѿ}{뗾+V< +/0q(e_^F}EsL:q{F>;ϗ%fPտ_Д3;wCoEҸD&lmi 3w{3kjj"x2@*cH籺ӷ[n/pР 4/[Ln_JiM6n5;F#4WoG1 c;I\x7{J&F1qY TM $t~ +H5]$b#Д_ސ(k7c$B)$ACn$V7cc=(,~ 1c9q׫C C sC"׻e|D@ UL d֯C |F+DD;pi]v۷o_Ggٽ?Į'| XGG ,؝p)G5z -Z޳R>^olmi5޹qk3f;MEC6PwѾ}uttzvtv43">|x 2:vtvj `M Mo>~'A$TVi"*a(!=hjnꯅۡL+M8q۝c(T%"+}l ,EVJUK|%̉`nKK$8Tͻ~Ҹ 0(Ɛ 2 Y5sױqi88@V^x|`wM= 0z%!Y(7$w<YsaP1'|-n1m`bƗQ+ŇE(i$Ƅ*B,R$6jevjK+[FC?VGfICY=Sq߾}0kɀm=zڼv0O:NdJfm0 y6կ+l=#Glbo_OWSOmkk[j/2dY0ic?zXٿWd I6OOa8o ~+/j>p#F8b@[3k7>xo}s#Gi/ɥFa iowFLg&#$e}޽CСf酵_}.|d%\x1'F "$7S$\z"Ku>WGz tww}iy6M(,ֵcFԂwG>>fͳgb`a.2t2ɃNaәguɥV*9U B&qkW~)a=յ,Ӱ&8`Ne&3g\ 轎8I~''=cƌs,*z>20Lpi8#|sϘc E.r$Fv5􉄌v_f$ dtg+vC !(Uq{0HW62w6x4gG¤ȣž::_:t}.> !Z}GMqAzPsCC>z:|dqyK?;?7m` :Ts!CMJGh29v|]pS:ioza!h7/6sguNqIbf1<7=pР;v 1'>i<^4cƌ [g&o}!C |)S{vՉ'C5Ϯ:g+#^r )tX@ f2R8ᄱ7&:d8-O4 ~ /H䕢 o^+m3(|bȋUz{;waï8ClSYӚ+NW$!BlsKν({]P6Ud`:@+T$wn}N]u]1 ,YFjVXA "ʩ}thyILgtSڑ! x\!mFX5kM\eb*ԋxڹ55 ۆ3? s2.`SJnRSO?Áu=h_{U8餮;_=wZg_p\h#GNeɡ0NYDC)r|fS%+`#63g:oϞݯ h]{晕g̬T Q)ՐvgW?3hРN9ż;c>r*Y)_Q8w 3+cs˖M/TտhCHKzӉGŲ|k|՗_| /s~dwvtpaAx1Xɧf6o<̳Mg_|h޼wj*nS9z>IRJM'Dg ި)l4h.2ߑ]0.<3Bf3;h%ph;{ٶm(g_ȋV6e>=|5,]XٳgW-9k涵 .駗vxZ&$'#J$d })@LČVh]9E)]OAAjh/q7}PӘO?ce eLD۶xՍn9k= w4`j 86ĸ5>cJhvEnE!l#"Qoh(K!" l׿斟38kF=oֿC~sM>G>sDĕ+{SO=hnqƙg}?aҘcǎd%{_|xCk]}ї^;B??0Ww '9'MM/|o9r9綵uw 3+nSO߻gW/mX ֯{i={ _~nj=~-Y{ݯaʗ{vܱa6ٔ$]7t$@k뀑#F=`~__:::L=,'>#Gz{sŕNdJe`.#e犪TU/FwM[UU=gY UΛ ܈h5ӦCLV~W~vgM;;֨G3Dir'niG[g!n۾aMr(J0awl1ԩǏǔtb@ `%'B 8l2aAd~:Q*#>+: U6~qM<} gZ9\I8[v=FjQ+I[g,蜲0 YƯxqqσRu >Dg24ydKVۢrb9_O(IN}>*BDωE2J1-,/!IDATlDRLOֱx֬Y=cy?T~gZrƌ9/ k]=N7;_[_oo7~Bǰ%ܚ3fiR7q͵󆴷+Ο}ǪO?L89ܗ6E֯0q/ >_zÍ7~!7aXGǒſ[fR"O?s?5f__y8p۾}u=`Mk]f5kV>t9ټ鍫ޮTˏ/zZg?wgw6׽=gW5zS1yeҠ kϘ_ر_ry7 l|)"0Q4 ! l 7s 7^3v"bb/_kzʔ~MvsΞvӦmI:2hCٳ?U,~•m&"–=SȘx$B&ȱ (~3?fo(N[ʧUx IR[IF:::@1[2l `pY˷tVZ?~蚁BAu!B~6W pܝSN8x_~yE79xX3_J;|3/HC,/c_-m:l*>zM)zD 85M+`@8.jM$TμĔeŭr(P0w,'; 2 JRJR(f Rj9f^bG?qpGXhINQBPU!#u /#n E6o9ĭ7kzeܜ݊iN ,!\dNu`8Ru<0oy9jcnj`qP 'JȑvCLFD9 _I#ncq]EZho2+R%@T`-k s#-GDx^߿uѣD8߿G޺uѣxCspQӘ$!W92Lg8, 9h U|:V@X0B d(#M}f.)" \) cqOeT)(*x勄g$_CTQu2ם2(hrZs1B.`+5h %=θ D`r)VOp{1Y5ai^6aZBbݢB?ՙu%UL'͋,hab 1/ølB@-EѿIoc&dDҀrQO>Ik3.@3H!&ȚLו夨$"Z9=ph?`GDI|@ 3G%U0 @ϰFߙ_h.L^LTojT&!iFdLvAQ&OL1VfqY(ΉЎ$ӡC,7F$瑄ݵ3wz9F$ت$L@1-I&Ż/D]_ 2R?9)Cܐ+GtٴwBQ7.P?e#)"&a/wpuw4ƻNڥTPɆam9N PU%xā O6գC/Z"Ål Ua.xcҘ$b\MP`BE,哟DEXAT#WP^IbP(If=^Sh*v¤[Ckn ]f<apqcFBx䱔%1ަH^D2”d՛ܳ]x( uH 0RLn6 `qCzUcdJyʆL=+ y0sL?ۓ!QQ{ w+ٙfpM Hqp]b%~}ņK|b I[T0_'n@{ۢDBe"a,'E6 J)9ګ9 S!L̐|x9"K1W4R3@ZkTl%`<EaRk;|PK"ՙ$IJ[ J`z$;I,l(`c0iWQC q|nSG.rdٗ u,-zp;6ph W0He7ʘH5$nhP1<1N&)nM"ޙ|ތeW$+Uf$AJɘ4STC":Egn(Slyhdæ.AP)ewN*Ե>;a-@~Q>+̾., = V]1 Cal&YFA_ Dd:r$75RQHA#/g\4KpY*rXb0^kN \LdP=[9/O\g 9l'{P _.y-fJe$o4R *5%󣌐\I n%ŶZb01 kÙiŐɩfĎ[B ̑ 6*bT; -r6ydLwɇFqzq)&.yai>^&HHlr\]9o!b3n(47RTW@`7|x3* f?]]G.BhP,FnD8 Ţ4JdB7j n?kd oE;QM, yl棰jvR70Ě}tMsD2? {#,;~ǔ%rv]gұ+$?&a&myBs1SE^x5ȕ =Ma=/\t"[%$X'Xy r'7.`Fe+֌(bqCbTl^WwZ{E@.yrHk3k/TP,b6ߑ5a7 R#FSls[,e1jy*36ayLDMfrV1ffJqIe&'R:VM_ @cr6;f_)(1&_Q{%.%5$En݋5] ʫo l=rȻ D wv) LX!4|nëvDt+3:RfEo8&umf3>B*â!ɈLP RDg 99Ƥ,<;5b(3ƆoB,@x:!e޳gFe]iޒB݁(f$@)^l[d؛ n[DHӐڈ ǰ_)rQAhݍكHX"Q"dwOHPI,TJvCrjl,aLdA_fO$-\Z_?ISjix\jsYg6q!C555A"/Qtw{Fp&a^;#/hH1t01 7A?Cݶc= 2G (˕(sAg\O6V?IgԏxwRHn(^6X% ND|K~Wm:T]]JAD"P1rq@7r[pADڎl BSw..r'KZKBq.Ȍ"`Z遼 !9u*53|4 hzʓ$ҡ*5K]AW=GMP7 Af!!2K Yp/]/ëdwۖeZB RKL;i ZP( uMP.2km. EߗlYcOHhC7.T;Z R4)ՄX*MUMTT@kj@T>NhYg,܈&HzL d>aIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/4.png0000644000175000017500000027171614212620632020503 0ustar fengfengPNG  IHDR` pHYs+ IDATxi$uǕWe}tU}s )H $%4mMf .eXH(jA A 0309{z<#p"+ȪY[[V/<=w$"ҥK.]t9K."F/ck """c,N^HWvt/ʃ[dcBJyvҥ٪) "ZGbfN)ӥKF4g)jccƘk/0y:gzr)6-K?z"ChE%5gDstsؽf1BDdiID1$olil2ח$-0#i N *OPs@@DTRAHHm˰d(78,&C1 FW>⠦=/?ik+{F~(+i6PքD@Ö.\{{ꁲ C ئ03r2hU|+ϱhsC4T!T * ?a I{tbTi ͞(4k1i_`w+ A Y*?u~lDXΐmV)TVWy`_BD5Vzqt&q^p6c[G۽ncD12hI 4e{g/?!x'4p}cZxG8:i!A)>(dW;3硱xr[\Cj7.Upk4 f5H@\䩎촀t(ͳ>Hg.?飴K.Fmo#g/Ԫ.]{Dm5gF.;ڝv7p'o6P6w~.]4DclF'LK.]tiڂo"N1$&(/@Wgg\c8ֱ4_L C %;5In7mU:31ŮmDŽ wFf:#9eF%R6Ž5mOq9)UbL! xCڌ8"IzƇP`Z6l[.5{+GjZ'VPvw׾cu}2 ʼnw*TQ&tD[ysX$>.>Fk?͹GK8sS0tepX]if=cUG|zCv$G?e33Ok\w.]EWtr$lU9ʼnhkC㿂{̔&4O'i];ZK.n$#y6*wLN0耪:\O/u&v@.1l^eӦ v\6[C u"`h/l7 D"#SJyA&݃,.kΏ$/݇P vXUbkVe.Yz4udCDRʊ[m2-D$" HkV+htJZI$0>NU#E @u֍?76Ćϥ;9Сrƙx}z| 8VE?X7d<-r)\4LeUuv""!Um;e!2F~ '9j7ߴtjL.FfB9]__ LӜ9R2[zj8wK 4$UR+Qj.+}hJU%)~*kiѲeD@a TX[m<ʢa}~Rrayuilx%MiN]yYO|Z?>wDRIZDQzHMGvsV+zJfVr*uO4,vU\mh ޮ#`aqa; '100@ #_\)@:NSG4K :\Sf4 VkŒBӣFgAgUReKS }6鋧gz9@)V+RџAO M'3B p}c5L[%0 W[ C~ڕchtXމ^K3aZu__9}@W iy/ . GL6@p2#5Gxu޾=E1Wrvb.+%Ep}|m> ?; FYK7=rCi-RZ+J)PcI}Kw<=y6HU=V XVWcD@ݺNDnl~FH)?Ⱦ"281k_wbm᭵N$;0te[9Z 09q~r*Cff{:d@.X 25\ȅ yn\_쓥׏ߺ8 GKfx}Mɟ^[Gem㧦oOZJ0 |~c!;S743'ϥRX.]ԅtF/U؟~fǼ &TB}aӳB)CI!?il=xJU!5jT`f_o\$t>yalm} r1_H&R˫Kkk+''ΤS9Gn; Ah]KrΓ؉xz||ܱlƿΤ:3;]׾۷or"R/|B (lhwbhh7gvى`eTQT$VCOz+l8^E nV{7tc?uP2h8֍KPB27èTK+ r!D+"e39ϯVڭVVV{r'mgumY)urLTX__M$RC Ӵvc<Z"btkׯ.--}'yĉ4lbZA4y>kܤ˯_&䗾;S;L2|O=k'>:Gd,x~̻ PBM"(‚n @A:# >iEsqKyeGq`TW DR~2,u+Uϵmgxp$ Fa=W߲lC}CB^C5 9サ~O=iYn]^Y~.p}T2e[?J8N&`b!ST*+Ϥ w<%"in_: 3R28W֌9"}7~$pm4ԥЕEs,*!.o^)yf HҜGA~ I$v0X]_-;uRI롡 Vaj҆0zsWEDθCJL}})ziy'ɏn~T,ſ˿~a``7{jejn#Oݝ/K$}a&cbo(u8[3e5 P"BEe qk.D(+!3)d4s=œ2ZױD€sphYv c̶lF~]k؎Traq.=16kЀM:|>~?'3Z?<4NnݾeYm۩d0.JfW11>Kpҕcfvfjz곟l:d~l fbg}: ^@Kn]ReZWWR-\C&5}Ti(dHWM"l&-ad3tH[.TO.V+k+T"efDsJ %ϫ lO' ߤ(׮_'O<}T.FѧZk6o!I&++J91vb48ٗD}#aJG_ m0)A;a029i \6)!nxfdP ӌ"],2CY.\"e==9˴|/WJ+KdZC ȶ ~?DlB[oUK/[ }D1'v,d2Bayyywwz+bvty{~aVVW`3}wɳYYY~ƳinkU+}pRE~ R|DG#BEJ* 09 'cZۂb%Y9Ɏ:"a6g\) ̤ɄRI0l4 dpL">فRC=ޝ>>>cۖMܕz'qIzwΝ9נ}B?cc'N翰/HyNݝų?\  Ȁ]+ēQxk\xŰ@0$CGA(= G(XqQ+PJ7mJJLbd\DD!_+nW]қ 66|7-+$T"4ML+Щ>aɉi"xeX'{6ȧr$":s¥7zsvnٷ8sťOD… bK.FJ (Jwˤ3RʪG.(ػ nĻfc'MB}b 8S#ޙ7-O•p"T|gmc6''CݕVwKZ{We RUKBRznIzrY][.UJH&RTqno=/+;,s뽽S'Oٖ Gbʷ,g{ HH8K.;w=w}1PNjLN&7VI8xkKdЫz,\řl&Vˋ @aX( <e*Eĥ兕ёށ7qeZ<+џR7gňWS0vu}c}{k?Oa*>,-1//?^>giA!??/칳?k׿vG4|ɷ[&"K;ΆFS 0(3"`@  UgagrO1j)P7EXI8[!%,UKK'F&-ˮ-"[sNf!דK207IyE*6 e䔒0&蘩;-34 @7uʈv0שkq8Ts 1Fl!2tn{Xl&zݷSm&m~\ !~Tş}nc0Wy,eJ iؼŀ, \(dHBh6i[W]^Y2MgVs1˲ !YoqTe{r)S07dK" z` XIm ڛ?~n|xO?k;7~b|_%q뛒nYuٯ|+5{+b! C}oеfW$#P gF=Ojoĝ(%|.K,8U3%Sٲ:D( Ak>BSza(edʱQ adYϫ..nYDX $ɔT2؉x044T,WGGF@ |F%#݋y/@6mťK_Ǎ̿ߡcx[J%s_Ð9#Y}l3&R=1o3%1]吿b}OJ3%>U_\}krC\( dFF{82 Zw5sN2r }8C&!,[fR* D: [ɤtz2%WL'%Ze(Kh@2+p&%﹧<+J})Oķ[R陧_;Zҿu*nC~W~Unk_z_꽘 ÝV}6mn GN3b"OfГÁ`0*lʗ*+J*(¼lVz(|.6}n J] [2}BY ZGq07M2 s]* tOIJp\܁A˴D0PkO._λo߼u39UPо,.xzO>^z.|rbrDz>v%Rb'IxwÎ|>3FWff_+뷻ILU˶u pK`$)_.V(!b.VɩC(S8R'3Usb|v7 [30QBhOdGlq>֜(-RGDy9\p-dRy*YePȤ3An!m'Zq0sPsݸsN6-!<ӯ&ҞY]}K JݔT 4IFGGg6m[Ja0ScIhlI)S#e- -se ,Nk+PB]̅iȷW^[ˆ#IZgMGPzLHpcZ#V=缮Jp,{mc%H&[ﯭ:ps- ,?|s17n޾}qӳ׮]s]⅋;zMcgϞd`aqak@uڱ,iQߋI$:M>[Z0LF kkB'9#%s>}N4To-TO8.iAG^E0~Q[BĄmN¶D":24/n(m9qw앧+/N:4;7;9y*YFMܾ}K޾sguuubb˶rӾjqr8a7۱ ²>eg_4%p{ \WW-'2U>GOdjʖ]6bo2꙾a$z IDATmu7<܎\)'UX.g9˴zs}-ͶL[. Ã#\S 7q)b*tcliyy34849>y/啕3H%K3gO)S͆(|r0hT⏣}/ZE/l΅aesyadT./lNc\ݜvtsS'.s{2=/]z[7˕J.zWgϝ= ΜMӍ766|~qԙWlU8lA|J&sgX8g`G _K3|fsԺ,1WYK' |fl˅O =^غ>X7&j8fJvYb҈ ;I+B1B {Ai@Q8qx2TJ.24-i 1248L$gfg>; a /--{W,yёR?uVZYYLtwmsN:f/V̧>oȃmnu;Y 1Q/:-|An>f4cHɧ$2FⲷWƫ3N7ZB)?8 ѳl&"d4L7 3H#  )UM8 X"CӴ 7+;؉L:sݷO6!;YMښ7wU܈Io$Je? YY{0.-B!@64Ѿ@"Z֟sgg}#C'c TKQn(S}ʴ[o=rO=9Ϥ3U'zP_џlesѳ ^)׶uN_S ]c g+O&_qcssl~vb(>=};٣*yycx}޴>yg.l^??p¿7icwl$`'s<ϛW /Pã5c,z, zF_%djn2o̤7'@?Zj2Eުq6m RRana̩ {'mB0{4]cm/3hDy}nXFih5}S] Zkm>~֭miI\|_ڿh@u4q99LI;7 q.l(Ѿ%s,*a&X ciц'YZp)l7FLK֣}\h̳ZW`P6ː!"eu+OI<4"+RRqfvfqa_ZuMD*ô8Zipൗ.OBɕWO4TviX c6a9bt(<ϫ+DAKyb9F~ceee},N%gтՒxNtFv2Dte`hG97V&LOs +[ط)u%:U}7PbL&ǿ_@-bޓ8DStdhZMZq.[yS_y ntu2Mn(U_CXk[EWvZKL׽حXqӏغW5K.]ڃdK.]v;ځpc3ۅ1kp:O +;{jte1:8>g|V7Y#^-i㻭Nv^4!Y oe0uĐy)(i}2#j'#cHz؋1jn_j i%DP qzk57mnRƢGe-K&7NwftF/_jj_yb#?==5dw=nuU pgb6ffEy}gԈgͮk)CǨLgsuyxu;Sյd*5*~j|gl}#;4*lQy{A ln15V e>UhuJKgX3LO|PR8C6W8=6Ok]t9fTBV z8 @Ub1h+vlE+ȓaqJߎ>ؽ d'q#޷i>bwp;^MX7*;NcH})U8hIbl91;}v}ci[]}9.v1nVUq Mٛ.:&0QIJb@SͨcDRhg3Q1O K<*6J[.ľ =tegg:FvjkwZensgS+҄v\h.]tm:DLꀺl:oYѰ;&:ch6TIŴgӥK.Lw@91C[^x6 ǜ>VtR*39vm@q<*Otv,; 47K\{L(>n94QǪۂR8 n@al|j6q=k (Jj3'qNt@uv@ !w{k%nwFQthks_x;ЕU6"ֹu cܷ껽k?Y{oq(1{utntᢽ #xx6G|u\ީӫݓN@)n5&SLvl;PP!݀Z"]y%{Ѻ^[̦w{OGǞv?CO%]b뜊z˽h-EG6.CcϤSzB8>U>lҒ~yPh͕tx?=\J٭VT{k/8V @&%iXx1db+;M'U6U{ Ri7TŪVk_@4jk_HDKXbF@@KJR5s6íё0*btLYJr=D"xյ=u.vҥˁٟg'^^>}4 0@D`jGZ1D9&HE/Zk94DD Qks CF5p RIDH9; @A*+ 2 h+cU(JE( B!B,e*}'~',Ӫ1vܕv lrnf&q_1Ut81U 1忽u < p 2DDڟ9%7 Kbwa5'Zk;B KT2"KlRW9ScZ#i~ aX" LdJ)$(].>{̝W~~5J7_]ti.N7>qcTpxê揳o恣.?l)PcB`x/MDg%DSK>f 41joFG""`Lܨׄ@kg~,SHDęB)gH)AJjȁ$PTsaA&"P 8GW~jx2Lz[E"\޼cwJչGYsmW&"KgOh@]i#l]潩l6kK@1c*l2g5$y69'!`L3db 0"@`I1$@"$"$Lئ VdPER(0$Ikӄ Apfq;/{xy6G27qi:88gUxȔZwMe`jTP-J1?VsKHE^M8M&"@W  T*C"ԄXbHS6(D)%+Zi҄ !:'HZ$uB޽vThn[,z.1- m M9S1pX-T=gSj9DQfK6 fn;n;L\Լ"ei(|ˤAx*E1DB@Er4FB0SgH3DO ˡBaH7RޜV! h@0͹I4i W0hn[Bwr_ô@+Çx&(Iw@j iDY| NJC+`qbѼAMj ``{v~_PP ̙FSC}!@"``JRAkZH#>MQMNkKAQi hrl:M@48'E@`Qb>([6Ő0 ad2 ܩ[.(" f\qBIpkC|pC(³'Nx٘MpbXq+irzjȟ.glOORLV#υ/ 1%?\^•pcQt!'os| 7w_Gůw6gEg&r +L|,'`5}5=s6 G{M>Kl]}62oQ뺞))Ȳ,ιRjuyk-}? B"4L+$f"ׄΘ-lAW-n,@%ZVI47 zmsVh V6DCAgx6]t&'OQ15mԐ2KZoVxDAf;vA\ xlԈƟHOKOŝOVmNNѸ]27fCGӁj[VƆQ 7.S/Yl􇎠.Zό{E:o2g?1,MDx|0+77J\6<ISƢgq!͗ŇF_8YY>0>0N^G_쓗{ 4h~o~w=hxYFpaaS hDӉ"۩곆FO}y6@ZSt87maZ6)mRi  k Ca48p eYK4,qsu*dq.@ 41D"ФI2`k"Bh;GdR!~vk13ஆ/egsYo;Luֈp+oll>- E܈(p+olr@z$b P JOg!|b0]4ʢ`ήUu*LV$j,DF˅Iެs"-Rj ~GVٚL)kb 7~G=/kɌ< -ⲛyW1OxGIg4oا./~?S__7V|'3es(eÓ=*eҲR-*\ '3Lָf|Kp@RBz^quB.L _ṜJ0U%^ q4%_4V+s4[jKF3ޑf=\Ag1h. BMb!0B- 1Zhwb!4iHZz_Y_[[ 8i$A0Z1Ra#Il0`Ji ZRd}`'};i2~{uidd=0T ؚ*J5XZ0Zp0TSWc' wG$xήE}%ٲ 'zFN1 Ay=6C M?#oMg"h?BA4cWwoyn} C䚀q.VpMg2y%R~)TṮl @)f %朡)\%1@@ZSu1:zd s"{hE 6Ͼj>LI*oh<4%1CY?\ʘ ~)  -JxZWU‘BlNVH 2 ܚzdLwTʜ+ˇN єʘ' ֻPR9DZ^_73& Wg"R(lw^SDL& ]Q "(,TȐ"B lN&'`H)C#bq<]Ĝs&E4!qu7dr %h+!y,8QbneӬgk/b6H` "ؽME&o^SpDV ;"'KKIAB8* au]Q5763y!`L -1TpZK97 4D5cӂihXLiulE :бDnmLwݮm&z]!Ըu"$GOjciyh|nbleGP%P#c$6ןBЗ`B+Bj) OBŊZv^ k+l'_>Wa)Cݴ_.GٲXrKBg-汹279=ҙah IDATt4G0P`{ +F~j0 ƫMX QV0XU-vۆLMx"/{.*@zo8XQ%quLɡ-ĸca a"k[#2B@ں#VEj"MHњ#LAݛyC8 ҂ZiBbHkn MPJj29nyi}a+-p, \4rᤦ:rD$QRAᘐ7jZ@Zik @Y(ȑ1 BA(`qcJ$(OI_A dP,Kua},60׾&0owW?]{ij>ufi=V'f"a {#d5 |Ik <JK0VW1d'Gm!!# Ozr}dGj:>7mF]; (<;/V/yk'=[^$KMcui $l3 {sΗ&o'#Y5#uI^wbK@VviL$+3C9Mn̴~?HYoli!+%k 8l3C;|pk UqOnZuNe}v]k҉ON1'ړB8ccSmmm\1)d ?Qi3$9ݧ0B7Ł^ ,pJIJK T6Ijc#&pL9d['.|@Jڠ$B8:P(Mh8J d!@%B8I{SZQaZDK@,cwӆ.xC. ޜ1_nyfc(G"v'B9.zTiM*wuƑžYHR2ilTtQ%- ̴>]VyU4Uxs$HZj \e=޼ɹ;< ug'96";:wō-vU~2,'Mtg}}OͨPteݚJZ!ivfI 89k+no7%6ؑ<9aͨQ⩲~rJݝtf::wyכsYwNUF )GUoZ|Ih /\aX`.~SNPRbmjd0HZ{D\grB[KPQ8@A(Ȏ\*-Bcia0 pN!ZDSCc#NO ='N&h`EHk33Id |TRIB"*P*؁DTgB&VZ !gB"< ķT>/'CJĥoz$vk׺>ּIpfZTX]N2qpKo,u-? ƲmɆ^3֤DH=vLZ<(T5og -{&Z@?eրZȸC^ѣeg(bEmo3Z);7[:oszMo~  mtY/`*ʹd NLcz&F<&*#wa$§{pU$(鎋>ͪW7%͜?8E|͹mv ѫv[?͌V3׆|ΓyYM\,z>wtL #SJyEP驸2VmA[x"@TRGlBf),d).4̄@NJL@9q&>_W @D$A du ѰS#0" b:'cQK-=_ĤR@Zf6q %d2R?)zXpC4K7GwkBoCj7@Om,U9M˝.{YvGwwY(l#yڮW7YnY-X@mh19IkpɧM-pmjY3c7XC->sVGim&awGR3bMn((ɣ%lm5 #^w>&a@ X⾼97䟟U^=&@Цۛkht'ưvZudܯVf< }r.>!?=X 0Dw[W]Y%<ӝH/] *p[}xut[鲶Er 2JӞ!V:Uk:?Ǐx K[KcC&kq2VAdKeU=Jy9 Qb-Ri/f3F3;d,0Wp2=1t(*g@pƄ3qI))Bk-K Z$rQf RejZ*zlb# $qRJ/;l6 zZ[(?џnݟfo/'v~3odK>{|Mop&&I1KӋe`p iYڻ!K!7#@-͕M^X 1;|eSews7jwMX,f82Y坞Q{/b/=@ vC]S#}qь%t>=Z`((-@*81>֔Ij^YycCB(4H @*H wv.KݫW,I,,;6I<1ع,B?p+(avq؂ !x"RR>7.ȭEjV+`:ҪK YűXf(-MjJJlI#dpa( s&++%Rz/Z~KurQ%S~Dd@x^ߙ3ccdΒ%Xk_"gLyzr:hO10Q@#0 c|-] k8LV`] |'Kz h[wXY<"+|>JgQS)@c""W646R$B~lYbF !ơrIML 㮽` 윐̉sI}].BX"gRH&!D. I8rBH!TR}, yQ3DՐ6xhbYꑉ 0k_g25"1fIdQTbt[X:)z3O4X.οy4C/;4m kԇ >laD4` YH l|`Y:k 5|Ui?0Sj9 Ps)WR "f@^Hha`2~sA Ȅ! !,)eBIf3LKB84ָsᨫâStl1?^7^<7Ԭ=X<ׂf_7f2φ|X0Ni=f`Fc,19IQ XkQXJl5ଋ(#$zZZ#Ђff)RV>% iJ%g-חRKP) @!=}0q.%j( R*%ZH#L+PsS-L,"1@KCa6$W*gK>PUU Jn>5lu9 hϸy' .~`[2 ¥T|OYmX~Wx]e>!K.փ V(,;'HFEBP(0!Py:P^Nqf, @RK" @ RJAJ '!"B09%J "0gqL{,I ؓ32VIl>9r9-=S(Ck8\&0ʑ<<Ϫy)QLG&WDNW =˱voo|{{"b'c`EI5WiqXX{MѼ m V\=,|( Q TA ̬%fE1 i`bRe/r32"H'P*sζ55Z5 2\>A>]N MP򤳶ZH)$DY g1I}MDRO b)O jb g_i"0:9!Dev&"ϏC$l\ho$C12S䩲.;Lx\~bR?ߟҺP!ꯟٙ<> oXfճ}˰;&DҦzwȟ(% n-4+;^q(:쩮`h/Vg#  `!B fHkx ""40 @T:7۴Tй^z;J:\\jqTKL,A@ı֪^!1Hq!P:J\^#IHQ*!H@0 D 8=O8aBÄz5D\-=gc6W=jz 3 #7֚L䈸0.̨ޜ;;-gׇZlP 7U'|Dx7~hu4exm8xpUԙqב}+h|r5I72uʆj2$PJH%A " DZH B12X!UlLN6$X (vvxKO,  hkmL.[\vc6_AD"29,R(lLBDZi&BJI&aG 0c"2&qi ,PCvLC)I;Cl3Y%J`TJQ̂Gt&Ѧ UB8.Y^yd8 'ZmQ@8Y'3L. *,HK,PP QZV*vLf}֪ȱV ::g 31Bɰ^fJ )L`Zgq IDAT8r$)tPT*\>ĀD%|PZ{9hEFeEU<ÓIwƖ8_f_%Zrd!va6Đ˪o(H:ƩXV[sIfX[pWj!nKN ^7}i=9>=*jHRV~Brj5u[|+5ck_Keklbu6|Dg0 )VD@Bk7TgĂ@A LL.i 8$gab 21#BKZtulcgKVigY{ `5F|sZ gH*tB"8r&6J0&I>xlyQVovd`E Vڂu #UQԝs |<DhGr2&nY)2d4dx(E nk6ؤ7[+`mѵ:8 nk3% >0ܯez,zOusvd/jre\p.ٌ9t9 %p 0##`@LѶT31 @iن^5 Lo?5Q2f'b1 eNJ9 ig)cu6 Rĉ29b2@DN2"Y&KcGCD@E/T KpjJڂm h]_]уU;^_uK<016#>ՙBQ}#㤀~w.%`Žyw~F;IA_#ɹUywp{i0̺޼n~BS? 9 ZќSX `XYU2p\R\$N Z EtÍ#ESS`@l L& O>) .2 )4l7h V4 2gx΋&˥IԠ:†#G֖S=DR Ͻ*AuBzBz"I*dQH!]HD$QzM! 9ZTĖH yBMìM.?&5"\bղQ2\=b6¹/Zg Lhs*9u Y]8oR`YkoRY!u =&Uq!0fBe2*k3I5&Pّ:9GDB)!$3 !L B#RE inV@S%ʞ313315D. %Pt00gDZ`a1XEÛ ̗ |s68?TI$[3 "0!J!PH#7I],l.ķ e3ji}\&:,y X<׈f]s}I}w VxmwwIBL<%XdNY0j@6fJS^+_ڽkF q؝AZ{{~_m[ 1zaXOòpp%4.~b]-n~xmsOR?Kߟ$yDQߔ*1p޳_?}{JW_KO}+_x\yvb_z_8u;v̡c'gf+ fFRMkWo?}k;OqmO{lX}}bO=/T }X+Y(+Ucի~yW^}ɓ;os":w|/=Kwv߾s\= tn݊y[~X" V`YB"y*1!νae>8{ջo?ab>oٸv޿gs}{{q]{ !wdCOK%'{:/;?z{g=?~Znok}G7_[(޸w޺8T0]nιA\EK/EFC,P+U $l 5L,t t q۪#G3|ܵ}ZzU>;|hVagO>Αc{/>o?U|WIb~!"*O^?0Ƥam-[Z=wݵ^{[kkk˾ g/\}-7 ^Iff'&&ZZZJf31KaQ0i*b`0ncMW WʞZд\O㘁RL-P9ؤ RK1ɔg*GYX̯h#$Ihfvvbm<91YUU岔V0tsRjꞾ3|U)fhJ  tvq491)Jrzf9bΙj̅|MT5*K$ SԼ`-Q+6RYXh,\^tﵣYx4cgo1 ͺj>&y5\g8\n\&pR"V*ƘL&Z* L\T@8!G|;_ sjer`LR=l#wlmrjo` ɿ~܋ϜegK<aD8a $y-֯{RΥitM_J .;mm4 b`oVƍ^Cݺ%7̓˘Le\5VW0Fzb"& 0CD:om5F$rhydd4(=K#"erl_g~ѣLjlVy;pY)+! !5#QZo籇{/^~{rjȓFQ7*-u9/u溤rreYv)BnR^+p%4Yj{u6:Ď@\VsPT$~b!.RH!P䜧ek!pvvagSYc*J.+\GZC]O}?پgy1S\. B60Y#@VgxчfqaPCĔ7--$D ,pjZPRS`ׂ+[|1kd!nl.#7 cJvͪ }br>눙WJ1R۪."vs.0C$##wt. qb|kok/5)DGGۣ=5o}P^O;e3j=ĴJL~r9U?_;vg|(Coׅ%&Mţ 7ǿope41zŁ=vR\zmSZGr;s={ I:|afްag|wwF#nEQtѿ7 wX6`3aOs=Owwu?У~^{ \a]w?0P[ow߃w~N=xq'N]ݾm{>_DL?yǯoӦ͏=.o{uvж۶-8\=4Ĝ$`j'ffC \<<}'OڛG}bic;vIh{>ˆ[oR箍e3~WgǺuk?1=Se⎶_ŧmP׾_.O{J R֬SlF'&'6ojmlXO> ZGz?C#ZkTjZ9ѥ!X4"dޗjy h%_NL>kzıgOq~?:6??Vuvt_~~'13{^x~dtX,j#Dh-5^xp.IdY,W8O5Ɯ>s{?hwgo? \>_y1N_;~3#Cbqzf;ɓ'0[o;xП_q}^{<ڸqC_BKK_:{/~T*9s6OS}O[?x ''':Z[z{ܵͿksxzG_{M7=O|泫{LLN#MZ*B@/}e:)X\5>7/>V2.J~Pyj[@ggg*=T[kԪձbwڝ.n߾466z۶;wbbwvl٥F\ 7|}/k?Dtxܐ4Y/y>3gOQuV 9z;zs߽{ϽA̫mx~'&}=s7FQ\nmm;wr;v6ry2g~tJnwΜ?]w޽箻7PTݽv+<66BYB" ,s4={=_SO|1f>v~?Ho۶nݼicG/7(lŘ굚vhx~uBɯ?޷wUq۶m֭Kc3gߝAj~ y׮[kygZ O[lf֭koool{ /$b#<|n!_IwXz%NqtlG):::;::{FGG._*{;vӫ*Jzghhpuwsݞ=ϟ*O |gڈ\x36d3ƘryJ)۳P(Vё(ƍ3bl|lpb!_igmPnohD)>}ԩJή&^@7_~E,wvt}*ϝwxhu;޵ɩ;c|~||<].[VZ=33}ԉv޽۶lh7Wf2a^w)fwOτ3ge$I^xՉrOO\.{9z(}|ɛ Ϟ}^:vD9~x7 ógϜ>s* C)oW !/\F ?6SKBmo>)MfR:hWu]~{3LI*ryjzŢ޻YO222ݓ$ɻ2޽oܰidd㭥ٶu{6=qwիVAfb^{yBޚ{曚Ki>M&y&gf׮Y*?Z/uuv?{*߅Ba횵Q ƾ޺}__88PT:R%ho+J%d \jrٜR)77_JOBd2w={sni=?lsa&(G(RG^ٖ,Ym%(9'I &`rz?40DP԰Cu}U]o}s͍ ieVLm*Х3.=R99`㸡]wt]{JJժ9F]]}}Zr{c1.))--)ʹf={?0L%eN n۶% w>/^(*(`0"@`eY~`3؆mpl6Ǹ^]߸OI͆e^'T_|@iX,B@q4Mhx`[Lk IDAT 3,#Lfbrĝ!qPDfxOBj\2xzⓗWUn맅yMrmB{chhh*- >G@뛛n-M۾g)*,(zWJJJpp؂xZ),,:iӏ._xᱱ˗/dfZ[Pk4$yG,cYQ0#4E  `T0c0   Ch4Z"`0 E74Uӷl/,y['676H84{ L)eθxda´L}zGԄY-ˆ&?E-s5nom5:6ydtCAG-YSV۰yssvvE=Hd}6+*cwjIi雼rj^h29Px29 4iL%7k^Ls$>`iԌc!1"& DS""DIwI u/~cIJ9%IkfY[l/¸cS'}>ocCӦxܛB(**zn)(iPES4B4MQ^4-|Y0NTBֶ[.p$422 hllR([)㬭,I@R0L(4G$Db4Z-T(p\, " zMqcl41E#jZ?F HOoe4 %>xǝ6n<9D#.n9x,l̫Ćl2Xu`u3U&'_3IЗ bT@A51ZӔ! V@dpspҸ  $A\/!DA+ cuU͓_xCFJ"RT)d֏[zX rsfQ2qĄ>yuU֭-j4*ZR3 #N# Q<3 3Wo¿gfo!`  FBm?D™VN'8uY֬) ZѨ9#ʲ##fs^i: |ɑ~TX!$0 c067mPTL&@W_<{ }$nI$!UHv-*0H8F}>c 711Rhv8\E5՛LF_b0srr5j cy7* ¡ƆjYge8gbhh`0ឞn67o/Û}h(5; GI <99yn\iXzzN5Z\\0ʦ[}~נ7؆m: Jf`prf3J˳ FGG+!`WW禚ZF{z{>;ɅKk7T)Uq:]]e%eUՓ20p UPwK ߵsOyYgzxFKgjkJe~nn~Jo7CoZk$F8i&](ɰ58400g;Z7Tl03\-vӁh4];\zrfgjtjj3-֎;^??ip* w|捌uݽ/i%Z2AFNNnuu͍[_{jj޻Fmʎb{ss#630VG> (j]|gm6q"س_7#?OOjҒm¨s_?cdeeϙCeϯ6lkorUooّeZ~f#Q%iCI:Zkf꺩kׯ;_{zg]p|Z[oܽwҲjFrs)R*nF5vJ^ox>wh_B dRTn{W E~~` b(FQTb#?9Κv],juFeNCRaPH$iT5gΞzKFiuxe^O$f\Nٙ)$YlG"Qg"q  7j4#$h4)JA}>_8Ca cB7x<M_z9#Ox&L&FBxwSe0)L|^GAe[jU`Qiרe˚ Y;)3%KJrHUf45#eguzܩ?Fiq7n1'=iah(uê&=&M4ɱ;oXYW 4+tj&%)%[6 =} 1MYkXe,,m[Z2VZo ,Ily",΁ª1J뤋{5P~u[c-[,I<-"-&YR8X^,K>"L䚯U'W#S%Ygm5\$2eeʋ97, TdQ;W.WG.ӤIFDR֔%RzWCy?2+?9x(2N/R2~DtըsipmBM,2xHO;DjhIkf򬎞y LN&%=Zw= cHe3oݓE[,pRQ\\$|׎BGoW\[GU\gJrb,[f7ȓTy7dT>jmLK^Z?LXy`YTC|Uƥ"0dL5gFs6!+K2G#$Vx'2RZ[et57)S)<®84iҬqVπ*e?SOzLHfug@^ߴ[N@6ŠJ.$Q[%.Dّg>FVRgJl5e/ kJ+Y1֔"գՓSIIlM2,܃x^3P.᲌:XRjHng($M4i4 ˲Ę}, 1 XyNuuyb^GMS*d2egeE=S HkdX#bX8T S=2X6Hdhh}twbb]]hܜ/y|˖:E7p} `II ~;Կ*+/BHlXEc*XEmM{{۫Ï>!V)`ܹ/HM4i,'g~$}DSՙlpl!8]W~ׯEߞWf]K&cgϝS_*..rrg罺چwjzSV9ٜ!.|<,I._hkoͲfmݺp H9>di8kH$t3Ȱ47m0xmtlDTWlۺ$'BsrLƆ͕h{LL֬-[KKJ5l نZn0E7 8n <_PPذTZ=˲Y474L&mW! /ބ(L)hFИ#"Z1" `^`!#LY6H4qG4wRߏmr,)c1Oځ"P۟}`9a.gΜ*((i !<0w5,Z6}}Οن676Ѵb<1>>1y~xdX`j78??uqaN_=VTT<66z{U(BۭNh-Dnw]|tUH4j ݻZ2,C|?@,;2:266n֊wޙ}=W\rGM?h: !hƍkW]**,޹cwQQb1{9~?` uz^~`0jA  dac8nY!5RU wt[̖|k n lC99.X2w]W[?<2ބۭ@8R&) ڹW[m/).0g4jch4B!ۙahںҲ 7[mCU6V{7TiZ@kۭ۷674T*Tj,8̈́"!(hP*JiSZNP E3 FJDӀ B> b\4/јwuNaLaCЬ,*qRrȾ2kǒLB[ tuu^x!;;eێi uooqء߿NݷOq\w?/^`0aQ2L,Ʋl4 ݸyc/nٲ5?/?1cF(i͍M.)h4&"HUc aFmk- 3f-*Qh>p,F"P #h8, EB`4&H4J B95Q!V&%NO#KUnk{y6IXwߗ_[[/L?66ZR2cKs} h47/7~w^GVV{}NZvQ+\_u7bc,cH2 !~? BF)Vr SJ 8d2A ( JJDBP,Kl.^"5sr-BH_ob)++O,;w:4jmJRBU @ј&snLD٨aZZ[3.\:¢9GtUeuaaV6zzEQ 1Lv_[\\bfqBxmdtoppk*6FP)crSźPSQ(JL B D @x4Ma\_1fYV (C<4Mh~Wg{G[qQIE%Deg&a#lԧ榲|mjj $ lTr-U95!1^^Ԟ4S7 :u'- p #LEaAd&\%Az9Jª6ԏ㗉$ v큁~w8PUli !kf=++o޼~gϞPQTZ./xɧz}`W✜& IDAT\bUHR7bR0B\i0%Jn!y;wX2x&g/4/}mSM4zyZI%˭s{1Nd.-)e6legzz,̢bJrVنL&_ʠ70::r?:^YYw> h(* چrsz=˲wo+.*--l7z}tltϞ[( ( >(BlffZA1LLtP!@D@#"_`;fΩ4 vLTn̊ܤQV-/p쾽X, C7n^ۺe?}aA3OE4t3gO| 'ToȰH$P4sS_PUY}ҼkNsߞyyXC??:6p:Z[ow@B{s4mn'-;>?6<40oLf>vx_շl~>B(? ;;>~W{wt/k޼v0y9y7зyAo0ufsbMܖMCPޚiNY[-Bܸ! >`L  M MBDA` | ӘQDB TЍ$L$q\c Fݵswq8C`(-)̴2 #}}=N3ʜܼ‚ĨAF#7oeI,w:x+i8 } µkW>BagO~SG6YGʞpjng '5idZTˏB5·>>{c2p-;B b珽xsj4I+&ț䞽=(̴ff>鴺GE0:~۶? Ì)4]PPX0MuSEg~~Z޶uǮ5 /~0JvU*eS=&vyJ֌ۥRB!{eUI`zCEņGqCjߤI9IE%Q0۸!450+(TcȘpi \k|< as<]%YOtB`8@cN0Mc!4E)UJuv3Xs #c}^ZfT  pG(hE}SM4MMx&XLi5Z1f7Mu fS F6a1ݼyAoT(hR522rYVs.نL&sNVvvN<q+n׾\WwHf4.J.|ZQ߬ky吋J (IYɐny$,Б}˳8'`%q $a6@Sp8vy ƘD@,!  ML: hr7U!@ASP*啔Vј['o*a !@@B!q WnݺqSGFp(ァt)KN}ŢuԽVJ/kNݏLzL0Vꐖ, @@!Q OQB @0<WUUψ Fi5ZF40 Ɣ`w`a_d aKep$|֛ =fcCdJ꽖RL_Jye)YHJenncInN RCLʠ0O>8#@G)C.iMfs L*7V{Y ƈV(x^@>xnܼw?ܴ5SA(bjڽko0Ûڰacssml3g_4@ [o@48Ҳ^29V=˭5Wv'f=檛,sTbeC&F"ŏX'7+.Z{bjو-ڋդA&*-;Fxx& FbeE\toqc嗿F`ph8.A0MS*բ$aqi4֬陯O7n\mj/M3iҤY?vJdB'Kdd!q#F.ˌA y(:DgT7.b!)T H\%iMo_O0Ƿ@yYE(2+wǟ,Y%vZ䒫\>^E7yy1MO>V3MѨk7Q./W3xP⼕h 67'aٮiuS//"QDr4iҬāYm#hFtԌT33d BwG<[7_fS_ʍUfh4ںەJeUe{j7%~[gّ{zr`puykm;ל"c8=J-ɲI1+fs#3MIvN%?bo&,|KcY^_$5ErKc^idQݗ+v&1H^elda (a1dO)B6@P<)@<o7>|M=_ĉ ?~\?=ZYYiZ=֭[w;tuuEQBQVVPTz޸?쳑'Ntww3 c۷o:EENMY7"] Fz %yG/cJ*,%]1]dl޼M<޾o߾ÇkڶP(Dw͛7߿k׮7|رcJ7|eSN޽{V P(d4-^沲kmm---7[oeddpɓ'OaYv;NDQ#iȄtܤT1՜H$C{[h4T*v8hTZVAG,i!f!4<Ђ H+ Iy&H!ed)R0)˕\g2+,M}-ϪdY lAtVe:bj:##`0AѨ z!ty͆1Zny>#Ui޽{wmm <Ͽ˿GGGw/~_ܿ?̗ʧ~g. {2! aSɚ0KG*UBnRe b֚ϒ[X!hyAhV(b8 M!AbqĉqVHtv.VO["0h0eeesrr~6BH8noo/|FGGAؿnnRܸq}zzzl6xeAAo%/5ר?2;Lne!/Y#:I&*lk~45L]]]`2q(q͛7ovϝ;Dzl>tBˡPҥK[l9x`yyy~~~{{ ;v;JzWϝ;DFc4(aΝ;[o%W^ٽ{o~Ci#GG?8wGg4cX$G, x5R~ȪjhF%>zLWQjAnCgqʕo}[ZСCn{tt/??WTT9sywT*_y~3<Ł@?~>R:::o|>߅ ݻ?17\ZZq?s۷?..J&r$E.ܲf*OTҤ%V-e##9vc=&µk~;w^~ea_q+~)lַUSSCQȟ^{}_ݶmbA544TUUOw8^mhhn9zt:ݱcH似xlh|#[6x+ߤw+fP.d>5T|aVفt#eeQR!bjL=[Jw 0<<[ozB{e'999**lnƋ/:hODSN [VKObgl60ёHn?}7GGGg\76 bM"b( NMKٷ2iҤIfφNW`r7000000X,:穑#n˳eP\~}SW^<Ѥ ˢ׏g"s }~FJR\V4K$] ~4ss$ʚ!T_`0:ж+,2HF]<cԺVo^9REߩʋ97/Z;uc$gҲ~WȣmG~1;;{KEd` GQҋ-caL\RIo`BH8:{筮o6U~eVg4+k ŝM`x}rҒM50/tz=zaÆE%4M;ǸN.((Ԩ53 :βlvVveeuNvBH f^__o0Px^DMuUGGG]pVQX2p{M/_ StA8ȤdLJL呕=&_Ԗ G$eѸq)GFGΞ=q(B1s 6 zO; St+Ⓒf:st__4Mu?ԗrs fllKW_F ?2:k瞪N}bw#@Ey-;y䳏1JSO>m6g,EV o~`.YԚL&}e* lغ;7Wz~!<^o`sdab2NIHS]|<{x6loXY[[gʸف@~@[W׸cǮh$|ޝyƭk?x777oۖJ}r)e"BxV덂m[Z§Ϟ2̹y4M_rS[22“E]ykӬ۹g߸ؾCCC*,騩k7n^3m94Y0`1feYiqD? r0)ZZ23u?{ou%hs}/3w }'EeɶŖreW3331=ctDODԸʖmYeKrʋD$$;{q3 $ <mw߽{hT7gzdhORJy66O&=fFY{DH|P8 1̢60DrG)L&@kq"d2io뺶 ~O,)-ܙg@<0ɧ铥%e?p]w颥?.^~rG;+~umd{W c|d4<3Vnvӽ{&/h_{-޼qKGggk[sg*+|O&RJ]jt҅5k_y[rwgΜ#~C[=/hpvlܸ%ܳE`& ,ջr+&,374[㶵xCbC-ʳ_]|%">}?-=2o˖k׃իלy%Kxu˶ UTVuv\5{>#vڱ`"{cL}G}fQ\?dwUUU=կ>|pO/^^y|Ǐ55-++;scGm{d%[&l8Zgc+L&d("8"788"PX+Zp(,"ljjjjYx`]ځT%"  !7cYqݐ1&D UMqlP8l? d__{ VB gLN{^q =Y`:gTi9BuٍZ]묪>|ܼyf׍]7_ܼnyxuTyymSN^ti]S:?¹G' ZYYjFRj떇k}?kӰ~uN<>08084XZR Djɢk׮WJbuWN<~Z"\j`?L߸yDk-.D[+ D$9bD[D˖-_dRO>|}+/\ R00Џp5@)ծwSM,M.:.+70v@PuXٳ~ҙ-Z䩓zgɓ/\|K/O[7 ,ڱ߼ʪ>$W[)x' s:}__EΈ2dC}Pd%q(=DfM3|{?H`yPXFMuwGVVVnQ9}ŋymӚQQ+>x7Rp@͛>ss&A&O[~Opg#5}mmlC[vWXܳ?yliZ _D RNdL<}rsϾa"tӚD2'~DЖm[l+..Z["޲X<ϙpmkZ_g{--Ν;[XX57:AP]aw&(bƻFR{'B8.--3aɒ˗jh++֬nF"U^V|y]taa|N}%K._4+ /?Aaa!"kdҒRtqqEK/_asrhkV,_UUUm-Zqím-Mk7oZ_Wl6-\Nֺ~%6IZFB̻r{1 WUWϩoXjMs96u(*/_tڵ7.[s6.YhiiiUe՜V_:Ñʊ+V_a\P;RPP_7gUeeP(ZXXS]S^V>o^csӺU+VUTTZҲꆆVnnZ[UY-+>o[=+N\`c,X;d]AsuOaֲrvLBfu$0)IPY`= 8rO5f˶Jn13_8sds.H,cŪ%"OHR D`Qb1,5"qcφ$emLmskedpYl~Hf8bC--ZZ.ɷo,ec͙Ak OIdfCL3Q˭xL{#*tP`1]m9ɟ|f6oDXN$)ZZQ HEQhc|#>O#JkMD0v 5d4cM7zgZ|a(c(faL[tٰIDݧrc~vOzIl fDԨ 3&DXPҽ6׋HJA46 )%0cdkAkI9ȃi6<00TYeQv# x>8Za:Rɚ>|'fǁ7\bD qIz>)" 0) "p* d5:QRipT' B"F  'at/4d^ FHԽ0%O`Y0u`1`=UYz7/qٌ|{`!&oF xF7*Du15 c1g7F T'arW7jU1ӈ3"acX#p[gw}NYuoڧ wc Ø5ƚs`FI::mOS!D3 F}yFC'i.*E@L?+,/QZ )FX, (%$!~2ExeD7X C{IEH:{DJ _ɰ'O\0*d3N*\Nv@̍Fnw;S!6 hb`I% 1γv<1G2ֆjEL x{ҘR0Tg#g"1BƀB["QJke|/.|:9I(VtksጞRlmJ"@P<$H%},&ٲ4^־Rh$/gX;6u'Ah&@VAOo#w^eçɽ6{*J'g>p h Dc(r¢u"'v4"ⱄJhD%<#N;C(D`ذK[lQrf}1Ȍ6g!8lmq:JR2#,i*H9􌈰< F̠c`3σ1j &"M.;a'%FAR4  P:Zl~8hsM@>(N L`'J"bcf<10#r^w( Da VGPJkA"Z=""TJ=3{‰D'VDDJ)PF& 1"ƾVFQ,H B:TbVJk`dfNd|*6L63j}0);,`Is \tϐ rC: 2b&c}RJkm!f\W*NxÈ`" l'"tD"hs #1uL}m6-I*uf& /)I`&rA7mL)GZeqM 2OTţ}ôxC原֕tIIt"_L6YM~g "bSD R8!L0#kAA؀$HDN+"ց2}DZC ̒T&ɍ=XLP:ت4ƚWyo [P)u?ݧxj6ׯ_dG-Zi-TTT%K._ZR6wK<?~;]OOwIqIuuͨ,!@afذf@f|i~q^}=;Z#R)MD@J* "`,Ȅ3I k1HDzh%ư1<`v+B/jG!ưos ! 0`SѐҝH8}(,I"J:`mbCc̹g@H"߻#GUWU=3#?իW{Ommy{WF \~ֶؑ } 4"&59Y$LLF_;3Ka b + c|f"`ѮDs/ [[!|F`BĢHȰ$=7~wOēCDZ;3b+p1cK^G  4l /b|ad JY_D1) PAmbX9IlΞ;0(9u-(xd˖ ]]7|;z[ݦ3c3@3f,C5RtC`g<BUWgT;SVı@ٶ0e{j6|SJaOl^$"T"QJR<}1(IH=#DdQ 4yɤ"rG)y~<WJ)"Dz3&)fᑏE?g9wLcystfs_=ؓmCqtW^vyy_qwWXW^]l /|=6ۻӓ'O!g۴qK4mܶcgΜz/h+%%o{dm_ĉcյ5u;w~p3rLsD ? Yv|wu| "2bQʦDd֐b~^C E 2V>R@r@+٠@6,~,,6yR(mu$tnFa!&HLyЌmó#a޽K.}}/Rj`p`mnZ7]'ms9e8 Y>Ha3Kfd7TL,4Q~cG|qP>CH$d| |"$hEʪ'$<,$$@Y &Uu$"% 3cHRY2]kI.>1lݻw  nڸe3O"kׯX[Wmm/'ɂ͍WKVZzU%gu-6nq#{7m-5ukV7mX);wfǻ?~y}JWZsɻɗatgh`+' W̷Śҁz_TAqt)74 Q@hm/4b )(hhY01%#*8y\ jPI0B)j?va"*$TÁM6pycln1Ƥm6܌}_& ȍ7JJˊ 1WVVV>u㍍kjj3yF}]%KAgϞ^ty$ٴq…15u^[t <77nH$E[6o]xR…s'N?;wU50twwi]=ã$kF-R-6NN6AF~O$)Y(BBBRvB@dAD$ @M'€P B 30^rtBS*AhQڰ6ۈ1 B(hPVm@LלAAdVb#-nUkn3 dvtvv9s*L\x}>3,_v|ŗJ{N95q~eeFhp?ϝ;cUUաP]~v+(=P(nHkm BL&LQ ]|K8|ƍGp…Ξ;r)?~,6oz`)aR"3sv`)22Zgz;SN86 ɪ0D$ A0,@ P jek-"` L,aQ"C VD fV s_J9"d0}ϰRa%/%/ZHH$,ƨC>1&  1y"KfaҲ+W._rXlJJJ@QQѪ7o vȑCkV7UVVً4ihn^ܴmŊUc| 6*Ν $qKjׯwVUWy0bD"qqFlM9nJ$&`Αl{b 8N M FD¾}A1( ;Vl5 ])8M4D*LjSűXl`0F8E7bXL7q\W+ܐRd\& ==}BvtQ:AbQQYtɲd2JKf|M+~l_bݏ-[,O1<R\.Y3h9&LnlgV NK13*[(@4"̈ "J@PZ/@`_>3x s҇DBd IOEzC*[&f߀7b[Gܹm{gϜD9_{ű[2*ݾ1f޷ΎM,Zxd35'j7y#mnG!kF'`gMIrO'BE,Aã> YDW._2%˖.YU,]lԋO?-B ?dWq̯JʗjNK/7o-0*Z;/?}:M&ҎRG!==ӣ krG?LH{K %d,l%džFcFAYdEla{h 5`*bSnh3Tn̩naP1GI0u$B53J0r|Y5hDP,d,r݁Lfp[ }ܴx>{TvM4ʺ RS'L( k ,b +lVI+T6]hDZ_b[~<7ڰy[eMC_9ZlWիɤ"-,\dE(ûOٳv)l侻zCg6>R0$H r=Ux@k™X<R=BB@)-x>|7 }/oZW~dͯZ.^\iӖ||trUV@wWz-|7o{=]]kmݶʕ+vq"{>R8RgxÇ⊊ޮHdᢅ s=ra~5]]Gye՚55'9s67{k_;ux__é{?A8Ldޝ;0 ?M1@3{TmoLm>D'PXL<7,Yz՚wo^[h7+_}~يh;O/?aÑ-[?Ҋ'ydh/RQQ_oyCkZg¹]>`7Kx6.*(*ݰu-{v_|kWZ^MMmݢEKVZrG;w\ܶmv>S5Ms\8#ǎ{'-_OΩ/(;zthpϞ>}zz֯_7?uC_T6]L&?sg7>cE%[/~+RU7xqqaiI)aƪ7_,.p\W;;:HAA4ػh3 ...Q:[nN\^~P,3e& ~OL=LR#^ @dP h!A())#]]W.{ׯ_OEEEuuUUU|5X,RV^*W\zVtpp "@<!ƅKJJ@؀؄R_W-W.^ٳ]]]-]l| R s畖uww! E%啕dr='OFDA b1(rB!Rۼ+\J`nt^{oGHTݴyk4=uɣ_fdQW|WhΝ̄ :==Sm8&A,zS7aܻO0۹ׁ(kHezD|Ɛ=GA{huñ>Bt]W%x"L&Qkmϰ*kz̽==](eeS#`(Kza $j,T^QCZ!r`v8ZV75_8~#{aޣO-DªkɤE,y/;;:zGCΙH*|'ſee+S2VTV?W^|镚?o{=`6fK WU!f)tBr>YXEO At[8(AqBfH,iBG\bM[/>֯SǏ}Obs .b7inqOv{WQYS}~M6=׮u^ܶxيr[7^~Z;5d\.]nC~ްuh==UյDg?icc'|kX"חLzwvD8:]}1SA=U8LCϛ3yc=odA!`R@, `=__մ|qhwQo捫v~?:;>?7_x_K_}  .] []]=uW?˯h;Z??oq{.;?a_7{_/[`ׯV'ŗ_?wӧO ˫~ 58|/^8gWdK2dFFb4xRbݑ^)rLLcQ?{o$Ir=8ά{`@Z").E-)ښQd&V/L&3R2(r+Hśzz类3!򊬌:ϟ?wGc2è;v(M 뿪?{s'K/o2XsOV3?O ?UEY()lO.]RÿJ׾=H&A=#/>Z-?֧||رwL~3O=vL婩}nRN&o[SSS$2oimB(J-rc,UՕ Gffcc#$K1coݿoijH6[^^v{zfvbrʴmFuϸBm_ŋ% 5֯_4/)FVɟ\Ŋ| VSfJ4bX GcΨlތx+t4z~Z3z L 53;um;e;"$Ib;jZwB+K3 T;/BD1@1."X_[]_[G0bJia.z?uIƸVLB Kk;X2`eQBB#@~+I2Z; S9EQ/&n;^7mM "85yB̛OG֘Ϝ=wgZH4mMdE+W 4kBHHr'$4jܰF$WrEP!R(FX%10WJ B NFa#vCXcЄ5=4ѥdދs،$@َK)iZkۘ2BT({9hه޽bɸCP=j7b  $aP>W԰/cFs(uF5X۳`@2F)ctQк;#Ӵ!_kGɩvwp~vLAez&~ 1ϦJi7_- jϗ˂Z:1b{0`Pu$0 TB3c$XB@@;@(1u)cF)sdKC;WB5:c5Fi/ӟys;Ӣ񿸃ҙ ]{.g`d t8tԹ~[nۆQe@%Jkz4 ]¦̦Y d (ƠZ*5%S([r\uMeFkL I% ԝcb!´{%OB@i=ly ȝ(UQr7O}Hp@ЉIe1HZk DkLaB8z񯜽y۶ !3=.ړ:5Ϳƈ1v4W_ykD_.i>k&BH$]S$Iݮ/>"xtijwPd pi $%$4L[3z"V!jL=v_z1p.]&MBv(5|KmSx ""#+jB'-#W*Av{W|r80PmLT5&KbL5J䮁H B$XzP;J;p,/8Pf! ­D7ܖK#LJ8S_JOΊ-]ZqPŎ!+Q@ ƒ7&ś u_H#G }=\7#:-k?$XwS1#>Oi(ƥ7r'Ggx Փ bIt~ڽ[*w r ģ`pa.##k)i>c21oq<E J CY>G!JC em;EtvEŰyԾMFx_{Tފ<,J x맭 ߘMeOpn)[b@Ղڀ1UPjbTUp5 )U-&2:u5 l&p׿@B(/W%(SU(J,&'tESTf~yn ;gÄ}ToW}+F-@Iás0,+Z/W v5J*KsZ Km} B1cնmBNUO?-I^ߴ$f'td2!*˭̠ݨ6qlKBMhSd:k2F((}Gh4M Fѥikhl,]/Pφ2U4nW^$I\fzvJ"dY$0Ձ:!!9Pحb2;Te*a,anbfM@+kFi}0>6 !@xy?a-r s;L躴?(JG;ڨa,N#Gfϫ˒ضi&,:QǓ|/; l,X6R,UmB3L AK٬*q9:g0Zzdd:,qgB "uvqR>^ʯn57X&ud0B֋z6 ɬ ?4"(/(4Ÿłѹ ۰<{8tx:NH6-I2qlZeE!P(%C %$IPZOc%,3@B 3ٵLR;4eL*ΎL/ݽ_(S솇*ڜF[xH(LJ:`]j.@ͯG|8ӑ.;(=heL`ricPc80fVlnz\im8fRJ2 (B,c4 +Z bYh"W 7  tU-{bYftLUZ c ƹlE9gz  '}~‘o8Sӥ$sêd|&JV䱱8js-0!JCiV-)Ta,)@m 1`P@0K(H ElE7QBWKBr)]W]V9)٤RM 㔁.[z]B/;{ Յ'^\tc*}=V}YQr#Gf:Y}B)B6,KMSM%4bTIgml;,ͪaQz.A% &:Oߪ,Lsi]qneGd K!sC'(2}#z ^TLT0Qcsh&cj:&Xlh81KK6n *DZ.?(ҧ[ i0ZVd=9ܤͱ||($%()` 5~H~AQ^ӈ= )Gaɶi lsl'I'M;_WWEQBRمTRu{i%@ :5ҳiVPAZ`l]+:Hzp [Z8vLAGOO6ZϗvwaQ<{x&ytsœ7|^ :m!|6QȊa{*'>U})9>gx6nAŰW*"E)8a&΁tj9-F)FTLY<2P^ԗ>QJULeʭ^cH Buk S;Ѩn% 'ܸY#l&MO -tM!NeH$Y` `B#TU,WM{,Wg6a6Jkrug#8 UHkvV?&D} tP+] e1ew@$cy6S3zLozSe*B1L'IFEa%vR鼧c̱J)1$$+Jb6M1*X:6MX]^/+EǶ*%Jo^/TlkF3} g7 x"PO™R1F1ՈS#lBDU*xɪ&$0#cd1c[-.`TdLc[*e2FlO&sIBzqihXbH@ חeO3j""E1.%Fw&p;!Ο#$ng3Uuw{wj`ŨTHld&1f;aH&Rl0 IDATۮ禳z"Pd;ɹgGvuihڵٱtB;qx cwS>k?4CSBD @T-g(J&xc`YD>RJ-ŪmDFP)1L*^2`BH*>:[E9%*Sx ~P7"2{$:c{2>Ơa$Kj<oVLƽX:;35^GSX"PΗt7#aSLRO%e134qű=Q+Ss~to)B(XF]-W0qCWkP kàW.ٍ泹LC:}<4TCl$Y4mJ6:fٰ6x.SP[0d!T1'e jqPL Yx<߼nX26ANQ$NhZ84Ƹ~% ijj.ot c/ZsVf46#>"AC8]j ~G-ܽ T=EM zATP=x<ɦD#JB0P. BHVT@v˭B mٖXm b;C1T8ej:JٰTYJ't zT1MAmVJٸ"caY9MޮXh1D&)k;+F<gZ'c;C O]\,kffSGXte?,-fFCfɱq?*nW c=C4,7pcy3{Oi0Lk|,ָmlSewn[;qd}?].4ʗ EtU&26mG !HչͥMO?Ε^|'| ctxbbҲ}o\y駿7^z귾+mmm]<^V^z駏?䗟*W_~g?ܘ_ù\ζ?G?g\ʕ;oţ>}񱱉^i\~'闾 ?u?~Rw}'/>_V/?X?t+IMi]0bG-ňOˠP`2R ʀ ZX*/aZY(MΦ3D}vLLB`XνRb1Er}s%x*720o۱iZiYҧt26MKɘhհoU+TEY4UQq|g~g zɩ?~ӣGb+?_Z >#kW{Ν[bԩ]`=3o /V uxwV r4?PVꕫWܹZ.y[7Ν;Ng.y~~uٕ7#?{|KKwL/*=Owv$mB)Y6`e4J{l1ҝ֚a129'B3jC|1J𮯳Y4qуY6OQBάũOYȏgR,?!L% |$a!R"K3bPUD0+e;,a1qhj5ESewi9tG)av;PJ /,K]~̙iNOX, ƯV2zw-˜7}fz6>>ѣǿv[oLNM?v*/*m hzzFմ3u!EQ4MG%뺢*!i`YBa܄b1]m^Ys?2 ci?_eskg~p޲m~VT *ND@nertX{2qS ]TLjAQ˪2ʪ100T qu(M'h2lpxr+_rd3 ,o;mV_kp~f"-Klt-s7qmeJUE%tZ]m^P*eܹ {ݣr"?XRdŶl IjjPIj{?cF4M,I'd2yoerR.J_NnmaNikHtdMVqlt6B(Yv%WMg}`f[&f8+U4Œe9n<4j*K2 Jj0U4Ο]YN e4Q]Z^8XlooYޛz܌eeǺ~{i~v"lDZM`m@%BLM0(RqP1 ˡ:rltE'IґsDT,2fffB2ƨQ'&'?廦ib)7n|466izc2qʕiS$[3F(5 C$ݻw676'._~X;Wvq_$wئoQ*.]Ϋ/w:|!x5+ȯꊄX)ir JkɸU. l1mlXRUr q*=v J1,2U՝#nkGr&t5#Iƫ[e7iJ:!V6wm XBr:t& ~{|7z[ͮK\|򩵵_|4ss }|7^ϟ?wq$޹}rotVPJ/^|՗%IzꋭF0c{ N{SxJ_RLӨFE<RPLRuY )V-`Pw ˱ #Y=bZa%5bX !԰lasTKB*[F`hּk'd"1QFfY̑dVcUQ2eڬO#zꋺ_O~<$Μ9sVQ}kZs؉~W{ͷuWˏ泳UV%Y(J1(Ǚ~>=JÓS YKӠHDx@Vic̦SJƠi z:xMA)svnIRd`ow vw~`ll淶6Bl*e鳏?yɅ/_~|qDx<~ʅKib M! cd oX:B_?ߋ鱹#/]z'3^| >k_Xrcdc?sGoؖaITWX';S`{_f:2==oĘW6xe{0JwEV&@]]v1,%cucRJ(~@(%FO=#Q!411111'N8g>رǎoZ"g]Sy`dRzb^Y5uM{҅S'/-%>Ǐ.(4;5_yjvfꍷG_X6>?;9^5BY6ʤS,%3''+/=[^8$+s|C~?ܸu¹x>Gf¦EN,{?xsg}haX6_>x}k:9s-Vd^k!7TC)z>;H4)/Ja\0 40S{pP}N(قagCgvzjqaRkqܑ?:kO~voe;X/<|Չ/]*gR|/|aڹ32ѱt:^ ;gN;87<{҅3/'7n/9sĝK~Ƕk}23=yϜ8~tw}ş_Ʌ#O<~yP*KޙR&˶CF8fY?ZVFlPdC?kȞOJv);pe{vϭol޼uG%'F82;sı#XÏ>T ҽ7nގc^8+҃|kO7GL'gϜ,ݥ6cP,[\K%Siݹ$Ik뛳SG&rۿKONMrTeôZ*WE;i.c7oml` ʕ>DUse3qhRsbtUvR{R h(¢C Z1=ɔiJusླ7-+MLe3iJf~Pvl `*h6ߺrʫk2tR(T Qeqr1>4=.a)Y.S1ݰBR&q4߼}lqm'b:¨\d1,vucH)M㒄r$mnV󥊅(eҚJ` 2I6`x7lӄ֡'гu4YDZZbC4]K%Sx2VV eB@(&qkOX"/)Uˡ(i@.04ղ|T6L̴(&KX׵wl ɸJƁ1۱U 9u #L$PV J%l*qo+^ I yT8WܔFRf  <݆ K IDAT} ^ Qi /ZeZg&ƲaBȝmwi7B)^:{ # `]g{y+t_"a Ę*trnRCw.{ 7/^yw0>p"_8wͭw~)xj"sÏ>)U*o}҃yVuWK||̉Μ:pĶ/7.?tTnnn^pg^ps?GocDUE|G8y_xR>~{f_ewVcc^zs󇦟/NO[ ŲQ(̞?{х^{TN1MF*UqlTYg.OMN]gOy-=t8,l676 nHQ\EFs) y6{V|.ƀ1ɳwOz޵O w, '%?o-RŹRW?q\5oߺ5>=}ʷe[6]^ʤg8}ر{+^yö.˯]f~}c\>̙3' s[W?HהO?^|Q)B܍fg/?21>w C#foVMk8;@87^$F=W6x_Ljfz2J1ʕ򍻫r!r.ed2aجbbPE ITAv9T:{v0d"_Jqᐍͭͭ|lV-?btBfrj՝ Ӻ~{) aޣ*UR]XU1Xm_`&*c )V ^oi-cU*n+2lbڻMY"VM;1JUMO`,T_2CQ9-d&>ۮGҫMkFg,}=`@G$H&%q4E&e ,V [Ue cUIyC@V!Zvt\rh[*!!M_b'K$$r#χ@* QA0ֱHpP0:gs;KKk|SBMV2($Krc̴lEtL#v+PI%ϡlޡDLalJrrHMi)EƄ6u$IcϦSx𼡟?d* ,o?cF. {JzRd6ac̱mB5BHHCbِ*cEƚ"*h*Rd)CIvv1-bZDp25Ցi!)ME1] mq2bلZ (tC^88ӵf-]ć[ Cgٜ<81>v^ymm~\aؙTKXUUEv;g0Q,IIX fBbVڴoŢ !öI?SQ,vb4~ΥtFj:1MSj~xvϞ;slOޭf[[+xҶ׶;wsWb^7|pЩ:T`vˤ=Bۿy`}Ů=s##;M;ץ KvENmK K,ʐ6?ѢwdHӶ<1ƚj-l}mlᲧ{}b鷫B׆P{jlHFOhnvsjUܩ6sP $ a;˟el12F;ui8"O5s[mM̛UʀnPfw^LLUHb6Ż{.4`" ? \#鮭U^LD j9Ss䵅y-# GW`8˟ł(}F9hqi@  psc؍$SDqb6X0/$ pxH*CoZO,y6С&\ ,_aYF TH= tpL뷿}G űN#ܡP/k|D @)4oU(Q4v@ tc}>`/B\ֳqTn Emg#j {&C b,_k;/[h ҵ.D@fxxz -nc1Ύe7xl\Zߝ=b/Op#`p':D1UkBP|y6Žc< 5P Q C gbP@U L>%r>G-hMx:-IRopZltHqfz7gg=zq 7{9S (:f֏a_> 5ѩ(V"1@ 2 Cbz@DGrûgvZ&R} g2=؎Dn6 mw0 eA{6(v^h 5! eǟRoT<֘ʇkl$}jAZ^[wyUSA. #m[ T E-ಿGv.if Bp?Gm AW”g^z iTp5ζU8\lw.Z N8- Σu{25%irYS,qٶsM4h^ V0A<ߘ |SDZF3tSfwd]|qԶ;[ju"hpY$>oAgk@t =ȭD7ܖ@ xFdsG8pr,a\kEvB[y| ( X+P1DB&Øy=fF׻u>h7G}(ʷ ;` f:yaU;O@$3a8c* c*};4,ϱiqf$"2MU|Y߉MU7?[:pqN)W>/ dPkp U [\e'5\[ W6뉝ra@ %xw⫱ ׳cMXl'X+_yQChGSa`-^!_ sW*tM␲h <[9\/UB)~&UCS>Uo-v%$ϊSxZ?)ܥoZlOp1DSjp;*~6=ΐ>[W4#/$;mm[kcO"PbLՌOY;EjMZgx4jV<97ės8̕ꇈȄH(S"Vwg]!ݰU=< <0 ^NWpG='kiZ ۗ\*kȏJﴑhp ~(of /aRT}§׍GcP1ڽIJ4zpV0>;`;ۃU\Ot⌾o37jK<7|16t .5zpf;xۧˏH@ eapMt7mj@ ԉh{ #7FmX?#G0pZ5T kc؍CezS3 <:MNHf " gi#~,DγaP16D1Ob}zMWg}BfwBW-VMkS_i!m)Ӝ;Ь>l  TLΣ>¨&6Gx-(@"*)7Cq~س` 8s4|ϳa &@Pqż6<ġ>-tw!2ZgyaZ‰HiCBؕڳi\CUB${ґqzLP=DJ x{6 -m }Y̟L=pL T-Ę EEf`e'O?}U2=k<*<3Bmt pFԣqٍp#CvSlDD᰷q@@]Uk=QP%62ެD,!ފ$`ܸT wf _J{y6$rl]x"D3Sg[R7'7^47*m.O6͸ Wb[F ?>$x@8l#<{6^zL Aؖ(=p2DSp9e#&ZXD t^StJkyxp8+cK c Tx_66u?+8ix=*,97@0Rz٩ 2Iam?7367Zuxi[TIy6E '༧V<J&/kn{!bDކTVz,` "JP*cG*i6%$Yք]ct}H}{%Z̓L-n 'ԍphkm ǕU}m56`®̢c6V u4&X+޶E9x g\;sJWkW` [('%i"5L%hM[ǀaPS~^oC-nSXZո .][ aZū{4tM'x)-`"V} ҂H'Cz6<ԣ= = ۆ*2.ri= b6Tow"J?V@aᕹN12=P]mLlTtN5rl]@/XՎЭLB5&^y20x]]['tSm??A_ݍc-_3?Ŵ鏰$~3iަ| zy mmȕ'"]H[%^L7Svjh>8 ;l@ !g ɉ0epo&{hg~6`N0슍 ֚pfF9>L&UvK_;Wh;D[Ƈ LADڄR~&U15twyU+@ #ɳd⸇%Mvscq>mmu!zq8ZuChX*GgrN 5agwBD3"D]K_FsWp#F (ظ'bzS˨-QyBІTh$ m(#-`cB̆d}pB:oO'n/3Wznp̦ڏ*E̦g c8qr3y q0ؖb@'Eۢ$J!3=]s Xk+]S]}Xߨjq;4R^%3!a?+[Q4\jU*$žIn,hآWJ,r/qY+OI+ӛ8~ܒbsjRJżtei^+!D6VPWi]W{Wv{H;t<0uQ (ETknb+Tɨ\ʍ;fz]9>-i4) z±ƱZܢ;6j6JP9q xU+}%عQ*HUIjm~WXf{nHA2E̡Z>*`xe,cuuIm_2hpQcoAnI秙y΢rx!N(K҇ 9CVTŀfͦc}ht"iOub"%(jqR;`DŽ67HHyoqUhpiW=3& {7֙8u_M|`Ǚpe #4ze6 4so BX& ih$:Lِ.Vi{X*n-A`l!Lk! ;h1'pNZZ^gES`1R(}R#XfrOR??lH|BLACq9ٴV/IK>^'YZ_PY5,{QgHq p}C5m$}G-C(51*n0I.eD !wFbkbK- ;ҭ7g6>.Nʈ7~bLh b#O}B!H SAg3 ]Ƃ`*MId9bFanjפ{M0jer|5դ%[u4Z͆iM vS[gŐ}J͹DaXbw7̦B_&: >kf&)8<ٔ9,N=Bêk5wVSƯkѫi@I10`D#e;؞a21k623 _HZlNY7R!ق6lЫCYLGUb׏`heJ¥٠h.BڟQ&]֋yE\n&LhG-!) r߈ 7h3.*o/6l#YN)EJcFIc/}/:F?tiIDf 5KxhxPؔs.`ܤ]ɶ/I<сg! ~ Hݫ#ĘSBtU֙V- O +QZwk }̜%nuJ"0w`Jф4S3RuMq "dXѠDТ4ZQ_Y~rQ-bI!ύ[nz ݯ5X〙$Mzx`Àe9*=EpcwTKZ6PcƁb˃}Dhc+gW @=7^Ǩ' (,;]puߢqk-ck1+B@Fa[`g); A- 90CϴM^5b@9{!4V:7\'#upL_ͦFA2K^?$A] f P쳎@oo{m$ )VgN<κ}`J{`\y[[bvllXz/y`~[G Dal#CzhCQv6*kd3d۳;T3g޺q&b},<8:-䨚n~W$5B!E>r9`yA* ™~=%ԽXw8=3ThML0 ZFAARb"6s1O3`+ F͡|w_X*Yj9)Pڅ3OULVJJ׮%9$5pnZ `G{!l 5xǜ闅qx6b (7 n Ir/dH W Ȟ %aUQ# 68;2 !d/ـH@`A ͥNfC"c.z )+aQ-P+$v.Z6PݓuN 2z`':=mD` .`Mƴ);69IҝƳږnc /AxIwt.m^flXN2F|qX*V ZfC!3RݒzGhk6t`I K85`[ODA (BM_VJ9ie.J(gPI`.Y!|fӅcZwR<2sJaX=b0Al.$r Ke'M wcT j`, v;ȫŶ:0XAEDaѰ8ei (YYMZ9 qxsh@nh P3ä>֟sB! 5V`$ Yxs*!S`WdJÐ3R/ªȱ͘;+:YSk,6,,˶~!>3<;vl1Rv|#IʞeH /`)95t6)K Ԍ034,ݥ|?z9{8sOʔaeAY 0nQҝ!EnFoٸ)ÇONOoBgggeeJBMx,w~s͌ ,N\ƣi/a1|!&su8}]͟9:Wh(H\GϪFPg)~߽{LIS fj5N Q5_|LrܺsR0HZ 8Wd]ƟwnݾQ[kdfĂ0dJҔ7Jkʲ̝s7o=}z"7q)]9C*ܼgSRiZ $*ss'?}zVe;=3M,B)$ FO!5Wz|/x/n}w6ڠåb́NXFD8˲soO0U~x 8>w|RM]yqlܑ59؎Zgd>xXMQ"??Rq=z_nZZwpmUv:^ (Xy^lGwy_ڵ=/91w(8X-C0\ԤKDTFQWEe l6ey?~p~ڡFg57/6|``Cg4f}Z3,6Mќ0~𣏿[_/ ?[*nտD`) XOۓ@gnʋ*ϳUiM`f{Ɨwsgghs! k>C:l=RjbUEj5,{ͳgeVܭr3PhM֕sy6(uNǬ׫,7]5ᙍs俟zӧgҋ?y*UbAw vɃjު,+syl?Lo%u[~ @j4_reY`?,<~W_o~ۯ =wxx^R(l1u}ر[m^AQʲ,{'!db(ͳ "6Ó?/^y^k/<뵿Ӎ{TdSjI z@p(p` h&AHMfwXUx~l/ vGܛ*m!<Ͷ2;Oݽ{o}ӧ$abbG?:eiYk@r/ 34^ekfxo?牉w>裏~~w~wտW7>|,K˭5I˲'|:ݿ/\&&&&&&&&&&~aho7BHԭ5~ߗt:uo}[0u艉Gww?~4⢵fdO<˿yvw t[?#wE/z׃<|t:Nۿ_OMzbbbbbbbbb.<~7p8XOO&|'ON2_/&&&&&&&&&&~gg|KpH}`_oۿ裚_ub۞īoϞ=sw'&&&&&&A:1ˌm_a$}9/ Jd111111111B?211czc?'̻=1111113?o2= <3mxd%W/I}ɝ7_淯_:*%+cߒ?=o9/ovo㿉3?|-rY~. pL4B* 8v?8Aܸn XwɃ4P/Hy+ O|orz儹?IDفAB\QjWF$2.Hmۖn:|a&b 4? :OFwM?+ߌb|q:bAN &p)Wj|kn |9 vn_o[Ch޹}Nx`c׎ۏuMWy; 9xG05~hթ@YW>^0q:]oc\;ήu%zSvO75&;hc_E/pG23=s7K;xue j^WƝ['ǟd /4ݭ۹&NM/؟-F:Fgu:'K:~k3pqqavWcX53!KKlȝD[1 ܝ&]!wwAI.Ykݕ?4#HB& 3ЌʝYl JNZ{[*$tWKwUJHk u4i͖أNKPywLbkww)Upq84FH+iH.̌4 >|t>o|xqyɏRg7?^߿?3y[k Wk~㣯уf}=_y_{?~}?zy8o/WZvQ'~<$[+WO~a],]v?|v~|乮O]@ 'Wj;X9mߎ[]R]Gs+3#H 킻iqv $#T5vl}wL./g~$lM6(ĂӽJ+x-@$@G3i:`׷[߬at1;VBuzI%qwl~j z`ʂyMvʖڃĒ;o{ζu~};*wmYݻ;Sŋ$nng'$ՖSs}E+!Ŧ {aZJng 2Y;ve~7^Z$8qYtʻ`5*Hf֢ѺHD9 3k 03 'E5݃u9-KX=F@&Chٸ %FG(9f V7=(#5kAPmgQݠ";d4%;] T 'DMtIO_G|q4h3IZk' _{F#@G]Lr͏~`/_}׾?|tЮ=lˣ <Ɗ`f lqW=}~'O.[7yϝ'J05(]Ao5}ǡԭc4Ο>(Zq@yG[s B--T0lN,%.ٰ>)ζ"ŨDR(jwy`oOn'_Gۗ'E_~~_7+ U ,.X7|+gxI~7hvA6 qzi"6+iH|pW~uj%V%E؂gI{.,/t;k3gk38Cdz?s;w5zp!;c/tGpNwֽǓ#>ܕ 7ڨP M,w_׶Z pHjiGGٍ ҍفvevj5$:-v O+, /hFY3[E{dMIw'!4KV FC(ΛeУ%7k$Z#OzL @9a0dc6X={SanD4p ^MK@3R@ȕ`fA{}6IiA'19aچ(#4A <cŵgqhO~t;=x[_֯wo|O|:6dd[ԧ3q|tON:ep2VQN5q+Uz]tԝwmgTk(wueHC-zfn YK)6F@ң!ܟ~[CʾܚJ\l'gk;;a/wȪ?svGwU)?~{ިVx&2[kFGᓼdM&thycS$;a ;M_;2f{ߑ[V~k 'nzj,#)=SJa33_%?wkwoe}z]mW-?fs=y9*@v}XFH`q4 Ds8Zo{Zo׎_;cxc ؼI;\4kҹwwWt N5)H1FGR$D<\8XEe~DiIlP(;|bT^ ї3'W8~k;qq]i+V^[1J $@hSvDԨ.Q>Is4̕p9H=%y:dU_a5w">-𜵐mQ6m`c;JܱkW~1:+t꜌?pl, FoGyA^Ѵe@$Gcp dtj7@[6E Iw!ܙӑzęhMYlJmSe$&:h-$ydڌ2vѻLq5pC.X|6ݷ*5m\gߋns : y!L琍MflyvY0 &qHdQ4G:ٔwq2qR" b.AsA\h9Oz|]bWJQ}V\,\ryJItH |øtp2Y3RD#8N\Kr&>R(8Mզ\bDWw7YkvL)ny=+ݕͽ;.ؾ=zۿO?xrA.ݻyx.־Bh_y|ޣColKapkB4${͉+Onkd';ݵ ]I_:9\@w⵻Z\Gu>W7v9R5UbT[H?^&~{C;R hvK#ٙ6vG3HZ!B|إ4o:HuF«D{L1;hTuh-OR%E2ՇبMHnMQS$4%QpXd-3YM&9hSdyG0\yki(w6+^sDEj.'+mwXVbƝK]sphh3 .,d%ǁop(_qh:njQ@˶9bG?Ƴ3D3(h!r?,l[ca0򱦝޾/1?5alsTg$i.Ml1\uNc?rq:̹Bn '9%{.4.aQH \%U.j]zh-Qt5ƭ2w'B ?F6R ]hDjŜN;z4. j$kVF`8SbJ@|e0.ZoA˵$EӺLpE R2W=͕ISV |~\?}?೏+/S_^^.Gxxރ{W]Iw%Lv: vyX]a'YuمM1Bs7=PItESâǭ>*`$t$o[<;2С+X.v6ܦZ %p(Uϋ@ ][y*ٝ$.KCW &^9m\vtL.6@;SCԇ$K6 WVQ!vfr|@KV*DKQ|G b)Ct$K[4bUɣZ`tc40I9g|Ll92w1<L$ VGʱ2THRD@=TN+BYDvnnIY9.H]:;|岕ATC6RЃ82k$U3,I!sT}h/ἪC "3xt8tZ_ys%|Dk֛D>qzzcΓsuu]77ڟdsgd!iwd1Kd *9^K$a%Y*BQwƤ+DL IDATZTڹFFHԷ,vSH4Q;G4 >\j#jav0sv X$z# 6/1>IN#7+R9^=3Iy98aYR"g0 =W RKSZ})ͽ"9C1q QS?*Meb&/ a2BiQEJ%u۫+ ]9F--U-9–Q#V7V{`$'$!@4VR.1 eb.$f"$8LV(>F>r 'kdfؘu;Tgql"h!vXЎyEԩHl ̙$JB8ܺYȲYji^1Y;BUr3Æweתwbd7СʨƪVf-+g#ukkMW\;"2dOٳ罍*6vܺ-d-3WQ{1ij1XmN6ϡ**O/9X)mt_}cUFzw_R .y\8ڪKEu}/D˽-Ewi]I6e;\O#ylU]Eåf[9{/BˍFbڠQܝ{7f 1# yk`08v>}ٓgF{ӛ )|T?=nԡdr~3uz!1 Ҍ5f~gƞ8ɠ:қsJ]2E]pO%qKu3pfܓ$̶Ǘg{`TҨ##ňӡcqJ8EqIJ-0wL#:`A{B[bшU.jVMXE^̦9^"8O}l!A'8 pzR揲 n)X u FG$WFuQ%'ڜ [$4"1W[v4lOky9mMDsKΥ1Y+~9jB]uŨʫ-o0!xsOHeSIoW&pյ|DqmRt2j |F.UNF4shB̖fZ-@ =׏xz!4'ƵJ|~:~Zt:몵GD:<HcG佻z} ՕX µ"vWd{}qֽLqc_+w''{ԣ C.kr\j cXn-qKb7gCv ;gU"QKyٚHk mif$߻^,Q3ݬnϮ77~}|Oї+I傇,j)pT k{_(9ؓEa5xhĩijz[/6`7n:F} ]1uzA~9hcMcn!y_#JN+d33t֣5ĐQ^])/!mT:d$Jbq~yN͸#Yp;:N:@'m@- ijd hCT@2X9QU0N&8bFu#3%+z-2l1+U(1вF!L oO\j"%6G35PFv!#8d5Ye jMD%mqqd\#^m=*U]`qxY| $d3ŕZ 1fgc!lgE4Ҭ]+S\T 0E&HZ#c/fC*ҩb jN#G)ZMB9 篊L%TȚme"h l̲l]JZRsY^9mգm-!- SbuKtWBna`jYk|]M) /lyWF+:NJo Ŧs9S S9]"dE=É4.(,Afa9]u+^RYe H>ׯ/q1B퐷+-$גzSu-0g[3.P\ܽVaj\A}fcsayi$ SfjwH+@Z.x 82 R L$]mfcaKi*)#Bwf<`w34a):Ww7jf{n%_ v:,3XFR`c)V<$.` q~}:=9Wg7q.]O0^rqavx؁`r!uЈv9_YZO}C4…F7nxf%QG"_{6J!r!$mU<|GCX5JiYMj:1Oҿkn&,]'ٕeJ.n;ި]Ѯc{Vc%-WNa]5MMSITm.|8ۨrh*=Y ry'91a%.mݡ5u0V 8=u3j>CȄ){:RBunljU6R2CkħЧKޖkxa;6oxO X Df1q좮tә7Z2HL\lz3xVr48 U32(Yuxcrԝi ?j~/6ꩣ2NN4Cluwo"v(7$dW!'xWXj#G dEJbEjl(Jy k99y6IޓXe'#Xl$z@}1eԌrW9ZΥT9WjqJWK'R4YCdcʬC.\C63ʛ?깪ي_^ FDqr`-(ɢm[q +7} %nc#ލ >/$kp*As;`EIm:KMĕ'oz*tvN|F^= RrY=ƥ:a+{QCis ˑ#p6WNX.[#4g:]5, :s'%EYU^28'9@5 ? RaɋHLZdGί= Q<.pkU`ұ ׂanqj%Fݯi7Ўor9F9;VJ VݳFwA;'ӣ̹1;T./&=f߲v}RuDߥzׯ_ ݩp7TRZfI mǗPT}+o'IjOt`` %Zw1"WsZڈ݄>sy:l=}Ť=-,9} {7wt N!= {=ːK !]"zƨeƄ{d1\ˌF |h6fDfP6ܻpRv#<`qh {X(\z<)2D]hƥ`-L<ʲvi#5:XC=ݺNp.vu.{p׿ѯ}{8}<qvifpіe9rvliӧF{녃:ux\?ySH9 `hf]p"WMz/:сV34ݤ΍iBe#KULz7+xymlh+Qd$V* %'Ǿ5PKHjE`0^]8 P[9b% ]cˈ|sNfU,eCp J\$&Z1D}s7@.ؠ{ySa;tˡO0H? S!!PR8\ ?1_H%:J91@zI85:X~^r|0ֲ:EȽs>a\sѳL;b W7`Ers=rkCEV'<ܽ\akkvyTaIm8kR]ceQ=;UeZY'Z"iL2UxcRE> =!7ō;̥#@y#+1hΈX,?ɚ#׀I"/Nrzk=jS-DE50`9pÛm]=sRqB~饔!(SdޓŔ(])o41;[gCzg|k{+_9'SY3bWK{pܻ"q}0'~<7ޅf8]Pv%[Z4(ŽM J-v[V|ECق:[֔S zaMBx/Z,cHp%<\{A9[DղdcڜZ۽֞ k,Je4!`kuBdd0[!Df9m,?V|:_CX%˒H/f85ZrpK\0`PτbTKJQv:!T|i8 Azh{fԬaQm2@7s=#\)T,Uձ4P),Ӷp" ?[e4%sҳj#~JR)^m\1Au@x,(#ʈ2̟)FP `-yTaj%̴-ggGIg&p#Abxss߻<<|pK'MӟO'ʒָzHvdˍF[ԍ]O|~O*sOvVC>1U.sңd޽aص&HJ'v1!6. lOI#Ԣ9 1<Ґ޸Й92bkpzkLTR"9b%s-ty51=6;^Skٔpw$,OX6JÿkY|z%eb]uSSL{#,X*c<"@Phsw/AF,1?P Iש70)SCxQ&ʾdЖ*&BDd%59`O YO(^pZ\aMfP,g#1"=sL\_x0PM~4?sR]JȫT`UbXX**e-xƊXc;UAJŔ&Zyk=Q{]E4}%Ց I? )Zg(4"xBOI<[TP5fL(6"n5* 5mWNvƊ1$Sj:{Li}=[Kc"rC.zp.'O>鋕x=~x{?x?[O#d߻l_yჇuө=Y~rO{YE04 fttC.[-ffZuџcg 7.%޽?0ԉt$t/u-:q)#6D38P=sVl?|[ ۩[-Z`nVԺ<;:E/R,9ߜw9{>Zj̲;ܲJx8H~Z+UOK񱏴_+3l3b[rdz*r;KcLT4PU'U67m`4/Ǎ{ʀv5yڑT3qZ_Km,2eL\x˚6Z.bdR0iD(1F^uVee IDAT`(Un5mBĕU.xd8D#)ql#s VY`6Z,dcj)=NU b,r$gNh%Zf|Ƃ9T)s*3o0wi[=jw Gd]©=/QyiDG5:;9Hؘt5")TC!F<}3ƹ0~d}D) 3WՈ[Eb͗WU72>l>e,e+ Fwթc80ZI2ƲayBj_tR_B#}f#o"p ƊM.𮚟!9g"o$bVB8obHnX*籤[[mM BJWPjjXw`WmSMwGˋFkrPB"zd`-toHD$P1ό;{w M-Q=gLNK{tLDW "qd bi<hu}]] b=5OZO;͖h],C[Lt0{xt<}>ϟ=~OoVZ偏﷯wk>]>?mi]޿ZE{_bP~'7qhX0\F,-,CƵI~أROnq!D]dW*T$P2ÖMākP-Ԁ%W;qӨko֛ dYga g KOtYU`6v"%y)<=|iE\^5rT\%6K vrh @'-_qHQL3NjZDN'͉[92$)kLkU˕=iv<_'dFGlfl|e2ab*-ɌdL}GTe-&7Nn8,ܹeYk`fkwurٺOm1i>9>}خ.rzVՍXl1VC>bI-np 19X rug t+owXI5l{PVNFŰeJwoӃ-YcƱ[*`yƝ_"X-Ml5Ye C#l1C?6sBퟵ1^)#nm e#~+XNg=tΆF]xhZ[I*P#6:iU U+)OHf@CwOȡVxB^2C̏du T0:K~#/hPv)W51] to.IHb yDdVU-I "ns]_fP̣z('\٘ws3@Pź -\kb_q. [tmKٟfr:gj-SlbMtMJVKsŞie)󓡣uLo\= D#m穇eJO3$ߘ_ڤTVw3bRuUϔnD!tqRlafȺ*8K֓ɒd7NB޽yψ[{oO vyǷ__>8Zo/Gs}aKKzz㇗/ݮcq~hM/xrtinƻ[#!pτ< 3zy4OS6Es;j{3+^L_R?-,([_9\;ҚdLp0t';n{[TتE.NV\>WjO؈0j;_\kae6csNELT*-֓2C3iIIkiK 14 Vz,m~9r ۗI4)/Inx]crrfs`U ՍĬpyCۚMLUH:laZ@kUG!Nu+Q |O12Y,򐨌cy]I4  [g ]SZ/בNq*Y+'mYΩII#5;m&lqR/T]gtR=ďRbO7]mSZJ'$lwp~"I}"Wgz'|搔3 U?gWRa+}~5ہIa-SSu⁤cS ;7_m~F||0W$z@jocݚP}WFL2Ye#TXI拯)1)njC<s:LeSJ,4slh[K18c̑ݽ ssa\+AL0řEk {??9U9SK S")[O0inݚwoVB<FZo8gp>һ91cpFSh Ή~ܲ,ȟ?~Otz\߾z}XĵOo>}=o_w= $OwxweuFNsН.9F GߊSٸ%m5DӢNPk A&adYS0^j/ \N HsOxkre$sYPg՟)AMb'D[>@k7!vʾ`(g`ԳZ4aH@ַsZ BMZl9`J+/vb4I+(k8:V۷x_^reޏi>yNѺ8GFČĠv4^>7{L4m,(`?^ruf)U776c5bIϚe_wf#T.hmiXMfGڎ\ػ"F&e$b 犮,22Äy#5CK# 2Z]P" lMZy'Uz1(}-PפC8*ݑ&ӪYia*34&TDc+4iYr-O,}'[@9V6V+\n&h,j?c٭:f<>eZ n 3" 30#L8nbO .fu;up(V6f+u ~ƤqZ$YaesXJK`vN}bi+F "yJSY1u  {Uek|'f 4MNxTgI!B4י̽сʟ$T] WwBv,3Fri!YR5nuuAflfn G$G!Y0Ut^إaATԅ2Zu{+NJwT% c[*ұ[ 2?2yLbˣ{ I[yr ՄCUM"|օzg 0 N| 6NOx]ն\^hӐ$֠;>{ӪHժ{.{:mDRh6]8xfp!`{ztK aaO?)\a`3DMQd禍LiX(zRBN|U|G|b>~"fcu%#_Uk3;K"7Tl(cPӲ{͘Fi bRRA/fQٝPxzJELv)]GEbb)?1۝C 3m{r,7f]rϬuKvF(}, ԩ-5쀴V*22emUԜߦRŻx?1Ǹ[N5_i+Ad0sl|_rI~n :lf9KN,`f[3XD׻ a5H5sP<̌n>8"B'`@ pz&2 pEN'w^;d1bd@.棾Y[{_yuw|uE6債`.K`r9iD6rdhr鯷zGn>|x{ox{cnǏ?>">{vO>>zCkî~_޾-A3ާ]bu #>m669ytv6> 0MrҺI£5klV~-yk7]_u#ƪ$C\)a:م6p|`-"bc Lp3zso8]MHy&v_Zf93N0 # 4#8ݛ5d1dḱ9͈cGLf8߬jXA7ֳ>5Z1cT?[Zo8=9>$.-c V=S ~2RH<:/ݮAF~}pxӫO?O?F\/K;.vx13wp߮3?y;{D)wWI'Z 1ns=}JK3S.H=_MX[~a2s@h䫢mp{ݴir2 f_zl:'yERA8`VC}g0 NSK^HE uf' )f?n{&3Z囒JQ*VFAWZ#e]HXig Vɥ(XӫO,8%@թ8,7ڊ@Air*r)s1?[(ՓTD{`4~Z,26z˾%sf4Bqʟz|ޓc/:F]rMs8p) rKHNx!j!h:BY J)7*?}u_ʭyZT5.*dp_8ә&AJs1 ɽ^¹sA;M*(6-暼ʘtUa+wWgrL9~R|@&j+;Y&-5DV JH|L _lw]9QTy:X.E LYS2HacU|Td"[qtOÿp`. Re]:N~4zß_~yyx;=//׏/oo/..-ޛxk/kǯw=YKN2wLj069! ÎfG`ei/Uae~Y}X`̠bl b%vLDŐ z(*stdɰ/DVZ:Atv+榡Pתi0 .?cK ĊĹ1׆u]͚͒rXU,2kV0DM/kwz2ͲVybhj_Yd@qWi쟬k/Υ {a۽E,(V/OEuB0r GUz \fh2ӵmj*z=YX5pwg76au~ּNnQI˴8\\,'ȦyɮU6i~P=\>6醛-f\0!DB:]'EBri\ )ݢզPi-I_$&MM,d}F K'՝"+SU/Ou*t1#ԶB(AmPzTKap .V^4cpȚJʜJm=e+5'y+a$4y6kJǼ{ U1p10] 9k!49PV"!jzF9ǜsWژA#`-e\!:l2< 3t Z=ټJT-95 qX ˩Kn͛8_%i'8)"465fnt:"&c<}w|ˇ_۟~ۯoGӇztc|&<^?nя0ׯ_{{(tfF =3(w;T+[J%kiFQ@ 9}WVI,`Xr\~,7kFe6iKӜZ_ڦ<ٷicKj0,dDzehֻ%L[x*6ڶ1i6Z'$=?aDaE~t/j&Qb1:ҷ(|+<-L,Ϭ ݗ\&(D{#`:fP!L%Li! +U'˄Zb<Nف%lxۢx*SEt nsBmkikƖ`hPTpteQUۊXJu mulO5B|J>;PuL9 3Ad%/*MZVG<<˝0zlMRZS|qׁHdf*AGZ;zIӉI}T$n;"EMeAd=vu/YD@W7PvjE xvƣz9Yɫ7$ci4!g `OilaTj֕XHZeڳb Kc?r2ӜkG1FxGfٚ(: Ha-*|bޏ8.09q 7Jl ’@+2[m]c)/MvrXIDDr$h3w?+A2|Fwss2ZXH6Oz`]&7x+kNj KMq˵_.zֺ'daGdT7w. ArD`o_|ۯ__oavooo[;"rc^xy]>ŏ6 5ۼ_<  [ b>m֛1msg3X3gfnBDu"~ZrjǪz| %Fl3.HMZJ:) u'ۢd S(^RET Ro[I%)(tVl}bքaI P^_A${Z`KmNe/(:SJ JA,G)#멿fV=Zgiv~Jwerc{>ZhA샱WV±az1u'HW^ i@Y~$4Hq'mK{9E 2N/UJ;fu 2<ꉟ^;w$C,^lw'EAY =яB(T}i.9nxEG$F#vuL}*:+h*TX>u 챊VTL R'nŚc3t|&Ru*|E&p0T06Ì֬oT7+ |Puc^bi/SQ *^̲W4Wh3osG`P\=֕]I;7؜yRTew$@M~Qr$IYB[s3yCL7K嬏\xdR7kn2% I4IN9*Pd(%g^ꋢ n[y Yk~֏v^.u7'1f8ٛ ֎,*H!FmzsL'#o_~]>~z\~v^~u{?Wh^9|6љJHmJ }ĠYw랋Q؜6t䠩BO,Emtq8vETYģ`5J !:X@uu(1h͒kO!ӤRЄjO ,WpD@~q`a6kC1b}377B T%:sɜ9"~6 ޼| so"G da Q a* Vrp"xmn g@`r@YaU'کhfV)$l_dVDµa}#{^_ z3~Z;zo60s ~rxLюL;9Fz[뭷֏ 4sAp\?}x}r_?v~w78a1ّf0 &1 {68؜h0`9D^!x3Gg)+ UrenDُ͉5CvIy)Z] *?Z 5.<,,p~|~nKAbVB@q JaCL-#듿+md8:)W?E7<RNg&r'ŊXa`Tך!k5oϺIUI5ˁ]&TcgZ!8u(>rsls2Zބr[$ҾNF%Ut 6izbTC0kK활ya\51f2aʯV;TqG*7LY۝;VѕU: y/4A ĒX\Fzg?Wy$S Ҏ{y>`VR2vW9:nU3`^ҙ5fV`)hLTỷ4̄SN!nzVqA/-Bi5{Ŷm[X~ ,Fi$ZRKaEM}$sJ^6dWU#3Lִ_3U}սawPMzr!Y3*I OcU6{LF v{"z")%LGJغYD5`/lE<ƽٯbLNJzBPZЅ d+`g< z3H)1#8 2b֏&RXc1F|cqdcg}6*S51WH!OUĤ/ٶ"5%WZpe&=Y2BJ.D UApf;l_C;y#X򵮊 jOV\ԬYQO4љ=|M[뽷t?wѼyqK?=pys륿^oq{У^soWO??}x_AO+%>oo?/'ɶȠ?xߧ]xm#[7w5DwiHx0*o#jOӡ1jɚzvF@~^]EBuNQd9 e+ӥi"?ղ?s.+|>Wd.D/.+UCP3aXUt!sݵteUubMLŲ{U*> -2@9CZa}1{v^ "N;[Kʥr5MP^X QTXaH0?O`DN+)D~Xd&eal\x=aP-/q4 W-gMc 'ՖM}>@X@NXJ'Y{u{= $討ϰ'yRm+"1e43Šj̽<{+9E2̋%HLZ=!alX+ ަVh(jWhALSFI+pLqyஹ,RXڧ|~KT6@+ -c<͚n9 yN1V&v=l ljP* 3ykaS+|bp2r 9@ueψfU璘j眉,ȞNpƿ}yb&` _5̓)Q3bPj2Ŗ0U;m~ d1;c qsBs8go4 !`gT`DBH,7 rvG€3o9g9DFcQj!D[(`s]Ac1)T U)F4 gT}8i$4i@*f㩓DEF#&YBf@kGhZCstzq>lf7=3ˈ1fnvy^nˇz9Ͽ&erF~{n/O~z}h_mĐU@`L |I$ q4f֝w{cF'~jI;>F]2ʭiO[5Siو@$r#% Q$&Xn.TEy!'Tۯ,,iI+r"s5&XhK-؇um}+{[蹒ygA%~ґ2 T% l 7=oVbH\ʉG&Xu[tEi)48.Tҡfb}ԣkH%i 1fD66￶S޵^` Bn[˸@]Y1J R}Xh^ō֬2fkgn k/L^c=\Dp`ehYXw8Ž4"zŚI|ҳZbv}X1Ӷz-NG'f|#s_ Op:ynPP|c"zz8mr l67W`Fオ{k~`f0ĘN)6',??FAsC N=) eJ[I!ؙpY,`2:P[F2͇Ka1OK"~klYyO7K.WQcl-Bn!+Y#At0oޯ_Kه;WttzD|ǃpo>ޮ//r?}|y^zpr9Rۜ/vݮvk6:__o}MAɗx42|n7-kvwfmLGL؈x &EJQ_\X,ThFcg>)B{jbAH SIji3I٢?~+2żl Qb`V1ɖJ;ಢ ߩq3`g0JZg( R[u{[{Vf M5L5Zkjxk_-H[+ʪok)MiW",Rr R11j:Ñoo VR9ժ$`^p? ;ofGmjόZ2nD 3*t&/c|F4\b*Md;Aa\1 0ROsd (er'w[{{=)Q ၙUtVzݢZZm9_}5r xV%<494*i5sOf4( )Yvx]EeBFA=\ӁhT앎,& & KN 4駫:ah Cf61o^Pkp5br!g/TjBufOx=%XMyPg3F/05(WS.}",klip_63;ʾ2jK0P]^#) {l57p0ϯ6=bDDUÛ FDtטi7DH[wo-EĜ1tLj "L,KrP@]?^ʭ]c ez֨3AvYRb"J&6ـ\}ri.ʉ:"3] 67""#"%)?yWK.sT` 39>4>ޮGn<=2s_~ c9 p.ˇ7vq~q3CX33sK{vi8*+2B0AP"!ݤ!S9@U/eg)L>#clN:N H@8-p7,ޗ姡LTH 6ʑRX5X y9 siyȯ}VߊdGZٮ;=j"VQșUZ:B 6NjPaV)_Y?0abxd'lqF҆H潺;gndPj= :wg#[ɫK9GD ̈ /( $2*4.Uͬ/5j} j D~M@h"[ZOiKÕ >tEX#6R;+aSDjt6*47']M)6˥Mt Ц!>Vzk(zj7ӃNs5*eªck :ᠮJqiHg')w-tՔd3˫f+_~So0`K`ihgf9kC(o tYl2;24_9N럈yFsZ L&&d9Ħ˚իDMe-PdOʭiO8uXvʩLsM5+@AzQ,^z{"{$$lx}h* pxD~&Avo f 0֭{DĜc999gQXl4eH49h7+/X?)4VVCD8 $,$$;]\[w+ah`ɿhkַQg>Xpѳ2}5eS> fl`NM/s#/זѥ˕f_~}*;O5o#iIV;u@Jqɣ%&65tP.!&i-jLTte2+PȾCKU4תnj&qxILLl\(ܟjF-b $:EthYg)8 8kZD ʶ! &U*K4oKQ>q<|)~[~f g#r|{<csI5 2]"Y0Ȅ9gDm@ܙ1csLsVZ ʪh Ij[0L0%M#RaO=yZ2YU"Br XM·Sw 1XΖɺ 9ZYׄf(.]bn7;z?^u>z}nGr;^^r\Yw>h{[kN}<̽n,bO2~t~?'*Ĺ;dS#tL-4Kge[ O M2ƙbJn5N 2fqOՄQMuE?.4M;uJӉS941jCł:d,=[yF?3댤Ug 3IтIw'k,ECrj~]Hzaֳ0#UOj:Qd^]oY97 Cg/gfڈRC& 9nў2L ;|σrwIբdyfc sW_x|$9Aݛ].[="Ő݂-1"ys̑T4HdvjPu!i`_ ^f;;0,%L*2)ȖI?DIXXb'6P}a*0<;UF#f6gRE@ W*[s:[=eq8zc_9v^ֻG'7͛{nzoKD>|eAbr !S݅OQruD)Y/ׅg!z-ޚXEdҴ߼#}QU4AI//h gn{|\F 'D=_K_)8zbG x'BMg9P*TvkU&L$Zf~/ 6Z M'-L #A+U779I)k})Wx["1ֈRme\ Ya_^}j0z<^VNUن <FCTSMP,ETPװmѶFJV?tdGpRh:GE<(1QHGx{1"4*jjjjjWޡkV,7(mאQ}5b[|h9< ƃ`(9Ƽo%Ƶ$ + o8lmf򋀂L KxjUme뜞nT_T6?ktp-˨ka! _m=nm.|ZvzFh$$W=~Z `8F#F nm4}E^F@onwq ZņJ=h\ciR:V'm>1k+W6VxQlxS1Ʀ] %H1mh2;_rcOQi{Vx)w( Kx/2W//gǥbr^aiuC̹tޖ0nIE !wMb" 0]t0=Qd8p ^+eOc6紒F˗QX5Iގss=󹞟RxXga 5{* .CFiHƑ,v @%bF"Xӡyc9rf#C=5)9 /_kʌ4LpHyccޏqC?oӾqu>yۤMslϹ sqvqc15 c#(,c-0(WJ/ zq~mr@ÉUˑt=Afa<'mkBɚT֚}Z2D֊RriD_hn^,xԍS)ksJšToet1sآ“P $_ 4Zr pJFɎ 6B*/t zc\-3E/F#e\k O}0{0' X|rpl`Iv9'q`a2EPA3aX .8g eD$-ӂ𘋵3ָ;,l&czة-2_%aO'<&T"Vir< $B9˓!hQM>rE)ngI_<R&/Iz37])_J^HoYlE7 \JTWN\Y(CVC@2@wg5Yyg3KTCPjF Fawer*zfXVyG#xb&TX5E /jn[WfF4²f۟|m-dvBÊrF0ÙǥN(.2Ⱥg*BLcwJ럊L{FMI(ZG$ͣs`# Ҋ csǘ.gnܖPkJw1{07GCʿ<@FJY,z%ZGI=s}_F oz@Ut6 3mt[$ <e*º/[|Yze9)d9B3xHŽt6t::>c0hLf/L+ld'B()}[1U} (_Ԃ*gaF1&։6jy$z|8!:0CCjf<|>ʙ#F!282g v{'8&+IaH<|M$B,)ZpI.?<IX͉`Lpz@h:HjC!0bĜ Z:0)J|<8zec'mX'|`ϥm@B:੷6>R<;ƀM0eR3G|yjo<2`t wJX@@2g@qz'@m'2qdr&ۆ5숔uT~x_phSBIu#- IDATYQ4ۺ8vfj6Ofp7Er(}}*{N4 dy=1k+c .d`Х`C0\[8 9Y b"iWVw%v1TI2*Ր 7Iאˍ}Y8}9@gReY4cVqg'JJb=RhE4 E&r0\Y2:NCГ0'Y@2p($d@6i^XE[)C@ǵ\aS G}Gs=V۬GEez-s0HDYgȘIN9n++"ZmyFxB+z^XPn`]n:7#ķ:vk~nBZm~z쮭IDC,R'ڻ68V:Ò(^O DjWdzL 忑av\p4YЈ+s;\b+Hf^._kLrE^.]7o%ZvmFTH#Dl3td)y{z9~hGZp(#"z$X8p6 t7IZkSZ0Af&i+`iŁ fBJ IFw {^,Cڵl $aa4Uehh1KcSgX؄(*]vaת*$І9q ;;F$3cȄ #8M#s ¢Na<ϧX+|Z4?on&1l z8= hRiZF2EltVxY\8l61TPV3NԿ~fsKKH]mN@V[%Wx{N?Y! ^ 33cRu_LmCcPBV0V*_tܑt)+Pw~}_L66b)&,c*j=< l-XV`  14b`;GP[\,=sƍO1o(Hj^hV8`;lO =ה*gJO%U!fxǼjm}CN349b!m!ͺ" ͓Ӂ.ai#ZLwVeTGg3p{\r%n;t&,\/au׽6< ]G .N'݇V~ @*yW![s|HYsC#LSpKq3N(-:\QYv<JQg}5Ew3e L5}!&5\ aOU.vb$(/ !!R]O<jgM L.zϝ2)"sjqJA_G- WH%A:ALO'1oA9 #O^K*3+џ%=,c\)%Fn3T~SɑPIOirwC<2xyvGhaixZZOswsV{2p16M3>\5X1Fy>qEy~<ߤ|XzIW¼C\ˍ&AqNhAs c>|vjۏRK\hBu{Skd- apk`@=8YxF@/nF^|yy$wX??.2^ tS ^<:iI`ڸ,YYNVrUe,Ħ~a˯m'oտB%^;]S1.=|JdN<Xϟ\ZsQ9= e :K$16f6l Iy>ϲ0>9$2pHW+bG(Sj ^c`d-z:M԰.,r#/itO 6"4o>n) y>?~e2$yJ$q ޏq'0>pt>if:q w/߾9hqo,ڼqHO-N=qxUA+ $ 1/|ܐNfq"ML.ydcXX5UD5d)vx 3$#YG򅵥:ټusҥH)Js DҊЮ4Gdd{NGb}.;ݩc \ P4.BE!8Rx[;c\yՆ6(Z+g~=nY99AD0sў#Єc׶Ui㝇k`kH%k~WP#lO{;d{ܯ+`tAC=˙~,-22>fb L"!kS7$JtٜQé©M0g@X%zv|?>teS;]q:P!6RZ^\VfiN£w,]dӃHZeVJQׅR{G ~,re99Kt-t]>!Ucׅů!r]UGط"pY rX@'4W]R{ۛ%0pWS6 z >\:3f _0[8q%8쪘]¨j!Լ¦^YP.0=u7M3ݘxE" R 'x$˚yq$>izBz8i=?:h_|efsLVqlشQ2Tqc Z\ӗ3=סR9xT@+o6H.V#}bW:?  툻r ZIE26Jnyr/2sqh6njHa-Y;5XqB1c1hc\:uKyrc~|?>vo6v)|퀨Ϗ\1y5lNK\\9ٰa㘃y;pL ~, `0k1FΥᅁyVDei ]tQVE2F7z s_٣Y2eaäB(D9]˽ǾB6/Œ?S(8 Z0lU uhUi);TpP|+U!L\g:DQ. S9##cC_xdF@Cݗ#WEZJ$k2cvAƉb=;i׀ rx#UwQer L`K1#|˱^GiE9Ikb\stjreB|1ܞT`Ckrh0ZeT3"fºKAFcɍag@VW&Kr>$e- ё₌m6 o:$S\ʐN "*,w`pz%T 5iY6#/;Z ]%ܣlʓ,vUC&d(rL#i^g rݰlB4BMt0SQ'`ӗ3oբ#+O?tHWߟX2|xq\}}o;NlapYsa0?LOA %- +TffskY1$`1X Z Be%aF3VTa "[(% 526f#R4H?HG$ȳ!ImF[Y$ԌjS60n>6ǀdԘs9q???Nc<uisbI:䒌C'=H-:yF?Z\ߏo޾߿&|vyaÆ ]?d=+`c+x-+C3VX;EnOW>ûsKKjLk$Hfv6ۛ'n o﷡ucsϵ0h%-*6rc }cLN9!_Kswr<'movmvߏ%zk-ΐ&ߎ;:#0чiq y~?^C(krMϬ}Ue]#t銸?9Zbb-k@tWڤ!luZp#i*rbZi.uGPz׭KȺ*_"0NU1:AGԛ0IR'=u% *$VkEtwCe`Umf;I"R`bsX+V 5p+t\uuLIV"n8F(1]A5b ëT5I {crש8 ~_ j&H#ƕQ> }MKRS3CϽ(.9.t?j4+Xh Q o}k{As@w DOa'Tʢk`R½Qa着+tDžjk4^ׯ#.@і3RG).UV@ɦR \U:,YfHqq]|"~AGQGcu>ĂU_غ}"j2d>տj$_~yY|0Gh2bke1/;Cھg2}j`TI IDAT88+qpbB:+) \FE;*m#[]Q7rDh~xpcz=aso JAU\l7H3faM9LG%AXїg\tk(U$4L(M1U vqfgU,l׸UEf "Y,n~|{;nMݎ}}vt9m8cq%^m_db7n9Ӎc`lTvoo~~9ߎ_1n6\QYښspS4 TT>l`xaw?ǐ٦Dgi:km13+M86n.`J7s2.HBlݯ$5"wF=P)=y)Oo ijS¨jP^baj+KiW|at+ LȌ~6a /ܣf_k re!*^-9'BxĚ]8/%y 4Y>z#ªm;;_q*/- qHJPl#gےZMVqe-Mlj5=/ z%QcAKe!6(V~u/׾㻗36mr a1舞lr¤f~9hkXOwH;9FCsFGwC1>ϧǭ(\zZKǴãI=c0a0Lc`&0AMáy7I<*J"WU_.@c; \J^3ҧ=_AJMc!y5"Z ɛk`/360JfdZ#fGX\cu9[E) ^cn =C2T9&CyRZܞQ$,5H'όK{]\`er=!N,h Zm X-Αl^6WLr՟-rq z4S^kz }j#SPJ'CP+3\@Z+d-+RIօ_c9I8%d_~Fl_⊜>l=իsC%#՞YLk!k ۅGf)&o11/3:P`N)ǭs(sHmQژ,_KxTUszzP5)U"%җrv>S\m],8̪SeQ>cۺwvcH76'`QQSH=K: k$ _v/~^qvn_#]۪g0tayR&yK6$k<5d>RgsF-q~&n#}<#}+9a]Hؤvx `az=3"̠8 X !FHɥcEEUۓBlmf>s=:8i%$M4-}uXWR@!O?sǻ?+R8Q̃"k*N\]jţ#.B7(pE=6kKzQdɾYV.T!{ )d*b]o%~Fw>ͪqOl= zh6kQ* S@ ńGlG1 ujk{]*A ъä3wQT$!@bw!R8'F1ف˛̚bGA['!rIJaF@`+,udr ǖWC@l*1C<" r`k^T\ddu;pt1szdZ 8̥nƱKk(Z"L_֞5;5Nw{p`)X 45u~믝Wm_гxHg)VVZt4]zJo!Ug"/rO5 b;5Qz?F.goR"E"KWHeez}N/G|.RܝJ",h9*GQ#^ )?]ld͛F f#6=ɗҌ%縖hr’W w a}"T%4ڊ64'%^4d+`3˲7^=i0tza~AsmJm-uOQ_n[13㘇lD(oy| XYAXAuNr6GA)V,6\c3Eƒ$u%g c$Uj2%/RLm%1o:"E\ k=_.{E:ƅf"\u0*ɰ$J`jdbpdW(<lE6I``Ri9%-_Ow?sZid9܌ g޽# U+7 nt#tHkvEmdb͵s|SQouVsL7.)a(\x68ȔDZI_s?ns'۷?~~>!!I;,}9vs%EtZktw /fsithIF[9m[b& Y,uW,G̲C䮾@䬓rA XҋpwiK?6;iY1ȟ/b{}u_ qn'ח4b/Œf/>o[ g4Ɯs3BkZOjAf6's23EKe)Z$Y[qmhUA8l$- Au|MHB Z TXOO}cWG6$3*M+$,l0,һ\icЦ_~믿rsڝ4qp<Ɉ#MܛY[I107;67~.'݂N`,ABrcqq~ySi6c!z>s ?·|6'dχ>>q 6nׂ`fÎ9cs3 14~1 ȣ[i=U“o/ov<Ǐ#"*X/~ U|ьnp5A_bN`r+~Ɲ*+ ,Nm T6L#2~H-gl#’KQҷ-3$.2 қG2\it2.fy_1^?B!ϰj~5'Q5[͗<@Rʇv5}C{m<,؊lNhCKҨ+hjTYT-}C8eMb%&cNF:Wbfg|5`bCt"-pW]H:$\gur(B|Bތ*IQO%ko'L/HvͽLF0/;\ W6W+ .<-FǍb tXLGޠӢ<(41@ #M([:%z6t\7WzYil`~,vD6jwd+Il[zvax"|F45)rGIgmH?PU!i$^<ƒF3AX&ăP\ô˹Fe̎2n8S4\y\3M~Web#RBxɆ&jRMG[wSQD%_a)Se:V2t@06}Rl}<17?sAce~7 ?RȪCUD#g@:_<8y>]>Ƙ.y:#"rѬ_|y>MIEgxa|9,|JNȖ/NC6."ENiАxCӉ6*/j~?~zo.,wH/oϵ@8'yx>s?8̠0amŵ'~\k9My~|~N ) a|;|*udBa .$sf{k0y0MtKLCyfBi I+F積+B$7~@uh6Bh)͑6tMeF>1W~bi}Х[I2SWoW,nbb z̿F7r;ض?df#(ÕzA I:vܣ2k30D?cZ*ET.$:xhy]㵁k'siek}e'F鎼'nFTmҶ;WTgS _9Xkܒїf`ش{t\:")/kTѦVAv#NEya0`xпO2>`ZSχ't#NAZP&t {ɒY̌鹫B>} vgg_II?'B;xN7B2a΅+P16sݭ8i16ap<ѕm<Ťy!*"Ƅ7*[p@+E2licBg~t:YyVp,'QQgBuiE:OnD4/OWϫe("paZdfr}Hq~CE('>5Nw3BC}rl"]dHs IDATʐT bFNlf$Aj,h5s #_4l_rlw|U"iaж0!R=^*'*b0[y%qZhkhT]UlQ16ij4|t:-XٹyN'\hX^E,pM[ͤ6O>)=I `3U-l媫$ XxSr8Gc:ЬwyoDB/"l;o?B3g۽%t.XF/EP7 n<ҠEFMTJu0qqF-zzBF93r'`U; R,%Ffb+>码ŮXmhfTtwL2:%tk()B%yȏ?oԎ/8)FZQHӳT|Đ["Sz:=mbK4V Ek4ŹR 4.)4X> MjVWT9-]]8urnXYn@G?>UL}XGrʁڱaD)@ 1gnGu? } Vb"Ol~c\0 %#UQ@n? m.[d"b>q="N./ 3) Μ:ZiX($#uJ6]6')uGG6C n'x8}Qz{4eGTe.XP1nJrv߶r0b :iė+=" >Y 2ye(>'qu!pg6_f}oٵ0$[HڀO?Vsڰֺ:Ks`s1/MʎymKNS:RS,롨؎TŞ&G]EI|4R'|PAQl,ߏBpūzH3s ĉƣ[ޭ;'&QZ3} @I@IJ{6pIb( KZή ܫpVCIc4N^u1̥х?Jb#/Ư\ɈFe~IvV$MD.0&!O;nm9 5Re4urȨ|/oGg NZ"0n ;/q D0H%'P Z-#CzV XDSg,,9?iT*fw/dK' =[_e /AX{?[?3C3PIh)`S=|ǝhԓ5ï~KPw@"+S%n@gN:mީڱ4'$fts:3wevu' UNGTobd]YBK+?E֨ubsMxQa0p^Tr:ρ؉<v 5&Wc+hE͒P0}}E!?EQArcxr >==>?m@" 6}oːw1n:Ƹ 븨rt||1gkވml'#*";K,6cNnup(G@@lN1DM+;_^U"ǬSG˅iO@Ro]\.wiUcL |qY uQ=axXkSpᏆ]%GK D lyr᎗xA`9*XK=kF9,4QFKIEx_Y*1;^'Dw5zb@cGR=K**uᤸCTjֶ4c?ղ"-i]@zgO7u.DQ|MZ/hWy'gnlNZ07-J0WtTֆAy{ku*ƺ[k (eWvNIm)efӃ_ #suz}roI.UGcCD)t+Jy1^~`qGf9G 3X+>WZ9K3^zT?mba<¢nbiWggi,ZgT) IyqjQ@ qUCEc);OG x Vgg( h*Cqz0A ziDuuX{8ED5JZsʥ#Y9JEX}8Bi;eF>Sn  h "*COx{趉U}P|<I˄ m˅qUo1qeF!§͹3C,"8 dMvR`r)֮j(6mW5X[QpD=^Bc>+"G1 5J5L%_00Dr @B93yDDN~yyOU/:6exxrMU_.ǜn|v_/ Ǡ_˧/?zBOwاO 7S|L?J:lrhT6d("-C1("?.claM3]! _lop%<33FfNyl'GNln6"E;eXᬪ}]$v4v0'ԍ x|Ӂ׻_:7S90(l!2%[mA+D Sw4gBlDa ٟy6!lGAFcSwt~V9#dUZ jv^aXuiTKZfQ&W Y+=:PRl9˳F, 8Kyjʭ4 E^XԵe &uRvTa/F4s=|]; Yu՘+'w5Iw:~l]$Ӽ ;[DnxnWlQY&^Ypϟ{fD j[? ѽwLlqu#R ; a^ZJs3`4`9ԓ:hJTaOfsQvMlj@ 2O޻A/XDXM,W38SF3 Q ,ڦM񾐓l'ٗN=bPDQɅ}cmâJ`XN3>\]1|d!ҽ*2,fi7O)OuPzgh̚ݕo}V:$8Zqt^_-=~-> m%VrRfó*4Vl*']eh`6E9mx9c}N7w)".a7DRpPLi1e׶v.:V4gU%p3di':cF5"|]V6dk6#ZUG=O sŰb`߰5'@}u˖" d|=vۋq:54J1\u&%4V fMg׾,UIFU-dnuk/uTW5NjcPFʑ%nk SS >trtR{0o$KYpN8:cFMbdCA:#"QO*5SD*`u``_Wl=< bv+yU%֚^/$++K" dL"ZH/ˬ,ysk//z±;2`;.T Y&0SꝚd^5n93;J{:?9N#'ҨȐt*YTrΥU9;(H ^XwA3s\_6Iz@-:RBWo;?u;بׁ/ϗ t>*6҃w  Rs|Hlp |aR(B%cww [V7`}NQ]*Ce$35x^G阅@ͧîNjEКvQ!QDƣ -E <",8gm|~>?_><<?oϗM!my;(R A3.4Ӧק/q"c`*Ovɋ:Fj p3 D>#w# @y>$\(sBD8BBCd|ĐxzjԀեtl2Nn>02L>Jΰ)sĩh~_U?wW8ܯHyFYkYUfoTYO @G? ڙN_K .}2k}WMKQ4VU, ]KD7T7_nU?q./^%"vI'lN2.?ڔfNl*>u-f&wڙ(M 1jU˓J`bS Nr%Qmqp+%gTESE޽"컉l@]5m=7w4C=s'/U7i#= jP[FQRܩuQjDVn 21zJn[7kY;ָ8钔6;'ͨ:O'88zt=S'5FHoNgܸ뫲/Ս$NWH4QG?-G?:i*O^y?\|q>_xFkLbr.\^q?’uh #^HVAx):)?7`RȒ=" 17c9#{u=ir=x$o߾0u`D=OƦkz%60zwNÅOO ~|B u";nƫYE&=F0{s: 7O +(#G)>VgSzjP8\+nupxƌ:,jW/#ܖRH 3I4#>^'CʖS!CK{Z1 $cf$ Xvw!@M-QH_{YМq)s IDAT CGsjOIKw+vc[gC-Ț}<m[q*}>%7>nK4CX/9yvbwGpbUGG>ڱXE6v;8e;N򐎌|50|*.<"X-O3Sѓ Y&螗Zi皀y]Cs8?׺uHQE~~y~}ylBnw pSUJmOOx~_~ff*fL "2dȢ.ڭֱdeGkLz1>C*_IHXK>wçן~- mZ@¼󊼾f™D-bؔs$tv!/"ɘWIZa ʠRĎN ]cfj澻kz 0K*`ĦWYx%O#X5_ н -ZRj{t4oG=9 uԣ|pBҙ>s+ G+k#FӠbK?oX✪f.UN]ap\u6IұQrFw=6^lGKֻ=RS}VzBr ٯɁ3|՟V!c5Um-7ҚrIA'$:D :#2ԡp~WrIJ^d|t?9"rپ{0|rd}pGXL=u9y2;D. Ś ط u?_Y::ֺG /3)yjߴՌN,ڇX1ḅqkLkuQ/I7Q n­!itR}MI"A_.BC=04 YkIz.%е2+1B:?+./dK,q;x-#I.QO:Q4Yg\YϟW{}󝈎>~ŊNV]GUh$Fm 9DTm9w܆~z?l6+c}]507$b>4D@v2D秧z6i1{{?mۦBn 1Np2a̒Dl`z䠠OL_Dl# !Tx|̽ 2SlקZ{=j8b⼡vӯ۟G#yk!f;;cT&WGf=YN`qfes/鎥(|~QR.٭zN;hFV}zB$"]2P&p7D*#FjSYZ+vWi]_.f9>ŴؑmA!M%yGE KTm%hrnm+I L[Ӗ@߅9L{7pRX:\&iQz֍KQr ʥiF&^שLW|(Ҷ,=N3 խrxLdvt*S5-guڶagE$wZlfSfG^ok1V>?ʋ4UrVM4ƺ̭,~fl1u7TG6"?ˀ]ڧl[g)߹v]:XaRb1_Ne4?\OPTaY%)?7k98;hPr:ȏ^s3 b!pPJ&|qp4><4Bwu|?9YN⮎βy=D#Lg'`vnB)cX1—B#ZR9Z䱤MODXHy¬N2H61Tu@jCD4mpe3RMLW(^lm|t󗧟<>_߰χۆvzRa$;(ouQɠ=N ]`EP\M1k 9]&PZ7YշdoI \FFO ^CgKwt,g<܎"e{s$\x5.ɻ@e o[H2B<9¿'$O7/Cx&UI~-ּuXQ՝, Y ڑqNX4ȶ{\) q  ?CEdރϗu{18J:{"6ą62UaVc"@Xғ03!"i)Jԓ+%mv$ᬄ,s[P ++<~~y}z>}U_oܑrG\YScι*i{kXuhs {ZMR&n7V'k'KA1D|m %`:tI|![i//r4T1P1Ďe+;7?M0N|BoƾGTz\_^Jn/r~"Or@k4 cY6 I{DߜWsEܜV]>ps*fbdy tO g(7s!Td\[ތF XzR'Q5Cj^"B\JVTqZzz=ţ`SVu50*eLCcEkɂX7$urEKLy˭ZႠSBiǚq䮩.2HrXxљ|MwskbQMV҂>GZ#8H]/òD˃ HO֫L]V} Rf$>a iczZ8:Au75+f7+Ŵ%ռ>W++D.l}b9]ȳY*uo} GLG{!uk|<`}HaF pUGf{`N^/TD gI WE,00c7 I) L74T0& DNFQ$-xĒFwPPa;4/Zka0`F-ƑEԆ!7'ҢrC_^./_?=>u o˳l(ITNU7/e{<ų]tFz>1c&!:d=6drLZ- +'szDESZ$)F@U bMt"\Ag%7ekx#F8^ q”]wt,$]U\>Wd!'XzƎ.k*Q]^V 2`e2XHUE*|oqR;T5m¹a 8N}rR-Rum48y򧌥ߡ"nɇ Qe_#a7ͩW޺RHGej$1 +aIHJ顤ZÑS1O:^!px7+ѫm(W&*T.c|_n[aJ1ơySG]Y2NX,4"X3/ ؑCP^{; Qr Y5 fk-ZAmTk JQ\$G3C lcP2Y/XGao,'2x]]}9]UnYz[u@%'y%Ca(=gtʀ5V.y=>s#->:TĿfw{:OQ1:'SP n8t9}oú/=suh\e3gNuMs!9u1V4RSirUこ5?"ft+;F9ǯ(|36r/,@]A =-'= f$hz\IG蓊X/gijQusm-0t($o?+m#`9jZn>(Qg}8vWGFPF+% MI ˪bVR3uDat@Ł۪]HS y}Ocqۛ-v?șXRFf:?_~v=|1o}R~A>^U7/m~&AR4a6m&PQn"2T (OF ?F""?o.WϷ_nvHJ O5UC7`Ϝ*ITo;94Mfsr*4-9<ʓ/yO)ȨL4.1NugjTw=#$Jqhf%7'::puL \Ĭ@FJwŁ-z'|e\W=g 7ˋmtM"\乏a\vQ/@K88q\#n=#a!C^E/|ƊF]RKEtW>]1;78Jҋd7?zX,וդIT"  WΈ昏ZǼ RU=P^D%Ֆ#m%?\p\ D7Y}D=p7vsmPIEnΔvPsx4*lw3+D\#;BxfiXo `nH-&R8)z^Z># _<VTDUpPp2ezE颂vB_?ۼpYГ%Pn*uJ8 q+?m"۷r}}:4͠o*ܫ72-ؖ"Q>Ij'_XsF꧍/'o;ׁI|2T%$Q(b*NXs?ˇ>Xi vQnOlźcbaCu 22cϗ:Ag;\;X©钕W`_#6=Wkў'D212)y,ɩk7!"&ߟ ;2d1$e`\N6`x^SZ ɮMRg0},Tmt?8c^MgXH?jt,*DH,E`!d><D]5d y}<\D4$'/f9*mƷ p073wsoN)**|.)Fv: Uud:.!(ғHRXiME7}x's` CJ?AHD1c[:j IDAT߾{V!v|{{MDcç2&rQ>oOϿ}{OS{\T66K#wՑ=RD*iT}MmP#$XaP \Z-5.LO~g*2'&:QV[/F8٪z0/qt O׍Oy cf17BȖò}iQJ~Z+ l/>Q i'$A!g_z^"'&vwGr(t><2Z,7]b8]?rMv݁"m3W?~'/0GWbU{#A.)EdZ3N &Ѱ&X(iU41K\T⪄y2Y%b#¦&C-7f?]S33=>+jrW)$WpvݻG:H'' |]cuvMRY'wơW>9_S&wF9!h,,+Џr?H}ULДw_G\H yVê@e,DG@))n~~k:X6Oz"9#4/UUa۷"pn{n"ty~-ԝ_)4 -SU/7*!AʡTB$)v:0ݧ1bo2_wjxeEy"h=X '| Ũ+GM[Sd000ؔA^z"Q).&M*#bSG|isȮ,Zz,_̧gݵH$# Hu=9jUU*2p82? [<)C{l'IOm -:VXmL@Ϝ!Ӱ/á;O *X9似8;0IK 9Z9l|r7E 1; *G# 4¢jL^Ñ NTt*UQp>+OxnhN:(yǙtcUxMDU2Gy? O:⊆N'il7/'E͢)uČky;zY)CNVn$qWplM>_//ϯ/OTɾwqaSۘW i+ (Teq.Tjwoz>JE۶=}_s;M榡 "46Ѡ1 tZkyN1a|FT S%:˂6L%GmVH9%~UWFzCQEد#;/L猡gڤ?(tW~^?OX1]=X`eN'mQNUQPC 'bjf2`ܡy1m pϘFv 4QBgKYY ]f|ajJY[{}.*^nWm|bov0>Lp4,BeN"j"\AP"y'q^W>]륽dV"{%ز KF P`-͸z)P$kkD#뇮DK. Ns8,F,c1uLzfbk?@m{PE̋;/"0* X'5?~FJW 0,$+tSNj|J,XG#3 #'gř~k'g}D{"6\)}yfX'"\B>q [Ov#' b#hvw%+G#VW-x3 0Kq7N zf h0i/{H!*Qh*I8qlҨVlwV&Yn<9}5$UH`..l@DdJu8%ٓЪ&t8?6l97`WcYW=9W27(vvG#Lbݗ>\'34ZE[if+BSiTd̎1F>{ QBX!o@J{i21Yo\2T\ /CsG#: G(3$zlgB^/_o˿巯EA|<Ƕw}l+=x뻹^92BEnfIVd̶76ޭEv' ѻ rW=_1Fcyiq*| !8 oV#N2\b1 ]'Xoo-7˩,z5'|=[r dKS,)t -0*?z}X Y2R)/eJ Sғl+hюF("$"j INRzk)[P G^8̄'Xv# *VVٖQR|ON(I$b^SpթU 3bpY/8%@iFΝ"(,X`16Dk TWQ^tQޤU[ò`]| 67Qm6܇ TiA 0s|NJq &Y4p><M_qx>D<Jp@{J!NIX:<]𐳗|tdzĽ# XQ&ώNrTs:i*PL([l7~|xЯs{trBUgxC[:Ǟ av<>294'ӣj{D‰ÓgcVpN]q7T]N@ZY ǜWϭ΀8>z\'YG3ݘ*bXDEp׎Guvjxe9E%< T:Nugs=فxhfŒ=]1㰊vf ɧWΞ+~wW܉`ͩ)ϣVĈ%scEYcO;k~#^cj8c!=K5gv訷ynH1 Ňy6u3n6=CsF@0a1{W>bH_h "uLA#@ Cl/Dœ!จHNyNMb3!%%v 򰌱#./_^~_/?Mm_S;dUj-X Y=MPDŽyە*)Ih2`@ZbЧ@+sne!㖺p8p+8x癯 gl cIKϿ|(!qtΔPz|e:& ٹ8 VrBEeF=T*܁-&zYTuqOWk^9} Q: F`l}nð` "q24׋>?_?bLvMW͈ zd:WS1UۏC+j[3,ECTy(uEM9AAqLcT.R#UpǨl(;fSU( ;" Szܳ;5BQuqˋbc?ϬiUn Q ^C2gKMjWJ (<ə91qQT$YZd5$6yhI.3?cY~CORx"N//ߡ똠c Sn&.c@-QP)sgdw>jFy0'3Aue j<%$Y<聤SqoVrpąL U*8ϓrrQ3Ħ .N;C§#D%3 ww&uD8cc {z܈*t4 8RW(Gj%T7cN1%e9 L`dxSҟgJPJ8il0jèirYvYnۥ]Vy?m * c`7{ZkQBEi߶a1̅.8}޻>v3磵raez[?\}6j]:G*Tb,"C6hK:w~lE:Lm֖14cIQd@DFd:j9?3x9~ӫωUD2ѿU.>bHY BQ9̷UN> TyfvaεQyp/31wHbq@Ҝ*hdHd8ЂDtx첪CPNgXjTzWƏ|zBҳӴ4ysU+E(N*F\Vi*/e,lcWQw6.Daѻ}piV9>hPCu"dr< e+7OL$]}/sVdB`y*YCq_R2%14@eA>#GsL놜YKJDEÏ(2Qlk ! JmLt&e zC~25m$D6EYW!,&$ZkKXUpm 7w[׵wz?[7-aBRjLJ7隂Dty](\zYwzc}m**__emFRyl0}@MPb@XUm2BImw^w{a|˟+'*rBq"N!xKqQlWJ#\{:C@WK YLϬ6Yj:;$̟߭&& B`vGȋL9;Nf[UX魝 Ŕ;|޼9;0`wSI[ԱN lBR!9v)=O~!獀A&3D=: a8c&"aTp,N4}k^<9g"PI FdbTէoNBis2LOƻc>z_e,7}~]c {CUP}3PhF,ח<Gӵ}}Se8ܬJJ x?F?y^n4z[׏!"!2G#:)ڀrPsP ܗxOmۏ}= ^7 ZZ9jjz"J!P;>? zb&Zxӱ$Bܷe_vb;?3yRQcP ^xe~FP2N'JtIesgF@N6Dkq2wr֕uS{a KH(Tbfdfs5N_?Hϱ "57܄b70{5(Z$u*_>}yi*.e80# CEshD}twlc&]CS 2&I\s gIXL1 D=ESGK0Hs j1%+VF 94wAhep]@ܨzkV %`RI7瓞՟"@"i .IS0I_YȚ{èLr["G,^˹3+yΗІtYvXA+=abg-9lK$̓-lEsXcR:HT]0^q[hQu BVLOb(#/'?} t11 ~VM^!&㨲j9܃1CŋH=7ܫsDZTxiq g*x L{bCCR]UŒ7ئ|'4AD8EX"eV9H…CѰûEDTti~CFnc`bbb%ͷ|uOT`< x$%x#f`j.CY(#&|@ 5O,>ЙEr-1۹~ IDATԦ`H?cG|O$GRӔ0ξ۶fA[v{~o}Rdv߷xF l Etiz@{"T%zg5BOś M67[U pYe<[Y=d8 RU'7cYT$IU44'ї&tGӃ4m%?A| u{ك(gd RaQR]ʟ.?xѴLjZmKٗ+v0 /{=GLu|G)׹}ߜ7dc>{ެ"R8u]/KwnBcCUE0Fw1TAIghk`nn-=B`F 'h{- m]\GRF+'*H.ҾE|mT-  | ٩zkn(%k`yX,j1ңS9:q9058f_]đݪ١Z٩Lyڡ@3qns|;N3$kyquOJ20sP11;#<( z]9)# U˷Pz\vსH?>$r49M¹e򞥫PΚH2Fƺǧplߨ!ruʬ<|`PS`']"↥uɥ -N4b @HHs@kfs&NƮN:`a1IsOa# 3V0NxH=NsRcYpӄs$AҩIIA̺UjQ=&KGG1X}#60޻@Dd8豋g.lZo}NS`F9IU|* gPz; f4I@K^(=_wS]C:dP4P,h9юE8x|T OQ)KT!t:5h8R|'49p݋)sshL+&@}ʨ= y#sܶS v='Ł@/ìq./O&K[[ڢuw7baе9TU~y}~߿~0zJuػ//˗ .,r]|o~_r[zg2IHԼqGpuCDNC xS;.]Xo9-oPics'*g 5t(%;q*'qm"c=kֈ_`&&gE:ϸ olV Cg?"\0~J'%uIP97 W$'x*fnl&?]ީD8va'yt4,f["x"sɮ4'fgA0GIwtů-q:Jw"Q~ͻ>.t>R8NcYr0Os$M̙f햸ױc{G .aT̠"`\&&uczȩ0?˜݃Y=F?XC&BMI),jVOs2d#0 nQvQ\y 7O|_,J{^cD~ݼx=l`,a?Қ҇k[uV,4…&N۶sy~]r} ` _H1ע %xCoc㾛;6fލm7M!]¡ĈƝTeJ0ȁdyx.Q+BLNz -x,zXćIL1Nk3#*LIՂ͢T| x5FRŽ^CNh9ʛByi@Lwؼї#e eعlW{F(p 'rxh8c/|nt b`L '<2 A%R2(Kf$ec?V7֦xcP!,S/ †sQč RQbyPR*l3vWgcO0Bsq&%h)dF $+ҜDQٱN$ʧ*xr_cGXC8%Ѩ+o"; Ng mO~<`/)iqxwL7U.@`$1_V(C6Aр9r\tFi(3zZ?N@PQLCZӻP:quGTe 1Zvܚ ZˤBľVfߵϱU>c1)I[6yX:;}::F. i]]o$!an5NԈyM72A'cR<͹k̾܂Ň9BަI殢3BPСQ(l@21Ρ1t s.<=$?A:05mcqwXOkx\p4&={nKtFtA'Sg$5Ӡ8cf&Y,Zfl$u۲c\mmh#t'U׵lfÜskΰr@*DZYu<%(Ǟ!#yf!!#b:G$v:k =2꾷:- z EMv7|Ds! R[RT!`Ql秮pѻXQz@!@$* C0Êv՗-!rNeIE"M$Q,XϬU {"D,I&[vF*4LQ8b9f f\7I7L^^ݡ HrӋY>߷4dU5$>`t V\pRHOM Y:(ksN Q Y"nHSyL Z^ętffu6+}:7VtI}`0TD0EZryam* u;10'" \#Q]wkߌ|ȏqo&} 9."LVvf:7)~mKX[ W*EDIgoTCN9*L6!koz5Gk̸^8oD¡)(\|FDPuNca̝Uy%oQ\5)THF# 5yy0px]’4^myXg^[j֑.1k/zM ;h>8B1ES0g!XLc!c5<>|DW ҺatmAiIxCq%$b_hcXO'=oF R&by@3jRTނܦbX6E?o[oo|vmvzt[c%逬?{DDHxϷm]>4||}},K]/Ϸry}}~.zG,*@8\`k6| w!:&"^05@;wl;c@faw7z gHB1+G5?2S+`xDmq#-Hj8퐊%ؕH)#0ĒK}(y I7 :yABњ(NJ?"H`q(Mٵ1؎wV3gLrG&|r I`!#'`CSD!Whd]ѓ 1Ɏ#!i NsQ*i˗eQ(MƢ1g@w}6&tc`r\S+,T5rNHaхa2P˴ZZCߢY޸ck>{>N|{w#mP;30kf@R,Vu O5':i`@ @;TgHGXbfvQ2!_(J╃i&2sx%G/(JrDmJ=Ϭ<E0#vaq BA'K|s )6 I;HK#=I|e(; 8_' tQ0 ||c!Ίd&S535H]]Bi" N΁2Gaan5+ʉG?|9hum:'6LJʱQKǽM,`V.1x|\f4EnZ ;d}NS4gYI9Q2.\5}rYu E|8l_nmY_Y_JU)7iP'B76sjM@H2cu 3),10ҮĂdL{Rm.v(a-hJX$"ّK?t)soDk"&J}L cf !$"a<&dY^<IC2Ҙiv|' ϳ Wf.xD xz f&BGm~G =xu#ҭ k3g83K7|8MʦD ʷtM|;dI^U 9S YK]VXu$fg̺H|@.:ί|Z棸ڬ8"Ţv+P,TR\R`duܦt,y0TF&ݑyH?|+,OD}y&FLFmlQm0L͆:0JY2  zcNG+0k@ON,2Fq8we<ǗBBE"ֳ 4o",ʑɍ$ (e3&>1z }UQHk"]1 mW[.6TGvo|=]nvm}/ÇE/>=݌*c؏n>zY_n۵w.Kܛ^[WQȭ͆a3Y } ÇÁڮs},.BEJ`;[EWQUiV8 ӞJ%@9Hޚ"4'%[tډqVe#Jт֩B2F\KqVᥖfmKCEx= %b))o)h"&YW,\9EC@G*JNdF?>bTC'̦ŰmXn/$0@Z4?֧۲.\ Jm 8c`+ArQwo9 c8.L)`Y4< wư|&Bs3L+ pςސs~1̥4^29,6Ҙm+Ǒ53븶U?+ ՘c%t`A{h3T8,GS:Lx71ؐ䮆1qv'"ܩj =-.m)d书:1ߝU\6!KW)(j ť0~7wU:)r1.E15c$jV`ZN?:ʈ#5ʗC?A⁘<'yU0TvD(TXItf?8A#?ATv.[@牒'sYEvI 5i((2i0J`!Ki{hgIoPR< pb<;Ρ@s'y>Jdn9X6PxQt极 FǩF3 72L+\7ufCB![lR>1xfRy,_*e l"vl EDWw!mP4`٩]67qb UA*cַa۲m~|{zYummEmu.>=mOקulz"]//O}}篯Ϸrׅ׵5^G۠KTE\SIq)}𱡛A t.o;?FbZ:8y@8:جܢLi\RRMVAX̟~Ik#"q Hq%SdPwpOxvfK<jGՑySd܃AxV+M?`?~ar-87bG)KyR5Df)U!Ka\Hzdaw֧ ,Cj)uNݐǁXi7NUqJM:eX:q̹b)n%|Qy}Ok} ff*h[lW ~H06qon U zr!"!!Z[D{?Y&'j~uÍIi(v.#M t)o=0\gMT]\\^B\Z{t 7}:O8U| 68ygl*PաW ۚI_"Cm$)'0#>C+92$IHNZLsi/4F2ҍ4 i=s7#NR{MSf5M4Za>PI~9M7 R@fDs|d6>BJGi<&Yw3. H R3*%A e;B2r?̜@t7;4ԋYy=D#j s<]Y~f| u +>5y/Mf^<RdBnIPRdfyI}r3P _^uptLݨzP*̙UiT˰.^'Cֱۼ_"#"ąbbnm+r_|Rp m;,6Yz*\8K⑝8[*H+鯤kv;q~S魂sr4k Rp E5zeUaɴwSrIR x}qI5t FsX]^EdR 29  Y@a|SB!v8N,91]!3hn 1C:ABWz@(#U)l] ^ FSBqKHDHbȣ* @OUӘ9;:3'B$3d F\TEduK %/uJI餍 %GRLM:qVؾ`>5}no7UCv*W۷۴9猌&;I`6A`\jbߝbq/SAm=$Jay'%am< D (S2C_w=޹ea+dUo}㡃ZY`-~: -EZoi&zt"]h\Rɬ>)ɖNX O%gxPC tJԟ s~|J4{V о% <0^t'*=nqe%,v=GbkT^qOjںL4j˚qMɚGqڨ8v=w(lӋ`It2.Qy\>U=<@.wܿ!7DDCDSNvw#<""2XH盈u:--O(z̘@\ޙNy_ka!"O x+JS5wܿ 53331sט7Em[~>u$vsof>y=B]ZgǚG`nvw%Rrc ۷/wD$pyԘf"v>\6Mu C#9P6qwXp7|qo ;4,{@P™)Em\ǕUHib2KLU S =M@>Viˆ}@ lF惭FI"k@n_kq LSO/լv EnDwa=U V}oIaQY]NwJ׿`fZ[?M-eTqȩz69(K By?+oV?%UE>< wY2Pga3`g-t8f黇yX7P:<,0$="Q4lB3 +^b^EG@e"KuՅXlUi&7UGZ 5s:A$D$RT0M~R(V:W%RWjkw0,2e`xi[!C\e@矔ߞ˃31d}yţz}'#Zh)3_h;;Pg#j;|Ϝ(dFE[7]c, v-#2+h>*ՁK-6Wd 2>٫*'ɖ/U+pӿ*H#2ʚ,,@աZi73_A8gIЈ»ui1 QPeQ1^mИ'腤O?a$냭O^'2:NlڏKXpLFb#^wT\!.;Nw& A %mB#w}F`ѪΒp7DXdr=#WҚrSlv:-E.FJk^\)4'|!jcr \-%ܛ3K:<P CcYz*],p6Du vver=<` @u[Їޝ/ުSn}o1;,vc:VS̕VA _I{j[H*8>wS#"=nlJyz1dsvP^?ZWp@Xg*t8:.uhV%B+P̎[fku:Fxcݐd#>ֆ>l2LuڳhiK~b0, X]e8£Ȍ=p h.!ҷ)6=^uS0OS^h,5cQw4u8Osm7wX`fA%w Q鵆!,#`8-6VɅԺx+U*@$H DtѶ6{;x$v-Ӆz<+L\(^X2K^. 7a?qtl>q?\v}yϿm\rrlzڱ*%jH Qk8kq5IF S]&ҵ)ߗGM -*'G=)0DD{n_\#T9n{Y*bAK90ȩ3͏҃unZΙ%^z;dVAJ"VaŴ8,NՀ5eݝOB#KQ0i9;B]ƿZ(YPg?LT2NGГ?Nʊ8A؈>Z>o!ȗ/ID?yί7z;]6] 0딫2&nkxJZM07Lᩈ0NX8Ię,\=#"Ȳ %A=/u,kDP5)T5?W:TD06\Mďꖔ\Lh7Јi~Kpܭe-sNo4D;M7W>^B <>( dtN3#|?ޔ.]6!"JMU/ૻ):b\^>ĐiMK}ׄ#im).ny/* w>O@H(ZL-bSC<[9PB)B^jO4 VPr f/n%̳%}-Ӏ+p17KGF: QbAUr~?uDnTԇ+dN/zyæˎPDjEn3 ,ZT%O, h)b^J~uf] 蕦.f:?t9V>R浀DHhT\w.`.$4ޝT ^=s=nPQAE#Q)8cY-MګOQo{mpUҙH>nvnp<u*6wyQvzy|<=Glz}|mM& Hs5&}*%kT8T99ij篾f,fWZ!b(k@>h>:#Yn}? ) mԅ\)%*I&#+aw8U,ǏQ>ȈCRg~GXZ%Fz@ޝ48l&Eqj(x Q~A""^TGa. !ǁPQ6!OOۍ6F<^p "m{ GDpzw" M1'f ICm193"*h00=̂BΘCKl*Epn].eHzȄ*9XG|*`V-TWOD+Tiop?* v2%`XkpH@ǁG!!eZW˩.Q>?ng sL9h='# ސW(TzNGВK(uAzғ";(wX/OR?pխ VG@eHuSlRa.p\iZ`S6WǤإciAeHĞݣIW%?J'd»Xr5Tsy(KiOdgּ٪JГW)xJH{h_7D,KUmdﺳ Gr/?T\<#~|<1=뒀 9ueȘK:}.c~ s Rpsdwk@BmDӧUfLt?_6HZ/+H\h}riu_ B0RHʡ>(Iq٣ D&H ^z<.6iNH TP,+<q,G'8T4zWVm]׹n9EFw: ;F~,({HEf*:!V{("Ro72>pԟ>!OC +=CU)~GOۆy s v-tƲA\o UDjHrFMRcT4T2P$o|V ,Y*QzFqmSNKa?%j@J“/GDH}O/)D4GilیWͪ8>՝>g~!03PDYǜ-!}7PU@BMmfQa##^ZIK`r= MR!ZQ%%ȵĪI&v`/5 ::Tq|y~EUL3 Y D cqۭeIbW[ѷ4Z Ey,9Bkhp^*BX)WR*֍% !a)^EB.H*ƠD eZB/+:u'ͣ-jÒ$ųLj ɔ=d}Y;mu~0^A3JY6As^]WDuկ.p`(TǚP –.ڴB \}:M@DuZ_Dlo<з=;Gs G@-Ԡ35pql*笧Q^wre; Cc:DH7/Ϩ"DÝU<0NI9ۗW9ˍi(bɖPNGh?}C@LY. `N}$kt!0E1-KRrX}tJvJWi] dLw(D.pyw{{o>栛O>^{/_o?|xW/D8;/2Hq;Idf_D:fP*_UD4=g=:Z*54ZdR"FFA-aa-.̕5uSO # TkyB yd KO/lFkdmI3ɘKj2i`C9~Q70qTǐED9 {MfAGDU*Jt nT%i(sxZC ,d2*C?$(yxz^ޮNKҰGeu3>vY+gVV?zJRMЇj j"=>"ae"MxTXPM󇇏w韞du 9+ zg@%/e-,kbYVQ+/ )̗gd DQ QBZJxpVCi{|3DP`^yG$`ZI3`Œଓ[xc|Dj mDfX UuA4NE1@\$ΩdvM,%/ >ͰYuwM\IyyfW\;{Da/b ܿUؽz':k;Plzo:KPvIyA!ܔU#z9ڍft`Vy۶mZb3)b>N:H~'qP|@/ك Zvfmѓ;R]kcCX Ta#, "_^,hɏzETf%1Is.Jvd1!$U10d^ro~Ppp_.p>^.2mz%ID*fEU39t}98{Rjp)2uT8Ezz~uB٦VZFn1.+zzJuJv7CZQSn%@iv>ә^K\ԟo9VQNRYoV; H[:22@BL#!iӋ6_>kawQY1A<]ef/"Ii !TJHj @L9zNw컻Wo˶iU_¡|TDhV`b"]UsDȠTx%K[Yd79=ë{#+a( x=ɶlPa_>ˇ591ݓՉUɺhd 5zoq c0'G&AȐ@q y~x@R>;L2WQx4KBٌ?WI!v`F9io8kpb^aýPnH/HQtwti#. qxZ(=9cEzb%L,YsXD s:U:"ɿ|3~(N?bbӇiS^cDN?L듥 w?uEM@~EZ9 `f? #nkWNASǂ Mt'KX!z7֋lIX?h.o7Džs J7[o+?Tƕ<4uMݪ.АTG]p#&lwv"CsԀE0tX8ArXok~$."(89/%L$evɯdQ&EHrҋ@?} UT|{2- VB )fh/gahM1AiH"ܚedyFZE,H e"4BJ(%(Nj^{t$":3.[{R.`),S̈)t]ױD KS4e+bM ͪKZ$_>o!3gԕ']!"c 6O".rɂF &Ҿ ՛[ qЩ=$ˡR ]',Gy`yB&W Ϋ_ңoB>Z  Ǽ4r)](t<[v=^Ea>˭O5 C,3YPi3OnbPh $)!AuwZ޷Y IG3hjW&Eaл7oc]k"}f܀m'7T5 [C5Z]xg̯w2G~GSwR)nc~"tF&n Oÿo7=P*laGus CK?Y$ZGk%}}v4Y{/--vk猃}ϏMO9M1 ff75rKw5 U1$& \j bFpH d j{U6 VH*h)THqdYnwjTIq[-+/9E ?R2Ղ!7>;9ijEE6L(IƼ+yq˨H#.RB-ýd=E%rQӀ$]9RgR`cEnn9U".z7>_ηe}z8>}7ׇmCfs>oi1D/7)/>]×vds"dE%뉚Xokqކi}D J䗹,}?gSvMTHǪrtRåˤI_J;? =T;6!dRtK3Wv~ MhdR IDATr?8@B~u_5L(XIG ;|Z)\hE$|Yᩓ,2eBHƺ40Yt}@`\q*f=WT%Qeӳxe$7AG8lr紉0p'42w~?",f4TI Dm"L܃c03b< T#HIȠVQ3j!bK dP`2'!Cxܤ}=yS%?92I:8EJsy&VuGY)t۟.?xlj5baw<3 LJt [zKT2<$RZz*Ի=!eUԛufU;b4"9Djut"pjèsBWR @%9t~eS&k+gjQ)F&di'1ҨiV[KMdEuѸ^q+R >UA3~񢏏秧ǧwh/r /omo7d-8=_+AAf[ewx9&VGs+IR#U_y|@urJ_"d˷x(:rD=/ eO04m}v$r@sH?$vHf吷&=ph@)_$Vhu K_+jفOR_`O:i$]cxpߟdm4^Ai݋H>AY-ub?ϟϏ92f>41#! %dc(7_$ *I h"b)P tTwsn)GŖ<#!:FH!JPaTJDXZ"Iz[LT.M̀L> GA84({iB5Of ߮ZIhWtw|Sy[24o=5J&R?7FäzfYBGA¸IkUtϪzu߷(kh3r~4ߜ 5+'I1R -6C}+GΖku!r 9JXP3$HΟr(-ؠ R&X= 8QEAR SnfxMZxٶUƃc|~*}iׯ/^=6ۛD<=觧/>><^.lz6i>\5i@3&@Z*IDFkq{[qVepL͝ϑlXDI)Zϓ۴fjfLX% 6nPsG}t%Ѐj /%j~Jʕ61\ӏ6 |']AnJݸN_J*IEo$v3+1 G+sc"ɾn5o<:g(Aٔ#54 BACC6i4s3if{Zv6n͈ /%t?aJ&0R]NX2%k="\DD IGdDnHK2.%#էåFc5]EH{T$GvBE*Vq# *0U77?]~hJZ>O=4Ii/Be*|5¼ً|Z8~t5 fdh{nk/!HӾ;!B]h͜D#3պalu-Sc/ȹR둭XJґu0 #hKs>,ֲ}+`y-?FN+ G:GƝܣi a;gdw_Dz4+cI_\h,E_SG05ȖZ>fIQ,oMeB̫W`.|N kXťyky=|51yD`ޑԜ0-52ZSH6X½2(WȾ fK82F^ )D^PT@bj"_d]"GK{1^DMcg;MHNG8OO_% AX"o} -RӼ HMˉUٟ%i_e'GW€HLOPH)+Arz~}@ 1]_son__^Ǹ}zwMI_^}7<>\|y_>~˷{ӫݝZ&+(QټAj7x\'D벤VU `$sd[-.`W#骲'=_N=%8<ݼNSFHZ^g,Z0\ƒvm=ϕslĺSuZ+}tN*p=Ÿ;3sna=ɎC TX[?G"18dM/^h==>~8$pw3汛EDXD""1P^cg5"p7mn!B֎eWT7/M p>g^ ñ.|0 ~3X`4RbFQ7ƻ*&+IV;J+ExjP5='7E4( cuiE$e wnw6fxRɶk;C7 _<>i nR'dgĭs׻Ú+tHa71^湰Zs9$Ћ̬|Ӥ@M YNa[ݛX.es"GG_ʿ^$xsgt0=PLBhLI^vH=_)@?j,{,:] Oł>JpӦI.Q<%}J3iu~\W܀=׭bxZDyWLU_#<b腑+$i5'VX=O,jF P>#WU,ӿZAKWj߹hY~Fx1ݲ y;o{b*H;#BQbz6HK+ѵ$,>c+ÒGLs@X^_7Kv*н7pZ 7G|TT63!A,@%$ \u.D̢̀׫- В4Mkd2%N94!1׷%K_'}?}^/&oۯlߧYӃ???x__$Ps8r'7<+KRj-sUw5)IɃ*rp0E "&EmP)ƗO&na91iJ6DD/ (Db!J`1TAҼy; q, _z I}szdla-x)UF[!;v٤\n;lIr̪}s/< t= z#(@/!$j 3>g]kWDӔ:յ˗1DN)^P*z%.ZO/,rWٕniNidq^3eug\cR➆^nVDp"!c8yz!!1booxG-9ZF^ji7JSv`Z2ȩf1'Naɚw05F& Q!8%!vV"k%(M6z#W7Q]HKi;X)mrMv&L^K rU&_j.A}ʞ̒I-jNguo`䱅Hɩ({{6~ҥnxM:VM9g$e?>EϹ *D4ϱAr #R0eiF;k3ɼ{'f s֞m"cE퍈FN5< \?go(EeBfЂS?ׇHxfnӬn=hVE|;e t=}.&87C \JA"n$c6qvxks)WV8å܎>1X3kks̑&X=j~nc QNG*7\t7u ԾȫEWFjR%TyZF)t2csE.l`4\IX_ϥM1"bJ I r;ax{߂YvRxe1l 9^/\~3/Vj-}qc]9"}!ԪJ$W+-l~*.f~/nj^18d3gQIiTbOlVHz BbC'ŵcE KtT=`{/ܟ;=Oٿ"&Cp>1C9WnzSq8d+m>1|\zH0ưaW_x>\3A3Z{y9@tƯ~hem 3"R *(w#:GNϙ)R &%yD|{{w"iHѴQ+b;X&skŗ/~צmHyɩP xB /vH.6S*0Xe/"y#KPS|&OnqtF;Uϻ#Av ޽=#,t1%aU%jne]?[wqo-Ņ2=^Ek+F]J(KZ+O]e䛘u,AHЊ"L[ʙ(EINY mþXӺ8+jt>zj̆Z桥&Άi8qm';;GN7vk*dO%W=!VC1 xͼ&Qg}VErGQj9tzhLnIʨC5;{6"}wRz}缡kkm&dTq4*$b<ûڹ#T{Vۡ0c,5-Orx!\#yv%0ӯat932Vun`I@2 I`J꺬LP"zW; 7:"3^6Ϣl=sCzBUx8q T-{3i'wޘ@ϟok7ŪaPX0Xғ;ϓ IDAT~h HPW9e#{7K1nY}.zU\lK_R%[U_Ԏ隚8 VY P-p[6(J0G}6CW$1,=f!jQwrZdI-UNJXSmŷ|{o_}x ~M0ى?] 4~?~AV[~.¬"ˠsصl~|$ VcUOQ.i5\1qzK`!4NǘRYRme s'svek^{Hf}Tɵ`>v抈s.RcL'-p40a/>^nr -]Z(,Z O//1p:(p@ nf]gfa~6vGh|?ϵ{K^R$ϵV<=w$94x$gi̙SKLC pL9^sfrx֕#sE#7E. a۫y`p]|fѕ^ņITܷnwè΃Վ{ITq'*@\tOB4W%H,jwcFS)(4]n,xǶvذ829 Ba]َܦS. djKz5W]#.lqNBl5_V:Z]s$eF2jFY;`AUv1ÎXDo-9Ϥt#UOmnnOT3@]WycM;Rݫa"3GH3lA"s|~b띺% ٧|'ϟ(JiNb o\_` ;u͓ڈ9XݭuLu ]Gv,6(gUBy~|[=/Z31.Ā_>dkU\,j8=N~T)iWzk$*&əCMȖ v^.GPVχcu~#. )ݒ*| ?21[,.m#kb4jmMn>wtlC0pLYH^Je`}&gMEsC" oC01#D҂nv(XzgtAUߖV}.SNu&]z^UsBX_*1X>Xz3Gx} ;]GbNo%.ڔw/g,7YkAw:lu(ԃ:?5; zا`C3]y tM}"e]\;#9,qq}x=c,ry.Ɍ?/1"ppmPea*tJ i71HwPNvVp9'e%Oa ITGs!B 9lN0yF&x(brR*,4Zepr irp%TWP b̠{yؚp*V:yYJl(J a@Wx?|1@=s_UT۟ȢvZhVջ5LCXhCǁ9_c͹"D!b"FpEOf@=V߭T٠zF-\ݚiZfkOEL)NNL G֛9tk/Jmѹny޵akSkhf-μ2Ѕ@`l4qiXBO vOYޘ)VCU)OOVE?,ТGtg 9Y ˴K |[1YqpNrѮD6EgsbjFh ]м+l'ϭ'oäԞ_EOhUܻ/yoc@/|xRh& ('`LB},\P `(V@5b'BfM>4nYǡde/AWd`Yg]]_&j#ȦdQ15ìH*6߳:Hl]k}/(G^f&+Bspʴ/[3uwBג 9 "ÖP-S݇z1#ǨE l˕u?brQM:yim}q|.TYi׆啙 ՑDg})+ŲQjYu5 zg+R0X"ZV>R+o~[MSg;×Z aoeR=.ԗȟf®+&s68xOD,sȌ4Z c3%-bB@q>ߝaf0hJ"t lN:p53Ib͈C!SoHa{F?'x}5ל+84kKr=s1t}a1IL-k݋Y a%|I4m8/ߓa* XZX,a͘bv:i%eza(;_#3$K?Q3EMȔ:~1T$2B %ZҲJH5.3Ŭ/NjP$x})--0^TWba+jUmd2 JocdiZњVaD땯.rg`gT:%_ǺyC(;'s%O|Uy'Z~څ8yWiT8Uȯn`?e۵:tϹk*|v$SkHO 7֎}c@ pM{1o۝(:^]qjN+Wn&@r=̃RuW|m¤+o,]؅Dμ-7`kҭ99!|}{hj)VT a08!j{"1_:\6^na0j[Ή$SE+E=$'XҨ*csAIZD2ENZdXaMfnmcW,Zs=ϊ5 RN7 D>L"Ү1:l-a DfZJ]G&@n,ӌc\N(B˥mFEPbS w9&i7B..*ǰ|x73XBX& E'hHȐ, YDZZ(|Ƅvj4*B ?{1Wr^aN5=t`Hc0z@L+ҚQ˰ƒ- 0z{OouP.7vVP_'5znxUcDM(%c^=|\+X֌u|X_+;q=:?hX3,^j,f0ԦVV+uW+=b.85fLO\)uO*,նƋ#+f}ПJcq<1 <IYI$J4̍Rr$+5^M3[Ze2X*Dѐ5"Oո[`ޣ]2w(t K* b4F)3If/\߭{CyNw;V& QӤJkSf9B P8{ y}TDXQ*@ksbSw;y|ҌtB/%i`Zյ?6. [8ybcG/KtYV%J3O&VJF{r2/Wգml,91bJ5)dXnWf6S3 4ݖ;ǟ:}ﶮnT5,/g~uFPv&v6V*ó%\x rZkes>=3{bl a " an vq T%==ķXY(bbd3yX\٢" QxpLh SEhB朩 Ăޠ0hR^t 3:Q6,n>&܆u^nf |oS>k,,tKwhbP>0;!܌wz9XS68ŵĒLPzLkstH2mΨR@bAs`NON "=+N_ %f%ZIa a0 Cqë}ƹ 0$)eMVHD`Qb9߿q@2:C[#5߂SXL$Y^v~Urg;m^B-LH/YȒ,d0L/#p{{.RlX~ )J*!޿w+_lI#.%)J7~I1p*'1a)6:,GbE_ ,ǯ/Yu03ffqc1!,rE!?7ddbM&.Bb@I@C3{R#Lٲ7o~x=\1+euZL\9ך%q=E[v8ǀa vz̗۷ʋ` sWXmSѣgI m4QYv  *?UՎ'\1jk5-w 3dnzA28@Ya͒TDO9cɌ!:#C]7җWF郿 QU4(cnjy2ëi-ٸ|Oy87(hGv$Cj 8v?/{抣ߺƬµ [ܓZ//GyJV`a3p^Yk+)EekWVU{ f8!k^=cXIU QQ{CB'}-i1<@34. ǡXWDMUeT_i]2" &w'm1x;_ͷ\07Kgϵ>ɘM5|a~;`rÉF)ymR #&$zop SJŨ67@ODx=$$V7vYpCm--zJMSf#[f7i2-6eUUy~qx5xz iSeY\C2׬sn\ker/ckBf20Əom頹}c͗rS[ *݅rbΗռXVC0XԆbm=5ֺվr%B2ΜEȫMq~V{]Cw.lNI}3sۮAK>?g`@!Nn[QZwfO2h^I-L)c+ۆqsyEtnn^u7T#;2Dܴxz= wY!iىo'^:>fO>ӵUHz+.H6 V=G>-_v˵K-Co{۟/_~llڪZX/5_}Uŋk /_&%UAaښZ̓sI>\U lEY]"JpV! Z KI}#VU4h Ҵ̰:Cv0ݓm+(XS}vB';f1!RCVձ1_L++*jaMXI0ٰQ4:tEr6_>'?W<|:5-ędz {Y!NW3Uy 6˃5v;B%*U><{OѬ9[@ȷH;IbS@༜gU]Eh!YL!G!wϳD`Ga.; M:1*vgx:~\R.5끛:Sj-%90#n>n> m0GSUZt8Y80ô1GhΘs1c4dD.A st'+Pe]n%>x(Qg0w1JMW:b!ΕYVrn̙ i6m4a@ 㝷q.@k=׷痯ugnnAjpow7ۉZ)fH`1Q3fP "+ԇ}z;3;2 H-YZJF'0Xi-*o3fzLI4΀1ǰ8k3B]&[Y Ţ,$ vK`i'"R JFJ >L>f@thSyCKX%CtMl#Tb_ )*W^53 M3Z2Oqkk3fKfZi8Zd̋\o sԈ,ʞKf&ySd^P0Ͼzl<K`,~kSv%0'3},2Yy嘿'FDܟ=u IDAT-?w蹲, gs׿Px^34E'[zo~|9mE@1L0mc8ikt1~9D 2'jVńҥ/KPrKӻy/aDӉ#V1HΊXU=H"tn2JPt/,aYN C%#;g4026C63+-*È%J@z3c6{`KLD .p0F˺_ߤu_n㗏և_tw Z {#3>0}7z"1+xUZ+:RI(NRl͊$S3IJߛ'kAQ!J\?qz1wU@NAz7 [wVwyC??e@C{P ~O"ؽ5miPWDYTB: HSCmpaXk0fqm͘y-MH"mޏ1 MtHK:( `ZP\9Hh[} D,1w<o?Oto~ʢwb=wN[[*U= Hkwg-߯|!6"6?J!RQ -V'hX^jUt sjs)U3ø9ftNn쇵f.\6t4{՛S3}6=o?f}*J;`= x ~n}z!3"-2&-3a7k1FVI꒝**驜8 lS ki|߲b{9ϷϟnǑ=LkemR] x+dT ?[{`k[ V߅Fm3/=4 #u5dvQ$;>af LK5_xЮ^:K#Qxs{1t53[9I44U-i~ܳB}ymܟ~⥠X3\ܺP#A`em.fHIe^Ya5uǠp?6_hxG9+k-?6efZeϵƌNJ +"$L+r4 :/ɘVZXN|Q0p({i{b4ss0`E TI-F.@`Ɇsc"IͱIQ3G^Sj_ylΧn~q5H[XHY^@:T>|aFBI*"AR"\a,\1" s)"rxsUe>mF",yK@~_7׿7׿xyh\aNYg"s>b-ckQyIɑsfM^<\[in,SJ챚:RB`H4 I7"*)`5^ w؅ |4ӓ3!) Ѣ)dDGң~=+֧y嚍nr̜`A-KU EdHdy0td] DBO/Cҷǯxrχ~z皫Հq3=k2Bn'̶a/0r\~]qtDn5Ʈc\aGymi$ iV.6 csnv>>{4/jzI!4a?y?mkw6Ic~K>Ӱʠ`fk3..ԺR)Rt(fp1pV_):WaNZW#djJ* ?";NdD9jv۲ 1H [taW$_Z'D$8nV.5vאw}dUtdF95k A%a%lu;JYxGC>ak IJHMb},eDm1yma[ QNbJ <#]"h֗4dz۱uQp#o7/ 7(nU#twf$JF2$)zNs,)zx)q~ BZq$v Bse"QK$Y6K;(DFX"mpZl̙˥`L1Rz^ fkȥv02nic=L%"ҧ<ZVͅNh9qx^}NQ JJZ]2)jQE_"&igp.͹k xLL&a\ՓR&抙]}[ ecv†&8H8ܿ>[K \BMd;+>nfq9SmfVV-SbIve?HSUZmQ@Wʰwm%;#NVu`DdF7]#5i)j5>*OCɬ;C۝zd 3;Җi@da bqT X}h}4ѫD%~ "m“ D+Үx@ 3?ïz)Zϰܖ X[ ZQKݾܿ93PYutt Y /Mi R71o.HΚMX.:6-meh{NkةzDx|X!⻴NhAvz!8]yx({_ʌ$u;h+N7ӢZJ-]M#蓾Q.$E -"d{B*Zc(sb 1CL B֊zwy\IXj^g@WxSVnjGڈMXp&,xp+Ղɨm3LJ33_ 1gRm(Lr D(L4Vtx~ފW!"Q*patث͐ʹshMܝO6fY DBK !z"x`̼ϹaV{^L#d&mweyjK3;{ Ƕa5P/`.DH1!gy?e1WCbQ(56_y+9x8u4[ehT-m/ 2WnB=8u0qjOqkjsǬgbVGv0צ;ڔ~`ХV+}P r=q..f"B}izY0qǰ\$/dn}/##6=Nk#iekjA'nj!Zp \ex:>8~@/4'̓Nj|+bnN/\W9Ǐ|owyƔ964rc8RBUW"sI`'DN*շ/8mnj]!j$H*LS&wvAPvzj^U:#(elDkf4N-]1ju4pT%Eǝ 5E}g $ID`,~Ґ MT3nƱ9U21|y]~k>of刺 i2W,?LW{e/p]S-n* 7@Mjq Qa"s*[FTU\5[|pou4#GeCl ,ƩkEjXnk=QHZ)OO֥VoWiQi :حklw㼞h>*Dipu޻'tkXӜ6fO%3o{%IE\uZ-;$VC)FR )s&PIFӓV$:>SQr۾_hai4HfЩd-F"-"!0Je" IDATyvc!"`35}10?̀Beyh$Z p6)x_ˇԻSV~m]C = p>_}mrШD234C{^t枩 i&"2[Sɔ"iww7MN} F.iw c݁j0 VK3{~sjj0B/P4AlK1-"w֬`cPLġ%*kq P.,\z.CM …kcwEr5[!*ekmɽQ~CC5k a3mE]3q )QCT/.3|i %\#H椣@vjb,G>?q…%#ʇ*&^NcQĹ8Jo5oqϡuiIp r,hCѢMAI[Z}ei͍z2x^RX<^Zsu_"#6:\ knEF%X5 +u9!ҍb"{2ITF|3Ԇ=,LqKnp}_~j3!X5Q6E Xs \{4.Er8y@GɺVYDˇ:^Y'b>l[`-Ў<+T=qvI0Ӎ]vȠw/o`Xu*)qTYN(5i]c ׭tPhY7V*\w|SKP 'wF_ƍ V뭪dRHsrsnf1,/GQ~x "ž7ShL5  Mq 3R;'Jb8 9w7%*s jol=RFX f>ڠQeѽ̼kTnY0z`~&9,FX>̠L3p4VgD4o|e3ʳ" AɈ,`LfO?]Xwr=rϼ9Y-^) fh!cD inG%͹+JH^u4$6/}RxC y׺nYV>y,s/6$`{'ݱ]hgCfRVGZ2QBRExÓ]eP*ْ% B"VN[@wW ?I> BЁ>ꞝ=WN 1Yϻ_)fi-J|a˅՗hƾnUoGK*l KɓY:7C[Q\;3P*@mgrWa v"*zdƞyRE vʗg4gfLƷ*レG| &pcCj0^4JPe$` b!i{jm\ZjNĠeltnclb7mΕ  >|rї( H~xdi&H.=zEuHC_/Y#NՔz2ёgL&z\xAo}4UAu+N'=OEbp~W;7N }f&)Ee/^[>Fe21Tq 5WKIXQ(W#%m/O-YU]zd4o31a@zX˛:*%2̬UHŴfdۦ{ ~+N l]RYkLƢU)<֠vG{)i+VN_푕:Q0^6^o{PxY}G}v7=_?^?_7^ƞҦBo {e1SyLfPhtt^֖q1E˃>9X7\1ɬ޸3;u0]ce uzc~ ̏xҿGuyNXc)S<^3G>2D b.˺&%-H{[4۽quh' r:f^?D%zs[L'$xf,E\{r5winq6h@*NTўgRNU$tyF)ŭ$ʒm"L񰚱RW @(c t"ܷm)aI1̈;s T:<E3 >IZg&=cXT"-u_4?X愢DejOD྘B^ru#h5dF"JϰOܧn{Ǽ1g{(DbtH2Qޠ9E;%DMF`~sw1ኈ9#v~0B"9%8MD RCa#N8{T"oՄ2 navt]e]/˴oNUy|U,6y@Al_B]rys&3U7s*;SVx+5זn8qꗒV3p[vi:!N: OбQC!ҩjۯ0y2)&!u^LN<u#X $/|zt$6Wm=9Pf06=J示N͢x꧹a_团HY9TB{S-8Ǎ"z7*Q~;B=s2ӑp+-ssjzbFnfb6}[aP0,"6t9 &AI$D*M9SpF xE#9a4RWO@$:@dÀ!5Ce *T@ÃVS`Ua#a%RQ3C2E0"rQUvOQ!n[~ +r}22.mױ):XCī/_?~xw}~>?~ߕrQH.+X.Xsuv{ҎbEU-1-nXa^ x } Jy"i. Zc]*IDXzu<.}W%#8W_)?1[lدE$IwϖƦt/ͯq9<|S|RXf"r/P O'_mfQ0{\WsfmKCꙩ4DMXժ+D.v˜‰DmZIT.٫{3 c ܼf~aeQlV?dI KNSs:hb7w"3'>jHq7Vz:#g dj&$ 9"]/?]GzL12#4g'{x1c1*gGK8ehlHeN dFDDdtK\9v()"ҬE.sLȺ|{d4 V+~RDp>Ey߇asw+4вi1Dw\wS=^3k]%T\>)Rdag51WVYGN8LǶ=35{ ;">.bOnJl(*l}~L S=JUq5[dK#<B-Iy<(N?k|!*;||LNN|gne@6zN3*v2*'?_{~E=fDv[`dzoo%o'x̝ȫ15#f+dFɔ @ͿРb\8NOhj̈`Gv8WҢvF,fA-ȥdQJ%246`^JPncA633* qڭE48V>XUoEuX\$=C`%!uv$ lf#"8ƧhZ Ͷa؆WɲGY"sRatݞyc|e{H ?~ŏ^w/?/o_ʣ| hm,*,cj ;ˌvzzT?cxW`Q,Mqi X 'n7Px[`9zTh&UD[cPgeknYWQ(UtXr?6_gmUqXúk[ojˆ o=j4gيC$jIn&+buy3>vՕN<]|x|ǜyp+YZUBݭś!U;mX-F14'.j` \PR!" #$f%f~^,J:`G\\Dl`0Eff2f2i\B 4:Ԫ"T]-Bp&T@1Qs-6.@""(BJϼ#wIbdyk-"' p%IfF~|U: c{M*}I+Y3 k*(mm8b >ۇ۾=U3؆]x]/csHg^??׋~{˷>Ϻ|7?ow$)xpйVz.^"Av\`%jGnEk(i ϘƲJ_ux_H`Y u8ϗvRGGkRMW#[EdS(HpR[~[M@%(ЪUA\[%'땦atB㲹.\=unt P{[Z;=2 qJR(7j  1K/n7z+G-uXojP:)@͈׬N-:u'4,€UQ#Cܡ-+N PmYu?yp`6$+B@*^z̺^-yxU_އC[/!fMuJ`D izW)!L! 2e4 Ȗc (sH_`0pfF۬fE`Q3A\lpOfN+^Eϫ9rKvSH s;wJJ[ҋ:6~"e-fYfy\,J.2B߳5 =ybGXH$y4euySr3&zzU cNF t͇o޽= t0I^E-'ha7.m~߿M_oV{+V~.\y V]Z$r UnTG,GƥY!3@kɜA+u)zf?cŵau%׼* $Wu=zd5b!R]W\z"OS8pRwə(SȌ1ݥO9!1wu{ .ʯX ,L*̌C 6!%$׀bpc0}$(,$픛mnY@9~W+19 00y(<%4in@3Nwl[Қnd#Db@ d2Ȥq8UQ'#KҮ{T"̿"h÷\Rdʈ#&N7b 3wEO9߿o{̐4 1 ̬.IܹdYT=QZ%>]:!@68/q.KFl0_vʧT͚"Sm)ڀFg̹> yrdrf@/6cP3ʎ<\`XDe&ep>E8 ?k72\dhFta\B1S {z{j}ݭ)ќ0a)2Våbb|q5㯸g.xs2+'\l79PȾxni]#'\NԕV IDATiA3_~cJUA/6 Z14WGra7<?6? k\3B6K0s22Jl eX…E$0%HY=(q\0̆1.F^ƇU()ia"aEÚk zi%kvG`Qd@̔bڰȺG4y Ej=j4Z6Z8096Cvjj`P 6^_2L/hPX &F_7o_=]7sݞƛ:ؕ:P{$o#~ #>b>e?~>d_n1n'nX=*kssgqViǪylGvG1:nM..DS5[5HeYjy_ Ǫ j?$jLqnb#ZR] PTwڑ@kgiWdkeb;иR?<>(,%"~=51H; x]I3 trWO|y!38`H:d˕ި?n hIjw7&\ڡ#prMh 5}X WXz'1#4$v⟻ab~";Ou![$vmmRaGj}~@wO6elYzy;|מvGƺ~h8(Ͽ1 o$oIԬAK,?oa;5wG1j^^|De 7 =l_r<[i0 Iz\kke#cU޽h%k%2E:Uj(Z-ʚ)YhI'!r2FfYe(wAasZoBQeSl,kUõʨr/_Be_gWۧ_036EԺb]B$~T(ƫzp [I/>}y lQY~psU}ak[߽쯞uIm_Ͽ_H%jdVɭY>q%U lܪ/hʧ+޾/\.zƟHg\܆@F(cVPs &fk̊ 31}*76MŢjJH6ܱ&06nc3ppH"" yS5 Ab $Pfl[nr\LԜ{.Bԩ9";6.UAѼ&tMw9˰Ňt43g-rfG MO)LnQPZjJJ}N!6Y]ƨR{`՝ DfhuSm6v}~ܣ+3B`N S*w$ٞ1b71dr!Nxb Za\h} O7)>EjI[tweHw%G[t"TK_ $1k*tuwh,ac=łCK`tfVH)Xpb,?B꺭h ?U`6-|1:cU-q>E‘/~_;^{ݒm;S 2j~, U-{DzeT: x޶^Xan4p8U, 1mlkaumʄEVXs厇R orDi@U3Z:(\60j4+u\c{T^–>9/n5p}"M7Q:֤ KWtBЬJj#GCZ,tV3.6^ۏt}\rr[3Ѣ xi;qSE$2CJ(mD>C(n@MȌr})m=! 3JBI# 5WE#DeHeOS]uIjY 4P5I6${m^" .jsB 3ɅMi +d"1H ABI JvK-[V&(3 9l\ftnc{^ k/M9vqflwu.6FnGRN_F 7:9L۰ }3l}ٟ6)1AɫßaLD}ܬHq2+ROdr$R1Cpj\Hm{BT5 i5Kp+vJ8 ) bm Kw bR,GC@~?Ph_˙(V_|w8A\cG?~ȧbDH-t9{~i#u%yxXҨ~ u\t,]R{/pe~މcɄ`82HS>YoVb =OGC>ԍ UCQp_׿!QbHCmA E.!Rw|osz4b)f@;GV52 mlclc۶1HSkUyq룰A*|,Y)ƱEIԞ̶Ӳ5e͉L&݌XۮAڬFI6|+LpF}EVJ4Kv'xn;y}y~)J#FPLkEiolیWsR)/(ii]?}>~mׯ_]^}75ѺHTiZfx( Zh`ݝϥZ>eg4p%Q;.[Un?mÕ<5jGiq6>Nj^i':Wv)a`/;XbviFJ %w1!GHGN3'`u5)3k>'BDfaEA2[N;P)rf\|1SҼgFT'Fw'o$=b3oeto_}}n$Սan=YHTʲBo/?vI| >JT[&eEN%LU5,OVjPHTߚxl<1VTMeeuL+CodfWRH΁3yOTjvlY#"cBeD߇⮞\W;q:Mx2􃢣yv,!2y0\G4⭚Jw wF%:W|+ uh;U2LzϘl<ܖ7H'ußq`]ґɸU>o~/*#ͱDT/'On`YŐVwr@VT%1A$>HYǸlOfޣ@XIRpqg$h84#4{)Cٽp )TJ iMs,sM)m-tڇVb97NRaQB*0 .| N}3UW_ ]\X&f5q(tV}SetT !UVD(13VOeddiSxbsZ]dUUߠLо9~xw#)T#LnFtӶq2ޝxz߼~/^_?_|O/e (m҉wO7|ǻ߽s O/2=CrU2XVT2xd5aT\m1k(",;Ҕlaup]ju0hr= Ch}˼]!]#ڧxUDYmŨqVlm |5FOaei<^Yl^n޾R u\ OBK77 mliw7NlLy7)HZ B^"ok=rsl1f9! q@cLe2ϙfeìC3\i*~[*|9s/E_hbIeH&+ D4u|Ph)h [1HrZ?)Jl?C*w$r"gf5 N),%!= P}T4elo 죢 n#2/3/3"9+b[fZf25Sf9';tQn;UraiiiT"sp ~!d{&ma2Ӗ_9͹XL<1Z*"E5k$TN"nW>T Qt)7 NnU-*4[9Vu&kRXi`wvs~ҩ'NT+#E@͵ lV"W|noE+zW? ,cC#jig'v0ڍ=Eolut񡋚Z^-~(3_^?Vn[|uzKċ=RK )a.(yEp g/{DBUL@1 5'ݮ5|Pi$CvgS բ$*"B32˽wWt>p3+7yey`(btQXٸ bUwY]{ZaUuխ5(zY S.M*;% HzTǚ $+3y+ZnPϗho`\E _"}pwW/^O/ۋ?>_fDf%2n~ww"4p>zy闯~/^~O6&p-]SmbS~grVv{rBqvQwc+"i*z?"kJUto8k\0mYF!7r{:xWi VzrʔOR\\Q̐MJ=VG[; ֌cW *Zy""lim'7ƆS?sn鴍9s3ܝn^䀸W#ϻYWB!;g9ssΔ83f슠PD#u>RuIМU>!H8J1Azs5f(7T}݂fUICۉ9${z گNa .gCTn$HNr@RIdON2&Ş.3.sRqsƜӄrZ8CQ @<Ɛ4b2$Ukr7;m}頟 c&#fZXMs% ̙H ahl#ʵ]4f2YAQjWlyu2+D0SVsRZZY.\%!SU{_f)1ZcpR}2GH,Ncm~,ț8`ޕ&sDv qs1RU:KF.bOm_vyk`㓣+B?[lXS*~$\:KѦ}=$ AU3`uoV+@"QK#5u)oq3Z+Vy϶# P9os5/ϕ7*J'fv&3Ҕ)o fJN%f6LmanmZYs IDATA8Mtw4Zp[ؼ>M.]v>lUG OsKjjLʹCYuI*-ߏVzf0+Au~ւH,|{1@og_?˯~wc~ vŲ'Li_7\Fk42j">Ӫ:H#CIeQǰVzsNw4"eb#:.fFEfIpd8f,pw>oARi2S0$ VwBHTCJP=9S/sB=!2(Oaj$]Rj.H3A;ͻTYh2!A_-$Ȼ-4]޸yh[o_Jho `s>)&"lQ+?5KEµ!2V4~]{*Qb0A"eFKe@1+@9VAQq}.CҲM)32Ϫ=u;@M 2~6:fݧ=wPRTӶv+@P-/4kcw*Di  2.AWS/Qhޕ]\ݡ %4Z~X{kre>P]7iYKoS*sx DJA9A?;ή1]fܟ^~|w:ƫ߿}cDiXo4|śW{g?,x͗?OO~ݛ;i|G7sW.X7V_cV@:Iu9b-b1M@ImlbFÝwR=ްVԧԓR'g珀ڲ]&V5ԝNpn7nN܆Λݟ˶=;Nd "BLkzDEV~feSse&9Fތ!i6? D]Q0ҋr 63u\Q7J)3sDd0sO0hf>`fif7GP4ib]nn2A3# th,ʺoNѴmjzaI`O fXgee,yXv~,+=H3}1TTm;JMffΙb5kk>R̙p:\ e"`C&CdflsdlFOf0[JJiz3wDBfP6FxRŦʫn:7[+\8+#*k[@+gZ]&_ ӕiynr|k}+ tlY":-{VRC|ћHruM{3tyϟ؝E1w֡y8G_v}!+[ ӬO6.Ŷ/~~kH<<޼|8oN˻i=iЗo~~?GwNq"EƇTa5Ff[ׁq TJrq~9TvH@i֘i5U*= ёg*-ڑxUhy<Qڢ E7}~8 7 # XP$"8즫LSR]Y"6N^!{HF \ǐ$4-|{cNy9X} a* G/ K`Zzs.9#(~CB$,IcfrfuЃ:n\ݽ+&L2"LH) Luء0s6fN҆QiSl6sr wEa,GÜR @fG ţ$ e],]G$M9qw%"[RuvcU$瞳2@>S4Nkap.3s#OINe)xFH䕩[ !7.ti23@J`&ݮN*m||H|6U)5lsL#ALr ?Y 5QŇOBknԺV^wO1<ѪK_;{^ ss9"EQu. `JPhXft-:$(veG{0!f e2䀕[}=W'`= {f3hb\5B68JYKsL6zXm_0\/T.iMȵkƿQڃ`WIbop}"3Z x偟NP %>e4l7 sxI xn vD"UNT5i߻b(>b=K.m&z:3={փϠAGɨ#bΙʲ$kNQOV$҆K kV8(\XA+wJvՁ1du~ d!Ez_pQbE.]=}C>N]Ӷmd/?<3//^|FpÃ?{y~/?~o׿><}R*sqV'q9,.n:<AUDI==.O_߇vzfrBkRq?5eÌ~gyiws~)ލj>Z&!a]&&9JJuz]]+W4RP@]w~ ?D,%taf1%EL#% ɘT831Jh+ҁK"p5}2W"%)+X( yfkيIGj898% GJA`\]ڸF*E`3V0RDj2!Qw{FQ:ў訳tf&kq"%Ko%IMГQ-6+Jf2+Qkkdo*$UAKǧnm3OYϗ^a;1'wgW_xÜ{lW}xۇǯ>>N%UuZ㡪љ8Xt@s z-T.Tt8/?[L|z6wo~/?:.}cTI+P7M.XxUW $jgp7>*I9ssNn=Ѣ BEc!^iA3t 7]υW &k `%Lw'셿~7/qn־k٪j{4Y lk|cgf~w(+i `!+,0Q[m![s/9[C2e7h`Xm%`VIdJV\ q aޞ7+'5hJm_07?I4W1KKMɲ}#BԀ+pAh*K,cL6*tޝmr!q>st\23TFEyOS9c 6'Em02G%W$3.i[Ln^$rJYR,.̵AeVG̈)IX&0$6 L WM~sy1/7Y0x[O3vvP[^k0ݍ0A ۻOgydzhYID5|5[ j?Zk,!;; YYX1  kNz-"+R('<9%mQhI૿7|ЕE6d$8[![s,zl\,QS>Q({^ۗQ?bFMpT0j7aUyS:˼]jasL_Y0(V0kԶ㍄p>ȇaY!xR43VJL7/ Vj1`NPݎђydAi, gs^U=k/"~67TE#钝VBEe7VoT'P#!$yIz L%խ-ɺx0Vqx$U!=KTVÒ:\9?ܕݛ/cݻ{ի|i)端߿;K};#Ӳ o?iNmޯFkz w׹SY5sn~y9Hc"bss=o{w/eglw^"jIEWDn6z񸢕uopKEsJ:?z6A(ّA8۽k('WJQ7j3$E|=.3Ԝ[5-Q3+۰1r(5Pz:l37ejʏ//- (bf(="p23*(7t02cXF7sTo!3O `Ύ'=MgS wg6i/?JNǜ$.MCꍛռD0\VXj/ {\݅Uazr,z8Pl):9@_.il+E+~[df+3]J7RХoO# O,-LؤxlNsнGfzdwlFD6eDRn!N(jXKzDWHdJةD:ʯ\*Bֿ(z S0 Kvʤ»),#S,Q] Of9K>.9m hs/B&H76 dnV_. )vL ȌKRX^!02JQ]TJj:TQ㇘NtO@mV׋QGۯ竟K^˵!T][%DQ7hb`>0Ԭb +_znK U"4yӀB|R }wO߼}m˷}xW_}{LJ߾lv8mzLK"Q}ֵ@%VT]9^rb&XHg[z44=>_?.DB s@-~$87/~p3:1@ ߛ ]5p9JdJToX9]1Iەqd`)ˊ?XֲjWe9Z8Y(+4PE IsPg{=0Z[4ۤ!S@@f93Q՛&`@v jo7 F9g"Ŭ z5\e##W5..Ԣ& p3wDjtc4)>HSb^J.6 7/ksjf(Y,SO-HE)wJrw,{^4f< 5ner3%`gdmpEVTva\h#_` $ UK]MœDx:+g $4ze1[KR[揜4n0@k9O,6c*"c":7ʙ?.V NXPV#*[@XX+#l!>T _,!y_i_[̊3Ҫ ^6!@It=R!@:033H .Qqy7w-V~RT㹶uG@֨F,7f`7K')!=TWD=S(Q>][D]b)'\5NrɵA3" ȣ}nnߘ,9AoˊX=f $ey 66[W~>^ⳇ7_}~x) gItox7oc>̙^ܟ~$C"jHBF} 'Vt+qaH4ZwM -c3Wݿ{J,` J}x\ӓ9g>W/N)ZyU);hs &U=㒪;wH@ƧwE! U0>۵u=D)+x;:IӰ9c>bl9.ZMѵǠ_7?=?35ńt1w=OE^M6ɔB%yeeQE='$he0Cf>S3sݦjU2ys%F&*537'V=b}w%+慠LCfG(Q{a ,巙I9Y֛,QRdM",>Z(K)q@$V; `8|173=g-Yf ɼR3F{2B3(̢<5EZM3N*{2sh0͘Od#$A{ LG)K"s#2%k6ǧyF >UkhP32Yy*⍲0{ jMKLsN%H6w1_&Yj3'rOg3J Ʉ tR3Jw^{ jA`J%ܯ)$'#v5eXr涹| &𘄋 X/ZyDͪS{R'JיFj`I%J$:0K%OfFq-θz<؂q|[Rnyn=z?jE֞M~!Ik+տ7OORs(e ?nk<޼W^EG1}n+e_pe~hp6W|khn+7K_NFe9VsxLz59)O͍XV2Hm۶mΧө%hPYڗD @,wPlyFHhPHeR'2ա DufdY헕^Uɖ"L,oi-sM{ Ҥ8^vNՋz}waOef3G~0s||?||;|}O8y9N/<.4C=P pMxUhY7^ʋ`x6SͯϏOwM%36] pHHa{ÇLoq??_8|_0D ^;{T`xYX40&P#-GsIWd5_=?g=ע7Nuhavr>a}O{<))#T ")nshu2Ï>~vM 4ϻ̘̬1:z%v|Q$l34Sڋ^Mr9@'Kb:fG{G/RʜB]BZPs`=?\2#Yg6N'2W-;j2p-)ƌY6q6/ڻ; WbGDmv:$ ;:HR61-2$w22RTM6f扌 s=bfWCݶ謔S= ׺᪱Al`f0L tG8ǰ̠;pk av*u^u$]q'鵻'C!3BYx=f>K ; )cKۆ̆Pұ4+dMVbLžC%g U tJEPmFOYN65kb-m6(Jh*&VБ25zMA`("W@(9ZP;e]db/&xD⌀OOO~?{|3?ӈwq;wcGVug^WɋU+z4KXONN l [||}__"m7j8" r<ӟn3WqG 2tj u).|Œʰ^>9sk /@]DUii~V\A4}.Xt~S‹bGKuм*@Scs/)ʲ$v 'H#/yϯc^~0b6PB$E8ӽZjjK9ia\s5ƨ qD^v:fD#3fǜ3$eq9g*e5{\ҌsNҕs$qz,ڱ H&"Hj, "{ 6'gР|T AZ pɮfs?ٮ;T9"Aȫ"G&R6jjf5ZUm<']"dNe$:H!ۏ!'*̈́PC$M'UJ_>0SY]`R$FXds7>؈NrCINn K$<~yֵTX݃/@_Qty/T(G89I>~`[q^^Lׅ?Up?Vʛy/w^⤱HcB')Nw_?wa>;">l2lzW9T\#fT7|@șLzBES8ȻgwD GfNw68iJUM *!-[MuC ` fd 'WPDI8e&  (^HU |_M _c/]p1zu\)a`F[P]_yZYoV#{2-eoWle\)}>s1#w?6>{_odlh監"spAy<۸^>o~۫ղn;b7+__<}>?nr2Q!%8og?>]N> i~xBe߷?bQ5Jji\(֋Tq7:YƬYK/=ukL|_92k ;vu ¡ 7͐TǍ)u= NtE(3Z ' GfoN{%)8Θ3МQ,< IWG*ؚr۬M%![6QԪJG!AVzCk9]"J2:L+asmk'Vluz}MES,LMuW5TĄ)Z\.d"IiNIʓ`[fһ"ʨ^1~^ٶʘ9RQ\I03U1pYJG#ٞA򈘡Gubj1Μb_ݻǏww_mݾV}1?_s<&Vi2Դ !h̏y\fDbǧ4:JVc0ջ?'LJObr^Ow~zhAeo&`F}KCC,ݭr_`UYYuE לli[{Y iˏ< Jjvy>g6@ 1Jy5x7tڶ͇SRX<ӥ|i8<=tū,PmnYc,Rҕƈ7]Z<̊Q.-y-XW S";_Up `Y/fA`OS_=zelDe}0R4e&F=l)Y4%0qqtIlUAcM?޼~u7ReyO|y{?_}շ>#~W_moYәwo_~\'|? ~9WBEAuր6yw"N}|Jf{V:yJ#tZ *H|圗M⛯̧obr;_۟&9ʝfë\fcc܌:E,{,WWr0d}zym^Lni]+A[ԃݠ9sjfAʲAɲtg^t$^P {fu߽{C<~7?W|vII#?ofva8XL6Hw8#797c̹n=RdG0 R_GhN(Oضw?rx~'cD%u$"5FP sCfmjBBɮ[A(j)* [hVT0ɍp둙0J0/\:F"Crwlؒgڜia sUw gLtsĪZfFlq VjpQeL(3BQsa$9%ERE-fCP*.WU ۅ*[ZIYJU4UnNq+v"aHrN!` _!r0Gb6ƃmttGCY=O$g.n"4Ȏ !hfJh3dsR1cl@y,u 䚏 v+XsBKGS'ڬW3̬2 (Jk20: z<- Zkؑ2̇ΐN,p {fL$633r gOϽ2Pj4X2s'}D$:d(| wI3XD>h:EiV9ܽp[aQ{0K:25-=~^k:ʫЊS7y|eMxXz3ϟWń`Ąr742ka6W MЭuz㠢[uz^/ L/~h͆__xyDIPh`r雿:ty՗̧oYAҕ22MXD"Eܣ$/[8XPT1,y ddq(f1;>'wWhf88N>>yOt.["I%CWP(6­W@=za\GvfogL6fSTY?4)x,QZ"咺=>lQGB])a̔v{\ΉY&ZQYDVe{T%"9m/#iC=(m7&pAbR.wNxɾxo0܋N]rӫ}_W||yeKdNGbeiHA=7w϶O@vm@N?O9rQuh]mVDRrZ&2ӈ|>97wf^DN7|b..PX{i숸ܠ{;.2a7;j~Q>WPrפּiN]XghhԓWQv 5b΢HQNBi`MUEHN'O/GE6TW~YvAh^&/X$K_ezB93F5@g Q aB*#+#g"(#TU9)]X]G`<*1$tfP9 B^GwV OϻTvHUfnJv㵋Ѡ nZyˌ 8Y9pc >2.1P$G3ji1KM=cfD,5QUQLr+{e)_Pi K4yOrh:adZ|"iÐI>@;G' ߼0jYĜBHτ4N2<="X r)yƤܶ۬e^-4Ľ(Wb86ޟɈOݯE$`HLR9i5/Ryr~x: |8_?t4gJ1@[~Ĉ}tw6N:gy?4ǿ~w?(ƵӬ]&&)H^R]*04>,;F/,Q!V^d̛O}8ˌz OۆzYY`;rHDB(4AyӝF? F"d^L=2y ĩ=71SȮVUx(@婖)YFZ^Dݦgff(RwUҲg^I]~,lBЬΎ(>-Pš|@4bݎ;:؉aeflLt܆\'o'cɀБ#13tH"+>}hOal{fx뚱PflQC;dj3tP͆_x]3Vv.gIC,Զ>*bN>ܬ&(ףlXI19b6<2?<s#:r}+σHw 9pS2UaT3U>#-^%Uc۔1eUJ<2ghLy*J gY Zx|V¿숇\ƾc޶(h[k ؎\%-T_tEpo5H!܌,uCPMnK1gAr OcܟOfvO{f<ε?Tf$N> tt>CPq.^:}Έh/3Zr!fF؍6s( .dr:rb'\S̵-JXyu+[݁ٻIգ).b @b@Fp{y^o "J.cemTِ8Œn[ LW/}d 6ˤ\3pg,1d64T=h!Pce5d~սrWg fd2g]p Daai8lLL)lÉ"/S#!4Dʨa0OHL)(Ԭqqʹ[7S=X uïU)?'Ϊ3ܹLNG(`1#oۼ~LHL(z;F[|;vB\bz6*bVߋj~dx֓mXt\)_k9`77;sNJ`7IvDCEG=b2i"DfiVb= 9w߶9gySrRΌ(|:UE.ˆ2 US 7ؓvIR7THSNR/cGFDOv:eq|ALwTCY` ܱj7vY FsLQ-g=IB2_|z/K&]DSxllip1U}3w~5Rb(q{f1ISUu(&ã2`3k"" ^qD939#ms""S.:#KZ^<ۖjv}[CIJ)cQ6U~.4eV1aHrJLT<>Cinerr$@ѐHu wTځߝ7LdyGPWF`e<Pu/̍6Lt6ΆMwD.ۿ g M\dn6En0Ongޟe`(#t ,Xܦ AfuqL Tډw'aw#s"4f2# {.BA d1 ٨s07Gou,׉icXnlZj[ܿ,Wmv-iztr BWΙ7N|ާq+ W%8Ͽ9?~m91J c`:}#yOǵx:hYJ"ՙ-}#HHs8+_yPXVA90 &94's3#Q $7/!]:)s_g-  A%%Jsx51u5,CDuZ z}z\(#a6V:sG̜z16$iQ%`J} rXH&6=n!*1_@ 4Z#Y*"K0zQK g5fK#?ڼRY{vmLY^FBGL8 y( tgo?z{irtww>?}{z}wz7:#^OK|?Cpq̨yST.i0!0̀xx'??~5qR]`Y1 9en : P {W#>OdN3 RQ/gJSL{ݴ|mT%'fIc ԭt,c˛jb֍oDMFSF9̔t7x:W拶AtL>"QT6AʫtWNcܺ美nyY"l㘔H!QJN”#'}滛4";.{Z4)cW^ΠUZn5ֲ4/1%=I-JjZ\ [`ق*șJ3a^#؂T!v<̣tcY;$NÝNnƻx8^ߏm=~@wCM`tczY1X J9rfR%̜3g~O~qI,+=S0ρӄueU? ¬}b7w.*l3zAq 5{NJa.R{W%E{>+ff(`)7J CRI(2DG7썂`O]~/[]zJ.+)HH3nγypjNh306H86ܟpƊtOtzmC! 33swbS :S)ylC9[ %IQ+ -Yg3몲Gdh`#Zpkͨ8,VNҙ#\\_7+x&8,MҘFTv63j~3 ׆YP#_h:.A-H3>2i]t;߭ĝHs\O)5$JiV*Ú (r8#5hM݆b,8i_g_|f,!bC6V4CZZ6p_A&ĀAxڟ۶3 1>f5<ewt&[DIjvR}gϧ1 _.K[g!t4wGZsywYZ=:k2;CI帯"0ں&2z[ZVvO{A/F ;UwF^rėg<ѧo |w'^=6v:a3q>m3>ƠTgJ"ɦ iJZ{x)3^T2+S*= ]yVnFf!,t X 9'=r#l~}ײm(F✓nO3pz2-ԉV7.W{PKV.;h?w]UYr7Vk̐af'pBXmȤ|s=ļKIU4 IDATZxEVc唳N4hM'jH3d"!# ;BHRq4X*Ֆ*C獭hӛZ:n07 j}1Cʸڜ{3uB)2S׌͹9iN֝1bB*)ef&MtNÌ13-TZU$Y넊4m)H'P" af&R8 U,,GϷEZc$*Nʽ[Of,V g |,Jtw,r(G6*y3f90aC3c|>15m>mƑQ ڼe0GTvfY$IGT]#'(U12m,]x6b&֬!ٽuf/ TmY!^]`L&τW?[ы*:ևiP`Gm")L`#ʟ%87/R;ݕclssh9ÌߦVz9'f\*j;gRup Ԍ.pIۜi(1a^e0-nG,{02ᕣ@wVG(ZҝyL͙M7:32h-+v)֨껭F?%Q$XR9+ g[Lʄs;]Glr'=G2d!ͶH)c ̉}.U7J=*HmUspᢏr08)fK?o:Ct RGY'GE=@RʣiI V4l?$3Y#J܏hfU 5 |5R,e0 2&("}7*64YEGL]~@[vZ㫚s9>Ήm)yI$.oHx$  !"(Ȓ.c\^kY{QsGq=]{UU.dH.ɕIK%4 iK1GF"!ʒ<..KDi :,%#|QY>W톄t"FJ qIWa~\ r2ʮ\75`;쒭V zg`[6g{4~ ݙ5äSǂOwnk]ϲ)dƝ8wfAH?m~S[N}pxd=ߖ8Lg4;.zu{v ܧ|ӄu Sd`h# ̜@Vʈhz ݜZ D 2(5r 03 tPVFZ)ğg[ǁ?1vTi_7/'>. `wgͅ< qH1g؞H8l4rE\'" cEVJD1ײ]D8Zp)3(gΩ;1}ٍTyu㭅Ψ +Upqtvm;]QV))k]]MQȈXs"VpsО o:3*X4r@*oQ}?v&,{WؕiHȶ}bF ֨ t[o!QR{rx{G1BvroWR7J,!Y$XC٩#۬nX]Z1ZRWXq[Z+)jE30r(v=v(lꠑ3W,%`B*`> PͲm[dU(Mf;%FJyhfyaX&e #dEawn\nJ7D?,mi(*uĬ2!x.A|;QcADH)wX"RStS:sC.+u12F<9:"3}y-K d朊K+'__+ؿ\hv,5؞:`S[A7U"$tpb]+YwjF=oKfv[}73ӌF 9epRFa< PڏB u=<3ҹz Q2D)ߞ?\D?w|n>"#Uia./FKac#,\{f> $=>{?kj˧VI{իXK167E7JIh 3/,mm"f{ڔn6z]`G]l`߇iAQח>n%.\9JlA~Br\msZuTN u7TfGӔ`> w)cx}}5;9M1WcVD@XȌzoWs3q:|d"L-EEv,0Dm(us UyY : ZQ{|aɴ"F̘̎g~K0Ei7hw_{_\\~|:#s۠\b't7K{-k7ƌvK2 8,#y _s*adH3eڦ{J/5FFOL|y}]ZÕyar}r˚38قit> _7{3duFpY/#GVK 5z__uDVh-Ǩ2H+(MJԪТn$P]Wd -,Ncy+} +r72vP`$ aOI:YtUX!-#َn ss*jQνVi0 u2ﹷ}Ѐtߵ}#еY*R0КUU ՃIYJ7C[uj1Z)j0vZt3,`HF||Oސi޷o9G[tFč>ȅ4"@&=#B zQj!5e33S*K~W_A䰽Ś:'"`#wϺ*hOy EThS h/y{}c!nьTE!5I||]SwAZ\4w.IK%"R*=x8g}+K:!dɐwf+R@"K #"(pEB@ĔGu|}}}\.%3| t= M' |Det)0 ͛{x֠Th흔ʞynP<6'ӹ&iGa=,R?o?__|_8xOH:B~jŁy9.j&"~M:`W&!+r=n3ah"+ʕ5$,7D[B~/;8Bsu?|.`ͧۊڎͬwOMwWHy Zg{~׿a#w9{#KTGlzs0:atCSE1J3I5sA6RNIynr Ɋ*6E䄈E)rfU) J`DŻFŧ姆R[@jp TC)] ة68$ťJRllUlx4) 6D4JGolSvdPsffʲۃ:STȊeDdFpdiFe4.v#4%Hd A=r/xxz◃aGn=Xf( hHP@2MpNbRݨt 8\<0e&FÌ8 0ӖRWpOS1ЗD`e/؂RhDqg "9f +5wf" s>~aQg97gǦ Zh~,N-)6sM'DuJߕt>ؘdl}Djl@|>c#5?Q5`!oWS7d@܍p_M|oZy4SsW{&WUC`0ꚬ" ȷBYևxB smǻ m<ysrWY_`ken!7wO|񋯿$6sr}%ٰ0uk/#Dg.3F; IDATSSY+KZМ:Wu Cr̬t*ݘf%bZor3@%-sSJ+p"6bAk'.u,Ϸ:YLyIƒdmW4^VM(~Lx,}2 a'[;y?@[oxR ^D##εL3:1 k@Gxb4-hJ00laS*j!K$nrePtivAQ2AzPPn?i@mP[r=B {)Tm`d(. ƞw̠+lm3T!2yHUr`G+JHK. fdc]̨{g<+6 Ը@&BQs(VEVYZPn,MK1@gfjNJu M,d8zX$BZU.D~m+뭍hQզEMI*Zso tɚQcBcb .ȰLdF%s]JnhߒAw/ERquU"RKXF:Ϡ0sDO-aseҊQ,9)i9˼B4kqB3b.ԑͺI;)K3d`iS!EOXv-O_5v)`W%a^;-q7 y¼ȫji2h_a+? _=eW/ZIQϷZ _>O#OXw(Qr`<HNHAߚx0bI@ 5 U2c'HW E,|jP0Is9UA+A1l g6ol]$9 $0@}%U܃A$ N#5C?{F`hĉ C0*f67Č0G"1E%\ks|{9f"wfǰ̒ "*E15}1I$'!i%Eg珟>g|1zsퟒzVУkm16o5sێ E ltmnV}4j^*0@ ՘wDtkidTL5&o}g+A9M ,fCc\_bMebX@۞8U1[ty7G~1T3 gtUQ>F^*͊ᘩyεVi3w%Zc1O9i^XѠX u(H=`EgvjA'HPCDkձ쒝c "?H&<~Lo{NUG8t_֨~P*,ݟL3᣺$S>KqyE\oF] `$a8Hci#KvT>OJrϬb-0;(ΝH$:˾v,)t#軯jo KZ3дezP@bCإ6{.Y@MA㓚JfӴHv[+Z/eFz U l5 -LfM8SA1 6A31*1{̆Ό)A T`fZ*4ن&+> @*QN #zGa$C+YlfT8Vg$q1yKWػ&^7@xP٧bn8 Y(lv% Ӂ35>qtʜç㺘S|a;GtS?seR՜TIChV3jI5f[jЙ F8,@Φj>̋lSy9AU'QauTMiù]Je(Un>̢(In,:k.gJي~<](PuF쥪Bp?}~u ytWFCkA]UīQ6XFI,"ݬXyr8 .Gm ky&VMkqIy #"$||2 ֊\o f w=&i%9IqH8T"TƠ̋+k>l?_g?G?0n#[+Dې$˰n a=zq ψz4K_ZJ޸,\XкeZH8Rh"3X+*.m!sF¤~{_ۏY6J8NB+/8j8}/_hZ-RI̽utR3<8H2K"deEr{ ɱ_Yp䮤 y Jnq.+!/8g rHV?n,'-Q=Zq{ThO?hc邏]Su]uޖ-MwIPdfN:^F*f̗ҋlRD4}q(Pku!o3@r)ɊS#GKu G(陼p3ZnC)wg߻ {yL| @o,e4֔)'`:oP[jǨMy/T+%V V0DڶJ`-}pݱ7{_[Q"&iiO:2֞z60,/T@M@uSyМ a&3>jE]%ɒ *Y]A4uu3hL:!"BY n#3#l9DYf;<4 _[jv\atCqFp%a tԶ0K\[-4?d,g;E\O3C&D᪤TK0s 6k|%~οEٿ6>Zo_|g 'ԧs8C(/E .Wr?etNyn(ViP믩Sr5Bfc9l}O$-mi2&d}QV1}p~ĸ_u>۽b'{ ƕ A=pRbow}ZAu!*|jwjW-aoOo8ࡹ` 'CPeDZFM3I+IMK0jI5Wd3>DuN-M_-lqһ灵 `RECb}5&*) 1%`֊)K1L5ME""hAG]j;faǰ"L̈U\`XJ F^Y}컣VJnwy3,2eܘa;{k2N(/uPZWc=ڌ as}(͐mnPwp- ?20ݜ3o^gۦ K"5OޓNW>,nJ0$V{csN^y3Ux ́W]sUau"w RYv:l5h4C"KVRX":rEcHqM9c~Q5wEz*?6!!/21>QcʈyjJKѹ$E˳(kM0f m,q]U魹aY{S9ێFm,rb(>6!I9KR~ \\z}u atI+Q]O{E;̕O>﷕B!|0OMHv>s~q_ײD$ֺ ;U~٘yةd`U[XՖ dFΌw& ک_ LFhɒ$.#E1WwuCbxHF6WζU -e:T{Myj[$\d7c]Ӿs-mW[AmwBm==~&#/?5ZJGːt0w·妠n8FN/s^>!@dou$Tx}3iynl%JP۴;T1_z<̶^Cŭ4[jr -L*G`@28F7SHq%TOMs,RQ6}+k֥$,sU)SHu(+R\PW*@3Wf埥=Sx kp4ϗ!!P ,TF;!}~dO W8h<xo-|l{k,(U;2^Ջ56yp8mcQܟ_L׏Srk̲u6K* `1~~%\,^_ltƫ$Pe֛)ԕ4-BF{EsVrW-1L *^) 6][n?pD_EbRV*jܿ?1Sk;)@+2ÙjE Сr5zh9k٦]Y53YmeyXGKR\ H]NH4 |WϏ50`*/t;pw!2|p^>bn"C_Ƿ/Ymx7Ԫԣ%:z!kLÑWHD;7yhu|-1C @Նk5x|RP=.B*51Z)ft vU=|*U@ ,r`rq+qjBT`ѣdlH(E``%HE/KGM'CwCIy:Q*c,QRfTNPC@SfC K#p rﱦׂFC Dbaq <wlC/!qHIS}u=Iq#(CXGL܄"JA-xK-){I:lUs)X&aa%ɒ!D^sfr;%mpnO*+3vĊ0 ܯ-WBl?.q]!ɾĭ{JoU"U2[:xm\Al}1"al2HZ"d~1+삀¡j3[%)Y TM-s/}i*ՈAFY̵]kEDD~P;'o}G$ cU1iVaMd(܎e}JZ8%5t3nZDFhDo{DUHؘʁXZ`3̫: Zjki؏U 1Q2)>WFUW7;31SSRuT5ڣ2Y 2NPX[|m۸I%aǔ QjTqzL z_?/?yZ* 9- Ε̩N̜sWx_ˬlٵ9Pznt'cS2e`3~{ǰrp(fבX~J`RR3cmP3֚)_df5LV0LKU5J=!>Oߨ+{:Һ1U,J{k|Bǯ^vnTeO%*"1Ч#S@$ 죞f#4(*eyAɥhZ.3Gz(ۚ.lJ2Y.*} +Azk&,UGyգ#C](6FKț@]Rat+.B3Z2& 3YjȈg$y+-Q,YEsYyүe3BR;E-sy24ِV$ɥtSuqwZ)3Tidzhݖ'Vݐn7I%nj',8S瞛G`33 <٨+SNDw76`Za&NjILj\.bJ{S*f)fRl6zÀL3, 7 Hc3n3K{+nc8 䕞'wKY{鿷R*pfkz+a牒ߡpHcOweZv4T*=Eq= \LJFB1}I̟~ES?v3m@-_3A8?t57rjpMjhQvJ1c[F dD0մrA6O{C=PІ;۬2@eZE  ]pVqJ_?4XIqs&I^2Fh|?Gf81>}7QvΔ%xs`0+pߚR)W 1okSI8JuQz"O4u^vl5 7 W5P_\n Z12jMr*B&XUʎͼT43!t,#6m|}?Pޏnחo9)_HG`]IL ֜g#Jㄻc+j[Y3Np&Z /G03.}Xg`x9x͉n)\> (w/o3lp(>lp6y~P6?o7G.8QRT#Q5Re޸%ClVG7ֳ.YgYY[򩇯gs]o$B:$p^'&w_;zC"k܆p4Sc"bEm7=1SY$ :lbϬԬ&k`(c5m\K>..jqҞ!%ą( 7l0VFֺזĊu"H΂oa2hCUZ^n KQ^si ]85JEĚsΙJ" 1MVdIF"ae,5k)V6)lbkar3{.@}׶Fm\ѻjnl\m;k͢4!LUfd.wogkr7)jLڗM?4kIjCq8 AC`Kx1Elqts,Z7CbJ Q$W[d/Cvx"/:f*͌z6k;vUG "J]f^Of_ڬ&h17x<:4WMjrRF\yKú>o짯A'ʄ?_G>edwYdk(L|gP3G[`R2\֩_B eqET7 (WԞXFѩ,.;D %f:JN+qemy护ѲoF @|[32:?jE} _{N+s Df;U!Z,rԏ13+T‡w[eEͼ2t,2(Yo3(Ef8tSWޛښL‹ذᕚuV9gM<֙ &ɟ!"Ȕ^e/w3)OQ/IAs 7xE"{.3Wȍˍ>|0 Xco{=z,=RsQ㈜!]1XJ ̵?I[ QNeatZLӆael\G>Sq2>)[6$cO~{mKJoUfq܆%1 q ~~cMFKL~u||D p9o}~d^oؔڂK(2#-'НU46ZhYwlX(mo GEJW+,g]Ļ~MߝwK'YR{e( \RTZ؉Xbpbf Y䍀̆mnf%RH  /t&u&6` N+ˑ ݙW.nSŒ7S`Ɓq;v@kdgh*f␹ FD"4W敮`&a2r& ,5K%uIYRlntD Pr`,,-33Χђ p26+g0%AvDwނ ;@H^״eiR9>~"!ìd;TK Opwww}<;9FNͱ)7e FGnf^Z. mUS.bc>sI_dfhF{,}RTڧ{Ȏ) f/PY9VBL=> ^]+YP2"No9T~4؋Q13?EEڈ cN(8g@r)X 0[:ǶHR-ss_nfv3׷g䷯n+6;R?__?J!"_߽~;O_:0gX7߽}e UxyJݙ6db-ZheU4^GVԀ2)yö%~ ^OMs,z ɫf;h9 qUnJ v f2>9˫%jUA!U/4]I+E` + 0+lmU9?J34Nb|j ]mӶVKhϐjV`]_XR :=8zwُ 7nr@ir0(D Ҩ s \R'nG@Ȝb&#ePR $!Q@wH3F83"Wىh 9EU'fT!C慦hM&D\+b&ׅ63,jw݀Ra~{O 758ǰqt<>*pD,(l].mŴڭ?2*+l6aZmqaV3ʌ.뀙8snH 0ϚA/dG%<[ͦ,2wˡ&0sۙB)UO:7x;ff^:W+OFka@F VAa4@aã>gm=V940nQ y'U.,Q8Cs^/}&p}"q z1 7?"29yϏ__u!3UNpBLExÊ )3&"e辏@@P{Uin-efO4Wᱠ1C㰌$y;|Et@gxaD`I276 չ(L B,s>Nڵ8?};15k(67; `MtY3W%ae#pKp\H(ae`ARY^b(:P 7G`un/|na62^JjJI+Q6#9-9)c~dI\AIkXb̤8|d6 Ln&2 X33q~Df3oƲ'lCD(˚dE#eaCP*@]iACjjv+7JYS x_^~~;g݀AL̘nùǗ/闟eEd~}y?>0!I}Y>WbgN3ً@^Pv ᱵhn-?A*ݽOS%~JT6$ XJ6H_p3ӪJPJefÆ4W.,U#_DV7\:ݍ-kZȃlTH~¥aN~sE7e@Y"Z8Natu0.U@>)=4ʼ$$8L`.!pSW|/zB0?〖c;3<أqӌRჰЀ%]<ۅ`6ޭ:\qv{D_šF/(vЧ0\6ÌG9UL3nLʲUt=C-Mzil״[LAjf"He+uwlpRL?T%C+M>|Pb",ƤА}Ú(E54u $ωsX+:p%wo}9VgD7@NbNjAxɀ*Fn+ΖYvNohtjBtmEUKm%^(թ"tEvW@ֱ'N~EyWVžѿH??4R3Q IDATć׵2QD2c \E#cI0VDWYφ%?+E˴匢[~mXH2E=#*Uځ,3\ I瘩uwf4U 3"'#&0Ze$%3NXyr]߇R㨭xnThJ $65u߼ߥ.(TQ'v8 ^)MpJGBhRmvF$b% #(VI|RD3~KmBFt2Wanدv0e Z>" D*j%qJ%}aW'eV+P|nva]+D:#F":m=̍s^fgJsX͒61P;S+*Rd FUakEUD/VO ";kǐ#Εr˷o/_yU~^_^[nd2g%~OO{|e33|:F̥X)k=_? Րܤk\W4O{86fp]Km'pvuл} Ous:2upjT.m)_F߼W=U_:*Qu) !ÃI@ pixfH٢9MIߚK@‹RZ2HWBBBŌ,i 56$\=5+f+Da重;l,]WZ@u=Z x D/~i!Defv\)2IQ "@+2P ]'O*4G.ؠǶ:. ̇l1JG :>Yw/=}ߋL\?_\+egFDΔRΨw rHk>sS3ֹvwI0T($fƄNxh{_l +g[~C$;?1jyj-eVFU\rX [)"KIq)nE(`?AJ6_>'TpH32 Vv5kbU*{^FҰM02*/`62@P.hn'&AhingLmj21mbU/dTdD E -",e@L K"$i0zEҜ^ *>m-=4an8+9geIe4a2"'919qڊ\F/3X);kᒱB`(33kcTJS  yª.ul=BRsfbBC`w׾}LUENzS ݧ^2eWPVVAð%],eXȢ*F^s.DUMDeN-BEJZ2q݆dTދǰRk5gv3IŪ J\ ͏Geqm ؀[*e^%bI5dC#==G e'&Χ4fU iL.ꀑ8zwXv0Mœ'F0VCY A?Rv44nFXDFԐb@0lrcZX2kIUofBiHd:p: *}+@&TD6GuCE8ZEDъ(p cvG[p44A̕uoЊcR#}5.h}gŢv"BY45A{mW{(Q[l_zvURwTGJzB5U[ou3^ݺAI߼l&t絺]Wjgk)*S@꠫f~ߡz fw_w?:+9jJp,KO3+jaH*N&q©w>Ҕ\UENoC<#})QvG)dpw<L ^qVUgFDx~ ktW 1'J Xm)2//a#ZByCm7 308L3B;$ 9ATJY~R: g޼7p(rZEi$ZwSDDpP=z 5Q ͧ3/ %cdFsEYY0OULJغ\ەBDb ǜǸޤf>^nC8VN4qFԚ(Z5F\cVKOp3HB3݆3$4%R^XMt@CDu{zPn _x?>cwWq.7<~~;_o߿ϿXJ݇2o7[8ci沏~YΫ%ó\3VNmF>aG4tT=#?eٰ%\g,9s< D[Vn>>+*b[Հ%6`Ϊցa>_7 8.rAAmx.YF f,dҍZT=u fG'YEXh9;O0f`{iʆ?|?>:Kx<0{AdREh*eLn\u$7IsκJeRgG r噂Ytcʹ!u?#~ܾs:i?~̵/_^ǜ~o'=x8?q/΅teғQ#c]R>hm:ktST|7&̍S[?:h_ ;@: a?s * 6yK$ z;Q|퓜Rӯ>w(3X zӊ(tY7 ,S΂"Zu^!!}݆e oc(fZF[7'@Erv#xB]fe.&-  -rypǨ.]a3݄~0٢Ǫ,ZUFpn@Q$iX׆ (,-2eXNMܫ'2TCbV-^˻0*vLyoUF@^R#Vm qtĐX WQlLeeSx(r%BLaǮ;"WM2DB,Be]" ԡuڼ˪^ 0Q%!*+z.(.Iv vmʏ+b?S n|ځ]zdb~Nj1"34;o7g>1I$5e}\,}s{8(w/~z?jل~BLooCwBYF?Y\w 1':(ctU+̭_Z_HO22Ls248|T`헎ҳF@"8pRSY2s)^(ѽw<^ ڛ$SZ+15,'|,ULԇGY SD78.9(,VMq+zkpC(S2 a219 TN3@*TLL`GSKl#2HtB,S$, ̆SS%4l 3S}DD7dD\JөJ Jٌv03-sޏs U I5-JZ9c )<P|]VP2H٨iʦX$YVGN P|pxu~a__  p`F1> D|r;b}4^1mFr2x#{_'R6nW5R@yIlݰ^6qs<ԇPG])[~YOG7hƓ~Vܭ4D'i$N@hh4}՟u,˘<ՇbOrDh[OE Ksc t?H;hqDžFKa%qY-^7xh$7;hIZ$J zB8#؉y-٦s^]cMZfngb .~y0F5@+uSQD2$Cnh=B~ڮ&UYf?V2ilԫ?\Rxf>,$ҜhR r 4džI@!\`^egbD_(RLEHt }Vx,&r`wFt*+ .z"η{y{fhԞB7ZN%oqc5u\i)إz&õҪy'tHXs0uɈeSC~ˋ| Q] T+e_?Y\A~}Bړ'<Ưw|vп_]nm ݎy~H1 EAQΖ> D8Q1CkTwېffpzU57rԓ3G}R,s-pa,kV}5nfQ\6" cDƜ6+U._*C=сDfj1Va\U*b8 %֦1Y>0n UnbeoY^&Jax aԒ+ܻHY!,#ODD!abИQE/8/[VLcQ>nnS0D5vnNE&Q$eno28cFD$YJ4`-Xv_ Y3>"y/9ȳxӥPp%fDZ"me'HV(}D[={޶.n Rx=w{U1^n}1i2Vf?~|Ɗh9x"r}~G?|ׯ//|"H맿~߼qW}PۂIpeSBչl?V6΀\;4PBO#F."#8줋\ܩ51]O סO~ގ`bfZ|6;!+n?` KP-ѡb:KAn*Ee(IVajLhz/fC&ڲrxQXuʴJ1 %M'|xՌ~c n(56=QkKR] [SaVxaq;Htܭ\ɝV~ SZlhhL>tÔF֙ѮrIh&9` 2VF*L 45( K1/%IQwm0./TNdDDH k3UE?imfb$LlqՒҮR1;kUjSCSnښlݹwMWӝ}^3N#t׻_~ve.b ϊq_՘w)՚tMEVUD']5,w = d W3 Qr5f{jdO28ˆڬ,WO' z]nϟ~w7K TVVg=ס;2[Ԑj72dEqQY_cOu46$ưDTAe嶑t'B71ʮ XNo}.U pieG6(;? PZso?}$fz_@G@%2QCCFET9rwsb0yaW *:s7O-e6X59}jA'ʊ_PqsHˡ@u[3=#GU10#21ƀ2/yK+Ǭ]n<$8z8%V_e'3f^װ(3Q0{{Y>]w?VfrU%YN݁`QZz۶%;hsν「 4#$ t蘶>UСah qv aW޻'3Z3bЈk[58p Rw5(m2\>EhU5, R!6<^3 Q>,PóE]5JY4SjXy A8z9;2Gf%K:xY3[$e#ud$dTw)2a.,z$5GmEi vFaiOO‘aU vBojSW;;J&# Cl9Zь݄ V{t↙Gʌ0Qw=( uI]7׷|?/!$yfnJJ-![n?-)Q <" n[j(w,O!Qf4+kW4*E BH@XirhZ)Ya6QGHiVΔ*eNnL]#YJoF+R5A>2ysn&J1v;=jAbj51zڔ3g5i9l}2)&Hg>nWN9a>0/"J#4;3&mTV[t(m%89x{{35S}>=_~*cP I+y%\~z].5jԌkl؎_o2Wקg҇;߶')R3BUEE (NkX=4'utVZR[f9 s7s|!VOW"V EYܝ)R >WwN͙1!u6f!i[-I}a@֢)K8V"(Xǵ v?!P`S2iNGI|3:?<jbq nrw3`kɥXkcߤ, d@kͲci-Z(&R[6@WxTNBYzd7=ݖz I-WUQL'^$dUv-j9 &:P5L˸JN2x-[L&AW ʢdYr* mmCDHTYЊy`"Q> ̐Y4-=J*^;Gb!*90}3c׹+mߺ++mbϯYjwW3kt_SXu Mۚ r9aYE.*>”Z+8FJVuٱ"s5V?hJc)ױa.&S8u)'>zwܫłUJKoZ&7{"8Con5ؓe9TEcI#&q4A\KpnSXe2h=fUۻ7Q2S׌#>)ʦA֔jH,S'cSDr#i=2/a㘊9vL1Iɤb7ܳTdUvښ@+V V|Q+dg"nøG(`3P&PXC_6UKl+#Ө- #D! uBt_6"s"۫nz(7XJnrGFWT M(Sq\Ƕ٘3jZefe9F#UĆ1S#9)Nw?jIm8MׇGHqD8nj1IgB6,@}_o3ZɎ\6Ԁ bPfffu,SBȌH3t ǬC]OG۾?Oן_cj.?=_OO=UEmn?o~oi??ܯ׋˕Ͽ([+,.V).w<"TM/[5S3i^8L~w8qjYt&E.&@u\Fg_zӲJ.]d9 DbTiT8G, (\p*K8-b>Wwc!5: 4SU:oWL߻rL?<)0Y:Id5LF1똠Le[!5DMi\3u.w0/&90uoSحzJS8oV_!UgW-7(•VZ1DQoJԨx$JzL73v[-'E>]n1m9n)׋z ) 'x| ?9 sR9礬\"g:ݸuҀL7,ˈ"sIzTY#J4djk 6u_O}8vooytm~z5`7)iwÏo+9|H{{K~?ʔ乣?b?q^Z~U^ᮬ`K. t1RiUfdh\FR7ԘxјͬPqf U`kz@[P->N\He]s|8 4Zldes{߈VUoY0*'K~ SE,+(%?ʯ*]}]$@E̞V Sv:`.,bs'`";t#  |̲Fe>vCk i XʀLvή=*ƕkU#SS̲"5"]G/E8ϔCz0= 6w:B6G* avD,U 0yʏ8).fK_I*0=֘ԵXt²Նo]IaH*TcDY՞Y00'|NáΙX)뙙]]{5fhS5-U .D.ďlհ*IUΙ#v^ƵrtRb}!66o WgҮ!E'ں,.ƬCȊ\f¼蹴-Y0?"xx=総8<ƞ=ޤ<@%ضG#"!R]]I9e*$$&*'zl56GItY*"Mssl(%۶՚ U*J+C)hq43|T혠Ǣ )EpD$n<f&+6VKL%R3XR<$2.O;Izֹ\A LP[(SQ189i nnDΖ/V,BZ{M>*&-OnHv-(y{WY5gNR9f`0Oh9 WuQ<6KSsE5bKnt3KT/6@Q,1CamLb:]5δ#& "+񰙇%jc&2fNo RRFDi6lIaL "brcǪZEU\/csڠ\1Hdg7CitǶ^Fd|t_?t1-+0f=]|\/y}}{7grlׯo/fgV5E8 8Z XW7TZ?}6ėҬ*z.dcxobwPnFY^,g$qNSk6}@էv//X V`D|dBR.?ńd]~~XeSBcVS+7͗IeJR@WBiEzysMy{Y>䫧,V&T&"թۃϗI\3 фvhάX܏bU ]FMF i^Lr+24Xo ]8@BDʹ+f@Y 13' rLgxyK!Fbj7bb,J\CZ+vSOi`,׋Zo^T鿁fCu6\n!Kϻ޺+_B*cQt\ kԚ54BEHkB8ж1!"f`t% 5ZjܶNZ;\bS @Y[asNnōY>=mJp8qCү%;I(um،Ga4u '`GaUaA͵En.,/=JP5ɴx m(kԦQI(4OY/Q~36[~ݭܩ(ĸʃֺDL3sGiaYQsOrVbQJr`s)C邐l9Um\U0cJq 1sGEfL7c3is3`fǑcKNh:NfȈ(:eؙgwr?"676fq\Pm3ӺXf Oq6)"BZrsզ8|݆i1u^3i\.8|پ_8sB!Fxn>=}{_:_?<v\c 9O_~.HYvu׉1!|4 U4U?7;϶SMUf>6IoV{k)x"S\y~V\iװ)Y Xe|.<~ ='(Si 3wc[N\q&0PŷbamgbNƹh־6^b_]@[ 2Yj밄ﱇL>3SWU#[=9ISL@+XKj޶F]x 67ފ<2`TLXYt$u]@RY^! {I_ f0* 2 Z)yQ(jx m,1a| d2a! !!x# D*(Qz3sJVzQYFvumYKy1PgUDNOVa o j(ύkE"Yk1[пPFO`puGn۔y-E KIY%wzPMe|QJ;R$lUZfCWe]IuXVtT׫"C*^c 2eyӘkyߓ^}N\'6@ǜDZL?=o>1 6Q]QU!)>@1'N&{Հ /֜/!8Zb%,cX) x0e qFbν*Nh;1T\G$u䓵.@qUmRd""amW$EVe/,"t:Y,mT}Ղ$e :oRmVjf )S8܆cYbqcF)m~Jaf3j[1i>38iS,m%(c- m 8lHewٌ0K9k6,Ü);f8yLB48̍yTRyqls,oFB1'|y~qݎ/NHrc&LYJٓo,f%=g1Ered(vaٸNȩDT]u_`%z|1'^.?֟f32~}oGpFre߾r;8ǟ_cμeį3R]̜- 3Ҫ ~BY_^*` c&ŠDC(WZ\ v?pO=t! 6z-Z }X :rǮ(X{:$Rzd]]ypk[ :Lk$V $+/:={#EZݙ|jkgZ9U=K}Yj v]N,MM#cqLђ\%Hpa;CCɒ" eU~uZE=jlPIhk-DOl$ \ҭݯEO -Y3:7 G!3ω#{WT/{<^be#7?5M'{{C`B w}l.y2smvt漢Wz@͉`ʕ-GAb+ֺ@׼VjKL4\K4b޿'>Q?rΪ鱘cfdvT#CV`4{>9ѺI#\>.~w S3";bN)aZ;6F(76oh9Gͻ:]hfHڹhΙZ HH!$rjVkՍJ)Q .>n60c␼288FE)(ᔍN"l2kBhK!SynB&.cJRH}sh hAQɜ7mffF%lemvGS攜,L)s˒TP߶!)$X|Ig5N:Iq+/J,7^.#cWIE3G"1cR]JT'bzS2eYdnf;1596r6݆m30'*J3\M,FR,͜yO!bƯ Ča2מA̢K;s&(2rf1'gf"jzrqُ2]?O{2bhwb`Lb}e_UfO9wS`7 O.ڧ/ ٘td)s<: Y,Ȇ}7pr6g4יӟ VIx^wkT IT`ݽf.М7 ѦAMB-+m_?;ldq#:!(NRLPG%UJFנ}b/T@uWGcE-ChںqhK0tg%o56D Xw38,Fm!.n&iBlp1WzUĔ/b⏄4r4"RY7FNPۡlũ=%T#$\HWoBTփLKDSj20θ\K6)Zfqŝy8^B0=pVT8 f\ |Ŧ'+K+;uՍW~ $?jQ6j:cW=]rUzraݳ┠-EC}VU~ֹ  |0,}{/_ps8 #G^3 `ݽj>:,H`sGJS HUEڛ >- y5H,db f6$]/w(f09giQ3n~خ//.qyvP=fʐJcfdf)%Ip905%Bu2'67w4SZj~ ` ͫf2ߗ%" IDAT|1cΉnxfG˰1F"c`yDDZc?} $G?¬ PLef Tי-a FDja]3"3/ephI&g3"2}8"fOf=ܹ]#!ݎ8&kuSG'zzicF-:-0%0#rOV5c8`5gz;Do%ݱkcj@ars<6UV 5s;lc tz(Vni!tfr6`MDHaBWW&Yհ:;MX[Enb;^ɘ@֨9Y7`;c: PVTo_\ -6HdjE?ޫՀ؞Eٙ>>TE%u;J$yO@SB=Zjz֕ +ʧ lU:RbpxPXw&.WUeykx}7=l?o LIf9Fe>̠9y98eBarcΘk2vH[J$2DQEHYRJLVaP;'.?q3sF(IO{TWLiODu89#2f9%8SۀiL4nZTu UZ UGo,;L?"%SPI6 Pd1۷:Q2#JD֡E0͘u1L# D0hѡmTR$kT-YDCCUVgc\Jn6ѦE3JY؍HsC[V矔4# O: #gtT(IcОm1gF@9ţja10//ϛw7Ym#f0;/_̰'rx~z<33" wPAG_5O>So{>|Q@|W5z5qA "Bބ4aԹxpbN6=!:f(\-(OI]N> Γx%<-jU^Vh\MXW2Pd9Mծg~>6DΏu*W1 *D?}<X6˪bcL'ؾXSuEu2/m)&լ YzPW>d<S*[.Z jBy~|)D(]*U-*L4]z`]IB,c+5DB#s&f|]mOZWUI5ߵn=T3`U6.BOth^{gNe©<^ri/.)~}8|n '8LO=cu.IL6.ϴ}3 f& 5¸ RSwsV=_}g@8gvE02Y_d W"v<y|1D)܀Bo%K?g?p~9[VsaD593Hoґ11Nʢ :kZbPNUq&v8łȈ=3j$>ƥ3I:S{$~shƿҜcl{Bkq-*)t FDtq:tÝ3uD:dFfW5`@QI;`9Jw-9KnSfa*,3v {eì)0s$@v&3w)mך0}N7QJp;lno8&苓]n6EDVAn h7`8t)KӒ}bg| Q1 Sf%PbfUO2,jJ3b yzbٯ)16sfQG3w9c&P35ab ܇u\ Wq2ȃLiByD1+qsF=r>_LmS s?"PC`D۾۰af맫-SsU92j?-Ƿ)Vj?ori!Cq|GZMdqe;3D{LR1^z [5\xZ'4**{If'jJV,|kub\}RYhpq^^ߺ/\t}Rj6чBANwGf`%Mb(Uؓ;c! 7@񔪠-Z[Hnko.>Hc&+m~l!T*G?:LlX%2Vų o*'YEZZW :YhzTvԽ%+u8_%i2SD$*ogZҎ5BbnN]z"Ŷ[e ;9U__C%T1@P@%N-7. QA2p&5q0Vs@WWRWT~Jz sUoWfeYS+#*Z}ۆбn33TtKYKE`-0qPNY,`gwš#O`(gV4ʽ|vDzc2 ¸X IX{pTռ\E<(PNv?J9қEjU ߘϾ-٠}VK}إ^T;ԑj :ѺNs}W(S$@TB<2 ѴU#kFJEWWhX l@s/,6ds3|9ci+.@ICg+}ǰ1o[ mD_m9>pH3nǔ2GF gf9kյ*oOIR&sm?#G̈A%p9kg,5:1U.cRP*gn3+ Ulny>]WƏ?o}#cV3+iþ{ޜxyo 959Zin{Vo{=@/+W7b6 2KNVb1 f-]:HSOt;Zm Acw??|Uy-o:az\W];Q)W:e3|vT `Hj+y:ϡ]֓b~\QV7raC LLT`\G 9oSO=Gbod><}yyE@ vju7g3\9R"qiMJ< IC_nvy.ڨ~5Ouypcu~cQ62T.a }S_9q?F-}"RnlyM@wy}]>Rv[eVGfy"pjqw :dƉ+Jt]Ғ9sͩW 윬ͿIkc zԻS?a1ī =ô6.3]z?YAwކZe 7ss0r E d;,WHGai*Xrӄ;RZFZ2q[n= h^ Rf9Tg2SSPoOA!SfTGjOqO3%`U*yRIYHâ"O?̙ TCXqfDZP"gY^^ e0Yя(e19gĬtl ~@Yz OhK(st]a4mlxm6;Pfy}BISg!iR?4E}BtfN(7Ǔk]eU*n;ni˧NZU2cIոA<깋}?5HzSC3J gfϓ*TUEzl,>aHrwy`CiGE=_̛y|н<>jІDȲJ܏tPU0@hf۶ /r}|ןpU&8p=۶mϟ?%הn3fmXDXWbkjCHdXVݗA.mmN`ԪC\'^ ~hƚleInKl<78Exgzf w~-x+WY)`֞5SB UTR|~ œ%~l;__$x {8-mMmχaFg"i3>w Wki7l,æTxT;?J6̋NB!CUpi{(-ZcdV oDJS9 !JwbɛV6a˕ݻ IIzOiiB7=H8GU=5tk"z@lMK_GEǐ83NH]z }l.gdւHOa%6SU<|2MnV;Ř&!ڟ*iPj6e(PuoGDE$bȭ՛nieAuDh6f05&2p9 INճ]">$,Na RT}:8Bw?o?ȏ_$%ADkz`k[$"i\T[igi]y8!=# RD1x<7}тT|?ǧSM nBa!_=?w{l?pH.x>@ AL*$] k V= 2.k$9J2JPU9U <θα3d!T2wsj+S9Ы_5\̌DU12,Htٙ> 2t` kszwSߤMOOgV2qzMP=<ƒ-D3Kl]]K/~R8M9`)03ETL Ls<γUNT̰2'Q%UGT^ʓfEV8+XEΞ1f/*yQޚ"qE에ޠ* 2,S(Qx K6!=DTS`nfYJˤE<ߜdCZ-X@b. ss3Hn9ijMKyE؊ {.P݃iCvjc v$[v*ۦʠ*_® 4FDoaE[D7L1JU1,NOkd"BU P"Hcޛ "5;К haT>MBDTu1Lg*#TS@ 6aRqA2ڴiÚjs%DвQ;PLw!nB5 JBE+a=( dM.Za|O_^h`02*}XƁmBT6GlڎѻO?rۿ| J7ᦛFͯKt]CD`0woۧ6ŀ{|%RJF.$ܩq6+J/Xt|q$W%1/> ;j97%R]eJ>4z2x*eZgIR]8UYil!_wj8}Xql RzyRNְT\y$ Laߊ#t[BiCj<s?(`HYɥ .%fV:gINXʳz5O~n}r}UEMՑy#J[Rd'떖'C Q敻#m>@ #d2A,w@cNB  mQ#$/LuVfQt<\xބgYʰPIwHjc겶O~"ʃ?kN9OrFrɻtyEVɬ0d BQLF1,߷pShR_|BKE;C>//'o8(A__c}+9e;sfFY hTVa'"P3->s<ΰTa悗_G?g_O#2W0Pic C"lM"9dx̲׷ČEe!R mnݝTz=UHwhҌ s!pǾfgq@WH --S# U !Fd~" eR9Pe-u"8m7<`[k>Dx""'!$Jxp aNUɂD=G+xÕ"bnmD}R%֚J6[1PT7N&:F[R6Rc.zJb"@%-طp _&A<3} 3|0rC8mkg ^I<ۗ8޿H!ao,dWdosR܅A8||;OZJ')9s>QHE\up*qPo3`B-Ωz.cf2I*q;E%ܼńETYSIӓw~,%SWp#΂F8.cR(tZ$(!e) t5YYׂI\&,.B誢5:VX9'oPK)4ĠgoHGTR ~X̮Ċꆊ='Ln\t;r9+R g=b悎W61e;+N4zr -7LdO9W EiD@%l2r-˼k͔R4Awkf\#g]G[Tdxf.ܫOKݠ ?T []5.xgw2grz'CPD pR&!D2Ip)hC(B53}q1ϵc'/87*+Y2ڶDOE08V& u$n݇$!LóAɦPsPhJtw[]>8YgUe=U,Yd eLEys ٖ&!t2 ɐ(Di|#J>> .W ̿dgH cSiB>za),IUHfKDl<=l7^6R5҂LrD%A>FCȀe â*~o?O?o/w_޿^wq$;z7'- k'T{Df2sϓZ/Ou%sYKVPkbYUŒ(mIv9b^s1d(ԢL6(CP ,M)SyKJ72Ȑy HT(r'$fEN ephYtd[BUa٢""b1W+{߬t͞ٺrCe}&R)n۾YV(,ltq$0UiBeSm 3agZ! E[R_YqlQ3qߴ)W1EBaŶ!T]Q Dk#}Hã*6V* xiӴelǤXy@D{DlMF]ѵ5P{R&}zY%Nr}wnqm×`Hm}oÆAD|;8<_y/w0~|(ā!eAIy.cl3PK'?7vm/dp.Pa6sDc{( +HĞf[=D*JWF =g3D͙ɹkbdf]j_8 %+ EO'?wȡ95CHG`(zj'.?|=[/хPJ8 q ʣDMꌋIw9}N9Apm=ĩlRxM*i*MoP@v9?$H~ џٟ/^Z/mkdi;)i4"aÒKNpIpUaQ]$]۶ Yݑ- %ibkz7]Fֶ)8%8,Hm;" ͆@ȬcJ DuHn=n{i,-6 P!7ɦx*}V($!U7&#!Zn`!Ф̎ PdN>#DU7i @M- 搢1J#47mwi`r۷w3$dk9A8<^__1n]-|d TZ E5N6մN UdMZ 6a9ϻ9-GH%w&TUp<8Fi{kpEZT[O!I pw%qDD/}t+q|9ȦưM%y۾o">ܻvtIHD1t}4m 3۶m1w?^?_lMۯgȏ>;Y7 f޽SAxvO?ly۟nU}|lSொgh*zO}U.σ[␐K MeTȌvKdud}EyGaHe]&ɳ@ш6oJeQʜы f"r8d`'O6z l%p@ODRge 9S`,BL(1+*wLҦhvk$BMg4]k,+75UTh W5w2'V_ҧZC^y3[g?+SWtV5?N 94#LԎ)xZM45cjc5~XD"bs",N1j}MG6plCR],\0fa3TYtNs5l`@R]3S_Ra"e ~DV#S͕~ճW˸]4Q@͡*_>L F<újRc"02s x-/"`@1 "D0[w  4Ĩ2%NG_Uw̎qfT!L ;-IPDE'C5E=};, X7zDu HmDf?~Ç?7}y@hxƍd? =mwq_}y}/w×WsS}xҭ^|6f~sgvQw gxS꜎soU"⤅V`rg3S\)GY˧/ 0ELiRa,EDڕ rn,#ԗY #✝p&z{֮,L-,XJNkH3aՕM \.\iưi1'u8?Z @OP@s)%WLun.=^!zX)YO0oB*MIsG, ]Sٜ@JS}nwB؎*z\uy9îUI|=1ԽYC 'VSYDnaVN4-sKHeh \_ TY$(aotk9~E>5*qne$$Oŏ&`ө璓h CIZK`fKx$.yxmCldid$jf0j|TV&F,#;%nK!acd<u>M9Uuzc1ܔ}X֚jta1-k#c0̞/ L.f]bl% gg=D*T "k+oΗdnΝj7 HCFmwO,)Q`w aÉ#Қn$R[!^i{k-@1R>CJ#DkBi[kJ%T 3Lb88´F2܄Zom5yGSDO6o3}@D[?F1aG2YdXUM=E:ýÎRafkHpyO9-В?N҈vTytK8ڣlaSȵw7nm@v#{O}afznUsM7%HWw ywu//_8W޿{W*/}Wʶoo7r[y??oyo~(~toÏ?@dtV?d[sʄ+IsnN:14,Ta:7ى/Gnq1RʕepRMkHV8-IbnI/9oH7dJpmyg hM1Jv;x=yȇǏ޽I^<"q%հb_2PýynO5r͛!^3uW>84@mmf<cX8ச'MV"ⅇj(YzUED1eGrR\RDdY A#TDIah<9 @1u v[mSIGmە͓?Dg* ۹[< X-aj@#r&pwH{JSJQ"6ML.!h T 6M@Jj{66zSEa-Ey)',<"fn}Si18;f8FyXVRDP`7H<‡q{g&n^޷ִ =<q k"6RT Mֶ}Cf\in/M@|vJM[Sv7J(hê {@4/+ |>-3q< Gu1"3 q<_gӶ{TȳeFa9% }nmom3 ᣿nwmk/^FelM%@1?~~6}<TQX1{'x+ek[MM[ B(1<6mn>}-c攫OdjM6<I@1Lh㢉>^NbqdmXrP!! B!1c},Ik^#ᨼS^Ov^ɾ'׳ffl19-%蔧n~u$EszegFUoW;`!R'vU]nd%K>(^b B4=_ږBfϜC,&b殃s ̉'\V&9Yk},Ntn|gˊ;\}{OD]N y>bk2%.y@q r)խ3\L-J=ɷ ".#abA-x>Ƌ0g l}gsǘ ! D!"Nee/&7;籺jL>^Wm۽lyK_GӔymi^r Ƙ~Lm vՓᖔMU<ŧ9cX}hj%$ Z02ŝ}xTnia|mt{G9U;ڄ:x<n9Q_Mdz/>{ukB/_Ur@m׿Bö7?|Osa.=;A9xZ3Ǐ^!nn#?!dz_^nŧnii9hFB9W8Ȼ+Ξ?DSVX!Hiz-++grB " nS(W-W,AR%u_BOu f!~$./pH砚adWo.@pjmKx==yr'A*_ao?Ky&h҅bO;Ժ,2O @H˷YTH)U_r~L3SY[B I'ޭBy[S83Sz.O?Ag 2bO.zQ Z%TsL`sn1@ Oqƒ̙pE%&}gZAj*2[H``Hrʉ_#09b|}37ٯzA*jc$E#>Rɩ=YWLתj15`Z#W(Uz:@}JAVRտzׇdPR`F oۦ-[r6=܋.l6ajnٺcI5DH61KZvit@2Yh*[P5p$x"@t Q<"u#""P@MÎa|G۾]IvR mS%27@c}yvϯmxق<~߿fμӔT3#A\5I8JrN&*j"s;MlL+H;+53ItD29z 驫 {]/DUd]zK`ZyTpգ>:w9t-A]ok 1VxkKn/ ک9|RLB|o(L(3}pa1z9{ɘ9KO]Lvm鷨ׂ:/~ 4?}NSnĚEqͩBJ "i>TLq9q9|Fٽe9Qjk049싙~rI%Q"5[bǕx`(8B4ƭqp oXnL+xeZ#ib>FnfCi SjkBzG@DQJ$),QJRPvwUI2DZKd$ESypӏB*Bm4Sg5CZG9IcB r" FD\PUY,%͡JA?U]MT(z2k}ذ4+zϬ'6 Ii CAG4n0 cMޟ677UQn}l~ i8F'cxd+pT2+GԶ Aymk߼{9 2A6-`?Ʊ@READ&(zhi}v䘜 mf{ wzrΆGED8)9-M>{Wm#[{{u`xED"Ӟ/ϟwnd{߾ ϟ^{۔}x1_x>0 򲽼>1m>=>x{Ƕ?}OF/C_r?j%1H!RskqL,XL1!Dz99X|RYbd<ˡUƖKk)&&bnXxֱXTfTtbR}X:c"JTۼ$3'6yYq6̆ȵ㩀= }A$1fE,D4Qj̴l,*σ$;9xg`fxRqj 2uƽy]ά ί0ejBXߪ,YlTDZ[B$e$lODW TOӑ)gW=Jr =qY_Ɇtj26RwpbO'Qq{lVL;y.4rm\,x+-E mSI1U<gƉ/ “$ 8<1c.V 9qdB6YTrc7P3K b$} }8r\ܛ=i.o<0U9tԨJ08S)a] 3x#Wi tkm߶MM8,+sTP0%ő+l޻Y#̽8V\A ɺmPL/w eWvI 9=U璙nGj7'*OfBPDfH6'@D"YBqW,6ë9"A椈"<]L>pXDDkфMEzS 1CTHvBnŅ6#<ACte&0"He!dOr}NSI_w5AuCnir]iT?g6\}M/_^??~\BbrtaHb_%cTCnԆfP1-聈@\]Bq,0;-se8%* MC1ӁU}yT"4X;#fG'TXDniҧ# B:,_Hu1ZS'8ƶX4+Y\[+#Ƭ+|#K0uKXXp6PӪk\5΅ RO@Jng[|;RrT0RF,rN&re)w.˛[g{O?x))RPl\s '%’ <] !BNh}=+8*ei3P}uO8yChLe@;km>8"fMUQSxqқW ^y/V3 E;gqKV3Jéh 3;ݬVYf[EFWqeŝW+e"BCyTC2N}T58x(>ü"hA(Bv?`hd sKԚ*<T%uϨ!#KDP6c"nmF2&SȬ7\O@LC뽵JN-a`60> pO~UU[lLj0 򧔔"{ʒ~7a EU+Ph2M 62~fMA`91 DQ1ϰl ڴJbR,[K$2f@}Yqgw8ns&r6H۶ aR%-}'p "nU~;Q3fgYD:(dF5՜H"m׾miۮaCHXvo/O33sVU(ٕ. IDAT "bSJnj:96>=?7m6#(>T : 1sSe >єhZn \`XLwz֛hD8@nwv pk۲426Y]~jlLz%ri^q{ _WVlЍ P\E<Gn|C.3m:~W ' {X:@qH{,=^);<(b$2*u9^U <Ɋ$X2pf߽OK3xYkkSRw=uG~xq+ޯhs>u>渍1k~)Iepn4QU'%, !T< Nd1L-y:H}NÛҵEĘFV܍BnDx"|UUG.MT[2Duۄ6-mג#<*E2Z"5mM&"AZlH,๚/]UM\Z׶nմr cьx OT2$4'+-lMsΑ\*:.9M;|o/o}4O3[qomfS~15.=Wgpq<"IØm"$Ax nHANk4JTTVAx\Hش9n*Eґ#M}v奩ed$4=)*U[n9̩[of&*JP!*&yq@DDڥ}i4 iHLs2i&.-HYL׷[Wl2}nuQ~}u$1iYy$矶s$L/H=~x۰I/< p_<+6 " A-׹F?tE Tq(k8p*ۛh4UCkK, "#d!ٮ*Rkߟ*Ҙ:}ٌĹv􉈅_q, nJ.;?4'WS %RtX6EK_2Pn5sn;5ZɊǰ8?W hXG:[>k\ =+I\Hޓ p! =X.yg$kG/ol`şمҎ^Ӂp$HECpRUFSޗ=+`vˈ#B@D(∊"i%&K{X݁Tq,nfT^os8mK /3D5; "hoM)w8w{clJ#@ݦ9݆TJ 0e3i6cLwaͳǜO9Ҫ%F[{k Uv\ɴ&p[ZLPkf1uemMiFLl΁1fkkGPD婷,wC +j #ܟ/JOWs$}=][7]q6tƜ\40߆vΐ?T(infHXժ DVh.4Q=(z,JmqxR/"W1\jc rwq? x  ,a@*7> Z83EEkDF0v% Gu+\aTR=ۙ?35L%#i.1-?z81\ nst(Q,z+{<#lh2E=pdviWR+ω!xQarL1dS{uh2|FRU\F*^S*PZA.)(?ڐeMXk-ǿ?alɃYYĉ)ͫK7̥(W뾤G3zDbc.v8I$ 0+8SoDugYJ2GDC"1Ϣi{0,M5wAX,Gq}%C7/'f[צTpQydX ([on6AS"؄.["$!Uv4OܵoJͧۇ &~Ѯכ?}5ޅ88vpAZC;K? eAsEp9NF7Jsr`퓣N@CSVpv:L'CXH6"WM#ihk[o}W{l;4 B57!Iݙhp7Kװ&)}LI٩ D4#WIT[iMtm]:ssiw7 g`f[k"0J"Қ^Ueꡥ!8Ǎ-=H|y9޻PsEcLyꪪMTe9m0^5Έ9ƴAxD~73" xzf͹iVu} H^z4 \xL4ʦtsU6"i#Jfer*/w=tMl,U^JP{>07mvziѴEAI]{s؜n-NO'ٶMUk۶]ڥ䔆3ʥoB[[ckڴ+ ͦ׏&?~{[O||~ާm[߶mD}d%"˷~؄?}?_ZŃӧ[1Ƙf]/[SpjæM04(lF` )D:ֶ(y0d{.rNe8 cU a ?P_TGH Q2N3^a״۲DkfQ8Dwϱ*#ή48WmI~ vNu^<`6܁p*,=}74V轓4L18f=lXj%t ,+HsK9y xi;#筩f{L 2ZBU*Bt p`-pD\ %)b؄OG+s\E1#&%4;AZItyɵcgR:-=Ħ"-)RxS@3cNmjZFd pV=h2Q`ww85HklZ5EH>}__o_Ydfsҍ1-"Ô]4}}ѲJT?=sxַ}22'L<.}[f͋E:q؇bqQiZ}SiBZ!$!z=m}^׻CBU]66j9eA$s7l/gf=vOEc|f>>#WAOcfa43*o[a`Z m܄K5ƥ+"F@1Fkt~xY>n}m?0{}{kھ~tH~p:뿺tjܕ`8AZ s9XdZki&yYnYoTUVn')~Pd8 ˑ&>JvHi!3/ 0 $bZ K"D0(59*eWYERPpKL|آs9IBSe2(y>u~?O-r};٠;QG R/בx$UQb \Z*c69 Bt,MsrDjc@N?oR}|ۥNMvbֺt0+,b"Pj7O3ҵȺqw e@./_3Ph 6U KCHe`-@Zy߉\"**7rmG.X,{GݫX/x+RDy]1mG%nizcpvQ+SE0گg@RYy/[DXR 4QUFw "BLoVӘ酜g'=lƶ]0 _v94o 6Y%.0Cg䕍2n"lmJ *$hU=V[jr4hBET*jZ0 PaS1s0szxPz2U) Rp]Q."Dɋ{LDl><~AZS.fno}k$3h3}Zk[@Jj-H9`dwPH)|f+i è"'9mYo*4M̒>I4[v 3S$ńb>"oocNs ֚lE0>6Exp:0 Z]zn}4&/׷9_|}yyˀk2;~nc0c9!2Btj߆ݧ͉_{㜣^/ hP2"ID|{܆#Tv3%@#"~OhW_ߍ+T5H|OX /$s{=>iӅc)%V:Gd<7Xк4<yj7VI*NX0 ҃<c&$<ֶtIJIv#w-*`^N szV^ 'O:/Z;C翃\@x×&x=J65EɻW^?y>+ł,q0#M6tiRO|$;ɣ &2=_c ߥ7tkg*4"LVxGH/3^QEHՎ<\O)3a1Y1e\H= i$E0LHͺ-xbS[ޑG˜c#Cp/N\Ԡ/muB~5|EG?Աbx׻s^疌8W̜]Ǔ +r8oP._O*;% T >oRa67UQjy" L =;iH T_KVqe@*l΢Md1VQɦJpz*PD*^N"'SyFfiRB.Ǯr'B(iN,%FI`EUE(#‚50(Kۚ!"$ix @9Ĝ#YTn-6ܽD Tt@-& `k i#bd4Uc"{o[Zeí]4I,¦>tӧͻ8>=lz>GAP d!YOkkzK1G cƜznws,£fKPछ3۬M60Z[[>=].!ڴv{P"ЪIʟ>E=BR)(ZP̮hf2ZSR_1HnMA >5w s6j:?ÿ}/r__^˥חo׏__a "Ʋ$ \uH]5yN:ˁiӉ 4N8#?Tzq<@D4Ug6nG2ɈTTa"<,("0imMD|MʖvOSqPs?I~ωD顣XIZAlHZjlR)zDy1#&p*B{MTsj hk$-͌ "C(Aٶ7f?)su6Tgt1d5)t !#DkM{Vd\l0@Qv,@i$Ck1>(z{ڤ!fvAp#SMuPC[kz:wa?]~-LK׮t=6"k@4w wgmsn1?x57}r>}]~r}n?x QsOO~|ٜsv>omR(a|6o}>_,oNf9#cXbP?OV]^X`#߿ sQLUGeprJ <ˊ1$V SUucD>2+ kZaZe,r)dqkn&lV-ZO-:6.urdƏA\|8#.ǎX7G>kO?rc"CK-SL5̳a̪Bۊư+<^VpS'sJHN>cuzW)΍~RV,J~.t| ,>~uZj.K%5S<n0ljJ>"J9lz+\$7)oME7YTJ8YD#PUv f!屝a:@I͢c̱@`T%ԖBx#6漧x&"la3isao*J 72I"*lЖG%Uӧ{UfSnS(ޔLrSU'翊0,仇9Yz2 kEDM<2-:PvX?L.A7ٻ}=-3-caA"Ds w =0 jkM>}//߾~//xr1~e `k7Mq("p2.M.[K?,ܔBp:vLj/_MrJ߾}6ovOMc3}9wFx"J4cTiӑM$'Pblp3} zJ tL@DT{. ![pi@HmS GX(lbfl}DMN7P2.`Dea0HjR4vim`EC[O ҵݚ= i }f.U$[K c{ Ys+$"(K'#׹̋oDۨ%~vmn)kWP ZWoC($J+An3Д@LiWgeDje^3JB {ڰ3`Mhf<[ n[3(1fnRUE!VdDJ4}ݺv\z?f5:η}N^/w | D 2H""іlY?&ك2<ʘg^gQz@9`MFG"N>(Ua<ʠ+t^_~g5Ɖ*l aQ?%1eө3>łטs=B!Q*T.֦-rTl~Vu%Y5~/Z߮*3?Nc}ogHbi`2!eùbKI5HK>jWnA#(CP4 z8hdm+,>#o0@=9AԮNYI>>,YOHke4&? %LBCM( KsJTM*HUɚ#QG$|] $<\]Bd$ zɵ'U4|~NڋnV#CHyxjC\wHN^.3a{)L4Dy"^٦4Z7yheϪ1@׶((%<>,Y|)GWqG;F<9רty~֑S]q$6EIMjdRKNqU#[8ޞ3B,Gh<;@0yUgq>g(A~:Vu~zt;gT}i.GCG.e_%[$HxW #Q #ډzy+r KX %ʀ r]|13,TJZ=F!PYY`GJkMҢPXCs\濿U ߚ5QqrXjJTfپm}-nInCMjo wriT*M=,``,ϭwlL|Mza[] :/ǘ| 0tnsg ySlNwؚ."h ]znҺyiD }1C}n, ^Vkml%55*%=&v#e=pERn6 ՍpPS4,fMUŠd/6 ^Cj;hR{9콫4Qۄh@3i(A6qJkڂ~Z"%;Έs ,ptѮ*#| ) 7iޤޫ8U){Wa>hmK [U+U4|*zo~vvZ"*HiɴFZǴ$(DL>̛)a?O}ߴY׭&J|zdK*3ۺFp_~t-O~i>\-"ůP7KoDWQv6 7eۥk.ukUns7RԪLJJHc[rEd{.Ӯ8=qù.P((4]Ι?RK Gdd'-6X(d/|cў'\c%H b}wn2t!,q> 5V'hI횵Ů :OZ,F`iju cTR;eA.D,~:(YkJ/.2G }r`MCm„yR<[i;3cJY%@H BbȬKubEr,EÝR#2;|K< q+CuTʪӺw#3H9V4RzT?2RrTOG|_Qka7 Ǚ/RjnHe??ƥk< tCD85PՃUb']'U,s8$xu/>P갑Ee MꀧgH$CYi yuuBx\xq4˲%)A'< KAZdJN1tϱm\ӵo3pR# 339f{i 1ss<(jۺ#GӍ`DS{L "㖨r@scLDh=QH:܆YYݐ}n۞DDo-Ʌ˾}{DYҵjk]umB6Fi@rJ[֚J^[#0lb`#ΌYt^/W"z*B? {eI$Kh-U3;oRujAF/D`~^hdharmwSUTwj!*+NfK.]K諸&+)kR=2CJo{oawIїv\zW>, ).27"6 ܞBQ3'1Ƹݞ6{tm]0l%ٗ7견=7o<\:eQ6eilӧ6Wo?\xmԓAG7//O՞]!Z,4 葬fMB?Q8P1**%7M6w}rba4f)MɍBO= RkxI Dd'Ke~0vzSi8ec^;N;;a'IXGD(6O.p;k=jV5 }x2 1t $˽$|NwaQU6`4J'Cu!=X){=ܫsgI'2OL+n$]66NL<]1;| ¿y)L8)N:S:_#tZ @&mʉZA+;(9n3rRy1L*8% #+գ0{ r's9Q c:@dQeFrhzGȁHGe0rPq_#V汆t6]l)TM+"aCZ#E! *u]rR%b$SniM(]9JQ4nPJ]P 4J ([dD,~D6K/Lyom2ư/5Kb 8ʞ\66@3E"g~I7@jz0c4gUjbk딖Jsm-2!Bs(5"#谹E*zUAg<_W-9Ӓk8̄г IDATj3 ӱɐӯdZrN=]]Ԋꘫ_2xn9Qk3 h"}l$<+bSkS>ꈘ ԟʗu0WGBq0KYe^D` `1ƈ`:qV1DA{C&srx!$UQ۰ MI si"0KFD@ -;(TvYpòd)"6AE30yJGzPhR{P"e.Xd8-Lr7Fsʢ2.ژv]҃ Ȕ[SHWGD@-E""\C 7 6,D2Z!1lf;%@Үh!W.n" HnRaҐ.!G(egAW!fVe9ɅJP T LɱӁ39(3"-c 7BUU;aq2ffMzu9A E$M'mk˥C 7p]T60 쳩"iIT}+H oڇ.\lt?U/7ŐUwCSYaA%ݎbf٧u8" e[E<_@3R,ϟCoC[l-!OX_].0z).ۇ|g7drc(;u}+ l"ĎT׻fOx37c U|z^+>>f} G-\/~PO?nyۺ=<<}:0n۶<\W9_g(c^b߳i(=HyzN]2L =V%~ =zDfN#aǵ$/V9#uDݏǽ03N>< Oҳ Jy6f W):T -#4=8_Ϛ}e'f:_^ի9j]ٯ (25p)&*㳓'cO(vB~+/xJbl=e2\DOϫ>|lPQ m16mmݩn&M="lK꺮u!Ey4 ?}|S]TXz%??}~Z$._M0G_k4¼JI%SkzcEa2y~ўiWk$S7qb#sdJ w#K$0i&0}d "_&la9ZXr]?oAAOmߎ]{=0H@쥯)r"K(s wܹ'Kl[(˙/ J e~1CFTPuNٜ"a6 n]elVkv9&FS8{ DVd0+zfEtƩtFmfFv%h2Q9qR'|5-Ej(qY$^ykξc-̈"l<9Hb^#WpSi#`.;+L!Tvwɛ34Pi@#\ uW Pk/ 2:φ{"y1oJ>lOAMkٓS# ,HUp'9 fM( b RKjuWaOSP[s'0*^^2Ny$_ԃЯ?|3>sG:yɝJ5͸@'K1ݶag}Z Oχڨ^i La(I%W{ƈA bczDlM $12V*iA )ҳlbY:#.FlHEل廗4)4Xop !R)6܇{uMuXGx5eN-| 1f`S>, <ܻJF THΉ edovQAv?= jkq{ژ zd$}K5=܇fȂ|j,˥ hk R[_zgxWmMiv!%(!5e2ڛ~\u.ˆl.>elzHS8e[{بfn0/R.]0 RE#Y,0p0j^2"0,\ _.|y=~_>~Y7O?+l6mK])aK&兦><,׾t[e\4/YleYrF7"Q4D*AҶu7/~m{|ރ$߿oyf-wgp:$Ԑ"0yT)dGrq~;r,O3*8gY‹2?|A^[ʘ(+vJFLM]&LOFJPZHw"RW$y!ifQl"GI|Y]$ȍqTu"FqűUޠ<.bZXgS=i/ sE TZkSa~L9ǎ,?IUH@§"%ʰvv1!^|W`j.9yt[*ޘ)@8^I +YWI-}*Nۉ%ռ꥛h8XLy0]Av>^YuƜ?] XQwL8v\><:O3tXȒ҈O8]A̢G$ @6{$OŘ*j-k2ijf5HƂ(>x_R%3*hk)Qю]!V?k,E%Ov.yn_{“ 7zd+DgLRuAj{(EQ 3WvH_j.r@TZkn#'D(D&ly E1/q"7FI֥%= @jK~^ f[Ҵ20 07wÂe[[kz:*(\$D9̂wKL:LWE#4BQQhn^ u/um0 iMZx:C܆z>t!^]D' w6H#)!Ͳ1cX6)==?mGUZDm 0wBIS_H!-iGc`슯}'sx*OkcTKO- QJ3bN R'_(y$(&]lS9+?1ZU%jݹő^['޼GҢ!9%R33( T07b4Y&|NFg-?sVCJ/Ļv*>T2uER!^M8礫RN &jYyRn:,E!f蜱xj<*v ysN ʌ:cꚨ5I!Q% Y3y* eVyOfh^犛\FiZ=Z)M,*QTIcE9pǃﯓO9__s(`>៿u8o뾅>6ws@EE{P JkKk-MҷF}si`r{=l *=kO${ F yU/iD-lf a@P@I#GV @c,08c FB]e"`dgٷ۪$S5C)G8M,*DrM9lJ$׵EP)bHꀬxonB "bPFPDز;Llfp\EgE&xYg124m}¹n73wzXǶ B2Vws~ >%2P¤FBhmc=<`'?|׋)޷lo_?yMz޷&\.oFs?| w),-?Hdi11$*.Ts,EpABxP@]|2tDuܜ) :Gg>~Gi i@2;J=rvOܢfjbit*B5 A!LhqqTI93kO _Fͫ)Gݏb1Zu$T^T `7җRzȁR0󆗢R3 /7 n'7t"$?"c uŨ=#zp2<{9@%u>H:wqV *I1v^LmJ3>C|flWт\bsm.#c @ݍ 8=;3RU O M I&dlacȜlfB62GZK̆VQ "ea.*mh@pf#<D] -òu#ɬYFH<=ó<x EG0ࡪB1<\ ERmU`#06VBIFRBF֔Â-}lHZw{5ͽ @$FF<%}!\z\HmeOILmXPfqbÓPnaiB M+%DM-b5S0ޕM(#AI6UaT}Y"4H!*T%q/].][=.W"-=t"2%<~T] "bޓ/ c 5t њt}תNr.oX2r"CcYoo,e7^]ck"qn69A)~tl#woDp}\-52{vlwQ2q^Ͽ{zno~%1?QZn"_(~k_'!'D9khQ ׏ &wGj5۔CT;?)Emq,6pt`G'Gz*U07cVsd惙> 3S_1'Q'^HC'$ז?NeasWD8ؿPOCf46A m NjE2l6!I2YOSqǻ1=}VXwJf1a~pgȺ{#/2;yPJNx1#_k!ct=,<+oN_:٨+('BA$G#eF G0Z<hD(T!/KWѴ*_T%+$¾7afU(Kk9ݫhy7 &ligj$m`ZV["2]#K4ն#OCDal#=FVI@6fiyx֛T{vD%Kqpw+*IMv8xpwozzZ-*pi>nu|Z_H.Ge۶-mphm:$^"8!~K~ /5'ҫNU TAhI'IdR~8ϟH{W@ Әkuvx9{1'S}Y{`:q}jl3JV*zd9(K"ڤd|M^CJbϞ˥YGaB߹)Ԍej8kZ9U7(:sɚSJQv,uNJv gT\ʫ+Lmߚvd)s;N '/qQvJ+GeͷՄyDdAx9RGq4F@835?=kZU(ִ5Hd%^ڲ,[[w&t "a>w^&@7/i_zo0(h)qQJj Pwoni1"ڌ#!T`lsHЀHל'Hf DRTp̋ miZf-Zz .NMET"l wF2&deY^PD0,Ji"R@T"E,i&()Q; #2Lmsճ$8<&h;r EӍfm1GkڔJߧkfc2qY.qEP= @&"}YJ4/vo @k @ۨ)5&"\R[W]|?}᧏߼ya].ϟbW^(!Hmb7ҤeQߚ247[z\csZ+,aEpY̓ffu7aϿ[X}nO?osSRTAlޕ0)DOMED~q$Z -GEqr*8n#^p'E3߫~SH5#>u'{B<5Gŝ:?vtxw˿/ÿyFlanQeo ÃE %크t?.j K#.eB ].isS4$fڤeۆF}]C}?_޾˿&|lnq㧏)w@/z[o^-1 .mڛ6&l3}sW^3Ǧ`߆0ү.؞sSm}eY>=߶a<,?n[[0/5d`aϷ…YZƗ|d~SE9%~&Ϝ'oGLD,H9$y/. 81 Z}9 :TKHgw#?#Jz3ѳ^K׎irʝd}bVFDaN<wj*{;]ۿ׎9PӍAq-+ Efw{a1dfcr7ZnΛha>~1cB03X%ɀ=>gτǼ هr^t*Q)eqty#oj+G2&fr (%Nou /O4vy1%8c^I5[T*n,s ջMr*]Si#ȫy)|5#Eľ:V@5H7\ȧƃptAqD/cPFR")ԈZk_{;Pzݘx>pL㘓8>'k/~Q*w~:Qqޞ|1af$轁PW={j0g#|U@RZS2;h}clc[k0<vfF0">50܆HHSmꑑ %GEN%!LFRfג܍I LEUZM{2}+"w7^?p pz]AC.Q '&f2u>+^tH1c@FgzxPpHHпF3, #j7-Mwd ,")K/Vt>Vy^N;9̩1/" Nh{^dMLA'#Gڔ7amB Dp%(*"Қ쭵eɼU :`662nc V6j'Rkwjשf#6"wB","jkE4/w\4#bU`:`pSbdݡYҀcPE% 7.F.*Y1RCQ@UҗryZ&Annn*ZkMZiv]c,̔Avo".rBˌ K&;BBXaB۶mc rTu pw0kR%p ڸ">T=myjNst샩3swlD81ܷmæ`DkMbc<39Pg"6mKi$bf.?߶]Dav\巏 Dmoś_} xxSo#mHo|߆ x}?~l{pQFy\˒sQa O..,UsamaO^{>o}|㢏>O'?_)l (@#|Mr'xڔuzB?Sb1248͠ "2Wi>A>TKr,y_%G#$y,{6# i#*'DQ*\^eONC5рNij0?ITW͠BM5UdK"<,03D"u2t ˖̖4YjCC z0 L‘#ZT BI+}L^=V3RB닶py>t0|x0ۺ_G4k̇{4a acu:vNEH,N𱍱6mn pv|n[K1H' o:~|Azc>^^T25ޓT}Af^B fQ Sa@g^JR<URxy/E5G-5J!-$50/AVp>BF0j(Ry]%1 9|HB*Z}H [΂ጰi!O}q]\PJ7m>hj2p#O 0Dh" ɮN!}3Z[a6BVD,KcEDK9C3z1q~8}=-__~[xx]oܶO/~oWR"px~oz{~/)"Tuݨj6)bRn/O!FHlzZh7IUEp}lۇWC,E]k/&J2+kD{t0.3~S`"3MJḅF1us͉d.`>5$N/<{Xڞ{ӷ`ܑhbvup*3:+yn$>鼬*D)_#$U+k^;<ӹ/*RC9P7a4@'EDy'w * uG3s<>]yk䵤| ~c+LzI v>gHC0`eP>0~㨢${[RzcרIT'\k9b.TݩVI4V{u'*ڔ{f'IǷ/e&ݳXxG! zx3BPU‚}dW6Lk/e/P !~OHT쉃 8йE9Ns&0H縱ٓy[ip+Kp&ycKVv 4N˭o }2I8lefE -Z-ض%naҌ(#@q:p'c\RG5z'!,|OuY쉇8|O-[I4m!&p,-Q\3͚z3 H@qi/ۺe]G4hS"YV૊D9 mOy8F0l[*}[k4%AHk lޛa4ah63Yd* IDATꔬv(1ڛҖ=ml:<m@H3Ƭ Eiξ1jkBgj1@l]PwR 6ֈ|nann/?|6~~/_m}^3y]O=?}t ȗ׋ۛ6J#pT NSCw}#-E$Uu5{|8e]}Ͼn/>|^~ohsWo@n^H3r@ܕdQB-x:s۵ %4y(+ @n~b].,\M My1^Nj2W>Fg}wI\R^^djBzXs;/ԔW:_ F)re~2iaY~r<4I>nA:x\z ^yKgdp:֜) FmZ<7h+o^E1H | =>': \'y6=xK޿VnQ;d?/:bbY_;g0uQ HҮN厷ac1Ӯ2s#DysVsM'kMx%s$& {霱^@3r(UA̮%p{q=~XUPŬUR֙?#GJt<;ߦG?i7Kded$n} nuؑ#s i :(+oUqa>[1XIW PPbq͐L[E7U0X av0AO[.̌ʗ QZ-AF"V1F$RD ܏EzU5P-<T[xgɬ$Qi]yXm]&`1, H Mmn"\DlTش5CE18TR! .)(#b:if۰@Eg0B.[&U8wۂC% l"B‡P# sa sYLU~xzL;jAò-$BZT{OO*!G߶/mmg_nן?5:^^^ͮ7mۺ6?|Y-,oכP^c$t`Ѵ &mFA_?|xRҞ/ SIiyI 6UO篗e]-?o__o[;Nj_\_~ߞO4T#+;㾘q\9ڢ+fVޱ;wlP5=+{ pJwv٥[;۹BM'fB 'F$0[G%Tco0#pppŜ(8aFw;~?nN1D;zT[n1drW;$vPl X C{;u  $^"1LfKo~ȝNgРN3E,>C <ô(g;Ȟw+$|MVT*X$'Nfӹe gJ'ۿ=l̢d8P.b5cE>O Q')2 gvQE2%9cg<+Sy|{}O[4ʛ_ [s:qA+4s)U.c} ΰo|ךgh P Gu{;/B I/MeLCTI6u~)pj6@ԗuX CK?? ]x*VrC5wu& tƎp,E WUz ȅ.Dkd[\rbK$N5q"69-m .Evn>˭KXz nIF. E=l>!/HE,Ȋ YzMt|Ff$)~Q BgF$(!T* i+@^ J)#[Ӈ#q<-O%=fan"- 6E2( n;4-DUZSqBXտf鬛)ZK{"(K}X=ץ}xyybii^naњ7F_F뉺G6Z"Hzs,8WL[YY_GN_" Ԋ YVYoqL:޻E`v_:4kpDf1t9¦Lh#kjs|f|;?7H,̒uڣ{7s)s"yv\v,#H}.\C߯(Tf IJyfiF>V3KML(i~VS]Go'A`yy7O0qWgpLmqpLΑ-vEvyT2`>^;O_ތR(`'5;ޫ5EJdmvRܵ'>d釂heRc_sr75!Jݤ DȐ$"3]DxLd ҉Q3{?6u!!1ft@Yvӌu>ߞ3][> )n*%`ɴ9HTm1PE=s!3x; KX:iTч;zt38R%Lbd)m@VŅjTHUH@DI'̉5K33xWMa6y.BUսmqdRrVq\$}T4[]ۺM}w!h}1a& Up8XX *ҥ/nXc۲\W/ 4!l̢öꙙ)MMEE 0K#h"nױIi46`V{{HSeQmmL"mÂtYF~cD0G=a40ղ{ɕ-Yt]ޮI~p닒 inj&/*_<}˛ˏK>p^=3y$-ZTVz@aOO6<2bj'cU%G S+0g2=$ޭzw.䠾'.8̔ka|q;8tN1Թz${}_cGo>Y'u~o!Z:&&d=-d&w 81#%,#xR~g[j:6#9WCvG

>%Eܗ_;(dC=rc^MFw8JTU'Ħ9d%L5\rnܷ^ʱmp&SK} h\<{Bd"3wş!ˢg|WYH)ud G%50͗'3*|@$mg@}bB9Z,7UGUi &WL®El0yʊ^0=oO$.O2SZ>ag9Qs}sRPF!SP/BU:(;”h"o6y H=gڜw_*((*u]PݽP ĹaOTb VQ:%-dOvQbdH5Q]fr08~sݸ_x\kq,er &q<0e9֊:)Z=3acH՚ |na^uDP9qDSC %۹pzu1n41RU#B Ah !i]PBJ읫d@2oΕS u\iڸ b <$l1DKWM{fBam#?͆HLB [)Vea1-5%(mYmdJHCzWU67YסD?SW.a*-[,D$Ũ,#nv4zxH@5Yn$vY2-!oxPePtd%dѹnTA7fcDyk:4Q9(J {<⩠.բB0 t6̑./!ikn*M|XS:LtEOY p/q?o!o_.7o],ֺ:iĩu`dBҕf+;כ҇*FW.m.BGj;3E4q>͇/->ǧǭ>ů~mۗ+u|?DsB 3DҭDw> M(6#r u=󾑳8n=-ZIgMOS ALF`@3v&gDJz]mJr  2=:#澛KfR(!oI#~6dVVN\1?eYԨtRS089>sIcׅRGVeMГ._N_F Z0VTƞEyV;wB@Ϙ>0hU<=|O">hwFA,>|䜤'Zh=7ȿ}íNkf? dW8Vy eִ&fIlFr\>bb*/i;KP(>bH8W?3XrxFPp$!Pp(&/n-ȽY^"TR#wjCFZuɩYR{erzRgrHqH3P*SXoDdo橻Y:&["0@skdb i"-M}mؚOZض.eۆgXP#ɐbl1֭Tjk!="\EE.-jS%##[l>'!EySo*`6IUGzg<7Ʀ ۰ie2fN (rP0ḭvCU{k$E:$i]J"eY)E!?Ce2 hZuQPb݆]~ٶp `X*KUE06Jk J6Ga.ծ˲#hffB!ĉ؆k[v]o#r-=MX27~͆w4,ijJ4E3vݮ븍URF6ޚuQ8um*7%Z˖Ab/Ky`@_ͮfnK{D zvdZ*^fp![0ǏOuyYiM4i=Y-~oSdTetaQUUÝzTp`]mcX=l ul7aJ~˲<\n_]~du1Gjl,&9V`m„Y>y (ŀ yaw />c0)6Xw2qۢlWT$\?ƃɓ춰Ӳoa*@pnr !HnLIb`ijaO1v:x]>2ýr kPܹ{AJ޽'>BꎴQ(}KHq@5ɓD͜'M@?3B0hf+mh>)IPM ],5v1r^.@ٞ, ߿"agr:O?`Ι6L 7cS3V<+!dbّ =h뺧DϸgOas]7F5I?͗?%6$ Ar2HU+g*;D.Ih-@B )c!Z$?C/I F'kN]X0ц"aFm{Q*eƧGkZH^aR5:r4klXʄɦΈUنٺm1 4W1˰zjrWվnÊʉZVBL 0-|D.%6SrZJsAwUU)Pv@&y+¯ִ0 D=ly' >HBulFu an,ոJ8h"[]F֣Ҵ5VIRmSIQF^)koU,wKh5+%IhVwG@tw rKc4X#@[t>-catκT4G47骰|~Ym ϭ]u58IF[ 2B/M*D;//_{zŖd:hr1,{DkM¡UcDI DS齇z130GoC Dᛦ]^CCuOOu{p뇧6xnه?<^okPz?31n7^痗Ex~{b1+5(]>=/khCX e0PZkؚMN/oWmml[}Yr IDAT<o^>MԂWgm 3<ξ= G}S?)m@e7enq,%O."B`r "{g'R-:?Ͻv*XQgodQ"Q+ECğϿ3hEQ,߭k_,3:3<ch9IY&#fBZ Ϩ 3I]+`3V o+>,Sj=|b]wSx]] = u 89h(hf>]q_IZ;GHV4|q稿)069dJҭjM=6wY@)[?0+ > 8 C/Mك,HEi:dJ$`@z?OCj0FdtվkZ͉"#orX3" af+ܞ޿ŁYY |OGrږ8j. ij9 +=dӡ{½ָlss"}`խ;ʹƌ#*D@DS%4iӯEmo˙p#  |:qTܝ0hC i* 5M(Ap .fxC&$u<7N(*BwYQF#blZ t1 2l \xyk@"b &w۬6FpEHD E|m0B40B"Z&ͷ*!6Yس\/1m8, ' w-6@ I*aX#D XzJ$2_a#;WOO bff6- aBm$.wS4o7'OCTRVclgPkz5voY@Q xw|聢>&ɥc2t7P.gD&)=+̮QURBr|+JEc5QE}w',N㐻Lw#œ6&Du/#* tw/gTܦzwWr/zBZǒ3AO )S}я[1O(_ ٦" ޫ Q$f>]W:?J;ğ9o(M$b"<{O:eȞ"0>em)b?Dw Yjw>;vYg|rJ:#TKPWd|vv^ Ѩf\(g@ߡv.w"Lʟռ$~c߬Ue1#9J{'> $К}u"&H31CAyR&J:>[_,R*lTKDҔ&jbD`npFFSz pɮ++u #{oWM;TvMSD,:(Ufj(UO, !'"BcJ1s0 BMDac`H(BUHP(6VkB8IC]6<@o rrRl~x< #{O{.Sһƀx/O]n1FÇRXb>LN}+䶭i燸2j/~T@",<|0h?iM 5.M-]E{RF2" JvBf$B .KҺn& "bQ*\6-}H"Eԥzo"۶SHڵQE˲XHB$Jg{'Ӓ{yѰ,&~r]Ws붮v6~_\?ӗn}~rmݶqƢzy};u~|Oqy![SiڴBݶKMx^><1m0pm\ "kS~x<)Bsږ֚חO~/Dv VXgFh*0sqϴ"tvڞpdG@?(޹Àx7l0)3mlgn62śqY#%u9LmB|說c\n:lK' pK֨tʀ[cvmcXoHeiz0T}&ڴgIfvT%NExŰdLNԞt(i00Sp33FJafcdtU">ϧE*E ZiYaz0UU(j 4mK5FPDb.>gjw9utJD4m ԭa|8vz >(#S"-"BF …\r]LJ&燮f׷!msו>nO{zHw|R k"ikzB))WS߅V!#a/>I]ȣn S]õTQd KNop|U٣1@1A#/ tSuAQg&-!bPoL5Q{".%+UJm?c#Id#jUշnl/,grHf/KbdeFAT-zNx[EF9r}<lj$l:;D(;"O As݌ywȠrVA1wܼO!aఏ$xrgsn$Abd4|%8f_$p5ےvRN8,H : 玤sFt6[`pӞ`8؁qO`98,~;F|Mpӽ"c) 1L92)P2B(I!"X<"vFS@tҭ\f$0z6 -&1wg }:U=92`XdنxIo=O>]y}9[iʞC 9G]3! D-xzDDaD&֒NZn&:7F{L<U<+l#hf@Dz"tUВ6B["CM8GDfnf!@#Z j=<M/ ezkhQ2z BgE4(%`V֪AKՈpK4" QJQLPr3w`]jQjTKND-*rZ WRK)e-eݚR,Et>R"[ lOQ X7OTJ.*[ͽY4- b+w3kϾ PjeYQ˲RKV<̐mEAGZ%fMᆴ"Ň'7 a`|痗qi^ NkMȺ./޺ݮ//Qf wO^<;֪q`'_|釴|zX[_.Y\ ԩ지znXJzUѷִTRnvݪrZ>XX?j'$>#[-o+1XrSN hd37NǴFXk8QҠt;U)Sb8%ʄEFϳ}q(!toSؚ!K bxnC`\,ƅ.Np$."y|I{@U~+ c)8m?3)!g_D32Ý1v6qIp!f1#V $=D1T.͹2%?/}|b<'2~=049"76A_;dGFzƿ`"YB$K[uPDp&sL_0G+!8O^[tknmF"ΈxlúvZo鼾{<jN|W+K "Ndm1ץtOOϯw߶_~xRK)^x$O7`QBRNKt"̘{ 8;H'(0` Hi ƽKCenE~"uգΉ{ Ώ|#+C&JalIaMz*op8ޣQs& g a6R=*S7v$`EGndw:O2F <y[[woPUð}לoiL^?IT3xk/2׾xhslgXf̨܁1a.>;ϑ-OSAfbǙOo9d%w_‰ ӵKm Ν=yxx &8)q6 {.%F4ɹO0;;ʝM?f1,Dlfb"тӗVHAuRͬˠ8\2(DŽ>vYJi]0yAɖn$޺P0[P-Z mWkLMRl[#TBRDPBbĩVa\׭݂ZIIdl{!EzI,[CU- 9j<,WRaJzju5Jnfupuk=ӟdk݉ "{YVuks0 fj.B pUDJ- IբbY@$apwW0\ץ:]܋#<*Z*#xfAi'rvs[`UX?^>r>ϧjf׸/7zz].}o?l]^k#zf?p*ONڍY-j_KǭuuOK?~zZ͟X|UR5" )"{OO?m|nas]xmɾ=ʂD³a1{IJx>@/&hO5*"US+B"e}Ns8g`R.2wX`lc_ӻqrc2%H0/;"[o#Sw Nl'}u{)kD3eוu~2 `?/uI_O|tκOO1;Ÿ}U3D`.ܝHj14?CAO=z;>jΖ}>Zɤ'1'idrSU5r$݌C Fb"H:Y0PȺ7=/Gzn13lbxl2 ӖԈ8mϬ9DpԪb敚%< \1j1w~yhXg8&'kՍP`.{݂ uXxr^J@54}ԛ昏`=q;A-#Z ZN[w$tI!"tJQQhqE[ (% ޳aZ@D]k xw9a=R*=?qdXC <nv@odpn *Æ Kqޭ.R"*V-ևդz܃RU`^ju 5E53Tum[ ()┥ʩְEY[πq (::€*m݅$\D bkF벆m"b$a8YJM;Ё é"jK)E $R, 5EV޶vzX-Uka7Ϟ|$ElbF;, <,*amEjY<,BJUmcL_pDFHe! y P9Vv5Bվm(dȎi!fjD=x^kw\/OK=N*mۚfBy)ܿQEKmX­kst*g-PXi~][_|ϗ[ _ۿo0uQ" ,eUխw n[Oϟ_P_*~}>Z9_hx "$6qvvm7aiaL|qlAmd=I<6&9쌐tM`C]רb'9,b2ߜhiL@:-cGG\ʑےF^+ ٣/r娐Η1}i:@N9t)zQ/CQA>ԮwA(G-ÿg{^_Sߦeu9[<&P/xZ, ՙתv'Ȱ`>6Y2)dUaOޯqx߱jVsnqheDlfj{Xa/T"w߫yPw{&C#'ƳMB:gs a?_1^R@|#@vF#賚{L#u,7!;\O{#?(:}& OfZ' e IR :wAYEn@]57)uD]T\EF=ýQ!i,%4QXlkiUuYm,%p,ps#Ns)!qnn!E26xw h*%L5*0RϞG2 B3ˮNF*Ou딡@ ;2éU(=kR7[Ue]Ӻ"Բ"ֻn`-%euўnlk)"x۶J,Up" KQZnIVH0m<(kGH^nj({)UYj"e3" S}<-nm)=]3BA|UhKB"€#s6nۭ"`*H7oD.PUefݻyĈ҆-󀃧 U [ TJ)JnQ- RNZ7"BffX *Z.b[G6 k=zؚo:,wOO?/~z~Ztß_yٶKz-" \[~ͻxzzFv^Zu/>_ϟ>Pw=M'*9y}t 'ߪ$w^u I R CI-> CL{argonuZccDb٭h{0ị`֛NUw '>ÜS{ǐ|'3G8ڝMgOqwI +r*_mJGf.=3xoLJ R8yW0TAߎ ?\ S g/y*weŘۙ1fnfzWם0L򨡥,<;#}KQq(azjSLQ(D))qg<.yCwoQq{+$<8fxHsLr򯗷nᎈ  .Z=b*ʠ$ hբa-J]*B{UGؚ5[/Yk -=!DUK$D.}nކTH%Rwek9xX[uU JXDfi-*ͭEjAw'O]!%HHZޚ {6 nK<;EA EԒ0j 77wGkm{nVEDCPKfܵZ\'@֣{nmۮ7~n=B[?d]7k[k#%H4JḂ ;Jv%H\@[+RʢfHX7ҳ4 W RTe]Um}۶m֚`~=H))K]ZRRD!Rպ., ֽ;N˲ۖR$n}hE)PJhTJ)뺬t*rZ4ov>///mo><ů\[-k!E|r~iVJղ⛯S}]OA͢Y8 u2Thxko[:j9}|~ZĶnB>x vkCm\?k͓q pqXاqǨw;J"H'$!&v U w'. /p(pzf7 ԱcdXRv̅ad `[?&w<=}oGpRVdw(_ {8<L;~g&GxaޥK,w&'DU纝R=}gJ~㩟gA`û'>!f-Nf8g. $ H_x1Q}ggRKU^ы/{BGtQJ1oFa&v6wj3Ռ!"͏c- c!OM8e{4pYɛ;T>Y9 sb0#JK =ݩ5R-^ب,e, ͺ3CR"y7!NUG=RZT#uZ U_U{.f$ӟUd@% l6C(`Y2ܭ[fLK&$> a𠌆!{)eJ#It@HèaHּ7.h(Upon˲`f5 l#"l$YdtI%aZQu^DUX DFD,ER{2KֈaB*=UinUiLp3nH[kMRr)2ֲ@!DU]EQu 47n[3֭Rʲgj5[HmJ-ռZ 5ŒTy8pܬBDPÛYD-]Ka)koѷy+Oku/mZ|>qLo~^|z~vkVw-u*.|ӋD7_G@޿~OR[i; R~|~mzTIß~LQTV/Us|>~raZ u]_.v^Vq[l[wb?}?<~[<~ F%wS@L'٨j.SW0``q31?<<2>`yM-)!3VƏK ٬IToi͕;Pf0$Az3}gcޣӃ pOz{Uw%TEd#ɔ"=\&S9r&~Ц=kML&s&|m K}.7&{9%q^Ycf`@b#ޙ9nqh'mD{쿄8c^&ÐKWYsр5o'nMv;*cv 6T(( vlKy*a 7ü1MO7m|1ԙ5rǯ1HX݉CL"F>I=a28}] P˨>&ڎ{Ȉ(1:\2gy}f& lxƜ}_q_~^_Hg|M+5UN5kd")$ y)U{˨nJ2HzF!!Jf0t7ݢw3=TU V(u), Y)ȻafS;Td,fL,[$1j[7RpIJ&F4?F.RItk.^oZ3R#mZ*)'{kV齅 IE 5J娛VQkA[0@nٵY_n`QI$mnAЇ4a.Q2#4Di@0ݻh T{rTodPt'"!\%!d-RQTjͦВ qx:?`ûuyZ*E2AtzVub]= Kt~hA{fY ZWo޿\SG2"=n͢.Jӷ[iQ]_/uY.Xp^o/߿rZ_/OO*l|:\ֻK//߽-#,%|B֋jQIǥHjy~yhNTU9#CwCkY5ͻrEskaO vw?}WOlO.s>,rqz]K:SB 8s$JӨPyЈ*7&y;;XK樕 -~FݝF0H0O~sr)б TxzQ}ޟ;g?ƅ`|Do NrbɁMk_rtم?,K>f}|uQpC̟{:' 0LYKddcqn~ Td1"d9s3cJ6I8E>_/QCG3&#lo>{'W:u{$F ~VUgve??][jD]qM}P':yW]os#3\y&#;el0'YS{zf:{x{9$Kɭ_JźZ$n5sRU-ԥ4d޼g5K$F6i"PNp?p"DfA:3G'Dd4Ӡ#譻p$Je,˪Zqy=HU5[[*d[B֪{kֲ#IPYyo[[{lm3CvUdM*ZD@eT*KUf"e倶n[w*ite)ˢZBjnB _ZTSsn[ Kj)%q7u9$B g2JbT?_^]̚6CDVBaͼo.|Rvw _"n=<̱:*gxRV<^o|W^oBi*@hYkJo7_{~y}y===uu}hǧssx(,ϯ?~~6~˯OEP$ZKYe)z,xZ=N7ϯ>~~ZEXD3{`@ns IDATB\'gû$y3-Hz %wd8iQ3`c8$Ld{2em8lcRcҍu?M;F]s{h~~Hn33DR S=4ٙZdRP2˹a]ͪMkRt͸Ֆ1O?9# # H9dղk|o1F?*>ޜ\Lt ͜z}aϛpDcSdw|eT@R}^NنZ,QfkCOcp\A}9>r0xPO>vrH8B(/p<T'ٮ{9Dy0Ұes&`f{g?1pz#꼛pІ_ܺ}Dz6# ɶe!pB :ف! wW;n/P PwUU>7Kԛ.k0WR:s\hf3QaGXRj)@!CM&@a)*׾!A8ò <#0#k^(ٮ3.J/hYYPa[> Hhe-(o&!'F@naoNLN˺ufjBH]:#jYZe(mX<cΜ"%;]ӻL$k]k$l6-RTܽ7 PYQ,dBpWd<叀tD)(i2 =Ds1zx hlUxoftx |KIof6 [ݻPTTUEdm{w) 3"dDZһZ顦)Eʸ Ea)/.İZWU H7|zyui]=և'=/nOk|x:_73w WOU*[ZW~O=<}T}\kѥ~o~1RrUڭ;"Ox{T{R[eY?~W[բZ{֯rzX020:0i|'sC9vzᗄu'&2Mf/;]sN&GED...8qy ǎx"DM ܅p\P5a,1cVv lmEbt/n3wNhJtc5]m1W+1v`އha ;O+p5O 76gNx3]sjff߸1lG&q"`-|5vuEq]̑JT=73no ЄUv-5_󡎁Sb٣q:6p&d xPy< 㸖CZC9d:@+cd.)(nc=1mI˹Gv|2&Q}\fn8=x E@֫ۙ*V&,2e.}0?1kk-KB/s;3o"Ta!U#+UTw{z7wXT$Xf-xx߶pˆ`n[6Cows` E.'Ltwj-UasYxapsC/wkf-20Q"d"8@df4鈴(n,[l;&-ƚ,p #lPGЪHXkDhP.=?tz\_?==95wVyx"cw3Z{r}iz^?T-$.]$Fi +$Ef/Rz(ޔq*To_oQ^_N멖CE?>\_:/}çzQ-귌S 6\i5 aݢ2 ǜ3c6>a~w0t掇bT'fMsCM^c;oX~+~"7J&wwͱd5c&1}%88sڑ42͉dDlj7x:ϓ{5f:;7N`1 '2Jm"ih㽟?CҸsC`{332$&BO4;xg 20; ˱ g!E /g!O|\7MO3:yt^D."#5!<2t%"hC@1QxOScgعHdI }O#qr~' +܎$&{Z=W46頜KcO%2'3Y 4,s3O.yq>wTq;nL`zBsG]ļ9#ݖ$IsT#2n==7 K,+B' )sKDA<<{).ޑ~17;z+o{"۷ q IK~kd}awN=Lzs$KqKUOnOgÝoqC;U==:ێ3,c;7 [wݏlH'1`HQ$yݎPEhC1[:r>T#~,sz@!y}R"W b]1էHP ux21WtqQc{`Ʒa{X Z_y ;NxFt l[i*"#|q$?cq˃/*>h1>tɿ<Ll<<45|p O7+EK0k PDE7waJN!"ɝE<8Ȼ**$SsJ [c;û~FP45$A!)'€ Df^0щ-ǓB^sM,Ÿ."DKG2ϤY^-˺4duZZ JIpO%5J\Kx$TKX4X &>%{D3k@Jf5S7V&NU--AR-^ m H RRIG@Rt4,Z,Rk Bk3d)TKH(ʩTA2YUE$K՜?I9<,WxjMi>7biaVf;́0גA4O ZD&͚j掬r.( j)v>qY.!r^ވ s=^rsr1OϭQ8e}~>yuF8eŇn_~LJOW7_]7SJ@TֲZDUD§A,( Qa~z, *2)KZJ,nX?ydg",\׷/t~htcMíWV=_1V gƩu3LN夭?Ԑ`=z>u2I+MlFcJ^a*JIܒ%au5/cp%3GP"3XLXm,Ϛ׿򊫒]3죟 Gթp{t oG9^Q2upjdGfRΡӁnWmb `ssLj sXzۙW?*_<yG_ì{v )ty ]J~b<#`5b#ӱR bt˼/eg*h ;owUѯ[t=z_#/j׋WnZ?:f꺿O0[iLԈ:Q7mӒPq0]ɋƃsdϘ{俫\_Sd3H#*ip\j)Lֺc*BvDd4-z@p"]|#%GP4y@s+gȇOݗ>u|f۹z|eyz<NUd7ӯޞb y S)E Zn&?@-@qͱ\KͽH 0,fBQJMjۈ\WXJf1n 1c#i8pJi6Ծ/1ѿmTsn6Aq[!Hp(Y7tˮ51'@zAEqLR.uU/5"kvnc|l"Aޗx$s뿿1udxڎn(wt.yz񄃻| Ưo㧉ݡ5b;<_|7qbT#`WȇD(B=W=X6 2<9ui  >4{fk:ml} d@A:eLWe3;C-,ܞˢE#CǼ}NOwC+ x{_<ѱkr FEô??E>Hjj}ǯ)qK^q۵ a^2@v:Tg ߋ}`"SD=Hh@IQwBfl-˺,g_WAN0[IމA@tW İI#R*<<"Es_}]W@N Q hJt ɢJY7u"Ud.6|0` HU)[ (E-*[D2 dgfe܌n. 3ԊZj01 S" Md#r)tٛ,Նp&н <);vjtSF F FA I$ݯw 㱚wuץ@_JyM?\#1ISa+FR&ap IgJדtT ه˸# Fw-0 Ei>Mvb+8^>;}*ٷ;m1ILCM{EJ, ؘ:`Ta 05t;< 3u^,;^IėmޅrDp5"ņD@#K](޸f$z.stV]MWuo=$-^L,@6܇iPH4 Z_Teok PEHO )v`i0U"'TKB([ !)JFt10jj M֢'Rrez% d=~ ZpEҬ;$=D Hk E3@T!P04_aKQ"b(A4X͛G(EUt[[ E "Z&,aPbnIÛ[:ނSp{kZT ,BU'9!'/d)/xqibD'oz<Ԣ˺_ǵ_MT7wK|zx_o_߿9/tZ^9N9>>>><=߽z|:_.no?|x뱲i\zsw[D@d 2OORNbXpfVV']̛rpr [ϟfz}'>LNchiĘv@LQP/pRASgmƐ&}; IDATOicQnY캲MFcUF*ҷTpCT}_xL c 2w5v]YʱDݹ;hnmׁ# G 7 }u'UI %BrPK2sc Y+EW 4ؠ@L1u];{OڕpSCm2h|S'lIzD4pj.>p`0LHeՔIy!ˍL07t7,Lm]rX%"ޞ{IgN>G!I{ TÕ[?27G.˲kG$G! =c_^fN]l߸i1cG( l1&,1+'0 m`G**$QlLI޲s%'㚯 `ͼ* CR̚HP-|0Z".p 梅P9#R)AHJxZډJ-"EjZLAŽ@ݻO3'蠶FCi!a"j{J\A#,V9EAa!Rޢ˝"LRbP{3,eR!b2It(I<.́jBZJ)L&՚KX| 賣*UkQ E YRUDUZkfN"S-y6DԚE0XZ D4T- eRUw ֬ysw0:{Z 7"R1QQPG&@R "B@ Hz&=<U@kF-? m yP RN2*,dj`PAMI oe֬Oϧ9>>¬Ⱥ|9Ef=pLJy桪sW?bQEfsA`ij֎'yAkQ~ptYZ plfJ79LfJɈn\s=?~||<OK3C6*?y;.Tc VN]vJ⾪p}Rz6$5_j  Nct L*Ugu9Fe=9>n/gUD˽k7W nxy@a[y]b7|kސgj=lk_&ʎYSU/p^^@?q'{H8`Nۚ(Fуsw<:0yAk!zt> KC^c^kC!s/?9{P4Ie]~>K Ա v EtO0[w4xiP7nYGWPklKɗM,=FOx&+עݦvwyk:u|c>$_~E焠[_wsu/"kzl#F1^nu%} z']/8v1ك_GDߩN"5GSdzEO.)TuqB-UI"5(:d_"("[Hf*SkDtLOtd J[))TG[sܸ}}L]0{]%E" {m *0oCY"Na-SDhmETkS:r "aEZJuII&-*u  {3תS!`&"ϋaJ-Ae ]eiZzZt*EUiژtK)N ??~ӷF\,Ⲭm]ǏO=rPn=/߱Bt( 6l7pcyGL;V9~[ /{ hh2 Mtt}_!t{#_$iGt'{ap rB:˭+p}7n,;_qzxLq:WR7iF0j<`S>PƍhWH%{RDe"E "Lǩ.o~z;-UJ^4!1Jr6q/:\PeLM[5661vmxo(}G_Aj/2N8^:%#u]tΜ;#5#L}rk<3}]bU&1`C;,-=r/P/m}}v M3lh9\j$@ۓqOSjnuw琌YdnWWSP G"  }EEٴ<2'3`Nq^b>$ۼM -yC.X!6 t=WBESnl}Jbd2֤RFP1"c1P;I~I0v*TlRK#Sa쁪Ͱ:!e aLkPju"uimugG#HN:Th," T˺"(* H*st7a`QUaz$D[2$ TcI43.RdH-cp(2C iXXQK I 2ڕ#5ϥj*fTxxn-=hAt$i0f܊A ڹk Z*c*J2ܫ )Q #XG7{4a@SlnTUȱHx4DRYû8!@UJo )HEu!,;! իփ뺘n AEwtVp㑂(ԴHc Xh(Aj!jSAUmkk92$=jFA,aj-5YZJ-z9_H‰hFpknE5RϲK\p:ײ^^i-DJX{fYemN+|^:y`|^Ic)_:<̷߽~u<s)UD·܂ϗݧǵ{m sq 5Rqne]-8/'U!u](E`rVUΗrZvw<_rw??!]5!(jlrF&9@\s]̬z!"Pc 7MX&J4蚶Nuƺ5_um1hڜz^=oFeٻ/kv#У e#ZwQp& 1 ՁDGeGŋ髢&:e=oD;Bׁ3M13w?_à)c`02-w[ɦ`b(q}8*&ڈذ3h?6D2,;^k'֗z"iv9v6x/MCBQ5:a`Ԇ70rٲپ[IK!HO|ܨ/av.} =tķ(NM24bS0ח2ćRbs`"vs@m@WFvo0#~a?FunnCQ=PƷn{ۿAy:Kxvz_DwfcZhA7Ct3m\GͱDV&7n"ZL D'BJ  -bDR)L×Q]3M ")鈖|qY+a"R$…E{袥T-}fњz~srHQJTH 0:DXFWDV"$fQ:xj>PL$ojkVnjHLE;~#UX6 ,U+E &d"l!BXt54 Ti#YT (Ej,Z$wњ[x=CTKPڊ̥ib#ܬ4yh@J%Q! ҐQ"%. .h"߬sd rdyk~RD^ݽaixBDT1ZJY&TLѲ͓VS}EgV`Vy;ebVArWѕҿHa.>n%?!v~Woסs06a.W]/>Ԑ̤ӆFvsHR8hmqI;Lҽ9*#)C$%~u?2\պWtr.H8/.g@Ni C3aL^Ul'>1NómE9`L=392M;kia}-z4;n;ŗ5:7>W7M{CF Q€uL $=yw F3l TuA@޵ܷ57/w ](I% PsEȢJ[agӽW !D3:2JWGUMtJj 3+ Tcdل1'>RQ›Үiqlzsq0g{=9#"P|F|}np޻$@ܚ7O;f7DQ"uqknAӏg.EL1G4. UԢA[3uGds$Tf),@ܐbgdtȤf=!Z(@W?G/">WT- ʠ p' "l~i)*͈=hRB#Vk^9UF0DZEPR F3'DD"% 7sv Ǣ(RSPaw@PK3Fb!Dy^?7p o.dUET&"Ppqb.&" Dk Tm9&^@s{UsJi?@s-Sʢw7f^@^ښpPچ[Ep7aE`*HnZ #D>J ތ Pff6/0vҊWjX=KQRVUMFw;.ϏϯozMkm>LUZ<ڲSrws>~~eiO=u*k[>?n8=/&RrS[eus9"a&&jq(SQ\d>>><]@ 6PZA?|zonOxs}?=鷗}/}4r R=MAs\ ]Ѯ_ 8귲R fžr>w7bKKJ{&G T z2\}^(_\r+;ev}~_/@?k(uq𠎮 WW; U]_غit|3n|b텗Ž&eئ:\pN bB_xkn$>wz!=;H{035 ѳ1V`#ش.$ ߏvSlg;別EV񖡷7m )rF_[c]{fNj-iM/ku*uVuIN C{0== Nl> IDAT9e{\Vv+17Lᒛ$w5q_#|_Aض;e`p&,~[hvȗl0:Qn158Fy>XQ<ʑٽد6n=%^ޣ3%0r&Ϡn*ǎݶ[#{2Fw`LLmȑp0sr"!B f_C@$u@ %{iwHA)@PzyE2Աw,ֶH6䈰֬X_#p}GG@TR!juG !1p47Lv/$("AF@KMjknf.}pHJrs\7e4Ok6k$ %Ѹ#z<=@HZNfN)W+šscY"/4E͍ET<QZ9 C[3Qji=4w 3K:\`mARK㪅̔ J7 ",ZJ2pɾӤ$ԵٲApͼ֒%DEu Wd)qoib9wPᥨ VOUk-(R;\hEpJ ̑^'Ų.|^Dg?yx:g4wS-fx84eWt9UJ}>-ϗW?||,_BD?=?>Qfhv{?ejci"J@)fBiK;NN޿}}Wr9W7OOۣ~w|Z/~s{\eḿŰhZ|>=޽?7D^>zs)C@=3Ab*NoJAsOJOڕ{E6|'sH;؛LRC/kMO51'L=2 t?)׺Wc;(( ޑ G?lC}OGG~زM./Wǰ=) ?Vz]Ғ'f ]!$CGѦ3fu&>:,̮ת`l^_E|vaG9W7qjc 30x+S%{ZCqE+Mw(qK/̻]B0]xچmf Cܧ׽,vML6D3|}f1QqOAπ#:Bw`~)qv;M??+d\stׄxʶAlJ!ǝfUD%լٺxel@h)$QQ)5H8K9Az0캎Y ׀)li@<z{vHtD"_HE%YBpIJKD\pwdDp{s" &/({,] EEKf,ZTUٕ!B`*O^21=D"=nçE83Lt/W?x:M?<<Y,RSjKkRܚǹSqeGe|uJ7r}ri|>/q~U̼|YOKkk{uw|I uY?Vϟ8i ڱUWl9{lPF+E^ v-|4FwEݗPFS l[QDH! @b6ys吸o: +Gq+JrE?Rޝb%pܯ:  n;w^x  GN`kv3ىN˶!鎰(TbHY{t[d ڛ]QAt3@%ϑĵ_' SSӛl_cu{#O5~*Zan-‹I1&DX p!DE*YR72L쨪eѺ٨6kA=`!w(+ q\R4OLo~sIfKZJT]EKR$ O'8JZ 볍YyiEUkf(wdIĎ=<"UՏr  K\Av\B? !9]]w3s;)ш7+ǎ;6)sؽӛ/Wa-ed"8Lܚ j))2w Zܙh"yܼNa-AafL̢ ZSrVSKdtG $&v7` Ҝ*IIքbb7e*"JQ Dylrifu5D0ZC4%ty΂RT,5S)'K "H4KlDa=ΨV= vD&JLaHJS2P[2- f~ hrff.Uf|~5x8OZ,:*!=^Lr,ZI꣛=\>~fE_[\Ip/OOSb_^T|8??]_VV,4QZγNSp7:N2L S4]^a^^ֹtQ}}t4OjV#[|f=ci! :jR';DRp$ oJ$ P&euE{f!{͋Y8jQg"8qX NvoCDeyqlr&cypҠhDD[A㐍p#RE޻lI؈1FȞ,x{Iybް`|@}{ed n^zщI߉rb;{mG֧9џ%"Y;j|5 ,ʦcەvvAH"@z_\$DXV7JdTelu* 7=}|1f9@{N@p@=R+%|?$AV[kv/v6%ww_DTc?֥`h~{mXv߿Cإfd֎99ZbZŭ pfd ֢SX#d{v/gDJLYp[*- &) .ӧlc? i43Sk *_LXXK%э9/}CU"j N0PTHэC#K ![2xhNZ 3%c bUDdV+i`~,"Q0(jC@k`2Y$L(ZLP7aY[RXˌpkP̄P@305 0TR($ DskX-Vfmb"B5JZX"a ,EETD +q0RH#̘Uk $ęY \D[83DTy BH<ѬH{ \e*ZTA V$R2#)>&*qH e+u=H=ܵV#wgZ}b>r.A(Nϗ"Cpw8˧O8+;um͏{Fܟ?|}~,Lj=\0k,{@2+ӻS?=Ss$NɮP,bwbw纮D@ myey\"Q-XYRww_#|V 7,H"lt")2QMsCۺd_E"Է1Mrc G/WAǻP~0<\#RJk/_u:?ߝ,Z{] #N$t^q(C3\_N~Ej}z/wzy;ɉ{BACqiLiBGw\G2!xQ >7X5d qCдA!&c[wl1r7jgޓRO~v77k6z2[;Na_{> q3ضN 7p #29TP7UA[!Nؑp[c;c[m:woNfƱ"DG*޹IHc~9-Ɯ]iL{BWZ(o#rpۼGۈ H6w01<Am?.̩̓gD< sHc͜lUg%Աx:o{mb7GՔ_@=xmr-=cLў@fPpCn'+tGڴaLl`6,|n\rNcԇ͙uO ,g1dR?k$F壃Hw-L-B78G,l%!þ}T+~*̢6zTval?rkoҭs2瀓C?l rA;bt6c\guղr4v$l!m!-v+j]!->6v 2d `䞑F7]ޔg"{ЖAqQnyFsf𿖽9"ÔbɟBD-̒ dެn*̬,_d;H$` Ni)8ٜB"¤uٷ! Ȑ8B@B[tFCp7lY:l`L,Ĥa*E-!ޗ2"Hz6W{Nd󩔑 eW]XH3 '€@{ODDR,I(֢yi-K7Ev&kkݲQk[ZADSaB@)rdTJQUͼyTzhVݑT܇5J)"" !BTNBB0s9@UϒX7h\r N.eHVbw̥#GJkK7s/Kf-ܷeK'XWUUU[THϤp%BVf4yraD˔7(ZcQpfouN\iհEկ^?<|i:=\Տt:-5yr3 OOqz?>ݳw%s_AiiV D c* D57Ps.QFa<]Zr_.~Ztqr]|]||Yw燇z\L|ryplH4 IDATSaRYeˤajZl .AƅvQlbwj)[ldbC"׳l\f1d(0lN(F[y/@~{ -"t[T;Nd7[Ri,vHGIGŨxԐB7:mLrݿ۪}h[A{zronC#;EC_;ֿx 6A?GR> (d Om)j2LCƴ 6|CB2[l J䴕AvkEꦓQЃۼF<A$`~񆼦jp9'/hsDzOm_ٖ'"{B&A FW9(2ߺ0eVad' (ݪ0Jך3 ޚ8ed>$I";<6kj-n_wA"Z lNWa MEQa&`Dlei!Er- P6&8"0DkI6KJ4Ej=μ00kq$iV9cT&v;fJ쭦%%km^iR)BB$$E3IfNs,ɜ: ΀Yk͈UuTRuKIDxNAr*<\D¥" ^ÒP2OLBXp [ښq5Ks)T*s&m?"*xZس0,af!CoN"fAzkƝh*:2f}"Py7S&`A -4W3&[3sq6sSѺ1-y)0U T@pefnRHX# D2oŠuV_)n^^h.|V~"ӫhY#pY^q~~|~w0Mf釻χA}}YX|x53Ů՛G ՄxKf4㡬iҺ&Jǟ>_vrx:Ne)e\_N/w0k2s8EX~~KkfQ%DQQaaqpy}%PuJQ7.h*ExӐMt8awy[̊btږ:Ćw|7D{ z\cH'G5X7(?@=Xk79uCGaNU(>P^ʪ#r55Ǖ2pә# v*A14ڤYA!6^E=n#28ۀ (7cl8 j21`vrM&a 8i_k߅$$(9fጸҗ:vLin(s͟I3 {L-bvAiڽ6םD2anepnN,}Ldԕu0NGf䛹`I쑍^Hwq\;oâ,Bځ'4w2ִ3xpD$ZT фI"5V¬ܺ| t3`P r!oDnDYX Q@<8jiϔo&0&x4 D$ vã=Eρ, ']qDsCLD,*DuYaF,*Apa#ª7IEiZͅuRmmevo*! TL{:)*]k޸*)`^Kad'K%jAY Gs_ Hk@!BXx o$e>0<8[tU)Z[%g7 iM˲*{N&\,<< \̽5QL`]HID0$&e!Dܙكܚ=ё=!Y*bb\\nfN$eAZ(#<~2R#0)"R/PaR%RP$UT5/+u5Vpfr>Zsuin<?ߞ'bԶ,kKץZxmՌDZ[#q־\~~zi.zYQT:ϥWeusùz~pVź6ay|z4NjsoRTZ tZ[x^׵ |"`(,uK}~O?ڿý``2;IHE/ #@„Acm_D|ua8/" cƔɌi5n$荓ܰ. 18U߂A L-' izyy=}ϟ>.j~>-k~zVz5 `hmMDjK5f]{8?gs(W[~8:MzrJTeyeX~Ǘ>^?wZmm~Yny[ɦ#74VŨa2 2ߝƚ|׿ w? k) lAqB@w OA@̽yHLY4OJ$kP&%@Nb@HB̚-N話tkEv3Y =fkLIbZ[V2PQad@VPfMZX@fE 2Qe=x~.#6l 'vDJW\EXuh+E.֬9QD$D3 D#HÚy&0wE W!VF@Zk;6"p 7Rsa>L"©]IS5,5<)i/W0~pz2eY/~?52˵"7?}1ʳym5oڜDygXŬ? @E><{~z8^LR/5.k4Dr]_^R׺__kR=.˲z]Ȥ5T1}\LJt[=/T?-:KB̛$H$ λޭP_h07[6t#SYh[Eqt.nab0d`xnmhKA xd{Aǻ1Vz2- tw͚T-_W_wD ^]1-g~$cMI=#4 ]#&b:n@歇Sa:LB@9O!osNn#\g$miN1KO7ցvJ(h_J#NsڟɔdPHkrG̶s_7CEir7,/+%TʅYs`Rf8 if2w$Ҁh! xr5z ۙi_x Av 1GwwpcȝL. `%¬f<9@μG jDMHQkZV4ѤE9m0{H)bͻ?5+Bo5KK)Uk+ %ZifnnjkD!=T0*ںLyZ5k~][=]@Tt1Ѻ֬(;P(w%_- A&=aC y8 q9 4bobn,HӔkS1sKDI D<9N Zke0ֶgGA4EKQB0xҩjǹ8yc$&LQ X8ia6F4,bry~Տ?9\8\?;N.(Yw??ϓZ[t |Ym}~;x|}^u?f~y-×עx;=֢ ! v f4f%)E'-Sv=O廇o{7?{kv<<}p^bNE_.t(BݬOuemN}}~UҌR,!P8I!TjZ[mWa/iRdum+.Rq|g[:JBrb7:DJ~ 3^b&xo@mqy[h{ R/6{ڪH!y۩_X{ z^4?$}CgoM[iX7tvαrﶙϟя"S7: Ǽ=-+Omenm9޼X[j`'Õ?7!כ7/Bz۱cm`Of]]1ۘfo7%=`KlYnIq;{;/62n1ط Daprn%Gq`jJ'dqC, )Af*\LdY{wA؎to]%5*\y2 8} 4R8c̸|dLmhh‘G<"D;9Bffi&b7gFzD(1fJ' EG  NHL*E:qb{g emEGdK.ybF`teZkkiv*B[0TYY4{ "``52kQ#  G3V݈e*Z$jaVA@HPbԚբe>[>ޠ;<#[ֳ b I'< i, !S7o:Lj&\@i.tf9Zh 4T.eXk4-Bh[PUJh&kdjZ-$ *ܬ\&$*ZE8yZׅX"x8Xذǯj0 W8HD5 IDATZY=կz*|w,_3aww,e_Y5̦yz~yiz>uIBc5#FE@Oeb@"bm=χH" dtZ??.OUz}~VQ8Nz0r%i>r]@pP,¬{bTu.z\NIQDZs~"0IdǷ--EO랏=c?ؑ7x8llӝր™ٛ6(2Fc01DL;9Fq;#hgAqx 2!E8BA:n#N$ogƑƀ'Qѻvޏᛷ0ƌȦ߀ɃK*#=ɶlFӼg9@F(+ЍܒmNݴ(Aphjkr3azoTeR&dTxDDjgDwmYL"{0+sQnpces;ܽ-kD8`U <L:*٪<?T$3LA: f)1:ȱx!p"bRuju,3S!\kky;u<5[3yo}{}}m<{|-5K-ԛ޶m[V~}??ܷ===|uYJ,/ۗ?|ׇ`@8R73aepysX?;w^>|^-{cb˱_9Cb}H;Ύg<59O0h*SzN?}vdvf˷EË>u?@xi11c'Qϣ~xipn:]3X >Ĕ1%4־yVfyʐq|.;Dּ׿b}9ӯCs32.~Cqe;?Q2<4wO&o CdvKx6{ dgl5}t/8+{hpKDO|VCAyjSubkO$@DyjKhvxnD{G[{^{ A(}j-u)_/~m[MdqX,ʸ.W}p)***B@k^û͌mkkǏ?})~~xK-ֿ>\/ X?}][h)e1f٭nޗZm+rޭfAOjֶ)c]><+~/޶ejQȯ.q[~g>E{A)T&}>վ{az➇8zi7tZcNU(UZ&Ĩ;A6ѵ ˜[DDZe- ƼEzJֹ0pβ1B(ѵ1)ܠF d==sL9s0[W$#o?3x$OeR vN;4&c ş{.?'g8*4V00aOHl-24Us 4'T=͕sDߌ^Ğ8WHOM5sRU&F#sJ f7t=/SnSIna"TRɎO>ctD9wg̣ GJc"3d/ f-sr`SzKo|RѾࠝI{dǸ=YSP)%2anfD?cDGEu#dNe3AX4`"N, a$Ed[;@|kk;31tKaEoAQDݭG0ׄ T}0 <ȭ'f \)l6P8ePD5Sh5,Jfֽك9͋=LUu@Ō%#Y /恭Yz7S)TrAN@NAD20PA޺!PY=-œzd8AUɊ`IdA٣q&0ge*rU03-: S E#83oFǺ-(uIAI 0g:aC,/(R. f"楔0뽃DYEaqYZzus- @hq7h&F"Өsr懪Ki"XRR[ewk9D[kbyO͘2U_}_էmk[U{盈<^^TUFʲWo,zoEzyͽ]aHRZ۰"\Ke{vol?<^/۪7^n-/OO洶e`mnzEŬryݵHͤ0 ֵCTE0r)UEl׈(xoQ9k)=(AQTT؃ 9Rx8QUK-`6Kc!01 GУ+{0yQD\sĭfцEmk"@Kqaj4sw+M#lB`cpduof,nn6# NG;T3\=g7=3Hm*7ME-f)pA@١@(D"KkabKaEemB.U%a5 **EPUQϼ7R=90A+͝lA(*XdFUTUrYǪ"(,v7G'Z۽*w 2W})5D{ϯ7fv-ݭ[,E._^TZ]p]ƻe_oէ_||y~P&֢,LFDl.fnAO, \DYۨ]NLnD^k"EdMZ&_7u_[n[uzmpG [e]W0{Emͭr)7}MJ= `Wa뢭mRʺn=Jn΂-ֶ|?'sʶD~~G,cOz uA hcʁW>hM*| @_h, {4K#;XRr4e&8fo0àw tz 9s2C is-q&SśV 00LC̰%r{w/s2a8F]d8Wӧ􄫦2a2sA'M̙ќuӌ_o΢7O߯C?}w=P!}H§8N0't7 < P:_V#aq9&x4]w>uȤS=QWkƾMAGPNguS tp恞8G9/?2G&dx\_ٕHo'}d"lݿ;'{ᎃduPbs"k)fvlCDwZDUaEDrLnR2f-meWLayYN|]|۶wEaݚ5-ZRn$D@ŲJa8ǃ`ܻ ږj9#()BU hD*3D,Ur \*ue 5CԠ0a @ yC8w3n"U[K]TIWFR4m1͚Y>#@Ѵ$mDZ X%Scfn_u{ӇRKQlǠYk,Li[C\X5o,^<=,۶Ed޵nRXTxkZˏ_n/çOnF5@OQ.Sp&z-CxTDKSoT=1f~8&>&HaHQzq #gМ/gE Љ5?Pu^^337X04"Hlo%xث9{Ȏ}w]8Mi6l6=˜ChBL_ΐgۍ/ %$b#::3o< 2a>*J߮i:Nb-Xfy—t8`M(2| A<@1/0fL 9؂}dۣI!!01!I@ }^Nӓsj 0U z\DÛ_-KϮYߛ9>#̣3xZ9ZY IoP%3!۶-p;A W;3,pRVe)2)ٺZʇzPuk"N#TRԽyPBALADP"z(BXT@9e%-$TV&@](DXץVK/`((^UjMC8w& "ݭp8w,d58 URȉYw1-e1ihB͝{޻#%;Yz`y( Ua0@ǿ%'~pi L1+1t2}I `!8z C7_*@EeHGed1O)|Ss g>u:΂8:I]3PK~0J7듍>a8/{4C]33::SFovi",Ĺs7|ޛǨ`d)BDB*ti\8EC9bu9D?4qd'u~y/Ǭ~=D{x^tϿyHev∩h6 ŒL?wuY@ZoTFfpTSq)%[,ZYg#^Z.,]£o&umnp)KaZ[fdCPALAANτ(DDX,̻yY5u/ 3a@A4>a9Syd6{ݵi}޶hKuQZj*:ghYuU%rwg[*,DaTD-ͺ9ndwn "Y!y}4%<[VFn`PkYXȂ"FpBUI9D#Zf٨=[w1:&IMl:8\%Io@3ǰHWKŻwwS'G햄<*9p.gy0CTC.17fJ0Ǝ#8v+ @GJGv;={} @)>BNw8y?L "]uR-X3/Zɲ+'`0V^۳mZݼ7U/-fr[oW'\.EªZnpOQ MgUuzAH %W.)rcllw7 Mrv"Ok37#Ds)RYWc7rr+E g' !`'VOnE3ALK"#<"5bsKýw'R"07gqxmݷm˲ۺ1!ZKxBYփU"$Pس+$u(j @Th)y)A(̛g f)*i,aqDE Gˢ", ;q]:3g:oְ74FU!Dff[D#Pf)ȻrQ͂jfn"|@ MFݭ'en&* ϫxA0Sz[둃hMZ7 Co.Ek2ֵ]lcTEk)ǧ˧凜?}}y]"7~֚E:3*ۺfR[{2|pEiFDZk@DRDC"WN ta7t@UR$u].6v7Vn޻[>DE5s0 BBmV2Lzw3"`JAeޜH-,~:X"֒ed9p{WGQ0[3QۺQ!$4g Dd}ͭ?[aAd٨BY$%`" !mwO Q>Շ{6N RBb%;1sw#fx^44 p""0/k" CZj}EaNMUWRk8e ܾRZǧ]'~zX~ZN7~ݻH|߬>~N|=>\m} KբT[?{roݙKφ{D"@EzYjx)R-ny{"h|x{ވu3z[ze9ZvDu]+sV7ߺn#(JzU(޿t"&w\n?nA"d0#LB6ΩfNw`_b"wބ!‰{2vme|gBx(?xwN͡4 :CIH]f`rI06$ڥKoIˁlz'< >~~c̘O`v=@C% bA(g4oqSH d09Ho/qE*qq̳,=tBT'|z=bAopC ¾L0fҺn$?v{q!}C5|kADMb"rD8q?7uB'q|K&m56k09oͭ}EցHPYtO{2>g;#1`L.s㮑S+o!od k[$EÌYT JKʼn+e<<*l߽w[X3n=ТZ[s~P/*` ܶ7Q1'}p'BTUfbJG$J9 ҥcOF2"Ue̙gQI!ǁWu)@ in#~ֳh_ˆl'EJwfD`F )D+y@DݍZP 1CT;W16'EKJ[1r_; 29e_G@f !t1Pn <yTrrH T̬"BL[D`&E{hQfN$A @qXU*Qa,*Z\+"j*gF)frBXnD)7ށ  UYR/K 8Мz 7 캨rp2 ݬ!UEE-% Cٙ𠭷R+3-EZ¼o>j?駿|}!eR }{ vsO9]j}^yzᩪ^rڍ>}%V"ԥB ޕC#RKs߶bkUJ}2KW__m3#6 gEK-rY$/tgTxXu)E>9-"YjܲpmMחZuk}*HzO_?I(,1[쟌lÌ!Q8sLay1s'6(:!OxA+o2񧘚đ'bOcr<1=@Gߠ73;$.E@QW!bH0R2A ϖjAҬ/Y^Bq(߫pyf @ޙs^eFLErnR&Wˢ7"G H[ fp&=zzJـ*+D2"VQOچ $  {!܈#=!j עv7f**&hQGy T ,5<”I 2bR8DDh-{H Q,< V0h^m[3Nڜu'LJ0u IH,NAe**l P!G5'</@~=m [zwWfU~zX~|zx-c^h—/Ϸ9"{BRuYn=.E/U/ץV=VѺw-\\O;o> û[,>x/u3;3K.w(5!È­+#}En̪[MX݇.ݻm][_.Eן>nj/^XP*Oy,gG$$Jt&OtH O4M$=[ dƍב49bWRf~,>qbϦ Q'* fAӷoЏjcza&Ȁ\7g']1Y9M8/yG:_((4gWߢJ/a"߇ c'wr;6nY5 X_ N M$:CNxSSرϻ? sOMEEeqyL$ͬR1&v x`G~&W=bTh6"FYCHa APbS 3;yb߆ǫ̑o϶t!8!顁䗂n>9A^#̌><eYmEw Jk IIdv[vֲ㣓9,}g3 y 0[7"unF$Xp/TK-ZyNI q$Eﵻp# rTUم#ug* uE1TKUJ8NBZsE0t C9Zcu7&)"*u' 3B A^0"N=(ua30R*A@8E#bf"E05"zwPԢù<,1}Lp+aҢH33j^ ra{+QɦlP=ymRª``ۚfVRT R{P5"բh3o]DZ60wBaNof"g3DD&433Z4Uյm_^-?O_[~}e!ȗ/ϯk"!^.%u^.u n&ZM "()ڝE _|/_Dsn(=<)ӯ0"n0ݥT1~5\EroֻYz7x\eQEU-=ֲu_}T>\~)~TrIJhdL@Dk|镙9SY>8-Ӟ`.h "e]eov$ T {[}? $UXQy/&Ȭ 'Xv׵KcAL$ C"%F:+s6{Mv{(za3r<=C=vyPHojBzu.{&?ӑA؅~,ġ'H,lD vc뱏{(ޤ6?m;<0DFSO5hCQ6~ziA4z&2"{D:{ 0gsrSogUq{bZw fR-Y~&PW.֥rdo" mںye"LK$"Z$L ^$"uP|UdFb:#t:XfaW[d C/B2 nV C[u#nޡ*E3"Pʺ5k=Tv𞸧;SxQPܲ@Dpjy\r31g@ w* f. D(j) (821)(`;CCPOE DfY bpΜ:팺{^R}YA@3͙'s3 X"5{3qfu!*…5F$YXh"f֝ZP RF{ŋ"@>  kw#N(Dn[$˕63wtusHJ8?փ(.rF5}SUY `CfBG@ =|۶mU2$sCi M n@jSNI]HL5skj:'r]sfSv^Eǿ7 \rXdzRzsw8˲w۟|YW~cvY/K;_upwa#TS.y֖*Dk3ȇEf庴+%%I%|뺮kG0 wי8n'Ȝ{N$UYӱ&0M[kM̉nzmROCEKog#,) xb)Oz'+,%;6;h獊yqWUj,D[ՎM=jmqZ&RoxR up;xTɁK h@o>$y|v f md8sě?HbƄb(; ^CoxN#sŎn6vJ8e{Kݓ^mC2 ֻ󖣧=,#<d;J<!;KCy+~oR*U c'&3F b Uw{ɢkNIm' @>~ L͎OmD~^2XBEl }T+,~*{9vM#7aY{~oG}4Kcش5K>:ynƮF^</e!]Mspw39D W9gf;D)M<π__^-x=^? ) 'b01'akfIdw[fp%甉9£fnd ƉݠHB0VѦ3&!f\Oc} IDATIDRBmp4sRERN8T(%*)-F/6n*",DRؼ{ XrŸ$Dkmo7s4, sI뺦RݴI8uي`k3ww%$Ir }a4u=9Y_PxxK/̂VZ5װF~(Rrʫy9K^e՚ 馡3d$nUa(-8T[Ji]V@fs @{orpRCxp g@S'3R2R&7Q,%0A),D,0 ()ݕd"49\V̈́͏s"aa[؟OpbubӔkDڒPb ; s,Kp,U>wï)_/>^.woӟ?9/K_˟t&W x>_<};K^.K &JL\r$fjV6)"b̟NR2IRW&qoMSRė˵r^c2nI")%`fN@9ea*0c,wf)INR[uv:9Q9_/ez]SΗu^kmDN뺨;'~ڔ$_KiGZ8; I+D->kyq=ve!=1I&-qCb^F@BN;XEzmBX8?;«r}~n@q:oӃLhypf`8[G^![akֹaTo-^N㙽[8>n9o^¶=2"DaA'み1閦3Kա+Pz?[]VmIPwDʡJ6qq \>#|qahi 0R/=]&i`0311PrN"~.`ijNIHUk%LZK)² 5ÇuYBI][KԕT[ldUܳ;jmW.07pyw.@1=#2;3MM{P.޵!Ԟ$ WR]Nښء Z=I!\n.E2A >BDd-S818!4p@m|6`&fbv!͢KTл"aan&Lɺ7 Q{4Y(F$7iJ03a?ҴbV),NG DAnDRxDO| ;r){9ME8fFI$Ry>ME},9rU3V(Tզ$RuE;“4 Y5.-'Trb*< ̉SL=6S+efK ZPTR-UUHnڈ@k9'&R',98=joPӺ6Uc"hLk E}aU;IV j@c`$05*Dܴ93{b,l4eQSDUUdMJLA^´RT̄ݗ\5 fY57G.S3cPˇw|;?~woz]NL;]wxa>SY>+OE~x_j%ԝLn^Q.L`zJ몊$::"9Tk*53w`IqRks3&4ͥj[UQX2OSfw5jιjPVNSzf?@u]kJp:1\Or]QciMfZ=>Η9ГzLӷ/Zu; ?W%qJDLn0LeШ^{Z65 F.{jA[)7m(2 ۩@ҽ;Ď@y`_ﰚ66:/v̴8սL)^?8Ѝ]K#] {AzWEl @C%r+ceN{G1zmO^ ߀5wanm2"7!\miozPb;=Co/D.a8.7d`tI޼<JW<@c>Y"LFjfE8[mb!6#IЮ3Zo y^g mGlԝjla!W{:}#η#{K{L`bkW(_ٳ2z뎁9w I͝Iܽ9 $4%奭K1fBӔΗ8BLK"QSJňsN 7HÕً$\]q=n@{ȉYC0 'wU-L^cDŒS |(E9 H&f"X$Qc[s3#r9z'JLT%DSI WSK)єB<*BH.sNde8AgGz`Fn"r4$DX5['fm))1WU# 3ȡn 5ecXx;XU|Z LI$ڃۉe8\SJ 0UDkUS2oG͐虔ZUe9N=& w7P S"s grse]z۟?9'ݛONo_>/0$ooRR9Kmv#8s3<E\~,}yP?\/˲mk*(IДSN|]kdkսj#p3pča.M ,޽^.ץH]oO?]Z0r#PN$"rដ!ux?挜dYVpzTZ|YH^eY+˲ۛqJ)r.֚lk fiJt+秗Kry~|%?~ZǻGqеɛ4P{zW9_ȻONo/6|#7$m  *nFQT3x$n 2̏7u@N;ih ^ @ڗw)1<;ܴ˸N:Mͼ};|(z;ư_4tᡴ1sYoz;sw]c$.mOt#68F%ް@I}n^#phԮvBmt4MMdh ÍEģm921l\;y&+z ھG;}:$"d82  c>Fȳj]g(~7bTX4B>}7w=Y{N+2㿿{L}Rڧ1vGg1k=w){fP5(e:ݙ뺮rn˕]jF,QV 9$CB0f,x 1irr2B%FN,R w0=i͙͇"i`L.02ٱdBjnЬDUWm=YޡF@NKţq ̽YX|$v%kf(@Ю",L!Pw.Y@DfrHJLִiScfwo`IiP 3X͜[5hNPsUa<斓%UMcFB֭UD圫BLLֶVsX)ߐs J8atrq3Z:\efѦ1JI) @NB^[S3W55)">Vܕ89lM $EX=VӔ3I$I8iDMt7}{xVkj{N#o_2A`orEJ׵]uO~;ݟç/K35{5怭֣\K?Lm]duN",Ixj jvcA`Qm8c=nQD#f%z`よe̽7BiAj>0{H ҕ{u7G8#ctru"'c1Dm%3o'/WD&-[6i71`C.6D#0fw}G9RG#Qt#9l zn#~¿sj+0OgI"D̜qsʅXnSRӔrNf.Gg5 5meϊ e$]Rds&fr-"@HiEFn€HPsr VwO":9I?nJQ?2#jD5;J\{ce2ӜH쎺e䞘Ô4%ka^kn𒓶"a2Z4͹;ִUWcDk#&F sJD4 BߖijlDEMD>Ib! JDRI4 J6udΉ^Dඨ =Z0;Rba/)V>*Yi13"20pU4!Ot-DdIN= qӔ@pbRL,B}8`f8,58ȅ$ӊX] NT<@SR)Wm!#ww #sʒE^M\8%#ÜԖ֒eASc$dz5\ryeJBsSR$r֏_NTYOsSxTrH.9cem|>LL^WZM/{w<r8fִU"?N4;/kIr^ՐY8/9=G.ϗoO{ɓ*{4i1ФF^Gwc&"-mpdp5>[ Wl703 Zv6h?aAk8ӵ4ؠ"o8,nw܈stvЦ%=j:tR^0n >{b=ߣ~:k!wWj4۳~;F@1(MU|až]?-o]ڕ7NwǩϊCy̩/."*t?JHx̞lp̣thիo+V~z؂B?_mE'>qȧO }3988GY?ƳG6;v_cxkĄ]}9a:4?J 8ߎmw8Lpb-@8>Fl H}߿.@;#1׺ÉAj]ရ[sӔ$ab0so^Pj\^`f,10Ꞙ`.j( J ËPZ7PH0OfZ)Λsy "Cnݻ !33Kk1BRV+(ss࢞%14ZP;^WS{ĬJ0< ZENY̌SrbINS"YO6 $P&Ks08̉QiaRX@0W%#27!f E;hl}]q歹0JtYj/#"v5!TJL$1W7'8Q@Iȅ@Tݲp5d7fa2lrNbnBFBw[[T[9%I؞p֦iNܪ]J?ښH,D\Uת$,-Ոj- rXs3TTdJ֒䦚$(ujzŒ-4UuZ;8}\ֵkkOO?xuY< emMaLei\rjB_FnDW˷eiLJe2Mժmm`ba]ͫj]soZ)Y?{jLBlYu]EɫYmm\H((dxtHq^%h>TԱ;(ηdciN noْ[ϐ3~ IDATCLb 9ca^%`(>^x8uHz%Fun9Nwla D`u԰FlՍ.rC7B+qv@Go613\uyLDn<`KG"UWN[>2W9[N쎹+F{ϩ?9^?@ܚALN*ʾQ$pk9PꃓU!I2$~&˺T]3GV9gKqZ4x&d63c $HvDR<4fӡ)Z 1w(4pmp#"!BIDfFȤwTO֗)IdJNkme18$%),]dm=zwr=}[i.2N6-)q\^~.dS4# 3LG 62{O <|$x٠-OI"SQ)9=BLPu𣋫0ݶQaw<1jN!aq_Îoz}g{W4oQ04b+ߡsnz\6y;9Q&aA5n:^*5n>ѹp;ڙP˘R/IL1}֍%|߾OH 8mcwtu?noCsȄvvs}w}a0HѿÌ̃>E^4.EM)W݈\c; a|J֡K(xsVaSaovxLюPIN#82{Hceo8]I:}Ӥˬh ~+|kgX3KA)t63mMp]$eY4ɚ8%UadDu4p3+YsD`uXt0q#35$;Cj\-" UaJ"μ;AK^f\nB L]X[" 'UWs!J97!/Yʔ߾yHpHRy*/ X":)MKhcC2#$I(iG*iɛF'Qpx"0y462;%ijps VfB\B^DRB(!T%aa޿Ƣ19EsCJ!L6|&"VN)YzO+2)K (3%eުA-ښ̒Ÿwm"ν=;\ݫEnnDt^?!NN3MSk"0U F$$d&nBIY)pxq'I̯M0'.9[I݅6Da݌k#\$H2REhT[#Ӈ\ͧ|,E5"0˯_RKm~x3K&YxYӷy/6wo_Vm-l9RNt]afFU0rNΗ{k;Z̧u|BѬp˯ϗӷÁQɩiىjK"Dnr]SSj^A$Tsj}|p}n˷_~TqZuY֩fΒ/uY \|zq:Os>y9˯˿_JSL0!K/:MeBd#D `* f T`5A !zijҦ!iFWA(To7 M;_{bjq6Ʀō-.Cѕ(|7+pK'>m7isoM;6݂U`!#$npqfהz$CYg+}7 dyӭn.F܃ WP T?U(QI=e$6GG'hz}y(y8uSC=J]X@w'xZ< ݵClɈvoȲkݐQgpK$yC?ϊb"=Nq_̻c1&D!cP+d0P58oDu 掂Bn;&65WaP W3556c)ᠦ<׺TEg 3K!w4kj,Vfar3 {拆YhJBf9*jkj4r$)%uU .KHtwSN⦦pC# "r:04()ekJbT?{.,/5*֦zʡh]5Z+7u5s4 k]j^NC’N??=yz4~3=Tu'ִYp3uF)LS}\Ӕa.-kj4p: fyzΗo\LyDSe޹5ʴfo/W3O,|y*?y \N~7i=B`0n 6!y]zqÍO;YRt8vJq8TdyPtc"te.uE7 Լx{M.Up9v इ"c e4>#5p[glkvnC 1$4mu *z_gCݼioa!!~ DcW7Fa9]ov8i~2Ĉj*uh"I-69~ rZw]z~tKVs{ I<ω,N^IB*ߜv޿70)Ôum+a\JkkEG`TkO(GX0.1!+CC,]%e5sq9.@蚴I05f QpN IBLLlnQ3;R%S*HQîKˉ 0Ηfpo;0Vc$$⨪N[ cg"!c\$QpJ3R*d$D{6ȧ9(8DM˹$v(rY"N "N238+W38M]#T ,9d8.P:ga&T6%I)k8;5SI_t315B,:岚?)t`rhfRS$(z*{Gb5jD誾Gxɚ܌-'Nffkw7@7!wr63f c5S<)6)5ȿ52$ Lp;ZkKL%ZMF1Ipef;&!i%wq|.\Vf;YzMۇeE_.|y7?]4x_uyOS|8$uQ3ZH%NMw"O"LrnZI8͢HRr)DՕSC}&_krYIj/ϗ9r^*|6Oye]y4բ˵d9Ӳ,9II~;|zV)O%ñ\/zwS6Uwc?|]Vv:ϗE_+˷L:!:s6$!CryX*Z_|7ωܜEanIVae@6 YBAԝ64{ L&݊pt* VM?{ OlLhF]ΥnמJ@FZ/5mO!ݭ*ϥ"\GTb<|Yy><OBq?~]ĺ%;w;d ǻѧh-bY;@U kVC >~p^M_=z]~mrk:%HɎ f>%x?\_N¸;Nks'-"Ңuo͑YZ "{fNQS-/kf3cj{-KoLtZUkE"WҚ2M¸;I zw3BZ+:?2VDts[k!2 ND7V9VJ0n}!'V=NCwϝ%_N|:?>ۺϯp8}3iֵw 9-sm/ן~k}~ď` HF/QEґR#b Yx81Ѯߍ]:XC͑9+O04mߊ lE\4̛{[WU1HؑGPVԍ9x < P5\q-QGa /PxGlnp?4vh~sѥ%rL1#r]{8H`kpgt7 ux#Bހ q*;7Lk`CVc+] |/ޓFH0GaiH-6۠RMƗ ' ]H" >_켉Fձ<|#yz]XYZ+" nuԁ#nT{5X~wC2kĘOqf'i'GC"p,4a.o=~3u]!,֧;Q?ʩ{ pZ{,ޝ"EʀH/8fR"YR؃{w[/fn,ZSղZ,`zsc.>2=ܝ.9 !#JQIt44/kS|_pX3E=|>թ?4>^^/+TEt paT4M ~>=;󥭋?z}tS9_ʦĭo~MTHopxo06,ŀFv4B;|ގw/^zLzCCU^6Cݨ[8loh7?kkHyGcY|_o=759{yqSwK|v MDCCܰ;L;|~wzy6 >ؠ7Ů6Mlp_j`.Cl 8fD;7m{IBlz#2: hS.* m͘;}ݝ;:7l.%ۚKN O:Xл T% @Y 0@[o QD2(QU5r b '*BSQP#\ۺz<,gz9_._{hW3/:!~pYKpt:=ͥQBQS'wݺYd}NA0u MQEk@k0JD;3 lf쪥(3^Ηe LәXg^t353& d:+sa׵;(̢LR˲:e{ߴ.=Oߛ?~wz}e][oօw޿yw_Wb$www2+i0M|7|])W21rmpJL a7fL?qƖm_+ *rq)w)qև"Wt[V1tx:c>qB:yO0D_+V|s;xЌXޮpf+^]Q`F<'1Pc;{;FߎbdQ^0z켣}տy;+::`ޫ,} L{~J) >Pde|h PSWs\;pؽ -bۙ-sbpUMltU^ံd/]q4uGoms[)}=~Vj@ /)%0I_H)n| 8eN6ںkoA"f"h˥ٺ7 xuYK"ey5 `m"zP-S'CowWaiv҇R2pYXōVw.HU:@$S ̺٪ V3bQQTYl\tK[=`Ϊ9< XnR@n}Y:Cᢌ') U-IJeɣ7u x/*AŔD[iYzHfHQل9SDyg䘇&آh s{k.Lݨ[PJ$\[ݜݧIGQ&e:(Һ{TrAl"DvK-ϖ\ a2ND`l '`7sU,DuwO/Χl}|wCrz>F祓0Oϫ?>?/rw("dȦs!6K׫xGu#&C(tP} 6-d6K6pDaePxB:LL 275Jv:NU7k'6Nn+$vocFh H k\2/8`n) Mۊ>{;&Dߺ^׹irr ltBuD巬6xƖwlQIlwݘ~+* ;F^*eĆ&-rM6ୣ}D_.[%"%ivo {xUWGO!1$c龼1WHLt7̔㣞rCDqqxޡ Ǖ]) i}$\1w 37Z"5xQ̇TK-@.Y͌ȝ-k$k)I.r DE,-9UGx %!DTDnkyxA8ENDn^Ju,b!2aN[=Vr5sji5\-( 9[[ĐԬTXQN`f w< #D0,`n^\d f5EL*UYfľHAn1>zZdt-LFL\=|Y EYep^.kPzT RDAu 3t ۡX`ֺy3"h$"U1t BD!ix"LvpR᪠ #ṇ4ӬZ-ÂsaVnXΠ  (" XvGtI5d Zs'j#&nª 0?gQQ (Koa2E8 ’0&nݼ*up,_xV-ƐjTk)}]Uy9/έnN,0nfl0,aTe0 3"nOvV.J:M!ce˲;Bj*gnoI>LNp9Rk9^K7;2ӏ$iw;u"nO>^0Of}V}w7Sljc廟]M!<|DWm|ny7ʇc%J`ءnhk(QK]xeϻû.5BnaywC[-*Ft tt c|5FMllJ+ ۨJΊ5Ngk2$ٛ/һz<˧Ӻgew|<޷֖roD`߿{?/qQNxKݺcq?ח5ʽc}xO?]P\(;.f 2?1svSv|%Nn+x ;IH<6"P`8۽*u3~LYdD7nϠ3gn?`ME(7JwE'Rs" n"![&lL K/(HҒ6Cg$pHL+#<^G "ݤ{7KppllTv@#hD^ٝ4 ftZ\+pfzS㈯ ;}{E+S\=UF7saWlp`:#ɂh0q#9lrX.pVڎ5UCR&a{{[\#7Ȍ7߿_y"6خ-- nowǪn֚yZumYau ,̼`@:`N$iRLTTRn{g"o t9D9Av#D\8@Y-L=0Ex,H+ rC{'Zu;@d֪ {ѢBmei\JI}];Y8nlfY $B8n-$vbcá uY5d$uh*)#-01zڽV33HKnnAFDk[5ςvቹ_3T r"q\M,TkѫG) afQa-Cf{PAbX;0KZCʮ7ˤ.A>O"T5kPg@/݃5`GGh]H\##(!e3|YڛڧZۺZiZ @UKD&< "3O\՜T6 ?LՂ%(DTY8kёnYZwRJn:uj)(BKWf|۲G*x\.tW?{`q|x=n>LyK^IjfmIZs:XłaN釟?Ck_ϯݬNe]z81TKo2].~|3{D'hH35:a1^-RG`ӇkLs- avaׅUPneGo^+uf$pCB1`|&RҁS76$*72[ B>DW62[ȎDT62|J@ n( Cùy-t ;C[HAT IDATc95dR>''wg0J`Ͽdt7;Ko7C> {l0: !< #bf0PR *BaQ _UUЛ I{_uRxd݂nabt`2Pt3Rۨpʐ{֙ / %D0óN- @aa0牉eahQSv˽+(O2g0gZn.3S--.`e"h=ED'2'l5SV sZD`Rbn'Edb1E݉ SVm;-w'".ETkx6!)0Q "YanĢw0(7`a3X1(MTpXh[YU(X (1;h5̭;c]s?V)[L6r3!g6qֳcR& ̰6Yf,՛u#7Et@d[I tb9JS8̕EuI&]{\KnEZ,A sgj(D4O(R| 'I}SCƬciZe1o\ìy|xrz<áxV:Q2DYɚ&`>ԩT,skbZjy~}eP/.L@TumfDP,Sz9Ly]LtYufv *3-K[ݺ2 0EڃRBK}y>,}y.|ZU07<Ϭu鎵Uxpʭi8M:MZE[,__.ި>.eޭ[-%a6ha<^y1vӰUGoa1į7p ĝт{r/?@ Y/q79f[75fOO_-Wcovu[f_0m*ʥks +m]Vd۝El>e bXSќ谵pLFR+̫!ERn9 2d 2Kb DYWxJjQY;A#J DܣGVC#jY?(Xh\kp3ѐMM<|F`)Ve.mm9j)fpy8;zt3jz$U“J^(ByQur0/QNˊ\YÜfN $A0K7:"ff7BYp 0UDO3j|femy*H;QU$(SD{sXĹ91`RN.Y IduZOZzY{bJanqfvG$R #~=]}|nimɭϗ?%ݣYiOuu & ǻ_xww|8 |^wne5[Ws3h)A6rRaLyỸݖU4Xk)ZTQ\PS=Z7",g'wj(ȏ-ύ@#RKH@we}]씩ݼJΟ^N?|ͻvonfdeֺOp<r:_~\Eb t̼0:UrV2_NV/?,m6I+;GUfh!X[Jt}'坫 86M(ڽe'4=| +yf 0ަ"Se`u0>󀶛dCuEWz.~@ µGZ;pm" _ItUOY%k)n4_\D?Ƹ gQ@WmBB”Jdd/}lX?#@6cmzq:n6P5l@%XC v9cf<hvl9GL(#({IJ܇{DfVUWwOp@ dAZH"HDH 93]]7}0s&J4Q;NYڋ6‰2KrLO%i(vwXQGtUss9]GF*f%e܃:tkhF ˛ЖW&Ý0DKI"S Ȥֈ,jf]J17Ҭe)E8G(J(j ;r g)E3U6l2"5U2ڽZsXzyx5Ja&pd@BIRJ)4R`QqZ S^EbG T&CD  ϨyC=~ED SQ>KvBin|45q6yh*z^js$eZjxn`Dغ7!.DHW . ww3^V݉Zw"ں;Fz^GZp>kO%cK~ka?ԧr}V,"*bf"N* )QZ]^.[Ke)ݐѭ%"uuY-7KpDgfk@[63㴮O?r:ƺyyz\{el=3ZUJץN9n=ܿ;RqCd&r}՝Iſi{>r xzCAK;z}++o6:TXpnPEMWܛǡهL&Iǡ(AțW&u&HĠ&ȝ&?xrvl `vƁdn ́wd37{ aaю(wog&c: ǾɅPE`+ˍ9t79w*:hLYeKRkegI|xcfLuG h̼q y- V܀ѣd8]rO= J>>^Q̈nqt<]pFY>\8g/1˲}%` W ݿ`OcG21ѩL$2ZƬƳNfB晙YJrK2yFxwg,.Uik-eQ0(@2yQ$36R[_N"RS*ee Zw"R  pEn~^~m sUݶ= Y%TD2G0jr^+'cʑH,vX@(*M 10֢E)#zh&0ΠDJ1K̙p 0qKuƂha.wB<պt%H Ox Dsd-|*艀 YP `U2D!NZ7KoBɴ7H[]z"nԃyĻZZ,Rjt# a#%UyܼTjw'B)j>}yO0}W3?~7w$"LD$gFdӗˏ.兀\_g`XҬ#GG4aGe˞8=B`N~lS/OZNrm?}ݶzky:Us8y<ûVtwe x % nEĢ¢A;CL\FvD]BIO}v֯ϗw~`rZ˩ I?9A#m9^>MZW~cʒ#1iJȉiމ:=0kG<D9 wDF;> @A3o3$xpK鄁 M&CAL;(ݠげ$M_ӠpjmzN:}N^8fLnL{=ӄ9I XoHÉBГQޡKn"{SAIËc%Yfy*4M0^aGB q*Fsq[ r/-7%ݾ7Hz,cVa-ӎ'nx?v-Y;*qM)1!b Jrݳޘsw$LLS.9+1ؙY(QgcX|}  ѽ~%;2L: Z6$ sXMӶHOxGxzxܜ|ɸ8XDj3R| %*È>} `a)T y ZG8HBZTi,YTSǹ\zn}<ݽe~"baA@nfL\8s).'%BZ'VerzP5G͆/HJb$D&F\\Tda-UYU"";G u/jFJBXZ{2W"6dFDX XjX43B+cuHIdZ{R#phBgYޣ qm[7{' ^P #B($W q*"L$!ZHRu-"dpfz&P(%T## 1ww4d0TqLKfȢ"NUUspfeĭ+jnDPb-, غ=\/ZYDf?~z%-RŜJk<c!B(q{xǧu&R/!~˧ǭѰq3Pf) 2EB QUpK-B݈x]'һL{\7b rk'-5ýP͞KZ(9I;CJfKž!BA'kO}__.|y~nSN8,=^ZUUZ+DZw;L1wjԷI rոQ S?v }%tmz Mޗ:SAyf{7rgsQ9`'`x=įq3< eAJ&}W<}@8zoמJ}ct=^ ث1sK7V)dc^]XiR<=8W{Yk) isi?;;|29b 8M8>KW38FF2fM.; qE[(5-;3=G`)N| 7*GK+b@x%ϻJΫOnvB|kJ1{@s5%WeGsԭťUaa#EHXH*SUIkR朑o@Hm+1!fIb`,kx 黇nI$BLjnLfm"Z˵1wy//u>?=珟7GK0d]Y";3"7?˿e[j%IҚ]Ko^y{ټ{kD CI4m3x eYV-UZTt鞭u.fcZC"2û;Vk]_.H^Y.*9=DZAtD"W-BHt'qmx{y6n<< Ͽ<_~z^Xn]];HQpwlחͯlRK,!a{ vm*.mн"vs> ~Z smxeL_q[S{8IΛHͩM73~E5=_}_},ez_hO%4|\௾đw M5ɜ/tw0Y1uSh?c4n#_/ڱ(M\ 93g9j׿O"cՒ2m(NPI dhraQH& Q(ckfV-D)BjRFiYAED=h,2e0F[sFk3,cG8-L QQ) V>-|.3̐*H-U%5{iى2 ͅN NE)g(U4$l45A#rKawzf>AuRr}U/$XYfEl5%3Ѻ?]ѥZkJOO/Zc`)eڷ~~|G!FR]n*,'e!V UV-RYD8枭aԅEp؞ē痫=_So]7[^ikEUl[OtZ?|-˲<Çw/ms/uYZdNs wBFD>~[Fv6nb|E70_~w ޹ܥ0B\h$#SC; :&3Ž 0ka`L|;_տ~o>^yrȿ߂_}d;US"7h@s7F3pwFnҔ%D5t| n2:*O5{[xkC3yXsκ ط3 Dvy'S:8z^b?$ 0 #gwb_3[zҖچïx|9݈>+:1-|:6.]y.ޫpkr0| 7Tj\nn.Q̵ѽ:^eQImL?1&%qԅsBD>ʕ@uEb0񺮄n-f]XnmHd$w5R,|,K,x7FFĥ9ե%DHN?a]YHP%92;]0KNkOV 3s^Uy 6dT_燻TG)"J¨ð$U `غ&-+ "n"y3cETjYRJ]#tZNU@Fx@@v34p0xc:%HrBc\I())c&l_*!>'.y^OhTt][R*sk=̌a ru^t3N%!+=yZd3苰xDfVa V&e) PBfgX8%e!~,4ꙁ!ݶTfApڶ +&V)¼-9yRgHSRf]TEj~0 gL|8," `PVy +Hjw';L /Xj}zوop֌gyymi H!{ڐyZww /Oתr>KӺ\._^_6R̀ёɟ}RR7@fE 3M=HKH^۠ KͲ|鑬ON,k{_l;oMZ,pZ׿}cff񸙃=~OY ,DooV @;8־d @hR!}{ش ޾ IqC~:7w@͛Wnb~룯߾7 ,8NIAфǑ|r通􊤇o ʯ;^8'ao̪y+1AAo1~w@̹z8hot?tPsUu7][ z4U<ɧs|sF@>{}K< dp~u_=Aɯr/"Ў}Ò稡pTܳ$7߅|c=l|X<|LO?OZL#2"Tjf2!<|0g' ܭwe$dRfHA4A ̼z"b x AUaG&9hp*uq k!{$L) tO`RSz€Y"k2V#:yTQ%BDYS) KxVw'a%)waʈѡ=dCF,ZU2XJ/Oځ'mU1D; W>~P݄ܲ<>߹y Wfw+vZIA$ #T#~9cIqW#,5^ n[q} n!oADXG3ȼFcY/2k)̂aH,$^jeR@B78==ٽy$Q$y"]i"y~AkѢ:Cʄk{Bf"dxy cpPLd"&V#,l[s`dzFfnp33K !өn#‹;Ȃ͙lݤ,D4`wjE}ˌNփDJ0(ς#]u$!j@6R ,FNKQ̜:ݰhHbL:=G8!!,AD>V_VJ0)d`A-*J ĈZak2-ɬ B$-kC=>#f=??s:"c7)9dsS%N.Zpܭ=@8v5+/ ҭ3[Q|\Nie)qf{$(, bU'L ]2:a@0,@&## ^Ck~,xUwsH̃g@{~˸O\zyvA~uݘz싘h]չ=p~rp_wګ@u@xb~o1鵾MQq4/bĘ=)\s{O}X-AqzY qFNǫbx&XPn^lw8ybfd#F6Qt#c|1g+8N#ONC1Zo|)peF~d_UB,1: H8-cq.КR½w IBBn6J]Nk:f a %[o@". GJG8EkMB==GdXU$"RH@R@]T Gcd}KrO)=jٷ\x\FvR϶Y$Ϳ<_պҝ(R=%6ƑszQapJBՃi%gIZ\u J"#0?<yt䐵*mHZn,R0s$EG"*{y&DN8JbO8eP*RZZHT9"!,%I=)BG4gҐfHgNVb$\{$^YOH-`%"̪UY9VՅ) as-m bb]N岵F QHa 0 ĥ舐ދJAiU(DC"2r 3%G=%3 ,L=Hdɴ U`UVfm=DTyJfRUvRRL'܆9֘_޵qd[$%efUuy s1c0 ?9U)} ZIQ X{׎f-)EIiQ!@oͮm"Iy^_y[{z:nm=_.^|篷uaV뭮۶V45$KZcou)e).Dq)խB,pwq*e>Mc:u`G`>@j‡`ܻC_2 IDATvD4@֣[cE<&/w|D!F{yTO&6*;bu+?/݅m8XPg' #uv;cܻ|S22I;ep <r}㔽SX?^ ?hr H0}{mbw=bPptD6A~ۍt˩p?@{';~|ӵUC34ǖ{Gz|-(xDww?vˠziWXm\9p3Q?Cv{6\xKȻc=4C!!.b Q@eC~0p&ȓyvBCYDtfV"rCL]t$,2aQn%= GojZtD(YBITvQ9<`1V(>OfR>^.><\qfh2wsw9򰃍ܑ}w wV1̷omᐰsᴿGcZ w?]]Ck2 ;،QF;}@+PgAK]ywl%EauRu PhH^;h8->ICr$8c|c!1!XٳKG<I]g0]=Kcg28LG:>8>wy}qh3A771.k(fޡrvr\ :hDA}Ovםhl:=pc`D]$_DWduMwf8$pv}%+GwK;8O-jd]Փz(@Z o =}g׏O)eݙ8yc"M(#T'fQ=f"Be*`ʠn۵Y T^,hA2MeETKk `zC #"IYezr Z${Lwz̜T$̬_ךY3mL2u!p[3"@GOkQ̂BBJ$[dˈD|GV{e): I@!ZDdgf8X 3%Ty>;G{fL"ͣłfTNBRԓp,,I &zՑ< &*OJ%= )DHdt{5KdTXO35'qk'E#915V.KQlyp2Y^͛d9Im;2:Ҁ0Afa@E8Di1;ADfV-F#S, [q& hHkn:(-x424/:#zsaby!JwEn<=92iz“{?ɬɺ5kkov5U|,vۊN63 -篯yvs"nm[Ȝ逥DR88EEd?18=ӇgO0u+5a=бH735sPe:e>-'ay}?VVת",!N8/mLB NP.DAd3߶/zz|y>|/?=?=Jy*,zLtuܣVsx,bTX@|zUϧI^. {(YZ›Ϭpo܂خP7e9?}4Ooj>8A?XHjQ!G=wh鎕wDG` tԽ<\xv\NgڕxxQ̈́>B$(ĝ),]&TXF1C;fyy.J}ڿ}MwVAggwϰY$'hw{4d?H#ž8̴Spx`=dc9zGQ>l}XE?C*x1!mZtC՝waᓸ+U?~qH<@#^c3;?=)xLsh^нy$ 43!qY2zLt ry81wl}/2{Lw{`[@h4SW<DXk] BUw&af-kH0Kս;@j'3ݭm! Lk,$tS8Ai%d4s-@RuiYd*p"b*gsRX5Q ">u kofO2+U3YNJf ΀j@VyIs-\ΓfYe mF?$fޒYYX,%CAEFj)B8=-3m $hv΢d nN̢Dނ ̈y [DU۪DHlʁ@w5Ne*JiN@${R"IDI͜" fiRb] "2/!aID('a<ϗ=SsVHԜʴfdf^"(zGI-Bl-̓z[dsi}DY4<4 ͓`&fJIHPSQE^h3GZ4܅xk΀2E8HQ˘T2nj-(̀@lB֭VЫ[D|MWwOI^ίo>DoۖHՈHY­i0AT9掄 K! Q`5ts,e^^fkΙs,:DHaSqw"r 7̈"\T2AH-71{t@"jt/. Q/_no?~2Guے%[kA\ݪ~־|}z/oo/!ry:e#rbx>nUHY nONw`-P ;v۱bW{(ĎI92`^`{۝ݿڒJ L| :,u_!kΰK  *!aǝ<08^?$$8$Aps`1l%1ȧcw99Ϡ$]=ÞG=*xQ Qn;nޑdcB?-Gvޓi\`\.%J %J4r)D 7z9cGxz 7NCmp@f{}2|/>rJkut\q$[gN;07^fC;X:un|1pJ06d~?6p3v,H!"I]XU0>ba BI̚ UR,);Phn I@Q / ($:!!:MZH`2&4 kYi$bpI-R<3Ztֲ[Geo3aAɜZ g7U DE$iOKយ hn*, {!ZSm`N SQ g!E2JPpg82w{d2T5S&aP]VpW5-M LI{@31OܢG`V ǡQ4O՚&D䑩LQU&wWeS$9ZofV-ӼOb Y01C.︹h@[ wsB>b1񎤏y*ܕG_WsAw59:SNHzJXT 9xO8s|NT4N&(QQ6ay:!ԀCth~aޯRܷ:B;Potb;F{6{h8k]Yr/|tQ\ǐ:Sqy=ܽevQvki@=9~t] =ާ7ρʍ#X?4F0zd);?wE&0(SXdf`nL|:TYO1*Pھ\4KHMj Jsˌy25&92EV%+D*{tb-z;J+a \nEIAPi] 83\ j' 2MNܪ,ifF׫m[^B 3;&S zę+,2)Ę K:֍TݵL$eR6ϵ41miYnۗ/?vVYs/IDĝO/S9Ԗ9ֳ<@a̎ۡ} $ P^P&!wB$z& gO!t#=q}>@ eP7<씏ؑԣ_G>쐸|r L-N?~vغ*[Ƽqbx]Yf>$qE8y<݀rrTn|` #fA0X_:FE~\wcs&'ƯpD#:U ߙ#-ad^tDrEyJ 荇~Ls><~aGG Ǡ'p _@q|(};X'YTԻ ``n!o^ح넄Gk`YK J g>[@h$Z{ % n k j"[YMH;% <);k91ZJ@HEF´r(Q-4z^bL(߶,jXBje%\&! Iݧ!ݻ8f̛1G{PHk. ea0EY$'ED#gzge)D,L@4:AI;x'哓t0)I>j{2A~?<ϧ~xzyZޮW!g6efVeY矿^˵ZxQĨ,."L [˛i?}p׷~I?}L=rwzxT3e=WKu co ky"hw{rkԵ(GtW^=Z_ "pxD- ϻxķ{~tҮ |o򷿽 1Rǃ;6n2. wϑ >>~H8 u1j9cww#ȱ9SNGz IDAT#I,gD0'BJQLDYR-JkOj4$ ZOeQ>*RllnV2e&@v3G~QIQiEbQ#x*reR!je),`eY(:1,Ng17L%IQ(s1uZ,PH]j։9DI+Zq&IET<{C0r9[mID2 `▷ϗehNMƒ3[]ͽ`$ڄf1MArQͬ؉4}[W  IEDjufAI:eҧr]yoIKmvYY[s`2M &e\,D,TES)Hр7h IJ,$͒&mk3%m3tsotZn"D$Z6jiNFJLHa49 QF63 +LE 'z `J}y:O: ?ۏ_:p:]t.z}:w/KZ#r^><}r'}=Ҝ[_ꗷHufϧKƌKX)'p|y[VDx?Ozpgc{dbl߉~NFПAE~G1mv2ܣ,^̏/E3`otdžǿ@ v$8P }ASb ۝ڟ7v(R;zo@;=Dw̺SwĹGaWAlGde1<~GvF;>`I{U@h뱧22SH7x=FwND|?Mrz{z1WvǾG=eJAqz鸹!fh;R*UHgGD",D`2wb*ֱ6QEev9̌;ý[K|!s0 qSDThRIfHfEjoe" xDK2ȵ4Z-=e2Yt{+("4-IoksӮEּ@'k"@|۬wjQ-LfikskO!bjz*$tښwB{@z[o[sYA5q ̪Ӵu Ge ("YDrjDԖ*gƤp$(3׭f'ALՅŚWC8 R$#m]kHZ M6s!J̴5lxcfmm9FXsdPm,YVyԖq %S&%%7jh33{FDNZ/Eeۯ<(A;vzǍ<[v3ګG 4fx2&w˶A2|+A{*?ra7N'=v \Nj{+3ǧa>UF_N7i|6ipWrk>SuwxlK(᠊wz+:c1RXb?k{6yS4ǡ㞻y[㴿~SYϥDf;HF0iQ""&V;s`QUHW! ̣HL fJrB gAyLI(QDv^ɑa:dEEt׃Y286n-@Rй̬O-n5=ܳTO^."]OڢE"V5TD %A<Xp氈tVL_(Sdr/kHHU%H"U&!+$ITOebCEu**`!**5uMmfq &HI5 YINRQT"("#h$xvJY$IԬ!aKg 8AԥQ̢" RY<^RyUްi49aMS Iyݪ[xxK L=K< XٚG,"T|9fAϗeaܚV Qm5d0un=pkқP iR>r4eZn[yUXHuZ"y-K Ԍ< HJL©*̘֝," Nʓgzļi.p, @2AS -k5da`.Z{2ID2ImmiBY()`H2, gv4Ӽ,zƢç˼|~~[?>\ $cT#'=RA`d*$3-S)S1eQpj)f%Zd$Ǎgk DqG], q CƠcϟgMz[^@xZ^yDNa t1. td䗟٭,ώ^FȗNBhV6|;tȵWzo`>snz5¡jRvP!| B˞nˑhT$Frw|̫Ecw*s֟[_oq@q69rڥׯ8u' |FZyo-ID"Ff)eQo$gdv"Hx+Z QHU<&wDfzDJ UeU:0uV ~:SV tXzRUj- uIE6LwA^3碔ܕ12=G#ȡ һI}3͈l}$Ē&€wψ\`R숴 =zQٽE8bv3u_ûG͕CrNl2jZL{x#">.jJ`4Q1rlu*aC"#2G A$DBm]\[\[RUNu2w43Ռc(Z ;YVei'EJ[;gEmrLB#dFJZJi M ZsҪIƕ>p@Mki̓?.ۥ-d=bV[w,uϭQBMFzψh@2!,T<2Ct=G^6wb:h˺NUMgP¢T7Qh;=L[Hqzl\(<_}wW-m-dWx7W??۶ϧ]LOg[k)C0n(EFaU$)[oi*;zR$#x>=HPj)L~l`S^z7oK+l-֭;|6 Z "}?bdJ\_C8~Ǎw[(b@nXٓJ`x*S*K*"0BeZxȍ2;h5.cE<8 ;P{{qwG3tvNCܙC ;ME$mCܛ7(G+V=?7B2F<&w*2d+ony7=,#n|PƸciߞb_C^=GmJߩeC/Gw,sGxP5#k)H* HjL> Zd2 =Gnې+YD ZUZj\b̈!&l-lHQcֽL59IaZJxjbM;A gvo-"%=",g1EKYse"ܚ{`XQ)Z ZmsСGHLU牂hmTu#*Eb@N"4 33NըLE $ *i)X5 Qo)pV_!EpVU觢"z5Uj69SzED9דOi#Ȥ*0j #.P i2Қ|݈] SJD4,&Z,Wբr]#%3'"DCQDV;W-esw;Yb<=/EITyf~$^&R,͠oͻϑb_b]l _ڤ<[jQsp.?\?_B3>^u{֧TUv.^̒|mԝKK~))on>ow+@ۍg+z,EQ$j*BEPUQd1 ݙA/nw֗zX:>}c)HCF[Fw`!0=o仿Ei1r.8[,n XK~:!70-:gQq ð{=).I!@KJ@%$~RHoC*P<;:g—U[ 춝_FGAW>)Gܹybx$cbFf8D0%(Rr(.Fd0sP$+dJ1y:4׺:Y.RfP=z)e4֪PVV/륵-bk-TfpLJZलZn0`JU]f:G1 X;hp͓d2Z0%_gP+\ӇoxZu.L<_Q. TdHD Aa*4#nF uk Je=#J= &=Sܱ!i"EiE,#Lۇi* Y[О筭oy4nVzzx$x2fbzr=\H^˨dddH,ݷ%R"}y|lPmVy|˚ڕiw<> v:2ZS^oj󶭭=#.K(|~zTߜdTE@WUɘ ~3kѦw AMtA2MAt \,Ed%dr69TMK-;>}m$ ɃH yE^|ƍe|}F7Ѭu-7,*݃v xDE34fHU-Dd*)@Z2erkß&,=yl=1 }]޳"Cz'cTNZz x)YDh!9բ=Zi.sIFD{:ϥ"f{ڐ5tKgDZJQaCiTU֮bF'U-TLMULt Q-S!`&P4*LQڤ6 #.=$R|6hkKh=&Bup[dz E T*:Zvd(B1٣Tk5fd֣J亵 7֛rNUzT@a9i%7GzFU0=WH=˂4Ffl[[ZB3ȸ^{Ue&:$.=[kH7IO:M$%3kٚ[Pi:|eY_7"OiHL/Tk e q&$E-zꞟ>?/?*l}Sy5\Z&eMxK\/m][|[nm ֞@zg|ټ5`w$RjFyDU3-=߯ԤPe*c`bS`ܸ b"YLuY!@Oxi\ p]:Ud=q&sܖ"umVJ5tm˲9'mY.[oooEfS?gΧR>|^}koiz[4秧RfoΧǓUlX#‹mC}3?~mD?'b' R1ʨI9TaU*S"[RjiMB!9@;~3G1%!w&1.,Kݫ;>x4ak oǭ+2w0*'˹q7Mb{F2A$@Ak>3w 35B3! ~oAH>?wBܷٻ9A=H(1+$(\] 1KGy?sRIbx4O;"(dTer&8N.2ИDR0ô(3(`R%f7E&zDBhfZdg%P1`;)AM#R@qkCǛ^G%qCa4x#ыJ56_c;E܍gw*}; `X HݚG5Z3^{GHz~cnP{ {,gWN7=1: ]GSXoOZmKHUL*by"d =9LG*6y*繘rk )D*÷]Zoh(TSh -3@ۺS3W{Vm$YJ>Û`RὋPI̬*i֝4#!dN*-Z2U#=[oCS) ;h,"=Cu󥇙dGtdBId[PHqwA(zRhbCl}WFJ1kl .}JDxbVhhy(^<[ ֪r+zUR&\VOI7[%SANZDD>J6-yL!<<"IF#MvX$(MEMe)AJUHt!0qdNdmMB0:21zC&p={U."Ԅ0mhm`lRޘij5m꫇WX3"};%-{kCr4Eeg h0S\RTs-gr>OS-o{a"Fuz&Eڲ\MM h T( /Eٛ_D[;)֑E8r\rnE[>E0OUi|ycs|.==y7k{˜BMw$ ';ϥX~^2Ik_ۤ8?XW_VU*Eog+j>=g窸nWLVe[>~xT??]&2 ՗3O9 =&ss!SPlaE*f Ӭ"a(iTI,J^N{Vo?!k0w?fF| S>Iݡg_b?B0e㶽e/%Nedʁ*vO0*B ')(ݝ=s402)daNmCŻ*k:E$sf%!HE"HIͨB3]e"^4P";{n3Z@GH'QOtݭV \h 2Rw$ p*-Вy.l5JM7ͦj6J0Xͧ#ƈ "{eR:"38 C>#3|*\ޜj[Z$YM}Kxf+ {1B"3NzlH_fj=p?UEYMdg5 pV-“ BV~Ԟ%ErՌvJiT9"gùZVe,J#E҈Qkر;ЛpQG<CSQ97o9xgq_b N$o55ՒcA)Y>=Zcw3mB1& Yb- VN(5FF h ۖ~~xE0VTSw@}]΢V榹gUd63Wt]{;7YTLOمITRнRͲ}]O,k7yDD [HbRżUyL<Ȍc[xU4elٻ(wF_.[A|uPˈH)2P5uI[`5Uܶ Q<QőO&\^*dpٶ|XFP5GQ$OKsuimkSt^ηzZ{k.Su]ŞPme1v! 꽵eFEB UڧȨ2mq=~ÙcݮU U^[bȖt@*tm.QЉ`k^2͆,3FHRHHC AZsǏi9u{<nAY~\4>WΧS#2nO˗/f!tS3}"R݆Xvb #Kmzdy|%.%GǞ^'Ū%"Xͪk-&a1qnJGG(A EHuR<©!߲[Q|]opoCBbk*I;nE.bL$xKQ,BզN-Ed<9C3`mxxtYdŴ 4U3mnf̙]e5vcwաF)cvvn@թcWl*f$YHcU2-x(Ts wgIkLwLoIpp"]85*.fQVt_b'5kL;EjzS9_VzwT;0&0nm>1@ŠQa-kdTLV;*BmU ԽP$AE-MB\R+:(3=GnLFo}G@) 5޼5HUT ##b1^,k r-xH* &,%!#ܽ *'V!$dk'˛r7Q*}ߵisƭ5cŨA^w5]TTZUT23i*UAR 1 @kͦ8ޚC/=ӗO5efȺ\mL"6>-:1f>5W31Gܶ`b21܍U*!]WIQexT%כu؋m{KR͗f]Og;-綬.~EKkZq=/nۖY{k?~>'Kk?~x~xwU`˩WheiimǞu)۶]ۧ_yGU) 2EJ-Sƣajh]*dt5ͲR*)5$=(B$ ͒@,dwn_YHq%Lwڅooow/G wϞ}kUc:S6YI#(u9 `*1=4jԸM &*Mb*lE9ؽ몋& UqqvyhrRܚ\U{'VMnUECM˙d4@MPTh*f`A>%_byH1*#rtd:JL~߯Q9|5 u)}{Vm8Vv}~{u*wxE?x":`ǯ_)Vٺ"$ ({^wNfO/^܏<)y IFJ \[P'+ d4Y^ELU!ʬʘG*`xL$(Ft=$Ib~E*`j"33m5rVYP1T| 4b+(b8#LyIW]z۶I#c]UfGĞ)N[7--9ѺUkֺ63e6{"Ww.f`ši^nJJQo"[F LSݳJM uRPEM]*[kY Ph.#dV$ vsĈ"g@#irK{ ,U`jMDFAwiEVAu503I&$dmD>?_o}2Pnkk/:;kP3CknSsr(f1U,qtZ:lQ^dܗ:*#*+)b*k Fqb& aƔЊڮhřO-KƐ,Zb6"jmu렢 (#k~ߒzZ۞K_XUx~>ݶqǯ{Z " ?n<m,t ZmT?}~~>??Kk]/~~nizx8\|ӏN Mβ_Nlq?W'oqrqU(") ;֙R %8C$RVԭQ2$:o‘.!i_zc|`?}{um=y.\ UT L6![gpDI<9h+*)6seZLU(rggKtjc$+,?lBQ@ U+DPdMQdls?;Q,9zcmh*`6Sׇ.ݟ<4&NЌvucM\1g"z/M|vhHPIi% e*f 35ECRSphp_X}7ʓ^l 䡁~?N[}W1*E)֙7})ehN$&vOwɹJt*˷V81A;E P#qJjyo"jFKu,:bBDo!>;+pQӹʨ1?"3DoVVqm~c @Mea k$Q1FQm*":# v<̗| f+"d=^/}Df;c䈈Q%Q$֚JVA`6P岴fN D3($9# 0+V3m"<)FRLƨ}mKYe GYB0HiwT}YeÂLTAUfӺOssr@TCI= j6WVD_OummL"jn*r}soFd`>M&ly.ŀZL@}Ԉ4SQ4_9tK)2M]\*8 &MUve)^Dfe1XUU)(sw`oݪLL8}a-ݬM(* nLŦ佛,- x16@ZF2WG3S))=G!$`9_\m^koEQT@y0f b^MDd),A>˲1|zޗ*Q6@i 0i UUu;V+́z[hd/r}W2':}@0rԜwgR?f;zx󷩈%ח@d9f :iHC~X/߭?W{Z*vp/ݺ`|9khӇ8Mb`@!l=jw?*)87:#&ڜhbfȱ,r * YL")8lOiK_ϫoEdUf&1Xd@JEUZsD÷Jm,aD߈@{6SߪsDT),#oѻ"MUMFim(T$ =R}QujSDI1RQ ̠B,Uq* nZp7 Yj,cҬ}w3]V/"cxB\ժRXP) { I*%}]N&OhY*3zS$m,Nj)`5s*tWzh5"h+=ՍeeMy}o>!LX|n"̱h9Ч c *iAX""誨XdBhf3A03ESQ JzSLԪp$."96&SԹǎ(irz6)[om1u[-U?>\g؜*UE\1GTf,z7m&]ilu/y7Bd Rd]VYBn{mODZSVD-;{[99cs͕-i&xW땖.5[B,!LsD&LIfT"y{}ol}F9=@dzu'j燞 N8U[eۿ[ϿܲeT^9_/n^L5+w"ڲ/=n;[1^ǜA]n5W_d"HP,Ơ*pz}wϽ}#N"UR߾|t^?Ot{?ٍh?~OV#tZw/a󫪛(m^KLe*ˏ?dݿvo秒?=:H@TXGeA p=fHNwoUQ01nЂ7Tv͆ .u:T";ҌվglZ]N^ g+f> )b9f9v8ޗ)m@)R!!,UTԨ% PU%W} QG 9AiШ R\}1Y{FDT1ULU0ENT"Eʡ7H ",(srL_K^+UQahEfx^gНϋ~QKMeJHsrVV<Ԓ#":)(o"hޙNoO)uT~-&aPEf ˲@3 梩- #?y>=ԛ ̧eMȒ}]IhnD ҋTd7ݷT2 =5YJֈrw"o'Sa*Nk7u&&rFAU T٫BEҚMiPT̫7FNh@`#"zQJm2ePӢ=eY[k8 ^)RkTrFFkdDew[&YN.2]Y۶UBt_uS ٛO9NL}ʁn*]Tl=tw5)<,IemK3femaYUzq]̀&+*Ff% ;wzEOk055.bu⿯-&v e,Hۻj9fm6LꩧA%Qm+*nE+22[&* ћLjmd٪6)l{E=ݳZkv^Q~8ܮ/5^>4f}||fs|ߜmyX~,9F)ŀ#\/ḨRYդFNzo7|YO?rʱ* IDATE!UHa%rr٤{`>.\nBYCłTSbOٛNuB(=N]ǤOЅ]tQ.Ʈh@jdmͷp )Qo<䴎;ޝN5Tg_w-2זzM|䨹n| 7WDκ\n Q\BQ"zyW6ڸϳ] R$+MJ " 0g:)\qY0* ΰ(WKhWCf'C37`@LMv(o9o]}MxżU$`ǜ¤&g1q]MάE.}[ia3DkQTZ$8‡#$D7Og$Nʤ&-QZ8S-9H"0TPGܛ$iq?Msux&HL/JTE.UE{XkTRDg"!1!jVRYD4#lV"6%mxP)c֔8P;-O#c߶1U#fI.~x)ymgBIyS!m(mHoT,͐bf t][k}~{]1"Yأ 22Q5 9Mk޴7Ԕ11b/ZRL(E[L}W37jy$ffZc_d9MS!*f֬E698>23gO|Z!lZޫ*ݭ}1;gݢvjż[s%:se*cԾSEt.ͳ2 թ$XZwUL5Y'ZYo@`_ ZMlj TDT=ʒ:9nfy[=i6g 9Innjdd6c#% ,z*VƺUTifn(S4ӈl& "YS8U1Ԛ##_1Ksw%߶VwiPs5sh"`onK\|\vSV_\"q -uef~TWr]6f*$k.U)t]ɵ2fm'uY +̽RQ5~%=}r=$>BHFu\6)o?c쥇z=M L_zfJ0U i؊O6}%U*b!(cۏyUƯևO/mzn}m}2[z2k0?>ۯ}(u]*``Y[w9w~p_p?{|^{Ոʱ~|w/_?%嶿ߘ. -MpntuaTФfTq@2S M@ɢ1R5?Y*w5\&blķ1;?+մ)wL`N`),Qc,N0@,k6N,@M3KE[7W( Dժ&JDt3"ﳥ Ts5 ɺ,벊}DP9dU8^2ըJ*#S96g*69:-gXrfuKz-gٛ*"t۶9|^/K)Ĕf.ͥ[.ͼ-@QQ77SE0ؼ;?5Fj&\mc.bf5GL b@km:Se}0!YzXE*_LQ񉥆P)aUD"!r[ L9 MMFToC͊Ֆ&`ƾVTK(BU*u,k7=^AaER2MpjPGm{+2F~}PUT|1S5|1 `[dj$jsT)Ds]M$U0X OF؂*bbu|;@]3%x^Mz-)6XL0z`%4^.[ -Z/w`mU`>{d}ʼE! W]ݻw} #\EݔeyHj2SN=9<6nqyl11Pb"YTrݽvI kibvȺmܣRn"f Y&0AzZ[^+jEK^QUEWwH7/m/_>{8u kc}7e<*/6Rt@K?O~^o_oUT_oerˈ0mu9w|\ן>+ֲロii\2/Ld}q]b??㏿_ i^$Y"yTQS]T׹H3q+VmqH A F9:Ӹǂ|WQIOڮT~l4MX}3ul|Ӈ5T`l!*lȳ˃hʦ0+MlN͇_JY2)8G!e%j$VQgkxD9xo5흩1!PE)*.Sڅ2rߩ g, NNH;p@DHݥ3pVwȑw8)N[7HArM46EoFUE5\E郃,]kޡGNΉciW&$T9ar>2q =>u ' lq0쾯.~.M'rNUb⒂Rt fv_teWTD>VS[rTL͉ӼO<Qb(ST7in$Dw/nic4rdy;EN84ؠ9CwXjdN,(Ө[TO5spS~w̔dzNMܶ082r{|ͱNږbb9clײ HԠ TzQM)e&(5U+\dUpg~]yUXFL)ƾDX֚uzXT#0*AU"7Pi2ѡ0Pԙ0;ZU۶uʽ[ (̚^ ¶TW [k#Dmm)V͵"fe0F#xZ|\JD !H7nT*oMa$͘{E% Sm97 QA( !l}M4aYՂ'ಔ0*bnޗJs)d1YX<85k3 3WZQeko{xQEO,Un5JT!3J3+ܓ/[#ǖe8#$ofުʮRP5z =@4׏Ԩ&~BF*u=*M2윽X0K\nfַ f@\Q! "͕+P`+j 8r*dYMڸҞw}>v غf*`chQWˢLmbcV )u^'N%q ٚ]\rdIDZ3Vɤ)QGeb(`JEd>b4ʈYҮc1.BGjrNL"+SL5X>*,4:ia"FM9FUH:Qr]DHc}ۇrNb6w<^`y>˽[c~:- f؇f׷~t=qf+Gg|ˏycoWO[|x|zZX|񺙧hI\E>|W~~99p/5rw?ݼ__w_BhUZ(y} 5qE5W5%RͩH:|6W\<ڣ[l=kR:&UOI.ݼݍ S++zM͑%(b7~DV٦ܜk5>ͬZwYƿ^SLoQ7[Dt,1*m}J)5LEsΈPHDtY Z9)̊qeyXW œP+7#03Z /j╫\̈9)USfc,K*ƼKe~SU+ksܺ9"JTܜ9?**Gl#]`mGKE8ZS"[.j(cdͨsW͈u8PeQ:{wdTB7{\YXS6 (8Gb5aP)% tdJQ0wnP73ě9iU /R܃ťۚeSmN3BUmNj!m*RYP73IWRD* Y՚kl{s&dLdQ3Byd1+ŵƤ 8$kk[(Ne*EcF8[@|Uqq}p2'`%.#=O<ܑos.Zu,jmL2Zg} n,1I \iiqcu|P+(A bodO߽Tfs19 4]UpO/sUZ MVk:s_XM9G"DX ڜ!暪]y,]eRTUw dRTlP}|+2ߺL\J(?.yO6vo_^wRq?̔۰Ϸ)fdqغEۧSc/>K}w8<^m|ww>}÷?۷ow_ٿ\rw \Zq[kRk~B׻tSUYE)3SH)鸰H܈/33*( fDyR|):O%R^zz+VQPH)gȦƷ92JתJL$Z-{7<+(xvi2Fee'=jg#S&57ାX gMشLLטB|*G?$Mwأ7޼O9f1j4s3l=v1#X4iy~|gnǘA{9ݏ/?Ym~O淿O?5?˻7O޻ 4Y 쵢D@SAduqS%)-|_t@oEW kck1/xa,")ڧxTB( 4e#4oZ5*ݠJ)+SPU!PR2;}<ɃZBBUbB +@ʕ.&t&p!{U׽ΤZצAё rRU.N_m2)xZ/*s=So@&}U ]q9CU՚.I \!s2,25BX"MlI-"9O%XCkR`[كI+5^)-pA-ka7/veki^Ş[Q'w¬y5ޣIx{12Mg?'Jixa]5~CƬÛ=m_ݞ_><M}>n?wziߗw"dt:G^j=SDTmZf֚.SktWf9\9\>)bY񪤗+?OR+5e.zp<5v*P` OYZӠn Kj\[UlAg[`ιCӥ^>D$~f͎\?BqxoYL7{hMYB1gfZt:Y@#J nɜ%ET!1$\QiV jk3c$ژEͬf\GTbn}f݊ʲǭ3+Jf{cew7dV#*O[L."""ȪiT Tf1T37/DdE}5W*!k}P*ݸ5{s. sGhB5V2U UGe|smMLrLdYhsY޻wEYcW̬D"O4Lvisff(K:5kMP5[I.1ױi"?t3\T%Tg]La7ӌ.kz޼摙d#2G 4/?U3I"u@.<"):O҂LdQQY >(ޮK i{A7FU]?Ƿǧˈ=YQY([^O"d%#+vt_ nmj:2q{>&9"EY/UDZkIfehs3Dak$GD2kDMHMB#aq#$c$/ƣ:fto=XtKkzdJ3*eyeQQO#L>=ϟwZw[wowJQ ŏ?|)޿?"9Jb/ VXTE!X3jpX&/CRZm,'TWXJWNj9 _I Jk\cL6.X]oZ]]ݰMUIYv}"j >UEpQtLdQPgaz)q[|+⼚\]6ͅUNn̜\`-}Uc&jg֭ ʌBb$Y+Ii5_+u"aU "k?^ss_%5_YjsSz6-1!UœbUѼր8K PsaYHLԉ=חqmtZDQ[`ѳa"+Jx.AN"9sR5{g揲^{Yիɻ^sqU },_+(bkpOZ113OͻK3(qW[,/?PICP%MsN9K,_Asaʮ&z'i*Ժ^Bc2 Z(*6DEd"5ߚ43UٴC"&jT"SMzF 5\`)&\YdYwemYJ!KAfM jɓrB4w+;2e,͙d%5{^aᎪ<.X)s`Dn]3 UU Yɉ}ŀ73Iu)&,4V(" 2g ]dMIy>F$M1H୅%R{"FdDuOYĔ>]{,kn(P11l_^FAFInќ3\ĭVURє#pj *jQB[A # 2&LUY&G%!S8 ij3"DjD2JQk9f(T;Db*ʨwp.@MXp42H4措(&:ho*+N [~4 GVDPXJٚ:%sԻ5},iVյ>GyOOgWU|xn6ت^x-c޼=co!33c~~9]Я:|z޷6yߟp8b&kOzpi\Ɯ~.W"n^UE=F1k;̪2wSPUZͩ\תlj&RK7aHʐTֲʄq %0߾{yz#(ql5N[{hvkX )x_?|~MA`ufx|U_[G4xy1~7??c͟_&s LV|""庭PB;@ѳ*[ٯ'K>Uuf Ѻk$JP\7OSPVAkL&RtaS 2bU߽0Sg!%4iBxC-D„*J\fL FWdS*Iy8 *+c&\4T ` ʖg,B$m"\N2@u g#k4jQ2.ڢ)$%p"}4_-857.jGwX(Sɂ.~URprDNb jڕWe+tzv. ?R) J8?` {7WM$ Ƣ.a_^ \_ɒOMjSkuֿJb_z&HTYKF04LIvd&lYFZ+HTemP !jYXl}8*,XUPfϊĽWR;anQT3J-~svb6⛛TE3j懴Z亻IU.nobջ~u2!b d/ L+̪c&3#@iΐIhk,@Iz93fUʸ(Qn^NBqP%X񜳵Dsfdqf~434 *p3GpM>kvls{1+E j[VPi05d71Řrj*& qlik*}U] 4ь, `fJ{3jړ]T͐)~_4c,~vRw}Le<6-sVQiEW #rlOL4JΉU@0DՊٯc?2 Zx3A^Wkݴnj$9,`8jfMޙc3(7UF SWqU~L[hwcݾyx9~wBۯ޿uW\sPwFyG?SX=m Du\_.?~>/o}xWU%4eR+ n[k6GV}f3VDOQ_!0eY@X+Vc?-_ٕlݫRPqW<6$]de AJ%z^O3S7W=+Q*Jdp5JScPVK(Rp+ɵNj;ckBPLe՘$g2QUdR5j'^_eURKjkB""$D} 2„ \\))/$yMQ7,Ò\yU,@}wyhǵX#^ @19Fme3 Y-") )Z/;'gt}ѵ K8/=*jZ×**I luK{Huf4*Vv>];^ |ZHA0(pZ;뒔3ua""%O)U$ iƅ("sҴw_ <-HRͨPW3q3ߚA2Ɉeq?R!ddIfTǾGXXP$l@2Q ="__$jAwqLD۠P#[˪LmNՊ.9"*\W7̑}`*3cVΩa"ݍ"Fj$&lUyM&Te_M{>fH1.zcqJT(kE.{TPw`*xG͒oĘr,6sU4#(6X[rת$*}Q2D-IX޼+o1X6צP0KU"0&GD3 *ݷK3~_vd}/㘳m=btq]/ƚhǘݻ #|>&1'U"X+Es9dF(jZPGvQٷ eB;r1ژy#@nU.֓4qDv^L%%.ҽ Ydd-XGgM}.snUm󶢸nO{|¥ `h5/Mܘ{o3˻Too{4z߼qJ\1"$n" ?m_\Qݪ֪[}ٳmEkd1.aeYeO/LH # Lj{jj 4w3j^z7޼99YE%T42D@dpI0ԬY$]E$WHE͊;TXI判)3q{Ka>=\4ff,1yJ=\{DkoO1/}LJ+ŋ<ImT_~z.aiy~A?|||ͯAf'}ǟnv⻷Olf|Oy%jgZ~!Q Z!O/j?3?۾7?___vH ,9[Kht+G)%2 q31Ǿ>ψWr!8qŗXVi4*NuѱQ<ݵp6)*kd@JB|wSsƺMݺrӗy-g cX^0~рp*o會塬C,˼ Ad8";K*9<Y&"=6(v7cVw3E!L{kktDxySWu,D-x˥@uYTJYGFY8"Kb(Rޭyw_}//˲,kKo}?'qm~췱})bvOӗe%Ͽ{D\U[5R",Uzb5")0!F94<3WЪSy.xi(/цՕ c7vdA%!*>-Tl9ySĢS9)s)ժ4.4HyM0zUZkɉˈw֔D.ZQG"!*Q@!#in\l)*T}` Mؙ IDAT`rA~X4Q9<;Q rQJp#ADf, QB > 8)\qȓj\m׃)" }e6b`BfLDJS5(Daʚ'ߔvjCIJ`"9//z1M~8ud Y FKQ `.'GEUMnM̩lsUI^EQsQ5ʢ2J 2\D??M#0 U bYH5iȤyǡ3]dʣjHJAe98?{̜EYGռ~L> fA*R e3Qwn",am 10xZZu#+:UJbٚsR#riyB6SՖ]TLq۶LuTfcJkyIJrԸU3#Y 4 Y—~OceT 3'0rYd)jMhUΦ]}n6J:m]Tr"̦ѝ*T=HB5R"#9n)&PWaYGŞl*,bDĸukjs{$g " SL,׵nkL/w_~:*94A7[ṗ,d$j؏(Գpmң,0!BE*M,FV\幵T[w=1].O}#Gjx;620FfjNNы*OT-3D覢zDq;"UvHo>..Ţ \hkEjS\z"}#8oVeSek{o4+8KT`3McO\<2rd\mi 4Q0!%2?iiKY:ȪYNDp К]uybɹkPY1#U #J\MvT+ku}^ 2O-7Td& f U5c$T2"!e?[lk_.PtQRWol 67wq<6޽><~QjVo=eb@X0>jdB}7Q3#Kd$UͬۇK־ 3.9F,,S9BD"KՎU|zZ?Ķ-"(1Mdn*Mu{HUMUSUºtV۳T"3GPUO8\ݚnbۛ:LmR 틭RAEv??۶E_oǑ.8 ޶x}?zI}/oY,)Nq72*"[6#j;6Sږnޯ۶˜,wfqF]jx7_.O?3)b,X5,<6|قYMud_&pMIEA(d,>2O,~MZ^9V@f⇫9V-ɩ@s<eP0ʯȔL(&DcN29??Mp(XF!*w'*'Judq`)f <롪pʃ|8i&01"_oyDXY<,jb C*95U3jΰAB!rj:3TNN91 ̸Vr9ߧd01bTdm"&ˣ3+]ф3B>"2e(3FUf+"3r 1KFqdeQ&'Z66YB1؄Ll2 '9@y=88(px u{;mHT-$E2E3ӨFl3̺;TQCw1:HI`f}S HeUzX<y2ڕ|OO{n1o>|<"><_W-3 A6PnieӗqO={ج1yU7xOm;ʴ؞_tbJdMnݤ#HvZ(%"3I3)dEF*@)jW X,Ud''2Bf?!r*V$f8֔.L-2%/jE ;U*&]Rd)bfy6Nf]7rM Ys͓awR)Ya;HP}& 뜔‡" dЕ>w$&[ytZ0i)-@bn6_ URIk&P*x-UgxRftR5  G5dJ B2%`lGfCfP$('zo&ɒ*)98L3T-"(K(\lڙC~sΧX5CZ 6-dI,ԦdSde6\"0AHĔ.Irm")2V8YLcӽg6YVS/&6U! ijMrf ѻ)ªJsRRkqZVVf2!H<3KT!UYDdĶNv3_ښ~/RsGU(z@ta Ԇ \lde[4ڭKYRZKP%x&#vʈ4r _/,&pU5"z"%HBItۑEJ& MMPq*!۲fbM֣"1bQ9MwBqIYYuywQ)T(HoJbQKWHKb mm9ͺTu2cmUFrlwx^{wL/.8c*Y DZ7uy;݈h̵2Ztm1\>vi#b1&ӲJPU < \رv7}(caZRծR FJIbbԖf<=_]?[躸m T.%fSm,, B*QY:ƨES#n7O49aZqX/֯M]:]QjNLy@Xݝ<ԛHUI-{oLVvH\8SfVDҮڒm]WFoKPIum]JF@UudQ ¬zbӈP QUpS' bi }ۃ6 ǭR]2\|eۑEl==}DǑ1ʛQR?ktYZDkdh?|#Ri*v1u)uYm1۶t߷zvrmձ.I~uݷ=Ȉ#7/m;FѪQ&1Yf67V ۖV]yY׵0(i]˗//_ٵk׻~wq 5_md,924LH9|~Yu\ןx{y9mwwx8Ç߈^_׿+Ps,EN=.0(+:U2Snxp T0 IpIL6RJjd5bux@G9˘Ȫ"?/=ɴRQ~&L< JQ%uB]BNN<.W)b2)R,-:x)$D5fHc7k*. 2g&dH$N!:xl{NRN89YS6IU)g3_΍sIJ(Byxa)8ԚnA{#Ԅ<3rDf%z3{sl=+r RjuWՈȑG]@HQ a~ 9׾."Dϸc݇< D)"`~xylcJU}r r V/K=dҏ}Yxr ԛ¥ndk֚Hm>[XEeېqG#9N) z`؏QI>bB?6LJ;cY㘩e=C∌;Q 2+k7)nb]R3LL؄KT*\,7d%UAeZ}TStxۂ`oRjz]ĺ@j^?7_Du712(G}iAҍ:c}} fՀ&ŷї2#J"zRV}YԀdGa7+'q :>h.YCKod`֤k4WLUQZr9#Rq)NSQJG57zFH$\i3u@Gdf{Vsa- 3kQ9ƈ"sA un޽/m\|i]Oʀ@FvU#=GUn]1!&#CnGo-+H޾n/{nRTLbDf#oW7m_[]ק6>U+ n2FD_5{3 :Fe?n[uSYC$r䂅Q߮7$*STnqa=>rJ>xg#cvU$Nd9Μw)q1Th'j7qS 2t9_JpkY&O9ͺ3N]W>_)wxaET\+ǙXt&ZNKTDןH=||s^:e27|0(||DC<곂: ɹH;ˎ9 p!p 8A3c3_3ZEqrq5I PM:9SN= 1z竟qMLW1S2g<њzH!rT!ɪdɠ1s,P87 97Rĩ͠$1Ȩ0-|bH@Tg*E@ QBvx\2Y; 3IddVS ~9e^82.f"_O;&j*M< f]EP"YۢVQ8#XRZkEx, #eB 5t0ݩ)kӪXB:TUMOd(AU%vS~ &G̈́M-"IGFdvDvR}*ͨ"\/`JaҦjǖEٴܳj.DDN/A`ߎ"#bgPAP-B&ą1vw?"R:e*1 Rt5hު\a&`{fG.Ee,maRjuw=K]M= bJRTj(8;qi}i֘ϽEt " b죘չGNXFeqYGlm(#Pvrt}qw;qf7E}qjf><D \ Պ* nemd6{_4=o?Oʕ3VpD]4a[[DTbDytyo}Z/=C_G_{*Krmݴ˗>βn9ϗ~ǭ^~Y J8Uy}}#2r?zm8秷ݛz!^[Ʈ/۾]kyzZ׷շ'/w/[* *2 P\/Ʒyqfmoo?4!훙^0r_% 3FE(6wq$`es@KAduN.dru4PJDSHPDyߞyzx=ן)6>YX'Tx/ @&Ya"&(̑2 $Ԝ⯵-kςG\?0rz ZG9{sӳr1{)1w QYNȍsy-D&[c &cjGPTD"~ T=T`q ]DUH-`$U ͳL$3.#G(鷥2+JeNYh3p9&YJ*0 P&="'Fqq% ֌1(X)EH}#_)|ݷiȜ},A)3cd2̨SP ᮪j XP,cWuY U"#EUQ,# \k 8$ dֺt0-rtjˤ_4CyŸ) 8hͤBoQIo" a]nۭ;ںtƦ>6u^moGejbwmJt=gVW;uc{H15E i _5ZG_R~Yz}ɚ}2p}*o!*jҷ㰋;!vµUV JfUel }|$A5!H1ԢR}T,ifI@DhM՞.c&voF_>v,ޏ͛QU|_u_#ri|[dzznۧ <=e~~ΦwɑGfuw1<)+|I ٶO Gz̸|Ǟ/d*x߄ ~?L8r,ǧk~%@9/[?+ϟ kNÍs֑‰>ՄIb6w2#ħNXY" 9僷K%_lJz(]O='6&)6pmVT&5 p.gXdRuJCanq/E4LךBH9G+&S*<LR`s,>+Źq,gE&tOv_(Dł2\5CuBNxJѦLA &K;:Qrq3~uJqDl{4Q7Q.6ֶQ~qu#gQCᬧåb!J  #fQm D\4@d:Hh??#0yolfF+MFg+'JO≰BgȱeΕdQl LvŠgm~BJ4@("Xk޷j|jvG{Dcѓ)J"2ǑL(FǬ!`8ƌ;'f*RHtK.S1hh}!5F S2TcfGfRBCD &+`oK&̬D 2FLj#"#řSZ?3#1D0̽j"&T&FڡX"Ff?#xHȑ +f|(T?['-̊, 2Q-p] LAdwPf4>9!gmyo߷(y`af20޷C,\nlc#f2Q<1JMx>BE3#sՏyApf%g]lŨc@fJUhC2)EtQ D),5Q.X TeD2SZKEdpIv%cVT8$Î#X IEj$MUĠ>/UPYb9 9[HG4)=l}[4SspM kI1ĄJ&3 APuPHe)amP54fpj`jR"fr$nA1Zs| DY"E(1rcD#{s76lGs# uMZFiD1o*U4fd޺1MfU81JдBDrv."ջ\qcw0$fiRc")m.Mg!,9fUn\Kf1V _ڽ-z%-ޝ8MY*2euaaeԔH&-nĈ!ິ)82 *M}{Hg/ɯ&:rS-JJXeUqlG$TԈxZs\uDAvC^oo>]?Tıu,ݰ)=(o/-IQDݏ1qEu8rd6j _ŵIjvʃ5\jqJВ'SzoH^ 3 qչ6 )q⏇O?0o}8yKɀOq6, J}N1A6frw_S |"l'I\JPɦ٘+ ]dUTL\9E6Q NgD%UyVZF aSQ,&0+Q F#bsYcrޓ, DXZ'`2QUdYu$Tphc`NToiAY>b LdP攄U$9tnJd…gyxV21[#jllp,De1[ SJ-3!: jv{WU4uxǨi9(O9]ެ7}tuDQ5g\n[/tY~j^}yrZ[oYm/BfPSpPr uL(LMYt1 ̄+.&=# \@^Z?OK??`Ao34-y܄R 'V|JP O>uNf|󧓧k"i9c?^?%(B;xqdUh>5 tA;͢Pbά&%/;x5Ȍ͋te:UF`ƈ:_jS3J(}V5`UL>%D<ܘMM+w`eؤtr"JQEUkjeQf* R1}blB N)j!8O>sgΰgAΉJ*.6TVBh}"g$ߔE$醔&֏3_ "#ϓ !q51}Ԓ>)ǡ91_83J(^TUm]*1/ꮉ砙\.J)jbnƘk^uo"1+( |TKTbKY.&Vqљi"VLcb:\53F3egj.CTCEEG]RtqS$ Qc^CMt܇b1H~6+JQkGTEѻ,M(/ګTʍmN1=+b$te%k[ǡ˺b ֺ 2E{_Tc i6ojkH7qUW9rTҩ9K,]9B(ֲn4cК43m~۷~Y.#c'K|mGd(@ p!#+KgL n(&LjZhS+)E4kdEfL28S^">GШB(bti}"VG\jNEw ,GPYU8+$TOW ETbY\Fnإ7`ex-$m [)k֨Z@o*y1vyi9`H_ʌr/Bʥ/]xTG 9 U_:fhuxOI7Q#saNfқ7,L3%vRp(=-//c ǘ 1ۧO/o,qץ۽-Mdc۶erRz}if5?^[/Q$Դ2bP~wSCeDZgF5þﶮVjnwuumo;b?]ױ_f*kJ9ܪ.v׷uU~7>/w ww// O|޶4?j}ޤ[\(eqlyM`۱i4Dߞ__[lyÿSR94-M)TN3n=/9"cS{&LR:me'3I[p#- "ޓO;5Q \YHgO,\8)yy0G* Ss-Ug 4*&T,<Ɠp=扪exҥTLPUax@l`>|S+Y(QAH*E`3qF22RPK`"2QE01Iν&1%"A>X[)e/!!3C>v!tVwY78p&<ތlϟ8XӣĚw*kaYCF=ȣIEķxLXZC:YULM=b֍Әs} _yG)*[s-8 b%D[:`)"7736[kl鋈f0F&@+ڲV5B[S*UjV\)dm[hqEť]GOKwy(U3M̢H3,cb <"=uOϗk-QTnZ9TOOi5A.oOֻTT1IIN[Td"AP؏ #CL6 IDATL;$RK#ba*f<"+ 2g \x_zS4͈HF ~=\5FtiTͼ\cd奋)Kp7cp@{sQɚ;xz7 3 P&>P^fVO楠ӕ^m֛Ux @vJɥڤ' 31U(U1@&3UܛZSwbA&šDRi3^(J13#̬*k3*#8]T*ATф#cD2)L17""h ztH͒E)umܪw-RŘp[Kw”m YDKdQcB^׮j(.F$)3 ~!H_ۮ@1)i)Q+ͣjTsk^Q,i520QYyϯ_}xښV8U//Oۍ<Jd>JET43a>_~YeI5He{ۺ\ey}v}y_r/}Y[&+t^/e޼Soy{]/uo˧'6-bǡM˓~{ynmSln}5_.Qbf~^~_ۿIl5@~@I/œcb){):ku9 S'0TT*' ~Eܩ<3wr2qtߘr9*7Ndɇ{j#L(OF)|Hꁤ+: )p<֔aO8C[Ty'Y3m2,l'PDL13Rgdƌ5(y> /G >儜C*Df1 GeRIf!~k6)Yә8\r mYjJs><7'DC(2*8?sL| K&+] Ԕο=?G 4oG4I7UEHDBh} g@x99~Χ$i߫tZľ<5_)VnfZE))؃%y:` <@UY#(ITC:BEbv3Ks)sp,j* m?2#awi&mDdf u=GJdހD+:=53:ZOOkȩ )u&f˵;]vٸTR_Ś6J"rYY,7HrvP@r$ Hnd(r*jR(NMA-.41H>ߗsTQ{[L5!͛H,gRdD*Nױ*,*-Dy^J| ({2Gu9ς<Ƙv)db IUP\ UwcO@o{T! mVYuP#NUQLDK]fXZ\\I4UEtD+q_T%ъ2]4T435QTM>y.ɤ `,l6T yz鲸٨ZAS4E"Zӥ-1JaJi4,hV F!#j.L)4S LUSW>Aq=H1f.,jn2O{3GiIf^3kTe"iɇ0aSP\e<'4)n~/Y"JkBbI)|h9E*SD> Sqrvrb8S Uu P# | ̂(2 PDe'x`lrCM,&be1Sw|h"NTb w[<; c;9Y$%9xNAq*$'tFΤ( 5s "3PY7Q=G2sљG>K2,0G·r메aoNS2EC}<<\s}{&XYq|xD2g&^̢(<>~3-QwUJQ[TT{RrDw&u! Y *i*NW%DF_[ܹ<.+{k~9f:{F Q*SEke#k ~Uvo'Ӥg**,$!fG=o{]Ȣ;Y"8hMcĩEQbY[~4OBG`p0H`{O?ͷG{cM,9orۗEHP͈ u(BBbfjmnDX1zC GT'[Q#A¤*P#P7dUfb5U4OS?(u5W5#PUs"52:*3қ㈼T\u!8 >Tkw P˾oĖ-#QZk}JH UȚf,fsfɨTLAV >r#6x<ּY՚N] nx7#LQ k=X{Qb&':shALg}TePuuaUQUaݤdI[]P)#͎S-2Zk b .NviѼ-^Xq]eCL3Mݥˆ@3k;FBd ,hRCpkxKI1)xd^__FC)"8F,*GT)"Kd !y4B @"7_ɑY7ˬ$՛,9@lvfˌykMcJF=ˏ?_۶o{%q]]XVLj%),ݞ>j{/[x=ǧG{ݥyUb}[߷.o.#1~Q:~};_~},O'bo*fv}."QюM aW8c{W@[s~4Y?.,AN}"O|yJfCJDONa>#f9($EgOS1߉x>H ȣEdj*fa}8w3GLȈI&ZB$pFa$)8i]eչsAJE3ٺ{7qrtߏQ6.kJUn˫T3׋<5ӢfTDW"ʨfs\(Eh&U8`ݭ[e dcO8 3TjBAI*:@6ӌ#:+0 0FjE2sD7 UzZSoüPh\\ZS7Y @^/=bC])I`1fQSm-Aڴ5E"mqm%DE3EEd*%s]ڲZX/ײX[}e#"jUu.,g{? V $FbYYlj:YV|}}bb,Vt+-?|GQz $}?Yk^fr;iy^ßӧUo~*mo/ׅ_*^/TOJke׻dԟ̬r?c U|~f˗=ꟿO?|@zݏ׿Vw/קo??mgHn5b0n|S됦(W~;iB|DH3ibbOߚVLrNIǹƔ>,ȟIrR5/*'!DqJsC"cPiSOB&G3S|]<*BD̠:h%#3HA?'3HF:YRN(dU~ED9y8PLUc P3`"R}Xkfi,n,2$U5HUyRxk"Ũ1B1P[Mi-RGf13ϫ۫oKfl#MOz#D {B+TVR5!RETA*Q9be䲬5X/"ByYSe2E2rl"6;$JjBtDrfMJ0ݤ.$1`e U)S߷QY@BDL{w1DjoIDf#}7`ћ1S>[ĖS0MHĨClIUvy//K_M_m;0v[) u$@:$rU왦\%{%I$IYD#> @C a aw:w3Uy87ooJiykwok<}zr?DŽ崛|MO&^-,( LUozFČztZ7`ocV:9?y1iw3{{7y>KQ!cq ye.G}.4DRͲ*Hq>)ZuFPuQ+ŚidGSL4y=.«=E=7oJZ+F&YUiVTFn楴4"} huJ2z*yI\f;nӒ5)UCc"magM96s) oeiӔiWoVc9"LDbO90j@LSPsfo^M! I@fE(i.k#šjpښw;἖VkuQ0Jseo-RN@z{jLs*<4 uo}'U4yuXid Us_KbMsMS2onpZm(MHau-#4RoOԛFCjhj<%)Zmh(.`=%yK;-|kY 58e*fIw9zTg&*"VV夳X2sC;$"I)jj7GIX Vr )!j D$ Yp_E$Dlsb1hrJ$]*xi)W6ݬJHkLS9Dv5R%UN ?VKKj=Q}ujVܮW$ݱ oV"6MY)t07[[J*EKI5甕KlNlޕFIK)#&I(nRa DݻF5"-B|zV Ԭ)iI┵!T@IU0ҔWy] e)=i"@SgYxLYJS.GX~X[ϟ\NֵZ[ë7wuGsVݲgAoޔ\]G߼9~k"iiǗ.߾ bO)Vk/Ǐ>=>t=,jI3 )9tgLy)V.WW9/oOa=FnSj(em\NwO\۷|xWkCz2.>R}Rc!!1Ǜ+p.b_yzنYG"d}vV0twn`ׇX G7XaTt 6#PgM{u !% DzG`RWق1ɐ*mZMy۷KPt6y#,n0.=#X:6 % IDAT8}5`ӺlrݛS$4F^A94T<`wÞ'@ nC@$viJw&2|А*l=1R :4\Ŗ<-N@1/cޏKzB8C OiԒDf}Oo5)]|KFRI^H_&> ËVA0*p: R";4GJ[-e!piUs7 oKi"9ԛ$ͭ!Һ̜*iJ4;BsNu) K:oVTsDz Da9%k֪ J;jVůwWڌJIr@mϏzwS&7[|. S$*-=FQҚ51,ӀȒ2%:`<<-"R : IѬ2ϧVK5EweMQ+%DɐR[&yڹTJ@3_Y 6[׈8LjcS]Wx_W˲_N__h4gww\=޻[iTOCm=\z##x7_}m[QCn?5 5῝O!݇ Y4pfbhySlhC;*Iɱ=)t\x8fR= .C.@q$2ң{h1*-d9\mVt]̍'5bв]q^1,q݈{!CLkgL:KȄ2I)À*F 7d//ٖ܄5F #E,qhAtaN!myuakUZ"Pdm10&ȕ>s 0DS^GIKDW+ DլQ6 tY0C;v|[tnM?~@6GOlyV .zet 0(-3Ǭ"=a8D7il DDO* С9m5CD0d8,IR2aEDbH)}m-"(\BzN <$=|γl-B !gexӜ _^kݒ^kmUIww4KNZ:nYaӱ Ts]oBkӔ$+EL9b3=.H6%N+,PUa4a8B5 {wTy38@M JHwd:JލAD7(W;&&I, wRk0Rk%Es682)ZAH!^z]kR*Vs][ 9 (I[Mt0ADyϯ{B0WsnN-*IBEץ6OYG4֥vZ9gZA)kDde+qsZ$h_J>娥)]q5B& *sfV[7^%s"ZCdw&MhByIy8V-jsAEO ܬ4c9VYef*bhVW #EZWfe}_nZԛ"=*5xXy4ʌnwPinya`-蘦jk9ԲN)ODҔu>z:WI7ky p5]ϓ!4!LN`1X4U"Df 9k2DҸx\iPuҔS6 &j<YO 0[O3Zg#{9+z^ &0 mڧ/O]K'{!¬HkBZ>a{)YJ1_>{NoEL+k*^ZZYW; d Gd4**)C{:(!uu+@C8+o.%][_'(+$'f5I_<{իMS.=eϹ&B=^Oj?=ݤpw:8o}T+//Wtޓܽ}_=%߼ A,:Mb{\ixΜs]$a.w}#I?r~f훣E9WOvGϟɓtv=YSNG nJ˗eYɐ"j/ER~m`rJ9Ǘzv?~Ϟ?I:wckf͓Rj 뺨L9<$ 37 ^OnUD$kjKe_&N]N澬SԺk 4ažGqӕp $ 3T 6A-`V벺$qEf'E.tQj T"kvw2uE:OkW ?:54 B"v#8 ".}՚ S͐NIvSp5ĪWo4d-vɝJ9 _[5oaNM ݭr05_^Z53뻷3AsjtYNRnbYI->:[nAZD[ꍠ&>ݛץA IewȪ,.ȚyW^߭s>2\ҢYPYk^C5{J `]*5tu~x]jw*@KHV rW^Yix{l_t~ej,z2"S~:Ȝ`\_D'/z}ꐿw/ћ3n7y7ǧWyj~ Jq}"87oVpJ#Bw)|{׭ԻpZrݔ^xNdN?C<,C =gNzSPn[^u04'FE/ N*[BĪ%Aܣ32=,-2/FƮnFC{ p$UFiwϮDWC ID\scD=@EU'Q!ԬLIf !H7myPM:nuܕ^GC|Va{ɀZ"S$IfU Xlfְ<ŋǧ[rwok.绯ߖ5k7㿼2OrBZ>=ܣİGWᵖ6?wE!_,kyʜ/k-flFTTf `p $hTHYD[+D&t40s *J7qs$BIއXD~5%ZXn5Z-$Rz_p6S1pW[BDE0ADJ!ǒhe-v1ȼYBmTZ|=eiR"ݗD$JxR&"lbLDR#XV6^Y[;c 2= ,DǓ,D{]hNN!m4%QLգ#ZE`D[04]p*%Bu-*"iSdu9ʔ#AzD4df }{{ Gr7[p;}=~sIDAT#ah֪V,JСyKx43UwS[E$崊*)$'(TP<O댤ALT[SRsV3ZEü?ѓGEn%KzZ1𛫫ORJV\qsovn咦i]\!O<֥Ӊdz,ݴؿYx,9&œy]l]m9hpG"`N2JuH_zs!4X80Wlm.oYXI65Js>mL͸ms8wm2X3l<{AvEC1@ s=m]/lzƃu@1S-N:gLG?f<޻-0JY>82>ܳc3NX 6w.Yk!k}qbo$ݷ[惍D|MF| ^h?wSnA8wm.Σow(tP@~plwxD~o}7O>|ױ<7FڻolOl/?m1?;H͏f0xqn?kW GoJ~m܎2|_w>=#a={w8u?|pokFw|x_[~5mzo»mehX{؂Ц;_̇ |~\Gvj͏lmle&|?bhػ׻}߄vn;oV~CS7wmڻpy{hNl/^ w>TyG|\탏yk@/f|}*(e|d?O['~A= {kygwm@GF|烞NO}|YS"c||Oa]|;A_$>zSIijΏ+y&#g? I .N|دωџ!OקV Ï/ߟ|`:~dwW/n?.wPĿѸ}^p{1i!D9n?T6}wÏc{k/_r?"=3e?i_23}72G7ˇmKF\ OGG?.?Ộ0=sO_!'|ϕ |_u/,}Jr.`?_"y T۹_?bÿO k| p?Opk|?.ρ_H3O0ϱ@Ŀf]| p?^][qB韆f?0ӟ&>o<.e|D2p\?fIpa?Mr.r|"i ~8.?f . ~1\(Of f . ~1\(Of f . ~1\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :Džs… .sÅqa/pa/ .p3?q\ >'\ . >7\Of f . :뤖EfCyB)0ҩb,,b| Jјh9G7k nQ6eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eHi3+L2 @4rfi"QFά2M$4șSD 9r4(D#gVN&eh)DLY9eH24?94ĵ^sJ)47;ߢ`09nz$&I_tnf#Rym0fRʦڕRRJuGGG jX,9m۶lPmOOO)R~ݽO}9_^^YRV)e69< (OӦiL~FWWW{h4><?=>>/ˇM5M3'|>N]5MsOzj՗j^?wh}~mR _|9g>ӫRΎIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/10.png0000644000175000017500000013053114212620632020545 0ustar fengfengPNG  IHDRlO pHYs+ IDATxwxG҇k6r9L" 03L8gξӝ#g;l8MF$!A@( V<10,+i13===mUWWq%͂pkk3 }G2}2̞tk@A\lu-+z6E (S9b==>}8Uf́ G::ن;kH`άXWЮB_F1 Aq" 826! 4$:0#}PA52cmmfD=:ԞжPT'A?6cq;64>ҙs w#lX\3yFAFjʆ2Bi :T׍ Vs}eFr,+:}m ANhםtӥ^%'WAu4Et0,Q": j, 3KtDKP;/A}X=.AA@Ή:2RAA@ohUYJ0֦2!ًwʠLEA0􂈪[6 OLoLea>#Ysv|K,j4 DBf]* .X P(P@ŅJAMqqskvc|*Ms!jnny\ XZZv)0QeE lErH?oX_(j] ^[DF :tFammuuMu72ݣGEGN>ORqq}.]ڍn;Q]4ʚXl 9@A)*'K+| $TdE#$mmyCs RccCjZv{{ǎ_# [WAҥKwbQZA.\؝i lk ( I'evL2XEZ{IF%bWU*97~>ְ G˯/ٷwG͞53U;͘1g9t7|{OJAd`ootҝ;wΙ3 ͭ{}vsVw?W8|A@**.i潵JQM no A+Wھ}+S.Wuoݢ"HiAAŋ:t=WP%2GHRf5ˏg`TmRR 3m#PlTq5v۬X,5o}q–f07h&9̩eժ;=o(bAD΋-ڻw/PAA/՚=MAAIHK LIqF|vh_\yDV Y+u2A7/;##O>R(2%9CÇtsQ37G5^gC7w#TE#(86]De@d  X*`, s bsX3 ΜJRB!o-6e M,Y0+hiiqN]ss ?B;cckgck]~;3CB;? wAݻw޼yhODՌR (}]ϺmD%fEq"ZKffnÏߪN4/7m$%KVje,-NfIT*_ 1}l8^{wm'"b" Ŵpם3gN{G;˖hQP";Nhj%,({ s:;Æ.ۻS&͛8,L} F*-)f؞޴;> H `߾Jr,A<i4CA3w\tss[hў={fϞ~T,-*G"bŢ:sn۶>غucrUmᢥN7b^v?P[S-Khh7+ KKkooo֎|"<7ٳGtss[xݻ͛ {T?U7Y*$f;Uh;zUULr"X[:Pʺ}lb„^/h/]oڝyxxvcO4. EGB%K\\\/\Κ.[,%m% ኳtkckԩj3oɛYBfFmcۍ QupssO>*-iA/hwa}r`K 6 r rཛྷ-J{uJ%y|eK VKP$lbS`&euso~AO OlmM?ֽÆlyU,RhzqvW( [ P`u˧qWqXՉIɱM,HU"UHbrcOFW=xpRQ{m_]@-ą .([ wXcھfA續ۄ h)ꑭLFOP~J-N[J˾8ẓ< 9i7;swJK1/ zc.[A0+PZw"[=d~Ԅ\Ʀ6(@hP(\.,Xٻǯj˖ Xrq=|߻}wAѠ떨M`N J+B>#Z>CªxP%P,Er2#ŴKMuO~.nN+Wټիڱc[shECkN￿SK7BA䏆"XuY*A`2i vI;8ggKZ5*E ry%CScCɓg_AyCDhv1 kZŭbU*J%GC''7{{G{mmix! 022J=V(4F[Ӧ/psfӒj4*k( Bkf77q@$jCcA乡-Qu+yX !/053) 455715=.so$I2,lP`@TV;~MM f -,.Zuc͓͜i(_'f;2B\>1XXX\.BA8{3|I]pRPDEE;w˗֡24N/T*N^ժ*c6È(Y̝lm90"*IB}$IQS! fvrEcƾ5.?V\\5a4V7SHةBդ%S_;v\46ڹY(4\uO$!ejfp*ccS/X'Hڶm9}iVVzVV><+(JDbll+]t$wy]]]iiy{u|}}y}} 7>UTr8/ ;veO/XJ*\^RR|q\6raGijhKKKs "n0B IӇJY<ASwtt9S3 89 bJѿR\vW~b~\*?jiiyw [=;Bm}O?t֬Y:+ܹsg#GܴiAt%kƍ;|֭b攢($---'Nإ7|s}--zAD;PR 'H/YYLN䉃*3eeUJqq.]I:4 m(:_RIFw[8b|~Ȩh!_l6;-ߵxf÷,_+NAqppm~7x.sΒ%K:h5|_~9}aiiiDDkkk7\z5sZ^^nnn:+WVVovlzC$B]՟fƌ'Nzkq6mX|ƺ<HGu Bg"|i׭l||L ;bDf9z+RY[[yyG.yy@~^[GHR"ik^z¸S@&$_1;!{QѣGOR@ -B( XR)5"b|PpDPPGeuGw^KIIټyqVWCCoQ_9sQX|1Rddʕ+ }{cFD<Ho>|2={͛:ydfEEի~_駟3>Ǐ#G W^G]vڵiMMMllS2|𰰰R ګ!vf(T4"/\8UX5vdK k )00z{3}Nupr166ٵc N OθM[6+J)du;VPPŻ}UwmN n289ɔ9ERZWW .66OYPP~VVJbtyHHȊ+4*j"}i&u/ZJC~K4wΝK;w׿nٲ%***44t˗/߰aèQ:HJꫪL&p8 immSSSرc_zN;Sy f:wX YFz͔+FF&f/}RƏkl;uYܼ>CÇǚLCkJ%>oaaebbfdlbddllljhdldd,ik۽kg{Yp_y֕ 'M Jt_;f ^퍆bGFE^}WUU^XkkkalTZ=%"' 775k֨;vܜ3۷/55uܸqz P___\\}mŊzEsR=q? LwD3}t!?}T*JK,USSimm>D 0 rѣ{۷tktliɃ NHԸ駯$6##W׼bL $U*QdTQRج1c_( 72zdcQkf.6tYg+nDD31 `@@@fff/ިhժUׯ_N[[[_xDkO?8sLJUVVG޽[߫Χ~za//UP*++==3nnnݹ0~M6}Ǜ6m[|$ 㻦9uO AV@Dp@ +ccSfHeeٞݿ  Q11)7jl wT*hiyz9:89=rdRxOR)F+MCΨ &h'øqq%qnYܾ};I+W]x155:dnnبT*wAW}qqqm'O)--qqqq3gΌIHH066^)ӧOx6RiahH$-K㣏>Z~f͚gcR?wpftڴiW^z׮]_}U;Bňo.Hn޼s/s> rr2/?1v\\PpDdTt@`(-./8$ÇɓP_Fx>) >}&$I>x <<\RAAR4i- ?.f@"@]@8>vj//x1^(45%;[G")bLf'#fZ|μlW7Ϡnbb=ro m)>,.pD[[댙ZKTHT>044b"d2͔+5>vR̹]Tt "rxԐwnߺuw988{*Ucc<ޞER_W -QRIaƚSe0 *~&4tɒ%xwէ6;Xxy&%%M[[BN>SSS\_իWݻ?Nm޽>6mIh7oԴpBƞ  R766V(|om>fddNKK۹s/Dӄ~W(28˝UGGy_66153m<A.o AV\kh$U0IӦ/z}L}VFF Nj$;/upu'xСCchaz#rAANEEiUR*'FRʍ0mjD%R… AAA?sXXumۦ>>;;B;wBCC:yY U*Ց#Ghimmx:A=GoVȈcݻX^[t~?yٳ53(66vΝ/^dD477Sx ҽ\̱Ř/(rl=q+(}:{R3sK+VN1bOTVqS(<謁z?jg@< ///X_j`)))sttȠ7nK._ɉDe$/^ZZZyyڵk5ҎRLz믴;~ڼys7ghgnƌ b۶m6l0aVTTM0I ;pi㴴4x:>=)jGdyZ/TTc#"Gh+>k::/x*? DCA\@tϰ̞=TdXAtVzƔDǯ\*Z(NT5IyyyKmD"m&%%l߾OT*U~~}V^M$_D~^DǏWN.1e򀀀*/++REPDdmW!%:==h`בPp}t_?{FFomff6uԘ0##{9dVT'Ox}olaal2f1̉'୷CCGEEZԩSk֬{Vnnn&IE%?jv_z}(--}wJg}n{H$\t~~~?7~wK,Yv-cf +WF.@@zN֭[t{Y޽O}j,EfwnX 믫ݿѱ!!!W^y… SLQ ~bkAzzzUujPgGE%ׯ>|8PCI733Sijjڽ{͛GK#OEE7tvv666^~ݻw&@+UhK۷o?zIee%t֭Ө\ZZѹFEXZZ҅#F~!C>}EUV-\2nmfAt//*hkk]t?BP(]|Y( .ўGn۶M",YV_QQQq[nuqq9s8::]v6mҰC}u *++)*..9{M=zT%mnܸ!HBaAAA^^ҥK_~_~^è_ BN&}"7 ?ydnnP((jϞ=$A3%ϴ 'MccBCC0atƍ׮]K@ 6lCQԗ_~y…yK 55uŊ_^tz\W_}uΝvN044 ӟ^믿ȓ) ,wvyyy|r؊UN e IŅ e2vvvNXXXA~H,AhiizheR777ڞ+,,trr?QNeeT*uww׾DQԵkBCCۉJJLL433'AKKKoݺ5|p++DPDuLgRT*\n9\.ojjaP(X,Ð".(F7.EIc?" ts  ZD7Y6(tQDAkT:'M|J?AOgkS( $t-KQ pA`<-=SH[( HXՑNyX\|R[bqKQa~ss[״T%vs5-( (6cуi^~FmƦVqM*-MFT^g,!/7FessK>sr2So] KKkJ%'wx*[ivVDҪQ9<|F)m?656AAaf_Ay躈JK9sT@j||CCp<3Ss;{GV~!7/geihippБΛUP_{i{3iuu5µ .ZEPw5>6jjj𮠠bzn- FSDԳ_W-,}}sr2O tɃKL naalmm^(kE;f(XXZ/\ǎ9sۓlBkoS'fbYXXBgnnCs +hgǮ^AdEKgCYLWJ wwoFAEM۶~0/7GYMza1E| --}LLmejf1w޲}{ܻÈL& I@HeRPЧ"J$FhiiƫTPAgΉTƆ_ vШȨS'?\Lkkk5)1&@nΝaGs|x,y 5^tVvEMmϣH$m[9}iVVzVV~z *( 3BWDTK0۳KFO¼&238u@tNl0n|Gt.# i?jUU-U`eh)T~oo*Nw7**ɦ(woep8eCNY%늍 OAgsNN@zz䆄JL5g 0;+х,55`eeKˤ뗘ܽNϿ=jDCMZZD P@@̘PTj bB|ppD`P0&~-UP JA  l66.)Jٍ坉?RX7"zEaA3G{yͯ];9Kʪ2b;8ѧf -QJ˿{|X8y,33;oVU9Ḵ9Kcs 9Ahg)Ye9^!rB.KSjBq:;O2' irvj`P8݃L&rBB"OR)sr2r >d۷o޺]~>FFƤll۳Ґ$ J Mtj t^}m/-)&Iݹݹ KKGxz9UTzxN(VO_pԂn#</ 0tQ3>0049r*_72q#ƍ0}n4 AٞIAջR?)/XUY&{3{TW7lXPK?d2i\"]\=-!ڷojcAG55u^~\S=P( x|zjO=zw(t"H>;qW_}5nܸ^ H? ^UDuttut9D#{{HH$} )8;wG33K33Kţ6666Z9r4 ?ܽ{wŊ޻vbW5jw}E;wĉuuu3f`X=̝;W$=ztϞ=ϟwqq3gΈ# rG}yF}}}߿_YYchڵkݺuϟgA$iiiCMOO_L&[r'|8q/rp𛚚2y~uT$:tzɝ;(K[Y@PxT 0i$*v{H\ 444۷ouuu@A:FD?+(@D  :k~VP4:I2|6"111G}oBB} h#UO***{v;wamG.&G䙣Aa0fG;XBLǬc}zvUSSSUUE4%%%33sj@,3%h"Lω~|a瀴ELLLƍN$iȑ#رcPVVƄ SXXH9r,X`jjJ5neeeJJ b1---7nAAOG\]εA ;@ ڗuc&$$ܹߟ);vKV^hnn߼y%))nt9NfӦMl6ꝛL>_BCC/^8~\Ak6j|㟦 HAwfg\\b}gk֬u-]TW_}%J߿?gΜ_~ޞ. zR?0Jv練ܽ{wy{+) HAe䷗8w9[ ]zt ^6=ɝܹsKJJz{ IDATr ~͝;mn[An>!Q#y ePAdit ;,/fσdA?};v>fhkkNws{2[V򰰮? D(4앻tyBڥ?s\${%AdCDkr5|HuΝ[.wRgZ,0W:2wwoS3sX*8?fTztf"CD0wm돍 7AAaԻ:Y{E}A|>_PT# f\=GT*UQa.},5Hp?.]bkb"Ik7.ۻmFFR\p79k#mڃOÛzFaPPE+@Pܱs86tX =tu ԗ  ;:E/PN߯^at6/Lb$I9s>]L1ÆfN 㣵Y9_^faihv?oŮn%o|@ѩ0r"<e3,mj{b54@qV1C*+J}{:u Ew3f? nd#ƴ7 S3EWҧ͢f? }AֶEYY4ZY W"JT/)yXTH͛W4JD$?/crvjX0߶,gy aC}-`s8~~44oE1.<|XAanaAnF~fG Nuʲ<[; c'L ER} qU(䕕e.%.&(PScÆo t<&rvFF*Ru=zzGP%I2S:fǎTQ^Z[[(5Eؾ冇Vċg._:wҙYF' ȳG(˛5giUe=3)8$ vdjf>mBp`g#6lήܽiyas-ɤ 2v<Ź~AKcNܻ/:u6-[Y5Ul:n>D;NUAN_sYp$D` @PZXvz $-ml]}LM\.x.!92#TV_L779Ik$dOt ,ЇE4smlbܗd~ ymMU֝T9z{xk;5 s*8! |BfxSO}JU,hoz-(8)ol-(542KD‚<g=SWUUTzz>ٳE!x|;*[E@EAlK5L)/1=D_}+ tEH _n^n:');˙9s*+jkGbd ¼Lc9ª/- DQab?L† 4"UMM_z$bҤI}!//O___UU<@ p`r^V+ MMM|򉊊ʮ]lw8{lPx;5onnRQQ c0?@A @?/^ї3b555[[#G>|xӦM1%%eŊ]rss;|0}[TTT\\䤬,'ŤIuGmbbb[[… )%I$IkjjRHH~ss  ;wRO8aoo/i,,,={lxzz644xzzʖN2?b5`(ֿn`:;b44@ r$hgvc6ntz```yyHֳg&$$x{{PDBRE8;;;S{֞6mSN  ;IϯǏQS4L&sȑRXlm!PSSw' J}> h?ފK'''I}*..>t萻ѣ)7(((Xv-}C]Rp᪪* }믇RKl6;;; )ז%''.s>/Fh] P׹G.g-Zh„ o߾~zii޽{o޼qٳg  &v$q ΆbLSYY <LLLd+khh|RƆPH4nܸ Љ':::~7zn9!!ܹs3fpuu;wN~g~ܹSN?CgĈ۷o===)OqԨQޅd2 N4 0z(lZMMM'NEEEj}}=Ⱦ4Ds/xyy-Y$77ٳk׮={,x]|"|2tՁm۶fuC)Q21cZZ}{ 6|-J)Qe֬Y)СCϞ=믿\f͒cJQWW.\˗/8qbKK ;vd}JD>W]vZ1ҥKnڹsg^^W_}Փ~ī`b}ft@믿0Z##9.|'OI Rb1tÇ~Ǐ'$$innfيfiXE_iiif͚ >\]]]\\nڛсl.<ݮz?|R-Zm۶73s{ &wۼYZZ;vDEEQ9s-Z(99 2H>1ccc&B2}$&&IRr%"hVV֣G曮 qܝ;wD&I'koo?pǏlΝ;;1b֭Ν;9sfΜ/ IETRz$IxuOPxppt4>VRRuRШ[^>فR YFrf=jٲZ10LrE*88x͚5~w%%3gJ%";;{銆D=?#xikk{U]]nK[[[=55511Qn3jkk 䢢M6QR OOq{b AW\rʜ9s~nG@ ^Q%I"Fϧ&6KUvtr{[__Hbc0}Ƽ<)8^|nʕKTcccmmm==/.uuuׯ_ԩ~PՓ'OD,,,6o, -TVV=zdStB=AP?l0iӦ:tqƌ޽{mMMMUR;;ɓ'Ϛ5 W>h<8g{x s/|+֡4ټL?v~'e41jM]l>Y.Ą55URq}333}}%KHhZZի$wXZZ9rӓ>6""BEEŋ`ddt֭SJe˖y{{S%`LrEڵkIII s`Vð+,,SMJ&FtN^9;o23gl7}%ׯ]L;Hõl}ډJG]n׃-[D~IvU ]z믿oip8fee+VL~H$;555ɠ'OF(:[.TG;kffo g۾,%%E%R 0$x( f3L)9^x#2RhmooS?uY $x4E(R <hkkn{[eQEUWWnnn4OEmm<0a¯*}8G&&&jjj}FFΝ;EG~*BOjRoں@ ^o苈nimVDJ(ErblT-6.l 05dK55._kjje+jmi9|h} W6-5)-5Iq%ͧNN޾};TPP$BCC}}}+W9ruŊ7oLPVVo>55gذapB###??UV8pL(8qVR޽d25/✲`rSRR}||q)$NqA @^X`vm-σioo۷w{55MBFEgܘ &P[Z܎yŵdk8/{ GZϨr]]]e?$whѢ˗KM&$$^{77wÆ 'Oܶm[yyyccMX6n:]]O?WG̙3g]t_zܔ)S>s{ݽ{Wtҥucc{>N%$2hi[+tt6>w]d 髩=Lx#vEO=Ѷ֤X|f~xXpvV8/iti/RL&-$we d3G"CfZHYӒ*\JT8${x#xQ";moEEu"A =H)=OցXlАwzO>*#cQ28:iii{R0*{rH+D WAV*)911e;!5Jފ[7E99:*+@gJK_Sͮ  qqw ˟ 4kj/=^I LxD"J̿y2I)ggosU{'d#:?WSS㜹 ~IPPee6UUu=-ZJ@Z"vHeb2ETEEuCp8ܒ鄺rf6|m'EWodҏ'D/ҋlr?`o|r...}Y`H֭[}ђ%Kq?~{ʔ)͇~wnz}  88_~?~x%:iHNNܹsiii...k׮}Q/@ ^}₂ӈ .|]!1~MMT16R" JKPpf斓||W) PS]u5aɓӦM\JSXh>p\###Y9s&UTT=zTZZjbb^^^t5 q"E } .P@*(PO49)qܢАkRF55ubTХǏE]Xg_@]$ܺ6cQ( -AC.]|+g-XfffAw/ge$:  fSO;Q(wzK1c())~\.755NJ@gHX,ְa233(yyy555@@ }Qee   ߥ.bs3_*uaX|]=iݽ[^S5@CC6=qM45G))q{2~$x:   xuV궩'-RRR>}˗cccٙ*DTMMW@KK uΟ?cgggffCD?xp8Vz)>_R@UZZ sI{~~VMMnGQ5?PPJ*~k5F^SS( C{%nRRzOyiΨ˗>|heefll<|pHSSz[YY@cc֭[N{Q{{{߿Kc6l x*qqq_}Rp8yEhFF2HCT{{[Iq'OP`2ml**N?v~G]k#F>(-y2ƾ#T֤gKG47Â2yѥf>'0Ol$߿k_zAwXXB?ԩSgVQQ))){9r$\|/^%%% 1[^^G>_QQԴ_({'/eCoзJ*6N̦aL 0 54QEEEQ[쳭5^$}j>|DX荜G<4}ݻ{illS1˽sNFF'|2mڴ7n@ n:BILr&RVZ<{m2q6}XӞܬW7 r3芤E_p{tTOO/>>^nYf͚5kh̙3ꘘl߾]nǏ?^" uu[nݺDEEv1<Q ~E{wؓK542BΕ`k/455:8JVkjjTWה}"mT3G"CfZHYӒ*ƺrd`}苅`{s@cV>h"E--й6JOE U;myil6xبvR L]KÂ=+ܫz'v̽EArED@ 9X7"ݚsGz^UZmSfOo@p?.3lw7\x3XYw$oko v>SfEGR s1 :s0{ϟ242e;r(UUu@Sc4jj*A$Q8s~+@B` ώ~zN'}5' pOs挅l) :tScqŋTC DW .u{U&9{l:.\wyTTTtZDŽg B)i2cMhr`VXөS[#L$NF-%j3 @ia b7?kl}Vdon~*DQ5O'?rƇab:Ҹ]pIxq>{xx|wQ }=󳳳@nnee%Hx<011qi//۷o߼yS |W}0L(8qP{ GJZ)/%@T,."ډ JWM`]F}TJ \8Ξ={x'''wwk׮1LoooJ8NNNΖ-[.]Jͻnذaʔ)$IHmM 'NPSSӉ'@QQJ9=Do"#####)y(a'~Y,~EEEKK g]]ݓ'O Ҩ{ IDAT=|NY.>U%x飈~*f;ⅵdl x\ w_4AI\& lJHBg[bJlޡ_yBfԑMqĖ7vXILulʦMG}$, (=qDyyy||<Gqqqk3g@cc#I߬dɒ^|#P@ETLBZ1QN7NdLdm~ۛVwV_Fc#;PqF D4UN䪏l@a5Irp*= [$5ӛQIƔwdԦDM3͔3 XE&V84O $wêp/f_lUSS`0(;HIIqׅ] KPPH$SNWUUQaAPWW|>t$HKKIyUaǎ:t(קS)zᦦR޽{ǎ[fMSS˗ǏC o&dO2>gӘ6&&`6&8\O&~#^dCuTɕN0X.Pt`"BF/zZ90I##r@ dI:>_Txb@SZo~ `ѥf?W^-Yt}(//Gˡȑ#ݫjhٳSO^v-5 Tn++YfUTTرc̙T@ FK$S޽[UUkΝ~ 333$[h-P?.ċ3+mq20:LL`L q9QlCAB#S L^5nmQw8wfj0Ji aQ.>'zvܝv8Vb>6xmH)(Es;Pb[YIp!ww-[0=!!ҚPpx<-۷o9rdfffkk+r;::+?~dʅjر~uuuqqǏ=<<Μ93l0j_ixxxhh(A믷o#~]MM~ё̤IXE .Pv Ỹ* C6216e   H(&ۄ$Jq"]ԧ)Uu2a6CK M'vH$*k/XXp2%iFHyHkbǵ } .$, ?R_&] R>E Μ9FM cǚ]vMsw|omm-())JTX/ ϟ Zv䞙GjkkO6رcܼyڽ@ OߧsUB8pO,  dv!&z31%OD$<9Lֹ0G NLjgI@˰}\HH'nv%Ŋ'X+=y^䨋Mדy(?O3fOrw((((`2'o߾bq|޼ycƌ411 jlld2D"͛7g:]$''oٲEEsMMͭ[J7!w|&*WSNZˬ&F's+T~+IElqe}cy"%U&Y,֛r|J.p \x[3_+3{#仡̑N7( HMMMb L]?J@5rrg̘Q[[kmmMgwfΜHWwHHoq8) s66>b.^HQUU5kV@ ޥ@ -1 O͒N@Ov]RQ'5i:24yڷ:-#>(Z⊫p ⤼Y؏37RSġdR{>u1= l_8Xjy-Q8vWL;a3lq!h1SuNpm|A1pxy1#)&ʳ7t˂"@C ;e={oBǵ:ry=<|3gb&l.]JHk. ɉS:%=ŵkגhZ` =0|p٢ĐÇӹ2q;vPAuuu]t)wʲnݺuѷ(@f_Q0Ŋk7=%!<BQ-/hclqs:a[ٟE1X hl!nSM ӧ=o!'JxB0::zܨhy`׮]ZZZ˗/WԡBEIn&IOO~hhH$b2SN]z5U!33s޽VVVIIIo:?f@}< !jN#WBGUTj5mƂ)cpXo%6gۡRjE7ʚa5gs^LC8agydHWApubb!4꘳:VꐊIM 3@;]IIj---+)S|璥Mp<==t}ʕƧONIIYjH.7oɻЁX\R]3D~_Y6Ӏf{tsss}}=u A111,3"H,tmkk+**r/3"7,a. W2 =7m+1ū/TDgŀ\eU=BsZ0RmuU @ AK7A1\Ͼ*\~jy KQpàiA3RPxEJD- uO5c=oo@${#&=lO"zC BnDu!b0k1`O{! IF \z(B;_C:@ YQLM/]|1$ٟt@ Rúq _#y}v$cB(@ ^=~}!E \_5w"hV_i|t@ }]}*wBbeKKTUuчX,~WX'4=51#=eR}'IQ@?R E 7H&UXQVwWK[GoD"ax +k[33KqT<ܜGƦNښ4$ &sp7;8K ++˥dii=DWҒ(5EEˆkɀ@ R?|[\o 'O $-BpO3DGOUU]=} Mm(=}AapyY{EXwoQ դ&4yL'56 M)e=Ӓ-X="o>.}, Bn_/~9͋)(xhmmG텈b/rS,]:B.e;M2"QuUş;CCߙ 0}().L0 ֑9"$[\ek)s::^`h4mSopCrb\~$OA@ `28QF&BnL:a+#@ =䙈vL`15:Mlf?v%eE qNٍM̞06K6kԀGw=mu7jmmℍL@,)RUU3XzcH$Js/e<ݭA/R˖302IKM}3Pѫ޾.w|o ╣heeSF&>3%3X Jq-@.91{V?<{zMueT#͇[qJwn?0 \k={純{f3f.\U|o$Il!:`a1rɲC QS]Β0i Tj@ ^(Oq%ǺI:"'I0orI{8LOutrJM,55t8>q##$w oMD'wtrupt ܎Ѯuo/O甆6ۻ {þ/a [:Sk=ՙN=}9eӈ觺Z" J\7w鐕/_ ut%};u_Y11ql5Y4qr _TSQ~DeA~tJ'Qy 7{蘸ոtܹ,ygC>񌋋Lw.7Vzzzmz? ]QҔi9gOcf3Z]+~n{xfCדfl߾}Ϟ=DtȑHk QSSNO?G;AD/Ta?`R3}ò9H=\?ҫP͊suu˽ 7HSfƎ;11$D%rD %Nsظ͛g;NDӴziwuw }>*["W__o/@Ȧ3{.~JgV{xxt[yFܿsuw˻fFwjo'L;#bh%%sOEE݋Z XY'"\]]###}.e DG6_Ye"ZhYA^kE3f'UkKǩ5M"RTk^zzÖ79鱲+Dw"zb I:jSK]u*W<'u2V:kG ۿVddd_! 0Km%%}|b:qoV>v ޽MD^ޚ%2YWj^NJd*۶=h J[ZG'mP7qRfZ!k?y(9ef|I) E=ﶴ4-_\x(ClRITCE?iժUEEE>Q&D5WR/UJ$NN˯WXyJǥY]ID%Sn;O߫T<~AⴕM>8m%=lo@pΎ}t&z|+zfΚ?>~ l%Ѫ̍7Y\N7DXTǏݭ4yj%KW}~ښ[A--M'=ݟȐV"|)[Ͱ̄Ғ.R~S)*{Ma3%^\|+11D@D5DX$ݳgի}"6@ܦ 'OmӸ؄K5"=fWxmK4&"a(7ǩlii:y])=nrWՓa77++sϘ77uG+&%N]dEX(Ge&Q+V{ܮ(QYP(c,9w%$L?!(8::dr9)UJJt_w(Q_*vuvQ{F" xHeee>0=¨\ޕϝ by.`g^pHؚ'=\cǒ_9jlnVMM =uNMOOoUl܄VqobmZO:"b̌Y(u~Z\Ă:!nU=&mOK$NW.d90ر1)fM Jcc/+^\S†y9E4ܻ8g@~_J#")q;w x)sHnA2F5wwQ mVJ 'LJDEW/ 1[^tŒx ryBˬDؗC-}|]J翛3wJjUsn9?O!"RJXګP^(""jkn577NMYWst҄ C^iӦӧ/X{oܸqر-29XPiep 1:4L;vֻZrr;tg%Q'͢,mڴիP!ÊP'k!B|jڵ@8,ĝA8CUQ# Q#+st0Q$樕 }vQ$8Q{.9 H Qk9jER(C1ÌE#!&ywrDr1g?!rTvpƆə%D!G@9=rC )=3!DXQ17"E&P&"M>+lJjjjj\#JMz#!;sș3?ҥ;5ȪsYQ'0$;A5jL&3u|?Ym-%+هgؘLj"9='.V!J)ϡ `k;^]]XDm1̑$aA'e;!Jϱi gڪT* []]}zKllVbΙOdcCsYjWa"5lJpႡwǏ?z{{I$W^yeDT[[//?㘘0"ꫯ^xhA/\6&. jz.Y"T\_33KFiu pck!ʳds#PcJwW\7D9c{͛?7|g]nJ$^{mG9/,ݪlPRs/McYƇ3;UjڙU?b D?Mpuu=}]222222h޽/,Y2p+gg-[̝;9f̘[ٳ믿~'322-ZaEEEvvڵk-puxrޚˮJOĭEs؛ ܷ}Ys_"SCLa ^SUqm$j9j' +..nǎ[n]HHk:99mذ!--mԨQDlٲGnٲERܱcGhhի-y ak7<>9ʾQ's==7zR&3!b\mڟ$,kرiiiǎ9s&40 7nHWXvpZPT0S @ѷ8fv[ZMBR%=foTy` 攞>padd$ݾ}[$88yE___S\^PPXWWWWWWZZJD/_nnn&"L&4{ IR݅ e~ȉGVfnk=]3m4!*BlٲO{ԩl~+**N>Ņz{{:TRRlٲwvvnݺUg`[!ѵų.NKЮ\-Ƅ0;sT ʩA+s*>zJXcZnTwIz*SRR߱Lg7|R$ICCC[[[rr2#Gڵ_r%t]p7nh("),U6pY5~R5MĄ0_^W?P"Sm[6rDk{TʌcGyi.Yi!*ƒ#7n\.yfllk׈HϭKzzzxx?'}h/ѪrcMZ67f$(~/\C$*|#8ׯ: M8.]{ɐXmSSS5 NSgȭKHX"ܱ%+iF_9\cn83)9+k(~m˃fϞ}ԩٳgKzK JD999999zw(JG~MK 8{J"z&Y|pJխg|ƱO$(^})d o-Xwݾ};͙3GUUUKhm!۸a'J.G㈘76Qz^߮"tz Mż/o6sGnlBIT,< K f,H.\8f>}zsrZ 8[#¥aQUkth6qt.V4u?%//OPYMVPPh">|8999$$z޽k\ryzjt'cDE0 =~^'?lc]$8&ZZZZZZСCMMM׮]Sp׮]SLC94ݽzjٚ:lMԐDUj"ZF0{Ω* e'}KLc|$rW0_L&{&ܤg}4//O?kmmݶm[XXXjj333ytwww}}R\~`S yyyiiif?uA4.e߭?OB&ԒiʠR ppé5-mi넑=\=u W|>':j\{ۭp6;قX:OLe!!Y,5ĉaۖ(v)8VPZ,ccVM3HIw٫%UD9j* `rsTܮGQSj/&K,1_jrQ*a#CZ9q:? ɓK\\{AR `Kw6^ZiZP~kIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/5.png0000644000175000017500000014654214212620632020502 0ustar fengfengPNG  IHDRlO pHYs+ IDATxw\ǟѻ4(FأEcbL{{ tPAzc8q KwgggV=< 0t$ N:wr751 hfU2OiݶƁ@ "?/|OFDJ#~CY`Ti1*d1̬:tv=oHIIN @C*|6Wf9F z=Àީ'ɚc?uo12D  {g~^t_6vHPCzX4,$|{MMx 5~%k@ F%RK-I\1HGLcP-LV-`h"Z*PmAZ^$G DEHl "h"JQ c&WS--&aZS$9jE=}@(Q%-seAɊeCE2u yDьmU~Z@ +J"ZeJѨr YRA%&BXw,ԖiF#S\pZMg3*0f9*V)K]aJiں 5 1@ )Z+lg$` &b2I)2Aʀ9 +}RQI!C$''Yլ,6mddTfO$UncFcMLtLJB駤q{UaS ԹU@OKOO3g[7CoҥKw¼y665Ti-@ph4ڥKFp)##ԩSSLGr"ZGkMo=iӀNHJl fIЀA)GRp@.))IW/7CCCYyQaaTʅ]|n ~W>rj&D &&&SL9r(_~U=%6LHHHH $3duvvS 1I^7Xʯa҈G6^=N>:uG46z3'q[Nܿs聑#nj1*Y~eB+Dm&h!XXXL2ѣcƌi׮)]wf b\?+X9%ztKa8J2^,}I‹M&X[A0lƌlll&NxID5L00f}v_qnl5ofVI䕇=Y7 fٲ5GVU<9hs{=lU|qXǎ>zSyV7TE F$IzQDnGX I#cݘFGNo="J2LL,H8DZ8W< :᥁AgffcWBL&L0ɓƍGnVO&0Db '' oXX9}+΋,yK(gTH H je _ qquݻ1yטrCCxCRTbGwmU+#'D$8m߾E D"##N{{{cƌQ~V- t1 8.KNd:`8+ʩ )*hOv:yT(7[~ xxzyuU\ 9::Q"ګO?wwOISH$IpAT42Cs ##ĉcǎvvv'Ngm۶Udgg7c ϚϺcT``jSBU urrXufSQi^<Ү aQ(FrD+>/**\EYD)/^eggޥ|K}O7s̤S$јgS¢~뺖`Jt0n80s@A*_"!V-qI%+0ot F4 ;hz"mÆk^%N5^$$$~fGjwZ @ P/-'KL&^=:T@VϏ:HH@ɖQ]\dP& LrʪO }UD"qZ>FWRVrq*; Fwssף7 LT0rĘ#jSQeS<.@ \R I1YK P;a*]VRͬ &gݺČ՟5}xv'\Ͼ$)3Q.|6*DDuj@ *,Ѫ M6PJ'o3<09R$6};}}6=7%Y2Q+Ul MJs~zD@ Z&DjE E φw~ߵ "eD VVۧ}Fo )E H} E4HGu~jʃъsڿI+O@:#"HR9VcD2@ FnEMG@A[3G ; '@ Zu^ #h"N(RP@4ShR)-꨿%t@ 擢s{4d}"9]DIs"r+B4ڜhyY Y:EDÉ%(ce>Mwc="@M% ءKr P)\ $9z)HAvXns@ uFFplqУF ֈ&}_hqA@ Z#D6Q#DkLcV^8Si^F|?ܱ A D[1pb 6l1[cIOU,wǍ@j{slLg.-ʎ9n8PnfUq}bDFI 1 L5#A J#gq0}r61]`rT.2AE'}sE}=[K*TnY#)Ս[l@~=']&lGO"ܗ>L$Mg@ ωFQ "B~iaoEU(=h8/&X` zT{/Z[c,q#$asТI ڷF|C^J&0/=~3Nw,:OGxJr]BRa_*dPjQlL3vݑR\6Đ[B旑dAW20q*2DFҗg[bF\y>Y}j'WiM<ڭ[}NuuuMMMe%4˭N?| FAppp=א(tפ6 IeARrɁnHoLL0oYg%<3;=$HyfWWX,?ׯg͚5|pCCC -(bbbN0F - a+I!]D~%-C1 56rǾI6zl($/O8L(@alJRX|GdY`*ɤapf2]$Tmb9! \.AϞ=۸qc||)S{JA`lڴʕ+wޱcnj3Əl2Db``мG fD^DO3"4L) ߔ#}5coɍ@:>Hh="yLX8Nt[e6c \=Rʁ0@^/Uۙ޸!vcR$e7%6^׮]ݻ7~D;;{v]$-^zĉmڴr_}հa.^}G/Gf2Q&ߥ-oIJ=ҋ5DzZ{|FOڱpĶHl}[n]jգGnJ}@ ԡ !ԐW|tgZq94[ rfo>a< {ꁿ-~%A*$[bd@b~A4\tCz`6ŏƦPoWP8,f~ RBpӦMAlݺu֭&LhѢ@44MM_KVBc)"& RP yN\$/ ɑf -H"] y)(y>Kǔpb⒨MNSDjժG~388xǎzjƱ!DKCv7/U`dj²0`"$MyY핚 6۷yر111v1bDϞ={т$~KM6&N}={h"4'@ hQ i.'"m` 6Y[[O>ҥK_ZZp{tт%nHES-WXdX4Ž+?+Ǫg8R#AdzzC ŋ-[۷/!!a~ ڗ`@0/aư>騦O+B^^޷~~l6N8k׮'Ohn۷o"D3De:X /f5Y~m۶666:::D"krUXXŋ@ FX$9xbm/FǶm۴E ETh!4ԧ!lրʕ+kvر{)3 __߶mj (ŀEF'i|ȄyZv7@Ƨ)(h<ѣG,K+w IDAT%%%FFF=0hɨі7UY56B(@ A#Ή6 -mHT6@  U"VO/-ц- (@4J""Fզkp?FD[X ZM (KOK*+-VTXF*yrEG5X1@ SԴDڗ,:];WŠr~e%_((+--.).Ю_*:FUEױQOþ4De?i5=+*wؕ`8PO08P h w.Ko3nܸbY,6]<:tfЙ<ss+{]ݽ?~]-Tk`YS 婬(/,;wdϢ#?(TQDpt8@,=ή] yzzw\>SQm@ -uql4򑡡Gؐk睜<]<޾v)ML-200vqmobbP("Cn1Tcɗg;{Sle8\@5v5lBB<(8X"&i`Pk`hL >V|"DIh4zzzr\lc;YT*y2I%%Eo11!Q-A#u$IXp.۴Q<ñ㦞:y2 6 EDII|IXD/).Һ=m@ @ FѢCN  w5LFzj\l4ҿY 9^еk/%jffIَ%%EP\&3rLn}괴SOW߷Uv",.6Jц*pt)LOKz;(`gx5̝AT+OQWf 4:9,v.SW]]=\9'}C d?ó=tsֶ@DS GGF3NgחJ|\ Uεjq4;{066ʅ~D}Y;;uwsjr+_^)++6[ldDa>{'}NÓ?umj)GBCC]\\LMM|]]]/ϧ$zH$***233Sy5**J__I<55իWÆ o鞘y[:HaP8=ZWWʟP(<}u~/h JɯLx 667_t8oݖ[[۽{ajj!缣 >8naiM >yvNmdmmKiHH%Q㨅1VmjcFcln}eii)FS'W|>_*x<777uԎK.3葆 7oޜ3gNvV^|$⢢¼ܬ,Y:9e7770d7?~\*#333_zu݌ د_?_%_k%V~TO>Qe߿uVWXQƦQDT*%%MHCc? 3 Mvmdl,\>ufYUj&@ntt 1_Rk{Ci4__ps .5%̲ X0Ļc+InڰϨ哢[nҥKx"8u\]xÇ Z~~>͖ o8q"\xۿ|}}}R@5 Ξ=hbbbddlmm###tҥK 5ٳg`g˫d߿ǫ2tyxx(Co߾}|`` 0##;vX, ZtR!se#I֭[`Էt\%N IhR!X,.hQFc"ss.?&_c.ͨ1)K" )g)YӶl6'!!N`0yJ 8wAٙyy9zzmr0J)w7,T2dfmk?~pݻ%f3T$-Z(;;{/2e ߽{w`` Jo^UQQ_޽cǎN_xΔLIIvСC$ N?tн{$$$8qBv:a "ڥKsss{{{k׮^S͛7}66չ\:ٳ+VسgQ1OOOj$DkQDԦ}T*g@3|;u2;bg'G?`\|F:TkLqIQK< Ƚtg":b COn|VxX_jQ^^^RR᪺KiiiӧO4i؟?PpBzcWWץK~\Om۶/J ƒ%Kƍk׮khP%KtqݺubX(޽{wŊVVV£"""][YY\zuR.Z]vg[n9rdϞ=2>WPPO?dee%G,hѢEϟ?& 8ʕ+\ d#GTMLL?~>>>ji#- ,jW޹Fv|A1ʊ1LT01?)21%u>;*\ >7Yzzm^Pw5X$FUkweOՊՎyƗ/_@ܹo߾KVBʕ+?|PQ@/^̛7mذA___V^VVrʲ2o߾ߋ#G 4H,7nl0AAA}ڐ1|p N<\ӲB>dɒ˗/aaa+Vشi[LLݯ__Uٜ5448Ԑ իhID5ǎ椧%=3pHs3+x}_,bH$UߘvWWWO,ݻw̼fdIS]P׆`5]TqRi [rNk_'K b푑!UWWw֬Yk׮uD߹sgϟWwott4eڵ A ((rhׯQ3?c/^v획͒%Ku&Ν;giY3'' ݱcP(Xf 5ѣW^]xD")//g0Ç߷o_Ϟ=euB"ܹWZ5`QF@^^r$Ԇ X\El67 ҤI+W|Xۖ$I+//MKKݻwx2xuQjtA5jT^7o^ii?[=ED"aX``UM@q  Ϟ=ƍ===G=zhH$F#LhW?A5 kqKRKԄ AHsswGЕIX,SMMu8?ó{P(| ^^> J$_&&ħ%aɧ[=?4c6n흜(*ʇ۳T+?*$ Ubsmj{$;v SVo޼իWp855lԨQ}7۷o &UVyyyiIti''[ʇ#[QYY?̟?Q ^),,<;ƌ_.q8kƌsٵkW;n޽%… \ŋ|^rsssuu455522200000ܹso޼)eܺu+>>,22ݻwc1b|֤{zz֭tҬY&M4gD"QEDff˗/>|zj_~ٲeFԩFFFFb ,8}ʎKh pp q jǠܹr7p1xپc;*Uϳ}+Otpp?pLz7w6f,m}|@е3) L&ݣC=)?R_ggg9Rпd}5|T}gg#Ɂi8kQ`֡C˄ol6ɴUf/Ǽy&ѣo1R\uν>PYwfCCC>$ݻg>ߵkW33cǎQ߿_\\LU.,,\xƍ۷8;;[(:tHGGgΝ.]:}+nܸq޽{Xb J322^|IM"Z(00d1*,,l .T7w\ VZ%s2{yygddC7| ܹsgǎC ٵkvuur&M _|#nͽtҼy֭[a7|sr6Mz~X,e,ȉ(֐tco$szulkʪmM- cM9bk{pptH׶cV277pώVm (6|lKw..\tShb8%5b_Wof k .\ ;׏?TVzj۶mرc]cjj:xXuSիk׮-++SjPW^M0Adׯ Fj`ܹqzzT*555-((xɔ)S:vr\^BBovAjwinn̞=ZkK͘RklD"Le[nQTu 0@!>FnccO?)WWWWWW$?N&te۷K.,+77wٲeaaa={fIӧOrJϝ;x>}(oɓ'CCCΝk׮]*ٳNƻ@41n~[ZZZ*Y)sCXlllՍ3$xT" `0Sc* *MT:ulMȼy"## 3gY^D_mۖRP8w믵?rM"dɒH{{{%%%2+ҒKRC*0쯿bX<Ofb}zׯ_744TXRR޽{gϞ-sn5i$Y)R#i$Tw~ѩSn۶M>d5sss ޽{r299]vHED}vmmLOL&:~%899YYվEnYYkrr2iqW^]vԩvԨQmڴ\2KJJ?Ӽ[D5O50*h3p:a+4Xlddꪡ)wnxxxBB!C233̙cee`1 $ڰf##z IVVrb999ONNkې5kc޼yʣrrrӧoٲwWФ7nDFF2dڵU .l޼YO[4pT47oƆ]vSNUo``_(J$tY츟߁"##wZ MCMm"Mz6hB/ IDAT/nȯ4C9 66v۶mo޼IHHH$SL}6)))%%% *; D޽{͛8zɓ'}|| "[yDwݻw^ZJkk}?֭[3sssϝ;&9|iӦ$%%mܸqС*ݹBPݖ2P_ViB[4 K?~|~~~eܻwR77#*y<6l6mڰaèT;w>}:11Q'y,K,D"ssO1Ν{ҥիWˬ1j3?dٖcr===gΜ)+6l7!KOox۶mT'INN3gŋ姟cj'''J ̔H$+[n#Gvd4RRRdC rRdSN:;w…V(pa:t:5ȑ#?h21Ѣ"??UnYk3>aQՔbNVVP(DAC$I B'N`f}||Op :޿}}ׯ_hIMMuppr7>>>??庸hȮHwܹօ@111}GGGl >d0vvvݻwGkC-yIZR;I"Zx"5iՉ(@GPb-jF4m(Oa"6PVhޜQh4-hi^kM@ Z.M^ >Q%'^+(@ Z!Mhen@ 5hCfkGn#ؐ"D VO[++> }"_MjLt<`)k9?E#ωbeBoyulkNv%9U싧66QiiI&q8i6KKR͋>π:AOoai#_'>l.:uUmEE|D OO!ZWum(RNh4455:.))䤗TF3%LL?~pqq ޹ZNGMheEyAA3`$8?[stt&Nb=v yzzwO 3u*@ >4',WN˗H}J 4˘Sϟ;r_~bUg߿k1 wrv%K-"^x}C#f=sS&9.qtt~T#^ǫ8X,&E~lDUd"D 6K:o˩9ǎй aw@*ݰa㢣#D"ʓt5G'gw$cjuyO=yW/d"* 8lB(..Hb:---O֒@ Zͻ"(../,,,䊊rīCL&r%Ie|K=u[ }I3mrdyj#S{NROb>ӢjE @ -D^ Қ!}MB %..Jo޸,|;hΕ*Wܼ~`<}^N "itq@g9To~Q;i@z@ -,Q-uT%PQ^v{/6muއQwp'oDG[Z0Ν{y2F @yXvjaamgTYQvnHbK~6՛uM@[{vo*+Sݰn&ϲRpRh4^893g$I70]]։&$[[bkeش'i>n%ghd2yT.W^B?<:ȨcvNwn_KJzٯWݽmJK!IðT0 7;!:yzzF&=4@ ZT#ʊ(6[bgNN4:`ptt !M'OЈ3 ]fZDby_9Yǎ ѧ`mmI+@DZ-+fF72Uh/s߿"begN g@ii1$&R)))|y4||$HoRDCE+TTD~vQQONO= ݊ IQREEABH~kBﻟ?twfvv6$y 7r79jjCujꠥ@#i0||%蒲1wbKTT\\ {(w%(FkooWPP H}JJJ`0$%%ſ|sL!m\nCCÛ7oLMMEDDxjKKKi4رcyZ[[$%%;* PBOJ^61$,Gll x:ijjt()7LSRVbjfU^RyfazBy&BX r>nP?EEE---"""=+M&GS'iii{_n% }S^jbbҗnUUU7n>} **ϟcBxիzyyy޽{h!pTjMM˗/ƍw1ׯ-[g[lټy ȸz,HC$-,,?~њ*=Ȍ=9,-- JmjjjiiiiiuuuUUUEEEޞÐXiiityhhh|||rr2&D19dMz_[3tNuueb$Ps)**/}UFX!C**HJIs8wn_~pCQc\n'yqxwoƦR# 53,)cR7x}ܸq|9 񱴴ŋ۶m(Ɲ;wV%o߾)477ˋz֬Y_>ttttttÇϟ rAAAG&?OKJJ#;w\lف.\E'իȩ*srr<<<0sL///U SRR'\jUww#dӧOvvv 10DDƵK&M=p5,yȜA<6?om=:2EYUEϹvaï#Fp8"I}+$[.Ϟ SߏcMA}`<%dʔ)<%Ϟ=CsUUըQ̓gΜxǏ@4V?g̘T\\<}tii={xzzFFF,,,,X.P(,_~~G f%J'px/"&NDh ֏Mr8J C5u eey]yb5G~Y6le CȍŶ SSy "p_k8>^ ߹} æMl8l6[b<<<޽{w-OaN p5<<ĉ}aÂb'Lnƿ CBBB{{ƍ'Odt4,,0$? USSC+y=3`.`gg׫P]>R<|oݺ'%%:::bccyn1m4c8Əs.tsEƍ ,cuvŒB_DpedC5u 7훨\JIIO6HMLxfwed<!8:-I Ld54rk_a/^(2o r\.WDg2A ٽ{Յ!!!O<:uf3fX'O\fMssׯ<&H0Giii}gH$cc'85ବ,Dw<|0ghKspp@/VWWTjyy̙3)@EEETT455=a*,\2$$=߼yhԩHɰaàMĉ<URR2;;3μ@CC:GGG 6 о O _7$))f777BYKPCR 7D_<|<ގ ,V<ǥ7C3=[%M/qB㄁ݷ1`lvqqWE8b//gee=yUM}(}RҜn\.faq"QZwKlll |yff&`IIɵkzzz;88B6}9996lB>} wii),a0733oP]]^__P[[kiiٓN޽@ rc /!!!_uܹs𸥥e߾}GO./,,CC4N{.t)7nŋ^zѣ\+**-(( HeeU-a Y(&&80[}z#x~r(/EʼnDqv N1#]zḺΘ1#vB"孭)2f͚3gDGG;::=:zh!9"""N:%+##iӦׯXBU***0F۰aÎ;9766b@^rY!ZVVY!466JHH v>}], 9qׯ}}}۷#%l6[2˭:ujkk7˽|!n:tĉwww겱9< ((ԩSڛ6m*++KHHXzuII Ųކ g`C,>K+#+;džU U BDSVVUV'STTt=b311>JHШ㿊H$Aݫ/A?sLHHܹs<aqN8!''{( &̞=oĉ3-qqիW#<  -󼼼={S{$7ol 077 >|8^@ɈM6pzo) cbbxٳ?~fgg~EEECDDDV\9r={_~ ]]]Choo'HǎP(ۗ| ?B[0p裟)۷o߾}9})Ã455t:ի:::}Q5fΜ=a-e}}}[[ݻwEh4x =p6H'''xWWUV]|U[[B;.h˶6!XI>mhORZZZy7 ?s挩)ڿ]]]YYY`` OJ"ήp8:"IIIA'U111ś .n?`&1}Ʈwnnn۶m{.T=˜&Ho2cƌ踸8B۷ѱoC{uЅhjj[ѣGBݸqC Bp8=բͪ0^`` 8n֭PݸqU}}}v9sh4X#UUU۵8qm۠72\B633;|0͛W\kt:EYY=hhh  QkiggwE:`` BcElwwwiooGBM:::sDT IDATUUU_Z=55իW-//?}a_RC;w䗻 w^`Ç Q V:ypuu]jDBtʞHKK" ҥKLLL]_RR222RAA%ܹAY"Z744rbcc-Zvtt%%%aPLjF{b*A:99%$$du |z };tP%?C&322_!.z-t (D"q{8q… $ SLA'X5okk_)=:B}},|-[xZZZP"&yرӦMC7}Kp8\믿dH$m"~[VVvdFUSSwwwߺu7oٵk&G1!> c! ZՃOMpO2E]]L&)**DGG?޽;z!C<==\]]'MdddrE.+|ڵ:r05N|e˖_VVx/ J!9T+;}ѣGϝ;'++ 0օP($-xb]]OZk׮?~׮]p+WlݺuݺuOFg<#9êL&STTBXZZVWW{zzL0ȑ#˖-+++xՑ#GKj'p?O@&x|zzϊ+zyBB|!h=z...bTTTijj};w;v ?I$$$oHvww)`*+Wbt:z!\ro޼ynnn_޽{aJ11`\hћ7oVXd\ >{نޥK֭[@RY,:X̹hx̹d2X喖...mmmNNNP<xyy=z400_a`|kpYe|RϾ7)w/D{{jB"`USOUNmmmormmm׮]p0QyC ;;IAAaԨQ\oH{IIIheiiizBCCCKK+55U[[BS\\Fe,j w V000000 8}!wC*h 11 /%DkVV>~O=3y 2 r:_,|8ўILx@onRU23L>-+q¨Qcޏ`ܻa3NM svfcybƃ/nj5'MgD000007Nj?9'N;7(e/y.>SP.7b㇘F7C[3LiƦaHKXa:çЛnE^566;@wf~`v_ A˷XTXUU?g:46X8j<:6`϶uii9#))+(.Y߈wnwZi&Ħ{pG,8H</''sӏH~euieM*x@EE p&&:s$.NpxGi#.v\\N&cf4.>n-fɀ-}p1%cEqlEuW%4=s$"R/NLxb,rKF ptrZYQ>--u &F100034Iw7[DhpGet{d=}\d)qSSK BL&Hg[:w i}=e`|̝rև>ҩ F{@!HII/r^h5(*HI dg5Q!@M^d0rs?EѨj kooKL~URha9vteq[@ lwv(uo' O &:`eTZZVZZ5pdt ={=)rr 'fݣǩ&O1TWa4eqP33ښĄCȍZJrܓ'I>; zw>Ǎk̗/_ }!FFFOF7֞8qիɍy֭II}>,,,DɃW!!!ǏU?|O>ݻw/R222bbb"##>XGŋ=+޽Ux怀<O$a!577G~տ'O åK˗raaa'/^hjjh uuuUUUT*inbb쬯/Dsrr>\]]i&![lܿ?,,LIII^^L&WTTo޼5kL&=zGFF4^xqGGG_/wݓծ'~lvhh(`۶mH͛W^}Ν;v 婩555gϞŋ΢xls&Nhmm kˌ aaaW_v;l05=! iӦ\rEFY:TCCCEE^NNL&+***)) 7 sܐyyiӦxWh4ڤI "۷!C &djժ߿ƌAAAӧO޳ggdd$/b***B b~嗞+%%7u:t ڥ߽{ݻw:F1006lXwQx~E\0~Nuu嫒 wKJJ23w\g^>2wǩ񥯊NDr/$$$;;RR2b s9f/Zxq?V<<<;;{C~OMMM^^~/^D^ggٳgWZCg`ӦMǏHٳgϺC#^YYҥKgΜ/]؈rq1tЕ+WM]]]{4A,YEzzzZZ!G%DbVVCBBT]<|妥 oݺ'%%:::bcyAMd2/gop[n=}'p8\EEGRR]]6$%;.W'&0Lݻj@ssyֿOIg2MRB$ix&3:4:N޽iWMMM33FRo_5RTTxb3fHHH|c2'O^|֭EEɓ'#kyyynnn۶m2F5jϞ=< co޼ihh(..%C AL-rYf iׯ߼ysG ɓ'h[h_xB0j(@LL޽{q^VV$pM455V\k޼yhԩHɰa'deey$GFF*<tSN]ׇUTTtwwG&666f/ZNkkkEEE NC!c~efŋ?jjCr4F*ʼnH}g'3chSg/KJ +Kq8XK_^<|r+PGHIp84Z=K[[+l6l .N\ozxx4HHHHHH@N׮]QUUM~U:@[[@ƌ3蕣2c hICce;vKСCl_[WW(""s挒RLLLHoݻw]~}ݺuG@Kߪ6䴩 },/P,_7x?'==ŋ \ ;b,33|M6MCC~چ p^ ݻ!_N,!$6\[[ e-B ...nB> A߱ߟL&Ϙ1CAAa޼yǏK$? =+m*R2C5lА!rF@սg](&!ø_&g(*[LNNaÂ.DTLL\A={&))ٳ[:ݸqm8q"T *++&N(D [lRVVVc hDΝCWUU:iDή>5nB/XD!Cx<@}}}孬޽ ]ƍx}CCz rW\PD#YY۷oX,(W\X777aΝD'@ mgg)awwm۶w4Q-ZZp8Q\өQE$(@YYMYYpN"W痣8G_W^۷O^^ AVpeee[[[moo >| vڥ&n9.Z###g̘{2fllܓPB fΜYPPhѢ/YDBswwhqώ~g<HD*))W\:%0ƏEDDy ? IDATcǎ %((zϛ7f9 eO>Λ7|Ŋ%%%666l6;++kԩq2\_akܹHyaa!p'***9=uXb;w\p8?Xn[pyfVzid!:u E$W\`ZdI\\OUmm7֯_W.]4k֬a~gϞ y!+nΥqdXRRąw\ HIII ֯_O&Ϟ=JF}>|o>(^^^I$+eBeI> xSS⡃ B{xx@'mxV!...ЍYLLLQQQ`4\.ڵk'Nu| Ph4B͛b!~5OqƝ>};)) `.\p®ߣ]aDڶmJKKfffP߼yʕ+teeet(2Դ<',,q͚5gF7777o Ca2\.7..NTTtʔ) g͚5萭̭[~O]ry#-ʅ8,&vZSp6o,$R8|qq'ddd m7o엟<t: qㆿ?|ϜUnҐ:>""?~ك7TѬY즦&d)hwqppؿ_t}Wն_=ztժUEEEyyy{9tѣ[뛐p !BPˇxL[B1hWNNN <Q233}}}/_3Á9s())-[,<<|ʕ0ͽ{Ο?#)S8::2cǎIII!.lmmݗ?YhP bUR2$5BFF߇tΡCbtɓ?Ѧ4Oa2Dd2T9OK4\.7<<qtt 9%%رcrrrHA2x@Z&1gΜ)S}d5vҥ!0h3g'b tLYFFFNN?|Ç8%%K~Avy%%ILL455;~wQ9::>}t߾}7nnzK,`=|+h`bWg0qp8Zȭ?>k,9111--mɒ%P]bH={-\nLL2rgg皚'OL2fO:Νw-TTks /7Z1˗pF`%//ϳ 022F婯=ztO:5776::B>|ڵD"ww^KKgǠy۷MLLv%&&&vȑ+VP]$X8ccc &N mۆN@ZQQp͑&ÔeeetJ9H[[%$$wu9~#%%%=mWСCA[SGG#""jkk.\w7o466~mV߽{}v:~%d>$""o߾E<) ڱcc@cnn#_ MfȼEEE·EDDXXXdgg{xx\py"</Ю奨)n۶7$$)P(J8n˖-l6KSSsÆ Wmsq]B- Z$_DԔ9'%%ttt\p.ɝ:uj޽ɇ:rȀS2E"ڹsjjj<\ɉt̙3'LpС?ׯ_x1ZG_SS9|pt9!̝;߼_SSgϞ˗/C̙3ێ;9cX6U>h4{NNΆ *++@dorPf0<ٳg׬Yrcǎj3gN@@@II(DF0+<斕8p&kjj`[n?~͛^^^>>>vb)inn޶m[mm ІhgB'ah)(t "dŪP(/DڸOJHHnEEE{t,++CDDDg50ԩS%%%T*ULL...ՆѣG7n!C 8񦘘{m5 x… Ϝ9[__8355:w\@@mBBBF{Ǐ6666S YhѢ{N:yW"ZZZ(-JEX]veee:ujʔ)GٱcĉdeeDbWWWgg'hjj illnjj5`/۷oWWWQ_xq޺u moɁsn[[ÇUUULh]]BLII0a‘#Gŗ-[VVVի#GL\WW斗lF <<<O:UXXER#""-ZMQQQJ߇ p޽;v ?9W(? `)S Ctpʖbbb">~СBVمr썕nee(QQQT*uʕ^|>cooϯPŵ4+ͭ31123** 즦&QF!.,,߿/)) ?v6]7Vjj63-=xOncN`/ j QУ)ǃ Q^z`oz .Dr'/Og/:Əh}$%>'QNUUybö qI{ z W^^ii_׽<7c4V#Mɸw'fgN  fcy6tI@Ƭ0661˱v!.--tۋFB:ӓj;)btFmookl:wbar64\5،GHKXa:çЛnE^566;@w7O  4P>ͨP(>O 7~$452a``` J9qj|G{OazZ"OIs-$!i9ޭ%!᠍ί!92TֹmvJϷ _*I"Y9i\.7,|@U cdg_hiiRmC|x,bSU4M?ణ ,F-L$e[tB 3sS_}=UIS[kcLZÇ=8 ܽwԜԚW4'޾y+%..n/6(B5ÆB~5=: LT٫ .on~*XJddFe:\ojin|E~6mXuMSNxE!55Q{ን:GXRDeQO{/rvU\fYc7d[I{{˒p++p""'eҽ[)Iw&#&؍uO뫔;[^VB iM! x< B288R*lgO_;7l6oy=-\b; 6cM!VSiΝnʺ{QQsƅʊRCXlj/$>"dg~v|i){P\gi)JVVp;ͱOՋxD}Y&BHjD^GԄ ;_iCnNZȨ/:[ A&gd:9lظzO]<{d@hҸM۔ EEEiuUy]m A@Vf\<#0(?ʆ]] ~qGG,P(x< kk~W!Lڹ00 ck'⡣D.?mժ .++LwSXj=aʇ$ 玷}6u/]8hOҕp\e+Vp:2STr >ͷCP|?L54В`ωwB!4fc 4rTI)}wQYNEOԯ^^o_ŕԗ\` IjkDJ2)c^6wvr8ZVfek8\oحsC!C\vj`"q"'Eø4᪓ӊ_B!:yTBizMt"eBCT4Spꩈ9B@=DB!5*Dsv*B8aM!yXE!d ѹmV$b"һ1!j\B!2\B˩J!AD3hc1B&J?!: M!F60QBǵM0(f!B!SRFL.i͋z?URW[T*@[zY'͍ H+"r+)26C>a]\ <7< IDAT\.5ON~%wn^X__ڤqozIeEݪNo#)Bi$I@Gcc4"d@!o_ֶ=LY}w_ZYaʵ#iHJݥP()cO΄(2ppp`e:nuՅ9k-Z9ie{d ۏj^96iP!LUW@sӓdJVn^ojMkKy2fʘr쓿מC=]6lոJ[ksb <@g_}y'kAo>Q^e'+c㙦ixB%_+!gx<pp2!p&*B釨\.wY$y+U;<~\ ,bJ$$rx:[irw_*s뵵,’Ŗiߪ&9/tiJ&R)9`OO I@,c9 b!Y~K$dd__O̓eVVLk0EQ%ŹNb dF$yV߹uy /++k-5Il}d2`ee-\`g'f'^<R}o>m"2j:Bt4z崪 +zk6$ڵ\!#I\&pq]~' Xlz@?;Xٌ֖?ˑToRk5p<.wr\XӽjzV%(ɤl6$Yq{ 76mޡ1X !fM@PDήWYAvI '?\' +9,V^9\Q00jN{ ѵe2WǮݴmǾа(Hrd2Oa~l @ Va "/7#3##zj՞q"3QVZxwZQ𲮣Bi x<~vVPĴ::M >E)w9XXN"btf0% lD}$Y10ҶP_rmlll4<,KKrZZTe}kP]ZZwێlȞ66vn{[ M.7c 7:[_<AjioUF!dA-X}Ij'LɁXaZj3g-LMg^ĬZ/rvz`nN`ckꑷ-,F=y6=hw'@יB.-!:hձ\\.;vBfd?poe^r]''t}5k7k\Lu6z嫙6Ӂ˗N4ZaųCS_Z4:f£iH mm5|:gFzbVfdB鮉N `kg,P٩4M߰͂/,jmiڸy'kk[pqqruƞ6(8L%_3S}}=KW,9w딤;un;v\ ݙ.t&޻ ˖zdpJR&Bf`͹̒,ҡ%!+h-MKDBi \JI\ck_}֍˵}?H^ZOkJK Rxy1Ë:B&Bٸ!:neT*+N1o=P,^83Fת"k__<3B'?/#+#I|ҽInP(:{>C EeEieEihXԦ-;^4Ex\u;K\:M }r4f 23-9F&/E^~{i-wpv},pǢF65!!N"em$c*/ݹAA!aQ%yMO:߹mJ&Wg#k ήv/(tr6e}6QhPTyfQɖWZM)v[o@o߀c_$P&ݽ~jQ thڍ(@|g2 Qwƭ-E2fmš(BgVDY}H``uê.blQ 3bh|M :z@魦֢P( /,188S\g) b,'>QϦ9+"RK.Zsnʵ1t!YXB\䣱L&(e^SԨbq_MҡNMI77]{Z-VWWWd2ou45=IMNp /3(8?X$r!P*;UTe``zz}ca!2]먨pK"۰5+#Ƶ N9-^}#}zH[;7o\zl{[-,nb ogit788S+fedet¬TP^p;1!QP\CBfOMҨz#!8&ݜ;,zqOl!ު[C!4 H̐= !t\OE!4!J|3ET jLiv&Bfb.C7ibB+C.`F_ B!dEw.=0GB1Bthj9w!@ƢI!2s!tDjzjBQa퍍SZ9R,.ʩukyiqonzrH*sgÃ)JO@= Qf0:!7'Iꖦ9iB(Ļ7C-577 K"tQbOB\,rsXlBOkoTq}mkkƅ|}K*+Jo^ƴzMBFnfS\KQTCCz\.' (YYL&{$rs֖S~>|S_yQ+=dB>.*Ѹ7[[;eĬZ9eErppۏj^9OA!d!0Jť'ƖknٺVU)spsغ}d_&NTԌ9.0QBщrR}{KS[;{8y;f;.G?g6ϟJؗ&?d0#힕e[[{u VJGfr}o++Jcɤ[xF28CC29Iww\>!29Sner3jXI UuO6=mx?X e%}}=\raM%󺺪R`u[_c1M-F@Jd@V$dz^~9 qjf{ebcc@`5"#=2.^87M$!L4D>R2#e8wH@qQ[z0;e7_ Im{̌"A1R* C¢,,/:ʔ?͒%!ׯss_lgi]x rz{Wޠ:'@&YlE@PphPpwR\{/;£MzFBI I|L3pӀ%Y5!aÃ]qRPzj02j%ScȝqA2%ɀk7;sOdIHD"a {RkO6cee#@AAjb@`TPfdf$y,]Juy"3su(+-v7nT/o}/_G2 s˕di ^~^<ŅǃB;[Q+UsDdi4!=]9iBjcݛ6Hdp/Q*)]B-C{{@?R ()ʍmgi)JP/LOZa\ "g7ېd0-5e>QYi\. We뎇 `ե)wE]%BOq.*)B!:%K nWeU=)UuryZ[5laK Qb u0FPEbMƄ;Wo߼c~D$IlڲSE%~򑮭!̌k}66v>rέsx>+D,p풐zloOPչӇYAT\<bղ Z3_w깈KBâZK|]];vwsuS`!̃~BTUqU*7W*koaًC"*+JjVf}\j(+-anwj];,/Wn߼ӽiˮRlڲ -`ck7Mx~?dRj0m-Ebڀ%3DBh> ёv)JKOF,f7?$ݻ hgg[GN"[7.'ҥ `d$"J 8Mo{{RP*VV궀 df$4?K$O [bi9 VIBȤ9˭-M~A6t"ڽpȅsǓlx\vד) R4yˮ7/?L&[ I\Ij0fbq_uj²kVn[ZfV- ܴyMVisA 2-MMORݽ$r~D RRSESqp`z:;΁!6!LQP\Q9f\ϝD._|Y&E/[zbiz_/iijӖҡԔȨ6l֖ƴԄOSR<~:4Mso\.wz{ϟcWvYOiZK']Bh.4DRV֑Q+T-=z:R*KKs<(.! I94$).Y"P[O.uJ$2q8:ۭml9BHjFR}hH¬N"3T(HP2YYYa`f=$#hnx-2jn]!dfZG'QEyI-DgWѹ`").96a"rGs!Ɇ3K!9BȘrzQ{HBȜM!DXQ)BBSMDN^]!լB!3[4;:dA%*)B9 Q0HNT#10GBD ٬Zө8^Q2EsWe&y)ϑ!dr4stk!L\ -Ŧ?VϣyBnUgLz7"y174Ggr{!dv9WVczn0^NRR IY[[Xieōt<t;JZdseasTuEƉe!T*;::5>EI$T* m9B,3! 娑5窛| !I,wP%zԧYL?>(AM:Y,t~DL7Σߴ&}XQV#2?ʘƇ5~P:aOTfN河sy?/B]`'B!L'DasYTgnBkkmm˗gfȟĐ)qHxy1+=L9W5j5^LMLRѵ1 `3aXofhh(444\zW_a~ٺG^ IDATg>>>PUUu…Cy{{[Y@g5AĮ(VM3i9$'c+`_bOd=G_S QlvWy1 E̘B/k](M1pO>? /pRyU?K.z;t!)Yk$I@CST屒f)ut-(2R7':Bk Ixǎ;s̙3gN:ydqq͛p>իW3o===}7W\ٺuϜ9q@>6 N/}&wG֣XhɺVFpd$ Ëߨsie>d49^yrG\뮉DM"̗;_~gggŋ|>_}O6}-[xxxϜ9s>@B]\\7B/I,f?ӕOiE *EwM3]|`7XZM9W7]-ڲe}||VX*SU`[o1];>|[YouYA%"p^"Ɵ,k`۱))]{l&UY, C0b2-\`׫BbD"mnnzשD"vttllllll,++NbXu6&$\yN…F6,lph|D윤)(B`>f<;wB@PUUżi:??ٲe\.rsJKKo3 w8ӧUL+D l9-$ R9Ry1L|)vEtV*Og-`NK};}#"j(g*݈%.Dz=]e2?!oկ;99ܹs'&&^ZTOPHIIIIIzBP8^ְ9DgsH+`o+ЍrHA{9/[HTi.!Ua- 4[PߴaÆ_ן~)ZJ555[햂R m 2}! i"jƈpǜQ!]I_z`,?S-O%EXDD*..ԺO||SN8fO+` >KVArab*sX:P=g:d!pnԥ27|CNܬ2+#Y233e2ف::::;;{ƍZxbDD33t&'z`]k>eOOt;akI##Pg-8鮮.8w\GGi6S%MM?BhvVWWg?c?O=zt$I~^^^'iP(1rg0D`=F^Kᕕd' υ.xJiV_ Ѱn/ѣGoGG?}Qbbm۬ 믿ጷL-[ ~zAO;,3FdtC}0<"J)`G9 wU=uG>"υ ԦZ<'''m[[P($7ozyyljquubaBbWf[ #e h '\ ɬ~OOKMÕĈvEhZ[[)xgJIcf:@Xih#9Ռ1k{xs} g6}ƅbN< !scmm=RSATzw%m=?̰+8/bw!SbB!7(%I i@7D'cooDB8_d!4_a(BK^l&6>ů!NAy`Z!:#!v!M&y!L6NGB2ٚ ?fjnꄺ>'PB9WO0sPl!dJFNYJ7#jBTkȩL*5݌!4M9wj7vosH-NLk1OBft|tG1kBl<6{Șn+7B&؂ ^5j5B2U1Ufk B!c&y٨Nf-#мCdYDgBL ȶbSGD!d6E50st}!dRSȜª*C\ RE!_4MQR=F1f(B,El>\+qxR!LАӶԢyEaHIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/image/1.png0000644000175000017500000057655014212620632020504 0ustar fengfengPNG  IHDR pHYs+ IDATx̽{fWQ'Zk_w' `n$!0(^+*@è(*8zx5 .!r ȘN'ݹN'kZUj$_Tժkĉwy㟸ӟCsI~{[ߒ HYHuS]P&Nq9RNidҺõ#ddqdv$e<=ғ| pT.1qeW\͎ʹtE nmz BETpҫ=9 渂†C$1,xkն\rxvzvԍPZؒx-8t5y8y){~G^o{ٳo߾ ?XSJВjWԝhs7T9gCעnbeoQ0} 5E=A_ {v%,x9F 7x0ɲnZi0<<)/]m@]L.[uđٴ#rhGf >wezCgl8NeӌU<켧}O?c}嗿կyǧ?٨$V왵WM`}c@EJ8r+`W&D,oQ815E 5fŅJS)YN o4_X1 sBn6g6fIHtUV坔>PRTШ'A(M%jݨ0^xGC'6w% =ڱ<O~vxBA֧~g7 y(S7SgrX/n`B/6! 줢B7A60^С`:Jr-RzCqRLYr q'fN@7C>h;@q:M|'6' :U+" Eh4Fn0&g3jWuZ]%XQ`C6=$Ģg1Ȧ~)|q5?E_qEkKN3RpӚkjEr8BG:ipk_ 2u(4Y ]dR%S:EH1uW~JջXi%٠uo<,!= W0K'lLq ȍXل))|D?!QL+a@)%vco7\ B6¬vD~617߮i"k2;2:m60dnp+r-7ܶ}ǹh K"qR үə`'"̜d@5[1 $G٠=O bɁ 8]U.$I3d@(sĽE7 ȦbE9CEdb#mʒ&7bԖ1Afw:o`>ؒT ⒓C M*bG&'G/$%Xq̫ y{yp48ilS/B{) VX(K?%ADNN# {8yv޽vßml K%Nws?ȣG$:/ s3䎊Ӌen&ej!{I]|b&Q(C) VOEYK .V$mZ#)쭻pIf?Iڔj35-QRV =hƒ(ZJ3Oȼ/@cmM"máۖ 'Ev&WYtAToQDK#N7 > OӇQMO[8~#+WwÔ`{񴳧=_0@:v'{WwA'PR׫@X|b2.Pqinш΂MWL0iT6.%H@>zbh}I68T qer 4,2^,`)ION>aL*+O= S*okq6vw\sacG:]X._qgοqAڣ{;4O'yʏu&_gί49KzFF(eԢfٍ"8c& 2Ñ?H"jڦWLw/雾ksܝwڛNy{۟zkѮ)ljO͋48vJٿdj?iNiB#ݔgJk\Z%m~\{_YUKw?=s5\גЃF/8IX ]#*u?S&ӝNrEg4G۹['~ZH'4.^w#U"5cEgjI#aʹ'YR;Ϧ0*3{acnSRs,Z7K7r02.miEC,1~[uX0SҚP_+#p!iH!|.ד^ęJ#OcEۋ =usZ68x /ZJkEz}DUo} D8(zִtb|GSi!AJP"oj{;౻V❏ty'ؽ;w 9rUϼkUOp]w|*O?W{/??OOc/x޽{TʏyW>_)*v?O;z$Q?^1rE ;Mvbz^y;Mw;K{h$~-:+~Olw'PE6KT"#3}2Fg_Dsl`\ȎS?';,~@6fMJd^s-(M]w:P휟<2w,r,7 Kaw#:sjnW9HOA$ж?!RԎ/39[ RwՔVc[l\RZ:9{\|N]w_~^!`YM:zTA> [eהYlOi 3f=_y‡,vVK^}9_8}xtεvuz{?z|+zҞ=o{7Z|K~/?KD!uک~W x!KFx/ . P٥\ۋ7" g?_Zb{ >ǽMgλ< ozX.SI/V &@VV0~緽u߼8~灝c7n:No3g.guy;SDOyڏ7eq{豟#DD'q=z[CQԧ< Ͻ;:H1Fkz l^ `f,4c }(g4u4 CaKF5bPU-a:R^;{b9H{%xOnD? z$C0GOf"S pˤs\:T W9SH74v ȭ$;8'$BNAcrYBiIVaI!Ttg99 ea[!#V6:xs˄sO;]w~=BN/SFMw9iO-jp?5Sdv72 MxMwow<o 9~미Э\vp̿_YM ap;Ei´[ӹuڞ___yՑkV]NwɗG{Y޽{u* ?Wٛ/}Gz0Wާ\ xßXp~>p })9öhaTwfZIih[imZ.[QYἠ._qݜ=w(^>-!P%G62+@d~erзTt=n% PÛZ1Ʒ?# h @n؀_Y=MkfW&]ү.[QuJ}Cb&q}IT뉶x<5f7تu K%AYI2OvE0 Rf}y͇o}_iy@_+AsG %X)\0Y@;i϶{[y_tّM?uljkڹL8/L0{|O?ĥo~UfgGD+`a?hgUer]kl,08۲rJc8oz5lQjF)0Q0(tDl453Es[/{OWx\ scCӥ\}qip:]_z~/~C]s  ~rO/g=ӟM7v__ҿy7$8| xYh+Q_+?}͔SޢlóMgiL̼oB5桽NFkjZy*{1J7:B.b 48cl.u }@o޵K/xvBYxZQӅ-(t%j ]+@u"Py'IpAA!Ǵĝ&]>lf]fiiCR^p uԌQ ,LÎMujJKC˱Z2`THfG&%cѷx!BPIS32H {/#aozx>WoS8{R;]ӷCBHpܕrkJBq0#_=h9<_c_~wدruOtOzڻU- ~2Ѐ00\\do #-îݢ 2_K|oXWI-8T() _AF9U|OpۖyȘ#ν𬋿o]!>Y{9xa(w s9b&N'=w%H+8 .:6]#>|_wqt۵/X&_ߝ؋^V.{r~'A:W'wvKK~;;>GEbv[{K.ChL0o/=1}f"vP#{Gf IDATD@o@-0pn)db@ x o2X\%X3$Lh_(`l`兹-yɓYζwc7%\W|oBBWsOGyz[9.8엾k]uu^ڢ0#+H/v)?R U~e1[0@LA#?g&Ry^fk'eP(u嗴 >"L=$_&щ Ѳ tk-nA<(l<~y6|2Yb2 |=aljC?,M+RMeOZ#rAbHC.$Yvva'NYo-#!\IHGN]VZ: Elj𬋟w]sx49|MՕOyxAUPe&ښYM'aߝ<x轗ܼm{d~ߓϷOGoG?3xEno7|ͷ)uon豟/g~{7ג 4rک?ݓwWhq`̢2Fi !/Ҏ=o>+r'J!qU_{u +OWzאQ Oa-'M]Y<2%\ qEQPtr Dz7B!P'{#%9-$W+9*Eճ[g5 ],W;F:˧~a*k]-V4 \i5ѕ=$6fxrاjpz0}~[{>\/][K#Lg*(ov&{λCPxg;zO8psxοyW=:pe?;oX]{!ȏg9$Z5mHL]p^}0=د紟t]ЍKdD~w]_֞KAj첐s2Xr1vP=Toec+;Ef1GZ눠Ga^HIjs"F`gsV7&_OUZ3,f1zFAL c9.WO1u]w_<`M.]׽n nMy\9'} iiI wֿ}Ç-X>cߜ/9[ֽz릞Gx?}O|[n=//{nNJ?C~_A?Q?Qb'T<-:7Z*׺:54F([tD3 Ei |?*u4yS,=!Mhi- SCWBb.0+Dop)J1@u~U`{KlB/ N`:n~A=5}%|ޚ8[j%r|ZE֫ ˹߅0ތ <Ĕ?b_Q=<:5^4 bNK{}pgMh /-IaZ6OVzڡtKipLla |;&4g$QكsЂ^n I0L@LmP0ȴo*f6zsИWxkG w9N4 2Jo jJRO0wO=HzT/!k0<]ʒ _ɞ9M-\w:N0 Gdw*ٱ*pUHMO8p ʳ :ԭG˷12-RHk;TwaI9jAS$َXh0(tS?N=4.:!N8<)O3%*G{_r~[=ϸ=G>5yƷ?gt|kĹ+3”VR<ƕMdĩ{+P`y=D*"ւixUɢ4"TӱI1f$$=|@X p$wݽ0o F[ 7AI.I(؏8-\t5[[S4~]9Gg36{IaR`uc `9YPڈ04=vv |-b+)W;yuW]<Хy$'j/l9/XM{3Ng;a=u@ʏCջ/ycO~\pYWc;U9'<۷7k$_"(UUV`Nru 'iDnX9bpҸ WwM1̪$vc=,.Ew.fmX+H byOϣS2$ȂNTM&m_; r V94;0Bo#mI;|gdLq B\kDC k܍w`̿ (|b0 :rZ0+p1 ª c~)_[VF(G'esL$PV L0e_@N 4q?bڂ"uRS DL#7~psN; ){od_%]1(PR4cW |d襚q*+ >gB$y{y߃^0q.W9Ma܊z/< RK>qƙ7|i<` a a{[wޱ;wٖscwn+G_m?W~ۗ X[KVLUHb2 "(FE}C(Jvh2hheoY)ߤ>b** 6kX]5'%0\yrps;-`+qv($5!J~{î=0FN Zoۇdp;}pS+h:T3Q'w.s l10ĝ U Dm,vJZ/\[i*Gv#w3Q7ҦԿ djh2B!GSBYOέ|O@*51,=A@* =Z.\!@]'T||C,}ǃATMEA FKZw`͙R~PI'# c!gfkɭcxX#@fu'LC\c]oMA!"P;|>BҚG'[A7cw ]N:$t9L31 mlь}g<>7ŐbU6z ~ɿy廗 G躁hJb EX7tɋjNMCRɑ0ݨOSA:<.9/ib%B[]T.t,!Y`l]:J8Cҽ R.nܲ? ꖖGa\ t1E'f 2<0xyxi_dƎpxeXw:xfQ'vrP]? ${!4Vó i i>@fǧAj84)FmRN{9l#?(/v{/vox)\7_m e{/A=#ƒ9M7Ti5".TpMe4nkII/zf}`fEߪi@ubjb܄"YJ:C* c n9Kn>3k  ^ z Z9/GX4!i!bD?``.电C蝓mWrt$]ag.qsIVBV'D]=2p?ǿ&DGWo\?,\wU?|eW!90 2йNOfHF۱{8ԵF?xWӃ-3 b/~ԇŎ:<4$XtNOH7 Ւil[BڬbZztƗ0YKq"eIk.^m bZwjߜ&%2]֊"Bx c4@Už8zwI.չM{P3*\wW?8/NF4&=I3@-K4gq-,x!O&ۑߛmv5jx#9r`~{qz&J 'bᕯ޻-rdM]TKX(rjl; Rv T㎴ klc_pn걕qM<9C >=:$ڇKKV:CFqDCI% ׮]$9O&PDy3;4]2'Ɵb'Vml#zHaCAS8`_()>(a4,*Z F_eb U.M3X3tt}08p(VL4(,WLN4K1B]#A5e? *JIE6=e)^ݑ6@~?r10̪4X'NSω\@jyo:]лn(5j=WyC]N؈/Ԓ!,PZK`I8.OIT|NLu'RP~c6%D ;, YK f|1PZi$_y gH."h2m +o CFd}K|G({\6&g2Tj RGsE&4`[q@yɛ Lp N}SӺ~A6!-"c-<ͳrxph^nz# Ə%ۍ"vHCoS'bix %[0r:nD IDATLrjf?bd(w jÞkBdЎ ?[La F6I̓pZ9ujifŃ$0SⅯㅣpRӡk g  xǧbyj8T<5a%2U\i %=QKN!{]v')`yj&-h6*T"@t4G`2̢v^$(7B%J<7ODוJ2d:M"c;>Fу+C|$QAUwilUQ҄"zȟLnWvy!EV@?8p>ԃE.L;z{LW&k˗z*3 O+D;x*3óu @ Uqq]`5:Иx A˾@p]ws^lmRhn?vݢs+A>]ZE1[((Bo`Џf1q$VmAF8;aꤡ(@M)F~](ܗ,")L#O(H/D~[XvwV]-_HCaخ[K\.4MnPZKDk[9uMNɅd={.p G^5'5}6*0RoU\6 cVaj>?9S'֟bKǖۡJ{Cچk!P 4 Ŏuϰ LRǤs ]9;~riMmU|L !ܕ>ײ.\ h\p&BB\FaԟG;Ga/M6.ފN`V} \,2-כ{aYBR3h).1c \>E%ͪ9oLQA)s~% ߗ迢3BwUmhZ N"r$01&;(aKa,ʺ(`'4N޴/\P kCL29mvZ2hzBKk8. Q9 t`GhvW2#ʋi iKYB,L+97I#ť^RqȻXU ;/rn4R~ķNʂDT?^[~37#)J\=jnF1RfY.CnK~sc ܽ,ea㡅ۢl$ʹר'c$"w3l_0ӎCP[aK'lk'|+ؒ§}^⠾'K|*cy3-p I,9.jcٓ&,J7Xl{?l&%FƳP7N;UPH#qkMC&taHI\UAW{IU $7<&bePâx#t@րcӊN%Ll123S+c۪o^/k[-s\pۗHո<: Tp!ޠ&笄a"N#ekО#VCNC\'zCK%-1i&HwٓtSx^<X@1 fi/nn8pN]$,%4̍C هVٴWr4e S䱶2(ߑ˓6y`^fܷ bN臟CKQGtx'MG)tmjȠڔB5@`fd]wetב1SVRODŽ$%bTtY{x^\dwi*:)mUs纺sCQ<4 Y]eK4G^17nc~`E/SL*E suE#9kK?j L#ӯ*cEZ9HϛP'Xr ِN|֟@)^XXɕ5G\͜+3˦A!%@wҵsl=7ʄ{5Yw$LR?wX %\kӤFwT5a?7n6 8vd׻CmWqȃ2nQzqA1r2f1"‡m=Kt#+q$\F&j\ 6doHRCCj Jy0 `Ucj\1D\b C}}bb]I`)jWe]LʅCS@PJX~Ft (xH,dz]ҘdbQW2".,`@iR(RSIgxqGB=2B]IInh(`#p .)yC.&\LD42 i`xI =`=MQ\ϻȖ!8٘(Kt +~(v i) mjԌ"y0bDZNH`ffgYvAi]ɹ%Պj R,C!׬gMN_ FYt A",[щ+5WsīE_jrM,G#b8Uzk3h'fR@ά.<ё8\<|wF\I*.bzD,1[nxchS|NH 9}mN]$L(2=@(qGbx͐jJU*'g"~RCk`WK D2BcBG@~ 4&r=i^!`3< sW (;% M&f37Z;zhJa.S .'auXa!]~97CsInP׻ߥUMB G@jeUTC(vG˴bi`ĎcpŏFnQ`6xPڙ4Ž` ;lȸcB 3bx0h;)t{vco1ڽ1LDJakPԼՎ7(<1iYE9lR ZtcMmy o1<?k3|YytJšSm7% lνijW-V pAIQ-ݕ%YQ D~r>պxR{"߶¦avOj8X<9 UN[鈞&b;O{)Ù@la”3%6>lAPoIUf@`i哮.HSᖟv)V*CWf1HC?=Ur;R3V Z g+)RYaX; |B#]IهU6C`<ݡhIIU}IZzBɤ @χsN?K0P,7Xx{OXH}cAZsF/I(s]{Q9E QQoLZR%Tя")pv8ޙh7l/dJd"2(6Yx[IyyQEYvVCAZWLzvv/ RLJO9vQts޸4PY?Zc[8t#xX2'Î hP~ 5yBt 1Ʒ&l:<1pFIv\~aL5A8Tqaf,Ճ ,"WB/ ïR·FwuĊŁ_4\^YK|}QDyRQ<>:zԉFvS?9(4Dt:֍1^xwQýe0cb";kq`-R6%xm(0u} Pj Ճ~7<$ԃ-$ƙYvA`=@J- ſ-JqTnFT3uׁEr̦̠[2+cLF!.׍q`|ipU̗^Up$ dE;|5Æt#qT tOу<5-IX.D6NAh!B$s#tVmUJDЧzLE \x:EO}Z N; SGϘ|; _eb̊1XI+p!{z㐈 7< Le^ Yfi;DrNvCh^A*Z?bllC#PկB#2< Ⰸ+Û'!ΟVFXݙuj=X8󧕁*_$TFT@r >K_;-ؼЌYHCc6.!v[?sޏSŖcZڍ2Nt aR,¸-BwR]P*dҺpדl2Á4 K &;1Q_ox oFnAa %Rj邇Y%5?=\g·OW˫_ǰIP=2ꂉHz8 7L`;Wj~{Wy<Į>Ce4=;*r 5$;vŐ2n^z@RP+yvPj¯l#_5ۚ^/d5bUo"qcfF%Zsu`Iԩ(aG,2! Gw31XdnIB)2 ߉dVv l~-L1jq=ȱܥ!+ٵF# D 8O MjCDt6|4b/v5]kM)i !%#Шƃn偼.bT,0cqdd=& 4rP,EsH’@se+2@;]/-Sk\0Ewu~4e6f!8vD ( ~F2H*:5,p:ɵbh+t=($ +dgsV?p^&?i2 <1:zՐ EfGCcM\htݕ`mɇ%͌wxpS&CƮTAUAsS |.>ZR>z/ ] 85x_!TyĘ1u\f7Y%7\0lӢ]~PJ AoS8y9Ie)sqo+¦F4V nkcXQ*KəsAyP%v(T^X pu"D,,g$)(mXL sY7gڽ8;8.(VL4(8cԢ"FQ'VՒ'F$(td)! e/6(+[!q=f3ڻ}=䆉|tSy4ZƧzs#BύO EA_|vn7ꢻP?p 3_S^D`Sy> `/ 0̪4XN7(9<:tN,%;H<u Rf ŃE]t\A_*-]CX5?';6Zx 4)5XQ+%k< ǃaWݽ)cGEkv.e,TЁB-ܷϙAOm*#ڂq@._$(X<,A."ָdyk $+Ws\, @c]378GA]&(/̋eڑ3a!2() 0O`/[j 8@ 6z<ê; {8kQnkg /3)c4u`9'Mz /$  ,̚5-v=#.@(+9 nӲ:=*ۈQ8'F D,Ҝ.jȡ/Իi7\uπ̶m|2XZrW L (jX756缜?#1V 2g% 00n0A@ǹ̐]UօPLiKyHK\AQj`عx\ߐА^[ʩHTeK0JZw̕/E+<R3x , \ 4=IOhȩo;0_x%ȏ6%rX4x" IDATFp G^5'5}6* x}o6P{)80o59S' H(w!J,VE+P6ѬENɥ5U2-j| KOja?$PI]-$<M/9=z@躀 QAW0  fiOcWt*{8<8X#;P/F /]&_SLPe}y-"J}Yayfj`)Kt7OɝG? ]1HJAY|әhi KhvR&QTtt=`k]NM(؈`:V'@Ȣ&NCPͺ5/LVl-rjdk o֦"@P85ȐTKt`4{-~sE2YE`%)b ,W jD ,=!OqQ\~$ 9ѻ ^q9ncH^&@QlBIpg9tU[6Fȇֽ2-!F#X v.2RRo*0~ȫ١ɭH֧1%ӟ/ſ6%0=?NnDZ\WCsfqT-Ft);({u@fš4qCg8KJ;j d,#p!NH)mwZ\j ڑ )!`J01ByѰ4.2[\X0XH[ݱ`?0_,{9EݲI&!|j>.Qȹѕ\>Op֚̆E(`hՖ(Wju 6O )%&|i[g,Xsi1s>B/˴ϱ\E67 m iKrsc5JZF4#yLh pYfB|ohаcq1lP\6xvD.Yc1&A`K@PQ&)s>%F(-yZ/z;m3N!qpŵcRBVU[h؟&k5]m4I8a}}@M!/pnBDŹ ?H%$BתODrNlt ); k@1\:[ <Lrxc1 .𱭚~c[e ue^уnvQ yt@&]q Zй8s5B @^ZűvlQ{$jikzDo0)*z֋҉9t=wmf zVZ%db<[a_.,Gbz$!.O&{a Cv-jelU<1%,e!SRj!)Iop}+ g bNkwA?_emA*_챝cMIwzdPmJLRօx 9lk8u‰5dF#;D?rf>,}EnZ+X%=u AWQW-K?yΧ}Yg|uŨrT-\ sEPQ 9Ͼywh\G^+ bR,:5|nsu<8hԽWWS s1w)|,+_KܦxE$n/W }#{H66z.s,ʙy#fa]jMC@wҵJe=;qY{V(Z >E>-d B^"`FOi,zHG߯g(#@&+Lqʹ΍%Tl+5WsīE_jjvUngQ?ӭL ډP3+ Ot*))7 ˈːrBHPdUTCËPR۳U\#; <G#N(M}H<(LTZplUdaDJ`O'3KK]7&.[#vo qy oPpA^KfLX[8p8"yY`1<?k3|Y֘EBͯ79+Dm@+K8s/iTC,͊ ƋU]06aXp1wD>%S>#X&!uХU%NŴ_ uI)gK l=| pٮ!&".-ݓ#V´X:El';Z tVBTRq>ÎP\p):|qC>}0Шa>dy G ykS'gcZa^H# y/_C LnW= p`A'%^~y\Bιu}5iЦ]ݎLMuJ寕Zdϥ"$du9pRGe\- Jˤ%UrM^O(Ҭr9`;TvNa|i܉%Sj4([6B AAJm% c;+/zޱVpj?aȅ:!(=`tNCr`?FQD_$#XPI i(|%5}ʏ]ul0t_8`{.!zjǐ J1\Ã_ڒRՃhr%ӎJ~|1pGkrZ_T.LRIy%s.ˢOtB)tEGJ>8Q^4MKHͬ6EKALTMuсǐrRTVf(4+$@|j&'2p9{PB8!B-&X! 7'· iCKDB[:|@z+a=O>7@a-XqEII=˾~%3Xɟ(ZMkU _#HH1bMk1L׷dW$ (kCz9 snHIvWVN=/C8zXn~rnb԰In$l&/[c%ߑC+AIb CMy.B*Ya>'lǶvoǵրSbNRrX#3?b>1[De; Y o}ΏhZb”p_\OiJ|ek ú܍ `ΧJ8M8 {TJ |̬xkYn=zܑcjH޸ uExKzD\-$2:lDJǟ=v6; .1y/ܾx @ 9gmTúBu֧p=Lg⊁GyƼ#*uv١FUP`{ָT վC& cZ8my]2?[\#g1GYN`7%7@SU _ qW0<}Oa 4%"< <# ~9o|kD!@WN< OT78l)M.1=L)" ?!eڄ:{3DI]-!y߀<fygi1agDL.1M/Xvvf${vu cqopi>( b=Mӟ8!L$":y''g@ċndAJW<%>j̊Q"x%f8n\mQ)fX<6Q:їj>zEmqƷz D' ҁd5%sTr(l^Xd”Y.Agp7;ܧĵ{P󉾙 lE˲mkYtp7wسpo0qQVDmy(geB1@".c[v穗f[{ >c`hoȡ-S{ ZPSTdb&4AO+v4T縬_Yo~o(g67t~|8$!2WH蕥͘<$:(k11|X]ShN8+& y^N)~ )@O]&>O!60̠֕7Ο+4na!u]E;}InrF:`ӱ3`MW;\n=JrKTCen(S6еL݃23^SD]9L[grM~Lz{6kkM_mom[NIW^y"C|&l-{3Du~ZznkŒ,7do*&[|Ʊ}eh90оcmx<|:c0!s, MIc3%b {ń"%Fp!FI'~>xHTU4EVgafU-Dk޴5m֍*9zj"517j+v9`urHiYL{SuK_ݏIigK?㈟6 -{J@@gA>L!r[݀bhcQ07v&K CxknzRCYCPU]9wB6J1J/`=p`3=GFT}Į]Yﰸh&̫;A`=!np_j+zzj${xY(OUr~EJHaɓp,=uϯ_|\Z<O2jI}bkG8g5j0B)rtJ@$?eۇ?G=tw /I"xZbQuX ԣ 9 Z4 l:峃{P=(ƥ=OҧuZ O8s'G+檭RU gCO*iOe=0FN~>=LDZ IDAT(fv}1Huւ|&rhe"h,3p,[%ї)WK+tI>wBJYq,(1.nI )ʓP.<_z||O4V1wuSL-CT˘/#) Z> H8a@]<^+>OM^!YYCIzq5<ސ/4꾭=|^Zݳy ىY4ّU+w䖔5j y|~21MEw#Xmڢ/9 Bi英~{]e:Q* (ͳbn~,졶Þ ΡQfabW*o~ВS[kS~~\iCaxQ M1REKӥI gșF@zEN) 5dQo)hl OiOiďOhXDDzhIm+44 WJtVG:+ۚ !1; l|>,<8uw o{ziMzTxbC=xE;ќ|#ta~ᾔ>to.JTc>m4afFV:[0҄2oD>W/DaVRu?h"zLvqhzvM5"[;㩪Z| u 1'y||>`p5f E% 5>&"8wpG9\KץSɖJRfn yڃ({_O@Auǁb=YCS//(ѴI|vgn~L(:h&2Pۿqr1RXf Sl?Lǝ[#ϏWM(RVrg"xq ^7i0W[AgŊ: t6e@bml\bkѤu{(MΙVA!YtXҙ4DZ/Z[ 'oKAeb[۫ Ɂjtҏum;v)O=8Dj'L0"9yrCJXsJt F\]9Yv?hAIa:Zk5d0uԶ@Ga=Y D+e a}'/E?*2~/g΁Wfiz7%sm?I_ @4_I7a?o||e,拫nINO{w5,Þ+MH ݕ {5Cv7L exb2g=ou!BYaR#+5[ ^}gB@l$ڛzmкzq%?;̗TysU$"7@lMl NAߛ&F梛Y1b/83&ޤܳrjuNÏJb%< KJ[qVRϦ]H=`|ʀD!C֏m=L|VduL0y6oMT7}O-PO@(2dO=# RY#")Ίv9`,מ|bNa&ho9 G8!. A&B0kdzϑ~AA>Q΍w䑣$ Vc| 8O>MŸH롫 [*B֟.5Flϟ._׮Y@@v+*-p N%_+=a碑RuHy> ?DGMOޗc̀Y"Q7?lSn b"= dHtd^Ud'zZaA3Wլ4"k#I[e{pwYn칚8 ^P%>yMz_7hLu谳VAԊTUPI s {l[&}Ѱ-Ui/TЖI 2O=4zp'uU}_fqN8/.d|0vOS &0ܤ0WCo[Yw'X,+*j fA ō ૥DWB:8 5*eX-g˨15ܷ}o?gϥNsFެ_bƔvE/uOd[Groƒ6x+ػ5xx (p3 <1<&o]mZp;y`;ŁSC49b%<(#-:b =Gt7B/ʛ4tuCfm'n <0_)J|4v$9|PFoA?5 =OWn wg3r {O3+h &poSJKEU&68iTϗKg;qtG߳[x|y>o9>P%SEQkF6GPck%zb~PAZ@KVܛ+հ5+;),)'MO`_&29Hy7Y.?04A*~"kWtYf䰈ߌa9rUpj/H7mʨ[92Mpi:2 :` }jQ/-uN5mBs|*YtkTb^fr0}"i-n\q8۵˅-vhN Bnv;?=v3L_P2~8?`=A‹*:8˜ \x?ϣ:ґsd/Gk\zEJ2Fr52)N PH\Οp(ڗQX##+'#]LK<a셖"胀88jTb<_. 9ߓXV]'Gus}k-uG2/jLrr˚aqk Wjv3P%0{_3Rg_2JmYT̪YBzV"qI<xpW)LQ|ư3?Ul; RIBm(f#&<@!Q/Ǥg.-䩦 8M*lK%#qf{޹uhl3JcٹVsp\I@rXq/<i qA#cӼ`k*ɩ=ؔ& (4)6KeH-fvδ YT9:dM<+m[[k?|_9n(ID$9\$(\jYHTcYezkNukЏ)Uʏ6Y=(ԌWac_}<onV_YzgGPd }`t=;ZM%o; 9կ9ĿQK}җ!ؠƀyʂ*1hüu!%Ol7µOc C_\b"V_{X#Et P5 4o K\͌@%DŽnGVMlOu3b\|(ܲF>p(,,!GZ0z#֗vhMx@4 V,@;cٚFx0A_#g(wl~vaݙ XjCxKYz1{{aIxƴnlºY>BD;)Y7g92nz^T'[E}=nͤ|J' pȫ=AYznÝХgwW{sHP-!Zqo[0qJ֎,ߘwDJfG1zmT+Zemk%KivRFU{'pnOnZ FFWڏ'av~j[Ym-:[GZ*S>Wߤц؏wPG7E_"T&aUåV{ܢIT4&4A= \y$l0$haRb.79@=Hn$R~ɯ7NTYz)IfZovwCf(o*XF+z]2a"! J`(V쀋6wA@s{36*{pBTtzduʤef|W{ Pn/~Ohp׃%.'KL1M:K{)I>2@n΍1Jc'Z2?a?ǥiXɊe bSNQo?c rbPQφx•F]="- vF|tg: }*jA&ƥ7*a&}CtD׭a>p`"2$tBƥN<@}1: _•= ^fܹs,>>78j `*8V?݋~_9\}tf g]Aa?Y -e]yisaءcjou&gkX F=ňqT;sW4ަ#7.&uڐyVJՠxdEw9SsWi"7Wm<7E) ׌6E9O߯7MSR(mz&(@ b&``'\u8k&#~d{r`K0oP$F0&?K"׵v7t} ^q2ƥAsq)#dvq MwRmd*GOMC& 4'a)' Ɂvh0TC* |w[~LΜi@8 ˵%K*{H 6} JvϏ$6r'Vl( SaaQ,# @?C&fLƜk3tƂ aM(X]VGs jOo0dz! r/}8!U_Sٸ'Rbvd qZ .#/FxxȭUFYir1oo vXwi5ۂ#eb4㳆D2Ӿ-aޱq\thc#Ge)xFuNp.ۣ1=Tz$"x\UX١C(aF`bPlw˰3.x2ϕ}{vN%vs<)eCUucdZARD=e9.t{X@E,{p]60yFof7pzNOGi/BΐNXo~/SF~ӄ2q/j8o;}Q!'oh)ǂ̀C$ IDATْvh0ሐe`VU,E!>`Q_rXEj)k9~4}$0-C<-^fT%3 ȩpAbw*b.м4ҞAOo:˲vzXQYK |sVŰH;ַRDyedCkv!5bt"zM5DMWyDf${(0 $q9 QAQeZbmy`e 2X7w=% @KѤUZ(|L9%OmLLRfrlAbvǕ'g"Kۂf-E-. dE"*6&$=>@6> ;Dy`-bFijY,80 H1%[CWFn"e|)Ʊwex#(T3qCc'*,R{""C6\,0xp{i =V!ieew%=Y1Uf?@=BH)9[n^S!Alu#sR1ɰ#2s`% FA2R⁝6^D~|SbRbɇBAb8aEGFx|:/DY8 rU,ނ@˻%)Gn Q[ ?!<ZMW2Iוhamo+Q7/ .g{nz͋s=6m/6I~<5e)yՓm4Pj%wu/EJ7oaV#V9c9"՛SvzZ[kO~ӛ\CU(X!(jMB̈́ޣJf2[KmOh7l1֪jίƽl 2Rxu1NNKF-jwz.[G<8{@%a]*AƟWS7x䱦[wl{lw=Pjڐpm\_l.6I8p9P֬^T-!_u6_$/ DY~  5=㿹0B(,*0+ 3 j+"Dg5Ke@w=J(.ܐCdqNY^wn0Ы+Ԙg@T߂>B-o>oU(nI+ŷ=|d-}O:@@?+ͅhpb,΍7?S K^h^aQtDi2Wk"7-vKWXM4t6 /@gs^а/O/$BM!_9(Ȇ Fl#mGLʴDu)EVja=0t:\qîAX&R]n 2e!i\'n$^zhAOEa(tȯ~+ywV'xTvɶx]s-;>pƘ/sZ1ێ!48X {(-xniyy%72Y b|iq1:t`M!FNj[:{hȡgӥ0'8͡m4|r*z'%Q lobn|=ؓ+ d_KaQh4v.Vv C[ sZV5A\C]^] 8ҀM^cωQpYR?]@`?-(ŕ<|YJRI 6Q>ςGqGT- }K<ǐ6Pʃ |` \;*'.mQ_,Wx7 hx4PV8}1t 8}Bݻ+1;{jBk]wI%;qd8S4niO.gFj9"fanIUk;E28={0 n_m9Y"ý~ԫ:rĖP&hKvfסX>_0]?@9|˽eS7iOwXK'%] yZ~~> tGkYz΍21Codd'`bH^;MY uR!b4Ous0h²nhw!/qጬhLs Sçe.TC@|lQ<ä5F=S6=L:*Vqle6I:Ҁv!Jݯ;KK*;"QIS\JuʛO`N2-,.ܱCr(/gMI"Q,a)Nql\Lfodq!}^1(!jL6'\@dȣͽ òz{PV#߯ q DPJ.3 Q{MR7I#.q)xP)~Z,hx9b'h;AZXCi BMh03yQ(pLڄ&8''BL;8pq_h/GA'|[uotōd>{Yb-]G(:Gˮ}8RmDNn-chUۺC@v"CWhY+:'䡫&!` fUo!RO Gie7 &ƞ"S*?ra'f&{'yqp25u븷\7h) 0ު''DY; ӯ#!XHFN};o%<؉.|y^T^~F~(gu~fkIދK)LuR1 ¶`Q#&_<9r;6 Fч㭸}aa$w] CDa0Bw^!dSJ~C1̏8嗍$Sna΢B/.d1 ֗)Z^[xgHgzz=q6d'zZaAOYJgUTlLB nyaJ]N<-ym{DJ:~"W6޳)Tu# ƙд1~V1oҀxx|1͙?99 u& l3yU}"XBt>Q̀?iȧ_rC$&$YWIRCd6/aigQsZe7/$\ףMO F ]dEL,;b;Ev*Ev=P~WvRw,%wlԳUi/To5 {ƒ72hz{h3UNuR{˕$JDKa`^=E!]wuK"iC`Vr&^c imv}Kt=ync٭@*Lƀ`΍&#[lT\ dZ6PvdARgǍuC3tR3^hT\F'F>z4[5 +_~<8"f5E;Y]V oB-0`@fp,Pb%Ecj lxPTvBny*eH tumO8rMh5 5uɒjI:hW,ͳf92V]&#D!gO5脶?2p>ô^Atd)^ׂ)ʂ*`ķ$сROvEcIe1j&H8j(5CDx\ /7 ! e5GuP`1C DGEO[1p뫯y)Sݐ1]oφ^/'=#H(R-+{ZUIvgJҫ[-N1C78=˂k{8OWּ?`[EjRQb9c u UkྗCbBWciiF 1YyK4< 6΋DBٺj/2[8.jGݕ;Xpu*+?7% ,Yo|醘ǾiiU(Apғħj ;" wIzuDDKOA\9T1͏ ./j+GasL+Z:N{ Pn.j@-!Uw%FW3xnK:ڼ6eUU׵I΃!ɃIs*PGbN<:A01ݎ{ :tsqsV7`hDmJkҡ-f=K4a 8e)h_-Dϯh=6 Ԋ Pڻ٬5A刢SWH_N\\ըgҹS}nH "B/\Py@I&pyn4=7?ޞgVs> (e플>e,>9/Ĩ5YQ*cx#X@ERIbE#Qo*<<ҝG#Y%JN֯{iU6ݯ8@!bG"ʝ dCCK{p,yn>{n3е^"2=O5bN=sLa>Z emR97'k^ۃV޷Jo7 ? d̢xnw3(D[ ϑ܃%4$/уJw $tob05\laI Hf<Fvz6w,(=hjlkc-05\:b5a7ΐQ  Ǵ+mIn$g)F6@P{lp`)%5=uHٲŐ:TJj=üˡ"-6N&qm펝(,UPfLۄZCІb]Ir@#T%( =l?X qa ͂L#$}=XmY2Xy+Xs]hǽWXk WÇ 2][U׋WA? ߗ?xKppmNGhvֿ璃P+Bp]Fͭ\{4R~0K+ϑi4{=S +^&:"-m[~;D(B:Bn^|;=NH^ $YyI{^/;JcX\aoZC%(^L#,a`=ؽz43Is`J}RPμ&l\jB˖bioQg\h'3ffۦ=MLRo-®HYŤٍLйc<ܻ9G{s#{oNo~>fGV?1&ībYڑ>a:ƅPjx\u'H< KtʻDl I#fDAƐn*<[u?\s2<}9N-us IDATcW26dJmS>|J4@MmX` #H(.MQk@k>{ y E({pJWÅBL/cb<[<3j#$`)F*D F@B@D^wF-<τ8B^$"m\d>K$UI@ N:2~$,`dk%M4WTrh< toSInl΀y1% n |F U oP+ݦbRDbshAo:n蝄0}J씁:XCkgE!{Z{8lx[04h;Av|oC&= @L``^ιVvO!y Uum/ 2ݓ+|h/)߮ꉘJ<Αrw1I~&QSh>'laXd{|z F{Qɚ =h^Wj9L0`rtHuYmI ,co9yNxwyJ<ŊWV<6zMuaz<%*!ޢ醦ârҊ Ɍe'"k፮˝_-zh~%)m"2dcNy|>fj L)w~EJIJ$]1nQYe׵۝DC_x>8F+r2|c7.Iy ==r>'aH-"U/}e< ]d,+v%2Dc)}=) ju!0@vQ~ivѼsA#0R,+k4rp%xPvR/}&3qC|kw@jXq.X5"_s^1,az q_^@鋱2*#-CY\C+{96ZX6'X XbW> " a3o/ߕ/ ]:-R/k|+}B+AIjr$yκwWׅHq@(蟖Wv0VǟDc#|zyh@x,m,[v2XX!0=P#`vE[JYM̛Y?1ofo ޮӣۆԝٵ {`6_K15)=,~i:VUQ]+pai'ޮ QPIZ;Ş=-G{X+v윒-a"Vgr~"STx{hnC%mKf `?J-N zGuz2n@6ǂf= NbӜl ̈/M&g^_/os|!q<T#`(G~ЉŞ 8/ְ|fnחϗ /1koZs|\q>q$F1;Ǯ0rNл,?E`pP{(ФL/329b/^NDT¬糞}P\Ά(8-zYof0csη珷חqйLMcAQڌLx =z9ǵP-̎XȊ!1Z!s=bdrBԓ4p&P[\Fu`ĹwD؃GIk) glQK|'3Es{G|hg^rC3]amCckVۻz yLz?]gx]#`BbtFx=(;Ts lQOKkӼ4a<0orB;YɥiV9Bd'qAlP ^.˹<$5 q<~ic4Gݟe[t <xyiS) #drzkv>)etݾ* &4bN QX_7pu;ݙ-!YtXҙ4 8j] Wܽ E)[lĠ ޶* gnzb]{elT~XUn  X!%X.` #^Zx{+um 85cABq|D!*HaB\1& H)zw 49ޗ,VϱZƆ^{V );-Dz}}ݳh!l IzネhSGV徸aɁtxuY=a8m֗RPK1˳A1S Btmɉ 40%Z!Ε/Rc&X 8َGl|eEGQu1jڱBK951—Tdfl @{HL iQY+"}QFX,z;v(ToiO0W_}̖2c^fDtFD@%5;7FȺ, ;,1wK%).ZeUBH" 5YQn"7֒5|ioBFRlڢ BfnĭuG˱d%Cf-I;Vn|-'S{I߽U_K7(2_v_a6tSŹvg%ءj&!4aӰpNI̸50VYޮ,cRX\*;#!5yI2c< 4:%٤Ayf1+rH G2\}gy Mp⾛[8A]bU1\LNfOaj=יt#`D}o07&8.ꀮ(|/Wxb+RMC1̏7̍ XNyU)b0&*W|Rj1TrJ8+9PJ'aF7`1)PO`*K{*{|G &| #jW+O 8†?ҟ(W1' Y:~UC_U#D4l(==^R L֏9˭Kh_i|@uf`mDfNB?^?^^>Pqzs'{F K3$nx ,t/-=--1EDL=@3fEӸ,1 ۍxC%/(,:b7`Niam2KcZ"@%j'$[ r˞U/6Y hj\=4zlJzz6iq#LEr2l~J99C@N$ ȡj4D] Dߒ:v|ZȆ&w N_a =OL{^_NE]qM|FYKJ>TB:7 ,,nBpc{3ͥ@@(lc>V ^@qu_d~Z|u5mlچ O5dri-8^zWJ`G,D(kf4Z8E-z0rIV0YΊqF:{Vݥn}n3F!zϓ"ݎ C1h#N b:+8&c@h|(ݍj@0swS{j%Y nje|fndQ=]{Yf{Q>`n"JV_.0GJ^9,Gv=E0W_C$Л GT eN)oMX*|Z M<5gܷVyep \tox}0G /OӴRT._FA&~Fn>ypF?O^ѓg}GrEIu-dI ,1xR]&d{% davԻfGYŖ(;~e F5GQ΋amdego^Tl us?L7ƦC3 yRX `#Iy*@$3H7޵è#kb§/\裗ɑ2s"__CQ/Ta,pK%_Ӣ1E] A!I|JTԮ"ʁq&s(~cfyLczRS*1NDGb43|#2[/w6k^0!<ȹj[~% :"Ndd +ǶaS$4'R[c0P H#?bCNW-2!?uNY- jfV5ZUZƶ-R?Q Aofiws_ }{0{v®"쒐s/]Nn"^ދXFb=d-6@_љ6n`WMs#t{4?_>ذO=9,k"Dj_8fu "<} 3[0RKƺt)?4N\l)p;yton&r<82wy?i.aP TusL0@eQmܧ&S/_Zŧ@nkvwWy6 <=l1ddby-Lwr;`oW.2 /nEr=Hl`9Ő!qRU1-{e=DDCk9 0Or vhŭypE`=u !Ia _O]l^jl>- A`kdְwXLMfV6}{B BٺD{X!){Jo,zcT&(0(##qx}?g`"s?$mΑ\xͤؽل^h|wBbDErSgN *AKpxa&0z-&Fr3 Հ&Z3xʊay+m[rovO )-QUfM457 -lQTS_=)]Fqf[x:v+LQϜs8H}60%0l=-٤7`hDZ˖cЂl]Jp],́(, œfcF-V;B^^^09^>^S{ ')B"iFCiǗe }>FeΊ1@x4J1܉V2n?hvu<.`1+fd28?F FF?^]N& <[:K\鿷Phʎm pq>jF:^p_؃M.ʵO~EA-_, ڱķ5 uc=˗o碍aɿz$,X|="Qq˘0Y1Ѫ̅/joP۾]a0Ս=p3r6K,|{cX(@ߠ_"}’*'KL1M:K{[~ Y.kоqIӿe`TC(߲TU3XgB!nT-5}_/ðf" &$iB)AhZEk _L`avfy4F,) J!J{Yunjż'󍲍zEGgZP5 y`Wt1qr+DaERD:3fr8^ªT~-3H'<ÿuNdVCϚ:}n ђت,Kr;8`Ώ:5ȯ J^ 36x"2%aw͛uZ0̠]ZUBJbYCdtJk#Jǝi;:kIalò_WK9³K3bd`$/MOv9 EhDՃOE H k"$BYKd4~c M8Ii:s"fWX՟@݈@O ;kN\ W8\ NٶELݴ:-d7OFN o>75cB"lұǑq] xܷt01HtʐCyJ[bR)IYJ#&KBKP%ij QdaDdv;𴊂qn}TT"o<48 _0wd#ڶGuXdM}PWE>CggKe/%mJ+jCE|Oԑff3K얢wX3?#=SLV401Ĉ7Y]哺[뀰s}R#Q$Cpy?ޟDQaB6JR#A;9 aU{X*3m; :$EҌc(1bxx@WU%֜=x/H(-73،RG8QmxݍatDPkf @K] ƀ})sC6JgϞWbQsO&Qa>#̻?\y{*^k64WF)y;ܷ &#ԙ+ꆷ8\`¼;l;1AYI_ZT겆޷f uu|)!;"GWx蕙R|7%Cnq` ٞn)c?xЫFҰUD_,JE ' dR`lF48/FE+1\n *`5v( !*|3iqYYV*," ?h%M)zd첩ecM H8]ZmNˑ9- v5H wo_U:7ЫO-ďc‰w(1z`ᔲ'=,-πJj)Z@ =;H)?B "ͮtԲ3s  /,)p-4V582(BK#KƛhХ+Lcod {L?VKʪP !1pO<%Of0wK;9Z 6Ş}!X+Q@ؘ/BO md~j29?VyY L2)9 ٱڏZ[/}syBڑ ݍ%D~@i{%["6=Q%py=L!4x=ȁ a&Yq_8*TkO,bEb9o(nB] j=XVf'S^(nAIFe jF Uv,w8%N*%[|tf]$V sz&.ݰ859%D#$_)X3XMۿb}&BRn]c \Mn1"˾rh 'Ӟ`F wdZ~V3+(3l {S6U9Y_}1p:QxX`/Eq^ j>Rny])xē:m`^LJU?V02BjS /y<ܢA>9srYv7Ȥp7=oMkj7fLQaY"ij 7T :쓴a1S25dzRWVb\U9!PWL 産Rm} Q[aִ2ӡP1d2pO/G6괓j|P(Dȡj QGUvy=Fwx !'~h):d ԈmaV!SARȋ ˡUz(6wn4MmBBn4IV r(%R6'^:!J؟YMFE9 ~/:V_$>{.l6͌h)H9{9moѲM2!5%ItnXBBpUz"?ѭH [ؚIc&eDfEZ^"682.p/Y5)q$RHŅ6۲ҵ埖u))[5ͬ導`-@l)vˏ󢌻~AL\抂dk-i0j3B\!m$e l2|L2!O( ˡ)!\uo}n4߱0pZxB1sC+ĉ> R/ːXO@CJ$=H_SL%%8u ʀү% Em02Mgw!;5ګ_/lW+גnwfa$2ȗ@ly!~j`c!:8dwC]ɒѝbRp@}c!4֑4rr 8UnG`xŮ_!p^7̤Ǹ~]%I̲cp'c=!o QyAvy`1[iWyΡ 97D7<_ v7Qac oy`͐by;"m)1&3Q(_ C9ލtz'vD|V|V wcµ/O|($3-"(VUʴs7F:ʲuطA@r`D !<I& onɕraLrbnͯ}qL:odaWd75ӏNCfT\0(1 PSX<2~4쀀Gi[[*'L}$dioH6A7݆S;VGUйڪ3,m(zFx"}UQspL;ïgf`Ѯ ˆtZ1ETd at.%ߜU >0X فм`Z* G,vk mԟSƂKs~s8λ[W<5(Wn/߭NDUBi4t7GݱN79WG/" ^&k͡բ[W}E&-vDqHk42̈́[C>lGCA=5%J+4v"geI>bS},L.z5܁\'?VO֔a: ᰎ`'e0'4E N.uʒر+37G8,H 1smfq0!JjYP/8,LQ{\rkӮT$WG_[r~$/jFyYÐ?Qv?ćQɰ2##h֏\ 0S(g [ }Ԭfxqu \ 4#A:TVI&Wn4r%a4԰);䲝.5ԩtzӺlx'|S,gVҷ[^ǁZWae +/5$B!,7J=3vVF[n/g3lCڌ8^ |~̴p 7dPlNOgOY,ťC"?-. Sֳa{>WapGQE8J9)@2y͡+EE%hu'm3=Gv2skb`SK23 ]Kwҭ l酃M&1 héBڏ"hJ4UG8G9t77:7:GH6(OIBI€m=ܓr/Eb$PAgǤNc2IoL|Kl g2w!fg~) b_>>|'B_eIa;7D$׺Νp8r 1qf"jƖ0>/GTYPeZԪBۛDEeNWL=|S"VGJG*g/U9JTVi8,o?`T@aUYS7;ba!GbGV"Z#qY,]V Z(z-jv U ZW8,؄'9ʡM ţ716?7QRB>i|5fϛ@i2e D_RJ$ôYuzd*|#UaY ?9R@BZꯂA)mۺ'Ò^27sPLp%3ܛfż [lFUjSGpG6w'pzYRJ؈Ȋޤ2u/;tqU0#R%Lնs>Z9%֪5!kY^J F}@Fx@wcLرjmXgUBCɩwɑJ(!԰Uu9t!3/.\`'5ϩK =7)#nr_u_3tLlAxIx{9QrQ̸VBݹFHquo2a2 e*]uY>"̈ƣO '!oaJ#k4؃F*+:Q4F J< }I`;#]|kAG ukSl@6je3dthpr7HrH5HVz_[!hOb8= "8=(^ۖBъ(3J Q樚&8_+ Jfy*Щ\ Ԥ{-Xr!+rP\dӤEץ%}Ko jtq>n'LԚ= :U_[JfgV6u$@ٮRްxY &Bt֨Uh^xYdBҤQp|<;喆@ǮrP 2o`7ԥ!ݑ%:;Vwj?=`=?  4O(grRU<|gFCJgÃMlV vq6D!c8% l&j٭bPd<0|R%trT\FYh؈f.P)MD47İy 3W,_@"DҠV~q7@?̀ O07UsqX-x}4[p! 5!q̔^hj+x`Yk.J|vDH痷sL7z$wbhM,re*=7؊hyefJ:Oz@X8tj̔m}f[Mf0;ɩ'Q0)^g4r3Ȏ/ar%N 8Otϣ"(* :=G&. ZRopK:68M;d'R/|e%mHDvzerohơ⥛[+<--iXƃ[|z32P2ɵ6 NIr(f ak (T8q g*0Vs{]T$Cg !Ӕ<+7SՈ+jL%LMbpiynbA{D sJ1yhxv&Q_S:7&(^6%q :  1tf5kFAMR&bP)T(qKx<| #U{ăUϬAzC] R(xxWȤbLFS%$rOmMIH@dGt^^H^#1٭=;^ܙ4sՇ >o~5>ZMBDޣ%(BQ2W2; ᘓ?TcERD=AG\4=\|d\<'ܒ~R!x4ѳ lѳNрC4x:HvnKJ1 1C| k&v"z&xjf'p,&]p~aܲicϔͻ\}Cu 8BdWKda0u-‰|$y`OmZ4+;LR(SZJ&u䱘y5BXZ'&dO81}|~~ J0G)%F_U dRE{ R*DzNauu ltC̴2Otc81޵<[%\:EB*ggu [߫rqjP#P JE=MEVZRIvfԊ@Ij Cˆ9s ZXD׳ jT66REa FڠKA;]~ߍԀֹ8n곒իƕpKwRqK*xrsj4nË Xa؊܍\ tEp B&vNss+hfז3I2<,)؍>ڳ'B-YfR~!rB)/LҰ<d*/} Fw+0C],Ĥ'H|uWjvH&9R;kRd cڑ׿Nx4٘xKqFaiYng;ԑK;'s0?AAvjj {j?|Ixց|kQO mq!ֈKT_Yỷ]^)2 G '?ք $CJ`a1@ nyU72 9Ƽ)6?į}~?@c\qSL%If%h lbԟ ' *CIF0u$?ݍe2ė)i\C-@ءCݸʸ(Pn|IlۡJF_H6,"x[՟tAjCp$(5CP_^䭐Ԡ] Pz:3bo`sITH 7h9'o`\X,QP_Pd =,(OA>3QlX|%ƻIZZT_ׄl`5S{'$5 ??bu4O!"nf Ofp$xLe {C<ڭAOY)#W$Bsx֕?a>!@?˓wUem]!*a~A͑Ym+*J)qopZo6ꂓ6[TzBVuyVEYz,.@FɨCYer4CVH7EI\4Cpcb:ѮI*o\(G*=P y ~+5CWοpaɱJkE>ͧ;GNprf+tdg0Q aH@6kJ~#D&!ċ+Z&S@'X]T?TOF6 ;,\mtRrrA7Lf+ ƭtqg?a tΧR~% -!Q^0682.Ǯ*Gvo?K V +{u!! -CA5!YMR!ʰЃC<Dž-dQ koU KDKȒnwfa$@lzeDV7P-&aC!!"֝^?\p$g`q8l\7jr4g_:B#D<7di#mj>&RryUTC!f2,[0 R-v.4ade\ R[^l6q7/UP'[U"L>@>6,P}J8ȍ}v`Rb8.s8 2LBAxĀO|%lmC2',1ڗmBy~׵ǿƺ(#$BAaBK{j8~m"H7+3V ,Ѭ*d:AFWfhLKT[xȭ^YNpI0xp/-ۡJ!(&ѵ|R'bv|D@gd.eH!njRI~Lp)YvfbX1ĞD7C8e*[&淙-!iUr/n{,Pm pvQKYQ>nCD܄O f`KCu<=&6S OU t RXR+GIekxY}{L<#ju'QE%݊GD$snJq^B#ZI;`%e/:i`<xЀl\ΤG֟ky24/<>lӂ=l1rRF//uN҃ĎcX%9bB 3$4IFzrGu+.H܈]ІR@'8s.A1l2y{|o nn< ӧ'+g1Zjǟ4I/dQm`5u^ (-*Q ^_b *u?brΟ.MV[\Hvh:e_CiXEdV*qKXC¦>i ?ݰj@AѬ&sfWøQ찜c 8X0WC s A.CTMP|oAw+&YV( l!2mDw*Ȋ؁P:əaf2˄I&$o`J3|VfNyqV[ne?[2aFg +NxM,|=B 3iו)vq}$։8/J녎2I6} !]u⒛O]pu7u>up4u@_?g&oC+]a:XOT =Yh}8A'H˭W GO֓~usg#S e\!Vz_QP/*j2n~2˼B8ja?l`F6}xS"~.DsӃbc y= zR)$PbuD3TPC2R-+. %(>g,E؝CZQ"3,5~+\DU%HjK a5!""/7淑xҟJ1x Lɧ# p:toM._dө7,?vfSԝ-J65 #ũ!q (-q?h ;KUgN,HxGsvn\LAJfj3 uJJ&U*I,APӡ H[ʃWr! 7P>!녜:(^G5KT (9hPbT&[#Ryf2T6h^כBrrj%?^&c /!f-˅VbAvt7WDGX zV5#X ]K;Pנ Gx<Ɣj4=M2Ư}ތNJ* nGj{ҡWbx1{$@`חQ0T߾x(g+=`ޮ3AI*z]"$&0%FP"ȕ:4nBw@HH2co^a-T\6TJrO\'QY{- Ш0i|,,qL#J,+Jxˉ/g$BƏaʌa v}8 ,GeM|4>u*/݊gԺMuyƵQyF)KE 5&3U̶LGM 9t#4rGƁ<X0B"Ό'qmC(TF3EQnȯCpBX~s'^x N91Is<_jid4|3/|o=vK~t#:0/mu2G!өHnwzKacW IDAT9HZD@]ꟷ\h SJ|:˚uhmFNwi!jY&<8_ ?#Z!ZC}ȆyqYWJj {_=4AIP+m ׁjIdc56.沀>:< ]Y(1mF^ɘ L! $bko`IR#܎ٙc=vMt`5Js(BF=7ڊL 7̰ v̮} 2u.>4,DY}޲=_ 7?"]4}<^51`tf$sc'<2zl*dga/'^9:SE[np'|MB^Nvh߀mz=n#2cMk]$F89c Hu [GC4'MjMOzSgZRiiQUU3 4PF~ۇ-=ٍ 1HTI9ɫSMjOQE4A.k L"I1Zb鴓8>u)IQ3_TC?d#avkvJDZhqwHYQ?"xDƋ sv[%3Mi3=oF;̶_QwKCC&G/G^`~߶ز !oMK~O_o;}2:HњK BJ%6O$&Pu ^pp{سg{o|Q r W?~#3Nr]pγg?v\ʦja{/yO<~.;ܽmv5"{usT|+^[aǎ-ˏWtڃzNOx8RLcJ`ULzb<(A566˕s3͓ﱏ[Z5]8-_Uf@ YYVMX/RѲ{''61Y|4VwR4N4?"Sa94&ȂFR6rCK># +:Ұ#,&fנ^ QqSOC \:g je7GO^Sz(V>zݿ6?k;:r(t_7ߪ`/zaCC5 Yi@?#ݾ}^u׿O}[Q>Q^<{f鳟/w o᲻z &|u877ianaanqq~ӦM6-,o480exݰ-?t_Om{'N<0y>{2YvEǟNشL`H:^#dힻxW#!w.W7r9e1cj#+ml'^\)ݜKCpCz^b/5Y]F6\´CZU(S" rFQ@xfG^jִɣO~_Gyg: ,MiGwx2rY{O_[/z! a۶}3 W;qٯupɨ}wev/})YزuZ1Zk9~m*h\ h+B}Oxfǎ-0;;>b θb߾C'?Vd` oqhG?s諮x`>xZPy7[F+Vkx;w`Lo/tE76?eCQ>G=xBD`A !u"={ҲQr'~BpWl\& ad}]T{`,=-D6bPLK/Ѝ@#r-[љA\cAZYa*됉hxX'/#DwC 0 ~n4r~ 1z;s23SOLS`6o|aΜYyryd >~ .^{o8l|{ueeG6ٻڬ~՗\zA(9tDh7vW9L]5sw9?rPPF}_}̙x`u~,-8S'=qGzȉ?~NLIDtח/;\K>bXpm7-̅>zNϽgHC[}:m=G lmTc*OfseصZg~mPK,1͊ɚl2!KdC*P;<{_m]rh.BfzPa$M9$̓_Ya:Ԍy 8!iw_.. CZ 'g.ut4^l cLFE˳;N9L{RV&~zˍ\xyq#/=rikN: W^'R]Ϟ:|pe2E έ\PΓ+Gm}ͩ4?L~UW_Mq]ėO:ݵk¦;U ?] pSϝY'pE=aX>Fz5qVudƚvۉS0N^4\7编oHȍ/G$i+k*Z߬Q^R̺rȷ( D`|Yz"&<F=u̡Ur'؍4xۆ1E B~KOQeFP)'S_-qzP@z+u Xo|! :owz)':v@o-qܹ/[^9[l"{_~󋮌lwGY |Aا=:Sd=YmQkn0PTE~g;f5UcZFC w<ǯّs5̏i_ Ke#ٲ*6/cb3/Arq_% ݫUS@aF) 3 ʪ0L,s+%[M X`q:$@La:g uLgw:z ͳggN/ 1-t>!l A0g7g&:;ihnҩ4+Sy_޶h2杇o8z Ms?WVc7)7֭o_Rg,Z:\U€ֈPg=쳧mtᅻ3cO{J /x0|o>m#>N)ww޶_}#z|\Vn*WĕSYB69J0җ ϕmR"ڡ)X{SR'&"\@Esţ_/kN-n8ҕӏOΈ[N-=rSvA/eFoi`533~- 7tp޷l]u}CGx_P~Jw{ÏÇV :W:Ï󛇿*倌j.Ri2ӧ.%[~:4d0o]3Ӝ;fUO]wЮ@뇿|σs]k8tHlv'!ޢC>mqBrb>D QVu{Hbf <tL7CBJYD`TaၛeeءIWiY])'5*bͼ%ˌPa!oClSV<0FϿ4]OBy<%8i RsDErysJ!]?1{ A_џ,Q\pc;<#B7zP'vPFJ oQ|'wbLzUyXEWܸՒ;^o6o#4=;|m>M7oW:`%sgw+mD3U}h/29yw=aɜoWNY3?ޯ$ͿK殽?W F@k@>c:֧ї]~= hҗ4W&=يuxk^{w[?S:K340.Ա5z.2g)a=ASw0BcfnX,2hǃHᆴd+2~篖_azi (xHaxЌH?^ sU#}7>&~T%x6rj^d< b{/t"Lmx ]QqZ*F_.>Q8LWI?oߙa1Hm=h sRnkoO~?GQy~]:s]MOOMy?rw/ODc-W]u?w[~ . }ػ'>"t㎏r} ML?qcN}/{WBԿ7?8o'o}?ykNy׿-?=7t˷nq7?<nW]o<߇& [Rͩ_nz6:ق ՜;b()Q|R C.!`c| f8!K[ CYOMND &C~o $ Uϟ6݂(Dfa,rIuܫjMht%"w$*8FE'5Yc]B K֋18:O(>Q(<4Z a2~بa/<{F@g/)Xi|I4:`Mnvv3?{؁3[ƳuBܹFSZӓ"~'/ԦN/~5*~?E[VYGac #+xϒ> xewyO cqO盧;@ia_d+n|G>b쁃{tN"V ӝ/Tn1 !@)ʵ:nNCjΏ|-ZfjBAXM`Bf8JPC)c-Rv;l IDAT%aҞ"IXzjFQ0!Fu(&Z>D" ʿ/U^Lmk0 RbtmV% g|61!Έ-K^?񸊈ne}jpx4v&`33^f論 .Nn ݝj7x{ϯB72t3߂f}<}7-ytfF/̗hqqO팓u?w}K饿xǿ ⏙>^~م}?/~7?s![0߆CƏFMCBFyq&Dr(m^s .kp ڤ 36JmGdWLy|Sf}Aadb\O x"/dt`(CPIo,!>{Š3𱏬Ew5W/̓Gav80L;/Mx0|zt7w?e6xiq춥`}ƣe^d-1+?/Ύ]t~@OhRޚOɔ#t4n_g]}睷5y++:/SZaJFo?| a2޸5>:~˒.KyTCCW/~5?L|׽E?>wy[v3TOw בUj/ҖLHZ}d灶)!6D-v(ޟ[q}mIAȃe<-Jv( FR|]9 T?/ub\YR=SV֓U:Kj$%R38;Ǘϛc:;4˜q;*\IVdj_~@f$p{g@ɹF ,9͈d7rL cͯ]Ћ^o;o^t =(<{| nt4qbz)<.P`ygZrg3 8p?ヌ?{G  w.K>x+\r٥vNs _~}(?u̧>7HL/? oK_vm_r3:WXӶf Svpᅻz/s5{2UC60 `u' jLӬ1 n! >2QWm2*zlbGsL6~`/mЌr 1FfO[}7@j|"V.O&jx47Y{w5xI'0$&ff.ۻ]mݾyfvG^LyO!b6Bd> =R\ !'@#ϧévtWOA෫Y-BNI-F:[ {X~ߓN%Y\/zqb%-_+%k/o|Օxӓha;v6<7u~yԽCݱ.Mvfm>O/{7sc){q[.P1ھת>!v^b̡MKOlz^vE7xGyɓ#G`Zr*cQ֏2:[+2=8^a؊>>!)EG(ZG Ue5Q@~ \:my2FzJ| /CL˧֝#C34sֽe9xp7xه @exAy߰eK<18svwߴiN=0w,.Ϗ??zlupQlroٳK!]qž~|;|z>!}.;'r+K*>oO8НOD} XY=j)=xKWO?}ꎏ\{݁Yg={-|ko}ӻ3qQ}; 4V׬.䊔ȫb@!\N!rG$.5SXDr˜8LR{z48:z^X@25,[&b91?&x,-Z<, ĎMCM {82sh>%3+3+3Ϲu˒ё_t4(Q#>>ڗ%S$͉8yԅ :MYJDnb 2R+3~6*W^AcJXrpa?w8 6);@b"<7juw˦~U,h)mpXmOnQ{rhrry&>oyŏ]hA֐9nAluwod朳svqC'xЦwΝ{iܰa}?uC ~V#X`9ysg~kwL^U0\ۯ^e;;>kMįV-9L(L"WVqU-:c5ik5!…sIo۶,7^S\-0䪫?\k'?xȾ~e/>rteSNY}Kx}{ƥ"q`igœbѕC\vr$`y:WjKcJ˭!j,ѝC`Z)'@A#̱fWELZWpJ‚=$ذ> Ϗ"[٦ QD 릒9䎡$J4_f2 5W, }*،R\iDd _'VeΑT@O&N@~fhأ0"D)`p Vyc1ah# _._39w~v:O/_~}3W ]MPq_m'B>*aϼqIS..>m艑1_r& i{͡3:^,\8mɀ0X?gIZ3~Æ+@W؏܊ז僗_{Vq/L dI';* ARpC!7KWЋ,'SSK6 O "i«4 =if^¢{9Fܘg;F7eAs|&2`I9 49"|DrO:X`hhK^|yO=l횭P[.,K(9>t?>>?P 9Ͽj( wI%W+Vlxm隯Gj++C+""w뇯ee~{ :5ɓ?~oUu"Bd:ËS$ԍN@hRyd`a;;N1Sƫ8Z~'N2G!̍Gu ;=OQ"9t̫ KwޡH0?ހ56bCTKp]\-f׿{RP'}sK.,:jժv:f 99&APP/V`6TKٌ#-\244ߞvSNO@ϔ>t{h/p̙ӾWx瑇_vѽ4@(.=w@<o>_71بWU{tdv ;=p-w<礫:#ضmc{?G~Ww><0ЪZ/}^xƲe~zIl?`oS{6x`<׿~ԩͲwvTe: .*ȥmfmxg1H a<ĢyOsӺ@2F~/:0ٰ.$"QCǣ5FA%uCYu=,!*'xir@2q.٠cDl-B7pA@1㤩9YU94 PH4IQ'&0]:U׌8IYS*r4.vYZÂ|c*\EWIV"4KE8^fod^ba||QUvo#u0- sbUU+0:||E^G_rn>{ӯ?>{!o{zm/ʓ|_O i^xyJ2U[vݮLxc޽?%sԯnZW\qU?l0иojYX7H>~óϮ^Ŕ|9/o  a +)Q}d="{̉F"׹qrhJ)ÁŤ͔6ЕK(Z`iҙI}ș*E`)ᆬp͛*a#ԩt ?G޲lV7A9 #ջ;ȓx"^]yh"jh GKG( ͫvw۷EK8?țmIHO&D|٢ECltt|Ŋ +Wn'o4ۏ>M7@XښUo׍ǎr۶owWpŕ=Oj]w݇c.}v7?өp֬ P^`ܹ'"v[06^yy+/r >%eweiy>[gojM)t~~;);ۗ dLu] ,oNSK b|'޹}J;%XSv4ɜQ]/`PKmntn;*,F Get u̇u[g!_ȡs ˑ+4PS "L2ύSh ah)&9iʹ6&ա@Gghɠqy$}cF+:x=i ޤ 訢Jyc09^K=>w2J,mpl/(w3;u֢?{]/7;_ojP/փ0>N9crHm`IϐUSo[FG,CzQoۮ|u j ,g>]eS_h޷'}ee?!f/M&]f~ŤYm#CIOQ(ߺiw"a劝޴3epf(Ǡ=w@GHC9 LY4wo?믯'3~u;k=>~6 a hFRA]> y/`\hQa5i۷5uEl}Om߾磌οK"%|\aU3cT#vCs*I kДo˦yLOݸ=zc{e##^wa3i'>u\#/mܸ=к`H7+yR6ffoI8=g;87.F`ЖY>LZv_[ˁo$!q{H+iSBQe}+D:".`=0fk*pE09 'mhʖr9P.&Ɨ򗁛k#݉[b $',bEi9l{qs]nZ0\: @觝aӠ4PzCV2a;PvX۬'TP;ofE %>}eL[G ,\K&4W:>p&G:' IDATCQowsO$p‡\o߽%-v^p0? %s:}@]gΝ^WV_pk@D J-x C2Iռz8H{i}oo.}&+<;uͷ\~Wx?ؼ ,_غe]*r ߸cv;ЎA6d<;&G*L.f-Nv3-YܚsÆ#x X8'Ov4v(;F !~MAHA>SuЭ jC7*h iHϱ;CW4' D%Wd7zK*vI: etBq6 @)my"E4f uAaGC`B硇ש[8o= {:=0xW|`2UwtCr (ǎGvt׶- s+;w5_ڝ۠FM/}gr>|ƍ;TwI,Ȁ5ڕ㣫Wo]~ҥk;-8ڃ_];~-uY{}泷̞,*BNJܛCNG.V>6^l)gVVǦE 7\r  M;\~vE7ر_X2o,ywi;w +\&gm`{'a+AC}0kA%#c3x'*,T.Л-C% ۃD=.xD dBIQૡ ɷfM ӗg  ݢbsҘ0YK;^̪ L?:(Me]_mL0. M\#I G/)>j'{p!דyWk`ol](:}쓛~Fi0|T;}c/?'״G~?\6%mc{sdWg$XZ|$<ӹ Vgvk4Cr?y]w^N y|-|kc[JFg5+N:6". "];ݰq3֠عc֭{*ccBW%jn[| ?*,s+o;9HO9u5^x }'=KU=ûN[4Sf}S7q߱kVo>t=DŽ\0wdeCұ yY9 9sґ{aBYGZ .zϼ.2.ـF/P&5nfOr0ݞۭC/#@䁘0Ԙr=nަM4iW|CDJVd"ya3ٳ]4ұ˦, hU#p(I.Lt}:)fn4D>eQݢ q"PKU xO rb)O)g}jL8:vtE׵VH^@H,(L< yr4_di] a8`* uePv:Y6Q?&+&U:kFo{z9@Es豱q ڵsM;<þ楗}[sW)^i ;Y:FlrpD{X@WK2L[M`37G}I C#+ &܀j!Pn;oRR'CdA#!>܇6As4Q {pC@q|LٿۭgqH- bHr4Y _i% H|Z#V$R%Y7ZՁIf>Z@C8㦣~bڗjlΙ3 #ՂLP;2Xg_Y j ᴏ$ ªJ,-Z,O! gKR*dXNP||;J>z4{.xu>س8(:@3/7VTE@Asldd{ [5K:vOB+wu|?%"i?mgϚ~q~\UEw$G_ڽ]H]p?+;Qn W;T5vpXnmբ*?'=yy0 -#tM7]M+VmZvk{%y>d}e=r |wڷ ,}m3.IIwHAR3K Nᢋ4ׯiu RHۙ^};K_y[޳`duJϟlmڸ/Tw!s_y*]S6|~~&?96޳pשS:a+,H#JOh/D6tEe U YM򰣃uQ:47eYЂ 1zzAf`iS|2"!r y=]9DZ.t R->} Ɖ2pQf],7/F {]8vAw%?Adš|E +=v==G@N&}@uAy{0y*-zaƋPտ $mU痟vI0C(r%gn<ӛxsג[.: tR>֧>y?!n]_({Myˮc5AaG%te<,+΃7ڷ_}MmC}gN9uEŊ?Uomt>cin|ǝi/>p9=s洯=:)_H[?C op 'dǓAPE]dۣK(Bl0 37ˏkŠ*B}Ӑ?6Od(B =%BIo4A=Ԉ\䎌$sJUԥv?QJP4ߨYh"RC&/Թj9^w,Y#ScPMIb!~UHG;dPi};|NK6v#zYU}hoRrqƇWw"Xns@ a I֜XgϸK(}eq^% l_fJ [tt |鋷~hg~aVBRmY 4`] S‹9OV*L+7:tC Ǖ4iKNҪIF9sf~7oA->eȳOsXpL/Dqr(8]܃sŘ٫_Qo9("ʳy=$lVVg^/%ⴛ o%d =ӈ3ra>$a]q#$n~Ww +MMS?}B['j_dݟB!֬t ]L+ޠ+3@zdkíV:rhoNy槏oo9?ZUܿVj> 3t|?)pK"*700~dHWxv_/wq}_i?ϣ6m/!@.ϸ!ěڼ9U$";/nj!3̟?|>|q+ͿO?\'| v/]sougCDb$ xe=d@XwG$,v"^Zv/2my7*AlUB$9+f`O^ Q؏Y#| kpr8 MPwhИaYEpOR_ry L_`}iXg P)zV+)R󩩒G1O[.?n$ FGZu[m@]`h<`OB;7 H?9wabǶ֊jbbUΛ]= ӹx:p+S@X8ʕ{|~@乙sescc>2XspRaݻ/`YW]q+=<<;_?̅/'m}h > _@t] ~qa@f.L>eiLj+T̘1eW`Fu֩\s6#j]~o!P0unk/,߀_/.]fɷ~0C+iFb7U~dÚX!R$ 4dR$y` O55BAtc<) mI]ahᯖXMR54fv [7C7MTZ:M pryTaD#+Q`}>\}}{筶jf.sy^8p@SeC±x7ˮV >dqxם;u__cuDa`HXwVg?H (T/}(D+_ 3|9EQ|[1@={3̼];]7r]!WK~u3O188dbӨ@]~9{~oo jsZE |'63/͠${;$KEy@;Of$Cc!``N{qcx#Z(Pd Ʉ׋)*9~MnY/6W_e+A4}_4a/:m(HW| \$ʉX]ywb 9>/ehL/Dۗ&U9&FGvL>-nn!0#F[E1u&ojvgu`scʬ1:쾝 ^g ! ]+ ۶W|\W ş}<_HȨG+/س|$Ggϼ❴zc8ӿ%"@:c8JR4bN7^:} oܹʲܶm5^(MķtT Av=f-~҃~+ vܿ~v=qkh7}@f=I7ѫ7 uCBӵ*p"+g4'WA?l}wj=,+6!͜ q%Ox :WM? Aʎ'og>=iۉh% P6#uQ#UIoCQNxG p1`Dc ` >w=I"#T\=lܴ|gwε?o?n62:s~j?<|͚o,_Wlٚ/K/9եxcFJəſ򓨎Kkn=rSV^XïG}%K`ǎ}=fJq5k69o~l߾C?g/X>~{}p$+wρaɌS#G\0V-x[!ͣ#w;~/{/up;8, )d *(iz^#I,ӣCzlQ&o|gX:yB2M1@]yr4%l}V{"j`&I730<4I\)F#syk >>[{t$ӭU`p7ǣmC'8wgUi@{wnQ0i{q7-P-- Ȝf$C'M+qr}v: };Uh:%'OΝ{RQwޕO n5C;\kCk:]7׬zUHD|ᗤ22wܰa3"t?smǔ>ЋG|?&Ln۾.noٲk_{m %>K>/:=Љ猣 wo/ύЗV5#Gw_XRc:,޿k~g?=2J;4]ꦣR&z&ȣd,$OɤXZ~-ȹ "d9d^ΐN 9M.dd4WWV|sp^$+Ӌ n N pCbH~;sglX2=%pg&-!3^"klW=<ɇқ5YEBH NCO={zm.}umE?n]}Qb[/r>s舛O#(o4ӟzP06>>:RG/q̐&GF) 9 Dit0Ӝ_n$}W/ NI$\~2uOѣKϬW?Jٕ Aҹ)N"<bAL=D2$QD07'|?a!+{+I$cL\UEvOې^W (T謧җeE(vV ѕ;6~s8՘͛ mҎEG lݖ7W GB:̘]%7BO|Cy@G+ѡ\s{=(\7}c>uR rxMC#+r UnDcat_Ju^!rgNǀ^,G3aI¤pT'*XkͦGe`NAxHOWwܻ@-,<{+2u);X p,072x";,cDM!>Q3~g@s?f̽EˍG; ]w hd1-(myˁ%@;&]>8bPZ6SHUVSʎʼnws/M p0Z)&4V]Poem,ˇoYbsg!}O@/_{LpN '.Tc΀[v7mي&GPMn($$6 <7?P{5ZpLCyV(HῧK4^7Y:(8-*y7Mov͆ M$"3cXݨ%)C e-0UtQL}8ZPhU2 >k0Rbp }*qnK-#m9WXOzZ/pY|ޣ8-t6B-:ZW s/\yY"w[Fqju| 1wTJ Lo2Q|Z5S#qӕeG oVtX4oÈ G_pY&DT( *EfD9b"N\r*VG KG+mN1 a u`/<I(kuZdvDGO~ BjC쁺 WHQ/^<{ʀL@aӆ#g{/vr8l}B*R 0=UAp  9EPdSMYU HBM〉 B%قT>)v|MO$}3FWWxp 0й'b'@/z_Ε@XxkdlpȔwwްgƲ5ޥ4/`/^vU3K'Վdq~ċY~LǏ8ޗ!.2Z02r\9t@ɡZErͺ/ʽt y]d#i!|[y0d.blx@dy*L]Fg'̙rw|NkMڵ)}B`-RԷB& DjQeFuvX)ȴã5pf*:e'COXXYѫ,kֆɶ}a?JMslc3֚DC(CQp$܇>T=hAAwo1jat3u.;\O;;C +!S &iˍer+q 9 ,:h#|a5DAf70{x5[gLe{pdnztގz4i mU(!Li?QXn=(*Xflrd .i7J$K;_v[XWd&22@蕀"a@rO~eoKS[sBarVFQ?ԇ)G5" p#y,cY:D T4| Gz[yТSQqPBԟPCofzN'(uU9<$N7I H5;@1@Γ73vc?͖çGAv!%DnɰdY0M!K1fZK%ɟ%]2&}cI\ Y'-~,ly@2G.Wb/PU[Ԕ0(`<\M\hFkU11 #@}@/|ϠqZ Z6I,D!oCTG\47N2׿FLvO8DBg) "1(&vN7 N|>fgʤ2٥&?uH bZGˇz۞SXSMy @寜q3j@0ֈ԰Vt,9d,[` Iz$&HO¢9f?l@Htz`Y\31\bM`0')czV׀Pwc#L{.{뎻_84܇|qP B'4@R}D_ D]?s)!P@^5]L7ojA E4m*H{ t{9El ݨT"X9| P5@~Յ /WۑLROKT$s26)#eRw^*8>-$`a Ypr 7!5 Ga=\q2=Zpy"Rʱ~DІȕCB1b2ܝ{CZapCaFjȋp@F('@fή~/Ϻ{}+{_(xqX!͎|"1*h)LXC&.)%皡;raljAZND'!iYO|_׃(Y). HRX 1+lF؞eXro|sG d9ǂ\MY%}BS-U߉ xjեߺW"CL= (|de Jw/mA>߷`>A3(:vҷ(XQ*,@UҐQ ' 'ge<8S$RDVXEA+͉émMnk,6񡄝8A"DҘ8=G\i^BrH8o^ !΋='Ǡ_(l*dGy`#oUGHҠÀ!Qi;k&u$fq 5~]0?a(t\qH*C @n4׷I\td]AU$-qp=}@C٘܊Vum9BX˪oy+ ;xrcK 84N2>G_>kFG-h5 lGЭȱ:t'JN4%;8c.etIY 0vCfɑ .vry}VHBrjIZEY".r`&mDIpG-("c:lq&d-50d?6uLhDH9# (EV'.M@ODW_yˇ@/NEZq|pC. h-M^,L{A :l)[Z0S%x%lp=4+nh'R(E;d7LWH+4/dWMhC#0]g{!JJhlC HuagM8aGnA,~?Wy+ӄ:ȡ% ̠ɉhLQp:ˮyCP٘y>}%W* \{ZX=VBr,H.ȣcW/QdD _La;8nBu/*[K E`Q @$ke.iYپwȒ^>ّi4vzY*k 5VCp@\`?koeSAX36c3Qt╴a71n;48[D2nVh>]Z3*p܅H?eenLs^G]ϱe) 3;MP4Xp)!.57fzC[XV3I|tR~Y$QW'3sN@\x/!P[t?Cv0֥uÄ/*yTYP]E0͙A4dFBEfM{צ&eJTHJdz;q{|qɚ*e|I.ͧrn>!jh d(cLQsc Mf,%I4tX#B ɡzD_MsMXZ$MX@Y=YW≊<;ɐo> ͉MC߉ U8S,N֍~oA?ցHE6rۏHO>- :ğJP^0n +bl^><27(HlK MyQ@'O8%[AL74-ŮV1{WQg+6(nCSJ _$9zd昩kee >4h4nп? "hyRe MQjK4ߥ8P5\2: Px|t4|ܑ=,\7#;vdGjL$WzL# jI>l$EA;~Ub\ꄴ&23YQ$ QYq()3O.XfR# kSBJčOX#F )yh(!zzEQD`$=$ε΃I^m)LiD1H_VX&9tzg+t~[պJJ:qu,ߞ|,!E<dm c(~zq 9kHQɊ r wMm1=OPayW?"X!]{@7xC8Xetg)AM?a:7~Q~>.IPo󕎱6Rk=\+Rard`TVݽgi r_>"*"]yrȸɆ+tG" H!xFm*Wˠ4vݣ4/P ,.Ò =u oۉ'LFnZ9q󣢝Ӭ@,@Ç8G+@@\cb(6V@C ?qA>uxaxהģnx8kWQe'$j"[Tu2-q@Yl']'zBmGJwWGsܺє^SW@);@*Qs`!ɭW!ӻCݟ<8eR5Ïs dk_69J! vU8I ,J4J|j;LE9pD:GD 1Õ 58Ai~9o[+o*7)(5Ph_hmA0){hbrHBy7x=㶎]hG*ӕPxi׉G#vE(( CGEtGNgq}UQ3vBm=e~+Z0aodID+bnj"Ufۉ9ps}{tU!v[Dd?+h_GY{e]!hNqPX ) /sQKٌ;@3j;iXyz: IDATJ h^1iɻ5^w=`; 4orD]RdE wO&G((A 7L=A)9ܜc$rh}eNuG]00P_P~ovlf'q,jN}"D фQgBbhpJroӫ|Bik)r3'\~4d)B:c%*t(V@q##tQt/%ЧM$˸N^䙗O8|r) ETWrG32έRpa3g{0\b$0㓰p/*C;7zBYF"ȏPvN7-9"J 9]!ƅᰯ7r=tS*-@U" 둼 \9hrЪ1l'ۏw@Gk*$Ci{柰_Gn仑P܄d@3y[ c#K> T5:|vTtAT,[cVt' }^#rH8M4LD~&4Aqъu408r;&Om? _~! 9w"-Qv8 ؉-뎘%dt 9 fȾIL[r'# bO0yVCt͍I$z4>sLc%.q 9uڔ>ga#u6] k ~4h?)d!s,"IAmu)1POїl_]鐆 !~Liž.3HP!B# uW,b SwH/Gع3Z6 3IcΓOih$d}vNDImdeTM$ۏOuCy( : P!oq'lU:!tH lxB2RhuWt9y!8^{n,;ÉJS"y">=j H EX[$=fl@dʱI1QvPfxY^R*d/'t6\6^z x|S"a"z8_`FvFA{ # .솔aPYKGGֳB?rUzƒ5 ꛉ/K? @3+c'}ݏpe~cEp6r5i؏,]`LG^:DbN>.`$N-D}3CB'h@-¦)Ȭd똒?#r$̃I#{ ¨|vrg$U{\? [\Ȫcir鲬'!Ft=FX+`4ä,@²T\ԅ!z:CQR)֍s3'Փ|hHF2Z !F[;}A% 2ȭ>C2)ITHT1j612'IU҈v4a,lI&+h3@}6 ZNN$OR O{%0)@N(uWw'zOurh#PĜ(PC1ȶ]Nc!~V>MgAq A=d;i!Áڞ% N"f)(X2ΑO%e@(GAcHv#4Wt$ͧ Á0 ×~MZ1 悎BA|+۳~`i^y+ Q*ʚO2LAdR,lg} gtNAcY#|D4eLK. =(p/P(p!0&n&@Jյop71? Eg ^W.hf/d⋑uD J'\`$MRƦ>C}̣rI=xL18u)`DAKX#A=;)"uٛmo:cH^q0cB/O/äE.3PggBO{|E[s>#hym YMA)Rhoxff{vxi:&9G]ݎ 8뷒)CxPۉ곝`~3=Ρԍ6Aە #Pzk?HȋxJ9ۣɈCQ2[w]*bAC*hF=fkB<]n& Z #x4h(QQ1z DҼA:^Cǹ?H>y6:zcNH=mc=}8eYyPئ|h0I] 8w?/J@\CtɴtOѨcVҘ ((UJos@Jrވu5Ɠ4P.~imѥy6#+ ad'7C $-ґ=,4y$з(>Ĝ W&j#o;toLI$*sW`"oNϥ&Dl:BcB^FE;G#SU0 s AB"K>rHO< D46I! HI1cPɖy2Y?Z5=x-I}I]bH,ׂ̗~!|NOtrI Fhttm՗["N{T@ML.a+!bLTo7 Ō|KIlVHoTtŖi']L*g YHz vҥdF')e!b7nBTV06L!y2^j,t$j@k]3-d'Klg?O{GDK+%$I[[n]$gRi~C"jAf(|9У4=G%P=S'W':J"C֫S%Ӹ=H>DLmV?_ SP%5A_3 u 3ºEĩjFĭߗ_W0y KJ179~vNugkX]JЫ|8L#!A8S#aaz|9PaЄt(#AHgACwYW\-bRLSD,"b|JݨGrI?eU#hHiyL AtXyOW0(M֢1iwvfLPTߔy"XSu#0:`Y@qn#逤.T @k "7P N2%ڍO#-hZ\9dt;v1./蓝ٳ ̉L5\fAԟ)_P5wk?^(n`z1) y yn,?DVM!+#h܃ ul"&Ɂ;z a_N W^~"b9,}*fD=\Iz@N21Qm .$V>MRq61> u6 8AS$(0i@3 ~֧D@_*QtN70ֈlA[DFaQ@@9,:X_?%2kptˡEs8cn[; k8'.zi?4ipJ$/ ײY*_x;rtt,DOQɓZ"X(%yܸP,̘nq|Dlw:cU%iz%:֌9|`9egANn9-ɇ9*#!O7r:/fQtpR C!pJo_ "k\,f%<􌍐ia*6+;otgGI1 ?W>Tqj`i 3W0ݣw/NJ) >3i|n]d?}.AǪ8ٛF;_Q6# 8 fXjʔ၁ `}.KՍ6DFF)TEh@kʔVa3ZlBM2/]zPp~GcM28u+=-8TEWk(L.T 8 3"  #Qu7M=mZVp,<;Nwסl&v9ۋ tWpG ޓc_:@) ,7g,P;[vāt׷':L*D ߟgVA3nЇ9Nm$-pU!Gsv..2c)*CzO&9‰<;Ѿ*>B2,l'?sowQW,  @B650,d (*FogQ?PT@Ea@c @"dYIHH»<=5UU}~K^SD޾'\J!^4hI:e?lUȇOA{e80> ^>J]zxkG_rz/bFy`Zj}=ǝY*? g -9$R1q')(Loz*r|ִ 10C¶ k<CPw`rRiDeyZC _RRd#K;{3Biv>-Mp_ %o{2wuDLtU1d0{0"+#IyI*/NzWhƥ)v]/YB]Nƞyk;X1':Ӵ0:&%He^z8ӱ$SRzlvBGlcx!6,1"+{Q-FJ=W'N 0&l(!t W)08!m|Vh<ҡLP$MAׂJ1ʥdw1Z" JR_ˡCCǀtw؇?U<54uoPţҐNJBht0t]Ik6 q^2F2J.MABh<d=en,o m=.n'-scy\F6+,'8}'?Y9r:߀c'm3kq)Me)2|T%@\uei]Ԛ+ܑ@f6ȹaMj㝢` JBAb .a@ϴhEfFtchhi)y1Ęg׸f_V{p n3=k/Y4N?a_/$1 cXYY 4 b³9'\rF: Q4vaH:VΧm{h'6zu|k>tP>ta?Iҁk#54 b6ݘFueHTAe N pQi;GT3V0e*k#N IKU@} Nd)$(WmoVXvcfcωSK wS0?RS| KXawӡ8B4+ $8%6hm!%d8X,Z`>e+IGFS+r=tR5[̰C&Lۉ~E|**5Oy^rP+vBEC̡C~Tas(WCiغ/]16*a{| <=",';à3/[jq(#uDAGBT5 ap^V(9؆~ك`c*B- 6{I ǻ`5Z=d Y9|痾[orn;=0RB%^uj]}DX~L:/k6沰 g3ӖKy0%vlr\fIirYm0D_e+ %NuCKqkKiTpL!W:m,w.|$o>]rFq1*/o}bWmqX;~\DeXLZ6=D'H1D瓿 $@YP@D0cr-gȁ9>QSs|"Kи-g(1dn%s=?ܳ>Z \'L^B`كxǂ=߷?_ؕ:f'yzTȊA~c7NƛORuCx6b@ES"ZobRS+ 5g8G+μ"^V@9~V9jږIk؉~ssݮmө W t*C5;M׭xMf8YE!Y^Um\N&lm︵fYEEnSwƺhdIv#5(aĚe| #;t,2s NΝQY)9Ze9 9Vxzzf3wpk=lA,yzC +ks #).@"wtɫW"lu?p$^+.9CJݼR_f ʳye[S xQ%(1gUoӈd~,`fl᥌T摺ЋXUGK D 匯YOcqbh|Kneo1LN0d\^9~50-wUAO`^? 7g@6TRdQ8󕦓DPTBk&ӋRu4ȌZ0=U1@d$8'!{rQgO4fQ̓&O=6UO.[cz;zOU)'B ´.fb<PvT)wl_;ߚ8tyE6R0uӽmR-8I}O*civrYO#Qj nBM쯰AXUIvDZX ۀ Den $&q):/Q ʎȗ!, 4RÞ(@<9@O4BhV w<+tLJRI0ZDFrlXs{ qt:@Yg .b% IHZзzhȶv[8ԕSK䘗䋽jggO ?e/y/w{9GPJ`p`uGn-CY9S}mw 'w#kn?G=*eocrK_\Egg?_>'*] l (:% ȁPIߒ2>Җ|)?enfB1o- D bpLŕCs2mĩg6 oOT`q_(S~7[&` I=B>4 ."3WE=4yf|fv?.!.Fi6XqO+ `?uk{3G=C,vz`g\apPi vRz k3OzKiVO?| ?[O>窫okr?>_|򣮺& ?o_=x{W묏P'†@3|g '۟'>Q—^'O>x+_%|xW\q|Ϸ{18FN;?=:O?ٕBҦ,)f6y2K=,yxs ^^,3Xd25*"RHyG3C)Τ| {b )<^@;x2'ˆg w> `x&k8A}@|ML|ra.o*熳'G H`dt_>Z!]QS@aT0!'eFx9@1f%jg C2Z(˽ŏĹ~<9 vO Pv2ɏz'P/O[ `,y_sƉ~£'y +*[oW] ~7?o_ڗ,_ڛN>O;Wp'sW;ﬓO:cvm*c3%N2@VT| qc`csяz蓟|7|˯oM~oͿ>x<~_~cƑ3 ƛ_'O;o{?q ޻IZw_y>|d?| /q,Q0R=48bള3Ӏ/SPJAWVL׷|",=*dł`?y52&S~<'tl`lpᅗ]y{W}{߅7x/\{ޓN<񸷿ov3kg[p 0@E1o)XP ҥ:yT"Ch, 5?-ʮ[]&"{NɤOJ ,:5ݓ={+Mv  Nf 0櫅4nˡ{gtz͊7L$V~ '@@뀀pV3l4iٌ]kCkGm"2/wj *[6פl0Y1tZX{wh=vw޹;;uxSEmPG08T,KY%{_7_x'Vp.u}_[ngwqϥLO<􍍵兟") >y/|S^^aI{w܃^?8b-\o~j?NiBk,Fz'휅iDqNvrOm?-،K/ψi []g$J=4z"gBd bC>\C2#H'ڬ;m/i):i¤,, 2$| hxQnvH@k{FZSg W 3s;ݕ \=T_Y@ϯ&Ґ*v҂}m>>}zȃ?hoHO?턟w{~˯k7x9xځ}uF~>o~Y>1ÇKpG7{M0yIw$|o?ç;v`CW^yc}x\r|#!y?ŵO#wuF y(852 3V~,dt 5QTkl.7_C$\>ؿ@Ngecd&R(n2O&853+8F/dmCZ1CR{B! UL͡?`9(GAm]c {PVdq`#-a55dqqa 먟k_ >}ӎ֨Ӿ(f÷H t2ӎqrgRl~S.\ps/ckTK?^ :VůW6ݳȵ\;;Dl,/z˺k90GT_csy#+iΧq_l 1=p0>Es>ʁxEwVWj (e*FhCH>Mjr: ŋ^s5 hHD #'1M*i/fbޱ8k9u= 6& ̮*X_۬A`Lɖ߰Qu inr˭UyUbȎSEJK ӎo8~Ey~_W?@ gzmw _xyn-^2'xo?_|Ͻ:_?{ꪛ o}}OF%MڜCsp8_Uy7x _|o)j#WՏ~٧zۗ?o>kDI7;#10pU7p`m}3 \y |ys9cxgˮUyMwwDȊ*fo2TPpLZDw` i{G6)TCa9jXvt1, QC&ѐ8YWAkjH//B#IE8 P@=&|& Ce{އ0%j:3`7L:`=D(˨$A B} 2^ohsЎ~@4w{FZۭن@#=v19,w}Ș,cҷ oo=.8X1#A? N8tƍɤ+|#(2f9HQxotJ+2|so%]o/r=v'gyjX~W ÿ; |/eo3 `8L~.5veWW~Kw|e-^uX;G3_p;o; K[w^7Dޙç絵ٷ)^z[moeZђB+ݪkV.YJj xH3FSचElVQSK1k7%ReD!(DBlX@ /Y+ |_8ɚJ*rᘠXz Irч <3=705 ك)ɸ.SW."g E@qLx#S4!I3"k -h}~6xZGsxQG%> ᧟ucZϤ=s'?z #Y欩Wi w&dW `r;T@VO .Gڳ'v,Qk#X9t (z/Y\=R?)k9xᬎRx \4,CG)MqAZ5 8a6;\n Fz97Z O<` zA bmO8<AG^cg]θ=ۚ;7*n?jG/}-~oiO{Gm_{7U/8=@߻pf/zy>/z[_C~9`"SmOȠ `9!pՇr#*tPo%;&DDr(]1A;EcQ1-=IdS#9O #1Dr[?Ce_&ĈA>hV֎q7ۦSl3yǂP7#ZG<a3(hi³nPW)Ð~UȚN,0A@nckv] WօBmvbjH5=1{Cx& {qGS?񢣏>^[.cJ:#}/8Oxîr]5}+^g='?~_w uXUGipjňD83KV D 6Èh qB׀QiCWu͆9R yvXpVl(DǞ<52V %#b8Mcdc> ']ń {]p)keu_cx":k5vQG=/|b%&guk~E]W}7K1 IDATy?u罯w~ӹ_g=_ ^/G֐@+p HpN}4\s-C+?z1ȣÏ{;/~&`Yg?A¿ֿc! s9~|s;&IǗ=,FJˊZ\bZQ{=0T Ff݈d8#H& S`94'L$ڹX#CKU$nm=\ e+]q&$X[Y̚9 3'zǝ|7K?KԿ%q<(e_|/+ob?]t?_tc'=>vP~_ͯ򰆕8v;6A{=񥯌{w{~#^tnK͹;?wt /s}#y]w5o]} 3n'>y5O]3 ~[<0`\) OBUE:AoicL|LTrær%v M͚ s+iS k apISM䰒K3R57 &$"7i@:PoȯE&d [@714*ÈY_. lA: }{-A@ l!yC,':U) 3>a`jHbcbt~ @"ܜϺӡW»=Q-'LxQ*lgr42'Esh{g|5r+ۏIvQJ)k}xɉG78/Z?՝9kbM:Q@]-  2a&RaИ”7σdRXn+H5s9YwYPӣi)``:<Y+S%ְx ndisZ:Af! (Is\@4̣d!HY;RxD 1@#F8vg1ECャNR5[m~j'L„Yb6 ?%0O!rH/JY TLΤQ49G.=V2}sy`?XCeАTf8ऄe6RXB nT -[jq(!8SY #!R*ЋI\/!~kRH{*()0&4Qc3jjٽ1=+B\ ;'St1.<#pwqOl6C *?QWzI[b3ZmF9J0E=8uawwƷfY%@10;:@!ˇ=c2?2%b+ dUNC8,LO ́nOB-2CY~S@0EeӁ1MZMx_o Z%a`i$%cYeh.kВEɐSKA=}J)d.1:S2+mp;'*j*(ΈVSZWA">_sU]/)ViXµz?l! B4fiHn5v$".s 䪛n f] '%ǜEauDPU^sg`HVy(X`dOLY'r1e@s7_0Yr,PŠ"fn 1A\BOu}FF дZ?$šeHQ acw!_bpH⁒)؞_rm1V'r|'y~|Cv[j9cs4~гlĕ)aV0?W-1hB=:%gnJeI^g]VwjV/ڬEN0d6(C] zTM'|jJ>1T$1H+D}HA\1yfL`x=| .Ihy c,gQBk:[0,ջ 2fEu}יl2Wa`|UYOicZK6vXnv(QTL|v5z,Z{#Bm" xQ~9Ϫ\wOiDF 5qmI#霮(, Oi"9Rv*M2. GŌLsrL:{ :VY1KCڃQ$0W}^RC-lj|cgL!I c,y=KrgRsgNoJOju3|*3R'"k/s駴> k?e>l:z Rk6壬0ͯAp2 @W=;k9.U8,;{r4/}D+~ _Tְb봳N$@yN~fɉPuMݭ`GjZ1jm'4<-{PR_ÕOr{~)a.\Okzq#"j*Ų /v7i 1%6f;Z~B$(p&M.5 f;'^czؒeqp&e{ogV ݬ;ro4Xuh@/y~OnmRrs8Gn-cCbZjS>#2UGb%\!0WW쵚1&e;v䟵6Kfˇv+V,f2ZVWX%GP2㜾o6nTiqR:vH2@qA1%@$9y}|31Q5.?{CUz B!8m \$i$pLE59sWTVP7Z'{=;;ei@O0G@D~ڶ,"!DukP6evg<4 4h%0&*Zߍtl\ Pᐧ=<MPZF;;L_e6nD0>%( ⺄Tj>pCaXv(J@Sy2I>-6r {Rs J$H{ma yQxnn ?Ck3hL:~1L@L1*XHDk@lBX]n6qQHUtd@^~H^i[" $Ml}N P> ː/nVAAj|.)' Zܥ9G228I_{x .s5ـsEh8ͳ@o t˃l+xTnAH=wXR8MqIB9Xfl.m1,7`/THL@٤n5% !2T4eWe<0*K>}jUSmu,?"[H iC Cz흃7&Ӓ^sqW]༢T9;I"sOc(, q0^.E+t"4f,g !&$Xw¾*64vvq> ĥ`NگLգ9Qi,Wd M&By>Nǚ HDį"a|R8vX~ڇbS'Qe)KHYG`gH)">gg)\UQ)q ґ9t]n(8mD w(>3D>BEEY ZJƴp}?3 mmdJɪN "9t,Q7u @3;T .ñ&bMnM͚*MDʭ4C-4!-E#_9\1xvtd2c$u.++IovgC98O'XL+C TOlm´{%ѷ&Ý FG=G }l?4Q(PN6q~X/@,<&2P;NB0 29 V =_o]fw:Pjے-S@$;*J|v̳$.d.j=@]d !сYv];vE?yeG DP7|#HSp l8MNxRĚ,)]ͻP# d "pyLfFk0815^{ٜTs?gfk\vR~e/, ΄itoћ}a DtnS\;p*YDž퇬ZXV>cV-&k#yƿ*R dlJv4[.kYn !!m꘹8)吩 Fٜ)<9wЄr!nUS Yĩf}zl #6!c"2C؍##p~w9Hl p7CMЅZQ[(6E_7ۙ7ھ\[ۮhrD$ )|5ギmd|9☉cHGb-&=sm pKIph0Yn˂ǰ)V;'/.8B+ 4 f݂8-g9>F3zю#jԥ.u0Tc(+ ,(75{Q%zTq40SX]#ҭcjZ!K<3 ,~:"B`km%7+dm90I0&ɀO&rüC<+$hrGD{Re@q c^A=$ƹ-J`^ [G."Ug" r3aM6;'̉#E)V I"1BhL{@N8Fa|6֦ˆզv&L);EZDĝs<5=A\9QhZm (&Y(F f>3D+s+̆M%]9&+R/FhnL1:j9vБC ]Qd=7U={O.(S||lrGhTAh9$[JL{j+ȟ0p1ցݎ_ 9`֪r lZlT帅6EK C8)ռ؃WTrA! IDAT$ S) Kb gmNa0AgjwN,G,?U"<"llp;a@1'l8Q ;rnSMX.B^t-pit8m@zC~hqu2& ? > A+Mɞi@t mT LX_Bme,/U U ~?k2e?19o'7ږ0DR/meY^wV sBuӛxE`Xϰ2ID#zyCFQEPʡ7VsO@l^ (P\V1X }m1ˉ'Ea}mNXae#bg3^ z+M8i{^Q´zHWIuc"\+'fiFܳ<"t'pV A4gV ;hjRgʰH>irnH 'g`Dpo75p:f`-p'MP* ե \ c;00BJ'9zUsYz~I? :äwPt鱅D+A׷[S?z0I*lqILMsG%VyȚ@{I|ZsÚ nMRS{tt%fz}tT'$ T;*hǗ ћrW(~ 9j9t>NdF/n01jX ›g_KͶ(N@-f/ 1o>b!sO0&a"Ɔᓞ}Yl^%5{F5P_ 1Gdit/#%C&L/ Pg(s)$dVjSiNaáQbGS zlTf .i$U51uK2rfnH!") 8q^7q, (~Дdd 0n+kB/'YsC#_g%J搛ۨ&{H 3TȀc)r06B^!HV6bFɜդ:j9g!,//a\=R4'FD5.յѧv(ڥ+z<o9ara$̦3[47 .J 1?rh=ƝwL~8N I!A>1, J#)?Y&9]t o2;@)qmOi4:Gcu"NvHG c. "Π꒨ZW{ ") ƞcYeF;r jx,r`j) h oc"G Kv\{9=d!Jrh>M!ISb Cir|(#CP^5Cz[%3öб?hаND K*_q%84Su#ZAu<ƞ6ÝM4 l>[N˜UvX$aeXGqQ.HՌJm,ݭfj&F"(oZ%j-Ξ{kC/O=7vV?`ONXbG0XFF*v_LS/JW'B7 z"¾hJrDbIQD4EuS _<> xs9 l?P.=VGRKވyv*2Ll|#Jf'rrbGld/b90rx%f[Dl,>z J_Gq_Ya3Cf __n9RĞ_f]DD kK˾ tu C%"NC&2Fj`w܌^^f SB]܀XEYZHk2\ݱ}$_tO 0i/ȹO|%9La( 󔤸r'D!!C8q{jQ5%yD[ZC pK]=$|#%xU@w@0Xda2Mt Oq*Gf v94loa~j1-%kTk0m>N("[M&5𒅀9Gf-Dq+^a4w|g!3vb/ʺ=LYV>1)M *uE&?Ǹ65hdx1+?i)̖`@񏏁{X2>J&3nŜ"$GE#\͇Sbp;BMĿx3Trֈo]p/Ǥ< Fr"_kJ\J+CHC-mtx[m2.>OQA9riʭrUp7gVJv}ؽ~_e9c Lo*j^dW.,5Qfa< rL>ŏ5FsOơqO@n?9=TTe9lG8i=U C"DwK- bq-ǠAY`U`h mE|>({0:RHgtۡ<}eM ͭFHP|']=/Q5Wr@eshӣ r! iz@Myot|K-DǕvZ8\H f|Ͱ87Gy|SܞO @jrb}aV Lch>JàLpe\0em##gECQj!I*4:↼$߶2Bp&JweU>}(>y?sk9 e'Fe#Q @ei^˗"&jXS݈X@dXq{%ƺ-~H="a"gGؔ޼l¨+\eSՠ& h{wwĤ@0;(W?QV7Ԗi*5GEiV m+2D2MsL>Gblg{ 5Ga@4ُW*~KAbSNNGjURWl3`fNJj`)rdn?k+tsXOH̀f,Щ" [%LM,K*hz@.D^M6r 2Co(ZU(?= 0+VI""s5,XbaAS:e?|f舴5Zbӌ5.ГR#*|mm\9mnc &/bZ8& vwS]PKdOĘ ?Jwc.T/ډ'| 8U0q?AHiE:i KR-q3,eGZJ>8P A,GM`2,ԱV4,mʲ*n@&7 ma쯁K…7װӱABeAbEUx=EC-baȧURw >}[A} fwݑQv0}Gs;zrR͐۸BIADg?rXuجBS 1$aznX^Rtmb5F@5{#᩽w 񪬞(^dhI)qK[B1I>v,?a8gy8P?-&":))$8\&XWN&O~'k|y)Y x(g̏_VTMr1Dğ< # J.tCTdEI¿Ӥ\+Qʩ_=֔P?sX'NZuw$ĸFnBJ%$WSW3se `xéA_قT]Gt)>XDR}''tuC̟\0@<'6{)p"nFvDGC*J|VlZ 2>t2d|( 6~ :xh15wCvmn7ںs%NV7Je#2C75<]9+ 8rq%`kS=ffcbM=cW"; @bUi , Ʒ ݸG6Cʧ=RrµgI{`?=@.l/4YEE­`L=d~*%zIPL!1a-#߶%!P{H8La~Sy ;ewt`#.o{cS@GfF(f}m61 6.MSM9d =b3f8-S΁DO3;=f 0\r.Tj'^`v1hdm0foN8} X^Ɂs9 F|"?>I4Eg|8llXe Ylh;NB u?`y<ŁaBsGl xItr9pêѶ8|;Bz/R~wF-,a+%'eH8gKIA$tJ=z4 R$3U3#H~˻فXC4K #HRIA" F?%Hӻƺ5'n`I29ۘ5P5x؅SSM'G /IKqqz Jvo(v.ń.+h?7 'ZQ2.Ph"s"w! =i!j -;n(dREE %90 X¨4ᡢ#dJ;߲C7ZbgIOVx Ԏ3HnbdcMZsPePDyIކ20F$;BpC@Ht1 @#FJG+{XYvҶPf lqU[ {3pkGt{lxzbk3t[RCO?^3k ˂!he"ei$r4 v"M+6,(k QCO5.IL!+:>qLg(ð juGt?>*HW"srО^ C6 )~*KZ64CjBVkS=d`+a)sv*=vc}?_#Z02DD9$9v 62,݉q w?ZhxCa ,ɜ$G.vva`G1\{GX[d ն|d i[v$8rt*KBs%^ B`/`SށP?Z打ۏ"<D5lĦjtI ʧ)czK7PȜ@a3 Z[Ɣ(*Q6*$dd7$T[ Us8?!=`=h9;[UI=q ëL&7cht/@Cv'4QiGwUﺭB#byOFCF5YnmxT;ˍ2)kam/Yxz lXW9xqZVg1)Cj zqQrrB⺍PMwgM+9ǚn_cRh#<P'tC*~P|Xt۝8`.($J]b\ љARu:<70Oyp>c-j0Ck*%WCu-_{D( ϗ2dziHi|L%M:%(S) IU16A2=,0!ig:_ IDAT8\@R,mf67zƓ^[mP7Xj\h`>-].5=nn-x>N yBclCq{Kqb$&,fC?,+Fۧ{{!>Tl6 ]XȴjemW8T1 `dx`pI|6 La$*tۚF[Aiڎ\W`CByLиq@:P ɧU} փJro#.u% 1Fb JX!UNҙˆ3V j=(VtO$?PE&r%cg8ﺝol%3V@<Ѷϕ#"~c8>N(O.QݹhȢA?g`gƭF)Sf?Q퐚]-h'ݔADw]E%GdVO_f{/*ħ qɪd1HBA&.eABmt``(rM*q a5֎lue'р33?cقq [lk6EM3ܘ$Sq 񰆚gZkuO(VqRn±(_KhwqoI$˩Cl|x_ `&se/ݜQxϔ#C=J@i r~Bauyw\k*VM]'g *pƞu<6;/DO>ub<,"ErLcvfEt0h2w8:Aie=9?:yh\ Zl5"TE&#._폦_wM+K{ӗĴr'@xHg ɀqYHFx@4񡝙vʬVÚ[s/u&x!˺8A'ٰB !atäH]Vx^ Ϲ)'I)Z'0G qZO 3:""u\Q {607mTMI8]RP o̟uB5QTLDlYEnH4slnBpAGs6f#.K(=J#u>KNڑh\Kg|b>0Slj'BAЩPu/T;Yk6Pj˟~:βbGYXL*ָƱmn$ :LTbI' 9H#Sa[$mkowbVz+8rPN''{\Jۼ"LUoӴKdߢYRYS˞捦gdۆkR  ΖJLӌvwMp$LMO&(_ؒs ptA:G UɽPs}zrȊ6ӄ~FoHE Wh* *o޺.j8xF6 Us/A?U;+]>["JH#C ߷MDjU/"*U X.BOL3QϋT83 `o7&d2.FYMNbj}r}`9`UsM; J<=U1r+?,B{"Tw(Œ'Գ?WDb r$eŸ`{ߎgg@I4ߒQiꀥDsx_ :()g6 !0t<no*=2N /:8sdyG6"+XfňkC9>ĦgKTT>8T;2ߵLx9-]XWְ;it?=;d 5YE`JJ ZCj~nE9~og`޿f1$~B!Ϯ@/R lal NNнl?,՜y,5b]ɼ1Ѷ1pqra{c ۞ ghO89g"g$e%*M$>cl0zԏq-sH"ia!fvo&f/@F~ɒA̤u⹔"YSq|~. ^@`9aFe@$Njt M9|;_vwӵ͸. sP´}~@ S)꟣ʥ֕8<"a^ mBR-)@ZRXmLE@|ymmK~~ټ er|؎)"p)),7# $SaO y!A#.ͦEk,EGmi'Bk^v֭? O٪%4B DI/3(ِ(ޜ>F PLxCpchb-f!g› ٟ9'QdZܯVkɾC=nv1t[h%|wq6obFwo2mhH\z}޴B9~s~otv~헫M LK߫w(l^ŴذǍ:c}2_\${dQJ |l̯#Ol~[PY]Zad+uF-\5lw3-{VgW9Ź)G 칻ļ5::n'Ҟht0(_ssb7&"IäC_catfGq`zQ ܐ<>8{LP EսlC+@c^ka)9k,Cl>WWDhKd&'QDHq)/:-G2}w0:4tD,[VØ2tL 2ӜIF߾oV}*$ <%:y~w\v*E .Wɸwr3*_'yzfe9c܆JYZaZ`tLݖ`s5;[l4ZlScn˳CGuC]hR):ULv)Hg)/.NYQ|M͇K+ :Y2ߎ:e}?d ?[vvꙨ:Yo=a.;IACm-ݘ?ڶְ([/#]W"u[ T/'hs>#F'Yp_c+3 3KWlNł31i?IژC ar^<$Vn40>ΉB/_v: L<@C-wY2(vX4\QݝG\!OW8eۊ" ĝ> ho,[`m-8X:/lF#:,'Z[5_i4ٙ.R\sNHE/;o.#Ykz^ǚΈўΘoDtȖ2FƭXomy(ڥ7MhC&eq@-X~IZ߅%*Vg"tBB_+dI>Ÿo8lq~nåcuH7'pixOM6⃥T WcF>&[?FGO6A}h!*ȳf`5~A^s!5O)Q&$t_dEIٚaǀg&QȒhQOѐyI&V<P}lwmCB|^D$BN5zn&SX|2k|ۮV2m ^O'q\@n<\zD:@ ',f;3SM?~V븤1X !.ՃC0C2q;) 1LbJR9ųxL>FhHLA8鷀w|8,~(;VfOd>14C{$@~t.np ߜ%3,ot'a!SAUҦ\D>INǀM|;e">Bl|^Lw e~:mzeSN7o[Dt#dU:0~L##\D;lbge DA'k8(X] L73L4@aE`\ //{3DL\D1KrΘY%>mvwo$[ʽ|k&I i~@ב]n T7;G1dmGzGVa XT2)Hȝ8Ոo%ڣ"@ר0MU%y3/m`c4' t'8;peE2%تrjWLSg27Pr0-Ђ^}|lep8vw8[( @^;cWTv20ao:^xt]df3L~|LqJ;b8GX&iǬm^r#]< i_߫-]yanj#4X!WaYaC_#ɮÉ0:C m@ɒd[B`9Kx1 i: gKQ=*wg(=sL7v^}voI2Yz-f^1Y2 Y#i| 7-W@')nClx!b q3.u~CvDxk7aVg;/ܿY*\hx!1Bo.y&Cm؎ ' hx%PW,xSK^aŦY{"t+$LE1ONk֖Ro ķ䮖\ vv"9ïǏ2͸HNVp6cHa^)Iw'%'C.P D҇^Or9|, %,A~%àpt,uOYmxNZxoB|/9KQzsrGʥoOϜ*N(0= @b ӛ|؆`~&voC2D u\*cM旍ƈ$$V}5zI o8AfS!Tl?d܃c=bm J{P鍏jZBV2 8Lu-MID@YBa@ -S(>A#"Ml8Θs[ fCazލ!hO]%ao h.}0^z, RW@tV̺z(ՃAz>Hp2߮ovP u8YscHx5^w"m60\}ĭ ZqӜyO 154(2Af7b]}R7@2}Kw1F0Z~,!&fp UlƫEǑ xPLjظ:{rf>lvjOy\l `{}RB{ I)5TOgy?Ǟ-eUX:gtfmnph)t(ٜP GL_ʫZi#+>X z{C7CQfrAXuqw"-bN(45R ¦|Qp7pj>v&Sʌ)<_\颱#FF&7fU;EI>D`m> ,?=1KԞ0Rzkf}գ-x?Cz8#@F ;m}M_1mz s7l6k!փљx>aTo2;ys#X}b^M6XD6Oʃ1A2D^vANBc<_iK!V&0xiEe=TXivHbIu#`d@2`CLP04`2ѿgh[Q,S.35x|%w[:ފ'[*2kY2"K3 IDAT`b4ÀV3qq'ۓHCޛ$I9?0]1c8Qی~g_ЮS 7B7;SJqIt &XRBpz8ݝ:xQL1@\gݲT e#x> q-C-Pר:ևr89A$3O.~ y@c5ۣ?AifXF--&ڶJ]Rۿ.o;s]d б'^oDߝłs"*#y3{m6j-LQgC=,#Sh&R`3XV ݊L4NF 9w9]WČj;{zX7v00Dž{|4۠!hAeCseV|t cM_TCOmm=3=zZ%3?`u 䯶^? $)d!=h1tvno7wߦX&bIBfDdNZ4=[Ⱐn1;A=ENJOaaӰph`7/ AϮC J7@_=hC'E5שm;,4b}Ŭ^ISܧ5=wL'KW)œAiE( OV "XeIZ{lOcSO#myDMJ<=t4a'QOq\C j`rœ(>LrB1@SҦ8kLkQ Onctf-ĻadG!:XzH Z[o1RΈ)G?]txpu5N\_!{+^(yky2G-9;&1AE=N%HqO Ps#JylW`x#+Aם3Um?,ƞWjw8A p~88^jORJ=ì/ 5cfT()ĞD_R.B}Ǝ3;)}XRy6AG:eFtxg,x6yUȋ9bYT cqd_h'ksg,4ܫ'aj8s}bL oZQ8%n9 H E3 ׆}fd*k^Mפkmw)e"L`9/N5#"^ʐm8ximB3Ga^)#6KS@8@"rfE͊ƚgj..G0netGV+7 =FS"P(a)~4[' $d+4xO/G>]?0_-8xleBwϸ &b%xHg K=\sy 3f!pk"=Kj$f֖ db}s)g}Ŗ00κ{ю e|I J JjuF.T+yR9@>N5PŃ0jj_.{_v{bxD'|'avΗU޿f@@unEBŜx5cl"Vk5aOroӭvu}䬶`H.t"0i $lHf:yֱX,9jv3tFk ڟ3O+833]!Lo?>K470\a\@}X9`XL N~ت;fpkmr/iP;U8EH>uHԍO`ۏ'`EXwBEZv$9g&<UL`gCG^70CF>󜑊6niBFxD}i7LEk~<\{ڻ\bۿ\眾,{Jmk,|e߂z6'aY=3Q5Gvy= bd`Pn_U ZS 9J>h8i]P$T|o(0m} ;m5͝xTkdM~ð{3$&8zԫЦa'd\S'՞͎/-wǜiBQd C ɉtAxtZr}5INb@zt̑>{̺:>9 \@}3$(qp \:k<<)|Zn@Q@BCab@q|yl&`<[ٓ܁9J \Eovε v(RĄ _⁴W3Q ̒hȚ# g$`,*z~Aoo2xyc"]ρ& Ymۇ\$NqH/dŮԒΞ`>.捦E.VU3d7 '|{I|wWi0@+fkz5G۶Kw~N "tڶxlV 'ϯ)="9@=aOvB+_U?HLR4y1&Xؼ Dsw7tb /tmmh.҇1'dudvtnT^`A,bąg%O=Ϡ_HQ5 bwG 7f2|^LՍ:y;#"K.>,!7;6RΓY #R^0m^HW_S8 |bn7n%stnolm6!!  M4zOQ"7E3FOO*9az#}eGbڴFfƦU0r<l<8CFWNwSd ?{>7ꜹG֥~hT)~7@±QN${U$'6Eb}{Y;C8CR7 4'52 ;,Bi^8 NH5@ j.X;=e2 ԽgN氅Hn[2 MF~h0*ׇ~Lf(uFeU,ql-# D"gXIasŅa K?!ȖH G$-uWD˶ Gf%#eyer]Kn31P]F+͌\1tj.Qj&L}ex '>̪TLieʎxoDGŷ -?t:5VN Gfh>Gą,#hDPķNL"L' %Tϊ@nD6/#bvr7{%K\YN~}C^>VT`MaHl2[Y4VWm!MD/H7ϔ>ͣvsI׉aV۪}G)>EN0rZ3Jw9 vr Hƒžs1фC D Va*Y&eaOXա)IMr@'.e_N> 8AT}7@rjC}5j,ȼQCyfJ)5졅M-;bLƞ cvr<*MY1,kO&ǓwDMZ̞Kր-8K^Sм ; CwRBk-1 &&޷Ob:erӏ.)QAXV޾2сQ%tBkރ)Lv`zƂKor }~s4= ͟!_c3՜ GVM w 1gQxZN0l٨tٜ?YI'ع-X^vEDt%aynOYtC@2G7'/}rFnyAz9=c%|xtp#+?92c0/Hؓ3;EŐ *jL{=l׿~'PixjV ob!BRmjŬ?d\ AL#l*M;>.^mt^!n8k_hTy\OdKEB!a%[C29ڗړ'9JLÅJ1(؏q"ܞ!#IkƏ {GтRqwBWY?qp۝uab -v$NS 6:}J/&(j(AeClD*ч w#󆏗ϒFV9gQMы,o=5߷?ԢB>~/ל`$q7Ib._7 g&#MEQل;9WIf[I0qE'a\߰9}-%AԱ uuy$I'd ;[Qz' ɉ|H F 5K']&Gxv֏=* hʈIul_fw"+Y9JōX+-hߨs˔D<8ͨ\fTA;.g؂W=5DddʱD@'#Hrv.EJz &峛lg丨"r٣~ Ev@ؠ䈆Aj Dr~_-tOZ#wLmR8_QDhD} k!mUڼ87-=FgFcYDP5joxkuBޫ-\LvZo:biOtGhnk~'!-.x1F)=y|Lt;u_xgpqvE焰_^B8AG$|F;7J8xa1V+F+r5bn:XAApi[E?ǥ#+>,K{aW9-c0J/k=2Ze9]UE ,Qdt#.OVH[ʅnmB ^G*GG@$Om^>>.Јh[&nfP供`xE&[e״9nGII)kj0ghybj6~>d}fy+J59чW~+"3?ϣdXdt5=#IGٯޕrr(wp`P$X/m߶váU=2XT؆SuBH1m hm`qt}L@cSr̛.*{@͙cHh#鮠_a3@D_NF l|aAh4RCN:4M>{z&yhbnMB1tLu'0$@큏_"K 2+/G 'eaG"C3 ؞ _5iX\  ύ#ӊgf)&d6@DhnUGrl4qR;s0Is⹃a Cl}KH 3.12nƄ^B@sb0) sVX@ceeέ>va3 ?F2xa.Sdw.mӿ)E-zWCjq'Ӓ̣' euvxV:쇙l #_ʂyF@$@6r%C rq9!d|HMrPw+'rdj35"KU#;Ԍ)Ճ Wu?5"t+1^6?`S"s@o7.6}g3Q/n&:Jޱs]C TόUv@;;ym=BmI[]hcEs(w1>^CAbv2oXIga O*7ѝ?:ˮf IDATx&c%WvYGૻD]YUO{h~U~=&Xk+,yJ2TbN|p# ࡈ@t>#vpKo0"B0K94ZE6  >(I^(:'깂B9=j, r[w4>=7byg@Àl1"]ܶ]Y)m5A>W3gܚj%^<,xXԈ~8'ՔmqaB6OHY? ~<BWD#gmuNrߪ%x)dO:jr}ۉC5:㥹6%ǔn!c۱oU]kDf81f>_ 6>Ew IcF-F#t`3og9O'qw?*8.E3m"pfۉ[2`| Ƚ&>$/6c'a; 7'bIr~?`ѡiN`dTp." I zz;u8Fd<=@m b P1>z>@[W)B7L[f6; GK AtNiof iD9lS"ϲ~LH_2P!"_MS@lT˶r][w" ""iGk.BbWMՓ3k ^';u-*?b1qab^=Æx ?7*l<+pv"mKV]U\6HSD-lGJiїq' QXԏ),Pa޸)إE0s!% QeK5 1S4'X5H_L;lݠ6H^0=U&Mta$C~)ް_ l>JÜ6LnYcr^uNF~jihINͻ7c>e )=fN)r:^[wrHZ~n& R|>忲^+sͬp߼))͟*1"9۶.8W `d5`V^Al侗DĢvSH?19lv`Qv kM4q?>2Z~@q+M#1Bޯnѿ 'չ C5v5e9XT; [k׋Hh'ڕ=ibÚk`|SSJcAg֮ BmED֑=؉#M-$9t6کJN*m)s:v0gu$|hM.%3rFq lM*x8k(e/DkU{fKxyz6]p+u[c݅2/&uofSkl^-z8L^1N;c(Vw:43,|} 7=r8<8 .aodk+I@2k2'㰶Ւ#3}-]". g17p`S-pO1dnEV}DD>oq39Nԃ=`a"iɄ?{@y%d" 0⋴<KM $DThM@SWߢ#jUc 8'H)5䥥v~|g-aZ=c2oH> 5Aà+Jߩ"\ M ң=2 BEgFrս3toEY5.*EEzaF>Np:Ajb |l#̑S'RI4v*|w֌@w2771o|)'I0GH6f\>(kd/S[ 4YOJ8B!x/k5uRqam8_xQR7g%'8i:#;u}+ttvo rn>ӝMʵ 8>8n zbOUop?>?TyxP40'D2 {uDAvɘ>&0Zi$,IjoO9:/"3&~!#y:H tPt!X7OP_&N?L=d˖h@"U7^BBXӐm?wM䝚Z~rZNITSX} m{mc3 د: 3'E|^I\,Df$6/^0B$£$DcϦGtno`]9iOԢgzHY(*~|TMs"؋.ۍdo=,?wxrdOTO0YOF坥7@鹨4C>@cd·,jԀ Rg Q3 )MK<$0Ș=r@s?L] %Ss2:ck:O Ԥ ]m7"*?޴|%S/Bè~^K0QҫYn՝OTqk")Bh%6V*2>"Rub,[܀dq33oTc OxW*2&Zfta@iƸ폿KOԒ)ʠdcG` PVpp~djT egd7 4K`0Q#"]->I~d㍜ԭwUԘ%K}#+̎ott? /6D5U\Q~A6䣼2bwPZT"y[1g0fGEZ# AKvnH^<1 /V\\Be߷}߆.UK],2Mjl5`Xq֧,`prVG 7|K#%Ɂ_WR0ѓǕX:"}ac}Bzkz o c0baIeP!}JkS7#tJFCJS}h!j=>Uk)(W{eX"Ld%<[*S TO>4H.W)/]hSOuW >ZL:^.nTFe6k˶>#V)u6F?#<:HiLd3 tu1oP=i6t#:C+u2o]27?7+@d)31VG%ILGl-?Dމ"a0n,T']jgө$B RxdɚN(8ɭae+X3UH/In : ZH-ۆ̥r { m;G ٩>[1Bv a ThN*?8lHJRt!f*b}V/^$v)W/YW43a,?f"M|r˥ 7s.)G^ؚ-6Rx44#Pӫ90tC !d R| OlU!!qBOf0(jrچ/{ pRphBě[Q*?Z"aXYB8(~T<wYZ;Xde]a{Lz9Rf] p+5d)=6l\6`8ǭWU7 q7(Ң\NLW`))8*#^\dyi NX^ v}sMr%v/SD=AݏO,9ll[rwBmY\KZN`eBz阒&3wcl~.Hrmm؍=Di`on_r:؟Ttٞr9123߫+L$R?p(̌Fx? p^oˁ̞33D,/ПF0Zɶ8d8h,~ۼbn0ڍ,_?7; {t 5nǘxnz)pk`ၿ,"r>L4xM4@ J8[3r+3c֓U; bU=kFHP 2\_-`H"ٮ_nJBv`x*=W|N@mn\ Kݽx Eܗh cMS!nIT7C tJUiu}CKh7 iX6ˑY\`@)=Yؙҝ] Ӣ*0g"u c5Ҟ_g1_K oc4;^-"FG$g<,zlgsűƴ>R)XM&p]5GP|pDFnbuV 0ռq:Sh@Ӂu10NGJ%"8AD` # RHL!I1ָ(r-w,5+4,3y% qVP?x`Q_O]kћ Na0="Cl =3Z&t1R|#v&^%bj\r4X$O,,;b\ԝ =[m)p}Xjod3X:`'݃{Ƨy,'kN]-XHf~Zj.XfQzߜB4F.b֛/ /s_ ?rOKuugF~$'zlΗR.!_C}>.g3!u,>v%FжH{ąj@ChFyz3=ۼB%4pŠ107A0`<$nD>8 9DC=7R,k,׊,$&i70C{ZԚgVў x킞Iлpa(S{x9^OlȍGӔI_ bׁ$=%!4R$6O@ gpB0 6Jyv|`vt:wŕ `-$)>Z;+FeǝUg""".f Q?Dr9# _hL=rnf"NԲ^R߸goMbz=NQq邏ieJTzd\LZzh /D8&9b$Nn,ALh;euf,:!AfyP|6c /mNaΔލYd4 tr p_j ^U0 qK:Z[?x\+ יWN%gFR;>r)wUiux7zs`Brوe+;b F;Z&#D&4׆eQs:n1zζ5Na jXhSpA ҭC WIG?yY$.@myِ0fYL5 a/}oX8%.с?MȻ.EKS{s`rғȬ_ _ $YvR~I2s9lS`#YF a >;>@a`McN'm Jv;Y ct߯Y@^p%nn6t^ \w?6I%K4!3mFȂ3݂֡sE9a'烶C۷-ǶpzXqHY@#r PMfPSȍ}Cɰ>tv¼ :fR]7n^d4o-d?HiWCHis=n)C 0-%jmDEB$?q"Ǟ4g IDAT~GqvK`} tgܭ?'1t? <,?3NI i{A^фG=c)%Z"E9ڜP @q g1Ch4Iw!lR@82{pL|J'r?QAzƽ*nŜ45CtJ _?HhR~.?B^bnbO \s:?FLi"LTti'?1 hxg fF-o‹^^CRn,m Q {ϔKW/G8$ kϨW>DVRp3XKp @W|݈B [٘CuS~} Xx2ɟ 273eRm_ ӌS+cAvSLQRhl IP59a?0qۊ<"#8y0(rCk>xLw4SѵcZLs)VZ |;,LBy61gZ}oedi@Y]ԕē?[Iς ~v-?637-t!름x/ɿdU]s]y_oBR$p[@x/BCI&11 IlDp),R$Y?YbU iT!աP9jzqܥ]1vB;)1Szڙq "X>7(Twpz6aop"o-%OqjlL%2 =c [Y|wy eTܵeU_|4OG;k7M+sYm  C(Bw,b c%vwai-ʜ"pTP64PLpG1trE|8(H)oq.@+f{Ԝcb?|ojp)E? =y x{,a˅l,R&}MQ D۰z`g J`7Lub] >l3sx~! ^tOS9||BONlc it & M&ѓ-r;~~CLC 1dE`Izz`F>>]R TOOSFu(&pT-vWܫ(pɍe&&{YsòDZS>S];)BޒM|/~HHDHQCYJ}BTlEdG[8*%vGN?J_I8?Qog"Fpx]?EDHzNKxfclz-ooZ.›diW _RpqvQq瑳L"_ ] l3P`Ď3I"^L*% %RDa`Вokֿ?!$ZL%αbIr~^پE[)9\8bPN@pAHodNF';Otu`r A`([t'{90:Äpdw=$.qPSĩ>HP[a*nџ˸]h~$_E~9XXUþ1[BcP1=;-:ӗWŁ!yޤ8̚oxQ=m!^nufK#qA0Dk۔Q-T6jaP;/ʖRthK2NՁPd穝 u Cm|5R=/"o2P&XJyMqq2$=ɲ-WϢ A5^k PG: قAwK|)߷8kg>@`lx'[N0 jy6|h[rLUYԪ#:~Gy֧ ?!ʓcjv!hxrHڒ?# E>}=iXB|J;"[]*O]S%Yx))cDrFq-Y,)ʹu.D,Cni}$]XH2決)!*4jW!4#-k*}8b-Pغ1KWpO8A+1I]ڳ.})1aH-9=M34i4Q7}L kFn<<~l Gl]zC?źNd9aBqz!?- KxL+>h#%`XF(= z8_]qVFD@ٳBHVArCy61N(LGJ\r3IM荶sp0Cdc*VT`TI:qq{4鉴/V%&Z;+ۥ0op!P.02fjb@V>Ҡ;0ѸB.ނ|':1S#z:R!rx h;{0&.~!SItPOemuk֧AO+=1.Z}ȷTfu{pPB593 $pu&ȓ C-e@a4,i9dsjN2߸_lCc]B3{bۤݙT۱@v-@bڐCIw}3Ϻإ# Fwgh4uɮDEwtl^ nE/l#oR=;JWpl \sH}@A ~l [0w'i过M"bA+-GI4 AzlI8\q;J&xHuNCݧVI8E' + kׇBRe U^F L );QdXYS}+w 8EC܀ag 3ܛXjb=NwW視UC64^vZI;&N6p"7s3Ft~`y:^Au=Mkb*L r,u9$ʋf5R1H9<&φ@T'O}O3o$MnڻcE.33ضL@:c/uy-I~%#e42i.;iOuS0mMIc0ݘ}󪼿О^]J6yK W*xHD#\&Rހt\mh@"7FK8G+U6|⦊YCܑi6HI|;;\FVQ$Ga9(i4ZK,N茹jجn\+5Y g9<,7):]2*J٩Pg@:T)H]LBfPSCכH|01A(*۩GLl 0HoD>לAbAҠ` Ҵ)ril7뾿YAi\ZuU>>@CGq:a[A]ѝHMh_%ek;V&.NNz%_GT&jxH,$i.u;8{7V"sqC% Vv|I[dctT}mrR uH.ݓ.wڟCf0~U8 /sS=<$2]Y`(y1غrP\Ȳ03Ŋmau~_8GzԷ:.$qA ƛ?: d5 HpY3ݧp}Hoj'c5Gm:o{=] |KQ2h׍~[Bmלm' u?l@~飊gI0 J%@^ ozmO稅-!jt5va*`u]F{[7&:.XN \G\DJNײ6ա`:x`g! Hq[sZ%7X3!kPǞ,S7 IT; Vh{9̝&D:t'` uSrwORu~3Uw/E3o?P4잶&{Mv<O[߂" 4CO"6uA/C\NrMa͠EwxmW&ףҁcWnWi36#fl[:oQv)LjEnIIJ ~}X=Yrcw9שq*ydob*э:si6K4pݑCğ\0nӣxVg0M8&!~)GǨYU L#fdy$~T(R ɀ$/쭞sW,&7#piڏ5:](&{N{3[i2|D߉+Wۿ`;~l=:}-+jƿ 4k0g2أE,QstrV yCB.0uh{qu1@:\((Fm@qIN7_zx/W lC']!=qX!,JR[ S`77|bCc 8x6͏/dc/%Iƒ$(:M9a,_`-gyА%w׳2Qih b _3|& P8/Et}x1HP.yPO;NaS}^Vq'DV s+=]$m$;axύYm71}vl|^),VV=A63!Vpe ~}M7?oHPӟyy9!7]6EџԪʏ~=MN`ŌKLEF˧tCDYg[fhX.8Ky1+ʡm?Ӓ".I'RuZ >i"fvY.!2m툙~' T˺֯ g G0*rw54Lq fI r ܉ ѕGW F(?;LC;=V2XPm/GC bMNf+^hm{uCSXܖhW!ǯ`N-Wc4}8q+HԍOޙ^~WHο}e; `^_|ËgwXI[!Z`XXZN Yǐvޮ:ty{(ԟz.ӈ#+HSed 2`#&|v5Qq4~ c[`Gzw>u!DG ^V.MS ;˧JI,Lik5yϪTSa5ұQ%`fp'EBz~^*ځ;(|Ȋ>a+̊яFWn'WZZ~Pz YfJ$R9 NXRjƗ_|W_  ߰>^zn^N))s9C9aRg^:yCj^G,cAGW,.+urre*a#|a~i;<޹7YƤumzW 1[LjL3ւ4B-UXht'3FW5G$; 0yqABlktNeC',bO YVVMH5 '`.] Wedz-!ðN9^ʚ{5xɳ i/t79C@|kgDn r &idao؁O)A_ m$j2]C@RVWKÕr 8rwYo`ّ}fI!|`YFwu: گܥ Q#lw9{~r۴ݛh<痒F%DdG_7??)i]#qvhɰb)VP]ᘲo-C30I[F;vhFc9-`-@22)٪Z\!1%9 9, w:{jwlKQC;;=fի7bܘB/.OCJ>7U= ͝o9rm$ Vڪr3bv1Aقkfz"NW%k1lvcH:)2l[1X| /Fu]y6 QB5Wx㴻Cc=X$͝NQyK̔ Tf3+ ӿ0A;c71{8q%%rMhF!=y3'~HsuF7늓af+Ls]) Pᧄ)uma~$=/ ?)? z-`s$cV22C|*s)hv#̵YK/uS[z&3s0P0o--_-K'Fqv|ndEɀ鞃^kjؑO\76N_s?ҋ8*ICLDr^Om5sdZ0>]N^ۉb=.O;poxq:Ep#N玓URtƴ+^e7چ~܍@HK:%wH(tβ(&R.0+4 (J+K_ _D0 ~wwb=l}wahB芒%W* 1d[={$( 5=F%L5|VO!MVDξE^ށvjv'v6-.I$F$~q zǓ4PyJ )4De8*#r$ / Geą"=h%<:cN*ncyM%(&r4jn(# /TȽR-)Ly9bJD^0 60ZrH>Cq= {G){D2FJΎ,B'5}/vWAq䡦tr4_zU9EE3u]"BD!jdwH͢^3(otctr`-<$K,0!87a]\ثi,BE"J=8/%AY!D, By-P$c-#]j\1$m/QScf~c R\-2XLK=֚/:,bm(}{a޼($AOqSMoɛ-m zXgej|*Aoo4Ղ|JD{`d=;w@F d'Y.I9 yPEPuV<෮ ANyUᷨW"v<`}ArK>^."5'OrΚ{% P"C@.Cq\OW(Sa ;F<-R.WF|5fr|V]d-|I%(6᳽fW/dnԙIH lsF햑gDzrp[o("@D]@(7D9KiM?~濂sǷ6F+Z06`%!BIInU"8É;vZ6|@\0s: ܡd)Y#&\r-_zB+wWīəJ=q9B10+Տ_Ar*b|C:/}L\酩7V8ᮃ발1ҢrnáaN>qdaäsq]Tc-f&Bpfd5K{KT7"&b"JmGGNXRڨWDQ-:dA)ܙϒ#\Uz5^Ԃ왩Ӏszr:3W?QY>6 g_ נm+?cHʑ.=h0{#]>/BʤGոj^ *CI8df$̟@2e ?㵌Ƣ҇pOӓP# 0_id%;;ӵ\^,a"UToDH}̆zx\5-QL<3*Z^'2 а2UMblEGabrv%p/GjK!=*n;hC=?rFk}xf rM^6\(9&f3 9).߷}uT +t[c3odT? Xe0:"{<}5δSOtvOrP*ӍggzvwTf7g(!i-TQ9ɂ߭'fN#eJ`> zqMd| cV(x/Kх5CUoK1pa)"2Y` #ΚbYJ1]*3"AxɁZ!:cZ9fI2%c0k4Rj͢󐾮az)*a"ivn/w W%)[ |;Tw2..!`睶 kso=}/M8v(RPx<|C  ?sCGpE%.]Su1aw[3"5T^3VCXbll?XO.ĝ?]w($csmɧPxb0`Ck '!ܐ?aH53(Ysʹ:OXvU.ѫ)$Mjf(ɞMF`ݬ~hoMйvF[HdrЩ˳|]n NFӣ QT' w _R^I/=I^EjH! 1ܑt8q|ȕnP˩91eQ,f5Du)XbWQb`nYS|BeY; +z+:%fG ܐ/#ڙ;E^*֟pyp^؉4 J= [t^+("9 EbaDO,FWX!؁mp{>^RE+B^"LliT^ddw`l D|Kw#CM{wNK3 6ame7@Ub0?A/6G=vZR#< ,"KWdoH@59@xHI|/h6zmA=sG$FXejlmk>!OR:Y}*eH3<3<lYEMUr9Z:Msѕi6Ʌ*ۍ|NMNֺz=lzlDe-2F5uyYIbS C3 *s5j1 g&&92 .]5 @w} V8vMd 1@寰zzƳa8Pޏ_,wtaoD>לA󡪶_S}^|\ ;o ׅ޿BeZmLr||8hmt":rQ'P ?B+Qh_N"~%Őf w >DWƷ 8biۊ=ΒV^>I;v8:bƱY=7k.+(y&'uP"=i0xG %0(!׷6@CL5IH_'bc!Qɱ쬠MB8 r! yn>ȷ.I$GV>zr^?&] 9K[7ZK54CqF]i0u&#k&hثS[XM#ȹ\q<@#|o+>@^~\, QUD;uiYqh$ݱ~O{{N., پRx$OH>_Ge@*ߖr ^h56cy7{ͭ_6~Z}f.fju)O[7S{,BsUcM( 12i7kɁ͌; z`/D'jV5d_NCT4}A(0P A$>/!R{O̝r'@j,Yb|^`С'[q>WA>8Ȁ:{ K0-MD*;7k{BJ۟k/ZZ:X$zXhnK'PFgGĹ7~~~֩ ?dnK/]t7Jq)䑴9??c\*6ַxn(隗YAo}a |BHV?(MdFV;azRu'o}~?|MI{#+Q~F>IVvT6NӵhiN)CuR._J¬=:T㠰GcI+qW̎+*m3@x ЩngGٚks-+4ɣA&֌F%6|Z7M#A(jmU讣H`k}ilYAdGMO7?_t )JV-gԐC'- D@zNQOΝ$GԭDߘjk=vaZܽ8*M_fd)xgx˃s`8I_5l b쐺umH]2mq!\K})D?׮@=sMcŨ75򚙾{k6f1tO% q䲹TCԾ*ï)ocZdb.L3!3gоџ?ӌYEW3Ch׹5Otsc,K׾XĀ}1^6|> u0+=Ie&:iIbN]zF+ hnnj1,ibG@2Ԭ~V޾NW q50K !vH tX%ˀLcrNS},?XUw~?4^biF mT 3*+~L'D\7t@GA kȰCގ:w:Y2O/`k&" LN/tQϢ7^3;H%Ig$QpwB9'#AΎ@ntms>]m[[y fMy 'A]!Wu Lt,4}Oڰ3ۓ0BAp3cݿ(]x82ԎYN4 {\NCE{9b/^ Ð?zR>(jי }p$W7ڛ A1@d ھ핇SKfFٲu(cjY/ğ#LDww{0rk>4è3CZʧmu!e_ NᲞ\Ng̹^h?̭Sּ֜r|4r賡AX> -h0sR&I4kcQsmQns yA[EPx)qՇ2ݐޙBX*rCwXNH ֝t;] hKlnn} zR@}32zz)L!rujAVhw伃s;|}~m zd{}EP쨪T+z; z! $?kS86I|RbF$=?[-&.PwyKF(RsW]WI w(`zxXhR &>Dڼn\.H}_5DUt${}T ?> HOWw(+٩_Tț:~%h+ۣR,qtmEOJ6;^M `l߁Wo6c.S +=4k"q\7ճqmb!.қRa:})hhoل>ʭ{L6K/oNDV76N_?#HG{͵=+ĮqĢۘ ,% ˍ6, v8KٵN:l(=mU2˺z(ۣ Пkdu1 jwϽv "X)zt@Omъ:au![ŪPs"M+UO˜OO<ؿ0?2` z^om!$]Xb3&0J.*>]W֊ n StÓ/D IDATw~/uS&:\=u 3űRɪq,tE-ٔ PЪ_֠Ә[V4'ي|33N++ԟr%rΡOCYL;=ÎC;?:!]iW,a&I2 ie 'Ҕd') vk`>]UBW 7LBBS|P|\ڊ]#W5i3T#%fN6Z߻Vܫ7l~^3£f4+ zQy8 02#nCdS2f4T&c"1ٝxhI;GXAzِ[RS8 ʣB왚(յdɷ(z~0z1)(unH˼/*~^ij9M7 -H]aIk Nfq}!Iޙ* 8GFSx6C;*$XЁ%݌>Yڪ<%GT=7&3O6J@P0`H>k:+d KTރ$Jcl[ӫe;J- n߶Fd˩c9LszJ휾͌c.nߎcQ3"bo|L0JܾmaTvc5 ,-pJı۪dZDU,5U (N{Lhu3ѵk!- ifL@3tj|[a8z8r֗! 4B6b"`c;mR аpZkּ"_)Hy0C0OQc Y _[vDznJ{ :_: ؃A ڞ|p+ *uL0k^ѓS,|W PN֓nI il,ϼW>U0 i~QgĒ=>Z$=ـz!6Mp{>#OqS5.Â_]#*u{OXn+4Y5.rKX5vsSpw1uk: Am.+j`<_) / Jkr ∙ ,xZJ3``@lr#;^G}(ƐO}.tXY[b9HuU{98ӡG['m^nD@Bң] jS Ewg0 KQ#1u,J z?pġ\'me@3=9WOsށJk Ŝ;lnJҺ<%[=-)y?o/E7ԋgA" ʹp>?,^e؊ֱ-zGEqgզaR<0`3cCA{s@E%@ ,5 G@ʏ%7&0\v@[7 [Y\X/Ic5⡏ տ:n}{Ԇl 3P)UuJj2;%_E0ǵ3i^j3Bg=,͠n縬'(VعTRH.gzb'3aRSHmA?@o`*DE'p% 윞_>IH+w7RS)j J]@^%ȿiy:TDۊ}$'ݺ^v{OTEGE}D'&ROe^f,N˱)^ mXY`MI2MV!lC$Cye4'1È{enG)x zHu_+D"gCp,?I;X)T?Țz#d:~\\$ [ygԋȖyh A )'NK4nZR$ZL:)W7ڌ8R<;=f|D"a[Ж5=>:OK%ƴ"d.S \:٢ ֎x 7=GAWPU3>ICDABC7E?\Opu7;.9((X5H6-< @̟^^@!e;m;c'D2.v ź9XS1؈7 xo{)J_o00do6|knnQ,|UԼqb_ݑ"ſBԷ62I_;cL?;n_ueV.:ߡ?+*UGwFރ&(-R16" ָo4 J[PWFTw۪'t,pD]+`>J`j``kHB[Gݏ[yKZ Q俙;9]⽠ J_I&7PscA p%nXI\AK`w.|ykt)_ +6Ɩz[M T 1[S)Ƌr0z>k周SILo 1JrXUsÙ ; xcAQwu6[aY2&3~N"De톲MTWMaϤ[?ϺrȾz `CE!ӽuU3SPlF}SݎۜÙ\H.|j?`w۶=cr$"\A`MAAgn]Db0M`LI8(cG7 4"o?YO#׉pr;<1uZ *}vשs?KSi 䮹%hc#`=rz򭜡,F=+MW='@_UIśf6[J{(Ԧ#`f^?#W㣡duD[S]!R ï~]ʇ2vb_rJꐘڜh ے*G:f"餩DOuAW=x"z] g!vtcvCh?;INnB@@%Rg ++t,ds<1;Sss.Bʚk19ڋ=rɴ8Mډ:^sA.>˨y:Z7L|3sCn!-aoTITur֣'r n4|:;xJZ&7|LW\O<ԎW3iM&pLSN#m._J¬'GK!),R E_KMm9N#p ݉!mpfٙEqQpv2-K>t`a*yJ%? b-<#8c|rϫ]ǺSDяg+KB-,>{쑉X߸rNoHT+!p#\Ч`< f >pmKo-ZEvLf& U1:O[Sdw̯EF}?jm篞A8)yxdab!⛠ReՖnڂ{%*cyf4 X(yf KfQyb6Rk> HÈZ@nA0 ̭FG',â@|ʧu {% _d * _ 9g WBP*K !&1{y +L@gg)7,`=Y,@/tDsVA][n8 WqDqcfmȧd9rctk{<93,8@I8OCCA0>J½QςCW^=wsY2#N}أ˞ G? W^=YOam MJ4Ts>GB-2tvDnO\c6c,A\S @ ],~㉍WM$^&V ج٧ȡ,P \BYEszLi^On =)cQWgSs5IZO 3^X셝WIFˀ႞#n3# nTvLkw'f""܃E¤f5VuԖΖxx=Ѧ1dY>b 'aC5u rC b=oχaODy`&i V]$"Է Pj^Rh(D횹 X2RvKFR @(R Pg|}n@4bocW ®CSw@I|ACT>1:X3b*i3LWpY{%r%Y's+D5I%8[=8Fy~ӻjN ܃Ozr;Ͳnt1v^n3 +J^@ЩO#Zu˴N2w="on_sKkMűmZY.z!'QdYݐ&W31"$gɥOU{74ʯ~Fuk됪?,?LFNjfgO z#&C_IqG]9Ww4ۗ6+hXOAY/=Iv^ߓкcJ+[E~6vj^'٢_xgo6#CCZASy473ɭW}K<Oӈ6gszb$cS|ڻ.QC{ ~|m t!Kz+u1Dd̪GK}T?,/c;z;,/AAh($# (kL9Jj(u6D inJhH=nآ1 fĂUnJ|n0"킞*cGcOhHaOG߾={M[}b_ qoS+V_oKG9A֍[xR&9sY[ OĭZ(%I6|f)xUQ9Ec Y,`lF]ca?hԎNBXH|o2 Wh3r,>Cdh z:ve\Jef݇C7qπZGlUD2{qBGnm[u#G/5o3a{=_C)+v?Vܓܷe2OrFPRȢSF0F|EO: -00#4E?x7Gv% Znze}]G` (t4iE~W/#Y`j\ {&Χ63k9^5;UO bIDATM'0'SZX $}xqɩlFaw#M .f/*j3Xk^~$'.׭%ijHOc5 &Mz'x>-AC=jNsƗ-soi4[Q?\h}~8\?L 9d_w'EMk3i$ըBaRzܤJvӍ[a?^ScW37_#xH0$qi?׉>C4E+)YX7 ƽ||rRNGCVEZOc:^VpT,)zEPz+H /Ҍ!Z~Iǿ=v>2\=|Xy Xn0[Gj L>4&ruk =VOO":vfE>a:4\VLUyikl8@.]RZ %.HZ#`(Ɛ?6s o7 ZF\~MT{ ~BAg}Gv]>XQE((Ԁٺד㠰uzSͪ!ti0x}ߐ) 4kIt;/yh5_ Px ř>O0zOВ|㼹Ru )o':'ٝ׮4Mrs_4tzY;n]dsaax?Kuy2@J>n}{ԺTz=|7jƲD삿`< =(/%ޚɾ L*wrfgAAɇ2M>VHsĿCϧGr'#%ڗ){iH~bGN8W'aXt.ֿbo3Rыr{\O>%>9iؐyHlFh@S/, G@@$& ؔB6K_A Pց$'YE,4!?5إܼ+ P+.q€pm7B(^{sfIPb1N.ﳂOyԫ̒^1ܐ~z mw,7(oHFHgB0e=+ wFWzgj!"K9z5,ݩnt}Xܐ&3s}LPtӑ*"+ ,>DFt93as1!4 LLhy,fdjd 2=,?i#_*k=`:IIC4AO~0e.x{2Ԩ5iɰ:@~!W~S66ˤpd9RsۙBɯrEn[3:Hbd/x\yGd_Q.nU^IuF/M I#_gcy>=ϳpi^-ѭw+)^ftX!鼐l,_)g'~' tSFaFʼnj8D>8_ `]xS){n0 5YI.*yoL ؈F 1Kv^GR\"OrFTve"r ԕ#aH\_ uUZc70 %LBYPaL2٬yUٴթĈxU\WO$"R֍H:n|i#Ӆ}oD>g]e`ޒ(谰ӴvhA.nx `K`4̄(_pyQU: $ M׍DbI!z| vƣq4-2Cܞa?Wxo S@Z|$o=UUDWK,Dh:Djlbr&Wĵ)eF /ԯr}1|llD"Wm7+i.]?WX6tЄt #ddGLƠ Ț :ujɞ#| :є{0J,Zn~{_|'\[ ntQ<c 0HOse 7VԖLO"zBGuGN% >|$l]0ui!u% Èrp_AD AJ}gM'+͑~OVsV>7\&v#6IKMmo=moGc\h$ܯw pؾdh}cu T₲U=Y .o[ [8w|j|Wu`OZ>],,guBL:x5!9֭RﲧS ?9qۗX""\n >&1, -?d]ɢ* F0 [xzTmzbo^n%vIu(+tpHў(YD yHOZD|qn62N3791ݯ'=8d_R͎{]G.Q *S*D̜? %fpH%$|W]`! Ğ~w9Pr;?PhfDe35K]󇱚 qa%*?mx OC Yv(1>́]*$Zc|ogLrnZ ?p&uYJc T>d`uџtQ's">.iCI[զJX} Fn7g9FCC`ij.y=qxe:ߌ&~c#Æd% fk$ǿ# LZ"Ԙfz'$yƏy!fMoC puDƎfّf})am> C6ā9k wP~y-4f\ ;k<`o;X qb v@0M.jS&Ne»sWّ]أ{%x¿w̐xY~ m뗏U2b)n]Gou ^>feBg08_5Ƚpi^oD^$4ewu?ȧX0Q5qoA?+V}`*ɱ'h%0 NaDNwjDY19 m>gՆɻѕp"އth6Dv(zAC)]ʧ`%bU .A!Y?1*A, <*V%]b₞\a,Y0xp{A/^}rCZ!.=D+ W 5%%O֓[Z]PܷJ>2Џ?*,4psM>Bȿe /v Pk|^aHy^0Y NfW<'6^5u>%1u(>X3d)+"=cs\*7n3L SeV.zR1׫^KAݚeT ߘyDX!4;xozNODqד+^-WҌMф w䉄{0#^4{%'n\:HOz ڽiW'C59~fHx;B6S])WM29DَPY@ռ>D϶:at2. Q^0lFB?gHTPmIkF]cvkE_ 1=!shd(0:мBOs WfJz Y7Z#7ݩ'Ewc>sew AzFT'}ۗTs}}U\NH2jz Tuƃzz^Ǿbr릠ϵm M$tGah{h6 \[I=ȘO3=hv"bjhL!`@7Gg|n5é:7Sr(v|YC; -ܘk!-ќg $>)/U++'<}u,EƂY}dJ+T{ٷ諸̔G3Lhדk;׍M2@n}aOzGXй,XLE_";o,g F`o8vh">"2~y3g'3(/xsKdAl_n4Gn ulѲh~XO\V,*5Jrv5";֓˶y=(s9} t Q;xJUHGdӶS$]-NJ.nS'{?GG= uGn+Y8l͇>[Pfp"`uG[jQr^kӽoғ9+.)zVbv14v@0YNv熣S0Q|ΟLsc`O):zɭ0~@rf1\P&bt@֒ S<jg11jb`? 7+z +)5J ᑙE|MOBsb٩UwHz;eh/gFQϰ2KFCӲpȄbTQ9>cV7Uh:' 3nR̪PͶd-p@_0ojvqZq#`9G(kxtϼҪr8 5͡u2;nf%OUxc1j6MӶÏ__{hm%UJ!LP2\ӂg:)-3!E PWYn:5[jOAHu[`j:ONGد DOЏM0ueG@ 8d2cƌ8;_[`@5Md $'u)pSpN}}櫗[nO::CH7166. IY;7wZE@ ]}}3gH$q{PЩS-D_bd}\8 p \m=),ahLX1 '8=[Wۚk_).a_Z ڽI؅g^@lߊ >&=ot}wo ;v˜1]6x\ (.@tgΜy &X[[Xu{z?}l2,{D9s̙'LO5mڴ3gΌ?^z24[Dk$J`8`8*!D8 hʕx#Ķk괙f'"/[%ݏ 8sy\¤jjuumld\5CC#@ >Ϝ9#mtXӧ>}zҤI-GQ1{$Z=&4BN=Yw(  @#h@355 `dlV?G~_t'{wM_@ HQQQ1cFnݤXsH-YlKǨu`B0gI9uj~WCp#,Q gZ0Vx4Bq[;i%Xv e ?%>NKŭP/\.RhOttttt.466nY,"V L=fle|ڻ%./5oR + dtܸdf _{6_%<%k~k^ϩUпPohptWHV|K58Eb4Kޘ2"JTerd `.Ȁgͮl͈ƌ߻wٳ'׮,{Y>?h)[}Z"D"Jnz F' ;﫮Σ5 zF qi.I8hquʟNZJ\?O;]/ғ'21c+iwsssP^>@("ޣKnՠ@`juhaIQ ˕Ccdi OʾEF* Sܲy홳ڗ ]TWWæM@H|K*~ Jсԓ7֛7C*%Lf$I6 ( {l)a:(^#ÿ?wy79{.\X]͞4qak-,,>۷m_Ci}:$3Sa4&BCv$Á Ue> iS9X˫O~A^XXom#$$/@ ٖͤ Wlch VKڌP Jk~D9ER(Z";6` @Ȥs*ʟңe&~O+7PըΩhpy999YZvK5jEGNLL5j@UUw|knaYH}]Ӻ@89CDD JM n!(8q c@0, -qԱH6.VؘϞ|7x L&] @&S==z{@&XX[[3!`Dej:;K9D DW%/U&2k,h'u!QMSCsF?| -f`̹F97-|f2DD٩hP[[mxw_ZKSvص|E ɧ$23&<7Q蚴Н%%UN"/@|6|"0Zއ@ 427Eו*>4ivƢNC4 T@ T,.r"'D3u$@ B׵DqhlLRt9m# !u>)4`Bh#tK)(@ >9:4P:YDHA|"贌E!E ħF̉"#E D혥(@  :'*WA'm襞h='2%fi%OI,@ A"Y^֟ @ PND[Em>ޘ@ mTP |h_wn[D5-&o$E 8(mmMщWE6DŽBaiiX&EϞn*+ITvٛJ _UYG}_(_#(((((---UPD";z;v߿РAJ7555<<|ҥ \r…8d[ijjj,Ybaaqy:Lo߾*+++--޽;N?vعsbcc555[0I6U(//pjj\QUǓellj``,55W4ͥ@llL}TTԤQ_W[Q^z?c,mD叓J$*;9K(N6OŲ8hٕ!O99{y@YYIؕs_.˳Jj23trSmeeeppp@@ɓ׿s玼7o={*?ʠ |r[h֬Y'NsΈ#iN _[?icKT\޾NM}L3 :fW8ISS[CSNd}$ B77/*PXV񫩩T"9H$˻i. ,+QCoؾ~‹2N"u*F@=] 5W]ܲWGWQQiP7c bwϗ6cƌVccc* ]__ߩS~~~DÇ8qڵkʈ(=q℥e>}`eeT;@gnC=oNFs+k; Y74p>I|>Bx8)AZqч2B(hjL4+l`'"mhન*qB!$ح.SUU55lez_O 5D4 VءOS~ׯwSS>V."0W( GNb=r'MSƊ+**FmbbܤJ`ddtM=6nܨƒdG$'Nh͛*_0 `GGs>?6"@A _i&OB(xosnE\ԻOVeIIF&=zְ'2*  _ Gs߾q⨀ɦd@SKGs7zzJ ѿ\.8̝'c;H$oȥzg_RWٞ`PX <:5 (_89!&&&88dL+OPPPMM͂ WР]vg2p}Xd It'OSU}h%B ]6Q 8)!:&t:#r0  Czz#G}o$ݪjy@w7:KKNK}ޡGuuUyYt'D`k !GO7F B@&=<9**|ahh,(B}*CB\۞ M_ Avvm ?$LPfsqv$]mر%D˗s7o\jբE.\ؤ_[[leeeoo?8j*B׫<%Hׯ-Ѧ܋|97QQU%aB}}#7^ *ǻ|!es߾ lvwp8L׋V@]]mCNgP(Ĉ<j`hԫ46T !Ȅ xH=SSö75fffAd!zlཻ#FM %͐a"KTd-D~ 9̟+5qJrC黸H>{XA0sLlݺuswwߴiSq,TiiiӦ}Q'%B"`Xaaau?ND5s̛7onٲCWW IDATH`~~~ fهёǖɏ??l޼E >{0"F{ϟbii+ =i0#]zzxz;:H\zxXvIQQ^⧖ȣhz?561ws**̋s]K[o_?y*&&"..J&m.dtCEEePoJxdžɺ*(WˑC)NW$~ݽgϞGݰaÆ =dQCC@2,Q##m۶pBq+VffCzjժUZ_pHP]] M(;2B扨Rq{1ZF,5#nٕ|K6//\c)\qQ ?k}5>xҨ;7dʸq_3Cw(aJۈMYSNHa0,=#'7Xб47Tҋ+ߺukEE nnnW޾}ˀD5dxC==ѣ?JBCC/@ȓ'OL2EW^pY2 B###׭[' -Zn: e?9 U Jof_vF}1nGZ9e!g$T>g(|QPVV/yZzyy93oՙbL0/NWSS9rŊ?{xxl۶m͚5׮]4i7ۇ@ $`Ԑ{u熊 _ q!dH'B7⅓i,+g %-wAvvN&'+22nD7|>?7SM|pz?/?2#-;AO>=IyLL]llL @PYY_R[WS^V ,QOa-y}硠 ;w|վ}hkk߿ժU7ossskO"SnB}ACI_x"99YMML&p1cƈ swӦM}}31 >|׿{ԩ+WM:uС_y%%!m}U9YntwF!dBp1D?vUeHȩ h4CW\ 9eB/|All|D.ʊ鍍 ʼ+|Nk[[ǀ1G-ɋ(KQd$ZB D2c;)4h=klhts'j/).֕TxF""WԼƞJ|FYYKYWLl Α"ħ!bb {].[}Q]yH;ZA"E "rTJs֞@ O qUaԪ'giOrzF@ 8}a/mg"GQ6ǶYy=:$tJn"§C _P6L@|6(Oknlj3 E ٖh(hGԺ!E ϖVs?ܶW;Y#%m!(mNm<)@  -DK'Mmp:{D'㍍c&d*]g/qD].g> )~8744|Z xe CDkYL޻p~ E D(9466u$V}m$/lQl" *Nܹ2eMNf|\t}]ⶵ5Y/>zx_yqR|yyi 6s @ -훱I6jʪzN=ébWUrq3vD/RjkJ.;=飇/\.'9csNDew_NATUV(I݆B hʲӔrs__f4:Pi59PiZFƦҭz$M}$!cLaYڈ'ŗHTvrv/PQQ:mAc#dП, xUUUSn^}JJ\ѱmqq1˵hM'vvvL& ׯ_wppR\ѣGt:'E JMMMmmtM(~ꕩիW-,,\\\w 2lbgbe01VGW)=kmlbc"_=?c"C˪ggo$^J 9f(O6/npVQQyvi2{ H::oU5m=b0]fᠠTD";z;v߿РAM͛7, RSS駅 .YDq?ǎ;rUիWF#ZLhh(6lXgюp8;w%8ZT*U~iiD"fmllT۷o/^믿=6n8y%Mк! ԧD]gϒ--mD ʮ {xÌnCUc㸐Ng$=83qҬುϟDLjPfW{lll$vpUPSS݂Kq 044>>d2Y{={:tUږ-[~0 KK˟~iڵa؜9s-[5tPZff&uvv!44ĉ7nՕ8D<.SXr==={{{(Z;'*SU++ʎ;(=?$Zؿ9_>M?XTPQ?^?)++ǗJ{e144xlv7(hjL6O]Cح_%Q8~J|75qjcYN2BCCy<ތ3]I0cƌVqn))) TDaaafE6nIIIHH޽[SDcǃn:rHb v:uԺuZ+WܺuKnnnffn=Zm ֯_߻wD󤤤;w6q - 3ð3grM6ֽz=sLfffPPP:ӧO>}Z|]UDS]wdge6|εo #*\ &6M<;)+ b8ͽGkW󉠡⢂ӧtrv6\Fhh;n) rw:[&Ց;I$Ң 6ֻ2>|x͈ڵk͖(,,,\nVܹsBpF@0c D߿'&MzjǏ?uԧRHll,Jϟ]v]DDsrr~6l~9KKKb;wX[[˜8߸qիW[vj asѡhįѣGk׮3g|7SLiY; &x-d0Tzy@]]m~[C#}}'5p9G߹^__A#h4"iyEQ ---=wI~ ollƲse3OOo33訅ճ  e5ן{8iZ/ eF)EgO=zN4 )G611 6gϞ_%&&رDz.D"eff.Ydd2ٳݻwݻx?|>?00СCKgCBK444D 222j!!!;v8x𠸈 B ! B8qbuu]DIII+Wtuu=|:q$iԨQl6СC{Uv-5Wq,@(] |õWZԧI&̐d&HKM\v̓B3$hQsY6o_{򹇧wC;wp衮QSClS|0JJ ܾ D'vOئi:[Acbb@MM5,X ɓׯ__pt͚5|͙3gfΜo>{{ZH-[[n'.UUU6m_vVw߉vp8.]5kV˞`lcXtxmcc#Lee%F#n, 9990r(_rrk/^Lݻw޼y7o޶m[[(RP_s3sJ q)++@--,n_rzT$UU7m33V^^1),# KKH$rx% r\ӂNQ 8 cLͺ~BaXVe߿t9x\ dX~~~1<_~_֬Y#늊Ǐ;99-_999ϟ?ȈM(hUUպu,--N}X ܹsgΝEEE^^^_ Xtta?߿7 /_޹s'ܶmh^9;;{ڵFV {0p@BBp͚5o&&&N8̚TP55nݺI6o,Z[[w7o1bD|os |/2++||{)q Džo_;q.:PQIDV#3^$'VUV0TT Lh4E iTڿTi%ү\\~r%FF&3f~UIg+hUUՊ+GyuPMMâ:aaa򋉉 Q"8M֮]Kl"666nnn"6lnݺpVVVf͊r󝜜; /,,ܷo@ HNN믿㽽wkkk9:;;/[O>-644Le5|~v_m=xOUUm܄6gЧʕ[azE"G0JP2MM5p)ɉOLP obD&{zz?zodgA 23 M>j>n^G8w.:[> ?sN$Q:+^^^ҷWnݚ{,""b3"""111$$Ќo&77wرpĉ۷o>|`555:$&&mذ!,,LMMM lٲիÆ 4iRTTԼy:$ƍ7nشiJҊ J!90={2{ʔ)۷o;wȑ#CCCϟ?w\ŞPF"W~+W-[6rȈM6mݺTWW7ٳM&fisDqY:d*$%(S55O!oaU2bem **T*/D7 ٍxqAR?RJHԝJ|5>K,lWyϕ֭sqqٽ{[nZҭ:tԩaÆM:uժUfںu!CSX(=zСC$S/[o߾wv zuԩӧO2Dtp-;;;ɿGo&r)ScrssBD]\\6o|qQlyyy```eeٳ׭[k׮Z[[GFF^zuҥD'O|@'/ڰaΡCg3gVWWKu\\cdddhhUݣp.zzz$~d2ロ>}:qǐ[Eoh[@|-ok{/qR<PT^"ntFWqQC JY2"WJK<|>;dK/W!g9rQ\ZZ޳hq Wqk%lm_7:`׮]2Wk p %%eqX"n޼jժE-\;)eРA#GܳgOaa_7P(ǏVݻҥK]]]}kIMLL6nܘ$S z_Qk׮^ZV5jRTT!!!t:]$ۃ޳gϥK,X@Ȉx Qpp?pD0UMMm'O,((07(+W,  .y?B0///==ׯ_\~{LLofoo/XD$eĝO,kҥ4El6JOOO نnf+UWpttwЄRUY:I&I:x<^mm+ @|h7$$޽{ˉ ÇZlفdvXWW>>>Fׯ_%"됿Z|;vx%KISQ 2E+"!!A(ʴ #`kkJUUUKII)**"DT\mєsyyyii @ee%hNNNrrq&O#"O55Co H3Ο??eB|d>)Itt-[9ͿQND[+mkiT,7x7uD$[ed<#6 r%J ӿ\dj P^^zd_3Ce|,Q㭚UNp&*={v}ѡ3g{ui&B- --mڴDX,VXXt>}ZZZ=z6Y͛G8Gx IDAT3.\(qT"c͛ϝ;w/ e*CYY!A얕*nNd0.,,\r!!޻wOEEER]]M͐pK#xzz[&$$wС޾+Vq|sssXC%g̣G8`ccC@#EDD{R "QͰD5`9 JvvC544K!'%?Qt}wnhhjhd".@v')UULB7n?'ً&M.{+NlG72JRYY?ѣ6lذaѣGss"522ڶmx? .b/477777?y򤧧bKJJ;>5InnÇeD+p SR:4D333"<AHH_|!W]]dj.WLl۷*%%… ۷o|Ed2###eOTj6(ټysxx'ަLrh9deev:ŋcǎm#رcCCC###Ⱥ}}&_G"/_qcǎ}w@ `s玱̉YfEGG_...r?)h.Nmmmff[H$Wrr2t+DgA,B+++;t萭p722:yȑ#̐puBG:?P(7n\dŋ'򹯼XW_@\\o`߾}?y=ziӦgϞ8~%SSSǑɈ#?~ݿcccONT|ydm9;;f͚5d5558wx8cƌ!9۷o߿w+V#ݻwSN֭[OgVQQQ&䐰^|yȑofԨQ2[͙3gܹ2#3 %DTY#}~,Vʲj]]{YMLI|'L-ڶ`Y :[>DžLz7 75Mͺ J0:`h鋷;;'k{*Sa;rW4NgCN6#; ;w|վ}D/G[[{Vڼy]a^)遁}իD~G5+/^~-^BFFF UTT$߲FFFǏe,={_~d2vZgCܫC ߴizLR3a2QQQ0aBYY7nxxxtwDΝ;l68_~Ã8:~x ?%qpWWWrmmm\@@"llv;uD[5505|YHdoU-QKKWK` ţ&R9CR%͎NaAKwȑ$ bŊO䒒---E.\(jii)^R"ˮD"M6:::*/DZ/Rf(m--ŋ/^X-FlD=sLCa6h ys7otuuL&NNN4'F4G_̙3Mg0`@uu5d2E x'Np8˗/gd2CsФCi!;w411^׳g_UxRUU]̶mfgg'*Y`AFFLvtt&#ޔ"{goo/d#FP(fj6"-{qޔFFF/elWVraӧ풒quJ:SDACC/$  /ѣUUUY,vaee3uTGGG_u̙555 T*̬5+P[[S:6߷A 1 dN!N"֭[sĉֿ ݲe׉Tmޜx/zIEE/OKKKcXrssY5I}#5t)j*9p7TL0!c\[cK#bGwIv -H/n> e6B_+نgJzR_FQrC:%q9zva58[N,RnAp-BhXh_l׋ Ԣݖp. Q6 '+؟f>*or*]q:Sp40rU@e6;.d lE|i9@Gl~y$EAv# B.HF3L3Cܽ`D_)BaC~K?`nM|[HqgRNG*VB ֞k'/cPrHQZk_?1w|iq 5$ ^<l:x{m=092e2}bq81vtW6R!œTOʈ:g+H #R5͞(nՒp3l /j8Vlv\^rNw!a, 2n^#T7gN&gN!!~) e= ؽnС u l s,>rDkkHgI9EZjEkVuu7a8l 0A,aƎ oed/ReSAoʔE0u8Y7|kyHa7&?O=sIw/(;Oփ'{>]L;sXN\JyϟwW 6ݷ}i[3_Ҿ;!V9|1KGq 4h áX]LJ"Y$/N m ]C+[JYw)6 E+ÅXHG ~피H[߯:(:]xs.ϑ̣޿TMmcD@f.*m=!"F[%B'#{r'$*虓EŔD]20XssY5cw,O)ڪZh&YPH_7f4RS˴ܕrE =U4pH<ܬk{U}$w^@!4`1e ʻPD? ,b H%555nnnxB IR9`$..bݺu|~{:;;ܘT*466633{zBHiBg[b_:b׷S{C u' 8Mj#$~"GRT@n-H'ߧQN\OVqT"^du{t%33Vy8$#F#I244Tި?x޽sukkk_yŋر)IHH8t˙Yjիz-ՑYYYuttJ$I솆UVʫ raQ\KZgkv#Iu*UD[<>&b#JjEؚsҶdpt[*ړrkkĂDGYbՆ 8"::Z˗/@@@/mmm駟ZYY-ZHmBO`˖-js{9]~GAAAvڳgGSzz_~9'|AA=bF$D[<Ԏh-hl le7kg!]Oa4c)r >,t!zg-RP59AjK={nwvDL>C%:}gΜJ۶mc6_z饧~Zm۶UWW:Z+;;ƦՒ]veff~!!!ޮzܹQk~G˗//++[b;S~z0ofC2Rd0s$r`VhPP_A-ˆ*ϡ.f(G4qԡQ<Ѱ&\hBd9B>HNBX7 :o f '߷o===~⧟~ڪVXSSy&D$&&۷ **J xg}ioرmɘ!U#4P4O`+a#~So񠮕v4'x NV5u\Xӂī Y/(m X ~VG[ϔݿX,fZoԴ|r[[#G 0l㏘]{u%}F9DBf?3BGMC3t8+VkbޓgI1φ kb۞=\O>\s=zv =bZhVyVV`|pN~/pZ+66ȑ#_<޾k׮7׾kW^yEm۶Z7ng>[o{\]]}oZ3 `@ v X $E W)P(J%J>+AǖsCv=yyY;tkPUÞcHg@- vxa /{!*%O.!ZTO'P6K9VFf"R{1-].$u_wҥK/^ })tҹs2%$>i</55?zEWWW???/|a2f/>rȷ~{W_}uɒ%N3iʕeee6k,E}8tPUUբEoɚ;vL:|]]]7mdll]H^/s^!*VN&E7}]W@ڷo߬Y_ 777&A5%%%τB\Pzzz֯_uҥK?'|իLn{{;fQvŪ3.$$8ŋ322H0D=~8LP43;$D䠹<P4|{VhV;At^5ߠLPHuV"GShFj>Ӄjj*xcc^zI.׹˗_{g}vjX,֞={V^4::ѣ666L Aιyyyʇ~jj_~zzff)Iϟ533[vmxxx?`ٕ̦7sxǢ*&G>n:LP4!֝ _dxmŋ'Oc>K~Z(ٳGs-BCC\ur5G0 B_}'xBucnn#GsawF0Bŋ:uΕGˈx≇} Q_!JE#gP{1sۛ|̈́+ IDAT۷+X`„ ~]]Syfj !1ϝ;D`BQPP`ii&ܘVVVVVV# """""" <<7+Q{kI5]g<e/ i۩;Af7ؿ߿_Tcee?X,eZ[[G$''9sfݪXoX 3Z5}Gʠjll3g4g}t}WXX>}:;;~255e#: !4zֿ3;fZC;-W~6:PZ{އJ._SSU{7{{{>VT{enn|rTz̙0___ fǙ+Vpww?~ %K(w-[짟~*///((4i9BhD C25!{*H>⯾J'd޽|GQ(UsNaaɓ'srrlll̳C[[~?YfNNN666\./ՔwkhhKŵbk핥(jZ ~Wccc;;;ꫳgϞ:u_ ƦG%:~R]t׮]nbX&&&ZW544puu{;;{g(,,d— fl```QQQTTӠگ2 ޽KӴrPnFF_! !:]GwL8Qm ցN2Eu[]b999-N4X,Bkkks{{|۶m| &L/Z_|EXXM GYz… G}SbX-~&bCK 6F'G-xrΛB}iZ"0#XChx/ 646w  ƚC ZC0!{$#9s}}Bn! `"4}NQVV`V9تTt!FȨΥi*:BkKM2}&NjJzs|\wS"3ͳ5C17'S$T;? ynnn[tG!bD!s.]<Za#%j>j%lb>wvvܻp聕6:9*HOjlWgZ-;@.<Ӥ@kK{yM ug"E1kZZf\|F)ee%_|f%k x,o&fDIXdO644`D (?[l޺؟Ϝ>zGǞf_xMϟ;^X&I455.yA^0BElw$kYYY^yLimm   Y4 &Lp YlZ 78|7!*%Z[@*L.c6Z[@,1mmhl"X#1y_+xM5DYׯ]Vn$ju&Nt~l{B[wv9|=V_1%^Ū99} kE/P(X&Yeۯ?tT+,ap qX1;wѬj߷ qC/VE!4zSo2w~K{{kCCHypæа}i->L~KT,ef̢wrv숎U2{"ނ O0l˯/Cݺ}MOuGh=F`!И4R-QCCcCCc YB"gf$Su&ZgMNԕHTD,%&\Sn;9FE^(* _zQ{{3/Xf\.WP]]MtTO3IMR E1NwN  [[N*n'@߉}̟~].{8`$k7hNqRikkm; E!4VvfgD]td:.w@SS~4l I4N IOKvsښBie~AZw4jۃ!0R!ZRRP_Y^S}("#-Qs-3ۯ?Hj{k>.f_~Zw,964zyt_ip8k *EGE\sEBhL-.Yk;wk1!|fĄh$[*7(*ʿ<}L.a󌌅@ k˖cJrkz ꝧs-|K!_H蒥-YfyFzkgY0uFV *.f7)sMMf<ͻy>.ꜹxΗH.gg?ӧ ?ZMMetEӐuxڕhWjogb!ƍ14T5:n%&V qG]UT(/I @oUߺ}E+5D_(RRX,u[7CAsS셃l*12BhC!q) Vܽ{Va޳Ͽ.@jJ|\l5]\ݙm媍qERCS4ܾ]/HFwͺ-z3m\LuG [L3S!Ʈ5[y<~eZMpt["UlVWf; +WmdbHX>{ %BbCYd|xɰo;niibr%qJrN?\!/),̻]ZDAffg&8Fhjjgh|h-P4rox{B$\A,[ Z#A>y޽E1<ej xhII!˝2w0 74lߤ%Uwbv=B.$'&'iy{Rcc=sd7ϕ6hU+Bhҽ=C~WS^^R^VJƙqr (. hjΌe>U7kp5"IK 9\I6ËPBeѼ!B4J!j[kr޸~CS!Bc\?&un 0DNW0D:Z} !Ɖ`"x0BAE!4P"-0GBh W!A+B1%"BGH{BҘ}$DZ!HS!WNWGqkl(!( QBh!DPqLɦ7BGhDr3b/P O)++>rwB {W]}7/7/hVee@WgGiiKA;ˏ$IEgO:kmqdDjg{xx隁B0%Uٝ;Emmc +3Y.飬*1Z}]5kjjr錮;aB޽cXjzx(o޲2?8:M;o 48ߴaP̟g!ƨlfe)ֺ޽ =}X[S{v~w97#/[|S 33[w;z#nqttQV‹o2ϟ;VX&I455L \.ټ_{T0X!4n`]\t5[|}P~{ KEא,Vߵ͚MwJIt2D%_ OTKKȤRd-MblooHmCcBhXG<=->4ljyiiaccU NN{R*155kmmnmm##c=}j;N(4ݼu15uu^U6ss2ss2Rac!ƇXu!/7sf<Bك0gHs.vPh|Sf m坻^Ҽo?& ^ (BDzVc~^M',Q"##-#(8LR8!.Jhb0utPW[}t$WTs6VUVxz6g&D%bQfF%{'gΎ計[yA!,R-Ϲpf??B'll{n=!аh\ldWgZab|ZIKsS M=}wp(65}l 666IOM`v߾sejb(1r3 5ꅢ[A!fR144b"G4AlR(jZW[+Y9B=F*D} 駤}e2"Y$+5%*OT(MHU(4}wZ;o2`G;82٩,(ml; 6$bψ=!4֍b %Uע#U:cg$+DܤIZ\\xKO_xZvێ}E1'D Ǣ'WȿiN[̍0\򍌄&*Ânʫ %Ri ~'YD Kk7)jkJJ m8o2iZw4{9Bc׀[0|p]{odVWU+n:WMK+IOdR6b-X$kEUwj rО1Qc.[H™!4FFw÷WJNf^*MۥEm~ 5>{?~~-ruLI^nVC}m`[P[!Ʈ!ڥ\^QWM,I$3ݟ#ˢ/ >SUmi0T*ryv<<} slTFG]411 sj+ 1ZwBh\LG?x>_oٽ,C`PHb5k |==<_X9ŏR(lkc[200ZhEӽr,%%bYUW3f^-QBZFwčwlip ?G&l"e!.Qu42}רHM05ԉCÊ&8R]uZZ'\[__{=R,1DEYk {(B!F%%uKƘ@d^‚ئFy CJI)ɱs/r[?sġ~[l{b8%9||-Xsn.-&8=h쬴Ԅ~sp<MM 퍍uZԃ\.g[!Gz΅~υ~Vl|-;8vv̹͌PPSϘ90b ;w12{.Sg铇KJ \SMUv655&%^/).d|=]ϼ,˿@Yd7ϕ6~yyN BwBC4 JqaS3Y:(+3nYh|gU]]jh/(⫺C,NWȤ.|w՝Ѳ2L&-).p&k}0DBhldjocT5rZsGc QQg. hǴWBcCGB m> l"9K=!FXQBhcg`S!؄-QBh!mYB#aH!p}!FX!BHiݹ֏1!#BA#Ltlf=Vo !85{L*U-IKK8جKkinU;UO_$3'3=_ \p!(8Ty#AΟ`nCnNKgg IDATt2Wk}mB!4 1Dg]%']33dc,|E)Vή|ZXvX"켜 aдS%&Hl3&VnrFB#c݊;qW̘R6泹_PNNFB|ӤײY=G xZ9\.3ne;56nz 7j #AOо$/YyF?oHt[qVl0vr8e+ZXX3u39P[W>3=5rs27sRx<>GXZXZ<ܫ|aɽ'2,CSBNS\, Mmj`xo+B<p(#ee%4E Nꚻ`y%顭2Ou|]d'.Zsfzfa+̇s,lw̟:% w<5j?46֫J֮⦫fB㗖z 4E@ֶǏv3aKY_WCԗugo-,U#j\R9vvv:yzf{EÇ~jkk6/0(d|c.@`PANJD&j 7uՙx} WG!4nrLLḼXh,Pɱ4M͙TW[=J`mmroiVrew@_O3^cZg(zzmxsviђek5%)1OX}復ě[Xz(FG]i3+uլP(tB!zw.^D".y?`: P\_W[LÇ)!KGG;A)LMJԜyKohdm JK ٿuO'39<=,''ze'gWfxQSScvV%Be}hQD Ob63Fת6mm-7T/2ɽ] 0#tbD]斏?\^S;uץ(M<֬W.pj"q铇I\X) QW׾ RBܒ* \T铇W>utr]n:"i-715kim,cMMŚuj䕳XXZM:k4XܙS=<}|Nׯljj\rm5T %: ,G!ho$X55 &z03;-Oz3o)*4L`ڳ7jW^OZ[)Bhbl:OrwO{Ita2*S &H$jR~R Sw% Y0#$ZaK!CmBmM"ϥ%u5\_EVv1Է jVmrp'%#:cjkc>SY$Kk%L!ʆ8?@K.Zsnt!2,/7&: J sk(l{{[]Xұ#a՚M|=[y RsUWߍy!#-u5ttbP(䔂Ҝ* m-1BS8,BWu4TR\/r.IJp8XZ ;ʹվ0~ 6ת\uoDgd} HG'#99fNR뛷:_M")E!h 2iGG/mm-ewJ||%uMB%ufֽyjnVWU0/42;8IdH^jkd"8#B.'Y,f]T᭯mP1Mw5LW^uBm! Czj:~2PjI!46#B]ih B/e$.2ꭹ@QB}X9up.&BQWOKrL=]$dB}pwdcPkC!4֌(&BQ@° y CbF2B!3:wDv+E!%tn Rő5iKwmVBGX},t^BQ5-=/ c! 0DGaE!P сxa9B!o,E!4gC5>62+3YsUUy|ld}]uu(쬔{r2neqzMݛyYXκS{60?e`"_%hHMP[umuejJ rY nގ49_i Eysu hkkQVr[-[/.44  ׯ]:J7y<?ճݹI;|A9f׬"IŪ C` ?EB|4Ӑe8ރ~?JB_C|&FQ f uvJ hD怌;w]ܘײ%!`(c#-ljo,nl~d'g7>_/RALrSv+s2ۘ斾~72&-]N'ohi嚘M[vjj 6=NPiA!bޭcnnSOdb_?MӍunU-r$y @UUEZJ@$wfDIVVׯ] h>nbiIa^n挐9a| @wW 'yjޞy-}(r%-u bYl6I< #_CuT*U-)*̻wǍ,W__|]_` ,[yBӝ^Vt2l-,\ _U`jjb\yԩ)qkpϪG~z#~Zɚu[]\&}uB㑶cQo‚\eRA~fruSs?+NݺL1 Cfsv\HsRbLRb%k\n{{0.623#ݹ_|\BKԕd,4QKP/΄k$BGGr r ~ Vj'v ML^c!Ḭyzz=:l]8\L*trvur;Pgjj?urto`,_ ')5%urgՋ2Hk} J.B[O=}FV+Xl@"G_Zc0q'\5VVbQW\l=?|NnNL&s166166Qe `ZphNNk]EMod[:9j=o-QE$EG}%r2`eɉofgUhHӔ rT)002Ӷ-70/7LLʹ.KUn4EQ4MY#/tE"љSIXhc]{e#z K5''H2]&]8yn՚XYYCeI{{^ znkKeSӽ ]E cx+eКm:wj}]͍4==ʦ+9ADIB QeU!_8L!Ybx(-45Ko@nNԠfvSsk2er饋'Z[,Zu^#MS./X /`d,_Eutvv{DL4g҆T>#ݫ{Ɩ(BhO? {t Bqɪ /W)Lū?G޻W_Q~Һ1 D6@FZKJFnN mhU pælliQggbBLmMoH }Y,=U&)Bk֝Pw)T]m$W {" b.VߞPԓ) b]ijUMM.:˷R/\Ij0f |[ӂBg-OOM(--XpMӪVq׮՛ze nIRgUWW]uBzzd7O KkhD W)ؠ>U;:;^c=,/A!4jEn'XXZ?~%J KXj56E\8P_<׬:|'iZhD,~%`s@]mU\ldrR:sŪM@|rW|_mm֮T&'][qG5dOUS/]b33EG25(dDg&%bqJr\AvشeWN≧^03MR/F#z4DG N/uSOOa("F?.Y)$AYXMEY)g*dƆ:K*2mV13Ρ{ FW.'_:_e UҚy (rE2-TTŬדdM{y hw%5DW/[XwcԊw˭W2\R\4L\N+oI1G<7- eUDY~~*_뭭33i֕E!ˍ|6| 䤭|.ihU6h@O!fxDr=rCp/D-zÀ Y )[TyBQ64Ή$D+G] r㈜d}kHu9:d'#(<$j%(ëEQ`qh(G1 9D]7z* @BYt)4:eM(%QhOkU7[U4ԜvQ#MԷSwA `TÇUQ7 QCĕ9( rhg0 Ylj<^'#(9")rPfu'H$"GAiQ r Q3KC)9=rTD )yrT HQRQh2j"sA.^y~ @$蒿ZsYP2ś[9ֆR( Q#G$Jzqu$_i/GE?VL sQ_O#"h:9;:2,P$Ю()H@hԠgMcyS* t?^($*Q&ܫ9 9BT5>2G]*DR,}'Z{:?%/e97pEM!JW@wQ@[*r+l[_?iQ:Єܼq:駟/]tV999 ,^N4i׮]/-[dɒ)S߰hÆ qqq~:Y,JD/-1qO5Wˍ̆i?,q95$lJ(.ǵ뒨&rT' rǏoܸ1::ZZxգG_3((h˖-YYY&L +V;v,''Ǿj}bbb֬YϫEJ4gx\HDؑ웋ܸkΖhKVK 6sN"Py䑬Ǐ'%%͙3GZx}"gcLJP[nHaÆQ/8F Q/mݽKVy)\eMJЇxLيߖU|%G*SPRvvǏ':{^t(~;f̘Meee Dwߵl6iBZ sbد􉎕[{G +mzJn8DRQPLNNԟɓEEE‘#GH/EQ<ٳCBBȑ#.\XbŦMݻk.gN͈gDT`:)\HYz Dt>:-t 0z$7?AӧOvÈ?LtgW)t~JsR貊 Nޟ)ܲ4l(z»DD-բEvܹw^"?kkk333hm P1~nXgHX5M;qDD=fL`/kbܖ=(唽t/^ׯf͒ۻw>uM&SccjݴiSpPS ܹD9++KSՍVv{L^?U61{:aD 6"i= K`o=Tm;~Ŷ"ϒXr {(=LP[bwìbЎEzyλQUU͛7333-Kkk,KGGGdd9""z޽{ĉ{ѵk냂"##+{'66֣3p6-EǺܘ0Y2mbSDzQMs%TvÇ(Qo!HT! ໦&M#%q৙֩t*-|xl<铎1"FI{@BCC} Έ7=.-NEz@czc2| L&[=?W4c)+[5!|ÆxZ|DDDXX㸰/5MhR@qdڿN3D1+ΠM@tP60*d xro$ 0BpH'0wI^Ths݇( nI ^L:QBP=se}X{}0p8< @<QC{~Wa=S}'n*|k<- *nF`h(ySY ^[iㄛo(0C\UoGq>V=d[ `lA-WSOi6DT1+ƽ1fn:l]0s#6+[~d3Ͽ?$hҭf DdهLФsgTSWRHuҍEE=G2 n/ֽm61H|ON4&GE<` * /tuuߺ\\׿?gDġIENDB`kylin-video-3.1.3/data/kylin-video/zh_CN/index.md0000644000175000017500000000542014212620632020164 0ustar fengfeng# 影音 ## 概 述 影音是一款界面美观,互动性好的一款音视频播放器,它基于qt5开发,使用mpv作为播放引擎。影音支持几乎所有格式的音频和视频,具有强大的解码能力。影音还有迷你模式以满足不同的播放需求。
## 主界面
主界面功能简洁,如下图所示。
![图 1 主界面-big](image/1.png)
主界面主要有打开文件和打开文件夹两个功能,在主界面中也可以点击右侧列表按钮弹出播放列表。
## 播放界面
播放界面简洁,只保留了播放列表展开按钮。
![图 2 播放界面-big](image/2.png)
播放界面主要功能:单击暂停播放,双击全屏和取消全屏,右击呼出右键菜单,鼠标移动呼出标题栏和控制栏。
## 控制栏
控制栏在播放界面悬浮显示,半透明样式减少控制栏对视频的遮挡。
![图 3 控制栏-big](image/3.png)
控制栏主要功能:上一个下一个切换,暂停播放控制,进度控制,音量设置,倍速播放,截图和全屏。
## 播放列表
播放列表支持列表模式(左)和预览模式(右)。
![图 4 播放列表-big](image/4.png)
播放列表主要功能:双击播放,单条删除,删除无效文件,清空列表,播放顺序设置,显示模式切换。
## 设置
设置界面主要包括系统设置,播放设置,截图设置,字幕设置,音频设置,解码器设置和快捷键设置
### 系统设置
系统设置支持设置项:最小化暂停,休眠/睡眠暂停,运行多个实例。
![图 5 系统设置-big](image/5.png)
### 播放设置
播放设置支持设置项:播放时自动全屏,退出时清空播放列表,从上次停止的位置继续播放。
![图 6 播放设置-big](image/6.png)
### 截图设置
截图设置支持设置项:截图文件夹,截图格式。
![图 7 截图设置-big](image/7.png)
### 字幕设置
字幕设置支持设置项:加载同名字幕,加载文件夹下所有字幕,字幕默认文件夹,字幕字体。
![图 8 字幕设置-big](image/8.png)
### 音频设置
音频设置支持设置项:输出驱动选择。
![图 9 音频设置-big](image/9.png)
### 解码器设置
解码器设置支持设置项:视频解码器选择。
![图 10 解码器设置-big](image/10.png)
### 快捷键设置
快捷键设置支持设置项:快捷键自定义。
![图 11 快捷键设置-big](image/11.png)
## 迷你模式
为了更好的体验您可以切换为Mini模式。
![图 12 迷你模式](image/12.png)
kylin-video-3.1.3/man/0000755000175000017500000000000014215020236013136 5ustar fengfengkylin-video-3.1.3/man/kylin-video.10000644000175000017500000000156714212620632015466 0ustar fengfeng.TH kylin-video 1 "19 June 2017" "The Kylin Video Project" "Kylin Video" .SH NAME kylin-video \- The best GUI frontend for MPlayer .SH SYNOPSIS .B kylin-video .SH DESCRIPTION .TP Kylin Video is a GUI media player based on Qt 5, using \fBmplayer\fR(1) as its backend. .PP .SH SEE ALSO \fBmplayer\fR(1) .SH AUTHOR The author of Kylin Video is lixiang . This manual page was written by lixiang for the Kylin project (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation. On Debian systems, the complete text of the GNU General Public License can be found in \fB/usr/share/common-licenses/GPL\fR. .SH BUGS Please submit bugs to \fBhttps://github.com/ukui/kylin-video/issues\fR. kylin-video-3.1.3/man/kylin-video-new.10000644000175000017500000000156714215020236016252 0ustar fengfeng.TH kylin-video 1 "19 June 2017" "The Kylin Video Project" "Kylin Video" .SH NAME kylin-video \- The best GUI frontend for MPlayer .SH SYNOPSIS .B kylin-video .SH DESCRIPTION .TP Kylin Video is a GUI media player based on Qt 5, using \fBmplayer\fR(1) as its backend. .PP .SH SEE ALSO \fBmplayer\fR(1) .SH AUTHOR The author of Kylin Video is lixiang . This manual page was written by lixiang for the Kylin project (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or any later version published by the Free Software Foundation. On Debian systems, the complete text of the GNU General Public License can be found in \fB/usr/share/common-licenses/GPL\fR. .SH BUGS Please submit bugs to \fBhttps://github.com/ukui/kylin-video/issues\fR. kylin-video-3.1.3/src/0000755000175000017500000000000014215020236013152 5ustar fengfengkylin-video-3.1.3/src/minimodebutton.h0000644000175000017500000000265214214075177016402 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MINIMODEBUTTON_H #define MINIMODEBUTTON_H #include class QLabel; /** ************************** * mini 模式下的按钮 *****************************/ class MiniModeButton : public QPushButton { Q_OBJECT public: MiniModeButton(QString iconName, QSize size, QSize iconSize, QWidget *parent = nullptr); ~MiniModeButton(); void resetName(QString iconName); void setLightTheme(); void setBlackTheme(); private: QLabel *labIcon; QString iconName; bool isBlackTheme; protected: void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; }; #endif // MINIMODEBUTTON_H kylin-video-3.1.3/src/kaction.h0000644000175000017500000000355614214075177015001 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef KACTION_H #define KACTION_H #include class KAction : public QAction { Q_OBJECT public: //! Creates a new KAction with name \a name. If \a autoadd is true //! the action will be added to the parent KAction ( QObject * parent, const char * name, bool autoadd = true ); //! Creates a new KAction. If \a autoadd is true //! the action will be added to the parent KAction ( QObject * parent, bool autoadd = true ); KAction ( const QString & text, QKeySequence accel, QObject * parent, const char * name = "", bool autoadd = true ); KAction ( QKeySequence accel, QObject * parent, const char * name = "", bool autoadd = true ); ~KAction(); void addShortcut(QKeySequence key); //! Change the icon and text of the action. void change(const QIcon & icon, const QString & text ); //! Change the text of the action. void change(const QString & text); protected: //! Checks if the parent is a QWidget and adds the action to it. void addActionToParent(); }; #endif // KACTION_H kylin-video-3.1.3/src/dialog.cpp0000644000175000017500000000402414214075177015132 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "dialog.h" #include #include #include #include "ukui-wayland/ukui-decoration-manager.h" #include "global/xatom-helper.h" #include "global/global.h" Dialog::Dialog(QWidget *parent): QDialog(parent) { if(Global::isWayland) installEventFilter(this); else { MotifWmHints hints1; hints1.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints1.functions = MWM_FUNC_ALL; hints1.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints1); } } Dialog::~Dialog() { } void Dialog::ukuiMove() { if(Global::isWayland) UKUIDecorationManager::getInstance()->moveWindow(this->windowHandle()); } bool Dialog::eventFilter(QObject *watched, QEvent *event) { if(watched == this) { if (event->type() == QEvent::MouseButtonPress){ auto mouseEvent = static_cast(event); if (mouseEvent->buttons() & Qt::LeftButton) { ukuiMove(); } } } return false; } void Dialog::showEvent(QShowEvent *event) { QDialog::showEvent(event); if(Global::isWayland) UKUIDecorationManager::getInstance()->removeHeaderBar(windowHandle()); } kylin-video-3.1.3/src/ukui-wayland/0000755000175000017500000000000014214075177015601 5ustar fengfengkylin-video-3.1.3/src/ukui-wayland/ukui-decoration-core.c0000644000175000017500000000526314212620632021771 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #include #include #include "wayland-util.h" #ifndef __has_attribute # define __has_attribute(x) 0 /* Compatibility with non-clang compilers. */ #endif #if (__has_attribute(visibility) || defined(__GNUC__) && __GNUC__ >= 4) #define WL_PRIVATE __attribute__ ((visibility("hidden"))) #else #define WL_PRIVATE #endif extern const struct wl_interface wl_surface_interface; static const struct wl_interface *custom_types[] = { &wl_surface_interface, &wl_surface_interface, NULL, &wl_surface_interface, NULL, NULL, NULL, NULL, }; static const struct wl_message ukui_decoration_requests[] = { { "move_surface", "o", custom_types + 0 }, { "set_ukui_decoration_mode", "ou", custom_types + 1 }, { "set_unity_border_radius", "ouuuu", custom_types + 3 }, }; WL_PRIVATE const struct wl_interface ukui_decoration_interface = { "ukui_decoration", 1, 3, ukui_decoration_requests, 0, NULL, }; kylin-video-3.1.3/src/ukui-wayland/ukui-decoration-manager.h0000644000175000017500000000440214214075177022464 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #ifndef UKUIDECORATIONMANAGER_H #define UKUIDECORATIONMANAGER_H #include class UKUIDecorationManager { public: static UKUIDecorationManager *getInstance(); bool supportUKUIDecoration(); bool moveWindow(QWindow *windowHandle); bool removeHeaderBar(QWindow *windowHandle); bool setCornerRadius(QWindow *windowHandle, int topleft, int topright, int bottomleft, int bottomright); private: UKUIDecorationManager(); }; #endif // UKUIDECORATIONMANAGER_H kylin-video-3.1.3/src/ukui-wayland/waylanddialog.ui0000644000175000017500000000361414212620632020751 0ustar fengfeng WaylandDialog 0 0 400 210 Dialog 20 40 20 20 background-color: rgba(255, 255, 255, 0); Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() WaylandDialog accept() 248 254 157 274 buttonBox rejected() WaylandDialog reject() 316 260 286 274 kylin-video-3.1.3/src/ukui-wayland/ukui-raise-manager.h0000644000175000017500000000401414214075177021437 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #ifndef RAISEMANAGER_H #define RAISEMANAGER_H #include class RaiseManager { public: static class RaiseManager *getInstance(); bool raise(QWindow *windowHandle); private: RaiseManager(); }; #endif // RAISEMANAGER_H kylin-video-3.1.3/src/ukui-wayland/ukui-raise.c0000644000175000017500000000474014214075177020030 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #include #include #include "wayland-util.h" #ifndef __has_attribute # define __has_attribute(x) 0 /* Compatibility with non-clang compilers. */ #endif #if (__has_attribute(visibility) || defined(__GNUC__) && __GNUC__ >= 4) #define WL_PRIVATE __attribute__ ((visibility("hidden"))) #else #define WL_PRIVATE #endif extern const struct wl_interface wl_surface_interface; static const struct wl_interface *custom_types[] = { &wl_surface_interface, NULL, }; static const struct wl_message ukui_raise_requests[] = { { "set_top", "o", custom_types + 0 } }; WL_PRIVATE const struct wl_interface ukui_raise_interface = { "ukui_raise", 1, 1, ukui_raise_requests, 0, NULL, }; kylin-video-3.1.3/src/ukui-wayland/plasma-shell-manager.h0000644000175000017500000000350414214075177021746 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PLASMASHELLMANAGER_H #define PLASMASHELLMANAGER_H #include #include #include #include #include class PlasmaShellManager : public QObject { Q_OBJECT public: static PlasmaShellManager *getInstance(); bool setAppWindowActive(); bool setAppWindowKeepAbove(bool keep); bool setMaximized(QWindow *window); bool setRole(QWindow *window, KWayland::Client::PlasmaShellSurface::Role role); bool setPos(QWindow *window, const QPoint &pos); bool supportPlasmaShell(); bool supportShell(); bool supportPlasmaWindowManagement(); private: explicit PlasmaShellManager(QObject *parent = nullptr); KWayland::Client::PlasmaShell *m_plasmaShell = nullptr; KWayland::Client::Shell *m_shell = nullptr; KWayland::Client::PlasmaWindowManagement *m_windowManager = nullptr; KWayland::Client::PlasmaWindow *m_appWindow = nullptr; bool isFirstCreate = true; }; #endif // PLASMASHELLMANAGER_H kylin-video-3.1.3/src/ukui-wayland/waylanddialog.cpp0000644000175000017500000000216614214075177021131 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "waylanddialog.h" #include "ui_waylanddialog.h" WaylandDialog::WaylandDialog(QWidget *parent) : QDialog(parent), ui(new Ui::WaylandDialog) { ui->setupUi(this); setFixedSize(400, 170); } WaylandDialog::~WaylandDialog() { delete ui; } void WaylandDialog::setText(QString text) { ui->textBrowser->setText(text); } kylin-video-3.1.3/src/ukui-wayland/ukui-raise-manager.cpp0000644000175000017500000000713314214075177021777 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #include "ukui-raise-manager.h" #include "ukui-raise-client.h" #include #include #include #include static RaiseManager *global_instance = nullptr; static wl_display *display = nullptr; static ukui_raise *ukui_raise_manager = nullptr; static void handle_global(void *data, struct wl_registry *registry, uint32_t name, const char *interface, uint32_t version) { if (strcmp(interface, ukui_raise_interface.name) == 0) { ukui_raise_manager = (ukui_raise *) wl_registry_bind(registry, name, &ukui_raise_interface, version); } } static void handle_global_remove(void *data, struct wl_registry *registry,uint32_t name) {} static const struct wl_registry_listener registry_listener = { .global = handle_global, .global_remove = handle_global_remove, }; RaiseManager *RaiseManager::getInstance() { if (!global_instance) global_instance = new RaiseManager; return global_instance; } bool RaiseManager::raise(QWindow *windowHandle) { auto nativeInterface = qApp->platformNativeInterface(); wl_surface *surface = reinterpret_cast(nativeInterface->nativeResourceForWindow(QByteArrayLiteral("surface"), windowHandle)); if (!surface || !ukui_raise_manager) return false; wl_proxy_marshal((struct wl_proxy *) ukui_raise_manager, 0, surface); wl_surface_commit(surface); wl_display_roundtrip(display); return true; } RaiseManager::RaiseManager() { auto connectionThread = KWayland::Client::ConnectionThread::fromApplication(qApp); display = connectionThread->display(); struct wl_registry *registry = wl_display_get_registry(display); wl_registry_add_listener(registry, ®istry_listener, nullptr); wl_display_roundtrip(display); } kylin-video-3.1.3/src/ukui-wayland/ukui-decoration-manager.cpp0000644000175000017500000001205014214075177023015 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #include "ukui-decoration-manager.h" #include "ukui-decoration-client.h" #include #include #include static UKUIDecorationManager *global_instance = nullptr; static wl_display *display = nullptr; static ukui_decoration *ukui_decoration_manager = nullptr; static void handle_global(void *data, struct wl_registry *registry, uint32_t name, const char *interface, uint32_t version) { if (strcmp(interface, ukui_decoration_interface.name) == 0) { ukui_decoration_manager = (ukui_decoration *) wl_registry_bind(registry, name, &ukui_decoration_interface, version); } } static void handle_global_remove(void *data, struct wl_registry *registry, uint32_t name) { // Who cares } static const struct wl_registry_listener registry_listener = { .global = handle_global, .global_remove = handle_global_remove, }; UKUIDecorationManager *UKUIDecorationManager::getInstance() { if (!global_instance) global_instance = new UKUIDecorationManager; return global_instance; } bool UKUIDecorationManager::supportUKUIDecoration() { return ukui_decoration_manager; } bool UKUIDecorationManager::moveWindow(QWindow *windowHandle) { if (!supportUKUIDecoration()) return false; auto nativeInterface = qApp->platformNativeInterface(); wl_surface *surface = reinterpret_cast(nativeInterface->nativeResourceForWindow(QByteArrayLiteral("surface"), windowHandle)); if (!surface) return false; ukui_decoration_move_surface(ukui_decoration_manager, surface); wl_surface_commit(surface); wl_display_roundtrip(display); return true; } bool UKUIDecorationManager::removeHeaderBar(QWindow *windowHandle) { if (!supportUKUIDecoration()) return false; auto nativeInterface = qApp->platformNativeInterface(); wl_surface *surface = reinterpret_cast(nativeInterface->nativeResourceForWindow(QByteArrayLiteral("surface"), windowHandle)); if (!surface) return false; ukui_decoration_set_ukui_decoration_mode(ukui_decoration_manager, surface, 1); wl_surface_commit(surface); wl_display_roundtrip(display); return true; } bool UKUIDecorationManager::setCornerRadius(QWindow *windowHandle, int topleft, int topright, int bottomleft, int bottomright) { if (!supportUKUIDecoration()) return false; auto nativeInterface = qApp->platformNativeInterface(); wl_surface *surface = reinterpret_cast(nativeInterface->nativeResourceForWindow(QByteArrayLiteral("surface"), windowHandle)); if (!surface) return false; ukui_decoration_set_unity_border_radius(ukui_decoration_manager, surface, topleft, topright, bottomleft, bottomright); wl_surface_commit(surface); wl_display_roundtrip(display); return true; } UKUIDecorationManager::UKUIDecorationManager() { auto connectionThread = KWayland::Client::ConnectionThread::fromApplication(qApp); display = connectionThread->display(); struct wl_registry *registry = wl_display_get_registry(display); // get ukui_decoration_manager wl_registry_add_listener(registry, ®istry_listener, nullptr); wl_display_roundtrip(display); } kylin-video-3.1.3/src/ukui-wayland/ukui-raise-client.h0000644000175000017500000000412414214075177021305 0ustar fengfeng/* Generated by wayland-scanner 1.18.0 */ /* * Copyright (C) 2015 The Qt Company Ltd. * Contact: http://www.qt.io/licensing/ * * This file is part of the examples of the Qt Wayland module * * $QT_BEGIN_LICENSE:BSD$ * You may use this file under the terms of the BSD license as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of The Qt Company Ltd nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." * * $QT_END_LICENSE$ */ #ifndef CUSTOM_CLIENT_PROTOCOL_H1 #define CUSTOM_CLIENT_PROTOCOL_H1 #include #include #include "wayland-client.h" #ifdef __cplusplus extern "C" { #endif struct ukui_raise; struct wl_surface; extern const struct wl_interface ukui_raise_interface; #ifdef __cplusplus } #endif #endif kylin-video-3.1.3/src/ukui-wayland/ukui-decoration-client.h0000644000175000017500000001226014214075177022331 0ustar fengfeng#ifndef CUSTOM_CLIENT_PROTOCOL_H #define CUSTOM_CLIENT_PROTOCOL_H #include #include #include "wayland-client.h" #ifdef __cplusplus extern "C" { #endif /** * @page page_custom The custom protocol * @section page_ifaces_custom Interfaces * - @subpage page_iface_ukui_decoration - UKUI Wayland extension * @section page_copyright_custom Copyright *

 *
 * Copyright (C) 2015 The Qt Company Ltd.
 * Contact: http://www.qt.io/licensing/
 *
 * This file is part of the examples of the Qt Wayland module
 *
 * $QT_BEGIN_LICENSE:BSD$
 * You may use this file under the terms of the BSD license as follows:
 *
 * "Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 * * Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 * * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in
 * the documentation and/or other materials provided with the
 * distribution.
 * * Neither the name of The Qt Company Ltd nor the names of its
 * contributors may be used to endorse or promote products derived
 * from this software without specific prior written permission.
 *
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
 *
 * $QT_END_LICENSE$
 * 
*/ struct ukui_decoration; struct wl_surface; /** * @page page_iface_ukui_decoration ukui_decoration * @section page_iface_ukui_decoration_desc Description * * This example shows how to add extra functionality to Wayland * through an extension. This is the global object of the extension. * @section page_iface_ukui_decoration_api API * See @ref iface_ukui_decoration. */ /** * @defgroup iface_ukui_decoration The ukui_decoration interface * * This example shows how to add extra functionality to Wayland * through an extension. This is the global object of the extension. */ extern const struct wl_interface ukui_decoration_interface; #define UKUI_DECORATION_MOVE_SURFACE 0 #define UKUI_DECORATION_SET_UKUI_DECORATION_MODE 1 #define UKUI_DECORATION_SET_UNITY_BORDER_RADIUS 2 /** * @ingroup iface_ukui_decoration */ #define UKUI_DECORATION_MOVE_SURFACE_SINCE_VERSION 1 /** * @ingroup iface_ukui_decoration */ #define UKUI_DECORATION_SET_UKUI_DECORATION_MODE_SINCE_VERSION 1 /** * @ingroup iface_ukui_decoration */ #define UKUI_DECORATION_SET_UNITY_BORDER_RADIUS_SINCE_VERSION 1 /** @ingroup iface_ukui_decoration */ static inline void ukui_decoration_set_user_data(struct ukui_decoration *ukui_decoration, void *user_data) { wl_proxy_set_user_data((struct wl_proxy *) ukui_decoration, user_data); } /** @ingroup iface_ukui_decoration */ static inline void * ukui_decoration_get_user_data(struct ukui_decoration *ukui_decoration) { return wl_proxy_get_user_data((struct wl_proxy *) ukui_decoration); } static inline uint32_t ukui_decoration_get_version(struct ukui_decoration *ukui_decoration) { return wl_proxy_get_version((struct wl_proxy *) ukui_decoration); } /** @ingroup iface_ukui_decoration */ static inline void ukui_decoration_destroy(struct ukui_decoration *ukui_decoration) { wl_proxy_destroy((struct wl_proxy *) ukui_decoration); } /** * @ingroup iface_ukui_decoration * * Inform the compositor that the client has a new surface that is * covered by the extension. */ static inline void ukui_decoration_move_surface(struct ukui_decoration *ukui_decoration, struct wl_surface *surface) { wl_proxy_marshal((struct wl_proxy *) ukui_decoration, UKUI_DECORATION_MOVE_SURFACE, surface); } /** * @ingroup iface_ukui_decoration * * The compositor should perform a move animation on the surface. */ static inline void ukui_decoration_set_ukui_decoration_mode(struct ukui_decoration *ukui_decoration, struct wl_surface *surface, uint32_t mode) { wl_proxy_marshal((struct wl_proxy *) ukui_decoration, UKUI_DECORATION_SET_UKUI_DECORATION_MODE, surface, mode); } /** * @ingroup iface_ukui_decoration * * The compositor should perform a move animation on the surface. */ static inline void ukui_decoration_set_unity_border_radius(struct ukui_decoration *ukui_decoration, struct wl_surface *surface, uint32_t topleft, uint32_t topright, uint32_t bottomleft, uint32_t bottomright) { wl_proxy_marshal((struct wl_proxy *) ukui_decoration, UKUI_DECORATION_SET_UNITY_BORDER_RADIUS, surface, topleft, topright, bottomleft, bottomright); } #ifdef __cplusplus } #endif #endif kylin-video-3.1.3/src/ukui-wayland/waylanddialog.h0000644000175000017500000000227614214075177020600 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef WAYLANDDIALOG_H #define WAYLANDDIALOG_H #include #include "ukui-decoration-client.h" #include "ukui-decoration-manager.h" namespace Ui { class WaylandDialog; } class WaylandDialog : public QDialog { Q_OBJECT public: explicit WaylandDialog(QWidget *parent = nullptr); ~WaylandDialog(); void setText(QString text); private: Ui::WaylandDialog *ui; }; #endif // WAYLANDDIALOG_H kylin-video-3.1.3/src/ukui-wayland/plasma-shell-manager.cpp0000644000175000017500000001146014214075177022301 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "plasma-shell-manager.h" #include #include #include #include static PlasmaShellManager* global_instance = nullptr; PlasmaShellManager *PlasmaShellManager::getInstance() { if (!global_instance) global_instance = new PlasmaShellManager; return global_instance; } bool PlasmaShellManager::setAppWindowActive() { if (!supportPlasmaWindowManagement()) return false; m_appWindow->requestActivate(); return true; } bool PlasmaShellManager::setAppWindowKeepAbove(bool keep) { if (!supportPlasmaWindowManagement()) return false; if(keep != m_appWindow->isKeepAbove()) { m_appWindow->requestToggleKeepAbove(); } return true; } bool PlasmaShellManager::setMaximized(QWindow *window) { if (!supportShell()) return false; auto surface = KWayland::Client::Surface::fromWindow(window); if (!surface) return false; auto shellSurface = m_shell->createSurface(surface, window); if (!shellSurface) return false; shellSurface->setMaximized(); return true; } bool PlasmaShellManager::setRole(QWindow *window, KWayland::Client::PlasmaShellSurface::Role role) { if (!supportPlasmaShell()) return false; auto surface = KWayland::Client::Surface::fromWindow(window); if (!surface) return false; auto plasmaShellSurface = m_plasmaShell->createSurface(surface, window); if (!plasmaShellSurface) return false; plasmaShellSurface->setRole(role); return true; } bool PlasmaShellManager::setPos(QWindow *window, const QPoint &pos) { if (!supportPlasmaShell()) return false; auto surface = KWayland::Client::Surface::fromWindow(window); if (!surface) return false; auto plasmaShellSurface = m_plasmaShell->createSurface(surface, window); if (!plasmaShellSurface) return false; plasmaShellSurface->setPosition(pos); return true; } bool PlasmaShellManager::supportPlasmaShell() { return m_plasmaShell; } bool PlasmaShellManager::supportShell() { return m_shell; } bool PlasmaShellManager::supportPlasmaWindowManagement() { return m_windowManager && m_appWindow; } PlasmaShellManager::PlasmaShellManager(QObject *parent) : QObject(parent) { auto connection = KWayland::Client::ConnectionThread::fromApplication(qApp); auto registry = new KWayland::Client::Registry(this); registry->create(connection->display()); connect(registry, &KWayland::Client::Registry::plasmaShellAnnounced, this, [=](){ const auto interface = registry->interface(KWayland::Client::Registry::Interface::PlasmaShell); if (interface.name != 0) { m_plasmaShell = registry->createPlasmaShell(interface.name, interface.version, this); } }); connect(registry, &KWayland::Client::Registry::plasmaWindowManagementAnnounced, this, [=](){ const auto interface = registry->interface(KWayland::Client::Registry::Interface::PlasmaWindowManagement); if (interface.name != 0) { m_windowManager = registry->createPlasmaWindowManagement(interface.name, interface.version, this); } if(m_windowManager) { connect(m_windowManager, &KWayland::Client::PlasmaWindowManagement::windowCreated, [this](KWayland::Client::PlasmaWindow *window) { if(window->appId() == QApplication::applicationName()){ if(isFirstCreate) { isFirstCreate = false; m_appWindow = window; } } }); } }); connect(registry, &KWayland::Client::Registry::shellAnnounced, this, [=](){ const auto interface = registry->interface(KWayland::Client::Registry::Interface::Shell); if (interface.name != 0) { m_shell = registry->createShell(interface.name, interface.version, this); } }); registry->setup(); connection->roundtrip(); } kylin-video-3.1.3/src/imagelabel.h0000644000175000017500000000224014214075177015420 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef IMAGELABEL_H #define IMAGELABEL_H #include #include class ImageLabel : public QLabel { Q_OBJECT public: explicit ImageLabel(QWidget *parent = nullptr); ~ImageLabel(); void setTime(QString time); private: QLabel *m_labTime; QVBoxLayout *m_boxLayout; protected: void paintEvent(QPaintEvent *e); }; #endif // IMAGELABEL_H kylin-video-3.1.3/src/setupdialog.ui0000644000175000017500000002010414212620632016031 0ustar fengfeng SetUpDialog 0 0 583 443 Dialog #SetUpDialog{background-color: rgba(255, 255, 255, 0);} 0 0 0 0 0 140 0 140 16777215 0 0 0 0 0 0 54 15 Qt::Horizontal 65 20 0 0 0 0 0 0 54 16777215 54 8 8 8 16 Qt::Horizontal 382 20 0 80 16777215 80 16 24 Qt::Horizontal 216 20 Cancel OK SetupSystem QWidget
setupwidget/setupsystem.h
1
SetupPlay QWidget
setupwidget/setupplay.h
1
SetupScreenshot QWidget
setupwidget/setupscreenshot.h
1
SetupSubtitle QWidget
setupwidget/setupsubtitle.h
1
SetupVolume QWidget
setupwidget/setupvolume.h
1
SetupCodec QWidget
setupwidget/setupcodec.h
1
SetupShortcut QWidget
setupwidget/setupshortcut.h
1
kylin-video-3.1.3/src/titlewidget.h0000644000175000017500000000432214214075177015666 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef TITLEWIDGET_H #define TITLEWIDGET_H #include #define TITLE_BAR_FIXED_HEIGHT 40 class KMenu; class QLabel; class QPushButton; class TitleWidget : public QWidget { Q_OBJECT public: explicit TitleWidget(QWidget *parent = nullptr); ~TitleWidget(); int getMenuBtnX(); void setTitle(QString title, bool tip = true); void updateMaxButtonStatus(bool is_maxed); void setButtonState(bool is_available); void setMiniMode(bool mini){m_isMiniMode = mini;} void setHide(); void setShow(); void setHomePage(bool _isHomePage); signals: void sigMiniMode(); void sigMiniSize(); void sigMaxSize(); void sigShowMenu(); void sigClose(); void sigCanHide(bool); void sigDBClicked(); private: void initLayout(); void initConnect(); void resetFont(); private: QString m_fullTitle; QPushButton *btnIcon; QLabel *labTitle; QWidget *widget; KMenu *menu; QPushButton *btnMenu, *btnMiniMode, *btnMinSize, *btnMaxSize, *btnClose; bool m_isMiniMode = false, m_isHomePage = true, m_leaveState = false; protected: bool event(QEvent *e) override; void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; void resizeEvent(QResizeEvent *e) override; void mouseDoubleClickEvent(QMouseEvent *event) override; }; #endif // TITLEWIDGET_H kylin-video-3.1.3/src/systemtrayicon.h0000644000175000017500000000224714214075177016442 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SYSTEMTRAYICON_H #define SYSTEMTRAYICON_H #include class QAction; class SystemTrayIcon : public QSystemTrayIcon { Q_OBJECT public: explicit SystemTrayIcon(QObject *parent = nullptr); ~SystemTrayIcon(); void initIcon(); void initMenu(); signals: void sigQuit(); private: QMenu *menu; QAction *actQuit; }; #endif // SYSTEMTRAYICON_H kylin-video-3.1.3/src/setupdialog.cpp0000644000175000017500000002545314214075177016224 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupdialog.h" #include "ui_setupdialog.h" #include #include #include #include #include #include "global/xatom-helper.h" #include "global/globalsignal.h" #include "global/global.h" using namespace Global; SetUpDialog::SetUpDialog(QWidget *parent) : QDialog(parent), ui(new Ui::SetUpDialog) { ui->setupUi(this); initListWidget(); initStyle(); // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) slotChangeTheme(false); else slotChangeTheme(true); } else { if(g_settings->value("General/theme").toInt() == 0) slotChangeTheme(false); else slotChangeTheme(true); } initConnect(); if(isWayland) installEventFilter(this); else setModal(true); } SetUpDialog::~SetUpDialog() { delete ui; } void SetUpDialog::setIndex(int index) { ui->listWidget->setCurrentRow(index); } /** ********************************************** * 主题颜色修改 * 说明:所有需要根据主题修改颜色的控件都在此函数设置样式 * @param: is_black_theme 是否为黑色主题 *************************************************/ void SetUpDialog::slotChangeTheme(bool is_black_theme) { if(is_black_theme) { ui->page_system->setBlackTheme(); ui->page_play->setBlackTheme(); ui->page_screenshot->setBlackTheme(); ui->page_subtitle->setBlackTheme(); ui->page_volume->setBlackTheme(); ui->page_codec->setBlackTheme(); ui->page_shortcut->setBlackTheme(); ui->left->setStyleSheet("background-color:rgba(19,19,20,191)"); ui->right->setStyleSheet("#right{background-color:rgb(38,38,38);}"); ui->lab_name->setStyleSheet("color:rgb(255,255,255);"); // 设置左侧list字体颜色 for(int i=0; ilistWidget->count(); i++) { QListWidgetItem *it = ui->listWidget->item(i); it->setTextAlignment(Qt::AlignCenter); it->setSizeHint(QSize(116, 32)); it->setTextColor(QColor(249,249,249)); } ui->btn_cancel->setStyleSheet("QPushButton{background-color:rgb(64,64,64);color:rgb(255,255,255);}" /*"QPushButton:hover{background-color:rgb(80,80,80);}" "QPushButton:pressed{background-color:rgb(50,50,50);}"*/); ui->btn_ok->setStyleSheet("QPushButton{background-color:rgb(55,144,250);color:rgb(255,255,255);}" /*"QPushButton:hover{background-color:rgb(80,80,80);}" "QPushButton:pressed{background-color:rgb(50,50,50);}"*/); } else { ui->page_system->setLightTheme(); ui->page_play->setLightTheme(); ui->page_screenshot->setLightTheme(); ui->page_subtitle->setLightTheme(); ui->page_volume->setLightTheme(); ui->page_codec->setLightTheme(); ui->page_shortcut->setLightTheme(); ui->left->setStyleSheet("background-color:rgba(249,249,249,191)"); ui->right->setStyleSheet("#right{background-color:#f9f9f9;}"); ui->lab_name->setStyleSheet("color:rgb(48,49,51);"); // QFont f("Noto Sans CJK SC Regular"); // f.setPixelSize(16); // ui->listWidget->setFont(f); // 设置左侧list字体颜色 for(int i=0; ilistWidget->count(); i++) { QListWidgetItem *it = ui->listWidget->item(i); it->setTextAlignment(Qt::AlignCenter); it->setSizeHint(QSize(116, 32)); it->setTextColor(QColor(89,89,89)); } ui->btn_cancel->setStyleSheet("QPushButton{background-color:rgb(224,224,224);color:rgb(38,38,38);}" /*"QPushButton:hover{background-color:rgb(80,80,80);}" "QPushButton:pressed{background-color:rgb(50,50,50);}"*/); ui->btn_ok->setStyleSheet("QPushButton{background-color:rgb(55,144,250);color:rgb(255,255,255);}" /*"QPushButton:hover{background-color:rgb(80,80,80);}" "QPushButton:pressed{background-color:rgb(50,50,50);}"*/); } } void SetUpDialog::showEvent(QShowEvent *e) { ui->page_system->initData(); ui->page_play->initData(); ui->page_screenshot->initData(); ui->page_subtitle->initData(); ui->page_volume->initData(); resize(620, 400); // 设置模糊 KWindowEffects::enableBlurBehind(winId(), true); gshortCut->makeAllInvalid(); resetFont(); } void SetUpDialog::hideEvent(QHideEvent *e) { gshortCut->makeAllValid(); } bool SetUpDialog::eventFilter(QObject *watched, QEvent *event) { if(isWayland) { if(watched == this) { if (event->type() == QEvent::MouseButtonPress){ auto mouseEvent = static_cast(event); if (mouseEvent->buttons() & Qt::LeftButton) { UKUIDecorationManager::getInstance()->moveWindow(this->windowHandle()); } } } } return false; } void SetUpDialog::initStyle() { setFixedSize(620, 400); setAttribute(Qt::WA_TranslucentBackground); // 标题 setWindowTitle(tr("Video Player Set up")); // 左侧列表 ui->listWidget->setFixedWidth(140); ui->listWidget->setStyleSheet("QListWidget{background-color:rgba(19,19,20,0);padding:0px 5px;}" "QListWidget::Item:selected{width:116px;border-radius:6px;color:rgb(255,255,255);background-color:rgb(55,144,250);}"); ui->listWidget->setSpacing(2); // 设置默认选中左侧列表中第一个 ui->listWidget->setCurrentRow(0); ui->stackedWidget->setCurrentIndex(0); ui->btn_cancel->setFixedSize(80, 32); ui->btn_ok->setFixedSize(80, 32); ui->widget->setAttribute(Qt::WA_TranslucentBackground); ui->lab_name->setAttribute(Qt::WA_TranslucentBackground); ui->btn_icon->setFixedSize(QSize(26,26)); ui->btn_icon->setIconSize(QSize(26,26)); ui->btn_icon->setIcon(QIcon::fromTheme("kylin-video")); ui->btn_icon->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); ui->lab_name->setFont(f); ui->lab_name->setText(tr("Setup")); ui->btn_close->setFixedSize(30, 30); ui->btn_close->setProperty("isWindowButton", 0x2); ui->btn_close->setProperty("useIconHighlightEffect", 0x8); ui->btn_close->setFlat(true); ui->btn_close->setIcon(QIcon::fromTheme("window-close-symbolic")); connect(ui->btn_close, &QPushButton::clicked, [&](){accept();}); // 添加窗管协议 if(!isWayland) { MotifWmHints hints; hints.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints.functions = MWM_FUNC_ALL; hints.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints); } resetFont(); } /** ********************************************** * 初始化左侧列表 *************************************************/ void SetUpDialog::initListWidget() { ui->listWidget->addItem(tr("System")); ui->listWidget->addItem(tr("Play")); ui->listWidget->addItem(tr("ScreenShot")); ui->listWidget->addItem(tr("Subtitle")); ui->listWidget->addItem(tr("Audio")); ui->listWidget->addItem(tr("Codec")); // 当前解码器选择功能先不做实现 ui->listWidget->addItem(tr("Shortcut")); } void SetUpDialog::initConnect() { // 主题改变 connect(g_user_signal, &GlobalUserSignal::sigTheme, this, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) slotChangeTheme(false); else slotChangeTheme(true); break; case 1: slotChangeTheme(false); break; case 2: slotChangeTheme(true); break; default: break; } }); connect(g_gsettings, &QGSettings::changed, this, [&](QString key){ // 如果不是跟随主题的话直接返回,0是跟随主题 if (key == "styleName") { if(g_settings->value("General/follow_system_theme").toInt()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) slotChangeTheme(false); else slotChangeTheme(true); } } // 字体大小改变 if (key == "systemFontSize" || key == "systemFont") { resetFont(); } }); connect(ui->listWidget, &QListWidget::currentRowChanged, [&](int index){ui->stackedWidget->setCurrentIndex(index);}); connect(ui->btn_cancel, &QPushButton::clicked, [&](){ui->page_shortcut->clearChange();gsetup->clearChange();accept();}); connect(ui->btn_ok, &QPushButton::clicked, [&](){ui->page_shortcut->flushChange();gsetup->flushChange();accept();}); } void SetUpDialog::resetFont() { QString fontFamily = g_gsettings->get("systemFont").toString(); int fontSize = g_gsettings->get("systemFontSize").toInt(); ui->page_system->setWidgetFont(fontFamily, fontSize); ui->page_codec->setWidgetFont(fontFamily, fontSize); ui->page_play->setWidgetFont(fontFamily, fontSize); ui->page_subtitle->setWidgetFont(fontFamily, fontSize); ui->page_shortcut->setWidgetFont(fontFamily, fontSize); ui->page_volume->setWidgetFont(fontFamily, fontSize); ui->page_screenshot->setWidgetFont(fontFamily, fontSize); QFont f(fontFamily); f.setPointSize(fontSize); ui->listWidget->setFont(f); f.setPointSize(fontSize + 2); ui->lab_name->setFont(f); } kylin-video-3.1.3/src/playglwidget.cpp0000644000175000017500000001377014214075177016377 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "playglwidget.h" #include #include #include #include #include #include #include "global/globalsignal.h" #include "global/global.h" #include "elog.h" #define LOG_TAG "playGL" using namespace Global; static void *get_proc_address(void *ctx, const char *name) { Q_UNUSED(ctx); QOpenGLContext *glctx = QOpenGLContext::currentContext(); if (!glctx) return NULL; return (void *)glctx->getProcAddress(QByteArray(name)); } PlayGLWidget::PlayGLWidget(QWidget *parent, Qt::WindowFlags f) : QWidget(parent, f)/*, m_scale(1.0), m_mouseUsed(true), m_isMouseEnter(false), hasVideo(false)*/ { // setlocale(LC_NUMERIC, "C"); // setMouseTracking(true); // initGlobalSig(); // m_checkMouseTimer = new QTimer; // m_checkMouseTimer->setInterval(2000); // connect(m_checkMouseTimer, &QTimer::timeout, [&](){ // if(!hasVideo) // return; // if(m_isMouseEnter) { // if (m_mouseUsed) // setCursor(QCursor(Qt::BlankCursor)); // } // g_user_signal->hideBar(true); // m_checkMouseTimer->stop(); // return; // }); // m_lMouseClickTimer = new QTimer; // m_lMouseClickTimer->setInterval(300); // connect(m_lMouseClickTimer, &QTimer::timeout, [&](){ // g_user_signal->playWidgetClick(); // m_lMouseClickTimer->stop(); // }); // mpv_gl = nullptr; // m_fpsTimer = new QTimer; // m_fpsTimer->setInterval(500); } PlayGLWidget::~PlayGLWidget() { // makeCurrent(); // if (mpv_gl) // mpv_opengl_cb_set_update_callback(mpv_gl, NULL, NULL); // mpv_opengl_cb_uninit_gl(mpv_gl); } #if 0 void PlayGLWidget::setMouseUsed(bool used) { m_mouseUsed = used; if (!m_mouseUsed) { setCursor(QCursor(Qt::ArrowCursor)); m_checkMouseTimer->stop(); } } void PlayGLWidget::on_update(void *ctx) { QMetaObject::invokeMethod((PlayGLWidget*)ctx, "update"); } void PlayGLWidget::initMpvGL() { return; if(mpv_h) { mpv_gl = (mpv_opengl_cb_context *)mpv_get_sub_api(mpv_h, MPV_SUB_API_OPENGL_CB); if (!mpv_gl) { log_e("OpenGL not compiled in!"); qDebug("OpenGL not compiled in!"); } mpv_opengl_cb_set_update_callback(mpv_gl, PlayGLWidget::on_update, (void *)this); // connect(this, &PlayGLWidget::frameSwapped, this, &PlayGLWidget::swapped); } } void PlayGLWidget::swapped() { // mpv_opengl_cb_report_flip(mpv_gl, 0); } void PlayGLWidget::initGlobalSig() { connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [&](Mpv::PlayState state){ m_state = state; if(m_state < 0) { m_checkMouseTimer->stop(); } else { m_checkMouseTimer->start(); if(!isWayland) { // wayland 下高分辨适配不生效,所以 wayland 下默认 1 倍缩放就可以,如果 wayland 下窗口适配缩放后再去掉判断 QGSettings g("org.ukui.SettingsDaemon.plugins.xsettings"); m_scale = g.get("scaling-factor").toDouble(); } } }); connect(g_core_signal, &GlobalCoreSignal::sigVideoIdChange, [&](int vid){ if(vid < 0) hasVideo = false; else hasVideo = true; }); } #if 0 void PlayGLWidget::initializeGL() { if(mpv_gl) { int r = mpv_opengl_cb_init_gl(mpv_gl, NULL, get_proc_address, NULL); if (r < 0) { log_e("could not initialize OpenGL"); qDebug("could not initialize OpenGL"); } } } #endif #if 0 static int f_count = 0; static qint64 s_time = 0; void PlayGLWidget::paintGL() { /****************** fps计算 ********************/ if(f_count == 0) s_time = QDateTime::currentMSecsSinceEpoch(); f_count++; if(f_count > 10) { g_core_signal->notify10FrameUseTime(QDateTime::currentMSecsSinceEpoch() - s_time); f_count = 0; } if(mpv_gl) { if(m_state==Mpv::Playing || m_state==Mpv::Paused) { // mpv_opengl_cb_draw(mpv_gl, defaultFramebufferObject(), width()*m_scale, -height()*m_scale); } } } #endif void PlayGLWidget::mousePressEvent(QMouseEvent *e) { if (!m_mouseUsed) return; if(e->buttons() == Qt::RightButton) { m_isMouseEnter = false; g_user_signal->showRightMenu(); } else if(e->buttons() == Qt::LeftButton) m_lMouseClickTimer->start(); } void PlayGLWidget::mouseMoveEvent(QMouseEvent *e) { m_isMouseEnter = true; m_checkMouseTimer->stop(); if (cursor().shape() != Qt::ArrowCursor) { setCursor(QCursor(Qt::ArrowCursor)); } g_user_signal->hideBar(false); if(m_state > 0) m_checkMouseTimer->start(); } void PlayGLWidget::mouseDoubleClickEvent(QMouseEvent *e) { if (!m_mouseUsed) return; if(e->buttons() == Qt::LeftButton) { g_user_signal->fullScreen(); m_lMouseClickTimer->stop(); } } void PlayGLWidget::enterEvent(QEvent *e) { m_isMouseEnter = true; } void PlayGLWidget::leaveEvent(QEvent *e) { m_isMouseEnter = false; if(m_state > 0) m_checkMouseTimer->start(); } #endif kylin-video-3.1.3/src/mediainfodialog.ui0000644000175000017500000000467214212620632016640 0ustar fengfeng MediaInfoDialog 0 0 376 352 Dialog 5 26 26 26 26 media info Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Qt::Horizontal 281 20 background-color: rgba(255, 255, 255, 0); Qt::Horizontal 40 20 ok kylin-video-3.1.3/src/titlewidget.cpp0000644000175000017500000002020414214075177016216 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "titlewidget.h" #include #include #include #include #include #include #include #include "global/xatom-helper.h" #include "global/global.h" #include "kmenu.h" using namespace Global; TitleWidget::TitleWidget(QWidget *parent) : QWidget(parent) { initLayout(); initConnect(); setAttribute(Qt::WA_TranslucentBackground, true); } TitleWidget::~TitleWidget() { } int TitleWidget::getMenuBtnX() { return btnMenu->x(); } void TitleWidget::setTitle(QString title, bool tip) { m_fullTitle = title; QFontMetrics fontWidth(labTitle->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_fullTitle, Qt::ElideRight, labTitle->width() < 720 ? 720 : labTitle->width());//最大宽度150像素 labTitle->setText(show_name); if (tip) labTitle->setToolTip(m_fullTitle); else labTitle->setToolTip(""); } /** ************************************************************************ * 更新最大化按钮图标 ***************************************************************************/ void TitleWidget::updateMaxButtonStatus(bool _isMaxed) { if (_isMaxed) { btnMaxSize->setIcon(QIcon::fromTheme("window-restore-symbolic")); btnMaxSize->setToolTip(tr("Restore")); } else { btnMaxSize->setIcon(QIcon::fromTheme("window-maximize-symbolic")); btnMaxSize->setToolTip(tr("Maximize")); } btnMaxSize->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); } void TitleWidget::setButtonState(bool _isAvailable) { btnMinSize->setVisible(_isAvailable); btnMaxSize->setVisible(_isAvailable); if(!m_isHomePage) btnMiniMode->setVisible(_isAvailable); } void TitleWidget::setHide() { hide(); } void TitleWidget::setShow() { if(!m_isMiniMode) show(); } void TitleWidget::setHomePage(bool _isHomePage) { m_isHomePage = _isHomePage; btnMiniMode->setVisible(!_isHomePage); } void TitleWidget::initLayout() { // 标题栏没有主题适配,黑白主题都是黑底白字 setFixedHeight(TITLE_BAR_FIXED_HEIGHT); // menu = new KMenu(parentWidget()); menu = new KMenu; widget = new QWidget(this); widget->setObjectName("widget"); // 渐变背景 widget->setStyleSheet("#widget{background-color:qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 rgba(19, 19, 20, 77), stop:1 rgba(255, 255, 255, 0));}"); QHBoxLayout *h = new QHBoxLayout(this); h->setContentsMargins(0,0,0,0); h->addWidget(widget); QHBoxLayout *hb = new QHBoxLayout(widget); btnIcon = new QPushButton; btnIcon->setFixedSize(QSize(26, 26)); btnIcon->setIconSize(QSize(26, 26)); btnIcon->setIcon(QIcon::fromTheme("kylin-video")); btnIcon->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); hb->addWidget(btnIcon); labTitle = new QLabel; labTitle->setStyleSheet("color:#ffffff;"); hb->addWidget(labTitle); hb->setStretchFactor(labTitle, 1); labTitle->setText(tr("Video Player")); hb->setContentsMargins(8, 0, 4, 0); btnMenu = new QPushButton; hb->addWidget(btnMenu); btnMenu->setFixedSize(30, 30); btnMenu->setProperty("isOptionButton", true); btnMenu->setProperty("isWindowButton", 0x1); btnMenu->setProperty("useIconHighlightEffect", 0x2); btnMenu->setFlat(true); btnMenu->setIcon(QIcon::fromTheme("open-menu-symbolic")); btnMenu->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); btnMenu->setToolTip(tr("Menu")); btnMiniMode = new QPushButton; hb->addWidget(btnMiniMode); btnMiniMode->setFixedSize(30, 30); btnMiniMode->setProperty("isOptionButton", true); btnMiniMode->setProperty("isWindowButton", 0x1); btnMiniMode->setProperty("useIconHighlightEffect", 0x2); btnMiniMode->setFlat(true); btnMiniMode->setIcon(QIcon::fromTheme("ukui-mini")); btnMiniMode->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); btnMiniMode->setVisible(false); btnMiniMode->setToolTip(tr("Mini mode")); btnMinSize = new QPushButton; hb->addWidget(btnMinSize); btnMinSize->setFixedSize(30, 30); btnMinSize->setProperty("isWindowButton", 0x1); btnMinSize->setProperty("useIconHighlightEffect", 0x2); btnMinSize->setFlat(true); btnMinSize->setIcon(QIcon::fromTheme("window-minimize-symbolic")); btnMinSize->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); btnMinSize->setToolTip(tr("Minimize")); btnMaxSize = new QPushButton; hb->addWidget(btnMaxSize); btnMaxSize->setFixedSize(30, 30); btnMaxSize->setProperty("isWindowButton", 0x1); btnMaxSize->setProperty("useIconHighlightEffect", 0x2); btnMaxSize->setFlat(true); btnMaxSize->setIcon(QIcon::fromTheme("window-maximize-symbolic")); btnMaxSize->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); btnMaxSize->setToolTip(tr("Maximize")); btnClose = new QPushButton; hb->addWidget(btnClose); btnClose->setFixedSize(30, 30); btnClose->setProperty("isWindowButton", 0x2); btnClose->setProperty("useIconHighlightEffect", 0x8); btnClose->setFlat(true); btnClose->setIcon(QIcon::fromTheme("window-close-symbolic")); btnClose->setProperty("setIconHighlightEffectDefaultColor", QColor(Qt::white)); btnClose->setToolTip(tr("Close")); resetFont(); } void TitleWidget::initConnect() { connect(btnClose, &QPushButton::clicked, [this](){emit sigClose();}); connect(btnMaxSize, &QPushButton::clicked, [this](){emit sigMaxSize();}); connect(btnMinSize, &QPushButton::clicked, [this](){emit sigMiniSize();}); connect(btnMiniMode, &QPushButton::clicked, [this](){emit sigMiniMode();}); connect(btnMenu, &QPushButton::clicked, [this](){emit sigShowMenu();}); connect(g_gsettings, &QGSettings::changed, [this](QString key){ if (key == "systemFontSize" || key == "systemFont") resetFont(); }); } void TitleWidget::resetFont() { QString fontFamily = g_gsettings->get("systemFont").toString(); int fontSize = g_gsettings->get("systemFontSize").toInt(); QFont f(fontFamily); f.setPointSize(fontSize); labTitle->setFont(f); QFontMetrics fontWidth(labTitle->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_fullTitle, Qt::ElideRight, labTitle->width() < 720 ? 720 : labTitle->width());//最大宽度150像素 labTitle->setText(show_name); } bool TitleWidget::event(QEvent *e) { return QWidget::event(e); } void TitleWidget::enterEvent(QEvent *e) { if(m_leaveState) { m_leaveState = false; emit sigCanHide(false); } } void TitleWidget::leaveEvent(QEvent *e) { m_leaveState = true; emit sigCanHide(true); } void TitleWidget::resizeEvent(QResizeEvent *e) { QFontMetrics fontWidth(labTitle->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_fullTitle, Qt::ElideRight, labTitle->width() < 720 ? 720 : labTitle->width()); labTitle->setText(show_name); } void TitleWidget::mouseDoubleClickEvent(QMouseEvent *event) { if(event->button() == Qt::LeftButton) emit sigMaxSize(); } kylin-video-3.1.3/src/previewwidget.h0000644000175000017500000000324714214075177016233 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PREVIEWWIDGET_H #define PREVIEWWIDGET_H #include #include #include "global/global.h" #include using namespace ffmpegthumbnailer; namespace Ui { class PreviewWidget; } class PreviewWidget : public QWidget { Q_OBJECT public: explicit PreviewWidget(QWidget *parent = nullptr); ~PreviewWidget(); void setHide(); void setPreview(int time); void setMoveRange(int range){moveRange = range;} void setBlackTheme(); void setLightTheme(); private: Ui::PreviewWidget *ui; QString currentFile; int videoStream = -1; int duration; int previewTime = 0; int moveRange = 1; signals: void updatePreview(); private slots: void slotFileInfoChange(Mpv::FileInfo info); void updatePos(); protected: std::mutex mux; VideoThumbnailer *m_videoTbr; }; #endif // PREVIEWWIDGET_H kylin-video-3.1.3/src/contralbar.h0000644000175000017500000000616114214075177015473 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef CONTRALBAR_H #define CONTRALBAR_H #include #include "core/mpvtypes.h" class QSlider; class QListWidget; class FilletWidget; class PreviewWidget; class QPropertyAnimation; namespace Ui { class ContralBar; } class ContralBar : public QWidget { Q_OBJECT public: explicit ContralBar(QWidget *parent = nullptr); ~ContralBar(); void setDuration(int duration); void setCurrentTime(int currentTime); void setPreviewSize(QSize size); void setMiniMode(bool b){m_isMiniMode = b;} void setHide(); void setShow(); void setBlackTheme(); void setLightTheme(); public slots: void clearMark(); void addMark(int mark_pos, QString desc); void insertMark(int mark_pos, QString desc); // 正在播放时插入书签 void deleteMark(int mark_pos); private: Ui::ContralBar *ui; QString m_theme; double m_duration, m_currentTime; int64_t m_lastPreviewShowTime; int m_seekTime; int m_volume; int m_videoId; double m_speed; bool m_isVideo, m_isMute, m_isChangeTime, m_isFullScreen, m_isMouseEnter, m_isMiniMode, m_isSeeking, m_canChangeDuration; Mpv::PlayState m_state; QTimer *m_seekTimer; QTimer *m_timerVolumeWidgetHide; QTimer *m_timerSpeedWidgetHide; QTimer *m_timerToolWidgetHide; QSlider *m_volumeSlider; FilletWidget *m_volumeWidget; QListWidget *m_speedList; FilletWidget *m_speedWidget; QListWidget *m_toolList; FilletWidget *m_toolWidget; PreviewWidget *m_previewWidget; QPropertyAnimation *m_showAnm; QPropertyAnimation *m_hideAnm; QMap m_markMap; void initGlobalSig(); void initStyle(); void initConnect(); void initAnimation(); void initSpeedList(); void initToolList(); void updateIcon(); signals: void sigFullScreen(bool); void sigCanHide(bool); protected: bool eventFilter(QObject *target, QEvent *event); void moveEvent(QMoveEvent *event); void enterEvent(QEvent *event); void leaveEvent(QEvent *event); void showEvent(QShowEvent *event); private slots: void on_btn_play_pause_clicked(); void slotFullScreen(); void slotMute(); void slotShowPreview(int time); void slotPlayStateChange(Mpv::PlayState state); }; #endif // CONTRALBAR_H kylin-video-3.1.3/src/aboutdialog.cpp0000644000175000017500000001562214214075177016173 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "aboutdialog.h" #include "ui_aboutdialog.h" #include #include #include #include #include #include "global/global.h" #include "global/globalsignal.h" #include "global/xatom-helper.h" using namespace Global; AboutDialog::AboutDialog(QWidget *parent) : QDialog(parent), ui(new Ui::AboutDialog) { ui->setupUi(this); setWindowFlags(windowFlags() | Qt::Tool); // 字体设置 QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); // ui->label_name->setFont(f); ui->label_3->setFont(f); ui->label_4->setFont(f); ui->textBrowser->setFont(f); f.setFamily("Noto Sans CJK SC Medium"); f.setPixelSize(18); ui->label_2->setFont(f); connect(ui->btn_close, &QPushButton::clicked, [&](){close();}); ui->label_3->setText(QString("

%0

").arg(tr("version: ").append("3.1.1"))); ui->label_4->setText(tr("service and support: ").append("
support@kylinos.cn")); connect(ui->label_4, SIGNAL(linkActivated(QString)), this, SLOT(slotOpenUrl(QString))); initStyle(); if(isWayland) installEventFilter(this); else setModal(true); } AboutDialog::~AboutDialog() { delete ui; } void AboutDialog::setBlackTheme() { setStyleSheet("#AboutDialog{background-color:#1F2022}" "#textBrowser{background-color:#1F2022}"); ui->label_2->setStyleSheet("color:#f0f0f0"); ui->label_3->setStyleSheet("color:#d9d9d9"); ui->label_4->setStyleSheet("color:#d9d9d9"); ui->textBrowser->setStyleSheet("background-color:rgba(0,0,0,0);color:#d9d9d9"); ui->label_4->setText(tr("Service & Support: ") + "" "support@kylinos.cn"); } void AboutDialog::setLightTheme() { setStyleSheet("#AboutDialog{background-color:#ffffff}" "#textBrowser{background-color:#ffffff}"); ui->label_2->setStyleSheet("color:#262626"); ui->label_3->setStyleSheet("color:#595959"); ui->label_4->setStyleSheet("color:#595959"); ui->textBrowser->setStyleSheet("color:#595959"); ui->label_4->setText(tr("Service & Support: ") + "" "support@kylinos.cn"); } void AboutDialog::initStyle() { setWindowTitle(tr("Video Player About")); setWindowFlags(windowFlags()&~Qt::WindowMaximizeButtonHint); ui->btn_icon->setFixedSize(QSize(30,30)); ui->btn_icon->setIconSize(QSize(30,30)); ui->btn_icon->setIcon(QIcon::fromTheme("kylin-video")); ui->btn_icon->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); ui->btn_logo->setFixedSize(QSize(96,96)); ui->btn_logo->setIconSize(QSize(96,96)); ui->btn_logo->setIcon(QIcon::fromTheme("kylin-video")); ui->btn_logo->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); ui->label_title->setText(tr("Video Player")); ui->btn_close->setFixedSize(30, 30); ui->btn_close->setProperty("isWindowButton", 0x2); ui->btn_close->setProperty("useIconHighlightEffect", 0x8); ui->btn_close->setFlat(true); ui->btn_close->setIcon(QIcon::fromTheme("window-close-symbolic")); ui->textBrowser->setFrameShape(QFrame::NoFrame); if(!isWayland) { // 添加窗管协议 MotifWmHints hints; hints.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints.functions = MWM_FUNC_ALL; hints.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints); } // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); } void AboutDialog::showEvent(QShowEvent *e) { // 设置模糊 KWindowEffects::enableBlurBehind(winId(), true); QDialog::showEvent(e); } bool AboutDialog::eventFilter(QObject *watched, QEvent *event) { if(isWayland) { if(watched == this) { if (event->type() == QEvent::MouseButtonPress){ auto mouseEvent = static_cast(event); if (mouseEvent->buttons() & Qt::LeftButton) { UKUIDecorationManager::getInstance()->moveWindow(this->windowHandle()); } } } } return false; } void AboutDialog::slotOpenUrl(QString u) { QUrl url(u); QDesktopServices::openUrl(url); } kylin-video-3.1.3/src/ffutil.h0000644000175000017500000000273414214075177014637 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef FFUTIL_H #define FFUTIL_H #include #include using namespace ffmpegthumbnailer; struct AVCodec; struct AVCodecContext; struct AVFormatContext; class FFUtil : public QObject { Q_OBJECT public: explicit FFUtil(QObject *parent = nullptr); ~FFUtil(); int open(QString _file); int getDuration(); void close(); void saveIFrame(QString _savePath); private: QString m_fileName; VideoThumbnailer *m_videoTbr; AVFormatContext *pFormatCtx; AVCodecContext *pCodecCtx; AVCodec *pCodec; int videoStream; int videoDuration; int fitTime(int _duration); signals: }; #endif // FFUTIL_H kylin-video-3.1.3/src/playlistwidget.cpp0000644000175000017500000015363714214075177016757 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "playlistwidget.h" #include "ui_playlistwidget.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "ukui-log4qt.h" #include "global/functions.h" #include "global/extensions.h" #include "global/global.h" #include "global/paths.h" #include "ukui-wayland/waylanddialog.h" #include "kmenu.h" #include "ffutil.h" #include "playlist.h" #include "imagelabel.h" #include "messagebox.h" #include "tipwidget/tipwidget.h" #include "elog.h" #define LOG_TAG "playlist" qint64 tests, teste; using namespace Global; using namespace KylinUI; PlayListWidget::PlayListWidget(QWidget *parent) : QWidget(parent), ui(new Ui::PlayListWidget) { ui->setupUi(this); setMaximumWidth(330); initStackedWidget(); // QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->list_title->setFont(f); m_isShow = false; m_isMouseEnter = false; initMenu(); // 设置展开按钮属性和样式 ui->btn_left->setCursor(Qt::PointingHandCursor); ui->btn_left->setFixedSize(16, 80); m_playListWidget->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);}"); m_markListWidget->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);}"); m_playListWidget->verticalScrollBar()->setProperty("drawScrollBarGroove", false); m_markListWidget->verticalScrollBar()->setProperty("drawScrollBarGroove", false); initConnection(); ui->top->setFixedHeight(48); ui->btn_order->setFixedSize(16, 16); ui->btn_order->setCursor(Qt::PointingHandCursor); // 切换列表视图按钮 ui->btn_view->setFixedSize(16, 16); ui->btn_view->setCursor(Qt::PointingHandCursor); // 播放列表视图模式 if(!g_settings->contains("General/list_view")) g_settings->setValue("General/list_view", 0); m_mode = (ListViewMode)g_settings->value("General/list_view").toInt(); ui->btn_add->setFixedSize(16, 16); ui->btn_add->setCursor(Qt::PointingHandCursor); ui->btn_delete->setFixedSize(16, 16); ui->btn_delete->setCursor(Qt::PointingHandCursor); m_playListWidget->setSpacing(0); m_playListWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); m_markListWidget->setSpacing(0); m_markListWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); initDefaultWidget(); ui->list_title->setFlow(QListView::LeftToRight); ui->list_title->addItems(QStringList() << tr("Video") << tr("Marks")); for(int i=0; ilist_title->count(); i++) { QListWidgetItem *it = ui->list_title->item(i); it->setTextAlignment(Qt::AlignCenter); it->setSizeHint(QSize(50, 24)); } ui->list_title->setFixedWidth(130); ui->list_title->setCurrentRow(0); ui->list_title->setSpacing(0); ui->list_title->setFixedHeight(30); ui->list_title->setStyleSheet("QListWidget{background-color: rgba(1,1,1,0);border-radius:10px;}" "QListWidget::item{border-radius:12px;color:#A6A6A6;}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}" "QListWidget::item::hover{background-color:#f5f5f5;}"); connect(ui->list_title, &QListWidget::currentRowChanged, [this](int currentRow){ if (currentRow == 1) { ui->btn_add->hide(); } else { ui->btn_add->show(); } if (currentRow == 0) { currentRow = m_itemMap.size() == 0 ? 2 : 0; } ui->stackedWidget->setCurrentIndex(currentRow); ui->widget_btnline->move(ui->widget_2->width() / 4 - ui->widget_btnline->width() / 2 + currentRow * (ui->widget_2->width() / 2), 0); }); ui->widget_btnline->setFixedSize(24, 4); ui->widget_btnline->setStyleSheet("border-top-left-radius:3px;" "border-top-right-radius:3px;" "background-color:#3790FA;"); ui->widget_btnline->move(ui->widget_2->width() / 4 - ui->widget_btnline->width() / 2, 0); // 设置悬停提示 ui->btn_add->setToolTip(tr("Add file")); ui->btn_delete->setToolTip(tr("Clear list")); setAttribute(Qt::WA_TranslucentBackground); initPlayList(); initAnimation(); initGlobalSig(); { // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } // 更新按钮图标 updateOrderIcon(); updateViewIcon(); updateAddIcon(); updateDeleteIcon(); } } PlayListWidget::~PlayListWidget() { delete ui; } /** ************************************************************************ * 显示菜单 ***************************************************************************/ void PlayListWidget::showItemMenu(QString file) { m_selectedFile = file; if (QGuiApplication::focusWindow()) m_itemMenu->exec(QPoint(QCursor::pos(QGuiApplication::focusWindow()->screen()) + QPoint(1,1))); } /** ************************************************************************ * 添加播放列表条目 * @param: * playItem : 添加到列表 ***************************************************************************/ void PlayListWidget::addItem(PlayItem playItem) { std::lock_guard lg(m_itemAddMux); PlayListItem *itemWidget = new PlayListItem; connect(itemWidget, &PlayListItem::sigExistsStateChange, this, [this](QString path, bool exist){ if (exist) m_playList->setAvaliable(path); else m_playList->setNotAvaliable(path); }); connect(itemWidget, &PlayListItem::sigRightBPressed, this, &PlayListWidget::showItemMenu, Qt::QueuedConnection); QListWidgetItem *listItem = new QListWidgetItem; switch (m_mode) { case LIST: listItem->setSizeHint(QSize(314, 40)); break; case VIEW: listItem->setSizeHint(QSize(314, 74)); break; default: break; } m_playListWidget->addItem(listItem); m_playListWidget->setItemWidget(listItem, itemWidget); m_itemMap[playItem.m_filePath] = listItem; itemWidget->setData(playItem.m_filePath, playItem.m_duration, playItem.m_lastStopTime, playItem.m_previewPath); // 样式播放列表视图改变 connect(itemWidget, &PlayListItem::sigValChange, [this, listItem](int _val){ listItem->setSizeHint(QSize(m_playListWidget->width(), _val+20)); }); itemWidget->setMode(m_mode); itemWidget->setObjectName(playItem.m_filePath); itemWidget->installEventFilter(this); if (ui->list_title->currentRow() == 0 && ui->stackedWidget->currentIndex() == 2) { ui->stackedWidget->setCurrentIndex(0); } } void PlayListWidget::deleteItem(QString _file) { if(m_itemMap.find(_file) != m_itemMap.end()) { m_playListWidget->itemWidget(m_itemMap[_file])->removeEventFilter(this); delete m_playListWidget->itemWidget(m_itemMap[_file]); m_playListWidget->removeItemWidget(m_itemMap[_file]); if(m_itemMap[_file]) delete m_itemMap[_file]; m_itemMap.remove(_file); } if (m_itemMap.size() == 0 && ui->stackedWidget->currentIndex() == 0 && ui->list_title->currentRow() == 0) { ui->stackedWidget->setCurrentIndex(2); } } void PlayListWidget::clearList() { // 如果列表为空就不要弹出对话框了 if(m_playList->getSize() == 0) return; MessageBox box(tr("Video Player"), tr("Are you sure you want to clear the list?"), nullptr, KylinUI::QUESTION); int res = box.exec(); if (res == QDialog::Accepted ) { if(m_playList->getPlayState() > 0) { MessageBox box1(tr("Video Player"), tr("The file being played will be stopped."), nullptr, KylinUI::QUESTION); res = box1.exec(); } if (res == QDialog::Accepted) { m_playList->clearList(); if (ui->list_title->currentRow() == 0) { ui->stackedWidget->setCurrentIndex(2); } } } } void PlayListWidget::updateMarks(QVector markvec) { clearMark(); for (MarkItem mark : markvec) { MarkListItem *item = new MarkListItem; connect(item, &MarkListItem::sigDeleteMark, this, &PlayListWidget::deleteMark); connect(item, &MarkListItem::sigPlayAndSeek, [this](QString file_path, int pos) { if (file_path == m_currentPlayingFile) { g_user_signal->seek(pos); } else { g_user_signal->stop(); g_user_signal->play(); g_user_signal->open(file_path, pos); } }); item->setData(mark.m_filePath, mark.m_duration, mark.m_markPos, mark.m_describe, mark.m_previewPath); item->setMode(m_mode); if (!mark.m_fileExit) { item->setNotExit(mark.m_filePath); } QListWidgetItem *widgetItem = new QListWidgetItem; switch (m_mode) { case LIST: widgetItem->setSizeHint(QSize(m_markListWidget->width(), 56)); break; case VIEW: widgetItem->setSizeHint(QSize(m_markListWidget->width(), 74)); break; default: break; } m_markListWidget->addItem(widgetItem); m_markListWidget->setItemWidget(widgetItem, item); if (!mark.m_fileExit) { item->setNotExit(mark.m_filePath); } } } void PlayListWidget::deleteMark(QString filepath, int pos) { for (int i=0; icount(); i++) { QListWidgetItem *item = m_markListWidget->item(i); if (((MarkListItem*)m_markListWidget->itemWidget(item))->getPos() == pos && ((MarkListItem*)m_markListWidget->itemWidget(item))->getFilePath() == filepath) { // 删除数据库数据,应该交给playlist处理,不要在界面处理 m_playList->deleteMark(((MarkListItem*)m_markListWidget->itemWidget(item))->getFilePath(), pos); // 删除界面 delete m_markListWidget->itemWidget(item); // 删除 item m_markListWidget->removeItemWidget(item); delete item; } } } void PlayListWidget::clearMark() { while (m_markListWidget->count()) { QListWidgetItem *item = m_markListWidget->item(0); // 隐藏就不会出发 leaveEvent 了,不然可能会导致崩溃 m_markListWidget->itemWidget(item)->hide(); delete m_markListWidget->itemWidget(item); m_markListWidget->removeItemWidget(item); delete item; } } // 重新加载缩略图 void PlayListWidget::reloadView(QString file) { std::lock_guard lg(m_itemAddMux); QMap tmp_map(m_itemMap); if(tmp_map.find(file) != tmp_map.end()) { ((PlayListItem*)m_playListWidget->itemWidget(tmp_map[file]))->reloadView(); } } void PlayListWidget::resetDuration(QString file, int duration) { std::lock_guard lg(m_itemAddMux); QMap tmp_map(m_itemMap); if(tmp_map.find(file) != tmp_map.end()) { ((PlayListItem*)m_playListWidget->itemWidget(tmp_map[file]))->setDuration(duration); } } void PlayListWidget::slotShow() { if (ui->list_title->currentRow() == 0) ui->stackedWidget->setCurrentIndex(m_itemMap.size() == 0 ? 2 : 0); if(pos().x() == ((QWidget*)parent())->width() - width()) return; raise(); m_hideAnm->stop(); m_showAnm->setStartValue(geometry()); m_showAnm->setEndValue(QRect(((QWidget*)parent())->width() - width(), 0, width(), height())); m_showAnm->start(); } void PlayListWidget::slotHide() { if(pos().x() == ((QWidget*)parent())->width() - 16) return; m_showAnm->stop(); m_hideAnm->setStartValue(geometry()); m_hideAnm->setEndValue(QRect(((QWidget*)parent())->width() - 16, 0, width(), height())); m_hideAnm->start(); // 隐藏的时候把所有 item 中 x 都隐藏了 for(QListWidgetItem* t_item : m_itemMap) ((PlayListItem*)m_playListWidget->itemWidget(t_item))->setLeave(); } void PlayListWidget::setShowButton(bool show) { if (show) { ui->btn_left->show(); } else { ui->btn_left->hide(); } } void PlayListWidget::updateShowIcon() { m_showAnm->stop(); m_hideAnm->stop(); m_isShow = true; QString icoDir; if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) icoDir = "ico_light"; else icoDir = "ico"; } else { if(g_settings->value("General/theme").toInt() == 0) icoDir = "ico_light"; else icoDir = "ico"; } ui->btn_left->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/icon-cbl2-d.png);}" "QPushButton:hover{border-image: url(:/%1/icon-cbl2-h.png);}" "QPushButton:pressed{border-image: url(:/%1/icon-cbl2-h.png);}") .arg(icoDir)); ui->btn_left->show(); } void PlayListWidget::updateHideIcon() { m_showAnm->stop(); m_hideAnm->stop(); m_isShow = false; QString icoDir; if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) icoDir = "ico_light"; else icoDir = "ico"; } else { if(g_settings->value("General/theme").toInt() == 0) icoDir = "ico_light"; else icoDir = "ico"; } ui->btn_left->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/icon-cbl1-d.png);}" "QPushButton:hover{border-image: url(:/%1/icon-cbl1-h.png);}" "QPushButton:pressed{border-image: url(:/%1/icon-cbl1-h.png);}") .arg(icoDir)); // 列表隐藏之后需要显示标题栏和控制栏 g_user_signal->hideBar(false); } /** ********************************************** * 删除可用索引 * 描述:当播放器打开情况下,播放列表中文件从硬盘中删除 * @param: _file 要删除的文件名 *************************************************/ void PlayListWidget::delAvailableIndex(QString _file) { m_playList->setNotAvaliable(_file); // 不存在的话播放下一首 g_user_signal->playNext(false); } /** ********************************************** * 修改视图模式 *************************************************/ void PlayListWidget::changeListViewMode() { if(m_mode == LIST) { m_mode = VIEW; ui->btn_view->setToolTip(tr("Preview view")); int count = m_playListWidget->count(); for(int i=0; iitemWidget(m_playListWidget->item(i)))->toBig(); count = m_markListWidget->count(); for (int i=0; iitemWidget(m_markListWidget->item(i)))->setMode(VIEW); m_markListWidget->item(i)->setSizeHint(QSize(m_markListWidget->width(), 74)); } } else { m_mode = LIST; ui->btn_view->setToolTip(tr("List view")); int count = m_playListWidget->count(); for(int i=0; iitemWidget(m_playListWidget->item(i)))->toSmall(); count = m_markListWidget->count(); for (int i=0; iitemWidget(m_markListWidget->item(i)))->setMode(LIST); m_markListWidget->item(i)->setSizeHint(QSize(m_markListWidget->width(), 56)); } } g_settings->setValue("General/list_view", (int)m_mode); updateViewIcon(); } /** ********************************************** * 设置当前索引 * @param: _index 索引 *************************************************/ void PlayListWidget::setPlayIndex(int _index) { // 其他都设置为非选中状态 selectNone(); if (_index >= 0 && _index < m_itemMap.size()) ((PlayListItem*)m_playListWidget->itemWidget(m_playListWidget->item(_index)))->setSelected(true); } void PlayListWidget::selectNone() { for (auto item:m_itemMap) ((PlayListItem*)m_playListWidget->itemWidget(item))->setSelected(false); } void PlayListWidget::setBlackTheme() { m_theme = STYLE_UKUI_BLACK; ui->right->setStyleSheet("#right{background-color: rgba(13, 13, 14, 220);" "border-top-left-radius:12px;" "border-bottom-left-radius:12px;}"); if(m_isShow) ui->btn_left->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/icon-cbl2-d.png);}" "QPushButton:hover{border-image: url(:/ico/icon-cbl2-h.png);}" "QPushButton:pressed{border-image: url(:/ico/icon-cbl2-h.png);}"); else ui->btn_left->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/icon-cbl1-d.png);}" "QPushButton:hover{border-image: url(:/ico/icon-cbl1-h.png);}" "QPushButton:pressed{border-image: url(:/ico/icon-cbl1-h.png);}"); } void PlayListWidget::setLightTheme() { m_theme = STYLE_UKUI_DEFAULT; ui->right->setStyleSheet("#right{background-color: rgba(249, 249, 249, 220);" "border-top-left-radius:12px;" "border-bottom-left-radius:12px;}"); if(m_isShow) ui->btn_left->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/icon-cbl2-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/icon-cbl2-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/icon-cbl2-h.png);}"); else ui->btn_left->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/icon-cbl1-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/icon-cbl1-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/icon-cbl1-h.png);}"); } void PlayListWidget::gSettingChanged(QString key) { // 如果不是跟随主题的话直接返回 if (key == "styleName") { if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); updateOrderIcon(); updateViewIcon(); updateAddIcon(); updateDeleteIcon(); } } else if (key == "systemFontSize" || key == "systemFont") { // 字体改变 QString fontFamily = g_gsettings->get("systemFont").toString(); int fontSize = g_gsettings->get("systemFontSize").toInt(); QFont f(fontFamily); f.setPointSize(fontSize); for (auto item : m_itemMap) { ((PlayListItem*)m_playListWidget->itemWidget(item))->setWidgetFont(f); } for (int i=0; icount(); i++) { ((MarkListItem*)m_markListWidget->itemWidget(m_markListWidget->item(i)))->setWidgetFont(f); } } } void PlayListWidget::initMenu() { m_itemMenu = new PlayListItemMenu(nullptr); connect(m_itemMenu, &PlayListItemMenu::sigClearList, [this](){ clearList(); }); connect(m_itemMenu, &PlayListItemMenu::sigRemoveSelect, [this](){ m_playList->deleteFile(m_selectedFile); }); connect(m_itemMenu, &PlayListItemMenu::sigRemoveInvalid, [this](){ // 删除不可用文件 m_playList->deleteInvalidItems(); }); connect(m_itemMenu, &PlayListItemMenu::sigOpenFolder, [this](){ QProcess p; p.start("peony -i \"" + m_selectedFile + "\""); p.waitForFinished(); #if 0 QFileInfo fi(m_selectedFile); QString path = fi.absolutePath(); if(!QDesktopServices::openUrl(QUrl::fromLocalFile(path))) { // 文件夹打开失败 log_e("openfile %s error!", path.toStdString().c_str()); } #endif }); } void PlayListWidget::initStackedWidget() { m_playListWidget = new QListWidget; m_markListWidget = new QListWidget; m_playListWidget->setFixedWidth(width() - 16); m_markListWidget->setFixedWidth(width() - 16); ui->stackedWidget->addWidget(m_playListWidget); ui->stackedWidget->addWidget(m_markListWidget); initDefaultWidget(); } void PlayListWidget::initPlayList() { m_playList = new PlayList; connect(m_playList, &PlayList::itemAdded, this, &PlayListWidget::addItem); connect(m_playList, &PlayList::sigIndexChange, this, &PlayListWidget::setPlayIndex); connect(m_playList, &PlayList::itemDelete, this, &PlayListWidget::deleteItem); connect(m_playList, &PlayList::sigReloadView, this, &PlayListWidget::reloadView); connect(m_playList, &PlayList::sigResetDuration,this, &PlayListWidget::resetDuration); connect(m_playList, &PlayList::sigMarkUpdate, this, &PlayListWidget::updateMarks); m_playList->initData(); ui->stackedWidget->setCurrentIndex(2); } /** ********************************************** * 初始化全局信号 *************************************************/ void PlayListWidget::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigShowPlayList, [&](){ if(m_isShow) slotHide(); else slotShow(); }); connect(g_user_signal, &GlobalUserSignal::sigHideBar, [&](bool _isHide){ if(_isHide) if(m_isMouseEnter) setCursor(QCursor(Qt::ArrowCursor)); }); connect(g_user_signal, &GlobalUserSignal::sigPlayOrder, [&](PlayOrder _order){ m_playOrder = _order; updateOrderIcon(); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int _theme){ switch (_theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } updateOrderIcon(); updateViewIcon(); updateAddIcon(); updateDeleteIcon(); }); connect(g_core_signal, &GlobalCoreSignal::sigFileNotExist, this, &PlayListWidget::delAvailableIndex, Qt::QueuedConnection); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, this, [this](Mpv::FileInfo fi){ m_currentPlayingFile = fi.file_path; }); connect(g_core_signal, &GlobalCoreSignal::sigFileLoadedError, this, [this](QString file){ m_playList->setNotAvaliable(file); if (m_isShow) TipWidget::showTip(tr("Load file error!"), 1000, QSize(150, 40), m_playListWidget, TipWidget::WARNING); else TipWidget::showTip(tr("Load file error!"), 1000, QSize(150, 40), parentWidget(), TipWidget::WARNING); }); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, this, [this](Mpv::PlayState state){ if (state == Mpv::Stopped) { selectNone(); } }); } /** ********************************************** * 初始化显示隐藏动画 *************************************************/ void PlayListWidget::initAnimation() { m_showAnm = new QPropertyAnimation(this, "geometry"); m_showAnm->setDuration(300); m_showAnm->setEasingCurve(QEasingCurve::OutCubic); connect(m_showAnm, &QPropertyAnimation::finished, this, &PlayListWidget::updateShowIcon); m_hideAnm = new QPropertyAnimation(this, "geometry"); m_hideAnm->setDuration(300); m_hideAnm->setEasingCurve(QEasingCurve::OutCubic); connect(m_hideAnm, &QPropertyAnimation::finished, this, &PlayListWidget::updateHideIcon); } void PlayListWidget::initConnection() { connect(ui->btn_add, &QPushButton::clicked, [](){ g_user_signal->selectFile(); }); connect(ui->btn_view, &QPushButton::clicked, this, &PlayListWidget::changeListViewMode); connect(g_gsettings, &QGSettings::changed, this, &PlayListWidget::gSettingChanged); connect(ui->btn_left, &QPushButton::clicked, [&](){g_user_signal->showPlayList();}); connect(ui->btn_order, &QPushButton::clicked, [&](){ // 点击之后直接切换播放模式 switch (m_playOrder) { case ONE_LOOP: m_playOrder = LIST_LOOP; break; case LIST_LOOP: m_playOrder = RANDOM; break; case RANDOM: m_playOrder = ONE_LOOP; break; default: break; } g_user_signal->setPlayOrder(m_playOrder); }); connect(ui->btn_delete, &QPushButton::clicked, [&](){ clearList(); }); } void PlayListWidget::initDefaultWidget() { // 默认占位符 QWidget *defaultWidget = new QWidget; QVBoxLayout *ly = new QVBoxLayout(defaultWidget); ly->addStretch(2); QHBoxLayout *hb = new QHBoxLayout; QWidget *pic = new QWidget; pic->setFixedSize(120, 120); pic->setStyleSheet("border-image:url(:/ico/list-home.png);"); hb->addStretch(); hb->addWidget(pic); hb->addStretch(); ly->addLayout(hb); QLabel *text = new QLabel; text->setStyleSheet("color:#8C8C8C;"); ly->addWidget(text); text->setAlignment(Qt::AlignCenter); text->setText(tr("Please add file to list ~")); ly->addStretch(3); // defaultWidget->show(); ui->stackedWidget->addWidget(defaultWidget); } /** ********************************************** * 更新播放顺序按钮图标 *************************************************/ void PlayListWidget::updateOrderIcon() { QString icon_file = ""; switch(m_playOrder) { case ONE_LOOP: icon_file = "media-playlist-repeat-one"; ui->btn_order->setToolTip(tr("One loop")); break; case SEQUENCE: icon_file = "media-playlist-repeat-list"; ui->btn_order->setToolTip(tr("Sequential")); break; case LIST_LOOP: icon_file = "media-playlist-repeat-loop"; ui->btn_order->setToolTip(tr("List loop")); break; case RANDOM: icon_file = "media-playlist-repeat-radom"; ui->btn_order->setToolTip(tr("Random")); break; } if(m_theme == STYLE_UKUI_DEFAULT) ui->btn_order->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/ico_light/%1-b.png);}" "QPushButton:hover{border-image: url(:/ico_light/%1-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/%1-h.png);}") .arg(icon_file)); else ui->btn_order->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/ico/%1-b.png);}" "QPushButton:hover{border-image: url(:/ico/%1-h.png);}" "QPushButton:pressed{border-image: url(:/ico/%1-h.png);}") .arg(icon_file)); } void PlayListWidget::updateViewIcon() { QString ico_name; if(m_mode == LIST) ico_name = "icon-list-symbolic"; else ico_name = "icon-grid-symbolic"; if(m_theme == STYLE_UKUI_DEFAULT) ui->btn_view->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/ico_light/%1-b.png);}" "QPushButton:hover{border-image: url(:/ico_light/%1-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/%1-h.png);}").arg(ico_name)); else ui->btn_view->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/ico/%1-b.png);}" "QPushButton:hover{border-image: url(:/ico/%1-h.png);}" "QPushButton:pressed{border-image: url(:/ico/%1-h.png);}").arg(ico_name)); } void PlayListWidget::updateAddIcon() { if(m_theme == STYLE_UKUI_DEFAULT) ui->btn_add->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/list-add-symbolic-b.png);}" "QPushButton:hover{border-image: url(:/ico_light/list-add-symbolic-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/list-add-symbolic-h.png);}"); else ui->btn_add->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/list-add-symbolic-b.png);}" "QPushButton:hover{border-image: url(:/ico/list-add-symbolic-h.png);}" "QPushButton:pressed{border-image: url(:/ico/list-add-symbolic-h.png);}"); } void PlayListWidget::updateDeleteIcon() { if(m_theme == STYLE_UKUI_DEFAULT) ui->btn_delete->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/icon-delect-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/icon-delect-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/icon-delect-h.png);}"); else ui->btn_delete->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/icon-delect-d.png);}" "QPushButton:hover{border-image: url(:/ico/icon-delect-h.png);}" "QPushButton:pressed{border-image: url(:/ico/icon-delect-h.png);}"); } bool PlayListWidget::eventFilter(QObject *watched, QEvent *event) { if(m_itemMap.find(watched->objectName()) != m_itemMap.end() && m_isShow) { #if 0 if(event->type() == QEvent::MouseButtonDblClick) { // 双击之后播放该条目 需要判断文件是否存在 if(!((PlayListItem*)watched)->getExist()) { // 文件不存在就不要播放了 弹窗告诉文件不存在 if (isWayland) { MessageBox box(tr("Video Player"), tr("File not exist!"), nullptr); box.exec(); } else { TipWidget::showTip(tr("File not exist!"), 1000, QSize(150, 40), m_playListWidget, TipWidget::WARNING); } return false; } // 再次判断文件是否存在 QFileInfo fi(watched->objectName()); if (!fi.exists()) { if (isWayland) { MessageBox box(tr("Video Player"), tr("File not exist!"), nullptr); box.exec(); } else { TipWidget::showTip(tr("File not exist!"), 1000, QSize(150, 40), m_playListWidget, TipWidget::WARNING); } // 借用一下 core 的信号 m_playList->setNotAvaliable(watched->objectName()); return false; } // 双击播放要先停止不然已知播放下一首 双击处理处理 )))))))))))))))))) g_user_signal->stop(); g_user_signal->play(); g_user_signal->open(watched->objectName()); } #endif // 进入显示删除按钮,离开隐藏删除按钮 PlayListItem* t_item = (PlayListItem*)m_playListWidget->itemWidget(m_itemMap[watched->objectName()]); if(event->type() == QEvent::Enter) { if(t_item != nullptr) t_item->setEnter(); } else if(event->type() == QEvent::Leave) { if(t_item != nullptr) t_item->setLeave(); } } return QWidget::eventFilter(watched, event); } void PlayListWidget::enterEvent(QEvent *e) { m_isMouseEnter = true; setCursor(Qt::ArrowCursor); } void PlayListWidget::leaveEvent(QEvent *e) { m_isMouseEnter = false; } void PlayListWidget::moveEvent(QMoveEvent *event) { emit sigMove(parentWidget()->width() - 16 - x()); } PlayListItem::PlayListItem(QWidget *parent) : QWidget(parent) { m_isSelected = false; m_isExist = true; setStyleSheet("background-color:rgba(1,1,1,0);"); m_labIcon = new QLabel; m_labIcon->setFixedSize(16, 16); m_labIcon->setPixmap(QPixmap(":/ico/play1_h_3x.png").scaled(m_labIcon->size())); // 播放列表预览框 m_labPreview = new ImageLabel; m_labPreview->setFixedSize(0,0); // 占位用 m_labSpacing = new QLabel; m_labSpacing->setFixedWidth(10); m_labSpacing->setStyleSheet("background-color:rgba(1,1,1,0);"); m_labName = new QLabel; // m_labName->setMaximumWidth(190); // QFont f_name("Noto Sans CJK SC Regular"); // f_name.setPixelSize(14); // m_labName->setFont(f_name); m_labDuration = new QLabel; m_labDuration->setAlignment(Qt::AlignRight | Qt::AlignVCenter); // QFont f_duration("Noto Sans CJK SC Regular"); // f_duration.setPixelSize(14); // m_labDuration->setFont(f_duration); initDeleteButton(); QHBoxLayout *lay = new QHBoxLayout(this); lay->setContentsMargins(16, 5, 25, 5); lay->setSpacing(0); lay->addWidget(m_labIcon); lay->addWidget(m_labPreview); lay->addWidget(m_labSpacing); lay->addWidget(m_labName); lay->addStretch(); lay->addWidget(m_labDuration); lay->addWidget(m_btnDelete); if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int _theme){ switch (_theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); m_labIcon->hide(); m_btnDelete->hide(); initAnimation(); } PlayListItem::~PlayListItem() { delete m_labIcon; delete m_labName; delete m_labPreview; delete m_labSpacing; delete m_labDuration; delete m_btnDelete; delete m_pixmapPreview; delete layout(); } /** ********************************************** * 设置选中状态 * 说明:选状状态改变主要为图标显示和字体颜色改变 * @param:s 选中状态 *************************************************/ void PlayListItem::setSelected(bool s) { m_isSelected = s; if (m_isSelected) { // 如果设置为选中说明文件存在 m_isExist = true; // 如果是预览模式的话不需要显示三角形图标 if(m_mode == LIST) m_labIcon->show(); setFontColor(FONT_COLOR_SELECTED); } else { m_labIcon->hide(); if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); else if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } } /** ********************************************** * 设置内容 * @param:_file 文件名称(非全路径) * @param:_duration 媒体时长 * @param:_lastTime 上次停止时间 * @param:_viewPath 预览文件路径 *************************************************/ void PlayListItem::setData(QString _file, int _duration, int _lastTime, QString _viewPath) { m_tip = _file; // 判断文件是否存在 QFileInfo t_fi(_file); if(!t_fi.exists()) slotNotExit(_file); // 判断预览文件是否存在,不存在设置默认 m_viewPath = _viewPath; QFileInfo t_fi_view(_viewPath); if(t_fi_view.exists() && t_fi_view.size() != 0) m_pixmapPreview = new QPixmap(_viewPath); else m_pixmapPreview = new QPixmap(":/ico/no-preview.png"); m_showName = _file.split("/").last(); QFontMetrics fontWidth(m_labName->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_showName, Qt::ElideRight, m_labName->width());//最大宽度150像素 m_labName->setText(show_name); m_labDuration->setText(Functions::timeToStr((double)_duration)); m_labPreview->setTime(Functions::timeToStr((double)_duration)); connect(g_core_signal, &GlobalCoreSignal::sigFileNotExist, this, &PlayListItem::slotNotExit, Qt::QueuedConnection); setToolTip(QString("%1").arg(_file)); } void PlayListItem::setDuration(int duration) { m_labDuration->setText(Functions::timeToStr((double)duration)); m_labPreview->setTime(Functions::timeToStr((double)duration)); } void PlayListItem::setEnter() { m_btnDelete->show(); m_labDuration->hide(); } void PlayListItem::setLeave() { m_btnDelete->hide(); if (m_mode == LIST) m_labDuration->show(); } void PlayListItem::toBig() { if(m_mode == VIEW) return; m_mode = VIEW; m_labSpacing->show(); #if 0 m_anmToSmall->stop(); m_anmToBig->start(); #else setMode(VIEW); #endif m_labIcon->hide(); } void PlayListItem::toSmall() { if(m_mode == LIST) return; m_mode = LIST; m_labSpacing->hide(); #if 0 m_anmToBig->stop(); m_anmToSmall->start(); #else setMode(LIST); if(m_isSelected) m_labIcon->show(); #endif } void PlayListItem::setMode(ListViewMode _mode) { m_mode = _mode; switch (m_mode) { case LIST: m_labName->setMaximumWidth(190); m_labPreview->setFixedSize(0, 0); // m_labDuration->setFixedSize(66, 20); m_labDuration->show(); m_labSpacing->hide(); break; case VIEW: m_labName->setMaximumWidth(146); m_labPreview->setFixedSize(80, 54); // m_labDuration->setFixedSize(0, 20); m_labDuration->hide(); m_labSpacing->show(); break; default: break; } updateNameShow(); m_labPreview->setPixmap((*m_pixmapPreview).scaled(80, 54)); emit sigValChange(m_labPreview->height() < 20 ? 20 : m_labPreview->height()); } void PlayListItem::setBlackTheme() { if(m_isSelected) return; m_btnDelete->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-h.png);}" "QPushButton:hover{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-w.png);}" "QPushButton:pressed{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-w.png);}"); if(m_isExist) { m_labName->setStyleSheet("color:#d9d9d9;"); m_labDuration->setStyleSheet("color:#d9d9d9;"); } } void PlayListItem::setLightTheme() { if(m_isSelected) return; m_btnDelete->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-h.png);}" "QPushButton:hover{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-w.png);}" "QPushButton:pressed{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-w.png);}"); if(m_isExist) { if(m_labDuration) m_labDuration->setStyleSheet("color:#262626;"); if(m_labName) m_labName->setStyleSheet("color:#262626;"); } } void PlayListItem::setWidgetFont(const QFont &f) { m_labName->setFont(f); m_labDuration->setFont(f); updateNameShow(); } void PlayListItem::slotNotExit(QString file) { if(file != m_tip) return; // 打开的文件不存在 文件名置灰 m_isExist = false; setFontColor("#A6A6A6"); } /** * 重新加载预览图 ********/ void PlayListItem::reloadView() { QFileInfo t_fi_view(m_viewPath); if(t_fi_view.exists() && t_fi_view.size() != 0) m_pixmapPreview = new QPixmap(m_viewPath); else m_pixmapPreview = new QPixmap(":/ico/no-preview.png"); m_labPreview->setPixmap((*m_pixmapPreview).scaled(80, 54)); } /** ********************************************** * 初始化删除按钮 *************************************************/ void PlayListItem::initDeleteButton() { m_btnDelete = new QPushButton; m_btnDelete->setFixedSize(16, 16); m_btnDelete->setCursor(Qt::PointingHandCursor); connect(m_btnDelete, &QPushButton::clicked, this, &PlayListItem::deleteItem); } /** ********************************************** * 初始化列表视图变化动画 *************************************************/ void PlayListItem::initAnimation() { m_anmToBig = new QVariantAnimation(this); m_anmToBig->setDuration(AnmationDuration); m_anmToBig->setStartValue(0); m_anmToBig->setEndValue(300); connect(m_anmToBig, &QVariantAnimation::valueChanged, [&](QVariant _value){ double val = _value.toDouble(); m_labName->setMaximumWidth(190-0.147*val); m_labPreview->setFixedSize(val*0.26667, val*0.18); m_labDuration->setFixedWidth(66 - val*0.22); updateNameShow(); emit sigValChange(m_labPreview->height()); }); m_anmToSmall = new QVariantAnimation(this); m_anmToSmall->setDuration(AnmationDuration); m_anmToSmall->setStartValue(0); m_anmToSmall->setEndValue(300); connect(m_anmToSmall, &QVariantAnimation::valueChanged, [&](QVariant _value){ double val = _value.toDouble(); m_labName->setMaximumWidth(146+0.147*val); m_labPreview->setFixedSize(80-val*0.26667, 54-val*0.18); m_labDuration->setFixedWidth(val*0.22); updateNameShow(); if(m_labPreview->height() < 20) emit sigValChange(20); else emit sigValChange(m_labPreview->height()); }); connect(m_anmToSmall, &QVariantAnimation::finished, [&](){ // 如果是选中状态的话显示播放按钮 if(m_isSelected) m_labIcon->show(); }); } void PlayListItem::updateNameShow() { QFontMetrics fontWidth(m_labName->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_showName, Qt::ElideRight, m_labName->maximumWidth());//最大宽度150像素 m_labName->setText(show_name); } /** ********************************************** * 设置字体(主要为颜色) * @param: color 字体颜色 * 格式:"rgb(1,1,1)" *************************************************/ void PlayListItem::setFontColor(QString color) { if(color == "") { m_labName->setStyleSheet(""); m_labDuration->setStyleSheet(""); } else { m_labName->setStyleSheet(QString("color:").append(color)); m_labDuration->setStyleSheet(QString("color:").append(color)); } } /** ********************************************** * 点击 x 按钮 *************************************************/ void PlayListItem::deleteItem() { if(m_isSelected) { // 正在播放的是本条 需要关闭 g_user_signal->play(); g_user_signal->stop(); } // 删除条目 告诉别人删除的绝对路径就行 g_user_signal->deleteListItem(m_tip); } void PlayListItem::mousePressEvent(QMouseEvent *e) { if(e->button() == Qt::RightButton) { // 右击之后需要弹出菜单,并且告诉谁被点击的 emit sigRightBPressed(m_tip); } } void PlayListItem::mouseDoubleClickEvent(QMouseEvent *e) { // 判断文件是否存在,每次点击都去判断一下,这样更准确,只有在双击的时候才会去刷新状态,不会主动刷新 QFileInfo fi(m_tip); if (!fi.exists()) { TipWidget::showTip(tr("File not exist!"), 1000, QSize(150, 40), parentWidget(), TipWidget::WARNING); emit sigExistsStateChange(m_tip, false); m_isExist = false; setFontColor("#A6A6A6"); return; } emit sigExistsStateChange(m_tip, true); m_isExist = true; g_user_signal->stop(); g_user_signal->play(); g_user_signal->open(m_tip, 0); } MarkListItem::MarkListItem(QWidget *parent) : QWidget(parent) { initStyle(); m_needSeekToPos = false; m_fileExit = true; if (g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, this, [&](QString key){ // 如果不是跟随主题的话直接返回 if (key == "styleName") { if (g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } } }); connect(g_user_signal, &GlobalUserSignal::sigTheme, this, [&](int _theme){ switch (_theme) { case 0: if (g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, this, [this](Mpv::FileInfo info) { m_currentPlayingFile = info.file_path; // 是否双击书签打开的文件,如果是双击书签打开的需要跳转到书签位置 if (m_needSeekToPos) { g_user_signal->seek(m_markPos); m_needSeekToPos = false; } }, Qt::QueuedConnection); connect(g_core_signal, &GlobalCoreSignal::sigFileNotExist, this, &MarkListItem::setNotExit, Qt::QueuedConnection); } MarkListItem::~MarkListItem() { if (m_pixmapPreview) delete m_pixmapPreview; if (m_labPreview) delete m_labPreview; if (m_labFilePath) delete m_labFilePath; if (m_labDuration) delete m_labDuration; if (m_labMarkPos) delete m_labMarkPos; if (m_vlay) delete m_vlay; if (m_hlay) delete m_hlay; if (m_dp) delete m_dp; if (m_btnDelete) delete m_btnDelete; m_pixmapPreview = nullptr; m_labPreview = nullptr; m_labFilePath = nullptr; m_labDuration = nullptr; m_labMarkPos = nullptr; m_vlay = nullptr; m_hlay = nullptr; m_dp = nullptr; m_btnDelete = nullptr; } void MarkListItem::setData(QString path, int duration, int pos, QString desc, QString preview) { m_tooltip = path; m_fileName = path.split("/").last(); m_labDuration->setText(Functions::timeToStr((double)duration)); m_labPreview->setTime(Functions::timeToStr((double)duration)); m_labMarkPos->setText(Functions::timeToStr((double)pos)); m_labFilePath->setText(m_fileName); m_markPos = pos; m_describe = desc; // 加载预览图 QFile file_view(preview); if(file_view.exists()) m_pixmapPreview = new QPixmap(preview); else m_pixmapPreview = new QPixmap(":/ico/no-preview.png"); } void MarkListItem::setMode(ListViewMode mode) { m_mode = mode; switch (m_mode) { case LIST: m_labFilePath->setMaximumWidth(190); m_labPreview->setFixedSize(0, 54); // m_labDuration->setFixedWidth(66); m_labDuration->show(); m_hlay->setContentsMargins(8, 1, 20, 1); break; case VIEW: m_labFilePath->setMaximumWidth(150); m_labPreview->setFixedSize(80, 54); // m_labDuration->setFixedWidth(0); m_labDuration->hide(); m_hlay->setContentsMargins(16, 10, 20, 10); break; default: break; } updateNameShow(); m_labPreview->setPixmap((*m_pixmapPreview).scaled(80, 54)); } void MarkListItem::setEnter() { m_labDuration->hide(); m_btnDelete->show(); } void MarkListItem::setLeave() { m_btnDelete->hide(); if (m_mode == LIST) m_labDuration->show(); } void MarkListItem::setWidgetFont(QFont f) { m_labDuration->setFont(f); m_labFilePath->setFont(f); m_labMarkPos->setFont(f); updateNameShow(); } void MarkListItem::setNotExit(QString file) { if (file != m_tooltip) { return; } m_fileExit = false; setFontColor("#A6A6A6"); } void MarkListItem::setFontColor(QString color) { if(color == "") { m_labFilePath->setStyleSheet(""); m_labDuration->setStyleSheet(""); m_labMarkPos->setStyleSheet(""); } else { m_labFilePath->setStyleSheet(QString("color:").append(color)); m_labDuration->setStyleSheet(QString("color:").append(color)); m_labMarkPos->setStyleSheet(QString("color:").append(color)); } } void MarkListItem::setBlackTheme() { m_btnDelete->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-h.png);}" "QPushButton:hover{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-w.png);}" "QPushButton:pressed{background-color:rgba(255,255,255,0);border-image:url(:/ico/cha-w.png);}"); } void MarkListItem::setLightTheme() { m_btnDelete->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-h.png);}" "QPushButton:hover{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-w.png);}" "QPushButton:pressed{background-color:rgba(255,255,255,0);border-image:url(:/ico_light/cha-w.png);}"); } void MarkListItem::initStyle() { m_labFilePath = new QLabel; m_labMarkPos = new QLabel; m_labDuration = new QLabel; m_labPreview = new ImageLabel; m_btnDelete = new QPushButton; m_dp = new QWidget; connect(m_btnDelete, &QPushButton::clicked, [this](){ emit sigDeleteMark(m_tooltip, m_markPos); }); m_btnDelete->setFixedSize(16, 16); m_btnDelete->setCursor(Qt::PointingHandCursor); m_vlay = new QVBoxLayout(m_dp); m_vlay->setSpacing(4); m_vlay->setContentsMargins(0, 0, 0, 0); m_vlay->addStretch(); m_vlay->addWidget(m_labFilePath); m_vlay->addWidget(m_labMarkPos); m_vlay->addStretch(); m_hlay = new QHBoxLayout(this); m_hlay->setContentsMargins(16, 10, 20, 10); m_hlay->addWidget(m_labPreview); m_hlay->addWidget(m_dp); m_hlay->addStretch(); m_hlay->addWidget(m_labDuration); m_hlay->addWidget(m_btnDelete); m_btnDelete->hide(); } void MarkListItem::updateNameShow() { QFontMetrics fontWidth(m_labFilePath->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_fileName, Qt::ElideRight, m_labFilePath->maximumWidth());//最大宽度150像素 m_labFilePath->setText(show_name); } void MarkListItem::mousePressEvent(QMouseEvent *e) { if(e->button() == Qt::RightButton) { // 右击之后需要弹出菜单,并且告诉谁被点击的 emit sigRightBtnPressed(m_markPos); } } void MarkListItem::mouseDoubleClickEvent(QMouseEvent *e) { if (e->button() == Qt::LeftButton) { if (!m_fileExit) { if (isWayland) { MessageBox box(tr("Video Player"), tr("File not exist!"), nullptr); box.exec(); } else { TipWidget::showTip(tr("File not exist!"), 1000, QSize(150, 40), parentWidget(), TipWidget::WARNING); } return; } // 播放并跳转 emit sigPlayAndSeek(m_tooltip, m_markPos); m_needSeekToPos = true; } } void MarkListItem::leaveEvent(QEvent *e) { if (m_labDuration && m_mode == LIST) m_labDuration->show(); if (m_btnDelete) m_btnDelete->hide(); return QWidget::leaveEvent(e); } void MarkListItem::enterEvent(QEvent *e) { if (m_labDuration) m_labDuration->hide(); if (m_btnDelete) m_btnDelete->show(); return QWidget::enterEvent(e); } kylin-video-3.1.3/src/eventpasswidget.cpp0000644000175000017500000000702714215020236017100 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "eventpasswidget.h" #include #include #include #include "global/globalsignal.h" #include "global/global.h" using namespace Global; EventPassWidget::EventPassWidget(QWidget *parent) : QWidget(parent) { setAttribute(Qt::WA_TranslucentBackground); setMouseTracking(true); m_mouseUsed = true; initGlobalSig(); m_checkMouseTimer = new QTimer; m_checkMouseTimer->setInterval(2000); connect(m_checkMouseTimer, &QTimer::timeout, [&](){ if(!m_hasVideo) return; if(m_isMouseEnter) { if (m_mouseUsed) setCursor(QCursor(Qt::BlankCursor)); } g_user_signal->hideBar(true); m_checkMouseTimer->stop(); return; }); m_lMouseClickTimer = new QTimer; m_lMouseClickTimer->setInterval(300); connect(m_lMouseClickTimer, &QTimer::timeout, [&](){ emit mousePressed(); m_lMouseClickTimer->stop(); }); } void EventPassWidget::setMouseUsed(bool used) { m_mouseUsed = used; if (!m_mouseUsed) { setCursor(QCursor(Qt::ArrowCursor)); m_checkMouseTimer->stop(); } } void EventPassWidget::playStateChange(Mpv::PlayState state) { m_playState = state; if(m_playState < 0) { m_checkMouseTimer->stop(); } else { m_checkMouseTimer->start(); } } void EventPassWidget::videIdChange(int vid) { if(vid < 0) m_hasVideo = false; else m_hasVideo = true; } void EventPassWidget::initGlobalSig() { connect(g_core_signal, &GlobalCoreSignal::sigStateChange, this, &EventPassWidget::playStateChange); connect(g_core_signal, &GlobalCoreSignal::sigVideoIdChange, this, &EventPassWidget::videIdChange); } void EventPassWidget::mousePressEvent(QMouseEvent *e) { if (e->buttons() == Qt::RightButton) { m_isMouseEnter = false; g_user_signal->showRightMenu(); } else if (e->buttons() == Qt::LeftButton) { if (!m_mouseUsed) return; m_lMouseClickTimer->start(); } } void EventPassWidget::mouseMoveEvent(QMouseEvent *e) { m_isMouseEnter = true; m_checkMouseTimer->stop(); if (cursor().shape() != Qt::ArrowCursor) { setCursor(QCursor(Qt::ArrowCursor)); } g_user_signal->hideBar(false); if(m_playState > 0) m_checkMouseTimer->start(); } void EventPassWidget::mouseDoubleClickEvent(QMouseEvent *e) { if (!m_mouseUsed) return; if(e->buttons() == Qt::LeftButton) { g_user_signal->fullScreen(); m_lMouseClickTimer->stop(); } } void EventPassWidget::enterEvent(QEvent *e) { m_isMouseEnter = true; } void EventPassWidget::leaveEvent(QEvent *e) { m_isMouseEnter = false; if(m_playState > 0) m_checkMouseTimer->start(); } kylin-video-3.1.3/src/aboutdialog.h0000644000175000017500000000247214214075177015637 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef ABOUTDIALOG_H #define ABOUTDIALOG_H #include namespace Ui { class AboutDialog; } class AboutDialog : public QDialog { Q_OBJECT public: explicit AboutDialog(QWidget *parent = nullptr); ~AboutDialog(); void setBlackTheme(); void setLightTheme(); private: Ui::AboutDialog *ui; void initStyle(); protected: void showEvent(QShowEvent *e) override; bool eventFilter(QObject *watched, QEvent *event) override; private slots: void slotOpenUrl(QString u); }; #endif // ABOUTDIALOG_H kylin-video-3.1.3/src/playlistwidget.h0000644000175000017500000001474314214075177016416 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PLAYLISTWIDGET_H #define PLAYLISTWIDGET_H #include #include #include #include "playlist.h" #include "global/globalsignal.h" #define FONT_COLOR_SELECTED "rgb(55,144,250)" #define AnmationDuration 300 class PlayItem; class PlayList; class PlayListItemMenu; class QLabel; class ImageLabel; class QListWidget; class QVBoxLayout; class QHBoxLayout; class QPushButton; class ListLoopMenu; class QListWidgetItem; class QVariantAnimation; class QPropertyAnimation; /// 列表模式-预览模式 enum ListViewMode{LIST, VIEW}; class MarkListItem : public QWidget { Q_OBJECT public: explicit MarkListItem(QWidget *parent = nullptr); ~MarkListItem(); int getPos(){return m_markPos;} void setData(QString path, int duration, int pos, QString desc, QString preview = ""); void setMode(ListViewMode mode); void setEnter(); void setLeave(); QString getFilePath() {return m_tooltip;} void setWidgetFont(QFont f); public slots: void setNotExit(QString); void setFontColor(QString); void setBlackTheme(); void setLightTheme(); signals: void sigPlayAndSeek(QString, int); void sigRightBtnPressed(int); void sigDeleteMark(QString, int); private: void initStyle(); void updateNameShow(); private: int m_markPos; bool m_needSeekToPos, m_fileExit; QString m_currentPlayingFile; QString m_fileName; QString m_tooltip; QString m_describe; QSize m_noPreviewSize, m_previewSize; QPixmap *m_pixmapPreview; ImageLabel *m_labPreview; QLabel *m_labFilePath, *m_labDuration, *m_labMarkPos; QWidget *m_dp; QVBoxLayout *m_vlay; QHBoxLayout *m_hlay; QPushButton *m_btnDelete; ListViewMode m_mode; protected: void mousePressEvent(QMouseEvent *e) override; void mouseDoubleClickEvent(QMouseEvent *e) override; void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; }; /// 播放列表条目 class PlayListItem : public QWidget { Q_OBJECT public: explicit PlayListItem(QWidget *parent = nullptr); ~PlayListItem(); QString getPath() {return m_tip;} QString getName() {return m_showName;} void setSelected(bool s); void setData(QString _file, int _duration, int _lastTime, QString _viewPath = ""); void setDuration(int duration); void setEnter(); void setLeave(); void toBig(); void toSmall(); void reloadView(); void setMode(ListViewMode _m_mode); bool getExist(){return m_isExist;} void setBlackTheme(); void setLightTheme(); void setWidgetFont(const QFont &f); signals: void sigValChange(int); void sigRightBPressed(QString); void sigNotExists(QString); void sigExistsStateChange(QString, bool); public slots: void slotNotExit(QString); private: QLabel *m_labIcon, *m_labSpacing, *m_labName, *m_labDuration; QPixmap *m_pixmapPreview; ImageLabel *m_labPreview; QPushButton *m_btnDelete; QVariantAnimation *m_anmToBig, *m_anmToSmall; QString m_tip, m_showName, m_viewPath; bool m_isSelected, m_isExist, m_isMark; ListViewMode m_mode; void initDeleteButton(); void initAnimation(); void updateNameShow(); void updateText(); private slots: void setFontColor(QString); void deleteItem(); protected: void mousePressEvent(QMouseEvent *e) override; void mouseDoubleClickEvent(QMouseEvent *e) override; }; namespace Ui { class PlayListWidget; } class PlayListWidget : public QWidget { Q_OBJECT public: explicit PlayListWidget(QWidget *parent = nullptr); ~PlayListWidget(); bool isShow(){return m_isShow;} PlayList *getPlayList(){return m_playList;} signals: void sigAddItem(QString, int, int, QString, bool); void sigMove(int); public slots: void showItemMenu(QString file); void addItem(PlayItem _item); void deleteItem(QString file); void clearList(); void updateMarks(QVector markvec); void deleteMark(QString filepath, int pos); void clearMark(); void reloadView(QString file); void resetDuration(QString file, int duration); void slotShow(); void slotHide(); // 展开按钮更新 void setShowButton(bool show); void updateShowIcon(); void updateHideIcon(); void delAvailableIndex(QString _file); void changeListViewMode(); void setPlayIndex(int _index); void selectNone(); void setBlackTheme(); void setLightTheme(); void gSettingChanged(QString key); private: Ui::PlayListWidget *ui; QString m_theme; QString m_currentPlayingFile; QString m_selectedFile; PlayList *m_playList; QListWidget *m_playListWidget, *m_markListWidget; PlayOrder m_playOrder; // 播放顺序 PlayListItemMenu *m_itemMenu; // 右击列表选项菜单 QMap m_itemMap; // 列表item map,key:绝对路径 std::mutex m_mux; std::mutex m_itemAddMux; bool m_isShow; bool m_isMouseEnter; ListViewMode m_mode; QPropertyAnimation *m_showAnm; QPropertyAnimation *m_hideAnm; void initMenu(); void initStackedWidget(); void initPlayList(); void initGlobalSig(); void initAnimation(); void initConnection(); void initDefaultWidget(); void updateOrderIcon(); void updateViewIcon(); void updateAddIcon(); void updateDeleteIcon(); protected: bool eventFilter(QObject *watched, QEvent *event) override; void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; void moveEvent(QMoveEvent *event) override; }; #endif // PLAYLISTWIDGET_H kylin-video-3.1.3/src/mainwidget.cpp0000644000175000017500000014150114214075177016025 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "mainwidget.h" #include "ui_mainwidget.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "kmenu.h" #include "topwindow.h" #include "contralbar.h" #include "dbusadapter.h" #include "setupdialog.h" #include "aboutdialog.h" #include "titlewidget.h" #include "playglwidget.h" #include "core/mpvcore.h" #include "minimodeshade.h" #include "playlistwidget.h" #include "mediainfodialog.h" #include "systemtrayicon.h" #include "global/global.h" #include "global/extensions.h" #include "global/translator.h" #include "global/globalsignal.h" #include "global/shortcutsetting.h" #include "ukui-wayland/ukui-decoration-client.h" #include "ukui-wayland/ukui-decoration-manager.h" #include #include #include #include "elog.h" #define LOG_TAG "mainwidget" using namespace Global; MainWidget::MainWidget(QStringList list, QWidget *parent) : QWidget(parent), ui(new Ui::MainWidget), m_normalSize(QSize(0,0)), m_inhibitValue(0), m_needPlayWhenMin(false), m_needPlayWhenS34(false), m_isMaxWindow(false), m_isScreenLocked(false), m_canHideAll(true), m_isActive(true), m_isMiniMode(false), m_firstRemoveBar(true), m_moveFlag(true), m_exitFlag(false), m_contralBar(nullptr), m_rightClickMenu(nullptr), // m_mediaInfoDialog(nullptr), // m_playListWidget(nullptr), m_setupDialog(nullptr), m_aboutDialog(nullptr), m_trayIcon(nullptr) { ui->setupUi(this); if(!gsetup->canRunMultiple.first) Single(list); initDBus(); translator->load(""); gshortCut->setParent(this); gshortCut->initData(); #if 0 if(isWayland) { installEventFilter(this); setMouseTracking(true); ui->stackedWidget->setMouseTracking(true); ui->widget_dock->setMouseTracking(true); ui->home_page->setMouseTracking(true); } else #endif { setAttribute(Qt::WA_TranslucentBackground); MotifWmHints hints1; hints1.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints1.functions = MWM_FUNC_ALL; hints1.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints1); move((QApplication::desktop()->screenGeometry(0).width() - this->width()) / 2, (QApplication::desktop()->screenGeometry(0).height() - this->height()) / 2); } setWindowTitle(tr("Video Player")); setAcceptDrops(true); initLayout(); // initContralBar(); // initTitleWidget(); // initPlayListWidget(); initSetupDialog(); initAboutDialog(); initCore(); initMenu(); initGlobalSig(); initTrayIcon(); initConnect(); // initShowModeAnimation(); // 需要show出来之后才能播放,不然播放会失败,原因是 QOpenGLWidget 没有 show 的时候渲染会报错。 QTimer::singleShot(100, [list](){ if(list.size() > 0) g_user_signal->addFiles(list); }); } MainWidget::~MainWidget() { interface->call("Uninhibit", m_inhibitValue); log_i("call Uninhibit, cookie is %ld", m_inhibitValue); delete m_playWidget; m_core->Stop(); delete ui; } void MainWidget::initMenu() { m_rightClickMenu = new KRightClickMenu(this); connect(m_rightClickMenu, SIGNAL(sigOpenFile()), this, SLOT(slotOpenFile())); connect(m_rightClickMenu, SIGNAL(sigOpenDir()), this, SLOT(slotOpenDir())); connect(m_rightClickMenu, SIGNAL(sigOpenUrl()), this, SLOT(slotOpenUrl())); connect(m_rightClickMenu, SIGNAL(sigToTop(bool)), this, SLOT(slotToTop(bool))); connect(m_rightClickMenu, SIGNAL(sigPlayOrder(int)),this, SLOT(slotPlayOrder(int))); connect(m_rightClickMenu, &KRightClickMenu::sigDefaultFrame, [this](){ m_vAspect = Mpv::AUTO; }); connect(m_rightClickMenu, &KRightClickMenu::sig4Div3Frame, [this](){ m_vAspect = Mpv::DIV_4_3; }); connect(m_rightClickMenu, &KRightClickMenu::sig16Div9Frame, [this](){ m_vAspect = Mpv::DIV_16_9; }); connect(m_rightClickMenu, &KRightClickMenu::sigFullFrame, [this](){ m_vAspect = Mpv::FULL; updateAspect(); }); connect(m_rightClickMenu, &KRightClickMenu::sigRestoreFrame, [this](){ m_vAspect = Mpv::AUTO; }); connect(m_rightClickMenu, &KRightClickMenu::sigAlongRotate, [this](){ // 旋转后需要判断是否时满屏画面,如果是的话需要改变比例 if(m_vAspect == Mpv::FULL) updateAspect(); }); connect(m_rightClickMenu, &KRightClickMenu::sigInverseRotate, [this](){ if(m_vAspect == Mpv::FULL) updateAspect(); }); connect(m_rightClickMenu, &KRightClickMenu::sigMediaInfo, [this](){ if(m_playState < 0) return; // 媒体信息弹窗 MediaInfoDialog mi(this); mi.setModal(true); mi.setData(m_core->getMediaInfo()); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, &mi, [&mi, this](Mpv::FileInfo fi){ mi.setData(m_core->getMediaInfo()); }); mi.show(); mi.exec(); }); } void MainWidget::initLayout() { QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); // ui->btn_open->setFont(f); // ui->btn_open_dir->setFont(f); // setMinimumSize(NormalMinSize); resize(NormalMinSize); // 设置模糊 KWindowEffects::enableBlurBehind(winId(), true); #if 0 ui->label_name->setText(tr("Video Player")); ui->btn_open->setText(tr("open file")); ui->btn_open_dir->setText(tr("open dir")); #endif // 播放控件 m_playWidget = new PlayGLWidget(ui->play_page); m_playWidget->setGeometry(0, 0, width(), height()); m_defaultFrame = new QWidget(m_playWidget); m_defaultFrame->setStyleSheet("QWidget{background-color:#000000;}"); m_defaultFrame->show(); m_defaultFrame->setMouseTracking(true); m_centerLogo = new QWidget(m_defaultFrame); m_centerLogo->setFixedSize(CenterLogoSize); m_musicFrame = new QWidget(m_playWidget); m_musicFrame->setStyleSheet("QWidget{background-color:#262626;}"); m_musicFrame->setMouseTracking(true); m_musicFrame->hide(); m_musicLogo = new QWidget(m_musicFrame); m_musicLogo->installEventFilter(m_musicFrame); m_musicLogo->setFixedSize(MusicLogoSize); m_musicLogo->setStyleSheet("border-image:url(:/ico/music-background.png);"); m_osdFrame = new QLabel(m_musicFrame); m_osdFrame->installEventFilter(m_musicFrame); m_osdFrame->setAlignment(Qt::AlignLeft | Qt::AlignTop); m_osdFrame->setStyleSheet("background-color:rgba(0,0,0,0);color:#ffffff;"); m_osdFrame->hide(); f.setPixelSize(23); m_osdFrame->setFont(f); m_osdShowTimer = new QTimer; m_osdShowTimer->setInterval(2000); connect(m_osdShowTimer, &QTimer::timeout, [this](){m_osdFrame->setText("");m_osdFrame->hide();}); QHBoxLayout *lo = new QHBoxLayout(m_centerLogo); lo->setContentsMargins(0,0,0,0); // 初始化上层窗口 m_topWindow = new TopWindow(this); m_topWindow->show(); connect(m_topWindow, &TopWindow::sigQuit, this, &MainWidget::appQuit); connect(m_topWindow, &TopWindow::sigClose, this, &MainWidget::close); connect(m_topWindow, &TopWindow::sigMinSize, this, &MainWidget::slotShowMin); #if 0 QPushButton *btn_icon = new QPushButton; btn_icon = new QPushButton; btn_icon->setFixedSize(QSize(65, 65)); btn_icon->setIconSize(QSize(65, 65)); btn_icon->setIcon(QIcon::fromTheme("kylin-video")); btn_icon->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); QLabel *lb_name = new QLabel; lo->addStretch(); lo->addWidget(btn_icon); lo->addWidget(lb_name); lo->addStretch(); lb_name->setText(tr("Video Player")); lb_name->setStyleSheet("color: rgba(249, 249, 249, 204);font: 57 46px \"Noto Sans CJK SC Medium\";"); ui->btn_logo->setFixedSize(QSize(70,70)); ui->btn_logo->setIconSize(QSize(70,70)); ui->btn_logo->setIcon(QIcon::fromTheme("kylin-video")); ui->btn_logo->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); ui->btn_open->setCursor(Qt::PointingHandCursor); ui->btn_open->setFixedSize(MainButtonSize); ui->btn_open->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,19);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:hover{background-color:rgba(255,255,255,25);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:pressed{background-color:rgba(255,255,255,14);border-radius:4px;color:rgb(255,255,255);}"); ui->btn_open_dir->setCursor(Qt::PointingHandCursor); ui->btn_open_dir->setFixedSize(MainButtonSize); ui->btn_open_dir->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,19);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:hover{background-color:rgba(255,255,255,25);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:pressed{background-color:rgba(255,255,255,14);border-radius:4px;color:rgb(255,255,255);}"); { // mini 模式遮罩初始化 if (isWayland) m_miniModeShade = new MiniModeShade(this); else m_miniModeShade = new MiniModeShade(ui->stackedWidget); m_miniModeShade->raise(); m_miniModeShade->hide(); } #endif } #if 0 void MainWidget::initContralBar() { // 控制栏 m_contralBar = new ContralBar(ui->play_page); // m_contralBar = new ContralBar; m_contralBar->setGeometry(120, height()-72, width()-240, 48); connect(m_contralBar, &ContralBar::sigCanHide, [this](bool canHide){ m_canHideAll = canHide; }); } #endif #if 0 void MainWidget::initTitleWidget() { m_titleMenu = new TitleMenu; connect(m_titleMenu, &TitleMenu::sigQuit, this, &MainWidget::close); if (isWayland) m_titleWidget = new TitleWidget(this); else m_titleWidget = new TitleWidget(ui->stackedWidget); m_titleWidget->raise(); m_titleWidget->move(0, 0); m_titleWidget->setTitle(tr("video player"), false); { connect(m_miniModeShade, &MiniModeShade::sigPlayPause, [&](){ if(m_playState == Mpv::Playing) m_core->Pause(); else if(m_playState == Mpv::Paused) m_core->Play(); }); connect(m_miniModeShade, &MiniModeShade::sigShowNormal, this, &MainWidget::slotShowNormalMode); connect(m_miniModeShade, &MiniModeShade::sigClose, this, &MainWidget::close); connect(m_titleWidget, &TitleWidget::sigMiniMode, this, &MainWidget::slotShowMiniMode); } connect(m_titleWidget, &TitleWidget::sigShowMenu, [this](){ m_titleMenu->exec(QPoint(m_titleWidget->getMenuBtnX()+mapToGlobal(QPoint(0,0)).x(), mapToGlobal(QPoint(0,0)).y()+m_titleWidget->height()-5)); }); connect(m_titleWidget, &TitleWidget::sigMiniSize, this, &MainWidget::slotShowMin); connect(m_titleWidget, &TitleWidget::sigMaxSize, this, &MainWidget::slotShowMax); connect(m_titleWidget, &TitleWidget::sigDBClicked, this, &MainWidget::slotShowMax); connect(m_titleWidget, &TitleWidget::sigClose, [this](){ if(m_setupDialog->isHidden() && m_aboutDialog->isHidden()/* && m_mediaInfoDialog->isHidden()*/) { close(); } }); connect(m_titleWidget, &TitleWidget::sigCanHide, [this](bool canHide){ m_canHideAll = canHide; }); } #endif void MainWidget::initSetupDialog() { m_setupDialog = new SetUpDialog(this); m_setupDialog->hide(); } void MainWidget::initAboutDialog() { m_aboutDialog = new AboutDialog(this); m_aboutDialog->hide(); } #if 0 void MainWidget::initPlayListWidget() { if (isWayland) m_playListWidget = new PlayListWidget(this); else m_playListWidget = new PlayListWidget(ui->stackedWidget); connect(m_playListWidget, &PlayListWidget::sigMove, [this](int distance){ m_titleWidget->setGeometry(0, 0, width() - distance, m_titleWidget->height()); }); // 正在播放的文件改变,书签需要刷新 connect(m_playListWidget->getPlayList(), &PlayList::sigPlayingFileMarkUpdate, [this](QVector marks){ m_contralBar->clearMark(); foreach (MarkItem item, marks) { m_contralBar->addMark(item.m_markPos, item.m_describe); } }); connect(m_playListWidget->getPlayList(), &PlayList::sigDeleteMark, [this](int mark_pos){ m_contralBar->deleteMark(mark_pos); }); // 正在播放时插入书签,需要刷新进度条书签 connect(m_playListWidget->getPlayList(), &PlayList::sigInsertMark, [this](MarkItem mark){ m_contralBar->insertMark(mark.m_markPos, mark.m_describe); }); } #endif #if 0 // 初始化模式切换动画 normal -> mini void MainWidget::initShowModeAnimation() { m_miniAnm = new QPropertyAnimation(this, "size"); // m_miniAnm->setDuration(300); m_miniAnm->setDuration(1); m_miniAnm->setEasingCurve(QEasingCurve::OutCubic); connect(m_miniAnm, &QPropertyAnimation::finished, [this](){ this->setFixedSize(size()); m_miniModeShade->show(); m_miniModeShade->raise(); m_miniModeShade->resize(this->size()); }); m_normalAnm = new QPropertyAnimation(this, "size"); // m_normalAnm->setDuration(300); m_normalAnm->setDuration(1); m_normalAnm->setEasingCurve(QEasingCurve::OutCubic); connect(m_normalAnm, &QPropertyAnimation::finished, [this](){ setMinimumSize(NormalMinSize); m_contralBar->setMiniMode(false); m_titleWidget->setMiniMode(false); m_titleWidget->show(); m_playListWidget->show(); update(); }); } #endif void MainWidget::initCore() { m_playState = Mpv::Idle; m_core = new MpvCore(m_playWidget); connect(m_core, &MpvCore::sigShowText, this, &MainWidget::showText); } void MainWidget::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigShowStopFrame, [&](){ // 当前默认为拼音拼播放界面 m_musicFrame->show(); }); connect(g_user_signal, &GlobalUserSignal::sigExit, this, &MainWidget::close); connect(g_user_signal, &GlobalUserSignal::sigPlayWidgetClicked, this, &MainWidget::slotPlayWidgetClicked); connect(g_user_signal, &GlobalUserSignal::sigSelectFile, this, &MainWidget::slotOpenFile); connect(g_user_signal, &GlobalUserSignal::sigSelectDir, this, &MainWidget::slotOpenDir); connect(g_user_signal, &GlobalUserSignal::sigPlayPause, [&](){ if(m_playState == Mpv::Playing) m_core->Pause(); else if(m_playState == Mpv::Paused) m_core->Play(); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, this, &MainWidget::slotThemeChange); connect(g_user_signal, &GlobalUserSignal::sigRightMenuShow, [&](){ if(!m_isActive && isWayland) return; if (QGuiApplication::focusWindow()) m_rightClickMenu->exec(QCursor::pos(QGuiApplication::focusWindow()->screen()) + QPoint(1,1)); }); #if 0 connect(g_user_signal, &GlobalUserSignal::sigShowPlayList, [&](){ if(!m_playListWidget->isShow() && ui->stackedWidget->currentIndex() == 1) { slotHideAll(true); } }); #endif connect(g_core_signal, &GlobalCoreSignal::sigStateChange, this, &MainWidget::slotPlayStateChange); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ m_currentFile = fi.file_path; #if 0 m_titleWidget->setTitle(fi.file_path.split("/").back()); #endif }); // 直接让 mpvcore 去播放有问题,必须先切换到播放页面 connect(g_user_signal, &GlobalUserSignal::sigOpen, this, &MainWidget::slotPlayFile); connect(g_user_signal, &GlobalUserSignal::sigShowSetup, [&](int index){ SetUpDialog setup(this); setup.setIndex(index); setup.move(mapToGlobal(QPoint(0,0)) + QPoint(width()-setup.width(), height()-setup.height())/2); setup.show(); if(isWayland) { UKUIDecorationManager::getInstance()->removeHeaderBar(setup.windowHandle()); UKUIDecorationManager::getInstance()->setCornerRadius(setup.windowHandle(), 12, 12, 12, 12); m_setupDialog->setFixedSize(setup.size()); } setup.exec(); #if 0 m_setupDialog->setIndex(index); // 显示到应用中间 m_setupDialog->move(mapToGlobal(QPoint(0,0)) + QPoint(width()-m_setupDialog->width(), height()-m_setupDialog->height())/2); m_setupDialog->show(); if(isWayland) { UKUIDecorationManager::getInstance()->removeHeaderBar(m_setupDialog->windowHandle()); UKUIDecorationManager::getInstance()->setCornerRadius(m_setupDialog->windowHandle(), 12, 12, 12, 12); m_setupDialog->setFixedSize(m_setupDialog->size()); } m_setupDialog->exec(); #endif }); connect(g_user_signal, &GlobalUserSignal::sigShowAbout, [&](){ m_aboutDialog->show(); if(isWayland) { UKUIDecorationManager::getInstance()->removeHeaderBar(m_aboutDialog->windowHandle()); UKUIDecorationManager::getInstance()->setCornerRadius(m_aboutDialog->windowHandle(), 12, 12, 12, 12); m_aboutDialog->setFixedSize(m_aboutDialog->size()); } }); } void MainWidget::initConnect() { #if 0 connect(ui->stackedWidget, &QStackedWidget::currentChanged, [&](int index){ // 不管页面怎么切换,播放列表界面都要再最前面 m_playListWidget->raise(); if(index == 0) m_titleWidget->setHomePage(true); else m_titleWidget->setHomePage(false); }); connect(m_contralBar, &ContralBar::sigFullScreen, this, [&](bool full){ if(full) { if(windowState() == Qt::WindowMaximized) m_isMaxWindow = true; else if(windowState() == Qt::WindowNoState) m_isMaxWindow = false; showFullScreen(); // 全屏之后设置最大化最小化不可用 m_titleWidget->setButtonState(false); } else { // 全屏直接 showMaximized 不生效,只能先还原之后再最大化(原因未知) showNormal(); if(m_isMaxWindow) showMaximized(); m_titleWidget->setButtonState(true); } }); connect(ui->btn_open, &QPushButton::clicked, this, &MainWidget::slotOpenFile); connect(ui->btn_open_dir, &QPushButton::clicked, this, &MainWidget::slotOpenDir); #endif } void MainWidget::initTrayIcon() { m_trayIcon = new SystemTrayIcon(this); connect(m_trayIcon, &SystemTrayIcon::sigQuit, this, &MainWidget::appQuit); connect(m_trayIcon, &SystemTrayIcon::activated, [&](QSystemTrayIcon::ActivationReason reason){ switch (reason) { case QSystemTrayIcon::Trigger: if (isHidden()) { show(); QTimer::singleShot(300, [this](){ activateWindow(); m_topWindow->show(); }); } else if (!isActiveWindow()) { activateWindow(); } break; default: break; } }); m_trayIcon->show(); } void MainWidget::initDBus() { interface = new QDBusInterface("org.gnome.SessionManager", "/org/gnome/SessionManager", "org.gnome.SessionManager", QDBusConnection::sessionBus()); QDBusConnection sessionBus = QDBusConnection::sessionBus(); if(sessionBus.registerService("org.ukui.kylinvideo")) { sessionBus.registerObject("/org/ukui/kylinvideo",this, QDBusConnection::ExportAllContents); qDebug()<<"初始化DBUS成功"; } else { log_e("init dbus error"); qDebug()<<"初始化DBUS失败"; } //S3 S4策略 QDBusConnection::systemBus().connect(QString("org.freedesktop.login1"), QString("/org/freedesktop/login1"), QString("org.freedesktop.login1.Manager"), QString("PrepareForShutdown"), this, SLOT(onPrepareForShutdown(bool))); QDBusConnection::systemBus().connect(QString("org.freedesktop.login1"), QString("/org/freedesktop/login1"), QString("org.freedesktop.login1.Manager"), QString("PrepareForSleep"), this, SLOT(onPrepareForSleep(bool))); // 锁屏 QDBusConnection::sessionBus().connect(QString("org.ukui.ScreenSaver"), QString("/"), QString("org.ukui.ScreenSaver"), QString("lock"), this, SLOT(onScreenLock())); QDBusConnection::sessionBus().connect(QString("org.ukui.ScreenSaver"), QString("/"), QString("org.ukui.ScreenSaver"), QString("unlock"), this, SLOT(onScreenUnlock())); // 耳机插拔 QDBusConnection::sessionBus().connect(QString(""), QString("/"), QString("org.ukui.media"), QString("DbusSingleTest"), this, SLOT(inputDeviceGet(QString))); // 线控 QDBusConnection::systemBus().connect(QString(), QString("/"), QString("com.monitorkey.interface"), QString("monitorkey"), this, SLOT(onWiredControl(QString))); DbusAdapter *dbs_adapter = new DbusAdapter; // new 出来就行,其他时候这个没用,初始化一下就行,控制都是全局的 } void MainWidget::appQuit() { // 判断退出时是否需要清空播放列表 if(gsetup->clearListWhenExit.first) g_user_signal->clearPlayList(); m_exitFlag = true; if (m_playState < 0) { exit(0); } m_core->Stop(); } void MainWidget::onWiredControl(QString str) { int key = str.split(':').first().toInt(); int num = str.split(':').last().toInt(); if(num == 1) g_user_signal->play_pause(); else if(num == 2 || key == 163) g_user_signal->playNext(true); else if(num == 3 || key == 165) g_user_signal->playPrev(true); } /** ************************************************************************ * S3 处理 * @param :isSleep - true : 进入睡眠 * false : 睡眠唤醒 * 说明 : s3/s4时暂停播放,同时判断是否锁屏,设置锁屏标志位。当s3/s4唤醒时,通过标 * 志位判断是否锁屏,如果锁屏了则不做处理,等解锁后继续播放,如果没有锁屏的话直接继续播放。 ***************************************************************************/ void MainWidget::onPrepareForSleep(bool isSleep) { if(isSleep && m_playState==Mpv::Playing && m_needPlayWhenS34 == false) { m_core->Pause(); if(gsetup->keepStateWhenWakeup.first) m_needPlayWhenS34 = true; } else if(!isSleep && m_needPlayWhenS34) { // 判断是否锁屏了,如果锁屏等解锁后再播放 if(m_isScreenLocked) return; m_core->Play(); m_needPlayWhenS34 = false; } } /** ************************************************************************ * S4 处理 * 说明 : 同上 ***************************************************************************/ void MainWidget::onPrepareForShutdown(bool Shutdown) { if(Shutdown && m_playState==Mpv::Playing && m_needPlayWhenS34 == false) { m_core->Pause(); if(gsetup->keepStateWhenWakeup.first) m_needPlayWhenS34 = true; } else if(!Shutdown && m_needPlayWhenS34) { // 判断是否锁屏了,如果锁屏等解锁后再播放 if(m_isScreenLocked) return; m_core->Play(); m_needPlayWhenS34 = false; } } /** ************************************************************************ * 锁屏处理(如果播放则暂停,和S3S4共用变量,要防止冲突) ***************************************************************************/ void MainWidget::onScreenLock() { m_isScreenLocked = true; // 只有 wanland 才需要如此 gshortCut->makeAllInvalid(); if(m_playState==Mpv::Playing && m_needPlayWhenS34 == false) { m_core->Pause(); if(gsetup->keepStateWhenWakeup.first) m_needPlayWhenS34 = true; } } void MainWidget::onScreenUnlock() { m_isScreenLocked = false; gshortCut->makeAllValid(); if(m_needPlayWhenS34) { m_core->Play(); if(gsetup->keepStateWhenWakeup.first) m_needPlayWhenS34 = false; } } void MainWidget::inputDeviceGet(QString _device) { // 接收到耳机插拔信号就暂停 if(m_playState == Mpv::Playing) m_core->Pause(); } void MainWidget::slotToTop(bool is_top) { if(!isWayland) { Display *display = QX11Info::display(); XEvent event; event.xclient.type = ClientMessage; event.xclient.serial = 0; event.xclient.send_event = True; event.xclient.display = display; event.xclient.window = winId(); event.xclient.message_type = XInternAtom (display, "_NET_WM_STATE", False); event.xclient.format = 32; event.xclient.data.l[0] = is_top; event.xclient.data.l[1] = XInternAtom (display, "_NET_WM_STATE_ABOVE", False); event.xclient.data.l[2] = 0; //unused. event.xclient.data.l[3] = 0; event.xclient.data.l[4] = 0; XSendEvent(display, DefaultRootWindow(display), False, SubstructureRedirectMask|SubstructureNotifyMask, &event); } else { PlasmaShellManager::getInstance()->setAppWindowKeepAbove(is_top); return; } } void MainWidget::slotThemeChange(int theme) { switch (theme) { case 0: g_settings->setValue("General/follow_system_theme", true); break; case 1: g_settings->setValue("General/follow_system_theme", false); g_settings->setValue("General/theme", 0); break; case 2: g_settings->setValue("General/follow_system_theme", false); g_settings->setValue("General/theme", 1); break; default: break; } } void MainWidget::slotPlayWidgetClicked() { #if 0 if(m_playListWidget->isShow()) m_playListWidget->slotHide(); else #endif { if(m_playState == Mpv::Playing) m_core->Pause(); else if(m_playState == Mpv::Paused) m_core->Play(); } } void MainWidget::slotOpenFile() { Extensions e; QString last_path = g_settings->value("History/last_path").toString(); if(last_path == "") last_path = QDir::homePath(); QStringList files; { QFileDialog fd(this); fd.setModal(true); QList list = fd.sidebarUrls(); int sidebarNum = 8; QString home = QDir::homePath().section("/", -1, -1); QString mnt = "/media/" + home + "/"; QDir mntDir(mnt); mntDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList filist = mntDir.entryInfoList(); QList mntUrlList; for(int i=0; i < sidebarNum && i < filist.size(); i++) { QFileInfo fi = filist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } QFileSystemWatcher fsw(&fd); fsw.addPath("/media/" + home + "/"); connect(&fsw, &QFileSystemWatcher::directoryChanged, &fd, [=, &sidebarNum, &mntUrlList, &list, &fd](const QString path){ QDir wmnDir(path); wmnDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList wfilist = wmnDir.entryInfoList(); mntUrlList.clear(); for(int i=0; i < sidebarNum && i < wfilist.size(); ++i) { QFileInfo fi = wfilist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } qDebug() << list + mntUrlList; fd.setSidebarUrls(list + mntUrlList); fd.update(); }); connect(&fd, &QFileDialog::finished, &fd, [=, &list, &fd](){ fd.setSidebarUrls(list); }); fd.setSidebarUrls(list + mntUrlList); fd.setDirectory(QDir(last_path)); fd.setWindowTitle(tr("Video Player Choose a file")); fd.setNameFilters(QStringList() << tr("Multimedia") + e.allPlayable().forFilter()+";;" << tr("Video") + e.video().forFilter()+";;" << tr("Audio") + e.audio().forFilter()+";;"); fd.setFileMode(QFileDialog::ExistingFiles); gshortCut->makeAllInvalid(); if(fd.exec() == QFileDialog::Accepted) { files = fd.selectedFiles(); qDebug() << files; } gshortCut->makeAllValid(); } if(files.size() <= 0) return; g_settings->setValue("History/last_path", files.first().left(files.first().lastIndexOf('/') + 1)); g_user_signal->addFiles(files); } void MainWidget::slotOpenDir() { QString last_path = g_settings->value("History/last_path").toString(); // 打开文件夹 QString url; { QFileDialog fd(this); fd.setModal(true); QList list = fd.sidebarUrls(); int sidebarNum = 8; QString home = QDir::homePath().section("/", -1, -1); QString mnt = "/media/" + home + "/"; QDir mntDir(mnt); mntDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList filist = mntDir.entryInfoList(); QList mntUrlList; for(int i=0; i < sidebarNum && i < filist.size(); i++) { QFileInfo fi = filist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } QFileSystemWatcher fsw(&fd); fsw.addPath("/media/" + home + "/"); connect(&fsw, &QFileSystemWatcher::directoryChanged, &fd, [=, &sidebarNum, &mntUrlList, &list, &fd](const QString path){ QDir wmnDir(path); wmnDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList wfilist = wmnDir.entryInfoList(); mntUrlList.clear(); for(int i=0; i < sidebarNum && i < wfilist.size(); ++i) { QFileInfo fi = wfilist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } qDebug() << list + mntUrlList; fd.setSidebarUrls(list + mntUrlList); fd.update(); }); connect(&fd, &QFileDialog::finished, &fd, [=, &list, &fd](){ fd.setSidebarUrls(list); }); fd.setSidebarUrls(list + mntUrlList); fd.setDirectory(QDir(last_path)); fd.setWindowTitle(tr("Video Player Choose a directory")); fd.setFileMode(QFileDialog::DirectoryOnly); gshortCut->makeAllInvalid(); if(fd.exec() == QFileDialog::Accepted) { url = fd.selectedUrls().at(0).toString(); if(url.startsWith("file")) { url.remove(0, 7); } } gshortCut->makeAllValid(); } if (!url.isEmpty()) { g_user_signal->addDir(url); } g_settings->setValue("History/last_path", url); } void MainWidget::slotPlayFile(QString file, int pos) { if(file == QString()) { return; } // 需要先切换为播放页面,不然播放不出来 ui->stackedWidget->setCurrentWidget(ui->play_page); // slotHideAll(true); #if 0 if (!isWayland) { m_titleWidget->raise(); } #endif // 判断是否自动加载字幕 QStringList subs = QStringList(); if(gsetup->loadAllSubInDir.first || gsetup->loadSameNameSub.first) { // QString sub_dir = file.left(file.lastIndexOf("/")); QString sub_dir = gsetup->subDir.first; Extensions e; QRegExp rx_ext(e.subtitles().forRegExp()); rx_ext.setCaseSensitivity(Qt::CaseInsensitive); QStringList dir_list = QDir(sub_dir).entryList(); QString filename; if(gsetup->loadAllSubInDir.first) { // 加载所有字幕 QStringList::Iterator it = dir_list.begin(); while( it != dir_list.end() ) { filename = sub_dir; if (filename.right(1)!="/") filename += "/"; filename += (*it); QFileInfo fi(filename); if (!fi.isDir()) { if (rx_ext.indexIn(fi.suffix()) > -1) subs << filename; } ++it; } } else if(gsetup->loadSameNameSub.first) { // 加载文件夹下同名字幕 QStringList::Iterator it = dir_list.begin(); while( it != dir_list.end() ) { filename = sub_dir; if (filename.right(1)!="/") filename += "/"; filename += (*it); QFileInfo fi(filename); if (!fi.isDir()) { if (rx_ext.indexIn(fi.suffix()) > -1 && file.left(file.lastIndexOf("."))==filename.left(filename.lastIndexOf("."))) subs << filename; } ++it; } } } m_core->Open(file, pos); m_core->AddSubs(subs); } void MainWidget::slotPlayStateChange(Mpv::PlayState state) { m_playState = state; if(state > 0) ui->stackedWidget->setCurrentWidget(ui->play_page); #if 0 else m_titleWidget->setTitle(tr("video player"), false); #endif // 停止之后画面比例还原(如果需要保持比例需要重新做功能) if(m_playState < 0) m_vAspect = Mpv::AUTO; if(m_playState == Mpv::Playing || m_playState == Mpv::Paused) { if(m_core->getVid() >= 0) { m_defaultFrame->hide(); m_musicFrame->hide(); // m_musicLogo->hide(); } else { m_defaultFrame->show(); m_musicFrame->show(); // m_musicLogo->show(); } } else { m_defaultFrame->show(); // m_musicFrame->show(); // m_musicLogo->show(); } // 如果正在播放,阻止锁屏 if(!interface->isValid()) { log_e("org.gnome.SessionManager is invalid!"); return; } if(m_playState == Mpv::Playing) { QDBusMessage reply = interface->call(QDBus::Block, "Inhibit", "kylin-video", (quint32)0, "video is playing", (quint32)8); m_inhibitValue = reply.arguments().takeFirst().toUInt(); log_i("call Inhibit, cookie is %ld", m_inhibitValue); } else { interface->call("Uninhibit", m_inhibitValue); log_i("call Uninhibit, cookie is %ld", m_inhibitValue); } #if 0 if(state == Mpv::Started) { // 从上次停止位置播放功能 if(gsetup->playLastPos.first) { int resumeTime = g_sqlite->getLastTime(m_currentFile); if (resumeTime > 0) m_core->Seek(resumeTime); } } #endif if (state == Mpv::Idle && m_exitFlag) { exit(0); } } #if 0 void MainWidget::slotHideAll(bool is_hide) { if(is_hide) { if(m_canHideAll) { m_contralBar->setHide(); m_titleWidget->setHide(); if (!m_playListWidget->isShow()) m_playListWidget->setShowButton(false); // 播放列表是否需要隐藏 ? } else { // 鼠标要显示出来 setCursor(Qt::ArrowCursor); m_playWidget->setCursor(Qt::ArrowCursor); m_titleWidget->setCursor(Qt::ArrowCursor); } } else { if (!m_playListWidget->isShow()) { m_contralBar->setShow(); m_titleWidget->setShow(); m_playListWidget->setShowButton(true); } } } #endif void MainWidget::slotShowMin() { #if 0 // 最小化的时候隐藏播放列表 m_playListWidget->slotHide(); #endif showMinimized(); } void MainWidget::slotShowMax() { if(isFullScreen()) { g_user_signal->fullScreen(); } // 最大化然后更新图标 else if(isMaximized()) { showNormal(); m_titleWidget->updateMaxButtonStatus(false); } else { m_normalSize = size(); showMaximized(); m_titleWidget->updateMaxButtonStatus(true); } } #if 0 void MainWidget::slotShowNormalMode() { if(!m_isMiniMode) return; m_isMiniMode = false; m_miniAnm->stop(); m_miniModeShade->hide(); setMaximumSize(99999, 99999); m_normalAnm->setStartValue(size()); m_normalAnm->setEndValue(m_normalSize); m_normalAnm->start(); m_normalSize = QSize(0,0); m_playWidget->setMouseUsed(true); } void MainWidget::slotShowMiniMode() { // 如果是主窗口的话无法进入 mini 模式 // 如果是全屏的话也无法进入 mini 模式 if(/*ui->stackedWidget->currentIndex() == 0 || */isFullScreen() || m_isMiniMode) return; // 如果是最大化的话先退出最大化 if(isMaximized()) { showNormal(); m_titleWidget->updateMaxButtonStatus(false); } // mini 模式窗口大小改变,保留三个按钮,其他全部隐藏 // 先隐藏,后变化,最后显示按钮 m_isMiniMode = true; if(m_normalSize == QSize(0,0)) m_normalSize = size(); setMinimumSize(MiniModeSize); m_contralBar->setMiniMode(true); m_titleWidget->setMiniMode(true); m_titleWidget->hide(); m_contralBar->hide(); m_playListWidget->hide(); m_normalAnm->stop(); m_miniAnm->setStartValue(size()); m_miniAnm->setEndValue(minimumSize()); m_miniAnm->start(); m_playWidget->setMouseUsed(false); } #endif void MainWidget::ukuiMove() { if(isWayland) { m_moveFlag = false; UKUIDecorationManager::getInstance()->moveWindow(this->windowHandle()); } } void MainWidget::updateAspect() { double s; if(m_core->getRotate() / 90 % 2 == 0) s = (double)width() / (double)height(); else s = (double)height() / (double)width(); m_core->SetAspect(QString::number(s)); } void MainWidget::kylin_video_play_request(QStringList filelist) { // 此处相当于双击打开,需要active一下 if (isHidden()) { show(); QTimer::singleShot(200, [this](){ setWindowState(Qt::WindowActive); m_topWindow->show(); }); } else if (!isActiveWindow()) { KWindowSystem::setState(winId(), NET::KeepAbove); QTimer::singleShot(200, [this](){ activateWindow(); KWindowSystem::clearState(winId(), NET::KeepAbove); }); } if(filelist.size() > 0) g_user_signal->addFiles(filelist); } void MainWidget::Single(QStringList filelist) { QStringList homePath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation); QString lockPath = homePath.at(0) + "/.config/kylin-video-lock"; int fd = open(lockPath.toUtf8().data(), O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); if (fd < 0) { exit(1); } if (lockf(fd, F_TLOCK, 0)) { QDBusInterface interface( "org.ukui.kylinvideo", "/org/ukui/kylinvideo", "org.ukui.kylinvideo.play", QDBusConnection::sessionBus()); QDBusReply reply = interface.call( "kylin_video_play_request", filelist); qDebug() << "file path is " << filelist; if ( reply.isValid() && reply.value() == 0) { KyInfo() << "call kylin_video_play_request ok"; } else { KyInfo() << "fail"; } log_i("The app is already running"); exit(0); } } // osd 显示,如果是没有视频流的话要这样显示 void MainWidget::showText(QString text) { m_osdShowTimer->stop(); m_osdFrame->setText(text); m_osdFrame->show(); m_osdFrame->raise(); m_osdShowTimer->start(); } void MainWidget::resizeEvent(QResizeEvent *event) { if (m_firstRemoveBar && size() == QSize(966, 573)) { resize(minimumSize()); m_firstRemoveBar = false; } #if 0 if (m_titleWidget) { m_titleWidget->resize(width(), m_titleWidget->height()); } if (m_contralBar) { m_contralBar->setGeometry(120, height()-72, width()-240, 48); m_contralBar->setPreviewSize(size()); } #endif if (m_playWidget) { m_playWidget->setGeometry(0, 0, width(), height()); } if (m_defaultFrame) { m_defaultFrame->setGeometry(0, 0, width(), height()); } if (m_centerLogo) { m_centerLogo->move((width() - m_centerLogo->width()) / 2, (height() - m_centerLogo->height()) * 2 / 5); } if (m_musicFrame) { m_musicFrame->setGeometry(0, 0, width(), height()); } if (m_musicLogo) { m_musicLogo->move((width() - m_musicLogo->width()) / 2, (height() - m_musicLogo->height()) * 3 / 7); } if (m_osdFrame) { m_osdFrame->setGeometry(25, 55, width() - 40, height() - 50); } ui->stackedWidget->move(0, 0); ui->stackedWidget->resize(size()); ui->widget_dock->setGeometry(QRect(0, 0, width(), height())); #if 0 // 只要大小改变,播放列表都要隐藏起来 m_playListWidget->move(width() - 16, 0); m_playListWidget->resize(m_playListWidget->width(), height()); m_playListWidget->updateHideIcon(); #endif // 如果画面是满屏的话,需要每次改变大小都设置比例 // (此方法会导致只有在修改完大小之后画面才能改变,没办法实时改变,需查看如果将 no-keepaspect 参数设置上去) if(m_vAspect == Mpv::FULL) updateAspect(); // 大小变化的时候 osd 要重新显示 if(m_playState > 0 && m_playState <= Mpv::Paused) m_core->ShowText(""); QWidget::resizeEvent(event); } bool MainWidget::event(QEvent *event) { if(isWayland) { // 如果是 wayland 环境的话需要通过 active + m_needPlayWhenMin 判断是否需要播放 if(event->type() == QEvent::WindowActivate) { if(m_needPlayWhenMin) { m_core->Play(); m_needPlayWhenMin = false; } m_isActive = true; } else if(event->type() == QEvent::WindowDeactivate) { m_isActive = false; } } else { if (event->type() == QEvent::Show) { m_topWindow->show(); if (m_needPlayWhenMin) { m_core->Play(); m_needPlayWhenMin = false; } } else if(event->type() == QEvent::Hide && gsetup->pauseWhenMini.first && m_playState == Mpv::Playing) { m_core->Pause(); m_needPlayWhenMin = true; } } return QWidget::event(event); } void MainWidget::mousePressEvent(QMouseEvent *event) { // 主界面也能右键呼出菜单 if(event->buttons() == Qt::RightButton) { if(!m_isActive && isWayland) return; if (QGuiApplication::focusWindow() != nullptr) m_rightClickMenu->exec(QCursor::pos(QGuiApplication::focusWindow()->screen()) + QPoint(1,1)); } } #if 1 void MainWidget::showEvent(QShowEvent *event) { QWidget::showEvent(event); } #endif void MainWidget::closeEvent(QCloseEvent *event) { // 关闭的时候最小化到系统托盘 就是隐藏了就行 if(gsetup->miniToTray.first) { // 隐藏的时候有必要还原大小,不然再次显示会有问题 showNormal(); m_topWindow->showNormal(); event->ignore(); m_topWindow->setHide(); hide(); return; } // 判断退出时是否需要清空播放列表 if(gsetup->clearListWhenExit.first) g_user_signal->clearPlayList(); m_core->Stop(); QThread::usleep(100000); // 关闭之前取消阻止锁屏 log_i("call Uninhibit, cookie is %ld", m_inhibitValue); interface->call("Uninhibit", m_inhibitValue); QWidget::closeEvent(event); exit(0); } void MainWidget::keyPressEvent(QKeyEvent *event) { // 按 esc 退出全屏 if(event->key() == Qt::Key_Escape) { if(isFullScreen()) g_user_signal->fullScreen(); } else if(event->key() == Qt::Key_F1) { // 帮助手册 先就分开写吧,快捷键不生效不知道为啥 QDBusMessage m = QDBusMessage::createMethodCall("com.kylinUserGuide.hotel_1000", "/", "com.guide.hotel", "showGuide"); m << "kylin-video"; if(QDBusConnection::sessionBus().isConnected()) QDBusConnection::sessionBus().call(m); } } bool MainWidget::eventFilter(QObject *watched, QEvent *event) { if(isWayland) { if(watched == this) { if (event->type() == QEvent::MouseMove){ auto mouseEvent = static_cast(event); if (mouseEvent->buttons() & Qt::LeftButton) { if(m_moveFlag) ukuiMove(); } } else if (event->type() == QEvent::MouseButtonRelease) { // 移动之后不要再移动 m_moveFlag = true; } } } return false; } void MainWidget::dragEnterEvent(QDragEnterEvent *event) { event->acceptProposedAction(); } void MainWidget::dropEvent(QDropEvent *event) { QList listUrl = event->mimeData()->urls(); QStringList filelist; Extensions e; QRegExp rx_video(e.video().forRegExp()); QRegExp rx_audio(e.audio().forRegExp()); rx_video.setCaseSensitivity(Qt::CaseInsensitive); rx_audio.setCaseSensitivity(Qt::CaseInsensitive); for(QUrl url : listUrl) { QString path = url.path(); // 不要 file:// 前缀只要绝对路径 if(path.startsWith("file:")) path.remove(0, 7); // 拖入文件需要做类型判断 QFileInfo fi(path); if (fi.isDir()) { // 如果是文件夹的话添加文件夹 g_user_signal->addDir(path); } else if (rx_video.indexIn(fi.suffix()) > -1 || rx_audio.indexIn(fi.suffix()) > -1) { filelist << path; } } if(filelist.count() == 0) return; g_user_signal->addFiles(filelist); } kylin-video-3.1.3/src/aboutdialog.ui0000644000175000017500000001536214212620632016015 0ustar fengfeng AboutDialog 0 0 420 440 420 440 420 440 Dialog 0 0 0 0 0 0 40 16777215 40 8 8 8 0 Qt::Horizontal 371 20 32 32 32 32 10 32 20 32 40 Qt::Horizontal 40 20 96 96 96 96 Qt::Horizontal 40 20 <html><head/><body><p align="center">Video Player</p></body></html> <html><head/><body><p align="center">version: 3.1.1</p></body></html> #textBrowser{ background-color: rgba(255, 255, 255, 0); } Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Video Player supports almost all audio and video formats and has powerful decoding ability.</p></body></html> service and support: support@kylinos.cn kylin-video-3.1.3/src/playglwidget.h0000644000175000017500000000371714214075177016044 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PLAYGLWIDGET_H #define PLAYGLWIDGET_H #include #include #include #include "qthelper.hpp" #include "core/mpvtypes.h" class PlayGLWidget : public QWidget { public: PlayGLWidget(QWidget *parent = 0, Qt::WindowFlags f = 0); ~PlayGLWidget(); // void setMpvHandle(mpv::qt::Handle mh){mpv_h = mh;initMpvGL();} // void setMouseUsed(bool used); private slots: // void swapped(); private: // double m_scale; // mpv::qt::Handle mpv_h; // mpv_opengl_cb_context *mpv_gl; // Mpv::PlayState m_state; // QTimer *m_checkMouseTimer, // *m_lMouseClickTimer, // *m_fpsTimer; // bool m_mouseUsed, // m_isMouseEnter, // hasVideo; // void initGlobalSig(); // static void on_update(void *ctx); // void initMpvGL(); protected: // void initializeGL() override; // void paintGL() override; // void mousePressEvent(QMouseEvent *e) override; // void mouseMoveEvent(QMouseEvent *e) override; // void mouseDoubleClickEvent(QMouseEvent *e) override; // void enterEvent(QEvent *e) override; // void leaveEvent(QEvent *e) override; }; #endif // PLAYGLWIDGET_H kylin-video-3.1.3/src/ffutil.cpp0000644000175000017500000001600114215020236015145 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "ffutil.h" #include #include #include #include #ifdef __cplusplus extern "C" { #endif #include //封装格式 #include //解码 #include //缩放 #include #ifdef __cplusplus } #endif #include "elog.h" #define LOG_TAG "ffutil" FFUtil::FFUtil(QObject *parent) : QObject(parent) { av_register_all(); m_videoTbr = new VideoThumbnailer; m_videoTbr->setThumbnailSize(176); pFormatCtx = nullptr; pCodecCtx = nullptr; } FFUtil::~FFUtil() { close(); } int FFUtil::open(QString _file) { m_fileName = _file; if(_file.length() == 0) return -1; if(pFormatCtx) avformat_close_input(&pFormatCtx); if(pCodecCtx) avcodec_free_context(&pCodecCtx); videoDuration = 0; videoStream = -1; pFormatCtx = nullptr; pCodecCtx = nullptr; AVDictionary *opts = nullptr; int t_seekTime = 0; if (avformat_open_input(&pFormatCtx, _file.toStdString().c_str(), 0, &opts) != 0) { log_e("Can't open the file."); printf("can't open the file."); return -1; } // 找流信息 if (avformat_find_stream_info(pFormatCtx, nullptr) < 0) { log_e("Couldn't find stream information."); printf("Couldn't find stream information."); return -1; } videoStream = -1; videoStream = av_find_best_stream(pFormatCtx, AVMEDIA_TYPE_VIDEO, -1, -1, NULL, 0); if (videoStream < 0) { log_e("Can't find a video stream."); return -1; } pCodec = avcodec_find_decoder_by_name(avcodec_get_name(pFormatCtx->streams[videoStream]->codecpar->codec_id)); if(!pCodec) { pCodec = avcodec_find_decoder(pFormatCtx->streams[videoStream]->codecpar->codec_id); if(!pCodec) { log_e("find decodec error"); return -1; } } pCodecCtx = avcodec_alloc_context3(pCodec); if(!pCodecCtx) { log_e("Codec context alloc error."); return -1; } avcodec_parameters_to_context(pCodecCtx, pFormatCtx->streams[videoStream]->codecpar); int re = avcodec_open2(pCodecCtx, pCodec, 0); if (re != 0) { log_e("Open decodec error."); avcodec_free_context(&pCodecCtx); return -1; } // 可能前几帧是黑屏,所以向后跳转 videoDuration = pFormatCtx->duration/1000000; t_seekTime = fitTime(videoDuration); if(t_seekTime > 0) { int re = av_seek_frame(pFormatCtx, -1, t_seekTime*AV_TIME_BASE, 0); if(re < 0) { log_e("get view seek error."); } avcodec_flush_buffers(pCodecCtx); } return 0; } int FFUtil::getDuration() { if(!pFormatCtx) return 0; return pFormatCtx->duration/1000000; } void FFUtil::close() { if(pCodecCtx) { avcodec_close(pCodecCtx); avcodec_free_context(&pCodecCtx); } } void FFUtil::saveIFrame(QString _savePath) { // 如果用接口的话没有视频流会导致崩溃 // m_videoTbr->generateThumbnail(m_fileName.toStdString(), Png, _savePath.toStdString()); QProcess p; p.start(QString("ffmpegthumbnailer -i %1 -o %2").arg("\"" + m_fileName + "\"").arg(_savePath)); p.waitForFinished(); close(); return; AVFrame *pFrame = nullptr; AVFrame *pFrameRGB = nullptr; uint8_t *outBuffer = nullptr; AVPacket *packet = nullptr; int numBytes = 0; if(videoStream < 0) return; if(!pCodecCtx) { qDebug() << "codec context is nullptr!"; return; } pFrame = av_frame_alloc(); pFrameRGB = av_frame_alloc(); numBytes = avpicture_get_size(AV_PIX_FMT_RGB32, pCodecCtx->width,pCodecCtx->height); outBuffer = (uint8_t *)av_malloc(numBytes); avpicture_fill((AVPicture *) pFrameRGB, outBuffer, AV_PIX_FMT_RGB32, pCodecCtx->width, pCodecCtx->height); packet = av_packet_alloc(); av_init_packet(packet); int tryNum = 0; while (true) { if (av_read_frame(pFormatCtx, packet) < 0)//从流中读取读取数据到Packet中 { log_e("read end, but no frame get"); break; //这里认为视频读取完了 } if (packet->stream_index != videoStream) { av_packet_unref(packet); continue; } // if (packet->stream_index == videoStream) { // 解码 avcodec_send_packet(pCodecCtx, packet); // 获取解码数据 int ret = avcodec_receive_frame(pCodecCtx, pFrame); if (ret < 0 || !pFrame->key_frame) { if(tryNum > 2000) { break; } // 最多尝试解码 200 帧,如果没获取到正确的帧就不要预览图了,否则解码占用时间过长,后面放到线程里面去就可以一直解码了。 log_e("get view frame error, try %d", tryNum); tryNum++; continue; } SwsContext *img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height, (AVPixelFormat)pFrame->format, pCodecCtx->width, pCodecCtx->height, AV_PIX_FMT_RGB32, SWS_BICUBIC, nullptr, nullptr, nullptr); sws_scale(img_convert_ctx, (const uint8_t *const*)pFrame->data, pFrame->linesize, 0, pCodecCtx->height, pFrameRGB->data, pFrameRGB->linesize); sws_freeContext(img_convert_ctx); { QImage img((uchar *)pFrameRGB->data[0], pCodecCtx->width, pCodecCtx->height, QImage::Format_RGB32); img.save(_savePath); log_i("Save preview image ok. [%s:%s]", pFormatCtx->url, _savePath); break; } } } free(outBuffer); av_packet_free(&packet); av_frame_free(&pFrame); av_frame_free(&pFrameRGB); avformat_flush(pFormatCtx); avcodec_flush_buffers(pCodecCtx); } int FFUtil::fitTime(int _duration) { if(_duration < 1) return 0; else if(_duration < 5) return 1; else return 3; } kylin-video-3.1.3/src/playlist.cpp0000644000175000017500000006130714214075177015543 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "playlist.h" #include #include #include #include #include #include #include #include #include #include "global/globalsignal.h" #include "global/global.h" #include "global/paths.h" #include "ffutil.h" #include "elog.h" #define LOG_TAG "playlist" using namespace Global; bool markSort(MarkItem &a, MarkItem &b) { if (a.m_filePath != b.m_filePath) { return a.m_filePath < b.m_filePath; } return a.m_markPos < b.m_markPos; } PlayList::PlayList(QObject *parent) : QObject(parent), m_lastFileChange(0) { m_needPlayFile = ""; connect(this, &PlayList::sigAddItem, this, &PlayList::addItem); initGlobalSig(); } PlayList::~PlayList() { } /** ************************************************************************ * 添加播放列表条目 initGlobalSig(); * @param: * _file :文件全路径 * _duration :媒体时长 * _viewPath :预览文件路径 * _lastStopTime :上次停止时间 * _writeToDatabase :是否写如数据库 * (添加新文件的时候需要写入数据库,初始化的时候不用) ***************************************************************************/ void PlayList::addItem(QString _file, int _duration, int _lastStopTime, QString _viewPath, bool _writeToDatabase) { QString t_name; bool t_isExist; int t_index; m_duration = _duration; QString mark_character = _viewPath.split("/").last(); mark_character.chop(4); mark_character.remove(0, 1); t_name = _file.split("/").last(); // 是否需要写入数据库 if(_writeToDatabase) { // 如果是无痕浏览的话不要添加到数据库和界面. if(gsetup->seamlessBrowsing.first) { if(m_needPlayFile == _file) { g_user_signal->stop(); g_user_signal->open(m_needPlayFile, 0); } return; } g_sqlite->insertPlayList(_file, _file.split("/").last(), _duration, _viewPath); } PlayItem pi; { std::lock_guard lg(m_mux); m_fileList << _file; // 判断文件是否存在 QFileInfo t_fi(_file); if(t_fi.exists()) { t_isExist = true; t_index = m_fileList.size()-1; if (m_availableIndexVec.indexOf(m_fileList.size()-1) < 0) m_availableIndexVec.push_back(m_fileList.size()-1); } else { t_isExist = false; t_index = -1; m_notExitFiles.insert(_file); } pi.m_isExit = t_isExist; pi.m_isNewForDB = _writeToDatabase; pi.m_fileName = t_name; pi.m_mark = mark_character; pi.m_indexOfList = t_index; pi.m_filePath = _file; pi.m_duration = _duration; pi.m_previewPath = _viewPath; pi.m_lastStopTime = _lastStopTime; m_pathItemMap[_file] = pi; } // 告诉界面添加了一个 item emit itemAdded(pi); if(m_needPlayFile == _file) { g_user_signal->stop(); g_user_signal->open(m_needPlayFile, 0); } } /** ************************************************************************ * 添加播放列表条目 initGlobalSig(); * @param: * file :要删除的文件 * 删除 :数据库、预览文件、临时map ***************************************************************************/ void PlayList::deleteFile(QString file) { if(m_pathItemMap.find(file) != m_pathItemMap.end()) { // 删除预览文件 QString cmd_ = QString("rm -rf ").append(m_pathItemMap[file].m_previewPath); system(cmd_.toStdString().c_str()); { // 删除的时候锁一下 std::lock_guard lg(m_mux); // 如果是当前播放的文件,直接播放下一首 if(file == m_playFile) { if (m_availableIndexVec.size() > 1 && m_playState > 0) g_user_signal->playNext(true); else { g_user_signal->stop(); // 没有可以播放的文件后就显示主页 g_user_signal->showStopFrame(); } } m_pathItemMap.remove(file); for(int i=0; i i) m_availableIndexVec.replace(j, m_availableIndexVec.at(j)-1); } if(t_rindex >= 0) m_availableIndexVec.remove(t_rindex); break; } } // 从数据库中删除 g_sqlite->deletePlayList(file); emit itemDelete(file); // 删除列表中书签内容 QString markPath = ""; for (int i=0; ideleteFile(file); })->start(); } } } void PlayList::clearList() { m_availableIndexVec.clear(); QStringList t_tmp_list(m_fileList); foreach (QString t_file, t_tmp_list) deleteFile(t_file); g_user_signal->stop(); // 列表清空之后需要显示默认界面 g_user_signal->showStopFrame(); } /** ********************************************** * 更新播放索引 * 说明:播放列表内容改变索引 *************************************************/ void PlayList::updateIndex() { // 通过正在播放的文件全路径获取播放索引 // 如果没有找到的话将索引设置为-1 m_playIndex = -1; int i = 0; for(; i= m_fileList.size() ? -1 : i); } /** ********************************************** * 设置当前索引 * @param: _index 索引 *************************************************/ void PlayList::setPlayIndex(int _index) { if(m_availableIndexVec.size() == 0) return; if(m_availableIndexVec.back() < _index) return; m_playIndex = _index; emit sigIndexChange(m_playIndex); g_settings->setValue("History/playlist_index", m_playIndex); } /** ********************************************** * 添加文件 * @param: _files 要添加的文件 *************************************************/ void PlayList::addFiles(QStringList _files) { Extensions t_e; QRegExp t_rx_ext(t_e.multimedia().forRegExp()); t_rx_ext.setCaseSensitivity(Qt::CaseInsensitive); // 添加后播放第一个添加的文件 m_needPlayFile = _files.first(); foreach (QString t_filename, _files) { QFileInfo t_fi(t_filename); if (!t_fi.isDir()) { if (t_rx_ext.indexIn(t_fi.suffix()) > -1) { // 如果列表存在的话不重复添加 if (m_pathItemMap.find(t_filename) != m_pathItemMap.end()) { if (!m_pathItemMap[t_filename].m_isExit) { m_pathItemMap[t_filename].m_isExit = true; setAvaliable(t_filename); } if (m_needPlayFile == t_filename) { g_user_signal->stop(); g_user_signal->open(t_filename, 0); } continue; } // 添加文件后需要获取媒体时长,如果是第一个文件的话需要播放 QThread::create([this, t_filename](){newFile(t_filename);})->start(); } } } } /** ********************************************** * 添加文件夹 * 说明:非递归添加,只添加符合规则的媒体文件 * @param: _dir 要添加的文件夹 *************************************************/ void PlayList::addDirectory(QString _dir) { m_needPlayFile = ""; Extensions t_e; QRegExp t_rx_ext(t_e.multimedia().forRegExp()); t_rx_ext.setCaseSensitivity(Qt::CaseInsensitive); QStringList t_dir_list = QDir(_dir).entryList(); QString t_filename; QStringList::Iterator t_it = t_dir_list.begin(); while(t_it != t_dir_list.end()) { t_filename = _dir; if (t_filename.right(1)!="/") { t_filename += "/"; } t_filename += (*t_it); QFileInfo t_fi(t_filename); if (!t_fi.isDir()) { if (t_rx_ext.indexIn(t_fi.suffix()) > -1) { if(m_needPlayFile == "") { m_needPlayFile = t_filename; } // 如果列表存在的话不重复添加 if(m_pathItemMap.find(t_filename) != m_pathItemMap.end()) { if(m_needPlayFile == t_filename) { g_user_signal->stop(); g_user_signal->open(t_filename, 0); } ++t_it; continue; } // 添加文件后需要获取媒体时长 newFile(t_filename); // QThread::create([this, t_filename](){newFile(t_filename);})->start(); } } ++t_it; } } /** ********************************************** * 播放下一个(设置手动最快300ms切换一次) * 说明:播放下一个具体文件依据播放顺序和播放列表 * @param : manual 如果是手动的话直接按列表循环播放下一个 *************************************************/ void PlayList::playNext(bool manual) { if (m_availableIndexVec.size() == 0 || (QDateTime::currentMSecsSinceEpoch()-m_lastFileChange < 300 && manual)) { KyInfo() << " available index size " << m_availableIndexVec.size(); return; } g_user_signal->play(); if(m_playOrder == ONE_LOOP) { if (m_availableIndexVec.indexOf(m_playIndex) < 0) manual = true; if (manual) { do { if(m_availableIndexVec.indexOf(++m_playIndex) >= 0) break; }while(m_playIndex < m_availableIndexVec.last()); m_playIndex = m_playIndex > m_availableIndexVec.last() ? m_availableIndexVec.first() : m_playIndex; } } else { switch (m_playOrder) { case ONE_LOOP: m_playIndex = m_playIndex < 0 ? 0 : m_playIndex; break; case SEQUENCE: // 顺序播放,只播放一遍 if(m_playIndex == m_availableIndexVec.last()) // 停止播放 return; do { if(m_availableIndexVec.indexOf(++m_playIndex) >= 0) break; }while(m_playIndex < m_availableIndexVec.last()); break; case LIST_LOOP: do { if(m_availableIndexVec.indexOf(++m_playIndex) >= 0) break; }while(m_playIndex < m_availableIndexVec.last()); m_playIndex = m_playIndex > m_availableIndexVec.last() ? m_availableIndexVec.first() : m_playIndex; break; case RANDOM: m_playIndex = m_availableIndexVec.at(rand() % m_availableIndexVec.size()); break; default: break; } } KyInfo() << " play index " << m_playIndex; if(m_fileList.size() > 0 && m_playIndex >= 0 && m_playIndex < m_fileList.size()) { QString t_file_path = m_fileList.at(m_playIndex); g_user_signal->stop(); g_user_signal->open(t_file_path, 0); } m_lastFileChange = QDateTime::currentMSecsSinceEpoch(); } /** ********************************************** * 播放上一个 *************************************************/ void PlayList::playPrev(bool manual) { if (m_availableIndexVec.size() == 0 || QDateTime::currentMSecsSinceEpoch()-m_lastFileChange < 300) return; g_user_signal->play(); if(manual && m_playOrder == ONE_LOOP) { do { if(m_availableIndexVec.indexOf(--m_playIndex) >= 0) break; }while(m_playIndex > m_availableIndexVec.first()); m_playIndex = m_playIndex < m_availableIndexVec.first() ? m_availableIndexVec.last() : m_playIndex; } else { switch (m_playOrder) { case ONE_LOOP: break; case SEQUENCE: // 顺序播放,只播放一遍 if(m_playIndex == m_availableIndexVec.first()) // 停止播放 return; do { if(m_availableIndexVec.indexOf(--m_playIndex) >= 0) break; }while(m_playIndex > m_availableIndexVec.first()); break; case LIST_LOOP: do { if(m_availableIndexVec.indexOf(--m_playIndex) >= 0) break; }while(m_playIndex > m_availableIndexVec.first()); m_playIndex = m_playIndex < m_availableIndexVec.first() ? m_availableIndexVec.last() : m_playIndex; break; case RANDOM: m_playIndex = m_availableIndexVec.at(rand() % m_availableIndexVec.size()); break; default: break; } } if(m_fileList.size() > 0 && m_playIndex >= 0 && m_playIndex < m_fileList.size()) { QString t_file_path = m_fileList.at(m_playIndex); g_user_signal->stop(); g_user_signal->open(t_file_path, 0); } m_lastFileChange = QDateTime::currentMSecsSinceEpoch(); } void PlayList::setNotAvaliable(QString _file) { if (m_pathItemMap.find(_file) != m_pathItemMap.end()) { // 当前只是把不可用认为是不存在 m_pathItemMap[_file].m_isExit = false; } for (int i=0; iinsertBookMark(file, m_duration, pos, desc, view); MarkItem item; item.m_filePath = file; item.m_duration = m_duration; item.m_markPos = pos; item.m_describe = desc; item.m_previewPath = view; item.m_fileExit = true; m_bookmarks.push_back(item); qSort(m_bookmarks.begin(), m_bookmarks.end(), markSort); emit sigMarkUpdate(m_bookmarks); m_playingFileMarks.push_back(item); emit sigInsertMark(item); } void PlayList::deleteMark(QString file, int pos) { g_sqlite->deleteBookMark(file, pos); for (int i=0; iseamlessBrowsing.first) { m_playFile = _fi.file_path; updateIndex(); // 如果是无痕浏览的话不要做添加操作,但是需要更新进度条上的书签 goto update_mark; } m_duration = _fi.length; m_playFile = _fi.file_path; if(m_pathItemMap.find(m_playFile) == m_pathItemMap.end()) { newFile(m_playFile); } updateIndex(); update_mark: // 文件改变之后书签列表重新排序 // 文件改变之后需要刷新进度条书签 m_playingFileMarks.clear(); int index = -1, num = 0, i = 0; for (MarkItem item : m_bookmarks) { if (item.m_filePath == _fi.file_path) { m_playingFileMarks.push_back(item); if (index == -1) index = i; num++; } i++; } if (index >= 0) m_bookmarks.remove(index, num); qSort(m_bookmarks.begin(), m_bookmarks.end(), markSort); m_bookmarks = m_playingFileMarks + m_bookmarks; emit sigMarkUpdate(m_bookmarks); emit sigPlayingFileMarkUpdate(m_playingFileMarks); } void PlayList::initData() { // 读取播放列表 QVector vecRec = g_sqlite->getPlayList(); for(KPlaylistRecord rec : vecRec) { addItem(rec.path, rec.duration, rec.lastTime, rec.viewPath); } // 获取书签列表 QVector vec_mark = g_sqlite->getMarks(); for (MarkRecord mark : vec_mark) { MarkItem item; item.m_filePath = mark.path; item.m_duration = mark.duration; item.m_markPos = mark.pos; item.m_describe = mark.desc; item.m_previewPath = mark.preview; item.m_fileExit = (m_notExitFiles.find(mark.path) == m_notExitFiles.end()); m_bookmarks.push_back(item); } qSort(m_bookmarks.begin(), m_bookmarks.end(), markSort); emit sigMarkUpdate(m_bookmarks); initIndex(); } /** ********************************************** * 新文件 * 说明:新文件需要获取时长,然后添加至播放列表,如果文件获 * 取内容失败需要做什么处理(当前未做处理) * @param: _file 新文件绝对路径 *************************************************/ void PlayList::newFile(QString _file) { /** ********************************** * ffmpeg 接口获取时长和一个关键帧 *************************************/ // 预览关键帧保存为图片,名字为自动生成 uuid QUuid t_id = QUuid::createUuid(); QString name = t_id.toString().remove(0, 1); name.chop(1); QStringList sl = name.split("-"); name = ""; foreach (auto ts, sl) { name += ts; }; QString t_file_path = Paths::previewPath().append("/").append(name.append(".jpg")); FFUtil fu; fu.open(_file); int t_duration = fu.getDuration(); t_duration = t_duration > 0 ? t_duration : 0; // 添加 item emit sigAddItem(_file, t_duration, 0, t_file_path, true); QThread::create([this, _file, t_file_path, &fu](){ FFUtil fuz; fuz.open(_file); fuz.saveIFrame(t_file_path); emit sigReloadView(_file); })->start(); } void PlayList::initIndex() { // 获取配置文件中但前列表索引 if(g_settings->contains("History/playlist_index")) m_playIndex = g_settings->value("History/playlist_index").toInt(); else m_playIndex = -1; // 判断下文件是否存在,不存在就不要设置当前选中行了 if (m_fileList.size() > 0 && m_playIndex > 0) { QFileInfo fi(m_fileList.at(m_playIndex)); if (fi.exists()) setPlayIndex(m_playIndex); } } void PlayList::initGlobalSig() { // 修改播放列表 主要是删除要用 connect(g_user_signal, &GlobalUserSignal::sigListItemChange, [&](QString _file, int _duration, bool _isAdd){ if(_isAdd) addItem(_file, _duration, 0, " "); else deleteFile(_file); }); connect(g_user_signal, &GlobalUserSignal::sigClearPlayList , this, &PlayList::clearList); connect(g_user_signal, &GlobalUserSignal::sigAddFiles , this, &PlayList::addFiles); connect(g_user_signal, &GlobalUserSignal::sigAddDir , [this](QString dir){ QThread::create([this, dir](){addDirectory(dir);})->start(); }); connect(g_user_signal, &GlobalUserSignal::sigPlayNext , this, &PlayList::playNext); connect(g_user_signal, &GlobalUserSignal::sigPlayPrev , this, &PlayList::playPrev); connect(g_user_signal, &GlobalUserSignal::sigChangePlayOrder, [&](){ m_playOrder = m_playOrder==RANDOM ? (PlayOrder)0 : (PlayOrder)((int)m_playOrder+1); g_user_signal->setPlayOrder(m_playOrder); }); connect(g_user_signal, &GlobalUserSignal::sigPlayOrder, [&](PlayOrder _order){ m_playOrder = _order; g_settings->setValue("General/play_order", (int)_order); }); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange , this, &PlayList::slotFileInfoChange); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [this](Mpv::PlayState state){ m_playState = state; }); connect(g_core_signal, &GlobalCoreSignal::sigMarkAdded, this, &PlayList::addMark); connect(g_core_signal, &GlobalCoreSignal::sigDuration, this, [this](QString file, int duration){ if (m_pathItemMap.find(file) != m_pathItemMap.end()) { if (m_pathItemMap[file].m_isNewForDB) { // 更新数据库中时长 g_sqlite->updateDuration(file, duration); m_pathItemMap[file].m_isNewForDB = false; m_pathItemMap[file].m_duration = duration; emit sigResetDuration(file, duration); } } }); } #if 0 // 添加一个书签,添加完成之后排序然后重新加载界面 MarkList::MarkList(const MarkList &other) { m_fileName = other.m_fileName; m_duration = other.m_duration; m_itemMap = other.m_itemMap; } void MarkList::addItem(int pos, QString desc, QString view) { MarkItem item; item.m_duration = m_duration; item.m_filePath = m_fileName; item.m_previewPath = view; item.m_describe = desc; item.m_markPos = pos; m_itemMap.insert(pos, item); emit sigUpdateUI(m_itemMap); } void MarkList::deleteItem(int pos) { // 应该删除之后再去通知界面 if (m_itemMap.find(pos) != m_itemMap.end()) { m_itemMap.remove(pos); } } MarkList &MarkList::operator =(const MarkList other) { m_fileName = other.m_fileName; m_duration = other.m_duration; m_itemMap = other.m_itemMap; return *this; } #endif kylin-video-3.1.3/src/playlistwidget.ui0000644000175000017500000001665314212620632016574 0ustar fengfeng PlayListWidget 0 0 400 467 Form 0 0 0 0 0 16 0 16 16777215 0 0 0 0 0 Qt::Vertical 13 220 border-image: url(:/ico/icon_cbl1_d_3x.png); Qt::Vertical 13 219 0 0 0 0 0 10 6 4 20 0 50 0 0 0 0 0 0 16777215 4 16777215 4 0 0 384 4 16777215 4 background-color: rgb(55, 144, 250); Qt::Horizontal 107 20 kylin-video-3.1.3/src/filletwidget.cpp0000644000175000017500000000556114214075177016365 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "filletwidget.h" #include #include #include #include "global/global.h" #include "global/globalsignal.h" using namespace Global; FilletWidget::FilletWidget(QWidget *parent) : QWidget(parent) { setWindowFlags(Qt::FramelessWindowHint); m_radius = 8; // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) m_color = QColor(249, 249, 249, 204); else m_color = QColor(31, 32, 34, 204); } else { if(g_settings->value("General/theme").toInt() == 0) m_color = QColor(249, 249, 249, 204); else m_color = QColor(31, 32, 34, 204); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) m_color = QColor(249, 249, 249, 204); else m_color = QColor(31, 32, 34, 204); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) m_color = QColor(249, 249, 249, 204); else m_color = QColor(31, 32, 34, 204); break; case 1: m_color = QColor(249, 249, 249, 204); break; case 2: m_color = QColor(31, 32, 34, 204); break; default: break; } }); } void FilletWidget::paintEvent(QPaintEvent *event) { QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing); // 抗锯齿; QRect rect = this->rect(); painter.setBrush(QBrush(m_color)); painter.setPen(Qt::transparent); painter.drawRoundedRect(rect, m_radius, m_radius); QWidget::paintEvent(event); } kylin-video-3.1.3/src/filletwidget.h0000644000175000017500000000230014214075177016016 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef FILLETWIDGET_H #define FILLETWIDGET_H #include class FilletWidget : public QWidget { Q_OBJECT public: explicit FilletWidget(QWidget *parent = nullptr); void setColor(QColor c){m_color = c;} void setRadius(int radius){m_radius = radius;repaint();} protected: void paintEvent(QPaintEvent *event) override; private: QColor m_color; int m_radius; }; #endif // FILLETWIDGET_H kylin-video-3.1.3/src/kmenu.h0000644000175000017500000002103114214075177014454 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef KMenu_H #define KMenu_H #include #include "core/mpvtypes.h" #define OfficialWebsite "https://www.kylinos.cn" #define AdvideFeedback "mailto:product@kylinos.cn" class KAction; class KMenu : public QMenu { Q_OBJECT public: KMenu(QWidget *parent = nullptr); void addAct(QAction* act); private: void initStyle(); void setBlackTheme(); void setLightTheme(); protected: void showEvent(QShowEvent* e); }; /** ******************************************* * 播放列表右键菜单 ***********************************************/ class PlayListItemMenu : public KMenu { Q_OBJECT public: explicit PlayListItemMenu(QWidget *parent = nullptr); ~PlayListItemMenu(); signals: void sigRemoveSelect(); void sigRemoveInvalid(); void sigClearList(); void sigOpenFolder(); private: void createAction(); private: KMenu *menuSort; // 排序 KAction *act_sortByName; // 按名称排序 KAction *act_sortByType; // 按类型排序 KAction *act_removeCurrent; // 移除选中项 KAction *act_removeInvalid; // 移除无效文件 KAction *act_clearList; // 清空播放列表 KAction *act_openFolder; // 打开所在文件夹 }; /** ******************************************* * 标题栏菜单 ***********************************************/ class TitleMenu : public KMenu { Q_OBJECT public: explicit TitleMenu(QWidget *parent = nullptr); ~TitleMenu(); signals: void sigQuit(); private: void createOneLevelAction(); void createThemeMenu(); void createPrivacyMenu(); void createHelpMenu(); void createSetupMenu(); private: KAction *act_uploadToCloud; // 上传云端 KMenu *menu_theme; // 主题 QActionGroup *group_themeGroup; // 主题事件组 KAction *act_followSystem; // 跟随系统 KAction *act_lightTheme; // 浅色主题 KAction *act_blackTheme; // 深色主题 KMenu *menu_privacy; // 隐私 KAction *act_clearMark; // 清除痕迹 KAction *act_noMarkPlay; // 开启无痕播放 KMenu *menu_help; // 帮助 KAction *act_checkUpdate; // 检查更新 KAction *act_advice_feedback; // 建议和反馈 KAction *act_officialWebsite; // 官网 KAction *act_f1; // f1 用户手册 KAction *act_about; // 关于 KMenu *menu_setup; // 设置 KAction *act_systemSetup; // 系统设置 KAction *act_playSetup; // 播放设置 KAction *act_screenshotSetup; // 截图设置 KAction *act_subtitleSetup; // 字幕设置 KAction *act_audioSetup; // 声音设置 KAction *act_decoderSetup; // 解码器设置 KAction *act_shortcutSetup; // 快捷键设置 KAction *act_quit; // 退出 }; #if 0 /** ******************************************* * 列表循环菜单 ***********************************************/ class ListLoopMenu : public KMenu { Q_OBJECT public: explicit ListLoopMenu(QWidget *parent = nullptr); private: KAction *act_oneLoop; // 单曲循环 KAction *act_sequence; // 顺序播放 KAction *act_listLoop; // 列表循环 KAction *act_random; // 随机播放 void setBlackTheme(); void setLightTheme(); }; #endif /** ******************************************* * 右键菜单 ***********************************************/ class KRightClickMenu : public KMenu { Q_OBJECT public: explicit KRightClickMenu(QWidget *parent = nullptr); void createOpenMenu(); void createSetTopAction(); void createPlayOrderMenu(); void createFrameMenu(); void createAudioMenu(); void createSubMenu(); void createPlayMenu(); void createPlayerSetAction(); void createMediaInfoAction(); private: KMenu *menu_open; // 打开菜单 KAction *act_openFile; // 打开文件 KAction *act_openDirectory; // 打开文件夹 KAction *act_openURL; // 打开网址 KAction *act_setTop; // 置顶 KMenu *menu_playOrder; // 播放顺序菜单 QActionGroup *group_playOrder; // 播放顺序事件组 KAction *act_oneLoop; // 单曲循环 KAction *act_sequence; // 顺序播放 KAction *act_listLoop; // 列表循环 KAction *act_random; // 随机播放 KMenu *menu_frame; // 画面菜单 QActionGroup *group_frameScale;// 画面比例事件组 KAction *act_defaultFrame; // 默认比例 KAction *act_4div3Frame; // 4:3 KAction *act_16div9Frame; // 16:9 KAction *act_fullFrame; // 满屏 KAction *act_restoreFrame; // 画面还原 KAction *act_alongRotate; // 顺时针旋转90度 KAction *act_inverseRotate; // 逆时针旋转90度 KAction *act_flipHorizontally; // 水平翻转 KAction *act_flipVertically; // 垂直翻转 KAction *act_showInfo; // osd 显示 profile KMenu *menu_audio; // 声音菜单 KMenu *act_audioTrack; // 音轨菜单 QActionGroup *group_audio; // 所有音轨 KMenu *act_audioChannel; // 声道菜单 QActionGroup *group_channel; // 声道事件组 KAction *act_defaultChannel; // 默认声道 KAction *act_stereo; // 立体声 KAction *act_leftChannel; // 左声道 KAction *act_rightChannel; // 右声道 KAction *act_audioSet; // 声音设置 KMenu *menu_subtitle; // 字幕菜单 KAction *act_loadSubtitle; // 载入字幕 KMenu *menu_subtitleSelect; // 字幕选择菜单 QActionGroup *group_sub; // 所有字幕 KAction *act_noSubtitle; // 无字幕 QVector vec_subList; // 所有字幕,动态添加 KAction *act_subtitleSet; // 字幕设置 KAction *act_matchSubtitle; // 匹配字幕 KAction *act_searchSubtitle; // 搜索字幕 KMenu *menu_play; // 播放菜单 KAction *act_playPause; // 播放/暂停 KAction *act_volumeUp; // 音量+ KAction *act_volumeDown; // 音量- KAction *act_playForward; // 快进 KAction *act_playBackward; // 快退 KAction *act_playerSet; // 播放器设置 KAction *act_MediaInfo; // 影片信息 private: bool isShowInfo = false; signals: void sigOpenFile(); void sigOpenDir(); void sigOpenUrl(); void sigToTop(bool); void sigPlayOrder(int); void sigOneLoop(); void sigListLoop(); void sigSequence(); void sigRandom(); void sigDefaultFrame(); void sig4Div3Frame(); void sig16Div9Frame(); void sigFullFrame(); void sigRestoreFrame(); void sigAlongRotate(); void sigInverseRotate(); void sigFlipHorizontally(); void sigFlipVertically(); void sigAudioTrack(int); void sigDefalutChannel(); void sigStereo(); void sigLeftChannel(); void sigRightChannel(); void sigAudioSet(); void sigLoadSubtitle(); void sigNoSubtitle(); void sigSubtitleSet(); void sigMatchSubtitle(); void sigSearchSubtitle(); void sigPlayPause(); void sigVolumeUp(); void sigVolumeDown(); void sigPlayForward(); void sigPlayBackward(); void sigPlayerSet(); void sigMediaInfo(); private: void initGlobalSig(); private slots: void addSubtitle(QString name, int id); void addAudioTrack(QString name, int id); void loadTracks(QList tracks); void reInit(); void enableActions(); void disableVideoMenu(); void enableVideoMenu(); }; #endif // KMenu_H kylin-video-3.1.3/src/global/0000755000175000017500000000000014215020236014412 5ustar fengfengkylin-video-3.1.3/src/global/functions.h0000644000175000017500000000323714214075177016615 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef FUNCTIONS_H #define FUNCTIONS_H #include #include #include #include #include #include struct AVDictionary; class QHeaderView; class QMPlay2OSD; class VideoFrame; class QMimeData; class QPainter; class QPixmap; class QWindow; class QIcon; class QRect; namespace Functions { struct DemuxerInfo { QString name; QIcon icon; QStringList extensions; }; using DemuxersInfos = QVector; using ChecksumList = QVector; QString Url(QString, const QString &pth = QString()); QString getUrlType(const QString &url); QString timeToStr(const double t, const bool decimals = false); QString filePath(const QString &); QString fileExt(const QString &); QString processComand(const QString &); bool isKirinCpu(); bool isQingsongDevice(); } #endif kylin-video-3.1.3/src/global/kvsqlite.h0000644000175000017500000000376214214075177016452 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef KVSQLITE_H #define KVSQLITE_H #include #include class QSqlDatabase; class KPlaylistRecord { public: QString path; QString name; QString mark; QString viewPath; int lastTime; int duration; }; struct MarkRecord { QString path; int duration; int pos; QString desc; QString preview; }; class KVSqlite { public: static KVSqlite *getInstance(QString path = ""); QVector getPlayList(); int getLastTime (QString path); bool insertPlayList (QString path, QString name, int duration, QString view); bool updateLastTime (QString path, int lasttime); bool updateDuration (QString path, int duration); bool deletePlayList (QString path); bool clearPlayList (); bool insertBookMark (QString path, int duration, int pos, QString desc, QString view); void deleteBookMark (QString path, int pos); QVector getMarks(); QString getMarkCharacter(QString path); QString lastError (){return m_lastErrorMessage;} private: static KVSqlite* instance; KVSqlite(QString); ~KVSqlite(); QString m_lastErrorMessage; }; #endif // KVSQLITE_H kylin-video-3.1.3/src/global/paths.h0000644000175000017500000000304614214075177015722 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef _PATHS_H_ #define _PATHS_H_ #include class Paths { public: static void setAppPath(QString path); static QString previewPath(); static QString appPath(); static QString translationPath(); static QString shortcutsPath(); static QString qtTranslationPath(); //! Forces to use a different path for the config files static void setConfigPath(QString path); static void setLogPath(QString path); //! Return the path where smplayer should save its config files static QString configPath(); //! Obsolete. Just returns configPath() static QString iniPath(); static QString logPath(); static QString subtitleStyleFile(); private: static QString app_path; static QString config_path; static QString log_path; }; #endif kylin-video-3.1.3/src/global/global.cpp0000644000175000017500000000455314214075177016402 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "global.h" #include #include #include #include #include #include "translator.h" #include "paths.h" QSettings *Global::g_settings = nullptr; Translator *Global::translator = nullptr; KVSqlite *Global::g_sqlite = nullptr; GlobalSetup *Global::gsetup = nullptr; QGSettings *Global::g_gsettings = nullptr; ShortCutSetting *Global::gshortCut = nullptr; bool Global::isWayland = false; //KPlayControl *Global::k_playcontrol = KPlayControl::getInstanece(); using namespace Global; void Global::global_init() { // Translator translator = new Translator(); // g_settings QString filename = Paths::iniPath() + "/kylin-video3.ini"; QString dbname = Paths::iniPath() + "/kylin-video3.db"; g_settings = new QSettings(filename, QSettings::IniFormat); g_settings->setIniCodec("UTF-8"); // 运行环境 if(!g_settings->contains("General/display_env")) { if((QString(qgetenv("XDG_SESSION_TYPE")) == "wayland")) g_settings->setValue("General/display_env", "wayland"); else g_settings->setValue("General/display_env", "x11"); } isWayland = (g_settings->value("General/display_env").toString() == "wayland"); g_gsettings = new QGSettings(ORG_UKUI_STYLE); gshortCut = ShortCutSetting::getInstance(g_settings); g_sqlite = KVSqlite::getInstance(dbname); gsetup = GlobalSetup::getInstance(); } void Global::global_end() { delete g_gsettings; delete g_settings; delete translator; } kylin-video-3.1.3/src/global/xatom-helper.cpp0000644000175000017500000001377414212620632017542 0ustar fengfeng/* * KWin Style UKUI * * Copyright (C) 2020, KylinSoft Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Yue Lan * */ #include "xatom-helper.h" #include #include #include #include #include static XAtomHelper *global_instance = nullptr; XAtomHelper *XAtomHelper::getInstance() { if (!global_instance) global_instance = new XAtomHelper; return global_instance; } bool XAtomHelper::isFrameLessWindow(int winId) { auto hints = getInstance()->getWindowMotifHint(winId); if (hints.flags == MWM_HINTS_DECORATIONS && hints.functions == 1) { return true; } return false; } bool XAtomHelper::isWindowDecorateBorderOnly(int winId) { return isWindowMotifHintDecorateBorderOnly(getInstance()->getWindowMotifHint(winId)); } bool XAtomHelper::isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint) { bool isDeco = false; if (hint.flags & MWM_HINTS_DECORATIONS && hint.flags != MWM_HINTS_DECORATIONS) { if (hint.decorations == MWM_DECOR_BORDER) isDeco = true; } return isDeco; } bool XAtomHelper::isUKUICsdSupported() { // fixme: return false; } bool XAtomHelper::isUKUIDecorationWindow(int winId) { if (m_ukuiDecorationAtion == None) return false; Atom type; int format; ulong nitems; ulong bytes_after; uchar *data; bool isUKUIDecoration = false; XGetWindowProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, 0, LONG_MAX, false, m_ukuiDecorationAtion, &type, &format, &nitems, &bytes_after, &data); if (type == m_ukuiDecorationAtion) { if (nitems == 1) { isUKUIDecoration = data[0]; } } return isUKUIDecoration; } UnityCorners XAtomHelper::getWindowBorderRadius(int winId) { UnityCorners corners; Atom type; int format; ulong nitems; ulong bytes_after; uchar *data; if (m_unityBorderRadiusAtom != None) { XGetWindowProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, 0, LONG_MAX, false, XA_CARDINAL, &type, &format, &nitems, &bytes_after, &data); if (type == XA_CARDINAL) { if (nitems == 4) { corners.topLeft = static_cast(data[0]); corners.topRight = static_cast(data[1*sizeof (ulong)]); corners.bottomLeft = static_cast(data[2*sizeof (ulong)]); corners.bottomRight = static_cast(data[3*sizeof (ulong)]); } XFree(data); } } return corners; } void XAtomHelper::setWindowBorderRadius(int winId, const UnityCorners &data) { if (m_unityBorderRadiusAtom == None) return; ulong corners[4] = {data.topLeft, data.topRight, data.bottomLeft, data.bottomRight}; XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof (corners)/sizeof (corners[0])); } void XAtomHelper::setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight) { if (m_unityBorderRadiusAtom == None) return; ulong corners[4] = {(ulong)topLeft, (ulong)topRight, (ulong)bottomLeft, (ulong)bottomRight}; XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof (corners)/sizeof (corners[0])); } void XAtomHelper::setUKUIDecoraiontHint(int winId, bool set) { if (m_ukuiDecorationAtion == None) return; XChangeProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, m_ukuiDecorationAtion, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &set, 1); } void XAtomHelper::setWindowMotifHint(int winId, const MotifWmHints &hints) { if (m_unityBorderRadiusAtom == None) return; XChangeProperty(QX11Info::display(), winId, m_motifWMHintsAtom, m_motifWMHintsAtom, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *)&hints, sizeof (MotifWmHints)/ sizeof (ulong)); } MotifWmHints XAtomHelper::getWindowMotifHint(int winId) { MotifWmHints hints; if (m_unityBorderRadiusAtom == None) return hints; uchar *data; Atom type; int format; ulong nitems; ulong bytes_after; XGetWindowProperty(QX11Info::display(), winId, m_motifWMHintsAtom, 0, sizeof (MotifWmHints)/sizeof (long), false, AnyPropertyType, &type, &format, &nitems, &bytes_after, &data); if (type == None) { return hints; } else { hints = *(MotifWmHints *)data; XFree(data); } return hints; } XAtomHelper::XAtomHelper(QObject *parent) : QObject(parent) { if (!QX11Info::isPlatformX11()) return; m_motifWMHintsAtom = XInternAtom(QX11Info::display(), "_MOTIF_WM_HINTS", true); m_unityBorderRadiusAtom = XInternAtom(QX11Info::display(), "_UNITY_GTK_BORDER_RADIUS", false); m_ukuiDecorationAtion = XInternAtom(QX11Info::display(), "_KWIN_UKUI_DECORAION", false); } Atom XAtomHelper::registerUKUICsdNetWmSupportAtom() { // fixme: return None; } void XAtomHelper::unregisterUKUICsdNetWmSupportAtom() { // fixme: } kylin-video-3.1.3/src/global/shortcutsetting.h0000755000175000017500000001433614214075177020063 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SHORTCUTSETTING_H #define SHORTCUTSETTING_H #include #include #include #include "global/globalsignal.h" class ShortCutSetting : public QObject { Q_OBJECT public: static ShortCutSetting *getInstance(QSettings *sets); ~ShortCutSetting(); void initData(); void makeAllValid(); void makeAllInvalid(); void registerAction(QString name, QAction *act); QString resetShort(QString name, QString s); std::map get_short_map(){return m_shortcut_map;} signals: private: /** ************************************************************** * @param set_key: 配置文件中快捷键的key * @param desc: 快捷键描述,为翻译语言 * (设置为objectname,之后可以通过objectname来设置界面) * @param default_short:快捷键组合 *****************************************************************/ inline QShortcut * newShortCut(QString set_key, QString desc, QString default_short){ QShortcut *ret = nullptr; if(m_settings == nullptr) return nullptr; QString shortCutDesc = m_settings->value("action/"+set_key).toString(); if(shortCutDesc.length() > 0) { ret = new QShortcut(QKeySequence(shortCutDesc), (QWidget*)parent(), nullptr, nullptr, Qt::ApplicationShortcut); ret->setProperty("setkey", set_key); ret->setObjectName(desc); m_name_map[desc] = ret; return ret; } if(m_settings->contains("action/"+set_key)) default_short = ""; ret = new QShortcut(QKeySequence(default_short), (QWidget*)parent(), nullptr, nullptr, Qt::ApplicationShortcut); m_settings->setValue("action/"+set_key, default_short); ret->setProperty("setkey", set_key); ret->setObjectName(desc); m_name_map[desc] = ret; return ret; } private: static ShortCutSetting* instance; static QSettings *m_settings; explicit ShortCutSetting(QObject *parent = nullptr); void initShortCutFunc(); std::map m_shortcut_map; std::map m_action_map; std::map m_name_map; // 所有快捷键事件,快捷键主要和右键菜单联系,QFunctionPointer - QShortCut - 右键菜单QAction QFunctionPointer m_exit; // 关闭 QFunctionPointer m_helpDoc; // 打开帮助文档 // 文件 QFunctionPointer m_open_file; // 打开文件 默认: Ctrl+O QFunctionPointer m_open_dir; // 打开文件夹 默认: Ctrl+F QFunctionPointer m_prev_file; // 上一个文件 默认: Page Up QFunctionPointer m_next_file; // 下一个文件 默认: Page Down // 播放 QFunctionPointer m_play_pause; // 播放/暂停 默认:Space QFunctionPointer m_speed_up; // 加速播放 默认:Ctrl+Up QFunctionPointer m_speed_down; // 减速播放 默认:Ctrl+Down QFunctionPointer m_speed_normal; // 正常速度播放 默认:R QFunctionPointer m_forword; // 快进 默认:Right QFunctionPointer m_backword; // 快退 默认:Left QFunctionPointer m_forward_30; // 30秒快进 默认:Ctrl+Right QFunctionPointer m_backword_30; // 30秒快退 默认:Ctrl+Left QFunctionPointer m_insert_bookmark; // 插入书签 默认:B QFunctionPointer m_ib_notes; // 插入与注释书签 默认:Alt+B // 图像 QFunctionPointer m_fullscreen; // 全屏 默认:Enter QFunctionPointer m_mini_mode; // 迷你模式 默认:Shift+Enter QFunctionPointer m_to_top; // 置顶 默认:T QFunctionPointer m_screenshot; // 截图 默认:Alt+A QFunctionPointer m_cut; // 截取 默认:Alt+S QFunctionPointer m_light_up; // 增加亮度 默认 = QFunctionPointer m_light_down; // 减小亮度 默认 - QFunctionPointer m_forward_rotate; // 顺时针旋转90° 默认:E QFunctionPointer m_backward_rotate; // 逆时针旋转90° 默认:F QFunctionPointer m_horizontal_flip; // 水平翻转 默认:Ctrl+F QFunctionPointer m_vertical_flip; // 垂直翻转 默认:Q QFunctionPointer m_image_boost; // 画质增强 默认:A // 声音 QFunctionPointer m_volume_up; // 升高音量 默认:Up QFunctionPointer m_volume_down; // 降低音量 默认:Down QFunctionPointer m_mute; // 静音 默认:M QFunctionPointer m_audio_next; // 切换音轨 默认:S QFunctionPointer m_default_channel; // 默认声道 默认:/ QFunctionPointer m_left_channel; // 左声道 默认:, QFunctionPointer m_right_channel; // 右声道 默认:. // 字幕 QFunctionPointer m_sub_load; // 手动加载字幕 默认:Alt+0 QFunctionPointer m_sub_earlier; // 字幕提前0.5秒 默认:Shift+[ QFunctionPointer m_sub_later; // 字幕推迟0.5秒 默认:Shift+] QFunctionPointer m_sub_up; // 字幕上移 默认:Ctrl+[ QFunctionPointer m_sub_down; // 字幕下移 默认:Ctrl+] QFunctionPointer m_sub_next; // 字幕切换 默认:C // 其他 QFunctionPointer m_play_list; // 播放列表 默认:F3 QFunctionPointer m_setup; // 播放器设置 默认:F4 }; #endif // SHORTCUTSETTING_H kylin-video-3.1.3/src/global/xatom-helper.h0000644000175000017500000000625314212620632017201 0ustar fengfeng/* * KWin Style UKUI * * Copyright (C) 2020, KylinSoft Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Yue Lan * */ #ifndef XATOMHELPER_H #define XATOMHELPER_H #include struct UnityCorners { ulong topLeft = 0; ulong topRight = 0; ulong bottomLeft = 0; ulong bottomRight = 0; }; typedef struct { ulong flags = 0; ulong functions = 0; ulong decorations = 0; long input_mode = 0; ulong status = 0; } MotifWmHints, MwmHints; #define MWM_HINTS_FUNCTIONS (1L << 0) #define MWM_HINTS_DECORATIONS (1L << 1) #define MWM_HINTS_INPUT_MODE (1L << 2) #define MWM_HINTS_STATUS (1L << 3) #define MWM_FUNC_ALL (1L << 0) #define MWM_FUNC_RESIZE (1L << 1) #define MWM_FUNC_MOVE (1L << 2) #define MWM_FUNC_MINIMIZE (1L << 3) #define MWM_FUNC_MAXIMIZE (1L << 4) #define MWM_FUNC_CLOSE (1L << 5) #define MWM_DECOR_ALL (1L << 0) #define MWM_DECOR_BORDER (1L << 1) #define MWM_DECOR_RESIZEH (1L << 2) #define MWM_DECOR_TITLE (1L << 3) #define MWM_DECOR_MENU (1L << 4) #define MWM_DECOR_MINIMIZE (1L << 5) #define MWM_DECOR_MAXIMIZE (1L << 6) #define MWM_INPUT_MODELESS 0 #define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1 #define MWM_INPUT_SYSTEM_MODAL 2 #define MWM_INPUT_FULL_APPLICATION_MODAL 3 #define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL #define MWM_TEAROFF_WINDOW (1L<<0) namespace UKUI { class Decoration; } class XAtomHelper : public QObject { friend class UKUI::Decoration; Q_OBJECT public: static XAtomHelper *getInstance(); static bool isFrameLessWindow(int winId); bool isWindowDecorateBorderOnly(int winId); bool isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint); bool isUKUICsdSupported(); bool isUKUIDecorationWindow(int winId); UnityCorners getWindowBorderRadius(int winId); void setWindowBorderRadius(int winId, const UnityCorners &data); void setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight); void setUKUIDecoraiontHint(int winId, bool set = true); void setWindowMotifHint(int winId, const MotifWmHints &hints); MotifWmHints getWindowMotifHint(int winId); private: explicit XAtomHelper(QObject *parent = nullptr); unsigned long registerUKUICsdNetWmSupportAtom(); void unregisterUKUICsdNetWmSupportAtom(); unsigned long m_motifWMHintsAtom = 0l; unsigned long m_unityBorderRadiusAtom = 0l; unsigned long m_ukuiDecorationAtion = 0l; }; #endif // XATOMHELPER_H kylin-video-3.1.3/src/global/globalsetup.h0000644000175000017500000000676114214075177017133 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef GLOBALSETUP_H #define GLOBALSETUP_H #include #include // 预设 pcie 设备 struct PciePredefined { int vid; int pid; int cid; int score; QString description; }; // pcie 已有设备 struct PcieInfo { int vid; int pid; int cid; }; class GlobalSetup : public QObject { Q_OBJECT public: enum HardwareDecodecType { DEFAULT_SOFTWARE = -1, AMD_VDPAU, JM7200_VDPAU, GP101_SOFTWARE, Sm768_SOFTWARE, Nvidia_VDPAU_COPY, OTHER_SOFTWARE }; static GlobalSetup* getInstance(); void reset(); void clearChange(); void flushChange(); QPair miniToTray; // 缩小到托盘 QPair pauseWhenMini; // 最小化时暂停 QPair keepStateWhenWakeup; // 最小化时暂停 QPair canRunMultiple; // 运行多个播放器 QPair fullScreenWhenPlay; // 播放时自动全屏 QPair clearListWhenExit; // 退出时清空列表 QPair playLastPos; // 从上次停止的位置播放 QPair playRelationFile; // 自动查找关联文件播放 QPair screenShotSaveToClip; // 截图保存到剪切板(false:保存到文件) QPair screenShotCurrentSize; // 截图为当前尺寸 QPair screenShotPath; // 截图保存路径 QPair screenShotFormat;// 截图格式 QPair subFontSize; // 字幕字体大小 QPair loadSameNameSub; // 自动载入同名字幕 QPair loadAllSubInDir; // 自动载入其他字幕 QPair subDir; // 字幕载入目录 QPair subFontFamily; // 字幕字体 QPair globalVolume; // 全局音量 QPair standardVolume; // 默认音量标准化 QPair audioOut; // 声音输出选择 如果找不到的话选默认 QPair videoDecoder; // 视频解码器 QPair videoOutput; // 视频输出驱动 QPair videoDecodeThreads; // 视频解码线程 QPair seamlessBrowsing; // 无痕浏览 QPair audioChannel; // 声道 0/1/2 | 立体/左/右 signals: private: explicit GlobalSetup(QObject *parent = nullptr); static GlobalSetup* instance; QList predefinedList; QList pcieList; private: void updatePredefinedList(); void updatePcieList(); HardwareDecodecType getHardwareDecodingType(); }; #endif // GLOBALSETUP_H kylin-video-3.1.3/src/global/functions.cpp0000644000175000017500000000762014214075177017150 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "functions.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include QString Functions::Url(QString url, const QString &path) { const QString urlType = getUrlType(url); const bool hasBackslash = url.contains('\\'); if (urlType.isEmpty()) { if (!url.startsWith("/")) { QString addPth = path.isEmpty() ? QDir::currentPath() : path; if (!addPth.endsWith("/")) addPth += '/'; url.prepend(addPth); } if (hasBackslash && !QFileInfo(url).exists()) url.replace("\\", "/"); url.prepend("file://"); } return url; } /** ******************** * 获取url类型 * @parm : url ***********************/ QString Functions::getUrlType(const QString &url) { int idx = url.indexOf(':'); if (idx > -1 && url[0] != '/') return url.left(idx); return QString(); } /** ******************** * 时间戳转字符串 * @parm : t 时间 * @parm : decimals 是否有小数 ***********************/ QString Functions::timeToStr(const double t, const bool decimals) { if (t <= 0.0) return QString("--:--:--"); const int intT = t; const int h = intT / 3600; const int m = intT % 3600 / 60; const int s = intT % 60; QString timStr; // if (h > 0) // 默认先显示小时 timStr = QString("%1:").arg(h, 2, 10, QChar('0')); timStr += QString("%1:%2").arg(m, 2, 10, QChar('0')).arg(s, 2, 10, QChar('0')); if (decimals) timStr += QString(".%1").arg(qRound((t - floor(t)) * 10.0), 1, 10); return timStr; } /** ******************** * 获取文件全路径 * @parm : file 文件绝对路径 ***********************/ QString Functions::filePath(const QString &file) { return file.left(file.lastIndexOf('/') + 1); } /** ******************** * 获取文件扩展名 * @parm : file 文件绝对路径 ***********************/ QString Functions::fileExt(const QString &file) { const int idx = file.lastIndexOf('.'); if (idx > -1) return file.mid(idx+1); return QString(); } bool Functions::isKirinCpu() { QProcess p; p.setProgram("lscpu"); p.start(); p.waitForReadyRead(); QByteArray line = "123"; bool is_kirin_cpu = false; while (line.length()) { line = p.readLine(); if (QString(line).startsWith(QObject::tr("Model name")) && QString(line).indexOf("Kirin") >= 0) { is_kirin_cpu = true; } } p.waitForFinished(); return is_kirin_cpu; } QString Functions::processComand(const QString &cmd) { FILE *fp = popen(cmd.toStdString().c_str(), "r"); char buffer[1024] = {0}; QString result = QString::fromUtf8(fgets(buffer, sizeof(buffer), fp)); pclose(fp); return result.replace("\n", ""); } bool Functions::isQingsongDevice() { return processComand("lsmod | grep qs | wc -l").toInt() > 0; } kylin-video-3.1.3/src/global/paths.cpp0000644000175000017500000000573214214075177016261 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "paths.h" #include #include #include #include #include #include QString Paths::app_path = ""; QString Paths::config_path = ""; QString Paths::log_path = ""; void Paths::setAppPath(QString path) { app_path = path; } QString Paths::previewPath() { QString fulldir = configPath() + "/preview"; QDir dir(fulldir); if (!dir.exists()) { dir.mkdir(fulldir); } return fulldir; } QString Paths::appPath() { return app_path; } QString Paths::translationPath() { QString path; if (QDir("/usr/share/kylin-video/translations").exists()) { path = "/usr/share/kylin-video/translations"; return path; } else { return appPath() + "/translations"; } } QString Paths::shortcutsPath() { return appPath() + "/shortcuts"; } QString Paths::qtTranslationPath() { return QLibraryInfo::location(QLibraryInfo::TranslationsPath);// /usr/share/qt5/translations } void Paths::setConfigPath(QString path) { config_path = path; QDir dir(config_path); if(!dir.exists()) { dir.mkdir(config_path); } } void Paths::setLogPath(QString path) { log_path = log_path; QDir dir(config_path); if(!dir.exists()) { dir.mkdir(log_path); } } QString Paths::configPath() { if (!config_path.isEmpty()) { return config_path; } else { QDir dir(QDir::homePath() + "/.config/kylin-video"); if(!dir.exists()) { dir.mkdir(QDir::homePath() + "/.config/kylin-video"); } return QDir::homePath() + "/.config/kylin-video"; } } QString Paths::iniPath() { return configPath(); } QString Paths::logPath() { if (!log_path.isEmpty()) { return log_path; } else { QDir dir(QDir::homePath() + "/.cache/kylin-video"); if(!dir.exists()) { bool ret = dir.mkpath(QDir::homePath() + "/.cache/kylin-video"); if(!ret) { qDebug() << "log path create error!"; } } return QDir::homePath() + "/.cache/kylin-video"; } } QString Paths::subtitleStyleFile() { return configPath() + "/styles.ass"; } kylin-video-3.1.3/src/global/extensions.h0000644000175000017500000000313114214075177016775 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef _EXTENSIONS_H_ #define _EXTENSIONS_H_ #include class ExtensionList : public QStringList { public: ExtensionList(); QString forFilter(); QStringList forDirFilter(); QString forRegExp(); }; class Extensions { public: Extensions(); ~Extensions(); ExtensionList video() { return _video; } ExtensionList audio() { return _audio; } ExtensionList playlist() { return _playlist; } ExtensionList subtitles() { return _subtitles; } ExtensionList multimedia() { return _multimedia; } ExtensionList allPlayable() { return _all_playable; } static QString extensionFromUrl(const QString & url); protected: ExtensionList _video, _audio, _playlist, _subtitles; ExtensionList _multimedia; //!< video and audio ExtensionList _all_playable; //!< video, audio and playlist }; #endif kylin-video-3.1.3/src/global/translator.h0000644000175000017500000000224414214075177016773 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef _TRANSLATOR_H_ #define _TRANSLATOR_H_ #include #include class Translator { public: Translator(); ~Translator(); void load(const QString &snap); protected: static bool loadCatalog(QTranslator & t, QString name, QString locale, QString dir); QTranslator app_trans; QTranslator app_qt_trans; // lc add 20201015 QTranslator qt_trans; }; #endif kylin-video-3.1.3/src/global/globalsignal.h0000644000175000017500000003235014214075177017241 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef GLOBALSIGNAL_H #define GLOBALSIGNAL_H #include #include #include "core/mpvtypes.h" #include "global/extensions.h" #include "global/global.h" //using namespace Global; enum PlayOrder{ ONE_LOOP, /*单曲循环*/ LIST_LOOP, /*列表循环*/ RANDOM, /*随即播放*/ SEQUENCE /*顺序播放*/ }; /** ****************************** * 用户全局信号,主要用来发送主动信号 *********************************/ class GlobalUserSignal : public QObject { Q_OBJECT public: static GlobalUserSignal* getInstance(); void showStopFrame() {emit sigShowStopFrame();} void openHelpDoc() {emit sigOpenHelpDoc();} void exitApp() {emit sigExit();} void setTheme(int theme) {emit sigTheme(theme);} void showRightMenu() {emit sigRightMenuShow();} void playWidgetClick() {emit sigPlayWidgetClicked();} void changeShowMode() {emit sigChangeShowMode();} // 控制栏 右键菜单 void open(QString file, int pos) {emit sigOpen(file, pos);} void stop() {emit sigStop();} void play() {emit sigPlay();} void pause() {emit sigPause();} void play_pause() {emit sigPlayPause();} void forword(bool b) {emit sigForword(b);} void backword(bool b) {emit sigBackword(b);} void seek(int seek_time) {emit sigSeek(seek_time);} void restart() {emit sigRestart();} // 右键菜单 void selectFile() {emit sigSelectFile();} void selectDir() {emit sigSelectDir();} void selectSub() {emit sigSelectSub();} void addSub(QString file) {emit sigAddSub(file);} void setSubId(int id) {emit sigSubId(id);} void setSubNext() {emit sigSubNext();} void setSubUp() {emit sigSubUp();} void setSubDown() {emit sigSubDown();} void setSubForward() {emit sigSubForward();} void setSubBackward() {emit sigSubBackward();} // 设置界面 void setSubSize(int size) {emit sigSubSize(size);} void setSubFont(QString family) {emit sigSubFont(family);} void setChannel(Mpv::Channel cl) {emit sigChannel(cl);} void setSpeed(double s) {emit sigSpeed(s);} void setSpeedUp() {emit sigSpeedUp();} void setSpeedDown() {emit sigSpeedDown();} void setVolume(int v) {emit sigVolume(v);} void setVolumeUp() {emit sigVolumeUp();} void setVolumeDown() {emit sigVolumeDown();} void setMute(bool mute) {emit sigMute(mute);} void setMute() {emit sigMute();} void setAudioId(int id) {emit sigAudioId(id);} void setAudioNext() {emit sigAudioNext();} void setToTop() {emit sigToTop();} void setAspect(Mpv::VideoAspect va) {emit sigAspect(va);} void restoreFrame() {emit sigRestoreFrame();} void horizontallyFlip() {emit sigHorizontallyFlip();} void verticalFlip() {emit sigVerticalFlip();} void clockwiseRotate() {emit sigClockwiseRotate();} void counterClockwiseRotate() {emit sigCounterClockwiseRotate();} void brightnessUp() {emit sigBrightnessUp();} void brightnessDown() {emit sigBrightnessDown();} void fullScreen() {emit sigFullScreen();} void addDir(QString dir) {emit sigAddDir(dir);} void addFiles(QStringList files) {emit sigAddFiles(files);} void playNext(bool manual) {emit sigPlayNext(manual);} void playPrev(bool manual) {emit sigPlayPrev(manual);} void setPlayOrder(PlayOrder order) {emit sigPlayOrder(order);} void changePlayOrder() {emit sigChangePlayOrder();} void addListItem(QString file, int duration){emit sigListItemChange(file, duration, true);} void deleteListItem(QString file) {emit sigListItemChange(file, 0, false);} void showSetup(int index) {emit sigShowSetup(index);} void showAbout() {emit sigShowAbout();} void showPlayList() {emit sigShowPlayList();} void addBookMark(QString desc) {emit sigAddBookMark(desc);} void screenShot(bool withSub) {emit sigScreenShot(withSub);} void screenShotDir(QString dir) {emit sigScreenShotDir(dir);} void screenShotFormat(QString format) {emit sigScreenShotFormat(format);} void hideBar(bool hide) {emit sigHideBar(hide);} void clearPlayList() {emit sigClearPlayList();} void showInfo(bool isShow) {emit sigShowInfo(isShow);} void setNoMarkMode(bool noMark) {emit sigNoMarkMode(noMark);} void setVideoDecoder(QString decoder) {emit sigVideoDecoder(decoder);} void setVideoOutput(QString vo) {emit sigVideoOutput(vo);} void setVideoDecodeThreads(int threads) {emit sigVideoDecodeThread(threads);} void setAudioDecoder(QString decoder) {emit sigVideoDecoder(decoder);} signals: void sigShowStopFrame(); // 显示停止后的默认界面 void sigOpenHelpDoc(); // 打开帮助文档 void sigExit(); // 退出 void sigChangeShowMode(); // 切换显示模式( mini,normal ) void sigPlayWidgetClicked(); // 播放界面被单击 void sigSelectFile(); // 选择一个文件 void sigSelectDir(); // 选择一个目录 void sigTheme(int); // 设置主题 (0:跟随系统/1:亮色主题/2:暗色主题) void sigRightMenuShow(); // 显示右键菜单 void sigOpen(QString, int); // 打开文件 void sigStop(); // 停止播放 void sigPlay(); // 播放 void sigPlayPause(); // 播放暂停 给不知道播放状态的人用 void sigSeek(int); // 跳转 void sigRestart(); // 重新播放 void sigBackword(bool); // 快退 true:10秒 false:30秒 void sigForword(bool); // 快进 true:10秒 false:30秒 void sigPause(); // 暂停 void sigSpeed(double); // 速度 void sigSpeedUp(); // 加速播放 void sigSpeedDown(); // 减速播放 void sigVolume(int); // 声音 void sigVolumeUp(); // 声音增加 void sigVolumeDown(); // 声音减小 void sigMute(bool); // 设置静音 void sigMute(); // 告诉控制栏让它去设置静音 void sigAudioId(int); // 设置音轨 void sigAspect(Mpv::VideoAspect); // 画面比例 void sigRestoreFrame(); // 画面还原 void sigHorizontallyFlip(); // 水平翻转 void sigVerticalFlip(); // 垂直翻转 void sigClockwiseRotate(); // 顺时针旋转90 void sigCounterClockwiseRotate(); // 逆时针旋转90 void sigBrightnessUp(); // 亮度增加 void sigBrightnessDown(); // 亮度减小 void sigToTop(); // 置顶 void sigAddDir(QString); // 添加文件夹 void sigAddFiles(QStringList); // 添加多个文件 void sigSelectSub(); // 选择字幕 void sigAddSub(QString); // 加载字幕 void sigSubSize(int size); // 字幕字体大小 void sigSubFont(QString family); // 字幕字体 void sigSubId(int); // 修改字幕id void sigSubNext(); // 切换到下一个字幕 void sigSubUp(); // 字幕上移 void sigSubDown(); // 字幕下移 void sigSubForward(); // 字幕快进0.5秒 void sigSubBackward(); // 字幕推迟0.5秒 void sigChannel(Mpv::Channel); // 设置声道 void sigAudioNext(); // 切换音轨 void sigPlayNext(bool); // 播放下一个(自动播放下一个也发送这个信号) void sigPlayPrev(bool); // 播放上一个 void sigPlayOrder(PlayOrder); // 设置播放顺序 void sigChangePlayOrder(); // 切换播放顺序 void sigShowSetup(int); // 弹出设置界面 void sigShowAbout(); // 弹出设置界面 void sigShowPlayList(); // 显示播放列表 void sigFullScreen(); // 全屏播放(true:全屏 false:非全屏) void sigAddBookMark(QString desc); // 添加书签 void sigScreenShot(bool); // 截图 void sigScreenShotDir(QString); // 截图保存路径 void sigScreenShotFormat(QString); // 截图保存格式 void sigHideBar(bool); // 隐藏控制栏(标题栏) true:隐藏 false:显示 void sigShowInfo(bool); // osd显示profile true:显示 false:隐藏 void sigClearPlayList(); // 清空播放列表 void sigVideoDecoder(QString); // 切换视频解码器 void sigVideoOutput(QString); // 切换视频输出驱动 void sigVideoDecodeThread(int); // 解码线程修改 void sigNoMarkMode(bool); // 设置无痕模式 void sigListItemChange(QString, int, bool); // 设置播放列表 private: explicit GlobalUserSignal(QObject *parent = nullptr); static GlobalUserSignal* instance; }; /** ****************************** * mpv全局信号,主要用来发送被动信号 *********************************/ class GlobalCoreSignal : public QObject { Q_OBJECT public: static GlobalCoreSignal* getInstance(); void notifyMute(bool m) {emit sigMuteChange(m);} void notifySubId(int id) {emit sigSubIdChange(id);} void notifySpeed(double s) {emit sigSpeedChange(s);} void notifyTracks(QList tracks) {emit sigTracksChange(tracks);} void notifyVolume(int v) {emit sigVolumeChange(v);} void notifyAudioId(int id) {emit sigAudioIdChange(id);} void notifyVideoId(int id) {emit sigVideoIdChange(id);} void notifyFileInfo(Mpv::FileInfo fi) {emit sigFileInfoChange(fi);} void notifyPlayState(Mpv::PlayState state) {emit sigStateChange(state);} void notifyCurrentTime(double time) {emit sigCurrentTime(time);} void notifyFileNotExist(QString file) {emit sigFileNotExist(file);} void notify10FrameUseTime(qint64 use_time) {emit sig10FrameUseTime(use_time);} void notifyFileLoadedError(QString file) {emit sigFileLoadedError(file);} void notifyDuration(QString file, double duration) {emit sigDuration(file, duration);} void notifyMarkAdded(QString file, int pos, QString desc, QString view) {emit sigMarkAdded(file, pos, desc, view);} signals: void sigFileLoadedError(QString); void sigFileNotExist(QString); void sigFileInfoChange(Mpv::FileInfo); void sigStateChange(Mpv::PlayState); void sigCurrentTime(double); void sigDuration(QString, double); void sigVolumeChange(int); void sigSpeedChange(double); void sigMuteChange(bool); void sigTracksChange(QList); void sigSubIdChange(int); void sigVideoIdChange(int); void sigAudioIdChange(int); void sig10FrameUseTime(qint64); void sigMarkAdded(QString, int, QString, QString); private: explicit GlobalCoreSignal(QObject *parent = nullptr); static GlobalCoreSignal* instance; }; #define g_user_signal GlobalUserSignal::getInstance() #define g_core_signal GlobalCoreSignal::getInstance() #endif // GLOBALSIGNAL_H kylin-video-3.1.3/src/global/global.h0000644000175000017500000000370614214075177016046 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef _GLOBAL_H_ #define _GLOBAL_H_ #include #include #include #include "kvsqlite.h" #include "globalsetup.h" #include "shortcutsetting.h" #include "ukui-wayland/ukui-decoration-client.h" #include "ukui-wayland/ukui-decoration-manager.h" #include "ukui-wayland/plasma-shell-manager.h" // Some global objects #define MENUWIDTH 180 #define MENU_BAR_BTN_SIZE 30 #define CONTRAL_BAR_BTN_SIZE 16 class QSettings; class Translator; class QGSettings; class ShortCutSetting; //using namespace Control; #define ORG_UKUI_STYLE "org.ukui.style" #define STYLE_UKUI_DEFAULT "ukui" #define STYLE_UKUI_BLACK "ukui-dark" #define ICO_DIR_DEFAULT "ico_light" #define ICO_DIR_DBLACK "ico" namespace Global { // 错误类型 enum KERROR_TYPE{ NO_ERROR = 0 }; extern QGSettings *g_gsettings; //! Read and store application settings extern QSettings *g_settings; extern KVSqlite *g_sqlite; extern GlobalSetup *gsetup; extern ShortCutSetting *gshortCut; extern bool isWayland; //! Translator (for changing language) extern Translator * translator; void global_init(); void global_end(); } #endif kylin-video-3.1.3/src/global/shortcutsetting.cpp0000755000175000017500000002642314214075177020416 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "shortcutsetting.h" #include #include #include using namespace Global; ShortCutSetting* ShortCutSetting::instance = new ShortCutSetting; QSettings* ShortCutSetting::m_settings = nullptr; QString restoreKeyString(QString key){ key.replace(" + ", "+"); key.replace("Enter", "Return"); if(key.indexOf("空格") != -1) key.replace("空格", "Space"); return key; } ShortCutSetting::ShortCutSetting(QObject *parent) : QObject(parent) { initShortCutFunc(); } ShortCutSetting *ShortCutSetting::getInstance(QSettings *sets) { m_settings = sets; return instance; } ShortCutSetting::~ShortCutSetting() { } void ShortCutSetting::initData() { if(parent() == nullptr) { qDebug() << "please set parent!"; return; } // 初始化的时候读配置文件获取功能对应快捷键 m_shortcut_map[m_helpDoc] = newShortCut("help documentation", tr("help documentation"), "F1"); m_shortcut_map[m_exit] = newShortCut("exit", tr("exit"), "Ctrl+Q"); // 文件 m_shortcut_map[m_open_file] = newShortCut("open file", tr("open file"), "Ctrl+O"); m_shortcut_map[m_open_dir] = newShortCut("open dir", tr("open dir"), "Ctrl+F"); m_shortcut_map[m_prev_file] = newShortCut("prev file", tr("prev file"), "Page Up"); m_shortcut_map[m_next_file] = newShortCut("next file", tr("next file"), "Page Down"); // 播放 m_shortcut_map[m_play_pause] = newShortCut("play/pause", tr("play/pause"), "Space"); m_shortcut_map[m_speed_up] = newShortCut("speed up", tr("speed up"), "Ctrl+Up"); m_shortcut_map[m_speed_down] = newShortCut("speed down", tr("speed down"), "Ctrl+Down"); m_shortcut_map[m_speed_normal] = newShortCut("speed normal", tr("speed normal"), "R"); m_shortcut_map[m_forword] = newShortCut("forword", tr("forword"), "Right"); m_shortcut_map[m_backword] = newShortCut("backword", tr("backword"), "Left"); m_shortcut_map[m_forward_30] = newShortCut("forward 30s", tr("forward 30s"), "Ctrl+Right"); m_shortcut_map[m_backword_30] = newShortCut("backword 30s", tr("backword 30s"), "Ctrl+Left"); m_shortcut_map[m_insert_bookmark] = newShortCut("insert bookmark", tr("insert bookmark"), "B"); m_shortcut_map[m_ib_notes] = newShortCut("ib notes", tr("ib notes"), "Alt+B"); // 图像 m_shortcut_map[m_fullscreen] = newShortCut("fullscreen", tr("fullscreen"), "Return"); m_shortcut_map[m_mini_mode] = newShortCut("mini mode", tr("mini mode"), "Shift+Return"); m_shortcut_map[m_to_top] = newShortCut("to top", tr("to top"), "T"); m_shortcut_map[m_screenshot] = newShortCut("screenshot", tr("screenshot"), "Alt+A"); m_shortcut_map[m_cut] = newShortCut("cut", tr("cut"), "Alt+S"); m_shortcut_map[m_light_up] = newShortCut("light up", tr("light up"), "="); m_shortcut_map[m_light_down] = newShortCut("light down", tr("light down"), "-"); m_shortcut_map[m_forward_rotate] = newShortCut("forward rotate", tr("forward rotate"), "E"); m_shortcut_map[m_backward_rotate] = newShortCut("backward rotate", tr("backward rotate"), "F"); m_shortcut_map[m_horizontal_flip] = newShortCut("horizontal flip", tr("horizontal flip"), "Alt+W"); m_shortcut_map[m_vertical_flip] = newShortCut("vertical flip", tr("vertical flip"), "Alt+Q"); m_shortcut_map[m_image_boost] = newShortCut("image boost", tr("image boost"), "A"); // 声音 m_shortcut_map[m_volume_up] = newShortCut("volume up", tr("volume up"), "Up"); m_shortcut_map[m_volume_down] = newShortCut("volume down", tr("volume down"), "Down"); m_shortcut_map[m_mute] = newShortCut("mute", tr("mute"), "M"); m_shortcut_map[m_audio_next] = newShortCut("audio next", tr("audio next"), "S"); m_shortcut_map[m_default_channel] = newShortCut("default channel", tr("default channel"), "/"); m_shortcut_map[m_left_channel] = newShortCut("left channel", tr("left channel"), ","); m_shortcut_map[m_right_channel] = newShortCut("right channel", tr("right channel"), "."); // 字幕 m_shortcut_map[m_sub_load] = newShortCut("sub load", tr("sub load"), "Alt+0"); if(isWayland) { m_shortcut_map[m_sub_earlier] = newShortCut("sub earlier", tr("sub earlier"), "Shift+{"); m_shortcut_map[m_sub_later] = newShortCut("sub later", tr("sub later"), "Shift+}"); } else { m_shortcut_map[m_sub_earlier] = newShortCut("sub earlier", tr("sub earlier"), "Shift+["); m_shortcut_map[m_sub_later] = newShortCut("sub later", tr("sub later"), "Shift+]"); } m_shortcut_map[m_sub_up] = newShortCut("sub up", tr("sub up"), "Ctrl+["); m_shortcut_map[m_sub_down] = newShortCut("sub down", tr("sub down"), "Ctrl+]"); m_shortcut_map[m_sub_next] = newShortCut("sub next", tr("sub next"), "C"); // 其他 m_shortcut_map[m_play_list] = newShortCut("play list", tr("play list"), "F3"); m_shortcut_map[m_setup] = newShortCut("setup", tr("setup"), "F4"); for(std::pair p : m_shortcut_map){ if(p.second != nullptr) connect(p.second, &QShortcut::activated, p.first); } } /** ********************************************** * 使快捷键生效 * 说明 : 对应失效 *************************************************/ void ShortCutSetting::makeAllValid() { for(std::pair pair : m_shortcut_map) { if(pair.second == nullptr) continue; pair.second->setEnabled(true); } } /** ********************************************** * 使快捷键失效 * 说明 : wayland 环境下打开设置界面输入快捷键的时候会触发 * 快捷键功能,从而导致没有办法获取输入的快捷键。 *************************************************/ void ShortCutSetting::makeAllInvalid() { for(std::pair pair : m_shortcut_map) { if(pair.second == nullptr) continue; pair.second->setEnabled(false); } } QString ShortCutSetting::resetShort(QString name, QString s) { for(std::pair pair : m_shortcut_map) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == name) { // 修改快捷键,写入配置文件 QString rk = restoreKeyString(s); if(m_name_map.find(name) != m_name_map.end()) { // 先获取老的 key 再设置新的 key QString last_key = m_name_map[name]->key().toString(); m_settings->setValue("action/"+pair.second->property("setkey").toString(), rk); pair.second->setKey(QKeySequence(rk)); m_name_map[name]->setKey(QKeySequence(rk)); if(m_action_map.find(name) != m_action_map.end()) m_action_map[name]->setShortcut(QKeySequence(rk)); return last_key; } } } return QString(); } void ShortCutSetting::registerAction(QString name, QAction *act) { m_action_map[name] = act; } void ShortCutSetting::initShortCutFunc() { // 所有快捷键事件,后面可以改为QAction注册,目前是因为很多快捷键设计没有具体事件 m_exit = [](){g_user_signal->exitApp();}; m_helpDoc = [](){g_user_signal->openHelpDoc();}; // 文件 m_open_file = [](){g_user_signal->selectFile();}; m_open_dir = [](){g_user_signal->selectDir();}; m_prev_file = [](){g_user_signal->playPrev(true);}; m_next_file = [](){g_user_signal->playNext(true);}; // 播放 m_play_pause = [](){g_user_signal->play_pause();}; m_speed_up = [](){g_user_signal->setSpeedUp();}; m_speed_down = [](){g_user_signal->setSpeedDown();}; m_speed_normal = [](){g_user_signal->setSpeed(1.0);}; m_forword = [](){g_user_signal->forword(true);}; m_backword = [](){g_user_signal->backword(true);}; m_forward_30 = [](){g_user_signal->forword(false);}; m_backword_30 = [](){g_user_signal->backword(false);}; m_insert_bookmark = [](){if (!gsetup->seamlessBrowsing.first) g_user_signal->addBookMark(" ");}; m_ib_notes = [](){;}; // 图像 m_fullscreen = [](){g_user_signal->fullScreen();}; m_mini_mode = [](){g_user_signal->changeShowMode();}; m_screenshot = [](){g_user_signal->screenShot(false);}; m_cut = [](){;}; m_light_up = [](){g_user_signal->brightnessUp();}; m_light_down = [](){g_user_signal->brightnessDown();}; m_to_top = [](){g_user_signal->setToTop();}; m_forward_rotate = [](){g_user_signal->clockwiseRotate();}; m_backward_rotate = [](){g_user_signal->counterClockwiseRotate();}; m_horizontal_flip = [](){g_user_signal->horizontallyFlip();}; m_vertical_flip = [](){g_user_signal->verticalFlip();}; m_image_boost = [](){;}; // 声音 m_volume_up = [](){g_user_signal->setVolumeUp();}; m_volume_down = [](){g_user_signal->setVolumeDown();}; m_mute = [](){g_user_signal->setMute();}; m_audio_next = [](){g_user_signal->setAudioNext();}; m_default_channel = [](){g_user_signal->setChannel(Mpv::Stereo);}; m_left_channel = [](){g_user_signal->setChannel(Mpv::Left);}; m_right_channel = [](){g_user_signal->setChannel(Mpv::Right);}; // 字幕 m_sub_load = [](){g_user_signal->selectSub();}; m_sub_earlier = [](){g_user_signal->setSubForward();}; m_sub_later = [](){g_user_signal->setSubBackward();}; m_sub_up = [](){g_user_signal->setSubUp();}; m_sub_down = [](){g_user_signal->setSubDown();}; m_sub_next = [](){g_user_signal->setSubNext();}; m_play_list = [](){g_user_signal->showPlayList();}; m_setup = [](){g_user_signal->showSetup(0);}; } kylin-video-3.1.3/src/global/extensions.cpp0000644000175000017500000000614414214075177017337 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "extensions.h" #include ExtensionList::ExtensionList() : QStringList() { } QString ExtensionList::forFilter() { QString s; for (int n=0; n < count(); n++) { s = s + "*." + at(n) + " "; } if (!s.isEmpty()) s = " (" + s + ")"; return s; } QStringList ExtensionList::forDirFilter() { QStringList l; for (int n=0; n < count(); n++) { QString s = "*." + at(n); l << s; } return l; } QString ExtensionList::forRegExp() { QString s; for (int n=0; n < count(); n++) { if (!s.isEmpty()) s = s + "|"; s = s + "^" + at(n) + "$"; } return s; } Extensions::Extensions() { _video << "h264" << "h265" << "avi" << "vfw" << "divx" << "mpg" << "mpeg" << "m1v" << "m2v" << "mpv" << "dv" << "3gp" << "3p2" << "3g2" << "mov" << "mp4" << "m4v" << "mqv" << "dat" << "vcd" << "ogg" << "ogm" << "ogv" << "ogx" << "asf" << "wmv" << "bin" << "vob" << "mkv" << "nsv" << "ram" << "rm" << "swf" << "ts" << "rmvb" << "dvr-ms" << "m2t" << "m2ts" << "mts" << "rec" << "wtv" << "f4v" << "hdmov" << "webm" << "vp8" << "bik" << "smk" << "m4b" << "wtv" << "264" << "265" << "part" << "dpg" << "m2p" << "tp" << "flv" /*<< "iso"*/; _audio << "mp3" << "ogg" << "oga" << "ac3" << "aiff" << "ra" << "ape" << "flac" << "thd" << "mka" << "opus" << "mmf" << "mp2" << "wv" << "m4r" << "wav" << "dts" << "wma" << "m4a" << "aac" << "amr"; _subtitles << "srt" << "sub" << "ssa" << "ass" << "idx" << "smi" << "rt" << "utf" << "aqt" << "vtt" << "sup"; _playlist << "m3u" << "m3u8" << "pls" << "xspf"; _multimedia = _video; for (int n = 0; n < _audio.count(); n++) { if (!_multimedia.contains(_audio[n])) _multimedia << _audio[n]; } _all_playable << _multimedia << _playlist; } Extensions::~Extensions() { } QString Extensions::extensionFromUrl(const QString & url) { //qDebug() << "Extensions::extensionFromUrl:" << url; QString extension; int pos = url.lastIndexOf("."); if (pos != -1) { extension = url.mid(pos+1).toLower(); // Check if extension contains a '?' and remove everything after it pos = extension.lastIndexOf("?"); if (pos != -1) { extension = extension.left(pos); } } //qDebug() << "Extensions::extensionFromUrl: extension:" << extension; return extension; } kylin-video-3.1.3/src/global/iniparser.cpp0000644000175000017500000001150114214075177017125 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "global/iniparser.h" //remove all blank space string &TrimString(string &str) { string::size_type pos = 0; while(str.npos != (pos = str.find(" "))) str = str.replace(pos, pos+1, ""); return str; } //read in INI file and parse it int INIParser::ReadINI(string path) { ifstream in_conf_file(path.c_str()); if(!in_conf_file) return 0; string str_line = ""; string str_root = ""; vector vec_ini; while(getline(in_conf_file, str_line)) { string::size_type left_pos = 0; string::size_type right_pos = 0; string::size_type equal_div_pos = 0; string str_key = ""; string str_value = ""; if((str_line.npos != (left_pos = str_line.find("["))) && (str_line.npos != (right_pos = str_line.find("]")))) { //cout << str_line.substr(left_pos+1, right_pos-1) << endl; str_root = str_line.substr(left_pos+1, right_pos-1); } if(str_line.npos != (equal_div_pos = str_line.find("="))) { str_key = str_line.substr(0, equal_div_pos); str_value = str_line.substr(equal_div_pos+1, str_line.size()-1); str_key = TrimString(str_key); str_value = TrimString(str_value); // cout << str_key << "=" << str_value << endl; } //cout << str_key << "=" << str_value << endl; // if((!str_root.empty()) && (!str_key.empty()) && (!str_value.empty())) if((!str_root.empty()) && (!str_key.empty())) { ININode ini_node(str_root, str_key, str_value); vec_ini.push_back(ini_node); //cout << vec_ini.size() << endl; } } in_conf_file.close(); in_conf_file.clear(); //vector convert to map map map_tmp; for(vector::iterator itr = vec_ini.begin(); itr != vec_ini.end(); ++itr) { map_tmp.insert(pair(itr->root, "")); } SubNode sn; for(map::iterator itr = map_tmp.begin(); itr != map_tmp.end(); ++itr) { //cout << itr->first << endl; for(vector::iterator sub_itr = vec_ini.begin(); sub_itr != vec_ini.end(); ++sub_itr) { if(sub_itr->root == itr->first) { cout << sub_itr->key << "=" << sub_itr->value << endl; sn.InsertElement(sub_itr->key, sub_itr->value); } } map_ini.insert(pair(itr->first, sn)); } return 1; } //get value by root and key string INIParser::GetValue(string root, string key) { cout << root << " | " << key << endl; if(map_ini.find(root) == map_ini.end()) return ""; map::iterator itr = map_ini.find(root); itr->second.sub_node.size(); map::iterator sub_itr = itr->second.sub_node.find(key); if(!(sub_itr->second).empty()) return sub_itr->second; return ""; } //write ini file int INIParser::WriteINI(string path) { ofstream out_conf_file(path.c_str()); if(!out_conf_file) return -1; //cout << map_ini.size() << endl; for(map::iterator itr = map_ini.begin(); itr != map_ini.end(); ++itr) { //cout << itr->first << endl; out_conf_file << "[" << itr->first << "]" << endl; for(map::iterator sub_itr = itr->second.sub_node.begin(); sub_itr != itr->second.sub_node.end(); ++sub_itr) { //cout << sub_itr->first << "=" << sub_itr->second << endl; out_conf_file << sub_itr->first << "=" << sub_itr->second << endl; } } out_conf_file.close(); out_conf_file.clear(); return 1; } //set value vector::size_type INIParser::SetValue(string root, string key, string value) { map::iterator itr = map_ini.find(root); if(map_ini.end() != itr) itr->second.sub_node.insert(pair(key, value)); else { SubNode sn; sn.InsertElement(key, value); map_ini.insert(pair(root, sn)); } return map_ini.size(); } kylin-video-3.1.3/src/global/kvsqlite.cpp0000644000175000017500000002612414215020236016765 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "kvsqlite.h" #include #include #include #include #include "elog.h" #define LOG_TAG "sqlite" KVSqlite* KVSqlite::instance = nullptr; static QSqlDatabase base; KVSqlite *KVSqlite::getInstance(QString path) { if(instance == nullptr) { if(path == "") { qDebug() << "first use please set args"; return nullptr; } instance = new KVSqlite(path); } return instance; } /** ******************************* * 获取播放列表 * @return : * <文件绝对路径 < 文件名, 时长 > > **********************************/ QVector KVSqlite::getPlayList() { QVector res; QSqlQuery sql_query(base); if(!sql_query.exec("select * from playlist")) { qDebug() << sql_query.lastError(); log_e("Get play list error, why:%s", sql_query.lastError().text().toUtf8().constData()); m_lastErrorMessage = sql_query.lastError().text(); } else { while (sql_query.next()) { KPlaylistRecord rec; rec.path = sql_query.value(0).toString(); rec.name = sql_query.value(1).toString(); rec.duration = sql_query.value(2).toInt(); rec.mark = sql_query.value(3).toString(); rec.viewPath = sql_query.value(4).toString(); rec.lastTime = sql_query.value(5).toInt(); res.push_back(rec); } } return res; } /** ******************************* * 插入一条数据到播放列表 * 插入数据的时候对应建立书签数据表 * * @param : * path : 文件绝对路径 * name : 文件名 * duration : 媒体时长 **********************************/ bool KVSqlite::insertPlayList(QString path, QString name, int duration, QString view) { if(base.isOpen()) { QString mark_table_name = view.split("/").last(); mark_table_name.chop(4); QSqlQuery sql_query(base); if(!sql_query.exec(QString("insert into playlist values(\'%1\', \'%2\', %3, \'%5\', \'%4\', 0)") .arg(path) .arg(name) .arg(duration) .arg(view) .arg("mark" + mark_table_name))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Insert play list error, why:%s", m_lastErrorMessage.toUtf8().constData()); return false; } } return true; } /** ******************************* * 更新最后播放时间(从上次停止的位置播放用) * * @param : * path : 文件绝对路径 * lasttime : 停止时间 **********************************/ bool KVSqlite::updateLastTime(QString path, int lasttime) { if(base.isOpen()) { QSqlQuery sql_query(base); if(!sql_query.exec(QString("update playlist set lasttime=%0 where path=\'%1\'").arg(lasttime).arg(path))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Update last stop time error, why:%s", m_lastErrorMessage.toUtf8().constData()); return false; } } return true; } bool KVSqlite::updateDuration(QString path, int duration) { if(base.isOpen()) { QSqlQuery sql_query(base); if(!sql_query.exec(QString("update playlist set duration=%0 where path=\'%1\'").arg(duration).arg(path))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Update last stop time error, why:%s", m_lastErrorMessage.toUtf8().constData()); return false; } } return true; } QString KVSqlite::getMarkCharacter(QString path) { if (!base.isOpen()) { return QString(); } QSqlQuery sql_query(base); if(!sql_query.exec(QString("select marktable from playlist where path=\'%1\'").arg(path))) { m_lastErrorMessage = sql_query.lastError().text(); log_e("Update last stop time error, why:%s", m_lastErrorMessage.toUtf8().constData()); return QString(); } if (sql_query.next()) return sql_query.value(0).toString(); else return QString(); } /** ******************************* * 插入书签 * @param : * path : 文件绝对路径 * pos : 书签位置(秒) * desc : 书签描述 * * @return : true/false 插入成功/失败 **********************************/ bool KVSqlite::insertBookMark(QString path, int duration, int pos, QString desc, QString view) { if(base.isOpen()) { QSqlQuery sql_query(base); // 执行插入操作 if (!sql_query.exec(QString("insert into marklist values(\'%0\', %1, %2, \'%3\', \'%4\')").arg(path).arg(duration).arg(pos).arg(desc).arg(view))) { m_lastErrorMessage = sql_query.lastError().text(); log_e("Insert mark error, why:%s", m_lastErrorMessage.toUtf8().constData()); sql_query.clear(); return false; } return true; } return false; } void KVSqlite::deleteBookMark(QString path, int pos) { if(base.isOpen()) { QSqlQuery sql_query(base); sql_query.clear(); // 执行删除操作 if (!sql_query.exec(QString("delete from marklist where path=\'%1\' and pos=%2").arg(path).arg(pos))) { m_lastErrorMessage = sql_query.lastError().text(); log_e("Delete mark error, why:%s", m_lastErrorMessage.toUtf8().constData()); sql_query.clear(); } } } QVector KVSqlite::getMarks() { QVector vec; if (base.isOpen()) { QSqlQuery sql_query(base); if (sql_query.exec(QString("select * from marklist"))) { while (sql_query.next()) { MarkRecord rec; rec.path = sql_query.value(0).toString(); rec.duration = sql_query.value(1).toInt(); rec.pos = sql_query.value(2).toInt(); rec.desc = sql_query.value(3).toString(); rec.preview = sql_query.value(4).toString(); vec.push_back(rec); } } } return vec; } /** ******************************* * 获取上次停止时间 * @param : * path : 文件绝对路径 * * @return : 上次停止的时间 **********************************/ int KVSqlite::getLastTime(QString path) { QSqlQuery sql_query(base); if(!sql_query.exec(QString("select duration,lasttime from playlist where path=\'%1\'").arg(path))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Get last stop time error, why:%s", m_lastErrorMessage.toUtf8().constData()); } else { while (sql_query.next()) { // 如果停止时间大于等于总时长或者只剩下一秒(因为有的视频播放不到最后一秒,不知道为啥),则返回跳转时间为 0 return sql_query.value(1).toInt() >= (sql_query.value(0).toInt()-1) ? 0 : sql_query.value(1).toInt(); } } return 0; } /** ******************************* * 删除播放列表中一条数据 * 同时需要删除书签 * @param : * path : 文件绝对路径 **********************************/ bool KVSqlite::deletePlayList(QString path) { QSqlQuery sql_query(base); if (!sql_query.exec(QString("delete from marklist where path=\'%1\'").arg(path))) { // 删除书签失败 m_lastErrorMessage = sql_query.lastError().text(); log_e("Delete mark list error, why:%s", m_lastErrorMessage.toUtf8().constData()); } sql_query.clear(); if (!sql_query.exec(QString("delete from playlist where path=\'%1\'").arg(path))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Delete play list error, why:%s", m_lastErrorMessage.toUtf8().constData()); return false; } return true; } /** ******************************* * 清空播放列表 **********************************/ bool KVSqlite::clearPlayList() { QSqlQuery sql_query(base); if(!sql_query.exec(QString("truncate table playlist"))) { qDebug() << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Clear play list error, why:%s", m_lastErrorMessage.toUtf8().constData()); return false; } return true; } KVSqlite::KVSqlite(QString path) { base = QSqlDatabase::addDatabase("QSQLITE"); base.setDatabaseName(path); if (!base.open()) { qDebug() << "Error: Failed to connect database." << base.lastError(); log_e("Failed to connect database"); } else { qDebug() << "Succeed to connect database." ; } QSqlQuery sql_query(base); /** ******************************** * 创建数据表 * path : 文件绝对路径 * name : 文件名 * duration : 时长 * marks : 书签(mark1_mark2_mark3) * view : 预览图片路径 * lasttime : 上次停止时间 ***********************************/ if(!sql_query.exec("create table playlist(path text, name text, duration int, marktable text, view text, lasttime int)")) { qDebug() << "Error: Fail to create table." << sql_query.lastError(); m_lastErrorMessage = sql_query.lastError().text(); log_e("Create table playlist error, why:%s", m_lastErrorMessage.toUtf8().constData()); } else { qDebug() << "Table playlist created!"; } sql_query.clear(); /** ******************************** * 创建书签表 * path : 文件绝对路径 * pos : 书签时间 * describe : 书签描述 * preview : 预览图绝对路径 ***********************************/ if(!sql_query.exec("create table marklist(path text, int duration, pos int, describe text, preview text)")) { m_lastErrorMessage = sql_query.lastError().text(); log_e("Create table marklist error, why:%s", m_lastErrorMessage.toUtf8().constData()); } else { qDebug() << "Table marklist created!"; } } KVSqlite::~KVSqlite() { if(base.isOpen()) base.close(); } kylin-video-3.1.3/src/global/globalsignal.cpp0000644000175000017500000000236114214075177017573 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "globalsignal.h" GlobalUserSignal* GlobalUserSignal::instance = new GlobalUserSignal; GlobalUserSignal *GlobalUserSignal::getInstance() { return instance; } GlobalUserSignal::GlobalUserSignal(QObject *parent) : QObject(parent) { } GlobalCoreSignal* GlobalCoreSignal::instance = new GlobalCoreSignal; GlobalCoreSignal *GlobalCoreSignal::getInstance() { return instance; } GlobalCoreSignal::GlobalCoreSignal(QObject *parent) : QObject(parent) { } kylin-video-3.1.3/src/global/globalsetup.cpp0000644000175000017500000004441114214075177017460 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "globalsetup.h" #include "global/global.h" #include "global/globalsignal.h" #include "global/functions.h" using namespace Global; GlobalSetup* GlobalSetup::instance = nullptr; GlobalSetup *GlobalSetup::getInstance() { if(instance == nullptr) instance = new GlobalSetup; return instance; } void GlobalSetup::clearChange() { miniToTray.second = miniToTray.first; pauseWhenMini.second = pauseWhenMini.first; canRunMultiple.second = canRunMultiple.first; keepStateWhenWakeup.second = keepStateWhenWakeup.first; playLastPos.second = playLastPos.first; playRelationFile.second = playRelationFile.first; clearListWhenExit.second = clearListWhenExit.first; fullScreenWhenPlay.second = fullScreenWhenPlay.first; screenShotPath.second = screenShotPath.first; screenShotFormat.second = screenShotFormat.first; screenShotSaveToClip.second = screenShotSaveToClip.first; screenShotCurrentSize.second = screenShotCurrentSize.first; subDir.second = subDir.first; subFontSize.second = subFontSize.first; subFontFamily.second = subFontFamily.first; loadSameNameSub.second = loadSameNameSub.first; loadAllSubInDir.second = loadAllSubInDir.first; audioOut.second = audioOut.first; globalVolume.second = globalVolume.first; standardVolume.second = standardVolume.first; videoDecoder.second = videoDecoder.first; videoOutput.second = videoOutput.first; videoDecodeThreads.second = videoDecodeThreads.first; seamlessBrowsing.second = seamlessBrowsing.first; audioChannel.second = audioChannel.first; } void GlobalSetup::flushChange() { // 是否最小化到托盘 if (miniToTray.first != miniToTray.second) { miniToTray.first = miniToTray.second; g_settings->setValue("General/mini_to_tray", miniToTray.second); } // 最小化时暂停播放 if (pauseWhenMini.first != pauseWhenMini.second) { pauseWhenMini.first = pauseWhenMini.second; g_settings->setValue("General/pause_when_mini", pauseWhenMini.second); } if (keepStateWhenWakeup.first != keepStateWhenWakeup.second) { keepStateWhenWakeup.first = keepStateWhenWakeup.second; g_settings->setValue("General/keep_state_when_wakeup", keepStateWhenWakeup.second); } // 是否可运行多个播放器 if (canRunMultiple.first != canRunMultiple.second) { canRunMultiple.first = canRunMultiple.second; g_settings->setValue("General/can_run_multiple", canRunMultiple.second); } // 播放时自动全屏 if (fullScreenWhenPlay.first != fullScreenWhenPlay.second) { fullScreenWhenPlay.first = fullScreenWhenPlay.second; g_settings->setValue("General/fullscreen_when_play", fullScreenWhenPlay.second); } // 退出时清空播放列表 if (clearListWhenExit.first != clearListWhenExit.second) { clearListWhenExit.first = clearListWhenExit.second; g_settings->setValue("General/clearlist_when_exit", clearListWhenExit.second); } // 从上次停止的地方播放 if (playLastPos.first != playLastPos.second) { playLastPos.first = playLastPos.second; g_settings->setValue("General/play_last_pos", playLastPos.second); } // 自动播放相关文件 if (playRelationFile.first != playRelationFile.second) { playRelationFile.first = playRelationFile.second; g_settings->setValue("General/play_relation_file", playRelationFile.second); } // 截图保存为文件 if (screenShotSaveToClip.first != screenShotSaveToClip.second) { screenShotSaveToClip.first = screenShotSaveToClip.second; g_settings->setValue("General/screenshot_save_to_file", screenShotSaveToClip.second); } // 截图保存路径 if (screenShotPath.first != screenShotPath.second) { screenShotPath.first = screenShotPath.second; g_settings->setValue("General/screenshot_path", screenShotPath.second); g_user_signal->screenShotDir(screenShotPath.second); } // 截图格式 if (screenShotFormat.first != screenShotFormat.second) { screenShotFormat.first = screenShotFormat.second; g_settings->setValue("General/screenshot_format", screenShotFormat.second); g_user_signal->screenShotFormat(screenShotFormat.second); } // 截图尺寸 if (screenShotCurrentSize.first != screenShotCurrentSize.second) { screenShotCurrentSize.first = screenShotCurrentSize.second; g_settings->setValue("General/screenshot_size", screenShotCurrentSize.second); } // 自动载入同名字幕 if (loadSameNameSub.first != loadSameNameSub.second) { loadSameNameSub.first = loadSameNameSub.second; g_settings->setValue("General/load_same_name_subtitle", loadSameNameSub.second); } // 自动载入文件夹下其他字幕 if (loadAllSubInDir.first != loadAllSubInDir.second) { loadAllSubInDir.first = loadAllSubInDir.second; g_settings->setValue("General/load_all_dir_subtitle", loadAllSubInDir.second); } // 字幕载入路径 if (subDir.first != subDir.second) { subDir.first = subDir.second; g_settings->setValue("General/subtitle_dir", subDir.second); } // 字幕字体 if (subFontFamily.first != subFontFamily.second) { subFontFamily.first = subFontFamily.second; g_settings->setValue("General/subtitle_font_family", subFontFamily.second); g_user_signal->setSubFont(subFontFamily.first); } // 字幕字体大小 if (subFontSize.first != subFontSize.second) { subFontSize.first = subFontSize.second; g_settings->setValue("General/subtitle_font_size", subFontSize.second); g_user_signal->setSubSize(subFontSize.first); } // 音频输出驱动 if (audioOut.first != audioOut.second) { // 输出驱动无法在播放的时候修改 audioOut.first = audioOut.second; g_settings->setValue("General/audio_output_device", audioOut.second); g_user_signal->restart(); } // 全局音量 if (globalVolume.first != globalVolume.second) { globalVolume.first = globalVolume.second; g_settings->setValue("General/global_volume", globalVolume.second); } // 默认音量标准化 if (standardVolume.first != standardVolume.second) { standardVolume.first = standardVolume.second; g_settings->setValue("General/standard_volume", standardVolume.second); } // 视频解码器 if (videoDecoder.first != videoDecoder.second) { videoDecoder.first = videoDecoder.second; g_settings->setValue("General/video_decoder", videoDecoder.second); g_user_signal->setVideoDecoder(videoDecoder.second); } // 视频输出驱动 if (videoOutput.first != videoOutput.second) { videoOutput.first = videoOutput.second; g_settings->setValue("General/video_output", videoOutput.second); g_user_signal->setVideoOutput(videoOutput.second); } if (videoDecodeThreads.first != videoDecodeThreads.second) { videoDecodeThreads.first = videoDecodeThreads.second; g_settings->setValue("General/video_decode_threads", videoDecodeThreads.second); g_user_signal->setVideoDecodeThreads(videoDecodeThreads.second); } //无痕浏览 if (seamlessBrowsing.first != seamlessBrowsing.second) { seamlessBrowsing.first = seamlessBrowsing.second; g_settings->setValue("General/seamless_browsing", seamlessBrowsing.second); } // 声道 if (audioChannel.first != audioChannel.second) { audioChannel.first = audioChannel.second; g_settings->setValue("General/audio_channel", audioChannel.second); } } GlobalSetup::GlobalSetup(QObject *parent) : QObject(parent) { reset(); } void GlobalSetup::updatePredefinedList() { //# 对于PCIe设备的预处理 //# 格式:"VID:PID:ClassID:预设分数:描述信息" //# 一行一条规则 //# VID、PID中,-1或者0xFFFF代表匹配所有 //# ClassID中,-1或者0xFFFFFF代表匹配所有 //# 例如:"0x8086:0x1901:0x0:0:Intel PCIe Controller (x16)" QStringList itemList; itemList.append("1002:-1:-1:300:AMD Graphics Card"); itemList.append("10de:-1:-1:0:Nvidia Graphics Card"); itemList.append("0731:7200:-1:0:JINGJIA MICRO JM7200 Graphics Card"); itemList.append("126f:-1:-1:0:SM750/SM768"); itemList.append("0709:0001:-1:0:709 GP101 Graphics Card"); itemList.append("1a03:-1:-1:0:BMCd"); foreach (QString item, itemList) { item = item.trimmed(); if (item.startsWith("#")) continue; if (item.startsWith("//")) continue; PciePredefined device; QStringList stringList = item.split(":"); bool ok; if (stringList.count() < 5) continue; device.vid = stringList[0].toInt(&ok, 16); if (device.vid == -1) device.vid = 0xFFFF; stringList.removeAt(0); device.pid = stringList[0].toInt(&ok, 16); if (device.pid == -1) device.pid = 0xFFFF; stringList.removeAt(0); device.cid = stringList[0].toInt(&ok, 16); if (device.cid == -1) device.cid = 0xFFFFFF; stringList.removeAt(0); device.score = stringList[0].toInt(&ok, 10); stringList.removeAt(0); device.description = stringList.join(":").trimmed(); predefinedList.append(device); } } void GlobalSetup::updatePcieList() { QDir dir("/sys/bus/pci/devices/"); if (!dir.exists()) return; dir.setFilter(QDir::Dirs); QStringList busList = dir.entryList(); busList.removeOne("."); busList.removeOne(".."); foreach(QString bus, busList) { PcieInfo info; QString path; QFile file; QByteArray charArray; bool ok; int id; path = dir.absoluteFilePath(bus + "/" + "vendor"); file.setFileName(path); file.open(QIODevice::ReadOnly | QIODevice::Text); charArray = file.readAll(); file.close(); id = QString(charArray).toInt(&ok, 16); info.vid = id; path = dir.absoluteFilePath(bus + "/" + "device"); file.setFileName(path); file.open(QIODevice::ReadOnly | QIODevice::Text); charArray = file.readAll(); file.close(); id = QString(charArray).toInt(&ok, 16); info.pid = id; path = dir.absoluteFilePath(bus + "/" + "class"); file.setFileName(path); file.open(QIODevice::ReadOnly | QIODevice::Text); charArray = file.readAll(); file.close(); id = QString(charArray).toInt(&ok, 16); info.cid = id; pcieList.append(info); } } GlobalSetup::HardwareDecodecType GlobalSetup::getHardwareDecodingType() { //默认值为-1,表示使用软解 HardwareDecodecType type = DEFAULT_SOFTWARE; updatePredefinedList(); int size = predefinedList.size(); if (size > 0) { updatePcieList(); foreach (PciePredefined predefined, predefinedList) { foreach(PcieInfo info, pcieList) { if ( ((predefined.vid == info.vid) || (predefined.vid == 0xFFFF)) && ((predefined.pid == info.pid) || (predefined.pid == 0xFFFF)) && ((predefined.cid == info.cid) || (predefined.cid == 0xFFFFFF))) { qDebug("Find %s device(%04x:%04x.%04x), " "use predefine score: %d\n", predefined.description.toUtf8().data(), predefined.vid, predefined.pid, predefined.cid, predefined.score); char vidstr[128] = {0}; snprintf(vidstr, sizeof(vidstr), "%04x", predefined.vid); //printf("vidstr:%s\n", vidstr); QString vid = QString::fromStdString(std::string(vidstr)); //qDebug() << "vid:" << vid; //Find AMD Graphics Card device(1002:ffff.ffffff), use predefine score: 300 if (predefined.description == "AMD Graphics Card" && vid == "1002") { type = AMD_VDPAU; } else if (predefined.description == "JINGJIA MICRO JM7200 Graphics Card" && vid == "0731") { type = JM7200_VDPAU; } else if (predefined.description == "709 GP101 Graphics Card" && vid == "0709") { type = GP101_SOFTWARE; } else if (predefined.description == "SM750/SM768" && vid == "126f") { type = Sm768_SOFTWARE; } else if (predefined.description == "Zhaoxin Device 3d00" && vid == "1d17") { // type = zxe3d00; // zxe3d00 == AmdVdpau, 默认走 VDPAU 硬件解码 } else if (predefined.description == "Nvidia Graphics Card" && vid == "10de") { type = Nvidia_VDPAU_COPY; } return type; } } } } return type; } void GlobalSetup::reset() { miniToTray.first = miniToTray.second = g_settings->value("General/mini_to_tray").toBool(); pauseWhenMini.first = pauseWhenMini.second = g_settings->value("General/pause_when_mini").toBool(); keepStateWhenWakeup.first = keepStateWhenWakeup.second = g_settings->value("General/keep_state_when_wakeup").toBool(); canRunMultiple.first = canRunMultiple.second = g_settings->value("General/can_run_multiple").toBool(); fullScreenWhenPlay.first = fullScreenWhenPlay.second = g_settings->value("General/fullscreen_when_play").toBool(); clearListWhenExit.first = clearListWhenExit.second = g_settings->value("General/clearlist_when_exit").toBool(); playLastPos.first = playLastPos.second = g_settings->value("General/play_last_pos").toBool(); playRelationFile.first = playRelationFile.second = g_settings->value("General/play_relation_file").toBool(); screenShotSaveToClip.first = screenShotSaveToClip.second = g_settings->value("General/screenshot_save_to_file").toBool(); screenShotPath.first = screenShotPath.second = g_settings->value("General/screenshot_path").toString(); screenShotFormat.first = screenShotFormat.second = g_settings->value("General/screenshot_format").toString(); screenShotCurrentSize.first = screenShotCurrentSize.second = g_settings->value("General/screenshot_size").toBool(); loadSameNameSub.first = loadSameNameSub.second = g_settings->value("General/load_same_name_subtitle").toBool(); loadAllSubInDir.first = loadAllSubInDir.second = g_settings->value("General/load_all_dir_subtitle").toBool(); subDir.first = subDir.second = g_settings->value("General/subtitle_dir").toString(); subFontFamily.first = subFontFamily.second = g_settings->value("General/subtitle_font_family").toString(); subFontSize.first = subFontSize.second = g_settings->value("General/subtitle_font_size").toInt(); audioOut.first = audioOut.second = g_settings->value("General/audio_output_device").toString(); globalVolume.first = globalVolume.second = g_settings->value("General/global_volume").toBool(); standardVolume.first = standardVolume.second = g_settings->value("General/standard_volume").toBool(); videoDecoder.first = videoDecoder.second = g_settings->value("General/video_decoder").toString(); videoOutput.first = videoOutput.second = g_settings->value("General/video_output").toString(); if (videoDecoder.first == "") { HardwareDecodecType decodeType = getHardwareDecodingType(); if (decodeType == AMD_VDPAU) { videoDecoder.second = "vdpau"; videoOutput.second = "vdpau"; } else if (decodeType == JM7200_VDPAU) { videoOutput.second = "vdpau"; if (Functions::isQingsongDevice()) { videoDecoder.second = "no"; } else { videoDecoder.second = "vdpau"; } } else if (decodeType == Sm768_SOFTWARE) { videoOutput.second = "xv"; videoDecoder.second = "no"; } else if (decodeType == GP101_SOFTWARE) { videoOutput.second = "x11"; videoDecoder.second = "no"; } else if (decodeType == Nvidia_VDPAU_COPY) { videoOutput.second = "vdpau"; videoDecoder.second = "vdpau-copy"; } else { videoOutput.second = "auto"; videoDecoder.second = "default"; } #if defined(__loongarch__) videoOutput.second = "x11"; videoDecoder.second = "no"; #endif flushChange(); } videoDecodeThreads.first = videoDecodeThreads.second = g_settings->value("General/video_decode_threads").toInt(); if (videoDecodeThreads.first == 0) { #if defined(__loongarch__) videoDecodeThreads.second = sysconf(_SC_NPROCESSORS_ONLN) * 2 + 1; #else videoDecodeThreads.second = 4; #endif flushChange(); } seamlessBrowsing.first = seamlessBrowsing.second = g_settings->value("General/seamless_browsing").toBool(); audioChannel.first = audioChannel.second = g_settings->value("General/audio_channel").toInt(); } kylin-video-3.1.3/src/global/translator.cpp0000644000175000017500000000371214214075177017327 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "translator.h" #include "paths.h" #include #include #include #include Translator::Translator() { qApp->installTranslator(&app_trans); qApp->installTranslator(&app_qt_trans); // lc add 20201015 qApp->installTranslator(&qt_trans); } Translator::~Translator() { } bool Translator::loadCatalog(QTranslator & t, QString name, QString locale, QString dir) { QString s = name + "_" + locale + ".qm"; //.toLower(); bool r = t.load(s, dir); if (!r) { qDebug("Translator::loadCatalog: can't load %s from %s", s.toUtf8().data(), dir.toUtf8().data()); } return r; } void Translator::load(const QString &snap) { QString locale = QLocale::system().name(); QString trans_path = Paths::translationPath(); QString qt_trans_path; if (!snap.isEmpty()) { qt_trans_path = QString("%1%2").arg(snap).arg(Paths::qtTranslationPath()); } else { qt_trans_path = Paths::qtTranslationPath(); } loadCatalog(qt_trans, "qt", locale, qt_trans_path); loadCatalog(app_trans, "kylin-video", locale, trans_path); loadCatalog(app_qt_trans, "qtbase", locale, trans_path); // lc add 20201015 } kylin-video-3.1.3/src/global/iniparser.h0000644000175000017500000000334014214075177016574 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef INI_PARSER_H #define INI_PARSER_H #include #include #include #include #include #include using namespace std; class ININode { public: ININode(string root, string key, string value) { this->root = root; this->key = key; this->value = value; } string root; string key; string value; }; class SubNode { public: void InsertElement(string key, string value) { sub_node.insert(pair(key, value)); } map sub_node; }; class INIParser { public: int ReadINI(string path); string GetValue(string root, string key); vector::size_type GetSize(){return map_ini.size();} vector::size_type SetValue(string root, string key, string value); int WriteINI(string path); void Clear(){map_ini.clear();} private: map map_ini; }; #endif // INI_PARSER_H kylin-video-3.1.3/src/src.pro0000644000175000017500000001246114212620632014472 0ustar fengfengQT += core gui sql x11extras dbus KWaylandClient gui-private greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = kylin-video-new CONFIG += c++11 link_pkgconfig MOC_DIR += .moc PKGCONFIG += gsettings-qt wayland-client TRANSLATIONS += ./translations/kylin-video_zh_CN.ts # The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS _UNICODE # You can also make your code fail to compile if it uses deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 INCLUDEPATH += /usr/include/KF5/KWindowSystem/ ./log ./sliderbar !system($$PWD/translations/generate_translations_pm.sh): error("Failed to generate pm") qm_files.files = translations/*.qm qm_files.path = /usr/share/kylin-video/translations/ target.path = /usr/bin target.source = ./kylin-video-990 desktop.path = /usr/share/applications/ desktop.files = ../kylin-video.desktop help_files.files = ../data/kylin-video/ help_files.path = /usr/share/kylin-user-guide/data/guide/ INSTALLS += target \ desktop \ qm_files \ help_files SOURCES += \ aboutdialog.cpp \ checkbox/checkbox.cpp \ contralbar.cpp \ core/mpvcore.cpp \ core/subtracks.cpp \ core/util.cpp \ dbusadapter.cpp \ dialog.cpp \ eventpasswidget.cpp \ filletwidget.cpp \ ffutil.cpp\ global/extensions.cpp \ global/functions.cpp \ global/global.cpp \ global/globalsetup.cpp \ global/globalsignal.cpp \ global/iniparser.cpp \ global/kvsqlite.cpp \ global/paths.cpp \ global/shortcutsetting.cpp \ global/translator.cpp \ global/xatom-helper.cpp \ homepage.cpp \ imagelabel.cpp \ kaction.cpp \ kmenu.cpp \ log/elog.c \ log/elog_async.c \ log/elog_buf.c \ log/elog_file.c \ log/elog_file_port.c \ log/elog_port.c \ log/elog_utils.c \ main.cpp \ mainwidget.cpp \ mediainfodialog.cpp \ messagebox.cpp \ minimodebutton.cpp \ minimodeshade.cpp \ playglwidget.cpp \ playlist.cpp \ playlistwidget.cpp \ previewwidget.cpp \ setupdialog.cpp \ setupwidget/setupcodec.cpp \ setupwidget/setupplay.cpp \ setupwidget/setupscreenshot.cpp \ setupwidget/setupshortcut.cpp \ setupwidget/setupsubtitle.cpp \ setupwidget/setupsystem.cpp \ setupwidget/setupvolume.cpp \ sliderbar/progressbar.cpp \ sliderbar/slider.cpp \ sliderbar/sliderbar.cpp \ systemtrayicon.cpp \ timeslider.cpp \ tipwidget/tipwidget.cpp \ titlewidget.cpp \ topwindow.cpp \ ukui-wayland/plasma-shell-manager.cpp \ ukui-wayland/ukui-decoration-core.c \ ukui-wayland/ukui-decoration-manager.cpp \ ukui-wayland/waylanddialog.cpp HEADERS += \ aboutdialog.h \ checkbox/checkbox.h \ contralbar.h \ core/mpvcore.h \ core/mpvtypes.h \ core/subtracks.h \ core/util.h \ dbusadapter.h \ dialog.h \ eventpasswidget.h \ filletwidget.h \ ffutil.h \ global/extensions.h \ global/functions.h \ global/global.h \ global/globalsetup.h \ global/globalsignal.h \ global/iniparser.h \ global/kvsqlite.h \ global/paths.h \ global/shortcutsetting.h \ global/translator.h \ global/xatom-helper.h \ homepage.h \ imagelabel.h \ kaction.h \ kmenu.h \ log/elog.h \ log/elog_cfg.h \ log/elog_file.h \ log/elog_file_cfg.h \ mainwidget.h \ mediainfodialog.h \ messagebox.h \ minimodebutton.h \ minimodeshade.h \ playglwidget.h \ playlist.h \ playlistwidget.h \ previewwidget.h \ setupdialog.h \ setupwidget/setupcodec.h \ setupwidget/setupplay.h \ setupwidget/setupscreenshot.h \ setupwidget/setupshortcut.h \ setupwidget/setupsubtitle.h \ setupwidget/setupsystem.h \ setupwidget/setupvolume.h \ sliderbar/progressbar.h \ sliderbar/slider.h \ sliderbar/sliderbar.h \ systemtrayicon.h \ timeslider.h \ tipwidget/tipwidget.h \ titlewidget.h \ topwindow.h \ ukui-wayland/plasma-shell-manager.h \ ukui-wayland/ukui-decoration-client.h \ ukui-wayland/ukui-decoration-manager.h \ ukui-wayland/waylanddialog.h FORMS += \ aboutdialog.ui \ contralbar.ui \ mainwidget.ui \ mediainfodialog.ui \ playlistwidget.ui \ previewwidget.ui \ setupdialog.ui \ setupwidget/setupcodec.ui \ setupwidget/setupplay.ui \ setupwidget/setupscreenshot.ui \ setupwidget/setupshortcut.ui \ setupwidget/setupsubtitle.ui \ setupwidget/setupsystem.ui \ setupwidget/setupvolume.ui \ ukui-wayland/waylanddialog.ui LIBS += -lmpv \ -lX11 \ -lKF5WindowSystem \ -lavformat \ -lavdevice \ -lavcodec \ -lavutil \ -lswscale \ -lswresample \ -lzen \ -lmediainfo \ -lffmpegthumbnailer \ -lukui-log4qt RESOURCES += \ resource/res.qrc DISTFILES += \ resource/ico_light/0.5X-d.png kylin-video-3.1.3/src/imagelabel.cpp0000644000175000017500000000473014214075177015761 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "imagelabel.h" #include #include ImageLabel::ImageLabel(QWidget *parent): QLabel(parent) { m_labTime = new QLabel; QFont f("Noto Sans CJK SC Regular"); f.setPointSize(14); m_labTime->setFont(f); m_boxLayout = new QVBoxLayout(this); m_boxLayout->addStretch(); m_boxLayout->addWidget(m_labTime); m_boxLayout->setContentsMargins(0,0,0,0); m_labTime->setStyleSheet("color:#ffffff;" "background-color:qlineargradient(spread:pad, x1:0, y1:1, x2:0, y2:0, stop:0 rgba(19, 19, 20, 150), stop:1 rgba(255, 255, 255, 0));" "border-bottom-left-radius:5px;" "border-bottom-right-radius:5px;"); m_labTime->setAlignment(Qt::AlignCenter); } ImageLabel::~ImageLabel() { delete m_labTime; delete m_boxLayout; } void ImageLabel::setTime(QString time) { m_labTime->setText(time); } void ImageLabel::paintEvent(QPaintEvent *e) { if(pixmap()){ QPainter painter(this); painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform); QPainterPath path; path.addRoundedRect(QRectF(0, 0, width(), height()), 5, 5); painter.setClipPath(path); if(width() < pixmap()->width() || height() < pixmap()->height()) return; painter.setBackground(QBrush(QColor(0, 0, 0))); painter.drawPixmap((width() - pixmap()->width())/2, (height() - pixmap()->height())/2, pixmap()->width(), pixmap()->height(), *pixmap()); return; } return QLabel::paintEvent(e); } kylin-video-3.1.3/src/messagebox.h0000644000175000017500000000337314214075177015503 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MESSAGEBOX_H #define MESSAGEBOX_H #include "dialog.h" class QLabel; class QVBoxLayout; class QHBoxLayout; namespace KylinUI { #define TITLE_ICON_WIDTH 20 #define TEXT_ICON_WIDTH 22 #define WIDGET_WIDTH 380 #define WIDGET_HEIGHT 142 enum MessageType{ INFORMATION, QUESTION, WARNING, ABOUT }; /// 没写静态函数,调用接直接临时变量exec,有个确认取消,写静态太麻烦 class MessageBox : public Dialog { Q_OBJECT public: MessageBox(QString title, QString text, QWidget *parent = nullptr, MessageType type = INFORMATION); ~MessageBox(); private: MessageType msg_type; QLabel *lab_titleIcon, *lab_title, *lab_text, *lab_textIcon; QPushButton *btn_ok, *btn_cancel; QVBoxLayout *box_v; QHBoxLayout *box_ht, *box_hm, *box_hb; void setData(QString title, QString text); void initLayout(); }; } #endif // MESSAGEBOX_H kylin-video-3.1.3/src/previewwidget.cpp0000644000175000017500000001013514214075177016560 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "previewwidget.h" #include "ui_previewwidget.h" #include #include #include #include #include #include "core/util.h" #include "global/paths.h" #include "global/functions.h" #include using namespace Global; PreviewWidget::PreviewWidget(QWidget *parent) : QWidget(parent), ui(new Ui::PreviewWidget) { ui->setupUi(this); setAttribute(Qt::WA_TranslucentBackground); m_videoTbr = new VideoThumbnailer; m_videoTbr->setThumbnailSize(176); currentFile = ""; // 根据主题设置样式 setBlackTheme(); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, this, &PreviewWidget::slotFileInfoChange); connect(this, &PreviewWidget::updatePreview, this, [this](){ updatePos(); QString time_str = Functions::timeToStr((double)previewTime); ui->label_time->setText(time_str); ui->label_preview->setStyleSheet(QString("border-radius:8px;border-image:url(%1);") .arg(QDir::homePath().append("/.cache/kylin-video/tmp-preview.png"))); show(); }); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); ui->label_time->setFont(f); ui->label_preview->setFixedSize(192, 108); ui->frame->setFixedSize(192, 108); } PreviewWidget::~PreviewWidget() { delete ui; } void PreviewWidget::setHide() { previewTime = -1; hide(); } void PreviewWidget::setBlackTheme() { ui->widget->setStyleSheet("QWidget#widget{background-color:rgba(28,28,28,0);}"); ui->label_time->setStyleSheet("background-color:rgba(0,0,0,0);color:rgb(222,222,222)"); ui->frame->setStyleSheet("background-color:rgba(1,1,1,110);border-radius:8px;"); } void PreviewWidget::setLightTheme() { ui->widget->setStyleSheet("QWidget#widget{background-color:rgba(223,223,223,0);}QLabel{background-color:rgb(223,223,223);}"); ui->label_time->setStyleSheet("background-color:rgba(0,0,0,0);color:rgb(56,56,56)"); ui->frame->setStyleSheet("background-color:rgba(1,1,1,110);border-radius:8px;"); } void PreviewWidget::setPreview(int time) { if (time == previewTime) { return; } previewTime = time; QString time_str = Functions::timeToStr((double)previewTime); QThread::create([this, time_str, time](){ // 应该放到线程中去做 QString tmp_path = QDir::homePath().append("/.cache/kylin-video/tmp-preview.png"); // 如果文件不存在返回 QFileInfo fi(currentFile); if (!fi.exists()) { QImage img(":/ico/no-preview.png"); img.save(tmp_path); } else { m_videoTbr->setSeekTime(time_str.toStdString()); m_videoTbr->generateThumbnail(currentFile.toStdString(), Png, tmp_path.toStdString()); } if (previewTime == time) emit updatePreview(); })->start(); } void PreviewWidget::slotFileInfoChange(Mpv::FileInfo info) { currentFile = info.file_path; duration = info.length; previewTime = 0; } void PreviewWidget::updatePos() { // 更新位置,跟着鼠标走 if(previewTime == 0) previewTime = 1; int x = (double)previewTime * (double)moveRange / (double)duration - (ui->label_preview->width() / 2) + 240; int y = height() - 75 - ui->label_preview->height(); ui->frame->move(x, y); } kylin-video-3.1.3/src/homepage.cpp0000644000175000017500000001073514214075177015466 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "homepage.h" #include #include #include #include #include "global/global.h" using namespace Global; HomePage::HomePage(QWidget *parent) : QWidget(parent) { setAttribute(Qt::WA_TranslucentBackground); m_background = new QWidget(this); m_background->setObjectName("background_widget"); m_background->setStyleSheet("#background_widget{border-image: url(:/ico/bg.png);}"); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); m_btnOpenFile = new QPushButton; m_btnOpenFile->setFont(f); connect(m_btnOpenFile, &QPushButton::clicked, [this](){g_user_signal->sigSelectFile();}); m_btnOpenFile->setText(tr("open file")); m_btnOpenFile->setCursor(Qt::PointingHandCursor); m_btnOpenFile->setFixedSize(MainButtonSize); m_btnOpenFile->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,19);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:hover{background-color:rgba(255,255,255,25);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:pressed{background-color:rgba(255,255,255,14);border-radius:4px;color:rgb(255,255,255);}"); m_btnOpenDir = new QPushButton; m_btnOpenDir->setFont(f); connect(m_btnOpenDir, &QPushButton::clicked, [this](){g_user_signal->sigSelectDir();}); m_btnOpenDir->setText(tr("open dir")); m_btnOpenDir->setCursor(Qt::PointingHandCursor); m_btnOpenDir->setFixedSize(MainButtonSize); m_btnOpenDir->setStyleSheet("QPushButton:!hover{background-color:rgba(255,255,255,19);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:hover{background-color:rgba(255,255,255,25);border-radius:4px;color:rgb(255,255,255);}" "QPushButton:pressed{background-color:rgba(255,255,255,14);border-radius:4px;color:rgb(255,255,255);}"); QHBoxLayout *lay_btn = new QHBoxLayout; lay_btn->setContentsMargins(0, 0, 0, 0); lay_btn->setSpacing(8); lay_btn->addStretch(); lay_btn->addWidget(m_btnOpenFile); lay_btn->addWidget(m_btnOpenDir); lay_btn->addStretch(); m_btnLogo = new QPushButton; m_labLogoName = new QLabel; m_labLogoName->setText(tr("Video Player")); m_labLogoName->setStyleSheet("color: rgba(249, 249, 249, 204);" "font: 57 46px \"Noto Sans CJK SC Medium\";"); QHBoxLayout *lay_logo = new QHBoxLayout; lay_logo->setContentsMargins(0, 0, 0, 0); lay_logo->setSpacing(5); lay_logo->addStretch(); lay_logo->addWidget(m_btnLogo); lay_logo->addWidget(m_labLogoName); lay_logo->addStretch(); m_btnLogo->setFixedSize(QSize(70,70)); m_btnLogo->setIconSize(QSize(70,70)); m_btnLogo->setIcon(QIcon::fromTheme("kylin-video")); m_btnLogo->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); QVBoxLayout *lay_center = new QVBoxLayout; lay_center->setContentsMargins(0, 0, 0, 0); lay_center->setSpacing(30); lay_center->addLayout(lay_logo); lay_center->addLayout(lay_btn); QHBoxLayout *lay_hcenter = new QHBoxLayout; lay_hcenter->setContentsMargins(0, 0, 0, 0); lay_hcenter->addStretch(); lay_hcenter->addLayout(lay_center); lay_hcenter->addStretch(); QVBoxLayout *layout = new QVBoxLayout(m_background); layout->setContentsMargins(0, 0, 0, 0); layout->addStretch(); layout->addLayout(lay_hcenter); layout->addStretch(); } void HomePage::resizeEvent(QResizeEvent *e) { m_background->resize(size()); } kylin-video-3.1.3/src/sliderbar/0000755000175000017500000000000014214075177015136 5ustar fengfengkylin-video-3.1.3/src/sliderbar/sliderbar.h0000755000175000017500000000326614214075177017270 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SLIDERBAR_H #define SLIDERBAR_H #include #define DEFAULT_LR_MARGIN 8 #define MIN_HEIGHT 20 QT_FORWARD_DECLARE_CLASS(ProgressBar) QT_FORWARD_DECLARE_CLASS(Slider) class SliderBar : public QWidget { Q_OBJECT public: explicit SliderBar(QWidget *parent = nullptr); ~SliderBar(); void addMark(int value, QString desc); void deleteMark(int value); void clearMark(); void setTimeTip(QString tip); void setBlackTheme(); void setLightTheme(); public slots: void setValue(int val); void setRange(int min, int max); signals: void valueChange(int); void sliderMoved(int); void mousePosChange(int); void mouseLeave(); private: void initUI(); private: ProgressBar *m_progressBar; Slider *m_slider; int m_value; bool m_canSetValue; protected: void resizeEvent(QResizeEvent *e) override; }; #endif // SLIDERBAR_H kylin-video-3.1.3/src/sliderbar/slider.cpp0000755000175000017500000000657214214075177017141 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "slider.h" #include #include #include Slider::Slider(QWidget *parent) : QWidget(parent) { m_canHide = true; m_widgetSlider = new QWidget(this); m_widgetSlider->resize(size()); setAttribute(Qt::WA_TranslucentBackground, true); m_widgetSlider->setObjectName("slider"); m_widgetSlider->setStyleSheet("#slider{background-color:#FFFFFF;border-radius:6px;}"); } Slider::~Slider() { if (m_widgetSlider) { delete m_widgetSlider; m_widgetSlider = nullptr; } } void Slider::setHide() { if (m_canHide) { // 不延迟有冲突会一直 hide show,不知道为啥 QTimer::singleShot(100, [this](){ if (m_canHide) hide(); }); } } void Slider::updatePos() { int correct_l = m_mouseX - width() / 2; // 点击位置矫正,如果鼠标点击位置不在中心的话要移到中心 if (correct_l != 0) { if (correct_l + x() < m_minX) { move(m_minX, y()); } else if (correct_l + x() > m_maxX) { move(m_maxX, y()); } else { move(x() + correct_l, y()); } } // 矫正之后去更新进度条的位置 emit posXUpdate(x()); } void Slider::enterEvent(QEvent *e) { m_canHide = false; } void Slider::leaveEvent(QEvent *e) { m_canHide = true; hide(); } void Slider::resizeEvent(QResizeEvent *e) { m_widgetSlider->resize(size()); } void Slider::mouseMoveEvent(QMouseEvent *e) { m_mouseX = e->x(); updatePos(); } void Slider::mousePressEvent(QMouseEvent *e) { m_canHide = false; m_mouseX = e->x(); updatePos(); // 滑块被点击的时候进度条不能自动更新位置,只有被释放的时候才能去更新位置 emit lockProgress(true); } void Slider::mouseReleaseEvent(QMouseEvent *e) { // 鼠标释放的时候进度条可以自动更新位置 emit lockProgress(false); } FixedSlider::FixedSlider(QWidget *parent) : QWidget(parent) { setCursor(Qt::PointingHandCursor); setAttribute(Qt::WA_TranslucentBackground, true); m_widgetSlider = new QWidget(this); setFixedSize(6, 10); m_widgetSlider->setFixedSize(6, 10); m_widgetSlider->setStyleSheet("background-color:#11A8FF;" "border-radius:3px;" "border:1px solid #FFFFFF;"); } FixedSlider::~FixedSlider() { if (m_widgetSlider) { delete m_widgetSlider; m_widgetSlider = nullptr; } } void FixedSlider::mouseReleaseEvent(QMouseEvent *e) { if (e->button() == Qt::LeftButton) { emit clicked(); } } kylin-video-3.1.3/src/sliderbar/sliderbar.cpp0000755000175000017500000000642214214075177017620 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "sliderbar.h" #include #include "progressbar.h" #include "slider.h" SliderBar::SliderBar(QWidget *parent) : QWidget(parent) { initUI(); m_canSetValue = true; } SliderBar::~SliderBar() { if (m_slider) { delete m_slider; m_slider = nullptr; } if (m_progressBar) { delete m_progressBar; m_progressBar = nullptr; } } void SliderBar::addMark(int value, QString desc) { m_progressBar->addMark(value, desc); } void SliderBar::deleteMark(int value) { m_progressBar->deleteMark(value); } void SliderBar::clearMark() { m_progressBar->clearMark(); } void SliderBar::setTimeTip(QString tip) { m_progressBar->setToolTip(tip); } void SliderBar::setBlackTheme() { m_progressBar->setBlackTheme(); } void SliderBar::setLightTheme() { m_progressBar->setLightTheme(); } void SliderBar::setValue(int val) { if (!m_canSetValue) return; m_value = val; m_progressBar->setValue(val); m_slider->move(DEFAULT_LR_MARGIN + m_progressBar->getValueBarWidth() - (SLIDER_SIDE_SIZE / 2), (height() - SLIDER_SIDE_SIZE) / 2); } void SliderBar::setRange(int min, int max) { m_progressBar->setRange(min, max); } void SliderBar::initUI() { setAttribute(Qt::WA_TranslucentBackground, true); m_progressBar = new ProgressBar(this); connect(m_progressBar, &ProgressBar::valueChange, [this](int value) { emit valueChange(value); }); connect(m_progressBar, &ProgressBar::sliderMoved, [this](int value) { emit sliderMoved(value); // move 之后 200ms 才可以去 setValue m_canSetValue = false; QTimer::singleShot(200, [this](){m_canSetValue = true;}); }); connect(m_progressBar, &ProgressBar::mousePosChange, [this](int value) { emit mousePosChange(value); }); connect(m_progressBar, &ProgressBar::mouseLeave, [this]() { emit mouseLeave(); }); m_slider = new Slider(this); m_slider->setCursor(Qt::PointingHandCursor); m_slider->setHide(); m_slider->resize(12, 12); m_progressBar->setSlider(m_slider); } void SliderBar::resizeEvent(QResizeEvent *e) { m_progressBar->setGeometry(DEFAULT_LR_MARGIN, (height()-DEFAULT_HEIGHT) / 2, width() - (2 * DEFAULT_LR_MARGIN), DEFAULT_HEIGHT); // 设置滑块 x 轴滑动范围 m_slider->setXRange(DEFAULT_LR_MARGIN - (SLIDER_SIDE_SIZE / 2), width() - DEFAULT_LR_MARGIN - (SLIDER_SIDE_SIZE / 2)); m_progressBar->updateSliderPos(); } kylin-video-3.1.3/src/sliderbar/progressbar.cpp0000755000175000017500000001576414214075177020213 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "progressbar.h" #include #include #include #include #include "global/functions.h" #include "global/global.h" #include "sliderbar.h" ProgressBar::ProgressBar(QWidget *parent) : QWidget(parent), m_widgetDock(nullptr), m_valueBar(nullptr), m_maxValue(0), m_minValue(0) { m_canChange = true; setAttribute(Qt::WA_TranslucentBackground, true); m_widgetDock = new QWidget(this); m_widgetDock->setObjectName("progress"); m_widgetDock->setStyleSheet("#progress{background-color:rgba(255,255,255,26); border-radius:2px;}"); m_widgetDock->setCursor(Qt::PointingHandCursor); m_valueBar = new QWidget(m_widgetDock); m_valueBar->resize(0, DEFAULT_HEIGHT); m_valueBar->setFixedHeight(DEFAULT_HEIGHT); m_valueBar->setStyleSheet(QString("background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, " "stop:0 rgba(41, 134, 255, 255), stop:1 rgba(62, 255, 254, 255));" "border-radius:%1px;").arg(DEFAULT_HEIGHT/2)); m_valueBar->setMouseTracking(true); setMouseTracking(true); m_widgetDock->setMouseTracking(true); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [this](Mpv::PlayState st){if (st == Mpv::Stopped) m_canChange = true;}); } void ProgressBar::setRange(int min, int max) { if (min > max) { return; } m_minValue = min; m_maxValue = max; m_currentValue = 0; m_valueBar->resize(0, DEFAULT_HEIGHT); } void ProgressBar::setValue(int value) { if (!m_canChange) { return; } if (value < m_minValue || value > m_maxValue) { return; } m_currentValue = value; if (m_maxValue != m_minValue) m_valueBar->resize((m_currentValue - m_minValue) * width() / (m_maxValue - m_minValue), DEFAULT_HEIGHT); } void ProgressBar::setSlider(Slider *sl) { m_slider = sl; // 拖动滑块改变显示进度 connect(m_slider, &Slider::posXUpdate, [this](int x){ m_valueBar->resize(x - 8 + m_slider->width() / 2, DEFAULT_HEIGHT); setToolTip(QString::number(w2v(m_valueBar->width()))); updateMouseValue(m_valueBar->width()); }); connect(m_slider, &Slider::lockProgress, [this](bool flag) { // 如果锁定进度条,则说明不能外部更新 value m_canChange = !flag; // 滑块释放之后 value 需要通知外部 if (m_canChange) { emit valueChange(m_mouseValue); } }); } /** ** @brief : 更新滑块位置,如果整体大小发生改变的话 ** @param[in] : ** @param[out]: ** @return : ***/ void ProgressBar::updateSliderPos() { m_slider->move(DEFAULT_LR_MARGIN + m_valueBar->width() - (SLIDER_SIDE_SIZE / 2), (parentWidget()->height() - SLIDER_SIDE_SIZE) / 2); for (FixedSlider *fs : m_markList) { fs->move(fs->x(), (parentWidget()->height() - SLIDER_MARK_HEIGHT) / 2); } } /** ** @brief : 添加书签 ** @param[in] : value 书签的进度值(秒),desc 书签描述 ** @param[out]: ** @return : ***/ void ProgressBar::addMark(int value, QString desc) { FixedSlider *fs = new FixedSlider(parentWidget()); connect(fs, &FixedSlider::clicked, [this, fs](){ m_currentValue = fs->value; updateMouseValue(fs->x() - DEFAULT_LR_MARGIN + fs->width() / 2); emit valueChange(fs->value); }); fs->value = value * 100; fs->move(v2w(fs->value) + DEFAULT_LR_MARGIN - fs->width() / 2, (parentWidget()->height() - fs->height()) / 2); fs->setDescribe(desc); fs->show(); fs->raise(); m_markList.push_back(fs); } void ProgressBar::deleteMark(int value) { int i=0; for (FixedSlider *fs : m_markList) { if (fs->value == value * 100) { delete fs; break; } i++; } m_markList.removeAt(i); } void ProgressBar::clearMark() { for (FixedSlider *fs : m_markList) { delete fs; } m_markList.clear(); } void ProgressBar::setBlackTheme() { m_widgetDock->setStyleSheet("#progress{background-color:rgba(255,255,255,50); border-radius:2px;}"); } void ProgressBar::setLightTheme() { m_widgetDock->setStyleSheet("#progress{background-color:rgba(48,49,51,50); border-radius:2px;}"); } /** ** @brief : width 转 value ** @param[in] : ** @param[out]: ** @return : ***/ int ProgressBar::w2v(int width) { return width * (m_maxValue - m_minValue) / this->width() + m_minValue; } /** ** @brief : value 转 width ** @param[in] : ** @param[out]: ** @return : ***/ int ProgressBar::v2w(int value) { if (m_maxValue != m_minValue) return (value - m_minValue) * width() / (m_maxValue - m_minValue); return 1; } void ProgressBar::updateMouseValue(int vb_x) { if (vb_x < 0) { vb_x = 0; } else if (vb_x > width()) { vb_x = width(); } m_valueBar->resize(vb_x, height()); m_mouseValue = w2v(m_valueBar->width()); m_slider->move(DEFAULT_LR_MARGIN + vb_x - (SLIDER_SIDE_SIZE / 2), (parentWidget()->height() - SLIDER_SIDE_SIZE) / 2); emit sliderMoved(m_mouseValue); } void ProgressBar::enterEvent(QEvent *e) { m_slider->show(); m_slider->raise(); } void ProgressBar::leaveEvent(QEvent *e) { m_slider->setHide(); emit mouseLeave(); } void ProgressBar::resizeEvent(QResizeEvent *e) { m_widgetDock->resize(size()); if (m_maxValue != m_minValue) m_valueBar->resize((m_currentValue - m_minValue) * width() / (m_maxValue - m_minValue), DEFAULT_HEIGHT); for (FixedSlider *fs : m_markList) { fs->move(v2w(fs->value) + DEFAULT_LR_MARGIN - fs->width() / 2, (parentWidget()->height() - fs->height()) / 2); } } void ProgressBar::mouseMoveEvent(QMouseEvent *e) { emit mousePosChange(w2v(e->x())/100); // setToolTip(Functions::timeToStr(w2v(e->x())/100)); if (!m_canChange) updateMouseValue(e->x()); } void ProgressBar::mousePressEvent(QMouseEvent *e) { if (e->button() == Qt::LeftButton) { m_canChange = false; updateMouseValue(e->x()); } } void ProgressBar::mouseReleaseEvent(QMouseEvent *e) { if (e->button() == Qt::LeftButton) { emit valueChange(m_mouseValue); m_canChange = true; } } kylin-video-3.1.3/src/sliderbar/progressbar.h0000755000175000017500000000423614214075177017650 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PROGRESSBAR_H #define PROGRESSBAR_H #include #include "slider.h" #define DEFAULT_HEIGHT 4 #define SLIDER_SIDE_SIZE 12 #define SLIDER_MARK_HEIGHT 10 #define SLIDER_MARK_WIDTH 6 class ProgressBar : public QWidget { Q_OBJECT public: explicit ProgressBar(QWidget *parent = nullptr); void setRange(int min, int max); void setValue(int value); void setSlider(Slider *sl); void updateSliderPos(); void addMark(int value, QString desc); void deleteMark(int value); void clearMark(); int getValueBarWidth(){return m_valueBar->width();} void setBlackTheme(); void setLightTheme(); signals: void valueChange(int); void sliderMoved(int); void mousePosChange(int); void mouseLeave(); private: Slider *m_slider; QWidget *m_valueBar, *m_widgetDock; int m_minValue, m_maxValue, m_currentValue, m_mouseValue; bool m_canChange; QList m_markList; int w2v(int width); int v2w(int value); void updateMouseValue(int vb_x); protected: void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; void resizeEvent(QResizeEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; void mousePressEvent(QMouseEvent *e) override; void mouseReleaseEvent(QMouseEvent *e) override; }; #endif // PROGRESSBAR_H kylin-video-3.1.3/src/sliderbar/slider.h0000755000175000017500000000366314214075177016604 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SLIDER_H #define SLIDER_H #include class FixedSlider : public QWidget { Q_OBJECT public: explicit FixedSlider(QWidget *parent = nullptr); ~FixedSlider(); void setDescribe(QString desc) {m_describe = desc;setToolTip(m_describe);} int value; signals: void clicked(); private: QString m_describe; QWidget *m_widgetSlider; protected: void mouseReleaseEvent(QMouseEvent *e) override; }; class Slider : public QWidget { Q_OBJECT public: explicit Slider(QWidget *parent = nullptr); ~Slider(); void setHide(); void setXRange(int min, int max) {m_minX = min; m_maxX = max;} public slots: signals: void lockProgress(bool); void posXUpdate(int); private: void updatePos(); QWidget *m_widgetSlider; bool m_canHide; int m_minX, m_maxX, m_mouseX; private: void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; void resizeEvent(QResizeEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; void mousePressEvent(QMouseEvent *e) override; void mouseReleaseEvent(QMouseEvent *e) override; }; #endif // SLIDER_H kylin-video-3.1.3/src/playlist.h0000644000175000017500000001233014215020236015163 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PLAYLIST_H #define PLAYLIST_H #include #include #include #include "core/mpvtypes.h" #include "global/globalsignal.h" /** ********************************* * 列表 : item 数据 ************************************/ enum FileErrorState { None, NotExist, BadFile }; class PlayItem { public: PlayItem(): m_fileName(""), m_filePath(""), m_previewPath(""), m_isExit(true), m_isNewForDB(false), m_duration(-1), m_lastStopTime(-1), m_indexOfList(-1){} ~PlayItem(){} QString m_mark, // 书签 m_fileName, // 文件名 m_filePath, // 文件路径 m_previewPath; // 预览文件路径 FileErrorState m_errorState; bool m_isExit, // 文件是否存在 m_isNewForDB, // 是否第一次添加到数据库,如果是要更新媒体时长 m_isNetStream; // 是否网络流 int m_duration, // 文件总秒数 m_lastStopTime, // 最后停止时间 m_indexOfList; // 该条目在列表中的索引 }; class MarkItem { public: MarkItem() {} ~MarkItem(){} QString m_filePath, m_describe, m_previewPath; int m_duration, m_markPos; bool m_fileExit; }; #if 0 class MarkList : public QObject { Q_OBJECT public: MarkList(){} MarkList(QString file, int duration) : m_fileName(file), m_duration(duration){} MarkList(const MarkList &other); ~MarkList() {} void addItem(int pos, QString desc, QString view); void deleteItem(int pos); QMap getMarkMap(){return m_itemMap;} inline MarkList &operator =(const MarkList other); signals: void sigUpdateUI(QMap); private: int m_duration; QString m_fileName; QMap m_itemMap; }; #endif class PlayList : public QObject { Q_OBJECT public: explicit PlayList(QObject *parent = nullptr); ~PlayList(); void initData(); int getSize(){return m_fileList.size();} Mpv::PlayState getPlayState(){return m_playState;} QVector getPlayingFileMarks(){return m_playingFileMarks;} public slots: void addItem(QString _file, int _duration, int _lastTime, QString _viewPath, bool writeToDatabase = false); void deleteFile(QString _file); void deleteInvalidItems(); void clearList(); void updateIndex(); void setPlayIndex(int _index); void addFiles(QStringList _files); void addDirectory(QString _dir); void playNext(bool manual); void playPrev(bool manual); void setNotAvaliable(QString _file); void setAvaliable(QString file); void addMark(QString file, int pos, QString desc, QString view); void deleteMark(QString file, int pos); private slots: void slotFileInfoChange(Mpv::FileInfo _fi); signals: void itemAdded(PlayItem); void itemDelete(QString); void sigAddItem(QString, int, int, QString, bool); void sigDeleteItem(QString); void sigIndexChange(int); void sigReloadView(QString); void sigResetDuration(QString, int); void sigMarkUpdate(QVector); void sigInsertMark(MarkItem); void sigDeleteMark(int); void sigPlayingFileMarkUpdate(QVector); private: std::mutex m_mux; Mpv::PlayState m_playState; int m_playIndex; // 当前播放索引 int m_duration; // 当前播放文件时长 PlayOrder m_playOrder; // 播放顺序 QString m_playFile, // 当前播放文件 m_needPlayFile; // 添加新文件后需要播放的文件 QStringList m_fileList; // 播放列表 QVector m_availableIndexVec; // 可用播放索引 (如果文件不存在的话则不可用) QMap m_pathItemMap; // <绝对路径, item 数据> QVector m_bookmarks; // 所有书签 QVector m_playingFileMarks; // 正在播放的文件所有书签 QSet m_notExitFiles; // 本地不存在文件 int64_t m_lastFileChange; // 上次切换时间 void newFile(QString _file); void initIndex(); void initGlobalSig(); }; Q_DECLARE_METATYPE(PlayItem) #endif // PLAYLIST_H kylin-video-3.1.3/src/previewwidget.ui0000644000175000017500000000440414212620632016403 0ustar fengfeng PreviewWidget 0 0 476 341 Form 0 0 0 0 0 60 30 301 221 QFrame::NoFrame QFrame::Raised 0 0 0 0 0 Qt::AlignCenter kylin-video-3.1.3/src/systemtrayicon.cpp0000644000175000017500000000251314214075177016771 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "systemtrayicon.h" #include #include SystemTrayIcon::SystemTrayIcon(QObject *parent) : QSystemTrayIcon(parent) { initMenu(); initIcon(); setToolTip(tr("Video Player")); } SystemTrayIcon::~SystemTrayIcon() { } void SystemTrayIcon::initIcon() { setIcon(QIcon::fromTheme("kylin-video")); } void SystemTrayIcon::initMenu() { menu = new QMenu; actQuit = new QAction(tr("Quit")); connect(actQuit, &QAction::triggered, [&](){emit sigQuit();}); menu->addAction(actQuit); setContextMenu(menu); } kylin-video-3.1.3/src/setupdialog.h0000644000175000017500000000257514214075177015671 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPDIALOG_H #define SETUPDIALOG_H #include namespace Ui { class SetUpDialog; } class SetUpDialog : public QDialog { Q_OBJECT public: explicit SetUpDialog(QWidget *parent = nullptr); ~SetUpDialog(); void setIndex(int index); private: Ui::SetUpDialog *ui; void initStyle(); void initListWidget(); void initConnect(); void resetFont(); private slots: void slotChangeTheme(bool is_black_theme); void showEvent(QShowEvent *e); void hideEvent(QHideEvent *e); bool eventFilter(QObject *watched, QEvent *event); }; #endif // SETUPDIALOG_H kylin-video-3.1.3/src/contralbar.ui0000644000175000017500000001246014212620632015646 0ustar fengfeng ContralBar 0 0 892 48 0 48 16777215 48 Form 0 0 0 0 16 15 0 36 16777215 36 16777215 36 16777215 pos================ QFrame::NoFrame QFrame::Raised 15 0 0 20 0 36 16777215 36 16777215 36 16777215 16777215 16777215 FilletWidget QWidget
filletwidget.h
1
TimeSlider QWidget
timeslider.h
1
kylin-video-3.1.3/src/mediainfodialog.h0000644000175000017500000000260714214075177016460 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MEDIAINFODIALOG_H #define MEDIAINFODIALOG_H #include #include "core/mpvtypes.h" #define IconFixedSize QSize(24,24) namespace Ui { class MediaInfoDialog; } class MediaInfoDialog : public QDialog { Q_OBJECT public: explicit MediaInfoDialog(QWidget *parent = nullptr); ~MediaInfoDialog(); void setData(QString data); void ukuiMove(); private slots: void on_pushButton_clicked(); private: Ui::MediaInfoDialog *ui; protected: bool eventFilter(QObject *watched, QEvent *event) override; void showEvent(QShowEvent *event) override; }; #endif // MEDIAINFODIALOG_H kylin-video-3.1.3/src/tipwidget/0000755000175000017500000000000014214075177015167 5ustar fengfengkylin-video-3.1.3/src/tipwidget/tipwidget.h0000755000175000017500000000252714214075177017351 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef TIPWIDGET_H #define TIPWIDGET_H #include class TipWidget : public QDialog { Q_OBJECT public: enum TipType { ERROR, OK, WARNING }; explicit TipWidget(QWidget *parent = nullptr); ~TipWidget(); QWidget *getWidget(){return w;} void setLightTheme(); void setBlackTheme(); static void showTip(QString tip, int show_time, QSize size, QWidget* parent = nullptr, TipType type = OK); signals: private: void resizeEvent(QResizeEvent *event) override; QWidget *w; }; #endif // TIPWIDGET_H kylin-video-3.1.3/src/tipwidget/tipwidget.cpp0000755000175000017500000000611314214075177017677 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "tipwidget.h" #include #include #include #include #include #include #include "global/global.h" using namespace Global; TipWidget::TipWidget(QWidget *parent) : QDialog(parent) { w = new QWidget(this); QGraphicsDropShadowEffect * effect = new QGraphicsDropShadowEffect(w); effect->setOffset(0, 0);//设置阴影距离 effect->setColor(QColor(0,0,0,90));//设置阴影颜色 effect->setBlurRadius(6);//设置阴影圆角 w->setStyleSheet("QWidget{background-color:#FFFFFF;border-radius:6px;}"); w->setGraphicsEffect(effect); setWindowFlag(Qt::FramelessWindowHint); setAttribute(Qt::WA_TranslucentBackground); } TipWidget::~TipWidget() { if (w) { delete w; w = nullptr; } } void TipWidget::setLightTheme() { w->setStyleSheet("QWidget{background-color:#FFFFFF;border-radius:6px;}"); } void TipWidget::setBlackTheme() { w->setStyleSheet("QWidget{background-color:#262626;border-radius:6px;}"); } void TipWidget::showTip(QString tip, int show_time, QSize size, QWidget *parent, TipWidget::TipType type) { // 相对于屏幕坐标 TipWidget tw(parent); tw.setModal(true); tw.setFixedSize(size); if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) tw.setLightTheme(); else tw.setBlackTheme(); QWidget icon(tw.getWidget()); icon.setFixedSize(18, 18); switch (type) { case WARNING: icon.setStyleSheet(QString("border-image:url(:/ico/icon-warning.png);")); break; default: break; } QLabel lab_text(tw.getWidget()); lab_text.setText(tip); QHBoxLayout hb; hb.setContentsMargins(10, 0, 0, 0); hb.addWidget(&icon); hb.addWidget(&lab_text); hb.addSpacing(10); hb.addStretch(1); tw.getWidget()->setLayout(&hb); QTimer::singleShot(show_time, [&tw](){ tw.accept(); }); tw.show(); if (parent) { QSize tmp_size = (parent->size() - tw.size()) / 2; tw.move(parent->mapToGlobal(QPoint(0, 0)) + QPoint(tmp_size.width(), tmp_size.height())); } tw.exec(); } void TipWidget::resizeEvent(QResizeEvent *event) { w->setGeometry(2, 2, size().width() - 4, size().height() - 4); return QDialog::resizeEvent(event); } kylin-video-3.1.3/src/minimodeshade.h0000644000175000017500000000305214214075177016146 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MINIMODESHADE_H #define MINIMODESHADE_H #include #include "filletwidget.h" #define BTN_LIGHT_BACKGROUND "rgba(249,249,249,77)" #define BTN_BLACK_BACKGROUND "rgba(31,32,34,77)" class QPushButton; class MiniModeButton; class MiniModeShade : public FilletWidget { Q_OBJECT public: explicit MiniModeShade(QWidget *parent = nullptr); void setBlackTheme(); void setLightTheme(); signals: void sigShowNormal(); void sigPlayPause(); void sigClose(); private: void initLayout(); void initConnect(); private: MiniModeButton *btnClose, *btnNormal, *btnPlayPause; protected: void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; }; #endif // MINIMODESHADE_H kylin-video-3.1.3/src/homepage.h0000644000175000017500000000254314214075177015131 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef HOMEPAGE_H #define HOMEPAGE_H #include #define CenterLogoSize QSize(500, 65) #define MainButtonSize QSize(118, 40) class QLabel; class QPushButton; class HomePage : public QWidget { Q_OBJECT public: explicit HomePage(QWidget *parent = nullptr); signals: void openFileClicked(); void openDirClicked(); private: QWidget *m_background; QPushButton *m_btnOpenFile, *m_btnOpenDir, *m_btnLogo; QLabel *m_labLogoName; protected: void resizeEvent(QResizeEvent *e) override; }; #endif // HOMEPAGE_H kylin-video-3.1.3/src/core/0000755000175000017500000000000014214075177014117 5ustar fengfengkylin-video-3.1.3/src/core/mpvcore.cpp0000755000175000017500000014511514214075177016310 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "mpvcore.h" #include #include #include #include #include #include #include #include #include #include #include #include #include "core/util.h" #include "playglwidget.h" #include "global/globalsignal.h" #include "global/functions.h" #include "global/global.h" #include "global/paths.h" #include "elog.h" #define LOG_TAG "core" using namespace MediaInfoLib; using namespace ZenLib; using namespace Global; #define wstring2QString(_DATA) \ QString::fromUtf8(Ztring(_DATA).To_UTF8().c_str()) #define QString2wstring(_DATA) \ Ztring().From_UTF8(_DATA.toUtf8()) extern QString int2ts(int64_t time, bool use_msec); static void wakeup(void *ctx) { MpvCore *mpvhandler = (MpvCore*)ctx; QCoreApplication::postEvent(mpvhandler, new QEvent(QEvent::User)); } MpvCore::MpvCore(PlayGLWidget *pw, QObject *parent) : QObject(parent) { setlocale(LC_NUMERIC, "C"); playState = Mpv::Idle; m_playWidget = pw; initMpvHandle(); initGlobalSig(); } QVariant MpvCore::Command(const QVariant ¶ms) { if(mpv_h) return mpv::qt::command_variant(mpv_h, params); } void MpvCore::LoadOptions() { // 播放之前先设置参数 // 1.截图格式和截图存放位置 SetOption("screenshot-format", gsetup->screenShotFormat.first); SetOption("screenshot-directory", gsetup->screenShotPath.first == "" ? QDir::homePath().append("/").append(tr("Pictures")) : gsetup->screenShotPath.first); // 2.设置字幕 SetOption("sub-font", gsetup->subFontFamily.first); SetOption("sub-font-size", QString::number(gsetup->subFontSize.first)); // 3.设置音频输出驱动 SetOption("ao", gsetup->audioOut.first); // 4.设置倍速 SetOption("speed", g_settings->value("General/speed").toString()); SetOption("osd-level", "2"); SetOption("osd-msg2", " "); SetOption("osd-font-size", "35"); // 设置字体大小不随窗口变化而变化,否则 mini 模式osd显示字体特别小 SetOption("osd-scale-by-window", "no"); SetOption("brightness", QString::number(brightness)); #if 0 if (Functions::isKirinCpu()) { MediaInfoLib::MediaInfo mi; mi.Open(QString2wstring(file)); auto wi = wstring2QString(mi.Get(Stream_Video, 0, __T("Width"))).toInt(); auto hi = wstring2QString(mi.Get(Stream_Video, 0, __T("Height"))).toInt(); if (gsetup->videoDecoder.first == "omx" || gsetup->videoDecoder.first == "default" || gsetup->videoDecoder.first.length() == 0) { qDebug() << "[" << wi << "x" << hi <<"] use hwdec : " << mpv_get_property_string(mpv_h, "hwdec"); if(wi > OMX_DEC_MAX_WIDTH || hi > OMX_DEC_MAX_HEIGHT) { // 如果超过硬解分辨率并且用的 omx 解码则设置成软解 SetOption("hwdec", "no"); } else { SetOption("hwdec", "omx"); } } } else { SetOption("hwdec", gsetup->videoDecoder.first); } #endif // 设置视频解码相关 SetOption("hwdec", gsetup->videoDecoder.first + ","); SetOption("vo", gsetup->videoOutput.first + ","); SetOption("vd-lavc-threads", QString::number(gsetup->videoDecodeThreads.first)); } void MpvCore::SetOption(QString key, QString val) { QByteArray tmp1 = key.toUtf8(), tmp2 = val.toUtf8(); mpv::qt::set_option_variant(mpv_h, tmp1.constData(), tmp2.constData()); } int MpvCore::AsyncCommand(const char *args[]) { return mpv_command_async(mpv_h, MPV_REPLY_COMMAND, args); } void MpvCore::setProperty(const QString &name, const QVariant &value) { mpv::qt::set_property_variant(mpv_h, name, value); } QVariant MpvCore::getProperty(const QString &name) const { return mpv::qt::get_property_variant(mpv_h, name); } void MpvCore::Open(QString file, int start) { // 打开之前先判断文件是否存在,如果不存在做判断 QFile f(file); if(!f.exists()) { KyInfo() << QString("file %1 not exit!").arg(file); g_core_signal->notifyFileNotExist(file); return; } lastStopTime = g_sqlite->getLastTime(file); LoadOptions(); mediaInfo = QString(); m_playingFile = file; subDelay = 0; lastTime = 0; rotate = 0; fps = 0; if (start > 0) { needSeek = true; seekTime = start; } // 如果是播放状态先暂停,不然拖入播放有问题,原因可能是停止的时候没有清空缓存或者清空配置 Command(QStringList() << "loadfile" << file); } void MpvCore::Play() { if (playState == Mpv::Playing) return; if(playState > 0 && mpv_h) { int f = 0; mpv_set_property_async(mpv_h, MPV_REPLY_PROPERTY, "pause", MPV_FORMAT_FLAG, &f); } } void MpvCore::Pause() { if (playState == Mpv::Paused) return; if (playState > 0 && mpv_h) { int f = 1; mpv_set_property_async(mpv_h, MPV_REPLY_PROPERTY, "pause", MPV_FORMAT_FLAG, &f); } } void MpvCore::Stop() { if(playState < 0) return; isManualStop = true; if(playState > 0) { // 如果是手动停止的话,记录上次停止位置 g_sqlite->updateLastTime(fileInfo.file_path, lastTime); } if(playState > 0 && mpv_h) Command(QStringList() << "stop"); } void MpvCore::Restart() { if(m_playingFile == QString() || playState < 0) return; // 因为 open 是非阻塞的 所以跳转要在播放状态为 加载之后. seekTime = lastTime; if(seekTime > 0) needSeek = true; Stop(); Play(); Open(m_playingFile); } QString MpvCore::getMediaInfo() { if(mediaInfo.length() != 0) { return mediaInfo; } QFileInfo fi(m_playingFile); if(!fi.exists()) { return QString(); } double fps, vbitrate, abitrate; mpv_get_property(mpv_h, "estimated-vf-fps", MPV_FORMAT_DOUBLE, &fps); QString current_vo, current_ao, hwdec_active; char *property_string = nullptr; property_string = mpv_get_property_string(mpv_h, "current-vo"); if(property_string) { current_vo = property_string; mpv_free(property_string); property_string = nullptr; } property_string = mpv_get_property_string(mpv_h, "current-ao"); if(property_string) { current_ao = property_string; mpv_free(property_string); property_string = nullptr; } property_string = mpv_get_property_string(mpv_h, "hwdec-active"); if(property_string) { hwdec_active = property_string; mpv_free(property_string); property_string = nullptr; } fileInfo.video_params.fps = fps; MediaInfoLib::MediaInfo mi; mi.Open(QString2wstring(m_playingFile)); fps = wstring2QString(mi.Get(Stream_Video, 0, __T("FrameRate"))).toDouble(); vbitrate = wstring2QString(mi.Get(Stream_Video, 0, __T("BitRate"))).toDouble(); abitrate = wstring2QString(mi.Get(Stream_Audio, 0, __T("BitRate"))).toDouble(); for(auto &track : fileInfo.tracks) { if(track.type == "video") ++vtracks; else if(track.type == "audio") ++atracks; else if(track.type == "sub") ++stracks; } const QString outer = "%0: %1\n", inner = " %0: %1\n"; QString out = outer.arg(tr("File"), fi.fileName()) + inner.arg(tr("Title"), fileInfo.media_title) + inner.arg(tr("File size"), Util::HumanSize(fi.size())) + inner.arg(tr("Date created"), fi.created().toString()) + inner.arg(tr("Media length"), Util::FormatTime(fileInfo.length, fileInfo.length)) + '\n'; if(fileInfo.video_params.codec != QString()) out += outer.arg(tr("Video (x%0)").arg(QString::number(vtracks)), fileInfo.video_params.codec) + inner.arg(tr("Video Output"), QString("%0 (hwdec %1)").arg(current_vo, hwdec_active)) + inner.arg(tr("Resolution"), QString("%0 x %1 (%2)").arg(QString::number(fileInfo.video_params.width), QString::number(fileInfo.video_params.height), Util::Ratio(fileInfo.video_params.width, fileInfo.video_params.height))) + inner.arg(tr("FPS"), QString::number(fps)) + inner.arg(tr("Bitrate"), tr("%0 kbps").arg(vbitrate/1000)) + '\n'; if(fileInfo.audio_params.codec != QString()) out += outer.arg(tr("Audio (x%0)").arg(QString::number(atracks)), fileInfo.audio_params.codec) + inner.arg(tr("Audio Output"), current_ao) + inner.arg(tr("Sample Rate"), QString::number(fileInfo.audio_params.samplerate)) + inner.arg(tr("Channels"), QString::number(fileInfo.audio_params.channels)) + inner.arg(tr("Bitrate"), tr("%0 kbps").arg(abitrate/1000)) + '\n'; if(fileInfo.chapters.length() > 0) { out += outer.arg(tr("Chapters"), QString()); int n = 1; for(auto &chapter : fileInfo.chapters) out += inner.arg(QString::number(n++), chapter.title); out += '\n'; } if(fileInfo.metadata.size() > 0) { out += outer.arg(tr("Metadata"), QString()); for(auto data = fileInfo.metadata.begin(); data != fileInfo.metadata.end(); ++data) out += inner.arg(data.key(), *data); out += '\n'; } return out; } void MpvCore::LoadTracks() { mpv_node node; mpv_get_property(mpv_h, "track-list", MPV_FORMAT_NODE, &node); std::lock_guard lg(m_mtxTracks); fileInfo.tracks.clear(); subCount = 0; if(node.format == MPV_FORMAT_NODE_ARRAY) { for(int i = 0; i < node.u.list->num; i++) { if(node.u.list->values[i].format == MPV_FORMAT_NODE_MAP) { Mpv::Track track; for(int n = 0; n < node.u.list->values[i].u.list->num; n++) { if(QString(node.u.list->values[i].u.list->keys[n]) == "id") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_INT64) track.id = node.u.list->values[i].u.list->values[n].u.int64; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "type") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) { track.type = node.u.list->values[i].u.list->values[n].u.string; if(track.type == "sub") subCount++; } } else if(QString(node.u.list->values[i].u.list->keys[n]) == "src-id") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_INT64) track.src_id = node.u.list->values[i].u.list->values[n].u.int64; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "title") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) track.title = node.u.list->values[i].u.list->values[n].u.string; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "lang") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) track.lang = node.u.list->values[i].u.list->values[n].u.string; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "albumart") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_FLAG) track.albumart = node.u.list->values[i].u.list->values[n].u.flag; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "default") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_FLAG) track._default = node.u.list->values[i].u.list->values[n].u.flag; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "external") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_FLAG) track.external = node.u.list->values[i].u.list->values[n].u.flag; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "external-filename") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) track.external_filename = node.u.list->values[i].u.list->values[n].u.string; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "codec") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) track.codec = node.u.list->values[i].u.list->values[n].u.string; } } fileInfo.tracks.push_back(track); } } } mpv_free_node_contents(&node); g_core_signal->notifyTracks(fileInfo.tracks); } void MpvCore::LoadChapters() { fileInfo.chapters.clear(); mpv_node node; mpv_get_property(mpv_h, "chapter-list", MPV_FORMAT_NODE, &node); if(node.format == MPV_FORMAT_NODE_ARRAY) { for(int i = 0; i < node.u.list->num; i++) { if(node.u.list->values[i].format == MPV_FORMAT_NODE_MAP) { Mpv::Chapter ch; for(int n = 0; n < node.u.list->values[i].u.list->num; n++) { if(QString(node.u.list->values[i].u.list->keys[n]) == "title") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_STRING) ch.title = node.u.list->values[i].u.list->values[n].u.string; } else if(QString(node.u.list->values[i].u.list->keys[n]) == "time") { if(node.u.list->values[i].u.list->values[n].format == MPV_FORMAT_DOUBLE) ch.time = (int)node.u.list->values[i].u.list->values[n].u.double_; } } fileInfo.chapters.push_back(ch); } } } mpv_free_node_contents(&node); } void MpvCore::LoadVideoParams() { char *property_string = nullptr; property_string = mpv_get_property_string(mpv_h, "video-codec"); fileInfo.video_params.codec = property_string; if(property_string) { isVideo = true; if (fileInfo.video_params.codec.indexOf("jpeg") >= 0 || fileInfo.video_params.codec.indexOf("png") >= 0) { // jpeg 图片,不能去获取缩略图了就,想要获取缩略图要换其他方式 isVideo = false; } else { isVideo = true; } mpv_free(property_string); } mpv_get_property(mpv_h, "width", MPV_FORMAT_INT64, &fileInfo.video_params.width); mpv_get_property(mpv_h, "height", MPV_FORMAT_INT64, &fileInfo.video_params.height); mpv_get_property(mpv_h, "dwidth", MPV_FORMAT_INT64, &fileInfo.video_params.dwidth); mpv_get_property(mpv_h, "dheight", MPV_FORMAT_INT64, &fileInfo.video_params.dheight); // though this has become useless, removing it causes a segfault--no clue: mpv_get_property(mpv_h, "video-aspect-override", MPV_FORMAT_INT64, &fileInfo.video_params.aspect); } void MpvCore::LoadAudioParams() { char *property_string = nullptr; property_string = mpv_get_property_string(mpv_h, "audio-codec"); if(property_string) { fileInfo.audio_params.codec = property_string; mpv_free(property_string); } mpv_node node; mpv_get_property(mpv_h, "audio-params", MPV_FORMAT_NODE, &node); if(node.format == MPV_FORMAT_NODE_MAP) { for(int i = 0; i < node.u.list->num; i++) { if(QString(node.u.list->keys[i]) == "samplerate") { if(node.u.list->values[i].format == MPV_FORMAT_INT64) fileInfo.audio_params.samplerate = node.u.list->values[i].u.int64; } else if(QString(node.u.list->keys[i]) == "channel-count") { if (node.u.list->values[i].format == MPV_FORMAT_INT64) { fileInfo.audio_params.channels = node.u.list->values[i].u.int64; // 声道设置,加载声道之后再设置声道,如果是单声道的时候设置右声道播放左声道 Channel((Mpv::Channel)(gsetup->audioChannel.first+1)); } } } } mpv_free_node_contents(&node); } void MpvCore::LoadMetadata() { fileInfo.metadata.clear(); mpv_node node; mpv_get_property(mpv_h, "metadata", MPV_FORMAT_NODE, &node); if(node.format == MPV_FORMAT_NODE_MAP) for(int n = 0; n < node.u.list->num; n++) if(node.u.list->values[n].format == MPV_FORMAT_STRING) fileInfo.metadata[node.u.list->keys[n]] = node.u.list->values[n].u.string; mpv_free_node_contents(&node); } void MpvCore::LoadOsdSize() { mpv_get_property(mpv_h, "osd-width", MPV_FORMAT_INT64, &osdWidth); mpv_get_property(mpv_h, "osd-height", MPV_FORMAT_INT64, &osdHeight); } void MpvCore::Volume(int level) { if (volume == level) return; if(level > 100) level = 100; else if(level < 0) level = 0; double v = level; volume = level; if(playState > 0) { mpv_set_property_async(mpv_h, MPV_REPLY_PROPERTY, "volume", MPV_FORMAT_DOUBLE, &v); Mute(false); } else { mpv_set_option(mpv_h, "volume", MPV_FORMAT_DOUBLE, &v); // 设置音量参数,此时需要手动设置配置文件中音量 g_settings->setValue("General/volume", volume); } } /** ** @brief : 设置声道,需要考虑如果是单声道或者多声道的时候声音如何处理 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::Channel(Mpv::Channel c) { const char *args[] = {"af", "", "", NULL}; switch (c) { case Mpv::Default: args[1] = "set";args[2] = ""; AsyncCommand(args); break; case Mpv::Stereo: args[1] = "set";args[2] = ""; AsyncCommand(args); ShowText(tr("Stereo")); break; case Mpv::Left: args[1] = "set";args[2] = "lavfi=[pan=stereo|c0=c0|c1=0*c1]"; AsyncCommand(args); ShowText(tr("Left Channel")); break; case Mpv::Right: args[1] = "set"; args[2] = fileInfo.audio_params.channels == 1 ? "lavfi=[pan=stereo|c0=0*c0|c1=c0]" : "lavfi=[pan=stereo|c0=0*c0|c1=c1]"; AsyncCommand(args); ShowText(tr("Right Channel")); break; default: break; } gsetup->audioChannel.second = (int)c - 1; gsetup->flushChange(); } void MpvCore::Speed(double d) { if(playState > 0) { Command(QStringList() << "set" << "speed" << QString::number(d)); // mpv_set_property_async(mpv_h, MPV_REPLY_PROPERTY, "speed", MPV_FORMAT_DOUBLE, &d); } else { SetOption("speed", QString::number(d)); } } void MpvCore::SpeedUp() { if(playState > 0 && speed < 1.9) { if(speed > 1.4) speed += 0.5; else speed += 0.25; } Speed(speed); } void MpvCore::SpeedDown() { if(playState > 0 && speed > 0.6) { if(speed > 1.9) speed -= 0.5; else speed -= 0.25; } Speed(speed); } void MpvCore::Mute(bool m) { if (playState > 0) { const char *args[] = {"set", "mute", m ? "yes" : "no", NULL}; AsyncCommand(args); mute = m; } } void MpvCore::Seek(int pos, bool relative, bool osd) { if (duration < 0) return; { // 判断跳转是否越界(<0 或者 >视频长度) pos = pos < 0 ? 0 : pos; pos = pos > fileInfo.length ? fileInfo.length : pos; } if(playState > 0) { if(relative) { const QByteArray tmp = (((pos >= 0) ? "+" : QString())+QString::number(pos)).toUtf8(); if(osd) { Command(QStringList() << "osd-msg" << "seek" << tmp.constData()); } else { Command(QStringList() << "seek" << tmp.constData()); } } else { if(osd) { Command(QVariantList() << "osd-msg" << "seek" << pos << "absolute"); } else { Command(QVariantList() << "seek" << pos << "absolute"); } } } } void MpvCore::BrightnessUp() { if(brightness < 100) { brightness += 2; g_settings->setValue("General/brightness", brightness); } Command(QStringList() << "set" << "brightness" << QString::number(brightness)); ShowText(tr("brightness : %1").arg((brightness+100)/2)); } void MpvCore::BrightnessDown() { if(brightness > -100) { brightness -= 2; g_settings->setValue("General/brightness", brightness); } Command(QStringList() << "set" << "brightness" << QString::number(brightness)); ShowText(tr("brightness : %1").arg((brightness+100)/2)); } void MpvCore::SubId(int id) { Command(QStringList() << "set" << "sid" << QString::number(id)); } void MpvCore::AudioId(int id) { const char *args[] = {"set", "aid", QString("%1").arg(id).toStdString().c_str(), NULL}; AsyncCommand(args); } void MpvCore::AudioNext() { if (currentAid < atracks) { const char *args[] = {"set", "aid", QString("%1").arg(currentAid++).toStdString().c_str(), NULL}; AsyncCommand(args); } else { const char *args[] = {"set", "aid", QString("%1").arg(aid).toStdString().c_str(), NULL}; AsyncCommand(args); } } /** ** @brief : 下一帧 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::NextFrame() { const char *args[] = {"frame_step", NULL}; AsyncCommand(args); } /** ** @brief : 上一帧 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::PrevFrame() { const char *args[] = {"frame_back_step", NULL}; AsyncCommand(args); } /** ** @brief : 添加字幕 ** @param[in] : sub 要添加的字幕文件 ** @param[out] : ** @return : ***/ void MpvCore::AddSub(QString sub) { // 0 为没有字幕 int sub_index = m_subs.indexOf(sub) + 1; qDebug() << sub << " | " << sub_index; if(sub_index > 0) { SubId(sub_index); return; } Command(QStringList() << "sub_add" << sub); m_subs.push_back(sub); LoadTracks(); } /** ** @brief : 添加多个字幕 ** @param[in] : files 要添加的多个字幕文件 ** @param[out] : ** @return : ***/ void MpvCore::AddSubs(QStringList files) { for(auto sub : files) { AddSub(sub); } } /** ** @brief : 字幕上移 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::SubMoveUp() { if(subPos > 0) subPos -= 1; else return; SetOption("sub-pos", QString::number(subPos)); } /** ** @brief : 字幕下移 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::SubMoveDown() { if(subPos < 100) subPos += 1; else return; SetOption("sub-pos", QString::number(subPos)); } /** ** @brief : 下一个字幕 ** @param[in] : ** @param[out] : ** @return : ***/ void MpvCore::SubNext() { if(sid < subCount-1) Command(QStringList() << "set" << "sid" << QString::number(sid+1)); else Command(QStringList() << "set" << "sid" << QString::number(0)); } void MpvCore::SubForward() { subDelay -= 0.5; Command(QStringList() << "set" << "sub-delay" << QString::number(subDelay)); ShowText(tr("subtitle delay : %1s").arg(subDelay)); } void MpvCore::SubBackward() { subDelay += 0.5; Command(QStringList() << "set" << "sub-delay" << QString::number(subDelay)); ShowText(tr("subtitle delay : %1s").arg(subDelay)); } void MpvCore::SubFontSize(int size) { SetOption("sub-font-size", QString("%1").arg(size)); } void MpvCore::SubFontFamily(QString family) { SetOption("sub-font", family); } // 添加书签 // desc : 书签描述 void MpvCore::AddBookMark(QString desc) { QFileInfo fi(m_playingFile); if (!fi.exists() || playState < 0) { ShowText(tr("Add mark error")); return; } // 获取一个截图,作为预览图 // 判断预览文件夹是否存在 QThread::create([this, desc](){ // 获取书签数据表名字,如果文件夹不存在的话创建文件夹 QString mark_dir = Paths::configPath().append("/").append(g_sqlite->getMarkCharacter(m_playingFile)); QDir d; if (!d.exists(mark_dir)) { if (!d.mkdir(mark_dir)) { qDebug() << "create " << mark_dir << " error"; return; } } QString mark_view = mark_dir.append("/").append(QString::number(m_current_time)).append(".png"); // 如果只有音频的话预览图为默认图片 if (vid < 0 || !isVideo) mark_view = ":/ico/no-preview.png"; else { // 保存当前图片 m_videoTbr->setSeekTime(Functions::timeToStr(m_current_time).toStdString()); m_videoTbr->generateThumbnail(m_playingFile.toStdString(), Png, mark_view.toStdString()); } g_core_signal->sigMarkAdded(m_playingFile, m_current_time, desc, mark_view); ShowText(tr("Add mark ok").append(" : ").append(Functions::timeToStr(m_current_time))); })->start(); } void MpvCore::Aspect(Mpv::VideoAspect va) { if (!isVideo || vid < 0) { return; } QString arg; switch (va) { case Mpv::AUTO: arg = "-1"; break; case Mpv::DIV_4_3: arg = "4:3"; break; case Mpv::DIV_16_9: arg = "16:9"; break; case Mpv::FULL: return; } SetAspect(arg); } void MpvCore::SetAspect(QString scale) { Command(QStringList() << "set" << "video-aspect-override" << scale); } /** ********************************************** * 画面还原 *************************************************/ void MpvCore::RestoreFrame() { Command(QStringList() << "set" << "video-rotate" << "0"); rotate = 0; if(isHFlip) { Command(QStringList() << "vf" << "del" << "hflip"); isHFlip = false; } if(isVFlip) { Command(QStringList() << "vf" << "del" << "vflip"); isVFlip = false; } Command(QStringList() << "set" << "video-aspect-override" << "-1"); ShowText(tr("restore frame")); } /** ********************************************** * 顺时针旋转 ** **********************************************/ void MpvCore::ClockwiseRotate() { if (!isVideo || vid < 0) { return; } rotate = (rotate + 90) % 360; Command(QStringList() << "set" << "video-rotate" << QString::number(rotate)); } /** ********************************************** * 逆时针旋转 ** **********************************************/ void MpvCore::CounterClockwiseRotate() { if (!isVideo || vid < 0) { return; } if(rotate >= 90) rotate = (rotate - 90) % 360; else rotate = 270; Command(QStringList() << "set" << "video-rotate" << QString::number(rotate)); } /** ********************************************** * 水平翻转 ** **********************************************/ void MpvCore::FlipHorizontally() { if (!isVideo || vid < 0) { return; } QString s = isHFlip ? "del" : "add"; if(mpv_h && playState > 0) { Command(QStringList() << "vf" << s << "hflip"); ShowText(tr("Horizontal Flip: ").append(isHFlip ? tr("close") : tr("open"))); } isHFlip = !isHFlip; } /** ********************************************** * 竖直翻转 ** **********************************************/ void MpvCore::FlipVertically() { if (!isVideo || vid < 0) { return; } QString s = isVFlip ? "del" : "add"; if(mpv_h && playState > 0) { Command(QStringList() << "vf" << s << "vflip"); ShowText(tr("Vertical Flip: ").append(isVFlip ? tr("close") : tr("open"))); } isVFlip = !isVFlip; } void MpvCore::ScreenShot(bool with_sub) { if(vid < 0 || !isVideo) return; const char *args[] = {"screenshot", (with_sub ? "subtitles" : (gsetup->screenShotCurrentSize.first ? "window" : "video")), NULL}; AsyncCommand(args); if(canSaveScreenShot) ShowText(tr("ScreenShot OK")); else ShowText(tr("ScreenShot Failed, folder has no write permission or folder not exit.")); } void MpvCore::ScreenshotFormat(QString s) { SetOption("screenshot-format", s); } /** ** @brief : 设置截图文件夹 ** @param[in] : dir : 要设置的文件夹绝对路径 ** @param[out] : ** @return : ***/ void MpvCore::ScreenshotDirectory(QString dir) { SetOption("screenshot-directory", dir); // 如果文件夹没有权限的话,每次截图都报错就行 QFile fi(dir.append("/.test")); if(!fi.open(QIODevice::ReadWrite)) { canSaveScreenShot = false; } else { // 删除创建的临时文件 QProcess::execute(QString("rm -rf ").append(dir)); canSaveScreenShot = true; } } void MpvCore::ShowInfo(bool is_show) { if(is_show) { showProfile = true; showInfoTimer->start(); } else { showProfile = false; showInfoTimer->stop(); } ShowText(""); } void MpvCore::ShowText(QString text, int duration) { // 只有在播放或者暂停状态才去显示 if (playState < 0 || this->duration < 0.5) return; // 其他osd内容显示的时候停止profile刷新,显示完成后profile刷新继续 if(text != "" && showProfile) { showInfoTimer->stop(); QTimer::singleShot(2400, [&](){if(showProfile) showInfoTimer->start();}); } // 如果打开osd显示信息开关则需要将显示内容追加到fps和profile信息之后 if(showProfile) { QString tab = " "; QString nl = "\n"; QString path = fileInfo.file_path; mpv_get_property(mpv_h, "estimated-vf-fps", MPV_FORMAT_DOUBLE, &fps); QString info = tr("File:") + path.right(path.length() - path.lastIndexOf("/") - 1) + nl + nl; QString infov = tr("Video:") + QString(" (x%0) %1").arg(QString::number(vtracks)).arg(fileInfo.video_params.codec) + nl + tab + tr("Resolution:") + QString(" %0x%1").arg(fileInfo.video_params.width).arg(fileInfo.video_params.height) + nl + tab + tr("fps:") + QString(" %0").arg(fps) + nl + tab + tr("Bitrate:") + QString(" %0").arg(videoBitrate==0 ? "(unavailable)" : QString::number((double)videoBitrate/1000.0).append("kbps")) + nl + nl; QString infoa = tr("Audio:") + QString(" (x%0) %1").arg(QString::number(vtracks)).arg(fileInfo.audio_params.codec) + nl + tab + tr("Sample Rate:") + QString(" %0Hz").arg(fileInfo.audio_params.samplerate) + nl + tab + tr("Channels:") + QString(" %0").arg(fileInfo.audio_params.channels) + nl + tab + tr("Bitrate:") + QString(" %0").arg(audioBitrate==0 ? "(unavailable)" : QString::number((double)audioBitrate/1000.0).append("kbps")) + nl + nl; if(vtracks > 0) info += infov; if(atracks > 0) info += infoa; if(vtracks > 0 && atracks > 0) info += tr("Audio/video synchronization:") + QString(" %0ms").arg(avsync); text = QString("%1\n%2").arg(info).arg(text); } if (vid >= 0) { const QByteArray tmp1 = text.toUtf8(), tmp2 = QString::number(duration).toUtf8(), tmp3 = QString::number(2).toUtf8(); const char *args[] = {"show_text", tmp1.constData(), tmp2.constData(), tmp3.constData(), NULL}; AsyncCommand(args); } else { // 让无视频流界面也显示一下 emit sigShowText(text); } } void MpvCore::VideoDecoder(QString _decoder) { mpv::qt::set_option_variant(mpv_h, "hwdec", _decoder); if(playState > 0) { Restart(); } } void MpvCore::VideoOutput(QString output) { mpv::qt::set_option_variant(mpv_h, "vo", output+","); if(playState > 0) { Restart(); } } void MpvCore::DecodeThreads(int threads) { mpv::qt::set_option_variant(mpv_h, "vd-lavc-threads", threads); if(playState > 0) { Restart(); } } void MpvCore::LoadFileInfo() { std::lock_guard lg(m_mtxFileInfo); char *property_string = nullptr; isHFlip = false; isVFlip = false; vtracks = atracks = stracks = 0; fileInfo.file_path = m_playingFile; // get media-title property_string = mpv_get_property_string(mpv_h, "media-title"); if(property_string) { fileInfo.media_title = property_string; mpv_free(property_string); } // get length double len; mpv_get_property(mpv_h, "duration", MPV_FORMAT_DOUBLE, &len); fileInfo.length = (int)len; LoadTracks(); LoadChapters(); LoadVideoParams(); LoadAudioParams(); LoadMetadata(); getMediaInfo(); // 通知其他人播放的文件改变了 g_core_signal->notifyFileInfo(fileInfo); mpv_get_property(mpv_h, "vid", MPV_FORMAT_INT64, &vid); g_core_signal->notifyVideoId(vid); mpv_get_property(mpv_h, "sid", MPV_FORMAT_INT64, &sid); g_core_signal->notifySubId(sid); mpv_get_property(mpv_h, "aid", MPV_FORMAT_INT64, &aid); g_core_signal->notifyAudioId(aid); mpv_get_property(mpv_h, "sub-pos", MPV_FORMAT_INT64, &subPos); } void MpvCore::SetProperties() { volume = g_settings->value("General/volume").toInt(); Volume(volume); Speed(g_settings->value("General/speed").toDouble()); Mute(g_settings->value("General/mute").toBool()); // 声道设置 Channel((Mpv::Channel)(gsetup->audioChannel.first+1)); } void MpvCore::initMpvHandle() { m_videoTbr = new VideoThumbnailer; m_videoTbr->setThumbnailSize(176); mpv_h = mpv::qt::Handle::FromRawHandle(mpv_create()); if (!mpv_h) { log_e("could not create mpv context"); qDebug("could not create mpv context"); return; } mpv_set_option_string(mpv_h, "terminal", "yes"); mpv_set_option_string(mpv_h, "msg-level", "all=error"); if (mpv_initialize(mpv_h) < 0) { log_e("could not initialize mpv context"); } // Request hw decoding QString t_video_decoder = g_settings->value("General/video_decoder").toString(); if(t_video_decoder == "") t_video_decoder = "default"; // SetOption("vo", "opengl-cb"); SetOption("hwdec", t_video_decoder + ","); SetOption("vf", "fps"); SetOption("wid", QString::number(m_playWidget->winId())); mpv_observe_property(mpv_h, 0, "mute", MPV_FORMAT_FLAG); mpv_observe_property(mpv_h, 0, "volume", MPV_FORMAT_INT64); mpv_observe_property(mpv_h, 0, "duration", MPV_FORMAT_DOUBLE); mpv_observe_property(mpv_h, 0, "time-pos", MPV_FORMAT_DOUBLE); mpv_observe_property(mpv_h, 0, "speed", MPV_FORMAT_DOUBLE); mpv_observe_property(mpv_h, 0, "video-bitrate", MPV_FORMAT_DOUBLE); mpv_observe_property(mpv_h, 0, "audio-bitrate", MPV_FORMAT_DOUBLE); mpv_observe_property(mpv_h, 0, "avsync", MPV_FORMAT_DOUBLE); mpv_set_wakeup_callback(mpv_h, wakeup, this); // m_playWidget->setMpvHandle(mpv_h); volume = g_settings->value("General/volume").toInt(); brightness = g_settings->value("General/brightness").toInt(); // osd显示文件信息 showInfoTimer = new QTimer; showInfoTimer->setInterval(500); connect(showInfoTimer, &QTimer::timeout, [&](){ ShowText(""); }); } /** ********************************************** * 绑定全局信号,主要控制用 ** **********************************************/ void MpvCore::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigForword, [&](bool b){ int seekto; if(b) seekto = lastTime+10>fileInfo.length ? fileInfo.length : lastTime+10; else seekto = lastTime+30>fileInfo.length ? fileInfo.length : lastTime+30; Seek(seekto); ShowText(QString("▶▶ ").append(int2ts(seekto, false))); }); connect(g_user_signal, &GlobalUserSignal::sigBackword, [&](bool b){ int seekto; if(b) seekto = lastTime-10<0 ? 0 : lastTime-10; else seekto = lastTime-30<0 ? 0 : lastTime-30; Seek(seekto); ShowText(QString("◀◀ ").append(int2ts(seekto, false))); }); connect(g_user_signal, &GlobalUserSignal::sigAudioNext, this, &MpvCore::AudioNext); connect(g_user_signal, &GlobalUserSignal::sigVideoDecoder, this, &MpvCore::VideoDecoder); connect(g_user_signal, &GlobalUserSignal::sigVideoOutput, this, &MpvCore::VideoOutput); connect(g_user_signal, &GlobalUserSignal::sigVideoDecodeThread, this, &MpvCore::DecodeThreads); connect(g_user_signal, &GlobalUserSignal::sigChannel, this, &MpvCore::Channel); connect(g_user_signal, &GlobalUserSignal::sigSeek, [&](int time){Seek(time);}); connect(g_user_signal, &GlobalUserSignal::sigVolume, this, &MpvCore::Volume); connect(g_user_signal, SIGNAL(sigMute(bool)), this, SLOT(Mute(bool))); connect(g_user_signal, &GlobalUserSignal::sigVolumeUp, [&](){Volume(volume+10);}); connect(g_user_signal, &GlobalUserSignal::sigVolumeDown, [&](){Volume(volume-10);}); connect(g_user_signal, &GlobalUserSignal::sigAspect, this, &MpvCore::Aspect); connect(g_user_signal, &GlobalUserSignal::sigRestoreFrame, this, &MpvCore::RestoreFrame); connect(g_user_signal, &GlobalUserSignal::sigHorizontallyFlip, this, &MpvCore::FlipHorizontally); connect(g_user_signal, &GlobalUserSignal::sigVerticalFlip, this, &MpvCore::FlipVertically); connect(g_user_signal, &GlobalUserSignal::sigClockwiseRotate, this, &MpvCore::ClockwiseRotate); connect(g_user_signal, &GlobalUserSignal::sigCounterClockwiseRotate, this, &MpvCore::CounterClockwiseRotate); connect(g_user_signal, &GlobalUserSignal::sigBrightnessUp, this, &MpvCore::BrightnessUp); connect(g_user_signal, &GlobalUserSignal::sigBrightnessDown, this, &MpvCore::BrightnessDown); connect(g_user_signal, &GlobalUserSignal::sigRestart, this, &MpvCore::Restart); connect(g_user_signal, &GlobalUserSignal::sigStop, this, &MpvCore::Stop); connect(g_user_signal, &GlobalUserSignal::sigPlay, this, &MpvCore::Play); connect(g_user_signal, &GlobalUserSignal::sigPause, this, &MpvCore::Pause); connect(g_user_signal, &GlobalUserSignal::sigSpeed, this, &MpvCore::Speed); connect(g_user_signal, &GlobalUserSignal::sigSpeedUp, this, &MpvCore::SpeedUp); connect(g_user_signal, &GlobalUserSignal::sigSpeedDown, this, &MpvCore::SpeedDown); connect(g_user_signal, &GlobalUserSignal::sigAudioId, this, &MpvCore::AudioId); connect(g_user_signal, &GlobalUserSignal::sigSubId, this, &MpvCore::SubId); connect(g_user_signal, &GlobalUserSignal::sigAddSub, this, &MpvCore::AddSub); connect(g_user_signal, &GlobalUserSignal::sigSubUp, this, &MpvCore::SubMoveUp); connect(g_user_signal, &GlobalUserSignal::sigSubDown, this, &MpvCore::SubMoveDown); connect(g_user_signal, &GlobalUserSignal::sigSubNext, this, &MpvCore::SubNext); connect(g_user_signal, &GlobalUserSignal::sigSubForward, this, &MpvCore::SubForward); connect(g_user_signal, &GlobalUserSignal::sigSubBackward, this, &MpvCore::SubBackward); connect(g_user_signal, &GlobalUserSignal::sigSubSize, this, &MpvCore::SubFontSize); connect(g_user_signal, &GlobalUserSignal::sigSubFont, this, &MpvCore::SubFontFamily); connect(g_user_signal, &GlobalUserSignal::sigAddBookMark, this, &MpvCore::AddBookMark); connect(g_user_signal, &GlobalUserSignal::sigScreenShot, this, &MpvCore::ScreenShot); connect(g_user_signal, &GlobalUserSignal::sigScreenShotDir, this, &MpvCore::ScreenshotDirectory); connect(g_user_signal, &GlobalUserSignal::sigScreenShotFormat, this, &MpvCore::ScreenshotFormat); connect(g_user_signal, &GlobalUserSignal::sigShowInfo, this, &MpvCore::ShowInfo); connect(g_core_signal, &GlobalCoreSignal::sig10FrameUseTime, [&](qint64 use_time){ if(playState == Mpv::Paused) return; fps = 10000.0 / (double)use_time; fps = ((double)((int)((fps+0.005)*100)))/100; }); } bool MpvCore::event(QEvent *event) { if(event->type() == QEvent::User) { int sid, vid, aid; while(mpv_h) { mpv_event *event = mpv_wait_event(mpv_h, 0); if(event == nullptr || event->event_id == MPV_EVENT_NONE) { break; } switch (event->event_id) { case MPV_EVENT_PROPERTY_CHANGE: { mpv_event_property *prop = (mpv_event_property*)event->data; if(QString(prop->name) == "video-bitrate" && prop->format == MPV_FORMAT_DOUBLE) { videoBitrate = *(double*)prop->data; } else if(QString(prop->name) == "audio-bitrate" && prop->format == MPV_FORMAT_DOUBLE) { audioBitrate = *(double*)prop->data; } else if(QString(prop->name) == "avsync" && prop->format == MPV_FORMAT_DOUBLE) { avsync = *(double*)prop->data; if(avsync < 0) avsync = -avsync; avsync = ((double)(int)(avsync * 10000 * 1000 + 0.5)) / 1000; } else if(QString(prop->name) == "duration") // playback-time does the same thing as time-pos but works for streaming media { if(prop->format == MPV_FORMAT_DOUBLE) { KyInfo() << " file started : " << QDateTime::currentMSecsSinceEpoch(); duration = *(double*)prop->data; // 重启之后是否需要跳转,获取到总长度才能跳转 if (needSeek) Seek(seekTime); needSeek = false; g_core_signal->notifyDuration(m_playingFile, duration); } // 从上次停止位置播放,收到时长改变才能跳转,不然会跳转失败 if (gsetup->playLastPos.first) { Seek(lastStopTime); } } else if(QString(prop->name) == "time-pos") // playback-time does the same thing as time-pos but works for streaming media { if(prop->format == MPV_FORMAT_DOUBLE) { lastTime = *(double*)prop->data; m_current_time = lastTime; g_core_signal->notifyCurrentTime(lastTime); } } else if(QString(prop->name) == "volume") { if(prop->format == MPV_FORMAT_INT64) { g_core_signal->notifyVolume(*(int*)prop->data); ShowText(QString(tr("volume : %1")).arg(*(int*)prop->data)); } } else if(QString(prop->name) == "speed") { speed = *(double*)prop->data; g_core_signal->notifySpeed(speed); ShowText(QString(tr("speed : %1x")).arg(*(double*)prop->data)); } else if(QString(prop->name) == "sid") { if(prop->format == MPV_FORMAT_INT64) { setSid(*(int*)prop->data); } } else if(QString(prop->name) == "aid") { if(prop->format == MPV_FORMAT_INT64) setAid(*(int*)prop->data); } else if(QString(prop->name) == "sub-visibility") { if(prop->format == MPV_FORMAT_FLAG) setSubtitleVisibility((bool)*(unsigned*)prop->data); } else if(QString(prop->name) == "mute") { if(prop->format == MPV_FORMAT_FLAG) { g_core_signal->notifyMute((bool)*(unsigned*)prop->data); ShowText((bool)*(unsigned*)prop->data ? tr("Mute") : tr("Cancel Mute")); } } else if(QString(prop->name) == "core-idle") { if(prop->format == MPV_FORMAT_FLAG) { // if((bool)*(unsigned*)prop->data && playState == Mpv::Playing) // ShowText(tr("Buffering..."), 0); // else // ShowText(QString(), 0); } } else if(QString(prop->name) == "paused-for-cache") { if(prop->format == MPV_FORMAT_FLAG) { if((bool)*(unsigned*)prop->data && playState == Mpv::Playing) ShowText(tr("Your network is slow or stuck, please wait a bit"), 0); else ShowText(QString(), 0); } } break; } case MPV_EVENT_IDLE: fileInfo.length = 0; playState = Mpv::Idle; g_core_signal->notifyCurrentTime(0); g_core_signal->notifyPlayState(Mpv::Idle); break; // these two look like they're reversed but they aren't. the names are misleading. case MPV_EVENT_START_FILE: g_core_signal->notifyPlayState(Mpv::Started); playState = Mpv::Started; break; case MPV_EVENT_FILE_LOADED: isLoaded = true; LoadFileInfo(); SetProperties(); isManualStop = false; g_core_signal->notifyPlayState(Mpv::Loaded); playState = Mpv::Loaded; //加载之后上次停止时间需要设置为0 g_sqlite->updateLastTime(m_playingFile, 0); Play(); ShowText(""); // 不要 break 有莫名其妙的问题,待查 case MPV_EVENT_UNPAUSE: // 防止重复设置状态 if(playState == Mpv::Playing || playState < 0) break; g_core_signal->notifyPlayState(Mpv::Playing); if(playState == Mpv::Paused) ShowText(tr("Playing")); playState = Mpv::Playing; break; case MPV_EVENT_PAUSE: if (playState == Mpv::Paused || playState < 0) break; g_core_signal->notifyPlayState(Mpv::Paused); playState = Mpv::Paused; if (this->duration >= 0) QTimer::singleShot(100, [this](){ShowText(tr("Paused"));}); break; case MPV_EVENT_END_FILE: duration = -1; // 如果没有 loaded 说明文件打开失败(如果快速切换的时候会偶尔没有加载上就需要停止,需要单独处理) if (!isLoaded) { g_core_signal->notifyFileLoadedError(m_playingFile); lastTime = 0; } isLoaded = false; m_subs.clear(); mediaInfo = QString(); playState = Mpv::Stopped; videoBitrate = 0; audioBitrate = 0; g_core_signal->notifyPlayState(Mpv::Stopped); this->vid = this->aid = this->sid = -1; if(!isManualStop) { if(lastTime != 0) g_user_signal->playNext(false); } break; case MPV_EVENT_SHUTDOWN: QCoreApplication::quit(); break; case MPV_EVENT_LOG_MESSAGE: { mpv_event_log_message *message = static_cast(event->data); if(message != nullptr) qDebug() << message->text << " <<<<<<<<<<<<<<<<<<<<<<<<<"; break; } case MPV_EVENT_TRACK_SWITCHED: // 轨道id改变 mpv_get_property(mpv_h, "sid", MPV_FORMAT_INT64, &sid); g_core_signal->notifySubId(sid); if(sid != this->sid && sid >= 0) { this->sid = sid; // 字幕改变 for(Mpv::Track tck : fileInfo.tracks) if(tck.type == "sub" && tck.id == sid) ShowText(tr("subtitle : ").append(tck.title)); } mpv_get_property(mpv_h, "aid", MPV_FORMAT_INT64, &aid); g_core_signal->notifyAudioId(aid); mpv_get_property(mpv_h, "vid", MPV_FORMAT_INT64, &vid); g_core_signal->notifyVideoId(vid); break; default: // unhandled events break; } } return false; } return QObject::event(event); } kylin-video-3.1.3/src/core/mpvcore.h0000644000175000017500000002020314214075177015740 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MPVCORE_H #define MPVCORE_H #include #include #include #include "qthelper.hpp" #include #include #include using namespace ffmpegthumbnailer; #define MPV_REPLY_COMMAND 1 #define MPV_REPLY_PROPERTY 2 #define OMX_DEC_MAX_WIDTH 4096 #define OMX_DEC_MAX_HEIGHT 4096 class PlayGLWidget; class PlayList; class QTimer; class MpvCore : public QObject { Q_OBJECT public: explicit MpvCore(PlayGLWidget *pw, QObject *parent = nullptr); void setProperty(const QString& name, const QVariant& value); QVariant getProperty(const QString& name) const; const Mpv::FileInfo &getFileInfo() { return fileInfo; } Mpv::PlayState getPlayState() { return playState; } QString getFile() { return file; } QString getPath() { return path; } QString getScreenshotFormat() { return screenshotFormat; } QString getScreenshotTemplate() { return screenshotTemplate; } QString getScreenshotDir() { return screenshotDir; } QString getVo() { return vo; } QString getMsgLevel() { return msgLevel; } double getSpeed() { return speed; } int getVolume() { return volume; } int getVid() { return vid; } int getAid() { return aid; } int getSid() { return sid; } bool getSubtitleVisibility() { return subtitleVisibility; } bool getMute() { return mute; } int getOsdWidth() { return osdWidth; } int getOsdHeight() { return osdHeight; } int getRotate() { return rotate; } QString getMediaInfo(); public slots: void LoadTracks(); void LoadChapters(); void LoadVideoParams(); void LoadAudioParams(); void LoadMetadata(); void LoadOsdSize(); void Open(QString file, int start = 0); void Play(); void Pause(); void Stop(); void Restart(); void Volume(int/*, bool osd = false*/); void Channel(Mpv::Channel c); void Speed(double); void SpeedUp(); void SpeedDown(); void Mute(bool); void Seek(int pos, bool relative = false, bool osd = false); void BrightnessUp(); void BrightnessDown(); void SubId(int id); void AudioId(int id); void AudioNext(); void NextFrame(); void PrevFrame(); void Aspect(Mpv::VideoAspect); void SetAspect(QString scale); void RestoreFrame(); void ClockwiseRotate(); void CounterClockwiseRotate(); void FlipHorizontally(); void FlipVertically(); void AddSub(QString file); void AddSubs(QStringList files); void SubMoveUp(); void SubMoveDown(); void SubNext(); void SubForward(); void SubBackward(); void SubFontSize(int size); void SubFontFamily(QString family); void AddBookMark(QString desc); void ScreenShot(bool with_sub); void ScreenshotFormat(QString s); void ScreenshotDirectory(QString d); void ShowInfo(bool is_show); void ShowText(QString text, int duration = 3000); void VideoDecoder(QString _decoder); void VideoOutput(QString output); void DecodeThreads(int threads); private slots: void LoadFileInfo(); void SetProperties(); void setPlaylist(const QStringList& l) { emit playlistChanged(l); } void setFileInfo() { emit fileInfoChanged(fileInfo);} void setFile(QString s) { emit fileChanged(file = s); } void setPath(QString s) { emit pathChanged(path = s); } void setScreenshotTemplate(QString s) { emit screenshotTemplateChanged(screenshotTemplate = s); } void setVo(QString s) { emit voChanged(vo = s); } void setMsgLevel(QString s) { emit msgLevelChanged(msgLevel = s); } void setVid(int i) { emit vidChanged(vid = i); } void setAid(int i) { emit aidChanged(aid = i); currentAid = aid;} void setSid(int i) { emit sidChanged(sid = i); } void setSubtitleVisibility(bool b) { emit subtitleVisibilityChanged(subtitleVisibility = b); } signals: void durationChanged(int); void positionChanged(int); void playlistChanged(const QStringList&); void fileInfoChanged(const Mpv::FileInfo&); void trackListChanged(const QList&); void chaptersChanged(const QList&); void videoParamsChanged(const Mpv::VideoParams&); void audioParamsChanged(const Mpv::AudioParams&); void fileChanging(int, int); void fileChanged(QString); void pathChanged(QString); void screenshotTemplateChanged(QString); void voChanged(QString); void msgLevelChanged(QString); void vidChanged(int); void aidChanged(int); void sidChanged(int); void debugChanged(bool); void subtitleVisibilityChanged(bool); void sigShowText(QString); private: std::mutex m_mtxFileInfo, m_mtxTracks; mpv::qt::Handle mpv_h; PlayGLWidget *m_playWidget; mpv_opengl_cb_context *mpv_gl; QTimer *showInfoTimer; VideoThumbnailer *m_videoTbr; QString m_playingFile; Mpv::PlayState playState = Mpv::Idle; Mpv::FileInfo fileInfo; QString file, path, screenshotFormat, screenshotTemplate, screenshotDir, suffix, vo, msgLevel, mediaInfo; double subDelay = 0, lastTime = 0, duration = -1, speed = 1, avsync = 0, fps = 0; int brightness = 0, seekTime = 0, volume = 100, index = 0, vid = -1, aid = -1, sid = -1, currentAid = -1, currentSid = -1, subCount, subPos, rotate = 0, videoBitrate = 0, audioBitrate = 0, vtracks = 0, atracks = 0, stracks = 0, lastStopTime = 0; bool isVideo = false, needSeek = false, init = false, playlistVisible = false, subtitleVisibility = true, mute = false, showProfile = false, isLoaded = false, isHFlip = false, // 是否水平翻转 isVFlip = false, // 是否竖直翻转 isManualStop = false, // 是否手动停止,如果是的话不要播放下一个 canSaveScreenShot = true; // 截图路径是否有权限保存截图 int osdWidth, osdHeight; int m_current_time; QVector m_subs; QVariant Command(const QVariant& params); void LoadOptions(); void SetOption(QString key, QString val); int AsyncCommand(const char *args[]); void initMpvHandle(); void initGlobalSig(); private slots: protected: bool event(QEvent *event); }; #endif // MPVCORE_H kylin-video-3.1.3/src/core/subtracks.cpp0000644000175000017500000000546714214075177016640 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "subtracks.h" #include SubTracks::SubTracks() { index = 0; } SubTracks::~SubTracks() { } int SubTracks::find(SubData::Type t, int ID) { for (unsigned int n=0; n < subs.count(); n++) { if ( ( subs[n].type() == t ) && ( subs[n].ID() == ID ) ) { return n; } } qDebug("SubTracks::find: item type: %d, ID: %d doesn't exist", t, ID); return -1; } void SubTracks::add(SubData::Type t, int ID) { SubData d; d.setType(t); d.setID(ID); subs.append(d); } bool SubTracks::changeLang(SubData::Type t, int ID, QString lang) { int f = find(t,ID); if (f == -1) return false; subs[f].setLang(lang); return true; } bool SubTracks::changeName(SubData::Type t, int ID, QString name) { int f = find(t,ID); if (f == -1) return false; subs[f].setName(name); return true; } bool SubTracks::changeFilename(SubData::Type t, int ID, QString filename) { int f = find(t,ID); if (f == -1) return false; subs[f].setFilename(filename); return true; } SubData SubTracks::itemAt(int n) { if (n >= 0 && n < subs.count()) { return subs[n]; } else { qWarning("SubTracks::itemAt: %d out of range!", n); qWarning("SubTracks::itemAt: returning an empty sub to avoid a crash"); qWarning("SubTracks::itemAt: this shouldn't happen, report a bug if you see this"); SubData empty_sub; return empty_sub; } } SubData SubTracks::findItem(SubData::Type t, int ID) { SubData sub; int n = find(t,ID); if ( n != -1 ) return subs[n]; else return sub; } void SubTracks::save(QSettings *set, const QString &name) { set->beginWriteArray(name); for (int n = 0; n < numItems(); n++) { set->setArrayIndex(n); SubData d = itemAt(n); set->setValue("id", d.ID()); set->setValue("lang", d.lang()); set->setValue("name", d.name()); set->setValue("type", d.type()); set->setValue("filename", d.filename()); } set->endArray(); } kylin-video-3.1.3/src/core/playlist.cpp0000644000175000017500000001650114214075177016467 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "playlist.h" #include #include #include #include "global/global.h" #include "global/extensions.h" #include "core/util.h" using namespace Global; PlayList::PlayList(QObject *parent) : QObject(parent) { srand(time(0)); initGlobalSig(); } /** ********************************** * 添加文件到播放列表 * 说明:只有在打开新文件的时候会调用 * @param: filePath 文件全路径 * @param: fileName 文件名称 * @param: duration 媒体时长 *************************************/ void PlayList::addListFile(QString filePath, QString fileName, int duration) { // 新文件更新 m_path_name_map QPair pairin(fileName, duration); m_path_name_map[filePath] = pairin; m_fileList.push_back(filePath); // 写入数据库 kvsqlite->insertPlayList(filePath, fileName, duration); // 告诉界面添加一条 g_user_signal->addListItem(filePath, duration); } /** ********************************** * 设置播放列表 * 说明:初始化的时候调用(数据库中读取) * @param: path_name_vec * <绝对路径, <文件名, 文件时长>> *************************************/ void PlayList::setList(QVector > > path_name_vec) { qDebug() << path_name_vec.size(); for(QPair > p : path_name_vec) { m_path_name_map[p.first] = p.second; m_fileList.push_back(p.first); g_user_signal->addListItem(p.first, p.second.second); } } /** ********************************** * 设置当前索引 * 说明:初始化时设置 * @param: index 当前索引 *************************************/ void PlayList::setCurrentIndex(int index) { m_PlayIndex = index; g_core_signal->setPlayIndex(index); } /** ********************************** * 添加文件夹 * @param: dir 文件夹名称 *************************************/ void PlayList::addDirectory(QString dir) { Extensions e; QRegExp rx_ext(e.multimedia().forRegExp()); rx_ext.setCaseSensitivity(Qt::CaseInsensitive); QStringList dir_list = QDir(dir).entryList(); QStringList args; QString filename; QStringList::Iterator it = dir_list.begin(); QString first_add_file = ""; while( it != dir_list.end() ) { args.clear(); args << "--no-config" << "--no-quiet" << "--terminal" << "--frames=1" << "--vo=null" << "--ao=null" << "--term-playing-msg=INFO_LENGTH=${=duration:${=length}}"; filename = dir; if (filename.right(1)!="/") filename += "/"; filename += (*it); QFileInfo fi(filename); if (!fi.isDir()) { if (rx_ext.indexIn(fi.suffix()) > -1) { // 第一个添加进来的文件需要播放 if(first_add_file == "") first_add_file = filename; // 如果列表存在的话不重复添加 if(m_path_name_map.find(filename) != m_path_name_map.end()) { ++it; continue; } m_fileList.push_back(filename); // 添加文件后需要获取媒体时长 QProcess *p = new QProcess; connect(p, &QProcess::readyReadStandardOutput, [&](){ while (true) { QString line = p->readLine(); if(line.length() == 0) break; if(line.indexOf("INFO_LENGTH") != -1) { QString value = line.split("=").last(); int duration = (int)value.left(value.length()-2).toDouble(); QPair pin(p->arguments().last().split("/").last(), duration); m_path_name_map[p->arguments().last()] = pin; // 告诉别人添加新文件了(主要是通知列表界面) g_user_signal->addListItem(p->arguments().last(), duration); // 写到数据库 kvsqlite->insertPlayList(p->arguments().last(), p->arguments().last().split("/").last(), duration); } } }); p->setProgram("/usr/bin/mpv"); args << filename; p->setArguments(args); p->start(); p->waitForFinished(); delete p; } } ++it; } // 播放 first_add_file,另外需要更新当前索引 g_user_signal->open(first_add_file); for(int i=0; isetPlayIndex(i); m_PlayIndex = i; break; } } } /** ********************************** * 播放下一个 *************************************/ void PlayList::playNext() { switch (m_play_order) { case ONE_LOOP: break; case SEQUENCE: // 顺序播放,只播放一遍 if(m_PlayIndex == m_fileList.size()-1) // 停止播放 return; m_PlayIndex += 1; break; case LIST_LOOP: m_PlayIndex = ++m_PlayIndex > m_fileList.size() ? 0 : m_PlayIndex; case RANDOM: m_PlayIndex = rand()%m_fileList.size(); default: break; } g_core_signal->setPlayIndex(m_PlayIndex); g_user_signal->open(m_fileList.at(m_PlayIndex)); } #include void PlayList::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigPlayNext, this, &PlayList::playNext); connect(g_user_signal, &GlobalUserSignal::sigAddDir, this, &PlayList::addDirectory); connect(g_user_signal, &GlobalUserSignal::sigPlayOrder, [&](PLAYORDER order){ m_play_order = order; settings->setValue("General/play_order", (int)order); }); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ // 播放文件改变 如果有则切换到该行 如果没有则添加 syslog(LOG_ERR, "====== %s\n", fi.file_path.toStdString().c_str()); if(m_path_name_map.find(fi.file_path) == m_path_name_map.end()) addListFile(fi.file_path, fi.file_path.split("/").last(), fi.length); for(int i=0; isetPlayIndex(m_PlayIndex); }); } kylin-video-3.1.3/src/core/mpvtypes.h0000644000175000017500000000677114214075177016172 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MPVTYPES_H #define MPVTYPES_H #include #include #include #include #include namespace Mpv { enum Channel{Default, Stereo, Left, Right}; // filetypes supported by mpv: https://github.com/mpv-player/mpv/blob/master/player/external_files.c // ,"*.m4a","*.aac","*.dts","*.m4r","*.wav","*.wma","*.flv","*.gif" const QStringList audio_filetypes = {"*.mp3","*.m4a","*.aac","*.dts","*.m4r","*.wav","*.wma","*.ogg","*.oga","*.ac3","*.ape","*.thd","*.flac","*.ra","*.mka","*.opus","*.mmf","*.mp2","*.wv"}, video_filetypes = {"*.flv","*.swf","*.h264","*.h265","*.264","*.265","*.avi","*.divx","*.mpg","*.mpeg","*.m1v","*.m2v","*.mpv","*.dv","*.3gp","*.mov","*.mp4","*.m4v","*.mqv","*.dat","*.vcd","*.ogm","*.ogv","*.asf","*.wmv","*.vob","*.mkv","*.ram","*.rm","*.ts","*.rmvb","*.dvr-ms","*.m2t","*.m2ts","*.rec","*.f4v","*.hdmov","*.webm","*.vp8","*.letv","*.hlv","*.mts"}, media_filetypes = audio_filetypes + video_filetypes, subtitle_filetypes = {"*.sub","*.srt","*.ass","*.ssa","*.smi","*.rt","*.txt","*.mks","*.vtt","*.sup"}; enum PlayState { Idle = -1, Started = 1, Loaded = 2, Playing = 3, Paused = 4, Stopped = -2 }; enum VideoAspect { AUTO, DIV_4_3, DIV_16_9, FULL }; struct Chapter { QString title; int time; }; struct Track { int id; QString type; int src_id; QString title; QString lang; unsigned albumart : 1, _default : 1, external : 1; QString external_filename; QString codec; bool operator==(const Track &t) { return (id == t.id); } }; struct VideoParams { QString codec; int width = 0, height = 0, dwidth = 0, dheight = 0; double aspect = 0, fps = 0; }; struct AudioParams { QString codec; int samplerate, channels; }; struct FileInfo { QString file_path; QString media_title; int length = 0; QMap metadata; VideoParams video_params; AudioParams audio_params; QList tracks; // audio, video, and subs QList chapters; }; } Q_DECLARE_METATYPE(Mpv::PlayState) // so we can pass it with signals & slots Q_DECLARE_METATYPE(Mpv::Chapter) Q_DECLARE_METATYPE(Mpv::Track) Q_DECLARE_METATYPE(Mpv::VideoParams) Q_DECLARE_METATYPE(Mpv::AudioParams) Q_DECLARE_METATYPE(Mpv::FileInfo) #endif // MPVTYPES_H kylin-video-3.1.3/src/core/subtracks.h0000644000175000017500000000561414214075177016277 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SUBTRACKS_H #define SUBTRACKS_H #include #include class QSettings; class SubData { public: enum Type { None = -1, Vob = 0, Sub = 1, File = 2 }; SubData() { _ID=-1; _lang=""; _name=""; _filename=""; _type = None; } ~SubData() {} void setType( Type t ) { _type = t; } void setID(int id) { _ID = id; } void setLang(QString lang) { _lang = lang; } void setName(QString name) { _name = name; } void setFilename(QString f) { _filename = f; } Type type() { return _type; } int ID() { return _ID; } QString lang() { return _lang; } QString name() { return _name; } QString filename() { return _filename; } QString displayName() { QString dname=""; if (!_name.isEmpty()) { dname = _name; if (!_lang.isEmpty()) { dname += " ["+ _lang + "]"; } } else if (!_lang.isEmpty()) { dname = _lang; } else if (!_filename.isEmpty()) { QFileInfo f(_filename); dname = f.fileName(); } else dname = QString::number(_ID); return dname; } protected: Type _type; int _ID; QString _lang; QString _name; QString _filename; }; typedef QList SubList; class SubTracks { public: enum ParseResult { SubtitleUnchanged = 0, SubtitleAdded = 1, SubtitleChanged = 2 }; SubTracks(); ~SubTracks(); void clear(){subs.clear();} int find(SubData::Type t, int ID); void add( SubData::Type t, int ID ); bool changeLang( SubData::Type t, int ID, QString lang ); bool changeName( SubData::Type t, int ID, QString name ); bool changeFilename( SubData::Type t, int ID, QString filename ); int numItems(){return subs.count();} bool existsItemAt(int n){return ((n >= 0) && (n < numItems()));} SubData itemAt(int n); SubData findItem( SubData::Type t, int ID ); void save(QSettings * set, const QString & name); void load(QSettings * set, const QString & name); protected: SubList subs; int index; }; #endif // SUBTRACKS_H kylin-video-3.1.3/src/core/playlist.h0000644000175000017500000000346614214075177016142 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef PLAYLIST_H #define PLAYLIST_H #include #include #include "core/mpvtypes.h" #include "global/globalsignal.h" class PlayList : public QObject { Q_OBJECT public: explicit PlayList(QObject *parent = nullptr); void addListFile(QString filePath, QString fileName, int duration); void setList(QVector > > path_name_vec); void setCurrentIndex(int index); private slots: void addDirectory(QString dir); void playNext(); signals: private: int m_PlayIndex; // 当前播放索引 QString m_playFile; // 当前播放文件 PLAYORDER m_play_order; // 播放顺序 // <绝对路径,<文件名,秒数>> // QVector > > m_path_name_vec; QStringList m_fileList; // 该列表排序需要和界面列表中排序一致 // <绝对路径,<文件名,秒数>> QMap > m_path_name_map; void initGlobalSig(); }; #endif // PLAYLIST_H kylin-video-3.1.3/src/core/util.cpp0000644000175000017500000001233414214075177015603 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "util.h" #include #include #include namespace Util { bool IsValidUrl(QString url) { QRegExp rx("^[a-z]{2,}://", Qt::CaseInsensitive); // url return (rx.indexIn(url) != -1); } QString FormatTime(int _time, int _totalTime) { QTime time = QTime::fromMSecsSinceStartOfDay(_time * 1000); if(_totalTime >= 3600) // hours return time.toString("h:mm:ss"); if(_totalTime >= 60) // minutes return time.toString("mm:ss"); return time.toString("0:ss"); // seconds } QString FormatRelativeTime(int _time) { QString prefix; if(_time < 0) { prefix = "-"; _time = -_time; } else prefix = "+"; QTime time = QTime::fromMSecsSinceStartOfDay(_time * 1000); if(_time >= 3600) // hours return prefix+time.toString("h:mm:ss"); if(_time >= 60) // minutes return prefix+time.toString("mm:ss"); return prefix+time.toString("0:ss"); // seconds } QString FormatNumber(int val, int length) { if(length < 10) return QString::number(val); else if(length < 100) return QString("%1").arg(val, 2, 10, QChar('0')); else return QString("%1").arg(val, 3, 10, QChar('0')); } QString FormatNumberWithAmpersand(int val, int length) { if(length < 10) return "&"+QString::number(val); else if(length < 100) { if(val < 10) return "0&"+QString::number(val); return QString("%1").arg(val, 2, 10, QChar('0')); } else { if(val < 10) return "00&"+QString::number(val); return QString("%1").arg(val, 3, 10, QChar('0')); } } QString HumanSize(qint64 size) { // taken from http://comments.gmane.org/gmane.comp.lib.qt.general/34914 float num = size; QStringList list; list << "KB" << "MB" << "GB" << "TB"; QStringListIterator i(list); QString unit("bytes"); while(num >= 1024.0 && i.hasNext()) { unit = i.next(); num /= 1024.0; } return QString().setNum(num,'f',2)+" "+unit; } //QString ShortenPathToParent(const Recent &recent) //{ // const int long_name = 100; // if(recent.title != QString()) // return QString("%0 (%1)").arg(recent.title, recent.path); // QString p = QDir::fromNativeSeparators(recent.path); // int i = p.lastIndexOf('/'); // if(i != -1) // { // int j = p.lastIndexOf('/', i-1); // if(j != -1) // { // QString parent = p.mid(j+1, i-j-1), // file = p.mid(i+1); // // todo: smarter trimming // if(parent.length() > long_name) // { // parent.truncate(long_name); // parent += ".."; // } // if(file.length() > long_name) // { // file.truncate(long_name); // i = p.lastIndexOf('.'); // file += ".."; // if(i != -1) // { // QString ext = p.mid(i); // file.truncate(file.length()-ext.length()); // file += ext; // add the extension back // } // } // return QDir::toNativeSeparators(parent+"/"+file); // } // } // return QDir::toNativeSeparators(recent.path); //} QStringList ToNativeSeparators(QStringList list) { QStringList ret; for(auto element : list) { if(Util::IsValidLocation(element)) ret.push_back(element); else ret.push_back(QDir::toNativeSeparators(element)); } return ret; } QStringList FromNativeSeparators(QStringList list) { QStringList ret; for(auto element : list) ret.push_back(QDir::fromNativeSeparators(element)); return ret; } int GCD(int u, int v) { int shift; if(u == 0) return v; if(v == 0) return u; for(shift = 0; ((u | v) & 1) == 0; ++shift) { u >>= 1; v >>= 1; } while((u & 1) == 0) u >>= 1; do { while ((v & 1) == 0) v >>= 1; if (u > v) { unsigned int t = v; v = u; u = t; } v = v - u; } while (v != 0); return u << shift; } QString Ratio(int w, int h) { int gcd=GCD(w, h); if(gcd == 0) return "0:0"; return QString("%0:%1").arg(QString::number(w/gcd), QString::number(h/gcd)); } void ShowInFolder(QString path, QString file) { } bool IsValidLocation(QString loc) { } } kylin-video-3.1.3/src/core/util.h0000644000175000017500000000346014214075177015250 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef UTIL_H #define UTIL_H #include #include #include //#include "recent.h" class Settings; namespace Util { // platform specific QString VersionFileUrl(); QString DownloadFileUrl(); bool DimLightsSupported(); void SetAlwaysOnTop(WId wid, bool); QString SettingsLocation(); bool IsValidFile(QString path); bool IsValidLocation(QString loc); // combined file and url void ShowInFolder(QString path, QString file); QString MonospaceFont(); // common bool IsValidUrl(QString url); QString FormatTime(int time, int totalTime); QString FormatRelativeTime(int time); QString FormatNumber(int val, int length); QString FormatNumberWithAmpersand(int val, int length); QString HumanSize(qint64); //QString ShortenPathToParent(const Recent &recent); QStringList ToNativeSeparators(QStringList list); QStringList FromNativeSeparators(QStringList list); int GCD(int v, int u); QString Ratio(int w, int h); } inline QTextStream& qStdout() { static QTextStream r{stdout}; return r; } #endif // UTIL_H kylin-video-3.1.3/src/log/0000755000175000017500000000000014212620632013736 5ustar fengfengkylin-video-3.1.3/src/log/elog_async.c0000644000175000017500000002437014212620632016233 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2016-2017, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Logs asynchronous output. * Created on: 2016-11-06 */ #include #include #ifdef ELOG_ASYNC_OUTPUT_ENABLE #ifdef ELOG_ASYNC_OUTPUT_USING_PTHREAD #include #include #include /* thread default stack size */ #ifndef ELOG_ASYNC_OUTPUT_PTHREAD_STACK_SIZE #if PTHREAD_STACK_MIN > 4*1024 #define ELOG_ASYNC_OUTPUT_PTHREAD_STACK_SIZE PTHREAD_STACK_MIN #else #define ELOG_ASYNC_OUTPUT_PTHREAD_STACK_SIZE (1*1024) #endif /* thread default priority */ #ifndef ELOG_ASYNC_OUTPUT_PTHREAD_PRIORITY #define ELOG_ASYNC_OUTPUT_PTHREAD_PRIORITY (sched_get_priority_max(SCHED_RR) - 1) #endif /* output thread poll get log buffer size */ #ifndef ELOG_ASYNC_POLL_GET_LOG_BUF_SIZE #define ELOG_ASYNC_POLL_GET_LOG_BUF_SIZE (ELOG_LINE_BUF_SIZE - 4) #endif #endif /* ELOG_ASYNC_OUTPUT_USING_PTHREAD */ /* asynchronous output log notice */ static sem_t output_notice; /* asynchronous output pthread thread */ static pthread_t async_output_thread; #endif /* ELOG_ASYNC_OUTPUT_USING_PTHREAD */ /* the highest output level for async mode, other level will sync output */ #ifdef ELOG_ASYNC_OUTPUT_LVL #define OUTPUT_LVL ELOG_ASYNC_OUTPUT_LVL #else #define OUTPUT_LVL ELOG_LVL_ASSERT #endif /* ELOG_ASYNC_OUTPUT_LVL */ /* buffer size for asynchronous output mode */ #ifdef ELOG_ASYNC_OUTPUT_BUF_SIZE #define OUTPUT_BUF_SIZE ELOG_ASYNC_OUTPUT_BUF_SIZE #else #define OUTPUT_BUF_SIZE (ELOG_LINE_BUF_SIZE * 10) #endif /* ELOG_ASYNC_OUTPUT_BUF_SIZE */ /* Initialize OK flag */ static bool init_ok = false; /* thread running flag */ static bool thread_running = false; /* asynchronous output mode enabled flag */ static bool is_enabled = false; /* asynchronous output mode's ring buffer */ static char log_buf[OUTPUT_BUF_SIZE] = { 0 }; /* log ring buffer write index */ static size_t write_index = 0; /* log ring buffer read index */ static size_t read_index = 0; /* log ring buffer full flag */ static bool buf_is_full = false; /* log ring buffer empty flag */ static bool buf_is_empty = true; extern void elog_port_output(const char *log, size_t size); extern void elog_output_lock(void); extern void elog_output_unlock(void); /** * asynchronous output ring buffer used size * * @return used size */ static size_t elog_async_get_buf_used(void) { if (write_index > read_index) { return write_index - read_index; } else { if (!buf_is_full && !buf_is_empty) { return OUTPUT_BUF_SIZE - (read_index - write_index); } else if (buf_is_full) { return OUTPUT_BUF_SIZE; } else { return 0; } } } /** * asynchronous output ring buffer remain space * * @return remain space */ static size_t async_get_buf_space(void) { return OUTPUT_BUF_SIZE - elog_async_get_buf_used(); } /** * put log to asynchronous output ring buffer * * @param log put log buffer * @param size log size * * @return put log size, the log which beyond ring buffer space will be dropped */ static size_t async_put_log(const char *log, size_t size) { size_t space = 0; space = async_get_buf_space(); /* no space */ if (!space) { size = 0; goto __exit; } /* drop some log */ if (space <= size) { size = space; buf_is_full = true; } if (write_index + size < OUTPUT_BUF_SIZE) { memcpy(log_buf + write_index, log, size); write_index += size; } else { memcpy(log_buf + write_index, log, OUTPUT_BUF_SIZE - write_index); memcpy(log_buf, log + OUTPUT_BUF_SIZE - write_index, size - (OUTPUT_BUF_SIZE - write_index)); write_index += size - OUTPUT_BUF_SIZE; } buf_is_empty = false; __exit: return size; } #ifdef ELOG_ASYNC_LINE_OUTPUT /** * Get line log from asynchronous output ring buffer. * It will copy all log when the newline sign isn't find. * * @param log get line log buffer * @param size line log size * * @return get line log size, the log size is less than ring buffer used size */ size_t elog_async_get_line_log(char *log, size_t size) { size_t used = 0, cpy_log_size = 0; /* lock output */ elog_output_lock(); used = elog_async_get_buf_used(); /* no log */ if (!used || !size) { goto __exit; } /* less log */ if (used <= size) { size = used; } if (read_index + size < OUTPUT_BUF_SIZE) { cpy_log_size = elog_cpyln(log, log_buf + read_index, size); read_index += cpy_log_size; } else { cpy_log_size = elog_cpyln(log, log_buf + read_index, OUTPUT_BUF_SIZE - read_index); if (cpy_log_size == OUTPUT_BUF_SIZE - read_index) { cpy_log_size += elog_cpyln(log + cpy_log_size, log_buf, size - cpy_log_size); read_index += cpy_log_size - OUTPUT_BUF_SIZE; } else { read_index += cpy_log_size; } } if (used == cpy_log_size) { buf_is_empty = true; } if (cpy_log_size) { buf_is_full = false; } __exit: /* lock output */ elog_output_unlock(); return cpy_log_size; } #else /** * get log from asynchronous output ring buffer * * @param log get log buffer * @param size log size * * @return get log size, the log size is less than ring buffer used size */ size_t elog_async_get_log(char *log, size_t size) { size_t used = 0; /* lock output */ elog_output_lock(); used = elog_async_get_buf_used(); /* no log */ if (!used || !size) { size = 0; goto __exit; } /* less log */ if (used <= size) { size = used; buf_is_empty = true; } if (read_index + size < OUTPUT_BUF_SIZE) { memcpy(log, log_buf + read_index, size); read_index += size; } else { memcpy(log, log_buf + read_index, OUTPUT_BUF_SIZE - read_index); memcpy(log + OUTPUT_BUF_SIZE - read_index, log_buf, size - (OUTPUT_BUF_SIZE - read_index)); read_index += size - OUTPUT_BUF_SIZE; } buf_is_full = false; __exit: /* lock output */ elog_output_unlock(); return size; } #endif /* ELOG_ASYNC_LINE_OUTPUT */ void elog_async_output(uint8_t level, const char *log, size_t size) { /* this function must be implement by user when ELOG_ASYNC_OUTPUT_USING_PTHREAD is not defined */ extern void elog_async_output_notice(void); size_t put_size; if (is_enabled) { if (level >= OUTPUT_LVL) { put_size = async_put_log(log, size); /* notify output log thread */ if (put_size > 0) { elog_async_output_notice(); } } else { elog_port_output(log, size); } } else { elog_port_output(log, size); } } #ifdef ELOG_ASYNC_OUTPUT_USING_PTHREAD void elog_async_output_notice(void) { sem_post(&output_notice); } static void *async_output(void *arg) { size_t get_log_size = 0; static char poll_get_buf[ELOG_ASYNC_POLL_GET_LOG_BUF_SIZE]; while(thread_running) { /* waiting log */ sem_wait(&output_notice); /* polling gets and outputs the log */ while(true) { #ifdef ELOG_ASYNC_LINE_OUTPUT get_log_size = elog_async_get_line_log(poll_get_buf, ELOG_ASYNC_POLL_GET_LOG_BUF_SIZE); #else get_log_size = elog_async_get_log(poll_get_buf, ELOG_ASYNC_POLL_GET_LOG_BUF_SIZE); #endif if (get_log_size) { elog_port_output(poll_get_buf, get_log_size); } else { break; } } } return NULL; } #endif /** * enable or disable asynchronous output mode * the log will be output directly when mode is disabled * * @param enabled true: enabled, false: disabled */ void elog_async_enabled(bool enabled) { is_enabled = enabled; } /** * asynchronous output mode initialize * * @return result */ ElogErrCode elog_async_init(void) { ElogErrCode result = ELOG_NO_ERR; if (init_ok) { return result; } #ifdef ELOG_ASYNC_OUTPUT_USING_PTHREAD pthread_attr_t thread_attr; struct sched_param thread_sched_param; sem_init(&output_notice, 0, 0); thread_running = true; pthread_attr_init(&thread_attr); //pthread_attr_setdetachstate(&thread_attr, PTHREAD_CREATE_DETACHED); pthread_attr_setstacksize(&thread_attr, ELOG_ASYNC_OUTPUT_PTHREAD_STACK_SIZE); pthread_attr_setschedpolicy(&thread_attr, SCHED_RR); thread_sched_param.sched_priority = ELOG_ASYNC_OUTPUT_PTHREAD_PRIORITY; pthread_attr_setschedparam(&thread_attr, &thread_sched_param); pthread_create(&async_output_thread, &thread_attr, async_output, NULL); pthread_attr_destroy(&thread_attr); #endif init_ok = true; return result; } /** * asynchronous output mode deinitialize * */ void elog_async_deinit(void) { if (!init_ok) { return ; } #ifdef ELOG_ASYNC_OUTPUT_USING_PTHREAD thread_running = false; elog_async_output_notice(); pthread_join(async_output_thread, NULL); sem_destroy(&output_notice); #endif init_ok = false; } #endif /* ELOG_ASYNC_OUTPUT_ENABLE */ kylin-video-3.1.3/src/log/elog_file.h0000644000175000017500000000440314212620632016035 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2019, Qintl, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: It is an head file for file log plugin. You can see all be called functions. * Created on: 2019-01-05 */ #ifndef __ELOG_FILE__H__ #define __ELOG_FILE__H__ #include #include #include #ifdef __cplusplus extern "C" { #endif /* EasyLogger file log plugin's software version number */ #define ELOG_FILE_SW_VERSION "V1.0.0" #ifdef linux #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) #else #define likely(x) (x) #define unlikely(x) (x) #endif typedef struct { char *name; /* file name */ size_t max_size; /* file max size */ int max_rotate; /* max rotate file count */ } ElogFileCfg; /* elog_file.c */ ElogErrCode elog_file_init(void); void elog_file_write(const char *log, size_t size); void elog_file_config(ElogFileCfg *cfg); void elog_file_deinit(void); /* elog_file_port.c */ ElogErrCode elog_file_port_init(void); void elog_file_port_lock(void); void elog_file_port_unlock(void); void elog_file_port_deinit(void); #ifdef __cplusplus } #endif #endif kylin-video-3.1.3/src/log/elog_file_cfg.h0000644000175000017500000000321614212620632016655 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2019, Qintl, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: It is the configure head file for this flash log plugin. * Created on: 2019-01-05 */ #ifndef _ELOG_FILE_CFG_H_ #define _ELOG_FILE_CFG_H_ /* EasyLogger file log plugin's using file name */ #define ELOG_FILE_NAME "/home/kylin/test.log" /* EasyLogger file log plugin's using file max size */ #define ELOG_FILE_MAX_SIZE (1 * 1024 * 1024) /* EasyLogger file log plugin's using max rotate file count */ #define ELOG_FILE_MAX_ROTATE 5 #endif /* _ELOG_FILE_CFG_H_ */ kylin-video-3.1.3/src/log/elog_utils.c0000644000175000017500000000563714212620632016263 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2018, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Some utils for this library. * Created on: 2015-04-28 */ #include #include /** * another copy string function * * @param cur_len current copied log length, max size is ELOG_LINE_BUF_SIZE * @param dst destination * @param src source * * @return copied length */ size_t elog_strcpy(size_t cur_len, char *dst, const char *src) { const char *src_old = src; assert(dst); assert(src); while (*src != 0) { /* make sure destination has enough space */ if (cur_len++ < ELOG_LINE_BUF_SIZE) { *dst++ = *src++; } else { break; } } return src - src_old; } /** * Copy line log split by newline sign. It will copy all log when the newline sign isn't find. * * @param line line log buffer * @param log origin log buffer * @param len origin log buffer length * * @return copy size */ size_t elog_cpyln(char *line, const char *log, size_t len) { size_t newline_len = strlen(ELOG_NEWLINE_SIGN), copy_size = 0; assert(line); assert(log); while (len--) { *line++ = *log++; copy_size++; if (copy_size >= newline_len && !strncmp(log - newline_len, ELOG_NEWLINE_SIGN, newline_len)) { break; } } return copy_size; } /** * This function will copy memory content from source address to destination * address. * * @param dst the address of destination memory * @param src the address of source memory * @param count the copied length * * @return the address of destination memory */ void *elog_memcpy(void *dst, const void *src, size_t count) { char *tmp = (char *) dst, *s = (char *) src; assert(dst); assert(src); while (count--) *tmp++ = *s++; return dst; } kylin-video-3.1.3/src/log/elog_buf.c0000644000175000017500000000646514212620632015677 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2016, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Logs buffered output. * Created on: 2016-11-09 */ #include #include #ifdef ELOG_BUF_OUTPUT_ENABLE #if !defined(ELOG_BUF_OUTPUT_BUF_SIZE) #error "Please configure buffer size for buffered output mode (in elog_cfg.h)" #endif /* buffered output mode's buffer */ static char log_buf[ELOG_BUF_OUTPUT_BUF_SIZE] = { 0 }; /* log buffer current write size */ static size_t buf_write_size = 0; /* buffered output mode enabled flag */ static bool is_enabled = false; extern void elog_port_output(const char *log, size_t size); extern void elog_output_lock(void); extern void elog_output_unlock(void); /** * output buffered logs when buffer is full * * @param log will be buffered line's log * @param size log size */ void elog_buf_output(const char *log, size_t size) { size_t write_size = 0, write_index = 0; if (!is_enabled) { elog_port_output(log, size); return; } while (true) { if (buf_write_size + size > ELOG_BUF_OUTPUT_BUF_SIZE) { write_size = ELOG_BUF_OUTPUT_BUF_SIZE - buf_write_size; memcpy(log_buf + buf_write_size, log + write_index, write_size); write_index += write_size; size -= write_size; buf_write_size += write_size; /* output log */ elog_port_output(log_buf, buf_write_size); /* reset write index */ buf_write_size = 0; } else { memcpy(log_buf + buf_write_size, log + write_index, size); buf_write_size += size; break; } } } /** * flush all buffered logs to output device */ void elog_flush(void) { if (buf_write_size == 0) return; /* lock output */ elog_output_lock(); /* output log */ elog_port_output(log_buf, buf_write_size); /* reset write index */ buf_write_size = 0; /* unlock output */ elog_output_unlock(); } /** * enable or disable buffered output mode * the log will be output directly when mode is disabled * * @param enabled true: enabled, false: disabled */ void elog_buf_enabled(bool enabled) { is_enabled = enabled; } #endif /* ELOG_BUF_OUTPUT_ENABLE */ kylin-video-3.1.3/src/log/elog.h0000644000175000017500000002317014212620632015040 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2019, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: It is an head file for this library. You can see all be called functions. * Created on: 2015-04-28 */ #ifndef __ELOG_H__ #define __ELOG_H__ #include #include #include #include #ifdef __cplusplus extern "C" { #endif /* output log's level */ #define ELOG_LVL_ASSERT 0 #define ELOG_LVL_ERROR 1 #define ELOG_LVL_WARN 2 #define ELOG_LVL_INFO 3 #define ELOG_LVL_DEBUG 4 #define ELOG_LVL_VERBOSE 5 /* the output silent level and all level for filter setting */ #define ELOG_FILTER_LVL_SILENT ELOG_LVL_ASSERT #define ELOG_FILTER_LVL_ALL ELOG_LVL_VERBOSE /* output log's level total number */ #define ELOG_LVL_TOTAL_NUM 6 /* EasyLogger software version number */ #define ELOG_SW_VERSION "2.2.99" /* EasyLogger assert for developer. */ #ifdef ELOG_ASSERT_ENABLE #define ELOG_ASSERT(EXPR) \ if (!(EXPR)) \ { \ if (elog_assert_hook == NULL) { \ elog_a("elog", "(%s) has assert failed at %s:%ld.", #EXPR, __FUNCTION__, __LINE__); \ while (1); \ } else { \ elog_assert_hook(#EXPR, __FUNCTION__, __LINE__); \ } \ } #else #define ELOG_ASSERT(EXPR) ((void)0); #endif #ifndef ELOG_OUTPUT_ENABLE #define elog_assert(tag, ...) #define elog_error(tag, ...) #define elog_warn(tag, ...) #define elog_info(tag, ...) #define elog_debug(tag, ...) #define elog_verbose(tag, ...) #else /* ELOG_OUTPUT_ENABLE */ #if ELOG_OUTPUT_LVL >= ELOG_LVL_ASSERT #define elog_assert(tag, ...) \ elog_output(ELOG_LVL_ASSERT, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_assert(tag, ...) #endif /* ELOG_OUTPUT_LVL >= ELOG_LVL_ASSERT */ #if ELOG_OUTPUT_LVL >= ELOG_LVL_ERROR #define elog_error(tag, ...) \ elog_output(ELOG_LVL_ERROR, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_error(tag, ...) #endif /* ELOG_OUTPUT_LVL >= ELOG_LVL_ERROR */ #if ELOG_OUTPUT_LVL >= ELOG_LVL_WARN #define elog_warn(tag, ...) \ elog_output(ELOG_LVL_WARN, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_warn(tag, ...) #endif /* ELOG_OUTPUT_LVL >= ELOG_LVL_WARN */ #if ELOG_OUTPUT_LVL >= ELOG_LVL_INFO #define elog_info(tag, ...) \ elog_output(ELOG_LVL_INFO, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_info(tag, ...) #endif /* ELOG_OUTPUT_LVL >= ELOG_LVL_INFO */ #if ELOG_OUTPUT_LVL >= ELOG_LVL_DEBUG #define elog_debug(tag, ...) \ elog_output(ELOG_LVL_DEBUG, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_debug(tag, ...) #endif /* ELOG_OUTPUT_LVL >= ELOG_LVL_DEBUG */ #if ELOG_OUTPUT_LVL == ELOG_LVL_VERBOSE #define elog_verbose(tag, ...) \ elog_output(ELOG_LVL_VERBOSE, tag, __FILE__, __FUNCTION__, __LINE__, __VA_ARGS__) #else #define elog_verbose(tag, ...) #endif /* ELOG_OUTPUT_LVL == ELOG_LVL_VERBOSE */ #endif /* ELOG_OUTPUT_ENABLE */ /* all formats index */ typedef enum { ELOG_FMT_LVL = 1 << 0, /**< level */ ELOG_FMT_TAG = 1 << 1, /**< tag */ ELOG_FMT_TIME = 1 << 2, /**< current time */ ELOG_FMT_P_INFO = 1 << 3, /**< process info */ ELOG_FMT_T_INFO = 1 << 4, /**< thread info */ ELOG_FMT_DIR = 1 << 5, /**< file directory and name */ ELOG_FMT_FUNC = 1 << 6, /**< function name */ ELOG_FMT_LINE = 1 << 7, /**< line number */ } ElogFmtIndex; /* macro definition for all formats */ #define ELOG_FMT_ALL (ELOG_FMT_LVL|ELOG_FMT_TAG|ELOG_FMT_TIME|ELOG_FMT_P_INFO|ELOG_FMT_T_INFO| \ ELOG_FMT_DIR|ELOG_FMT_FUNC|ELOG_FMT_LINE) /* output log's tag filter */ typedef struct { uint8_t level; char tag[ELOG_FILTER_TAG_MAX_LEN + 1]; bool tag_use_flag; /**< false : tag is no used true: tag is used */ } ElogTagLvlFilter, *ElogTagLvlFilter_t; /* output log's filter */ typedef struct { uint8_t level; char tag[ELOG_FILTER_TAG_MAX_LEN + 1]; char keyword[ELOG_FILTER_KW_MAX_LEN + 1]; ElogTagLvlFilter tag_lvl[ELOG_FILTER_TAG_LVL_MAX_NUM]; } ElogFilter, *ElogFilter_t; /* easy logger */ typedef struct { ElogFilter filter; size_t enabled_fmt_set[ELOG_LVL_TOTAL_NUM]; bool init_ok; bool output_enabled; bool output_lock_enabled; bool output_is_locked_before_enable; bool output_is_locked_before_disable; #ifdef ELOG_COLOR_ENABLE bool text_color_enabled; #endif }EasyLogger, *EasyLogger_t; /* EasyLogger error code */ typedef enum { ELOG_NO_ERR, } ElogErrCode; /* elog.c */ ElogErrCode elog_init(void); void elog_deinit(void); void elog_start(void); void elog_stop(void); void elog_set_output_enabled(bool enabled); bool elog_get_output_enabled(void); void elog_set_text_color_enabled(bool enabled); bool elog_get_text_color_enabled(void); void elog_set_fmt(uint8_t level, size_t set); void elog_set_filter(uint8_t level, const char *tag, const char *keyword); void elog_set_filter_lvl(uint8_t level); void elog_set_filter_tag(const char *tag); void elog_set_filter_kw(const char *keyword); void elog_set_filter_tag_lvl(const char *tag, uint8_t level); uint8_t elog_get_filter_tag_lvl(const char *tag); void elog_raw(const char *format, ...); void elog_output(uint8_t level, const char *tag, const char *file, const char *func, const long line, const char *format, ...); void elog_output_lock_enabled(bool enabled); extern void (*elog_assert_hook)(const char* expr, const char* func, size_t line); void elog_assert_set_hook(void (*hook)(const char* expr, const char* func, size_t line)); int8_t elog_find_lvl(const char *log); const char *elog_find_tag(const char *log, uint8_t lvl, size_t *tag_len); void elog_hexdump(const char *name, uint8_t width, uint8_t *buf, uint16_t size); #define elog_a(tag, ...) elog_assert(tag, __VA_ARGS__) #define elog_e(tag, ...) elog_error(tag, __VA_ARGS__) #define elog_w(tag, ...) elog_warn(tag, __VA_ARGS__) #define elog_i(tag, ...) elog_info(tag, __VA_ARGS__) #define elog_d(tag, ...) elog_debug(tag, __VA_ARGS__) #define elog_v(tag, ...) elog_verbose(tag, __VA_ARGS__) /** * log API short definition * NOTE: The `LOG_TAG` and `LOG_LVL` must defined before including the when you want to use log_x API. */ #if !defined(LOG_TAG) #define LOG_TAG "NO_TAG" #endif #if !defined(LOG_LVL) #define LOG_LVL ELOG_LVL_VERBOSE #endif #if LOG_LVL >= ELOG_LVL_ASSERT #define log_a(...) elog_a(LOG_TAG, __VA_ARGS__) #else #define log_a(...) ((void)0); #endif #if LOG_LVL >= ELOG_LVL_ERROR #define log_e(...) elog_e(LOG_TAG, __VA_ARGS__) #else #define log_e(...) ((void)0); #endif #if LOG_LVL >= ELOG_LVL_WARN #define log_w(...) elog_w(LOG_TAG, __VA_ARGS__) #else #define log_w(...) ((void)0); #endif #if LOG_LVL >= ELOG_LVL_INFO #define log_i(...) elog_i(LOG_TAG, __VA_ARGS__) #else #define log_i(...) ((void)0); #endif #if LOG_LVL >= ELOG_LVL_DEBUG #define log_d(...) elog_d(LOG_TAG, __VA_ARGS__) #else #define log_d(...) ((void)0); #endif #if LOG_LVL >= ELOG_LVL_VERBOSE #define log_v(...) elog_v(LOG_TAG, __VA_ARGS__) #else #define log_v(...) ((void)0); #endif /* assert API short definition */ #if !defined(assert) #define assert ELOG_ASSERT #endif /* elog_buf.c */ void elog_buf_enabled(bool enabled); void elog_flush(void); /* elog_async.c */ void elog_async_enabled(bool enabled); size_t elog_async_get_log(char *log, size_t size); size_t elog_async_get_line_log(char *log, size_t size); /* elog_utils.c */ size_t elog_strcpy(size_t cur_len, char *dst, const char *src); size_t elog_cpyln(char *line, const char *log, size_t len); void *elog_memcpy(void *dst, const void *src, size_t count); #ifdef __cplusplus } #endif #endif /* __ELOG_H__ */ kylin-video-3.1.3/src/log/elog_file_port.c0000644000175000017500000000745314212620632017104 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2019, Qintl, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Portable interface for EasyLogger's file log pulgin. * Created on: 2019-01-05 */ #include #include #include #include #include #include #include #include #include #define ELOG_FILE_SEM_KEY ((key_t)0x19910612) #ifdef _SEM_SEMUN_UNDEFINED union semun { int val; /* Value for SETVAL */ struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */ unsigned short *array; /* Array for GETALL, SETALL */ struct seminfo *__buf; /* Buffer for IPC_INFO (Linux-specific) */ }; #endif static int semid = -1; static struct sembuf const up = {0, 1, SEM_UNDO}; static struct sembuf const down = {0, -1, SEM_UNDO}; static void lock_init(void); static int lock_open(void); static void lock_deinit(void); /** * EasyLogger flile log pulgin port initialize * * @return result */ ElogErrCode elog_file_port_init(void) { ElogErrCode result = ELOG_NO_ERR; lock_init(); return result; } /** * file log lock */ void inline elog_file_port_lock(void) { semid == -1 ? -1 : semop(semid, (struct sembuf *)&down, 1); } /** * file log unlock */ void inline elog_file_port_unlock(void) { semid == -1 ? -1 : semop(semid, (struct sembuf *)&up, 1); } /** * file log deinit */ void elog_file_port_deinit(void) { lock_deinit(); } /** * initialize the lock */ static void lock_init(void) { int id, rc; union semun arg; struct sembuf sembuf; id = semget(ELOG_FILE_SEM_KEY, 1, IPC_CREAT | IPC_EXCL | 0666); if(likely(id == -1)) { id = lock_open(); if (id == -1) goto __exit; } else { arg.val = 0; rc = semctl(id, 0, SETVAL, arg); if (rc == -1) goto __exit; sembuf.sem_num = 0; sembuf.sem_op = 1; sembuf.sem_flg = 0; rc = semop(id, &sembuf, 1); if (rc == -1) goto __exit; } semid = id; __exit: return ; } /** * gets the lock */ static int lock_open(void) { int id, rc, i; union semun arg; struct semid_ds ds; id = semget(ELOG_FILE_SEM_KEY, 1, 0666); if(unlikely(id == -1)) goto err; arg.buf = &ds; for (i = 0; i < 10; i++) { rc = semctl(id, 0, IPC_STAT, arg); if (unlikely(rc == -1)) goto err; if(ds.sem_otime != 0) break; usleep(10 * 1000); } if (unlikely(ds.sem_otime == 0)) goto err; return id; err: return -1; } /** * deinitialize the lock */ static void lock_deinit(void) { semid = -1; } kylin-video-3.1.3/src/log/elog_cfg.h0000644000175000017500000000543214212620632015660 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: It is the configure head file for this library. * Created on: 2015-07-30 */ #ifndef _ELOG_CFG_H_ #define _ELOG_CFG_H_ /* enable log output. default open this macro */ #define ELOG_OUTPUT_ENABLE /* enable log write file. default open this macro */ #define ELOG_FILE_ENABLE /* enable flush file cache. default open this macro */ #define ELOG_FILE_FLUSH_CAHCE_ENABLE /* setting static output log level */ #define ELOG_OUTPUT_LVL ELOG_LVL_VERBOSE /* enable assert check */ #define ELOG_ASSERT_ENABLE /* buffer size for every line's log */ #define ELOG_LINE_BUF_SIZE 512 /* output line number max length */ #define ELOG_LINE_NUM_MAX_LEN 5 /* output filter's tag max length */ #define ELOG_FILTER_TAG_MAX_LEN 16 /* output filter's keyword max length */ #define ELOG_FILTER_KW_MAX_LEN 16 /* output filter's tag level max num */ #define ELOG_FILTER_TAG_LVL_MAX_NUM 5 /* output newline sign */ #define ELOG_NEWLINE_SIGN "\n" /* enable log color */ #define ELOG_COLOR_ENABLE /* enable asynchronous output mode */ #define ELOG_ASYNC_OUTPUT_ENABLE /* the highest output level for async mode, other level will sync output */ #define ELOG_ASYNC_OUTPUT_LVL ELOG_LVL_DEBUG /* buffer size for asynchronous output mode */ #define ELOG_ASYNC_OUTPUT_BUF_SIZE (ELOG_LINE_BUF_SIZE * 100) /* each asynchronous output's log which must end with newline sign */ //#define ELOG_ASYNC_LINE_OUTPUT /* asynchronous output mode using POSIX pthread implementation */ #define ELOG_ASYNC_OUTPUT_USING_PTHREAD #endif /* _ELOG_CFG_H_ */ kylin-video-3.1.3/src/log/elog_port.c0000644000175000017500000000630014212620632016073 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Portable interface for linux. * Created on: 2015-04-28 */ #include #include #include #include #include #ifdef ELOG_FILE_ENABLE #include #endif static pthread_mutex_t output_lock; /** * EasyLogger port initialize * * @return result */ ElogErrCode elog_port_init(void) { ElogErrCode result = ELOG_NO_ERR; pthread_mutex_init(&output_lock, NULL); #ifdef ELOG_FILE_ENABLE elog_file_init(); #endif return result; } /** * EasyLogger port deinitialize * */ void elog_port_deinit(void) { #ifdef ELOG_FILE_ENABLE elog_file_deinit(); #endif pthread_mutex_destroy(&output_lock); } /** * output log port interface * * @param log output of log * @param size log size */ void elog_port_output(const char *log, size_t size) { /* output to terminal */ printf("%.*s", (int)size, log); #ifdef ELOG_FILE_ENABLE /* write the file */ elog_file_write(log, size); #endif } /** * output lock */ void elog_port_output_lock(void) { pthread_mutex_lock(&output_lock); } /** * output unlock */ void elog_port_output_unlock(void) { pthread_mutex_unlock(&output_lock); } /** * get current time interface * * @return current time */ const char *elog_port_get_time(void) { static char cur_system_time[24] = { 0 }; time_t cur_t; struct tm cur_tm; time(&cur_t); localtime_r(&cur_t, &cur_tm); strftime(cur_system_time, sizeof(cur_system_time), "%Y-%m-%d %T", &cur_tm); return cur_system_time; } /** * get current process name interface * * @return current process name */ const char *elog_port_get_p_info(void) { static char cur_process_info[10] = { 0 }; snprintf(cur_process_info, 10, "pid:%04d", getpid()); return cur_process_info; } /** * get current thread name interface * * @return current thread name */ const char *elog_port_get_t_info(void) { static char cur_thread_info[10] = { 0 }; snprintf(cur_thread_info, 10, "tid:%04ld", pthread_self()); return cur_thread_info; } kylin-video-3.1.3/src/log/elog_file.c0000644000175000017500000001016614212620632016033 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2019, Qintl, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Save log to file. * Created on: 2019-01-05 */ #define LOG_TAG "elog.file" #include #include #include #include #include "elog_file.h" /* initialize OK flag */ static bool init_ok = false; static FILE *fp = NULL; static ElogFileCfg local_cfg; ElogErrCode elog_file_init(void) { ElogErrCode result = ELOG_NO_ERR; ElogFileCfg cfg; if (init_ok) goto __exit; elog_file_port_init(); cfg.name = NULL; cfg.max_size = ELOG_FILE_MAX_SIZE; cfg.max_rotate = ELOG_FILE_MAX_ROTATE; elog_file_config(&cfg); init_ok = true; __exit: return result; } /* * rotate the log file xxx.log.n-1 => xxx.log.n, and xxx.log => xxx.log.0 */ static bool elog_file_rotate(void) { #define SUFFIX_LEN 10 /* mv xxx.log.n-1 => xxx.log.n, and xxx.log => xxx.log.0 */ int n, err = 0; char oldpath[256], newpath[256]; size_t base = strlen(local_cfg.name); bool result = true; FILE *tmp_fp; memcpy(oldpath, local_cfg.name, base); memcpy(newpath, local_cfg.name, base); fclose(fp); for (n = local_cfg.max_rotate - 1; n >= 0; --n) { snprintf(oldpath + base, SUFFIX_LEN, n ? ".%d" : "", n - 1); snprintf(newpath + base, SUFFIX_LEN, ".%d", n); /* remove the old file */ if ((tmp_fp = fopen(newpath , "r")) != NULL) { fclose(tmp_fp); remove(newpath); } /* change the new log file to old file name */ if ((tmp_fp = fopen(oldpath , "r")) != NULL) { fclose(tmp_fp); err = rename(oldpath, newpath); } if (err < 0) { result = false; goto __exit; } } __exit: /* reopen the file */ fp = fopen(local_cfg.name, "a+"); return result; } void elog_file_write(const char *log, size_t size) { size_t file_size = 0; ELOG_ASSERT(init_ok); ELOG_ASSERT(log); elog_file_port_lock(); if(!fp) return; fseek(fp, 0L, SEEK_END); file_size = ftell(fp); if (unlikely(file_size > local_cfg.max_size)) { #if ELOG_FILE_MAX_ROTATE > 0 if (!elog_file_rotate()) { goto __exit; } #else goto __exit; #endif } fwrite(log, size, 1, fp); #ifdef ELOG_FILE_FLUSH_CAHCE_ENABLE fflush(fp); #endif __exit: elog_file_port_unlock(); } void elog_file_deinit(void) { ELOG_ASSERT(init_ok); ElogFileCfg cfg = {NULL, 0, 0}; elog_file_config(&cfg); elog_file_port_deinit(); init_ok = false; } void elog_file_config(ElogFileCfg *cfg) { elog_file_port_lock(); if (fp) { fclose(fp); fp = NULL; } if (cfg != NULL) { local_cfg.name = cfg->name; local_cfg.max_size = cfg->max_size; local_cfg.max_rotate = cfg->max_rotate; if (local_cfg.name != NULL && strlen(local_cfg.name) > 0) fp = fopen(local_cfg.name, "a+"); } elog_file_port_unlock(); } kylin-video-3.1.3/src/log/elog.c0000644000175000017500000006644514212620632015047 0ustar fengfeng/* * This file is part of the EasyLogger Library. * * Copyright (c) 2015-2018, Armink, * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * 'Software'), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * Function: Initialize function and other general function. * Created on: 2015-04-28 */ #define LOG_TAG "elog" #include #include #include #include #if !defined(ELOG_OUTPUT_LVL) #error "Please configure static output log level (in elog_cfg.h)" #endif #if !defined(ELOG_LINE_NUM_MAX_LEN) #error "Please configure output line number max length (in elog_cfg.h)" #endif #if !defined(ELOG_LINE_BUF_SIZE) #error "Please configure buffer size for every line's log (in elog_cfg.h)" #endif #if !defined(ELOG_FILTER_TAG_MAX_LEN) #error "Please configure output filter's tag max length (in elog_cfg.h)" #endif #if !defined(ELOG_FILTER_KW_MAX_LEN) #error "Please configure output filter's keyword max length (in elog_cfg.h)" #endif #if !defined(ELOG_NEWLINE_SIGN) #error "Please configure output newline sign (in elog_cfg.h)" #endif /* output filter's tag level max num */ #ifndef ELOG_FILTER_TAG_LVL_MAX_NUM #define ELOG_FILTER_TAG_LVL_MAX_NUM 4 #endif #ifdef ELOG_COLOR_ENABLE /** * CSI(Control Sequence Introducer/Initiator) sign * more information on https://en.wikipedia.org/wiki/ANSI_escape_code */ #define CSI_START "\033[" #define CSI_END "\033[0m" /* output log front color */ #define F_BLACK "30;" #define F_RED "31;" #define F_GREEN "32;" #define F_YELLOW "33;" #define F_BLUE "34;" #define F_MAGENTA "35;" #define F_CYAN "36;" #define F_WHITE "37;" /* output log background color */ #define B_NULL #define B_BLACK "40;" #define B_RED "41;" #define B_GREEN "42;" #define B_YELLOW "43;" #define B_BLUE "44;" #define B_MAGENTA "45;" #define B_CYAN "46;" #define B_WHITE "47;" /* output log fonts style */ #define S_BOLD "1m" #define S_UNDERLINE "4m" #define S_BLINK "5m" #define S_NORMAL "22m" /* output log default color definition: [front color] + [background color] + [show style] */ #ifndef ELOG_COLOR_ASSERT #define ELOG_COLOR_ASSERT (F_MAGENTA B_NULL S_NORMAL) #endif #ifndef ELOG_COLOR_ERROR #define ELOG_COLOR_ERROR (F_RED B_NULL S_NORMAL) #endif #ifndef ELOG_COLOR_WARN #define ELOG_COLOR_WARN (F_YELLOW B_NULL S_NORMAL) #endif #ifndef ELOG_COLOR_INFO #define ELOG_COLOR_INFO (F_CYAN B_NULL S_NORMAL) #endif #ifndef ELOG_COLOR_DEBUG #define ELOG_COLOR_DEBUG (F_GREEN B_NULL S_NORMAL) #endif #ifndef ELOG_COLOR_VERBOSE #define ELOG_COLOR_VERBOSE (F_BLUE B_NULL S_NORMAL) #endif #endif /* ELOG_COLOR_ENABLE */ /* EasyLogger object */ static EasyLogger elog; /* every line log's buffer */ static char log_buf[ELOG_LINE_BUF_SIZE] = { 0 }; /* level output info */ static const char *level_output_info[] = { [ELOG_LVL_ASSERT] = "A/", [ELOG_LVL_ERROR] = "E/", [ELOG_LVL_WARN] = "W/", [ELOG_LVL_INFO] = "I/", [ELOG_LVL_DEBUG] = "D/", [ELOG_LVL_VERBOSE] = "V/", }; #ifdef ELOG_COLOR_ENABLE /* color output info */ static const char *color_output_info[] = { [ELOG_LVL_ASSERT] = ELOG_COLOR_ASSERT, [ELOG_LVL_ERROR] = ELOG_COLOR_ERROR, [ELOG_LVL_WARN] = ELOG_COLOR_WARN, [ELOG_LVL_INFO] = ELOG_COLOR_INFO, [ELOG_LVL_DEBUG] = ELOG_COLOR_DEBUG, [ELOG_LVL_VERBOSE] = ELOG_COLOR_VERBOSE, }; #endif /* ELOG_COLOR_ENABLE */ static bool get_fmt_enabled(uint8_t level, size_t set); static void elog_set_filter_tag_lvl_default(); /* EasyLogger assert hook */ void (*elog_assert_hook)(const char* expr, const char* func, size_t line); extern void elog_port_output(const char *log, size_t size); extern void elog_port_output_lock(void); extern void elog_port_output_unlock(void); /** * EasyLogger initialize. * * @return result */ ElogErrCode elog_init(void) { extern ElogErrCode elog_port_init(void); extern ElogErrCode elog_async_init(void); ElogErrCode result = ELOG_NO_ERR; if (elog.init_ok == true) { return result; } /* port initialize */ result = elog_port_init(); if (result != ELOG_NO_ERR) { return result; } #ifdef ELOG_ASYNC_OUTPUT_ENABLE result = elog_async_init(); if (result != ELOG_NO_ERR) { return result; } #endif /* enable the output lock */ elog_output_lock_enabled(true); /* output locked status initialize */ elog.output_is_locked_before_enable = false; elog.output_is_locked_before_disable = false; #ifdef ELOG_COLOR_ENABLE /* disable text color by default */ elog_set_text_color_enabled(false); #endif /* set level is ELOG_LVL_VERBOSE */ elog_set_filter_lvl(ELOG_LVL_VERBOSE); /* set tag_level to default val */ elog_set_filter_tag_lvl_default(); elog.init_ok = true; return result; } /** * EasyLogger deinitialize. * */ void elog_deinit(void) { extern ElogErrCode elog_port_deinit(void); extern ElogErrCode elog_async_deinit(void); if (!elog.init_ok) { return ; } #ifdef ELOG_ASYNC_OUTPUT_ENABLE elog_async_deinit(); #endif /* port deinitialize */ elog_port_deinit(); elog.init_ok = false; } /** * EasyLogger start after initialize. */ void elog_start(void) { if (!elog.init_ok) { return ; } /* enable output */ elog_set_output_enabled(true); #if defined(ELOG_ASYNC_OUTPUT_ENABLE) elog_async_enabled(true); #elif defined(ELOG_BUF_OUTPUT_ENABLE) elog_buf_enabled(true); #endif /* show version */ log_i("EasyLogger V%s is initialize success.", ELOG_SW_VERSION); } /** * EasyLogger stop after initialize. */ void elog_stop(void) { if (!elog.init_ok) { return ; } /* disable output */ elog_set_output_enabled(false); #if defined(ELOG_ASYNC_OUTPUT_ENABLE) elog_async_enabled(false); #elif defined(ELOG_BUF_OUTPUT_ENABLE) elog_buf_enabled(false); #endif /* show version */ log_i("EasyLogger V%s is deinitialize success.", ELOG_SW_VERSION); } /** * set output enable or disable * * @param enabled TRUE: enable FALSE: disable */ void elog_set_output_enabled(bool enabled) { ELOG_ASSERT((enabled == false) || (enabled == true)); elog.output_enabled = enabled; } #ifdef ELOG_COLOR_ENABLE /** * set log text color enable or disable * * @param enabled TRUE: enable FALSE:disable */ void elog_set_text_color_enabled(bool enabled) { elog.text_color_enabled = enabled; } /** * get log text color enable status * * @return enable or disable */ bool elog_get_text_color_enabled(void) { return elog.text_color_enabled; } #endif /* ELOG_COLOR_ENABLE */ /** * get output is enable or disable * * @return enable or disable */ bool elog_get_output_enabled(void) { return elog.output_enabled; } /** * set log output format. only enable or disable * * @param level level * @param set format set */ void elog_set_fmt(uint8_t level, size_t set) { ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); elog.enabled_fmt_set[level] = set; } /** * set log filter all parameter * * @param level level * @param tag tag * @param keyword keyword */ void elog_set_filter(uint8_t level, const char *tag, const char *keyword) { ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); elog_set_filter_lvl(level); elog_set_filter_tag(tag); elog_set_filter_kw(keyword); } /** * set log filter's level * * @param level level */ void elog_set_filter_lvl(uint8_t level) { ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); elog.filter.level = level; } /** * set log filter's tag * * @param tag tag */ void elog_set_filter_tag(const char *tag) { strncpy(elog.filter.tag, tag, ELOG_FILTER_TAG_MAX_LEN); } /** * set log filter's keyword * * @param keyword keyword */ void elog_set_filter_kw(const char *keyword) { strncpy(elog.filter.keyword, keyword, ELOG_FILTER_KW_MAX_LEN); } /** * lock output */ void elog_output_lock(void) { if (elog.output_lock_enabled) { elog_port_output_lock(); elog.output_is_locked_before_disable = true; } else { elog.output_is_locked_before_enable = true; } } /** * unlock output */ void elog_output_unlock(void) { if (elog.output_lock_enabled) { elog_port_output_unlock(); elog.output_is_locked_before_disable = false; } else { elog.output_is_locked_before_enable = false; } } /** * set log filter's tag level val to default */ static void elog_set_filter_tag_lvl_default() { uint8_t i = 0; for (i =0; i< ELOG_FILTER_TAG_LVL_MAX_NUM; i++){ memset(elog.filter.tag_lvl[i].tag, '\0', ELOG_FILTER_TAG_MAX_LEN + 1); elog.filter.tag_lvl[i].level = ELOG_FILTER_LVL_SILENT; elog.filter.tag_lvl[i].tag_use_flag = false; } } /** * Set the filter's level by different tag. * The log on this tag which level is less than it will stop output. * * example: * // the example tag log enter silent mode * elog_set_filter_tag_lvl("example", ELOG_FILTER_LVL_SILENT); * // the example tag log which level is less than INFO level will stop output * elog_set_filter_tag_lvl("example", ELOG_LVL_INFO); * // remove example tag's level filter, all level log will resume output * elog_set_filter_tag_lvl("example", ELOG_FILTER_LVL_ALL); * * @param tag log tag * @param level The filter level. When the level is ELOG_FILTER_LVL_SILENT, the log enter silent mode. * When the level is ELOG_FILTER_LVL_ALL, it will remove this tag's level filer. * Then all level log will resume output. * */ void elog_set_filter_tag_lvl(const char *tag, uint8_t level) { ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); ELOG_ASSERT(tag != ((void *)0)); uint8_t i = 0; if (!elog.init_ok) { return; } elog_port_output_lock(); /* find the tag in arr */ for (i =0; i< ELOG_FILTER_TAG_LVL_MAX_NUM; i++){ if (elog.filter.tag_lvl[i].tag_use_flag == true && !strncmp(tag, elog.filter.tag_lvl[i].tag,ELOG_FILTER_TAG_MAX_LEN)){ break; } } if (i < ELOG_FILTER_TAG_LVL_MAX_NUM){ /* find OK */ if (level == ELOG_FILTER_LVL_ALL){ /* remove current tag's level filter when input level is the lowest level */ elog.filter.tag_lvl[i].tag_use_flag = false; memset(elog.filter.tag_lvl[i].tag, '\0', ELOG_FILTER_TAG_MAX_LEN + 1); elog.filter.tag_lvl[i].level = ELOG_FILTER_LVL_SILENT; } else{ elog.filter.tag_lvl[i].level = level; } } else{ /* only add the new tag's level filer when level is not ELOG_FILTER_LVL_ALL */ if (level != ELOG_FILTER_LVL_ALL){ for (i =0; i< ELOG_FILTER_TAG_LVL_MAX_NUM; i++){ if (elog.filter.tag_lvl[i].tag_use_flag == false){ strncpy(elog.filter.tag_lvl[i].tag, tag, ELOG_FILTER_TAG_MAX_LEN); elog.filter.tag_lvl[i].level = level; elog.filter.tag_lvl[i].tag_use_flag = true; break; } } } } elog_output_unlock(); } /** * get the level on tag's level filer * * @param tag tag * * @return It will return the lowest level when tag was not found. * Other level will return when tag was found. */ uint8_t elog_get_filter_tag_lvl(const char *tag) { ELOG_ASSERT(tag != ((void *)0)); uint8_t i = 0; uint8_t level = ELOG_FILTER_LVL_ALL; if (!elog.init_ok) { return level; } elog_port_output_lock(); /* find the tag in arr */ for (i =0; i< ELOG_FILTER_TAG_LVL_MAX_NUM; i++){ if (elog.filter.tag_lvl[i].tag_use_flag == true && !strncmp(tag, elog.filter.tag_lvl[i].tag,ELOG_FILTER_TAG_MAX_LEN)){ level = elog.filter.tag_lvl[i].level; break; } } elog_output_unlock(); return level; } /** * output RAW format log * * @param format output format * @param ... args */ void elog_raw(const char *format, ...) { va_list args; size_t log_len = 0; int fmt_result; /* check output enabled */ if (!elog.output_enabled) { return; } /* args point to the first variable parameter */ va_start(args, format); /* lock output */ elog_output_lock(); /* package log data to buffer */ fmt_result = vsnprintf(log_buf, ELOG_LINE_BUF_SIZE, format, args); /* output converted log */ if ((fmt_result > -1) && (fmt_result <= ELOG_LINE_BUF_SIZE)) { log_len = fmt_result; } else { log_len = ELOG_LINE_BUF_SIZE; } /* output log */ #if defined(ELOG_ASYNC_OUTPUT_ENABLE) extern void elog_async_output(uint8_t level, const char *log, size_t size); /* raw log will using assert level */ elog_async_output(ELOG_LVL_ASSERT, log_buf, log_len); #elif defined(ELOG_BUF_OUTPUT_ENABLE) extern void elog_buf_output(const char *log, size_t size); elog_buf_output(log_buf, log_len); #else elog_port_output(log_buf, log_len); #endif /* unlock output */ elog_output_unlock(); va_end(args); } /** * output the log * * @param level level * @param tag tag * @param file file name * @param func function name * @param line line number * @param format output format * @param ... args * */ void elog_output(uint8_t level, const char *tag, const char *file, const char *func, const long line, const char *format, ...) { extern const char *elog_port_get_time(void); extern const char *elog_port_get_p_info(void); extern const char *elog_port_get_t_info(void); size_t tag_len = strlen(tag), log_len = 0, newline_len = strlen(ELOG_NEWLINE_SIGN); char line_num[ELOG_LINE_NUM_MAX_LEN + 1] = { 0 }; char tag_sapce[ELOG_FILTER_TAG_MAX_LEN / 2 + 1] = { 0 }; va_list args; int fmt_result; ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); /* check output enabled */ if (!elog.output_enabled) { return; } /* level filter */ if (level > elog.filter.level || level > elog_get_filter_tag_lvl(tag)) { return; } else if (!strstr(tag, elog.filter.tag)) { /* tag filter */ return; } /* args point to the first variable parameter */ va_start(args, format); /* lock output */ elog_output_lock(); #ifdef ELOG_COLOR_ENABLE /* add CSI start sign and color info */ if (elog.text_color_enabled) { log_len += elog_strcpy(log_len, log_buf + log_len, CSI_START); log_len += elog_strcpy(log_len, log_buf + log_len, color_output_info[level]); } #endif /* package level info */ if (get_fmt_enabled(level, ELOG_FMT_LVL)) { log_len += elog_strcpy(log_len, log_buf + log_len, level_output_info[level]); } /* package tag info */ if (get_fmt_enabled(level, ELOG_FMT_TAG)) { log_len += elog_strcpy(log_len, log_buf + log_len, tag); /* if the tag length is less than 50% ELOG_FILTER_TAG_MAX_LEN, then fill space */ if (tag_len <= ELOG_FILTER_TAG_MAX_LEN / 2) { memset(tag_sapce, ' ', ELOG_FILTER_TAG_MAX_LEN / 2 - tag_len); log_len += elog_strcpy(log_len, log_buf + log_len, tag_sapce); } log_len += elog_strcpy(log_len, log_buf + log_len, " "); } /* package time, process and thread info */ if (get_fmt_enabled(level, ELOG_FMT_TIME | ELOG_FMT_P_INFO | ELOG_FMT_T_INFO)) { log_len += elog_strcpy(log_len, log_buf + log_len, "["); /* package time info */ if (get_fmt_enabled(level, ELOG_FMT_TIME)) { log_len += elog_strcpy(log_len, log_buf + log_len, elog_port_get_time()); if (get_fmt_enabled(level, ELOG_FMT_P_INFO | ELOG_FMT_T_INFO)) { log_len += elog_strcpy(log_len, log_buf + log_len, " "); } } /* package process info */ if (get_fmt_enabled(level, ELOG_FMT_P_INFO)) { log_len += elog_strcpy(log_len, log_buf + log_len, elog_port_get_p_info()); if (get_fmt_enabled(level, ELOG_FMT_T_INFO)) { log_len += elog_strcpy(log_len, log_buf + log_len, " "); } } /* package thread info */ if (get_fmt_enabled(level, ELOG_FMT_T_INFO)) { log_len += elog_strcpy(log_len, log_buf + log_len, elog_port_get_t_info()); } log_len += elog_strcpy(log_len, log_buf + log_len, "] "); } /* package file directory and name, function name and line number info */ if (get_fmt_enabled(level, ELOG_FMT_DIR | ELOG_FMT_FUNC | ELOG_FMT_LINE)) { log_len += elog_strcpy(log_len, log_buf + log_len, "("); /* package time info */ if (get_fmt_enabled(level, ELOG_FMT_DIR)) { log_len += elog_strcpy(log_len, log_buf + log_len, file); if (get_fmt_enabled(level, ELOG_FMT_FUNC)) { log_len += elog_strcpy(log_len, log_buf + log_len, " "); } else if (get_fmt_enabled(level, ELOG_FMT_LINE)) { log_len += elog_strcpy(log_len, log_buf + log_len, ":"); } } /* package process info */ if (get_fmt_enabled(level, ELOG_FMT_FUNC)) { log_len += elog_strcpy(log_len, log_buf + log_len, func); if (get_fmt_enabled(level, ELOG_FMT_LINE)) { log_len += elog_strcpy(log_len, log_buf + log_len, ":"); } } /* package thread info */ if (get_fmt_enabled(level, ELOG_FMT_LINE)) { snprintf(line_num, ELOG_LINE_NUM_MAX_LEN, "%ld", line); log_len += elog_strcpy(log_len, log_buf + log_len, line_num); } log_len += elog_strcpy(log_len, log_buf + log_len, ")"); } /* package other log data to buffer. '\0' must be added in the end by vsnprintf. */ fmt_result = vsnprintf(log_buf + log_len, ELOG_LINE_BUF_SIZE - log_len, format, args); va_end(args); /* calculate log length */ if ((log_len + fmt_result <= ELOG_LINE_BUF_SIZE) && (fmt_result > -1)) { log_len += fmt_result; } else { /* using max length */ log_len = ELOG_LINE_BUF_SIZE; } /* overflow check and reserve some space for CSI end sign and newline sign */ #ifdef ELOG_COLOR_ENABLE if (log_len + (sizeof(CSI_END) - 1) + newline_len > ELOG_LINE_BUF_SIZE) { /* using max length */ log_len = ELOG_LINE_BUF_SIZE; /* reserve some space for CSI end sign */ log_len -= (sizeof(CSI_END) - 1); #else if (log_len + newline_len > ELOG_LINE_BUF_SIZE) { /* using max length */ log_len = ELOG_LINE_BUF_SIZE; #endif /* ELOG_COLOR_ENABLE */ /* reserve some space for newline sign */ log_len -= newline_len; } /* keyword filter */ if (elog.filter.keyword[0] != '\0') { /* add string end sign */ log_buf[log_len] = '\0'; /* find the keyword */ if (!strstr(log_buf, elog.filter.keyword)) { /* unlock output */ elog_output_unlock(); return; } } #ifdef ELOG_COLOR_ENABLE /* add CSI end sign */ if (elog.text_color_enabled) { log_len += elog_strcpy(log_len, log_buf + log_len, CSI_END); } #endif /* package newline sign */ log_len += elog_strcpy(log_len, log_buf + log_len, ELOG_NEWLINE_SIGN); /* output log */ #if defined(ELOG_ASYNC_OUTPUT_ENABLE) extern void elog_async_output(uint8_t level, const char *log, size_t size); elog_async_output(level, log_buf, log_len); #elif defined(ELOG_BUF_OUTPUT_ENABLE) extern void elog_buf_output(const char *log, size_t size); elog_buf_output(log_buf, log_len); #else elog_port_output(log_buf, log_len); #endif /* unlock output */ elog_output_unlock(); } /** * get format enabled * * @param level level * @param set format set * * @return enable or disable */ static bool get_fmt_enabled(uint8_t level, size_t set) { ELOG_ASSERT(level <= ELOG_LVL_VERBOSE); if (elog.enabled_fmt_set[level] & set) { return true; } else { return false; } } /** * enable or disable logger output lock * @note disable this lock is not recommended except you want output system exception log * * @param enabled true: enable false: disable */ void elog_output_lock_enabled(bool enabled) { elog.output_lock_enabled = enabled; /* it will re-lock or re-unlock before output lock enable */ if (elog.output_lock_enabled) { if (!elog.output_is_locked_before_disable && elog.output_is_locked_before_enable) { /* the output lock is unlocked before disable, and the lock will unlocking after enable */ elog_port_output_lock(); } else if (elog.output_is_locked_before_disable && !elog.output_is_locked_before_enable) { /* the output lock is locked before disable, and the lock will locking after enable */ elog_port_output_unlock(); } } } /** * Set a hook function to EasyLogger assert. It will run when the expression is false. * * @param hook the hook function */ void elog_assert_set_hook(void (*hook)(const char* expr, const char* func, size_t line)) { elog_assert_hook = hook; } /** * find the log level * @note make sure the log level is output on each format * * @param log log buffer * * @return log level, found failed will return -1 */ int8_t elog_find_lvl(const char *log) { ELOG_ASSERT(log); /* make sure the log level is output on each format */ ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_ASSERT] & ELOG_FMT_LVL); ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_ERROR] & ELOG_FMT_LVL); ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_WARN] & ELOG_FMT_LVL); ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_INFO] & ELOG_FMT_LVL); ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_DEBUG] & ELOG_FMT_LVL); ELOG_ASSERT(elog.enabled_fmt_set[ELOG_LVL_VERBOSE] & ELOG_FMT_LVL); #ifdef ELOG_COLOR_ENABLE uint8_t i; size_t csi_start_len = strlen(CSI_START); for(i = 0; i < ELOG_LVL_TOTAL_NUM; i ++) { if (!strncmp(color_output_info[i], log + csi_start_len, strlen(color_output_info[i]))) { return i; } } /* found failed */ return -1; #else switch (log[0]) { case 'A': return ELOG_LVL_ASSERT; case 'E': return ELOG_LVL_ERROR; case 'W': return ELOG_LVL_WARN; case 'I': return ELOG_LVL_INFO; case 'D': return ELOG_LVL_DEBUG; case 'V': return ELOG_LVL_VERBOSE; default: return -1; } #endif } /** * find the log tag * @note make sure the log tag is output on each format * @note the tag don't have space in it * * @param log log buffer * @param lvl log level, you can get it by @see elog_find_lvl * @param tag_len found tag length * * @return log tag, found failed will return NULL */ const char *elog_find_tag(const char *log, uint8_t lvl, size_t *tag_len) { const char *tag = NULL, *tag_end = NULL; ELOG_ASSERT(log); ELOG_ASSERT(tag_len); ELOG_ASSERT(lvl < ELOG_LVL_TOTAL_NUM); /* make sure the log tag is output on each format */ ELOG_ASSERT(elog.enabled_fmt_set[lvl] & ELOG_FMT_TAG); #ifdef ELOG_COLOR_ENABLE tag = log + strlen(CSI_START) + strlen(color_output_info[lvl]) + strlen(level_output_info[lvl]); #else tag = log + strlen(level_output_info[lvl]); #endif /* find the first space after tag */ if ((tag_end = memchr(tag, ' ', ELOG_FILTER_TAG_MAX_LEN)) != NULL) { *tag_len = tag_end - tag; } else { tag = NULL; } return tag; } /** * dump the hex format data to log * * @param name name for hex object, it will show on log header * @param width hex number for every line, such as: 16, 32 * @param buf hex buffer * @param size buffer size */ void elog_hexdump(const char *name, uint8_t width, uint8_t *buf, uint16_t size) { #define __is_print(ch) ((unsigned int)((ch) - ' ') < 127u - ' ') uint16_t i, j; uint16_t log_len = 0; char dump_string[8] = {0}; int fmt_result; if (!elog.output_enabled) { return; } /* level filter */ if (ELOG_LVL_DEBUG > elog.filter.level) { return; } else if (!strstr(name, elog.filter.tag)) { /* tag filter */ return; } /* lock output */ elog_output_lock(); for (i = 0; i < size; i += width) { /* package header */ fmt_result = snprintf(log_buf, ELOG_LINE_BUF_SIZE, "D/HEX %s: %04X-%04X: ", name, i, i + width - 1); /* calculate log length */ if ((fmt_result > -1) && (fmt_result <= ELOG_LINE_BUF_SIZE)) { log_len = fmt_result; } else { log_len = ELOG_LINE_BUF_SIZE; } /* dump hex */ for (j = 0; j < width; j++) { if (i + j < size) { snprintf(dump_string, sizeof(dump_string), "%02X ", buf[i + j]); } else { strncpy(dump_string, " ", sizeof(dump_string)); } log_len += elog_strcpy(log_len, log_buf + log_len, dump_string); if ((j + 1) % 8 == 0) { log_len += elog_strcpy(log_len, log_buf + log_len, " "); } } log_len += elog_strcpy(log_len, log_buf + log_len, " "); /* dump char for hex */ for (j = 0; j < width; j++) { if (i + j < size) { snprintf(dump_string, sizeof(dump_string), "%c", __is_print(buf[i + j]) ? buf[i + j] : '.'); log_len += elog_strcpy(log_len, log_buf + log_len, dump_string); } } /* overflow check and reserve some space for newline sign */ if (log_len + strlen(ELOG_NEWLINE_SIGN) > ELOG_LINE_BUF_SIZE) { log_len = ELOG_LINE_BUF_SIZE - strlen(ELOG_NEWLINE_SIGN); } /* package newline sign */ log_len += elog_strcpy(log_len, log_buf + log_len, ELOG_NEWLINE_SIGN); /* do log output */ #if defined(ELOG_ASYNC_OUTPUT_ENABLE) extern void elog_async_output(uint8_t level, const char *log, size_t size); elog_async_output(ELOG_LVL_DEBUG, log_buf, log_len); #elif defined(ELOG_BUF_OUTPUT_ENABLE) extern void elog_buf_output(const char *log, size_t size); elog_buf_output(log_buf, log_len); #else elog_port_output(log_buf, log_len); #endif } /* unlock output */ elog_output_unlock(); } kylin-video-3.1.3/src/minimodeshade.cpp0000644000175000017500000001024514214075177016503 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "minimodeshade.h" #include #include #include #include #include "minimodebutton.h" #include "global/global.h" using namespace Global; MiniModeShade::MiniModeShade(QWidget *parent) : FilletWidget(parent) { setColor(QColor(0,0,0,0)); initLayout(); initConnect(); // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } }); // 修改播放暂停图标 connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [this](Mpv::PlayState state){ if(state == Mpv::Playing) btnPlayPause->resetName("suspend-mini"); else btnPlayPause->resetName("play-mini"); }); } // 主题变化修改按钮样式 void MiniModeShade::setBlackTheme() { btnClose->setBlackTheme(); btnNormal->setBlackTheme(); btnPlayPause->setBlackTheme(); setColor(QColor(0,0,0,0)); return; } void MiniModeShade::setLightTheme() { btnClose->setLightTheme(); btnNormal->setLightTheme(); btnPlayPause->setLightTheme(); setColor(QColor(0,0,0,0)); return; } void MiniModeShade::initLayout() { QVBoxLayout *vb = new QVBoxLayout(this); vb->setContentsMargins(0, 0, 0, 0); QHBoxLayout *hb_top = new QHBoxLayout; hb_top->setContentsMargins(7, 7, 7, 7); QHBoxLayout *hb_bottom = new QHBoxLayout; hb_bottom->setContentsMargins(30, 30, 30, 30); hb_bottom->setSpacing(30); btnClose = new MiniModeButton("close-mini", QSize(24,24), QSize(11,11)); hb_top->addStretch(); hb_top->addWidget(btnClose); hb_bottom->addStretch(); btnPlayPause = new MiniModeButton("suspend-mini", QSize(40,40), QSize(17,17)); hb_bottom->addWidget(btnPlayPause); btnNormal = new MiniModeButton("showmode-mini", QSize(40,40), QSize(17,17)); hb_bottom->addWidget(btnNormal); hb_bottom->addStretch(); vb->addLayout(hb_top); vb->addStretch(); vb->addLayout(hb_bottom); btnPlayPause->setCursor(Qt::PointingHandCursor); btnNormal->setCursor(Qt::PointingHandCursor); btnClose->setCursor(Qt::PointingHandCursor); btnPlayPause->hide(); btnNormal->hide(); btnClose->hide(); } void MiniModeShade::initConnect() { connect(btnPlayPause, &QPushButton::clicked, [this](){emit sigPlayPause();}); connect(btnNormal, &QPushButton::clicked, [this](){emit sigShowNormal();}); connect(btnClose, &QPushButton::clicked, [this](){emit sigClose();}); } void MiniModeShade::enterEvent(QEvent *e) { btnPlayPause->show(); btnNormal->show(); btnClose->show(); } void MiniModeShade::leaveEvent(QEvent *e) { btnPlayPause->hide(); btnNormal->hide(); btnClose->hide(); } kylin-video-3.1.3/src/timeslider.h0000644000175000017500000000272714214075177015511 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef TIMESLIDER_H #define TIMESLIDER_H #include #include "sliderbar.h" class QTimer; //class TimeSlider : public QSlider class TimeSlider : public SliderBar { Q_OBJECT public: TimeSlider(QWidget *parent = nullptr); signals: void sigShowPreview(int); void sigHidePreview(); private: bool m_isPressed, m_isPreviewShow; int m_mousePos; QTimer* m_timerPreview; protected: #if 0 void mousePressEvent(QMouseEvent *e) override; void mouseReleaseEvent(QMouseEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; void leaveEvent(QEvent *e) override; void enterEvent(QEvent *e) override; #endif }; #endif // TIMESLIDER_H kylin-video-3.1.3/src/translations/0000755000175000017500000000000014212620632015676 5ustar fengfengkylin-video-3.1.3/src/translations/generate_translations_pm.sh0000755000175000017500000000015614212620632023326 0ustar fengfeng#! /bin/bash ts_file_list=(`ls translations/*.ts`) for ts in "${ts_file_list[@]}" do lrelease "${ts}" done kylin-video-3.1.3/src/translations/kylin-video_zh_CN.ts0000644000175000017500000017334414212620632021575 0ustar fengfeng AboutDialog Dialog 设置对话框 About 关于 <html><head/><body><p align="center">kylin video</p></body></html> <html><head/><body><p align="center">麒麟影音</p></body></html> <html><head/><body><p align="center">version: 0.0.1</p></body></html> <html><head/><body><p align="center">版本: 0.0.1</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> Kylin video is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Kylin video supports almost all audio and video formats and has powerful decoding ability.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 麒麟影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。麒麟视频支持几乎所有的音频和视频格式,具有强大的解码能力。</p></body></html> service and support: support@kylinos.cn 服务与支持: support@kylinos.cn version: 版本: service and support: 服务与支持团队: Video Player About 影音 关于 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans Syloti Nagri'; font-size:13pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;"> Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Kylin video supports almost all audio and video formats and has powerful decoding ability.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。麒麟视频支持几乎所有的音频和视频格式,具有强大的解码能力。</p></body></html> <html><head/><body><p align="center">Video Player</p></body></html> <html><head/><body><p align="center">影音</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;"> Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Kylin video supports almost all audio and video formats and has powerful decoding ability.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;"> 影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。麒麟视频支持几乎所有的音频和视频格式,具有强大的解码能力。</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;">Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Kylin video supports almost all audio and video formats and has powerful decoding ability.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;">影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。麒麟视频支持几乎所有的音频和视频格式,具有强大的解码能力。</span></p></body></html> Video Player 影音 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;">Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Video Player supports almost all audio and video formats and has powerful decoding ability.</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Noto Sans CJK SC'; font-size:11pt;">影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。影音支持几乎所有的音频和视频格式,具有强大的解码能力。</span></p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Video Player supports almost all audio and video formats and has powerful decoding ability.</p></body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">影音是一款界面美观、互动性好的前置播放器。它是用Qt5开发的,使用MPV作为播放引擎。影音支持几乎所有的音频和视频格式,具有强大的解码能力。</p></body></html> Service & Support: 服务与支持: <html><head/><body><p align="center">version: 3.1.1</p></body></html> <html><head/><body><p align="center">版本: 0.0.1</p></body></html> {3.1.1<?} ContralBar Form pos================ 2.0X 1.5X 1.25X 1.0X 0.75X 0.5X Screen shot 截图 Add mark 添加书签 Next 下一首 Previous 上一首 Play 播放 Volume 音量 Speed 倍速 Tools 工具箱 Full screen 全屏 Pause 暂停 Exit full screen 退出全屏 GlobalSetup Pictures 图片 HomePage open file 打开文件 open dir 打开文件夹 Video Player 影音播放器 KRightClickMenu Open 打开 Open &File... 打开文件 &URL... &打开URL... ToTop 置顶 Order 播放顺序 One Loop 单个循环 Sequence 顺序播放 List loop 列表循环 Random 随机播放 Frame 画面 Default frame 默认 Full frame 满屏 forward rotate 顺时针旋转90° Along rotate 顺时针旋转90° backward rotate 逆时针旋转90° Inverse rotate 逆时针旋转90° horizontal flip 水平翻转 Horizontally flip 水平翻转 vertical flip 垂直翻转 Vertically flip 垂直翻转 Audio 声音 AudioTrack 音轨 AudioChannel 声道 Stereo 立体声 Left channel 左声道 Right channel 右声道 Audio set 声音设置 Subtitle 字幕 Choose a file 选择一个文件 Subtitles 字幕 All files 所有文件 Load subtitle 载入字幕 Subtitle select 字幕选择 No subtitle 无字幕 Subtitle set 字幕设置 volume up 升高音量 volume down 降低音量 forward 快进 backward 快退 setup 播放器设置 More 更多 Theme 主题 Follow system 跟随系统 Light theme 浅色主题 Black theme 深色主题 About 关于 Privacy 隐私 Clear mark 清理痕迹 No mark 无痕播放 Match subtitle 匹配字幕 open file 打开文件 Open &Directory... &打开文件夹 open dir 打开文件夹 to top 置顶 Show profile 显示简介 Search subtitle 搜索字幕 Play 播放 Play/Pause 播放/暂停 Volume up 音量+ Volume down 音量- Play forward 快进 Play backward 快退 Player set 设置 Media info 媒体信息 4:3 16:9 restore frame 画面还原 Video Player Choose a file 影音 选择一个文件 Default sub load 手动加载字幕 KylinUI::MessageBox Cancle 取消 Ok 确认 ListLoopMenu One Loop 单个循环 List loop 列表循环 Random 随机播放 Sequence 顺序播放 MainWidget Video Player 影音 open file 打开文件 open dir 打开文件夹 Choose a file 选择一个文件 Multimedia 媒体 Video 视频 Audio 音频 Playlists 播放列表 All files 所有文件 Choose a directory 选择一个文件夹 Form Video Player 影音 Video Player Choose a file 影音 选择一个文件 Video Player Choose a directory 影音 选择一个文件夹 video player 影音 MarkListItem Video Player 影音 File not exist! 文件不存在! MediaInfoDialog Dialog 设置对话框 media info 媒体信息 media name: 媒体文件: file type: 文件类型: file size: 文件大小: file duration: 文件时长: file path: 文件路径: ok 确认 MpvCore File size 文件大小 Date created 创建日期 Media length 时长 brightness : %1 亮度 : %1 subtitle delay : %1s 字幕延迟 : %1 Horizontal Flip: 水平翻转: close 关闭 open 打开 Vertical Flip: 垂直翻转: File: 文件: Video: 视频: Resolution: 分辨率: Estimated FPS: 估算 FPS: Bitrate: 比特率: Audio: 音频: Sample Rate: 采样率: Channels: 声道: Audio/video synchronization: 音视频同步差: volume : %1 音量 : %1 speed : %1x 速度 : %1x Mute 静音 Cancel Mute 取消静音 Playing 播放 Paused 暂停 subtitle : 字幕 : File 文件 Title 标题 Video (x%0) 视频 (x%0) Video Output 视频输出 Resolution 分辨率 FPS A/V Sync 音视频同步 Bitrate 码率 %0 kbps Audio (x%0) 音频 (x%0) Audio Output 音频输出 Sample Rate 采样率 Channels 声道 Chapters Metadata 元数据 fps: Your network is slow or stuck, please wait a bit restore frame 画面还原 ScreenShot OK 截图成功 ScreenShot Failed 截图失败,文件夹无写权限 ScreenShot Failed, folder has no write permission. 截图失败,文件夹无写入权限。 Stereo 立体声 Left Channel 左声道 Right Channel 右声道 Pictures 图片 ScreenShot Failed, folder has no write permission or folder not exit. 截图失败,文件夹无写入权限或文件夹不存在。 Add mark ok 添加书签 Add mark error 添加书签失败 PlayListItem File not exist! 文件不存在! PlayListItemMenu Remove selected 移除选中项 Remove invalid 移除无效文件 Clear list 清空播放列表 Open folder 打开所在文件夹 Sort 排序 Sort by name 按名称排序 Sort by type 按类别排序 PlayListWidget Video 视频 Video Player 影音 Form Tips 提示 File not exist! 文件不存在! Are you sure you want to clear the list? 确定清空列表? Add file 添加文件 Play order 播放顺序 Clear list 清空列表 kylin-video-990 影音 Switch views 切换视图 Are you sure you want to clear the list? The file being played will be stopped. 确定清空列表 The file being played will be stopped. 正在播放的文件将会被关闭。 Marks 书签 Load file error! 文件加载失败! Preview view 缩略图视图 List view 列表视图 One loop 单个循环 Sequential 顺序播放 List loop 列表循环 Random 随机播放 Please add file to list ~ 请添加文件到列表~ PreviewWidget Form QObject Model name SetUpDialog Dialog 设置对话框 Set up 设置 Cancel 取消 OK 确定 System 系统设置 Play 播放设置 ScreenShot 截图设置 Subtitle 字幕设置 Volume 声音设置 Codec 解码器设置 Shortcut 快捷键设置 Video Player Set up 影音 设置 Setup 设置 Audio 音频设置 SetupCodec Demux 解复用器 Video decoder 视频解码器 Audio decoder 音频解码器 Form Video output 视频输出驱动 Decode threads 解码线程 default 默认 no auto 自动 SetupPlay Set fullscreen when open video. 打开视频时自动全屏 Clear play list on exit. 退出时清空播放列表 Automatically plays from where the file was last stopped. 自动从文件上次停止的位置播放 Automatically find associated files to play 自动查找关联的文件播放 Form Set fullscreen when open video 打开视频时自动全屏 Clear play list on exit 退出时清空播放列表 Automatically plays from where the file was last stopped 自动从文件上次停止的位置播放 SetupScreenshot Only save to clipboard. 仅保存到剪切板 Save to file. 保存为文件 save path 保存路径 browse 浏览 save type 保存类型 Screenshot according to the current screen size. 按当前显示的画面尺寸截图 Choose a directory 选择一个文件夹 Form Only save to clipboard 仅保存到剪切板 Save to file 保存为文件 Screenshot according to the current screen size 按当前显示的画面尺寸截图 Pictures 图片 Video Player Choose a directory 影音 选择一个文件夹 SetupShortcut file 文件 play 播放 image 图像 volume 声音 subtitle 字幕 other 其他 open file 打开文件 open dir 打开文件夹 prev file 上一个文件 next file 下一个文件 play/pause 播放/暂停 speed up 加速播放 speed down 减速播放 speed normal 正常速度播放 forword 快进 backword 快退 forward 30s 30秒快进 backword 30s 30秒快退 insert bookmark 插入书签 ib notes 插入与注释书签 fullscreen 全屏 mini mode mini模式 to top 置顶 screenshot 截图 cut 截取 light up 增大亮度 light down 减小亮度 forward rotate 顺时针旋转90° backward rotate 逆时针旋转90° horizontal flip 水平翻转 vertical flip 垂直翻转 image boost 画质增强 volume up 升高音量 volume down 降低音量 mute 静音 audio next 切换音轨 default channel 默认声道 left channel 左声道 right channel 右声道 sub load 手动加载字幕 sub earlier 字幕提前0.5秒 sub later 字幕推迟0.5秒 sub up 字幕上移 sub down 字幕下移 sub next 字幕切换 play list 播放列表 setup 播放器设置 Form audio 声音 sub 字幕 SetupSubtitle Sub loading 字幕载入 Auto loading subtitles with the same name. 自动载入同名字幕 Auto loading other subtitles in the same folder 自动载入其他字幕 Sub Path 指定路径 browse 浏览 Font Style 字体样式 Family 字体选择 Size 字体大小 Choose a directory 选择一个文件夹 Form Auto loading subtitles with the same name 自动载入同名字幕 Video Player Choose a directory 影音 选择一个文件夹 SetupSystem Window 窗口 Minimize to system tray icon 最小化到系统托盘图标 Pause video playback when minimized 最小化时暂停视频播放 Multiple run 多重运行 Allow multiple Video Player to run simultaneously 允许同时运行多个影音 Form After sleep/sleep/lock screen and wake up, keep playing state 睡眠、休眠、锁屏唤醒之后保持播放状态 Allow multiple Kylin Video to run simultaneously 允许同时运行多个影音 SetupVolume Sound card selection 声卡选择 Volume contral 音量调节 Global volume 全局音量 Default volume standardization 默认音量标准化 Form Output driver 输出驱动 ShortCutItem Hotkey conflict 热键冲突 ShortCutSetting open file 打开文件 open dir 打开文件夹 prev file 上一个文件 next file 下一个文件 play/pause 播放/暂停 speed up 加速播放 speed down 减速播放 speed normal 正常速度播放 forword 快进 backword 快退 forward 30s 30秒快进 backword 30s 30秒快退 insert bookmark 插入书签 ib notes 插入与注释书签 fullscreen 全屏 mini mode mini模式 to top 置顶 screenshot 截图 cut 截取 light up 增大亮度 light down 减小亮度 forward rotate 顺时针旋转90° backward rotate 逆时针旋转90° horizontal flip 水平翻转 vertical flip 垂直翻转 image boost 画质增强 volume up 升高音量 volume down 降低音量 mute 静音 audio next 切换音轨 default channel 默认声道 left channel 左声道 right channel 右声道 sub load 手动加载字幕 sub earlier 字幕提前0.5秒 sub later 字幕推迟0.5秒 sub up 字幕上移 sub down 字幕下移 sub next 字幕切换 play list 播放列表 setup 播放器设置 exit help documentation SystemTrayIcon Video Player 影音 Quit 退出 TitleMenu Upload to cloud 上传至云端 About 关于 Quit 退出 Theme 主题 Follow system 跟随系统 Light theme 浅色主题 Black theme 深色主题 Privacy 隐私 Clear mark 清理痕迹 No mark 无痕播放 Help 帮助 Check update 检查更新 Advice and feedback 意见反馈 Official website 官方网站 Setup 设置 System setup 系统设置 Play setup 播放设置 Screenshot setup 截图设置 Subtitle setup 字幕设置 Audio setup 音频设置 Decoder setup 解码器设置 Shortcut setup 快捷键设置 Manual 帮助手册 TitleWidget Video Player 影音 Restore 还原 Maximize 最大化 Menu 菜单 Mini mode 迷你模式 Minimize 最小化 Close 关闭 TopWindow Video Player 影音 WaylandDialog Dialog 设置对话框 kylin-video-3.1.3/src/translations/kylin-video_zh_CN.qm0000644000175000017500000005214314212620632021555 0ustar fengfengG#GDH HH'MJ6HJZ'J)MM5 O + vPFEIxS#%VY(YGZ5Hj[ % A[K`d\\&^[j6!ep7/tp:v1y:yy2yA( +II,I7aA%# !# ###F#'#DM#I#Jp"6?+-Œ¬¬2¬@+&+&.+&<1pDg)sR O6$[)}#F*U(, ?-THZ4 yp8Zw@ < ͪ-ss/H3QHA y 5 C 77A"55 4_XuEBPzW/iW=[  5 Cq+\ُ8#4]i D9kB9rr4,rrBtu1u1wul3=.*8I'zJ%WWwW'WJ/Q0Q?qIG "%t@96ѣu6 Q8F8[|FcDMzhɴl(l.bl(l)O+ld*P,-G"-;G4GC*{`{`5-{`CO"g<55'S C#C%?C;EtU  *to$g1g@ʶIn&_._<F5H ` dG Xv^9?  = M s3 :  1< bkD fU$ g< ~ g` g`E ~ z apH8 ӜmE 1t S /~@ /~5Y /~C} Em7r F~3 F~B G24g G2B GKT4 GKTB an3 anA[ sB& |@F 4  ( 5 2 @ (U  3 B5 E = Eq E E1a E? 6$x U$= C ^7 a2 a@P w(- w-R 2R @ +{    C^:D ͢ ͢Y E @H 3ͥE i i/< i=, n B nV ~ f .k>9 Gq HL H- H;#-Y+#dNZ)@i\ l kP5Ñ@E͢/͢>t/=1o3oQդ;0a01a>f0f?yiT(22!ͣ'ͣ+s&T`0e`>iJa<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Noto Sans CJK SC'; font-size:11pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">_qf/Nk>uLb0NR`'Y}vRMnde>Vh0[f/u(Qt5_Sv Ou(MPVO\N:de>_d0_qe/cQNNb@g vTƘh<_ Qwg _:Y'vxR0</p></body></html>

Video Player is a front player with beautiful interface and good interaction. It is developed with Qt5 and uses MPV as the playback engine. Video Player supports almost all audio and video formats and has powerful decoding ability.

 AboutDialogr<html><head/><body><p align="center">_q</p></body></html>C

Video Player

 AboutDialog<html><head/><body><p align="center">rHg,: 0.0.1</p></body></html> {3.1.1<?}E

version: 3.1.1

 AboutDialog n[hFDialog AboutDialogg RNe/c: Service & Support:  AboutDialog_q Video Player AboutDialog _q QsNVideo Player About AboutDialogg RNe/cV: service and support:  AboutDialog2g RNe/c: support@kylinos.cn'service and support: support@kylinos.cn AboutDialogrHg,:  version:  AboutDialogmRNf{~Add mark ContralBarb*V Screen shot ContralBar _qde>Vh Video PlayerHomePage bS_eNY9open dirHomePagebS_eN open fileHomePageb@g eN All filesKRightClickMenuzeeˏl90 Along rotateKRightClickMenuXAudioKRightClickMenuXn Audio setKRightClickMenuXS AudioChannelKRightClickMenuh AudioTrackKRightClickMenu؋ Default frameKRightClickMenuu;bFrameKRightClickMenun\O Full frameKRightClickMenul4^slHorizontally flipKRightClickMenueeˏl90Inverse rotateKRightClickMenu]XS Left channelKRightClickMenuRh_s List loopKRightClickMenu}Qe[W^U Load subtitleKRightClickMenuS9M[W^UMatch subtitleKRightClickMenuZOSO`o Media infoKRightClickMenue[W^U No subtitleKRightClickMenuSUN*_sOne LoopKRightClickMenu &bS_eNY9Open &Directory...KRightClickMenu&bS_eN... Open &File...KRightClickMenude>z^OrderKRightClickMenude>PlayKRightClickMenu de>/fP\ Play/PauseKRightClickMenug:de>RandomKRightClickMenuSXS Right channelKRightClickMenud}"[W^USearch subtitleKRightClickMenuz^de>SequenceKRightClickMenuf>y:{N Show profileKRightClickMenuzOSXStereoKRightClickMenu[W^USubtitleKRightClickMenu[W^U bSubtitle selectKRightClickMenu[W^Un Subtitle setKRightClickMenu[W^U SubtitlesKRightClickMenunvToTopKRightClickMenuWvlVertically flipKRightClickMenu_q bNN*eNVideo Player Choose a fileKRightClickMenu_backwardKRightClickMenueeˏl90backward rotateKRightClickMenu_forwardKRightClickMenuzeeˏl90forward rotateKRightClickMenul4^slhorizontal flipKRightClickMenu bS_eNY9open dirKRightClickMenubS_eN open fileKRightClickMenuu;bS restore frameKRightClickMenu de>VhnsetupKRightClickMenunvto topKRightClickMenuWvl vertical flipKRightClickMenuMON volume downKRightClickMenuSGؗ volume upKRightClickMenuSmCancleKylinUI::MessageBoxxnOkKylinUI::MessageBoxRh_s List loop ListLoopMenuSUN*_sOne Loop ListLoopMenug:de>Random ListLoopMenuz^de>Sequence ListLoopMenuAudio MainWidgetForm MainWidgetZOS Multimedia MainWidgetƘVideo MainWidget _qde>Vh Video Player MainWidget_q bNN*eNY9Video Player Choose a directory MainWidget_q bNN*eNVideo Player Choose a file MainWidget bS_eNY9open dir MainWidgetbS_eN open file MainWidget_q video player MainWidget eNN [XW(File not exist! MarkListItem_q Video Player MarkListItem n[hFDialogMediaInfoDialogZOSO`o media infoMediaInfoDialogxnokMediaInfoDialog%0 kbpsMpvCore ƘT keA/V SyncMpvCoremRNf{~ Add mark okMpvCore (x%0) Audio (x%0)MpvCore󘑏Q Audio OutputMpvCoreƘT ke]:Audio/video synchronization:MpvCore:Audio:MpvCorexsBitrateMpvCorekrys:Bitrate:MpvCoreSmY Cancel MuteMpvCoreXSChannelsMpvCoreXS: Channels:MpvCoreChaptersMpvCoreR^eg Date createdMpvCoreFPSMpvCoreeNFileMpvCoreeNY'\ File sizeMpvCoreeN:File:MpvCore l4^sl: Horizontal Flip: MpvCore]XS Left ChannelMpvCoree Media lengthMpvCoreQCepcnMetadataMpvCoreYMuteMpvCorefP\PausedMpvCoreVrGPicturesMpvCorede>PlayingMpvCoreRs ResolutionMpvCoreRs: Resolution:MpvCoreSXS Right ChannelMpvCoreh7s Sample RateMpvCoreh7s: Sample Rate:MpvCore*b*VY1% eNY9eQQegCPbeNY9N [XW(0EScreenShot Failed, folder has no write permission or folder not exit.MpvCoreb*VbR ScreenShot OKMpvCorezOSXStereoMpvCorehTitleMpvCore Wvl: Vertical Flip: MpvCoreƘ (x%0) Video (x%0)MpvCoreƘQ Video OutputMpvCoreƘ:Video:MpvCoreN^ : %1brightness : %1MpvCoreQscloseMpvCorefps:MpvCorebS_openMpvCoreu;bS restore frameMpvCore^ : %1x speed : %1xMpvCore [W^U :  subtitle : MpvCore[W^U^ : %1subtitle delay : %1sMpvCore : %1 volume : %1MpvCore eNN [XW(File not exist! PlayListItem nzzde>Rh Clear listPlayListItemMenubS_b@W(eNY9 Open folderPlayListItemMenu ydeeHeNRemove invalidPlayListItemMenu yd N-yRemove selectedPlayListItemMenuc^SortPlayListItemMenu c T yc^ Sort by namePlayListItemMenu c |{R+c^ Sort by typePlayListItemMenumReNAdd filePlayListWidgetxn[nzzRh(Are you sure you want to clear the list?PlayListWidgetnzzRh Clear listPlayListWidget eNN [XW(File not exist!PlayListWidgeteNR}Y1%Load file error!PlayListWidgetNf{~MarksPlayListWidgetde>z^ Play orderPlayListWidgetRcbV Switch viewsPlayListWidgetkcW(de>veN\OQs0&The file being played will be stopped.PlayListWidgetƘVideoPlayListWidget_q Video PlayerPlayListWidget󘑋nAudio SetUpDialogSmCancel SetUpDialog xVhnCodec SetUpDialog n[hFDialog SetUpDialogxn[OK SetUpDialogde>nPlay SetUpDialogb*Vn ScreenShot SetUpDialognSetup SetUpDialog _cw.nShortcut SetUpDialog[W^UnSubtitle SetUpDialog|~ߋnSystem SetUpDialog _q nVideo Player Set up SetUpDialog 󘑉xVh Audio decoder SetupCodecY u(VhDemux SetupCodec ƘxVh Video decoder SetupCodecRgb~QsTveNde>+Automatically find associated files to play SetupPlayRNeNN k!P\kbvOMnde>8Automatically plays from where the file was last stopped SetupPlayQenzzde>RhClear play list on exit SetupPlaybS_ƘeRQh\OSet fullscreen when open video SetupPlayNO[XR0RjRgOnly save to clipboardSetupScreenshotVrGPicturesSetupScreenshot O[XN:eN Save to fileSetupScreenshotc _SRMf>y:vu;b\:[b*V/Screenshot according to the current screen sizeSetupScreenshot_q bNN*eNY9Video Player Choose a directorySetupScreenshotmObrowseSetupScreenshotO[X_ save pathSetupScreenshotO[X|{W save typeSetupScreenshotRcbh audio next SetupShortcuteeˏl90backward rotate SetupShortcut_backword SetupShortcut 30y_ backword 30s SetupShortcut؋XSdefault channel SetupShortcuteNfile SetupShortcut 30y_ forward 30s SetupShortcutzeeˏl90forward rotate SetupShortcut_forword SetupShortcutQh\O fullscreen SetupShortcutl4^slhorizontal flip SetupShortcutVPimage SetupShortcut]XS left channel SetupShortcutQ\N^ light down SetupShortcutXY'N^light up SetupShortcut minij!_ mini mode SetupShortcutYmute SetupShortcut N NN*eN next file SetupShortcut bS_eNY9open dir SetupShortcutbS_eN open file SetupShortcutQvNother SetupShortcutde>play SetupShortcutde>Rh play list SetupShortcut de>/fP\ play/pause SetupShortcut N NN*eN prev file SetupShortcutSXS right channel SetupShortcutb*V screenshot SetupShortcut de>Vhnsetup SetupShortcutQϐde> speed down SetupShortcut kc^8^de> speed normal SetupShortcutRde>speed up SetupShortcut[W^UN ysub down SetupShortcut[W^UcRM0.5y sub earlier SetupShortcut[W^Uc0.5y sub later SetupShortcut bKRR}[W^Usub load SetupShortcut[W^URcbsub next SetupShortcut[W^UN ysub up SetupShortcut[W^Usubtitle SetupShortcutnvto top SetupShortcutWvl vertical flip SetupShortcutXvolume SetupShortcutMON volume down SetupShortcutSGؗ volume up SetupShortcutR}QeQvN[W^U/Auto loading other subtitles in the same folder SetupSubtitleR}QeT T [W^U)Auto loading subtitles with the same name SetupSubtitle[WOS bFamily SetupSubtitle[WOSh7_ Font Style SetupSubtitle[WOSY'\Size SetupSubtitlec[_Sub Path SetupSubtitle[W^U}Qe Sub loading SetupSubtitle_q bNN*eNY9Video Player Choose a directory SetupSubtitlemObrowse SetupSubtitle$waw 0Ow 0\OU$NKTOcde>r`=After sleep/sleep/lock screen and wake up, keep playing state SetupSystemQAT eЈLYN*_q0Allow multiple Kylin Video to run simultaneously SetupSystemg\SR0|~bXvVhMinimize to system tray icon SetupSystemY͏ЈL Multiple run SetupSystemg\SefP\Ƙde>#Pause video playback when minimized SetupSystemzSWindow SetupSystem؋hQSDefault volume standardization SetupVolumeQh\@ Global volume SetupVolumeQqR Output driver SetupVolumeόVolume contral SetupVolumep.QzHotkey conflict ShortCutItemRcbh audio nextShortCutSettingeeˏl90backward rotateShortCutSetting_backwordShortCutSetting 30y_ backword 30sShortCutSettingb*ScutShortCutSetting؋XSdefault channelShortCutSetting 30y_ forward 30sShortCutSettingzeeˏl90forward rotateShortCutSetting_forwordShortCutSettingQh\O fullscreenShortCutSettingl4^slhorizontal flipShortCutSettingcQeNlNf{~ib notesShortCutSettingu;(X_: image boostShortCutSettingcQeNf{~insert bookmarkShortCutSetting]XS left channelShortCutSettingQ\N^ light downShortCutSettingXY'N^light upShortCutSetting minij!_ mini modeShortCutSettingYmuteShortCutSetting N NN*eN next fileShortCutSetting bS_eNY9open dirShortCutSettingbS_eN open fileShortCutSettingde>Rh play listShortCutSetting de>/fP\ play/pauseShortCutSetting N NN*eN prev fileShortCutSettingSXS right channelShortCutSettingb*V screenshotShortCutSetting de>VhnsetupShortCutSettingQϐde> speed downShortCutSetting kc^8^de> speed normalShortCutSettingRde>speed upShortCutSetting[W^UN ysub downShortCutSetting[W^UcRM0.5y sub earlierShortCutSetting[W^Uc0.5y sub laterShortCutSetting bKRR}[W^Usub loadShortCutSetting[W^URcbsub nextShortCutSetting[W^UN ysub upShortCutSettingnvto topShortCutSettingWvl vertical flipShortCutSettingMON volume downShortCutSettingSGؗ volume upShortCutSettingQQuitSystemTrayIcon_q Video PlayerSystemTrayIconQsNAbout TitleMenuaS͙Advice and feedback TitleMenu󘑋n Audio setup TitleMenumrN; Black theme TitleMenuhgfe Check update TitleMenuntuՏ Clear mark TitleMenu xVhn Decoder setup TitleMenuߖ|~ Follow system TitleMenu^.RHelp TitleMenumErN; Light theme TitleMenu^.RbKQManual TitleMenueude>No mark TitleMenu[eQzOfficial website TitleMenude>n Play setup TitleMenuyPrivacy TitleMenuQQuit TitleMenub*VnScreenshot setup TitleMenunSetup TitleMenu _cw.nShortcut setup TitleMenu[W^UnSubtitle setup TitleMenu|~ߋn System setup TitleMenuN;Theme TitleMenu N O NzUpload to cloud TitleMenuQsClose TitleWidgetgY'SMaximize TitleWidgetSUMenu TitleWidgetO`j!_ Mini mode TitleWidgetg\SMinimize TitleWidgetSRestore TitleWidget_q Video Player TitleWidget_q Video Player TopWindow n[hFDialog WaylandDialogkylin-video-3.1.3/src/dbusadapter.cpp0000644000175000017500000000566414214075177016204 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "dbusadapter.h" #include #include "global/globalsignal.h" DbusAdapter::DbusAdapter(QObject *parent) : QObject(parent) { m_playState = Mpv::Idle; m_currentFile = ""; connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [&](Mpv::PlayState state){ m_playState = state; if(m_playState < 0) m_currentFile = ""; }); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ m_currentFile = fi.file_path; }); QDBusConnection::sessionBus().unregisterService("org.mpris.MediaPlayer2.KylinVideo"); QDBusConnection::sessionBus().registerService("org.mpris.MediaPlayer2.KylinVideo"); QDBusConnection::sessionBus().registerObject("/org/mpris/MediaPlayer2", "org.mpris.MediaPlayer2.Player", this, QDBusConnection::ExportNonScriptableSlots); } void DbusAdapter::Stop() const { g_user_signal->stop(); // 手动停止之后需要显示默认界面 g_user_signal->showStopFrame(); } void DbusAdapter::Next() const { // g_user_signal->stop(); // g_user_signal->play(); g_user_signal->playNext(true); } void DbusAdapter::KvPlayPause() const { if(m_playState == Mpv::Paused) g_user_signal->play(); else if(m_playState == Mpv::Playing) g_user_signal->pause(); } void DbusAdapter::Previous() const { g_user_signal->playPrev(true); } void DbusAdapter::AddFile(QString file) const { g_user_signal->addFiles(QStringList() << file); } void DbusAdapter::VolumeUp() const { g_user_signal->setVolumeUp(); } void DbusAdapter::VolumeDown() const { g_user_signal->setVolumeDown(); } void DbusAdapter::FullScreen() const { g_user_signal->fullScreen(); } void DbusAdapter::LoopMode() const { g_user_signal->changePlayOrder(); } void DbusAdapter::Exit() const { g_user_signal->exitApp(); } /** * 返回播放状态 * @return: * -1 :停止 * 0 :暂停 * 1 :播放 */ int DbusAdapter::PlayState() { if(m_playState == Mpv::Playing) return 1; else if(m_playState == Mpv::Paused) return 0; else return -1; } QString DbusAdapter::CurrentFile() { return m_currentFile; } kylin-video-3.1.3/src/kaction.cpp0000644000175000017500000000452314214075177015327 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "kaction.h" KAction::KAction ( QObject * parent, const char * name, bool autoadd ) : QAction(parent) { //qDebug("KAction::KAction: name: '%s'", name); setObjectName(name); if (autoadd) addActionToParent(); } KAction::KAction( QObject * parent, bool autoadd ) : QAction(parent) { //qDebug("KAction::KAction: QObject, bool"); if (autoadd) addActionToParent(); } KAction::KAction(const QString & text, QKeySequence accel, QObject * parent, const char * name, bool autoadd ) : QAction(parent) { setObjectName(name); setText(text); setShortcut(accel); if (autoadd) addActionToParent(); } KAction::KAction(QKeySequence accel, QObject * parent, const char * name, bool autoadd ) : QAction(parent) { setObjectName(name); setShortcut(accel); if (autoadd) addActionToParent(); } KAction::~KAction() { } void KAction::addShortcut(QKeySequence key) { setShortcuts( shortcuts() << key); } void KAction::addActionToParent() { if (parent()) { if (parent()->inherits("QWidget")) { QWidget *w = static_cast (parent()); w->addAction(this); } } } void KAction::change(const QIcon & icon, const QString & text) { setIcon( icon ); change(text); } void KAction::change(const QString & text ) { setText( text ); QString accel_text = shortcut().toString(); QString s = text; s.replace("&",""); if (!accel_text.isEmpty()) { setToolTip(s + " ("+ accel_text +")"); setIconText(s); } } kylin-video-3.1.3/src/topwindow.h0000644000175000017500000000670414214075177015401 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef TOPWINDOW_H #define TOPWINDOW_H #include #include "core/mpvtypes.h" #define NormalModeSize QSize(960, 540) #define MiniModeSize QSize(400, 225) class HomePage; class TitleMenu; class ContralBar; class TitleWidget; class SetUpDialog; class AboutDialog; class MiniModeShade; class PlayListWidget; class EventPassWidget; class KRightClickMenu; class QStackedWidget; class TopWindow : public QDialog { Q_OBJECT public: TopWindow(QWidget *parent = nullptr); public slots: void showMax(); void showMin(); void showTitleMenu(); void showNormalMode(); void showMiniMode(); void slotShowFullScreen(bool full); void slotPlayStateChange(Mpv::PlayState state); void slotPlayWidgetClicked(); void hideAll(bool hide); void setHide(); void openHelpDoc(); void resetLayout(); signals: void openFiles(QStringList files); void sigClose(); void sigQuit(); void sigMaxSize(); void sigMinSize(); private: bool m_isMove, m_isMiniMode, m_isMaxWindow, m_isFullScreen, m_canHideAll; // 能否隐藏,如果鼠标再标题上或者在控制栏上则不能隐藏. QRect m_normalRect; QPoint m_pressPos; QWidget *m_parentWidget; HomePage *m_homePage; QWidget *m_playPage; QStackedWidget *m_stackedWidget; TitleWidget *m_titleWidget; // 标题栏 TitleMenu *m_titleMenu; // 标题栏菜单 ContralBar *m_contralBar; // 控制栏 KRightClickMenu *m_rightClickMenu; // 右键菜单 PlayListWidget *m_playListWidget; // 播放列表界面 SetUpDialog *m_setupDialog; // 设置界面 AboutDialog *m_aboutDialog; // 关于界面 MiniModeShade *m_miniModeShade; // mini 模式遮罩 EventPassWidget *m_eventPassWidget; // 播放鼠标事件穿透界面 private: void initGlobalSig(); void initTitleWidget(); void initContralBar(); void initStackedWidget(); void initMiniModeShade(); void initPlayListWidget(); protected: void moveEvent(QMoveEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; void mousePressEvent(QMouseEvent *e) override; void mouseReleaseEvent(QMouseEvent *e) override; void resizeEvent(QResizeEvent *e) override; void showEvent(QShowEvent *event) override; void hideEvent(QHideEvent *event) override; void leaveEvent(QEvent *event) override; void enterEvent(QEvent *event) override; void keyPressEvent(QKeyEvent *event) override; // 以下实现文件拖入播放 void dragEnterEvent(QDragEnterEvent *event) override; void dropEvent(QDropEvent *event) override; }; #endif // TOPWINDOW_H kylin-video-3.1.3/src/resource/0000755000175000017500000000000014214075177015016 5ustar fengfengkylin-video-3.1.3/src/resource/ico/0000755000175000017500000000000014212620632015556 5ustar fengfengkylin-video-3.1.3/src/resource/ico/lastsong-h.png0000644000175000017500000000105014212620632020337 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX MJA'*AD2B\;qĕ ť`k*!+Ie=mJ':`lʽRv ]#%&0:35 ޕbWgzrKv{zsW&%:$G@pUeU.m u`iLgFhE.17[VmKO=ߤ`Yw.Ӝ0 U&1nc5m`bs#D1wcuvӦ3xdnELEo#uTA,"[4>ox. `E6-lr@lʮ5rO6t{Q64ⷕ)yMǫ:㶚1#_x* (tW7_T޹b}ac{%BkE 9> FmҘ.ɭns%m@=X,IC]wD_ ?=/:k>;E0گچT TtC} AtsMˊ&o!"jrz^sM˃ NUY 9WN= ׂ?H̠IENDB`kylin-video-3.1.3/src/resource/ico/0.75X-h.png0000644000175000017500000000255614212620632017242 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX mUEƽښeVVbV |HK)kUCH}DF"B&!`eQH{62,2vM̝Yf枹gwysΝsfAh@cNxcypWR_WQ;Xcuq3G+ 0؍HE< !LumaqIu8%~/?: .8+ wH?ÛH4΂l-x3k/n KLףO]o_N0LsZ@o'!-3áp9\v- %tE3`LK٬1g>5ϻi0#[ktC~\O U4a^$ `v$cv俀i,f( x:kjOr ll,4#8"+ec@D'NU(,, ՁLzmZa) TN[` ,xA[x\hO+:k1fv=ԫ4}Ǡlz-r[-FjXw"u ZހъY.`_|إ>ןPOF?d\ZK(=p| C@ ֭鵢{r#! ߱.cK>fKQ~pO=䴞S]>ƣTxŰIN,?.c.ΚԾ O4-pRnPgUb~q^hj8HH^ q6gZ;tΓS5+<(C%}wBFH Bw`5赽CNV(ܞe15 Tyџ.ctC]^_lH5cx +Z[ď860vy ^|(gC+{S%/=Z^?3W(yGdڨExUPk?0&Ihұ c jiJ|Ec] ƃ'gTwj H}-&<^6C])"1#!nu}5 gۣ1D0i/ ߹G9ms"4ϸQg8!F]c3ИSva>IENDB`kylin-video-3.1.3/src/resource/ico/suspend-mini-h.png0000644000175000017500000000054114212620632021124 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX Q 0 C}=#GQW`1Lĕ_]cl6v9|Um_uyMo”0cr S8wE5{eHZ|f}Wg~AW KE%Ճ"`Ad Ne(eHrw |P.ː岯?S?f}xpC%IENDB`kylin-video-3.1.3/src/resource/ico/list-home.png0000644000175000017500000007337414212620632020203 0ustar fengfengPNG  IHDRsRGBDeXIfMM*i@IDATx $Wy&{DnoT*mI%"c >H`lh؍{|fř9[3Fc иm%v0H Imڷ{E}/32_WzqUD޸{Uet3pa:jF+jUQYN3}vrNqZRM+VVjʮXQ^J*۾.H6>[nC߻cI늭I迓hj$Qˍ#k V(R2|_m$f}un8Io7SŮZn0L0ՠt½Q'^7'*6NM }^bBݰbU߲s\џ)-&9)e~>dN7 턀L٭׬a}1\,~>jnbE{%3rvZIS{y\Gm @kU4-v2Y,1ܑQj{MÇU~o_1̙[aՔv5Jsř+K7[񇷸dvvf([WW] 4x @uεeÇ_(Ur?QeQN\g_I{8G}/G0nqnw-0Vc="7 ) {7?7{QO{~?d8v nZizlz&w8]4HďĎ-͌DM-=MkC-"}ss[=6օ2.mL-oznL$DBMCH 4M &DE`]y{ݍPOHmC5 ̈(Hb84׶b/ק>m3qîoGI,$gb~v$481ߍ@#_j}ơ]w,*5ۘq԰6?7t^E_8i<Sz؂a0&,X`9'BEarşlP~׈“5BۨୁZu ]t0SOxG'q۝葕RAփHIb0= $n 4(nxvhmXwV`_p(q~T5} Z-"u$ZJ06/v])@'hk7+lT4Şc8Z^^3𜬠U]RC6/|nFRo F33Nخ1#`<2icAT)p>U8k.q>[ qä2>C;)oO_el XSQjcX-~ԛ|tƞ$6S6麞=h; cXdUuQ*V-#VG8zqTc$֎fwF`J65Q9u9;ʄJ-K.Wt4vVRHmN8ʸ'YXfWlPyoUnXS݆ij~ҥniw]8#ZnȲԟ֜iG%1B'0IIsHI⮇$1v}9 5/~.e ޔ5uzŖJ}VbE9: ,x+,L)7)US1_8HX5:1f=s:tыNR1ێeVIpKU:*%@Ƴ®m8֨@iuHhsUE]7';|4^8ОeV a}%zX6ˤ{0޶ߩ19u^ ChiQ$YyԏM &SJ$2>Yci}k,J'_YL]eޤ$_`2*2vAҪa+I7TϠW 1qЬ͋yN6I\ǰ`Zo,9znkcֆ<ڹb>agR+gEZ sTzJYSͪU>9*6viVͲo}:ix].+Hέ̣fqvB]UTT5IJ a`҇.ޥH@[ID$-O),ǫsS)Oʲ6RʸIȢ{av.kJm7o;*)Ul)`jh 0h+Ԏ$hR6/xƌbQiUjf9qo7`S\?N+ڋ+1Al0t:.z5Ětw޾<}W6} PJZk6:]$0LAҵJi`'RvHU׵J/b/aX0Ff%6Ld{nZ,y3/k0nӦmr?d,ΑgbE5D>J=6hukpQs_o.~ a.x}c%2E,Vڝ3S0uWVde#;{)rV4XY~NQ2.13smR kKifZbAwoPT5"c\rKhW% b%$ 1"ţz)=+DJs՜!xqovYa#}3& uLfː_3+;?lRIٵ" |Ϩ'HUjZ|=;L '.AER5bUQMdB.x'n./IVW92lȻWC=u_}\2 i#U]g̹g_MKrHxW(s .MbJnj qRl{v4FBF]Ir!]aYNEUv6TMؚ1GW?id I-U MC!KB3np*3VJW77_"4Q2^ض-e\b[_ 7bQӑ&EVj>|qs|br9I+U0XhöjMǖwn HV]Φe"]c޹5MNk+8OBR 51e{Q2.ڴ=EdsIv,%~HHDHD o@lt櫙pIZjaHۊ,r20,"6ozK||;?ƈF=6 (e2:=YAW.p]UHaݻjs^mHm'E+?$Kk9o Db p xdQ.Lv.λ#-x2ț,SBr30LTW* ,:A/z$uSEh[m)0)وCa-c ^9Z) RrwǩFcz<qURAju4U: [QXnfPia*' C_Qpb0 eGFE ( GsGjQ;+qӸض#a`++07MJj>d SO#$IimNv3q:1i/.*"RË~iۻs?MM}4$26 m@ ]<.GSB0Ë** PdJPAIFוֹT44];j)n i2}9\3C: `0ApE=ĩ"?)_㼗{)aW,>uGw(?r>"#}sYvvԻyHFц Ds ;YKD!X&1^~æHxwA.K,QWhwE/+IS8 N?"GO-tCľB[EΙʔmd{0 to`$V 4{<8RD<A@^ҋ9OIot`>p+3sن|)6ȸ@#Kjþy5/㭧Nm6/;]4>Xz zs^?;lAm1g8aW4{/&AMqkN*gBR ^8V[;ý3FR|/#E+vVg>u zaO!N6NwS6-yl.20)iL0Սw;BBPgޅ.ࣝdBBܘ,Dz:;  A#}  ;]e K[NJ$Ȩ3qSmV "N<3;}`bUw/ VMDm h1)je5'&MLt2@ K}El途AKu} [*YRHS}*)X6]# Ʃs`D BK4_352,S.EP<`a$.K6 N +InmQYywQG:YGQL$twAV#YCw}ࣅ,B>sd 7(B:8IrXdX,''~¿"> y0>jI'BߤڝT3;{ƺ+*1 PP(vZo.븨,]Wߓ9C;>4!,܍iU'P* ŬiTZ!Ifzgtg-MOjMO9e s^I: !d7>9ld+%kr+O#n$MT9xTMy@":׆a_}ؗ Ũ^~̦EMcHC. 9;JuЉQ:e=3$F^f+P襨>P$|RT#ꌘcjӪ%ϫBRX/b8S z`u&i"X-CU '9of{N*jЉ! l+鉩&,%+}.ނpI̎:I RW15*G]qQxow/GB^rZrM%nU۞.3 s dpオ)=' #NPĻNx~C,K>2<$ 6Ę:P .ڤ5\|К-d`2;ŧp9S-t;dTKaVD/`VRIv)׿wCZSfLQi^ҝ. ?$S u 0Tt|%fͱ̙Ԁ-DuP)nf*N*}4(l3g "uLK>3"LM6I$3r&o2fIKi4c eZB<}a3sEf|iS?0+Xڎ[z i&3k F#VTTgR uaj©…xjR)LU/I9$#EX+# ̨6)ɰ~H'p'tC;FzsІvɒ5gl!# aUUZ}2Z ze?p$Fv2e^:O{$#N#m6DpJx:Kf>H'I 2w`f{J[0^2( y-wʹ&B%١iERxʷsv,{,0+9۸GW ,:!t\n=ɼI1U%u-Bd* 1ZkGϨϦNyI2MzGu0 ڻ.]U& :Gr#eʹL?o\4tL IQaxV9uנV@e1Q'2hGQF!e;ܯY"FzEjA'%-Nb\T)K>#Q7//g:_08H°ņfړ|Hcqܠ VT&$? UN#on pECz'McZL+Qtw`hwܹwG=N8@ժW^Ж4ւ_욥$0ꛟ{T>䕽Vo7d^E^+q 2"wP6svMec*[˧ nfmU;=NkXd0'EDSB9؆jVHvei),>FfLJWWXw"wbq1M 'Gt$pUtCХGJ~?+^w#Rg7^gw5nߋ}|Gx.w8$ ~D׎$@MDv k_b8zB=6v;`)p4/#EI /Ve4Q)CAoizfw ?Ku{Ρ2;86MSF}~y=R] ̨CuC(}Ù,֨v8 Jw--iʑIh4@ըwnFOèzֲ([!O¨k8ӹ1fպc, }p;?w=o!B켕yvls3CWzGHڷ(S%IK4p΅XQyk&X1*V_Fqز" jDf[&w~=p'vN R -/gM<,I^]q4Ө<lG۳_Wd[n2,\3Zң >R"+s׽(]9FJJXV=GgIEQ:t PKq?x܁g(_nJ{ >R7V߉$dWm[~/~Kbh8.o\zaiLC볘ܤ$KQn.RuQT ^nq23Lfd1x *fV'XJyG`1S+f~?IF~!;yn>?{w|tPvl}3yswtV+ ϽtjS.YgZ~~cv /6W@x$o:@Gv#C5F8$Tњ'z[{_о"N6c#DI_}&'fUVI.{g$9駦P8k|KQ O;C_]jwKI+y)~/.7y0=uf|艢ltKtZbtvֳҝ;7]NyUitH $Fyf8o6n.,:CȬ&{YoaѠ߭{i} k3?*}I]E.bP?wo>{ofڔcg?={^bYH_si#[z,p0h/\NRH)4dB@Dxf EWT./];bs1>^EY KLx+xkT?NYwVFCKP׾Ա}{OY̽^xC]yrl#Ϣ5(:[+}V:\vWv/Vo$Ф?MtEJ=t W "'O>fR#'1==],Ǐyw`?>~;}ձfjzO^ 6i<@WKCsy Y& mrd7GS l͘OWB CY,S+\8у^tXrUWԷٴQ.y F0>`)w)u|Z@7t\.G#`/*E,$ʌW힣g.,);y{W/9aV*Ef/_XAg=*-* `LB1VkshO/}{}Eg"^O|^ԩ&1u~x]B;<?nEW8HYc`jdL %ms*[a9-QbhJ`\nکv74&%LۅuxT~'DSK?!ƃG2nA3 MԹ>{>N>v+`wNϹ:[wb_0@0wc;3ҸXiaLy ;TWAՅd݈GBPh-" H/2xC`|qⵗWӗzhm׿Ϋ[=7Z<[%Ы"iӵL.9" L b\ADBGtn*x !II' +B2+3'?Hswh':0msǨmrc./YEB'!&Z*ei)UFk-/lC<̊|Wӏ<ɑcJ7Ldh~0$nil6uVY=+eN(/">"  o& xeeP=&+R7TUTfLOԤkˤ7ȧ7Iaּ&6!t~-Lvܖ6Xf0חc Ր"N` ݿqSq#SGv3fqfp'`B 9i\1!t6j\:8z; ۊ)lZãUVV4JEe4:@P^MMGrkszӽ op ^wτ7 IEqs7o:6Wɐ$Dznn?Ͱ,}q;r 'mtϋaؖ{38#-y! P7єJ`>ƐSQe05h3 wQiq_˾4RY.!{OB%>q+ .԰)U꤂XCSt1k1_+Q2O6]+|5<=oަN[G>d^zGoz5ϫrh^VMs fkTķFvp%zQ|Ǯ;IXQ XkY#@p{i2>VIWj+ gX͸ywϼv80i#?/ٛ}?S,3nyOx>˚_G>Gҍ=3/ͫ?/}Ŋ ǪDf&J3gd8vmEa%o'Td&Eku솨՚S'Z<̩̊Mw!9h:dګox34qkc:칿WW;=;S VǀmoyW3VJg彘iѾ&ey`o 6/tb(~>.^M+ދD1)'ȘuiTD6G%Y><M,3f6 fM``: !{]䃽7)jf>2J#DAH0t/= Hӡ}|5GG:qZ)BjG<詳EƊq5ޑ#l$ bĺUJB!\7Da_/29(05Cb5Rg`CTPJ1_ijaVOdҏSHJ/j'+\&/ M$|0(RJ 8]o=p?Xo;G*Y}[<G;"|`:MD2HhpG&/!7ˉB, ܍Bɍ{JTN۠(**+ĢǰX,}ޓzNEo1\[+1)AohRcPEư!᳖֔(SQ2Bщ_abHq5Ei>HV{$R g*ܻ[>.{` ڎcލ_L-3Mo=W%B9)xޛ:߼P>(L!D3C'|D|Ngk' R>I1嵷QiVH!*jJDEe}E,H$.aGXF*5?H_T l* v=WxPu:+~8hVhW~}nI2^љI7f.xY4)tAd ["%y!k(W $$(X*V*اFQXɘ^RCͪf*,5e$ˆt(9BX5Sek5kjfqJjwQQd&Z1SToX6Bʳ)`\74EN 4FJ?k i緿ww9ՄC 7^w7v6f2dy xay=_O/4sWG=oHH5x͐QWQdCՊ}c5U+Pְ+VCLTT:&w;gHy.SǬVЋ "ٳv=!30)4WzDmhCH ϵF%C7m7Ƌn3ȹ|!Ȯ]#[l:rxf׾Uhab"ÿRo_Ͽŭ`ީs#YN_n_l>VXsvNy/#뮫uy eǎ_[\k6ZIDATCq u  @:cY ٽGDRz)M<-`)FUĎSa^Q쑢2Kx,\z ^&陪SZ6 f x 5$owM:yhSX\\rڊ1@$܉M˰ga\_=چGDMx$~PJ̑tW>֛_xڃ; 9/p~ /eKKCLo=tEoT$|?nc ^C&C1vPH EQ,_a 7HikT5 b tŚXoXy[r-{mK_ \BRįR4ɶpfE}%ݧu=/}]tpZa USy}Ѱo^]idTOy~s1g] (D)%,uK&}R83Ua'{ ||[|$/& uS@C_h+DBk[p05S[%aA*VVt))d,.:ك"Ocщi8t\Wk"P_0GNXx { Eu>fPs?$I?=wn\UK}8wpH]iXQ/`[dQt㇗i3TYJ@>df.B~ĎQǟ{{;3]eZ¦DAz^:9S[3>yiWgIs`pA&Eށy0a "X L` eX<0$ YCϫx|VMWaRUc@lHL:^j˻;2. 7߆>\tD[ X Iab^A$9uNrT!$AC2P6?&j#MHT"V Q_kSt"_'O;Ծ|6fͪ>,6+[FwJ%)+K"=s.OFcV^Q#XpG7 ʛXiF^E%]K5jC;+èeˑXJ=y˅uz@K|.+SFIʶϷF8Xa ^;*gB͹ DՕm )ﬤ+%T(]Ꝯ( ɢkQOԯjk3S'5(Md]%^0)|L+ê5]jk[UQSD`?,e'2W(^Tv` [c"$+ӁŝB-YK,LY]K׈dnՈHbB)lM̧}dOrR Rwmb}1ZhگA"jsy=C%awRVRe+0AF_*'2@}5(Ƭ2!ic0Aҳ ]EXdL1 H]Y)8Jj~6܍_oLF1J;e]_js>{UHytr f\؜։" ïWv^TM;2Ϥ"`C] 7>KVmU h/(>ُNNP;_xSpݹxoPTB0^6]~Fl#JhtD}r%(A1@C1L͐Kϻ3LC#v8~}Z+p?iL^JB{^I='h Ϟ (_pk!%)SÅ`j6.yHv^9QV{%^A2^Fzg' U`X0_ͫSqO-&l~ cC VG I?TR@)Z7cPQr``R3 b*!Nm:͞ף&EsL6r7^x02V:]aCY݉̚R;YW=`w5W3/B+ R -rmZ NgP`>Jk &A1Lm+u! 0LfWt5izfU,Cv˗J!! fE>\UG@@VDr#og8k1]z5nd4ytT-2"oL˓mUU?N|Q1On*U-QD!)7.4nЍeZS*\擩G#I|!2qkԾYbuv8*Z5hq.T)_v+h!y2 ~0NWJZYSckC-ђ(z2#EH=Rg% 8)Ֆ_}۝ @k&"/ړI2uW|$Y:wU5vHD>¦ažp0MZˤҼ 1ڝtdQG Ra<PA盅ntaL}>RUt)]>F{Gw{%z7(XpZq%YW<"yB^FpɳK 8:0[ql%a Uc] JdLJZIZqR3J.a/acWޥ(|GbM޸ /,a X*2D7e";Z6 8)׷2i\N]D!#wyB'0{A6),= <˃rB.o撁$VYQiR WIyvI:rl!ÎuQd!a$]}u?EHˌ[ (l{A){ ^J"Rf0ORdb'zx{Gi 2n(ez yꕞRe1 3+'HgqW[I$hǨ!(v jfg҄ 18yVdHx1+XPOO < 5qZ\@gmw2$}/پfN%l̥~@vw1^le{ʍϋv 3l'@ +CkCDB1y 0:5ZTS^- 3ҸESu+ e_`GKD$\Q=, >.#!eewP:Jq%։13%XfE$sįYUa|W/ty.X~W=U^󎘄ՑwڵtE@yCۑ.|05a2¸dszI'HJ#@tJet8g2sb%] AT7 ȇ>#.$G^x̎2 gƖRvv^q$zIYH%.i2@l'l:?|c>v$%}8æy/?N~CqQGe:y8ȚWGxBp-ѳdkNTkI- ՛=q3XNׂHϻN/:~AYM*N+ᙕ++/EL…3~RT̬ToLua 3sp`t1=_9y֓& hNVŽfM4X={{Vem8v Q,Aa?~l^:,\':%2YZֵϬ0PR{ Ԑ|xc* vlԜzK$uFRxʐ^M2F,&QSՈ^"[A3$Ҍ1i= k&h2Fۉa:us AAMzm2cfs>I!mGZhNJ'|/ % 6V.-Hm8HQJ Ǿh uaq]/] kCB(CJ<;l8wuTV&߾I8{,x'W \^ ڍ2|/T%x<5 ?#P(iNw1Q* 09 W FIc`iRi< 6(lLz) KO9}s0o9,.yt=9+HBvlJ: 23Вh12UttJv|ˬ `o=x<1;>x~m?oyT)2ڼC+DVK2|/G[ hǼ9Kqu003S C#ӨƓa2{l ͖bqjCR*,=g8z^uVd7'ˠÃkG Ru .麢FIR 2>覚'qDXd tFZŕ`6nSjz1XmvOE}+a4:SfO+{OJe+zҳxtw]`o׾4.`tLC@Q*=:3炀Ip\\gmOy^l*jEqhѶXt]T?eA2*8tuU,̯_t da5Ev{)6ZΚ 6ѐrn]uBB{=:7ǻå/~6)W8ߍѡ'=[ z x4d =ړUŽtU|`LQ`P!>J(0-]6tlУ\LY`};H.5MSzeh/ lCߣYIMFץn9sv Ma=iBm *BYN[U)I2TϬ^pY6 tH^RitUel`,P9CQCtUIpLIu]zM&^OmVV,<!3A׍pSRFS[?a(+E{vK]c`4wf^*jl0!MXfSJ;jJ|z~#[[1]q;LYv6IxzڟNzJ_ hE!,>hy;( kT)T>(<`» @iv$5ar%c؊[87Į8:J1=݌@ғ'Ξ;es;ha˲?(bРwB18(06k\V5 `Ȼ i^fٴmJN|*;I]!:D5 /3yF4 V{&(0g5ϊ<\@S4 3 rؔƆ[lu7'ߋqk㰄qݡZzޫR()U'=JK{VyyM@WB1ỶqB2M%T[^9uaV_kDZO]h~6-G7bQM5VL0iuʴ޼FrII/T>L%b ڀIG%w$& :T <|̷Y#MUraѺU,zbŪd$8P@A (ĺ pe)L\3((eI;幃e&#+uDB]frKz4 ց2N:φ0r]N G@ },#E#Hp}wz*GNad?|`经#6;uYSE`Gm2 YC\ ،E=3MҕawMc=1)8e]Yf;⹯=x@+9gM%#YfDU^IjBTIhvLdeVZ&^հHޑ_~я61[aپ.n;+؂*~e&* &{֖ٙr*mY!@NR@NH'b! o+;.sJbT5!A!}iҎ\S N'-|+N`l2rEj{mEl M/1V3rHҤ@]DHX{&!{5SF{vfy%U⳪R-d1Ȫ9ǔ}L;FYk?!H7n_C|zzz+aK+{OCِKHzjI3w =HS%JTQʖ!U ԥȏ39NוXxI~Qp˯Qd,jRj -7$I#n|X_t:>zr|k(`]f9{1A]L4`lk_Vʳ{;g_%.wTgLZ\FQ+h$a$% )iK]*oǏU:NfZ#Kd~ о /cxj${,"T8p(#'!5!@6`t?ٱq. #}oӻGAIdMG׬@p=9kFOV3}&D|ZDt©Z@ =ceuT]{;ƪ`h)%W3hJ ڊS.]=N޵q-ڤ\&ڪ !R"JE P^JB)HR TD*UiĎN:g}fn#Y3{Ιs?osofbXQ}_ŰJD-6Xv1.v;R2Ue>0/mQrn:xih]J%xDʂ+ !Yb79D:̓\YGm . ) 8( K(6p@o%s 5̉w' $%=-$mjw7׻v["[’ڃe._~h9kS[\(Ex[iAԎ, Q^|B# RJ2Dc k#UC1c*yGiG?+Am" w5G,>u]QV;ZUuoVeցS^~9!.<i˽YeMąZLLS@̸ZN;`5E" E4?]?{ q˶Žԉ\D"r0Ggu wbNLョ 688DV!7b֨T.>0U[a.K'Q qIT0J ,W')JB: U4HF/t0c!`L}`CF }u` FWu7GӇFqY=GtӀyW6N_Xu[AEjqd0Œ:)\>~p@lՓ<`\璩cWkWGʧ@[a{+ WA $ XAJɴ煶 d>iJg,YD|h&SKzA{{U5ԇ>Yr.c8}"޲\k2CJRg/̦&EUx]x^Ԍ' SNys' +k(>{{^B=1'|{D<? ܢ>tNOUevxP^7Խq8 Y7_&hB+hcx=cgJ4|:DSpy_\ 20])Qܔ"lO/nU6RLm9 aL$Ssg,Fb D٢(,ZjiW*%JQ̊[~iu?Ut5H0j)!޿gm9.7zG+9K5ę{ԾOzvN%#Y;o {9+))k\03Orӳ&MA6cJ|?k_H'1-8|wj-ú&Z۲+ ڊi"GXM%%I b `+I7X%5.rp0uB .?X|7$RAd9797xz&N+`OKD**Id9;16ٚKUkGEl@}kY urH Rd0l~P'$Z݃U3h$!4Noq-kX?ʌY)3ઋȨRejM&VQ]reEE[Ɨe`XM=o!RO74%ڻB^.5%ߜ#AqN`^Y86|GF C&M8GJ"͉!uS4RK\ͼuH9Ա=ua! (鈜1#A}u]Z̵@ǸCE8ّw?\"..يqj\n믋-1Xvy\)l Ȓ9Je#Dsa.7֦%'ע?tC"dTtd!f-\*H ݩZy:\y b8}6ˮ,YJ`E;m2B]mN$J=7`i?*]n$f( i]~)a$;{ڦ-uw%܀OȳIDf*r5$rQb&lZ̙ N0=Jwpjq=7'/z$˖aN9C34"Tٕ-0UYND0|KܵkWMyvCm+!װMq/'.L^4滼!PblE8H \-G-W2 Ni"2dhQע_Gl+xQIENDB`kylin-video-3.1.3/src/resource/ico/suspend-d.png0000644000175000017500000000060214212620632020164 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivIDATX 혱 0D$M lB }SX>S@s__N/݅WJlяVۗ߿ZtZBxTGnt sR?fuN.ߡ(]ra`('+LO9 0גH(R`y`RYa`"(m> .#\,;AkR 4 gaQi~ꖣl !:΀HB=z0wnV ,q!F1|p}`ϩx=/]s4 >[~}яmZ@t%9t5 t [&HA1\uB6d(n PG@-qFBE}AlnK93Pu& W=/O@r眍=P[_)in˦__8 4>7AH^YPe `ym9Gr|CEV~D|!603P1mqطFrnvVNر۶'H+茸lպz2 > tPmrޅR(1-5|z"HnDT$ S篩Ȟ lsFh+W\ zgC 45-YA8֡aqci:aC&Sv?Ʒ᪁&? *|.ņ$#`H32?H旋jѯ (=@,5?$;<&?_[ɣY@J4>F5>`22 Y>Ɍ;~6@:}w 2 (&ZPE25#^J0 yfp Ewl멯l5>iINo:iIENDB`kylin-video-3.1.3/src/resource/ico/audio-volume-muted-symbolic-h.png0000644000175000017500000000113614212620632024053 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX ՗N@Di HTHT@C>> * PJ .BysٍNɝs+no3>w:%E|`Pz=06gUul\ ~uk5@p^\o}Xĵqb\kdLkk~C5>#;w5[BNE+@ք֌CF>)f`ZQ'Mrr}ւF]2^J(U{6j@ i@d…%q .<Ȣb)'({ =O.J"5[ f %8䯝yYph9T5)(&'͏\P {4}mOfH@ vE 3.K|c/nLrӻ·@{fCq&֑^7#IENDB`kylin-video-3.1.3/src/resource/ico/suspend-h.png0000644000175000017500000000054414212620632020175 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivIDATX 0CCb1s0LѦDs?>ɂ$wJgh"е/ C^t<&(EDRD( HoV'WsTW- pBim lmegeJ͖0i}EdPGW#D1IENDB`kylin-video-3.1.3/src/resource/ico/icon-screenshot-symbolic-h.png0000644000175000017500000000063414212620632023436 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX A@ E%8 '.X{!TN9 .:CLt(6Ӥ4UDC2R4CpE=* {j`dڭ1@БM@[.Û6Y@ӚoRD;a!Qߙ Iބ` a )(xv߄E@q@K&cFs$>i`p )kU֫Yԅ0 ZRD>5 g?v[P9f%B,Xo}炵;F8Pkő^++UOb7ހND b.v9Ʀ[2 +1 Ll5h+p|ɟ-hRy~fi+ +V5+ m;] 8Y_yq-QY)3mFLN6cӍB;! .Sv5fXv=byy; u@-@F}[Ut-$P]Iǽ]zX`KLE *;ۙ.1RY( ҽ#*Iw훏nՔv5J;s&1gbu+fw,ufYc+ҮedIʂٹVsȫC";YF#G4*Gn'ڴQ>t/GQ((Q/BUӍ`D7fjVB –!}AަM%@?!5WDZKXyc2HcSW(C5ԸDZ6iFb$~%vlif%jlҟnnZjAU黛;R񮵱.vmcj<pd/` qM%un@kiZQ5`*+3 ,ޓWnxZGlV`FD!GÙٌpAgc=e{>]Io<̫zM(iE`MT# BŸD.B('hdj@ۺOB^0_w,*5ۘq԰7?7twhE_Cw)v=tn0pD0k0F`A2PtP~׈++@6$xsJӺ/O{4]{Ǧ'۝葕ifp<[Fa$IZ,١9vƶ-cGfKa 4v h5tUZh*8ROT3r}3Vo^ظh=4q jý\ypԈ#7{^% )yrEĂVߎ cRyzumjbc{> t?_h/yI4qԸ$`Q<߆:M'?&ZuƝ.w܀9l4gK^0pqgN[Fu)nL k82T3VcfB7%0D"mXfsrHu#r׻!KMV7~1_`{rI/iNgʡ @/ T!NVRAGi5iVc+Ka Z1t݊fG YEw`0O֪ ~qidz7IǽͮG@&2EL[펃<[LZ 3Oapy % &1YQ¨a?k2I|cS[Gn4 j;mm G~ݞ;TDۮdIqyپLcE\*/%dtk`Z pQ-d/~QZ;ӟOџa]k[$ssVvOmLX^ԭ2SLT"?X̵Y\b̊qn,bWʛR?J|O58]~=  d:Zy}sOU|[4V֝uvE# fg Q3T`\Gv!9Zd&YuI~c|*;׍*c{PŚjJ|ZmS6 gӘ5v0ymvјZYuMagWb̬'Z^bjAصd:H8UKeЈ@ w43c/6Gv,-3Q&WjY[,>Ĥ R[-G?nQ=2b2fsNÚ6L{WӼ_{*f[o>3JjK͙zTPX#tNtP$P<ǔ$+z(a2l皣P;~n[~䯦W/R۪3Ͱ6G'oI#D&*;:k!فF'gA|=6z[*t۱) n5 ˶$@COg] Oi<0So tWUuLṈYx^a:YkLڸ mS@+Qw-p@{3)n90o~lnIvcbS80 @`ằObZZjBWV%SW6IR+12=!TJt6 ͣl2 ef ?m^R{o)GvQ5yaRkZZ:$na i^&9Ne#Kɦ^:,(Θ^ML)?$Y (Р($ ;5J=EF}5KgYeoם]A'X#DzkpyJ\avFbwG~dr%4I?gl/G/G%. GTjk"sI4P *BYQXqPcNU["l 0Y]S*[nZ*1=3K :ʦȺ(m1YLcOb\F$px!`m[ փ1geԀz'T<-IfgwQȮyLu/z0t\l6z|}); b+u/1u:|$ c][s\3"hjKSD>Pe;ZOʒ8 #O2k#{Cp,CWtC#au.M;I ɇZIDF'eOT܍\#?҂ŎO ƾ@7H/YJLت:NVƢ,;3JF^[yLzBe%XlAr~@bjuC ukORQж*kEZJxJ&+%il.\? nQMw{& P#2MvPn覼ϧUQR;p膶5Bп3~jzWeUCYq߂ȏJJcrmX9 u5]˪^[e19ݿ/fi;dv !YinHf,j.#5Ňont)RPMFwBċܠ C30zle츳rY,CmȢ1ݲV`.LA H:"(쎎6vv5z^k֍iC1c݈|^'^YpeC|x TV6JL*<4rc-(KqwYHTm\N:"ޒ/D?+b%4 9ǯX$rALijRN Ѻq;m}=eOd%l\ffsS=f*LUohxyaΆU'i\XJn*D9E+R`TǶ}UAšQX5=QBo I vi:HN˔aMm#+~knH'>/Kt2Zr٦i˩@`9FnQ1v:%휑_nZ>ݬڦGE{LlF  jD'#sMz@8Mu0 WtmR:;ԶXum-xps$mrK^ $a ۴0zOYw>K6s$J[P[OA@ h#Vyʅ|h:W[Y)46`I ^t2k9;"PU{jEV]tYy5#g峞e4;%B-}13g&:xWZS5SKU f4bBdD*I+!iI])#MyȎ'b9!Cv2 ߾&eȯΈOO z6])APVQFvTpYt1d!i -Pо]sDv @"UꨦrdB\N$1]^̯,;rmw{f+%R},7dVMG۫F%[9DH2|3I; 1)I*x퐎e]Q椁^7\"ĕԥŹFu\i8"΍ Ir&]eYnEU 7TMQGW?idI-U MC!G3np*3VJWw_"7q Z^ض-eb[_7 ;lQӑ"&2?=v>rNd.咳$DMWR;%`aұІm՚-g ݲ,OJMδM")E6sk=gp 5uf99kb52"%d\*I5ki{ 7ɾjYfK@ $_3ص J!`Ƒ9(bZDl$wL#u;iwLڬ|3 0oeg{cJV'?{#SD)J$$ҒD/tO{֞i]*$s.8Ee{\BX:0X  oN!(5N3Q]~|g\_Rb֤vpKx&K#K }93C;LB+jA-_'@g"XͲ+a"l +Car4 0؎a @E'4R7DQbg4/blAүdž!ծm) ,cc sNfS]\P?dOaHyt xLi !=,# fiQ'aM?jw !ȇ~B%*T7f2et<\$J\O>+m,%QX hȞ; }(q tŃX4_6pH6v!6T=8)JDX!G-riԁFtRv7sr ^{!; &P7y6Fw KE}Q_Z0ՌBrÀ$X0@ /^Z)lUfn Rrٔ;ja;:u.v١Ct! ObF}+HHDR~^ngkS$awn +XtA8! gjQhd[@sj:H}2%#XO|ײ)H'{*b?m_3R;AP ) HUFZC*nTۏ҃`!/Įrn˧Ԣ 9aM О ."ƅEt԰ 1I^}iÍVOfZh fG4q hvuc ^g95  t밍EQ~}5elvkQ+}AFUjU9ըUvTSuυhsZ3qhs 1iK6U4c3>#SU_ bBϼPM&?pKFh( v0TǠa%#^7vpF#hTs]#qai `i6b2mxC{/+jQ~HA=,VQ^^F@B8QH8~/kznEJ8A;ĂId9 H%ȁʬm;{d݈<&!0ќBOyxR=5Qz k# 0p]Pq RP+k}Gh`畤) 9&&-4KA $bkLeʶoF:.o#[ Ī}PzƐQwU9g [Xz]3g)NT`Q>,}n0de}v2AA_ m{f$28ɒ_OxtéMզgsӴMը7w>8;|A1m8t1GJ=R ٦hk*~*MҥmBR ^[[GV`)Cof~ժ֧.P{?wt:L1iQ3;xdӏpؑ!,MIirfnCaJW<.¼4wi>pM&/ts,K3p@jpw e5҇7׸dVaeO@DQRwI~0>yc*n解omAE  #Lb7TIQgj o.LHovB_4pC*_\8@#1;;SӫHiOLJ~epf.:v.V)Azؙp/9 Hl"dIsM`ںw$.>9d-|OY~)M@*Z=r蒸T/,]8A}8B]I7M-p]j1 7탈4߿eX[?WUHlE&tWQRZIʋz~>0, Qbn{PxE OGynTg -7I[dkS+NB5-fjCƽQw Hf㋊$]; ``Y5nw\6boR"mxX!`H&Qȣ4Ou>ᙐ?ؖE;GF8ۘ ljTΚť\#Y&I͛{rd]#:׋)*+LBgڢ#{ٻ;lIdПTd:ʦI?-s{xz_ZO LV)k%U!NJjd~5>"#qpQ616x0p;Z^FpH?k;CRW䷱ނ^Yr*%ZJs1%4< FɃzw;yDyXJD L~)9 lܝpS,nAe."JfvuPP3Qa)zOD[*~ݻ: $gJEy41L3kVRMnՍ4vA;D!~AS y栍)k Z>fkBOjrfB5ohAVR(3N: e&"AP#R|E5]Ч! EHabg"#zd< 8nacEmoITIQ3Mȡ 'U_T7\o>'0L4_Gzp)]E}`]ЮzJ؄Ć;@-VդB6'dQ5j$?[aЉ4>Q4y `RϩgnC=*M LU ӡ=wH/ wLȉ`k!c(]^zm$HB:QcqaI \"wcg&dzi‹>o+v;7R.䦏!$TT*սJB,F1B-̐C"yyXBhѢ A鲲sNz֪3b~M"lla^ЦPb3C`Q/ U%f1fO)[FŐXKC% Iua:k7̞g^~SUR/"{?pMпl<7Swnz7޿9 vƢ~dDKZKwv'{Q]=1LPrM.ʘ+r}S pxa%s?lNIheDf0j8->bryӉ "\~5bg]WuD RXk잹M{ v{%s-LZgr^\Yɠf.8/CT $^+.׿?4*ϛd;$+j~eq{g'VLA ׌(fDTs:X=o u/J|Ϋu%h{JHeh&E1I4R4VH5.MG73}}sI h~~o+mLrHXZ~'\_CoWiWg/gan¼q1FfȔ1Ybr2-jDaW@ HW5|+nGUWS7V8 UC32m V'XJyG䝞a1S+JV~?W v>Gtܩ+/=O~Ǿs廧禫7d}S_ϵ:=ӍZX&lm>8}Od7h]Zٹ3XtZ#@Ar#y2©1q<[^]w5VI* pҗpG}bneGе"ttֵ7pdQ_sE*:j1o ]B Yj5ZOAj4:%EL 3_:p91~@rCMGb VPMڽm+U2/җ+Dn&I>#?9=r9Y|OY'Tnp}9WI{{(wӏKW뚟|^nM9ѹstcٵ~|PNFv F+[n9o-'1|QHxX Hn;~>A B.﮿f^߅=wi8/>{gZw<O}+"a nz̫ET>#-H`Xuqny}#wXr|齡 U0VD"jDzcnV\#ST(}PEu|>|չ4bg}i`ɚMlgpQ+$BefUV̧v,L).A/mG* lz뒗jT2MO;)O+ H'_pH2ռKfey[$ż:@lH܌/`GslUPUZֽu\wwGا[dL}66O^l|4['_Oyw-;3+^xw%yg7FƟ(` Qf?ۯQB  u(fE劣 hIwRҜl4 ^8]m}NUy8?n|D"m(n|'r?CS9u~O15ʃ?1\Ssz8vd (0w;`tB&(/xA*ym P!ci³B)]Ƚϟ e2M+[7"ի/ N/?\a;W۷8vGoz;lF<>.i^սPIer1ahrO[^J';2tS.ӏ NMg$Xa1y;REyHj0cQ 09<9FYƟ$EꭢNJۊ8h]?|?^ïZ~`IeRӜW0o^[66 _+S[]r8% j=?emHEF'qa8ڋ)X8ꑩ D tOz`wIA5Fyrb;p qȡ8E.ow7E]K"yʚF[Tft@pW epgNN p Co4m[_#&-(\'C&L;N21O]]hk*=UQ.#HQ-yњh!e >քGޚ>o)-ݕD-}!`r&1g:G.2*\b)oJ*̺Xb°`;dB5 ?U_j"畘76rJs)WWeϸy|N_G>d^r=Goz5˫rX^vMs fkTFq5zZ|ǵ3C3 C =(z[|0o{glUT@}y5xTXI$o;3=s_x}?ӟ.3[o~Ox%>˚_G>Ӎ}3/ɫ//}Ŋ ;Df&3JCs ɢr)yV@I :u2Iiyi5Tڠ)&"sÞ]rWٛr2A[+<˟6Mܪ{ίUUÝ^Nihc62hW3TJgsyy73 Z0\V:w|j=\o: f۪Wy_bg:=qEoxҡv| yRzX2vze:X Jm=ՊjA$&!1[ C +8zE7{ڳy)lK_7|3x䑢ʤ#/|^l(9ɷ:Q+eQ8}&\uXND1?'ȸuilD9;+˻9rd2]4f6Ei~1]TWM.IK5|3Egy)!"dK>R66n>[o;Gw_~象W?{o+^@;@x6|G}NgIA1*絷QiWH!lJDe}/E=HĖ.a MXFnڗVgM[$8#rE%OhQ.tU1wzd8z{zŊ_Hd wi CɃ_棟 \Cu$/z[̫ ~,Z u}3z? 2=D 媡Ÿ;WŊZžbԂB + :l|)K-w;6J-:%rtNUTmf`܎%6hWDzgWT&b@EK5l+tzDͮAB!/ϻ6g[c >0z0:{YhvX{7R(~HV+( Պ}c{5U+PT㻯tZ22QgY/=/Y>@v鵕-<胧O  0oy4.2^&>G_60)4WgzD&HJ65¢H ϵ%Ò7m7 o<|0 :PB@y0p9OǻS\XK+K#&2DFU2$<8ڳ*y- _M^=}GC}XT"&P ʌ0"WpW?ZWX~ Yak_Z1ѡϦH"O eL0\Zdtw#YtM* aw7odx+}u׋˾vAK}ůvacg?+H#U5Hͼg1 pȯI$j48~5 y9n'mF$rX`v ;!Ous C9B۞f&Rf S\X\Rq_HHl"mg7dij.{fI)*iB^]Ftͮ~E ED(߾Gy6IDATZYKSuFE7r|^힝׿`Ϯ[9\ I=~oqiPGIkOo*<0Rgn?"O%/T}MaeC/8yoi8rl ?!&<":uq>W 7ͱ /"hu(s" V(ɯiJҵnΚ5 j tŚXoXyc+|͔{תĮ#Փ*Agtl(bJ6w/ wZe*~-H,W;,Y n[b*"~Lso>=;~ޫ80p,(>|O %O eQBSz0IvŏIŬv aؙD*:>d- $6J_D£V"_kF| - a v9_׬ $~;} Tx?oM4^AkdDK9~fo߅X{65̤ŊrefD%`o brۥ5_METD[![S4P肫tyU^зrK$,j+]q@u S-&xNb|UDYt/;U( =)%b㑽^xBuQ]vou@6܏ }0 >AO!U37S}ʥyAxRއ8sWRqmk9Ƶ:=V*5q0D Яv\mbIZZhPGǺt,w3@gĵ*n}\_(Y(MȠ;fC?11`NtG-i7tWCN"ضORY<4gMQwJZK ge-uAh֏h=Jsq{LV;$Q@^:9?~v>[3ņyIWgIsppAVEaʴ0;a "X N` eb<hWI À-لy> L4vlr;^$o$}Ho8ļHxiއ!LBI<Éd5H~#@gu[JZWW֦Rbu.PAdEyڗlv663lVih^YQ՗\$E#Q=Rdw:`N>6a)]`7ҋ!~LjNI(jv|`FI^$Q^ҵ[Q1*fZ^騥aK\XLm>en)m|[o!]b @_S1FZݜ ـ9YI^IB:nKJZR^ۥJ\Ҙ,Dz6036yBSҔ\&U2@!oM1@͇%?2XSܵVEXuevʖ f}B?%.Pe1y6.S9íE#G^ͭdx9;U^XCdhwayw[ҶU-,$F:M:Bl^NBWt~ ♿AQ3 ƸtTEJ:۱Rm'fDL +/TaG L^09CF,=LH UHg-Wn~H6(ӘNU`wKgw ђ>{~Op1\~;,Q&5+?4dQO)[hܗ[8Qה_*gm8;e,ݤdn\Hz֪3BJSZ)&WU l dӑri >ZT>x靝0kb^TIa\%7ND]ÿj1tk\Hv+*xs;i%wGXo:e<-,랡bM.iL.1 7r7TFNWpfwNürvDMwAz%z[hx9!4E.MP*Γ72]ޞqlub'SN7lDQ`t`;]K\ Par[ aar&n7dMs.F#ͪX |v˗J!! E>\UG@VD#rg8k1i{5ndE7ytT-2"oL˓mTU?Anb(!X:X[5B9Ro~]hpTs!0T =S- uGTZ}od@<`v8*Z5x.Ta]Xv+!2\~@NWJZ9SckC-ђ(z2%EH=R% 8%Ֆ_۝ +'=#/ړI2uD!@W|J&yg :wU5~HE>Ҧažp4MbˤҼ 1ŤڝtdRQDG R bU)B` =Ո;y}WШ`2+贡>u]Kv2 y:'gBSpIQ]aPN'0)ԁqǺx~(*XTDejB} v ZK~UP/*8fEIr x4v,'>FyR=CQoHQ)Ξ:1i5E1l\P@vtc]T}b:/q[<93#iw;隄 RD-JaځcNdvb BP\)ӼT/3ы°02SLsA:fbOףJi.kLbmޏi٢ڠv& FB!_O)v 7D"ځv!d'Tbn)fl=lr1مX -ͷ e+v63}Y/Pqsd>gx*x 6.Ł[(t,ZqP,) `& qͣo3Q>0B#.G^8̏2 fƖr)I !A,Jq`HJ/qIic;emyT<8F3ꃍr'Or\'6l‘w璘H鐀ȏz~it#2 6>u蚮WGh!xHp5iQѳRdkNTkI=4@W_߅ %$ub$gT$twFzuz~D|E Ȓ\ꆙWNZ @?ϳlXy3%f.m }0 afZceHsH̎)ʙ'+7F<),hvdI3}úl n!J(!?'{u$qUR' 2]WKKnӺvSyJ#⒛h_hhsL;1SohS [܋\LjŤ9wgH6H#rM(oFāFH#X @Z# E4␝>9 y}ei =6!h3 @lj\H(X-EѓaL Vt+ʖg9d$({rag?@ a]3#] C)Cz<;rD8uL*X¦߹c8,xV \^ ڍ2|3T%y<9 ?#TQ(iNw1цa#s:P1)"$+JAz Hi0ݷ5x-Pg=y1;1nb8z5 b Ix)-t|?,E:jU}aCBsdHih%tfw]$%O'өlLO.=)Qε!3Vx Б۪ feϊӲ2Wu"P4gA2u(7#4:^Zz yG鎑Wt.~$Těh2o Ԉt1\xȝ?tl* B؍Ps8Yg@eHsga<[ _u4~bY HòS)E7Ө1kMؑ`k#Y8D0:wX? v^-0Ro)P0,S9@|y;կqdmޯ!B_9EtW( fsMZiw:j久ӾבAFk3X@ _DͰc4kZHd|zЌku4: -Y#{0qEGd< ?2+BON-/qCG_;8|46@}+z룭gP`sc^쥍BEX-Eba! UIY{4S"!o/vgSC"Snrɥ'vel'h<WQfIV ^D3"jgkOF @2B*aۋ|.!,o+ + ̘;fN^|R$sw҆t,X%F̖gGa@kCl ͖bqʃR*3ZԿsjWXZLv~: :)HvPp.ULQ+j!Ef Ͱ-)n~Gd+FJAס诡eX\ iv:5'(sh޶nǿpf~t$dw%H':bͪ;X4Df ؕ/Nԧ[Up}[Ζaw$׽t=c4:ڎ"P, 9^L3D'n-=ϋME (m]"FÀ\.?j S;lYF 7ؗ~,Ȯ0ŖUkYa5&N՛ ϫN]lhP:xwo*bĻ4:=Wg+A/&8G{JؓNԣ** ćW %+GmP.}K,0]o$tU}eh/mCߧYIMץr={n,M(a0=iBm 4@ϚBY͠7O[U)I5TO^p]Eo}tcN< ? S<"?؈R9lsLE芭)Ɠ+LN2C-;%X:ub:Df>¯y[F~س7@km/m6QtP߹{taaM)!YH^h_HB-ތqgz۰i(NT0V6Bsͣg.,#Lth8ڝ)vhʘs4HM Uӑ²k$o=G~˖f&ИlU9!&2S E OHꅗVݨ- yN&B=ao?JvKw)MS\idA,vE=8p1UNݰڑF{p)Eq f]h ZH bGE9 _jF~,G=HV1uc+n:T3JAhKOv 0KM!quDgőG*qUpzeM(=5iHHQ1.$;c@ES7luID久wf]F:ƪpSտ<V#sg((_;/$ۯI…sLeHkfUwJiٽDA.JӀ4ⵑ|JȿEaτ{#5u<FjuxQ!&}dvVk!P7 a2w^i6i#B׹*(VqiQӵj͜$JW7l΋# !pp, $=6 ' Xf=,,a6.^w]6{1;鷽6+ KnRS l0঩ t~~% K]IMF َtM4A0^ ^݈Tk*5'j }ORch:JGS>g>d'+D0,ͶB2A2E:px߰~lֵ)|v]tt2']fⲛBjbhhm+.V$섄f}l- R#ײ+zNIYR*2$xdO6mU:0+gI2ӳ-۸\~2[AB؋}̶L>4k0T2QqGux"1n=ޟIphP ) Lh{wfy%5*`UN}a`ka_s)T6nz͇^"A/e&XWOjDV!FA& 1C|J+DrR*QYKgrH+W=)k2rRS@m2T"8"%ܷkw㲽%, n~op]tvYV!{r׌x(cjQ @j]klWz7~Y4qmFmU !DHm(-$M@SH J$4?@ğRP[R@*Mرpbyߙu&}ήdGZݝǽs9s=+fUoE|sZiP fZu$tWz9ݻ٭Z-o>&ר:ET`Ȱ Hnt0JWm?zy`R)cj1 /+{t^,58E>Aᥜ>j_" d^52zQ3cަWoE6Ag}3xyk?PjؖtS9G^_kf\I j7}rV6ʢ<5\dd]޶i1[Hu*mYN{5 ΃\YGm / ϭ)A!*>RD~i߮K14u<Ȝцe< F /%((X$vO^1؟ŧʼwvRmaK:*Jr'+bUM2ǕC=au[XQzj $[jWgc=mtcݿ|졻xckඋV33!l& B>SY[ RD#ӰoW]m[kO!" qa^s$H^Haz,QV8SD9"Ue29QU͘TDPTnv,I5#JLF)݃0*N_( I,@Ѡ9 R! Çzulj3;ZH@w(-\hWw#|C/_Z{K'oIh=ߓӠmcȲ*8Il0Œ8pn];?Z8^S3Qf^OU+#Q0~"j,5026yqY0,gIӲfIf猜glC R?Ԯ(>P.S!.ͻ aU?(cӜ}~lmu_XOcl}B(׈N̓E{fa}IibE9xH0ʡ3`֡B p) V"YF+Ep4 (Ӄ[d-o۶u%cT m#q VS٢Ѭ1[=J|Ҕ*}5GRg_E_xR7O };?[NcǘސSš@YM ׭~g簨y7)t28PQSF%&k4Ln~ VNc#5š ma1֍ޟ/fFkjT옖N:Ģϗ-C&zaɑ%!ڒi`FN%I 6 @, KJ7PBؽy/(xQ 5  :BB1L`h'ffO]Hͥ %00ř7ը&^T^1JRoJzr#Gw !,&{"KSr V[Y0cILv=%}]]1ۍaTAqL)),Ul]72eT*gW0I?LXh16Ť)/mNYS2֧V)e ? 'F7r?u  3@Kz`KKvdшpᓬ/Z0e-9q4S,%\Kݞ[_D<@NqvUVGF{=J\#f5v*nG04IQbk0ZR=K*HMYY:ZQ phʹKVkr3\ Ln@Ա #J==a|,{\Xzג;1ز`A+^f N]LMi`t4H,؋Mj7%v>O~ky^L_W"2XjY@Maד֑RP{kIKQll?5יP|7C3BB oڥ"@Vc}+.I6T_p ] O"wgds.7A]H+R 1KsLbrB Yl1vP7Mw7rW_8ذJf||~Z-IbFBHY[JRY.a?-%Y}J.@6!F]X~(D0 6Rz&2Lwr9}He`EVZ)/9vLIJo)Sg:nhf!tlo hV[I.&eȔG\D9v"ZKgRݡux}ڳ簜B^%3-%ust$X" 0 wD%"Š*{fhTPE X"Ib!/ȴfiꠊ. cGGw7z%?A}ME LD7!ĺRܨ0t'O~a5Yyvn)9"[1N]/7@[wFB`dMY:[Y x?B4?mpZD< R'r'æ#s\b3 /3+υ%˖N9"C(5Eb\ٕ-0_YND09jܹ<ˍSy0thPKi8ӛ&.IX4Ỽ!i"PylE8DH BCI-W2 cNi5"2hC;;PC:PC%"Sl+IENDB`kylin-video-3.1.3/src/resource/ico/1.25X-h.png0000644000175000017500000000234214212620632017227 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zLIDATX {hNaj 6Ѩk0I$"c.Y$Z.+)R[rYLbkK {v?><9{rr@vHe7砸 ; `A-TS6M(2_DN\xv&Ho%+iOH^`#X=%teuM6 tX+G m2 {Hz7A`zl% ҿ K!V%7vaҖvxr4qao(5M p,#D*3W}COf@wxi3tRriGHUظ]j%GK:!nl|v3 D @5IENDB`kylin-video-3.1.3/src/resource/ico/nextsong_h_3x.png0000644000175000017500000000152114212620632021051 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l IDATh홿kQ^a%`k#baeBoH"CK@DFH6,Bg{}ٝ۷[y3Λ6k0@EVcdy4EѣBvKpF0 Űc  ߤ}#0dk-?[R^kMXf)hF# FsVg0R:sc H26A HoXs6w4%iXKa@* ȐTeC[yjXZ"+bdP WyO,+j3FFܧfs+-(N D+{(YR\e}OkEh+ ̉Vņ;oj^B>q?!;dWU) fGK"iG"?&F"Ҷ}F43`30LIENDB`kylin-video-3.1.3/src/resource/ico/icon-delect-d.png0000644000175000017500000000054514212620632020677 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX UA 0 ?}7jbN)u dl#m5 #WX ~0OeV0zק*#Gg*02b9T9 s Y:)6 .:g~H=j+@Uꩄ/D4_ .`@8ps`ԣ{]}? l#?>vaY: BNZ :b!k:0D߿IENDB`kylin-video-3.1.3/src/resource/ico/play1_h@2x.png0000644000175000017500000000104614212620632020174 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX UMK@Y7E"n<zj%ԏ$]Drۏ! .e~GrRDxDzYiR:01pj5ǁ ৘WUJe@Re!s mWN6ɞ3㜐+FIyH0NH; wא{:IENDB`kylin-video-3.1.3/src/resource/ico/1.5X-h.png0000644000175000017500000000176514212620632017155 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`z_IDATX KHUAǽfF=ha =wpDEX ZH"jiWP֢6=^&zq{qwg{79-+K%@ZR7y5$;a)|XIZ:b$W`=j`og`B`_ Ð7 903I] _}U'0 Q9r8{-CRhjOn<>n$3}r@@+ V'-EWn=T%-_c: WҎAW@rE*Z?1 *37N 0CvsR wa$s*"43u!cz땷,_oAr0'ޒ̵Y\Ũat郾ziSY i{5ʸte lb 0MN!+1 /BDVu7f!= J Эq t%ǭ!Q6@r޴%'ITõB7#3q- /i7m4rK6u<5I>cYb@kxtV @Z WL IENDB`kylin-video-3.1.3/src/resource/ico/icon-cbl2-d.png0000644000175000017500000000303214212620632020253 0ustar fengfengPNG  IHDR mn,sRGBDeXIfMM*i `aIDATxOGw֠6%ԪP8TpixRoTD r*KB TlxzcfvHcwf"DIzTUjUE!HkD~4}4ż5 [3 RID_m& p,4M3n$JxI]`u#[fxx E]?˿m<ܛ!t:m >*MژOrmڤ,q-#X6ćX6nu8֜Lu@eL fDg2ɈG3815;j"umʕtx =2]q2@q=Vk0EvZ0 !(qUUT] JuW ( : Z` d5THt@: Ht@: i9͗-[>AS& z{ G"ۯ iP;T*B!L&uNPl/h'BlldR }ww'Nh ,nD"~;Y.&-CCNq7p[Dii‚(dV8l,//7o~3dߝ +-T>og/W?ڲ qtttO`t:Y~5ܲ`N\a4'li87n8^= i<5ML IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-list-b.png0000644000175000017500000000146714212620632023660 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX ;hQ&BAs1"&(ڋ҈ B,m;Ie#>01%PQ _(z~s;ٝ3ss.{5\.o%vZh%g3<(ޡK: xB&2 N #3$? 1C 7.BlC.2-zo801/ \s)942 ѮdBuc finG,BVm5lœ2㯕% 9PQm)笂~h97sVAkK6TTMfU?-R;فf,9gFNN7 7ߴvGɛJ?q3TVԶg&\Lb|\|5aO NSyˠ܇y Y .f{tv&`a8@7Ƒl(k=Q[x Zǹς^f /oS❀"HځN'Dgy= ^]Do1=A t{`;Mk2 ),(GdLP0NmJau6$abԇGMfBp b8U"nmD+}}T/IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-radom-b.png0000644000175000017500000000127714212620632024006 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b)IDATX +Dax#!k嵑dNQʆbl$Vvf3ERlĒB3sܙ{Ѭ9s7_c@v xd?Pnxq ,2D!l{R6Ms1 }fMy ig;5\BvYAJN&(lH$;$ &ZYx0k@e4mbPsP{&Gv/*a'16 会EDeb*`Q /:O`2'w0 ۉ Lwf[d:8߁Fj9otcr(EbJ=跎l8t4Xcف {x#S8oC c4kXRK\=z!EB P0B2Ķ Q!}J1(~i07?P>p 4p\PIt&]"R ]߆smw&;w %#-!IENDB`kylin-video-3.1.3/src/resource/ico/suspend_h_3x.png0000644000175000017500000000111314212620632020662 0ustar fengfengPNG  IHDR0BUMsRGBDeXIfMM*i0BX%ߣIDATh[Aj@|W!)GؠٍN2,NiF29mnqMt:c}bݱ~{|1kE'/x~zI n=̅%Wk>DpbEزb)r=0un*AbO= eNonm֪A+`+*O^cp@LǵӤw^[ٯQLyʖSzq.@Ôv6@T͈\GekIKÙbJVNt;3}[W5r;&|tlrBP21\뽪ވn`C1`Fr;`;q!踢p>ؐr}$ȝ~!ȅ-t! ?BLN8,>ƭ[A.g{SAYC~%x[ ,9W1.@"(%Hys17r+}<8E:^&4걾|sU `= 6b^"eh{Diƨ#'@? Ӹ<*3 =gf!cظ Y"26MiIENDB`kylin-video-3.1.3/src/resource/ico/menubar/0000755000175000017500000000000014212620632017207 5ustar fengfengkylin-video-3.1.3/src/resource/ico/menubar/caidan_d_3x.png0000644000175000017500000000064014212620632022051 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI| IDATx1 0 Y}jYqK(zBrYm @ @ @ @ @ @@;{jj\O-_[s?ee^韕o 9gITB+[+{  @:F_p;65  @ P%`ֱHެ:]6 @ @ @ @ @_9/IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuidah_d_3x.png0000644000175000017500000000125414212620632022120 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx۱MAa S- (EB.9 @xwV%lV{>нσ!X           scȽ׼Ӽּ9>wW͗aƞam Yi*pMajY2\N9vob>–/]o5w*ky5D-Ϛah(>sl9"#tolmuC/0mf[K G'O&xx&Ц hM:h)$`6 bhM:h)$`6 bhM:h)>Q831|iY'Gl8 mf[K:q>9R0ڟYzhr֒l5Di8##b֎.hѹFD!FտVY@@@@@@@@@^RdRҫIENDB`kylin-video-3.1.3/src/resource/ico/menubar/caidan_b_3x.png0000644000175000017500000000144014212620632022046 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxN@q+*xk7w @P!.?IW=˯'civ6=l]KmͶ޽18ߧMȌ1X}?UA ]n]vp42cJ3b }ə⪿4hM:VچSHv*[=mķҩ@?~ x80m@V@L14h)Fm0hM IC6 bh4&S $`&h=2t:}Ig}6E|`=jg}2gu]lqaSGjGmP2iCC6 IC6 bh4&S :La2^ sZ W34&S $`@L14ͽ4:LaS:LgFݚhM IC6 bh4&S $`@L14h)Fm0ŨZfQW.p9z|+5:z2p`Ö\iNFl[V}+Ԗ׉lvl1-vGsO&oםGڽzm`q_=M:64w\}&^zx(tRVlp8 sIENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuixh_b_3x.png0000644000175000017500000000141514212620632022000 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|wIDATxAN1MTukUoU=R?a2(E$/Of6#O^Wc*s8a-C98_ +Oܖs<zv"䷡.Vl~Wn+EĴ7,>69KH+\ Bfד2B+tt/ 'Bh!(F @16ZhHBCPblАc-4$h!(F @16ZhHBCPblАc!9dvok o?o8U||8~p4M_7l(YܜN4:CưFyC5z{-4.Аc-4$h!(F @16ZhHBCPblАc-4$h!(F @16ZhHI͐Am =}h"g mvy;}mmR~YsY]-m\O;>>ubsߥ ɲv]"Uϧxڝ#SZh\.dE6IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuixh_c_3x.png0000644000175000017500000000157014212620632022003 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxQNP t} x⺄V--¸3JV0?F7~n5=NádG7{߮э]o^vk;^A cs46?u.rxU =t0 MKH nW'3i>XEV6ʶ]8w ٞ0@g=y +/⼩' ;G0:멁v` tS 51A\O kch@q=5Юzj]#@F0:멁v` tS 51A\O kch@q=5Юzj]#@F0> Lnnwf8&ܻPɴs{CC7]׽B->kҿ_h\d,ы\Ey@ t@Q:"2t4EEeh@ .(*CG]$PTH  t@Q:"2t4EEeh@ .(*Vq_l y]WG,ck~=g>*]Fyd*{W5D|OW=`.ps#U֣qԬGdx Sa=:v$K-IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuixh_d_3x.png0000644000175000017500000000057014212620632022003 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx!0 @Q7C9*h% ^l  @ @ @ @ @ @ @@w}g)zv^uBͲ!3UMi @ @ @ @ @ @ @, $@IENDB`kylin-video-3.1.3/src/resource/ico/menubar/aaaa_b_3x.png0000644000175000017500000000231614212620632021515 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|8IDATx흱n0` Y::xoХ3uEA=CЌbj*UE< O-?:ȼ9=X!jz>/Ld/7/e sn) $llʶ'Jnj"gp3Aӌ@e .]`{D:"{iDB@!>6!( ZR*( ZR*(S}||ܹ;[.Wy~ Z _Սsqqz2|zsحV+>n2eN@Ce?cC͍=غ=bq~yyCtOC:Q S4X# /b`0 Fտ$GS|3-.zH( +"4hlvEfLYhp_n嵖]ѣ%7X"jsMw/8 t,d<+X's Ƌ]p}-x'9@Q>T }yor棃3Ä>o !( cyzƓrJV7?$Rn+[O#U)a@@@@@@@@& ,I\IENDB`kylin-video-3.1.3/src/resource/ico/menubar/aaaa_d_3x.png0000644000175000017500000000157014212620632021520 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx=N#AFml# I |  Z-J*|hOlA @ @ @ @uK~-kZ"/|SCKc\/&pu:/?!erdȻLO3MOeK-WҼ[,WFњnO\ ijn[ӏUm>ܖѠ͵ Bfc}3ɮmkc]{tm8YÞ3ps?_*VH1tґ2r )F3(]`cyap4H u~40XPcv2ѠÊWi m*EA AЀ"t0d4lFo}& ZTp7{E{t2}S&d{Zjj-P\'竜a Idtk퇿8 ݩ/a:V ~J[hocV( :/ evϵMD [eM}MҴLS"HAk X?EU賒}srXC3:MQ2b#}&>ٝ/9z=ڵ#{ @ @ @ @##o镠|SIENDB`kylin-video-3.1.3/src/resource/ico/menubar/mini_a_3x.png0000644000175000017500000000136014212620632021563 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|ZIDATxOj1qoq\hzB``D&ɛ?~a:0(          vBuUUmayJx],g\ͺkF ',MH~Cv,k{by> wQr6OzS9b؋2-w%V2ۧ*:~Xߛ/Cnhk=]sn"W{3G;N_@]9 È:H ( #zПngKf;ѯSnIƏ/:/9}6lNUnr,TNC[%~4]Mm]%<sl d ]&mJž0M~4F4 ]-#        $ IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuidah_b_3x.png0000644000175000017500000000201614212620632022113 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|xIDATx1nAYCR@QФ)D"] "Eir Q(0ͼ ?î~iWo;.ulprVb#PE_4262>"[FIlc@AKsOG%G2R'u(-$$9ZIH2r@dh& M"@Ib@nۘ:fx<G5웵Yu΅OutQ+[ k3ǚL@@ 4IFh-$$9ZIH2r@dh& M"@D$#G 4IFhu!ڬzOs7>HE 7fթf:>4mQ!p{.˵!1F:)aJGF8njژ37 :ڈO+ PPI7KD$#G 4IFh-$$9ZIH2r@dh"h3%P G8OK 2Fq `k{ "}#yz߿"kv}ɻsgp"S,w22wa8t(QpSnLta6oU~V (FIENDB`kylin-video-3.1.3/src/resource/ico/menubar/mini_c_3x.png0000644000175000017500000000254214212620632021570 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxkSAǛ4E,ɹM BC!7 ފ7E "mJ٤}6k͛雁u'owg}2nDv=rMC*ĺ^KT.h ? 4^ҭ.AEߩ rmHM]G"Xa۠M$6#gRHF * h<4' l5׷ DD#Rмa@:1\j&W6F]A3µM+hڦMQWЌpm ڦ+hFim`4#\۴i0 mZA4u6m@\yTߵZ oL,oiиygnnn-b0d/,,|ىA4 g7t?*ҰES~t2EؗjT*bkӈhD#ONOO? ƋZkE~RBp|ffS˸(hz(O$(d2H!bRTK8l4d2yOʹh isc.U>i.)#x}37|ltzTshI/-(h-D@ȍFf# 󿑋Zjx;#ݹuY-r-MAwXjc:%iŭ@~a~{dO 8T*baFKEo4"n8_S֦=;ܐ90+fζ6ihkc*hMA+h!Bn4!74@ׯ= hDӦxQEA5Pgggc|kQдDkۀ=p mZQH#J<Z]+hD%cl\"S$z߾<#|>Yz@~Ko# #_ZZZz5d,o]us;L1dyH"z]AsvWо)hG`/9q owKqv]AsvWо)hG`/9q owQq*}H8^~ТIXA|h9/`1A*S=:kj\ۇGBlÞ}NRip 3 4TlPq'`E$C^0dIM%47qնYGt@Jپ{@IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuidah_c_3x.png0000644000175000017500000000220514212620632022114 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx흱1wH"ХKB@Hx$(x.=5=u+$r ._ae۝ b,{?sJqtfP>kp#>w){-[EzǥVN;Xo.]4UӮ!ug.n BDVo}$6`mN#~qpD2Z`sr`8.@CKIкz ZyH V+M5I%2A+•-i( Z&hICLЊp4AKeV+ ZP,"\)MВbJi4WJX+nl=m4?l6_`vZMfEzSvEwM/:KfQ|4/t:}_7W}V{L#z.|1Ue~>F%A=&h#FnmD #aD#7h6"`MF0 ڈF4A0rÈ&h#FnmD #?)K >i~0/[ҧ싅S؟b/\e>}w^Xi[¸mWQ mGL&ϱ?YT}F'Z8hNbX'X :$tMJ`CY(]PC"J6%萈5A+ e :$tMJ`CY(]PC"J6hG%pЗYKsN÷tB6SИ:8wmm:u`8Ҫ%`=o<Aаo=yNip S޾:^FFHpƞZqVD2$`j*fXj) n$:HMfk` Zb ز:IENDB`kylin-video-3.1.3/src/resource/ico/menubar/guanbi_a_3x.png0000644000175000017500000000130714212620632022075 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|1IDATx=N0 $f:0!q$C, c1@**+ ҫ7_@N&4@@@@@@@@@@*X,7Uǵ]ثhk nj]\}ktu5}ŋG\[ucgm۝>y xxUV95ݬ+cJc@w w rdd f\l3pCbX [g'?o6lLeVZexUڴl.TznWJ@ "c[H0 kr]/^/ 7~~`/WǷ>F谶/1Tj+ef["#"4ؖ"4ؖ%Evi-ȥ]lKl. %k!jrB8R|(#.V'Om;.Uu4ŗ"*FPv" R8=Ї^qQ/#         J=jzנIENDB`kylin-video-3.1.3/src/resource/ico/menubar/guanbi_c_3x.png0000644000175000017500000000260114212620632022075 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx1OA7 ^N9  0ւ`1RhD@7 BcK&Xjcb be, ޱr wǰ{̮o ;f~7"M3??$AJ] .qI Ú'Kwv[}e*ћs[p8l>g;/!{z͏Jllii{@~r{+;̑@++o#5nlaaad0]XPJ3xdG8'7/\iJ֫eы7>AN㖹xǖT\]dFLu2|w1u 2la`22T rPz6X3>I9 o9Ɛ&waa,!XpFhKȈhKȈhKȈhKȈhKȈhKȈhKȈhKŒZ <)A?}J:s*5?U2ꜜ:F.\ w~dbj T>C@݈XQL"9nAߣ ws2F $Dl 4~u/_R<9b8múF/^=c! Gd)il_637Ч+atV { H5?o)hSL}Y[L0q||RwFaGiu^h. ޻(2=4 w|,NѶ]SQ|֭\R{ޫϟRwe)-EmU\] W#16}^&oGq8_zS:E: r΂\4loA.ЧA. shEv mwlgy >n>Qw^g#&v@W*pAd<ԋ $g7G\!|q wws:{*33Z?ʝAנwr(+_1'1uU N`@U%:ymSW@t AL]U1'1uU N`@U%:ymSW@t a1!l`)bc辕J9:wզXLa|]Gl`eI,3YJ8򝼱^y8ܾgm,Csۃ3;azC`%Qg',XI3_&)q:'jd}Cl/*ū;y W#)a3ug,ޭ<⍆eȰIENDB`kylin-video-3.1.3/src/resource/ico/menubar/guanbi_b_3x.png0000644000175000017500000000254114212620632022077 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx=OAgV v _F !1CCO`{  5 ЂpoX>w3vYn3J~fW5=6gKf"ˍ#-Pkk8Ť߽䍏W.OJ ۋN>7 ;Cٟ;_~_5aaz2g˽A޳ 4d}x#=:dfǘmz/N|\.LaR p(WvrjDu WBsd:0E2>s@Tq֛U/%9xV}I)a)0C]XfLNl #m1s/ЎpV1@;h[1g[Lm #m1s/ЎpV1@;h[1g[Lm_u,7r1Bt&ϟ fgIݹC'OJG3B''I-/j1L,#ŁF7UYFji6@ԍH&&ǎ@ћ{]D嘱R4h:8 {2BX)4Z;Ad45.t؉"]v@8rZЮ @N!iBWnrЗa7 Q'^JNVWIQnZ'0'd^rФahbK`Ok|O#5cݻvCZXsjNCO|0xW3p^];Po9?Pi5=g3|ZZ]̍aȸ954ː7 ;=* N a@ 7; Q`Dž9qx>Ǝ[g g|ԕ]gsL1R<Ͽ9,`!Ż?3C45ECtt׮fXCjsx3hpF@ugX:@ t @aG t @aG t @aG t @aG t @aG t @aG t @a2~@I(c V*UB_[[lc+XqfVeZjX {6wʒ-l`8TIuҘ֟=b%I~`lzΉI=aÅeRӳyN~kΘZX Kk,>\{,nIENDB`kylin-video-3.1.3/src/resource/ico/menubar/caidan_c_3x.png0000644000175000017500000000157014212620632022053 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxQn@EEE<$|ܠ}p!y( mtˠϷdeMgGJfæW7zG|æd&n6B}g=-5v p_65i8MlBl.}UۯgVm{qionW%ӖX Zo|"+Le;^I i4ٞ5j.nG|x\V`:ⲡ@} qshFaBQ7:k.͡} qshFaBQ7:k.͡} qshFaBQQ{6~nIn~ aobφ= V v v:>1_\M]Zrv%5&v6 P@LihM40Awː{3̽pa:@m06 P@Lih4:L0Aw:a:kKӭ^xhM4T4&S*h)  I$`JCEm06 P@LiTZ*V+p/'K\e;A;a`2sGhM-rɽ,Bed*۟kţvUa%Q)^^'KS]_&s`>*paTGdxS'%tZ;iZnmrK`SLyIENDB`kylin-video-3.1.3/src/resource/ico/menubar/caidan_a_3x.png0000644000175000017500000000061714212620632022052 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx10 @Ѥ3=v.ЫBAHU_$ &x\C @ @ @ @ @~Ab3ZmM^$Z3y3gwbF!@ @{oînv7 @]Gҥu$AGƮ#Z @ @ @ @ @`{J$IENDB`kylin-video-3.1.3/src/resource/ico/menubar/guanbi_d_3x.png0000644000175000017500000000154014212620632022077 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxAJA$$ A"z .hD\dk;@NTITLO+7<{7==           d2y!P QP!~{q)';ő >Tr=o)*T9,弲E/EGT;lNKL6"st cY Jl(~ V-'csZQhol6"S%K8NݜF61Ӷ^gtDl9F FzcvM vZ{XIE츷 d+c싸a_*uFc/¯pwR s!7. 0}57RÙD"4v ݆diTFW)S;ikv=+rMn"ׂz^C(tȞA-CoU7E|{ 4+"q|hF2 wgQ, =`ˡV|:#         U :G륺pIENDB`kylin-video-3.1.3/src/resource/ico/menubar/mini_d_3x.png0000644000175000017500000000152614212620632021572 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx۱JcAq 3hX[hgXZX6֖>"] h!(d oPfN`ܛsf~:NMQ@@@@@@@@@D5qt9T:Z*Uz)dX̑@ yUU]Tq NC{VhP\Gv4ʹ+;)C [F~QU#  b[k`} +˙A6Oj_bm4}ڗ]}t%KeEFCD. t@Pf4KT <3ZoֆL$K+VC$P`OKntvu[u]n}~د7ZF޿䳯k f[M8aku9Kx}kҌ-Վ椖tl4 zR 4h06/i?6zFۮN/+~0 m4]uGzxDm/aM2Ԁj{l_qnglkPǪ>qZOn{9Kx} 9ftoi@@@@@@@@@/o=1IENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuixh_a_3x.png0000644000175000017500000000056414212620632022003 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx!0 @ \ yD1IR  @ @ @ @ @ @ @ +Z[cج5VǙ{ŧ(ιrZ擛-+[i @ @ @ @ @ @ @,p~'%y IENDB`kylin-video-3.1.3/src/resource/ico/menubar/说明.png0000644000175000017500000002324314212620632024145 0ustar fengfengPNG  IHDRWsRGBDeXIfMM*i{& IDATxܶօ4efN۔9efi_!ezeff4mSn I)?u:\hfL-mY:G=z5IB@t3=B@IB@D)jP&B@g@! @@E5(B@! B3 Q B ! !B@(!EQ ʄB@ ! @eB! DHzB DHQT2!"$=B@!"(AB@! RՠL! IπB@D)jP&B@g@! @@E5(B@! B3 Q B ! !B@(!EQ ʄB@ ! @eB! DHzB DHQT2!"$=B@.BgϞnF(uqTVNԫ *e}]^q?c|n6sk1&]1vp ? ;[o0F#0< 'ݷ駟ܠAJꪫs駻K.Ý;MƒHYdEܣ>V_}u;dm*ۿKe]+͏hR 2trҦ7( /N>d7宻6hc _xHCjyW_s[:9|қo8 ^{9z7|{wۜ6/ /Эjy=UVYŽm҆M~7[ղ{gKN'YSlV:jJ'&lR!.5 iGb+jw1ts'0یn/wY {-Aj믿~l0cIe|O>åc1:iH(j%;1fku=zp%gy&!uBuF0`cгѭ}m^/ :3 omN6^D#?wx<޼ m٦jZiHU j;M:[]% -y&y/`nh Vk4CzRki)4,F/{_Idp>lszdw~tQG(J4dc:dwnwyn&*<=pGVv]g2vgev;餓&ot"V.3Snlnth3Gu*!GN i!بqA 婧rW^ye+wqRh`Ͻv FqɜEfY(:dz.Ԃ:|{/<:;oS ii9L2$s oʽUM'y7܌3XԚkp6khJą^tAo;T&hrC24ZsI}dMg,:7}5it iheud} &eq饗z3^Q<N+G >+y`U"y="Hn+r+:S2c%'2AUg[2 G]'IҺ̇3 0Έ0ֹ馛V]kdɫ[n%owVZɅD:Qm-JSQ'!,#W "ђ,oj!OBi0~ڼ_yO6#H#ᆱ\FQa5SWE#?Jk @;?y =b9> "o ݨnfY)2T!ދt~!$! c)NMc=*Zڜz3 ÓZ\(Yg1IL}b22tU0Kd@ۧe#!}~f~R ÌL[]BG,lo<ܾZ3֌T $Kʳ¹뮻nvwzfVH$!M?{|Ñ A.QuW\ =ͬXЧ~ZsF $[o.WXw dD.p 3`"f6_|-d\8$0Wx#{zKFHHZ7#(e$_|m5 lHVwq@}mskk-{饗馛\~*lLvؘmwr9\(VXAf *GUf ɖvC9M̽+qd f6 yɳT]d 4j0Ԛ+ێN{xbJL~Ɣ\#u%p])8)![%Zd{W}9ն$$|lyܣq@CbRPz_AEy 7%XO68-s'_BX!> Ya'S8$kf3}mBB+LB =wL%@-?߭oY>G!LY%=7Hs5$"h*6#O e< \]S. ~{aVd`x.zS ss),}##|%KM"8ю5\?Ѷx!$:dtʶ0Xce6)0O".=[y ݤ+6eDLTP/9lL 'b/@-.BB|t3» o:$8fR'XVpy ʯ3:!2dHˁD`Ʊ6є0& =~.<,N6aAh;1$ڶ A.hlJ-&#vB˼ps'. 3 g g]/՛'IH4S}y)$ s&ZR r!&%lvfx)`>a\> FOA{  \+sݵNêa^ yBy{xI4n4vf`y<8gT;ѥpоǬ,&m;&('ZeE M.[+/IBdMcÝr}A[!3A~Yhր6h#bsܝzެgeAqWԋ!y !> m&z1޲>>ᒩ,YqF̓aaߓ5߆iܙ#t g1wfY`Z.4?#>̻r9Ŏ:zf?ǿÚ?,PDZ3cM|A4$D1ѫaAZ"N"-yy uV\1_b4D4!4+0=P>\KՉk:OF&U%?xh:r0Ѥ#C>}h(DS|PlSH}ٸ,,hSH޽Ä1a2x:jMGҴ0B;u=՝=֓OKIy.hTh+oEȔs@R`y 'PV3n)ӄo 8;ZBn7Rg/2*M J1!fjȄvRFЬ0 p<"EH\L[ N!Ti E{k3 1?0!`^C0C@|dDoLyV6^xTjógnРAvj%Bhbf&,uҿ 85t /{uTMY 9sɞXX=Qa: aK:N0scya(|vRVE.[A(n݌W@ vEYP鄀B9Hˮ9FB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj1! @ZҪoV!-"hFB@)Vi" Bj|+Rh_~KB#:7.sL)!?~C2j*7tІO7Bu!hBKvm)V@!гgO{/}wꪫ.̧]guܣ>Zl=zdwս=lذiDHZs5;:~em~.#hQGZR_?j@^<mnM7u/pe]?x lF<6pI'&"y7ܔSNYtM6d7sBR3^v -P}WUtMn7F[[ύ6h0W_}uuDg7餓|L=vo+@5\Gy;*Dz+<DT#ڮ6F5S1n饗v p?SHpᇻ;ԭR'*(@Oz뭎^~w$|xH#.Q>Kx`%k]w_vo ]xᅕ󪭼Ϯ$[lscSb)s= %hw~a?ɠ# zwٍ=sYgUMkU=B+AMr u &h;_7"`lh᳏h-[l1R)m&UU=ZBy!$:Zu\AօnϞ6pCgN8O<><{~}=t#8_ׯ_C%$mLMאxw=[]z-wE9j3ϴ9lmvv-fa+N{;s 46 E; 2,_N ;/7{1袋:ۏsÌ3x@X>fi1{)>c[cE}Ԯmw-wU5(Ժ .CƌhÌc|;,’9tr8q g}{vrkHfuVxs~,#wO\⋪f8zW)~;O^xʒ:^{Uv386lBp{^wu }f,x~R%jcE/ 3<ӏ%SNtH mƉogoN=T+Dž(g߾}5#_+b=4}VZ:QWAu,r~}kH ݳO;^/ôPlΜXc\?{!{^K ,p6w0vp1O5"/;Hͬ ]ѩyNL#xrb,Zk]-_~?}ݽs㥗^ziՀrC"vWە^^qܔ␒$$4 sƥr^Oyg' EHMt әƤ駟:> tiOxrS_eKh4ɄXL,{{dmFHZ{)I*ɹ瞛KFG =ltzQp |Zղ.[BiS߿ m٦MziVi$/[j<2f4L3yr"G&,$qB$<$;ry}G!u1o2C6IRFoHI8s~&ʊY~GeOS&DިȐ!CK6;"thpIse~:bi ;,H h$g36(\8ϮQ{zŽ믿^x7|ӿT^AGG4{g&pBvqn:;nuDGücCh!+'K x1 Y(^.IkVOa‡b 6DaCJhؘJdrpжS.4|OjpgkuaI&X2Q`_"ǾЬOG:8@ظSQhq?մ(UMxq2Q-fEB2ZY$$.NÀ0U!e{Owm//b+r-BolXPY1C]. 93`cELes1; cO=PqVƣPqjڷ뮻VfMgեg0|4,mE.vء<ӈY1X fm yӮ VXaG#Ŧϒ-q{k9Z=M}~^Ryօlfv_I~qj@I<zƛ~뇙O>wΖ8<AHhSLV$!eBL ÂL<!DS'0}:Ж  yϣj8\޻:yGÓ<{olhت"Bj՚U@,䀢] B*! @$vB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@!W'ʑB IDHIV -R|u ! D@dB@D{IIENDB`kylin-video-3.1.3/src/resource/ico/menubar/mini_b_3x.png0000644000175000017500000000244014212620632021564 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATx흿OAǹC~DM*Bb!6boEH4&"Uj1XPhM, ʝﻷ7w1\lnxF4rzV7p<$)' 8|zف#QL6!D9FnZ`F.f$G(L#4R% -@)$Z;^rhGû59'AQ @ Ⴀ ZF4A+PrÈ&h%JnD@ #(aDwЋkڣzhT*U/Tz 6/ QTnOLLrW:d^ȍjzT*}E7YxQV(ޡ%[[[w'ZUS@jɴjۧeJ/FDюYikjDk|;BD@ #/ n~\De>sѭ2Ѻx["h+5gggvwwWu|%f<59pFFFP> FGG{pTL hD举Wdcq~I /8 59ZFHe-!e-!e-!ڠŬM; *h@eYUA{ulll^n*^./%7UFO|mZYH#J|v%_@Ҿqlua}` qw|AcBtC ҕ\FDQ577Lb{+{*{)WKD A3 h/lJK+;3/ D̼4 A3 h/lJK+;3/ c(a 4:,`c=gQ8@DtXȰc;l<@O&Ԛf/_{%G=|!HN;>HN n$ /wӽilC2h3cO/C2% nHpjIENDB`kylin-video-3.1.3/src/resource/ico/menubar/zuidah_a_3x.png0000644000175000017500000000107014212620632022111 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|IDATxm@P.h.7j9 TB.9,n [vJ+o<8` @ @ @ @ @TTZVsՙ;НUZ"{}U`wU\uŹzl䎪ߓcۮ~c\poN~.Ǹ=TW8ju>E,СtH AB1:tH AB1:tH AB1:tH AB1:tH AB1:zߣ:__׿~2_J>gr9K*?S]cM@wFkyFz|t  @ @ @ @ %_W]LgIENDB`kylin-video-3.1.3/src/resource/ico/menubar/aaaa_c_3x.png0000644000175000017500000000241014212620632021511 0ustar fengfengPNG  IHDRZZ8AsRGBDeXIfMM*iZZI|rIDATx1o1$5[RT `ݺ!0033G[ "RlٟȽ,|s_|ݺ9uD~;{eF|ibȗviiwLm9r Sk@eL1? }`26,a0ViK֒9alO#d47f >q!C L6]q]N}X4]]lsÞ`@>ub\iI{,q( Z&hIC1OЊp4AKyV+ ZP"\)MВbJi4WJ'hER% -E ~ߚNv:{F,Wrѻ|tkiwgh@~2@} ma.[,cmˮEc'''0F4 tm/Yvb΢,.Zbm[-y1 ^_#{N#E|X'ACSj>EV, HSU;ZMNt*qX\vQ3rm-zIusF/FԢwEYt\,§Ԗ}hĮtNiA.}ԉ<GNtH -H -HMc-D54x<~bbAk{8PjJh fF`iXt<C+.AiJ>t<C+.AiJ>4c%p^N4^yx2lsИ:ОeS԰}'6:dKL^{&E> 1`zr,L!@&<|3?2  ` dHlA/]pX7"xdCy_vDY[IENDB`kylin-video-3.1.3/src/resource/ico/0.5X-h.png0000644000175000017500000000233714212620632017150 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIIDATX [M[-xsnQDn8<%D)Pr/QDNEj~y/^E:G܋?o7\s5ϓc~|s1sF*@y~ȕrQ~p9Uі,j2ߕ)'ZBے\G7s%`/4\#V~@Y|iY<%y/M3ZT(iMe#3Ȟ]^n q0l1 x/yRl3rnυxGDn*SoةɁd)Н0bx41fZ<2^ڛ70z奝wKq(_K3Ǐ]x>cl ]VWKf^ r6n~ o ?xp$_yR HBω]Q1^}9P Z_|zcc%?ӫ |x&:߮rxO9Z ӛ\ȯY:7>?9sG3-^LSÍ$~?GCZb>ް@|߰TYX -lɝI<@? M3 wI}{1|rLpCVnru/Ś'L7)T+cɭ-h<9(y-HbU &:l7+;[`U^ _Z/¬_/n)6+.EҊ ZJ'cZO/ӘeE_ ?9 hKxRNNEO8="]|1 qf.B:E_o7ˀ7hvZZiiXuE-zM4m}}5$9=-l5+ e*%kSl(~t֤ iCR#ͳxOo /yp | 3|5y  Tg<;i*@y3P{< iIENDB`kylin-video-3.1.3/src/resource/ico/icon-restore-d.png0000644000175000017500000000061414212620632021117 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX U 0 lXyu1#;tpFd&m'H(Jwi׵pr X?p~'r䜀3p `=_| !Ul%'1[zx4/@{i;sw`9 )@Ax<7VPU9Xϫ@9`gJ59]-ʎd_X;F8Pkő^++UOb7ހND b.v9Ʀ[2 +1 Ll5h+p|ɟ-hRy~fi+ +V5+ m;] 8Y_yq-QY)3mFLN6cӍB;! .Sv5fXv=byy; u@-@F}[Ut-$P]Iǽ]zX`KLE *;ۙ.1RY( ҽ#*Iw훏nՔv5J;s&1gbu+fw,ufYc+ҮedIʂٹVsȫC";YF#G4*Gn'ڴQ>t/GQ((Q/BUӍ`D7fjVB –!}AަM%@?!5WDZKXyc2HcSW(C5ԸDZ6iFb$~%vlif%jlҟnnZjAU黛;R񮵱.vmcj<pd/` qM%un@kiZQ5`*+3 ,ޓWnxZGlV`FD!GÙٌpAgc=e{>]Io<̫zM(iE`MT# BŸD.B('hdj@ۺOB^0_w,*5ۘq԰7?7twhE_Cw)v=tn0pD0k0F`A2PtP~׈++@6$xsJӺ/O{4]{Ǧ'۝葕ifp<[Fa$IZ,١9vƶ-cGfKa 4v h5tUZh*8ROT3r}3Vo^ظh=4q jý\ypԈ#7{^% )yrEĂVߎ cRyzumjbc{> t?_h/yI4qԸ$`Q<߆:M'?&ZuƝ.w܀9l4gK^0pqgN[Fu)nL k82T3VcfB7%0D"mXfsrHu#r׻!KMV7~1_`{rI/iNgʡ @/ T!NVRAGi5iVc+Ka Z1t݊fG YEw`0O֪ ~qidz7IǽͮG@&2EL[펃<[LZ 3Oapy % &1YQ¨a?k2I|cS[Gn4 j;mm G~ݞ;TDۮdIqyپLcE\*/%dtk`Z pQ-d/~QZ;ӟOџa]k[$ssVvOmLX^ԭ2SLT"?X̵Y\b̊qn,bWʛR?J|O58]~=  d:Zy}sOU|[4V֝uvE# fg Q3T`\Gv!9Zd&YuI~c|*;׍*c{PŚjJ|ZmS6 gӘ5v0ymvјZYuMagWb̬'Z^bjAصd:H8UKeЈ@ w43c/6Gv,-3Q&WjY[,>Ĥ R[-G?nQ=2b2fsNÚ6L{WӼ_{*f[o>3JjK͙zTPX#tNtP$P<ǔ$+z(a2l皣P;~n[~䯦W/R۪3Ͱ6G'oI#D&*;:k!فF'gA|=6z[*t۱) n5 ˶$@COg] Oi<0So tWUuLṈYx^a:YkLڸ mS@+Qw-p@{3)n90o~lnIvcbS80 @`ằObZZjBWV%SW6IR+12=!TJt6 ͣl2 ef ?m^R{o)GvQ5yaRkZZ:$na i^&9Ne#Kɦ^:,(Θ^ML)?$Y (Р($ ;5J=EF}5KgYeoם]A'X#DzkpyJ\avFbwG~dr%4I?gl/G/G%. GTjk"sI4P *BYQXqPcNU["l 0Y]S*[nZ*1=3K :ʦȺ(m1YLcOb\F$px!`m[ փ1geԀz'T<-IfgwQȮyLu/z0t\l6z|}); b+u/1u:|$ c][s\3"hjKSD>Pe;ZOʒ8 #O2k#{Cp,CWtC#au.M;I ɇZIDF'eOT܍\#?҂ŎO ƾ@7H/YJLت:NVƢ,;3JF^[yLzBe%XlAr~@bjuC ukORQж*kEZJxJ&+%il.\? nQMw{& P#2MvPn覼ϧUQR;p膶5Bп3~jzWeUCYq߂ȏJJcrmX9 u5]˪^[e19ݿ/fi;dv !YinHf,j.#5Ňont)RPMFwBċܠ C30zle츳rY,CmȢ1ݲV`.LA H:"(쎎6vv5z^k֍iC1c݈|^'^YpeC|x TV6JL*<4rc-(KqwYHTm\N:"ޒ/D?+b%4 9ǯX$rALijRN Ѻq;m}=eOd%l\ffsS=f*LUohxyaΆU'i\XJn*D9E+R`TǶ}UAšQX5=QBo I vi:HN˔aMm#+~knH'>/Kt2Zr٦i˩@`9FnQ1v:%휑_nZ>ݬڦGE{LlF  jD'#sMz@8Mu0 WtmR:;ԶXum-xps$mrK^ $a ۴0zOYw>K6s$J[P[OA@ h#Vyʅ|h:W[Y)46`I ^t2k9;"PU{jEV]tYy5#g峞e4;%B-}13g&:xWZS5SKU f4bBdD*I+!iI])#MyȎ'b9!Cv2 ߾&eȯΈOO z6])APVQFvTpYt1d!i -Pо]sDv @"UꨦrdB\N$1]^̯,;rmw{f+%R},7dVMG۫F%[9DH2|3I; 1)I*x퐎e]Q椁^7\"ĕԥŹFu\i8"΍ Ir&]eYnEU 7TMQGW?idI-U MC!G3np*3VJWw_"7q Z^ض-eb[_7 ;lQӑ"&2?=v>rNd.咳$DMWR;%`aұІm՚-g ݲ,OJMδM")E6sk=gp 5uf99kb52"%d\*I5ki{ 7ɾjYfK@ $_3ص J!`Ƒ9(bZDl$wL#u;iwLڬ|3 0oeg{cJV'?{#SD)J$$ҒD/tO{֞i]*$s.8Ee{\BX:0X  oN!(5N3Q]~|g\_Rb֤vpKx&K#K }93C;LB+jA-_'@g"XͲ+a"l +Car4 0؎a @E'4R7DQbg4/blAүdž!ծm) ,cc sNfS]\P?dOaHyt xLi !=,# fiQ'aM?jw !ȇ~B%*T7f2et<\$J\O>+m,%QX hȞ; }(q tŃX4_6pH6v!6T=8)JDX!G-riԁFtRv7sr ^{!; &P7y6Fw KE}Q_Z0ՌBrÀ$X0@ /^Z)lUfn Rrٔ;ja;:u.v١Ct! ObF}+HHDR~^ngkS$awn +XtA8! gjQhd[@sj:H}2%#XO|ײ)H'{*b?m_3R;AP ) HUFZC*nTۏ҃`!/Įrn˧Ԣ 9aM О ."ƅEt԰ 1I^}iÍVOfZh fG4q hvuc ^g95  t밍EQ~}5elvkQ+}AFUjU9ըUvTSuυhsZ3qhs 1iK6U4c3>#SU_ bBϼPM&?pKFh( v0TǠa%#^7vpF#hTs]#qai `i6b2mxC{/+jQ~HA=,VQ^^F@B8QH8~/kznEJ8A;ĂId9 H%ȁʬm;{d݈<&!0ќBOyxR=5Qz k# 0p]Pq RP+k}Gh`畤) 9&&-4KA $bkLeʶoF:.o#[ Ī}PzƐQwU9g [Xz]3g)NT`Q>,}n0de}v2AA_ m{f$28ɒ_OxtéMզgsӴMը7w>8;|A1m8t1GJ=R ٦hk*~*MҥmBR ^[[GV`)Cof~ժ֧.P{?wt:L1iQ3;xdӏpؑ!,MIirfnCaJW<.¼4wi>pM&/ts,K3p@jpw e5҇7׸dVaeO@DQRwI~0>yc*n解omAE  #Lb7TIQgj o.LHovB_4pC*_\8@#1;;SӫHiOLJ~epf.:v.V)Azؙp/9 Hl"dIsM`ںw$.>9d-|OY~)M@*Z=r蒸T/,]8A}8B]I7M-p]j1 7탈4߿eX[?WUHlE&tWQRZIʋz~>0, Qbn{PxE OGynTg -7I[dkS+NB5-fjCƽQw Hf㋊$]; ``Y5nw\6boR"mxX!`H&Qȣ4Ou>ᙐ?ؖE;GF8ۘ ljTΚť\#Y&I͛{rd]#:׋)*+LBgڢ#{ٻ;lIdПTd:ʦI?-s{xz_ZO LV)k%U!NJjd~5>"#qpQ616x0p;Z^FpH?k;CRW䷱ނ^Yr*%ZJs1%4< FɃzw;yDyXJD L~)9 lܝpS,nAe."JfvuPP3Qa)zOD[*~ݻ: $gJEy41L3kVRMnՍ4vA;D!~AS y栍)k Z>fkBOjrfB5ohAVR(3N: e&"AP#R|E5]Ч! EHabg"#zd< 8nacEmoITIQ3Mȡ 'U_T7\o>'0L4_Gzp)]E}`]ЮzJ؄Ć;@-VդB6'dQ5j$?[aЉ4>Q4y `RϩgnC=*M LU ӡ=wH/ wLȉ`k!c(]^zm$HB:QcqaI \"wcg&dzi‹>o+v;7R.䦏!$TT*սJB,F1B-̐C"yyXBhѢ A鲲sNz֪3b~M"lla^ЦPb3C`Q/ U%f1fO)[FŐXKC% Iua:k7̞g^~SUR/"{?pMпl<7Swnz7޿9 vƢ~dDKZKwv'{Q]=1LPrM.ʘ+r}S pxa%s?lNIheDf0j8->bryӉ "\~5bg]WuD RXk잹M{ v{%s-LZgr^\Yɠf.8/CT $^+.׿?4*ϛd;$+j~eq{g'VLA ׌(fDTs:X=o u/J|Ϋu%h{JHeh&E1I4R4VH5.MG73}}sI h~~o+mLrHXZ~'\_CoWiWg/gan¼q1FfȔ1Ybr2-jDaW@ HW5|+nGUWS7V8 UC32m V'XJyG䝞a1S+JV~?W v>Gtܩ+/=O~Ǿs廧禫7d}S_ϵ:=ӍZX&lm>8}Od7h]Zٹ3XtZ#@Ar#y2©1q<[^]w5VI* pҗpG}bneGе"ttֵ7pdQ_sE*:j1o ]B Yj5ZOAj4:%EL 3_:p91~@rCMGb VPMڽm+U2/җ+Dn&I>#?9=r9Y|OY'Tnp}9WI{{(wӏKW뚟|^nM9ѹstcٵ~|PNFv F+[n9o-'1|QHxX Hn;~>A B.﮿f^߅=wi8/>{gZw<O}+"a nz̫ET>#-H`Xuqny}#wXr|齡 U0VD"jDzcnV\#ST(}PEu|>|չ4bg}i`ɚMlgpQ+$BefUV̧v,L).A/mG* lz뒗jT2MO;)O+ H'_pH2ռKfey[$ż:@lH܌/`GslUPUZֽu\wwGا[dL}66O^l|4['_Oyw-;3+^xw%yg7FƟ(` Qf?ۯQB  u(fE劣 hIwRҜl4 ^8]m}NUy8?n|D"m(n|'r?CS9u~O15ʃ?1\Ssz8vd (0w;`tB&(/xA*ym P!ci³B)]Ƚϟ e2M+[7"ի/ N/?\a;W۷8vGoz;lF<>.i^սPIer1ahrO[^J';2tS.ӏ NMg$Xa1y;REyHj0cQ 09<9FYƟ$EꭢNJۊ8h]?|?^ïZ~`IeRӜW0o^[66 _+S[]r8% j=?emHEF'qa8ڋ)X8ꑩ D tOz`wIA5Fyrb;p qȡ8E.ow7E]K"yʚF[Tft@pW epgNN p Co4m[_#&-(\'C&L;N21O]]hk*=UQ.#HQ-yњh!e >քGޚ>o)-ݕD-}!`r&1g:G.2*\b)oJ*̺Xb°`;dB5 ?U_j"畘76rJs)WWeϸy|N_G>d^r=Goz5˫rX^vMs fkTFq5zZ|ǵ3C3 C =(z[|0o{glUT@}y5xTXI$o;3=s_x}?ӟ.3[o~Ox%>˚_G>Ӎ}3/ɫ//}Ŋ ;Df&3JCs ɢr)yV@I :u2Iiyi5Tڠ)&"sÞ]rWٛr2A[+<˟6Mܪ{ίUUÝ^Nihc62hW3TJgsyy73 Z0\V:w|j=\o: f۪Wy_bg:=qEoxҡv| yRzX2vze:X Jm=ՊjA$&!1[ C +8zE7{ڳy)lK_7|3x䑢ʤ#/|^l(9ɷ:Q+eQ8}&\uXND1?'ȸuilD9;+˻9rd2]4f6Ei~1]TWM.IK5|3Egy)!"dK>R66n>[o;Gw_~象W?{o+^@;@x6|G}NgIA1*絷QiWH!lJDe}/E=HĖ.a MXFnڗVgM[$8#rE%OhQ.tU1wzd8z{zŊ_Hd wi CɃ_棟 \Cu$/z[̫ ~,Z u}3z? 2=D 媡Ÿ;WŊZžbԂB + :l|)K-w;6J-:%rtNUTmf`܎%6hWDzgWT&b@EK5l+tzDͮAB!/ϻ6g[c >0z0:{YhvX{7R(~HV+( Պ}c{5U+PT㻯tZ22QgY/=/Y>@v鵕-<胧O  0oy4.2^&>G_60)4WgzD&HJ65¢H ϵ%Ò7m7 o<|0 :PB@y0p9OǻS\XK+K#&2DFU2$<8ڳ*y- _M^=}GC}XT"&P ʌ0"WpW?ZWX~ Yak_Z1ѡϦH"O eL0\Zdtw#YtM* aw7odx+}u׋˾vAK}ůvacg?+H#U5Hͼg1 pȯI$j48~5 y9n'mF$rX`v ;!Ous C9B۞f&Rf S\X\Rq_HHl"mg7dij.{fI)*iB^]Ftͮ~E ED(߾Gy6IDATZYKSuFE7r|^힝׿`Ϯ[9\ I=~oqiPGIkOo*<0Rgn?"O%/T}MaeC/8yoi8rl ?!&<":uq>W 7ͱ /"hu(s" V(ɯiJҵnΚ5 j tŚXoXyc+|͔{תĮ#Փ*Agtl(bJ6w/ wZe*~-H,W;,Y n[b*"~Lso>=;~ޫ80p,(>|O %O eQBSz0IvŏIŬv aؙD*:>d- $6J_D£V"_kF| - a v9_׬ $~;} Tx?oM4^AkdDK9~fo߅X{65̤ŊrefD%`o brۥ5_METD[![S4P肫tyU^зrK$,j+]q@u S-&xNb|UDYt/;U( =)%b㑽^xBuQ]vou@6܏ }0 >AO!U37S}ʥyAxRއ8sWRqmk9Ƶ:=V*5q0D Яv\mbIZZhPGǺt,w3@gĵ*n}\_(Y(MȠ;fC?11`NtG-i7tWCN"ضORY<4gMQwJZK ge-uAh֏h=Jsq{LV;$Q@^:9?~v>[3ņyIWgIsppAVEaʴ0;a "X N` eb<hWI À-لy> L4vlr;^$o$}Ho8ļHxiއ!LBI<Éd5H~#@gu[JZWW֦Rbu.PAdEyڗlv663lVih^YQ՗\$E#Q=Rdw:`N>6a)]`7ҋ!~LjNI(jv|`FI^$Q^ҵ[Q1*fZ^騥aK\XLm>en)m|[o!]b @_S1FZݜ ـ9YI^IB:nKJZR^ۥJ\Ҙ,Dz6036yBSҔ\&U2@!oM1@͇%?2XSܵVEXuevʖ f}B?%.Pe1y6.S9íE#G^ͭdx9;U^XCdhwayw[ҶU-,$F:M:Bl^NBWt~ ♿AQ3 ƸtTEJ:۱Rm'fDL +/TaG L^09CF,=LH UHg-Wn~H6(ӘNU`wKgw ђ>{~Op1\~;,Q&5+?4dQO)[hܗ[8Qה_*gm8;e,ݤdn\Hz֪3BJSZ)&WU l dӑri >ZT>x靝0kb^TIa\%7ND]ÿj1tk\Hv+*xs;i%wGXo:e<-,랡bM.iL.1 7r7TFNWpfwNürvDMwAz%z[hx9!4E.MP*Γ72]ޞqlub'SN7lDQ`t`;]K\ Par[ aar&n7dMs.F#ͪX |v˗J!! E>\UG@VD#rg8k1i{5ndE7ytT-2"oL˓mTU?Anb(!X:X[5B9Ro~]hpTs!0T =S- uGTZ}od@<`v8*Z5x.Ta]Xv+!2\~@NWJZ9SckC-ђ(z2%EH=R% 8%Ֆ_۝ +'=#/ړI2uD!@W|J&yg :wU5~HE>Ҧažp4MbˤҼ 1ŤڝtdRQDG R bU)B` =Ո;y}WШ`2+贡>u]Kv2 y:'gBSpIQ]aPN'0)ԁqǺx~(*XTDejB} v ZK~UP/*8fEIr x4v,'>FyR=CQoHQ)Ξ:1i5E1l\P@vtc]T}b:/q[<93#iw;隄 RD-JaځcNdvb BP\)ӼT/3ы°02SLsA:fbOףJi.kLbmޏi٢ڠv& FB!_O)v 7D"ځv!d'Tbn)fl=lr1مX -ͷ e+v63}Y/Pqsd>gx*x 6.Ł[(t,ZqP,) `& qͣo3Q>0B#.G^8̏2 fƖr)I !A,Jq`HJ/qIic;emyT<8F3ꃍr'Or\'6l‘w璘H鐀ȏz~it#2 6>u蚮WGh!xHp5iQѳRdkNTkI=4@W_߅ %$ub$gT$twFzuz~D|E Ȓ\ꆙWNZ @?ϳlXy3%f.m }0 afZceHsH̎)ʙ'+7F<),hvdI3}úl n!J(!?'{u$qUR' 2]WKKnӺvSyJ#⒛h_hhsL;1SohS [܋\LjŤ9wgH6H#rM(oFāFH#X @Z# E4␝>9 y}ei =6!h3 @lj\H(X-EѓaL Vt+ʖg9d$({rag?@ a]3#] C)Cz<;rD8uL*X¦߹c8,xV \^ ڍ2|3T%y<9 ?#TQ(iNw1цa#s:P1)"$+JAz Hi0ݷ5x-Pg=y1;1nb8z5 b Ix)-t|?,E:jU}aCBsdHih%tfw]$%O'өlLO.=)Qε!3Vx Б۪ feϊӲ2Wu"P4gA2u(7#4:^Zz yG鎑Wt.~$Těh2o Ԉt1\xȝ?tl* B؍Ps8Yg@eHsga<[ _u4~bY HòS)E7Ө1kMؑ`k#Y8D0:wX? v^-0Ro)P0,S9@|y;կqdmޯ!B_9EtW( fsMZiw:j久ӾבAFk3X@ _DͰc4kZHd|zЌku4: -Y#{0qEGd< ?2+BON-/qCG_;8|46@}+z룭gP`sc^쥍BEX-Eba! UIY{4S"!o/vgSC"Snrɥ'vel'h<WQfIV ^D3"jgkOF @2B*aۋ|.!,o+ + ̘;fN^|R$sw҆t,X%F̖gGa@kCl ͖bqʃR*3ZԿsjWXZLv~: :)HvPp.ULQ+j!Ef Ͱ-)n~Gd+FJAס诡eX\ iv:5'(sh޶nǿpf~t$dw%H':bͪ;X4Df ؕ/Nԧ[Up}[Ζaw$׽t=c4:ڎ"P, 9^L3D'n-=ϋME (m]"FÀ\.?j S;lYF 7ؗ~,Ȯ0ŖUkYa5&N՛ ϫN]lhP:xwo*bĻ4:=Wg+A/&8G{JؓNԣ** ćW %+GmP.}K,0]o$tU}eh/mCߧYIMץr={n,M(a0=iBm 4@ϚBY͠7O[U)I5TO^p]Eo}tcN< ? S<"?؈R9lsLE芭)Ɠ+LN2C-;%X:ub:Df>¯y[F~س7@km/m6QtP߹{taaM)!YH^h_HB-ތqgz۰i(NT0V6Bsͣg.,#Lth8ڝ)vhʘs4HM Uӑ²k$o=G~˖f&ИlU9!&2S E OHꅗVݨ- yN&B=ao?JvKw)MS\idA,vE=8p1UNݰڑF{p)Eq f]h ZH bGE9 _jF~,G=HV1uc+n:T3JAhKOv 0KM!quDgőG*qUpzeM(=5iHHQ1.$;c@ES7luID久wf]F:ƪpSտ<V#sg((_;/$ۯI…sLeHkfUwJiٽDA.JӀ4ⵑ|JȿEaτ{#5u<FjuxQ!&}dvVk!P7 a2w^i6i#B׹*(VqiQӵj͜$JW7l΋# !pp, $=6 ' Xf=,,a6.^w]6{1;鷽6+ KnRS l0঩ t~~% K]IMF َtM4A0^ ^݈Tk*5'j }ORch:JGS>g>d'+D0,ͶB2A2E:px߰~lֵ)|v]tt2']fⲛBjbhhm+.V$섄f}l- R#ײ+zNIYR*2$xdO6mU:0+gI2ӳ-۸\~2[AB؋}̶L>4k0T2QqGux"1n=ޟIphP ) Lh{wfy%5*`UN}a`ka_s)T6nz͇^"A/e&XWOjDV!FA& 1C|J+DrR*QYKgrH+W=)k2rRS@m2T"8"%ܷkw㲽%, n~op]tvYV!{r׌x(cjQ @j]klWz7~Y4qmFmU !DHm(-$M@SH J$4?@ğRP[R@*Mرpbyߙu&}ήdGZݝǽs9s=+fUoE|sZiP fZu$tWz9ݻ٭Z-o>&ר:ET`Ȱ Hnt0JWm?zy`R)cj1 /+{t^,58E>Aᥜ>j_" d^52zQ3cަWoE6Ag}3xyk?PjؖtS9G^_kf\I j7}rV6ʢ<5\dd]޶i1[Hu*mYN{5 ΃\YGm / ϭ)A!*>RD~i߮K14u<Ȝцe< F /%((X$vO^1؟ŧʼwvRmaK:*Jr'+bUM2ǕC=au[XQzj $[jWgc=mtcݿ|졻xckඋV33!l& B>SY[ RD#ӰoW]m[kO!" qa^s$H^Haz,QV8SD9"Ue29QU͘TDPTnv,I5#JLF)݃0*N_( I,@Ѡ9 R! Çzulj3;ZH@w(-\hWw#|C/_Z{K'oIh=ߓӠmcȲ*8Il0Œ8pn];?Z8^S3Qf^OU+#Q0~"j,5026yqY0,gIӲfIf猜glC R?Ԯ(>P.S!.ͻ aU?(cӜ}~lmu_XOcl}B(׈N̓E{fa}IibE9xH0ʡ3`֡B p) V"YF+Ep4 (Ӄ[d-o۶u%cT m#q VS٢Ѭ1[=J|Ҕ*}5GRg_E_xR7O };?[NcǘސSš@YM ׭~g簨y7)t28PQSF%&k4Ln~ VNc#5š ma1֍ޟ/fFkjT옖N:Ģϗ-C&zaɑ%!ڒi`FN%I 6 @, KJ7PBؽy/(xQ 5  :BB1L`h'ffO]Hͥ %00ř7ը&^T^1JRoJzr#Gw !,&{"KSr V[Y0cILv=%}]]1ۍaTAqL)),Ul]72eT*gW0I?LXh16Ť)/mNYS2֧V)e ? 'F7r?u  3@Kz`KKvdшpᓬ/Z0e-9q4S,%\Kݞ[_D<@NqvUVGF{=J\#f5v*nG04IQbk0ZR=K*HMYY:ZQ phʹKVkr3\ Ln@Ա #J==a|,{\Xzג;1ز`A+^f N]LMi`t4H,؋Mj7%v>O~ky^L_W"2XjY@Maד֑RP{kIKQll?5יP|7C3BB oڥ"@Vc}+.I6T_p ] O"wgds.7A]H+R 1KsLbrB Yl1vP7Mw7rW_8ذJf||~Z-IbFBHY[JRY.a?-%Y}J.@6!F]X~(D0 6Rz&2Lwr9}He`EVZ)/9vLIJo)Sg:nhf!tlo hV[I.&eȔG\D9v"ZKgRݡux}ڳ簜B^%3-%ust$X" 0 wD%"Š*{fhTPE X"Ib!/ȴfiꠊ. cGGw7z%?A}ME LD7!ĺRܨ0t'O~a5Yyvn)9"[1N]/7@[wFB`dMY:[Y x?B4?mpZD< R'r'æ#s\b3 /3+υ%˖N9"C(5Eb\ٕ-0_YND09jܹ<ˍSy0thPKi8ӛ&.IX4Ỽ!i"PylE8DH BCI-W2 cNi5"2hC;;PC:PC%"Sl+IENDB`kylin-video-3.1.3/src/resource/ico/suspend_d_3x.png0000644000175000017500000000112214212620632020656 0ustar fengfengPNG  IHDR0BUMsRGBDeXIfMM*i0BX%ߣIDATh[An@ lr-^*"З ?koJi*LFƒb=da|)ߔ?ˏCu5n*ޖ?OuoWC|4[|K{1:XTϼ{ql1ێy^lKzOǦ ǻr/C- V15`(浰Zk 0_yupZabj^ Kի&,2vD% 4 0 Xh'(@dX(`@a vD% 4 0 Xh'(@dX(`@a vD% 4 0 Xh'(@dX(`@a Uk1YSZXj^bj^ KuXVLkaP[ #^&Џd9s`W_?'J-r,bcO tIENDB`kylin-video-3.1.3/src/resource/ico/application-exit-symbolic@2x.png0000644000175000017500000000146214212620632023732 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX VkA,BA(֋W+^kIzVwUڃCAVEłRP(Z Z|Sv&Wwvf{~cW=J3ӅHiݥv6׷~uHDL$|8UtϸZ MjwtՂ..X܀q>0(o:fHi<9˰B V1L6AYyv%;{ lHN5h3cj]Bs< v0N_-FɗWIBUX(x]pئR}DI7扠K|߰l#-3QeDPSyXNw="o)UEueԼh!Y߳ţׅJtOȞKmh %)ylgnqG3h:= 5.@ \ D6K۸n$Sԓ"\gJ׳@SksԌ:`bqqQ,`YWx#9-*z[2lG& έnAfH2 'EZ*C(ŐReQH@/7WBȖ$?oVH:>@dŐIENDB`kylin-video-3.1.3/src/resource/ico/music-background.png0000644000175000017500000023461114212620632021530 0ustar fengfengPNG  IHDResRGBDeXIfMM*iΠY[v@IDATxi%Gy&yzWuՋB0cxr1ǀ1X0^Oc{`0;b{dc1Z- !![[x['sx꜈"+DF.i-~c'_効W#ntEm75gW.r-79(nth渑hZ5b##e1:rllXcn=Vۧ 76IW\ؑ{Znl;t1^>ʓ/wj`f===0K=PRC{mF7pb;yd7:Jqٽ\>ޱ.{ { {`y 6bY.l}_V]nr]].Y"R@.0>d[I>l(>,@2((0.U4{ +kJЇvaZUM(e 5;k07lE^l@z+PprlzDGš]Gܑ]m[^gY<^k__ls9|d1@/>g`9Vwg$w#c5Ⱥ(8^Et1rC,j@;/"uڿK(` moS`Dc@yy <^VL_Fm?ݱNjO>Tc>[\ii[ցhiЀ+,*mw.JytGGY>8W<2Y쁊wVo%{un5>|ds` [t@ǫ`@~AN#5,*UU~nr@F-|TK=tg?kwD9edd4sxޑrS,+.Z>|%۲Ҁ=tf-l@~YXD9D3hjiX+oԞo ?">4@ \jF-]F (>~#1|==p=+kNgkrɆV\y1òUFn%42`XTek6jDӥ AȑI5w6RMC览4WlݳߥںbZF-/lyG9?QzW]|){ { {z 3,-{ {f8r[8HTۃ$p C*l[k/AJ+'#hvc&Jع|`A$E8"mNVk*GƄN[ +x:@Ƕ;#O{Ӎ3A@@\bɳ<örUWٚ;j_` ƁEnW.K_X-8ºhf3XlyeR@ `(a;K, aRU]mW G`4m}א3bZ:2GA+@+QtL٫Ϸ (Åxh["Dǖt8D.j{ܿ~ܔ===0ꯀCoë_% J:ί[6 6I>2Ȥ [-F>9:R}nR wklxxq" >Prk|0L===0ၺ+Dc.ddd;>ﵟboeE'r̶;.s)m3gٖb n +9jO.-Zݿ T@4s-oG9Jj{5'zЖml-K\b2ȴ;roS?{"{ { {` lxlk6"||tE[I; <3l?rYƃ~v a(@dEY oR cqВ:#*8ͧG~=KVhrWB ], 1 ]+(þ=Xvg9H!%/IϯҊT_Ї7:E@߼ Nebx{A~Gg8+N+pUr巐{/>鷓+w~ I\ß6nũ Ryasļ)OU^?9βtMWtLUУ @/q 슕̗emCh[;kV;#==?zҋ?]*w|˽hȽ}. K!an%=F8:`RdRˆa +Oץ_J3l~X)}aSRyi{?mOi{?ѺA^m+(7K۽|pt+,v"{hvbmr|1 gx%eWQk[-.Gɣ٨}9{P8bo>IՉxMNs']֖fSuۖqe 8Aʟ*tJGԫ)շwoP֍PшDOd/d?vv"x*>OO?s'^gwm^ܺ~;1U`e-757px9 Sz{+zI HA&sJS^pwzk;M[K6X~HWr9|Zmc:o{v(\%s?{gn?-Lfm6[=pV=ͭl_?ڻ={q;rq4u1(hOר&b2dzyAvH/VIG4,vmQG]#ZUF4l;{*a'j#_1t؎s/Pnj־n}ϪyTvD&Oǃc> ^cUa}WotpCz=w/oßD:gp){ {<^nͭxc.f, )v:ilsX kA_Vio H5khAۃ>cU`1fR$s8@OxB62,Z{Pzʇv4=;5o6bw:|8>g~e, 턼M5S7|r"Zr`kE^vqYQ>˕}f(@`SUzDl08#D;)p4uhS9R^@CCn~OmifYYom^1?+wD}ѯc.?–oHhVr1}$ZLUtsJc~K?hRMM;!o~{:r:~̻wœ1;t|(\Ztyv傕~[l=Hc=x){ {`&z@3L===`Kֆbyr#v|y{Ea{ϐ+4 GJ&f$4 OD8)T>y&z肏~A6>f~y:3Wҙ:p`Ұu8:In;)s}Z~F`X>~]s8ˣuWbum얱ˢ̶cΖk%@& R'JVTpkꆕr v):PȎX 5_kE1h3m쎽ܵ ~5Sfdmd|G  +׿ûZmIeWed< dHpH W'LԆ |TcCvy@=z @k?FdsPJ֬oұsm_TXWc?Q@.)/g~聛E.5r<:y [^}-0l -Yv{픖u 6Vdf6笹k.-ƿ]]ۖg=-̗8V Vb:k{S*ƿWj=xp9[CTY qtWՖGt4LTAYGkϤ:tccz+`ds}-uG|_<=Q=fd+R9ed\wǧۺY^垹ǵw7$hv8ȝEM1 R?T7t޴ p Z|C KK{wOGGIYe~iq9-, '/M1 )_x#8n~ ]eЗݮx^d3\)r8<-έUw?l똿m}پ"D(>_:sІv0RL'BF4c],#u{W=\ OS` U۫(O3=(_@H,دrox|k]1d@AKOأ>8VYQ8Xs 咿Ω:n##m:p_58ץrs;t[lۺ};YWL&I};%~"Xʨ 9T.-6#`lAAo},p25%8VysɿnՍ@(~^G7"ܾ.PE1[ڹUWzD3g3zC^y~){ {;7F.g;O}-쳗h&wLGmĉk3(eNc ?1fkABl}zyVYO덺#0R''i0z) ?;ߚ]RT2cy0CrVtc?}xPe g=s茍ȑN( X6'..I0:+F_9 Mieppk]ٹ /| ^t5˾y]۶v9ediTgZz=0=p걕c9:om=sEu命߫E 65o4z}{/l@>E`;?S꺔@U< PH|Зmwתx<@o#?}_>Fa#Z)oT%T*#GJƚ'9^S5?ÄG0tO$kqo7ahS9Sn\›\ =?phsβΐR3,&{ ћErySp}{-K:O\0$ xqb@@O;=D 0` ԧ<=k,g9.{Ne\"~PЕcE^86^i˾v 䣍urc^IMf)%hpidcOsyL~9 l ;QP'1s"_~oo}ҫl #ٚ/M9J{iJyёm_\u/; DNg8)Og9>Һ~9ί9{ǹosSE)F4}C@%xV|&<K S'߂V4kKe~::oϴkqz1'.7ǫq?Or\ƊfXum˲np^BԤO#Osx,w?woWH˵AΥm>gȆ~r͵?pўo~6{ {`=ޜΐ,TlW3O۫ܡ6̪HɵN0q0lh#HEtɞ{7=j^>'߰9)t'@ftHK8F/a'}7/^yS=S'm_L#|M Q(?jO?C@'qnh陞/Oi!ղ9_; n~ZU]qK;IN){ { xw=7-|~~3zf[_h2hA &|e.c7#gQO J -3k;9>8ua<~ 9R7==`{{5~)V+vnr-}5~]|F { {`K5&1{`pl_}EXys{q#/bd&\q[N-.7Gm_ET8. E~u^XL=# L+1:m~X\({[ߞ+`LlC`:$wIrh#z/i[9KI`"U׋7v8uZ_K7C~ipʍ|a߽w^v9edd|:yfDmօ7՝8 }INӉ$/1jiFJ>fHp9,=S}цЃu~|02HCm3)؆6^j5wa.>H1bZI*cq9S}Z"bX9ؕ L)(G{:-N1MOezq ji>  |<(Iui{z,:hOGDhץɏt,]Scyuq]L;Y-1cƍ"R?}ОʏrLz 4AGyL GE'x#렘GخH[:`Ϯx3WA8O/3쁊6(67=m]yi{Q6Y䈲&RF8im*K@vAN]FF{Фr& o(]l?)tԉl1-:$U9șd/aeٟ/CIe?iήMka?sFJ'O[y#J 9 y3k 4H,7lg,#vյ7 ~)i{/eL0\/[ߴ{Ҍ\[lO5(Aɒβ<ۑbpNЉo xq9qnunyMA>НkJ *B']5n}R nT~)Ȯ}E;4uH/,9 ÍZPOПC<)W\mȑbXĿ@6 ~n?:ZsGAC '#]kqc+.ٵ__?~oyr@=йdLA==Pw+_~^~[]sFTm5Ѫ 9BXծ]WEzDGCY{_|]6,Sv?n&D: ;#hls%$o>\-ʨ/ |T+*_)Jtx?GEgNUB*[^zwlF_wT~7oi'3'SPW&1wXsk]2p=Sy:.{ {`87\L==P-_rK6_lf1{~JmJD8p&hWM͐41Cb@o=#یN b*#g^QYw~* EPce(O^.R`O}%-͡/tnr&jf~ѐ>8w<Dt݀EFyFέʍ\r{UK;?<{ք2fd ^ɳI}np͈2=h~̿&w2o'O.qScHd\1iN1TےqvELn |ңˤ+lG(fF0LiӲw0?Ɖd# H8Fw\Fԉz*X &֘{=XC/L?g/2L:wzqp:4닇K?4󋥳W~S=ok^ban?M5Ȼj8%We -?mCr΢kKݜ-ϰ=ުh'ܡ~j9u}'S(>_ֲa(O@ mf`#Ene3A7EY'RgH d3ed?rg\dLv+ }Ur8o y󣉧V~٢7M|+`nV8츁-pbC'7 W|xCw;J|==y%6g|[4u8"xɁ_Fj?19bkkvZGƆ(`mW?S%肨 u 1 ^QeO؏@kpQ `/J_Ti-霧~41s8uNh o*/sE/Bs[+{j@|իȵ][zxKlr})ؤ|/67x!c H,'\} L'r, ^F J"]?-Ŀ}p;FT ͈Cᶉ-8 aKR9t?suS"kҧ}xS`U<~pUؖz۾ͯn_Ńv-Թ۲ W ->rߵw=tNx~g-/Zs-&+m6OpM ED u$c2DK=c>U,$Wo~f$_q@2/M?7+X& O2nV 2 ^ ܛ dy+tӄ~H1=|T7*5t!6(I~_{]Ei%nWk6{sJNMk<۳"ܺm詹?Ͳ?O _5/ G,&G|:ЌvM褲& F1 4 }D<.7^ QfML>G< @Ql3Q/*#،>u'Ӡ>QFR(} ԥ&.B~6S28N1@'|wRU9R*J]/åϔ>I kQ'y(JGM(~ȑ$pL\e0[cR=Z+.^6w%o+>]w$;/mT9K7rhH-Ў@3&&6LqHdEp@mrxnĈy>D)ˢ PЬ:;ЯvyР<.rqV$zn}PFR/Tˠi~c`78_k-0{ {@r==|`Kǟm9goܿÕ'ZLA;a⿕&Uqb44|}oʘ ѵ3N.mWD7ҋ,a Au<ɾO:7T:UZGtLSYg#kuDZRr2޺LeWj\SMq>u<Ն]1w=0x)<_*>v5/#E@^Q\=x`{+•hc˹g'/y0!Djtr5R_LH9A @?pk52#<#uorҽ rzBd*Cd-@bn堐lq9L7LOgllxCtsv4Ȉ9>HYUVǜ~꓂yRNr j]p.IJW¾)e8L|[A%,sc7'xIR86K_.amc(w<2鯇@Ӝ7>h}x{b'A\@IDAT`Xp 7;I %]`td<&cg*F_)}H_rqTҁc Gz )SM$xyJGȳsyv9ͫ7ݺ|=_۩gO|l˴y`/|gnax6)>HycguJ&֘FEɑ?+[ȀxH<.B|Q+3.[C\,M):4|SrPXF\qr*Nuq8?EvE3^}#Ek/_}{&r!{`{ Y~d=pg}{ԃ潏 4ck~='@#ɖF!x'/UT갅@3AwA>hA=4&W|@V]ҧb1|ɓܮL~тʇ#A\)dRr߰AKK8Ċ܃!g@ayA @:d_kL'~ N&u ?PKșe^֔^mm!ǟ>b=`v˃# VDSÜ2힬i?#3?VwX?Yn}@5n9KхIc##U|5kKn;uB'Z-qC,/En}"[܍Zk{oz|w@Z^Ȗgn|./7]w+ȕG_[6qBTWd0ZkDQa8e(w{d `"%zv1_A 61 yf?#` ƒ?e1J4nȚH?0!jDZD^+ (U0&m84~iQƃzA&?WlڏsUHva y\xuq:7?߄pΫ~9}?:\N>eyͶVk%>/\9?ͯDftg:8j=ġUa=h.񴹟0Y(02`O8PRp?LV(#Ge:[M5&&O}}*m=u|iB #,gl_1%M1A酨 07$txЗkϴA 8pÅeCGa:7m}(ĺJr%XfK"ه`9%"W^QW'O}\?t(KVFA8Y5~g@:a/H /V\t0@γjutǟ|-^Wx@sŨ0'6 *4hth$\tAz.1'xW[9l%`5h0W#uRćzJߐhz'XFN Ouܚ뤋~&C#x%8iHsIE'$gҏ9)\tYl ˯_`Cvkف|1OiWUq?&hS\8O5fbB'A.8 u8/' ^T`Wp؍((' ?o?FˈxwЕ6r d'He@epپ%r<`6lו__ υY g@g3=Evnĕw%ja9Aq\ &dNZ 9(59?5OeFmpU[wܮ A5#zFgzա"G6WZ{ºVt&ü~i@a a>JlU[\ZBzʩżHg_Uho_nA_>oP^rbP7v&^\ɎsOX9s^.r(6IF}ń<.wj*tꑉUy:"N8EXԹmڶ+^|yP=0[<fbq3{T\`![: 1<>[_e )Q{j6ҩ*GjC~'Q::OEeq^^ IǟQ1K~ԟ%!.W/D8Ox6l7_߿>m<W`߬f.+5cQ'] L" 8h&t"N{ؗ& W&9H⍜ZNLԣsQ=SS&H|cHG_k?ӆ?tؙIf}i#Ot@~X@`_ k5Gj.òIs%ʢw:Ǹp/[vŨ7o>SLy|X!8w ݠBƑyZoɏ?ob?ɏ? M΍ZmǙ snb7:-u#kO9٪>}_hO?i;hB,sgrKeB.2qMbEx'\6Pd>`Hv+7Ԭ_f22LW u3׹k`+mC*lbǟG3KN = mv?_"ː&2>śvY?ɱ ؀}-V_s˃{*K4.={`[?pi%{Z8WnA0k26n;W"Gj⇉Xsyxʽ@HqAO>i]crFƵtkA|9AԾ&)&݆3B4Q8GP?~9}CkFPy :aW<;ؤj֗zy2lnr8?n˛/?\ ^׿K_󖺑׸++l>Zous]q>_F2۶mk=iF3RMo%'_6!#ǧăNf]t<<?36qɩ4kCd̥ ə rs-3${>1Nho*Oz wr;__<[6Sg.ySWԎv5HQ=*sb)$Ug~ÍcM_\/Bʾv!OU_/?%ZSD?=ԓc|W&FljfMb9pI5~(D(L]-.+L/ޔ~>A"A:ڣ䘰]`xFڥrN~_8o1ND i|1$_:_$Lqԛ=:HƋ;Ί@<#}Nev͙_V_+.Qy⁼2َZo#/i?m7S eN&P'4pM"Ɠ[Ab$7LB. ;ȦЙ@`JX=\Z"̊4,cMUf pG>"/F񥫤_> >nȑN9lz`kv†Fi2 c_]#|s`ΉfOm_uu~X}’'ɜіF&5 9lt|]A_2pnFLSr|d⺸2 ':Bd<-/@[lF]dd?Lhg G6(~h6.;\쮞_%y|6ž>qꤷr7@KB^K 8 .?iD)!ım]t(%ٯ4q}0>A:>ؗ|$ 9>}VζE]ab5Wo.k){@PfCbl}7k|jiuOؚ&2& D10cP>9 <) TFՎkn1iq9chMI "`j&*G'"!~M?d QPfi*?)(+ч?E#}&o?e$]u8VY:O_cƛ>>$xoց*?ҩG*#ˤxQ~u\<WQÇC>/T;Q9Vm- qL5?5%/6?KvE12ύk7=}2SJw~X~^oUsۻu-@D˲&暀0Q^5S @ b N'qw Ie+^"'Hֆu8wფG2d'W.9))qcI;ިȱQ؆?plw:ȯʩs/}/_XFg5&@/~?9sxM~8);|G .ფG/r@Pe_yrWoFD:߶ֹ<õr5mrl4dDd<G-?-'.l?m~ N)UƊ 4yG\r|Ċ 6|I*#gM2e'd@;}h+I%\1A& bEŨZܷ@NQܸ?gPMSZ&`Kпʯ[^Z7no$XAQGvC':?"<*0*#G3X&@@Hױ\/zB$Y?-/y8a !?%e?ϼI !7oWJ8:*vJ??o9ΞQ)z-Ϋ/ikq8uos׵=0=}2wm~Fg^{ hP/E&N䂲 ω8Q3I4,Uu#cP}1Jn5Ç,_i}a/(qIZ&ȑb{ 3Սs9ʲEM~P/:.DJ{:!?j|an(5~S;yz J**m%MXf>6yy'g?}pN :ԫkxc|4]TUW_+;Ui&{ UyWcD -zO?LF`cjoz*/eib#6:/5V0c~c'R,Gi'L@CؒIпzh e>ȝ`R#ioQ9k7%wpecӚ/;[yLBc3Mo@绣㻿#{'Bk.Jue\PI EW*]_#cF8)JKrg~-r<ُZG xudk?c>Ml'sT8ee |y]ٿ!nR=ꧼ^|CGиyō"':q?CKzKBK=Ǩ4e,Ʊ+렛g)dڍsL*nc6؀2W4v֘Zlb֊]9eDLsnﺑ?ucϞɪY?}}s: &`,vٯ<4X|5w7Usdp ا INot׹Ep^\i9VG1.%G%<:g1ݪT'iu] 9ӑ?? _1FuMz~fm9&!k{+Y0kfyYz.+얌v[nSrNrsk=wjq8oɯڞOODCH}NA; :p>+p8AK8 j%V9RW@<˦BhF?r4 %\^O =40/2 |8&^؉q5ֲp6['C=p6=[ųC]0;g-?e׮ €]=6i x샩cC]#b0qqDmNz늇={3+y;=ϹPq|0IO?NdY;z*I%zK6r$)bPYͳdѧ'9rR3: tAb2` #8 +/{:ʱ>=,+yW4!qt Kě4*^@2zyRFG*O/=x[ǸOZ/LBJ[wȑ8Vo|~[Zƍ\x#~W[s/u`,zگ]5{]VZp_$lif:ly/NVb 1J4}Yl܏v$G(qw(hv˻߷ό?Oo~q:hNJxI8 I&ez$S~ǒߘ6I?OMvt нSM%}lAddKwHmP:Mu8:E 4qjnE/ڧ|x12<o ]{"D?}=:?/HMZ7X|nGpW _o.Omc4`MPЭoĪ8|уYe~;Oe8>cq$ #Bvg '0"GtIzk-r|E~P'oN'tTW?5vUm?p m }cSWߨ,p0!^iX?q{1{PBegsy|0>XePJ8Ǚ`4r=z}/$ :%<.Ǵ@ֱO_ t^1\8=#gspJ_x:p3Nj&s;U`0ƎhNҠ-v&Z k*pLZS{rE-=:Qw۴Z*{n°IY~hr?o9$#MҨGW;^}շΛ9'QLpQ)vEYox1LNñV!uB)/8fS=,G `Nѓ05V1y|zf9毲 20vtAȉ?6%?Ѕ7'.VGqZz6Nnko=a?{nIvչ=3͌F#^epl8"@!`A$#Ac%11|qM!Pl4i3=]unwgwZ^k]ԩKQI688W 9qjòċHcVsP;s7=B OJ#p* 4'o9H9'aq\rYbL4ۼYL&Sͭ¨q~~u Gj0=(Wm(fgzTR\gCęL7./|<ɷ$-ų2c\PZhBX1?c%@.hnmǦox+1dIvRY)n(~wiq4[k_gպ?I3v%C1! ?6n#j~kd/]}rUQfI?8_;zCf{etw1wp-]Ɓ:d׍\^/<lDG6s/ܾh#\8bD: e,n&8%DJtVfˤ uB֋\_S(9,# 󞦱ofy[?۳}WC Sr91 gYJiJ.XjphQ'L]~8MZgΔޫ$ǡbSrp㓿W]x_d%dM8Oš1l^.M27jyj"oeJ6[e2^Xzm\뛲1E3<,3sρ^8K4[sE m,rEhmnKﯱ-.!9&qX]G?vQRۭ6hLg8mxC# ӵ2a9gn6כoƧo?4ܨP[emo6΂΋5gZdp+F"h":ѣxC9\m>WiNlsfE~-GSpeۡ#9yZȀ,ѓzi@G4dיu"b;·gQGbyYHeOO׉N1 Xxj8edNԐXꃎ0Ĥя٨>"9Z; . ~L_-|@ջyn5e;OYŧQ&Y&11倫Gw#Ǔݶ\/OWb## K98juR`Qq qTtђrS1M^ӢRsǷ'2~xU?C| ^ЯvO| 2 ,$kBFqɟү:U/.mTꌔMh1~1aY`-l-o N1 S!ZXӊCG׉[g*FxХ$vnye*sJ [Dz_6Ve: ;Ye◞V準ݿ|3/'킢)\j}vUGw[;ۧ8L7򃴌|O75p5߬JsY\xQULA3q[ KkM2P~vD-{,( 3 Ë{ɼc3Q- Xu/] ʘbҷ~\a@b] ڦ6^[ ]$ t; и YgV6R_Ȏ1`7YIp-tw}qX>2))cZ6 vq}6'm~p׾Vn+CM 5|O|D-?8OwxYi}>N׎?#jD GN4W%i2RJlcϷZؐĈ`Z\@t@&;c䊠{;s~0lI&a&Ǯ^;8Dr"RPg} 7jc4hA\qDLr=㉮bR2-i0_ ob-M,B;Eo>CtƁhș-_u`g+ߩ_7}h]W|6:Т_kPChEg[b*LOhUɔm2/E/ g=N#?zI _kc:DK=&'y5^v_c[2s5'wh:dnZ-Tx+'r,Mzd+xzL`qq7cmn9>ްw׾y`*SȏGpTY QX3%|lmO3TĴbd۱$U%fj)e3mЕJZ'ExmwqoX@+o2%텏熎|d0~#ʲ?m796ey|I^AL+CscC!ۗ}Χ8Fb6_;?2Hd tN Y? oxGw0#rbAsGlgwҟ?ޔޗ8c[o}TS_~xڗ_8疗== _,Cf_%ZT|R|dw27v[}kN4T^ 3q\ͣ3j,{_8V]iioj8w?k˔Z Z`w|~fr[FbxsX):ZE7]7b=Yѷk>#G<%%U;"$ITU @IDAT?KdLlOL;u =\Q ;B1Ak.Ge"8fžnvE}؉ L_Z(1Fh@& ]o}6n-{ɐYsk͔?%Ɣ6m!Ym[עYc<ٗ5"U2@.W5^ƒb;q3ćmvGeB=,j :׎t{= H@#Cz=XY_l9s1?TߑK5 b; ]o({?3pc:xvz/@ דG,ۧk6*h C~ /QN>^E[~]9x~0xl(pU;"<\"ݐu·;gб !;WڅGkgԴ3nR?5/df~naB(&sNL9IQ$6cpgsPAdX:to;4.Do;vhWKa:1x{7Ër:셦e_}<UCCl@^-DX^Pu/o_ntc@lhWQt|͠mq=ڕԢ =9)Qj9R4C~Է6ge3-q 0NiQ7"V⊄BNٳݐ*X=Ҩ 8n|q.>zG"IIPyXO2aR)mNIii~j7JBc^(kr7g}LZ{ġz/BM}L^0Iҏ Ł|vbu ΜK2?%YŒ,G|8(>pU,]Lt H8xLs> KVz Oߘ `F): N1=a}CFLDOi6ϵ;}e-#] 6\pӫNԦ)ߺ t{;3@/\ Uu5X'ՠd^$ېyxwrSߎ0)|1#gGQ[?/k?5 ϻ]Գ0/OH :,v?0wNkS<ΒTU<%wdžuH(@ឤ7:|P}V73*( MPMaG~+ȵ.SUَ|wC-Y|C=EqrJF`m|-giSLD/ Nj a"]z Ko鯱k_.N#;1○yrJ8p} &ZŁZ,nZ^dEmo%S8pmGM]b.`N(=F,|Nץ!1/4G!,E&xF*L{mglhlſ#ѵOŋ =:k7I& i*:l< BևTk$dMmA_tl}A¢&A[m;|O^+ke7*hK!)!6+#BE.l n%=IT2ʒWя), ;;\1:auS:ƺ9wŋZ}QuEbDSYn+U.hcʟhO]_:C3Q}ONZ9YHr7?$|e~m3) }N#iD:cىMhnȂjw9FbcMg+m~d%b ΎPlJSZVET; j"||jM` ~pl-rҹzm^q0!p҂}F ]qb`(=U8 gm\l;ŋ9cZ( ޼@ ~QqPW^tai}n2_2տ^:Q,nDе}oF-u3>Hi|v 9ۮum]-WmE>ʟ{Ek#^˓ߜ-WtC|eCpFP[?:? F/|N՛51ə8(G#aQΰ߆oCj-`5Ա@aH°(@|WE~pؐ ߭HƁ?2j}^)}|/&˟bXV[ї%@$ktLR6Q^N.pǿPnJjQ68uk{07{Oq34>jv8i& [oK K-[8YdMe?{>}vڗ}佹hAxa1[|عzwɋ7ɯo; [^4 @}C&-ꤣڷ?Qȩn[,9Vͧv2fȱ \[+/e#nھ\}m,mj:_^k-ھM[:CN<2TO?uɖCcJ}Ⓩ3[oäH[V}B5GP|4ς0{]ohY{nL]򡳞)8XkꃯƽhkdqU듯mYoK;r +gǧE~ѻSUpRC43Gv}ߏxmZ2"5QTҧ ak'ml[ [{[c9e: MK(e=]I$m1lq(aw5neod@)Sպq?ch[ݾӬ_dz-wzK :.aAm>;&t[qk7z(ks1\-۹ M5m->K06U-mN}\jx- v,4;|;o #Z{|ӈg'^gH&  ~Dwo_؛xSOyo讽z_>|tb&j%`/Ijj"b~ş͋vɱN1{28tĞi֞D5n!EspMmゼ-8!^I5LZDG嵐kCft̽uʾuiuy-olZ9o)8ԯzI6unla4D/-vɡ~;y?ԟ}~Cmu,#k0$e_!:G[ >CB=]r[u)ٽ8q^I5QlC ٢7N2c{hnX$Ǵ1.|:sPl='H@E$ɉtߏ<`Hؑ;Y˸|xí;_Q?mID%ZvΕyd ha2W D`]*-ZO"^(Hm}(u [{XaX?3M iLMC[Hq=ӌZ@X!òNrd`a_ɾWj,u]5D{/HYg/eEq<_з,KWb`+.РKD\ |OGj+kq67mc}AyhE?׶qN|}7?e6GF}Eq_4ʴlWЏ:뻘+hG"l/[5d@!1'IjI5l0X_M2X w]/4@b&*V "I3s!SÏhG}-XWˎd W1 I h)NM+_7-vv+?6ڋd &Q[ʳ,sYn9Y0jJUq-WCQ2\3PNlbL?r .<8OX,̬\7&8zelQH S'=gr%j@᭽6 8ŧVX}x^~`H}U7nn*t@FT#b]7"dxAӗQ.WIVqkMR}`(&ИPo'tY!Zܟv.b8OkYg)C!ۗ}N0UOP^"I'_EɁ,vyĀGĨd.dk+V2n3 WI.M>VTz(!9<.5QٞZ&0p\zC϶ 2x/u11n3z"'@]? >OA1YU:eք&n(>IELM=_ ev'Yyq$Ž,7m?A6?ԋ"]‰ 5PO0<MA?tf;lTG6TЎmoKnNK[R _ $úU?XP{K70ްPlhNJ_m;Rװm@ƽ 2?6&wssƴ}|W0@$\H2A˴ ;yS@$ק2~oWŎ:0O (ɷr.hC"-6kbڒzPvSS2Փ"j<Є6Ⱦ*C% Mg /ߴӹf%(|&w=\|Ez%ǎ! \bh uk8hQ*?k^qK "lBZV/>*Zd6›7m|N1ll߰n?L oXLo?ڋ_7c:'tkӵ>l G_9x.ĭ8Q&N^$X䦫_y}H9[FO;tŬǤ@I8LJ-O% X* GVR~thmi벟Z[^Ppvrm2:dN|e䶱()T|CضI.Nr慨@ʲ`pdŲirs0nļna!ZMgh:C(<\<{-H#;4SepٞK i7PZYMݴү]'`bu펆Q쇡jGcF!5iMWdp;]`WeU,͇??rcU |LǗJblql=^<uGg'6rQpa%klqP4ðm}зs~uaz[<+ңDZ_}+ -֫*Ɗ6RA)_@=葇cpǜ]sӛķ?#ppvws+k0>.2\J7.^$x"a_N؀Loc%0y"_^mَ.3$Lx@AƳrO!UOQl 6`ɝ:=-в _x^(ҫl֟K~~Əb~Wnl(o4N`?Z3߆h\zBUeh|%&fTKc˻Yn*Lq,3~SLeۺ$X:U3 Q/TgKʢm@5?hǜqtpKCZ=ID`p>(["gR~WbHuq*m<;8m{?p}?xr>vڕXK~*.+2bK' Ӯ/˗NZX4)A:&c&Q6}d)>&PVɳn4Ȓ 3leQG=Գe9wtg(|nuK8jA17ioAv-d)SG<.췯ߖ7D0X;[CG"ߡ?rnIrGUc6lkci).9{<^;F iy=1a9,CrSL lqZӷ{ ꂴ^1lcAg]ex99IJp~|Rkut$gL Yl&_I ;AdnK|6?#91H&m6 p5iq"9>Xݞ$Ice[T [-tog}ֽltZWGȲ=-_sF̘l[k2^?\m(%Dh=IOťm=#?b"n ewշX}[c>C~Z8m $w#3piXa'naI'Llq( lq!yzF}Sa4ׇ-.ӛ%$}Nkm2kMϧ<-.kdxk硚#,ȶ|CAv v>{#Z}.\o?sEY#tҶ?#pr/O.K"_+'HJ}rvc-PKZ,+S//>oÇvtdz$R+ ۰Ui?E.cz^\4`+N8y}#mCk[ WJ%z fz~qho'5aZ*Ƈfy{:B~flq_o奔~fzveϦoenցcmBN hkh㌿vgM?}C>1mE18S<,2[6 qpG1̓d5f[->gA)6u)%1d1w]|i%= D`p> R*3zI;>H2UfK[y1ztW<"5i dN2Nd\O1O[{(^aBb}D5Y0֏M|-!]؂* /N/$X7uX?C7~uG.mM޴[hjQxbp`?XЮXW"p~:'"=gFp.㟲PsU[- 2l%sgoxuݹG?*'gA'hC&ثFdP5uȰ%c )N{Y .mݮ?+c!t_f&Y~mw:O1!l*z.c7/e.߾H$zw6R;ƭ|_V|w][^[݆ -ֿ w߶LoZzeh׍iإ=΀S?Uܶ7cgǰb :o; dsf b!j|r~R@RO8cvmDd-B;s׽2I}>?7D Pmep y۠{0OC@kѽm81S:$P vzѫaA#L nk7E;̭~d,OFj)0.Vt1>łK^kN\uem>7/imm9ֻ|00k~{ֵ7лM[h>oqQ<4@3vt9es\AI}MJ,擽-l7\e#qnmbYW[h@>腦G~lJӲ [:6_+3A)}t +5msdލ0R)X 5.G5HJx␯GR2ԉHV(A/'vJ'`,lqQ)eG6ۋVu-A6'$iڡj}nqӨޱ=Em\[-][neSN)a|YcyleCҘCwAŜԾG Ex +d̟4s&5e\g;Y3ϜGlYת|ioLH¿5ӂ3a,wBƓ1<._dk}Z[bV;[Tj82X^Zo =mJ{ŭgr趟ztxl-㚢ڴhf{jƄX68x^lmb1~'Lm|#p//5B(.qK{Yc/{[CC`غokfGGEMtS|NHi"1ONib֣ީ^UnU=֯)ШnJưN/h4ZtJTCHZc$εeObLJű^7^(—jӎ.,<1n{\n7m?lu"}lw]Q U?ZSdRq\*_jgw,۾Ow`nG?,g.aNanٞd(5?=ۛ˓reݕaO",'v͙8OSo|jwtxQbc_*`ٹ^$RMLi=B ^CO4fܓVx%}&}~Χ˔|Ꟗ\+]o? d\Q){]'+ äJک婟5.za=1Գ [6󲘴?0m1Y6S:z)Gu%Vip FC,A8X|Xxoay< lyhVW-WѴ>Q]:ۦH~+o%o9egz%)4I1~2pMÌr U^.s@wE\,J)1]U^L>@#ds_/8z{<*a *ɂ; %^ԐԙTj }Jz=95QuN-ƴ-k B<ޤ۾`NdgT^O6 =[NbALqlv|X汯G/<|AGp C/sZ >lb8ч;7qǍ__2['|nqn/ lq$H*y3!ܭ#KX8m yk}úiyg'ƫK{Ms1u.+i{u X,4b; 3ӟOS8uO<>ms!GDb;28_@G shLQL1ߖ'vśgvQoANJΚw(5184D3z,bѮxCDz1Xm&NqCs|L?c9_qlyc}Ury{iY~S/IE?vUVloe jACY<RcH8~_\BX\W| ,GE vZƋU.Ǝd_b 4>k1s sO81y?^hG~)[Wcv'v3OȮG5ѳؑ3z. _syt1.$Qr +G U&D&& /$a(X'Y![ΰ:‡C[NxG[zptH'ww‚Zծcܓ|AYuC*jcK_c#%NO-q`|nܟϢBX~{Q/g #w}oBd^?C.7iyE)'ɽ6wğ'F{b\7~g,o?Z8G $γ׽(J?r$Ķ!TҥN ْܴƈ@%V'no:Z.ɂ-Ѡ:gH :#dC?wpSRo4"Lk(obS")(3Ɠ-UG8euek_<ċO oek+#Xq-@? lĢo#:Y& Cɥtoe jWr<:_MN2 h'ǜZjY},x!)/Q11c!h0r%'-n_>niV{_LOe,Pr(H='c2q9>BΩl˜ W臅y{`ov޽_:ScoR 祐\E$$ #^:2؋0X|E,S\䙠<_^2C-w?c?4TPD:(ZgY Ҵ0ؓnM8:ڭP 2/}ʓP#j)ﯙexmh|ٞ6CP?bYvX0!C\ϔmc!.C?N?:/3so\Bk,i _;ѱoSb*1_xŮ߆l-`S;։BbCKCFv|NKR7P<-S0)zͷ#b:C* @} SEsE.rZE41 kyَZWBW8>{,4Θ ǿm,]WT1aemKv5#+cBãeZxϣ[ m{X:nñ=8Xip?_Q[[_ϵ-ɲvj̯6pmH+mTÂ-i/h/\7w:stu}ׅS]8ǾIUCelgΫ4:j_\/;8{gg xkwM澜N +Hj?/ϝv Ļ_u|WB;/v?H|c\.dRKh_$5.bΝxٮܘfg_4xL#Ha(:&,Qm19oӃke+F|4o+X7cz㐲`#c]Do πcy Ȗ{;#Zh Hi{?0ż$8oEEMs|,Zp̵JYS|訯1 q,sb~У cx쿯!-<[dfY7iE=c !Ί9-rԩ>P?G4uݙ6@Xu캻wᐿl s15gWly?8?n䡯ÊE3gڍ iٰ~yxywq/m{yY4-&phGQ;&oV/:Q,RUzWnCU-ka@ ݯd؂^y\np#"ӭ^x%U|Vz_/t[+&!Djc$B .U C~dʮEN>pJQn=xoyC~OǙL̛8f_r 8&$^$7Q;}$HEmh~wi//_.0\ BJҟ׻ugڷίyѐeIF5bU1 ئ&@Ʒu|QwctGݐG]x[CtGƓ]ll:ZaC6 Ӫ?ХX6AɱyxWD7efbo锼fp|>ou %Gx%Mvn[-Yq_Bn|K1?}1/S[8w:\b\\kv+7ҕ:*gDb%ǷLo_y ؗS~|nݹOzfw?9><;6g0 rEtkŎ;u?~f̰c}M8J %{VbQ}k|J>+/;ڦ]o(ߖkh$~Q>C:VׇWʍuYcǰh/S@3' >8?px4pv慩=9&Ic~A =-.bhx)W!M5o̟skq,"~y$\3JF/nr@IDATH ݸ۳MX4ÐZ 52!/&e)'i^;阇W#=ŻIq5CMƲKrMƼέti6V^ ->)\'nmפEn[=ȌcHvàAd)j!>Sa﵍W@n]?~D`*_8^,0^׆\cv}c{ƁpKiv3>2gdS^]GD~KOs c,,ƦnLl%\*v{oU$W_T#/Wo/hn;I.O Y6 #氛uFmN t;y|,+М.v4-_WFN:B-G2Rccke\|eTSVJ,%#+WGw~|uv_,1t& PӯJZa%4~^"8YvzӉbExiDo _ M4ɩߠ/CZmƁmm^#_dl Egjh`Pm_FlpV͸S?UWvlL{zX#5!im ,`w'==>Ȱyi1nEmXBFn-薥 k,ǐV*ܶ)"]_2S!O)]eOYکVmheW#|/]o; )y@1tT˲>z(8>Oe;gwh?mٯ=؍~Cŏb\|Qg}$X(vڽ[Ӡ=Ok^S$[^SO<J>'/guC-lŏM^Vۖ]еf׾sBNˉML0)n14j{j)1o,׶+HB:'IݖoX W ʨPD1<.˓̴PU9JXn?QrWxb_]vrlj?eX?mi9{'u__! ]ldL Qoz5y!O OdyhQ= =t5>ÿ=?=oA_Q\rxtcۻj9wȪkT~:q덱`Qo%WSeuOtuȠ]߶fo[F [q0?2V`7e;C^Sv9k,össǰb9d:q#.Vy^|Op˸GB?󔒅XJ.DYCosݬ.4I,8>dtWq^ǃ/8v 7s·x4fʑ߇8^XYi)J C̊<|+]&@b+]*eHe}xiW|NN~qf߶__c[J[ M/>no;kB7|,}◅; ?5 WtGsm g b4 mܲ/c #Ր?ͷe9 @L< _7{{7/[\q/dxT63.~tgJZp ~R.gG9xYE;G",okͲ|\D`p޲u(S$d*d"C7PqAIѐ,ټ{(?g^B)HVj)#JC[ zi|uaw?Vt9 _;7( 9cZ'MG U0m+5z?&x|会Gz2X);H:vf1nX̏3~18:?deY\U[^RAnΏx] t.lx=Ԯ|f2P ȇW' v:ٗ}8o6 ΰ=E2-M-ڹӏ!U2w-r}=jlK:g^7tԯt|w7*,'a^A;uZcMfEUq&oCꬎ7l&^\TrN G\c=wO.WT~!oWŀta)I<'M/᳎2eޜ3hn0k9WʔI I|a;a5_DQE<>_K_=,19|уM-Ћz8b괋b" .JȈAw \:Ptˢ;`Cz\^ѣb[E/aA_c#Lk~vpL)Lw}do$COv8n:&0|ԟ~uwM7}G,6o a#fjs_/Ϯyt۰]WPvk.#6a{mMiBk޲a@e>`AE;cxqǥ~|pB\ώ/(RȤ;dP4pO($)DmF]'/Jd$:|1[`ƻ\ '`5sM7Gѝ'2K!D*bl.̲M[{(tca9p$oj#Ξcl}]>h+^Z!zD?Eg>j넷ҵL8+%-)z4c Pr7 Yh_}כd^VQkq8@i[mS={{O񶊧$+f\~,ܶ縰#@.>MlB1EdL Ji|θIDŽM[d+z2$2hִGѯK|Rc(te7.-vف,o,߶e*[DZd2L)i3谭ǩ-7]#10F u5J`ټ[Dk9t]8F}IIgTӔl,/^"^>zޔzEipORhR~o^6[zUǖ;~ /f?ߺn NÇ=b0J *fT;B LD6!!>K $e?n_owGn؝^J/84 6PaK㢶A:1 | ˳}OD_>4,8㩼S|Gu\tJԙ:nG!G~3k| hb.&hWhq*)y*k01')'xgyDÏj=A#D Q2 2i&)lY.mͫ }Za?^-zoDzYJ1Ymosqdɪ8g?3皳B(sr d4O@:EQoC04}Awb(>tß{Mݹ<@gyݛ4,mPoO?VUN=izh=,SP/}XHyiGP9t9r+s/~%qvp|׸OXm7ZnC0|`HV zL1ʓ_f_Gzݿ⇾wߎlp<W,cC1^5k阓9WG'+j: |~Oqs22,y^Aف\\9:efϝ}ؒϞ~C9I;191ppL*=m>to$x,D/k/m#dd4-62Gv*#Z} &zU]!Z=S[\_2bPuLVqVǕ8Rϖ`toZ},?Mon/g499$啜C緬t(H:/nκp2uSVҊ}}:UG]"P'wp M_6 ^؂nCln2u$PXW^kw]Ciw-?u6~g؁nc.#rTZMhGq:Nz˔6.[Dx4divκW;iE3{xY }R/%#i{fCVM+A3ϖ=u}m!ɒN2EǬN}e#x"l-U4+7l[d7C\̏-.StOxR>qk"Y>NTk`(\mPňj\˹sq4Kh#r{ mIط.$ ѬZj/`}֗u7w7=h |p}L_FC5v`33N|Fp*1Nhs D KPoy]㷵Qa o; IuPi?zRڗ>cyNP6l/[SCl'hbwv!梇y ޓ*ҏy] ֳ_8oO0'+.Z*IyBDQ²oKhDq0] g*Kf??6tfr iF :#'+.lKk2%(w-g]XW ሡ}]+Ne/u][_/!}[Ȳ׃Vb#orsΏh?7u_㑧g8?:_9n$]/x^~Ͷx^ /|t9_ah1ys㻚G O)n$"r4M9Y/E?=7~Qi,m?V~G]D%.  z硋iPdyF K: m=%BJMZox E-)nO䶵L o_Q80։3l6,5PmKOC}]^U'vz;n/P6!f`  #}^&Ck&d2ϼ3b5V-pdZVg3>Ə}/Ǽv֞nÑ)@:ҹׁb.Q5{\dW^uK['zn׻곟q6dK8eu]/X|kUt-g_2cS}~gdZpxb:y, uvx9UC?FG7ηhi?4?|8z~nWYz[nhlfя$Dž$YDN| 13lmWcuŘ{sq*lհyc[/T{͛//[?{rM/9c7|'/N*~/|kɅ[F-m6٩WKӟ~o7\A.>H/R=o_ӎ~*~w<{{7̭"GsygOnq.ߐꅰ$ YO7Z1 ֵoB;k7KE&2yF}n#o=456K89uSg^ nkck ^znޘEs+Էlȫ=KXkco-oGEkp`h؂Ayx2}v0}E<>-n>b y"Q_:3?|ٟua>ec9_Eo}G?\Uo*p&4ny 1hk3Uoطx[]u$Cyuɲ|uf{=3_ rC9؎ߏiɨ2~|[xǕ|w(A]|GZb/*yI8kߺ#o 6T|Ų!1B9asc Z34/}t_<&O05cZ@b|wK99$]}1`o soŏ~"}k1/Wr,EP+ȿc|sw=oϚy=o ٺ+[g~kbS|װ؄d._:z?[/j~zV;gX#BxL'w>x]8:>L_:N.~f6s\ βB:Wֱm?y\u^Kr?v|“+6Z/e_g[^˵ŧ v~[Ƿu?viBot1X"wu~+BpY)1raL--utWƻ~EY'30ue=~pXgRu sukY Zeviwno_9?7)~a+c܊<8wu?q4f֬/|c(Ro]hspag)[GT ozmC2\Px.T|gZuџW~PʱۿqiUt:j|H|6-Xr3\>]x`z޷t{ z_go_'QKֶ%&9@y%I3&N$+@l>T8 G!{K|xc(y &ZzQWb=ӽ_ONS}|vq8Un\O׶~1)]k.zPY!K/H麁^ϸ[}6uэl,mϢZ_ߏXzݷֿ1d#b;zuz޷}tB\hU[-G-MeIf \#pE|`p51Y>r,pre``7l k7! +Dk<.w=w竾#>=\CqTY&9}ctw|+.cN[^]M\X\1OX,}[oX\v:~=U|':]c-EÒ.o +> prƟ=;wѾ9n\rC_⻦O6 8?@I坜|Il"gI֑<|ElPw;bDD*yY}ͯp# %ڄ jd;b]_\|=aGw>/ه__gU{nnk msa|娺qàтVT raURdyn;~>8Sǜc5$s2'tTP,ijZG2iîY|3hJ7{4e|l:yE=ƗLOli^[,yd|i6wtTWl+VZI\BX1 祏ş'MVG܄ڌ)ckYcWs?]yn M[ƨs W,.&gEC&˟oRL\VhZ=x-]5w3OX>w%O*ԣjŶc~}Txi mI_5_up?ȪZ|5ojL/ ܣW'ǧ~{o|;.2$VDQ7H8SS_汷@?VWw{ZӼşYǏ=|~W"uaoK5nn m1_qO:={U8s7ʯ{aq{Gٛak>;ӹs/-[}+p{q.qr8U-lvp%öʳ׋Z9c'㍳vK-mľ6j֑UwֹZ7 }[nV#Gw1=[=~aoHK䟏 Ŧ4)"oXnɗE3 m7DWñ*UV1,]YUIm8ĩ~nY5s~Nڎ\kBlۏWcU7ڬ4bk'/9:%'?G$GMlc#g Y]f63tO]~yQUe8m_[/u{=gcY9FF磮k~NL}BW0U].\EG:T7h(q|]ߙOl~{!~㝛g"<˯S97Z{EV}7۲Ll?'t%/邨:J),oȈiBњbl!-a`D 45Os'%V0 yrQ$=ZкR?lv@>f-&Ɣܖ]|wdCun1UOS۱k[ʶH]s;+Ov566izU<8k瓣;攱q@Hsy?[>rև[V!1<汅9}&hSX :I9v0kCX "|o@1RUFWPK᛻.ٶDn\%8׸TRBop9b-ת$pndעo樺 -{EVl^/0r:E::[dg͘xM=,sxע.yYjy>]H $EO.XRh0ցrj2RtHzCVZ97˸>^ Si/V" ՞{JY{Xvnfsծ^k̡|X+Ck}m+jyc" ԏo7icM|'q{̍_*jc?0Os̘?4NqVyoym?9m,Ƀ*#cOzS[N o kV~>dlwyJLJb̝GmkokMujs~-Lj9h%/nlZTY &fwT^yk.u9 x|?c 3DH;qӏ<>?{[O32|?&#i,YXGg+O՝skt^m=YKyOlh c r6ǏR_\;EVa߈Q7 B;b] 77)e6}_|>0<_ 1ƛk<}p1'*^C'wl{#i׿?Xjuʨzzѳ$|c=9c3/_>Z(tlַcu<2N~t9=_y<؈P~o8w^OF@/*9>yLGﯾ/[9͆Xcssǖ i8Κ\xZmv[hRa8Ŵq7\#~VǤW|ɵ* p14UC.\C|!B72cLj/xԚtse*w_y]ōq_cwK/k-vgUF]t?^_nqYm|yq6x΃8 .n&kkf7f-a5%[3!l8Ͱ0G ,\'uШe Fh\[f`L[;oo1Bجx{;>k~KHzL1I G=()B(}Y5K]hXkKsY_ lFb1;2٨6jQ'̗%P:/I3Cο>Hٽ6k :w2Ov#Y#HQ}/z3^_רs7W SV{cH5"Ys_㩸51wkc?m}Q:"搟:0g',+!jz7'?-lw7=`RčfqEŞu]LFeKYsML2zRc׻o=)o2HFæwQY}[F~Geu%v.t1~r(Rώ|Lm>$C~>j-wO|WE#7(6ǂuQ/ôYÞ5wƧ"7ҙHG%?qo Hղ;r*`iyqKWmZαI˪ye_+`c;#kv*cLShK\U?5@ʹ &G}WxŁAp)'S_Om=f\$Qf=X˝f07Qz{CSus!'PnݜSm>[q|ԪoշgojՕr8IDAT]v:kF|~ ߏMZN~;o0R48>b5c9΍ŦEX=7j-߈3~}|_-N笲b+GŜFٲ&*3e0[_uՆ?`=zYz4Kwy6v<+7VGpkr5d}YLFbKQXך'U}2ft?_ָ[o{%jےI|l](QjWܣNwqg.uO[ܣc+vc[:o?p|kXq1,5{jk\[6k>൒7b[W5}Y_xv}+װ3zwd\E+[ l2dXmۄ,jg? o5v%=w䏈 ?yy ``p<38Лth~NXqeaʧ鱟~ts8J]$(2ufz+I[Iʳ/~lC^QOg.юF9ʳdNmz:o$y,q\ڐ ׫>k}=~1W嫘&o=+b'f]2Uzlp\dojc7Zn|GZ>筅<;ubG8ߪyS6+ƺg͎'jn9z:ڼ8''_ ٩|CLZڅ;_WWӎGZ_z\5/b>j~*~-5V(7|$ 4k+k6M(ZӒsHxs/l3u] SGXagzHi܈$PQ?KNL1GM{gxܷt'y9jF1Q@=X0-bi{7o&e:7De3a+ s!1_P_RklgӞgE|5SRGyK c`(؉t/.k3obeX] r8Vk̅>튯ʨ~rvr(d,m#ṅ69Nc.ڨ~ (hlݲAn^7\\u un2`ְmS^a xK-[weYc6GS]fmaGSyD[q,P=N^鏼)-{:U{ >$?$:WZ׃|jܻ.<͛'"Iپ7ƲbU>|w!W1Gz8l[j^yyX$kXFg8xE~6/1膨S}XW!9jV~0cLp:G7>sX$/ysO=zT[5t|'9(+9pEb!22nL@<ĞZһyz>|,nZ5f\zz,6+gsv͇bn[OüO<]2=<ς zb@yxog $-yW>׎M|y3Yz hh%$xGX~FH '*:?'}Y?jdy~'V}63BOʖ"y>7cvp0 ُ檫A19!C4 #_) laj'rί\W=~_\k?6qjIؗ^G]>99 U\jg}[;>8_{ՏyZ" E~{m5Ɯʰ|u_8g85Y~s ?ƭzykaX/;޶Qⷭkk;O$t-1_ϞygZιgb?^9m}駝+$? 6緞+dE]xJT gu}^pˆaw|_&$+?smmNAumP(_} @^sb/|O|67GdUƷm(@>)]E#>v:Y3@=*x-ĩX}c$C;Y_(c|ΩZt>ٰ+,ԮOo/^}o 7] 1%xbq^1W~#+~K-G[~Gȑάu㼯$_㩶;Ϋ _=WÜ1bloJZlw(+GU#ΫÜHk mf.F=ubʧwDzz -P.%b\z"61?<V$USǻWItW?1l|XAn$zG7͕XA܎'_H +K8PdlwpkoP{s[1Q2EfPF5Ixg fZ|̝aI[c\m2ûkγꇉdOV -6$3)uv~1XV b.OMOSgK֧u$ym?J0P|֛< 3R9g]eU}/c{-oǛ/aGrkk~y6tx>J#f Əz Cvʳq>Ǚc>cm,aձmmwk1bF8g8?R^0KlVLq/TfUq]᱿J[89wdz_ $q7xXu1u$6ܶ+EܾQz<ߒoyk YW$cؖNa^Kq:n:6re]0]ybcd^mPi99LbdF%񹎼Px* 4m# R; Ш"U%_x&)σ~wɢ^9gdYKm9Nm_zɧǕ)?Y^,J-_:A>o͉c/,Oc7=lg#{6%iW! .>ln_mw%z}-| 'Wp?1:p X sZOcE_/bN>OE1*_[SfGu,O]ޏc _~ضYllHũԹd-^B&L&mn<<'T.y01ĆStg4޴eiSjҐukkje >!βa'45UhB2]v?W?KPUvKúrɦûk1?ͯ,kϼǽ5kaňCk# gcl#zC~eq1~E7GY+QQul,>lHKm1[G;qѯ(8f_c1kq`YcF[nlCȃ`S#ʱ[O5jC1#sK#M6Y5ƺ9>TXc{Z~.хs:c@iAWB.%.Ӿ`aׂg8|d5x+cb^dC$g߬o\ؖk9޿>b,31Tߤ*c-?>/@*cz.scm}]7}ZMzm1qY$&01><8gm3Wc8Sؘ5*xo>Ҩ3&4!K_.fsOًkyڙ^'q-oI)q⩅^xzTlK?k{?'<.y>ΙiD=\B |xٖ9VkI-ƶVx,Ɯ>U^k6=>+z>ʧu%yթE|1<$m_gll%Xljpדsg >%8p-js6WyG:VjJ$9떧*YT5bg rcaƘ9v?[׹9ITYr*]7`/VFR8TlsHvn9iO[Ԣ.<2rv$/=.~ڏ:gȨO$^"[wܜԏ@P9JĬM &տkKFQGy@4~nQwj)o?nX =gVt/iX4 e=L9Ls"*X1VMYs#*qlp΄OWm/U_{k]& O9*%B[׃ڟuKƺIqvRh '[|sfUt,&\ Xyn?x} Agr̉aKYsþi|~Y:s˱j҉ >rs7?/Y^zx",tSƾQ7ۏ oK*=FYHKskf>֏m0kYR{%S,3nNs̵ |z6!? {{}.'`n<#E2mѴQ\~Cә\3xՓ(>ֈA={~{:~8s>w:zsMܭե1S\[5cmduy}7.=?q?0!^lw+"r0 'KpkŷeXOu'_O3:1= aوv?z j}ﺴ>0eD9ûs|*Żl,zö5i1Xqn>W磟c_f.ynie}9+sTnn:"6Z}5cʭޠS:])ٌc,bSf<ƍvcƍ#x|`S9ekuc,v-}{n磴xn\zg|OXT/KB )o1+m{_yCP׺if^ř2vyX=qH(}Ξ5J.KpUqqu/ҫ?!RNMn[j|lOk 9㈉E<#1į*%w:z#3@ џ@^6ϙ|W_{AVRu|UO[ +rž.}'(5_7ҟ"[\?Э0kM??r_xe.Ru+^1ڊݲK(@-qYGR%qYV׬s5}kO:']ZT<l{]Z嵼f>KC=+'r~36Pq qjA| w114gwo8[b+ƜSeӹq>mnƭWG?`17^o͉7:ح#Gss||şqЗΛn`wb{V,k\mnn>F$8Aj`Gg79m~;*n>֤ks鯅7jBnp˗['z 3M /{˱/I O#L~\5S`[PyjB uDhkӃ78M)x#7~7ÿ9}>o|tgayU39WB@: Ձͳmzi5$QM0$ n_4g7L(gr,csz"&}һ $37.zhpͭ#^߹e^ d9֧cׯ!tskw=h k}/ɜ\3sצ:xryL|Y]#ڝ{&/{^ѶY:s.vQknbW{]qkyls>r;\X7oi41 s6εZ\o7Ʋ q G3~Pq.UΡƻ{oӿLcGC?w;1r0̝0r4[q_Տbx[ ԆǗ<^\eIÑǨ_|Ngvz%d#5%FRseDd h75{k%On[9m-fٿ |F[Ӛ,IPm_u1=ϙb Az೿}vbw̚|iS9zo.,yqr{/b(+몘Z7v=u+'M3vSӼh5>U^董Ωkrvcmst!Ϣ<;m_ 7ۏoG59W_|-$ú/dgdz R=}=eCq}P/e璍!k~?*^棟l^lYT5>op"kXWXg_8ټD֎LF}1%`#&"_%x->cz5[۬<]`w8ƻLxMVqq߸qwo<yϝ;K/ny9ǍL/s_69돜Y5H[3~>>Ƕi9e;ۚ\`̍nk8nY1>Kx<ְk7z|"(ł5޸q^o\>Y=ܲۏÜHƈm\dFyr?{8k%P0"qEyՏO§5lG1c\wr3|U0i=?zG|M,#5W._ y]_9=|I@ m&'|:|E1-}A$_[@d| `=x7Kڅqε&uKY3ꦽy,# !k5\׈Upsaz`Kws5}Y^YKf *y{E2䗔US%VrDuܳͲI,wBI8 U_RBr u'\k/޾Q=o95't94uYfK ӥIzS5a+a\gWy8]nvGGpb'Cookyrt=^{kLT~cW{sϟNd}~t|kO^G^6ubc=+fDŽJ _bIˮYMzZ/tq _Y7%|WpCy֪ ^?4_xC;:5b؍ f{uzZzz܃r`~(8Oq]R\q5fEM w]{}=RDsΌe$W>sm~,yvc[W~1m3xcWi1s`sտxpdumtf΃gBbԜ>;]D^՜5ebbm#^-mΨsfΨ-ݵ1_15i^{bncˇ=Tw_,ȅ/(e߽pf5nOnB_q(OBPz]6/ngjo7|^ໍY=lZ_׀WJ7f}y-\?mgbǟ޳r`s:_xsl7͹k,URωT2x:F{ Ta_fÜ }ֹKӇ~h _zǦHqְtz>7=㳿nWꣿ^cOQk5a*ޝeT.kO>ja m ϹN'?Tkd4)芳[G*9`qcƻ]B~2եg~^f_qY̶{&Z}[:~ՁdPSr{^olU(v <Njެ.tߤ2gl^7#e_mM6rx^k"\{w(k|57c=_3Ưw8]e6J0[6|P3v;8ciK3#k;|āgn,aYՎume(c7 |./VFB2_fp½~Wէq^*P+q#n~a>aw@r:w>˒Xm]X~5j"=XFǟأE0p1ؤ<]8XIs$uHkH\!^3@|bx{'Ե bzgNoO<uYsxi=OC;s?z{"ܪW\ΣzQW}e1X.9ĺWb5N\)sDg̲T>fBV%?-wXOQu9D`Lt"mRHkjnLoi sF 7Ƽr6ʊnz# xO{JN1r8Xэgm͜=n(+\c<_Th[n 1u+_㓤x8ϱuij3ψ^9dT9hc=7c$q浥 ah7'kw !<q>ŋ|-Z֞]%K&<g]Hj^ :8sOpLtk|3gպߙ~T'BX2S?t-Y_9ds՜).lj?*\<|Uמb;;S~"T:y鱟a@qezꃏWEga8xW_O<9y~?<Gs.+?eimu8jܩ5he£zi =3N7lv\32 =_yr7- Zm>ڡ¯FuO:'#5ZwsCuI#fu^?ᘿ-?*/,wy^%zgv@WQ鼖`WG sFV bjr~ટ+؎$f|<7ƹۆ^svl>d#6Ko dl+Ʊ{ kՇ>b3oݜ#s+}j7xnu>rȧ BsZt./$:sċ[7Xׂm0/#7ƃ1W^W9`?]|] uXfxr=#?:3&N9ұ‹ٶ?9ذ9o(׸?>Β\l~2h5&8.qp*ҩ][3/?E_yog-z4K.wr8OL?O{:8?R]k9ƺ AߔOtеf-d;|}ҽr"VLZ>ZfM6t $7?:S~#yC9݈ȿsݖd_:,3ֿ̺jYϷ_S<Կcx8˴I[c9r 54џƹ0۷&ms jc<ΉW6ȭ<:/2F3<:jU;csmgj^c_c7~y$;9xōWi@3llϩm`[Vuou Fy-͵~,aqvy-3ΐ)sgrƸ2A|Cw,`\6[wG5ZyT5ϛxs;} OPc9[Lv!\%(pI%&/GWx}ʈ'#x?q nN7Wɤo5pR_|\>-jfH%c\ T h-̹DcsW ȌiCɰd\Tec\cD0U_Ѧ;δ^6EV;>cz߽.c׭Y8-OW?0 }w707&PG7c#tsoV]kvǸ>5`<> g㫵v <>ۏ|~"7cن܊s  -l[GbY096!SGf1.cې9ssk0HV]st|+ 8m? Oif{nwϲvcZ߇_F3s-'kox`;H C׸eexp\F3Ᵹ\Fckf'<@>HAb5cLFrŋ@.m@OcF7 3kz=Z/U  PwŵOx2O FrεdHq dVpg~nwϯFV YUOW /|y|m׳]޿zP{|oWގ5b^ƙ_Mmgю~Ǯk~ <Ǿ5 9Հ@z$s ǁ1Ywk.Xq|g] | 7Ko\|]&?^oX[ n7@/]l3@`*S_ .*tQ%|Qk = quPႀf2mBG[& +I *i=:o^4#M Eck 5?6 t| /Aq˒B>):Mǫ:- + R)EgM)թځ;pK]tBy/h9$o-ʛ;Ƚ[h(2]hR!ݶUIzg\fīiv=uR%x1^[FM$Bw~/b$JrᢻK|Y:Or#[7IENDB`kylin-video-3.1.3/src/resource/ico/nextsong-d.png0000644000175000017500000000116014212620632020350 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX +DQ(#/Peam$ePvMFBfRI5YI $,{os[3sΝz}_GJ5 JChUI>itZV: 6d̘; NYLSoߴ6iRUKٍ1X@͑5 ],@UYY<b&݅@,z> N8CDHG?5Nց2@,Vt|LE3asO@Qqpٛx5 Q/$BI4V1^ 1-{@^A'pNaP֢79~l|x&tpٛ>چ|aEKq=' 65Fw >j:.#Aro~ bgtctԑG7}dQW3~5'_r Iݸ*NhPMeXIENDB`kylin-video-3.1.3/src/resource/ico/icon-cbl1-h.png0000644000175000017500000000474014212620632020265 0ustar fengfengPNG  IHDR mn,sRGBDeXIfMM*i `a JIDATx\{lߙ{;}6DPEkGN*4)Z)TQTR)i* -HiSFi)Њ4P%q$/|=;cvwٗ3ؾ۽v,|3|3ͷ3{rּG?G cL"JQ.+{oa#'E G:J$nSGobcD#~acIqQ9n-|@ňH!F7^dMR*gke ByibJ"+տ,:@&"zcRC48$V:cU>{.@f}+u;&]I:ӗ}wγ-q^("|!/ |oQ#EY)6KWό "">Tdj?_oe›#bϙӊՀl‡ؙ_Kmf 0ef,RVx#4(Y hdw.뒧3g֢3Xw` ᅷݧ|BYkИqponsJ'gkĘMwulCr4(}OIei_ cyvp05G%ZAHD1--$f?-B`O|tpHmZ×,i;$}ZI6m-BqOo3.X !1vA=*V[BCb=8*i^Ԃ\ lQ6bO2),^Y+sy|Sq$pe#\ 12-MƽyoBR\/@E|=9Y8Y 1a7O7S00pOa+OAhb AF% РRb-0 &yAF%,F%ltl& @bI;`T'gqgPKhnŌ5!,0 4 CgHhT2000^??\tُ?mشJ?Zj¸`RFG ]\D"S{WCRZ#ǞhwU} ?v5|]9 jpEKZee_e -ycᎿe$i}>љAٓE@FU*n>u{low#SִpZp{QeQkj`O?pqXAjR麧uK{A/v_䆻߱%r[fĤ>#Z 86]H@H(q!" I4 '5ʘ ŬvMEźʂb!(<( ֝ F<d:,XBI &4ׁRIu"4܁{ C6AGEC2e9ID9<97Y 2Y+GYp<ǂ;'n$1yMJx@ (s= ?aIENDB`kylin-video-3.1.3/src/resource/ico/icon-screenshot-symbolic-d1.png0000644000175000017500000000070414212620632023511 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b.IDATX W 0!h%; Q%,(ف&+ $RBZ:4ƖW,KCP!/; `^H5 T#0 ޶w cE8>N@sQ'DRPD |G !hR>saHܬ H h`{Pyk$1 P^B٨J|)?,K@ m {JZ\O5ϕU_s^.&`یOXTT/@۵МBs?Rd ӮIENDB`kylin-video-3.1.3/src/resource/ico/2X-h.png0000644000175000017500000000222314212620632017001 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX [MQq 兆A#]x e D$)(^-\ʽ-`}{֚֬}<9ٳӡC1+P\y2ܼ1;1`,0d2uO](07%7 t)t?7#Jl @ә-;zGAGߓ&{Esa^&7 m@1?bv*3+B? PhP84ܒH[K]Ǭ?Eց @jt >;и龆~WPkn/cBSW|A}L '_&kƠ_c= ^S[d~"s|Wtd?n5LՏN_񡆺㨭 K2s7u]_>>Xզ<Ii >3 ǷiI'Ғ9RK |o nYm[lcIMV f7u"u 7z|+}.f8hQ^{v(@q~g.CIENDB`kylin-video-3.1.3/src/resource/ico/play-mini-h.png0000644000175000017500000000072514212620632020414 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zf?IDATX O@ vV=p nr+؉]d2^L%f>1m[t :gE b豲@[n @&~o|NX@jVPPp|F 3$A UKڴvH Dqip/'(Cr\μB (Dm/5W:.ȦK>ƹSKKw\~.Ѐ Ji),Yʕ 54, 5:֛v5kl7z Bm7 W]Og@\U5IENDB`kylin-video-3.1.3/src/resource/ico/logo3_3x.png0000644000175000017500000001303214212620632017720 0ustar fengfengPNG  IHDRHHUGsRGBDeXIfMM*iHH1FIDATx[ yf]ҞJZI`*\e Ɓ`b8;)I0v1.pCp8& B`\ BVcz^]ޮ$\===},0&D`I&lG8=Qpz9,vn 1pracw^rD>lݐ]hT9g%K]y'(hd 8\N>-8τO.Hts{q}"/E*?H@%HbY林w ,`^P"3ʇZ#h )_&3>pF  1F,1 Ze 1)+U}`2 (Q=Mwq>wD>J^~ Vw& |6Ѳ@X>ˍ?@+lI ȱb1{흵PhYks~ߑH܄iEcA*j"eE(aTzƔTgT|)gy.BDI:,d?\+@3'tb}sxKY@栈Lൔ)@&=:mSٜm #ňf,I{iW)!Yah쥮=ǝ 7AQ+-]DRO P>.3 8h,6p HI_t L, @@:u+l@AA@(dF_ )+% eq|Mˮ- A6'o Zm~&P336/ ={Q1)d0²˜ѵ8 /聩.#K.RtTX\ `^fi؏a}c E4n}y¡uuDR  jLTyRr :Gn6tCnzz:QvB5VLM1݁d9HIȘ8F5X`Q QxuWfN"8D"?'IbF`o_~W`plglVxLR^ecn8fXN٘@P1/\͢!An ҉Enf74ZƷrO4 3t?u {Pfg>p<4$Kp\\5\EMd[yClʻТ0z}<8?!Z/>@ {Z͌D̢ťrfu.}Ljt?==bD5FI*VHpBG{%&aL\ZXLp/8cqTV4-%M-(3#)>*xs={9$ $BH9SM$f^zQ Q3@ "t~ qY,ZX̵f[v-q?cI'K@8GGd;rK!D>n#8)! 6$Z+|QEd#Er4A$߰"9|ɪp2>~ѳcG ma6Dx_Gp('1p7HiԕI9Kpj8g0 uیv<4d1&Tfflhbf8 by>Ը[gJ|ʿbP._7΋Ř1ȘFƂ27"8kW#w7gn43L Q1%c],z^djgs?G6cI h`v(GJI â$[kэ]U =ڶG~HRF!ps⏋9?-9K1hQM3,j % ӰckGv"i9&Mz>MMe6 Ӌng 4iji~4 *=eYĩEܛ?o튡jƩQ}Zټ|j9 +A2U&TF-Ѐ< at8 uȝk4L=(/Ru Q 9"mwX/lES؎9bǘZ4 4[| Z5 ~?\7!G#8+qB^{Q=33vi3^HH$`y P355TW`YHLN^Qpj،424Cx1yhrƼT1uy3Q 9g\ 1BUz, 8>)5p0301 _9kQh>r6LXÿN& IM%Y5̂8Z\ch݌7s[B.#Iq\_p*-Q]91MM~( F ]45௯~c: dt ȉF`\rb=$&FNjARTLRj'y9CX9TPO,1hL[ش6&c+Kq3?zًߋTSfidxzmJ4m6-Ȕ;5t؝ }8 LL,#( T|OHEr[q^jLgjwy&x⺵gG8sR @Q]G,Iw۞wKp)$ JҚ&N]\V$Վ͗أ׀l'%r}zMp &ߘGubJԈv$a5é-ӻ8R2U*T|M &cv1Cor7rCX,Wxml&QH.LsJ0"_o). oi NYRU ((FL%^~eΐCpïH6BW'1!;5}o92Fmm\'S ?U :U6M{ʡ:4:Q/}Ȼ[oz 7aX6Q͓\Fp)  F#(pt>³H+[˘X_W7VQ醭@L!ա-)s#RGz#|~?/°p,_4`[{968xFеFl׋83IG̈́ pbsSL, ֜~U.|3u wWsa?Co袆}Q0s;T^[7~q,q2xW@ oS{ 󽔃a8+K39q\`"5rq!\CdOG'34}C yeE餿^:|V`[j ռՐPbg]Ԅ # N(vЪa%Tqo34|Iw ebON]mH"s6;:{ Pa~u; tc ۍh3|Mnp ;KT)sA+8:ɌLG#E!erY#M8C{zݥ{ 5>tE"*#}|PYe) \k6;B7qb^F^qj/=f0k=doƭ;1T%;veřEK5cJ9tE[9|7N#T|3P(Tn^~.?^UKTA~hfk<*6,2mw9EEmN5ʬ-h#@/&rz: TYk' R,a;guȨ+ ȏhM,_qTK>^5N9Z} >[Ո[*[|Ls I(.YD]X>7 >lI`&t O,"AKӱA4of/iAA$Bw֥hڤj1{j܎LYI3~<7Ƿ{u<"D4L 0c ЕhAx3Ș`Nd%/6+YJ.ehd @Ef:g܆Ba*ښT59))1LQlWg|h;7ag,I>ǘ9oEeh%+ W){IyaF1M Q`ڈTZL\.p>>ݙɾ1z;.cCuIjTi^) +EؼMU߆JyS}OW@,BKM_}e9,KɿGXՙا3<|J2Jm^Bױ}{muOgSPu7hvÿ?\lfa ^9 =J_KPM˕*e}ւlYUTDS>%(n7|&.ռ[=H̎߇YF n(Q*_V^ T嶮 N厳_7ƉޟlwGw*~¨&+k3S{Q#I۴, ]Ia[fеï('a"z!ainU&$L"0$L"0$[v^3W=IENDB`kylin-video-3.1.3/src/resource/ico/play-h.png0000644000175000017500000000122514212620632017456 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivIDATX ŘK@tq 7N_ :ਂA,PEE:8P[&}K/wJaJ7 @%nHyܔ.Zw&hMLA3`0.7cy." ؄8#Hv$!H~RYDcT1>B\(WM:B Q$s;/H^ $"I3_leܒ(7uٲW˜& ^qu.pv8'o"Sr']# \f$BJ$M !Y&{ ipnr \ւ6ft! { tp N'!ȫ"($aFd6-FF&Ǝfr8]Q~r<[UOahJЛP\8k-{s !xR< ;)a;]wIENDB`kylin-video-3.1.3/src/resource/ico/play-mini-d.png0000644000175000017500000000110614212620632020402 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX 핿.Qw` NO f$v+!長c=ukS_pcޟ#h ݡ}>U8'jbn*IENDB`kylin-video-3.1.3/src/resource/ico/logo1_3x.png0000644000175000017500000007214314212620632017726 0ustar fengfengPNG  IHDRRgsRGBDeXIfMM*iޠĞq@IDATxieu&v[kZz@ IH(J6=#E'Dy4-kƖ"ƖƖ/1?H31!1YdH$˖F2%G"ERX}}y˽w2}nWK˪2ɓ'ܓzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁzqǁz8[yߞ+GKIZU ˵jU4F  RZ*E>j@H /l4O[TJ5f\X+$ͦn!MBTz-.6O4d~=ZQ{6p i8(JP'Ƒb8 *i*}iAґBT|RҸ(H'яGp">5h Ï[4R)$n h(jR;! "4MBC\N>.EC 0V `<8Ѱ8$ZlRY@4NaCE7x6M<.Ŧyyq6ɶǟ}RDՅr_4ChF#`A D f7$ Ѷ3C ü_q0,>xkz*2!+1Q7YF|1ZO,ׇKӿW4gnǁupHkg/:K#tFófS7YF6Ej@44rc2jnq~Ψc|ⅸjMקx`C4 1Kb4[LKA,R"aeY=.{D}-_Inմ4ɇ0^@k$>£P 7AC哣~/Yc:wHe`ӯ`0<0ŵ8LiR3UPI-H/a>Hះx-ٷk~thqeYx^Ec,n ~z[I~4qU/QE/ k/,jxiذC-8b5|kq3}ڦHfGdXWɴ-> q-C'Rm I Cc0ȯ~,7oDs394^!ʼngǤ"}kx0 dF$4#[  2# !0*ĀyLLh0 Yd4 ~GczqZUs05wbNt+NahDqry&0M\q{Qqlmѳy^̆b6 c:t<iԾQ,Uj'2lM7bLgCgQYf䓑$G06 ܦyp}؀hwn[VqFpL0<0 (iA-Ҷҵ|o'd4_>ߖGOIR}D?ؗ2p__Nw=?4&P~,ՏD (DGr]hx᱁ p)A0,5-m />FG!h=XO'~VRi6ǽWr]!C+r2n6KyTj*j /{LBc ^f/2 (e4%nLhTȍv6J[(dt{{zai<V;_ͳxc0-;tgGG7[}UHO.cYq &Z .?NC#FTf7'qO{OpOOWexFJxsGu|fCj[|0Ϊ@ q#f՛hvaa.j7k  p5<ȃ\;Oʘw1.ӌFarldPFI ^ɫ{<:/J?|{+Ger,Wfc7*;|ohZQc8|˫vD\Հ0ku_oEqyqLKi@CA%-0%ýFδqke<cxv ]A W͍ C I[-\=-M)ѯa@paeJ%b0̬ iJ$D<th|[vlky|ie`8lT~8WPkpr/YS'`#  ag@~Ȥe&HD?4,itV'S~h=6hFv:Ql^'tflZ.rbmI4-I,[ T!wM6SLhakYoĊ|][u?5I!„u2QK YygoqM_Q}Zp97`mtal2T@ #<ã}2$yYnh8:psa5Køx ?˧UìiKi!G/ѷhej,mZty4JZR?({ڻMn?z湶nmY%ӿd0ܞWJf`S+:G GpW _me"nC4dZ+ g!,t+Ïﮪ`5ݠixvY q&Ԥ̫ Zp-oy2P_$azAd΀fu3Aa(xa\8s]ĜHaݲza@M[gogS^OO6O? wZ)(nj*OH8YT@ppӮHו50.28}ynf4ٛ1<ćWFNO"~7~?F|jȾ'zw3uŹ0)e`ŠTh"7oi~kkbo>NT>7KZ짥5HHG>,`㧷(Hvy\?z&F-$e iIm@@d9F! svUaBG;!ܖX|l/2߃[N5F2&ǡw' &Dе6Z_ mmP)2 04'5 mM:ؼ40~]']: \$ 3W~>{$i,^5,ii,H\qBd☞7X̶KO ./DTaH*G0'CjW#|K|&#L,+,iLW CFq{,px!WM{)_;rdvx|WHb| >mܕҪ 㲅on^'|N83ZhpҀ[a=4YZ^Ғ+˒6 p͹Sf*6¶)(9if!5E-yPb*<!_^JA\o2 XUV7 RNˠ;%C!Ȳ "4 /R^fp%N<#; ÓȔ|KY1ӻۜIBAg`*)0V }g +Kpĥ&M<C:|Z xm`ޯpnqy1-K|\yGV:>{IsW%n@M yD+Bw33lUZXCIv'yɞ3 [/BdzHJGexXƪ'eA|VCI3${Uז>{jqnei!B[i8nnO+pWh<Cn"eC\âS.gxL{_EP:AeǀDAku ^a8T C7GwQ])xϤi[o DZ|/8޺m5kem6+ ['U0 /< a,j{<@Ӝ&Mhƕ0i2+˧-Eiuˌu?Ԕ פT:ˈ.etKI6w5K9 &3?lm3F3E 7<_+uƇI?w2+YUňSX`mQ+t sU 5B nFsT/v+9I-Ⱥ泞eB Ƅ\^kȉ%|v4E=wK.ߪ^[=a&F?VC> fe6BR\u:N4~y;`tY_C7+H6G12ԐiQ̊'¤_u3 r|guX*mu m,\7W;ڔ~wys f3;pdi3l6?'HO;M.O(N ЩZڊP.͟K|Y'N,wlLҺo|En4ߐCŏ!9Y0:#Mky+7|uz[ ~Fїg! 6BcE aNwa^hL`U1 ql4˰ҌS`X4twz4ЇU(Uqp~LLI91waIt",G_ rߘ uXՋ&1Vy-ߓZϚ~gIG!/>/߿f\/K-,ݬ:f6.{! < cnCA9cnYǥ_ u[ڎ#u.S$yUx4nw)ci㿒l}_d_ru'/k02ak̄_'|ѳo}@{E}hџ?$!x[)ZI8Kj;VsGy{p-\#a܆K4N[<&7L!X_d2$ycf3-e!❶g-F_;E iRӮbz&y_ 7ޡї$Ⲉ:[wB&ĀqL tM -+or,)vsmԕ*º38\ q(>c{ٴ8oyc9t=M"amnb"2)&PP]+)rM$n6c 8jC&>4-5tSN!9|~%hu^|BxsF 72gwZ"]N6 g s Vf,:672'KҼ|Fѽ**t2: D@aw!~˲a]yM?J 4L &90 aP"̇wEH/nܮ˂,ɻc]P,7 |+ msgqt4f;#kmp7^YNz\N=GŽCfg_.M>458OMx+`/3-.gZдn01 {G[Ҽr.HuNho_[9I&T?I սIS4" _. #4b,c57fcaX4{ hW yT2flf6 Яn pZV!n+8BLaZoƐog <'q0I4v0 TFveh nc`[8XEЭ gzڕ\ ͷ%o[y?Eox XﰫٞMlC0&0-g N7P$ wYNg=y@9WgbyT!G?~0|5dpC(+$ ?O,jiwѵ7<u"V^JUq*28B Mϔw'y).չZcvFݺCRx'?8UBx[-*!Xwnv5mκr' 'R./5,$,|vs٣1\;܎Cͅ$OŴ$,g h:u ݀JW;@Efw%z"xO~1-u#z.E's| !ke4, ~ 9p75vOSbhgx,~ %T,f/Jr_?>g Y_14)A &aMq SQݑ~1}f(}!8T.Sb,2N +J bexUĵxpxkRYp[^-LW8MkY8mNuHY ԓ~)6mA}{:^ԕc?%c(z Y"nYBQaLJH/6L1If MX[D¡Nj(cX^? I`Yb b]RC^ Yi60 } 9e9qv W14;VMe9qǣD+,^ZCP:K1/D|ppPd;z ;%Ѷd^+4q kw}KLAxXFV/|N=ȓ9.0ePO]J:exO2al40/fl`:ɗym{1Э&CCfC1^}:nrG>1hEO2T ̜C;نl:K9_E7Wu78bNc|ߧƏ20B0_OL0&T;/KΫL݆xL Z˂yGC=aSZ7qxX~Gs\<+>,`3&j`{\Vѥ ^ql=X1cz:N--,%5\)U}ύ5Fzm*~8 ⱻƿ}'͓ŨpBfM42îa0L8W8Wa4wqG dMvpGJ[ QGQ8P4.?}\˷^$ׯ/ȕo(`&\|8Ë,6R1'S-tn@K1 70f5i۪c\\ϫc8Mk>Nf94Ιm 3:ɕzp0}m Wx 8VCn^Za_pXǡ*)C~@F+@F0%}%,`7ݩ@j#M]LĊ˥K9j:~G0gcņD芾֔,@-.cG=z6S* sJBeNN*%ch.KIs˷f? MewCX^ r<<< ̪t2vs84X {|2䔜ju"|m{sW 'h]&=*Q p4od׹ e^XnԼd4>'t[vPg<`Etey+`҇>;/>pCfB5CpluGr4?_! 0@MA:o} ŧ!t>&0Ŕ=8 }C8Z)G>vD|<$g\4#.'А+%ꃪ,ˇ.m7xE{&}/YsGmny'>j:^|G)Yh>1Mu_YUîdn˱1lcЍxGO# 3^L/^^b>LlwFstU]2U|1vaȑ}R71RM'^ܸM q%T~dh$S|! Eu%vd0w 3?71Fow ꪉJ3/>PGEh'8x֦73(CO`R$ 1Z[861>U[%n9k?jeY[vk]M} drA &7Ёw,{拨}cx8>,#r7h@)s9I7G߸+g q PU',7qⓓCr۩6Y'8h+88޹Y}L\·d$9xH'|Gd[Oۄœܵ[`G%yqpw]4$mX`e^+ q@ CEpҀ_8Er<]@ {°g߾c>|9Og/]Q,p?xKY&ꘓ+\ U 10&Bgͳ5TnΣ3#(~y ?ev5l1aߡeXRpC,ȸEJ(%=y\q)mt ~ e {^6/V_Dd f|^IN36Bw \'y\C@gDCL=&[ 0aX L|!3/.`=mapa'Joy0 טL7M_haߗv k~~La߼zIZsJB uDNyga2o8#ЂV<_ıF-w$X8`ScMc#}QTs~x0"8a:K1]xo^,~I\ыH+(W>1nX p]ژQ 0u]F79Rki|4l jTR MUd2+Dpt=A>M*^w-K\ei3fi ]JLjK8AmVXC~Ƹ=c.gk}ۈv\DBwouϘS68;S°0KBDAi#vkr_.w`tNZ/j c] j:u"f*Oq>BũyY\4X,!I`XB>,mCnRfl p.\Łsֳ ݟ89Xz?yE^;s]NC *-bu =~صaf;עYYN,`VsNX\=h/YK♿kq& h^D#:C15 cmn B8yγ- V9gBz}8Fc~Yn9 |po NaV;@tgh|Ek v"Fģk0B 3af5l[5%%K;ZT o8iά |Ěߣcx^?3%]叿n{ѕG`of91iuR"{5@bހi`$.%c/W3'!&qvO2$juvbs%[Cx*\,?f~4k~Mu,Ocᜍ3wˁɱAyIx ؕ `e4ۻ;^\(St8 "vmj$Q5;Oo3&x=F؋Jo?vViMM^yG[ LlL4s7ZGBXf9ݸu,ܱBtZ&a rwjJohn5_s-l{gߡv܂2[P@?B虭0~_z\B;\0eG7ij}Y ɝfūU˺BO/p)No13z槽M4?:}`Gms=qU} V:jC rԆo͂nCFOf3Y'z6QXO8u? 'ӄU`D3;kYq$[PFcaawO8Aa0fafF 'LUp-ݞ 9mdIlpoln̖g-ݡ=c~CPM06bx23IDATY{Z%fxF73[nûzkQOa_.-e&4j2<<7|g[4-ָ+xa q_Kr> k~0rw,:f4RI:"Hx6R^?3{/Uc ax;FlNj0֕q=xv5:Zězf8]Yqu3Of(zdSafro,Gܒ6\ MdajI5ArB<$ק߾$_y̓Xnգế6Co6 6= %<}ުg5C20GaPv·ǵmfyɇ<²&.5q#2UmȐxϽQPIo^!xںnň^ݴ0$Fp̚=<0(u|Y@FN qd.b3ir92@+vWX,cJEo628ky(bScA u2ެjE 5ڷ:za-vuO6[M2cbwBPg241Skfkgn[<S%Z1fSTU +I_mY ϒ5۲6;Cu׉٠ ^P˗p1cVͶxd,o0> +&DH87ߟ} ]!m3v<>݅d p0WS07X}~M&լűFP%1ڗa&x~Y'+wasWKwז RnI3Ʒ0nJY3^vˎBK\( opYc;n:b#v?.S.Z&UHYƛM2]Sy<+쬬-l(`8. tYj1Ù< ;$ ho=7K7.]ֽdec=pL3>\ݚ: \˙̑􀌥8ML\W4:Y:navN;/xwVl k1ƋELwY 2p,ġY|GtmN.])`B[U6l`Ej:j7~41tT<#nĸU'WX?r ]P\~p2] PC|"_+^{ "A w8׎JRW`ٽg.^3K_O+c\0֊ȱ_҃QedqTVF>?np711z8f"E[!eaf[P$ttWyf)X.|8% 5*6MDГڮQB^`hJo8Ƶ + Kp-9Ƃh WkW9Pù'ծ%aa] n%OvaĜf-9:^3su6XVϴS[r%VVn| sy q7N LEMp>}oR/^ S/ݔ%\Tt}_.>? wehsɠ\^7atdDpnrWxWjd[y[=Fpɂ^/JҵukkC}qWU^xWB-2u|~5]2o+<|ͫaʥeܘI]Erjkn:&P8Sj2ED^j;ޫq]P?zG ǤJE{, > hbn<=͗5|8?K4hKG & TE0~ro?,_DXՓ qK0FZ^މFn nz040_Mj7Eo'fYh,θ B,ͫs ^ȏ9,p ] :/c|W",ONٹ l`!+_+WW/̲,-tkU Ny^NT<4QBG]ruVVU#pwq:B0%Z=*xa W(r)t\LLf?e"7G7? &Qd}0q{lLen|ޗޝ޼,+8Û6Z… i}LaLMFOenᒆ'yg29wc(3,"~F.wq7o<,ᠮ#=&UBq1RG%%qv ps7YHx_2T)Z@Ū܎U~,'.'YhS/=]qctXqX|]Mh;,k4ΗtR: 廽mWs=|-h[vq%H\Fr/ e, \[Wf/ ܤ4 $X}Kb C0|#xd PPqJ? uv|jwG*RBWMO+1ɍ se%djav" 9+nMCPRk+'c4NА-v]L'dzzMoQ1\ˇ&a\Ekß-p . ^V,&*wL|;A0)$H0ok㭽YKdrpD{;SϽ,5w;JdH0c\!lt< MTqfull˫N`$ϛ!$zQؒߡdL>ay\RyA/|La1[/^.{ d%@ aKq0nN^j# %}6>1Qq4# .3]̑tR>'סx lV`I HU]]@{O.SnfI\%LH1tVήZ&"jxA٘˕33 W䱧qhw7oɟonb)K®b_ !l9\'\ǢyRC+awt[&X$6`IԐ4*ᵁt a f3Ka@rzM[N5[Ny1oD*_:׸C݀fӋy+v7:Խ;ZD>|qFɱ20>\\%93uupJQv#.)Z'1 a>K v\kr!~}bBD(&t ae |HVkf*[E~}ʝ!tm5iݰ<)\EL Matqmq itvBHӂCC50YnOM9nZ. NBڪ \Ōe͖!)n @qxlk!ͺɫ}~y~Nxu^ iqp}.ԕ}lfU\ݴ9о=< Ut xʜ{4T?Mōsnס ћ4N`q,6 ܱ,b{ץBxTڥy?WLJXr,s ؉ p$]Hw 3˩ ܉@Cm0r3yݤlqi&\?%g\5lL{I kxVoK CRĘ cfu^9ɕ%h5לd±XֆVP؇&Y̖dp,WǺ^7adIm4f0\0 abVs",ീm^ [T81ȫp]nRp֎SpDvyo!ܹ[ah%"^l3Gam6A,cCn+"*؜ qH핯( \L&եb.a )vFPI0ci ;L:+H ƒipiǷ1cYRrnS/Ɗذ=qb'ۚ_ M\Ռ𲼅֌%FqNVL^ OC] 1mԢ%[쯗 8%iy j .oBLBZTgqL#e >ak?nAs2܅fo/@^GGPs_BOk=_"~[~¦%4j잨CH܌&a[tn^eU[AMGn]sL` JkB*R*XЄ=.7S@$JũQ"-r҅g8ⴟ/6^7 GUq精w3 iac蜞C%6˾ͽiW4d za2׳s6̛vpM͋C&OqGS@xAgO(.'Qx`r(B`8D{?n L{mq HmG]A}YV%ɭKd Fw)u˗Z%6O!n~DYz^nl(clAc!9Jydj!:ri^$2X[.@3ܩRo` M׏]+M8 XYt|[K/JI^`^F܉[pPi|YE u0NΡav61N13jf*'W(lh˱j#쀡;SpP''u"ōPXJ"%1,-,gpg[x^i9Κ+xh#\pc;aUUCh|& 5CWtNrᢜnIm(B ,ci"\K!|^J`kV60HO 2?fq4)b8p[&nPr_9lRCy+K }Y=)hUPrlޏqN$ 8ۿ6a=fȑa0q35x`1)F-&fk)%2جwuƵ7R1/Iͬݎ**LILUChjC/A|\Yl&W08Yvx5>]ĆgbT?4k MرvxGiJ-8-֡t⽄_eszG6u2\B̼]XA 3>ȻBI0eH'u =^Tj飸'e*BȹKk#r㺍&D^Hu݊C/c5H埑;wwj9Q1=+Z/-aPF*Ns|]X{+wvϭqW; T2餐h[:Ef;([qBL:v^kTgIvU*-aq#v1؃cYwU@W*M^s5a\2 8-_ˆlWq,7+MJm !N> # .;qtvJcN0 H4._҅֔Os]%x<0) J6y1&p!o͏4b˘kM, 5*at)7P e Er aٻC1.p|WaW.#tðH?Ӵ? ϻWQi#$kYcR.b&[>MBW@70mn>6bĹcnBhhSal CpMB[Vq]%Lc1˛']8b9~gtkJq.\õ~Q&&N]!xܝ±OsݬX9Vb&iVF ˆx>|z0ѓ8k"n@.B'Vp:]RL,G0:\f7 ҦQyl|6bc[?f eB@W&x fbWsyKZEa`xe=NX+j 樵:N^A[a ^1qtLV[]!x-R|U]${Bg&np-<5Q Xv4qdWsN. ΢;ZydBЀPb|E#Yj-}вØ&; a[8qrEę·7Q9JmR$k䜱rY9ˇvsBd0pZ<8\BAXp3Ri/z7}0qvVc܍ %gin~"atӶ7;g߈M1o8w5E͙M6|Fz Oq tӮ.]4DH\.D!FM"r[@]B8>ۉS;1/ 9iuOW0: BLZq·\P.")XQ}&_xKzne7qo 5Nðܩۉ-i4m.V.0+ 6 4ND8Dz}xx''C9/XSȜx81`5&ðN vyЋ oy &'Hw"k`;*x:Nc|7r·-bkUV; 6B33\cM! @\h%/O,-a&L1_Fa4f;__á]UkG;53SVV8(/ ̐m3;O'aZnnƄ47 8qkЀ<ί]g*`2pi@?E,&fp,\p_(K2U Jg̎ o =>aƦMX1'q f5E8i5#,toq覱p1XzY|~R0d4n̄1 b<)kvL4qyESnB(XMFtZZiHTi[,/jv-z0:|5t>?%|Cޘ}N~ g0'6 xouK ㄍעkxM\BCxܖ7l-,GzO_bnqP.4ץ&I׺pfe0]q%n/s%OY؋BDzqw2om@aWr_07KR0Kaf 4h~͟a) )TߚBw@.@KʶJiIˆcaF8>Zm`QkvDxײ93 +7`{co~7ln ߺ PfذrK:,c q skb'O-=IvJ6@%wM7K0g&e+9\<;","2D,sTzO0-8|,Fv^NN~7cZby΄r mVQX|A||"_ڿJ2wSqWcY({\6% j,V!m 0pYZ8ɶ)6:u N';)<3|Knn0r! m4:fMI.c}Ғcn+%^&[lm}L5p?& bhL$;;<]aZn4 nרc醏7Wόǟr,+@k"9D.{ q$ f ]{=.~6ϵݶי_Uꚮ1+*9H_v,Sqȳt%d|T?ݽ']f|:C-< ̘Ʉ%יʭ5jIFJ{^W ʵQF{QF(2 '['ʤ9aA]T-#^.6:51Sl +`ٜg`/Q#Pg/2,5~,bNؖUeC[5VW:"?DFXraOFĪlhx7W bXB]װuotn5p7JF;;.Oi2mfc!ML|ڰR~[eF:*HWeWKOU_yo׺ﴳZ?^atOɬ@5USɲFaeedV´h6$j%-Mj&mG22*gneKSWRr .tޤxpI[yj5[ _mz8ʒڐg#!4k<%X6j:[[~Q&HiKO|LU8ԗu$t X#?>X%\ѐǡXdj' o6º(}Z=p, &X^?3ABPdgqC^teW*N\2֙I};s83QǿߌwRVb.a)N2+ner5ƲF({1b:'i WR9(ߓOra m䡿p/^IIs܏dT~7Ͽ3.ᆺ.=6L[i)VFv@u٪!י$_Y}S;Fn xˆ`u[dKLԖzBsf=,֛y~?L0z$盃Owlkbb=;8_*w+(@ .Yh['KK?,UkV]0aH :n qحwV fƥCUl~l(ٷ/cNxQ&s3Y,\<*$tmŤә: KgyQN4F_2Ov yF>Ҷl+~6>;xSq~X&eY,zZY٪\xk7FhaC{XBuq#: 9ڜ&>YBxk1bhk0Qan O˧TŢUy6R2n?]u^2DӖ lVI.&a>oOk?:>~l"1iΆכ;٥pWjDUav &KVeцznVN_VgeVnU?ClDHNedi;|zxK-cߏOttpx~- `xSͲx}#be -Zz077Y[FbeʤKlSQHS8ĢA eeJ~\!#^΅/pa}؋Y",j=!,RÇ|1!0 %i\~)^l%tIo/LLVT%,O[Ѵ2hѲh`OPIn})rS&_ !ϳ#Ţxy=F̎{cEk_k7\dB^뎅;/,O6fvtP \?pb3faF1 Q1 Mن5Z)N ņƒ0LXG h#;ڤu1:: A''cK0t3|gKG;^XCO11klv;y;(Gy|/ctN|Gg6mGT'N7 j̯N)aHhbS&^$'O`cPN^ƑbVqXWU&~ǴvQlZɐvV_˖{{ƮLxif?6kX/1Lg0=l\eHx VWF[SV2ً^Xqd/;aKkǃtڭߨ5XgX{/L`g|πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3 x<πg3F l"՗IENDB`kylin-video-3.1.3/src/resource/ico/icon-list-symbolic-h.png0000644000175000017500000000040314212620632022226 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bmIDATX 픱!C|;c1Ԕ FjC_ ˟YPh3`U@ww`0%IENDB`kylin-video-3.1.3/src/resource/ico/play1_h_3x.png0000644000175000017500000000136114212620632020234 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l [IDAThK@ǿ/lbwW](=H= @AmM|&K'H8\4GE%2%r`0j'өoK,gN,Vyg) p+Qb Q'٘Kfx"4b?B\1L9|K-D\Yev]D\K1t=Sr_d|)1%ŮA6=1_E4]$%@SD<(aQ>ϙYnUBgP uuvܫPw\\޹b+? 3^i^ ^#>5 S@03¡@(-E!.<ЛU}eh+aGs+Q_8h>He˗xK }VT]d`)zOeT'h ^<mQ9whl dkbx5](LsYSq 9$}*̐w̪Xilal"s8`0se IENDB`kylin-video-3.1.3/src/resource/ico/1X-h.png0000644000175000017500000000201014212620632016772 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zrIDATX OHUA}F, EP- $QբZڢ \-ETE-6ZDG CJ $32:׼t|3y%H*?W 5݇`>s@W*5cAE0@L/-ЌZV[mUYR #Z7ZM{Z-ЯX 60G.w1.]v5;}]-+}= &-گ'̜~w^qc\*lǸ`:\}{Xʘ$z1H'M=ֱ{ ]i%zi^·em Pn#fhAp#iv跭-$[k/_oAVhߜH:d[&NQ850 dMV[KҸ6ɺDآ8鈱?Ԩy>+}Y|s4V~9N]g[^vl|/qt}ie,@dB|5Tm4Ηʱn0Y䁅Ve~=~AdabhɁ݃˕oH% .DkAVYAvsޒ,V!tOontw@φ7fWS[H-~}O߇FFn3nW [[@Ao$*u 6U" h. f>~-.s5VOAj9${/1~==`mCXa\ #kp5_ܲ:_L^|$/J"a=L%>I*T @R,W/z &T"IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-loop-b.png0000644000175000017500000000143314212620632023647 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX ?HUQ}%A`HaASC&AAL Br(k,` 58\x}{|s[ ½*>o^Zf\K=/ .Y+$bC?rm (!~|Nƒ-GȪ+&+S= vdhħ(XX`VBTW`$/% v J8BfI0bӴ1EY>Bq])òu/p'Pts%<Q ߂\'9@gt1>'B*`'^m (=_9fOВ3e]m (7BS-č1LYx::uz1HU!c]B*c-@&m*#^{U`>_eJ 4D|j8EL\BUBYXנ { 0 h6jdkeySjnb[Qh t @^> ֙'<#xw:"`Ob#M8V7D,9@#8\'@OM܉IENDB`kylin-video-3.1.3/src/resource/ico/showmode-mini-h.png0000644000175000017500000000120614212620632021267 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX XKN0mq .P$6p†)'hX.mXG`!6 R;`2`,p ![;`sTL\ k\fҖ_GdUqm򽒋6 8vSNI;agP,bB9"DF{1wG$<|+~xXbǣ/,#ŴAiԥM\3P 948\-IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-loop-h.png0000644000175000017500000000124114212620632023652 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b IDATX 햿JAsba"),MV> `NPRXV6X(ޒܚ%h|&fq|Ocn.%.2*vn`BMV\-|1 d.熽 B{!y#[ BV›(HԟdtB!r4X/@C&d[AN? ΀4aw'z#m](/hq't;ioFN \'!,/U$7D^bHd i:ګ1ײ.N{={b.C# 0#8 ge-}q `OP(/xF+2k$c`e* T\ρLP ށDy*n@Xx |aQ-6j4"/dq˅]Vsudd/$h '&~LOOp@6<<Bٱ$3[nkCCI\.,83f58eY%,pjZ2 &^78&nxeXzqqQɍ@XY/~(IR4 h4J^&!&V.vwwk>OEbuuU驑b vJvˣ"P'Q(l" ŢD**yYHLJ0( @T"l6KUH_(F"=FfsL#&tU* IyP"b(q&''1U"[گTD"\XXoe_ϗ/] V4$*BP@(  BP@(  PBLmN@ pY9tW4AilQU޶ [.M#UPۇt|` >;Fnx" ֡=n@(U N?k7RKy6Dpc*KKKݻ_] o$y!* -9>@@{}hΧkp4dzmDp>Ѭ$ܳᚉ'D? nAiIENDB`kylin-video-3.1.3/src/resource/ico/nextsong-h.png0000644000175000017500000000076714212620632020370 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  baIDATX Wj@LZ'T "3{C?@Mbo+*Y aOl;B#n Ȩ/J@Wuo̷B q\ohY ġ i3RF\ZFILEJZDž܄$1my {6b&Ө>G'sGL70.{{wy&Y-!?#!W6S+&u =DL+&z DbL/BXb8L XB~,W8"`Hl5q6\lYqΆ%}cK깿"lKLe3k:6FdHa/n:ͼ:B=%g\6Kc 0 RM4&jN*(@ܓDiH) Ё-!dNI-)ș%M:0x+˄:v:g ꝙf a~=>sni?*wG>T X |  `װu G\OyIENDB`kylin-video-3.1.3/src/resource/ico/no-preview.png0000644000175000017500000006221014212620632020360 0ustar fengfengPNG  IHDR@nsRGBDeXIfMM*i;`@IDATxIldۖvHFGF #Lf~[__$A2T` {&B 404y%@p .ـ'u}tdD0l:%/oEC2N0s=ݬwB_]V{S?$+bo}]V/| ~hom^m-/o@#=L./^έ\aKh/bv їmvbuix|=H4_|<ىJfyu?LO{I F^\${x0ۃ‡+[[N,|ڸތN m&`e1!*2Sj>Q/kD;eeo#i}-2 ~G bwHHugSbmJ]?hY9:86$FD%=SS>  H-ɸMԻFu#FVZ#'B'M0xI+&V̂vYWZ\G߬n[}jTOjPt@T;o ˽k[7nh[=ݝbrt@p ֋"EV4W! ֳ miuT&WJ{+fĸ]o6 vܦD:Ea,x< b1s):'ïZ] [ӝͭ-}?(u-ю0D3 E(fs3Uohg\[:4CvGnJ3&^:sx4Wb@y|_6˘ /~@uw[wȣ!w" "V_ngɔۻ TSy[9xDEf` _95^E.g3"-zLPn\[az~'vOw -xg"`=R.]85=!ԵJE Ы7FfPL0hy"0y彊!Vv &`HNKr/ |,$ tzaahZ}AN08ZQ~dLil!$g_|gc1 Ey?1QEtWP݄\$ ]#m BF"l!ĔdH0!MhdC?TXm+SnoB{sN FEb jLB!#A\4mwʩwg=dFP iO&V/ ,b_xջAp$J#6k= YޓJ݅%ⱈYZ?rmLڰS!c? ZfbwM:p'tQ2u MسW;F(؍> BTW#6/}ubOEZ yy2-[3 +Rӵs |ޗӦG7w@B$ah KKؑ~J=^܍WRbyu Nf&ƹ"y1=s) u5ӈ؉59n}TvbU #gh?H 8 z}q1P][ͷUaCZG<vR}m"8`F( 3O뉢pOTZ򞆭'|4~oVf|@Y h#3E?&Eg$ (&St[.R9;jA7 ftRW , uEO'uVŴ p'\@S@λ_Vzs b!S]-nAN8J? 逥xV`Ѯ|1#S \IHؑ-)RC{b`b:Z}<'/tn1<{gvSτyϥF*2\T/EnK3ɮ`CPLz}9+ :: ZA]~oxQEC}bR#kwG$ !,ͧF^- /g7n;.QE4Ɋ~r7 DoZnFޮL}_^V|)Wbu- BI&H_`ư2fwT^~ބOⓛyoն#G;/E*S5ɚ@Hg[ʈ'SgԼ\yx4n|d m`x0;^ YDH 3qu;(1Ij:aOgZY#k?{Iq>\BQXsUaH&[qHqw*Fj66ZHE#^+6 A˃ոfp4,R̊$Gњ`s|toI\^nfknĦF}mku&4M 16q9TEvy7m;hH0Nx|^d6dzn&uOzph5g120S=LF{Xt5c'dD2.+*ܚ D Tۑb5DB 1 K?K7nPW/@Wq:Ptϣ\u@E# :wf0o凯VR\G*w{>sAI'FZx TDַkpߝH'aܝ:Of") u UVLucbf^ZcS2&J( G]dѭƺFuӴ;[%d#04O2Hb`6b hCܻ^} ΉY˼_:z FY^N568s_,dE47v,V^eb)nۑw F#0WKfg2/>~iuay?ZF߷wt:_o\-.PUT`Wy |FXi[A{o}t_A9^cǏ `yE`*aEpgL' g礝}GA4[26ۈ41Co\$Ga Q@;%ϛ1Gh4"wヹ^3e LiHAJr~kw >UUvvp@U #߼BuH$sOH+ 'py ƠknlOf3]Hve]~Pĺ\e[܈seo< 2k*nϣvT/}FjYjnC[b?{ڍEҭęL#o<Yޏ?S,5&aR֎x6E2 J+U_M:>dM2jaAu|&(!|"|گEuMV7 @7JIL"(mϕr< r"s#rZtVZ$W(c=b|OҙsIsYLVG |}\3b;>^̭"xz,P!o,35εwd(-xWDpj- ~v5/hPr\7M94: )noکsTj@ w JMh4Q/{|z2ޢY2x?C}ba9#}#sP ?/,Gƛ @Ԕ,3nwdvq;u5C0Q5K4N13iڕaq˨Xh$1(A)\8cGQ;&ib/N":HvWe ͽӊg_0mL4T2#r؀I?* ܦ y@\gr+޻}EwI/MŇ&ܲ&#WD/ tOKȣգ1k$Du#.Ge/% Ϗ27N;c72(ʻr%^/bBacNz:xK h>2=kH]4IgdvM┚ak3wuL;xUnUq C0|(@Cՠ:w:Nh2FPv.'g cn2K}2H#O;? Hx6c1m4{WMk6 h& ލQe7,0|JC74# 0ZѠr!FPHFWb(w@d= !F';r>4<{Eܽ6}6poU vb3b4ںs ]ނ7Ho'XL\JWe1*Fh7ixЯoys w٬ bpb6+ }ȕ@5F 6Ii@ݢ00w,cS=D\<}Xg&IZ6 $oY6t_ΧeM7g`<>sCZǚcbL(cCj+@zsD8an$ƸɸLʾ_'u}S X`mԤ틻7d4+!(z5 GPe%D$%O6lZ[bG|/c\0vcЭҌ 8ƌZ.L[F\#2P7|TP=xOYXvG11{6Im.?]/:89.C\]wZb O!f ? nHd`j=oR)^낓7N$Ӱ霚Ȼ>QE;u܆g~D)NWϧW C'"Euc/b`.f/E1ݝDQF0pݫs[ɋ;'o!+.&;6y*;Qd3;;*L%]Z!QD (_KO2cgNX۷fRJ;RZD)OSՀmp7˂|A<1ホE48GQ ɷN9! $u]ag~ָ)e[t 7ש]%wa# o#FN}do6蟵zj "\;D%Bp ffhVxbDANTbrXB.[x7,!emPf= G=܉#wUȾEOl<|!aq`@'Vvj#5+~~'Ѽ `dXB8R=bb\r1'g"y{d {Z:>uhA=Iэ.9`T$ofay3ۿltX탟orO&|W6圌v>QATaWG'?'?ڼ= L1mQft&$՞!c"LI˧8O]2NΛu8aAj+(5 =1fG,%4on/xc 1Lfs z'* &?p~:>~ gft  !pWCF#zXZ>_f$M 1u~. E97whR6Z"ΡknaIL; ev'nE?7qbf{|Ƶ6]H`m7<$*t QB(:!9;E` was^0^4R[>J.&țu}I0>1n}sYG߱[/n\A|V5hڨ. '!FT L\ 5atK&aW`'%dIZa-hM,1 wt>@Plkiʝы.M #Yyt,vH4D,] B.Ӑ>Nfj*PZ0 ?lGsL||n89f 'ksx߅F-ELQQm]:Wj;S4#D GoU_^iH=0m%cpYFe}"b8 p36`Hwi|&}4dqԈ=80w/)|wsHci/*+ ZG0KX!BtPt~s'@0<3cF0?hBfe>Ꮑ8Z\Z^L),639LJQ1S33uo]ťڱO ZW^L:5j`-jHϾfD5vB%d@5ǯ!mÜ O\vm1߻>*+ZA2K:!.@yc n `Tף[t)>Jr-x3i0  X--wva|q7Gg`a44b]N5$3cFuUDP/!~'\SXbp4zfpoZH $ Ckи+RG '`E4\@P F!̜q.pN! 'X@s_w9Û[8x-U7LN%b5k1eXn+F@.(zƇFQ֫UXùC#CTfAT;"О3 PY+ГnZCEb`)TVDk@`|2?9{P Wĥ ZҸf*y9}_~IHt[JAlӤ\P 1Vi`{|uEZ sB [/~] Jq׎[)6/}ލos]sC.!Rem bƔE2P) &gȹXXG`Rm;/$#ݺ0Dt_D؄Bd(MT:,@ni,r؁~ CźcOs)_c$|?k(LQK 8W$U{6 "D܅H5 ] "]>rl/9db&\]ol5"/{i\$2Y]\_rE=aN%S0~˶,Y`}g%Pt]ڋH0 0욪vfK7pa#nɈPɅ3pGk]9+CJwvPث}0y^DU.@`|xO2n4EZ1ϫki)N`"mZrL<>D ;҂Q)=qp8]eDgEr-~l}6p}-U,II~S7vZZkbacpN_)jMD=dƠ qŏQzGEK!;Ivƿ2$+L0qBiSBCoG>(LO}Hsn;a0- -n%\-pV+&x a3;N`8LB=)}NQR?!`tGP(>#r.] v_2KlbIN$2o:ɫ+%AHP7L1z N݄jPRaHNACfU̎l~Hn8`Z(#wZ;% HS"WvpF!s5VXʠr $O>@]\2.Ub .zc. p^XOfP] lSs@Ot\v"`ddW"ļ Y/æ8w8:mp<~j?8ft;nU䵉*]):nwNVD7LVf tKz$Le.E#Vm.(uC֮MuKE%\y_* ߿ q3b [W$X/W_lq~pqhMwiziU8mjqY]~ bUdvc"vF0`w:1SFgܚD,.gu~Wq!EH{7%2r㰍tc(j6TL甬 =f< `2yǹ5_j@(DUTb I;686FAiqC4d6NmWGP;0F{yջڅURc+2A(\<=U 42P ڢU~NJ)|ZYH#gLЧ"\R .=ص8ݒH1֪=Y߾ޅ2j9y%#x%4srv 魹=]#؋W"Do1] >{duzDZ}V/'a3ZhhdưN3NoG+,ȪWgvVlKs;0Rw!fk諴a۴ҹx45._ks)[`ҁSQ&HnFua⻵ | #T[鸖DX<4&ѸE[b1#29C,#1uJ @Qfƹ:qAcMi](=y"QRg, ]DJqS$bkH &~$LJ` ݝ.AMU;.u =T7mprU(7܊%dsC:$Dh)Cr-3_ hg)k"^01%jӆ\Zcz=zSQd6#]XÌ<3 |7rh6UBpBP/`UZ fR̪[kDƫx1nH6z0^ jFBRkŜ;YT՜R]TUa`ހl_E/8գS"6\' |(Vb :3ɘ/Q"19sY`/)7.8Gad8HX760ՄtqizK;kCo+w2ĉL:fH|CqqCzOvMEm;9WOhoG43wP7dai!˨]Ureu Qxd7pf̣€zz u]3bӂp>ݧik=Z\Tm_ٌk83xpYϡdJ?ۡ)qLޛ@B"O`iHcSяk$Se`\Vx㢪cJkR i*i9q;.*ޅ1Qˈ7T4ל\h}sjR ' ,=ẐNk-}~Jn1΂$~`FQ1;l3xfmh߫hT 2&_y?ta u8y%ټ7lÝX*31D6>,Ekꇩ}:P֎( IvRtR..iljAq~m n|y. bz5<)Ҍ}l;f8=VbN|*!'c;Zv0tB6֋*;2yj#\}(~ۉG 8h]txL"GշoȐfֆߴW ȅ1d:l|5tp6[*q2wS,P.8x߰Q/8'#&jBF2,*X)c.0ycxn&lCwU$v i*oVFij̥~O]J_)[2ayrE } nhC]5^!-<ƘP;ULCIʀ]ϨVioCyjEܘG\;Hs/#T;/]T"tm: ͌DvPjJlvdE c:-`1_zMV3QS߆V"cW, N9iƴɘ`Zm)FZIYd`\3bA;VݥD󝾚 `ה2(f;۪LW qp}wh+2 0f|rGͬ9EP1^{GIWDy2{ؑ\휥%8N΢n6kS=gcվ2,c{*Y.ngKDն+c;9_kOeXn|<;ޟeVjB]ۮ.G(J櫒,([kծc6Hz˙0?^{OCA]̨~R~hFx [g0gɖB`6͢.|f#IDATQU$۬` z*a$ZmVzk ISPj񗿫&*7TLZ.RJƲE;̒Y&+b3 ggAd(0xsbdz5)b7m\db> ~Ov'.ljk1ǡm3;&vBFbnEs uqu؆H[ECY qO F\z>v%:|NbP[^.ո(mB'Nc&=qsAͲ"9ùE_.| &;tᄫ#vd|YZ+2cRpV`2&8Sມ L{Po7RTVm)FPkI9){{|P_>^:U#<5\|bi6ɭQԁ :!~^X-iAhUc#-T'DI@2ZЊlv蓩Tg`x]7_/ &^,TZQ0isJ^sb E"91過^9Bgh61ürN B|N9!Ԯc`ixg)z߬`3Fk ;ێW`B($,v:vWWNPQp TDD;FD-DНd43VӼ ?]2;8h8Zv߬"}>Qю^ }1җ@LѳgiDhho""6ŋٴdZG igTBhC]{(PHPU3gܱm==V.u@p,XA> S<$*>$@v8^LR3v_TR;g5iMAUwp||wH,ly AX**oS%^ѽ}tlmcN<E厢]RLW_Lϣm)RбQjfuV?ψ[\2p5xB(ECڹ` Mq2Qe>)J"mEc<.DINV6g>3=xN81AaVd#ʍe2!w/+dOeGj_wDtF+d(fwr&a־qTOԓϑݗRQ| ,].53iW՜b^gF[Mђ@࢝˘9x6 l%P l +c'H juD,4BI;P-\A};*+:E]2DMBѐE嗏F`Q0ZWoN޳ Ac1_o5dSX@lɉx TFvVE6KWKGk6fYtdr H 6$fi@hEXTc?oD:~g'o6zQABO!/AϹhSSFxpa9s%l4Vt J- gY)wD˩%;ΘEި{Çwӿ't[E.&;V!v%ԃ_vkao44*EWTB3svYYhV1bmVs|xD6FQ]ߗ j&raD[Y2%(Q|PIc ~lvE[}4YX`[<>gsx7x,EdO`ͺ¥pi4>rr'L;K!Ԫp.K~Jt~fMFXz4"e'~B#_2X3ru"}8_{;~>Ylv9dc_M/ nq jVԥthU֌aq{Z.td7LbvY7o5dEQN(_97ķ)ò8h_\Yi8VđN!#M_QTsWN/m8OdlKL`fkG?)(3vt Lnk0E7fbF钄q"+ч=jnUUjLc 0d`& Ì: Zٛ/{_0\x܉2\*jq;fPU|~&ѮFb=l/j^㑣gh5hX~\8#lN:`izN +2/ ;%9 NΝzJ"N.]tϙ>c%39 ћXiNLEa`)2KL8N oDW'? ~7k߾N{ѣjb&k{lХ`FA9ԃC&(M0Qn9EC֦U{1hΐ՟NYm0q;`*pRlٮB$]4N:?49i1CDɄx#鲫#u _+ݰbdY!/kpgf;f1 '"`o``֌u:f׾^7Q:N|'VZ35eMLhj_.D+y\[t76bV$vp 0'GOl?~%bnq0/-}YADEiG!xxOU^w_ܡ$}LSR/*8Ӄ98Z/|fkwIQe錣 !TF| \Sڱ؍ F.!< #PB{:'4P_wҍ59ҋ+\"~JQKZjPQdٚsͯD"R!tVv9ùcFw+ ١h ߘQKY*9ԩ/QE:6^w_D,oӟP  y9 UD ?]M߽\;_X~t^ f}`8$w#Q&"`WE 'Ƶ%.tC=$m5;ٜag132}8i N} _Fn] j]E"- jcb-{6G?,dn^uEJB;psYpgXO2P9Me1ڎ  ZR+1W)!gG"# ?^$ cH6 kh#kߓȣ. argģ7ۦ%%/"rjKj!ˆ#*ϟaZqT3bJspK[XQHPC/eE7k`eXȌ^ͮ{ %X1IWp_tRz]O. _m@kme$I6럨)#~iq[s} '&/?ZޖL?}i]LXbdf:=aTOQuTλ/vWE+]p⯾^;\ι9"ZYid-\e;7AeBP Jǝ6̜ԼU&V_b͈m3=b( [3KzhGbf~^D?ސXKc2,d\(΁6(Z?=1ᑴzrLő[f ]3k{pECUcQ$k|D=aиH;!3 jz?m}'!wgށyJX]zX؏p9!.p+*^+g&|0>XÞ m]7Vl('LoWS@T7@3UFjg| *94DJ*c؉羉i{1 }}gOVv; b1~ڹssEEAs.,6gszOL:va'Y:2CedV.;1E;#qX1&Kk7f-xH&hm;b܏̹ajnc:V"IhFI{[E(`RN-%Y & N@4ǍbBrC+H5c$5ǼOh.`%,h.1vNi kE|xMiW9af$ lZ~YTK 8ʚh=yNfa>%mYNYSLwdHa<1PU=뷀Y#m1c9y!Q W'oޤXH.Q`;ӴeD@7O^9'̤7Jbf=)AHymaEr.O0(erGdVA3ALџLGUH6=WqϬQI M(?AIJEL Fv XPv d5V.H&T1P2 hU ͪNX$ynV"PLԽ2b ߬\.fUC]RjBS\PAt%S}Gt)w`v,ʊC%w~_EDUY*,>(%iCk 6˕W; { +Lt*z}Ӓ̏W$QUk47Z{D}q"'4sZ| Od?׆Knn =瀊4P0upX&`9_Zjy]ۑޥa"ZW-t"hQtuk鬠,Vddd6XȟYrZtn |rm1 AOt ,Sday0-S d ~_NsyA-dɡEHmJܸ!xS+}1Dy20; om'SX=T D:_I %&skGYHk30N'?3P$,9lHT=%tZuVeB{ O)4dhwFwZ&ZAv2.Eyfm;M.OłeFivrY,n*U .]rn3^170P\4f (W=0DY RJ@DX9 %gCKuq r|ńǃ|6:YJ|t+ KP9b,4-~ ܷr BD`:v-DL md01;{v$2 : 0b@HH0+&b{;v[#}z}^7υii|($M复B+gb^.<~ ;mvAI뙼hb~G6uuaf/Pf^1gg 7f]뒾Җn^m/wZ;v" #lJ)~ QGG7Z;(}0@ZuqǟH Ӝ,ֆ;zE;^t0E"WgeTzX'dgIOvUC&БH e(+'_nmO@<|r,m BdY189-6蚕5yc6@Xxwջ81i#/`NyLZ{>\Sbеai@qA,SY0G4A3V)67J 7uӇ\Eڵn%O&aBwwZ[+ʥ |nrZx[N@3saw80“:tl,0l1j3x(.@W5ߴTgwo$ĿM| ? |k:{] s j\j6#ɷle}QikEe8 Y%Ocfh3ôƲ6ja<|*||`NP&Vf}O'w2 -*ɘ=O>sg6u.3k'] GlMs|k']7ȄhEĈkE0t"ڇ[OC;2kav$Oa9UC׋[7K RcHP?VOԓe)s#@틈QH. J p V\ZC!K`(»13^G X_̓"$8g U^FUu;& EyzFhΗz]F;^^ oT @vDcp/pGuJyz}NUu W#֯\A4 (=P&A݄X=!Brk HT0# ^3,~[@ALЇT<;Ӽzpys/ sYer?ѡFG~(փUԩoՇ{v| 41\@17 N &Jv@ou6o,e^78=RTZ( LXIy)!|`E"E1?搪W!o/1fK285IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-list-h.png0000644000175000017500000000136314212620632023661 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b]IDATX KTQǝ ڤh/61ƆH0!mp.ıeR,E Qm7b$Ft\yf6{7354^cL/5CǠ5X4H, 4^; |ɟ!p$30_@+\Է#NI8 <\l 6ANdG{eEcʏs-Яݼj8Hf`qy6t +B]`Ά-Gs)ջeg]_(YuBHĚ&BogU#HilK}=/=hŃxnP%,lAm+y6guK f4SrژG΂*74˹~b >I nY#+iFl1[;=A qPw -@NRkΡT_v}B1f<܇ nyM|{869fO3<ᓶK3x /( ,smMq8=з!P1yi_X W`K+xĚF#Jbp .@S+OwiM DIENDB`kylin-video-3.1.3/src/resource/ico/cha-w.png0000644000175000017500000000162714212620632017271 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX VKkQ$6҇UՅ >.ʴֶi;TFq-"UPA]*iؤns KE9;Vk.LrϹ ? ,vJ (*Z/wT__'L[_9kNNW\zZC1Y %qhyx]&@0']L⢪A<nJ]s>e "E5IyYDg? Xq8FCbxxBV3D, LO9MF芪SCJA{.s9fj\~6tH&S8hT'd_WM9d U0>~##S O.`+v F 2,||-Z,K w\={x!}_Ϝ X$<_gH".v;s) ;YnAN !=ite?^{9u\4rMچI.چ,OHAx$QQy|nIj5 y"9a"M݁LFDܤ=nϫ ]mW΅:ˢ|b~DKZ^hY Xr~29e/if-/DJ"TSόϕ-d',傗D=Ye[ױ $vj L &)^.fr >V-N'p+V` ++ tsW IENDB`kylin-video-3.1.3/src/resource/ico/cha-d.png0000644000175000017500000000133014212620632017235 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l BIDAThX;N1m(@# qH4tHS@M.H2+d{뵵^i|v  l-_`@O4|c"o"s|Éy%יUU xA"g*o 6."H?yȏ,`"RɓS#AIUۏӱ53W;`yfL"Q81V&$1"' ""yﴈ9n=–M/Wޏ^uI>1qCxS,5V@0':D2j1d/k$1G(L/^"\؎x%GHo |-syS>GE|,KDP9ED J>(s, NkM^KD\[D}i܄ak0˩Rwo;f)y.02; ybˮ]dÂmH4`[iHv JJJJJ+ iX^bIENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-radom-h.png0000644000175000017500000000115514212620632024007 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX +awrq rS 7#w%'-Ȋqr6)mGٙww&0Oz}>yXm *Sd&20q^tNH̢"h#l&W U[?ofY9`14M"Xb߀T$% s e#+f%(GAw3KkS>jv"N;̩P+V%#r-a?+)gl#Q=ȕLFHҶ}6g_ikP/\V t96Pq<Ͼޜw$_P".2s~ "aU޻bSMͧ!yx4)[0{Ӑ\.yd7'5(Q@/ {e#\Ki@Ӱh iXI7r7 IENDB`kylin-video-3.1.3/src/resource/ico/audio-volume-muted-symbolic-d.png0000644000175000017500000000133414212620632024047 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bFIDATX ՗+Q=,DHJXYGH,dg'# ;+R^YX*YؽPDx>3$;{9ǼWU_\.w? 8Y Ki1EPⓎG y; #h7!kg@/x+  i 7V(nXƭQ0ζ pyZKEQ"?ې>+6^`zzHl3s%j%&fh[ٱuz+$y7@ +FcLR-nJy1TH}8r5P&Zgz:܎Mک}$l(aRd87wL@Y Z#*#A@w!7k"$RMFD'Bv`G# s7IDATxĽm+;$2՞kMD!j \!7`۟?sS0#]zH[z{;ׯy yڟJuxϵc5>_z^}}s~ykm 'Bz/C[s~k Igm]ZoO :>r~+'A";GF>z)g]cJH{{ g9b\ >?PPw'F|E|d_\Gܫu?`=~jҧ?O|W\[O x|>.sKֆ-|Q|M]r_U>ʟF'}l>>WU斬Wc% xݟ뤷Z|˼oViׂJ{#~iiGmuuMY$ oQRY]e/mFo?| aُI?d?K_دQ )_JVEt|h "I:~sMo=QzU5oe,?>O>|. +<_'qM֗ S m?xMſL7y>_w'~ 8H>? ~g1J9c~|_R>c._Sg"۳/yS3VeAu}gw@VOBM2' 5`b7Ǿ=N6:_VV__u:s^X̧: ?iy?kwrοS#Hw>L@ct_smOiu. E/{@o'Z?wO??& RODA`LyBF?Oo8~xmJhNd7z\o_)[A7Fbh_ sSl.(qJP%CޯSbktNz*-GńsO ej1+߈łUh z*b0PZ}F/n)ǴϪ3=wտ]DɕfX@B8,d}?`(ԻZJ:,tng#lM>_}W7/SB+bT?bѸf\aB'{o 0Yy1iģwѿzN!5~\_UWS? Z s7u([hܟb%KAxĒd}v\繑c^皿N:=J~>+|, *yh(KMrHIYc(\@ǃ_.@hmKeM;WËf 1bl 0熯K,忢G[_h`r]kU_9ہ/ Ü*|7?f® |?X]ύ_\?k?0}@ԨE.#:#6jtR2#gj8"CU?A?S[z ~O﫶}R'nr:CoOBi=3忱_݁{? -})8Z2&ܻ~nPL]7~A{ܳSs?tṿ-48Hz/Kr=F7_Y#}~wBA]#u̔ GFpJ aYى:\:S׵NBZ14 \NgQ*ȍY8rwCx|)om^߲]錄Λ7Yxa2Mv q_?֚?s:a?I dg.)9ٟPǼO{^}H)o~dJ_ۇ 6qqpu?`>mem{?^sN $U,|'o:$mBqlF@EUI;{R윜ezk61^,ex=i%D0S&|lX-u:d/vѢ>}= 0#wO~ZI)u? U-{'|I |tA AjAM!D`G?Wy'~_'1yY,sab=v qrc|h¼}I|I, k>J,8rS"Nп2W@1mДJܜ1\$O)'jR SN sAc0 f'7c F>h>"e&GA; $Vn?Ooe=5qQZ|ޮo#r@rP' eqQR[@ m#Ǡxg+yr1N@r7>S^Lcl~a9Ʉk/3@?$Af7{"UB lYqg*G^)o}o9&YAwNyL\Xӽ`F.{;\$2w&~ `{oү 11kf x)[Ws1՝vr(s龡G]{u~Qrk 8hMn]>Op&y(hois_e*Q$zxWza.9V`g+p|D5[EpdןUE/>O%.zF8z-.0eoݏ܃#ww\N<Ԋf[VK'OA8 +`] 1 cQ/}b?+ʶ ] Vco0;ī36CoG7iX}۫~IOW^e !Ӌ)rEQ0/ݟ^X|_~BLnOvkY<),>E"|2, ˯aI_P 1!2RTe ѿA~y8[G) ?NF䀿_UܦkIOO"zQ =m s˂ZEARw;-D&\M XNOB_=pqJV~<׫_|7@Q+c?}kߥ'sc>t;Lt.~}bA(D:ܭMĉq;poߙeub t u +]x&H.uV>NGk2u/i|yv}ƿ/?A6TB>,]3é<1AN=/L,x`7҂|> ͺ3->i '̨Uo?ڎz45_QrI"WP~oKx~*2S J9D{RG">_Ro>-smUr\c䇢/o yיe8AkY!2})"> _ [afm=8/gsDٵrqk(xw!q<mߟ )f{L`*,Ya)@No(]b_϶?ٯM@ $ ?D"r\ʴ^Ao+[ʯH~% v&p[1Exg EeJXC' I,2Mf fL>xDG(oi@Az}_Lb7rⱼ\ mMY8GE%GA;ST9\rkf abf q tO· [u[8bo.<჎ן54HA][NW=3g5St~̼۸uS +9C<0W7eB3mصTr gxw Wp/(ؓpbxyS/7R 3'~&̏8+A @-" 4^&YݺZONI)b>/%箸ފ-'[/_O/{kx'E_=Mbd-KX ^,O8)!;`@&}d#wCt`;׭U/ҋiH)G YqN֧$tϯQgl'08Ri^(A?kR`W'a_ѬTz^`𮑚q_M,0ܞ^ٻyi?(O*w $z+ka23远?05'TG%~6SUߛ!01Ӌd_| z3̝͒=D0 uIeϛ't?٤= YbneS?FZ3V]#dGeJ~siB6;e,>!bց\鱐Oqas0=wOB~!T'va}FL?Qym(*Rn}&QqM׉L Ӿ|u(!gESo*[cfo%)Y| iЎc8 }^KI̿93:}/yw'<%|2#[i%:R蚿P`$yҀ7M_λ tpLQZ\ɪ_ 4U_:b⟚Lr; ^~iKbn{_~ `{f\g*,NZ&F2̐F &v*_On)DͿ F:*c^ p)xp:TK|@ث_ACu0na̡Ћ~ǯ߭џFƘK#Ab/4<|W;  tooN7`}m@`>DwΈ>/_/OX8rXψg^D!WBfT|@ %ٯ 7tߜgW_Ns:tY@'W/(NA*Z9|7>qz4Xb-s1xf/w6%uɿ'{N{smNi~~?.z?<^+?a7i][[n#{g)m`e~~"}_UTpx~&U<CӿZ篳C+~\eS Ks~ o قbk\_uڰNf;{!A!E,Ey GٰEϐ39)jF so_w4qpZlPdH0.#D*R\΀x_k)^%:y  : c$=e8 _9ELjұ- (]``IWGq&iY8ߜP"*97>!'Ť<]~{ ̔)Mڗ/7ɘR_^!^vs`ni`5h kܗٿ(0.#FK9?/d蝦fE``ȅwοtLS/Wwכ)Zqx,3\r} oo$}Oin͜ 6N7WE#;4]I`c'p@oͿT% \7 ":2~}H#oglT ')_/F X)d~aY}5if9zBbx?FW;)-^u'"{ء B_ٯK-"}G3?zY&SDZ_p0W<~7gwĿj^I޶<3(NPu?܇_!V%xW-_!k>7oQλME͜3fUmc --}>A<_?UWZ<1 ۯ 6 =!^t|U {#rsSO [14_S?Qеq3 C#o)5u94+ٜWX o?D́IA?hA<%h5 ]~#8NYE^);_I8U-@($偆F?89<va UNA  hy1 B.3 sӦ e),[J^-?0L9_" ӊu|&Lml m׍E"(2" W Z׀9>Ђ&WSAѩ3CN^Jnՙ-$+flw=23o/]G=rӴ'KV}d}8QPK ~Fz459!];Ruӓ:r4MӴ$B#7^ѺzmhhnqCeԮbPe䧪=>^ +oNnÿH, IttS`NJ Q .ס'tlǁ|^ t=mζy+'xrM__u㠛U(WuLأa<9>aY#X$=x_7O#Z^(/W4 xMZx_EIBqk;{iBywc H` ' ۣk$VrS@bQxPB`x?os ߃G#$<2L_/p/?wzÏ v; N _#7V2A!2Yn?xz8I`Ŋ5L n~jF S{ݰss';CRt螅̖?`{s+lmSO, W("SCO?O.j 3{i\W"pā1 (}4&ԁ.;m7m ;r㤲gnۥq2jWq"+@$rMJ7'pPDSEAfgkO8AF̥LLr6}~%}:DD"v?< &76,4Qt>L.NaSQrd#qdf H8#!'!ۣ~pgut- 9y]v\.هsq,`dH ]ġ"  [t|y(=Oy7,$^=;V_޼zڭҰwbNQɃL$&S8$rg`:Ad.Rl ֹX*V@򣀐q?&09e@'ߌDh|ंׄkL}g?_,M@0 s8ڏ=hQy~$Eߍ[H":&r再)S9~E{M}d$x-IfdvR#J9ސ8im$~`r#?\=703#g &W0{-GYi[D; xH!d~##x$ "[Z~M0h=84cy _c@Ej ںWq5ZWڒˬy<)`0M5{2a[sx]+  ^dлV1[`PAsK9*'A>߉6 5d"RcПNlg ̓fT"Y?!&vvu?Fj|P`Qg#AM9~$KPc?Z4M}EF_F{@? \3?*Re{g# _?0qGZ>45zm>t}Mv\\+β?Z:EOJtr|v&8)e`oֹ'OS^ ;~Ra)wG:lzIb~o!_nܘw0l)640OWϷ w K>9龰ڈY= S9cAq8`$)x~Y2g k.X~~=2uâQV ӽ~a+9^ˮکqM3_tċS$. ozuF}.t|?L1&d-79_]xB"sQ~y?8qy8Aָ_~0Ck7w*DqFRZ~EcJWC *F=o}DlCpm2ܷ\vuO[~`[DӴF6wl%܃+Q6nvwpʝ$WDO5 {H+8AJzW e@?e4ݥ?Ug[V[\ћf.Q>MD<]堿-f0hࠍ&MIs6~gr!ppb`/׊\zk\̂vR"QOㅜ,F_bs>]"XhXV#@`i6m_)}QNSAS{ҷ']3$iEW]|TSۖʠT ɬz\HM$S.ߑ&䏦x? FqA0j$1 Q)F#>1pld9K~ur C>_D`Px9/VbbĒ.4doEا:VA'ݘsL%aL sO'nJ_3 ZXpKY Q('rZz4]N-~xpnȼ~ ]y 4CW8Oa 2c8:D.S|HcWmy<'$q cKGq?k+z#˼B UNu||նjUaÐ}vth&y USOGAc NS=Ùl=R5hk`8cmliZqw) Ϲ WL~y q3be8hWhf{%п](bBVao~FM;1ty-؄[Иig1&gֱΗr8ߩ &2Q bݰ iNb>9/wfx\U2lj`L N".dDoߛʙ3Svؙj}b?6"嘴Y*?ƥH8d'c }"N A NlN<VYr%qh%ָ ocey<D4ّ3q8ݰ@H^a:qm)@ D @uP!Mr ) rHM~,'󓯆\,s_)}_q P!ۤ|_ ?cSг>`yJ=SL>-d=qGIK_RsuڀG9_qw1k,3dDo傧)nO;/n GW䳂 ?p?6#SogOg} mI*nD?bǩYS<D" h|/R/LqѾo቞U8h{,Bܼ0O㛘6D"4qQp0;LRbRj:S$Y=>ǎ JDHt,ӌQTsXUίBT(\7xDLO\d7 ~(?5ˏBH0SO `cfAsn/65Ӱ[~M__/I* 0UBttuF.>cL'Eh` S]/Żm_?S!ƑA益z G%e P(3a$XOaؓQפٗ SQ- uZٴ}͎y_~yCGRrfV9>S|~DPD1ҿWs(@2}o 4.q_9Dڿ~v<3 7TGsi)^(T~>f1܏j /pZA1?zj5Y"!~*`F4v$= VKKL!{;!"W NSw(|h\vs9AQk\}g|Cpsk3wfB'|-@[ u(gYj;* A4xL/wp?y~_5^<1yϵ3,6^ȏEpiybiWnZnȆ8m$J&v8c!b9,x );0-BgQe{Y4h8 >R@:OІpf?Mz* >s2nHIl]^*(е `F62Ϗ7E'g2i/ܐ" =~fM |~*5Fǝ6AkY4O?r5A9O7 >}x:*aB+'@#W/QH( yZjV?Q: HՐ~z/Q௎ Czjnm/dBKot!f@| 5CCC?Ɓ<9g&y8X)3ƚשu{S>b'@x7k@C;W~`2޼>&~N d2a>6?o0x)2?i:';(s۪3"WB&lLS8JK_?WU ].~{'_b?Ǔ'1|C.ռ\MsDUtCg~׸/ 7#o(ZŦ5+} 7uǼI_!WhYלkՂ&WsCu[vzNj;a"ߥ("z>܏SHo30nBۜ2rbk?Bha9`?wҿ_K#ɔhwJ)~)i BI(e Z=\.17px!myQZƨۦ@Ԛ싺cBKVz.CP'AA?NH gtxT[ZiZcX&q.q8N1bn;trO zk)]߄Φ۠;hްVGNe!|Mu P5$+,tVP~:R(NQگ׺oQ!Tv,[/hhittێMO7QQ)u1@r'#]x82w4sJҋ'&O)/i1s!r'}M*f?K}bqTz7BN!$<ޡ 1 Ǔ*Iyѕމ/.,cl[=V~^>j6Z(=\z4U.,޿ۆ}>=CB@yDv"x>Z6h6@ba!~<"='Ӕԅ<ӍNsq42(jG:Ʊ5xsT"Xt\޿FIk:so#vmA~i RV#M@ڐSj x&w 8Ad'qC%hC:XhSFר̜o=;%( ).ٓ16S18Y'Gпȓiĝm& P\O]/ v¿olݗGQXK cb,LHu7Zbh8Oji&n47sS4<Hp[_>G6IymN0 ϴ2~{RjmKCD|?esY>DPв93*~BG"OV~BST#\/WjA3W϶Fk^)%2q|Ez6ɿY +A~W~|7 +t~1h4 F$PY3,I Q&Sj \HMM&x~J6w&~Ⱦ7O+0 f.*c\9%? ? @`1}o[ 4`ێ r߽jh=??ǗV۫QC1ؚNӾ&3/0oȞ6j8 9U#e$k;-BTC詥0t@t\ @+{"(!_+ |rKNlN?e+T ;=')0HhjDNsQWub0ꉙ#LэhE) :O Θ4QӈO{҆i8ex8\?_`V1 V C` S:Sl_0sJ7 ~A@+ Ji ?i# TzV2VC\͡]g xۆ_ŪsYv.=w{$/WڥUNGbGd?"fDr#_5mUyT;beQ{ &#T?|s?6k=>~g *`ďԿɷ|hSo.緗}eW4ߍ.pWXh{QLS0~@Pz7 r]= Lx2("s_hrg}b@?ۉY/ |G+d_{yf7/xbcA⪌#8L0gLtjՅ׬ophdbGsҴqb!k'ؽ*iԃ(FTt4(oDRy ^2~J92\ ί=Ӡ>=9o؈JƫGѴģt.p1okɦ E<(H`zY<̂ƅvQ>*8LI+R,pSڲ"(l5~ʡz!aW~PhC' iKkxV8ha!׍LqDxI*~;F׳~Ib_K|Í}ѿqOnOw^@c^J 0M@C\*Pk3wԮi}S\Nq7ėn> •:pڮ^.p]VUGWXt ?ZIS)I .p{x, >1(@/:&|d8S :|o-ŴԻ?%~uxj4@+f+2-_گWo McA )ģ$޻/|p2.!ltkPWo?jt/n;p߬+TeWz_-yW uT ΀`y65&A TU,oNo_W>gÎ әZ(+^C6t#?V%*&Gߨ&tA kor,yJ^FȤ\d=.?iVynKBxp[2~y ~/ݷ7?WOqz^b]?>=`ȯ NDK¡瓙9sdHMN}pt-Wol2y#QOUWˇSA )g<θM8EBdyy*el'N3'&q_NiG nqX KS~~ wvYG.(LCoN KC?u}Y^siE3K ϰ7\h]4w:cr;POEaat|F o]R/8d!oӽo'8NX4fag"#52S_+!grp(䌑3|MX)$q8] c$sSO=0-+ ,] q 4i+FM;9Gɍ2[GhBԤ+W Fiw9V:`/[Qt=?ɃyaS0XY+U=>겪@7gnį^u7/t(:L4y&7x N4,d>ՙ2 y<`0+w_G8+@xķS\!ی ۄkkR`T͟9SuC1z_^ҋ ۼr#d̉'|)SI;Z?Z~<(_0y|"DXsM8>md{Z+]о#_ɖ9RpF7d]gs{ڄR?jH+Zs# e*~Y#3t߇'Gl'^y<mlD;a>K1h!89'@4;J׿~p}/'oշ]d@0l$ߡ1H}"ـ?Ei|Lřg\f^}x#_rJ('uUS6nߜ_ېc~{vKЗ젍 4!oe蟆7L@P|?0 6$Su =9ͼ~zB>UcbWFNjN*z0RS;(_!e?VF%"wbxGw::`pЖF첛ֿ7 WzJ>n'e)~g}ϠN?`5̋&il@5CsX>ۂ~3(;قԢX~#=sz̢(.UʞcQ gS~]Փ krg۹p%mT,h+2َݰ~Uय>Tע)<O&y ai\9^ 3DxApު+iYw 4 w%[P'-_f,8m( Š݆%'7+0XlE18. R>S. 6!GB"wX6YAk89t\ TNp,IRD g{?ٛ_9Q"/ ]8 Xz*h -olZLb rz`̉/Ëd%9E~"o>s$DL$!ɍO?5~SO32{ /ՒN.l?NJ~2 ;WAtO2?C8>ih:5uMfby<ܯ1ZzBN_Mcȷ?~mH3BqU,LA]%XOGB'Ļ'yKPgPo̷.xX ˀo X{{~斱{ V8[C PW ~7Jn]W6o8Mz#VF '欓7V,hME#@6i6^9 {oȞ%hpV=^Zp\҈Fe#~~&^~uɶXRZOmʛ{ -XOV-~@ K[#Ai[!㷐 YC3E͐8}޻qe6'4a;Q)Ҁu5?/ 6g a_@ߛm;j}@7LVgl5`Ak"aA:%2Z._YAaZ `Z[>SPLP}T^eC{_3㺀T:,9@5e/Q35_\ h3['6?wJwك#lۆI dEpHݙބeN|wUz3uy  ~ߢs܁+8cW5 Uqjə:I޴6mOL,upt637Dkϵ EE0q(P8Y99 4aonԇ8ј|'^>/TnvRexNXԢIW}{3ƙ`nzӍ L;kBJFIF2@{^P+r~ {gd&UG;}Q07.`lt 0ɉ!\ؿ[nYj>N_?ڙP͒fhho2et*gUv~dT9ß\S.RmԁF$. |)<֩`E@uI_ZaOI#!?,_?*}q=d C.w;&LG"L@ه9ubD..S|AY{ʀAoxu 2p+5Uίp?Ջ:K^)Fe0g#(y%?]6ߵ"(ׄB.a@9{#<~\60ufVd \b :w L̜k =} *yg) RS3PU(erwU.t-8qsf8et%$݁<f34gA_DD_f=+ǂ r7SD;;2$oXP~&[bA F X3h40}Lb(`Y$Mc'D"$fNj9@|kqjGS['+_8}pڿch ]&񸖋u79an~Ft6>'2ł0ڗ5Gsp\ĐD!U^~M#?E_vws$MYŗ8 obD-oth'0뗊7oZ ao*2J|EoMW9E&.|4LYmNˡpkQ՞WS9o k"@H2;r(=;sgws|r<ȅ4KC4[ 7*꧳xOBam]8d}?BshB-̜N,}]?q~ԸpmM'RN0!dgߘF2Ê?Z,5&. 0DZ:'RڎV1mMp%BaB)~'y.o$HUf}ojJ.pH)Qg }yFE%Hz31`hB1aH8?Y@$ѥx?W_?d-sG׻PFVn0]687 y!<ŕ2U sNN,ml2?]~;+x‡9bq?4;5"E9t~=oӿar!K}8 )Y?1(@=LS3B[\ÙhBTF5@97q/SNMfgpX%`\ I؏"R=R TUr}A+˅c&I|)BV=7ߛF-HN,KSH38hBAoA<%@l}x~+ʼn|P{,G"].:xC?T:ECSWln7Ѡܩ<G)p'/35c9K Ӱ 3ɟ:v,8wI+yI ՈN{zM^9 /YYn@MnCmFT) QY,kL _DWpbz⦾r.RC) &XQ X % HÃb x7_Dg@eժ5j":c-zu\",|,y Պ=Qač$3Eo*A cwPYD_b; ɭyD (|y2q~7i>XφnIv x R YNw9K "jU, ~?{ +GhES58_;ٯ>. `ѣkw@Ab{yY>cN%t\v^&'dJ\oG[}w搰^8Eg({ 2QO11@/cuWBatu&_?;[ h.|6P<7k7F_dotszӒ6o@uxuM=6)Ie@U}dP N_#qh$#NLYZ%eXp?ʾAo3~Ϯ-𦸘 '"(%)~>/)FVr:[v|AN;N?ߠhos~ s.?_ UQL=QΒ3??Nd6IKm"ZtS!Vj.q޻5{ag2utNy=gXBlHDSNDCuϮI5Ù2=\|L4pF)~={sj>m_f-LV,4M*VD[R+&îc+9"?LgfQCs@(( h`Up*x4[XAayvjd.D1tkB&@[>b'-`q5n8?aN"}z8⁰02(7 -y|/:B2 f2iz|[S`X~Le }]Dz$siDQMS?%_޶ *~8t́ PF 9U,_!rcsMFBLF_ s~\v~hroD-yk+`¢Iy9 ~I V P)XOf.Ca;ft|?ND8hs݈ ?OHEnyٓ=)oa5㇠/Ŋ8)1E w@  :? \H7r"&׸=Uq }ihtd p3@906 ;۱RZE KL1L/f *LN@^6VR15hmSb&ڳHf_4&E̬a첰4 8~+ rx?3f>zf&5cT"j/#\])yʛM12J`7ˬmfT"2I}0;$mƐ {#g0y7*_ak(MAa?_G%L4f8 4MdA$ .ÛOh]B$ihXqKNqov<9V.z&7xZX+OZTmwP^4M )ns;~5ͅȩM X2<_7ܤ|$_%cy|@`|qe#.(7/_CC2N /8" h*<}>N!8fvO)*+aG3?[[8m 7W Ed8ߐNOTߘ U2EP>hȰ</ZJ}?rrmO &)Ls%b X7CRHCtAD&o>f8 pS7oav[]?rm+ սY)cz.-Lßi_^w /r9E|<Ohnp- 96e˓7Cmr$;, 2Yӳ^tx֧2H`J5*!eI|8wNŏȍ=;ʭb#'):hW//Iko4hA7,[, z.IEMa zF/HwxFB~ NU|ƿpKoA7fucom _yS/7ďybcۏ`fI#]\<7u#_/ h*|Oe!;- ,b:~m*]4&H3kxQG# ןH5(~P6yU$D AS_]_`k{@k#̕(`dΓV_cD?ǢRXbl0,JS}Zx?|ҐC׭ffaoy_8]g)NA^PLmRXd3R)KRR}&1Lfy] t&xv=m tV:ۋ?>2u@I֒=0D01+~ޛkUxD\s?|{_@P$>mQX546暤 _gju|V:Q܉J4$c4Ǐ81ȯkݟV~Bvs 䨮_pw+ ˋ}-quƂdE =35\?o:m~_ s )Ns꿲%jSۢjJS˟r'z.p&7OY }h 8)bʔ~Ǧ;;_H@-JubYI b]HMCW!Ft*9N eߓM,rc~n>~#Bu{x?>>nfGն>kxzֵOSci&bjK\&HZ+/7Gku?tϾ N ?.9 igjJ-,_Q jYK~m'LMǡI9)ر1~qf>*N@* Uߘqs5EAX P޽0 ~]G?j*-kS>Z}ҏ^Sa1Oq<&h,5t kƽ)Ps9&ݯ;4Kӡ׎K kj}&LkkiqUΫkoHMMx \ Pc݇ND *^ e^Rk0nU :k]$H?{tJ$&#Z:T.|K7vuu΅o|Xy2_;L^V4y'/C E~.$=Bnd/FGv '@=@S.ة/uKw(nu'Q?CPlM:zl\a[?1ɡ&U3EM׽L>o]s\?/a xL ^Ch L~YZCAj]n<'̓f IO{|MxQ5޼6k_S,vb_"OEO7sB "b$kA~:y:)`H 5֖J'b>F6=$u2U 7?T_ qG'n_7}}>?Ү;SB"5A.TShH~* :yF6q㿼ƕfhC~r ?D}4S tϯAvT8+aeх>E; =m;k)!B\} ijGa[GO L)hc7לz7S`<;:j[s.W!1)`O>0`_:@ʿjL ̀`N:1Q78?PcO᳄߱hpW%;)!d;E_=pGoxi`/2ds8w'N+| T0p /Is_e,ูȩw2vF"cr3Iw"d:𰀧_o35|M5<Acb8M-O1.{-&!~0G\Un.Q^e'z`=4[/6E2eR) U5rhݮI1ya*SX F=}-g9L;^zZRӡ:b5뵁O`bVEJK->TѨ&A-|b#$DPx-\jmDIxMٝ^ς&! <`c`;Ӷx^j.a! qHΣrEK}7#ʴAhb!Z"73SgU@@*pqc2{߁ز0KeK"VK)t!F3ܿxazFckX mBgTON( #`4–>}Q =ZȠ[҉o/2+|}Qn=B0TB'A&;"=7r W"npTu>֓q)#Bu !X40_#a5GQZm8;Su!610 cv/?,"N.j"z__*_/429_ ^^MKY0(AN1&o'3St0>:?'Hxb TcǺvBW 1j'Cm#7ހ%R~B'>@n@_\PGU)r{̪)o9E>r?~|bDظ3+AUhSl)a&v_Ò=NX4 Fh[ki7> @ͿYqZ^H6 ?{a1Oྛ05aOM68ʟAUmszDSiaEFy-vخ `]-b_ Vm7^6P-8~e #LSG3;g˳ruSat0B!i`b AI-90ulԀu 9Z.#)DfB%u?:$<`J , X]kSN48W!J1xXzT7DŸbc5LI/%ws\OQW>**lp|VO0p2C09)FBb 9Rz4zA36ɣ)d;uF#5>+X/@4.t pX} MusS,ѕS3Od@x)IΘ_̬Y&1~D--x*U ^ZY=3$^Sľ{|29#oT":sL) D ƿKLy4{B~L`L"1jqd^=:4@1͟iObp>ȟp&!F}~hg~:~w2yo+u]ſ5Cu('tу?ѣ6&9~  KZ:~pbAnT:j=4uF+GS^ەGa [xp} !r!Su\ں&c?w<~zԁQb6G07nXI]v.%2Y?n}k&SicQC#% tAC_y\n" `y#JLw0)ߪQwFPa/ {(|4Z}eiT/4|??ml>&~r[mwq7q U:UI`| As=} P|q:^;>G>hz'jA,+"K4l.veXmd;Y5Qr Y Ge㦒S@o`8Y+̪^pa>hZo@<,aۻu1U׷SMǭ_bלz|?E:o\(?k93ҫ k@xlT+IrñYu_W @(ߚk:q@q*}ޡfw2Wo/'F~nE$;2ۖd:_ٞ7j/i۳/UGfo/NRF= DCzJ{}#qm"c_α:Ftū97_ď]???k3#>#?% ;"m(5p^#עu"QhiIӗxft6:; X1Dq [N|mr~^t_>$x pfWS&OǺNeVh3Q^AOU@ko(a_ O ;+u*rl:zs3-/49h)[17!t(gvB_}?ԑ\ǎr[tEWjCH\:P^Yw\;7eU~ew0-SD[Ӭu{r; Mּ1.Mp,wے^ew-Q:dZ5.AZύ=,ʪؾZU"u1qI/F4:! ph׈/w:d}rT={}Sv:B%S(5R}7_~y{DmX`,A˼x莮?g~A{_Yx~_:p6cTR:tNC_-VWR׷qË)CEg[( >%LHz#X]Y嬊zI=ыmG$&tPòowQrR].#(s%P5?2%eĘˢL4:Af~̟TX܇[wT;O%jHtdYn(\E޲_[]C&)y&A~1}$5/o)+yV*\c IA.N)PuEDŽ,A?B\/Ǐ"9!N5?܀kK _0^?ld3gLis_p7Edo^lOo??zAgvnV[w[.,խ#Z=ş9@v'ctj%v?8eСؖE Ї"ڷr0;mߠBsA3Db?nZ{V`x13?gjO"tcsc!.]8P++ 7 /.oo$rLp适'eFk֫po P>;}] ~ +љ^GFΣ4~bEs: 4ﱩvzTGWMϩq7n޳k?udbMz{ bIx70ԖY(`M߮-"ֹ)?V&D{al8S2Uߟ48^ψ,:1nQ4Ԏjh9h'ǯW$&/MٽGwlĂy݀u,O@O,җģ#E{-R 'g)b{[L% 9 d7[ G_ Qv9Zt|=TpSSdTQOW,WlX\_1b3]_JXF#ڷ/r qK~2:}gA;FL?E0Jݯ8ˌo`nÏ_ K Ps퀾3#_.eǏMА4 \zyJ8rIpjpTK)yC~W~>J;XyKyG <=0d{w<A_f^|,n@g$oI8dBP<.SUz a h[y9!Jhk4eMQIK Z Kݔ6XD=:žN:_w|hVhOpKO>Nr~w@4ypR֍/K]8 : }uSQ5 0N<Yv?ۯ#:_gt%rփdC{k6_U;ۖ;L3̲^ XS]  0EcާOf}RۚiS0U`[Jp~If}d?O/o"OhuzTz|.(YiWhkiՃAݣ `c2xBpS?@F1&_A]H/8?Q@fG"g6Or)gf/k޸@%fyzOIBχ0N p}vh,; ``~_LM=dmUpY" LǷ/ )7wb>-D*54Y)`Y7V '}Tά- fi+`+[f ?axawj3x`yQCzL/ 9W7ֿFFxG64NKe(i4!YƏ6"AL?U33kM H=pk(p6 -5I俚<#2hm2%ce.- f~0׿?O' E)?:Lb̸2y_{Gy'Vfnsq}u@$:=.|b݀Cm-k"W}@FKJ'GU&S8v_W`4򲐮NA_T'+4=rxlZDHNLN.sUН~3`LXh& J+!0]p?荍 CNTR\º!{P!'u.LKzSI_yUzΜ `ɹ?"mC=іG(*$'4~aȖcSÜm_p1Ґ(o47G<i倀uYiJ/S˹lE*JSDz7*GzhB*B' S5XP),;~|#&\)Ι166[/eDe/g'x* ~:Oeo`y\,r"EA3g^w6ѵNoT#k}F}uI>3O:g/#WS8q0a<+渷oP_?Ϊi 3_vk=$0Ӥq7 $?F_!s5T1ώӈdMƨ-Hg#aOsG/U(\ b4)'A'$c!O4y6b」'bB> {[fQBy>5XsNP@FhյR;Ppk^qn=_Tgh~ 29'^^kS]޾OT frתz66V*uk2WAR~m^礣~V&M҄ؾܟ?/SCKZ_+x4]o=~|rªiE\ؕI.]L]N7+7FN6gqa\4l>h uI`Zu~917 -EsTi3]UR[_]q22 u>U.av+`gֿs@,q4DW'*tЊ ZSC/Z8騟Et~g> 1VylIo'?W6@b}ǨW&"DQ}\ד~ukqL5hI|I4b[t*m H~ޙӿED)<{C˅}l_n+¾, ٿ&W9G5 -nүg=L:&zO?z\-TP QVV:,+_ܿ? Ywdq7OjFR o˂8y ʌ?18z`:.-{9Ub}yioxOl|m)'~hэ.}O'8.kw<~ʟ?/gN=S$dpDkMQʧM?Fl ^Ep+2=kgh˯ /}ގPD:DX]H\c M,uwVA!.:Vu.]i=^D%t<4esͅʉ)$T'u̓{N'C"Di`lp`nl$z4ΙWE#Sf쎲*ad#{z3 NԔ2agxiHS)g`AwE>ce5TԠ0ン2;OyTuXs *J eӝo beg]STѭS׮%)fm?V~27I7k6 ,@:I?u]8Cj{E7PA`An_5@e-tw*\X6,׋z3eZQDh9-|DNlu~@o9A^0 pɇqRtUI*xh1q~q#,E|9#۠]冲5#y/^ tz[]eX'zo./R@ix700G o?M8W|_A4GɧK5l~J775Qw.;үk쯜4X5|@' 21lk2)"SȌ$𖄙}A Q8( \߈o]C\d2}Xs߸מ T"qc(;}2z  T0xf)UFc hl,)];\BO jMёE!qW9w%ۼQPI}r -#4 =[/~?weL'Fp]'-?<\G!ތy<3V.ag $}7Olgozڊfbi`hdr@.>mDoyp2BJP?C3G3Ѐ0߱(R4b6aA3ݟb;q!̓`\_l(P.jAAY3o}.sv?(د4M_6Mf|蠟 55<#q 7aSeO! D-Ppw jH ɖ4ݵcnHNгB(ɿ Y,yy5o6ji_p=& !. C\ERޮw.Ovfw2= UǍT9~b=/'[(f^`z9sf/4;*fJ_͌.\Gk0VGOgb^ h֑zsb'#-G7p|}Xw/Ozܸj/Ϝ`f8|?(?4<_wG;:Uܕ 'ıRC/-.w >GGC6pb1ؒ"O1Gh)u? p9?:T{?ii`R\ᜋ߷Ip?Յ_25~t~DѷiiV_ PS:?z~) 3|+ ʞ X:KX|w60,ԍ~A}ȍYznRUm`W`-!co^z|kpzD"_#d.{`B=A!>hSgJ*N4A`3h ;ޟ;=& i҈׏\XfyN|I9! \{([I>&y2?|?0'd߅(τ&8 LoKuw «3ű 4w5JL&[d+;5ENN"_qBo5(0#}i:\P3AEcmVѨz(nʍBc^]NnNl#,S \JL`bn= n?$*Ȕ*5Eڬ!:4O9<&}[XKS||Q3<%ʓ4OΠלJ6QЪ“oұI}W hE_>|B M`tc, h >rhruOqv >p޿9BO) A$bǥWiHF u,MhMw7/ב;bVRN`y/3y !{£`2(S&?~Aï'>#OZ0P_9)޻o ]'i2VcL#A#Ni~ OYBb* B2ag+m) o0&/@7u[+AjM[0tHph O_H&\{~Ӛf :a/Bz?ו0k_Y8K|iҪ} SRD<Ƨ9K iͯ'DД'f)9#Ɛ|~1<C>__wG?FGw`ix7ytf(Tj<-qŨI:ę;~eAsd~9Q0A"s)"fr8G7./A&(C~S5/Ѱ aa[4d>Mb~)9| Y,o!ʔ :p? MMŽ苡`/7<@m ց3!ӷ.NXi}?O5Ag_x/DLcM.4=t4M}@'Ys f:h^1aFT~- aSCS*) o-ߓ濳~RT%*ȊEŵc|uVgXGSÁ,oƦw,/7o!&)&i&,Gz2.V:Trl@ga*!hd=L.$JCKZ y$$MɧdNp7R VL 'rpH} /El{^gjfLhgg`qs:n#] s-;˂] 0,ɄDtFxɖyOsPM7ZE90)Lߧl:NA7c:hA? p|vfz萅&yS~G}2} Waׅa(B0rcA'xl!M6Ξ#*Ca ~2^g+[?Ti0{Շ<$08Uzب9S}:bcz”5K aRzJeaèDh 4'WzzQ>~nPh0AC5Dɭ8b[[xZqc" 7׳RH"rmXwIRKqC5O:̌7NZȫmSgׅ:^B5 `+E5~9!` ԲMA ssYL2P)BPfI/w4~_$IF 'Jq*[SF`֨l;d:h%A|t9Qm{@?ږI8GfYz X~wU8(!4:o"xK]R1+ZԫۃBaMCOȳ/VTtfM{ KSr;q" 8\I3بǫų忓zy޴o[~]~eHߨEb~#j 8JʓׁO )m꧄I E ~z'<?V-I r9< )}2r+;ac=0CU;)W,"~huh$0xV_W8Tk67w"Ʈu_p.؋*8L"T?~~~x)>! _7yBUqN'ہ\w`^nnՠM|4q:q”%%N~ 6Ы~=, 4ЏN=-n Z|TWf=DT!8/PeC1fK{ [1t?rwRl>_i`!~cI4iuXk*S_)Mo9̚kjgmW@QK鍦mθ"Q:3)qd']ɀ5%R;a2 ~Kn}]Qg u+S7[Jhjhy:F8PAM}R,%-{_mjD ]:-m?Zd6sڥkHNjYEx4LNjѼ}iסzF e[M3Z?_BUg[aw:4*skYl0*|׍\4WK4x&??$b=aX77b`QHG8!x^4L?ͯSuO{OoylsZMzhk&ڿhHWGX%_9Q8[cPswJo ̀>, `k7cp:k=Q͐ގ/cu?rz &dZ蕓;5C/sH\s4^5ܸ}. _5>"MFLRQyt.Z}"^29ʻ75L9v~mďYK)j?Rd~. p.#sƻ9cw!|S B.S;˃40\נ?_kaj(*TBjhn+?Yxƺ( L#_kN|uqIU!߁bZ+#猅_ P#K`4DP| .xÔcv#^[$bc Ooóҿ ~_}ߵҷ 7IjX/ᄐV:R]M~euIPPV4q8v:=Wӄ0]SvP/=;9kTOGSA |[jue)M!v*|^~n:{l `qb;_/SLs7bwBfہm8nx#w|Ef~3%bQH崛*AZ$\o5q4EJAxB?"(1LרoR^h?FVu}cLZ:|^LcP8bB2r:6c`; xJ&8ĩ&:ZjK9HOo,;Ѩֿ7,Vy>_+ML^=PozߴͰ J aG;:ZBLCC.|C5-lӣ'//P`, KqI;G>_tƃjwhx:`BW,O,+fJ( ?7jBŝZ>~O7k=W-,cm`@LMH /dv{-EYL47,d1zː;X߳r?.|SqaH@.?|~ͨfDb w6I`:]MAIA[N}>>Ea5;k+Ja'n}=˞)-W`ewRP;y܀VֹPnb*zH=S&nO7P?N8ʞ@Sc1~oL72!.Bh XdR]䶆8LoQAٚzϮB16)hg:0~kWѤ-QU `^:Q؆t:#Mb2zO*r~`I8 KJz'rc_z-" @5U/@Y~:؄k,癋F}`KB 1M¯ cMB_;M/Hm%tɟj.L+=D"S7A&RujKꌉQ*xK<麭7o0^DZrê3b ΀iootvbI{@vʱbȐhR|M.̏LߦIN@`tbZ/f!ŏy1~L#;pP~tbpέzk%ڠco:If,_kaV8#7n!l2aze^Z3aĶmPǶ_"d\ F.ֳ_qH&'PO7-O] #O18sç@P 07@+? .imbW`?/rCx{扙*^~&)l csX+h&@4gHz?`qaH0J羦7E~!FpXf "P 6DȈ= _ۛ _* 2yxSo6,[M ? b=-u.oSlR=0,QYXJJ8h5ٛ~Njތ3M(%z!:5t[S=8O+rXS:R}qu6cC3"yU*,2|ŚI/yG 2Qb '7c0J%LJ-  < uEmt~=uu1F/FnUOޡ9kbZ-ȹn9R*jpMi!T 1A*b=X3ZX_im-_O3=0At)f`S2^Nx a" n(K?d*=QQJXcŐ `)+?͝"uߚ73u}5bkQÖ$3*:%45RWd%%(B&?ȏ:CAFccEɦIXwyg]M\8.U<%oSB{JbaR\9շoL7\pUX=; ?4UTZ{,\3Hy~'>YXJCb{Σ5BDVB:DtjT&>s1oB*V?2>tcy'VL91uC =*{ :co@gfa>^CBK%⏄&;д_iyDǿVMr2?j$)l1?!d& 9cB1?+ďƟkNZ$ IS L e bqΣJ"~v.|E]SWF-Y{01~=?hU0~b0~>S:66O.]e<d(ď^bt}X-fnQ◗PO}>iOct5.|}r?w13*pIa.~T|@b| iAθʿ5tflMm] i^a̽b%S-?:_8C!~QsX_⧄|ŏbGFYWU&˄/O5,u:R/:v_+k_MǷ M_V﵂XuEiw<ӑM?KA֑Ch sȔof^?opP:.uL`kxQez|JtxLtTKk"z)vU͔: `͙479I.$jx> Y/xLm˚7ɉ V Jƻ8ք|Z̈́GdQz\"ߢo IJ\~4:_~~^)g5I$JBF截x E&4eB+KnWTP>~.g ^Ƙ)u:F}]bpmo Ar2n}*-ө5?ScouT9oH9vh :n@d:`8X'6:˅!~kL4/:}A8Λ_q?.9|ߢ&KuJX8m3b s 6dEX_|gH^$= }} m:J%.@VcD]E)<|=}{>ު+q_ Q~N:ƿs@?~/ӏScϓ-K'=^ )}&~g{կ__wj-w:˾/o`&lkSƏ% ~m` E61Uɶ\Ʊ}H|}D`kpAJ2~ 1MO]ן[}.UoPWw:zUM*!u͊rX:뜦PtCI65fO,eʡeEK/-ݩXxxN(ڨ~rTuيIn\R$sX6U yZT(z$D:\\)U5rU0h*V"lMFZ:oR R+O}yڼ<nj]d`_ݖHW$e?. ┰ P+Aö\Ue5};+A#2RTFR%?l oZYJ[`l _:pV3;=?:8OX`~cY<4> A:.\mwal]AN'6Y# ltxpEeDH:d{#@5rG8Ѯc/j|ntV^S\m&/Cنإ/vP2 - E`>oA+,)"pPb!:A)`p֏uqGPt)T@wR)Ւ!d"A7:nןɍE =<ǏO?R?zUpPT2&IqՏi>{.B42%~ KTI@NPD<{\g~(nAl=fpVu5tsgYgBD F/Mh[K>o]s 7:܌ȌIد (%`J;*:?u2Q~v>y)P&3b[pSYmR_ùp>DvGA;\I=; <M _e_ *y?M~+lk5~û%/~='EDM?-?Np IGvGLuPs!Rzq9x;$pY?0LNCVWO!;oI,a{b~S5 3v"Ƞw+ xjx+mS[Q=g=u"aFVi}sl©u'7n?Mb85_׆OԌ?_'\L@u;:|X`.7tDPPgOWcm0Yk,} g)w([-t2LY >>OtyP_hb_@헴:Fߕa6A}g'_j1šK pӖzj2߉SOtww/@LkhB4r;X:8O%(ad+I&N~ZqGc1_'n5؀5˴vK@o2y{/=A/.B ԯE`λ/ß~] ~jkb' 4=v_wip蘭3Jft|D9S]N7]nZIpLx3aַ§gyII&I`=STsp۾!/6_' e8?L̢ǻw\ p.j\AGwnؓ\u-|&ϔZp*@''Se:u<ݘ/Z_"-lƀf>&UxT08[aD ],k(-zP)~ ַwIi3 P򰑾ms_E2sZl)MB f 6=43Rd_p\9xM˲C}^ub@ݟ /U@EwGa ʞJJoE"ړV 6@aʯNȑ+):ouj 5ȫQuz~z/)pTϺAz]; ޯγ1" @{W|$8!]4;H럂ڞ5q?+#%|Α@Ab7r:ұ<tpQ &yy?`*Zާ|Rr gxu(l g J$X]XA?{g5qkX2k42M< yTduj=z.pvsJ/B%b+KcqTc]4eBY‡oɋe]9~ Ä\xilzۚW㡃6`/F*b#",Owײuߢ騩~5q>b F͉_=?~yB.ϯz4&NgG*muqKއ3wG͟SMoyVu‘&-~w,_Gjr8tL?{~t\}ȾpOHI*_D<,I__v5;Qɟg5F ~#2 ErxkL =?sF?N/lWI(2D ݅WT~ D&-\GIkU[EaO)ȋ?ZF%dI Ͽ-AijhI"_vzmn•x| ɝׄ*|?R(x)D7ongh/}Pch g*{tؔ}Dm#)F3ըak@$ 鵗п.4uY= i؎o0~֓MQ?^0h'1;5>5_]A߽K Ϥ'a*9ҕݚOK Wdw^ld::W" WetL]#U?{ 5Z2_~_55H{Z4mfHo/pV.7jh>57~wi0Se}mkMM_ Ul*\_ o^lT 4|mٯ$[* gUAorHPx7 lM+in8(dFG\ u3U'xRH}؋[#q-mޱ&ig׿)_E\s_;Pbz>Qſ}L2|_@`ۏêK]Ѭ&L⸾/lv(L%~d%ͧRAeӜ 9*G`ѥ╤~D 3m _WfIq%$EH[}7&}}Nީe`߁kcGK? /ďBXM'~(Kx.loџ%ے~wIM~&.\on>o??R$y"ZG`eEۙ@Sw,bvn<\6m,-FR'2t61V;94]<)kaM"LeSg_F {̗kJ,읊s%{Ǝs39OlS?_T9I3קÁb)~($7VeU6EװC@ʫ_m-]S9n.G/|?+cAwI?ubMٝ| 6n_W:o?a o­ ~(XBqW-:ː5C(]qvyS=9fh|[ŏOr}oܯg'Y 7sId^yGf,sԠrQK׉.YݟedMDnCe! QSSG2Hw$JhɜH[w"q66e,ÿQ7ODn~ȅ]~xCtl\s DLBc,35SD4DWj 7Wl'aUeK5Jh[54RilI`TK7􀒰ArL]ϋT A+ǠgjUxs*( ԯmj ӊmLD\4S (RBm:1'(:4 ¬NvjVZ0\!M,m/֗RݮiZғ'y5_h?%M`engԶ=4N6J|/k4,SB!t?U}M4_qMW ^~H^d ć :>hPA?Zn6T,etPCy'߉zy~:_㟽/^쯓pu,cdr; d$_:#% p̯ >Mt8Và *1⣯@ 5wc_N0P?-5JjS)O(<~㏼=[ [ K,Qas:tvގl'@a.?Ǐgyӏ剮vOr? %nzqp!uA !I H=͇gb L Hҥq@XOޢ˰o.5ìhA RB]4tpxYs.2bM,C~.A`5Dvvg`F^[)o!-)iZAz۔̛ Ƥ¯UvsqCO?O.j lx>pW_(zҘ4S Iڴt~Ieڶpx2jWq"+PɷG.>sjA ȤN/Gm#Zt\ҏAb |&3qKwx&7-4=m&z08oEÖE,[R uz F]ye$l7. Ȍ<37W\!A?GjϳލަFnOϻW7}w! @W7(=vTz>kf~[~y*}`S> TɳYOP5rg`:AB~]إw9.PY/o3^]dtoLkr!j>}}>S#'bHos7€bڱ jA@Q%ʴxQϥM再)O9E)yGsr_9/p$SsFI ~iξ9X=G+~rS^V~3:;^nרX(D:n~iGv3R#Eg}˗H >4FNkBLZcM3# _ .603H<ߌE?> ?2or YB`Zl)~{ݿvT<\oGJh9E)B`?xQ_ӧkP @1|1 X:D\'?>pKf|XSkAhG_&_6A1Ei&%SlTm&%"s]#@0FGzQQ[w4@ 0ciM{_ζ j5̨E L6{3D|1x]ďLƏc5?\2{Hg jlGG`#[~`cÜY6{HvXð]ʞݕd `}}ْ*$ "8w[IGlLܱG@N4ތZSo:st=&fR`yS=bzw51Pqw;KҤF\b&mY3jk=>N.B0@U.yqSe?eFSO6q~mZHzy>#q@ Q;ݷ~;gnEZh7M7)HF <@_/ҕoaАւ߉OD~saz/0f+Q 7߿q~L+"m1~Ə *2, M:WcA{ <)@/kkZ:fk.Ț|2MnAEj~Mk3qF#~s|>h%|ݚF?,l L}ȟjcS.$Mʧ8@+炿2Jk\z\BL _1'~$G"&O;.ΙNCi:_b?]Z2Fs6LNu`U &g?^m5X5)hQrl$~$4.VxRxFe25)hX/^bѬM@q3Ȱf0G9h4SE4ΟX?c#c~v:A~HX?I_'A׏ũ-VbbX,('jV|A~  &^"0QiH:h5t{—_O'>n^Q>3ULG# 3&2rt0|Cy[h؝Z]ƯH'3VM=SL>-d?k#~KjfAQW{1.s#WڸwMw3|yx.| sօ#w ^}AG ~lF:3sO'Zt5@Ͼf29#6xIlS\w2pA9+} _cS}ج]-t, s& A7(n-ŸH$ ł0 62 }&r #f_!S+p+Vgfxq`'DY."KYSp}?^db"oT x2~NZuZD/)Q3zV(҇A8vdM.]'2 ?,aB#I] TL{.MǔS OW;]L3YiIVN#l<__頹>kIyCFM6xEFirVY:LQe*E3L:*cD8e.z sM(CeT ӽw/k@4eh9>aE=t.?N&أ ][u`^sھJjnm 9,s27:DW~5O? S35"sY'oP9Jd-Nޚ/]lg&T2(mDz`S0]`OWc=4tLu ˠehCTceV<\ewU>.:mtҿB^5wjW:5dTS^utM_<ϰ_LM $tyH<^_IID%LzȀ1q9@)hy^b!O\vAHQepd "^;'}%tZ8Vx懄Ku#^ Wl$|&8\ dqЃ2 ?΂EDGv DXfJBA`@ KƏ^+n.=~pڀf7[JMHWO8vȬ^0<6o]i 41.x&8egWKu _3^^艑-}z^L"xT}Ou%~yU :M^;Ą@ h?aOb&c,?̦"[VA)-f5;j|}0E@B}NN̬6s|Gy.p_EEV_q~yc.i ؔ2KoX ?]NMwl?SGȘdj"y3][e[{:,UP _ D9ILB vFjH:ef/^2^g٭W|t־נNL^ض_(_$'1 UlrVsY g *٨!Qtu_:e~Vؙ۟/oZTmu0@6h8 >R9n@:G"Qc'OڴBxAEgW?r.T֓'[fkcS =UԵ(s/ 4L1|~یX#_UpߗX#6J ")1:{v[ )^(3i?Sq߿m3kּ/p7q:Yh$ۯãS|0~`i |,m@^<8Tq[?ve}i8H!!/~?o3w`7a叐:)~xlOBdE,Z1j"2A%/k]_@xGA$V)=sߡi爢ȝ㥉c6sMX~|=uX $ LNOjO ;Maҹ`K<1b.W')!LqC6<la۠;h^RGMeq.S=ixҍb=~N$#qaz?oX)#:3 fjhitItNHٯMTQlJFx=//}kqt9%EB89'#e(y5$èt?9ݍ'w9:{ճF)D$(Su{.X9_,EE}d@zXR]\}̱muZ$뽩f`E`hE`*ֳ2e2oeӾB7EDpTEtqavwsWӉ 5v+,avߺ1f\> PCdGM0j5#jfNO#o8i6Ţ3 @·o#vN/ <~K XG.N끲!pf0 V?}'?/{YOt|x-z`8g:2g-kWMsdo^]PR)扁b6j33| F}G>C3?ĕv8kM PRCg=wݽ qdxq`7j{=uA+V0I܅ X~=wrtqik k5sk?У$@<ǻdE\~0Ρ"ua_$nv0 J",3~&#_xzL@ `".8?^'\w~ #~'HBbDobZ~Q55p~G=c~ @[ydq 'HNCKzp 3N2MsuLxi ( By>u_qrb!`J ؍VڪR~s YfZUs'ta9ڛ5/cJ+SV=`*&~i'Y5|7( C?>8htK`s"RycjD =BD]jwN<]:.hmi Ndܻa!%LFཕE973Mr}){RQjκ1/Hm;b b}8HD8ij*߀S$vvV=`X)dOzzO#owwJ(M'oD~almǰhP JٙAgYfflemA6!\h;")Sa4A)Ǥ_Xh8(7 7If`GѢ V6p6 e>@Ƽy44ů4Ž_)GS1 @ؒC?N8]izVzʛwP 7ZG :k 1*[s;ď}ߤ3+jc#f^*P VIzim&Pc聊',H6;m`/''מBDmʆ>e=`KMS4tЁ. F^Of*frပN0:Av̟i%9ovr m_yix/w\F:M/J]:&d; Ə^y sdp_ɽ 1B;E/y*| H4eebcE֞,oe%34E>J&MB1x㟛wtJWSaY-˟_ Pae28! $t6߻L_~?t>< L2;1:c[>[? ,_!ai[ fã$QO:d1؋ eOq]MvSF%= QD/`k^~Z5IuzK[vo)WQMS58ߝ|"wBgdC-N5ؓ`&2@V0`5Ǖq~PשS~I\UX::}a$,ڴ?Xޏv3FY R`O Μ4QNg L&8֤ +[S3-jh#}mS¯h`W=v_o`Q&c7XhT9ub4^XL'zOMXo(U.pMVY.i%, U^d&{jh}0$?FD(yZhhO(ioH#:?QO z鱘ڎ҇ȓ´IX%~<<;j"X;uدJS\//7oȞu[ nɼ)8ݗ^tD^KÅ_{F޿P ^~Զ1a~8pMt76)Є7/⟷&uN%s-Szg/>k*=5zzQ}b' ZN ~JD1\ cO o% ZG L J 40s׮/\k[toU|Z(e@L+N_sQB:;4?eI/CY? cA?jר%qb-{O;SϷ9I=cD+5D[<@;gU1 CJt^}WoQ7^dѸ߸~^w4ex^0'tчmҏႲ'38ɛoWX_ ok6֡Zf\5fsع|LeH{t]Pfo6Wo@ z?m3p: Pf'S a}2EI&oS"a:8{4:8G"T65C֍,ko',u U4K{JʹIњǭɉ;'`%ݫXI5@Q>N0w;#> *3VC\Яo:2X󧥮EXM?J*~>B|MV7#J%!u uq3Sf"XŇu{{eAEF!~pD 0|n$*h~_h TA#~J76@㜾Fۥ[Ÿ[)oW:sJǭFZXLCYzpŐN sJ"I+^s3]u?z{LD>~\SH;p;ߐ ۴ }~=cF7TGӚl#-S:0L,jy?77Xz 9tYx9mqp'RGy0&Cݑ\:瓎*vH _4;8#`Df~̭Z"jpq=~Q/uWm{h;'diH=\D{!LJ&JEmI0rs΀)E5k'')(*RXP-ߏLT.޾:4uSW_Ĝ6ڔ+:(MRBƱ Tиsj-nbgUT:)u͑F\?+Wq?ի2,l^R>op_]4͑2ܽGژF̎"췴y8J yC$^ļC VkάU_TZhƓA6S'O0le893u?,OLg(Zqz%G_ߕ*:_ҋ>eeB5Tbf)tS B"8"ʡ_1אՇ Y++UǓ`4Y.1ɲYI7iGcxƏKxydAKzÍ:qR[v*gJiл:}tOn8IոGv;8/kTR)U׶/HinS']WA384L^]M]4]vO_Oqxw_O8M|Z y*ZiF_÷knOUt~wo H7h'MWIz(ra;z c \tLtлBu'{3*B}ASCG]tZdR0Ե] fr:xR/S'pC3bR0ubv/t盉Ů5E)/8 v/ֻ㋚N ݦuS&H}fo?3@y_Ob1>uaWf)rF7~ďx AD UƣoKT&2t.4ʷoЊi jt?ܶᾹW׹8ͯ?!~eznecrF\?~ SS0̴0\گK\M?>V85 p~ ~=~u:4iΤgeP %XQ|ݑULv5:#{W}^_߿r<@uR d+K8@#㟆2Ǚ<ߗ'1^;/!mK}VR:ghC_F?yŊu|?T4_uPTHɉr̅Zگ"yc+&CO௚Sӿ|xO\jS}ӖP}rle6$ ?eW|kKYΫ>Ƌ=q)aߤ40!&-0T0j˰:N.y (➾]U]icai\d}:8 GRO])FN:TN/9 )Q }vӴX@zpjn{nLzFK o78hg9kf;d̄f^/+x;icXHGBښ/ޏ4g%-L sOtOAؗdӵ0F1_O;?l2e7Ď4`Q E ΈDA@;b¹D7rx{b*Nn `\:󓄨VC_\u*~¶;)F 8XGzݯ i~P"t~GtіY]EBjaB}=iK|Ϳٟ.Ikqa8D{r'сLShBS%b q |Ї$"c.~K8&r,|" IJZۖ|z|WɀQi7O; [xc ߭ ϏOkr m쨍~'*afdxV3~G$z/Oו .d_DT^XQ.Wmļ!n@u&5g>kh~Jv̟y͹%T >GEh &)4Gpz!"0%y71l!89'@4omŹ8>-ߥ֛/swEjļ!W;0,&F1H &K𫄲yRWrOڴ.oېY=Cb<9KD0aGf&O!q?p Kv.ys#zB>UcaWbNy L8tՃ?:8zB0*cHY70`*+n*q}FW3?rP|(A[:7 ?&ohCü:yBwJPM^ Q)Y5 $-P't5=4uz;ϳ-(X9V5Js=QF VH6փPTZ8 Z=FzoA@ S~@%WSuuHRxpNҼ~0v(\!R;ןQxw#gr]"JZyh ZY'Oɖ"yZT8mdX_#@>ԍϨ;`T + [W(e 녅C)!fCs-qNP& T3~>>7>sCgY/TUI+z .&!1N*6l*qD "_ $Ltq(Pa8mϮgtl3%7c3ϒ!N-AfcLI_X8e{T_&L_Tf -RŽz7ٛ6d=D_!_߈Z0Iw%!6ZO"_)/p9OukOH (\Q).Gyp7FTMef̨m8OϮX9g cj7r.(rK35T(C&*lu=wƶ?n00!&߹~`?5^%O҂詍˺>~@{(t~T9FhR'>3mPswb .E>!޲\4nf.o8ߚ??? jZsD?yoyI#' °ֱ6,9EOpϕ7D$?lה ű;JK9= /2׿>BD[,?!RJT33z̸vfiPjNE+]^3J= QyLڐ3] SPW֓Ƒ0@;xwd#X,S6~:&Wvub V3Dh #do  N'07+Dhz* o(|D$~o擃Y'# {Fԕ5+˻_m[c3I$$nK9^l Q1hT>+(oDZ˯ijX ~Тܬߍ/6^M,En~blYMZ;pZGEڇGY 񽷿L(H/[1@j2&Uż?G & ':v/zUQ~s'~}l}Rc>/qUsQGq_,9lԭ7Boo $Vj6VmhFGlF긪\ >ۃfj0G_QOC~?ٕ3QدwY5CÏAŪʒUS^%'߇boƏp.?Z=],|㿾2߅diOO¯!sylSD/,ZWwJT=ܿ-_?6}f@dΊS?aUՓ>MZwos$ZMb,5_o3@~t?v+Ѱj󟿍n/7]~X - ځ9>?3-wrI}6xB/5"h u}Ե57E#>'u]3d/7mvS ?fzyuӵ&Ys&I5)Qp:5 J} jsy8-?d)xZ8MxeC6SNUqEY{\9IkDwDPY,rDoҤO?RDsYRMOaV԰}A@,zE>{okyw7~a־{ۓrp"Cؓk%4#/}dhjZ}jJ Ph?rOS|dbg~Lڦ(LRcCѽ{5`%I-SDwdFɀR???+*vkKNv}L /#ᔘ I"dp;ӛp .7I5_W˟(:SAU:] ЃRSѱ˃qj9S'ϓpѦa5-!k.@r)42״qgף#sx0GXtUK~ 7Et70JDǿK&;>यqR~ Zt5k?̨'9~|~bw3̬&)sMHWp=o{a+9@^^*ZD7{9FOC4xx<' ?I~4:~1~=H.y#̊dO$=嵙/soT?L i)rm[OX_O {.)LP`@#NV| $* |SXnz{4L?r 㯄\B9㇐>"^PPu(rD_߆OV`6}=fلk7Ax>"efy)G'hƊ?V\231Sle-+9.hSTcSx bTs6gqfU <(j{&Vi5gC 7'#q#%{s.z~R ljQ Dn/Íu6DQDB)d*(#04VмMwE:?[,^&[!zC5bw"93Y2ueݦs9T@YN^z,m!oe FĞ!k>#SijyQ L9[??_GSb[&bA F X=ˎ#nT E&aJ;XĦMױy"s0̷͗v4E kbr>㇥_\Qm[MEƊTbRk+g 54tyidRd'M+ݟ0sQCTyu _gP.mcn@3˯|qC.Hy{7],Aգ8o]EdBS(!o#WlG?8LdNF7-U>Etn݇u9Z;O7@8IDh-j*hԸ>ԛ=| A"ǯE5{?qwF .S<0 bsn=v"~x, ,42j5cwL]|r.bCAяc􁱥!rǿP0y|)RYf]cSxR7K"QS".R\ @8`rq+_UG4l01`w݄b¤pK %t_Fߴ"Gq7~_Bvl1ߦIޅ7 Qyڹ/tߐBM]\%3\[Xxsr^&?ZOtAn,2H % b‡.:oh_b̝ O5~>Č9[\r_̜׿~~h& ^?2 ~s`3".?dmr-)o,%AMMêy'/i qE9zm7Z-[}8 ׬71(-*A#ˬLS3b[|=9 hB%LQB0ul3GJB#r#cܨH$<Ϛ8g.uѐQRy(O*ܪ^ A+˅cI|+BVM k7]M@DL#>% i@?P }V & A=Ѽq|rѡ;6ؼ\S[e@7/t^`uXٓw*Qu{ \ mp X`R4,tLwF򻎮+G8ՅqMQ.3wBiDD^gݾiA/c_[VvPYΛnXmcєI_T) Q/M;yV |:y¯ 8<d&Ͳg?N㺂0k2_`ZmNر;؉_0gӄ;[B>bHKhN¿H㷬n|¿,&~K>cN-V; 5)nb!jC)PxpÅ33'rgsWKG/O*$^?KL -M|*Pu33g/͜?88@]k8k 3SBi!S\8ػjLSP*q[bX>f|FDC՟5jS<Ǐ5~N̘ n?_)o,<<4 >.jL3!_;ۺVWnv].i85[? swƲ&ZO{Q9'0~I_>;M΁6v@!n66dˁL)lر( oS6sm 穤\h>doi{sǽ5{̩u̬Ø{5.KĥOvqpsH~ '24Nʠڔ,p"1p"r=?9hKѐw7(L.ϓDxd_;?ݬvŤ:W<Gani| oDFܝ0)?_7]:u&'L( [^pګ([ݹ)HSo`1&-.R? ({ j1 `~rbIM⌐iSr,.~Nk¨j LGX^Q!)Щ~ðnXN\$Qo635H ƀ37~C:fzDTgg cP@uT: EnUv:[5/Lk"G P(eH,t@NFvf "ЮGĔN_2N6Pr2 {m Y-T*W1ؓ_smg`g:tIM '!4F9~Fɐc*XO 4F 9I@?t5ߚ/&?f~7wPm[s,$ 2D$ݿ  hwM>5ƚF ?L|aN'%(6J_wm| {|~hUQ[?=ѯFd6IK=yبK8<}o~I?,N0~TȔ&EJ7Yn(M20o'ѭʄQ&::h}}=AB/?h򼦈^-+CQ[&*L{#Z.N&nD`^&לe>tq]|Gc zSF׃hh|eȯ}Oswsz!O%1z.2Z*0~LμKf yG{3.JA)<LtfO|Iq/Ht{tUT*9+g>(t|W+4WI",w3t,^E]JsrA~_0ԇoֿPf:yYdĉ}aP8GKvI:goܪCKf:(y{>XѕuX_A;g:4 ;*ހ¢Θ VeL"?)~ 7J]کqCz*[ѷ?*w|0JڞEG:XF$/t;Ǚf7=IWi:hb(t ,@8-*CMv{| isւkQ+3&LET<=ets RBn-FǷcCp]r'V=S+28 ?{@:X$3(|ɉ&*~| }א%<~`74N0`9Nry*Vd%_?fS35#B4ad=q@N;MI 0>[QˉVoR>,!q~7K]r@F>M|pX7OX>3͍SA.1ɶ *a9J\(dC4 "a,$ 9 dl$I ;ߓwo twSF\S ߡD:<#}>_nri|@@omMqߑi.@/pX) ?ܷWI-G{D\4wSjOO1u7ЃkzlHIg~dH*eq(Ə 13<&2< P|H >RP3~\qc[v!9jl0Lѿu2?i;ݦqDCFu5w5x3 !/CKKs fZY4[ I }/i 6o udb5LM|CVdissֶ5܄^_)c\3}zA) &u<6O|c_p^y}t,[Pv@#OAɝpVs#'oЯ>I O)N,3y_i`:(_3u?Zx)Luf % !MTn𒧪8OA8r/)-(:ߒ=\%;o%Atb.SA{{BT*KZRmsSWrKS@Ԡ qz7QRRx=I։y@BJcfĒ~.{)u$Q7bѯ&WJ$914qY=ֿVO`jF%Fҙ+6(KIIa"cQ),9[9,]D=燮\rq#,׿v*|WڨpIVhK H]fEr}&<7A:' iέ @zV:ۋ?>2u@I֒=0D߾[g[aV ^-ScvA-ݿ3?R*A^ |2O ׾ΙPEcXIjhl5I _gju_>+(wj8os^'ZgF4OÎ\}o-<>zW'M;r5 ˋ}6#z8k80XЙL_gW@=Ջ;S25";[ms)Pm?[Qxa>8)GO:~6:ݾ0kcv#/auFw~:+1D\utnۗWq@78/f=.SbX|Ss 3!C`:Y7Vsk#ӳ4UJf"~IkKdc_ï%_f?ϟ aߢiZ'Z8I ȍRU->ksM?c ?>/G?&SU1L?B/|;i;1kCy ޘqs5EAX PAƏ"CD-CPS}oA1 'x-Gx, q\?Oř"Z% ۵b^V׿9ܜC]4Kӡ܏vk kjG9v(ji)`θ@l" Oo?UW+>dw $hTYGh<-;M^cVGۀM :{wSN^pd^?AB֧\_pڅo>?Y+Co08.'D x>nppSP~ǢQ _X]_1mO/X77LܾTlOfA KNːs0Ji0&d8ӿ˗Dp~thCs6-J/oE-Iw 0G ;s4b/S|FKKwp~ `$Z)e 4rvw z\ i28h%)F=;I̐r~};c10}$=E7~dwz= Zy`l'~؟IؾՁ1r҂ 6mrni0n?3ҹ=EGVCܫ ?ʴAhT2Bp@= .P=a<7>/nl3ɦA:7zP!|cFz,-o&3DI`ٍ3x$ȏa18N Q=;( N[Q(Q -t䤦EJNd\@^⇘tX{ܓXP cdub~|aHύj~74UOی5 3N0J#Ll@G1JS'|#,-aY07օ b3ƿ`z-OCE crT+O::@NH"0b ޓ5Q|;MzV}~Hwg~eX s 2?.r*|\$PrZՓWŨ[S=jގ:97\['"oz=-4AfGjӍ1!,8 Yf-ao)^|X?!_,s"Wq{9;*Uae/k7G9h84%߶Qr18JƒX S<Ət~)aã8!Gso{IӮ/ ?K+  p޽Lm@|!D?͏iJu*\4%2u `cn(IU*Riu\FtŠ^顱2X}81 ;0qéesI`ߠD GHɗިՙםQ JѳY(]Y:eQPHMnb jDk4jk7szrnr\ CBD7+l@&ZKv'C|P~RhVFxnҼt5u2' u僫Pq`'7zTʓ&?Kb0RèPycd|C7%KBӌo{osQgY10zDQ:-,cA_SN4v?ffO<:@33xP)/'yQ nI4O_A WIWOUT?HW1.\?c]Pkf'm.z ϟsb}?> Eto]77%]+>+>3~Jtu)e1F:3&3kDpFďwazhatl,i9 k̴}wJ╞"ZۗVϝkҢHLn&RB?q*d0~Uq/R0q6& L{8Yh1dޱ_fG =I 崅Umml7)ySjR*ןVwVmb'AO$3Oh's1D`H(IeЕZaonKmE^T:>+Jڽ0f%4${gt_y<5Qfyа/MQ,=t9R:Ьs72&1 !]kLIRN~a" `oᗫ#5Y+Fpѵ9y#) d/iJ%F?|s3n V8agO4 ŸZ `TZXHI]PW<79-+V^ݽ~SUvnKî_/*뭚+ޟ@j0UJ15ƌe93t{q7q* `Lv+#ߚߣk*ﮟ:WN{wrIDrl.7}gGq\}i`r~)?HtEr*zVBdQtNd6vf77Z.!OuƅZ)onvjc%]6Ftuk~2h$ 6sXFU ʅ^cR,Ev>}y޽(87Y{|;gU$f JqqRHo5K3fVu;y_V(]5pUG}Tp/T:MJ?*.0{ugmQF?GW8Y+̪^pa>hZo@<,aۻukF**' .EwY5t|-Wu܄*Hb[{fj xe\طbu'Om6[ߣow?9#6Bxzt>I $+2V>csr'f_ߵ>{O[DoV$so/Gf7PGtJZ D_ŏ}Lٸ_q-vبx}5?_ÏcfHzdɱ[` \S'Q[Бk:}lu̚fMBG-|):/1Ap}dʯ{x,X \D7cI?llJؓxZ: s Q3 2}=$YGǕ dWyN6o/V8kyzOs}}/<-#ԩUFR(mavL&#S Э:X3 `rM;ޯH(&Eؓ>J/WjCBtZP'7,|xLھ[tw*oʪw0-SD[Ӭƃ<-WٲhJIܞKtݩZmfG" x:se+?./'7'/DJx0.$x!4aCpîK \C{n鉶1C/S(Zlʈ@Ph,uˠe^Cxa=6}[zN9>"W{VYN4i]bh?`3OuX/~j{9{])O83qלc<5?# Ge7_qy\^SUJ4yPa-Qr<g36!,36R AG?9)r}7u Iv=ضwPVv<_Y9Cs[DE^/3\M49LD9DEZˆ p5x^7/{뻁NXjWSt0o(v+{yCLuyr=Q)d`1uU*?ؼ&2z| =V*j kSK-ukj訟Ejqm驰*ElԍOegej#]-LA = +x4]o=~|Jp_As(j8 Hs1%5u^ў7wu/i\~ߤ_ՅM#k~η)^kGgKULB@cV_]qGgSDw^UB;aP8ݮ~^v0)ֿs@,qwv+Ic:hER{ YQDg1w^p 4x?|0]lo>)_9k\$HS׬b}Ǩ?D LAr?r),'=W8&ɚEJ|@*zm8~i $<%ps/|;8XJПy}zx@Xn[t*=!嫾1¿_[:G5w?n¯D 3U4j$h[1 kD@^GYiotX.V>1Kz.qh3/2`=~~EJa‚\羠<2y ˌ^Ehx_v| ?n$~$33'J᷾--篍H)@yT;. I[C2diFh\6$R~Z3]RLȓ|=SA0Fy$R椷83uN[)`=L>uzLm5a{eO0;aRr/MtAga@,uwҡy do=^D%tܻt˶t_vsar{zQ1 ~ :RAz{t ^rβ!kҒ8o z?tPAWb+gf\]3SA3 j(R>}||a2{@DSSG1gxix{,WrIe3ksyr`0Щw"$WHN,M<3nglW]''+^870O<7όAi#O}o`(qR$е&Nx/% $$>qa~A ekF_Sfǿ>I6!0,4=ޭ\E_.v,joBkOx0*cݏD~Qwft!`S ̍_l;P ?PY#Q(Ϻe>'~ojMёE!qW,ܞ/$*hگ~.E/q'1#>`$Xt&A}(W8Q(NGƿ0HFaZe[_73(y<3V.ag?0lJw|(RNre6Y~nri3V4ylQ GB!ReMMS!cm?ȩlUwa#%tf. cJXSCndߙIrž>k=ݬn,ztI,ѭ&%!*͔ ƁnKil}Ra>!e>.w! $"gZF'ۀi;()}p>X.di}Fm %H ijn_OR\z.,PZ_ԖEg>іsih&B LM{NXn82mr*=^&~?2%tf*Ps--nyf+]l"%|k0?)qCt]gozژXhaN@dO5< ̐avtABExi7脽uqEvM 2(tǏCNjMt8y{_eOhSiEQu6ypy@m=-icSӂdMv `wo>@s (+B=4,Ņx21. T[ եAY$Ь8h>%@aH “–@s1:ְx>ǍT +ߓr_+w ! LC/UCnA;%~cˑ ^7r` &I#yf@AD9f6o<}Xw/Ozܸ>sUxE?@/Sѯ#*ʄXbcGV |G@C<חO>S/?fKSf(u|=I#Q_pØ/e*5tq}=xB5p⧃r*~u9}䑆%GǜCt]J{$Б:1FPNIP?Vڨw60,ԍ~A}ȍY1ݤs]zfb!;&&U&H统 吿3: `B{ZC$?zt~@c8sg@׏1줩W_1̈́>vr$B~ǀuaf#~ )y5 s>3`ewqDxu}8V!&5~5s< ]ᗷdPWh996C),!nyR @tD 5N~hyO}5zAx6qr"d.O5:m#,S \JL`bn= .bRia?'745XaC&}[XKS||Q3<%ʓִ$Π.lu%(@hUxtlqDj>E}v4ZpїP~X0.n5f:G ~m}S]/ϴГeݭmd""3ET&B(wLdn=]><\GH=1\E \dm7q,~4m)E>KA4l'l9!ϔDفak~u:>a2x&nģCoKb"LAX7K _:/rƏL&~ W ^D4d 6kBԶ_y1X6eQ|+~*Eۿ4)|!Lb sK%: kFS<}(a4?Xl~Ahҟqi[+~9M%Jyx!#_[ݿvBoz>0+re3~䖙va?DItxć:~0N+c:۝[\~Bw~nVNW./ l+&7/ÿ{{nP3aHS,N~ȟ{a<%J:v^}*$Yδлuew?@<՘|[>@&,fCMD;n "\{w=*ibjCsL^HŚ~MZR,Luy˸yo,D00Zw#sѩ(̚'ה)B]`Uߨ @_'~!*_NB_-s7K_\>,'OQhX?S:L:?<̏ӯzUE7nRitWS a&raZ"[lrrxgwFa1jrJPԱ3jö83i] vΉGYpiokP=~g ҿt,5s0_{|3Q_6ȸb+]YF80Kdy`Dwa x e)PsBh0 }'65 ;/>H~ao)?DMx  "u?<42&<:}`}}~><Lt~RFc#RU)]'ax~v]=!<3Q4U}/nJq#*?[tFµu^IYϬlfBjR@r"+l~. ;DrT)iZ-tp sF*`N'kly W﷯EN!V':bUYOUtQ*eG 3ezXJ9B=@Kg8NjItG^7k{Ha*Z15ˡ !6B ̴8u\ ANq 8LYGl!~jLđ(Ưm5tB'S|6 t6S`tЛ6Z]m<%bNLÞ"rK)@ލNcě:${L't{b7\rOjO><ߝ"oe>`S}Y :݈ U4? p|vV{#d!`e.$'ElR'_] j2à ΓVfTNs3 tU&f8P 4JUTc*GH6u//m%Ze^/̴]SlBUz,3kȢgW}~s7E&h:TNTzs&.[Zӊ%pyȦ0YNNW$v_U@9f;I|)v~]ǔ&> ?TW1Z?҉f(iDLY5 `l.sqXӜGl8 A@I#}l(X?<Tmsd% N2CƏFbF/ B٬+X|_h·jU8^S? Z]swժ~6&U` |ahz;Bz#q˯sz\iӞ4)*̦0_ESAPzw f YM OI|ilfQYL{|ϠrMW'HJN\-y퓍S%#M:}٪a Mh?D3 DX_ܺ z$>*d_VsTuB)DsH۹wSaa87o>A@sdE9BEZ;v4k5 t8?.Fj^ ,U[Iij.1/񏧢UFSS ^er`~kr94dOCO2#}՟ ¯yݫBMˬC#?ee(i} H*r377'qWYc׺/lt|p_sq PPe1'`܁>r3?fO UMOɻiZ'?Y!8x[ĐS4J+Qffםy?\¼7 @ | ځgH -,~&mM+FYi$Ä{>1b xXZ_@4"2 kjݔ28^~q.WR`:ĉܝb MX"'KL `)}ƏDE,N^r 9i12"ۢ1WBM_/F޿4 B}?`4UԽ!BBk,#*?N'ׁ\w`^.nՠM|4q x”Gni`]~E@C۽a#ŭRAB0k2멠O`|J7Pya&X(Wc>0!j@j/1  |>uj>󤱡8amu8vD Ipzy&$h~x+MP3YsZ~M (jcyqOl~lu߯&Lׯ"O"EAv9?HUzK߹n=Nߵ7@uY-3s ZJ TWqV-Я&G"bEX蠕a4z _u;Wb6 I- XO9zٮƴ7M棘i-h N#0^^cv 7uѧxsc~k-iWN &G?n@] ~~KEYÍM! U.t1Nh!EaWaK'c@&?\y!#dVsƏu?Fmk)"V&`.<|wxG^}oWhHiի'Ekx502FD־?y51M(jq 1 es4M;z5`. //P`.JU%Í㸃v41|<nw;0u܅^]`!/Y-uH1ӇPP=߬\cm/`@LMH /dv{-EYLo?Pm!wgs!~R]Ð]~1:'#Ǐ.0 plSF%_*4dч3\\Fu@9DOlٺryV|k}_>g, P P~ءh"4B2`&tuDلPC,Z¦}ˠM -tfygW ,N_/5`Ez3ߧ;_Ε5~ʁ'q?l ?4J0 S{xW<2jh,Y&KHF=_7,O1Œwh1U!xP $ztz>]g!)\2~־nk{wYuKsufPP9j|<:KO] J:gLh4mҮQvBCLIܔ0?YE g ep=^37^,(-Ǎ+F4bIN).r[C7,uD^P u /"j=Xy h(* ď0hn/ S8Y(EeG:'K- =IQW v*A(-& 1"*~\,??lHK; XYufK_ل 6}[p18faؔg#T7Cؤdn3O}TĤ/0 OQ5:5lpS@~%nd%S76tS?ۙc-6xyӞbB> E)'Z9s(?:WTЃ% ͵I8QzOoJϭb4EDyd~dJ$6yA9c]8j1xǏy1~L#;pP~tb[IThbkAs`3uߓXq¬RE p0G5oFES/Bdv]F`ۓKo[!@=Aܴ<L"1DS0N#6aLekU vOLĕ*]lpQR֡P MN2:"pXnOzu<1S‹,79՟3EmblMbYJfR~G҃wv3., Fi;܏MѮ_ L GEz,[q=zLg ? x>/%U *81`&Go-L 𷪡R!2V ~F %5"d1d6LJ^,vNFOn;S o\ ֔Σv߮iz`F[!ЌHnܫ9U0Xre %1icV5 b' Z5T]zuɋ#T('P荸B 3>`7.cޓfdSX8͌)ȹn9R*罚jpMi?͘*Hʹ ծ"у5s1' 4L η[@[iE Mt|ލu\Qhrq@11Mh`2Dze"y` ؀3PO,"JOnh`f:L-|魓֔|"*gkf-F'1"&Q0M_brj\0cB5Lm~.|E]SWF-Y{01~FosTeQuG0~b0~ ß T5F?]e< om~ыA%2a[͍7@}=5LǏ&nFR1}"r?%~`?58fZ \$'6ف"3-~>&=q/jJ/ikG0~|BڳC/dazdK~7ݿ~o5iƊ;?Y3uʸJgp}pO:ª`6ӯ5\>1lUG갿E$'U 3;қo]}}w\w} ^Ǫ+((F5T{#TjvF>?of^?opP:.sk-Nٶ2=t>\R ptLvg`\D&)r+ x:iD\RJ !oisDW`co I"]!j6^(鹰rZz K^I^򹽖RS6i¯?mo KSatO1w h1JP`k2(fG1E@=7 T}EcPxqc:&KdX'7:_m]H:o~i1_s7o_.*`XSEzZ.)A'**;E">WF@`Kf} mGphZ>4\lV]6Ǐ;;?y5~?#)bn&Zk ~xƏ~n.9osP+/7#cH*QhVo*}:o1~OOC#yhsw.nZK_i䀘Ų{{?^0e؎)3PQ w@NCHɞ@1hwSuwnL V*[~`NGo{ **NGOjXE>YQ.0|^4swXp\LKr67 `_ jz[S=6}w"@i3𝧫 LU͓J.AsCPũψ&tqzJIt+?iV3vq'+wARª(N OFg_T(%Y@{O}7qR5)Eȫ1_XlS&>s@l2ꕺ1ܑ+@#+MK`8o+AwR?bcY /NU<J\ЁLw37{v8~eRRԄpW uΏ[$Y0ILbb1rG8Ѯc#z@o2L,3Yk7uYD?my:>O'iߒ`\ ڍ Mdkq_Oʠ0~I:޸(|#8'w\e:hƢGE1:`hGR-x}2~ɢOļ{neQuC_aѴ4k\Ɣ~Q\5X'9w};DEFRɸA4oD 7 5 *`b~ R5ɸs4̭k?MQ)_smo m퀿4ymYw wNF뇌A/"eB^񣤃v~|4S CgĶ6ଧsڊ#^S΅[\-ѶGb=Ghٳ0 偌/+~?P9zoAT4FUoHT1k? ~xw|UuW@'jIEap,萾OC:9bϠoP>.#y˓$ ^7jÍ^NRC,U^g~0 n* ;׫ 8/S]-]w]=)1ULv|ukcWNMwn?Mnb85_׆OԌ/x RiД#t6\o0ΡΞ"&NFbNܞk~?X,rۭ߿ 7w0xh"CW5+PֶNq}˷__17=;ݫ#_{40n`~4@([@oofO _oW"&K%0΢/+AX_ďط+خknE%ki߿$~0?m ;BeOؠ(xYI,r7\ٜ$ cSN]=gX>53x;T9wztvPJ^c0iˋEP"z:] ;7zY~jWi#]_rzo݇:)y̿]kXCĩ5s[Og1 Ydv'`;}bڧ_Duaace9wصA׷nYL D'o֮{u]g'\;}} 3WHu w?p/Ϛ6oJ70ч8>=`73kLjL~;uò4՜5oöa~'ηַ1/YmNBO{rN'n}l <gE3r/B8y; dD_fַSkqjRi!<-s e}?* ]AiK]m޸Sv9cm8;_He~otI4@(%i$4Ou.)uJS6s1UtK-3 4K CM k _7;\aM<&|eY"}ネfh 7$1us0X֕2_(Mig~ONV`-ME&-'^4ipMAWºoF?Yg6W3o-,NOյ Hy*~c e>T;~@zϹ34?Dg;~:Q Zcy~C3~oͲ*0zy ־qd[GOu5ﶛҷL_6Ax `,ՍuSUbR릯08 }e]"?a/ؿ+RbB/kD~^:///aČǏ+@/kŀSAxP)ӿ"3X#Q'Ln" Q '_ ?~B_/ !"|'v}]@+ CԯfV)o ĥ 8w?KKHy[8Dzu֚'yl`RS:ɚUUU(i`=p~<뒦zY8H&3yV438#Sw6(ƉL)ti&u"ҙc[,sd|'4Pq"Ƃodu cy%8AF7e8LVBuy?`*Zާ4– g?C-,\7 ZZ*˦h<+T/=b/<&.B& efT hdxA2v*I_`0//u]iE77ń]]:ˠ?Ʉ쳄_L?N_;siӶ90yB&!:jNJ-tG ͨ8ΐA_;DxFlL~RO8RiocyjX#FEi?!`!M:[5hv[ /kZ~_Z{/>/ b)ZGJQ$Ka{Vgc:aH;rh6x}~b pho_𸌿H2F!B>of.r@O&-\G3gᜄc'whgE @QBvymRl{*Z5 ÉH]ϣ.:DrA]픽6HlkOt&TToDU둒D!K!Dp;3D|+zI4FS(u"ϔ+'!о 5V}" K RE_x:,z!aFگؒ OVTOz)j $Et&\y&-+@te KvG};?JY ̉O͟,E ̱'[L4}&tL]#U_Ooj|~zTD+lM5S0O Schztri0Se%_d04s'  6l >1xgBY:o+-@ /^E}E kQf=3k8O-=~sLƏ:SBw1 E4;KĵX6`xn0(>kNyz+rn(8P="})_˯U[ -[X8rXψ;ϺIf)S@ce߲K@a`5Wh_h>+E[ b"eӜ]HxH4G`ѥ╤~+̨QRC?N+9&/G%'*u܅mǿ}ǚ}>!,'R?j_cGK? /7ďBXM'~(Kx.lcm?0 $sy_(߄/_%6~|&{=+XIPyeu}S\m*L$)2]:=up7Lv&|0"Шdp۴ѳ\oŤb\$Sw6Ɗtp_߮Ndp~o,[s}ߠqjzoh/_Sq1.&)4'LStt(H5z*LKD#'AƅZӈ5Wer⑳,^oTj?z )fg>1:ih'Kze:^pٿELjұ| "m*J]{7җMg~.T ǯ~:Bf%Aki2nuT>z^\]Ͽ㙯`A4GGSM_۸xNn6hÇ NI36TdW<ˈplMRޛm S/nR6G U_B[5iS,d4.EzJ;H5 (sZ>M 'D3L~()4|>N%A>?lK AwI?a%:Kb߭ϳK9|WK_3 l9~|洗b"3p7Um'A0MUAdҩ:oᐄߔEWɱ,ʌ o?*=≮3t//jk^#Ψ/h֊>]flNq04}ױf4^oȼ2 e]t ֯]>EG$Nt6DQG)0'hdnȲNH oĜgKn s8E1 0m-@ypr.\UBKtς/p u$Ru4#w9MKz$o 'ۣ Jk< uCJ܀<Axŀ0y'uL#>Aba Fz45{__AO&QҢ ӒHž`}|d]L«7(ќuUJîrA~-(Kmsnÿ4L,zP:D Tۺ?hbh" &8FCO5-ƶd@L={ 󮕿oi[B^oaR1  ˔9 ڝ` I?/]B}M B0L__/ ZnT,etPC.8w^o_b4g j<vp?0`俜 'Ƽn+5i^MQ 9+[!f´[$Va8~}UVf K1'LŇ&z=OPA-ǑC`g8޿0?V3H'i"*w^ vg_LDo)J;^9^+0F|*ʺ@ k<>3~()nQRh)OKix?_3h|%(T-~d4~Bp_^.Y#f*Lh>Ai4 jh!7P 2Nł l4";~^:I?ȡFXHr[U&,8?/LE(h#yΙg/6y0Vg_aswYN>;34مݩ,с4wc{yz !.c6`">3FU*mS2G<~S-,\C\b~yrQSO8`ƛ * 61lS[olB0w!ϝnADik1ssɹ ynH?Gjϳ^ަF._o, ۚV\o 7=M LqiP`HVdw?OuK.rMt&lR% LgIL?_UK 5-2ғ'P'Zإw9.dlTߟ3Oj3xCM~Sg, ڣ?)f LWyAlzsʯQ۱od=F9/V4ݬA_:#;BŇݙ xH_߾ose?>`֤Xӌx,&P87\dm`s+c4Z+jҒD_rx-s`Fk!Uf%|)/L!C(˯?䩕@1d}N\!sObB:0r'~rLɂ 47O`/lR#·{̡>EH%fR\.r!l; K2KIi`3P `@ b=g l;o\ foo5;/jgxz7,Z@en5:tQ?6]vH/VAJOwH]4ŹO=Mm`n$9/r{*qפ#6YZ8FOʚ"6bJԾQy W°ڳ&rjCf]iB*h?^tp1CqopT#ų#<)iƉg7, e`ac8& 0*QƝ U }K-e%7)TŜezˋ<951 VˁNRNULT01gr:4V$Wn#?g8r(Y)5Y#56/@}rA(u߄G<}?i3@Oem<0yejZ6H'f)N 8~2~ 2񣃜s|ڂPʟ'֏d 2q_eWՄVIajf#kdT8$. Q1~~g:0/Lf(~$`D#Qp)dL 'iF~/LGTXhiH:hilbc:=K į'K'3 | Q{FB'VPOϫP-@^MZ+zszMtVEDg:O;` `:uG]c "]^u=[ݘc8f`u 1vIߥ8M굕ʤ}sSx dS0Le]@@5?Eػf>UMtБ~J!b: RSM ~M/z6MWۀdّ2mr$O_[V\] = [zWd}˚Q+AG*CDh,)5}ߡi#m kEhq܉FfÔ頥$%lj`BV:hjPVZVt3V\ g9E36J/#32`œI"$Az|*љ@LTS2IS3`*,2tЃdg$t*W)M:tŬM@_>VHD_~ \̒"V9$Wt%{{ޞؚnG~;L'm9y 08NOFi`#Pֲ]ӊM^S=9 5=f W!uўw—tJz7jIŢ_$ MS(czv_kN 'Ɍ}XFAzVư ~-~4h<_އ4[c=4qYzfN~"-JW$UŏF6~{+ 9~l&og0b)$P~bNFE~(.?S?@q]@5'PCOʿ+^KP}ۆHhY<0toȢ軐7XXz7YH9UnF J$D)Fr"3t,:TgfjoN{ Pn<=dEdT,\_Hyf1S5xVr%5/4vaDTW9 =JOpw:`Rz e3.OhO*wca $u'rG94SN<]bɒV 陴l\\dJ͝XsPN27l̶Kq YeI<+r3}^GcDq88_)IєIS¤WRQ4Ф+CtiX@sn}bZؑCϏS O:=8 \k3zxi SRmJ+Fe6 FNs#K$sn3H?8M7WI-1$ޟ`z:ӕu0`i |,m@^<8k%~\Z6$^n PfXS9 ;Rz>ďgz"rq)pDk8]/y[S|AnrӅulhŨU?XM$&|Ip3Dx+OG>Hl9RH[>sдv{DQ[1&,?iZ4/qH L9SLϹR2Dmu!N?s\op=P# _Fg.ә0= [ imGZ&1{eiQSY ~v?T8y"xsgMPωT[S]›!y$.VWI* /+y5Cy ѩ)!t~Ql#Z}O6:ՂWhv7ҋ'&UO"ɧHH;Ȍ/+~z>/)~Z' NYF)D{X$0f]>h쿐g?I_8@ࢭl;Wd2Ƕ0@Vi*;zoeKa`3)4*w܀=,DyzC1Zѿnh$_g!pB|t8E c0;o3.},_#sbWiW*4*5*u Qkmt] >bYhR ??q7l09Lf g> U=-F@;t Z\;Q-S'Py 7 }.g~=cQ f@_`cOW6r^=$T5Q"6tC}g>X8o ?r^'7 ;O2lį=i rZ ? FI;˘#[;K]J7L~90co ߦb! `m j=z?)!9*ɳ SeryɊ|vχq8)`p'9 3wr?:GTB0#Xtbtbx#/TOw¯Q_[`< :AufuMo:P0&=`Y$hRGWqr3`J Coj*5nW=Pw=+L4zbRmhN/VJ0)=if7M0n6cX QSpu)Z`)FBU;> _,lڥ! !@Ț7HpQ;R(sSWO &7M<-q^/KM$)\ԙ[;A4ި",7cRE;opH?EL#lhIgCOT)^Yɫ)@Mn."3?I)hoަq$Ǭpdv^jY&מBDmʆ>͝7 ǿ*~}7gc\k(̭E0LCUzZKBtw?P  Y v4qˠc??R1;3 Ct*l 2Mm/=lCQK1ؚ⾟V}MR?g]|ԓpP1١(]!T؝|HEPYaM'2Uu' *.,+1^z~~~,0Tzhek>75<Z'~qBi+  DAMU3c:~/ւ,/>(r+soХUCje bN!J2a?ӊ\>D'XD,4OO=DPc2y۟<&ϡs]\Qf~iO)>?7Z= r=_O*~?0]J݂$P9;iP RRi༯PA؀0GVL 4`gF@\oQh<b5=fTe]/]d;U PB#`G;Rw8.?? ~ @W ܍A`+@ǁ/%"M?OI l ~N^{eV7?uh䊊~( V5-M'xOq̅`2(_xeк_#ȌP{TZÖ^{|v~ߢo:֯ɢq#Z HCXU)=f@'}L bpAٌΏS38 ɛo׿lSg[vnC%Xj{Z ITM*c.qː2e kjv`ok*@ˬm_Lh[Hޙ/>fi!)7;e֒#P1h+yl̦;okvivVG4=7?7Oq 1;ׂ:c5eϵu BX8>`ߗ8Z(;_tus8_i>_@oGhxNh"Q:>UЁ44S:nf=U,>?kw^Yva `P|Bjhu/ Zo6 \vp?e 8QvVc\_ܭxoWmIzG)šeZ .T͐ #[BǏ'e{fKp1~Dx:2?GBQXKͤgJt٦u0{߀s_jhZ3mY[P7rU+z^vItf-FT4?$)E)ǜ~|MȻjD K&~wlgKAY8!E}" tо TCf3_Cj]e_XEq>}32ڹncT,{ך.z^LEdm7[0r)$D|f4:޼֪J8;z~?uGya 7Ɔ;~>%ϳ uGr]s>b@E ¬l 3s@k:\ED!N_9F S`i wBd&kM?L& RTSfybx-َ]8)z)c:QInZ78z%upW3>7T/zpq,: YJ˨۾NJE3AsdѤh"BD/uNxf`Ȱ.~pRxs G4WW#i-[W: ]%*uV|xھ.Jڕ>>Â:=y;T~Es\)-/0 nYԥ+"fnrEPK,(,t~@L0!,1Oh#UҌqE'[)N.Bh6uz+*@ mѲpc gA' 'I:0hRvgH?R Z8*ʧIJNGcaSs: 2ѕŐߜ~a[FFI/v4(M{:gy}T(k'*[4SϞ$EP&oǕ#ODů֤/_m`RuY tj2KKnՁ!M1)L6o]` aW>x]hrLldĊSVIa40K% #ٸI6KS'm7ormo uU]Ia4Y.b̏P Ǐ$p=~:=TuĂdAE"f'1bv*#3oyڹ?Y3~3,~x~*+.}v; c-Ekhxt` J* v.m*H8S3MN@(~GC}n]Ӿ/_5y}>A9 ~T;?vt8mWN3RZ5]s{~ ;ۿb@ͅ%i'bC^~ޫg?>E,Kj"5S"4l_<~ܴ]EW+IP>w7r*kI㫳w87*I*58^W &z߿< ]fbjM7s~-%-jN(-)/T̓oM{[uRMTX-~g\BJ20837__,F<|]%Q`@n ltr?2.>Z}ɟ[?/0d5'Wy-oЊiix9Ԧ`4mDss5y_sx ׿u++Sz8@egZw\ciۯKXP0VS7C/ —~ ~~o;/~2iJ@z:Y;Khrw2X~${n_bG|,-!'K)+)LMpʠ+8k0+4k2}Զ%,mA'U)8P:~i7ϿƋ=qA 9Lx?v$ÄК6|Pl'm$uQRq1T-dGV:r3#, O*L;}W?6_AS~^kE[sI'`?#DwWcqk*'EdLqj OXÉ,i W`ĦZzxq{2WJ߽~]C <3m. 54_4TgקOx]w, IUW=8{!Cg\'e;uMJv I /RAE`j¹B76miVe0.IBa/<-$~\±:o=NZ))'My8<7HmY[H\C3yC0NA*qo#F M4ؿ:r`8:i*mYY<5U2/0 |I >(ͿzF8f@Ep)734,Cu|]o`}I]Ďņlwv {l&w!gq,9odVØ_w!?@7) 3dV)ޅXz ?Hx?lI_5[*/T88Ls{/Kzehi(փf<;zZ~@싿?ˎ5-ظh7T]Tǐ^z'sݿ O4߅Xēu-<|ml7H1oYi{9X_6z7 q; bE 珿^ =蠉.SO߭|Zӿ>I]W}}MX7_ߥ述;l&,K$2. n:z?0b#q/p  &"ӏz%G+t,< zTHL׃W }8/2fewYq/fKt '.(|7 ^#P~.L _A, F_Z`"4w=#P51LY5 ۄ EZ$)=%YX `Kt>cwēs?QVKV]B+OAhpVp|šC/@%x =2ر3/? ،u]AT{':HoL~~ Q;Ffr8~*gnFjuXL {.B' 7L>@pB. Ȧ!34Oy&݄uHr+֫CS-1EIqwj_3ozh7]b N% /U܁S3_Ey_UTDBMŦt*O[p $YLӴN,Y4 eٗ$p)kлtZ`nv8mJKO|gwҋEDӜp&)*&rp:`B <|쨝ݿf0;,51Gnhs'؏ o {g FS_Ҡ.!*GO=*?>2ܬP -%H>k],/9O%m߀;_*o bW!x?51w^gʮ^kZ:8)XZW)4ߌ1~d*0zY4p4CDkUmqD2ޠ7۔56'$ _!sVJ@~"`݌'I(ߚXZםNcesMb|n `).-cRQ. _nO 0isH 9iN/U\hX(?*Gcݔ0zW0 U*梉:@ݚxֲW~m /]ݶoA "MJGnWƹo#G|7<K/c0.hgfIsY7N\ F>.N 8uHdiIK C!7TχEpj2>O|쯗.k_ߵ/ ܐ$uJzQN 8VYt~OBg[`w?='M$P8d w=L~erZcWŁzEvt4Ѓ3L'g:Z5h߿u~^+:U?iD<9_[6  )qd-+ЎA|&hI:3h~*ods?l (33&ǖLfĀrB =N:ՈwXgMSN5Hu=OM6gXdwu0yΧk#n76 qu rO 54iCd8<{[19>+(o 6+.{m~ȢY7j {64c ٲ8 I F/t=VڟWv:!  L\ͪ"~|c]'X4RسUUxކ_[O[sk>6_?\cMiTMӅGlݴ^-&bM*өNtwӿ-t:~{<|~N`n_w?RϻUIwħ_&w'(IA5kTo ^V'?}/4x:z4d%jDHVv?T'{7o7F1nPZHw|Rw|~Lz<47dk |Si\Fn |_}jZCER.%8D!q'H 2MRdU.d=wMq(4Bmd_t*?S&'|"ڝ~kz^O  ̽:F`[F#B7㾾5R:\:D<}szEo[*7 <uC;?{'Q?3n)G~oн |%6|XDl;*xz:2 |┚Y"d:7p4ƯERtOT}eeϕ7@W࿔^$@vto g3/Θ>Nϳ+umrMr7Sha'^Z0нCZprs׿xE`d(=366}SvӖ07qdRw6qҷS'*(HU55$uz;fV~-h y)+;$c alp]P=]gc@ЮZ9񯞳).oKQ{'P?k $4ݸ?gvfxkk4~5(L6Q ٛҊ?4ϓSbd*7++ubK(]8.ˆJu*\0Ql4?-2@_CQOAOŏˏla"ڿ7?W?O׷9}OboB;9P`}anJ*.[U8=N1 ~g>+lc1Mapj KY\T&ן˒%.]}rf7$Mseoעu\t4 ~L'b ni=Yע~XW*E-ʻhA#mꉄ~zx<$b#tQC\{w?E>?:Sx4*z҈]?mR׆V*Y2u%KnU.u:Ws**:P4yXo)7hT0#NoFMIa)t :퀿ǦĨ[%Rܴ!eKqA1 ?oK$*7Lkc p+ 3!t-x6w,ڱ)JMm0Wԏ_AS~ 8)@ m]6Xۀn}AzPCgF&?uO9v$}`-@H |>XO$vOqlКJ%c-Ь~@W\(oHFQ̟6 7mU>CXf3k;vo0GUΦ詠PjxKz0uUo*\Zug;U؄[tb1V۟gQͥnK~tҌhm߄H< ܢ8mW eb叔Qw;`rGI!Ѧo/mMKn~/ S1601zǏ >c0cfi@>0M hvߩ@*Hajі mǴ@S4fʴX_B+(G.uq3|(RY])<9-h$ ~$ ?e$h t &żq雒^ f} jʆt '\e~ (~L?) (|l|cçf}>ikoFi4-+.p* NƯ|e= <>}%P6ql*R1541TQTs' pCdf@m! H md5:⿔9گy~~x& ]?s~7/\QU`ܪw!em38dpMg ~7d͐&"s7[?~(^k0Zo2*>@ #.s|v}SK/&ֻo ? /ǿc7_4\X\mqlJH $ptB%$M"jL铍~'Q܈ucڨU}҃А2 \-5sT,X}"7<)[+3jNJݤy:ӳD Yn5uU6ȡ/`M! PL+o tNS}?Z*9.͛@ tB}6So^X\updǎ{'h1Mv*uu@ҰõchHT6=k'?W|{w,NFtvK~AMoj:oiVvPEΛ3q!LIbZſiɳbp󫨳6K_4^hb^_RvaTJBm}krnӵZ%B;c_6M0ќLn[[dnvxA%nZ;1,_W7@zN\bV;wdLk)`Ɵc )S Vfv0j*5~~ _ e؊Jh\Mʡ=)߫(>ZzJӠ׻MQM}y{OFkdfB;`< @ޅ`_0Jӄ;kg/ /4)-%zX662zq1_>~i̸Ko-C6/&*D37M^:Cp!gdpr[\oRƏxx*$?K, ;_|V|z5W|/_88 *v MYu8{t~'SBi`萨 %xWUp\d(y"ޜΚ#47E {L̘ Lhpa" 2ab!\_?2 $KU6=; WBj뀚9ÄM٢hjP׮J>W: GJqN-W?~#Ȅkb.$Ka.<1: ؗH[|)l؉j oS1EJELbySlMp}mnv=YA$[Ґ61ih1٤@rb E~~8(hx ӫ&yR>?CIHLT/Z8ؽM5MwP"Vd$3%&U*O S@&ؑ0B{U|B4SA xX r>T~w!B>^XoP-(Ak&;)&(,~)k'x-Ɯƭ/6[N3\9'A{ kVRb:ZuT~<f;sweEo æmM?QMsh+;}:J _:DO׮~DJyWT|3u!"Pby(dk\X}_˜'6ܴ}볢>%+4W]Frrgg??*HK"r~onO>̳1|/0~k.|/ tc2A[l@%Dy1 x@obS؅:[>$ ‚x_`ǏB'4096I/tw~PM!zeFt,x0A9/8MzDŽؿ/?_4 6{KqԼHЗ#DWn-`84pxϺ)߻8\.&u-h>~ƯJ5֤x,MwcN*0N NG+VXAYD;#뚿|k{{nt޲3ݹmqV{ubMXRp)t2|uCC,z*|e =V7pݏna*,ߟ<%r?m=O kC7]`r~S>GS&ZU^tг Qhh}zNOu/Y R_Ql:d X@"599*i"m~Jq(IKv\NBHO7ZH H;G}X濣{k4_?R˓QYTϟAW9_l9l7̝ەsA߆@' E?si>Gś1;kn,Ew+4LcPh.ql_M2=*rߕS򜣃EK $dVX))ߪa^b蠏w)suPa1&w\AC@kswʺ%M{XԈ9@?~aՀ]ͣ?_s>ůd63sVA-tЧw?":TxO$M5ߧE&x|wX C6V`o.Ezzq2Mt l+|>0FựouܠI﹊j*j3*gJMuY~*Nvb)w9E=%M|˿4NZkS3) W!wyWu~hƈ2,e2Aln? 4q/d㝰'B?OMu Ų/ 0j20.߲gm!) nhzh5+[IUCJy_$PיV!=q ]o#wĿ|P#IywMLiO|M9qqoAEߔY@ t6|D E}M1zx=,ep\JgqxrwlZn[qׅ%_x+J0 X{ FQss)F, !s"bP]{ .18)`rUG r&&@3q_XzJt_zTr["ִ"W&1HRg"?.&LMiPV~>檮*nsa.'j<3J}Sz0 k&Zcip: 4:RqVOB񩸻ͤk4$5X<(Sjh!Dss~i֊ԪSiI' ?vhisòHd_HܾԺ ? Q`]GofxMږ 4uaAwo: 'N R34@40_]˼;(Svn _&_>lJNR'4?MϺ$u,]b[L W_C ucEYtb4`e}%GDճ3@ΡŻgwiϗWo>+G8M7Rޖ{4 \ъ4B6!ghRyl/dyN/M{8F.zfc,<1tѷP?_? uBgq//sv ]jBIy{xl }W|2?;4 Ar 8h_[#?6X/L]ss<1{JqmYSr iȍM#77`V,?hzOeB{rƁum'j܄_cSG=z1F >ßi+>6 Wo{Go9fpbZFFNK/76ؼqںKxG j ٝv^ܦ '&Oαx^w?)>!_Y|{k7oÛ'%A7QL)9߅ظP_T_ O#5>Ȧ9}RS4i(@wE"Yg@Jk~?sucA-3 L{U$D Sek):%_/iCY=0 <)5&~eNat:=>skȑ뱻&ǩPFEMy%cٻب Z4uI Ӱ٤b:Hz%tW;ӄw59Py܊VK )F2L]݀ 铂I_: Nۗ9/'kv@gߓpb5 >xVt1Z>-Q vɶ\s6?i3}_/{i$m[Ißi^wZ}ItE 'Er]{Ə81 #wD?&G{]o/Y.QZSQ[+(WY^ uxݷ=cǗГ5o6PܚdI~Z5\ th DCJ6>BdtfN&OmR)^?ٻsIi)jtBd^?AB7OO'G_>?Eo08Ői'DS Xu2_uQdiaGh:xo>.Pwod_&Mm**{mb1Ҟ =e Aӄk8"C˟p#;xm:@d'_$uN ==ϓO.Yp4,*aKbiE/#ۏݙ/dG\ t=.x1&x6fC7N !Ry|VE"W@vLk{_c08캘SܥRI;^+'zYi&9KԺ6P( O)h~E_s_>\EXk6uX?s#Q)4]NqᚤOl<4v\2UWnP v!?MtLv \ϟlH^kR -(?ۭE~h{ƄC ɸ[d5pbSʉ9{* fefϩW7_j"2?OۛD|`ߡ@_:vbUEZ菥8i>5wĸĕ$G L4tj/_`?}ctx헪[P2mz\rW _2fX 1̴)C`8glN'R54LS$ knqzq6ʜLŝd+~La'47,]|0ӱPlP3 g27 ?~uƒ1%顫;N7UeA.L9I[-_ Uҳ~(j1{`}\r/zSZ1'Yjk,zՒ bxF 4im:)R:u/*?~_:yٟ^לBCj`ȥup/K#}?6ख़QL =>zP=zi74cmfrmM "J:%ϋ=׺D~k>1V,6Zo;ؼA"z`7hWx_e¢T' `1!9m5i֣)gt˼?Ab0ߖI,y΁2c {+[yW~t. F?堣Ɓߠ8&?Ш |PeUG>~L-1\Z/\StGϦsk2؝o@ռkqQ@!dJ1s>dLiLy>iխZ>x;T4%X"LpofQubpA)27d{֞Eŵ*|1$E  R.5B  n_KBپ) wosg1RӳXaB]}柹^}{VAQ*Շxj9igXxrPE; L~3?CY:u%I,Fi'a&9rbpa#Sn`yuf,tIۢwZL|j5J  IiƊU_ډ2N _[הYP}%'d7m/f_ >H IK-DwO ?(]oșlUGoKU&1~D--x Cw)G8 -gqvt?BI(:Aum`ѻ0^Ԡh)פq2vh` y@B ~.l Jı_65Utav&LnZ"if>S0`7g4g nw (h%[vS؆vr?f|o~>~U_Xſ^ _3LQZNv=N\(A ҊP\+א94r:>>\!W85QH #4ye+>ȞIj$M>?GZ kmۣ//kE 7 jXI; Ї1Yf>98gL_G\|?*c-t|5|0aiæj[s:5ꊞ}|Oai*ic5"(霔XQ+PAY:kUn Ώ!+`?5_'zh'D&%MN S$Xo`2ەFQr ɟ'"v ¨ BĮN|};Hvg{AHPk?e`Sr =اз=m>}|ehgI"6o~yW zkY9cgw:OlQkv)/ߗp{~Jez+46xcP_TJ.x?W{<{?3L'H w7"^004aco@XG^sa۳oS,>~O:n#I_ϸ[7]`~3z_J@ \{֞L ~)R.[UG;ɓ}\KY 8ǿȁ6oΟ^_#w:o*& E/xl[|Nah_\;|o? }sgadG2hu 2ZA=AJ40OW1Jj@~ձpďب;՛OcsxZ?e}oA~X- ŇʋPmPO.fGlAעu.ٚ Ț/VS_ ^fE/'‚D;k:)!6v&i\Cu1(։ȃF"I?l,JZx%E`QeO]V1~UG'Qx#nuKA-E0hJxtZ8EGةS]FҞ۱QiDݷS EejMu`,E}?ԑQR:.qUԆN褣w'7,| 9b:h]ʥSyQV+:m6oVI:/xtFG3YZ/uWF= Sߝ*;4Vl`unʪ+?^l_e-'7'/0&."elj\7! o&\;O_M:C@UսS?1 y5B+?U:Y 7cwy^ H,x ٤WMCq%Ϛ ý~q =ۯ`K6pIցe;=@Dz[e{@{sC׫H:OOki^DZza[R3] H>xyr>|hM%/Y5-qE}ᆽmUzx~ղkؿˀܻKusp[G?K'PqxV0mxpC$ŏcw> B̓6R9pPC3Y㢬'tj!q$ b*yNS [By};~ch:2u*EOQ2QC`7NV4f mߕp1EsH^)|#ux?3V0Iq݆Y.;_/o_٫mg&_]|3t"ن' ch?9@nF'G>'q)#l4+PDQ ;۷dY~|X(h|'b?g:v#(4T$ŜĿkqby ?:'Vv L=gvx7~i/qTh(eh?pPifV׻ *etp@uMJ㢀 mu >Ln7-a&~\4¤|?tNtVkzSW6m&ZnbΝ'Oئycw ;vDڼMv@~_Ф퀑~~Vry70Ԗ|-QTpO][ޫ =7gm:6~fZ`Ct?LGSfyocn:1lQG&iۉW;d|iEY.}; >pX_W`?!wo:[,u8|v&9KǑ_m ّ?q<{ʞ;j׎o7 NY!5"=܏БJPv$b;s/,ٳó0:V~$ںu¥-PJ\3CM6V8~+϶~zFOϿ{P g_'on&.g>~}>Dtj 6&{¾ _kV4S;+7GfZdG^/ߥv~L=s=@>$w?26:>vgdG76~T9a7L2roW q}gI=}=> ?Z9yc LƂ"NߵRX+ZY43>~+ ?6h8nA4W_ᗼ.ܯHsF~=}_(aAaEg25GS@_c8[) :W:A 5dﱟ#GvLd,b)DG}4/3K3촃'6'vLWP'M+xܺZM v uȂt&"q СӿwEI)|F=xfONh2<߇㰓L*LYM-++Yv݇ ^ $ I*̓BXc<ƌw,&aЧN_}`o>?":hS#_X[f+'[jG;?~8Z늇TatA=6EN4kX=С@wF9o[=qeF/"VCƘlIEy#ҴLb|i&WрM w`u)w+Ni"'4Ñ[NfLt}?~;S@;ڜ~938 >pd LJn{: u~m5H?[ $T{ vSw'뛂HMu(ן]]'񔏻@z9) `PLPy~H:$(VA؝(Xf)@fAM01ߧv׭W SyVgwR`P,)iѣjEZ% D PS:;Nѽg6O`{5e6v@ΐ9k̳맩b=XZ_ŏ;OAd NAO49Kb{9㖧,$ř?1GE0//30"߱/&C G.6^?c&?*=t5U?cL󬸆OUǏPBhAx1C#0lf{(  ~_vJ a&ϪiU+m3|h?dlM'5Y(5GǠ {:[$Sggz4t~r@O56 v=iގk@a ^7_ D޿uu_N^ n {;?}M_uKH]jan^S~_#ךή~v+>,̘%~Pk+x?6y:;o>< ZSD87Oot9`QC4#H~j.wn+#OQcҟkt76Y1 3Wÿ;_]/8_X/RU]nto.8=S/6f/O֫kGZPcۯL#w(-=W࢝aP8\̤=>ͧC)ix"47cŔ#MS%b` "`gRO6t?؄#_KТO8H|@z,qS?{~Oo_S՞i O|2;׋\ǢQ@/:Ns>Qxt:~tzBW}cm3o;k.ȧk9hk>Mk"xoߎqGoX[,&XY%Ӄh+8ewa\r ԗױ[/6`p?|&٥0‚<~w ʌ? 1nj٧ ~d Oq|~`+J+>){ ?ykc f z uO>DF0RSCRpg N<ϔQ,_hw8 )肝u2g~cxV*eS4?c_O `+ 4كj/BoS$t/0 2zgѴL'tPeSUP`0u}XzSm[EiyGݼ* ڕNz%X Sx&/_&z%-i?hK XlnYIIHacOV60F">>QA: =u['BnX5s]- }GolSuOz ENCW˭nB$JZ1>S^~[ҥ<~ Ŵ~~XQPޭS~.3wE/1XffB'^imS a{{70e62U/BI OztW#jE=ٌ< rWds@Y xa?j?H߀ jDʿ>){_2KxGĖe* Zw~O~i|(E?Q$]3o3Hn}Oz)EM/Y6.WƇwU?ƿʴ ߇g+;^[)4yp!wy'MClj/$<:''f4ɕPQK0IC -@wYuI,ӟbs"[I bǣ4]7P4\B&GXUMBƮL"?i3Xr:Yw?RBo֢^szu#@>N&Yfu?kєK$[%% 53¢Ir4:eCT5'Grw.Zx?Լx?m,?Qٽi2 m}f[)}p7N0׍Ni|&;PHB(ijIVɼU-&0D@kB3=U,2t;ؗ&LJd)9A=m&s ܀B ػSHȝ3%8Y~OjShB-ýD !'h@?3l 1z0"6B)FZίNkg.қUjZbcɭ"25T@|ܧqc?4)5jD~ ?SuQ`JԛX Z]kevF\ +ztq;M2%_>o3HWyHO{n z@=)B+Fئ]#38{zO+dt n4˨A&6S HlI1[lB pVd?_5]#hovMt8y{tEni&|#[wzOBYK:krNޚnI (ԧ%ӊ9ֿik@m=A A+r mMII-eJ_EgRhRA#(.hxYz/6? [=)ڥ%Y\h`mXl)aT?D =ʜ|džM%l^oPŏ%4֟7@lXKD/gt.݂?̽ ,N0Vu~nk4[fT:&&s)n>Bp7pXT#i'X:)k<KjZsnǎn*)c7X!c{0 .`FG~@a/|0Ƅ=a떲;[_Kg(60Gj~QU+rҏDiPZ#Dp4[ Vm̙k1`֚:FM`[PdI~nٞ#c%2Avs>$t.L4P(~F__zvaAm`X~A7sH:lp Hφ'7{ ݹp]. ~w 2!jQ'M3WF]F5u^C~4T`NςrES}U~E_=nRN4l ׯtB;~#ZT ؟|>_r kB \~_M/vsĝY8дLE)zSi{vZ:=?/<ϒV`M75;tD 4O~=y8^3\"uG]bIq$_G&]&;2Kqz5~Zngpe'fl`n`g~x<5B!O^^`7Nċ=ɧeX<5YR]ɦo%J $@SAj}v>4Z| M7*.4&u}93¯d,^E_(pEMٿkJOq~ZJĆNˬm1rQrI@LI @+N[H Og"qt{p1E-OkZ?607,n;P㞚oIip梶mbNYS/NAG?KWs@*}tm$ 5lu:`\;>a2x&.c޼7[Џ ;-Rx/5?ďqM&~ Wi֕?o_t*V ui#X+bI_Ċݸ`r@tc(dhwxS3O]`6/7{?8c b ; !ď?ch~o`oM`}~g"l: 8Qn/drD+}{ֿ<~SqQdQWP):~xj, fZo0TxŇ>~0hc9lQKр4짎r,ovR[HO5aڈIjt`6+S($SX΁ 4/r'gFY(@奅h߿U\MiWl7Ψخ ptƘ0⚐&ӉN܄Ya(9WI@NrܘNt {͞56 ߡ ;W|mUG͢D?N(ƣĿ~=_)IH=otзek/ٿ N|gXH_t= cstmnvp)LS O7nƳ6 UVE'W2 ;h0NVկt~~5@* ʰ+Zᬅk5l 8Řrd A !/؛IWD՞N (Md}Op? 妁MŽMW78\~O)?\B*7 h5y#)dh~^_+4{JF l42J]BKp_gѱ>p aw~V(zHftPܨΏuw˂:{OZ^ANp40jUCﴲ$^TYWQ8ΧH<7 >2LAN4:M2/Q1}#?u頩 Њd@ݬ@KnU1AD]H [5r4Pdp/6ZzF m ]_.@2mOL-CEmE:h U1zۃ60'ŧ<=tliUmmivͩ˖M H_[\4E{M00ހP:h>g%o~=N ޭ_n\Pƃ`ltзWE8z+!f&[pz?h[}`f()PE5Q`͝\2>2lV'8_B? n2# EIc{rL2(eB Ϙ5Aߗf?e:3ĕ[{j/~ C{{DY?V,>߇ljK-a< Ow. ٿL2OK>,L~&FP֧ʱϘDzB`(vcq+GƏvrɈF[ *JI͏>ᯈU$M KAHb>M~mA~߇y.! btN>?ZM-s*a@?ƒ!YȢ&fgCs/AhƷ9HrZf1X8R:]AFڠrƼu{we;w?R뼃x_ElZM&b/ 'DLC;"zv,NFjuviF:`a~}SA/Pzu JEr}xvn'yO5 ^T_Awt5ot TE%7#j 8*ΓS 蔐kW .S|!A88XŎQܱ]2MliS;ᓃJ:N^L<*нS( UvbscTQ{ '(-4XpP;Su!plv; SA"Y =d5eL36L>&7r LHFg NKC̿L¯nCajgA2w`Ɣ`I =пʻw0mg67;IWƮmٿC?1AKho!\ 6:jJiJM -Gz?%%jMxV2Zy<8Kr:tʲi%{uYú?g~c;h l6`28颱4kRd]YX4iPxNӊ7O@/Ǖ6ъ*1W7ޑ8.qYJ_!C(38i׎ '(*}H\g:X~c KHɺʩfQ ~R7<#yڱhhix_ogeGJBO879~,N,Vk6u!=8Oz8@_f) *ď"k@y!?^ƏȒE_*~ zaI {8 Us*7 յ)~t?h/G__j&ojׁNuNyM0^$ cu~ƛ___pu_.S\dJUal+OsD2] ]@uM%06DIu ^%{]H =n u=`>]. dO޿;,72UPf`ڼtuwS|L'MtqkSh1Aj &:C 9rECtlI7Q6_ UҘ8}N┏~=F&e{m߀:L7{Mz NmwP6Sq/AD]D5_u7|p:s۝GoRL-`4bm4Lfbx] U~2)CRdkG 3۸{휦u ߦ#hZzm)s83 &D7iEZׁ䎳7S#m'ҤaѸyv0ӇǏ :|߮ y! nfD`A/t`]'fn O+B_5[5g-7珖ϟ7SPP]_zZ`9~}?$޿Ԅ+ޖŢLl&@P|HEٿ>`1~ &@Aޅo.٘}m 괮0&s8ѱǔI`:ȟiۿWx . d_3G?vsvE,CoyָWրw=~ن u΀h'c8<&V huGj1t{<rqn68sO7:`2iyx7t4o pHj>?\ݽA9☛F Gϰyn['i"ALM&~a?G-2k>0u`:2D5Db@}B | I!j)#(ted {|HNѿE)UIbS V ֛rL*P%B!r&A^`oO3 4wMAPWg8VOq=_3PW=0)SX뾥r'`_ݚ3z !QcMoCsxi޿Bs4DiIu<Z /4郆蔇Ӄ~ (]<)Rg Xh??րcsu]+^YD 4Vu"ѹ5yj)\/5TUo.'&xNz&0A 0<;/.#ڏ{*z8M?)HMOqbp@NgM"vy7ki2_o YtpAJ';0w=qaz#GtՏbpglSxtQ;b,@5o4q*KA3ڴ= ė0hn:u85TU'x:r ($ ŤA'rS+_. 0u4Oj-n=:7 Rwz:l6eï .bp$y&h[6\ 5Wkx[& ZnziKg.[i8 )`F^Ұ NMQ>:=q߻>_m5%E|?C&:7o0^DZI9@pOTpo-` FdˀhhI,Gjֿ$WL\-lkŊl8V/|wUpw06Go?y`蟕w~?T r59cS l6hAG j1oc`O ":U^` Qp2EH47?.~|"*g:PE9*8^zW kAW5aL|HPդQXdsl.k]?4Ogy=/>XlR?eAϥH]܌ |'ɒ?|WjQ3X$0 p~}@1825P?szvJmW8yREC#kIh{׿q҄QAkЩx@iO+Chc@)G+>ݯ)!F۩yF Ut.y{,YrX`UWܥϻ4'1TٙN GfT/iGz$ހY.Ib*kV9 N‘j24GDP\Fq"M;zlt=tt *VrDGJf"dSX8͌)WSE\ c 7 _KYMt584QN S^lTזr1 S鶜_5x&$>4?s# __n@i>aȻG ?e,33A:>Oe&HhUXq ?7lL2 Wo ૉpOҍmjEO1>~߀.v E:UΧzؐ=ǂK2iocx0g`O\4*Y'y`KH!`8(4(\)& >ijݗIbk}[}x|{`.{WeD*(KٲG6p:B5K gg$.#085sbygtYA\9PViSsm= KWs=[߆;]e<ǜ)nxU2f*#;zdb}4DbF|0Q4N'Rߩ1ڿ#we e0sk7Z̈́GaŨI9U>U`>\Iݝ<+KGP.]*rՉ& @FnHk9,(G?m'{LrHζx2ZsBխP/}* s{/%l@Od_mw  KStO>ٳT%~i(5޳G&$oN^k;_a1xh #Ur` M_u+Qm#ǻCv1V |'~?1*`XSzZ._ӊ+ _ک}} ~^H`RRoگ;ۻ]r YO/7Ɨ\yhC>4\$Ac8i#?fx<9,ԥ:;忼3@?#)_͹ݩhUM~A8Prq{?Yߧjw](4;Q|RKK*K tArPl״Qd_v ^@fd4(`hI8y||E|wPa(zA^ׯ 'Bf W«?Bm#Vu4 e|44_J >I|65U2AXK߉;ʩXv<}o^oLPWw,r U*EDR_/gnDM? 7V&=JG_?FmA2Jәx]&K.{8vf{?!/덹A'!Uk.*`BHW2AI0 1u H>S W'.ȾcWp^ݻVv%z"M|lu5cW|<{?[)$S~m\;5#֥k RN#t4xlK$::{ ÑD,eKB@w/5e.z<5fj)X4<CN%DMO*'o 1mfc+7 )>[|{SEUU@ݤ#oTnAd{~l_@xy.v7ULMocV\P 5xg\{[ wo@}mqNw?P HpFx+h[>*"~8Ol|߁7wu+ַ-8Mb6={WKE1gxہ'z1_'lj~T_,ٯwo~@aH/>Ao0 \_QzY. Ώz(6mffPѯ%`~ȳ3/P]es'߀A_41vNa2zk}jfv,J&uG8Ͱ\ZX1')QxId׫_GZ_|XY#f 5~YX9Q8AzxW7>O0̨#NPKaY|S:Lt_؀_Ɖam x4K!wMHi3։Ȓ9[>=%z sA=<Ѩ-P-4pSG |!ph.~8pөjNiӿd/go=ս;6``?iR#OM ccNy3@߿tAӿ_`c~+sz/8Aީess"tق| ź12prOakw; +B [E^4p 9~EH;د8/7xp~*y"A,p&OQ픾 #b0挺L^W_E# ƒoOj|/\2&[@eiь_8o]GӸBҿN0@0p8\ۨS}.`rdiҲu( P ލGEx]0s0G?.]?@(f ڿyB#ċkMpIUGeKr}p$_rV+\@HQ$KaAP) S@j:7TVBYGjN ќt_2wWbVi4[n#!XvSDWWz$+xw*E  \ypkZFPѪaNFj=#HmᰝzKS#$ BB퀰dπ_)~GuZ6*9AItI?V_xdD)[O7Vľxd}V!tW$۬ߑ1?:K #] /Dі~VwL4er"oXuqo?[,ٗՅ$0W') s&sf( jn' c-3Dt{\P=|#_w{c#>aSD7R?jocp(*a0?oOӗ=@&S!wRrX2fePp E҂^OwgY@; 8~L6=95\ lG^g e=]X&8kcdj4Y?f:MF=nF5s閬$Qr5S>{|/o ,.;lQS=@]Qb1!_&]$C#P E՛iF @px|22U("[.꼎6{bTnoiѼP2ounm"wz>dN޽~k-QiW_8Y8/i.#eD)n7O4VHpDNT}>+r?WN:Y!"g=GcӤu%5s'عS)I~ 4|>"EW]XM5PakyP!ɡ1}Ha}Vwz.:̷&}- ?K/y(y۶E!Ph7}OϿy7 8My?<KyQƭ* I0r7^AV|68hc.h%qwi8ϖy}$X\Npj}*ImlERxN x U %e֪rWšk[4 Ѳ;:y&LKKf< o 3Е%$hK.7K< %!Q䕜MV7ʖ k Q,h?Kp*@Ɖy\ag^YgznV2zeÏv@;*¤J>ӦpjUpUG=ld?#OqlxϾ̓K{'prIi"(2BB'.:1(tRǫ[J؏$ƽ%M_^}}&;k^E#~/RݮqsiZғ%K{A: u_ujQ ~P;p-]éQXܟ1)&K7ݯP2JaA)\ij$U2<|c'~`D(sѺ:гoǝboNq'hym IA"/#P7#dK6[?o$8LlzP::tG/qg"oysq;kb1k'k>wـ֤0R^Qiܹ?HdL?_<?3ΏOdlX9$bqbߩ)~RvW֠X6_KN?ewR}Fx=N~lT0<{6/܉AFnW b47H:*EտE&sl!3엓B1esd`~+Ju35[ )R'h5fFܑi0kXS_w^S/( '!Rir 4Q3>埤4J+z~ҹ(`_?펕aPꔿ } gԿ|$tA!E9U]ݲ_&l,h ^8OóϯDw^|揌ڼO.]K~5#kMu^OÏH25T5C|<%ao3)};TZqtAb6`2aMj_X?>^-hJ) h"T>K!/%ף:ps)DŽqM:ZDWuFW@E{^k=L5!+AᎃxFf}0;u=A%8P$pٯa "< Hkcb@-Wz>2[^s3s;c0|~e >eu9龑#rgǟ!8 D 'qQYJ7iO)s}c]Qw 0wuyVBrk*MԈol{Gr(>Zbt]$|rz"l2"~?!cߢzFKQdl-w'_8\Y'X igY.7*4p_GIűs _ .270 Jir+N UiK/ypDə=>vTTܤ'K^J?7kuj%9ŐTBh 1xa4*(3B _%- ?~?zC搾{~9߫(6RW ݐuw ^R8v@As_<7v~#`5;Uss7z2d ]6OM+N!0{؆8`'8O&)=]yr"u@;^j41 C  sS~C޺4QCRAcDe eMN1%%ruLք=kR*>r=7z_OӿiQw5kzN욭yZuII3)v8 n>XoBq?<9jF9u}4]Ny]1A"z xV!>f8Oa `8u- M&8R0I~ЫghPu<~?4YE x]_[ᡭL|e)N|32P`B5V"]^&~^UMpБɏGN)`89N6MWNu2US& uKӊk벩A╨S`ՒYK(W z5.{F] Ϫ U|/XpY?=!Z:vb8!:} hgR] x jg-#O +8h7轖_ 3Ӝ"b>96 /v#VJ;w.(v̫-GM!d @ KĄ4 hvm9 *hX+ l>ka ) L\ lGgѿ½l0Adǧr<SHIa^Cr}[@"$~kIyCFAWKo~EZOʕMM\{ړaI,*'s4<%L\}%.M1MQ(lbs:SđL4o{_fNxVq20f|~xi S@E#{2u R9I}D^7DI hZbI?a5MW0<1Znw drS+ѮFUMLF\,C*s3:^Ma!Y8gD˖JES0M@zyui}z ^ l8y 휧RWÄEd  oRNYz3, gƨ|\?թ!SMyAQ n^ps*o`<٭')./8hJb$(Q4^"N\8</1' ECco֏N9@b\ϋ^An?%ƉI?@rS}LuZ* ~8 ZN?z{XvrD6.O7 .C3f&"@ӿ./pɼ\F<.>~2%AOomj/*>:j|Hy9~w!#5ZPTށka˳Mt;X}/O\YU4y_39]_Mr8?~Y@_w~w>Ottce_|q>:t_B a&lQ7՗ifSQ1o{r_c^J珼0meV CGz̬6x9~FN_O\"MGEϏ=i~q4'y!| 7w:Q>k";ܯgA}:^5nRkaXdUF0T5Iz]Xv[0h:@ku~hܬ^1CY @V!O׸P;7gv:9zACrgIVD4wpIn5i$כsMG XrR^A(f}{d8j}3&oD_(A k'x'+4FBeK~;ΊhxVs}/i^q*uIOGO"<. pw'G*\|q:&hCv[r1d=+t炯Nc+0SJ]uAz١kt-tr򗖓LdcuIDtlni1Fwb"ScDz_lAruاs!{v𮉚I|Biy, g2S5i8Me6wRo1p_P]ﵑ7TJ#+DNE/x$sZ-uLP[E մL:@ 5/yY|A] )a[?u hL9u]x/׳}l/d@.hhggoYQ!1mn#p^tA\Iq~| <|8[vbyڟ:#r=[&N.K'D7֬OGAS,(G ^Lm~7%G ΓS>!j^7(pJJMsDua:&.?==\? hLZe QҞ$딏o ?_yǐûkfrcY7rղt sNE?աʧxM4?$ǀj+Da/hZNd VmS͐E9s Ϧb"zv\r0t-4 q PG Xq6n "#kA5L@sGG@ɚAa— W`N0 v냸*5,~ [mߐGq4 Ow4 v\^@Nȫee1)o,w[]W?~zm&| "au'0= R7ȊK q߃GNe!|v_TJ\" P!qy$.L"4A@+qߴ} u̪\wۧ`E% tZ\3]RM#m82_KJҋ<@G> ō~Wx?5}쿎LrN1`]_ 4McQ5F Gjq:>xxwˑ/|n#_Q"kIXh La]b0s[ l4xAC"]`h'ӈ;q hGqwubSH96y/ߍ~L,FE ME6Urf5w @8@o|_{ ބV|_[2N\<ܓc&lN FZ gWf uo{ۓa/gv~ĠNXgt)&uW-bp/5 ys+QO Ad^,VvLJ{XY?BAW#eVX{Iڼ 3!DqU R .k f")_,jR6L{3p"6v#Ep_E7,f [lR945=a+!G6yM0pS&`W/pRQbV?v_w`Q&CF&a&L_[st|I˰>w={~ȤyŨU;AzboeyՉ#ݛd ͔-ķmО | lwİ}! ӌ˦9w;hOOܥt-fSmG,N|G HzL4@۝P eO䯘S QmU3C ѿdsNPwX`mFVóF@A _tH^KÅWtI,&{/O:h+Dc 6Sf60 tT/22g z,e?m}/'wW&nZ̫K:+7Ï ݵ{g074{]bDL\+_q?J ?ϳ/!z=.~/>}QH?x. DV0  ߡ'/>'د } /gkUq>D 7 Tl&N=WAǟ|LC',:}S% S0|7IN"U yW̃} b*Ol(NT\`b"W} z ,C/hFl0 - Lqŏ`>+twDGQG;m0A珚Zp wc:(JuҌI _ :ʟ;ڟOCdjX_^I<N3-,B*cT-H#I+ڕGgptZOc.k i}N~LG0Phy|JZy=#a?{x|{_EGc|9!zU `g99>|clFgd%oo mL(͘r{Z ITM*cS`]⺧!lÚn/ <' m Pg*ݩODynϯ!,+Ҕ<7HNyۍ]Hl0ڎ)Yny~dfMEȿz?$[y:|~=ϳ_؃):5jߨ.m_ ;~x't's񲿋}yWP!1͍ ohCt n6#/w gL+@i-O{KU$7,rG_?m{R/@N?aQ_ t~ǯ/Rfc5nf te|Oډk\(3]\^F/?K1\w蘫^4եMu<8~)Ӽ#?OQ@cWh;7hyۮAp[i(FsaJZhм% :YڏG_A4hKD"吝&"0_ozՊaR0u>8A+`95tY'ݷp*Uq/wCxyiX?a ;S3/ങ)m:f|[BnOW_I ũϙݡZ|Ou5=cp̽>@ X G:x=KDXy~9f ,Alhjdxu]Nڹ GA d8Ͽ$Ǿ q7iѴ4U\cx55u"?.AN`^~w3ThK Kl߬ 6 9FW(vL/uiF86 H}5Bٿ129NΩ]u]_Y hrei}AW7_F<6# G<*"hւ| ns8v .lI8 vJ"-s31% &70 ω0pg-Y~p_&޿,a]zLq m~551_0ӿ0/VNmn3i:KߙuY$f.!SlwZR2t(ӄ#d L4迹'76`3M. Ou'bMOV S%h sG η[$MXlF|6گ <3Mwft٢w;ݚ %<4qKMu,_ޓ/1]ad-t3v߫ #x^ZE==*7$< \AW,"V]@dZ:oR~J{닿g^sn%foU33G`0z7]%l # Bpr0_,23߁Jo~' XMɒ GoOϳ z?(m٨^I$Hh2糡b_~שBcFmF~Fv~#hy e󤮢@SV/#F,@!UgH_2#o 'sWs!5yJ)~>䏞/0 <>w8s|1d>>U%tܺ,Q^2eI00+\BP:0@#`-9ٜRfzTGG$YpC&2w/aI$|u.Ѕ \(Cz7A{?r%$4Zk,RΉ+) qMbq) #'v: !t' Ojxh.kД(϶4{+'PVTu}F1x[`Nf5QUz uEI0P8[N!4Y"/tn0O;ⅼ ^*XU{a4XQ^껪4q3gި$jsCHn$oCfzR?lFqj*B's k߬4Ovnj4FoH5xL0 Ev+CL~_F qr&'"!^0q"n1hWѱ_Иo>kLZ'g*8/:,FZ}e7A/ ﭚeuS44etnIG,"{SWh-+7ȾdJFUe" ,@q/DU r/x-?vՇG>zD?{?Bs6/#$TOtӂ\ɞ!~;P<Lt`5c);Yo @M"(d~/[ol:#-q͝jYۡre4}]?vs̗d$TMJsWvXƤՕ,?6_ӿ1H+1ƎcR WUP' 2sԿ~š`:|C?z#M+iT._,w#!Lc)'WiPyDu{s˳_ sD[?.MN~/'D62wF8ǃ uǓj~?>?~T:ՆQAͥJQ6d3βXvr  7%؋-SN'ҐPf278hB/y ^2A /{4' SD]\D%A=_!DhxXx~o&]5Fܽ!2x}urk32DBIwTm&c}B=wkVO5_LNʲ| XGߣ5įQ ZO ~*wdzz~PɟX{"xxg0;1vNq 7xO@KpqVF ;O\MkԽ*΍ٔ(tVڐkS6P2lxh=Ǎ.AS-NP5}iܧ'JND/&B`u ?BXA6*gF7zԂ1ٸQ:A^+ ~ _~h2J-T7<ܤ(gU8~F}y~]4֐B$qAXP/t2:~x&nޑ_ELc߀"$4[ɇ|y&>$]k@E|}cPg~4,jUoпCv<[@{#} C+:Ej @n cPj ]C'߇K(U9N/buL ?JX }.~N czS>ZNqm> kF1.ZHgU9)os վ֚dEp4IխPx=͚M <!}ne}XWP4O c 1B4SNUqߡ^c?.ƴNpGXP 0~e+2&',䲮R=aVذX۳b+Jip~C0l,-)`p#캥qg-CϾ~X*Hē<4R;(_8qM+Hy|g\x9w~/DOi=[EOM&=1YIVQK0gf>'(Ęg<;wǀbƺ$>#XR'r@GSb&?z|]L 7!IGJ~_/%$\ҿ.C0Kށ.V9 |%pjyP _Iڻ/t ʯ{?Yyo|OrN7Sh(˹3 lyT!.GQ8Y9=IJ$o O26o$~vt]"s;1OzppP^"_5cpwwe(h-T y~'@:j_":/MeJy P]v`:1/$?ROpڣ73};gIHƔZ |M|"@h{B/&g/0W[Tr=5Np> L߿/qP_4p._)=|Q<]޵4BTopiДUeO/'㢵]ݬj,kCPo}[U)_L=q<)`"$! ܸ47@S6л_H]r3^DidwŸLq)|)xb?rnE`5SO'Cdpۏ4p?ĻFCP w߉OK.gGT8I׼O_e22Nof_~$& ɿiu_pݚf#U@Ħ5_ rzF$0cd(}W}߹?{kO?ʜ/+ ]tήi'uhT\<:tw|/&,Yn6%>Ҩ}+@DA;&p+?Mo}0n'oh[Ρp3s`GLbUtG.i k~%c n,ő+͖S92ln&s)c bR"Ict*vSHW˜2@qznK~_ 'o6AO~] (tX "3 vIJ, Q=9D*!u`S9<uN߮i>'f8B±#43>_^SN]9⷏ǰgA\υg_E&¨%9Rwݭ ũlK͌g8^Sг<΅-8!a3;\μcG:ܚA,n.k;XZInMbP`_u^J- ߗ)] ޚ#mw:n7)ܶv{F0 WY;_h_H޹/YR/NI?^5Qw/)?^nRm745׊D>+<("_~N:~rp3TRB O)Z{V62j& ݏzH!dNG*A"(O8]n9Q:pc62z.}'49韽.PWS98dp:i}%\(HgkN,̃oz^'!&}K!80qɾel'_<_-M*(DhPQ\ܹ^uecu^?>W1D,D*>:(!._E{~W"QrMW3 d :>XEaƹlJTĿB)YcVxtN_*k%GqJli}ATQe3v/TDݿ)~i..=_!y0K~4\O WW?tYP#BnzP׊6IaBI=ȟayF/qr=7i~N#QE&0|PParLC~%wZ*F5WF_گ>(dLS^?+op5EPJ.Zj[t$Ch/Ž|l21]zJj`_G6_z{1z;}h'U]) gӽ~/DcۢƀċsMI& 4S& =wI-?9hC㿠$u7 ")<wGz(d5;rr:+>~D I4^W=5=8 \=uY'HhJKOSMY.$ޅ|~uG*U@9[5e/K2!np9jK2ߵ| QTMǟOw'x\pV.`F>6K/U-?v@0q Ug, b@!=k:gQ8,4?f@@؅哽t_Y䏴ë}㫄럏 YN#ocqǝղ D6jt>S/$g(*񪼧NxKMXh,ax?5rU0" U*}cSk> әWӷV<4@.Zy*\=UN%+tSS^&t$ټ?PӭzXv+gXaZkF޿+wߠquۼTݞElrď1b@^:U+pz+*Q ]oF;W3Tct>t*+גxB+%7OZȉ7_wT G Ac}Ԧ 4Cŷ̺oM}~K/K1HEtq A1(~ 8 T"\٘!g׹W:Ǯ`=^ #_"J+iPី fݍ$J2qx4Fv14Bu`&V?Q4;xPv=@|`JL MwFQ,AC n։֯@MA9O@2b ywu8NrDzӺ'69̀n4%&8(BobYΧ6]t:sj-$ƿ@đ] ܝ㐅h׫4aYؚMgψd3傔^3øe#D6 iӶPx }C AQ5e#BAZ%4k .޺P]xi=(hH+A ?!wW)vV'z zK5euw7ٛpg37V A %& {ZmVXh,WPj^1iy_Ğߍ#%2A[} Ega܏3>!(?j;~A4L7<-cb_ M6cWBi$:K0;wNv[n 3;G~aŸeNM8%5ũDHGqQO/@'~RZ }kK+N0 '~N LW3ڈ%21wjD϶!V!ȇ}pe?Ouqtż/mȢa J)sD7$UL4q?h_mRG*2T? ]2dYYE~ewN?"_1ㇸ %B؏r\89VdNV 'z8~W*`#W͹0_N 렅l3V^ ©<<.=60tQ[d)g78yVr 蓌 h/hd6f-M/W`7^N.*X׎`M(&%V\-c+8*9Tc` ŐtXo DNE_\`:hUǐCA:$PrӘmwM<bO=đϙM^0 ]0 z 1d/2%|Oٚ.f#(m$&:A]y-sQi2NٵĂi &r0#7a *^5xRq عTz!9t';}+_1SF>>.&~~#h տ.}xOs3?(Xv[jDz0E*&ȋ^Z-{*eRAcŵMU2́Z9QG 0hLϿ~M>qko,kѹN*(Be>]%e{NG C[~@۾H370?\6I[N /[#Ir$jȬdswgC.-]nf"jd2pnVL.&'Pg\XQ"@d6gA렿t_8LN7LŵsޥQ,vWSfuByo=wPy_΀s!.mNmӕ9@pKl2t%x :'97LFuI ['q⾙>wWaOڨC@L.z^k{/Pdwn`V={ =a%./yh$("Pj>Qgu?Yg'=R ؒ_`?Koŏn ѝ?ð{hǼ7tra+z0%&tJ}rD#%vE)T"eݚ?,gjqIJM)v `p/~M'CEqD1^ďVx^UbiZL5rZgώ=$tl?GO>_/q6TוA q_?\ZW&\"!\H^=Aѯ*7VG X$Ba wn?bBxo?PA?H'[k"Bc+4mri<@mS각nۑW:doLܓ؃,^ؑϱ#IujmcRˠC(*FWPjmUDǧZ!L,Re * ^F6,wYڼL7;{Tܼ m p`Xx oأ'I9=t@-gbbp/;D]8deY {:1(* (=(%? pЭTZA׷sG{K}} -ҽ=}kX٫h}LYuq膟`"I/w\o]>gg~aB:&6,XC Ko9@HYj'6tG'^m)[?u-@n>&~=ocӏ0Xץe\yO)-?@)]^V&Q(Lg)Q /j8B <'ZPRHJQ7‚,0P=,O9QYNZA"p޴n|66ydk y/6=( >?yL5D_qUlΓy]UZ9*j U}hge2j1kzR5 X;TÙT o:m{ Z[Dz!lx-U$V,t ^F vkR+TU$J}gN]lDkevՏeyq?c#O>7^lKUVSjnԳgw߾۷ovpȾ~=;W2Mλ*K\[+:as/q|Z]﯍6bA+=M<5q ZJ r E>yY+][ҐA"5~"$$f\'mϤ͞w?Ly䯯|*t@kQ͟r+*c+U]lfT+VWxC5I=[vg켠]+I+#;3Cl6^(Aٯ?OAeoR!%Ju*ُT3&ᐷ>t 2NhN_,̮]L @|$M]G'iq˺ 3*{~m^ ?o:b5)Ir_" mwٷg KDjKN]i;s9;~y^좗'vjIR`0!ҍPlo>opS"ghv r4=_Hu'm ;?8zUُCKHh؁:Ve[-ND%TMu{~Eo9;L3F;Y\iYWX7 vhHL::koT՘\7 93b3pߘM\ͶGQs/ }>VA~7dm8{K9_urՌ׵H? 1L0N݋ &ǻ,{jҤB6dLHFpt|U4AhK Gx7 Vdhf;к @re w+#,+ W`#SIxP~&7it)T.!2,QVj&20aY↙oz TPLDzN{xҮRC t pZ誰_GVkAW S>MޟQ-`N:;qpμ1 %# w8wTW;Umg`N+n_61;q@$(|ϧ6j8< S1\-W7*`Y@qYW٬R;CWUsO}Vd>|#3B g k_Iwѿڛ73y.6paFhhDBNquc.=~xlrTc*fЭ ^}qaP0C=ya?& Louȯ. HĶ_6}2TQ$S@*b [C}]0Upda-;PzA}}P.ƚz@#X,w #F4NM[~Q\1X.墱.}W7ɶ)*/Wb+!4v߸;m]G,>G$HhF NJAΫԁ8uP}0 zukdWF c:qɮ%G'/4aUBFLjBw3_?/OQr[G_H//dDX˧0xo*An?@?`lű'ڹ%Pe r T'Ry:%<:>#]u,+* }n;™G؈s8k3[2JUq6^a2';.UR&'40PaΟlkRIlBDS6`NN|# <'˗Tn|P+D +.'x,8 q70TP<4d"o Q\ ""eK8dL*jAFFsLK{Cg󉼈…}{wKU9\ƙ K{Y9~v>{v-H$}% J'Cٙט`+48s"CtqGL#fCt2e ,>=ueэ|`2$:衤&_Ol<+۳HE"Y2Em}GzJ}ދ6JNQwֵf}sӉ_ b+s}D7'L^+!WEE9YYܑ ?{DqR"!6<`g""a2Gfy~,ֆvG}eǩU.^XQw+ [e3˯Hd}!]oWE7bM]C`kw)n_*խ ;q# a&FΙL׌ةn_o'CAh3AUG}X~ap7^~I{!(rL+b[ł~WwӀksӋ+E_>= h\Iyr`CJ30n%;Yy&`~Kz}Gk߾7'kvUlP\Hz>so6qF2ݽs;wSq0C}>^gA??}D}sIkn!\ }v4PL@~zz <9 ̝LtL}GeHZH?ᣟ{x 6w+|:Z+ ˦/!4 \ߞ\~}=M+g&uŎ8 T.槫n xz+Q *zqoOw:tfsq_}ui9.[Ə8Cu#|d\e~9ADHhkn>y-H~TVzBYzwYE<1M)_m=} V&~o%'k&f`cUN`xJCY]_KD?\l/kJ=x-|bEU$Ժ˃z[ئ9sYs\w0Ekp0IXX6o+=hzOHzDͫy߲/L$%}]k2 1Xi v۶Rj~k߶k*s?Qg$8 !s'8@Ӂ8h?IkD^CZp|jb.$:q.McGϙ'*<ٜO@*>AOhMΟo$H+" c24~4gH.EHzcr*D;[S_ɥf~]cuID[j|݄שxv캂9:~g7}zwVݿf~MYUNkuQڦ,U7:/﬘Oo.Yj׶Xu_ϧx@VgB}?.gή". V+7 VJ",:}ڒ%Dq΍r[;M& (|/v"ϯ:|WBD#4t7DߡN_]b, v,_\۳d}x0Aa&ǏZ9OӋ4\xgS־wc >A.egD:iNGx|{o3Eia!bJ-s&Z=+ܘP^d%>T: Z\NT#C^Pp3b?3m\ةDߖܘ[(5~v0uO,`ξ[|`, #N] NoMds!sG"(,/ 󫯹[iO6!='$ ٹ3b@禥-Eq~udf돞ygy{b?މEڌn8_[a?890 VHݛt%6۶m8f5ܧi]C! 7jU̜ ~m~0Dj:CDRZ-?"|ػ> cEH*l@q\Qo aN0^Hɯ=S{qwO۲kQnPrɱ5&nnQ'Lyb+~_ux}֫I*_AHkh&9N$ 81J}k{aُi [q '7?ALcpD17&ڿ(P>_W{~~4A!,ʴ~#eQJe)qPvO$ AGR?RHHy-9Uu_BuB,AvD$ͮ`\:/lS1&ۦ9nEמۖtI@o28T.8Kt[#;jZf3τo+IFJQ z;+c!pi,p_z_M'w6ż;%V{ EF@ldZ>) QX7D_dDO-é, WxpvnYp#\מJv֛q,`c9@7sٟshbYPU##OjMx$8 4%k uI u8cnqe[d^r0):wLJ40l9Pߘ_ CQ97EcVU%:o/-y+%z/!YP`.1G6)_C_*~V'@,&fPh?Kr'p+dRboٕf?HIK\&ră"|IlBRr$WM'$SXe? li'0<*}S|B%XC@lU ƅa)0J?ov7 J%k"UR^S^VP(n ?RhvKk*=m`Q_ǭ[犭Su]%s|]X@{$.W'[cLj&,qOmYZxȭ%{xv?~ sHF= 1t ż]ܗWmjZ:6cS[s D_QύUO#OomąrZ˓F|dR(~c)##g?럫7Rk7Wo>IYß]?ݱ/ v~Q~ xvk^q;z3DB *ݍggOt7c/|pP-UB@{Rm>۾I~֭ݼ#=;~]Pͻ9AoOf(b]r#q(G6x7MMcYς} =9aȈf:vxSA?#qw-g%s[3պ!oC,bW@彼J`*uᒆ3Ս]qs"?" r=[Nx'hlaε^`tLhݾ}o}nGws y:t,){aR\_.9WWʥh#TOGl1QLhBٰ* X/N*g$yջC!],@ zv@ '— ~ڴƜ/f9w_֗? jP~󳞾  Nֲnx$z~@$o`۷z4o 'н 6wl'2IޕEhV,(w#eX{B{MΘioQuG^!ůd [CXTQ+?}w[gj9_>Ozmɹ-֋1?p s^EiG' t.HWx6"(/IbDU$yt\:˂ wIC͢-?Pfu+2b?{Jd "9P g˙3!ъ1dExa?¹Zỽ1P$GI=_v#U/Vğ~pO,cy?b CbҝE <|'zaKd'=z؍.H^Ҙ|LWJ_? hƮ`* =z"8gۿ_GT|#/^4d F*1yT"P7++$dNs/KI>`?(z'P߾h?f]BZg,1gQ~C6oSa7k^ݿMl;Ԛi^" %W s=~Яdgk"<5 mgQep>, jMة=:_6Wت(~&Wo uZrڼ-Cq=ߏspX̟6֋  $6P)'6r (A8]/j]ypILWAqPbQ6ߚ?WV!%cLo`\˺l^gl~C)Yo<Ή,\mE'cmyt ̝9; '7`u 84a-g*o ku. Q+>^Pt(3ByopE_]?C,:+l6WU 9ZVw" Qڏ77IPwa?/'pg?W?Ć ߊ[;فrmo?3~@3uܘ3dBgh5߫ןy>ڿ;`-kgv #) <ŗ^vM!An A d?'cXx*gfxCĐv|X_bتT])ve UMԋw!\Aрns9ٱ[e2-ŌKGڕ7wu"MGCcqUظ2kZ¶}.PnCx+ ` hU$}x'vCt׵{Iס3o]xO=Z].&Eddk5x4bsͦğV&*wt#70LJQ;h'"g/p5*J6CVKF&R;_i~*C4Z+$Ч 4DRt܅ƯNb\;ޡ38s"^ϊ֎vYm5u5BTof]a>WTp 4-_}U1vd,hb3yeE/ƊjQ?T?1cN`sMEs̟~ߙjyӏ6*0!Pd2QJ_?6`kM^7Epʏ0#,0 /  e{fUV~ 6˯:sˮ{?H~@}z?WqWɎDC2~?_-;:o|, L7o|HnnM`$}~ `m;\;HIetOGbl6gV\=`EX0 Lec&ʃxB%OBqg$s|ڙ&eR2sYt}"Nr=[WsZ䄔" 0P*~򫀃3}_`'X%󂐿`?F7Ko曆؆.qH'/;K0tX`&Ds%Jg뜋y~VS&k#>n:,%#ey`1je]Qj#הx]%-;~Z1u¼࿚̐ VgpɣZ=?z׿Z@XUiQ{#.+.ׇ T~?2^}-@ [eGg-5Vku^Lc"kqWq VpsxEՌhNmoN%?_>g)nӄ+tyFl:-:{w#9{ޒ/c|A11~@锄=xzy7?Eۗ?YoفݿxTpjYCFP O0@` \_h5 Ͳp>f=Z &Qp$7µZa^%Λ8u)5c U9p^-`d.) oFU6]q ޭ_kΘorO/۪>lf⿥{:VU1vhhkJ+Z?`.?p'3$i`'IzNDo<ckAwEb+[uf$9i "!cqyԧ8_p .:3R_[Յ=י w϶]Bx5_Ưt|/Kl#-W hN "bSxY .'U4~UϤ/?>%+xrOh@T zxw6y,T3k+hh$+(x;a;TIlø9i"Q\Kz~4EqGӑxqM\@V4i:S8/Ґ./mqZg+m\%H>/#M]0^>RJ'<ż8.]G{=cq;;!>}RaT hRXXTU< go ʣ啸Ͼ`'בkon`m*h,_m.E^nZbmVv< `Wg__P#y:Vߊ),rkd:_wvwq@x-B-gӍ\t 43k*`cGG,Ǔ4gݰAtE v{ ClRb +t(C`jgy"Y6^Ɛ`ULll VdR.A}$.Z=&E vfݦs\/odV F8.`G.rI-yIjި>Wts7]ԘB+v>ZxV2Zy?,s+UV+ZlIb)M.jgl56Ob2:Al?B10J"Hw+k6T^Z3;r'ٮ˹:PEdgTX?'NY?T0~Ce+ыpo~ýnAը̡'ilAͅ0~ .B!3na@/GE: Ĵ{qx|?v߶ܽ#ݗ*A\g1Jw"51 ,;?Я.*_+}322h`~D{s fv|?!DNװK*ʽ_54|cE0ج*v4$%l!c\JtNÂs^okqx <3/.hnBwxLCR|ıa8ag"kB YLuV6`mDWDȭɅVܷ1{s`ϙɽe *.]̑I$`nԗx8\NMO=. k'wкyX.U0SIOeڟ#eU@Ъ`Qk # x@'n>}L3ϝ˚doW yk_1 *eȯ?=`ywLp;p=6pd,TTd(sPrBV 0qu|R9.`9 O"(+l6d˿6f@k6첾c~-_iod`nKd_~4Vg?=(6 }FCsQxJgȆwxe0}?m?VSrs_گ~yGg/kL_% `l]^kn;t 7T_Ư7znv6ͰFTI;=_mtLZZigch51 I!R~w=dwFܖl?"JVf\GH7-ycomMg͢3b[-u{knGmGytztkqOhQ8*UI(D muURX />yvL:Z+cL$/L86x=k]돜g&H[xNP*{mt#4tWhlpJ`&8*Β>? Ʈwib',bQvT(AS&WADu.KׂU:7C|t;uzU6`ar@DV jxqc 'VNh zQI3CnR9t"쀃<ԠT+z0~\P;3Ot0]Q[M!{/!W$E1禑G';qp^  ݿ^oĪ>DbF05឵dbVn锁ڌ, gͿtg' fV#p fUXu{MBY_bN j߿_~#ܿ=_E2yb$m1OxXU҃v|1\|Glk:Tڷ~Fa b}@ׄw!Ս떤7?=0y *mAܬ#ɲ#dt'@N:ꭧPC\Agzv;X b \D.`pR΢%f+\ペ3أpf"R8nOo(@7SMUү 'wqhB4t_^ x3*5)e] q!7jb4K ~F3,;g7mU KB))U)oZ.?nZ;$she=KJNͯ9}Ur@; hlW\j?E^}')/Qڭ蜬. u '\:t1?UGBzǟ񋐽^ rN״ \@L8Vv `&{ Euedp `WNߦ@v2kyC]SB++p@C =>:bF@Xj{ G76Sۿ_Hc*rYI_kؽ^) Dhc>l ?N+.Ab]naV;Eo&+Cvz ;/KwomhĿ(L/0U޿Gw˿}ߙ!8 ɱ]$o$/~gpG](F:U0κ1Ϝu)p.ROF Rg K#Jc&ԋhX4ԋk{}X4Xӹ:4B7yE[.U( US t3*QѪU}o CAm9م橨4Ul^u0$µj9ܻ{+*f6еoN8 7UE{Q^?gfqN`)\]>Ř*];>+Ko:wxh{.xeTtO. "85*@vkr^;~b_r*h??}]{7B]ƕ/#ZooÞwκI;z&DؓNĮ r!<J~1Fb=P쯟6` ەD8W&c\qwa: r8Q&I׋ÏjX|ŋ .Jh=(`c8,|?w"ˑ"Byp&_rrǿ#ƦuhVu5?6?Eh{~P2c4RBG`p&V jF=UwB,C2|Ll9&q>-^RJXa:|(7? E U?vW):꩸r ?D3=xֵ9Ѡ'?h/}]< ȏcUto`iFar@htpqDՁ uZ^Flo`͂^T!hx;1nd<j?64Vb٭ǵ_SB^r˿ : /wo.\3!=U_v)˪7_؄!?mvJuihS%O[7P>>̟60^Ntz{Q/`6edOܥcth_JÜQFHXI[ITG߱ 9cwGfH^_ݝP:жx:P2pQt|PClo?.ӧsAZ,<\;L ՟GxXqvK{jk^ُ}[VUWV?1"`t!Oh3v@,6>}a0'Ww[љeSloc&pV^,տ%\V:KeFld!yTڄjec2+x+JW` iet@LZ4mRqm)x | ]nmв2J |JJ7`8p H@5WC +;29'ԨWT ^_.볳~1AOLr5RojlQ/p潳& ^C:{5^.`KV ;=<*Yӵl e1I X玸jw8ځ(r "Eo&ABpXREa2:Qrn*Gdr;!axP;vzUs:=gSQ'*b kNkf}=_ՐN Af?ԽLR7"Ş*9wE@0iŌB?Plj}'<ߙ~~:<d. ]o չDn7"8wj{kYPj.WR;Ϝ>7qLol<4>)+³Nkdy%Ui w,+_Yb_X`Y>S:>GQhOFA^jćP'v䬨f|UEWH^d!XEgD _! `M, {63Ͽu Iwdy8{J\$8ʯu|ԉ!u|/ݿ?jӲC"te" g|+!<^?NpZƧǙTP6}+!%Yߘلq_,ZX|@řBE3 }%xΩ&/Ťj.huC`+;iuDUڷ?;-`L")WoP)$zmfh^/j'?3;"/V\/>ސMΞ{<;)L&zj{aLF<+MNxc. `{GƼ_kƌ .HPlg[_? a=,$tWyO߯yKdm6]$}G}&x|\Э憐Yvo,_>[EE.\-];}|Y"b  >?w\q\(i\;~sdU]dۆߑt|16i[8P}uFy4^q{Ç?}6Vi 6V bU [z1lu(Oq@wqH"рT/[¯Hb$~wWb{N8Ȏqp85ivs߿dn [I_뫜";+fnD_!ΎlgUS"8aAkA;dIU?r1?gv m}~$ݿkizxZ?I [O㋀={/u`1{8?i+7ou QeQRp嗝-\U4nD:wm>$xhV)u[kYrJ;SiQD)L!+C~MWį^ YQ6ΑVmO \!ĭydnP~s]wd6/F  { '?<~f73R}J+O<h n j??^[Mi󎢳՝6m;bͱʝu .[g,6ńpHrw6R+ u(ĵ&~?WO~o$(0\PH4 y_PE%ؿRt~t'tשavrGK@ ;P8ݽ%gt(u|+8ua[QN'N>_ $}&7aͳ›W7]7lvQV/UU5?0} G;{Le`QqX0nʊGBGSLn8lZg+{m S||}5Ͼ`phџ_|_"uNd5mc{|Lq\:s*VHc~ټ. ^pxE_%}g41h~}( x?f{>rݚ}?~?^w n7Sop`C诶9+E{L꪿Y||Huս1: sPSb!Gῖ[{Bܮ;O_]bX?0k5 ~b~Քq[pg3";~J?| \[;Tsh1ꟈ-bI IZ| -m}һ A1wgwI_lϬߵwsv/~"M~\N`pK/Hy/BHPmʽHW'dv+X?O`@{^/]l3_s2z\ܵ/ȯh7+ct6L4A쫦aI;`9ϛϿ4ηʜEq[0YaA7\ 1fHBmAO̱Q'j,6~ڛn|l;,o?k0{p_b}PG)Gk L~=^8l^0{\֜yQ[.+ 0x#AzfiRWo,}*9U=&T㫂}WJoiAnr I$ 6 l\}݊R d^)L7߶㽸іx4|QqE:IL9zl.c w e9-wp@e` '__U}[9ɐM,W><^ԀS'&]]NzX_`F)`O=M4Ɉ Z'מ(c}vIXpB-w'-#/e½M8]?Z|=ۏ؆ŀ4W#xgsf!$1ON;(Su~!KD~QGFEk5~՜bnț:}a: NFMs~ث A(̹[J\VzDڴ&YZ#V2|ƀcJ7LX? U @>j8?y ſ=8_^USٙˬ^/wqV䟖5PqB Ei'p_6ni!ҫׅ՞. ~ !$6lʙ< ]d3ك6a(Р,&8NP.[A]N(rbmDŽqڕǷs,Fs4w`7xτxc70RK7f)CFn8$SB X`nC@mB6"nS2XNet$) ĕ& sLx˝8Ɓ+RI텙[ȳc2N(trGJPwBka( <qI(‰ (:7H~JVde>?ҁ7$FQS4`6 #${mexx RX;=#Y =wꗱC`)r( ǠCH-ndyC|ٻ3H&|dz VScDEGf X]AM:fT ~C9Y+QN?PA,9i,Cm1519KOFJTGlaF|670kvftY s ڸoWxᮼOΗҜ6'6Z ~@Gpp19+Q~xZaeۀ[=w+}':_:ht](FhZƽ0s>_o{ Y= p8Q?D"<uZ$t8K]Tt^:;7!̈:PZeŐd/jvh DS^[aerT9}PC315|<"3':gl\l俆ϓNEg~!GFe5K_JR_@aHR@emK#UP(x?$y5?~<^qLjگ8}{zٻ.JJM:b= m$^1&{g.J{+ r7 wP2xȯ!ͺߨ ' AUTdjYknHj_;>c,V1۾eהW__ \ud x.*{2i"\@i&l&_R!*w޲,OĂ`Po< 45.ēWिNp~ڹc!w#I*fo\96'HX+Wp;~Vk.ph/v- u Gd?R)8P)xY'״XC/sاϨS&Ik IĆB7Oݏ̖z0u=Ej F Ee /EFdzh*v"NlTbH$ rמЫ]3xhւ-HsT]#\];#'V ]o2JDY 0"E3&w>*Oo ~>[5ǪZ4Sx7riK;pwr3!lydPpfZc,^B'.CL^>evNWf@W+r9.ǿޟq|xXLt@7^+~c;ςN]ВB߻ՊQHۢ`(6i0P̝ӸNCދI9W _ԬnG*{>_ j xEdѿs5;B 4}S<&.n߿f@c74gba [Go "D=wW=W%W+f+3(knd_>HNIݷ7gfεP9m=#%(VMwlf1(L\Eb69SUEsU%;vk9& (& 2ޠN- &sz(ǒ:frHlWzY3 yeUeYn|ݪ~E?@G-l:$ݥi^Н&:+dݭZ^ܙYw047$f|In0^ddVaWaɩ!D) Cġ ˱\NPAWk|œ28$gT췜kxGu"q]9п۰0cz#GaF=v4Og~G6J"@[>\N=Go~m;Ow9l ?jBj C<bb{|0J@MQ8+U!YBgu+'`?>8z=*,zX=@;ͤFuݧlU6vX-L}8u߈ ^=#N[q=i,HٟwqZ#$gOg>MG`4q!Rؿb_g+ĢleD/z9w_ 6tKemFDŽ Pm=r0t9dT)^ ?nگS&N[g 7)ON?PN'[~拜E1̟Xj&Km8 TuXFZ/z!:gQ#H`-8E)u}r_,eW7/Tp017<}~w+j}ϰ~_ȞQ*n6a5s3;Nm[c\QnDϓ'Qg#)WC*~mwB |~OrKNO[:#A{\( {oQ\jt?+Y۳SӒmg\B) XhoDŤpӺgu"*)D87BoapAk^@VFg4`1;4"5csX("PVY([+R5aC`b:NfXh _I Fi%,|_YQ}x`! vkђQiu-X[?Zr&GcRZlhMxx|_/SHSewe }tT TVuf|ET F 2"PNn|.Y$_w_BA{|㭯CMߋiطKi[bK>"H&UZ}o@ccG8H{4e  e*2>Q}:p_gNԀƉyGf}6޾CctWp]~Bk epRːe4HE\sT0go;OH6ұUw(t~9"y8V.]B<Tr ǘ3[n~_4vBO;Ck,2??e6ӭ.pS uKWZ?l w' 2~_O@}>?X_?&j~x"o [-I B'2xπrMk[>M;dž fh 4>^}~@IٍфW^am' @ʜ۝q6m `KͯWsoD팺+c8Q.~,]A၈%4j d/)UxUA^w* =mKł^u<>4YhZhƨaH)TrV*Y/WWuٖqP(r\ IWh1iBM)7CJ$)RRJc aA4G++OV4'x5<8GaTx-~,TGG ]*iƎE=~RR_nxWtoWDl@;8`XFOz,:-}m߯3x?Ѽ5{c|Ӡ6n, 2 "ރ͏3jcP8Mmjy7FRdOD#Fm='_]?Hqf8 7.5L9DoFr=E)9nv3Xb߾6*nHY& zE^pD:F/ @Xgv:aGj+lR_WUYICţhgj!&"R`>Ŵ<` ~xuT݋<_Pܝ珛 vPI|o%}v#oͦin^Ɂ ̈́6Fh?РHhNϊM)~*~,9~{B˾4~7K⍀=q?o\v 4"4HѷGs^h"aTYo/+Quka_)o>B0PwhKwCH0{vmXvd 1"T 1b0&ᘨF40_LjFb[hF!d=j{=rbD,s?*G*o ϯow8Q~Xi<;M5%҅ 뷍wъki󫝜н(ܸ‘e3w>X0X\ cOsMfts aTxYlXߓbOUUjƲReƯȶ 4 ~ϼSiݶۏZQ?d0`4O-j;^TX]!,1 ?sUV!6?K<5^{c  Ƅ\z).\pXn<$>O)2 u-O؜A#ɦI_INsnb*:w>vV1)C$wŎhV@m"(cC\c~>^iNNu~Ui;I +jY7x)>15*J ӗA%JqOTMq<&}ĽF_4s/5NB.*8Nk +Ɨݍ⴯K(" ͼ)!<"ERO(5+P)/~YXC;@u,߶ڷ>]~`co}3GMLگv o)hm=R8lc?5q+U^(1w hEHv#VOܠ❇p].MEgc4-(sV!lF}]~N+Dt6o5 =!\b}}mFq3& 쁑Mp _\PHm[Ў(1'M:?.y@ g{ |Q]rsQ7A?ֶ6:-7o3NfA}kCJ(t{dA3W Tҥ3:1DH7AqnŋQNTj ęߡKwi%h?S ~,Azrn,Um;D2ШLˇgF rU1秉[Q W8i.K.1Pb/@9P(QkVt0,@R7$]A1ZBl⯰ޯ;3"~.Umbq:c=^~E˽WEBBDg=dZ${s;|oR$,t{r%9ڼ8*GTh^-b_LӑQROm2lyl[\ѡU4I_IRW]`eHi~7Ѩ_C_{F-ӜLLw;nD#:wcp"_1}jgAf6rc~RIQbChjLwSlS~ {?LJt%_< W@]Cm~)f[K/ä <%?Z-{_?&`':; M&wZ{nBUBʢV^Nƣ(?-]77qi_sȻs%Ċ?1U@{Vb}%gWf6'&-lE!8\u&]nwgEPz,gKw,O@lFt^Ҟԗ$q/MZyO s|&YZBJmc{AQTˢ tOtT1{z5ݯů= RkڢO5>P/>hYN`UuEQhԀZο%Q>%ђȷm02H%QjԬS -\]}b',a4o1=D])dgN:҆.䯬 Pq&شN5cYзtq?kyR߶?L ߨaw@D:I`_LW㮫 )8J<qp0KR% PRfIɸrޞPEb(ND9Љ Kٱ C`3*QzHF,=w/&z@z*,m X@ܐa&@PۤJ;WafMjy92bAN%h+DjQZ-n+=Qp[`ZlTC6ʿubQ 3_ 4f 'WNI vNwQi~a# 81~j>0Ch+=@w+Gx+lOw{}f>kW!Qq;RΤ_,[Dma}c c?X|,5g(%CICdQT#1k;Fp / o,"{~$SjG&trC+ąhc&#xvΕoHYhy80-:Bg(Uùˌn>AQ%4psFϭiݹC/I~V[c[}-`qWokCIox3x͍]| Wi"(un4$V O( V71?,جXE0&|nHxฯ_լoWk.y-bU@6bqϞ};p@{]BUhNN`s罣rޱhRuLzˆG峥;КGAF=e(EU{ưUT-Dt|;t8΢RD@ڥ"V䄢7,|ׅV.$Mڤt&pjE^ Eo7ZTEbGu4ϡh=qe5~Ҏ1>nδ*N+/ݟl'ԠQ~ܕS-&ڙ]ホjy~J-iSx)%tzo7EпAXigeokAgFB!J+Xՙf|Q^PԂ`S篲"$?5D'0įׇ@I nDIEs*P^b ¾ .~; #T &ⷦŶ #{~TB@R2 jߝId]Y%A/ G „E/5):6DJ6NlM4[:Ͼ6@-Q4;_H.WtJ<@0?JqF_ BKbjmN1xti~ޯ'EP[2>TZJqbs-Bʽ+mR5* Qr:4][J9L El$~eO>{HiIPS;ͶmwBmM7Lז֮ﻠ^ '쳀 "&BSA#$DDW,אopRދKtV_Pvaw'>"iF:1<ۯ&rcTڿ-)6__5d?s}P>tᡀ7.x01*d.]} )2N#!rϥT[#nqdyvwȎqef) S[l(_\fHIϲףn=_8rcw֘}>JcQ'k؎kA> t4*GIeP,cA(c͋EAJ8<^鯯F$ 8j鹿ƅ3r" گׅ󃏚؟Wz,mΔDi ;b2l(OE"'^ևHH4Cc[tݶ-Fp |Y@D㷍7@IMK@)~m&6pE+ZU\&M\1i`K󷉋lc髢\߶71K6,"zsa̿@(YbyR6/mafNASߖbt& ;Ŝ\>HB"*4,u/~ K>{Uyz|l\;Nm@ˍ1&M\kej:|jt<8WXL[\Y(ξ÷jk_j`t?[;x~5k|k~p]e??g2DxOnd4( RCt {"|L ]Ĺ>{*|W? A(O++vU+rtqgr*"Sڿ?di / 'Y+/eF5,vc,@Ha,D62 Y 1|cԅO7Ԓ~/ 5 SwGM76l659 t7%^.S`Vfs? VE% f'Ej])-$jwwG81>tv 'q/Q`zKtm7Z~|ʎakSW3t7ztEM#nBE.d0rlbDo_l= /jJ+_)IX0d/8@wدq_wܘ2iVv"2eĐIb2`~?B79Gם 3I(heDoh1(un}t-HY68f4F  CB6o'FALc~X4^;Dhf"vR(DDW<4Xen.yU7@hzeU2Ơ`& o}V|V+ @InŠ,kO8>^Ds!*20ʇEtZ*J<丁,Z2Ro9 BV^7'w7~&Q+ؘUFL5ȟ_,Ef@3E P&qvع (ٯ`V?Vrq5'I>s:Q\i'toim0J!1i~[1s}hjϡ9n* _^bk6-|uM ;ZF,y}6Yz'~?|~~4 [asEYdrG z[SZ17inCbD1; &!qS"AZ3׳ɍ>Cp|m"L每օ:Lx/#fz|nޜƹ-  M9G=TS#n@G 1{ ԝ{E,Dt=WЧj/Cػ d>%7t8:&E>CFÆ}Y{k=1ש}lu-xN{_Mv;g߻bĒ^C=tEPd = % a8Tq@uT,&42's]?j0^=+ ;OkD>¯ni5E_"ف5# NkFk4p;(: s ֛y%Ti+ W6ѿu֫-tQ]2S㲻MjXE͍oJﻤ4IM93MWr垠*7hu{AE>DօK`2$0=_O{;9&U8uHM&yD̕Y,aZ X<ڡ ԃy| 0=o}i9~oN&# _ mиviD5ܗJzcm@pmj2KkUp%4Pi7A0N[$3j+`מ1"ͶTyI吚("z`7i}es?}i,yhX>C :+Tg:\<-h=qׂ^ }q&2:-BO"9΍Y#BFΫr$Cwk#"p'^kZ_8/QIԶu OYX `{1*4)P#6l}wس{c}=ŏZ }7/ 5K5W1_pևb)+1ޝ|UuNqbRϯ_WȦ_Mv;ϋ~$n=۲lsvKɔ gĦ4_fz`rhgKh)W*' [es@Vog, ,Z ߥE,u#ľmd21O_uCO F+fw]_K%lOGa1:`s0b0},.Aڨ  mV]`Dw g.d;[APMܬ:b[p2`Q/Bfrb+J00frsdfQDUU;E4Ƽp3ˎkL /):ߕ R~̮ oi˪o=7dfϬ ,BIѾ#_7Цg+\SbL$f }AE:TR1O;͙B@+b7J??뻤F T<<v~7] :㾲 '=|%jT% &0[n}jQIQkʬ~ Z4Q4.tEUhhU T-B ^geji :11݂/8!@,}Od̨3ړo~ `#k(xb+>G(tȩ,IhW1uiξ [65aoÕReVi, п:bUr\+|m8l|} j"m\ԛV'#[_l^? ~CxJH}k>| H۷kJ'י zQk^y`؊f~hOܟhwItg"~ z?J&Dw GwҫO_ajh;c3UABti9D>m$/I`S1΄UȤ\_~nŹ3SwS%,O [>H }Nq+|?ѣ ԦӐ *0K8X5ԋe\j:WmX nh{q(gI5+r*t':M7\7Ǘʔ_~d`-i,Z*kq]d#P>_: tRQcs]X~@`G:.J#8 `_ a{c"e߫x g+u8.3V1Xa#IJ>;]{B*jAyJ{}Pv=9:cs-x`jx6E@90ӵ|l54έv&~qm?ޚDDNbl,Z䱙zޛИXJUkS iF'T:y9h^,~-Z1Djįd:?|CGZ*PvV:"d;AAy.*@g/$xъV*M$ۤ/$V+tJ}{tO.P@.n6Qj'jhc`kk/ \߱G?gN)tg8(+ujT_+SZkN^; .tUTn[Oo^KAY ^;I/jLT̶{tp1 n畊sC C IJ׺7XX׮ ֵvm-ɋ,LҺJǺWϯ;ݟ^w;g׬8=~Hϙ9~_w"c6:ǛNH6(jCJ@H`|J}FȢ GރFVmP4_h&n@)6*t@P|<E>q3 :]H9(' uܯHq+Q \Q34:>A= X)qla>b@! i7f\„(T ؊}<^5y)iJtA@v<T~/ _BӲ6=E7>(F Հ x\hWMQ,PR][5] `^GT/~x_~=b Qr?WFaa|!O35?@E2=Ф&&+@Hn67ZcѰ4,P ߇: |v nL)־YdSoq5FgGxP; (/$.3p}3rMYHz=igRLtv|WyJɒKUؓzw{c> }ZgG>i1O9)qrͽR%aIRJmF"M^ۦw0,()_<7VfX` 3< za]k4?SDQkp-^|Y/oK+g5?IP΁I,1adŽ и( b wy7oBDJ|nk 4>EQhWLDd A}?m>s}|-zjIe0tӔGɏsgONDm,7F~9E4&4KtBiip Hm~X[_—։Qhf9`dM==Mvkcvf$ίF6\)f u:14Kҽ_/?2PeuW:МkxtvK2/)ǘa'۝"םfygLDN9E43@WgvCѬ7^?U~C=qJ <-?,Ocg'[d ԄUFٕ!R>$DԆaeU98q;[jnOn,?D&4 g]mC]x-}.ߏ?ʽ3酈޽X>0Ax +Hnợk +K0 "T4e}&/pD'dsяGmN( nMf;@6d3B mB/#WcJ?;whihTG;VzjyiQ*Hڭſ>qt%_,/b]1dggb?Xu<jIڎ&HcV&2L"&yK?ٵ{#m^ s__Ėͽn>峧F7jQRWqTwh6.W +r g)ﯔq< c22*'CoԶ|%~HH2@]XI6:\WǍLחLDTO睛W-7P!.8H ї4a, w31A: ?&H.)(0'.:u_42XdgNfvY/<#κxGf}޵`_x*;{8;j_j_/C@+/~>nL[W:?7)e}_} cO\ )R1}9% ?"7ϟ@h6U`c5ZBΔI??d楏`·}GcwB3*i,uqqn9r :Lszjz Aci"[OaX ?6EAt Y^Ϸc\-Q_FF9}^ϴV2[X]-Jx30|dg]uP8 Gx8dAwJ姆p0/4+GNΎϏ݄#ސ&tB`hS]S!mՓ;4 ﹤o#'TqXX3WHН[Cۋ_ c:}l6GA09pvWI $R&%?)ޛ]o"%V5Uqx|{{#w%2tr@̏ع߸/ C ͚QU$7V㉐=$b rAefFTA1 ̥GۿW |Pfw-XZOs^gJu""l=󩪼"|i`s_g;JHxpeC _쯄+l _8*Dpljb֔o:)5wٛ_I[o'{`W*9hR$e*<!KkBWNgAIVOŶ)^ VD &/bNj˚6l7op_W٨[y]#o?)_e?]n ~YgYr7>Yf=c??qKcj<ׯ?GVu<>M)դ*R-D,1 ~!~~??ɞ#+Ⱦ'Z- њr\94) c{@&rEN ίw~D,}Es 0/N4 tHx 6"~PX?p /xz*fq8c;w6L,PR_{1sC~s OCWȿ ~ 1L1s7~&'\7~~pS/7<ܙB6twnPw_qQ+}Lssgj2T~m=`F#YX D}脈b(Q%|B^D_wR@eDVw4pQPg+Pj5(8w'4xKoųR}fh-?+Wa2~(av~Ujv'OV _ὢo[ }7u4 S;"ʠt5ͥ*Xyحɨ>44,}ݱW'1c59wQ8ۿ~RH`gl'72|sLq]ޘI6vY37 F{HsVAn2*uwM F 22:]ۈtͶND[*vsEIl$gmr._U x-8d{ D s:?ucյ[|E߰؋HJ(elM}*R[dOMAW1fg*xcZ~1~Fݳ5jiE+㗊(>w*qodn s h`FB݋[OTL:"Uc=*_d_E4w'v/93*pۯEz@Xm R*7tYzZ=|qPR}uUh<o/+4OX<}"ךOy.%pѧSl yN9E*¿KQZGw6KTx tg^~)FM p+/Z?3WWϴo@T?_13Hhۉ l&$ `DKAV.=i/|餤2:3bQEeSzHkuK  h&k t=&a9v7V*G$I`p&1:rb"L͉*x'\oʋH}bFn.qBsꗿƩ8i/` <^N U_mtk=*d2>o'SB\,Q*PAǎA MXϷj-L@k_oZ2GbWddpc{nvɀdDjݩʰJD'iۯ{ @K^3l:c>uH 6\CTbkoV, tKGduޙ8ҊVycbqqD]~ytDU'yQ OeL_T99j^=mg}ۤV>/ԣN}$Gg}޽z7a=$/>.w^,Z޴лB#V#w!~czx^b4迣8m36@JW Gdl}[ 'JXM9"&'z7q"-4 E.NN pRu5v-!qnԑI Y4uְ$뷕وK7 }3&yOW*Ыz훽z>[me2}c;|x=doWZ_y*||SAGI ֻ9Et~{>+8o1 ||RV[k_/@v=w)kbsό28gu?H !5xw'k`gaY? })Bƶ9>?h+G!Ww,@I7_0`}v~ p@kvq~%rGVe^5VɈa/sxNB.J:Əo`)n Tq?ZTnkCP85u$2Dos ˲%|YqFXԵ ىFE`rԋ*h2~. SѯoOtׅ35g&I5#ZϹ"Z_G#/|{\|_!ѿ{;]w(\O[p s_ e&MB}o"ճH4 k)y =?Z!VG.X^IR,x%ڢQb^>w>Em7$~زezW~4zݕx~S^Cbi5(t!8՝ZgUbzAd = BՈ,K&_NXWaay[.& OR~N53w^Ș gFh(,3f5DSJDB+_9?f_|n~dg'O30NTHm• *6 |t4d -%ٯEc ' Wo0?PY^p~]lEwa p ާsfpuתjފ_8ɸ/-gm/XߏB )3f+8K_['3*~h,Hu,rW60g:ꠠd-8x 5kkFb;p|гcWiaL]ȕ JOW Q {B!V_ΨNSDΛY4^eY.2 # W@9w_B̝yX.hoħ'lZHKl.zd6@1MڀH˧"ݨL6ǾQ<rSW*˒^ X9J3#zX;o]1|_CepYr\b? V,B-v-߉P6(dOUW!5Cy$UdeFN&u#XOOXq6Xȱɶ_gXڿnnP f3O`h>q WךQ]~ ٰ lt wd9Ұk͍Tq$6\LQ y! =MTÛv y՛Zk,_%0L:|pw‹xKNTUB XHtA,+/ϝf٭NȾW;Nܢ؋( |14[qikiOrtCR {!߁eXucg^ ) K?uhoʑۻ /`-*7;V u<׈ hMBpJrY@=MR zxזZ):yA 03!T)0U&NY`@Â,@5S٭GM` W,A6P爜#+m;ضo*hP-}{̟C=Yv]`9mCQh`>d;0mpimk6دx4o2SO%9TP;Ό)ٍ/ߋrMѱ.V忌?F8;,;E tL]hرyŵX_P8G7X9LdwC}|2oxb|ߨΘtrTq܈"-'lEߞ8Fxc@ý$M>~Mqчge t=;:w>nʅcGĦ;vPhgahǯ y;>"}<F$j{cj%홰zǛ}-xOcHCPp]iSd"š Ӿ3gB ITo:w2zW+r6׍/So鼙0ӵl?A & ?c#];oj!UxEP-fYW/AjkXCNUp׿h$Uh?Ҭ[Olf}|i)8>!֛MdYLGȜc^Oz3,y(2B=k(`B|TZ-m˽F~{b()_ MINH=; Ɖrֲ) D?H#5Y(_)7Qv#)Ҝ#t0PS 5/ ch^|^f>w_;otsS? 7$&r@avQ2 kuL(R&bϣ"y6%b =n0(V " (_CZ>E^Ma!OY<ĦptǞ0 ?)6/~{^kMXmEV 6΂y!cEd-Cy7AMo0wDc5IPnpg@k}1z^VgvGf@cr:)4j0q^h: >[wI}P=+ jiϜ_E ]߬_!YNPBD֎Z5rV(Rv?'"A*]M/ijdʅr?0;BS?z\|) 3A^Z§3Zs?nd/t7: >~'$5"}| 'wrG'z7q:1=aoꄆ&|`½#57JFGQ6)(жذTK?' o\]jm~0'Uu+xQ|t1 41)53)IQ%u'yɝjiaC NG7 Sh\.` OZH=C,v+6+Jo:f.(-D^6*8Vjݹ"ʮx/k,O2#H]P/* ZZ %a'iE3D^~?_S_+FH7 K[!2%jQ$;l(L⍖, "ɬR@_,ty5u==P@v%ѿq{uYb8>L,P4/%[BAw6iƘ^ԾP*8IGfцRAs}z(tf//؅EB4N6_W(7ͪ͢1&`UitcP5MyCFX f]eUrLrBރ{lζ߫'!T=GA}Ͽ -4o yx^<mjahE?-ߙE]DĽA8N߈W (fN+,@Du-h ,- e8O WG.^ 3ku̬;}~<ۄqq)ۤ@+Άt(u .:33zaqMQ@ً@'>"z'v#a{\q|_?WM{WL6r:Ig8mR 6-. *V4g{T_́iVb+ð. GK _H}c`gvc8/9YY/q~]@on >n^`gauEqѾs@q8&YkLziV]#xV:sK> `u[joUߚ/VPIkQuu Z ZCEop<~h8y MЪe"Z67r~\7j,BtaE ؞(?-ΆEm~o~{Q>PUDAZei}=[&W(bۦB t7Yl@OEK̪' SX<PHbD< qs;J]EQ"P*cH˫D;;\8-f'hƤڦ589;P?GRc%us۽If,ML]ͮ%Iβ"n,ိK2}} @1q@逌fpDfD5G𬪄-***EYoᰏ@1V#(! <K/e bVYbP"75E@~LR\>1D_$Y4M@e2zq⸼z?hZ 7'ғޟOHAle85xB !Z@' o~ZAޘ MC DsE%zMR.eI.tORo1/hO )&tshw*]` zi(kz X|!]?|~D73;h@ZhZibG Zb_Ux2=JS9g@ p]; nUW6v~N+pTjm:>ySZ YwS~_!n%+ĖGnq>t ڢzjzMD<{}N %"0k,?Sp\ƶ}oo^U,_:rQJ{Tf4% 9E/j&+Q;k*Ω̟1h`4x*YF l: {};bAwj'bMk' 'zxQ14i+zΝB4>_';1n<>ktHL\SU I\ 5x Z]v&W./v$q0ZXaR{F`%{9L d{"?*o!^˅$g=ߕ?n?ߴ^E Kw@೫<=>,Yc|<= xpZ VҪgUbdok˧BwD*5XbKH..~+gYgSdo)mi{1"x^ Dc쒬Z5DJC~*'p^Eq猠ώ&NmP$^”ִ T+0%$ѼzgC7gsNį ;h$LKUǬ>Cko?ԓ_y _Jԕnlz/7"Z+ :35d]Z탪F4h9eСF@G]i.oE +ހ:i{5M4thc+t n(b \MIQJ>kgd0>oJmIOatT`mzi|F'G&ke 3&o.P8(2ElD{Kj*Ώ[yj|tTڿV k܄,j&ڿk &UOSHm(Jhͩ̇?>c 0L,Tx;5ᐐJ{Jm׀>{SA?&>x@n-eRPTTŻm,祴?R5,Ƿ~vi{`>{aFgot:ֶ́!1%_QD aV0ZDpܦ15櫑P`âOkb*CQnar-@oWtsyۀu$4F۩$R'Ȏe#h༚_CWlyxdUomOsǢ @-wz!PUs0Z$_E D"ǟ] [Z4؅xWb!RnV5}Uѵ _}NW&7sn 4RN7֢M6:<m:+Ely`\ x?7/ PgTapHQ Ͽ(R]j_Uhk>PE>]T ЧolE];v޿&[q/D{Y/_ou[KiaUzj7_/i-jZ?:ߙH7-knN׍Aࡩ=оп@IJn?V׸`+X=SQf21i @Sjz]mxpMvW>^!~{ rLX7qMjh m\Z'lcSmS@p cbj쉡#6ͲpfpUUe[vxI5TWn/ ɀ16qQuI{Fo޵p/|JPǞ.Ax0p^M-y% hS} Nzh̃{ *SBrx!t8DOGPǭzsNiQwgJ)c!tm&NGxb74 ɤJgNq¨!Y*͉cTcᴡ/ @$A3ڤOcS,:cD2K=jN%tLC??҅Llw} `%MYdٽ11}z_B`Eg#Q_AaQ❽N;16u ';>]5-FN_1WXNe_A o=jL 図$$5dM#ȶ je9.ÁH_㚞e9F([H>wNluwϹx6Pz.;lD _~ͲוNSPRT::h ЎoJ膌ZfwKe: : n/BkhCl4dzj}Q@(E'`1?ekD&?V22Y^j5H-6ύMd02 `A7c q.tR>%8ѷ尼`2 pRG ٖ\wjE#6uyW]qMrl}sS =`mh>p(C(ߕQ/@re?¬ _^ MbY'pe=c86` jq.1!rEb~743׌u0*YM?kNV/`!W3{PFU`N?S+wǓAw_I?*}/8@ JQ?q#. k5cF>hcS8 \hv}0!m5ag`|UE/p:k$ QNU6Ј `liҹ!+9,#(&髙;ƿt C3xsl F*N,D M{F/NEW:4%<Wnj,. #InMh:mB#=t w{niroqCa27g[D7I!e>OF@%_z2*rUPMjH_r3=G% &!EɁ0Gƍg2AGڜ,n\Lke*o7?KcFN?5m̃D@jZtq-~׃ڎVt4;h&L5sOy2unZ?@ۂc?B[L3K?Y3ioj<{>,">+2 1L uwN3(}=9KL؆G?g΄=eƤ=ٹ?Ǝ9v^l)iFj ģ;^{*?Py HC/21[ߘ ލICL_֭ fD=iB"dM9S3ܠ1ÄBuگ\>i[AV\4ga95vь3K:4:r=>?mzLkPJU/^?bt#zqa`=ubs/ =\Wi~PaYi(=-Q4W_gUUţ#,яhthPk(w2?+M,6uӫC0h7;[ļD." J"UDH@ eP>)K 8kun?n?]\0j&WگmzWkiXwȔ1"q&OuШ}QBOkY@i JĶ_6}59 =+Evw]4%8Ƌ M6ZUMMl?h/BYJK夓xXα,S& 10r:=7谚K'ب14mC}:X.jq]2]t5^F:`q%j_%]n_ӊ%u7HJGhiE[Y~^BWCyJ_vg3VwFqo ZfyгŏX$5U€Fu.Nׯgˣ aU5J`+쩎^Əzd/F/va#W) d/ W_kLJh(_2rw1ϬmO u @ y~cMt|/ZTf?':Zu,1t0*xngahVVNW_Ŭ2Xњu|5|aaquvqnNnˉ ߵp"gdv,cMJeX"J4PzixH(ߝ1u]G?^%+op׆=\!$;lzW;Bָua6|\/5:udԹ#V/ G4!F!"D*f4T4 ,{A>>#J>egqnfƐ'361m2ʥ~YXUJ%˜41=3PwJPV)^m^$Y{g͌K!# wP3T9uY(ȑl~SF/b zBOOq>Y}1q}:zP.ZɬW=t%:]tTB_Rq*iB5iP^k)tvG2_XuK#kxO 9 ]1n)YnЀf?_̱zQAشV~up||I@zݗKKyL$ zhZ j[Y@۠N.@ P))׈zdoUEEVQ1֟Հk%S@k0| 5Zur{,G̈׮4Zy? =vu} `cum>ZW5J,޺}d.WN^ݿ"tSAw瀐|j ]+zv* ߎmx䨕^0 :?+@_ Onvq?^?&ܿ,#U\Ǐm5.s?4k Ҵ3m4J!K'wNg|F^Y~zP:築|ArkaƯjqbYa n-"9 IL8\$b|A<.ණf2X\bJ='0  m1‹(4*.R˂dLZ1cFqmbV8/c:rtosvT!h3 t{MtvcHG|78YWُܿB>0"RgwO5]>38u7v%/ CQ !dttZ!ܬis u O3;1iϱ.b$EI$A+[LIrL*:,0/(t.BZEda!:(HXB?1M:jK˚UZqNd_/`ausio؍߄?j Ry9ÇV 2C4ϛ+^k} h`ڱV_ۏq%?2ud'kkTâ\֏L v_m_$0>Y:=oI Ŀ{?ȕ PDc_+<"◇ Q~wI I 8!S 1j?u]r&<Dyt>C<\@%*X\!~gDzީ$@L QI1]"rPf?M77w˗g@Y=,zt~ޕO7r:m99g~PTiNwW&޼".`q^ H_V)+A,пGAsVo/k"Y:P@tӿbHb~=_?i'c&c#SHؔ괹;䯝U x5cDց" '4y:T.klJ7f?{rWN~SbM A{O"#OIo@˜Ψ֭g˕zwbŒ6QcuZ _dDgΘdNuћv =e  ү_,Wп^|Ϥ[Q~i %ם&9^P%o"O;SrǹT?ھN/'Q>?5 ,wҸV3Uk,a鱬n FsfI2 8oÅ_PO`w~E^BT_%%ݪG)sJ4y;ۓ·wNV/O}3=~knr+MX@F22)Omגp7s_;˃9{}(}mjZWoZpziyK\2Շr=Q.9HyvPL=~"ŏ+ֳZ/u:c8G%LwI<&9hk иsCD:LMKmi5Im,wа':l!]fP(<2*G l+w ;. A4|WPK؜ xQ\^%}fdz 5p  T '1JCic_Sy*hԐs]9,@͍VcYiS~6^)aЍ‹>zpg7X}"֕w`MÀy-ּ\_ n<Dzvd@:0&L(1%0:43v/Q. ;5am4~cu6otmJ=yE}fw{5C 3?:'qA=5p gf׿Io|/oI3. 5YdX&}+z#gh )~i㋟Q 00F1k4u!W|ziAqUDc\ZLH6l^.;$Z&ò+-J3Q鱮o%U& 6Q|wbUNFG۝m$^;{5=G~!nK(HܜM69MnޣR ys/_f|!< YPp.0-dH`;9+f .^E`A)r!~t0uO"`;U[($Yy]߉iAoMn? xN 8#E;3FsJ[fȖKs%y=r6Ik\^@2pCanϰ%YOoPI$D5*aUinwep^Pu\t5.F،d2;brPQMx+ c XAM8m Zq8,AY.|q zu9n}mB[Y}Jʎ;u~~~W\\_@[q-V688yQ(On2Ϝ lRMC4pW4-׺ue m7_ż!}b}5]Wzֿt`U7״QGѥ?kS* Ə'i^L^e\s_l%6K죁p'*iqޤ+MXe4sߠlZ@De+3F-(VܿWJ$' P!sW&5&]A-; -}+CO#=w^x!=ywtlS8G:BJ4L3U;_ܴ1i[]${,Qkp>kT]9 9DEZ@9Lr3߀_cpBAz"M8a1ߠ`q( V_e'7T4yMNt =Ѧm7u&nү:T4Ŭf[4ac6mɋh߉Nz<x%s>TLܙ:w]EԜQQ>&:J}M 5t~ ѰHD`ezzftҍ${_ll!=:AWY:=ؤZKX7{DVKi|n<;*6(N2ֽEʮWC !T"OoIi\ZCg _}hVS2ޔEz_xSe\1ĈF1s-1K\g j=tX(=#ǵ >`5l5(갾m(:5 YB3kh؏/B\:R1sVܐ[Y>jM{}4z%?7c|( NGI~;x2A,tlZA_n7L7=w]EKBlTsC6E^Kua#.E(WB9~c}U,EF&9&^#Iu:vH$ ̟b\CK~<¨J1دKŊƏKM*_9bN9#[>F\ %騍cZ1|pE(]vB^nRe \!v)!,L4Jz&_پ.K@'i 0DzEp"ejg}=oC&XˆUgbXjyz\ ZR&T a{YU_4Rԓwk,͑3fwoez㤧"Sx"7C{Or>w(\GZfM_zZP0bB+wEV[JWB(ꞻDf yu`UvwF]4JSXԏ[M9x+pE1Z_ƻ.?WDq _.3r=4P  N2c_<~I˅؅?f=6cPS%[cz(6ލ72?<S2:$;iO]XxLB}m6 c*V =4k2yz#96s=OW_K ~3~ m U OaBlO])|AiӀ|MD=6|J"XM-VR@k2m7}o"YusEӾqz.wvo`lq¼]Y>cKtBopuSE^U_=]i?[2Kvw\o7p:Xarn 5 Rqep0I꠲(v1UhlRW-rJhZlb X5_߳|b?o3^B>r,=}@tE64%K8His^947 vRP ;Or^ .C5 J/^jLZR(Uh5Xz\ 7mm/],s#ʙ*xyixIn!< т~BN;m~Vi&'3"˧|WMkf4UQDoLnd(͘6.aem5X{= wyַ9i&3SD/ AT;:P/kU'+\;(R7ۿ]x?T..b(]y]/ |'tEx_߹oV  ]jdﴹ!X׵o}JedsMZa -?.~ܿoœ7.iS 6 BF)$+Fhv؀CiRݭzK]ڀ_P?_2;zh~__mW dY\cr-mƍy`R_ٯ{tIorc-^p@5/[KV/~(V{ܸjBۯvpKEkд( gfd\0 0о=a(M4?C8[FP+rI6N~_#4_aVXCیmB *W[:B$+G>^< 貀\x E(8usqA *Cyɨ5q)PV+XN3|az%$I5(nh1 ˗~1%9]HTe]wTpF2_GBz(jw`c”0g}l_Dn #Y5fNѝƈN7'MwʦE#Ȫa[n4^cڏn"m-_l[ ݌s毸;>w󷿃>jDMr4!kympq;Z6O=/:ť">;ħn76yTiƸ 3DdWg[eU9_/DFi t{ZDwmx$b\Zo ;uθa QFA4OD]7ЀE=6_ Jv&<3=FGF#M'bLw)ݠ[sb;0F mĸ?oX-g HMOka[E7Aaߏf27~}ϏG{ծe Y,?I^3SY}qGImfBP`ԁ?jX, I]"Re'c'җ~~B,] ڴ/+:bE~zx?~zyZH` |8ft- 4t"%,,3tv/F2[e$p+7 8OQƻoMhԋ۬Gz&j"o.~3ط[s`O/|FѣZLdm!c&3 XqЭ}"?Eɿoi^ś P m_ܙ# $ra 6 q7kzHSȪ#֫!2`nn $0SAyUm&ѲXC78՘Y+ ^3.dzw>I;N*4_|;~R9l! [Ot}ՙ>:hZ#|HO-W*oNK{D@;6&Q~_~0A{ ~^د)L ؀ gt 4fm=>鞛sZ1y^Hdžp>@'h?p,hA3P&qT&FaMM`t j)˜`[^Kا-Uiw$\XDk3nRΟCf6r;LBurUO_ՠ9kx=>U*;Q&LBkjecӢd4͢ЩE#TRG,P4‚&c4F FU#EAgbqw#uth6qu>RBGA߬Ma}IDzf[V|U$kF;YuYI):ky FGHѢNȁn˝!PG_|>T9[/]`9NoP ?_ g<ۄY9cDˮ|: ;'Tú{RO :蟿 cE0Ƚ̽L]rj,j2Z7iBJXZktHks_:&qj159u8:gw>@ v0k1MY'v‡z}Q(mmd{vvxS>GcZ45ߎlG1hPcgC_8coB \\TAAY+ Ѵ'oOxגHȧ&A 2%Dm+'›`r ?oGEy4fjdXe5[_#D9}+1E"~F7S,bzXx0;ٱb/pMU"Z[kͥI%ӮI#|3?uk](qxpMtr1:l=i[[.r{f&,dw|>0NB4*JOM'ϱ^ uA5zZ+G8X@mj(}i*Eu]ΕdDj)3Ջ(s=XBHŌJd~Z]@˯Db??Xq }j5lG-&MY 0UIXAEk?x%'\:o`P{~/|Ʈ\U/#NV1d@֯~?~3\Zl/(I1ሡ-gZ3Y(m&Hz6xHq-EP 1 sfek4[?ArR(*>^NŁ^LHo[G-&⌺H1ږ>p`p3P%D`i6Axva&5x<jfSw盜~DcR0+qh'MBzX,I Æo/Lu/7/4(,Khb<__oR\YlEM ;]*q|/YLccޚ'Tbi<6M:'tXc}-iq+aYzr0!`h$k"]V!u7 -X wif 怸q\MW^p}~=RԷM|O\V qH%tP`6t&Dw!¯{qHK/VPQŠ}z#i9Bŭ?8ɚPÉVUfGC#3_o>6/1}2Ƅg' g#:1d*"qwvY_8+}}!~IMO>A݂4QCP,MI %m%[Æhan@s-B1xqN :KPCݽO4؂~O%|]:=|";Kg hNM}5Z6r>jv"F2@DԲ&q]H{cj-K) ץ鬎2-N>p4SHYdM1ŖG@$?-yG`çp%{5 ?Lkw=qNᐐ >-F#h}m/}^-Jr#X'&If'8NpluTW(*o!| &9J;_A\`ws4-뚿*Ě₆O(mi eyK_$sL/M7D/ 13ha,:kufahb+Cd [` mT]$PSH[2W<|a".0_D:,#f嫤-h SD~hs}(XD# BMF^4?v B fY8+wolM(bj(~uQଉx_~ ,(t`##Ŕ/=7(w7K` kU7Hc* /l3 W APD/2r5'/ZwH{@Mpe`&2͏$T?wjr1Wk?Pq b׿tl &RO 0ńuA+:i#\]PUd& z܎ϘG^#b|~R4'b^>̫*S7U6`'572/BNLTja~:4Sl14̿E1t.=1lv@aFIjkQ9;.r!D~ nC2;֧ B}{S}>.ĥc.y;<>G!?Dhk8dOeD\~-pvǻ5HUA MzGb.+ź]?@>b4 "@ Y}Uf#Ϣg{fY,ښ_H?11I֏)qSU(>07`<¬?NiϾ@ 3HO?X%j\q}Y7 Gl'`ae 40@=g#PGZgUhLyQ&/.7(¬RBUuJNw^na .C?}AC#I^QLⴁu&phh8 6Ka\c![&I1DUҪEr^bL|3P^.eS[^fi Aۤj H~;k:TR] @a*j-d\{g/#}Fpe?]:ءM,wE+x֏MƜR O/+6R!~M^l emQu4@#D p4MB$B:_*R,t~B;>_/CeY X~~!IJs"1Pv`ٖ̊/VS &Vo6""5478ε(3~ƊCt1Q^ Ax^lCav876_ M۵h>]{s("A(/ca 3,ɿ̳˲(gZFz'Fy=󣠃fd^1I\A׺!;Rz׍5!;Q: zOJӠ0r+^B%\ynǰ"-0 U:u~Q|F>#9!.vOޤA:Uܟɧk hi7jTAc4m5yёFƢqAd*XB:uc!BExKۄL9jLʭƈ":7{DpD#S Q>햧z8+dN3lB"T,EG#taBWϭck?[QGWԿ=kPz͢3J~he:w20%!H.,65TEglkAՈtOz1XQLtsOߣ4Z~v>(߆.}f`F3zl5]#]2~>u;ռl6KttNz@{*FWIgfȆLHa+@e-H6bAe4L _b;zsk!uK"/M@Sj"n:Z:}ľ;zv6預<k)M؈ʈXk1S'wwL,9FB?`<ͼZ A?lSyEo:im)^-1b@Ρ(|Ob@:h V;s\BA P E!M@E]S|)fHi>NuJqLék:5"\>}[}A.)1:^=ηXmP1 &]ge oj4J((tz,@XWiBCq6?(tд8"$A8ܸi`sPu#Q I*>պǏ!2^;4{ѐ4N a)N_l%4T(yamQUZhڠjv_U(/4jzJ˝>"Y%=ر~cAD)UfuZ"! t|v",NztW&q~V}l G` 3'6m]Ĥu`ɮp6YȽ X߾)Ÿyz5c!5=-v޼j)!kEL&kDqC!`:hD[ GCF51f] HR!ab*Yt.O"w9wG߿Po7&}ꧼ$:q7ơ8nU =AVxSQV$Nu_2 킓}6wX.&6:ufp+Q9o|AEO"q"2cfi9$P_ELZMm?у~K"'Pq-~ř G+":&bvz8U#EIpSxa \i5fOT5a>&h#*hdIXyQ<^wt֤! 54~FlƕK-)]mh^pe&ʓO$4vWpo 1%?Z/͚߉tk?Ǐ~!Y5tp yc:6uXiKkVߋwY_-Oѡ~r-2 \uArIm?/I8_gS,yJUlr>C{w('阞e[O /G@dkOsΡj4}watrWw#.v6|% hsNCC/7HF >l2 am _PSsK~MqOr@7U4+ /',"m(m&ֿ,ʁ}|<4w?6kuo5TQZg It?/gYa PFJ@X܋QaTn{O뼓. UW`Y )F R>"JU9[Ctznrc4SQ0DtC4| Sbjt!!VH5oL VU͜jp`8,NĿe C3(=S] "@F.OcTToB9tcܒͬ$fc-:5&ZqQOt<sh~Mg@7iB/w)+?P6 KRZluY+d.TW `W4m%]?-PF}"(nCMk 1euo:U&G%Z5fk-뜾_'سNۓpr M3[PuM')oa.We+P.x~jmW0ͬq雛V ?NU)Tď.hxq4g=[^ qfq4_i#&r_U:7~4/Lμ&> ؁ltaci҃pⵘ4ϋ.:C`0 E<"$(YsP].9à7\ti_:~K)fnn c& y-o5x&7 3^ufh6v(̜ {EuP(0cܐ:ߘ!&rwШLyV_-0ۜ ȉza湑[߷!6zfd>nD&LͅEg&"E4OGAhʺ?N8pΟz|\il>N57 5\/s:Ж0E\̘Vco'*SK"p}W w+jbjܫd)7w@~͉UQ{ؙ '6긁FH MMSȈ>Y|3m gw}D=:6-k% 4IV,8.)mѢMqgȄF&qPE7-æ/f{|#y"R#W|\8i_ ں#Xql!>>gVX0Q]i r|k 94 &X] bo7R NSZȒ_M 034u6sxa_&pk5>,o8==!X>6("E4o ܙ`%3\捣{GU ix\uP'qnmͯCxbnWo RPC*^Ku!G[Ft6_ L3vuN7`TM`aiOx#uY_B篮߇k4~o@ Rշ .豈=2\)q~4&Jvѐ( iyV{} a d ߡ9hcBPs.躴rhDk c;(CSԦNؑsASPU5EoXWcjvڂPfan{t4h y>ΰ}kX(hDŽ3C[Cu`TE‚>o-=W!emԡͮo2a 4nj7CTtSGs`L *gZ➱ȓ6пW`@uA1`1-d)@.bn7P7D}^H_؂E_(. D룁1cYiIآRyա=(iML?}C8F/nY_*>NgmÀ~:f Ch9g ډn̗RLz~~^#v$~ X9 Z"8iO; g7cMHtۥp. Jrn:ۉVݍ5 ǚT=0Z3:I6c]-諯EÂ4ڿCSd]?Bw$&#i 1wZw>ѿCoG׏5d a1V!&'j<-^1ijhO06m NM צ|gdOz#0ьU :عG3;:>7݋" bNhO5fBZ c?" D Kr5m`jCrcNWa 4T00ЀA13j/9!K4C#@$]>jV" vĦA9Rl-("û]a )n,q;NɌH<>鹡N((s!fpD$y:ik 5WKxVPl.`b?'_[2՞fp?!$ũɽK:,?1cCQw{ibTM 7`"2-=E^{cm C3xO VNHi>gE *{`~Rc`cG`õU hpw [>if5g=DN.'"Ӗŵ\/\T=H7՟"Wy9J8;;m~D}SoZN7Q:04#FG[z4B-1n B^*ʇphתS(,2d9 <2Ww?Ab=`D{o]iq7':TL7|~v\?ZtKH32O f 5"=3@` ޷ix>h/Zgl&g 3 w~RH`Kfln4u` hV "8ZYT:Eb0j'V4R]LPm b@:4\KW-_ ^NFx'=nV%M=4 ~[z\Sbv́?h Jdp$TI8i쭿ZJdp9 oWn5]#X#)mה-5vWpn sY ɗu۬i#'|,{zvi ^BeB^ب!Yh~IUGkWo{M~`+PSOsɱ \cQE9SPNXm |;|hPF@KY4]$}5M{7'<{UX /|PC. N@Py*d`VU{1U]MiWحz?wqvG£!DsFyeb>"15R>llJWpv?z8kXpFZAxJ@GSwŽc؎{9P [<{Dž>0](<gFvo\9?/y{6:Ǵ|8Kq]cyҏ%0\3=4MxͮF@DBRTqˬyDc2Y/i21z=ʃR gѴyb$R v!7}gqۃtYi2i<=1=?&\}Vp+khyrYd&"hN\/]5Mi\J@W 9{{|!:dqvu]-1_U( K9䬩x -`}05)[CXziUv3c hw s< zZ*lϺP 8bf|hi㿈f!u}M؆3XR ROUc1l@OQ Dz(SQs6 ߠw>8~ܖNp3}|# rIVϖ6%ѫ5"o`B}E]|oŸ]ycF4_qUЗo'}ܻ\6(0sOlɆT( Z+Vpp.xB.0JArv]Pm+۸ϋ4G"~MEw~~޵7׶DIePXnu'06[r.Ȏ\J1V))>o&f1k9@9 Py 9dZaN]:2mnjdB ƠR95#/*+ L>։\BDGON1X~8':uKfm4}۷kc~e5GLu:`fv5tհ(ӡ@yۿ]_cXto^$8toե~fY'`?f]͜[hλF:TT Fcu4_:hn)Hc3qxt#s%*0TW)k[ra8NNT񇆺Yo C/}N~ /]*'iM u@оBP2Bo!o ϟռ R5+[RHlO<C#=WXjaym i":5Qƚrk0m<  CǞ.K^{بje`}\AM .of'pD]3GE\q9Ђ] '?[c #aJ䧭bܔs_jN]_+~.[mA%ײk[{V38fubۤa^^$ׁVJ2͞%ua)7`dP={?wmׯ^>Ͻ%:ͱ'{5K/x6!{ h}7:ߵqNUpտ<8f/@T_6.W)߰VhtgI-8SwL7DqF~Z). e ڃ=i 6ĒY^fcj NMǾ}>腴H?V5-W_URNfq}=?_I/<^]mKGһYpX'Y+mX"T3:l*:5DQF lL_hgYGxQ וp-;VtKJ}|#D)"Dۈz 4Ш5C:`xvq:.__)&zX,͡IGAPIX,^^s|SO.x#+d:NեY-r_h_>73[rֱt~:fLHiӁi йF4psþsE"2uhP&:?G{95f0p~R&[J]*xoP)JcِO VEy3}vf#ASxQ>ǀe!ZWf [WH&B fWپΆC>kLH@f0/zuuikD2>(w"eX) ך\C?'fO;X=ۣJ~bE7/dhzIOGV#/;}0C4@ݒnpb4r:Nic;u=}6;/ EͦBWº yNv.i=2xXqp11[!ƚnm.P;*l;6MRU)=£?_onWvq]ps_?pȨ#҂ $~"EAvb!|iGezRlllv"F~!e{^ 9\kt6Uu~5nVߔ'*TP޳hy!7'tshNy{Y|o撆,܅J@y,YF9S.m/XEGvc^\{ɖ9nmʪIB:N>?j70nBMيfKxmZ'E8E=jڹ+K9߄,D-mΊ(tcBh$c/ ϋ_Kΰg~S*j}. lTiMul/ h`,TZ r<7ZjT a9;II\ r/O$`Adž1b;˒k_ H/? Ik|Zwo޵ ca B^-m<6R QCe*#u:+ `_~&{Iy*|~Thjp `L]ݳT?$1DtS{\5=R &z{~03O_Y `|`fTp"L׵jI5werlldy@?z=5*Xut~D';զf b8#8b3#4ȕ\_&>H,?<?r|mn-hF=Mu[_!~ni?!UҮ'5"TR\pq>'~ǿ"^?>U5OԘ/8fY7>.PgY7u6Uш E߯'CG :%'*lܻj+}#2W *\95WsY0{P[]w(0\<1?ANZu֗jΊ,f`|+IGJ-̄BQ]Dv i0\5٪毙Y7*ĉ SJv߈-}NCtw; :_>כz$MN McSϏBWE, rA V>Z6sClˎ!0Wwlgj'1|?7-2=oW%;xL@K<I#=54S1A2%a9*ׄ^]ﰆm]~˺+{DKE~fr93Ly?]% ⿐~A$h`4jV h]>}l7[/߸1Z><{Y@*. Ů1CVJ|p{f,_Wɽ _[}mԅ}{c[sbޠc4\quA /oL~Uxu7Cr0i` =l*Ot>p?@7@[ `vi?Dv(5iI+`>=(ŏO>>~?e&D<$B~4 mΚ1kE _x|38u'*xtb@8F_ xz&T̀sH,y7NW[sn؍^?"(S\Fu%I߈ h Fr\my*/ gpBmDXk3A|mkrq:Ճ"|7 .Uqc:6PZ|pkCf$C;";9NآܯwϻCsSjaE.Hz蜸k̓ aol~ԩG;8Vo }QO8dg}N‚Mx#H䶹,}{vu=c'Xi+C <5φ'n ?"x疧_ς%s`mN2CXUnfE4K=X4-<1PTMjG?/@3U\0*}~aw0Oq5ӧO 8ؓ cz/G1<1);4|_($_}|3h!N؆* r~Վousѹ^"nmmY# nX sL-ș(6bwraUʹD;޼[ {.Q:cdX4ve?Lrq(:\1$#Yl㐰.!ER%GiғW^@981b@bCx4z !]_ƭge%{?пy?/ ~ KRz9@YX svWdTO;Δ95dkz:mר`ylL\2Q|lmmmEAp`w]Uq{m%˒K,\?g/_+ %/ pį|ٿᾊ%WOϩ~l\"ca.1jׅibmZЗ^@oo[x}V1V?zpAvX,+gPA)[ha胠=_^l_!|EJ7y?K챓*9YAuxHTcDPYY꾎0ZI֭džYD'iSG~XF_ܩ9=`2K=%Yixei^wmW Rv5>aBM:\,PAgNY8p 4zc^le(mJNt/]zwtt.88ԩQN ;c!7'5=l\"*Ϸ$J*kV(z\tgpېSt4=\!z].;_9aUR,pTEAQ !9C-y~f*8PW^_X?d(;۹wV7J>SleA.`~ʡ$c"s\]Y|q䱋CZ}Q|;2D.r =r#?̳W26}XndxȈzH$\%cBa(C%G?mƝ{^ICzFl(AьѠ}O jX/4o}o}ŏA&X@ى@+'{҃+ΓZ 1ilHQ`leH;{'0~.g`D #K_[ynGzG?} |RJVa*v~Ach07)Csc ?_#O9M\fӪa*;.u)â<\˸2?XyI@-X:PNए MaL`Fᜉ 7k\+.}yX0eZS:~ nZ$uCOܘ~Rv2yVUf.@Q?O87x3! Ͳ DA!h foXb[{Q& B3׬ &zx/C5=7GϽz /~!/޾c"y^P)b~=4#j=˷.y/i8$#@ȠRT[4ފAB;7I]Q N@` 2iYĤ?_!(MUor:[&6HOk؄"Ƥ~j8Դ9hE Ao7`9P_{ifp9ў+EL@7D #ץ/0/.ݘ~Ѡ!Á׳)G`d#?GN,:wW5H~s[3#,O* ٦)+輧q~K &x?kIo~dH#u=UcHc r}C\zTcV*.ẓM[My<}#"3F~5X3--^_%f{n-gETǮi}8vTET, {V瑼P"&癠x $bCeB*C4t>НЈB$!5O*=dP^"_slm湫eo9}it>R]QH#RO7n5ܮXv:5Ek- ]L:^d0TD01Z,P@N*נ9Z .en|MwM;(T?П^PSYvwQP_ѭ4B*&#q 5lsM+; b28 QD?,'7OOvk88=3?ۣOw^{+ w0@gw`0XB̬Ε'u,:&bu% G.,Gq"(vAl2hӼ>.] y cV ?)I 4hgyϐN\'@_w*ZU!/Ykpw@ <4 +LM.gsS ScKav$h#~W)M?Bt)fa[s.UM߲ד~vҟQ"Zހ~h #LcGi7%V*bmV)_8+% aS?ֿ X>MS J`qH4 -2O7,g{5; B stl?ۚr{x`b'L_Rkje(o~6h` >/Q~͓U?/9xt=zQd~wo&INQ}{?oBՋmzbgofԫdf>>}* vOCDB*4c)-S E I?D),VOX0m :W6Ku&T[UI-"SY9\¯( TGg6LgY}HΖz\"sIiiP+'лY 8И >S']Q_zdVd%pOs ` ͒ ١kFLWXPF{/}#kJxϸOwز۲uͷc iMй@s"]?*~5D 3 g'L{^Y;Ѩ=TUQ2QqB]ꥧ@g gs<TS#f1޴QTW%5κf#\Q-j` Mu&m[z:od/-|,y ߠML셻@uZ#&[aدuX1=Ir]/UP}D A=ODnCW6~Jf0qչZ vϏjk^S:xWC5P* 3@ wt4 h%)PlӽGQܿ,IB6jHvn(:(l Kg {/t^ȎǽO&:@q/?>QfX!ZO 70NW7P!&><~|>wE(0fu>OWr밁z7p^ cĞ߭ﳆVR)'QC/?L!aV4zU?qm/9^8#A]l'O;ёuIͬBH!K1/A-]#¯W{CS:!]{K?/dɛ"X̉{F>>{oDUwsF5׃lT[H(^dfϭ8UFea,*?d-]C0='{̝C _~( =S_`64ƅ?`N4k^?Ԝ6{tr0pSCS].zv+X򈛓h!/\^䒧dl-,@%^z [qIBW lȫŘ=WICAIJ!L_ L"T u?B"BϾ^cϘ@lϿ^*.{DB'p6im{S~ے|ӣd[^2Ƅ'_ A>PA2ڥ?=Zϫ(ԥMUI拻!֒78KLJcd5|ӄ@.~˒ 0uJ*h*OorԂ̭{)nsdNLF!f+sD3Hx-;j^ ~#i%ߟ;)~Dsb5@M87zNME{aD`dx6.J_1=֠" M[$ƗO NVzw+#XQFɾkyO "`Cnչv1mՔs65/Tz-~(&Z J/y*jcJjjȿC! S=1V/F~twEп lSzRKМzD6QIBli U]^ȦS׳W6zZ~XO8H<`I՘w#"8G*60n.`|8!$d|/z3#o`~\ #pz%UOF1p|҄ξj`Z}|Wu#`l0G6ۆ6) R3/$wߦ>Z x$_TXbD_C3kV ژy ^Th+'] -ү X(''϶t=O[qZ^Of^*L_qߊ;>Jc 4 q2Ћ2 jTQ3;HW,6:%DVX.2Uu% \G n`Vg#~<mk>˹ej6) ^'ʛ@mul|/J(~6Vv7bc +yƙr3?>n(=~?M>1bN7ڹތaR~ν+kbPe9QR@" v׊km}mfMN|3k*/?;˥w+ɺӾN,l}zsĢ WLi ϧyVoBB>43[>P],;&,3Lx3"Jy÷[=,1bB[^ešE7χ{we. ֯&TB_E}r ' LP z/ gO`9d`=e `r | ?7z"bm}Ӿw`GP؊:pmI A*|~~J  GźKێIuXܵ`(*66 QE8Em* PkFǣ>?+7EE[8ir—]_ź/^QbfJAjo0ܓ{v0 o5ƣ@ aKo*~!C9zMtnz(iZ?#_^0dŞvݛH~Dyj&vj?S?0BK_iCZLE쁗t.-L&pG}}3T]qoSJ=o idʡ ('LB5 Ô?Zq{-cv; W]g={?'QVxLխ #_+~ Z~ڷ=z"tȖ$cA@.AZ!$RxS:y)& # -E/_ q Ve{Z#V8@PJF[=K\l-_- 'zfJ`JUkӰh sg=(mSr+c6⚖IȜ)c5g?9Sg<(Tc$'Na; zkP QliZcprizY4֒׋f_Oߝ1K5h.x*oXOګ^C&?&?$Fxt\rn C;.?3FX[o*/hMd₹$fi,Jv]0=zw{bbK1Q"74iq0%z},-sΥJ7g&`U2z_R +JVcN?$M'$6ʛc"K/"pi)U"l -{nk3jjh@~wk H 7l}Y?Z+MNA6 9rʨDUG>We҅y͵0Azd,OU&ƨ.T󹰸]@c:(PMb9H2ǂڷϟ5ZzW}}~坦kOEFU?/l#O$UkevԮoJ ʐ\Z6:Xۈ\aL9h],W}5YzqULKHtU5bRݔ@Uvpa41-n<.KdGO9:s-Hg]߃Td۝,h!#tZmJtM,kN2ׯU?s5|LQ*HI;;;:`pi"_}F4'WMGįR{M9{߆3%E*`' `)=5_V~zV+|#B=~w<3Bwc? ,+Y'Ϭ v!0x>Aw̌Z{:AϯX Vx1r ؿ Q³${4~ZWOdt5'aHQ[ O048Fb @_^x# wCJ#r9 yAr.6VJ4 &(a"Ub J2v;bruiR `rЕ.ɐч[]w#atAU R۵4HdDzKn<d#z:AC_`_A(M>o_i#6'0~]}* t؜jx~߷u4kV]s'^6eCos9=eslR]L\$%HhA̠]T!q݅`6F7=7Sɇ3yqs^]S*0+l3MxPs %=~uY pN !Ssdtu g,Q/==B#|e*P]g3D^)䞎qS~ x~ƿY|XغxӅLjW6C^Fymct h_$m?K .ܲ.9P^o2 \[:O;ͳ7,}zΐ|ja$͠+f1~x& xɺ)ux#>Q|j9A+9hb2U%qi5<*x~0žY\Q.-o?~uid_Sk.mX?3{\42 `}mBk9A.uZ騞-d*Wjŕ(UbϯXrk.*J+x*[_nf HscY'N$a`(|~˾__KSܟ^硋,"{$uĊZ'DEHPd2f-|U-#nsѯ uz`S8JA2wQ-_aɳp"3F+zB/=X)Ӡt i=̒띑 &5:ýfh߯Myb<:hPHׂtR JG4\PΏj)iؓK%6([/^s9 1(朿N[&6pl)S(N%$`^-?.vj [qlvi+zDV-SYz#w(H>Y_x?^*!aci[WeT^gkYFSQACMH$_wR^UW\.jjYhz<1L-J^8}шb쎅J /6^?FHhNK8t[5N!LLO@}!ئ-Oj\JwWؔOnۦ@ɂiXOkɟUt<|\WހhS3 ;&M& e? z:2ӟv^^=~rz:f `Aihqb`o|)G<y"ND#OxO%nD_0瓞+[~ ÇO'϶8߮nq*MQQ tȓ),RV7гӃS-Wؿt|Y4O`x2xDS JSk6hV jb '>[sA->l 4(ksaᡧp/&z, h]^ө3cAb4АM%R6 ?{z}#,% D׳{ndzD ^ $]CD";LX$:ٖ_ Z#OαzAfp+tz̺sNmded~2ԉ+$aYKDbĥAqJCj.u͌x[_^vMeypiFܐ/?nGNjvA^v*kҔ&7!IoM4`)洢iXZX9{|EogΊ!/ǰ>Zȑk<Bz/DaEL\#UPPcOOofhb'85Vl (<$g{&XM-,6e?9g3W>VBBpHP" "m0'Zi@m~:KKS}}|Ӟkjd[  ]2 ^z?K6Y޶w R&8 (~buoa;j=g_gRy}9*uMo.0*/5fGP1̈t-7_llZT8e4V@AoW/B 8v%iCOeT,+Iy|R},)`ؖGS&B - >Tϻ%{+XO\X3l31[?7-n~>l}zJCO^ %EU8,[zYdtx-FXZ_usgMDy] G~ >jvvy{_N7CM92Lqx"kcjY=x4t ,naE; E)~' VN;(%zKS<>0|J^Z_(h܊ #shθ /bk2-U}0(3fjH@TS+XDS/Pt?]Y~4 [E4:Q#,Ki]u=?py=yRSpL p &?``\w)h]v#硄p0F!@gN d]+&+3(U Ԃ=9P`)c lY|= !|.>3 ~4Xn??`^~j}91[$M~0M0ؐ5fT)ߘ[|,TX!P'b&Z_ 60iRf/Ym+\R-^D]ET8ڃx f67.Hʥ/[> ~2 C^kJWJZ7I,?ફdEY(?^}.WA+V@!Im6`=Kq/q9&dCk5++. rZVlߚ"yЗФ݌}YX | yF4Pv]>vvfW=;G$q~' ris9k%?K3gMHif} h8($ͼcM ɭ1ب3恥ט^~t2*kR=ˋAéhrG }}ש1un !bS#5?h1?bhLH.@bJ%@tdlP?TPGF:=㰉@Uf8'>C, zF ^Cb K#=Yr<W/2,uٔEf0~@ٱgf;Emxg A@"/dxl>|2l+hC Q xF5_> rXB)I~~\Oǥ^ |/>33ٹp H@Хn-hhCg.)a@h;wY[soL}',ϊEK=/KL +p!ˊ =cK+w!c˾|~K '!g KlELMſtPg;}M'`p*V̿B__\,k06t~}?8V"%rҟ~HsN½/{m(ܞ_!Dy*|![s9( A5K?»<ğ(J$荗/SV գ)Xz tjm~~P~犝:&ר_w~"zوdUP bIn5w&B;@thѓ\ n* **FtbXq}]냔IW쏳yz`~dI/WڙiϿ2S͢71aI7 ˬ9rz+$U;ϕjI8Ґwx,]ImVo:?kO`^7{5Ao{.վI? vQ 0's}?m_3hVB!6{Nמ})v_&~Y^}@t|]YoHĮڷ98EjeɬcjI_󁰻A.*7Pi oE?d.)mdQj٪{l[o[;#=|C\ji|M.*^Z]/)gVTT>FG v$l Fֳ7-ўD$0a]2oeWKr^^8žIBIgx?KK~1&)@=p)wm iЀAeòKyB'bk=kݻ1^lf54Ysbz dRV"350VuAʻ8ik0W9}Gl/w\@Ccn[=?[ AV?0QjjVߴ)y <ӏ߂귄f\{"#|繴Ώ7 X"Co[Fc7UW ]} {+O]<5JIl`{='`~؋ˉ+OZـEЗyaSSϙLAS &++نI-__bV(&N zߧ$F>YOeOuN*^ߴmpP&Eز_k~M-e__?>?dI?YY??t}R$y叇!7aUe!/ u0 990)z˷X5&Tcc%Hz~\䆏0V085^pZq--_׃Ogb),AϯgyÂJ>Y#!(L| ~Y(ߝpq:V`r`\@prUaCur^z^Cq%5gu}38(Y2WZx}ec"0<>8].#82ߌ}||^+c -l}\VW}閅^n"|zpؾ lJ*eV\-~>@]Yi|uvȎ'mj-&Y:Id#ćFZῄ^]"觅kJ7N{oqXc8fcE_HNH1a^7WpVoێ%kp`~zI^{7?U}A_T֢H9|kc3 $//K/byjߙ}K{*6 o5>ӕWFVyD! /{J!4Ϗ8y/`!9|k8 S9,NP ֿJu NC2ZTz]E?Yݴ P̍S gN`=6 *;ڳx\"]v:z=CG5Xjd9w'J;Jqҏ1%+XMM9Lq ^WhEm"Ϲnc {Eyf6ٳ>lA<`|xԀKe 8.1rΗ!8 _xri~__߿>:$8$['+S1;Wp;Z:wЀ<%,RN|B7ۡ}L9"1c4~?&99n) |>>m}'q8\7?|]ao2y=VW}(ͿUG>;?u~=9Owz=[S(M>`QsඁS/|*Hp5a_e9vfF~Jlz]Ez,?[/vs^xpQ1Xyj-ilr﯀" l| @qДS gj;7!7tiqYQ{%Kw>fZ&dOc7'e13lh3X2Z%$JJ]xpjÉ$-,cK4/@ P6.I9Z?ׂta7A|uӸ? įq-H, yE+Q{Up|l.4xQM}`nXaUWC4u64$ !҉uW Im][<8;$ Ist2F5>J=PcŒ,{ߺV4{yw~(uY{ͷGF  Yvv5F @ eqqޠNۖU}ݒl@Ua}(/xc4C^k_םpaa!`|yցAޒGp3C Q $w'̬g `~~G$?-I3#b3㱌o):Cmؘ ~2;mt?|h7M8D~djۚD 횰t 4,8 gY0_f M  xV}dV?>Y W O;$@&N d=~oH?I#I)dFҴ߰uN% rЩ񝥢T_jRfAX|,h/=蛏\Yw %Px6,OW|A&.!H+zrɬMa$KI1!U4D3앤r0F;g{v[o>qo_~Ȓ%C_ E.:bwM\Q_G]ε7|оwBCBzB'_V7xv|AopտB`;cs)=t^lo[E,oPWX@ݲ_p.Ya7`b<Ye)~&"(ne?B.ڗIg痔 P+g>j3*SyM[9Lq\f,=l?J>p@ĒLO>Ҭ%G/n6?dS\\MiB- ߈:UlSrx7[QNhR;Oyb =HL^B_Z# `xmosfO<K΃&e5 @73 NSqB3>b)=X8RNpz򌴤..ՒT}keKNmG =.}|`_ǩz"phu^_OOr5e DE$셵gׅj^׼'@jv.X!%U(L>y-d;NZ)tmAե k9iX8 u{Ƶl6]|_v.URJ'%-gq\v's"]z@c%(8Ok3/1Ë^˟rz:Fji쑴<B],LK<ǀb@7j@w -J{ ={jO^9Z>)N([Vx3g.wN^Ĕ~&1`Owض G k\/s&{aA3f{I?3 83Xfhf42CXCu-}=b!/zUe껎8n%y$((r=efOxqVݮإ g2kmVfȾrz[ASl c|x}6MyxHB0](Kuڀf?d"×SKNɍ?_*+uX%Vpo*|mAa-f賔Sꊪ/UOg ɒӳ˿~Yڑ}J;9`[mcGϤ?,.c^j_U OY:KwoV[=;@"IGzA:W r_cQQ+ c!_Pk$еrS9V~=6H+~9s@~w_,n@`L ٺet$1*(L׏?ly_5w[YTfLܘ@V^̳? Oi:ۍJ4)4:d]4oӝؿޞaVFy=]/kbh4?Z,rN.n%汖Zf._Llό*Ѵ9Ѥ7c,LV^k[>2SC~MХpƚ@k@̳qis$03s2gsU}^-{MofG7F$bf";&gT.[y5S z kJg_yNE},+#eb(?6T^Z&[p |=Wh~Z7EٜR<{?SOvk?#7r8}3m8goжm .(c;E.]~OH+^(θ2yČ]+dw7a5?gڧ60VL~J\qOk)\g;*X>%L\ yloBB>|m KYG'?|ȐUfy bc @DjF|-Cdlorrx2V!4i%CXC`Ze)NY eT5`H&ڟ,Aɦ@cTpԹR󨋼Xya.=`6G^>5&3jⵜEls=~%n1kv}5L6 H9_ߏ~=ggFb "k-XN@*|&w1(/g%qxqrq.7:T(bj>>>oUO(Wm_g{n&kۖ\ 7@ϫw}ns.:{~Hdz8H@`R#*lV7,p8$KAʳl͓p/O7gLNcMr>Z{8DV2ׁ`h'sKJ_5A I}6H7zZ_Xٿд,9]~x~P~Ծڜ?cA$JK@ߙ#!;6&,|]܊5j#u Ib2;R2fٺYAb1LRlpױ'2h]A޸jt=g:St5sʹ.Dw]JOJ 30`ϒ?-uf H`<<78yΎ a:5 y@Ή%JAgUCB +iכ7 fBUr=fca`!9NPUY`EgXJnt q-b} ( W#?⺁ N6߭Z M׾aEdsF6E<~,^ގ0ɌHtrN5>,ISo )=Xrߎru7 dzjy_T55=)˫;6uSb D<$A[BFٵ6m-R"Ê@6\V}Ⳟ[ay~̟xn뼽8D14gT3sN@+`J  fKPVRDFa(.=W?f}u35z}Kr霥>x  D 0Oy]dwCs JE: sk0wedgUuw+iXC-f$.[}Dn80ݨncD5OA9:QY76EU@ߚl9P^V@u.Cq%k xZ?iԲR VÓBO%5)cg&tICϺl1_c,7z6V曷\:QL4zt{AD_oпa<_ P7T7:2_-WvovnŢDjbԗ{nu͊͸h+=7E ?6]~tgvh t}qPJ ~tkϸ?+d [x1gmw})}cq~@h8Keg c;wL,B@EwhA: 99{ כP=HZ͢=d:>JHH "n0afT/Aя/ۉ0Q.yKPNm_@v&`<{-^m8do^>mkBkxfcmI Đf|^βO7OH:fEr`]fv<-zGxv׳ܳWYĈPh?QJ$U]J$Q6w 0>?aȾ}u?y=|Ҩ_kG׊y_lJt]0%̎ro y=1<{Co{\,)2ۚ@e irۙ%i8cWwͿF~; W g&D)x s`6n̐RqdW7>~kMp]Xj^v0p+511|Mn7p+ `/7#};ob"}LԪƖg~ԧиk-h6ooWG"y5=J?3Xo_he) ~tFN?S}[jӻFT?D\K;T_;{+5*}VM`d55N 10Ꝿn|\UwS}w+ V&ONJC$P Yo z"X)VO4|q|~ToZWW"',O՞:6`)c'M6;}&8s};7gP9}%׀Swv#1.jU(C|OT6oz?O]~}մTj6} l2ukV,|.9iK f,MRXxPͿ7C_agܘiU2(ė_420{wˮs֊AzE7l,/t Nǃqf0j:_OFZlH4/ $N쇀 > RPL@6P]Hh%>YòQ%: 4z\5P 7)S,l&iގG`}=.bϿrǐvr剭h& VTR:@sk>6gK 0 KiJ|1'^ )M;jUƓ~h >?܇o}J?"NI*8WUdڐ<WUBOȂ tMo}i n,kuGj?,@]}M@ iؠkѸ߬C%sޏ@@o&zfN753l͹hT9sYhy{e8w#Kb4=>_zr ou\ y&^,ss0p sHQFyN^`=3a7SC/8=v~: v>lo߂v(W_vSW˛?DULHX`*p&)d<I+hKfg$E) sJs_V}p .>dVͳ 8> u?y 9꧝ۅS"!q c$& )3Bf𪾻KD䠑jܷ0_ծlW%}dߟ]KפZ }K70*Xu]W ?;~U)w.M=}M~@ї~dw!vcct.:=Gq"{hi>X.+` sڭs1NnUUQ1r34ku~|6>|Kq;ܨL(m|$%p? gR .װ5? SXemaE]Sc!/VGZl^~/pO-Iy i=d@D"0!nMa]/V/H?H0O`/rm@{r-fQPzu0}78退EgOl|nƐLWkȻ^zX,$*aޥ}2F3xJ1BO`Y\mx̌uLGiW lA 3A*e60OL9h%J=MèϚyļޠ)Wwk % k}=(.(*K}ϖL&^/5tR_p+"b9bVdy3S^ ov"5$˵FfzKx?/`^M]Ӽ seMq(Wj7l<mXKqS\ۍ K;~)^_79W<ы v&@lSmnN7INKpL[c"׮_r/͍ܼgSw!!:%glViou=V 8n`:XWc >Xq.+?5P 0wұm}2upt ̿ d:a3kokyc| vb.r~ =R>$?La}~7u!bf=YH`zI/X_gŴ^r$.d!^(0ڭY[ 同<1wf];dq_pں։5`Wt599Ke1_cEȽWU:`WHы[孪9LܕK0t"4̔=ҨIFn(\_٣|HTdFÝZ4!`W ,wc: g{ldůO{dư;_lT]Ty(=nj~5|n|SzRΕcVߖpy/,vތ̌<͠60`;#Oܾx<^Uoh$S, w4haf6wςO6rݶmT˲Zpxفj *~I!(\y‰l ?0Tl8Uc[[X +QV̒S c՘-f˃eZtӰU3WAS+8z3+U ]|."0ˤJbh[`ʌP߻C'sqcTdwVAf5` ?8G|$Ky՘ OGzkeXYϨ#xgzS'~qHQ;X*4x$ko? k$x(-8ߟZǍwsrr|w$H^wg}\յ?CA];߻~S:^=jyv S#lLxR U-MRSNNy^`}TsSf޿]OnSxZ?خ濃Dym]֎Rp_EKDo}\i(8o6ɚT{^bI@Ζ/Bd jt*قnbk,Sdb D>:\)cΒh}~),@/{_ݜ}@oϠj:|z3Q4GSM眍l=w:!=gx}1s# ~v[4hMҙ(ZmL;q=7,Q?Gκx́_ 9Ybd(>,l|$8 ʙi!aP9٘_@p47> Dp1$h p au!VaOGl?eo`pm~٢\(ދ}I2O` =۳ǿ/2';d$t'1 {'Iܧ (UxUwri {ȧ[5"|e>.GX'E Z2^Zt &Sfx빽}lCj h`"8mnbp?PQ_|F+*M P[`["01 T]>!R0PHJ G=cUz.A}cT폆w?:HŪg=OgՁ(sG:*-| be;L_ W_j-`6yrU?C@bq~)Gt~ze:i{,}(@xKX}p.8x~Fa~;sl`ɬa[8 B#''+fO)fUy|9K?,q($5Bl3}`_?ؗihzR|d|](,KZ1s=N&qNư )kis&~w2EkQf\,z0: "%7@xKr "۪)5創Sy8S ^i(;Xio}D<3`"xx z9hq+|ôM+& Q>5˟`mۂqVB,9I_^aW[,ܧ&O6dRm>h0 \ۃp-3#/0wR`4? Dl~//N>^4 閦FIr0.Ξcrd] zՖ> |g!{ Wq0R ?6&{\CR;VN?@6eɈJf0'4<볷' KE@AZ;Z-Y)!5悟SSA\Ȅ<$pfDhꤥP90W[fI(I`t+p]Re?h Y:wF浅* W|#H[dc>٦7ǃyǖ1t߉: ^ohd\uzgoIC جR5Ua:׭i )k@%$iķѡi9GbW"5M, ^m iEyBzMk "oY/|Fu^dvT3} \~ozbVh+ ROASʔ=B;k X>Q`פV)sb7.y(Cb{.^!}\@DshQ2, =ievAM ,*> G;l"wUL4k8kK7IZ5:EՊ㲅K4m)}" 3m4Z֚0VKZL xyDmca Ư*>N ? t=!Ekwh2VZa$@~Ue5_Ű=~g> rf?~Oy%*?Iu0e|~3?&zҁӓB@0de?豭iU9Hd3c! =vQae/Kh!8kZP{sד!EߥG߆/0/=I V, #.>|?pLn5A77YYu&`rкYiyGTM~c"('2mYbR ))do"yVm`F9r|n2 4gߓtåKZ:N-,m:f)oE"Fn0Cs{T)V&l_ Q{~U%-|~]? zN* je7I#l^"*.cn\#u Ms$ͷ扬b]2c,xY1Կ~8fP^7i>\`w }\݌iyRJN8TXC&r_Om$ۇ ūqnsnis f3p]-K ~{ك>f#xԃ7_OolC'RIhu?d "dBGcHd2 @5Fp#{hLq;L?-~߹Xr˳_,|x =,})gy61pO]p{KvM](æ֌܃m:h7ZM1 !Aߘ_ bIj?$ 4"0OrЀY`OzRAS "g )S`o:}6y!c3dPN, \dZ* jrAټPTtlя&Npܟf5-L8ʆyYQ }O)&'(*fD?*dayJ&j5寇N Ob'@YrKLzX, +iZ[5Y8?},­`xb ^= WYNC. 8V6jw~0e *[P9@ By\cRm&osNo6 6+w@8%}L[yw[o& ] URbsoM-Π/>w85k4aplKDPc[)Ň%z{_8zvNl >g}g }>;Ĵ1? NچyYSc_S<':?J*]\'OU+,ߤ: 4@^}YWLLu*+9"1J # sh %! kYtR)<4vdzFt-/Jҕ?)(cL-z gP$k``j1Er*5@F;P~T X/ZQ@ϔM7RZHiA* M6A4 Hjey׊I ]^Vs;yln bNJaXtS*Q~&<<晗?NI ϩc=G}P~o_ڀ'4mRӿ!a6z"H~~a_sWrh0l$#oeUab樛RV ?S<dYJ޿8e\Y$ ,O|}آ;/d#[<$ ~P<8s~SOِ~?ힶr屮?p7o׆VK!>_]o}L׏mx5a-v1ukkG\?,ʦY ;4;& ):\#ރ]`&TצU;6\3X@>ڂel(*aŽP&m1je[(hEa ='$xp`*\dug'zѤu]ABN@ Su,= пpdZx~ޯm6aFv (3)EXE"hy"k/K0c%e?/a~}M9'z$j7|Ccw_]apw1^zkmןkT[qq]0~{df^>Ϋ6e5C=^hQHЌ[r]u@0UJUJm 4aA"v>()IZU$I[[ύFRj0* PڝܱsB@(V}x/B:x#}EHRb}Oe2;ix׾e-/;kY?&/Jb$mLYpg hՇ'`専Ӯ?}?_MIk&#õ㺊LΧg=:hy[F_:3{S/}=s٥%"=_k5>v,!8vuciɦC%u0bukH's&yrmU);'4dЋ5}Bֱv)K<>n>/$}=cbr  ca7؊x.Tsl? ֋{=T8f}2 Tnk48GۻmITVuϬ~њ!}@f֔$7##"IͩJ 73_ie9HhDs#]&qnolȈ&fX*-vkZwsO̟fB\]l =HuCmeksc5ZԌnY_c 6VEې͟d?&D mV痦r+ʎ.\߾ blS& -$'5{8 B 0`XqͳD)Z}St3`.=x6\/ҺvV{`IԴk\EI$ˢ-ҙm~no> Rg[06ns\G#C?Myޗ\rWqLو4Hw1Wdh G/8_$ iF$hskqxuqb*J/xRE5Sdz!_+nRq ߅fĉ^}3gyt4[skyt/N!Y6g,OP$4x/#PWWOߕK43UQcCr}n+XS8] m􇱉An<{) YA MVQ3V'~Js@S EXù]rk[ (`iuReږ&O%}smkwF&x E_%b(3W'Ĉ<0;pUR`.WȲōW^>7WᏞSmFʶ.굏 =7m Qmŧ_GE{]?·azsFw>O̢?AtF4:ȏĵ."!*۟WWe/=zˍVd]Zfp8mҴS寱vq:\AQl pRa9NN4@ubŒJ>ʹO|,ՠ|-{#[G%($SQȠӿ ,nŚaASBU_q`(B3}UͶ|ПU~~|}6@*lk!蠀Κ+ ~XZ@/"BFQ_Cd$K596˸KO f IUԨ~R5&>1hGpFW Ѱɣ/H_ODqlMc4"^kp~0hϿiMKx9 b_6E PYRѽžI5:W97n\X<8VAGMqyxxGt })/xIMnETo2yWaw2EE謨=7a6zw<#FZ/Ϡ>F;i`B5 @<PV2] R:%&(qϺMpoםs]'F2ͯH\, \DEzډT\6N@;6毅ޒToL@! HI"KWk[Ϳ~o}^^eOw{1ϔ!S`VoҤU| u:ܙmJxУO|s_AM6C 지r,SM+%37ecϿSR= `濰wo}xT,Nzh♟ R'LEw牯 G,>pO6zϋz ?XF}`Y:#^̅(01;s3Aõ9{(wX=jzq:U y!zXvPzm!O0Nk8bB1zse?g>R$p͢"\»+2x(=5TXX>[Pǭ(YE]V֫BFG)MvŘtgߺk^zHR~3g?$}v*vr\^1)`J3GGս ~uT[tzl)]zo|Oqxޣ)+bIgN6@uGu.@1jds~P 7~g@ w` A>(_d"zmh]-wO[ۧ>_olR6 ڂ7eE|(\r ҴFrOyqo1+k t̘ǼZ xkbLA)ĕ=nq_ l4P~?:Dl!}Kj&Ƕ<x@6j_sx='^<,Jg'$s&XTj2ҫb@\b:[4tEɴC3!M!Cqek@=7!rġmgIv[M35!oZPODb1ht2W.j[. X`E%&NqԙrVFrDṈaK`}hX3VXa1гdT}pYk{ j빱taW%)E2Ӷ)Fm׋P6 BU;i##]%Ją夸aQJԐ11?~Z!ڋ<6OVٴ"9k+,~/ 6i9[:%J*=<ۋ=نR' ]91Odmַ尴)`C-`?,4̿q(P#plYHM߶b{Mg>HDլ{yzb)ʟ}` nNe!}ḧ >TZ9?L3$.=zط? L a9V,_y^W_-Rl r4S/،0oʎ ֦dպ>&L F/~$_&Pb ,{hLѿ uw$p1Ͽj[hzMtqP6xo/޳7Tl+Dہr/H feIXkGzҵo1GJ:ERsAhD7;jy@Q,xԤo~[T޼ّ/_?Qd;DxK\Ď&_6PBI0d]cOlB]IPըͶY@ PO`ޭ( U˞:LE \<|5Rq3S FB]D#m #zݵ0u*Xf 4]">;cSYNS~aְ±*F3RDHXβ3Ԃ^Ǔ }Mj 75aEgQT 35`!jS.j%_7WUzZu2嘮̀YL/SM~>k}xl̜˰3MܾÞpՕZc28>zijˎV (Y/k,b +9F>Pچ*KVV bȁJ ݣ /&&H hx)4&%¡_RKJ!Bs+|DtR&02bTm{xWZeHr EHW4@/ьn+Sմ~6h"Xӂ-*AHġ .O7ǟ)"JR#tREurSs7 "x:/TpxN[1Ulӥ vnviϞMyw{ײ?U2N`ɋ46.`]5\7P̿\,e?޲^-Fzw*g"lDV/s "b[I4:s#K -^$x"Mj\՘ r@|1F:Um?. ٛr5lEwS^;~nD1zqlf3<_wD0<.H3nVگ,5HB>:MM_y.'6v?iY쭄:TnZlW? 9u=OK~48Ht3!in|zbp/z'zqcȽI Mχ,#džEn.w6B0eZPyfcەT(wl vaB._c16;C7T : ߐk L0Kٹ_WEP mkdhfbװ]@I2PKA(^|/U]1W8vY };~:n;m&y3Ƹ:&Ԗ{rƎ*[JRӼ^ҕCDz=mMZY5I,3e CJ;~J7x(]rts2΄k ;}JeK_5qnfNW85봇k g9qCJj6tHu2pWPH9ҷ͔OIZ+HYV oLH*9> \!CThl~|{3όtdiX8HB |lJr:`Bz$9W+u0|xFc@HגM@cX P,_}uE[9,뉵Oh6U=62I)$VCY1ŝhƲZ*XqR6nw뼛U/+Q :4d}(r6.ڴD 46TmeZطufk衷NK_YqhcTJ+}]4}]uJ07.PPPWG8܈J6f_ezh ,EG۹PEշǞ_nڿ{*לxo޾ʹ~>)k~ʳp@[ ߽2:w%dkG3":|_g/6 6Nm LV]WMѷ o1t]@|3zmXCYjŖzH{rq6ߝ^ ?1\1HLQ3=Q/Uqv:mc8Z&9TmP v-b|F^Y~zR:xHyuEce %^~M Յ7tׄ pV:mհNBv I4AB <&z_:l.,G`QΗ^JzSqJhs<_9`Q7`bэ.F aI,Q0ED\${Vi8wFȚ>S"muY3H7nT4 7QUiV>78Lgtez|L$MU)>kwqt )Џ]寐"}vAG҆κݓ-,3>:ǿ-:HGmj.}xAyz!7倇V^ٯHk=k,tmVHFC!0@ڴ#1Qƌ(fՍDX.v:nvD"˔Go??ίmnsS,MifS]s{ /DӺSaEO%T,6k|p^0q/-šiz] e399"REǢq$cbAV"Zc-PEL:mJ:FFeVcѰrNY6$ଏτ Ÿcy%$94u2.şx-qyIm &to{yk\Aj"wIǍ޷@4[qO#OWĝ/^ߨH.#4[+I]&BC- RZ'ۗS;ZhtzhII rd+g)6F!kv5ޝNx&3~0B/{jrQ)kgAI!=FC /j}l HApJ2I_WR^E(?>,? {/<%TwwE2猌WzgsuVr ٕ%7sR>#إ z|tf}cQE}l\_ƹOcaB͛!i;Z`v%o` 8Q%_)޹C=gJo~Ϳ³=|( # O'F/#k'grۨ3 lPItU~ן@G^"Lbh<4_0>P kk7qA_[-5TF::]}eUzҽUwӰ_0{ >hѐĄa[@\N G *8Y33xߵuRvw~U.mܧ& ݪ;ޓ+HLMy//P1R6mS1|L1м^;g_{ h|ޕO ;_Ox|5fU /N3؏4!VtX汳 >UJ2\k=#6=@z 3/bLZOp B l҉w.gslϦ&y.th|EHa,s„Gחuwx1ϧJLҗ{܂{}La9Јho]|l'ʒYz$K P?G[5ΒWD3kQk^;zyn|ye[^Z؏ }R \v?̛d>%ntTּV ٟ󋠧dUa>&t)-\l"mS`5tYh QW+&dCľ <eI|ȕX|̞jCp:6-]hpKWs`~:w~B &(c/ J$~l+y0$p7%`B1?{gc?"{)ty|lg}J$|nS'`{2 \"dX-dWݿY_Jrz+>_nϹί'k=Lzߊ=G\>b)d~&D7'zMdPuF;TcUǶPW!le~vP?\2^  J+.[cio dQj)8C1τQZIǎ$nۡݲC*3!a81 oxޛAjڄPo:l=$wr :<^+Tp/ZAl9&7&eߪ 1*Dr.T.lvO{Ꝯ2jV=5*nhWFYnU-+X+hz$A/=\wۣmX$A򁋝p+,VS)PԒ toA5XP-zZohcp=^SU{)Nn1,Zq1"Tp<_n{]ŗO0uϭc;'Y-H#m;`@e(;furͻ:EY~eb5hUS\l vg=>Ӡm" % w!()iI3P* E\ 9P9~ڔ==ABumd_$T0N?ȫ"J@ϝSB|Nq2 mot)v|7% hB 0ωHd=0vQ(eA܋x]գ_@=2X;+Hm J∯8@柋ZӐ/i€M&e<՚~rvaQ/3U)'K̅R񗑇G>}SW=`LpV:"]w-L;꾮 }(g3N#kKaϛGdDd.(-__q~˄朶jكB^4jXyCC)ǰ{F.pԯ$ԿksV{_(kŅ^%gϯl{~T"$V7hcQ9{gU˄E3ގWp-\0IfyQ#UW@C'}ύ3ӭ p]>AzhԕB +;|G^xDv{(q@%JUZ+ܨ{: ȳlI Lihb][QTkB1ox; @aTKD3iOV7t1٢@<-e^%8#mw58gIo0jN9~pp-,),<*vZW2:wH@׶TT` fl{v߯O;F]0=6h3;{? .ۉ.4 !8]ݰŁ>" Ѿu<jo/Y8k&x <w/Rg<)Zl3iQ(ήEs$JaL1JM*LTEޮ'm!{~y>c<zqO֮ɿl9,zs} ݋)14h64vP 4IvSAnG΢uvZnT@ȯYH2[6~#p8mٟ[| ~Ǘ 2|UCyvbCtu&,i~+ \Kv ƽ"ҹqZ:}+ZZ9zǞ;ѿ%I~$Ь1c"ssϫO4|#;u"(c#F Urߠ_-o L-Pv!uiesltR3XtfK@ok+Ig}.|B'*\Yy((W 9X%zeLWifBo,6‰\಄TSK,Vq hd i0]!m!yG׎&4iP7! 1iGf LB, {4 Z>_fдFI&Lc ɚpLo?ۊª] hk,R馹S"3DHYc}@0\+?:I LXyM;M]=޿󱩴q ^#vs~]4KK8.!zmio opyaEDk""f~?KPZ,_ }pSÚba3XD?8?t,Ͽm)YL̴U7Ax.i2:5l"|>;#.?|UXS`']BEK d' ϶y(3.\-=jKeq~$|Z6$M(@<C؞ Sd*xarO |i<HdžDﲎ[:BFz)oXd׭=|\j=۽Qh*ڟ~ghO} xwv^QlT$Y~2:Fm/ `~cw46I䣛sLg"s=gS%7憵%WW~y#tIoB.>Կ4/;`/d!xͷbS"w:~OWUAcb|,=Iud\ 0ѾW8 om);C:YǯY8]^Hsc]6Q0>] e{n> :H`ƺ )[}|r#O "o/0~X= < sgw\G:qtHR84Tyʊِr>VLT9|yAY 5 hۡU|ނf/#{oK<_<ڟiPF$ 6z`trW :_gGP}] V?6x3A~sV[}A;z}v;cQ;6f|]siVib2voPÀHwNjگ|WA"u-,J X`2":Wm{y1EC('ӡY~ߟ?(8:;e27MVسOD[fQ{9Bvd daE-Ɏ|!Y=v[C5MCD srCB >6Mp- @^󷠲$x3];+J p}gt[7էbƉu=uQ='X|؄j{H_XH-@O;úL3t0=YK6 Ʈd. ֱ(f _oKlcـwx  DR¿+U' h(Fj [hRe' 7@$Q$7JO+K X-0Y5d2~-%ᆒk\TjOw,O\ы@Ә~ԂDXn~4єC򤫅.olSAK! h=\"}R(V`HHv*iS:#0:4by-`Cb`"iEJis^aB8_B6]t=Τ~YAl@d|ЮM 5R<7D&v6 ,t}f+'?PЃs{bfKo/JZ] 5{~n޻?qscr,?@?ڞ*FY">po@  +֯TQl a_yj#]t2W5 ;&D5VGD=& eJd"RV4?WiZ\0(JYczGHax]tM9XM@<^f*wV]S]GTa\ͺ;t2L߶4{ǓPׄTvDl˫u2ZFp$dF1fsyȫ ԁY]+6LYz$hB3% ݤ8NB`fuNniu*NOdv̼6u嚭-.@(hWx EΈR? T2(CIi7[~c_@~@:Eq5hk/{ zjw۵&,Azܖ=8UGhgT*4*ȅ:߷l:MI//9J@4U!oS\tI_i.SiXHEtQ tMpdLQVy` &HÛfyHuh p,Zgg@[+v"]=#9<,Gq^q5oWo)3rvkmmC SZ,P0%l`kaI55 xݙwDZ5v\{nYoO^TӉ@_w< Ko)3y5Aߢ q&`9Mܾ`?FSKIҏi1i27◓t>__v)._^\JS%lH -  9/R#yQc<)e>1%T_L/U1X0FԄ*Ye*PQ[,I=-hkhbme[Ԙ D%Sp>뉓\a+&Rp右J4uު2[TBM- TB(3<}^6 sc`cq)B`oߨHi[{f XEyt Ɲ%-شXWHNJ5>>׉\=~(4L4VVdIv.p\5+ǿ48u~޴}d %3 ݓ:'CϦF`2pP;h}ș@YTulԊlk' DŸ`;=xqP|t5G5)m] 00$ˏTC̡j"^ IbRzrB6~Qz L/d/bj%۸>B70~(Pvy],f*pU3 ?S![VAX`XbBSe`Y8;X.95S&ɥ*G :=e(Ru#R qѝKhz䏉?u#Um=aXD#8.F^wEaG4pL6 %aE/r&M;΀#2c@*SEɎK XHȀJ/(w7 _yb6ľ {.xm1qm5[tCAuK% J 4Q"`n<6_-UE{@Mpg]s աtM3A*}x\_ebqqv bz701~GHr5{⺴UtMp]o&76I3a!UX8GO77ko}[`:[C`Wiѽ̓4ͩ5ݫZ| IY5 +$PV?:i(,E߅arPO BE!@tq`1/Nd\BQcX,nEUE&)oh]u+?!PS/R@1{' u/,8^.q`+}a dAۗQ3+MP#3_@ {׏6נqq|ŸCBw'BD%+!6Q ?xId!7̈~&ыW5J .#tٚWJ'h$jX@=/zwR@jA`,No˳=n|>jߊ?4wLGG^kA~*[C+׿OB_| 8w?ߗaf@z =|̱FcL[h@xqB, /ƈ8dW(4jjXZ 2c7*ּ~%~saKvrnkQT%Ho':Lduy-bi){0  ^^? ~W{!+7RFpe?,h_?6N7+U V \*\} w(Xg,)R̟ӯjE TmmPu@#D p4[ ב G@:,XgbE_V, ]?$kilװA{p`<БaJBQw_7hTnBbp lICt@@…`d3$8+T`qֲ\,~fD_ ϯeTvo eϿMvoK"gO{wW؎\o7/*E-*:W>we;0z1=l*z|aCv$]pwJg1U$ںe6ʻVԽ;'>_$#7 [NDlFw7>h]7pݏ+U>%4D9r:loBqvLn!J1c3q}9Zr<,@+㘫8ق*B+x|yuW:T#0cjN>4yfus uŷ#x,̔-sJvuVϟO!=>9?4G!Q(8j{FWBH٨a,e;j9&áee`~]:ݝW-ao.!P7s}ilU Zs3s_o<_(Y(%ذH8TN/U]ԧ{:Hk_}J*zI{RGۦV͚U܃4:t\ߨޭZGSέmMC온⏁^aafBelҁB.y |w߻׼lj cDu{4xG74 ;`@||JK5 &]ƠV>;^.3={AGۇG][~mW ~,1ebBo᧕Ϸ`Ru]fH \h"11k_o몚,%|*6EҦ<2C7~>pLIM\G/n׬S)ou+%ujQ`QGWLIt-_F'K㸀s@St7~n+Zܾʁfʥ{զAj̸W 5;V-鴶&_y ?Dc w~Y9.j33f Hp\kjo޻_k'Ć?hgXIk}yKD=>;۞c[ݥw#\a+NYz?n;mTNz; W~A@O#,Wtt@syoXXF;R8T)*MP=N_]Uw@vq (^Պ<(zW.+HަI)Ğ?yϔK'7ý|x3Z[ƤE_ jVg([E"RE'G:oZ2/kb1}hl+xlNmU;G4'#JH~sgvs_lL-/@Wsj(yR>Lr׋/uB\]Ca+\:W԰]EGSr 'ݔF>7 nh ,&;;_CNkDp(l9V"Y8m{{,[Cگ/*j\_eZvzNƇNDXDHxBی;f<D`SGIc#/%"8X\3!`$c2ו k";7Ӕ]) kDqU^-t޼^j\pkZI Ta!u߄(vA{A~/Mj6Uu!{?߮@}6BhKGj p;Y,l.70hǿ\frV#f̓ho@: ~ \{bx ỷ&Iر>-|`2*1w \A~PbO"4%^3cg,9ݱG'TEr.cgQc#롒EvV6T̜X~_p箓yǟ!"i/A'q52lu?L??)~&wRU  i52ӭXshF}%A]-U `lVeFFC*We;+omUJnއF4˧e{ @dpjhv uGUs?L{8*˝CX.0=,N٘M>rheˮ_NKsny\9ǵ,DEȽ4"xH =:.=MCpu~qV w܇O-ޫvN͆ZEb)QՍcB 5TwOԏ6t^ΈkU~Bn׺=6P^sW[4Pnk3iORs] HM#%bdm  5[k+Q;ٖf,xЅ˃e#3B@@YX]p%Fm\ktCp_7|GޗX1tz%ȺRآ7Qi"9unU*bnAK{٬!-PG5vTLf)ËMq, k~dwi[Cc_A3l4z @WA@z}fnk Wl>оvmӀQ {nB Wu]nfqӛ<_0nM^Ϭ|8?틭눅J[݆cQx꙰Vi[/?Y?P?/_=\+/ŜioR_t7/#TvDZiSۙE8AS?ѿO?i?'կ):k9xo\H` +/+K *>CXKMP vw|{l4ofmr]T&~dMjpeƫ!@ [^"M0CN`BTG `'b**i:y}oG/8_k^ ܱi)rr4Fqd^zCpl4]sqzkыP ܮ<%44' 9 #6΂mw7@Z<ͩ}vm#4A">\G]I(b=HߒX4ׯFQ;XN{NZ?VQU[ g;ZeJs_tJBqDt\XPX@?Gl*P-}z`}}o$EHDU HM)XEQNSLrfڋ9} ¾M[J5 ba¾6vu6ɖuIZ GnVluddD BدhWg;lKtvBknEތ={U,d5Z࿄y-<4{0֐1v;+^aj?\w| _? D*"Oa5 ɆV6z‡VaPW|[׬>7q`G*D^叴3 ͌1%2ui}]MFɐjB@n oR?BGVC(C 1U=lj$L^i^D;8Ց[&ѩ<\㹬#5F3iweԫAS/Pcz*tG7/] $U[@,v߀BG rm \!D ]3NL_P-F[9?1K 'uX@񵖍ts{ڥ|dA5Xx_MBro:Ed_ EB1s_9_P'GI-<&sp܏8|k! (tc~Ϧ\}fo? Eбm=n*[dhlp܏bxxiCtEϓLb(zByS7V_ ࿱F-`@%W5ms?8=SA:}0ld12hJkqօPj>-^wYϔ@R?jϢ>)8P.8~38+ l$] Bb!FRjpy~=#TuD~Ӓ1hTvH$/z;eo_J&IT?AI>u,WsNrA dp`g"rm4@ĉjam{z+}:u#ރ:sICʥo=V):mFK(C@ Y0`J駱ǎX`aSx-`3qQ=M}$N(O٩eFdt󗮣o[eO~wTmt~D.{=p+43w%}>S:b<@C bqƯ}~h٨QOccK~Tg?FV  {-+6ցL0/׿=MŇmC4H-sf)~H\*4!=tЁQaMC5Ecxuf"%$M }wٸ{rZئe֌}fNCDoؕF@7X@<霡0Q0Q` l9 a*h3M~_~~$8QKΗomӤVչj|ѨKe}0F[2;jGHE 4 I?b }Y}apOuo~F^4Te\̥&u!ڛ\;ѿ׳g|&`ᰏa&VcbmiCgl}GH̟ui; JGK$Uf4@/$b~~>]7`Х:4i[B:zHhy=@R ݧ,a/(LQpܮ7mOg@ [~ͨ8-7ofgM7 KV6/G|Bd%̪B.}iOq? $:U5u>w#Gf@3m[ti]lC5#iJ@k+Pl)YbsIlf|z7 |3MAǤcиQz`{3Vh_NhPAS>y|L^ q_Oh_nIM2T6 @9Zy}oOKA`J,,^b]1SU#C02]gwBk#ܸ]&ъuT YEIUmzy?'<#G snϛhbR7P{Zn>, x-t{X/B|ȿݜpw7/Ps"!u^L;XKټ|i{d//2?}|7{zlQf^fe/xw 6@ˌT./I ji<MCNqz^W1 UC6 Vs+?B+* .cIqO:R]{W[,ޫH# ƬOIa:Mx3nPAU%MI?Oe}n)lFR6.ж-_秕p%'DdOE7SX KϏZG0yz:S0MH7Y;_;MPH4Bx9y}]{}WW?gP{f/o15,h龖{.^8ᗺ̈?-Zc"RsZ~wkVoe4}H4l k9[jV y18rهMI(o/!McUQ2ss?E`-jM?}m_;mrV}Q(bM͇&w#][hno]km}yZ4?JWs l1`\8[-**~p_31{+51ż{;cdA$:xcSϯj_ Reϓ%_jE1_[9Q i[Y e~=;v/@9]]@1ͧKy|]y>..=YަZs'ļ&L œh3NlKJIBB) ::Y}JzD.m5/KFuғ@|Ym?ewگ ٟ~яlgߟ^v(y^goΥqFԐW'ѾNX%4gӵ4P!îehPgGߟ6MLMϹKD4)]ڬAӼFIfΑN!5?_MptH{>0{(ǚ?KE?(}[4uQU8|=BnoH&kSkJ! d-f1 UiW? 4UXM$x HAW~^tkdZ棲_U.{󓳫فUz_wя$UW=u{l%] %A>rk(\&fyciqVd򾾀40+O! b뻉%4ʔPiRq TЕ I57?yB5/<_TI޹{L_U$r+-U_yӢ [&wǫWHM:hv]\ $o'CT,36`5i^T|s~]cck]"yPׇλɮLw\i1/ϯȡA74E=Bx^N PE˅psZ?i,B|+ EɀsՙKfSue?9PEsQ@uζl\UrӾnUv\<E#$l/t'4BO$=\Xl;~Pvb>~|ߴA_zPfY@- AS+]ݏxz5BՄ V_A-NU>f}|k1B/7P.)OӢo6g[\?._kV$ *UWW$ \藞)y - Jg5F(b(?HW8KsI>q M&Ă*Z{g#?Y>']6QҼc!DQ?OK]j DJq[]k%W.n;B5j0݆zIӏuV vf:]V#?gAûSѦY,'3VZ]ׁ'L\cYD*Dw-?<AGS$>7 l<1:~6cz_oc!HX4os=g:ǔT,G>LF _u~_*VZJH?jM*x>noNJpS|2 B#+G],߲V Q|'xћ' 5KKxOW7^+mGe&wpƥ5߶_;$?nߵ~\d*1?/?j?nh9e|3wRD &@_hzĸ3 Do ;PL {4*x(.g$< lƧ";MB5#Z8fp =7sg>=I-& XS4/B9KF  I @/20@KUx?ؾDBXAܬ\eDڰ*XxrZ{b#vޢ*U"sߊ9c],cƿc\2 d4Vm t~t zbiIg!BnsuXؽռFE`i%ia?LjgA# eDջoD79W`qf @/_T7 F_o(p~pγ윁 fu;* pV**4GW0za~l޸BɔWߝ/-@G%Їߞ_VkZ }%Y4\uc|K~hu7`n4P<H8@TcnƖUiW>z\}I@h ?E]C۷9ɹzHrէ??@ӬÙB 0sLt{>PȌUGwh_8mx^w߇j ̰&xU:U@kfp/Th㻦03z hIOGPY DސpXثKVxڻbntBL-R_rvVuu cBM\aw-3֢!701,u^נ`p  Ytja ܆'0gC܄iܲ+$FDL+*8&Ǐq>>Lh̯5 s+rsq3E8_i^>p0*wr})ΠHhаlրƪ5sS3UQ] Zl}zܯ]7^ųWqq c:#Je"{QԿ~߿}<- B6!]eDZF<;(CJD|LAb)E)+i×y|ez}_'g!YU~}j% d2Oja?$$~\۴SUf&{'le:QC  [\,ߟCv;ھj:gӕ1dx7uҿDKoZ ѳ[:w/B;)"` ol@ mtHgu CP ǽ+Xhd^:C5OɆ,\p/K._,$AGs ŏn}T@Z8yvs[ƍtc5 BD<7_$UI( ?AFyNPcY{yUrm@>σ"c#-*> 4m&U#~ʈ+qfAym!{ ;xd|A324f}0[,nO`I~?vHduNaq}hT2PNDt^pJsH-:^c`aO?T._J`1 ׯB_湌/\G3?^/ N@*T` 2IbҀg  aV>Eu_߱zlyTw8 8ZQqS 'Á2c]ƕhvI6.3[K%!1XMD,`op-vo^.]i犯7§ OSclȮF'x*`tWp/* d1d;B/˰OƅzZnHu }E_?2HU. p')є^[17o] `~Tϫ DyyCSYErqr¿3_6Y LvDY/o`{_,* e7(rfmA IVu'Dr7?I, \P瑠DsFC _@WahA%{Mrj.ڒ|eK缠NP}m vxVkП/~q`NVh!e0[02WL{sm`4^\X 4{7p~+L҃ޜmSkCj_4b~\XT*s0(;mNf}d"b1C)3hIZfSGe7_\o&n}||yXؒ63*虰mJvVE<|N:@C!yQK͝c};ˎ<ʋ bhĂy;[ [ެ}9xQmg`r{T P@+q]W1W6ᮚ.,fa$V9 tc۲*[1U)c֘4& gc[8A|2_+VtgJZm2סz1~(Bw 7'$-@ԙ"'Sk]-B $#tz&IKXFbf.8xPZV4&ؘ: 7]4(.I0h( dD`&T9}~Z}f> }X5/le}xZLmzybgrLg4uU0klO3PX]GI >JSuIQ"H4h"{ߟ8nWAAbgbw34{eFl:' a'jRA7 Rv]U" UjZ\qH Evw/ߠ:Yah'EWӨ>M&j/&s!T`}c}.7P 2|&>3Hh~br$- Kb:vqH21,Q8/c _?>oǷϵ>##_q_9ec;"#84vz8g-S0I9Iρ4a_`qc픩~):>`}l\:I~lCة:HuZzCñ=YܸIh=g6r"]0/UCZ׵/gp4"~>O k6MgÁtcCnXs?!syTO]Wc6o6\ЙKaX d]QX^ bTFkz>bdvoY0?)ogZ®Ç@>!!C6b<2,^,2"2&BHgk\"U>5qk ED"-tz#Yb/ [r6Ry٤)[ \T*YdOŏ-GZ!+ u2dzT5+J7C|'g3i 4o`a||U@&R.k,k] 0%7~bedmiձwzP]YJBԵ3[m.Kv`OQFV~H/ uO2Vx哿w^?w?՛{-?aC/G6uؗlZl&qb[c}jS>$\a,,W mG(7%..3ԫ'1o/~uT7]hjxQ}q< %_`or|Ջc&D6/GԯM>&xD2W=muw|"X=>7 &{~A_HQIڋg3`ɋYi^ iF `*#{n/BZ3QWƱ;^īQEhO￟aC`b:_~ #S7|LxZq/\vxmY樌xHn$SqX+`=DIHϔl'}o 5d2\F0S!9760G4h 5 >Tn_){UAM͡uzBQAq+Dkk 4,aA U}>f1 ^ <,u fZe-SvS D>O''7A@-k _};>l{kٳEu8#gqm$ 6us?9D}i۱%9枴&XOx`_N\ L V:k0̼Fr6O4y^Ϸ<(Rz~)+(_gQ7/~mKqfkq]3FQa+x=uyݿ~ PE]TC_JI+<fBErfg2HrH. ;5I<{ayWnMZ\ DߏP]dw`d9026#n[໰`j? kI+.,,.I4Gi=8W;T2O@ߋ/ ,qoW̾~d 5ay|] !uӬC/uAu EoZ2|>g'RqFt~2 ueb@ֿ9+V]}62g v?4ٲ `e_զ Wa ).^Uk?U(r.}ڠ~A~oSwؾzkDQ 4g?~ׇLj/Cr4|K>&zeI+\cJ.3Dwe@~^ㅎ/I¨a()t#r& xivO@q3YM+ZkQa`k I V[pE@#PB? 6'z47}*a(&2Ž(.| >?9`jc]:ms?'ڂZ .u:Q6q#ؠ e>7_y8uuUH~۷( &aQӍj@Dqod55؄yvc|4?ah="FP ?Is%  |f]vXMP7Qx\`U}"_lЧ^R?EgQWSD>2ܠoDX\^X#|t&h!.zyOh. Xǰ+u^_]+qZ>} *Q4TPaiJRag2ؚ6& omQؑ\R zSF[{4ϞsL@.lsrM4-&"zJ/Ql7.Ecc9S\g,O&W(NJ%f5 rQ>Sfu'a`\+jHc.fX~)lLְ;6`LM_3T_`^8Pܕ;#>Ҽ?LNj%qx# |`B7ۆ(MGX@~-,`6cQZG>ub bhFu iOXF+j?[|237PjtT˂r^l+V]tZkܣOt-~qʢ"Y`ygS,CbLt&?,\XXedФijdppe`,m\_pu1QbŞmY<㠢;or^؈ _]C6H~Gi1" ΎgI2}:i>?_/93˪MwsœO[<¡wRoC[^hx18 Xa:9Ię&SJNGDqCsƭ"KPR:AKNЉ𼹞 ,xLä9-6b'}Ws88_YO{w4j*Rz+~ң0f?2 e"~^GVNWæ :jr";}hGxM= zjAa^ǽ \vi]#xt—ns?%W AU"g-6"m|w}`. ɀz'<#6e.mrK{D%db2}֜wx u6;į H  <}2-<|N&1萄EBJZffX9*^kY5!'Tֶ1uDB +7_BOѽ˗1'=±fF7lelH8i˴nHqxK:f({{OVbGb&Ftи~@|tXώڊ5`(Ӗ]TfU0৻}>)so}zvzβb-W :)/q2EK-MLp2;08DHݛHgI2Zg?DҬ4CJ(XE}9$Q,Kh‰àCDb!OHBctG~◙[oco1R 3ڢa#*$4Rl@ԲUx[o,8+$d"NQ:"O_?Ȳ!e&ØKx"~\3_*~/PJ)Oʌ4 N}=`{ܰ.hj=WYfF6kZ/U*g'Ks%2 m 7.]5 $/<.ވ-p}#@vw<]X2%L,scV?&?_xoC;Apվտ{U=`5d;0cP?2ctYEX@! \ZN 9x/_vi !+?) JwSl~~yKm-t..Y6Ijvr d AWoMRDHA7H/$d UW&1XU*АίP:CQ}]W6UouΎ +;^DjsP[SFshDŘ|\@,5:U l9PsW>~Æk*{YKIt Ck4Ѣx_pb{sSbe[kiU Y[7!BHA?Q[v~ ESdzX7~rߏ9e6vqd-s8e`w ɚl-I&WTVJK>{]_}ֈRFD9L|NyEC#-tީ죝ɓusA) Tm:be %:X6{jyW`^ RKeM::Sqe@D%~7{~|1&Fi*5Yu{Hr>ѿ-~y!?-mhC&RգSYC&8΋0ˉݵW/ Ll h,9_2M<40| ԼۼRLb6vOZH l`kical(h#B^\ e^^ԧv䆴.N?x1p9t#6C#iQ^&Wʟ=)O?<>  &}vhIԼ"FyFx$~ouńiV >'wFSGF؇WO6v-%߯ ([Dpd(qy=D,ZtkOx8u}S @$n+ih'B/ cӢF+WPi潋P~/5rHgY0Y>DJYܻtNbAL]c䢀4*dRGXqQ9 *oA-40zG Scm.1i`b2hncI|L wI"]~ (cjPBrsxPF f'YXֈLLb:V) Ф\x:hˈŽ&ksy- 'sjq,6`A^߅v,6{HVG|.l\hpea~nP(cGxYfi ;N|Ub^9 }_MZh ̺tJOk65Կ""TxP|Gqqf^0_X_m5(UDMs5-q%YdE\-po^D&oFISO RUvW/\F/ԫj0h{S80JDš/U; LJ aѫXB_ȺR|nt+A/B캽q5 9͋g (_ PFZLDThRfcS9Td*8^gh ɭUiUsP+KjaX#T fhvfPLeOm7qm7@%2w51@* =t^_[4|=E:9-q҅V^XN|J٬~ ځ_jJDy0C)S[]kҤ{q xV&]By8zQoR(.h2պHf!UgC8 Q1(tg4YhMV M`X/׬lc MH1%1n/")F]>U_YMMGD#y9ca/u13jЪW& ۝~v (Nh2[s }>Ogf*X.T:)}UB)}p kS\2KGc8|4Skp@E7 hѨA'cm6ZC`ob5u l'we~s9h7% l$)l%t`>R '@$yn@T|C`0[éd4|Ӱ^6[9u'PQ xU_&4D! T"sȯ\}!pP|ix"?RdO Le[5dY=PIh,AR{ð"mS]EiN(֮Ꚇ͋'-0&ivWu7ug9צ_Q࿔xxY~W vgo){fFwSLbPSxj Nmwl(;MG`|l욻ήFeİW~A[dqF74֯{FT=~^nU#56o=PUښ6+ ~Tx*``}s_OIfsX㒹Bf絖K'-HYԕ|mLRPԔ7=WҘuaK_eàu < t x_,+z(En5970!sW#$=$e 5%.n`es>om&KD>^IFGԟi9kL@Ul[B4B0G~A}SwqYz@ؓuJ){Xž~o_i~=rh'P/b/+5G ҒBsuj]<4~їjH)WJ)9`&\O _s{FF. ɒPWˋ2 @IMSN|ou뷬2r‰#yߤ{FA(/OHZ:|dfz[M{go݈֒_4?W5\4*bJs׵}N-Nf#B 7̿4 ֯).kE /c&ͻXد;NmQ@ @ %sj% 羚ԸiKzN@cג)h!,:RKS D?bԹ]<4C^Y7GPX X>iWbG!EOl(;']LQ{b Z )x_hNj~s-~pF#WIso woqc*a53Ԅ(O|X1i"9*noW7+Б8W[𹸀(t"ݦȤVzu#40*h.F`?PZ` Z :4M!x s( G[ۍB?/%<c/c~^r -R_,^IMAIRQ]5hFlvzwKa(#)9E`D!igVD4kSrr2~Gw՜x/)h uݝ#'( kHW`N>8oЋ(wbT3 Y j=~4)V]]O<֟F\! eSOM 8@mav^ReSV`h&!_b1w(.@/Zb+ݫ`} ܮ4"iAoPMqE:8+u Qb0l olZM) WC-ՙv3*]nzJE |>_,`' JH3PoWR1T9t?5|hvH`ˬe:\Qzg;E~Pu7}k_^[w4ـ T D Tpc!h& E?i| |z5>D,Qe&380O 6% [, ( }9E?w_WNlX@VᗷB=G~C?Q ?[!J[׿q? 3n#~had[G¸\efuH,&قW5wڪY LF3~k/=|hY *?0 SGu56kdHm6Mp.ځ^W<1Ś;1gvbاʵ?n hwG4WD0DB6҆ d:Dm6X쾡gmWc¢Yno^Ko "Fݚeڅ?.ݽvRИ;0fJD2x`l:_o Fk C'3ۘϜ@4Wuq_##Oq#\mk@%?OH{{pI-L=1E˗ByҜ]S?Ozx*ʥ %At>ކcz<03y"ǯ*PVG[:ZX8<':N.93O-N$Sz!4/'*m܄PND<)r-]dqb:ciqC z2ڱ0fKU?[a6lΎ5f0L"}6!|4PDB}nߏ Y4e9vF~)h__lț$VIC{}4 FE6RRhpfDЫf1w髩U~{ޮf/,Ⱥp#ϛ >jE\ դ}z<^|&AzYz::$  `89>(.pl%m.~Uh鿆]|}|nZf k }.1auVիO3Y_S3vdΐm-8bDqYsXЭAHwY\N(`;9s 5p25KJ-q!EEuC  p:up߽I\gώ}=㜶)/__zR- KDLF ȎPCn֮ooWb{b>7}1p1ж{ei_nofcmCs$Q[ FMi+hLG.AJ7uv$N2&AAߣrrg-w(i1|^͟yU?]M|]穟PeϧIbe)8oƟy0Iaݴ_)@r` _չ\ϫC6]bHb~ޱ_W,iZ[m@HTp! i?/ LcOuYQB{:u-ǻ#c|l5cv]WRX?:j{_q?{S?zmrBi`^HLaIS?sy<ȗ~2a<˛ T?^䰯;:4ItY[m_4tWT> EC<|: :(Dd~UnK%&Aihh_ :Ɍ.Vfc>qt?~~A׍*N7N d2\>`:0. 9~=ffp 1 j?ޡ418g[j3*@-PPp }i#4c*?hϭ:d#c>>&~C[M@WIwsiq˂>HFj`ݷ :vf i_М~uh Y#s<5~G4;1U:ǚzP,>QxוJs T }>)oJ0m+}8Jt.QrQ +wݨlF;i:ؕcu/ kr!GbwP{3aZ_VBudyG<\OEX>=Hv-SLuht$oQA<)'=6w-[jYocJ' RY?%~ԧ Sjn P,6w+KfXFd80Ay :UY$uve]"mʚӖ%_~B8?{伿"&'=_.a\!mJ8g2@on޼jȑe|징&0SkF*ֿI@$!pp?9Z[]?/ jrP;[i*F:۬Y۰璕7.Ҧx ^(M[cXˏUkmǤ߱GH{Ӂ^/󗍎W|eڷI;mZ$ s)gx>$z`.pf^۔)F$*ukڋ~RӾAN,ދy|/A{ywbXՈ6/Z^,5k-:5=Uj ,mF]yk9O hߩ^!W%;l}yv##B7x| }HhHǣ~j.GNGT`my:=B 44&3Nh,3w:|IcdTd@t'J}Ogp<W_5ЩSUn&tx$PE+onz>@.7,mrPy?o<[X\@ՔhQ#HE W6x5ģаg wWC@G0G+S[:a/. A:ivfٿ5PΪ ip{DE]Oc܂$#rAm].XR9DG;-I#- 囚LxM+sWx/ gWD:h_WP8Ja!N.~ ӯ!E@C*"yaumo;PH1ǚL*]TQNZD PդN\"EfSt(?oOϼD"EtKƲ?P%#?r*F:R:\ـm?n, nfhZx/ԭ?r0ǓL K ̨+Vr4eܽ(T}p~Έ:> BR@ẖR`u2Z#e3p$7w0r1AHdUY$jskflW<7tI!-*?y, u,=`2\A<$m;i\OI2"~;e.tE$}L58;:6(Fr#~vdk0fDbmǶSyzҹ|__Ex(´J2\b 9Ni"dЍh9QV=+6Css vyϭ2B!-G64@N ̽~8;Q^Y \*Ĵ7EVd!Fo飙6XnݾCsZJ}s_j^ M7#M q#f okȆ7K'dgc_k %9@vvlJCw_ʎWErCngU@X,,͐--nb|В_wF2J4]RE0kľ^-uxe[d5* ;[2T~u-djZQ@.M;~[F p=|݉~Kg4Bԇ($dsjj^zQl1@p )?h9u\(&ŢC8^c-\qq Іj闿h_B}j* ? 踗`< 3UnsGYWBR>Y i& FNNsg~VkAq6اvK}5kh)Jv7),l"Q*X=yYtG0%_kٍUEȳ~f*l C6t`V15x#-se)is!n($ψ{T@5FoW+g޽M9%fšoU ܮڝfiY(-_MAfOakdz7gXӶjͿ٧ۀǫNR=[N,޻L!YҙU|З Gwum_Eٿg,F' ԫv Z Hˮi;N4?VUZil~6lfǦqNhD5A۵`1@q,)룭t__{ eflye`4?nیx̌!nT*=0ÆO`Зg:N`=R ~R O*,P4=g.]\JXCXw6>W&4}cA]PM/Zew~. "rG\q>Nί$KrIR1/ffP3Q?Fnu4rql~J \`IZi7'0Ɋ ,Ze\T]`?fCԡ\R=b^ĵ.˜ˢBwU{}|{9C_aǡSςdo* 5(2X66éYyXg=֏[zI*t>}oJ3BW6`` ;$XKڿ3?r=zSsoVh ^BN" Zìȡ=)Csǰ6?R*V!aF#Gƍ`s} ]/D ۳tNL@hjMՙUZNJ$ "߿T~?bzOFXBڇM_#/hj@4K|lniX Ƃ\hbb_SZ XUld_GE92Flva _CY},†/Z}?G? . 6{+a8Ye&E]d fqCݒ)/?[6Y,6wUt< \=פ"~ŏkaI~p0H+Y OuV9&P =_+E*^.~ZqȉgP\o_Ny3\@G_y:w:@]S@ﳜ{ #֓&P=p2'm:`$7{^mDw4. *Ì.ڿtѸ[]$P Tw<w]n,53HQ=wzIA47p   KD SeEʑY0לW)qs8#,F!f4݊~ZaiՕI `DZE91Lp 5lz]/ӈ&8H,ptQysYƬ1\u'V8SWED]<7)ǀƏseD7]sn{?,ׄG'IJ:+pmL Đ]p⛎nR!{y&\lZ*GƼ'U( tc 6Fvdp.nS<d 7&{ἐT$L*UφQTЀY^ ,eSjއNj/,C -  ԒiA)!q?'24vZh0ikW}_f'梠pʤfpll \(lޫŐ<'PWXv~3?R63e_\o.ki5;{FY$4,#?cq?j\ av_ժoW%}{] \з0+X~A+ۏY^|]Y?,%郻fli!M h}<ȿ?s`x^G>3K*cǏ2xgWL]lD> 4oe(ئ-v~]7efI]{Yn9˺0i'`Z#ՌF?p?g3qmB K~ EnGwR9#V;ǛZF1Bؿs ]D<Q41җG/|p6]Ü ؐv`x7ubO/j'̝8wzO/ ypoE# PlNj8ꠘOxFO(bwG =:RDShBx&E7KC:4'YيEG\ϩBy9]4s$CIg-@ˮPi2iFhf}j+ Ewo̜>C9/E႕W1}歜 π"Eh0 'C>~jqR\,F.= x>gV*7KزP~(0PXvFsn`$~ڀ5M?.о (<[/Lt:E_ODӕ=Cqœ M;hH3U)6}Wm48&~گ1!qRVu _l/#3Y /F/25A^E&t—Krϓ*k?{ B܌YPk%ױfz(&Cb'nǜTnqN}Gj(`b ʜt&*k=Zܷ @.Ws(Jt{4/ O}\}v?_勵7ooz\_=+Y]8[-%=$kl9y/;U0گ]03~̐?Xx}?Jn9Ϸ)WoR}[f 40Md9"xM޳J$2x&`3G(.1U]wA^/ a}36i?^lk_k,d_W9 r\ωbJz7vem` EyAC7@SW?5mVՕp'64II]E׳QdEM^x2#x1Z4S7eTCS`h;qhlJ LxD C,6g:Bz67Du?h yaPx v|@m0pX@@S?s)SmV'84􅠒B4WL|k wJ62GZ-Mݙxi?'GhMlDٞ~έ;췰\hi/L:y]OѪGZfW*Ksz&dtlVfHkgϪXG4VKO~Ş׃< dW m>>݀dQn$2D7I )MHY%YlkwTNB5+Vq/ЭDݓib84l ְ?m|^,ߡ~) B}JxzuLݾ8EUe `0X;EЏFó7ZYZ<[m}}p(K./3T 27;9I`O1GQνt?ٍIv7gFRm ̩}T(!ҵ9U'Uf4 n+ =[R ٧8]nBM`< +:F]n6p47w>5P oL }<" W$Ye4EW0Y3 5H=jp/M}ֳ__fxl (`O h;-/դy_ À1|5JuR>DY+ RXva8 Ō.3y_ |?:-W>bhƨI۝ڦݻY]mw0QˣH"Qqʈ1W xi`zSՀ&p,VXߡ)lE.bt:e4p\?vt6oX?__aodź/]su=z\'rq hvUkM?WLJ&z3fK  tҞ@+I?_ם]b71Y2 oZRUh0e.szԤ@QD4cO}~[Ǐ:F0tFIZol]?zk>'%0@I8Uiu{?9 yUᜲ#*օ V{{iD#DG]*Bx>Hq<@et PMQ½1M2q<, 49dh+ 0V[2蟋7^~`0djcx\u aQLenǫ;?/ ߚh0>iS`!M2!QlNt4ϝJApP\ҀNl㟄SI/ o~4cH_l0ٵxG?h=q&HkREA(f17+=>oν2JH[V-Nzjhw%?N7z/Dc1h^[@.t6~daGib0`RZVEW>ܶkh( P7g n/۝5S&pnG/v◌cI[-x4>/"]]i/Px|q0ƕ]x Vw}2P2X@ F@wQә5(!~t6c<+ 4vf2z 9ّ1 0 3¸ -tuNt@y}BP? BX~ZF=1+otܣIs?. ԓ7{ƌ26Ba(@XqԫuaF.+Rf螷,`" j1NK#Sq5ۊ35sOl9L!0Pd9`h*HdQZOl|.A ]]$ll҇(6[Mcp42`Pw$~ kf'Ai*܂S .8pN ȑRN6Gzk V(xo}4wr՗o&Z,LKkZyV@({XOgi&8~*IG./\zCE\KiOQI}{}sW9CzMm -Njŵ'PNQ.."W@a?gZ:-$+]t~s8PI%0>HݮH_TJdxJ4?,=<?T iϵ"GOWR /lAa3lN[O xH9imHj : 8d'"9brsa4$4zjh ,BK:)Z2&NRjo2XZio{v}_S8b Sn:Ʋד&<]8vU8CgSw=]:귯Mέn*$[>Ø̛RB}ͦUo˄` UQC'+ X]u6gqGCԍKIlG8vw:~ГîV@[b5E. %^ s9:;Etv7UPG.Ih4<^njVtg .'B&/%}RdMv/ 1,l+ ſnna֡4d+MfmH٪XZdMOFoG!-Π `ΘYdP!!6u7ejwX?Qݧnb)}IHϴ3&(Ɋ/xu9#SGj!?s]ѤD>FZcwp;;Ѿx0Oq7D540ߒB;{Mܻki=:*T tv6kV`Q/n2@h2rHP<y,LĢPosRAc)D=x;W.O=hGTЀCלC0o͜(D~U` QqƪH=ȇ?/{f#7)FQԉ*BC)Zc8c)WhуDA @Q' |s5%IsG+bC<|+.߇ 3￸Yls2SCYB1b N¤L{xc4MS14aN ia<0(vIe7t{F<ys֡5i2u)Y̞ڟ.`T& D!{M ^,HMnVqR^ >~vp> uPVdOCt>(Ј@zYun}s8̳y~hyN$ &Q0W4v!|+|O) |6PƂPbۏjQuk3f.}|W]@]`ci2$n}^bǟ6W]lȨtG ݒCiS7itө>h]`qǎy~,¨ar0hc [>M,zhA0jQ˥$(~VMJ4xI]0(F $'$//slmӄ_ T%FSC2*:&+0˒J_@nm}H{uTj-i]C&X[ ZEA%Mn|E~,Iv/M}ng,HWrz-eRk$OLXH:8 ~P)cti3hb՝Zb'FU f~)Bj..ߚ+Ha~$9MW7o9Τ32+d ##3U=,mf[ rq4ެʝTk7#[ (E ۟QM/_)<%?F?J6‹GWdC'k&59"I ;?KE(`P/?B 4 \\&׿j>_^UмmulhS_A|!rdjZ,=6NiW+d'HϭwF> o{Qplqx~Sz/ch {{=o7/^;9>a0౞[Ec'!8>ڟ Lmʻhg>B1hޗf*Epo<4^udbb}(' ⣨tC47py& & `Bi\ ~h~GYE鏸蘠? 3֜6/Y#84-i>sac?LS"zl&H u<9V<s~/[w|oIc t+J8yGTP~7~ߓC]//߿#H*񦌳L Pu|E]~ 51P] JL9 6Kar`fP_dq~aZ5,rc ւt}'`?铂Qo틅iU˗W_F-G<5YGiϊ{ia`C/Cw è}ML$mN>6Qߴ̖C' uJ|ng20K>CBI~7ux+6CSd+|V{ۦR5=No 6bAqLSeqTOȨLn)-ܟ笈)iUw}+~FE1Ϸ___ jnۥb}ǒ:U_ŘI =G"Jt[^ seUrpl~]VǏt7Λ(wSSCCEއ˒TFkXe_wսvQJY!<SR/FN0[Dl4H}5|Zq~mU[U7Ku)?%3:Okw 8SD)?^>_gYn='g)6x k1Fn06uR[<{nIYZ,A |V=׼^YJ9+*]Դ|EmI>G T~_9!9ǏULr1?Tؼb]HGhUڰEW'ܮ'};I܆򟎗:*bbn3TW:v28N}Dݣ (Ha7!w>; ᳹t-F5c ؍',}Zn`}z}Ñc*5K(Bpa8vZ;VSKދ0'gd2T3 dK2y ާ(0$Ϳ#M OZhg͵z 7R5bwwH^q 3Is3yz3Eo4hs&YaOsTLɯb*z‚y[+7Rvu)ޒI"9z1ZN6x 4cUե1 ,盖aIJ+pE}bs O*#o W/ؿk%%i0OJ^i|8D1{)q;/t&`nRq* VghyMݦs |@2K2 @jh(tV7m/. @[MW%y_n>>5#nbǑ٧a@??!c5<q߰^<Q.U 0 эЯ~ p\E0fH˼fJ([JfUDؔ?p yd i" b 6[_:ﳖrҦ~6Pc@=[K HEq|DW0'خSEDp9 <픫̤]}Bc3;~[T<|X>k G4i_)喰:d'Q|sKU"]+mSӨޑhVNA XYd4p;쌄gWy / RSs;湍h@,@7 Dc~9}p߶D|i_V.@R%u+ek(7n~2[{qM eV;I$EP5~ QzzJMfjtE:\?%͹I]/QߋP6}}EtW7΋hw@!(Ke}"0=zpMfJDpATԡ [?V[Hfݤ{2>A`@l+{\}@ͦwkn, Aj6zE|swv59.=`xNx=S=9z4)6uGf.ǁgEK8mՏf>;R"^FV$#.hbѫpfp%B[>p]&NKR ڿ.n !3N{DpC/2D'/ yD&T5 %l}g%!mG/Hмye]/p> L:k6  ATf.-;lؐT"Ni/h/c^8fp?f1jp/ցCp`]ڃWmDe?v15hف:SM#;8XKCaVV$ɴL>=RtdeMlyVPO'w9"g:1_~~G5uԏ6QdņzlCC݅9 kz'<7?xb.jjx.4zy8)aHqu?LY5q8OP&MYixf!*jU!sG]*vsiBQ$3S7nT/.U4 GbEg5f4_Fxn/?|@l/=7;CcC=aV?3ūuN|Yd㘝io'( %/rQ4>0}Ls Y-bo÷÷jV9Ox{kĤ.@Fz.f숨_GÃ}_A ݵ}4yѹ&*~&xV,t@;I`>e*gV4LtsiUUa.UR_Mۧ릯㊤dzs' ^ a Ʃ{*)b&)A)kI^qd"~oO|/J_P-,?^?Y?Բ]h^0[MS68c f{L_Z7"Ƥ0է?tMm]?ae~z FK7дP?~ڗz?KF;x!MNjz nՠ[+'kc=פ?@쾆 VG]Jny׍n,cffAp4ao R@s|QA7ԢNzf2~10hoaA &=H0/cXll`wЄ^ `,f5=4hB79DFyN¢87p<$ VS+DspƦ\q/DO0f.4lÄTP\W5< WZctJ3&4C?18QP{]2TF Klb8qmL\>-7d 5*65}a]Ve7_`;4gw̪pl!͉1s\IݸƏ}4Mk53BxCf9!jV7QJouPh-Q352ԡZ t<(1+TF_iK:wb26f-m\j :f5zDt&swV0ޟ&FQmd1.>= J~z$&?gV# ;y5acmyr0dNA[&>Ѥ}_O]0dǛ@n~~h^f }B?>WZ9&}ƪAQb34voGi+pKLq\O{@c8zOfß~90 yb6}vEdDk7& .Df0J\'Giя魡\ڐfp u[.#Cq/:$B4 S `iWݢ&=JܡSq ޞ:\'s)?qkI *6o4g\hyࢬZGVĴ4%9cμ@MlGyW̿ R3*Υ/1 EUTePU= z>}K\ ||]5*$?!..bִ`: `kN߭lU<A Κ 7*4U6r'ڞ5b+"m Z:} cXEK}JG.GqBھTϴKi3k,=‡Q+æjZ-Φ@:lFE/R'_66TcOc_yTGϥB@PoD/_HؐB?Ft6ds?>4%!R\6m7kZ_|v& Y8h:}Z5w<}WRG1kY_<5C{ c2w-Ƥh~A'9~>c=-hl1ga**{5ɿfQjإ7Ŷ}_;`J߱YIjZNi?J _d#3 6L_ (qnipXWHDd59¢\v /ŏ?muQz|m3'hTÙuM?:QT;$5sكTRO j4V8qHoU!$sJGs#fUEY7 muk[ ߬l[Dpn3{hq'݉vF}+J_W/٨]k-=S:'e;)4WwGvKJ?KQqKbPi(9Ԭ8I4 {L+p= x^pReXml-$\wf#riNfE̔Ϩ+Pop{{[%߾6^M:&qF 0jq,6K<, H[(!y9'"o-Cy0>[:8 ߡ:LØԷW*x9Qa!́FACnSJ_ac ShoTˈh'u(Ja3]K:E&L樂[ߓٽ)ㆍP΄s ˬ4j4oZoL>tP,0񼮟' BȽL7 9OoFľzRVuKUr .&]Z|3, ?@`,pvG3}"<N Oս{?t'ٖ.+)~tYXt%o| {G} xsuE[veaM~4|ے?da;s#8y|N;ſYU]\ e~~FBگ1GΖ1F [)Pu9}\dfdw4MR,(~qK^|$ENO߻z׷?28Ǧ* US|J^2ڞuc`5 lM-t>4~dZȹऎJG=Cu{iu2rK~gعnNx3hz& ;ēD }?ƏC 30.YnDpX¨gk_`/H;7:DUOPd[ 0Lԯ"z9 'U:ܺC^9-X Pߑ*obA?v|G (z?0MiԺs6>݂C`gD놋X :ϯ?(E|Vӹ~oCU IT U eAv/|MXCј._kȋk\\2~bm,/\:hȤԍ_be?(M}3|vo^,r;b7 ]ş Ius."OX HThKeFt/X"(oN_7S[=0/o^4*07yxd7cIʎKBƋ- A\nїJT=59Cz§S `E^CjdRQ{Ci&wwzwk+5dIupޓҕ, ЙX>n bE9kue 굴^}*Hy4yC-lW#;`qf$%mr_pTaq:1 |WwcypqLl s* rZw}5.<ns;/#Ϸ-bv#|,_WL&%t׾\PvjX買Cw3zxLMY:~J5T (z]_y`ܡD7P]yG~^<2lFqΑe|àCFRuqrǯrJ[{ 4S..C|i^V`kO,F@w LM"7Ymj? V b AE\*, ~*[ȓyN: TzݪGÓ"` ) .(9Yef1k/xwC':]߭yr0juk8PCa#o |GY6a?Qj?gRERC){Owy7viV9ǒ,ď!X?__g8^'S-~V\?Bi}{֏&M%k-/Ug4~:~shL'~t ̉I\ZXY%muu 3PQf<,ڊ<նCvU2FVoH[qQw Pψ6_SwYx7xm >097NHYh)>){-&B㵏.%o>*<>+T. j/ Hп jX_x>pl!Ft =AZznx<5bxBjTc`+ a5hx %fH~˿|mOhÛ 㸂ShȜA͵v}QCEhNX}픲SIRcF+T{ϡSY_ywvS߀tEOI;N|ŁwvK|j_Wm֘Mz<ڽWs ~cDiԌςUwlU}F#:.3 @8%')UoF/cgtqz!ͫ/?[JFP] j6hPH`Т^BNWuUXV<豭[E7;Gr-!d?aѽoJ[di#h:4HbMNǚA0g cݲ{a6EMJͯvqŰesWL~v@7?پf$WYѼ~1U*x Q__.Msxؓ[ul&sbEO @Aw-dS͟dAE!,!ADPli".sC@Ţ}@$gi^@)ib^vUϔZ5=k-ϝ=jV U1%wbNZ ء@OGOw[H]U>"XE}k_l@xQ1o0+uF"6xyicdf!_&S|&c޿t [2w2Om`s8EJ'CE61bmܥ}tw;r=._E@s`#s) w2C Zq/rac?$>dw6cQC5H;blCyoϊ[@[040k A'dn/uyFђcrĐMQyma0P)B1W]BZV,ra%sylrTwx9Hz~%{i1T5̥7Ko\?+0)_6 4HyivZnE8diMu+6 0\Cp:_]2Z/TtpDy;aҰ771]v6fX?qj.ԟAAt~ d%?tzOV/k!g+-)Vj@woQ]?`2 ۘ2;j?21w\?si87& ]6]6xwbO7%#4z# xPfSO\ INvTAOl?A4<-' !kTO\OɍsFХܙ#_Wy*-Gtv{zT_e=QmCΤ% hgRݨP;IۉETϫf?élXJ ~fg[v<&xrH}f[S:٘lv3_L e A%(UI”(tgyv-G#]%4>O~+?ߕ&yPPK-y_:4<\<(-Я~HYdyjۏg~vVk_\uiD*Ϟ?v^_S$[~F}~ƨ \Q?܇tqyVTu)x}!ܞԝ!¿8?D1uTLz|:.}_ `0*P1 ggOtf6x:WL(N Ph=Kwl]o={ˤ>.J/&3SD(2 dZhN>u~k\YCxGtfƬru&a*m-&id({p3ueV66bPD W^ za~$zGկL+/a1p_\~t縹+i15Q@o #W;Ϩ~ʅ 0g[ ىc/~/s-K~uN{63OR ZNƍy` sdJv/G}5{`/.e䄭H]3C19kT$ {{A7]NuD~1EشQ[yM<\0I5g`bRG#2j.ϦYoy1xlE;BC\RY w9**ZPHi e9pcE31>| J2boa&d-a뻦_)ɨ5q)3:~8,e;D T҅6ϟ'q ۘ:ca{ x%LP2d]рDZLsйEDށm)u~/E' <ˮ.?h4GÜ7Aۅn.;A2)iqr,cZ!iX{gdN;oM9~:1H8>;} 1mM֓Ċt5nu,}fB q*?ߕn3.Mcҳ+ r |@Fءd~ޯPxg?Gn$Qi rZ9{n$e_!ȟr׀bݤoT맫qA¯F$Kп6,H ՙ :۷z4/#[YpLmK p "n1MޕO:hZ qA[.NVlf=ZD7d8.W\bC (n"P݊=uYZ+8. PN/]C~Uc/6Z~dv mHt&4 S2m"ϽȾw)?7Ν(/i|BD\jЈ__ 6gn Wd:e݅/.]/+æ_cչ@n"XgvXSvj_oƸEtWL}`]8^3{E2٢ME2Ù "es6pI m;݊AI(I'*My!Hr>鞛sZ@QȟFo@39~ &64WGB`|gyE'<4ǽ˂lH]׻HDKK !4r;RKBJ5hG86Fc5e$NoP5X3=w&OFeg@gɡ l g] u[1N n*t^C7?񺓩_KES`-8!G 6Pw.Ǎ*GO4_5=% d>y.-`oD*|Dj>8(-ܜ~4\L^ ^xzٿ~{8Xw'PM<9 IWt39۫Ӑ_|~]5 A|jyӬ"miz̓ͦ8>s)QIv續65֠@`-]o/Lu/7/4(,khΩWDŽ|S5ۃQ:Ҫch`䖏wiRE{Ӝym.XJ QE B& CFGXIPcoǚaZo1"WZXKƵXIe H eDP${_4QhBھa.qI腖z= 2{.QYҠZ.[ޠy>~i &7XAX~GBqc/ųƙh5Du/wְi:'=dqMq]n/ߘ* jŒ_qc:D(g NsQg.Wc"YAj %KX_3Y(|(:n4Nz jD"9u_\iz_BCmh_4^U\ |\H͡tqKoxmDLK~NoQ1y8] k(w|<<[ 8>^vrm6Oy'5qq[*$`a읋ܽ٘_-5OYΞYf0rl&]5.,38OUKܿ DK2 Xe6~ ڄZQ ̞IWKo5f1 E>@gߙp#j=t;$_sLd`0xAفV_KxR+>R1i[{)R 5hT(&gȱY S qѝ[D_zxl<|=p ߦ@)zW\ n(H2Ћd\mg N0;߭$v=¥M qZ:q 8"cU?Ͼ@^}@.=94_c?] odb=7qe}67KR2;Gd=P@;νSu_ R<}Hbc_\ Eo b|p0(`.O;Q7sď9vQ׀atz,b{1:|\IQ"~~-o,'5;ǽCVGZؕA9Ưg:3tBWy qwc/#SjJi)߁>$Nl`j35ᆏGӣA,Oa2A_LBf620nGp2)T52Qi~ 3!zX@Uсd/<~!;L\U&dQjyqi$/p Ё(WFO{4&Q'$F'!V,BE"}&}xN)qªvJLfH0ts~6Np,NgWݫXFqN@O $ ڍùd"8`|/BƳfZ+Ԇ5n[N7N>]P_,%=ņjZSSob_>rnGtB D6 w04QMP=a㷈]בoD'l.Zhġy +/Oiusё&q{qEp}”A|v*31e0]-`p~~lɤnn.Sb|#0ďD5Vp4ʮOj?qd_uJ+:~A xS~v :ءF,wW%(UqFھ0p/|@i)QϘ^`]&o62 ̖UV75NlJd/J2 $#%@ yLDm-6/H* n>߯< Z&6z3e[˄X=_Ea@!dG#f'o\S rDAhƚ2x(i5,ߝO3NzqqRЩ.鵻:g'PglƕI8 zOJ]k8i'RhkpX>iqlǐAKLhh:tػ|*t!lT+)0=8ç hB"EOtHKgѱ>/pu>f:X߰x}9TjsC̕kN{=DA)9p$jUM }咣&%5u@sN2Yɣ]ƿ Xq,(9LG xo=A.@DDGJT'Ѿޕ_~PXFZ- }Z~O~o>&@8Вg_L#=чA|ZF]l1cڇo$py?Kskf~(>/qIט#˗|T_,4_tox9&;O@O*ڜ8˜uWOYso&7+|9imvg}/s [k-RanA'8"wXL)ІOtJkUg=é&:ٞr"[cўJV"1RiVY ZiHym4[uVưࠒEW@jBм)ϣcQ }wPqݬpC5}}@7.7XAinBW5˄-'tJYvMhw;WHl)P8yѿHc-{Q }GX3jEt76D1ƅ W2<xc%9ځF{׮C93ઇ—֪e=z7E0A& & /?gҩ;+E(ԡit+Ь xj[Y~uЊ#ŢXWqTѪl*sus3`@E{gR?mzkxJF&Qj)Qh&F54z*0_ZwA=ƞm vU'Cd9eR+5MwFi욾VM}Q'x 6i+҃yԊCr΍&u بp!hVBS?F30Sм$J(zLj'qNT҇Ph{_4r ;_W.;}5ŧ No`Q2Ƌ'PNVJMx#$`'d6hjVShG Lz#AfPZQS$ )ԝRnl|bۿG)l!bS AY~@B;lo:>l*<4i[s|Eqy1Q<@s6Qؠv4ϋ.:&+`?= dAߞxZNυG$A/޾VX@~HCS86.9qB"_tk1xcaSPcoX\/aVK7Du}͜B|E1_?o ֧.$ <:8!;jj39*>=1{\f6hxmw8bz*1@L;Geq4't̡E}%a_cDiLt/(je~{o~Ljy&0qdl?&OvǏx?x\)LKw3}O=7]E}D'k;(,OD va jv`Hxt~W91}mLj\ %O9:^o/b?5N_gjwD(~&zPQט4kBJmiW6߇tCbW>q4y%JC(+ 7S6#|NGz9Vo@ih:sРvee[Mwq Z@?Al O]BȌ0> ۳Z< HH7H4~['U -6UKQ8/Ə.4(u6{\ I} /:ڦ-_cEqߴ&$pæʖ-i7K&ݿ,lT$B_/$qEqw& Kjh3调jV݊;È*2)"O`4~hV(kQ//H_)F5j'/ep`ESƏW?uBM$-3Sxa XTHakuLB\??BQ _=NoETL%kasWdΚ{t6ryޯixzofC^ ]jP$G%rp*a5klKS{Qt>uD 70|L}pOlfSK3j>A$^,^GaV-+Č:]Svj\i/1 z3zԎ 4xAvd$D$s[t.K0*m:]}SLzE ~}| G0w vܝ0t+eWLj?Nb߯ETh ֡~2+}r5黮̈[*Rb?U@md~6T7l:^.z~K&uq/#h<飃SsUufPvG2DJ>@  /d9ڠ!H7I94+~?(afSDܖ}ذr' F]ڹ%:}Vb/gkhY,J s,R_9C'u6<_;.7gߋXtc՚`$zo Y [g퍆՘>}8l~~M*n!p0{1u %)H^#ђvPho_~x; D+ھC-5[7Ƈ:o뱴?pgtKǞKHcuNL^i㆔";P8r{O@jtzf ؀S5W{b6TD0I6M"GG Ujw1e⾋foQQ\Äf_H>U@~R:|8ée&OuftWg=84ug38;Sg]s= 0~c A,50<g\OR[h?o~)Hb;SX= !)Jq[Uer=GCZK '{UDYbB`?^e?_*3znX&bq nEB|͔[/v_I=_&n7oOvw7tlJ>afؚ6DN.'"Ӗŵ\/U67piSI/ hFҳ ,_f_\qLjjP?5n\^^2Ucg!5w )n@?uEU7L;d)9L[q5s.ٰZ ܮiONOj&m[ObG U\/d閄ZnLSv4ew@ h6<>}U|4)mJC|971PNvBf5ϸ$(u͘ ZBou5' 4X@1( }/` 4%]×}5%^ .@4Wޜ5jzi3IZ3cLkl?VdG__";CLΏ J*m{&uXMw.B<.p6qT[ h֖σhkkC8~V4D}H=fv"K 66 tWѻC0ڠۏkvmܪuA):*zo4Mʬ5~巒:f==G;@Zaì|Xk5icPC?h:UM?'‰H;P(c4w;A`LbEB,MneV6+Giw* AB&QD{tSL 纕xtnG L>I^0[m'uv|+`]~`/}sAK9s$aCI>l$z2<hh\y~{m߲)V!Suo*?6Vl%_A/ŸV)=lgb&, h (CEiHs)9VTo;[OSfp[ [w+hii>T){^|]?A`|oK}4_0K/SPzm/VL@ {bK6$o/ +8Ǐ@eۿS|Y])1;GIwĎ?5.}6twqVn J.dƆrKՅW4)OԥW>'/ ΕFlbN!cҁ&ZgNcRA2-PɰcWH:N(~Р5y ?J TQ}i%zCdYe&t‘YtZKeqiW6 UEkg@`]u\Mhר \@@U6z H~`’__[|~V1tհ(W0]i\fW:kf1j/D4:*v_m6o0Q{v\u<^a*'.zwos*iyB#~zT6"V"Cn ƸP{a> sG=/GHi.P1Jv`c[(ѨI9}{4$Fl4y4åGb<YWCB3P9fSNspkn6`UZ'О⯓M;!_oW?@/uI Hc #a쫌w._kuo[~9w\7dR?[j NM0?VkxL@<*쨴ti$ҡ(Bq,9Op].HSa/7~O?9kܥhJLV'q׮rq㫿{U9h׍TeRC# EPB@pB7iL%tĤ^Z>tbUGw t+j[>f KO<3i1F _JD\#{dG4s1&.ԃ *7FZ0pXk\ cb&G^ + r NntQ`D?kY:G5Yp'}"~?:AGb>)DyZ( ֔A?^A*ň)u:ӯ#8txX'3CA+R:4l60ite #{v}$}`ܕ,LzYj2A圊{4+!ǠѴEIjTUAA{N\P^bzͷײ,^m2 (oQ @f`aJU~-7܉uԶF8[}xoEY :ٖ?v0MP !˩!Ϗq5bwЙI-j^Eҟ.%rSk Ymd$,sTqT%^& ϑl}M! F"e-_ }V:S—7Ѥ2{%{nF=6,IC\ET?~^tY!}3ua%a֟wntw?f$X?[mk2vMZKSbZw[{u &ďjs8-4*;_oFUxK엳?玿5/7@RyA_2zg _) ,QΌ:mO(0Ve vn3gTpfj|w ƈU ns 62W*=偉gV~D'{/xb2_#m\&H.F ro'3i@ɟNHtD=uI0ʩ<8m_-b6~YD"O3dGϧ3vg!\n6|oݍߍn􏎿칳{;umF:F#|f |\>5P5ESzt??_g ~v'T<{ |+܌}[~ S&f_Z ;pO\.x-8/GcQV*uZ4rw#Bc~{E-O*a ,cH?!?ggesgv'ԇ v^Ap_ɀ+zC8SI/?Lo?b9*ׄ^]c~/>XEEvUf?~~%0d0P__%DߌRgA 󴊕u|{TP;ܽ Y,~~er2#__o )O7IÏW/-P!.?]& ¼moFΉ ߑt*/3TRdz jl\[&__0ʿ?_IbͯW,mצ1k z&=joϔ9ix1 /+}qx~qsOU?jXv`8\J'Y o~Q7Q,;$KO9kNp8:xh T Xάz: _ 1ow/F?,_ҜT^Q>a#E@`,!c1PG^gtc0H̨i]1 l~@7$bmCh K6++8S\(5zn.=dV\7ViEV7౗u_diHKCx' 倠QTE` Ĩ-=C?VYH|NhE0'$ц0Sd'qPwqB.n{!=s"nmQ"E7@[@Bw3O 1 smY@*X_"^X0U, LEӗr+{-or~c mkleI.K3k I?/hO0_ )~vY~SkwXޥge&V mo^_ gPA"FbfP=ZLx7IR'S*T|dk /I1VC-8/  ;vjoPkeޟ{`% cuό-\_q6~/BelWtkR)23ˬw`Hk*+ڴ& 9mKu8rWG?߁sAU@Febx=U}|Yu.?W6u)4{uk%v 5F4@+:M{u$@"= ֩5<cAugCx/kFaC ؁QOhѶz|59@} eW&Ԅ<%Luc6Ri|vHysnĩ!;АH MO,DNDm/!}.r\,wA[@ġC#;=FcmL"yW{l 8Ws6)bb#?6DbXq @߲M;Cf'4RԜfo7y<Ӹ E44\km=0|M.$)ꔞwoc2Ҿf3%.B(‰׎c>FUJ kcḡ@ց>@Mߊ}#q$hdK#g\͡afgJj><Ȍo3ksQhENDi,)~ӔR BvOϘr7`nеIeHB]@"rQ"9i>'B؄b62 )9^xL oanoy ^#epq^@aͤ1c~o9'NSf`cB9tSzLwh l~C&dGCu}QD"l+dʊꐶܫ Tn\aMKP8+3WH2PSIDE8>* ~m~n,g0_O~c6P C ss*+&yT\wg?AAy!|.OYW^ zآ|ϓy2VCL|PxbD?iI5huq m^ }u*hc?lꗻl2g 1\iptlyMo//{1\ ʐ=4Nᱟ<{: WX4M]K~ T,40#<o{OxHd:Z TA;# :lHY0q !LOo4*㪝?C >OM+z ϥN:Ly WXdJKz'7bUeS( E>2 3Y#F #ǟw{gRO2Q|~s4xCz=_lx`%8l3R9wa:[\lo*c#>ߞH<@3ך41EqB36,7cG%}cwQ *9oDSg)Q?Wљ>gs<НR j.0Y [1{O2R- !7ÅF$xZUtn0|[gt{!&\!ًDC޲JOFO9BúLf۲Ɔ/ٹ)P֯UL\}cT2AUFs-?.JW$~"-wΆA ZpE}TU(D͚Cr`$ teNz^3'8ϝ>#D>"~@ ]Ѿs&1E|ߧ}Q4)!A=Ȕc[+ϻsF]~߭ЕjG01zC=V%5mfimj)zU ijT~;+n(7r{{,NmO.lׯz THÓ>3X4\nq$r{I4t.Lۦs.wԙ^pO\N|hFDH*lOsw,$ީh~#:o2?~{̪ϤWTWƔrV;}3F &5݊"n]_nW|OV=RvƗ~Gа87`ZE]E~&*l>S@gf[ᏋQSnvbGQ;k'߽~œ;FbĄ^Y5TPD/ rί/~7/kVv?rC?J)n:bw3#b{1;9kfIԮ.4c {n 1Vy|?'S!XS) s Xw+ E4k(a % P{w|žq4q+ a3<g(f M3&Aa E4O[ S &)/ `5YaAj7-b 4#Ɛ[ŕ^l4QGSMk#e<ʼ7M6uAtc@c%t25lKo46<;nj# ޑNU{o+51i`%ۦӾ9ٵi |`W{Ͽ~Knp|\qLgS!QA+A9&}pK6:ޤ.'W|| gJ}ӱq@f }0W@ o _udiCE*hX>_!N,mAzޯ8jPA{Ȱ9~^8ُ 6m6A뼮ůG󏰉#铐}X2 YACՁ/_/8x" b]#߷_,Eu2Z9?F>)߿~z:w?gﻳ缪>Xbb Ի\v;ѭts2N]#lj?Wدr?Je{zFnNBLڮ**-Yp՟4rY5);[teMWknt2dmuSwMl~7m#nXxmWiG!|qCsC0xo}F9볡< ={СCuQ6<^R' O7_J۰,4_pu~Lho&Ej a3SqAP y/E.͓==_G{R!rm??;| *y̚k5>5[;X&?mǁYyt쑃ql4c ekGrEYKCF`3 r?=4b{٦@Dnq6=XXUh{.؎I6QaٯP! SF;k%4pNYF8~CB;}6\, 5K^hYf[aۀL,>nER$]VjDxQG. ]Aߗi\LK&2忀m0 ._؇ͭḮE *4[Xb>3)TAd[csExZB׺G wZepO(bNմ6;p_{8o>RK}őR`~Վd雕,$ @G`Amn%l}KOM &sWAld< U`'b4|\e~k_4t'svf|_ʗ"ԬhH<}X '5IҎ3{F@ViK&qgСSDcNH\2JJ8YROX?IvgW'9̅Y&1 ^-&{vSQ` O-sOO+3454t&J`I;YqQ+z?`7XsutngV`'(x<-i). _kѡ,1EznP0a2%\>yԟoК+=>H☍.Іr>=zWh꒐Ժ靚GbMѳݵYm>6Lu|DtxlcǏ^B.&|J?np4Oו(=dE5t;i%q5I{(aYѢ 8'[ il g?7wk"5! ̮5h ha0aI'WRH} (@W:?𘑆AoQ79f+8MtZb_q t\6sPEL=:iږ,7S'٠B"HAK0o8:&0="]^$WؠB㝤,\H ڇDDԟ߂7ʙ(CwQ,Oؼqt(%ذT, jh3j-jiF@H0cB-9OHBxy@aҸb}}uT,ӂ& ;c:Gܢ=w5og3asKߢPv#pXI' ~4K$OkBĭn:7{lS<>σc͋z\IONĞz?(qE>7XM8.Cq2bx*yGf ZKaNPAVqhwo?0u?{Ңk i/^ ^(j*l;$~Wob?<Ԃ?1ZLHO,{;pEtpz/`zoNª]";(3Y#86RT90Ber,(^NFo@￲V0^yZ}Lq <w¯Ew6~-#_]ЁN0\E0 D3(5{UDH t8]`7 ڱW{?L}SZe/Pt> A_z}cM*)S_W ]3V_ 07N\yW @ X xU-qYZ]"ίCK \É˿_6^W9줈z^3+}ڿ{}z`ӸQD]#<_?B! ;;9`.`Om?LuEE7K 崁oU6vwe&va{;Y!<Ӊpt2;|K:bI?#izY7 Ni8` l>-losM"u^ǭ%ѿ14}8x0+!2n|ty܄K N0>hOYQ!0Otal1NS&IR0ZiI kX:G/*q}RtGCްA?~#pi?>ǻ$D#0. {ว0e\0\5ε L[֕fh˧MrC ؁o%}N:h!qOȟZh|sE5ո"~WXk!̱RBt% z)Cg:AC@'!`>:iZ 1qx[e;8vYLT?!ASX8pn@݋fzhlt)-.$Ͼ+tTEx灃?"Aϟ"W7ny^Xt K)5>p,e),>'p@ɔ(47kpp9i;Q|xaUP5s?eoL/ס=0)vޡs?◠)jc8f<yOu(~__] YM>bQD+oV pjqnJ񫕏GmihU&߻,OsESDusbA RLOK৘v8]AM1JX.1b {g,/uGeVcK]5e4P\JT)#Eq Lҝm,Oiy=Nt'ߋh/@ _=ALfʁ(#‡^ߓmYƛ!#d:0@Ssf [t,w u Nͣ]Crq5˷%S%UrSL3Z 1A7-'P6r'1U^Cj67P7u: =CVp0 \!S]F.|){g.aS~|]$ v.2bX?ďf5t~$I ML=Z}݁f+i}tЬtTAb`YE?Hb? \_Ol\hvVo几Z_ԏO@~EAaAdpf(fLX~F`+1EGQDѹ??Mlxhu)QߜIc';5M^(Նo+ɋA\@k/&mvv3D k&BčϘL\ٍLLr4K<;/NX:'Z&6>=ѫt x826cഘC^ǖFK7J4+yZ`C :#4Jڦ& "vNj8^xhm6,`=,<3(ύ?=O?~~]hֺLodG8=AP+x=ԜQ^T.80SO%Z(_R:<0>hǽe9_/,X ϵ&FNݰeL_;d:L4=?_|{N^mwf4wt-WۭFwND\f9=1Oxxt_hNj=|ѰLPp nYx܃U^!0|2?.OQGM[OA\}XD7x:}.!~m.H\ ~5Oqbd95ᰞz z$c߽urE/ui3\s"(lS&'1*v/39 O~zyQ [tAZ_U4s,>Kd+ 9{C3^1d3~oBW(ړk 4R/㍾ꦔ>Wj|%ү ?HB;oBJlv7 څ+4H爢['\:C^-2xYUłϝYJ } 9@Cqnw7IگBCTدz|~荦PпߎuסpW[P9ڿ‰K>P Ә\>dz 3hA9ʥvs3:he?Hϙ K5u;]앫wnV#,3 k~g~i'._BGwO~c{n2(*HRmPyj__ tL-ϙ4[f\tUrtqT HgbIȟjj2~i# g㊪Q4l04C9Jp;cĶ{sgOq 4:9%4#0WVt<ך_@cuSxPDLwj:}cU&N׹5 ;j, u(^&K}7O¿/ƏwOꧺZ'YN} m5|ӱy1~ EV^t2_6LD??]Btu8]x̰h64b51i>~B_:".z֝Q05W#zV1tPC+E0bqXsu|H\8h{䡹 18ňTH=)RAVt{VQ=K_Ffp'? '  dEcοf[<_~?F/ ҋӥ&vu/J?D\W2PAȝz- @J 4GwRC7Aѷ5~q%߾@-J+ϼe&k%w_V/O+*2oIhgN҇$5umGxi׽5Ӿ~t# p+k}>zPnyUǓn˙IfK27R~癔K܈9N_6Og'p]MMmԺ6̜k~C9=è oR.4Vk`}`=yq\?kAHo+ԗ8KWx4ef\_TЬ;;fnN_2"։E/zU{%0t}iz6Zd7|o51YiD9ی'}-b&=__~ o\+#\w @j?d# ѕhskld-GTo,5tM'98]6wGv0N5!\JX9fDuj|}[|h{D{!ظx8>Kaa (7c40l/JiN-:tJPO1A(1i (0Lh$M-w\ShzqW704GBZ=~SLd@hG k0c탢m_;/E/JZ˴a' YYݗj 26|][ozzmh?Ee}4oUп67c( B5Op_ 8Ywɶw;/EőX?0{[\=^,:sWXڝqi,/NzkW0U*׏u;O;9_20Z='ZhXW35>0Ǘ4SkԎ>X~B2!nWjhj{і\~1)[]INyڔoW |B@i+CȒ1QZ(*M.Mbra}љO0oiuh5颀&z&tC4@':uEm2AR?xz,6oÕifV3BM&B=Cs,3Ott.FOBV4']q.fbxE|S&1Q&Ikߵxq"<>R B&ޟ="GOC?4u2 ' ;SJc^ /꫒M\JT('Xg_p_:tsϴ}[T^wAFŚ+lnU'-~goڨL{A3KP3퍐$3# w)0ifY5W`_9F5h`89u\!& bUee2Ts/ }p"_iOU&M&LC#;&aJ+>iW32xn7 CDzb* , ?+EQ3Y4oQ)_Fgoxu/0Cr bd6°ƞ~A8 Bcx7zء2xzqZ7; ܙ8R{?"?~0ԠƩߎ&~sSux}罖J)fԌ?\<݇vj | N+m_i0\'Qͽd,/fd"6ƄғPc܀hR'LeU'F&ȩv`WQTlh&*8/:~MX}}lfMin~zo%E*Z8 Ȋgܳ#$_ǙL6sx#.9i%WOkl[k93%~)ϟՍ)~oݭnZf1ns;Qvзꗘ?\0ż~)'ibPYTc~OC3C ڝB7/5'boZW5XQ7cE}F }.O"on77ׯ",|{~,Tu_}RB{wP?E?)Vn}02Q4:t<8Q?LNo'زαo l =~L4L+;>SU-6ͤ^L T2\1‰6 9qKG~HFzd6ZTp9&5Sd""Ns{OqP? `+bc?"j=C qqr;q6(tNٰ2:y`~teŀ9l:JP0We YMb@)y3sW_:8Mjz@[ETCTKhk2!NOf԰IMV4i2uohp@Kp}XNYn&'lh~_ÈMNu_,D-UFUwOұ4>(=DJ-6F>Wnot+37 _.{r*;WƳ2>p) ۸O &tTW9o7.% $x^[Hט%>Kߏ8h(B:.Af_c RF䌟[PZ!EڪQh+D-n@|nILR^*dEUS®usOQ0 a>뭊K(T xmA{*|+UtHE(rh|d(E*D} +H|~.ƋOJW$?0 4 6tLq3m04/ `*d aĘʨ^@QTT5~[mi1:߷o)ς` />?QT#%Ԡֱ?~`L'0j>pR]?+x~Z:xqԁE kYU!.csR{{SJ6XUj*}/_?AvZmRlHi*ӵۤ)ÏqTX9`ѓ@ 0c}X`m KbwsWJ]KS_;ё?  N hzutE+tpGjV`GO Mkc.h&FGg 0tEкo g&*:L Pg=&Fݘ'O!+T0Nc8VB*eQtB6,@ cÿ8Kƙ HXp1Xm>jEĞn5ϵI6g3oNi^瓻jNA{u2ehd<=O(-$0j 4t4iN qFsha0{k/q޵ iث= O!"9cx5 ȴysJezZJ 9ѽ-(Chhf7R8;t?`i43ep}0J./==)@́%l_Kg<6~Dqv.6@Nouz]lVFeрME>EZ@onY[>/&m,rz2|;_mk'ccg}SIG_ho欛b0r\~vz' fXr9Zą-Q(L0;^(h_]1NH|՞c2=t[dp"p<ҋc| w"ij<):O+M-_W! K[GCOџ‚(_;CV'8jʺٔ/`ЛA՜AH`X` t!R:ZSAաquVHguV?Z?_0Zo}t6OldAG* Cw( {q`ɀ35u:bl4 g,4”3D+V"l($~4"r^/i@ߤ F+"RO*9V̢oۄ)#uV<%yٔZ9ޓ>g c( oGo2JC=K;XjP .4ktPp]; %YX~!>&pw11٧8[]p :bQ,eҠ*#1`]Nh)&>*9k@rCOhD|^_6:%` E\i+/rKmfapC=ACఙ4\]s bK h,  p1֘~GqۥUC&5ۯ\,cT/pU(=;E>*a?Q;??砝GQI [4Nwao{_ zr~&ITϻ7 n`g07OvMqG2t4dh ۂ}h]tm 6vD1x_FQbiʞ- k3.BJz^ڰ&4VeAMYS?iq W)?B^l"I}hOѾuFduA>Χ):2Q3ngT5O&}υd)JP7Eڻh-_IMtgM=CWs_{^3I0KO?{{.^3 c#sO]T}fBVϟ5kOPEqVYQ!Cf)sZwAD }Fv';( :0)2~D&2>jeR0`/'>}o^& Kc>o+Al\dD_1\UNu^tС+wQ hc:ͷNqsPys{;v=kMm6n8~2|'r#ٝU/emɁςQRWRM/2Zbu|p5@M >{,׏h'9Ebua:S?s W6KyV \@I ҰZ6mX-Eݿ{ 8+n?]x5v]QO̧m}\+ @w.Dp/T9[|֏M?=PSkDTjк?"umLY:~_QDž>QDRPrZ7zȓ""߾;\NMۄIU"zXe(ل87B>5߶ 7DDP_'?Rד20~52T|R+ +^ᆨ6IiB.WWc9]}>@^X_91|@Lg@7].ĩ&{ T_(ȗEj]p|/N`\w׍1H/0!qyФuY@J]Z2*#dz?Yy|7fFANëz Hl60}PI7z\@"k4qu>zqills̈́p;7f^G @9JqЄ~}QA/dHXvg>0sO1Aۉhs|R3k1'n*ΟwFǦH' TQW+ 2}0`Z1 שH`6 Ҋ&tRDc3&#c|L7@*8*JJaW`PﳮSګ&LDXUVCpzUl[Qdodž,H7'.m*qAQ 6q{sP]^ 764B;毢+ 4^_Y4.36W3XQ5Fe"߭pBP0<+>_h!̹V}*0e;؃j?COv祎cqf_ FEEb}`+oyc_UlOž\[}l?'U XT9[v^/!bf &hM(e"WyA߉z@ ?cO1l{fphdՠx'|?bx5!XmjPQc&ʁyHcT/t}dơ@PmjH6y1Ǝi[&>;_?HbKq3[Gw֍|j5y\PDϰ 6?񇜤4bV~ujҡ/&a?KoO z4VqNp=56LW}E 4&r,!R@P ^:@>s'Uc.",c>y8v/;r/Yb)y?rɾ9}zG!7WbZq2_,YS%F=>򬪿}D'JXHVÿ́RԢ/zW~Rԩ|=L\||vEOMނI tx5x}Czkf}c4ӻp46A<m6dmtFFOMϰ<mP9zu,:b3 MUDՖ螝݂8[+[M`՚.pKE( 0Hd/`k }_,M֥ tNI>M#5'4qwG=X࡫k(Ax:>D mcLuPc7W-$[Frs !{@6(}j̵@eb*i<@NC *hֹt Yà0WSxP?5|b?cox?f',nU|Ѧpu4y3MR/5KN{q|AB }e3~ρ{J*3iJcے"0r; _ HfHBQ$7v.#Ljq#wjBxi5V*4˳'bJ8ǿr=h͉h~y,h>j!"i&g>@?N%x!5~7{9؝kARׇ}k#&5_Q|c{P}!IⲆ QZ~l"0ր>lˮXIZ^q_!|-JڼFfZ-3_=~۲a5m]B I@cMڥ q#x5~;~Qq;5.H.:q}+1 ҬK2@ D]Ylf$4K3Y;(Ց.rl'jؕ?_/H·D:0WXbU^;5H_9H-ܙ~b@NHDWjE?~pm7Dfs .4$29l8 (qw;d1Xf5j#̹ab']g9zAK/k 4Px]fkl=ހ* fEJzt NF7m"jԧ׽&oѹtƼI+}i 'lNFpTDb 14}$(t ?$^Xo:ň4-W`tk9H}{iBf.c͍z=mi:3.ݫ˱Ѡ,O8 %iz'DCT fĨ@zmg8 FW ;}>okEyzJ}\| 1$gMicA?7Li-2rFC$N*J[pLCz`xz@Kg`WDq€H2V&9o59Q #Mw[9(=lfVLJC&yMgg!w\h`}h 5_u(0`5Y~҈QfeЦ^Mxjܔ~&pԈ:zKg9;p}e>>1f;\+ Iۀe?WySGpߏ /Qy/UCx~ROt*=+Rc (7kBM`Fm.XE!w?#a6YP/1CIUq@*1:g>X L"r4z hWH_Ⱥuܩyjqq+Pgw碾ϴ<@# 2< 2q4~ZhOs'fe~FfUi`rkM7Viv`_]hEO+87Jyvz'i{eN\ ܌4#:)~Arug#X.?iT.]ڸiGH5ƿ9eqV@g=(_mw*/6efJ@3L _ZGY]Pt4B.΍ws||jG5T/q'3o(JU?Ֆc|b\ /g,Iuߞ.&NGexz@ъe40vuM EIsd*3R2,İbt_Nv^7+ ؛;տen8yV6EZ!s;fU&(.HX|L HL@O0ı EV?…M^(*G2~_lx<6r](g:5%}9:icAϿ%  [2$V'⊦^z#׫! lcGG`_`HhN#*J\ (tXgD2ȿ2.{JiJֵܗ1}Sb!VmF 4ߥorc5,2JSFIl޶mSwc=Nr|Y}Ac&mD6 :FQȝIq0)FJ XdϓHՋ2QLݬM"e0lڸV>V^H`n@^ʰpW 98AJGdѠ'f/lBXSYW-76iVERhp]S#P wkG6.7g=cѱ8ϕ &A/DG6>kV'{'vZy5>W짰^ Sc&RBUۍngOúE'"]jީ(? j /5Zd` oN;ހE=na _*osڴʗil_?tqj`!7_WvՌOg^ZLP8Rm*OhVtj \;j3pJk"T׍‹\At/q'g SFMV؜Av]+ 9~~W(Rw7ULK @O'6~T`IeQ~!'Q8CX(I[fES2M+2-fOڨ_nگ*Lhr4D',9@f`aRW 4[cj.(9x?pzZd n"qt1 ؈,h>7DUUwҌ3p{3 8ɽH QG"Í֚ZyU@ i@ܷgb\oJc+񋊋zOs@ب*:Ž**鵸w|y^B-{]4qA[\c%Et4R{>JAO#D BphN]y 1tAoz4yιāqXLc4=/A9L"8@,@e/x>j^鯄j*tQC(ߨM dG(QsO^X_Njf*0pվx hN9 w!P<}S#Ͻ@s}*|:Iޯ=; JF" *| &:u# g iB'ӑ>n&=^*ϿuQ䶥x McC"o;^axV8X'p .N'AWyCz䝁(rq Z0tR-a*t %I_qUc4@ *)WDEϞfuBU؋蠵ۡIe:kEH GpYu =qIAwccH O^NTuIjU# (:od^g=-o(OBP«q*),WrǙ0 ƁR^vv='?-#?ׯ>ocv$A+PvK~<MtuЁ c4f[k$b':~!iW:z6dJ]1`C{>Ya\W3CQ,X+k~V,e - ]5Ί}p'=.#We:?0A_aCw>dq~\V':hɦ\x= !K[X4q`∊iSv?\PB-{A#2x?)VTho)d_%[؋=w:Pa:h Ɯ(1ǚoT*]~ 4!C=`;P})?h^G]`W1nVgs$X%:h QYf{``LYnqapbOW*s||#R/D"Ng ˌAI1]&^ъGCh\qҵ;&bҟ~ (^0FLD' 3A,'p~? 4-j^וFGMslU#"}8u !E֍.HǮ?Bd͋`QFb8UF5 8u[d:7cqL.o~2'qu2To#T=WJ' G+vJfVZs& n=rC]DNށ[1hCe4A3EDV0{uj8B.pm&;i^O-_aG]f>(@wZt~-@G]2<GaߖEBNs8܈RFS{Sxx#>J#vx1+޺(4aR}Q 9 xx6~@3-`jwq@o}dxG4[tHW%7*m"'MDr:oۜ寧msCdp۸ٴ1hB2c.p&~A2d4̙ ڋҐc.(a @ٲίXgWm& OiyXs3s5Ae9mFpEOj18@srFIL/2$8 &z巄!O6v |j'59 402hL)JqӁ^X(MᒯűwIS@|)#=C5%ly5~-_qw[Co 52 mL"̸|ߴCqx,\W!4xt >&9U( vL#/~ˠM1 s**oqn4z5ffb;ҔR)E=Fƨ HOĜrݶ _O< }c*ݲ֏\ Kѳ_Sn+?/D6. /xȿbu-orHw{ͦb%4I8Wjn C- S÷Fn萉 B_,֥j4w忼XQDfKt'<+ZאALH6@/;5pͦﺞ l@cHb8(/}.7pym77} +J+K?C$^5wO@߰_^>oεw ?p8@re)rkD%t/$ڡ-?,sEFDF C *}|<#l쏯Ytx|.6NP=vN@a[훦d}n4"m79s"b15xn Sw=E}|pØt'w}/E!/ Q{=W:4WS8[[‰":jn$sqbPXC mC/3bLe9= Z_]l@ys-,^rQkv? {.^ XC@m , 6Is?)9 LfC?$Yvs:ԕNpAJiٛCzYS䪟{~.ޛ#Z߻z" fƝG=9v1a[„2A^C?gK,~*+WU6tr9[1J}E*F`R$\&KF)wnW=QhW;O|ԦB]9SW/Y(^i0s?|idu_dhAçXpa'Z[@9IĔֵ@pP&st>~ ] !nqO.||JՠB>?+k`ٺ%J@q4(z ^oF (Ay X˳lu/ O2 "3Ot=A%-TQsT[@}x8!俾Kf%uܫ1z'/O"f~>wn@0Aj*a/ WIEeDOUW7NO\\%i:²/$p~ݯ~u]0cO&B ;=+39_@a:ijN)v ',մž8+9$, R$z_[OMJF"Ls7͚\G; ֖'|?xg`t֩ "AjwS+Fith5l0 pcW=ӑ}D7<Rn4˘%Аg/\!u~<߿Wg}‡Ov8C)dInky[xx#q?( hu"2WEZ&x+6Iڈ]|}OP+N/$Yñƻ:J|pnڪ] EyѝɰN607A⣁^<؆AKkg.Ovt dPa o(&M ] 8)G'V`͟9Jh%:MF^xXIv%Abx]_d{j︩k@=h8/ h.ȞY=qN7[[[ڧbymmwNA&O%+b0j ul$i.vn^ZQqʀsj+ҍi]l00{LS;%(ʄn}cٹR|L}_֌p10>'3(O` zc.NlWM'od0cFf<ʓfbMG~ rYdna<źw2xm]/g |+^)[=k+Mdi?d'1VY/z4t]b9G UF (Y0~a֮Dm^^Lu5].%u%OU;'+U_c'ʔ <5֟>$̣x_zs S}dm\ 7CT,vqrT[+_G4_;/ÃR*Jh>l\QjPЍ?< ] dOTo ǭd`4ztIۡ-K&qeppom_+ K@xM& XukTНFpF I=hu# i3Wa@Y+u08XCLAC&ZTe \osuMQL>qZ@ѭIod#zQu"-8܁` qfg˳cg .Zd\6!v3o\)uk!Rcx?/T}W1xYXNaѫ (ѡ6Ιs3pmw!u@=zٶ tC!;3-L3'Ea`F-gPkm&] ;=Õlg_d>+c.禎wF>ٸ@vi-sϱFXMZz~ߟ d2I q?3LAZݡ/stL$#ƚ 8@Aǔm#|ǷPC_jl;Y_K\;C'}BN/C+FZ$IGRΑ t"8RCIQ<< eh9K'r!}v1,h;^E{SQf\Ei 'NF:uyWH<_ɠTz _k\-T˜AzmCu_yRo,%,? `벴кŨٔ$O:Pg0}1IQcmOAn8cGli lQ@Oe'ӍtMm y1bckaI;AҔӯ5Y5r6$m/ԩ>V,\|fhâN'jL $g5|jD= nlb?%sr{,,a(mC!:. nܑcYn"A;eA1z@J,HU?pU* &ngZI]J = : c4cj{!EWdl,7} N*6fa ,& R_D4u.zrL+b4E[֋?w<<[cOJp͐i< oN:  ~v߽_Kiv$hK2p6bTXRI bplYĆhejT&3_VRH%6C7̅@zb17 韱42xP xSlET?|:5*ȿ#k߱pJ&s,?;.Y^X8+W?tjtܽAq>?r4amsFKb(ەPykfu$0%tհ^"nYracq7.\ߩPU:7yI)dS ¬y1IBɜ#Ix3vIcD-ܽ^q}Y﨣RͯvjbHdEwss۴~HEZ‰X_daxa-XL*@)=r|//rŝuMrzhX)1uJBQ# a ]14?Vj^dA|:ۉ~l:}um_DM_]ikgD.걯r{NlTH~>.tx/Է~ߧ~?/JF3'ay[|3Ì SMX`8źB>ofۏWi secE]amv!+ѲRgp &U ,Hōձ–P"!*A(A ٬Y翩JY^l* -D֘QߜeK#;EZӎemVZ #1Npi+GB\\Kv.& yΛ`z^u {A} 0xNxƙrl(]q3ڮw$|VCy㷟흧p}_KVSVwTrJg0{[%$gkm&@&h }[pN(ĩ֡>@] 뒤ݥ4>>#[\yM^L/fkq2/&O8%u; 7~-i"=dHSPX1 A1X]Xi:'Jك?Ic#-\'P wv*\^Ђrڻ~|BW,"WNo8 \2,V8njSX!r\iuxFGnMzFOk%՛*]!Az $=ٿ>˹]B"y*6ۿ5`1ƍEym@΁*4c3Z[rd =NxSMgOnc첿q I%1^`n^`mQZ:q5S?tIFe|j²\ l{N w7*U ݘfVeZ+f̟ zLJ| T{Lǭ~q1b5|zoӛ${5%Pl^)A~uKMX Ȍ:feۍl ؊:Yp_|6}'E:Q-Պ&~~ӏ67_ 4ٗ @J wGdDH}QLBͯijS7ۀ&zq5}ye?_"E_#Z^uK^/xB!F8z~>x?. vЏu3{FU^j\, PpvKwt9tx`} 8ǞLb#e *[E=\s;^Ⱦ{펳"w.@@h {MKwl9ιe5aVu/N:T5Ve p@Ǯ{Av7B#- m\](u{fALx.Ec V]w*:ᖭ *`b87cRZa$+oH+y%' hbx,:T^:$?W>ѯ&O11^u.*0ž~.l^KiWQxmhQzRU[0]%*]GiR}5o>V}R;vӈݬeoF#%xa¯Fk뱎C+ul++%̄q 9d0 mJޯ<~Q :bIQEy}ɝG@t4tDn&{e_qT^U VppqWw0|h+b CM axvs!I,e3?C;REcܿQ/ο:SCwaڿ*X ~m~? .fnח*JRH$pQYt-K_(MҜ"ϮEg=7x7~7oگ[x}5<"J5!1EIZ\b2,V*y2<$kwދ1~Y[ܞv& OXO}b=0 O#+ -?KnQGu ox]U UBou%vk1(qG訫)/ oⅎ3 "zA/IVD:#b?5m_6 Tː}aq̡?oBoqL?ds1qo8Ho?p@3Tӗb-o$l_bt0h(Y&lN.7#C#0,y޶)UֺP>d_El0 "mQ`+ar_`*rT;1E9MYHՑ]&5yZ]E,}tCػ|/377B[@|b`+_#ܡi)^!~c9,ye46HRg7w>Vܙޣ^pF^?3IP#~5l s?*ͪ;To6ղ4en ݀}Rݍhӂ.Ostv?CG/ZVw ^HbƖй 1!ڽпmzfѲW?;$@*֟+ү>_hH԰^U >=RuFTɟOчw.>}Z2:IIMŸyk%)tzҪ'_}m@[ʊ"F ~RGw;Εy$W5?7?V`.qK~}מ`fjs?%+`x4W?KM7>1N<31eo>q$p׭y-8"oQgcXC#Ds[A!:L*iz;f2벃T7Yv[ZjK&lm{dP%o$x͘nm![ҁۏLuxpe竰FNm18P21^c׵KЊx ~r)[i% &c]8k p|%6O 8xOxF۫f3MO54A&lO\>~S:MN4+~:]_s>& `3(.䞸ӡ"@w)XqV}_ `f0"vqA_|FŜ2Ppw )<$0h Ѫ3˙}@OH֛& =~(NxGm uKQ$  nܯdu/4.8sz Ix tIz]? z/,9$?MV O;??[0I4>Mt?>W7nHW4@8lsO?e4,#I"4mtcR^4c`oS7dt_ew:VPhfS_zͫy% _O8[pY1,NrN9: V,.~^_CL^^uЧ9(d R_I6/4Z%ɾ!$e:ow|Hy=5!s$T_%- IP:~Ejg ]FzҺQ"Wq0w+]*'a|S|Sc-;!ZkAzaƏ/ܢ*/ X[ l<.cU'KB$)rׂ@IŠYh'ws4W@C-}O6Յp]x =ityyUyxl}sI~cC}`$6]߉+Y+%\s9h?]x?Ef̚YFg˚:ؤFr- ;j;B֮ׯ}s-(u :h7h^:iV _}]Oj(_@'w%7y%߫2Wv̩/|}BXϟ\e\-((k]_/x?G2giz)LU:C A׋hUL0]Ho#zCHtS`G8wVu:Y5*5 [gJR]0FI@=_~C3AsAIg W;ǛYոw+9]#n ϟ\ŶtLXߍyY3kz9oט7^F~e FCa'Ǘx;-ħ2KT]b&q͞ӏ/Ih@ u/D')7uPۯ@NAQH(MHjCjG;8~ljbL+8! DqG$VtzhAK̊6j\Q_0\ɘe],a[qsO.vD+o@ʫ{<\3`q93Kt_Ϧw?`aprЄ][hE37 Hsz(,H<s{$I֚GyÐe AeC3 1,1OI\!7W;- ƜQ֟tsRqD4-w:Lۯ_7Ԟ?@篫 l[ KqVR S/-s*5$k6(@8'f?a:ug7%#z-׍uKۼT}~9$rm' O1t8g@ΟmSf/k~C/o/ +G}kї-80.O g9R)ƋHrCc[>ux,xwfԛ6>9Ġ +P*gEarh#UOg_o\WEϑ2%t{sxf5~w9faqo d'sO'Pulw|.YT M6?'~2`Rxgm 4'^v|~tQ̏i6пAH(Ǿno&Hct.G˴۰c ]u[ڇf>oKE=7+P묧k_\޿K CL[3%ZwsZ6KeWF}fJNxӱH\V$Wn=?9/P}FGsxW@:!<ˏWJHuYwNtw|Wh?~_d璃/ ޷>aN^Q?p|>+X| ,}?/Qbo753Xlx:qJf#VWӓݿu4aq&4sˮH-\ ۗ<ݡ%M^֯F3:?w2 QjLĘ8-@ҙyXZ]k̷?mW~FjL'v?-?*Hn8y: zc?\8᳆qElISlN3IbIi?ӧ 頥|~~?gT)ȶo}᷼+ec6Dpp^1PHۯYK]C=~? P&??&/a}@n?/G \$_O MN"7X ־I 욊7o'$2h~k- +o~}g Q?ccDմj$8~_mRL L7]j)nV,\$cq{d brOCPc/=N:,?_tvUiQvž3BіjQWJ͡m'a dCL:M図Z#)VݚM4%.$DT0l$;D| |@&!E`(R^G8 0~P/BsF4eiB[_ғȑ]´^z]&).nhoirUDu:F'xvu2dsߏ-r+Y(s_Q?.G/o l_mx6~_еpINS4y?`>_|fKO!R'jU9PPH)~U;g*r~f4_qӅdӞHMg02>ɚ'HYdr I6z` !~gUD77.,Px]MWT_mʀxnB@H`]s~]YE}ubAy5P =}]k_s.pqo%Y\Q^|E;~`Om w/ap ;Wgt7HUl7n^2=zPK={Q%MlWэ&E4xKςD%-]ewE _GlIc0[tIi+ʷ6)num#b[eJ޲Lm.!(Eu>O`KygS9sfuC~@lh&4)O\Ϻ[iB3a@7 o헙 Ya>/|G([u8L_/٤}Aʲo U `yaZ|^* U|tϗkz 6 Deh"\$*hO7Wj\J[3„y^<>,'*~bfoz˒cXZ2%i2NX螑"(6b6W0jxdҲG `\oKS1qMjira=#hwz-+xLN#eEL8~,2A|Z"x7W5sHnxtM9@~łp/@3}K#ZHaf]S~%g:Z#MB㩨;(yBz4zw4D90θġ AR.`tr;RKB~^'|2µK{fw:c:fZE=< ~tj6@VH5~'ˮAYlvL8-[ BK۷!CXPP'/qL/DG]}eЊoB4k1H m }/ cwEb>5mVl?ُW7tx/JHHbQgyT̋}uݖ*k jJ:FIq(l&lg>EG}RIm_MdЙ tIh\JtzPW!Zi7!"Zp(kMD͍:~yV9^Jㇵqչ- $ Q |yB?hGbtO`j0zgv j/f9w`uw<7ڶ5m5#_Ê&۠pIcR]^k٤u٥6F99(RQS"HAgՏJEYl2ѭ*_.Kh\n6iIJ[ܠVB =Ң5vt/DS};?3Sxu7_Qf꤆uh1k.WLH3 D5sI*OhC@R.*?+ns]Zcح@ C#3_DBn>p|~ 2aԯ]?h Us`@̀ 8~1FVHg dcDH.sr#1`K[xTl(ӢoO`uk ߱} {w}#% czp93qw>BF(wu%4pFԙ^TcD5}ۀo@uT䙹&e8Ud@T0Kׄl_3F-@@'`w٢oG! ҧ6e'QC:gxEos7s{*"5!7M'ߔ+l $EQJP_7,{yۂ@g(L m1 0Շ _ 3!@k@DJْx?5,tY)! 3A;imӆ4-? oM N8B؞7.NC~LuYGNЁ 8 7`7C!8׍ L3o: lBzGu, -~4}=Aa'&7|{b{4$)vΡb|ĤS5S;WSɮ<(*C?x gh,/gڤ}><`F(PKaS@oOĴ:s `uҸ]*#:2ri cDf*]>tΞ,hAMO,9sтtaS<1`ʡq]zYzk0>n_k䲂w J?Y FRHRw8xe ;(,?[NmtBMrPe%p|VH00TL72<۠15pP+f輬̱ Ю@tht :QĻ6߇0!5ljs zbtؤX2c5n)k&N[o*J{wx7}CrVNFֹCs|+xP!Fƕ L060u$2#}'A6(8ڕ~Ùq?m5Њ|>! s)a\IcI$F":鸬lWЁq2GVƅlcGH> F@$$$^ۣcڲ~2blie w[v3@ܿ|CL:]3d?ͩcj3x aV{?҇:,Ǯ!I`s(ި%@;#vS ~D񬎥8ƚ=O/@os")J. v]`W46W :n^uP S3͎D*\OGprGc\lD* 4T߁IǯPr{AsX[K 0$)Ò\)aܾ(ؒ'UFLRY5^7F1h끝ƷTX+S{ To̒"(SC+x9UX ӽm*\i 77fRnEj=rc&y"ɔqtoƔ U?yE[@$T.^O8ԔB#W|b4y_-2p!$y ޳`0B™,4B:""4ja@?yMFcDŽ-ꄾJ:5^ (/^\)C 1&v1W^Mfh۵e[)p^ MFߝٔQNEW:W<ۧ7) r8p[ f+zg!`}^A ӣFї>γ 3,zҏ,-x볅y\_+oN;€:*l?{XqFTh_)]tR,4&[4g ) g 4/GD6X=/ʈdL mb2X#!$7I$_L%ukR$xOӦ  37yRg+|~ Əl""bB;-ٌM(頡po_~u&iKhL>#I".NINӑ&Ħ RE׊!BB/ׅ<}j?GڅRn_AeP$Yu>TώZf#j"(agOt<-gv;$P]`snU 2GThRs>#>ل`%_vIikO|@j53<4{X43uW N`hj5X"pskud'˟:#qUDy+gi3p]ȉCo}~޿BB2KSʺL`p<;}qXR:hK"J>P~*R&]{OuwgEc 7:Bo蠓ƞVṶ:_UӕZ QWa?)U')7#=4A32xFDi;=BC3ѿy]XH<4Soy<* -W=%Dx}!XAmzKVJt45h'%7{ }Dv]/ÁQaP]ߡp"":Roʈq/ѿ` ߻r_L`_׳>i3-N0JͣWq8(g\ЯgzτݴG/_Hb)z"{U,e`lv,n6 IZggs`5kj-ɍ _4@v:qVe}/vkGg_(tv<<'=za!@|y:htІOYNo1H2IHx-*/H7~MHs=43 n*#i_/}el|WD_?A3uĀX`up+O)9憼 \}s@ Oo?}CoT wFj YI;#,vFGoٓdwYδ ߾{]P-tmpygОYBxJsc5 !K J`(_cJ(ezfU_H{K2WYqћP\Ѳ XfD,As |/3I(/7G$t:~}m@3@GE1/T.09".߿4/n}2bLݟVnØ!xO̤s hb<qGn=(5qNPun4&vx&9 jRhz㫦3&jIP'8(fxo8^SKV ɩ*rND{d2'ֆlP;ë2P(-3$apLyW@BMt"2hݑC$>tۖN@qϏ(&L -qPeBYg;t2ԏedyD!@INVp vMѦ |bm~ o};Yܝ H,-z蝝{kꩴl3!LWϕ|BA; Z5"nc= C؉NeR@Adz@:_+S]M\*}4|A3t>jh+ YC>׶A$-6*JtKX .Sv$"C!$XEDC Ph)hr>J긬RqRtEmvUQty _IXKѨjMGOt`s!u%`0 :Ghk\CL8e!'$c`.* ?VZ>QL_]NXp^tZ wCiȝ/Z&qu ԟ+?=+:X7(|[z{ٓ_DZl>[St=xܿjKrGIp|;=?D*=­^KQ@+HD'W37D? g FM)^fĹ(gyOy2srza9;&{5[T)W{|x Ե>t,1 ?kt3~PqW"U=Qd@9Xjz͵)O-a_$9hAx_myЊP/Qޕ ޤ`=T+vm1q} r10U$Яph-O KIyM!6 &W•fn]jJ7{Dlz8?tdݔG 1^S,涂b 8z~&%H¯,:.I(+e_BS/ԅ."L8g"@H[\@v!wf%wMJ,F!Rsc׫'Hd/DϹ*~g8PfֈZ8s'&٤y^tY[? 9 | <;OjӉu j V@†v$@ xNֶMn= 5c{6L(lf@ڃ;nK@Irt܍ݩk:DVdA#6~)v<Bw\;_o J@c侏B0=uec^u׵gGZ#ݞ0]΀}}_O#O@MzU-9QOLٱ7["SJ? 4)g s0ߍx5>7(cd1j|5Xe=jnEdGb5*juLUD JmDUhv`Hu8G.~![u,4d6}pxڤd[ qe{dѓ}ݯ,K7"Z?uwmb:"!_g!6I ^dӥuhجc"+ 'u;F5t'&珶V$sn -A$&ny㑘̖{sqϷ ~2{"2TEr:.e=l5=3gb%J5<`Qu8By(%fWD#Ӏk1.N>MZTi7hbKW YY+P{1s'; `ڦˊ"_݃n\DGa񮻴-k΢oKM2}ϳ{WAsؠ̄%u `4EPs}i_687JO(&iaZw{Ӝ +/[EcБݲAujUx3#YUd#"uOJޝ&+蕩ݻJj mn*Mr7`|I+&#pvoHF 3AOBxf_֓7G(J=B^羻kCo쭎ݟOE=*[xw+)XHr4(| j$m4# ks)75Qd ݰ$!$>*UJţu 9v&t [*Rm(dO^r(|y1ő:;' pkD< =C).$CA5oq$<1;ogm|~ gIVcBO3`[1P)bswj;_~,_%b0773V[{c>iO 7-GgQV'" 36Il`M(0*gT/ q/*s\ѳg=,[ȿxt.?sv|O47we H"?j8/hqjw/. Bx-Gq?ol,8f(aP/r ЋO;tj[r>Z(`i} |Ģo ~D4OQ+袆nm-y2 .=^& YfVo1|u6џjM5x ??_?7ֽlG.3/Tybs{I[004q| \30jǎV>X$cwd{bpnE1؏`JiiZ9D㚾-,ӝSEo{  ._!=`=`=QxCb#jm}ROc>!}_@:۰k> ApF`.V%,qB+vmC^O "]ۈmTwnFZ6 @jg]ߎEϳԂ^nw9٠rg;`HLaP'F{zj+\+bt4mHgnvRBh(l/v`wʆfɽx[R'p cOƛ:#_m_lI}QL.5ni+D 4IgX5;9u >4P Q!RB A5a~7fݬh;D&*GD߸cqqtsk-UF@?Y|tsUK8SS2)-CVQP g\ <P3w2k`6%}U8 [?G[?N]8!Nlź=Mu}$7A◠ߒ9{ P ;GYˆҦI,;t&S18Du.+cΚ$kߝf)}mSEzY(i$ w7,@^{FǗ?kY!t ˞Nڰ(ղ,ib!dԑ􁗉Gۻ߿t? ^+/cm߿gHg$J`np SXK=?3 Nt~u#~Z>P ?E c YH1 },(yɌi2=HHycwǴ9B.ߒIo%`deZ ^(Tzn?x-`BS sja^x}kF 13+NNnb`@GQBurpLhiyn7d݇o!~ǮTjbHXZe/;8 iϧӯpt܅'"XÒus5OwI U~­ Z?`Qdu?Kg/g2?P Iˆ.*KBdzoRB5P |UrzMQD3$}A{}My&_ vSjq.I1U\>pmE5Czc&9Ѩb=Q8NNS F\t³I5-yؠ+vZ\b%k#<;Dq{F[dy;3o6(h2ȴ+A/݁:}MX,N]M@ aWׅNB7$f)㶶!=Zl;}i[0G bϪEк|3ñ+CB@S:Pؽo69=҄V&-hH0uBT8I&cZяH9IuA!`ѐ(ip7RH1X+؏H%|l1BkaIEq\x}Sd\G"JhL7E$4^8W%}1غJ9vGM; ív?Zai?[L W;|2*uge4\Iۯ~YI%H.\=gh<Sf,~8&( EV_jru zF0-zhZ\#؞6z%)?bqX!}<_\޻$ :Hp`M E0OB+}D"Tpft BO3W>UrSL|H!&A(ģpG]I73`soR&r@Y[΀cb0ixЫe?v-3-6 |iƺ9HTݤ&CTӈ *7R$D(ny(ŰEq7*&a'|N2k^> pxJG|O wiZTs&İ꯶OtxI44G{?>R,>;s|ເNp׀TpwsDCZK^wԀN0?ɨ2ME MJh9ܥuPh#0>)Ňb (Ot'T]Br*pd& inLſ~~*=~ dt (':Jpf?n92FnePj/6U*4x pnJ[ۇne`٬p˾O[}X,Ť$tN4Sx<[gӭPNGeF0".:Z,/iVNkfGO:b7[{kkc]?9H+S8x{VO/:1.PA/뀑 pdlڭ_RN/jNq62V"q6Vύ&!}g^T ''8- MwgshEQ8V߻uCU,ou,c@♎[jDNsl/VZF}t&|_Zدl -TG~̧7nf0gh{O]E d?6qsT8PwZVn YV{g6]{9jCk ۼW1lѫf:įIs }PO*f'rpԚHom;H`z_Z]jc׈$Ndm$<%u4w9lXWؽ/"j hD{Gj'pk"3ooGb1L"ȚLS{8lHէ{[xzj?ϿEU]v-Hcհ ?7 [DӔ1_>gf@6^ -^Mg/$/wX*7P1Xbl#T"$ D:ႆ_bl׼p6^ߒGun^lɸluh ~WC8{9h׃o-!I,Ljh|_u*>ku׾ ]č_hg]:utqJVf7BLGJKkԝ^QkI%)gr!Bt0 ga 7Baө](+p 39`=c?ⁿ~ XFVwuUXGqu?(hʢ[Hh΁Ն Chl zMK+P[bR+d ;Ѣuއ;_KKMSXm9K" u~Aq9j 3^z.DSr|f-w~ޯf+Ϯes?4d:nfx0G% Xnnף^6)E!D*OP3a?tw cK$eK3߉Ŏס$<0\y%,?IgKgr`C7K?_aZ >b8D6 @g{{]ҲK"8pŽx I ȤE -J̐6wwgO Lu "D]@V_0usL,-VR͓2iESdlERAѺ~z ;t}˾woMm? G(WS{FdaaRIY T!*<9l)7#?*J|VQHY+^㯀~f:q?dЮwW*w?36'dr?~`] Ϳ>n1.`G^?K,~L;%(/cg/a-CDs!GՉJ;^?uX?uuf`FYo{ *,߀ t5ڗvKi^+aM?߾FQAGs%%oL̨yLD0SH/;7 IQ՘@_M-V6n7s7_B԰Ѻ-vwEM`$c֩}qKbjdX'u;JG'9g޸]đ&wn KݢDQTa?+Qؾ)Gw$qx8`~:ƌĻ_˿f/|׿UZ@#!~3Iy}mGdLy}zK=`MUW!)a]j+~?=?GخySjk-5:5G$-~蟿}@_@g ; D{d)W L55F"kob .8۷8h\/UysA H}=>B%"מX_OZ!ϟZOݏ)}ay#?P㊟ l&5tM ߷Jx >a5׺[ue<ړuḞ__| g8XK?CHycRlkY1z{E@P46}PZKJ+3z/g` n@?D_\ÃR\Tr:>CwR0*ر uRm/ws6v?w=5ʿƟ~.{ =ï^X@]:uMʷ9ӧIץ ,'50;0iȏ}_Gys'lnahssYbwb?cq#K|h˾?Ѩ w̵p9ܑ&ٽFB/4( wςx0.=Fn0TG~G`iV^ { d:LܞN|\3Š2ظw6z,2]֍Fۿvc jhaÎ@-mo}5D؎pa}Tga57,$͙i6j= L{u26AD|N3c`/GWWs@X'0ŐckQYԏIL <_SLp̯9gW YogHJj t9t. A2:Qp?OC![N芔"Y$9a 8 ߽xz(NqA.xa,&kGԾ6rkw %0}'?\I@i^s0c?Z>y7OIqxKFkIl]_ڿZ^Hh~U⽨-) ĜAXoABb' gc?LKL S0Vw)qob1! ɽ- t"a˺K>&1!`nDp=Hf5;QgBJpmmçdM 2,/b2p3YQ/ ,-HS7z P[eQVm8}) K7_dggx}@z:!W%)lKGkY*|Ot}6We{ M$}?5lu,TC >2`nS&8TL=f H "kPZ\o4!\]'vɞH\^\+N׹-ɛuz12ѿzzԹ|Y9$y? ײ蝹 X>yhU iW ZI )ѱ&T6~|Y CS /LTtw vcұXؓڏpm?>lgW31Uߞoz'*NѿJ=svwPUx eW}uNQz!MwQK)mXE]P^.!JfN[>o{5;_ALxu! ySioe?f/Vs3M+EX1.`X˂&[.wq|63[.e^\?Y7}&L=0$|M.  H/:$x(V'FAsvEZ~ N.^u¨|+d¥y{ ܱ X%DwYȚ6J:C|l!::28s`s*$li?6`.+}J,7htxUT8:,_:Nr % J]Ɂpq^Q|}kpnVmt7H2@p_k] oBsiyz1BKJB;9IeTwYᕘy\X~Ia_6.^v&fUp|Q活{|~p!:6YAhzٯdCdFޘUdPq9>*T{T U@DO"d%ˍvAO Qpe+ W[?ȸ1a ]`ȋ2fIk幣-Fhޏgy.~e\H`|~ vmsE@|CtCˠ 7]|fl}aZb3Gg3+^vXןRh#vK3w.OrJs HzhF+zx_s#4MNs\mmE5Q_ 4甽25v|&-.pì4C{ҟC2cs`XlXt@=qkkD2`WP&报mOs_OLmy%kDyWƠ[lxJ pA_7i>0}S(32d/3<}~5;E  nG*~ ؤ;Ads59@G~~~;:_c% Bfĵ0 Z;eW "哕__C3_bm@bO}"/n ӓ/x8+"?XBߧد)g!s5S_[?@$yGeJ>yssdq}P+|ۘ[c_FqEUs&1Ne?B7܌GuIx.߯#,H!4۲2v]@8ɿL6H6Vgw#jny=> ֋-7}qu=g 1k(^`if4hP6L iD>3:/gH*iܯ+8Ho|@!";S{&!.lwI7;MjS7W}7zcۍz!mcf#t)*gd7#e@ڝTkGqgE{Qv|j jk8@zgְ m1P3v.X' J߭8}Gja1Pe}`P'|bI9]'tpzpydTІ 7+)*DK YصY}vQ88P"`8ߒ|{wÎVO2v p RQ7&,&5|U61X߯2ߙ\Š䳞Ȁ漐vgG'|bTv Ⱦu?7RT 0s+\W]+K@쩫 Z2͙uAq͋ :JPD-d?8^Tu7[PdB c s q73$pF-ݒdGQϾ>]ttvI, fDTHMD~Dmflژ#HD3< o]ǢV95I#[=qhR?b[󹊲v7~l[V\M?BXcQNPgm~tzB0tA aRA6"TLUX(-/0; oUU7LU,(!~E”ؤV_:#[O׏o`U>k?rwsŤ;w{O;z\)6}NycgD=U$9=əPr`kاv>ߤ_Vw"osQEdCĜtz Nt=9Ԙu,#igs*n;E*1Iڮ**-ӺK#XיA7s|l5vѸ'킺:9N 2}~5izf︁|=φT/ҰΡ96]CW#x\3Z?}i:(D4Qˆl)l󔤤))Ldozxfl&w_|zS%15b\t?ih`tOȂ~-*L kD5mIA ǁf]!r^G*$8pW{̗fZ@ >.3>t,f<H$ ]rH#յ)ڤ. ߷Pzr̵~.Xkjh7Z+=qiҞ'eQ`l|"fs TʤG\UR#ׁnntEHp)ƴ^ q Fp}A rZI8 ה"΄6%ͺ4yt ZS˕DKz{ED!`ӧn01Al4qR:)d/|Q@ =5w42FmbIA2>o:._7,M9y[P_PE:h#=`x4p݌昳!u3dy ~&7E9}GT3{pP55~!Q|yr-}wtۈ\ J| 87\IP:KҢl-.67h{8ICd Bhiߖ ѽ逓80e@mG%ޠ@l1&=x.$^ rx5pCɅCƔК=Uj[csExZ7;&5_Ζ@+ /*Qw5صI}`zvt "9^F-lPC+ٍf7s?5YccC쯃RdK.g\=6A}?ؼ8/Gww>2?XS hNeR4c!Yl!{@Ej䪉koD7ʚD IDcNod%_e64DV}爴oFiķ (\lA*pC.L$̪Iid|ոEݢ'׫h W4 : WzޭN/&"z|ig71qj>}^nk^}w4 n z}]Ś閕5ዚz-:4~%rxj"z=6(QGiH`gucjLZh^k/`yC O<2iP"ReS (\{P@j5)9%}Cw?lINJ'Mpip=T(b=G`c@. 9I~cACWQ e2)7t;bj!#(&S ElP!IRg.͋ھeAŻd{e!O$ 6-ZWCp{h`+3/6JٱBlj&*12&\oiZa9m<_e4}Rj Gav@@HMT<%c'Ϥ FCw=Zm{[?oOdFpO(]BO!'_YC2k9i%b5)@N`m `sS(ؒ7ZRu|+Rޅ5Gtؿ9A0G}_УJWBzEM`ڿoVؼN_Hfqb_) !2W"#{`7]s>O/_sX< tנӚi΍_D חI`\_&4,x#__S El7hp"GV6uM"RFG=$S%{ؐ+~ү?$M5I-5,ˠm@ gp?x1 oLhp{+_mgUJ ^sr].44##"ѫ<g>0mwNq84(6=/nM'f6}"0hZހM,pUgq&J V߽b*m.gO`HIx?&󤧧lMka "dFNr#d4_ֻ6P2|JNk M0Ő-efׯ+?AR p6ZVީKm  =eVhYt44&zfW[xx$j/y_3S@ *7b\oO ?= =fq1 (n jⶏA*A\BO;Swjl ]w(d],(5@*6tҔ_T҈'^l)Ÿ_̥wYFlfz(A>d%hùvy֦{Yj)d_MV͙ƮP Lhl@m o޿ o˝(F^/5[yOdpdTI b@HQ_Ak#}Laٟ}{^ by[eb ߋBw:zn aWtl8]:QĎupȩq+o&41p? :h jT7׼L<@?Ʊ`e# ,#?*ݕ+CCb }1J`GWUӫvąV<D~8@β1O`GK Fl/U`L_npm0s8I1jWoY:su#ع&a- Y~A҈Qю{@M׫aȅo]sZH}<Κƕb|sM<D}A݌[:֭8 ׋ְH\ozmɋs]P tSmAmgpཛ!J&_86Y緙|a\ IN_JA]nSW/cǻs(c3 N9zuRtܼtcDo«ubD6<-4;6an~j~^(4}OpN: Ɏs3JKbn)#6@}&pXUrZ v.6ք:OcqHTv^dҥ&*o`-!djEu5T~4Ϟg:MDge?ݶ?USzU4xFt~gqb }U\Ɂ1u IrԺ˸xERry~^kM*$ PlVA6F Q/"~Ul`65O>REUǙGF=ٌ2}P~2J41Cc!{O%'-#;/sFsiGC#ٱW80.9l҈a4fY96'OgzU6Pž7tqap M<ŵMܓ9tuCAl@jHwwg喙Yf-/| R phDб4'?o)xN IWy=(uNAP7@ 5 >Sm >⩓<^FXmtΟ,8^-0o>U!T Ԟ:iy*~y'*rt&ZyU6,DŽΏs MzC3'Ei$W7Ոߍ'JVv?/%nwvC &Ka#]}6^{`+uh12/Ԅ(&?|q{ /?e+0OսH]F`z-l)nך fFX}AjUFT%xH#(snfb7FA׈i6*p~/&Ճ[rmqjkѧk~Q?&ߦU[K) E ROG8E|=hRV϶@^iW <ӠX{Mj=mn 8?oD]?E '/0"~~.Fb6 1z^#1M%ЦbBi)Ncz `_3:xpyfpDt\ ZH .}0{ݘ\GrWx9//?o% ^>(lf쵃j,c_ܚ߂ QrEϹ;IEn?3< 6vS|R'+jstZ<VQ9ݘc;51@iRDX58H` cEɿi:mH^U?ƿ$;Džlݿvp3{Is4b- @"3^?I Eg/r?6nBXΟ;8[w?YiY9qʈkDi~Ҳz'}4#JY,<(;}XO7Pcvp$5m,YߌzlAƂ~[QRuwzB{!ظz߬,Q_wҎ0)Bh-`7=fN:>w,~ZoΏsB/ĩ@RA_ K3{Հ@n z}0azŀED῔ѐR>Hx?TCyJO_s5f6p݄oXQ XRZsK: ˏa3xď N~T 3À^_z?M}ci]2(v!DU }V/KK:a$&܄/Ea˾I5/V% ~h@>f>z " nlڔoW ]ԕiw0rpby~5tdbH~5&jД58+ʜڳC3b΢Jk"/ak5JIN\O։(lB7,ޭux^.pASM&[rgpc<(=)\|5 ױoZ3L4Y.N#Nd[\ϪT1(׏o>8]觴99Mȭ:;jRo, o@Z5DP Cc L,O]5}5Fm,Q!m5ZF/fpku(+}} _C ??h`GbCǚno7hcw=ui^~jWzv,,XfO[I&_hby*mM; YKITwZFE3jDŽ%Z7}]~?J2 F|\Bkxeo. 18 ),7 {Q'$Dt"Efڠ9b270~ N_Ez_Դy\V뭜k6M7o 7j<=9/~2.$b_ejt~(> e+k:(VMaAa  ݤ# X,%o`r}Ttv:ZE4O9~]?{ʣ~5/x zQh op2X-/5? Bߛ14-r%E{?-FzyJ׵l_>ou[ԕh%#Z~糼f\,V|=Z_ 9fo%}'g*ªpכ7cMNH~}14 3͐D5LoՄrCiۆ?j߽գY"{sKTK'3Zׅjf<Ow^S BwIk—u?k8^/@t]~OW)o*;H{B΂Yp$8Z[`I|VbgJlm{zttbw\sJz󷱟t3 &ǰ{3"?v z\R[*?7Bz\h:E.|cKL3&TlvX•^W\T# j )[mIJSNx}ɤ7[ ބ_[.s9Z/6_TMgl;*?T=(ߜK߉ "cU9RFv@(Z9~  ~ ~bjƿ}@Š?޷H]jQ{[69<Ϳ6?wfeH3o]Oz`nv܍z ?/vcw?jc O.yh}}p,۽@쬼N7z8門Ʋ^?>~%ĸދCwՖ"}֭ǛFA[1\aE1-~/@Y`mNZ!.$/ШWg CK~Ư5W=jM;e2TaYdp6PC#s4{GCytaPc7֓/w&2rl^Moyk_@"åV?Xj;/ GtRnhԎM`[ؿ-Ыh_uGZPs?`{'ly3 ޭΰwבw0@THbN.W#C y^wC<!jq{>ML]'h\'o\3Ic-[|PάVZ=+ܬd:hqǵxp)C#jW~H;v\<9`J4ktJ49O:>pCxQVjƯ1r)QxOzm%hy.V}޿&'p w@ i*t:8s]/p4,)aW{QqJVM[ 7`%/`>YdX:nOH`#EW&/e+C_h~m֌:w~+y2jN†[}9˩kh6]I*m`㘔:z_8pK T͟oWCm%BҺ Nx+֪m#hix\ޡ;6YH.Ї$En D? JMӾ ZK՛~R.#3q/o\|z]KTtО Y7ы;>(=gPmu?e-uj(pE-M"7+l [6s/ 4+t0H1q2x,t7׿ITzBy?l1TR~zq?_}~PT#3 +?*1%*bqou6fc1~k{WWŅRj0A/?čױt~[݋Ԡ߾K]@Lܶt~Fe6xkJ B#` y&R/$hhyx_y6w˽G0:R"v*@ C殔>aW_VP5aAG49Ouv?|Q9OBEl{O~7ePں'n=ϭN 8ߡիϽG5mϏ~xtΝѾ_4>_%.k^lB]k{!zN<2ƶ8d |g_(v`Ì-8q# `ߒEez'"f9@{ :jIՁIVWKk4i}8/'[kZF Uxbi#!sksZ{:}xr޽6ct/B)f5}5; \ȞGL5tJPj0M蚷x?ܽRYcOZ|rFFS{r A<į'cG"cH;b5A%PHx,$Hy=n =t}F t kzY8$fTW=`1w w6_:?  zsX ;H}df_H:.Eq:$}R|o:߫>msy\??D>lO~;:Tv d쁏 <76U\`"o.{%jX~EUh> O KZ?Ǟn}x^K>kCxڢ!$R/5zy!ToO.Rחw-@i?g_ Q`@)mj^׏k9nqq07 >'ߍz׮~u_n0^O<8;uݐ֡b,uS'_t=N{̚ɓOyx(;,.@G\aׯ~5w @CnYg*z6@5̀4U[z;k8f#xhԃ>/xP€\DE'5j&QfhD?|$]@?O9׈DMPԱ2#rϪg -7p.)2IU0;ѿ]gN۬WWْ..LFq>9f jrl_|$ÄD ZUQkufXǴj,j2,!ũK0a*Ng=JwgUӿ+>PLj :T4kIOMuz;F?2M8Gp=C4lc*ni@Iv=fUILT}ͯ7Ò^"]&V_@ۥl%u5~'}!?G#i(a coӽ1F{]ȭI`jWMtߋ%\x+غTôL@[<@E6m eV#֫ GvVxJ_PJ= ̻l+6iGBۣ׆ jȘ~W='+gp3- OݙOR39Ч,ۼrәHgx4k K>VwA)D2_:2ˀ }Kb&l鿪9\[67({ޘv8&l-U Ӏ1Jnu>\1,|tgnW 9<Kk?`ԔB ?]߉_kD𰅴/6oT TU}DK-J9QmмXv7 e!Y*$/qqӱ%} vyKm?Es/N_=3ČKEb DEeSP`y)gnO!S'WZsiAi!ǐ̑Ct%j0w躐['*pbجgƜ8+|fMlu%ackQ_a9L|]r;]_F]wGtlzvv6VܶJՐel顱Ib=G@=~cMbCnƔ a KjTaT ۏ;3/J7zM.> }jQ K.RfvW_LmiVufq Wrh&hXڿh__Tꛕ]}Г^} p3BXlHR^AiFC͟G1a"CcsHa"8eX4ʧѕZ-`M}PFGz6˺Ϊ8t~Ma2si،<ǂ&gSsKK *~5|wB9dJsLhnRtQnj}UizhcMT zWBv64r乭,9քN<PQA5 +nZ3{I8cP)O#JQ6LF3v{X2"+5? ffmY-{Gu}{0c=I!Mp:/mE`asTo2l]]/Ɓ(5 {qWy]pC=ACఙ4\]sn!7жeG8khGqۥVc^u4 ;c3Ģ9vW$p Zmz)rJhF*{)*7ݟ]cx*8SQy>,m7Cム/.92n]RY :'FLPOi'%XFiy_K3 Ϯ``NZRz? KrMJVǞֿjdHHhcdb+)B0 &q^:vдR'L$Av_?r-ăd{[qBhte _!~Np%64e/$0*>/~)"Pp?5I)#5lS3 HG~ӎ^Ke:weR3U]n x֣ p|]/ V+''(mPoYjԗ7+0|؜j%ISP˜n/{?m4RDFpvUh I< :vm370x.rߦ"ޯ܀ >P6jXͬEi 3БjܖB")*G<sN͌Rv\T;ߠASyS*C8unTI͟K ]a*jKnTcqؿ#~5x3~rtwhJ7X&ni@ց!OwV^SeۃgoHs~x*v?Wׯ648$ >h:܁H+onM̳<[1xs~o].뀀J]޿FŸ]]|mncwٯƎ.RWx"n""zrKCtWUPR0 9+ .Hg`D@bEo`GSR<7+dq0bF`NnYd\-5-e FwWL vAN%%5>m  lSC7 b=;=^ ӗf; "7RA#Z_1毿;a&o{8U3eivO ㉁c?<ڃS˟w;]R[}s]" M}jCJʎRD[ZB3tЁ?u%s[Xbߧ$3;Cc\OcQJ׊ӈ|+DA^}2@#V"||".մ#7o#zWz=SVԹA2 U3Q((!gE$SL"zGmOr/CO76Һ<Si[] bLp/`:6xpEЄ Kߡ"e/@c;:֞Jbh/]G׋P߻T# HӾsyS>oI-~i D}ჶ|\I?"j s`wY@xk~q2Ĥ%R3`?NQ$-+Nx3 G!vw|¡v!AU_eԴpmVGK'9cO]P@P3Y>0E[A RP2ynk{7 ST )2vuĴ|NVp=#%tjR2WMDr*V۸d$tvI&* Z1їC:'5IOd Pc}pʣ$'yڌ@.0po{+΀+!!6g;,057qHXȫk2|~E]qF zOĊv_|ѦpMLԓKt k>/և3aˤtR?/JoM2PiL@"`EqoFs0,DGA<U]>uBd'eQDP![ KeQb nE#K>3}G _b4UY%Jw H7]Dѿws3Զ`gd3GڻHWlՀlmJb$r}ipN#`/H-fqWX^Ոl- _9OSKlqpI-O (`@Vh`mϿYj D{Sp'_:!@Ձz# X KSMcU{1x@ AR4VwQ22L/΅¿G)]xgoHԫK§ITI;>-ˆm. 6y)/iƆ0̜]~}m1_&<|F+!f?GÎ#h!^0&}@I:p$WM&}| JNR`d'0ߢ'E$f_'z2?$מ!+)8O<p\\FeEËZ j> -0`"5Ga8ωNSҕ':fnT -͞U(9qQL0r5*Y>GoDXit=ܣ i#׷k$NtHwsw*鵬'BvtJڿhSxDG5F_`"~'rgsu(;G+~qUlNɲf&*:@|&K>~T mތ:h:E'yH엥?)++ziͣC I+^Sn?L%oxq\ut:L.zkqEqDeLd(] xC4߿1:ORZ:ڥL(ŏ7)%T̥/0O-+nNꊂuLNjA:Oϥ(M2 Q-Ն9P `!O1 7P6&&k=O~j#U/j`i3XYND[F SpMU*,7MPB?ǯ+pBg vд_! Qo(С |gyM;3"RQD5=FW(vHSxTWtO I> SGp`25ͦt;gj^KqQ"Vg+msܒ*O0gSȵfЙ}?\hף:0E? ˍp^o7%H P4?u+S9ՏVo~~A(AQIa\?-'H#`? N6L"5{Ma`G欪~YO쯌8GlIogˁ@^$ } !ЌП]4 dŦ`eL546lu^pE ΋>;t 7t}[tҮൾzM^s!z'qwoA'We:( SE6(+h~-n/8Astb8B8oN} S'gGP`ch4Gڹqqײo}NM:뼿s=kzA7& 1Vo^:]дgBqMkt1l;,ibq4׳o&Tы_䶥x iSSiم2 $o[0>X'Sp)t҈ &2}I64`h(tVӏ*t@ D I_q]a9R}`4dx}/KZ-4YhZ"g_ ڨҬ lD@QOU|+BG7li3[x'URXx?ry} DGUo'0E Fk|ݿ!9)$b{* >b}hEhxi@GA3JW7Ke㿝R Ѣ*+,*4ʕ-2IԵzQ*A܀g" D|DW/ ]q)$c"22XHU.TR: sIgqWq9_.q8QA_@ӗ%i~.Ιõ_Ϸ (v8I.9tjztЧwWkeLTωtC%ܪR*J" +)~ncˬ4}g}`0ꨧ=BUb.}T9c*`F_,sJ:FJ`':9dh dchۢF]AZmco쯃BjH?XM((@m045|wǧ~j<ۗuײr X_/oĊU sAx5.#Sُg!gkp#N[ _꿳n_~u Nk8)kdž@jN0N;,IxN*` ֱ߆CN-SY.S?tLZ[L$H{g6xܰ9Zw &EM: D'ez2 HF#=`MP?sLSt],\iU(͗~ˠ[ړB?wN`Od1&R`Y>d[upU>86ۑ My(lm ]dd]r<-G%.KubR==Q~[?W6~DA[z\w9k}3pQQAMK~oUn;iNh̲nc8TnͿt /QeJ8jfMyӺTW%Ehչ}3sS2v T?HOCB3**dDWYMu=8>Wo[YO]n6nn?B7UZq^>7.d~0N_)-Lm hU>psqINUɫ4itUc\]PMς 76lp)ib %%N o_$> Lݿ۳pk_?<ԟ_?zQڰIh )CĸQ疧36z]LNl:<8}sZψb-ۆ&u|P#w=^!(c?Zk{'_՜˽~6m~&5csabr=Ey>aLSw}뗢:. \6D/Bjaǧ ~iPZ!ǰ|c2װ]jPPnBޜZ=P07h80@BC|݄W_K 5RLrpDCK*i }n3iOjA4|Š~쪸e"'c#o8~㟭+"%Jily_9 4LUϳSvm?S\2U_g;|!Е>pJn2::orny#%-TQ cT|ݖ KӠ["G'Aa-SC+KW}c&57 &v?ï+סo }__54`g"ʿřP870\}9?Ve/OM14hPhLmSb[wF/j, =_阗 (_jVcT|@gϹ'a7d2WD^]?doXcA6x Jjhd#ohԍ;PD|cyyY(2~H##*o0wshv%4S[ȏLaFg.!֗pv:š-)z)VfU.SD:fugFqUO{aT4vۛ2ntD\ cZ/uԣ*b\/~?$Ie{8Å۾  |wnH_w9fBD1|ᎂM9 c'kė>&ҭMGXU9oM ~>7lMeᇴꗕ @ (1 4igf<)fpICwhLM \\\g\SdNsoDy#H˦0=fL_HVTeoUbp&#ˀl6+DWc]`!=.(FSˠ^3n:N|B%We\)? y=\$ďmԄ|6vqP wn"_]xǨcaf@Q׽`?ЃC9X9D HYMIw:(j@!:^w\-Bӆrrr |ll_?_^\0n#.9nq!%/g8Uz[b3G'Wjr4Կe*@ ;2W5S<ןZ[ 4>0Թn۸XN N.1D[Ѹzޠvnd OcyJg8h"3hs;m(|(*ȥݡt,<ɀ-X${M7WrnT=&.L/~ Ǟvoqj/=`xL}=7sW3CS mrc8z["fxu( ulcGD6POBVlKAVM~] :G1sxf/N]io#_x?T5AM `bj( s1߿ދFun"/]>b![#8brwnKrhGӋo'zw5 ƶN4~UCuzU8_@6Zc'ֿ}J)bJFSټkyuO뙧ظFdla8R㌣0iIS(LsNB.`: пL(b#`Z$""sώr%EC"HNpEb3_f1jpJ!ϚO 5~2oҩ^{T+6ʸERZ[U ~ ؏V--7Dv RG2 Qxzhl]Ac6_ܡ3$b 5.ራ;T6jN$"Zxh{-0ou|,gȶ+&"_@ ~3 o͟:(61Jߡ6un@~qOsU!i/'O/yw̘_lOi `K[bM] i_ˁp Nⱬo7?2qU$Ќ'`¸+{!U wT=ٯ返i8>w]b>`ncnuYh/=(PܛUkur@;^2 _ 8"g:,GPr,vo@eϝYYn|zH1}LQƐ0'9cO Z&P[ ޖ &یđ \u=,beۊjf @/s>׷˹WrE>FfpDx@7pXp @Diȳo)5ѹ՛4*i!7z>lM_$~X,/.cǺ^pB)^=~$fQAd?~c -`hЅ?J3 +x$M7R(wi(=4q3B4=makPV3/j~SvBTwo/;V\V=%/606nY¤7<t̟*o6ۆD [@c oFd/3Hr _%(vʃ`(.z]v"04ҟC**ikTԖD;4|wnt}RLyFQE_C!τKUwGw\=`ma6s!p$ͷPh{mcLB;Est53Kр ޴鉲qyJ*4ڤDB:U& QӽSٌ CDG k`FB%]dɑ~( g+ah%Jd͞:ՅL nlٯ )镗Omj 'S,N`5± ?/I`ETf)ߞx 2iz, }xɖ&og,Gq]ӂVOߏW{LCim!jy\#Ί4i6! _,\Xю ;RCg-#:QpJ>_%ֵ1.`hE:Yp0?_>CkUqz:SJ*ϊ2QĦ`, hV/޿5ȾlKwZfͰ~ȟvrҗfoP&~2`x%~u9 XDڬC3^_B mG!x(caa6|YEՌ\AiחBƊW_?/[Q?_@eߪƝfP8 kk~h晚1gF~?rM&r?C]B׭>AHj]Y0M[x^v3rK^xߧLǮ~ eVՏN1kU3?{ f}l7O?Nح} w/5D/>^Aݭט=.s5:v~ۚRFNj&m1P=  _S7l0`gZ*}}o=e;ΛУj|?"n;_z,^GiisԊ#ߧo[%Laҭ*C:sc(FvS/JxCDe~K硧BSe#k\;Ux" ^P 1A[`3kZ8]u^{cs6f)NJ:(Ay5JP24\k?J/&M GsL*I\Y0!&V&H7 /5T?_Qq׸{L}'^aon~vŞ+: T2i辍~1]?1#;>  K-s]"?n@B3 < wBƚg;:Ւx>#+@xPZP?x_~etr1D :N y7}>iǏI._`Jd@]vXX'p?䀟՟o~ӗ_(@*3Oj?$}?G)yD_Ͽ8F6x\R(mMK+gsg'zG٪v/}HK5g7&=m4G:Nħt*QH:p6NV!+ @?*gl/7T]lɽvžv/)F,Fp;s.gZosnzUzy౱m O)-YA"ų1- 6.ZL: tm:ܗn1z[M[u[q|.풸ѾFYbN}O.*„<OF=,ߠq:R{ 3 F_L.Pہ "z22.vA;[@\XCx1hd^hwHVUZ (ͧX o?cでA4ȃ:}?$LS ȔαJclhe.:^iR)-eOiU`k_? ~!Hj_ou䖤VD [@&f ;J48^a?_ӿ`xnkmS~bbX)i>p/i;XGO%~?Oן&~} ttvb vj rttab8[M0>N;̕7 ]_xϻ23gS|/Z #P@1. W|_1`m1*T1FP~^;~҂ؖE #54N>p{_X;Or'+1A[?U]3Yi 4SK\`؝x Twt0=MNHo\{'I]9 }Й *s_LnӇ;=aY$򔟩L;:3[/F??ܸ_4J*+@#P@_QO~ :&L_ГVWЛ1_L_(9R۳3;x eL:Ə_֔ PF.~\> z=}s?%\K#_?g}@O4~oCt]E[J~ԗhpyvXθKi3`}kH'Jлj 5:(t"`Ov•w",i޽vu9Y=Kjdf;i3Vk{Z%u} Ze3 ~V7&Z¯K5PPG7NyXKMic_tfuc'lX`L1m5SjJu-MW8XP^_ߡm/sY\Z]eرO <?)e|40&hx͡[ZT0O"9w@gPHi2x8ݻ}Sq}ǥPY-|TEnCv~óºFܭLMSB~skzcu_8f?UEq=le>/f ݶ=^|} '`,)uK3[U&c-8NNYAN4=OxQWo.7\2~i+,317}'z)PR?r%:SFzV,ogvq'cio,qOݘ6XD|6\qu[w]94U:)ςŠY!4swZw&[LPz}Mv\:CzhԗzF3.u^C\AS,^S[fZg7t/0٤t> 0~0`W^mL4I,-нg7y|97*mLȭ"5aoqYzg`B~C|A3L9b56&,Wj*^9nLՂςY0kNJpRbYY XYV 3Bp= aK1#M4@7D向5a>&z\)ߗ8HP{ twGPV'z.vIkr<%!/IBzd/p7ֿޖ&pA1oPvDlxfTX~g#>4'? T~C|kѬS::|?SudN`gD! zA LsK}2'OUS+ʹh@Q EA+ {Q \ӫkN ..[ Nu_9+@^<S-a[|";J$hZ ^ܞwVWEti!Ac%:MGRpIƪ;\E#{~9bK ~7X0=. UBC,-MR0]38  J #9bz(,6Ln۾5?R-%Y/@4,nޟo؏Q 5t_}? xL8 VpgiLryy_tjV)~dz ?HECWdSzo6dѲMi^LXϟ6LpI ~ L=_7ϸ~p8]`aqxďCtgS?3h%/h4a?Y͏ء~ʉ>k7!oG \Xσ^. gg}ln}- niZUMqxSfh# [ _sh.g뫎 aveU&ϡ !vqE뒷^@Z,0.XQ0骓@,r+YNp] n[A,צ[5WX&7$fk7  ;GTM믉`j C_FVvTR+e%$EAAsSWZhW5h}?N"XHogBƇ]W>dGؤ^~$6,eǴGKSmQ:F> W!gnY/h*5AV. J3j?EMak{dll?QF?SMc5;Vtn ҊQܟ#LD.ɣXBAz>'iazhk{V`ǂ3z1uL]u?5v'u:@Ĵ `;ʊuKp‹:ܴߕ~MMtU-@H;ډ~; w`& ԑ_36[`?SR{XO_5ܰP|4o i.] s\[,1/mWO⿴͂ޚnE+U+iru&gHFד#Vh3xds\e~{~<(=|!YZяNԝ;I\P"#qȽl .wȷ"Uϕ7iz8VaQwTI(M-5^رR[ԏ(\E T8o]''٢4X:.7J?1\P7|ܫC%0dNJԘ+ʸxÃ:tS9+}k"8@[ o÷yvU\]e(3*B*?Vsv;s8YXS񶋟 t[ z辶U+T Sˮ|g~s,jIe!qL.^~z !0xQʴ\shY:"|gG '~h+gg0̵OWC=)4?$KdQεzꌴg䀂J[`o {"V;7z'p[iX$A9UOj:D7ENY22[ fteWGԯ7]$ (c-7,tн IՁ\p!±|C41L'M,N5]rǿ#mj.m?~/{8B@&z_s?uFk_K7wFJ9@}N@#w17.lo7ޱ/ƹ5E|G?gos1Hc^I'#c zu||QJc=^ߌǩ筧2aCR,hz7o;ն ߅o,q|EMgJK3~Aә h©K&6`/?LV8ӄ'N|liWkQ]u6 ܋󗩩dy>{&,OjmW 2ZԷ?fa,dbQ<kff?4pX3_źߗ~mQE_34o.ޯ]EG~*Bi9^ԞHW@B+|9kWVe̥I쏦|e~O@Uv+N;w;T4]X1NA>:v޹tiCy7 2rD; Cfː'%F/nˀp2,Aw7 ,o㟈.uQD}.K!SYN<  h']܊ P(q LA -δݢᗗ]th@"xM"|H b~BxΔ zGɋ/nr~?F6*'h L6A_zq2:dP얋i0@>lp vk8گ Yi>׸BESps]zgm_ %AJק_PM˯sf?I3m t2hN HLJ!$p=_(~ zbclOs@T/w]k zW ~t/qĴS>Ɲ\-O<&bww\Nj}$ꄵދ. OS^tq2~LDԝS֑΄$o:o7f@/ f=紉UDJ.2=mz*cw[e$PӗP ?,NwX98Ldp8KC4zbaZ? T=àSk :h\_6R-E>cxM>]7e֑ MjlZ>2~ 2W\mq*>#,Rj-_#ʓ1@t||ԹC@mwdܢq_Z3ԡ׉!u 0;\t7.TP$Ʉm`hWaQlaW5]8vT}1 ܓmGj]# f;_Sv>XbYOxMQԝ'}͓kaŝpp !pi#J=sJ N"%^lMejh7L^#b۠MSLt1vTŇìH\Ϥd?Mwm u~T-o?.vL%('bM}| ZV˗~7nO5_S_Wh@J{` МS5֮zrOu8@0i)% Ыrp  ؃x1gZ37U]?X!ܙn@.ެ^WC&pp@uh˜?j9NH:GV?ͩ\Dx^ug\H<.NI1kqp=-Gz[A%v2KآMaT&t˶dD%--QkP>c @n>p7!^_<6y_$Ā83~{mȊVꒁݭC9k DY+9 媬#Rh'3,Huf^ \?qpoة:뭞)p{Q#x^F7 kp` .Q>RS`_ :%0Xa 灸= YW4[laeyO G~U`l*NUО; FW^@>/>Lm=ӿK!Qfm ߙUfk(Ɛ S ͺ'mʀCl95- 5>>MDg7|zW9e{&4 -ySUwٛȵ>t8@<)3_~>w/ky3Z &ׯDӃsGF"qiV]X:DAJDV⩾OQ;NCa*@LF`e%MjdlcGK@_ijWppRHQUIEilZ>5R8Tg4َ͐n"1f7H_~Y:¬Yi-*C)RBF' WH_Wڿ[U@ta{I`5.]d`(k3kzs~QJۚ$C&~avȡ[!WC}K5tU>Us8NWǣu:*HF|x?X-J.?ݕH/gl J.X)ub M'6Cc{s.Oe.rS`$.XSOˀc UJ !V02.' UT@K |޶~ꇤIsי W,iBmsx5:Hx/Mg#z+edtvI_{xmePC&iT[[G9F$-Yk qY1EઍWOr/~AiL~B݃+2  &_@Z,Zz4akr&Pj'^?_I\wn?e]G0Χ= =m{&UpW4=7 uuݽkz)D:nd-FVܵ Ya+頃Q*<_n9z?iǡY ИQ0JBXS.OUP5;ϸ08Hʍy2xFĘi;>i!!tuX/D190o!6]=Li lASO-Ep7E*J6h֤ .ڽ=V4줇tv*f]4_ބ˹_:RuN~4i Mþ,eiY- b^:iL#+4e%fwU6[.i򝷴:ЙRzF5 leۀ>j]ko)R=y 3o,[qҴV.n?܏'BKf{}tl⯩-zLiJZtBDbQ %!#bCKt>*ncaCz))w >"GǪoc/9\=J:y?U?ߨJG:%S J2G]pg:hi9?5MM|7tD(mWh;;&/ϞQ7шZ῕O:Fhƛc , A)zy"{Er(StVά.b]?XHw0\GC Nc "|X0B qKbm8~PJM:\H({ !;BLGWkL|)tjIDYtЬSZ@:~':gT;;<@sn;>IdM1MtL}R˅x9s@b~ª L?vzb@G̟=4ϺrNCk.@bX*4ߐ;ށ> Awcz~§#'U`o)]G㓏P@|&'A^.Ԃ֙iEVRCE> 4mo+~:i4-ŏ\ -KPQP}GV"~e;SEt>(,Jzڊwѷ`g/?33%,2^|^WDbgx+y:ht`\ϴn %2L㘋頩jXq#?I쿞x'Oz̠0jBxcK4$hBRzn@Һ#4)_Oʺu7kGArzjPVq)JY >Cxr-_:!zG;߿o?@ܜDna#[>^a}Eqޘ{hXkQd6,&ίYEX:tq~6Y"mv^\AoA}뷅_ s2獢~FI|w}|kM16yqad >lPS`2SRkI{5t5SL}%o1[WD;j܎6O)vW$ jhv`HҩӤ#p-% `J韎TE\`p@Q_z__Y$(zӿ;@sfŁo m 1ERÖO˂ݼkszyznRRƉ}Bɝӂ׶yAZ_ LB+& ]7z5b߆/E<$wnD~Uv1QuzFb~GI\@SZ,A4wyM]8Bu$fo>}>W4SWÚ͹:~>9.]toPUݿ~~9%Oy-v9v^ nJqOCFݨv(/Ekn$|3ᷤOeqx* V6mu֞ŏP9`l3B/ 5;L 7ן?w@t֯G_ۍSg O (Zk3SaZ6A7#$$?ywMKId?"\\`'\'ةx7 @,jN$z<; ibKӶ% #P>81rk߉w / HWuDoGM"KӿtݖNׂmi +]%NnSHBf4̓vzְ Z$ۘH+B> t𙼈ЄQk5t,MyOvP_e::Q#uzfkuZukwPof!`A6:Qb(f5&RZ1!pb}ݲ4!_ݶÀ[OM3Ђ6*iu|L['_[݃]aߞM)]v~lBRs_䠆B掠 Xp3K>?2K_iz ˕EuՊӾ 0¤;hD`x($~4a>gy"ؓUS-O72}yŎDE.}U -6U8ZDئBg]{AI48^0g0z xǰ9w`0Rj~ΞnDq>B5ULkB}`U@Ab' ILe+ءuQC1M:Z_AMj =ŏ씋1Iڝi 0E;¡ iv@# `0(6 )^"Q{?GT:T.b IJYWG>F47Siςv98}sDl`'5mq/~lq ׻AwFyRXx!汇0Mp]zn_~gߡߒh*p YcRY ӧw)nWVk7[h̭5k)^~3˅pyu?b2V[ m^X^  L,܆tc ؘ?*}t7Q8KJ'_x|)r!dԑ􁗉G]G) #P  Hv+Dt7g2dée&OufOz:0x~"O#`RAB??r.C?EX['K4]޷s?a*zlmR*V v&߯1-~M)`8K}_Rѳu OmnrsMO/b=n~Y=A?W11}>D `Mpopw ]~fؐʟ/P]:xְsOk59_V:Nr\OBP,5QQߟDXՏlrt`pLBY 'ע"*9+\[c v PuvlH&!$0x}( h O۝K; -/" rI z" LF$LFނnIk`1ǿJ3r|]bHn’UD1I:+2`EN뽯??m h78hYI`' ovs mM忟zAھG1E{'<kP4yn0&W3=oٲn, ="O B:J'6Dp F\~1h"|A6#}yS޻|' \a}W1>zqq-*W^wo/i2"tE/l7nyԑ7 L׮rW@;rrg0{Q$zQ1`.)Su̷%m/.0yֵmbY:4Lœ.1Q:(s9}9'|E2Lӝ>kNgdJOUloWx<_)W IǧQϔjpVpk 5hy'] Ж9>A:TӌGk(mտ? ?=VJޠⴛr}"u'UϜo&{8_^;@i*JME˜ *|<"y_3˜rQ=s ~iȍb;c?o+0KQ8?hSl &TwZCg_z7Lja<x3|3@>~߬;(ݰZn}p'k֠^y}X|le֟*w:OB]?忕ˑ_v}#ko2p5(Jh'\z*܋Xi#`^/i]$ޭt&0TYGx.,~oTyk-)[? pd[UUY$- B~t3}/E@y{ .- Ke8yx9mzޖ./+t`X_tDS֫#_qMNx>>Pm˗]b\;Uü'}nҧ:5fX^ouܾ26z ~m/NV:UtY"hZ%Ϗ,K?wւv_Ĕ7}mlճt9w̪~.t ?{p<;uL*^L(ch/6V,L~V7nOd}TGxHBܨ=l`i~v Y;lXi~؈=>C;@4|iY3j%Pw}d\WY?<2PUT>pط} g 腋Y+o/# JhP(((>U (_O9ϟm2V?iW@޵BrM׏] x5*uOrQ>gcn_=h-ζlK:~*`@m_O'c{'!~ُ6KWtL,iV٩UIv7LSlw7/=5oItS!݇6W }1Mt%]+EbU={~yDԉ%c%}H?^z+;σ^nվ"]k5X{LͅҊ3 o('4EN QSjka}+׸K+`mRR:jE<}pw4prx: Z¹ Ljh|_:5~7/ ]~73&SM@Fg;~>jCJyы~SW7G7;B%{ ܉IzUJ_cCXƬBS|hRau^RAgAR}Rz?(w^KEh"ƍkrZdraEw+"Mַi_t+t1fD,P%@<ԥgzfAauo+um ߼ <}>6)wQJtR %7NG hguߣ21vnN@(NS Cs~:M\4 o$i{`~AZܝuFpJnW* (QG3KdN`VP [Qx|8tr_׳+ZRTR} @#P"ңaB $FG&6 hq)0IǠ,\ñ vG4^v擲s+EIC̗ƪv~ l6zx*V;MH2)Ͷ ؔ%̟i)kG7!>cK9pj$UK)zBKÍw,SD`9#]V\)GZ-e~쯉}P@zGw,On;zo[`ςwWذRheb{d`2δE:OO-g<o>Om:L~G \7=}-Ʀivn,@ uy~Ďq]'_˂0z'Yj\ h{Wk:⧹Y.*Eҟ^/ƈ|il Kցb84A؉\Yvx&! h/؞ hxϢ QLwPFw>d ܣw>j+pkQ{+@v%GT({`GU類hw9CdcϾ(p4:urδp{UZl'S ܢ3A)8 ,X&aeX9IsKrՙ*Htep7hW4&' )4~UgkǑ4tg=@_&>UGx6]_@9a!(z_(e1cB2q+ߦ-N;bZoԸAzT Ki"KVdJ{[CʂEñA ImŸ"4&MsJ|RYj}NۮD?Ƃ R8W@¨ ڭ_ZvyQ7)7˅H؜?`/if=`Z+/= G>"3qW ]4E[rU뷙Ò+mi&da1B g>&}XRy&8ůp OC >ص_f t~S:n1u|ϰ+yPȿ>w!ԁ '$dY>M׼akq\/wQG+&_թ۴˿,P'1A to_/Z:ecc>t5#` ea/d$1|`~;S|mnIސ—gG?-/OvAώA?NqSQPY'y. ާ˘=R <؉*zh[w(Z0xWGd 22@ m#7h̦].̧ I,J !@{3|ƢaFZJM5ե'0 1 5o*N ^4H!?f0O] 4cYS]LK}]*, @x9~D@ kFL9t.jT'+@}+~?BHM.PďQ9?kg)t`ζ%:U_~'65 RhkQ\t R$Nwu e3~;ʟW;->`!4 +9[I&~ οs`v l9oq (*nܹتM. _#4aRDvbHZ>)٬t$}(#v;5E`H)((Jܘ4HQbZ+y,2ۃ1w|n+^lUuЎd1*j=jlTğ@sL=Ky&lc|-\Y|L xTHFB} D5uי]緣mٶȎ-r*}i[xWPJc{ {:ANȖ& 믒[Y,@1"o![^[ ?{va",OIN2OgmٖVT0J*m*ZSdV!Gaߡm_DsF't[Y"~ I]]ppfP4ybH"VAi=^ V,0hz @Qf?i)NS'Z[~NP4߿{7-b#wx~xjoԀ_Ʈ`Z]==Ï5\Jz^֯09-|vDϔUoxI`e_ Il40ޖ/#dQ^8@fU^i}|>}-yv{5@{.(d@5oN^|qCB'( 0-PퟀVgSÍ W(Ћf j1hJw_ m3^@O8psu|YUW^j&U'rnGxFhA/QdnFw~Inht55cI pD#ˡg$:(_t@r,mJW߀M`WTzr7̇'j('[&vtY"_o` TԆ«vM `8;F2O߉:.kfkym')gB7^-j̀,> PFҀWt?)ʎ.t^S3_U.Bu-n*'rm- ] (ΆPC @29B^Aƈ$5W?ؽJ׷_q_&y?޿7PTOZ @]JL.,qzN6Vt=[UgKc!*O{Y]P^;&u&Z_ 6&.C{X7v?L6BǓ7@$"7gwzM4R51D}3%^nB|MyA+ ]=4sDZokoI# eb)uGxw{OazbV\]ia|O?m({)[_ӿu~Mwc[FJQZ`OzF7q^x5׿G7&7ږN ;~D j° !?Vs}OI6Hӿa3 &^DӳU(ZT*3T%x;r}߬{X켾J'*[r] ӜVeBm63`q_t*!90 _kbɩ47>H]OHGM>.o1~ȱq=GD}{["ٯ]$=_Cw]zW])tASՔ"՝7//?4ߑ% yϺ_&5j~ p8&Pni.WD=eA7b?0ӿ\sjg㐀B&S̶*㔢IN/Ϙ;d䦪?S4dDA^.IyY )@:q: ,BѱJC^4M~aTMr5jb*"z,W DAʈf@sbUPs ~\fg.+]_C]!T> `b`Err:4ZMkws_# L̕KSxWӑ0_M;{w#?_:w O_j9upީҽ l& $<m'8#-|^niL~&E}3C< |Zz۬\[i-E[aM^ˠNx2w.yO8]^JulL5nuJ7C v"*VڡMH!.0xj e]d3 y"9&4>Aj:)[vE6iMp\0ޓMܼ7Y;>ڻSBƩOk|]'e$$qS^O-:RP4~=wL[)s/a'$)f%=_ Zy@T')g!LT8hxxzamJkGg+,XXvC@q]4J ޭoW4oޠbtm|HuFbSk.Ѣ^bҗ'Th7|5 I& ]<`xT\QJ[/  9'vuh)ܵRt~1?995&d~SZ7숴 D;:f ?z_[4_.l=ԦMa"J.gn0 Sa:@ڀU]5Ќԩ(ם^?MTIw?ZLS{lw},/H]+7: Z}ǗA mFv,5,:ZOMoev(#A0Id47(%=Ƈ,%:OXDt;N7 PE=]?˝OL'pP#m>v Nus%c1f5C>kh^&ك'Un"&jaBt?g]([UܘaϱɟvY9܏샳t@-p*Ċ !r|,g>s|*0M&?nK覎^c1M9yO[q?5(. mi[15 ]]wqKb! IWbz$Z)g&ĨPC$y2ԕ=Tvy*8K'cԓmoy Wr=t^m+fe"ic]PK6N,Mh Enwy-PYFE= qbH' Kp;@aAl;ZYMm9/n?hD XRNZbbx?sa?;ĈWzmFEW^ O@)ʝ}Mzߣ={O(Wl X,;E܌1 n磾Ojg4(B2$};F V_E/Lkvͽ`|<ÑK *F[蹧+N> /zu2*×1 <gUaʟ\7X?`M!7Ps` |vR&q٧m'K'BSe:oLE{8Osߋ{-*^obF9'Q4|%Mko;Տ% z>G_W/ Lt9,Z`WQt, </Νźb]?FDw>3?ݿ;6v6 5vmsC[\@^WީƏ UI;TWs20dIcQ7zO=J`}Ϟp2m3߭Z8_WVtgx SJT~`ުJwzgК*#[F7DK7Rj>2qף+jzN`︁:h2y ^A8;atqs &j ~?/6~Oba)^ p\đtXZ\tӴ3! * \R!] i/t<;Ngt\o { -n/⽪U܇.F^nj5fE|Eq{ ˰8:*F;wmCȰr@ma2F3lA=bfXׅxL~zy6V=i(jxo1uwm@.nKU55t=㞸Dԙ.¡F/ cﵺpTTQ:qnR>?C^!]8(D|z^)\mh68*GC؍#.g^W+aml@)}Wnwky2q:f6ԉcg Iݟc7N1U$|hwG}5Z#Aאb75I@[AGY@a >`i mMwT8f# ΐ3X"V}`J |?_l93#[@ gJ'Cn)BÏNIh޿'N<#|˔|NC,; ]@ƨi= fH 0ֿǪA M"l^h%/y_,4~U%JjGhƼ%~?]@ڡ-7[(5 pka:? Q)so v[So؉8._WmZov"AK|N,u.ͮUUcW?|DHo[U k*@ tq;.V k uδiO}KЕ jhgw\v~WnW@Hga#ăwak{ X:E9|LY~~它g(Gm.Q5;E9ffpد& nn4)\ 9@d;_^'ef2J꿞"UJ(G ݁ND'zFʡ@]ӂ͊||~VOq =quGw7έK4&}~ BIj]һEG^X^OLF?0ӀvsOxmqG4&Fj<M\ZӬ閕5EM`ȞDpЦO#<74QG_0kuy]<}oE ~=X䤏2Gew6u#tiȫA'`tZ,ǥk\w~}ï/wLIܓ5lrEu+z}@wn^(l~ CSif0bQ.~KZP{R4U`ZEG8tRwVqO)J$x#7u^yC~s |mO1$Q//d qUe@`F',idJkGDg&oҘ)EM߰`w=N" k%@Ԩ͜ǞJ54O;ktZB1sXEaޏ97Ogw,8\}}'Bq{Ϥo\A'G?'_=7a?`2(*)x,) xw-M EM;n˂^?Υjc+Idj 6FI6Wg*R +> 7 ldpk;_GOpD Ga֓JAh l|)].k+xܥ~fLV<2&DbuLpg1W,v)/W@0-Xp|z*mʧ):L"um7 K0e+o.˳vA?# MA_] 5iF79̳tCOGILJΝXԡz|QBAg> ]8ҙK%r~ b&J׮OuM^3" f-Q H@m? ]ΛTo͏t"y3 M& ,{n C5C6nXBy&iP,弹;Xx?L sV*-ovomqSm(JŬ:X#Oc4 "딘ho.'M 2ҳ6;ttN#N/mo#I$ZvH=ža4egydc=Ȱw3.X1'7xJKxןw32/&pjs!wBizؽ{z#m^kfҨm>$YDύY o/N֮:BGMC}l(0 t[v 2-pf.&zuN/71˲&;xY)n>] Z>6ŸBJ}Jw/V(c=Hwx Y\mVmj0a$@m=¥_j< QDά̃U*q2&&Qa2}HGoEcPi{M4JTg6EW.ĸHNثݣzXCg`Nz"+it-7rLk zF0b|͚6uu=~YkdOB7ipc \Zi&g$`u[eV;`7 /izGm&n#!Z>rN KQ-_2|OHA_qٷyeq[%CΙ/'dp!#%$ h l 0s3gcGK!/=Ok\˟**?|Esf@:xnr\/Hd)'# ;2#!e}JwR)y)??Uh$@U6Pp/QlJcXZ,dOU^GMf=ȩr Eǁ ^6{\5w8rȁF5^zT(Lgt}l|E~ 4|T;e\?]_t>D}Ӻrgߩs7l)ǂd^kڢD~a ̴2:ܿ!1_TŰMߪ耵_v{(xmL"w< dwJ2vUmtͪN8Ot -uGy-D=th|20D7Nu[B.jZ3^ps6 %tA5 !rYt`s|<̦9̏t!M"i8 DD=Q7Zj/zhv|HD n~:9IAsyIޣcӹq[>Y3͗L6II)tv_?S7+i>!"3u1>'|ǟ5G [QupF!j߉uϜڐ g:w74Ȯw 4ʼ5zzM^Ovh(DI'Fͅ)?e:Y4zfhZTk:ܸe?|l ks80Ik &Utjnkjh3FϖaDiu}8*"@\5N:^*ЕzP87m_Z3S8owfy]7hP"K(.v''D)^;cK3z(tС%tor1V4\-@:3/ 67Ødh$1+6BA,QWB*ES-P2ƈUo/ DG }L}pݶӢ|}jkRV(`,)|}-GT夝3PՇvtI47({ tV3Hgyƿ5_T^E0^j܅B-#$n5`#h|U_2%D*'<ťGְm5i)[:mׯ=sD紨t|/(<؏6 tb 3af:o% ; Ȝ{ӜZ?TWtф@ %?@e;K8PA m\B2uk@ߓDaRHM񰨟`L4C;d]ɚUW?ˆgM?`<~ޡk2&&ʜ}I:45-~'o2/#7]m dhD@ġxG L@ wعzrǛi?gngºz&Z3O,;gpE-`ny*8?^ſm|vX6$\2:.J&*UTOζ2Q'ut.|_? ]+Wo?JkEk )Nq׿΁>fPO$/O\~M?_q~Vp=dXnl=8)iaDYކc'z%ml=P G \6X_뉄##vnjT[7z,z=~EkeRֳM /KI|b44}~mEH6rD_)f8i j)~׌>s}Zϯd&Ct:%9@jX@[wz(|WǾQxKFj(?7i5Vkҧ?~]zI&.<ݨU4+cØ REгe~?^⸚/P8:(.au}Q>wW,t?[``)b_6'poĢ &כE\_cy KRpG9RSsE/k)wY֜M`j!,H`:\&c(jLzN,c"+q6ztd@l4'Rw~npNtNHnJ^l b][zXGMW$䒸0 P3]XU!s@7/@t7C<*}u3|&M[|mA25pL(a]C\7w2nN Ým4zO}=t4ϯJ/< s<pN># z%uB?/a?qeZ:9bFENvLd|O;yZ3Mkk¹BAy ezM;2+kd ^Yʅ%Ҝ2\RDi i Twc iݟ,Ȩ,!_ 7 s@Ϻw ۷O ry;>?|. ݌Gz<QPyS!>txVVD{*vO4 LAgU-uָltsSݍA3~dgInňQiix# %,Hns[;G=C}rNeXJ_skq#mNS çPoj,TD  pϠ ł}'kr@d~va*&hTMhݱ\o@<"lt<֫]̈Pƒ2C%.^. =z?VI_ Bt!UC(ٯ!yΐY ,[yY~=҇tȯV7F(ޤmit%H Hvk'YޣTi$Jݿq+xM{;j?d$F@]ﺍsr"*fZf ƨ&3 CÅ/Ak[C3{ߧ! Me֯Kߥ x[1K񿝿>>vqT@{"RްR1_b^dcV۞"C5ם#>O&ow˔ʠ`I^oa] YѾz)4Zoiz,:1bz4;6*Mtaañ 1ٺޥQbw`$[y4;,2iW(fih`] p,۬8e{'t׿χƍ>6I7x^h-dظ||5?c!'4ա_ S+:/LRu'9俫KL!'< =}%Z7DLO夹u G/ ㄰_Ehx;.'ՠ 2@4 ܀Iz =&گpЃ ,lG!vPϤ.Q3E9ADz"_NT&.FWx~UU8G~?185c2E˺_huff"?FUZïץЊl@ 7g>a& z\ 70?^1|T5#v3|>$$RM9׏kNdolua~ۚzE/p9r[~6wS>(,&Sh߬[/8⧅:#mu.lEAx5_鳺ГCp𠘰 _O ;*6C&e^O]u}f>zߍ \JPx>]'h.9_(`k) `䃁>~5)sQWg+m' |CҔ# 0kc!4/҆PN5<}Z&RMĽc1 u p^F.6R \4"٩1c;K vB^MnV0ʇ{iaR I/M>Ac38d gB@æf,/ħz]$GTjbDHzg!Nf}%^zT7*foqVΏkW1%'c LX`6O 8</!9>kTdᩉnpx5?(@4G>lYܸe8^4|\B!7E vvߞ'ݜDEvf9J%vӤY9T5]80,fY H+'lG^ ̮3W-&xhT)^̛:~QQTxҼyeod˒gya5px,p3&m͈tk>JCwSs pH|n>d]]dH|s/o>8?HhD7kd0݀1{nD̸A5IhX}>^],֏~|q\?o/ QP NgN?۟os!/j:9/ZRJc./ܴٯQwi;쎫}Dȓ GcU'jhFO fhޭ?s黛nL0E݋$//f2ư{@X cު_&րvn{IFm*[~o5WMdE2zdnUvt~#|9-#o4.A˵5Wo;ddEs>M3%j/mq,$-&h.3OQj=O?<8DU?,ZAAZhiY]_o[ղȢ1k,SӦ5̒P[K[-FWڃxkͼ2:ʹ^ >z栃b1(7zVBp';Th`e%t_ډI> fzVފeny=8ggg޷>`BP)Wǟ :fʯdf_cMc.k_`= N dJA=l=cU+tI?zDE 'uQyH5|SZe2St0rן֋ Ԕ)ājCVw?A;j?~Ӂ>k uCߛȔg3A DK+YPlAr~1~=7,@PCΗ0)%$n6r$};I⿒on76g֬8EA?4w#F'J>V}2_U2C>j6ЛP"J1?Y|^{.ϔp_NuՅ.CǖXTǷT?"|QB)nU?kg0349CkIJs&M[IYz#R?>bv2 뜹rjM_Kl7\Z3~Jl~=~|* vE7 (م5H6# >z1 ~~䀎Xղf ei6=>cq:mT?ۻ@Nc)?qSǒz [6.:q{8ďASmCO?q:/ p*u{ACt&M9]uQՆkd2g jt &0ìW9^ \bh,U@듚U(jM܌tOdz?xs$CZmgSPo02+nC:hsj{VTw4P|"Ţu;jh|hzq(0&>4ZZy972]e߿9]*n,4,=?X:ֽف'}'th36NK4k4IG$=ݠ2t,x+6<QGozs!+?]:iyϫT1ҜxTir>" ›u|Xe5~q}XFK:>Dk5퍠 :NYܞ7ZfXu1wҿ0E3OPBu%U'0?oOl-4%A#XX耩R+Vm6:=Nx߾ͬ <8~X3t"T;^f vl&ɭASh>.'!X1kDɎo:XӬ(˜Yؓhfj_~{W?e)N8ʐ*REC(Z:{B%SдZWj_7ï(~. I6 ;m>Ww3DWT:h?d a1-O,9Wϟd?leȔ%&)vO6}  [87sX+~,q {I:lXjf}lH`vjk7@؁[bOu͢Lɏ*=O3J6k5+Y+FJ@ے0< )<7nt8e4i z먽YW"~Dģ :Z>uMO)1e7&-A-vdT餈lӈ)=7F(IG_w~X/=0.S ln&7^^ߡ ?\A0|j~ piNy~8|8ƴ{UE?o o˯!~"q]K}?:Tv,dvtWKfmr1DuwKiV{Tc9.ƟwϽ|-Y#]vOj6߸oſ &υxbzz_]Ro \qu/*x°0Uh)//r8 *};83ޜHc1VD+ 4H5@2jዏ= 7|vȏz8uPM_//Y+Fi1~//ۛQUے'e ^Ynj^)yFz~ c=>Az]4֟ bnzmA~>k*T:^~֭Wy<9gn߃K,F5u#MϨ坥_W:7f^Ƽ{. `XڈK8^G< ;-iDz '?UӿUUFcDE\:tfVߌSdoF O=%zJW߅uQCiH ѶËdyŒpƇ b3wt&7s5&f0I9 a@$zWjsJ!^I ][91` <~ҺBC#r..7W!=w \l8?3, 7`E/IѽĦ/u/lQ|iAPK6  DŽG 5<Ӛ.ZVd͈&:֯je7m{y⼭[J籜98 ={Z԰/՝i.)kձ 9^;afHD 7p)g[oFJF.k;2;2K}1bC= X4zsxi߯> `C8OG8Ŗuo`Dwx ;k?2oðؑ@C=:Xa>n]งaoI00qO6=Ӄ7]+`y\{SsU~"*() hVG&h!mWeUq*$ C8MNd]X:^(A?Lz_a]Rk@l9 Z >vHBz7ǰ`,H#$F@y (tL3?JO)æQ>(zh2kڂ#=U]_Sˍ溾_SvzU:U#e(fr̔㟼 &w8@z5#{"Hݟh`5:Lsc45K߉=׺Z*M@YcT_ktތ~NW'4giגC=?ݻ? YY1ď&':7a ow9s)FlN!=-U| dfmshW4ʼn0Žg,Gu n<3S;P_?hb h'y wu&? XgR|}"oq1GyA&eֆUf!k,Iy ˹N菂/z/ [_`|+&Ŝخ i a KEjJ!tk{BTfM(ۯ?ml@?Ez~/A[#D8,B1 *sFrL 8cw 0~]5jiBv?#7}#1DImCc3 CU_ZJhEVosؚm?k}v_穻V PBҡH{wb|lv~)~,dC Z\4?mz u#(HCi ~_5|zfKVo=MyCX1rlB^6`6a@(7Ɓ( $qW#IԿPQ?M Pw_(&lY.˫52eB+kR8s^D /M ZAgMa*PLðVPM0`){}vwS西GF-WżuHYIkҺE|=u}I |?f0-qQB$ =IL> m[=7/JjF:a%.( Y; W85!PK?G ^oԩCK8ȿ?iХ V ܄Bůp|/ VѓI[?/zO~ABEfÇͩ.!43"PG=Q']09& sm(J~DMN }E碑.5 ~#UYj8h8_HEX"ųv5-.@v?JsAE#uAYc []uqV@Ű=`0C?# Qx5@=, ?OS-пws IW؁Jp#c&m!yPmN  5WZ?XٯbKԚ4A@oɜs]S1?xߺ7(s~]hN@R`@0 06)~W3( ą1h;ߙ:லc;|@" 8o ҿ{堄5([AJ)!"G`1uVc׃1]`3S}'gyS>Zw@ĴqF2H! q )o^^FiAWpaS(`g@&[d׫b "0W&Ha}j-ܜ?v5B 'T8$?(N&ppNC;:_]َN3$\VrAOx'#vSCkvH5:x7Bw4|Ι/$*[k7oSf8WabJ;~(`bD"i͒+w~|bW<*X=H]1NS ?~Oнz##V)'[Kh?U0 aEbpc'XPBh)_ fwN`ֿ,1qCH^m2 sNUtJ%ܴ9KSAN[tЧ_ׅ,-ZzIA.X~#22>B `jsaP^D?'_V^ FܐٙҺ8No`fQM芦W]1,Ӊ 4e=-+2asf/@OYB w?Eύb:aޕw UeȀ6QJ#\=>mMȯߝ2gٹf*3sGdڍ} Ȼ'$pc"jO믽|_X S0sOL/5lV?]wb4vV N9qc=`l9~ׄM1zגcf. dS4(L_!qt>[w0ҌX֗4ɸn=QY RbqHM;~x`-wOCB s.0/M^A !%j[Av`Gzg.R(7utf JB':([x?K5]gҾ̗'2lm0A̰Ȁc!5iY e;6cPCDO~($Ͱt-xdrxP0HT}HuVdË_PXvCe&@T,~|*g1֏ (Jd.;/KPD{ &ѿ¨2 DOtKxVT] ^ ï v#M%in~ >EVfqv+=Qנ Ꜻhӄ\0G&x>!\{bVS#uh`Rs+{K :PB?mH)Lh>w2+ hyV ^W+cfJWsM7S#3?7/ N/ϰw?ov? [ nƸ4 42se+~06Q4f/xˌ h̓apY;}*d2s* cY#FL *&s>ԠFyqL'͊X:Vb[o[SPrZ'ݜ yA# ?IDuϲyԫ꒭'F8 Oc<}4e&_8&Q'F3\7;5owHCLb%۰t. Jx_b܁d75l+Vּ¯u c'm?H/sDgI^xDo/wՀWNR͉Sϗ[?m5~}vӍܝA [b!;={]YFAwK/g%4'2Q7jd[2Hot|%4j*@ 0Td2jF,LjA[iWtɿ )LQx=|FD/zД S{6˺H-YhG?&aQk3Aǯ̨$Nk,R;Ι#>*,O'>ݔ⢮EM`ΐO7@\Ԉ1TѠ #x#(-l~3Qw{R?+ϊs7xΟs~[չWis|+|"d!YJ_7])nj,?z{oWbka*.0JќY.{8!7qUaB5"\6Fִg7>֏ 6@]tln+e;w=;Z ,S}WwA=/(ݬJ{Ij !tŖ:Ə&#_;;q48SuiJ*AT. W+4˔\{;Q4jxbJW-֍kQ7eͥl(4K2!_گ)kKF'v_ %#﨑 a3Q;񢎰u4\3#~&\֮5}&+ڌ1Y8gn}M0(3:7VfgM\޿ 1(rL='5xO=2& G;!F-*:(NR: I4CY˄> M#@M(Iu$[>{ #mfo&M!w^ߟ%@$L ;kyBk{GopD/͕;|8J#0H"cݿˇƯi_C#;{Fm,+:6;c`^K(ވ#A%]wDGZ. q΅T|vm ,^k"uRaF nAeu)q.EܪkhqZã^^? 3R/=8?9iCdx#}eJ Fd'nEwBc`Ԙ6T!Z`3ev%q?>˃('n=`#$|_lFTP Gkoͦ>pI{pȧnL%HE`վFg-kC,WY. 4}fCx7}\)_?Q+N 2vsA9-*ޭD~Rq"ٯl/]-؈ EB17uTQ(U<&.emqn2~mYu2Z4,Ԭ]t%$+o// GFpj̧o2cuj=5A}y$0r Nxh 'R$hPؒC9 ,h;* sğ9A/q9fnqߜzT {T!y6\Mk,7%Ep'DpKFGiϫ>0 ƢVޟ=w#Rj ʗ/U+sz W- mDd+stg*^?Q=nY^)jDHUpOi9ynòhqM5__3ieu ANci}=tЊp޿NB>؍bwD$yJO͈] `3hbJMR!d#~NZNwatt0^Ůig_n 3bC6|UW#Y_&ܱvSOֻhlhԲFd0"%MAtBY_FA -n( mW9?4:rf` )SaX5s HdB)>U*"9a:hnNt&!?/h*IO{7fRIZN$^O}ҺD_ L̜4PmSPBvkBB//lj"Чc{H 6Y G~/s_M-l@]dFY8oz%IM'T+Y7cZLۖ׎ ]rVI''=,IxDgsNlOIWZ[E4 cE]hsI%\y=f :wgc&=v{zI. N&(oud?׀_):4dbb0oˉ;qqe;*#3j?Y|TУ=y9Rn.F%; ͛Dí9 TxpWsӭIL,Wq:M(n60Fk>&e=)U lZ eN|( vdˉ<;! x4Q:;Xq.Ps :ްz={DgDɝB{%=0M4.~/e |= R4dsdr. ~9N:h;pZ̚6 E=tS}PZp*fA{H8&An/Olp%nJѹ~/y [滼dBz~Ф"2{#w-ވfmQ'.!Z' D)d 6S3ߏs÷b\zChUĨ2P438/J5y}-FTCĪ߯ @MoEAD=4J[b {tzznfzb g~Iu}[ <7;DyHA?s>.[8*/D5e.e!|OҤf9-x)x:&Ja[(fD8gwu!=ٮ 4iÁehk35TDͲt/lǀbf5)P̺>oԥA֯7^Z߉=vxOk۷ .j}ZԆKҔL09ZOxXc|nJJ!և Qw|~.()~}=ų-J'o⯔G_Nبq¶9ˆ쿅eW#w~>y!HPzSr ❺i CvƦ=5u%[)fji33ф AXz Ժsc\&݈V~WsѿcX& ;`qlL' d/$Ǩ`|)^n_?f>}_5`Xe!G_Б ,9/ç*0a\:"Ox</)[6p ۮ|G <x&1jV44iIp_gN |L1z:jzqeK$R:ItS ՠBďԏb |="<pm(Z8ѕ_c_^}'G~h`&ݿQŐ._]":#`@ :q!E_2Đs9v?*_ٜ|rV5c9WQD :3|?OgP xM\J io]@F==7!?RC9oҹZ?lC3_(,$p%D? 'V"j4ԐJd!rgm1!ڭ|Vs";}٣)h/AMhMȥlFfHy7l-iL_ϥs]&K=Μ쯨1_Pga'gX$Rh~T P|(-4ҳ&xu2U+"&c ~IXP5Lo ǁG^iid`T7<}b|^wO{xܞ0I0:? DyO]WMYEu)psQ 8|M㚞y273za[ 8w 36MJ^o @ƕ0>Th/yMԔ͏v+P(;J{S."m_ߔF1\4ȯ ZK-oF{^/Hj{3$귷^(0S О5Y';!LM1or i9.$ˌ! f4I+^k4k̓ ]aWJZ^^o=$pV i!s4kXcS$.|zSoyRs?e}#qXfԞ x#b';{No)b]!qkEnyCFrɶ{a5фg#ګi$"@p_{b,c'_6̗37Tzl۾2OcA<'# FF[{>#OP~Q=h9UVC3S;KvM lힿ oL xtTǙ.: |(XB0 '+ϝs!έV`KǑjB-d0`jAl`4y V >&`6+: ZFL;o( a4xވ8X 74-CȌ f ?K'ً_侚H^WK/CvA9wl8V38߿ ? swB,f.z D$Z|~L[=RuNRMS-h|=ϥki~_.!,7BQt9!8.`G]Q^iYh i1RP0 USabZ˹3)Bkd+Lt߇Ap0K=EfOGW!C,;!a/6AT)%*FZiI_gyvkņ䨿llǸ [-dhQs }`CT}ӽ)(B_$Yy5U$w3аD0x,q$:ew% ri`2_c=2FQKRN"nijMjJ1^qg ӭōM'm`f @/?9b4_cf!DV*s .'5،\3Fcrdyg8ڣ41:iOeJ/k3'O(I˧J    %cZ=Ite@X_[%gP:S<ǁM)';o@ϝYYN~Du6prơc `v_yw-EX#sJY#otM۞ѿ7jn Q1\j"߀<(+*M;}`4q}F@tkGU6C-ɽD] Dfeά&o xnD0hU8Ec`_oSԒKl~w+FZaRodĝRR5w12BȫTt<9C1vtÍLUx]^֛T*RAVƉnpae2nz/FhN(5r"k+N"?%.]xS3Lk']*`E)͍ݤ cQGZx^1 M.PfoPRB*nLOZǫ8cڙ朴_׹W.bq2}, 䫈{ ?.$kcWQW8.PM@?=(>׿̷fuz gv7v}{ZsM2;z}f0'(dJB]^\ji}v5Q!Nz]ʦZ, 20´%+KzhLPHKt obf~MLzCj&PL΍^NM&k.kUKCֶB03_!DAi'p3Ev⤷1sySSр ޲6衟h\m2 qTvD;^NDm C|'錪!1X`I4!/"-Nb ṿڈw3e;s5G5ItE,e&ϴwEZ?+;aoGD+ ԘTAG0F9ӥ3ȀC{jij? Sà]R·Mο0~,lcפ@6:\glàGq &yMwo}ۄٴa%3Ŏ5F387N'DRlK<7u;lҡ ӱӯEc%gϏkˈoSn}kM^C1?V5.=~~O:?O:o~zxf|Ѯטj7\>DgqL$)S\Z/h`n/uwMO8s{H;I1¿3 _hF i q@f<}M\B8a_ɩ;59}7)㏈-RAH ˰23oȦd/K~}!6rFQfȊHQˍa퀃tН4{!zqmN,芟w_~lo̓i|q:P"%li6pߥ!zpo+u ~7;=̡uM@jfsdud?~UF-uȚGexF/f(?] sjTacqo| 3eI5k7qn`U-?nV**ί#SI~;I-/tzӖJ,|Vh* m_guЦ5Y8"(Osdr8ԿzLoJJ#ϾߪߩTytt]oT ]@)zҭ~}㼯I uV< *{v$/H e:WǁOFֹwf L\/1 MRVv}ʟ=L"g,e"D?sb4&Gl@};88ՀsFSyFR@{?I1b?k(gH3$9~,:/sm3`߸Ri['؞.I^p# 0iEy&qʅZeySen{zx 6^Yjbщxď:Xz" 'JвlGP$guW?'.ʍ_#vUa?X7<)a7 L8=T71&>sG(9]sUI_@w~}p,pCVisj`Ոk7n\]@ 2.d!'|wm2uO5,wu^uTR+>s*z7E%08Ow H?-etՙ۷?Eu p>lxGr?wK,5J̢7~%` *5tQԋLlx-7BcoNm3|}n[x\ g(L~ ۓw~S~$=p^ 'JJcEy4#5 > ;g KơڃZ7&L֫$oހ*=ai-W4y}[35~*ATH7G9!kQÕ^/&dv™⧠k-d8Ώ}A jxb QCuTfJ_WWJejmD}P~ "ԨR MkFJVe8BoW<X6S?qdʎDML(n_~^] բݰr˴+o VWߒՑYASݕI2A?4Ѓ. VӐ y\(3+D%7ycPAߖ{h(xx@M(e7.߰X-/}!7%n]%/5gGՒ}2Ú,nv#ynI$;`p? ?jg1!Ec`e0S-}3NdXd @5in*[֓UTGN`!"4/-^緡d/? )- DMaOaJ_ï|V /\ij޴3&IX#ŢF?i}Ŷݪ=A3m~O҇~cUI4"nM&jSH:w>TPo\WA,Q3VsE ~q_!.H\8?ď@$0ǿ<ХB:2?n"S cl;9Ctp3%ٻo]&PԎ]y@>'l(QHtЪLu-`<& <lt)(Jݓ޲i[IAX;϶]{uE1xłܷvooz5AD#.HZ֠пw+o/!k=;Gx{FQ'c&2nH0|\࿞͖c*_)Y~h;=W4y*A@.ԓ0>RF6S73??ۺ+ l~.k}Ma~~of@4؅0^4$FI("ezh[$^YhW'Iq~EhD:sԤ W*D&/U/*C7&jAgVzkusTݳSqݎ&&qbT HQO40؁̸CM-.6{|!*wtBE>7x  +KkH'`AO蠹5W?~~ƍM &! _X)!:~Eu7lF xzoM0w30xkPm΢0uؾQMlv<ţ(or꿃aA*bV'7noT}s*}1~H ?GqTީ$l!4[(w(Q6н"jTX8ye,k_}[mi/{ / kίHzqg~1)bu@ IS,VUXGy*US&j?b/S=AݢwR]ݣ BH\~_C5M}o o8n%S8څ+~ƀ8ҜC. Lg&7, 2~Mz￐_ zw(R 6w 3yHE>Q uw)= #2톥`>А/ ?-d+1}5 *E`ʿDσ )vIK?&K1&&!篪nUPAhhޤ?sa-sb_f'bď60_E],KwqCs^0H=x¹>= @TNȯ-y~MM Ꮅ{O$:J9L-k4X&:":A֥磥 VM&]&Q wXOyl[_u)͢tl_Wi9g>^Q'41Լ) o5ӤP 리'x^3*hb1z\:ՖQtdˋ9{WջU_Aq}id=>kkl]okE^:Ț,7f,ˁS$IN'ϯsxW *jݑVe]|hDUM=<$6PL\^Ko؇S7 L0=ES$v߮Wbֱ1!`=8&}'!R$\뙙*h0MtIV0FC*;"ւw CeMc(kBo]8fx=lBf%iEƮ?)6y"w'YzG/?R3\?E;[@#/%Vkr}#ēEtۊX!.jIxPAjOjxBb:`ܝg@]3p[5[ ҫWe* _K@Ȥtl &Oa-2 ku;ёop`2$⢤'9<~}mRs _Q}FU\%5=w ھn`kG_9b$ω{x Դ29 F7IL~J#U%sq_C:Qh3BP7`lglr/z;E~*]4 v}Mi"4"0$y,g֖%pȠi%9#HoM WДh~ϫ"E7Рr*OV7tГ41WqD `V.|_M-rOp"8@ m9.݂/Q~=~.Ja P' (9$K7aqoQu!9uԥPlKNSD:S dOݟЗx~EE<% ?)@Ye&z͋"0RfaR?,8rhtv8R;80ycѥk&3YjѳfL< %n=bF/ Nnp=֫6"zD8Yj'oJ-OVe )w4z!?$j0EҗBKN]ַD)*nLƝTf0 X_gv>ŜGNT<&}I%k55i` > \뀛 W 3i ϊZxFSUCv7Hz'$1cra| ȗd+Ik/dڈ,1\U4B|KPƷ>;OiCyш"flźw(`pɎSAua?;ZW"\![k\k]-/zt{*}ڃz4w!ݡo Dߋt72ΒLY{G7 u"jpuTy~e뫢o5Fp@!dAǑZYS8Oui* \1X9z1STHv)`` .{؁n˝pp Kb>YH._ս{m<**0L_]6΋fB Cejh[?BySc[A $(pN8|xz O%ti*& Se7< b1IK@q%Tɿ޹9B0i)%=_{?@?AUKs.#_+ћUvklTd >:xF _23RCgͮ\߹N0MKy63_TQr5H:-J^XHI8R;cn,Ï"|9ړ} ~O S{y@xT_uKl Hq0 n r :i.1SB7'Z*ḥ`djbSqO W uA:\/.U\XX sC+6sC8%In8Dh3)V}C ->υgbTfP߭ 8~:`,jH/m˶LSa?p#O?2m# Y2c& NU1^СD禯ׇ冬""ZS'sZ/έy<@!U- z=0GJPދijuP!Y;.KtOr}t 8 Joh/'ɶ(Sd2?VFDz9OsQn|BQx@~5j.O4WuM`/M7#z&2˞3E8CJ3%xNtм?Ţο_//ԋJ_?GGRW8g dEt 0'2yts!%Q\$RQdZۣN.= V9ӟ8#%435|1EH D M ݡL@NmeΛ :g M>Ud2S/gU@ta=B5Ib##^AhOwճy< ]x/WHnk4-ޏ,yW3 9@<95Zr uUwC2fkֱVSt!wB5k+OP!r:OA)BYݠyj `qïcrqֆ/uӗ}=>-#eV&/ bj܉J Rbw/#sЛ>PSH 4}K=E[N90wl,@Aݠ6noS$6rU]wG'&oOaP^/L-lF`ZO:We:;MXgQ7o .Lt > MV87jcaIo .*Ml`ṴZW؛I$,+<%t)0jiѩ=:`^6Rks" ^)BG'`p:|~]pWuY[[:n-i}i%A pQ$c<|RgF2֭W!tu__M`4B|ᥬ$N?y1~}*;8zڿ,OoLZ/)~_K)({ebqq VsQ6 =Z7 dQϏq|3o?v>WpDOzZfZhǬq:*>fݨ/7ܢ{*GmUxA7 @M^}z!Q/` l{ xDW>*Z6'ΟAsyI"Ůn]΅J01DT׊boUMWʟ?G2|~B!:q@%tж&w#˹‰NWv nY@}m_ϵ4GrK؏(+;PYqsgOt6c~{ydGd,@{P`wCq_w5:\/=`HE uGLy@*O9v8.=m?x!j9kk~YF  '>)&u:nG(˨h gQhB+tz"(vE vyaq:辳Y VAcSqi=pfv9OeZ:}8:ՠK[&ѨJyXSfe SC],(gz}CB9ݎt(ޯ͋ID]X)>wr} WUv\\A9~U7>U/-pbW}M黐SAD:?,7KRrfc[(֐_+]mtsn}װ{wN=-A;D}w9AaNREd*\DŦ@gJiF5 lh>MUnl߆{SU頽nu4KZHW?<,`VN^M%TU?>V:{hMSzZE_H$6DPp0ğh[F7]ǎ{Æi4&:e"걗\=J:y4U/?oTJY@r,@ 3Zń ]5J%tt~|땾ArQ~[Al>QazT#CyZ07֟3c>Ĉb@=+l=Ў4׭+?¹$ZLaTXM#8|?E20B -ܳƂ&[/tq @/*4Kp!"UG&$[u f[:`]ڤYuz':g$Q(zͿWTacR,ZA9':/CuU Y_,<|/ GfפVh@J)V\^A sin ]w߇ z2?'4; )q%5> U]_osP"gnn_db6°j YipJhe0>5 m:AWb A7=d%T":iei˯YVp \,AZCf :s*Ȃ*o'mpA= Lu/D=,w̎tЄ$q1z2{G~-%$`uSK,KSǴܚib ]{@pz}ؒ ڭ5d"=o5܀V?`u+GNzR֭Xf+W窔m\ML"~tw/ l3iN/ªN)$AaNp(bȭrq ."9UB4DNkl7ڹVoҌ#sa8CZoxwr= 8o.nUs_G Nx< 3 p,0fzKf/Qj{*߀f"=af@ +Z^VhM~Fi\maOWR_׮9Xa S֙Ҹcـ(;Ub]DiHRnzz]VWA #ql{O:̥Z{_|MKBawV$!H$`2@"Q\4ӲS[ׁ9'=iJ59mqLd߹:$~"Ny/dTkTpU+DZABy9&ؽ˃u'CIp{*Nzp?wu۾ϨLW~ֻȊӶ rs;)8AZq[E tWW&ZC&Pr?u{e{**o2P|Pmu7;|z52`žr(m_Ww6)`]3=Cn}:ʚXqŀK 5 H9%kZ?gH7 Qoth8?Gi5 x6?*ئ?odK^&P3.Rx u _ 80W6 [,(|8^XClD OZȹPU*|NyBw|;7׍1\_hqh ]џNk !bNJ BZ0zj}G _Mfd 1D'?38ɃoT}*nеclQ6wT!)[zy.7X?֛ _.0j##}n^ׯ%}d2_ӿ[\__ w-t^qmhbXSiZSw³(nmVJR7_Y̿6XSoiU0Yj\f>l/K1sH/ ̄ux|=&!m7ހ_^7uskfaE6G/Z#д~>vIc?R  Ϲo&j<ɸhƨyc0E= sCLv(L9c(?/5d4imAbfՑ-0+b-gUOTS>/V`di-k+BO짜ɊlܸDs~|?_ !A3Y)Ɉp7f|aI#R'_^bmⷢi7SSC:[=G 140?_ܞ(X~9Eq<@C 0FRCBo u8|q'{p@V8  l@Ĵ»ĿMq`lFZzҞZzLB9Q _fЌ+Ǐ.MRK@wqCΟ}@d1ybx?']&Q\JhYݬ/s|3~VƏ$#!UXaVnv]Q"䃣wzI7i }8[=؅Bӯ(ʗm:w]Z/r1uw A+=QLۡUQs[57d/nh&U~r:74)d o[]im&4mX襝5WciaM.7Z5) k۸)b_]Z]u%>q U1L]2ts|;m0?q Cݐȧ0 `f/_dW' va4VgMo &zoUL.RZtbO1ݖx'~ "w7B0+3yn"]ߴhv &!B-/j l!鴂yw#K?ofg; u xE]cD̐` HKXy fo-nT}p L)$)8;;)|\:*t@DM :![ f}/fƭ DĮT]~>xV\fSl,uݠ1FiBRQb=w_sZ MSW' 12\kmnqم/m`ߝ,t6(COU >KYbsfC/.P/Cwg%kx2'!X ]Ah"PڈrqU Cnޔ~|O|Aΰg&l^뢡(+n_^իU] ڿ.:KKO7 :`f0{k~w_m]oIOI8R7b0'4PO 1t(mMxv,$99Qfz,ŵzgzZ߄_vdv_G4X$yM4IgXoUڽ%\wg*N4 04GML5O "%Dd0dz½ *AzO9.OW%MVבlԕε;Év,LL+7Po" _(/F~D+i& WW)&SdG’^2.!>l"([qMVo =NXU &Й/M2cQL)2:}no,XUY Sw#|$ jM4GtS6/~Y qge*o=`޿ie/LOj!m `ࢾ34%B132 K:T$4Hq6d~'smTS;AT oQ{wQs?~b?7K=8X ~nƫ+="E?nuUf6Nl̩i~1h"|9WCڨlO?wF]hn0^ТGt FSA*x5Uo2Yd@ ^z_SszSLKGns?AI_š$cĸi54T7׬RX3 Z}V0 -DNEH2(w׻xGTđE^FoWǟP4baVxMC`Dn)\/cn*c?UJ97?tcq!'N] T(InFeR>:0k>w$ P[ώU`io_,)ܟs3]nƵ|#ך0Upb54~Go ,6nwCz6'ۓ I Zv?a^Րt~5VC x.mXShq,,趘,(v{ZoZ|5L吻y^9 h?8U38iyf w,4!~/F鐽3Nc ~뜂t1`9%(v&O g^N|9wB Ͽv* )SC",w_>*l!^l L_WBg{فhn |;CБ::brUTnf#7` v3R\@Ю^n_p&z `XQu=&X87DZO@sWK 薗!Xa@':n#(4_[7Ù G<*~:Kk:ƂpFZh>- CFrF4dg\vw=ܶEhW_<׭CI[oa㟹c:{jY:u@^_/x!EC_iv6J`<<`sS6d=B3؍Y oͦ{@Lw 5uu<OVFk7ןo逺~؀fa9I|wc53~d~޸4~%l <;쿰)^\s{J__gp%`3sB ߏ|{@Cݔ%/GWn@g1!;Xlӊƫ$XX6B0Hu!d "ztʼn uTDoyOƲS>6t]Y YυSk3%DNTxC1MT\٪Pߟվ"]k/ QrY1!xQi6;ScND f֏yl+`mB å__?8Ԁ.%K1K%fPqځ/d e=]0%#hlT KLu; jV{?\䌻Qks66Gx 8$PTJ{-S y8+ վ`oL)?E\/n 7xJ@rRh``w)\;(^.hRIXݭHY5JgbcML"񓌷`EYVOcoⷐ#DӾ#NmNRUV޺(u: Ji™ 0H3;' p)QFeVxŵ0;: s "zcވ#S#/ H8o0mZSǦ*W2ݏSބ^F0DY~.ZbU)mmy4yz4C @cA1.#塖_d}Gӈz34_Tkӊež.$IL("ГEV2?b4ڨЉ\Y*n>uUTBVeŦ:'^:Y,)ǏC gO\9dGĐqzo7^dWr,7K:ͳ)XflҩIc#jPA^MwVٲ4`|zmו]tUx0"hhEv%-sU{~^v|_o׷`k,7]V|Zo@\0Zȏ+a50~ϖzjnkrXT}cO?}z4jB}T ~/}sx? O/R󭚟TyFj"}wz}EL 7PBmԚ `|pax5`j^f| S@&_/e{_qP{~~L@F@!.ZIBܿj)`C>yH(*S _3e>`Z$=p`}~asq\SZ F-vɭtS@Qq[n\vŀ)6yMȅ C]pQtcx({*'n==l0 κ"#n]$9brEC#N Nۅ>{㜇Vb%»sjsݿ^ll1A 6]ـX ) 'BYu='V;wgKy|1Q4U3^AmYv4y]k,4u~B4p2geOj b8]7{ V5]a8zG/`uT{x|X7sԀ#9ܓ3Xۈ?miP~0焂/0ooJ,W/E$Zga} 4aX3oԠ N@|H9gOtT&- Г5'rݓX^XT _u*d u;ִ;0Z1lR\?,XD=gH)~ B?vE>~|ʾL0͗7_-waq }Ţ~݅^^\5xdGM:ešXӠ/J@>&.}psįIѬv(z X={u3 NQj}XF 5ؼ)$bpNynVJYͦ|}Ayx.j^k͢МWxEa_ݯ:󎜾Kr_EȸB .:bȌu8u&BGTsg'(lSCq(upgt@ *{SWgpoٝZܟKSg?'@Z/͙Y/Sq,@(lb@lMdWso($9_ !?Ovc!,࿃ Nī\m `%ZoՌ !ĖS/ A\?; *0ɓ]~4tpMsϸ$NwgMMBTb=+ckE1)"$~q9ޘ11_r x:X 9/&wA߃5UYQ szӿ?4[1TFSJUb{mjɰ1~?v蒴2$C?cr47l0{jʞ'u\~L+`yֺk-.MPs~ID=jR T 9~sѰs͗?3_EQ Ο[~ W7@+.M=/z ;1[WMQun h+w͹ di~h4B^Lo[doF1\Ywsj$ H^u'$(`{#t' 0ɨ^)ڪYM ]EGR[Miڙ$^e某Ht^3wl_)ܪ# *DpB *K/ט Ծ?oF *:6ɣ|73{;Ih~ג_N)7]̧1[khi*("No,`X'F<p6*&W%}qo~Sd=*w̮įUzdVaZt,ﱱl.GE/Wv"T_O74AS<8 wtg=߁tlG zX:_û<=5MUX%|A@[GP}Q頕P?vp :|cjA^~xn0(8~=Otp%=IƿO"+0?-߼/ Ayy8Olit">t]%W6lo{}W'x!Wq#GMk6VNP Y|Xe rD%mMBHmVv6HVzN\k(6[~zjIl! ,EN4EGL 59v8qeulFqH&g)OxǚN;VGkhp]W$0r}?uW˟x8Pe~w:OҬsrxYq뇀S]3S-+7(*< LS7X0Pί}uƮ՝A︿]dzHJŤaXҘ\ܓLHetdq$-!{DY7"Hl{!]ndJr~Few)pfBK$ p2h@[b 4ay"OcA84W'@7_2}F}>vHITpFl#C0ԤƑ9* vZ&Ǝ?dz/@Gr(8D jG+ p~w©_Zh?ƿo\2WrOĈWzs5%YdOsӸ>usjeq v_omi.˜OAp*\ 741yy~gAgQ%_6Rd"4 F[7 Nˀy*ØmWܓ7|U_vdfc _nX'Mʯ/Y*~໡ h w!z*U(vj s%3~/j87Aw>j/:1I C?n S 8˸'K3M?FcIyU(Knrk:`h1(Sh(P^·3j_jBؚMR}Ӵ=1}@d:LOn݌8JWsRP dzXTгM|T7w %wPcJ?Dp&EkhGR;)=x$wOG?Otw7&wqx$J&ďco2e:u~F4 \>lG)2DE)S\VCȅdWI* *Kgrg҆@.>ޠ S0'qD|eL]TWs!ixXˈy[{{qq~rr쯫 7ͮ[2.,u1졥>(RU$WN0 w@?1uH =QGr۽>@{SZ^C?F׾$MkX$~qkV}PwOm썩kNدg 5j N 7},| ĩd(nd^| T6k|qyޡr@hH&C`wV?/ݟKot?{}p絹t_zI$ ¾4gE`i=RC6%MLvԵe-]Hv7NzЬC_ I 12JK x0u4^ Jr=l )R*f4xCi8u)ov!=*m֟rqO\b ^6 F[kӥS!1F7uwXځnΝ}>(DRb$!SBY#Zw?*GlBz7HSqA?޿X0~P3XwߌtIOWNdcmA‹,B3MRH48V_[*OJe3E%T] o_F0E>`tpy[2\#3wJ`8)Ay.{ mlV4'KMh*7U 8\IP䖢l-._73ݿ'iLAͳ[sLG@ޥClr :$!!S:zLU.pkP 1E)F`y_2~Ĩs8)zYlKsq_!MoP f?|-!{6'SF5ߺu 򕜿Ucp_@쯫m AQKN&{4$Bb=5ETOT?|V\>cf'I?`2r[`܎Na xMp=l%!0 m}}ݎ0ݦޯ}_Tdl$bG.QXt!x-K{t%dzs*1gQN<?ek.ޓ=П{H朦m{*x䏸`Qb6Y~7:'ZڞE K'ޚGsqXȵNC2W<׀FS9։ifE$:߻S𙻮xtw'zpbIݧ]pP,EuWS7.$da<}ގ;x{&&yz=zo|гZ\YC NߏĿBΏ~Jޑ3 C"8ʞKwhb)yeP1;݁2~mj |oCWqS|qe_%p}B>33-Plw>ͦM`u|߹_h᪬.츂 ߻nߡwxaj aIqkc/rss-(E#z=j$i>oF`zdm񛓎YM/k#7YW~C;78;<ƐD423rҀ4@ /Dӊ',idNkg2&4`a} ja=(`\*@Rp *)9^@P9{\QID;!Uҿ\Vz>Z_oL2`iŮ+ {Gytc>M~k '6ߨ?l gh˽ zL83O$lii<^_t$Pv]Xj {@4Ө?& L7𿑶O=b&.(ok8/d3}܉1EaA'ɗ\][ꂖ6,Tvs~Q5f2U_ ly?& ⿴~QLE@M`+3|~(*+x>}=f/ezO'.MvskS &tYrZ~.:*:L`SjGX{z`E.HOZkYb3)z_M霹PE,-]\x]6ƒX&w7@'㜸N]_8hG:l.CoǸ}càp־g:ߟ7Qƽa? mMؕ=a5|oA^D.TZN  }DE|YSR>b卂4W0tjS.(ZmPXޟoa.ޗ^,E`Y b_u3Dk:ы;uZ3Q?^g='?dJ&ur& zB0LS%´ׁru #kTӉ̩PS١s#\Z*r!x\?r3X%(Ϡ -\3kv<GBd|=s]Z[$\D7dIU79'_& )"D8,#V>hacEEN޳;A˦:͟2hW47C)g$Тhŋ:7!onW 4H_WZ Ă_Oqր;r%U41lt(JyWO]S!8)gH&4®SP~$ǧ_n?09ؠƨQʟqqBNFee״Eqh_ai*:Mh$ (4/ Qo}ǘmmjy1i{Unֳ`>x/1z:S_f48VX; t&W3D~@˞IJU,x=s'#~)7ikg#Mң54<='չ;?Mg=K2[D0vT$ T꘸v xC.|.a^d\"m޼;i]qԚ2yn㙕eg: AQ ]j*;E:`q|t:xMqXWtП_A1̣p7HeɑP``.99AP|@ô[&o9i{$j6 N͌ w)8N$o?gϫ|iHd6}?/D;8KAh5$ڠU;øzFrǔCg ߭|Hׄ:[Q1 XQ%K}y! .7 Lt~alE }iNp[E:R5봰">87tb#x<ʂo~"x {V@v}8*P&oVAE kBM::3hқֹOMc7ʣD ]NW}T hP").v/qc i"xU,^;c#v>:]B$:R2㐪ߋWKOa%j":h F3;$)@b1-+uF?U|08~!V:M >V:評$)0ug\M#Wg>=k餝3ЪvH'~g (ůV>4TkY{D0W`P/x5R]2n᷊$u1[Ǟ3/QD`:,O۞4ŕ#c5:+tzXkқF,?osZd:Ŝz_ҾE04@'qzO>omQ;˲WJ@0~z>z.9 t5?ujUsq5kI*9Щ8P cw%|sFL|q~f>9 [Q_LWVr8E.<z]H`IBF~¿tU8@6#V nyQ3B=|%e~ ]g5sד"1Ng(e?=ܟS|֝:?U_+wa׋slONeOɌi.J[kn<%,ZZZU0iTܾx؛B@iH:!y'&//@ۿYT:N " T``w~wŔx(V?Ĉdl8k.);Rp0WkNa#]`z^7M&y\R6ƏA'CcVo D;1 m=/3|2IO_L4%~^3"G |s J$Bm邹d^h߾>M156X_년tZnz=S;3VZ3(Fy(K:>aF׫%M OK6Y @Qv4TŌqZ4x Y0;UhYB\/ihK j?qo#K#=3~A wVOZnvUFFwNɓ#i_k҉)6GO!tz=o  >Ը*I~sԶwtbqXLAn ^\ݓLpC>fwcX: ¿NosZ."S< aMldkv^OK5w!׿_@K)OHM{rq~iGPE-YΏ^o0:,$/RD{5KRpG9RSsh~nT%k*Z\$Qf:\&.)Q) U,c"+qR!ɀhNHq*9;%"(GOӯ[,z:JW\9iiQ#MAElTd s?k*D`UtЙKW |->WPyoƔyaxTw m1R8_@5I#dWߜF*ᒠs3ٚog9F&0JY sN7L6P{rA\j'Q7]*5cZ,]D:aXUso1{_:B3mb<0f[0ڧ_o #3h){"#1IE;Cja| QfDgIi#MCqq tN.z e~h(S7a;]p/%UP&E\b/)iKsiŻwGq Fpa&*FvV9VKD@|d!-v׹ɇqa.9?NoW/nMU|&+nIO/ ._BaH߆Md;FGI@'{{1,M1bs1O =N@><Z~:C>q88Tϑ 7+wm@^H_ xGr]PnXkםCm=7yӃ^.2jKCݤEl$u{ 3;sE##5 }OAEL_F oT잀nU1uD6r.;ڭz$LS}[B[e?Dpt(f$)/ƎSCܽ ֗sfHSoj,TD  pϠk}x"XrlMlMᅅ''^3RNO7S_1Q]G&V~QL+"πu&B%?D,ɸNv eKS~.:RRmq qM5Z G~ uΐY ,{aNLc|j)w|WajR<NĆgO$S|)` -su;ZO(GT[)F}i_$ֺ.~oBr}G/_>O8Ch~]]xͱYZǗš¡Ƌs絬O׵ @7ס_T?0C?FN='!dˌb{:37p"6MQiq좰['\?^' r?GγԼC Z :I|;6%9EӁJsl5 5-P *ǬӾz)4Zo{,1z4;&:배NrAHz4x,J\ڡ4ky@ufg*Sze0K+֠F->J< '=`nWs1_c r^kv03h~q'/<79?n '撛͒/F#V۳zt&tnE"O'"g֢93BQ_fxfIY;&bӳ [EpڈKoP@C!~=ғƝffӸڢGwQ|~jDUEJؼg*(z[װN؀qu?{ߔp*]G^VHAY߄_g*6Snkc|O/Kڛ`S|kgzAŀ%\tZ}iAy&aIztHظ0~#D ZXɨjjX'fPuFNF*W<9(sK{7; ׼Y2?˗Y'ؐ~S s_ 1Q#_NrW+B$EOdg݀oPq2vzͦˡBO8o!.`l.]/.*aqsSizݷȢ~TW_My_c;wE3o ώ.iufb"?BDS;4״"|K8f0L@P)1c0(b޿݇ST:<'pua`&1n)e=`k\`# BsSf[/85E?ug ,}g+G0:?LBOe){Yj?hEa~HCִ|r-H6ы7}nDpJ;*fMt1OНYOʶ$~~ԯ8ߋIFm4`^oL-;0RuF 2hɗ4 Lz{*=H.<3}."mH XMk@|BDP6ԩR N[.俞3 p}?QNi/DQ>BZ-(Vʌ򹁌\m4QD[<7J])|'gjR7rC$,:ރ Ó㞟ZƐur܁5cƽX;EjlM֖{" V/uxfDP&mNi{n0#k:>=sfɱ5ݓq:G:AģlpM\lEMɬYT/%Mϛ`G(X &l|]`H.`+ pOAOȉN7'Q BBs,CQc-BߞNosU v*t?faB)QkG^ ̮3oǷtN`]\iL%Ѯg;<^. s|~_ySeof2eM{!"F&ZeZ}' !Lr1 V}O3=Y4h=gg*Z'CiS P$~yx;Ǧ}DSSB'nlPy!7K4o3Cuj:utdU;u&'7\uK:9}PRC}Q,7j+}fqgL͕߫;ݴl'$UvZOPHIkþ"gvmY+Iew)SJyo4|O P!B,@aŧޞnЈDa<)L7zQUL? jTuj]E'R#J1~D+?E&3>GMovg΋JN/D^e٥㴢6 ?YvUv>"~NC#Sz=QCl['qm~0^LJGKMX.sJa8ŏ|rf#dv`mzbdZbT~o5WM*ɊHd.R]_JЙEr|+#o4x el ~翘E4!h/n8|'awי!rL>*{Մ1"t18+ bwh5fZgN 1T/IG}U! 3-AQWŒ:z UoR#]iީߡg1eϷ/s՜R>{zP*5? JG }I. JWc(N?vq8?YKFvS:,*UY=- #- YdTYߒZ9B]sH6Wp.Il24P!G]sp'̐"Ŀ1i,XK5 x5/S.V,7[=v2Rw s~ }kQZ)Y@b#ì{cUXo _{zֈҲMź'9o{oBW.ۄ:'`!l٣nw|VqYwF{zu}JK+i@bފ*!g@5aA_QY1޺jG_?c' %7lLI*W'|QB5-IY0<>ωϟ6r$uݳtRo^_j]GNs|37}Cnv_P6h3~ћ'+}w?Ĉ' @(Jva@^tm8O .Zsvzk)~<9m7 OZY'@=YjeC64B\\@kOU |ןJה-gsFM_ǀ͋cAypx+_ܲ-9B,ǻ4zԇtxXG8Iދtg؏ȃ>QHuF v/dJ` 8dHU8ts1/@3=N%SԡυN=, ]|OнPGkƊC#E䲧!36 ˬ-YgC<υhaKK15 xMlYIG$=7$LJ,=n'@}tN1`_uFgM'!3^.n}6PUM#!y;AN]<υ_7t ]!ҹL{^d7śJHIG%C*wLJa&62u>0/P&` C?y`ͳƢ`'yhw`=NV#M)Nb>So Vᘰ|}`O7:DOx,W fMS['f.~}{6K }<?AH^)J>~0ᄃn6EYEu ,w҅QWuo MI(!U^J6Vm68a h+nQBzi5BYq̋h'XP72y7bEo9(k3;T~p3zgY#:(MHOT(Z:{B%iϕk_o t⓲|#m؇՝qHJ $,QFOۇIG| _W)|FlL\c=^P]-eZ@e^᧗U9= |}}VN͹n`1ʁ0!G;nR^{ vp~T67T`]Q 5{gFzx'iMم+)>6>g`i WZCHfvcRh,Ӈqڟ񵙿 l98w*N_t 5rqJYo ܧ7aHK@´SzQ=B @n$'Ʊm/ UdEFKFJYgd;*{k'(#Ac R\|8aj'Z@36G7 蘠DAH0V Ƒog?a4I %+{]Ƕh4K?2#:@@Ss؎drorЅ )OO5 ޤUB@}?kcE-ï:e@,cm9-Yt_AQnս&1}Nv=?C횡:kSA!Gd\hGƴ KU9I:rR2.Iqr `;*Ytݾa4bp{F,&՚kw84[ \jAH%1_Oy\ay KNNrlnYńȧ N$񟋟NO=VSohIxk\b8A婣dƆ2@/P Nsu}(o 8ѲҐZ<h0jaARG( 4グKY 3sLT(Tt͏G  y"z,V*!2|J:ʛ>9gL#M2\1ZA.*9 &tX]qvm R KSe=?>/k 0ub58֘EQ8)/N ׄU:ye?qO/NH迭UW$tX.U ·pVU5t*zV5CD *|Bw \l8 *~6![kyW?5i9$si j!4 S.l(Q'HU4p?~/<_,bq*ON+Zkۨ<'äsdK=_(Ru9噛pAϠ Ó(nu{*cEa (Еk'ߑr*2?t  7{jL|3 HVLA _t3~7:3b,IykM' Rxd?8U6([1~PX9 R&SǾԨ++ ġM QA'_[WC?dH,HzҷzrS=ӿI~A=rpes &$lD]Y mzaCaKЪȫIvbvP H&ɠs5D M =Y>\A@ldҢk5&Vtůٞ?+A G*!v WsEBQrhgƚ9+ j|QfwAxx˰ sE=0ub{Rm;e/֛u[.?zxZs.Tp9}O 8SJ kLZwyNc,v.NKjEyC(  8$+ M7evT$3Y>dLWICز &. yf Xj蠹\Z– |5&zkZVLy|(~hDMb.p^8ܑ(/hrҩbhdA`IU}y1 pMZ~]v\#kI#5Wl"Ply|5u(G?0~7$N!h s}>MN}Uy}yvx=Ʊy}Dzzi-Ek4wO)ܘ=M:S#Z?񣰿?r 7<)~ הǿD\:aIUlpU˽+X-9i CLݛx|_- {jx7Dl`9'+ 37tBP.9T;Tf8T H~@53veS$|-\mu_I/9s^&~0zI)\)W7 kм`49͠179فn)M|Zcn_Ţ@ﻠ5q 4^&@RN րґ"%p T4u<=ľ pB7[VӨP &}d5PWFiCϝ.V~&}xMv"R1TԇWUEC= #.6fFꛀ ^nFO3(v8<I/AWUl씛LIMзC:!755$(jG-@Qpi uLW'cn :Qחo'dkIewD]Ċi64P$ M!]T:?)ݹ1Ѳ %tI`USebWhYrSMsAQB.NX+8OqcO5~D^0Q 'p*8Q‡ ht]Ӄ)Z9б7 _8O7[;{o Iգf2顱tѕA`~iip(?G Һ\ZI-CA UӍPW7jKS}ʴCODz}7k& +w DI͒~?mIc3m\j"0mi&6 %!я^U1]&sHDkCq!k q2Um>PF|ſʩIrVPHSHW >lEdCtՒBz7_P#*}O?>p|I/xr=TIL7*~/=CCp$M`,&f\5'PGHP ,,94ք(S)u R5K'{5&}QD&#jųvl/e&\(@NX񇰿aiK"ǎ*pj{技͙ 3zZJhQz~mDz~t OL?s{OaPޚ&ֵ 8_X:_\ ҀZ6 ~Sן3ЛG~>?'] H* l 4&M j8kwXƠF윙!i#6{>}S=-|#wԕUh`_t ߱VDLp3@w^SWU'ɖ(#.~ueaιi~WW#^XPWqηϝ \M ?z>5>G3BÐ@bFoDu[)zIEy{JS:V'__b2Jtp_X\T<0W:Ha=vS(yZ8D+"j xBg֫_P8*WDaw9Soj؎ \N3NO(&T2ԂȘC"uk݇Sa0uA00[^ V+}~(1͇{x+upX{ˇo͚~t3<3s.w+V4ƚۍS ^Ҭ"g3S^IX"~`]Qc0z?>^$\.;W௥=kT2޷_C]tPP^Ueu>+"7Ŀ,1qKCH^ |Kqحg*('/%YhqB4FsIUp |$FfR'O/t禂*Ϙ"{dl@Px{ѷ RSWZJo`H3娢u4i;ի._31ާү0x@sLDGf_X+ 4pw_(w瀞fla22l;&si<s"}PM~ƞ4S +zD 4V!8f ?>_=!+V~ "ٕ b^bڏi2x3uWx uwtb4vV5KyT 9&X>4$NE=wM$%9f" O$j >c/&]QB|T]xǑ9S,@dy~3Y&x(+*SQoZo'MNΞ)0wzi^HqFjv([Af_|7 9o_B2?(T[߷?_#)C:c;sQG`$$_Iȫ`BK?/Op~Cz&(y70A<;yo>R W3QڏN6ޓֽeVL4Un*;% p Ps! 6UEw 1&dpg}ŏC5@eSe@C ]ous=tg*FQe,r53!tم_ٿLs.R}QY=5 (l$,t[*D _6t[OrD?9^_pS!i`Em%TOjh) $ >.JuKڎ0)gц´l}~1V(GJSv3nTcʘ*fSču}) ~H?ڕSP/N@Nx$Ǒ)wiScqmM#3W˯{R ™yysT%x䴓&L<5U̿/lzo&U< 6&0F!ӓOR;{x}/?w1uj.M/0Ex koS|6ݡxsѻ:ozIA3 ;8?n9"Ǟn:9hc:v'#sr8qk$i xM&yOp'j߯ WpE_:("''(f't4|'F?O/_`ke' NښARHqxu:vSqʷ(u| B?Dg ҧ.KHKb 8?֏ڐ Rabj 9vR|yf"d=:gH4rͻި3A"9qD-s8Ğ&k@@;魬R0 x bA.g94lU5d7SFLl5Ep} UBpeb2s1| bx &+}|ؾo5$MXa) 8Jz&z:o:?oM?OV#c+6J%4aHd)bVI(` y%G*`wNBR{[ZA1^G5įQU|@F &'X,}eށS0;vc~CH_7<5TzR˅jg+gj 9;F.ְ{#/Mn"F`{?p $\e5C! *\qqf}"Ɲ.`ۿNO9=4~ۇ E@`5IRN}@>̤0g;M=5:<]a獝O%,9h_ҁB#m&)5&.=o-qƪ:<:vLuD~XLmP)]F]m GZeiC#' 3S7tڀQTd~5[4]AGpAer~-Dx_#k {+& }x#}eҮhY$9wb# z\g$rM)w_uoóž Y`bR9w?) 8d{ c dPhFGM&j*SS_,[zbfA ̅bX&-o7\h:=1A}?ZQx=kWAS3 t`>p28א`b8"=?901%V>2ؔv-M20Ú2+J`6~|Ơߛ?57OsWzD5kڤ;6.~D E[QEzM'y2ض.-S^;zcA3@,_^ ve:0˴_Ef}hx1sY4^i:/`LˀT7Asq;'!ϿI.(C A{r*lEFOª>J 'eR3=ԯPqSZ2 }O~L~9;G*TA`.>e}SM؄)EQC?M7y+ª'?*Zj"1>0tM4vM&vjdiD@U+~t$`0&G#˴|jn/pmlj.\3 1|Qpvՙ @jw/Ͷ ^ԟ)58i* ANP2)DR&=y~-aн.ooVATɤy4E_AѸeÜQ2ޅ{7ݚQ֩{Dp=A8EmfzF!+2S|%ra~mDSl@.lhϕ cg~ _aKC LI)/i2~?R_;G3Hިb4j4fQm;} ^\? tB=tkм<.߷(aJq;BxJK9A[? b>|ؔ<8 ۝kPWc %6<-4w9{;Dh*.1[I&z~\MT~)q)! ̊N}8kH_47*C/.>;X|WɀYn { Gğ:O:?cz$Z\Kt 56ܤ,NNXSmb^4"!L3SgHM3Тs8;}lx]_=gB=Q;.pМ$xd9zmfoSԷu{N ^RZUr~=vH_P3rqۋR]7Ql%>M,7EA`#{0zNKb?Q1>p@Xwi99p5]P&[@]= N.a)F|؀zz"X~OcӉ~׋;.4sw|EWxudqp$q2rs|z|-2ނEoMB'\z_Oui c+YsH[d4 b\ cR58N%lIղxX0RqU f @Ch]j >Jw<__,.Quz@wYa{ L-y֝بq¶9@IaDm0^!6r>?b=| A]H+xh>Žpt_6]g 8S()grZzID9LS`T4KAZgd`F[=a~?vhJ?as~*~[e Kix\1T$?4}}Y%Tx]ݔ#9LmUf?.(j]FNS+u&TWmE.t}M k B–bv _)RGT Cfs0oV (qN:r}:/ 2I3APgn6$R:ItrQQA!7u"NC! |=N)z@R*Ts ,kluWT0^]_n⧰4ï+Yy ĝ+}ߙ ^3:q[>di1#c<06x ("ͅ>8s"7UAp.{tfT l^SJ M7U4?;Gj&Rߏrj)~rnگ c/_϶? ODͩ!5d<̭[;z_EodL"D5gǬ.Z hiR"i-#vG#CQ,S5G۵VY^gkA㊈x {FW) 2}?Pv.rչSV9uf:+C\UJN~*ƻ=/ޠ='>̾S.Bb<ߔ \4Fib*ߕM33xv!&UK2wL[ט/כpyygAKaQx)ٸ ¶ui5=H3EXrQXx׺tvXOk_Ӷ!!M%Z5g_]sLCzzZv!3)0SAdh=kdhݩ1&̹DB_|чHZoFlfԤ4Xo=2mZ? I/,"LMLm{>?yYj$څm燴ɁDb؆.'7^z(YzUj)s*N<mQ'\߳ y~zttsڠ΍d/զ*f[^}x݄\1j+<\55y? UMMV{]b7 wyl)jW$=Y2k?2cʀSq1D.Mj޿goɯx\ ƍN]X!\q!?N{ 6yFyݠ$L$4Iy 6I4E Z"- ΦJht43_]B(&ѴV:U^moFVf^Dp-h,yaH|~sp]Og_/~J95I'̨#Qs3@]akW:jNϙ&k 7l+ӨrW/#^U-$g|P e~mLp_(RJx0?6q_bBzU fx'|olzsTuxNݭ*6hsQS(7:{zs7UevP8 Q`|(W*eH Ȉ|PWHx 5Ѩ?C|Y*2*~?N}g\ vt?#<ߤl|23xT}ӥ s,{hGhwDvU@L=Cnv0,5Jq gMz ?5I+1[m%`E:qo|Rv_y 4{X'8ClA! o%mb\pbL& ȃ~`&v@9f.m3?J%5ҹv&4WwlD] Dfeά&MztP <܇zV}@9OI8X o;d Fh8cMԂ2_G LzAE\!na=Ko02BȫTti7vn`{38P*2e/W9u{~?fbv4NIgi1}zFE\Y0 ]~" "k}Qtlͷ_q\8KZ\h;xS5jY_ӪcO8 EE6'&O4JT]Bp| aN8< .ϙzZ gGGV\L~?9Eh1:`;Rg3Cߖe)4Ck߇ h'[I D7,4: *o)f X\CÇ!ru2F4ߨ ]8;A/8\ ĿW6ɔ=d4?ى] ƍLNM-LNz~8?a80I#-@^/LKt xzC/lgpP1y~E 9Mb.1ӳyiFI ,D&.Q'mIhH ,؄p߶VGTEcD]kPE)DIOMoNZڢݏ ţ=&.lx7rDSb)B3S[&yv&)}^oSx}MygwEZ?+{=(l6JKI_28q-'oS"@SC [ 0~Ш|϶Nw=e ,b{&dȠ|f;~i0Zwy__sVK<5Vtg-Q:Q8MGW<wTo^>kOeZ[]H] Ѓ9 |PTv7-=s}Y/gX0E4`M%!%iLo./k׷p]JK\KU'WԾ`x_&E8P tHM`[ͬ/O>_1\~g;.)yK3!-;=E Y7ߑׯ; Nv/:(&ϤCc.!(D(t6tkQ,rJۍCO R|ƺU&a͢ m \u$CpßVs8RǷaw:P8|5Xp~=&_pj?F֋?(])iFJ ><XsJܷq痹 BOTMT`-q_.f';koxz ;8eNy˯xbZ*6j_k#Ok$')"oo }t> ׉y]Mϸ??ev÷?;lC7;gT%(ԡ M?9z(&`m@քcUl wYiʫHd%mE5R=#`=๟CqH 6S4ZxL>s m(}?;~3<:w:Iei,dME4b&P}t@wiYlH[.977ׄ~wb3|SGc|xOgM37l&2:Gw+c:oGf^?O#lVg#5k.\khQB0N{.H(C:a:hw7mS @dJ.ʥQb>\Ns-wDIX'JвC.}\PF\3<[od(:~#B}xW("9*n'{se2ϸjTsJ *BBR]P†+omlwmsmnwDq0+_ rhښhNVqk:;;ea8[6\%9:Ћ m翧8Bcl)_G{oZ h<;}(=wY_m^OFLk&~Oνφss(-?ݬM9 Wک8m,<ݴI#t:f(hk7,M-_"jlÐxO)!F̈( LşGV6n ^%rp_"R-:\"0XבAB`O@cFFh#jWZL Nz(ɷa|)p6xyNIſ4 r]/cNEF~ Ĕs0CHoT`Oj<'.$쿜tuD{J@Z?e [eL>voi>F`O}|_EtgE V ߣQScڪ-wM0|%fy! "\hF> 12Fd\d!'|76F :ge4ud-F㽢-xOJAgK*wSD[_%j·1-H>s z+\7E4ޯ!ځg3kmoqZ2 +@ 7}1D ~:0bn0-4EMc@ :;ӚGf0ְƊ"b~ځ`.'"^aG;~ٔ8jz1n!'ƪ?|#5/F}YzuzZN0tC?*TkPbAĺek@e~7T`eWڟAae>:0RA⯿[7'-%Qѿk(!tSaV.:OGnז &y*o}+i5-QabxY(zx<#'~O]@PaYǞH?nKÝ{~}bA/{ko|H{߷:&W~6J O*z APůJ5OßK)Y':y)*.w3{4/F[4Rjmo=O/w 5U38}y{?|vYc +%f/qXGgtC y^㟯/`Ŀ?t)qEUoI>37o1~=??_5U*k"n߅2GQKSi _y?O80Dܨ(-"BZ/YڬP`cyM^VJmw<} 7 'J% n 7EE.ئϝ*.Y,z~K7F4r{wO5YgozsҠjU=W_ aݞhNA*M}4x~|!K_Y}QB>t.E L }D?qwmM] hBw? e_YN@:4 woyu#kAy6Z7^аCnszx o@~Ѕ4=!w5|pzi~$Qc4'`d}j~C>#OBaLlKS 4 c_5AEޭ3XOӿ<6׿Q#usE*(O+4;Mӌ}FI YxzoΏ6<^ڽNK"&"t :I{WW;5ywEk%gcRB=8<3ܱ:|l U3j`;Ck jݰπ5#S;yWM)$s(/6Bz|4ېX?|K2helOe,E" t6kty{ ҙyڜm&Z5$ȧҙػGvOgЀg(#_yz+JmG(gq}K`F6E^ou_tMơ榴/*ak|,sQ@oFlMb=4>g0^ S@y+@e {qOm)PGnTK`km`aѓ]շ=LtwkFDm^w.h)D4_k=tG"=dĀ:?8<L NkP|ZD:Tsxv]cӃfM8LH8w/Y(X\ f22$A`56!͒UAuRu4ʿg[Pm {TY̯1Gv5L;b\ *H Zw1x|yf&;C&sFY&+rH 7? R.P R$:It.e6nlj7/lD0;C޿u_7sT Pk @_ojcAv+±,hHPg^O\V rxw-w1<kr=wM/ l%~j k9vPmfyk"ײ\|_w6Tyx T n=Rac/ x}'ԱNϥD>l, ;w_p̟DJAD^V՞~}Dj8fHQ_/ZAQ1bLب}<0B4Ǥ^3x=+86=dOЗ8.}? y?!J%FL;8`9tt~X@t{u79%!3,<4'^ɔ5zfYY& 1Nezu oJM;8.=YHn7S<{(yC QS\ox'RJZΩbh7` >@T GE@;t{rTIעv( ٠93+eǙ>ѥ:Gk&^8/K7rBETvhMN MѴku] 7yrTO78Rpa^qV*;%i_JSw6-%/_y@~ ,"ڰ[T`:=î8|7W_PGe% '<N4k z\/1JBX R lv]Xgsr'xsb.(A{ @bv_ U_WJl@ZjM×R&Õ QF1zLFfMu2hp, NkBfO6v>,SO@+>\Ũ؛r׬0\ȥ+֛iS|xOvh pt2J?nX87Eu-`pwH]=M.f< 3H|~xLE'SK[EmU_u k //^2߹0(nHe& ;A#~]L'3ӯH0ΜN$C^%Sg㡄~Cyv"ƹg+t$:=sSA50׷'cmQ;ǡybi=u TK#8t6)+`,$Gq2TAq](NzA{2x ?M{dMϔ>og_~OQ 9$Zk"ݍWDZEI `FyU؅ӭR+C^_}_PE{^=r6SCsߊZvqwsVFpPKkJ 3Lw6 Fj'stݖ;kTd1*V!5E&?XOi,9M' APzJwq^)3:DxXsH!k{d񅎤1 ]Gp|M\ D R5y1\NϏf(TpC0%?I'cY ֳ>vo;؟n55VQJXIMsq!řrp@S3*cg6 KGj]/@H`GoV0q/R7gy~ud)j|J 'C)ʟF`JjQKnD#+\g N ^c|=S#3Ϩwxx DGuœicSnǀ~sA S1%to p< FJ/6Ek~R~Y"E-,H2n ?YEspSsQ֞uG=RT^ϣF)A`xV L~5S>XXl0 bjp|>!VFBpg~ר2oj%~`GS{:rlGb(}k?}Q3PC~*`L>!jjOtE Ǹ|+:<5k}H_nz/Zv;Tp!t"*,%^jpͣ<Yn,x{~=͔Ne/:^LU yRYG9A@w]xVF/3or_nKXv^gu0J)}Ә\A?=8ojr@âus{xץ`u"rğa]ȅSkgkXVsIo<3ΙqYpKy]^48A½ܐ3|g<44PJȷrnvIs'c'ڠ(0 |c.3 `$ |o-[A' M;b:hJ_5s*7)Ⱥn_]tPz؏󤜪,_Oo:hl8ړ_az}L|<L|YmEj?g_NmMQ!oI6N' ~\6>VgM&|~Q#OWT?P/D/FK ~nxt|eӯ6/3 xH?^OQDCY,|'SM. ` 5Z;H'G.|eN8,D:;kL/1T$Ge.= " 7f=!O5\\ka/nR“â^_~&^Z& s?f.p 6CvH_e+I_k!A-n-4&=M3[a`z6/:CKw_ Ѣ|cFms?#U̜; f-٣aH%k95頠`ZhI_;Q4]k|\_4/`8rG \&]K-͘'V@ɑ[)i26;yv>e ߪscW EaUZc~g.T%Nj 'H|zB ھ%|kͮ'gg5IWXJMG8w+ˈhMAX.zKS.~u\-"-4N@yI;\O܍;}/5FK^wi+e8߀)k : ZP,խ}ٜ4S#e\]>5s,#߅q @*Cq1`\RGvCC@D|]D oocHp@5tИkOIt}gMT1]Dy2->p\j%NT]X%`q4CgO:JtYXAO:}W<ӧtНЄ)YZM5[fRrfc۝!İ4q_ hZaNߧs״stu*:(O=@[0@tRSlp)buZPZ/^1A{s܊h28~"x^Yp>p>R\^SGK(YF]]xӼRhFp[,V@>pũ(Eգ\MİiBYFS[EYA:f0$Cjz@u| n?YNgєOA$=S87:JaD~+4&0xk~QuH'X⟨*:)e·̎u&bJ)Ӵ!s:;)&B/A;"0:~ׄXNk, 9`bSiퟂ=+O#mvb/qce8_,IVW;̌>@B(ŎW:Xs cFFDfjPTEC n.wY%ӽ#s ZϟӊEݧLY63ޠz 1\jspz5NMxį?{8f/X}&=B]T%д "(tpH!7f+fxHIwtsib7~oQ;26Jb]ߟcwdf0v>W~n G\!m>W$Xeyn[@>F9P w//ךYRÀtk(B#M9?|qZ7t)]\73fWы <g6BWI;z,U)khR\H3)nl&_ "rVA5 YZcn!"BOYϏKaɎlܸDs~|?_n<hƈ@jPZC|->G?rȸzPs7{q@uQ@ـiw%~Uxg6_c͑8kkD~W%~Vŏ/=_/ /С{֐w> <1lGjKtL. wR&lnw~Q<ߍ4i֩S> 4T.z EGZC_oN:4qz[hN),I~܅T|ʿ~_n7h~V)-Y9ZoWM:BI!]CMoEE~J/Bګ#!eeaP߃B<f~. Zz']~^ eYF>v M0<]E]t89[kx80rq;5ދz oY/J 7wE m z7CxƙbZ6xo۳D.&ĢW[5KY+]`!s hp v ai&esm扦 LvFAlP׉:e<\?=h`M+ ӎj}n񓕰G7-{9.iF/O1y+8dx-dGtC.Pyrj;"e4]huV}5|H+3XuSIK_`',Ogʗ7SeNlq1j`;O|t~_L.{ߥ) Fnjg_u!Jq+ .kx ?.۱Sdgb1hOfQx{dLBo ? 4EbXj7޾) 2}/Y4ȢA 毚#ŕs2 kfPxHRo%¯NW_}"8rB02/ z&n?_C=8QOΎ%,O{qlj._ 38c\o3$nMh'4/ W5MCZho>Gn5|pya4 7FF =)b/'$D.8T)jHӘrj=8E_hv &!BoZfc} ҙrkGqARBdx{qu xGt}HK0XqNZef@'VQx"DIPn%U^^R ]o*Jzo"nj )ߊg(T 2VxSA-z,ht9mG ya[sΐ ˴S!I)k(G/9-FaJ덌9+:Z30kbՅ&^&1o&.xsהLdg+v#NNgbuF'[[+&Τk/- 6ӓ0zb%UcS\}̓TRAٿsk{o=0z8!^íא/1oz8mX ΚOFzUUCL[XB˯m\쿃LGb MEyuJowh%=Tn }HhBKBTV:Ct'~M pFOWP%͚X̭5k)^~sW$ 9}hB3Ǯۅ~sjO>gaa:]W &B&Byϓ1d>aa$Bz(`/o#00(8?ڕRo ~=Ŋ`OۄS 5؅cGQQJqJSdVYBԷk(2HLxbYa/0uEf +no"fy_/W*9h''&-lEX)Udٌ{O S]-:Lpz_ϴVjvm֮RZs8dno{|"WɄ[M}i4Jۿ[{7;˦&5`8& )gJU(!GD{K_b.5kĽ) ' ŕXřҷyV.+B߂IB(ϰܹ??[*&dޭ4TSD='?٦n(cdPmwTH\ H;Ecw1x%Sn!$4`:O1x kM_m#QLg:>w.Z,YbNqXΎ&hz^;@X 7]mVL2m,+g j}Hm. 3=!0aQ'nVs-8iz/3Zq'ڄԵ Ϫ'`'u{pV`ep=ߐ[`.ϯǀ +Q9}]{EoGYF}^'9H)aT]VhQP32zijg[n~~$RhxYlAQ> cA oQ~O4Ga P&"KuOe~)7cwzE|>(U& 9=m0P'œ|5:zʶ^_^a3Wr')a<:I8 -*}Do]0E)W^wlh2 "C%\ ۗO dw:b/ϱ7ścF*|~!㾟߭ <|EE_~, SL޿x\s߶gyJ]UIYCZh˽͟Y7ZKm:A`Y ta;$%~$L@ʷ72 /~X_c{e j&HoR[@t7]4u)wBLnXڱj, JSQj(zg&O1x>aBvVx15A@zYGQ ]/kv+t?b|_ևkކ|jX/?MzNk.A"oYx)S³ﮊtz &DGFpDPW܊vFzLYJʠfkT%6!uz{>ߑ^RGy76B|T,_D͂x@ltg(0@D@/=4U3j8Ϩ;"\Iaw'9 6u|G&}~g 6/] Žtҟds&6F>_C !lI}c,|~z ]m%GA<& ¿yf^7s~wϳ7сA`Y̊]t 2d I&]ﵴb:l{[9u 9 @1̦ |.ܯXXMm)39zF%—?m_q8)f`5XYhCs~P󗿀W_0oZok{l-HwsP !hoR9l(vfP':?ksQ_jh'Ɖ{[u )SC5h>k' 0؋XץagͅcS>&jWרHgZ^~O^ڋ /Mew&݀cfx n r_Ͻ(P)-t'Ǒ1 QokA n殬?GUςO-/ߋC2kQSт0<$ tpc W<}>!Ya{]N^ǏmwH[~wwo B`,cr4a$gDC}M9 ?hx :kJw}ɦuo_ŸiN@5~TՓ`]7PgPx0X wO/z^Hַ3|fqAxߐMnqǎO߰ڧwRy>Oc;ij !_i-K`_Xxgn Ɋ[s-|>.oPbVo?p: _H)>2Wh}^ 荒׭ԖJQם" P@On@@'mfVښR¸ki5HY mHɮZ 1MuTDodQI8$6hm(WAxSC?{??TA&Y#c(YE@wYMߧK;3@Q `؍uj\ OxgCY/:zqkhgo)V_w;X/] 'w'JfDk ZexM:ewzaO .qaO1)=U?_-X*c6oⷐ#DӾ#\Y9FleOlX\)#Ngq̄jiΝ#r p)j&( etNg%NQ#/ H8C ]`]t2ߐ~^{BU:pO娣maI& T߻lW~c^pY};X+qvPǪCC_~j&\J@\2 ,uˉtP8aKӲl9:~<5b?0Xhf3@fzaBVS?/QocϬ>Om ?4XAd\+78~ZzɀuH`@G<7,$`K:>H_{ w5~bؿSvlM @ |j ~r Ys4¯eRY|$DbF*: di4'hv)iKu" 1Y7/QVVQkH<G)0^0`3(nOzm?TPS O;~ {_$1P%|$yo.ݶ=vW/2i4_N*Qe9ޔ,Wn/+f/`쎜q >D!U"8 {M=鞇`QF/tB(cc>)~}!9.hZyw8zxLhoC RiDG̟q/S8{Sˏem\#B ̣4pGѨ:ÚI*i(;PQ7X)${[I?֎/uS"ɡgrz=^gM9Y{{ƹ݂Tk@Zv/k| 4 k[x`y_wc*BqCIzbq֧PPRAqi%@ Rۙ }H .OI8Ҟl_H~ZT֜obw\FkKtV"Ppwj R㪞)TŞeڰHAءT:% "1lFY4J@B u($ $7k-~#:]bdSzhTTr-ڗ MM}Q̄N(/Ӱbyτpq@#3@άR9#}-/SEܑ&(Ve'gg`S_lmƢaFZj:TBv=sW)jMb Hk[J{9ǏMȕ`P٪/*%lV7E]Cb!3ƏR/[/X/'CO/XpFeԗz:0w D7ED{ɗGd-Rp? oE5u)~mu?S  -5Qt q͛c/¬ l>ڴUjٲc.Fl(q u t18 ["#Kֳs!ďoEeܵd >#LLLG'<_nusbh(ec*!7z1Z@D]k߈w^IG+84WT)QUػ_?38#RoAǭA:=tU'E<xbo3PQUb>L}_?ra<8M+") {$8ĔַjlzlJ$c`)iTuHOrTah?s7 ld $PL {} :R ;Ktk^ d>%!m$'!i=$XuVc1)H뵠Zks0I_ǣ{^L4zo>/s T`]Э08O^FeHrcmU}LnX EڀIT/jinC'K~\Lk['!ZڭT4z@0\߿ja.A=Ճ g* '.ًk*wEP>MϚT.ڏ:`>~LMorBY%Q¸66PdrƉ+_n{ އs=ɼ(r E3_+ F#Xai )w )OPP S+/_}PlϙV)_r+oBo\`C5Ll ϙvOcG ͩ|CTɄ8} ^/o*EKf";W?`aB?&Lw]{S.S +1o' 穛 ԑ)ث<\`izhj8"w%tw*(ͳlrwJl7cQCJ)9$Dhj8}ig|~E N߉&CAJg ȍ2KA8Qx wl7JCLIHуpB[S^w Ȝ5u,mʬǵہocXAp: q;a;Tg3;~?+a^ uU$ J_ Nû9@x ؆s~ ΕݹhVU:TIpxwMyxe*"M47ZO%*^AwaLTf+{;`rdAgܟtN8=ʘYϿO7Tcp޵K+T];AD&| F+͝#"3N H3W>T''k@i @Sӻ3ӝ54.3_ׇtt/̍glfApT.ځ <KJV7>H]W \ oL! —X2^L4F*0 {|E=asG >ߥ"ӿrƳD>a}_@lP`H1Be.n} הb ~e ,[9޳Eߗ.V}',<~eJq7"`e=ӿ?$R2ӿ?%SŒ$9SU"b%U MWХ_YYӿ7k"]VdY]_CuuŲC1_h\"f9~ϏOTP :Ld`: .D16i'TYFOF fO ZI_@.n9f_ـNL4ԐzŶ;&DF,QCJԳ~[5q?:k\z~$Rj8 D4D@734̓A>S(pD[ܛ]a2kAD}v|R皬-keᗠYm ro{ՅD=`۹3Dh@]7SuJ hIE<\ PT7Pxs;ڧR6&ډdb=l0'eqɖwS:gHOy[?uy X Zw44gBu7%~.M9 Bi(E=tz^c@5 <IЮ8S K6\-;D{y=Eas[RDQgR ]QoJ?t 0NZ A;8aݚdB*K>H@翟<@E[D n."Rw &b! ] @Z],LQ`8\ЇaÚT#44+[: ެ\U4Z?~=(5Q ΉqtLFZh{ M.*˨G!NDTœQ9l)) ^^qF+G8y6OA؄h6x~u`"ѿƿ |9Zw#;W(ٺc d]YdO/ / lؽVЫ hPzEc~9Q)Ɨ4Ψۥp 4HaC}[IŐ/z8?|ϫ¬ 85*d0~ [E&Lm3zh(Nᜒ6`oZ`gm )tfXu&|˧٠oyŘZzoU((|&R+(?yc{12jdqE 24ϓ^l )٤*4r)HrL=MV5Gzz-ЧscˡhSAW?*#jt3^ 0p ~ps^mԆ!$?$vJ=kW!.0?A} `RuBsz*.dޓ.TFM3LIw#?Fѳ>Qk!sJ^HUY(MַUSx&ϓ1xFH!2gP>Ecn-:\*FxbfūǙ︨ q28&gsE*ӤolV4X?_/>oPnݩhrU:ɀsW'uekwa5V6`fw$թfl89:}/ñ!E(߇$0D;D '?1I4I{[}cE'ӳW.YL&U)&r-9(NnQ@M@82B @9e))+{ٹF(gRpo:I|qN[Ij[c6PKԴtz$n+6g87AUDg3 Iڿ*1da+ 8cK_1eFP0incn`U.bIiyp09BQ FttcTw]pvպDZFa\:&6'޺x;ykpܣt 4 +jlQ'$Rt&g>ڿ9cy~7` N٣,7P̩Ӡ Rm@rV!̒y'G .?8]^lMw>o'OþlNzHク{r4m7}bb|-7<3 1/в߲ ;~/a^OЪyA#4QAYMws8F^y)Iڿ(1 Q 8Wt7'Q+ ռLHc^`q}',ƗM%xszP1k@t #]z9i4y2uR5#=y 8<>`=\oۼDyR|siƉܽ0f*W+jhNPC~0'G׊zGfdʤs >Jxtw @Gg`l1pqyX 7tb(Jlڿ5gAϗe=Ŵ~IӑC@xǹtA1Vy$Os4F *CHfP >.Dq$҄?8kn;`)Dǿ/j(oؗZbos@ygYi4quL_wbbԑ%9t`N'0}@8'sur(Tvs~Q5opbwnJR@ـBay~73!EDq"?}@ %.`3__܇|O!6Jמu>ۍ / H5YHYCu C.$]!f)^.4Xg@7}HW] }z|g&M9S:[m IG:OOcG!8'ٚn`. fp4µueq[kiN{= n&M#UyâofIq&;/uGx/)V)i]V70h?oHS4Fka.V7 @ ᯤ<*W5T֢iѿ^t`S5\#mFVtSQ#ik'u;9=QƟ8 ^LAIt p;3?x ~\x&`!XL SxG[ ?v-Gm*!G@$IJcQz}֙ct[l*| g/蟫ݬgy6QӰ#r&4`S~C* Iz4BbԽo 8;%i#l:1kM=Q:)Dr>VΜ ųJXu x>.t[\."JntJ2e%{Yrf"= !~ 18դ:&.-ݔjֳ.S !QyVZ25vn,ƮBHQzzBJ||Ӛ/Se*23+Kgg1\xP-ϊA?&S35UO-:C7ިhĝF$ѹ'dl>BQ_}%n;n6<*zE;yi]"Rι`Z@Upl'yFzbڡ:F2CRnB QjlɶF?ny"wcpB(t!wE%z*OHoS|`8R Z_LH=:#)NAn QG̀|?rf}WT{YN` 4~^>Sg121x6Q_Q4ᔤ[#&:;Wf4i85qU ҚDYƏЏu'P:ӄ!\Ce\g%1 Gx >K+ lZ}a@:fIB6WQw1U\\/#53pqΙLy/QTogg̲|eطv#..Sq>cQf9?~=QAjq~ϵtV\Gb!/~H>> ~j%Y_7EEsO2Hti5WyZ1{:95!኏wf<˩8ya{"tR.qL L)'\}ࡥQ i¤uYDYQp=aL2G=u vm0XFODj#ҍ-t]'wZÚƕrUeW]n7Ϲ9hnsMtY w#MƖF}0! Vz.Z7؎内p燤:PWe>J_<뷙Rh 4cÏ.RAl.QS:K{iu1YG/6sM4O|uZ ݸ:Ⰳ:b { 6Xtq|ϴњQ&ZuVoo췃ۨmSh̭XWp)C6/4k8a>}Ae'Ԋ&Ϊ|= [*DpJΉRӣ95aOmBSw$_t_o}B\(fw ^m.!hJXrx~'KRE0M. `*A1c*MU_L͹: f5߹ \L rq:5Xq-x+7QNi>J]VW%Jï -_MCFK(HTn2r {I DC]9%ˠR3<7CEU3*Rv4*x^\)QTfrdLmV$?^4.zR@mrʪ3Ӛ@z< R2exyR%d ~G1@'|q*;kR d8 O`.0=&q%r 8"ɰ0~L w24)KPʸ/%(Fv^ᯞeo_YT{.BTWڥ+g6O肿xw;zxEK\4 J%+Ve=0eZ#9-ho9E2UO+"EynO'3~vWo?R_ӿp;?9zmXSpk~[ K3\8G}8ы hMFsB\s~7\x "j7XSh7h5߈!i]{}uz п׿>0mrXpy}4Eeg/s7bTut6X2PAb׌_{}:Ù\[YH>S;!ImƇ2zw9xch#"-}N4G$Р]❣=?24c0dF= -pqZ>&.$~t}WH\otÞCֻsx<7%o_IogY֓{רA?C8Ά`+Jws9]u&h}aWiR?b.EW?3_C~׏3)<I=Pߜ+vkW\H72RS +BX]1\/` mf;ڿ')9b7+ւ1tIqN<_sNQiKp2sB YUFM 5Qni`|]59N-;Y͕h8KhH8 H/=='_JcrLsjBJIsek;?_ nR0/?v18 >wg>hmlu-_<8Dn=QWK?uY[ ϚUMEz9s;;~n:{BG)|.`z3ƞ(yOSaϹbj)ܲRvn>*W{nN4EaI!["l mxw`먉Ђ4M[&79D ~rck%3њ)W ?Oc ~sQ`x%NY>[[o}Y3; vh8\* ;wgM-e~l5'Lw0Ϥ0p={)-4_}F>+?:a!&k @6b?]Jԥo$ :O| .ɞyC4#ύ^L3Eww0ow6hL)TdqN]ZJ}Yj)r6|vL]t5M L``|I/='wDͼ_b4@C3h❮4A4Ϸw FIZ=fy|^*Ϻk6VWתUj' isEZ}&1k1 &W[Mk/w _sSF)LJc n>Cz SɊ1^oiwzO '푲 x `0bbvҢqP QpoZt~(т"0v[}Tzn )hW R [yL}%9S.~c}>j}gMFB._;&*mwu/YMv -,Gs;=?z.Cb׎`4|S!Cቲ"(9-H_he:L6[ɧoi Op.ĜwWtdފ#+U& #%g$/hsTOM~wC47xDB _1EfiY@~(54(Xq*m:re+N{0fz̀[TzDoa= ₿&щN빚t @xS郹 H68Tv]$ e)Jy?/Ru|KMGyQkz !SJ6NHœq5>¤_ 0Y_+:Z pxJ[&_hȗyr ŹzK`M@9e*Y)Oo_-Dpuaa^yrE|.@&~ hgs`YV߬N{??~%N8mU.b6BAAJX'JFM'vylX`zkIa^Ϋ}MדxoV&=H_m`B AwYrz&XKұyь5S=k؀q} @gf=a*sAN7C MuQz/ևP_/Ԏ .=`Q!:G/XC[K8~z;sE5 @yZ|?/.|%ª0 Je6 ޿kY&Ou ^qJ:yZ#'S*S?pbwi!r7kt>#?ۗ=zn18ŞSȷ<@N|}T$mQH9"BM5K<{ G<:w O- #Lgf6Yc{kI'Bhr夶b #!3𻞻77HzMEBHj[CMA!:,>IRT;>0~ʡ1Q6[EM% zdiw`'TA!z+zE3Eyo?óghk#Hm<~E~ ȿlpр@n:/ WbtޑnO3O6p?TMm}1s.p T'<?z# ~C[>y)bcFQ8%~U>0+UŚb $fTb?i](Ur?z^VOtwbSMiZ/6!-¯~EXl$ZL@O[]yS6hB8pKoj9SՎ;Zu pb6 EamYu}ګ(WQ,tɗ;d=fE.0د]g/ %q<߿7C@cqOzfxr*z1ih/X_[Uq)NSAn=!u[tɭƽ&1?OΚ$#c]\y#Aӏ1V~_UɈ@pKYvu;J&q "::嚵^VJ(AWq[iWo,!k">WR*뱀*]>w'-HW&i}qn=m|\n_f@Og ՆӊQ/X[7s|剟~ְO%ەb7ѭt+qbKc .45&xl k/`(yw`RXn@`ڦ?AwEf PMbs0Z6@T?HGH8 vּ[t_p{x;M4"|ɿpZ1=@c5zW{NGx@0~lZ=pZ/0. xןBxc//D4X<y ShkTDwfvqH9]F`ϛ O*@P]t?5ms;-l]̏پuw_ \G Ȧ[.>.*D:a 8A ^zDg!3h{K/: `kHՈפ;D=} Z0kJ/%ȥEl:L?zq7+qLO:&R:1>/]Ǘu3,|8Jqљ:{ΏtHSF<z6e`,Q%A4@;U7YnC- $؀rƌL9JUlpl|NYښKX]8@3dE7P,/\>u/^:_ϋV)/J#>S/%/mFGYb4[u:۔$yAvg|nW[(Sǧ]^t9GMผuMVl%wdruj_J|4|$7@gj\U/ 56-`O]g&qn*d5c3 chsvj=BiyA p b}L{߭:w9c @1޿OO HWT`*ק!=jXu lw~ϗ *ъmՀ$Ь;_?`8![gsrjUZ ~jV8 %9MP-÷'᷆G:2>55-rd9/ M/}F3u|D^6L8 ]~d: ɿiN=~ E҅/?K_o&r]lG9V{\37: aŸ|,>9oS@hpRQ@mfGHG^@cqXx /`@&? '}ۥ7=/^>^ xkLK;=V tЯ^u״֚fٔ:i@}Ns"рta՝@i(~RKxGqB-Q Q@z#h ?qT3\; )r4^:gp"XP7nIa"7>pemb͌Vv²|'FS>(@wvi__jC =T(O;P+\=ahmc^:7r`*WO3DRWu|@*R㧞?>S6 H/EkmS.ɟZ$lV|la •=KU7m9%C):l5%`X?bnr 1:((H@OC\"{7?w32fckhX jK"Zuv9WzR F~HD@, OAԒHfK(5b%x pהx1̇ݾ\|%S] XK2 9 14>Es߷"ok!7_ug\Gk颁@j '` rJgyӇzh-pqqW44; 7BzaY[ֿo5P'q<}& .x7лq-.X vuL)ᣤ$9A w a:mTT=}t_`t=ǁ{^+{E#EmKT;P%LEt`/zB9}s/aKcCrb̾40 4PXvZjڤ瓹LQef-w53/4 *KvB_+@W'`d~4Ct`#ZADU6D 8,6 : c;+ iNYznek Pd4Mr /2<2ɠʜxk%FjR>s4H7=yOcǵ$ʟ5gv |W@\I/?`o0?MᏖ3*6Ƴ nxr{:8hTqԿE~&z&Ǘh5GP?% j,fJP_]4K~=tzΥK%Iwc4%͸o'w@hJGrSe~q6P} xl:sߘ~Vҭx_Us}&F;LeMOzh9>|3tg-\C%f%f7h5Ն4?,|wk ?:l@!ARʇ_(}8?57}jO7oz{}4Dh[ ^;mǓI@&ZZr' 6ӿQp52|[ǃu펖nxi5d1Lp3z%ـ>;[+A:8{KVT T:_RWbg# 8꺬˯MP4Z+\AMHȦHk9O :1?ya` woIu%52.j;Buwhh&:+\yAA'YNdH-i>t։0i^974Pɜ `:={+Y7[̄jC+)J4~֜9q@Ч'J`>| ?>x}Al͏ F~ N_ Ԡ{| l32p25V44^h4$r6`K j!L#V$Հ8 KbR]wK'NV=kg e=\a0 q :Y}H'nm@I(a7kYϜqYQ=%Tf5i(xU ,+F+P ©`- J0Cp.o $MRbot3rx+ }:n/%h (s: Fp>yaNw" 6 @Y͟ۿrakrW`}L.[⁄^KK>N+`O{V8_@:ܦa*m7`@ ?n9llf$nEh':Og7  X171;H 2#|3фr?bul`4@v8k[*L?u쇕CF_RRJ BfJd{C{@&nLrcNS&պrgz"^#tf_8~ƒ0 ,ꔤ<1ϿN|T6(և:1zƌTϷ@j>==)\DO].8N# ]UHyOYӷLo[E_eQU.)$= &|zˠEZ4^\' _$wF>_hCI?C=B ekYޠZFev$寒^~|7$'.)*TT$%:>.@*`CG@}ut=L #001PY4AY&~=ũeݦ5%<ɗ){3QSeut"wLu*xM#A‚i 1mY9.>6]isd+oYp-K*M:E=$}esCw{Єz~60f?7oQ\ײ$ ]oCE1X,򛵱g^^{J'e{oWъ^W%:8]4NI }SopR^J!kǢ3_e"^S<`kf$FwX|qJ~6{38%`/_tw/__k}iDG%pm4MXl~A}J¥PhdB5&zHwǷB5}Mbx;*˃xzTn [iT; HOCĐ^x~Ms5wYA3?h rn5 fӏ}4A^R`nK&C 7NnhlT*o/{8Džu(كM: QWYӿvcd8? };ߏwkyVa+9~dŀgR}M{YכgB_^ 7,9̑: ozJAy{osk?I@ƙw*2DݣabcS%tIVj ˻]Dz~kw:e /pҰ}u7/9L oM?{6$0k w 笿bM~UZv _#VvU hr`覔9 gDHH7 \Qj+>.T=DtW+ٵNM'%w~x࿹G;q. n !/Yc;Kn_ʹ\¶utzh]ɓ4SHR؍RU՞ө¸dgt dƹhxQ?/u8;T]`p M}9H09izC= Po`[KE^wx]qv49V°vT4VYtg)D zskT?$[;p|'.7T! ͤ=ͰՏ^(8_s62t/Q>* de8) B!M. TgFTZ)OC?4;~4yZƛzI[~r9X4LIg׵+%4q%)77(ltm!!3 ڐnA/z}F$wnhv9|Uox&kmd&Ri( Mk4oc+@1MзO< $5T抂3W~Ͼ~{R ^7t D_j(}~.ب6-pڌ~H;z 3c݆$m* y7=wv\WKDhWlMS$ qI-iV 78g@׸c7;|d5if4u):v`jhZ]^ q֭0 ~5&=` K'>^TÃX1y~>kӤˡpO.*:15bj-2 "~je[\A0]oI/&>'yI(:ɗ42-]ͿA1S2aB){gyrDBeY.;fƔƄV4OߌCߨ.LzqRoĞԚL'L L ;=M-iMrV!KӶk2X"k{EɴֿP[w{} `#]'{gVB'*RPʼ׻b *hS \3gYΕ;S:ZMe*4IR.0#z?C"7-{Eaw9%IY  V xN3NO:s]FjU8R(CE>T-P\/s  V;}-k~1mb~Ei[&k}FMdۉ|ؿuuZ><]s+4O=J)t/Ew7R-GW~<=%/XVMm{ۧt78d-/W>Մߞ+}>  dfW.`2KU*>pE.!ͯW"K"|8Ü?OU܋ n zMiA8kS2WGxCm"јwV7ԥ ;῟ӱ%Orf>oMRыyM O{FHs!^%&pd3;/?dznɀpg$ x#&ۯmS;QG0PC,H|%oGƳF8V??hiM%uGi`7oaƍu~$ee?&Zm`j mʕ' *etAXdX0wd/po"0{>"$!u7 p]MN$N0;xjEH?.a}^&U < 6X#^ZL :UƲF3]Z;,LaRW&(8H'xyQՁևϫSPs\<@'0= ٣.;'A83@k!]\⠌a3C{vhBw}!F <儱 } |iXC|<)egF'o%麵Ch'Aߓy Dp}^Ow].x?1@owt>oԽEM_U6 '`u4K;Ks 47{NƂq،PBo(!R?_ft3jg[6)UHoTr|4)Fx *00~Up:I5#YG Ը^ Bo6>`Z^-D@u;bpb#]|M'?[#3S?CZ}x1,Ѿ }pPQmf*s3z3.?40d;#d^@5}r!Oqf1:5O/KK5_cAtO?4|3dϠag w#Cv#][ /.;-hIP*-LlVyS6U T Viq^ sފ[2!~mLedN_G13Gs\5bm00(Æ f~.Oqk ~tjZeWH5s^,S(}/AǦi80  [;m!FGiub;?c^4k%LRMdz.DL}{z_4i@X3-rMOGSǍ x4,0Z.BCrڥo"Ԏ _6 6vC6/|޼+~QH~BOP"q0}#:4ď)A85RI-4NbΫ|O2l P>7"?xB$xÚ!B`@n$Q=9OƉab~̳8KS^H\"ve0P9^WQH ܜLla~4ıh?缎j}lߠT؀c GZm҆2&!2NT| pxtـ)KVm6AcyiMnE{|:]0K^㟛O^{gk"KߍU|cp '8P0D+)JA Oor~!~s})@73[}eP@cY8`b8 LX1%& T @cܡ͇8ՓO0OT7"<.7m,ekI5*g @Y1wXz+ptYS&(sT&_J3ըs?O+FiKe2Xx7ZU$PG&Oeq?TE]jV%$8$,=٦p7}lF`橨o?}$֌/d;) W >ŷpop7$AK7/o?> ĀAs2ڬ^1KlE& \Me"gEc;N^T'=%L+/LS@yXØR)a6ً-ooq<Gg>\zP $?7Xߚ68_Stp$eb>XG >F,.(WO%aAZZ7EE.GeD[+: JuJ3`EК>0$&a|tд(F ʑ,hniv:~ ]qa%UvJ$LVڃ> k_S[&uIn餂vdK5I;Lz2ǟK4vQhE)1{ltͯW3z@|S dԔ;ҹt/s%AȮ?2_y![lzu؅AN0ڽO{zx@&@”oA'pp6aǯAOv})>nӖ'w)8mAo9:}xM o/ OaO} t#CyA;c oF:O~P8 !p=>l:a2Zqh/dp[_(wU ,?߸LPw3etqY&`gIT8/eu:b7N:y28.pFAOm`$@L頑 6AWooLİ+%;wkZt8U1bmOf IR27`|R^f7Іn_2ׯ$PRg9oVK'E8x>=-I9嚉xYuJhws_JİίԱ\޲-M@/ecMAϓVݿi}+ %"[> -W;tc3HD2'6 US dx\Ԧ$P8c#?ް/7ZKi([ӻO.|ߟ-WO-tW+C=+"'X CVP&IrG^cA` V5ǐ&lԖ rúqLϜZb}{ _\9r>ķϵ?tx_~MZ@KtXF\[A>}b0brI7Anܥi`<`OlQ׏{ ^hPZ &i̇脸 dRGT매MN4z- c_~r tĉu[ԃQKs9*RAm ߒ4Bũe}\u֑NfB_+>7}nk*%WgW3bG"iP_o ;(t^t!XA/Ϗ6 -swPT/?qL @] vD8iA$u\̑SWQLf#lt?oqmw8A`9Fέ%|L+}ePO8Xcm4guQ(Ln-\<B.pi NqqHAſ4iWJ`s &۩FL= BLc޶τ N`_uU=H)_O–دoSrŁ>{MMm ^E7 i*X[}A&3o3o.`3m߷de,5,/I"& _ke՟fWi߷?_jQAb_[w ~3%aG[_ 28%f򔀞귩j%"l =Co ?]f>.9KqW2pa pQ S+p-`ߴ'K YH8Sja2l|__}'˷ \%;y%|#mڧ P/EemPmsS\E>/%ܙM⿵^kPhm,|F5[׿PX/{$ :`r(^K5ŀo"'<6}v#Y#e^ǗM;{=~w__3z[ u~^X)yԹe~XW ˜3[eֻnG-]|>:5iD[MBidvk{&u}#\(4}WpW[&tI,t}RIM_ɯqbѿi/0}K >,IY=0,[m^ש^ŃXx诩~z Y.`M?{Fv'dzR|o@|ޘ_۰Oqۛpv86w*D2*t tCd[;k}]>juiÐə^Z#i_`w SrR3ԸL 4U t״\D"W<hz-Ol3%>~0ơa^{[^}m]_gE kIcRw6H-!aH^O߳s"=ɔf=|~dXI^O5|j<As`H3h5\&D&טRpſu=Upj*n|FL>|?";FyO7 &|ƕ~o?Oh̠8/O[5<5tQ0"S7[沃ۧ `R-4^pds%x=M?թ3 iip' f5kX.TqѺ|蠱|P&[Ȟ Wuޯ_ KQ6jO 迮SuynGcbOW>uWSW%M5_%7퇍5b,`j&Gg@~[Д]Ts7ᎄS$gDSD~՟˂>g =5{sc߀- Ң0_^ )n^Ms&cFWT9zp&LY{ MZ[&r%?I/>/Y;OZ(cӠM7 #!aA>П!/V kᄯ~O (h.JO;i֏>1mP\7 j}wͯeǰX4!E.7Mת3O3&lộ`ݧWDE?O0#UOwUp,$." MƾD|:qi %M ^MwdoiCGԝr36t9~V:GB^&l>ܟ;G;~i0i&z~={l>&1]24g}D1ib@ixEs=0ˮ7ݚ"PbO&)R"E0M&YWaDQeytxZd5*I)*nGعO!?psus!#dW 5u}V]4S9-aZW756F0)Yt'9֗Jz$څ bSP'3xLϴ^ϟ8'e +Á<,BE}bI- {~z91W2y=Yd7N q9׆ͽi:}/ڠ _\oc }o}g d .L|?:N)L7v FG{~O3ߎ,A;V9m|v!37,ˏYtӦ9/dxOY#xS헙Nף:2L2|>v! fT4N[WuSnxb\e8n`fSh>ڳV}p<~Y$E0ڝ|؁8 f)@Z _.ZSV\]lHf׊ JtB*d 8E!74P : vԄS%_pr誼RN,sRX7D>ڻܒi]LfE0j]Caܵ88A+K7OZ(@pVnOr/a: ftBնNPRbzSw{N(yv~`*mKVx:d:9qQ]EL6}:/%>`.foڦEPD/gL~hMaͼx0:o B6$K3CZPwɤ =Ó=gwF=4a=e0V,_S!΀oT50xA/ gԦ>:9A?u5 ܵ<~y:?@9;uo:7`-Nzߐ?L6ygUKհ()8zڠ=X3( Fim£Y@ >`bS俋ӻP$_i?Pd^۟צ @ %r0![4 G]9T AϿZ݆ zۯ`av^T?|Ix}<ߝn0:3Qs}`C(}Ҵ^~9~~wE˔|bwև!԰_υdAS|Ma:Kt 4ܕI7՚OhmTeˈ}ZK/c9e—iŸM< J~m'|C !~k e %δ&';~DNm}T VCՏX2zN"ɼNGgd>|V#w40SWGƪ~r!z~\/1L%#uĮ//oAN*lo/M2=?A׏mvMLSmZ9ԭG6at́1&4/= t ^qJPB72z7zـTշ6E!:ˏv =m.A~ ?^95mstTNo@e::YS%ZC)0;h:VK!/݆y K0ь+tOE,n@}fA?%MPQR)l#}f.#26S  `Tt[ŜJg`Ӭ/s:O{^]t (,HI.3L@8tv&b+3X|uI+vJg&ܳ(aTLGEAL_yI ȐkM}f14' ־#],Q,65:@Mc=ZF!i9`23VN`2~׵]4pqE$[׌ 6Ŧ `}1}7ut FffAg"=tPTY, j0%,/nSڌ!4؄RK0 :~N|au}L:b#}KsgB% }v TKI)COQ?zrVn͏qx,5E{| L7XK79$܍=~ +/kDڬ|dB(Ϗ~بM1#l?uiJ73LWY{Ӷ_~5џnFZ/V'%F>_iMi;a[ k:e<!J听7֭9@$L?:t.t59b=t|1.c%/%k+|WV"\ZSqq"‰]ӱCOjO|6fQلk k0:4<>ē/RN?۫AK7J^fFDd D]Xu> x ,=(M,ϴh|=wQ?K[9(de"grϟ믪?z:rqY֋%fh:¹5ysGH lt3 DP+>/xPj.hUlzf}_TMI2?{}>M=yNf PFlExwFt 84TQ&$ ց'ˮUbKc}vX&/.`9<+o'MUG8\O2Fpt=i569\װ[/KMp}{ ZY&b14,W`$aCE_f_)w]tފͮ(hEGHV";񷏞B7O<>Ϯ9#&> %kBXf997VnP:>WBȀ>DiݶUr6oINB%G{}_ ״/f ?Fϟw gۢ]qelr%ubjlb޼/m{s+Ɍ\'` 5kKq]GV }0&F2/_mۚ Pq-@Q)n6]8뜗 tp/)p+S|/͖^[7[#PW?t?v~2C0 ^O "^}S^3X bҵSď|ܘ˛?OS1} Հ[8+zv?2?7x<9$J)w0dډ:]&0<Ƴrm4Nࡨ(7sHW+# "U_Ob+ u־km}`D. MG8v1PLk?͔;TVBZ*g=ӎ\id jB)##, WKX=&Jж>BK?ʷ3:[cٚukBTV.*g?@12WM,u$|}@yOѼExkל4(Qs˸}ʭ-c_ӱ!ZRg.FZm\X\+EL?38u'=ߘK堗Dy j oO4{6|GO2++ߔ||dJPU8翜?;jwW $EerRo|+T<)_FWB ehM,]wOvêCt0"L:9䞝o|Ɍq˸ ԑ ґ+mm3PPeZW":87_|MuC9ۃ y#8(~5ظנlyNŀTpؚJV*iQA,wKPlE-3_hLk>: %VԻ7=ߜ6 ɂ֥ 5]I0XKi_('$չ#vpf w2]:OLZ0T^ߛG/B?'ws}߆6>Zð@^l~}L=D]D@HϤFMA8轆 ,sHF.@Em 9ށi8M0Z}1EZ|ωW@G3j "9i:0 %3he{S> ӄpW ;D;$և^I]7Uk+*cVY}^#N`d=@+9嗃׮ߋ;;P6 #c/'>)jsEԨ$[b Ә䄇b-07wew[IYA &= ]4[GxgpbIea!'-x%OYm_h?+Y`=&4C'H]S<)x0d^2`4& 1&#uN%qۗkIhXtt0Z|؀#|Z ZIzTKԩRH7yT6Z> %(u=[&Xnzr~bU x"p&8W LPq$z4Xt^B]/HIVnǘRěT9@F)ƿ)?PǺ v#%]7PXѲL^;vؔ~Ftǔ{^o ?Wir|SDMwidw\KK?,fքT [uT͵1 qPhB-ZwQodjҷ5 NNQ&Xn?~Z0RQE UEB׀tEY{^-a%ZY֑o~7ܿoYc-(7޾[nB`|2@c_P+a0r.7^ωA3@oʯK)v}IQ{oO~V_D?yx Lmzt1~zBܘY4h|LGᛩ;@h$-}F\Djg`WG*:sayM$U$}Gb#T38Fa~p.~|A9KSe:?@ȼy ?y^?Kjntq} ,;Ą^3Z]]ya d)27 5= LӿcNGmQ &Vї@^^ӼWt}Ю@X竬>i!S9R(u,Lս廼(NUf U (_kEtJ)7E5(P-o2 Q^ ֭܉:ܸM>iI(3aoz;ibG1x$)P?wMc9r{7k&^؊qp@\bzg /wHB 2Wm[x%u@╜qT8Ucn":t pOBcxwDcI7' 51t$n =K`MkX_x?3ZlksT0.hU 5JH4 ssV{Dd@z 8?7o]Ssـ&5MT'om\R^o#w׿:zǃguN3?1]YE [$L@Tp"sIÅ??g4~m5l^0' T{=T9{Wu~Bih;K ,D!41E&"7y8@{rPM h( n=o6[)Cp{悒TB\ ]4v~͵/yhAw&,fx+'ϐ" 7lE۝>=k^eW͔n߰qj܁`zIޔ|5MΜ+QW@87+@ 2kG7Iӿ8QO`w?XOG1^VQ)SoRyowJSFHiv|Fz Lٷl~Q $Vtmܐkw5 |%/ӏ,E(OfG44 h_xYF=YזiPe~.ۅ=پO  rc_ f{cq@N@fGv|M+(` Ǎ 2ХU}?ҨS߼_P}_>|fTRIy6]c}<;a.-O>ȭzsGͷPzgl0rn&p:=4ɏ8M;z `,/jFS1Y.}`Nxw ;V/$Vi={(y{_ϝ d4~4Svt/śეLI6b o.0yUӎfdvB ehpu6)_]b]!/)7![KkOIi'' JċeϞ<E5Jy]d }f2JR/1.d2K*yDl70F5 `2~$hiu=N~M5P^~`~;G+HhQvzh,B&jڝwZPpC]RM& ?,tIaj)aP)lk @ry)?7T<__ }? pLKy`VPg3'3|>1y WW^-E/?)=_Z3a*ߣo~`گzd.M(L]ð. iz[J+@㯼_ KuMcdkn@^c:I,P[]ﲏ)+x~8D"d &Hc_[P-3 {f ^,gZOF'mCF@~I) I_cf mKy h$+@ЍQd<*G. 6_l:`3~ )"//MC XI YѪ-i 8cF 0 z|j/'&aO579޳ģ޾- _( `= #ׅ>?T|xTpE4\cT#Ѝ2E1(.3-2"TW/mJU{ +g-M<aԯaݮ/7>{Rs\~ ˿Zߏ a@=Wï 4{RgGXsE_p$nMޏh`p>n{2̿#T?6[Z7wUO>Tߞ1#3:1~ujC>: <ф4gx?mϸZ@a?n{׃E} ׅ7ƒ rEiCtf Qש<~BO[ ~ŀ?x~S2Or&t~. իaw^,$xށn;dosC d ô Mzק^٣} hS^Co߉kX>9o뜋'.CSlgOgJC; +"n4zJSM\k1eh'G% Vڿ&m>~S?Nr%KYq`}!__7:\"%n#C5+|fLܵiRS.b ϟr859 f&b. $w 0r4#ji8 YոwִI=G p;sIm [S?$Y'p>,ly. hD*$N/6/wﶩrM#y AU \n}ulkt3^c ^GG GxU 6o[<IAM%IzvIi;Hhd=g@k2&nDB_d9PQmcUϥ6d2SS֟ߦ/rNojW>tzoVbާzo5vO=U,{J9?ۮad.q.+Mvf?UD97Ѩ6Ϧ9tlQ ?=`s~;Iq3mvh0Powrn@?@^;lB3yP{zI X@NܺJו?)~0@xxQD+l?%Z-PD;Y?==ah׃n8y)fcl՟5;n+ @k;! kA<< 3eXd%*l;WUoW+lc[=Jf),zH8L[۬} p(qrF2zga|# "54XOQSj u~䕶0Cy^g5dp 'GŀvmQ ۰L1Ǡ햖l`0vr%Im &7# 2lJNd.澾uY (xLi%{v"$RƲ"H쓠4%\֥>7[3:DxD kzsVDP^mPe4uM#P g`X !U{i4?3/,{T=o"dph1<(Mb`p) L1V%N JSw>V0w@-g^Si˾ȇ_K8`%$JYS"ܬ)F9)`&yF'Wsݏ5a?)ס~ gs^2VW?;s8F7șO Q~ggI~ T^ϣFir7Ex,s |%m ~j& ps@cF>}[T]\d~²{]/{D´ܐүxiPb &F9Qb9~J;$Otאj_pHW&:>Z_җ[>M[A$5-'~Fׯ^ ۯm[ v˳(haE>c3,x>4[]$Ie]Nu h4*rsUiBeW-&(Tև$p߻EjJ1LOۻH$IbVս$k9\=}ʔ2DD<"OϞtfEL"Rё&PJKX)_8%ʺ?W|0'0tP=uir?\Ւe֧;t<2e&j{6Zͧmi % ɳ# rwFSDbA4 ;?VTGM:[$`,9 ҿ'Sa[&}id=4>8F }ecxև`;b\[C_-,zdf( !ݠ"XZf}0j~3)02%-R{h4`=O`H ~b ע.9sɞǢ"=q?NݬAڅT \Md#迊 d| LͦFphp? 7D\ O5~s0޷ )<>twŏ_F(!rcSAI:AgSuԑ%,˳Mo>`Hu#M`!7B9,i߻}~8~Fr:H+s v0x8RN=G=1"VeEw/%wNj:(($4:'F&8z |aՂ|ʴUMM9! {Ji Iأ_ldY_!r @=>p~l@b2i[(#]Sqc}S Gc~enTRDw(#:ʊu1}&g T1qoLpFLo1"PcR7U D+<N^(oq枾p{wJ3e6Ct֤LڍXI,^3DGRw!vop]_._Z: ӊ e}0;qߣ:.c/,ze`-$ _B:дF::'!M <[`v޼ qOEMpxJ82NQw!!p1gk_oL߮q~k0C%GIGO+ˈ6hMACd,7^e~K(Mw~x?:쳙PyL?9`>?wMmJ7![x7\ GxzpP#*6}E0௴`YΎ³/079GZY&>&TgL) %5.Iuӧ[]m ~HaCa2_c7pB]'x}"ΈSTV)QZxT ,ݤ!|!Dwi)nt~^?⿕ڛ/`C B Zu:o5#J)gTw/oZA J$Տϣ:wKKx,ԯ'1f F@dw)P|d7xgl(y\ ӄeKOjLF?wU:hDcMo;0E U ZSa4U>S~0Μ4^t(CCGIGN Ot.mǏcQii2W+?K/toUYӨ˽o +f,n:d+݋`>.npxt=.hPӔБasjIY7nQ6f6< p(p@s BG)Ĺ "N+}f>q"|JD_̃q<uF}0[Qd~QFO_]>0$\elN Y>,*⾛~C´飫be06Fwe1e:~,Oκ;Sպo`us6THFkJq)/Rв>rhCk;1)?Byc^uiqHlkmsbр欦 L?wMw<n )|YwZLGD]E Zk:h%ܜ@}A7ϚjvutLm,|{ዑ1\A6y ET1}gB,9pӊ_,*'6 :އPf\J쯉I頽%2~_ʼn2k>~n$Μt &NTMOHMRM敯OW6MXuiڎ'#CMN`xFC"-m)A&}xI-]>5&&M<동 V/&)q,SJfi4Fאmמ˶iyT@">3T!}8NTЧ,N@9nN62M~Ml?Sc}u&(O]ױ G.xV0x:gԺN )ل㸛~N YyH7Y47̯3Y5ᖌ տ@ؽNgM5x h.wuWsw>lTS,$amM}Bws+ vw`.Ma v)S"ŸgPA{HO joytv Ybr777M!.MQZ%6I}u #ˆ V'E{C̎j4u>hעK2uhsJ[^.zp@q4yU"Z&.)T *cL4%;%O IgUuzC9zggt8S*4kcъ'6FM }J$=oGG0yt8iWTC5D|п 5;9>[s!45̳uJ^`oR1][֐7y97rCət'[s (?dtTw: f71{s}\Ggኮi"a@//C1|!sTЧC=E5AmDžG< 8֏FGo`=[sZڥCpZ<4T~ـl=yd* IZˢ(O4iE_ E7o{ЌhCۢ(?rr'C =gD*ͻۺ6|.3}n؄J [F'4jq?:qkԆbJ("s{*"i߮0 Miz|g'z,* ަ!b;ubu96wZkm?1H4{;ΌUz܏?}.N0]2N7Ծ>p}~D &DSޢeOY2A( kv^k+Ka)Ӕ nyMQ}Q8dWt^T|ֻtW\^pk?>fڭzdV_Ϗ1[&|B"jA>w#ua=[} sD+0YxZh=o4uql =7rv1gҁLŒM2pSP ,=} h9͔KW4^3:B- )Ql H;.F ZLj8i$ kTWg2c5"6bCEGFz}Gח!'*S>Qk>=VD>& [s7I.Suyu:?4Q% .FUz{Ii 9Y L<?O<5-#%HE2vV9N~_)g*e+™OÀ'+5M/ZN˿QD/jB)*Z%%ײӎ?~$?(s4=ן( *U~RS ε3toPckJ$+zlAp#D85"(sȪ6ﶿ?4o(*8!X(ݿ0O=o =54O}1>]#Y5//Y)wp<75"Z#qS?3-P>#_;~Dmh>Cl@iUJ6!¦\CB }r$aOEKSZ)6QL5ts_|'By=w;Wћ]L S:vokn[+SNX4XW^[}"݈/r(D{]/_~7n 8'g7dҸ$קc^40Eě5{z]2m_!og_?}(ۆQwB!^ /\FvՐOZrK( ܄i8yZA_"em0ѓ'+a.Z0p2ӄ'bNg>O@o(77(I|bvסO䈳x!VCt?y@75hIS1X>PZ|(Q$Qfsߩ !DoF UYGiI]9PRy_:^ϋWo|$#-GA%|xo r*.~uEy=EJz/|}vQ.BltfT .!;N˔fG)Br,4yBny7F48-?#o (Q ņ~6ڎ)ڧt€vGkea;Ff y֖Wsgm ˷նj';,h>&Koo/0 y?hx1C %΍_Οa:QN'xBKx?Aa:6wVa.5Cd﮿BI|QDj$WkߘҌ=](ѯbk'/8f>#= &%dOUyX>ʹ 5_Z@+}t2ZyB~:5)iWr.m8O^'8|J}LJS=~· \#"DMh %܇}BpI3t}( _?Ə?8@PVB9=}.itt c4XeoX=hlijz½P tciP'X"]8t&~#dDGFKl*E@洊e^ҽAʲ [ItjT& |0C/r'sn_t|j5z˅Oz^_qNЙUWQpKq~+G ΅(XWK:ǚ$ho-as?&DV?@Su28C :Aѧ<ωx}mCF(="ڱ\2AH\-{b/4J?h~Uws/n__MY$=TTUi֭!^?2u<]ϭ9 SV6}0_M2eP4AƂ=6yПT{C|GEPa$> Ӕ_vBM7:tM:*M?ٍ7rRRT~,uPfx|,ٚpݜ];;[OABφY2rMzw>M) V΄]u728!~,BM&+`0(8Sx&hZoJ?/ XxJ~?P`&9|)[v|3w};s?'3ś;J-'*t M{9]tó4Ϩs@|+f}z۩_`ECyh`5a/0ej` W6AߖEL IeQ+ܐLzMm; ):܀˙:ڑ$Ѧ`3z:CI4a(u=7Kp;|zym5Ʀ#k%P@]XKڷJ鴒7.KvDPQ-?_ /B׽nrmNc>qT0V$ H~K?b߫1<އn)[H3eO->8%#  ~{޹ŔcS Or]ccN7S|^WŁ7@5Ϫ莞Lqh"WCSr;I(0D# ۤEX3+"B/.^8߈w0EnYth/3̀sS:zx=V8"`_cS oL|6`J9ޞHO[]h< ta{(8޹^TՏ0H(K;+|_|YK?#S)rynM/߿=}FK7kWM ,Ǐo3ojh?b3x"4пCK[H't̿GH`[]@ ]=4Rzh麔?N2'Dt0Zdݰk",Ǟ-|=ٳt^^7X2:G脯y>&YHX܏4Cs_`7 k~@@^Yt @%9]!!| o?_B!jO?Mꯛ(r* -ӟŒ8bf=P_^TnF""f3]/ k=OICHݼC_{/Wj8v:EB4C%0QĮgvhb8Y>Mu#o7^}@hx(^qu`~qgu2z~ZIJF\5oVK :2!|5=ً[V}=g'[rJ6 |~#/owory w 84m]o'_cuߧ`aYwnMl,M/($Ӯ^Ok>aw;T `>WמZeƵ^{(|HCN*S9~_t4ZsՆ%]Cdm毸b `Uv=_џ? gC:ܜ_kGmfgMg~yNWۏl ]ky#Bhf׌Spn|$" s4b;*իXwJ^>䧀w8~F4ԷK}@Cd7`P?Hu*E^q8ǯq(iP)-IG{^(c}TXm?RbI(`Ueu(._Ur{>8B_~ mߪ&$ Hc [<}>!OT,ut~E_m7> hlnO1$gD s>tzW?88rax H2ǹ%P7wzchox!=xs''п:.||S/v{f? r0؃Y ¿#X17b7$h=؎_C)_j_N Ԩzԯlp=5?x~?߄n!^4Lb+r.`|i.T@Fa7::@6~zap}RD!~ _`ّF3;~hQ.4P0JqM|G/ц8@a_Mpbo6Hpj _)SfglAIHKs53%DISʾ\խЪg)W0{0_ʷHکJ?IOTk&a*n>lƝ[OXTAXLʣ|Z)j;:h>a5OWQCISo>_\ p7AZ Ƶ1654R>o}M\D:E; Yz,3sLhϙVG؝_/2)Iu8)ẁ쩢38Xɵ 7K Nϯl׋[C=R i!.c4@]`[nH @٦2x&1ӭHV89vXV(K @}̖ X>st:*7XjQ2y@fSFJiEgq,jiU\ ~?԰%$o!^2SD8_\D62BwaH:¹ z\tѧSx9_AhUG :u_@dAo_Ne*:{5uH1m$\q޾'Xgx/O@߄k!\hKi3pбC Av]/K]`|OǯyB7@]G Sw@ƚ64S -HR6~LLw{^?d`TŒ"^%sU:Ș3Mi 'uUyp4aϔq-tIGMJQ CGbt7CIP> (V5j7"{/GWP^_@t͍ $fDtOi Lo:?e\C z<_bn0ׯeI4,p'4z  IyUe?ѱ`b[AILg<zr@O۞OױaG{,7ۧ>>:(NɅ/щDW{=hl{F _S]sx%pu.x4Z,tB(7Efӽ)N?熰%r|=)iScRwfcmV|Vvo[ !4->"kddU̮,k#OrbpX3 I^ p!M8 Uf}b-aգ$̀z̿-f (^96]SnKѻ4x R*đ7](k?hF8` ;azMUU]9\54s:.W̯Hl#/W:o ׈xp\kB/} V \];?.4@L&[[()o@ѠoL(˭TA\* A@KsOj8i.+߽%[:4N~[Ը]w=73MoY OG* @-B!(-mj V,2f)~zH[лQH<ð9u.fq\().R"2/b3 MnfpF$0ŬPށSps`k93;H*m(j&B {ɲu5^V g5Uxj$U!T)UM3ATvҘL4uUw{E?t' >?ȰѮi"|TG?eh,[{NO_m0l4]WZ΀SlYpK[~/㾠rh?I0PR~ѽ]\7=߷@ G.PQ]ԥA71%{kVw0)VHCI!Wq&g 4r)$[ "&T2M f:E%XN>H! ]w:Ə߶_?Dc^6O\ߎB`fRoPTL<)`.9{?tS, 6Hp]$N\(} 2ݍO=on'w}*R4x[wLDF,pxs.!п;U[cZŨX4n@u]] NXk_UC&$ N{G4 ? =v2-"fbn(W[IJsl:3]My }s8O>C pSE=DQ Mq֮nJhoْQiv QnD ~N[ѩ~V..:dvđ?G|F>"6787xwlj;iЅג1K5-}r ںMw=Dk aC[Lm˦)sI-g`!iL)BAބ;[`$GOn0Gl ~KwzB aQC o9FT$='!zH`ƨWӆ`$sKhy)`G8Ṡ+ꫯ3$2X[U'}FoCwk빬5f`q&)R V fn}r߅e a7eَV:?@F0zvkw: rZ<9UЍb xb~/4e:]X<ԀGOd|tX+76~`ۮoﶯb ݍ:b0 !!L! i93y8GYz:ZПS1L|#8OOCy^8y ɘ7x/үtx {Fʜ7 K&|y[&X"U vmn ax o@HM ,7|nT^\VI\7nypF K!?I;瓯|>_ۂ\z .0inO275XШc/4@g_?pkڣC0u 4oed`l'!)?F}4sYҐE~ƿCQ2?:s.0JhBoE_LI@տ`ݏ n~iI6FBEW|wʷQga$/h>uՏ SYw/5&2I'GrCo '[x(OɍvYq|w9C-zt 2W0s?K4ϲM,wZ:ӟkK+&z[ۓap]J(\S\"ަtFFjt1_ߏwȽZ74o,,#}s4Bo֋Yp3 h/o@3x&o.4{#xagQD7zgY7|S Wz' vD-0ަ> Jd콂MkܟLNӈF ii|%! ~+Ԑ]II!=Nڢ0,,aRz.hT7|^iJE Jh?z6M!m'wg;;L`SoWTW_ﲇ?Nus}B/=3XgOGE1lXx޴EP >}iAri1`DC_ x}M*^_|='4T>)Eѧ}n Iѧ~q 'yrܨ`4@Z~OmR>l_7l۷ BҶwTK[)+~h}PBF+AL2ɥK5#;OXjs=/S3!@V77Rq]I3O`(_ak_ Y:w2^EoՇoZ+~Mه -Ag8I^V9E`LaQSoVX?ݶrߩCc*熰C4/ۧŦX]lwA羷 (~\\?N|c I%8' Vhr_ @S, z4!?ցJK+{Ydo"J>`0_#0":!?D@i&|iX`_0>lCԿ8s3( U~ѿOoEdYn+/P_]E`/ܦVJcb­o' uR>?=^m<t4Y|GJ:=] 5vHN  (AǨJբ1@ 5J vYZpd6n=/kpfks`8Ng|?moͧS?Ḡ i)ߠ=xX|gV p Ձ"L?|&ޟsil,9;@q+*}WMCyV@߻퟇z@20ѨKwZxؾϏ"A(C5b =|w<`;6f`w7yx֨z(>Svo{՘3:3d_oH~,-}҆?o!#~sؿb U'xJ1 `qw܏x侎ck(T}cfSr˿ϱ&KnHsH@-܃RJqxeEu\yIw:~7uqSK/p,h @kj5C~&Ǐ}&z7ۯ":N=";_GQZ$=-{}Iъt9D%nҹ+Kh}O_Aɬ?~o3f^ t7 hҒAeb}^m=u>]!AB%,Ya?-gh$ku4-S~rŚa~|y"_ZqS]_ވg-3ߛJ/Low($4q`p?>_& B}$.arq#rG:Wp$OA ]e4$S7 &]|QF&^0Z%{3'F!f[ߩOӆUPo/Iez[pUiMs>>>~Z_S\l26oIzQ!zuA }>i-Xqg<,l#E_! U/QA@WdP8 T?9v%?3jkw6$mg1 -92ҕþr:q@E'7źOi\sv2׫lFJɂFOVpPIPon*S#<>͙q4}SNƴ!kb9ۉu:g'ì%e׉F+WHf}%r݄r~EX'׶pYh wM)6V2. 5Ter=g{_RâLD>WULtl}b,3zH P~-N{}qsldC 615a7mxp\CJ}퓭~COX4%|]8ӻj9˧TЧ],sbbh{'e 0堣oĦǴ[śy-E:\s' x{Go@j!L:/(L&[[j|CG&[YR}^.Rwu4ztÝuY]k' jo7w͔u#0fC ~LT5'D$`Q4QPr̅"'%3` &>nüʇ#r'Kmhd&o,:1Gu} =7k%\|O^ϭ>Y|.Sw$+(\W&({m0~J42|W5}IeuƥqdL]g]|Q@cM5Cw*2ioID `2}[87u2 ^Z_0Ȩ޽~S˧opb[8w#xO\='Z[A%Q:“ N DD#[2cG#7LZ2ǔuœב2}-CHD }7si,8~M M{z`-M 'fm[~&NжK޶)$NTI{Id` *<UoF dfjwr@ֶB)Xs :Arӳ4هSw l*@ w# Fu(b: Zԕx~CtA!j2^8)Ϯ,QS4l5_9)o\>gBl`RӒ;xFM?S=DX!}&_t~R@nzʡC/}z THmpgH5x78uO\8LwYjZ#U$- 9_"SdV]!Gn}DmN"7˯)wdQ%%J]HkU<;<OΥ=#:Do];W)wAyG~O'MJh7#4˷Z?O?qrO%lhl k@2] 9`_TZ}avF&7~s^guDu祗/ >IcHM&@n i Ǒ$pZt`fq=gH}6ևY0_m,[.q)k_dn#$b<9;ZXOZP}c٪] _J٪7qym8vҨ O:ut70#8JMmJI&D(JfXql?@0%Ӥ!  _W89j kTh`{A!X=o_v4gv(v RbM#Tk~~ 6͂NպT[_ A/mTJ(;${MBլ4Kh* 4Ywibl7i"녘N2x- m jBe٤M,v?CyFn'Gq˚_Ylw,1煖/M:."}owk#-4|>0|_6|ߒtD?YqܛNwf^iBo48Ü;h@L ߍi4 zLAj& oA-CW>ލwP-X4NBZ'ӵM.C4pY9"ȂFp׵}\,=}R.&p$*%?>g3{x 85~+bK$2A7xc@( }>}m9`p@EM`ڿUڥe52Me>`~bȅK~w/Lϓ,[ s 3#?0}@[xJض(2lTvs5~Q89;ڰ QlApQR#ANq'`j%W}Kk X+ڗ:: Iw@)^򧦰 ă'7N-N<'rwd1m7~F*2d:xoi_KQQt0m`2X4eb^J0U'PרDIUs%*4=1u o07B2-AN_/ HwS4BCI>}w% seĸ Vq6L@6cX,("<њ_OqenׇYz-.ԧ 3:;ك?L=NQ# xX2[l&`i8&į Ġ ͑M ^gd 'E B?F)/ c#Kj#*/0.Fh=Vv 3:W8A܅1#b543~woX kbdɓ~[WEqD7,XcGa/񔾋_KrrJ.xsQUDDžC#U 30`v_}}|5=ݿaT֙FH_%8)9u`'0e۟m4EF頽G?ǰ.R9L,?7<onM2K`#C#D(';~~| %Ch$ 6f>Sw6[q&Oa=]?=2FTt$/"_V#kW=_|ȀeHnH@t7/4=7W4xȿכal>.ց#=p#ON/eXetZ54d|S $zqk8hk&-"@+gGFtb0J}MkzzKk2rhPG>3_OlD0"фդ:#Jan=+2BrMˠdp@i$tEVOC̗#ˍYZT۵wRݔrpI(1 _b-xzX1)Z/ė.LF^ڿ9o?w[)9t[z^Rtrb:h|MzhN|"_C=c N;ϭ,pA)!{#M9it/7lY%<^S~: DR:wCx߉{MzQ%)SFE;rڔ8%7 QK6УiNn`W'yV+ԌM t~;}ff5}AOszq-uYBLe0F@Hl(H4|*rCG)ʙ!^`P/xD(#^l|^A U'ݬsT3}wWta]4e:e!GN;P:;)`*ufcڝ(qTX^]?]#r CpMݜAStwCx6;6>tVp%]*<(k=o=S؈Ly*:?O'5iZ?򥉫S})H15 M4ݗi_;/2t_?1NS*8. ә \"C^=_!VK~z%/rupưѧ7nS 5ql*cܤNmfs(BY4>Rt3<;3C_\uS h~C&t˩&N|hoƄv"|QªKaAޫjI T[1tyovhtkܚeU go߱ "GKPQ)BYQyF<* lKeF$HGqV~_UkuWǷ^BMl3=άMT0l`2r#|(*[cm(4lK^L(JD0yz$|cw }$Ё a!~fjcIvV77!5;BPW_iGn]`M".Q)Ԝehb\߱zi⁒뛦ћ{7H?Nj' ؍zI߯`;J[kFWߞ/&I7x4/ܖ/r4~^H:el"L'jⰋNSmCַ36CWQ7phҐ|gUkxGu w"Vr+݇c#NLک+~sXmIkPtLy=H }7nuIE+Wo򺄖rcʑc:Ze?g՝!<4%uqsCؠ#:\ܷ)~USF'! C'h4GOYE.coh]X}߿whch.݀ܓP_![JQ*({`}ƃeA6O=PJ ij|J ^8Tm<Y`D!j2uRG%2ElC) '0bU#r׻uQ4<\ …J?-|(gNACLJ+Ǿ~/h/I ]`SI*NPB?tOg~g?E)v|1a~6j$Cr|hjƍR6 o훞?̠יd=֟5:֜{S?Cγa?@d6WRC;Y7x<y>:LA.p)M/޿)GcSIUG|pgLkL; yE?Wܽ0 P-EB~=dF V@7e&6^1GA[A췈Gl̈ EJn=^>UvFDpHcvH5b՜FƋs7o1m=+J$Jm1vHx2oR \ړ(eͩt^d~=!*V7tWn,mR~YP,mWh&pM/ l\ZVݿ޳ SZ  0I܍ü&(6ll6Y5gY QeH2G%Q:Uau&$ޞ[@gхM[w EKCj7Kp_Ÿ^\.j(Z(cnj6)>oIek}T } Z'[k~{>pS4{1k^4`+`bmBX&XB 1]!c5⹂)sch߭G~1i9>@[Y|z s4LGf}4#&MQɚꡞsb(ZT>~ )h)$lц h ]S<ÿ|Zt[=f5-1(U|nL՛*Bn?njpi GPp %14./\TIo ) ;~SW_աOB8#V ?y`zil #VCML*7J#=MʩAZgz3:ԍ)`Q,0E<6+!`@)V a`/uF$4s xF|I FCzbco4Ҹ  pX tkbB1nDo3Dn~.PA3RD"~zMW1++Og;,ҋLgo;-W(+U+y!E4?kygBoounj,8LaI^ЉZr~nҢu$dI1>cQsiVm\QQPq3_gcO=A[){R쐽f~>ws;lXj)4 BG!fe;("D@gXK/ =?'X_IOֶmScE&`'SZ|fРB@;Š7ga87|Dnyy bl*df X/Oro@+OE #AcH}p>(+ B,uIE]xl(h'_ BC3kW5:7n.9Coe! ulΚCʧ1A迶,I݆S.~2`lu<84;jwU EI=L!> H Qؔ'w`w]JQ#_<=dib/|mziG"|: 6(;aaBW-pKx[f7?wCo ՏI'C a&W=`&h!0/z ml7cӮU=)itQ/XDcPop>t]n ^z/\tC1^8zuf+o]7nt=_%bAtJk-y /pL^?~%u)]@Xt+w|W(FӲ]>TŁc_R, ~32})GKiŷ/>f4gyzz&3:9u[W8I8__K'yD[+ cEw:Qc/hzQP$v0Y?nIid'#>qwsL"\[oUݠ("I4%lOaGـC.G قtg_-)Vpt!z_fgiWC0)_[0.7o-`?UNkn=kT{Tem֔.IW4{3Q5T%mv,^iheՄSg< 5 'c/\j]wTߝ۷tEn&`{5K!)D~o`#gy)U7aV$ MOϾ]~] LK;x!Ns?vlA:Mfdy2Ux5&fJe6t\'נz,<$|ђ}2_%p}%zew_iM al}`(Qo"9)JKzy_fpA Pp,"Ʒ=pqyvpSpI:Z'¯׀k^{FYp?s3QM@P5yWwx~s R ?/9ᰀeI:@C%G%|oͧ݃N+07Lc,ǃ F o_ij#|[}c&^/P)~]őq=>V7y8G%vEM3E[my5|H @+fxw/#㒍Əڨzp?6՞?8D rxDM!<|4L!/Կ=rslgo(@}w9MDi'___g o߾Gz\/?M7L.`WGoeM)$|܏׽}7MYs{59{}-~ft WUΜ sF+6J+{0%ѻ5 a@6]m$Uzf, v:V+Yo fg0 k:h=] 5: OW -,\gvM-#E:7M_meBL5k\"/;4[nJm '`_e\uqekgqjkw)8@:PlLN1=$]?h>6PC<Я<ϜsY0(KoӁc@IC29∺Z嗒iGSh7?wjU/ 5 K?Dx Z2V2j=QfOpsv2񻜱 ߛ+M3O |-׿}%GU3M? ^Wu@dd G%#ѵN~UZ=YmlA6=[C8EIρ鳌<4-WcB6*ɐkeWk3֙H~ %ϑ^~Sx? Hq$=>GϬ'a"*E4 hqHV)fʗrg-i}t-)458<#N }}Q 7cP[SF#Gεwh`{v5u3_k5_#DJ573LjtP뗶߰2\ QR:/-\ǩ!hˈGlN(Y2@)7y}pYJY/_ uZ2Wprl'쏇p*gobG-gM)"jh|ik >WCwQC+9Bz ipz=Sġf*<\$PXP, [hQt5oHt}^ظOs 蠯:.f6)eލND4sD1GߓW O֌( a7*ɤ1p4:`tZw\ov:ne:OC>Gx+Do-vI%GqE3D3FɧDILw@2"G䩾3k]yN>;PI!_e%hE-a2u>0OpdDQf>>}+޻U2 ?V[aK!L Uo:\UkCVA&:Ul!ґW1H$ ]4^%32 g*},-:&ROr;֙@Wz,gw~MkiMYEu RuJI4#֠Q|?]wVh٨ Hʹ >: !|^H zLOf'(J{MQ8|V\x9'13QCc{+QQ %J Q&ҙ',ua2Ut>>Jz女ViAjxQC =@@'쓺+}TK.Z[۹3Iʁ}(h^ O"^_2Dg?>6 A!2(|D}~/4o7H2ةZ9vL:%Cq9[Pe.İA$7W-]N#o`9fHrN O!%OpnU"ی"hڡjz֛jBp]OB4 nH]L̍N5Z:Bg93hXc |cYo$L1L-M> /M]zлݗo zci]>5$?SA9%|))цbS2KOab n d8|of `,D`=W"t;]nY4mY^\*I6҄3Pdsꑥ#'K-Koà(Fv M'hP' rmZMUD`".'鷥,*PC:ߡ  ~ݬ^z*p.0W=bX0-tWo;@+3J7mj)L@=@;. ysW{PcE=1m{QP~˟9[ѦG?dՖ( >W\@I*+NiR,5[ 65D`e)3̜:Z+ `)A H+c#h:?-iL>/P,=_<.Bx9 g%j#Çq/ 9㭰o5|Ǒ ˦)n~&B?tm,cm9-#, L Nk5wcTiR|QYS4P.3|bA!GhsOZSI@QlߑKm@|#(g0oOolgò ^Tj.U)1r<' *KFTߨzn"KH :X7 gڛH[w@QE3Dv#Caoηh8ޝ]qw"SB`G01zL فd?}ّxΧhgPp,~>8wCXY?(Mc/gJ7%Ih?ۢn0kHr!QA:R0Hc}[ ${[Z7.teSg3 v6N"yQQ%W?LY73l:۟=:+ɿ|j<){3tUC#P><4&i^?BrM4!ڥY4kz=RU'~VSԠֿߥ m$>:k7ly-@ ` h8)"k}7SC*~/*D˶IC2Sbc#NjFx;yI6<HaϪge=|RϐֿLt7؃dɩ@ 35)\1ZJ2 0UJFc@. 9?`,&jAz@?rp{3 N)nB7KS9EQ8)/N 0*S<(6"SB&#(hIš"笅pjg}Q-e8>Κ>OڟN?7W j_/jsTeI1"w"*ѷb|Z]|Zm즛kڛ/S!, zv1`~JCLHkNk5, !"' SȼIb*E*}i/?7=LE(R A1HԮ?DQ[v¿â4d3HyRu^I  7#M4w_yG Pe@vF}uE/p_N,i&q|3 HVNQ -qC7ntogo' $kcŔE_<^<&of[>pW.`B u1P΢_#VO/9߹]q !Snrv3 `ӖXv=(J u K:> LGP o/IokyzJYPZƩ\|ןǽĂ L)kOTF3Zy*WL,3qR,}o%b/&3?&}eqπVM˟KT5 < ~aqnxF wHӧX,$7 @yܯsC]Q_W4r>_?,)7; R4:p"QTxـ3;NDn`_!^<`R*pa ݹ_X `_ouӿ "oQbo|܀wך- [mYRbזݪ32~L'g)os9UT$"x)ok`DwӿnQkVN8+O/z9,h~MyjQěM{;4<oiכgAǮ|_Ao-n$M6ǻ/^7*t_._s'5(v/)/_^,]g!~m .z&yM2I0wLC߶wv!`߅PhÐFRe:L>N[M=VLe[ڀ6?*' MCѿ DсTY!3=g̲~-L}^o:?v~w*J~yf<̈ VG'?5=lûϾy5u{O8Ѱ]NGSnLK~lZ@yWƏ3m,}M>o τ8m$56Ń= ?q>?$;mtsSiT.no^N{ۯ>R7XϏo~ Рn/T, Ѽsa?4&x߻C*OyDPb?~6`®B񳴿2x}s950ϯl?LRW5ď7/5'`r =O?lM;Pys^86~TPM%mTJrK[_Wg CZA"N:5?)qb,Q6:QDҴDťbvVX$['#o1˺?_GME]1_x$sº׬ C.e;hgD] u.5 dڿ{}VI>a2~6dg9g翭Vm-vνn~jWݣi2Zqַ;Sf?)Q,ʼn;gޓ.|S'0>'0vX<~J 190x6~ UZP5UCy]_w r9'߿\` d𡃾A~&#md&7Zg.ՠ_tO]d<(ąr? y @?k! 씘:̊SD/ qa:q 0} 33d*ȓ`RJv(l<ʿibp Z'1>4)\dpG``_nـ,'8U'~,ⷖ)1˰DH4߯6p;S\}mgR^" qs5_ihaO7,Su7gqN(]L9S8< F^i>/PAŠgL=L@826wO@edh_?xůyx=i5]~?=[ @ ÝA-`Zzk5,]x`pX'0jnbpC[nB`^4w`\蘨$ce;N3e;Rzc+^#6Ox2='WSGJ xh*FԪ^C~HxU0k%g=9Fb~#:M~1r [/h >QțxR@/1fxk()Pz3Ͳ':2Pͧ!%Tt?~W߬e}S,xD]G]&&RZR@۞ ~)?s;D}N2Ҕ8ڶB3fB2mw!bĻW@JRp;mDQM2~I&d~{*8kϾWBk7yPgCE~zugD(BA8XKRbZo\hY.wBۯ#uOǝh$`A0`jxÑ#Êva .T: 'jߵ$eje/*[]0zas.0h H-2A/PS1:m:a5PRc'}_kMK◹S]g^z]_jw]B+% (R@Cjg[=MC2ҁ2!FS*}]%MK-q=GO*)O v Vb?K]s#>}|q?(¬b$Qh~`(Pg>=ALb~JﶯSP*ݏ/1?u;@=H+x$>_>l2PHWSuwv.:[/$uȠtEn0s,/8ssɊny|q,{S!ֻH͂p}ofm xqwxמ \G8x}B_p"'lV;p4Q6G/fWC. Y]u 6^AR wt~#`g4 31Mjpco[] i?[Rabj _ЇV}p!G)E .>Vn!5ֻNH1qD-c8ĚYj\O]fFJ4J$mn ?*?rCWUԤ俨 XĤf?TFm|BqJ^LI0-7K'o/LO!b<o3T*Մb/js!} *w-$m{yi@ׯטcŸtH&~ ;+N\G3Ƀ6>eo`m?׳T RS /˱R4lF2s!J7/C7 BxK5Xwy+{\~$_ͤ ^@Ʋrpp5 0| Xq=l@m %;g aدsVi<3.0`852WW:`^[ iY!)S oUjM`0k \*~D6?X?>S:7g)9#%| Qz{V?ijHhm1k5]M4PoB[,3ҁ #m`#,# T<+UgFC%C({!>ڤTS?o`8ӛ qߧHŽeLVuCFO0T QR؄Ɠ=k3p,G._,sWU^f~FLdrc|4pBjoYN4уiK-A4kcqvbǒt ĝStd LG:JuKLyKnJFAi[x4Ѓ&;Uf -}9Z4^'@¯)BMOcnvF^3_~='-dH<2`g}?m*bggT\ݟ rM͙T`Ix'~iCE5q4 ҨZkgbĿ4E#- e7 m)|< :ԝsC\V/iqv>/Nt0᯴ݖe83(]\V XzrN>} R'ϱvS_js'j W~4c͚/ ?kVu6 yDW3#E&Jg)\ypi |htY4I _%=8堉X4ߓcロ!Wu^1]4lbU̡Pn@Qn8P:$Q TQ#ƵHvw=/Jٺ[1PEs{SrUĐjZ*Rd&KQ>u- 9dgl)M$Onc\ z7""U)n~^H5~ S?U$~+0,CRi2T7 M)Y~0DX?%7+MdC r2g4"PQkֳ\ :?oxUnt!8+G*HмoJ1_:znLхCC8z}N BP &a3iӺI(t&|TBOd(/@5x1<2 cQJCn]m?*#߽tKBWl?cLl!Ќ=?tFg:R@ҩ#Zb\0.1|;a*vӪhge?. deq2u_a|˩)\ ( 5rLm+e29aw=?s1cs㏏VSR~}1\| C"ZiS!,Zϑy~l?#疮q؅gN:=}ë tkxh $LZ0NL&:e: .S^[/ pno(:h@Yj{:t.'aO?0>~z'.<#-_('1ݟ*N\Ca3hbJ Z1u򮥉ߤcAznu|r%|e duc͚͟ӛ8OTzˊ beŬҙqQ-ҡE։ү :iϓ&1_¢'}Wa 7!Wd::3 HQn~=?b48MLuXT.#)/:鳧鼀iyäf:,"`vS[CqAV)~:TÑL~Aq5?Jp=>|[锚ҭJ}{I+`po .җJF'UZ}U6_Nф7@!0]ux*A'}S EgK}&݀6k^G#~TtQ>l?ǿ9&C9o=sk:D]cnN_0)cM#m6#wvQ:XS7AE݅ Kw?i% 1TbI6UG~=&GV, *Z閊{x#'2@$׏<%wPXh M`ciTȲp\>\A;M# 5 2.Sd5\&Tuª)uC?(=uq[H j(g;V ~[?('kb/ 8dpᏵzXw ~묦ZY"34E3-]lD|f .`3kH6ȃ_*f?*8є '~rNn}`غ 7+voi$co쇺O,[u?bv2v*bm݉&2< nHIZ;, Z`+sݫ}JqFx >5ڇcjf% _`=H `327[ &{bөce=6d >;ڡ8»ޟGBCݶoBJR Jq9LUϙ[\%dqoX%f'~UoAHW _9̓X1Qv)@ W5 W7wYO 9_];ҷ>gÑIlH$]u*Fdc嵔j2Y*?f~C yby|rX2xY繥׫)~]_aQ]7Bv;dzOc|sx|'u>ݟk7Ey@ HBdZan(r_Cd[iCx18bpN KRB6=a?$-q7ckt<OX`kkk}g}D.dEMK70gr1%zHag02G_6н]Dҹ=Xj>?_WSTLf? g)籤lYi326zB95& S j#RV3U {T,l:J` [/RMW<*f[dr۪Xj8.~l?w:Epon1\QM y?>!-q x˵7Nc]T}o'[ez4X0ȷ?DJ7E@p|z͢F&yf9S:?WRxB<仈\t`5ZL:p)8*s*JMf؀0-elySMKΟ0>v?|W||ISaQ?CO1VajƏYSf*OwᏥw q=Y;Q$AoL;,t>?k 3S vcaD^ ݼϳ65|_*84Zm/~2EcqYF OXo.&?I)!a8&O3B8(RSﴇM{7z㢇tJe i!q!#vAmm"|lsvA1Xku]@4UZF-ۜ Y߸n?v}QNm14mUpYY//eG*x6S4P|@:S炥.iY=7zT 7=nqnn-` Gb>S3W!RPa 4zƎ;.D)a6ƺm> 3~5./@ Ry g}EI5;`ݴ/-oU^i -OҗKwu:hGء;AIÎȏ.*?Aۄi_Dm8Á":/'aE2 :zz_zÓ cfS5D~U6pI%P0f4ᏚK ?@CV]4 v)`{wUxԧ8)ME-E7pyڇ6n>?yYYf.\v:MC1{wMd r.uq v][OE7<|OERw&\f`Y$|RL$R_ ؍ "~G,Oyړ험s{^ ]J@E37";w79&dN1vU?~n࿄o bQR9Vg/;0IDC''`Y[IT2)fu ")䴦'X- \U] l ( .Ӝp-654OOZ*NO ?6 @sLNj[ c{Uc!xQrSg##BvLCFܬ]~P|.ʋPMۚ ! MMPdcqrUf`qIfג TB*|f  z/"jc AB(&d :v7u1Xll| G+Mt-l e0}_ 1HD?'i@և}Lk5p;s?T@4o@PiAP;H20n#:d:(ט'k*6T"1/?S9ŷUfcEUIx伊(mh>s5Kײ^m>?᳝^L܃&Q۞$@4c@H|ǚL:I߳Mg=a}+@e=` ,n! Q$B˿c([K(@EBW-O`[it~2*{W]N o mdu6X A 3(\5: ,<:G'*ܝ.NC᠋k K=`>n?_jMy{c'>;Luszd= !>+VD*~d]އPGP*V<:; H4w2J Ũ9>0ޡyeD:y͖N`t͏LNJb Vi5.?:u6D=H`i]3锨_Œj S׸bqrͥWh "~d1x0hp=tp2E韧f:zi_/?͋6_cc9xc b;c7v|,Gv;c'r{kO2ufO ~3防EM;}&+_M͠4pxb_2Vњ&:@~ H o*ܑ%(K :7 ?pސka51Kcq dK48.?`/b!? NqX?+Ǭ}5!hiOm`:U ^&*va7 J4~bJFڠe>ۙe-R=X;Is4uT;SlSٽ<:@]7J&ݯ~Y?0R1 hpnV|dB3(Ϗ/}fy-/³_'  qy _c& Z^/)yY dޣ0!Dxɴ&z0ʭVB(\> .zkt@yԡ`_rw?78IG#(Yg!Ÿ2! Cn_Rp|]g]XloV{2cY2|~?V 5G3t[ĆCݥ}٨-y-R$CP9]x |PնX'gĴ 2NE`?||>_R3 r C/:!В֯gs=MP7'd` E[({wn* `c4fiLE7Xx>G#ﮩKWǵg`R@g3) ,6BU,F\kHG ^Ow:~4Os|_]1$V#TG~FfdF bV0n`}jz? @AsjU5YZ!?-\:^ u m'Yn: 2,[4Ebc~Fi82t{ފ>| s6N9_țHGM=ooB#x<8EGޫ J=;Pso E%R%}K} _>}׿/TNl ~sncO:? 9=_M4SY5ޟ?qM ʶY V|7`Vi^:O.B$}@f7T8)'LU raWEe||@Ax1 ߊ!/YQ~%,NOtH击Lt=p/g:shχWoWt&5í< c_5+ @5o?e{0~#[g;،/\?P OSA3ٙߗ^xƏ7\\9#4<&`qT?yBLso vKUlm.?W4ʚů& П3peWS 6CT("jxb rF5cIꎄ耪1Qu58nzSP4jeLB4CGH׃{:{ef:k #_?#I^=tE/0eAZSvr=@w.x$^?.љ֪&|'h o3"uXw:L'#:nRDE)QxOA8p雦 Ǧ^R=ߓ{G.lxNЋ m翧hG@kM+^q9S:v4kㆠeQDaim &vEPBLWG &zFt}??gJC k,M=.i=jlÐxOYh׳`: LA]0Z6?VټKD(ǥa_k!2܋.-@'csT৚=a||FX;yN՛U#e0er?fZȱP!DQEK<_oLg`K&sy)O1sSVL;+nz<9n0++qu>+L MWQ$?䆢~V[dϨgTzBK7t,acH8/H ]L=wX|/}訞l?& 71ҧv G3_oٗ/й=8:]tJ !#B gRUWܳ{ rD|S(e)P%M{ܳMzG; ؋>kAO29>]ߙYz\qHM1J-z\TL-g@b&1*}YzXռOF?_6PDS_bpy-jtl`L^v 7g n?,\#$n_-t;0Nt iߤOڸ+6Q^[O7Y r<1,O0z,9.Kٖ忧f@ZMaKTi*蓸nl:h.O<Ԟe `?eb1?΅XYǙH||s7O}jGoB UQjU,{>@uy!}k=1 ZO*z@_ӕjφ?2z/}`O,ƿ׉w s7 3߀XOzzʒkG*bql?j\g WgWc̋RXp %?c':lr\(5 yKLΟ~}r؝7?t G6# S~ Xz8TѮRYטl|=u*dɟ9rN [عy z#|7my2,unD-?LYM#ԃ*+&8c~N4LEB?-3^yk|6EӅwxW 05%bcRWwM.bw=yjcuT'~񭳞[`Z=4JQ )C@d~'BĆ**]|:ֽ.ĵWQk+YVNuJbSƲIDPӿ?t?2GdpL @63AڥD"k)tDNh"~~qr>Oc4'c Nʸ!wxNLh;Au< kz-|V#ht&t.&oh;ZՠVmMP ~#'b!ͣ{'94FI_؝ @aitlLOȏ;tNLoq}+7&,@^Iխ[sv53'4+0V2'}׮W(^c*kkk$@g @ns(gSAW;I=FyEǟx%&tsqQ7P^j}W逞a*!j7xD^]at481@3;s _{";oOϻSqzA_J0l1t7J澶;m h_FDzmM5jλyJv蝭NtbJ}h)Nskp~ddI1Yr@uIA6Zf4-(ς87Y5FfÎBr.r\1uYk.R1Ao5珞ifMT "W|T?>`B%W/zOW4'FjB7N@@" ѽR" Od9DKJ/ 7'f7"ݿAm,[|_s쯐9 NHf}1TB< p5 9gy1#AhyTUs0'7s헟3Y$Oǵiat[nUp0mijc|gHPf+,\X اA7}O9Ӷ2R/@A Q  82I< Ѥ)%=kv "j?RAހr.WPAdi`7k&R\`UpYNyӎFq z5GonwUx4=Rֵ*ZnzMJ=EtϥsY:{N_>0U! Ɨ4oN]fAO3j̆,' @1YGÖ~k:SMkt|{§?RYb zjlJ [͡xI#x/]U8jLl"S=A.g;7[X}C֛ Ps=|1z:G+bƞE H~12ZRZt??x_ _+_")o<螉J"Į"QG\Q$גcݝ>0r=&W$1!$PUMڥ<;x94]Qazӵ˲^r=1OziN? g߾k \ ^O,(j>ŭg-aNA#ud~|eك<,x0nw r co{21aXG]>Q\ڳ]doKpx=Nvmmx" Pw&(b~$FDcC^Ajj;{Ҕܬ{)s_?߃84|h/LYӇm&Y rEJ=rvKw? XQv.=(ag3MB>ؿGn|a]?*_W~ˌx0Ћڻo 5Ou -Hm-cd$^_%<1H.?A-*~;ԈPOk.FД:0%o߼UD*Nw_['4GupvSju يC0QT%J2yK=S&(V y%yC}z{& ;~W-Z { T{1чsۑ4F㟣!OUc|=Wg2Ʉ9'Vk;<~"O؛j"MXu,O`X3BPױ_>0t-kz |p&7>?.`_l)܃4tkYWmGşF^7h|\k%2D'ɳe^8IBc~܏ =g, _W8;(Ss/J33Ӹ_07jNtV28k(Mk<>sz +ŸQoW^]ܨ'AT43^nr`  iylv @*O U~K&Χ[5Xnz.^O,=H./BR-%ph#^Q%;(;pN5DP#4σt8=z֏A9iz-"5t~X~ E^qJ°)Ե&rAu}o"~NH vf2&a䓾|%s >(z.A!Ư67iݼZ8DL:Z9SI%/ہoB]_1jI_wA]lv#4$E@Zk~nKEIhӟaCla2uc1sP7GJ)~LiKjhZl~sP5OpMxHigo9؃&@a,ǂ0OƦvӋ&UKAXgiSI@ʡ Pcן?}`nLΆnaU~΃A8 KW6ҁم܉Ԓq[/5h^~jG,MS7 貯MЄY1"j INOQK"aѩ%i}M7~,8jɪ1E^vt먔 5ӓt@!fADžy4).|~]2~D?S4&NqGn)DTpbPک @לsTgJNq u8"&f\p\>2*ʀ{9jah(ZR 3I>f_ɸewCNMm$}%T4hY-j璾 Y-)o+/z۶|*7L|ŸV=Y.aS\HT0Є)7J *(q.vFp<0_{: ;m*/Uzf^%6_%h?䦨G_KujYGQf ?s\j@ߌb񃊇'sEd(TePatM`c()UVI`^Sz?5B2-| FfȟQxSC"p/+oxïE`} `@s+xȩ)N& 9<r?PS?$LΓ~ʅgDܔ.bwuRy @Fщ:Ci٭wϧi$MUG﹞y@!2YH`G}.~:0it}6`B :(%#K(tXV-!xICpAY%:.623 AV3KwqB<2ԶjFhsAZnc &ˆCt1 UL0FD\5!E|6( k ;_-\cpPBVG(f Z- .!t^"*,7ۯl}\O@ 62rz&tSz=0?}K: ~Ǹ)Op7|¥5;<{D1 !CBT (iabV w: fj SMzˏk:蝕Ke8\u2At4ߑ{O,pj[ھT 8<%ړ>zvֿ"L#(sbAz~QXk=R1ARW1Lg'u4PpB>Hؚg|؉*?$*Y3O #tfYW-t/Q;%a[bX|#DC4př; = hjR}_a{jA & Vڿyk_ESC]fD<>7$X`ُ%M@ϻXNɶ4XOiOKs؛BBP nn"ny $FNLC ^:`L =@`b[, ?g=wWjԅ/hoB'i'.zOe<-Oв_X]$<n8}]OQ"7@égNP)~7j7|tjUH'.|?` E$g*N((|2 ՘T770/nLt7i`~}iECLK?b|iWid9"?A@΄ lyw@x$!+_J_dS7Pk{k(`(Nv5#(ݷXkr? ?)b{Ml}.+g+1m1-c䖙:n{4{TF> xw Q}YR@{1&Wށ4=n)mCiNgwl4rҨzFZiR&rǰSBGqx 60qP,(XxV_an-Qhub>ן5Ѿ)&"Z3j 𧲰b*Qvt@I@O_5CDejx%02sn9]-Cv L}T`z<蠝 YEBm(פ+t&r @: nnOXS3fJyj ~4>@!H?φ]sj5`"\-0O:h\/,nL484 Yka 91AOӲl.ϘNa/\#Zo̫/ !߼qHl>z|1'O(m?(./Ec.p@]nh0TFNA' 2S7i+:hL ߾s0R۪X,2{d:c]Xbw.8ԽLġI26B0%3@kh^{}bo0Q|j#?NN0bGWqC]NGGX,Aq롟'zvAUHd>Msi :A iYgǢyX''rʵ~f:h@0Mgc:h)we6MX[~F:贁ir_ h:b A Xd:EA3D3A'hgƺM;fpR# sy*u34zB k}.I8OV@ TVwS>^'_oP_A"gIF]]xӼThFp[AMX>[=\B <\/rw aY0Ao_6rBzl} ܒ:{'?D?a6,-'FC ݖ'zt/ 2 @$dQ5 OJkyPC~[AH4JvǒCHEÑ/ߝ:;S|ia_5Q?>i\tЪ ñ8\m9`bi,?3t^kRx5Ui-NDѠbNH x~f:!2s?sSbӮR-C7A  ;赋@FIcugB,9 pъ,*' i{(LNJ}LM`K4hRN?໢6 Ӕ0iIݛ|;G~qYh'gRv#nZE]̫|:U dB~($If=HrBÉwO{B @L*#U"7YYf:N+Ou7VK'-DO4 w@8a̿- x#R^\,_5rQ٭&@ٵ4 8Wh+%@lHj@p~O ]KYiM,:j*Ï )yDTs0=ff +!l:ANBB?AKr韊`a}&ݽ'¼2u&e~|O('u2X/d <42 9dWLRoui߳{+i}ΧNAqY ׬05F\O@5pߣ2X?Bh1 P Є sH~O]}.S"8頧HO5Ni5 :/:SZOhIfA3WjOWR_fI{3/|*T,uS\lxT kj w[KAUPC; UuC^QGLT7dKE"fp$N0i`#29h7o%&䂲U=?:>#R8U*kjl]"YOWHqobD ĵܜPߗq@ۯ*w{\߽UPI!^!.WZmuy]>[Y>v&`_NXG%޲(_D bC\4&l4vzОaRZ^%gEȇu6povqVWuB~VQAwc ?S^?uQج絠eM=yKX4p M2~Z_)Du?d EאZy'XY_mVl@e qa)HqHH6Qz~ŸɫЫ>LsQ?{tTPef} @!H.`)IijGy:9|*l2=r- ?˿:8-Jtf4-QD1I/8py4VKDќ=4nW]~9Wyn! :}}w.ߧ )("),Z"s{m֯ԡx~IO:1aۗŌ] :a/yر^_ƭ6g| 1xpzn Bo/r`5daOa5y0z~y0[z?Zojhy0E`:$pgنqWN?NQmu ԾG֧ D^[F-W?9,TO|XBYWPǨZN7O<#O,#AL^'u^sƛ}r,zs̃O]Up[s9[㵳<(:gmqd6VJGgX N룰En^L>x&jz{_ vX֛ ֐J?#5_/&Qw# x7xϘ8@d|;3Etz=d}'~,xb}eXsZK(kZ(4~*/ymYz.FbI>'iIU?} )iʓ9MgX/ ?N1?W10`ܽ|&v\65g5?LAp kIBZRSiƛM2p~W2[6~S99:|s_&FVV5QH*n\!ëkn8|:ǯAi^12(#f͗wi10{ (ZM%之:6|G2v _dwsZŖ8Q fyT .pfA =8&:ٟqy b3R^ZYڦ(.loy18pt{. |0{>Gj`q؞&FU}*L*B(/cz0ʿJC&:Z܌M/_gm@8-?f?· . \ |c%)G16u\bx'ib0/MUu>HyShQ ?nyܐukw*.45utj7XU k5 \0{ymMKj)p 149MhCW3gmxw 8Fd@j1O5;jҘG`>/cGrl94 'NPN>@댿_IӯM}eTJ%g詸$`xrn=7:Wmz?&XI*|.6JZPj4 O2\8'hZhekGXBnn)i^k_7+i-,$٫fi+IJb=7~9 z&S^k'yzњ0icMWJLt:Vz7\yoy;]bT<5 ӈ;7Ξ•מ z]; VrҜH8kFp/Zij<d֙EkPN~R5,kjp Nœ>6sDz<<3fk{P_>q'ʋ'r=k{t۹7pqF/=Dp@1PA) h)t1%oWM~eR{gr9)0>[;_)c VY8uDq}x]7z&x2j@/&@̋Vkb_nut ok!A1 j=or⟏«9fqA *gK[{{%,2vUX$cNG]2!l)5RBWؚڞ]wtF`Z6}bŹb{qˆ&:X3TDпHylQ>_sDA:4÷qw6ma(h$FqsW H/טI_ceXΟl픧+M ]/٠'fZs,Vmٕ.5-i;`_aAlk^?2X7E iڞa&w/"8ʗ%r6 &a<}qvrb (X; VSM%Z ^ze=_J\?g,+ryPjÊW;kA0焃_=_dVZǓkHUnj~_πkT8Xhִ|#10ښis\l?J>v+r/z]7AL;vGoU3^dh-<L?8igUhgٹ=nM='e~SQ!SbY´Y(1!fw)6qeX!> uT{iu|r*1L:|~V2eJQxS=5k#}_JN3aE}%]`=SM*|2 dXחzht~4jR|=B_ 6?ׂ^35_{kzF6=7>g;"HDt`vDC1 hBKB"g'lL #k!dͩRsw^l/6O-skZqg\e{^ïClpi+/#n`QWΏk$K:3$(5+ýqli؈'=ՑzQW}U6;߯ihtZ+N}~t}]h;7A=a~!1z xy|sjٰa0tU]y/n__IYPoʺ? nƖ= {+!fi}w5aar7~ԬiVOˆM7pQ7eyT}JC:"MDÒ ܦUgTſU+ڒoޤh߾GЀs8M2Aa>QM Wa1:$-t=(_25؁iԑHbPv}':P3p8No55'˴o/ϱ|b)^b2-'(&RrLeg X*$&|n1EZq*L@3ip5Cz{s~-_(& 4up'yw`7>5*$.H1&`b3t !)nb?'23!୒;3uiOQ..?v#St)'oK-t)N"Pzk ڗ8Wo6EmVL2m,+g j} H. #<1zaT;ك< F9%md9iz^i9Jݔy9dJJ HQ/b0M6Ă"1"s)hB'52>׻h_nЮgmڣ-~:0>bſRνghMSΊa_UjFF#Ih"~ Q ^q~|HhmD(s쎷#gܞmohb󄡦lqC~K۲\ y?fNx?cy?ea:[vƜ4\NYiĿP {]0H5+V]0߀h(<|\쿸1ˬa@uebS0PU _se{w>?tP^ѨKݤD,]70Ŕ-1Xb麳22b&mQޜ5ƫ_|M*w}3Uә5U+JƅIvŏl̓<f`t;6~4qeĭbjJkPK!62l/ '=0Ka`!m84~/o?p?T߿/pȗGx ɐf0`/t;wèF/`w>XT~]6z;EܞMU{С [F3o#`{K@QEs0EzڲVW ||617]Y/}p"6ZFF,i.Tjpk֯{Bz^5wa~X;fmP=}Z#.φ>yw):lS>Dz7}"vC -\5)b{΍@.@p0OO-NBj ͎ۡqJˎRҁA`Y<ްL:Īˎ@\jQCrvDWH0mG`P>,Z> @14iLeUg jӅ/5NG8 _E\}iTX+i׊:j2kz= hl(0:(IߔgA(tm)Zy H[/O:Cw?/d#Ïj$\5]_ďfֱ>s\ap |7V̿ ۬}Mۭ?..?&* GNUCSY‚% WHn9"y݄QoTqԥNyE՜x*al*ȈAtRxz(FF{Ǖ2l;!E*ΜvGuN:ͬJ[Di5 ZΘ"z߁Ŷ T#I[:sұ:Yx~@+Pܝ_#pϫY[w%_3AU[3Vat}}hԠ_4&4p^Gx1k` ~}Zј)\;#(iJXe`[C~m~rq{9] B/`$2! |_qe4O@wMd~u m^lʡZ8F)\,uwX.͘!O/ZI{e.2]^t֠gQ^+a% i!!zhSM"S_6~"mƝËRdŠDn E*ucnr ccUL-PHՂ:fwxyڗu+ _RQ[2^uA-^+`,P64S>4p.e|^:g&yW\ 3N'$`wTy~Ux${B$wl+])UtpӻrIŭt㠋V2a%錈Z&h㗨`N;!oʞѵഔa>sE}KK+ ?E+ ?; Y幧{'f{8'4t/hß(g!r.J^]?姮Yۓ2.`@.ϟ9A|ܑ+߬NV ?Q&~MDC{kt>q *`@E\yus|̯n%]T:n}w."a S;n~kY)Wv=\]3I{=HN~͇S7JһYhO"WʆzRz*~mꖏ _" R**]'~E~㏳܋LW9E~P,~x||?~)#gtM#dҜOOW^>LUOvΠUg-(>mkk \Qܿ, *'oP( /1`i0rJsJx0O/ b-k]~:vBxO:vvUSaQqaLA3Tz/nh$r#1Nm`e4~yfEi%M{ݮ7PM3C[;\/ǣfxXB!"GiaD]`mo*d_s!p>. '9 SۨSZJJ-7G4 a=vw|Z#jbJrs`*X.߾XuؿuM(?Mr<\x$ J~Xn< xy[}s&nGMq\k֧>x_6Îkpb/qԕcgU`9aLCz% ^7E"9<Gi\^滙z}Κ31`xش/}_ra<|&u@k`ҵlro)p~pɛe$okG+}J1XH:fx ӿBv8;y ?Tﲞ3g>h3PJ ?ci¬ç4A @5'[iTRLXǣyL~ЬJjn/#氮g?bY{y<-K !WkX Iu 9'emU}L>uz-kH3:?8$=s@?<_E[ۋGP4f]7a̢8|O>pf9^c E7}?i] 7 ,> ug; % Qdʃix+ O\?lc5"*)k)}sxvLY?lk]TO׏~9%E, HC L"s +&@8. ؏I:~_2quXPs~'l{|;>OrwEӐAخp.Ӿ$#Od¯5HRА/vZoof㿊T/3V?:7jxޯ 7uʭ~~UrY(B*D/b6G̴&wAxY?Ru*d0h~Kt f*~%_Er;б!Q I] w V4]{F.E>V CjIH-Ҟ.j_v&efm?H0䟺6Y.rEaHuKgeK4 lI࡙?8K ^/)1 98uE~MB8MCۢI(t8!' )%V 7VŔWH1-j}f ~ Be0{R;D/Nu(z/mLMovN CSx.F0DdjEj8z/wEQ AkG/ yD~_U9?a~9RS\a gz:rv?ai״.ϲ뫱piݳ!`_Ia\=;4Ѽh=䝊gBɓH =H,ws/J첐"h^~dg>*Irw)ƺUo'h@ 9ɩPXaX:0PT7|^id!-ք&^TPDP) -\EX,p]?oty}=O{h\,=>k۞TyK"MPb=Mx~M|~. s1|њ*`:OO+~ӂ.%C5UUy=_C?D*&!z_5)py2Juu|AmCƂ,ʙY >fN|,,Eac̪p⠷aQl_,ЬhX-tK7;2C$@؎pOiR98. |0u$>m}AGhS*:gvTxÝf-R*Ԁ$O7bg#&CO?eKr3Y[φ}\v{YGQ+Gkom [*?]V6Yx8Iz_q?X#f2෫/=J[$9t'4~4T_ ,9~!+,&UxQ׿L2p(gmS+xc5#L9O| V)]ϾsW+[3chXLŊu5sW__ׯYou3~Eg|fF,7P4Wh#\)~f%WMq#%a^?k\TApkS@ F4IϊgϢ ,ӳIunVhP{rx;|'"Y:qm>k>|G1kGFtω`߻3o =g2XD16}Y_,p.TͯPYׯ aj}B@_+3=dC  8(&%Q1Ut5Ї4Q%][3K(v[&͋vhjΚ\{E!ݽ>pO gz `G3LyűWPY~1ƤXȧP=?6?I]qc]]0Ji{sZX wK[.2O> 7`@k9O>95 MSZy?n}oPlہ,4?^6bUE袯xMnpD2_Ź9ZwfWתB=6{WťW3umnh%3RT*O?Mr8 gtO~{Egcsy9W?ӓ_c>_5~{_%SC)×A ivqj?j{${Ϭ Q1VG sEM_:,3ߛ"zx7=4ym\~=}^%Up;n-LKggͯGD񴂺IhIQve&hO.zת>@u(#v8%&,y_dS6Nu\jbOWӽwXr?pm3uqw~ǽ _ߜڿ9!Pj0Z55*p{x2 Y 1$;QI[~})n+ 1l!L6׻0ؿK3~zv̏u}ág4Օԋᤘ,|ӏ~o&Rz42UmpX{`"rwߑ-{R 6q|U//)ISXs `5VOOZ泰rD^?@:)YC9=#}QO*hxO 3ߓJ/yi=UܖQ-g q*X?ܣ[@~g羂 oHJI9Y?308'|G:i'aD2~NɨKw878;NDל' (+w<3pHlN3b7]\Ummg*zڰY bw˂pٳvYi*OsQd RaOO>ͺ '9gg1ųDH}Ow>>$F*~_#W (@ E{QwmcQRg;Ӭ/90'O* Hf>𡐫˷+r=U"][^ h wMD3f^GP<|RAG9}y2FB\~|D&{uQ {bf3KO5H4 U{?g= ?!2nΔlV3f7j!  tpqD3"4U'VhOX Lf^x?R@?uPD' ,a?^E&:w7/Nt2?”: jm*٦EWω獲@c:W" ZL+R㗄C{UeC2N g\ qTkH,`gpMEPC% XtID?EqV:m3rk*$jzhA2~ޙN/,`EVu RC[-KP`t{6YhqZ\p$RTR[<'ɶD+v WTB}m~={K%;^RK}֫RC ; vlҏOm]:]Q3 rf~nԛBV;xOc.{}P׷;A߯KE=Ư_Ϊ+z#߼!%l|b4~<. za~CJ'2 r{ئBA*H|.zH4}=-?'c=g }}٢: HډvxJR{ k%Q01v='Bpp絹t_zI$> gg)Xoj@?CD`tWEKr5bHy@rQPR-$AŽͅT9\8dyύp^ԈPIҾtOLek୞_'T9hq0H>><) _PBW=88C F¿?w?J*}Bƥ^$u̯VNZ\|6rh%h_WC}w%̘Lo~`KMPUAr~z|R?KSIB#-z6 &r[H ?AJl ξn4`o`/󺍥a3mjOoDnr*lHC $@g&VCj!kgMן t$멣< VZ)jLΥyc(4̋N/sG_A2/ZiEIv7OU:VcPIM ERvRERx} /}*w/o/Zi>GDt9AΦ=^T^@Nl;i\Mq IquV {nÖDZ&l=6P890=N }^ub{n[hqNv]ip_:=L=o5\Lo )x V5|\/oq)"3eR2LguwTQu3f\\E/]μYb| -m_tQu i^(I`g}ci,Zh^{o`k؁*$Qf'z2lE/Mvu|_p5|86Y QI& -E[c(Lƃ{=luDK3u|K@fGH뽐`,r~7P] 82輎ߜtDYH@h5sѷƂY-4b|"{(TϽ";hV:` Il7 oyRO$|w\PۇmI(3%t0Njx.yh_zz,$ QQO-RYQ8A*aX9K[M>Swy` o:ώ @!E1_Fh TSdpw|LugG,Y4"4ZD,o _79Cl/& :^l w2uF),۲ Lȟ\4JC+T&-OO i0_[SM"W򏘰GG33rZ2# i#-lM_fQ JOuL*%KgEN܅߳Aq(h[[DG_=n/ ??ΞSmݝ]܋JT:^ݴ ֛)>8Xr9> 4x&kܱ , עoϽsQ`QTuaۏWY BuEi{m@&wݜS+8iũ2uߗqL:Lrkm^X U$ps!ўhn,Q.^T6lF,j~'NRc4ws:lћb}~F11}9v1=lZP oՄgG?? /N~ ;3\/߂ff4µu߲ZfZǚCkb8H2۔~PV1ő7l658>CsMߞһ5$ˬ L, 6LґbBuMlдLwuFT/l&+8E 0Ÿw@ȕ<1& |" +wO\)Ҟog0n>>rtbGu+(??s?6'h(Ԩ)2⽺Uص,ct)$3$F2_(=7?ªnn .ߪ+weD뻗<ق WZ>d@ 8LПt4p_i ,__Ğk-xBu4D4=f o䄺>pH;QJHO<ȓ]Ƕzto2a]9-D-V (V=144zG:quXcXӚ($ztS^4ЯL5OCQK|QH&?V:gx>`F`DqȨ=W|ܶV}{xTߗmZS*ܽuI{orq`qJuxN{yTLPh! C_!{(LGD$4M{eiWgd5muIC֤ve/ypigjyʷ.|t|gSN?f}u PA:UxNXL:p-@tЎ4"FQ.,2k t¸?A]n@E_N:T'ƯW>C Lg)޾6_;SVAnOj"1/Q+Go,b.כewDDŽ?E(3y ֋SL }{_ : :?FI8As? " :菿1NpLgutfFaǁOn,zeAɻ{ӄ WNڜ@:"C>tQ"aSG`q]4)e=^ nLk&q4>R;n[ٖf ^2 QL"xSk:Z'> m8Pxg5_xx$=qiHqH~pVRia:t,k`p`t޾ΰHNU*f?okHQ\W7KJC؛vSrK,^֥ P@p/zX]b+*˯O^~4Gi q`Њ}uk8'mKurkXM`$F:-* 4RCcݴbxљo0򅃧=H<|+.Mz5B͉ó>yY=/⁐EׅF忉Fݸ+ 9Uvp%dwa:}.nVZ3꾂d}Ҫ: $2'e󽈿~3Bg F]ԨS]{Qk Y>Ϡ~l%."*o`]ΪIO8OpDpJ8MFsOޖvc#鴫P4.?V,!L%cga8Omt]BД0jz#a K*lkSh+ʕa"s9dcwם395w}nf\jR:MP.~UNpOJG:M9rLoΔoanؓKC= ~Dz|ߵ~U9z7~7]r]\pL7M*l\ p ֯)_M-t$|ES}`y ג _ ?i~9z&^Cx'o#y^mE43^C׏]4ZE^uv?:n}oA^{ υzxnqvQ>n/Ϗ- *F[ٶϏlϨX tZ0Ƣ$z=4Q]=O~E!&U8B M@*]TGcu~툻~h}Ŭ0kWHtL~Xsէښ`žb,ϝ? /f>˜Yj'wQҵ~yi=SO n 'hGkţٓ?eYy{V]_,, Qׂh|L<i%wWK?Y;]6ϭXoʹ}u/(8XRC+~+;XKbO4D_)F_j) ğr`ou|;F=dK-߷y<0m@^КW ^:q@$ :4̳͋h9)~&u0/hO<02)>c _Q\>/__?;S7+_t<+k`3:`U9'DZN*9ޒ}駊x|OPq }A\"2.Az,.,.2)EstD֍X&}QV#`@t4-OFe軼{s?*:p]C# vj6 v4FSJ}թs1.!s M 8E#;ھeM"{ ӴrZlԡⷃ*܋ SyHʁa)wj;]%Op?,,>T=q[-Q^l_t,Q.ֿҞ °Nj;7+ d oʨUޱ&5[!n14w _i\8K=k(aq>3as>>ޫV8v+B֗Q:1oirT<`'s Ҝ~K `0br#"=DZ1#]ox׸t+o hbe){٩ 1O6WÏAULD\L}nЯ ?1t|7k9kquYWLԖT{qVdV I,ׅbW* &tШp4%$1İ95~9rWiAG vd5@F5){Uj&{_uQQ6$YBT  =MbqZm.!lxAEwSy^Wo3ަU᷀O{j5u?~1?4= I #|Bޓ+%>fqf_d?d;] @dg5Tz7VE}ww+e 3Щ$)7 ມDTY *Q\@.Ȳgƕ&d)Qx!E_K?}Q:gHT5}KuSɾ3rXGƋ)|/ĘEé%JlP8 72fACeu HAs4E_fF?OGVSi 5{MHYFr]DpJ""ϸke@*>ɦۮ X*9/H!N5`kcO hOw&ŋu AjHLBJ:bO0=W[v O0y4 ƕZ^ t\M7ECx8 0+јYd f'}s#[u|g[k_\ t`bwP,(.@rXӾnzLLÇtAA[m{. ƺ&4_]4Е$Dl/F}vOWm:BTy~X=-;y~/TPEcUrP+.0E>u¬Ԏ ?hîigdb!\t;`-ίŧ̯~k5X^6c`v:~t?ruޮ!F}`6Lk PZ^9!x(# Pnp؞Vuqa5?Qz>ƿC,O{K}ƲSӪ>0(ïψk,.ՎNnxlom>e}~s~4<L(CeR`Zh]Cc60E#2SI}(RFrTKzhpx l3͓'&؁Cq_~٤ڀ+x8s3Nd0 .5ϝ.gY'Vy9cz_6;]:ĀƜ{j\&@g`C__/fFW~(N-ϪI]b*ܶvwjyk}avG6vQ.aL0!}A ߕN\tKiNn~.o.z {dCGb68u]D0ԡ3{2:F{^}EgvBx<@0<[R'=7lN§ (&BGZ NheqsOԿ{ ;D Wy 0<(# Kqx U؄׺"}MIê s'P ,N GaA]3٧L;dj[Jf1hÛק%Mb ^љ|}*Uxٜ> o9O7vʿ3m?ŚV<щF޿݇?E(~1~LZ95z)_`4 irV|F82vV7J+幥 < σ0ŏexT~,7S@`XI|adEZ; "__o^0`Rw {<21"OLBVM8髀NO>NBod*}D꽪`UY`*A\`+q`Pap:=}`En9[ީe= ^7b ]y;3aqN| ojпnz'2GrYIq^_R:12n .@f.ϚFG=o3+4ҢxOv_nϸCЮM_Zg.iKxo@=[oOCӘooy: {t\MMy^[zT|j~OS%_=YH)@B' 1Ģoa?&oc3hwp#`^h֋Ju(UWlm`~Se/8on,}^yl_l3AW$DHam%<E)OOz(k:h hP}2|zf33fЋԛ Xi h^j{ENz?%!3+j}OG\ٟ_.6 hfgM-^kjjeRE޵BǗoo#|扎?Oֻ 36,6'Sq׏KlQ}Q$Yzr^Ϻ~ : ~4~o8_;O= |08lJVq-Z]t~.? ߚZg:>GUbXWBِf?5{Ndrqf} _ _>IǶ4:naՂ_B;5X;?otsסK3DLkgD]$`%/_QR= f!ˉ~!Z\G1`.j`'.a+fށ iOͿqYdd1Ǻ/?Kèΰ\=n}HK1 ~*3']\Owex?5L$Ҵ/_#r`[Xgn<2áw=c3d4G[jAE+!jQFSXRP(z>>i +H8O /i岐6b]ų^455ʼnw~v^v#|<*0s gt9C q4xbZo zK[PFM`GnKFc:h%WyO*a(R>olL]l[.hgBLfho=ɑ{q vrF vAƀpkۨwWuqܩڎ؋}/JH*2Ep d(Po|/o\v:4yǣ13 :h(7I`m#`ϛoT,{oGn5^pȑ.PC#޺fP^}t5t: |'_Zp z40W=e| Y'.! `&KEGQ3x@э&XoaV d0oЁz ūK.ue'H:9m=Yz*tbOrnyB6<U6:Qw:}Ch]\< •pՂח[=dF xbةq\BɊ:8 \UAxSV6jc>(!ZZ-P^}ky۔v}[wWo`v/8ϷL<9sӐRzB|W 4!~,4gCp1dK 2 nLG~vx&},-:C'̨gר r1u/8 >؀3A}>seQ~{n6 艙ĵ~r0MCO4QP:Su&6ğῑ*;^Wj"Egk+,'|v(;4DYߔspƵ!k3: ~odmxl"19Q" 6~Z9Da"_pH# SE S?=S6AQdPLuQ?2Kൈ_ tl  faJh;~ *%Cma$Pbi׺[_Dk ΂@Ut5]An`r{A':#}tͬA)Tpw/`/}0]|Z oDvL5Ӟo7/_]>?cgpj7 x ftRn?#RW5~ϳ˜z/>]̤ ﳱ,nMDŽvqb1aG!UcWnQ-رV_;z:c7{I /(N'+:ǝi?>÷9ۿ_'S#:ecvWFTf_I+Z2yOǷ(D Idwѷ2^06=wY;F0&E^]^պ>fF@;DVQbJb}?>~?~iIb)SE_1@ \zm;фi& xӟv֟bA(kk t2m3õ4!kF*SQ@g {%J&b~DdC?%?wƀTvG0HП˿k?SAt{4' of,@obquM(>M(B'n_9%؂\ٟg|q~#'W)NMHX{~~>XLdSUoa&#~>2;T ,kg j贓O2o47^!1=yD;Jϝg2|QNB~#@ H2]$w y|<߯K:W,'4?V=+Js߿`:'QC/:^ߦbFt<^`FV*lDR\jJ~ޭ|5uN2 ԭs'gv6P;D첮Wxlףf$8Y;k<rP[E(WNv<6_mg1e kpsWy> `~XWo"8AIQW7 v|/J"j7KuF>8vSDVx&Alߓ=#o W~nC Dw"S3%}XZf;AR``֝A >_=^-/\l k<:h|Qto5L=X7h2'( vuᇦo%E[wY_-Q3C7Tt0i׿sHA~X Ƚ>9%dѥ+X X$vb=lϐ$=:zhvi zUe=7v[7@-;[ %=4n!ߵKgݒ$I$1vv 8oO;'@t#UPa"bnB6UY7, kʉ]K܍ eWGOI:>]ZT!&3@j&x20tY901%*Uj5ڀo-Ah́_?`7;xh^O𵠿/qu᝭(ꞡ‰*V&ءCKw=J7!Ld+wݭcޓy an.L~-̔bǯqp|R2N~TKe|5E7WP@!.@cLo8_v9kw$fAucyn=brgnw`Bd{1D?2ux_!7wX{uk>I|ZCDp ˫Z$9Ή. []eVXZИ %fW8߂7 YqHrmy$pO:/o؜jS࿘@a]q=}g>΍_Z`! ɆHo;] 0g~x_?ŝoŊ_?YUݾIߋx'yU",@:B#$&g+?JRJ_ g,CW>F8^K 6XbK*&ں"ѣDQpw/;#Tc=j hOCx s&t.+{z(x6㧷/z E&qwv DNBJǼY~_3`c/At 6ʸ?m@Wѡz3\肀גh_\tN/c*snticg N @?l^5: ܭo y swq*QY@}.DAUuPt˻_Y#?@ނȼ:B0w?Dm3nܳB=JAA7UFqng[7U~c/BJ"ho)Q*3\Ccpw!UC@^}zZV('x;?rKS/}VYBq{H>7DxV< ڀ}o}AX] zyH7vwJvw+jzn.~$~j%@Gv|Nd'O\65?߽| ߯_f'>g+Tvc?G`nHyҺy}#ޡUw=^z/ >J7L޾vK?ʼŸ)l{ +<Dt5@,dDPZڟOB)Wt@=?^/z~Ɣ^8~S_*0;rj~'=# PЯFG 4r;_Ylޒ@e`,v*[,UT8uPP\V7@D{T`\xn+Djx;v]nಈVEPU!(*;}ݽgw:l6Jo?_9̙w70ev6`[X&p|1գtxvX]w"?g4 r0-v<|b3;Ȅ.{^$o!O҈|'W;+O1) ZOsp-vQu\<ks- #$31~n`%&ӺA:Vw"Iw'Gq^9>^߲0pK8 N{%" VghN" yu_LJ.AdBI;E{$Μ!9g-gQB-u[XN=\2\`/(kS77,:-{<}ܜGj@Ng((\\>fs9e<3Ƹw簃^ З[Hgm]:gsJ 4~h~ɨj=86r`iQp;  UEiF8W !VJ4H^0zgzbH 8A-N#DcOug Ia3wϐ$;n _P U& uƝ[o5JдS옘:3\.`j"'0E{$({pQ_Lxmg.x/&o,G_ `Q;'_e_9]kj_+ Qt cM7B)YRd'"Į4v"$*j =jھ3mlT WY\Ɵ[Ϛ{ %*qMZߑ5 1W9!I8؝p#k6 %܆+ =t@8L\V%`<8{eYm@Dq!гUod&;0mCxml?cObh ;WCֽs'pz-hF;2EH ݎw0jp8N" Y7Ή/9~1ɫM"m=Ul>Crh?{:ْ$!sX1~t QG⢝E.!]u4CCI9/_\4c^E^RF#[1CE9EBvJvGΨE={tu=_Kjk5a19)0XTi]#Êj/*_9E"XP_o4|T6kό:|6F~ӷj-uo< \Pϕ7[qgٽF n7KȘx:|?7wd+D g`5#O>_FsG'n|Qq>~ş.{wk࢕+x)Agi~MΩ|tFVqtAgr# ~Pv@)zQP 4^=I)5W>t Lm9.~N6^$DRiSO08}tN=9OfF?3q\X!;4PF ݋C)(/&mjU#VOEtjȇN 7gG7NPw*pcNaQs/w$ z{gB6B[*`r|O 2A-֯oY 9? xHz}>?tZ/RyurXᡫfK9ڀI(쌀;7W$xTwזaXPN{K#'J=(񠽽,}0h'z7]$X5pH] n0Ť|5HEgrEBY1荜8qSxW|>5&od&|6XN*, x;8v"w N vZs7Ow b!*wt<0eSjƓ~# JZZ$a9&0ە> xQ}N㗃".&l7M_A+ !U25NR?'0 ennK ;T* w77R9V̷(/į2}gw22zD䶘9^MhNN%$~M(kIy(`_rY$'~4B ykExEP}pr|O:xMI}?=?tk޶mq`L:$.w}MD!NI{ЕL^ڿWPO;ѐYU]灟SXh#d]U \@ x6 _\l38NGc>}޸Pq)]-,OKEY@T^BzW8L l~dm?3='e}%~(ƚ_̤}'ZAai(Y#]RF-:cѐE&S;5z0eCwʇBWyH _akN~?T]ƍLsYл(~]m~cmEȴg2zAzX[lDM S,(,Т {[3?mQRPo?2vV'8o?d~Qcr]A sC9^S$VzF/9`?`#tEJ*~`ź/5&+jQ0ocZPD!qD1ݻA$$|wج M8@2|3_ {O0БTzv0b雇7Bw3. mV7;MHRC!Rgw'?O>㏄326v$(vG52n!01?Es鏲AmވA G+ثoB赾#.YQH$~sC5[*k' xI=H:9y@'HP8h +~zRb2׉_xa/8~kQѩjAb!"Q.37P08a_ .<#һ,XIt W'Q.;8~GBp>h~QեDNpY7u/U6C5/MWNtq G$mJE?ӥ_o zUh .Aݦ"&'>BT1|DƓNČXs5G1Q_hіJf4BE =Z@dJھ6+%IUr K6"&5f}?`_AS_l@KȻO-#VphM_g_opEhOFS§m@7ZpK'_P(o_5 ހ ]@^W H;[|$Oz~ڑͻwj?5JAl#8!)M~HК<~8*lU@ǜ 5;lGț;\fhRqM%3OC>P?U hr8/hR>A s $q" B,QjK)ٔ ןUZmws]gۗ?!K7Sg`Aڔi!S9&K& %:޲w@4Mˊnr\yGs ׇpUqK!(?G(WLy% ׬+}'Weo|s ,{^Աe(QN݌lhnk/qxY.YD1N)x㗪"%MSCEQYq Y.(Q<3rB?$"Ejkw3=W:xgj}x#`U7"qF^){z'K.c+(&1GkŦ9N]yR.;NX'ȸᠾˈ/eD>c]3DjgEɲ΍;-\UyhSVK=9MET2?2% ) <nTΣr򶠩{? ԁ&|+QN=S#%y;8z?ZÎ#x=yoVuKZ&M1?"M?X^nb䲃OjBWa2ϯ>ws5l˄bqu_0E̹w02(Ȭ`T-;؏HkYxxY4E ;uLm!EX6;E @.`$L/NbHR)3&;]Ìhf9/?@94z?Op?7u6~V㎌/+A  ZGQY*]"^;9zrlه34rQ|o/O?\}kQ<xM8CZN bG&V,!ǥbpFu2k'wBŇoqK2O1P}]HE\I)0p\aqb91d9ꎨ8`x0_Ǣ=tq99w7W@}!<NT9QT(?%cWW8 fg9: 4ld<<`>z5ewbi">*Ey2P3~ /,0 ׎87]o1kmmҽ7M~̠lIlr"=9Zb%]Ƌݛ!-_a ĭ_s?=sdXetІm<(x^.YL9Ж`XXz-gؿ49^kr~-q\unU Zh_:*cj 149vEsL!سx71`U$f\i0ܓ^%  8X4Vm):{|CdD2ˏagԁG7B6|t74t0!tz0ȳ7˦߰]k{?,JhM'voCT*S@jȬ_i_^%5!Ɵ[ϟ' _ooEmֺсіQ[3=\Hs~0Z!죄hoh˜ x8MxO _,6م_Xq?}~E3OjDY" 穭zQ]ʩnF͍􂢷K b /WSv+j?̰۶$+!4Xz[0q V'8Uk<6N&2^ڪ*f" akTIM2E/ԩ^^ym$_0*@TTd# u. 򎡁W ^wGΈT_7AׯkXk}|Y] dC#Sn`h֐2J *{0~?L/ (4IGQ2josEy\Q͒@LgVqpC}1] #B|HZ^%<j|I~ WnqWl\WZC\V&_?f&3:c471qBf/FL^oǏ_:Q2T=f MpEDa$N4V(D!۲r|xn[Z7 \Pk;aPE\>za&70J⭓'ݓa]/͖7&{u7aO.L'V‹:wz~|?0&+]ǨBP*G='`RW Hz!r*8s٠ir}w[U < ){B1~SLf`%xUЉ9$Om~ ꫎_T:G3"zO`8+㠌qa8xO~#L !{ڣ)g>&Ȉʧ#mTEiEG%4XQND ]2,6|C)Vi7Xug(̀s,s_?y!tpϊHe,F>1"rc4 AQ m` H#1u2X~Q8[͘a1)/A깍;Cq#d~4*-h1)~y*Ðgg3K|KJt=__}_i8\g+t+E3:w0 ,w|JVA!{ak"X,˜urIF>`8&s>@'/|NJ0 *l>$sk+t2}0AOFf\$1^:(lyN P0#6陋3MZwΤ t!M|gxCoF r(O07>xD [=&0EmSy*OKFA Z@}A"9LFNf.ssc:|$!2,3{g^ /ߍkQy7X +!_ZDȓWKK.4%ߕ J[9 e19OmPw  >@ōQ8x̮JbXVVqd%t?Ej &W%W$Bez+We$~T4O Xc No؁> G vF ?kN"zr9g<I~a ~@wۧC>-'3eCW>lS)>&p1N1O9Ńzţ/QuIǾ+Y8HGU4tTTXMu-~L?}:[ESz @PTq2x<>;&?z_C P^{yR2xM/ e J32WĔn;f= DZUVtf!đ"'(ve!$ȡӚ44&  ̽|4}28*w:.!wf{w#'F'iJq󯿎/Ƃ?y`8_ a;cEMϪHor jCo<+EEqd޻@g7~J#_A?<$!J7"U6WJ[ۇr^hpBA,xOG$W`9+?Ķ[BXW{`ՍT%pHޘB95^+fA_UvUN;c^}6QW(xC_50r.$tE0ˑiاG}mEZ.^'q-Ҕ;\fۉZdn~Iʅ=o}Ou4L𮽢N0k* Go7`qb]oA;C"dB2w_`R_ V_Wl$Δѕi3ށ$NT:^B2\.f+@[w/Fjt3-M5J%i%/2;ҷG蜰5!pVȼ\=x)72q2󐳮kLk\= P{/@A{4p–~RKqlx'x)g ȗ a=o܌{6p|Nn1啫!dsDv,M.q^Df#[qy4? Z4-΀ P 1X,:!?,Cߛ=ot  %BCSB'XIJpEP_Qlss(2/_=\;R@}fwx7@:;7Ag9n=_S_ (W@y/s4`Q^׹taN Rs8 O3_n=Ln.nT]V݂cO|8V{R=_(?(h_%$nt `6R98tMp|]vnYY^ RˋbФ!o;9!>sھe av!2]nȓWS(F~9Z}.vz[''eƻ7iQ( D?l ?/U ?o/!ZLjh\ ,ߞڏ]BdY":4$\_?d{h, %߽&>=5mHNմ%~,;!3w_ns|gs.w7A~I']6V0,Ue\vB[LP#,br'E3I(Gĵ :μ{ኽUn!J#jN3٨`sO [ǘzPs"| W{Vbj|E" :GK#@WM6{ W ed+ \uLkl"6ԓfC~弒WpO:a/+&W ɝ QAXe;Bӛ64=:Tv܅ 'k=!8a Ɛ8<,X [[H׏CsJ,<7OwkQ@9I1ox4h!!<£opУXqU,>C7ylz˯3(lou#, ]3C>#=LkXy=:LA 5K`{j _9g TYtxvk9~#DxGa;;?,iYRzC`AFqn<>Oy-QPm%by ~lF#Vnz@ 6ix~2e|gv X/G= _G+RzW+:Cx)L;x#EMA?/, 5⑍F{E_Hg}źU*`\hn_oɓ݂4$;PWĿ$wD4>k<ܙF} o4$$nКB/.]lE*ٕqx!ɍY)yg3`ω4a5oO7#y̷F}>1wv+x0Ƴ77N`#$ x}G}£NsGlɏ8o?/a`2ckU U4G)EW00b!H8rURX'kxE`޼jxU= bn|{/[$P7ϯ" &R[x?,Ͽ+U}7Վ tYFlR3o!44Zz3C! w!'ʃGd=jÇ=CfQ8ŵWxi*}Ʈcކ'(/ QIQqI* ٷ~,V1BgM[Or4uꥎ3e bB]ji Q̗ᘿS|Dr|:cH֎T3,2t1չsA1+t>q,n/a=};kU5#v4M^, 3ӋYo`"E(~pljh[<ܶb_걇v|^A ﰿn# Ho(%p˥7 ǷvQj1U^TMUZ?´6v0yu,aa4>Ow?  -6u}2?ZSý&GZ៉?4?WBv_`}s 'ݟ[YZ=?wD/B9G#t W~zT5ϽD&$~ ~j?6 2!=T?OLƿ\80_Oޙ@ ? 3\/]i gwcO{7BܯI:?>5zϫKgw;_>1\VZCh z%qJRU|#n _ʩÙ$:"Hsrxj;\1St2@{_JʞVv=K7>rSk%7+9F;BHwvSDC؄NlՈz#3g+x%B8%F! ?kF].LY&"uވo_Sg>e4Evw_B[!Q =^t0gLwu>#n[.x ͳcCP@1NA#Vg=rF]Ơgv*7kAo_`S^ӱ)} #ÍlN5[1<44w:AʘGs 팖3*uEͤ`~հ#M80^ym{V-t`eUG< RyD +~|Qƫ?nG=t3.~L3#7^w*]Uz8NNMfwD^`o+i|5|\}j7I!L0yu#%{Iaczk?-ng1O_8A#o Uq= uצSKHUG-^ݺmkW .~OM|G:_c]q6[-O1U9ƨ]'w8֟;pҖ?ԝlML;_Nӛ27k Z:]!ğ('q~2_U uS7 P!oWWxNtd9u +}G6|#(_<\?^Hl?`>Rk?_;UͺE==~ B٭yst!pU9LǞ_t.^%#NNG^g@#یuY@3D^ϜĞcՃC|8{AD?qc57i?,CBxُ۶l>tٔ10n`sm'GC2־tư]X/ Ywvbv@[;~7A,~bsno㄀W `y JsDQUq _Iq\o7.iah+3F16ࡋrwUIޘΐ4rbCH*)`ze,tf@f{+E2x>Xa/-뿌LbcoJs?/1*oV~tA ƥ{&{9~Wo\j T"lwJZfDJP/?s"!̼Yb"8f͗:|Mֵbcx{4 k8o߂,!S@ imQo_7{?o,;+kiN0~SR"%{鍪ih|B^̒f &=6Lm'z~TBC y6w$ IW41 #_$Qo~Q%L!MEJ2=rgL_eO M,!dH=h?Xk7 kc) `SŊ_"z-( ==*t ;`AiXZpWV_=ݫxߏϫ"~D}-nn-(m(aX"ki=<|NT ܧzݴ~xrTsv+Ow4gwX*-eKYd:y3 /;LYOS`p0W&B0l ^l?̯emJBasͶ%nK3)ɠ V%,Z|֩ƮT[`@tqePA a J$Iu1GC{(J=C/ !G1Hl71TݱU{H92wo{7x./!aDigrN2a7JJ3(wZ!)j>GdC#tc6/U1ՕFy|^݃ ʧrrPdFjUI]U}1:vع\j`ܯVQ}<ՊEJOe^pQw/}@*\@\xjV#>NߩW2><Nbl}U㌓{UE1^逭'Atw~ sA'z3% wwJ2C)NL9G(8YϑtrұFG$|%doˇ)0|y E({+lnsm>_y!u7]>kqVvTq7>i#Gg}TOw=~5 $]rYLpݡ3 ӼBM p;P9sg'"?@CDSl)9w7G!Y;;?[1Z#Y뗋>HG:k`@_j#i,(EW'߳"BD];5 r<'/P 1CLᧅ^dqoUǸ ,ۢ?%^#?w4:1*G _9ԓ7GSYgT,ww9OK ~&Z?{b ;y.IЇ\[o/^=R 1zZ!Ů|",rҝHs;pŬXܛ~e}g14V ѲU6"z;@To[PG9w{]1f~Dݩρށ*guӝz$e9_vc>q XΠx "Ё1b <$9NŽyKd왈>}Sٻ*}m5MX4X+͗yIol&ҡZ{ rhE]rR(W`9tF (+X9畔-: B;]/ݶ8I$4]{xoUSGP4AbrZ3%+{.Bz~f>Ḱm>iI! ެ?Og)r|@{ΓTk~rZ:W诲)w̉#wHB$7xI_e_Yݞ/9,W.r"Xϩw Ge ne e8y!`waj:`ys?B&՟sԗJbmN%`xZ(2_}eݯ1]JP3 Փ$h]e>)!]~컙 *|j\ LoIyz~/̯Bژ;Nw'q\!>]p"ۇV >%!O70}+LX//-'Ki~4T}0|Q'iM#ڗfܽ2#ه'3?A럖?߯O$.!;~IaH ) a$0C+סHCU8W I#U1;`ri- Z 2AOU)Da]n iR =Uj3 6Z+<ƟV_[!d|%>T8mI wn?(%5<mPv K,g%et)V˱*wHtW| i:alpP(7TRᮨFpиqPc^+(MA23ULEE4t<\=[Ņ8, }LnzVpХ.'rYcep=@׏.k,v0\kH"xZ m1ww8C/t<D]<]7?uQwĆ'6S)U7< hд$^$]ߣ.֊Jbd3?p9>@aPfu;/)Dӕ!pw19ad1  T0j;- j O,rv*8hZ˽oW.C:[i1.m:op+ mF_d=ﮥo`PM:c:x,lIf8y9%Yޚ^( MV$`M'B6AWD鹑R*}t/4 @@wJdTcrrϧ 5_k\/NAoْZ< m#&V"vxK05ڷ_{  W0@+RG3!Z|{.%$UGG/zJ_ ⪤>dAǭ~Mv2?Qe֣Bfk u F<)m_$ $ ^{HxѾ Gh?rrؓ=HT:a8&S5m瀎ŏAK^♅2¯z+@m'舌4xif_)H"A2:~bOhn*~WX ;;܅ AFNc. Lpù kP|{z9y$cԋj+1]Z]l"D*߸_K gM,3`,.3^Mj0i#%|]c0 K[YFF /8W1j .%>S{ O#aVW8F!~;iTA #X;UHH3S#4^GT'A\0G}9ߓmϣN)h,8iLcХPm@Yd2g @M{<.X5 qW`J \Q}7f /_>%+b<^q" c57/"Jy:V\oJmT/ $i|0~BI}eFUyHE?hWZEK70R'8͈86&N((]&QT,# N~\?y5ϜS m_uWiiϴs2JK{#.W/4;(!%r6o?=_xj4|;U?p!_~Aۤ>[\McpDqO__&{fkF|y!́(R{^X3 hhEciYa QHmO!5 Z\I XWُ!.C^?.~~@EA*kB|\%H?51j ӻ7^$E(̬(]s?3Zq|Ϊ]wP<}UǸpɁp%O$_**BHe 0(!̻uT1{W?"~,ngRwB m_) {5 9Q.FR#]C4]'|OV9uOǯܚ櫓wAB}2>s1B{z޿,gVC37M+=V Q)޲ocTp,+"I2"rQkmG X^X\ɸ"x&h8K'kDs~F!;NrHYt|c>ד]CZ~OM;k"?i$yS79kzHggNE#upI򩦫~E JզREdy"**k;. f_@Ҫ `8lwB ּ5Bs(\E:Id?/̲T(7!C.ACϢ:v 6kN򧑿!Xv;`^a¾iT$/~i= Мo/[U{M§ ++VZ2R?M- ӈV8~za\è?t3v 5_H]KD6?fT?̷+gN~oߔ/r')?"v8btچ*|.^ : WmXhsڦ;Pkɶ__4Wmgfuآ N*5ǎĕIVV8>8VqtwքmI{(]Wj{~3:*r(4{O?r1EӤRˍa|*,镛]VTM(5Ò禎`O:>댿#ĥ7z+VqSF!ׯ1~¢I5̱v; Nĥrkڑ'!0d> "?~{YUÆ[c4_{2ܒ1 XΠz4H LI.\R]v?JQ/| xq,3gr zpd~2RY=]s.}ޝ>|]J(./o$َEefH19G|K$=ȌK݅PWep`96쬬DVZ@\<"ey {ܛz|L[fk{P_[Ma}&$WUY:=yY uрztσ6eK,;ѻ&\Gʿ1F`'WcSUӪs,rX 0@|L_q8}3ƧwijxY=0 y-"M BflFWOpg`>|MI4GU^GgyPdдTG.x{j#Vxz+<}AWKX d" '|؆R1lïV\_+#_ncٵL*Zc.Tw d'n<\/Zi V\>+OW7+;SC_b@)Ķ#|x{޿.'s/+Z+o@z.ƴ@iIaX}&uq}T~׼;s.prIz0 p7(QW% !ũcOZ4cj p4gI؝f0wcF q]+^gY`:nyNF&Ҕl~QsIgbbyHm4_c$jӿӿ 9t-c螆IטK{[} MϘ{9S~;OZWa>u u]G10zysE:uLHC'SsL}_~P=l}t!nh}SiǞǫ T#_n@OD^.dAF(=$?ʒqU&j70"D{gnώ} 59]Zoyk^/N f~s'&?Ā9$O6bac2 .'lgBTh_UpBح5&:lMok/ CpJiJ_a*he[wPU6~/ી>ݿԦ Ff5|4' qk2e"V9Pz3ag:A`' QV:M3~^X?I\~Cζ.Fa_|&un ƿH_ٿ8~EzcO{Ĕ%4X盘26_(-jk8197My6 ϟNMi\2]/_]?& f 1~T ]0<ƾ08??~4wYJ c K"juiLhz.ʠniL%BqpF.CF Q1SHs F DG#k)]7V 07\Z N,-4SMt4)cV,zV$3mbh?Codo~Ͽ}hm7Һ5Y2xާ6-P45rzB 0LU/j^<ޡ1zE[)$=m8ُhV1Y ^/PwXAGTQpvh]x(]HY~_;D50l(2nBS]?tYOi'=bCS߿~^N|_)bU6%9QP3)l,$!50^[eVe!uuqY8t4t: \(P~&U{`JkI i#4Vc䒐;NRj::v]dx >@ $U"NkJ-(zmíNZ/ߎ駗SgS{Ne 6hc @A _RnIE-pQ?_K壝 NY:>Ϫl$Kp0dz)S ~v5aVLk91&E|(י#1>?DjCbjVits ni〢sX]n'η%d>?{޷˷vV |vZ3qhǁ'{6_'"V_J=փoa~72^m55I'3,Ml$q):l]>Ӡ- t؛!,u$ FpkSՍ76м|QU~ti:p~9,J.k)bym4ϼӒ,ZAK`':ZFY6B֣/<9 - :WyhOeUZ;(4[۔!?oJ;a*7[cSLN @ʨ٩6<JG2dw:֟uNw:ql~RۿTԊo^[܋N:&S8m~Ƹۘި1a!E0>Pg4ikTA3H}{ߪ 5t~h(HZKn64U U_W=}>9ɿ4Wz7\tUSݻaů@— v^^7_ES+o/I@ `az6ӊm Um/d " L=b,Q!v4? uݗ:|[ߤu3~5 5\H ?VEB i7=z);/0+:`˔֧ \=@p8Q4vyG([L9Ahڡ;i6GO+@5a95q}2z5%rSg.ϡyqb@ŧ^a{`١ mgoG=/1&ڵo`Upv8o-.K0Cay/|~rFu^#81:_'x柱CsL@bS_Zu)^t*w7zsz=߬ ;,j~hK/sP*wᦜwװ+?iBpF^zߢ8<ףjk%J:EHZHf zgMh[%.Eޚ{2YXI--:ƍ[Va]߬PѳR(leUrNdfFoc~9r~ͬ\k8?ǥњuZ?o{Y /3AQ͝U bV~b/p?Y[d 6_+$oN tMߋ_` `ϡtw x7s_? `"/bDE쏋a[ӄYkl,x8+u]]ZNRI`vrICNN*-@T >f{ M_|IfOFE(ɿznu,^ ~9oV ϼ[1qK0^Ful8i%|\瞔2φ|'m (ϓ91RSG'??+=[J vmiK_!`i?=vsGP$h@!(h;_iҭ[GN0JP@ yp/o`/ Ěu>]9>eqw F2!3?Sh؜:D|  Xѧ}_?< M9P:|ké*:1LǮH;MPA\I㟚U@' $XH&̲N}RG{_JNjGhPI/2k}szt{&\_vG7 |-RzLzhounoƔWګEpa:M*4)s+}5He6 yVt6\쥼'|rm/oXvsfT'H!@ i{|gefEן#%YՍր2pJ[6h`ߥ ǓKpb_3_P8/H)G7W>Ysxf{y|.yDՊZ?eZfn#"S_ %mȰTp53R͗, tqsP]}Kˋ\|{v&}3K^a-k@T;bwBA57=V'H9SWq{z} -'k7_Y}U u4`Fm*wu(v/K@]ϭNtkmZPߙ+ůŸTۚ¯J!^ٯ(ov{t] ʠGaD_Q۪\d?.yU?OjsV~¿q5] !mݾ&D/*Hˊdd/j5@cDqnB~~?t8 LN1`Ai~m$.L:΂E, ">pcM5h( G+tT465DYu^t5r8q".̚ Xcw^\˼9@-i yc BXр/h(.IM5#pK{PG(6]a(N 4M8+O^Cl홗EIkHtC3e1d"d\g_BW&pgoU -0+56=˯V[KbUX%Yv˔zͳDyݸ=-$]ncuox/x]ci& `\߇9 <3!4".M>@]6;#^H}mySl?JX;zx Mʠq?3\Sk4fHMSˢ9@ev3&x}m=4~G1K Wр OTsRV8yoÖ_hi@/ܝ''&E/ gƚ5Fv/F_hC <zqCKw"~*L ;R7s= @}.p¿ Vdʱ`ږ3~;tks={:K[>@9TK_O_/ŭvz ө=;G˱?hѱXԶLМF/S;/B#_Kg`V-#f3+[FXDw' f,A  ^_~΅^f`EԊ׵_[:4؎ϝrbӐ፥g.}8t4KcޫDO̼(~q$\reކ$.nJ0报Z)]S׫(#3M]+[*AmNPʁ,3<ǧNzı?$l3Y嫡\uX>o z 5q^ρެ^/$7,^3'+IBGX5@y,726[ y0wo`]o|!.C*>>M`y%ͶM8MTL|Vh"@ۿ_o_&.p˧7h'P̥a Dc_ך~;W%Mv_mEZR2D4a­qI{+~l#Gԃw܃di:`7>`8E b'uִ*볱iQ ~/P'\szb(}b ]o NPdr',RTaRK]ܨn'Ȼs.M3|}sp@s),H{s(s5x$IiASJϫT,2KmV Pc:;NXV5a9)(ba2~`O8Q/o@ރ5y}]Aًm{~>m `/&ty/ljg ʹx׏ 矸x~VR]9hC`% F@x:86Q `ǵ'\1 UݵuwVL:$ < ? d68soI2{@3/'wm~)n7~ѐ&uX/V Zp꿹% *YeiS1W]ӆ^ $Ojg?.yUbw$g< ? ?. ; v:2E| ._\~n'=z^EH6r (ip Kv/4tEWQ{[=KkGRg, ~+׽EBz""t^ uyy$'eGԩ)]mL5?O^'|ܿ)8q U5wpڷ-/YK T"nT_٢є?M&݋z W#%a,o?6Q ڎsĚ{@1Yx/[BsQB\q@o%z~=V ^Ʉa{Oz=_;W'|JTD]z(PHSXA>yLgU db?';ܟ7zrj~$ 6 tϺ~N'EI ?-@Q 9hJwVSCtёMBv袊U~"hjuw-|}<*;=S/G9o|$zVE7r P=^_\q{gN=ւsIs[6.έpEo-? 'T@Jh=>^ ߠ= W|H eF eWNmSe CA:6~Utٕo|U_w߱ W35V%D\S?Wzrє!]Z {_{tlq8>ozXz̒_uծޘ;W^`/ )×|ƒLݨ\ݿI7Ok+%+GP?W??i1T~&4\ <`уf9:Cz Zhv@5 h[q=Soiu&9$FG--R$_{rOzPUNY ?oJ1)]Nu\p_>'V'Sre=pG;u1!34i *hxO OgJ俧aZAU&e*ETy˾ۄ8.1.6 p 7P|KY d0bL2yCt>yK-S2b%l78+NDy' ȯ_AlR5ގ#&(n|3mng*bmT0JE+BNm xT<_~f=[`1u~QVnDz ESq2¨قӷHsu!Mx:"1q? \M3FĢ«K޲m?(V_Tk6r`FHo>+rtjՍ ®}ڞO}SBt}|_Eqe? #f޽RD'cRMؿF0Fx?/w?ǫ9~]?.)[z&)B?+CΙ'*;y=f%Cy>5 |˓DMٱ q '3^ղDhEjwD$εKqmxyPAG׾_y^xICP c"ܺ4u/&:.gi?#n{}s/M]P N$'zU[&iOqTtu^j9.Vgh wo} 7VGG:AU߷)KhATˎ3KcO: :_:;5;sPB0PBQ5W pҘ-TX _Θz({ TtNƮ: Yn$pi}1D8 `(~I&,N6XVPC7Ɉ*$ik5m  ۾ckmlqh0fM lLT56 Z.$Ӈ-E 덅`zjrH EvJ@BSWx&-v 5/]x㳍/%lD}_iXULG 5ݍQm ؕdS xhNֲNo^ N iF*Iݾ}rY wR9ra:r0L #9hTZ|>&" i}asELmN&F/O=˚M74}}ݤz_ b*>#IBDDS҅˼wK[$kzx\|Aܱym.ײdGAxto`i^fƖJԬ#R&Y֍Y1Vs,8Nl[.tQ.9G ,/JX ,ׇR]5ny4 so֦ 1O5 %t.Xkjht֟Wul>*uG0a *Bc[D<Hc4\u%忐OA17`b=54ig"VS@>tl&p 7Z+]k2PKy&zڞ4Tӝ~.X NPebp`:4R!M?tL!Qwb&d&p:~BlbtanݛX{Ib}!0W4\4WT TꕔyD좰FL*ХIS|ϯ;&Ù5`l7ԴĢc JGtI 5)wМg& :ᯑ- "[ZH4ȽxA D y5Kt[)UYq";QW tcwϝށY"W6.p~+ ORGj$pwL7j9p  ]0~d,`>w)R~p2&ߌ̺?EJbުGKN;vW?ď& m!-t`\6Zt|}U~թ/LP/:]1u"v^W!&rawn0\ND T Y;k^}NSG śp2*DIMh]>A !z4~9Lc᳝DߴWabIv7U:+-55+ꥻa oD o!%`t#n Sr: gc4xٴG2Y։_a~:jSo3AIm,C:RsrS4;<>2=q=q2RXC>D,B4m?xgwul~1 5S9; 1ʘdr`Z`ӈ5)c=*~sgA#7Ybq0j_ۺكEg϶ؠ4+y?WItRO$|w\/L_4Ѕ=,\\v@]M h;&Nx Ad]8oN`ՋCCG |Fw[cJߡ = T8ATL?%%VgCʩ2Aow$; \D&։:2~55$ o@7E6I` J[@@.-*Z2F&?~|וKdшTNSԂ_B`l0j{or҂Y_^L@t7+R9 .&7 oOd@!8[(Fݲ-Or&WeHQ[UUPB6Z@7Y /2[j~,_9_`#)3Ùp{J .j(oQdoAgҋK,MeR#~?yEq8K}~G>3g,q8]*%:PGrOc}<:~qj4kaR"MV j~9&$sgOtթ6N.nK}^dڥWu6{y-]RzϢEdy;B~??a>U6.^ycf4:Uv<}{س?}{!W ZݥU]ؤ\=k 7h3c*;(WS$D&Vr19|ZȌzPoo_ ̰}<'D@xnV xmN[M>ߣ־;LOicIso^׿,CМ mNI7h7kBY= O='~}u{Ct9Hծw1I:&Uât.R q6(,xS}y7MS/x}\:szV@w,43Lf-ZQ( !1cyw^H.9n1npT%h2܁fL?I'6`2%*jƅ3*>ƁUy^o{1Pe|X>T +OAa6_9Ə'x: kCɷExN"@3$ !YTI+&4_9ci};-=8\+2lgv."L;OtŖ\Xւo׷Q0Tti=CذׄzCA{/\n=sx><: DR4ӿKxHք: }9u#M4431X9|! .Wx:1Wlh@7j*tXgڰjz3h*6k<|~yNCNl?ښV|,Qދ.G J2>"ln:h)D1;jC!$BJ']kxfjA cǯp.NQsU Ax炡 Va^4&p j1UM'sԿJcoLߕR"V=rjXL|\S#%}a>=E*2vAgAi?׵Z :T{O_-ů|&0G}RxG{ K[T:\?zz1{v^/#254>&phĿqk%Ͼ֋S 0Wθ_l#Tm3'iC#hKO/ItQL627̐8ٺ3'Ο,] B@Ե~`Rw($kJK{&VRA^foB#'t?Nw"#F7JTņ^kb+{%څM#inJo&zw)S^c]?t0y[`>ϚúOw}JJ(us n K|Fng?L]R2Q>spMT=QXw:ҹ"ɱoکO&!'A6rK4bQU@ib͉雫n>x2k_ *ߦG;$ٰPoZQ{i^jb8*o7[Y_jB:vGZ$/N I+^Nc+{[L hTYk 4EJOe.aHZ> t$k*' s Zȩ:쌓_R%9m%f?v_?}Sce6KvC,^6V45)F:-* 4RCeE}?;©u<]TR F9  u~{~\(o.^Nqs!(UUl )c ^죈QhY95a9D7)9Q芵`Ov2;6Ӎ)yZoKi (SUb, ?opqs Q܍xs<"~NzQPjQ+&cSNvCX^@:|Nc=7~V#^eRN1u_y /w7X0M'Ÿ\9ߙzO8qfx+U{*|ůK_-;帢'D] N1 VΉ_/Q7 |jpUTOC?7c7?[v:buJ `-Oi59jO' j^}j53,es'؉MQX A{Ȗ<[n?HE?iG|4/>_%Nƀ,x"1oSS?sZ\tja`MmP\aWSMk7/mF7 |ϘW˷]+;p`:ѡpW(P v%xMqE wr= brT 1R\xIp HxSR+Q:Xc. XհN}l;t:xˀMki#yZ9 HLM!"O<'}. Ms-~m Nߨ)?N|'vE0~ϽvGhL-YhvoJ; tRD:uO7!tt@Bsd"NU+ۗވg@2 BiqP8`wSY+ʓX~G`C %Qe/sMP<hJMb3aM}RΓn/GVV wEػ//@2_s[;Y0kjeI߱&m8 ?_^?Oq.CWƏdh?e^."h>bw^{]EA3_;a"*wwP#9s?:%Ey{#Dcbx/؄IVLB i0/Љ `ݯ0"}&ԢY 7d.8R! P=*Pm`p:`ײ5 5&N >@~w]F2W\꣸V 5Fna7@M0 sk}+q꬏Oh`{Ӂk.;(mj6miohf߾h}}_S;ƒ ,)dPQg.^vǸ6_κ?s_7(PGaFNV04T ƂFx^bpU=>XX/gQ.$p#3=]fLz.t@O]F9;yci,W9tQ Q忻eݏѻjNZ\?ߺ"(={ N:1NС𻴀^ԟ1^OztXmO/ѧyg#udsgA)'O i%az+'i5]>ߊ_ YhZ0f =,.BdD?=>Xl)Z a"=| L(%ЬU=bN:+n.yX;tN.kWEil,4:}gW~ !"~H zT'_qJ:1]zʂN(zL>Z?FZ|wL!nbwWȧ<҈&qy'0w?q꿰,}O[W4"nء?o?̑ȟw=ڥ>$nϡ92j`@ `wuz5p*U Wbtޑn9|Ŷ?59wx  ߪEVn._~`O &7O=`) ` LT T %(|_ jkY!*@, g?2g5|M0mﰸԪ3mI( 8 ĺW`XM֧ XB-BGfo tH cv.ɤ\ PO-zq ޢ}qJ~u_:k?wbǓhK'*zP)xP*uڻ=\av}-ṱ胒ґRM34V{8aR //?GKu5w)pIDMhE-WnD ] jRu f{M_iaG6^[}vסaL0ϩiuaYEV1bM&+Ĵ(۳P=7JV19d}$ Z]޵LlAږQtKzKF[+6v6 (TG+~aG(Xsܬ[A_AO9eIWqAMVh DɴS{VN bH-L$ ]<w0~N#LO IGePlu0S! 8o>f _L{ŖЄW+U50? EiS{_pHg: z?|\UHoQ ?w&k+bߙ%fP,WW z sf7;O?J Ənu[vm㿐ۊf??S~xVw~s}{T\L`FXDz||뿣-7sG/hvhRNz9`uew?Й*+_WoXmN>4_ P4^}c?z01;58&K߯uSӿoу05X_^Z{~'lkG~CDjs5y}si67Y_4k:-G˻7@;\%_=YH 4;썎E_7fMtG.BG>b!:Qg㯽mcb H77>/VSG jf?O"5#Fw8rѲK:vӓ^0ʚ dݰz ED@?T: T,qkMޛf56Rqcu@楎v4~HIoL5`;ju`QPCS+}Р߇͋1 q!Y_ҜE|-ݧXϥ?W ?# pS;NR {oM{Ep66֌xjA`÷T,(VoJ:}cE [EJ'uZZP0~PSg:fRq3K+4p?1vgNNK{HE) |e[4D'78M\7ƴ:_uJ9s~Cs>F^]Z.-$L?SmxGڤ-wb*ԗ 35GcykngLEH~6w5~ f*xw_.^{Z S')o{¾=~Ir1C+_z-@]/p>|>iDÕN'|D>[9t0Om%sV؝ϡ)[lRs J,c }Vw>^=`R>fk*N]L]mo H9Ԕ iTߏLﯯIᅿM!1vWFjR)Zo烙lwoOǗ(D߃k֬[폡M]o֎Fϭx߳v?߹P5@h[p}qh(6XgS[w$j*2.d1ǩ]}`N~1$T o/wkkNԁ2>[pޭY^gHpv_&z=L ~Ua`5\t/ F}`}qi 2Q!E1ꨯcW~GWyz*t~Y=q:9tv5Ft:$}ozt8Wb/uϽD$w |F>9@vS:Wɵd6>V@ڔS}LG0}>e,..vW)ǯtd?`;U&xQ% ng3@t~o_w ‡?o*D菅_du5`c;zp")`Lmoo ~B}`6Er y:-60g͕s;fj;Q4]-XƎ3 $4UTB as)$}plVd8ԭ33 D"wOe_l>Nf$8뛙NחT?}&SE("T9.K6ӻ3.Q hƊ_@[[*'tkpMD}¤ "/$΄\TzԜY{z5= tXo/\S*~<a`j*uh<ÂYt[6B\T XL ?e5豙gJZbtJM`c)W(ɧzٳ4Q}tkF@jh+*kirLjUW+ž>M&R"fG dh)'sc.NS[haX:?t{>:TcN˟/Kne॓i2O @sNNHuGq+i6߁^x>OO/v|! ៈmi y㶃+{YG1H JwܿHE_Vϲyx-c UwsyTWo?JTHc@݊&v]_{h؊È9jAo_i@fF} ;ADo` fB TF,[$bq@蠫uFIv:^;PD?룅Q皑(1lc-^nB8bqePv4Vt9+8?-^Jb(Bj7=XjXz2۳,+=s+Jܰ8;`i==Jz=FM)i4ѐiE ZM=4DJd&W (P]35,κ15pr`]ȑC׷c4S6N4@EpuOmFzB;ޓ߭?XL4,]N?UF):;AQL[MFtne~'[0nل Qi~S8r~Nb &#`}ς ],/zh,;O[Z{H)5:zhvi 詹 E o6Joܱ[Kzhh Cj:Cȡڥsb}kĵi؍>-7 R"tM>< ƿ^fNޙBz#=_g E H-,@iU{}\ě| j)mO] WIPk E1}E-)}=? F6q0%;[(ꙡƉjV OCk'R0W)Q(` HT,-^Xػ i. 5E~R h'~D5iw*Guve(uZdoo;GoN{`BL9Ι>2i*~wxLNP<_~_ƽϼX x``ZMp:{pCCc-8 ܤL,uXNk"͗3Ή. Eӭ;؋ U)2쿰I~o.1g/luwq=O fK8.&4\LD ɨxFX{[-'O_slxAvu|a;SE3+aQugw}:۸HOa%iKew*ܶȵ[1jK@ōF#ۏ?B\R֯DN0X>/=eP1 Pu +vrXEMSϗ/ xˡT +~McS<,&>}$l{թ 5"ѲEB#A:*2잱L]tѴd*x8=Q̡޾vۘ`JUwIsbM+^_NGa~gr@&ejʎvG=p7Gϟ?x̾KIV<3' ;|6`WUۿvN% E~Q~~B_M3Sk'jP`AGٗ*ۺܓڀ޿Mݱ4S=R;Vw d J7Y T逳I}Fcoső[ae=mcۨߕuǝw8?bD{qם;6s;1e5~d5(v/~.fMx:xha=YTW&v螕yt "=rZ]J)~vp^q)%Q?taY*m^w+^~!4ᝧ~w;WtP.y.m+]ewV@(n?߫o{.~7 lcj KQ'vX;>qV?߹ ,v)^,69pe;- E-@rF}cg;`&szGf%ۧ3*54} .bLeݡg:@xv5K"ZnUK-tڼuE-={äE?K)uD#(*GoT77fꤰS,Bp/_:FRm3=5ɌD- me> \2Qq}Kzcf@'2"@ g|L"X[3:4ՔCjh2ay\^'j7F6ҳ5~`Gn͜$.:LB̰x>ӥG"yR ^ߋxM[D5L@/㷐jطSj%t(eW^W#L>gffG@7"Zp Q@LZ4"ߣz}=qHF &N3NNjoj2xAj쾮]Ǧ qy'~dG1+bR7Ĩ%s$3}bڎD\C#bC[4. `dPa. yL'y{eG;pf֭/31͛v>DҋL܎I/,%e[u22;ֲ{k m'7o$$Xh:ꗊhAza* EvoF[$$3Ο>%p;.9`Fdp[>⿾ ؅gmj O@ȒHPfN)o)/loe/R~'tӪa}q%gcy\+.'lރ\ h;6>_N7NjBoK∿$tNzF/vGR:j?0V$HEӼZmzj?gAvw}Tĵ<}{@)HeO^L!@B\IBVa 'u?a9g"G!D>RUo%,%?0k5 t?kk#S+pyR+ryU$X Hp3l Mw}C6H}{e&kIQdh ;#44W0("oDS$n}h}u-"q a n9+I3;hg cƦrp˵::O|%Rup0p\ 2W_Jt9iU)x*y!xIo8}6&YkYO_6=.q݋8o}ᕦ#pR1Ed,<[>"..#󷘙 ǚ ִůw HeFP?"pW/WH?-kB(G=pjolA\f~u2 &w e;T}9*NՋ*čbTP?? -B&«c{LenVZ &wig( 0gصC.ys˳etd,gMtN$ f=|=/ JйcwhPHD?>0ac?[I7[쉷MHYOia[[sr8.y_-&U 2̼7r}%NW|}3p#.owl!0Gb֜Fپ062Ӑxcr`iH}Og9JjSR! {([|avL!{9 KM<[_?<8gMhZm<`۩Hdp rCX5_{|^m%x΅\*Lo*׈Y0i \O;n`I`N08; p]K^xy|; >bFV|xIJNjE$]V/?K̗P`);lB{yf VyJ~̻ߡ۔:u% `0aljD_a& ߄F-rw@w6g1~m$=&7,@wZrRlK-CDKK/T2W+dk~ б:NT#x>4N &a,fƓƱ|K֯&ɮ-&Iq7;xg?40dfie8#]b,_ǍGW𚌚M,Mőn~[H`^Pw?x~:x:KGw_/Ac:Y~!8-J \S /^μ 8Py8ҁTa0,"4Oo9AԿI9dO~:ӷ0f"sIٖXcp}ydQ럑0HA,s& ݲi8P27< OXhy%͟ ^t:o;~_"krCV܁P?`l3ضKw x~D]Zg]%`AC]JZ"u}/TιN 5}cwǪhbx#xդ(,0E XbAylBǝgB0=Yc ÚVQfzr’ `~` h̀ ]F@n0A1~Uӧ?;34nkEFzM&uIfd|!xNb*絍 iR$Ѭ$hvSXԥKqWRbtZ ?ܰ!q9gb0,*~2vtqF PWh뵍I`jftQ~s[_he4Cݠ*67N:3uE*GC>՗$Co͎AHk,Ć҅eܩ_B8gvx8ߔ ­syFwqai9 )c1/y?6wxtʼn߶BP-U)?+̟BBcҜNrJGgz .y/?&#X$%)0HåA.&Fa쀁A<iF;5İPcr"U,;gK='|΅eTXT”--@ E,WR|TB~^ڧ"4F(zz8NZ*_7UC1ERGzI&2s'P<4rj}:!'~u3JS6ոl ~4M ?Ž\ e"˥ٕ[{y}WpV`~gȈvioVs>u^I릭v59h?%4e) YˉΖQn'fɐ=Ǯcl1~a+'쟔O`LugHDTUsP)2V i)e zh>z]y:$#!gr z]_e׺A)ǹ'|wJn/EVD^b3B{ALdK5oA?} ɶ~ QΟ7}T]9g? [Z" 1-rswv ~3 &BEsge`; Xu_por3 0ի~ aG)~Q^M374~YaMšip :^?ҚZ= pК_"XwDJF6EU&Ȍz\x% Q/ bhW_J:'"ЋPQefғ;(pDfPPs:%58-ĕ\–3`KO*DQ#R y8h5z&||;x;eBv}8`67X"Q =QgM|j~x9e, ?b wk2_~ؒ<,̕d5nm tq',i60凚gʫtQlir 3MgznJn}j l¸i`!BSx6݇6M@xo{ZvoKxp {kW.tEݪɫw+2\͸FT73 "/Nkjg[ֹ$M=)&:<\O^ފ OpXI@@i8"&(.;`x! y~^ IOͱ"\]O?k 4[R@ yD%6ٚ>\ dQ5k\7Y?'fQ(H85j)%jMi|.~e="8:L =_ SvޣVOm?I3襍,%eUs7EESߜ Q)Y*mN?̎W-I_˽y˨8z=V70?ZI|!]N"M+2ZX/I̒]_yNtդ\#{@wk+y P-w1bBq:~h(g=cj&Cu5_+HA(7B`iOX+h?")k{;$u_/?jxպb2()l=8Ð\9cnBp6}\CK. F9-/o\tc ,:4%+ؽ&/)wp?ׄ-יLQ!{yh ?ĭBt֖ Nv&(=:vcwИ91~_aܶHo?ݨW0v5Qxj9}x-ʼn^s"N7ʼn`$㔮{i'ZT"u($NqO*>_Lș3lY1ֽO>&dͮoDݓ't?J(ƺ >Κ-/';7Husbh*Yնg{E7UO}~d#'ߍnpƆsw*U^8o ěfdg{6}s<ojsq? kA: S!|Ο86]{2tfjf9y4Q 'D pH-?^︁Q'~%9/*ors9ޥm!?߈?$JU=gnO7ۻ|Éwkج;3) J 0N.+!h8W{ǢڧO#ᗏE|GQ(xN7C?Lsa:yvKu*8L>#K3~~Fw/^k[뷇ǸRpW+x/UPK9ŞU% lej?6Vүt7&B}_7#ucּ1Q[>OH-)"%/r^*Vuܤ>&񗣦:9 վB,:Ǝ{G<%Pں_GFOp:!R% \_BL7e?da40eq򄧙b/}IlnDz :° wSAr` ;x}y*s]]˸/ `d?ÄbV.> u fn.\qԮ_&E:UXR{s [+F]6;dy՜ wdD|ZtUI{G~oRg1|Ԍ2n$s1dC84njF? ^57}'0n:{]b_|KZF۬u<_:F Hs|C:t"9@-6 brS&sR^]{<!pt3`ɽ7W ɿ[u^Kxۋ@IL ٨Pf'MU6(3yF|K$(j>舜A>Y<紭[; ݹ zm;hVh ^vKnB{ A+AD[ǹ6 Z=OAF6ZtHTۑpjhv#oab`4H5)uj%>g*v)`I=蘤d@I> tj:/l38l{\T(78<~V.|= F'5oƥ|Ύg;Yߣ5>f ⯧__rM^k!?b|L$,'&#ߊnk?-_ nK%Y&~C*i2Te^yYI k\=?Z{@y͝|"֋ hҿI ޕtgY*(v7O9X0‹ H/0L`KH'SjWdӕn"h;6׷f:~xOwԧOA=Ta=9"D/rq'!pψTz,$Mn@FXMgPB60i~}Y;JAPgwUVvDU N3yL 3#'#yt<I,=HAǻ`7{6X_q7aNߍsA=Ng,e@G Ib^;7\o o#`YER  J&<  ގ#?0S=(eࣱ;`0ڎo&㙑p~soh0sQg v|mL&bMe8`3\ΜvVInCb Š(l ad5tNm|t$fu[( 6<'taG߭γqW pJ{>Gr9_x;$͸<"{ЊdJy+/ c tE lS;x6>Lm=?,hDŨ*}}V9|Ǣo>a,k4 |Ⳳ{~JՒ_ Qd)UlS)QPW ֱ׿ G4[*lǼO qNr >Obi^\?lً+"g"W9ZӲc-tD<&jjp\b$4h{yעD]vv,EB7L~DmJs~S4tI㿹l|"f>_`tk[4 ::Pؕ(ϖRjc &T@&J8|-ϯ Sb`->_*q0bCAW8-&UP@޳|~{ڨO 5ąYr(sSu/ ii0>j33%Aoÿ0ܿ3>:䟲O#_}Cgs35i0)uq/H@~雳&}uMRtnVt?ҷ-4O7+uȿۗҿs\{~נ}W6^lB?~} t1w~-7#JDDW .~9~ùB;CaZS 44NUs§sr_&+{[g>;ph,F{8{_Wpb%X yg̍g<;]*Gxzw("w@/b8}uo vK`$/-K9;&_ϯo۟~Q @>uCMPB<$Ug4ɡX_7PB DǢ!t5q_;LXdme`Ob߾I`zccϒz_(|7*<9yVKQ2yncM&yb#5')Է&[rov@:;R0phw]<taZQx; W"Hv X0pحN<ޣoU7ee˫3?w봁MWpmV.z߯!B[>z`q3Ny(o 8"~q13w3WN9:^@ԞG |(-}oZsG2N_+ʒ4^ U|Olghz 4,m,WiuN> U_ț[dW߲Dsfo,s+2gQAvEo9qOu~$y0XQ g0e+ _*́79, U^{oYf69)_^1$p/x29x-4{ {zMs.+/wE틿{Yϫ]}e^}i-6nFXcROMaO0(~;3H&s>/o@D`ὓdŶn2&?pʻoxO%Fsx.1hXǯF2UWOBmR4 in\k>+ŧ*c? u%P2Ѯ8+ /(ǶcFSv;,I(/ bp}ihh'PNvPXR,֗ ~)2oU}vA6{N ,`$[a"΅ v@:;y! *r ˋX@H(TP# kF7| sBV.X*4u(A]pF +ʚ >Xc–lI&ڟpqK#naX<&hE+Y$/(Of)x\+DD=Vc"C6N7@&c_:DqM2a]/rL!p%B$Ip $ǵ2T48* |.E&zFV#zËizpc3(N[Y b-}2ܬѮ`pS: RZ)t,) Sq]]ZL^u~-Qs:v\ Gz$*:0B>#p݄x/:L(#_p l;%ww^La 71GiN*)=6[gvhYґi@ڣ"̟ ɦ& K-43w&Tfޝ;*^f) Awm݀ܞ\~o!Q<ٸҏfA8t\`_vll-GXey%yM?eϱVҰ!T]cew?vR8ayNbH7_q(:yto 72Fs#I<]DdI>BY?_ڣk)ɚ]aYBIAɡxxa:>F @i1 &H+^\_࠯߮U Gozs:N#(LT0naE0.C5C8 .8렻ڕk9Ak:K̋] g]A#~`6wYX%_^\q˰I [-xu)"5i!*_w& } 6 ZVЄay Z27"?+@}nw;t[_OKpXk+x7Y3Ůrtܝ:X_ȭ;欿=_$|iaTA担[T۷kp"׺.|ڏTeڏZAD@}#Jr|۫<%y|ua}DZ^gCc= tlEgbEx)}e5[pZi7ʊI*|?k G ~2 3L&?XO3^&-kڑ~C02Lmo\ p+!s<8򞮙|.o{ߊ.~{?Z@/ &͎5y//~w#%:7O>*}, ז,x-O\?y8 oD|"}Q6"L4`Bq1±~c`G>^jj8T!#AS ;v_jw飝 (e=ؖ"](#KK};q{$,*I/AGoҿS$35aqwk*xx~|t|w~價ⳊWݯ,\_ٔ+ ,_@B횧{x?Ž?ˋ3qų{ ?_H@ݏ ]J75O < < 0u-k$t*.Vo@lJDzAN~7Yh<nz)tyeK>U{ s9-IϞn}: <4^k ڇ@ sޒΕM`7_-F+qrzv뷿- /?j.CmhDyֺY]m u6Z|N"?I˦;8B/^lzY;8noȋȆOr^L[Ih,Dm(̫UG(]"ml'm Um@d62 "Mv3 ~nr!ML*`B1}ʎ+.W=uO-;x x/?eU;dlH\Tp /}}GK/l;87{%^p%w;_wC'K!tvM<w=}罽~ws(͏\}XyxZ ;I20r'OOX8C+Ok8*qVIvscnŝ0KSkZe4\kcm-ZW(1=}93W}O&󯳩A>&W+'JR [y>y抵P;&; ~f Zpǘ?x֣@*b}>JZJT X/ჭp.z&df`/~*Ȫ:#mÄ@_+~|oXnB -`:pN)4+Svhf> 2^[ $$lBhיLew&?}gMG.b1l.ypC[!]tgE^,8HC1 ,˶C<VFc}/i+;Mv}t?=S+h_ -RqkJ'{RPTm~Zw/ ZМ4'=Bޒt~I+уL]S-CQ|bTuߪ%q8oqjy9Fx_Y)fX6 պp\}օ "HN0GmQ\a?atG7Ӥd/~Ov&\J% s|?5O0|Pzo t>nEkr-t^~Igob=?J(b q+lw7}'YFij*@ &H?,XH1,oR$]37 X Z,g?Ekn7׎5 ਿ O,RU793Hz<$PB8Mܾ*yJTZF+ S I3# `LlV&i9|eBPXHȒgƯ..yBlzϟ. `Q=|KX5 QÐxqU2Fc\Gkx/q9XҤdg59"s~Į|d&`t } h@蓈4: 3Nǎ(%6| {l\0:,}@+sd}^>>A|^+ ktrH|W@?_>O?;߿/t_m9fc -* a0&P 0~jG\ {i~U::r8\krN0aOcg|QIVI=d]O}{tw?u xN$Fb=þ~o&WPԞլM` {pީys/9{o(Yp#{(]8.:{OX9 {Cr.{'tkmdh34[`Q0Sey"S[SwpAP3\qF9>(xyhu|ZtP7ߏG2Kо';w_v@:m|~@{\9ve=|?+T)by,JqcS2;v}/_Ȅ*(]^w칃 ^d:}e9o|7-c7'ռ"M:8D-OTtW.{+ uW*ɗYmGK"U+ǵEt7-)oG%=Bn?7WN"X@0XZષF|Lzaq~)ߘ2M߭07&DN(g69VN~&&R_';~ess%U4q5? 4(&~xu庲=?|_ۅ[/Cۅ|ijk4e9@;fg%nSϳ36㖯^p~ǿ- 8FgEF|\uSyƠHʋv!{&( Fi[{Ɣ R^pە.@%QrT '![eh>9iSy=qàaW8'#:wdC+\Еz~|#yʌPү1!]ּ'k,:1hbE1i_]ܻ=u؞E>#sx9Ğsv';"I^PʾO?$q`rn j[mpY*L_k9;~$m.P;Ldmxn1r^K E%lj/N h<&`S쿃H}xn;6m l2Q_gVmw|?{fx7b `)- lqllAꝧڠ?WO\ H35qDJH%'3)XFG}.0#~cJE&G_BM^?8Cm6aK^~zQ ؽei`zyv5Oߵ6'3PNx)LGk(N .1lYYOv19M;1N~ Lfq!_N0?y9+K_J%}ΟΙO# tp`{Ztt"7H\?X!YF&MNrRy#$>/^}-9V\*-Ͱ]C>|tf?;IEdp{ yig;<o :%s@;PCWRd=p0a;'_|y=H'm% .HJl![}{@D3lϯ ||y@o[9PG22׿C(BP/+9Nr쁾P5 tQo ^;W^fη)]4%~Q6jU QΖU`Bg Do(hodP ZZz9d~vM*@ :n`.q~pyHymήmt5]vr5 v,<>&J^2pϏd \No"u>$0~vZQf7lGraXA 73uCvR F7[]yy+"gpKԭT&tş)x K^'sSz_~i,ł0Oڄv&(~Icz#%*9NeBiK:uXHjt|t!\sBnGhI]C;yQ2tْlahBw@E)~] (q MA5$ 0J=(CsRYx}q \XŒ:K,K/tp=Qe- anѓa2s7k xݨ?[er(d!.4eriZaٿQ}>ah)QfٞN|F!c>9oPR+aal.aS\vڡHP3bK?xYڭR Br@|LW0 Y1e RuIܗN&~eLjg5ayWigv@wؾa f ̿.yh6X->ruoTzBBS0) _Ǹ ~A_$0BCJ 2$XB}>c_!} B{Nn5׀KWB0N@19F eR;Ц@ӤaX,~rHN'(x~NKB׊|i!z}B`}}ϕD}k(cF\Z]I< Ss'jk䂧|ӟ>5b!>CR#'7QWY$Z,b%IQc| s"/-p WWcmD_y*U(T,dEߓb~z|ɏoa/pҝe|k0oG~hf}jۑT' @CL\ÊC Y"ܮ`4%W-&'՟~WEvogCZ]@6aٓb`I{1pHB=Vq;%=Ӣc;yَ^zC.n +sxM^SCI! gn_qo@lk"m1~EdIyxmsXBHQhpUͪj H ՘( g! ,If;(gk/iF=v?|C8BX[ zL~Uj-T|%C)*eD*\/ߥzDMͳ8::3}òDC+hy}߿|o|#Hl )U 58%ׁ VKUy,=>L_ur: o~O\#O~~pاG--F#ԒDrN|12_}-"3Oy' ,e"dk.Q `W8nV&"zȴY,}JcFN`z]w/V~&\hOQ.< ~YӿFedHuܐ3G%ɠG;n2>m9_R;}Wgg fN/6nD>@yr.Ѕ 0UjPpU|>8sb@:R;@Jω_~ Aá(qBY w Qߣ&< JIC`p˙hPD++~V|M}߿g'!]=/?0ffkhZ`%r) 1מ C5N6?<[F\N~@NjiuIƂ; 9u0_]Mf'sjuo^;9Qa-F] 딁 v> girkt)\W+||s᥉S]+*;r^RtubJ讇;IͫONa)(Le_ Z~jYϟc" ɹg ^L `je,5{U{ӻc5mJ 2n^0vbwNa_ey\Q$p؏xyrp%:vTeS<`zfM hNB 2dhU<,4Bo֞}6ZK~îԑj̅hk"%$X^LoY QƉx<_2V~^VuU̝ 1*]'赓I( b]_)0 <4Y^= ȸ_ W5&~].Kd۸vS; o"e~#S%'8Aq{O"/s^BpezܿKe-s".5ʡ170?~M!fk៻󘓥V$Pf1B Wy(D*~Rct %*?'za9|V$>ˢ~Ƨ"HSP~ow?_ ϔSiW-_I|!D&?P@~1}_MpPFF >=4Bŭq3pиqP?%@A'@{ Y׬23>f cDXr ,^ƯՓ I8ToɷU+ݧ-4H'+8.9-h zQ=Qapt.<?m'V츈#qQvX"= ٷ_Dpލ?oSJfwtqPZ\ \?n#,qaI,´<N|&ZPQmۘ '$ = g" #;'єOMUD=. u0 yF}ݗM&p\=O Ug"?p*& KZ$l(# ̼2Bz.y-A1)<<l!-'!YBM$ WࠛÐ2af8:Ce?WdxZAɩ\oiegڮ`JIUxޙPB&\C*]е伡+c 㔱f\7Q)a*lrA u) O-8KȠ> fsim NϣPt &ǮUHS"Y`2Z4M̻3xl,#T']~ ֏M|O 'P]O'8k%h$q<3 \@ד˞iFՕe{CgJ5 Xe9UQ*d fM> {gKU`zދow>Ao]XGY[vܲ6?mٛϢ4(wsxr~Msjodx{ŽgKJ+TQZQ^3"N|NKJ#@FѤ4 :u9,q,$6bQ'i'< YXPL>[*U'ůև#G@X㬸iବS>ʛES47'Mר \eb q=O+Z~}]k:3?<oײF2Ry!-a&q <}^MfMtUh4Q_53ԸNu&M G=\6y$jl B)M`=d4pj[3JsS"/ݺ_N3).s'͡98!P%v( TkJF%[K7(RAS7t\)~OV(玁:m'\@VdǑ'ɛ$ʯ3W ayrX|iM瀞(>v YCyF CD[r<'^/ q乪lKuXҚY.@£Qps}ʌwЏ?ۜYoCDZ GVIE /9ho#gÓmexk|N/SI=FǩcagFk&Pپ~,&~qNdc<{dW M1<8y~VI69bCSAផ j$݀l9D 6=}{BƎQ`GfEg]ެ:4C`? OǩUrP[(a7=6 ۤ;\3555ȓq.#Nk(//?x}%vN<-0O'sI~A EqY 4 ~-8絘)&Q~:>'m"\&\7,s?\Ajx>M;==osi߆+$·s?^_| q`lg $B0D:@k4BcωOɹ*\XL<@ 80l~11_w6l^V)+7jq?X7Ǧs]Z)ZF C;h12 ;߾yC=VO~TdP9в]yTP?y-t:ָCcfVWIEj| DlO.`a23̟rNR'?pݜftb(VB z/]x+L叿-^?x* `ou8 Y)R='T!Sޣi;w(R/cjk=gUZJf$Og?{ݻB},`EYNד] q9  Ig=u-D bf~OD}"f$[f 4[GbpMіz[=I_)a-3Z.MKlHJ@-ϯO/B1@U\d| irdɳ)'x%]ԗVnOenl ]gh`֫?Fg+F0ܾ~4d_%z}Bﶓ.L /+0.g$߿ ?n?@zOZ}ӷc=7 q9 1k6 _0luSIȦ3"I@ie-rbv~*7p*sJ5HقUix(\WF=v?wplzbw:z y@ Oa%,.B}'r,kٚ>Ҥ-GͅxMֻ*y3Uk&ӭiKG~g$ߗ,NߏiF{r*z *&9Z$09 n"w;hz9ȹ{GW1?+}!407bŖ!m[k>/%7B C\ӎ}aRߴn.D,O~>po8m>ӿZ.I'gI#&O9>N};2y+m._9u&= Ƙ"6YMWpUP{ӿ5 ҜrǾ&ScK'TPޛYʶɂwIz1h'ݓ_4Z?\@ʣ氀(m jl)RyGҶ:xڻv};ڜ=E7hs?gd),d<I>S~ׯ(xr~m>s@|YɿfT|wV8.4=Mid+g1P(h_U@HYS?ؚ0= sV3_x]'/q B+O a3 \HҜx_ksM1ZXq,-w ԧJ|V;Xȹ[Ͼ'-n,Iao0:!sQ)%_+47ۯ0)&Hw4c=6\e{OF wN}BͷwG!U㎱j4n盏ߜ>_H5"U:g3B =2:!9% ˜hi=@bWo ߳`CtĨ."iTtb۱~K6/?~Eu. {:NMK_/xL[N kL`\!~1P2'mzehHyt,<;J7 kD7wsؐ ],uBLΕ'ߖǺ`O4>C-C0f<ܺ ߿ܳ?/mi1t~lP+D\BӼI :fu:L/[c%DmcX+~#pnL~#vPwgIKt^ b}᜽SOB1 Q޺$`g.H vumY?_<a\`\|kQ7ۑ#v6˒AN|RpX>%yˠJi ;dXAM(/EO/Fqy繸S_x}2!~g(_1~ 6_LpM-/P̡lL)ZDGS$۱FQn[\t ͍ ?u,RegkV+`hMJ{jaE(?/埲7aQ >A?M%g20w\.Wd;;Nn.}h AU /{_i>($V: 'ϼU._Fo)9;vܫBO⫽z|M HK6^G |L BOh{vHZIқϓf^h$Duz4#m'_Wݷrz hqzJi=&OXPh`'9}w,&x0Grg<[sr@ev8w=l()g5U*.HrI FI?I1Nx)~n}aGqsoe[ЪOcn65`B'V' 2ˣqTiBAL,R- F6kr{ץGJ=PU=YJ2Q/!}#ۧՋhhI.ɞ.="_ulm@fF U\Ұř*ǡP8J?iy|_TwN,9fM`URy `x9ti`z/+%_Y7~sVMõq܈.`9lzp:$q,Pҟ.j#Y<󙘩[nAmD_Ѝ!dh^6J%=0q˨oÍEWa7>~S54Uҟ+qnI"$**l5+pQ632ɿĔ[IztUsB]}ͅLAӯ&Z 7s, Llv>F v{oOn7#X: /+rmk&!?eC  wK-3Ĕ.7ͅc@ÞJ(,-$ߗl<$`D*hXK/vPwrҒܨ]- M@8!Aˈ, baVz0=嗟NAbCz|_}W~HJ@ Ul cLDavG61S~ dk vݓJ%xJ9YL1Yv.]pCl`AT|lƄ\u] 0j~EȢM=\ӓC(p(e@Aet+ᄊmgFo%?= JK*0sA>B*B y,Y4t/eAw:0/I)%Ÿ$ٻ>O%cS*_goV? {Yn|ir׉_%zivnUYB8py"'NՄyJ2+K 2Vv:^?<΢dd/?x;Ls?wcBs,f>95XjUn4\,_%w7诔@]?JoFIl^+^+DWMEΠA|Ms >PAiP `UpBGa\9Y {(9^&[ iH2*tJ`7ⷾ euiKWDzM"Hvu0n ѓ )rh|T `lU$`~^&z8vF[ֿ/@H2GOSxJNs'^ QV/HwY:ʓd! qYF*I 2bFJ9JypVfj*G@@h")?l=S~v.oʠ/\o2Ư+^`ͮ~t@lqƲRSkVEAJ-%`0c(17s uPܞ㢌ٵ>]h^=W!"eB2K_A;JZ1Lj[oo>PHǷo4|ɷQlr]B@#r}KWW@[A>$0{vH_w+"js1ܿ77BCх fjai/Fc I/%%!1SdqM=^ݻS,\W_Z;Wwn?ѫH(Ha܍ q'7|}Cx?/N/95dD7$:2O'b_$ӏWo\]S>tA>&9}^X u%~\eB&7q|ٕP^߸LS%wwᴛx赫 xsUs';mr dV(Ujm&d@Uⱑu qMr+e=$jϽ"3~QP5䵓GI i{.2ƖANۺg_wg!( $XVznȇPo:#GJ),Kbk\!PEBݲHI2ݺ.:)> 5<nuf x^~#$icU_qT a⺲%Gyj8^̪4Ĉk>1Ea. 9l8+[x\^[@ˑ ݑ&= 3KUvf}\kָzʗϺ>`/X-L|ExfՍOy,BhؾTA BI tXg]UYhVai2Dyacz.x|<|sd*yڤJN%<šwiV %rZ,o88=D@Zx*T3ǃ(9 k=7 }ݔ;iL'\B]<"(sk&!J+dN`<JV8g) w7P -8Uݿ[0:+1_WI8tgrA[A3jY#/V Hvթ$H׭tWy[2t1lmtI4 oEx}Yg0''>~0[;-cKWΎ j?)ЮriD EΫ&yDfQ//'z+%rg2&xYK 8CZ+|.q%qBz@nߙ iWGdݺ=\'>Na|No't_`gru3  Be;;ӹQ.^xPJE6ߓ BC&jY6pw֏.Rw ϻ򥭰s=>x%`虜8~OD 􆸀 ?/ J]ƶaS1~FOiPf>ChXS:>$T NoYZ %}M<^7`$,QvˢJS9b3w\S, cGQG:讔 { 8X Ms[' cM G%B0\`[s:Nx=qMl_`\VI:}Zddfe7(p<#PUf٤˪•4Б]HEiՋE/ӌY\i?I_s? [\ş-9eU Kͥ X$QX7گ&P/Puޡxz9ى/.BDH~%.R49N~ Р#(=|᯲eIl+ :Ưo<|ea[@أ >[ZcڇM|G%v(^='IE0Ym-cտN_z~ Hnʉ_揢}cCW?6336]!Hhģ/Wz,g h'OzUГalI zXAUJ(hO9/(|9ͅp~z3{3c!%ua#N%KsECg(t1tS 7{yLOЖ箃q,^ޑ_;g$GesTe>?U. A ~oo՛\CH&9OLcZ,vqɭkVwǯ!<Af ,ƳŒac/󳧟Oe;r/GՏvdQf%٠٨/:)i3_S HEc\ hPt-G7UNb~ ׵';t]<G'Z~אs |>׿)T+\ \C|;'+uWC@ ڸ6rmmIGω!aqE.g({Gpؙ_]w?-|Pj>!Bg?:gY =}3O j~W]XivTmLL~}3A&*k>:߯%-w^,]w0;yw%Nw3r>x4olrZim;&vz\aq'W~H\C?W(NVZ&1?uD( t-ӠݿM~&g{= B\W(Jh2_tj_KWShU+2]%s sAD Q]_)@Lx4u.ߵ&Cz{|dke׽n2(*Kyrxe?.Db[ 7-᠋Kgg:~w";^G#nR _e+07+PRx 9ط0\ Uu8}<\_ Ý{z s:%$䨌\Kz^@y,r +οn"%w7/BZ?tQ^^|%eJϥ.bmXޫXcԸ3V1u< P<4_$jn<g V|L ?D5*Z0xfIgRPV7wȌ;I|U,@yrDQ>VoʔG$т t*dlQ :DLg_=a*Q]x|*Ŵ;r)6+6`;c\M0̋QiKpf:X bBZ-g"|<& Eٓ[;-רr7wbǂu6gпJz?#9@ZTխk srW+Fu k6CQ:.ig`rw2iA|Sgٺ#>iI9pbw=z&cr|Fo=:N 6!D{LCH;9^qt[ er#!Z2l t NƂa|^I_v(|Q]yQ^$r)}2 LV*!.[9w7obCG+ xY(SBhw?HI% (Hn2fsn:wƙNOY~G1,'u/vw(:3VZu`ܵq*$3:|f4vp 'bIn,>S#`'0jNn7;`3]|A^9 .?0?^TㅎץZO@|?Z_F?GR6LSS3,AM@ޅq 6zJЅLnOs@qtSEc&\+.M8x".GZå4(wt#U~:rNl=.VXHR*B}r=ixBe}g2 _IiEhҺ O/"T.H QcCRbaO,\ ZE?^Βe? ޅ> vWk:fȄBvuB'.^x]s)MNad 3<'I6i6K>ߡY!r@E_ ˼lw [%+T)1T]b"|(U_xN$ =U>.۲@~O#Pz4T":J}qwa~N9}(~sBB?$> OKLm6NږC|a?oREЄ |DrxNbeW^F`cf% `d%EwFJLRvG^l\"1ޠ 3|넮t/|3@g8 8l/9Œ[EPqs'R&7ujF.֐I` .)5/ħ!!M:Sg nS IFL)NvB*D5 7ޞ!'lD(\+1͗8g!\B%77!8ta|\(WdbB̳g%5?0:U+B RN$!uܵ7i49$.YWRIqPbo94ئGY@/>-¯Fޒ TWwjF <#6f9<5'AÚehh\Wly77_Rf"a97U·/CCwӏbV *.~t \;gDGK7_UIT?ݍ$Q(&vS å% IfHuq_h%PML9C8ȑXvvg< Kz8"YA2uv_Tp~g W"Vˬ"Vg"uBX`؟6*q U*q]L|E 5xg=T3Q6zB)qpm+]@ !|Q70:ζI2 u??!Ĭ3X|kY,+ QvS{L"Y x D</ɱ4U%5מoU}R[ fHd%6@0/ϵ+7/"O^ڦNY [ X]EOT0fj6|—J-EQk2UY2MZgE5uf FR;}3`xsKAۑȰ3} ڤpiC\OןGiT &!c.M1ŏW﹁12Ӓd.Q_ѹT+~GZ/ I%E(-"=h@l(|;F38=LN=<`A i'exB1A07IU T. $nǔ3d_(O0>6*6NRUM ߲r|Xcx]\/ `Ow ??ܵ_ou,L|\Ƚv0֍s`"d| A' `n  Z&@6@u`Dz҉\Zj Fzz "B ⵷Eϫvoۅ3x[8JKD9<uKfQK%1~`/: k"7Rd v?,HD%gJe3*4E} MF*8'C70?nb" tqO=ΟECďD+o+pظ`0Q|?75w@\_`E/⪇;3̩ijY0VL(dcߟ7z1^~6_D1:3*ޱGa. Ҟ]g.V\A6TPɌiV'qw J5iUzYe|*➿ʚs)\ƎF'yW}>bq2M$Cfc{Vz [S a :3*2C\630տ;$ml%2%1WqcY.,Tj\XX3(']) Y&%OW[})pݡ=9ۗ+MU&npH*$XpѨ]BsvYEbm_]ⷸR#v*bsNu#CNloYVNjG=&zgM4V,w5LPQl$:`u{'FY_wOD./XHtunXhlpyE.:;XbK#o:1E@:_O/"#4&s˯i?P?utԏP h?=_M(Jt@ oM2.`Mg9`I8WDsmB ? #߯";~4Zx΢X΀~`6P"ɩ04fDB1VkC7*UNA~~K4?C\ϼ'qqE'_sUq2@a{x5"K F|_~{%ί2zPE|)sIVYKOVf݅]I87k;M$7ބ(%#(ڡ, uqlT,=~3x=݈+pN{]ƍڭ^ c)ex*64Z9#7ߩKh{2ٽro5M`2Է@N2ְ~嵞)L=ٍ\l$=FA.?rV+_~Q&."}ؠ>XOwlxS5L@.ߚA'.5p\AdY4ȉz&3Vf4~'³st&pʕ|N8,\%4^D\xAnoOLħϳAO{6hztiub*q,3iR yEwrV/2_6;A;>U3?᠝N2xǺl8́,~$'H A+ ` :0jJ_%د~O9z/K_ZQ4 ;4d%Uwдr*#+y(A'|VGDhh|Ĉ{~5$Yp116"f2 G\ҷ a]gIr.u pЖt6>_A8h{7$7ImXÿ'K uNC']ND #߂/:.OwfYWˇ&}ࢦ2 6w(7 Qq7oq8 x= 4$-PDH :\9[WzL>]53Ljd$Oh0UY=jgvU"ĉI06; >Ϛ5_bWU,&Y\4wT<w/3نx ^7OSC1s4_,n IpHZͰhM\וZK%^8Z;K^9%O%2litSܵEX=fbS7F..@֮8U \aǔXeh?|7ANW?_{[omW]!jzLgridGaN^`I=sn%dbwث=_n5A[qY]\J|R/Lj\CոmK({4%Qօ*F ^ X5J ]ݸ*4\Ibf%h2՟G~ҥ:`'0 &Xbfޯv<9BAda{b8vM\;M.aD/''xe %r_Hʙ |/B=W:W7 L]q[/v%lSo]-?BPt1d).I74PfqG//,W9v]K`? z>څ_;&Ϥ]9&ٲžP)CЊo ?cD&0Oqȓ;Iztv>;\qo¯>*xIa5ݳDqB]+pLD.3o@Nd[8L{^ݍlC_?s#`#|W.t|%жyD$]xٞ3$jkc*`G/. ǫorvX'йxRs_`jn: dGAxSF'E}m1\s#:L|N93Vi#h!Р]V˧xu ' `+xY|6;l(:b9DJ^qVl9Y6gŒShUe [9Sh@1>l J"%%tx\_-?&$Q:Ce_(~ϔw:4D&;B·*}|?^ZMu*P;O}85QyWp۹?U s?[ ,pt|a@ "WMamgABSQ8 'rrug|cm: p [Q:k:\cWGܸAKI#3J$W 2ɉO]"C_gǵc'x4@xWކpi__KPuvP/3JZrBƝ8dzdז evHUݧv cXhC68y@&|3I+?|$a fFv܍oo1LFpwǎξ?J.(%qLGм^ г3N֒ztAT.`7*y OFͣ;8`12m+ MIMwjb>4Hoq4_ oԯK @`]lOB$=⪁+̀~Y~pϚrr2I@]_uh~h V H꺊$M LO8U½9?h^;Ϲ!ϲ.,kbkA 1;co]o4Ց2-\Dz=toBN-cIa`N|x[{KQ|$|{}V.X_ԫI]k "c:&~Fit 4t,Pu*ǜ֬'n171z'~^['h'bW~,zݵ`'(?.uj4oU F w+0 Ruw" 3_Bנ4Q* I#pn "TgVM+5]??xG|B*㵕B_#5F+٣chWd{ lў:" Nޞߞ̍Bc 疰9l.#QW&$C:R8;SxDž`t~ $0oolfmC,/_%=՜<~0#0b$;uP *&w@X{:;;o~2o`pE$鴪n`t~f=-t$w> ᫅s[,ğ FI]o;pݽ+؀uQiD\q5!o/&yEd ٯPd i/H=J/Jp'^J+A~q. H_1~̈';Xۍ;'hwpDQE:\{#Y-G5C/[Ϧ#8Knς~w?ꛟ--rzRUqנS9*{j >L+dᥘ5qբƻP%Ͻxg1nQKCa p,u6We6)ರU{}ϟ%&k8IO}g b'DB_sN׬.`isaW7jggNt&kP < U>:Po^h$&DMVg?6;?4B?d] TXS !?ޟw|~S_ܫ ~aE,;%"`8_?Q{ ; F[ οH)!_wpvU iufכ2Lk}M^}~|`%ty5tg1( QxzSsڭ.ǢIq-4I5?E $CMj- 8F]=b ?V:\?t_D6ls^ ?vϖ7s tdE@kAQ1h|M u\.um d2xǓSEz%2$S&"*(vbXNAqt@n<%_;(e~ i19l`~%[ɀ = Sy&`.7 1O_s[ouMhjԒ%M,9a-IJ񒟛K;^:&Iy|]\ E`8s*gaXvG}tu%7}d6 C}hc2 Sn=r0KNØP-L%ZCrm9hg6BKZY¦RG$Lw{N߷WM#9GK> `_3yngs-?97* 6JaGgL2_pPe1^|'{rRj\)wkVW _݌8f9^(nVxFF̳[j8UYXP+R-w7~N/:%^`9ϿCWmyo=VDGY|j#uE{omX'0=}@P?@>l& Osv/OϹKT*|Ŝ#iBA[@\݌__?nBacyvfM%% ^ `9}i{XOeQw%`x PB^ϯ 'l3r$ b#}@CmwpBQ*~oƦ: p GU.0ʚGvL)~^D=SQy+yowVK74|[pй'gz1P0i H?dǮgԞQ;NYsvduwfbT$~a!s>V;{*`!r#k;%'WF_x,oB7ˋA"5HmH>9{ޢ|WL~y3 ۟>aw]YJ.Y2u?L! };/F_}OwsP_뽻+;d  ;USH^G4,HXC2_cB(vSwn0PʒW yr|%{ ңWEΠy9@vr#EXHN<.A >B~Zџd >YZa:N$.nLlyQϕ?ĭ%Mx~sT#Gskn#pU0`oK37` PCzR7K=K4{daXqQ%5tfUi|g(@GRN'u|iR58FӉBf?h$dPj@QBC-M.2 ;9&<[\_ן3;+[(]_,Sp Bp ~-巯Ƽׅ; [aBc~=;Mu;_WXd{U[5[ |Qh1;KfZ qB%DP v`B[]\V_֌x!@a4@)GupӞ_kH*!,m_˿]C?b] ?JI;^b!H")9ɹ+1U2H4B9}AN_q3!̂\\@U t(Ue+%rp` '1ؿٿgJG|. a6x*$0PTxsN_sjb spl LnlP^Ko6n JNKεh8X唹/\[Bi~VƠUbzlc(:hzB=? GP:>ئHa22i C5gGXpF{F."H ZRjƫ;ƄLBg#9` 6wCNaیs銫[lt| &Z> MAqv^c7~̢2 9! ! \۟&uz@KR~W!p ^y H[׽omwp?z7o2Ei@l ITv䀨䤏'@(a#/jS"D4T I[o^]j?MQԴ8y FۼzAj*y|1Q1A jROY=j&?i@*NïJ)S't^1vxЕb*4t R! oVLH;<ug0KK2~d~ :PmhEh60>āze~{ o*Md| B@sANI* upT,I>3W(!;s4]kGY@B#3[!i3lxhA]#ţq`w/sy8,epІuO;j:! ={<׳"܁8sD<"aWОIuJz|?|?L nf~wÛ>ٓ+X^SV0e8;ad0+d(c@lK1OTW.vbpC|H-]>J{/Zj%ޕ\ w&? J2L9HR4JW4פ= [GGZ>--gofLws|uG Cc8j77%x.Tj'@˗ ȾQ~{^'rCg2!V;]oe*9S:%ܳ|WT?YYn]- e0S/]p~3ϴu4| HyE Y] |u4:;Az&u,+Ivݕmn>wYCL|cc8Wwt)AGnKp^_R8W_z֞?~\{33y}$ݫz( Hބ&hګO]K%eW?N;7_:SwCw{cCn/u?畴w-|nfGx^q3d&h>q+?>d~4lb_ɨwƼ;WZQjY 䄺zjW CG>^ (y{ Wnx8&DLV㚔+չ2eG0^Wc|gX0b[05n2/ W-3V~=ÔS-`Z](#ILYU}\y~E|#Bpp-UZ4nl1"I8!1{xLr@$X⥝GhFwb ;?ODq|D3kЀG='tg9_ _1YT+"~x1,ȣ̭cXϋ~uWzH= O'ڻ O~_;b孥1^ gpKtNih?ȯChJ >SiJLCC 8+K/Z ~ڵ%1@sMidZ K2^R`X2L>!߮*"Q,A+x\>d('s/: Q!lv,枰I׿?S9=x}Ѳpr61)"1UlVg4;𣬐'AtPB4?:+" 2+ڿb1 4_]af/DkH7|hx;Rv`l(p# nxxv7k8J7jfm8.*;o8 6 sb %ΏgT38_n1zOʃ܈/U8' $ j~6?~6rTRgU7x++OLewFeYXY7?3ƠB GeEf(>Vq*(G=iXD9r`A.Rݿ+Zn\mi?~.h\w3zo~76tFS Щ3vžԕayjN#;/bN 'y?UC,B5V|+YɏVvZVWׯ({ %)~3؆ߠFCOBqjC':s<o}I++N%<š;!@3Uf8/'Jp.~/ RB`0~ zxj{b_J\S g,fF0[:<>?ũA[siRh|ƻ5~*R/؅de׿w~VMZj33,ֿF f `2l8߳\,>|f:yl;fG#zi:zPxOKI>ޠWZ mܮm4&O^!vY+ܗ ,\+_D?=tMj&wKJozd6揷]L$/tK2J$38izr7b;THN+̋q> Av,p_Bٹ:/ϳ&/ ԏ@PCԸˋ=MR~uZ:sl O)9;^ r 30֭}f-!p{r)h~beSp㪮ł-n!% cd2{@r[}9 Z\Rb`RB hjB \b+pEXC5# 5#4OI@$tdÂɉY -!;_r0ϴdfFphHr_8I${WFW5 O؞m$ O\/qpdN~dO.$R Nxo7#΅sU>A<X; 0)qbwPO@67{wCѼv:I7,o?Yb7Ŀ#vLq*j @ ]k|Y-j(n4`Z(l!_i։|ΐ\/*owjq2X*]4&{{G9Yhdih1W-a2/N!)eY:]<@a}kؾ>wxV@ǯLHRK2s1-&9#?Db+dҦyip5: $H6->I,|kT@oO_hrHD7WL*aY:/í.IW,sK|9RcGV,HdW߻BSܡ,>>Yyo,J)|Q!<`D*ㅺb79kHϕe.pv)O;3Y-Z,2>o??_(Z߿?Җp󘃴پņ v?pfvwlvW7fe!vx|*oc/Sߣy|iue<VpT!?k`/ _)CP2|GOOLT&873&$g!שzz0|g&%W${B\R{G/#olA@ y;Qym=gaQyOݾsd\zNP6\F.SH8G<<'nZ7X G&TjZ0F}깆j{G)8{t4eӾy!g+/f{8D)?Xxk< euc[í  [Bi>^%9g~ :.w P0`:y?`_{>V2[ɧMនFYUoiw֎԰B$h3e*.;˺3pznQ+~{&woj?V_}:kLzC)so.ٛA ὶ. {w{+X?Ń_W"_P?2J"&`tG8L~-uF~-kl H}w30t@GGPRȦS(>aU9DpMrhnPs (iD ψůFkuS.v8=Ο,~ ^oy}יxs1#flQJ,X;/!st L e6F lB} QHӽkxWys$!b|F(諅 LaЄ$-%2Q7OnobLe<~~|zzwgXٻm쎸RfM(YuZvه5ktYE< qx;~7N_Md$'㒺IpMv"$s $`jN;%,<-tx.T!{'6gߛxgwT6k/5SC@Lߵ΄BZW[BJnߴsU>=Oȃ wѷC+|%Oh=<kW9ڄ#?::{V@|>Жǫ=lsůfL6/WrŸ1fpkHhT,Ğ%$1s:y_UAE0ㅒ>dJziufźYpMvf)wԏ?V:[V ]kV/?+@As#t04Ϭ >Qd0ABDS\w8X9) t8>oa;IJY6fUZ24/{o3xAr~})e(~u}GHA]/V(v}_qI0 97*;7?I ^ M;3`|N yKOL6}pw`^ v8r;ѱ4~"Hl1YCKݩ 0ؙטR9Vu+<݂ˆt+zdWF2X鎔 ,#aFEJ`T-^Z,styoނ;,Ze/D_`YfPC6:e=?7@h̯fzZRhA+t@?0PP'C&IY_SIn@=ҊWIU`a7W/sMƍjTM JN:" T1~Byjξ wB\ h6RtT 3s|&Rp=3R+2ӬlQc %EB~qInV+STx$L@ {+.U,`"'~,xL"6Z%&bkrQ\ G;zZ}E}iU_Ī_H!k.)\WgŶXU@vNzAx(!.d+UƚgBИ S*Q1`=-K2fuhGҹde jخšK NO$I[fuRX7_ XM=,L& ]x8_i|HZol"&ke?꒽}+$OZܓ8[:]BPX'L4{/BCLU1\A6GqO]`_lwYo$բQ ަk {4Bq0T dS5%ʑt}CwC~B{s$<mtչn4Ғg=:%uksutkQ qHG>~`仪Ce8OEDM\FhjKƼ*` 63 0b\4y\$5VGhhIޚIFT"w:Wp@<R>E owCT[imw)oM2y~C)kh5?uiVY-mOTu ~9+}WND`qg^0ϰ~0鿳_\X K'$~wf#NP\xOvpLP+~,kGeqگnL}"x_q] 1)lH>)NYDzvs* |=W.UWۯ!T<\-'~ɏn/F^c&M_$Y!qO8o42F|'0Jsț{UFQIGh,d}WVԲϲgyMg\1,|l8EH蚐y̮`MY1BwIׯ^9el!_&qy'Ѵ*(뽆fOZn]@H]A0Ιos LAtLsT6$a7QRHC44.AgR\u15}[\=.XGIۛz6X4y?H0 P/PғfT@XhtzXP)TrcL U/*lƛSؖ_3lsU];Y&G)-32ܒB)Mc=/d N-d2=j=;y^_>?ǶU/|9`DJH^ n 8Q$J;MV_DF_ d R?в?>:+g^1:rꃒY6,.p1 B>ZuEOϳS^^{gN[%|{!5 a,XF>@9LH9*[WS|ݹ+t sl,RδS6nK_t ҈؉ p jEѪ>'';8)q\I:њ|^9kQdfMu!8ᛎqyvj8^Nc 'ȭԕ# 56/~S&̽쵂y_i˝TsAe ̫/V׽_50$蝶'HLg&(mMuz | pt֖ .Goՙ^zV63xܯJ5պ9 ?6*19?xI984t #1s| M)et C:Dr.;mxK;PBB* nPJs{${ r!ֿ 90%1%C[' K8T"d5&|vF[(e A /rܐuݼ~bp;poƈQe-\$صEQY[;XKOwutChtQY^_5Bd$KK}Q%R?$VPLp魂Fyx쾺 /]v3/sc~T~_"8j-uM7I){Tϔ_ oպNT _ 0"<$(|8q_Xuc3[ALvV.@n1%/xc  {sKx{Ϩ>з%~KcJf 72j7ͯ:kB–䎋_#Rf.@5M1w1}W[UqKȕ;d4!3hZ Wq"-yeF2#~U{]}͞ws¸Faa Lzŭ8Ӫܘ 0sRxTlNlpJARmAx H\;ҐVvD ?0}qǰfU$MYNH_p)9St,= M,T#6Q>}(jTWL%64񝺘⎡H 3C%HlJO5\s8E:}G,TH9I6C'ԞSY5; .?Sa(RH}I]D⫥mI(m8źKUy{mwh*:8ѱ׏i{uWRr{<ĐJ?O}mO|i1kM~]RCC'u2:_Mr7 wf{M@K!M1R1s%~ @*&vR/u1Еl'0Y&?]ĐfRDJRIx`%, NÝϻF)~:mz83zoK Y)y0dȀ40U`O,IR:k4;;[}n'E<򶖂91wR/4 `^ `z.rG1V % 4?+feP^Z:9DL\' IYwY%) kH t`ތ<̔a+N J:xԦ|,kR6z&'*g*Ƀ%#LhD)bR, T?;|?]fEc[/q(/i g5B2ߒw%z?[̟Af~%&_V.HC[rw C P(dK4_4u|V%u+.I8Kwy~WygXo\-;]`N| e ;k ^lwxpq"(DGտuc|ګ=D6ĈH96A~sAIU{kB`&0 gAAZk ]ʗ*;G( %XF%V)o$K&4gߣK"sH ADsEƸ>3AFVH*4y[pIRi9?*g=*Bk+\XͣoK`YpHĐaAWe^(*{i<P9Mjh7c [\QR*,!N;mQ[4I*~' sT]ۯFr^3 vFWARWy$ uE8#Ɗ_.W/\s .?O͓E38hV3. Wc](y$WO ᠟O#l_u_Ow>L /UK:@ws=n= -=HJO 9 Fcl$U= B! tm@0F%Bs n\j*xx8>|ϼe$  AK 6ÿ.i7wgcX0[ /d83,>˘-+¡,B^xgpȳ`Dm&uO?Ā5Hnp<3._e8hg0 ti<'񙗂?g)9br RRV${[LN$cZWUT GdY/AbJDVo{_2 b9sι5ɏ m+BT>v=jv&ҏ&~O4.9]ўj= pA3SGF:E3MdIr: 3D^Ф#oJ+ 1 %%E(wYfR'%XPܞظ 58w-19g,HU28p qgso`_@4Tl{y~OK]4Hx_& +wFBt/ dcެy|:7f$D8:iUNMY'THi\n3Ԃ`Q[cU}ԑ.~`:bKi_SXӐ"z\O|pq? Vq5v6^ױ$AModZ،51s P2fF&%;%oAggrČ~ϟa/']+aj,&MR(EQqߒ$g%_-&%IMr~hN/;_^ Dv⸂Y`D,tL-}6e,9b6zC{.%KaL$EҠ&'݊ !hʥT;~ޣ*|tsWX_ѵV٬Vv-]u#laS}::OUhE^Q뒓.$+7X5 z _f:]lsFw`qrKN\߽oiJQB=\ %FR T%Akg˴7d$o{4M@ۏOb'8o-3PОˎg^~@xMb>DzA֞|%"tI^!S0O|R#!~a. M ĸct/mB#/@sw}. EINZ)zP3TG:}ICY:sXr;ffk_#ŞUjׄ9`7yDwq@%%$7xx?˨+ţt:24Ѧ0?ZZ"\U|!Io$~G3/Ӊ=2K 2Vşs&y ߫wN`)Og <_=#9\`J./{B\8uc-nbB55IWN`_9~DZS/|\ H<=Fe=ǿo3h宎ٍﻧ^JLk1O:5 1i9 {l)8w+A1J%&p V҂SNj8> hFVЮy*6:ϩ3zNsBpd 9Ui|۵V5~1lawx7ӌc=-X|ah|so3 uq-|jolcA` d?dp /L8 ,RCVw ܲɞ6݁GD\7.*ڑ.7K9t+}1N=@vUד sG`¹W [b@ Q@^uT]0ZP4m9!Ҽ{|efuM9Tslز9ԐC?mm:XEV&zvbeSEM x Zs}wEյz)A՝xxK{{އ%Ŏfi[HrQ8ncM!v׍xeLgQ5w+`8OK']+iL"'@u0۸fd:- jQIЪ1!>YGe`Mw,HЧayC|WF/֖ cms$T=SjbcܾqZ CX>o&+h$aB_ NS- ?+ dh㵑F#/įԡ`14&ddT8p@-jI>Pa4, =&&e* .ן;]qHɥyM*t" Vsg5JMIJ)*SJJU3/j7uĖ\R,^gBu|Lb1`Hj4ћлv^7ˊ &\Nb 9 >܅*|ue\+3:J˸vԪ6.: uL ]uM\%uF0u*qEoU1M\W 㫝dԟ*f oTՄ2Ov! Mh%)Wl%?.@6%npKL;aRŢ}]*OK#à5FӰqm\GsUjnZ@'Z1LtZ?n&OsX!dTHUۤM堬L!Sˈ|ɽxJ9GW A#Ӎ@gKO#,nlCS1e\5oqoޕ%7?IuJEMT'钍(Rc|-u.h/Mxv-cVI]-a[Xuߞ. w?7SrTFsVBB@Z=wAF6 q3%1?|Ҹy cB;J?NY^M%`)]e[Ja?ؼ4Lܚ97 Fz#Ɲ/]J%3P;$^+xNseP<5U={޽du`*sɘ/yWWq?G՝ 7 T )rNT&Qfȝ"؁#q g܏o2CS)qs,V }2BckK|4`v \3Ʒ⧷mfI+ſw|֭`aA9\ta8H~s'd/q׌H3W772{珿| *u&_V¹VW姰_/Pi{WWe~_y36!S۠}!'KE6m@ٟ`Z1(bm@'O|'L|dn? 6x#gعL4~T*}WT@#o2$Vc>) >}BEaG8Ʋg P[_L)#x ^,!1F:o&LhBߥK?w5BGo;LCeK<‰KChr8I爟cO̼ߖ%=3iKj U"LfAU1~gp¢DԣۋT3_F1qnM @-LIZ﹮i-*KEaLCdK.XmvSm؈[u]-Y1iWIS3F'(nDsE?M ]ZOI djbt[?"svP I?_Lw+'pW3 M1iU2>p?$oؾE3 w->4GfU`AD;\|QID|>C>n=JSk|~Nqu --61V(2XM?¼eR/Z)L%0k96hhTX#U^tڰw_{9WW :&+ |:XѲ;hz$l<jj;_{LH` 0 7f 0o7]l_:[ -|) ->~|(LYp3|ũUۤM 32i)S?>eYUHbgyמ .4АNU޾>Ꭓ9X '%^MÓB\9SFDZ#UCzvγW#Mna-"Ϣ*" )[iWwej \=fEbgvOJAʂnQ~ g =_[:~=1HwVL}i&y4uR&'Q_g'w)xÎfs [<613ٓڍg~UUxA %?VVQ7"ȹgg&Mn>^|v/^QG` zr=_ u{I[1航p9a촵.X+wJBw&3ږMGAhN*s˰,yke=M]r77`=iP$p L?W$25랮KW~`$CX%OxKZ#N3 E}g%~_Їw<@s:kڨ_ʀ0w|!L\2~_Kxؒzؿ^_5}k2_RBF KNY~x`ԿZ&QB0f`~S(]>_wp.+1a(70IH: @d.R~Y L'P_ @ ۸젖coSKـ jVwoEߣ4̠FƤV2Kue?vI'_&@_k/ bP &RDg2y6yg5Ќ6\ۻǟ׿ɽxr>ye_;?ÚKŌTrCx(x#N 0'V42$BDs EϮ7w9p.C@<dp3`^ܤ(jqL UU+9'8y|Dcۏr)\$AD8&xܒda[Br! ݬMW rЄ~{E\"tB'9ꧏ`Zs=uqͭ:+\# S=^0H;]G-yI34X2βVX  hu@G7B%W3S<ʨ5U jf3~(\Ѹ~Y동{pD q84^h<]%&k҇B8k2)!~k"~)I(|yȩ;B/k՞ %t`a`rWUѝ9pz%ӥUrT.6xO:I_DLlvԝBus=nӭ{t*fFgbVͻձye⸞[Wx ?Dxl#&knrtYHIqN 3ەl_4EFF_><IWay(!+ߒk#\+3*2sfN_KG]&c}e YLS"V.Pjf|ڦ'}6Łt"_Yځ+ *D˟CTp:+Ul47/@7ӯ;Ýw̯S uowYBcE1IE!rZ μ/ M8ȆΚ<-:ÃZ)ބ{՜yC%0^i99> mtwx`Q3_*%x?+1z]%6u>yg,>9l,9 g1^C_ݛMގ+QN_׈7]] a,)CIr[}eU'hM$Ǐr>`s+k#Wozzj{uʟ^5w}{S'eI'i'~CwO4? zEKT*&: =2bAUz !ػLJSFKEL[ r4dvţ`B}^&.`0T"(b>_+=˸,~?(ͬgM*Z>g4Kg}5My>Vfի*]Z^GD/Z`y_WS,ϊN@2Q?nzq+E_N?h}(ӬP(ʏ^[gr6R{'v˿h*W\v;VD1*RB/} OoVw׻5 &x ,t* .C5C8 nΪ\W&lk@RⰼJZ 9,[͵yD_ RsE[lEyӇ|6E[J~?taNvZ([Y !pϵl~MSJ%g-VC4rrJyt_϶fll眖[zA{[y}(_5NHMtKPy `:~3|5>7^y﴿p+!s+<+?;;~_}EmR/I '@y^m`l}W̺jo/oZ )87OSkA;d5~>egcu ӎG}%0_|\v_.>K!8hZ,;oŏ螞"tp n0_8p D 5׾w5IX/FNJO~%ys-պcz!3x]`]t s L߻ӕ9n- p71yK>c .|dse/Ƴ N1o_@7Hjk-2o<3{&gW-44`rJ/(È\1X|Vt{|W2z(K d9΁a{I0N=L^.rUj^1xnZ_"6 _w42c-/g/ճ>h.7_'!zLmnHژO"e삀QTdI2GPш҇ }3+" *.p1  @|~^Et3B7@( 3|8ۚ}ʀس? F6y&Ž%;4}k k\2(ME&?5` ]ϞޱR \[j!`Q7{紾W7qx{>|{?3E \| ԅ.%y$ߧ&\鵪)VmwӘw١*h%q+~Cv.=9| ݡS2xtנk+>jTy*ߚuõғ.C~J ВX\* k1uR#[=_ y kwAK]yy|RtT*tֿ ãGu¦k5@WKϢՙ%)r_3wI+!ًEFQN='m Zpg?1~= Ge~,W|ݿjFg @# ? _;K0sY|=qgs dڬ?NVpJ\o,|aejr%׹Kh?\L`|!6t ޑzjħH_G> c>߈̯ ^+ApMV/&g|:'+m%S _h9|*HḶߙ9N1i"[wuJ?ےqU@0GqѣƾFOU=!\МC[' 0w 2u?h,wyo va%a.\[|>D&oV$"h>Z'G 皒r!t,[-Iweg4c%) }ݘ}½Z\mo<[lY0 jӵhF'OX%[ E]{V'n{s3D.8Iugwvdz)˹Jy>}%nf Nz=1'X7sSnU G<Rcya<1Z433s+ $ 4 jp$Z)Y[ 087 4II|L[ȨC,5s8+ 127EU? L++Adf)`ELn aBtVdzw'tQYT\N WA\ ?ʏX3?/utPfId.4,Ȫo r+PpÀl3e~gzcd'B?W9~ՓQQc _^uC ӿ}?or Ra[kTD'/c8@0g$3 X™h[b6 _R&kIC33Eﰔʞan:9V/_<ӄ6?yY|fM/7/X$yys!o9'p'͟pu_6Ag^"\U+m J3E@S7]QgPuB?R4B8gW_-2z^]l.C"huǞxX9`SQāJ$ipayW}/yw0-"spќH6 3yxa"L.wXwWgLz5>:RUMA\ƟTNgLH֚'/s*A?gs疻_[k(0x:%݀{$?;21ːW'&4+_)AxD&0ak+sS=:F\7@JeϹxw"rLf{nM(T8ƫ 뿕.uEEUc>ccc-t.7|bm4bofB GhF !go6$d9aRTD(YApsHa9 +-] L4ë*֕}a"ЫaՙxIث+h#QWXiz@;)dխ%"PͳS6X㖯pj N%'sUF` c_nl 'k'I`f*&,Vnlx=}@Ad$JmB6 kh z9Y{X!cTf[͛32V8+^Mup5Vƿ̟k_~j~ W Zm[ϳ%-+t`}]UqrS6]ҷ&r`QrJ*W nI>eD 41_y#!ι2> v5)lgӜXk}Ww fVަ~~{? U]gKt~{;#1lq[xM:xY,s'A,'0~z"ӿ%ý7=i2s:nk ;@7?Q>.\tE|zv@ Ghx oܚ+ٓիMV;QYl'l:,8t_l/^y†zG4)`]_o6>d1E1qqD]'3)Xz804;Eи}aw WPw|gpޞ[2cՃ|՛Y66;3USjUB׸e0T& |$]|6{O:Y#F'vVI I;,AKgQ<cp7% woVI^|_OD4:ݻ_MH,zE:m}j9CbSoi!BHpx>:ɨإF7FO0*M&F`$rUԧ¨Y#dگhy#o;&]Bɬ?-3q{!na b )6pgf W"3OssTт+ =ΚeoGE0kEG@VТ.o!fn-%rR# B`F 3<1"F`H+t7h昍Djk@WyIIJݳ߄iC@fWXb/b+=vodpY= :^ޑ={w ]" t,k7yx&mi\"+\o_MH<:$˺N/~ 0yiWK;&nƿ;'pi7p6?,,|pm~$C/gd +!fc`깙7s6BQuRpO5N߻͂>泙}y(;܀*))3+lK]vB3L\F> tH;QK^7:r uCR98|rRfL$OlTWjRcc RQ_|_N2N7?ks|) .o2G';U>ug,F. *QKc2^T*#RN8 Ef`C?v^A)=&|gMCńoU 7&ve^sX~ϭQu+[YiXICjfK ܏t޹]wZzV`+h.L<`ۇ 06cClW:k]XQ*G{$0<_>i@!. 8_,^_7R|jIķбV+<}Zz O[~O H afPۏGs@r.b;yy"NyF8"<$_20,2(F8&sMƫFn[[:m|lba~̤|#d+>jlKp 9 ن0}X5n* +[o<5Yu=S0}e_{I79CH'Q꒝H{g w A:'`]B+ y?;:Tp@@wV9=_tU"jndiRLp$gKM{6ppĀ`'XZcaTi 'A#R{_~8Gjtc:Eُ +>G5XK|\W\E! g zOǯBzu/xo\ݣ6A&c>:20L 4I PՅ ) Aw9@UZ8^<=X3J!1%0;] N14 \^e^$b,OPn|Iu&-_=GWLOo7޵`&wOv Adae 'umPKf ƲH 1ʌH IdB\n<@ŋ)݇ 4d6z6LFu}SSo/ k\5'mBqI%rGm\~%z3u\ pQ}ulPWRY ƁݽzP.#3w K'o5=>昳[p j)AҜ+j[Wݞ:>ChM{ P`UNw&Ji 4bY0~!f:cu^סO8dosJ"tPzHWƷ)v{Z?].$ +cp @!̈́cݽebE}|z[` Ziv&[FZhI6g C}qorgAXQƿ>1:ٿ @]'!Va?ou|TJjF:4QxqO뒛[mHk2e" P;[doIC~x>~wU|Dr}'$k<BlX c,P Q1zKWhKyZx{ybslE_Ȍ]p$e~#SP>~2̭kvbIbIV ?\G򸌺Bu t)zym\'O8'l|t+ W݉f LW~a-s<ˮLinol+*c\Zbnk;TB;EsoN4=MDbmi*JոҘud&M|N`h)uϭ'MʯͦKPأ36&O< +9"XK -^oLм #~3Y5tr"X+(pQi"gwwO37O sU(ECgGy?`SHqͳB$+~cP%fv/[s~GrY28b:DpRP"[_%NS0!8밥p7^ _Lis4zepZtzX*pAX CNotRq6I๨K? S~- 4{7Ā*z'ݻmLM Q%%KR总onqlOfTN􊇗0@YVbϡV\|J Қgp$mCJLʙ(R4eڊ|pF0>nG"<5 @kGC{|lJ ?W+B[D!+B^zѳ_,B '+,X6َԕLJA=?i.Of(S…[A|ׅv7Av$g"gx~\KVetpN^.X*o:Ɵ*BRлPO0- [Q&zVX^!FDs62yIBwL }~p9xkyTŶwǪB]ij8w.b=x>_lIRێ9~ź@?/묈ܓusl^9H]vڿnff(:;?ЖZ{=bn:)MѮvY/̳@BWOCr&{,aW컃u"U(Z:gbkri]Z q#-48%jo,P?Zs:>k `h$@h,YŜEc}K-:d= ,ZbRnA?I̖隤3N>ޕszeni֣! qyKN)N/0x嶊 А|wW oe`ï ĩwA½vGr$ߤ-\DM|DO03Z E/Y)qq[+ }*|e2ugBy$<$(4Uo_0rsG~_l3x?If,-KYGvAE2f=Y}~w`?*0xy$uk%1 au?\)_anɟ2~37k}M9󈿷$j Q FRā0n_anIa@%ftl L%_'SXx]uPuBY&-gNfEz3Y:;a}~4Mdle>Ĩ*U27f5Èm+4|Ʈ=9T^bN2$VYb,7MKJ->3Wο_BE3hhu&9nQI HQ޻%{bsp[ΪLFp?!M?>`k3Xpv-J^uq Gyl{A Z5- (BX1nmݟugi2?#x߸)~/c' k.!|?q 0ER\k8|g+O8w/(-/$ ;aꋌn`LgbtG &**TfϸWkfTԸ.enBP@Ckτf:6>"' =vE'No`ZX$WP3 cz vA?___HhVtM:MibA:ly$Y^5glcLM7 y g)$xJO8jpȓ_OCsr~ 1B c!^G$-@˿ۿ8m̝5gV.%4,yqJ^%Pequn?:~%=]b z %(]}lŅ3hgmdat,*Argh+^ _OqMվO_~Ku/D[+V8&=בU^[to-g͒-'ex)o|z1R xӟފ6@UIB2<#jUN`WG+*q}rF*a?8J54lbXZz\!Gsco Wn[4k6pom :ˎou*Ԏ N=4 |4Ӫ jOg5w(#/_?_xnRoXKDj^o_W51p!M9hJ>sGn2Ɵ9=) zo?FfT^O 2J+Ȏ_8wa ܲ7t/4 2|W8`AS.j=[~w3j-@5e6؏ sjEm^cozyvWS*ehBs[%>Q&hh3܏sš@g31`!X?a?f^( lFLDuUVh֐Hl~ms1hGpu.C Ad-v*S:}ҿ fc_Za,2Y3u>e'gH{zfW-G:74΋0Н8 (.IK$@+b.@VK_pGL:;v}nI.y,S4;ka-롡6yWNr~krɴ 颐OQC2xL\CI (sjJM/tԋ$EI:穃XKV?Y$).|V*꒻dHœAkQD3[Py:_ ,SbUx/?yCh/Āӻ0|D5d: *= !/vY@4n ^{TnsEcGp}>x2 tc%庀+@hϝ Xs uCb1=y U'y;k v7T*[jA%#[[0b!-'7 q+-:v88qnZ001sH 8u_Wp)dR㏣^V_н s-eQbYsJ}9 s9uZbwpe^ϙd+ҵEjM4cfsI]hj=d4#Ee%q@ 6V/-}vnM}ӕ~&WGb/pE[ADIwq5k)=]Vᛒo.4X}-LW%?ne@1xY_?L/A*>|Y?uM[]68Lz}G{OsP4jߡ4I|)77IÇUSㇱI#rNsj8~ԒˡfyUGr$qݰmxm;{%NjMAs!ˊ?]FN։ܪh+anXwѥw?*wW ĸ_%bX{G+ 'x臷~7UIY#h C E_cx,]ZiاvKZȹV1oXnTdtռ,9؍k;5H:x;siGcn de_i6-FmW`F`g}t)rj-\G^D.ѷA)lPHޟ0OZ mA!k'[OD}^56;NU2@E+hfd0>J`GI,=vwBҔq}PE]ňS{o } »2T `}((q>nv퟉mW|$1$vOT[/]GsT#)J6X砾q8`Ms ˰sV8^/qmt;j]rrI{cQ)%_@;io@$ymmMYOnA1qt$0ӾUf*2e4R_4@ 5$ iD}+VinW2M FJ,6' &W|jqLsM7Im6P@uݨbO:n2('i>?!ukOҤDy^ G̟Q_/)ۼfln>@{/@K=&G6F%F@cGX\&ojd '1^ f&WWW4}SS*f*\>IeIOgn0WTюrNB`* WQΣzEu>wa?,z((q\ ]z|?|\Z]?>]2Yĵ%;fbxPEoNv7Fq< FȇxT4N.* >ivyOB_T&V t`ߞs6~nzUK6tGATK'HKO! }3Ӡ pmV,;:sؑS΁m`g3!R !_JQ9[& |5E,gv&!M3!W2q|?=.?Ƽś"dn͒N :Q,4W7e"joH x Ui9һ9}.+G| O g S R ( |w'8V㾦RG~a=%!@?5ϟ_g|e d'(/L^?ʡ/0ظS =,sv-@"hHOb}kl ^OcS20Go'X֢8z8ao+-g:IN"vOl ekwcx12{{%@|uH^ XPȴ`w{D#gEϣWPwidQ6L|?YpHg*snG!\lgVԷG`hezj噶tU61 q_% []xS\9"T9wr@c~klhBB1@6~$t/ R#|Uo#}jso"Iu1i4]f[>#pRVsdP5#qтx[:@;r4Ġ@2 EΫPdL;i_y]Gn8.z ۙ.-PCdݙnQT{ʉ%G 5>c3kAyeT&]YW2`zش7> _R>t_kOu>=_`* fPเJ vC靥校5^ɿĔ[υ&_﷏N ;73C7g8jpC1|<*?W(3 @\~&hsL(?U0UؐKN]"Gl=-뫛;/2egvR }m.$5G*#p&]F >9I> މTՐ/[?¸7aZ ܨ]3 M@/[)#x@<(ߞ_>AĸZ-H]G Sߛ%D"Jώ3ne"ye (Rll:^cypϛ.g7B~Q}{xa@5(R{uOC!KWC3,?S 08h@G#%ކ7ۯY V@~>D nQrՇ7`I#;8:c963 ؒ)ogRf[ƕ<{IVKU]OVk!ZKyLufIwq~`޻#.{hZhv^QC}o(xpԡP0ꞛ9p'K ;gro?M͟/('fU/ƿb~C9üuD.O @(wl (WƇ8~3GVzܝնN2kiĢM v9|vR4X\%tdo07Mzޟ8`A|uG,o/l2[O>i=atՀݙ['[a~lzgߠH>{6'6. i]d9٠|A2A$Ձ$y _9h[8F~DTԂe- :B)D_[pņ_$Q ^uSW(xZb:Q:Q__}-cPaBw;i7td{N=?:};.sǍڱK )y}j^,/PM`8¡BA]mN4GlL:Ӌk v,s6pac c,f\jTr]:q]/x6>[_!s!g_;N gї+ tW^& N>%}OD͗eʙF$ 8W\3l?R8@,W_56Ƌվ %t{ۇ2&]gQI썙,/0`Lo`׃ B~`uV tP [W !H']! h/2o7HQ?s4ͥsg`k_v U(, l@!h+_פ;m nP-Y.~H d{q>~ ̡mRncB'tCzȚO Q+4ft=ɵ|ޞ+hq2]MTr]o k_WQ5.Q_ Nb./@47VPF}Adg+V5~YGf^K'ߙ\@y>>xN=7CSMq ɳO(.]N?4ʺ~C:<1wPvM z4 s*}+.jw=x(54)C tx)x_NNNkpFWYiRiZ^gٺ_hV_9:[- +7#h >Ih;@ i./;~7{~'67)1 4lxRێNPŹp!6^..?ٌg& yC}+}qlt^g7iW;8|"/ RN> h53cI(LsRJNt?#*Xu%GsKQ?YLKgJ=N[r"=lsh-*drcg]Wۧ_^?"*d`6vͦ_+Q|_@}чb{%sc_7s}bsA7F|o-1j.5@/8IQӾ#R^X}:oE"gύ:>za检pBK暽CX< 6v[?: %yw=25ɾ {8cQ"jھ 2Zsi6?_`O'm\20A:4>O.n_xug gڥ>iqz&ՠt%}^?fӧg͚tum-k{,~i,Au88s' ޣKibvF>HYE+c}ЪTdsb\^sY6eCd\CO=L$j\V'<4}v,`wH3BӅ-L?H|C{JqYE8Mp5Nu״}44ѭ0ܾ˿cЁ-ӷ>YC'%ʣy?w:;0;(Ș`tJJS/\/}/`OowQ=[jlX(c8SлϹo^ch /V}9^'tO2j0=d2v[!!5q`&T/ۂzt?Nx|'1< dl>Ii{M4PiQd0p[A9yzQƟ?_E*?| D?$8WdFj8MTϢ,VDD|"<ۆJq $Ryxoq?$jQ̦I+*TJ.AYЋS`+TX( H/r?[؁ܭ:*Ϊ67C;}CrYsڵJrX X_h7Td?gxgZQU(ʣ-5 Qᕂts;WD=FnKTSl}y<">~(/SBQUw\@lxz[NX KR 9CO`~5O 4:@bpM hOۊ瀫}eGMLO=8'nk9txKmz, 9RA}P2Da *z,yΌ'5fNXzh[R1QK-۱d%ս ހڌkxK,rnaRܐV0h?>T+a:4aR~Xztz9ިq|=iaI hf0"s Pcsc⹣+[k"}};'y6I_V`n"[;7[iI$O?bv/ @g>q@EB6"rv~4#{_z;5rc(TB%B^f,>/%-. U)maߏme42jB186I;^¿L]dN7Omsn0m{\jr ZmAdzYN5R@_kzĢF{z3s3gSJv Do:lNFݦhYE:cP{(8(HotrmzjqW ؒ˸'+?~(:p/?WZnN@Y벾wxG[qi%RHnF5;~COdހ(wQsft=j~:!C@Na;D $Fͺ[[jJWrDMY)+gK WI-#XĠ1H4IuMo+'`N*y z",[9T]^>MOg.tஎa=S={yzu,y=[ͷ%fcqǁιm'"0{RbzjY'IFRwӉ6f:kӟGèوS 0jB;svxT4O4ճdw<(6cvo֡7^}{ >;3D\S ;Bfyr}o0'cdjd6-H؍]؁.{4R5hǫ0+u;+󟒿1xtmUsL$VQ|3(_Sø.ozoB|7 wE ,.οCzR7;<:qsd hzy _GM~/Mӽʁ L,= W4|?=&27r{nAN w2ʨSoroY?H_eyciB0IspC;EDS̉l=Q,\Ug#E_˿eseWme&gkDK3*ڷ 1]7S '0E} mj.n4e g Rf묂xV8Aڒ ksx)fM"9$# X]'??Cyw93@ϟ\ds##)X!EZs񴙺S' 9*W9j*~FԇS%"90o˳ֿ<}pI3zOq#&u~֦<1+P8+O[֤`0څu3Jߣk z8Q0]9{=Al vVZ#v\SPنu kU(Aĩ$H`sh[%"{w$ӞkVb1,TwQU*,CtCT*>}x#[/0r+3"XA. ,K2?VSX>l^f ЕkE㯫wTo·qshJ{fdh14 ۖۺ8ZY$gsjOPJ݈9P9v79 =guU/Ѿߣ|z̃g2CTmH&-# oJ>"1RaR|,HQ htt2mEMMI`I{_U&S%7 }X߃jMK ѱ;*9CG^Ihso6qq!>,ދ?qfQ,j{S8яǦ[]J?<ųD(e !1gU>M !6?V rtPbD v\猈`q_`QAgkIl)]hRPZ /*@hwVVge݇5=@0a$p J 2z"zA;0zؗk/b8Ž_Qx;M<[z$&ɂ2[Jf t [ԑWҘMcAWe"Ʉ?ybgXH*,Mk䳄zn@us~c,8O9! bm咯ְ h\^HF]q\܀"mPG͓p 1д,1kgE9OKO C.[*t_Jl rƆ/BMTC331i v`M7JDA/ n:w]6Nw?>x[/_߿ ?? ȍe[Ѽ)2j\hėƻbYi4c|q0gON OMdfɑՆ>{kn1CKqIX"]CŘH鉄vPxr%6o6vqsmHq+z^ъyԗ}AdQVc! {q2I '!M z6ѐ>GYv\_]FUMȑ={aL8W,fϓFFYHk٠?}`4ơ0ɝ#|" j9B)&G;#C Gۯ8 S}Dt|e`,^9*^SqnYMB- !g/W@hYW SE 74[s?j1sSpaK;S7[ߋK˷#SGR1s/e1@8*g5Z@V .<uB-P J~z`_uw҇s79kߤ s({"eJS)GԿ|eTs[( B_h=nCԽSK@!8Z⾔syi}#_T29@Mr|'s ۔ 4XFc,?1@`?n/]@K X\Ax>7> F?/4d$svg}GClz`C6_͎(>\t$!04"oc&D. !V$‚MV*ק93Y,pYIRBt 0ɄX(~}ϿidӡSA@[>S z3ǶldC2`I> 6+"svk-EXӷƂt1=/Y8??*ۗQ'v<>? MFK{ؘZ:~=*nm %tΝڿԀIiD+IgJm9VF?{ȼء ,ೂ_)t6˸L1hk:?탑= 6Gm3V:;s@l'˧Eb)t1},m-h(hb̀塄mIk!uaUߝS #]NM li;gC0wז4w Rc6boY_RӒH.Vu];2q:tDYP e]Z/"0=c\rFr0 ID AlK7l08S緣qHWXaL61}k7^S qY"岼#s`_ )8$ JbQWJMHi1,<5b"] xWs4#tHj= ' u ǥ~w_s 3,PXQ]=I}ٿ}8g#Z_ACGBDz~QÅ/II./)F%ow(-VU~ , ozriqM#`Q7qeUIŕ.}l$5x&#{hi7H|߯>vk; QyWn,#I/O _|YUQ36.]_/V6'I8Lplj$aw@: L, _繚K$&<969Aos{7^}|5d#fc3 eeK.hh20A Ҭ d΍bIA#X.R t#4 u]:JR+-)!}9<[L& M&pYc!h08`WN[zRk`*v ӗ}x{1*ugeg" uy7˻ˢ(#Wv@TZl>{Q o;r>TCϟ|YbO:py$OwfJicWcw/+/'7^g7E0/h~q>ڮ[E?|<* 1TzТ"nY (=4I~~5l5wcL2l8yr&#B7?5&v_T: ǍҪ@ i6[[¹jOz-xDg?J[ }|\.>SvV%8:u0a*w(_L$ 7E)uݴ5ifGtΔxO*IpE97]Grh'PʝYYD2TM, ]}/bYDML@ͼ=B>k$!D7R+6.g)L<>ж E;5/`V8O@sǧ^l<나T¡]]|n'q;%G _^:"K x=?0(#CPo/f2u8 ڊ24E&@>鯑% hL_MۿiZ9AMXtZx& ధqnO:i9dZz#s<S[A>g)ϐgUʝȫ o=".!Xr0<M v8"WhߝbeFm?/ gg| t0sYyo1MbX-[?^Jk.?ߟ3tp~d @1+0=C~ %Xe0kicqs^BR[23}_9ct!\~5]UZP7ڐ_'ഡ|?r2>%)Ɂ$DXtAB^SR,)0iq뢺0|IsKdEtH4P質jO=VOĔi6;THspG tfa(z8Xmh*9qhcu,49ţh:~.2hV\?<;l+eukŝsjU*5>ytG)vnED!JB vBүUFBOS^*&?JAC9 yns/N#8|Si>ף}N/1ẁh+6Ӄ!%@0\a=ߋґւCz" )uϽ'*8k8mhjqU0vusNE($[m߁6ތY{T{wd9 5?g"3r$`~ :KM>}V`J& LgC}2̹_cc,%mϿtsf>ᓛ@૑9SqA$hb,M=!3+1uLCyt/>W3KޞAC7AusxZS\VUڪ堀'2@Ol#Vߎ=VuTWAr@:)ukGV\&6`sq |8g͡[zl(C ~i;Bn:'|TQ6u|<̢ԵSSNa2j ]0u: Uwm3 ] ߊQ9?j{뉩-#_ѴʹpK72d4'bZQA/k~R {O`J165M-=))g4Х"2;kf'qL< j4~P *ܛ˧) ' 47%cW Xp%ə4OiPy5I۩L]6`Uy߾zia Z5zJɄio@%6X`}&ׄF1,09F A,<{>֣|3kq2ח335 E!^., (i0>8u˅N[FAX~(wӷfաF~FL&<Yj˵ӂ?u Ugmy?;ث.B﷠7Х viQ'ƣ}2>R;nxG  3q0 )@t+ Gj/ -2Dg[dE1LO;>Ec|[`ӗRx 7=,Zlҳ_﹢lx[O"0qCg~]W/%f/@Ky~|!͓rfn! qaKEO {=ʶ@ ؾ^RʡK~nO3ќ{`mOԲilF}PݳF"otDsr'M VۑEw6ym3iqR: jlơalMGߣ;4k- (i ,D tK'+C"Ɠ3f6_No aQx|tzϧ²vPm+kJQw϶+D^8L±MCvBQ@VRqOSX?pl:y7bLVPCY$}!$OUF]oq`Yq% |!/t<{Kdx_e}#F 铿w W?͝[B)(ϔ e=?q` e:"S=m%ٓt]_(By~`k Ϛd.'*0%) +F {wWG5?'o֋vjha bpo2F;[mZ ge95$ryo~]UŮdZ$3 E< . ˊe9DFjBޛ6޷;Bdh\`j _~:+v>hlCɴ7v=ojCbI:m%z/쟶q/MW ة|R\PEIxU9V,ov:GXe<ManKe!3)V? fy:Q-gջ-'K#-ߊJ1!8Ak~I`8 $;;&!KwMGӛE7R>vsOcwUL$zA.51z hR,~/4{Mkh{\ 6` q_[a,Yr 0D|?6Za&.]S[ih ֪~\# 8C/.: q>^6#' $ռ'C1MuB[ؤIg+_U75*8_w(c 쩰DD7O!Njݬ x03;MOՏ*v7j.z7Dv_.6x<OlcLJ<9k~g'5hh?fu4ekCL\,Lmܔ8q2~K_yvٱJ;ػ45o8zqYǹ=#-ة2~o"qm5GXӻ_#INV܊[Xr'CX3MhKƛzbrKͯ[u6*F+wdŋ&>9?htZNǴfSZj0ԦMD~[QѕSA* uOܞcUl֊v]XDynw}BE.!Ϳ4s2y@p^N '#[Q9q~ϡC[vmX} zJ6恍EvO7o@6騟*PY?SNwLc~I'r(X65mƱocw[z TXS Z{g['z}d%GQEXe|}[zǽ8@;1GϤ+Ǥ9,ϔVڢAƭ*DbY'H #ژ13k2 Js݂ sGB4P;\k؂=ף'X{pS7MAJ(Fk h TfTow?Yb|`~Rs9m,쌒Egy_S7thw=\; 1Q95@ ]]_I"'7d53}?ؘ"bK܃Nv&uD_.^ NfoX6a^ *1//% W2k`vT}4z'f׍2o?H`.?H9?C"佫\qw7ҩl@Yw3_nݝd1tw9w'S<;k*n~ҧax\\(n6.^ 1dwI=/|R^xyG.^2n_~{9~tظ<~ i{|V`P?d3C10 *% ωY?`;/?韽?{D֮3~5߿XB~bȵѭYqqCx;FW΂ev MV ,(06eK{_ns,mp5Kr&//`*$ 2?x"= wۣV֔z<ƝhÐthxjJ 346PW񑵎,rnY6ϡE1[:i>c"[ࡪ]? K BNoΒ<ӵyzJNO[T )ai- P3f!utP%ր -EC9sEB}C$Pmh'Z;_`>8JM߳C;xǩ[M9{=H2 >Y7 B[:tڛ1z}fulC7jjm]y_vBbn2e.=4TՓiuGk~Hi6ն&k?~[A!wtΛ pe4gbH_ڏ=_-kgt+nF9mU- iQ@Nи!ScXrZTi OfYikNJԏ&X[dMgDS;YYx@uuOt>֟T%Þ7;WбD) ik:aL`CXB[NV[eְO;%Lra@f:KT}60q@o֔PBVYYAW&_ib܈8cxgA*~(hWL4Q fӼ~\kbA%:3]ǿZ}i+di ow 3zUxtgDؿ%-rx{FW/֍1jo|ZNJx"tl-27s}CcQC8 }R<L/ 0~ Po*^ma?ӟ9P<{wv޷%eub?ZRR%TSyG&hqOd2]| D._\)LJNx[{2)פP7Ip:]G$#O1\/d x{7ȔϛpiI< 7i8*@?!;rêNm:n5NPf6T-?@ rTPQ#>ҌG5tr[Q9gf;vڅ]px&:jϴj}w<ΒP =9fQBҠn=ќ)fLoqPy鴴㸏At= @6( qүYۮN@ڵ툰wž? pEE~A;G1d%Xʼ|nX@O^%g2g=J 1Bu$u[+sF13M+Y@& %[.ƣ]GCLxXeθcIN!3A@EwyN;F@^:{gxx-a_p$9zI1?f3>Y}s̏(M1]b, gjO3zJ r1wUE[z@s# (UA'x^9l2OqJAqr.Xi/~M p $> N ­@[4L_YyٯYzs/<}lI;7}@-W]o PFfay80@ h͠ hCq;asZ\},5 %EB.rˣ0TO;P}ޛ*)$~7l<@X#bw! e9ě`\ٱ+9gP7*8O~j!{^fAӧAcAxCR% tq7g W} ;:~cw}Z>Tۊ 0i0;uG,XCNi3j+$(sM',Y V,2ߺ䞢w+.$ǷhJvM+-Z^ς./0Qz sܜ:R ]9`}]p8Ɖ2k);?~ʐ׏-vډu:GYP+޽Nj{Q\1LF_SnC𹓐bta5myZ2-pӯϓf[gD<@Z>//ưϕ 3ӿ;w_1Yo!`ϴ$٢י$]y::K-4I/+ʘWWG)T1Q i`~Wf5Y+ZQ}|1t&wxdMK^ t:=FQ vlF8[?6Ƈ~%]& A{":Il(kvR8"ZY2TuX~Cyx'x}9:@8J3 Ɋ,R&Vw|E6 ¹TKy16tQrُP]X7ꗷ,)Zxs[˕ڀ1Mw;kʐF)cQb;JS穣Ԃk(+.PqOC_ SbjOD\X2KݴWƖh=o2Ĉ, egæ\ }жyѸcl 8y؛{h)I(L@U#Ӷ[3~/d~ Tk[/iNW=Ұo[.8?UFv1GG+[}7)F[2hǟqբL_bhe(c>}a|uدӋ`7s1+_vQuW?`m'Q@)UZ4@et ~U@h-*ZׅP"&L Bq8߰uks0ߟ"-.bLJj Nel *+Ø>$ mQcVJoL>Wm 8єxZd?QYOoռ8׳b/D_O/k:cDz'8\1_C.$k_1pEO+b<.֙5| Q+ :p\d3n!v6M}?I<4:K` +PK{M/JؓuVOQ5HL,| g:XWҢ DΐJ@q€߽@4}~ꓗTrp/m81 9lοg/\QfD•u1~(!&§%YMG!_gYN LU **&Ëi,o!#dO&Wg+a5Ib،quF§N]3 V%<غ7^ng_BtyT^u݄hBߠE:AG-8TADO#zfKZutc?\*BHTs }7p> x:{bRܜP=0@~M5(>c/?<>HIVf 0wqd&+ rnaBsU,5UWbu,>Kx/-zZ(NuL%":'|0nKvgi󧎚>~{t˪p!?v*}l hEcu;In2Ӛ4WGaZEIEg}v&S;:S ^jL'l/jZ)vZ|VzQ #5]H]z~'+`3.9ۜ`h϶knWf ò~j>YlYld;Ar=t-a $i{%d''E(=@b[.ϽQƤP`qNÞ[G$GE(Pε6IcG8mhZǐQ>'ZqA6||8^-3#NGn Qo(/0XBf+n's ]JF _QLo߳]-کyG˱ 0Bgi?=0^!  cNTF:Ox JF񉾖+"/n5 ~jq3O0;!#H,&&+fhkℎ񚌷܁UG//ӭek,qo$a!)77OĎuskQi4HK(cOn[?%obƿXNW I]Lt($1h-'PY9?OYg[,"YY&-o bPg$& 5,y={V=oOʕUFw ;0mNSd^JH%sU%&pV L F׹K'uH6A=) ~9 hInQ{4 -0lv|ޮbn̚н mn7-;ou+?in?2A>?7o9X piz\wPQmְ|}=\xE(*8v %3ӫC$?|~f_)eS!俕DH@rۋp/.;gSrչ_Oִ%iPk76J>P,"%phh,65[S2g+)BB7aԫ!{|zXN)4h& 9 蠿T)^8v5}g_O'W6=?K5M3 ]v5߁Tϳg~?ͷ?Z>=b*7%B.M鞓IX&_*:9Q%.V^ʍ5ƜB݈3p5癪{sA!ݿ^qH(/Ow//N+nyF}Ӈ+Rz<5tF9:w0ScD(äJԷg3Z Zz>_A\/>}zI&7 L%:l;,1˚kNbmQ+H 3ro\/c= 5}~S@{m@Mcdyie@8#6ͽ+xgƒV:^=Ƽ7#_wdE^GogҸ/G.܈Q=a6tYQ9'4Ёinab[o.Y@'uyB Y3Hhۡ'o};RA-&:$Ҥ˗OR#O}̈8ʨ T$Y X31 읮i!S5]kPLbx?1sw_È4~!1ٯ_f6,{%4}- qVZP⯋ ~G#ճ4*/W%pUdƶ%Y S; 4o''mtuzL֣/o#%6?ѵgߢQ ˇVf6<.&u=z$( ѨtyKOy.ؠw;~O(O!מzuE隙CcMQu=q~k* t]/X(JJh0BYW IzBMg!FyJmkz+so9YlACBuDKkС+ū vb:H{rϓ깞޽{kͶ`XfD]  HI驠1~Ǡ˅" y)]^m/u32'I?3ԁ5fhHqE#ճ_?2qHa]"ͧp]7VMTv)nl&C_ k~ul1w$W|FFKX "m&O..nRD&A$&Bx?؃?,O[œ!?%6l,{Dx__c&KM`z+"7F'_eo`D+RcU-h[_M֓`{] [;8^>bUnlf&M2#(e~ \)_zq~ϖH [|@ Hbv3!}`.t2EAM(+*&pV\J:ʼyg0o꼮-UZL=nRҘcqy#š1̓B7gO2 y tIK.HiB 13GjOf^jA;ƒE^($HWĎcZ+[ӗϿ>j|x|?n|kȑH4^>$֩_|cgFSͣ@oU,ɢ&0UJ2ȍqe]w }߾ dgk"yfzcPcBH;LnQ >9XG(6pwp jaDYF%YŌuP.[qzPwHvZuai'NTq9w g?zR@7f?x*#Dևӫ[7D[ Kh2JgRwpw3/cfMԪ%"I#"ՠ[wHDu澸(PⳜG?=Fi|>Iߺ«C+jYW3}`ś/pEd,<["H1[W5`nie8_Q_bC^)4%HXҩ^]tq tH)/ _A M wȐaֵ[,q8Ί46T4u-gU={ W(;%:,(QnӢEf:XzRQ5.@m]P}Ԡ<׌Qf04fh<8\БkIS0XG)yYB,f+ r!߾??WWI\a}(#LAXbZ' ]\a0YNI c"{lL4HI>oi.80j,$W@F F0 V>Et!Mɩ[N^R+kmol@Cp`mwudb1TF<@ߺEQzP3ڗI~%@2@o]pj] ߢ /`Nۮwd&?QǗcM\xI58^%7aFPD墮LX6s@WNbVN϶0L%}BL,l{Pè>4*_jkgWG|y8ſΟg(.cjJ,Y_.~hv40x@Y#_| FMzl][,}c-kÉU)qx^h,_3Ip[c;--40rʳB'7I{UYXubWٍ E=/}f£)Q..0&qlα''Q@+8:%:i g&b&F1HVed/ik0,8^i±;PV7mzƐ4cd_/OZ.9V>FS3&rr&nVs4W-`]!BY΅[4yLD$+V-Ca1!}_N,Y_6:=L]nl~Y~T͍;5Lz+ 8DQ,%MVQFԳ@ +Y-Qb~s~|lGD6%R5ەS"Pu,S/-; XeU:چH`$Wٱ~t$2:r!d9r>9>93Gri=Pd&;q<[PHW Э&L87"IH^1m73g.>kFJ[{PvU N<^EÏٟ%@auPEB~My.u5y6fqD*!9emڪza'uoqۺ*֊vO\ 2Nտo}?깥w]$Iܣg2F/<-C2A2PܝpueF?_,Iz뫨Kf9ˏHA7)1߳Wbw #B!-tR@*tZ(gҴ~"I#&:C, ~y`@đFS.C$:@| ~BN) 3J6YP@Fh(w2}ڄv+%գ}(t-"=ѽVUoE|R4!w?߄ԛ{!'14wN=GzΫ5P?o$?–+\6 uCeFZtXVK*-b M*FoK(aIZ}cam$Y[ Oݎʼ'] d-Ϧ&x=?shI3ƊX35j2N3 ֬q5=*?hRIZb'._u._QUOR՟_~.gk;U?FYe.GY7x )2—1$Y1~Pv!a"xۀHi>YbC89wyA~!_X+ An@ğ6!Z'*XҎM@d$/^@0!i˓%&(b:wᯭl7wi5#y0!iEl3A/dqzQMZ09WA,tXxZɩʹFF`Eӏ& Q4jxb6+ sҶ=_M`dQWLlʏ??(Z$TY8UD7(Rq]j-!~: 0 4o ըQ(SFr=6iúyotX0DU_rPw*lDl{Pdj uO ,Q$6&1-?^~0:I{!ʴo~}}u :SNaU"ψtWؖ [5':)R~ǩk's  Ix,o_mv9 AhlJoA~{ux&\ N:pP0eZJ:"g,/Xqc"cC}`0d>b  u;O})>ۘ6OAhfݎ;ɁHq<w%U:95@&AOxhDs4u>lF lӦ/YQb}` f̔ w١L=s=f96b*LL4B;ѿ#w)0tr> Žy};tEȣe:h\o4Ԧ0խ~A/ƌþ`/,Vst+' X(17+5LfVZB[57* &Dz|uzd+4*VoL*uNZ[EsxK1(*bƛ̴K#⨒ Zv:a`ʓqUE+MaД[ }߰J: Ϙ:֊~`l"Uz_Q`~\Mo wUec :hfx2>_MߊNp|hNAdfؐnmՙFpzO-տ1zww]`\ce,"L~3zM`= 0(P0MDC%> j~+q0KEM]%G^HP|ίx }9\&&=1`UDXı#EpʥL&3tj lL&?t&fYRŰLOM_eųg~7.K?/ $"4pEL 1LnK|+e4p(tW#jZOm$V<$7z_? q}ߏI?ٛ@}|A`o=MuF^/a4|@vd$4xgȴ~:"#SU jRx-RXz Fzj%9}[oZ-v}BԂ&oFX=U T׳fp|8sM`TVB؜^?UpFoaE}逶%hJW Ci=ct=/KRP0g]|hd۹{ߵe <\PrB]*U/0/ihEj[_ {*;|Yv SϳYa&h ܫ'O ( mQq7;e3*dwj^hX`nեO::𹏎+`9LѠkg׏S؋S&QM`^=B|b0CPt4FNڼ9֓^MH`QFZ$FHT!|wCϚ3lR^MU `i2w @ +i?>xXk ߊFZ^emcQ1a¸>5ofEoM'D,t-kQ 3toDhbrЙ>4*Q385g 4񻚏ǪA,.h*qj 9LSG3sMR9QG8FkQي7G~Nl(@dkӢH eoh"}_w ̍*/TTeQDw|n@ώjN*^+jlRoz=OKDuN(s.J\k_qC%%|dzw¶B́b=0oVX\û `m.uUָ 9~N]S0#M! ؈hW]"O_v`oۿ ]bO~gL9>^iݞ4vHh*6ϵ\+ۋ^Hs??2 U 6Jf-59wzywϽ~-iLo cQt:=P'5VU~] :[ ]hM^I8EƘ  KK}`V ZgAũ YbJ9SgkPХo>X%N:KP -LwB; iɏu{ICx=N)8F1ĿMAaM-.8zFx#/0_I$'oӊ(p40zR#Y{Qy$D<+Hq4utLp*Z稍nv60D`GF\b,L!Ӣ]帶ڻ[P>q'mvNR񡏣t4MӳL#F./$nZ꫞b*tg\|k趰D< ?HU\r3lN$969 .D()uEօc6]D95;v>pei_^dSW} ތfq ,}b7:Tϡk} ~_@U.?Lh(Wf}"rѿ}8{~zMyJ3 t_-Z@>|r g$o@I~N^wQzkBԖ4Kx߰֓Y^t.4ol@DМ/o\BkYyOc5C]1G,{9nfI(X]5Sv<+QC86rGdvzLfÛ3 {Y?f #fp~~?Tޖo8hQ@:=̛ԴF1orf}~EV0S|L& lg Rǹr1oj#/Fw z,3&u @?nS7jUp0+Ρǂ/Ěg ه&$2u8,uϿQFcF=4ஂ&4C5tNX> >I.8F Cmz߾M-Eh`2j(`#umӨ%;ww5wfdMsUkx\Y2pNO`QRN$:BR^@-!±,$LR'cD_Mq<Ȯ6v$ؕcj14Uucq`|hDU2 5qT>mZU /du;6˪(lk(!T_@HA;uw*5@6iNѿL+FweCsjϦc4mqH>lM޽;Α]S;;ة%4oi,lg%m؉~v Y 􌏡+v9I—8Dж3F1P UP^Ph(`ilFA ʠS;?VMd ZQ9@I [;0 ?~(cBL+,S7P0ۆE~J,z~_^}r\}k~ёKcWa:`C0P?ǾhTdi(+ݦjrj#Z ?k}n뿬[U+vQ?WLLr B38o2)s  D?,E}#I^!Uo 稾ۦxXbz*YLSjEݶ)! %֢0\e=Ms3$ ioQuݳI d? z|}Cx֪d7QU )kutv3*vFP r^ٖlmj7"ݺb|sFb ۓ&Q NߺM`q? 4F_S5c-o-7lY+ܿ~i zWe.8 b *;7O,e(O4gp1#_Wy^޼GG@iut0ps,_:B_6ZLۮ+aXjB>q}M CZ_~0["QjoMl/NO?|~~ӯ/,Q# ]A~L/,^˔GE%m$XGm)Ո@ߙQ8|Fqpuo7 ]oO41J.cI髓a_L BA='Xn℔|Yb4z]sx nFKkq=}^(2O{0QFJwYTA}vհ,|G#]U8hBʠ(ʘ%Fg0-L}Ǡ"P\yNDk8[M My.1 '֋Y/ t ^ |Ӽ7TUyQkv+C~lP? @!;O` p6zm4o1~ Y7O }vh8d$P!qoQd(1vEҏ1G-5?& ?p4.k}OJHDNJF7Х_[bnԸ W~jdF]X`u#hZseMOf(@A5c:#x-PgD &uSG%{蛚Ư22XWl}٦lwk}W?.w tmL ilfhڥ36{siF[D2Nf_??'-nJTsPZ+"& R r#~RA0>?s7~sw AhMu*[}K5snn ; w_տ~r}Sӏwj_D-u!\H@MkqV6#FD#A_,!,?kQu7y39N ƳZEgZb;Q 4h@ [Gx.!7J'E# x(icR=Ǜ.osw_kwhd&r%M)`߯Oޭ/i x/S?8.&KFzI?Kv\Z݅A}g㽘>鏟?@Jjd8 :_D+1ɠ,$ϧwͬ+!i7OPZo)_ѫq};ӊ"7|C3z!*N#2}'l$Lq6e~l[9&AkRY4Qґbwu"%>Tg_E1WU&5Ltw]60Wqٯ-ΖYN<> C6Q Fw`W~ˍ_>7_?S7 * /Lƴ%hJZ`BˢbW_mgm&NlJcW~ogo 4J[w6A @DZ\GHʱەpk[Umum@EW{??FN')M(zURJeb&zI+p\v0]AVjf_oAtJqWF TTJt\ϩo{w_EX IOXR!"-DQB?j0dߗǗ-+wW0JeQ)~" Mu$Zfj>C>jžо} h΂,fAM*=u/ sϼ6D,GTwgYZt@P"az#1U0/!&^0.kh%i`DZoBDzhȚįV k,v1+t{5r~<>k2'IGXa-7_f} gZАtM,Ί6FWQm/-ْM5LTPX> +͗8\ tAɨ!%4aѮcw: gެʺ~%Dz~UnҼk)~)n6p/.֋ڢjbO*tY\TOYʌ "H"/XlT/J.U[7LoN@&;e#tbTޫZlt7篸R%m %g*;d" Z]ߡ|&E1l9/hwO+`sLPϝbϚ^p2ٕ}2:6$VeY o6r=Q ;m^5‡:vUd;?;Xp¯dUCXSǿ0Ȩi.\ 4?Kd((:Y܋bV5Nhn!V1 PW0'Om6ϰ4_W?$5bq*ÔY7!\yR8+g* &r%Ѩf69Ӻ8fCd^?cYsD$ S. Ybް&MEA#ᏏNQ9AsOaa9 gQM˷=*DF=qʎX @%MO>rqhN­&NU>fj0wަfm5Yj>lO*Zeo9;[ؕ ^zj0#|<ՋJ1mN̈<^tw^EŝwOOϲXL9l5պ?鎃z' Qhp] 3 H}hWXϚj{@zaA>M<fN[Z\}m `X n{|>`Dg;>txTl?k;4v u}TcEDj.\߳ MMdBuDCas1p ~8[F$hqD:~} j\ Ýb>j:iӢY:Xk\ [F* X^.zJ;s^^ǥƆnlB=:KhrVM 5׭H-H֣7aI%y&Fs}I f9</˖mKH:0e1*h75+`_^4`XI)T@H+u34RMZI "a;R!,PKcT?e7Pk gs6G`AH P/oL߹9u*X{N& tLh6̍W+BE9<XnOĘrQ۪TWKl\Ir^3Po.hVT*[_@%$lH߷Dn{-~Oo pnZ~] !fVnn\_1Q?jWt|5_* 3[~%0D;Z\%X] nTc#H`#N]n/3.5`ӎ WSb`ـHMPi{ M=tCw4wwK4Hzb BZ&v0k%:hnHsmMHtc*cx˜r5ճ Ԧ{Tz_O~/_P6GI7-K.7֬8LYqyO~v=v}|PC?@6%oǽS mсzL֡]ݿ/x}Yx!(OR$RTqئ~ݜ܃ J9Y{jjWdNLAy&4|wMe )7B'#RBc.1v\gvSa7 g,&NK=H8vFFZqq$7yj8^mc~$j]]O jܣ5h@C+|'G}н1 E& !_D~6y_y>eiKk<qXO$b?钾^(A.!sckIxǐ 0Ž~3N꩘-:Ns!ѐ'oGhNtk=a:AӋt"\>߫ sA;P3ӱY$77nOKLvԓӇ8_%p6VP`Kwae ۏ-'&zM3t~!x!t/ z':`Bj[=ʫfr_ t+_h?cyVX!H~vϸ\X)oTcUHMg/KZߺ}k'[YI'lQYcH54r{]V=Uűlɶ//OU0T>f#h6~ѴW4!P~ s-ۿܙIX~_& H}Q} ?#\̷c;^|m@ -\>VJ{{?~1ulڀ\|JW ڸQ& $I'c ^>l^X{ɕMMzyi?`Sh+^-ЕiN-COr1u䀅`r {ajϬps5DKT|?ii?<'AQϓB0Sg  " [9'.bVmP\Y$aDbI&-4=a .F6ۿo`90?n`ٷ~3j DZߺ&rm{o>޻B ͥ:^ci+f+ `9W# ceM^o}_0`Gkw?CeAdѝ=MsڻќI\_'=;;(e^׎ōj6I:rp,y? Jtz_E~իܻw J3g|l#rn80hi(<7?-" ֭Uy@PZ1_Ce@en|뫪& ~=j%tſet=hw7X˺\?MBV8E2Aet\GI_#Ym֛;ܲo#{^30iaQ1sn$4l?OqQQG A> _aG4k@K4ѻ*X\̙rUvȍ}kR)ۛ+P gݐ"~ˠV_m[a`qJY?t ,\oRWD8poV~B,s5)f:> L3n߽kMku5z{lVo< _WIY_v|?{Yi*48؜ȢV*B(QlF@+nֳc|^nƲFak}<J9#< ZILp h }H Yՠ !qBH4]t~&K\/0}eMA/6'ȢTjijF :vBm$vFAr뮉xMϾRsh:y{BZ>?h9ԩiyjM QXɦ}P2w_𾔖}VwZup8dj4I%}>/ECS6zl"m(ςE~l[ iOqJJbs/_AL眥 (XO@?ccׇcV3{w'3+5 6\Laװ&Ar}3?w=* x#C`Uf/a0{yȃ=rmAN@AĊEmb٬pm楶b;}^+Ni5pq]5kkU7_%__boT/@h[|uTky.ߠRc5I2xu#VYY + ;@X™h'JU-_YGw~^dP$A={Tr'z~\1)+nBc 2ln#믄P[ٿ bQQvmhK_'2Rw[>Ϝ=kWxR6@y~9ʢ $b0\Ly`hV-?0 "D\C`&:5kJw앋ߙ]}j2䂀k`~znA*<yig*FhEhT| ts"z}qDBg,}Ri?Oz<@o,SnN k螇10_1=_'DLc{B՗㞕BQs\<WF}R@Ot : ^o%hԣvy~t}:QEH%PuSm9G{'6gcJj}QAKB[tρI^܊1 φ }<דN`pK}d +SwZM 7~_䚣IyaX$)׶}FB@5֭V?14 eP|rBgsZ!am/Ɠ΁94|d>)"sit⥘>tLqROYteN_ А\,~u&CUPE5(tγx#Nkw y\7S=O_m6y6E(mJtV.GHaPdtiE̿aKJwwt^f^oh;H|?w"K_Gl}t~${}TwRwY )V={+*wW뫢5Lo9/7^t/ɒbvMBxzX+F,;5~0|fFM%Ha7V^ɝQ -/aY.0Ԡ WdO/oRWW0" g~S2GIv]՟ZAmAXr}[E?:Ѷ0f^G ͨw2 T_( Ȭ(u"oϥ}__ܺIo;塞鿯_eYCLHOD:g~eETN@DUܓw&tz]'B~i~>aҲQZH1Aw"S2\޳4 NDŽ`'h 9]5&3{ Sؙ^:u3NӐȠ<}(Oo{0Vl {(!,.ІС#fF@Fe ~C:Vq ʹ\6=e&֤fAܾWvb[x`qe4ѧ?Q{|Ŝ_D2Qfo3"L%Nb728.%DN-a;; `-%i?[{"mw-`4[wA}w¿_E> jD͖%{Op_#1jP#0@=~VD~kE` VMr?c<"@u_L"Sz,NEq?G4ڄԇHL^h%ZuA6cec *-P*h80gAj=ٯD+UΥm^&ɑ z^и Etujத_nDE.覵f1%6a5gv r+73OQ߼!DQ–j{C7 FűrIk"Qھ=noM^w<(# ֬}߸>A<3og ;$m 07*/AH@فKBT q).` (h 2Lt* +_ir3hx2kǯm_Z>F | jfn@h\S}y.VV Vhbm,1^gwT$#sYO4%v|-va"pG/l3xC~7kcpġLdhP6k+fNcs|Q~gHaIg ׎kKwPё-$:G(KI4 ?)2 ".߿+U %}}s&qRFS_Uy8oT~UMﬗ?ߠysi4(fqRQQ&85&zQ;}j>7,n 5}ω?:K(*}`񙩹t]^ĪDc=%84ErDSQv%J1G/M< F'{ʿ&[!AMm EF^űJ_,XEm٪5>1at%&/R Q!5q [qhv+ JT$w4msK_GJ8g2[u*ykw= ȴ;QFVʸKݨ鮂CGͿkjf1E2Dr%cu[3Fpɢ׵O(`y5sri[?H*`CAwx-%L Г3H@RHjB™%=2 ^8c/YU0F"ֈ&}ƾWM*D#U&|Tj_'H ?6OjR K ԬEG}>O%E#$=>-r9!(j<,cr_ToA,d]uVϱ$k0-m+؇_.]Q0 Xss,3\Mi*9<jIe%K3G0Kz,t@oG?$޼6Oc!Cjѥ'QS8?h2r~Hˠ[P-zB?+ϟ=Ge{/X)@#-9i:?kL ÛQ#Ċ/j.~*q"q+u"^dA"zg57'CQc5~Qߧ`7:"xk;7yMqHxRfoH8n?,i8@+LͳƧu84&D@c'ATxmX,rYzzږ6#sZdO ` V9kDKm`bVЎ%}oP?XϪRC.|Y~&q9X 'bf|'`3ԳJ8VK7NΕ4'1/mAgUG(KXhl_T`3 8꙳LG@5sF}̉$@< V1[s:¯/L'}wTGZ:.tLG:{c\wi+Fikϧ_yj_~OlN U8ЩS{9O[l 5_O\ 2⚻M> :\?s}u:_~8_|Pt&p,֭D2ܼo ,tz,_(|Vk/-IBdT;`nNVôhWzm2Ot IM QAي_?z~Mk3 mix:UPA؈q$JƬʍ}tԋky #T!M#=؍f[oos!2 .pMs/*Љ&kZ4qFa4~%ꍈf: p4̰^"Ba't\a)f8@P]@oqXyWi?it΍:?|=􏟃2dg@ /T}sS4 8D*4viInr\m/k ca<DψmnőWs_L 8aN0}9iJyJ&xƉ9\l㽲Ѹy#mD,ТE}11}?qoҝCsz]uK?_Ϧ&{jjn _s (8&͡WGiPߧEǁQ~5!AonM9P'$-9aN&IbTj)\h bWU ,G7[8ٔD"5 i3D;`EѾ:,8}6gNFMAC Ro~"b{;f:+% `*Dq~֯JeݯD/>2X~TϦ(,agYvd_k[X[bcGA.޿>_aaND`.4Oia 6&V7q@ hm*q%JL"0X HDV|y2 Qߙ^8qt&!#e:w=8AZq-k>98] vb'k}E^t; @XWW>hp>AoJ \Qt^"R^ze?pA t+ 廚ÀXd:IQ3NKߔӠ6emq 7Iu4һ@CCվ)6vEz4t%"y<~|96m#Ve_{>}SӐ5˿3:2NzFZ;Ach9ϕ{I2`h/ %{ `QX Ȝ~pm(S A UCMXi{sX?*UtuP+"dDW.bP4+tߨ QNa#L M-#J1[k4H4s,A_oo伨\݋TG'rh :,j,`OU4 6R 檚Slob*.Hvm7 g)j>!t/WX¿_J#8HU WQ,So'Nj`}[\o<-a7S5!+j;e:R p:4WGe,i)}0 Z *5Q;T95;MA{v*V/'=ANjt%_}jSHXxJpr&,G/ *3ب 5(-ŤF%GYfQiy|=qd$z`xN8[lJ.gOҞq.Sb 1]ۄcA%lIӜg|6c#unNhe/)uv1K.7 <=JP4դSJ[> e }DܹP(F` 5FN\FsF$$1iPK4Z];@[8xVF~+Qz"m;ϔ7)]qN s<941wGYZ:#)yAP}e~xfҠ^sfi;z \[*ڈky”xw﫹FndԭEyEЭp`'huC-hO4Wk}Ӥ(틠j9ƿQ30^#֛P#QWu7EQ:Ss0kқ㇆0t~5nJl:8Jw"UEuIimk:gčbM!8eizn-J uhBVGT$z`duV-X'd@'ؔED0~)-ECY՞oo+*hJ3FUL$ʃc5XyWhભIJ~~/AG4('׍M5RdS 8Hyq*"n9[ǿBr*{UpF/7(Tcn6CT aA^VE&3Q%J# i_բHh`t46 jh"U!|?U-=S]`*(Z6p_`\-;~G! }.MA_8:Q?8!~Rf! uUN5@Ȥ7p,mo߹FQ/m=Pm.$Hـg>XV+wVz%CBzErSMf)/B]v} ӡǰ(Kf=>^0 PCoED40fʘGBփӉZg$ .GG!pڙ)o/ϦiS+s\Яj/_`WV&,6#(A %/,N fǭ1=J NFhfPTǿV#kZV*1NHࢦXRZJ/^ʋ-O՘֯ʤynP3h>&j2wuFf'D{-e?ԘvR6d9)N5_lŪqGs~wV2O6ݏe=|HBtنrjGd ϝ_=T m|A'l|PS:Jui?{_5m~["k6HUKwH]i$"rQ')Q4IӥgtVl Hb SbOo|'a#^+Z@,t\zb\n-`G=Bk`CX9ẻPW3;YĆ~$b?ȫ8bP'gCtsս6SVl\?fsYΫIqPF(tS^ 8z^t;4JvݛW2&~ <P.S6=N7>?d FkH @1VLf 4}1N(QxN15l*VBZgnkqkqߤcǍa}A^H[?|uuF(œ`~%+iv: ;HcԳ%u,#}{50 '=ʠVڕ+}R h1oaQϻAy@B_hٜ!5҃גg'kY]tУLZ8Fgs)lޯLޜdK[1]`,wTУVC&!eTpϤAЕmpju7+f+ly@QP~|kh>^,m<Ӊ@`깨sC6㯣N@pӆ>FG}e=g=)>ഓ^8#6#^1>0߃7ix9~y%ԢM6Oa$o㨜n^k-y:~C@;񹡿5v~ms3Hl&*%mSdJ_X& hcbiP%X0z(pi-U9,p # 8 D4ˍ| QFejFףjaEu/O"t-xe>ZFNST^ 8kߣj?Ohhsa+8#qj ?r W7pi|Ee*!}⏧׵'5tK#?F VF]R }AHOpWO-ODjfwBMIc+`oWyhP bedW=XkHte>o=g%5_o &b R*i_%@|Nl8[|6W*i]EB 8b :#8Klӷ  xLad8p$w7kO `I5G4@U \U>ݠ|| ϙ5f 8`K=韑~U5!wv2ghXϭPVkZe yλ;w oG9[3iU5-nLU%QRiPY:B*jH_xP}w^h}Lx]fP_@>?}xA9l-[Gk=\H> XIQʯY9v+N&G 1pJe|!EsǪ= 4WoF6i{ӱ :mK̻(|N+]ڥ|6fCkkz dNq?A u)p[G tVD/p笧[T{vu 3U(F=f+m錵A|NpM*uV_>i1 85ϖ-fTh1FZLp^SBX`‡ ԯdH1~7Y9Aکd 8>5PPt!=Q8e~Mz9 һ.1րcZGƉNW{yKڇ7>S·hʹ&=mOeDIPwlmW-6]C!&O-пwunDޡ1N6_*o@7n6Pڀ2E 4|n?DGٟdC*[2N-п76 t:F;rt~v[pAǸB1~}lRGUwpou2`VjNqr`!Xcm~Oя&$TgZ|7Fi1'';IZп+jWc&!D+u}SSYS/,m%6_K};2»g◊}A`g@HՉؗ1p߉ 2W,_u=].M=;tRz?ܛ`w7rZo^;Db7 ӢERz>ѿimo$ qQ݀7$oÇϟ|& ~ 7 qj}T^ֵ~YAn8`E.ӿECŎ Z 2@9f67ϢOTdE,UIQ("X[hi@ugY"0 2 $cQ?Gڡ]ʳ}wFvR?+ 밄ٯ??/^4ׄn t]evK+nH\ta4z7w]2KG<u͇z=w?+PX\2kU1:̗9LtF8hg8IOsjD>Kgm[ o߁ԃ\UɭߵxOM$="8ߩư.`:<럫klߠߋbU"ߣ#%1Vv(N%6^a _ 쵞 GC" G+ U2$hO{cgU4e~2nQ|o7:a6r>E ]33g,p:km: cr^` Zikk%DI17tT6=m포Ӑ^n3=- e?̀NQZ7zHgg0M"mBQS<e t̳Ӣ:*ؤyq^E.>?>UH`ǫIDbHN7n I(wL&v[%L-Ћl D:JFEYc.A3!U)ttl|Zl'BH8{@pt-D,V{Au7l2ϡ]j]8WS܅y U#3| :% ~ޮS 6uBϮcC8(ptR] 6AWAiQe4}2cfl(5Q=;%A*3ZgA9Qb$yI<|@`wבW}?`g9CDzmی96 #U(=S6,4j4sĨFFr}BaC_YhK`n8٧ʦ6OvtڠIԓWҤnz,Ok2͇vst=Ǿq|<[jmᅲ6pK/5[쿧m1L{ GJzuZ-O1כApRiY1Xc zwь4t=uPsuKM5R|(cz G`ݶX@(q5K#ɯ gHzGY>2bn@B]U~37XbN}*HEPX_slms2վ>͞1{߲x*Ǭ \_ e"{aǙ{ld0^n~$AV$Orǟ[H,Z<70^K%y:bYS2?c֜- W?[R;! )#Ja}I3j񋕑l; .opC#ި;?Y=A2XWsf5e 5NhZ>"oS5 (" /ݭ ՟& Jc}hs?O̲p9~6:!B(t:Kl?ٍ}#֋cW+jku{ߔ c3ƾ4jb|v~X"(ݞ?x4$R_c>~<-5(th ܼ`%٭ǘ>yf+$^,Tw+ !(D0{"@<߶ׯ?hC3hN1w:h^\7D ɳ s EG`օѨD萛fPݞMhlBEExr:Ó6Q89!sR{^vH v(SF ^[KӖG}2~dk):&br? Z/KFӡZi)^2kU!mG&1,:l1Lcy֡> 䅉j["+K:tJ؃i)w<EF}q98_u#3~^ k"3jopPh׼4u'6Eݐ*PlıH2$q~֍1G`R3)/ygw翫PD_\ `n) 7µLJcq/7(n5/1{{w[<[}l5b;X u,SI ]="J@{@/!UdN܃E @s+z ܿ?<~0/CR2U__o^ЖΜ^ϲf%q qrCusd=kْPB?J/±*FkA/ oQ_59PŠ~=Mfl#[lHWb~ӥxCwѾySs?UЏ0,chUUTVrr~-c_)s!hǜ~ޛOԜ_7+fSCH*=FV-*i]5#=wj^Z0w]/m T1+^Cr(㜣LXÕHȲ~m|Wy5q3%cQJWBY}0*:ԿVIq3)?o+ } 2+d:(3~xg{(|izA(px/TaF~ڵ>Ŧת~$t0 ? ABY;r v%=_6l%M _o]6_Ϫ䇮w:i뉁ػ(g۞+4J3et9g=yW ޝ|ӑA %~y/_,kbW r?7,JZ] Z ʤ/7Y2uCv~/[~oe>d)?٩=}CWہjN@nxG[moJW:?A$TP@bc,F7:Y/:eQeWzQ;6$gJ̡4w|CxY?lط/hȨnR5e)'w~]ֿqSJwߍ)8ߢ)c(HH^LL5v؜2 ;`H XW.?fr 4k`IbfM X/XJ¾g${wz=m8ϽNIbF' ýGafXN]akf;ߺۍx֕!M\W#Ci>\3x똾Kg#@ 69y-d<'Bہ6`~iu$4M{WH:60cȂ&{/}|U( [j{PmߵKGso>*Ēiisu9F{" P8|KOp`>`g Wъu]y_69' Nn2ZOl}N\uds#Eձ\TdCa&+ߢ#H۰W)%<;{֬wewEƊ(S ~/$$pcd3j^i%G0{ 7V>3:0 c՜Aŭ!E[L}^Gmح/s"i #>A$K(3y<4?u@{|ڝW[K({| tyͭ9zضfsK\K֘Ѭ`^">v(k\_&icnV02 |T{ ,>䛛wgI<|0 8u=1g3UęjԶc(LygIܲʢBNߦ?hd~k{Ml; dU?&Qc /,Hd[33Cn@̿+/}*4N[#AWIN_S$nAȀ?a2NV{Ӱ h>O^A3-Tߓ?W'p™دwIUt̅-S)}PKJB ݂/8Kp!뎯RxW?~T?I5[2ս6Ѣ?H[kr;4q vR0VV+@ƀpM, ^/`k eHzpO@ePe~̄TqD*4v,(αMVUH-]̿؛\ ILm`4Dy- i28#)a9gwo[''uBIչ(b#t[`b[eTg#^4)يv{ |^|M;AQ 8Im!U{}^gNs;OO  /U-u\MCǼ50(h:kUJӝ/l,Ԩ̯pQ=aPs/;/Yl}+wґ@p@pZ_5Bo ]70 plGG yV@rr1_p7HH-s6&jmwiz_ s|ó+Ww v0o 7wEN:Q yφZ,/{zBePǚG)ifPS55.oPl=ǿ+'/4\ ݋Vpm479&XlIAL`ᅠAYq+\ 0NFJ Pz?t R"3`kK`:7j.9h8ͽ&7ޏWékl󗧅 T3,q5;Xs\&T"?76N0A=רZ`p/PUEal\[~&z̿y18W3j-9-74τ2&J0hÊM&:IV?o7rLrY$^U8_}~ )7]\2H%;V"ᨴ}yX|\&s tu6xr8xU*K͆N_` pP"&,|,Vhso.7r LWe@ \^WxXu1G엂{.ڈqNPvO3- V=Z,Q8 GC b-/xbJ>bjdt |kul{_1'M~cߛWo% /L,de\.KJ9ƫzLI ߽7_yݨuw?"|g͂u`e_MSF3m"7Z>JgL KL4]%WЖ_^o?~|t9~֟4y@2#J{(zal+yĜo ϖgrk7 `BQ..kuA [TP?˸mo0;X 3}kX3IU㐖mY}J,M_Hn?f[5+P3X{>>ZBIʳF⽶aؼn\+tPwJvUvW%\لtkRtަ6I͚4˘ߥ~s_Eqͨ6* .e|JoDnLTɯ`Rob{6l$|+G|lYS]~uve"kywzƟ]}|׳陀.:iY>s" .zM Q/9_%_eI6l@;.OJsy- crG4K˗g3#YԖOzvZ-o*I:P,x;Mn7J /`f/A^ SFvU5j*gTv՞?|rvi+ٿygQ2Lgߒ*;-6agDiפȌ[s utaX^6Uk,k؈<5Dž2@J B+MNv'+I5tn'f:tRP[%Bf&qrrF/2_gF!-|V#!@X&;?GD̷ fy~R=Ym'I;]9WM/@1|ۓ|̉:n`2tx g&A P~4z-|@z {Aq`{>cKOX5e&Z#?Ubpw{'J@ R0.E9d(8d҂qySNr/0E/E=|3:QCI k骲NMgda}΂?oso`\YHl ʳ~~2YI[`},sjx}ض6"AqDK+9@^ $X_ӯ?D¸4ʟ!~eKSL{3֯Ubo&^"@!&Re,V,KAg$c v¼` ?C]A/ _X?\gy3k?}(X c;051.`<_/'H]H`ì)ςwn2  N>_5W:/IJ;˂2 F lgdSWGҪ,Q݀wK}UQ dXL#CiʼxYö5Ճxc,9;Yb5%o#%+h>FxP6=L]ԙ_ۭ, c&p/W`[ԙU߿/>\ɀlĴ0+qY0sI;%oX5 6&߈Uyff`6~jԺ"p zfpޅO뱃&aW=0E9\!ʟϘ z巿?t!_Qy{zy9ۥWfP8E$'ټ)3j\wb]i6kK`Ç~ l6oC$Cm| bE&c~6;?+.n/RP{P♑Ƕ+ǜ# Eyo3p[AIGO5źLni]W0 Ӕf}VW!_!Mve1em4jG}4v0nYb>+]`gzΩ4f mBg^+ 23QJ9`Y(~QJU5d^H%މ ]@1KUl^ߖ؁h_ N0ػ?y!ˤ>#n_o< H}#J < k)|:E3N`e8RkQ*Ud䫑M;W|LLjȂYt=ſ:*u](t}b;[M`|sM>ۀ3_mm{^_Ǣ|yV{mx:zxGy./~.Pq#^_ftM`zv+;\w^HB5Z5 ;T]/ڃsWlL6?vt?SP/J@*2 o/{*lˬ_w~G?;>Jhfz^Y;$|Xf o l=Xv+r67KV">  @gwuO,[@$|l+ӢM[YO.[={Þ]%3۔E5@`bϏfpzާ3d3o?p~RfwB;5BlRd+rW8}g ǟ& 3EB#gɓhb GU;I2HBѨ9Y ί]S87u 0`i3pi i:7xpwl,c?ϣ|6b935FAoz4Ʊ: veq+t7W-3~ w@I>31HיȊlG"1s7#>:J6t9omno-:W>j Ȯʜ<'cV0PuVy@'4$;G\}nqwXjV W-6ۯ?w3JKT9s @ѻ kGS R$f]=~ft.C('@E;H[\yWY?_d]p󪄳i_CTئ*›M]̕ 5wK,:r"~[F cVrRL4;ͭѬmlҁ5,y〺;Dic*-/櫆*_}tR0Iw\aae7 ¸XLkp*l`rs5g|io|׎d\#WpNW',P )X2l(9v&7{0_<^l'r{?|oB;}]DSD&I7PYpۀ7`7KQ>nI/+B^8\w!_#n_>x7̭QXC4֧pϪ<ܒk]Bv9?˰&ߋ, `^|ͮc)KG9u1/3#&g*+O ^ 8?,B߰ 3h0V:drs-}E@?P?7jF É{Q' HnYBAKI/Ej4ZXK3XD::$ n~3N7O*9Kx- ~HU`c<)>AF !@n?E~~mW'N";9h[XLT0?+s |+5#;ҁ%g ˳օF 4)%Ɓt CP~#,$O8[ 6u8S̍Q|*ÊQﻚķ*[wa"KKF$Q1:|`'{G\67/REfح .c"5[{>?N k;(2 G|z>06_?|uW@/~('?ԙ8c3a/=.\EtSsY 16adTŶ,9ـ6/XY\oHGEېQ42n _+-5WhOlj1z 䦹% *%rThv#B}1}GHK`B{z&RdFGsg)|wg0Ge kˋbۃ& yԐZx|c(d2}>n,v*>v:qfyr/{#n5AcK &a滟 g\/6 g  gBVt(FKVo-T05hssFx'+pOxBծ uhf5;]Yk:Dt \~U|`s;z7{H% ul3^]u^<}]5f0qK ]V. J"8t*$# Wx6,b&=t{_~+ڮp}~8 Q4ٙ%AM,;SpQ߅ 8)k6q]wjEME({ğ|p1 \VVV!d-b[+zbVECxZHb^9Y9ai3o_]Z@|`g^4EBdI:nP$flAoqJ` m44kWV\[_}oy(A=(uQAί&TP_4᭚DUJsg\fHs0H@D/700&gЎ9n8·=':ӈc 4wUhuQv=즒Ǽp=h:rɄ'}X^34WUukdςJ|gߍҵ뼷IX[ų{=c`K4Y,SilE\gK,eMa:>>MN5pd*>C'ׯ7R|'[ܭ' ; SV G-W_ kȫ o$_d,]|#+yVr<+hQEU?h)/ !~\q~?QZ<Ыf"de#Dd ZO3q ]@wh1/`H `c?+8A/"Ev:Uk;Mc JG)^p줟MX¸uz` 5A7SKЀoQza֋$WDr1B:N;a`I,]ϕ]깋@]Cy'd$ qNk]ZKΟ$,kz.=ij:m @|fH| rB_Q~ Uʧfg}ɳ6Qɳkn}ұ*B9骲ٯB ġ Ddi[_5}2QkɦߤL*\߯V_8lԳy N912}`@v*L:k!9^a|e[gƠڣį_jk A_/YY5|lxP-Iut=@qigi+&Y]^sO0nik,$e =[[)C}>V=,/kCκԲ, --ElҾkk g,{f`z>?M֩<Ҁ/sA'l#̦촮B`Ms6 _f- <\5)>v X0 tZlPwwEN{< `~ޚ_e2ڙïCya-|G9Zm/6hv=I}5+YN\kt!>z^{97p> IZtߛ9f:oxtl|}Cg pE2g`))ߥM'@fuІҰgchȟa֫_k|1\ckkҵ9வ2O_GHy:&U.?A~:uXܮ,I ^@c0g3|V=-~O"w_p?[Hɖ.Y$ɺMyc|`潼܅ QYìR R!d5Զ-7Pllnik1,H|*8Wxָ#K)/zr%<bs[ n硱M`p& ՝Yx%ԯSJﳿ vM TdWp|n1BY5顬P-2a j2ZHyYK~Lҋ=}PUy`(Ь)DWICBB*rO ܚ̃9og{ q3h8El+CBm0tn V‚xxF` ˉ{m  =RLIN9v]z6T%wzBRoGDūnGm/6W?Vuלz~\ZK,G?Mg~_S_M'&׉+؇nV)7O<;H{wAlx҈C"^\d'۸3' 1S&AaQ)uOy6³-3;.gs~R*ȻaK K eL ß05 u)r(:6ʣ|zZfm8_y,57-3{-kK'X;01>.tQ1#d;::lǠK ~ν]Y&'95Fwd"VD Zw8"(kK4'xqkf+cK$ [??}gpId+X6lfoR>}'o~~[XIOBue)mN TpY`|~=H.ms02W`Ygͷh"G]u6V]xMT%ٿXJnJ\1*HRΚp w$c W`>jȐ59::p9ңZU(6#\u4`y` 5r{]%JQE1:rΑF&+ۍ:cuX-"#-Z]iuq;)[bB=r ~jdƺϭ_у>rIF&38l3sRiPx͛q}>;FvSx9KXJ-Y9܏}K>,5D jg汞}gXZZo"`0cV?2RA+U=\:[<l9B xreBD2.  =x2u݇c6F#x^,@8'I7 = kbLzogPuZmM'eq#7dI?QqM`WcIqbjs,Fpodu.8'֢ H 3[kH?hSG,ZK xZf*0BޓYNJbu\Cw[c_Ƕ">d ϹcDu Ov|d22_3Kߏ(_t#jzMٿ{A-K t]wFNw,6@_h>+A|0?_-f4AuÚzB5/L ]2i ^؏S_? ISGz!gh9w*R= S{N+KYmY-]NS巟rQj"?_֟f`ߨE%шr {Vd:lyF[|VbQҽZ;Ro*;O9I}tPn=8Ǐ*>d\nhZl H8{^eBH,T9_\gk>k=S}P{e8QBTK[s0s~$κp9gΎ+CJp5>ir2k `ڞw)SqB~Anf= * J: s7R!'[m1F%|c^6z UL,-}W՟K>xTz}W{(=(Q['eTܯ|)ڔ{'{S33jLKե=s=V*곸em'v1hp/Ч/p& A ?T?f?' Fy;m!Gе [jndf3,(A:t8aw`TrҬ0yq9P DTU3WcW(^Ŀa=cYl,2 ^iU>` U6˟Nu'&An}%IC{#{w^Bz RB)^?A\PtJc/:6V05K0ؾCm2 Y|Q?w;s[D>\au0@W7tYxWrW?+f7U2.}kkdeXVсMrem?̀H]6zI؀Wڧ3_Y\ܺou$l7W6;ga%_~ʧayJ>\f,aDZfL% Gg(,{Skl\Jn"`tשaG5q9A޼aw5ǔ;CtAPռ;zEDk{rc;`ߊ 3|YQcx zJtU6s4 j8dw? hU9 YK@Z9WA~K'q0^ϿCc_f_~r_HPɼ:̀l#U6@kEv>58>GˈWHBFcz+<%_%Q3YymC~ogj+tKmYO4*:]C@mԑ껸ɦsϑPL //GWDs~,s!1R3 7}|M!v w~g֛txfw"x~s3;ɼ7Jf5,G76x过^'+0h{W4{M'a ֤ժ?Qdnr19|bg28(J 9ybh,Q  گ0Gxn@MP]llFp>|A ϣB >% d 25⧽!xd.dkPxgAA*^}Fn=ev?FBlX|6`{uddk ]Ws|] zk|X=ŝL^]3K5qQme ǹ=6x, 4wMN XuseSo5#6L(77TUTPRzA- YH[bo 鵬??qgs d& \cTkR!~8gIٵIfc9"9m1P?Xn qKn^Fr 9ܒs;ON:P_+>1JW%0`,UZ_MoŁjb%Yḻ^Z.`F%uWN")܈XQ"?ٹ`ט j((E+[ h s,:˩ >c/O_H`hb=U:_Rh~wRT'he@ooVF:aM3F?9 Hiu=?mo1qB߯?_=ǼIq0FjցKB M ř:NxJg4)f86cV4l5W/{\ZcuJ{ (aOElc,C|_6I;D)㣢s M} #/{ϝhC?{^HZ,a7å{YJԏ ̡T-͵0֠Aowz|ꥫB@cW/jݓI,X}(~'{iML ^gz|Dצ!ҽ>柗aks{e4КD/}&UgL[i |v\7{=&IMU\^*QxNwޮFE(JHnumo%pqt@XtT9 ώ V[)%u4И5WKqVJc x߀S&@|xsA_GO߬NҐWZ ܵН t<{,a}s9spaA ȺRU #\>?W/1 s|E}C??>Fa>I8~Z˷D+cFG#ُm5WFS%½g 6͙Vw>%U-^e|tOhŶ-dQ]п !{h~ބ+w E!voW?7zk@**" hlH|>WEQ"tU Y[A^.&M j!"il` Hyc?UYjU(gr"AV`o?oX k@ k6á:Wh$GdЕbj4t_5x 6 Jk[GY*1'QO@>|@m jr~].zvʅ_-V++i+yf A4UI{6cuۺJN\.޳>vY՜U^(5r<{:%ksaSr Q=SN ]{sZq~(?PpC/_/ϯ|J{f J[m N t6 -Lb=ݕscڮ*W|$oPC}֟~;u{M2^ T9Wϙǐ $vF-Lױ4fjY4-0 Oj9B s&OWOٌ>Tx, ȽW^ {";~?Jr\|@?.ir4rV*$ʞNn^]5t/T- l?r.c/:[笡ZZ&m;_~V;s?jzOZJ?0SH2ܹFc".Ko,884o%B{6 $b58hYSAS$idͪ)a)k7W6=kv~a8Cg8q2K\o( h Y+?;?tX(p`%b1]ֽ?7ZO~z/078 P|Yz~ŀ,c$豂y>g,փC,4; J^ȓT~*9'qq_ƭ7Y翚=-E5{SKtXjZC48]pk0lЁ>UaIsxؒ.=W\l4"qH+vj`|j<ښ'Yj^تu)YdLoX֨F dHVst ȩ |)U[,#c`yVx^9frFt͛fk?=O3Pӓ 4;7 ΂|:M>̀{oWQdߵ;B91F=@27=Ϗvc֏}6ZJ չ"0I\ i>U^>}kvpmgJ=;k#>3L>zwM,{sfE]`":+?MEdF܍#Z}f,Zy+??GjַN䬨zM͆KF)0B=O@FyI~Q: [zŘQ{W g ٫k8߃7n yN4á% @KXh.|Eci\磻}o%p4JRCu[~bl杅$NP snuQBVA`3:V1h47w\_yjYx̱%5YϏEv7pT"~YMP@)`xY #yxM$rpF6``g3hX0 X&>lczE_{5+V wn{|5[o3 }) ;pOhR1"QUnekBX9?gsiIEc!bq{XZedV/5*={FA?nf9, ]oM>2.. WyʕjmY>7FLXWo\eD,I` qV`0j—&ѣAh@+y~S4@oB.ΟUgP g ֿU/K~oKd1}F:}D 'l(cy )dfnUk: ߼?*+{El>,!%>5yuolֿ$ޭQWe%}Tg$D6푗A|`Ļ0NĄuG>t:uWlg2x~)0VM4 "볊߲XC׳,4y͹Zl^Pak#hb6Lِ?PT*_d'0,zE"b3{MblPdF8] -vBEF2gFICl÷5$|W7`&`guIc"8,f=kNP'",?g:?.=?0(pIKjf7 8^csʜ?d2\՟G6puq ksֳEeK\1#uV캀)w{ '~;WJW:wJP4څ~췥7 o_~Yg6q _V]3C1< |bg}nq?-*xO[LkBPFm~ ]v цX$!*-G<}u]q,\[s} \ Z1/˷bJH.R..kX5܏o ǗǾNM(n:01|gk'|~Y|.^0DױūK3┿\9-^ 'Mh v)cE'r-$gx$9JrF\!GIAҷ`FC-n=5;;~o&{܄Q!w޶)F_Lav\4H;)\$8Ib˝}f3~, cvw _\351KͲ@Bւ$N眤jJ^,?[iϬ$(_={~VU }J<D, <U3K vp._kN+#{xNj 0]l.-q81و)G03Jٹ68~`-ݦ SY^톛b| F` ~͋~,49^hywZRz+J(>`mc~$[N=ʋʷhOn j:VuwMg^YWN} 2^ƭ, >sҹ+FL^{( Po?b_c8\~U9q\wǴ}%W[wQtd^Lw}/AO{wa-V lC~?o:wFۯ?$v r h"!foRUf)ԡm.7q,fq 64%jZ" cz+VsV|1z߿wIG #XZl1"\3Lds=v{jd`Ox/Q _Σy)'u>~iAc,٘ &X6} ¨ ݰB"a@]6bne0GiP`eޫ\;oqMI QڭQ_Y/_"܂nÇ (U"t3a#,ome6oɁҾLs\;OcڐgcnŠa3h-"jOA7*1 %V䚹REc3LsN\e( R.XV!^7P`vx&TȆ/eUbVJś .5ow{?F臢yI6D@]z}$Eycm^ `a)Eg)iT|;wfˌFj5t.y7Ӫ@`cdOl5|JZo[uuPEn@Ga\}\:pwoqgv˼>%]DOq5%gCf?wyk؂&"0)>x{ה ca`3w~Kz1k3v.،\ϓ f_0lS0$\q9oKA3a>rT;\9 i/=~ >R}N\/;)ۘWVdh+j,}~9^ù3~T A&NrPbO!޲ڌoP^*.m~LD$- [Rp6p/ߨ@xo?coϔFd;խ! wW q&؃ȖsMֈ_S7g<( E5b_E_U lqgB+!Dv.R,5!ו&ߛ ׅ]mSuQ5v]l.,.2fe+8yFWwvq.Mh}2ޱy3x XzMfwdf62Ʋg&Y_S >O M}eM~Հe gӫXR@gXt iW1^Ht@&|^a%l+,YRFJDC|=ҡV7պLtAXRPN (P⥳O;6ܡyc%& vD ^DŽD)lg}Mmܣ^ ,v'ɼz|ZC!3v'cOO>]t5zbsJ? L}ĮẋG3<\i~O7CmI= 7`F 6oѐ/ǧiџmxn}7]"twSLֿaFSpv3-V#\MbIdvU:W%yQ0gˢp ?SԻnߤhlT`dWWVw@\_o>~-]L{~~VZi'2>DR?߯O %l쁳7:?goNܫ 0xtgڭіM ,d[̟r';սyʘ;G h< gvGU"ly(E 6P. k?U(.;|WWK\byfƦ̑ޗ_Sz+A/dTd`~cZ,pu\e5&g_Wݔ_lA' D$^.r+4`#LGv\Pk5ۃg{ð.g[,Q~8Rx{7L1Aީ]Cx ޙ|\4A{7>ے9F}{keXGs¾_q_PרO,`,@ VUYSP'(~>742G v͝ Nw _MqSzxhq _??t0LˤG邪u-6e `d Hm!s9wZ%_gCUyy``c1$<]/3`Ņц Y8#('/o|zD&g˪LJ/0ԂiC8yF&YA*-q+uJF[tmwj=d[r~NWSo=W, =7`$ιXk0>~PiӡT#fgs8}$Uۋm3(/7qp vfթC;\|ES`sdva^{IlFj}oh%{M-&1bdqg_ `(~8e'4_v^Cl yTڼ\e]PC‡pzδn#ߞT^^\) c]P~C6K}L{ MlZߵ-dGt68{A9,"Cɲʺ8~ۃ sOg\vgbQگ1po`}e~J\5_!Q,9.?EU [f4U`Fɼg'@oK$4ٜ lxʏ/L6I<\A4L \cKNwGŒ\s5{p^OzGnLը(WeQJ@]^%JV+֯`0D%?N-EN=8\,Y9@f5Qio6xgK$ | %o ,lnZ 9~AgdSx@7ʿ Q(,MUP@R;A WÞ7PdhBY,p&UWz !KF]삫8?{~.}{酎#gƞpEey~;uqL@bO} L9hW @~$xlc^zJh4AƗVן Ev"~x_h],n+I 1\w SmXD{G{ы }ľͪcz)j.M2#[U? m[OJsul 'd}zLmD-LUy_si\2K5i^LIkm :3vwaIhL= {f\܀hvL1U=}Qm6Fy#9wr؍= % ߍz%q9BRf#SS+ql/)5)0կ/`i=Q1^[[iFyRAp9.̟{ȟaoڹz3Ş KU? g`ٵ`m:O/{EMY56MV~nOIc"<ɋP(=_^[=􌝥HF?ʒ…V=ygO(w׺7ONi*Jb:a2ٽ` @Ȣȹ]Rc$7VlkÊ1ls h' Nu3ZJh//؉ApwyfӺ2LR>q<({hQR1Y?6AQ76^g/7O߁L }֦iV3S=;ܯ&+9hs&c)Av(RICԙ#pj覰{96ԟ-_'~&'.gi™_Y'W#:QoV?X?}7,j9\BFgOдF{nE@] m8  :.eWݱa=R7(UB&j҅ ;XPukGdA[39ff@s~G ku悲Əau_?'+%IXxg [d+ƪN20aePyuy*1cbt lfǠ?_lIQy7\3y1c5Ȑkdطu@1/~b]WB3s4j [=H÷&AǠl'O0pBye`NKI,YE]6n`D*W28PsEymV}0iv=d^ ʨc+V;^9[?J]5[$hw0AΡy6E۷&rA;/iؽ9Aad YǑ6-2,@2 Rb8ѱ'&jP'`J^ȰI/ * Cߐ UWgCEMWCgV]\,R@ b6o av@w3Wsrtg:8Ԝ 7=~ޤn/2Gl ]}{k6vN>ξ{߷\>=1mx|huݬs|GIWBgt%p߂Ei՗ƞd*%FH[z'ea2g/,9~̨/t&c1bE C̅#r-!;|%`6̻*ڌZqP3?>!%@v.60XrKYąQܝ^3,[֓z|,c*a?g` )ݿ̷<ݱT: i|Iu -00Tx>sZ <464辰5C[ #8k k;&V gmyV&h}g7dq.ԲhDy*_u2g_Y(^|oe_"soF?oJ*PS?°6f9yC4؊MOWZ>Yh'@l'`響3)!Ϣ,I1;`TuDi`)2 BuP\&uKj[r |VH\ϕ<Fq1/,k_\?CY*S1+|jJ X5.:Xo/k8*InkT}q0^ p$ymԯ-{kLu>E4 #8-?P6x6*:pW$S;cL A dvb0vzpw|z @lJL/FVIU bL$HUWIȚc]ks^xYp8MDy^PhlSIFh %mi))nG`K5pd37{u>uOQ!yy[s+LtY!Zu;6&dn}osSV0/Í rGV hQ *;AYSR}=!R>$¤[h)ciͱ2v£:+o)57Muն'C0b_K}2[6<ٯwgRW?|}qnMLFZ?^.˦sƨ#|j>˿0mD3}UN7";ؐaRX\g~@+$l&>dRJ).ap}P7H(] W9-*jr08Dd^A `OAU uua0p XIW aђw(gLv uUA֤tZt? U >`9鲰h{KN y'$!oGlΛS\'Ft*el`,_'~w}|,DPzu -/`0rѠR&9~0ͺOK)!#~_AP=}GKy~Q =ϘNp}鄷_yGB T踘_! =PIfOz(m]!E[XOd$>NnZ"d(E p-e}^.ם=Ago|OhEhUknΖBr椡t G%Ƙ V^7`V8>](-m6ų2"/ ixþު:}g@%(BCehke⎕lۀ̂JZh%<-ʝ yzc4ZI۠(n}? l$,ygc!߽ C+l۾U@St 9~VeVM׉ȗ&یE?IOm`Yog8=)._9Sv?iakf ?jL52>AiWnJiZ'M_d( ZNb/#IPG_Q}J`8`xVV7CcV6{4BvfX;\RIu3xn}!eh۬&Wtov@\_y *E5L) L*BvܬBtg#+*UM/r5ܟV֝fa @]|mG[9XNZ,ۚjHgu|s܀23ge~2bo(Wp>ba,hI_n"_B03$&[p4&́V8VՏP y~z~]X)kk:3/TqE-U2+ >řsc/^'v[w\׏}* ZV5! \XF{nvg8YtjwoO̧Q :F~l֏䗴ow)z4YF|>7s'4Qᔦ#C)'WJҊX@MGfPqN$^9ʿଌf=|VWY+1*[5 hGgu\_u>m*FM$ t ?o%A^5Tu(?bN|y _% =M>5E.v5m+׏OqWU;/ VY44Pz;x95JsJ^NZ9Wm ,C.\GWw~LkU]3;k/Pvι wG<9w`j6[ŕmF5\Qd6z(Y4hH uѭ kL򳥋B㙝e {i0P][2-wwZ1dԱT8.@7M߭No jhm7V}LWReQպr Gxn@Iu*$lsh=mJsWw)%oK_E딉 ,BɢᴗorZovvSaNe%ƅ6Auc@Eg`a]yY,񋟊w4!}6ן)qP/l`[G3El_I>gIX>AR3KV:YT'$PR1ّKgI%^O*&0l37Çf,TU}+>;|{h{Ǎu8zuL-ݔD [aLWƙ^Lf6|;XP,VLnۜds;"-&^\ܯDQ'gʨ J&z F/?m0{LpVln`zM;Yl8ϩ7\zIJ%mmٿU9pl: ]SpWe(_\㋖fxG&-{r_+}Ik%ؿgh `  6ZFӄ\!M8&=oPZ??|4v-sd @bn=`ʅ󴦣`dd-$ k6+Sω6BeZw뷮d'+:&b6u{HD3U٥=6{ ojVP{,)q6.94ܜS#FpI &А:t6|C,'{^4aXX~Q?MW Es3l-Ec.n%ke)A+Ώ'Ss㱆%1~$+ :^Xפkxz >9{YrCNQ)9>I磖h|FKԟAy2ƀwfÄ́GLXch5]Lt`ay o( ӿ}0l'RxY,{?{\ל?>Ɏn|~ 5Z(,(u sAld'DjT{IA4݅Ik{~u.u75ހI4M &9 z>@/̵0/=:Aa-|a=J|/ ׋gu .%V_e{1Ro?ߦ 9\/e_3C_dH$]nָb4:ٿu SUMZe:w]Ә W?e]мoܻ6S`X 끥47 sQ`#\n+ނ2O-\ϾAE;m҆.gc[ Pv!\()6۠kefA%qV anWl`e3h.fЅȚg/iTw-HAK?/0οWWS\)Zf |8DDؖ150u3)o coe/ fW\|@筛qōǢ_ Wgt3ɿ{|ڙu#FYڿ#ul)jrWz̤l  ߿ L|m6|vlxcS^_'`Tg;h'gm@) !|yb\`.ӯG毃{5ᕪdڙT0%yC* L@9b SS`.x}3`Yp^25\ reQ9Ϭ'3Jgs}lbYBb@T**9 iO+ Qs')9VtU9|Uϑ<NFllo/Oy&n?HV|_ۯ=k^[m[Y@~4 jb:ʎOX*`#Xdy$ɳl!{`ۈM<-aL#jܻ_`E3K :0spY 5wezPuxFRl XNu3aUٿe)NrĞۧSџǍY(4t%ZnOfsX t9ja,=$ :]:%V<t=‡{nCt#c_~/^+k2["Amndu^|"t9D"Q6tmY+]<*Rt{>lvIMഋWnh?ˌ_?)D ($>$tf`:@ a!OSi!0K$0[\S %Nד#$yP޲ѯaׇ&-ӻR맻, ,&o|A~ U' @<7]xRe@*JyeD6qY .[' z5fna$Q^+#&{&ʻCm-U |C+yӐa|XcC&iC'&IxOfj; ew|XЅٝ8 a:v?% }-EQ{B3!uݍ3ʥ9Mb[jC:}lZr;oV׭mb컢1Z]f1L\Btc2/bq8~m,3 ?7fֆdVM+vT 61Dz^%4)VePԂ祮z1%~L}6Ո?d=J_ȣG@$.v r2p@[g[X)cRtX(ST}*&Pc'uRjbx^Fwmv@djۘ*:j/KLv *4XH&%c@o͛%Jeu{;kڶ>4H=٥*=-l%7 볠SPwI_|zMT6]B=/xp=cG3D1fYstFPޫxnⲨ"Щ?]ڻ%]0 XoLzm{rŲkW /ohXNOGZaȥqf<1ޕeGl=6g*9o,/hfR*K1eE.lƟ̏|ᷨA_\_+O"?aG! p|M|x3,8mbD͙,t 5DeNn *y aGMfw{Y!_+ܿ_C5guՔ YK[y1,UvB,gX2HH.h,8H.0~mpefY }1|V~H\ZR,B_/'u{v, rݜud ,ʌ:h҅8SNy?i՜P/u!(/R^{ qprb͒0:2ȃw(,,S_<^aY6Z`?^27lc0ϡKyߙ|~}kvug„lkc/`@mRtvq,I`W} U>4 {j>~xdhsJ(e)h?wp ƫǧ~5wT&67/]9?|z#yYG7\jy.u?ZI8su UeX̬-o2{O퟇ u ޻@kb,Hp G~Wy|m }n@@0e6m1ne3;+0c2_r'##UKeQ":E,˟q[Gy>_#x~C' VGVf g|U{y|3d@7|j1ߣ5iNw=~\:'RKY:_坉le|tK >[/T/0x.& mp$-zUtM,_K2,J_|߿ iZSۇ%3x\`_uw#f;'iP._d :~1f_DS jLw=> "wcuSퟒf>Q 6@k0`ɝmf@ROj(ơJdS'<#v9k2ʚzWeûj\^=X$02͝^ AgcSFfH+ul'fנx^r ƮϽA7*7mǷ?CKOfscdk0q@Pt3*c4cdfduL uև2A.wt<#סz̊H0E vZmE2`泉`)+dE+-ӇfyޮGX4]B[mnx*݊6Rvke(<61Flku9]p}:.ځ2uzUM]@gG=V5+VA۲kK%ߘO~ NW6~>@K ߙȃd*^FQ{b(ӔEif{ih(D>u? /.Yịޙ>*iy}n2PB`|<M|!\FO }v5B?+qi;>}n:~snxe  us+fNJiUⷸQP" 7[m%n}W-m1|gu^{?Uu]-2f, V?b{0&@-ɿI&htn¬VmDG}i+=.-t+WM_. Qo}//؋$>ϲ\~? :R8G :̥ڑJRc٣UžXj2pRbe&197lz=F xgѵԿXa 1~e?GnR|I>8oʰ,K+'y+]|(%s)_l߶U1VI?lE(bc_=fsBZx9Fb j.XϜWԝ9@uz~[@ !rr b%'.8r03YgY⎎մ j^.`Y0lOggha>#=uǠyYYU7uBГQY9h ѭm,kt.s jw~ ^'M>_؛i҈)Pyw?oh&yIRAH:GX,)ibY*ރ PzWU87$M.;טQ.ԥPf.;qqvy7& vOV&8yڜvhU>J$*@Nit@15\5S睙j:סW'E uZRf]FHŬD@"Nn4h) $h#L7 &UY*Wu0fOds. 1s2Ɍ҄VMkk;R-ۏ -uι$.(֞d<d(-U؂{3J{ނtݬX w_iGXԠv~:ӏjm&y[x#h7?ۍX~|ӍXl_MzLOoF|ݘ9X/WՌ j5~SE"yg37xӂSIxoM\\q@a 's5sCf:)ڿ"eJ_Kw,&ywZlg+Z#NmdS+XhsPNMQy<*hx롬V_qFgx̍0KOܿ0;PLYRp-ڛlviGl2٥Svd'`p}Yfίeo1\ZɾwBh" :GUW}EcYyy_wQ0sQ3Jna(4dsW n`)ZgKVY'Adj(A% $1K~o-[_Lz8`/N1IHɦ*.B?GuDt=oJN[_8kfp.7GEEdMsUYftBT1I-Jr<%Q`E29E\]`QEU(URwܗtu>T :3Mx뷣&rIY5?Fhq2^ScVllf`޲O R_?ott{hD' tPCЂ]Ὰ 9柅(R%(gIbOU*=gjL{]KP냘}w/3}J:f_v)ù":•\IUF vH9˶+gQN}Ǽj{!ր[qGoK=.2ldjcYQ\ J2/]';tjhO^Q[8͂X0f&|w^YU67U Q|l& (91?,zGrtgNRZ}m.g쭚4E;ո6} 0;x{~AnUT6 YI`wS\S_ϪOWIgQ]c7gIck6 ,&A$i~sn^}CǟK޼Nfs¡`r&, >rqM(>__?RϫW׿4 qG{~&EOgS,{*^T$.ӟϊb^sV.hY`b}!. L"؁l\ɾ!Fa.◯+@~Mbz>3ܕQ4G#%Rr|¨0fK(H>lߑ/YJDM]XXt}]Eߩ':;S<O9ꚑ,P96p~LCPyNϡ=ędKZ?_ї ϟ-yʞ>.IRA͂d4rȋ*0i3\LpwMh '/veD E'z,=y)Ƣiw.; j,[We:]믄GܯY-@P=NQXI> dBԨ Vt6(ڀ!p^j0S|Ӭ+Oc3enyÄf.o?/ӻݟ:28˒o/+ $]wH=:mi03?ÐӔE3VЕ5ߓgjz+.#kwI?m;6egfzz9 ;؛bII?`>pDEh^جE-[Pz 9Jۘ Cikrb ֊DG{RǪhtfOCj##bk[wnoj!KHv4O`h$E_[Xa.8!4]-#e82;omS3h8aϖ@RfQ4V,F($ԽH7}c;{\mΪ~Vn羽&onx?5 :wM yϸ ;|/\_#: Sxxήk>3c}n(-!$8kL>uqipAk$I(!V LUqI\?کw.oRdz m4stWae}.Lg"죴 eP Evqjiત^yuqVԵiMdgZ#R3@eT\?'L+`Dgdglau jbѡsu5c+aQl]q?&h|\'N"ڍY\/k't2Bb'eBe2ῺFjg[; q, w0sj@f ֿk@Z֟Oq \))ht@}*kǯ,_J>ճ=~!/AY%9꧶P]'a%!,7sf,Wy٧&tfIJhܕ`1ʇ.b{~7ձFJH.TPQFKpI[x@[ԯIڷ7(YrȤY\(n+w%DI{7Ӕ_ꥪWl`UDB!FH*+t}Ckbck{?s߲<|t<}8;X}LvH836Ot}r:{ פ 2Pt)ӻ_)-?ڧ7u^FW*([:M>uS\3_euZ4lnYNj  %7[m5GaI^^WT]2A;N;zQt$EkkCd{C=\rI߃\6oj\:'^0@fz15DԃUS!A[COwwo쯗S[2QL9Qi?XZ>}ZdQT닪gѾ.}C\mqm获&0ҝYjԂMrqwCbPWya>źAc潵ؿI䴄х⽰ܙcy$tIdv9[}!k={z*>-hY1\{7ŪX]ҍk0F_ ll=q`+l^W "le NI|nmobCQ޿+Eu|5/cֻyU/na{Wn@]-XW%X*va][oJ"QA˭}.R,_?21jX8F$$]O 4 [8_ฮ_X~Xzfpns G'zFQXT(cq W|!,^@bJ HG H]~\ o@y SJ@F,j\U3_J;iblA,Sjq,fN \EɮEl` !`28*@Vzir~]qf7&Y}7?_ۯqI31z5E¨nB`Ay61Es8٦ԕ7kډSg11~e^?3*ؐqX=6~"alHԩW3.|cg2s,)c4kvFX2+0'V*v#$l$2 2c_+LY^/O/vfT{cI ZF4IU4n ?R%K\t=xy걋L Y;i!8i8Bl0O=*+<3 c}YǕ!E R.fH>~\D K> o]$dnk]z,7v*dB-Ѥ "%|=Qfڲiu7 cECJEfdilz 1tYT _k3 >մњo5o6: ]jmI9Fw9K^'i\=IrPGW,֫?᛻axvPtJLmcns~e]>4A80wvn;`C3/;65ϸ(pkdd9`؞@ I++iЪ.l}U;w'fOnj`^ozP4}0QP*ż4_"'_KT֠3Ɵ9y+LN{69ؘI(1|3l#w8B8{c~/Xe5bشg7NIHl .İQzo.}5xǙ|v;=I43oa4 (S<I6Z>Z"sxsY?MxIY[ל ;()8sMSeFf '/7~Agk6w|=09s&1 x3 g^uyou3KBWx-h4RZ6`<^7{BRҒþ~`@E?mWkb~|JkZ]1Z—,?ΰF Acg\j}kGmit) Ⱥ* (U<6>g`י#!m_/_ZaMh 7j}TEbeۇJS>S* /|XtEJK,_پNcL&t ݀˷IW].ioIgJ@+=`UH[1+82'_@;S\zYɁ@q.)K>q7y 'a)oXjWxPl tf5Ȗ@f|m Nĩ]&8ogǠc֏IY%kT_57 |?v>^+аv;ƙQd{S{9Gl.=eXzНhzr(J$I&UcPSx j;_Z+lx8eiKmM`wfq%:X,-iE\P ]E9h22 ,wIRc45Kw s6e=QyYnVaho8/RgUQ;ٷu2P#be+E\&2 4Cb(kJn[ؾQSn61_0CƳYjyp:T3ԫFv8 Sl XFtqzHW+o ?5Qؾzuq~,uҪl:U?Q2;*yHӦB/WquH!l*+O(תԹL)jH΍-^"t :qoIŶ{Le<3 )9]jz@e?շ~4.akqU(ܯ{i?oiNg _ai3z_}}gvx71^o˓:W,wgWA0=biL 5y`6~̗ U,w,,[AAR*2u?;PG۾í5K ѡo-w|*L15EpTE6l*c}܀BZ4& @3IP[]̽0>WH+̥_b'JIY#gi]/T[U:U|Qb&ֺF~.} gDύJ+9'UPWs{n;Tq(wsX+_Gz;`.g?+$dqrKy~O$߬>d*|_[#_ʎ7cc?l啔%D߭`|ؾnd>.xm(ysى&IK Y }Df uY:gAod@ ҵ xaǥbrjN!Ta Ѩ 7 ^4dpq3k&<9΄8;a߉s~񐙘Z  r!pNV'T%xu(8pKع7I຤)!Pc)dc%R30_fD~b/egm|v ^A5 _Kc%mHdg.Y [=ƏUJ%} eewq$=Y1~ R//]0ο}\v=r8#1/>Ӂވ(n_5wy=i@LfWZ*;sO'3w~/!8n2//n]z 9*rmo#kFq>#&:jk`\MYxkc϶&$es[n/? 9tȵEpt "2nA)K>}'3ϸ` ۚ(E{.xc=:?IU]}.mǩU1w46{#7wЕy}u׼ٚ;MÈMlqÍ!&,2л,sg{pn=:svJ 4=7Q];DB:C_'ĵDž"=Mc߲߸ kEIFGuzF{syHAzW^9`i|{`9gfpZN0,,1ߔC>weWPsM0,ݞKmByɜ>< @=PK#8{vkMKx-+]GUMChh>*K .dm*.g cPŸ&oHu* Կ|`uj~\ϿzI#]UJhNp}wqt7#l&P ._QsWgYKVi){EܓïĿ֪T8 s%|M#'VU9+(=†'4wY+ָ+5nNnS]x忠=/C<I7ٽ@DZJ5!W+Y@ճ{w1WN|`[T u^9:dv%ǨY _KG+bJP:OW}򭏓 Yww AgC,;SUŜH5Ԣe Ooc_8㾌UIC8mܒ_Cmg!aI'%q.+20N> a43A[T݄w4K3}0 Y>³|Ur&CUz{$뉀g%f+*ʏzEư>~ )B<.qF?u)o(za )|3.l_E2:?gUD\lIxZ M幽9P M>oo~_O?ߔ7,Yh@U3^ ^Mۜdsp=H) X?4ږÎ 3X,Eؿ V[;J ,aE*1gթ5)Jw%r~Ky$DZS)s?_ͪH@o/8' pS} Su7#p&-zf7{ gŃB{c$^g: $yY<2+R!Cvݩj7QY5ɟ)'Tg6b`}g!61:^.Ta)xT-Gf? 3FR1>^рKdz @gINeDY!ITgT~G'~uX# 2g?K79^[uBPr#p~7(RB(rT*NE@E̖FbG WD³4f~1&GbYO s;f\).}iK%eew. 0X렚8~o[|%6`5AZ :SqJVCJa5qkFW]{gix P?0z1l8Ύ%e-;%xʱbmf9}ˁ -2RdGs| B&9ջoXjÆp;=i?g!{Zόy'&y׼媄~wg%-\I7EN֓`^I;{hwF6>?Uuy0k5h8) D؀d4IWO- (FeBQx{g{\cP//j N; Q;fx(}Ҩm Zs㜩hMqVof>#:e5pxӸu(ٿp"b($6&5IXKfs"UnpB7QuԚ}'ˋ2 x KPx5O{R2L8 |= ,c0Ƃ';;u_^ԥȢ'U^|Av>NIɸNx]jn<. Pw&|N'? w >׷3{q=~֤ɥE)v/7/-ybH9l?'7d?MB4y%rl=YVw%WHC]ZӃT￿ ɿ\hR3:2[WσJ%lD *ѳ$Қ,k?~2#xr=?I1Lzgu*$;?s2~yŻZYWozN\?ֳzL{5?A l_ͤe6OsO{+ k'XR_7>Big*Ŀꞻ>ZyV~_4K^QShPҗ;O`:ޫ0xL\CK%GDu%LeF$DE/h_&[a@;RS\'Dɹ.4ǏUdп&zU?_.';_~^O{omqJXSrxVP p^ ҎTWZd. Bg?\2aE(*Ebn~|" aK&W羥j4 T&kFNYyb<^X_y[7#Z7?Z#[G` 7T2`+.di|,`sXTxq4]ri3[gb3??4|dcϐV N0 e(g,EY`":y%9iiC^88.f(\.D~Ij!.ߤsۍB`k_eOз/ 7~Â< (T_2-ntw ՆDt hicwL} ؝k!}8<Ԃt"xv#F.& [/&Y0Z,RP_\tCf?__`*t4 qq;[LYh3K#^6ۭ//z'vS9 x+WHbجMl;*ïB,`?OxNbjcbg33 \ȷ+}([fk{?*Ѥl@$(Ee%]kQ w@?wh`rVTqR=`@c9( (ss璅5 m]}5U5du!:uw%>q)ת,`]VbKi/QpMO ׆-j?ՌJilgs~_u_I1ڎ*W"2d5 lct} }.ߔćԥR +cP}]?IKqSQuQIڪI2XV ScqFKd寃~]I=(ä=NŃ9 (^Ly%4R5R$&r,q PTA};+psKDYOG;D5kI(ˌ ^d ) BuKn9gT&c8t: {ۨi֯0M ]Mwg9k^Xpe[0},d o&7`t3-&9̞wN,?/=Cq8t=qĆRY-Z5P5Y4ow[~nwoߢmI ]Y_N+Nh!UZVgoßk 1 F5<ɭ:F.u/ [΂7>7{bު=@ Unո w!h tw7[ [x>w}jeԠwRfɝB:hIJ'vyx3}ASv\_bBͩK^i훛2٣LƅGt#zh:_ې^7`N@PRo?{y{T:腣ߦTJB@jLQ:{unqv(d>Lvۘ.?.,~d2ΎjP3s~;{wf2c]?&}zss=O#Ue U5-&'o^?J ל?a!OntZH}gC>X$WvME g9|wf>M߽2>,H^ -N$xQ޶q4ۀ -(muJj%GU?bk 1#js!-C[(2/p9 X(\;Wf*HAػnDWu'Z%2*ſ5Qh \<8Ųv /k62IS…?6ykaC~E FN5P)Yw,BjGc˥*`*ĺ0>(뀦9)"#J`5^k[1AQ+eO͗R/hVm.k⾵o=|e凧2W,FJ+͌z%p0{B W@~I@|njYy`zA;Psut&TN/b\?~ wINÇ`O/^*+*Dy)9 qX|e =\4 cAc:/M:!YQX^CXl/$Xxvcgv!{f=-W'I`߁^kVPCI]fzy eE`7Iot`0݄@́7WY<4oX/r<@SZtaR7Fq==IR8_GÆ"QP//j`5_fZHi]'-$K+ˆ4k7]Q]l¶X!øzDZC\8؛/SOڜKIYxդSyFnڈ-84|-eMc ԗTASy%w qT䉣hBJmcQ58iyj) v'J?sQΨK7%54ؚ\@9]4uw(|1/oñ^[E+֓™D9PO0P5;ߵ\?w__ʬD9vz?k]ZFLX 7[zy)3V҅x=?CM뭼rŹǛ[AZ?-.Я{s~[lzf6`S1Ѕ0'\{rKz7^Z\N10HߖQϫo\]Hc. 6&-R+I\7 Js^rg(~$\dע׀7#ܭ7/D!^M{^ʓ[jcj^ Q[2}lA^gfL\!zw(J9(N̓ $YaQwZvPg`?ASv0v5Yߌ,H隸>#L ɕ9ςzGgy-aʟkt$ǣe3OŢUi0<3سQ6Q<ɗds|{LQ: Gf W|7}^h~^ʟ'p@@VO[X*=*Ðޥ9`i|zM1h4ϣUh֠D0&ݶYn,A碪^>3?QK5Mw $66`Έ] -=~V\AmRcn&-`o0пK=}b2qM[|( H}W5*qfVJ&<o|| lϽCkݗi[h-_4Fs{l^y"2VA)ҝޱ3/\߮ kխ{yP95Xb0_Fm /oi(7;[y1A6~rn[CUp.P3YNXk_]+ND*_~Xz:X?st507N1 ` X8gj2/N>K&o%9?#= _C0 "{\xƛ 3eZ??_YH?rL1N?F]b09#an26$k;ʕº9BHG %>Zr.E!7'͔Qcsp%3]T:~'ON^y`z|[-l68c0~nP_F+Aqr1Ń|gF+]|OM^._OO?>OsS|s\wuMN1!tB M=%d(`&YɣO|g8\%ҩg EB1TذOiDƁiaȦ^t_!lT />M|U'+[u1:U,xVLz^Ur6(1YzRھa O(:Y0 LP-m@̳mJ*Hίq3]/0WOw焒3Oħqe&{`1Cs/JKVf?xT[M4@V{r m%at*mHϨ Wn-ozk( a9>^:bnpկGyvxh /\xcA]mV,hK0Q_ BgzXM/ y,7`wN^{߶`ˁn]C3H\Â9A~>?J",i՛|q`_\#&7$I:4W7\/U=IDwPl80/@U!Vj@$s@5u`5𷺎R=@h !-1ϴ>}]J6Q1ȾgKNN_]]~ >Q>Ǎͅ_%* _CA~Il,;p\p/**&RYOQFlFNDUI_4q8?@3Jp/6KRD'pf7R)2_le,_E$i 0r2*tbD݆O LӽQ!s\ e.-td/IGsVlFiϥ_2AqdGR[qyoY U2PAIUDI$_9`2:z7|Gyo6нt^KP xLY>[0x=V}Ws.a>t̉٦J/6;wpF-ڽ<AsML>O~YGM/vssmt"Fj=%JP&ZWoSŇ*)^@H fw6sKSf36E[>HZ:w?ÓnXc`Ru{ng #Mf;[o]La'&1=N[x[}?:i>fxyw@t |@Q^lm8׿:v47ot#n:ƴGzކ.V&A${$/*GVW\~ @v9*I9Em]') O`Z)p(o}377yo#ke4 }|=x =5Wҷ}"WF }W#oѿ1c_ѐ`j &SOvۯ7^A2!93L_^$F);qi2  *܄N m(*͠_ s(@+PaHIWBQ0^;\T`dE .7{nIVl<,Ӈ+Qcr^Td< `t3ǔGiձn2eF;XU۾׈0\+, /~z_.bNzwׁؕ(3)&՝ עj=Fg.IcPۖx23f5:y]$i{Vߕ/~@Q%ťHI$վ~1:Oo Wmim~K&K4^9YJBvt:n6 I6 u-Wo_M, vY^nk8¨MyAg.Tyغt(5~N_,|w崻}!ȕz0}x*rݕB~nf|7$W^NdMuTHߴsӍNnꘫx_=E-s}[Z>J.B>1icSur>Uڙ:0tPwk<W'2nVpc0 <2/l{tP,mר*wT_xfeb)k0}jnRZ@ZWy!|upߐ&y^t=`U"B dn%$ZdM餱bDrl2s@푿%؛}:V$'3Q7qSr|qU FG{&|sAd琎A!f\)_5/ƛYj˟RK7ޗRg\odV{8g%yş8h%M=+ d8`CG(_;l3rY%D5 xDBmJ!y(En[~||qH#=uxu6fu>ujeD HR4&# W]$*ou:+.Q]XL͝?w֙}lbHy׵=a% Z Oѥ u^]M_Ӷapܠ;[[QRiK}VS9ȭ} rۣ2A0Dۖ;©Tc:{붊l$z'4^nQ]}6*PۃKG a_b_t?[D 9`%ϭU0X`왈%k 񢎢:mńfԗ!8@GĂ3@A*Hů*2WG38m`?-)o};@Yxp3pw7]^_q?g |S=`8LrZT,c(fxPZ,?O I~'N) 1{UpFk OXQf.S(L޳RgC>Ɣ@H-Н(Aܕ|$隝Z,{~xcjn9׏/_^WdZCw@a..M.+`v8G[y.k<&-fQ3 cH= wLӆ}Z훔+u^:(w dFZb']~y;K5 .6Lrk"N~_ƥlnIoF7p)BYg[7jN{Wvqܯ_Qx u{Egz[khxrq:Oi9sیs¾=Q]`*֊.I}[h fs9fkpGGok0Q`O`oAs%ՙT^~ʶ{~D|K8t,;Ȍ5}^\0!)s^>J9}xjtmt{%{=OnD -oӘ>$2?_HyuVב8yE/@yG5Ji7_n1kP9gJNSJm;0zqg3,?Yχ_q -to03`,C;gܔ$0d;8?``kNqkеn#TqcbF߳jhHo?nZuXYqѻ\X2ZٱT}3f?3=,u\QIOg2׽\8-~(%G$@ =17(?V*q o0^ڎP쯒г"|5+&#vxu{N 'C}1Q@K7J_Wn>,p̃R#(g|tt:X3e;=#Gv~G!WѶ/6g!%!QxBCKb`3|k[TX(pEt_(oX;߅7 œz~z&M/SwJNqH₮|ӻÓe{~=g|li,:mILPFJSd=T3&˷-#LdnlPQSpLW+;1M3C5ra܄?z̒Їc h0Igi˱;IHX9@;D)¸4͒|翈 gߋ:s(~xloݼ,Pt#Ҽ=@,,<kѷNTU !/>ۻ-a쯁T}@bgD&g  ہŏ#o=t X-"Ad(5*>#x_x]>Ijg54d1L}YP_yaQH+ @k#f 񟧂kJU/L5h0͸gg[?G hM 1>K4!Jbd_V祪%ke.m95!%4/KCAm_?㟦`G*y:DСC>nL R>M(=`uS+qt3jZU;}0᷒?ૼZ{Hj_ lי=?n5 ˛W|a >&;q! U"p{w坽qLx?[H}V uU"lf h|__$ݫ0)%a͛v~QVV<geys켝psz2yT hL $n-ezhWG87@6xr-1 } N 0r1&vICm9l :;ٻ9P-W7ЮǙm#V@{b݌J(}zDk^ T لOT3ʹh=z+o!=D{}=܁ԝ#nQ+c(k,qMiɮ7w^qg,ןݽھ>b#ow›M§]ylTP0 ;~=疉Bс3+1w*`S<~ Z`e8Rk*ha7q:,ޓt.LT>[`stW^Ux\oEdnxq!A3-:_lfeB(PCxB= Hؿ5s@8;oλ3hln; ;@@@YC* _eVD} #؏n\= x4tdv`? a %S:cǴ`LRczUBvRC| (.fbq7䪘Q p8sJ/ߗM .M'Orbk2 <\W+| fTf fn`ֺx`7~h9Jj O\_44P Cn}<ͬVX>wO'܀dB,bn`B$OF-v.0/_&;\K_G"f J=ln0L!~ɪfzy*_=Nm%Қf˚ ̀}@LZ67G )ހ+WնY//6|+Ѫa$(s~_.@:l %nNybb.4 Xiыn_ 7[1:{ii QޱKN 4!v33eqh fmȮ6zʘg_7.77c[9cm#DkWrk۠կ쀿fcM& ƐETm8x\E5* p]C^`yP{}:fH(LUtahU$~y>G{/ mgے>JdRՅLgKDNv|ztz_Ϊr|:Y4&33#\3+I~o G F81TS/ qsA+`ӹv@=A- u7fs,FyWEt҂0_u*\R:\-I}왽F5w+-Y3}kw {T`MgY| "sߑhͻHr=K` :c7pܽՁ׿g Fa;lx8-xGi.i5AIQfw9p0LF$< slkUPIS\#N oV v3`v܄O?`*c*wsn;@v0xC{'p,dzP)}U!uʢA \L6'F}&Z`5!+ӿiS˒k dqy:vy5&+i9(oo/tM *8\#̓X ȏHWAaJǮ(GuѬm8o \2Ly〺:Dia0k<{k$esg z^ݽ߻ ts#GK(R&홾bwp?}Hg_A aFH?;N`(UqF6? n~||󿙼\y/T4p罼7+󻽅& M}h0 idʯv ǫ:Y78@Na B(A@ .@avtK{]9ؽbXOA Gϒ%$ ^.Eg:ڴu;.RJ51@'}DIun-,U>l>V3i{Qi~([bbO Jc+6?q]xPQA5!ocpW]wom@&wS(t^|"X#9AǶ԰)w\L%ak{țטqNß~~V=SM*؈Vr9<_Ka(Y ~x^s9 !s?t%^t[( J}0-*_u@mݵL{y,ՍiPuD~%dǩ*>Y;EX,V,\FyXtJ>1&]4ĺ Z?&(T>`/lOerI k ^O{t@?19:C:/(8WU7G2XX K'M- ~2:h~k~ 3|y]:}ud6g5@Jd[x6Q5]d?;=VϒA6&_mFq]k4R_FtM$ -?; )XrO [ΰp.䟍0촼=DN x IF&K;33;['/7X@P,,s@o]`XA;_'5 s HZ[ ǭFW~RG@ij@|0Qrq[ұ9<5.RW=I~nGn7c2Q)ɽe-Oeuڢg:'/Y_z:lq-qL- @ suhЈ"]32RVDB1VߚC7GOEtn/W %]=$8%?k=//ծ4wXhln!%sfs%]v0R%lPo%;M.!tD3ǖ:q]py,u.yɜ`PYּN.+r~\>ߺwm f"cTÛUmc,fN}u!?;h*l2>‹}kZr%hf[rIo",=9E 7״Q O3yGуӑnmNm}(xvT 60<'-1Яug5-:b]y!NnsWR}-w"P{˶.[ƭ~HqGOjZ!l#,%w~3l/Kd瓩)|3QQ|7@ԙ螡KX[|_lsUFxVxC~;`1'g.`Ě[3z/1u-e]Z ,zѵ0ߓ -WyD |] t &ZÀ{ZhIEx^?uژ,Ͱ gɻ9MrK[:*n  o+re4|/DBO˖oa'6b@g)JSFRRFO@ V@e6UoMF@ L!cw/7!XR/tY4.B՝̽߀l5,ܗ>+ V3y,86%O ch$<Ǣ4/^n_O,߱ ,?3з, @b#? ǖT3VBo_\-9uVerJn9T9+tQ),6.dn9F*S X_ñKlͨ>Pk^ Ocfݾ643 V'"oO[֫C*Ubݼp Tyvm{ǭ?W]A5?9h=Unm O_׋방<_~.B63Q^ ʴ܋4sctB uc& X_o %:h]L1 Zz Nw`p!uOghlh4*inesnO"m+DBIݞB-@=?Q;!%F i:Edg7h08-{RfeP3`CBC]Oh4Aw%<`FE\ݎ j>L@Ҩ4|V쭀)?uɎV@A7 6} YkSJXY$g35U;(Wgۀ`Mvou*{lCH ]!hCO΂R.|$,~ .ڐu5HXݴ8FZ87P8["t]I1,w|0z>LɧC<ߥ@7=p Ou̍V? :*_1NS{93VTcWJ)N9Nz =K ~v= f` ܻ5/lұj Ʈ`["<:jNPM(k2oWtgg1gVEJ:|lfy~'3Z?qH ݀%6p_?Ty_ag'DpM?(,φ]]G)Ny@܀a~PY]YK'kX>g_\wK ̄&G'H~*OΟ[:^Bu=k/%O ZWU:}\83kB+\cfէ6{㎣]صa2a=`2~dD2 Ըx$.c;c_B鯕W q %"OSMp=-~VC?ȯl ;<*a@oa_ h8= /S"ھ)KrX[CSEI:Ey'xTP:0*B gBd@x23+-L-4#FM&uG~6켽sg'}?<Oѵ w"KB{?fuj:% w|Mӭ`P>+}C~޿{nx~6:TO++8l8`2`oUkK`&+S-On^N`@_og*wNnYԤf#TqwEs:(mӯQS@ ki6;ͧ?JocB{\+NFcop^uu<谞Hٱ{Ah)w%[+|q?d3|ZVP;6^!4];k>p.?,Oh'3gT6OBXFc9NΛOCl_et%\, X=_l}VLo [: ڎfנ>݌7{mpmb}?/GI'{(`% $ 7oxp4Cuɾ}#M! R`o^ϊdxƞ9 [*ŽaP놺KSΚj-Pta'Usxjwf}3鴢%٦gXn:X.ܲу)8-?2nH~4CukG67mo"m][ۉ h0syE|`WUID®ۿ,轫OW{϶.`*l#:oݾBۍZ[3d1۹A'eM82G1Ϸwyk|-6h}?%y2`ıOo!HRfkA̟&Opx=aSDùۿV_.`.D<1ZӳwETV 2lU=4L'9VVr?OF^ǑPdt?'zJ!A1+5SNIyl2pA򾳗mXL%9q7/&2Kʾ0)jpIAJ$~Eۓ\mhĜs\w+]ObjVC |k 7Rز8vgs%]f՚h3izv8\0c| I *i;Y\ds"j`l\gh*%KX|'铴> B0!X0䟄bte1m dP?8yxčwsӹqKOY};ѓ,'=$x3߰#8yV{ٵ2s6n~;I{ Hv 'ÚqElBȟ/yT],QƲ+Љ5up_;%S[Rfڈ;d1S*烡6Wԡ$AC5u{~cA2(7D[ȩ)zZ(tŒrxvyH Vo]{k9b\hܺP͋<{^..E֦cV7Tb=I\5IlkCK\><=N`3&zR_?~x.z*߂]5o7-(PL]ܸctl9 (V7||Rrd1k5y/o 0@ ֑oh]\qn98;zㇽE|+ kO 'Ʈ]Uؽϯujm`NTDx-[~%V`@(HʌBpT )vWتW힣v,O>HIײ)zT.[,.`CjY[_`o OF~ʽjHUPZ~wo@إRҨӭچ*^Y mrHm/~ωTAUbC}o&+_XSI~Wfկߚ ݿ8;@qF:p_Eusd+:|jwwO՝3Tc_sZ\yUAy^~3Q(K;Own ҢItc{w7o NE= vc\Ovw؂;ƺyٷxP~T~kxY鱀j=ZjA@J (MP||-kIaaku-J}@ׯS蒔Y%@pĬSK1R 9JKs:,όVyOPȟH$,Ir)` :f̚<~>nrv:?=Iۦskb۱Q[dio>)H cPc5s"<|,INM~KZcögPo`vVKSQǭ6 C0d2UHeK˟Y+I|)33~7b~~@ 4 r۾ ~cG혿rkcJr?z5Y}DM]ןnƜF+Ҏ {jⓑVsw̷8sg;F;0b0mc JPݿ gJЌbKLt]0i̧{+z#ϯvȜs0?쟉XC*hVn02c3 %8&~Px/; }.*(~$w||9׿]]*Bp39E7\%wx.0̙\"i뒕j25+kHNO9;ұ=]:QN~re!^@nNOW.216Vيc *%Kל{wTk`Dno0pڸWTo2N`ƥDd+`ZQ!F)X$U[qs5Z ݐU)ڻ?덇h'+ܾ*Af\)22Zor ʺ_6_>3nJ x9GA^&dH(C頉U~Q2eH_fB3ocEMăv'wXowa:#,:g7 דT.v+x_Nfjo/goDJ6_L[D)k!r X%qwo #)/ w.䧋(x82>AJ.y޲n`q=gI&#SKbr_$~ۋ8 7d53L9ؘZLO| dI|ʟuQ!jh./0Uk1 ,C U@]O!#s'|_jE&/0IYz  xa6+>~]I ?~6}~0'Z@2OIs#t߄, u/Eʩp.a֘ʕ?\2<]S@LܧqV}Q,rkg/㟆? CYm|pΎ/{Hndg9s@%y1Je'T%,Ҳ)=pYQ^Bj֮{D~ :,?زChAQpc  N#Q?7$T}ph>mrI߿|{nZl\_|ByG| p@8™iuikؚ aZ-O۷JT Е sD~5+`yP1 t~0۷n 7g O.bfs7*(n.z;ca9 ]/ O\4чz:Nxz0 ;Ε\~}?t!Bc'sP!oY2k8Kڟ%i?x&|p& 0<]zTjVp}jV0r ȣy &h#xlMo9_t}9xr [gzhǀ=4Be7X@'~|_Wr 9zDܶv20/^Z֥;G4k~-ߪ+MXXV@\;s.D8i ,3AyG3Ǟ?Um1:PCpE76{;`or`d(?W8-^^\od|D.zqXD=9#|9 ~OϘЬqӇJB1%*Ңu d̮BI>_#;=p:n8 sͤ<ٞt~.?;Ɲ(TY|d:_#?[=|o (+;D sS~~]hn̖Hr9BA+~( Kr5/_ܲ+j/>m^ϛJ%w`PƿgPu hMt_WVtFJL㽪hlƬ3;f͜ [k4079|C+Z`usL[S`ss.[ke+ '=[VOmN71sF{,"F*_~Ď͔T$Rut:vnnqKM]NE;R jI%j}gIhQct"KɊXNht } ' R1?E[m+DhsWX [r0:Edy۱ I,mBvّ3x_+Ȗev< tD.կ˨@lZg n[`6hGjyD͗p ݣ3N >lLJcDȚ_3J$TJd6n: @hT~duJB&ߓM6n-w*"EߝJ/)P3U6SY}Q QK r>~v:5_4CL_o,d(T\틭Q#0O#8?:;Z^KyHॿYyS sfSD́ d玎_pJ:& ɿdxϖ\_,p`qLz_h$~7I=\._gDl_6ϟ7+G0#Ꮀl\ m~ac+'W<XDϞ_$Uԁpt.pJgǍ`p;0eFcqc̏[?W,SFr<Qx?dۗ'\>צZ,9hu18΢]X_ ΢=A߮S˿OiE0TrUcA>z'ݛdO-yq*#= o_<Ǝ/JnGl8Ѕ-scUrBm81Rco&_]3 78{j't^L:\/sn'pF0]W!:;>>$w0Vηw钩IAv~BN>m ~kboGz՛n1qU7).ߌ&ףۚ8AIpogE$v_y-cWO+1ؽ¼&#aO6ة_uڀV HSG750o:~W]Gçņ̈́&z*OݽSɐ:5HW?؎qfp:bJ^ڃ>joxt@Q?'ZUOz:]ߢuQ!u <|Nge*PG5mghh,?,u0jYj11a#;}XC0|vL:~?g|Y$- Y挊o"9v(RMǼhCB c4u*([/բf׻Ӗdtc^|u5pHvoUߘA>[Ed}铙[xlq?bzκW@y:-9Xθ%SR#_?%#hL[o@%ϒcoHȟѿeibo?rR}d4NT*|*.{§ׂCo%ז]VP J 赓عbu#w% HZ" eTuAƯXk'65~VTö| :,6Q>o鎌L6[@]uI F  f5`\ꩧm 5rgumJ}usWV|L'Ǡj7R^_8XBOO__.uSu`˩TԸm`igpq93HՒPדU<ה@H|M/`;RTgTT Q7Tz]0/.b<'K@d7 {]ku?vo\/_D/gKu<;`_9W\B7F| /NCĔ+eL{CȦIWg!TILR 63u$f$ub1Wh3*/uSI1?4X=z&n†|4הt"2|vT M6 3vѺ*w I+~fn6@W#kf:hxh|+צCƳDX)IS'.ogu^gw5-4D=xt\f=n~CU|*Dh.#:usʃPW{il_b8?kP]x0 ~o8ixzpҧAtMwE._w7 #i3p؀Y☃$cӂsl9H<&2YxkFBJebcEɎ^k!/@w@oByn_y8M?c+lҦo> w%`LjC`X\'/ 93XwgZ]/}/B,溢SN__+@٬ wΟL?`'Ik?c5(سl I@eW u~&s ' t@6H:vQr˓\Sm؟|L5ڿJ <vKB$GfgH^1 gGQ庽':YFHWYlc&Ξ/{sj~ӯ^ewr!ZX/גi-uKUȬ ?Yr?* ?RX/ O ٵ_'WAUJ)^A20w2- @&ζA^c^آWhc4C3nQ8:gCz Ǚ^'̧ycDktO,Fy NrtØזdQrh!36 BX$/.YK51Jdi7h7x04@U8&?T`:_ь[ 8S po OKYu[zpt<>ɻ~O.0AA e:%00Jy2#'bY&9є4!`T"r id>c fAU|.+-U ԑEZ-1P؞ S HaxR償 lc>al"ӏOE><;*Sw!_^ ?w7_R'27 tg>8twL EJКh@Xvxs XJ<useY>m%?5#t>,$3.;߈GΉ 6(p /v!KF BU`ƿnL|c,vseUHP\am?ɞ? n`~ 2MSM_)-) +?_&0%Qn $r&_)S;-Tz~:ͼvX]ei|G>|a-mOL1ǯpz-<_{8zIgT6^K+s e+YO7b0Xr-h{[/qK>>K8/'Wn0 go+"Yʟ <@a;kؾ Bo-? pV0z ]ix 0KJ?)pE>;c2'n=yń,ΈV =#8@ԎceṒP<ce:nj!GARE2:G2äL]5O{z>"$;eBB7aTW[g*esz d9h0vT*(P=鹫˕}?~ز`-Î_߾L5V8, 0{Ofeˎ" cpX'["yw*.ȯ]_F?`u n@omjʧ+ryR}*v捔vqvjsTSuπmz P~5Rj,0K'UuT-e  @S@ |$5%rm8-`@堖P e[bN>}*. *XqwpR}IxkcwB9JdD~>vF|Wxv>zoAy QcV5Yp('{NS~k޲=ê@}PZo]Vm>z%\Hr,u}TYSAf&ˏ= L]{;#:xmJMAsߟ?T79{O5oCӦt{pGqRoL`i-(Ut6hE:9_\=[0?C5/ڣ:t/yF%3Я[>Qխ3w|69uBbKօ&XA J<@=Wߴpw O7WȲX%DƖl kB/=? -Uv.Lu* lnXPYeV;hJViuGB*r.p*c568+*=-{*1Ts]{ł Yh\jJw>a,Ym.?[n欫fE(ު_:;Ȼֿpg{ǨSX]총c\XTt*ެnt{e0ovX=m\x;4q_ӗ?uZA.(|/*9o,/஀ÌE'Z@JS%O8 fÀw)Yv7Rif瀮dݽ{v>ϨkqTxjh'?;S7I G<Fkp,i5%9g/_."%ܙR! GW ~&COO5 ~t:PMjk&m&m> &@O8ayDV7@л۷ˊ{+1oM~6ǵ.(KMi_'LVkW1W{ i&ɇ` %$*-ؙ8RKqExy'ŔA:2Bf G;{Ws"{㿣 OUy+yGiK{ vsysΑ<$k-v RARyLHwA }Oû_~*Mi8jS^KDao`# *L?@e9R ֲ' 1,U34Ge?$>H`ݸBpE80<N'Z W0#Y\`Ewlk_ 0yySq=hԟXXďOrtVmw0xwM/(%cƜf8_SF7 +}>~J}dOnr>(]6V\|нtʄ;BK5%ﰚ衃7ߒw)'zѽu{CME: ܺO/^%[z\>~pӞu$q o޵fH,|u j:Lo*\a'P]n5c[tg_B 09=p4$l*[3_q>L\_'G'2W+ydM L< g4%lvxXc?q)qbgp6?8 >Ψa}c8w(_ a:pQ wyWjK^jW'0 e؍ h XT9'k[#k?E2tFeގO˘eB>IWMMe2U׹́  pMyԿ\=$~> ȶ ȿscluϹfe "Ⱥ>+ㅳ3q& = v>|3f-9* VS;kިgJĸ 7(/+ಢtڛtm\lKYߟ5:E~zdlʤso vd:7 Wys3i(3Ge|5Jgj8ݑ+[HtMd`_^.@3*K[;;<~zwď`ΝU?, :M p [ UK= kN,owjD#h#T~'w7-ԒA'72n0/@elCS8*Iz|9W=YWg)z}m^ڼBʴmk@1&q>߮ :>z04+OȺ[PJ﬐` 67>x9hiev X^qΰsr\0 SfdζN#c*T$k.>dmٞکl(z뿥~bww5o.,_0t 7 봀%Bc[9{k_IԵCp7<-"gSʶV?GA]]C^`cy36u4JX y?_R9ߘK"?h5aV`i`R7\-__jrqE+w*vvO.}K:\y9bC&_bC&I0$p0vr[S5y[ ,awGvLeFڕW2t"溨 ݘ2QP̭';J@].m:0fxs04B) )ɸ+< AA绀 0*XBfLĂ9_~zM@Nv1j]| Pg$~uZvo.F>I`&_?/W,I Xn~P70?~x?i䘖ֆ2'M&@.(gl?#I>_x Qa[2#xXZY,LSDhB;ZQ~W'2lhe647vs F?yo%q\ yUu /jfw_azZƜj%$@tWvfF_fY݀gȰpow@`EeICBU? "P8n*ܥHfj/?}GOU^U^_p,hV[X2aaǍOOzC'"=)XYfWTc]T wtM>.=|~؜.=F!7NvR:y@ԅrj#ЮJ;~ҵ tWkw5YdV_!|P(&{%w\AHc,ĆGP"G-;=[ԿN6h{湷8e9]m{o~ ӳ w<-l:maOYa):|n-hC{lwA57 \Lu#&ӥYܒlLncR?+0ږ$roq|̇*tiq[â-9{a-6/8DWYgf)7HOgYnzQg?ME4[nO.s(n5NC*?b:&dNr]?)*ۡq/)Jl}af?.*t$dM7:/oi[x<LRG7 ﳻV$V3aq^׋uzӼ&}Ji|0_Dt뷚[V!xVȽݰ<09[&,r  gKpdzfm0܍)M=臧_5yACQKFਡ_ \3.* 9._| Ec02Hl]ȇ)_(:J< (P*=kRO a'ŷ c!woO}7OPCLJ:Sc 0xJ`FೈxNKl%\?/WKAGiϟ^^4<­{g&8/3 N(br),LnU#+޽ݛ>zR1Ʉ1 fݠm"N1Wz~0a=_LIȁ[8=KhR-UozS`[h!_IRk\Ot[,]{,.[ї'|#y1݋O+.w OkLJmdg LOBK~Zob.րj ]~ROJ}17f9 Ah;)HOG0y.,ȒLeR5DTG C I18JDz~9C% 0}\ϥ֒gD@b_ꧬA_?Fp?ӿ3EHN cy{t(b<W<XF'ئ~gÅ<ۿ*ޯږpnZ݀Os>m 9q |ή]8AkPth.:'/nFb,uD`i]^ 3εBXU W}P^6 Uv#뢌":%DeM]r(_;+?=qpRyт]Q^EEa[FMh3P \t_H :Aq ^^z?>\T=L0a`7 BHW[hJ%*i`v5Xh$4ZSj5Oju; (g.Cy?`ZЁ ]߮v>+U;~sU_urXn&Zv]S;o޹+ڲkRZz[ _2ˊyX\ ݒ,Nr8̓ tӺ/t]_&8%'_ 5Ii]>r(4aD,FM`O34MgǔT*w󋛠1I CklĤW5\PL*+XURa4jLx6eF焒(T\~ &`*W׹wJQ<Γ^UY Ӿ9 dnjL5ib(_'`hOl(9SJ)hb?K|>an1nlzZ}Z)GB"HU=3hA@Xh%D0H8%{sqJ&4pr_|)O"ZE`E\Jh; kzO?3g>jw4&5-$ꚃgy_~|yhgPI6B+FܿlX┯4]_˨Tr-S=ĺCިriZ5@W/2E|-~_Zia$}̒<~.Ẇ:q;~cmA=y)Џ٤*FK\6 @¦0<:.6ᘫ EyNFPlq] 𹓀^c-ofu!ˋ" ^Y!/;:|Ek_YѺ2܇yp.)\P;ԩ*ONֳEh7NSyX-TPQ uBs=R7Ozfu^F.=9jCSQ>9rJ. P."֪O|0q:yCy1H33{A1<1;ZmB 0Qr2afktQNsd5:H~VnyCLa[o\ _5Ӥ,~ @2P@z5O]{D7 mVlP)c7ۮ k {Zv,|WL&vMn^ihs[}sK6 `_HʉsSĵ>~vN&$q!c+*wk|"|‰}R;Y ~ \] MtBl)uRtOu@E E |xa{/ \QWT췣OgyjO.1&5[Cs[ܺ]NKwM1k&U C&}W68Ap.~Ia8N򔐳yΫ/,I̖rA5p&ɿ-zϯeHDR ~K7 F f.o|ީϽ?ɧgWk'y)Ĵ:9*y8: 1 < 20ڨg~c3`S6nAx?W;b:@gc~tרs5>6zs78 i:sw?, g8;-w/(Y#52y*5=Fdq$QK)!8ۤ^ōm6*]?!6 {ѶEYs z غbW?қ(nDmym M[3t[@wO YaO?)`dgOfB1!@={:8lT‚xsu[&]f[DKPd57?1eVț)#}৐0XQcBL- J VgSf%=At7+Eލ x ҐVLcXO 0ݐ{?w=WG?+>w)978 y^z$=sf) ( =SN5,G[ {b;x.8{#p987 f7n~^`_ 76~qR̽)%<Ҥu"V|cP'.0dҼ牺qṞ I"oeE06 _ӶnS{ k?r4vzJuI<@wߌc6x966-ԟŸq>OC*j791٩:\F<+sf<5~n]9S~m+x9S!*zjs߻&\~~+}|iTaLBg Wcכ}yxF?2$ mJB qOc^͓X2_ <[sr_7MgoF/碊B>,VwyGF9!ᾟ!1ء-BOvZj8Tnm?$s_=)CZ{13(^'8ē@"hvu= ^e/ɉq-?k ttHՒQa 'w_oCPxXO xsz5Ib?}ڜ#hm^"wZw4i9AKiY zY'WNVa)Sg,6п=7lCf6B0b_"N9@&H+[~KDpn%ψ`URvgǓ)9}1!"=Gen,`{ *4peaV?kα㤇d?CnPBlF1 e8Õ٬=94y|ل ;ҰK-f8X|onEtaŁToߓ~8gѹ_*ss 9_ d_{O5*ȀH`"%!@ElNpD{NH0@ 9{IAn4IKVyW~~i+p*Ư@BEo;TH탚pb&ހWI1X$.qKbE$ ] oE/ȗ4˸Ods>h|⾬aZT^[Z~ OKs/tn07Zo ߲Pp9/i+l3}le1!,S>fy/wn|f}8w3|<Ϻ\ɬ;/ 3N[bv`E" ]ݜyi" JbtAJ§1(fy%ϯWspc' b`k1 ,8~F(lߩs^Tg꿑7#*3Mhz k84ٿTR9VI J F+jeu*UW{*O'}'oCZ<_ (lN W׽ Z꿕Z+0gC3WrݎWzf?Y<_0_mD Z®:"Zgpfe' \Q}:@+7j Xy?B8Ku<3~ -s ؍dUJҿNZ2>3]eY?Kv~"k;s N%|qj?oPxWQ}1WlR`8.|M8'8> yg0{;sDOlk/)~-NsRj`N(P^g$=QG9hP}F-(yMFح .?y.i٦n}h'?<P& ]T)$i\ZV;h%rh_G>w#gIWd;.@؜ gpzD™yT˯9(GobpX~ZQӯUmAr ^&$7bSSw뽏,d]jPU#o_ԟ)&s:A7&s-8Ȍkw7ծsˮmD'ۤ:ϿotC1@}O^D5Ut(-)ˁ99ufa,0߯lS,En_=twf=߯^iquqac]o+&~D%-p-WUyxon"<{31XS-1VB%\"q }@ Yy| ,@L]21|{}kDqA=&/FO~p+RpVl26rV. P1kGgy'_bs$15#E'6`Y؋Z[G,+Imn#rDgGIo9)6cvfjW ւ/^;e߉>T^Ԗ-7KR\,y-7YquVvBc;N?Y X!cr*x HE+r43 j_w6~}~.6oLBA@X/b$(=m$F"j( elqEJmꊚ[k|<e?CD)qD# W$9]Me"3׌ix SW╼DxU9&M4sĺ@WKP4N N5|#Ǽzԣ7  C(s` O߉ުe1)}WZ;Tm!Vd(gNC J6z? tA<*y.}3Cy~aH1 L*1e]bfHgI? yiG8&\dѐHc'?BsxLgյڀDhim$qP T.Pld;r?q`c,[ܬ1|7YŲ5ڿ3 y s++?DN\&0N@`ߙ-]M!w+53fSl(9H}I^ H"p:v~CQ9}fFWv, S*+cX,|>MSzB^riKQE`W{^E6lBDO/5Gg%P㾲m{Dy39'p尞^44y{[1+V]9w0VB~7N+MEv-3h&B8Ern7{ձ{ 4J^]SnׂBO[߼#;뎩Muǭ&-BgtJ;pJ˷s$+9Kb^zp\ ҵM:S@L.qH^),T:KfSEgy;S}xiZ&S{~@|:qq-GJ3h! |ks+l&ѭasŒ09q:&lAplCooY1ܪ[ä4pKyK/!o>i?jyfwo=3—GiQ~ϩo7yФ7M nXu;c8JSЁMӻ~8 =gN*3g&Wfp}}6. gW\$Tp-qeo;plpIAoj)<%d_=y|81Tr_o磏|,oO/4S*W& ,8ܤT&~|J7|r1_#'|o{1{H}Uys:_| V`ԋz"il߿R ٚto_ex>$Ҡr$):AC8$98#_Ed{?ePz= ȓ(R}2khHb[2kIyx0܁W0r{~=gI#8g U ԅ_%lםCV/%r{CI%J\""A#-BI.a91y$_Q=]s$ޜ_`-_ğ,H - xpЖ@HPWW@};y}vFۜ6ׄ4 ? -o$zz.;#sfI8ʁSE-B9cA7)VhFUr%*?ˢ˟r\Bx[~2Z :&ͦ|>Js6$B,']3N- szVݽ"՜Dzx΅zZKʯO*N8LpߎU.C>8UmG귺fTܭ#/C7 M^y4o*Wj%W+=7W}M~Iɹ^N_z]~T < 3Z{_#fkD.P28p?./Ϫ0!X_/趄xA/?K)RYjNz!㶣eCqy#[R)~ԁ]WU=fq&YW_=~`1D2YU9!33w\2V_(—1zGPyӊq Ce`?&& SdCPܿP䏒Ùbt.E]{ LGg)H{U*~$Mf M+'_ApK_J\m7߽mR@>#t ?5ۭmEֶ}h v>Z6yXmV]d2fH~<+76Đ'NŹ 9Cc3g8ou[xy'?-#Mt& x7xXd͉D kvT|ǭPg夼ȋy?ځ%I=?J ;6֜[0>ñ1_+~Эf5;km~ogGy2vצKǏNvVNve{WyWy*z ;4I % 4HJ%A ԊEmKbV \堐n+'n1r<;{n@l22Bc'W|+s&3Np#MG ð=~M ~уyΠѠs+LoV O"opȷ3_䵫 ,]\z6{y<ퟟo2t_o  yj;2Оx\Ο90؋3TϷBg<+ofgnXJ0bі7497Nfax!|̫o^~#o&oIY0VW6ޯopEYiMʠo0_ אs.!/ޫgYL{;ӮjZfLVFdҖῼY[otP/^g?Y K8X6dnWX!W">~!ڄ6#E;If?y_ӌw9? Сܧ0[&? &h]7 ϳF vL{(Rshу$ cSy7렩1f*!dĿQl0ņn[ngL?J5\ky*fW~j\Jȿ@\Gg~qw/b oOeݭ˯kMM(ao xD-mӿjwcwP,͇~7!?|9|?Ȏǹf\i'a'ڪbv/_직]<}'q.OߨkgaSou%K_qZe&W?τkpm~imJrEQ@y p F7JVo z ʾn҂/~m9Z~qzcLn :e(*3~_>Rg0LiaIιkh0 E?jt`WWX U- & Y ˏF\~ف A`T$8q_)9th6Au;_}''o)u߹/^;Ljr|d/XT [w6jU  ܇}|3ui0)֣; (N8gg}/)!]jY \(*;G/mxXuo:0ٺX @qj',B@ O0|szk=0u"zVՀk:*˔w3Z$X.18tpe&"@G* ]ȻmЂpQIggY\m̏*zS}ƢiwtE5;ϸܷI!#y]QO%j P\1a^`O84N$ ɓ2x')!9~28._`18,Es_Mgy^UW2\n_$,d$dM&ň+'CQkd0奶2dqeТtik:&9< Nw%w?Aw"/>h{Wܚ}Z]-wP_4XXrwK>{aS~nb7Y1 {q'+ǒ.obY0|Fo;\2 8%۫hOAc/;@ȷ_K_eWgTxzMM?e0M G =1YoLQG N 7"Ղys*10APwm"TCWW? ~GkjVsOx#-Ghj%q寯]r;@[w"9n6~H$q#'QϜ fɶCvTxS bXD2i`,n&8 ,W~ݻ_UZ8L`>iJ8Ohʆ뀓y}OT0)`~?6hdFr*'ϜJ6><߿wDVvi4pZN&,8y8JًxOy?b 9;U&"_qpp~C`MfT3vG/_G%IX*n9'pXuo+j|,_I/:r3`$ɗȷ[AOk2 BӼ^~8glg;='?m{@y)O/@sFD|۩f#Ó/@cla sYs72،啕n7oI85y3Xh:K4L׷oӹqNk$c C֩йɴ,ofם5R٨D!NB{`7.^~F*>['=!sRW2vwGэZDD'NL␝<~쾖,{v.nГצzqC+ԷбֈߚoV͑"Ob<xI$vVS <#/7,_KW~0NWK!0Z^ lRw():uM)~=Yq9|`\@l%*)_?rX㘢 Nqk#(LP: o1h2Zqt‚U,f^X@Mj(h~jC ,HsH'JdgC ~~5"?_TK~,s5^ ݀һ sf9bM쓿V-354?Y}RJ*R^"ZMg{Psמ;C)x_=4Ƅv,6aN=gyL2y72$0(XX8ѻ\ȓ ݒ[e(HOL,`# }dc֏IZ%kWUp(T~!o=._{FqUW ңּҏa8'CwPI*qgaID  3sv_٧q/mv}Yz\ڇw~~ؾnCm\*n/ 3/PEIYTvf;5nm;B8%of?%ɱa]of<,4Gu("7v:~ҧ.xJ̦{ոSrv)<(6g_ )旲%L4R8D TgA_2%Q妼@ A唓/TkSNT8_N5okQ Rw\}AH.~*o/3ᓭo>G=8|KSS:,p?F»n{m j \o YnD5(@'Oo6݇LJ_P:Ϟ6{}>RtP{M7+LM h1)qt!4_L4 t[%7RCw =}G«tϮ&GmgHv?+F/%'M L Jhg 9pKသLoY -9E㻼&ߟ'~{jeQw%_GчQ1X+^Bl0C l51Ę5@Zb%^*_ZCFW߳P*+ȡT(ɧ9LI^,cϛ` % Po J`7X?l;nVuN]~1|~0M'ZXY4ݗUOjLߔg3\kiR%ڿ70O,X&} xݪ rR}1$B;&*8Ѡq1jS9Xv3^׋Z W2%LKHRT%EƊgȥ1Hh f`+ҿV”/Xʎ78_1& P c6}^ɦok{!O[hA.hQ,Eɔon\SB9Ӊd É_x3hxQtLv `H@)a.R _(s)8p(@4kQW?i+O+N9[9LGhxL}E_q\?t`Hس/88uH8pEcUsouQx~Zh2y_S@l֊FywIo@ǽ0xTY>1X5+a%(sP|Et R>)v?QiV<L.^Ut.􊇗X0~@[O5F=In:%Eaˏ ?Ƣ1-]ʖI&BAT>_T5&'4[N &=3<-AD{nJ9NDQGy!Z<_)x~˼Y;HpdJ6ћ Kz/哂oPZXMއj{(T;ُ26^E]Xk w@j hh;ϯ~2L!xN'0907{xM %|_GmnggcxXdT3-Po9on)E͍<p2)5QQ|<:}5[ .mDJx~MYu yHY]o*49[ZR^\[_MW9 IZK*,Œ|% jbAlF<{#$6D ̀5reC-<;B@UT +V:o::UI)J+omFl{%Q+Yؿ5)1:AwϵxkFtˎQN#' A;Opv CN>.9VȦ R$E?Q,{2VM N sO{O[|6R粤@kOikr$ >.:1N ז0߿W -Z6B=V$}d-lm`"W-OdpMwʪ $Z$ooco_t_F({n>;twӿZoXݦ7jw418Ӹ3uinI}Cxyʼn(Y'm NA[B yL#0%O*4-*O"oP( ] )vSzhh NygGzP,] r9zM39oz߷J^O5#%MO; u/(rHhf ý0׿ƋdD\tMOy#sl? ,c(v:Y~x݇׏?V%oS)@]@(y-z/8Met:.ކr9(M Ś#4:!h/C mm_h]qu:n`8'Ds /qMGI'b,hA$N3r?hNQ&FCa PPBOr1/}sF@0UNt]y ğRﴐAt-WY8!-Tȁ;6?weyIa<U2~F@ּ4B#~$|jHfL Nhr^uS@uW"Q6g2O7i~xk4>~&䧀l`Qz>~7yxw*D@YL_4+hvM}oӮY2P/?p0$]KhQG@t[Ak)W1[ETFlMҮ$8 \O SbPT܄4:40L+ٷ*7(h*,4sVq G˨ZgXQ0 5L,@4 €ݩjƍd묚`ou ۈЧXʼn`&Fx[g&'?@q WDpy8닺 &[it"0t4ɟ̕*oe$yU;2pjG~e1>UgO%˟꼯!_mZZ˦pl8Wuz$LvI~b$͖~&?wg!-8\A7NK'/`NU>|W=~~vOw;W˿{7]m 8q=JI$9\4 +C V 'q1*ʆtld-}{gFj.,oK S]Fǩca{Fk&x@w޷j:Y(D+kD=J'}54h ѕҕ]˟ߧw?H^K =wFK~ohZ+WʯT=pAM͝kHo _sǤ~_xKw]OІݵ ;>cUڌa(٩Z>i~t/i:5!V*S8~vEe~pB(RV4~OCee4\OU^ t_JM]r6lIsK5K?4tNp޺Ut?둂hz.֙Y^hx՘~ _&yw/iMsAD6\t td\|EU >5a|TZ]BEcWM]sс4(wW:|" SÖP'>ʦW T&5Wo^e}z|U\=sK Q4?FKX$Z9rhĠχ8t=ߴ[3sRy 1ٍ'xvݻ_?=}T%9e( N5'vp4*  z)NdQ)jdI[bOp%}"^f7B-č; ~Hcۍ3y!dVWIEt p*])?33y3~Ns t1i<p$ƨ2t3^XobVXi5s̅=s~>' K~" YSdۑts5)ShPqФ^5_\ 'zwg ۥ֌W;>ܜ|D+G逈ZYh(o>C݅W/8K@O/K_h' _7s_R1m!&`ZiӡCh7Wk_o8:JM/.~ e㞜5 mt" Y bS 7"A&fSXD2 =9LSDE8;>7;KW[5)$ Ee\A(/_;l4Lr8' `1zՅ kO@+P‚7T>fa3_g/EmUf"V4˝7)ZJZ88*1;rIvo8 wࣥ:ѠQho!ɄRRd$;ѓխ\wY#i c_p@J=h:ˮ)\CGV8PWzЁu<^oZL"nK_oߩ4qk2aBwt>M.'0f;C`vV^'Vwm'&93E?݂Kvo6errܘk_6u\.o<6y@~?v;ڐlS30Faÿ4_x<PIo52/v( |7[3ݤ.s~s;Aih>.9p6] s|WɟmK )d o&7`t=ebvfI8]MV{C$OSŸ'Mz}\_UK~G=cwX 7}NC?\MnI^R TrVvl|O:vxnc)K;^D&wo;p Zm?g5JHk S;Mӻ#xHԒ+{X~z# pςs Ԓg-o~\^@?G:p( /HK:]9iUcg9j;_ׅT4dw@,>u~YP~w ^r[nMfT;7My~PAyo2w/i W]勹zx' tlMBX^x6w`}ȣ氀^sj#C׆{)?#ѿfGAlw)մT:1v2Qz1_-zI|KK!-BM/N:_ˈS9Q8!qzEO5p*@AWӻN^G)`'pBoN/OtVS8< Xq6]ưmRӦ>m$h B9|C FO1k8 0txB?nqwp?:c~M OC?s3IaʺXcm1lQVÏ/%%C_٩TʖX0}7 K_3EjpwQ2Ezug;S1p0&-> V@ h8s-2 ܞǭO퉠!o]:ţ܁8*-utr䫎"!" N>OgEx)Yf8\->p+.3HCMc+$4tu!<@'˯I-J݅x?C/>>+]$`߁_˳L%N\! YI^|0K"0 2 l\J y*Nת忏;V~ 9vޭOK$׿$Ǎ 1;\L _i>7ȋYB"Op: %n~< Bp~#Ke_#1!х0DmcXʬ+O<ъpAkeg1S+}in/O=Y^ V FTwa&Z\X@n@M6o/|-@_V;f膸|=ϯ勅_CE{fxV dXAM(_Gڣ_+口u"UUf8UW '>B ` 1~ϡ+HP/ 誝c%)P&WL஠[ r7c1?HGsdv;\?xt'?Qd va+s&[uJ'\Y1xiAk6Q\@gP'SFYhje{J.n~ϯsAr.[F*e?OV9# ==sv ȍ%W /xSu"9pɅY1K& ªHyͣw%-<ȟŸ1aZ2KQq5WM8".(i*"r^̱3|v˂0h'Ó f pQMxq_`@< a2#.1 )ɣF<շO߿:_cçGW;3H!P/ R>9g. ɧeiOAG Q7+qto[63?efI17)ܮG-l%_/'OO^wo$įG_qX̽X <w-P`kYe'wO=56NiOU]>fo^fQJV]/ GI a1XJysf1> M*}u!DS3*V]TЭxJ^kg2~b},Ɵsp]a9+7((W榃o,HP$8dT,wy-ޕuI!:82z/ttG7uG9VKJ[l/?xmȪG_]a^akr?/! m eZ~>6ګzG@:0L4^ HX8QI_ GCRuBGʆxD yI2 gdU=B{Eqqu%ߙٮ^'_(MQ/<.OWgȃצW hZc@:yn( sk>? .C8gZ/<W 'ȗ }35oկz0;Xg ׄ!s p)\~ m %dNO߽{h>}5~ܶeOL^Q@gcďXZ. m u{5Ж|o|Y+W?VPyUP?Ӊib`3?M^"Jyd&=4*yU֌w|[XJuYkXP&ts穃>7.LI¢'L0 SZ{y]F%Q)ȱgKN~7w4>S~i{B7ˇI4~)ozS5Q Rv4Hߣ{¯a3M\_wNqYdʜ;Xg~*NO;xzBOyHhpꥪ?+*KM?ڏ~IP 9+p\{|[ePk$`;Xb;zrJy Lt wsF9P '84T)67Y(I? ]3mXٍ~R8lS[Z$WQ ֹ"_g[x瘿n!\C{<$,td{rTWhSUw5v 0ph-/uC(7T-GSE+eSjx}UYQJmY>tP&ӻč q$C 8{N~}ٰOɟ+EEJby1ǁJyݽ? '1+4B3etp2z~߁rgGU=^{_-|n^?nldT-F.\STwi 5tfWK{e?8(>k]>lS|N/桧,_N\g'[ $ TJl>֟9Vg.߮a-g&~C%S Gxǫ0';^Ϸ]ɛ ڗ&$;Vݿ\E8#a%JzwKW}lt)"r7|v?]D3ݳhأo͘qΡ<<8\.AW_E zLU~5}kauO ܿLOVo#>:NL"4?&RBfR=~+'pYWzt#l=S&ߊWL<244jtjK8Bqܯ+'lB5졡ωkߜDqТDc ]{j*P;oSc"~VAzuNŠԧ5qS' %L"ܳ{|\X촷_awj>^9iP8V~ Z^o 6'GmY37d??!# /gT*LO}L>9`d:߅~7|OEy#nFysy{!]YJiZAҘ)$"1"2KyA|02a6m;ƸdwykP0p4S<$ZKᤱcDplR9|GMcGI*zQ*Vg͢~,_ (3^^ y<)ߜ7+HGpӨN's o\6l.aŕɏ"z@A|'x{M =F㏏y@!d-$j1 ֈB1X`XosMAC|΀/_T!) s')gP nf_|1~m gNdA!}RF_ ;ïwxh%bS!LM0,`2ѭ] OZt + LtS(j/ ϶Cpc3qW]?"s;{ MHR}7'3mSHS<C>Ɣ@H-NptsXrJ>tU/?vΎRUӿdwpQ0]u HE$ h0GyV;@vyz3Q=#BahIgK^~ y1Ysނ&:W,THl>w_^̟Qfߊ:4^3Y-:%77>f03R*w[\W3\-A4k}N)ѻ=Lr4"d7NqstϟϏ[e[_a @pNjt,?³\ۄyz/Qz=GILu F̌xsJi˒;/:W }yHVw4RXEWï`cjP_;=L^)EoE(7'`d3X( q4_wWmIxO_3PLiauudt0xLKn*JнG4פgblB%0-O+k.ڻGbT@Gq/XuQ.YL,W76/ 2 @XRk(s"Z"}trVG,NzL+3{ -Q&n{;"fS~ aX 9=&*bَsx}K0.ZNHzZjU= =4{t2SODqE)Uxާ`EݽSfQ|m!F$k[Z'<};o>ULbY4|8eQ] B[)gkP֙ Ce1-lpktT_6yLD,~ 3M~e NYzwwm܍/IV#~n?<<]x=ًؗ^/f-:x~,QQJ&rIƚ/`2C -&B?G8M46nȤNTޜ穿_Ny DD9Ƃ#t}2`c(卑E4&٣Q9(y/G!-)|27+"lYb>i>y>"&㝄|h&,D'  xƢnLa\φcتZaL['}eg\.TvFT/="XQ$}ǡSW y$3K&0P0hg~觓Ѥ~}H :yq"w>-i%DV@ldgo(mTcFҁՓzQm ;~E/4ZqW˂7 =HWT RF8}eO_ˆ4h0mdm3[3;"1>]O%y|F۝QAK|]Ph@zuAήV_~){݌)LChJZN,PHJ.KY. zq:祔??=|6 p\>XI➟<0)~[͛"eE䩭xU`do+EyހsGY15Z"XS>cTqF'ΔBSsyߍ́ODj&AWT(28gO@}An~q&Ǫ|Yx,CWꏨWMF&Ӯ<>/0h?V֝_UƂGzGс3q݇yk4o>_ mL_n|҃Nwa2gWţ<(LzOKobQ?{uo!65_Qp$pfa*-l.PXk@?mr`k 4p5 Ae|3Z/b3u&LLHrVC 9Nrؿ5uA8=C[&Cw ,oWֳ^̻ G@`/VWe&ס~G}F2+G>}QRFW <=l4ё8` a('B WQZ*M ^d]Y_4_zeFTw?=Nv-.g_jwD `=,\,nWnߣnԎ20z; V=L^gH'ҷ_s/|(u ﷱ2}{r;&7XT x7(e&l3zU7ɑ1qH/†G woIͣm,3L ѩa'8fb1G L5y:9yK%Ghn6y\}>gj| .Qu61j vKկ'Tbԓ{ nSqwV<fb H 5ukc.󾿹}ww'ڒ"6囗3/.~8%V|2憭u>n Po3 {ei3DnIkeC2DYTﶯeU Ջ<&9~)Op:X<3HVRF!2oyggi2jdH+W8Z^iP Bjq+y],ȿ*zsxDf J/7s9_Ig{flMH/Q?VKZ5gלN-㦳""s`L*Z㹤fQYsWjlz2T4 ٷ7QtU;K/a~?\9wޭl3+]6!,m/t~{/zs:wEIcNۼQϿ<}zO/L'kxa~c2pXj .8:neKsǢ׈go]8'EyBF6ZRzoMoDκ˦!~_|Q [ڰc?H=FLoUgt/-Gz0-jo:Vh@w-q/.? wDu'`ɯG?=PFkH'8s]ֿDV82 6't$8Duθg)_9(a;:o˟^f/01}_mw5{Y%/v |@(υ<6;@FϣbHiPS9H>9)8^F<lt`,UW),~Dj׿ YF7O5; P[!T ~>VuW06n㽎E\8>P—׭A"M;^t_6@;"т20)5@zCz\r`H=Vt΢f Q9/'Ivd:\mxR:|LaJ@Togҵ'/YK_z:lq-qL- @ ӭ[` c_@KFqb2|M$tc-GOEtv~Ne(ߑdǟ//SO}wa8guW_i~G=s~ͻA d"=+ #q8$ ޖUtNV]r % e %+VCLM{o&sEPew kл=FqCH,EcIy)>/*U7j<]̵u-Q*Bɽ&A>R* |:oX+o7yJELsXf[+Z^NL9B}|.yoOblym/KpxE6(. |H,jAqX9P:m626g:6{ߴo{ry.'빎u&Os婑Xs(=ߛ|:ZjoFfk-? `m#\@~&![!X7rY:7w%.gm*6bxN^cР8`@'Ǖ'f*8ɜ`W8MD=5u@FDo^I#3kKҶ5"9 IZKBW}X+lyNE_?'X0 sʩs}[KÜڴRn  bԴn ?f$7v}RORX#ncEu>A 4I1`V˜&lj[ Di5V =rJ,̿Wd&F:_:ΨН -oG>clwl]x .&R|E| C8iނaqE(hfP-G)8ZO[WTbWM/y#5LZ'q]<}]52,n{ǭ?w]?Z4cg A ?@|{t՟usᧇ<)o ΃?~YT侲deZ]NIJP`aCdhbN4pB}(b]t3_ϵ |s%m  \R2#KLzw;0KuDȨPnNJhv :s%wS_xyIxAJ6Me DҒjԐ| gĻkF"K=u3@],ga[ոy8}S?Ɗqٛ>;w81OsDŽ:N_t5^n8^R>{VJZ1-cU[_@&L,=1t.R:?-?8ug˯<u \f_ ݴoL_V~=YDvOǧûNCwLb/Dbἡkb8ysz1w1uvl't:ZQƩ6)T w"gtg$}R^iٚt{=PT>[+|q_←d3|ZVPsx v^+~ݷsofiԮTsmROD>GLsSy\v$v>)VWBXFcYQC'ǐ#BqS:R'9̒ՠQ;Lhc thTavy&ݞ3 P5T=D豷(]hU]%R~$g印NY',b?sȁ8+ lEz,u[Jrur9i5TMēNDQ~z/?|zY4Lhy?mTR /$vd @ڠ@ѽ.н=;F(%nT,3]@U_EF69QgvGpB +{_^@c0*4PLkL(¯xZh.b]#J1!Mw3K]{tڃ0. 7ȝ߶ߒVX?d=C @z+v M5\F_'7>ޝ9Ӕ%szOc״V~4?M̟ }F-2uPDù;vt![|*FhNTzCmBsǖjs#($p,Cʪ4!%à߬vР y'?>%o+5>VEE{B+aWMg;gD첁h"n/\&(XM'>F+$cx|kYC HcY# 8<ߒ俳  +54=;.:Ya-xɪ O!?0D[Dz2u"JdW `ϰOcB s#1cP,ʡI7ώ$'5@OU$?up,O:m,mvQ `84G?oNE`,cѣq6# ^%׿ оH\|7÷m~5藰tNS:9N(o'_.+em7؋Gv^6^彾utk峷Hߑ;ogxYfCyӒR?t&AŸΆFCJ4gKn"i8+5M0QjьߓD(K~:f9=S%o; VF=HX΋irJETEֽnމ@#0u*BUkeG\yC.Ω U\㚠ϪW#=Q'96ȇ!J0U>~ߒ_|<$Q2+.a.M"jfTZ>׿|%_ʿNA?FkQp =jU(#y -_'o%,qvbS,wN9w#XVTP#$ir۾;ջGcӏro1n[\@=P zAw۱d6Hd3߬S"o4~Q S[0)oQlؚ+̾3S?LQGD0nEH1jk/q@Q 4H@"IL&z(ֺkpdH}8ب-%"xfm=l9iNGߘp.p o/لmK^HgknV3}c^4ZQw$B˫ XHCoXSHuzdo&?Sڳggo T@&Arr_b/|~X~kc>?i./c9mN 90蠣|OhdV~KEa ^э;Mũ=K<:rk9Õμw a":[37@DSy"7T_XK?{/ (>R?gh`,{\i@vh>t[+2c/!Ow7/dқzEIaqsN=_~: {#\3H;Yd;oם|S>.Ni.i]I]gWשb]:@f\Ck~iϊ 頋w :?NROEXcz %wscBWop|?il*Xv޺YfVssQ "+*Ύ/~{^ M !]3\:ϼ ssfJr1Ne't%,r $Y0ಢլ:3DXB~bCXssh6TTsstԐa9s,`*sɥr-|łB,{tb3n}M02Xr$LJ)%nC}lu[v$#<'(sr<pn5G0Ψ7P9Xegj?":g܀9{7`)_"rKq&`Yt>eY{^K#xTS?!o|d*l%1'Z9 9,lFpskM['ʯfs1XDyaUEh@40 u{ACB0Ǘ7rf_[]}k1xρs?77+Y@n8>X;(RP@# 8O#0 "|{۱j9f1הX ^id2"~/]`i' fp\WIf?TO[ 1U(wZz}`||e&Spkl&upodݼFN|͇q+"內37O _Oo'Zvp>)'Q"_("HB }}P^hNnvjz|Ζj"zȦ XakҿQFJ'IcӐ򅊿W?գ~nNzaju* ;ϱܓ|FO-w^+RZ~ O  xH-'s}}|08Bgl?>>?l[_HR ֋]b'JTJ'pm"Q փ H~*. I "?M6xhiբL^-br2`-/aSLg+J#8?q><\ f/~g9ȪIeoפ":2lyp5濻~(FC<Mg/ϖOX:la\[ڿˈ$\_wEw^|ٞUر~Ο7珎.@/E_Ͽ&s?DS3WO,wؿeoU[@UN蠱~,x |_f?7fK GށUJN+&~ J_ѝb 3}b)e~?).y0#=F,/_Ψqf@ w=7# ]tMSє!sQt,w-wgC,翅tܑw'';)-^0=CU#7/nR H FAto>-scWrB t"θ֬XDUhSpwNi=O<=(nYָE_ ?.:@ w"C;`!I.`iU C;˖v7#>yxW?ȈzNٞtVs+İG|}\/@2r?31'5w >>-/6Rн hĔ{2eҴ|>ܵ$qz{~~1eF;V(Q Qg?FgO|`ysR ػcϥMp? h= Xq CQ1ZJ@Ոa kї#;}D}yhpV;㣄b|8&pmY=Wͷ:oNqe;*$u^\^xl`,/u[*o]lzwڒxQ ~䨁C&뎵 O5!|Xg EB3NtQYVP_̰s^սF tV#?Ǯ8u-*]߾d{$ p[lߐ>>??۬Nҋ͸5|}b Hy9nCo{PA7pos?guuL)3dK|\iZp}(ڲˊ=a\kٔN tN:3V3IʶBr )k8h;YSq+jUP>o鎌*-{9/Y]~uIF g~V0_}]"uApڱ0wq*{@j v#UƦh +zqϏ?}O}9yWDb|)믿z߾;QI CP~x'%P\,]IPF΁E,C;hyu2H +RkoOPN#e٬ "j$˩_!og߇nys >vmH\Т-!Y7 / 5 ⽒ˬ`p?9.E-sEāݚ6swٿNE_9Sٓ??Bx_O_ d3oei2B04Y+_frimڟ|:g{_ -!W rI֕2 F-mN}1Jdh @}ܝR.[0L_a7)dke&Α9  (`` FkIҿI\s);ۋi'3^^sey4cvB.z. *"|)69S^& Nb z`{oS~։WP ԇq) +?k+Wۚ(-j|;R0{:TlŦt$:gCz LJT`tMtp?DǒrMl5Eb/$+ _L5]^Xq3o?+ox4rh?1`@oo،[ 8S po O4K2-Yu[Aeǧ?O?>i 4ߣFۯw9P)Q 84 Ш9ODS< Y\UX9,iD|c %^ũCȰ4Ag7gL{y \Y@p؊ #NA&||ahrKyV *z0(JWU1kIAv1Xe̅͜P0}_.|oܵ7?l\U﫿@@xi:!ג-i[79\Hi>u*6os}g%\`m|V bpvsÝE;> ȧNx$?xq;h߮yq-ƪIZ|c/u EZ-9P=7, J~. w\s2^.!b>R K<3dȻ":ICXj?Aw}^7gvk<;P)p,3\"KI+09BhL>gZ&1zf{?ߌgΉldኼs'$f!G^ڒX`C [RJc7ybs/{Cʛq3l?ɞ3-~{=/{aO5iUF(nȟ%#n3/ p.{m+sg"ǤBKz-Tלh1)`XD^tϱ3\IsX c <az3)#vJGg?c3yw9Vl+e?~9n=M cW|@yZc:c+]_YkWw>T泋*U'bY. Ųz=79ֱI'|K$ON}]_F_`u79BRbNX~tX\~^6N) 3jJ^i!h09jP_*7@\/>k9{k2R8y^ (5f{x~yfz|L%89xJz[x!^a r AJ4{I<ص}{"YWO5hLo&YX~Q@ez[p@}Jj} %7xpTt{Rj?Yetπey%#87&4LMu-TчV3Op47Wy@3-`dž[뵝=[0?{jf;t+o?yF+2>~I}~ sF}ًk/Kօ&(Ȼ m L-߄يh~YvuEUb!urϏO"Xwc[ 6kB_ڷCXi߃j+T2n{ /3~C|{G7mFiWqDyG=eD;h5C6Sk|F2^*PnH^p*ѱ<`q )Ve u(oF27qE%<7,d ޗ?c?CRȣBDޥ7SD|q~8O)n}qesqIkp2Z4, 9됽tFї1M49f .1E{Wkq,T$љlgٱd|vty-WH_>d#{%GHZ/4XKKs 4`󶂮 2x÷_٥ۓv4cB?>}|~~v1_:'@':y[`_.:yEY*{ +-qmԏ1g`qo B܀bWV+S?v/?o<GezSI D9|Dw96)-#?ij"h{@lt@Ɣވ.օy#,#[h>@ޒݧ\LsDB ̳A~cUsFt9N?%jsYd#?)c߸7,!]Ϸ;P) Xnhr`uOhq^]NMYE4%-I8s`w2ዮhB%fO-'rM- U;$qR~9% ф-}ýFQ…~'Di;8a]!v_ xϋ!ᲢbT~? kzݺ+궤 nQ~[LjOo+%|092xAS ~O>|=N,9"\jn#s|# @1/89t:.Y38ckI02 dTv[yG WO]y+yGiU-x˛Cr!C r! cB*Fh`=nowW_43=1Iba?<JJ֩C4'_@9EH$X۞<AdW`2Gm?$ۉ?_V"xw"My7`KnQ[!I [[ (|B?=Q` j3gߩc׏bB}7.RC27'F瞼=@M+ksmEӪvn/t9|1Q}s7(2T0cjz%o=I_~KAcgGVh`/^LNm^ \ouGo?v]ob4}4Jk%=0_.ϰ .ր2T聽k ?֬X2^J&l=yX橤Z3B&~*r$ߠ=!nTB~`}ush`7*f~k5z{ xh?@ߡ@L>-,K}K_+UvS{~j}E9 @fh`{_e+Z8؛^FjƯ~|?~Q5La&2Gp>{w u 2\zof-[Pi'n%RAXfS؃w'lԒlNNc`7_; Z UpX!}}řBAY/?|_YCY?L}cOة@kB}wXD^hl+#gCKYOC< Z#~G0_TƇ}w߾Woz6/7O0{6,nA D9}CbQיK"Qb%u7巛ۨ0|hv+v~c.EER?䋱 yLsN Ii/џ ogvw4чF ׿AcA,O2!Es񿟃*`ta$?%o l9 xXLנ}R4ݝV +/A^\QXo),,L k"?ņCDu3̟Y(<9Jc Wdpj\"[,s J RO:墳w*ad"+EfĂ9ן׭^8+9AlFف8'껋'Gl]@ o-_siߡX@=[Tt?-lLwH6XϲdZF̣?E,9 ̠1gj"+K_5͝t~ʼ5ү}UB7%@"O 3p]x'B$0\saXƢVvI9:oyYPM&*Xtok["P^gm5J`,OM+'Dzs&SxuS#9Uҩu4_fm;g(Kt(dX5 ePR٤+&0HWţMYguhd]:O֛XoHMgj[ۓώSzK°B~ﺪ{L,4pE%?;uqLs(?3τ@qXLeq Nf g+5xyuZ qLU 6yxO:1R#I-C!}uo?ƅ\AĸJ#s*d8Zv3`(pˆdbf*B& h.\ܦȲX:ܹ8΁]dX#X8nѹhYP'+`!W pJ]XTPŢ.t-(b..nY)Y,>>oO.Ws#TTz3Z鬔-hQV:T0~/TkE,N˧7zW?{>Sq}2Z>(s|Kn`(5bCȣP(ic= `|5NOt0o~Y Aӭtç$8h#;ѹ 4~mmF)TAgkC<w/F3[~ja̟O)" uY,DҢ CӿMZhķ:ʞnj܈TY080ֶH2,b |6EWKk>3 t/ }bRZ45WYgf)7HOggV^l(EuSu=$ч9a 09 bovӐ1N09B!ſȩDQ З81~_8oJpTrʂ2hTsIx~QsxX#~ -~8ez ±{q?s9hErjux-O,PS0 %'3 h" ."JȏZb~*m6 Oλt|hK,^>L[YqinIHEmWA`$c)݀OH`^rZ&),=L_=Eێkޡ-?9婢%p,˟E4>iͳzZg;,?Q_T|y».F7@5]; `h"'kb .˽ z=="SxQҀ?_t !o&Ta T jL˳"ov:%iE"3RA}Ns- >S|[\ ɸa.0Bg%kCo?b hQ"FρD-oH(׊EcGuo:b5 4aU#8ڧOGD? ޣp:B}*;l/\@I#e#师k(kQTWe[ J< (P*=)ÊO45oB.gO}_7?(l|tLo8ݿVcN ̨0UǰXfo jiNK9. +R+֡d]!S[Gq]gfyN-_/WE>tρ[8=KhR-nl7 =MB(|q F_ ]fMoonՍE_@ȹL|&f~||syп[s~/I6_7Ayy:돟>?~kYe߶wLJwwޗ-4T *"40;T,EךBW; m Da%\eh"Wuh u36vFC-9.ld;9-i(]QZ⧵F,݀ r[r-\1:F3 `t5kQ$2SD@/1ʗ?<`M ^ОNR.oYoZr+/?pZ8`z;*mB}8hZ.s hN뚟Su~o7AG6k_~u{`6Wկ*bҬO/OsV{Wu =MμxsBX@^4YFwIm[=o6yU51k8 莦`&\3`jS7pXlml٣[osqBq2yʪYА O019.N۞%3L3\_bޥ*F傯O#/`Hs{Zt-{t)Y~M%ȖEӜ*6 ٯX@~zU=W}'ZΐU91&ohH#?cbYވ[bG9E?~PQNHO@ ɪK!i4c#疄ϭ[5q34p\|_.O`iOv7&ƢUXӃ}e7iGnO:IWrtP$04k G9ϛH#$nsdiI^ݡ)JėsxS⹼L,,e}B?fnx K4@"@) υ bs5y( iu4>W|"8BtYfpcp$|u޹GKQ?!Uj<$^@'PB[c.0q tkP۸.W#lL ' -~}_kqj49VuV fջRsfgc\DxkۄJ,䯾BifCj-*ys wf břD{ V[HK=fH'S[?OW-yvw-/THI-{s\>1k_ga?8`}؁;$3? W+]T\IFn|Vq7tߗ;Q;_y|6hG!gV,`mM6feιwRGwш=Y\JmB2W0ɨU94>׼h+S 6G9"nYyroc|ge{a>ݦ)8?<54l+֋H[e?_{gOkvD} yu.϶kM>9=)C.g}_77aY3,qk"HJ &jUC55\sm:GkG.8r ݋aGiFY| ~5Q:O}wRV1M泌gӏf&gՁފ/mhhDCbo~g[(v(([CoS&NW@G~[BAM H"ڝK{h)&uLFX[jJv63nxvy"t,@YƾS)2n#($LD(3D0~Hەp5St~FN[N)FKz=Č-5ikU@4=$q}i&d7WIgq[o[ُ<~V*|u)9787<܌C&>A0>)[+¬lb3oViadN̳BG`{ 6o`2YDsۿ,Er qHwKhr,[ք ~vZgAvj)I 0Cۜ=]]`A{q,p,Zϙ/e,yȢI͙` 2"n܈@*B wCުaϚA~eDpԿYҊڤ b6~HϮͧWGi9wSl?T>gS?OAGmm1W/?MlAKψ{=`'qFcm?.$Rk;%{+cΥK}{פ M73m2w;`;?q4r|nd[aUhUIgucgѹ#A2f4lcZ9FkB@Cz"_!^:=+ }?ǿK? V # d1ts̯+Ɲj- sWHfg-%/k\zk]S_>OO?|z9v{s3J8i@jmpwdG>۬B \g,eĺK;|E{d{=߽'`X ػ7 q`,q`p6809sFe3>;D^ltA e|I-jzU2kY$!?syI%лܞc(iW_ަcX1z@žƁ,368欜ܴPg)P7n}BG8UßP=h +b.6xCsfJW^/urΔ^?s:NO%RݶyrӺҗוO9'{6q6氩t,67 nl.eE)#1kywE~jD[&RoFs_GstHovH vh":8сՅD+%$ٲpEpE Ȕk ͼ)ط>gc :Sj@J@CL9qtT|Gwwޚ~@Y- 'bl%zĂ1`_dt H^@k `O?fv /-|GDؑ|%dIrPebd2|$~0|Cj{ސ͝\mȬߔ#SqW\diͩ4 9d>3*Cg#2g Mc<Q7Mqns߾7:m(=wԈ6R)/~Na^ ʙH: 咶C`|1T18IJ /k.2"sU>[~.2%P=W?V اʡ;Gym h:UzT L=0_~ԧ+q3<'h/|yRB6 š]!7;uE# I7]1 E\RXb@u.j_c hFakp)xOe_C?#69olO6Xωw&/o/tf_SRE BatRfM1o./Gt7x芹X[տ<?N%(B;ݻ{7wc{|-Z#Ozs21<%iAWE]97x+,̟ 68a&?lR$ &C,􁺬hy|' J>^,@\@'g̉uVZθ~wo_#zeg/@5i`[#44?6/Wd pf ^A6ٕi184b+(hJx/F|RcW<} sF\CyߐAIO`8ߋ_+e=߲# ۶sDk6~?a,kB|卣;d/ *7Tq`hTީ-%7Iߤ/Hqgkeɒ寣 _}|>H6n}p]JziOVVWR8AA<m/4y%Jc4D,]VEMA¹{G`МJ4%P7w p $$"GSI(,V%[g;:0N }~8qm^ϟg Gc^4>@^. L^?g6 d3e]r5Y`ρseJ*~I" y !p?Wo.P8ַNbyl#v\?gAGbN}Zr_~p:}4%0'Otp>_.?=VAd^L9@xܮ׃;X _tn "1j4 >GlZ|a_uW݁35Wwq,)d$Ҡ'{AIh<# <㨿%׿kߘHw1!4(޶u>6լUD2Z,stA_<ySݎs[J!'pE&~D^_jap_bg%crr33@:S|T}#9lLIܕϴлz(<7~E_Oiw/ "un"6u~֯(PCeT*ggG oOo "lBG=@?>cGYF4 8}6ϹJM!w353RzHԳVs8.bcʈRl'en(e]&}7;,. (M :R7  (8m|:w,b4ݛM"#Eɷ]B#n)TpzNjk9p04zy[L5H bK2kM>}{p ~ 2(yeC ^5\8GCjRamEߡ??><2[|&hU7lB-Fl{zV81Un{o< O7א߽nD@N`p% vz18 +Lˬ?n{UF.נɓz+'d&H85N:y,bh eI8Ul)&ew;TJyXíżV,oOlH^]̍_-[亱c塿oR#æi_Ex,"ek> nrǻTW  PS!n?&0\{d:b=]IK ;rP$3AA8ί&S)/;?0f>e @F 1/L/7w^!r[ת`L<ߋ߇_m#'TL;I %\ͫݱ̃eڹ[!I ^3r56[>4r{܊ aTƥxS(2[ն*Bp5 JI+KmDqB/l|C*YЅH DAبn !-/t0#Bl (p܋Q@#A <,^C.CQĴ|4ړM$V+Al>`(`2p"gq!D`9~? j j]#3pТ Hvђ4% /IIO#|*ۇ?_Η}Ca`} ݛoNݝ ZF @~J8e&OXRtEټ<5(LVݨNvy 6i@%Z\#:iAFX+qQw&qPC1$ʶV(7VR6N]`z+cőyl "a4`%w0g]¯t)dAh}$P>QK#3#iLvUġ 3O)ݾKVm8}f1Ӑg:}ww)iU9>8~ |_?}oϗ/%A>n k }G1yiLp:Kh$^Ws,.Oޫ"&ƪ8ݒh鍴U@ cY$w -LZ&揃ٟbK3]6W/2G _ w¨ VYt5C"7WeG^y*mjc1, /_j5)Zo״ x.O^L6 /[C#4ӍsTc?c1F-ȫbg0ђԂDnfod񯨁 _4S4y8{C}2/3EٞwsFˬ 2ZHظ#׾"bb" &%IR%D-Ioz< f30s-|GĹ/ ~QY8'[$ :D?blNwM "l~ZloďϾśt?}+$ҿ@& Bљ5/c&JHE%QʦϪ;\cI Zw M@ qٺz?0!@-?i)\$@=萬^q$E|xʺB@SF!؞à "C)wc?u^RY&4'5٪ Af@簁v+H BtDET`]}՛߭ݛZ?ۂzA>Ppb2;7{lGvs x.aL:_LLk|p_ ߕޟtapdQ*OgpZh ;`; 2A4_ cܶo glaQd8稳qrZ/_q·,?Ք"7Y'(9??IСDɣ~eVRk_߭܎ 98>?V`PEħkPlҒ8H.t~l9z(ٞ3FPs:8IMslIvB<xUu' Eh{AW^` _Bf|$aq~#g?kݓHdE#e`M;02ܝF;TaOP|IC=gdzݫ[?kc='ޗg681!WEMGz$V>JY/ag\!ˢg ׏˄0K\?5g,\msϐn'>&1^Y0m${W: l&h~U)k$UvgGz[LQ|rmMpB(*(o9xfZ%-4nq휾Tr7V =AbF%9%Q!rJCPs8 @̹@"Zekp-0A+i1ϵ_ Y8ʆ bk$`lY9MgDE13m7LD A)r%6Ko5pN93 [H27o7k2i~n225r:oݗwm^Fzuwt~|1n׀_03il /8[ u#/=f](׸+@KW\*PP=טּdR(w.AzP/qad@MUn>oo o2qEbrGp{]q0"zq%J#7ׇϩ-@13=݃5IzN&)J26NKp c&*zB/J\Jt_ovA!AI`N !Lrмtak8&;Nv088PxIqwzODߗujn8AѺD8hlu1맓ONi5`?d`s+8[b7P:#oG n>m1oYl@?+ R񿱽FhaojDGo錭[Y)$ "&}ZZ> n@"HUZl:/Y"TYP~'` +Fր>D! ƫ:~?y^&=saaWA䱠;zQ>L.NzytS 8*#'u0s+~#yѨO e#fϦ}A8J{* ?Ggxh[_3PL$^ʛ{_1!^zz[W t5 fWԯtPf @ɿhaTp2{*(E$/y} PAS7&/QGA|>7'ck8٫ \M2Brn-䏓߯ȫIR\&hU{Gϳ7pLǐCu'w<+4 ?5B4p1{}mΖ/oد( _v%HM<䟒[7B`UӠT_Mſ1j2xD0 6c<s[/e?}F7hIvSl8~Q=˱ɮmQ9D:@tL^GuQī*bFUuW԰Evss1E W寓|E]ܿϓD&O}ʦB+Bϵ00D նeVZ z֙ !u$e$dcNͬऋhyׯdLG`u%c؎5Ay1ݩl2!;i0^*X=a5GZ>q_+aЬ|ݯ~$3 0Cƴc9v=v"&k @>فv-z-&^g[C.5avH8IHBE6?d_.'8bnM>vs ?l9| opBC`K;f8b-4ސE!=ȇua8˓ l@'A5K wYg_`- ?Bi¹ted9@oۻ7w?9nUomTkṠiϗOoTf[tQ̱Vk0PHoܾ70A1< X&Q^TFSXPpv[G@{W'650 blZ`'$U8hE\D$,̣[ۤZfL Ϸˆ 44n:ϝ~mԬ>2Ncp^Xߝ˦Fd0G Ԏ\c`;MrE& ? Y^Bo(^ܟ~/b`7];6!1}Em]k'aߢ%߆"~5{[Lk(nÐJ@ϹγI_{}[( x怚RFN@~2UxcM!;2ҐϠ>_XW.~/ln Ŝ?pΟcK;8)|Sa N{/)D"8n`, A(ౡFCW; 0/j:x+i쿚u*P"ɇr@E+h/CjmNP6~N> ~Mc7@ =Px&w`Og<*~2Dpb3 a#xS*Q\/'+q&܇D XhӯZ{'vK33L 4pA6LTUW:g1;A++0n'ѓ R nUw2iMBL y0<.e[.//>|_z`g ?Ky{ݛ[VK3fh 8r2)GmL6/ MC&?' V0`-q &#&~/쿕/Tq*͎횒\G9.OҘe8ja$i!.$&VkE$k *醪 &+F@ScV@S*d!nZ,ڃՔ9d?/?9$Q-j˱׋E|p1ߢO7M&CCod1 8;FSZ8fg%wAiS2jJQZS]p4Ptw~SsEFKQGWCGq_UsuuMM!^bW!~MaJ*Puy:$TA|z:ͦTVޚlb8sл".a18ZB4QG1q.14X~O m* b|>674uz@2|L$z}gۥ~|\o}ݩSֱp{aQHT,_"_:WJ 7 47}[a8lJ$`M%m^400˸ks}E+PeKAXOob&N/[lql mjE}?X%Ñ4 nrRfA"X8ʑ7q>LL0XeUǜ5bsV5$‰@}y zW}UƩ`(n2inBG jF % ñV8%544ϐ`l{x#Oa6q^<Ȳ؀/3;n{l#: `2P6~V_t m(bgpqJM e531f2p8(UG~ok>.0ށ*/2kw?w$"!5l^$MJ nTгc/Y&3<]m(^d5fdC ֆoй%)-~М _~W&iL& :ȟ9%p-[O ]g]1\6qd1G h [uN@(+sA?cIXۏ;D `zcfd 1.}<(,}S!1Ɉ<z$Y))L)Zݫ8 {vnz ] l?~nY![CK3ni+o/@tVO'dF^O!W0ƤQLqJ?'5IbY0 *VyÜi(I. պ'=ߧ_+p͛7V~Py<^\?|'>K6\FqHgK #q1Suͱogi&#= seR^'{)<7J򾁼&zL+]~O^Q6%I?H=Q"VY94PU!:0T/e?7uv/`sySNoKyqɾa<ǙƑFJW<^><㹒*ժ`}<]'wwl}RJsڎq`7_Z,rY⹤dBycfуZ~onP/4b2 Efo3.~o8bH3Y$8{?!|x5HhUq`3i;hmd|^Bm.k`-۱mk!oZˮL3J'R0ͤ__?hĻ'[#S;9Fce<;Ku~Mw"_;#(vsL~k7bZUM1JeU V7 =w2EKm/vs_u)lEE=Co\p\ J5T._ }wP[(o 5nLa7ɜ\UTvETt|SuoYyY +5& oU*R\p{ l86U3_|qn˴<#(ڹ3/-V[mտoZ ~'`}f@%R7/>(Ů47Hn&*(IRqX~@xj~Q6!w|7̃eB]1³_TCyΜu46Ufewme?)gE.&eCT5b_- -於 dbp^wV_E-?)`PjT^\NT̵sRE+?_Ӂ[9H;^SփttiWƷO>iK\}s=z$tqܤ;޲^3m~RNpmܭ_E.@gQ\\߱T*}XN5&{6'.ROA,HJۖoqGu[A3 ظK۩/d5բb-=^wֿ_eG~w?/>kz/kyq|Jio'k*6դU@tQ *(H,o'`n(wR͇j0m<*sR7])5ȿ_ԟxoVP~b1XOW=M^_|CqM܉ =\͸;wAZ~}1x15M;nӗ֏bn)J_튿۩F)5MN&H}\mox៞-87 ǥ(e}x| -c^kSL|m,--2O?t>s+P*]^}UZ5_e|+Ty&jb%=c}X vӿni: !p@ky, |_F$k Nk`&c*zb }l_E&dk*)\kL6PѷH1NM*yIs'q%+n}nrN0@tjfXy#W,rOc?\þYq+QUnDSQOv>8mah/PA]I?.r[8K m?~Y$wGrO^ed81!5-2Q?y+j%B_(n*e R,ago@2o"M 7EL:F7u-ӳ)RJN XKZV#2t^~N&%}aFIAUih,Cy7m5N6`;(82atLnhN#HD -Cg0M="gr`ؙdbP _P_RL{-&W+|wYǠ|sy+ӿ~iwj|耖]/Hi5)}2u5D8fK.jhP-J;V_Ё{J}ywG|_\;1!Og&/kxԋd*ɢL?~4+Ԯ&nvOV^6㱬KefY7'if{~?5S_~OOǔ_}7Y@I_s iasDЃ]H Dbo/+_?d?;6c&GU^`+hg"s-o Ҡ6VkhZNQ0;GڣcHӾIlK@AzoD>3Iw]mP.ᭋ >~i_Wց#ZѸ$[?+:=9]l*'/)pZL$GAb0߶>pKusݖSHh:xIֶV.Y_5:›d@dzpﰉbs`;in,}U{ .~v+'=ka/wpCE%O[wO`[i񻻇o N eЃ-c>OˏΗ> D9Nn>,3K`3c]XnoO$D˨>cxU􍊭7\)J@:7C^Xݕ}; Ø\r]`( /o2 4n8UjO.ryNdV> ̭C 7B@ BBɀc?˵Px2kS#߽8O5Q,oQWw|˳k5ׯdmlѨaѾ@lNT:?^F}IRxs*@GQO_٢Ayg'QT)n@6 7OLKUxN4kW,$3ypό޷G^\?1WÒ)NB<'p2h hyMV*cD9$7| 6[7NJZ>G)YׇIOSC f$$*+{^xJ3y‰7?aC_jWxg!O|:w.d9Qz)Vt~??s탐l)Fj7Rb/kDb??iw!+163@:bbLv*h >h%j_; |f]7w{D;I_xLB [k$ kX]y>]  ~҉z(I ~u,"6G/?6ШkO\jU_/YLUktQ籂^kpKEY|6q%rH ڇccfw7Ⱦ:*|g_:g];Ǎf$ f^:E[ݎ:6#~KYNLOMu/mǛT|6j85t'럗h ?ZZx,sh?;!hHhpAm*#_:~PUIo;˃|_:[eWmC{g"8WS?l/Fϡ4Z%)G闶1}S Z_p<҆){mj H$пX_ g;tDNB[E(SĮAcDh4%׻qmWUX1L_+&4oy_MͰMiyWeJ^fZV2h+9KTwF WΡ =>m؊j[yŗo_DNWUǼ.Ry3;&~u%{,GƘʻPuХT_߁%b#4PSw_=ܗ_#zN/1S?? _$\@+ܿ4 ?m젝_W{E?`~Z5q?|*^W48odg+  To^YjyOz8ٹyT/dxgwj?NwoNN۸^qyϏB1^"̉g%׽̑|0ݫİӾfxL:\E8Fhh7@ E0{̟߫6hlmTFқ=Cy4eh4J75H5Į;cS mbfK3ܴ|te5oMP8ջ3Rڳ/ ^fEP1|y~Ehh}()[;msa~PZSDdjkY'%u36t}] u$V~z{KeSkokץ`?/^>թAd\~n;6?,[#ɼ~pSfܿ{Mlo,q1p7݀Yd/s`)쩿Y1.Q@ TlQ|`{e-?0Bn03bGk\q|bqo`I< {l݉5Ydt`¶7Ut- Wev`~($`)e,H! } OBe-67`E,$>C$6]ɛpB9!ԉ&-B>eVЍ |d8E_HQ=T=0Fy;@x?^,?Sv 64I01)W]h/ ds` a|%[~//܅8}w\(.rs{|Dhԟoe>S ÊVD1L< N] 77e'k,J]?Nv|׍rp\>9{w a2Mjy"dSw Wno?LzN>.G DAqXA~[>@'˓ZܥI1dRy,{ <.އ_TcP *l2B?3 칂6iS WKi&Fo @n]Y7֬8k9gpٴ 낰mODQFY>4PmaES. 0yӳd),KY6Gti+Pڊ&RJ<4[x<~6)2|%Ibn2‰|[jz7P; $i+Vu \{cU(OmugϯXNT(I2d/D^>@vD-ؤ!1nAb27PdF>;bt|DFO"$ BDLE /<9.b|E׏gkG%0w3^38^^Iu%τBn CD 2s$/ZDȩpt(.DA#IEHS}7S>3gzϗ᧏ϗ^l'(ĝ/Op{ww}?wOEnqSYh|7Ɏ, &l 6SUDoAuў.@! r~\#gKV:q E;yv>QȞs:!U(b y:u4&"7]p@ʶ=ԥ峱ԊՊ8Pl -;q7#~t~8Nc:o2_frx|9@g?o/n}XQmh"o  yPT/{yJ§O06}&/83}]:;fcBἶ"Z9 *~IO&WXx])q);~!fMƆsaX(CoX 1ś|?[6]@*"m7yFYiM ܥ8!y~EAgA9o;}k[ _ (? |c˷Ys8=JOcL!r(V'~d|=4%OsHjfG㓘P/"©ߘs z1ſPClM?3y-y=#q=Ayq I-:_j%.r/rWގN;}y0mB~q]%m7˺q 3)`#-Ww5!ssOW`vc.~EC8$b<;^eCvDfMC'Xϸ|̬hF}霁H&WۙĤ|ȤTW!Kkfu?_g/IvB ++R/{?SD03uD=NaɠA0z@z!8M2̡RL&WK4LhN| H>3eCat-N&,0`Zh 7x+Fɓ VQ.lr}n3E*ZY,R/BJH4uF3VPQ<&u"G.D=iAܙۜ;[q,[6\}q:9}|w`Q,Ql/U/ّىL)]tf ^\}p4&%2[AP<4B? O@z^y14:f6. y-9+< I(ky2EfXT͠Cc#_/t_ۻ"~@\/"R?޺^2LF}.|zgvwL#s;W&9 Tno/s ~׾~>˶m_'N0_F9 Qߢ pQ1:oA;0 ,SG"̍}oAg% Y,;oW̴J{M¯ Aſfj@~GlX!\Fn_D݀dI5  >B^m~^cnf ulދdEmli`m +?8άPeB>L]z! >/.)PR`0u@#vNlȦ/L%U PQ"-A3HM?GgX ө5hOu xƫ H~zhhӯ^cW_>}"B;5G`csS??ݛoa6_4L6 y-d] η4 $ZOC ֹ'MfߡMX>§?ٸWR8"-ς0`K$y$޸ 3h>t ꘝ쥠`{ -a:Q?]T|w3'Y.[>&z~L6-wW$.kwNo۷o ݟd:vHtJi?||FȰjC`Bd(:XD[3XLV A%jZX^hU4U'ta~w Jg|A5"8YQڃۘ=}Bmfn{Hqadp%/7ykL]p nk>|g|AJo*2&$%T͉{ۑ{ ?0N.|Tf-f ex(r 'ˈ&{W"Zp U;wֶo>ޞ qm\s!!'!<#O7xHH~p'*v:4b >ysy]}w'cTo$ӛEGCD#ٯ~oKԟǴWPQǔA7x=T*~7pOqǩ_ L%q*ށ,8o<?QcORnCI m?|,6GN`$WZWs_sS?О[<'H8}KG 0 8 JLbr%pxQ$y9 O/G8Bs4n,!#9.E_x U<4ڽ$+𮧁dWsپø> V@@֜[s iu;ND}e~8`l?o(vJk tzc/f^;eb=V8i`}2~X}up2gՏ9C2IprG OgvZ__.¯$x:| aZaWe}~. / 埝e-t~s |f뭊 gL>ǂE](MnO`!ֆ2-&E_"h`Ƴ N3  s]|=fĬ;5pS3ۈ3),䳛yRU &P &y=SuN<+3i(KviƯK~o7d!/ ȍ ؝[y6B6Y ptg./ku>h!v>CNDI8֯x&?}ho`\ݛ 'g:<}/ݛ߾?zԟ> BT&v Z%+@Abt9X8LyWɃg $C&DQok,&2I 3yNb =x+HS<67BM\LặvfNa=ma⑕nč9w3Y/_8`9y ;}3?cOޗ7'{TkOz2pu2W7繍sp\mrk9V:4~T>. /n{mMTn.rcܼ)3 3?s01)|5s!~y(b*7=JEc+K 7IK[bXn0zሟ5_zu]YsɤᑴH[ N77k,LwfQcE$dұ!f ?&U+V!` _/p@nP>֠94EĐ-SB;h{Z2ʌxVJ'M&Ǥ}9L~`;Lcg8**O| tχ)av/VW.ᜧh,搽|3r7kD|:zzž\T>] KT}h>g҉o{V;7l]%T<ɼ8 (bka=ݻBv4 z{Ã|cLz`:^Kck.`<ĔNJ}. _ܘ6]'opɚNӟ9?p|Žv?c0|u 8{=>>>qn3DOF 9/v#,C<.vYfsHcޔ\d-oPUV',F!WOYUM8+YV8n՟{NP7V?PL3 `\C8g} ,6ְT4`sO;Ef^Hvp,i 9QbH)f68z׏~S04pߏ!ܒT?xm)'BRl%7/ަ ,D(`k=6mDAr; _D~'#(/@Ḛ=m 5r8@Jq0Ѣ2Y(r7;uՂ 2T^v %"fφ_8B1wE_=<b`' ñ-=..RX}>OYYb$y5|bN&]P쇐Y%U4Z`c4v#y,1 @i6^%OvdBOP"lݿp!x\UeA*#cY߫<k-k G !g ' `~bQu;/=c) Yįk\Dm/w>뿚@Bn U\D3ǿr m˟Fx |`y'}"/+uGT{DWEd:P&IO?5j*KTwlޥ9ƹO*a"xTshh'oKл]; ˷J%3ѝiB$hYòu"A7Eljkyt„F)Â\mK\X+xa;W l:QːЌ+8qxW\Gc/~b ى`U|[ jkȻ NXM)X6/4<:y sV򙎎_Cp$OzʛSywT\鴙@+e u5T<~8ѽJU@_ŏ)'p04vFiaJXɋN9oÔ/_]q ky۫͟oB!:ߌ+U{ 񀧀8q޾6 1X|,o?$#mYr,1ɪ=m#3hL2=vI+L: #q{uw{ 0;qLk{4o TpMȲu̞\b'b<(晼YsQq3:-;DoŽWsL)bl_Sïff1a8=̦+ z'#Y_/@Hc7 ae+.Ё'/.2gy!&S2ݿz 7B[ů'5MW'wY:,{~edĜi8g0:m__=%JW[__4h{%F5zJ8M@JKx7ϣO~iP@#}_aۏ i?k <`{UσC u5\׊wjtB/{ YLpAu].3$5)Lc5;9MqɈp;C]olCǖCż/JQ؏bs95k?0$)Na"T1E B#B {,?9i\uѹrD@=ŒM;9)-oL]cTz叟K\ģOYn܃tgVn`׷3*&E__ͪCV쓺:g3Ͽ萙O nNn$#ewO8u3v6Z= h^AGe~ ]ypSD1N4[NIO$ȩŬ% R>_%hG~U }"Rs߸7z(m-$-X@` @wҤ&Tw?_=֯=on|5HAb =P wӓPz{F]k.Q_Ő躶Ek /o=e %5  7}Po5,P> kOB4$0O'㷾+ #(_~9{yIЊu*bi2&lo?N,J3IZ׍-e v1: O6мi¤~Zq_#@XpVǿxٺ(:PV1MH[Zz^PSZNk鷮iwroB5.`3q~<pEMk>µ61y.@7*`BDb}pig|(% >s+/vxI6f~2#(Ϯ&( ()S0Xx7ӓ>A D=ɓ+MxWjم^\X̹[%v_V dni<+@#7˱e@cZ9UT p`$BYZ zeZXAՏ@]4&,9=*R}r|0Zن' ^pȷO}?UVAM]kzW;Zj/H[\:>F(´6݃^i݄/ut%ўxZ) 1 f1.`*2߱oqmxiLs)_#~~BJ]]>Lnh3=Pq/Q~~C=`P=[ ߱O9w8iTdു :v_90 BM*}f~6JΩAY`8<.j9&!NL>JLv |[}^kzH~ K :_4 ='ۛiM bu_\nS>&}~q+|j'{ $)HrJ􀕖qiq.1%>)deR+̲ @g gxz(0j2);h#{xgWvك*ixL`d­?3 $? S$tsY S;3/FӒ[~}{{/^~*0'2݄Z o#kɟz_v /(+Vd9nw^v/o-y>&LO Q\*>p2`WTg?u^5l>,1vk: y;rVL~zi1B]O6 |Fwg?LwϕNB=`M[:}WjjYM36L h $z&7qn=Tzq: |z^ĺL|%IZW=`PA ike!>| q`@N6G`+grͥ˘lʳ1xu&au"%@O(oGᾀ)m[Tݼ(=jdǟ|(PSFϐirTeT Sj.Vt-=>XxuBI:`߰yNVG@!6ߴ}^`. B;8FsyVE`̝0Ѵ]}KhΩ]{i,pmI~FقnISZL^S&+Du`m?|>d!P<t 7>m~S5c┯,[L SZ+v;Jw`0-Zi@ڇ#ϟ7BMtMq~ Iɭ~{o7abڴ/?f4'NZa"h`J7e@M({j__0N]`rtHWi׾2-lz1x 63_HNV|z,󿿱&;At|r^~l l}|)cFY6w]nEnB{_ Rzhh`%gRNBLٴ9>x5v>j9Gl6c{*`=5`6?0MI 8Ônط j멤Qm9b)>&PF%VLc7H#x''{@@ޝHi_ d{y`.ZXAWGbHϩ,g"{'4^|w ]Z3؃,30x4m:jYOHNxc0S1;bMQ1sP~>OW'HߵY=Z1eC /I !Gjz:ݎOOבl+9l\|d~0̨RB TRV\G:;&P $R>Ga- n `M =VAm5fFbOj4ؿWG|,]-)9n*S) HbAHpd;-gI~''/GuxWGG?5r0O?~hNQkH2hIG2i BXBg6Gg HU|.Wmʍy5U>S+> zY6\'(<v;wS[1)MҠ^8g:~tN>X'M}!9Z -Բ؜_{u=A࿃^ga@fʢ=|\._˅Z\#r|kw)j, Ϗ*(a?K{VGZ @iwWF_)5| :eV Tm0^8Cad; 0p;^@lp,`߁&?vlሎ` tPXdSȺ*Z[A\`"9+us`4ѯ؏=L )>d!~oz ɿM>xhfLxy2? e`? xe5I 54)Hy}e:'et Wf+%. }7%֜Cځs,?y/՟F@#`}.3ReHusH,aoͿy'nM#>g&<Ov~FxiSD :ٴ@MM^P3DpjO1Ym@~?V'vzF@/QκxM\ud>[} V?bv7VhN>;K! pBwˆ rPep#KC- aބaө@G(&Z`W?zùĢ}F=5$Tϩ<% ʒXTq]dt~)NO7ӿ3{=B)P 7w'4]@x'~>?-J\xBeY .€ ^/t->]?_ʗ+^hBWMaDhk{ kp/lnWVuS;LI>$h\aP o#44=[[Qs~ 2Y^n>0_3@7\AOfL)W>?vԉle"}w oTΗr+kOoep׭)|}{]LiߧGt})0h ~*>.i$Y^\8VL#I;N+Ǘ7/Е, P  ܧx~ [@٧az8&vKy>]_~f*NvBstߧ ik@WO'^@=P̿^hmEtp~:~3xilOO#mǰ~/m<'~dT tjӀVK|fCZ~0']q(}=NH ϯ7~/Y:`Ώ=9|ݲvzA>NΊ}l}*idg4(+LgPV1L:A$54ώ={k䵀0ʷ>qg 6LNr ] y4]ts[;~xDÄKߌ{F8}ha\UU쓂-82D+z |>aɁD2`̓н+A+g_gV$Y< <\x< =E Բ{j ?|@Chp[+޿OyNЃ?.׷[m:]ꝴxv6_9gl}@G ,*S?>఺sa`B/ԣXw棟ufSpx㿟1WKr) ӵ xlA|@ۯm cGNė[' (5MOC S*Fx ,IbЁ  t@z~t~kgKtߒG[M/`5YA#[HT0߃uܿDӼL=4N£Tj0L\d{i=#񋵃)!NMBf6 螳͏.זR~rD{Y(*IKRB_Ve<`ysWƌtB-e5S>8[3djN#uڤObN" 'cw NFp_aA`Wy&/h_ ?ʩ[@'FP@􀰦ct >x* %b{5l!D)h;ѝƹo,#e4k( { P 0TS5#JO%@Q֯'M-ǒ:E=}S:>Y3cLYp}=6 5?X&tpQg jFaHASR .8oNSg q%MLO*O˧M)|n pX?MAvF9= `JLYΌ ]N|O+hc< s?%ZX.f~ WD2]!'W2 OXT$RO iXMײtzCGl;&m4A>!։KOL{ \N(߸$~՞qfO'e3M@t7-ǮgwO_?ݿ&z=qs\oZSI1]P'?,[:$vbZE7W%tJYXTy߿o_߾mԦ+pzliQiˤ} ?]>__~/ӧ˟pZ2/vT]=_%WwNR98`^Z1wӃg)F}qEщ\u,\٫NbO~1N7eu;ٔK1C5XAYvW~w c7sF'VYR y}z/ʿ|"/9_,Wmo__o=@^&=?>%deL+ `8I%@ӏ; lͬ१QQV+wR< Z%$<+:;oYq+XhEw=Wmm^ow ?]KMxRfE(pVĺ|gS>Ys,"5Z0_5;:܃&Of:=䦹}8~&y }Kaʦ#]ֿ[`۫W/I5E~\r@^翺0[NF? sU~"~M1>.GO!P/Ie O=B#ri3<'`YjX-\ {,So]\6/ˠ%+XQ3qfV3q?gu*t"Ug~\IZ XMjW ?<Frf ܗv.yP$n:YrsqQ/i ?QoA>!ߊ+ hՠ:]{U\fhs{ԭi]Ҧcvy{UT!LX5tI8uzÏ{]BT.veNįD5J QM\_MVĵ?`GgRo1asff)'PrUܙ{Yם8YKQ±;ٯm׭,QC8h&)_p1 *ވ8%}|FnOn[X r^6_>?YD֢J/D1k[ zĝ|T"}ѶmHY'|a"x7is-Mh~R`ǩ|d@IxJBR`rfOהz"f.zTӽ|T9Y}BfKyn뻼??:\ͨoή'dGʵe sDQSOWǕSk`sM`.[?1L<@FgU?MS DO/< I[5?,|TѨacƿȞQ!Y~AnrB8[hdG^?uُ&?]F珯h1X-%Jov9-{E^7L;&; ߏRE/s?VksY'~ޯ_CgusvM-( yh3y}ռ\p-F ~#NVחORrB(W?q\Le?`?1 ē8@8@}VXQ-h_j\_l/çO#A]vTMSDQ?';.WHLf g!)(l>}HO. %;M^O[up},*5YGb,EdglBoBX$=k|-2nxx2f?KgJO`do\&|ҙAoY5osgwwoRcLjv `q`+[Ppp\] '4D93I+ry(ud.yvTM߃ i >l:|W'.aľ9 @# ڟu7俁'P?ǟ>m8@SYG|lIx YKk&4JR?'`$͔TZ6Gtgo?:GàUu yuI1SQ?b8L5p23'@R'|D *IRp@.}fvߡ%T1_:8麟}=DlAQ֥A㥙Π`*}Ǚ`}~)X5XRShH Bxmm?00]4("-`+}*gy,SNTQd`!#1Z AT7b1(vE^Y*(2(4\% PѬ3MI,`~fN6}yM`=> i4pBi~&8~=KhD?xWOXP1kVvSųMyq&мJۏ4<ݟLĚb>˖P^4/bɦfJm 3@w&OU gٯ,ī O@a\h ABb&}=atGPEG)C{]Ÿ x8mh S ڏأ꩗rz|t)ďqQA|;G$`:hp4~JGVۭ~{J5Gm)4Y|DX7;&`?Dk j}Xqɀg3?,X>?>O r~~ۂ ]m: [Fs*1@dWom}K`MEI$ER Unx*^p~n~@qnLJv$~dܣ{A_.`dHHe݄N?JڞVW?v v_0ߦeZ|=1MR>ʉ}>TYBOUMwΣS޹ykf٤Y7vUEHb?.6Ei;5\vS$;gBp4ѥ)]_}Lhs5,uGfsΞ=Jo}!x 񗁾D`;$d($PgLVNLcQߜϢ:U_=Z 8_Qn|q\2M>1'>O5) }ƃ!?~zpؙ#g+5Wo?0~hM9$Fq\ľSqbfۃѮ7E$N.6I?=F_OXbT?m@`sU..LJ 'd_hU,br^|*e| >>m2X;CCyy=y~|_r?_ϟ*;$mFNcOOYm?yNd|v|FgY ԍUvm,:s3z?u/C"X)[HC")l=Kqoz{qPLw7cgy 4*NÎ=c{O>>E{o Wxg ={;>ZխYD6p?L 3Ơy΂d~PbMp:톃=r`ػgbk?tɼ^ҵu3zLڼOW7aҙI_!ܨUe`WB{y۴xCzH$RN|~])?LHoT6d?W1Gu1TE1ڊ8Fؕ~Sêm<(b ^w!+>xPtrǶv-~h-ckjcN Xt<%6xPHd)p\֓` 4yNZr{'zQD_FoXp-GWp/*Äa#r;,@*p E'9*N (N,TBn|9?:?;&ZBaB5;8QFf+]p$d֣bb\ϳ:V/өW\'tBU$߼X㫎Wbkph3a2rn@qslzvzj@0&tVwb/{&~wO]Uc4t}q3G @o}Wϲ`bHSS^p}u` [vtS`wBdz]`NOJEhxmh5gPVd3+`L^? ^Dr/4 'MF3ko/i㫧Iue9x f+.S[Gt]'t?^?_>]ʗO\>-'OPQ 7iAEѺ޿ݤgͱ}6YG6ݻz>^֜K}W>la!~Z>qZԓGo'' k3dxzh-ϥ<@kafSOڟndt//Ո{;qJs(WiIruPx"Sq:8o;/>V@rs&(&NjF<8AgT8skf'ߥH&3ILpw]3`(SEF]Xۏ}/O gSB'zӿO _?-rExNT~5NV N B/Te't]ϺKY/_q X?.~mA =G~ހIx.3`` @>􍼾|kϿ$)ZHs|9S\}N雋"ZxwXɪ/ðWo\r҈tOޗ$E/d(3@p>ܞ_o\9nn'-M]gc{?qvF緁{tF5wzV'8ru0;=)bpEv-MNHN4=2(ȁ''u-uͯATQ7NvQ>t %ogt~?j?+ү`>7 д(J/hyl>?6r07p9 Ĩc~žNKc3V)1@?\_G] X ֥]k/6C9 ס(`xYzbVѦ~{V&oc@L ]p~$RM{"4F.yaF j{2{'G'k@7&rt$_/Ka^6 yPv8:h󙽝 6<4Ν8{ ( _22ތ=N>}\_=Vzh~~7u:踀MkFS,h @4S8A>O@8;&|M8Ж{|tgmem+(s{"7_G!^c|@W˚z_LБ:4fBwV@gxab)?W!(vR3Y gAt~"Xjz5`,~^a:h( psզt†.z! ģ0 @oY6/F*O ;[=t =?`Y YF xNy:t0ZaaTW>L@'B V~Do8R;G^ӑ{ fSONM<&B&0;wؾ*0X#dh۸{ߣuiDHeuF%Moyu~d7〲Mn"z=﹔_ç 8Lb|ڧ ݊tF .cݤ~&Z+An>:i^u ?@?}'DTMsZMOA 큧<"tzkhln)-MOp߷236$XL>({ o﷯[}{4[ߣqj1?d/ugw49&٩jhOx{}vF`T/:WSѩb"@W}N߅Z@ q_@pr7Aijh2 '/_'zU =%Oi4/I.ߚv"у:yMb:exrOY#7` tʁ\u7JQ7@781Y?Lc7G Z-ϣWCi? M\h9`u~*iD}׍ƨ~rp9Z1G_waw)su Uz?`͉JL`a%l:ږ N.(h MW˖F]`{M^jeldʞ?-r9-+WֈWO]`7%\= 6#Aר?ͮ:zt5P{0g+DdPN{=kV0"A_' xs.(qK z6ڟŸӹ? hZDK[o`N!5ASJBatA_ ޮQy- Ǻ/vZ(5ݟ%@r^PkMXp$C MB|)^tѿ\?',Dx:N㌰ͮG0_omo7v[~1En[ȇ.Is@bo}y@  RMiEiu)3&bs*|"E›Х\/TCV.r˶yZKJ#Cf C[^ћ֚h ~|LvCDx>3=P, 23Q/!EMYAgz蜥OZvc^PțٷOzPLտ.(vd"Ӟ.'_Œ\+?[~Q@{? Ȁbb<˿ 4@aJr} PCĘgg񳍵6b;+k i<}lZx*4~*= ڏ#:d"zGJ:pqQ>rduu* ƆDw^?20 q2t_`ݦIJÚ^鱤K|^ k'ܮ΂J5 @Ќ";P;Lvu&}wd&|a8kZտ?X^O`&NS;OVfՏ<;Jg';DbQYD`_>oV{̗54gϮ 6acct_wY5߆!10*ZhM0=gcoj (<&mA:&EN?쁠Ano+` p ,xmL.־2s(n8  S0`8~lz?};= w(Da7<8Ozi*=`8@M JOoz@eT_#=F]#0hz|_|CsжRVH'h8m~~ۮ)"?#7ߣ!H%W?dE1gyh]?4{_۟\r-t-Uz|?A'|PB_&r ,v{ } cΐ8dd s&/'ח`"86{fG{=` _Cπʧ60F?8E3h=_ |Gz_ g] >Ҙt9rL-o?"[QE N/Ў40T >:HxBxwI+~럎9Z>SU;вn ^u0yg~3yj%( #oOl"x}aIJV>~yT—|h|$_mC[ ]!lN_YI눀[0>ph a8 >v`-3^N:-`N x0@G͉*<3N`Iv|h9^4z<<ٛ9|S?.H^^^Jt3h' /FSMXkNC4`7p׃C{&K>C` ^'Q6=+8) Oi1޸6DPQ7:2;?_ \_L.e@tiun6% WmӉx"/(  tpf7uQge #A a5!L6 ԂC{}`4|} /z؞NQ vR`L _E)t|D/9Zhݵ L4s^կ߳_(ط`?ɿ}•"&z9P4ND ;]xK%FQ@/_)e`{Fo2;%OZyUe@?`?~gҷ=߭~ "ׅ^abaͥb "(.>)d/Y &=@K4~_w3/TFeYUN=>=QlAv>vQ=B#<^MhLjLm~4?_㯵ev1`0 sJY"KD$)}^Dj:gl|;)aR{ cߦ}Ք5qj7U^:[18[b$Hf =%jj[N jFn; U tRBiD]}T*@0g`s)N%'){_`t|O ^s%&S 7`S|K`Nh<8%tA0M b_U+Zʧr%מ}=5| & ;K ~ۭnLp"x\C*h'S)h?C䨝}O*MN(`{!.IW*_;3?`'[66UJN 6`]0³^C{n.^ٓkR7ʼn__>r8$I43`h''hݻ@L ;ֈ;xk`G =cc?8fwsq0sTk-|-4ekw4MNMY߸ڔ/df"io$ o(@&fJrCT ػD̿07_@#m(o?7Ks0Oxsg,/>K  #Kr1`<~_aRt_?2uiC'5ee+-W~ j?߶,Ů3i/3)Ae!+/ί37j35|5jo^^9 Џiܴh0 |}H7 FTR<6-֢s~=ׯ~DK:!׊04&pH|$3U NQA߃t Zqu=|`{Sð9SFuG.o{gLLG8:.Pnӓ԰MLJ(峿p8.L吢假LR=DsޑV Hw#`D?w zP<hɳH (炽?kT"}{%ӕ{ztJxH+e$!X SY@<]@)/ɨ'm#zr-~Z@4- y{ۤc|!hr~G#<{X{h{(#[~8,#Uс;yײ5=0o7\a",P9;S6\(${n t-Xoh}{or58'Ҍ-J߄us{r<X$_03gtO~S{w_3`xI?U気f"iu|wGAn Nug?/x~[D@#`g(]_,ns֚QIW#?ߺualƬ;1v3b2Lhe:ɥX;N<>:#lb@}]^ʿC4M_Z NF ̾/aJ3_4~ c#vvBOXo ygose4tOq_DGX~ڔ=IszJqu:1[ڡK]2uTMH7ףaVT7Y՟z?ou M}+M|Y Iz50Nb C-˶w7_}I`:QWݳ1hP4x#?הL޹=F}/S!+-췙^ћ2$ ؗ,MNRiRXSP)Ϩc9L2RNl'[Ȥ= Qh6—$w7 ܨ'h 8Ϡ%dߋp䨞+(ęEISErsTs&e ltI? ȿ3IDكۻ=* UxG]Yx}貣>~#{Sz/l=Lh0ݻ^ҿj3&;lMhbx`߷PCL]X.@?#ƬrŒar"^ԃR?$l,Q;j~>0 w0>/gY Sv]_մOA/sÝ)jgXiV{}>'mU|qKʃůr_V驠npµǵӉQJC K X}6= SyL*- t[^7^㎧F-mxӿ~*풦vnp؎)-z[%{3kivM‰_kKJ5F0M K&Fuȩ H3x+`O^@^f*PQ RʧKϗr^@8 6H@?C~9dP,OXlĕ!Jv~OZ&}1Fk=ˉ28{lX"jim,6~3on o.㇖5tZ@B-U`x) ۭכqac;~^~Asyk9<{dSVVg~Y m5"DMTp*L^ ۩&*Fg{fY9}2^\-A41 ŪPHTO0vqq S4e0Xynt'N!]q.mJ?_.y4  EXhh_ooyL`nۥGݦF5}KR˖.ti1+N& MU3 ]{lƏٻMbWݐm"eexyce~x -7헷z˪@-Nb+x&KY}\"g[TY1hh}Pߨ~ߨ+&B &Ct>8;Ό|i M˅V';>h=_Wq1ڼ^}zV<pu O9@i`RM=OEԓoV? A'˿GT^Xǡ6y֯5 0-D!fېPf;c4 " 0)́kSU]]:Q1cj)]J$tΔkCQۿ]gҚ~JfS=`pLc g$DC:l Xj[#N4]mֆ<[[<|j^-* ̠ jɷJW.$mOO Y  6tl*i;0M Hr2hM@OHB/5eplCu%Ql&,zxHQu{D:zf툋/p[̈́I3 \oSV\"-qPfb^Qz:jO|ɮuőp| l&yI3DRSc;=+%fPw?(תhKʌ^wx6:TbWJ6>\WO0/ȞNgGEće,q~^I6 ({`ؓZPwqenHiWѴyzhCłBvouQX:*+lwZ&>e-fC,ERW]kDW{$Oz}IYKfn=$r`“ Mz{i"—OK_OI`R?oq`zۏǬ6,_L/j<8y3k{XGyn'q'H߆y?~RO vTٟSyhT8I+=)ʼ/ȺU>w=\x6v{˅w|~Džl8 Ҟ@3D$ݛZpg/+"i1S zqabW͢:?eK~Sd{3A[wj&ױ2|g0'驽@{X{h rl~,'0I\q+B4eC _˟H:N ҙ=+5zNJ;6b'yNOnC}ҙLKJׁ( 7~ Xr7pWE*8I\czC^걦z,:׿X-h ;J(c1JvK{><@F#WNZ6swlJ Ox{&M_v?vgtͿ?p̹ͮkʫ*G褻y(Ѵ<&C/ZJ3+Vӕơܱ]PlG}K@F$i?WB{?~!i}38LJrSo W1\UM}'ԄK49q+-Vv`HR![4s-=GC_??_}>=NL?Y\H9Pd](/?pghtC2:AjRhTzTCrQo]TϳΔmACNld˷8(*NC/cÈ9"X.t2aWW[XVx([dDiT$& nXGr|LyaTDOomo@ :UsL|$.q jMY_-Ek=s{ 8u dp3-}-E{|m`.u)]a8sEcl][p5X?9(!`B9Yt`+jU:Ic~V^baogt8Avʞ R^ž>a {ڭ)mq߫ҿA^BqO_ V彊Mʷϓg,&(GԳ$=7gDbWϏQ&x'2E3A$U[MPJ~g\s{='t9F+1z^N Ny2ٓ_dkrbg 3Tk),{>D[1Li&oDh&僸گ,S3"# %"sv=۽ /xkfP'^G3=z`P?Tr(W@ۏN\pN<  "ArfjoNDvS|oQyst"m7_R 5gAi8wgNMD!DIp̿!4/J)_5s?${jу%8T*ɤ/X@[aXcڤohys̭3*| 3j6+#|vi@270[ M)#˭MX.s\}R.կKz*>3QB?[Th#y'`2%#GH߭=gTIr%E5h ˀ*_2r@,ĴBu%1J}k̤W,c̞qh?t>K霟?{Gdͤ3n.Zy*{S2߼wf]t^?'4ˆqbWk{=`[LHQD"t*dƴOͨY56+v{#:yS)d5@[tDaao PsnzZ4MT޿ >c0g(A`s E?) I*WЃ~2?r0e  "mNwϯ,d/=' Ws{)P.y8?YY̕y>*YUR Q… gYUgwǏ7 j@# V땫 \S#߮`&+ <[+`iMiڳWq_vMw<<И0# Pn "M!'/z w7?Z-/@ӬW43  8^aq̽hDM_?bS־'vRMÁM^mbE5; [7x?ͫ}5cNP6& h5fP iP@ p8ig4q@EZi`TUpHl,_i?8g@%6>{%4k)lak~TpH()`x&})`pT { {fW4EDS<#M4>~)LPvQ*^\}Y/t-i|5|-s":h|dbG!"Rrȭ n CЙ_KsM'L \=u82tǩjp6U>r˻\J\ m[}9nU/ uFy*qt{8cOG?gQ>{Ώ &> SrNhOp.9+z -EsFs<}ugP0r}? }<S|aMш * ~}~AM[WM`G/ SM`rL_<N˿ ً4;7ۇe:P\z%}hNZYi0pD@tig׊4ζh k v^ ,z.{{MڿHI*o_E5)<kMZ d,~sQwԿWHxg,t7Xܐ&l-Yx_`b 64^-F9sl@Ҭ(3M@fR߿M`q1/>_~_> /i ?L,\w`"槁X}Nx3.?]ihȳooDBҬZ'>uhv 4珟i: !~~khj?7pwM+c1{ktU=OՁ`U?I횿najM wt9{X_iQXF={azmȊтy fcAkYU~e"FJCK`?57Z.L[,6[mWXPJӃN㘸f:#f=v<tҧEx hhTU0Φ{nD{4 lWu|MRoOwj |'+`5mwe&m'}K}ҷik{,uHK'EK2nDOe do"8?f0E ~Y}BtWs̿ơR/f࿇>I#9$dCpVQ [f-i_'. 4C _3>[y?^wף0g5<6=`u{Lgfe| 2׬n23?~Ʈeu$mV/~Ew#}]`U\v5n\FP+[Ts o? @_/{{%*PjV|7q&ՓTiqc P?,k=4OXX\SpdxxV{u `ֳŸ+ W`6svL>5v.T#kXk~җ޶*F}FWTSp~_g?'XO s&Rt^:v)wpV'n:Wڑc؎c:{AU+"PlAcqL)\z:h]oC Cm􃩔@OΪJG[ tNv=Btк )9t'Mˮ'^Vטݔ0a|FӁ6dCdK5ԛC<mHVC* O pz `.gIGCŮI`lZa$X QKާ;9n0łPl#ZwRr2^I{'{:P z6l0=_4td`R#HW47 t}/jxz{vޏ ؤ)'4oļąO޾7S\X`X~{򹆼67)Z2UHM3bJniǐڃ|t%.q_Mk>E`ϭHwx} =][}GjJ(O]6MqFGQ,mElT+ :eNw /cf/7|s 8bM (jJ=t6륌t,M~gf>!^_s1&+:=;fu~'9{i r)St†= 8=>~T G7I_Qyl/_kTZNR+BE0ˮzqBcUx%Muws頍枓ۃZƾC-+쥜ZqvldP}q~$^kغB2.` tow( >@@Ty<tbh}u Yd-VϏw!8-}cz(o]8 ]4&ݿ=[2ӿ <wkt5PF 蠑N0_?`頛ίbv Éa|~[;e_eL?4ж;{{CM-'v{o-oHBKl'(6P`щrLHi'+4vxSJZzIWKXhf$c{D͌<(|WO ^Yp̯u4Ҁ9˿=Ynrc`?-3dO 0Aq8ÑUUu\@,~ߔ_lL<ȁsB-0q3D"B;?U4 =4Ct1<@*+h~4_j}ǿJ8v/fs(ki/?e{9s ,z򉧃1`ۇd}%7S{/i㹪WzҗNW̽PcjS|>~O%un{3-T.=շoygqDM) nu }2F]zA{j֠rW&E0'*ibՔ,Vo @]'"+n629/tw2iN"",`*'ػ锽?X"iմpIڮZj >em76/Vo ڰy d+]V_y݅SFh\Ğ>~$#r}NS`H1nfN t$L!o'4WTpSfnKz ;̑&2hI:/퀠C؃(*'# %Ah4 `[=,|8oqC0䞴l4ӏ1V`)|NʣO>A}Y WQjԯB>3>-`UIXq4{AE݌`ʃnCf)݀\E VmGh4$ɑtQs1L oM9Zc$틙NdvDEPSRۣ2$ӺC.@+l(w$Z=?@z7&l,ˆ8v4-B>XM(6b%=ͫ.6PIoQ_x ]ZghIMOy?DxCv.7@U|ু,.,~!c֍aLP^ULQ[ٷZkW۫i_={a).YY<&M}I96+͒x!QnY+(ҟ~oh}$uFC:r\UF8U[.&76P䬴3WC-qB>j_#au~@oT_OZX eˬCT{8N4aA+8}ƙ9*_tr8iٶfHγGr]/{eq7s4pk8O-,u n8xc|]od".tSD }ߙʾLyXĶqyB"˞ .SY?crtx*ǩ y^iHg߮M%oQ{oD.ӿvA@i`bpvGߥZ:ekEɔIO2Cn&,-X*hhbעܤDWL/=?1(vDX9cX{y Ur1߼ Q]{ e9}E@씓VyXI_ *O@I(a(ȭQu;HЀVA[ UYD](x?' tVaN: h'Mek1^ou! 9_gēO?]M ]Ahh{^LKyߟF)u-ʕ'TR_wfȕ >Lw筚eeY! mSwϦx}l~n*<4a%W"Ou6 kI`TyMOo9g<ש(svߧ*ښuA_Tchjo8wuu<9~qiy&~דtpwU1|R3.ɓk`n7soCOyNvRؼ~bpn51BZAUYYQK>[)-gp욾&gO_Ӻ_+Ha-N`5;gMs^%@k+(Ecyw~;ƻk(b.i* _#s'\c{%#g!?w!|3u p}뱋ݢ&_Ai] j5 lU x.Iu:,K5Eӕ&~8:|-MA~W& f5mk4kE.-55 &wN9M5EIB{ה 8<}̓rgη~_@n9zu+}}Y$_+wc2y 9$ ?r@ vq(I \_G4y82_osQ =>`Dž+]HyŴġ@P)wD?]K>vk`Je ³r=g]..%‹,Q1~g3Ȼ7ǁ26$_T5oEY/>u4Oo|Mz5\߫0 j'}{?EP}mP'ξFl+^髫aW;DΙ (,l4v-@mHwƝQ~U. @)MJ/We[6R409 V>!Co0: 4<*C^ wa_Η\n{r@׮ӮKQt,~/zk^2~x+_|sM>_7+랬yg}m>wZA<|ݜIa:$<^ fuU&#ݥb4'n!%DKJfT]ѡSw9/\ڨ0;^50VOsZJ6g":_/u^MzֿLQ|VkNߦyo6 ݓU5-;2d|O'Bɳur =Ë} _{ׄȇ/N2;OkRۡܙ|<7'J:|gfq#n@w8E>HPu@tX8+{AG#$_ ;Mৢԟ ӿWO}ӁhSi9o.7z?ST[YRHȕ/Cc+~~ǟ_]} 'c3vl4e|H pUN4O#FϠD#,G9JrHT\]rt;KkS]!8 vkw "iε_M4X{By;2g&X';~W<=٥nED%{ Wހ+_C"N3r:7C^<өr~,OyHE3^WP2uA7 ^>F?q{? ZOǛPMUY\c{G3oy0l{AC3K>RVy'0#l*<'t-x -oyQRsl, '#{X N W({{*slQ'k(<9Dʃ5ExOdRxNS*2ȵU<KEJ} y4x7Nb]XiqgrdT.w?*~pI\Zʟqtomp~3l$fȚWWe+hY9 &=S囶9}~L ˆsn?]>)$,W7o8V)/GQh-td BwZ ߤ_=a oYR4-U\;Xb99}CJ|u};a|~χ{q%%㚒Gb0+^ﵓU]Q/=RO᳛Q9~wҪ&%3^D. 4* .uT+^ֲ`vt6`5¢m⿜D/_i@>cHEމPw5>K~>{;yh*PGd? .': Avο8چ%u?oޡy;S:kaNSڛ,,99,耤m #:v5lknEl99rjYAC"~s_BՂ X=zjP[y/?vBfwC|,uju^Ff9{M.4EG<{Ի| o!:[)󦩬m0;0NLhJ!l[VQf7sTʧbzW*sH*yV?+~GK{ҕcy袕z-wqprœ{O]k' <,{fSEՕj}SdWOp~\4nb?1Sz/AdZ7zd'fÊi*%G/Z~3ھT_|gOԯr3§V0:ߩzdt+byb8i_ ޓ !]?Z]R֊_:!L:ߴw 동?Z=\rhT'3g;ʣ)\}EWOS~߈Y诰L}'3x||QfNo tB}O4{z|R^{9AC0|NsVrGfyk`䝻‚bf2cO,nt\06v΋ch*?+' wqjCv+R /h _]o`bEG{%7f&ؑW ajkDpY0o Y@. G!Il428bD;o]ݛ%Y;~A7: v %L"3 0~<КsҠ_?o^ދkq1̚L_7@2Ǽiz_2f?:JSWcw<؅uC7r6/UM 'l;*C!Xޤ#Iu7Sgr,ۋ`d4FHΰFW.B]YCb|ݐlɬ2/EŸ`B" .w, % XF l$;(ƂR NU ( /¢4W4S9}^`RW0v%4v,d+t]]o:>KUޮYl'@I*//pߧW@Bi=8+@) ~d9 XK 4^i34 xRB|f}9" j&-3 x_G8nG4P͜ߋ*J6 g񍑣)Mxob1;:o~f=ţwN^ fh{q9qx._k2 A<N2@^S %0I(J>Z.nfA]ӻa;L7w+9?E^U5Y9B;~5;b*|v:س5,'K^ ӾW1uc5/``U˿o8wMdy.;5&|1 Yf)AoWejb=VAyb_| CM%}˿-/=\[&ؠYO6'-5^#nR%qX×:|$ _ Oչe4:l ^n#=϶>Ecg*zmAy5ϸY>[W3%a10 Gm7Ho2G'"$}P p_/2}:Ea_hbw a:DeMQ]pl?=O#Eu3:gj(hj[+`3_S=+?!^ |r୹MCX$k6Ϸ??輻/߄āMO. ~_ܿ?e3/Ԉݶ R1بvd8>~h9܈?%U0韢ܥBR>&+MN}ADj[dFu?;opA8 MHzs,Pzz~ /z2" 5V]V:Rڄ & # m*U"3FGpA KY] < TXqdUhBT{9@G3ڎÍU4C?7醑^oHEwpVwrԋSQ@Up89LrCHSO6Y}ʡu_*DY?_ YqH{j;^&Pȷ_|H,t7_Y~UxkID^{/oRd BoZϏԷƏz4E%}-0껊&#}""y5UCA&~|-? 7O=Sχ@=. ^.P_ uY@kBx{p}K {OלŖɰ |^;74QăE&b;_Oq@3T)u/P=ɺj}~5SӀ~ۍ%]#QX@ ~H`ѹ*{&U!g31!x~f 2͗\~эaLsrt _ P>@tanqt%oH~G_F5{'oSD;`[񩢡_7 MI' 4 Bc*n0Hr-߿:M:YNDz=Mv3WӼ<~K5*twHdI^(nz4`Э5].gSbR'oH ÆYѲ؊;eDK~PF"Vn``t:fSxt,O?0ʆ @0B$/7kk@%OW =R1۷E[y؄ pn5j2NfH͍&G?CB$kAas.Ü.#(U6⾰뇂#X9%,R$4'~'U(3Ak72'0  9PAC|kk\MQS9XF}yH3J+.NCwWC7vK`&HXR]k 俸S]-1B0_03sG?ghs ! zF4xpN(Ģ4trM(3@,m|i7Ag>E;Awqw /JeoØxfѸNvӻ<܀4 cW DҲ|Ec NjBF~NhLǮlZa)3?{%ԅ7w?Z'Yv^oքr,(wCa޲ no-Z)W}e}HR(r.MؘtU]S^$DSh'a_CdnЃ>?M߱59EڽmNÊ֒&z8D G18ñ;c O6WVl<=9Y=辊ck0|+W %-)_W~zUd':o4([t:+Fom? l~nЇp@0|J}QO+']ؼ\ت1قQ r RUԭ2~DڈV<}Q"K %wOP)/0J}edB 9}:}z!?M{K_JVIFBMtgFώ.^ߓ҇= <˷(ABQvGdp#u| }͆~6Ff4L]wɶ4)9-68! 9{a]܅ E]{ ίsC;w3~@_4`ЄXN^|j8A٩n=Ht*Q2.^Wqh*0#'ıtjԞi/:8# ]j3els1Bah U"ԛSHgoTΝ '!\U. ӼSu2zu)_\NE n2Lֿ9N[?NN-kW@sMH@iMt,eEWebejצ*.[viF"e|pAW9FG4q$?~ eJ)Q%&GzeS OS0-cV._6D&3rD^v-iuOO+ZDy&.Utg9r:MuUԥttxpaO&cgve>yu9B^Gc芾7y2)|-=! ɺg)%p):8E2dfUo7A{uŵ?U3jBAiEcqFVї>q*8F&[ IsSeIXX.X?)`5cuӖ0fႰ?@d?(ch$eMEI>s8ixd`hϖ*N0RG0] + 呦n,&""etmLx]+M|i~mAo7$5 lt=9sfo߼Ch{<^ 笈s/%,@}ϔS\G+$>Ah!OL(Y #/t!(#&034`\!zZlkr~?﮻O O&p 9Ѳ{l88:ױ,CSƥ%tWH ?{::H?郔`j#\ (o<|O~䀒D^N0|&| =_.Z#8~T{mJL øO:WR6W\oJlbAAByclw71vA~븴oJ!Umd?RfPUb{ 6Nw`}H#wa'Ol]v>kb`. g? ~L]`f#{H R]u`GR]M4ҭ|z.r8",א)!IwW Ć:M-OX2A6 y4*ERt,594*㭹0m@4A>oƜmNC< i_YC9uˡp d.JU<2 ĭtV)BߓW *aь+sgM4Y& /=~?5t[w=Ss?/~'toB tXvg!ue3lWЅ/w̻yw13WOlExtog V4oͶֿNdקTeG)Y}(+&/,wd` C`MwmR} k$@cޜ7$pQ 0zdjCm$8s NŘB 5fÞQ );k[8O!Q)"SH`-9C-w1LeEp `ťҺ.Vgw;4Vl?@CPqTg>8i083T)=8'aNCbY/(ΓnCt{2gjh ϓ{s8_;|6S?ɭn @ǿ4\ht/ܝگ_9eމ :C96ڡpu?Sn ]UT9t3!)YT;mEʀ[jTyq؁[Ev7g]~ѢTS,;tZ!&o0ϝg|눢Si/K?)7gg RDG9~"Ѓe\(lcBAP}[4̄TMߤ_q/yiM[8 U\Nyӻx}dtkbMMfnPLb=O^7l{W28 $HNn5׮^79_~)_K%u~X~m^(3VA%~kʝ^Qൕ6P>h:رrr|[1E]%^M;slPk՗]W4r})\Z{N\|ؙo姉߿bw?Iحϋyq\V}n=&ҽGBv4ܺ%}#X>$S чlenwO<.?#a[{^Q-P$c\u;=܋ņڡPww{ P~H@ys+߉㮵#5?դBߢeF߲>"r0U,H$oy71궞9kJ`'N\ϘΟʲtG9wjo4uny7>uOYߖ`\ %.g\ULxūݡΪR7c1C K ` g05aE)BсO;~Vᢾh~bUhbpy. =m@ ąD6:Aokuy@~_^CK~Ǻ9 6?+R2 &%IF} z]Jq^fe5״o qڍvWidx|ˢ}3t1zf˦}( .XJvÆdxYL6P6kHgia M|o3Ok Ƕ_d'x,/!ƥ0;;|9&))mk> WS#BB̀'BmrO}~n|6yd pZ?`Y/E ?7,)VOi)Rih ijNWN!xBM⇊4Ϡ m?qę C_px64Gm?+$dhG _pKH}5zҤs4w @hW 7 2,EydAvGy^^S]3.QǩFt m8R@~_sKYM_G`^[! ʿ6KKqsCXذHQyry,SeoE43q5dx$5 O~X~r+U)0/"q@VN!?b;fTx&F[&y|gȟ77tWƻ%Ç1= )pGdUUC^'9MwZl付#5OO\}h d(n nb-'N`߉G7rB,<$VOUt Pl, ;/c-ci`7}C{ԑ>v Ʊ`kL+(2Y|$?ox XGc_;ߞ+X |wɟ~>/E o|.nBMD]8;Jy#p>u# GɝYR fe?;CW~gvw?~?F~r%|E%} -}~ɨu%c(tZ}XF z?efqt} O>V`mkKx/mRcOz^'^1 (9xng^.' nu [ `%:guSIZ^/0W~โ==!=_0Vc^_B\ '[|}CnH 2 "Bߐ_dž;J`5e~ f kLDS҅:x}1;>8XGnQkJpp2N1)pYNfHӑYf+_Ozܥ^T}GfR#~ʽW26Ff7jd|^1ް6_x濑G}K,\\t%2Z-,4loY5;]e߉Blkk=v\@f[!^Y,֠o?*[.7N k~sgH,?9 u-@ tB tJ?v@ӱ5ScyQO|A<ߺov>*#'7~ sL\^?:xsgis?$_y w׹#Ͽf[@uM]࠱~@2_qCe=qtgԎ=NaP\[vo{^aŤ*tN^3ޥ|m)::6#ɿybxZ5:;gTX.VdΧ)Gߺ?BzHp>0!R#볐'Ŭ®$_Cǖv(CuWX|iܟ3dxGߟD?nJ/+NMʨA~EՄ^M}~ϝߡa! OQiUoY/c.dEvI>6CHo|V\*6SHb^- E]'4$Hlox&Sl@-ȿ_EcהFWl1;2|ʶsb(U 1 _1F{'Q)ǣ~-k6dž|겚Y q[g@ZhR 8[rW6!Ccu𫦸к>1oh|/3 QO~䥁!r: |2J@AuAX:u07Rl` 0 T'QJQrRiŠ]WWgZ.ʓLgX7,F(DSsM@ 9FhEuxyKy0 gj6c'&F LrL 06 >,Q9 >&|p13FZq(DRu[7fڷMQMFǪ7pK9v;LV9$1# *pgJ[Zq+-@w5mG+Y&8hx}x~)cxV]dɌw_2@OO1|=,<"O,ׅ7 b < P`l> ylb' xaNXxA'}E0`//g߰9?0ohgc=o}KCO3뻬 u.8 !&Sʡ|Cr7w0r&yi pW;n7 ~;vӁ4oJ>o/?B+o}i'=e0*h}{``1_y=yퟭXz `5`!ŋց:r'ש ,>OMXc sO 'E⮠; ?ˇzaqy}px!d3e S,b/Z޳N[WqH&f&y-mNpJ-L[`H+3b"?.jh`VҪBʁ)dpEA8U-z?`:#p~BTxJ C ɨc#)h@gT  a,KИ+Ç{ x+j %^G&`IƸ`5k7sU8 w1}/c ]Km}?]]@@⽔tQn5(Ï}'?p&6/§){n5Wrw sU q떿8Aޠ0{qF`=b>91!SJiĂ//]u ̝Et^>Nrb_L߰ȫ]8 pl vɄ6ZsoS{w)ſPj OE^ dw"~[>owwwM}C鴋|u"8;ĵBC*܎aVB0\*ww:k=?gvBU7AMWLL1){.et8 &sgZV@<0]/]~|u@ Z?M_pu g}7t_ 5qz]?F_t71*t8|o0wHwwxBV3JW35ߗ7z?A;A=wDi]껀{^3mOPsH>޵4\OV!ӾtV_g=O#`o?}+y \/ऱ{r}eas+y:/O⮀*O|xT i6_WYo{i_wHqI-ݿ9{dm؞?~䀻tIQ$rX~ T~?I'зN9~耷S`*>&?PrgWz A;!<5m8hl?C O[wkO kxJɲPNk(L`Ȳ2 ^%&iK Ҥq5Qw||A;^5 |_|4*w8:AI񂏶"_t/wc"\*MhMXu.Ήpo:pm<2" "z"MWSZ+0זwezگnTNzyAdp\*0**@\,؉: 45,Z*GUcfxzT3y]Z~Uw>9WAR7N%GόqSt$'gCQܿ1h8?d]*yƒ?LsP/=NKq_3>nK `hٙ,2l;ADK9sHMև9kZ߱jg81vmyƾsrOѷOS? ?;:PMV'ohvPͮ.m  As7*΀`K*&!G:~c,rwnXk4 \__G/^cՈ~7K9OdqnA, c4{w4򖧁o!9T]5|zݢ7v5 r.4u\(S4U武 7.AoV: Z{dDž==?*D⿇` Or*j|Ф2H5;w1!Uh8}~xhk;hWOOrj8O!:HJN%h~B|Tq~O *z2('xo9cA$/_ś_'ć a/bؖRvÍg ᩯ|?N^jRwPC^JNU4y>s(So/NBCa? :p{@S̭|L02&A<.{EA~w5U?=Ogv``Pw0?zDbs/:=bw$Dk2i7xU\~A(nMt -]Vh#_L}OQ_رΖl 5=Qmfq, g>KX?y@ kx?o6[;O _Tb&2@~k/_Xԅx9Dy[S9S_NihX3^Ϻpo{% q`Uk;]݈XRL]`/nR FEJ]\(o-T8J%uIgS__Q)츑i彿7!YCI!P;`ݰ ,/k~]h3^87ni*بs<&GxDF!8)8Z|!^@eUL'Lo/!~ Swg>`:vDj6^jI$Yj// c G0TW-Į o&UB5WD@{;r a|/K>ҮyiϜkݩ`xɯ'&gMi}U q(ʒ7JH[OO8p? ?c/(Mh[z}i/bN}6vRN0oKl8;oIc#+𻶼o`1u|^9B'$607{U#TkA|dcIw%O %=_IVx| wxClAr@,OC`GHK(jhloorFl'FˠŐy9[pܽ4<BrS^[Yȍ"y=YB mlyo(!ǘLrT(&>q@ y9"7<%:q"I%`pM@-Un8>YcoOxsm;.YWCJOҫdv΢{HFc"tk$>f>;gNJ dFF>'z5ygHGh==& k8OCX赂vs<8k{s7KnjWjIl~7?sNo'迹MsbPd3l5l^9<.jDRd'n[4(<%CD*{NHzҭ >V8huE K'BA?n(;`Np^΅`K5A[rw?Fg8_(`oߎ.Z N ]KXI8C{Ovr#X,]R랿Ɨ1qXZ&񺑮N4!7ݝ____Pb,gǠ@6'C>ubjB{v qȰ!Fp?ˢ]YoEa';6$x7 ѿk#6K٥0E0֎r8O'ɰ}+6u ӹF<~ϰt/LbrY47WEWfkH^.mo#zSQh^DEe|.`Kce*1N=Sbg:lƯP1)/`Wmq \v272G n)<'|R?{-bE;s9L sߩoIu|~4e98^:Em5^i/.1Ŀ nczxA` N3&yV҇.{E$O勢ʟ)?ASh <`x?qhbxOCq MYdOI) Źy|hʅ^x I::e$ ~=&ȃ Yp<[]Ɩ[5 S†ӖADpQC|DcPJ ;y?,Txg=_+Z'ӆ QDC׿(e SK`y?=ٹ@p|P$eŬg"3*hR9SJQ7YNy/Z:0.jBec崈^_?h%+|t0T,͢fSq !~EZ nJ*<8-2*.X>(|"#pB+~` o.{I(C;A-_oRQIz'x R$ =U_طNcf]-Ły sS(9Zvv_:%=n}r.䬒3^|pZEoj9l7MT.|5Z;8e8)d8񩚭&5omhi?‹nLO*F/H(<d`B.'>uRo7P5Ez sF4._%tCgTC/jNk8v\_\ҵxϔi y3-|n)0֓:>waqB@G\q MpZfOOrCrnpԲ߹#Z M 9Х"D9]vn$o8 {Dh/&Sڡ#|L9j'v4KmTZ~) ^ɗZ1=4}7{ (nB-t~2.芙 urXVٴM'(r:5*?i;@ߗ gxr,w1{J8)YDGOy V"$Ż$.AE:nYySJyV&~ѾU;hX37LQ&\4@51q0{h$?"!A?C9.WaEz<%4dLˊi②hY&bBarYj1\ el,`Mp^N蔯XKUmF~Z_J7F7ʾx〽q]KYQ󢾇]| Z56gt)R~᳇0OVϕvJȗk0 a}  =ִ074yiiBA{zE^=*m?pq-̚IqO÷ 3wB'cy} ϩwtwov?]jʺW0&e9Kq?,duRn{@oOT0M)IW7׻ZQ}u, '.eaMW}xkWʀchRo Z7/s25U (hDo$8Ee ]=AWI1K~Ro, ?k g rU^ϵ#\\.afВUB0B 7ϣKBz c&ɼ]8}'AyA&di|mClwaLɨ[*~`u t)jk߷x9;(9LB}-G9 @?/(@^ ol糼;w1g}][yk q>vI➕ӨWj7ߕ{|W']b7a'sP+ ܩKP!@}uڴ:Zx's-z|nP&Q 8I3ڥxN `}kD,OI#x@~*RjvКĩ ":2gYhYiT"F>VÄW"hirF" < yZ~)_p=G.F')/a6C,mn6x[^^24NC%/?Rŵ7Pٟ?6KťoBko*վb7"nIYl$bg9_u@yE>`<A~[CJcC>K4O,,Sb֮cޛ+^?N]J"~,?psr}(6Zȼ J+c6(v-nb?7quT*3@qgRehz^T\_lR7@A kJ=FyVgY,#y6%~e2.8 gC+aX)K 9n睟T9p}]~̳|Gg\sh[cj&ygM_Q`reYKJ@q.wn^{Wɧ[>kMmO%oh`hh8fZ/"m`; ϻߨ WO`z3E?VΥ=X1S8 em9-A(5c6zk3wS@ޑ gw n [0)8@DeX;2$.CDӄƌG~ 8@;(v BDW?(tI6GgmR+fC$M+?Ĕ+Ɖ8HEs)F.HrRy~Z(-6 _d#MB=| :5 w_|CRAwUKu. ]tI{]y:ߒGx3SޯgxBʊ)F:jM^[= <1ɍbhG(: _chm{XemTxkM!/zaiqO `hp) A'1*hm ]SW3UI:}Dk6.)Ҭ Or~S{~Wr4<.QK&o~ l}{׉QCȇC2!} lQV{N`Aq+ec"$< W*uBDC$ W:N0'moߢՀ7N5l](櫢ذ)s~kҪ>GH 9Iϼ9b.ey++ݖ_]8W^G?>{i MU}Åf?4~zby 2YQg_ V, bd9WCt~ir7R=U]=^6u:句f)`/@~gyʿJT^&NGOE&p/mU5??w(Fq2hw~d @EZ3RQU BcՄc` ˌ&@vq*q N|)tZ^ij<` WY<lQ}?SԡxLkTS)E[JQr?¿Gr]<kG(GNMwED57`0΍e<,)kvwg͸>`.ੜo&|\>{~S-#3g#_k08ul5=dͺ܄7&8jx]&p+%:y^ ZF,'<|S@9MMij+k<5o^:p٬] !*/^ լx:[Ba4|2_0rboP16OK1w]y~w."VL J8"6[L<]pe0^SvX@$|cM&bp|860 Ι=/wOS3O j@R43a%Bs/CpSF4!H$ -<=oJB1vXfμp(MۼK5{[i>26 EܒfL(P >12Z5+!6ȭ/uqޅЁش0[^ rrGscwQr֛rԐ5濭͙])op[כ;#hoAQ*n*EQMKY~dpE> ռf[ӭM`(\د:B"D`B8T$|ߗ-]mNo3#կu+Z %Il<ǼK[oWH(cgz3OJJ ̅QBq0ڽ׽OFmJ ya:BX!|B]vbOuܨ ݋qx*Up^ \Kxˏ-?Xck׽of k/K8u.^sb0Kz}d4a w`*zjtvzf`"gxAusx[hsŋ~P/侸 jK'$CghG.k$OGqisD9c Ln(%_%=>BKA dȽ{1߰Ss0JѲ! iHHrw_NO/&0ɞ^S%/WnQR"ic5rs9g/E+JU F=9`.&7)YZޔ4Oމ5Ț}3`7Z\jݠk,S+f.f.y~^"L.4' 6ck>6"}cgšc]3 +UGa) "~1pԗoKDǪuGe5 OtP̝Yo'T  7=e8<z\躄X6 |Ca[I&w0?xkMG38j'ٕh=[8`|ʟX*;+X9 2!jR \S[YO8?<˛=l̞yxEA ]׽o777<|>i!dی~kxOrnG$Gx\ x NL:E0Ƹmr,:Cq}_v:73n6v}kxo1/MZYpXV]~9n*x=+pџM~Tf_E+Ȯ|SKm5p/%\x$\"6kE[ ( 9llEr.>-k>~Mx|w~b/<c+`q7@W0%p|]x ̢sMD~V ~J LqFqe[gm"5j0\/ajW4__ܯ3|{+xo?=\r[v=66ey*,6B6l?do[xHI?;\tZr'rAX'R,ksFwƽ]6^埞xʟѽA%rS`37-;]1|^QU~E V[w%@o}cAſuAr꯮wUM?qM*7/ +mv OTWƟ?K>oq= Or#3|-s~m*?wϖ3ldMy2ǟkʯY~&OgqGAw|TOpg? Q:{ L{\So7?y'&&s͌G/gx ;Y39,P2OdRxH9ezS|^HΛ7QE7ǓɷS.[.ߘ_^;p$S}E#C (o8U\Gsu]+v*z: (-n!W#A= '%F[-'v̒ebW(/+/02|՟Qw$ gOLO11V;mcY`U{ϓPFy'8H;yC|2p%#0n:uH3];y/ @WqV,'́^suU_,OV|̚oRw{LTpxᦃ/Nx]ΓyhZN 'S Ϗ'$m!~6@GZ7O&qjB>a]N6~O,KR`UEtW_cW_(}i>nOAht$b~ #p |̚󨿣ߘhx@\:%_Kk{/IݧwJXdJZO^G#ŚPN;cy/>:2ZE[꣇N?F `6y/4p 8Ž4KO߸*ߨ|V}`υךB.9ߔ漥*R E}<٫]xkm s.pF? ϔ|]/o{?A7;8pxO1Xmv7;Jo7wRhK\o?p}o<DB >u"Z7$Vr}_@^3\ia XD+]va:'}euB7Ϸv5˵e8-N]8+ӿI e7V>w7O#gШ;*ox-BU~Ӽ4^^/MU!yLM GUwm*@ϫ^l( ['j_;/15^~K*>[?Q7W}igԽ i"Zަ(__.?b~a(_#nf~]sx?~kQoŸW^o26 Jjoʿr@<1 tdTo*li\$ӿu{~%ڳRO3T^\/ i) Tctq\ p#d*LÍ᠑b'^?t"&Dog (v6 ;%kP}BnymCnߏ<<<6 [eydk[~Bk>`0K_|'c ,ؐo/Tls$S!<c~-T ,ٝC[StpaN$oE׏BvxS".g PaS5yyc1#oyB޾'7F;d(qv|u?|!T]̑)W?wwE}|J.{Püy⽱|r;FȤ0wYIYq~Yf:BYS_AZ˛ny"c;z Z6Yij1М(73߃:ʪB~-?,?)_ Ht |@aw[^胮i؁o/Q6wtˏo .!uC3]o!/rBVU]76ߖwfy|o?xvu*00R_0_V5+5Nqs|^PVh[??M<q8D}B 0`#Tӯ"/pcs&'2/y͏NvEo~!Ǟ8sn!tLWZ`0 (6.PL93~T~&Oʘ_xR/7ǗGִñ}ojEW'DwOMd{$ETWBj^ʛ[8Ejex0aW:!WCWo .KɒO)X&*ug;NǎG+ Alm/0}8.qktzeVw`3Uё7ʻ{w`vW?|AW ۇahe\]OG?`p [Gߔ?I߀7{1E:#}O9s)boH7r@'b7z{~Pf9˥sA%I#v$DpwE#<*<'tMHGE2ޥ{ Żs-R,͡1@GzUlfRx ?Lh gyu$L/^?Ej0x)N TdxqRcQI/=Uɏ#[~wVV,Odws|5c(e߼mM ng!L2}ˇpKR _J.q!x_Gqz z4׻>Gl'@\ۡӼ"X-EBC_q,a 9Iu {τLgW=R98l/A>=KQ JbA_|=壔/8Fh\ 7?9pu8d%(̈<;R,_gq:^aM`+99a9/qBK; r]@'a3;𺵸6gly3z pFY_>(cb$9BȤb|4G%~vX@?ѿG-SVyy>p) ;ſQIjU荀9ъ!s?c}{?yM@o rX@T蠵m]{-߳-({As2R孑H*z68:PTv"/!dY6LyY;RggJ&p=Gߠ +_v/%poK10.ߟ,Hޕ箊”&Djq#W!I?~zoO LIZ!Q̨s{S ^>A{ x~XFĹ/ KҸW$ε'LHS ĮKcS썘`C؉l?b-7[xJhip?oҠ8m?D`e(7tFGHPQ`S$tgD<7p|- yE vv^7?f)뵠.񠭀w!T|_jEgmYY< Js: + ]89NQ{{~wo쾑Y_d~a~)\^ x| Pȑ0&eFׇjV`/olG"տ5WW%d1^wVڽmmd4㵷[ = Գ?\ H,ԝ_^LZs.__$+thn_ղ?[qs MP4EO{pUކJ껀{^3LhJx=+h/$!~xhIE݋ }󠧽hP{c7Tky \@=/xJ?Yv~󿭿Z#e`:ߜ,ࢵVo)a q@v7 ܝw^ߘ ||?Ĕp'_. ,GWI1uh7_*d)z()~[ogS߹lQ7{>:7d~Ŀ_"|Ia{ᒼ{ ]`go?R _!s}dx>Y‚UL"7fo:@G Hqƹ : DNL^\]Qx#lV<?OՙƯ O[{Hk{BRfB4;p Bv!& džɑZ\ ڨjm<7/= Q 3gѣ3#?pq8'A=v" >XPɢl$0NpDEQ yEu&SKߜl059d"E&N(?9BaI`rٸn4ng:yk][)6kֳf4?1oDgnxɲl~M(茼6؝Bh}t.hDjeWf~(,zdԽ?nR_bu򿒢۸YR?U+* NP.9 {؎eyEB6ˈoΘu>Y'{= #!~Yp ڀ[,~z6$7 1^b*Ӿ>4SpW,i:m ҋ!3m4lf )zwmB7Ng9kn((oH ;K$hQ_IYM3q!WYphk( IPgVt!'#} xtKmpX̧BN$?=Yo{oH?/ 6_> (fk9ȅ<|!j'S˛BGoA6+D<|vz''aD^WH:O?*Cҡ4T3s-|H 0${p6^K jhKS =$Q/!Mļ޿+By2U]s;G +(Cd$\Y)rC&Gwɭyڧ]TKf{~~|zh~e?} c7̺PUH[6\(~4"*_,' dW~?df[=/%QdU OCc?>>*lMkWz,$N) HeK{3UU$ϓ`PJ>w炮=N>pe©_?%O2<tST/W}g׊ S,שi^8Hyk]"K:=)؁'+g"*Vu(C$Μzm Bi`F0Wy*p4i`Tǧ߿^U;oLBw퍓zpTϳ Ym@Ψ"7Ĕ (c\42QNy&wi8~ǗA˽9.B7{ho'r`Z~Y8Pd`i"/o[~ LM+],wtv~|jxGQ&)9T1g)opot28?Wg ^4}b~J2 ̴(Ӽ+`T'%џ)Xߧ[-+?0Z?G#O;xЅQN~dU7?h@F q>E)J7|E/M:L,SW2vpֈȝ9USˌAgSys}d_Ya]znQ}soϦ{;z*|GK.|\yq5 84JE]naO$1Āoy3bN UȻ4PVuOUm+WGFƃMK;[e-x>w7oa;= _V/LEo 3|ݤ{\u!k飞NB򸹅F V&,_ c×T Ĥ6aG^f]X[`-h@ɛLf(!]?xm+޾8_Z&FW/40SҼ>9o. 'j Z3Δ/X**o  I1 y=(6{VP]"yݿ2zN¡09bSuH$R|>L%y#F%؊C`)jV<_Kʱ(\ͩ I/oyF*_$U QN9Mw[#6{{o܏3;n\Qf*b} ywQ@U8zo~]^-x{)y ò_/YH)̊ ur ~~;H`lsPb?*7XIkL`F6D"rGh-]!kX y;ƏM~د܌o?w$me"%)Ve?x۟?bSlL?Q?˻-\gAN| 6[6ퟣÆ11݁GYI|{I:w2t8LΡd$kVe'm N1L=MFyEAX~:x!`ּIw6<#?`:w |@Q[ez/ NHБ +h\ Fs|) |y2}u=*y?`y240)<ƓOiDqF^!7E ߡ9 $9IDªexd8'wvdN &БJ.!Ϩ>LcѼHT=\ы?koWǃ|Rb:xuwU_kM~{G) )_Fv'F-o HbI;2FWaI3Br/@(z}ñ&v6AO4ӔW.$" Ż<F?R ny$N l`dUӿ`rawU 'c@"xS‰4U15h˱lޙ3O+OЊי~,I)a.#-noD+\4顟 []ͨ :MpS[Da=-'‹&x<}䏍^E_#~._ݚ~vbNl' |gws1]AEcMgלoE)8xFFIh R씂4WzMThIv5|Q>K(oȏOLd [ht0m6k 4u&j4n?bR ff^:-VADpRie'߹Ιw7-(O=ns r^HB3X~4JDol꽕/ ]r-Max.塟g"v~7/0(z(<:I1UЇjw(4W󜟙%h=8 6{&mBC/f!>)ÅL+vLN<[G>2ޓC0$C]!M/;ǧ!kPs[|yåF<,P*ƯPUP:9GYVuWM ަ֒?Q]-u$+@>ccڋ!0=}+"~`Aov?%|nFtDT=J)Ax>x ?~A<*CoԐ"ۤSC$>7*h"eSC,UT9~ xY% :)Es0 `S1v).+#vQ5prk t;O?}3 >a7Häs2 0XCQu=(;)]yJEǑ_Ӽ>uWaW !wJex|GYEYx?5 ?@9LV_SPLrrQhF#eBp v XOs'lD sL#f^.5 ,v:,MamYAϤй)EBE#.AqqEνy*vɉacG.41S:L` NT {1iʅo" =I[`E|)Lݾb;Gs!o[pXC|Ѫ;0NH5?K#N 030_I3qwv @M*8:3 Nyc NqwFB?pڃ(O5!}F_VcV ڦtpmZ/Y~a(K~%=:qNF /AOOSŽ!VeܻFl#oB}O&A΅ayiV~쀂pAࠧ< n$?Jy/(TEJ 3QR)c jӾ8GF2u&P?c8}EYi✿wKd8XN5f"zߵ]AAK`Sdʔok-N)X5؋\KbKBӋ][+~9198;w9s=0/ssg4?cMDQ)U>o@\&I  &+B8˚,w_t&gŒƛxyxW\E S:VAqXa SADt*>4N`4st#\53xrxv$TKmV˼'"q/h <:>:7i4Y!?ZC5k~ =v6zNHF/C@TSh&JKH՟k =lFf⃻3E:bpl@My'XyNGs|܎eslM zZz|}']OwuZM{SH] Di?F-SUI ͜׿úcb!W  ⍼~ s9R+6#K%yk\.~Xձ~dƮv#l:/vf/Çv *tmϭY#a+V e lY|ٮ.Z׼uި_ҷxKb7|H\cu[ejvoXh uaW;x{IKy *_ƘpݚLpNRsӁ(+o3 ܅]ij8 r @Su_2$ yR޿oo~ Q@!!Z?9d7ER$oOvSX iӅ0`gBv1g`H5rWܵ1$ l $>)) 2w=+  THQ_E]Q=i#Q;1}B%;{EZvgav?sy]R&]7sƙtه(?"Xg,?jfZlcӵ:SV^IO[](nvSg|uE?B8p7^΁DNaiRMLSd/ȢHLuۂ/@#^1~pssj!8ѻ`LxoaP` V^ ys;p|D1|CDw{q2v~;hM 'dc ~U+Zj7]?f0ѡ[>d7ߞ7|xXg_tG'NOg@D$u };L3ٝᐉ<+NTΓk0nw'@DWr\gH5)~ ׂ_p~EUxl$f D/΃SK27\ﯓ_ a4q+*}r YDa/uR" ZKy /okXIvVo8WQn"xbj_w~'d$;0"p"}S]6|;ԯdCV)5]$۞ Z%z2K:/?f%7TL"9`s;i%bzUFvQz~&l=SQO1}x {Ҁyagڎw-8g?kk=9|;De12ڿ{9}~_}x:݆`76Zs/-ca5kؑXUR7^aq$uU*!.'ቻqtݮᏧk:z&}o^\VOC)MQ̤Iywư@_`Ӥ<|n7y*az ro$}'BBma"jJ=`њN;<_w]]g.d;5&D>D.^Qo[EXSǡu~7N$xnF!H4:)xF+G~-sO5_tIo_e/ 4Cg/o{Z/t<ӿu~@FNhy+y=F^ß) Z+ԐJ&n ~'6^'SP:Okb@Gn%'6agz?sG^HPMjiU]@Ŀ.+j{0X\Ga.Uq|m??~뿳(oD[]5*scH[Ί_[,?O=y zjGWԑwS+$|?=$~%( $)\Bx:ߔ_{M_5;uy]➸mژnkLtތm@ UD/RS.PJ?9翧avhھi؏&N`5Yo~y"IE0~O3?WK)5ttNx+~@bWIt;'Wy'xզ>mK/js7YٶǸY?eKm]ީ/ 0dO`th0AIJ3s+\(E wC,Gͻow`BO5%%Q>CZeds8AJ%?v1s"Ӯqף`Q|86?IL{Z[ptQZrҫ+F& DZs_tNfjՍyU0H*IP!vBIP"dtImÛpH5<_##3qW79MѻP!|WQ<iNY ^|yeZ@:eR**J}TuI,dhN^§*ȸ (_\p W%'1 `_)L8 aᩭc`1wg~LGΉ#=}X@kRwO H,g Y[O|AG ]SγNӋLV-Clb4i'{Im7+{#&MM?Z̰0. z4i4cy,Ѣ6a=CGkI1"M%uV.f/ֿ aSL{R3a=YfErs'|?4U)|)B5ymfq?:Sd׎ iC RTsU2dq"9+]% _3w~J#O~W'x> !S V,EZ fނㆵ7% c??PIYUʰ!A~5њF4-4 Ũ;gU׎ڵs[.G8kA.%/n3q\x7R~o4EdsD@c_ۅٱ_r<7!xF)ėrXMRyGe!HI_<*f8xn]ʜ5[zqb" Q8 ׉_dyۃ]>e' 77<%h4gPA>]Q 9$NpX\]+8%5GW~~Z_7p0rJHQ)b[-v=93jNߙH.d -3Zkp@Oxk yun<ӭr~-oyHE;^WP2uA7 ^>Fqw_؋<8/s1 Vƥz{R>y_8H|?jAyG**pyMx|/=yodZ?[+R+?jnظY@X {X N W(gw*slQ7k(<9D1&H1wJA~ ;oUexk1[yEW}3{\_fo;p[F| i),JӴ8 'kCQ[,U1 Oe'x-O.9{튑ߒtfC?onkFp_ \`?75~0M[>&{tK9!6E wEl+>`nn1IZfya)8ʮH|ă&cD:d]x_``.k 2yv`3ށpP#%5ʏ0&vS^|?cFbӹ)S!qΡAy p2xF1 a1a|A056GIzWU$`/<3+!Rx3{<̃bt/Sn| !٥$_UFS޳hώ`F~iuoBu?Df@~zxc)]lj-O|N`9Rw ֹ7^A.Ł8k#뢬* R4 ۩#2o ^@D2fx`"}ÂK~J%$4&aU;=y{I~faA?p 4nTuB3  !s.. g DZ]>̌^5zO/ n΃NK%bs 𙡩n|B>,M4Vw[-0kK^?/OMz0o//<J 7rzl~ TEV;GYihrx*< W`Aqdy=_ o#lY,y_`?M(*oߊ_+=/?2L^h4SN !}A/܅g)~VB. H$ fCgKaK(MÂ;(C$]x}< k'(d" I7PTeJ+h9{K?'[$ʝ뿡TJ[?S4y.̳$V#lGب. Cas".5"0""&Rssξ(oj!"+L@'~ |i^?`с t,~}}vK/xVqC]e{7G|ze?k5/,e*T?{jgi73\&|ρi`΂ʤ BSp_ں:+{#_<vBalmw:5N:uiӻk#{o٬}#;*`*Btw4[ȯSwyB=e>4 f&kSڍ U)M[fK%gL|,w^D-^Zz-Pߛ-OļrTXxr+4廙.R߯_b_ \Lڑz37w{U_ۏ\|?q1S^/7WPP;kأL.gc]F7ꭾM^L;W/SZTKSooz=(̕|1S̝LIbZݨR/֊_:GFlu~iֿf_kCD$S}|/RY"W`oϬzrb99We?%uM~d)Lt/ӽy|wyk41*}9@- Uq|gO\7F?owYp7&U~R2N~jHsޤ<ٿ75~qjkmvm׷d_?LGPvI>x`q3=@$O"+|x|v@Oƙ]_<Odϴ*1FD=;xƙ*Ծ&wЯ0CyOVʡ4d'D(#"SԹ'*G0 m~e"Ca.v9A>WDz16.fwe:7lYqV?ʍ׫@nSݱ!O!߹f=Y=r(ک~&b=Wplx8k.{usOkO!" ^`90yH#婰AQDBRP2xy}|񿪈~WvX~t`k5Ch80["g6e3Lo^{$y=fNt 6~k!?Nۙ'w0%je *V<+H89DG' s-sg]B -|ya?^9PO_kU:ձgժ`9aL-ӿIdW3>ͽ[MxS\b,8|&OL ')@ 0-3~_?[{ׅ*vw%7=X`gMYȫH5^. ;ݘ?5> X4! eT֦a)6Tt|Igidq  .xv8 7KwS '/v7cgf/\ZsW}^@ܿy1Ѭ^\_kT?e / >Wa8 c/8?É_ֳ5, om`EDcy-#+Žp@O>cC_cyB'ׅޜ>CN{-:o/vo74FHΰ~O&p>P (C)9|OM @[]/ȵ:0KѠ#f<-}Bs9ӾDϑQY Cp2j) N-9~N>UџV#.8dy@ A *).O&o<4㛻3(ӫZ a#u8?vtZൢ<|pvvgOALrnxB"prX<&t~|VOyMlV!w.,|! ۄt3ꌌK4zО^8Gcwh!-)0#x轭O.P:A2L4ÐRRa;.INdJ?^:?׸8|O=_OINPV)wޮma[V4D!l4x~)_󻛙`sņBx? cpp M/xh(f8l-N~(/RI7hNIdy tv7a^0&lnvr:{uQE 7G8"#DM(."BCȊlu(|UPE!r_2F0K5?,y:R)8d CeG,LҿW(RAR9;i0|]l)ڙ p,'Jo"*S,@MnVP "MjX154 3^|N5,'[^i '\~o` ᡓ 0,o$yJa^cR=`l&2oWmj=vAyr첀H7,@yKA<[L5+޵1HS &/pℰcL;Nk3N.Ym@ g:_Qhr8#=ۂHϢ-$tYF[gfy+š 81 y |ϨuX fz4#zp&ww𐁟.2~@n"y >WW!_f"ڧ:% M"9~O_QO&݉* 4ihUXMQI(9Ӛ(j[+÷}w3j~·D˱I$/|q)]߄āMO."~ܿ?f.Ԉ{lAbQdՍq_3sLy3sy_ަn DDZ1&h PD'pD+= HЀҴl)Afu$Y<{9ƨ~9}]cH@A@wA 2_F o >A &B("! p^o谴G3 N6,wQ㚄&$ =UCt5 ky{q%*1K[= =wXB0L^[]ƗKcHZx{smRi*Q0\m*PY] < TXqdUhBT{9@G3ڎÍU4C߹7gY[nͧ@Up89P=C~G3t:kJ)0 7VkO[{ڿ*;>{к/[ ԃ't MhSAPxkr|/ȇ+h.zJ! ('_~UxkID􊮽7)2kVUe}7=ԷƏz4E%}-0껊_僑.]FQjy(HDp?Y`Z?A[=Sχ@=n 5Ἦ7U~M"so({OK*MR)XCf&Jxd@l'1hj~ "Y9i7Wj15 (xSr<1>0 &g7'`<pE2ZV>ehK?DuudPlm'ߴd6<jxUAQo@s@W,=+,3U= T3k-n9".ʍI}O#uMu_!;;;|Uz݈V^!h[i]yɇp G1I`Pŷ\]4t8VVTK0e;:x>|""sҙ7/Q7}3٫{pˡ/܀#ҁ,O_I7_ DtcOuda&8_z-eurcQ5R7?ɻ)_or_%΁ tr =5(Ώ3M Amo&E[2+wG3iZ8>/+!sS .(iB|^aG|SOdŜL_c&w{v+b:/(k2xZ/y&|G8i_ T?Y и?eĞBcΓC74:Rbɭ c"|ȟNKdp޾a!3A@A7p4CeAD4܏㑦*RVGh@E=ـyxقz!P95twx*/'-T%kґ8/C2.Vp=0KٓNM] ᐈ݁G ΧlJS6!9u;Aص;rr >v_fCy S5sQ~o}q.yH/hKyy1j4pU / %sw? skg2oC70]2EB/NuTՓ '"{x$\N%<끝O Im0}ԏD WBS}Eߢ|>4iͽd*n#>?F&g9]eX~OEUWΟo]A tNjOϨks"*pmFX%ym#Ǽ=h2!?aW5=_bR'oH ÆYѲ؊;eD=`(YL+7 0:)d<'r|ʆ @0B$/7kk/`0~ѐf=fө6;Ei\6MᠱiFمwy[8*bPE`(Lf 6RzsCoy/{*T߱lmĢ0GHS"1 [>l$OƷ_kh@.ukS]g|]u/GgAfH͍&G?eA.DJx|%et/${9XTI0{(Hy,?aP@Ihџ8'U(3Ak72ohœA?d?綟jZ ,!9;yf,>}OJCUV8 T x*`Ƕ;_-- XR]kQ , 9=?0@J46Fx罒HZƖ'~=7M6NypOLm;I1  CXTށQ _e<01_1Ҕ)nb@}@!x/ɻ_E3Awqx /JqPGkN ,LXv!ЈP X4l X){H"0a}:[e4Z@,{%K8H-X1- (òv^IRWy;`+R<[<?g,=r qwMb "}$tFM;fpS~e0;y~3L .4vAx~K~_2A\x0=URfy8/$,%Upv`?[O(^MV~#(+;ۗءƚУz,Eg5VĶ"*VHMH?MiVbmDox FU@sBQJ/BY6? 袈 'T8 xw%& $'qM* JVY6MtgFώ.^ߓ҇= <˷7(hewĮWaxCY x͑:{n&&:;a1*{v,y"Pݒ ך קY׍uxXP p= ‰TˬVM7h9;դ4s ҩ U\.=/9!ֻFi/:8# ]j3els1Bah UқSHgoּ+ '!\U. ӼlQ޳>zu)_NEdyS)rb7<b߻%$xw.ʸE:Ol6 r* *FPrTvP`G˭c4T2T>kftQ5M\!uaA6`G^S#9 2ۜ +MX OS0-cV._F4H ёv-V Š'm'-nKRRergn 9ynwq~UG?u)~p:8J ܽ]nƯAh$ J+.߭SmR+gu+@a * W Ї1,dl.'OS=҆Ղp>i6H6>:ctE}c3RG1]׍WG4-ٳ2P5-66tKUjcBr vu Y NciqؾЁ47uAP}e]{=;&0+fBpH/{CvMO։a)~$EC}?_/,Trǀ IPQ͋"AC"1|/bHXeG0c5DFh4K2a< @CDdB_C#0 1kI]/ @8/h21&)GyCRF׌!_ӿ:^9WmV <ďwZX^">(}(. e~T]n+uBRF=L8Ʉ%pF^u}R(Dv(^G^$S'y117O}!s2Ur"2jz*:h,oRnf~ wCZGK%yE9Kh@mI!2ǵ'ۥ h\Ϳy. :U߃aQ^-#fǥ~W Zo'Uyo(eM?'ث(t &z܇4rvݸ^~`1' Qh^5Bt/i4N0svM4Pyhϫ:;42ҭ|z-r8",א)!ݰ2H|k -ր)֗PJ5y UrP1b@;iXD7W/zarFgtQ{A]j>ح'2׌]{~͟Cd5b~hGZкp|Q$Ks0OV߾-%(SmΗ]&y_F*gn>ȬVa>CbY/(ΓnCt{2gjhϐY'{"q^;|6_S?ɭn @Wʼ;zO~ege*"~v/ND疧c%}cEʻkZQ-KۛwRWZI䶵;jG0 dt8}ugdcF"Rϳ,;_}ui:~HSlܭN uDTx)4 i'K?)Ŵ7ʴ]Y(H7ǯgҗ`x\:4O4ĉaL N^"tfbO̊I2֚5|Il(|Ku_/~`{]څ '$HNn~5v}5ŧ}Q?k_ _#pI:?ɹ{|hy t~z0c=sF ׾)LҎk0mS;V#2^r+Hmɫ{g_|jF;N#Gt1{$Ky|k+x@}ixÛȇ)&_~EL~<)JV#!:#ǎc2Lϝ<h9aE?:4&p~'-ɛbY4nWOItZF@7Mf5ɵs|jOЌ"6_?o(o)6Ys^k& _r6_@~#}} < p.BA>_ B0.5[(SvwH<<ͯ:%l7"l$hfT^Rp[o?O#Vמ~`@ğVį~5}|kP:+\2i衉>Zj^>YSM;(_5qbA$yQP1cU skJɿ1#JWuPuEHΟʲtAOP:PU X~ʲi~"GH(RyرZ>yo99WN7iV'~@nOGp~1Supa($}gv/O4jP`& GQ _Nq#A AC5X]ͩa2uTb]KSByhJt',*/;xhD;gs_|f \ᠳ,`lW~:#tWS1z1P'xqsD-! {2Gʋb 0q`2=G1O[nK7>7KG_]/v&_:FH\)"$K_CFH|hֶA"y<z~OJ-fe=.ܴȝS ITDͪƿ|4)kr~B~6/04pƟo2ʡ \knA'P,oukS![ފԋqw25VAI[ VsȧUO$Jw[L?D~/Cǚ!y413? 椾Zڷwe߯L~;$0u7R _K?ߙo-xКdyw' ~t4l F3N&olH-IZ+"_Io Zv Je *w[RM~ ?{ |}~%bʎQx'vNx=Vnj28Uk؞3z]4/0]dWY5;͟rF gq=+.~K/~ÔL,?GYq/l7rL}'E6sf~i:xXvѣ|WC_tE"u$8֎q5Ѷ&e:Q! j暸RP͵'>f kdk AK ;bW-% C;0N_8g刕% #'en]8d)\n.L3r!xPA |.k}-?uUY-z ;>zX5Egglm.;Dj/5-_EW}i vnC걞qRVOcq^S1rns^5~p^ZOgmW'_:i]CL(Qt֭/ ]y*" n"cZI>VD{YܹjȽڬ9x!` &`Ӹ4}tF}H@u^`'aaUBRwfkp*<4c<*=3Į?&竕v{13S~Ɉ(oA 6 #λy!Qg>[1/WpÝz&e.x"/akͭRKL;zߘW<m45;=\{/Ꟑ{uGwRA9? N^!c;SO}&"o~W/FiɃLJ KބGXRP|cnYxW$Rs v0\-gRQD`.7pNc@!o4ҋg 2cix4!"È(qf#`n._|DW8K{_pdYLoy߹Wtu —<= ,B=F&dl&Kfڬ6Ї aG cWA!ЍރhϥBS__{SpaKDL):9#\85:$ӄzyl@oa;70G8P<Ť"[=&2s(yadhXGKYb~)o9dp4F|P߳'E#; u`Ɍ\u/??BnϮl'Mʄs}ObiGV _)@#_$<㵗Uy t +iհz[9NRaHo((JGUe;_}He;"~bEi%21%kȹpW~uʿ_OdaѠ!Edg])]i仆1AKӁy*{hÖrϞj|C4pvk||Yt-Ai <g0< {Ƶ1tջזe/k_k#Z5yn~k2Lp M:kV7Pr ?!_w~z[wmPFgЎsH24[6],C5AWoTh{_.[qU݊w4лדu}36OZSi7]O 0i478.G5TN>}Oo]@ww>/{;ğsk-8F.d:"n!ޟ9dvn̗"ayVO J);'1L_7xON!FB g)EEOaѸy*~ML2A\V"D>58Bˉ|Xv>8}a=s]oNseQ\{*{^>)~*-qtFX ^pWm ` ^Vv0upt 񆥜eƳ-Oz~qkZإrWJɞ:vWI={ލK"ѫ, y"ov%gpZ=CF;e5 I0:\uZ:2j_B4ųƍ&/>WG_8Kh5/`4G7 |UZcx؂,t0\jKO 'ح" &pAo>> tGΠ:_iKUTΙZ >dd|ؑy'`χ q̡>tY?1Ͱ3X̻[~Hq/L^&PYt|,#H4kd"e?v*__?stؕ|HTyg2ݲ"ȡ Tht[Y4R=o *hh<W\ Q<@EW(^Gm~D2o7|vpvoP@CSȄޑiv`Vl4_ Zz}K>2ڶ c8hDc^!O@ӿI ش`Vʬ@c]՝<wsKϭ8"۽xPC&Te8g8i^?<>3h)o,?缐tSA[g-35 B`?D7kʿg#(9D}*]N|[m> yOT/oP@iMJg˓MQ- ^߸B!h89[87i2DT<TcאmI~OzY(% A1txxΏ~X$Xwt@ rS^:󿬁]44Kq2N>U !x1̜+.&OD___Nk]*a9ՐѥC[}tw"K_J?O{A@c3N`t\/yf7s)?U. X[& %hX@yO_U 00.ͮ&ˬ@د\R=Q)~EWx==e'X,S(EE_;=oժ?_|#!w^A)ǡE8B*T0:JV\, m[L4&~Zf<@bQUY ^6|چg:L [*Yvd`|$D3Hr]/0*?Y*{.xhyn ͼ꽦y?^u۞*~$WWhh*?&6 $at=&njV Gk%~˭^dmyB~'A #wKFpТ0;!HBU9\+x貦PQFϷJ!D>Q$?I71oZ)?@Dρ":LW?NGD o8ɄoV?˰Rdzd/>&? UCT!㚨5(NXȻ?T`5&Z|U`nmEf^bpPMs;MS -Yȟį1 /[] ]Uޮ@BXſ=sW:1#ddLWb*s ^KS 8h.ƌX-e);%|bvCoc o/j?USFˇߗM| 1]̍MӘ9 =~q+k) r;$z!oR&tD(]5w[ S94opd]z!`)H0;g{FJ>CWk%ߚ2:??=lE*;7/IT`;ڵ7[_/@p xx:Z>v[;d 6p/ΈIL'4[u.PH vkfXiC+M}^x5~|W}'zo >+X}ps*|& Z6mc?֜{=wCϘ?W&AJ?7\^p+Y~2Tt>A*l? 6}wm {8\oР oO{pi6WYWOT=3bMjX8]{\G[MEr/Ϛ?b]0 Tu;mDt9o?sS :Snl=xT PUA?AIP?4\yj.>]¡?Yp~wU/w[ksڟG%_S/dB nP R%hKg+'tWׁ'Й|IuL%F #sR+Nn OA6?+\cO&xW]EWy7N lT5k'=GE^/򰔌h"x z%o^Sn",oQG(|{7F(yUt FӢ"Zn*f?n2n?\ѱE[ABp)_BD.Iu ,9e0, \4F&$87o{?5YKQ]k{Oڟ? ]S7L]k۩xF(yGFEeMoZwO/@R`=kA4-jYK\Ɠ(OxrJTG\~2>҆'o"zA=IDm ӿ_!=k%gv/<?v`Z 5̯IENDB`kylin-video-3.1.3/src/resource/ico/0.75X-d.png0000644000175000017500000000277714212620632017243 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`ziIDATX kUUi+-5'eYX=LH *IYT&D%E`>^H?*z)NJdVZQRY9Ng9;3L ^k}^{uέI-#P*Z|GG@a0l(J-E~t? 9no :L]v bm:u~Ά$8RO({"w4'S_jW. px^Ba'`X{tʇ,MρЈϝ+ɧ8Ս؏9?=QgjƼD}~?Yp#4lHv_'b۫ga!tsb}OPԗ>S]}l&m(~Gп ףONf1ca^.Qs`L4CZp̙((ǂc+e+/*2RwE쿼4NLgѧj4kYjoXaژBߜgM&t(/: v 88P_IXl&Bu!. wŨ+;_:eXQr 镂1| SKDsDY^ [^nh{tnݱ`D4H`v[E}';c$'c9F\]"yxxOžybi(N{iy vD ;DK9Jm?lkisT|[; ]WYFd5x:b,^#bSV`xYD۩N5l2uAA9ko-cgN@'F`{Ӷ|߾|KڌW!ŢH1a9inyw#vbh@|q`Xđ AIO2&1sG,Ò / \pCt3IdDE-(iD7*7CL, Ty.6r:{pX'Fs H@ D딚%YC)vP0ɲF[}?hTŬuN`/A{{XK_| nHbIASmalBa_o,(]FŬ:H ?D"T.8%++87mL^iFµpe go< /o>F$̩) HFƼ9^!1/SY*$deW'`qy}pP\|Ig} .h%s ` 5W *BSUkY7$ 2(RlVAM&04ǀy~HfٟOPpSgBGQܩI 1 Li'4 SGA>=EJ>x |<`ke@\Χj QHLPIW6~bhfzsI-Vc{V(p|`=gW0?+x -*~8g/+8S}*2Wr 1@aMIZ\uw-ۺ$I~^;x u[<[Pˡb#-Ak&?WOi#B? ~syƿ-P0;3I'dܛLZ~q.˧I0|YhQ2 YVc "`M0 ym_ɻpǶiФ&D'@0v+,|?!&+4%8v0Rb)])4$bYBh$źBbM )%@ HZ$-Xw2- I`q 41ADb4FN6=kynCQ=Fsa!*sgN1e&_F}z?+[&F&#TxדnFz@LJ(9YI'O|jØkgn98&VYS'V#Lp;0 C̋CX̋Ac+{SgZ)g7릕 Z#IXu$U' Kەa2)IENDB`kylin-video-3.1.3/src/resource/ico/cha-w1.png0000644000175000017500000000135314212620632017346 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l UIDATh혽JAgFDbee >o]4o (P 8=vwdwf 0?P ^ Vq7` (5:@S N}4)KXծf L~e@ȱ}INw(}.$Jk<O9O׋p ]0\á1"L4 D\RpW0sD|Bg]V J7`DzIU",9 D\![-x'i&>ċd֠Dm':aM?ͬ6qRv{9דx-!x৷"@-^nN諫L8'N}WhҷxzMO40%0TIENDB`kylin-video-3.1.3/src/resource/ico/btnbgi.png0000644000175000017500000000026114212620632017530 0ustar fengfengPNG  IHDR sRGBDeXIfMM*iIDAT8c`!0!0!@THIENDB`kylin-video-3.1.3/src/resource/ico/icon-fullscreen-h.png0000644000175000017500000000062014212620632021577 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX M0k ǭ[%;p }1c?$޼h׵w\Kj>0ntGZ y6%U&NH.+ ;W8k<=UxppkG"B` ) .9A9tߊ\# O9X5x 9^ـPn| jC@*lmucݷO8rIENDB`kylin-video-3.1.3/src/resource/ico/cha-h.png0000644000175000017500000000104514212620632017244 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l IDATh혱J@k |l| [ C$~s8p,Y2dKIȆ[,bDс@t/w#YY}gtP&Hdžbӌx#YCEf0NU7X-Q5)0S Qk!f^2W)|icC7KxkWhwW}BkLߝWx=!8nN+л.;鋙[ɼ5 /M3D^LO&-C awb_xW!»Q 4D-&!jb*u}"Ub_;Ր+&gɘ^OC빢5zDEF]ǔ@t :j6D.IENDB`kylin-video-3.1.3/src/resource/ico/showmode-mini-d.png0000644000175000017500000000130614212620632021264 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zf0IDATX X1N@ /P #hh@g=l V^`(2B6aqA{3p !2F:@qKdV1bC'}tY_pkc_:L߅a"6wI+\wתHJrFn ="Z%& L픓UcHe'p[sMNYVt36 4:U ц #Nsk(0J;m`8׻& !t3n Z'TM=HA9E,13WVXr8)e #Xyծpp!3X5{f|'LKVݺ~C4K 7N ~4K %ȢwfKl[j@~B~63!w+|=~Ǐ頂| ap%xWa ,(nq ڕp`XztY9%f |nI-]@q@IENDB`kylin-video-3.1.3/src/resource/ico/play-d.png0000644000175000017500000000142414212620632017453 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,iv~IDATX Ř;hA(( P@B A%baB`!"KAlBA"$B A! jHB;l1?ngggnnn6* l.ڧ^J =?F68ؿt?vf;GpA%$p:~HDB;,fb(=c mm`5$.ۓZK"`:Ac#6x{H cY:7]KL֩#Me04Fk:lO$Nyr V5@QۅXrD/i -$^0Ne$֓~$.5> 8!$viHv|e | HB )-)>'As6OzE vNh #Bu~ h׍JGB=ƙs{4shmibGGs#:&bDg5S휢m'X~1~RS]Q~i761x{b `)ɷKH̾ w!Sw?M`\G/H{&_@as.c`Qn)0 z|1'B >t7DifGd70JhF |Lr8R^$Ү;_ct ȱ?|@bq n[SvPzar=^/{6P?$!h՘>BBsx{˜sچ~GB ~HPϲpIZS/AHDzۓ(0⾈t̨3lfo }Ctdqs}5:,uεA>(RLqН4h6,`/`s%k}Ч{n*$P%FtŖJ_ 0VIENDB`kylin-video-3.1.3/src/resource/ico/0.5X-d.png0000644000175000017500000000255214212620632017143 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX [NWǿQ VѐqKBhMor 2j;&8WPP ]g!V$CZe Zbs nl#C%uY`2:#3^j6-Ak;$I[aZ6m"lQN}1Jb͜^ /MUV: &l;I%h *u;4Y 'M]t}DVf4M X u$@x:s+h5Gg6%Tʝa3 tS.@7IjO3✀:GiA7 R(XgONgUTtSM-?@|8Z/2| $h hHF7&` tos#PE'\@ՏG*W~!+8-}XX8ҙtsԫqCsiQCb t1W"5wܐ}\?jG\N(:uߺ Z+|P̩l,6מy1f>Y_{*tn=W'K}}ԍ(:98 caL h [ m5L!..앒yE20vE㈗P)wMڷpXK1˶@2{&e)5IENDB`kylin-video-3.1.3/src/resource/ico/icon-fullscreen-d.png0000644000175000017500000000067614212620632021606 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b(IDATX 10qpSoGpq4a2 \@.@Rj6yx $ICw@IPeK)F6pe |`;ق ~,E=:X;Q= ƹq d@I՘Bc>+&V_1Ƚ>=t/RNa{t'm. 8 G&hK4lz*;uN]IL>$@сpC]﹨@pr xZ1r ]\݁/>]eB:IENDB`kylin-video-3.1.3/src/resource/ico/icon-delect-h.png0000644000175000017500000000052014212620632020674 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX UQ C;_;%¢4Kb({P @O <(34oy,h[qȧ4MXLRrkBnT>ͱiQgnp5ܻ. -\LF%0+j^5 Nxت$a 'uqIENDB`kylin-video-3.1.3/src/resource/ico/lastsong-d.png0000644000175000017500000000117414212620632020342 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX +EQR_d&]e`l$e eBns&bdtSRd/܁<2ߧt=gﳇw{j"7P*r";p<8[R+QF.A03_?V@qU덦*.yH@x3Wμ@b@R⃈,$ qi{NB`t*C-r6/90b#6i1"*.6 3RDM"A_CDO} +Oj~n/%SP!L\ˏΓDk"g<8:r2 {kSz.ـa|gC4|v.ȉ; l3aFn!'?RteIENDB`kylin-video-3.1.3/src/resource/ico/suspend1_d_3x.png0000644000175000017500000000075514212620632020752 0ustar fengfengPNG  IHDR<<:rsRGBDeXIfMM*i<<\WIDATh PD6<؆YX7oB H9L@Ly /7܀p2 $4izۿp slC-K M)0˲aW>͐RBZ, oIHc) y!-eCՅ za&jVׄUHr0Y_V!a¬fU|MX+ U5a&jVׄUHr0Y_V!a¬fU|MX+ U5a&jVŷJAKI i).'! $䅴Y U5p>^WwҷU?M 7 t0ZZz1IENDB`kylin-video-3.1.3/src/resource/ico/radio_notselected_d_3x.png0000644000175000017500000000233114212620632022667 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l CIDAThZKTAjFV@KRSBDCDA=CE&Q>HTB)Ez;ߴw{{Xs͜{ff@Mb:l_S|JK9(LS{BlI y->'Fλ.q,)2 L,\P+q &~q[^ {J! #WLҘ[-u"{OFHZ&IbԶU՗bbZǥgx>ZW?xU)> BTA!rjhz/< \W8|Q}4AQ9C/9cSm* fХ5DJI5sh,\#p4pԖOǩC||LwN4IENDB`kylin-video-3.1.3/src/resource/ico/1.25X-d.png0000644000175000017500000000260014212620632017220 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX ihUGsZ^VDRD֪RjD%*mcPPqC\`RCQ 5B1}̽=L;̜s̙&DҒ@:sabeh4z?/LOFغ@We8Og>)JL*Q)'IhJ bP~؂sctK3(MBA8BKS9 ^b̂z[.I >Xr s]_PYc:Sg@d$'wwQ>OWJv? +'Di:9+US7A8sQO%]_(xp߲|JEtR|A"|$::Wt]tߩ_Ae1eI7n1|=d7:3qzR.S0>4;WhL ])REb 씮NsjeVB%2KJlkOV<80DAX/zE>)sFPP 0n:wV *vX ӵӤ3V%܂N5E]%OaIk:t`7;Id;*Kh5#7-/~c?L}WCP"-+ĊRQG1e`9yc-CWIeӈDƛW0ލ9EPJ\ GO뾊P,1^{ʆ{i3@ _ 6u `@v]f0c9蔅..v+ѧqsR@et-Z{/QUL픮I"iQLq u83f`Lj76;ѱկX7Ui=bƿN#ԟPfOp5I)kj"q?aeKԫ]F̞#:yFeP㨚(~wyToʴdhU*lX,W- P.]ӗDs݉ߔ7Nc(1Br@TGRM!z .^ap!?z }A%jHC8i lMW`{>qKc(C2!HN旊mc3@: v^8iIENDB`kylin-video-3.1.3/src/resource/ico/logo2_3x.png0000644000175000017500000001763714212620632017736 0ustar fengfengPNG  IHDR``w8sRGBDeXIfMM*i``3_N IDATx] ]Uy9ޙ;L&$&$$I  ` W %KW ؊ҥKkiU , X@B MH yd&svoϜLIBW؏ RuUT"PE@*UT"PE@*_ި=_M:JMMg;ꗼũw~!$m苗ReyIJj?^Rd}w߈c}1 ' r_l(U <IP%>@%Px#hW6OQ K_X EL /?JE '9^(+T+@d }H* +E/rpF?uk6S{&[~/#oQ`CBnF`ʲe|3$3-0EfD"QIB)E;ÔݹrqLhr|>([`ӭZ7@5 6E>lHCiփ LeXk lC(/w߶u/̗?JEЋN?:Az-&nk6h~1n1xވ L7e7yf5 XfM?Xx) 45RՍ aUmHi8š՘u89`o5INڠ#f LL݉mޣm4-}cn sL>@0S(8<֜q<4~MQn%>uHqh!"F%>gT 8:7M&^fЛ16N`\ :ALμ$uQlAƳqZ}jexVMdT0K0IoG\b.:#ʀMIkSHH@,!Aq1-']66M k@3CpQw8?<7O4&a8mD,܀p*P84O;b ^8QRzIC@?=Ђ0!M7$r+d-KDb#d:#sc9Cx> E10޵ ?#fl*DvfSX)6DKw_ 6} ,@{PqmA6?Ġ1O3DƫE?7.1W0&3t՚zDj\ɂkM{mK5!% [=4@)tJ<ŒWVKӿk+%5){`jYLSϤ)3G, KGȂa1Jxi rF 'L:6.yWGi˕v2@X1 &?]i{ߥ2iAljzL(k-{ m!WsdMIWq0bLݯ-#Ĥ0`z_asW]Ɉ؂4͍tHS'ǑzͲ${,Jmd7_IO2+$aL]ysZ7)#X[SgēZnhj5=ƆAl(Kt{r:F[!b>BG _pL!1NsԦgjJzU S[!}߻F}~)K4{0Må9b1AjzT7٩>;/=^|9N[8;p67"%\ۋĄ\e3ۨ.ZW~Ȃ0A8Mf.mRSxKnѴK3$4rfM``@YR%(5= 7rvx-/ʫѣ)sc=t2Nnau޼k<Ac?^64X.fVzG )Hs*xD{a>i󇜑z*-fDx8B Z p~qtKJW{Wq|C9jrQea~.k8? 7[2e5 mɻ`^9O3DY<$ >%.#~:܆i\i@:n-7Xh˗4i=s#Jpd )4XkGˊ^")B&ȆL[͈i ]܄P WD~0Ôa ف͗* I'F4LA F?%Sy,^|ˏˍ~LN)cx0Mu ҍY]2M51 yCLxV^~0Gx i2Ȇ"1lEVnb&[S $A0nhfr8HŜ`C^]'۾

R y T{`U΀{LZ}6*|21CNͮ&_`䃚\ Vd-#K]5+o_,KN9NҭK4UDT,a#[1)xBX&P1 :_UF6|T hhBd~x Ly+!cfvٰPC7rdo-'KNŤ6L бR"õv4wċі* b-f )ڠe|&%qx*s3 ,g`NI Oi~b.xi=f`ʧ2R]{Jk|ȝ7_"n^cte&p!]9b2u197.oqu~$4EϹ{M+Z1ʅL;b%V)d5jȱ3^[1V>㢲Jge|ƥ?}4dSx1Io!f|1YX hJd`2zegؚ֙ I6b%C A)z &Xpe4Pc#D{\SC|sMW_(g,J [$jf']#a 髣+& `ǰ"X4JGX9B{C/fK{ qڮ, (?@]'-e;SiY1[V0v]#~>; ,(I{r|gbM9iDCHT۞47Vi)[Aʢ6FWgtWTeJsVWHYa2ujoC|@|'7:9-E*r3TuX [90/f2} r<U? "A#H?(ȍ/wB@;j6޿z +s%h 4$tj'@5A r2DsIZ1?%iHG[`pk~3QGx_݃ԥ$Ɲ @| cMPsq@r> [f:H ]W+|y԰&pVf>VwWȳ/mû] J% (&6<٬323<ًci0Sx|K֛8te[$Uu>W,cք`?(rv'uuMrHKH%MT6EgnA׷Gs&'=%1#oݪ(It81h8X=^&U{t 1S>uù}9\>>"l}駹!fAc \dMU&,AC6q^JY"1.u@oN^nKs^_bn 47XS L+DpQB9!.hY"GN)ʢT?9MIHG2LIi+26n܆`^2+H&pɫj/cehrNb"l!98.0Hj\#J?rl5bBZ6dɸ> #( {dQ3( 9|Qx+)>܎z?r,=Oq`s |3#sl >can?{J ҹ01sRvˌ憜1oF[S~PkgtJ;[r;%m#߁δ+J^?H;PW('C_e!YaH yڕz~kBIp~ xt P2Svw!(0FeO-%'ޏ?Moԉ:욳>`q݃J %\K9z>m(Kpɉ}8g;Is~6geLqt:8g;\ϩc\ C2@brَ A{*o [ xׁLc]|α]=2 )ßY܆IugOc >󹑦GW`Gz-'L:-Ӹ͌0O5-:pM`Q7X:h'@,}WF tg%>ҹE*gAR렓!983i tO[2ek[XFe&6 #) . >EJ].mGr| QMWGH$4jC^C0XGi泎i|tۚVFh{l JhAd;n_ 5.IcҶ#w`4gE }2id2%>üS2W5|Fb& 8p'o#bv}ʜ/w/b@N+O9h|y ȲK Mk;Gc4Pl6/F{!Jq9lfMGK -W5gkx!6W7|tl2d=xP{R }}dd|eRwitNދu`VbXFid2kNrq$c}s\`G'ǐ<.9qw*ȣ2ć (lўN4sٱ x[M; G (A `3Ls##`fY\YmQ6U^3(<#[=-(:MaxfiZ}7`+& pӴJ9A>>aS:+•-} |yM (~Cc@c\.0K) vn7nʗ jbU"PE@*UT"PE@*UT86/PݓIENDB`kylin-video-3.1.3/src/resource/ico/lastsong_h_3x.png0000644000175000017500000000153714212620632021045 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l IDATh홱kAb66J <$` + ZX"柰QR%FDP,lBRX؊1"(Gnͼ]n}}ߛۻ66t:-vZ?+ZM>`όDHa[g #:92aQ NHBp| 7ȩjIȖ~lFT4x *p# 65G}H5XĴbq}4x3uLcP|jpI `7Ư~c']4^\Zx0~@,ok+EmY $XFc LE3B?`´ϙ}02楐l`$x30%U,[g1+0k$AYy)):E&I;pŪ8RWv fxA<\Y1u yW8؋~UDRb"EAU0E|p&-6Zۯ{nQ_`x[-mbWXǸg "gIENDB`kylin-video-3.1.3/src/resource/ico/1.5X-d.png0000644000175000017500000000221514212620632017140 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX [HTQnt! !؅H!" ^*A I!FQTi R=DKOv.Dy)0+ʚ<{39M͂o>kZkD+\pxILmeĿ7Ǚe_ =DɁc>uJ<;H곥CCa U`\f|oO ` r(U<@}Hn*oL%³KQ\Lw9A7f;fsHb5h2.;J n%tº.$aSH%} hbnh9j#q4@'5P=g굹 @`d gi~q:ݏN'4sK DNcota}=19hK|!~HԞk/Wo5EW*l%%0ﭒ_w2d0i$OBpO#aɿ("=L"M~7u"TRz 1V{RXgy97C-y8^VC JZB6,q 5M$ءᙟ_ײKO~N}\"l~#Va㫸%O4xUVr@3+$a}}sKI^>Jx `# $3iy@ND/a{I:*\|gy  `--l0JFW;OfWjAZ1cO# C-Pg<ףfHAẜn YA ߇^O;V>ʱW]+( @G7 Sy7Qp@B:@`ѶB>_mEYlbſVjn׮wMyx d3:|VZ1_+!* D+@oeoID.&IENDB`kylin-video-3.1.3/src/resource/ico/mini_d_3x.png0000644000175000017500000000232114212620632020133 0ustar fengfengPNG  IHDR<<:rsRGBDeXIfMM*i<<\;IDATh;hAs}'b1&`E.B-+B$(vւ4 D-6j.3;9{qϙ;3;ABBBBJ3U_Ռ}T*s[h0${} 4'10D)'^,d" (Y{l3Yp/+@j4m׳ dT.`fV$V_Wnߵ`нX)>)Q1 h8y|R`#8^|*&[X2ASd 6d[m-qJ4H;5zQftICCo5 og"YwM$LuP ?,8gI-zhv^™Q \·VD:B˜oymôզp0 &$.~1I8^)0Tvo$Uw/-f%shZB<|>אNo! `Z~J5{>#" rGU/qB0h.*omjfVðz7Nr__ͩe'ioVNP(a9da0o9@3g8'ž]BpȰ@f&o/pN5;oIY>~Pϑ$\T#sAY:1krz$:W3XT<2G 5d fזm诳 ~}uȭYm${S;3JX@'XEFQjp u͈ph&i#k}zh?> t..ڡM,a< LNM=m0DufvhT>^VE]@@@@ OzIENDB`kylin-video-3.1.3/src/resource/ico/list-add-symbolic-h.png0000644000175000017500000000040414212620632022027 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bnIDATX K DE}墶.ı.^@"[LJ pḪ>CV_X/.~,| ^N\mN pE5IWgc_|ϗIENDB`kylin-video-3.1.3/src/resource/ico/icon-grid-symbolic-h.png0000644000175000017500000000043314212620632022203 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX UA esH^z\cV)+Q1vyuF6E6/b남fq+@)^S; 8"Y]@ .\mG$R0{IENDB`kylin-video-3.1.3/src/resource/ico/nextsong_d_3x.png0000644000175000017500000000156214212620632021052 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l IDAThjAg\B܃7* . @0x^ H$/`pG|qx!.S[cOUsWtZ}므 N)|~F7/08-6C{ߺJS@&+*ZY7H2gpGw}%c7ISfV\W\".!bT\Rub-`}Mp٥#<"֔/cv/4 [&"od:@|22Whu;ݶY!4m@[2)":%~Ep\_GpIENDB`kylin-video-3.1.3/src/resource/ico/suspend-mini-d.png0000644000175000017500000000060614212620632021122 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX A 0E x)k9pQЁ_(@ϟ-3M^&`M ,){o5)ך㶵.#p(ZW{-ȵǤ%&i}]͕ЁF:y@l{ &XXh5A"&(B "A4AZM W6\!XbEڈgQfx(QMkޣ IENDB`kylin-video-3.1.3/src/resource/ico/audio-volume-medium-symbolic-d.png0000644000175000017500000000221114212620632024204 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX ͗KHQ}?**0B(kբ$  ZDHd [6XQ!IJ+IK3;pf6u?ss$%cIp|GiAk(_c`ŴG&?^/cσTSH@3g% E0``J%opFN@ZJgdE`.wA$~mFm~C82 /1\Ny8q Pq!Zw+8?PN4 i J, v Koo,tހa vShhn br t$8 4GAt\Ftg>]3Z0,#:VFB_GC VE_344r6j}%Z̈́DhD?z)GT_` 5 FG+ D؅c}%oث}N@o){fIwS~IFABĝ>Lz%~`uLV>un_DШ^z"`16ƶCJ@sq̍.s:gi]~ 艗 jh4Jb/[ò^~̀QkʑKo+At5w>>)Si 4^_+F+Cx* #Mʎh5#_s#9'DK%1, $s HTD:נG<~?@ )$#?G 仺Fv Cɂthn}`7ЉMUm*Ѧ܆/K)MV@w`ȇN$ BhCe bhfv#bkkmJH@%U+a!(ˠɤv ծi@i@ޕz%gIhTV_)yҰI99he?;`[< j?./7HtmME)}Y߹@lOcBF fc'o]6WMR6ש~8h,YE&ak98j(m:MR sXBD^T7R_9zu7kw5WB0{1 o( ="-"1dnvLTiHpA\ 3ڦ_e61}xΤ @8AIJ)_>qd&ݴqI"`VV^*؅]G=<ӓ5M"FGKnN`s"jAu1%Q}.n;mփLz5'o󤆼Np_^ӠJit ^fGн4^ .^F`pO; L꒒@2$#Weo{tcIENDB`kylin-video-3.1.3/src/resource/ico/2X-d.png0000644000175000017500000000251514212620632017001 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX mhUǟ/i tbj8X8/a!j+pS|Adt"&J8Lp bd(+umTXӭR~s~v<>s:9sbiIg T=\ 7222SsP72A{ xaQofk!ĥFz\[mg}h~8.io!fK?Jhþ}[Fw[\&/M%,2s8n0&qLLi1Ӡ$O*vx$Tp&z -dy=ǡ΂8 qڣfm{o{=0Y0%7讠# \a_vwv6C8g_`%&BS@ߌ^O&ߌR,%uПA{R*o¯*( /^1szC{i=NWPƘIbO]NuչI4@!gA v=kli o3ƭD|[6E+QLBgF+]P5&M>wň15_@q `tY&TKE4IڭOVZseZEW ` ( ZUWs!'3Q-+LIBw4D[d]19E?i<>%Ik]gNS$+zZϰ[tA61uR@wa ЭaM߁1qMI"%̗0KԽPE2%3Lyt'#VM62$ `@ ke@O4k2n\e,-􃩔ޜ=&:B]w%(+ JG? & IFt:COXmF[eFwm!p$bdB9tfJ^!V"҇Ik`Xh(jL)RC"hkR:! yw?-^uW&ZDO>\zn254tL)u7m%E[῞n(ބQ>&d|@>'L@: 2д6IENDB`kylin-video-3.1.3/src/resource/ico/media-playlist-repeat-one-h.png0000644000175000017500000000156114212620632023467 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX ;hA.wQ1J$*>j4&j0 ׵Vb-Z`L/ _DM|w~f河;{w\?fnvfg.W Qi\AjX `ƏD"_- l5w5<"@+$kU . ;Pk!@˦r rlp 'y]:q༫Gbԯ*mB܎ |u^VY;k/CJE&̌5#Wނhv^m@ZYGlԵxiӲlvJO+m~,d{@K J80 ԙ@N`Kv+36a0}&a=5?1 2IENDB`kylin-video-3.1.3/src/resource/ico/radio_notselected_h_3x.png0000644000175000017500000000301614212620632022674 0ustar fengfengPNG  IHDR00WsRGBDeXIfMM*i007l xIDATh՚=lE] N R$@P@E (B[EР"4.)P@ $p@DPQsۻr[oq3o~oi/=Cs(?=]_@鸫랞8yr+F7ZL+x xֶjt5~I6cN șMjܲ&  ^2O<&mhRǚGA9蒫p 8~硏$669_RuK;ٍ2M7k}}P`j& 8t9ՐzW`F1:~\si]utE['.0sPĖnlKrޕ78##C?J[:0:9% U1Mck;I]6, f%}#}ʙ.FudH&O?䏘}np/sbS6vJHkhft/S0/?qNjp*q@%1&n{bp翽.=11{ۚ_ޜTc;Uo5<0&F膌`cJy`%k6q(cl0HjƕH˫stJ3uˎxJB LGL ^rGkٺ 6U&f:N,d} f*LIII.B$He6tJiyuhzLMIcvX`>o'01|6aJ#hU;`#3] 4y$5d *_,TL1NU`%eqF;e哚La _v%dX>ix#A GR+v<ĘB롺g`!b)'5Sȸ *fVHhZ(* YBIBI`w*qJl9JJ ؄ĝG 3q߇a }^>ù"*eBRe ,l6dќW Dh={bKB )_mDiA#oXz*LȪXY`P!Z^Xhj"PΈ/#/*1\ `хMc(`[;#r> %*1Xd1*y=⭧@;# Pky'0V\ i8JegypbjL` 1s/vil5Qn=pǎY]b2}gNmVs;#[mt<6=b m'ڷ5;G#(C%m+thIENDB`kylin-video-3.1.3/src/resource/ico/icon-restore-h.png0000644000175000017500000000056214212620632021125 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX a ug؉RjemB i tf#BeZ.` nmKC iC# K|Pii Y eo׌dlD=2D Uo C|kVqĒ,0s3%2|)C;(#rX@ytWaT%yR7IENDB`kylin-video-3.1.3/src/resource/resource.qrc0000644000175000017500000000662414212620632017352 0ustar fengfeng ico/menubar/aaaa_a_3x.png ico/menubar/aaaa_b_3x.png ico/menubar/aaaa_c_3x.png ico/menubar/aaaa_d_3x.png ico/menubar/caidan_a_3x.png ico/menubar/caidan_b_3x.png ico/menubar/caidan_c_3x.png ico/menubar/caidan_d_3x.png ico/menubar/说明.png ico/menubar/guanbi_a_3x.png ico/menubar/guanbi_b_3x.png ico/menubar/guanbi_c_3x.png ico/menubar/guanbi_d_3x.png ico/menubar/mini_a_3x.png ico/menubar/mini_b_3x.png ico/menubar/mini_c_3x.png ico/menubar/mini_d_3x.png ico/menubar/zuidah_a_3x.png ico/menubar/zuidah_b_3x.png ico/menubar/zuidah_c_3x.png ico/menubar/zuidah_d_3x.png ico/menubar/zuixh_a_3x.png ico/menubar/zuixh_b_3x.png ico/menubar/zuixh_c_3x.png ico/menubar/zuixh_d_3x.png ico/cha_d_3x.png ico/cha_h_3x.png ico/cha_w_3x.png ico/checkbox_notselected_d_3x.png ico/checkbox_notselected_h_3x.png ico/fengmian_3x.png ico/icon_add_d_3x.png ico/icon_add_h_3x.png ico/icon_cbl1_d_3x.png ico/icon_cbl1_h_3x.png ico/icon_cbl2_d_3x.png ico/icon_cbl2_h_3x.png ico/icon_delect_d_3x.png ico/icon_delect_h_3x.png ico/icon_duig_3x.png ico/icon_list1_d_3x.png ico/icon_list1_h_3x.png ico/icon_listloop_d_3x.png ico/icon_listloop_h_3x.png ico/icon_oneloop_d_3x.png ico/icon_oneloop_h_3x.png ico/icon_random_d_3x.png ico/icon_random_h_3x.png ico/icon_screen_d_3x.png ico/icon_screen_h_3x.png ico/icon_screen1_d_3x.png ico/icon_sequence_d_3x.png ico/icon_sequence_h_3x.png ico/icon_tool_d_3x.png ico/icon_tool_h_3x.png ico/icon_volume_d_3x.png ico/icon_volume_h_3x.png ico/icon_warning_3x.png ico/Illustration2_3x.png ico/lastsong_d_3x.png ico/lastsong_h_3x.png ico/logo1_3x.png ico/logo2_3x.png ico/logo3_3x.png ico/mini_d_3x.png ico/nextsong_d_3x.png ico/nextsong_h_3x.png ico/play_d_3x.png ico/play_h_3x.png ico/play1_h_3x.png ico/radio_notselected_d_3x.png ico/radio_notselected_h_3x.png ico/suspend_d_3x.png ico/suspend_h_3x.png ico/suspend1_d_3x.png kylin-video-3.1.3/src/resource/qss/0000755000175000017500000000000014212620632015612 5ustar fengfengkylin-video-3.1.3/src/resource/qss/style.qss0000644000175000017500000000114114212620632017477 0ustar fengfeng// QWidget{background-color: rgb(1, 1, 1);} QSlider#TimeSlider::add-page:Horizontal { background-color: rgb(87, 97, 106); height:4px; } QSlider#TimeSlider::sub-page:Horizontal { border:none; border-radius:2px; background-color:qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(41,134,255,255), stop:1 rgba(62,255,254,255)); height:4px; } QSlider#TimeSlider::groove:Horizontal { background:transparent; height:4px; } QSlider#TimeSlider::handle:Horizontal { height: 30px; width:8px; border-image: url(:/images/ic_music_thumb.png); margin: -8 0px; } kylin-video-3.1.3/src/resource/qss/main_style.qss0000644000175000017500000000005114212620632020502 0ustar fengfengQWidget{background-color: rgb(1, 1, 1);} kylin-video-3.1.3/src/resource/res.qrc0000644000175000017500000002026714214075177016325 0ustar fengfeng ico/menubar/aaaa_a_3x.png ico/menubar/aaaa_b_3x.png ico/menubar/aaaa_c_3x.png ico/menubar/aaaa_d_3x.png ico/menubar/caidan_a_3x.png ico/menubar/caidan_b_3x.png ico/menubar/caidan_c_3x.png ico/menubar/caidan_d_3x.png ico/menubar/guanbi_a_3x.png ico/menubar/guanbi_b_3x.png ico/menubar/guanbi_c_3x.png ico/menubar/guanbi_d_3x.png ico/menubar/mini_a_3x.png ico/menubar/mini_b_3x.png ico/menubar/mini_c_3x.png ico/menubar/mini_d_3x.png ico/menubar/zuidah_a_3x.png ico/menubar/zuidah_b_3x.png ico/menubar/zuidah_c_3x.png ico/menubar/zuidah_d_3x.png ico/menubar/zuixh_a_3x.png ico/menubar/zuixh_b_3x.png ico/menubar/zuixh_c_3x.png ico/menubar/zuixh_d_3x.png ico/application-exit-symbolic@2x.png ico/audio-volume-high-symbolic-h.png ico/audio-volume-medium-symbolic-h.png ico/audio-volume-muted-symbolic-h.png ico/bg.png ico/cha-d.png ico/cha-h.png ico/cha-w.png ico/no-preview.png ico/icon-delect-d.png ico/icon-delect-h.png ico/icon-fullscreen-d.png ico/icon-fullscreen-h.png ico/icon-grid-symbolic-b.png ico/icon-grid-symbolic-h.png ico/icon-list-symbolic-b.png ico/icon-list-symbolic-h.png ico/icon-screenshot-symbolic-d.png ico/icon-screenshot-symbolic-h.png ico/icon-warning.png ico/icon-cbl1-d.png ico/icon-cbl1-h.png ico/icon-cbl2-d.png ico/icon-cbl2-h.png ico/Illustration2@2x.png ico/lastsong-d.png ico/lastsong-h.png ico/lastsong_d_3x.png ico/lastsong_h_3x.png ico/list-add-symbolic-b.png ico/list-add-symbolic-h.png ico/logo1_3x.png ico/logo2_3x.png ico/logo3_3x.png ico/media-playlist-repeat-list-b.png ico/media-playlist-repeat-list-h.png ico/media-playlist-repeat-loop-b.png ico/media-playlist-repeat-loop-h.png ico/media-playlist-repeat-one-b.png ico/media-playlist-repeat-one-h.png ico/media-playlist-repeat-radom-b.png ico/media-playlist-repeat-radom-h.png ico/mini_d_3x.png ico/nextsong-d.png ico/nextsong-h.png ico/nextsong_d_3x.png ico/nextsong_h_3x.png ico/play-d.png ico/play-h.png ico/play1_h@2x.png ico/play1_h_3x.png ico/play_d_3x.png ico/play_h_3x.png ico/radio_notselected_d_3x.png ico/radio_notselected_h_3x.png ico/suspend-d.png ico/suspend-h.png ico/suspend1_d_3x.png ico/suspend_d_3x.png ico/suspend_h_3x.png ico_light/audio-volume-high-symbolic-d.png ico_light/audio-volume-high-symbolic-h.png ico_light/audio-volume-medium-symbolic-d.png ico_light/audio-volume-medium-symbolic-h.png ico_light/audio-volume-muted-symbolic-d.png ico_light/audio-volume-muted-symbolic-h.png ico_light/icon-cbl1-d.png ico_light/icon-cbl1-h.png ico_light/icon-cbl2-d.png ico_light/icon-cbl2-h.png ico_light/icon-delect-d.png ico_light/icon-delect-h.png ico_light/icon-fullscreen-d.png ico_light/icon-fullscreen-h.png ico_light/icon-grid-symbolic-b.png ico_light/icon-grid-symbolic-h.png ico_light/icon-list-symbolic-b.png ico_light/icon-list-symbolic-h.png ico_light/icon-screenshot-symbolic-d.png ico_light/icon-screenshot-symbolic-h.png ico_light/lastsong-d.png ico_light/lastsong-h.png ico_light/list-add-symbolic-b.png ico_light/list-add-symbolic-h.png ico_light/media-playlist-repeat-list-b.png ico_light/media-playlist-repeat-list-h.png ico_light/media-playlist-repeat-loop-b.png ico_light/media-playlist-repeat-loop-h.png ico_light/media-playlist-repeat-one-b.png ico_light/media-playlist-repeat-one-h.png ico_light/media-playlist-repeat-radom-b.png ico_light/media-playlist-repeat-radom-h.png ico_light/nextsong-d.png ico_light/nextsong-h.png ico_light/pause-d.png ico_light/play-d.png ico_light/play-h.png ico_light/suspend-d.png ico_light/suspend-h.png ico_light/cha-h.png ico_light/cha-w.png ico/audio-volume-high-symbolic-d.png ico/audio-volume-medium-symbolic-d.png ico/audio-volume-muted-symbolic-d.png ico_light/0.5X-d.png ico_light/0.5X-h.png ico_light/0.75X-d.png ico_light/0.75X-h.png ico_light/1X-d.png ico_light/1X-h.png ico_light/1.5X-d.png ico_light/1.5X-h.png ico_light/1.25X-d.png ico_light/1.25X-h.png ico_light/2X-d.png ico_light/2X-h.png ico/0.5X-d.png ico/0.5X-h.png ico/0.75X-d.png ico/0.75X-h.png ico/1X-d.png ico/1X-h.png ico/1.5X-d.png ico/1.5X-h.png ico/1.25X-d.png ico/1.25X-h.png ico/2X-d.png ico/2X-h.png ico_light/icon-restore-d.png ico_light/icon-restore-h.png ico/icon-restore-d.png ico/icon-restore-h.png ico_light/close-mini-d.png ico_light/close-mini-h.png ico_light/suspend-mini-d.png ico_light/suspend-mini-h.png ico_light/showmode-mini-d.png ico_light/showmode-mini-h.png ico/close-mini-d.png ico/close-mini-h.png ico/suspend-mini-h.png ico/suspend-mini-d.png ico/showmode-mini-h.png ico/showmode-mini-d.png ico_light/play-mini-d.png ico_light/play-mini-h.png ico/play-mini-d.png ico/play-mini-h.png qss/style.qss ico/btnbgi.png ico/list-home.png ico/music-background.png kylin-video-3.1.3/src/resource/ico_light/0000755000175000017500000000000014212620632016745 5ustar fengfengkylin-video-3.1.3/src/resource/ico_light/lastsong-h.png0000644000175000017500000000144414212620632021535 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX MhAMFA&DBȥV* /D\E//UR9xkh=l6Z6FCI›vfv  H58]Vtz[Wcp##''^Gs⌍vđ$Ǔ$1vm!fuWTppqz"&isW:ķNc m2}jNYM"\1F *["W70l67?{ݧaIxˀS~݁EA3y^L&n4)?pRaOT*|&T$)oaǺ\}Z͜/u,M c"IENDB`kylin-video-3.1.3/src/resource/ico_light/audio-volume-high-symbolic-h.png0000644000175000017500000000301614212620632025042 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bxIDATX W[lTE][4bY jLc4% 4j#b4(1 /bÃ/M 1HRxKXi^ZnKngn|I,c3կ/ZL)Rc6lO*JW.bk%4++&ZEu6b{x bKyQ} k rmLS%YWLa0_i?<`EY1ejBd2?iF5X)fdқ80baQun~_v-r#< ~Y㰵GhB7 B{8\5ZQ:k;vIt:0gۨ_=׍w===`v'WLʍlzDmfts]]-]_ DI/pxVRpR!Hya#rp D@g7LdvCoARp?rQTQ>G4\.A ,ޟLFR  %y%Ϡ.44o`XmUPRn FJHs61Ri>w a/Bs`Yx觲{s֊cL[й3`o -_&R+6& p^>Ik-#|VxQ{$0j/m%|5`,9 Ѿ>gÕ[( 4ʮ2d6jyf7g-\yѪn&ڳ~SaaYPf]ڍhԂ/---u3ԸvlUiɿ k3脍y$[[\6.O4SޜdЙht+jyx"(zy cb`J ꏋ`0<&5>1D=>[-KI6h4xm3?zɬU Ay|R^@( ފbӹrP<m܂/3-.cie7#BWWI^>yz óYϢЗ8O Ɵ(iMVFgRu[[}ijHKłu<^spByޜK)'~KOI9 #7Gind$ ( wzRG|-E4U?+e AYb+ރrCZzMC͞9ulG:,MʑoͫdU4x0(4$+KkP~U8D~|3 8HmEM\X| %y`E? o+.(IENDB`kylin-video-3.1.3/src/resource/ico_light/0.75X-h.png0000644000175000017500000000405714212620632020427 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX X{lEٽGAV"ݽ^[b(X1$ @O$51ƨ$>Q0DT hb,`-mw-E^-vg^Wn ?3=go?=h*5MLR7 ֥séҢv$I>aƎ;4 `9y2\Yy2s૩ QJXP6yҤIZm6A!4U}T@;ۚ5(FOSeܳ'-uu>08;HMFU E8 Mw&LHkm=2.f&:V*6GZpʙѠ'yapDyHѴ "+T猯ψFL}5ߓ[~)WѸjࡄPռRAU|GJJJ&AI_ĭp ɴ/VUkAqN~U^7mP}fʄzo}< eODͷ9ƍsNePMM<'W!+**%/dfzW*UE'NzΞMa<ÝE7b0UWWZD,SG&L;R֌{$#8mI"瀫 e)wPƏBgGK˃õoBG'*}o3fO q^'E…p![bcƌI4 RU[4qz, uuDY77xzF! ?'qx kp2Xp? eKDb qC^z{(}[U#뿶wtvFٛ#waU<].4Al:rjUSvbҚіI@ZJB.> VS1<R` 1Nl_t)ZTVnE_qvoozF;A}s:6"4;qs0 D2o0NhIY1`&%Wnfo?[nl^ Zʞy⢺%֔x Pfs\3(!z-|HNzMQ$2KJ pSm LDF{볋9 v5) 11kQ=zOFa8ߒqL0X{SEZOL`Uix-e$--87C/)DEr9#1]>.+++C_qX˺_mג'l=p)$nH ܧb/c?|FLu2XaeT'ˬx9#p==ݳ΍/%k$~JT8;''N ;!$hAG?[o P8\7e)O&n3xɉ0rhj}rzVZDM+g!`txv0<2}N8;JM[`h5(  5#&0̄ddNO;EmCt̂Xv֐!7<-\k.ZgwoGaE,^  -?ygDu%B%nڡ{&t ͝ ϛFN#Ck@O{=tx!$>\:t$3u(k/dGn%-VoLp!Y ~xfe ?toǁB My  ZìQ6(#?-J,9\}Ǡqk26J黖~~{p?6tIENDB`kylin-video-3.1.3/src/resource/ico_light/suspend-mini-h.png0000644000175000017500000000063314212620632022315 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX A 0E*)ŵg3 vEY}W<wV[_=lIENDB`kylin-video-3.1.3/src/resource/ico_light/suspend-d.png0000644000175000017500000000064614212620632021363 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivIDATX =0 N 8 l\p&-*23j*ec:0RUy5PQ 4ր rBYlqipvK\&ޥuDRݯ$g<5%ny:J)&s<ю,4gfruhYB@! B@! FGfp<Ѵ ᙣ\MHgv$ v5>[ro+9$W~VfR, wIENDB`kylin-video-3.1.3/src/resource/ico_light/audio-volume-medium-symbolic-h.png0000644000175000017500000000275614212620632025415 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bXIDATX kh[UsonmuI&ݣ7v.d_Be*)8Eԁ0)2ᯭ_O&q #mRiז]IKr]z {'Nj֫_ pl,n<@nt-zV i:|cD3+Vk7 cc~PU=zh='d*MmC(V]2yGP`vww;l熃p(ע膉ǽkBgR2QTXlR"2R~(X}x|:<ވ /v:c&ui)* aTdiJix| (UCEqF+xliG8`6DJf@qb+o-1E!4 {7fJjg| < H0E@["f<2# p Ga̫n!,wmeϽ^;)p \~|kjq*.,/rZ0 =H|&WRW]/a፼r,eusp8+Rd7|C= HOR [ZKF͋9`"qd} /ŋ[ݨ]6uen/&1$}:cz=N<77 7cYSr (D1IENDB`kylin-video-3.1.3/src/resource/ico_light/audio-volume-muted-symbolic-h.png0000644000175000017500000000164014212620632025242 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b IDATX VMhA~3IjK!$-b"B R҃gބxzC"x4!qӃT)I[&<ߛd`vٺ"8|yoa[##6J1:8SK$&׉nd2yXT)"F>w J50>>ދ-! Ki`vvVKp@ ).%{xx,1sAq FGGJ$  vmP xŷ4(m۹k,wpz\/Ӂ4X@}CLrN&+U|&6 c%QA8銃)P\J0U1 o!>F<ʩSdeĎ8a[3xvK3s#mMclD7q ŀbũ-riT[953Ktz[ՀKd@j `h5SNu%6'bй]^nQ֑ 7Ƅn&d4jޢ4 x\Yq䟕H̸$f~wk6**엞q21OT9ԭ<%';=~:؄iYƒuƃtۇOޠ7jO

O)Ϲ =x'p'IENDB`kylin-video-3.1.3/src/resource/ico_light/suspend-h.png0000644000175000017500000000071614212620632021365 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,iv8IDATX 혱@wV[xZXI77|C|[,"6VH2$f Nt&]a8&xolQj<|kd?_b4z~ZGrOu|K-FrWIH}-a[. Ϥ6NBR З8'pD{%PJ@ (%PJ@ (%@ɃH4GK@乤|- #QCҚԷVо3`ghd祩>)M; :71*gI|oc,IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-screenshot-symbolic-h.png0000644000175000017500000000100314212620632024614 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bmIDATX c`B@AAy+PF4 !{RC<%`020n?5,5[0A) 9##Fov"WTg1L0JhMMM1026ŁPH0Sb!7o|Q@9W"@rtu|Q@NIɾd 0:L-&P$5q^~92Il"tbZG0Ą8E Id1 bT*((S;$ M@w0#ևJ^A ܈yy7H~A*\X)#K PHBʍ:`C`8Org\B \IENDB`kylin-video-3.1.3/src/resource/ico_light/1.25X-h.png0000644000175000017500000000361314212620632020420 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX WylTEy-ZzBղo^TjB("Q xs5jT@SĄƃ?eKc# 1 AM 7jZ (-nw -}Mwz<0h,˕jUQX|jIpxYGQ&3~Tϗf/fks9X\\<)C%%%>rH@$VTTmnH긛k266 %Yɷw.[ڟyw ={nf%Y.$T [Z;6'J@x DzU RNvOmsy(:ҭ޴v e'7+*frΧ넾|!? \LK].11w8'p@ ^04 R?= ^qr3#JSuF~|bZ[aS)h3u䄤(Tyu}i1ґۍp .qIŢ}1(ix dzEF|Nd t x!vOS,kdGyyyL{衺N*s LTy5N@M!w# <(N]Q]]RJg-πcG"s3FQyT>ep~yqBƇ\L~&jZpdY8a$< =QEEE 7c$#j⚚`XFa8H{?Puݏn"N ϓpP};ŢPUs +lyͮ\a4WAV-z'j]1M6Y>CjCg@zZJTmt'd4xϚS)(0E@coBbM~aEyj)c`naqNGҌPZC>dqf,郚`6]8ki|ρAQT Ro59kJڀ=C(Oߺ~B1 >'Li#0E0Nvذ xjBT `2:ŨEi4'vv`ρx@uk_veV<5ELp}qIENDB`kylin-video-3.1.3/src/resource/ico_light/1.5X-h.png0000644000175000017500000000301014212620632020325 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zrIDATX Xkh\Es鈴K^4VݻnLBHl )6mRk Z`kAmX⫥Zg#XP!hB3c y͆eM^HqΙy2VJ?#@sUs^NiiiN$x#3g|§(J… B+W\$:yd)5X3Htȑ#77:>Cg@CO'Fev>_;<|M&̓k׮5ιr' *b]{O!Oyp+fiwva5B;LFoa3K]\<:Zc4}`ilPMe$nU@ 0j=]5w.^˝7 ؿJ!p8JM? Z]h+nňv2FB g\' )e nSSSƒAz$88ہ(/[^,o.\@sa\;5<]C3 &V؁5Ue睶cpOLb%]2Jft/ל﷍ R5Hk4]ߢdr7*=6[˒k:o3bXڽ\"Fںn1r(9,9`d bȯ Qe'0ď ~&!^BP]$xNb5]u ^"H4쵬|;">&D[d.YWtC& ?(24.qt|FYnJ̴&`|?f%#)fr>7BRq/2ZA3ō"XⰬ?>>$0r '<̢ht:,W惞;*9U#125N'S=2^o+ࡈyt]]ݐOon{RaFTBy?]nqҟ7q7IL>y |25ra~yTbw8 sB4Ϸ"+礽 ьvxzef1j6+M=Mk+.+=>6̻#+Me@j|< (?\}&5.b%!M3zQjka.'XVK(䌯xSFEy y}wvaGpe~?Y[Y;DaABEBAp+]u _bW;jU^DڟH+`һ~0^zXDvj.]qxo4}r7g (0L 5]Y#],fVB@ ].iIENDB`kylin-video-3.1.3/src/resource/ico_light/icon-cbl2-d.png0000644000175000017500000000264614212620632021454 0ustar fengfengPNG  IHDR mn,sRGBDeXIfMM*i `aIDATxMlEVi[4 ^J($!ir-V ΈCOIcTZU\8CPrin4kΎwfw{FvwvϼwIm_#b1"mk sa@@T:{o99813=UNG&eOP@2;3Kl O5;saKKK=t"5{Lf!):Ӊ[n?u M$//8xȟ*/+t~k?эW Cs }  vlz$Q `eeV?1vk`ONN Zqnk6 W_;!CB O?ܙ|8*Fk;` Fq@q@q@q@:oN\>fV?e ?kC1/N5)[.筧M!UlT zl ;mmmz$pǦ*v6Rjh P(ݴ%[`,\h赡 .0WU6("oC+,HC7'ހ#F;?𛀋X~ @kX|uE @Q;HG66{[V .8$yi\ " PXć!h_^I$Ȉ>==Y*ujOH8c̀PV:pwa Y%|0݁[yyGȦR5Bh'KSi6Oס<ș(i;Q[LEsTnsksI:K 'F΃z{{#\p8trc}.G\7eQ?̏´ X8(j_NLLܒdrE?rµ RIrtG߬P³ -~9et[ͳULlii(۲jU1R绔mi.,<$1`AaOI%7'miZ_b"UmhJx>>:*pmTsqߕrp;j13 ܒ<-r+ & >}NOűp8rڪM.O~ϒ7׊s*.y==Htrii CD|třWoͧS4+o3t|M遁یuBzIf2\r #e?%OdϹ:k4Cq**gv wrH]\S3Yu H#iZBүg ==꡶Ii _= %r*,X܌vxÈkq2JwTѥIENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-radom-b.png0000644000175000017500000000170414212620632025170 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b.IDATX VMLAv EDڢnKjŋ&xы\g=x !x>J51c(]ӎ,mL_·u&*;A8Xg>O,_Nyۃ| i(e0N I_GTFPGL$d:(nF `/uv9Vك-ؖ] .T*k;n? $ف@?٦CUUN">f3s750Qa3p &-A6 `/Nn)-eJ='xķ%fHć1a݂0e% {)L@UKWsL&VslE.\Gb422n7<ŗb%<yeoW{PXO_4N@MMBi|KPHr ͪ7UCcfg^}>-gk?Z N"(OBn|g+3 8az[V+vuUC(^0Y5Z Zשgj~"1ъIENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-one-b.png0000644000175000017500000000236314212620632024651 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b]IDATX V]lTU9wVa[QSQ{hF-&T &@M $6}^LFD!ë5&D"'Ĥwh!yӪgm .}LjfFUvFn24\s"X_pae>Yz%߶,htk+A '~ΣAMtkcQav,\%Lka.- _$dl{"{6di~kd9ߨ:n=/}E8ohtr-Dnǹ*!ER׽Ξu-/k &  {9HuyYeE|ܚͧXDACR1|ʩ[itHtǸQI_htAv5<S C8|5ʵR7 ERpk-rj(>aAR~JǘR".*]Ϟ)NOݬ m{W=+P9wo<1&~ˤ0#x"nΎ%^$M/?4 ї2p:>;w9.5??k{Ngz,.O{:ibRnloӦKy?r.B%S?(>|Dk:,6߾l "&ݼsH3twvv6ν* =(Vg&rOfOF (AmKraZ(϶? zrz2D8~Yq3/]F02Lfx~Db*"G-ỢtOg*o,}!rӬ&- EsTOeEX^(<ӻܟWD47}]pek*_ muiCĩ\9:5fA#nU)IENDB`kylin-video-3.1.3/src/resource/ico_light/0.5X-h.png0000644000175000017500000000354514212620632020341 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX XklTEmSl H)!aL (>C1"Jh 1PX1 B>A!w;wnu콻d3s9sf79F?#x|Ӥd1&Ǜ{G%[RR[cdܹsmNs***r&L~~A;yaH{xN=ݐ( y$z C5Eu8mg $SӻngR;h<);sLeks)WZ M)1pRh` # 7qNߔ 8P5i^z{]>E~p<[J\ B&Z V-7{6 $'۵ >4ΏRmǔƗ"Zk=c<N;+ MÜe;JeuuNǑX)NOKKKw)d!/4h ݼTtGC'TiR_g( *aFJZHlq?͇k;d%k$ "  S#$!nAqbGٍ-*<:?ޤb;M20x*H!d)#Naj>=@%^GSoPi 6` ӕxi|I M$zx~|K`𼄁SZ!Yz'd4t ++Xp#h"N{TlY c? 6$+bwoqۥEe:_RRߓ {3j+42;JfJr(VFt.!G3N6c,0,o. ۝%K='!ohoq>8 sss[Wf# 0?߇9H IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-restore-d.png0000644000175000017500000000064314212620632022310 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b IDATX 0o+ .`y|s9'xG0!)j/%!rΗ?ҕ.r!2uMCi[cEs` x~Dp5W0|51] +<`H@O){*v6ۭ芿#s~*zsi&06gEԧfGܥv2s 3b]}Թm}FYg3aO)E]m/$IENDB`kylin-video-3.1.3/src/resource/ico_light/nextsong-d.png0000644000175000017500000000072714212620632021547 0ustar fengfengPNG  IHDRasRGBDeXIfMM*i4UqAIDAT8c`0+)d  C|fv nH_R6H901|c4\ l<_RVVvDCc5߿ u@?inVi***2趃 )Q 6: A| `d,7sgݹs 6.;Amv[n=( x89_z=(`6h8ۇPTqarÿhsD`Z3IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-cbl1-h.png0000644000175000017500000000466614212620632021463 0ustar fengfengPNG  IHDR mn,sRGBDeXIfMM*i `a IDATx\{lGfvoeg'gqbN4)EJԡUKV%UP F*mxh CB}(P d5U>J?i5UHHsfmqovgcP{՝ͯ- b{4C [&DlV+ .~?. T1F.k[T_GDO"Qc"),l2ۗ2jTSTf, LK2D*zT2j?v!=j`felsǦu?+C<a"B}nGX,޻/tq9oj@YހSvHpG.Y[>,*>$0jQoϐr2m]VXP'% ꏤ Q B @| w>+~ l{:݃?uG7sV *y!P6crcYG@p!u #&6q86hny|[]Cui7L-0Ng"xXΕ;zlV4GH݃W5XYlzӬ_Z8[ p1KQFZ*xWq3Ed+j*4,@B3 W=m"InUI`26#ͳѪ(.x&PgUD>"aP-砯:d@sq|4UG#d}l̰eOg!x* $h :s *ugi:Qħ3c@_HV?q@u 0AY]s$ x xL&Ы"*-0j+WaJ޵q;cT} <qC$ xe:#7p jkT;)ލ>x$Dn>r/;Y{Q|/чB;F) ?^J/dU{.w\af%w`bS'^q&/`5G&+KU>Aad>5f;C dς?tHl,T|4`~̬>|wCG+mY9?ΨCk$C},pYm@\].K*mѴO&k.3*޽tsJz>۷|093-v+~^i% 0xJH%.p|r5|$XYJ 8Q+FqJ!%2kp7{ͫaݯ#H8Vbf/YJyH 1JdX`[1&hԩ9:'NXފo5XrQ?2l]IzY9gKupJ㾕0ڷ5.Nm?`^ ltB^i?!ɗ&pI$fN*p V( 5A3@g;V`NEGޛam@z z9Vo/Tj@N3A⚂S޼5i̲rs R`bj-q(Ur8Myp#u>abCN7 9{a} ;6{,ݪr(Cˆ gJ ^ٱ4W;Kv>`ofoG~>yBo^g%p6}r^8O؍)c|bl|_ɓXҖbCo;c~UU|-x,])zM1剿J߷#@md:ބZ<RCw'm7Wnl(H@v&ɯ8$ϝP/K@xm@chi;'Ӳ IbtJ}HAy5A?_v`Xlh83wCtÃKP#'m#Mzk55He!j""$e< ^~oNx@+BjL'XIENDB`kylin-video-3.1.3/src/resource/ico_light/icon-screenshot-symbolic-d1.png0000644000175000017500000000101214212620632024671 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  btIDATX W1N0ݒP ; 1pFЅ+0 F`%J†Q*qJG|>?.F \Ǥur+C.f^,c-RI M}=eN59wh.i&IMc&4Z}]Ǔ&rW2`3a[ sN ,><!q r#Vtܯݳ`̿37xc Trr8XP^>u%`T0k}+ѪSC9_cǗPj4ڻǘ/9q@=$%b"=@/oXPTh+6s6]D[y IENDB`kylin-video-3.1.3/src/resource/ico_light/2X-h.png0000644000175000017500000000353014212620632020172 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX WklUΖBSP2>%yD&Ժ5lc#Bi.X'# NN:6etzmmmԊ;‰ MaTYG4rssGuvvD%Р>61ߟnLdF"MLV8wAO4,4$Lucm9꼴8J) W(eI̧999{.2)`gCq^s%ICBxҥ$iY#5F*lHubBoff/˓oތ61?D"JI/zvI]#75#fKA EEEIBp'z  Qq"~ث#[0&*Y}`}`ohOS09`o<~|ddѵNGWfFAT"4o+AD4bdkNԺF S?t/ dC9sweuSrvW?C38 Yu-w̐&no(( ʪM :رgw[VWFBL T>"JNbPFwx3^\}tUoQċ8>_N |;(5ܕ^έ?,RdJ!lP.׵Ǐ2񤤤&) zg߻}\}ɢHJ$ m !'ξj&Ֆρ5 HŅz8vi䟞L&CD&իV  xc_eYyT9v~[@2:Ӏnߦ9"< xY$ JPUOV*$C-h<>L,'!4L~kf4& nc\!gwI҂Ftx*(ТIKIENDB`kylin-video-3.1.3/src/resource/ico_light/play-h.png0000644000175000017500000000173014212620632020646 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivBIDATX X]HQάkVJ?;?&dFP =K/%DCP/H(B̎C >6;sg֝/s92@I dqk#0r[0p'r6D"{IsR0K 2oyvm Xj@Ǹw j1v(c) U3/0]"xce%9S6=QGp8n*N]7MkDQGhhmcJJzƯky߁)/$+wF\ZN6jX:_R"Ò12WAHRHk@(eM~9Hg8I[ٶ95:3>Ȳz){~^`H֙H$f6̡\ d;:R YcW~X5">Z[~(U2= kɑ/x2QJ>T<7?3X!@f 1͊D0iTu,` Lb>K)M^'"m7\u_ g$t$ܗ+J~e*& =]D9(Y:pKPZS[< <B~)(?,xbzHhw}&`b7~@^TW9=L) ,צt޽̖cCt|EGX)(S u900~ѫ 'g'U@F9.y PzDSVMmy hҟ! yG077{wM[V &}x$ X^by0+ƍeAIENDB`kylin-video-3.1.3/src/resource/ico_light/play-mini-d.png0000644000175000017500000000136414212620632021577 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zf^IDATX NQϹPHā ʂZĨO`+4"K4Ə CxO ]jJa3M(`)bw5In~soPP[O$+ ǎ6rE븍W6"HW<9S՛_Go&Z v_Xgkؗk]7 ZcORpWm%wM-z[|k\@ADw*㍩٘GKiյ{n Kܗt=/eQ*/xuNW7i.ȱ4|-~(M}IdF2XtDr5L9:./1mKXk@'8-#~r! ~ѴDl Ss?j8X2 WD8d7+FP@Ģzc$- g3o /嚱!]*}k'KCexiD yK?H.[T@\Wq$ğH4ڪ`OiJU^XAoe'eE2R€A!iiÐ7)_ _z!)IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-list-symbolic-h.png0000644000175000017500000000041214212620632023415 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  btIDATX c`!0C=PMbLjz\|"|\q̅x`+.JJ=0r`4 |LFh90(E~T0%HIENDB`kylin-video-3.1.3/src/resource/ico_light/1X-h.png0000644000175000017500000000300114212620632020162 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zkIDATX WkhUgfh5V#l^FUhA-i J! >4F?*T((Q1ɺϮ$Lfgvvp{wϽs.cV` (vww j9cr|q:p+\h$̆1eK&''㲲ЌJv\rEL'f‰d*ws.U't{tC?npۣwf;:ӉWI"f6{Y}oA,UU/s؛ͮ"8yqL1Jm=:;&o8g+tNe2nU? ٔEN@9ccJbtN`0x>>vy'|? V#0<p1()Sir]?\!DGMfĞ\}@"v1pQ8eت2vY86 5?BPH$$\W/$x11%Ůb.|"8lx\i9gztBϫ\I0V 6BVZU)wu9ج8Np#}Ufb$m؀-ӉT^ 2໱I.S/ϝ[8rq鴕CGAH|>ߜ@.ZS`{p/ K7S߹BLAOccc˲N"qFwaF|)cEu=φŅ6Qk#_\Y?cA@i.2͙>-?lu Gk7aoժѻ k(n$D"j/9:멯❌Gc!Z;Ǽ^/DJ`|._dވB_J>ĜL lFju3(h|(NY1Zwd8IP}&\\wu|`حUJ]]1{orD37\(~2/klpr{:'E'@܊v oVpY'KY2YSSSq^ Wיs. ]-2cP<2uǯ-`)e|*mVxg4x?ǐhǰk3ULQ}gkpp \ǭiXR$S4vv'>C6o[ @cUQ[tun܌H=[K >}l'1fЋ#.č^+q!Ox;YXpA+u/` (0P``&^ix쵆IENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-loop-b.png0000644000175000017500000000204014212620632025031 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX WMHTQ>3oF&4!Yr"tզ6.ZDDADPEAjY-j!CỲ:> 4GӹsG7-z|s}Nuu`ItpU5t;t1ɀQAJГ720Uuo#AX `<|$UE͆,`HgXOU?&1&KJKOjE+U1u-.5Ut}f.jd0'N[ND?Դ3WG`; 0aPS<"pƞ64_,TFeb~K`մY]UR^{W(DSjfug&5Mx=99Ռ,=f YiI3 y پS f+ #ƶNwztAvaAQKq,H-u ,Br3Es3FYq!0sZ'˶ 2*{B}E}5s[cYi@ff##Ö/@rZ3@D\lv<APWu3V G'2FKa.oPf^h[⺛JȚHxj0q/***F,t<-cNg8C<:49u us!Ilyyx‹Yt! HRB7 d1\"i ~O%?~ݨ"9`P#oѸJf2in0<]'L6\vRjcs 9tÊ-( t? 6nEQ. Τ lbc0ہ%գPf+oT veoQ;IENDB`kylin-video-3.1.3/src/resource/ico_light/showmode-mini-h.png0000644000175000017500000000156114212620632022462 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX XOkA/IKmkRh,(xѠ (xGѓD 7,^J=MJ Ŧ;l6/fBț޼ξHJ_*Ym"˽lacVՕ_a!l,=h4M_9[N WM sdfp"0ޚ苀yxR,6\Nu:+GG)GQפp{Îٴo!"gal}@"m7w S콭148 N1)vܤ2[д DECl)7%*ܴk.lDZl%`Xl:)K cdzH#ʾ2}s9{ޏd7Һ![D31j;%eY>{.)q} ضz[;þ]$BrUM1178¾ǐƑ@*Rob$5Wy38_x"h C pFKlS᝾GRu&:}U*iL~yA%/;;i@|? mC1HF+3SZąC5}qM1鎄Ja#n2F1$S^j ngsKۀ ,.AS|q_^1כe:C[x%sWdb\2N&NʲIENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-loop-h.png0000644000175000017500000000176614212620632025055 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b`IDATX VKhAـ&DDvf6,(l& `'Q 4ME$x%$aN5Dz̆qwfzU"U5:;%˂1X4Bv!G?|%2,cW%\xV_͜DMq⧻I 鏁$WZ&!=4Ԍ^OXh36ӼflmF@[I@`~~>Ẅ{0e,,g;(CnK?Z[wM$y\_v{tP@;`ɤ[,Rsf:P?">'6эwVLf0&x[vؐ$"B4ʫXfb^yXD²5C :A*GՈJ) "Ju :CJTMV#7V}EQ-)2P~2:)t0F cj<t9fKF 70> `*/AqQq{9.vvv6U|_OOr^SЉյ%g"ts?ƯYN "a gFN~A3{a!@O&D`E~iJ\ L) \#>MR?|K"5Sa-wr V1ʭ:klag!/ETHxɬ9)+hZۀ 0{2dy\97N r {C`5N}3^XKyj1ִ#(b~jMo H8?Y48P7o:kVcL]*'?~):gg IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-cbl1-d.png0000644000175000017500000000267314212620632021453 0ustar fengfengPNG  IHDR mn,sRGBDeXIfMM*i `a%IDATxKlUƹg h4݀J&6tƐ!BiW kL(J[<54W57-F~e:י3y;̙3ܮrܼ]SSsoB\.{rI语1 ~FlzĎ'j/^8^{0ˑ G90bnDx ;܂lSpgTZ7y.SPu{@!8ظ*WAAYĩ훂Jc^iAڃEYvM[x%-Nϱ<reU ʷ Әo@:(U~G sL W*yI}2PnM]&?85M4@޽f2睍sd4$)7,g U)0s_*@;@Qc "6{c4&-_q@q@q@q@bu׿7=Po= y-0 xmmmɏtnNS|왥wv yk90;[h2mgG,uw'TdOfkeMq\U<2S|txh3t(;@ɩVp+1B9@GzM0ʛƕXeR!,[c#AD >xnA\vmn^"2!Y9}z ;8P lN|f  cݙo:U_>Vǒpq@q@q@q@C&cuϿx@X SM]1 [AZzVmt91/!SQpn/!-A  ii:53HE,"~UEIUma.zmoWm .\ pޖMgaD/SNxk8@|MɈ^⽱ "%懂 B|x\VC$`mQ7s71ez玡r\%7,wsժ4='|(4! .U=pL-Q MEeNf{U_p.Ĝl-[|[[G 7C%5W ,ZMnΕ޴{SX .+&,=C۰z*^IENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-list-h.png0000644000175000017500000000224214212620632025045 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b IDATX V]hU>gf6qf ;3F&U$ Ї?kP" $U "J45/4n!`I;xw2fΓp=;9;^jl;=@fI=Go"Dh|lMHR.ED;"heC/MWjaJN=^1g! :nڽiL1a@аz.!D{9 u 8NO xdÆ'&&Ü[*Օ@c-}kH`KOV (soɃb Xw{ލ*LP{w;{HTpt?!6֭(@T>Z=q_2(^?" LNN *9==}7\ xR&tѰI0 e8&yЏVDȾUuYs.&xQ5ɱuZ*6eZR5qw A*y@^(ޑ` I_ UbELJN~V=I }X=h02”R&Y촬"+r7l߈v}&4#',K`jY`7A>T?9owwǫk:^46Wp)F>.oA.-%v)8d|& TMMMRy;Ӽ3@q;lAˬs>b|7Qs_o_/d IENDB`kylin-video-3.1.3/src/resource/ico_light/cha-w.png0000644000175000017500000000162714212620632020460 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX VKkQ$6҇UՅ >.ʴֶi;TFq-"UPA]*iؤns KE9;Vk.LrϹ ? ,vJ (*Z/wT__'L[_9kNNW\zZC1Y %qhyx]&@0']L⢪A<nJ]s>e "E5IyYDg? Xq8FCbxxBV3D, LO9MF芪SCJA{.s9fj\~6tH&S8hT'd_WM9d U0>~##S O.`+v F 2,||-Z,K w\={x!}_Ϝ X$<_gH".v;s) ;YnAN !=ite?^{9u\4rMچI.چ,OHAx$QQy|nIj5 y"9a"M݁LFDܤ=nϫ ]mW΅:ˢ|b~DKZ^hY Xr~29e/if-/DJ"TSόϕ-d',傗D=Ye[ױ $vj L &)^.fr >V-N'p+V` ++ tsW IENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-radom-h.png0000644000175000017500000000164714212620632025204 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX VMkAI6ZGM!%mT -AH@ݶs ᰯ>#+8\,Mڽ8?}Zx=7h9[fШj aR&'2{U7n8(Y*e:ѣ0 9(\3j! I rFXY2e&XA[V,,%lw-DD0Ql܃i|&6LPN?rʏB`ac bmXso:tہh~cL@X~]ڋ3r br9?s_}] N&,|1y/W #%Vt08@3 ?bF~ 9( \yn ]oyܒ'\Ws `ޗ滱ނgN?`e9$banXGr9BQ7e| J(Nݲ|rafX$7, >4f+H,1)E m>2!RU5f7ԛaIENDB`kylin-video-3.1.3/src/resource/ico_light/0.75X-d.png0000644000175000017500000000406514212620632020422 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX XylE ($k+C ?@LQ$ńB$HC#1DM0Q0D0 FiK_>DYz}n.o9Nw||2Gyк$ԯх_bvQr٦3r0waN8q`kkL\WW,1VTT\w'B[S 89huT!&:sFКm 0m4:t5||b/)Um'UW-LRa>!d%%H:ǓRJ!?οֆLZi;~*ZY'S_QYͶ/cM3QOsT5VSb(bi$W''4-[8|%#Hl$MAC,Dxh4òPx yB8c<:jM$ Ms܆X4W3g[_ۀJ򌷬j[*]Ɉ*g_ʳLDO 噯tB%3?g7xWy!: gkݻk'rR=($'=Fl* wᗷg1r9Ryp(|D!-0 te^H:]"8탅mIM$}" 4>1b =BDI ZFGVEG]WU5O\2ﳪ Ty!&ܑijq *a ǕхmA;e<̥ZP,,=N+/O$>Y!rXl aY/q]1ȑHۤT #N&<w񵵵=07/_\Cws뢂\a~^o CC\*DG{~' y# L >nnB@Օ xP 7m<=Evghқhz>[mmk{\;8ז͊3MrM0 rS'wFlvbZ끽| b2-Y8L8C)~#5*))y.+;?AwxE,n;cZ/>'@npRʋ|&~C#SPHOG t}}><,2`1f.OFMVgWnjz"@pqcǎ-G9O#ulB:u?hPIhk]a4ɗfHֲ)*0WbہX|h|gY0BM1s蹓49W'"ZVvo4^`!1cQ%`}8P@׳Wz[lv{q >0E618aI4{'&:@hGB&xo7Nr'#T? zރ]Hgs F PT2~xa%5z[_xٳG /Vx|To~_@77|(A`ݘK!pq*"m} 1Egq8nBQi1{ }}!Fw{xQk#GNͅ>p[xؠJ(-Z𾉮c#q_{|a!f~‚ȓ F3=>oZ Pj6gj7J{ "3aN#Q{^P{^0vZr{q~^P.Pk@Z`ԌJe>4e 皂"5GX"+A)55fμ9+t)PDW#P%=f#QXE-S#NM /; RQeH~\S!,?$T$X*SP*HSX0HFŦZdX0lX0I d`Ou.k+5t* VRRDhx_8w~ En"TO(Ɖ@A/HKEh5Ewx؍lsъ45 2P^ 8MI5U^?3]FGIENDB`kylin-video-3.1.3/src/resource/ico_light/close-mini-h.png0000644000175000017500000000115714212620632021743 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX 햿K@_CmBU\`iHnnXts74WL"jh\K]4m-罖k!@ݻdGKz^[)ZN6h4梨wF O.>/SǓӽ@ܼ}>;+ز$Â>&u!FoNXG(0j&BڱKG`9+ ×G3~M@c]q/P0WAk$A<ꚣ=(- |6/a6!X+ɿ]|0Ƚm'm,8p4M磓nbZY&'BtLP&>-ikBc (@R@舛B$@$;Iwvw.j!y]=O |a.+k̳uq]wmf 6p\ M~VYcKIENDB`kylin-video-3.1.3/src/resource/ico_light/icon-list-symbolic-b.png0000644000175000017500000000037314212620632023415 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  beIDATX c`!0C=u&NP0:~\0sai#Mh40ZXnGn0%IIENDB`kylin-video-3.1.3/src/resource/ico_light/icon-fullscreen-h.png0000644000175000017500000000076214212620632022775 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b\IDATX 햽N0FӁXK( 0 WcdboDeCP$fVuI邳8{N> D\ˬbz:9g6(cV{K I8 e 4!o]` y 2.M֪@nA}E.C}kZ pN<p&Xs!0"kUUwpJ\\0Nw-˲a]U<+@kEM!- x>_y=Qw pϊFCJh)R`v5L`yZ}p}Qי?mN+-72}Ux9IENDB`kylin-video-3.1.3/src/resource/ico_light/cha-h.png0000644000175000017500000000175614212620632020444 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bXIDATX U]HQ>ۦ?G3J3$" uQDmζEE!b)mvC(3uMB1+39}.9ys} m(I `6EE^o@ ֖VR(R?bxFHm3>ѶݐD GnBCMRXM Y1Nwy*?JQcǷfZp&y~wN]QiA՗Wl}n)G!;ȾQH)F؝<յZ%@oK@H ApY:u}$47 ;V92%Y+u#m^v~~)c2v.1Bn Iݜlقȹd rYR h՝{V{!k9y(9`s!Q <|Uz'k3@ BOX,6|o,,ώP#(}.p$/Wup!Tzˡq ΡsȑDj b㮁G xip+<3&H_ ,%W=%c@OL|~ Es)9ٝx)n`e-( +'qؔm&@tZ)ICfM`a$QE ~Sjs4{OO abY4چ[OZJ>hIENDB`kylin-video-3.1.3/src/resource/ico_light/showmode-mini-d.png0000644000175000017500000000153614212620632022460 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX XMkA٤Dd$ J"(xY^(xVz+B|~`6̉[d\!ǼףQ}BVv;z‰]Xu8\Y+m)9B*Vs9'=y\$:U.r,@Lft͉LNwc,NSz-!=鷥|\V~P<\Bo4grNyx4KI+oy@c1fy#劉mF8ٷꚋcu1V\U.&U_y?1I@VxouwQ\DL`Q OǽO MH[IɁ l_`7PhHܖS !5VMFjkLx1ߙA)1|cJFWAPij- ‚MhcI m )ZMPAHLRgi %$KmDQGf\޽s{ojyz6t j1)cʆEa#qB 4mȕ+7Nhjj:00@1tIEN2{)fl|&z meMV#[ZNIlުK.,++훘&Ƙ LSUuwi"p{<)ˈ #NH[Qkz0௩RY"I"Щ(f"2f#pDZqqe`"tC[g"2,minnAG}O!9~RW"EOPT[U+m|wrY2D===3Tyi%J |9j3@KA6~u,"OYa8,/k0޿3K/se$ aAj2@5 G6}HnWyG"DauhhtK=ornf:&@|zfF$RIp`;#o{-" 5sDl61A7  )).i# G GDl#C/YZ^V4At8H:~O\тX}N/ n`ЇXxr盈VUUB\9v`Yڃ"\ d/ö$ښ!IENDB`kylin-video-3.1.3/src/resource/ico_light/audio-volume-high-symbolic-d.png0000644000175000017500000000306314212620632025040 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX W]lTEn OmˆjSk$)}#x0PSJĠ"11&b@hʖloE tm7]\w'a?9g;x#XTIxo1Pt3WL_DԴhIN8̧7LTL=rfkBE7#;bW|N!En|ܿCpv)@#~aboD=\dvaTq CDɸ.a ug[Ŧe/_HVж٣:&ٕ4=ΫTë5 aGV\-ni{\%xva/'pIOBKgǟA."US9^HӂY;@W>)fd*heq5C UUv+#Xhً+2YFb!p\~[NM+rC#N> C+ *w[=٭`#G%: -3A/^1鴠;R]ۜK1:PDf|K/J'b9Wq^@^0h#B˸zmh'JKK4鬊eR+q̼ENL.$y0{I'_:ߏ&EO>1Z U9WModrtt؋DBJ$z~u(F?fq3FYJ@J!Upxo0ɸdJq_.{ /A+lECx`a {xc۪xj>5`uC{[i`7ӓQ^<#d.T(${++_qZދ֟C{]GD3q_DޒcDb-'gHEggg:X؉UmvſP#KRTen㤡`zcLÝ fl7•$'ZVww% %7rbmd2X?^=V/㤥h:)!d)NeJVV)jw+1Ġ|@[6Ɩnw +93~sSN=OIڙog,!'@3t&/R7DFi9sft&6 ْnloo,IIIqDᮮv:>/pdKpCCj%bӽ^R{~+L!_s=?]jhv#&(հ~P8+RZ[[oL5-To2JowtZ5.Au F 'km-<\SS -pO4gf ӀK樃wT29g%sN.„u:KKKs.2?i"!K) ? uBE|I^ y}DkqD|;Zw p2zB o6d=UKThF[@`w{{taѳ4ސig Χ`0؈&Ӣ^$&Tzވ<ՐuE\N(`"bU48t/na&_٠-x%.'{/(\w0KKMYgN`4F `SS~8lﺻ>2xFf~`VV9 25bTƍ,/ѱ%q=C9&ՂU)Y*`sַfeoG" "3;v=2״t+eeϞ/J;iEY0/t:V^0/22`2֟yI26$I$IENDB`kylin-video-3.1.3/src/resource/ico_light/close-mini-d.png0000644000175000017500000000120014212620632021724 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX AKAgjwXNVAAv2]kt{OtCC56;::yOWW !*@>OM%זmowh4"03LL>ܸoDQٹDܮC RD1F)Yg"|^溙{Jx0݄NkBv8.oqZV8ؤp + E\ @"8\%|E)4;xn-.AFÊî  ;2ql *>@W<*`j:uɒƫNں]8s9(<9tpV Zf Li_!d%%'Bb& |Ȱs"IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-grid-symbolic-b.png0000644000175000017500000000042414212620632023364 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b~IDATX c`#=@^Ay?6wDŽl@YpYC:B>%U߀FCg. a&U߀GF#/FkC,oˁQ\@j(9|!/F$l%IENDB`kylin-video-3.1.3/src/resource/ico_light/list-add-symbolic-b.png0000644000175000017500000000042114212620632023207 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  b{IDATX c`!0r7k 3d0CU- `ĕ ٌ g޿[,>! A,@M M,^-F(/ J;IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-fullscreen-d.png0000644000175000017500000000075014212620632022766 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bRIDATX c`#= 1ꘐ9Z`s1(p˙N$ @s\ETw|/_~?|sA_p|9dΨ>1B5{ f ABƠnEEU!ASgϞHyGpj5\55l'mkTRR#rr@3p]-g(w#8֖<3 a9-"D`<sj;b#氄1(gb:!ea]Cic^3 x<.0ȅ8hռ Y=ZzmHs$u{m@\g}愋O_qbFLX 5 wQO` BIENDB`kylin-video-3.1.3/src/resource/ico_light/icon-screenshot-symbolic-d.png0000755000175000017500000000114014212620632024615 0ustar fengfengPNG  IHDRr ߔsRGBDeXIfMM*idIDATH VJA=A$V_`a)Z66V˨p`W@@v92r\Bfwgޛ73."eZ?a BTS`f"JTW+׮&ɶ\907bKi="n|~ ݱ6 4\l6C<'_}||HƼb5#Ou+`Xc ^ŝ<\E>,`ONUuiS $ƇBn.=s,Vа\k%p8|@ўA,c-cSBdg-8rWz?eW+ѣGl=z9 tm@0)e6kRș H-79w1o+;Vyܮ;DU^dx:+:`kQw1Ky4 KnUk G\Sfd{K%V6侘;ȡm>vhGRf:(kIENDB`kylin-video-3.1.3/src/resource/ico_light/1.5X-d.png0000644000175000017500000000307114212620632020330 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX XmlEZ]Єc C,"C4`T0"5?L!тb M(H҄h wg$J;׮ٞw6iggޏ#$H#Fu^7p,뭯v씖feG,X b`0xg:Ţ"$I!SPP֦O'/xLZRep>Z2ciHlx!8fh# :tx$R_QQ&QGuJ/"Ħf(b(x SpLޫ۷MSSph8GME\gpXC)KQ^i;Tշx,^ _Ui UoꬠB)nL}>_ᤘ>_Xʇ4e+SIJ'@`?p2Jfya'F6)SVVs1jp@C(0 }H|qo4t3t9|xI.E"L^oq-?)Mv |dr,[/NN)/_Bb1i#F^^v{d&v~W*J&pJD}]qPVM smr'taH).^z1>PzAWc;$#J؉kڳSr70ärk, @fZ);V& '0~T3dsո1|,5X8܀+v-ktNЍr&w9 -̛b|Ȉ MFp|&MqbR-$5N"j4o5+B70bn(I3Q/7 QF) toIII^`g12}9kCO݆'FMyKy HL? *,手>Bշ];VlYUNQJ8W%OG0dq>'vb=oձӟ7pxzS&Y½1͓9Ve??(97CiC*)G0'`$Ni;X[ vE,%Zy1$Fњ7&G&lE82xڔv&E"dd8.qc*LѕnWι|xxN'WZG׸ܞ.+(܍o#/ cI 0G~ Nޖ&ڮ_80sgxOտu:ˉqǧdC17 P0x\@؄W0z%"ddscYh4:k&Nl?F3 Rԧ&dҴ4i$F߬Q͡P/!-”0Х"\4@Aez͈3> П H7_o-2Uec @TyA4@BW4р$3f?IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-grid-symbolic-h.png0000644000175000017500000000044314212620632023373 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX UA C?4MF_ wX [G)XPm?\u6Y;ϵ] eԋ W jWŅ 0Χ@}G{,.j@RS/.\> .]\$8/{%hOIENDB`kylin-video-3.1.3/src/resource/ico_light/suspend-mini-d.png0000644000175000017500000000063614212620632022314 0ustar fengfengPNG  IHDR((msRGBDeXIfMM*i((zfIDATX Q 0 UA>G{kp(ܬ7d2s&t]]ͩkV7i&g2~YrgΜ7qƤ=.g33`Wuu2 b[HrĹFXG1Y='w槈H+>*cc*~Y3GV$^?2"1Fp7|>q?Z4'FrfpH\AZ% a!3+8 1Af%Fߪ<}Uz4vx yΎܹsQ圔\ ~хpҘp5ѣGҏa$'p٬ ׺uֳܔO[ l'$Jğ&Uݲk_(^uit:D)W\l>ͶNHPnx,pJ u]`^xo@1[9@q.(-Ts@?GVA!~-4ׇ 8`r[[[D͊7@ 5+ ,ÙMVQoS*!+3RdX`/^X8Zv3*G xd'y֎Yo45;]g) P5q;48YNu>b T\/(L9`&bT‘ms'qd_㘉~%J2y6aZ0Sn'AR^m4`ƌ GL*X&7baQ@coIWXP/%a}XPGSS?۱g2N›~6ɏO+C aRk;800Ј<ّRcMMM}nO-VfsCC7讥0!قЂYebM {`)8##o- Bl_ЎJvU*}V4Ra,'P^uqrHdc[PloԔ.3'#h}AƯ$'XWwRq^ſՖq۶u"S^p:dz)Ju踵+,ˍ BD7L~*n7ѫh]H??4}ѵ[eʸGss9?Tp|*Ug`B~IENDB`kylin-video-3.1.3/src/resource/ico_light/1X-d.png0000644000175000017500000000276514212620632020176 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`z_IDATX X}hE7)`kv.!hHS (D+JQPKQZ6EۀRDD+5UĔJЫѤ]4I.vfӅrwpxawf߼ c_<g`>u],tP(T:LgBq~!\I(T*1<L~U ~'y̞T)Ms!tr9WTTtqrjP:LyYѿ%")d6a C|k8I.ۜgȶg|ġ 2gu:[Bf>Bcʧ)|)||Q@@+nUĉl񖼯"̍~w"S BbL_q^ǹ#ٲJMaZRG9# !2ӯTUv}]0% $' ۠>sF9'0Psf^%I0UUnqdR*t܉'_O9 ^R\q,vƯeiL}'ȴwWK 2)H$Np9i53VSXh yEt,3bX\*p=nm{|MSS1Iߘ#}BaĖ@  w-\r䍎n{麾ŭJmٛ >L.LJ5Kn:;&/Gu=4@aId/9)Q-@N" ]?YvkZ`E_S8Yֈ{ɀ#]n56w v-r+%':3TTJtN]zNIO e7#;),Q |XdfG!Ž :Q^巩,<_J㼍3~/d.д:GG|g @<Kh$bIENDB`kylin-video-3.1.3/src/resource/ico_light/pause-d.png0000644000175000017500000000064614212620632021017 0ustar fengfengPNG  IHDR ,sRGBDeXIfMM*i ,ivIDATX =0 N 8 l\p&-*23j*ec:0RUy5PQ 4ր rBYlqipvK\&ޥuDRݯ$g<5%ny:J)&s<ю,4gfruhYB@! B@! FGfp<Ѵ ᙣ\MHgv$ v5>[ro+9$W~VfR, wIENDB`kylin-video-3.1.3/src/resource/ico_light/2X-d.png0000644000175000017500000000352214212620632020167 0ustar fengfengPNG  IHDR@%RsRGBDeXIfMM*i@`zIDATX WklTEmy(Kݥ[* DMLcB4G$1 /"hP jĠQbD$$[mݻ"J))ݻ3~sBMڙ{7gf9sB<y Ы|UUU@* 8ehmmM^;VAJ%PJ$'Mj:|xЎ}M&(Tj ]ۿCOQb)+))9xaf\%H[2[  tM'i^H~Yu>U ,6N霡Dr't+bL6Rn|&egny@y 0,AE)bՂq(+Onu| 6!Vxj2BB J׺} ^!8Iȶ;6.n%|өY@ p¸~F"?,SӀU),:FP\ܜ/\j$<-goD%lc<k@DAx֮պ~]fN!#88/27/';d#S60Y!Hc߼I*րxgF{o2*VVV\~XNBٗ#ټ7&|u-iJ8j3?$Eݟ $ CvLg4etDb nOQbs9 E4)']R! T!(ypø}z6UU eƅ'M3ؘ\&9-Op rڛ EC+zFJSQR[[8asR*[T&aoo x5b@|tQ% 5~.Sc"e5ՎzCB[[ܟkLE^SS R#5^LJU+*O)O<8 vkZh$@X] vo?ԣk ؾ7s'|;::N[)f j(!F,TxIB6kmNn`Q[s5ČӦرxGB{q(; ʔ1]t,Z엧,m~<E0/ɘyWʵ8"⻺=$ '%Regy>h2QـepH.(j!ixB_v{ `Dƕ wP2H_Q:t! [dr rd?X__o \!Prwܹ>Q+]j2,xq b| o  Nmmmb„sǏbvڗ gncjPYޘ 3g _ΜVaIENDB`kylin-video-3.1.3/src/resource/ico_light/media-playlist-repeat-one-h.png0000644000175000017500000000234314212620632024655 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bMIDATX Voh[U?罤3Up^ZWIб ~t0AQqCEAQtTd0 Dq0et:(nK ά̖׼/Iv!9{9^j `fB;KlEzQوpF(?u$MoH'x ϖNU@]O?|Ȁa$c]~fvvr7lhhYD,렊Re^Sd6Y |Qu=!zM в>T%|4 yd;1f{ %s\j)sc9᱑J@ٝ4Kr4\Kw 43@d?9-8֞/dXĆߘ Y=k 4'Q9;r Zsyc8(0}5e aۯ“= 3;`5 UdIqg{.(`(<楦VooUlv=뤀in~T /.Aޥ Ga)0ݩm7AtBK" "a.XOujt:t ĴfPLO Ԓɔz{(|]lk1m[k#).ӝjZ3]|wQ/l9lOnt?|e-bG*UM6|Eyq\h& k^{SV}|~>Uz*A?@g,8_Kp>sn r:qm:S̿G Y&@<fy' i sopOOJ[X2 sLF4-y' mŚqsfP tXE8OCbhv xpRVv"l' ½J tEe;]!ߓ_/m!Z)/awp;5?IENDB`kylin-video-3.1.3/src/resource/ico_light/icon-restore-h.png0000644000175000017500000000066114212620632022314 0ustar fengfengPNG  IHDR szzsRGBDeXIfMM*i  bIDATX c`!@WP،SSSWPޫ.τ.@m>_e`~tYɇY?##%6Vpti8ߺu ]@ P=H&%8Dcvhzb9!Ȯ @7{(vR=-叆@I fB\\\3LT` [RIz@řt6˱Ze91 ` (mAP0BXK%8Z9%;. * * Authors: Liu Cong * */ #ifndef DIALOG_H #define DIALOG_H #include /// wayland 下无边框 dialog class Dialog : public QDialog { Q_OBJECT public: Dialog(QWidget *parent = nullptr); ~Dialog(); private: void ukuiMove(); protected: bool eventFilter(QObject *watched, QEvent *event) override; void showEvent(QShowEvent *event) override; }; #endif // DIALOG_H kylin-video-3.1.3/src/dbusadapter.h0000644000175000017500000000311214214075177015633 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef DBUSADAPTER_H #define DBUSADAPTER_H #include #include "core/mpvtypes.h" class DbusAdapter : public QObject { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.mpris.MediaPlayer2.Player") public: explicit DbusAdapter(QObject *parent = nullptr); public slots: // mpris 使用 void Stop() const; void Next() const; // 这个改个名字,不能用 PlayPause,不然会和线控冲突 void KvPlayPause() const; void Previous() const; void AddFile(QString file) const; void VolumeUp() const; void VolumeDown() const; void FullScreen() const; void LoopMode() const; void Exit() const; int PlayState(); QString CurrentFile(); private: Mpv::PlayState m_playState; QString m_currentFile; signals: }; #endif // DBUSADAPTER_H kylin-video-3.1.3/src/mainwidget.ui0000644000175000017500000000265414212620632015653 0ustar fengfeng MainWidget 0 0 960 540 0 0 Form QWidget#MainWidget{background-color: rgba(38, 38, 38, 255);} 0 0 960 540 0 0 961 541 background-color: rgba(255, 255, 255, 0); kylin-video-3.1.3/src/setupwidget/0000755000175000017500000000000014214075177015533 5ustar fengfengkylin-video-3.1.3/src/setupwidget/setupsubtitle.ui0000644000175000017500000001337014212620632021000 0ustar fengfeng SetupSubtitle 0 0 533 362 Form 0 30 10 24 Sub loading 16777215 16777215 Auto loading subtitles with the same name 16777215 16777215 Auto loading other subtitles in the same folder 10 5 0 5 60 0 Sub Path 16777215 16777215 64 30 browse Font Style 8 5 5 60 0 Family 300 16777215 Qt::Horizontal 40 20 8 5 5 60 0 Size 300 16777215 Qt::Horizontal 40 20 Qt::Vertical 20 67 CheckBox QCheckBox
checkbox/checkbox.h
kylin-video-3.1.3/src/setupwidget/setupvolume.h0000644000175000017500000000233114214075177020273 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPVOLUME_H #define SETUPVOLUME_H #include namespace Ui { class SetupVolume; } class SetupVolume : public QWidget { Q_OBJECT public: explicit SetupVolume(QWidget *parent = nullptr); ~SetupVolume(); void initData(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupVolume *ui; void initConnect(); }; #endif // SETUPVOLUME_H kylin-video-3.1.3/src/setupwidget/setupcodec.cpp0000644000175000017500000001124614214075177020401 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupcodec.h" #include "ui_setupcodec.h" #include "global/global.h" #include #include using namespace Global; SetupCodec::SetupCodec(QWidget *parent) : QWidget(parent), ui(new Ui::SetupCodec) { ui->setupUi(this); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->cb_VideoOutput->setFont(f); ui->cb_VDecoder->setFont(f); ui->lineEdit->setFont(f); f.setPixelSize(16); ui->label->setFont(f); ui->label_2->setFont(f); ui->label_3->setFont(f); QIntValidator *ivd = new QIntValidator; ivd->setRange(1, 32); ui->lineEdit->setValidator(ivd); ui->lineEdit->setFixedHeight(30); initData(); initConnect(); } SetupCodec::~SetupCodec() { if (ui->lineEdit->validator()) { delete ui->lineEdit->validator(); } delete ui; } void SetupCodec::initData() { ui->cb_VDecoder->addItem(tr("default")); ui->cb_VDecoder->addItem(tr("no")); ui->cb_VDecoder->addItem("vdpau"); ui->cb_VDecoder->addItem("vdpau-copy"); ui->cb_VDecoder->addItem("vaapi"); ui->cb_VDecoder->addItem("vaapi-copy"); ui->cb_VDecoder->setCurrentText(g_settings->value("General/video_decoder").toString()); ui->label->setText(tr("Video output")); ui->cb_VideoOutput->addItem(tr("auto")); ui->cb_VideoOutput->addItem("x11"); ui->cb_VideoOutput->addItem("xv"); ui->cb_VideoOutput->addItem("vdpau"); ui->cb_VideoOutput->addItem("vaapi"); ui->cb_VideoOutput->addItem("gpu"); ui->cb_VideoOutput->setCurrentText(g_settings->value("General/video_output").toString()); ui->label_3->setText(tr("Decode threads")); int threads = g_settings->value("General/video_decode_threads").toInt(); ui->lineEdit->setText(QString::number(threads > 0 ? threads : 4)); // ui->label_3->hide(); // ui->cb_ADecoder->hide(); } void SetupCodec::initConnect() { connect(ui->cb_VDecoder, &QComboBox::currentTextChanged, this, [this](QString decoder) { gsetup->videoDecoder.second = decoder; }); connect(ui->cb_VideoOutput, &QComboBox::currentTextChanged, this, [this](QString decoder) { gsetup->videoOutput.second = decoder; }); connect(ui->lineEdit, &QLineEdit::textChanged, this, [this](QString text){ gsetup->videoDecodeThreads.second = text.toInt(); }); } void SetupCodec::setBlackTheme() { ui->label->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_2->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_3->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_VideoOutput->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->cb_VDecoder->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->lineEdit->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); // ui->cb_ADecoder->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); } void SetupCodec::setLightTheme() { ui->label->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_2->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_3->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_VideoOutput->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->cb_VDecoder->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->lineEdit->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); // ui->cb_ADecoder->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); } void SetupCodec::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size + 2); ui->label->setFont(f); ui->label_2->setFont(f); ui->label_3->setFont(f); f.setPointSize(size); ui->cb_VDecoder->setFont(f); ui->cb_VideoOutput->setFont(f); ui->lineEdit->setFont(f); } kylin-video-3.1.3/src/setupwidget/setupscreenshot.h0000644000175000017500000000254414214075177021147 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPSCREENSHOT_H #define SETUPSCREENSHOT_H #include #include #define DEFAULT_SAVE_PATH QDir::homePath().append(tr("Pictures")) namespace Ui { class SetupScreenshot; } class SetupScreenshot : public QWidget { Q_OBJECT public: explicit SetupScreenshot(QWidget *parent = nullptr); ~SetupScreenshot(); void initData(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupScreenshot *ui; int m_format_index; void initConnect(); }; #endif // SETUPSCREENSHOT_H kylin-video-3.1.3/src/setupwidget/setupsubtitle.h0000644000175000017500000000237614214075177020630 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPSUBTITLE_H #define SETUPSUBTITLE_H #include namespace Ui { class SetupSubtitle; } class SetupSubtitle : public QWidget { Q_OBJECT public: explicit SetupSubtitle(QWidget *parent = nullptr); ~SetupSubtitle(); void initData(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupSubtitle *ui; QString subPath; void initConnect(); }; #endif // SETUPSUBTITLE_H kylin-video-3.1.3/src/setupwidget/setupsubtitle.cpp0000644000175000017500000002020714214075177021154 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupsubtitle.h" #include "ui_setupsubtitle.h" #include #include #include #include #include "global/global.h" using namespace Global; SetupSubtitle::SetupSubtitle(QWidget *parent) : QWidget(parent), ui(new Ui::SetupSubtitle) { ui->setupUi(this); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->le_SubPath->setFont(f); ui->le_SubPath->setReadOnly(true); ui->pushButton->setFont(f); ui->cb_Family->setFont(f); ui->cb_OtherName->setFont(f); ui->cb_SameName->setFont(f); ui->cb_Size->setFont(f); ui->label_3->setFont(f); ui->label_4->setFont(f); ui->label_5->setFont(f); f.setPixelSize(16); ui->label_Titile1->setFont(f); ui->label_Titile2->setFont(f); QFontDatabase fdb; ui->cb_Family->addItems(fdb.families()); // 字体选择列表 先自己设置一些 QStringList size_list; size_list << "26" << "32" << "42" << "52" << "64" << "76"; ui->cb_Size->addItems(size_list); initConnect(); } SetupSubtitle::~SetupSubtitle() { delete ui; } void SetupSubtitle::initData() { ui->cb_SameName->setChecked(gsetup->loadSameNameSub.first); ui->cb_OtherName->setChecked(gsetup->loadAllSubInDir.first); // 如果默认字幕路径为空的话设置为家目录 ui->le_SubPath->setText(gsetup->subDir.first == "" ? QDir::homePath() : gsetup->subDir.first); // 加载字体 QString font_family = gsetup->subFontFamily.first; int font_size = gsetup->subFontSize.first; QFont f; if(font_family.length() > 0) ui->cb_Family->setCurrentText(font_family); else ui->cb_Family->setCurrentText(f.defaultFamily()); if(font_size == 0) ui->cb_Size->setCurrentText(QString("%1").arg(f.pointSize())); else ui->cb_Size->setCurrentText(QString("%1").arg(font_size)); } void SetupSubtitle::setBlackTheme() { ui->label_Titile1->setStyleSheet(QString("color:rgb(255,255,255);")); ui->label_Titile2->setStyleSheet(QString("color:rgb(255,255,255);")); ui->cb_Family->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->cb_Size->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->le_SubPath->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->pushButton->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->cb_OtherName->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_SameName->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_3->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_4->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_5->setStyleSheet(QString("color:rgb(249,249,249);")); } void SetupSubtitle::setLightTheme() { ui->label_Titile1->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_Titile2->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_Family->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->cb_Size->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->le_SubPath->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->pushButton->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->cb_OtherName->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_SameName->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_3->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_4->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_5->setStyleSheet(QString("color:rgb(38,38,38);")); } void SetupSubtitle::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size + 2); ui->label_Titile1->setFont(f); ui->label_Titile2->setFont(f); f.setPointSize(size); ui->label_3->setFont(f); ui->label_4->setFont(f); ui->label_5->setFont(f); ui->cb_Family->setFont(f); ui->cb_OtherName->setFont(f); ui->cb_SameName->setFont(f); ui->cb_Size->setFont(f); ui->pushButton->setFont(f); ui->le_SubPath->setFont(f); } void SetupSubtitle::initConnect() { connect(ui->cb_SameName, &QCheckBox::clicked, [&](bool checked){ gsetup->loadSameNameSub.second = checked; }); connect(ui->cb_OtherName, &QCheckBox::clicked, [&](bool checked){ gsetup->loadAllSubInDir.second = checked; }); connect(ui->le_SubPath, &QLineEdit::textChanged, [&](QString path){ gsetup->subDir.second = path; }); connect(ui->pushButton, &QPushButton::clicked, [&](){ // 打开文件夹 QString url; { QFileDialog fd(parentWidget()); fd.setModal(true); QList list = fd.sidebarUrls(); int sidebarNum = 8; QString home = QDir::homePath().section("/", -1, -1); QString mnt = "/media/" + home + "/"; QDir mntDir(mnt); mntDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList filist = mntDir.entryInfoList(); QList mntUrlList; for(int i=0; i < sidebarNum && i < filist.size(); i++) { QFileInfo fi = filist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } QFileSystemWatcher fsw(&fd); fsw.addPath("/media/" + home + "/"); connect(&fsw, &QFileSystemWatcher::directoryChanged, &fd, [=, &sidebarNum, &mntUrlList, &list, &fd](const QString path){ QDir wmnDir(path); wmnDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList wfilist = wmnDir.entryInfoList(); mntUrlList.clear(); for(int i=0; i < sidebarNum && i < wfilist.size(); ++i) { QFileInfo fi = wfilist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } fd.setSidebarUrls(list + mntUrlList); fd.update(); }); connect(&fd, &QFileDialog::finished, &fd, [=, &list, &fd](){ fd.setSidebarUrls(list); }); fd.setSidebarUrls(list + mntUrlList); fd.setDirectory(QDir(ui->le_SubPath->text())); fd.setWindowTitle(tr("Video Player Choose a directory")); fd.setFileMode(QFileDialog::DirectoryOnly); gshortCut->makeAllInvalid(); if(fd.exec() == QFileDialog::Accepted) { url = fd.selectedUrls().at(0).toString(); if(url.startsWith("file")) url.remove(0, 7); } gshortCut->makeAllValid(); } if(url.length() > 0) ui->le_SubPath->setText(url); }); connect(ui->cb_Family, &QComboBox::currentTextChanged, [&](QString family){ gsetup->subFontFamily.second = family; }); connect(ui->cb_Size, &QComboBox::currentTextChanged, [&](QString size){ gsetup->subFontSize.second = size.toInt(); }); } kylin-video-3.1.3/src/setupwidget/setupplay.h0000644000175000017500000000233314214075177017733 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPPLAYWIDGET_H #define SETUPPLAYWIDGET_H #include namespace Ui { class SetupPlay; } class SetupPlay : public QWidget { Q_OBJECT public: explicit SetupPlay(QWidget *parent = nullptr); ~SetupPlay(); void initData(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupPlay *ui; void initConnect(); }; #endif // SETUPPLAYWIDGET_H kylin-video-3.1.3/src/setupwidget/setupscreenshot.cpp0000644000175000017500000001644414214075177021506 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupscreenshot.h" #include "ui_setupscreenshot.h" #include #include #include #include #include "global/global.h" using namespace Global; SetupScreenshot::SetupScreenshot(QWidget *parent) : QWidget(parent), ui(new Ui::SetupScreenshot) { ui->setupUi(this); m_format_index = 0; QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->rb_Save2Clip->setFont(f); ui->rb_Save2File->setFont(f); ui->label->setFont(f); ui->label_2->setFont(f); ui->lineEdit->setFont(f); ui->comboBox->setFont(f); ui->btn_Browse->setFont(f); ui->checkBox->setFont(f); ui->lineEdit->setReadOnly(true); initConnect(); // 保存到剪切板功能和当前尺寸截图功能未实现 ui->rb_Save2Clip->hide(); ui->checkBox->hide(); } SetupScreenshot::~SetupScreenshot() { delete ui; } void SetupScreenshot::initData() { if(gsetup->screenShotSaveToClip.first) ui->rb_Save2Clip->setChecked(true); else ui->rb_Save2File->setChecked(true); if(gsetup->screenShotPath.first.length() == 0) { gsetup->screenShotPath.second = QDir::homePath().append("/").append(tr("Pictures")); ui->lineEdit->setText(gsetup->screenShotPath.second); gsetup->flushChange(); } else ui->lineEdit->setText(gsetup->screenShotPath.first); // 设置支持的截图格式 QStringList format; format << "jpg" << "png" << "webp"; for(int i=0; iscreenShotFormat.first) m_format_index = i; ui->comboBox->clear(); ui->comboBox->addItems(format); ui->comboBox->setCurrentIndex(m_format_index); ui->checkBox->setChecked(gsetup->screenShotCurrentSize.first); } void SetupScreenshot::setBlackTheme() { ui->rb_Save2Clip->setStyleSheet(QString("color:rgb(249,249,249);")); ui->rb_Save2File->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label->setStyleSheet(QString("color:rgb(249,249,249);")); ui->label_2->setStyleSheet(QString("color:rgb(249,249,249);")); ui->lineEdit->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->comboBox->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->btn_Browse->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->checkBox->setStyleSheet(QString("color:rgb(249,249,249);")); } void SetupScreenshot::setLightTheme() { ui->rb_Save2Clip->setStyleSheet(QString("color:rgb(38,38,38);")); ui->rb_Save2File->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_2->setStyleSheet(QString("color:rgb(38,38,38);")); ui->lineEdit->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->comboBox->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->btn_Browse->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->checkBox->setStyleSheet(QString("color:rgb(38,38,38);")); } void SetupScreenshot::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size); ui->rb_Save2Clip->setFont(f); ui->rb_Save2File->setFont(f); ui->label->setFont(f); ui->label_2->setFont(f); ui->lineEdit->setFont(f); ui->comboBox->setFont(f); ui->btn_Browse->setFont(f); ui->checkBox->setFont(f); } void SetupScreenshot::initConnect() { connect(ui->rb_Save2Clip, &QRadioButton::toggled, [&](bool checked){gsetup->screenShotSaveToClip.second = checked;}); connect(ui->lineEdit, &QLineEdit::textChanged, [&](QString path){gsetup->screenShotPath.second = path;}); connect(ui->btn_Browse, &QPushButton::clicked, [&](bool checked){ // 打开文件夹 QString url; { QFileDialog fd(parentWidget()); fd.setModal(true); QList list = fd.sidebarUrls(); int sidebarNum = 8; QString home = QDir::homePath().section("/", -1, -1); QString mnt = "/media/" + home + "/"; QDir mntDir(mnt); mntDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList filist = mntDir.entryInfoList(); QList mntUrlList; for(int i=0; i < sidebarNum && i < filist.size(); i++) { QFileInfo fi = filist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } QFileSystemWatcher fsw(&fd); fsw.addPath("/media/" + home + "/"); connect(&fsw, &QFileSystemWatcher::directoryChanged, &fd, [=, &sidebarNum, &mntUrlList, &list, &fd](const QString path){ QDir wmnDir(path); wmnDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList wfilist = wmnDir.entryInfoList(); mntUrlList.clear(); for(int i=0; i < sidebarNum && i < wfilist.size(); ++i) { QFileInfo fi = wfilist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } fd.setSidebarUrls(list + mntUrlList); fd.update(); }); connect(&fd, &QFileDialog::finished, &fd, [=, &list, &fd](){ fd.setSidebarUrls(list); }); fd.setSidebarUrls(list + mntUrlList); fd.setDirectory(QDir(ui->lineEdit->text())); fd.setWindowTitle(tr("Video Player Choose a directory")); fd.setFileMode(QFileDialog::DirectoryOnly); gshortCut->makeAllInvalid(); if(fd.exec() == QFileDialog::Accepted) { url = fd.selectedUrls().at(0).toString(); if(url.startsWith("file")) url.remove(0, 7); } gshortCut->makeAllValid(); } if(url.length() > 0) ui->lineEdit->setText(url); }); connect(ui->comboBox, &QComboBox::currentTextChanged, [&](QString format){gsetup->screenShotFormat.second = format;}); connect(ui->checkBox, &QCheckBox::toggled, [&](bool checked){gsetup->screenShotCurrentSize.second = checked;}); } kylin-video-3.1.3/src/setupwidget/setupscreenshot.ui0000644000175000017500000001002514212620632021314 0ustar fengfeng SetupScreenshot 0 0 496 300 Form 12 30 10 16777215 20 Only save to clipboard 16777215 20 Save to file 8 16 save path 16777215 30 64 30 browse 8 save type 140 0 16777215 30 Qt::Horizontal 40 20 16777215 20 Screenshot according to the current screen size Qt::Vertical 20 85 CheckBox QCheckBox
checkbox/checkbox.h
kylin-video-3.1.3/src/setupwidget/setupshortcut.ui0000644000175000017500000001105214212620632021013 0ustar fengfeng SetupShortcut 0 0 843 680 Form 30 10 24 0 30 16777215 30 Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 kylin-video-3.1.3/src/setupwidget/setupvolume.ui0000644000175000017500000000551114212620632020452 0ustar fengfeng SetupVolume 0 0 400 300 Form 12 30 10 Output driver 264 0 16777215 30 Qt::Horizontal 40 20 Volume contral 16777215 20 Global volume 16777215 20 Default volume standardization Qt::Vertical 20 93 CheckBox QCheckBox
checkbox/checkbox.h
kylin-video-3.1.3/src/setupwidget/setupcodec.h0000644000175000017500000000232114214075177020040 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPCODEC_H #define SETUPCODEC_H #include namespace Ui { class SetupCodec; } class SetupCodec : public QWidget { Q_OBJECT public: explicit SetupCodec(QWidget *parent = nullptr); ~SetupCodec(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupCodec *ui; void initData(); void initConnect(); }; #endif // SETUPCODEC_H kylin-video-3.1.3/src/setupwidget/setupsystem.cpp0000644000175000017500000000712614214075177020652 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupsystem.h" #include "ui_setupsystem.h" #include "global/global.h" using namespace Global; SetupSystem::SetupSystem(QWidget *parent) : QWidget(parent), ui(new Ui::SetupSystem) { ui->setupUi(this); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); ui->label->setFont(f); ui->label_2->setFont(f); ui->label_2->hide(); f.setPixelSize(14); ui->cb_Mini2Tray->setFont(f); ui->cb_PauseWhenMini->setFont(f); ui->cb_keepState->setFont(f); ui->cb_RunMore->setFont(f); ui->cb_RunMore->hide(); if(isWayland) ui->cb_Mini2Tray->hide(); initConnect(); } SetupSystem::~SetupSystem() { delete ui; } /** ********************************************** * 主题颜色修改 *************************************************/ void SetupSystem::setBlackTheme() { ui->label->setStyleSheet(QString("color:rgb(255,255,255);")); ui->label_2->setStyleSheet(QString("color:rgb(255,255,255);")); ui->cb_Mini2Tray->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_PauseWhenMini->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_keepState->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_RunMore->setStyleSheet(QString("color:rgb(249,249,249);")); } void SetupSystem::setLightTheme() { ui->label->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_2->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_Mini2Tray->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_PauseWhenMini->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_keepState->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_RunMore->setStyleSheet(QString("color:rgb(38,38,38);")); } void SetupSystem::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size + 2); ui->label->setFont(f); f.setPointSize(size); ui->cb_keepState->setFont(f); ui->cb_Mini2Tray->setFont(f); ui->cb_PauseWhenMini->setFont(f); ui->cb_RunMore->setFont(f); } void SetupSystem::initData() { ui->cb_Mini2Tray->setChecked(gsetup->miniToTray.first); ui->cb_PauseWhenMini->setChecked(gsetup->pauseWhenMini.first); ui->cb_keepState->setChecked(gsetup->keepStateWhenWakeup.first); ui->cb_RunMore->setChecked(gsetup->canRunMultiple.first); } void SetupSystem::initConnect() { connect(ui->cb_Mini2Tray, &QCheckBox::clicked, [&](bool checked){ gsetup->miniToTray.second = checked; }); connect(ui->cb_PauseWhenMini, &QCheckBox::clicked, [&](bool checked){ gsetup->pauseWhenMini.second = checked; }); connect(ui->cb_keepState, &QCheckBox::clicked, [&](bool checked){ gsetup->keepStateWhenWakeup.second = checked; }); connect(ui->cb_RunMore, &QCheckBox::clicked, [&](bool checked){ gsetup->canRunMultiple.second = checked; }); } kylin-video-3.1.3/src/setupwidget/setupvolume.cpp0000644000175000017500000000662614214075177020641 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupvolume.h" #include "ui_setupvolume.h" #include "global/global.h" using namespace Global; SetupVolume::SetupVolume(QWidget *parent) : QWidget(parent), ui(new Ui::SetupVolume) { ui->setupUi(this); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); ui->label->setFont(f); ui->label_2->setFont(f); f.setPixelSize(14); ui->cb_AudioOutDevice->setFont(f); ui->cb_GlobalV->setFont(f); ui->cb_StandardV->setFont(f); // 全局音量和标准化功能先隐藏 ui->label_2->hide(); ui->cb_GlobalV->hide(); ui->cb_StandardV->hide(); QStringList items; // 音频输出默认先设置这几个,具体怎么拿到硬件输出后面需要加上 items << "pulse" << "alsa"; ui->cb_AudioOutDevice->addItems(items); initConnect(); } SetupVolume::~SetupVolume() { delete ui; } void SetupVolume::initData() { // 初始化输出设备 QString audio_out = gsetup->audioOut.first; ui->cb_AudioOutDevice->setCurrentText(audio_out); ui->cb_GlobalV->setChecked(gsetup->globalVolume.first); ui->cb_StandardV->setChecked(gsetup->standardVolume.first); } void SetupVolume::setBlackTheme() { ui->label->setStyleSheet(QString("color:rgb(255,255,255);")); ui->label_2->setStyleSheet(QString("color:rgb(255,255,255);")); ui->cb_AudioOutDevice->setStyleSheet(QString("color:rgb(249,249,249);background-color:rgb(64,64,64);")); ui->cb_GlobalV->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_StandardV->setStyleSheet(QString("color:rgb(249,249,249);")); } void SetupVolume::setLightTheme() { ui->label->setStyleSheet(QString("color:rgb(38,38,38);")); ui->label_2->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_AudioOutDevice->setStyleSheet(QString("color:rgb(38,38,38);background-color:rgb(240,240,240);")); ui->cb_GlobalV->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_StandardV->setStyleSheet(QString("color:rgb(38,38,38);")); } void SetupVolume::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size + 2); ui->label->setFont(f); ui->label_2->setFont(f); f.setPointSize(size); ui->cb_AudioOutDevice->setFont(f); ui->cb_GlobalV->setFont(f); ui->cb_StandardV->setFont(f); } void SetupVolume::initConnect() { connect(ui->cb_AudioOutDevice, &QComboBox::currentTextChanged, [&](QString dev){gsetup->audioOut.second = dev;}); connect(ui->cb_GlobalV, &QCheckBox::toggled, [&](bool checked){gsetup->globalVolume.second = checked;}); connect(ui->cb_StandardV, &QCheckBox::toggled, [&](bool checked){gsetup->standardVolume.second = checked;}); } kylin-video-3.1.3/src/setupwidget/setupsystem.h0000644000175000017500000000235314214075177020314 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPSYSTEMWIDGET_H #define SETUPSYSTEMWIDGET_H #include namespace Ui { class SetupSystem; } class SetupSystem : public QWidget { Q_OBJECT public: explicit SetupSystem(QWidget *parent = nullptr); ~SetupSystem(); void initData(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QString family, int size); private: Ui::SetupSystem *ui; void initConnect(); }; #endif // SETUPSYSTEMWIDGET_H kylin-video-3.1.3/src/setupwidget/setupshortcut.h0000644000175000017500000000643014214075177020643 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef SETUPSHORTCUT_H #define SETUPSHORTCUT_H #include "setupshortcut.h" #include #include #include #define ListWidgetStyle "QListWidget{background-color: rgba(1,1,1,0)}" \ "QListWidget::item::selected{background-color:rgba(1,1,1,0);}" \ "QListWidget::item::hover{background-color:rgba(1,1,1,0);}" namespace Ui { class SetupShortcut; } class QLabel; class QHBoxLayout; class ShortEdit : public QLineEdit { Q_OBJECT public: explicit ShortEdit(QWidget *parent = nullptr); ~ShortEdit(); void setBlackTheme(); void setLightTheme(); void setShortCut(QString s); void setWidgetFont(QString family, int size); signals: void sigUpdateShort(QString); private: QString m_theme; QString m_start_text; protected: void focusInEvent(QFocusEvent *e) override; void focusOutEvent(QFocusEvent *e) override; void keyPressEvent(QKeyEvent *e) override; }; class ShortCutItem : public QWidget { Q_OBJECT public: explicit ShortCutItem(QString name, QString key, QWidget *parent = nullptr); ~ShortCutItem(); void setBlackTheme(); void setLightTheme(); void setWidgetFont(QFont f); void reset(); void flush(); public slots: void setHotkeyConflict(bool isConflict); signals: /// @param isConflict:如果冲突为 true 目的是为了删除之前未冲突保存的临时修改 void sigKeyChange(QString name, QString newKey, bool isConflict); void sigKeyTextChange(QString tmpKey); private: QString m_name, m_key; QHBoxLayout *lay; QHBoxLayout *lay_key; QLabel *lab_name; QLabel *lab_conflict; ShortEdit *le_key; bool m_isConflict; }; class SetupShortcut : public QWidget { friend class ShortCutItem; Q_OBJECT public: explicit SetupShortcut(QWidget *parent = nullptr); ~SetupShortcut(); void setBlackTheme(); void setLightTheme(); void flushChange(); void clearChange(); void setWidgetFont(QString family, int size); private: Ui::SetupShortcut *ui; std::map chg_map; QSet item_set; static QSet key_set; void initListTitle(); void initConnect(); void initFileShortCut(); void initPlayShortCut(); void initImageShortCut(); void initVolumeShortCut(); void initSubtitleShortCut(); void initOtherShortCut(); private slots: void slotChangeKeyCache(QString name, QString newKey, bool isConflict); }; #endif // SETUPSHORTCUT_H kylin-video-3.1.3/src/setupwidget/setupshortcut.cpp0000755000175000017500000005461714214075177021213 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupshortcut.h" #include "ui_setupshortcut.h" #include #include #include #include #include #include #include "global/global.h" using namespace Global; QSet SetupShortcut::key_set; QString regKeyString(QString key){ if(key.endsWith("PgUp")) key.replace("PgUp", "Page Up"); else if(key.endsWith("PgDown")) key.replace("PgDown", "Page Down"); else if(key.endsWith("Return")) key.replace("Return", "Enter"); else if(key.endsWith("空格")) key.replace("空格", "Space"); else if(key.endsWith("{")) key.replace("{", "["); else if(key.endsWith("}")) key.replace("}", "]"); else if(key.endsWith("~")) key.replace("~", "`"); else if(key.endsWith("!")) key.replace("!", "1"); else if(key.endsWith("@")) key.replace("@", "2"); else if(key.endsWith("#")) key.replace("#", "3"); else if(key.endsWith("$")) key.replace("$", "4"); else if(key.endsWith("%")) key.replace("%", "5"); else if(key.endsWith("^")) key.replace("^", "6"); else if(key.endsWith("&")) key.replace("&", "7"); else if(key.endsWith("*")) key.replace("*", "8"); else if(key.endsWith("(")) key.replace("(", "9"); else if(key.endsWith(")")) key.replace(")", "0"); else if(key.endsWith("_")) key.replace("_", "-"); else if(key.endsWith("+")) { key.chop(1); key.append("="); } else if(key.endsWith("|")) key.replace("|", "\\"); else if(key.endsWith(":")) key.replace(":", ";"); else if(key.endsWith(":")) key.replace(":", ";"); else if(key.endsWith("\"")) key.replace("\"", "\'"); else if(key.endsWith("<")) key.replace("<", ","); else if(key.endsWith(">")) key.replace(">", "."); else if(key.endsWith("?")) key.replace("?", "/"); key.replace("+", " + "); return key; } SetupShortcut::SetupShortcut(QWidget *parent) : QWidget(parent), ui(new Ui::SetupShortcut) { ui->setupUi(this); initListTitle(); initFileShortCut(); initPlayShortCut(); initImageShortCut(); initVolumeShortCut(); initSubtitleShortCut(); initOtherShortCut(); ui->list_flie->verticalScrollBar()->setProperty("drawScrollBarGroove", false); ui->list_play->verticalScrollBar()->setProperty("drawScrollBarGroove", false); ui->list_image->verticalScrollBar()->setProperty("drawScrollBarGroove", false); ui->list_subtitle->verticalScrollBar()->setProperty("drawScrollBarGroove", false); ui->list_volume->verticalScrollBar()->setProperty("drawScrollBarGroove", false); ui->list_other->verticalScrollBar()->setProperty("drawScrollBarGroove", false); } SetupShortcut::~SetupShortcut() { delete ui; } void SetupShortcut::setBlackTheme() { for(int i=0; ilist_flie->count(); i++) ((ShortCutItem*)ui->list_flie->itemWidget(ui->list_flie->item(i)))->setBlackTheme(); for(int i=0; ilist_play->count(); i++) ((ShortCutItem*)ui->list_play->itemWidget(ui->list_play->item(i)))->setBlackTheme(); for(int i=0; ilist_image->count(); i++) ((ShortCutItem*)ui->list_image->itemWidget(ui->list_image->item(i)))->setBlackTheme(); for(int i=0; ilist_volume->count(); i++) ((ShortCutItem*)ui->list_volume->itemWidget(ui->list_volume->item(i)))->setBlackTheme(); for(int i=0; ilist_subtitle->count(); i++) ((ShortCutItem*)ui->list_subtitle->itemWidget(ui->list_subtitle->item(i)))->setBlackTheme(); for(int i=0; ilist_other->count(); i++) ((ShortCutItem*)ui->list_other->itemWidget(ui->list_other->item(i)))->setBlackTheme(); ui->list_title->setStyleSheet("QListWidget{background-color: rgba(1,1,1,0);border-radius:10px;}" "QListWidget::item{border-radius:12px;color:#8c8c8c;}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}" "QListWidget::item::hover{background-color:#333333;}"); } void SetupShortcut::setLightTheme() { for(int i=0; ilist_flie->count(); i++) ((ShortCutItem*)ui->list_flie->itemWidget(ui->list_flie->item(i)))->setLightTheme(); for(int i=0; ilist_play->count(); i++) ((ShortCutItem*)ui->list_play->itemWidget(ui->list_play->item(i)))->setLightTheme(); for(int i=0; ilist_image->count(); i++) ((ShortCutItem*)ui->list_image->itemWidget(ui->list_image->item(i)))->setLightTheme(); for(int i=0; ilist_volume->count(); i++) ((ShortCutItem*)ui->list_volume->itemWidget(ui->list_volume->item(i)))->setLightTheme(); for(int i=0; ilist_subtitle->count(); i++) ((ShortCutItem*)ui->list_subtitle->itemWidget(ui->list_subtitle->item(i)))->setLightTheme(); for(int i=0; ilist_other->count(); i++) ((ShortCutItem*)ui->list_other->itemWidget(ui->list_other->item(i)))->setLightTheme(); ui->list_title->setStyleSheet("QListWidget{background-color: rgba(1,1,1,0);border-radius:10px;}" "QListWidget::item{border-radius:12px;color:#8c8c8c;}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}" "QListWidget::item::hover{background-color:#f5f5f5;}"); } void SetupShortcut::flushChange() { for(std::pair p : chg_map) { QString useless_key = gshortCut->resetShort(p.first, p.second); key_set.insert(regKeyString(p.second)); key_set.remove(regKeyString(useless_key)); } foreach (auto item, item_set) { item->flush(); } chg_map.clear(); } void SetupShortcut::clearChange() { chg_map.clear(); foreach (auto item, item_set) { item->reset(); } } void SetupShortcut::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size); foreach (auto item, item_set) { item->setWidgetFont(f); } ui->list_title->setFont(f); } void SetupShortcut::initListTitle() { ui->list_title->setFlow(QListView::LeftToRight); ui->list_title->addItems(QStringList() << tr("file") << tr("play") << tr("image") << tr("audio") << tr("sub") << tr("other")); for(int i=0; ilist_title->count(); i++) { QListWidgetItem *it = ui->list_title->item(i); it->setTextAlignment(Qt::AlignCenter); it->setSizeHint(QSize(60, 24)); } ui->list_title->setCurrentRow(0); ui->list_title->setSpacing(3); ui->list_flie->setSpacing(10); ui->list_flie->setStyleSheet(ListWidgetStyle); ui->list_flie->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->list_play->setSpacing(10); ui->list_play->setStyleSheet(ListWidgetStyle); ui->list_play->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->list_image->setSpacing(10); ui->list_image->setStyleSheet(ListWidgetStyle); ui->list_image->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->list_volume->setSpacing(10); ui->list_volume->setStyleSheet(ListWidgetStyle); ui->list_volume->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->list_subtitle->setSpacing(10); ui->list_subtitle->setStyleSheet(ListWidgetStyle); ui->list_subtitle->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->list_other->setSpacing(10); ui->list_other->setStyleSheet(ListWidgetStyle); ui->list_other->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->list_title->setFont(f); initConnect(); } void SetupShortcut::initConnect() { connect(ui->list_title, &QListWidget::currentRowChanged, ui->stackedWidget, &QStackedWidget::setCurrentIndex); } void SetupShortcut::initFileShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("open file") || pair.second->objectName() == tr("open dir") || pair.second->objectName() == tr("prev file") || pair.second->objectName() == tr("next file")) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_flie->addItem(it); ui->list_flie->setItemWidget(it, itemw); } } } void SetupShortcut::initPlayShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("play/pause") || pair.second->objectName() == tr("speed up") || pair.second->objectName() == tr("speed down") || pair.second->objectName() == tr("speed normal") || pair.second->objectName() == tr("forword") || pair.second->objectName() == tr("backword") || pair.second->objectName() == tr("forward 30s") || pair.second->objectName() == tr("backword 30s") || pair.second->objectName() == tr("insert bookmark") /*|| pair.second->objectName() == tr("ib notes")*/) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_play->addItem(it); ui->list_play->setItemWidget(it, itemw); } } } void SetupShortcut::initImageShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("fullscreen") || pair.second->objectName() == tr("mini mode") || // mini模式先不做实现 pair.second->objectName() == tr("to top") || pair.second->objectName() == tr("screenshot") || // pair.second->objectName() == tr("cut") || // 截取先不做实现 pair.second->objectName() == tr("light up") || pair.second->objectName() == tr("light down") || pair.second->objectName() == tr("forward rotate") || pair.second->objectName() == tr("backward rotate") || pair.second->objectName() == tr("horizontal flip") || pair.second->objectName() == tr("vertical flip") /*||*/ // pair.second->objectName() == tr("image boost") // 画质增强先不做实现 ) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_image->addItem(it); ui->list_image->setItemWidget(it, itemw); } } } void SetupShortcut::initVolumeShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("volume up") || pair.second->objectName() == tr("volume down") || pair.second->objectName() == tr("mute") || pair.second->objectName() == tr("audio next") || pair.second->objectName() == tr("default channel") || pair.second->objectName() == tr("left channel") || pair.second->objectName() == tr("right channel")) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_volume->addItem(it); ui->list_volume->setItemWidget(it, itemw); } } } void SetupShortcut::initSubtitleShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("sub load") || pair.second->objectName() == tr("sub earlier") || pair.second->objectName() == tr("sub later") || pair.second->objectName() == tr("sub up") || pair.second->objectName() == tr("sub down") || pair.second->objectName() == tr("sub next")) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_subtitle->addItem(it); ui->list_subtitle->setItemWidget(it, itemw); } } } void SetupShortcut::initOtherShortCut() { // key item for(std::pair pair : gshortCut->get_short_map()) { // 防止快捷键 new 失败导致崩溃 if(pair.second == nullptr) continue; if(pair.second->objectName() == tr("play list") || pair.second->objectName() == tr("setup")) { QString shortKey = regKeyString(pair.second->key().toString()); key_set.insert(shortKey); QListWidgetItem *it = new QListWidgetItem; it->setSizeHint(QSize(400, 30)); ShortCutItem *itemw = new ShortCutItem(pair.second->objectName(), shortKey, this); item_set.insert(itemw); connect(itemw, &ShortCutItem::sigKeyChange, this, &SetupShortcut::slotChangeKeyCache); ui->list_other->addItem(it); ui->list_other->setItemWidget(it, itemw); } } } /** ********************************************** * 快捷键修改临时缓存 * 说明:只是保存需要修改的哪些快捷键,如果设置窗口点击了 * 确认按钮,才会真正的修改这些快捷键。 * @param:name 修改快捷键的名字 * @param:newKey 要修改的快捷键组合 * @param:isConflict 是否有冲突 如果有冲突设置为空 *************************************************/ void SetupShortcut::slotChangeKeyCache(QString name, QString newKey, bool isConflict) { // 临时改变快捷键 if (!isConflict) chg_map[name] = newKey; } ShortCutItem::ShortCutItem(QString name, QString key, QWidget *parent) : QWidget(parent), m_name(name), m_key(key), m_isConflict(false) { setObjectName(name); m_name = name; lab_name = new QLabel; lab_name->setText(name); lab_name->setFixedWidth(130); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); lab_name->setFont(f); le_key = new ShortEdit; le_key->setReadOnly(true); le_key->setText(key); le_key->setFixedSize(237, 30); /// 设置界面关闭的时候如果没有保存,需要刷新快捷键界面为打开时的快捷键。目前没做。 connect(le_key, &ShortEdit::sigUpdateShort, [&](QString key){ emit sigKeyChange(m_name, key, m_isConflict); }); connect(le_key, &ShortEdit::textChanged, [&](QString tmpKey){ if(tmpKey == m_key) setHotkeyConflict(false); else setHotkeyConflict(SetupShortcut::key_set.find(tmpKey) != SetupShortcut::key_set.end()); }); le_key->setCursor(Qt::PointingHandCursor); // 热键冲突标签 lay_key = new QHBoxLayout(le_key); lab_conflict = new QLabel; lab_conflict->setText(tr("Hotkey conflict")); lab_conflict->setStyleSheet("color:#f44e50"); lay_key->addStretch(); lay_key->addWidget(lab_conflict); lay_key->setContentsMargins(0, 0, 8, 0); lab_conflict->hide(); lay = new QHBoxLayout(this); lay->setContentsMargins(0, 0, 0, 0); lay->addWidget(lab_name); lay->addWidget(le_key); lay->addStretch(); } ShortCutItem::~ShortCutItem() { delete lab_conflict; lab_conflict = nullptr; delete lay_key; lay_key = nullptr; delete lab_name; lab_name = nullptr; delete le_key; le_key = nullptr; delete lay; lay = nullptr; } void ShortCutItem::setBlackTheme() { le_key->setBlackTheme(); lab_name->setStyleSheet("color:#d9d9d9;"); } void ShortCutItem::setLightTheme() { le_key->setLightTheme(); lab_name->setStyleSheet("color:#262626;"); } void ShortCutItem::setWidgetFont(QFont f) { lab_name->setFont(f); lab_conflict->setFont(f); le_key->setFont(f); } void ShortCutItem::reset() { le_key->setText(m_key); } void ShortCutItem::flush() { if(!m_isConflict) m_key = le_key->text(); } void ShortCutItem::setHotkeyConflict(bool isConflict) { m_isConflict = isConflict; if(isConflict) lab_conflict->show(); else lab_conflict->hide(); } ShortEdit::~ShortEdit() { } void ShortEdit::setBlackTheme() { m_theme = STYLE_UKUI_BLACK; setStyleSheet("background-color:#404040;color:#d9d9d9;border:0px;border-radius:4px;"); } void ShortEdit::setLightTheme() { m_theme = STYLE_UKUI_DEFAULT; setStyleSheet("background-color:#f0f0f0;color:#262626;border:0px;border-radius:4px;"); } void ShortEdit::setShortCut(QString s) { m_start_text = s; setText(m_start_text); } ShortEdit::ShortEdit(QWidget *parent) : QLineEdit(parent) { QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); setFont(f); } void ShortEdit::focusInEvent(QFocusEvent *e) { if(m_theme == STYLE_UKUI_DEFAULT) setStyleSheet("QLineEdit{background-color:#f5f5f5;color:#262626;border:1px solid #3790fa;border-radius:4px;}"); else setStyleSheet("QLineEdit{background-color:#333333;color:#d9d9d9;border:1px solid #296cd9;border-radius:4px;}"); } void ShortEdit::focusOutEvent(QFocusEvent *e) { if(m_theme == STYLE_UKUI_DEFAULT) setStyleSheet("QLineEdit{background-color:#f0f0f0;color:#262626;border:0px;border-radius:4px;}"); else setStyleSheet("QLineEdit{background-color:#404040;color:#d9d9d9;border:0px;border-radius:4px;}"); if(m_start_text != text()) { emit sigUpdateShort(text()); m_start_text = text(); } } void ShortEdit::keyPressEvent(QKeyEvent *e) { // 组合键不能单独去设置 if (e->key() == Qt::Key_Meta || e->key() == Qt::Key_Shift || e->key() == Qt::Key_Alt || e->key() == Qt::Key_Control) return; QKeySequence qs(e->key()); QString keyStr = regKeyString(qs.toString()); if(e->modifiers() == Qt::ShiftModifier) { if(e->key() == 16777248) { setText("Shift"); return; } // shift 组合键 setText("Shift + " + keyStr); } else if(e->modifiers() == Qt::ControlModifier) { if(e->key() == 16777249) { setText("Ctrl"); return; } // ctrl 组合键 setText("Ctrl + " + keyStr); } else if(e->modifiers() == Qt::AltModifier) { if(e->key() == 16777251) { setText("Alt"); return; } // ctrl 组合键 setText("Alt + " + keyStr); } else if(e->modifiers() == (Qt::AltModifier|Qt::ControlModifier)) { if(e->key() == 16777251 || e->key() == 16777249) { setText("Ctrl + Alt"); return; } // ctrl+alt 组合键 setText("Ctrl + Alt + " + keyStr); } else if(e->modifiers() == (Qt::AltModifier|Qt::ShiftModifier)) { if(e->key() == 16777251 || e->key() == 16777248) { setText("Alt + Shift"); return; } // ctrl+shift 组合键 setText("Alt + Shift + " + keyStr); } else if(e->modifiers() == (Qt::ControlModifier|Qt::ShiftModifier)) { if(e->key() == 16777249 || e->key() == 16777248) { setText("Ctrl + Shift"); return; } // ctrl+shift 组合键 setText("Ctrl + Shift + " + keyStr); } else { setText(keyStr); } } kylin-video-3.1.3/src/setupwidget/setupplay.ui0000644000175000017500000000470114212620632020110 0ustar fengfeng SetupPlay 0 0 588 300 Form 0 30 10 16777215 16777215 Set fullscreen when open video 16777215 16777215 Clear play list on exit 16777215 16777215 Automatically plays from where the file was last stopped 16777215 16777215 Automatically find associated files to play Qt::Vertical 20 109 CheckBox QCheckBox
checkbox/checkbox.h
kylin-video-3.1.3/src/setupwidget/setupsystem.ui0000644000175000017500000000670314212620632020473 0ustar fengfeng SetupSystem 0 0 505 282 Form 0 30 10 16777215 16777215 Window Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft 16777215 16777215 Minimize to system tray icon 16777215 16777215 Pause video playback when minimized 16777215 16777215 After sleep/sleep/lock screen and wake up, keep playing state 0 28 16777215 50 Multiple run Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft 16777215 20 Allow multiple Kylin Video to run simultaneously Qt::Vertical 20 46 CheckBox QCheckBox
checkbox/checkbox.h
kylin-video-3.1.3/src/setupwidget/setupplay.cpp0000644000175000017500000000634414214075177020274 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "setupplay.h" #include "ui_setupplay.h" #include "global/global.h" using namespace Global; SetupPlay::SetupPlay(QWidget *parent) : QWidget(parent), ui(new Ui::SetupPlay) { ui->setupUi(this); QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(14); ui->cb_AutoFullScreen->setFont(f); ui->cb_AutoFullScreen->hide(); ui->cb_ClearListExit->setFont(f); ui->cb_LastPosPlay->setFont(f); ui->cb_FindAssociatedPlay->setFont(f); ui->cb_FindAssociatedPlay->hide(); // 功能暂时隐藏 initConnect(); } SetupPlay::~SetupPlay() { delete ui; } /** ********************************************** * 主题颜色修改 *************************************************/ void SetupPlay::setBlackTheme() { ui->cb_AutoFullScreen->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_ClearListExit->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_LastPosPlay->setStyleSheet(QString("color:rgb(249,249,249);")); ui->cb_FindAssociatedPlay->setStyleSheet(QString("color:rgb(249,249,249);")); } void SetupPlay::setLightTheme() { ui->cb_AutoFullScreen->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_ClearListExit->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_LastPosPlay->setStyleSheet(QString("color:rgb(38,38,38);")); ui->cb_FindAssociatedPlay->setStyleSheet(QString("color:rgb(38,38,38);")); } void SetupPlay::setWidgetFont(QString family, int size) { QFont f(family); f.setPointSize(size); ui->cb_AutoFullScreen->setFont(f); ui->cb_ClearListExit->setFont(f); ui->cb_FindAssociatedPlay->setFont(f); ui->cb_LastPosPlay->setFont(f); } void SetupPlay::initData() { ui->cb_AutoFullScreen->setChecked(gsetup->fullScreenWhenPlay.first); ui->cb_ClearListExit->setChecked(gsetup->clearListWhenExit.first); ui->cb_LastPosPlay->setChecked(gsetup->playLastPos.first); ui->cb_FindAssociatedPlay->setChecked(gsetup->playRelationFile.first); } void SetupPlay::initConnect() { connect(ui->cb_AutoFullScreen, &QCheckBox::clicked, [&](bool cheched){gsetup->fullScreenWhenPlay.second = cheched;}); connect(ui->cb_ClearListExit, &QCheckBox::clicked, [&](bool cheched){gsetup->clearListWhenExit.second = cheched;}); connect(ui->cb_LastPosPlay, &QCheckBox::clicked, [&](bool cheched){gsetup->playLastPos.second = cheched;}); connect(ui->cb_FindAssociatedPlay, &QCheckBox::clicked, [&](bool cheched){gsetup->playRelationFile.second = cheched;}); } kylin-video-3.1.3/src/setupwidget/setupcodec.ui0000644000175000017500000000373214212620632020223 0ustar fengfeng SetupCodec 0 0 400 300 Form 12 30 10 24 Demux 16777215 30 Video decoder 16777215 30 Audio decoder Qt::Vertical 20 41 kylin-video-3.1.3/src/timeslider.cpp0000644000175000017500000000731014214075177016035 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "timeslider.h" #include #include #include #include #include "global/global.h" TimeSlider::TimeSlider(QWidget *parent): SliderBar(parent) { setMouseTracking(true); setObjectName("TimeSlider"); m_isPressed = false; m_isPreviewShow = false; m_mousePos = 0; m_timerPreview = new QTimer; m_timerPreview->setInterval(100); setEnabled(false); connect(m_timerPreview, &QTimer::timeout, [this](){ m_timerPreview->stop(); emit sigShowPreview(m_mousePos); m_isPreviewShow = true; }); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [this](Mpv::PlayState state){ if(state > 0) { // setCursor(Qt::PointingHandCursor); setEnabled(true); } else { // setCursor(Qt::ArrowCursor); setEnabled(false); } }); // // 样式 // setStyleSheet("QSlider::add-page:Horizontal\ // {\ // background-color: rgb(87, 97, 106);\ // height:4px;\ // }\ // QSlider::sub-page:Horizontal \ // {\ // border:none; \ // border-radius:2px; \ // background-color:qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(41,134,255,255), stop:1 rgba(62,255,254,255));\ // height:4px;\ // }\ // QSlider::groove:Horizontal \ // {\ // background-color:rgba(255,255,255,204);\ // height:4px;\ // }"); // QGraphicsDropShadowEffect *effect = new QGraphicsDropShadowEffect; // effect->setOffset(4,4); // effect->setColor(QColor(0,0,0,50)); // effect->setBlurRadius(10); // setGraphicsEffect(effect); } #if 0 void TimeSlider::mousePressEvent(QMouseEvent *e) { if(e->button() == Qt::LeftButton && isEnabled()) { m_isPressed = true; int duration = maximum() - minimum(); int pos = (double)minimum() + (double)duration * ((double)e->x() / (double)width()); if(pos != sliderPosition()) setValue(pos); } } void TimeSlider::mouseReleaseEvent(QMouseEvent *e) { if(e->button() == Qt::LeftButton && isEnabled()) { m_isPressed = false; // 跳转之后需要隐藏预览框 m_timerPreview->stop(); emit sigHidePreview(); m_isPreviewShow = false; } } void TimeSlider::mouseMoveEvent(QMouseEvent *e) { if(m_isPressed) { int duration = maximum() - minimum(); int pos = minimum() + duration * ((double)e->x() / width()); if(pos != sliderPosition()) setValue(pos); } m_mousePos = (double)e->x() * (double)maximum() / (double)width(); if(m_isPreviewShow) emit sigShowPreview(m_mousePos); } void TimeSlider::leaveEvent(QEvent *e) { m_timerPreview->stop(); emit sigHidePreview(); m_isPreviewShow = false; } void TimeSlider::enterEvent(QEvent *e) { if(isEnabled()) m_timerPreview->start(); } #endif kylin-video-3.1.3/src/qthelper.hpp0000644000175000017500000002737014214075177015535 0ustar fengfeng/* Copyright (C) 2017 the mpv developers * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #ifndef MPV_CLIENT_API_QTHELPER_H_ #define MPV_CLIENT_API_QTHELPER_H_ #include #if !MPV_ENABLE_DEPRECATED #error "This helper is deprecated. Copy it into your project instead." #else /** * Note: these helpers are provided for convenience for C++/Qt applications. * This is based on the public API in client.h, and it does not encode any * knowledge that is not known or guaranteed outside of the C client API. You * can even copy and modify this code as you like, or implement similar things * for other languages. */ #include #include #include #include #include #include #include namespace mpv { namespace qt { // Wrapper around mpv_handle. Does refcounting under the hood. class Handle { struct container { container(mpv_handle *h) : mpv(h) {} ~container() { mpv_terminate_destroy(mpv); } mpv_handle *mpv; }; QSharedPointer sptr; public: // Construct a new Handle from a raw mpv_handle with refcount 1. If the // last Handle goes out of scope, the mpv_handle will be destroyed with // mpv_terminate_destroy(). // Never destroy the mpv_handle manually when using this wrapper. You // will create dangling pointers. Just let the wrapper take care of // destroying the mpv_handle. // Never create multiple wrappers from the same raw mpv_handle; copy the // wrapper instead (that's what it's for). static Handle FromRawHandle(mpv_handle *handle) { Handle h; h.sptr = QSharedPointer(new container(handle)); return h; } // Return the raw handle; for use with the libmpv C API. operator mpv_handle*() const { return sptr ? (*sptr).mpv : 0; } }; static inline QVariant node_to_variant(const mpv_node *node) { switch (node->format) { case MPV_FORMAT_STRING: return QVariant(QString::fromUtf8(node->u.string)); case MPV_FORMAT_FLAG: return QVariant(static_cast(node->u.flag)); case MPV_FORMAT_INT64: return QVariant(static_cast(node->u.int64)); case MPV_FORMAT_DOUBLE: return QVariant(node->u.double_); case MPV_FORMAT_NODE_ARRAY: { mpv_node_list *list = node->u.list; QVariantList qlist; for (int n = 0; n < list->num; n++) qlist.append(node_to_variant(&list->values[n])); return QVariant(qlist); } case MPV_FORMAT_NODE_MAP: { mpv_node_list *list = node->u.list; QVariantMap qmap; for (int n = 0; n < list->num; n++) { qmap.insert(QString::fromUtf8(list->keys[n]), node_to_variant(&list->values[n])); } return QVariant(qmap); } default: // MPV_FORMAT_NONE, unknown values (e.g. future extensions) return QVariant(); } } struct node_builder { node_builder(const QVariant& v) { set(&node_, v); } ~node_builder() { free_node(&node_); } mpv_node *node() { return &node_; } private: Q_DISABLE_COPY(node_builder) mpv_node node_; mpv_node_list *create_list(mpv_node *dst, bool is_map, int num) { dst->format = is_map ? MPV_FORMAT_NODE_MAP : MPV_FORMAT_NODE_ARRAY; mpv_node_list *list = new mpv_node_list(); dst->u.list = list; if (!list) goto err; list->values = new mpv_node[num](); if (!list->values) goto err; if (is_map) { list->keys = new char*[num](); if (!list->keys) goto err; } return list; err: free_node(dst); return NULL; } char *dup_qstring(const QString &s) { QByteArray b = s.toUtf8(); char *r = new char[b.size() + 1]; if (r) std::memcpy(r, b.data(), b.size() + 1); return r; } bool test_type(const QVariant &v, QMetaType::Type t) { // The Qt docs say: "Although this function is declared as returning // "QVariant::Type(obsolete), the return value should be interpreted // as QMetaType::Type." // So a cast really seems to be needed to avoid warnings (urgh). return static_cast(v.type()) == static_cast(t); } void set(mpv_node *dst, const QVariant &src) { if (test_type(src, QMetaType::QString)) { dst->format = MPV_FORMAT_STRING; dst->u.string = dup_qstring(src.toString()); if (!dst->u.string) goto fail; } else if (test_type(src, QMetaType::Bool)) { dst->format = MPV_FORMAT_FLAG; dst->u.flag = src.toBool() ? 1 : 0; } else if (test_type(src, QMetaType::Int) || test_type(src, QMetaType::LongLong) || test_type(src, QMetaType::UInt) || test_type(src, QMetaType::ULongLong)) { dst->format = MPV_FORMAT_INT64; dst->u.int64 = src.toLongLong(); } else if (test_type(src, QMetaType::Double)) { dst->format = MPV_FORMAT_DOUBLE; dst->u.double_ = src.toDouble(); } else if (src.canConvert()) { QVariantList qlist = src.toList(); mpv_node_list *list = create_list(dst, false, qlist.size()); if (!list) goto fail; list->num = qlist.size(); for (int n = 0; n < qlist.size(); n++) set(&list->values[n], qlist[n]); } else if (src.canConvert()) { QVariantMap qmap = src.toMap(); mpv_node_list *list = create_list(dst, true, qmap.size()); if (!list) goto fail; list->num = qmap.size(); for (int n = 0; n < qmap.size(); n++) { list->keys[n] = dup_qstring(qmap.keys()[n]); if (!list->keys[n]) { free_node(dst); goto fail; } set(&list->values[n], qmap.values()[n]); } } else { goto fail; } return; fail: dst->format = MPV_FORMAT_NONE; } void free_node(mpv_node *dst) { switch (dst->format) { case MPV_FORMAT_STRING: delete[] dst->u.string; break; case MPV_FORMAT_NODE_ARRAY: case MPV_FORMAT_NODE_MAP: { mpv_node_list *list = dst->u.list; if (list) { for (int n = 0; n < list->num; n++) { if (list->keys) delete[] list->keys[n]; if (list->values) free_node(&list->values[n]); } delete[] list->keys; delete[] list->values; } delete list; break; } default: ; } dst->format = MPV_FORMAT_NONE; } }; /** * RAII wrapper that calls mpv_free_node_contents() on the pointer. */ struct node_autofree { mpv_node *ptr; node_autofree(mpv_node *a_ptr) : ptr(a_ptr) {} ~node_autofree() { mpv_free_node_contents(ptr); } }; #if MPV_ENABLE_DEPRECATED /** * Return the given property as mpv_node converted to QVariant, or QVariant() * on error. * * @deprecated use get_property() instead * * @param name the property name */ static inline QVariant get_property_variant(mpv_handle *ctx, const QString &name) { mpv_node node; if (mpv_get_property(ctx, name.toUtf8().data(), MPV_FORMAT_NODE, &node) < 0) return QVariant(); node_autofree f(&node); return node_to_variant(&node); } /** * Set the given property as mpv_node converted from the QVariant argument. * @deprecated use set_property() instead */ static inline int set_property_variant(mpv_handle *ctx, const QString &name, const QVariant &v) { node_builder node(v); return mpv_set_property(ctx, name.toUtf8().data(), MPV_FORMAT_NODE, node.node()); } /** * Set the given option as mpv_node converted from the QVariant argument. * * @deprecated use set_property() instead */ static inline int set_option_variant(mpv_handle *ctx, const QString &name, const QVariant &v) { node_builder node(v); return mpv_set_option(ctx, name.toUtf8().data(), MPV_FORMAT_NODE, node.node()); } /** * mpv_command_node() equivalent. Returns QVariant() on error (and * unfortunately, the same on success). * * @deprecated use command() instead */ static inline QVariant command_variant(mpv_handle *ctx, const QVariant &args) { node_builder node(args); mpv_node res; if (mpv_command_node(ctx, node.node(), &res) < 0) return QVariant(); node_autofree f(&res); return node_to_variant(&res); } #endif /** * This is used to return error codes wrapped in QVariant for functions which * return QVariant. * * You can use get_error() or is_error() to extract the error status from a * QVariant value. */ struct ErrorReturn { /** * enum mpv_error value (or a value outside of it if ABI was extended) */ int error; ErrorReturn() : error(0) {} explicit ErrorReturn(int err) : error(err) {} }; /** * Return the mpv error code packed into a QVariant, or 0 (success) if it's not * an error value. * * @return error code (<0) or success (>=0) */ static inline int get_error(const QVariant &v) { if (!v.canConvert()) return 0; return v.value().error; } /** * Return whether the QVariant carries a mpv error code. */ static inline bool is_error(const QVariant &v) { return get_error(v) < 0; } /** * Return the given property as mpv_node converted to QVariant, or QVariant() * on error. * * @param name the property name * @return the property value, or an ErrorReturn with the error code */ static inline QVariant get_property(mpv_handle *ctx, const QString &name) { mpv_node node; int err = mpv_get_property(ctx, name.toUtf8().data(), MPV_FORMAT_NODE, &node); if (err < 0) return QVariant::fromValue(ErrorReturn(err)); node_autofree f(&node); return node_to_variant(&node); } /** * Set the given property as mpv_node converted from the QVariant argument. * * @return mpv error code (<0 on error, >= 0 on success) */ static inline int set_property(mpv_handle *ctx, const QString &name, const QVariant &v) { node_builder node(v); return mpv_set_property(ctx, name.toUtf8().data(), MPV_FORMAT_NODE, node.node()); } /** * mpv_command_node() equivalent. * * @param args command arguments, with args[0] being the command name as string * @return the property value, or an ErrorReturn with the error code */ static inline QVariant command(mpv_handle *ctx, const QVariant &args) { node_builder node(args); mpv_node res; int err = mpv_command_node(ctx, node.node(), &res); if (err < 0) return QVariant::fromValue(ErrorReturn(err)); node_autofree f(&res); return node_to_variant(&res); } } } Q_DECLARE_METATYPE(mpv::qt::ErrorReturn) #endif /* else #if MPV_ENABLE_DEPRECATED */ #endif kylin-video-3.1.3/src/minimodebutton.cpp0000644000175000017500000000603214214075177016731 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "minimodebutton.h" #include #include MiniModeButton::MiniModeButton(QString iconName, QSize size, QSize iconSize, QWidget *parent): QPushButton(parent), iconName(iconName) { labIcon = new QLabel(this); setFixedSize(size); labIcon->setFixedSize(iconSize); QHBoxLayout *l = new QHBoxLayout(this); l->setContentsMargins(0,0,0,0); l->addWidget(labIcon); } MiniModeButton::~MiniModeButton() { } void MiniModeButton::resetName(QString iconName) { this->iconName = iconName; if(isBlackTheme) setBlackTheme(); else setLightTheme(); } void MiniModeButton::setLightTheme() { isBlackTheme = false; if(iconName == "") return; setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(249,249,249,120);}").arg(width()/2)); labIcon->setStyleSheet(QString("border-image:url(:/%0/%1-d.png);").arg("ico_light").arg(iconName)); } void MiniModeButton::setBlackTheme() { isBlackTheme = true; if(iconName == "") return; setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(31,32,34,120);}").arg(width()/2)); labIcon->setStyleSheet(QString("border-image:url(:/%0/%1-d.png);").arg("ico").arg(iconName)); } void MiniModeButton::enterEvent(QEvent *e) { QString icodir; if(isBlackTheme) { setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(31,32,34,154);}").arg(width()/2)); icodir = "ico"; } else { setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(249,249,249,154);}").arg(width()/2)); icodir = "ico_light"; } labIcon->setStyleSheet(QString("border-image:url(:/%0/%1-h.png);").arg(icodir).arg(iconName)); } void MiniModeButton::leaveEvent(QEvent *e) { QString icodir; if(isBlackTheme) { setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(31,32,34,120);}").arg(width()/2)); icodir = "ico"; } else { setStyleSheet(QString("QPushButton{border-radius:%0px;background-color:rgba(249,249,249,120);}").arg(width()/2)); icodir = "ico_light"; } labIcon->setStyleSheet(QString("border-image:url(:/%0/%1-d.png);").arg(icodir).arg(iconName)); } kylin-video-3.1.3/src/checkbox/0000755000175000017500000000000014214075177014755 5ustar fengfengkylin-video-3.1.3/src/checkbox/checkbox.h0000644000175000017500000000222514214075177016715 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef CHECKBOX_H #define CHECKBOX_H #include class CheckBox : public QCheckBox { Q_OBJECT public: CheckBox(QWidget *parent = nullptr); ~CheckBox(); void setText(const QString &text); void setFont(const QFont &font); private: QString m_tip; void resetText(); void resizeEvent(QResizeEvent *e) override; }; #endif // CHECKBOX_H kylin-video-3.1.3/src/checkbox/checkbox.cpp0000644000175000017500000000272714214075177017257 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "checkbox.h" CheckBox::CheckBox(QWidget *parent) : QCheckBox(parent) { } CheckBox::~CheckBox() { } void CheckBox::setText(const QString &text) { m_tip = text; resetText(); } void CheckBox::setFont(const QFont &font) { QCheckBox::setFont(font); resetText(); } void CheckBox::resetText() { QFontMetrics fontWidth(font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(m_tip, Qt::ElideRight, width() - 30); QCheckBox::setText(show_name); if (show_name.endsWith("…")) setToolTip(m_tip); else setToolTip(""); } void CheckBox::resizeEvent(QResizeEvent *e) { resetText(); QCheckBox::resizeEvent(e); } kylin-video-3.1.3/src/eventpasswidget.h0000644000175000017500000000320514214075177016554 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef EVENTPASSWIDGET_H #define EVENTPASSWIDGET_H #include #include "core/mpvtypes.h" class EventPassWidget : public QWidget { Q_OBJECT public: explicit EventPassWidget(QWidget *parent = nullptr); void setMouseUsed(bool used); signals: void mousePressed(); private slots: void playStateChange(Mpv::PlayState state); void videIdChange(int vid); private: void initGlobalSig(); bool m_mouseUsed, m_isMouseEnter, m_hasVideo; Mpv::PlayState m_playState; QTimer *m_checkMouseTimer, *m_lMouseClickTimer; protected: void mousePressEvent(QMouseEvent *e) override; void mouseMoveEvent(QMouseEvent *e) override; void mouseDoubleClickEvent(QMouseEvent *e) override; void enterEvent(QEvent *e) override; void leaveEvent(QEvent *e) override; }; #endif // EVENTPASSWIDGET_H kylin-video-3.1.3/src/contralbar.cpp0000644000175000017500000007277714214075177016046 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "contralbar.h" #include "ui_contralbar.h" #include #include #include #include #include #include #include #include #include #include #include "global/globalsignal.h" #include "global/global.h" #include "filletwidget.h" #include "previewwidget.h" using namespace Global; QString int2ts(int64_t time, bool use_msec) { if (time == 0) { return QString("--:--:--"); } // 当前是秒 time *= 1000; int64_t hour = 60*60*1000; int64_t minute = 60*1000; int64_t second = 1*1000; int64_t h = time/hour; int64_t m = time%hour/minute; int64_t s = time%minute/second; int64_t ms = time%1000; char res[16]; if(use_msec) sprintf(res, "%02ld:%02ld:%02ld.%03ld", h, m, s, ms); else sprintf(res, "%02ld:%02ld:%02ld", h, m, s); return QString(res); } ContralBar::ContralBar(QWidget *parent) : QWidget(parent), ui(new Ui::ContralBar), m_isMute(false) { ui->setupUi(this); m_speed = 1; m_seekTime = 0; m_duration = 0; m_isChangeTime = false; m_isFullScreen = false; m_isMouseEnter = false; m_isMiniMode = false; m_canChangeDuration = true; m_speedList = nullptr; m_isSeeking = false; m_seekTimer = new QTimer; m_seekTimer->setInterval(200); connect(m_seekTimer, &QTimer::timeout, this, [this](){m_isSeeking = false;}); if(g_settings->contains("General/volume")) { m_volume = g_settings->value("General/volume").toInt(); g_user_signal->setVolume(m_volume); } else { m_volume = 50; g_settings->setValue("General/volume", m_volume); } initStyle(); initConnect(); initGlobalSig(); initAnimation(); ui->slider_time->installEventFilter(this); // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } // 设置进度条为伸缩量,不设置的话会和其他控件平分剩下空间 ((QBoxLayout*)ui->widget->layout())->setStretchFactor(ui->slider_time, 1); } ContralBar::~ContralBar() { delete ui; } void ContralBar::setDuration(int duration) { m_duration = duration; ui->slider_time->setRange(0, m_duration * 100); ui->label_pos->setText(QString("00:00:00").append("/").append(int2ts(m_duration, false))); } void ContralBar::setCurrentTime(int currentTime) { if(m_isChangeTime) return; m_currentTime = currentTime; ui->slider_time->setValue(currentTime); ui->label_pos->setText(int2ts(currentTime, false).append("/").append(int2ts(m_duration, false))); } void ContralBar::setPreviewSize(QSize size) { m_previewWidget->resize(size); m_previewWidget->setMoveRange(ui->slider_time->width()); } void ContralBar::setHide() { m_volumeWidget->hide(); m_speedWidget->hide(); hide(); } void ContralBar::setShow() { if(!m_isMiniMode) show(); } void ContralBar::setBlackTheme() { m_theme = STYLE_UKUI_BLACK; ui->btn_pre->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/lastsong_d_3x.png);}" "QPushButton:hover{border-image: url(:/ico/lastsong_h_3x.png);}" "QPushButton:pressed{border-image: url(:/ico/lastsong_h_3x.png);}"); ui->btn_next->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/nextsong_d_3x.png);}" "QPushButton:hover{border-image: url(:/ico/nextsong_h_3x.png);}" "QPushButton:pressed{border-image: url(:/ico/nextsong_h_3x.png);}"); ui->btn_speed->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/nextsong_d_3x.png);}" "QPushButton:hover{border-image: url(:/ico/nextsong_h_3x.png);}" "QPushButton:pressed{border-image: url(:/ico/nextsong_h_3x.png);}"); ui->btn_tool->setStyleSheet("QPushButton:!hover{border-image: url(:/ico/icon-screenshot-symbolic-d.png);}" "QPushButton:hover{border-image: url(:/ico/icon-screenshot-symbolic-d.png);}" "QPushButton:pressed{border-image: url(:/ico/icon-screenshot-symbolic-d.png);}"); ui->label_pos->setStyleSheet("color:#ffffff;"); ui->slider_time->setBlackTheme(); m_speedList->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::!selected{background-color:rgba(1,1,1,0);color:rgb(255,255,255);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}"); updateIcon(); } void ContralBar::setLightTheme() { m_theme = STYLE_UKUI_DEFAULT; ui->btn_pre->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/lastsong-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/lastsong-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/lastsong-h.png);}"); ui->btn_next->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/nextsong-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/nextsong-h.png);}" "QPushButton:pressed{border-image: url(:/ico_light/nextsong-h.png);}"); ui->btn_speed->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/nextsong_d_3x.png);}" "QPushButton:hover{border-image: url(:/ico_light/nextsong_h_3x.png);}" "QPushButton:pressed{border-image: url(:/ico_light/nextsong_h_3x.png);}"); ui->btn_tool->setStyleSheet("QPushButton:!hover{border-image: url(:/ico_light/icon-screenshot-symbolic-d.png);}" "QPushButton:hover{border-image: url(:/ico_light/icon-screenshot-symbolic-d.png);}" "QPushButton:pressed{border-image: url(:/ico_light/icon-screenshot-symbolic-d.png);}"); ui->label_pos->setStyleSheet("color:#000000;"); ui->slider_time->setLightTheme(); m_speedList->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::!selected{background-color:rgba(1,1,1,0);color:rgb(48,49,51);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}"); updateIcon(); } void ContralBar::clearMark() { m_markMap.clear(); ui->slider_time->clearMark(); } void ContralBar::addMark(int mark_pos, QString desc) { m_markMap[mark_pos] = desc; } void ContralBar::insertMark(int mark_pos, QString desc) { m_markMap[mark_pos] = desc; ui->slider_time->addMark(mark_pos, desc); } void ContralBar::deleteMark(int mark_pos) { ui->slider_time->deleteMark(mark_pos); } void ContralBar::initGlobalSig() { // 播放状态改变 connect(g_core_signal, &GlobalCoreSignal::sigStateChange, this, &ContralBar::slotPlayStateChange); // 文件信息改变 connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ if (fi.length == 0) { ui->slider_time->setRange(0, 1); ui->slider_time->setValue(0); ui->slider_time->setEnabled(false); } m_videoId = -1; if (fi.video_params.codec.indexOf("jpeg") >= 0 || fi.video_params.codec.indexOf("png") >= 0 || fi.video_params.codec == "") { m_isVideo = false; // 设置截图不可用 m_toolList->item(0)->setFlags(Qt::NoItemFlags); } else { m_isVideo = true; m_toolList->item(0)->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled); } }); connect(g_user_signal, &GlobalUserSignal::sigNoMarkMode, this, [&](bool noMark){ m_toolList->setEnabled(!noMark); }); connect(g_core_signal, &GlobalCoreSignal::sigDuration, [&](QString file, double duration){ // 此处应该只接受一次改变,下一次只有在停止之后再去改变 if (!m_canChangeDuration) { return; } m_canChangeDuration = false; m_duration = duration; if (m_duration == 0) return; ui->slider_time->setEnabled(true); ui->slider_time->setRange(0, m_duration * 100); ui->label_pos->setText(QString("00:00:00").append("/").append(int2ts((int)m_duration, false))); QMap::iterator iter = m_markMap.begin(); while (iter != m_markMap.end()) { ui->slider_time->addMark(iter.key(), iter.value()); iter++; } }); connect(g_core_signal, &GlobalCoreSignal::sigVideoIdChange, [&](int vid){ // 打开视频全屏功能删除 m_videoId = vid; return; // 打开视频时全屏功能 if (vid >= 0 && m_videoId != vid) { if(gsetup->fullScreenWhenPlay.first) if(!m_isFullScreen) slotFullScreen(); } m_videoId = vid; if(m_videoId < 0){ ui->btn_tool->setEnabled(false); ui->btn_fullscreen->setEnabled(false); } else{ ui->btn_tool->setEnabled(true); ui->btn_fullscreen->setEnabled(true); } }); // 更新播放时间 connect(g_core_signal, &GlobalCoreSignal::sigCurrentTime, [&](double time){ if(m_isChangeTime) return; m_canChangeDuration = false; m_currentTime = time; ui->slider_time->setValue(time * 100); if (m_currentTime >= 1) ui->label_pos->setText(int2ts((int)m_currentTime, false).append("/").append(int2ts((int)m_duration, false))); }); // 音量改变 connect(g_core_signal, &GlobalCoreSignal::sigVolumeChange, [&](int volume){ if(m_state < 0) return; m_volume = volume; g_settings->setValue("General/volume", m_volume); updateIcon(); }); // 静音 connect(g_core_signal, &GlobalCoreSignal::sigMuteChange, [&](bool mute){ if(m_state < 0) return; m_isMute = mute; g_settings->setValue("General/mute", m_isMute); updateIcon(); }); // 快捷键设置静音走这里中转 connect(g_user_signal, SIGNAL(sigMute()), this, SLOT(slotMute())); // 播放速度改变 connect(g_core_signal, &GlobalCoreSignal::sigSpeedChange, [&](double speed){ if(m_state < 0) return; m_speed = speed; int row = 7-(int)(speed*4); row = row<0.2 ? 0 : row; m_speedList->setCurrentRow(row); g_settings->setValue("General/speed", m_speed); updateIcon(); }); // 主题改变 connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); // 隐藏 显示 // connect(g_user_signal, &GlobalUserSignal::sigHideBar, [&](bool is_hide){ // if(is_hide) // { // if(m_isMouseEnter) // ((QWidget*)parent())->setCursor(QCursor(Qt::ArrowCursor)); // else // { // hide(); // m_volumeWidget->hide(); // m_speedWidget->hide(); // } // } // else // { // if(!m_isMiniMode) // show(); // } // }); // 快捷键全屏 connect(g_user_signal, &GlobalUserSignal::sigFullScreen, this, &ContralBar::slotFullScreen); } void ContralBar::initStyle() { // ui->widget->layout()->addWidget(); ui->btn_next->setToolTip(tr("Next")); ui->btn_pre->setToolTip(tr("Previous")); ui->btn_play_pause->setToolTip(tr("Play")); ui->btn_volume->setToolTip(tr("Volume")); ui->btn_speed->setToolTip(tr("Speed")); ui->btn_tool->setToolTip(tr("Tools")); ui->btn_fullscreen->setToolTip(tr("Full screen")); ui->btn_next->setFixedSize(16, 16); ui->btn_play_pause->setFixedSize(16, 22); ui->btn_pre->setFixedSize(16, 16); ui->btn_fullscreen->setFixedSize(16, 16); ui->btn_speed->setFixedSize(32, 14); ui->btn_tool->setFixedSize(16, 16); ui->btn_volume->setFixedSize(16, 16); ui->btn_next->setCursor(Qt::PointingHandCursor); ui->btn_play_pause->setCursor(Qt::PointingHandCursor); ui->btn_pre->setCursor(Qt::PointingHandCursor); ui->btn_fullscreen->setCursor(Qt::PointingHandCursor); ui->btn_speed->setCursor(Qt::PointingHandCursor); ui->btn_tool->setCursor(Qt::PointingHandCursor); ui->btn_volume->setCursor(Qt::PointingHandCursor); // 音量调节界面 m_volumeWidget = new FilletWidget((QWidget*)parent()); m_volumeWidget->setRadius(4); m_volumeWidget->installEventFilter(this); m_volumeWidget->setFixedSize(30, 90); QHBoxLayout *hl_volume = new QHBoxLayout(m_volumeWidget); hl_volume->setContentsMargins(5, 10, 5, 10); m_volumeSlider = new QSlider; m_volumeSlider->setRange(0, 100); m_volumeSlider->setValue(g_settings->value("General/volume").toInt()); hl_volume->addWidget(m_volumeSlider); m_volumeWidget->hide(); // 音量调节隐藏逻辑 m_timerVolumeWidgetHide = new QTimer; m_timerVolumeWidgetHide->setSingleShot(true); connect(m_timerVolumeWidgetHide, &QTimer::timeout, [&](){m_volumeWidget->hide();}); m_timerVolumeWidgetHide->setInterval(500); // 倍速调节界面 m_speedWidget = new FilletWidget((QWidget*)parent()); m_speedWidget->setRadius(4); m_speedWidget->setFixedSize(56, 150); m_speedWidget->installEventFilter(this); QHBoxLayout *hl_speed = new QHBoxLayout(m_speedWidget); hl_speed->setContentsMargins(0, 0, 0, 0); m_speedList = new QListWidget; connect(m_speedList, &QListWidget::itemClicked, [&](QListWidgetItem *item){ QString test = item->text(); m_speed = test.left(test.length()-1).toDouble(); g_user_signal->setSpeed(m_speed); }); hl_speed->addWidget(m_speedList); initSpeedList(); m_speedWidget->hide(); m_timerSpeedWidgetHide = new QTimer; m_timerSpeedWidgetHide->setSingleShot(true); connect(m_timerSpeedWidgetHide, &QTimer::timeout, [&](){m_speedWidget->hide();}); m_timerSpeedWidgetHide->setInterval(500); // 工具界面 m_toolWidget = new FilletWidget((QWidget*)parent()); m_toolWidget->setRadius(4); m_toolWidget->setFixedSize(105, 52); m_toolWidget->installEventFilter(this); QHBoxLayout *hl_tool = new QHBoxLayout(m_toolWidget); hl_tool->setContentsMargins(0, 0, 0, 0); m_toolList = new QListWidget; m_toolList->setAlternatingRowColors(false); connect(m_toolList, &QListWidget::itemClicked, [&](QListWidgetItem *item){ item->setSelected(false); if (item->text() == tr("Screen shot")) { // 截图 g_user_signal->screenShot(false); } else { // 添加书签, 现在没有书签描述 // 判断是否无痕浏览,如果无痕浏览不能添加书签 if (!gsetup->seamlessBrowsing.first) g_user_signal->addBookMark(""); } }); hl_tool->addWidget(m_toolList); initToolList(); m_toolWidget->hide(); m_timerToolWidgetHide = new QTimer; m_timerToolWidgetHide->setSingleShot(true); connect(m_timerToolWidgetHide, &QTimer::timeout, [&](){m_toolWidget->hide();}); m_timerToolWidgetHide->setInterval(500); ui->btn_volume->installEventFilter(this); ui->btn_speed->installEventFilter(this); ui->btn_tool->installEventFilter(this); // 视频预览 m_previewWidget = new PreviewWidget((QWidget*)parent()); // 初始值设置为进度条的长度,当前为固定值 // m_previewWidget->setGeometry(0, 0, ((QWidget*)parent())->width(), ((QWidget*)parent())->height()); m_previewWidget->setHide(); m_previewWidget->raise(); raise(); } /** ********************************************** * 初始化控件槽函数 *************************************************/ void ContralBar::initConnect() { connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); }); connect(m_volumeSlider, &QSlider::valueChanged, [&](int volume){ m_volume = volume; g_user_signal->setVolume(m_volume); }); // connect(ui->slider_time, &TimeSlider::valueChange, [&](int value){ // if(m_isChangeTime) // m_seekTime = value / 100; // }); connect(ui->slider_time, &TimeSlider::sliderMoved, [&](int value){ // if(m_isChangeTime) // 最后一次的时间必须要更新 m_seekTime = value / 100; if (m_isSeeking) return; m_isSeeking = true; m_seekTimer->stop(); m_seekTimer->start(); QTimer::singleShot(200, [=](){ g_user_signal->seek(m_seekTime); }); }); connect(ui->btn_play_pause, &QPushButton::clicked, [&](){ if(m_state == Mpv::Playing) g_user_signal->pause(); else if(m_state == Mpv::Paused) g_user_signal->play(); }); connect(ui->btn_pre, &QPushButton::clicked, [&](){ g_user_signal->playPrev(true); }); connect(ui->btn_next, &QPushButton::clicked, [&](){ g_user_signal->playNext(true); }); connect(ui->btn_fullscreen, &QPushButton::clicked, this, &ContralBar::slotFullScreen); connect(ui->btn_volume, &QPushButton::clicked, this, &ContralBar::slotMute); connect(ui->slider_time, &TimeSlider::mousePosChange, this, &ContralBar::slotShowPreview); connect(ui->slider_time, &TimeSlider::mouseLeave, [this](){ m_previewWidget->setHide(); }); } void ContralBar::initAnimation() { // 透明度动画不生效 m_showAnm = new QPropertyAnimation(this, "windowOpacity"); m_showAnm->setDuration(200); m_hideAnm = new QPropertyAnimation(this, "windowOpacity"); m_hideAnm->setDuration(200); } /** ********************************************** * 速度选择列表,需要做主题适配 *************************************************/ void ContralBar::initSpeedList() { QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); m_speedList->setFont(f); // 先设置背景,透明就行 m_speedList->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}"); m_speedList->clear(); m_speedList->addItems(QStringList() << tr("2.0X") << tr("1.5X") << tr("1.25X") << tr("1.0X") << tr("0.75X") << tr("0.5X")); // 初始化的时候设置 m_speed = g_settings->value("General/speed").toDouble(); if(m_speed == 0) { m_speed = 1.0; g_settings->setValue("General/speed", m_speed); } for(int i=0; icount(); i++) { QListWidgetItem *it = m_speedList->item(i); it->setTextAlignment(Qt::AlignCenter); it->setSizeHint(QSize(52, 24)); QString test = it->text(); if(test.left(test.length()-1).toDouble() == m_speed) it->setSelected(true); } updateIcon(); } void ContralBar::initToolList() { QFont f("Noto Sans CJK SC Regular"); f.setPixelSize(16); m_toolList->setFont(f); // 先设置背景,透明就行 m_toolList->setStyleSheet("QListWidget{background-color: rgba(255, 255, 255, 0);}" "QListWidget::item::selected{background-color:rgba(1,1,1,0);color:rgb(55,144,250);}"); m_toolList->clear(); m_toolList->addItems(QStringList() << tr("Screen shot") << tr("Add mark")); for (int i=0; icount(); i++) { m_toolList->item(i)->setTextAlignment(0x0004); } } void ContralBar::updateIcon() { // 更新播放按钮 QString ico_dir, ico; if(m_theme == STYLE_UKUI_DEFAULT) ico_dir = "ico_light"; else ico_dir = "ico"; if(m_state == Mpv::Playing) { ico = "suspend"; ui->btn_play_pause->setToolTip(tr("Pause")); } else { ico = "play"; ui->btn_play_pause->setToolTip(tr("Play")); } ui->btn_play_pause->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/%2-d.png);}" "QPushButton:hover{border-image: url(:/%1/%2-h.png);}" "QPushButton:pressed{border-image: url(:/%1/%2-h.png);}") .arg(ico_dir).arg(ico)); // 更新音量按钮 m_volume = g_settings->value("General/volume").toInt(); m_isMute = g_settings->value("General/mute").toBool(); m_volumeSlider->setValue(m_volume); if(m_volume == 0 || m_isMute) ico = "muted"; else if(m_volume < 50) ico = "medium"; else ico = "high"; ui->btn_volume->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/audio-volume-%2-symbolic-d.png);}" "QPushButton:hover{border-image: url(:/%1/audio-volume-%2-symbolic-h.png);}" "QPushButton:pressed{border-image: url(:/%1/audio-volume-%2-symbolic-h.png);}") .arg(ico_dir).arg(ico)); // 倍速播放按钮 视频播放开始倍速都默认为1 ui->btn_speed->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/%2X-d.png);}" "QPushButton:hover{border-image: url(:/%1/%2X-h.png);}" "QPushButton:pressed{border-image: url(:/%1/%2X-h.png);}") .arg(ico_dir).arg(m_speed)); // 全屏按钮 if(m_isFullScreen) { ico = "restore"; ui->btn_fullscreen->setToolTip(tr("Exit full screen")); } else { ui->btn_fullscreen->setToolTip(tr("Full screen")); ico = "fullscreen"; } ui->btn_fullscreen->setStyleSheet(QString("QPushButton:!hover{border-image: url(:/%1/icon-%2-d.png);}" "QPushButton:hover{border-image: url(:/%1/icon-%2-h.png);}" "QPushButton:pressed{border-image: url(:/%1/icon-%2-h.png);}") .arg(ico_dir).arg(ico)); } bool ContralBar::eventFilter(QObject *target, QEvent *event) { if(target == ui->slider_time) { // if(event->type() == QEvent::MouseButtonPress) // { // m_isChangeTime = true; // } // else if(event->type() == QEvent::MouseButtonRelease && m_isChangeTime) // { // g_user_signal->seek(m_seekTime); // m_isChangeTime = false; // } } else if(target == m_volumeWidget) { if(event->type() == QEvent::Leave) { m_timerVolumeWidgetHide->start(); m_isMouseEnter = false; emit sigCanHide(true); } else if(event->type() == QEvent::Enter) { m_timerVolumeWidgetHide->stop(); m_isMouseEnter = true; emit sigCanHide(false); } } else if(target == m_speedWidget) { if(event->type() == QEvent::Leave) { m_timerSpeedWidgetHide->start(); m_isMouseEnter = false; emit sigCanHide(true); } else if(event->type() == QEvent::Enter) { m_timerSpeedWidgetHide->stop(); m_isMouseEnter = true; emit sigCanHide(false); } } else if(target == m_toolWidget) { if(event->type() == QEvent::Leave) { m_timerToolWidgetHide->start(); m_isMouseEnter = false; emit sigCanHide(true); } else if(event->type() == QEvent::Enter) { m_timerToolWidgetHide->stop(); m_isMouseEnter = true; emit sigCanHide(false); } } else if(target == ui->btn_speed) { if(event->type() == QEvent::Leave) { m_timerSpeedWidgetHide->start(); } else if(event->type() == QEvent::Enter) { m_volumeWidget->hide(); m_toolWidget->hide(); m_speedWidget->show(); m_timerSpeedWidgetHide->stop(); } } else if(target == ui->btn_volume) { if(event->type() == QEvent::Leave) { m_timerVolumeWidgetHide->start(); } else if(event->type() == QEvent::Enter) { m_speedWidget->hide(); m_toolWidget->hide(); m_volumeWidget->show(); m_timerVolumeWidgetHide->stop(); } } else if (target == ui->btn_tool) { if(event->type() == QEvent::Leave) { m_timerToolWidgetHide->start(); } else if(event->type() == QEvent::Enter) { m_speedWidget->hide(); m_volumeWidget->hide(); m_toolWidget->show(); m_timerToolWidgetHide->stop(); } } return QWidget::eventFilter(target, event); } void ContralBar::moveEvent(QMoveEvent *event) { // 位置写为固定相对位置, 152和129为手动调试测出来的,可能不精确. m_volumeWidget->move(x()+width()-152, y()-2-m_volumeWidget->height()); m_speedWidget->move(x()+width()-129, y()-2-m_speedWidget->height()); m_toolWidget->move(x()+width()-110, y()-2-m_toolWidget->height()); return QWidget::moveEvent(event); } void ContralBar::leaveEvent(QEvent *event) { m_isMouseEnter = false; emit sigCanHide(true); } void ContralBar::showEvent(QShowEvent *event) { m_previewWidget->setMoveRange(ui->slider_time->width()); } void ContralBar::enterEvent(QEvent *event) { m_isMouseEnter = true; emit sigCanHide(false); } /** ********************************** * 播放暂停 *************************************/ void ContralBar::on_btn_play_pause_clicked() { switch (m_state) { case Mpv::Playing: g_user_signal->pause(); break; case Mpv::Paused: g_user_signal->play(); break; default: break; } } /** ********************************** * 全屏/非全屏 *************************************/ void ContralBar::slotFullScreen() { if (m_isFullScreen) { m_isFullScreen = false; } else { m_isFullScreen = true; } emit sigFullScreen(m_isFullScreen); updateIcon(); return; } void ContralBar::slotMute() { g_user_signal->setMute(!m_isMute); } void ContralBar::slotShowPreview(int _time) { if (m_videoId < 0 || !m_isVideo) { QString str_time; QTime time = QTime::fromMSecsSinceStartOfDay(_time * 1000); if(_time >= 3600) // hours str_time = time.toString("h:mm:ss"); else if(_time >= 60) // minutes str_time = time.toString("mm:ss"); else str_time = time.toString("0:ss"); ui->slider_time->setTimeTip(str_time); } else { ui->slider_time->setTimeTip(""); if (m_duration == 0) return; // 防止一直获取占用过多cpu,但是要保证最后获取的时间正确 int64_t tmp_time = QDateTime::currentMSecsSinceEpoch(); if (tmp_time - m_lastPreviewShowTime < 300) { return; } m_lastPreviewShowTime = tmp_time; m_previewWidget->setPreview(_time); } } void ContralBar::slotPlayStateChange(Mpv::PlayState state) { m_state = state; switch (m_state) { case Mpv::Idle: break; case Mpv::Started: // 如果是无痕浏览的话不能截图和添加书签 if (gsetup->seamlessBrowsing.first) m_toolList->setEnabled(false); else m_toolList->setEnabled(true); break; case Mpv::Loaded: m_canChangeDuration = true; break; case Mpv::Playing: updateIcon(); break; case Mpv::Paused: updateIcon(); break; case Mpv::Stopped: m_videoId = -1; m_duration = 0; ui->slider_time->clearMark(); ui->label_pos->setText("--:--:--/--:--:--"); updateIcon(); break; default: break; } } kylin-video-3.1.3/src/mediainfodialog.cpp0000644000175000017500000000544614214075177017017 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "mediainfodialog.h" #include "ui_mediainfodialog.h" #include #include #include #include "global/global.h" #include "global/globalsignal.h" #include "global/xatom-helper.h" MediaInfoDialog::MediaInfoDialog(QWidget *parent) : QDialog(parent), ui(new Ui::MediaInfoDialog) { ui->setupUi(this); setFixedSize(376, 352); ui->btn_icon->setFixedSize(QSize(26,26)); ui->btn_icon->setIconSize(QSize(26,26)); ui->btn_icon->setIcon(QIcon::fromTheme("kylin-video")); ui->btn_icon->setStyleSheet("QPushButton{border:0px;background:transparent;}" "QPushButton::hover{border:0px;background:transparent;}" "QPushButton::pressed{border:0px;background:transparent;}"); // ui->textBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); installEventFilter(this); MotifWmHints hints1; hints1.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints1.functions = MWM_FUNC_ALL; hints1.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints1); } MediaInfoDialog::~MediaInfoDialog() { delete ui; } void MediaInfoDialog::setData(QString data) { ui->textBrowser->setText(data); } void MediaInfoDialog::ukuiMove() { UKUIDecorationManager::getInstance()->moveWindow(this->windowHandle()); } void MediaInfoDialog::on_pushButton_clicked() { hide(); } bool MediaInfoDialog::eventFilter(QObject *watched, QEvent *event) { if(Global::isWayland) { if(watched == this) { if (event->type() == QEvent::MouseButtonPress){ auto mouseEvent = static_cast(event); if (mouseEvent->buttons() & Qt::LeftButton) { ukuiMove(); } } } } return false; } void MediaInfoDialog::showEvent(QShowEvent *event) { // 背景模糊 KWindowEffects::enableBlurBehind(winId(), true); return QDialog::showEvent(event); } kylin-video-3.1.3/src/main.cpp0000644000175000017500000001042314214075177014617 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include #include #include #include #include #include #include #include #include "mainwidget.h" #include "global/global.h" #include "global/paths.h" #include "global/functions.h" #include #include #include #include "elog.h" #include "elog_file.h" using namespace Global; static ElogFileCfg *cfg = new ElogFileCfg; void initLog(){ // 初始化 log elog_init(); cfg->name = (char*)Paths::logPath().append("/kylin-video.log").toUtf8().constData(); cfg->max_size = 1024 * 1024; cfg->max_rotate = 5; elog_file_config(cfg); elog_set_fmt(ELOG_LVL_ASSERT, ELOG_FMT_ALL); elog_set_fmt(ELOG_LVL_ERROR, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME ); elog_set_fmt(ELOG_LVL_WARN, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME ); elog_set_fmt(ELOG_LVL_INFO, ELOG_FMT_LVL | ELOG_FMT_TAG | ELOG_FMT_TIME ); elog_set_fmt(ELOG_LVL_DEBUG, ELOG_FMT_ALL & ~ELOG_FMT_FUNC); elog_set_fmt(ELOG_LVL_VERBOSE, ELOG_FMT_ALL & ~ELOG_FMT_FUNC); elog_set_text_color_enabled(false); elog_start(); if (Functions::isKirinCpu()) { int logfd = open((char*)Paths::logPath().append("/terminal.log").toUtf8().constData(), O_RDWR | O_CREAT | O_APPEND, 0644); assert(-1 != logfd); close(STDERR_FILENO); dup2(logfd, STDERR_FILENO); close(logfd); openlog(NULL, LOG_PERROR, LOG_DAEMON); } initUkuiLog4qt("kylin-video"); } int main(int argc, char **argv) { initLog(); if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland") { qputenv("QT_QPA_PLATFORM", "wayland"); } else { #if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)) QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); #endif } QApplication a(argc, argv); a.setWindowIcon(QIcon::fromTheme("kylin-video")); Global::global_init(); QFile qss(":/qss/style.qss"); if (!qss.open(QIODevice::ReadOnly)) { qWarning("Can't open the style sheet file: :/qss/res/style.qss."); } else { qApp->setStyleSheet(qss.readAll()); qss.close(); } QStringList arg_list; for(int i=1; iremoveHeaderBar(w.windowHandle()); UKUIDecorationManager::getInstance()->setCornerRadius(w.windowHandle(), 12, 12, 12, 12); // 显示在屏幕中间 #if 0 QDBusInterface wayland("org.ukui.SettingsDaemon", "/org/ukui/SettingsDaemon/wayland", "org.ukui.SettingsDaemon.wayland"); QDBusReply reX = wayland.call("x"); QDBusReply reWidth = wayland.call("width"); QDBusReply reHeight = wayland.call("height"); PlasmaShellManager::getInstance()->setPos(w.windowHandle(), QPoint(reX + (reWidth-w.width())/2, (reHeight-w.height())/2)); #else int sw = QGuiApplication::primaryScreen()->availableGeometry().width(); int sh = QGuiApplication::primaryScreen()->availableGeometry().height(); PlasmaShellManager::getInstance()->setPos(w.windowHandle(), QPoint((sw-w.width())/2, (sh-w.height())/2)); #endif } return a.exec(); } kylin-video-3.1.3/src/kmenu.cpp0000644000175000017500000013341114214075177015015 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "kmenu.h" #include #include #include #include #include #include #include #include #include #include #include #include #include "global/global.h" #include "kaction.h" #include "global/extensions.h" #include "global/globalsignal.h" #include using namespace Global; KMenu::KMenu(QWidget *parent): QMenu(parent) { initStyle(); setMouseTracking(true); } void KMenu::addAct(QAction *act) { addAction(act); } void KMenu::initStyle() { setMinimumWidth(MENUWIDTH); // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); } void KMenu::setBlackTheme() { if(!isWayland) return; setStyleSheet("QMenu{background-color:rgb(61,61,65);border-radius:8px;padding:4px 0px;margin:4px 4px;}" "QMenu::item { \ color: rgb(210, 210, 210); \ background-color: transparent; \ border-radius: 4px; \ padding:6px 1px; /*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/ \ padding-left: 25px;\ margin:0px 3px; /*设置菜单项的外边距*/ \ } \ QMenu::separator { \ height: 1px; \ background: rgb(100,100,100); \ margin-left: 10px; \ margin-right: 10px; \ }\ QMenu::item:!enabled{color: rgb(155, 155, 155);}\ QMenu::item:selected { /* when user selects item using mouse or keyboard */ \ background-color: rgb(72,72,76);/*这一句是设置菜单项鼠标经过选中的样式*/ \ }"); } void KMenu::setLightTheme() { if(!isWayland) return; setStyleSheet("QMenu{background-color:rgb(255,255,255);border-radius:8px;padding:4px 0px;margin:4px 4px;}" "QMenu::item { \ color: rgb(48,49,51); \ background-color: transparent; \ border-radius: 4px; \ padding:6px 1px;/*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/ \ padding-left: 25px;\ margin:0px 3px;/*设置菜单项的外边距*/ \ } \ QMenu::separator { \ height: 1px; \ background: rgb(100,100,100); \ margin-left: 10px; \ margin-right: 10px; \ } \ QMenu::item:!enabled{color: rgb(155, 155, 155);} \ QMenu::item:selected { /* when user selects item using mouse or keyboard */ \ background-color: rgb(247,247,247);/*这一句是设置菜单项鼠标经过选中的样式*/ \ }"); } void KMenu::showEvent(QShowEvent *e) { } KRightClickMenu::KRightClickMenu(QWidget *parent): KMenu(parent) { createOpenMenu(); createSetTopAction(); createPlayOrderMenu(); createFrameMenu(); createAudioMenu(); createSubMenu(); createPlayMenu(); createPlayerSetAction(); createMediaInfoAction(); // addMenu(menu_open); addAction(act_openFile); addAction(act_openDirectory); addAction(act_setTop); addMenu(menu_playOrder); addMenu(menu_frame); addMenu(menu_audio); addMenu(menu_subtitle); addMenu(menu_play); addAction(act_playerSet); addAction(act_MediaInfo); initGlobalSig(); // 初始化的时候设置一些按钮不可用,此些功能只有在播放时可用 act_MediaInfo->setEnabled(false); act_showInfo->setEnabled(false); act_defaultChannel->setEnabled(false); act_stereo->setEnabled(false); act_leftChannel->setEnabled(false); act_rightChannel->setEnabled(false); act_playPause->setEnabled(false); act_playForward->setEnabled(false); act_playBackward->setEnabled(false); } /** ******************************************** * 创建打开菜单 ***********************************************/ void KRightClickMenu::createOpenMenu() { // menu_open = new KMenu(parentWidget()); // menu_open->menuAction()->setText(tr("Open")); act_openFile = new KAction(QKeySequence(g_settings->value("action/open file").toString()), nullptr, "open_file"); connect(act_openFile, &KAction::triggered, [this](){emit sigOpenFile();}); act_openFile->change(tr("Open &File...")); gshortCut->registerAction(tr("open file"), act_openFile); act_openDirectory = new KAction(QKeySequence(g_settings->value("action/open dir").toString()), nullptr, "open_directory"); connect(act_openDirectory, &KAction::triggered, [this](){emit sigOpenDir();}); act_openDirectory->change(tr("Open &Directory...")); gshortCut->registerAction(tr("open dir"), act_openDirectory); // act_openURL = new KAction(QKeySequence("Ctrl+U"), nullptr, "open_url" ); // connect(act_openURL, &KAction::triggered, [this](){emit sigOpenUrl();}); // act_openURL->change(tr("&URL...")); // menu_open->addAction(act_openFile); // menu_open->addAction(act_openDirectory); // menu_open->addAction(act_openURL); } /** ******************************************** * 创建置顶动作 ***********************************************/ void KRightClickMenu::createSetTopAction() { act_setTop = new KAction(QKeySequence(g_settings->value("action/to top").toString()), nullptr, "to_top"); act_setTop->setCheckable(true); gshortCut->registerAction(tr("to top"), act_setTop); // 初始化的时候读取配置文件查看是否置顶 bool ini_onTop = g_settings->value("General/is_on_top").toBool(); act_setTop->setChecked(ini_onTop); if(ini_onTop) QTimer::singleShot(500, [&](){emit sigToTop(act_setTop->isChecked());}); connect(act_setTop, &KAction::triggered, [this](){ g_settings->setValue("General/is_on_top", act_setTop->isChecked()); emit sigToTop(act_setTop->isChecked()); }); act_setTop->change(tr("ToTop")); } /** ******************************************** * 创建播放顺序菜单 ***********************************************/ void KRightClickMenu::createPlayOrderMenu() { menu_playOrder = new KMenu(parentWidget()); menu_playOrder->menuAction()->setText(tr("Order")); act_oneLoop = new KAction(nullptr, "one_loop"); act_oneLoop->change(tr("One Loop")); act_oneLoop->setData(ONE_LOOP); act_sequence = new KAction( nullptr, "sequence"); act_sequence->change(tr("Sequence")); act_sequence->setData(SEQUENCE); act_listLoop = new KAction(nullptr, "list_loop" ); act_listLoop->change(tr("List loop")); act_listLoop->setData(LIST_LOOP); act_random = new KAction(nullptr, "random" ); act_random->change(tr("Random")); act_random->setData(RANDOM); act_oneLoop->setCheckable(true); act_sequence->setCheckable(true); act_listLoop->setCheckable(true); act_random->setCheckable(true); menu_playOrder->addAction(act_oneLoop); // menu_playOrder->addAction(act_sequence); menu_playOrder->addAction(act_listLoop); menu_playOrder->addAction(act_random); group_playOrder = new QActionGroup(nullptr); group_playOrder->addAction(act_oneLoop); group_playOrder->addAction(act_sequence); group_playOrder->addAction(act_listLoop); group_playOrder->addAction(act_random); connect(group_playOrder, &QActionGroup::triggered, [&](QAction *act){ if(act == act_oneLoop) g_user_signal->setPlayOrder(ONE_LOOP); else if(act == act_sequence) g_user_signal->setPlayOrder(SEQUENCE); else if(act == act_listLoop) g_user_signal->setPlayOrder(LIST_LOOP); else if(act == act_random) g_user_signal->setPlayOrder(RANDOM); }); int playOrderIndex = g_settings->value("General/play_order").toInt(); g_user_signal->setPlayOrder((PlayOrder)playOrderIndex); int i = 0; for(auto act : menu_playOrder->actions()) { if(i == playOrderIndex) { act->setChecked(true); break; } i++; } } /** ******************************************** * 创建视频画面菜单 ***********************************************/ void KRightClickMenu::createFrameMenu() { menu_frame = new KMenu(parentWidget()); menu_frame->menuAction()->setText(tr("Frame")); // ==================================画面比例================================== act_defaultFrame = new KAction(nullptr, "default_frame"); connect(act_defaultFrame, &KAction::triggered, [this](){emit sigDefaultFrame();}); act_defaultFrame->change(tr("Default frame")); act_4div3Frame = new KAction(nullptr, "4_div_3"); connect(act_4div3Frame, &KAction::triggered, [this](){emit sig4Div3Frame();}); act_4div3Frame->change(tr("4:3")); act_16div9Frame = new KAction(nullptr, "16_div_9"); connect(act_16div9Frame, &KAction::triggered, [this](){emit sig16Div9Frame();}); act_16div9Frame->change(tr("16:9")); act_fullFrame = new KAction(nullptr, "full_frame"); connect(act_fullFrame, &KAction::triggered, [this](){emit sigFullFrame();}); act_fullFrame->change(tr("Full frame")); group_frameScale = new QActionGroup(nullptr); group_frameScale->addAction(act_defaultFrame); group_frameScale->addAction(act_4div3Frame); group_frameScale->addAction(act_16div9Frame); group_frameScale->addAction(act_fullFrame); connect(group_frameScale, &QActionGroup::triggered, [&](QAction *act){ if(act == act_defaultFrame) g_user_signal->setAspect(Mpv::AUTO); else if(act == act_4div3Frame) g_user_signal->setAspect(Mpv::DIV_4_3); else if(act == act_16div9Frame) g_user_signal->setAspect(Mpv::DIV_16_9); else if(act == act_fullFrame) g_user_signal->setAspect(Mpv::FULL); }); act_defaultFrame->setCheckable(true); act_4div3Frame->setCheckable(true); act_16div9Frame->setCheckable(true); act_fullFrame->setCheckable(true); act_defaultFrame->setChecked(true); // ==================================画面比例================================== act_restoreFrame = new KAction(QKeySequence(g_settings->value("action/" + tr("restore frame")).toString()), nullptr, "restore_frame"); connect(act_restoreFrame, &KAction::triggered, [this](){ g_user_signal->restoreFrame(); act_defaultFrame->setChecked(true); emit sigRestoreFrame(); }); act_restoreFrame->change(tr("restore frame")); act_alongRotate = new KAction(QKeySequence(g_settings->value("action/" + tr("forward rotate")).toString()), nullptr, "along_rotate"); connect(act_alongRotate, &KAction::triggered, [this](){ g_user_signal->clockwiseRotate(); emit sigAlongRotate(); }); act_alongRotate->change(tr("Along rotate")); gshortCut->registerAction(tr("forward rotate"), act_alongRotate); act_inverseRotate = new KAction(QKeySequence(g_settings->value("action/" + tr("backward rotate")).toString()), nullptr, "inverse_rotate"); connect(act_inverseRotate, &KAction::triggered, [this](){ g_user_signal->counterClockwiseRotate(); emit sigInverseRotate(); }); act_inverseRotate->change(tr("Inverse rotate")); gshortCut->registerAction(tr("backward rotate"), act_inverseRotate); act_flipHorizontally = new KAction(QKeySequence(g_settings->value("action/" + tr("horizontal flip")).toString()), nullptr, "horizontally_flip"); connect(act_flipHorizontally, &KAction::triggered, [this](){g_user_signal->horizontallyFlip();}); act_flipHorizontally->change(tr("Horizontally flip")); gshortCut->registerAction(tr("horizontal flip"), act_flipHorizontally); act_flipVertically = new KAction(QKeySequence(g_settings->value("action/" + tr("vertical flip")).toString()), nullptr, "vertically_flip"); connect(act_flipVertically, &KAction::triggered, [this](){g_user_signal->verticalFlip();}); act_flipVertically->change(tr("Vertically flip")); gshortCut->registerAction(tr("vertical flip"), act_flipHorizontally); act_showInfo = new KAction(nullptr, "show_profile"); connect(act_showInfo, &KAction::triggered, [this](bool checked){ g_user_signal->showInfo(checked); }); act_showInfo->change(tr("Show profile")); act_showInfo->setCheckable(true); menu_frame->addAction(act_defaultFrame); menu_frame->addAction(act_4div3Frame); menu_frame->addAction(act_16div9Frame); menu_frame->addAction(act_fullFrame); menu_frame->addSeparator(); menu_frame->addAction(act_restoreFrame); menu_frame->addAction(act_alongRotate); menu_frame->addAction(act_inverseRotate); menu_frame->addAction(act_flipHorizontally); menu_frame->addAction(act_flipVertically); menu_frame->addAction(act_showInfo); } /** ******************************************** * 创建声音菜单 ***********************************************/ void KRightClickMenu::createAudioMenu() { menu_audio = new KMenu(parentWidget()); menu_audio->menuAction()->setText(tr("Audio")); act_audioTrack = new KMenu(parentWidget()); act_audioTrack->menuAction()->setText(tr("AudioTrack")); act_audioTrack->setEnabled(false); group_audio = new QActionGroup(nullptr); connect(group_audio, &QActionGroup::triggered, [&](QAction* act){ g_user_signal->setAudioId(act->data().toInt()); }); addAudioTrack("aaa", -1); act_audioChannel = new KMenu(parentWidget()); act_audioChannel->menuAction()->setText(tr("AudioChannel")); act_defaultChannel = new KAction(QKeySequence("/"), nullptr, "defalut"); connect(act_defaultChannel, &KAction::triggered, [this](){ emit sigDefalutChannel(); g_user_signal->setChannel(Mpv::Default); }); act_defaultChannel->change(tr("Default")); act_stereo = new KAction(QKeySequence("/"), nullptr, "stereo"); connect(act_stereo, &KAction::triggered, [this](){ emit sigStereo(); g_user_signal->setChannel(Mpv::Stereo); }); act_stereo->change(tr("Stereo")); act_leftChannel = new KAction(QKeySequence(","), nullptr, "left_channel"); connect(act_leftChannel, &KAction::triggered, [this](){ emit sigLeftChannel(); g_user_signal->setChannel(Mpv::Left); }); act_leftChannel->change(tr("Left channel")); act_rightChannel = new KAction(QKeySequence("."), nullptr, "right_channel"); connect(act_rightChannel, &KAction::triggered, [this](){ emit sigRightChannel(); g_user_signal->setChannel(Mpv::Right); }); act_rightChannel->change(tr("Right channel")); { // 设置声道选择可选 act_stereo->setCheckable(true); act_leftChannel->setCheckable(true); act_rightChannel->setCheckable(true); act_audioChannel->addAction(act_stereo); act_audioChannel->addAction(act_leftChannel); act_audioChannel->addAction(act_rightChannel); group_channel = new QActionGroup(nullptr); group_channel->addAction(act_stereo); group_channel->addAction(act_leftChannel); group_channel->addAction(act_rightChannel); // 通过配置文件看设置什么声道 switch (gsetup->audioChannel.first) { case 0: act_stereo->setChecked(true); break; case 1: act_leftChannel->setChecked(true); break; case 2: act_rightChannel->setChecked(true); break; default: break; } } act_audioSet = new KAction(nullptr, "audio_set"); connect(act_audioSet, &KAction::triggered, [this](){g_user_signal->showSetup(4);}); act_audioSet->change(tr("Audio set")); menu_audio->addMenu(act_audioTrack); menu_audio->addMenu(act_audioChannel); menu_audio->addAction(act_audioSet); } /** ******************************************** * 创建字幕菜单 ***********************************************/ void KRightClickMenu::createSubMenu() { menu_subtitle = new KMenu(parentWidget()); menu_subtitle->menuAction()->setText(tr("Subtitle")); act_loadSubtitle = new KAction(QKeySequence(g_settings->value("action/sub load").toString()), nullptr, "load_subtitle"); gshortCut->registerAction(tr("sub load"), act_loadSubtitle); connect(act_loadSubtitle, &KAction::triggered, [this](){ if (!act_loadSubtitle->isEnabled()) return; Extensions e; #if 1 QString fileName; { QFileDialog fd(parentWidget()); fd.setModal(true); QList list = fd.sidebarUrls(); int sidebarNum = 8; QString home = QDir::homePath().section("/", -1, -1); QString mnt = "/media/" + home + "/"; QDir mntDir(mnt); mntDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList filist = mntDir.entryInfoList(); QList mntUrlList; for(int i=0; i < sidebarNum && i < filist.size(); i++) { QFileInfo fi = filist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } QFileSystemWatcher fsw(&fd); fsw.addPath("/media/" + home + "/"); connect(&fsw, &QFileSystemWatcher::directoryChanged, &fd, [=, &sidebarNum, &mntUrlList, &list, &fd](const QString path){ QDir wmnDir(path); wmnDir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); QFileInfoList wfilist = wmnDir.entryInfoList(); mntUrlList.clear(); for(int i=0; i < sidebarNum && i < wfilist.size(); ++i) { QFileInfo fi = wfilist.at(i); //华为990、9a0需要屏蔽最小系统挂载的目录 if (fi.fileName() == "2691-6AB8") continue; mntUrlList << QUrl("file://" + fi.filePath()); } qDebug() << list + mntUrlList; fd.setSidebarUrls(list + mntUrlList); fd.update(); }); connect(&fd, &QFileDialog::finished, &fd, [=, &list, &fd](){ fd.setSidebarUrls(list); }); fd.setSidebarUrls(list + mntUrlList); fd.setDirectory(QDir(gsetup->subDir.first)); fd.setWindowTitle(tr("Video Player Choose a file")); fd.setNameFilters(QStringList() << tr("Subtitles") + e.subtitles().forFilter()); gshortCut->makeAllInvalid(); if(fd.exec() == QFileDialog::Accepted) { fileName = fd.selectedFiles().at(0); qDebug() << fileName; } gshortCut->makeAllValid(); } #else QString fileName = QFileDialog::getOpenFileName( nullptr, tr("Video Player Choose a file"), gsetup->subDir.first, tr("Subtitles") + e.subtitles().forFilter()+ ";;" + tr("All files") +" (*.*)" ); #endif if(fileName == "") return; g_user_signal->addSub(fileName); }); act_loadSubtitle->change(tr("Load subtitle")); menu_subtitle->addAction(act_loadSubtitle); menu_subtitleSelect = new KMenu(parentWidget()); menu_subtitleSelect->setToolTipsVisible(true); menu_subtitleSelect->menuAction()->setText(tr("Subtitle select")); menu_subtitle->addMenu(menu_subtitleSelect); act_noSubtitle = new KAction(nullptr, "no_subtitle"); connect(act_noSubtitle, &KAction::triggered, [this](){emit sigNoSubtitle();}); act_noSubtitle->change(tr("No subtitle")); act_noSubtitle->setCheckable(true); act_noSubtitle->setChecked(true); menu_subtitleSelect->addAction(act_noSubtitle); group_sub = new QActionGroup(nullptr); group_sub->addAction(act_noSubtitle); act_noSubtitle->setData(0); connect(group_sub, &QActionGroup::triggered, [&](QAction* act){ g_user_signal->setSubId(act->data().toInt()); }); act_matchSubtitle = new KAction(nullptr, "match_subtitle"); connect(act_matchSubtitle, &KAction::triggered, [this](){emit sigMatchSubtitle();}); act_matchSubtitle->change(tr("Match subtitle")); // menu_subtitle->addAction(act_matchSubtitle); // 匹配字幕暂时隐藏 act_searchSubtitle = new KAction(nullptr, "search_subtitle"); connect(act_searchSubtitle, &KAction::triggered, [this](){emit sigSearchSubtitle();}); act_searchSubtitle->change(tr("Search subtitle")); // menu_subtitle->addAction(act_searchSubtitle); // 搜索字幕暂时隐藏 act_subtitleSet = new KAction(nullptr, "subtitle_set"); connect(act_subtitleSet, &KAction::triggered, [this](){g_user_signal->showSetup(3);}); act_subtitleSet->change(tr("Subtitle set")); menu_subtitle->addAction(act_subtitleSet); } /** ******************************************** * 创建播放控制菜单 ***********************************************/ void KRightClickMenu::createPlayMenu() { menu_play = new KMenu(parentWidget()); menu_play->menuAction()->setText(tr("Play")); act_playPause = new KAction(QKeySequence(g_settings->value("action/play/pause").toString()), nullptr, "play_pause"); connect(act_playPause, &KAction::triggered, [this](){g_user_signal->play_pause();}); act_playPause->change(tr("Play/Pause")); menu_play->addAction(act_playPause); gshortCut->registerAction(act_playPause->text(), act_playPause); act_volumeUp = new KAction(QKeySequence(g_settings->value("action/volume up").toString()), nullptr, "volume_up"); connect(act_volumeUp, &KAction::triggered, [this](){g_user_signal->setVolumeUp();}); act_volumeUp->change(tr("volume up")); menu_play->addAction(act_volumeUp); gshortCut->registerAction(act_volumeUp->text(), act_volumeUp); act_volumeDown = new KAction(QKeySequence(g_settings->value("action/volume down").toString()), nullptr, "volume_down"); connect(act_volumeDown, &KAction::triggered, [this](){g_user_signal->setVolumeDown();}); act_volumeDown->change(tr("volume down")); menu_play->addAction(act_volumeDown); gshortCut->registerAction(act_volumeDown->text(), act_volumeDown); act_playForward = new KAction(QKeySequence("Right"), nullptr, "play_forward"); connect(act_playForward, &KAction::triggered, [this](){g_user_signal->forword(true);}); act_playForward->change(tr("forward")); menu_play->addAction(act_playForward); gshortCut->registerAction(act_playForward->text(), act_playForward); act_playBackward = new KAction(QKeySequence("Left"), nullptr, "play_backward"); connect(act_playBackward, &KAction::triggered, [this](){g_user_signal->backword(true);}); act_playBackward->change(tr("backward")); menu_play->addAction(act_playBackward); gshortCut->registerAction(act_playBackward->text(), act_playBackward); } /** ******************************************** * 创建播放器设置动作 ***********************************************/ void KRightClickMenu::createPlayerSetAction() { act_playerSet = new KAction(QKeySequence(g_settings->value("action/setup").toString()), nullptr, "player_set"); connect(act_playerSet, &KAction::triggered, [this](){g_user_signal->showSetup(0);}); act_playerSet->change(tr("setup")); gshortCut->registerAction(act_playerSet->text(), act_playerSet); } /** ******************************************** * 创建媒体信息动作 ***********************************************/ void KRightClickMenu::createMediaInfoAction() { act_MediaInfo = new KAction(nullptr, "media_info"); connect(act_MediaInfo, &KAction::triggered, [this](){emit sigMediaInfo();}); act_MediaInfo->change(tr("Media info")); } void KRightClickMenu::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigChannel, [this](Mpv::Channel c){ switch (c) { case Mpv::Stereo: act_stereo->setChecked(true); break; case Mpv::Left: act_leftChannel->setChecked(true); break; case Mpv::Right: act_rightChannel->setChecked(true); break; default: break; } }); connect(g_user_signal, &GlobalUserSignal::sigSelectSub, act_loadSubtitle, &KAction::trigger); connect(g_user_signal, &GlobalUserSignal::sigToTop, act_setTop, &KAction::trigger); connect(g_core_signal, &GlobalCoreSignal::sigTracksChange, this, &KRightClickMenu::loadTracks); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, [&](Mpv::PlayState state){ if(state <= 0) reInit(); else if(state == Mpv::Playing) enableActions(); else if(state == Mpv::Started) g_user_signal->setAspect(Mpv::AUTO); }); connect(g_core_signal, &GlobalCoreSignal::sigSubIdChange, [&](int sub_id){ for(QAction *act:group_sub->actions()) if(act->data().toInt() == sub_id) act->setChecked(true); }); connect(g_core_signal, &GlobalCoreSignal::sigAudioIdChange, [&](int audio_id){ for(QAction *act:group_audio->actions()) if(act->data().toInt() == audio_id) act->setChecked(true); }); connect(g_core_signal, &GlobalCoreSignal::sigVideoIdChange, [&](int video_id){ if (video_id >= 0) { act_loadSubtitle->setEnabled(true); menu_subtitleSelect->setEnabled(true); } }); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ disableVideoMenu(); if (fi.video_params.codec != "") { if (fi.video_params.codec.indexOf("jpeg") < 0 && fi.video_params.codec.indexOf("png") < 0 ) { enableVideoMenu(); } } }); connect(g_user_signal, &GlobalUserSignal::sigPlayOrder, [&](PlayOrder order){ for(QAction *act:menu_playOrder->actions()) if(act->data().toInt() == order) act->setChecked(true); }); } void KRightClickMenu::addSubtitle(QString name, int id) { QAction *sub = new QAction(name); // 显示的名称需要有最大宽度 QFontMetrics fontWidth(sub->font());//得到每个字符的宽度 QString show_name = fontWidth.elidedText(name, Qt::ElideRight, 200);//最大宽度200像素 sub->setText(show_name); sub->setToolTip(name); sub->setData(id); sub->setCheckable(true); group_sub->addAction(sub); menu_subtitleSelect->addAct(sub); } void KRightClickMenu::addAudioTrack(QString name, int id) { QAction *audio = new QAction(name); audio->setData(id); audio->setCheckable(true); group_audio->addAction(audio); act_audioTrack->addAct(audio); } void KRightClickMenu::loadTracks(QList tracks) { // 删除右键菜单中的轨道全部重新加载 for(QAction *act : menu_subtitleSelect->actions()) { if(act == act_noSubtitle) continue; menu_subtitleSelect->removeAction(act); group_sub->removeAction(act); delete act; } foreach (QAction *act, act_audioTrack->actions()) { act_audioTrack->removeAction(act); group_audio->removeAction(act); delete act; } for(Mpv::Track track : tracks) { if(track.type == "video") continue; else if(track.type == "audio") { act_audioTrack->setEnabled(true); addAudioTrack(QString("audio ").append(QString::number(track.id)), track.id); } else if(track.type == "sub") addSubtitle(track.title, track.id); } } /** ******************************************** * 视频播放之后重新初始化视频相关菜单项 ***********************************************/ void KRightClickMenu::reInit() { for(QAction *act : menu_subtitleSelect->actions()) { if(act == act_noSubtitle) continue; menu_subtitleSelect->removeAction(act); group_sub->removeAction(act); delete act; } act_noSubtitle->setChecked(true); foreach (QAction *act, act_audioTrack->actions()) { act_audioTrack->removeAction(act); group_audio->removeAction(act); delete act; } act_defaultFrame->setChecked(true); act_MediaInfo->setEnabled(false); act_showInfo->setEnabled(false); act_defaultChannel->setEnabled(false); act_stereo->setEnabled(false); act_leftChannel->setEnabled(false); act_rightChannel->setEnabled(false); act_playPause->setEnabled(false); act_playForward->setEnabled(false); act_playBackward->setEnabled(false); act_audioTrack->setEnabled(false); act_loadSubtitle->setEnabled(false); menu_subtitleSelect->setEnabled(false); disableVideoMenu(); } void KRightClickMenu::enableActions() { act_MediaInfo->setEnabled(true); act_showInfo->setEnabled(true); act_defaultChannel->setEnabled(true); act_stereo->setEnabled(true); act_leftChannel->setEnabled(true); act_rightChannel->setEnabled(true); act_playPause->setEnabled(true); act_playForward->setEnabled(true); act_playBackward->setEnabled(true); } // 设置视频相关选项不生效 void KRightClickMenu::disableVideoMenu() { act_4div3Frame->setEnabled(false); act_16div9Frame->setEnabled(false); act_fullFrame->setEnabled(false); act_alongRotate->setEnabled(false); act_inverseRotate->setEnabled(false); act_flipHorizontally->setEnabled(false); act_flipVertically->setEnabled(false); } void KRightClickMenu::enableVideoMenu() { act_4div3Frame->setEnabled(true); act_16div9Frame->setEnabled(true); act_fullFrame->setEnabled(true); act_alongRotate->setEnabled(true); act_inverseRotate->setEnabled(true); act_flipHorizontally->setEnabled(true); act_flipVertically->setEnabled(true); } #if 0 ListLoopMenu::ListLoopMenu(QWidget *parent): KMenu(parent) { if(isWayland) setFixedWidth(160); // 内容较少直接在构造初始化 act_oneLoop = new KAction(nullptr, "one_loop"); act_oneLoop->change(tr("One Loop")); act_oneLoop->setCheckable(false); connect(act_oneLoop, &KAction::triggered, [this](){g_user_signal->setPlayOrder(ONE_LOOP);}); act_listLoop = new KAction(nullptr, "list_loop" ); act_listLoop->change(tr("List loop")); act_listLoop->setCheckable(false); connect(act_listLoop, &KAction::triggered, [this](){g_user_signal->setPlayOrder(LIST_LOOP);}); act_random = new KAction(nullptr, "random" ); act_random->change(tr("Random")); act_random->setCheckable(false); connect(act_random, &KAction::triggered, [this](){g_user_signal->setPlayOrder(RANDOM);}); act_sequence = new KAction( nullptr, "sequence"); act_sequence->change(tr("Sequence")); act_sequence->setCheckable(false); connect(act_sequence, &KAction::triggered, [this](){g_user_signal->setPlayOrder(SEQUENCE);}); addAct(act_oneLoop); addAct(act_listLoop); addAct(act_random); // addAct(act_sequence); // 根据主题设置样式 if(g_settings->value("General/follow_system_theme").toBool()) { if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); } else { if(g_settings->value("General/theme").toInt() == 0) setLightTheme(); else setBlackTheme(); } connect(g_gsettings, &QGSettings::changed, [&](QString key){ // 如果不是跟随主题的话直接返回 if(key == "styleName") if(g_settings->value("General/follow_system_theme").toBool()) if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); }); connect(g_user_signal, &GlobalUserSignal::sigTheme, [&](int theme){ switch (theme) { case 0: if(g_gsettings->get("styleName").toString() == STYLE_UKUI_DEFAULT) setLightTheme(); else setBlackTheme(); break; case 1: setLightTheme(); break; case 2: setBlackTheme(); break; default: break; } }); } void ListLoopMenu::setBlackTheme() { act_oneLoop->setIcon(QIcon(":/ico/media-playlist-repeat-one-h.png")); act_listLoop->setIcon(QIcon(":/ico/media-playlist-repeat-loop-h.png")); act_random->setIcon(QIcon(":/ico/media-playlist-repeat-radom-h.png")); act_sequence->setIcon(QIcon(":/ico/media-playlist-repeat-list-h.png")); if(!isWayland) return; setStyleSheet("QMenu{background-color:rgb(61,61,65);border-radius:8px;padding:4px 0px;margin:4px 4px;}" "QMenu::item { \ color: rgb(210, 210, 210); \ background-color: transparent; \ border-radius: 4px; \ padding:8px 5px;/*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/ \ margin:0px 3px;/*设置菜单项的外边距*/ \ } \ QMenu::item:selected { /* when user selects item using mouse or keyboard */ \ background-color: rgba(55,144,250,191);/*这一句是设置菜单项鼠标经过选中的样式*/ \ }"); } void ListLoopMenu::setLightTheme() { act_oneLoop->setIcon(QIcon(":/ico_light/media-playlist-repeat-one-h.png")); act_listLoop->setIcon(QIcon(":/ico_light/media-playlist-repeat-loop-h.png")); act_random->setIcon(QIcon(":/ico_light/media-playlist-repeat-radom-h.png")); act_sequence->setIcon(QIcon(":/ico_light/media-playlist-repeat-list-h.png")); if(!isWayland) return; setStyleSheet("QMenu{background-color:rgb(255,255,255);border-radius:8px;padding:4px 0px;margin:4px 4px;}" "QMenu::item { \ color: rgb(38, 38, 38); \ background-color: transparent; \ border-radius: 4px; \ padding:8px 5px;/*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/ \ margin:0px 3px;/*设置菜单项的外边距*/ \ } \ QMenu::item:selected { /* when user selects item using mouse or keyboard */ \ background-color: rgba(55,144,250,191);/*这一句是设置菜单项鼠标经过选中的样式*/ \ }"); } #endif TitleMenu::TitleMenu(QWidget *parent): KMenu(parent) { createOneLevelAction(); createThemeMenu(); createPrivacyMenu(); createHelpMenu(); createSetupMenu(); // 有些功能暂没有实现 // addAct(act_uploadToCloud); // addMenu(menu_theme); addMenu(menu_privacy); addMenu(menu_help); addAct(act_about); addMenu(menu_setup); addAct(act_quit); } TitleMenu::~TitleMenu() { } void TitleMenu::createOneLevelAction() { act_uploadToCloud = new KAction(nullptr, "upload2Cloud"); act_uploadToCloud->change(tr("Upload to cloud")); act_about = new KAction(nullptr, "about"); connect(act_about, &KAction::triggered, [this](){g_user_signal->showAbout();}); act_about->change(tr("About")); act_quit = new KAction(nullptr, "quit"); connect(act_quit, &KAction::triggered, [this](){emit sigQuit();}); act_quit->change(tr("Quit")); } /** ******************************************* * 初始主题选择菜单 ***********************************************/ void TitleMenu::createThemeMenu() { menu_theme = new KMenu; menu_theme->menuAction()->setText(tr("Theme")); group_themeGroup = new QActionGroup(nullptr); act_followSystem = new KAction(nullptr, "follow_system"); connect(act_followSystem, &KAction::triggered, [this](){ g_settings->setValue("General/follow_system_theme", 1); g_user_signal->setTheme(0); }); act_followSystem->change(tr("Follow system")); act_followSystem->setCheckable(true); act_lightTheme = new KAction(nullptr, "light_theme"); connect(act_lightTheme, &KAction::triggered, [this](){ g_user_signal->setTheme(1); g_settings->setValue("General/follow_system_theme", 0); }); act_lightTheme->change(tr("Light theme")); act_lightTheme->setCheckable(true); act_blackTheme = new KAction(nullptr, "black_theme"); connect(act_blackTheme, &KAction::triggered, [this](){ g_user_signal->setTheme(2); g_settings->setValue("General/follow_system_theme", 0); }); act_blackTheme->change(tr("Black theme")); act_blackTheme->setCheckable(true); group_themeGroup->addAction(act_followSystem); group_themeGroup->addAction(act_lightTheme); group_themeGroup->addAction(act_blackTheme); menu_theme->addAction(act_followSystem); menu_theme->addAction(act_lightTheme); menu_theme->addAction(act_blackTheme); if(g_settings->value("General/follow_system_theme").toBool()) act_followSystem->setChecked(true); else if(g_settings->value("General/theme").toInt() == 0) act_lightTheme->setChecked(true); else act_blackTheme->setChecked(true); // 默认先设置为跟随系统,当前先不做手动切换主题功能 act_followSystem->setChecked(true); g_settings->setValue("General/follow_system_theme", true); } /** ******************************************* * 初始化隐私菜单 ***********************************************/ void TitleMenu::createPrivacyMenu() { menu_privacy = new KMenu; menu_privacy->menuAction()->setText(tr("Privacy")); act_clearMark = new KAction(nullptr, "clear_mark"); connect(act_clearMark, &KAction::triggered, [this](){ g_user_signal->clearPlayList(); }); act_clearMark->change(tr("Clear mark")); act_noMarkPlay = new KAction(nullptr, "no_mark"); connect(act_noMarkPlay, &KAction::triggered, [this](bool _checked){ gsetup->seamlessBrowsing.second = _checked; gsetup->flushChange(); // 告诉别人设置成无痕了 g_user_signal->sigNoMarkMode(_checked); }); act_noMarkPlay->change(tr("No mark")); act_noMarkPlay->setCheckable(true); act_noMarkPlay->setChecked(gsetup->seamlessBrowsing.first); menu_privacy->addAction(act_clearMark); menu_privacy->addAction(act_noMarkPlay); } /** ******************************************* * 初始化帮助菜单 ***********************************************/ void TitleMenu::createHelpMenu() { menu_help = new KMenu(); menu_help->menuAction()->setText(tr("Help")); act_checkUpdate = new KAction(nullptr, "check_update"); connect(act_checkUpdate, &KAction::triggered, [this](){;}); act_checkUpdate->setText(tr("Check update")); act_f1 = new KAction(QKeySequence("F1"), nullptr, "manual"); connect(act_f1, &KAction::triggered, [this](){ // 帮助手册 QDBusMessage m = QDBusMessage::createMethodCall("com.kylinUserGuide.hotel_1000", "/", "com.guide.hotel", "showGuide"); m << "kylin-video"; if(QDBusConnection::sessionBus().isConnected()) QDBusConnection::sessionBus().call(m); }); act_f1->change(tr("Manual")); act_advice_feedback = new KAction(nullptr, "advice_feedback"); connect(act_advice_feedback, &KAction::triggered, [this](){ QThread::create([](){ QDesktopServices::openUrl(QUrl(QString(AdvideFeedback).toLatin1()));; })->start(); }); act_advice_feedback->setText(tr("Advice and feedback")); act_officialWebsite = new KAction(nullptr, "official_website"); connect(act_officialWebsite, &KAction::triggered, [this](){ QDesktopServices::openUrl(QUrl(QString(OfficialWebsite).toLatin1())); }); act_officialWebsite->setText(tr("Official website")); // 更新暂未实现 // menu_help->addAct(act_checkUpdate); menu_help->addAct(act_f1); menu_help->addAct(act_advice_feedback); menu_help->addAct(act_officialWebsite); } /** ******************************************* * 初始化设置菜单 ***********************************************/ void TitleMenu::createSetupMenu() { menu_setup = new KMenu(); menu_setup->menuAction()->setText(tr("Setup")); act_systemSetup = new KAction(nullptr, "system_setup"); connect(act_systemSetup, &KAction::triggered, [this](){g_user_signal->showSetup(0);}); act_systemSetup->setText(tr("System setup")); act_playSetup = new KAction(nullptr, "play_setup"); connect(act_playSetup, &KAction::triggered, [this](){g_user_signal->showSetup(1);}); act_playSetup->setText(tr("Play setup")); act_screenshotSetup = new KAction(nullptr, "screenshot_setup"); connect(act_screenshotSetup, &KAction::triggered, [this](){g_user_signal->showSetup(2);}); act_screenshotSetup->setText(tr("Screenshot setup")); act_subtitleSetup = new KAction(nullptr, "subtitle_setup"); connect(act_subtitleSetup, &KAction::triggered, [this](){g_user_signal->showSetup(3);}); act_subtitleSetup->setText(tr("Subtitle setup")); act_audioSetup = new KAction(nullptr, "audio_setup"); connect(act_audioSetup, &KAction::triggered, [this](){g_user_signal->showSetup(4);}); act_audioSetup->setText(tr("Audio setup")); act_decoderSetup = new KAction(nullptr, "decoder_setup"); connect(act_decoderSetup, &KAction::triggered, [this](){g_user_signal->showSetup(5);}); act_decoderSetup->setText(tr("Decoder setup")); act_shortcutSetup = new KAction(nullptr, "shortcut_setup"); connect(act_shortcutSetup, &KAction::triggered, [this](){g_user_signal->showSetup(6);}); act_shortcutSetup->setText(tr("Shortcut setup")); menu_setup->addAct(act_systemSetup); menu_setup->addAct(act_playSetup); menu_setup->addAct(act_screenshotSetup); menu_setup->addAct(act_subtitleSetup); menu_setup->addAct(act_audioSetup); menu_setup->addAct(act_decoderSetup); menu_setup->addAct(act_shortcutSetup); } PlayListItemMenu::PlayListItemMenu(QWidget *parent) { createAction(); } PlayListItemMenu::~PlayListItemMenu() { delete act_sortByName; delete act_sortByType; delete menuSort; delete act_removeCurrent; delete act_removeInvalid; delete act_clearList; delete act_openFolder; } void PlayListItemMenu::createAction() { act_removeCurrent = new KAction(nullptr, "remove_selected"); act_removeCurrent->change(tr("Remove selected")); connect(act_removeCurrent, &KAction::triggered, [this](){emit sigRemoveSelect();}); act_removeInvalid = new KAction(nullptr, "remove_invalid"); act_removeInvalid->change(tr("Remove invalid")); connect(act_removeInvalid, &KAction::triggered, [this](){emit sigRemoveInvalid();}); act_clearList = new KAction(nullptr, "clear_list"); act_clearList->change(tr("Clear list")); connect(act_clearList, &KAction::triggered, [this](){emit sigClearList();}); act_openFolder = new KAction(nullptr, "open_folder"); act_openFolder->change(tr("Open folder")); connect(act_openFolder, &KAction::triggered, [this](){emit sigOpenFolder();}); menuSort = new KMenu; menuSort->menuAction()->setText(tr("Sort")); act_sortByName = new KAction(nullptr, "sort_by_name"); act_sortByName->change(tr("Sort by name")); act_sortByType = new KAction(nullptr, "sort_by_type"); act_sortByType->change(tr("Sort by type")); menuSort->addAct(act_sortByName); menuSort->addAct(act_sortByType); addAct(act_removeCurrent); addAct(act_removeInvalid); addAct(act_clearList); // addMenu(menuSort); // 排序功能没做呢 addAct(act_openFolder); } kylin-video-3.1.3/src/mainwidget.h0000644000175000017500000001300014214075177015462 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #ifndef MAINWIDGET_H #define MAINWIDGET_H #include #include "core/mpvtypes.h" #define NormalMinSize QSize(960, 540) #define MiniModeSize QSize(400, 225) #define CenterLogoSize QSize(500, 65) #define MainButtonSize QSize(118, 40) #define MusicLogoSize QSize(360, 120) class QLabel; class MpvCore; class TopWindow; class TitleMenu; class ContralBar; class AboutDialog; class SetUpDialog; class TitleWidget; class PlayGLWidget; class MiniModeShade; class PlayListWidget; class SystemTrayIcon; class QDBusInterface; class ShortCutSetting; class KRightClickMenu; class MediaInfoDialog; class QPropertyAnimation; class ContralShadeWidget; namespace Ui { class MainWidget; } class MainWidget : public QWidget { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.ukui.kylinvideo.play") public: explicit MainWidget(QStringList list = QStringList(), QWidget *parent = nullptr); ~MainWidget(); void ukuiMove(); public slots: void kylin_video_play_request(QStringList filelist); // s3 s4 处理 void onPrepareForSleep(bool isSleep); void onPrepareForShutdown(bool Shutdown); void onScreenLock(); void onScreenUnlock(); // 耳机插拔 void inputDeviceGet(QString _device); private: void initMenu(); void initCore(); void initDBus(); void initLayout(); void initConnect(); void initTrayIcon(); void initGlobalSig(); // void initContralBar(); // void initTitleWidget(); void initSetupDialog(); void initAboutDialog(); // void initPlayListWidget(); // void initShowModeAnimation(); private slots: void slotToTop(bool is_top = true); void slotThemeChange(int theme); void slotPlayWidgetClicked(); void slotOpenFile(); void slotOpenDir(); void slotPlayFile(QString file, int pos); void slotPlayStateChange(Mpv::PlayState state); // void slotHideAll(bool is_hide); void slotShowMin(); void slotShowMax(); // void slotShowNormalMode(); // void slotShowMiniMode(); void Single(QStringList filelist); void showText(QString text); void updateAspect(); void appQuit(); void onWiredControl(QString); private: Ui::MainWidget *ui; QString m_currentFile; QDBusInterface *interface; QPropertyAnimation *m_miniAnm, // 切换 mini 模式动画 *m_normalAnm; // 切换正常模式动画 MiniModeShade *m_miniModeShade; // mini 模式遮罩 QSize m_normalSize; // 正常模式大小 Mpv::VideoAspect m_vAspect; // 视频比例 bool m_needPlayWhenMin, // 是否需要播放(最小化暂停) m_needPlayWhenS34, // 是否需要播放(s3/s4) m_isMaxWindow, // 是否最大化窗口(全屏恢复使用) m_isScreenLocked, // 是否锁屏了 m_isMiniMode, // 是否 mini 模式 m_canHideAll, // 是否能够隐藏标题栏和控制栏 m_isActive, // 是否活动窗口 m_moveFlag, // 窗口移动标志位 m_exitFlag; // 退出应用标志位 bool m_firstRemoveBar; // wayland窗口第一次删除标题栏的时候会改变窗口的大小 quint32 m_inhibitValue; // 阻止锁屏cookie MpvCore *m_core; Mpv::PlayState m_playState; PlayGLWidget *m_playWidget; QWidget *m_centerLogo; QWidget *m_defaultFrame; // 播放界面默认画面(灰色背景加logo) QWidget *m_musicLogo; QWidget *m_musicFrame; // 音乐播放默认画面 QTimer *m_osdShowTimer; QLabel *m_osdFrame; TopWindow *m_topWindow; TitleWidget *m_titleWidget; // 标题栏 TitleMenu *m_titleMenu; // 标题栏菜单 ContralBar *m_contralBar; // 控制栏 KRightClickMenu *m_rightClickMenu; // 右键菜单 // MediaInfoDialog *m_mediaInfoDialog; // 媒体信息界面 PlayListWidget *m_playListWidget; // 播放列表界面 SetUpDialog *m_setupDialog; // 设置界面 AboutDialog *m_aboutDialog; // 关于界面 SystemTrayIcon *m_trayIcon; // 托盘图标 protected: void resizeEvent(QResizeEvent *event) override; bool event(QEvent *event) override; void mousePressEvent(QMouseEvent *event) override; void showEvent(QShowEvent *event) override; void closeEvent(QCloseEvent *event) override; void keyPressEvent(QKeyEvent *event) override; bool eventFilter(QObject *watched, QEvent *event) override; // 以下实现文件拖入播放 void dragEnterEvent(QDragEnterEvent *event) override; void dropEvent(QDropEvent *event) override; }; #endif // MAINWIDGET_H kylin-video-3.1.3/src/messagebox.cpp0000644000175000017500000000657614214075177016046 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "messagebox.h" #include #include #include #include namespace KylinUI { MessageBox::MessageBox(QString title, QString text, QWidget *parent, MessageType type) : Dialog(parent) { msg_type = type; initLayout(); setData(title, text); } MessageBox::~MessageBox() { delete lab_titleIcon; delete lab_title; delete lab_text; delete lab_textIcon; delete btn_ok; delete box_hb; delete box_hm; delete box_ht; delete box_v; } void MessageBox::setData(QString title, QString text) { QIcon icMsg, icTitle = QIcon::fromTheme("kylin-video"); switch (msg_type) { case INFORMATION: icMsg = QIcon::fromTheme("ukui-dialog-information"); btn_cancel->hide(); break; case QUESTION: icMsg = QIcon::fromTheme("ukui-dialog-help"); break; case WARNING: icMsg = QIcon::fromTheme("ukui-dialog-warning"); btn_cancel->hide(); break; case ABOUT: icMsg = QIcon::fromTheme("about"); btn_cancel->hide(); break; default: break; } lab_title->setText(title); lab_titleIcon->setPixmap(icTitle.pixmap(lab_titleIcon->size())); lab_text->setText(text); lab_textIcon->setPixmap(icMsg.pixmap(lab_textIcon->size())); } void MessageBox::initLayout() { setFixedSize(WIDGET_WIDTH, WIDGET_HEIGHT); box_ht = new QHBoxLayout; box_hm = new QHBoxLayout; box_hb = new QHBoxLayout; box_v = new QVBoxLayout(this); box_v->addLayout(box_ht); box_v->addSpacing(10); box_v->addLayout(box_hm); box_v->addStretch(); box_v->addLayout(box_hb); lab_titleIcon = new QLabel; lab_titleIcon->setFixedSize(TITLE_ICON_WIDTH, TITLE_ICON_WIDTH); lab_title = new QLabel; box_ht->addWidget(lab_titleIcon); box_ht->addWidget(lab_title); box_ht->addStretch(); lab_text = new QLabel; lab_textIcon = new QLabel; lab_textIcon->setFixedSize(TEXT_ICON_WIDTH, TEXT_ICON_WIDTH); box_hm->addSpacing(24); box_hm->addWidget(lab_textIcon); box_hm->addWidget(lab_text); box_hm->addStretch(); btn_cancel = new QPushButton; btn_cancel->setFixedSize(80, 30); btn_cancel->setText(tr("Cancle")); btn_ok = new QPushButton; btn_ok->setFixedSize(80, 30); btn_ok->setText(tr("Ok")); connect(btn_cancel, &QPushButton::clicked, this, &MessageBox::reject); connect(btn_ok, &QPushButton::clicked, this, &MessageBox::accept); box_hb->addStretch(); box_hb->addWidget(btn_cancel); box_hb->addWidget(btn_ok); box_hb->setContentsMargins(0, 0, 24, 16); } } kylin-video-3.1.3/src/topwindow.cpp0000644000175000017500000003623514214075177015736 0ustar fengfeng/* * Kylin-video * * Copyright (C) 2021, Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Authors: Liu Cong * */ #include "topwindow.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "global/xatom-helper.h" #include "homepage.h" #include "titlewidget.h" #include "contralbar.h" #include "kmenu.h" #include "minimodeshade.h" #include "playlistwidget.h" #include "eventpasswidget.h" #include "global/extensions.h" #include "global/global.h" using namespace Global; TopWindow::TopWindow(QWidget *parent) : QDialog(parent), m_isMove(false), m_isMaxWindow(false), m_isFullScreen(false), m_canHideAll(true), m_isMiniMode(false), m_parentWidget(parent), m_pressPos(QPoint(0, 0)) { setProperty("useStyleWindowManager", false); setAttribute(Qt::WA_TranslucentBackground); setObjectName("topWindow"); setMinimumSize(NormalModeSize); MotifWmHints hints1; hints1.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; hints1.functions = MWM_FUNC_ALL; hints1.decorations = MWM_DECOR_BORDER; XAtomHelper::getInstance()->setWindowMotifHint(winId(), hints1); initStackedWidget(); initTitleWidget(); initContralBar(); initPlayListWidget(); initMiniModeShade(); initGlobalSig(); setAcceptDrops(true); } void TopWindow::showMax() { if (isFullScreen()) { return; } if (m_isMaxWindow) { KWindowSystem::clearState(winId(), NET::Max); KWindowSystem::clearState(m_parentWidget->winId(), NET::Max); m_isMaxWindow = false; m_titleWidget->updateMaxButtonStatus(false); } else { KWindowSystem::setState(winId(), NET::Max); KWindowSystem::setState(m_parentWidget->winId(), NET::Max); m_isMaxWindow = true; m_titleWidget->updateMaxButtonStatus(true); } } void TopWindow::showMin() { m_playListWidget->slotHide(); emit sigMinSize(); } void TopWindow::showTitleMenu() { m_titleMenu->exec(QPoint(m_titleWidget->getMenuBtnX()+mapToGlobal(QPoint(0,0)).x(), mapToGlobal(QPoint(0,0)).y()+m_titleWidget->height()-5)); } void TopWindow::showNormalMode() { if (!m_isMiniMode) return; m_contralBar->setMiniMode(false); m_titleWidget->setMiniMode(false); m_playListWidget->show(); setMinimumSize(NormalModeSize); setMaximumSize(99999, 99999); // setGeometry(m_normalRect); resize(NormalModeSize); m_eventPassWidget->setMouseUsed(true); m_miniModeShade->hide(); m_isMiniMode = false; } void TopWindow::showMiniMode() { if (m_isMiniMode || isFullScreen()) return; int delay = 0; if (m_isMaxWindow) { delay = 200; KWindowSystem::clearState(winId(), NET::Max); KWindowSystem::clearState(m_parentWidget->winId(), NET::Max); m_isMaxWindow = false; m_titleWidget->updateMaxButtonStatus(false); } m_isMiniMode = true; m_contralBar->setMiniMode(true); m_titleWidget->setMiniMode(true); m_titleWidget->hide(); m_contralBar->hide(); m_playListWidget->hide(); QTimer::singleShot(delay, [this](){ setMinimumSize(MiniModeSize); resize(MiniModeSize); m_eventPassWidget->setMouseUsed(false); m_miniModeShade->show(); m_miniModeShade->raise(); }); } void TopWindow::slotShowFullScreen(bool full) { if (m_isFullScreen == full) return; if (m_isMiniMode) return; if (full) { m_isFullScreen = true; KWindowSystem::setState(m_parentWidget->winId(), NET::FullScreen); KWindowSystem::setState(winId(), NET::FullScreen); m_titleWidget->setButtonState(false); } else { KWindowSystem::clearState(m_parentWidget->winId(), NET::FullScreen); KWindowSystem::clearState(winId(), NET::FullScreen); m_titleWidget->setButtonState(true); m_isFullScreen = false; } m_canHideAll = true; hideAll(true); } void TopWindow::slotPlayStateChange(Mpv::PlayState state) { if (state > 0) { m_stackedWidget->setCurrentIndex(1); m_titleWidget->setHomePage(false); if (isFullScreen()) { m_titleWidget->setButtonState(false); } m_eventPassWidget->setMouseUsed(true); } else { m_titleWidget->setTitle(tr("Video Player"), false); m_eventPassWidget->setMouseUsed(false); } } void TopWindow::slotPlayWidgetClicked() { if(m_playListWidget->isShow()) m_playListWidget->slotHide(); else g_user_signal->playWidgetClick(); } void TopWindow::hideAll(bool hide) { if (m_stackedWidget->currentIndex() == 0) return; if (hide) { if(m_canHideAll) { m_contralBar->setHide(); m_titleWidget->setHide(); if (!m_playListWidget->isShow()) m_playListWidget->setShowButton(false); // 播放列表是否需要隐藏 ? } else { // 鼠标要显示出来 setCursor(Qt::ArrowCursor); m_eventPassWidget->setCursor(Qt::ArrowCursor); m_titleWidget->setCursor(Qt::ArrowCursor); } } else { if (!m_playListWidget->isShow()) { if (m_stackedWidget->currentIndex() == 1) m_contralBar->setShow(); m_titleWidget->setShow(); m_playListWidget->setShowButton(true); } } } void TopWindow::setHide() { m_titleWidget->updateMaxButtonStatus(false); m_titleWidget->setButtonState(true); hide(); } void TopWindow::openHelpDoc() { // 帮助手册 先就分开写吧,快捷键不生效不知道为啥 QDBusMessage m = QDBusMessage::createMethodCall("com.kylinUserGuide.hotel_1000", "/", "com.guide.hotel", "showGuide"); m << "kylin-video"; if(QDBusConnection::sessionBus().isConnected()) QDBusConnection::sessionBus().call(m); } void TopWindow::resetLayout() { if (!m_isMiniMode && !m_isMaxWindow && !m_isFullScreen) m_normalRect = QRect(mapToGlobal(QPoint(0,0)), QSize(width(), height())); if (!m_isMaxWindow && !m_isFullScreen) { if (m_parentWidget) { m_parentWidget->resize(size()); } } m_titleWidget->setGeometry(0, 0, width(), m_titleWidget->height()); m_contralBar->setGeometry(120, height()-72, width()-240, 48); m_contralBar->setPreviewSize(size()); m_stackedWidget->resize(size()); m_homePage->resize(size()); m_eventPassWidget->resize(size()); // 只要大小改变,播放列表都要隐藏起来 m_playListWidget->move(width() - 16, 0); m_playListWidget->resize(m_playListWidget->width(), height()); m_playListWidget->updateHideIcon(); if (m_miniModeShade) m_miniModeShade->resize(size()); } void TopWindow::initGlobalSig() { connect(g_user_signal, &GlobalUserSignal::sigOpenHelpDoc, this, &TopWindow::openHelpDoc); connect(g_user_signal, &GlobalUserSignal::sigHideBar, this, &TopWindow::hideAll); connect(g_core_signal, &GlobalCoreSignal::sigStateChange, this, &TopWindow::slotPlayStateChange); connect(g_core_signal, &GlobalCoreSignal::sigFileInfoChange, [&](Mpv::FileInfo fi){ m_titleWidget->setTitle(fi.file_path.split("/").back()); }); connect(g_user_signal, &GlobalUserSignal::sigChangeShowMode, [this](){ if (m_stackedWidget->currentIndex() == 0) return; if (m_isMiniMode) showNormalMode(); else showMiniMode(); }); } void TopWindow::initTitleWidget() { m_titleMenu = new TitleMenu; connect(m_titleMenu, &TitleMenu::sigQuit, this, [this](){emit sigQuit();}); m_titleWidget = new TitleWidget(this); m_titleWidget->raise(); m_titleWidget->move(0, 0); m_titleWidget->setTitle(tr("Video Player"), false); connect(m_titleWidget, &TitleWidget::sigClose, this, [this](){ resetLayout(); emit sigClose(); }); connect(m_titleWidget, &TitleWidget::sigMaxSize, this, &TopWindow::showMax); connect(m_titleWidget, &TitleWidget::sigMiniSize, this, &TopWindow::showMin); connect(m_titleWidget, &TitleWidget::sigShowMenu, this, &TopWindow::showTitleMenu); connect(m_titleWidget, &TitleWidget::sigCanHide, [this](bool canHide){m_canHideAll = canHide;}); connect(m_titleWidget, &TitleWidget::sigMiniMode, this, &TopWindow::showMiniMode); } void TopWindow::initContralBar() { m_contralBar = new ContralBar(this); m_contralBar->hide(); connect(m_contralBar, &ContralBar::sigFullScreen, this, &TopWindow::slotShowFullScreen); connect(m_contralBar, &ContralBar::sigCanHide, [this](bool canHide){m_canHideAll = canHide;}); } void TopWindow::initStackedWidget() { m_stackedWidget = new QStackedWidget(this); m_homePage = new HomePage; QHBoxLayout *lay_logo = new QHBoxLayout; lay_logo->setContentsMargins(0, 0, 0, 0); m_eventPassWidget = new EventPassWidget; connect(m_eventPassWidget, &EventPassWidget::mousePressed, this, &TopWindow::slotPlayWidgetClicked); m_stackedWidget->addWidget(m_homePage); m_stackedWidget->addWidget(m_eventPassWidget); m_stackedWidget->setCurrentIndex(0); } void TopWindow::initMiniModeShade() { m_miniModeShade = new MiniModeShade(this); m_miniModeShade->hide(); connect(m_miniModeShade, &MiniModeShade::sigClose, this, [this](){emit sigClose();}); connect(m_miniModeShade, &MiniModeShade::sigShowNormal, this, &TopWindow::showNormalMode); connect(m_miniModeShade, &MiniModeShade::sigPlayPause, [&](){ g_user_signal->sigPlayPause(); }); } void TopWindow::initPlayListWidget() { m_playListWidget = new PlayListWidget(this); // 列表显示的时候隐藏标题栏和控制栏 connect(g_user_signal, &GlobalUserSignal::sigShowPlayList, [&](){ if(m_stackedWidget->currentIndex() == 1) { // 防止列表弹出的时候鼠标在播放界面上移动导致标题栏和控制栏弹出 m_eventPassWidget->setMouseTracking(false); QTimer::singleShot(400, [this](){m_eventPassWidget->setMouseTracking(true);}); m_canHideAll = true; hideAll(true); } }); connect(m_playListWidget, &PlayListWidget::sigMove, [this](int distance){ m_titleWidget->setGeometry(0, 0, width() - distance, m_titleWidget->height()); }); // 正在播放的文件改变,书签需要刷新 connect(m_playListWidget->getPlayList(), &PlayList::sigPlayingFileMarkUpdate, [this](QVector marks){ m_contralBar->clearMark(); foreach (MarkItem item, marks) { m_contralBar->addMark(item.m_markPos, item.m_describe); } }); connect(m_playListWidget->getPlayList(), &PlayList::sigDeleteMark, [this](int mark_pos){ m_contralBar->deleteMark(mark_pos); }); // 正在播放时插入书签,需要刷新进度条书签 connect(m_playListWidget->getPlayList(), &PlayList::sigInsertMark, [this](MarkItem mark){ m_contralBar->insertMark(mark.m_markPos, mark.m_describe); }); } void TopWindow::moveEvent(QMoveEvent *e) { if (m_parentWidget) { m_parentWidget->move(pos()); } if (!m_isMiniMode && !m_isMaxWindow && !m_isFullScreen) m_normalRect = QRect(mapToGlobal(QPoint(0,0)), QSize(width(), height())); return QDialog::moveEvent(e); } void TopWindow::mouseMoveEvent(QMouseEvent *e) { if (m_isMove) { move(pos() + e->pos() - m_pressPos); } } void TopWindow::mousePressEvent(QMouseEvent *e) { if (e->button() == Qt::LeftButton) { m_pressPos = e->pos(); m_isMove = true; } // 主界面也能右键呼出菜单 else if (e->button() == Qt::RightButton && QGuiApplication::focusWindow()) { g_user_signal->showRightMenu(); } } void TopWindow::mouseReleaseEvent(QMouseEvent *e) { m_isMove = false; } void TopWindow::resizeEvent(QResizeEvent *e) { resetLayout(); return QWidget::resizeEvent(e); } void TopWindow::showEvent(QShowEvent *event) { if (!m_isMiniMode) { m_parentWidget->setGeometry(m_normalRect); setGeometry(m_normalRect); } m_playListWidget->move(width()-16, 0); return QWidget::showEvent(event); } void TopWindow::hideEvent(QHideEvent *event) { return QDialog::hideEvent(event); } void TopWindow::leaveEvent(QEvent *event) { if (isActiveWindow() && (QCursor::pos().x() > m_parentWidget->pos().x() + width() || QCursor::pos().y() > m_parentWidget->pos().y() + height() || QCursor::pos().x() < m_parentWidget->pos().x() || QCursor::pos().y() < m_parentWidget->pos().y())) { m_parentWidget->activateWindow(); } return QDialog::leaveEvent(event); } void TopWindow::enterEvent(QEvent *event) { hideAll(false); if (m_parentWidget->isActiveWindow()) { activateWindow(); } return QDialog::enterEvent(event); } void TopWindow::keyPressEvent(QKeyEvent *event) { // 按 esc 退出全屏 if (event->key() == Qt::Key_Escape) { if(isFullScreen()) g_user_signal->fullScreen(); } else if (event->key() == Qt::Key_F1) { openHelpDoc(); } } void TopWindow::dragEnterEvent(QDragEnterEvent *event) { event->acceptProposedAction(); } void TopWindow::dropEvent(QDropEvent *event) { QList listUrl = event->mimeData()->urls(); QStringList filelist; Extensions e; QRegExp rx_video(e.video().forRegExp()); QRegExp rx_audio(e.audio().forRegExp()); rx_video.setCaseSensitivity(Qt::CaseInsensitive); rx_audio.setCaseSensitivity(Qt::CaseInsensitive); for(QUrl url : listUrl) { QString path = url.path(); // 不要 file:// 前缀只要绝对路径 if(path.startsWith("file:")) path.remove(0, 7); // 拖入文件需要做类型判断 QFileInfo fi(path); if (fi.isDir()) { // 如果是文件夹的话添加文件夹 g_user_signal->addDir(path); } else if (rx_video.indexIn(fi.suffix()) > -1 || rx_audio.indexIn(fi.suffix()) > -1) { filelist << path; } } if(filelist.count() == 0) return; g_user_signal->addFiles(filelist); } kylin-video-3.1.3/kylin-video.pro0000644000175000017500000000016214212620632015341 0ustar fengfengTEMPLATE = subdirs SUBDIRS = \ src TRANSLATIONS += \ src/translations/kylin-video_zh_CN.ts CONFIG += qt kylin-video-3.1.3/kylin-video.desktop0000644000175000017500000000447514212620632016225 0ustar fengfeng[Desktop Entry] Name=Video Player Name[zh_CN]=影音 Comment=A great MPlayer front-end Comment[zh_CN]=影音 GenericName=Video Player GenericName[zh_CN]=影音 Exec=kylin-video-new %U Icon=kylin-video MimeType=audio/ac3;audio/mp4;audio/mpeg;audio/vnd.rn-realaudio;audio/vorbis;audio/x-adpcm;audio/x-matroska;audio/x-mp2;audio/x-mp3;audio/x-ms-wma;audio/x-vorbis;audio/x-wav;audio/mpegurl;audio/x-mpegurl;audio/x-pn-realaudio;audio/x-scpls;audio/aac;audio/flac;audio/ogg;audio/amr;audio/x-aiff;audio/basic;audio/midi;audio/amr-wb;audio/x-realaudio;audio/3gpp;audio/x-pn-realaudio-plugin;audio/x-gsm;audio/x-ms-wax;audio/prs.sid;audio/x-musepack;audio/x-ape;audio/x-m4a;audio/x-mod;audio/x-s3m;audio/x-flac;audio/x-vorbis+ogg;audio/x-wavpack;audio/mp2;audio/x-ms-asx;audio/x-tta;audio/x-mpeg;audio/m4a;audio/mp1;audio/mp3;audio/mpg;audio/scpls;audio/wav;audio/webm;audio/x-aac;audio/x-it;audio/x-mp1;audio/x-mpg;audio/x-ms-asf;audio/x-pn-au;audio/x-pn-wav;audio/x-shorten;audio/x-speex;audio/x-xm;audio/3gpp2;audio/dv;audio/eac3;audio/opus;audio/x-pn-aiff;audio/x-pn-windows-acm;audio/x-real-audio;audio/vnd.dolby.heaac.1;audio/vnd.dolby.heaac.2;audio/vnd.dts;audio/vnd.dts.hd;audio/x-m4b;audio/x-stm;audio/m3u;audio/rn-mpeg;audio/vnd.dolby.mlp;audio/x-pls;audio/x-pn-windows-pcm;audio/x-sbc;audio/x-voc;audio/aiff;audio/mpeg2;audio/mpeg3;audio/musepack;audio/x-flac+ogg;audio/x-m3u;audio/x-oggflac;audio/x-opus+ogg;video/avi;video/mp4;video/flv;video/mpeg;video/quicktime;video/vnd.rn-realvideo;video/x-matroska;video/x-ms-asf;video/x-msvideo;video/x-ms-wmv;video/x-ogm;video/x-theora;video/webm;video/x-flv;video/ogg;video/3gpp;video/x-mng;video/mp2t;video/dv;video/mp4v-es;video/x-ms-wmx;video/vnd.mpegurl;video/fli;video/x-ms-wm;video/x-ms-wvx;video/vnd.vivo;video/x-fli;video/x-flc;video/x-m4v;video/3gpp2;video/x-ogm+ogg;video/x-avi;video/msvideo;video/x-theora+ogg;video/x-flic;video/x-mpeg;video/x-mpeg2;video/x-nsv;video/x-anim;video/3gp;video/divx;video/vnd.divx;video/x-ms-asx;video/mpeg-system;video/x-ms-afs;video/x-ms-asf-plugin;video/x-ms-wvxvideo;video/vivo;video/x-mpeg-system;video/x-totem-stream;video/mediaplayer;video/mkv;video/x-mjpeg;video/x-mpeg3;video/x-ms-wmp;audio/AMR;audio/amr;video/h264;video/h265; Type=Application Categories=Qt;KDE;AudioVideo;Player;Video; Keywords=movie;player;media;kde;qt; X-Ayatana-Desktop-Shortcuts=Screen;Window

&5tf 7ʠ^dQ%nxR 8a.`IXqMq;ِQD%u)FBuRĭ4TOYe:v P]!NUB'` ~BXk!j˥Q+ZQc"= QU]TlEzߵ}!VUܪڨ1iMWD!εQEzզ.*z!8DE{/^_ͳȫH帮nyY}תU!Qm(@[nGxoFJ_蠝MNjLB*KMεxov6dA!j{VOƪQ阣!Ejq)Z{ZGw5V9BƠբػBٶG  ƎV j!DcOᱣ!Z|Z:5(){ vBHU<"GY2D]t81GBt.1X]!ڦYb:ʹ{wOeOiBH/4D  mA QBhj$S#Ƭ&E!jcKuB z;Zc(#PEG>чB9U!vd,Gz2=-(B&|m(W_ !'iE2K!RJ9j*U!2BT7yXE,z!pLTCͫIp=#BNT%]F/QBٹmĆ4EL(zTQWsgBr%N!KR=ZmoaΌ!/%EI+I)g8G!Q1D-_0*b!:!WFA F.r !e\V0Bi@caQBVڬBXlAwL@3tm^3!:!C_Y)Xӝʂ& jkf+kU/Bh-hOe!Xɘ+a"4#/9BDymQ#\.JE-zAP(xxxA|sKvw;SEwba?Bgϩ"(ӥ)BH+r'ZTiV?RKklb4hcw#I_Z-#c'EQ>jU&A;J)캪1Дh|i&(BHmRih5z1e8b,B!vlGUFg'kZR SB!VФevԇBа;P)k1GBc/X<BDlTۇ!]~=))),,gϞn zCΕpeO:u֭~;؍_~Ã!j-B< rY_p#wQp(R ͙K\ߋ⺜p˗WTT]g)CHz9 F̷>xA8O(_i] /"++_׈# 999;;MdW")z{ɇكfYm:*7FK5E%Jh3V/۞!P ݻׯ_?&A ((hԨQmU0<O#"z?;rq!~%E0|Ν{n^^^hhoڰaիW~6""b@IIIEgҤIvvv̮}ψyY + ^Ӳ'|-*ND?Y^CNR:5Fg2!aeeeʽ7ϝ;лw?cҥUUU(ڼy{Aāwߍ֭[޽ϝ;w2>>888"""&&>H+zXP^C=Q 깷 PIDAT$Roe{ָ#Z3R/ˇjbb?Ǎ8lfff/0an޼>>>0n8y &&͛6lׯ|/_I%@칍̷ދ]$s8\#ՆZb1H>?j(E f233777̤iΜ9SQQ1}t&Aٙr~޽̮HHHIMm@)hBژZϘ(<5!S˺:ssc Ǐ߼ydcYA @ݛ?aQQQ]]rjgddh{JQVCi#<ۥp.mOy?$rcXToKZSsĄBEUUUUUcWUUxyV~Aup1u#KJJ޽{k֬QΔCAR$WU$w\ҕ ]Kx(Es!W^.]n~;w>ӧϚ5?yD'ʳlll`֭kwY.KaSXȩ|VDd*50υ#rX+iQ8VP'\r{)?~mggwe;;Boo>|ܹ#k(ʕ+7mڴlٲK.Iҽ{7֭[_uJJJPPPYYٙ3glx=z;vszd'qr.ņHɣSjƜӅ8]C\@6$/|kjjrrrN}vftƌs̩qFxxƍ[СCw5hР[n_})~K,H$?{&MRٴiS޽矌 f$Cj`Ɇ>\HhjZo7hA%n%J,v|e+ rF!A^x:&tx?U\ZoҠu;~G,&qF! гfY]2Gq!ÿw3#BXN3hڙvf:;Y#UizŵybPh&N;NENVMg'ۉ>SҲ$It/V,G[vBX؏(aǪ!x8JI455uppx>N벫maw[ҌG~_F /qA!v2]U@ t(&!Xt 'z)@E!bA%q"PŲNhsp=Bu Q( 4BȰAj?n !:VVʘi朡z!A>D;7BlƑnPBÑm' bnV!iv! hp1!BxKN4 *B!RD;F:N@!ݝ B!+*P<ŨFZ\'B)+ !;:qB\SHIJk|F!pmM2Yb"B9??/ȕe1x¶>O fmf/I??~8nooWU%lgvYl~~p.u ˗'rƶfmf/gg>sܹ,(fW~e[6kگZk׊x?O26kkv{}}}mmyEQF;woC$$_g5k6kߣj.\- ItՇ~ƍ.]L&Џ _I~gmfoh[__ꩧN>;O=;t_!@xgmfo|;wO<$w$Ixsνo._B ِ sfmf#j<\kd_E5uy<γn녗^}gOo=}Go@|[3Io 0uUUU:buu)qz-tn@/<}k׮|W=|/CGy֭݅Q0m'No|7r1ńc3i)#I|}~}U !0b>ylǛZmlqsЃ/& U h!~ Y /Û88]plvy ($uW1|4Czo__L&yAtdAx:&"B@BȀ$@ (7D`7Dp 0 7j3"F`14Y0"! }a l K1' ʀA!T<( ]oUaiS$HUUeYBUUTF¢,FI%bxr<G%ti;)WoZxRKQT֗._i_m>//׈duX5!ɤ "Y DD+u) ! #ɢ R1DDb뜛1 Կ"# )("&0#GF:@fD֟#"CE  t&3yJ@) F9˲Y+ZN49 Q!lqyVxֶ;'?z??UU׵s%~fsIjR/(qk44ɿkv}ξڅs [ 0D3S fr2|3B H$W 3K @c85hFԊ!Peb 0b 8 B%b9BhӤ`~sC*l 9%TRnH:Dfe@Nҝr2.+iQ i{QBx?&yŢGPB̃k,PEfpHW)uxh"famr8F{8 R$ ,N3Z9 1i5(#l O` A&5h@ bLK8;LL8}D2L -߈Ph J,51{1/M Rl  LdZ%hƸBPM&uaH$ I U]1vUVe+VkPPc#eY4+r2Ov;x8I!䮕)3Iʀ|b˘IXYN&x?[p8D777צ69,Kei6?^O,䒓k\[__9[>uK&dH V-%̆M) `I YXA R@8(9`"8HSRVslHSŬ7f:l$ %z$VF)"hn# `$"'H AjM(>XF,Љ̌)@0aO4ԗThBulC#M4rF%3d1 Lq.`a!%%6'ό\!:D5 80MNHDJPkK+B| Q4hqa#E |@ 8P&' Jʪ%ˉzV0P#\1eiz/dzh~x9\]DHУk< Oe9q{YYNq2vPՓY+txxrGm<69]!aaAjDdzcb kN[ٔ:M>YKBP^ HT1"Zb@ =pmQ 9y83bâ9 (ni&PNFi}(sI]{"u:|8BgYnU1bRqƣq~ii'Zy4)lQFnkcnN)CT!Y_f Eb1Q*iSq !(E 1"ʡJA9Cba/d=M'7ɘڇ,ɥiJ<_ZZjwxRݻ;ǞQ}f9Cº]$4M:npuŤuv[y^ZjG刵A,!sXbXj-hmxh! {A`(_Ū-J=#^U(0V,#p'MS@DHn ^4Bsu7PksZҐ)?nҝ&6 s+)1!D(J½lIQ KbDA 3蕚'ŘٓKh^ 4Mv{h< $p$b\U!i$?1"4EZ'pG6 ̚8#Iu"3Qk'R)4m[g A6Nǔlh$DDNr!FtBQIj̑7_/zl"@p ȁ!"&,g3ȈԲ`raAfj RD fHh# X4a<u(qdU0:RKR=jh@-"JbP-H'֤.WBt}(Głٔ!1:+P$82(3o |$կUQWE+Oj^QL8x,rDdw8 \~riumgp0z׊: @)&i-i:Uw|KVu_ M{93}~ fy^_WoPp[W/]xwL? IѠ BLJ qeLL= SPN$qC@ԓBD{ (T5rAY npX&ISfR()NXʟ(Өz{TkXĠy [X2FH|HTʹX\qDYݩ>@-H !2c@ٻL A:Xf Az[2V;6#(#e1,oަ* ! }9V٧` I)f=L P :1̴d"8䣕6a F@V*GY+1!,i 4qNkb>:>ʲ@eI^+]:^'zΤ_Wu{?z_RWVhbG3v`Jl5w"uM M\9ר!lIM& GQKl5iSF1# x]%2#MKMĩ+ d S54lJS AB9bJIjԉQ+K@Nh#8Q{T}F3.403z>Ue-A.!1b–IFTVc5&ݳ=>-AJ92̱ \TAu1>,8&2H@:N!tc =;1/Fl=ie˪$&hT ;(qI IBP]y$蜃e) v;ɕoϵNWW>Cg3}勲&GQRcrꥅ4Aya 4*y\LB99>>[~p{B VCtP bEpPAʏnCt^=ŝVrz*&U 1!rI!zCm(K9%k$q**BEtO,{+(KtYCPϫP6iKX##0@ C >Akܢm1e"&1ͯ'tr3`Q%p8`Y(0x$̡A"@ τ,aI&5uDơCwF"mP0=D P't۱a8VDM/ ̞=B0D  *cn *jࢎa`n\d܁JɃ/zR!xV޷Vɲ4MSG.qy9)Euֶ#:8>vƅwn'Udyi"bON۽_aQVo>o/ܽ{8̘2\_lXJ֋^rnGԅ}>jPxϔōD"; u$XiTduJjh>*M#D *9$pڢD[y@A1ȠĐ(h 9T4!KñX⑻D"@'jc!=CE!E[ǩq3a%HJ5h,)Q5II} O ^ /s-^AVԙMNTdb"JDr`C  FTZx)t"bF%%J!%tmH]`AYI̗ A7+`L6bAx JX U'L٢R f&45P1 k@T"$ IQ+wf U99WTU(30'f~Q9]y\T[s+%x+[[wo믭;=pReZ=p+|Q^zc?<%'Eq>v&}SԊh aƶ~LGTXx\Y&(1Ә8@[Lو>PNz`JaD9BKslz>XF-JT"d'kZ>)G$}! ٠o~Mvڳ34&$D$Dd04冸0IeOA~'ک*H1I̞Nܷ#X@721#)TBL`d G$IR|U#z8b+*~yId<zd4^YY @:8< ChRNeOk%.J__~{4֋Sm1&֩&cbi#6@x5D EeE+j+dt9- .FmՑTOډ]4uHEHS(;s"#RP$x/OacDd ba$_8`éQ} 0H^cd9ș̒]:0N U,F*S C5RjJЄ%HV)6VҊǤ Ap9bsjj BhM0Δ*ZEQa$lg 0č)!((|1^a&7ܰF@)lwŝIU 3e-9~ߑC"e^BBGwn,˲Jw?6NX;{@pqr%q]NV~xt4vnZ]Z3X!` H̺dǒ~*RAH3<^̈TcPtXVQkrsdX5U(gFAP{1(rZS9@= S5:`oiU=&Йh'"fnpKrՌXUB-7HVIfO.=JXw)EMqX- BP?hԛ 3;+edx$%ºȹ,88>Z_/#t4P,,~99DX0#J*:O]'F~KEC]6Q UÈ׮tbr ؑ zQXʣ{hO5%}G#nbCy"Qpy !b< rhWzà՝Rjir&DUe /:AN÷[sAƅ(Eg58:ReN$QFm4RɢpC檉MMroMHle+*[\m2&ajWa}Z]iPK ͱ^{b:1RY׉K@iU+˲K8[YV:mqQu8?֕N{`4,GLUY}/X^^ǣZZJz=ڼ}FMJu溭n;O4^{m8]Z+K陥ʾmW| j5P =ɤ;0B6KoZq&LAt [J^&P1n!p$óah`Sv-F0b(h6mN#ؓp{{IF*f'q<u'L#hq[8QJVl]gu f t6Y7AC!Ҋ>@ip|w f|28`yL16^&^kSfEؖ\-QrjunPjed,g.&n4i*2&q<OC A9$rss!Mp0lrϜd2K KK B;/u`𨪪Roea^rseמVA`_tpכnnZYY^UDn;Yﮯ?ɨXJrh{eG z%v@035z҅XJ5g2k݈H[H7!lel-(i%pS` QeFaYMjTq%)1LnFEiM7ǣ`I҄brاqY,e1ysTŗZw`<u[<e44 d/2wl@'Q֚Ju*29ŸI C $FHJ% ~\z `Z ʹHu?35 t ^@́0GL)s+qz6LY|`ƤDYLZB<}i[GMd]!2ζؖ-n Ӌd31iQ  TPD^9<򼘌q2tx<Gnoo?M]U!&Ir1iz+}^]^v>gz~鯽Ȟ+s $ 9L૪vsVt~imnw;i4oߺ5?P /]ykG~c> Zn^|ߦ%3IξkNnٞ6`>*5y؜[ɖhv2%B a2H@T(؅BeUAyG4G96oG)ͯ#d;cMcezmlFD-5QfS|B 5m|63hZ~xf$ZȩQ^gײa"qGV1^L`>=PՂ} >^h^ zN![ ԢF4Vl,@R-9{F#%&fQ&oQ&X`nqQv/>|YPWeu1iA;Ud*B 9X!VKIR埾xɁ>wiR7OQIK AsQwFKO@sM̃> `)XV?7BdUR\ ^tZ/ŲW؊ῠ|1n"T o?zUs08`V ,Kd1QUѠ9 & Ʉ(U#"b`k]$oSrDS=Ki%8B0`+ޮ:IIB@45/M.DDU&OtHKA|p{|Mu9Nbna`Z\NFu;w[gϜ<=:|eE;Yrϟ<=b*)gijnc){ZwMșk4\ .'OP&yQңAgBt}X@gV>)F!T bharsݹĹxiUE]>)F~Y~g3+wݳNPWSesn-θ><0%gVڷƁ8I<'<Fv N Ie"`g @s SZdg7hE~䥂1iik -6GD-DPY356̼)hf0^èoScߕ*W8V6!׃D KvS=h, #C&Zx M(QRDwRzȺIHJ~ѳ",;h1ɕE(/XgoiZ9k 2\ZD bl>}XYe 7Ea[00\,*{ n u !H.߄dûJO?)ʗk/,~BTn:$M] GeY9P]K%0dŲ[ {=V{66:?~ĉo<~;!}"6'B4apq {ZҤ cfb .%5Ji0#Ҕ5j ;[`MsYV00֢d tA4RqQtߐ]ƦJ%fLjm&JWPhƀ5JRs!7a/))~ Efz+@z.l+!AȒ#^5`GG׆F7L;T"<[*\ !هS,Z F3xf}[ɨZM>8FftHGA i)@8LN@Y&u]OCS?o^qn`WnO&=s<.kϯ\0}wS['Iz i1_oRc%xt+: R^Xoxm~<4hf̓Xu'M қHI^J$VF4iI1caw0Prݝ(jc8b2 Q+A&I5F,U ZGt;aYfDV\eVJQXxgSƝ=\-Ϩ(J(v8M`,S y@߶aHhSnn^Am#tU0`Zb ] 8STDW| LpZ* ,Z}ݗ_wΓ$ %[HS%eUCR9B*( %R  ft~9ݜN?Z܆=眽Wַ>Yk .eB`iA2ʑƀ 1'iħ@' 6.r#1P/=,__rܨrJQ)ik`4j%~fZ-T=dힾ$;*F)k׮ܻxߨx)]2V^EP; 9TF^lS+ct'xhfsXkĈ@$cE}s%pJVu uQXs8v \rDv֊cw`9=2g#n(^ (>B86r_TD(࠰^9QkQ#yԡ"4~Q h.\8Ty3p<ќ A!*h &)ė܃:CNgdԜqd^VCbMJQtg0.Cet-! ( Qzv$/3YiegqD?,EQܨ]/|r uNGǽ&dQ{Ko|[o=YO7I8kI7)5gyO+(OsP]=̲[k .60yt~U!*cL6$D!,Nf7 $ڷ8ud9z_+İ{DiJ3Q*?LAiGeEj$ΰP&k$g/R m$SOK)hAjbW 4U#ȼU !{=H+XRHRۢ*,-\{Iw:Bv۫RҪ__s2+> [ R˨d) 4'nz2IEÜ8ܩ LjKM~Sx6R-/c) g\R#E0xX x h)=$ȝ{qN>COpyyic}e_/OZSNvˎצG><<;=9fy㣿~nZ&(ѕL 2Ŕ xmu#lse3^zs6:팆f'?_8}ƥB@o @?*!BXc d3%BVj f㰎/|XP-Pc:BᅍMdBҢtK"#ZFA:9n9h83,L!`]ZAkط! |1EmksAiyPJ=[\!E`& e  rxaF#L xz7ca0B*" #K)_DPa@\/jPN-@XZn`^Xb1jvU8KY|ޅB` T1l=``DʓG9Z NgYzNqd|kpvm\nKQ\yo乿w`4kUӤ,⮋]zţQc9Em+䥋,=M[ppuZ$w_Ʒ_}ӣ[ 0P S3wj4$F DmMW@V\>*3`$cuݎy??uNVǀJ3 +b5Pb)ƠdF`hrd`'AsA$wOlŏ&ڠ@GBQ9[?$(Yj$!gЁsDXnQVxFOӁZhcZLVUʛ-e9LMȣ9'$CXw\aA2U+c|Q07XCV*n+uilD۩IaMQayjL`U")tbb: ܞfCTW}4K(ɤ0;JJX.IMkFSz! bX avu|#Kb&)r> ,wQ{l<=8:ǕiW.lpv+S*:2ԛH*T9qL;!4w9/ 0gu+ l݆=EPmy`'r(B3!2R N${)k ; N,fp` L7u(rs,g %2ek69ܭg\cyxVYZOfރڷ3yB"9E r*րqZ]d8I%u<`բ~Br$dr^z;##xTSmRGaFZ9=h9F<oo5\} DK" BimmWqQSzI@*Z|1욷ZfQXILvW ,DuU7Ql@gY oNq0= -sƍ0=^H:`͂mLdq<DbV e:cc+%hg2 FAՂMuj~[qcz{YN5Y bs*B;vQTnU㫛FGӣx؊}g I_fQYo֦nW_fgf_xX}lGt6^hj&3־sf3\Qu@"Ϫ۲ B? 382DQ@d,BhTaZFQl1*hm栔}A1,mPv`@&.FwiD[@* RU 0TwBhk. EV*KVI* })_.` I Ar f.Ţie@5":D(hoюgBj,_NXZCNtT,_#DpsorGZ}G2/gBȖk::@cPbad # ]+= d sr H.qfY`d<٬s֍[j*?dV}׾G7nn-.B Wꟾ^vNYCBqo4|v & ]u{''Gzvmv<%?uquXKۍtؠqUgv{[.E/PV JW ;^PQ*v[Qx@DNI>{3;YcїJ8jȱq&ɞƤʾ:pS !Z!$ D|t=zsVI!F] C`-'` :q3XaKɩ)6TG2zhO"SHdY7$BFIEeZ@ Q3hn)dSqqQn.HV𛈖V0)m֑2V60 rFRτQzM48 V'7j"%EiҗQ\y`"ѣ" gI'^Vpi#.W W ggx4;sj{Z¥<wz];ڈqnVWO_ӳ/Tݨ7(_h-U>[>h4[;߻ueR#4N?(]~ymgQ"FX3e4 }2[ɬكhlT&zh /#Fi +pc8PeVꍆYBk9=2y\ŋ+>RQٸ]3.ICl=4Ӟ43vd,d, H!bN6ERUTP3` H:ŬEb| !` BJzgVh5L\$x6-XYy([Z X6)OL'B$DŽP ,A** e\kLj&#z@4yFEOEG"6lĜtՑ+d^J=ָ:-# :EdHz5?aiY^?Q<81HXKVl0 gxo;_e?;[)Jq Ͽ{[\ng&Sr>Ϧ)=Yq෿|poTKݣN:} rŻRVuhz1Bd@h4\MkElGzŊ1JpQl2|)lA@-&߆+h膋 ;@ߨ{5Th`:(`б>|ih=B z<(RT"QX1D4#`͓#y0=(i( ;lXƾ}7 f@*Xr1&) CPXn Y%^?dWBɿyAy»ȧ+4CdVC^H'TrBpz OuGsDއ)K@mD=@ p@PM3E&=An99<sbqR"te *ihլԫ[M| 5ުf{+WZGY6V;aZBZ̳)zחNgt{vyù˗*Oo,=ܥM +A7NV7z%=>Xs CWv8CIQkԄ! 6dciTIiPĂ_ty[)#g!H'~|~~G9p5!dP0tdاBV6ۇedk@Ͳ2=Л7tEl8Q|C C$kDlΧrDC΁t_'hhn8]IE2XV&goY@ DrPB+iў0nR~)`͏h7/~ZZmXسHʸMMx/ŭ#4(9I((h1LE*ju N'y"iڍR3fβl0W+Q0y5˦qüR*a&Jͬ7vvޟ` o~pJG/_a]޸48&++`FVy>p6/\]YA?(;\ ]i"QvƇ[ttt/IV?l{8aWks핫x$ϟ|Zl3"0lv5ȜuzR̖fpT6%:cF@@&e 2kC򫂩j";mS,y#c"&A Pܳ~ټ!N, fʬ(k6W$Ymtb-E5Ws}7٪{1d?Q^A$,>9$x;FnEf '+JѳPGuHg%9|X5uU.t<:(]p W;k$8wD_N|ތZDDAZ0 ;\{έy,Wt=߻Xkdy?E F/$*:DEl>0'F!ph5<183DXa) %`v$,|:[<pnk?롶X)EI)tSTVɧg,4ê\^nO&Rǝ%s{kאָ.G|ν;$dyT*|2J9WJjuTJƉ/Kq>)g/bFn_Ɨ&BFEۢ XnpaOKQfFJIV\J QUޥsh.ЧCY4#X*YɈTm + [auю8RaՐܚ#QMUBykuEǐ'f JBA!#??tNE ̥Dm3J!R`D1VѳO6$r]iG^oVbIDrs-NX$D, OE) X21!JY>ɿN:_^)p1$KO2)Jst^InVUAϥÉs8 .S^MOp0;` cԹJy{f{:j%BMi6ȢR^ʓd6#UY2]ޣng|esV?jWVgNjͿOAӺS hu2 ^V!&H`SQ ¬!5V X">RedKqɑGd$hx?m!v YdPPGp@(V \`Dlx 0Ӥ-jXL+Ab.B!|fVNV 2ɐ)ʙ *$Eg̹r1CSzP:vV/~y7lU[I>rc4(MQ,'NxZFDLgfg>ZQBnGFGfͯG8Me 4%_;z?O]lp::SW.vs˕F!*K4N<:'7Fu?q aÎINȼd3 o\`tTi(! @ȼvو]T/R<"X0Vf zaO 7} X/ z{lvHuxQe;6*7ڜ !Y8]maYxn5re$dslP gBIx*2MX )@9%zEdAZzevDp!i90:r&&QJ50X(tLO`$ V̚0afB0]0"ëGEI !,9 +wwwNtK'Y%Q'iq6KS<P̅UN %z= *չju# "D6ԥJx^;G""n,fA"@H!A`N8dtԋK!Q xh/+{%ǟ>;Yvܛ|Cb{oQ%~[:D0`uI aNRp/&Ҩ@jEX{'x†a #4TFK+!a‚3@%3`F\i'(mo*xƑQ՜=# aR0f ^G#J KL"z/:/0j;  B=~*Ԉz gXC 5Whۗi){ Y%ԄP w{|mQ:bRU^+9EfJ0e$S8^F1!4 "Fzºk@4flt(K}ܼ48^AĨ0'&}.QE3(\mUXeWneG`W.,~u˗ܸpc J^ڪ5Zbȿʤ7ReY*ި^8zqTm-4t'^W*ynܸqorO>lg9tɣ܃76H _U`Dk^@X-yfM63ۛ,]sO)dzR~dlO9"`Cm|2ިf|$@&bI+|1JUd uCEl/ ~Df(ŏBkNFQ3"  F;" 53 V脖3.! I;Dd)KaNjzyǐ'2f%)L ݪIrVnEƐlI_4+ٯNPOdQv)3K >#)Ff.H.%ȞC>e,t{1`ŕ6~UOI9dgh؝8ZKUzB-N+ ' W_]sg`8jk*<>}{'o>si0*Z-=RV|drh-.*+QDlosKAyS[G[tp}{?矹l?:`(}|:9˚gXBS-B&֠ hz18"LLo U)yIáPc* Y<.:xF!oT!j㹸. C[f# Wb329@0H-NeBC+ @VOoUNjX@9Ԇ+p2ق(b" % )AI06%O#*BmE>e| 03*OyQ:B/H[8xiԫ4学z'Qb yd೴R&?JVTc.{$o>wBy| ސYwq1zrKz,/b;/^yv)!n3zyww؟?rvz6GUjm;oEē?+o~z~'W~e eTBH?0bp"&.iRf|cdTUBVZQRS+Ejto՝piVE cdJԂp1*nؒL7|0E"V.5]|}ĜaKiEzJwdJ 6+4i#r]b! U"($זfܹ!Z-l-4Q6nFrگhS*NᆥBohA]ts,@04*cyȠA `%:nR0VCFc=6x.9G̅d$r(竴+fբܾ@yp!@#߰UEuV-6,DL3@ (~A?46X"jFu{x`~30[ъ=pK"B8(`At"`k4x6--:֢qY eqAj7;'Jh\ ,[B$rֽ@9i^FhFZ1tኁ#99:Q"O'd ٮFM 2( SБt"y/*LX[amud "z&td=r.-/.#7vtSW..֯knm[ͭ?̵ OóY6^?N/nn5%;/O?ݨ 8IX=tqg9J{Ոej)^~z!!'s]IQ(?oʠb2lEL/Z䀝Y /ؐeΜ:4[-xBA!iML5pAy+O<7X _q*)D`ԨΊ˱O 3b VeU=YL-Yjd 1N@1 COb[e sM`T S5 !sōE`ʤ46KRЀex  !!JpƳ-Nj^@tF٬,,7Kv{7}zNv>dqZW[KU4. ({Ìb%w?|S_(O(et3rl4l7ko Vt2L./<8ɀ)*=6\zll2H(Y^Xx!"]Y.}p3ZTV6wO >yzj/7U?){wL>L*ۏmfsb0)Vw1ˬ{+X'xn2<`F,Bh; !Y>ъApsshm爟̼<Ā O\պM|Eh9ja\ DÆ ACʕ[ .BĜ;AL^  [-38>O, Ov2Ӡm@;R7,3 q\(SvRV~~ڨR4 #q"R4,6<{.-KC>e'YݭVU7}sx6Kadp\5Wo<0N] rǯ={7/]?[ >@ y;`b2*VCl̝ӽfMKjM}^)kpȿlkD;2d99KZ9w0֑q-d+JtJuAIAO8@/T؂Yի IDATP𬜫fU5sPh59xybմQ:rK[ʛ(\hĢ EeN::/_(XNxKB JvEm3_P "Fa+! \8AG\u7D``q.:ȅG@L` "ΞԮ p34g{ HsiI;;# 2*Dk?w5:)Wͅǧ&~T\P>Vj#.GIM#|um᧮W7z)!zժvH(>F_ph=>oog9||J蚋3?F+Q k 2eؕ:~4}pB>8o>{PKכCxcޭ}6 +T*Efo޹FBv65%BA![ LHm-Tܜi~Tu+Or- b#6vB5H@8;#P#'+ Õ@ Zc%zW#:gbÀ&N_Af`)9tE"=.B+a?s  O<` wO%  ?_H%*2B, CLEDjˤ#zE#i8'-0⽀4]W7ȋl<sNS|ͳKWO ]VzfL\jέL3zֹ+[Jwة4Ϝ/nm51yq)m\XqYZ+*8NnO&z=tb%NF_^ROOvNV1qeXDԁ)+fC SPdȜb +|&-Jh*ġ7ؙ¦7F*Z*԰Q&`f`Mڍ &q.|er̆=jelxbBVL#= `r'!ݻnIeU0zlb9x.,1xG:TJtben I&ykP\-T6Lk)B){#`ͽ[Y8|:DeYoOFZ|)\~oLgqVex2;hտK[0}6KN f]T4kGg4Oo~2y,Sg(n4k2 3w2Z&bcЭ8~ }=dT~=f{g׮]Hif^۷fizv]Znφj(Mf.LI7㈡6$*T*r q}rzV]y敓"%1#`^.U[q ?'^XNϔ"JkH"r+Jɤz{sV VKy(n %"-WãNfo$6# H Ho̺α?Vπ!t`ČiyyK{=ZO&9,LVʥVVpwz9KjDI'N45.-7q^{e>Ӊ_Z_k4?^R)v폦T.4A\,޿\:ML&ԿqO\rleg{9n=:_DF<N(ⅅf֚ :;v+KyoTWh0UKq>|?,=]zVW`Izq.SL,F+ hIE0"y*a3<k[BͲb|"f_-:唴rd6L8T2 5zhQf`Br3;PK@r9w52 NJC1bVس=.  ŏHŷ x@Vl0#5Bpg!R  2ZmW#+`HLh5ף ht޹LdK;"8aGIU$v4vuA=@-%BG5 Ti!1׬a#΂>~tClU(qBj%əZ~6b2O';?y~n5{#$_nӄWgkŜ2O?GįFO[W}pqg>݃U9'ݸyo٨tqg܅Q=>^tq7VmWj9}`j<{aVÓ J7,3xtйw4LGwU޾=NbLΗl~;|n_GB9*$ ATL5#"PHaU_2,x (rD*f`) h5S -"M,UF8-X, DAbDZ !u>ΕhnD)򮍸u&XzXKs"]_MWI^ (P%lC 7"+Qd6X譢Aw]!iASa \HV$2YfNׄ# 'LN5CPelJ$@$g9$,DI21,œ6ة7v~+h9=h-&GM7.\MGZUv>ٵ.{umzxsrxh8q[d0Ͷ~bkҍ;;I^&d̕TwƧ?y6V?O=}ǽ[qw?_{a9̠n7irq9ߺӪDc+m=:Z+=,ƵGYlTyoQwƷnhg|QT~磽$~൫}>8uhfqW1uϺo~f4?+_[zUܑ0lG0Ԭ8\X\AQ*? M|#:+TD VI?2fLƬS Ko"+"Թ*VZ搘 *RC&t#" }.HeWRN+ox4|n~НfL?x֣q?Gy> $!W]6Q'gY^yn߻ qTou%ZVAhdɤѬ}xv _:W O޽7+O'K+~Yre׻w0ZwmV`P/9tw]XvgSQISwYqׯ.Ⱦ~ ն+^B%r@6ɵϩ!;D~L @Ĺ':'] Oa˰, 9$hR\B\.7r/ڂ5c'݋.J+A6ELGrKSX0P=:-\ Y(L<F*F"Y)'>G)@h a?F6M(]R%Fw~,7tJyzvxPmͭŵV'WڥR\;{^V.:̸f-|Oo>?=LqyaqAݽj wwrimlmbW޻sxm}=Rte> [f b7tv(jfAeO_uR7M\_^ʛ|^N=<8kj.ddڟ./5n㍃GGWRv'hx{umFӸ|vA䳳slo=z%HVq4!څ~u@7R]3/`& Bk2|QwLJ7i3=H@cMh3#'X/eG9|hABلpv ?aՑRRw ~}]>@@#&@BۢkɹmVd,5J* >K~тQc]GFHN_b~ܞ,p(`4::R܄[Q 8z#@d;'Q/ZvRcxoƓڪ9{Z˓2R<'niavopxrүrۧUn7j/fnr~mן|{rGzg'$T?хͅz4Vn-4Ocֽ׿ʏ>}gd0>}zTN7^|J݆OӬR GGA'm 7I nfjdgeYv'_U^3=$'1HDH ?Xi0-6 @HAR42p8<==S]ݕ|s:q{so {y'J^?)<aVzux|qҬN?-]\lӍ{*Ǚ ,Ȅ +JgT]F5LgViw omQWς EQ;4xBw!L#nXCi\!2B>E. ,d*UXv_7:{O5LSѮX"fL12($@s{()>FQʁtQ42f\DY.n*iHkP3U8' C! $+6b9VZ50_dT]`l{#sBaIl8ܬa3tʘD-<;*eo߾2X(_?Z+n&/Iw$.:ZQ hRI?|w{NOv;w.4RΠF1A[{fOtmcm0(qia$DR6 \Y ;[VGֈGRh0lnES5ŋmBqsvuԺ߾>ܹzH76}(7:_ޯ+$*ʼ@%<]m,l%`@SC !Lsd czFaJQ rj)4FGɅVf>whM=]"Ki-}C`a%͆̈́@MqU ̂ $ڠɚ#!!PigJjM u,z#Bɱ@$LS%FdHS;4#z >BEMfͥ ag9#@`2폲 u. g eq0ɬ]-[wY=L%%lS;D;@ a??PBemd9߫8ŵuOdn2^ o\A)|߼yY*(Q,|R>:nGB1dĢn B\\ kg7JyשVVkg~KRյ#q ilEσTy;tgҨ0:8O/l.׫K s_z<* ']>jei1:QW菾ynq0>T 0J ǧBq;8nN{gIN;э˫~ ;=núڲ+sMikdB\,6}$4V4%.iYl}Iꄽ "hKJW0*Dj`L )pAu1:4hX7s,hSjdc,Be$h ә"T&շh8̀ fe]}h7=ԆQ;G_?եӟϻs0h)J+k?`k\qZ8'8VYt@}񇏄ƒnȿ}hYB7wg_8Kt/x|:Xj#.nr=At pi긞`;mzym"Az0۽Iw` Ó?0 977Q疫ͪ(0J?9z^w8ytzQ$|Թ[ÿ|\/Xw4TkzA{jJH5ZAA_΋-|9L2/. w~8+6$p3XX3<]3d̪yЂ̎р;g'kp]5$ަ{a͆kܔbk&/ ZNֿd*Y4KRVDSa!hFM;p`mt=m B\`v{F} +2 $-~c(LXF=SoA\ !%&PQ M ْ[ Ct.-0^OP=*2-K{K* 0BPVmh齾xI׷꟏ _y컏ke0jO"q$/+F^߬:'NFL+M>yIݓ)LRQǹBV+|(9髷߿[rXe>_b Tt8 KdTy~P)^qgJ`yu\VE~Gh" eH`Z.S)Kσ4yJ9wRB|wwʳWATiOTA3~ ;B%nN&0JX>?QAr~:U(>Iq'qV8Sf;k?!L?/,a, .^Me"D)Č`0ƞY$RSZ*MH`|M7Qsd,bX}~v ÏRDH~j1T؆{ҬnV/w9Xrbru@`Ye$׎IcPGn r+%]o5 &kS;ljt}0ߛ#x!@;,{k(Z͂Y d:LLv1dgm>X?X zP6" ^z<ʥ^*͵5҆8]_;.DчJW NONt^{jwNN'q")0*c\$8?ۇ=,;p{tR~b@5j|r5Wϕ 8` IDAT8QkcqRFXeVtTȹIX8:aVw|>T9~Oi*JQɇA 0u^]^[ގ Ͻ|~lS <;?t;`Q<ǃn4WN}8zŎOHp#.O.,.(/|ǽ>K>}'&U I[?Ѭ l lz]oXLLo]ՍhĶ!NY*gi7Te6=Y$ͥ7S2i̽ʄڎp*@]Zm)m~^9 6>Ki#^X0wL[l-x/G`_:oCН6mjƽFeĜhh@H-Fz1c4imv&/CȺ}^l~Zt+I0Qqw ­H}|\{XF4DwT*519hUóO-v QzɋW7 Rwh'@oh,ϗ|NÕF n*Us7$ 1y47+WDgMO^7~^/#)TQOs}qܚ(^/G Kj]`oN;sJ.+EU ½{ݧ^r* -,?`ְ 54]m0pB)kAf Ruc 4c[o%ML1ŚGc0m !$*D ,UaPVi`dȂM&mH $V&Fi3ө-@FX7-Q߲ 4iiAA`$ L(YΠCߛ0~_2P@;]Y+j凾uh:gly0Ձ+[٨EA4|SFrBf=KeS{mEs`r ʪP6Dz71Y 2ܧA07|Ŧ/W'Iko|t4_ N77nd+z-Ruv?y흻{~Hx>0x$M^Xo8Z&Q֋sy|ݣ:L[_ꇧtr,~JmNݏ\7._ B:_UJ{e_$|/\Xya{Z(WV^*]<9;: CB-7 tc:BO+Y),7?8/5rG:饕xkr<O1EP\Z[=Iu|{XWazn I5f?/?87JPtD"E[^Zpa|{Js_?R8e*Y"`8eD(W D?<<+$\mʥ[[OX9n?<8Pl\;0:<܍OQM #>C.!0區S`Xs4TV]!5+ˌmm4j_W39߱Jgu[}յB, Q~cOm)YCpV=qnj_+uASbd օtf*6m`:s2,ePl鎌#3Vv2\Lzb8L/mFU`(R0 G D3mDtʶ;ɦ9¶)ݬ]#QX (ckBMoG1%`a2GAn, d'm }<}T\hYѡ!QZ LeM{20P^yu7sY{YGQ/kK?}/W.nzo"ɼ7jE~0oF)\?8*wAԚ$ T93Bͽz&BV"aK5s2\񤛪p'BOj?7jZss˗7ք(ϼN&GK~LIO$Cjex%/RۑKoNO_g_s#>gY6iץn/ex߳e#8+ytAW@bVXW+f>Iߺ~I3A`L-h@qL ~l4D!hy儘mv/S&T@2@)d`$V9}YK@ݫ7y'PGN袉0~`fźXRf$-0x,[oW4A/5}$Nϗ~ϟ #nw+ #셝*ZLJ7 \իnann O>_"-zZ3yc3n{֋5Y_):2MX MRuyc30_[]*Iwp/ռ$-v?lqëV?:|Rsq7 ΰ";=JA9^EytId%*T"qdJ $Ru48mH * Xyᨔ c0dh8ӞDRcp88 rǣB4 9Ò qD?v3O/< z3^·Z-߽ o>^vB[?غ}븪sIo+k4< 0U` &:[ nTvH`iEGEGS_g܁Pbe^h Z_| 4<#; +Baf ߈ ݑfɓ ж~'s% sFe#Q,wτ":Kew F)YFF)NO6c"CfrZ4ݾfD\]M_MY mu/[<.ڳ y?fGLpir@h&ɖ fL+g6ga>-gL`ީPQuy1 [lbia#l`Y۵xڟXM\FzP3b\nwGk͒"Q.5O;gaQ/肊t:F>y~JS%i<Q8V|$!tK՜Grwgak4WIJB1qʂ( *B'R D*V@R!(utS(QJڸ@*"@)$0K~(i!fvA ̬@- ܨRG(Uf1~B PT+F:$ (_ً@ ^@I͢+塑0+s+g?YNRl}nEg.?>y"9 ;Q/A?Ggy0zq^'^XrҨ~?Utzi??/11dPI(r12+XtP($'ur(ĒA㺔4dvQR2@"B2p4Q F G)dV*LÄ(]M¸Z|/ƣq^WKRl7zu#yY#yh蓹 f$`]:Ì83*K"6TiNV(ng /L4ϊ؜6e(Fs6X2yg!"=v0͂ 6o\sh&,,t7ya] `:hI+jmSLoQgQLKc2)]ϙCVeuDR 'ѐ ^H fL6?MC z\,'NrY8Gww!)KӡUTYG_Ep%U؇I(ڊ#ݽ{1)r NY)z<n.VpšR^oli={{_Q E,I_M%OX:q$LYTEJS%Ы# P pH8R* 2d$2QĊSL2F(d]EǑ%CȀ( 1،GE$ iLD(1xϩJH8/|pi.L;+[;uq4+gRvQD8 W^}ym&yцx 8߿fпxUno2C ":WFd$"ۤʨ cjQ&@bstδVPkRE[:L?%tG<#f:`d.Ռ*|L_g–MfXED^7y#vV@7iqt铘wƹUi"!!*2WEl&vOls'ęKF-jH`$ѻ6fEP< Ѭ쩣Maj϶L;R?tHq.' '6I/,5nV:=U8O*\Jp_Yjեb3\Mb..7|ƒ՚_`p;AJ,{ʑg_xgo2V;gxs ó(pB5q< [퐄'`ı$XITKR&JMt0NLRH$(R  ZJDJ*+@BMR)Cz*)BZB(I^_qTlضV\n|rH*Tx|ܫVB,9׽sҭV͚W?{rnܿ0wҋm[R_Z\WkzU*MAhG^ʾs+zMHM^/yA؉h2JrDL`*ISU6  jmēu(+F Ȝ$k >O x"0jC@kutmq$0u)f1 !i#L7af/k"gVǾ&'&iDoCȨ< @0l}P3 Mhfh,k3MioY>2ȚfLfB'26ەF p{ǻyOugυrI N/)+v;$:<IkN IDAT'+yJ~hNKM5jUG][wK r=&RR/ʳH 1#BU ^ ȨwH$&R&JLE`QA BRM(X:*ݡE*fEIjzx )F 7UR!$"L/FrR#&(BZiF̩ BΕILD9璃'/F+o8b}:^o 0]Iӗ.A ݇{ga:|pHugo Ih1ȸ k e[O#>-^Cz1[̨3sٯ}?"Smy)#dJC30Ƭ0Ne5.Ȼ4fl*<$@[3&A=ZF*HWL{ZH nt/ +CO`BBo0%lu]Ʃaۖ`iY+oi'lqi=tڪotzL8T#p XZ>We,,-.O϶v[`' „sOjy^G_zi}gg^vqӻr~s+gߏXnNkDqQD:LHPH`4AL'=JIwWBD JCPB.IT) &̮# H8RbR"7{!BX2 O*qXJ)REyGz9H7LR  (RQN2"5WJW~Vvp=7W u6lKNxQ'm,}XzzrxP+R2E韍&ݱ;__^_~µWd&53LG z۞-&2ݵL!Ɨ&*482 P1"Ti`f$3 DCL !zXgFuwګ6NL7E bD3g, ݤ/Ȃ-2amf`ntdN@vH/gmYǏ`U?"脩wM"Mu'uZɔ~MyzX :wi~R(|9궛kɸ5_(lu 8]NrnoGK+&ݠؕj_sknJ)tvuUJ$v+QY{=h# LU:nR%J8 q(d0UJ#3{B>hrZd[X=˜HZzQdOTY 2=\&!}JEԍ0$1#4񴆡׬‘&4RU!4Fj|Ny@;`sgde/FbLwE;?`psG+B:|4Dr}yIbocAnl%ya26?Xm֯4h{n(wr8*cRo+WX𶏣*bNF=[mVIw>lB)CbXA &)Eiw$D A 1LЉKTE$GN)b"e*IeK* D)8 $@@׏*Nٌ|dV`Ta€BD*uQ2H:n R@A쨙"$T`ӛG@_h%$(*0LR)77UKB6r8ZLkq7pcl?z½n>,6n?nܢ; (Ep((k/ E}”c&Br lXʐ6D 6YWaJe\^aw{T{$LIHw08i6j7R4Q)g8Z@+B?viމÓKs՝$^ &Q+2c7]p?wxrYX,oGݡDL=K+r"i$ nhU(DZ)z)!AF pqb)IidGfvR%QG8@B* ,fX fbT  )(LJI?Q]˿{J=.WGQbU,Ryf%H0LYNW(RIqA*sv'ͥWV\Ak[`pca?駽~I1$Q8Hݕ rЭuaTMe2V2">"v)0h2HLϷ,TB@1m o 0׶ mZg?Im+@R&AƕC`3-̞48sVdqNS 2b`|v!F2flFoB 66o 2OiNujTQo|OznwT(~םQFx< YuD<7W\p A4sϜo~4LàV&RQ{2%px:'ÛF'az- 0`sM : bl2 T~JDXẐHHq ) W2 ɮ B*)L(ISf$!$+)YPDi*8U $QӊUT!el*E"(P%2"N]\lп>vⅦyAW;tQQP=bPE1d\ qZ %0^:u?q0 # XlJwί,WXiEZ/u*[ ߞA 9"@ Ǐw߻|~\ى);heRD#ɚO9]ʢcn/0Tdf{n?v "МmE 4kHFdML{hѸ?f6i C#3 ] Peϸ M/[4lfRwyͪS@HV3A)҆,-Y'e5gHgfISřgc F1&/~~~J÷v/FS^ ONG wIg,Qj}4<;`-}*qX@i>Nv'谸quF>OX l;dMȻ i'4*ywD%u*l&IIJSFY׎2)V E`VȺ,RY:`z2MPJJPBARbNqRT7 D,Sŀu$JSfD V; 8mPKSX A$FޝDx"Ç1:j7TnJB 5|ynzϗ#WKH.Ur&X+4><ꍍ*Iw? V7V#Չ&)`9D`r0 p17ǯ|8~iimg,X J6Bڽj&xFgʜu,t_,o g2z H7U6|hS6مِFy(:jZKu(DbV@B_ RS5h\ 閣fCz:S'i23kЎꙛփb(s ^)APBM#&Ji>ӾY.m3K `]ǝR`2NzU %@NgjV".`õ"STQPqI sgV98mΕZev=0h-IU3v: #O$\_l֎GT4_kTD+G |ޗZf PDB2 VvnV$Y! Ƞv=R%s\Jգ㊄A*@X*0SWAT$Y+u51|ڹ u/wo?IH @~r1_/ܼU+I89;Z[YSQ%rnxt<$A<wF{'aKh*|qI.s15KsY-7pJ jd\[Oom9n$¥g[w|0Wn\h cA\+EPʶ__2fB˨ gSE:&b i 3DBe xg`{`il'I7'POJ=$YnC@ hJ7,$ hkSz\^OY? p 2 ";O @5W5#v7W}2! "JBk*QB̶ 73!jGF@tdLtR D֑ :ҟ `X(ggqo$HD抎L`2זa8I_؜;n.5⃜V@/] M!tOV/x;/ aU&u!QR-伂tW+5?g]\0{!Kuw礟ƇJH2ق&4E(YHCd'(953fvI(T1ƁIDQt`מZvڜsU q=%d4$~Y{w任|xuc{+kO-Z7K~nJx=7WOb!Yރ6wwz9FYP |Bť⟼SJa,Q kW/~xwF_ܸh)xnŤO=/y4pdJqҜ+'9#0W&q,RPnPλnLDyEyTw+[7W5C1PvDeE@f}Kn`o$[XePgq 7hM(f96geFKOOoj5CvTA4RR`[67y82Sh_0ԡ/@aj}uX=S `7 49|sYsWuw5Эa$()4XR7J kII@A @@OU]sΙo~xsx/.ǒ{odEjׯR T1J,BֱJРli*jij+ EpopG<z[)M,)4 D(L(ҢCt35̲OƃE+IN(rދmiz[zvW.ZQ椥AVec(ӗpab, oy{w4g Vg _WGuaD A#ה3@`aEuhp @rSZv_{o~}Hp8̝kbyhӇo}cp3L|v}{ï=8TE)g60fmLca~pɫI7"c&̧'+&oMr6]Ypa:\4:*ʧ|rRDv,yK7 PK\$rn?yz$( 4K5SؽW%YHKDrrÔ 䰈ޝװB nא֮%u,Gpknb#io5u=6YSAEkt=R4C܆MJx"@T~X͵kesXFk`pSI"[յؐ_HDې&p-롶n7eM_kv`n> / hMa}{!A"b%!*(02o^/!uvl>[\e'$v1kY`aY״, N. 7UHvݍNwo\_MC$!ULi(z^ q>%So /svzUs{jV'>|{pk'r,O+n_~08^nn/ECH4J@.iAXX!F:R">PBD^@R.@Go7KkCw~\S~dHZuVz^ c:156(9ۆI)Dn][3]U|Y`6MYy2[ߺ?O߿6u6n ca duPߛDlXA7EVP-ڶ~;0?lEaY+RwV/Uč3ʻ(!\]Tt\/)6zn:]-ƈx6^QmӸ=Ɂُ镓`Ŧ?nvG{yyK'ggťE_՝prt϶'e×Uw"Sqz8W/+{g{|G=dϚǏe ҝd|֝:ރ ښ IDAT'?9?0 _i(Wn_d|5kiQ7ǧ_zsڃa VE3xu9{yqs'4mk|efӳVqyQqZt=#9Pеv$MdZ EeQGO^,N{Ω\$A-', K>>M⤉ъ}Y{ϔl>Iwں25")e_ge*@AY#|=bDMgһ#vGԸlYnETyF%h*'݈nق$+TQBCG!^4apՆif}% 83 f t*f$U  C(0lf(z}_^7>m`6pC$`QEdADP7MIFFE!@a1S4s50 0$.eR(lP2G)V'lBVU9g?xZ=~v6[<{Nfu㎮.V{IQbWN'۠訢^nE:6;1;*^\Ul|||Y8)wW.NIƝ|~yvc'޹ݎZ߹޼=">z6i/8f8/h .j_9~w0HW$2] ~/M j..n6JOotˋ?nu흃ts:űQ?8xyVڨx\;nJʦ(͍{SIv[T]NwYӗF\Λӫ!":BIoʠ? Eӥ].FY i6f8VUuFyABqQ%U7mn0n,GlMʶhVޫ|xf帶ג4Eah|.5o>|~uF.Wb5hc쥍:^Jgo=Rh@Hx;azF9fZ}rD %H#E  (`ЈD2S-{0nb܀F$S5kIKEKX :m`u5 @$t B!0N J]]!T vͻubZ.Afo&m% QB$\ נF,@@@׈= A "DE#Mt#J& 2MFH($2RT$af0#׉>'_}㣏J;~.BMGn{2=_NESn-Qly*~HLE R'=0EN\6դteQVUHY:m lwþ|YtSi|ܥN*|tv`Ǔo~ {tY\O-}gkɌ62ê &N%eeW>Xz2;/.?-c7xmG /Zm#?{91ymL_k-A`8UYY$208'[,/(`g6"eUeK7U/'WOy;Nm*CtT ڶqwk>: xnRKD;|jnj>;߽MΊIpJˀ@rON^GaQ"PvhnYAڜmU:O?~ɣ_ʻ]];FđLcB @2E ^D#FQp]ֈP b&Lv,b&Zlqm\&j ( HYdr ؍iص[Y3ր fS 0&%0X#"RH@y u@B@Y #*dP}0~s=q 5~ < 갣a/ FP"06F5ֆ]B"l(M |m/`]`@4Q Ň'}rEyn]Ջz9QP/NN/ʗ_>~qv~[ioߙs[Nq.:5Oڢ^vBР1leE(^6-vG $ml敵ҖKv?;G[1u@,'\- ndL[;Xԭ_|~?|[onܶ2q[Mmǟ{g7nIGQ(r*D)$Ŧld̓l\Dkӷvu0eP\SDEKϋb;[[yZw= wFQjx~qt3[!4LO_i {ìW]Xw`#v~<;2^eY=|:gOƷM*ngU/}x6?v*Nض,މ-1eu/v^V E3QI0hL' ~~Q[gL^f>4&ڦ-F}LC|vtY1l[&*MMlVZGqEA)\/>o|s%FViR  )c;dމ$bPbYM`k[0 H![/  z` 4>6jߝh $RDdfP+B?G D۠ " +'ZQHZDDF"0f66R/T0ҴNZ?ɥ־E(Eă `Nf_ L!jEȄhHڈ4'5ֶj""dIe984 P4~ZU+^8H .y~xqJW^Ҕ}xW,2F? uY^GʂL^t3syUT/Vr6@JU)z2[b*e9!p1oVy}6MV#G|S7nήΎM8gia盎RN?e [o~ɉWr4 ַs>]-kzm凇zcӍu)25E$Z,>>/$PC;l궽],p(ŴR(GH (_H`kmB^+MeѢ,*{{{[J R^t5Nn`>{~m{9vtY3D٢C)9|g~qY*WM竷vGΨ'<'?_kт+Iv3:.޽m?*n UDuαe)JˋGWuY$FkCmirqu> OoL^0d،z8'9XA媍{:t"Ó2Vmc墚%N38UAoSf zmEɾ KUԚxk'oX^Q3o͹-ۻLiD@)ằ~=+e!oV<({TjG_BaV:`}S f[YDw %BI"b@jg`1&YXhU`f(RP(i#EC^B$RDy c$BP l`i<{/+ (c","A8x5jE hDJ)džH UQQb'1Hų묈Dmuyx"0u&5`/(42&҆%RJ i>V;4ȣ !Q{>]N~^.~_>=>~^\WGgn/>lZ.U8-չr-TnN<:Vmj|R~B6H$Zg$D$T@P^oa+\ݴܲ*.سHUEywK=KV"bR7hL=Fэr>U'b >1$K}s/~68Ӌ6>}|H/kZ"ʒؖAGiN/N˭ч/jVmАw ~|Vk7Yׂם,k?oBS3oǹ.4.ikCbl'!^?hشmZYk;y,ʳIg8ѳɗnlW=ov X<1˖ǵQz6_|D]IM;{zڿ{^DbLc۶iztЫ,zQ6Jp\W)+ v86?v| a}v^YB^F8v{2)Ӧ*G6f/8Xtqy5B5kiW'o2LWTJr7OnG;EAB56J;M&(n(5IQR72ApMtcdUwvQKF= g'qI/+?ۻwGypx^b`p"[zpjK:N13ʗi6goݴsoq42%AZ7ɢEn{HŪ[Ij0U^in{YR-Q.70#Ӊ;6=sqnFeq9 x쟝79׆(QɫIAպh;U2DyyQ[$.ط i׭MlQBpettc.feN"g/0^ۣK8Q:U((x5ixQۥ`p9)"&).l˭$ϪʷmM]&,5k\NGݐiqE`;.'xq7kA"R j٣Tk-^`NCkL5keTևst\;.ll i)Ԥ|` H@#Fiд "zq$< .lb M<"@T`A)"+EM`BV(a3vn#B5B?[TĨ☜cRx9Q(" {$0x4҈L FZ)6QUT.0* &P4 }S(YEQB%w3m={VZm^|ՄlQӳiwKVrU S6ЈCrbsk˨(4ªd.R{b h/"b{0ʶ<>hMrM$Z˺8$iJv;w3L +[7D?~y ey[)]矜ԷSdpq#$;͵oWedqiEc-]no_^.zeӞN`\ua;[EV/YͿ'ڦedlTƬZXk*Βěv ߹1'۽QdUV۶^I!Jl]9LAf`ti3(?={|i/ = /vW[tH 3f!ed4N.i#Z6a'M4hqb:݆ I2F AMk\/s{ ߆_P$nYWk:xhV#Zg]4n3mAlDCno9vt?Hi`yXsaAHF5( jf[ztN 3:.bpXtum -"Ԋ QJ)$ЄFB@ 4s 5@($0, EB`!BqmbgusMu .0 !!a-@µa ڊgE,y#IUH$C}[ſp㟛8xyuƱWeQt{-H!b&qct`i*c9ݛ; (ldMzbHJwdo ;)ڨ% EdQt͎=Z@ dzPŸȞ￾ IDATb㱛7D DVY1GW4ҌњҶOKأW{_I"tFRNVÃΗ@'Xom<:wYm;l־50u1o/wև$zurURmd$B?w5M.&/Co 3Lv:-d.gg;q9[jREY[_y ҅٪mO-L|1 xRv:/_|?=(Ϫ9g "^7U!ҁ Pj8)ZQ7= gӨ)a*odbV6#b2]~>2)ƺz)-A4 AY{I(wI E+w*UcL_IQWW&$֔w){y \Mݸ۔IkUdg,5إmmuh|w M&S0Ջ<_wɱ+ ? gt'.tۻ[#u9_p4~rrn!Ky{0YUqbo|tڶGYr ;WWDzi4A*5j1vrvuo_M@H?{cxUUe?7Y` 0:ZA?R2Zٲ~qztq1mo}lou-WuWs??+P ;ϗi<&J fwַKTu{^zi)Z(KVaw8I.,-^qNyӊo05 ݼ?禉Bd!n;$Gk$`0Z5Un+//Cuׇ ׎\ȯqk H91B\ !X4*l_/\{_c Bʀ0&0 Im9̌ɵ)n:u'0^7x!3z`A׷n0 8FP[x$Y=mXʀ"dQ։>|3( e}?'7ψzvՑ!YXՔt#f=9uK$RB}CZ,,/5 1OP*Ŧ)V B؉M]_3W4j-z =lI:PbZͳTV+[eІѾnv;ZR[XΤUӉ -'m(joIs)Œ}G2=z}'r=zWíg"OhouoNʆc``Q}8&!4F|ٰ۠n'ڊ!є$];]WbE+;yt~(e1VLWݞ+䰨tx;7"E= Hx5^ ;F)wSB4MBy[-.nYkt/?:_!n?8򯼹=9|rquaG?__oʻq^\t\M]G/+ J}QJGԛ4˚]ykfonT*P HHMZa[h?! Zhe$@@ugY˃<fDflkbx“ήK'*&T$٦Δ$dC˷i肃p=rݾ#V:d)w)ax{(mUˆj1 㾂!e yO|e_?y^`Xj=0:>H`bXEnƛ"m5b$֔(eBHє("`qY6CM"y"y7+ͽ(O۷^7?]dV v5Vâ&ywvfѫ5i 왂 l٦6 'U ^$ҫ'/t557~oV*j^lRD֭΢ Q;yދX^_4Qb:,e͍/U'U㟟.vtl B60H@#nf[hEHxÃH mB+(ԐQ(@H4 XDq؜ nÓFb<P I2# Ra6 ,A 0z> XDȳ^ք(( ciSuبXԐ!05R5Rtܘ͜3;P4RYD$ǪD8"(M JQ?ccD8x6HMpeh/_d4k,N?G~*h66f}t$E/2PqUbi$XIXcãίjd%IWu—mpk sGT `D> lkXi vRMow;繒h<ؚV+7˓N ᢼJ/_wN_n]Uri&lԨ?JO^ۏƣt5*=Go޾_5`/zlu>Mڥ5KI2yjn >YUu;є}~֠$8݁jݰ)]>',e(-vJ:CZ(Q6gu]w^u~voot`8˯^{04"Bi}t'FSQmUGqbGG㪵B~sjyP(}9/>?_Ey0<<߻}WWߺ̫'[$˦ݭO5f?bupeH(kuڶ c R@B/#d" ;\8 C}{?qDyu׻w<W[oqfʠ(hk,$^EӨ>={?^vHmU Q/.orr}q@1{Ejs@6JEB @jƻyl7-B!"rAZώFD"j'Қ(1*Rfֱs^ &AJQQw,XiS70"*D `x歸V !["A%`ڼy-^T)Fc "8,h2lpڊH#s`$gd Zjѿϯ.l]Yd.72ZBGV ,UI沾A(q{lVeWk OSmBl%G=E 6rIMDλu!6"(LA3MU`F̢I|h҄FwYZj>\̫kKߖ?ʫ|xק +Sy?QQ\\ۺ9eWNT^H1k<9xz}֏4ǧ:M](yқy{kDUhһ*Z/\udggT捤/}PWI_v%h)jˡo x;r@ZǨMjb~iCX}6oYٲ}zB8[fy޶^WlN{dYs$VN_H0( 2]?X<1/my8<~s0w jy?B*ı#ۉJW6Nݹd[~;tRz0~*Qm{O6tR45EqUw裃wy::jMqZ6M?!kea6ͫZ0q SLj0kRc̶j Ѫ?a/M) M "`3}HzBEJ+Eis # ~c6|A@@E(FfE tSTcpmRFћ clk"XX6m%7TT7R5a hc`7ess`vY['bb_}?.N^KµoNBm᫢kCh;W qq=pENq-=~ްHS4U<,M#׵7u6L;3, "1(!c$.;|N(;zIt`S;00&hm#^TВ.A*z9;NLvdFqv:[ cv?6N- &&:?Sގ{e($58>::=v{l.eog7zx/clw236m$sfYQ:.:_/M0[} @[$"3{],RXkI?yz4,Ks?OtOi? ?_b<+y}=#{wN_w;Ϟ}8uUlxC+/i:DXue3F޾=}tzx/>y\8" nıDuUǻeDʈ?xt)z-`Yte1WE#:q+nQ=>FܰG.j{5 +T`?_Ƿ(R"X x.sl""Ҋ a4mD7K:ASoLM$žQu@!7K p3Ep3,&5A(n7S9 o\87E!7?n'EC`Œ7 ƻCD%v:5O(^7?5γlvk𭎨z1((R;0Ww}g:$a0{tGAr6~-^IWUPhd]R{vMF.̡xjF kFh(eGI*ȳF-1 `/CRJJ?Dt7Vxt$Bm۷>8Il}"={eN ~\Td;jV_KLt{`eoLu_,@V!͇3/_?eҽ*L"k㭱q~8'?~zf1Rnż*h.:xyiAoqyZ7/g{{djww{[E|5rUʼn'_&؟ziuwˆgŇ/Oul/] "׿8 cT)+!Q^-x~'bM'lhڐF1*J- *Qnސ~/γITVԄ^uoY-HAt86Ui.}W(7mQ;CaGӼZY\- RUF'G~}||WHH|`HGZk`7占Y8 ߰Eј ixc 7FNF5llmkpY l&JHID6-C"yWlD ܹ p#(ڜ\v r`MZ[^ϋ_|W?[\~u4xu6h;&S/K[uȮU#*jF*\_6(:A>ɓ{J 9x݇wVY{uvUC[0"1]lҁb[wNO: U0(7naAL -iDQ uCHoC]6٘cl]@"N|(>8}tEytgX`WN?S~ޱi򴰶E%eaNл?ȶh{و~D'a4@uڭom 2U?;[?]떞rvL fb򢺵9_4G`U^4R3؞+9EDe͗$dzr g;_|K$/Wn:.ˢ1|AഊM;˫y/gzNIU_.8٧0lR;ϟ}xhw/;^jDG1EQc6Jxp<8Hhk8kF$ϡCyeYҴ⵰;zݝ.bMQ=uLԶrQ {g'-x'!X:Rd (z61gU*r"s˺k*V")EH(#@P=2DZ5Zo\"8ՀҊX=zHGHo7HhMz,ܕX l)nIa4I҆B9y߾s=XaLH^?9WW8r/qS\.Oj[^\xjR^u.)\<Ph+uJne M*A}zլ"MrylrD⋗ ܷwv.+Ѓp{:xqYbL wOUyzyYɬ-v Nc. pX># aԯMK;Ԫ:Ykjݒ!i: mQ]W絽qҽZal靖wëӋR$>矴s:JcOLw)QcQQuӀX:ZKyM.'<'}H\^+7#3|Уr_vN4[ֻCAmL W F<M:Fd}Ly hu,<}곷~,~ !fF(7 ]@QI! RQDu"!(Q)B@iܬ E6HPnT7"V["!ݐw6S4 ЦoĊ`ڼ9l(NJ#DݼgW=_*GЉm gդ/`ُPeBmQ{ѠX*^Kc%u#i]{(o-HFI?W]EYwf`ww|wnlZsTQ y8m l8Ud4J Wh.܂T}]a$Y*̽X6_CܵX4vw"Uhyh`˔Cc;? ڋZ4V]{};w qm8ի³^ۣlxQ>=;oީ<;_:;l>ի,0LuV$3ڽs7;$FkmLT#ep8%5?{xjQԶN#(F{[nYIv,Zsw"DHGtp;p*rQI/Z萘t<<^_\=v<֕uu|]Iley/WO/[+Mᓗ%|^b(BtUggt)q?ao-Ip1^v6>YFD;/y[lk7wm« Z':WeG|& :J8֣,ٶ 8A3J]F":K,*2ve 'ڃoEF+Y+P!Ƒpg"fT P ћ :M'zC9H: a~ӣtw9ZwStC8a!@=8vG{pNZǝz:vzqoNy< PQz\1ǃt& ٜA{l=:'[ZI0TKVz0fR T獀d2yEFY]ҋ`z[ x|x[=y=y・67TJi (iz$Gd0նu״p`hdd7nRi <#VE{Ui*v.;Uuj2Mmi}_3N/_^7eh$f^5#qEQ,gKwj(}tb]RU5>]mO`;?{u`ֈHuCjz4‹͝A74I'{gkxr7s48ӈzo4guSwKb~:ʟV?z] A8(-$^rv?=YZx˶;>w:6N1i"r>O'@%K| h }ZLlIeHhrq^^^ȓl~Ѣ"d]}PI/-:C |]\u&mvT}FCwTJ)1:t ''xVJ+ͺ-Kªe׵+jª:,+^a]u)EZCQCYKQu /ʰldYE햕-j:ehbht<؉4Rγmլdzuh|lUPQ d5D^b;HaB)mm)`"G{~֣w۷ 阁 ցcʘ(h8I%i`SM] '[UbU:׳C@fՋn'E{7c̩ܶ0 *(ڌݸ8'=ou7Awܫg˓(j<; Sץ[=#H3~YΗsh}o͊.YtβvaZce4ryg- #7z/mF˨XeF_}4kk?~tԗ;/XV^yxϯvݼyW*V^^VQX񴟌NYCƼXuݗo=XyjZF]>zQ^r`wg.m?~7:\Q7ӣA<Y>a)]6 JU;먵$L"0(HEmE6{(̝T4ĸ?A_?{v8ս8t 0h `k`gmGlhͧxv+'`1aQG''rF4򣓡};bû=LtG qKөWqD(o}k$M861*(* qBZ/ꋯ>/N@8&is jm:'뺫&¦ DQ%l %"aQ1"6|"QkMڱj]X6u>tօeƵ67T;_5P[o;PwlB|ݹ e7YiD2:b,AmT,Z ^ݺ8XW\^Tuh&(wqT5Qb:$27;_s;OIT_]c=sp$у<6Rڨ$JDBĊ-ׯN^~l4b}<7_~+ƶDhJlWq\clJ9Z;F˚8.T[ngJuat}t-w]pP RIz@E5MCtɻt᪗ۻq6-[rj΃-Ыv zSLVeg_^9b?=Lsf.[7w;$v^Ϯy<׋`?[_-C>ʥr;YeS< ~ކJjjtnUk3R#uk8,W[̺g{ݵa~i[%Fhyl֘Q [Y+bLW: gA ^ Invv1x뿉v ]h-\̖08fHh2Z@HDi13hQ |cUF,+oEτDIBvK` )&!$"$2Pa1֛$Q%æpD(,O4K{Y*>+]\We%*4 0m'i"%UG$aW(mO?8{߹{4IY(bQ1(4I%l\p,,Xerv.;NwzkNfAHR+8;o=r9|7R(p֪O`48rV\g y&@yhhbt$U8A~peDy=",X,;*;zٲLom f2*5ن Q&k&BC3i Hj`7]ŲYχ?f4[yLbuyZJFn:64:i_.e\ALk;_n#[7A?r^珎.LUl.]`b*wv|ҧ~vŪ &t̳.&'S,&ݪl,V:.2l6˖?Lf_}Fr8mz}zm7_\!ZZ꿺8&KY4Eibbv;Ȓh Fՠ\?8>vJ;t^ٷw[2>ŐXAś Y!fF$H坴t9qFB ĐU&ۋ#jW~:rc.N?9<\d9Ų`Lf`>eO)%&4} +d!W[h n,vӥ=_x}OR>$  #e}KTA$^bΨ@y)F6LlsdxH oWZBc$ 1gcދ6bw6+ƘcC0 rY>1wQ$}.>.iH dO&΅rF5Ծ2lE+ {D)w߭o67+& a$ј2܈gĩR25ѥ] Fuml5|rϟ~~x:;ͦZ%ݶ҇(!0bYxc*|hk kMDX8S˗_{ۋvB wS4QmQƒlV3Աrs/eݻ9 ?E~b1&^>q2MKNl0G.\-,+oZ28uiK^nsEq iuݿޣ%RuPTד=-M;I-O;TEb/WiͶ(. {ChUCUa>xr8Wz[[=$! 9uvvyܕbzx>JYgϧtOo4 E[lߥfנPY^gN;Geȉ)II{㝊jJՠMggGg'wq \k캓og ߾T("DzcB1e" ZI{,8 8FjJRrBղ? Q˻燔y.B΃MGJ$:e!cjՕJ@bku 8A@5zmǯ-+*3R! RV笱R5 im@"QHt3Ĉ]%D׳U -e,=hNB5v*uCM7]B&јrrHySYbJ})鿻}\4Zc/> Hf*#=Cd<]Xg&78?-NEwç]5cl>?~ϟh>zw#$ƗrVR{ 1 g>{ }`ZCQsT'OjMXSɔzEd9 R۬--8Z&D4kV#oG<-|:_c22drN{Gyhyr> IDATKtu|m^w&|'/ܚ`\M|?B">~QloivoKUhF':(r]>E=56ۍqpj)҃t 8뷗]a_wV\HAtضRL[7g]C\;.׋2?YzN?:LLw_; rPj$ג'uzx|F??Z5{!$d Dh #g:~<ױӻhM>?/^}CF (XEEλJM0="ym6X0vP 'vQnv)ygx΀T%UOmnGiզڣ o( %L;4ƂB6cm+0D.*/np(LX&(a&D1i4fY>,ĸy!ZY(A&|p2 5LmӋ!QJY %IqRL@SSȩRι~?LRk YU}RU@ #fudȃ|XQ]D2EfǏ>?b~rߗeΎ*;$bk kt{ݷ.@Yޗ >AH*d $29 "xW'Ӄ'O'?y5l_IuYjJmK9ek` b3 4%a*-^]YF) z,ǣ_6/Xԡr':Iw^dm[KZv͟YN%*T8'=<>:߽[>9?::4}:8rI]x_z06h|x_}Ab}JUq??_\n73Ppu':EC띡m*/pd:&A Qx ?9H1_/zl_,i;v%)A 1Cƀ"|w{[_޽ZnvOf/_^ NN7ƌT1E &U& 1$ꌅeУ|t^`]QyhK)5Fgcd٦i^HiN*kƐflup2!iGIٽcax[UwoY׫e w؆M>ńLH])',оK* &=&^!Oi3Yʌ (YjouQyHB??;8m)C/9ǘQ }@۾S>} 30`1hNBZg 9dtβk׻nryynv[ UMH^087,>zԣd~R fѡŢ( >,S&BB"aͰĨL{K d)ǨHo7@chd ۈzF4VPۂF#FuN Jd0xƧ ʚϧ{Om Jodo2 Dq GEF{_O˳ˋ4t1T\^5*ךN7[D? GА# o7Y9ŢYo`sMP94YL9óh +.Wp `Ug*laի޽8? mR^*^@6:]l.x]4D @̶$sI3"G~m3ʨ}0~<\}r}CHfT.wܤ9j-|>X%>%`<&KN|5d-w= AvK\ru26WFa1]|8o`6Rz&kcg6Z\MQL*{W?Ɂ86!jgrue 3|j(!2mΥx@fե鸪Rkw_]~Ϳ/nvƔX@JoG%6p^'pI=-wvh央MUXxuӠe}1;-cUFÂ+؆XPJդA)5!mޯ(,B=>6af;)Cױ5!dWBCeMnBS@D>mm>LqPhXUv׷m'Y g餤)g)~ק%$1ʺ ]$X8kd8ڛ(e1T#ClhX ِh_qn:v] nM(NueNOL&`0LCn l6O:B(Рkl۶ A)kN7GӮӋݛv38Og?ͮ`Ԁ=7ǟ||r.|7=H\(/G6ŎC XL n=.Ɛzz8f04/_]b6MN}c[ҫw7W=ᬺkR^nҢ )^$JKyaRcc |p^]8c (6bp<0쐐v@ۃ=G_|un52(e 0AB1*Hٛ; $ clG/~lB^^.ٗAB:w7"6I}ThpjNN_{R1Ƥuw.X ")^2VY lvHs̡Ƙ3*U]h|W Yy812H U;v 05}41$ec g+oǵ4,}Nm/yH" gQa}V|8*f֖4rTR?L7&"b$fv""9&DtkN}ܭ.C7uލ$`ؗ9v|qPfY牌1 ȯ 1bΒ)pj 7-3ԕ5Eg,TV\X6$ s6֕+x٣ó{ǧ㳏{iBn۸-Ѱ:9zWݼ^#yL>ޏY]TYUz\oWfP_|G]Y6N8c`ۨCbuU?=w6,fx|o'۷7ߛ,^ݰxEwএ?Ҷ*ղc&NBr>~'7R.9k\ud @svX5i7!# Xq̅n߬r} :_4d^TkW[P(@.di}9Ff@&)'w "Epl^y ޾YiIb xY N+}q^w; &罓Bb9Y TX2h1iџyYOϦ\.ǼIT~~!T.z՚!_f횸YGt&LΏM}>&w} !H1$vMLfFI,Ͷ (%eƝ.I5b^~&lS 95"9ƾF΀@} 8CH{Pc4!3b2%P ޗȈRJ@sBzFd5{++07+Q@dfk}U?} J5"ռ磲q̆ W䔻mW֦m]u໬<.ڰ=<|0GK GLyOPAQ]CDr{o &D@!sdA!nҀ/> =| P-#E!t}3ܿ>qѣ{=>>80UCo/7b` 2M2 ~t0&}wώN糃lVnޮ7Wo{ÇMf<}ًO5] }6X<飏g񰮸lr5:<+C BvXϫ'v.md(GGÙfq{Zkh<BC!(xz[~e1 AxRXf_m}X-LM9x>ocnjYB*h=0 2|$!Kbu#onv͚|PU 4)ȾұҺ߉,7-p~׭/;]^m'Oӳo=|oW`JVQ@#11@ MǟӧGo.)%(ChͅsfX mSx4]\nFgf'?~p~|\\liz ;!vWz[Z_tM&Pyjͻm(y)z*5RxB qTY}z0%ŜsK-[*{M`\aeGd kVB0<5{*B1ST՜c{$+F{(D"Bn6ͮI!^&!B"@DlI)@qG?lxB vD鰪F_]ICećU@FaG.Eyds/n~> 6Kyg(;ykQq]ǃ6v N~XYD%>dCP} Zw fYA|qA(d!5*%̙OdTCNώ11CRHUAD(?L?  >+DiKxt?7K,%yW:!jIrˉMa4Uh>{^d,YArV,L82CJ9)E>aHBJlXD1&QɰZ}*WNFn&k+6eheTTu7⋺>x?h8(֫mYL^_.gLJ [wG>p2̏7Eq\[KX}C53gE'/NNU9nf^%_7m@j2?:}ݧ6v֙pSE4JW2+$ #y-f6+Qꓴ4nipv׿89>(lڪ#Sۻ8Գ-@dq7>8ەgǏgf2xo.d\KXLGs ^ .l6wlZ,E,8%g@17tPm1iQyf:_'G߽Iu]֥3|<3UUAE"@,9 @`. 0s$Hׇ>>"1"g|`7 ^ *j@$YrN9ɵ_ Cˎ-(( LcL1 qQNNϛvzqQwy?:v%fY $f,YC} @H)# ml8 q?AQ@rrtZXL8NMS3` Ō7?yGO>zD꘡'p9><wy}yJ.hk\iiuÓii`u~FzdƔb!"0HU\Yvu!F5a].aDFE#m[{P>j^A_n >>r۽9Xp849߿w~m|-+G2l ؄`q֬NN{BT YAiO'G@/2d7zڞ1q1Dr Uŕ%BҾ9_bmr?=MץG;~2d` )d4=cSr>L['[mm[.qYz C4m2N6} AXEEHnGGg/nM7 #u!L}C}H P\f2\p~\IeTOѿ՟J{,2;*8CLb iΜE. Aff/U%"gL)XfҦ &Jf6QC {7Vv/a6Qً͐Mh" fI nwkiqvTQk(2Mk*fBԅf̀ 1IDDPɰE :Q@Xxo%0 5t9xh IDAT}^ac\ΉbND)%D r1 ɢQÊ ,Aw}IѲH )'nؚy#*ieQNWˋ7{'ͦfd66/6q>1/CP8sr%l;7r>9B͹2݅cͮo_mӲnjRL wg| Ӊn;mȊﵲ1Tm?5p<ƻw(qԥĝe*Dxk^)BYMB-Y @fsg"Y*JC"B&12SR`O$i@?UiBŁ362=ٷ ޤeI­vGշ02`TB@b@i1+KJˤZ׮iŦ ɌG/glJCs\櫯 nb OOpO?ׅsnvEPx9sJa0߅]ZonT85~o3H[@"]5ێˌ!ؙ)gk7ˋ$pxA @ dž9K@@擃{=xE~ݭB@\PEݽ0֗ 1H})"ك1p1IlT3Ѵ/X #L8\U8,` H>b޿)t9Ŕc޷I>n'D3c-7m2#I6 !'EBءABEr`xڴu2k+'/Z[k`&_\ĶmtqʂSD: &U(߆HaU_ߨ~&gԫA+ݩk)E웶EEr '!y2Z]QX\ۢ&gI5xϊ`Q '[UQbSӉU! *NLgR!OIAT~N? 6$]U67_}v$fpmoڱEɩV,q2?mJM1U̎% ( !TD0ᘜ`/ CЇtu۬V[SC?:h6;;> 4b1}{:KO<Nؑ@ZE1D! k+f[n {_~s1:4v˔EFGQѼ qM^t$UxwwCS]o7 *:KƐ%dҐTRKO)jBxlbRҼ#„ #g2LDUPقgj1sb2hc{] ]Le9}\D,IaoFTDARTA&Zk-ChxzIIlPu bm߿ʣƂ( HKEU rD0D) D{'=iOМ K 0Т(7XVc('!"2ޚ̹)g9%ef@& {wr ڄ Ĭu:S8" Q,@& KH.!.+眍m#'Y5dS_\ͮـ[a)lcuo74;<4?zv0?lvwWj)&D?L 0^ǨR)ʢY&At2:zV"89%nz7KE.&#kVSU mT$`~j@#)F(h {x*A*3@1?pҨۯS1E%3|יulQ>_^g]V{fւMbJ!omemQ-66 mV6lh)}^ޤG,;;ӽ}1G2dM%MMH A4,V@AD EC%J@M6>}{-,_|܎}Wsj]mUbW]>:v<:P0jy#D,nf9V}{{)hNzS|z7޶=/Ss_ZauAnq?Ujv}l>NjؘYRJI2QrvD55#'F BEg@.A[suw IH8; RXDunbFaP"0-\9`Xe!"wX Da:9[U8X>aMp}J֎]qOӪveXe/93J !R&&@d3в/T: e!UD"f&US:,fFDn^奔2~¼j$s%:TPg@ éŢHJ"C[,MU$ndMFb 3?ʏ]K_ ]?zggͷ_Of:)"#iO}Nbhfm"hʲ%DH O_9:jh8b *$Z `4(5gL P`CBh0RU?J$Z᫋NoG D$[ [1gczs_=+ʒӫ맶/~Gg_K*fC%*n\"ɺ%-n$9, U}igV yJE.ˮ,hf%鲔,ffc'p7d$fxw=*pn[,z{pG:vq սR.(L%6}^vv4-DF(!N%ZMbFh4KPX,Fn61X,000DW"T5 F0EHKM1p#`8ĖKɺ/$n)۪I>#L<ήV)gw4w;˄sfn襒l6 Zm!" 9A6lZ}: U<,"$QjL%u7p0#BtozB|8  @cum gX^-Ӓf8*bG Q戞7\NZ^rso5=y?ű{oZV?7w5I_~**16$Bb|_X?~ntHIOǟX^& CED #*A3uȔ0l:z{Y??tj'vNN#Nib,޷$pŋ>I75SԦ%\Jv0f:ȜQFF!ig C@c0$N <"'ށ ,zo\$pΩz! ~Ф!ZqYd:JZoN&\2\?A" 9 "8r:FÉJyCvx 9"!M8:G'a䪣A53K$JWH]'߾}1eFO8ckǐ??\7l~:={vѥݓ??˿o89#9aEow;t.Q~խ/btr88̂mӄͼ&);7DDd@zfE~1zO.07mnKIFF(,÷|Ir"O^|Ջ Uñ7B`W1K!fA0M9%`@pgIE0Y@5 ' ܗ8t @2mN D+JH W.!!'00;jU2F3p,B껱LnyNU2K/,H)$u#2,@)3!"D" )N5N P-Zk `B 9 "#R;;%`Zf͢o1fEb#;j8q m.g9RN Ĉ)oP>j5D8H6;ZG͛8Ň.xW`N>gVnRđ[/W>$箔R"" W4>'Ypk6tFݮ>AXIxǯUcܿlJ $0vk!><@tE,gKܟ0RPS_ @#8*N y"'Jhʳ )|08]E1Z?g|k*;W"CerΗOOJnj.7׃aɓOdeW]*ɓ+zb+U3w0 5k4ϕ@eDԴP0#abL8Nn)/,{y'x=!$F:FKb|߬3u_+%:LM֚$QXl3FȑZhļD3p3fKXFIANĐ=LSDa]NvmP9P2#x Eӻ ʕ2Cynqo0X:v9Kb7@QĔpN>5˫C9_twvK0 HI1$K$3 1!d!'LBމ ըSt!ۨ ܳPpձ =WE8@S?Ɖ)UӤ`<<Y$ kӈ`&WGWl1KNcQx; :b΋*$")).r1M;DДzBqjVZ.$%b"93"9gyĵYꨤ ܞ~:|'v,Y2q^>J=o8rFܧB~S@aynf@g Ld6Q9146d)A)-_)?3Fnksһw9#8 r[R7:YW/t~h웛ܯw/:NE8~H `l:#]=Yš6%fXz5=faa9I @ lnQ_i/g/_7\Dr&Ajn_{cL:G4@8Z9ȈP:]x1NHH)rTfWv:އ o2NwۋGg?zW/>=Y:jl'L$I)2Oq9{DHY:X+!:ϔdYrnHa fMB,BDLI1ה* vT[ED n#SPLPr>[^\\.:M9EpJJ61<"`yrgZTeYp`{,&& 30"("hq0wZ/ lfs-#C:_咐 ­UurE`"ʬW[NMU3Dݛᄎoٛ77Y.=lt7CϿtuA-7g岬f*p03#BE SOA]Ĵ-`9z8͇4ǀhQHv2' msވ098jcզaSkjhAA@ G0YB(ʹ\"Bdb +7ֺ"L%U=y͞<۴ ;G;O/Ojs MRVA$1 F pJ?ߞ="IX 49zm$"0DfL$4 "psf"Gw\0T!K; 'kc#wI4S%Fh\G#=p8w?'O>Xj"I;2%t쬨VSED5e6OD1g;Ϙ* gG7o^Ŭ`C1b?\ nHC߳bV3ȉr`fOU)sxkRbi,H@BZYu+O{ݬ\'qo^޽|\,X]=.u, )!!#jTWB<;G0fʉO  )ܐf%QvEJ8_!DD}VH 1b] Y1Y.LjHfHԜ[i< SO]FE`i{{>gedp7-rjfF" u}W 8" %tߕdnql x?Ml|VǷ (n~Ie. Mgۈ[[h%6mX%2:<8*4j,uB@aq0GA7Et'𨷇 7c,Nԗ.IB%vu݆zMbuiPqucd;LMr_}Ò,hh1IŪX EMibc;2ͻmpBIQpN1T ]NS4To45]9WeȁD% P r$YR F L)jeI.$0&iP IDATCD<"ɁU 1$! G`aafHJDa"&ā`sW*ی/0׸@ʩ$$NL}ש$jP};3"kMA]]=z/7PD;E8Ά$xSU{A]fpU`@5Ãs&83| myC#=,("! 14LPHҒ jaD7="Pj3 qB'Pp BԴ^l`E?H؝Er9.)~_S H*'"xvɦ_u\{Wષ;;_ɫrۭV݆1>#wYg4 ^mrd&o^`YzxGSONZt13Zfhv{|kC'g$W3?9Y}JvW7pNB.Ƹ?";LM>a^mR>y)e޴YBgAӤ> vCR] CԠ4$12#1SxBNČYDZMXfFb s,KP!Ħ>5l:adA2a0N vu7yb4s > E#=ܝ&X2ptJFl)%w Pjdq @B#";Zfb; e.$IjGz.<ˆ89ĨPۜBA @(BgOjjq70euoo&YWW[#Dxn--H7L:)B;#67}85us)Q40% L@=G@+lƦjQ #tkfUKJ(  I@LAHYb00,Mb#)F3eF!FrrT8Y5hrf:j.v鋔5Tj,L`fARJD)KB$dx~_OL"2Qzyӫptƻ//d?H] ]V@m!L]:LͰj:!xf& ,Jµ"+e1 %H%0!TO^|J_O`2׌@H7PDz#@}Ŧߞ_>17яј_0^me8zXqiu dLFDfww 9ꌈL%chglCV$M͏c_d3a8F;60PdB%M]}Qn>{kP!DM0]=L j0Dw33Z Dyjkmj #HU=,#'nNDaa9$56#!9j8+/YLU32s>}7_MĻM0!zdycFЖ o\H,87R131.s:J.-@4F]l-rBPdnYƈ55w`NI-##TudjdfHAaAb.>w)1 %IDP2W5'mN4<č BNM5ܡs J|oNnZBp9%0A/ ȫCx@E#KZG h:Tui.doTyihZp:v"y[kj$rMJs$[B16MHpwYP΂Ô|rrbZG'i C?˗oOw *O嶿?./aY˂S]-7OxuƪAܚO,8"$LDQm>" K)96%Ifșe85tǻ#Tɛ4Ks"02Ix@ԒDJb#oouĒ2Jٗ'SGd2 bI)84u])MO./zPK"nq,ͻǙ 8&rJN43@-"6ՆUuwoT[xt,`"GUmL `$4g C3m`mů+4Uabl"jȌ!”AUfifꚫte/PY1Ml3i8a07 D,FJFȄJȏϺ,ixΕ55 GFdfV1[kD " Kf&gI"tnͧjDto їB4FE503 2WL@>wЀ ewwАHu.HQswY0YOYƋDDq 4֫Mִ]~E oVQLB]$C;I,6"䔐rBE^XF`!lDZRz8LM|m6'nCIt"YuRwc0lɌs'ht< @- "B2zi?h9UfDZ~)@ >Mi2swCdf Hi&"lPڒp82ATձyS  5HFX8;̑*PUNn7=^8,r͆ý7DZ@XB8޳2}rjZ "̀€hwf~TV|fW9T@ tyd 1KF.DxtL}ɭѐe|9'30d0"m?!80iLu a:lwwp™^fAHLlR6ϵ͟}ZP9 }Wsx;5eɟp݆6Ufr}y.roFYz`3k_s i!Vy,̄RRdt?O 5#"AOژ8%Ztd @uOy3s\uRӜôUj8'A8xϡ`AU46D@e{}xe$p5=GUu`Ωc DY.܍j@Fwe!"B4U7w9^Jj10Q* !"2dd"w`55sb8an65 G(ϫ,ݫ"lAP:,2 @OU}dP=I 9HXEYBVE1nKA3C9"}kQTB xj U.}[rD GoA×e@TSTЭ5F6.I)g&;Ueb!F 1Bbf 1zqd 戞9@۪Т/B`Q)Zgf$TwpKNjՈyj9sp .Q̘gMZC w@zsh&hg"MQGTR4t}uICzq[|t^W=?軛npO'# ҏNժtAQ!C5-+HuB*~'R!nE8-%!Ymy-ųfpg$I$"29geI]grL+@L{glI3{D YU]tuuC`݆f @ƴ?ذaǒ%{mńh@ez!3+3p Z{U@-nEu??#W( (IL6EHZW&J10M` [$̉̔nTWD,OȈ]b 8%V)1%V ɺH]մW֛uv8CudJ¢]'wv 351o6-ЧMML16rFf/n Њq){=\Zkj"~p6Э8unX,&NT2:q~9-UD c`!0#fub4\J=,mfuפf;<+jhXղ;<;3(ՇIka8:R#,ׯ\Laэ-qITt%pJEPcs6\XԁdY<'t3DpbtSs3FIM8R$du5%owyz{$p$ #͙8w0FŧjU,9dqjXcbYC,%WVDR"yy'Wg*\=+9 BEsD$2@Π Vuپm4C/("!>jpjnne˄2։)mb" 'ƱSJ˅"aIg>_P.bS&WWW^yZP-4cm.^ܦDbXzEh[8GPđڋqL]`T\AH MJ)zZ1AbnR r&HԡyS%1"!"Bav/hXM 9-ZkqbsXs;7S.)"||T˵)ȱT㏟OþMi?LYcLUL2rvq0F00r3آ!WD>ӁyHj10jbա=ylXauhеPXK͊kmX %S )˔kCw D(![ *hU! {伟Cy1[YRqL 9MlB+)O^4܏jVF#siiu⹥8;P\ೀ]Q\b$jsþNS-jx3_{v wVC@PK; BLn2x OgfUڀ.93R1ÐkfUWH0qEU^aʕ $ `MBLQjäCqd4"UukjuD  L9`!PHaUMU"EQijٺSmW ,'\>s_&5mqkNoyUA9^^{ӿ3.TzXOj `f4F8aP'@,:8X#Z%u(+Dho_|K9pr~W "x{=ihqPO0IP_"8={~k)iNK謇!,qy<8@rl⊈V[/>c HLeʵNCz(X,R _4!,;2KΖq<>y6,˶mep(y(kwZlQPeݭV8+-.J#Q5gdLRJ)ԤiBJHRqYADF/ -ӱ_]2JH!?/ku_y/}kgKw̓_T @)j^,6\rb-sj G7Z@ JFsGL9R,r,ŻBDȀ2(T5+f fjZ_fi#s|Wͥέ͹iS(P6*fɍ@̧bM#HNf]'sYʄ`nDfeNn~)IDAT 6L15 JEvnGS)!VG"05јoS·C}(+5wElQq+%޶͘t6]mrw9g+Evސ1sPib"8j x~2\]ߖ͡վVW7/&ˑi8yrIm8nCHyzfzL~)Y~yHPbk Vn|㳱!Hrpgv2ECsFT ᓫWNV丽Iq!htn^Gf;iѭ@V@Bh7|i[&r7$ X"Lÿ25ͪd,"Cӄiɓ{"Vbb`$Nj p"pd5UX\=ij`!( L\ܭ# mo iqNkQ'n*cT!z@c>M9h :|r;4Sh]:ޢRmI:lݪ]qSX50RRiVRkvwjfؤ65Ms-r&4h1OHMM+GJ1liiA)5ab T (HZTb6R hs?W (D0WC2BDwSjJ"VDT^VM\Ig%!wZ/VgRӉ͓?"Wq]";"Ls)zDmuTfk s# gnve]I""FϿ#1KݘXEjHPݿ|O8.QLTY.c\:z$L+ay]ZͯY4x8/n"rݾ7WWWKHA=jVE rԋ371%WsӢ̑Нb~tj="3m-}qQ6l#sB`S4P/ )TW@"fr" X, 15 LNJD 1PUkB:m R Ԅ60՜t!011E ^퀀ͺ$Ӿ o"%ћ'I1Xw~,P@E Ɩ@L+A@|&u'fawȁTX,AHZ EX%U&`ܖiu&5Ar) 1x E̦ Ӵ?ä5Os ć8&+E 墳WEN NVի% չSsTS!#ioȬN:T]Dd6b&`jN9ibBLKn<KCHe,Mb\DMlL5{ "=93FHUI}WW}?H͓:p8@xhz$umL/U[El%?ʔ~G6CꁣT{.-9y]m۩L㫰\,w7u{8'/VG6= MG1DGMm}>X׎`\C jv!Xu !$Q!،1e Hl(͢F.7CKM~/_??.xt\~85#IYk8t_8Tf Q-3Hu& lz[g2U LCLCDdt5m.7y3SbhS٬QtM6pۉ!q@N!k\V8 nM9ipi8-2i^r赘fcHԵ-жATCW3RjkPS,ZN;6 (&\.5r@ %5QRsƩViwoK`T-l.a63<{+QCQn .Ee.T>" !9uQPusuYbqyx7kT`64tRq2@XL19q7n>_] #BvQ:.Ԥ1Mউihͽa4&RlEjZͻ?xWa ޷Qjv4Mr_ڋvg욦NY3 _!9RXym°h]]gxuNXk ʮgb\pyqvn9+~8r~VټgyDZTq=k~1YW"οNلt@wrL`s%-NsP/!$ )B Ae)jT*Q{gMg)iW0fDS(Ԛ&x6/?lmK_{t6z=6] x?7Ƹ^RH) *E%77u2 TE Mp] *@,e$ZJ=Q`wR(0'R0`²k1C4+)CX{V V@0\op% юerq/Vv̷c#tq5^O٪Z#T]q`XVi,E)ĐB$k9{dbX[CGR'c~x.gjuaq4J8R>WI1`.E c6 ZccbfD`82N[oVD>zvZ LLMDL0A"Tˎ":Z X p\I^N(P(.e8H]?/[?)gK4WO?{՗<3n |?/r'\ѵ1%Jg R9HELovEqjp SC SXȣ=9ivPsuZkEHΆL[A"2, TVYE蚦L͔|Zn|Zj&@"[}Q3.6aĄD4ZK.SXMci:}-aeаX5T[4"JMlhAFlc DT@})rJĀ@12%Ԝ:Zul/Q%qT],<.ڴ:;o.aRRr89h6X+C"Ns[0{ οWwW~[#hNϒNr@[Kn wY6D@ܻ j aFyf Мп, !+܏$ 0,@nAf+9G-8;99"+LW)=(3wP3G+H fWCgrS@5 /|" fq{Ol` xw9fy3psCzґ}!5weoH@ PpG'GP_UYODtpwY)|ZC6F iVw's&,R3'N`o}[ł_}ĉ'!%N8S37j5+"oofĉ'6zUoooUUU'T$ĉADfw[[=gkߋ3ŋ??','Njz7ѣji1F<fi^Y׉'o3#,4B4/ODan#"⼵YN|q_,05&ayiIENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/3.png0000644000175000017500000005610414212620632020502 0ustar fengfengPNG  IHDR2&{k pHYs+ IDATxͽwu(~ܻEBE0 b۱_%c;8yNq؉+%Sm$D$T$@mUV*;1휙~ytw3g9sԋn RiGЈPHV! V*ZS?)Ui5kXQJPLB" 4 'S̓\' ,"{DdEӰ&^$"B`  "6A""R"SÔDDdh~RZ9zkHҪFTӵցB2TJU d),Q hK"AŒoK{!$@k"B+h)ca! "C |AwlLK  0h$t:!1@P@G'Pƙ'@ 4bLZޘ +$ Zj9P!B@OȈ.TAY] ? Tn) DGD_(9Θ'Ei(EYv *='ONrp5B kL@!&"@ZV x`OF|5i%V 4ǐ@hBP4*D҄ \ZI DTF" ښHc1cHT`& [ZIlLDd }@4+XQՈ4b@`l1A) >}@P@kGj~D2ֺ{4U-VC5&ֺj%l5 ЯֈTyT*UZh@5׫( h}6v 25µ65 &PP I)" iF5@8ZlTUDvɧ| cDQp+N Q]du=y2BK<$r*( h55z!ࡠ&b!*Nu. l`p }HjZRjb=&X-GdVJF2RTּA9?e~&&wx ҌX$*s)zƾZgiCQ>@3 q(Epà{P$ H4*ۿdռ1+'Պh:kE 긭 (#Kս+ 򄀄^՝cD#!r u.0)Ñ(.Ab0,  ÉHZk f hcKZъlFw]S٘UԈuBimJ&@,ԯu~~iNYtdu!HiZ{L:>޽>on*λSUUuE3O=} "Q=0|%3mEm4\1(uω9)"+t5 oḣ H'TͿx޸$= ވo Us$𚴁M| XQvTa ˒RCXLw"/$Tr!j2ҚIȒ%/erL_Ry2g @6sjgh@׸+(BRsd*G{ƺC' (2EdI89LB0><2^0`BܴpA7:nށ|fd:tD8Q?>jf@RJU(4j]3@U%Q>}6iȝ|x۟Lpd&9S&.-Z_hTNzVU뮻j L0K(S} >57EFMθzScKF0ẗL8)b20IHSJ$+D@`UEUrRvnO!„"L0,|VQE-ېڋ 3zu8*9t"\R#De!Ul~!Ӣm.vx=T☹;k`Hȍ OwmB@ &t)˖?]ISμt'<`,~;Y"[0]y5Ğ]&aINJa-A)(41vMq7*E<5 s,D hvP3[|4Mf`,$̀$y PgL(&YKq>"h:/6fs2Hfˆ2(h&=0j`^p /g@0-'!SEEFq8oKNʌeJ2rǵv"/ xƲ&^!&X%ߌd#09:"IY w|e>(UEU1+&J)T"nq5' OR$( (@b LZfMkXgLYCY"3/JETʙB"vhZ~7em}l 3C2,aTJU*gȤ@meP-^Hփ8l"Cd;D%Ɩ1&p$z̗ bS>fha\r eʠ,6,Yм2:uHA˻xmtJ.>fA 'c h9B*^/0 p9"N/N"xۊ)Jx3z) 0kBJ\✈ !0v"Mע^yJ&'c8ZKCxI%P n 4>Kf5Zʒk:k$(- c Hބ!Ha|&FJ֥ ECxN3c !LtBZ|8g%q'ځArۈaɂP;5< (Z4: ]cAeƝaɛ`̒&:F$l7濉PB˔yO!PstarLɳ%ҍq\Qnrc[^<9I I* rܒn@TĞ`}?ɝK<7&ȃR4(#j!R`Ͳ6wXYNC& $ dE*JMSY>S `K*lkݽY,?s9Lb:!c2 ƘpNBd+ڬKq4ifDTWPQ٠4s9t 83@I1֏pb{N?mrwӣb hRjՔ3'XFQyfg9[|s^?3o4LY.`&q1@ל=hnVaJ?c1".i& 3:Rk'V3X>d(}$bϹN<U .[kN78l,w117f-&``S}V{)7`D] d*EdbwH"  j\qE<N|p5ԵL̑ΎjSSCpkYav[hg$&ޟ~i\lgKbf_78Npۡ#>9#Ca|jU?X1w4v@-(Higә!`)%ؑ +KTQX J$4xk'4FnPE"c\6YȡKDگiNu \ni+ l3S)f#a= 2OY @8U(BtXV=KblI ײ{*[:y*RL kM/IU|3~ږDnNib?OL#{S( =L+--Ud?ev`C`ZX=:"{ cwA2CY {ڪG(奓{ɨ,O ;!8m U,O/~Ƕb 0p]"IFbK b= WQoh0^&D`J\!blNlyW-qŌ+/AS'+QNLT!F(2" m^1$[౽1zh.$O;!aأ'3'+Tb4@ )P>0 ?˷3CaR@f?VIn3_E" E y2" j \A7`;|.5zIa_ʈ2&yH%^9݄jIOQ*TDk&1&BPbwWKry0ҷVߞ Y238EbV]B"PH0-(D"`Rʺo*8sD@46`[S`a B⣌Rǖ%PY  ]mrulgѯ8 {=l|h6:ڗZG>vd޾;o[ &Oz01[bC%c#8ex5Ër:VnnC%ɽ+IXW>1[Y:~<سYPpv]r8l}&F7_f2Ȇ*UL/}fx97 _ DRX<4*ψQ,) DȾ8.$'FcԜf 92~E 5CWn&G'`a3# yBbݯw<ʚDn0W Su X% !.+eӤѫP3!l=SiNHʝL\-@'1? Aڑ9w/?EBi#z3]toj55m~&0>7um_O]N=6ݴ k= 0*U ^XI^Mt+gwA B1GzYʲuE>1AFy uh*s9]*;b`8qe]FtFl(Ǜ J` H-I BW=% xFߤd&ʹsnQ! rIn0ӿ~A %15.(O%) Fz?DGa"K075}4Ms#r͂| yDmJKKcȋXșº7zVm 5Ztqs4Wщ[0I_:v\3Җ[|7ov`͜iTh.y2,Tzr O(D{|,4H9>G6˻[^ĻP%y -n aox~B:B-5c+dP,i=FCf#bCbgժd@dAP>x"~`~8? ,q Yɪa5?y"YYYku{T[̆'HUIiD3K)j[Rʦ\ؗLKy9;kHyHhƹ]DJ1Ѷȃٚ _0ˠ/ E<-J1oe-X0$IQDΖ2:7aS+fS])Ih1E3.[]6,tfX*7<fT(B䞆ީ!1ԫ_&^G :Ni"ʐeς=g_  _ϣJ#d6qD&RE1.4;w ^kALx$v>hWgod|!"AWѰ"93"$PU"@ȹ6zFaṵ AKh 02(gH֍9J2KRUݱ d#_."C `i! xWylS\2g}l>%pw6FTJu6" =|b]~ɓNʂw7#[ M>hF:)]aq*9Y0%oEfq#ﱈd<c'sq!W /Kp&%@whZ2?eDHrĽ =3ֶ:/mÉ`kɘ<$#lX#tLxڦ)*,?cp}/?~ .Rp ZD>\uC07EjUW[k P Q̩o^liiӷD3k{a4D4>$s^1 Mn6qӫmEOx'E8-úZZY0",H+eU;:2Gڂ1;xp붭O>Hv4j>o51)nJ` eU[kklOBD5vsgڢBy߿tza/:Hwl޲y1?R-ai0,'?}-~ xeP `՝3>"L:GHy{رü2/mp9DD4 йj5{Un}k:8VO`x,aj3FDr$SΉ]$eުW ({(: ǾDL kY΃vgZvxO5`gڽd r#my-ojx'TFBhXnГQIDSܔ#9S肎-I 3[6MK3;AۃubkJ/ꙛt *\у `w)+ٻ7^re[x^x~g3~+zoo]x[teCP>a|oUϬuJ)μ]_|ᅾ25vtv{{wW_>cߧI@Q ͯ΂~l-ٿgQ^z姞Z|%s|&S%짉0nEG)o4iLUm7 "hsIUhb&@dǔoĶPb"lc;+<. iE\Z#䙯9yMRr>\R ?ɇ̑xX-DVm헋4Op_^D!B$E'w8ۚ[ZRuG}>2~zV,_3f?9p߻@@rŲ?Ѓw`sϸ34x #FpnݦZ饋[Z[+ݍ&Ӧ7/|Ss .Ї?Ԝtݻou/59ӦW˟^ήypɥzkƇ7ĢEoy/?aɜ0q-~]gTJ]y?靧~a"9Cr@ak>{.پ}= ‹4<"8?hkj><3aؚhN[WFQ6;I\Ƈ֖R7n0b2xw(ɶm[.ol>bƯhȀ[``$}iLܪu-m--$+(? WL`JUm@`ȡY`8fdy#׿=SR7L_OQj"$dWg6w]}/`;(5Ha;fYnI饨IO4MȊˤ SΝKg7oMo={v v w/<hѣ['OfeO/?_soկ|Zm۳g Iο}?m;{ ^|a?w~5sM}A_}6~n:_]E޻rM1bO…W\sg3g*N:oK6Fhnn93_X\KN;z5Uٲ>wƙg8nQ/sgVȑN== ˖,>bĤNi #f'uZwoxh_V>\eoQx>TmV]F^!k4ޞOLC}7_0a~[s-/N:䦦_}'N:C5SwZ#}&O K?m[0q5s?=e3gyEs`?Ϲ DGKG?O/{VXvY47eKhG??gVZϘa>s־}^ڰu*ʜ &Ѿ}{뗾+V< +/0q(e_^F}EsL:q{F>;ϗ%fPտ_Д3;wCoEҸD&lmi 3w{3kjj"x2@*cH籺ӷ[n/pР 4/[Ln_JiM6n5;F#4WoG1 c;I\x7{J&F1qY TM $t~ +H5]$b#Д_ސ(k7c$B)$ACn$V7cc=(,~ 1c9q׫C C sC"׻e|D@ UL d֯C |F+DD;pi]v۷o_Ggٽ?Į'| XGG ,؝p)G5z -Z޳R>^olmi5޹qk3f;MEC6PwѾ}uttzvtv43">|x 2:vtvj `M Mo>~'A$TVi"*a(!=hjnꯅۡL+M8q۝c(T%"+}l ,EVJUK|%̉`nKK$8Tͻ~Ҹ 0(Ɛ 2 Y5sױqi88@V^x|`wM= 0z%!Y(7$w<YsaP1'|-n1m`bƗQ+ŇE(i$Ƅ*B,R$6jevjK+[FC?VGfICY=Sq߾}0kɀm=zڼv0O:NdJfm0 y6կ+l=#Glbo_OWSOmkk[j/2dY0ic?zXٿWd I6OOa8o ~+/j>p#F8b@[3k7>xo}s#Gi/ɥFa iowFLg&#$e}޽CСf酵_}.|d%\x1'F "$7S$\z"Ku>WGz tww}iy6M(,ֵcFԂwG>>fͳgb`a.2t2ɃNaәguɥV*9U B&qkW~)a=յ,Ӱ&8`Ne&3g\ 轎8I~''=cƌs,*z>20Lpi8#|sϘc E.r$Fv5􉄌v_f$ dtg+vC !(Uq{0HW62w6x4gG¤ȣž::_:t}.> !Z}GMqAzPsCC>z:|dqyK?;?7m` :Ts!CMJGh29v|]pS:ioza!h7/6sguNqIbf1<7=pР;v 1'>i<^4cƌ [g&o}!C |)S{vՉ'C5Ϯ:g+#^r )tX@ f2R8ᄱ7&:d8-O4 ~ /H䕢 o^+m3(|bȋUz{;waï8ClSYӚ+NW$!BlsKν({]P6Ud`:@+T$wn}N]u]1 ,YFjVXA "ʩ}thyILgtSڑ! x\!mFX5kM\eb*ԋxڹ55 ۆ3? s2.`SJnRSO?Áu=h_{U8餮;_=wZg_p\h#GNeɡ0NYDC)r|fS%+`#63g:oϞݯ h]{晕g̬T Q)ՐvgW?3hРN9ż;c>r*Y)_Q8w 3+cs˖M/TտhCHKzӉGŲ|k|՗_| /s~dwvtpaAx1Xɧf6o<̳Mg_|h޼wj*nS9z>IRJM'Dg ި)l4h.2ߑ]0.<3Bf3;h%ph;{ٶm(g_ȋV6e>=|5,]XٳgW-9k涵 .駗vxZ&$'#J$d })@LČVh]9E)]OAAjh/q7}PӘO?ce eLD۶xՍn9k= w4`j 86ĸ5>cJhvEnE!l#"Qoh(K!" l׿斟38kF=oֿC~sM>G>sDĕ+{SO=hnqƙg}?aҘcǎd%{_|xCk]}ї^;B??0Ww '9'MM/|o9r9綵uw 3+nSO߻gW/mX ֯{i={ _~nj=~-Y{ݯaʗ{vܱa6ٔ$]7t$@k뀑#F=`~__:::L=,'>#Gz{sŕNdJe`.#e犪TU/FwM[UU=gY UΛ ܈h5ӦCLV~W~vgM;;֨G3Dir'niG[g!n۾aMr(J0awl1ԩǏǔtb@ `%'B 8l2aAd~:Q*#>+: U6~qM<} gZ9\I8[v=FjQ+I[g,蜲0 YƯxqqσRu >Dg24ydKVۢrb9_O(IN}>*BDωE2J1-,/!IDATlDRLOֱx֬Y=cy?T~gZrƌ9/ k]=N7;_[_oo7~Bǰ%ܚ3fiR7q͵󆴷+Ο}ǪO?L89ܗ6E֯0q/ >_zÍ7~!7aXGǒſ[fR"O?s?5f__y8p۾}u=`Mk]f5kV>t9ټ鍫ޮTˏ/zZg?wgw6׽=gW5zS1yeҠ kϘ_ر_ry7 l|)"0Q4 ! l 7s 7^3v"bb/_kzʔ~MvsΞvӦmI:2hCٳ?U,~•m&"–=SȘx$B&ȱ (~3?fo(N[ʧUx IR[IF:::@1[2l `pY˷tVZ?~蚁BAu!B~6W pܝSN8x_~yE79xX3_J;|3/HC,/c_-m:l*>zM)zD 85M+`@8.jM$TμĔeŭr(P0w,'; 2 JRJR(f Rj9f^bG?qpGXhINQBPU!#u /#n E6o9ĭ7kzeܜ݊iN ,!\dNu`8Ru<0oy9jcnj`qP 'JȑvCLFD9 _I#ncq]EZho2+R%@T`-k s#-GDx^߿uѣD8߿G޺uѣxCspQӘ$!W92Lg8, 9h U|:V@X0B d(#M}f.)" \) cqOeT)(*x勄g$_CTQu2ם2(hrZs1B.`+5h %=θ D`r)VOp{1Y5ai^6aZBbݢB?ՙu%UL'͋,hab 1/ølB@-EѿIoc&dDҀrQO>Ik3.@3H!&ȚLו夨$"Z9=ph?`GDI|@ 3G%U0 @ϰFߙ_h.L^LTojT&!iFdLvAQ&OL1VfqY(ΉЎ$ӡC,7F$瑄ݵ3wz9F$ت$L@1-I&Ż/D]_ 2R?9)Cܐ+GtٴwBQ7.P?e#)"&a/wpuw4ƻNڥTPɆam9N PU%xā O6գC/Z"Ål Ua.xcҘ$b\MP`BE,哟DEXAT#WP^IbP(If=^Sh*v¤[Ckn ]f<apqcFBx䱔%1ަH^D2”d՛ܳ]x( uH 0RLn6 `qCzUcdJyʆL=+ y0sL?ۓ!QQ{ w+ٙfpM Hqp]b%~}ņK|b I[T0_'n@{ۢDBe"a,'E6 J)9ګ9 S!L̐|x9"K1W4R3@ZkTl%`<EaRk;|PK"ՙ$IJ[ J`z$;I,l(`c0iWQC q|nSG.rdٗ u,-zp;6ph W0He7ʘH5$nhP1<1N&)nM"ޙ|ތeW$+Uf$AJɘ4STC":Egn(Slyhdæ.AP)ewN*Ե>;a-@~Q>+̾., = V]1 Cal&YFA_ Dd:r$75RQHA#/g\4KpY*rXb0^kN \LdP=[9/O\g 9l'{P _.y-fJe$o4R *5%󣌐\I n%ŶZb01 kÙiŐɩfĎ[B ̑ 6*bT; -r6ydLwɇFqzq)&.yai>^&HHlr\]9o!b3n(47RTW@`7|x3* f?]]G.BhP,FnD8 Ţ4JdB7j n?kd oE;QM, yl棰jvR70Ě}tMsD2? {#,;~ǔ%rv]gұ+$?&a&myBs1SE^x5ȕ =Ma=/\t"[%$X'Xy r'7.`Fe+֌(bqCbTl^WwZ{E@.yrHk3k/TP,b6ߑ5a7 R#FSls[,e1jy*36ayLDMfrV1ffJqIe&'R:VM_ @cr6;f_)(1&_Q{%.%5$En݋5] ʫo l=rȻ D wv) LX!4|nëvDt+3:RfEo8&umf3>B*â!ɈLP RDg 99Ƥ,<;5b(3ƆoB,@x:!e޳gFe]iޒB݁(f$@)^l[d؛ n[DHӐڈ ǰ_)rQAhݍكHX"Q"dwOHPI,TJvCrjl,aLdA_fO$-\Z_?ISjix\jsYg6q!C555A"/Qtw{Fp&a^;#/hH1t01 7A?Cݶc= 2G (˕(sAg\O6V?IgԏxwRHn(^6X% ND|K~Wm:T]]JAD"P1rq@7r[pADڎl BSw..r'KZKBq.Ȍ"`Z遼 !9u*53|4 hzʓ$ҡ*5K]AW=GMP7 Af!!2K Yp/]/ëdwۖeZB RKL;i ZP( uMP.2km. EߗlYcOHhC7.T;Z R4)ՄX*MUMTT@kj@T>NhYg,܈&HzL d>aIENDB`kylin-video-3.1.3/data/kylin-video/en_US/image/4.png0000644000175000017500000022707514212620632020512 0ustar fengfengPNG  IHDRױ pHYs+ IDATxi%uwoD4 @ApFHIrX-/9cIcmHzD)/twۗ\"G~յtիWU;@wvȈ7oܸ?#'QێeGDpD pS#mK:hsd"""Z)Dd#s'6?t&qOfhfQhohUZjFG^kM>RVk5L#'d $qإì#dڮMm[R`qVH"ǎ0۟my=CZBns欏kV/ 0)EO_##/ڔ! \v82Tag(u͞@i*4H\:q҉K^=/`h~sT~W&8-[<O3PlPZz~fmtƘiJkG.pdWOjyKyVm~-꠲ !prlvLl>S^֪0W5ۑ\K [^MֵzZ1/$hG8vU^m*>/}]V8~ڱfRgg>"5V>VA:!asqvJg,{kpnώwzO΍nj{mCnӹZw*!T4{aZx#o%a퇩!N5lwT0C3Q/dةm e94D"&"#:Ʈ  f>a7kVOxxY2F}ghG]2}BES#XkChGv)wa)d}~R!20 c7;ZRjTZ}lgnbeD@3܉H`^g'd Em5*ecemܝCBG!"W`H4 K|둽Q3ڽ=)RƲ "R9FOw/cf2te)r\ss7<xϼoَR* ]~8 9!D:5/O!wW|Pׄtw:S^q|nj|5?Z/s]wX{sC~*[3Yd;lkyss㓣DԉӑHm0{z mg2]FB-#AO Y!W=|cxkbYzܱ*TFF+'Y7]ƴIxZG cӄ-]۞b1zβMk/,:v z&\=Qu$XE)UtfNkOb-rw-{oQJBZ\MJi/rh4HV"F*P*&''ffg˕al&s|X&]zu'fgg+SO>\~ss@y޵‹tff\Wz}}#L?mu Lg|. ґ蜃e~! [Eg$G);cƶ_Rj^)eR˲H)Y,敒J'84;B\{H$ ȖLZW~tYuSzill䉓RqzfT.w^뵍3|ɏmDrWne=rSkڠ`VWWlo39ʄI3U>_cCFKb'3J<= ĕ;K:Z2m)) P`R[7o/ם +K\CCXM~|p|[#GGkW^iW~}lyjq/Bvdc~wqz&&+\ "LUx:Wgu}kix{EPc@i({kS0Y3U(EѤ "bMya#ImVɔeA<.EY뺎SDl۶SW][oW8q"ܔbziEnmAoLta5FKѢp%vGi(mpM 5H@zM!H e>jB(nRܠ Q$V<"xgT*bq0֮VURJJ_iMD 0 |}ϲ,)RsA-|OkmƸJ~:879omEhZ@k]T~{#OF<;WM><$:s5^قƟ~ γC^"_T}f"gY[?0x^.Ob# G*|{xuܼW BqdF6sH&˕RD=+B3)baaa\)IVws;yL./2t4_b019^ΟL>SZct:c֖$e:v(S嗿ri۲ 87ٮL&{o|׮]f2}w\:ղ'`-8nI+-5ׯ_{w.xw&''~}Kr)&dU6VbT8| XEὨ%S 3'[E/'EXg* pԼ=kgfP+%\Sɩ ǩxrNeJp93:v2l ĨmESۖiRt:۬c#cx^kݽe%s[6}BJ>_g~fpp0mJyN'S]j8N'w߼>+qX\?6 \ĥ-]PW*]Ok $toL+\[%KԃOa[5_;_OFh<ދ^Գ5ڤ1Se5~# SC և9q.woyܜ!FeَSV+RjeZ mG.-EB\L&ic<8~ʶmDV,{}}T}UJٶݕD"L20\g( ;|oN1maN*'??Gy77^]cll߱,W^f?trvؔ3R ( >UAE3Wco5v)[h ߞPFN+' Þ-h6iXUss"mg2zuܼ:/ȪCaŢq0Z^s\V=2RwFiG) Gśr!0DL  ّij8bnqLW69\u]C]H$J7Ejs>Ń/\8kHW>Jp\!"ٵRZfykRd07dw6; ð6)"?]]ϟ/ ?|*ҤuL}Q7N"b:j㽒@R6q kTѸL$Mubc1ݛJXVJm}u\vxF7oL$F`FkTF^H8Dhbb\)ۻ: ˯_~'&bٗ>/|X*q2X<ӿnaMҟ?poǟ􋟆h`tz0Ƭq]14ԗdgm29-Xaꈠ"?%-NkpRmZtFEwX6BqT[[4h4V.T2lH%˕:D*OzU4!tR*rݽ֌xD-篓Ұ9ld{<7$T_L__4^>O5MGܑx0}i lDm- ƕT4HRYlƇK䱤{jgsضr V{b^;yt:ADC-8qDr]D"ԛӗv߼y\)Uk6>!Ig7o Ƣ1۶c>֣v qcw_~ӟVn$9{Vr񱋿ɟIO;z(\qR518doN(Du|e6=w{cOt_4p"?5}'3jX\:?4q~f'L' >[\>H9[|\~QʇL`ٶmv$qzZOSSZŶ#xR)8u˴vnpAդR3ϔʥ??Ν=m[Rjjzt*E@Sǟ'i6[Da/PCј^[AO o;˥ܔC8?'26FOɫyGr9L)fXQkJhOAA;]oM[9͛^_xܬKxz@OɖXJ|߳,{ծ-Hs_/Xx$˹f[_eMvC4錼32VO lA3wt|{ư NxmJC NҢkF4 %}2X~} ?y,T2՘a=ݽZT*Vkh$NebJ9r'Ʀ' X, "mGC[]%dd]~⹁7>ĥFF  IDATs3t:Ϗ | _]bxxVS/ܬׇ!D@\׌ ~\#fR+w_7bN;s8Ɍ56i~0/>|DI;9mF-/{O>V*H0&|0D:)RV)Dbݒ1|T^]X7)bABtejcxcO|,O/,1<<|⥗_yy[. b__' }h$NY`>A%N]-BR)!ihYvsd_OwD#Qx<*D`[aZ3 1Cxbe[v߀"Ghww"Bbq˲DdۑT*c/p=B?s3>۶'&'gfg|7M-2 ѡ###]=8 ,_ߺ} f֜3"e>'"o{P|RDpJV{8ln)e %ep~#Dؔu9Fc 6AX,D8L4Ko3"c0]7[;Ic:UJ=3eV徾#CGZH6>-Kgtsuҧ^jiv9ضk?{՗_^{q]?VPTko051S^mw>Bq굱H$*`V|wH?zG:!cL^X?2n@P#u>>>6;;'?r"sۦz?|sZdK?B{;O3{:tJl/ ?𬥔:g眶#$d-Ǐ%gϜ=~xϚ0Dk!!!!öt\LX }+\ߘY-CK>\q%{Zyup/%¨f}Qqw ^ʾG>4;bk**}hvT>:Ee N؞;]jmtpBE-V6E.ڣakݯzi)!kWh:V;)G%!P/kB7ha!!!!!!!!́6}q~I3vz_;N.rY lGk)/Ֆ^\ ޗ2sX5HՎ`yJ=m]4AaWhW}Rʛ"D#ݲ'Yeh}DSG9\,m(xM"(8Sey tɡ m BE3-طfs1:{wVp+DMqMꚏkc4'cU>Ь3kۂߟ5׺Sxy0'6Jϑ~[~w2(PѬd6.[Ž"{uܼ؆ .fqΦ!!}ڡtwM+sX̷A(¼_ ' =ګh隝fx{- ۛm{=} B~X|z"+Yꁎ \5#'!$0кקakR(8;&cNS/XKΡӦ<?Q-߾^}Dwk+؊ՖwcwXg-Ve"I[7}qA9'ӻ5* ݢ͊\fzc73eŹ`M{wXW\ v|͵n<=?=؆!Pt ?m;hlrk}?|C=-렇x>:ۀ kٌ#}tBk+=X)"?yPk.Cidh!!!!!!zviuקcX8-Ӭ=Vg%$$z}6M XŎ)X{ .p$ܡ^f:L`7CBNJVzwv=fnPKCtZCv\mRJ^a: {Z!#_ۛa4O(lۡ|[B.~Tb;Bw COHHHHHH!b>` !,nm=&r` 7 NSf~>Gh:= (vJ;_yۊq}Ue)OiMpL@Q:|$ 6Ԣ H!" R::HEjB$bZPS2/<>IISR@D 3DDl?i%bޞx,_QfօsGGP5dQZO\vD%ԺSxX[t|"VKHDR0ZD +qe& ΰ!Zi8ii@C5cJ[d@tUR 4SA!04 8'"-u&<ǟ{=h2jYP+uMbm醽E+i]uToߝ|g7"R.%8h=8pЀn:Op,8upRk DKTÉ a]{ @i4hMZi-}^χYD ɀЈ s@ZkҤ rB!ޕw~z__kY!!!!c&Q=ZE}Mo-\0=`!0^f$i}D8 9ֈc^$N4L h$V| cLX&J#)_k4rB-@8@~_~/Μ9wY0[~'c;WAEL Z4}]h\5CCDMx Y`4=ˎf!r ~ņ4Ǽ)j5g4hBB""ZFMi(A#I仞$ Zy ҭZ1$ HKӄ ԽGo>}ݢ},I0=5}nCU]F+->fʹm5<KJO&K{.("d"@A8P* C I#0!1M#Ju%A+MZnw+]9 VĐCЍI G 8*"MKRŭ}-wQ/!.J65k)n'A+ߜUZ{e~s\ 8ۥdlH}nX{}WE%\ eq}=L[t*#d`~=1a⇋^K q33Gh__36Ϊf%;yv3',bй.y<"@Ճ |.h m2Ser|q8.ʘH|PBR1"Ѣ铫y$ι&b10N YSΞA8r|"("ir3cF:"  Ӈ4c@ZW GQ3JK/35L0 9$4Q`ܬ*( A \.ߞĤc+v&+)< _6>\U9;Xc$0Q߹c Uf0xZM|Mj/80"51-ޟ1y)xfPf#=߽c$jh0:֫+L 6G1eG`B'Lsػ@L_[7`0r˼6i\_qXPo߶z:av/!w 9QRLqoLI+Fʢޘ/>9Rߜ1^3ԣ=km{JE'bc T0T 0 |VMZ 10_4"D"i]Tb"ۆ!l]w}O#"dPp|7sHHȎ_KgΐMX?QOޱ~8">o8DJ>5\-s++O:rG)sKZyq:>R\{zoN|Eb̠F#d0`S4ڂ#,M (E@GR`Fp 8`O"08 |@"l=+J.~j1OjӿYnL]_g{z{wY^D@pUޜҋc⽢(dՅncGci-KiOV?'@j1mp/x=߾mLU؉~_^)x e~0/uclM|i4æEC3UaupR^ޘ/$B6G0(PyQ,NEMUgF@kwEtL;#鬴` w3a#PBO_gd.n,OWǍ7sD &cglJrc)5T Ex2-'}1Xvj>HF2xlVMƄBּOgV%t!( C0l+_2@DZC1.@#)NUq ʫWJ+ʫ8x I^cL* gs Ԥ!08r @)" 47*8X%,M=g@N8JxHT& #$,=TSevyʸȫ}1BDMI=K2d $|]IXtX͇Xa a&ǵ 8_;-kmk'>'\|dPcOQF5:f_;~T5AǴM5>` r%V=$"@DR+"H=PRACMhrKDDcZ+1jW c%6Yf]}4BL?{ėlzly-(RbSQi}1b 2l 6œ4}gx-KK3 ( K3s!HkФR"\ Zii VJuAu Bn޼|*@K&\I!0 *jlt"gkI@ƙ08L34"Z1Ѷ?b]k_Zrn;zH'K7U^1]xi,bhZ@zdÙᨙw|UyҢ^l %TTEz%v ,A/{ oψ;wtmʘ:f3 F@ЃFƺ=`'& <դ2p)gDdS@0X1X2VfpEk>|0ϧ*l$ߙ=[6}89'jƞM^?zj@4 xffJ Z\k+)CδF |EUU8>7=Z.ʦDLiqKr &uMk GjAi L [rQRR+piӇ~:"i;z_o'[`nOD 5xܼ(>y?_g'ͬ?1[. FO!C+fNgcXgEPgSDZ7'rufp^K;#M&iJ M qjkL~~\gMj9U͙ a2n3ϋD253 H PP Rs#9ຼiE, d"T"  '纜>k,qT |O\ IDATC 5R=1#)y(n,i14"] :Aĺ !m4_c;31SJ0kS=Ȓ ,2y1^1C&dKOXm1M5%]T<8 J!@cu)c_02@HHY J.jˆA ">*3MOȓ#X}M099hMPt"Yt7͹{ivx@&r\09ZiɘVdf4QLD@F@)$ykjPK` pɷ 9F3)diR@4݅^-G~"ʹLrFg j\A3TcN\)mpyj\p6 K5 np2$h 82b`#q _`>cJaY!RӲ-Iuc␭ }E>V?{oduhsWH\$Q)ɲ,9fD1֒ b Z*R# A@Q&@` YaD$$a܌ I@QȥWF$Y k3ZRn7޷Y3@&R$REAT()3 9*\xTp "%pd.J"A *A dT{?RZE$ǽk῝j+ \ò|:b`gOHxOHgtb @0kXzzݜomc~, q6+ ĪS`qEpTWUȒzI.ή0XvZF*2^^%*GO;[FSOϹz{k^ϸhtWBܾ?<'Vo3qM,{Ѫ4=d,:a>3#' 5}|fq^ ;rh9[Ti7Y*ё%{pk6iMtGM[m7>w綩dG"ؙNS4G$b1f;(-F"@H`Xf,!! j U*jѦ0E94Zh,˛-ԶBfYS)8G/8(C(jdB2H%X5EO2F>(+*{CT\]]As\яK=wxp ] ;K|okndQlV;cWd,F//ٿ?+zH*!w*Zt<8™ st[5qG-,̆ ϝ0PZ,`Ggn=Z5~uٮgq_qm3f~AeԌ3ivS=H00//ז!gLz6YYLw=҉Xao_y$ ybƽd`A%\JV'nLӀM3F803pb#ݓ~*|q<{5=,v9"$V?m76UDe3M[]U|7rŁ&Kp"oo8hdtIa(\b pʏ.۹y^947 _ /ۍK|pCiQz?YNFy6}tOcC[W8P76Ļ{96:Y|!o׬.[&g"=jD`Oyp}} p?cѳ9vٳdZаegcIa$7/_RD(ݓ/[GB5ҙ4sG023gp{z(;?}>r.Ij>UrOO]\7&B<,YRR!0"IYD|`U(J"V旀 j A닒wPJ$a7%H xOĎ睴QD֙$VcUAD8WtAzjgyeĮZ|~8>‹ao흾G)iZ+ K8YΚ:ԬGe͛%j%;8\LRRyrAFQ5g-2HpJA FA`$1B2?{ztd 9U X@k`Z S r̔GQ5UAK`(t";"cMGtƽvcOsLWZhZg6+B$%އ_yB=#aoBA4;qѠ}z"`ܶ7V" @Q$ rZ/Wj՞{jƕbgNFdV uDbscyeq6koY3kH-1PE,i')#'B"bepPy5֨s.4o#0!wf {A K "KDHV[Pc ϯ\ e]rp%=qk̳-M>1LdbkEr9'`f*@ư2`ԅ}E;?>vUaD ŋgg8eAB"4W"JU@@`΢RIB1@HtZ#(9(`%EتX2.T{jP!aUT :윍",EA dnsB!sC8.1((p>)۽O]d]AqQ̿n@'E.O\9j`:eÊAvƜM A䀌{8` XOR*U|{}ᜯ*7r vrYoe BY=#Y3"iH%x r癈J'r"g~mu_mZQB+ZwQ,\)6 Zg@} kwTR˱5h0mg퍌 km_]I[Fkux>]t\aTFT%+Mr~" n6@M$ ! RaEE4yU Q$PQ$P!exR',@tZ:mT;Kw("L֢ Y댋nf(Yzzo5H@rR ۘjRj<(qsX2 I<σsH/c],1r4wz~ǾK.WT}H`@@(  ,,Ȭ*  k| - 5֐Qc,G& >,&L|mqIH)1h 1Y 6B@a 㒂B" QI1bͲ"2,9@ $bv;ck aӱ8YK;i2Z\d/2<pM55DM6;{)/.+1TQ_Kybto]Bwá(IǺ[wy+ W{-n`‡c[mʥZ}BudZ"B%r$5Ɉ*шАA 9D+.)/UQB Yc[] b F"ADvaZB0P0dJ@d%YPGi+DŠ HIh$!<8+"RbJIBMj,g܉5 |b++<;瞚sL=`YYazl-(`E|qw>;g,,!8AA0Tr, p|+x'7ZG/5lKHDD)PPG٘#B* Q)1dEY@7Kc8WMYJ]U+-#74؟5vV6FE,aCFYDD#UI:B DDb5dq9g>ω%eHDWURT-Us.!8<@`\|-X@Uh.MeF0PזçkBم%Ԭʞ|oӳwH*5 LsXJa{}X2++ƫt%܎a;M`m4 !CdB*j g]q qB 7"BKƙ5sSݵ{hdL;b;)Ńr%nv "(@D@^lAFQRe9<&A5DCĐ{kH }C.FA\49`2Ɩj(1""]dTL7 -y#c8a77eM}'fKnG|b{c)>1ff/ph<x":an D 0&V#hmX5#E $V!0䂪H c_ ) ֢}|JvKRGǾRa&>,8*!bY*A"$$d#AbkMA$BR2JRM\LJנz [8l4^,K9QެOOE??ݿ3{p/4G'&Om~n]\e\m 2-'N@ˮ}6Uz}V[Pc dyE BE68RHJ8DQv1KlJWl pPkl}sƠ(]mZc{ˋs !@dTX$(Z@2 3BUac\girQ $(+j)3S DƑwV'sȺ>Ap=jlzrrD9#N 8ۤV9 ,'R Vגv<i%v'̝ftf݌U-Zh%*=h*X&j T#)y5ucUuuv*+,̺90{tX]K.TR3GIl"@6&DR%GUl2sd\Tz˥47Z>p.֒jMr!"TK[I:© JY$XK.q˵`U990C֠5DDH̬$0"fڻ"bRJ5=CCF :4@8=Y%+KМ$JbfEi;@ eʯ.f,Wһ}b`,Vc3;%F:n`=ŵ Bl䪙l;F+2PVPzp \?:X37mca,/&̾~dhSL6rkQPe4V/ScwAԨs"5dD ~NjAF3n U,;pSsҢ9،}l.k?.<n+˲ ޾ ozwVocM'=O`exJjeCdLOO˵qf3G1ZZA @|f@A__[)UJ !,UJ, r![37R*l/,pPieU%B87R,Y:cS(.%!pH,Ksg,eYERiȐE&Ăq\q|تDӀ+X40n|$`̺Cl5gl,v# XrZqo @Kd* pr-zIs[4פ-ꑑ\o}aCPOt_?L)60c<8pH ;=_9|w r9ߍT}=C^DA0C:"k8 |J@<@eѢAPaPfB j\@4WU `T؅N2K l "0ILXUD:͖"Dq"nE$vԪi hb ca$`,WL3=r`(zrbF0PR@8g'Fj`I&jLHo!@bqGBώtG|vU[}"K: =ʞvf9WT\gc6ڹ^*խ] nYT_9;ck bebaQP@->( ?[Z*2*e&P dXfTUU ~.U)?@[#\ɳV2i/YʁSPuⳐw86BEӜU$9eyg!σ1dmdb"^Y<]G񱉷%Nuu kޜqqn c7_9]p%|7\|,Cpe>Dnv{RQEABY~PUREAg!yhTIge-KȦUe3^р*s V qG(8Pc%ЈL""LwDXC@y`6"Gk"UpUVf LD ,IB %.e.h+ \Uzf_cH^ze͂eOgjHAB`F,TTGXP4 ( (U;"FX!C""ʼn@7c k͠P&2\.ţJ69:K59:އ(Pg: A /T>c0B!j$t+]lsyw~^oKK…YhiRU#" ZS@E@P lZ~JS^VV (sDCƲ"o: +\S,2J hj"3Yl,6 HHёAϕȒA$saP,^HmQwGR?_{,gX.]T6>T!FTh_^tKUMgﵥOaPa@,ly_sA:V QR@- K0#TT,UQjkY:U@P )o'`@UDy3oUHs=Vm+()S|G֏`5y^Rf;}32$-ϦauKQ,M ի;i֜_PUTJjAluҹŕ*HPhB$֌ T1i/.5rTꭔF*ey83ETЅl@UjTѡ:r\=>xY/Zn>,-/9j7Ȁ *ε"Ln"l!zq +qRo#to%rA/Nv^c6s;R "?} S?ɑkhaeWNV35#q=?y_J̲izØ45:xӵ{Jq3G~jwq]7NFQhxw~ (qwM=xMqK\ZX{~_t:zO<99 EwPhc>4ʚK|]5.0;⽇]m@E8K`V ¬*,ao}zPﵻLjëf7}7|1>|q9|J,R48ox`=i}uR}7?ZSgz^31TכoyXw׿_յ{~oM<~_>}cR/,-97-"ʂPQ# ly4\jހK?/ W]s)<3"~56Zs tEӕCw>rᕋOIU /҅֘=xHϼw< |3nawL;Ͼ3;Gw 8; {&<-~kw=+?gƆę|ccC5v@%^^bD}شt`ϵ{v8=wW~u>osθǎ>3R_p{>/.' @D$@@7{;R+h]t]Ua YTT76k玜>l#^sh*LUcΨʓ3156|`j[=>sgo=7Oph66O>g@Ox؉gܫPoeqqyrl[|;FWOLV+ϼxiŅo;nϜ<}rqyi~a(߻goڣ*  XfPEEXEADDT/R_) ~ux>tѧ~ПpQV %RQ%Jz%7\vs#aueeai9֫N_fw1-i./,r+o4K~~.5W㶛#b^"h43"TUEcN*rKYHl4XCȓfY>Ѷڝ!VJӓPA5~.W w"pe=#>|X7V_1luf[|ɲITI"kLɳT| @,׎9zHl11Q䐱OE4XTEJK) 񚩩ժ?Ϛu K=E53!_eQ,\tPU%w~w|cNJ(mWLBUj,}QW\Q\˻A󩩝CCC޹l6RcfY60h4|[g(r?ܟ;wfm}wk.I/K .Zt MŅյUjQ|kk yJwuCCC}}9|yeymm5tu}}}CI%剉Ɂ$I|Fcqij!boOPBcak T,Tբ/VI#F+358lvrvy{I(@VefSP@qIahq>?{gvme)P$0/oPd8 H9vG"_x^_(qX$**Z~vr(NO>cruuw;y=udݚ׿yC===YMw䉵J|M7ݳ.oճ=swvA\v_өިz؋7ϜO~{g_ܹ+If^]YţGqfvV{_C"2;7G~vst-=C{ه︂~?W42[_HʡV5DKKKr-o{aqo?ͲL9o7M",RP&RR"fE/+e>UBЏl{|ߪK#һ.ʧ;W_z'|bum5pzoVW?—W?G_ !:u|vc=oįwOŷ㿼??$-zo[|)F[}6֙=*y Aբ33N_gldj|Qᠪ{wM 8qHCX\^ǎONO ,.8K;&7ͥNmk_>4McOfiZ\sl_oS;z{^XXFc >Aٳjί<կ7*ʷ?,--n5"hSV ܲDnm+ru D022_tםu7io`ddd||{:~]'MNN(:z՟ӧffMNNq|I9_gUuSŅ*WqNȥ,˞yss_|PUGGF/c##333/~a]_<ē+_"iQUē{}zٽwrj pc\޷o?y׏v׿}KG?S#f/{|1;zڝvTz䑟?n=l%^كVfӖa(׎w{xЉNn4ZOwC_nt:_#CO:+*oϮ?ww'yGm|M7>sjb/tdn491{>OoTaeeeltxldg͎ smc#{?<9}cnkz{߻og{ܱk_o|v>zS'wLM Z텅(itTީct l$IrgkT*Ji^{ "[}jTV}?n93u]?>>z嗖nΉ ݱ(r++++++I)?T.WADƘɩ,.P}(.*.=_4^ʍǎ"D"[/]nؿnkNtsrg{z{3l'?0`ݷw7068<߽_iim+-*<~ɷ{B^xQ{~qBѣ[>Й² A8P'Z./BFh4dB sy=q{z](DXL11;w?ƨrSFtu9wͷOcpF$YRR=w3XL IOgk/zѱvlj2XfffVbgcral|C|FOښᑑw}S ^8t:cbU[oݽ=,biⶑ|Bv&XsjS,O4¡;w9M) Wzzz:;;ǎ~f[`108ŶTmRՆ7oh4me***cׯ7ajZ++6[,xjڬVs6mWuMOo}dAQ|MPJ}~+%oB!M&c$p!d20Fju:I2L6`J^/Di:@L&qp8 n6cV%vhB8n{ttJ8[ F$wwQ) GYC(PH>]>𡽣'O#QP(4^o I?8/BI`0mniY҄% !1Q'nDÞ˛}a"~㝤¡7?iGC4e??z^KXT9BEV ׃ASQQYR\JdSl__:4'54<˯lۺ=޿힔#֬Y/}e˖0:66#~V[w.1($I^H>0c,ar<!BCk4a9yR BJш11 QJ98 !A0Bh,uC({z{ bs"JbEÏOy<Un>B(RJnv޽p8n.b99F"HD!!%5 )I1 LLD?&YF ^=,gnC@)DQ@x]ƘPYNC !㊟x\:k222!k,ˬ꟡+ Wz?r\E糳?MLL4_/fZzh4gFFcb bLzhZ/[/((wn0himVl2wuu}~B[E&)+y02LRJ3A,Zmf) 2JѨ$IEd˺Ɨ$Ijh4J鴩-MMF e3V$h~5we vwwuz)iv5@}v3OgÆ =}cHe# SXRI ' qjٖr2XBHd#$'G罩 峤n\A ӂGjG+z,4%Yݻh5O `漽L=BEʦW644\ٱcg]vM!㲲 ܛojc#Gg>*1$_@1N, R_bÇc1|~㸟ZZRUtV:)=FcDd݌Crr\1`~1 h$g1%ehq\8F#J' F?<jjvoJ-|pSM>0/H$B)iv#8RJ;ݵiӦ/`϶-U}IM:5X\xT$Yԓ#qS"KHJ@)sKKoǩ&A,B(-e[P0 ;Dn)1| 7EԉF9#?W>oll0'^> '+tÑ$xD(e$RJV%3[ QL&d)..IwVۿXݼ&U"O<%ť7n|^B!dll,ggd8>?Þ-JL''&& Ú/b1&[rM&{brr"33K.bxŢC@m;jwZ̖dedNڼnwHD()YWU%77xNfIqɞ9D| B@0qyM' UJ&&H|-5%=II+H'!X2ߙDixh3B0Mc a0Hs0FsFqƲmټe~ ;wԉF9Ll @( ~/ aQGFAc|^o}=ά1hlv$+;K5n{Z&//_z{^عzh.LN1ݴpjhn*,,Ήb}=.酲eE< c33&ݓwvJXQy;+Ftv:~e=u{2GF6[i:2<<0ΰg$X@濶صc{+3΍B!Jo_$s1]{oۭaqq p0Fk׮_[WZ*ᡒ-[ֶ fUTTCa_ryppaW^ۻgo^n߿XbcU >^TX4>>Fٷ쬬-><xeGÏ>111a1oycy {F^n^o}9yy'0F ;<q'MPNv6¢񣊊 8cR#1< iS"·cl0_?+W.Gcʊ?x}VՌSc#xE՚DV!8xZcF9d*-Ya/F6Gr_Uf~LQ(Q*lgXE,8@qe'$w`%whڌ =XWVb4%I (B0Zh4ʇ&p8Z!M1 F1&d2 1"h4L==W\ZR*dU{ B8Þ1PK>Q|$:@ˇAƘlc 0Fcb6 `0 #0\HZB%<Ƴ' [ rק%d4Yr<^ӎ4F3S+ddL%Ci4+VUwclX\y0qq*}yOiM1g0g!b!d t32Y6!V+Gkj)O:Z8(n5˜jR:꼔Ҹ-[zꅺ*KnӲ:ѤEL4xՄ:W'FjLZҸ xjQd7UY |?\,=J~X"IU*(Pv%DHSSZJ[6BXчo^4F4IIURj}ԡU'* @OSg'72AhAXɤP:)2(+uQj iERQQQ$ *|x NbǪCᥲ$󎊊j!EIO]czhz_fAafGgΓ[^$YٓRBȉFe37'QLEV,JjauJ/tb*QR 'vQLEV,JiaiQ*"+<]Bmvb`n mur@I6WbHK#O{?wuQ6Jzekɛ $]k-V=j,(ISXi ]/[滹x]qmdxKDZ-#0BF);+{seUyyyffRh!Qg @tu\޾O/]lkk 2!d0ͦuݿabno~tsa+a`0}ߟc61^QTO,=_2qIP6))c-s 9kڥa;*nssS,[,<sK9`Pbp²CA%ՉW z%}һER9Wk%-r6s0YY{VЭ4'y&PE峠{1+ EH?SCNoP7SQBT+e`6LL$e@ΓC_*c)P32c vj^d({U]#<} YY_z?`_x*9tsÆGp8 FFGNꡃkkv,FLJlIѱ?cN|ny@ۭK}t\]5h6$؍ׯ^3[,{vٲeb}FckkАhڲek=3ϲdy<+m-&y{ZVP w^}nsw.-]Hm^2O; !xzX,vV۵q%7ǢQֶO/]$Z F==ݡP0 @8nkk՚g0pW`޽gΜں"/!JY=gB)FNw=ALFSKKS4yīyy~Wn  = B:=11<7 hR!淿h4NꝻ8kjuZ Mcڷ8[yϜc?,ӣ?F1810 c9#%F5 1覌ߥ˒⛀vO(?8}#WYyǎ!uF">xOwVVn]sƠkPH躨ȋ&\${o\XxW>~FGGn6}rg/I:cW>[nGjMׇ(ґc5j1B׮HZQ,-).}ax< WGd0;r苇ePfSNGYʮ8Nh4ƀP̘F8d]rQ2 e[ Yug,2NW.wJ>nTXX(I#LO\tewmݮꚜGJD?ҭۭ/۶;iD"ёᒒRFv=;;vONND"^igH8"p8F޺vj˕+/d#bbbXUՖ=u{EQZm?ტᑡ;w6mv899qql#á`ld:3~oGkvVlzmZ߻7T5Xsמ;9w:##.]vbѱQJ+7b:bNNn^xqo޸q#q$wwj 2@'kc21 4%` !sV(C4hq>o_诚tv`mٲ/rjõ덃999/:raqOo~#7|>44h0v=xŵkcVk[V}ׯ-f[nK:zqVe(vvޱlvx<7>1vFx̬k ]]]3켳mWNLaݺ7n\MN+YAo4h,=up8o}dӦdJ9><2D(8.HzZm4]$M3>KH.2 (`8İnuk?=߷npXΟRy 2 !@F#@F0FZN @+:xؑA) P}aVEGh4Zbg睮yE2mXqMZٜc(֕69$MN'L撒u99. hZ[bNvNI:͞'I7W?;o)X<48g>FK_V?8|<>66<2+?q7\?  ؾvS ~+_//_O/pYS819Q_2332=ݿO<|054ay/+dZg5:?J{dX? 1 ,$N,O~'QQ@S18106,%qPbNtHr,㪫kݻLKs}>|pƆNyafsAjڳgτ#Q^={ ~:#b>a0#)cD޽b $&%LLl6⬡`A)%(J"d2%5{1Q(y^CUb$IQFh4t*)pH$A} B5ou>,TC~q֭OH67@>9tTXX^ t./`<6ዸy&PW$U;SlhcY%$8A ( 9!FD1̢A1DbaB(pe@BDѓ*9wî7n\qߗo"\|Zデce^=ZNNF!tww=>7+;k={w>결x<ޟonU]￑rUT[:P1N蓨|dzx85Z$HDc ,霜$tqLhl<zFfՠ7Y9 ~)3>21 rT(JQ01J"=斦ׯ ĘDNNN^ M`ο~n`=}qwdyg=wP(*bQ>'PDw,sd/`}xRc.}cznJ$eL-F13xÑC$}IJ$$(3)!!000B11#o4- nҚ6V+ f5âך0fbxwo $IIvrUoݝݞr˺]9Isg<|`,ky٦µE׭8fӍ+W.ߞp:2I,ohFM&bb~_BJKJoPJV}GEEW냦,z('X  8VDo0dPDF)$1FD(3!!X}BCC!##a ntlFfʁE1Vpe][*6U޽u:cs]}/>t޽*,Є|SYo>G|ep e4JP"|e۟M(ϴ$Ay<;w_:>1$!@=)H`PFcJZ D9 + ̓(G4L1`yahprP2,h5z}~$%DE J !4$B!r  \mlu5(# akkv?K^p̌c6LDrs8sd8mV,nErbdʰgȇ9We%S㵫&''gph`dd$ z\rءhE`2KA͒YWEEEenes{NP!?J2 b@q<25<53w Gr@ޔdQHLCC $l5ddc1"aF2se4Ph099xvQQɾF8j޽' [Z7o][he<yx@A㸤q!"H@_ggywO|-77WY\wΥ*kAlX*D7t\'쥫3E|,0,iPʇjF>h(#"ccH1F% E#ZE@(߂>ec @'`DCޘgB,cjLbH !qs(=Qs1oܸvz#CkCBc~j`e5[RLR"͂vNrjZ< asicR2ABwt.ق79=%#JTR,09*рJR±!HqS[ I(‘$IH$ y!{h6o H &x<[-V힘j3 p8=^l`pk 7n,;z ɔ^v_k90مЅVe uN҅)%^b2^(AP4dd1 6$ Gl1<[1DTA2Fr^Pk, NLLHtN4q\yoO:~0J]ml{]/nّڶm z…s7%IRGw}gSh4z}O\.޸Yz˪2٥œ&)W&XhΏ襸(ik Q>)%SMm)p| < C$G>ΝE&IQp@ J*q0BGOw$Y?._>/ Dw}[h|ȑNv%I~Z{my^̰g\x7 kvgd82VF#CYYY?|G[m3mQQ jݥR PHUZbEޞlhIU\hγ%)O;?FZxz%dY )g<3I&a cIF)(`&ݚ&x U]SFԋyy'Nx }TBfddԮY6b1Nؾm{AAhc~@~^>PPPƟOYYN ѣ_U]STT,nϔ֯0W;wT?pUnn^nm;9uu{W4MG!4ZuKKJXwr, ђ$/dAG2ƅR"ڙYzQk.ZTo}ay4}Ņ: MhԡTIc,}4xVJi!V8Z (j6͟j Vlh$[,-&o?nžY,)SKq9%wbrMNQp7!aA)P_1M e4gmv_ZIAngG1CFA512&E哰HG$THWgıHF=Z%_^4BSGˌO̸**iC,**sg!߫+A<\ ?J (5Ml'NDԷ %f3V^# _cq/󣈷SRVY s5Rgk:597'N(((y~tt͛ϟclݺu+--h4ccc/_njj VPPw޲2^xn޼Y__vl6WTTܹr z;;;Ϟ=zgC:tH~Nۢj͚5&) utt\x?tHYuJXf(Z@sy}>_QQǿ> :,5iA\W Su3Ws<Ok׮v\o |_˿ڂs_5c{޶mDћ7oB?Oۋ*++Ϝ9s̙K.LÄcǎoٲhxx`0TVV Ì1֯_}O|H$"!>\~cl*++ׯ__XXk܀ԉ& ̡?׬fPr(f.PLEV2hdl?K7hӦMpŋÇ:tuօB{СCvںu~|_'Wznkll$tttչ\.I] e[X0Y~x7l6/˱^{mÆ |ɺuf,HT__uQZѬMO1WiQPEEe&xg>.;٬]bB @:@rIѨ|yff|,Breffb1ϗhv=ܻw?z<Bܻw>|wwXX, b18d2YBP9Rqʳ&d)"eL6nh\ͩVs*Ŧ ("1c.IN B`PVD"p82ҫWFQI1&)Bu_^^ކ b7C9996MNt: !GT Bnh4$qn8++:tg}}}$ޛYqe{3{*@@ @hVonwmτÎo;&lcؽvwKW@HHKUP{%s換UQ,WU|̼ygin^nݺuSwuW.ŋ/}[ǃR&K1C#,3RmD)T=ПCU ^Q'_QGݿڵk~;w-YW_=w܆ /^l2wrw Z￿T*}.}ٲeׯ?p|muvvhl6{뭷_ w߭Ht-̝;w?֞{w/j͚5wz3g޽{o$y=.RnJRxzj;LzkkZq\:}]z'|kiiٱcӧww?7O̚5^۶mR3˖- ===ʕ+544 @]]]'NPJmذ͛ 8tҥKc.^G8p`J!v{kwb'Ox ş===Wڶm[o=gΜnu8"rbx^xaΜ9|AX۹sgWWK[ٳg>AT5aYƚ`{d*KWe/ekkRS'ύOp{\ѿ(m:gN[u\;|rRCM@o_Rz;qS^jzB1fnc[pѺul2o޼ɖ(j\)F=i@ifHz }];kVˬKlۺT*2cib, a8y]ߒ%K&3Ӊ{R^ Y؛ᥞ*dszd2>`\>&!OIZJzy=>rZkV +-C2%ȼ40甔)aI2EI3K#Ӷ\-=!-V`*N~HQ\3$qu4^tRct$KJJJT`B7ƹ՞`xEzoTVױnIBoxK3x'ԘOϵIYϓˈ?)7m{3PxJ뼹.eMH'"h&/&>܃$M%/S'IIII/We\))]5͇/o=\͑s쫒k _|ã&Uk2+%%%jkk=WY~(L Q <g⤌3E_՜K묆D3qRƙh2 xVoAj4,~e2DsR^Jo 5/`*JMOrh<;y"gTu3ڛy#H-ㅒ}?xq5/J<>ۤwepeYPcSRRRGçuHvj,575`kex'ٜ8)Ʉ}qDSsTt=2M ܔs^mMœw U}ViyXxϞDI7ծ=~ޚe/1e>kbHXk,H>܌LIfipmRRI2SI҉B$my1|7`g?q|sFӆ38"["d"@YlFGD "\eC{rIJ.^ar/k:\S痟 RaaT5yC=YpJ˥zM럆k?<^ܘ^]֫y Q!/H,[!R>q7FRcP*`"xrGD 5̖YbkD@3PH66;!""[`aad|CDӦ/\p˃=-Xh,ZMIIa! Q=6?#k*QeAFo9w[J)BX"2T]. A$(" K)Ye@D@@!3@@" "̈bc$[HF(n8{-yvk1&*rd4Gmll\l=&q)B+8 3{*K0,!H $pfLcE !0;KHR/=Sc?GOn 㒍#sͶWꙞ}vۜǔ֥(A+$ (  Kq &>SI檸ji6$+{dC=bر#Ƙ[F&K#CSSUUuA"֚0aұb`"Ԅ0 =+IJvۈ@rjpsK@#%fS&cLl$̜T]<4KR]jsT˄~M|CƜؼY2(Yޒe^v!XיKD@}""ԙ@!@lbc-)@"va .',u1hedV e26jJoZ ~$ǵCH( ؝޵@""XX@*c *8scR &V BA$4rWJIzW%.1J)p晸]0h QVlX Rl1'g,WK~WI9-~4R&~RRRR> [V,BI|-;j@,($3aHbADH?ł&Qqn$F 3 X6|A1&**@kU,10k "@DHW $z! V:f \358lN{BF1xT!S+]kD\iRu [`FA,wh]bB D"ԚRDDD:]{w` @$E@ ˆBH ra% l)5r}Ju[WJΰaf("΂Ɩݭ=bэ2d3iu#sTt)!WfNJӲ!"\z6GiXc2(Pka2h10(E:PDaJ)kmTDlX倈ZZF"EJbc,ĂeId LE!ZZQ+ 4FlPk3HI\/ a$ppE9/rl4%;~\2>x΀*Kj t\j~cJj-SS咦;kZkb&B@X P0!έ iB@Fъt İEqYcQQPŢۛPH\EP k 73Q~-|eF>&U?=Q7ϼ0GH)"ֺ+ 1:WXcZ ",b1H  ArT2!Z1 "*)CJB+bKXܪ #@Q"s PD״ X0 и\t9×PzŤ1*=ʾܩ~Rx7ZʅY/J)"HZ/fDZOk\EDvaZ!d(š( ̖A) 5[ `"%.,|FXEB>@RJ)"de:FCZ[\UMjyr6Q2 % ch_ EPYř*!66 2DH)c-lrg ZkKQQDR" .,Z 22Q,A@(P ek-MAI3 &RD"(,I9+-3%~ |6EeVe|a`dLVhR m.cu Daf$"1̚H)Dd8'cu`ARE!ZeXX!`-0 QlEE$ @P`ʥ%B&B(2 Cq$R"I3"*n]VOt&kII*wS]}MPɟqu}n\UfJ*BRE \' .mq%Zq1 BDEH 8)G!0T4Ft("Ffa`Jmn_JIul:;< Ֆhߊ-B3>6[ ($@X1, * ѱV)BX"""Hkbl- 2V.,I&'D@gB,ƺ""̂H6ck#c]= DB' H)\wp~ Dh 3"1 ?61^ĿsJQEMDnL)7* 7\,-wzDܲw˜y¤: 5""!e65e0V@!V d@0(KgL&cź[8DA"b@",w`P@Xc]n<~j-"u\I zRRHX`@tنbYEvgUEuPXQ_:ZIa2%KII!t&'pk,5`%| ə(,3Zp?fl]6;3hEEFk1l-'&ga Zevj͘"b5e%T T9$`R'd7sP!R$iDQ=}/YpQƘwS__h----Cutoi%"ַ[f,ZxC]xay ,f-$#q?vl%KέInngҏR.ӳNL)7'~?))cBk=EJܾ"H*b Hc˖-`-rXO( Eu; 3$9.O2! r.,,ư!k\K,.ugg11fhW05϶??o|{9ADQ-\_JKK1G<٭sJ_צOsg󟴟=㟙5Lb9qۿ?|'Fg@:Ѥ\F%OjHsU!cI5+XgX q*r"%IRk(r3',@LhDRZ1HZ+k`, 3(S*[8/iEVY3]b$))4IP)OBa=V#hb;E"u믿v }c^ov|oÏ<3ghoo~ {鷻v򗟹MvCb$'"==߶I2Js9QDI@P5D#Ü9[Z#H%eDDj+8̬ eP `M,{s}XXk{XbDD "+ Vbk*ADֲa %I BMd%.-@dTIAKuF7һT*9r䥗;w޼3W<ݻ~?;6m|p#x{;K/w7l3g~طq\ IDAT۷r-'NOLae79b&[)P$I#ńnWp)-יFJRIvݰw(pfÁS.I+RB`5so[F@j$Pa`*bf)1Yqcab##6ZkXEB0#Ht }]t.O9S 0Gٶ}j=^B^uScO|fҥa %?_ qzl۾uW~]k~x`zzΝ{-[ǎ{睷yժ} Ӧ^Uw466$dQ)z-?>u\WR)#)׳/22~줋Œ}{zlQ{B7( T5()cV$(ɦ$Ơ&4lAR@ւkXD\DJl!rA!]82KgsULWG>.յ'Nظ ̈~a煎SN>˗hhhq8ycG-[.#G"/任;rؑӧOGQ|GǑÇΝWWWӻg0bx鎎o!bcs-[|U.d3k,eWe%IIIat!kCzc0r2WRHFbET1D\vR,[k];  A@JJ$R 6 ] ,"D BTDD 4,e]2גla.+ZU d?:xC͏lySGU_x[k!]v@GgG{{{Oow}}C׮#Eщ7nܔd=ﷷYիל?~--\ЍX,Zk\n{~nٟ|c}}C|s$x9KIy:'gI6Qz=@VRdy,D E+5%Hrي#"( ֊U 8(Ml,[6.Dșe.EDҊ"F* )8[itAr\oSپ}[W7=zqa1ƔJJrֱcGOQ__kl`ccS| 3fd2o懷ͻ|5wщ'KccSb{N9=|wҥ>կ/__?<˿Kz 1DQd68v&3sMMM47Jj/{ssxb oR$-&$*)D$P$ YkL X#6f58Fl볍 uMuٌ hd ـ H"hՐ62adXkDX1ZF"5OnYMD(mv>m.ҹ:7zf2i;qXTsk[߆ l;nߺbm+ҥnذiǎ[x+jӦM/B"琯 =*aW1ZVJYkwٕ?طZ81キ-Ϟz)f*'cKByM31qC!$|Ji fk\v!$WLGF"#F"۠.d2ZS>Qql% TcB.8Qdth hDeEV*R).Jeead@$ IwD!r[ojlyl%g455!ӟۿ9sV2s3͛Ȗef̜r>_]5:.\ϟrܲx֥֬Knu-5;}wu}ݿ|ÍΝ7 I2R{U-^z`HQŵХ% JJ_!EhRVP\3!)D*@Qk T6TJ"(A`YDQXSBHZ@#1X*Haj1V"iJ+\,5Z 9TOx]Ŭ̗pa!=*֬Rаݻnu=khh۟rYo9r HddB455ݳ7z}}/1}ŋ~˗߶r 'vKe}֎_ٳZu{E#Gg.]zkΛ7ottIIIIe֫>W9]_Q)EHJ Yr%AblAbX$ФT&)m[fË́DZR*P"FıeeX%Ш!$BSDR2#iSY6YX.-^XVjg̘q_y۪A0ᇷhjL1.70hA #l]!"BfD*k*4o7ze1 ӦUNӧOoj$kÆM~tԩ~x`Mn+I>W&l};w,Zx rBX__?} ;&inneDRɲlEiӦno߾RTu-[Hef]] 2ax9 Liy\hތͫhW/8<92]hgW7 "GQ0loH)wF@kVZIT^Q "d@qlHL&2a&YKBD1= S&Iiiqd2a[vr Z̖A6,Eux#̴ dk*XƟ?RIڃ pyDdpp0t.T,Z ZDŢk(bAE#r9W2(0˹(0 ػw?"?9sED)ֺR"93a ?/^TL11pO);qةS'@W #3$_RUֵ\c,C;A,R)l,]*I4"JRsYD+YJ @"a HDJ0b,0 R"asYMDT,F1ְ0Cl, (5k 傁4ql- ,d) bd,r_n{ DoWD{1xa10Xscc*~2jre2̥変(fFQ>AY7JƦ+3!Ԩ35drx얨{ї'Vk^5,=皢;'(*UIڗW8P`"S8Ё"- XŢ@ljEJ%Zcl A&D$RJ6/#Hm.d!6P( JQdPN+EJL&BX* $t"c0K+ P /$t0"iGɾLmӊڟ[o%5ōNe\(<5 l];0$Dt=CX`Öef3$X [28Da @,ؘbY ZTb < Hd HFsMTb["Vk$L&dq4" -3DA -J4zWH̝!|$5vǂBU>{0SNq>j:sΟ5r1% z۝_oz . 9m,ocʷ6<`WWׂEݲ~~4Ɔ-0PP7Op >u_54ݳϙ70_h>s??h Xe23W:{``pŋ>_w,[~[TzzzM_u:\x< C_ayԤ'nZJ#E󩊋m5yRګD x&zקŃ"b+.K!$3Vܹލ>~۽ݸy_s_]w{/vɿs>ϭu޵s㇬GQq.uoC/t3-w|8t5/O󅕫?>g 03eiL왓uÅb=z5عcہ{XŮ=R4kv۟}-:d8X'[ʩwrJJJU/BjR,I[O$ac 2 9\]O+/t_"hmWZdUW٥+V궾˿"6o-KcG-u#O~TF[xj/^ϟtommӋ6s>x=[};^鹘/L\XaUwLki;qh˜zt|'i3ܲdy ,߻w:η:v'f~o͛?u M]Q6~x]OjP 40SWzϢ,͑7-iHJHDZXeB"H,bC]}cccN>dcnEeV+ޞf`{&cɓ';:ΗJ)N6P("i(K]]ڙm̻p`*d#nVRq- v:yB䱣q#RZ ?w)DDR"2Y-|?)b x,wD3aoĔܔ`9Z˝4*@V8L&kMGqP@80[(\S0b2k"}}}--ul  ftZ$@,ۖ-ig޹x̑MkaH!il9o}CE]>k𧭳GJYg)i%-@;nZ%7=ADt} BbJuYlh Xcl.k p0 EX(J ID E eV"RH!" B0/ !u57u]ϾP,t=fs9TDl-456}l#?ٵc{oo/$5gY3O7^9|Ct+ISw(3*/'zxz zƔ_䏲6&-H)2/b$:a`R~pPyh s.mllb]/tt L& MXY<¶/ $@Ć&"kPEB?^:{[>?4M *H,<ǟ~s_}|76V],sc5<2c߾w5B0,gkHB1<D)j 1J5&w @F`!|ĢRL&5uu:{vPwr;rA@hlfO=Vپ_⧧O>_i6kU;zMɞNIIx92z B% hJzc?O6ᢎg?ع;OX)ⶕ3[L1k-Xxf޿i=oj5T,ؾwݳ3[_dϝ=a2o}w5G:554 l6oz 3Hg<3.[;z Mu|G϶yG?4-ɕ#;͊?)S|l)KzLjګD=+/i