qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/0000755000000000000000000000000012273255454020517 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/.tag0000644000000000000000000000005112273255454021267 0ustar rootroot5c814406c67910158bbf725d9a7fcb10fe9f96ee qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/sync.profile0000644000000000000000000000120012273255454023046 0ustar rootroot# Module dependencies. # Every module that is required to build this module should have one entry. # Each of the module version specifiers can take one of the following values: # - A specific Git revision. # - any git symbolic ref resolvable from the module's repository (e.g. "refs/heads/master" to track master branch) # - an empty string to use the same branch under test (dependencies will become "refs/heads/master" if we are in the master branch) # %dependencies = ( "qtbase" => "", "qtwebkit" => "", "qtscript" => "", "qtsvg" => "", "qtxmlpatterns" => "", "qtdeclarative" => "", "qttools" => "", ); qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/.qmake.conf0000644000000000000000000000011412273255454022536 0ustar rootrootload(qt_build_config) CONFIG += qt_example_installs MODULE_VERSION = 5.2.1 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/qtwebkit-examples.pro0000644000000000000000000000007712273255454024713 0ustar rootrootrequires(qtHaveModule(webkit)) load(qt_parts) SUBDIRS += doc qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/tests/0000755000000000000000000000000012247412261021651 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/tests/auto/0000755000000000000000000000000012247412261022621 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/tests/auto/guiapplauncher/0000755000000000000000000000000012273255454025640 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/tests/auto/guiapplauncher/README.txt0000644000000000000000000000015712273255454027341 0ustar rootrootThe guiapplauncher from the qtqa repository uses the data in this directory to do its testing for this module. qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/tests/auto/guiapplauncher/examples.txt0000644000000000000000000000022112273255454030212 0ustar rootroot"webkit/browser Example", "examples/browser", "browser", 0, 0000 "webkit/fancybrowser Example", "examples/fancybrowser", "fancybrowser", 0, 7000 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/dist/0000755000000000000000000000000012273255454021462 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/dist/changes-5.1.00000644000000000000000000000167112273255454023461 0ustar rootrootQt 5.1 introduces many new features and improvements as well as bugfixes over the 5.0.x series. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://qt-project.org/doc/qt-5.1 The Qt version 5.1 series is binary compatible with the 5.0.x series. Applications compiled for 5.0 will continue to run with 5.1. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt-project.org/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * General * **************************************************************************** - Rename QtWebKit Examples and Demos to QtWebKit Examples qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/dist/changes-5.1.10000644000000000000000000000166512273255454023465 0ustar rootrootQt 5.1 introduces many new features and improvements as well as bugfixes over the 5.0.x series. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://qt-project.org/doc/qt-5.1 The Qt version 5.1 series is binary compatible with the 5.0.x series. Applications compiled for 5.0 will continue to run with 5.1. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt-project.org/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * General * **************************************************************************** - This release contains only minor code improvements. qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/dist/changes-5.0.20000644000000000000000000000160012273255454023452 0ustar rootrootQt 5.0.2 is a bug-fix release. It maintains both forward and backward compatibility (source and binary) with Qt 5.0.0 and 5.0.1. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://qt-project.org/doc/qt-5.0/ Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt-project.org/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * General * **************************************************************************** General Improvements -------------------- - This release contains only minor code improvements. qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/dist/changes-5.0.10000644000000000000000000000151312273255454023454 0ustar rootrootQt 5.0.1 is a bug-fix release. It maintains both forward and backward compatibility (source and binary) with Qt 5.0.0. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://qt-project.org/doc/qt-5.0/ Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt-project.org/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * General * **************************************************************************** - This release contains only minor code improvements. qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/0000755000000000000000000000000012273255454021264 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/src/0000755000000000000000000000000012273255454022053 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/src/qtwebkit-examples.qdoc0000644000000000000000000000467412273255454026404 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \page qtwebkitexamples-index.html \title Qt WebKit Examples \brief Provides examples demonstrating the WebKit features Qt WebKit Examples provide QML-based examples that demonstrate the WebKit2 features, and also QWidget-based examples that demonstrate the Webkit1 features. \section1 WebKit2 Examples \annotatedlist webkit-qmlexamples \section1 WebKit1 Examples \annotatedlist webkit-widgetexamples \sa {Qt WebKit} */ /*! \group webkit-widgetexamples \title Qt WebKit Widgets Examples \brief Examples demonstrating the webkit widgets usage \ingroup all-examples \image webkit-examples.png WebKit Qt provides an integrated Web browser component based on WebKit, the popular open source browser engine. These examples and demonstrations show a range of different uses for WebKit, from displaying Web pages within a Qt user interface to an implementation of a basic function Web browser. */ /*! \group webkit-qmlexamples \title Qt WebKit Examples List \brief QML examples demonstrating Webkit features \ingroup all-examples These examples demonstrate how to embed a WebView within a Qt Quick application. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/doc.pro0000644000000000000000000000007412273255454022554 0ustar rootrootTEMPLATE = aux QMAKE_DOCS = $$PWD/qtwebkitexamples.qdocconf qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/images/0000755000000000000000000000000012273255454022531 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/images/webkit-examples.png0000644000000000000000000004557312273255454026356 0ustar rootrootPNG  IHDRfy3sRGBgAMA a cHRMz&u0`:pQ<JIDATx^]\]MwWUw]%ABTFA1;T$둏̻0g>s?g{ι{k7)_B 5?7`8>7!!B"!:L$Ddȡ"\ B>""! _&F"')췌߈=po'~>Atrٴ~t;wLj̈N$? v?=ov /f?]/vq?t3-RE!$e9H@kA-2lBh}Z߀ס $־;Fjп!jRE-B$1j5\Q ,$󵪐FZPU!r4 I b4MCSD4=|(~ qhi,D++њjCkV3Iu+V(C3;!U[iiɹTa`7-E] ٢6ՉD_,xD # E%iDzE[Aքu x~ەjg8~P47"RU|_5 n=ҮDH e(䲒wDhi?V~l]FW٫ϱuY'YJb}#+%.rw[stMX*GY ƭJld,~ia8opbՑUVWѭܩYfTgVƌoX.d4"`ph i [u};V Yv Z&h h~)/EJ Z֖ә@R.{ FVJ)^9l ҅].)%3UtgZqyĎޒmR9Ȓ*e?tс+n\ރ]?Pȵ"8n'؇4j.h (])SA1y|S.L ht~@hDA_eKQo  tmZAK-vHcnw!czb@d[r L`b Cqɻֵk'v@1h]%AnhAL)V ]-ֹT,y\fҾ#ʩXjq \Ѥ$%g\lZvmtc^d̚uƖQ@5r̒D)gҏiR:ܺ!b$_OW [%,߸$je%' 4,) ]\sv>ѹ9l6Q2R 2(X;AB5bm!)B*hys4Q$ ~Kv*SfbeC5']G~Z[ Up6V ܛh,.$ePXe-KW ohWN5IhDcԉ^DR|d bD% !%JqW[hs-Flbgo*b~>dD=աMlx?g+3~hvH x4!bu"}ѵ(ⲅ' IM GUh^ h;HdD U6| 4+CB$ٖ.bpuy+G]$."Ew|H6yh7Ypi+EK?PB3?Xk>fB[A2I? !o āIFCVm>ZTg0iw9?j5deX#@/QTmceVZpݏd 5wd}!f;DmAFD j݊ !3A L@e3*dBSA@ hX#o3MD̋Lxh$fƢ1gHb&L$EH"zw׉:CP4 BQ#Qp U&yB4 8ѲZUt7_pM7S37 d $r6.6AN+ŭtCk NMq(k1݊!nq@`D^X&G!.Z׹K$BpL0,0!f$ӂ92-FGh|<$RD 41 MJCӑD*黣 iи44:IW4" KAĚ!,0< OCƦaIhp- I$h&_$g4"f¬6dH?=&TpYeA>@ΣZ˨L ]w7-*T.=Fep ,AzKMRP"P*Jkź,ؽ駻MUƱ P(ol4D/*9pGk\xykh,nNCa(Dth[@v6 +Cpu"{r( '3M P:0D9!Ç.VNf Eчf҉*h^A'8 M`<4}{ 8Mt;q7g ໙:DN B UH T= ^NN"ҹwbO9x,[8$nb7HW!D5qYCոw԰Խ۸iBq,C©N QƋdSZxn("t/:, RXG`(5 <vp<9QS&9t s', p}6w9 }隊F0J7衞DWNY˟'EhsNTGK jQ]>4#DN`dqY)>z"(*0ǰ'a.!U "B$ -1q"ლ)ʕfexYW C 77 jrS# R SIK$DhxeK© ?𠶏NDvri8“r5-:+YFٵv-EɰkʃДv8՘+A("tJ/E)=oUIܲ]'(MY4=g9ʶ|\$6>nsp8l `<k>b]alVMk N+ip!|38APћ z)eULv]熉sԩty]bAwt$̆Ke]puPWq:;Lsẃ4LTLNս!lm~&5:GmNI)#@}V66=؛u yCm")\ )..᫯yR=Xټy r):+I%8Jp qBed(WQWWm=.Auٜ%Kt@rҒً&Syp򚙺pFGW^ }Yls]BbF3§P2T7 T&--NA8 N*Χ?S C*`r4."XƮvH!p3`)a]:+o i)9*lIxx[V z.\n+ N>!+3IJ\& E-M1u^P5[GOM]_G<B:\\q>ZQ]^W^ [+D_ a gQiYZr)6B,4T'LJdDdeF'9{t8_4'Dj EEq"xa+I>Q='npX%LAC )F$ =ٹ5(MjBߞ <\V}~ .GPXK( L%b9)ygf& OF-}6wUzu{^Wq9tjxF׍R+|'w~#Q{f?}T- Gq;u_`=[%Y'D-'l]s(#삪z 99@G7!2AsvogF17{]+jL}zLfF0Qu|tZ䟈_cק sp7!B@[p*a\, (}Asw?Uϯޫ-)x h'ku1qDɽuRFaDqٞquKdDE-o1xt |ԾLL+%!!:47'Rdf~)meNy}WH73i6)F?e5Q:9u1>J} JV_t]{ -Iɾ'?C"J*N٭ 3jAYU "t;FȎ9ǶƏ,1*jYp i:6e0f6ɻ[)tٓO8Տ2ͪZlSfF_M*bHH;#h82#ae+-I#˵W7(b>6ɛ10 wt0AM-+C>K/d>$-SLUGtkGE "O9ԍ NC)W(>4e͘cq8Q7s%aW?cW9d8"$|ڮ,Fz~}Z+#8~HI@⓵jcG7GZ?;lH\G쒒<N=:ǁF6;uDT0"* Ny% mp0/λ1qaٮVɪu?,pʧfnʛ;`Ɣ>7wJ!,'RX k~/V3?9 [|oh6J.R֚p1! ܻSl NYζ-[FQ'PB ZPf= UxES f8~2WYTd]0_#Y}Kލm4뫌P9<˵ȟ-G"d'iwfP ؃džԵ/# j!_鏡%'"e@ȼ"O'mvε+T|AIDt2p%qChÓQji!KFr\9)PqE#;Zo۶W iPp=<3!K{'?4],p ? k;dn>;ws4K۱kh!Zg8OGx+OGiZ8  InWɬ\wnm$!Ng{XML$!ߐΠ%uOx1rf?+^(Q[yeSm)\ e#K!DW m)wb8evP@)‘X#p[jNƟ9o(׷+DADatIk## ) ֻ`qT\wi|90Rz*xOTv3!_ Hۇ=chK!:^'l2K|^~}_p Rpw2RV' WcyYsֲ[x 526WWͬ E )x UB a[KjX%M X$^o_p gecubQo'Rs4Qӎ*՘r4f`IcT96W. OITC8ߣ8a3ba6uFُ9.>K c T:l\_3",p 5Ww{q+FS)Zny"\bP ݸ\`[K+ͣ2k"`u:ZC-^#E8}~9`źpdzƣ-“o!9|p5 |WXٶ= sE =?|aqlcQMT>(8Xr\[ޥ;YOs/eI_|{矀F0&eW23>2;0D$7`(mt-V)3#^}c&׏;0EZ?Z|iq& kԪfnK6\_F  |y8a5}*8^Ny>K85"w*w8W XӇ3iqc:l85的/v˽$I0OmIXĔ?-ï.s 9W99) .ưAsL@> ~qM Uzȫh΅T;wK!Pމa;'?`,UͼZ8ÃϽAҰdhbw&#,'vhKlլrڮP +6‹Ui'z&"<( !Lym?N֛5VMv < BH8a &ߋC'OI`t}' w9~Eo&}j x" F =g"8wΆ6x d >P'r GGȁ-f˗)LP-&6D涹+:ZPM/09<@G8_`<>d h?A (B(xM{wpSܠR8*}}cojgpVeg35FFI+*)Hϕ#} 2 9?'Mh۷m3i `֭]1t`VA3\͗]l4<Р`2D9Ű9Ć@V@ahh(FSCc`𥘘JSQp J0(`@`WA WY)I'yx1͘nh&9/i~4$1a8{ go@>P>8{J=7P걏=S6לvGmsz\ ܡC=!z([)> .X'z & !99|ڵk̘1#vssqs=>Pxrk):+NNNIIIKzQuqK=%pq g۾+4rȲ̞=;""rT(XO?ÃɦMV\ ̶mۮ]]lٲ; nƍC>V\\|=MMRжf͚u&EirpEEEOpppC_|7 # = -f۷og0tzzzwnaas\FF.UPPpE|5%wM5+u2dHeeg}z A֭[Pkh^ 3 u~ xq>Tr{ GԣG֮] ϖWZLEQfРAʎ?5f= F6z]|@tIZYYA82336` !>pBKFHMց>|sS%8:P⃚㡫9sPR!]cǠHKCuԩ vi j-| 9>0 oလÇ).6CC 7!(5^"Qں\PЗ00=+tF tbظ>#06A_aaŗpԩV}OgtO8yyw'*P3g]?NsߎfjKVߨjW " fmn{Q`ubw&]Hhg{ilO;칪F.Mir K!Pۤ-ºnz4Ux:N )'G R|gF1"("p RUURub|gPd8p pJw-3%%%jV5%3Bw&+2pP{gP^A(oq0qT)g.{gnT4%YQEǪ9NRo>V8{.bKj2 tЉ r?DiApB,cx.Pkc\eÉk T; cg 5]91  YZ=띚ɂSm&'\5| Og&2BlqgJ3 PM+*fb2K"7NCAgǎث́'x0u^MS}<*/zEPxQ0;|e^԰^l #EBQrY[dىc㋀zzCϖjpj2JSR^SUKY&ꗾŗ`ʁZ_P[x0lBJJ"ūPr`k%xmեnĠ;`8KS^xK_YphzN3񥞻k©NL&[|IwULRbS Ҙ t~/^#}mN%Xܷ gXf$zcΙe,e^2s/H];s'5$:H֢K[>u_T+gQG_5Ґ  928m!ߌc1Ko4)~9ˀ&Ϳ!`%'s]zMy7]&+sEV ̌RSIN<=kG'v`d39%Km[O]J*/-K/|=ϯF\\nl N~_ifYfL,+}iuu=ʘ>g^%{sYk V$B9df[ΙvNRLޑs͗y#~7He~©rx$w\HjΨ'(\2=8?P2nsLa|p^m+aNR#`]EwޖW%i-yceeJ]tj֢:|?,wYC^#MD+M+ajj9[<*ޔWzAtat.3yusuuSa>cҴn۔K/_龼=w1Jn>/rwi4wx4Q6XwXm޺)tGK[rʷgϹ>vqS-Ҽ-.kv8o^av<(+X U{hd'O,v-9Kˮy;Cav#^#;/N] a6PS%i!р-vRJw$َrW7ew)ܚ$g%`r{iU{ yu {q*fT/#?筴sdk~9!~}pܹ儞x^/ "5)7P}ثa&\qH:{窃7.|(H^_ldַ ^pg Gy=Gy]b\[Ikae{%Ifÿ՝ƽFR~4N)QwB+G1lRԸ+g'z<롪vݟ$%1ʷ&rP2pTTgIC (FUCeo9Ncu]%^#-w^-9Us<˷ީ}_^t\'Uk>ov)c_dX-[gq~8eZ'uU\}I4G>H:ᜤk&=w ;9B =ؓgsUمdAjcVTXww3tfRq})+gh>QJu :m?Nn†'r Y?bӅYmcOݎ=M5օ=MoDXg`Uc773 ȆUVˮp {2Qs"_Pdk*/WX{SyA e {C]چ[=>o |{f=>{9;ewym&N/yJo.Sn[!)_ @ISd3Sg _A>o.' WjJmg\=j^QOqM7]8',|LQ+pn|,ni~LTWL> . 䀆 ~Ἓ}w!S):x0DP,E[Ȯw΀Ʌ ICrb4KLf4e2g-x5FX1g蝲%knwWPA+"S6 svL({]x2'" 5 :N#iO$p{gJ2J4ZĪ 8.}^* èi ué1mWM[w=WcuMG%`!MCULC.9xbq69K8kX[F 9T Hk /o:DpǞAK~}"L"wScҾWx owQ%[87Jpp_ :N4B/RcNʺ)kmW[%{)FLAv+_7Xj <(FYp.VeW: ^W#i\:9p$69>/&>#>4R:%wm 7*{gꍆznWyccʦO.6 0iSK.Di$6M9YaPrг`kԍW"86bY%gc4ιrWt1~i$@Cq gc^_D GKo;12UyyyͭoB0wn 3wo6BӠŧB[bN Et&tHUۤաV>qg݁Rגunye({Shűӷމ-kY9|_ijדtʷt= N\I\إ@7B opusxXk| Cn p$}E'CTΆ-ᔤe)b-}qeDwHb7so0<+BV=ug}Mdf./uy=E)&B9cNUvs۷_;ӵ1l߳tIT4U>Jh2bم$E.I )=vٰDBd;f] 8ܽJ!_No휯w/Suѭ1%V-l"1_ Hzq\#9nQ솦FB(2knT^b$MN G#U/G_R hu:]VSy#Ძ]uv1n6Ik\D,jラ;L"9:r==U +VYCd0ɅDl 8YFxDsKkћ]3qF,2P ]Ѽ XqiOY4Y/4F^Q}@ '`W!`1/yG;9_ףsu\W8*^}4B>ٴH+!| slƓAJ^NrDj8$L Zz%JFUUuuM0A퐲.i0o聟sMCk;SQ9 Iޣ8+e?풿«h[FA9Z`vCh'U7Z,?F$fihv1M&SR,q Fע4muns(ANx=`֜ dܤS4[}lK|`H^h9L(!̝N1s_΀YJyUx$LvXB dsڑ+T7XD2(nB~rIqv%Tblt%Mл~19՜($f:m 3{aDх_rRW8泱 ~t"cק}ѹ=ˆ9I~pW;Fasˮ݊ӽ>ie;'äUIO36f֞xO<3g}e p&QÐ '\ڔ{zHiuK{_Ԓȇê/:zǰ.Q\pg+%޳sl%IE SdA}]Tv @K/^ T:V >6zo?~+~b{mh?qpTwy%[ =5LPn|q蔙?ʭK 9I!U^UzU&׊W'r`A]$ B^=P,fA>伔^τW~@mp ; E&_TUWSZWS+hԳ_Bu,r' v;5UuUi 5Nk am*^ah/$UMxrU&wvzp:(.&؎ H.=v-Hn}cյ4Ǩ \"(E؎Q\U[YSՙS4AxD0k%bUQB :-ŇS2@h18{'%I8~g/_ o^WٻK/J!<락G~)l;>%HHc"4USF)6N;(!0ۉYդ]M12/PXW c[)v@6>G%B_AߜA>O6:C>Ek#*yEgzϴKLoO|jO󤽚/@B]Ɓ>sYZ䟳ANXRIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/doc/qtwebkitexamples.qdocconf0000644000000000000000000000261112273255454026373 0ustar rootrootinclude($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) project = QtWebKitExamples description = "Qt WebKit Examples Documentation" url = http://qt-project.org/doc/qt-$QT_VER version = $QT_VERSION # Defines the name of the project. You cannot use operators (+, =, -) in # the name. Properties for this project are set using a qhp..property # format. qhp.projects = QtWebKitExamples qhp.QtWebKitExamples.file = qtwebkitexamples.qhp qhp.QtWebKitExamples.namespace = org.qt-project.qtwebkitexamples.$QT_VERSION_TAG qhp.QtWebKitExamples.indexTitle = Qt WebKit Examples qhp.QtWebKitExamples.virtualFolder = qtwebkitexamples qhp.QtWebKitExamples.indexRoot = qhp.QtWebKitExamples.filterAttributes = qtwebkitexamples $QT_VERSION qtrefdoc qhp.QtWebKitExamples.customFilters.Qt.name = QtWebKitExamples $QT_VERSION qhp.QtWebKitExamples.customFilters.Qt.filterAttributes = qtwebkitexamples $QT_VERSION qhp.QtWebKitExamples.subprojects = manual qhp.QtWebKitExamples.subprojects.manual.title = Qt WebKit Examples qhp.QtWebKitExamples.subprojects.manual.indexTitle = Qt WebKit Examples qhp.QtWebKitExamples.subprojects.manual.type = manual outputdir = $QT_INSTALL_DOCS/qtwebkitexamples depends += qtcore qtwidgets qtquick qtgui qtscript qtdoc qtxml qtwebkitwidgets qtwebkit exampledirs = ../examples sourcedirs = src imagedirs = images navigation.landingpage = "Qt WebKit Examples" qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/0000755000000000000000000000000012273255454022335 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/0000755000000000000000000000000012273255454024334 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/0000755000000000000000000000000012273255454025602 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/qmldir0000644000000000000000000000007212273255454027014 0ustar rootrootButton 2.0 Button.qml LoadIndicator 2.0 LoadIndicator.qml qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/main.cpp0000644000000000000000000000437412273255454027242 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 int main(int argc, char* argv[]) { QGuiApplication app(argc,argv); QQuickView view; view.setSource(QUrl("qrc:///" QWEBKIT_EXAMPLE_NAME ".qml")); view.setResizeMode(QQuickView::SizeRootObjectToView); view.show(); return app.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/shared.qrc0000644000000000000000000000043312273255454027557 0ustar rootroot images/arrow.png images/busy.png images/less.png images/more.png Button.qml LoadIndicator.qml qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/Button.qml0000644000000000000000000000611112273255454027567 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ import QtQuick 2.0 Item { id: container property string text: "Button" property real buttonWidth: label.width + 10 property real buttonHeight: label.height + 10 property real fontSize: 10 signal clicked width: buttonWidth + 5 height: buttonHeight + 5 Rectangle { id: buttonElement anchors.centerIn: parent height: parent.buttonHeight width: parent.buttonWidth border.width: 2 border.color: "black" smooth: true MouseArea { id: mouseArea anchors.fill: parent onClicked: container.clicked() } gradient: Gradient { GradientStop { position: 0.0 color: mouseArea.pressed ? "grey" : "darkgrey" } GradientStop { position: 1.0 color: mouseArea.pressed ? "darkgrey" : "black" } } Text { id: label anchors.centerIn: parent font.pointSize: container.fontSize text: container.text color: "white" } } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/shared.pro0000644000000000000000000000034412273255454027573 0ustar rootroot#just install the files TEMPLATE = aux qml.files = images \ LoadIndicator.qml \ Button.qml \ main.cpp \ qmldir qml.path = $$[QT_INSTALL_EXAMPLES]/webkitqml/shared INSTALLS = qml qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/LoadIndicator.qml0000644000000000000000000000502612273255454031034 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ import QtQuick 2.0 Rectangle { id: container property bool running: false property string imageSource: "qrc:/shared/images/busy.png" visible: running Image { id: image anchors.centerIn: parent source: container.imageSource ParallelAnimation { running: container.running NumberAnimation { target: image; property: "opacity"; from: 0.0; to: 1.0; duration: 200 } NumberAnimation { target: image; property: "rotation"; from: 0; to: 360; loops: Animation.Infinite; duration: 1200 } } } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/images/0000755000000000000000000000000012273255454027047 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/images/busy.png0000644000000000000000000000510512273255454030540 0ustar rootrootPNG  IHDR((msRGBbKGD pHYsiie2tIME8" IDATXõ{pT݀ʍ@kx|ؾCUl֦K,E@ExsF"Q?!`qSU}HkaSDdAw"7L:tV4%*W\իlnd->qZL5 P(<- Û#YtH$b0ljFX,6,}z,ZD`o :(5^P[[00U@ :"t:]D"cEh4J,+5p ĵSUVJ<'"e\Sm\wXpa`˖-pxU@:Kttt FGDdx $h"iii9 >mi_5%"V 6 kTk1?QEEcyb$0`&x8Okoo,& dU Up뭷ZTmmm}ֺgeUm?.J@ %x`,yID---7677Yby晅߷ETRDykZ&n2>X:OQZ^Y4k8|r֮]{\$"!XN6ҕ#GhggׯÁAcw6 ,XrN-fhŢxjC"O;wcQD"QLSy[dҥrlF;I- 9f9XN_l߾]h U.I$e,`ȣ쩯5kT' 0zY@^-"TrI$5çg`hhhx?Q,҆ aUBD&ë̒D"W5.e{E]U%"?uݺutR3ٳgKWW* =%\#3Q | άEWM̾򁎙>}zYUUUرc L7LF3̛L&yg`lV٬僻&rj~ټy1:.d۶mnt _P8·AݻiӦOQU] hmˌbaG.2뺷Ee笢'lv׷m;nPDUjg>ylFu?j+3P(t7$v#3f8[aU򗍄FvqTuФ_g'*}OUk{sI@DDBL PؿmHg><@ Tݾ~ P .1:&|9Zӳe{@eLS`YgmK(zCຮU]]خ1`G >_nm<_DƎ[0Vfm|>!P(8kB~`n5ѣl%z ^].Mw@__!kU"m?[mSZZz8uq?\uœe]"r#Dϧ6 s=_Dj_mߔ~+^pG]eȑNF*#z(EgX1c|8ʼnfk0^S|$5=QOg-Kl(syRD.7窫="rPUȋ}FO?QlIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/images/more.png0000644000000000000000000001024512273255454030521 0ustar rootrootPNG  IHDR98GDP gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs  IDAThޭKlGzUyP")ٴlY/Kq`pcKE,v/{)E{J)W{J|0$ڻڲ dić(iH%JrtO?syƼz_`  BHNŊ(S$ PA 9=|5^` `8<7n <%9( t$I]TU5Yʲ<)A)<]v]eYi3m >uaBA`AP4L>0aLH<σmX(툃 <σymut:j `rpl߸p&葖ar(BO  )Im۰m|uuN ZxAh_ PP1L22#J\~\RTmn7H4aF'AJ&U=RJ/Ȳ۶9B 7 hs^*+[*JemB@)bi N6 dYm:7И97MrR4"G\!yQNDό8d ~m$gU(^4MGnwOfC.7 PE0 G\. YI$`4GL,Yg';;;(6(rU4*!,HEQP,!I\\4 anG0% $c~jf|BA +rLӴwUUIӒIXĕ+WpYȲ ۶/v;|wp9lnn͛X]]8J:9Ѽ6-dY~P(h4R`K|B_OˤiKCUը|>FYA4qiLLL㘚BW)p]wA>tlwƳ>1⋨VX^^mѵqJ,HI]poooqΙi$IfRAdA%s\)sĉX\\ w4x|mv(k_0B$0$yU[%Li˗/cjj ssss&|O2~iZɲELkʣdvMK A.~1Q޻wN' { UUO2EQJT*] `is=Ǐ޽{uף"!i*eY~ITь10A%Pijju@'Yŋ8y$077ە 2N0XRJJfY +{~%4oԩSѐjؑBEB)=(((+MRzm!LLLRӸy&zTNjyBcp]n$IeY&^HJ>Y Ň̙3ЦpDQ!$d9H!t] 0{ MӢ+a  lB[BvT (}Cs F?&ΡI(e( 6Mj5uZ(sl"d^o@G#0fpx͞9:Qհwd Uwc p2˲9;NY6KxPJy޷Rqcii ;;;=)"8N{Z֮yJW(+&4*d<7:Na2;88h۶}I%P2I ;qyTơG\Ÿ
T!9Qv3;;;;L4h,LMM~arFI<ÔtjhPU,GpiyZmmjy |x xrB 4Ȥackk ӘiBjg؂Zxʲ Zݭj.'V8a7Kf]˲8NAmGeQ|CZvQ,imAs,BMQ=:99 I~kbb\.wf)]Xu]z=Ȳ uqppEhZ~t vQ(jv°-E/Qa6666uwwwU$AFJ%Iʅ7:VWW + P(Dr9czz1yH%mxa>ls(lӲ,hƫ&]6+'6MrnZ?=I:Y*j a5M{YӴqQ 4+! S2b8EoWv{Z$Af ZnH ˲_{iZ6 ?,cll ܹs7>z_Q,~OJҤY$WE U=.뻴 c(0MFÝ?tbbG){+QPfP ( BݙVUuF1QO*BEQ-2}V$ BbmKKKwO]ׯ;uTIY!h6e9eOmR,1YYX椁d)߿jMӄ,噙MOO>1vp1?xr|LBPՄWKW\.i㚦 qu˖q5` ;Ƕm666~U~gݥ:'NFU!`}RՄ .诼ʋ<̛R;|%]5Mɲ7_h9\-˲:޽뛛/,,MOOeɓ Oi QrdeeӧϏ?~|P(11jX"7iv0 'O<;w׵kONNR+HӤ?^zuj}}[O:c mò,H)>yy%RxalW*OڵkΜ9~,ءqZ-~~{ee_ԥvpJnz?^~a|PvD@g}?z?~%JFv )@V( {,Ns\P(sBfXD\.R\o\zl}}fffvfRʑ0 ;fɤ.ōݭL&^ e>yDw|ҥKoR)۶cVo/~<J)0H:roJ͝t:@o֯nll|gmmV֭[;t@ @YDEBFC[[[;W^cQӌ 0w.M&Db>{fL-J,bu]X,NK5J) 8Q0%S2u׫jKh\m۩˗/Ι3gL&QVLqEER?J|gق/-,,n` {]7>k8dzz7.]zHxT?uԷgffʝNe=ԋ3wh7@~d\.{qqqq$hgϞ}\.M4ZtaQ? x:m#0ih6hZhZRh|~ӿt<=+<&VWWp~~eYp jY2 B@2J)E΂1}0ƞQ97Rewjq=v:~T*J)E׋)QJ#!:$.\Y$  Abŋ8uIj ]c-'NL&2;;՝D"!9iZzbbB c0B E=σiy,,, BE@C 1Ƌ7'''UJY벙Bit:πW2P,t^^ N@ TJ\>]^OLL\d2/J)!<|k"]u]!0>>eLOOs \؇ÐqBXQsMŗ]3lv=H$lۆy8lyB beesssH$a>F)U< 2*SJN| |2*;+_D"e>}l6A炁 P)ԍ)4/ S!ā΢3Ps9,//c|||`iQs5Àr/T*u16Tւ-B#ĉX^^ɓ'iځkd4&&du}J%={/"䡦yT`?Fݟi31VTJiBHX,E# @\t圏,l35R:)Y F"PT*W_`ďܰDeu}g ͕R<FA`T*all 3ӂ@uB 05BAq)R !=zW^E\ma V$oS(%fS!4},X 3R `kk {{{X[[ rP$:;!>eYp]=k24`&Ppuܻw/_ƙ3gNnl% .$ kZtnQJ{d9vv.oFG3Ld+:hZ裏p=͡nÇ6{= <\thvcƘ@rv7]׿itva`}<~?Uh ad܁nz8N5dRlRI%rD["/nFAc\\*dl_A)U# `+ڭV4M{r>*,' 7 2$c ^W\׭2>b ۶mMLM^!$lX'S䰪a*BfF]0~k0x(IJj"H͖FG>N1ոqT\.!Y^)OpV(zz\2H.sRLpQ,R0 ǵZǹO)m @BR!vt]?A)]|5QB 0?z(XR ool$(!-4!dPS0|L)ma7o> `}B/0]\bFQe :<\ _0"`/OpP_P)i-Mt.f`)氵"lT nתj߯j1Mg}N0`: 1zYinB0I)%Â(5þN aBFm c @%!Di~)Rj(Bң(0;T \w2{VVCUBHdQ056ukH(rƲL&+iI9 /r券dJsh]׃2Mt:?v?vJzp48۳I_y @@,!$NOu]EӴ3<2F oB)mg]4l懦inߤv4zZxA> ۹|h>B6J+2Ry]ח5M;9?+1ҔRRBӐ}ߔRօ_8ζmw]׭ >#m>2d hp &IJ$c,9/hV✏SJ$!DWJ ~WJYRB]6!!}0'7PeM:7%tEXtdate:create2012-09-26T14:59:21+02:00h:%tEXtdate:modify2012-09-25T19:35:52+02:00EuoIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/shared/images/arrow.png0000644000000000000000000002532012273255454030711 0ustar rootrootPNG  IHDRddpTbKGD pHYs  tIME 0_ IDATx}yՙ/ZE#d]- b/Gñ32c0cذ#/v v0 ` hEQ~i'NTrĝwGUUa!}e]s6k ߏh4vB!8X5k$>rw4N1==D"L&br," UUq\\}_0|={o x7YB[Nxn с.aXEE$Ip:p:PUDNj{jjJŗie$!Ncjj xT Ly9iڿy߿7G:&+a|jUV>ir .DOO04MI8΄f b9'B^/2QpÈFPUUJcZZnp lٲv,*066+ҳ{5M&>GZ|9͛ۍZUU1oQVgp饗" AQh4   AUQ4kF^satt* xwpIy=ӧO'ϟ3g`pppÇ3 r2yKb͚5hkk/h",^mmm  ]DV\a'D +In7B 2dYDgg'\.+¢Lھ#]]]y|Cɓ'rK>aKeYZf -[F#χ˗#QL̅KxGPRd(EE$\C&X8F$d6O?766vbrA+[oaƍKzg 'PUUڰa]ގ+W" )sgÆTʝ'0O(֤D"jt%IC,Ą:!;~tguttP(ټy3ۇooΝ>@䧦i͛C_ +Wn7g gw_yGQX\.Gs\O+͛wdbbpJKw^lذ/})}gz5u8ҕW^H$B˗/o8!1uIZ"SS "KUUh M=|UUm $-4'N`ttFk* ^xr9E9n>{j*AHв,9*JX8KUUi줳 +Vbk.y)4f"aeYE @[[t +:ǎùs, BXŋ#Gq뭷^A:<IJV.7l؀^XjйE9or$, VP""D}>W%D9|0\/JUSp8~~/ruȣ>|p饗~ٳ$zj,\L4ŪU(ghri\.Sljj J6ya┱]r?2)|"2Rt] .~a;Ffg_|B!Iix Z$L&sa~زe%NPX˖-p饗R[DGEq ɠVf yB(,p8- 6[*d_(ʬJ+Àmmm˲t:1>>NGjV[NcLwu^}չ䳟,z-?Wt:)"~5kApXr%|>,b/ST(GxF'cEu###x7q$ Ȳ@ 4?˲d`&yUUA,χjd2)0MkW.K!$o/| ӧO:RXG-]T3V!NcttSSS4!,W㚦\.W_?] Q*pQAh,4G*\.mK  dXȹ@ T*Eɲj5iӦ###K. O"Ģ'OT*EE b}^ E$Iu8wb \ #X(Jعs'FGGq5`֭qW#^@0NHt|EQ:<,ˢ" `'eYH& 4 AX5H$>TÞ={qF=zT'?yc:"K3{>Ac\(fff5NIۉEQP*k.hz|rdY<ۅ~&Ht2(~0)&Z`0(t>(,YCI,4Uvuu=99\p!N:37߸q#n[dnv\.C-,P(ԩST&/ i&Rg۷{pu$əe\wu@Xl0xnkg2;wWs"kY4MC__B@1/y d .\HӭZ D"BP(ɓd2tykL%(ؿ?zzzp]waٲetD(Y .\EQhcttlVc牉 8Z  (j]omkkKYW]u/g24MP($͛7I T,1<<ܐg!cEu@$Etww7v<~"vXsֲ,dYEx<B@vcIh%tݏX Kկ~SO]ǻb1 ͱ, ===hkk/S 22?R$ OİI2k޽x0[:;;p86czzzVU΢C޽7M߈8%6>!N !<]JhIXvJ峦i`֭I#'kx'yyEd+8uꔐY/xC[|J|>r>}^FGGo"xh|l#?0>>B v\ iڵ ×e|oPέXNŠ?ja  @ eY?~ l$~D"z#UUi:EΝ;7+hR 8v !"8eHdr/3xMRrbK,k݊+nݺU2Ms3WJHVokk3ٳ0 w쌲`{W0<<[l *;_Μ9ˉ-Q0MZ$m+en4pTv%6Zg p:(R3k&1r_ӉX N+r-A!=4oahhjUhI5 ,[Rd2hooNfTj(C 1j 0CV^㡎)?आtvxRVAHG-[ѣbgɍ\. JE7UUE<?ǃodtƍ馛hM*CREQ&!wYQV0>>z a-űDT*E%P(w}|F|>\.WC "DAyPgϞ /^{Xd  <54D"_B =rٳO>$vލ bOV&0ѕ$ ae466F=rȲ:RUU BjNK+&+/bppw}7X_작O[ ,EOŋMD/5J@$H&Ç$W`p|O }رcxvZs=o\DO湕UM,+v@YŲ,j1iDg]_` v3Y(}.`鹘 %x:L6p:mʆa ]PDH}>,-[m۶Ѩ(0("L3vVƁdЊbS?DL{.n7gT ʖe&/rUUbϊՈb^z H_Wz6;':?g#<1؉I]2 C /ҏ;%q#G N;˛3rzvoHQ8rRLoegℲD$(a}Ƈ DX,7ߌ믿ne z*Uh{H1(_/}^'JE!TY~fgϞĭ*58UQMto ⫐Tm3wI1)p&*g0ΝEgg'E]{8Jbfx߃p]6TV*~el rܐ,kY$E3x#VDz޻t1 \&ATU- JEQR)ٳl%N;=1`*}AM^V )AgMf3UQ,YJ;vVL"v\SeKs]Ο34 vȦi&Xkf/ ~z:$utbhhp?0y>iu6v;K' =(,t~v3)4㬾YIf/ lڴ ?9VCB4Bfetv~!+#Eg7QQE/9.BiHRV81)I?uAu|ѣGg_ '6+KBrYЍ`(,4Á\.0^D-t4 "KvZT*<8x`Dk5[fEt,˘Çk˱{kZN!XuhПdY>F.u6Li];֣n]j?|Yp++VnM'[,c%oXd N+K-cp J%)M$EQVh~Rrf+E PbT4b1q%D'6M˧l4.۝'e]6k"f>9n&&''x38q5np8])HaBd.rl[ iPfl4Mݻضmچj QMg>P 5\, h냦iIJ|id28s̬"[4SI~hWzg}t]G*B,C>U)Rl|(f*C#L[n&~D> LgOcGr֢J%2[y8|>atvvvdf04gE\.HPi_S{18Ό,{jF%r4A? %,X$,ؼy3Ez!afa>'+x;r^7 ,2B hӨ4V:(i$I,Z Hmmm$( nwCrE(6ak,XY_,+K<c| 36tE[3| eϏҘ(( 4M٬@r)ñرcyPH}u(2ժaJ׋p8L%ʢ$.l֘i_faHY˲ +V :z!XB MMMZK;HC*™3gqf;ǃd2iJ[Ӗe-,J&R4iP+%[E3K$4qFXG}p DaI"M%Ncbb6=6L$(Ie|GGGp7!sTrd2L&CVarrfo/"eÆ ؾ};yT*[sZ A<yDLi\N O8ۍL&)6vRt 8N*u[ew$Mg555jJ4MYzyuVúup'? oNW+ BTF&\Ŕ]-#$P QIDAT!D"B@8H-)A-ZDˆ,˔K82 t,W<=pvVOcxǰ}v _D/&ݠ"Qz5|###U(>'uZuI$QUU5eY8:%!2M6-K Au"ux֡COcݺup:M} O›,y}@\. i4 OF2$|uso2|5dP,ˏMRuRVSB O$ ')uaŊ;v44JKߌ("K}nIޛKY4 333t#`0VXјg?zBPs8Z6ŗHk ^I%)}k2b>2̗Bb1r9ڵ pK,}+G}jj]ba DxnNlpoRHx<_8L'O}SrBI a;v x Jabb6)MrT)ى 0( ֯_.tUW!N (Q"mĭoT : ngH<UЇ>Dۢ_4Ax1 2evߏM6! vr~ N'rHHRw:FحqLLLOHO). dV.-JYWM6R4x }XY-2n7^/W>$vvwRwvfk/?p8K3=.h nt:QTt:/T*O ,-]q4&IXh9Zfӯa4J1tmVj]믿ޠx("7{|VUDi A~J-*$RH'߃MVN]蘝bӉ|>q0eY,OO=ޤf$[˥RjYr8Rgg'()( G4sq씶(xhFpffN?򭬾:A+ݰq4M BBD"I}Ti)f X$Ϊ"azztL|0[b`aM;PUJy&2rbHxBg`/Ix7? `+(t:t:z Rफ(˷'DrrHru'i'Qko0M> ` O:(I(^R‚H[qN&?hs10Ww*op-"5kD Qͻ,'Pj a"_,ZlN = K/ 9AAgBXZmb:/~ `83u|~pA|#İOIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/0000755000000000000000000000000012273255454026723 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/youtubeview.qrc0000644000000000000000000000026612273255454032025 0ustar rootroot content/YouTubeDialog.qml content/player.html youtubeview.qml qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/youtubeview.pro0000644000000000000000000000064112273255454032035 0ustar rootrootTEMPLATE = app DEFINES += QWEBKIT_EXAMPLE_NAME=\\\"youtubeview\\\" QT += quick qml webkit SOURCES += ../shared/main.cpp mac: CONFIG -= app_bundle target.path = $$[QT_INSTALL_EXAMPLES]/webkitqml/youtubeview qml.files = youtubeview.qml content qml.path = $$[QT_INSTALL_EXAMPLES]/webkitqml/youtubeview INSTALLS += target qml OTHER_FILES += \ player.html RESOURCES += youtubeview.qrc \ ../shared/shared.qrc qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/0000755000000000000000000000000012247412261027460 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/src/0000755000000000000000000000000012273255454030257 5ustar rootroot././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/src/youtubeview.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/src/youtubeview.0000644000000000000000000000600412273255454032647 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitqml/youtubeview \title YouTube View Example \brief Demonstrates how to embed a web view in a Qt Quick application \ingroup webkit-qmlexamples The YouTube View \l{Qt QML}{QML} example uses a \l{WebView} to play \l{http://www.youtube.com/html5}{HTML5 video clips from YouTube}. \image youtubeview-example.png The application makes use of an \l{XmlListModel} to query the \l{https://developers.google.com/youtube}{YouTube API} for HTML5 video clips and lists thumbnails of the clips in a \l{ListView} at the top. The \l{WebView} loads a local \c player.html file that embeds a YouTube HTML5 video player using the \l{https://developers.google.com/youtube/iframe_api_reference}{IFrame player API}, which allows to control the YouTube player using JavaScript. When clicking on a thumbnail, the corresponding clip is loaded in the WebView by passing the video ID as a query string to \c player.html. When the video is started, the thumbnail list is hidden with an animated fade-out, when the video is stopped the list is showed again. The specific states of the player change the title of the WebView using \e{document.title} in JavaScript. The application is acting on these title changes in the \c{onTitleChanged} slot of the WebView item and thus switches between specific states. By default the application loads a list of movie trailers. When clicking on the button below the thumbnail list, the application switches to search mode, which allows to search for videos using keywords. Additionally it is also possible to choose from a number of preset movie trailer streams. \image youtubeview-example-preset.png This example uses the QtWebKit QML API that utilizes the WebKit2 split-process architecture. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/images/0000755000000000000000000000000012273255454030735 5ustar rootroot././@LongLink0000000000000000000000000000017200000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/images/youtubeview-example-preset.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/images/youtubevi0000644000000000000000000002767212273255454032731 0ustar rootrootPNG  IHDRkgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs%%IR$./IDATxYםɥ*k}Cwc!n%Q5gBCᘙaE _/p<'<E ;z+EAJJ UYTW',y˲Ì1x`?y8ܾmQ?miYhܹeסo;xG6c7z܇4oiiڡ1f p']'VO,0duxvMnz ߻{黾·]?7_}UvicWm^8{kWڙU^>CoХ۝={vYsglgGU^~~ӿ-7} ~pq _Ww8~|zE\᳋X^X,ba85smwy<ߟ>5N,y#;wI}<}Oyuw(z`@jl@O1@blmпv8~ =n9I}/=zNI%?R;WJOYJP)aCEdYmj2amwzܛ8G !uO3j˓f9SK3;dAɥi9>ɣ[0|p3B.(tna}x $I`Pp,l"$!w|c*I8~v:0$o#9bI^O0r^euTCaf}o٧>#<ԙC s=8֡}~Q_,M̑;/e>~A17"'?&N}Y ,u凿AJs|D/-{oOyoɹ%v6臆PYduʭ{5~W\w,"wo3Bߣ8O.~7Dw!vk3/[ dA.ୟX@6ɧ0̞8͏^no_ܡm40~ E2^;d8R,,""~/Y֝5"WIR(Dp8`Y561׉+W0qӳstlwAD]p8` 6KcCֻkW_:6AųYN8rssd;!'(6A0jO+dYz%P.yaDAjIBaㄱ*~c|?J$qXNk)W*S(!`e `oHn886.?bӼLxzt<)ˣnȑ.""'*NBJ]eDQDi ˲p];vst+c ffITus) C&''FFRr1t:z-?۶>jBJBJ:3r3m2i$BJNɱ2Ɛ$ i=>e{qHJH 4y"fIqSHɱ;+z>+)i?kΐwsJy}rN%]q27CG?H|hH8Ʋ?.k_/Z@Y}%$FRrRr Q˲nC$+8 H#bZFWt{{}&#v pLOM`C ?R=t`@f,CӥZs2C+1]$agA$nP*WH!0azfc:)]}ro>46\[&Q {q`ww&v:K\zRO;($}GOHvEa|ݭ|usϽD;ܼɫgWn찲86dmc,پ}ȩ2?ɵ7YX^e2M2kdp05)X7*92crk1 {>#7 (W`JT<^;d$H%;2@ul9=&X^cu4%}$%Nmil3 E4}Ц";[4v#4OFE!%*/g3 u+s~g2Řyoc jQ)a ١bR,"e|b4shyIa9*%_#ISӴodӣVtOK )9V )`)ew$nB ܦ2Vo0S#,V*)2A`q Tls/GL'(ʜ>JZ(1Qr6!X:M\$#!IROenN#Q5)9vFRSSdY71 d&''RL:wk3q =^xv=c f/'MS:5E/c,1YB}  lul xP\!~aEZa>Fcu[a?ΨUX_'t\]bPalbVcQD"ߙ1^pHA~֯yZbck2Fdw{;X:ٰ$X(2Yd\'L3fhõ {6A0=7O{˥8^:> ! K KcNOG!Wfi&M^m26e[LOՉWܢ7! 'ORbc-em}Rr! NF>.gΜ&v A 77 ORBRbn5g7B±BJ5nsu.~%^ ;;Xoom.ՒGk:{7҄N^j&S&~4Ͱ,ݵ$~HloRgrpmFc^07Y%#jDIs,6vی&h 6RJlmmjaYqZv2J5'4x?F.dڋEuuB21q4Blǥ:d,RCqE xPD 8iJEqLQp, P(1`a[E1X$qD xi m ydYJ@ `X"Ap(J(1B1A<|… #vp8uD{{O3qxM>mz}<0IYUU8/}""[>Hn)DD$R""[ )yʫ:ɓ+wg](Ubro1G&˫ڏuDvo{nh_W>*/;-Sfe~Wsٸ}^6O.?/^^0Qvy{Sg^ĐD&vcq~fX78n\cb~;zGl^}qWΝa{q{׿;`frׯ2|+gp5~Ə;'/.Pl331ƍ7Y>}ݍ;xYfj8ޝ[M-O_jj<RL*UN.N+ͬ=sOxF+ \9tne~SufV B~7oPLQ(~KbLFgVW O/fwiq?_?QJtÌ+,X?{^Zzmsw'O$3eBo3su~?y=BZD\}3n|Η"MF)| )y -r ַXy~X039Mb@+p LFX[Cog8Vs7 [cyTs.dDI+Uh4vj~K*KvkwhU Y4/.󫗦gO.03H}w13;8ۥ:hPF }FXY{epSCc!&E>Q06k[UXy>)y9"QE11rp'16@0Ru]bjc9."3q` )ɕ4Mt:X?pיwqg*N8͝MBX4JUjU666_$}S ܹA#N/ |QHIiJ#',? f=c5 tzNR~y(:Y277ɗ«\TUHI.($WFRi3Ҕ$dsk 8� 6x!umnpe8g >;G2R )ɕ4MiDQːK_|J|r^Caoc 8&#K,/L~.bw^`cAӡ1`\8+ bzvYe` e~ }!kٟXq1 pA)HJr%Ivvvp]7#~("IQ7ED#)۶{uY)$R""[*0+"" ɕr;CRĉ1 n<R+rw}ԣ>92Gny'bhG)dR+Inqg$!,^Ƀ,% d ~fYm[Qe;i-gYe~82n5OrA!%enwd!yW !;qm$MIq!)e2(u]&g8i>o9I{[\Wt  $IJmrhՠXp}a ͍tU@!%rP`vUг,RaZǜ}u_zgin36D5(xv;8sj:LOM3 g)' t|f'z>87n\gq{7jkQ&RYAٯK,#<(n b*ӓlonų/nty女ln7X\gs}hqv:^x^k,]L-u&&eP.:BJD!%rRItS7i[n4ivX˗.2>1ɝz~abH-6w[݌6_ G?2 )N,p?8=]un,;4v% kSHIy曔J?2,a|l4È,Iv({Eif(AK<2$ö Qc;WXeHRV[(>lp8?_FR+ijF><Aaf'sy6?S49:;l{ բ ʰLF+~$wobD2~!p͑BJrX,r.HC&N`X>ܾq;x$%0ur<\p "tOr%Ivvvp]7#'82EI2I"IIضWGYeBJrA!%""""[ )-M\)˼;T*Oke0 Fy)$W2.333?͔=Fch4|G )9J$mEH9m ao[(`[߿N:.c$ i a@|yhnkvBJr%2n.Br W)9[wyw4)Uǘ\oup,nX~HX C8i6cSl߹A7ٯ~IT})}~E@!%9sP`vUг PƐe旖 >5ɥ9^356-96²``waze^?s˲Ð^Mk8QO?|4' )ɕ]HҌ7vy2iUr\ꄝ'D>^ C8ux ̱LjR"($WB*IT]u*_qE fhZbjvΞKOA\Sc.ab}6Vak~thw{=,kwSHIy曔JQ70/d2&Hӄ8I Qa,c+( I3("3>e_:C:xmOpn<4\IӔV˩;Fv_ސmgzY4aaj$%eYc\KDKK.(DD$TODDrK!%""+eQuMjĒ$j隔BJr^{1555yWvwwyi6n<R;yC?CSs6icJetc )ٛ;48fzz[׮) qebp0`jaW,G#LyNzBMdajfSR.n޺Fc d vLZajz[W/&ifB%c% |x*@VA㨂eneYlo&˄aHZ奕U,! BmBSf_2^Qʔ.3+Lm:A +ddqHTiobb\t&oK!uJ,Ls0 )Vk[]eޡ=c3=^>hJf%OR+fgga"c"8ټs::ssS48Wg^pbe˫ɇSvcX"1t=^K_]-C& CF \;cjRQHIT$?|Henv:|L2&Y &T<>FuspmzAB˔]CcglRmܽ{VڴZ-ܣP,juϞa{svion[%Z.~0dooXSHIy曔J91  6eMSEXe;8QDIJHӔr?b9.Yc.d)-uT2 I1QW`tIexE~OeǶp8?c:4\IZe(36(6Y8_V> C$4\,qluSkIh yjHn)DD$4qBrŲ,IX$Z-]SHIu{=TgD1l6Gy)$w?cG?2qTL7y1"\ɲN8?試xޥ,˨pMB{d; 'IbփiX}l`;aks `aavAfKElaq 8$ƥR~&j"[?Nۣnyce._˫J} |ǡvr˗.R,p2K_]K1R 8!R*x)?HbeuAGZb$Q<_]Her7Ӌ,<+ԙ,.%>oåK_Y%k\|򘟨r{}+' g \zfeci";{m:Yh4(M1Y+S.Wټ[wH`0?d8pSPHIEΟ?.t9<,̹,#? QN:]ĉ3ؿk>}uG>~%;|… AGtJ$35lsc+P1D 5$wlʲL!%RY-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$R""[ )-BJDDrK!%""RHHn)DD$,qnȣ˅~V$""8piiGQz%tEXtdate:create2012-12-10T23:23:49+01:00V%tEXtdate:modify2012-12-10T23:22:27+01:00GtEXttiff:alphaunassociated(tEXttiff:endianmsbTu}ttEXttiff:photometricRGB ItEXttiff:rows-per-strip198aIENDB`././@LongLink0000000000000000000000000000016300000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/images/youtubeview-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/doc/images/youtubevi0000644000000000000000000037220112273255454032720 0ustar rootrootPNG  IHDRkgAMA asRGB cHRMz&u0`:pQ<bKGD pHYs%%IR$IDATxٳdu tF!n̑1LIRVP]m_KoPfTJj6ZU")"@Ι1ǝ}>x@jJTI̮}}K4M !_k2^xy)eY ¿Og>2^x/eq*m_h5hS^l6! /{x=?|?m,~}?szk!\^^Ҷ-\\\P5?v>r/r/r?=sWn\~8ٳg C1?qm\=yA|y2CYsYOOɤ/5{{֚PJ1?v<2^x/gŋE lӎ{ؿk6߿x995~r9RJ(b2nDQŢg|zbuf[}fQDIl>bS^'kks 7nUek\0_n@?~|e-h!׹{}TyKTlcTNJrx~/eԆo['C~St>1Ӄc6 |t(zqtQP.Sf|?MWs4o!*bD@'Ukq&]S_WOo;ƝWWnOG\]]qΫ>S(ŷGC>~r[o*~+LX5|qMgtՊ+_el/Gw/xa?x`8$5~k_cnܺ˧x<vߵ|K'|)UѠ$ 98~xWUc^uG'ܹyk>Mh:K _:O?!8Xl*'c?9ڍ%O(Zo;9痠b~7S2Q-[.y~hzc ࿌BZw2$I˜g[6US4mG8RU`a8RU%U]F !c0 "4*,O?叾}|8g>0S,XX$:(ֻIiI@n*rh^jCZ)%ֶ,WK<~BS&(c޳]9}9t ݵx{sByTj3IG(w'RCYdhFaku94G" J4ukQt΂V%Op_#A޶Q !v[PͿ#. ')HAJ,%e  J'/l Bk_A]ڟgޅ#@~BVv=x >T)QaC)8~i(iZ֢DZb&#sJ]bw>I x (;6G[Ez@ ß^Ë{Xkޑ_m>j"˂:2gS4MCYqLUUm`00yzMG =ߡ?v/_cRO!h5B ڦEBDm Ns}(QJCJ65%UY[3 7n6B0O"2ijjp 'Ӓ(k\pڌ/zAY__[w(o ]CS ڪ65v`0&t:&N]>쒳gKڶa0YD/q]4eXom1&6|oA n߾@g 2f(Z"q49~]olsIε!N::N.a[u"mlWx>[C' z/Impx$mCszO%Y$%@+҆iBBz <!&RyP2Cc#@ao4n,#ᘓOZ^qͻoU6>bl-YV _5n@` K~'-78,irѮi$0JQ]/h~/*o?'ߦnO֤9W1ChMr7~ ?!_= cBIQ RA"RA) /PvxR!∠$H[ցABkd-{hI/Xdid4$P_|~§< 9ڮ^)`: Z+su% #<d֭;SY7PJB%`Z{G:MP`)E*B[m9,.לݬ;+_h#qTŊ|DئE ɽ{ WkϞ>{wzL^ڵS~%i HẎ,Gl6oZt}6+Bi!{8 uݐ$(2=Ks:`dx2"ί8_ΝA(1~_.R8[\kiGZA<Ή`8Z;~o["%hP.ՊACٵjqDZi0MIc܀Xx'bbs֊dq섮pc4 !O?}|{{!Iw;@KA)JtyɃg [bdH_!86$Q]v+RaBvy5! Z'x@IxOt_Et4Q|]..(lY͗Pl}1P%ek[>\^]rq⪒lWqBYU k4Dmh5Y19uq11,K6׏)ȐRގ+- Myπ.\scjF 4DBLi"" $c|hmE'eS+Cdhabq[7WoPp+fɓ\8''/r|WCZ y`B6, Ƴ}E Y1q^z(ILJS4uvެd0,3̎im-iirBp(J(54uZ6.MŻ "crGpqy9@4H ǔeI]68Ho HluI4F)7PRv*\s ] u&IO?@2/~7?Ɔi"..8RQ8x4_-{?D|+K1J:YCvu9BG̒=rw)zDIM'<3DP4oR6c+Zd̀e)X%`tO2 ֤IĮ]LDvҰ /MD[ hJ#'`ǏN/}-G !ԍWi$G+%] 2;`Bvb^)B*$(5.X./ٛ6gk[i[|1~T3o19Q|DǔUF$A #]AUMI IHsq9ǖ(+uaYB82AZ͚Ԥ"&-J(\۱E DMY!b:m[8b5SvKDI20R ш')Qv(J(b4'Nbڶe#LiuJ |/s||HS{zW ںb={<ѳs}F)M6R"x% .pt2Mh) ~Qt!D- :8|)P Gm*lA]mUH FLߊI!XK+Q $uBVJMX]P)iqjkYP+쏧\m* ieXAxfS`lzqބˏDmC֘A4͚(y!]EyOመ,IoA:dXrra!}/#94JٟLHLBi9a>FhAbm[_|iێs.#B!B2/}-0J,ƢD œ~a4ƐD @K}MCxPmB^}nQ;7ض^]P|Wn]}@9 %ϰCܞpqGFaՂPT$KMA%]|i ?`Dn*6D*V5]>Ǚt0舺i٬omYg[Tx_o=>4EGE%to4RZk 0_|Dl:a2ҭyp)˓g!~ ̮>xlt%Ahp',qxR8.}GE& Q,xF)A%zqBUWt %i#IyE$,m.LFѐ 8hiۖ?oؖ?d!J)nӖd} TߓD?XxBfDd)͜uDi ׮s(OM+HhҚh5YgCfn:ѐHg c6eӫHc7o@HA$IAuӲ.z&sGiq8ۗ rx9:έۖ-Rq۴hCRJڦd0kwiOb$bo|ѵ2ܫw4S~)swzB }7h_C~{%-pu8#qujD bLq:d~ {H8-!/qxt:tD. |ЧO[3f=n*W[+S]V?]r*IzMCltiM8?g]TAy 8IL@ AnR2aeHaO tx cnܽG N!."Np#9{,͉$9Cݾie~>D 0Zt0LL]$ mE 11m/؜>t]` ^g2CD ,W VxAJ.B"Dkmi[#NR;p# qiږ0 DCd4xm;:@H]b8#8:|y/ a_6 r'?^rOX.7C91eSC-1KZq9etyK^{ᐳsW8>ZgY\6\\]1=_D r&}Ւgl-0d'"(g<8uU_@vac̦XO,'DU=ya+ 9VhF=TlN?a:||WăB`zW B3R*AV(R`E@A,˫9U!,N&$]qmK,v%ݼt<ئd]"m&AZbsy:lfpuvɓ6Ͼ5>E133.8HѮ%6x:M~ Ч+PVb9bF1=f}HSG$Q^4Eޔ,Ȓl锯}ex6pxp8$]K#ZdZ\􌳋KvGܽ}p@WWx_mh۾BlRyʝ\^rqcp8`ʵaelN!/tLJQO Y@b1! DZc(iIp ~@?b|qJW>/53qΗ;Gh`u tAF TSipFY%=0 %vpcϤR*HmR#tDP8'N0F2 !`Єabbْ'kHalƼKFvpħl &fG;eu5`I MU#Mb_AC&1zKUtJ1?7] 1ݟ0;asRj][\}!17&QQ76 HJtuSuT-EQwΓe$%Q~WglQc.Қ(3OlQa (kBHI(2(6đ-u۲x>1]` :͉ nrEE,4N`[AP˖L T 8E|+n71EN㇗왜Er6 S'>odۯ2V\}>ސ,< yMJx1u 74=K)5>tF)νQBa !i' ON]ӧi6 d cqqE0{ꪤn*!tzk~1瓏?/Β~~ !8/ wO Hprܸ}| eƶ vp4JF*y`8*+l#( hŊ,K.//v//0vh:egdI 11ZGy:k%eYQ'ONsMl ζضaٲZ^ 50d1痬Wst T:EjQd-kۡ& .{IwX)lA7Eq2d\a ?'cµ}BRG9 'l<&(@V5rL"En 2`\_!B`e?g>_̃ڱ'xc$= HB@oj\\(hyh0"B)fX%g'Ն^c0P[}\gc5kSٔ8hۢeuߵHٖ[KTkk lp4mhEh JHaׯ7Q7Ob4v5!~Z75y;Īm3ߣmj[;c{  CՆֶ "lf-vtt<5@PF YcґhmKf' :0;ؿ]QJKtptڎ 4\]bkjȓ1wŝ/|l@d|s]͘FcBe0{S~ tL&ܸ*g짚Wo 1e= :~Jhhv[s-R$gT9~@w5U%1UU#ZA ՚r[Sy-$J*й%Z+JȃurE!FCn^1QZ{⒵xj3;ID Lpޱn\鬣kIӌBknݻǫ RJnq2F¾^XL)y6-Y1ͦ|8pqvJ<{b"I"Q, ?zjȇf5yB܀IXKMH 9OױdʖCHL7ni xǨ2;E2LPfqp' I3x>xyyKdiAU8K9,늪i]GSW}yE=^bR$reK>Cv]mG#n0t%=έ_5kS-<#3T#[u#λ׮/` Bi%Gdi8Zki[G\Yldsf1Jl6%^vbmj:N1sϓ'1fKzj%1(\U⺚?U$Ұ]mZQW f8P;g@b|@v UTB#=< bbJnLb:/a%JC"&1hLh| rGHvXT`E1RTT=iY״QoC_;1fyc(|vAUV 4p/!ë-bW)&wI~s\>{$=8`rdz'lWɈfCA߸KRmA'Dt0iMhkv2;l)ez% B`9kI!RFH(QmI71)t;,(mт1- M؉cE,a]-6x k][(g4ahIi\]mWK9dn޺Iv}ۚq$[Dܸqw;|OaEABr5_SW I$>W+H!y>ѳg,ս|"́CR &D1ý s QxBkXn83DiiX>xH*i ])MgkZԎ=xyso0{<;ᮔы ג 9Q1LTQxGH<}yހ(Ihl:AՐ)?/I%đIϢb2<`rE{F>(JVs{bEt¢%?=|!Z7<\tB~pt *@G FZqC7#0!PU+G>[08i &I8,./x_.߹iZ.Ofl+ʶWnsv~F; vã @@,$Y$gmZ;\C|,9BPV"8֫Qdhn#рl鸇줢im_KlX.,K8F%ł ߼ϝ0z7[RwٱԔ2""8J=yO,:,{ϵkhi"1H)Ѳ'r5QQ58Iwę2Ѵ&!pPՖ;?@_Gя# oX$4=xFs7~ 9TmM f=fzBppP9rxoӚ;Ւ9[gj1ڄ}۰<;hȐ% _@@D+ls úJ: ;!PWk6c<0\ me^Qmi9y vFڊMx$B_ԯ-BtX5,8/OgÄdZl G  wt J")!xβZι<d0f|0]ir[o~Ծ &_;(낲갍&m3n޾oo-bz~MggHd k{UB4a/ ,J!JyT^':IQQqjճ ʓ<;tv\Ym\x_^?"^e'Р̀: KBaQbSt6l!M NOѝ  El;|yIHTD<-Xm*Mr37)ղoJxb45dآ+\[l]Oggs#EAZH;p2I ٵt% Z8:_3pdUgq՘tΘjL4ԝC*wSlɛ ]Вos"B@[4Mvs^ד-#XjY`k(9kggkZ)IG,5+di(',;׸zvjdv} n]ۿW׿Bl"N-mPl+.0θqFO-2 .h{p[K bŸtvW)I=%rQ9vc\Yyd>dyp4*j *Hc4Y$I٬D+*}c͓'d=#r?/BƒNӣ<]@p?$ٌWcb[yCe'YZE=Bɐ&68F>%_BA (Ak3ETQDjR

aqzNؒ%vKT] H+t@Wi-V7*QD 3#Z.Y!:^yX?ϼn;Cžb=&ۯ5"Xwh%v I쩢' rlj s4X]Q>&nKa8|/Jn4>S)k)NsydPQI-^5ئ<};ISbhP$p9OE[TxzE&7tm4,=wd{{$3ں`Dmz 4EOtm32R mm4Jyp@ EnIUy IQUܾuL+@G\^9ΨFÜb|ěwo[3h oM~WŚ\SזvA*!q4k28{=w_yoQF$)RHf'qgJBk#5јQ>` ӜH$XiLd:9<ш~ꈮ,k$YzY/r ?mՑӌqSA]\)LvnaCfp|:b89@7- jk(e24eeg`x@tT+ R**QbӴ5ꒋqe`Ն&(^;/eQ DG$3wX #FO Y{ɳkj EQu]Yf$L+.~ʇcW0=N\_|}+y%*z.~Hs`YbF):EL[NDۑ^JD:"m>%:W%8'|+\ͯ?|v`dtAC-^%ؾ6ZGi'"$BHA45hpWDj$P0YWr!Ͽ2dF! Y,x\׼SZ5dcEAkO5&Oh{T! J.X`8Ibؖ'JstMΑ%) G@2L3dgWdэ[ieb/12muq=ov% :|78},0R m 'J=t}++DiF6\^] 5΁XJh9x;YRn߸MG`4~|#tG4g- %axȈ[ۖ,JʰyvBu8B./O0ji!֣n0ufق- I<[`$2mcPZ q"#I"LbHҔC* \3~.!1X C-_l ~gaa0#rHmnjBcѳ>1qcFk;mrxWa*i͘ljS ts܇ja*AFTI4]M+/zS]]p3/ؖTE mRjò(qm/"S8 Ab}) rd8a4 Q:kq]o>'i^nz y.*lhfMhӗޗ,Z,MԷD3QuD?%9RW5ˮڬ >Rxia$ M]d)z0% \ijf7eE`pv}o4t Yk0mGd\gqsjfr!BAYq̋d9OVxmg ZHZںw$ܹ~m1ۆ p9x p}.gߣm~&6DÌl=/{u#@ {H[``F ֛-2Hl[BRxD48 '#K8ֈ.BTWZX(%jN$kE1S^D(c(B-gkʦ`UhWMiKBlS( b2ʇMCY=nj*lJ0x#m~ ^{3nJB,6|tzMqcj!)|6FIs:N9 _!Dea[G\2خɜ•\M[ǔt7b:Cx,o>d;f'!vdzY%4BI<_8hz9? WkDsvvtq<'׆ˋŪ]#]ӲzvN|7CjxJ0C2"po{~*ZCjMY\tB i#8&Jʢk-~W}:OIBMV]S4»q ٖ-~t'|H$M\/(uQ5% l7)v8@ti,ź (CGH#!MXw h$a[4ئ!R`-rǫtXۡ#y6g4MCj uRY8q̫GGƔ{ψ~,SϭYY9]+IF쑂)ʒjNta,fwK:=9Oqǭ&ID^D!W"08bzY fvьɝ#*m&)xqQD Hd[UZZ ~XYt{Z&Is-F$/I߁VHTZiM2q L[^#Eo"RI;yL>Ǥِj!yLBȰx|R"/:zpOamSˣؐg91uٵ`@DyҘ^fc[jqhb[)+ۤ}?%M]ѮyD2=Ħ~G>bmzo"ΒGT"`#גtu^g4{z9ErTۋ3LtH5(ɾW^}\>yb'!]UQsbg>> =*4"O2:Q !?|f${=.%' w0pEAq1]wduK\.5HFClӲ&'KT;urXC`wo0$ 5^ĽG\'tL{zN- aF:m$޵HSWY:FY5ZLN\C^.Xgpt]u: 5lVWl6K|@S7TezA*,!&J* W1AzW Ckћ 3(*"eό?ƨ[j1il:3d/ xEgo} {G'DcO?zIa[7|a"dJdR[:hcAЂX?X !1!{G<#O1bei-8.eErk_|u!t u|8)6?uDDiLehJApQۮŶ4Kn *JIjAT k"=BXp,BA:h$AAt(pB>"$Ji<(,8/9xwst]IDE6A9s6,cs~!-e]8G-x͖eRmhqA:G[<ޖtkC={iE@2q'~³'n4Bq&&B lQzM&&C&8a4szr4 mA 9i V*wٝS,99=cZ)w;)hڎg'g\\ͱӶI7na[|a p (/Dʁ|6a7BD44Mk;|mdGmb̝ۇAJ/)Q~vbeG>ʉgsB7n9w A%%=+/ e[3";v3|dtH[򪥸Zބ(6$nQգ\.DFE1_rjUQnnDR5oE5(/)Wùz:wW81Zʢ☴hEg= ʦcRBat89$<fC1Z33$XmMgi+Ղ:("ȍ•5OV+!@=%X^d 7چ{ZhG$ Pڀp""4KF=[?'ߥ|Hrtl|@bh.渓+| oMH|7jkLH"*ီK$$UQ2rIӶ: (p>G7hⵆ_ Ж-|m,jכKHl~g]O6`Ask^i"4N;F~8zɘ{skdeUa%l6Ako12!P%vƕnzh\GbT衼Yж[RxA}"ΨXT{toJGsO}Jh tD>IcIh-mhզ"Ocr\RՓ36<ɳ+- ikw5v[ͳs4Y!|/2JPw"?*h[|kfڣ#v }(FF=_Jk=K*8؝[iT4xRe\ 9a>y:|/^ ҔlJŚdFet—'{ I{z5izaI@Fy74ێmlxzv:q968(kغ`XUD+I۴ W\Cd Ѻ/WOVʪ@ŤQw'NX*%k>waz]zʢ*/t19FYZLIcdo> l6G_ul6P)ME\Irp>8%cMu'l>,NPMP xsS^yUu;ѵge9Zifc:Wku~u+{l[G7q8z锫?W>!5Him]g T:q!7F:Q"zg}$Yӈgg2NV}6jf-xqRHoR X}.1: )*x38Z8yq&DȶvWS˾K<~xxM咪*xzO?A(E Y01w.-ھ>>\@g;HxrvJ?8M8I}'W^.WP}sL2bC|Њ8KQCxRE&Mڎ1Fc;K۶&,.ϱރtN9u<;}F|q'k!8??ɓ\^3_,QJnJqyyNӶq3#]Xo{!Y== RUmg"k]!,nZ-vMG8<͈lpޒ&H劰#)n~!vw_5-+*hstU&7}%ݩ#(:0zo&ud`'h-M-~]B yE E` (ŤiN zDF!JA#YK|4ܼ~H>I3fu9 k {i>(Iv_!c\ngim7.uQR36]g|bȾ"8nsǿڗކcs~AS4 =a"ʪ&8drd1MhQrG }-' clHY.$UˁqYt'cZq5b X1kJ6E. uEl"|cLoTBIt.ۂ`\0R{,#N";/ﳿȝ;PZ;kǏ_Ji#HI,"Y*MQ-Ԗ[v8Í}+#:-[ T,U  1)w|~dJ%,Dd^ }qiE6TKMUQ mQf y"ʄ$3++EC}͞3hOX17\as{9[(j24˒;*/0"D\ LZz$(Z! Q_[&S bJXc=uِ.JS bA6=x'M'T:L#vvQ"t4m \fW^%OF)uP,)U$֌ lNƠD{Gyc*ݖz:U>ĵ k,neo!~͛ԭaہێA} ~B <".qd# cL>&!S&7qa?&;{[d)iщbwwJ8_HhP=CP#/zd+x |L2O ͍@H3i9+/fqtRkʪj"*8>:dq-ay:GKivrךZʶa6?asg=<@N1AFxk͝=ں}af'hBBj1O*є{I}W7ds{64oG{X.%4 f7ڭ]G2+38fpc{^cG,4Ɠf)TuUF[КY1g2n"|B"4VZBҶ4H=0¾/I#RE12x%1f($}֣Mʤ$mګorzʊӃϘ +_q%yL\7hqkX`"A+j[Q%c*QNn՛?G!?>DM3n͛秤M!Sw$*6|ddw!suwW V,NOd k^d[Gw>5V ?$M3vYFO& }z¼XbU d5\uW2匢,z*{Woh-$'gOyʈkσlo<]I8<$E){E C[m,eŞacrcB%H1ȁ p^Qm8:qt:v0ME5Z( |c8llS GR mNۻOPG+rrk sZGwȋQA+$C!ƛmLC=n -›Ww}ۼ}W5hpppWX鑙+mpw4l0Ndcx+*˾cQLʊ,GHN1%.X.q2702{1o{1JɓgتALH+AZkDkŜzF1)UX󴍥nB[fcvwylilgx-_Z mB^]H3 GPl7Kck$XmNQ? Px }*cts)vzrv%N x_o]~O|F%^:f~dJROR /|5VM]s@6Q {L)7Gd[)k.QPdj5h?E9v#B!u8hJ$Ƚ-7ɮmC LF.. =N?^povHkjDI)^:R֞E݆Hb3U ?f-o1O)`.<H0PT!pz^YySqrrL48MUܵmct(4M` Rx uwb{o^B9օ)2kk¿ < ~-RiأHtBq'mYnj 4c1ˍ-sy<|Gatvʝ;1N)ʂm2A7&ׯ_g<ߧiژ7`9n߾+?9[},Ӕ yJ)4X,ڼ[7yi~WT 3T-PG/g!n^0>NF :KiGúDZx4W^A;|Uw>)i?*uw Y~駌HPa#Mr:?ӏ>/>KdJp&c>.NЁE`КPD-%)<Cg#\( !0Ѷm䴊'؊<iڱwuo5.Cx6fXfO2pQP4pf8&(YCTkZ.#ƓF`f^ybޢE5Uh`Zں:m<FXi Z* ͘f9#E->b%T`1TulYɫ/4Ew4'st*dִŒ5 iB1lMstc9Z.aА d$*c=m5'%W)ȟ1#2jw yi{t>ŻeU|9yDkpie0Hq7p1~_||Tlr1"KQ1OBWYUhSهd~*%UV"K56۫zy&lmrƶ7n'`[<⃏KE5o`v4,g4x>~K_yܘAɆrZoqkM{HL˲)ƒ&`Qɘ|dm\rWჟR]BmWI1)ˆ<eK v6&Q-jh r BbWx !ɲ4IYK Q"xa+w߸?{_xм HikwuG cD^X`C)IBLՆ܈1 -"4kmxWKo̓-C;t3Nxo`>?D(tkZpr|,-X/`Rj0z mU$'ǡƓ4?qP7{ / qx2F)Ͳ`MnݾkBۇ{ t652q4TƄz-ؘre{pjhXQ7F#B9xOSЀP0NNY$i25!YZCxhT[̩&clբ~GTmk oտnJc126$mn|W_ұ~'`pdڠL ¡';F[4Mf$%88=2ymQR6,ww=~{rsn{C7~hs? \誛ZM2N3 9@i"#8$/1ɻP@T)dyҠUE>WlT'YtH&Zk6W|;V@Fq< )~l+ܻCY,i"!=R8_$QT pbR@wQ%<OfDӸ1;mniRVbha#oZlqJ6rx4C M[+FJ)"C'e4ΙN'#w/;/"Hl M3Q7~3lnnRE ~x'g\k_}{cGc֌TMݔdBSTU,Pt&OS fQsbgrX/1JPښms;-J\cȥF.X Đdpw ,@䥥)!dFv޸A6?xY艗v%G V ֈ(Qo+<Œ3L+"̅Xk}9Dh1pL&#^~Erұ\u?9`Yֈvq8OKKQKvXI4$8xRŲ, ۂLd2@jJR9}pSd0S<#4^fX2Z4Tqw D꛼9t)Ͽx8Wj[itNiH"g%,z`]AAN8s@[j4%@<4#"ƠG+2@aa@-NX{oS͖~>>5 &vXh m d+KIuFZLBx7a4"BONhqiz<*lmMy|[cNfI]UL&l')@ A$;rm<`ZgY{XpeokWo9NHxX P.KNHҚ544Q#}WJ4H5 wF_ݻ}~OI?zc MӲ1&,ɔ۷>W_o,?1J*6e]Q) Woa]{˞;һг4 4uk`[XG LS7η/ǞE7e .PIRN}X.eHKRh|`3P%z2t iR  #W0 +C脇y+ ?>!5{f_|oQIa)D9 G@Y.sց"vR: ҅#@hhʅ=@(cn"=&;;Gix/>OF8'mB;;ahqBd!XOJ9"MMYdBf#lL68?}Vp|tDYցrNTC·\*8hl'DpttHU-qs|rbY#[xUWraSVƆnݴ8LB )F $J lD|b`)^$4 }ȁCȍd{H^27p!C{o~Dtݿõ}8&PfN] /xw9–LY)h%ESJhRXNNI}K5)UO89'+xuD:)N霽&ܲG$ƕKk 8iJuoI2 inR mstn( -pF!!n R(ڄ^cm#hj{pcH+ʓS0oa'S\v tٶFofD%`p l +E"2Ix>=>a(h86wȕf#y;}ܲq5T.Y)VXy>bgg7@[Ɍw~6ix{64тcGsܽO\aY>Ĺ^~eSM`ҰA؎v-sƻ<8:_>#<_s<ϧ~BKKo8==i~77u&)㻜st|{wC{4>Wȳ/1䭷L֑60[Lc^a4Ѷ-x$W$eKl|;oR+m HG)M$aCK6d'\ã=2'Dd't}Gk *!vmԐlb䔴9) l,+G΂?fs戽)Ҝ*q^@JPϣ5eȘorqs"c.WI#ZuS$ΰ%os.S/)ʆEe%T0J5YIbH"cu9415A*M,`ss"KQ6vwH7 yڶi,@7gW{AmGl%?_1{1EZx~wG|ojT:aJ|0"KRJnjN33dEI5;,)[~јyUR Zq%!O1mx,"O2]T ]@y^cKLEXn1eA#2:Q\j&;˂RBi6u2_ XۆP@ȩ4EAhP>E˟qc~J9o n0?8S`L(j](hjDq%՚hgw,NJW{+ZP ago%!dYF8::%Tc)NQKچ6Ҏ6AЂ pcq4(jK*hE`{w&9-r-COnŞC"ޛ`BŹd!/$ |y/޺+ԧ(g 2T{R%G=,rdQz;dPLJxP^~ Epҡ.rcbicӼH0Zo6_S11j Y{ݧ┪:&s|ѝEwq/#_xoxX -skIreׯˌ.dz Z>ԡaSljoܔa.l@O9B$ 9Yu hjh̲ZaY<(l븺F#TLќSp"5R%$t^˲2ɨ$%%0 Zi`:x~f9ְ( JQBe[JIcVT.G)&y@YvndkjY%UP7-|AFq>BX(KZvV pTmɼs5sU7]~_! _gg߿hd2g(1r|r$MMl_ݥ,P/ sHʲ+/Q>b>Ϙf1n2)RU5?9<:"њwOo?XhZ y6˧~FU7(ɲݝ1UUccg$Il!_&,,Nfr0|M`odlC/lk.wFĿX,ß%ZmK]g˙㬿x&D#1&C -qeP(גV 1dmC;RIܸ67o?F)B!(P,Qri%8kh:G-߿O$<t:i6]LBk4λZxؓHʦ!SN Œ|β,Y%GjksՄ4e<1B@/?fcs<ϑH$c-9z8BI|Y2{r>/xnEԘɘC\IښҚ@,[9;;lmC&M%<{M e"i1p;~ʷ ^{5"!BS~"Q2ZkZcu͗e曼988ku1z7{GV r rNλwƳ('<;ˮc7^*`׿ZNWEs>|e*Ď>NnlC=@7eYsִZ`H{"8TwޓjEaz< IQ֔mh} 6OJ'CkiVhm@H&)Z 1džAnTG9|̅_"E?Q}'Q!ϰj}GzŸhg3*s4d+ꑦR*<4!~Uhx!B!s9YSwMs"zб,C aޭ65~. w ~Stc+py# fP/ 6+z Y@$Y0(A ?Is19:߭d97Sψnlh!\;[r1n.G !HӔ,˾Їr<._u_zDׯox~ϒy|I}BD/^w.Ur|9tj]Ir߼{<<< ]p!۴S&v61?dD[˔9->~=rd vw9<|@>L.u;5C_J?t|}\.=8rOBX,VJjX y_ pcY>;Zru3#ٸJSW vwC!#  b&xr~B69Ax㍿OP 2 GFy!4M阪XR6fL}",!B`O+7}%gZ,%5Gvާ9韖d_ӆ~4E\#GlzwYR{8p%,j/iۆ }Ƣ('4OtE1y "45ł_=_яrv&lS<<`{{c;20N%GS=v>+pm|w !<*" qsn•5lw~{s.vn.PRgNvQiKgmߚe'?[Y8Y7x~<._<|? dtO<=#?%筭Yg1Mg'(ף ]Ʉ_!U`"{n;vk{nP1x?Q񄁗~]|fz$9n(:%~J bS\A8wU^2eo^r}x!1nwE[k9<< Oxڂ?ojgVOzo_v  $ĺlE/! /_t?r%t )?w@S.f_>,z`gJI >ՓzέAu<{sv8ikJ=3_c?O=*duOvYv5cmD*>\ g3{]`RZ{Ϝ+i>T ;ښ,z%{Cxl=VG(V ?>&Ä=y\4v=a8OqiO79^?y7֭夞"vX}JFy]f-)0v'L*\`ӿ(|inH.`o/ gչ{A~Il{_G$v|L+D$TJ ]MBII8Ɠi !>YD:B9CѾ9ŀYpaU-?0HFr`Z]=ˮ^,*m>4k5i T TIGZ{^{EpG80]qJʻz>Yˋd{_L: =Wu;cr3~0'$hAJ?Y?s luN{ܠu {F9U*0kZ!OO#JI k228rfúYw%Px2SՏsBSEIbI=2*#JRW $Q>Σ:Ǣ_{o <+/*.{%&{JѐSܬQA+3+ѻ`|!W Ӟ| WOKƙk4`_|K={.l;μ:.71V5xm,y@;!ǹ,kgB୹ y BFeO G*怢`hpp]wUy>x޺U&  ѱXSa)[EBXJ '/څV{i8 [OV;5E&*{Rx6Q5<\y|TJmuB`vk?gSyϒY2@n_ wyWQc^||?~Lveg>ُowM[7ypSٻqsޔ?]/]_>NXUoG?oЙ\;wIfX:e=g(/陵Ĺ](oJs;qX|ڽ6aós8= =K\%Nd+{!?!!pfxa,\K U3D^ma?\o|7yWFcTdsު g=gpϠs @X-j!k:b~pLT -|]C[?8b]q-Oq|S/+[?1-~ee4}wShݍŒ [^#[{Okn\٥]λڻvo:OgksK~޻]41n}i~dw=Ὗ=Ip$wiT@qD»ИUSώu9sգ "pR;w^d&=<~K^S8]n@V`1`#%!z#[buǎa꬀dn"!N3κZ˞#Un\7ׅOwx#qf77gL.ՙd?OQ|h+CT'%BzDI0إׯ‰q gɓ+Ӣ΀bjk 룺tJuiطN.24;w ƚ3+)ݫ=|x=SR_TlϸzK=kQ=~A=9Ϟ۳5s" Daulm$%%Z+kҬپGm~HA'АRFYEYVދ"^}NSd^^ pgtpxfLz)aݞ}߬A+%q΅$ɎsGXqGѭa.`Mklf(jY2 )Ea y=tÿWUq3q+uU~zC{um>khק?x̆VUp0IOvΓ\Wb }FskpZYzR h-Q &$X<%I(d4%.MkR: ԤRC`8ϛCR2>G׃:xlbsnDk4f` xicLīT~d8#Y??8J⥊ǭ-W?"X",}(' BNCO="bz:]1k"z+TVE^DWۣt|\z8ž?[|YHwp֮!C[ HTR~RW+{i[!lk?Fι'ҁ^≏j'/ %Ϲ֎E Z`uTB)retx ~\TU`*d墀B"S *%JkBNN/h픦XkެXgB{B(_ѫ> 3\y)I[/1G=c|RJ{jud4Y`oѶI$K 8Gc½+%Iu{["IpR A`JLZJ b炇kNIuY\0\RH<$Z/kޅL]kVtW~{X'>"kbaPp}WDtp gY~169t&Uw-~ r;mXN?')h T ,CBR9Hl 5HX_Xcy=^\IR4"Y^,R݇$>"Xو!- #{q$q4*iH~rEgX th9"Z&E'B^81JA'}H+E&AodTBL @ O$,e:1ٞA$Zдl1acsJ iI,Mf9yc҄V DaSLQB%C.GlAӶ|Ki#%|*)0JGa1$Xh 5k5օhD 1B`v랷Uƅ158G]dEmh2J TrOT|*k2ɮ—~()R*ThLبt;^u@fP8'0HkJɺr:HΆM| G=;CLrQvD"XHuDŽt@BbBG0IJ8 w'}_` a!PGкJC蜯x<!`b3$DD]e>r7rd %Fp8<]KQ11rB`qri٣s+CQNh %TC@T` 1#Cj.&[u`G9.@lK[4e qޓ,Ĵ-m&X#]s-[pk-UUP7%n5-i0m~L@t v8.ŁGDp֒,K)+ha/h< Ab%g>_ll2ٍDb {H}%ؽ I/g]ּPR:u' 堋a3T4ʽ8'7]apoYN{#G*/}ӇpCn2ngs?䌋֑eYj&NxGD > Be@Oa\i ,c4{q=)ֈGM%cdtICf9Cxiꚢ(h4*.&IS$E)(V*lԐV (k,٘y6@8|m!&z%P#B!*LQ1iXYF,NHʪZV)>(k[i0iʂ*1u BkŘֵop>*Nxdxt b4ΰ3_ZN얩BE.b+bBaՠrH),:EHA:GGx(O%DʞxXs<[CYD=^ԱynP|bDW!ohhgR?(yӔ!]Z;Hui!lϳl^%Xw"V.\-:q9 ~ zV>yz%$d  V9q* jWV1 r= Tcc:^4D 3QEl#X57+HiQmm*rF[s6)@]$CyDڏa6m: &xB+ZoG҂$Udf'mP֦mB'ػ]٭;|UP,KB,q\EB[6!1! oQ'V?HtJIQR?3xVwUe66|*GZҞ)F :gv>-m z䚁Ⱦrуwg? E}u}|bJj-?R+߅ן\.xEL<Ӈc;?Z8azo]϶jC  !ɥ-cnnBf)iF:KT<~cS7H<+gCnPV2*+Dx'q:0?tڪFqKΑRᬡiH2>A4-޴XZ1XkH{G8>ѡbV7"dDOU"R䣔u?\8\~`yUM$a$-=EEt%h %s8 %~U,։q[g$v;xGRhXOCSVC=G8q'Eq oylri&+VGuC>^{)Y C9s>uY-%su%z;]{to\-sޅׯi}ˉ.{ƫ<.$9vCv?@{aѓVP,#Wq ID0Gq8bydiPRIB'$Iщ MR4V ї[}H:vp碰y&K2!1UE\Ж A%[0h!b P[i.LKYŝCBq+og"nt{ IظhBƯPgEK-=D/#*A+"qLSMSq,5${Tk҉(o<v{u2%.ΓXbq ;WVGh:#V>Nûg$_O\pRniTi33,']w렳}]NKv^Bp:_j0Vv,Ƙ6ֹ P_r(+Z X%!Ws~v91BcZwpyR/EJ@oU$ E*CLG jF+\LEGVI%)4YG˂!0xGX{)J'FIӷlҡ"2Rx !(qYI.&ףK+Z`fx%mhJiJH"snL[Rc qn[i\:c"|eg@ J675zPZbUH84*]+ZF_ʒ]MG+&t=Rpl_#"<ϑRzlFP9JD""9 %1Qk\8E/$܊!U?Z--ݿhZH29$:A .(Li}vW%.dF<! ?:0ICEQ"M<5{Jt`_#g(+N v)AJGYB  feXPAE'c?C c <*a W}ޫ ? xdIHde &hU8(ZBQ[iZJ(hm-^DkpJ / 'SǷEo1Njs Xxlm,=R*m)$D +""S&nY@CY 4(%utdEbE' =45Ntpj,@f7iÏ$oF<r4 ºӴj凁y }K}yYC)ׅbx|H>#~FIxeDΟ5]M gVL!U #Z0yU^Zq!;f3 O Hڏ_%aXbJ’VJ&)(g<$iTP4IIޖT MJB*G`5R-Uж]QckKXkXDU2cMBQZ[Fх0kۈk4Z꺦i̼/iIUVMX,.m mSӴ-H⁒>LTH/Ǭeo ]G w(Y&stXJj'Z?#Wx !̝֗h"֯4*J`wMzzc2~g3EFeM JY(P|]հ$$1 ~V}xp n.B+o_'1TzVsyu:4+Bz_{sA|Er&Nq{WU5| U އܜD+MgcƓ1iЁiF8g@&!`Ib\IEIYV,rIY!Ru]<63qnj{Xz^ꌎ. .2E5uFe( s9{+@UWI9k 0Y ~*WQuנC4$w'BR薔몆 ~F/# C8xѽEZa3C:Rv+鍖ah2ΊztQ>.+]}+%!nUWI+%)EByx4b2 (v}JeMk%P4A98Oٴ,E~6!H1J%!v㍹&[쭉0jKx{9d6,KuXP#Q.'$K)ih)I&xCN⽣i^ߪr|{~LWİPR nΓHgEOAV V;{bݥM0&`drUg}(z{t;$K]x)~ҝ#ӞTTlOE\Q4o\{3|ٯHxͺUuIŬ,=bϯ;<+9,|}vD< c~pVM \c5z_t׎atDX?EΣסDN}@9%Y@k7k`V4QdY Q%''NI+P ˢ(k8 >Y*v$YhrQg3NG O8P G"񚺡nZ 8R6ebd.5EQ2ϙ/ ZCSU+OD]ϾPf_RiuS׸F;L5P,;in ߇"!ോ-ҧpvJ{$@wB<hC/ƾ3gVUЌ@-!ϝĊ*ܛ}tatg8P2!9ph⻂p?7hH/͠6}?SR!ڐVg!ijykp"Ga.%B`Xv1ΚP +ZDGR4R9MQ.ȕ!+ca="ɂ(Ehl~mLz2@!$`ts/el]P!R2haX@'gHEomOK7xGKi-ƻPllZWʡ\d%^wRΣM΋-#h<{+ZbmZX,hsY^Wu2]Y"8Czt]zOtWk{!r2o_D9>19{& @w,]VE,pP|/յFŹ^ ! %I`x1a/XC,@ZZ@# Zցڹq$Iz C.ˆQ>f(K,- ^RLh^KVeEqZu/)s LҶ-umh)iZeb`1_} gaY,A#*FGv#xj}F`;T$G#z~L튃}ܗ]~;ķ 9)n2\EV1{¹Q`D\x-.}M'̉nU3tKY#tn7 %0>g?1$v}2X>UjyR+߻kmU:?0HƂn*-I4 @ g%I<񄭭-ҩA( ed5tbYW̤"A3J y"YR$ LZwguy"AD6*::CkZfYT!U6u+yQ8z%vދRBy2 %Ccmw ;o+AQu}>knʺJbYQUUY\MKK~ ׺S-IӔ,basWЛ hBJGc\l2(%%>2W.5J 4T`JR"C_5ݚGf=؇%05Ɔȹ)" ҢkEV8iRr0vugs.CX5]F%D`] Aca(<;<מp+|h0,~Kңd(pw= _'>;6\yG>&|6NgtD/lY;Tcu(VWP]}_SP*>߭Dm-4(ip$! Ha ~#A9ctq]!8^^IXoI=9<,.ۘKk &Mk$%3qE[H#j:xA 2%ƶR$т]YND4MC$:|4mCԔuEQ, 5:#k *IH rpV$)%՝5@X/њp/R755.Cʒãc,%ss(iN`] Rw@A:! (F[~lނA9זb>hV2A6Pz!Cc)@<%qXM{xmǍڑ# I~ѫ]DyJ֯ waZsp~´HPDrsXҟZsfrRˆP N}9? 'V cFTDfNb9tn=޼b`|l[CVMUZ 3+CnX^-7h1&t˒rN.5*OWc%'Q %B~D#0nﺎA3*]K8RuEYTUMۺ_!גuBrYJF>@pickY[J$$Ji<奋<:,9<<$RSH8(VJZD~x JUG)ig ~z}4Ɔ8%pruI*ir)cqsT }>&]a"(ϋնuC:wMV@1 `O Āam\_| Ǐ.Ƈ"2WZ'F<#-LĆ2$ⱕ&蠾ϮM%V1B.A"=Nf_pSDA m BOGzt0R`_Y>.҉UKz~ |pqmQe$˘NHCƬiJGyOSxBH$%yu|. 8X7{7ܔv+a"T\ z6VӨwHR*]mx\]+zȐ2$Ճ:-0!릦ms=vhIItsUp[h-)1!Hav Xoya]B)ia%s$IR4E%)B5LDzzi$1Hw"䁬Ĵ޺q˙xAv5TQ{pR=s%+[ ehZ)|kp㔧Z 0mPRʘ\N뼟A;^#gzyQz0EۡĊܢcj;妻 TʋU6>e)xjACn_IK%`U1#C>dt!껍) s` e%J8"zF Zgh)I$S SC&AxubMM6Kunm 0CPR2v vf$vi%:>-P/@poF9Oۖg4N17uB>1n0NLH)j'UӚ\U2]g7yuLҶ mkb] yVW.SJ&hsX+c}T{lX US I()Ek-nB+)DK.$B̕= bX"㧻I ,>*.׹ ^;d"z]}~v!0P)DqD`yצZM  ] 4?Tћ#{vNޯNynV!ezHTR_W?AuWX]TxbcU9T b͋ F_-8۱V$$IO8>5BDTy۴818PA*BQ#; zU("_!xl 9Yu5A)9i-i2N7NF F64 u@eYc@d9;u ]OJC{۶b[s86T²]XqTGQt E^J?Up}{UhؙN˖(}dl=oձ@ҮA}*XRq}Y%V\p{{7@W&=Sѐ aAQ ;\4 _9^@䫤ck{וeᾮVu1, m@O`\AL?=oO6ǝD9wn4;B.0 D ? QHjEec"3=M`}ʕ靣 FsdJ]8ԖBDHy 7o EC] 2vu`L,O'L&S,gks- |Lh%|3٨C \^56\%@L|iPD,nsq- !JzJZ1v(.kqߟ$I(ȒT(f3SrcY%C;`E V^ȪC"$Pq[ì`-Wz2-++(_-~YqPulRs'e>Y)fS圡Wa:/YPj?pC B"Ehw]F,'cs" [a{R){$R 74a4!S5f B^wv(hxHE˵7hm]bD# —5(oN", zꦥe%kMssGe-S?{d[{75`&$(d&S_zi>>+QQQ&Ql@(@ UY"✽~X}7f͛CAi{p5!)y=g;zo\y ^ܼp]x?c|8 q!#YKk0D'dƍ;*Rc σukZJGZm'VڍmMz-Hd]i kpZgt(Cb5q@[}4:tLצ"K-:}-HbB|k0rHtgj/}6AUX""B׉Vg6h]M$r6ml;WZN#+InXSA_ą mնUZ 5 h WU9%,HHD2JFO+><1 !Pp}u$ߝrXXx4)Q#qB ) *,2/lq^F10̬35.\F?Ǽ-?$ v3'oq<8=C"V.%#/GoGJ)(B v#iHVwUR(u+-S)]qBڇtA.yEggӽyHĪ2Q30pvqkx^Q%rujA,^=6nZO`<`=A1k2-Tj3x~\J3C3b-\#vA6v.qm]SA Ѣ$<8͈e.*g2|v:DD- kގ ءDrXoںeaYKƆ Zc>4kjh|aG+ॉpϰmz>+rnz'8x M׾xwR]MgAe坋#LǙ i`N;I&1. y~4a䅼qaUzLH#M$hBܷ 9 :>7pA,zJȊ^[#U!j#b k1Mٌb*NHJl(fD?GBOFK7'=29E\MTs)\D-}ͽc'_tK7sbKtN!E^}~4[oZӠV5(޳[P+s-98cʋiv2k3TjEs!H7# 6:ao."֦q\6↪IP{!čֈ &zTxĮ}Yv܅#3b!l+T.R)Kv.$3vy~E4wɓ-eFuI(c6H*rmo%嫴fA!>ƻi C}K٢:}`]2Ģ,W]&<L (,] u4[]dۼb0i4a PQ Ӝ2q^'F$,qAr`ʓ9BUBH Ɔ#%FcVNr C߯f$ִsf$کKjpw1R뿣'ZjB;spLYOoR~֕[x+ZE1O9eS54pWOčֿדڨ$_xt;ܠ0Hm^IHu(D l:?X 5ʾ+r1NkviX+ILmfVLDkbDI(s;)bn?< $JJX*g'DI qd4|`P!.h92oXQ8yaD^HDr+J L>ԥL h(<]"?IÈ0\9,9W&/Yd#C(((>E,,`&X+Wxi LP(yզkwM+5z!5yp84QR?J`؍"s&U>1 {js5MyZk|={=[mǭՇZ`DkT"^lw Ѿ}_$EN6@oۮ@ 뉒0 xaՙ0Z24:,R…'sj>}&xQv nQ‹GnVJ\l~y6oFUHk- u݉Io_׫DlhI+A+澂D{߾{Vl$GEΰfSԓ[#.; ́]H|#9Lk#e^?۟Hرo3TQK hPnϾ$%eXk.%S CJ 1[LP ,DL>H"n#g8RjAP( 8B!J!P`iU)[]̒ sp8p8|<_S-"[K$llA"#󳇜vB qw%S!h̘R1ap*ЮDkW*( G( 5.䥺 2 i!>03pjD)B^;9iZCdə/xCҐX9;;cf>L̇x.n ygvYM]0 v;\~ˇ_\{pn[/̓i_ ZvZtRӾ雂޺Q Pܺ4ݴGF(!i6Ȩxx[>jM] a2M{[c&93j}z2P:uUBeյ%xhc2X}J+Sv {?džm[;*<ĹS[/P2K2MkzZ REkD[U52 jP!1bJow>D8\;r2ϐXLpԫ+8Hak(Dr\Gr0KJ(L򓗙˳zOLx:]Vj)xZ0HVe9hs&\T3m;5Ool?3~7ڷw1kK!x3AҨqbFl,'{&ںVkU0B06sTcºJ6zNN-^:4~:B%9zkN!&Pg?c0֑5g8ѽj,V`cWaTp`ݕ}IdCޛtC}%Ώ'ݣvz)M{:䓆ڼON>VX/PHe=}B7~NWMpgyagcTͫ~I}V73Cmȿ |ZVp Y=ϋ3K^: p1eiR^Y[|bOC~=*?c?>tbBmr ^BsN^EVU)΢=Mxux4>gy6,K%h4wzU%/Z5gF{ǃނea&4Q76S˖^ī M/%UD`$Oؾlr);Xx;\C7ot4}8GmgDŊwTS\nЪbޕX_4MY[n^)EDaf80DE GQe^#,IT`DTY .E-Z5aZ=k7&ȕy1yOʒ5ZrwHsɼq7Ta:?#yxg,"Z{Lcn8I/}CDz!kE4f]b?CY ;,k{IJ{}RB~Vh{S&^]Ɋ}zhP7Q9o XϳUY}O;\^e^*Ly4DYR$ d PX3O_:M?t9 ED짖4/,KV5U<9J)~R+:SoUk,>!DHѸhU[?V81Z/Wԇ!_~g[U>C𳏾oϪm`_= lT z(1}^M4^{l6¯-rMlٝi- N)26ktFqL}.cv#4m6-k铡dii?oQٔ% )PvL-FL77=bsACQ\^#) %B:O³7'//g=bYO!λ-_z8\;y6Q|\8N\9'IՃ OFIjBA<{!>|WZߊњZ/[Daso=UтO`aPW!6VQ6Cym,6I2HU C`1rO"Ty⊏>z~~3C8`VJP>z~ͼdzgV~g~Kjַ/++?__P^kKa3l,a^8KM49sl譂B\={ƋO|rsd|@.@uilQ'@j^$5f~}BMT7F݌Њ5}vQFY1l'y1.M~-)knL*lý gLx} !4?66(ruzܷ}f(WtPaZ]o_2h9^C'eZx뀽+{}]nڥM"6H(bnoɊܵ=)wV1S4=~$"pq~f5i2O϶F^sȭ|Y qM83mQj/*IDATLZ%vh~++7~~7O2Y9Lb5jDՍFʒ%3M EWnJ>gӦp~goFi1ittwsҼ PB3V3u \#ft`3 tfATp^!yt N_".Bgiʦ \V[>gnB_ER'>ۢ3Dgm9kmm#~w&w|ҸȺ9^i5iPI7l'7[n_Zu zhLϯn7Fc[*4xv!R#@f^_(VZ$CTYbxS(Eɿog$Hi16seB}t"ZzG-r<,\82-s$g!A dUތy"}g":? w?G<*ӢD#;r1qÒ)XD1DSI]kF WaGk}&{Jِl9=U ᳻/}=oUF_k%Re*ntkzrn UhFϝF P׍Ӛ5ii{e5k~LГ[D`JEksP*UG5zbt㔯oCt0ם(6)Z6!00C4R Rnԁ9*!HQ}j)~8 \^xd^PH>6HFɌ4,ydi* Z8LJ$qլ~~o_5~poK`_2RԢeaY&:mxӣz&f:yG=48Zj$RZH—?nl7-a|} UOZG|uvi뺧 TI-}8`hEЈk}9lNc ~$KKJ7bZڲN|o뽡. "CeBCoERO6tҚl2㦐H`ʌ9BY [<=1Au*޺jC )2猪򵷞o͋}T+a=ȳ}8Ǐ04`gR)ŢiΝM)=0{oow_8N3R!*ň]MoE)YgRԁZH}}>fj'D9+}΂.D`%@+ZQ'}sw5ں X XVډtFC36_$- BjZJ{=羚r;vs܎xl8-" HJT;aZڤD9iN@ uo;b0VUיR?֘TؖԈv5YujsɵwX5ts-T^c,KZbo^ `iL}G쓩 Q d``EyeA6ޕsu\ ĘhzTYg$/xKy&$܁ *%e&/sƂpʒ C9w71>I9+zgRj\ Gq,EKeY213͕-/O3f$D4EϹypq9#e*im$ǹZMS+A96Sà$+J3JhPSuqF!?B}5NDڗmC ЅUرn3TY"75tiӒsvVҺlbm iáM ֊h%:l]E׸Z *J"^p#%!VtJ0Y/p߈Yȱ!o/֏ MS'UoYP%;mϘCkyjABr(/ .mPC!޷Ap:@)56+:"m\ćWNodwL_T!RȜ 0FQg,Ax7F ZJ!#S-dc+XZ7RCX$7fm?O??LpuEX;F'f-,q!R2e3Zw kyh0bT`*5@ +9* aY$6SĐwŹk>Iu9ҢTɶTWCF27S72Qsw jd[M.m'u4a+yIh{7mSA%w->39gI,i|Ԁ['2Ǘ#׋y] -^< ?i6.L01B5 )zCp&?>.r)uyz7Dv{XD$#EVr&KxUw;`gc)o> eBőkPj"jbn{sE?ï>9[n۵G]NiH$ĘX;O3_\vgV WmAB`wvTjQmAÌ"v,qQJŪ>++r8 )y)bTthcc,͐KnarhUjjש]R5( a!ܵ~Yml[;67&ٻYEde$WǾP^_&hHxԠQľPB C5g4pu}80G{9l6Z9Z|J!ߔ_!4kԤ<7mLV4.Sh]tתqK4 ÁWW\Ɓq!2AG~?J?p_rjRyLkLlji^x8LURx7EvAH QjK^z z}-k@|wzF15 Ԇ"c4a3Z aBYj=9>?^Θu6b17V%5N#T)8y\,:{&ྨ!=M1k+"Znô?f)k UtnDRoFEeMs6݆Z+.7hEUUc4 U%;4$f%dF;9~1,2.k`Tfڀ9zߟ7R!G׿Oti48Қxd Fs|IWK5^̱1J!BV 4,mǞ v6(J=c:Nme7{^iv-bH.dŹ1*~S IEw'U{ ^[NpD}eAT]GQ^JwHwm^mu)5jpgrշN#2otxըV`yc1czbtjBC{BM50\1;SO } ,^:MS$v.G)Y4Ϥ!*(u!X34!"Zl2FR!r.];˿!q).b%5Š,X'>:B 0~Qg8cd΅HJXl$AU1:[Kh ٶ k(.P[N'{X69˓PXJtr<(Aw2;[K,e=B=v<(!9iQx~K[6~w^qncd>NЯdl{lHM h  D(x7$h϶UE\g}5Fێ~ Jt%6  JA d/jy\2}G%p_kLɹު/|ewmn!J).k?{q܌jEck[ —WK <Ӣv}Z**ssܓ62j㼽8:J@[^ѦƫN#uZѫRt-۹D[ۉfK'cdtԎ^}j~Qjα_)DG'^8DȚ ԭ@>T"&6pCBfd1:a W[R yHX*@Y#{aMkzú UgYJ-ƚ-B}ק~~ 0NM 땥^[kukM9k闊R:CQB <3- nOR oc .j`.X ``;=EΪۢ=Mnz" ۷;"+:4jszZ}L٦[4߷ }8*E]QLOĜ7z?g;Xg?+hE#n0&zZ޳ly$i/LZJ3D`U{rTTl#WzM:y*{%): ZݖUI{~u++8^oMUHsIQQ!80CXB0MxqлPS:!q>Š _4B{C/6P(M47FFjt_Ѐ1pj֨ν|_r% =/mĵJLFvD7WOsQ<ϔZH$a7/9˿̿wuS&ӅP` XRb۳ߟ*o.ȼfV}KØ+fNQR(q h)>mZ{@/b*B}*%Ɨ, w@k7CeF3&\RAMYl")$?M`mNX"heǩl(ZK{ݬ#LWʘ!mq <ޠ6ܯ FU_؋=V!vOR׏r&v{)%SB%w},KR=G\o{u.% Xcdp䒋e6\mP9|RI(g{\\bZ3TWa0ZF[T2)$|SWج7+f-:=Gh1/85mzZ sVg^k95L)諿lKFr'&criBĄJRm䋭AZLf [f2 ZG4W$z'Ckw56j a]A~ $^ AþY US`԰27ae__դR/zϞ=gYfr^OW+S|#:<!(fYl Q^#]ja.ZC w~?2oPsh1a[jx"?fxe89qxDx);+tA(Ռ*=jSK,YeyPBHYť]jer.U{fQ(8#*%BDqcj^ZV[j/?H|l!r*P(T]* @YU%">7te4o@jܰX3A,"TkinwbUpW7"8O,Bjٖ훪/ԑJoқo~nooŋQTx*m6^;^ujkh7go V󺩜#~4u;>f~ԨyZYBc4N\]x9=boE({i_,G׵+nusz,%nك  #r# {1yz oe4WYgf7 lƸ.Ԓ,PR3?W 3_ k׮BvS^TȬ.m̂ZߓO\M&BU'Oo-C#~|>docNa5q]_7PZ#Z^Յ9 7*#L+{'-lOEn(DހRM*ڥBAPC ԭJmܤ BfMS!u_lێm`{}ĽmTYJ芄[̲D]LV@5>ub~] /^p9pq~FR ^B0.S)hqNZ!/G+aEi7rvqY>1`uΈK(kC|mHi]VeP 5ER] 5УuUA3D#uD7IJ' @+A oe>!Ҳ!''?~bN?QhjAK!܊n.'!7;E3MTݺ+k1ZebaTY̫h\Ae{Mh)+TZݷN +ګ^hz6Q_S/X^@41- $i69Oiz:77y aOՅyy8KE.Hn#ZX6ks>jjUZя[VҜM!;"iQRcDI}kڌWC3̵tF S}8e[c2, K)f{MHXTq'JJS[ -Q*S62ߡ-vhЂ{S5p *sH2Ջf[Xm0shX!R ƪJ6EZW;CB'ǪkWDƉ87WqY~lE[!Z㍬ICug$@QjN9YkyӏaئaO=H4s?>0t;ߧ|Uo`($ O.tw)Dʼ̫IԾOykWASЎd+IS0Ѭ6ArnziވEqCMIzԶ'=Vs%.BKm#oUǥ(f0HTĶa_R,/CA\#>Q,Qڑ{|5g$Z(9gӄGꊜW\Ʈ4sr:vTP<~򜋋KaRy'ΏߙW3 ;0LΙMqYCOVEB{y4"s %jJT*%Fr"w#,iGm?[{K2I}ٜ@T`(I){2C@cIPkfT ea'3;- %",f|e]F[QlU z[kvER6hS7O8/dʼh&-"sy=Ŧ+t'֖zxSp]+e\H->'aR_7L\lRETs؆Lz>NWMdG clL]50&ZhD!!brq~DG|0M9Fkw#ZT7W/n>rqAI?S[-\!Òyl>9g c{[r%J.\l״>+@Z|^;+ F[C!FMk*H2 V_N.ԚsBfKߕ)o(q{LLuH{ŠTYyR3))$TUmN`8]w8M&nm$C+^[[Kk饝c-:ܲ|pkݢ1ROy9 ot=H6ͦGW)LbiVlZ]uCƦ}tרHTRƉwݵûVT郛W}N e(Y)&Jdn0$HH"$<}5HEZ7UT9+KQ=˓fxE&,93`(>] ns.?+L)HLodM 1qf`56[ƕKI뿻 K qpEVux* %/-,db %3LGpkd3O^q~q̓Q !P*#P,|<3eYY짝Gځ nj5}|ښ(7zj ,CBŪ(1&0Cv΅e43]RT(z1G5m\9L \GG/ЖDLZ֦Ȗ֚<ًjkp0 'gß<篝-+y"~%HQazہ m9CQCrel+_v nDa[Z~TKH9RO(QbIAt+ϻo{Co7A!"] ZArz&aƲ &\&C !2"HóIZmMƬ[ՁnQL~WCRn7|L--,`j?׍VL5knv.'lk[/Gm$ٻ8dH𔎱CĺSXJTlUO"!D3R e!T\XjR˲8 @h t5 BJlnǘՕtRBFēafʶ|n|sg Q,:9՚Tce5R-M(҃ٚR{(,$g1VmvJˢsknmMhg8_ZIufV 4Ƕ  %Q‰#I̶֪>S +8>'<{%a-p])$3NI'trY:߭(JnZ=Zo*YcvYaBXz%#7bT^aa7QmPpgyq}X<9Un6,A,1Hqd$;U,!.f^i̚'U^EVͿѨ)^jR4b}AjOBX FTՏ]NojyMVg87`R>~ v2պ v/6QPzEZO-y< Or'ӦLVtOV.idD$0?h(BɨaFECy]qo '@jN/`r3YK۷Ѣeu_i)lBK5_P1Ĝ- 8MBJgo?LϞxd7qavU"L@i!wLD[48dz & q=j| hwbmUTj-KK A"²Tj^H\Q6" )qyqyὔ45S፰dX`GQ>243g\O7ߴV "YH/g,/'e % .YEGˑ?*DX|zk;(C`5`mϬ+be 0g?xW اgL2Ro&0W͏lgVD bwVXqk2 a,@@sEbx&X}6Ӊ PfƲ0H%34DJC6`*[4@P$g5:6 w{"s>6Νwso^.;=vMɼ꿨޽ai0e]S8.Nƛ.qNpP V0,ANOUWuU3VZF_̏1`h#*'- RwO-w=ya)BHD9Z IX^]-JH-JH]H؊1K hY@OǕY4,9, Q)ǁaIq,ebR ˲06_!$Ha7u~<fp}8"xܝ !7 5 99KFJO#+_Cs*Q׵q6y*h02L #5D%UTMգ&~",x$0$rL"]NeR@5V6){f\lM UGnVkSY M +ە:yvױӸUT_g@Wa4&ӹ1eMsEq};q'2^{½[ڰYZ="tCj}Bpsk ͞hJ5ЌTXw5^17ǜy~slۏMa49zBoUxս4ò0,-]̣ D 9$gS] +T]!ЌSF p6GK+8Qdk] 7nn#abnXrfY1YTHr&3CaY@c!4/Bj2[Je3z]^Ο)5{rb#]\09ĉ}fl:]Ln^R"ذƜ|g( HggoPfrd'd8JUg|K_Qc iƁ%kc DYfP:բdWֶ֙Laȅb⑱1Tsj#A{zʈ>뺇Bz-OKi7˂Yk{ 5\9a7jH ]VD^7!O8}-نU!P`5纨{Bk5ިfn5b4CEd%hJ:sUnBav5Z iCP YOLv$l fZaW ^@əI1YP s*+$RR~36= idFaH8۳!)$iLə2c}8,Áy_<@r/?;r}UgeLL^4Z+3l^-@ew~ƃG!ru8s'_烩SnyJ-k$VX~~v]\>]?m0ߧNZnoȿ%<]fB^0fa'3,9VH%vwځHJh4{JnWO넔ԅ9OkUJc(EM-n+՜ftsMӽL3> K/Ц8h&QQ>_kw|j/FnpM$cA2DO;^4*67ő~w+ZIFÛ֌ӂhh.GP6= gOus6iYʁ1qVۼƗvus&g\7'bIɝZG%/3R *%g7Gb!ZگYIJ9?ُ;!`lC$/J`@qTň_k1_)Zb)9!$r5"ak>xojFxJUkZ\+%W73G91(EVc6n=`G]~\4WIuZyVO{{ 8@nOYfJ VRoUt"Xw̻)c X jX)RuA65*<9~f̈D V[`T&o5-AVG%6xz`Jzc/ullT*F'?Am8m<3")FOzV "xH7T9ƀ(lz}Gr͸:ubJSNr=2 Pɹr2WGn8E̬lso^_\_C0Hw8[F>G?qy cUAzT`+oێaiD |{2ܳmҍp#=2'-e!1Iܩ aD4 0hklЙu]6%N__ZL`,RXLBBTo+Bm iL5+U igc[-{'mV{k*Qj*K\KnB ws*rOӭ! fFծ98DF3nܴ do2HY%m-'C BR^r PCH L {JJ$Қ܇^U|;i WR"@MD"x"K a:n?w#8" A s.///Ynn`̵\J~|tѽb25jhѤ2O<06 Uq`,1U?mZrEuFd3uQ yY,,,y׸2/ϟsӢT X__!0DL%//΅gd0?3\g<|+7d5$!bu`(t~aV -Ta ǥ0-(K!Ysv5VS9f\YTj&1MF0F(K.‹=}`[׻ AXjVo6k$_p/ ç7rHd EwV145K x_^7i˩fVՌ,˲}ɣf5U@!104#E*ܱsTOpt6:+}A[jFf(,"9SJ,&aR:x #+l Nj^\Y_H}CQDq8)m G˄H)mHڀ`۰`Spƃk? -5r#fmXFB5;/P-HNB; 4pFLZn{\<´mcVJg8ޢ)E̸RX$&ݎ0jR"W)MmE`QMcPwҡ-$40Ch[$[,A5) m7ਇ p5e/Z KM$Y3~u-?j-ŒTjeeKpF.!!lT{G)OLh7"DK1#[6I M3z62w3 vS_2R-bT@5d.Ο'sCt+k5:xNOmIN0 UfqܹEޠzv~N{'X 'wk1n*hK0œ s@;sgH4f4 Ё>Qyn~/pixX=zLb4GQ`hB$ׄvC,ڞ-="EkD҂hjcΚiE=,- WhMJ`틪UBZӆ눵#L3TCJJŔjSuY=VnFWL1X. %j!;gss.,7*SE&Ҍ>/}n?iz'EAvbL5`cHCFj!7RpVzEL]Y*N# r8q&J5ebmp*/__o=᝷M|c^>kox6{mMjV[mhעMh&F>L}ha{mHJa! .nVxa,9kFXIe:.H(DȚ6T$"uGX=NYkRzH%t)QI#T^;&G2z:4k5#I ahL^1nK}| 1B>FK^\wg\K"{x_Ч3)&c0.{,5^Mg*0D8GjLn701 jKdqdmOṀ#Jb0 P֦:ێI#`{Wڗ^}ȏ5?|ȟNeaKٞI~-?{G]=bUClu?!93F9^_{jhUaMւ{`_sT0`XVCLG?ViFJ6.^ƨ=ڌ_m6,V'`ԞHH芫c؟3%'GBL,(F<,(IKxK, Z~(8Uɍ$X$(Kc*i,3(p6?'jGr$fIb8v/<&JtB _?ּیhLb@`ph~I3ewp)YD(?yg =!Jdu F2_\( i2d@ba{d"|¡Df6eO q!`h DY=2gKf-h,Q~h31!yq\Y%/%GszrԓHMgH؁_{[ZBhhg1 q+PΆGd /7]d:+}e '?'\p5 :FRRyGZ%^mxK#{Rv ݄pp'S;-& NR'|p,RFJ ]ImY`{ba=فV2?X@23rqjYPDFx78Md3ž.Ԗ١[֓ܦd۱x׊!1. if#X-4A5fB+*0ށx$MVap!%Cԕz%ng]/"FJMsGB"i Kj[>9)Zv䂧֞&lIV8CpD]R׀V%M[ ,0 UG,\<䝯}?}!SXm<~EQXMQ$'xZGC+rWr"t`J"{c(KTy-Rl UkV7\O r2W jQ c\\>#9p|'.r} w{jLCrۏ$|< p0pl*1*e"%~TaQe{鶵 v} cIkTxPKu#{<-O#-y5:negbSIբ1=X[vm4K NpVgwuX?聏zT晉N#ظŭEЛf2Dc{TC4JM:@Cfu, Kh3FbN `YG(V0"a0 2X4$4k\Xhm뭪h FnMнLR3`ȑ}M TL*&=;j̒+9EŞ1A}]^wxXnٟQJ>|vvtz謑I[>ezbxju]@6޽!y;vRtkMkU?C#^= *>39y9OBbv9ȋgϹșyaSZ*^ PӵS9\NI B8]2IoJ@ZXH/E?wdG.rtѣ'Z/25F4 {[䥵U]'GdueMj{ Vcs ڜۡTl"ZMJ hIes aI@8Sb>F *ijA> #*;edDzIO-J0%jm:k-,*eH*RyS[J9\|x}ßg7 {6%Dox_#!"*EA%5 Qe{mOe\S`*Y`Gͩ%9M5I mvkmԵ[{7]+$/fBoҍqewj:z0n|@QZoAm(<*{]9oH6R[TKK8!t ^"E[TtePsB{'qHJ:-,+ɚg80{4kM .e20`B40RdOf 38\.E_4Es!i\ܩDXBHSV9Hoɣ#9sLѽ2~\zs^'ƿ3?~`F # @#~O҈m]EBS> 42`Y7^l;'sMx~aC#ԋKK~AKEonEkJ r.H^\+Um37ϱS^qf]s xmƮSONVGj*x],lQSYЌTkmy<'a8H-˪ׯ{U>.'cKC*nvzN/wc1CNu^x8ޤP|8 q`g.os5%j4c;7\iw;aDĒucBR`X='b.TZ.hءޱrEmu)XN͑bu󳗉誡l m yꊺtu8Hs5&Kb*j)id]P v՟c4s?{S[d81N찦xW&m6֌-Pj(Ԛj/xFdhR9Ug@ quwGWx9Oo~1O/`KwoAQGhT/2/ }D3oホċ\"SEe]JoȽ#+)apF9H u]ARu#w}yi%ܞk>i^c&iuU{6׭?w'5IKM#q{%Wcc{BW\DCU(%Kf4\8(lq$hyrDΟ[/},Ӂ=W;e" dD#* |q!{{Csn0\0_n)E[{R 39=/o?w /w <ʍk^Gb95H(czm蛻v(3rEv"E;sf2rRiPqɳ}~&.zÝ@49S-+jnZ}1 T Xƶ`ZotcZa/m/ryvn9|koZ`H5y0"Q4JZ M^kE:UttZGɦQռn Μt!#YK4F )Cj޷!VN?q ՀƱs 3:<ŢVB FM] p: ij[jGFؿ/Rd"%Qg{z2R,_Oֿ|&hOǛ}{sɚED3>nN7XkK+{lD6#zi;Eۚhx‘jG=4Pjh4p\ip3qU!|-1ώ?ɟIEb',X. P3lQnnk4T#aSm$b/(S!ēoR.ro'~ =_/2(<{r%3x\hO>|c?ϩg-0XS:-i546fttwGAq{ڼ/6;[Nz R}XSz-"e}}N}Ұ0OE򌸜d+OX7q~/p'SuEIɄ&SQwvVʋDXBU58!|#u_ tB /tmHtkܛ& nk:GܔSC('I#=O @ pPx;dHqI3̈jYY535 dW>"},I%+xp7vM 7 P%k.oe48?_}M's_kG&?aww?#JKKo?![\|W2#H aą6s N_-/<kkE)r93ΦVۮ}^;Zhb:{0}υ(Pϡ|AkƔew)|ks{s`__7~o.3S;ST7m es˶Bx$BҘX۟ex=\ͤ>6û`A$hXXLBz =TϴCKXͅ:Ûc y-ʚuRňCjϢ )3ZE4VVi=[؆@CڮF2jAK1#F'Wou0刘LKD] j:gDEöh4? 3eqQYJ<#*2: x4`I]-W3!jr @0[涎Q-Z2ZH6ٝL9=0Xh(u1fRK&ljHeNy;88RdEf0Q cZ%_/dZZ6 SW{dݲ=3eZpr: DR'ݞ/3/_Î> o_?.rS.v"|Ͽ?=9'o8vP~K>/_KQ$I{۴LQmBo<eO6fSqaDoG%ɏ3jj>tƿ򚱹=jYY;c@qq,uRgji-#YZM=x&٭3<?1rXζlk[?YRͮc%]R. BRN44Qjv#ER$S LxT}sȎ嫃e/1 H51˭28"K>D т4mzU 5T 8م]СQdJOBKGX{pp9|` \Ɓ8\|T޼zÛ;ιr{>WGebW*s7RC%2@h(PUJ- CԂ:6߭x|5^7dFu1Yy}nZ{ʅ*g/yo~?pk\-MJ~cܣ2nߢ&Pww.?-=W-#L)-p `)~9qsPT3K և֨;!ju5G+[=HDu O^B~[1,H3ZNf'xMAZUpN7^JZ*2Ŧ hM/e *f1}dsESZYӂ2|\˩r-JPSٲ;p6TPdN(; Zfp.lTn$j!O2$Ϟ/>#t8pa̙-wf^jȵn oL")DJx8{.pՔSZV0͆Az!7R Z6(;Xg7x~ӬoE}=Ij\\1}5oP_]@g_oO~?T/0a-r4}/#i;yΉLr_gb $NP+#l 4[Ho+n^fV#A-պ f\As,sb[]䔊&Hӛzt'q1(ɖڟ!Z*yQyL9ݽY]=E.B`wᆴ;ps^>a:)Ngſμ5/_4GnGr ݜ]uZ+4!).ז,w4KMZeCoח1Sm癰dS]3ִ1qv!Q9O#;y**=|9 _2Uv] So+s׎mxxJ e*Ld0dkpc+del*THUtT 劀<ӷCb5' 13$HV:M9N T4j*_P_d4-iÞUPrY]@6ݲߦ !"%"3\DSU[k0VLo`V`d B˨ 'n#!Xͬ.u8!bXAVKG0f%T*3@E yb8?p'7 yf/买}sy~?'R)gx|;oxx{ppsY{/-%g936u<{3e`L[{Qrb_Fmc؎RYH6BsRص\/D6g ayT>~}6oۗKr>;p>$ҳ҄5S'xg_}+?7zK..(g o50rM0qxsxśϺt;*gwr#&Q[U8VCNXoeu_m^ԕk-Ip66YT{6{)&e$@*kNݚM v,XʄlD ]YkYS\i][%0)Xc ²6>T;t;L< TjI(I |{kV7vXØ̿ u4MN !0ZHkzDW3iYfK'U4(R k=!Ov3}fjHUv;pyF3W ߼;oLݰ=#Ra4ܕ3q?{35WU&4bŁ=cmVfC{\bqBDWګMVkqhǂT٧$j&#FGxkUA59kJ-:p[܆E@ԎZf湠 Q! E e@8{7_=:UaLٔst-}j5VV؁(-r:4[دXh~xےl q Jiv$%R}`m-I@[\ѺQGR/3yYj-.P<**n hӍ-jSVZcf{ٖL[,df6GhuRgWqa-*"kj 'Q,7>u!n?v- ?SjK+ξu{SpH &t-)/.kЧ}:bxz1jZJU&-ﻘS Yƕ2jX ɃzvX%Q Y\nkf5Ftu2}C7yK<R'R(=G̥\5!EY^_:\`g<0 ]14Wj-i"ge.Ԓ\.& ~gQfU`1Ue 7؄M^)x<,ȳe׍AT YFW̢DEȂFܶH~c<xGRe}ܧU߮mq*PoN*H"ׄ;1P7o2)i]OmqL:?=2߾/+_0R/c̿_|qMj0roVfEگ4?װk̫G|0Siv\9gy`pY RgrAFL]pTAZmy*yg_Y))bue|9ΙuRNxx%5_}G/q0NBΨr(̡Bqyg?! ®'^N\xv<LFә˻{Le]VBz:im^ق4*$ O/[[(s⺙=T+1 ݮ;ɳcCsh^~ŏynS]rNWܝ߱Go |Mܿ#|Ǐ7_R%4_$?1Tބ} v/2*mjS KfxkD]{Q 0dz(XD뚘YV{d飍ZT3c-n]9섵X-<1OlUYL5&I6LmM-jjԱ`KM]tVV`X4k-D:Eeb9NjS j4r3T(D$rTp-]I*pb.~tu\8=a, ̵ Ns)e$ ?ax8s~8q?s>(^vv{Շ) {ꘘW=j2\+ib]O=3ӥ.|qZ+=c=q͖#TZhqGDHgwH9ҧg7'瓲֠Ɩ^^s -xKnT1fRͯ ˚-N4XjPƺ8ko6^dyEHa"1ό{;dZ3Lӻ{ 0s!\204!=ޫ }Z C 캞ԉeL93#Ӊ2Ǝ :Eb?=?Zf>bϐ͢*.Buge%=HDrW<jUQu'+Eȿ.bD\.oLn<8{@G^| R&.:KII+*J¼(eyȌ94Yy8eәCi_1q/(|Ï~OW=[|Y'MzV{ݶѷ쪺]|vxy `7IÅM*J elA~֡ثn-?z]k?b -TQJDgy ?:>l>#$"W*x ceHebq!"ܒS چO>_" hS]YWlbg<)FHQ'Rm6r:z^NPk"j"H#H*TLWYQ&?L.ܽ}-}t!0<gqGzMɂ %E*=IJ3 2: ]Lc^*aL1^c&݁@@ԙ+o޽(C0%g8Ұ'Sy 8rU<ވ3[#5HH'>ƥT%$h2"d[qZfBR-L]\rI,3 RRDI~6qԢⴵe`SoM['[#56[ Y4{Qncpn=o^r{ܣL0cD\Gf !je/T MNtR*3['6*%A`w˶໲y[\hj>[ejK5x!Vbw7=N:-PguiC\UmF TF(P*79h4em/K&ՓV€D@[oOL˄RLm}>O,͍K,jd19 a}`~b &,Ot-{]5ɝvB\E7%uh4951YCm(ߊM>h].m)Qx~st:\{wt} y8v*<g yjG N vQeႎT4ΈLP.ͼO_;ȋ3k\?V~.&;Y^9oR 6 VB#)KGbY@;,fDQZIkP9/q~esr[E.>?UJQxxZ-֮[摚UcZ*[kM1zKo,z{q*䢯r}"{ĀpW|` vVxݵέoB?˦SZc}5տr&`ZnqWǪ+2DɅteѲ6)/U*kb &] ^`kc@ZY;k]u ]7?Ej ~Y'SSE(#XUm7]ifʒ .7꺲`U{txسR,SOuTN=7ܟ.J^8TǑ\ a`Gi"dCmV& gY[HdgE=lפYExA31F\%|pj)$h&Z y6̜3EJ0aFOOg^uKcp/s{̈́Ҹn ¡-&5@WcMv:|W,?]8׶&8u1k#sz.j.t L b].Fa7٬}rF*Yԓv(AKjSzM uScRjܲŦxoR}6Fp_X 6HD1FnA]_g*Y+(QiM v>_8=8;nonGs ˪N>w5yt2 }e!~il [8tΡ//@uz%EG@[t(9DE@"F+z"'4k"a${Aʴ%뱲A5lss^ގSOmU)A F/kHZ?PlW:Yrai 0QBTJ-%К8?'|I+L۬g69m35[];L htՕդ֠dQ\OW'ˤZc}7콩WįjLebp3m&%",,`j3hp85-UZXr'4L"4mhXm mǪ(YzV&pr{A$Ù<<#s8=Ux #'=ݞ1Wޔ<?Ol 0r>HY}YD]cdFb`*fkTV:v;.u9gj /i]TnWO3|L)3HLųU%F T%ۿ:,Չw¬V}HRgOHlcZZ!_{;}hȥ:8tbfgjv ZPߙ0 H5hUI21UVжQ T b.qELyW] eYo/xFRT mc 1uR s.T_QΡ&6RxzR Ȼ.H-0p:%a+S|&@ͣR/C6hjtz9 \NgމruԹ0yV@qe9bSm{{ap>1뭚gp<ϔZ6!\WU[u~?SňgT<1 gvC-@.gO*>1)B\2%#q6qG9XO`.5jhoO<3تa/#Sz\BWj=BjÁ}#<[u:?t<2 #801=EH!R`̟4e).֠?_gtǞfJ)ɰs kkL)1&jMV"6ӊi͖WEW&Q7k/UoR2X.j3)X' Va3qN'}8{-M?d6pYkl7@ &s|Iv=*τgVu3$C_U*,zLU'2LLȉ] ҫ3>!(8v5[p{~dӹ̔* jd:.i Ql6Gۺ R]L3^w[(ydny \VY릂 Cb~R 85R%R~L!"*y&k*q4<0MMKRJ;Z5Mx[j ]*ɵdgL+Ul|k@J>.ژ;n+ڸ$X7R ի>,8]ב>l2BqQjO`2bhP-UڵxF Z j,)Ek.Tw(FJf{wZw77<`է ֤֫&=͓14ew8RƉ̷oޢlxxX3T !",R Pgm!o՝EtoKZ\ ]B Jzwՠ@sm6Ij$ROZfƂcn΄Ӊq9Aa0opT ÀpWxk%x, ,˚* SLG$_q~X&ZR`I3"t WgbٮbAy>ܚϪMַ0fyXb@[`A '`@ZȩT契YxdjG,:,T?yޢkEД? *&duUuS1ϩɬm<^DZ)儢HvQ%Ġ>FT:5 DvՊi`R~'D'˜ LJ.b䥒B0I+ y3kAف7g^yKAȗgBK|7LM|3V>~~?<ך-HH Gk+9Mf-@5;1n^Wo*V 4N|=<@L@1M3Eafjuu!9ήX)*Z LܑtrB=YP:J*LW\AdsM&v]7IBOY&2j | PMtZ*zZɫ`f.B֞e?aۮ:jO vRAc&ѰޣN-;_uvA`R6kPk b Dfiv0\MNݲVRIZi8kN1DBU+t93)sj䌣Z +%0TБI,tJq.,V.A|]!0rUc)q89KvC$?>Icn|+ޤm>R&o$2"Q}PkV1cammTJ~$'Kv/-?:OP]XõvW^ D+5=liՒ Bk.j]9LfQZ@UKu)zS`+lwQ7(ŭ9j6IrH<;qa-RLJakqUa &9$ 8Ϝ/#r&P'">Įp8piS] g7(|꒝6T4|m=M-5$$bXL[8FZ\/"mpim4 AtjF!&R;bR|nR>uIi2#2͌x @֞pyemy˂]or~}VS샰KݢdI$Ju}|L5۹T;~J,ŮnP2 w<+~tZ3JRسYkWfk+20{i.k#m!Ćf,]kpK"goXBn1TH]QE{j^~<,Vqys?nAMl%z=_W{,^ղ/m`͛ AQ@]5i"3{-b`zyQ5⫬Tj!,^'{$ _-WL~k2SH˘$4%&<+ {\jBxD)HZxmU*J}6X1Jr]q!lI"X붶e2=j*DU] a΅a)=]<]guB2 W(TK^dgaX$IѴ@]DaW T$KOϟC$|)u@wYXQ%{/ژ&) qd.C<F(kP!g>^G\Wru NѲ[#d<}V^R~S8w/d^4RKF .GPoT+v{S{ql){ז2#[)?-K(*])lp@Q.oᗵnЇ TWYfv _F$Z[yMQ l,VkR54Mͫ4܁k~f(ƒ$%R֤BpW@PeA[=wrЭ"kKVeR8s2zEs1%&TjX[us][~_}:}!ze S5}*0 ċ]x8PƙygoP3<M}-jZ^>M343#UM|3ALԨuk0ng.ƒrn|r͑gPH-1+sA$Sb縙,;RMuh3  2%X¬֥ ?ЀFW-1iUήZfeMMx6!D*Wyfi<!%w1tbvZ2czmjhyesA. Yk %dέH- ] ¨G v]]!Z Շ@[]g2mEZFO 54PV ^[/-[75UrXcmT7W"q>b}`o5)TuwT-M(gΗ3kvs6;1]L%tz`fГC{e+D ̚܉ ag?91DPK7Ezz@zv= ܡs,.䌺(@y[ `UUB5.U`V&0GD*!ȠQθ`V/O׹9@L&XqH4Bs@ԑژU>KnUb<#TNofUŔ,R"vYH}hiS@%*?1A 3BMP]$ 5uM}6j<-0mk2k_uS9U19*:6$0İԋ;;hυ=T *9DDRs[AˢަyD]Us >RJt"$Usn&@jk,ER~~,*e󈶀t6dnU';-Mt٣7X]T ]< Mh?2k f(bw?麎.ƫ]s{hf&.3㞾74Uib gq`1j shɤRǙIb0 FUxnGiBe6}>ͮ{jBM*Z5 dhҾ'Da%{v=$(Sekyc6R,ЇhH.Fm ֮shAɅyNT|܄`͕%rAO!)ZESe~6~onv;'l7Qi/kQ܂E$~xD\\q?C yf3 4k-^WH86)նhb vN祩I,% * ĽqGAcCL͏+j-ܫEz֌s^/Z=)'[㞛a٠uڪ)1Rv nIe'~,nhuD\yQ%ײP@nq5ĪŬ2P`bf31FuP%i= qKe},AZyܤF!,|:/%J׈bs`E7c_[|^=(h&m&BhyrCbNV *˃8ϳeB1%p< ~0GBY4Aز`}SdSHbGtc9R)biɥ\k9F ?ѳlQs{cHh$ИcʖYe08MݩݿZ=hzU5ۘ(t@SbW݌/:^d[-xMVYAac,|URps8'ϲeE<6zߌ:gS8LU0u `o&mSQ_^ 4#:L!XdgipؓRBQ޽%*-34ἬXׯ*.1vi7qΨfusĮc(f9N#m!{.\.#dQ̹\ 9kOfkx/oo8ȻZ9eNŽJhD޽ԈX!i$rfH[xƞjAO^G"'I4DSP_фz!t J4UFKZֻb;i4"o[U!ƵyrZ3fjQ#X] o1*_fl+^1 {2VVJl]d!FB$?. iWMiQo}=]gp|\/H֒,ǵ4)SBqe@u]OV\.SwԢ pHa8_7 {HVe"lm)0\fψ FR ,2"!"y%3jm<ϓ[tgbbԥEOU49X5-na>gQsǶ^XؚQNLXKK$ +l\28q)a0L@-u mosNjlhAR(B-ʃ*'*UO#¶-rF97%VcǭKg[,QX /Ota/ه[B5J0Hn'wq{S-o]ɫIԍg?ae V }n?QeekK;P".[Jh+\Lá>Y 3hVa8_.\.gfwUMekhLʐW(t9ykJ}@~weR<9JePk?mwԺRamBW1Zj1ZJ]ԑd^,[ K` UH<(, տKZti8mURlӰ*e(%4(m0 mمWͣ)uvذWYSJ 2ZTy][h+&M7Υ=3S)T cu'jM'ގt4q[])*E M*lA}۬({,26=iT:רH`=P _M\AUo!2XЎ'fRMզxОۥI0"gwRsݭ|Cb؈-#kH{{!&H=I Э6TpR0&}tUbs|Ռ$r/0rf_ /SE9YRZs'G3:^Ӆ:NfKFZFb ,БZQWQvZO|NYltfh1  3Ho>U10F!ԦB"CdIpE <5MB&T\<BlEL bFɌ4!x8nW0L;b4AT%d<< <Hw|FGafbء(JcyԌ@T1i)n_2a\֑p|;=1g@P yH Zаs|ݳm6V)muJ-3B%0g湢55VK_cڑ.\xI2<[vٜac81C"5p?o`X4z]# @ͲM'ƬSϭR"MNQiZ2R O)RC@31SPD I*xv8g;[g.}[&Mf ' ܃i5}Glo Z`J)Gkdhkpέ1 %6A!nWVaV&N _._#9QiIWя0|!JBHzx@OL%={ =훪ӯ§1rwŀX!>En  6ףּMW+Z)[{X]1L&2Rr #e7<}p8 '}i;SEhi컎'`=Ui%JGsZIJg3\=gE] ݞ%'kx=d[fheMsh_KEրR9,NV3,cX ʦO_ԞM_xD&zh YTLڪ[%}yȥ0ҟd=^@v1S[=\x5_}50 TJ5:lOE&oa]Oۦo~.9㋏m]Ph`y$6xSխ6MTVo嵲Ҭ=X5n1ŝ} U)saH9/$9%0SGfRSUgmUL-LmqU%5; RV1u`D+`ЌS3w{GcgrVnMMn \[At΢![6Tnڑ3:eH3(9[S: &wb.ufk+<ڄf!e,iLox,uhw LÞgg%nonƁJ`w0q-@7P!BJl6ƝG&d8@%FI1w'w խ ~|પP!J2|o:`q VEԮw٦I\JV.c\ӻX%o+hp8" olSEi [\ngoB/p#` m,b{QQLu tO)ySSҽA0w[jz?u_{~Bק.Ews%CYj w{A[']129>uuOƾ|>6BUںr TxcƢ&X1FL1X[YM&`W1wS6‘7:=6*S-:5'QJLpaV$nBGO0iZ$nZ pw,c ԭrMwZ65MѵҶe.2Qc%Ќ ˅߼B 5b{kiĆE-DxBwNM q * ~ʌwƈn[ <7e#Iĸ HN,1rĦ۳ErSh0Zj,wƏ*6[;{܌QaҪ2~S]~۱s/?oܑ1؆˰8:6t~5N]9vA&&a%KQ}#smA5=q0.T{8ԣMn ii1b$vF0UT/z w խ=@`2y"u]T:j;_Mjv TL\f|8\\mV'͛E:>5P}[ZyWȲJv2bRRZ4Jpbxc&ŎPPGbL?}3Đ]-~Gzj[S1%^yYm-τNzοpOv%s\.y! !vt!ZSf󇯶wBMM\CtlH#RVev,HnIcf>ףm1l9jGU!~c˳O޶A9Fk-'ڪ,pwF{ϟٳgy/o6_>Zz]Zj56*)uK즍<̈́`ʹ7kƭ))׬01h Ĕй,Ѣ MEbI bǻw<ܿC]icnOOPۿv.m=LyKu\Li$D>AmC tOOg^~tZOZ qd^MTQIezW$#*RHfp0tv!C,A(<-ANHqwjeK6`Z&5uSo48m ~N>It; TNE Hme.9BI)ExM}qͧ%UZ' ĶSkA@d#ftL$&@dKc)KQr9fGTq \ulɨM`p M]n* SVϬ#G +uH4$t!goL9'[?R 4r\_0WK;Ti<,f`h" *whNV8ݎ> gno2Mh HjL83Kf.1zzg2x HۙxL0PLtbcOLf*Kk84{WYw$J-֎uB4w^ptaWat:@"580Ք֢8o8_kNDזXZ+yȥp>k^zrA$uV.ŧ(J Nt"v:Y3m[ZѶMz@pKh֍BfGE uv^S 9+ܴg.&{EE o8}4mPl ֚Uzm¶U7,@P%~ۋKk5נZɺb F .o D_4V[;?1WZlS]kE @j406?v ~qFS $.G^Z4y-y*Z"ٖ;1TZI??4l9 ?uH%j53;֚L 93{J%`®NȮAg"%TaLyIeWɞ~x(H)Liɳqtofg,Ē&"K,<-HiC ehI-hnEl-yfv}'#2$" e>b~P9g o޼raYHs+y k6;S3[^ˆ2ڟʢVV ,AF,HE`)XVC,QgKFn Ws7RdIgf$ +d.S5j"oq$v]Y%zAg+ћk9m 5 /hAoH+Np/;bv TT nm38֬WA 5Z 'r*PSdRRr^G5rJ(5$d103߼?7^y0tGsfL%0-34\Uz{v<xG"=co%S1LYM5oɭF 42:{*+0/tZKs.\(|feqz8Y{Ƕ*f/uP[כ,9 f+;O 4q9|OX:%Sⶬ.#X hvz?]dQsDXumL[T='NˠvXR"0<*(6K];6Tu{YI{"d5֠)tLfS:(*-H=/ٜY@11m(71UriͤVvm֔jU7qVaB}%?I Zsr('FY7~bN p d1YqAjYEA<ӌtϲCH)T: Hk,6UzľTk`P<<<ͫosBʙP! gklu6F:ZКW 9OF{U7weGNB~G"Rgk.P )oPuՊE0EV(P{+`<`kr}n fW.iiWU5k>LUS^z`܈a!DWS^Di Viz7n,m/o$9.5G KfVCBT9p9DJ&N*Y\Hg 1xQRDP91yS@Bx$ґ;]b&\OT¬ DJ"J7_SO"̑DD)oK$ 3w-"gחPK ɒ,죚 u;"tⅻ__w%] > tZ).X7yB9d)vI;%T L'P?u6hpAu:3 4{;GNwܽ#٩LPgG@u򓚉jceچǽhu[Y;M"j%AL#ZK80 {*1U:M9|* Z9Dx_EA Z=mҔ; L"k4ZZ',U?j IQԕ+aź)G;v[mbWWMh׽m4M^ZM]>v' ~;ϼܜk`,ec^.ݔu,;' [ !{[Y̆eo3̵ ໵(.ξI2` /NVʩ!JٲV[1kl($?̤2^ jjE!k`BQjMКAbYdqUES]Xl~//H7^= jXI[%݊yRUw]şT MLG8<%JwS61͍a^V5ЋЅ@ (bJ+^-b#j_5N*iluEx6BR lT}PkdGdxߔ-Bhl.SD8H!U%8-YOSE@zd̵mscN0p>aFimc1J}߱/ܽͷ8,kDݓi3i(ZZ }yrR22Gߪ jѝqO4:ZE+@غ*H>'rYv4'f{;I`ѫƊA4Y\m1 1=쐸u2g۵2e5}j?6ͶƯ[8[VTݍAPJOc:p)|O(VN"0L_RX Jx*c ,zM[f.=ak{[?^I~&(n8c7WV- qŜV"s].בܝ3gw}*.X"nP=bPڝ0Qg̪Ѵ|CMh+d0`[*Q+ JLV[@ xO f\4J>c4HU IJRQ&2iJX5OPLL$WY) P/| fQ=W&CO S}L@Tk5M̓T!;d@D>?>w/Ʒ߼B.8{#_,̀H:ƶizl2#dVA`ٔ?X)JY]kM,V4(MюM5.s}NlIjTkmj z`jtu-+q\שm௨A}WT|߲dPjK5ʆ+>Btp{j> jT4*ZI+sP }"iP%bn N Q6qbKZzX6*i[2jMAWGd@xT6tmt}ȴVf{T;.ƅ|QMn^Rt5C--D˳*yB!b(dtז t tD t]Z{+,HıSW%jP: C ڃ{YLKMJG/L1{W~}mk=aɔZPxZpb B I;^eoгN.̷mky cl_i#$N:[rDԵĭ{$LB5*ґK&H@[7%8ОV##l >T)d >yl-r~M,@:HmNu6&׿A?x1.ΫU5mFpr-C͡8Tv7);g+w5VZ>OTJ=ofbՌŠIVZj 0tz}P)f`Nqm c\\52GQ#u~o.Wqz+ZI5jQ+Z24-[;F#+~ZіK_ +p˹|Qg &@B{H;|dp@lY*Z_y%5}j5ےlB u]ݪVW;Ke^c UJ @@1}O{r(rZ="*9N_:h@'+WKC-0,- eM!\.\\E2G~vhTIu9_<| zwwbS@^pMns58K5{Qxk]J5hUq@7OHzKղeWk.2;O4TG ebUk+evI'^4V] <RF[wM,x{?"z60`j~m?}WV|2eP@1x@DuO=8vǑ߾"( Efw.m90[XXkͬ 'eCaUazjK+ H!tBttmk? v \v=G[QDIŜ!:yfUd!O?9}̯-#| 'V('&ZY0Vm7evV}ZX=`6HRgjmհMsUP٩: % 9)IڅE ^. L H>LP/]&AIge4jN-|lK*E$1ctt8p@1uƥT捯CA{-S ¯ג`wEg*3=4]\ n/YؽtE⣟fV {n) essC[,)#V.-kmϟiE?RpDϙ#Qf1߂QI$6~D)i$#I tdXܬ.o2ZlNDx 4V_ BUW >8!l}!h,>(2kSo 5Ο*rq%*"삗RnHp)%Wc4ne'pAPWcgA3##V\/!#--[΍ڲ}a+OEaZU}Χ W}<~Eq7~ lJ4O0V6F:c#eŊ%K$ղN|/JL 8T=fY?MRCKӯv9zXbŵ.994g=fO 4zbL#%tEXtdate:create2012-12-10T23:29:19+01:00x%tEXtdate:modify2012-12-10T23:29:19+01:00RGtEXttiff:alphaunassociated(tEXttiff:endianmsbTu}ttEXttiff:photometricRGB ItEXttiff:rows-per-strip198aIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/content/0000755000000000000000000000000012273255454030375 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/content/player.html0000644000000000000000000000354612273255454032567 0ustar rootroot -1

././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/content/YouTubeDialog.qmlqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/content/YouTubeDialo0000644000000000000000000000613312273255454032670 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ import QtQuick 2.0 import "qrc:/shared" as Shared Rectangle { id: container color: "black" signal presetClicked(string name) property int neededHeight: view.contentItem.childrenRect.height ListModel { id: model ListElement { name: "trailers" } ListElement { name: "ClevverMovies" } ListElement { name: "nogoodflix" } ListElement { name: "PalaceFilms" } ListElement { name: "CieonMovies" } ListElement { name: "FilmsActuTrailers" } ListElement { name: "movieclipsTRAILERS" } } Component { id: delegate Shared.Button { buttonWidth: 200 text: name onClicked: presetClicked(name) } } ListView { id: view anchors.centerIn: parent width: 200 height: (container.neededHeight > parent.height) ? parent.height : container.neededHeight model: model delegate: delegate boundsBehavior: Flickable.StopAtBounds } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/youtubeview/youtubeview.qml0000644000000000000000000004010512273255454032025 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ import QtQuick 2.0 import QtWebKit 3.0 import QtQuick.XmlListModel 2.0 import "qrc:/shared" as Shared import "qrc:/content" as Content Rectangle { id: container width: 850 height: 480 color: "black" focus: true property QtObject videoStatus: QtObject { property int initial: -1 property int ready: 0 property int playing: 1 property int paused: 2 } QtObject { id: currentVideo property string vId: "" property string title: "" property int status: videoStatus.initial } readonly property int padding: 20 Rectangle { id: content anchors.fill: parent color: "black" WebView { id: webView anchors.fill: parent opacity: 0 url: "qrc:///content/player.html?" + currentVideo.vId Behavior on opacity { NumberAnimation { duration: 200 } } onLoadingChanged: { switch (loadRequest.status) { case WebView.LoadSucceededStatus: opacity = 1 return case WebView.LoadStartedStatus: case WebView.LoadStoppedStatus: break case WebView.LoadFailedStatus: topInfo.text = "Failed to load the requested video" break } opacity = 0 } onTitleChanged: { currentVideo.status = 1 * title if (title == videoStatus.paused || title == videoStatus.ready) panel.state = "list" else if (title == videoStatus.playing) panel.state = "hidden" } } Content.YouTubeDialog { id: presetDialog anchors.fill: parent visible: false onPresetClicked: { model.userName = name model.startIndex = 1 panel.state = "list" searchBinding.when = false presetsBinding.when = true model.reload() } } } Rectangle { id: panel height: 100 color: "black"; state: "list" Behavior on y { NumberAnimation { duration: 200 } } Behavior on height { NumberAnimation { duration: 200 } } Behavior on opacity { NumberAnimation { duration: 400 } } Binding { id: presetsBinding; target: model; property: "source"; value: model.usersSource; when: false } Binding { id: searchBinding; target: model; property: "source"; value: model.searchSource; when: false } anchors { left: container.left right: container.right } states: [ State { name: "search" PropertyChanges { target: panel; color: "black"; opacity: 0.8; y: -height + topInfo.height + searchPanel.height + button.height } PropertyChanges { target: listView; visible: false } PropertyChanges { target: searchPanel; opacity: 0.8 } PropertyChanges { target: hideTimer; running: false } PropertyChanges { target: presetDialog; visible: true } }, State { name: "list" PropertyChanges { target: panel; color: "black"; opacity: 0.8; y: 0 } PropertyChanges { target: listView; visible: true; focus: true } PropertyChanges { target: searchPanel; visible: false } PropertyChanges { target: listView; visible: true } }, State { name: "hidden" PropertyChanges { target: panel; color: "gray"; opacity: 0.2; y: -height } } ] Timer { id: hideTimer interval: 3000 repeat: false onTriggered: panel.state = "hidden" } ListView { id: listView orientation: "Horizontal" anchors { top: panel.top bottom: button.top left: panel.left right: panel.right } focus: true model: model header: Component { Rectangle { visible: model.startIndex != 1 && model.status == XmlListModel.Ready color: "black" anchors.verticalCenter: parent.verticalCenter width: height height: visible ? listView.contentItem.height : 0 Image { anchors.centerIn: parent; width: 50; height: 50; source: "qrc:/shared/images/less.png" } MouseArea { anchors.fill: parent onClicked: model.requestLess() } } } footer: Component { Rectangle { visible: model.totalResults > model.endIndex && model.status == XmlListModel.Ready color: "black" anchors.verticalCenter: parent.verticalCenter width: height height: visible ? listView.contentItem.height : 0 Image { anchors.centerIn: parent; width: 50; height: 50; source: "qrc:/shared/images/more.png" } MouseArea { anchors.fill: parent onClicked: model.requestMore() } } } delegate: Component { Image { source: thumbnail MouseArea { anchors.fill: parent onClicked: { currentVideo.vId = id currentVideo.title = title } } Component.onCompleted: { if (currentVideo.title == "") { currentVideo.vId = id currentVideo.title = title } } } } onDraggingChanged: { if (dragging) hideTimer.stop() else if (currentVideo.status == videoStatus.playing) hideTimer.start() } } Shared.LoadIndicator { anchors.fill: parent color: "black" running: panel.state == "list" && model.status != XmlListModel.Ready } Rectangle { id: searchPanel Behavior on opacity { NumberAnimation { duration: 400 } } height: searchField.height + container.padding anchors { left: parent.left right: parent.right bottom: button.top } opacity: 0 color: "black" gradient: Gradient { GradientStop { position: 0.0 color: "grey" } GradientStop { position: 1.0 color: "black" } } Rectangle { id: searchField color: "white" radius: 2 anchors.centerIn: parent width: 220 border.color: "black" border.width: 2 height: input.height + container.padding TextInput { id: input color: "black" anchors.centerIn: parent horizontalAlignment: TextInput.AlignHCenter font.capitalization: Font.AllLowercase maximumLength: 30 cursorVisible: true focus: parent.visible text: "movie trailers" Keys.onPressed: { if (event.key == Qt.Key_Return || event.key == Qt.Key_Enter) { model.startIndex = 1 panel.state = "list" presetsBinding.when = false searchBinding.when = true model.reload() } } } MouseArea { anchors.fill: parent onPressed: input.focus = true } } } Shared.Button { id: button buttonHeight: container.padding buttonWidth: container.width fontSize: 8 visible: panel.state != "hidden" anchors { bottom: parent.bottom left: parent.left right: parent.right } states: [ State { name: "search" PropertyChanges { target: button; text: "Press to switch back to the video list" } }, State { name: "list" PropertyChanges { target: button; text: "Press to search for videos" } } ] state: panel.state onClicked: { if (panel.state == "search") panel.state = "list" else panel.state = "search" } } } Rectangle { height: 10 color: "black" opacity: (panel.state == "hidden") ? 0 : 0.8 Behavior on opacity { NumberAnimation { duration: 200 } } anchors { top: container.top left: container.left right: container.right } Text { id: topInfo color: "white" font.pointSize: 8 anchors.centerIn: parent Binding on text { value: "Results " + model.startIndex + " through " + ((model.endIndex > model.totalResults) ? model.totalResults : model.endIndex) + " out of " + model.totalResults when: model.status == XmlListModel.Ready && panel.state == "list" && model.count } Binding on text { value: "No results found."; when: model.state == XmlListModel.Ready && !model.count } Binding on text { value: "Search for videos" when: panel.state == "search" } } } Rectangle { height: container.padding color: "black" opacity: (panel.state == "hidden") ? 0.2 : 0.8 Behavior on opacity { NumberAnimation { duration: 200 } } anchors { top: panel.bottom left: container.left right: container.right } Text { id: bottomInfo color: "white" font.weight: Font.DemiBold font.pointSize: 8 anchors.centerIn: parent text: { if (panel.state == "search") return "Choose from preset video streams" else return currentVideo.title } } MouseArea { // Responsible for showing and hiding the thumbnail list. anchors.fill: parent onPressed: { if (panel.state != "list") { panel.state = "list" if (currentVideo.status == videoStatus.playing) hideTimer.restart() } else panel.state = "hidden" } } } XmlListModel { id: model property int totalResults: 0 property int itemsPerPage: 0 property int startIndex: 1 property int endIndex: itemsPerPage + startIndex - 1 property string userName: "trailers" property string baseUrl: "https://gdata.youtube.com/feeds/api" property string defaultQuery: "alt=rss&orderby=published&v=2&start-index=" + startIndex property string searchSource: baseUrl + "/videos?" + defaultQuery + "&q=\'" + input.text + "\'" property string usersSource: baseUrl + "/users/" + userName + "/uploads?" + defaultQuery function requestMore() { startIndex += itemsPerPage reload() } function requestLess() { startIndex -= itemsPerPage reload() } onSourceChanged: { var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function(){ if (xhr.readyState == XMLHttpRequest.DONE) { if (xhr.status != 200) { console.log("Something went wrong, received HTTP status code " + xhr.status); return; } var doc = xhr.responseXML.documentElement; for (var i = 0; i < doc.childNodes.length; ++i) { var child = doc.childNodes[i]; for (var j = 0; j < child.childNodes.length; ++j) { if (child.childNodes[j].nodeName == "itemsPerPage") itemsPerPage = child.childNodes[j].childNodes[0].nodeValue; if (child.childNodes[j].nodeName == "totalResults") totalResults = child.childNodes[j].childNodes[0].nodeValue; } } } } xhr.open("GET", source); xhr.send(); } namespaceDeclarations: "declare namespace media='http://search.yahoo.com/mrss/';declare namespace yt='http://gdata.youtube.com/schemas/2007';" source: usersSource query: "/rss/channel/item" XmlRole { name: "id"; query: "media:group/yt:videoid/string()"} XmlRole { name: "title"; query: "media:group/media:title/string()" } XmlRole { name: "thumbnail"; query: "media:group/media:thumbnail[1]/@url/string()" } XmlRole { name: "thumbnailHeight"; query: "media:group/media:thumbnail[1]/@height/number()" } } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/webkitqml.pro0000644000000000000000000000011012273255454027045 0ustar rootrootTEMPLATE = subdirs SUBDIRS += shared \ flickrview \ youtubeview qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/0000755000000000000000000000000012273255454026501 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/flickrview.qml0000644000000000000000000002204312273255454031362 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ import QtQuick 2.0 import QtWebKit 3.0 import QtQuick.XmlListModel 2.0 import "qrc:/shared" as Shared Rectangle { id: container width: 1024 height: 768 property string initialUrl: "https://www.flickr.com/explore/interesting/7days/?" Rectangle { id: thumbnailContainer color: "black" anchors.bottom: container.bottom width: container.width height: 100 gradient: Gradient { GradientStop { position: 0.0; color: "gray" } GradientStop { position: 0.33; color: "black" } } Text { id: info color: "white" anchors.horizontalCenter: thumbnailContainer.horizontalCenter text: webView.title } ListView { id: listView orientation: "Horizontal" anchors { topMargin: 20 fill: parent } model: model delegate: Component { Image { source: thumbnail MouseArea { anchors.fill: parent onClicked: webView.url = link + "/lightbox" } } } focus: true spacing: 10 leftMargin: 10 rightMargin: 35 visible: model.status == XmlListModel.Ready } Rectangle { id: updateInfo property real distance: -(listView.contentWidth - listView.contentX - thumbnailContainer.width) property real threshold: Math.max(2.5 * listView.height, thumbnailContainer.width - listView.contentWidth + 2 * listView.height) property bool triggerUpdate: false opacity: 0.8 x: thumbnailContainer.width - distance width: listView.height color: "transparent" anchors { top: thumbnailContainer.top bottom: thumbnailContainer.bottom } Timer { interval: 200; running: updateInfo.state == "update"; repeat: false onTriggered: { model.reload(); updateInfo.triggerUpdate = false; } } states: [ State { name: "pull" when: updateInfo.distance <= updateInfo.threshold && listView.dragging PropertyChanges { target: message; text: "Pull\nto\nupdate" } }, State { name: "release" when: updateInfo.distance > updateInfo.threshold && listView.dragging PropertyChanges { target: message; text: "Release\nto\nupdate" } }, State { name: "update" when: updateInfo.triggerUpdate && listView.atXEnd && !listView.dragging PropertyChanges { target: message; text: "Updating" } } ] onStateChanged: { if (state == "release") triggerUpdate = true if (state == "pull") triggerUpdate = false } Rectangle { id: icon width: 30 color: "transparent" anchors { topMargin: 10 top: parent.top bottom: parent.bottom left: parent.left } Image { source: "qrc:/shared/images/arrow.png" width: 30 height: 30 visible: updateInfo.state != "update" rotation: updateInfo.state == "release" ? 180 : 0 Behavior on rotation { NumberAnimation { duration: 100} } SequentialAnimation on x { running: listView.atXEnd && !listView.dragging loops: Animation.Infinite PropertyAnimation { to: 5; duration: 250 } PropertyAnimation { to: 0; duration: 250 } } anchors { verticalCenter: parent.verticalCenter } } } Text { id: message horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter font.family: "Monospace" color: "white" anchors { top: parent.top bottom: parent.bottom right: parent.right left: icon.right } } } Shared.LoadIndicator { anchors.fill: parent color: "black" running: !listView.visible && model.status != XmlListModel.Error } } Rectangle { id: content width: container.width color: "black" anchors { top: container.top bottom: thumbnailContainer.top } WebView { id: webView anchors.fill: parent opacity: 0 url: container.initialUrl Behavior on opacity { NumberAnimation { duration: 200 } } onLoadingChanged: { switch (loadRequest.status) { case WebView.LoadSucceededStatus: opacity = 1 break default: opacity = 0 break } } onNavigationRequested: { switch (request.navigationType) { case WebView.LinkClickedNavigation: case WebView.FormSubmittedNavigation: case WebView.BackForwardNavigation: case WebView.ReloadNavigation: case WebView.FormResubmittedNavigation: case WebView.OtherNavigation: if (/^(https|http):\/\/(www\.flickr\.com|login\.yahoo\.com)/.test(request.url)) { request.action = WebView.AcceptRequest return } } // Disallow navigating outside of flickr.com request.action = WebView.IgnoreRequest } } Shared.LoadIndicator { anchors.fill: parent imageSource: "qrc:/images/flickr.png" running: webView.loading } } XmlListModel { id: model namespaceDeclarations: "declare namespace media=\"http://search.yahoo.com/mrss/\";" source: "http://api.flickr.com/services/feeds/photos_public.gne?format=rss2" query: "/rss/channel/item" XmlRole { name: "thumbnail"; query: "media:thumbnail/@url/string()" } XmlRole { name: "thumbnailHeight"; query: "media:thumbnail/@height/number()" } XmlRole { name: "content"; query: "media:content/@url/string()" } XmlRole { name: "link"; query: "link/string()" } } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/flickrview.qrc0000644000000000000000000000020412273255454031351 0ustar rootroot flickrview.qml images/flickr.png qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/flickrview.pro0000644000000000000000000000043312273255454031370 0ustar rootrootTEMPLATE = app DEFINES += QWEBKIT_EXAMPLE_NAME=\\\"flickrview\\\" QT += quick qml webkit SOURCES += ../shared/main.cpp mac: CONFIG -= app_bundle RESOURCES += flickrview.qrc \ ../shared/shared.qrc target.path = $$[QT_INSTALL_EXAMPLES]/webkitqml/flickrview INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/0000755000000000000000000000000012247412261027236 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/src/0000755000000000000000000000000012273255454030035 5ustar rootroot././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/src/flickrview.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/src/flickrview.qd0000644000000000000000000000454012273255454032533 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitqml/flickrview \title Flickr View Example \brief Demonstrates how to embed a web view in a Qt Quick application \ingroup webkit-qmlexamples The Flickr View Qt Quick example uses a \l{WebView} to browse the images from the \l{http://flickr.com}{Flickr} public RSS feed. \image flickrview-example.png FlickrView is an example that retrieves the \l{http://www.flickr.com/services/feeds/docs/photos_public}{flickr.com RSS feed of public photos} utilizing an \l{XmlListModel} and shows the thumbnails in a \l{ListView}. When clicking on a thumbnail in the list at the bottom, the full size image is loaded in a \l{WebView} using the corresponding Flickr link for it. It is also possible to browse the profile of Flickr users in the WebView like in a normal browser. This demonstrates how navigaton can be restricted to a specific domain in the \c{onNavigationRequested} signal. The feed can be updated using pull-to-refresh at the end of the thumbnail list. This example uses the QtWebKit QML API that utilizes the WebKit2 split-process architecture. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/images/0000755000000000000000000000000012273255454030513 5ustar rootroot././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/images/flickrview-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/doc/images/flickrview0000644000000000000000000062355112273255454032617 0ustar rootrootPNG  IHDR*|gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs%%IR$IDATxweGyTts$hQNHB!1"08`lul~1kHט(  HqFI'V}soߞF Ө=Nxc%<{Uܙh4&hpG~㥤LZaT*j5EJҲ{W**B B{b:nk;-<Ţ<:iO? 3">LOO.Kv|. ,O?/dMT 0M4M 0 ngY֒0<񤔤?4X`>,]뻧ۮY;y]B/6iORIߌ}2)%mSVa6Rʶ>v-%x˹@ZBNwc=t~G;{O?СCG Xq+VZ,֚0 x)))))))/ rnr۴\)]':diO?\.P^ N Հmr\O?B@)))))))+_l>%%E钠RRR^ޘVJX< oN|48f* iy]dӀen7Ԍ$'t/pVeY`i>+ES>U'v!(H|?Jm@oN*ۭDXx#ɘ3QGksT}M4!R98a@E}u ABMNقHiHE@x]T- sM1&񱔊/Fjbdd Ua;*۶T.+h/*Dk@<]]Ʋ,|GJix$CCCAZP(jײY!{<-d 4,hD7lwxԦ7+ϳr><;|&?9C!k 3T.ئ`?w!g)φ N,tE-p[[l3N1a$5*Yy|.))))/c2 |;wOVhs__ fbbu) T*z{{jcub& R. ۶)!}qڊCXZ"$.ZAR,,,0==atwwZ@IQh/'o* )S64|>cC ޴%pHowG>s&$c , 3 ]|ND )^+v΄4cǖR l 2bg7ЌW"ƫn)ؒ.q6MJ/R AՏ[` bI0_F3V# fZkzj&&&tww-0 \P@JI h4֚0 4M9䓩T*KOOf)lF)k׮]Vuq1| _ximMLk ~ _sڀj2rL~!"V7ԼvcS5EWF>'2+BΙ5?Ηkrшl ]U |gK|w>1^SDL u-G|:~7/+7o<_W`$6Wn@!Jy6lZ4HIIII9~E àX,299nڥn(" C4MǡP(0 \.viߎ['2??V$,""z{{<0(J, 5d2m>jnBrȪAo.>f.q$Y@Z^m!S-Otg%{C dKfJV@=!@=<2PAy88їj* {"dqVxp<]$-" rY xtoD$3^))4`l|W֖hG 0AJJJJq#ddd0T*a&RJ|0 àP(nݺvxs͚5ry-tt!B۶rYaժU8CXlt<=RJQZÕ"W"ۣˑ\yÆծNF=kU\_?9m\ea%@@oVr*%3 )kJ!j7lvpf]AtE?G5 @ĚUl._gb`Y\@G˃.NŹ[L"{MJL5CI0PzP _VJJJJ JB8N߁ec]籊"eaF-q9? )`[Zp5 ύ31OtN$Wlpύ3V._QG{=nןT =}~rou] bk\ hᄾ//pZgl=.Uі8y 27yh@,\.7;/Nbi;MBuϞ,#ʼn{U"8o>5Hw:(G@<>;@)MyiJsi.BJJJqbM/e;Y)G\ yKeYXU4l 3rq):mͣn',sD3{Yȋ&9$A:( 0,IFX93kPh0 Nɢ{C{?$,ΖLkJJJJs< s%֓.w(LџnGg̣M/D<2wwk#5C|t@3q)ʞI뇓dXZ%z7!6B/wCF.6ܤ:34'}uK#ܦ !8Xy!K:BG~RG+'\.i/c<YE>ǨG6 eb)Oea_APM0-¯Bf6 wEL<<ǞwBF,'v˓GסzΆWi DE HHIIIIyxV eCjcqB)I3Io>ו@oޒ` >qo EG5a 'qx^!!_=7Fa|[Mz&3q>ڴ ajZH@2_iP( s.iyһDaNwSvdCpo! pCN~P:@EuWBH̓ t w tg$ .]x92B0RWsa{SLsٺHF~l4)LP\W1i&ձ:86,ey~#$mcȩ?ųLg3RRRRR/NXh`xc!b@Osg iRRR^3y^lHz(%0d2dٗ2bBV<OW~~%W,`ՒtS˵D2%u]0 MKjis:1O=ɘ`HASW曪]28zv{S O L 5뾢$>>~C(8b$䳡hj^\4=c_cr4@iTǡ1ێ4E:O);Q1991WKy0??Re  $CdKi 2>1RWwT):-[+?bStbI#LnK b5ݥk~Gkkjg6UrWvxT=E_Nr6xuro]|Nr<5rj ucS7ȏj<4s6a eyR(51I&e۩DkQ=mUŸ=b6W#U.MWlp^'cҪ S[ٿw?qZ*))%Bab7'94M( Gtk|wtMqhz/eTK6&s ir:X*'< P{C8SOLL">PC71)+pf36Y_??PQD9KWn(FK߸ Tܴ_ixvܖןA C "JYe-Yl)nDlp໻\YeqٹgPh3+ܼӣiN4srWs{=Qy]ga,صF*Hzzޜd txa,Iφ4CͯgQ J."Xox@#96GZJ-/=s!ÿ?`TH#3QUQ<6dM/̳m*]Ko;=j0P K Hy>}R)/} @kME^JSMnp3\M&屮`MsVYO'߭=Xz "^1'<V"ތ;=>`} ܼ}PHrv>,nwWks&^*1]c lrq>~O{<<0^kǣ*wq hfG&Tȥn{6'|.MtMWB:k]s!ryt"``lȟV^Hs/<\{]'5.qCC n{,G|C5sss޽={PTTeAldmF 8LOw9c2@7dL ۚ|:cՈOvhݩOyQJ=,}?s^o>E׵*']9s!W|95Gr75iPMh{/WűZCtRom.u&k ҨdSLv'P}1$V 0n_7;vA' (],#ޔ0UW A5\W~_<;}jB$牴(.HNPI\'#E{g\HO6YoZ8[CùW !q%tM_VE2e\9g .Ŝwl?rJ:݅Bi~.G"%ﯸ]q)iŐqB%m))#"YK$Cz.nᲦWq7K6ܸÍ!X6n%h 84|N8bayƐ@^2Psr2(eŸ_Srv̆ئ3te"44%LM}&!Xcpj'fB6\ƒTkH+Fmvl x`O{n<\ϴ+OyiҺ/_yaJJJJJJOi %%%%%e@R %%%%%e*))))))+THIIIIIY @JJJJJ $URRRRRRV IH@R %%%%%e*))))))+n ɱz6<|yե^?4x}ۥ>G;?s=~"EgQa#|{= !"``}O=P~\6D[9s/-Y{H|I(bK>U_"B@T}m@щIe7~6i>xGٺ?_,z )N0%<:'j_ .EN7>џo]}1P*>-CM1cd5!Px{<%Co~Bb_]k6:bKýyGWmpW(C)>qwwz&%zF6>mU\'m.n9o.+rڠOx|UN7cǯ6S!o_R3GX,rI'-9!>@79o;]sa_:'x5[;\_^]k7S4XEt-曊) Hs?H_N\H ߼0+F->:n;*A3ܸR(~6W# 2d.qrɡr_Q>13b[*\4jsϞ+78%Muǘo8-Yedy6zUE'խM7'qK<5kXjՑ/ qKÝ{<kU"l^9^^d;*<<e*?94֍e>n =kJss*9^)'2:1%*ܹ,7<au./;v2vcy-vzAG'VYgJ@ʲ-oFkMyauBPPZS,Z8]KĊ  y\YM7bӗݏj*kl18udlȿ?C<;K׼2ۦB /IC&o==wwx͈Fwwܸ56 ߿c<[7.u*8…|yfz{{ `|׷6ypQsgbsc g>No^=>J<2*w]g 5MU-Euܼ%TD 2h1e{.]Wᆚ?6`r<+5?? 箶Cuz 5eWsn/>'g8uԸsGrW/?@kύO  >`p<{B9؏wO)Zkjz>a"hK-:W*fg)Oe(+Ț- UkMΒdהxbzqE,#v93?ȥ 9=s|CǛ\8b릘U 0@ x9~l̰t)3BPyGy߈7{:)֩i 4o>-Ç~PQwo)SN,ܱ`0ew?n_yp.pvs%O\ L^wÿ=g8{M;\m)+\>GL"8O*OLܴBxZvq =L]}&>Nlo}>[0jxeE^}öˀ;؆';\Y(`ff={ws)W62QqeY.K$%gRqÄ5hkm7q>i^m/oP9bt@6%k7e.=s!屪$d刊뗯K \usOY9!d||˲RP*ryT*tIx8h}˲ؿ?R,j+E) ׇ8Kۯ4V46'wE_U4.nr# {\ 0m桢e1袳%"E/m5_+92t$o==ˋ||\8bٷhΝ駟~%qNN|7p9o2Dt<~7pĽu|oWT/;.9SL|5:K/@_T|>:[7. s-2Ie޲%WoǛp5'gXeȣ|gG*\RW))-DQD6EJI4M(bll 0MC177GP@)E^gժUӌrAl6B!RJFGGf˶c%[Gcũ>@tȶɀ['Zÿ>P<.\pnO?X\SqnSл5d%wC>㕐vfck.ND‘A#8gɿ]a %m޺u+iӦw0P,Ek*XST\͆^[ ~~K7=9lV$ _S)}&~\暓lk?o _.!!,sh٦ȰPrMKr^)T:QF=Cv2gZܼ%k ^v]/=y`,w.)pǯ󮳲ܻc\> /{ q֎{k\ِj56zKPZ*-<"[{;)|K#R9SWDx@85r8s!ONܺ3R2j75yl<௮)W)& c56 X5*7+"|?_e(op./xe5aj* `jj j5 fvv0ږyET*PJ177iSV)p]+@)R"{^TVLol[x ~o9=N$l5.^c#4O΄ s8Xlnbk_V}k[0YSN5!EKpi6<εe1\2sK}qFM<֧`1` FKx%g/.->ymS!yA>PIuN/7,0X m{=>HsVY h9BobPnbm;xWXeRq-}& Iƴ1\4ss,45%k H-J.XӇ, $(8rG,)e}fX!9s^xǿq`0s $Mn_s+\D)#XUib6JYr077GXDJy!8 !ZkL$bƒgSk8r4\5l( )lذi<7;^jB@q.5$c d~ 8wi6ԛ{_ْo0T,4grְ}:䎽U_KئBďx͆^t!k n)d]4hlm=]6Wlq~ݶc%b &7͍OM, Mzc%yh56UO.k y|2Pigܴ5v9{i&Ո;x;lykacꇚs0@iͅ#6w.XM5';t-^Ygu({[+%5W5-D|gK\fLȆ^Vs>Ҝ9[k6[O:#K#{L#^)C?9*6mCJ iBNTJaBv8eYhAE(uN[.u] ^lj3:bi8̊b8v)NZs[Me?x[,ZR/rx-i}thmYmXˍtmS2_x;1T|:gu:\L;|O?vߎF0]uhjčy{qLIi;tj֚B(iI+g|ѝ}.eb}qt+_?Ӷ{؉o{<;wR(Ox.k69ŅJz6z>,nsi3FM4=(wiW[Ǽv))?!0 (R-ج$=p~Iyf+\YK`T𼐸a|gOyis4Ag @O5%S^`ұOIyyB)/=R⑎}J˛IH@R %%%%%e*))))))+THIIIIIY @JJJJJ $URRRRRRV IH@R %%%%%e*))))))+THIIIIIY @JJJJJ $URRRRRRV ݀/v @/< PAU*jHd-THIIIIy@TvPi^,@ ūKl0W*))/cD[/:Yjs}뉎81whE4cYS2u yISR^!Ð{w^0<ϗ.˔#J-!fzzU[QډRR{n<{c 5Q1==}kbaaz~nQTbzzjzĶ6DQt}dF:DE%@'H>Ӈ}Fb[eG9DD+THIy!\.!??EBRmz7#kgk?m[.x?lwaa믿-p;|1IC))/C/~ynvfffyk_KPyǹ逸bnnM6}vy7x#R=o~l6 [neӦMq.Xf o}[x衇O?7{uV"೟,z\{tww/0 _E֭[>9ǹKkRr-կ~}?`߾}^e]ƛ&/099dW~3< u7|#tI]&> >o{0 r̶mx[g>mƥ^W\?yy+_I__ߒ/7~7X~=_Wyի^վnfnv:APV2??v Wo .ছn"sgGug8}dlȯWNB(x99~ysZ]s!oے巿S#xmynE$g Y<1c$pR@Jˌ0 ;y}'|._Wᓟ$ qWl6җ8l۶CQ.7?a &''wwIT|K_bΝLMMqmQ.Yz5۶mcǎu*ǧ>)ԧ>]wŗew}tM\122xH>Ƕy֬]/xn^:[/}n~*JOxӛĮ]ذa6lছn;8CCC|Sbll fjjjʗe{v;3 /RJOSV;}ơ)L5"BCГXPcI@C\[*|ͥkm>)ww YSD>P~\kk4[W,!URR^!;v`Ϟ=d2\r%,,,aN9&''} )%}k;v@:==͖-[(JDQįگyx+BkpfꪫqL޶m9v&a͚5c&arR(x'?!{azz!x;}oׯSNi[?@`&]tL7rSיbl޼;v \xᅜ|k_V=wddH̻[xܵ'P)10  r-XmpZuM4`[޼$T0YS<9l*))/3Lַşٟ1==[~g~.8sr1>>VI'i ӃeY\{ x^֚;3<3<{r'344guZ;f!ؾ};]t߿-[\r \s5N?t0 1 -[#O)`~~Op5אfJ d2_Z-[>sssa֬Y۹koRaÆv=…6 HN3s$%G~]\ۚ™Y>zm7OGD |75`Ħ+wIwˏ6Z5rV$%֚Ir[W&h4p]\.GVT*Q.^311UݍeY177hpx8TUz{{hfQ*L\.GСC  sss 癘@Jay:BRr}} qT*|%c''|&2::J^GkM&i1 C8@>ghh c``49p]]] >4Mu]zzzPJ166RQ\%ǡhP(mh%捍ZEVqrSSSj5FGG,}^˲0M rlL&vϷdffFA6ZF\&ˡ(w擟$Rj8}}}m{$H"ijJ6Jk暪i&y#8P$.)8;lIWL)YfG URR^t^;3V"?;չrsݗO~}cr};=r-xǕW^vOLL}v.2 8f5VGkrcy<.7G3Σ]:妛n/fƍ/ߟ+Kow<ߝ:a۳vhB9+dD  7>/TBiEu]#h(='4<.+pq)s^\?2&(Zpы ] (URRRRR^T~*$" D@Z %%%%%e*))))))+THIIIIIY @JJJJJ $MLYsևeekM[&U[6^BߋOCRR^ @ʊ#">Ȑt[-Ep}C#Kh^rl>K6! }Ð"2g倹:===D"Z'p]L$ݙ6B/0e\yhR_ g Jӏ59thfz*diyæPtGPGO_&):dbbFA>c(:84=6$jJ]}\0XH!P@X8 ZFV djv ̌`+6oSۘt17?];g|?:H@QJt S Mr^"m#|fguРYZ^\IimL4KY $`Xa $:}5nϣt|8!((qvK4,^,k,€L>*ǎ#D˫A" rtU2­3Rih @ʊXHj;kw~ad^:-V-.\k+ B|vLzZϯ0356 ]w%Ұ ?@v ,'8d,|4kH`4v6S4&wl԰M)"~.f?RXIOOBcf!|*e`򘀝d38,nc\R(tw13^ZBDz(bRoEeb6GΌ2@*x&DQm7mO4]FA-y!ZB2׻ zgy:}=]HicnچC,NDРTR E[0iPDhZh["S`Y e):8,r<~E鸿N6 $/Fro{!c( 7 "Vh!Ȗ87ҟ36:224DqLbݖ!D 9|9_Gߓ/F e H贄:_B$ x hQAHVFAFKE}ֱm4 LZhe#-4|4PQK/CZǭ1i嘨X^5Ϫ}+SA w YBX Cv,2B2>6q(+6bnn)lįWTjUj*֬C ImjNV> 3MjէE`gl׭` B1]Zui*AWg\TF@ q6C0"DbFb96eժa2 brz z(Zc6i4&tV%JGH@+B!l0^Uӱ"#`bOÀ I2ӤCcvĿ ^({=eh6=< \ @ UZŊD"uixw,| h%@ JYY1 r oz>kH!;[~O`&Av|ԚZCZkH!DJAF\0_Z?QJiM__ PTjH9{/ڌ`azj?ЋFѬ,!QHFeb ]G>n3 $@*b\@^cfA+CP.Y;.,ˤ\^+`J!ncvLAi "c\fd(PҨyryC$f0l0uh0 пʠ<_ga]}9 YjWG 5RaZDh)3j b0R7=fffQn!! CLLPn}bXBY@?Zho!~hB n%{hA-#uR2H|sO"J-ˑϗ"S鸆K^g-wX͠6@$Ji'"HV :4#s$kmZEkeйtܒ @?pV"4Xپ)E;Nh"J/& ( ϖ!Ѳ;q%?_FEE+ ( kMLǢ GIZg`hngk!Ap @,{!Xn-ClLcvvRo/BiZ(D S }9L3G^ZbÈB !,BJVdMwL7B,eL+"cхa/pQ@5"|+D@/? Հcmb |h'Ǚ%k٘LLւLHT2Mhi4]С4h[p ЀB!M=h!XB"r=d)LaBPx"2^BD"q$aώ\|tDƲ&.L!&ۢOӐXC,1_t>nsp7X7ѱyX)rlV0q, q *{[7V$;]c$q(0@"ȊX0k)![>M)1)(!Th кíGlY$i >BЄ:nV 4d_$4tITKl\J/yErbы:~omY7:),IDgRsxbRw|9UJ[$q ~*&^@`rYzz{YzVQ- t((d9FH7%2cfTʛ,iR)ljJcYMu#L0%%)QBSRقCdkdDbN5PQirŐayd(P2 5*cBhГ)bvIFQ(晒&} T&XAЄ5ݬ?9`ODžcrəi*2_ȚD%JlL+aHHS5V+Dt||[UKnX ;BöaYB|(!M<\ ghT~DH@DJcEYBFJ+UN/؃dXB v0VG*FxA²Mm8m,db\,>ʢi"(/ 5}r+F@0Eb EF-%L-@xZ.:ф,aƳ(=  25%2V PU&nVpbjpEĊ!ZoE[vX}Q u",IdE -A, @6 /Q$@b%- @$}I;Xi R (IJ2he?k-u'EۿKq=˲lI'{ulۉ^a.mKr_zOδ:@>֭YDR #rEH\ϡ'Femtư3D4 \NE~8TMBBw>) j*3eGeK\PBA/C|פoj,dnF&St,2AOۨS,{kB't?XI|GED1Ja!⩣sJFe(P*%q;GT" %Sh \Ҥa4p$ i"g?:Qi mTh?ogG*#"@`I5ZwHb?S0~p(2y2:ҹ)M*(Fui, c ,S`C.*#@Iz/+GEҔn(㗎9h߯unk8r ]`ǹ(䓄+KHL?HX'L!B`J/"r!&[!і-ZY*ZF E, bu*-uÛ,*Qkmg!J㡰j2*Q\"L XK4fUk4u0%hj%4MJO^aǮsʩ}l{80>$ *\&g|*zYh,rU(JcLn!%~;4>AaI@xsfg͍C-TK7@ kZ t4>j5DJ-Uaȫku7vD D-DjȘ&=}nȚuؿw7R7t8?Sej6mDx6eӝ%u0h@,6"M)Hljئ$cJlC`JizV _t;ߑZR@;"E,3 B$!%)B ,t$־L҃N݊XJ8&tK{lYmZ~ֺeHY@ZqzA`G <$6@[ 䅜ױWI07LjBc!g&O ?IOK$3d>!n[=/۹m>CX`vn.N: S2< +P(Q(T5TsH[hbYsJ"R7Al^ɘu(%3 A tRQ1r釲cmw"Iē ? Y!p!~ h+ V"č8q>9_o $W"lt(8 i)bq֒V9Z@b]%~TF('YZck Աw@1ZSKkP44ĉ"6X{bYD϶ZAL:|q#G6B`&3ITaH JUZQՈF,l^ LϠQ4TOձM;NBLQD@a1=UeEhEWfi @HThbE :H٦M`Z@oj%nenz7j!{F5h,D$ ԂիpZ@2plJE j:cS9PkT3W)7C <$@5LL30Ou>#ΌGFah6\M3y`ʫmOk)*0Tf d,L@$M삃B4*,Ⱦf>.)2AP.]YFuג)9 ].z{2~QO=Zŵj=p/#W124HOH>kS!5$ńhHޓ[jVJ'J&~hG˔؆ĔBVl;Ogvɵ}ƯŊQb~ˌ>Lȷ,]B3[Q( b1n`8&.!iJ+2 R#DP"~d&H[ f1ƧD K8@% |\DqA|D4uZ` X{*v1TVO}TKciu+ieg3(hM#ާb?0PJcY&Ґd00 A!=&)JGҠYmblCJj^s8": 1숙4`)hUzDED`kSf61j&P.a`nI}l i45N0 41$8y !% lIEM5hxY|T}yV@55Tb~axlbMrami PaYg"?1C>JOQ+ɶu<ܦK9R;p$ZGmwXt-صQ.QЂF0I5]l b%`MvI&[‹^5\֯b]D:qHNf'x*oP([5 ]UCtQ:8IX#8~G1X%J**@" VzLeJy.Y1 (ߪJО>*cW@253$~CڱٲV~\#9oE+BĞ%ĂV&$"zS!:C*^w(?P"6[BXO d UYkZ` H4Hk\8J+RC( dDFz2d'd\~=9Q:RĴ-Llj +!2 dY"l0 €zAA{*Usi^Ӌ_xfnBWf.qKX4mLBDD)x2麸 $/i>S̗8yi-̐.0Իжdxx=ocVQ@ЬvyMs3ڱEJ}}etZFFF觧'XXD&)TgIR`j{"D(Ci~Ϭ";2~h-X7+KЋbYbd[)j 'Y AA. xEDb7a[%XE&ڢO2˼UO ڗ( - x+Dliڋ5ZݒI]'BcXhˎ}[N%aSi'/|X_{W4V2CH( _$ C\B^aZ&٬CD4A)ju/nL&n)I *~E)TbdBJ)x\/6* e*!nCih]0 21LaYTȕe`w-20-7i"L3juzz3 oC(́5kBGm>Ss^D`=^ aqhYd^Q}VH[Lla2;SQ03y`f( DlM7slLKngn.1?ﲪaIZ 40lk|)0bF155Em~ : &qàЂqsbfCq9 FAG+ CH3 F[Iq-VOIf[xⱇ׿l͎~>w!։&nSci"Zט9pm>@PUYv-##觫DZM,ѲuyGP,5dx?" hnVSɄ)pLiHE=#]iYY B GC_BJJ4D8;EB8o[SĪoe)d=E݉[I WwKc&@q/γYLi 8.+Z8\Kfɍ:ARu ZBQrob0YhD!^ۏ[ )LrZcSd,FJ4j>'uSϓq#)FHNUTr8 ӢZ07߬Ta'I^ 5w[x(#xfV]cۘh.N*-F2-aV #ѡĒf칒CHe^BAJN,#k6x |ףޘaIgpσnf6u&SOMҬD0 @!"HƫQHCT.S۷G\Ho_?ã#Y#륔+fB/=VD LZ&LCqϴ$)px֔XMRZ&6k68>c$v'KfI?"gI$sUeeX"rm0E/bK$ E;]hxmS⪂*ZڛĹб m $: 'C%ehc׺D bIB$Yh͠~`F hmVY` A&R!JK X,WZuk1==ChB|.OӭmrYK%<7$lF5] i/f|_#`tX$CRwlPc9&}}hB\]"1T &n9dct1qE D![S|ZJ۬MtekJJfDW?s6a\ hyilI`KطȶxVkv@"M!xVq ўkHQ;5eI#-9 ġguۚE[83P@+1<(6+x~DtV`4Q"|ѱG%JjE$㐅DVI)ӎгݲ~Hya<O|>LWכ2Yg>d? &F ˴2i)!N@ESH?bvJ.[p4UUu5sc{*d\CmjՌneaf±-e*:Q .g-th 4 !"AyJ&kS,PoШB.F9Bd`fꀦ2梃U5sUP)p;(Rd0nLKbOt$}},LT"|ƹbhV|~FZ|~l6W_YDIauv}k@FDt \q+299TG AHarM'G]հIdDlw,ZF(3AG!j>@B Q^0l}l+%|u8E-aha&Ұ0M S[i"D')@hOOh++`Q9hYKns^ɴ?Ds&3 u+Jg([f H,tњFq ROBʄDƵBGXH:f(eblq^ʼn?-9TTav AUq8?0M aiYؖMZ2v©m[4\zlb;6ՃxeRC"/iԂx f86>N"_QmP- vYY|?`a.`C)&rKw_5 A7KqX?4L7"C2M`;EZT,a&s3sd,1I*¦"f $R/̬{( /xC`sN9y*SYSIK}{h݃azOFXTRV0,ik 2_'֍gؒpi;<ٞa,4SٓGpg*šSrScFIeFM/V!ʒ",i,̢#Ie~(t.M"LK&:4idQ8 PuG=F\EP)D#!MB0cE0b0-0 hA@8iVK( {s3,Ͳkv,ۦPaph5FY3>pXpCI6R$@k(^ʬ&oM3T#7JkYߪ%E+ӞB(Xԭ,N_ѱtN%g@E"F H.) j࣐:^/ݨ=6~ J_2ǎϗ,sxx*_=MMʕ*]](8m%gvO22*@%:./Y8RڃTZ l]9iLL;-4FN_O3/Yz( dL !Q/fdLK54mQvΠm6|Eh3 0-,PAW*)-jqRAe5֛’&==L1;j9BjJ'RNgJƉLA iM*cD DG~d!d7k%b?d yrW=5C}l.n @HQ@iF= ]P±JDA4-n<֋&o#50lq,0ՀˎGXz 5*.`G"d5Dð0M;^30AsÃJ)(~RI I槧XMWa֬f!+F<>M6nz̝k{͒\-ZA zѓ&2,$vvI\咗׎3ޗJ>=Y=PO7Yyĉ} NN?Q ,Ujw]˜[[V]y/aKKA/s@5>qsesr1_|8|fεC4 Z#QW@KĴs5k#QȚRD@; V|b*DTAXPk(9@U2_sQEgm<4Z.g5b\cZ-F\i'8KV #f9AX!1*v!O d H(o)MLm2Mu]) L DJFYNf6B,GJ!‼0!"aь(g56;> 6} хf<щCH!=K$cJWG''/Qt$?{|e-EՑiF 0$ WͻR%ҋpɐ_[|;,%Y`^,+kϓv 2{'1:y1>>ӇぬF^PhSb՝N3z$c)2n2:Q&)8CՀ"K=f C|<>v>ttQʟ`Xc(˼R +[h/@*» pbmmnm(Ptqzx;ot{]6ze-VV) ^~$(D[(jow_ : U% Ugr_\^!Tkyr].MeMn\넠<9o*6Ts|[- u*Y- XmWY WS?(>%e/ =6CW9ezR%ƒrKƇ'cY@{VE8aQA*h 0Xg\\#1RJTPP*g.+ 7R1d(a '{3)(*Y'H+|K0,8Gg'>㓒!.JP/u/\}ONc3 *͈_:r3Wg80AvVoD% C|΃HQ̳.dLxme;+lވ/1n-&ތS>ؔl}V699sg'4V9{xHգZd*$A- 7^&Q*pYS0hW]N U Jm&Ãc>x8ﱹ[lh7c_՝~/Lj`uI{y($'Vz~' E_vn>u^^ϫ %ꥺ`?.׾(dUm2%YkWg*]vj}~<6ⵖww^Xɥf@_UWڗ;["+I%B8ILbr|qxJQVRt]G%c4vLf@g_ k0ce(Oe|/6͍ }"G%J (0N*1S i,)bsߓu@3QF/lZm%wSӻy% )q/$4لj0 O&ʧo&XKG>)D!i!CHVCy]A<"j8DgzGiLYoYϭ !x~Zuh--ݦx}u>}L2aaR7>:ԣ!9ΘBK`JG`D,$heF/lupoQulmH<|~1s@Dc1JWqPULfSNF̲ CvPxh^ɵ>嚼0,!Zyztٽ)9瓘/oW&;w3LH3lN5ii0ua, 'hj(W"4sUEӴuK]iØ]|?3(!R,N$\'xUfBdzIDATΙCXa4%EΥgN酲زS R+_Y*T6SȢU?(顴%|Dq=2dgw7µ+_Ix]n Ɠ5ڿT> Ҿdm%ąO4c,A{|~)uv:[N`!H;t6—Ѡhr 7pU*,=ν(_ E]~:s"jel+&Z*hb#FtTDT{!yh},Rd: rN"ɳYKyk4xZGDQ!*kxFKp"knAs h( +:XRR6֔xyS~ u9M^Z|s|F"EX9*j!=7^dv۔< <0 N+% 4!Z/"N>NN'2O"\SsB?ď$FSK Xg8yy>!$23tv\׃3$1+X ᥬGnz1|OaZohyU[ī}1|D5g{ְYUgQv0TQDJ!+aTQ%b !Vy!+ l}6V̷9O,|}_ .?Fɷ1yT=S`WKSY+ tKUc|2T"5XthcnlA9E?yJE:a>?+vv_%CbeBc P|ۜOz]bi7 _1iJ/@[=aŏ`*OzZ#@%v ׷_epOr:fGpq)W<:~\ܽ+wxя 9?t+c.^Qvo\#<}q=4UJBB(V@BTRfFR`Eu^ *f l iH ,0pLBST/}Nڵo꧄9ޣy~:7pmyLs\9=d~or u[ J@_׈G; eJ(D}SˮRZСE%-\Vט{ n, YZyd9ZjKbAB)65C;cY,j$Blm!6Q>i2B4 (W 4 )<'ɝ "YT3pbK5 Yp  mA;CMlsS nqvyZJ00[ۊDʔɇ%(k?!iJKXAH9hAOP%J%eů? ޼F!rG}L&RF65LyV-9:9a417̱FNJBx +FT !kV)AJ5]\ X_?e}q !]U]bI`Nax.y~ B}'GyKL@ 睃wN,*->z XO ~UxL`|^d>3!²ĭ0n3|&ގb." $Zk')ay<{d5.*;")йA /W1_1e"ܠJPe5/ t1΁5}Ckf~M{wn1N Y2knX{G %FVDN>[ 6[w^f-sǼW*{O7?!蒅Ya[LG4һ_4wdfB,~o(DN R%wpCihMʹfkLx*1lBUҼL,K'n5hhE2/loJ<-K{29k !?R!BHGֿea}ae;ݣCUs׬'% U|5~蹘}AX*).XK@]\Gy|W%pe?`GvxOWlqvv̏~k>|lF8egyɩ4COԨd2]nAtD7X 9g=Na $0kb>xExW`ٽfpxj,e)6$8J#+pDÇ_lO>3.`J33JRk4f%pV bccIlB+B6"V/ơ 6ҢE bdQ_%Ƃ3`ЕgF#ʫQ%Z= hw8QR4I*` ‘Fj9Z ~ISh o4=s}z) ^,i(R͠?Vg l(Ã̧[VǧtV}tXUa68:g!:F52$9%K]i7( DKEj$ YWB'(4m* 3rFoy6ŏ>𐕫7V3q- }@_t[kdFMKh}& _}wKo@Z&g#T͐f9SwG>`c:[/m[_MRso729{ɔB}GpZKl(oâpvr:{|;7xGo?WoYLTG0*ЏdkJwD&X$l"k __W^exUZQe.w\ЧF%:g~e 0~.ǣ8J?8Ѹϼh` 8+cĒ MD>Jrc|:gwñE3M ?fn H8ʇyH&kkϳX}"eԭ5+Qwk0ōr’EPƦqVg"pT]*d}'N\˶D")`%?s) R/hCf@) 9]Rd%Ft@44zMZ@:+Xd~@# 87O5 M3XmqIŵEل^z)aQZy/ 31`2טɇe -hm2#NMHl >7qxwV.iJKRڂE1n>G$w']i·w_ll+t]"B(E0`h:ow@hcjA3 iuB?-~7yptej\.8e9LbeV?#:JJ3o8]b/pxW >qRQ1O/L )/91@ [Vxˈwųip')qQ7]iɞL'ǐ/2_g+Qک#<}K<Qfo6_?yd;mC^Yߥye[d'^Axߠ<~fwiyȵ)=LXXm6p [ dߟq=+~qviLiO/ܤ1U|G]*ff/ӏ"DQ@cΞg tկO>Sz/i.m#%v;uE* 2(+2~yui}aj^$jh9/_qQmKEF/SL Yt)gsB÷l>G G>z{? =I02٢GGSN&G$r9e94Ir"DnLR4@(Bq'xwO)5^ͿC",ՕrY) :{ ZǠjUD-헩+sTT/Z*AVTԈ~Fg0KDR$Ix<^OS%Nx*~IMpPbXW#CA#fS|UIQHCǔEAVd!667Q1v7o?ᏹяzWwo{u'kmpp}L:9!P>^Ԥ&LP;c)^ 㱶6`>;@(h$̣ ݭ60g?&;|7ټiEk$A瓤 :2IUa!ntR[~R$ ,Aʀl^йc{7I=L!͠xxetl iΧ(' i$ᤩiO>~k =|| [UV֞k_*(EH|u>G}û^A"]@pzxk"^ώ+d%au&1 (Ym( vv]]d`ccO|+]ʯo399$'lx0@gC'u~syaZ H*_yi/9nE~Nyc˭Y3J?S/$JÁD;0V9z{o!ӧ0{2x &!4g3hK4G^. #,ʗ&VIs,y [HT_í֋< WՊN6uV3 k{fV{9(d/Ym,M%$FW? iFNOϘ5 n,Kʲ$2ia>ۻJJ4M-(x24vV-6w?}׿Nc}k;r>Rsi6c.&|FD( f̧Vk6WX#6Ape1EfPA'd#cva`f#ӜtQbAQdmSz mr[p\+(c,4= zL'4DžMɏ!ED<(XEkF3\sz% 7 6}IzBګs*{>HIg$t.:l׿Ž PXgh  fpՍ<"l*P4Hc<[iry39:_0 LT>De[͐IUo,͒3יi4螹} 4Zz:UX,҂F5{^g7oOOʛIr)R3|~WR& DK8h' }&!2P 'c2`mO3B* ̞H$KG0GC18 ",2X#>(oR @hg֞4&W8xHip=}ڼ0?`{9YAst91/4+SRZ[<1o\w8 4cdEX҂T9|6S=$o6_}@s'cPQcr^JKs?FbZׯrstswhoڕVPDa1;hHդPNε<Wwvj?[~r,v9wQ} ڠ'+Q%乹Sxo^P9R/_J\K݅upEYIH%@j/<ګW)t1ni@l#HRe{G+jfd^Q2=q@@ aT919ݖG 7l]g3bfB'wTx4^];Ĭp|ˊ/shPWwnnCA͝+4kQ),8+ʔNorxx@vlorvvB* dih * Y$M Sث4D8CZDa ( /\+\yݻdyPGH |E0eJӢH-ZQį~y)) ݆6"l3Ưa=f(ق2Ij Cib};K}u%-iYV2QB1;[ Z򅦻ڬtaR $4E Ȝ:f)t/!et,(KP^" VIy'BuU,p8SRy+Ÿ1/'$:d(Scs-eV(=$_iVCv.gPaq9?cȢz $_ʭ_=#ǨӖd +Eؾ"Qs^EnrpXl{!fd>> vݥEQ/0 !YC)!vv44?GK%9_.KR^@ EA4BXz]LpTl{rU泔n3I6+G>J+Nq34n6k Iu8be4M|C<gǍpuw&WZxmt0L3#⡼RJ;tm\dRJ2ğg5 }&ŜnKJnhm.ii EAQ +_ M vpeV(B/GUI)v)4+BI' ?)<ٟdt, h6Ȑ<?Fluve>/ }6XvkH/ AY٬Aċ,Od<>ҡt+qE*vI vowIaڒ. ]-"' 3D!X StZ7JUzJ p8K$:giP!y/?x( CbMy^>%d gc%%?0f*Ť N,Aی̔dQ>"`DB+{hx>G2Km |8 E쾾hK78y.#J[ils ;M#)xs6|ǜ>m!=U-;qB34-?~8!/(HR ),BBԲ3rH1~Zɧ'OmJBƐ0Z'd< 8e7dmUV˒WyiRpuX:I%)!nB-J:S*cͧCdƽd#Ng!8:<(˼⎻ $B ty~)sә(?Q2&(ó=fgEQ0uڨ0&O&;ׯuW1ڝ.kt}Xa [.k>:<6 #% "b@-df}sntZ'SOxxr4J)4kk~NoXWd8:wMTD)9f$+5!/-2(0V@L2lhwcvZ_lsQ?keIi4ҫRz,ʌwߣL#:kbɾL+Fn[/W8>~ V䃣1Ŕ"*WI!xʏVfGBS!ˆ88O( 'RViQr,rN3TX8KdI|@۔hRk& ل*M;y{@, jw{ `' w)OP m1Ó#FcGaKDh Q͕_+i[@(UzZr.5EY&)F;2M: (hyJ}U_|̓U6B :6y^w YmJ°c<Jv]V++,cጦ%:HŃ#JR,2|):}k['Aj۴OOI"<t d< #t#Go@,e%+HxQY٦5id8s:R7Hlt1:?&C $6:)aݤ efpF8ӔI8QJ8x>~3O (J#ɋW C&m) VFm(?bISIFcJc#&2Z4&sugmÇ >]p:M(',"bO_#2%SDz2N|4#=qZ0ua$Ї~ 擒^@w 6l,(|Etڬsm H0Rck_k˂:| w fk֗U-v@Ҳen8Kx:ce"~/ba?ԮB#_@" *lrewt̋;}q}gAɐdH#OЎn+Dk+MNsN!JEinչBsE@ԒQ{W2Ai֙cz7x|Ls !gÝ6V< l<.!*)VIYà%"<ߧjX0FZ<;\&nِcΆgHX0O'8Q$!*qBypkciPd6Ut:=È)e))D*j3htŵ^k]aUML2a?h4KguipSP6f4XzGG3!2deF/`ȝt3ͱluYŜ|Ώo"heIb&8 qII9&B iϰn*vHՈ .Q:?5!1XS',LɟN#qk;k[1(JSlA[\ cm}I>c<Ɨ~Ê0eTա "Isb>hR(J]-Qg(ʂL\NG,iU*a|ߤ5f ;*'<}ă꫄iVYrEVn5O6c}2NF4!-ɲ(Xz'IR@HT&Nc gX/# Xl9wujo}\v=u.ݹg Kϻ$,UP^*]:]d,xP8WEe[՛YZ+y:) +~}^|n$88*')^) G<#Bq5_`%ܿXcqVXaj+1L]oo[N!3>]Bs,ͱEsS1[dYt:B{>,Ipu ' OiwS&tQ"JQ*!@m]w$!OfxBB; Aa 6bA;갽u;M Kڤ_'jFt:!֚tVZ$)=sQ=}]-\ O5:!P%(;k|mx:tዊf+DX'it<=%-"`qͭ-l t!6L83hS@:{TdK,CI!KJE1XC'ŭ+lnŒ9RG;E|'匳mR@q2KP/[-DO1;ڧȲzO8 |Rc T<nz=V'Jp؆x''2c走& O$uR|`UJx8D&z:;/ަ-> 2g跐&OJK3-88­-M<VH+Enpj9\hzM\_lDaA,yzb$Y\եt`)*99үX\%(Mv]ti<*o@J ꗸ<_)80<;sv6FJ9<<"QnwX,}L&^F,(JGBQHtJ) \ K͑[;G`t^~r#෾q^A!Z %ꄬlX[m8Mۃ5_et.ó-nx ,ʢr Sh1%J[;lnHOrD1icƉ>#Te7\QIyX~Dn::[ܸ:#Y,NQ.C;UI9َKAqFbaLiG!qs4ٜ#c 7352[u~93ƣ,FdiU,qĵWQRrG)|qN&-K-&9q3K(ъ՘Ɛ/f#t/9~a&T@[˿p9sr+* /uB?ciMk]P|x>WR1O'e%j&ucZ1O)MIA9`xvGġ$ OJz. @j=%.1TJjF!Rd3Cg8gʲwVWWY$ c Zk,EjUPHT0*>SZ0/H ^S`sdAII@7^$`43 Wn:ԑ/ZyQe5Aɍ-n#zW+'Q 6۲ RY-9~0d3J:֧id{ &[/4h>Y=(#9u \!yZ)šrqM<`A!TWG0MybpaVLlAwŌF,2@8t*0d#7amIQm,;X\Ҩe3=.! Gϥzqz9.a4>uat2Jx_assVJI:1ф+Wr=|~yV|c1^1RfS # ǘ$!w^: bIiBA)3`uOƔ%T}t2eu<[pA(!\QhCh()`sK7sUAzNJ2\gtD*? /ÐբlM":w8]Pw9ChDMrFZ"j Vr45-$bLI'3Jgћ WVr2lnkėhkwQÐ2K_S&nvY|{>es9㇬uWiF7Q*GYFF8[%&+<}H阵u:D kJrz,N8 |Y~Oy ~~$*^ym&sί Ka^#K-p{5xl㾔^=3v.&`.RJx7!},%a'k8'0Bi^QrWܢTȹս=Yp8[|J.ZVTt[ @*vܻf:E^l ih8krvzLgbeeS6 8=#d8T':YKX"lBI1*Jh:6q.2zf>?:cӳNΆ||>L1h5Z'a2"4IV̊"b(z;dOt]̣I@a3Gp§]arm 88اԚ>rIPX9QPiFz ,Oϣ#Kh$ tуs^ ]x T&@%W]I(()y&/ oѦA| WoOXkXk8Oq*{%ኜwמo;3J>ˉ6bƇ"gR"Jc OQ"FdgAnYW v8]֢UgoM1Hϧ7't&q>|qld>cBKV]FcβG[#lA:w; WټϽ w{F#H偓aY˰_p0З맭/PPY *j%೑B 2@:S3E.uɄg!񕇔`Ggu+N柕˵Αf,6( AߺB[zS:g-uKijC8i4dYN8wA{΀.jU-ʪ-4^S19=q6e7B(c8$_m*%nD _r:-x.GSrMi }Ѝ"^ujvF0xn*Q#OinBfxnJxA[xm6FCOo%qln(ӂv[1_d8'$+|FJ2!r6VD "1N 5|͍Uf\=<ǭ貨\)%Z5Dm^ɧ>!XE5?>}/b xi 75|绣?jG5>XbLU,xCʋ]=?C>eJ&$Zq=-Ǥ1>*vn=1W Bp4րDM!]̒Bs/qwc'QVKٽ[t];~fWi}?+lgJϬ@˥[[.x>;"sSezr#;Wb4 Q;~|?<ΖTiyZdUѐ~^`ɥۥDg/g<`:.^ 4\ H|/rE2ZGx<ؒH${db+<=pm0h)JmS$͙LǠΙZ='VJErv1 9{#8}S#[wF|{Wnf|L~(+ +zwzuw(b7?8W-4>'͌5Z^E}- ꇄa$l4Fsu*0`&c6Fx>y^ڂ:[uk5X!eEMsÜM~#BO*:Wۺ>yr$@\<~N%kT#3pc'>:>Oe+I)e2, 9I2Z?X,facm$_ʯDǏ0xE:ɄW[Ҭv}YaE4iRt<2hBejuؽvv{?a+^͖/sH X[_da焞?d\ V"IʼFIAχ Bpmk+%>J FM<:8t4nnoFARy2IGVfbI\ߦ$&ǖ)[L)fȌG{iGOϘYCi'O7^kN1UT9GS1޼ƘGOϰkۊ:R_,7l\&:1kKֶf(Y45ViDQD6;4hofXg <̲wp̽MȵbBRdlnrd0H\0tEMb?FV: ٭*J[dortJm }?~D )\H*l6R%ϦfNGt?<ǧr_?n (DIAhrtNN'\k%D]Uu($j̓~?.Xiwmϐ Ͽ j>sp2}fbz+()8 'g-٠ԖA{||&ij+_@ PWjv, :/s0< ,YTMRR! r@>Կd T(Qt Ř^eM tEQ(UWU{Mk}oWc8[e R*Wa u-oy_8Ϋyq){sdE8{ZOZ,(K]Ep|d23 ft:=~9& aq>ٌb8I%ssp1`D)!iJt@ \aOQj̸}sׯ10]9͆lv:6bK*&B}w89qu'4>}Xgu+zFi @a1XO^يkX[c# 00;=}&k[m1e￞$K<_G :*Zn0;z{WЖy_H/;i' |vi$vryճFkQ:u舣ݝ~"2 #vhV]Yq+*"cOg[;뻇iּ_c<:$P<EZ\Ff0>M\:JTs`" v ]y['?X ?9BĵJue[W}.g] l9fryA^hthf)c|z쮈6Ǯmg<6t$nm?xxE,I$0h#N. [1A1yl"$<~| D7O~C4w wiCaKu*ٚ,# h+>&O9>4;7bNDWi*}*-M`k(#!7ٿ,[7ooPU9\Qa$UbR`%v6btvl|l=K zyʍ/?1"_X~] hBS%:ǔEIG]@1H~O)dvoxcNgom?_&,K.jȂ`T9KRji{Ŕr>fNJNf4y=B-87IT,MU˞` mEHg.~!qM6+x+ӚNMgw(cA&ys%'6˜"/1j|-G!ٹs)EN 8S ]h>L3R}?2gfaQR)O*<劁ّmVрm-BWX" wFc~=uJ7v{u8yHU8X|e4YX'ޭ0ʪ*wX,kgpd\\. {y82`Yzь0AlMq7F!LE-VF?OVW<{e~>+^+z\e`\z9c (RdCW-/ B?#Fv")ix4&Z̧)u]MzJ63r]bc"Rspcoo?9~.3bG!M^-0rwx<"][ڷG>`g a:9.˧OFy~gW&_z߸O~c.=.\Zmܭ6'X>k<}R޹ c6"KIr3e|=)LₖD~@䷐Q Y 00mP~?&0pxrvn*bKmE Ǿu4>;_Z7c<کA"!ɢ݃eKdmxgʚ;cwnIj,?Cy,咪R5%݈}<U)/YMY zp~W9IXU3 E3 $.WC\# IVEW{+A A2 1Һ!O)B)j>}\WnVk+ͭK)1k-Q~ RZ^o(0c&9EYB@TU4L'}%j fu9}( i:GJEf2ߊ-`^G_1Z9~o:O::=ac}5 a-()ŘiD咖 fْ "˂(ϑڝ-i,IƗpS.oE_xTƲ޿>_׾~/.?qpvy/z1puboFkўuyWx.ނԯ1fbG-<4`2ga-TWI<*$aSJ%,}d`A8dvFEJKHzz^!b_:5SVH1vak*Q Q )Yմ8TN& [oE[?'#4'OS]uZڠ“f[a]s#%d}*V,oWϕ _͜ud3) %K!4k,{%x3j=q{KVX |IJUuʡO]uyHhW`_o}R=c2kkU_w^ \=Wi-ڊuށiwRqU(|Z!67ιDIJP9$! [=?'Kmncmq+& 4CJI*ZqBUi2]-2BlAZXW9ۻ&)՘$+Ɯ=!Q'aMvs.~Dvwph|A39V)DKd@aݤJ@XM#jɲa6R,˔dJdT1%>ڔdjL[b>O,E6yY3KSq1gr/u_#N?an Һ&Rm!gǔ77\ e}Y4yS--x ZQ@1KThaiuV+$im'a6w}f%kKVL ԦFZG5#t w$I_(*Jczb'/,(c],T ݍF8Wk*ݶWoW&>k \N\ \qŕP!Q~Wi2EQ5c Zkj?(S_kߠu-RUksb]+ vmelU2j!u!4 %RB<<'LgsƓ)u~IMf -9y@Yuk4˯d*S1V@ }(Sk( % R B)DsnB1="+f,')4()eY0+$~jJb6R,fcj$Q&Fy , Y%6^S~lTł*TCJF$R}Ήˋ]E ]j]SYIՂMA[{A(J< J-ǁ|[dyo+SJ!A­>8"|#:z!}kw502307!>B`єRkfƜ%wnݢ'C.Im5R(O0FX@Y zMtv< %H(![1llQUc (ZIT>cAJ3 B(ܦ~N3Ϙ&A*r溶noC-\6*@mLq\!Yc/YZUk,4(W 4zmJnv^u/aŵ\7XQVX6&]̱ZS=(˂(˒0 1:+Z-uO5CE=!s<ɭ[TUE 5䏅nt:cTsڃ=0"n%E& g1A"DOȡ:×KM9?hS=TEF,, jK/ L[W:'NGT~H.,:.OϑBmX2zN.ш_meK/YdX6g!%~|<塔" ?:mB\*CvTBa[-edSpǧ̳)gfB%jq 9)}Ĥ(KfANXkhw6V))*0  "/</Nf^hH٣q_(cBD#qM_buI/g)1Zn|lwhG1JA.?~|2g2rƮRqEyXPMUm0>OGkkdE)ZR,qöv3hC-5nzR\AL1לyVWr&Oh~}S-?qP)Rbm ]ɌFJ `pkk%JV:JGk+'|W\gu^C6Xz%3+U!8=;R9Aa}E*MRW"E)IGL'3ZQq]o}3L0GBlJ]eh?D) 7,1f-sű)%eC%]O# $dggg{~F Z;1 ik]!AJ}ཟ`􈥷V%}fޱ܋v+#dOԺsjv߸ŗVӷZ71 CG4zDQxBH jFѮED)%&N b>^cf`(!EV(NGeN\Ʃ<bE:[j]9fb} {ͽ0ve"Rc1O"LnYVgc*#0$nhr#,,U)"$yh4^UEjX,=kMݿwU/,BLǏתSGdnД.R&ŔnCxCv.K=xݍMjrv{ mZ]j0Oû' sZͽ;>׿&OdG~ SVD)xV* }eeEKڨ@`jü(詐]40-Y1 NMQ84ES(ŝ[Xz>aQ5ŒrF{S%m iOfk_ۂxI{.CI#E3MApVu\ 5Z 5VHy<8 Tx*DzΙ\)٧x᭳c,(#PV;ElHtvEf^R^مsul\`Ay>^R bTH[gR%i1[Vµ lu^x| ~g,KNuz}n Z@a\\IA!ݡ/JLWaGu_tM3C>X.>Od 3ofA&`%a0mNgN —:c@c`Sb \']#7Z'譈+hpU jq@8/G;UI׉KA#|Ow~R~)^%,yI0Zj$IBlooqqq{8;;֭[ܸ''Qlg`QMWu Vio{pUt6]f9&C(w"fKe,k53ZM,Om?O~o?7UD©#큢E:#lM~|F6~<r TEIiw6”lnl9S]8"S,E'ܧIrx17v;GIĴן E)Q! " _ IX򲑟y(c*@) Fz5@Bv1OiB"Jtو2m|r4D)~(kW~`0SIÏߙQW'r-|o%eƠS8"PiMUYakMʦF&[I)H%|,20Fݦ{O~23_1SVxVEsPO)/+frMM`!/+vMaB T8)NuL0)\gb5lW\1+Ok@Wנ,xں` 5 _scKIԵ& Ct }6w^_}]9UYsrrO-l%-F'(?nu]#6REwc"eŜ؏钨g:\r|vNU\.MS|?10ٜnIM~qln ^}vv8<<"xۼnnbCy@1+˯钕w~ĽjMg<yscx/[(|) "/0\0X6XzXBA B!zt;X]S.RyN~1gI9'T(a]6OkK6o ?A]UTSc9Vbn5B 70q+ e*\9-: _9ĭ4'LXhR ƳoW?h,%"(f>[vӜڳ,#N>)U o{?zq+*+kT@5؟/>5NimRZԍ  ӮhN+ɋXp?&C6,yc! ̅=SqHegg*A.I t;=6.IDATg?&3|DQ?diacBgg<`k,>l$m_UDAN%4v;DoS ]/XLX A v24+Y,N C y.|1gg=4g7z"tm(0 QkFSLum QSTg *XT>(E=z[ɑ+ 8z(dJӣ.Ka೻޻q!;{<8=Eb%@p:s9bHW\4dSEwȯfުx|X2K|6ݻ<}b<'c"}4Ek+­[7YK8`6#c-~~;9n (ˊ2e{{~d6{l-կ}~^MA ml/2OoaQ9ay)VU>M>~/+{t+>z_1w E{lEm.sKe(?ښ Px^@F1[1E{<`έ)X$m>~~i5Œn>ɐV+fk{hmx9Fx/Ȳ\5cEnE+B Q;I!)˳\PST5F/ȋaC~m nO?òN񽊤#{)OX g 4e/ӔҔiA-*&S=al1-ܣֆB tCպJX!кE~zԵU-R^< yAPw=r~GMu5ڑB $R{g_&_Ʒw;eI:IK!I=&M 0BF&w(b0H|#0r/M#k͚5d+7i+3*Vty~_4T[|73!N Ϣ*sd =%&ޣnS5;/}%Omm$֥_+Vn5X!'` hk֩kTc* m*inM1+ 8X9}kvv]\0^eٌ$` gg$!矣v0L${Da|ݻy3O?^*Lt=00Lݬ B0̰(B PHhCChMqqh8d43|pgA\+ƀ4cL%g9>)eV3O?×kl (Sr'j[g`Rj/k}IUf5ys Ӧ(RCO|ч7IC+(3JAd\pUxB`J Cc`r 5%[jVݳh AI HX 2}-l&[>g(s:]?tA0++ޕN XIVa>b%3WGRKKk16Aꏻ4݌Fɡ?awiG8n1M;XIu ZsC:m4G },FL#kks?(lmb ˖'# g@Z-Z6[[PV@R!<ųn?;ؠHi; 4}?y[G* td4&_.h}'G?b/( _D.JXDAadYRJ\głˏ<{sqƠ뮡"c2""-kZI,e8S Pow6ٔt~F]Qh7qi7} ES~3UEeTj5xYZ!%U^!p6TuT5eYRUu k<$- RVOgZGYY+:݀%C|/S\AEZ.bk͠7 $BxR9uUSh0t]|xE]E,y? P*DQW%BӶ b>[kmt''H(rxȕ#ˊ7a4a}뷸s|"5l?vC`תaVWhTz]ҷ[ۄ)9ޅ\@_ƩVNu6AjbUĞ/ʚ ibI;I8>=aXrW^z$NeԺ&c9>3_top12i%4qa!I<<00PԵ?[ ?gS&srpc ꚾDEюwF!Gٜ:36e+M]j:I ?T7PBD#0NƋ|飇ihdk7yCv 9YQ9-`o{eRyPъ!ʨrW0Z}eX J8ݯ&CXNt"6hJG!ЄW %b&`uI#ؕPsS_=6ottJ+ i6n@so Mhh]<*dswwxBgw ioU|-`ÿjxe# 8CQ 6+L𗯋 YF0<9C An1̸D*EYULS666x=+ f)f7xgh% ~1UUsyYpzvx<&cZaDףnwt{'?a4"n8W 1OY%sG79hYzp2xGzޢ^H\3!$ݎOjglF ;T$,g?mB,M.d^? Y5^U,fSytrqp\Ahn"fT# ]w/+ݍ1 Z>1.}]pA aDF>IV""EIwvyo3sq1 ̐jDUyFuv3h)9e W+?t{5&9.dHAc ]x\Z?`(Q{ *<ߩR_L.̳riDRH7ǽZkan3v^unh'-fF~U m⍅L.)V3ɴ PKaki%ɋ)]LpTE;U_U* he90f/+!օ!\Q$Js_>Uey'X4qD@[$6g7WڋܬݯX4>a\b94Ytc$,x|3Cb&˖l7i%EYMt6ekkcZ1iQ՚0qݻ{Xm1DRpvrB7I-v61FV&qB:'MxWWO/wy 酜\ѽ<37vy; zѳ,cN#C& ouJTAoPUIGSVv1C$YuS,<*1YV%3׎bƍ;lz<~Y-:aL{yRVnO./^^0HZ->o-V EV f)~'5Q+TՒAe*5Us\Gl0Vk6vIՊ[-Wo-eU!Q`C#/K|Ruv&وlHMV[UDg &R),.3LaVH{⇁{eň;*CD< 2' %$QV5ԩ\]H)6S~_Un mk`!}_Pc9=;G?>7a}n w7*NnfŕaOa]sGXױ^1 Zk/57H 4ޢ7?Ӯl-قc9~y. ݡ"W!_O=jh$nuC&hfafau\ks{}Xո)&`"ik)TMn_XlSC Ai6m2goK+ݦ*jz?[,)~H)}./9:g6 < q+&l7~*8=O`5`7TEFFD O|&C%VCL>e̝]8ޡێ9;>&n2">s?9"_ ']^=m$L1JEU)b11qҦDٜM'dyl:lxkn=u01Kz[ݾ\-26ޥIΖ&,%i+!*J!,亦NhyNT C60*xx>2dL-$7O&1@܊y1ۛ~KOODsnȋ-hMn+_'hs`+%A,((?;Q38ػH =D([wۘ(HG>RxaLeA@^x^΀,is9R,KÈp4[2z5V~}W\ ] w1DJP.s#[e73ׁ[O9[5FkrwA˱+g CMI%2!K|->֋B$ݶ.W>"硅N]w_W3Qe4(:00UMiJ|?@(u(@UM B{utYQTFqpJ7#7 !cV%YAQPCYV.IĀ*}bqzob)NzưZF<+H%uL}hYS Xope#Ma@CaҌW%k߱ tJB`&xUЮXΘ4EUJgo ^ww܄O#[M ׶gwrQbXChՐ , ,BbB63Ɍl6Irw6[A)шSNNOݞ^|H 8e{ke2 ~? yt:C ?~8Ba cn,=ء^NљaWd&Cꪤi3_ ͨ$llox}[՚gĝ.OmmPg U0`m(tZqH-SfYA`c(˚(𢈭L)[eE;mJ,3 <' [;|JV=8<8aXf+nɯW8)hL7V{su b<)r_Z!kx]+ȱ 1Ta/}e d\fok$[qKx~@3YApcS/f:L&S$&.N _ |NYWI ^Ki%7X,s6lIa Ǐw;=69'5^,)7ɥ %AF-bk )/oHB҆\L'\Lt OUgK|PJzJ95t#JHk%|0r>֕FkR[GV՚g)1n!%^šgD>BIMy/)G^tJL! w=7 VnZ+ƵM? o|0d}~ )tɧ5kT \YwFyxX< TAP8(޳[8'AKjle378@8{a}K]C+Ujb|5pHnV"]4`uMg_q22x%WeW45kd Yk {V}E^OjSER*kNDQb.`)ooDIacOii35H:YQ:47v) lM+ llnOwA]dh %iG!/<;}}= .S"?9gc'-*EB |#ϸ{>g;I>F 6Ѧ"/rՄbow%gKllo2]. V.ɘbҖp:ĄKVUȽW$n-O&^f9Ԛ$P*γ&NNYfU_qYk̳N,RYA/IS(ƠXci EYQpR p eY=s 9[b9GZ|V)%E}P(O Sy ֬Ac4qiw/l+̩l9[AB(j4#R˃%W k4T~ oibՕ#[ZS!տέC(g\ɈG!ݸy_V-(@XͲ]irMGg*OH2XtnT q*+pGKt}<Б Qqn<8o]CV,J_O\y24\Wn>hO |"gRRah +phjVh ҕd3B{( %>hV-f9eY\y7<+rEFզmH_䅃F  ^svwIݍ^+ B["=)9y;o^t:6Nˢnߢ5~" |Ҳ Tpgrx|Xǣ)>@x#=>KK>E" UYRFPzf~:`^8 ⤅Ddt^rV1o:VÀdc pL\+ʪ䩣q11NLgOk|8b]dM`(Mx+ "5buAa$JB1e99󟂕D>eef暖'jpw}+BZ"kRw[Swx_a QJP%6a+ϿG N8S[>ш]vYpnmV (X--.aPH +xqk);0+kݿԊ$^CV#_>(C0MѪXyHZ{kc-em}Zajk\1c<8 clTJ)мO<ӚNn0 q È,]I矹C2ƱG(ųwn`:K1^Lg,+P1A||Rl9ˬ{%nv͠7@Ik /*|v-,[;ߦ?`3QWb!MRY,E er;;"^kJ>yi>z]]%s׼^^eq;Jk.޼yף_)V7XB낚VʁXy8 }.?჏> 8gv $ ﱵ|{e^0`EZ\d`m4a$-^|9ZOA+&extIQtnޢX.6 wH"2~ M\Nܺqzn83,e8#Z0g ݥD.yN1Yr91/x||''=YmwUI][11qpcFEEX2L@*%aEqaҜ^'iH'/+N.ϗl^ ^׌!sJ0Zc5 Zcy5yaOÀ.C[hL~.tM3NL[Ri5_nt&ŒV|?L"d6:^“ B*,f36v 1 r>ʙ''"e2td$lo`JٻG-NOOV`EO~?lFQ R|QxvM, qRn6t+WYerdm6RyN;$ 'ѺrrjW,-80sګtM5JdfdT>Q)I- q"k-U1$I~0 ( m Yy!a!I2}wiSϨ_: N-e&tO*j]3N/tmZQz- e. st1EUzyA!X,LXjpN+[ޤ#=i M,搶v|"}ו2%(0a ]ԕ{8C4A, b| m8#譌ҁ!Hzt]b!ֺf.tpu:l!V]<|{~WUyڭQ|M^ @^gJ[`^q;FE Gl4cdhxFvs,z;'14j8gUhjD<W^q$릫.h6:2Vehl 7}жW} ,kk{pڸʕ67{U@;K7i1NS-nٹIyT9g)b IY T,gKK Nsdf8Emj+f2!-\V/yGݟdw7xxx'g c<*(!\l:dHQ'su{Da͛YNUXc9;?$%ۻ$ݍxƆM6Lgd( ,+6ljHm?(ˊӋأmӯʚr2#IEMaZT,KuEFAT>کs +"yNYVHvxbl(7ZZ(i0uNjE]Y`-*ɖ ~|(qHdyN!*Х[Q D%ֵsٳQ~*O~~SհypHbuEUC6;YOZ(jmJЌ%N heYQk,ׅWj<bCNx;/׿/<)?]BVMwޱbL +I yC5F6ZB ,'aZA p@%enqY!˦Pה|zWVÅto]s^7P^CO<6&^XJ8o,-+XACpv͖jh4\b*~ Z2]3iwT3yhfٜ2]zN0/1gɌzEAb<]fe`s ?P`itqs7ZNG9‹uI)PՆ(dVk@ M'3F˒\{lէ_ 6Ixp䃓S*m[<S%Ӆ#[ ([]&V,KTY{AAcMN.e:5h쀥Al>Dz!_ t((]"}n?yS3!ΧB;鞐(q'˒lv+niQ%Qbtfܑnw/iiOT%q΀RaOƜ]R <)j*g6(0NlV:x4l]S[m<ύ 2'aLUDuM ].qkM|r-wDqۥ)*lxI+>Xa(JIPh]MOo[X\K5+ɰǟ&"(9),n?g %ݕAjގp{G>w1X!?phzMsM%>W5.K׮= Ofw~N\^)HUAhVZpAO=zdF E^d2$nX.$Ty:}j+gHR9q2:Mn8قh!8a>GZC]䤋9 v6-"c:˰Z"KYL'LcdJXkJtZ }X5,Qr38r4DB٘dfi3_Ft[vHu֒yYӊ ڭ)BqR$ZaEReU\u$CBHrz~Oft:ڷ]!%Ե_]m/XC6h#xK.t=}rg B($TUt3B?/sQX ;'[kY.3<ϣn3/@hyi4l1cp6Y֚-"g4RW9R*<<ϩ n #vwvW.1t[ܸq t{/9<=n>zEUË3.Fcv=(nbdYdXrzzFs<~w'|o3sv~AL!{;DaDGc999fx9-./zĭ"KL:^#j p~q`{s(} _}M|q6C%\uc4eS9BHz ]1 0|%]},y fQRɊH+PMGN=/5ZX|6`^5EY:?ffuM.Z qR3=ZcAy#__7硵@чR;//6Ѽ6KqQeYP k}c5ƄAW`o;Ox>$b{g8N> ܤ89&s5ZVEEA-t,3rx2$&2}tEyF22JodcH%>5އĭ]h&s/JCG~>i(~ߍb8[M8g3tIdjg'cܧux])%",S(a1[`lMהet:f.Y,wey VᄛCB0I$*SnӶgcq{OKǖv[Ʀ#-˒ْ(ZbA @ȡPn'> yn=Z}>ǎϱMv}WW:*66ָpѳH%p"؊S3ep8$KQ͓O>  evIϿ!vۭuMեәmUXK kjjRR*4%IRlmoneI4Ш'KIB:H%k)NM8c.CW?ޅw)J&Ih@dL.!mQx Ҭ7R g^*sr4D Ofå+(%λin};ȧqu3ӑ27!Q5) 3w :cDHI28grqb Wdtf:?rv'CK֘cJZiҞcG#`WNsD''IRT ZINaorT`3?;KQEΞ=|; gZI]Y-ZإNS״QLr9&S.JQ*è(8zi2fTXm2 ?P۰ݿo7pRoj:7]$6g^%/>hT8;wc4M}'{~ݯSmCcB]؇HuR/a>O;-_ V Ҿ}~՗GMM|&[_+8ki[$uH!0u1MjUWEGNaER1xꢕZ i5Bc&Bͷ"`~h*$98he9I;A*A*h}BK< B5irF El}u8k(hyQ D$IyI:VJ%3jԵoiͭMa`u|k ; G8.hH,9xk4ZWχѷWRcZ*&{2'&:LJIL& &`ϓM0L01 &` &`bL0L0$` &`=I0L0{` &` &L0AL &` &؃L0L1 :xfw9|G|kt̶y{}}-zo%9fGay?x=~Xұ[_/Cngt V0INE2-U6\%>SI_zlU;HUؿxvX:D3CϮN*ȴ`XyF&|*IRy]cqwaɴ@ʐyTx{Է(l-jNCttS7=Z@_'Qz*U]NkJ&Q+z* _QƨKl+athaOg>;ʓ*H7/w6mTc7މ7 B/}i>yk\€w1wk2V_0J֧?*钳OX93_-#:g*VC)(C_871=wO{K_%|Rg{˯ *j( K>w Syxp/l[>wb%OyI3ߖ;29ncupgk"Qߒ{ၳ>!Oc#xFq>٣Jx~RVL[K=[Mӹmϯ>2bܸ}77Wz_ i>wbPy3y7x?}\ȴ̺-$ 5o?+ˠO؜b7z^gld?_7fo*j{Pe|BşE/~E\[},c)_Tj94S-ЌWO]3LQ=?s˲t& ||U jϻ} =62g ?uG_|O.~S=~^yɜ #ߜ=\ڶ-Wޚsׁp?bܲC2V{'GKՁϿ C>[0ג *t&2C~o;I:SrtVqq˲ВT^闞5V_>t/>5ϯ~8؜b}hrWȸs(WG O㗾45/i@Q{r+Y5<|Wrb^ Ϝ)/ e{QP2ϧF JϿxxV3(W[r?x]ߜw[[~/VG|\I'ݲ馂3_!º7-h#n~ۥC_snK>qdp/qV ALr >wSYxbG-fOPŊO>GJ{1C7՚C_5}i++{ZւwM p>d 9|G+k?k5€ۖO.axKnZ s7--'O{zd8n%?#)Oܟp#\Y~6# ˟Ł)ɰ\МٰCάq}'~?qGv*eM+\[r37͍ 8m֯_S9?yO_7/iN8օZ_m=}]ɰ͟Cm<{'$۴4y~+5n!?7ܸYH^0||EV4m-,wO\馂<I4ݼ3W =ഢ4gV W!a~'g޲'4/'yj͉Yܘ#zr_,IsSܒ q$ 3ĸP$_˰$R*K;Fx `P8ۗ.[ *smJamޟឃ mZr&QԞW {2ļFO^ nm>h $$*dZpG3*~+uw21TPϟpt6cW TL.s̷%O^T8nmé4|9y"8aћsu%-?|*g{Wki]1|L0mZz#S\ n c؏Ɔ\MíK{:G{*߲ܶu9A@s󒦓 T ?:R7 -={*_ˑE'{8S-+!-zcMro~bn"82s/* <աo6Tw6_-yb=_jOm}7kχPr=>tt3͋5|ج7(&DۖC3 Ќ*R/n-_ ke<4[}z`%~Gf xrsr^g .,S=|l6_yQ:t<};گ>:3gK~T!uhZ;[+CF_0=y8WyFәǞUq8r7ܬ\;Rs}YNWy[5̷%fPӛ%L`\ܸY;ڒN3-?O39⃷\ZTzm~RُA׾f|t/n>J2_{^8_nm/FG~nOcK핎4OPrߑ.-+uǾ/w?~|{wzxw2 OZ?˝/_65{Җk~D]}fXʝҮPSY;5I?}~ ,.c#N.h޻+9/l `cc^x==z%jGޗN狘޴ܾ/AOuxzM`ou]sZeYrU!xiZTsn#5pq?8 _N%Z 2%8f̶ܳ$ÐN Q!XXxfrV(|J/}q^ }KjmFPGXZZ"2$a}}!W^k,cee5ʲdccnܦA@|n5L'؈ۗ A Y1 B}Qֵ]:.n;mfRWԡ|3 |\:a( tR9.l!x*];\9.m;2>Wa%ٯTwJxjЯ<}Cǟ/x Of|rVT V,K=Ӵq?LOO/~HӔ,8qG}V!z׻8ts}z̦Ԃ4~{<[J%n> m˚)w $ލc-.r ?>Wrߑg>M7\ϐT%[#ǯ?6b!*C-z籫4jbO?~4MYZZСCyν eYrwpNXkg.{lL2;eYJ5ӹdf:S*ϓ+5-Z %Jcǎ,y[.]byy[n#GpaW?~{Zi/ ^gJ~?zs Əߖܖ||E*ETX8F^uQ7fjϩ%͝6G^@wKyB0swƲІ=ܼ6pWGhwNIU,mYH 7-({"}[X#)hGn&wq뮻(LOOseϩS8~8d0\M9ڒ9Sm'b+5O^Y:y$Nf/t&mgiNK5#Ε۴ܽ?ac2 `oaOg,ȑ#:t-.KKK<8p!ItZt=0H͐z]/Qx⚡.,R¾ĺ>ڷ,tl褂 y =_229GI%;Fet]Z _u]s)VVVHӔV4 %d*ܶOyߍ/80xϱS+ȐD N-(Z`#i LeŊN0ZHZpr0_iҽJ0 nۧSo9RϿʐȸq^5 +*䩕8rqrǾl H)Y^^رc$IBۥnsAxɓlnn){R$I'ӹ`iJK]VJ6V/IFq|^N%s}ډ̧T z(R]S#C9^ɔInۗАL5]YhK~জwM_rj1sgYL.cKޓe9ʲj1 z,..bE)1$IV+8VoIg}h'bm%IK? N/]EC}6ӂNM2"*և{dvG7{Fxb/$IBJբS;d nڵ]:( V$}xt,}A6.41֓jdhn}i@8;?0Ci=8][[lmN-&;:xS Q 02A]Z=rG1jIJ*NVE] l\ K' <_翝4~76*MoYےnz2SYFSiX{ۥc6R])y ޚk f[a1e'cO_"ʰ{^^j/+}voz4Lw?\w/]w]w)=߿aXB܍e`:thJa=XIU %>q58\67u=Jc7s?o}_NԼ!^N5~}t`oaL0s}2 &`{0o$^ mk2O0/ŞWL0L0^$` &`=I0L0{` &` &L0AL &` &؃L0L1 &` &`bL0L0$` &`=I0L0{` &` &L0AL &` &؃L0LO 5Mk?8^hbM |o` &`1D ~Ys9()RBJ AJ RsxI3C0zj¿ǚ2Na\%xp΂ӧV .|)2ԦAx=;f xNvBu"D0Lf+ Cʓ ǹ@֡DɠRA !%i$ Y 0 "sZy4ȳ,|2]U_\e&"g |I#F`̈dVDr` WwdX"9sqc%x^Kc k|{"~3 rac,J)ҔV+f8&e=h1}JLZVX*Ŕ0NF(q^ SqCw,נP"rpޡ$; ͦפ̂, b, s|P~Lw\$Q~hT&s\mm+^3"(8JvaGHG6-S:,h%ꡥ8Rb]&;a#H]IfOr{K{'paFO~}LJ Ì? R8kä(Ÿ 3oJTހCZMjY.wn@rOHnnH@ jF-)m1~JsҼSDLpP:p>ñS$H'@y?:QB{ # &x{i{} 33]l\_ )qrBa25Ue/< -)f3T+F=CY*J ,YH1c4H秙[X.\&E鰕XeuE]tۯȲ#|]`)NRk mizkkR/S@ EV qV-q )[i Txq`]3BZ1sgk8w\H߉8c7ȶHk 飼f߅Ecj#;`XBAD!}`DAmxҾSL;ݪCKzhjmDz~h c, o 5(tڐyS}٥}AT`t@*'XΑE򣊥y x!˝ &xSbs{+WPwPOC(JH1qA!^Kp= E<4S2i垺Ѩ6VZg< &b:XÚZcJ9vlJUS, J$)RW8JBȰ9tbX]dv!$$YJ=E3GҚ&|SpA ރ!eŹ+$/r|XFp:ab\"I)[@mJ%xo_U=`f0ƍ{1!Sh bL ,ʒ1-n8HZ]P:J p&U) н3,Z :ԡR K-+}]^WlNX,\z w,NbZfJ3㠲@xgD)s+qAxȓ7J~d`xmZ彧( Tցs2paq 2RFNYk@uN+-*Őa1=J52x먌(*hPc 8:PDSwWn\+pU<`)Q2G$0wdXZ:Budq%B'H#p8PxQR1ƺA )F8/Ѻ2{,#%4h  HP*ɊaokDcC{!Z5sSc \x؝eeƖ,6G6(z}қ;} 5uY5(>ArT_`PL\uuhJ1d2zۈ\ʵ=s;%!:HqHpCC'Po9Nh$R P[G a9GWyG2l聠 H?N,P-)0099#\4eRa0TRbo  ؝ ϒ8 3 3Qzv4q3^Di_!BDëU׾nݤi a,@4>d a1V:/۝W !Ӕ, P_6P,ވD/Qx;Z5^ZH9.}S`*%IDATC] LJJKtxO*jt%tYFE],| iJ~2(6(wg FCLuuB(QW5\a1E;r9OR N &d.q#PXSacX;kr;s%K!&rG[Qo3&(R8h&x% 6 H91!5[;qP/, Y#B1,*f胚 I-T]JJ-۳]Po.]09Ɠ/rekz}DRnCϹpV J3w sB9AHRii ,J"u!*-}ObUʕ=vT=ڠLRL ,?x z qBFq j4,R ##W"AR5ܚqSw_xOqãǁMv$>>6yL"g|bq!,ٽ,'`wbG˭9IX8Gr ߇ZrjOU;c+暈l9v ~[&BTaobK]zs xQɜ@^JL1 WIbX`8pjbD 2Nj)tsIZju:LIR$: uخ(8&CηQi}?}/`6qF8w>lL\<| A'p o^ *U/`X)ILp#Jê +$*SQOqmJij$)XU5Z|Dh&]%^NQ8I87|SF:N^ar90UY+K/83bj;W^8La_Ud\0鍷!=85pqI/DZ7[F茽[ݜX2f#@ئ%'0.˼Ti5bZ%XR3 ւԃkV&p GqJ^x7S:²Iizښ4ki-Χ9Tn;qŹ GKK ~(I^ \P[o{[`,x6dHZ2l 22]]##!rlmLuhE"|:P1ta,$j3eFKw]YRPgM qބbt1(g=38>  RKHj dYNUG2K`[#)3O$(ʫ[tw3vSÃJ -."bs@>mdk?ӋKL_@ 7s J*d;ҤZiY"g,jFzb _EʕmYz7<~Kf!iSi8C!~s m(5iFw"Ǔ&&a "qf-\,7e$omob ԇt%GmsT|G#eC %8ab'd H[$SB!X,DS)Ҟ1o@XD dL7ݙ=#|?Kކs.tMY@z"cd5xE`-rU4C:F E;ug Bj2HXNٍ8Q%*4spû!HXUP DqX ~vFmjzmyR!U$kxl΍;Οw=jҐ@L8EJHlmpeBP< g$R 0i{=AY(*PH );RrUP4?K"['r1%iMdP@pzElo 缤;{eL+9U'x)H.C-SJ:H()f y?b{RD8"sFu*s蹌}蟘1ڗt\q9z])/txlaqphʲ6m,JP6#NA7.a.(6`ɳRؼ,,^zYD"CW),Nv0jq8ڛ5i3s;L^뮑am f&#s'\;%S5h8^DF`7i^*(clv5>#q&~" AsJ~wj`W7{wB0 y 1  >cPiK#c:~SnAьj? 5^Zt"UtR`CĸX rS):6:|3AZUm( t y0ac@!wg^fa (S+eq>wbHDE~d?24$]@U  sQhu+JIٯ7JuACY TrB({}NKk7/33޼-mLV?~uB#@\58^EwA(%MUIda(IRReHŨYP/ܳ>2Syq6bGqu[nawﻓsNٷ'\x ꈲ8uM:s,o{vklun)6ف%ǹU Yc*%ў6Z~w{FJ6fU7~<4#Ea|3au/4 cZfwdȨhD$5DĴ1mdVO ~룯o&xE3q"jUtt&`=D4 9qw#"OQFtn%fH'Ɨ(Po. O,DvkRV"[æ\8q i 4@N=: ZGA7UƖ綪" -!U4(J3VpoRF$:LQQW}TG+s2IJNT<T%˓ ,U/uF_{$8 c,Ŏ~5TDH4 +}!ZeT՘ 2x㜮9q#m |uq 7/x''O3VGݛ:\(|47RqWrF6Эg=RW,: 5SӒZOQEr CRʧ`*.cs\CiI*.hi9OGwh'f̄M?{1/;"7m,Zx5*/}Ь,JX.V;NvA% '0 8ȍq 'yEgv!@4J^4 imئک]MrD\ͅH(/.,8cR/MBچ{)JjHSN$&h0`vo1JRMpNIb+n\vF`+(^yE%8oNSU:j;Ĉ>IjPJ'BoJ!H͸񖛏#rS'Y9{-K"FlP*ehT*quυ- #N>FR$j$;%JyRܦW8_ D /S@㪚D"@k.$ Q}#QgFT,Z VYʪĘPO֐h=^hgql`+l˲@T"TX9: *;OGYYdAvk*{YYLo/%rF? W-RH9U;4 ń?ynb';}av> sn M~?}7N\Q%)AfF`]M;ɘ71]|/뇸q94&IE345n7G1ttq ^!+f96^8ɇ !d,9iz`Cm \ʼnHN̸n5/$PQ&Hd/݅g1JMRt 'H3B!0hD2r % ,!`#.h $Nܝ_c&1JH,6PTzRƉFkMZSQp.MJO1 p5*[J}(QVPp yw}YD>KҞB%PQ>le{Dq}v ;HDRx[\<"H%:U0t(½N6 29i1&HA&)*є,B% XLC_KJD ҅W49?*͓V`OZٕTXѫ0U*iMH!*Ӭw };d<* 7Yn)'誔N#Cm *|Lj,sZS -ݼCq2"*d#a0mI -%r^c65[#WªSK *SLu ̛y>nt4luO3mI,3Dm,XC %#ʣ~@$s,Q \a2&녋5c˜Dq@l8ݳvBqZ}kz?V:nwFBBXcGh6+(#J9.M4R!"j etQeI'J W ^zL` QEUEu]-cƻZ$x'Rz/ *Xk`98t ?Cca5ԡv24 IE2Bs|a\`LnjcVFJ. -18Ǜ`$d5ϨDS(#* _8m"M ͫ6"i."]nQ-J$( F@֠h)H8Eq4I !IAvc`XgF6<$Z]PUE1DD5v+;| w$,u~N_2z Kn6֎ˏ}g0?lg5_k3UdP !hN<^3 lYakk)HTJLh 9_,R+D)$LSiE= R7%Jq"۳ۧUQFRsx,B/I23+5 &Svg@&o~fuxn "#y9?iژ{q!'0NH´-w1ugA#k"2ޅEX %l_>gh|beE:TDGBy'.nW& aaŚ2|`߾i\]Ee aOYl#(і) 'C^DPb5 ZyٹiQpJÆ(1ks)2`aʝM΍6dЁOXu?R9px =E4t\0[Y"4XwJJ iea"X[)y! HH%\->pE;H6+/R~[6SbcHZł=|[coe(F)uc2=¤ yt2Z9nPRҔj$ HġE6F,-v[.1=-XvI&Y:w78B VVvjJCkqd`sOAhf&A=C& Pą,1b2㍫@wS꺆#,^Po-I)mTpF?T"TȶҤ-WTv(}9g/>Am㢬)X҄g2 Ǟ *s"N4Ux4y+:Ld6:R!&ɲP3g-:*\dj%IgL-l-Ɂ~ <ԃKӧx˟asBpKk>AY^C*K=2Ȳj(!ơRmYx ll2Em ,oKrզmf9~)y+kԦOg~ 7-Ec(^?׺_ӐC\ݹߥ*7YdžIq)!;[=;ckf2|΀6_l@xQWE0>rb6flS&+-ǮNt. >":z4uIT4?Ec#C,6㆘;(fjS^sWH|L;$@R,!9i&FB^ͨ@@`Z#UhR\h5i1;1;?4Wes:3\HDI !b.j|e 5 |pJMSPiiJ4 lMK $ejj&^dmlZ˖BXҞm\O8# K|+_;o@3\{9Tfa!Қ>Eb,t_BaJY_K|zt:Gc3bj%]`8Rn"脵z9quy WX8t]iV>9.W9(M( 4ѕ B0J14%$w]p6:VD ?BO g"FxVl'šiN Jfα[-g *:. ^{$0tXIJ+=Z'diQFY YҔ(M1BH J_a} 6ng~_s酧v֓oe 0>tbuÓ3t9ZEFk[ue*eby 3tHTO=v.{YE7PδxɵO?GEn9|<)oy+P>4Sǘ^8ʤkcu~dv&\H#" (]~<);/PБ-:5Fd<׹]-yc-iȱp<+{eOv<9G/ !c4"|=*!P4`΁* B|}.d\,?*tJÚ~(]Bur%iȳbT4Z9| g)jà~屙d4ճԾGdckpXWDKOR~ؠ:)n8tcAV| >-ML' qmԡR!g^f^@b]SQ3+a63< YF"`:: 6iM'$ZVWSN/YVCHJSd_@>x٣;bkKz>_Ҟ;'h/isl|6| [D?AeصNgE<9Zt A D'A- ];CkNscm{pC W.g#Lg(ۢ^¬8)N#Q{G"8)HyN l] 'R+D~+ 7"P xa1>va_~)B '^2$%k싛fHM٢!'1{,* \8*Κ,D8PcvM4'N"44vh'MI$dmϬ1{ F9eQCBѳ.< 蒳 CR) TJSr*, D Sx)>_@F;RApFL%$p0A@fL9nS՘JsÞ hItB&lmojYUۛ'$JK0\&skza}G9W% l_IhO>H1,7[=EQuTQqc!27}ט=6CrEld4v4Bt {yw=\Y1 JO39IVftIIUnnz qa>u7ѳ4Sq};@2XcRo3᥊Mm(B3 Bet`}8=F"%BL7z~ ʮiD4 ϻ&`  3b 8 8;V:s6>fQm<(j17ڠfeuu"9yɴCM}%.N)AKBjk&$28JeQbFwa?* Ji)w| YC,"o` ~ULOqVkL.\Q*Ep!$=Ǯ1#Bf*xZȩ)lS:jpEޝdoCUe*0ְ-"#K=:X#` $;»]MfR $&B&/6 B:97Ӛ9<6<#늽ةRIFh$:jL)QF[$uVX:¢ǯmq+}u\)l-1U-Ã.sSS^(h֋k=7`-̟{V+7HN\nS~ue mVoQ\'>ڕK-/hͧd}>0yJi-ptݙ!=HRZ dwD5-}_ﰄ=ƒ6?vkj2h{]4iU 2:g}VOTqu\jTCQX vdrIT bPӐPץw1{"dw8db?dC&C HG'6VTTHړcbzg{|p]gCk  n ѵVºfC^A~iD<~&W!hJ3fϊ($ CѤs Ho`ʊ̶*r6`53Y{΅ZY`"!K*,#MVҝg?-NvǟMx2*tuuw`HH 2Q$@|$h0@͈h( $۔wY]Dql>}o*UTJ܌̈kgw=OIBj<,'qwYv# Η:%* KSVTezch'-*)s[t8=$'(Z8c槺Dg0w-ƻs"bJ"bNJDjh)^!DP)B,u%VW;(,<̭ds7o#[陪޷xrB 0߄-B%tҲz2ADi\2R=@޾D1Z;mJIR#O!pNյA{E' ݛ iY 9! ]Ok*a<&tb1C)(̏C>W>3)n#Q8MЭ5,ƒv13 :rn=p4߽ʀW;&[ێ[ e.r#KK߸ wvH75998,!]Ycة!Ss%!HY|sSKNL' /??O.Ma|Gp<7掣s9FGM*CDB?*9Q3xG| ~՗Z]`yxFl,S?1 X 37@%-X H؁# baD$F ʂi MM!DUl!i[s08haB/N5gSc8}~N l=vBN- m! g_6^O /κ{kebFmId9ˊh|1h)$D!@(tXCj[msP7ts_G5U d /{mj\]/mOFL{>-%@= +Dـk+J+iKK(,Npi{BgC= rmN5បYNKI()F[CgSp-J"WԸ *A5 H?_TGCLӄ7sXk(8vΤm Ek<%Nd?uW賰>3i @G$qr|JSx`20986 i̫4\~1hWheOE'SDbN6ޤ"|ȅ{!MepPu>hmށRDsrx}j&5ܼz ~чotɩs*ACJ9{PS;^.g> =ْƇ^0"a@CŇ۞'Xqh,"ӌz!UPfP2)VN`@VK4MI,3D‡cjgJ1jr6%zZRUEyC {ӊhmg KD{oOK L*e3"67׉꜃EWyI#ƃ)k|Czl9xA`8~9"a%a aJD%N:+s9o.UvCC(g^ bJ & gxjcP-"D%}J)'8,Rg>[E cE H"Yp8 J>+NŒ·F@FR~B1PP_k8S0Ƃ3u%ql"-2Kl^q9)<2Q[kRW]!M  #R-{ϴf؀^FaŜ~@v.۽ )t=?`9x<{y]O1IGWΈ>HX''m9b3º5ul@e_|O}>U_Nل;@M;>/7X%G>W鬟'E /nw~0+k_;\W>XE7 =FeRFuT>{׾?c2= J!PJ(RD(q d ,ڗAXO"ht|+_՗pX4daD#BKAu'H((d^$jmӘS:fzxL5amMNՠ$D"x#!+! zuuWu+"XQ{1Bn@'K[9()y{7o^x/ݼBKk>9~L;'ۍ=ڗXL2ntϘ85kB.NtO) I0~ Jx/' ;{x!PK}ܤ:˵uYgA!nYC FGH"_a|*JXNpeKc},/ms___۷!jA6>H7_wn@fkRfULlwxnK7Vx7~dH NjtrBBG8|p]l8+qܥ\+ߢ3X[#*P\G E3\0C kfƟN$gП!M+;*,=XԎiYcP"U(cYOYZf C^F/IAj0G*l1'cNk޻2Y| E߉%J`=.C+il3zk 70W{=5jkW)`=a|$O##jRxFFAю|P c`PZ"{).| sCHk 1 =B]MAYL y>) %|(ASawئFDN(~l'3=yB} jg{^nqu)4^x18ƙfIݏ'Ϡ9| ȿ[s?%m' kBY['I8vy=6.&/v(?IHq1UǑ7Q#`TtdK4i,gG0ωjZO~W{;Rselqޡ湗^+XwJטuLwpuō˗IXd6_peNf ;8tʳ8,ɴ ^^A7sܡKFCAI(<~M|^xxus[GKQ෨v ܗdhg*nNb6[k Wy찴th8ͿNoy{|23/ x2f?'\ZۂeN۳ y":RO !y:on4.H>$%TNP[da^F#D*BP )EAGTqpBʠ J TjP蝊SDb86A!dA]o+@h&fZʕiJ1/s!Jt]p1"e * "NCFDaޯB5&DS86y)'֋ zJ#t ͉:]a:fZ-x_R("MclӔ -պ2Ҥr'(jwDRS)RJ>?9o1֐K; 'cDRqtc M?70w'e[N|HY7x?We,5ܛޣ[D }GYYB$W7N#zcbEQyW}wOxu3cpn~הMI~+b3U__ ӿN t& 1!\艜^ /bmb6aymX64֓:/ 6𼶙rziIzhy=^]&)ϽM G#\YaC)(%pB#G ItRf{?;>砩u]~%nj2~'~ʗnA"1.xu^}:# &/ݟ  o{ "6\|Fl k8(gϒ?U:^&Mل+PJcPTvKe H+dVAI4RIX9,B4aSW—kiI:>g) (p1HJ {qH`bN: -֕@''[77Ra6 +r<, '4GK>Ãwk)J#n6g\(PA8!ϲ7L#+ӂ^vP*KE'w6gӬ(4ܐ.lQJ(q tpapߎ48"RKEqC$^h| uH;lN- I mSd/L!?7S Z(^ 88k77+8c֖}V쓎e=Pf5G  ZA ¯P u S`DTh2:DCRAF4*–5Nդ!61]d .B:jc>3S(PZƵUY$@񐲘՚$pq뽟x*R_]c:3rGz-zto?a2g>/C<9FҶQ! )ЇPw* t ԧ|'1 zNWnB)a0y( @ I D(/r-u`X u84xce*28{w,;:B3-G{[f]׾#"~z29#WG(1D) #Fn4~7Pj79BNjt<@-uyDuujiQil߻oLri;!~'6Q W8kK[Y*RHXZZb8Q=lmH]Ŕr~1qo'_d*e{" Iݽ'C.$19'|do^5hb渪w~d_ x "NQqp8die8NR%)bLSGbNYΐ/ [W'Z]cw)>zbvB7>c/+IʒǞ}dy]n}p/?K>Gj@nbEylCw0Kv@yε_|ID%u]b18Q:BbVVXY uw@O!$iY^Ere L9!oS͌1pNo_h#րr'GEuJܼ]qrm{D5#"p#h lx&6-P.e.yarǷ'ߺ?盦?-n=|'$ҹ8_e-/Y #1@7`eyHfFu"Jx{sD$Q!UIS^2h tQ%Hu^1/hd1%5;O9dim^uPe QF4 F{#5kH>f%s<}Hg~@u8|_"TEork~^IgN:()i96+1=›0r>!J;R dh}񄽻w=.e <~mhjBS)w8c*=tDZ1v\PK%n{-^Fg$_t a+Iu C]ТnňQ-CR*tぢX0/fR(4HeD#hfcf}P.7a@PT$=e?eV* u8L/hi_R"uĹWGbrzVR5ނb胚]+@sp !9 Kv64:Ybӻ . fD-Q:V`./ILԕ%8E)Q-^5xSX2mq88Ji3__@ I'Hӌ<* .?.G9ѨGoL7UOXҗtOvdS cn!cńzQiu]Α߻Mf6~B]И!u3,9=Չd6`]n?:be${t[H_z?n`jtΰ|17ǂ0__*?0[?fʯRY+/iirxt{z;9:@G.!#z=zt349CYUhci&?.8 !$\g4aaN H=4(l#;(xݟY$OXtitѰ%<~,v>!InMV>w"_ypFSWfAbmI ɄXFY{3X^eǜ|->;S-*f}˨;I8^}ENB pmva-Hq. {R-/<IqbQ3M SZ Y'$i +:C&(%)I ET(4AeP5M#(E/=_$'enfx#1+NElp|4"bb>g>*fާU3{15şdeawȶS>xĉ?;Ak"2 Ad ÷retluhY:|D}G))EO?پ/~XJd Q` 6:p@g0;SlmyVP !?DYK2u]S}YB]T#Ō/Jgti0M1OY8IW5>^H~[Gl_dy{'d-,o_;`ɔ8xSb*pDb4y%w9_qܿsmK%K[OW6t)BQvAB7H 3/%"L| z4gΞ$t{hI=vHȰ eQ1_,/ и-#KCろS t' q8g2jL4K{6vɪG*&K ek-֖4 ';h%xrg% GwruM>uQU5Jy4S.nx6ԅxL1:b!o8[ۦB)t@mK y̐Bg5yr$[<^Kf^P/J"tbr28D%8,@J)TuMUU9TDY$&P% E ѐ&Ԣ,#1': GyLa#wߤwNw(84SP? "FAztyF#8. (#Xw Џ{s_dN{ʕ2qwR^p'-ocH)k.ѓG_fG<粿Y"R!STnh ԧGG<|^ɓ#S.^PO笮RyISՎEYQ%B3R_8<҄|>ȪOY%4Wγ?ߡy5H#tzŔ"_b\}O?b8?"\cZΘs/R9_'[٢,KnJZN&s>ɟ^!2)":Y'prM{~l!M;<}ppzT^7> 6C(Ҽ!ܿK!1bT(Ӳ+j2$-l!F 4;0(M&#Rf]54ƺ!,`' y;t4f٬bV4Mst7 KDGWCcҭU:8rlY 8 4A&.R )%7$YXKSȖm4&=~BM8;,gԥzUv*jozW#x")jCw6JV7;K8ACkl[ȏ\ f:c6DX"v2 iLN0%bd$D]bpbi)cQL&D1dDQXPWgsfQ0=8D$}qIV2 'Yu5dIʰa3g9ۡ6'4BJE"xeE0+JRZ ?.?Ȫ\}_e- *Z3 ZuiSOvÈ Q̹6CY$>p#R1¥W?E6ֱ|Du%V17-'r|5v[O*$R ;>dtdk9~!zʵ$++ *'$br'xCQ×̦4&ւD7G W%ZxKyK_!ܟ!Ey1dԋoN_SxJCA51R&Ita S0.pgetZeJ%QB'*JNLaݿJ*4M 3edplEGz(q!S)4HH૊Y4Aԏ=B<|BQH;7ʆhӹzzv؛Mf1q%7(RiLUziN;=1 ۢ :J9Uz|U?CX9T Aqt>'CS4HEQJ?I 4 j$xxbo(1Ęlݧ;t7/Hkq W.Hsj%KVR]&'S>| /!Ol-W뚺X^^Br1)4Ŕ'Yy ?}{WqyK/{ׯGӈE\l _`޹OͩY6 Hb6l+pe8?rVA:x!Yac-umt xQYPH,ɋʹ-^;ȅ:b\*%ٍuPmsقlQ!@ˠX8QKG-"4VPAo Y1h89Gp.Bk2=*& T7Q$0Ō7Z78.{>FhK"滚ǏpGddE.l "]"Fc|9*'s%/8)i&?Q.# ^_T4قHD<>,{%!RJ)6i9w$qDT4. t{Y4rN9nj̧v b-gLolVgz)`UD1*T1rGaKdH - " kȒZijfICpujx1GUT:N)ORXm:!*pa'x;O9Z< 7/cF. !JHhԜv`'z/XpdR 89'w8f`yUUMtg#3eoh'v;,RB: I`SXE?)jΝۦ* fzxL6쒨!G9xhFG1eyBIBwͦL&DR#'G G'A#u򐭵1c._—^:4({>T7:k[dQĻ?'wyxxLAiȢ,Qw Eش[W/B8qaE*#b"NДTa_qI% c^9!"Ok_uE%v8/w΂'%Jaj>GIV8w%zC|SLiA1k\8ѝ,5*TP82Mmt7}ASGIgubF0ڌpUCYB<2ʈV;DtȴlQz8 2AF " GzG=x }d>QܡRɹbC_>D:byy G$MU9Oc Nj8cvEQALa :'+T"ewr;A$#jS5{ǏPD$"B E$bp/d<1ÃaDaY0&TjAG >vYڡ,4TSjA-Q9a%^;_|t?{bXG!h@8K!h[yɈK/m'R |(x*0 ^80zv ZӜyQk8!N6E(RQNSیW7,,ٔd'f: ?fx4l,,݃#wdrC-uH$ANq\qC&ǖ`㊝#VMCguib`<=:`OG}\q":_ 8εÖio (μTgLo?!JNKD!c@YX-:DG5lk$X@UQRTE5 2bJ—gKr;-GTh*KD^GdAAD5}I kP28nxI.dm->af-'`b=ұg$x3\>gH'8k`TMI8> Y-f/J`&cK4,LCerFiK̯Y8ɕ} @^p'r%F>4ŷND߶?NR)+ITccц*@DDR,l1'G?ƫ/I#~z:emm89yJɈk'7\ IOSL9'G{(q~P1|Fdݧ~ej+~ƛ cGKiC$%O'coc*6MH Ԏty$:10Uz2Gd]@*Ŝ,XmlwDg֜`52{lSۯ D 66Sy.e;w66։c$~~(Q%u/<8lɌ+IGbP9%u/$JD"~ںԼrqUѣ'yh.-:"KGMGlrVs9==D1EN%x,u1,8R|h2~7&NFHAc?T1 6yPrq<Lyz1 K2!,oI@xI6~{.+HrZJIΐ^7k EhBk4W;lGZR(b?!<{Nmh"x:jmt=zKx}> 0x2h2akkG;1~n ŜS/X[7MXS5 G{O[ޡ5B@w?9O.b 54i>9{ݳͧþ ,f0Rc0~71:IFaR](%΅bHIEc{"*fr#}l<څ%&ȍ5'iGURh */ MQ.XTJDUlѡy:>0RI'<=XN4KKTvN2.2a#F86M1eE>;@ Qw Dyн(MxQ)05Xa )B΃ 11DɈq}JA#O&[|gpQE,9e$% $A"۽.݅둱Bu1:( >C\Y.L2%br1ZDR2ǣQ/RtOer>NáC OW9)'|2B!e{("Rh5h%5 -㩥o^D@S{Kj$d^i~4pvP$^zǻZI(+R+V5$R,89 ` 8 \,=k9.KM8*˫Dpr}8EELytAU-~+^ze^y;CN=iW"Ɯny1#ou{͙9J Uüܧu9;$ 9?ʥL1G o}bd:E/~5+kt䑎8؟s4yl:e{khiD2Ļ} i_)O t.NRQ-Z{"2F(xZtu5iB(@5Q7stZ\Lm  :]ZV5ۂo!U"ܧRiN "$>eE4Z"8A;& qk|18Vtzܖ̏jzY>]LYYQIro</{S}w"Djjc$n808o )~B;Ck bJ#d!"nq@{΋<_4op;1dQ)dK8S;.'xPꠒO{L'$*&R\`jEK-F"%1s:4xя$+:uqd=]A@=x 8S0ׂq~ ')ƂDIz>AHA&f>7 _u:O6l7q8BSSݻT˫i6PUU(! !AXBzN U 20&I,B3|^N xCO\Ǡ3H-^x7!Jyat s(ՔfZcT $:)fXC^)׮l3K9:NpTo7jk k "! H*|BWC dcS" M!֔䄼|,Fs+RAi-KW2?ıfa<ӷo,]ZA 7&- +9>s2%1Z'()h!J)JwR#dǦ0L;(1s1$RR[9"JDFG kRSP$&xC-,hlE#4Fh4?'g}^>' %I %O>nQSA@2,N3‡vKK#WV͜rC?A+F21.XY`kk_v~_|7ml']6\]k.) ƀ5&\‘(Eb; rNāyN'aѾ|j z=:? %F(t-*PQLQb+N&Lg!8h!FIrN ϣeԞ-4S׸:J`QbL2P18Xܩ|]u:/ t5t#%+:.ܠNIF]_#}[h3@|ղ7;wpj#?IHT 0]sHaC:Ur%scLRtJ|1ޝ ybçaNDH"4 TUs+_@H [r ҅]֜xˠ"DBIkpk L<4w_,V5lY!~:W;wn$=^|%dwLS8G'/( .>bYLxO Z`ϭpG'\h8 d>"F0 {ҌY 6jc}ǛoWe_ĉ[w=KPɄ#r;ܿ1qK#%ܸykn.3\7$+Λo2p ?cE[|e;! u¸ޝ֐xhZ-EBQ4sd!"eHj@4,^4nA* mtqh OjNf}:Qf|cM`ᛚC0_P#1 50&D RZ2Д,CUA39$5fgC74F )pq|MAܜ$G=rQMXnz 5iyhH2*NiΆBZ%x#t 4F lBz 8o,$.RԈN̎wQM?#t:MBĒN0ʆPy8hZBDc mlQ#^Z1q'J&X,"uX5GdD:؇U#*,W) # WaZTnsΧk$8[| C7[LhpFJַ/s_~F ׀ByE$ERԹ WsBCk& gl Ȗ)% ?#!-cuhGHw$QPT4RIO:^%MfGX:[,sk17^gim^o@'RXY^"1L+O2a>MQRy;:}UuzM۾S:V"]j%{+.4h2å1Yx*ېWAFikEv%>}PARNX[•aS:JphB')~Qc ,&S"w58[CA &YPEzݔ*dKQ * AQ7O1)И u3խhT"@i1fzDQޯ%]P( X:iH ާ,LkD1~OP`J̠{}1Bh $U#P("hQDDtiGd\FUM>NI.+;oSW!),x_,Tty\lHdQ""B|2Juqt}re(1J`׆ ^! Gxp ߓOoFڇEQs/}D?C {+]g¨()oa7f=.VD1'<s8(SOQِs+_d7OYzQ< t?mz1K+hZE3sg*N7K05D# EMv2&]b TȮx˾Gf7ә;{@'z8SW3ḧ́9r޿mrJ" 2^`1}kf΢0PX;4*׾ [,+%FRWhe|Âd>b[]?>3~겡8bq򫾄ժ v#fvGݔ\e"`>E78~|V]@ Ϡfxc÷ '8krsyܢիnN|>c\7`׈].sz.?;.J6xW GC8"5q#M׼".mppp4V5w \gGnvc5sya^v~ =zKWi>\pꗩ 9%GK׻[z,L>?Ue }]3XMM_(iҚ.9u5?Apb kurG׾sDJ`x0"ƸAM@{@+^Σt :NjDc<ŏ.#dt@o5UwFCZK|PYbt6@$]"9@D# b"B$CQ&_pB,p2v~89$4 6T(sܹ7f>3;/>3/D?I 14P=/QNDž+/v26ǭυsVmY: m<0>?ŭ4!Z$D"R)o-cꦠ,J"'[EuEp14U:>"#Tqd[EŌl aUx~s=Wg G WrEH|U{I4N0uM7^a6xr=݊;?~X 6ܻ3^_dg~'[&3?\onBlr8CHC#43"g荡E|RH 83fL 4 ׻iʽϹp=gܙ+dayuZk m2r%N:E" &GX[7~V"\B F뷨gw]&o`S˅O `H?Gt/PI)+kMNLOkK xdh.ݼrpՔa?deF I< !VΦn5G _N"~Tń@YTc} تXT&džҕm`853pRS989,J5bBJRp&?eR@E)mKfo %dёOk "LYMq5*mJBQ+ E~P1PXSN *G EAh{$ 30'\'-PiWg&P@(LJtFkGϵg,"*DMSD!!&}KI~h "+Ѭ"Ҕ /|y|/x%|y-xw%㠝`miJ"damv=sZjRjJIVKD w^D ZB'M7YtO 6 +\& k"m49Ӻp]lduV/5SZ߼ʊ<ޓ')euI, LFd Y=vvSL󜥥%s]H\F0ͪ((3qmz=.=<*Bx4bok+Wr啯NڴZ'=יOrrF$1%Z 9鉹G<03$#,CLD%x3Iu4e9brJ[D^XSQ%F\nZ=m"A@ݠJ+3F;;YlaF67 > a,( dJ2F! !-B DЎV  ir>!|-5R%vP sȪ@w2AvYEXm2xg kFbLE~t$\t; jG B ufHHu-UT K%k9Nu0gk|&lcȄ-b &'/эņDm`qaicءQx)1Lht\Ei+;|2-(Sp`rQjQ &.M9,iz#qIV}S~x T[j+}y.kjS10`<VgvOLR2ӷ:N*c"7y$is%tJ^#)IIClri[o=VWn[RӟQT;;ݽυ׿nÉ $8'GS@-=V77x/Y貽u`@Tr$gokeG4akW3ؓ}v߆VQ朿v[_Eg|ƝbElYX`QXR04uFouբ*yAH?7C!/J9#̿^Tm=^_Z {wR >bmeKp2B;|mIZ + '}_JRXER %0p.\&]XDX(F{}!AKVFcyliԉի*pTTcB!H݌sjV5O2\u* ,R}|s ES@9?kN|9xg'4*iCL D J(c%9 g)-;oACɻwFt>8>@NxyKUJ bX8j4fxK?cD{$%?~̕_YhseN\x7)-1-)-CT)nS84CRp>sX8G3i9bﳶιHmBD8Q&![_ Ydް0k,6\Z> Ry{1ifx8LƜl=cw9d Tv촐јjQ૛,-OF ߗL≯Kܸ`1Mi!/ `HY>J2y1K -%âNp=ߟr*W_q]Ty4/qR5QCʽ-VVG{4 îStWhw{\unr$fF33K_yda47$Y$:)^8<곻$E@Hg۹@.^F] BE]᣽?z^҂рrtrs^{FDV{f@1-0UNe p)X%%iH(BTM!*dPBo $ 'SC@08W ul)(ǤtIIHKEfii:zRWښV&?. ^;LmV7h-gF U > *Q>PYK$jYxk,6SFiHHmfr 0Ϸ@I[f;=24t@kps$ ZsظxnI '#{Un&ۤIj EFg4Ҿ%;uJDe "Agӡa-!|JV|^nu'HQ  / O~nNPLG.c/;,/ JӐDppx@蘣{w:-ɈiQ1s82O8y5?}J38í'8nmʌQ1 I$AԞ 2YKrm/ʼb8qAApP c> }nhmf%QT Cʣ(srxɒūrp~ΏgxWD%D&~gT'Y[FRCAFKcl>5"e]U IjP(l'A\44 l%(Jڴ{K/{)ݕu5 D*Ux>sC3J!Bxxu-jC'L |8SV }a!Pխp<,ߺNܥ,dzk LxؿG.L2IghJ*-AePNh%]sfL{3:,<Wݘ3"]@73Z.(|p;G(ΒܖcB4Ӱ"egUvVMT256$%L&W.VET%GOzQ^Y]oquf -" z9Ih4T3 F#n!T:aC.$݅zD-X(.NƓ`$lQVx6/^ I`g>Duj!u`'?>F, :&2G/viCx<)h-RSYXZT;P_|gF?5%X- /R[79e>wͿ_t Bz$| RQHyB%Gb4`PE('AHARhR4[ݒ'%xkƘ2HW$3WVƏo;|VŹJ *K*s!M r3kB 7\N>z*JH (F&U?o){Pb8ڧ8hkc8 ؼ\)? 8pS[ټTd"!/$&gT`]U6zt6{' -Ibi[/K/q&t&wAhJhڭ6Z+:6;{3 }0M ȖRT[ x 0̀!qLˌ, 91)4S PU#DT!`ńtUJ40\IB8*O\T6IF52qIuia(r>m'*vD !(Xx3Z7̩\*kop(2Ib,\p1VPLIYVX먪XyN5^Tv"K 鼟壇VY/~g+6Γ%p#^x,nBj rpM6/%V F-lHEtTKauT#݈b7YJf8ҖEDhl6A.^YC  _ut HIkqm^\ʋ4hd 4耥~/l=.S4‡: "<NEAČ)(h})pN{>=ـHZehj4)EAL*r)5S9L K^(LUB*g?3~ S{XD:bLuJ0(MHAˀ/+|^ACLRCA_3z|Z ^"dHSd@XN5F\D_+L4ո?7^]~$"hL\_h}bҹ ;.CNb2H$HC^KZBN$͖(d[(Pg"D̟STc?S^~%.o#@hhk.jRs/|BH4-@kT3|ܑQpuC8dF&)2|U"7 CJ ΐ*,\e(ᔇ{+_UFIA@GD! mHSPtA`)hɓqc {x}^=I(]TAmSҍiz/\f4S-ѷSˑ*nB4PIJYк+yHlsLUSTЌ[&~ iK-V;+|Xˏ{%ph#r=*D?qF+1jH^-tE@".F~]"-,SeBM6 6K֤ZDΫ_XYZfօ3"D%fF @NGp7Ǫ"0[ V + ULSLX\٠P4C sZ4mRlݻ^AjI {O1ktv ]s,ܪ*3!8Q):ҿ3?Uvf; A DФA}9BEAe$* IS scUTrjC0{>y IM|RsE [B%^Q?PJ2k## ?'xd+!* TBBiUp$Hq֡uB O=AJDxq_f&',G d64c|w0Ȑ )Cg#>?s|v%[ \_ $Y}o[/@Jo:kkh7%dk%Q]Aq:P]AFDz]B뚘(*`ea :ڜ2]YE_lm0\D'h+S'YAPU8!񳍳? | H1 /"TDz*|כ!~R\@iDڠd}=`AbFEIڎYy.zBƀxjp(ܹK> A T@AnRJ-| ,_w'QLj/ј8:9>!ihUZ|,,/r֋wތG3^iD?7X= 2t+ BFp`Ap𿼍HfE`^OA y[" f0 z‰D&SHO/w,^KWk*=)nctoK/QC1TuD$H ^FTs{,O V0>Ʉ ,x+~rDv1D52֞D.5Gկ/V1#@RfC^bqG a~X"JFKp Q%9X9w SU(Q:yxZ Q5ADZ/f}JDdE^~4ڋ*G#k"y<+H"\z| ĩ=s8yټ: UijR,QWaP{4xL BLSٔʖo7FA%*L!KW$:/ˀH"5pk &?fzNE4dȬ2` &SD)bOYpX]@h=ouXA  =AyHXUhh#h"4! iz6cCPZWiUހci_+tIǍT!$Ba =}|w jD}>>y|fGx [;}ΛX,QbFk`KeBi&xL0)wyyoX`%ҥ¡<ܐeq6hJ2<$^h!Q" -;[2',` %[cm/󣕏HqrF`NB4Kq,VZch(^hw8SW)Ο ڳֹ6 Tfo B"jNw3A N3~1 v}M;>фP$fL_VjM|W*3=L"CHQ2E Y{w3b<˧n3'B = NJ '"d^^b^yVTĠCU <_b$h0h9|poqa\RlMAj.9‹h!OH<=U {==_8g"E IJnPZT{[M^΃ n>y|?g RH-qޒp %TZQQjws4۽9gUR#giUM#ALJReqL*DFcuk{+Jp%^_ʀc-ģ/JV{Ieʜf-Ɉ}M%%ZJ= sc@ k497} N@0yyԯ3O^S)E액Xs:;ބ [ j9[x~(< aDR99~FLC]e[`!ye /AR}F5E?ʖ!.AثMY_Ͽ Ĝ]8Q.G"sMw%Zgo/4j{Ҧf+"0R, @:13h'Jbl(KuTUPT[YǠL0 #-l3 hNX ufg,ظ2i/(JHuD ufF ^"B@jdpSl70izq3z# 7K!.Ja "T@b@Cѐ4تYr°V`,G(LE )m i*T+C]B|gL9L1Or>W-u2JiHF4$"GMTx9- N$I= \`Y](!5GcMQ3P#)lA SN9h#APx\i9Z}lnV|TtB8?|: Y[A[hت?RLxS}Epw0'd_k?Zצ%"N2.BhRI'ŻCUm"$Y %[;0nltLB kj-M=nBCA@I͸hcȓ1Hn&l{d$|4AHJx2 -Zq+S/"d%pj A6nq|M4iڢqMޤzF_Hač$Ͻz  Kw ˢk;m™jf$kNUQ: Q1'gSmPdqc DTt=su pJ&o\ñrgY CŬ|30ˮgLǪ徶D}.OK"cb~)g,avŵ`Z 5puB׳,.5d ȯGgYDR68@˹qx|Tc+0:AFiw K )A(JTAΔ87eh DD'F 78ˤ&4IPV`1H/]@v;2c fr5Sl>'.v4@ZO6t%yg-ZY IT $Qt!>U"u\Z,눅y! 9 P·.KR>cx{o6yjxԁDKM=4?aF*8Wb-ZBYM%,^xi<$)r&D244WQ+)A[tmҺ=шY)`?Tn?P s&*DI3Fg!>LNqb括-/ouRΨ{5[+~'BgFG8Qvh50YPf6+f.fVxx~IN <ޞ}Z L[DެU7Z'x<3,x5U|@AR Cm1,QCV }y _e Gf *jevfASg8 Eli2A.J/$$T8ml1 +r֊m'So׊4M0NJoK7oлz 4 a8 7bGv#*h%p!-BUD!dע?bJfz>5LcQ5r-J4DG&& \c:g8>=*DŽW̍L50D!pm.6WYZklkDd@ـ pLx A6[T`x_k}})d {%Q6JU6HkM\%h,O%rneislX=n]僝S荔H7r*EmTû!`>?fjx3ɓ|kM_2|,͇XgWϠ{x-3_KGORȳ>0CRuSb8!N U3\Bkϲgf%PLE𠟗SD0Sۋ3j p+;NmӉ:3_B`}:.RDdT9:d2pP*hLtdCNX*(fT ȩۈ^{V05P%HanGB!g`K,x <;^bCL "B(Pu6҄|P"jօm1yG[ BLt*.N P:B#4h6SO#PTg&B BZ-80g6E,!G lcVab)Qq6E(.xs|C2(D֙~,uxy] r6p77} A(T 9`҉SMNTi 0G̮v13Uc8-o99= R|D3C9=Nx΀kpFGcL. M}a>W>Lj:]4Xuu0|!* 1?0R{>`qfәAn7iMi{ 9Aӂ!Xpk1U?y¼R?;NKѷUps 5Yo?gva!s0#M\$L欶g׋Cfun;D'yܐvTv;a2RB4"D!Po[W1J#U7XRW"n(|5 Ԉ/ TGt4b9^&:DYt3!I(Oq.G$ hk-ƱtL2yEyD`R'a 9>VdM˴Gwċ ɔC\e%Ƞ2 k5'L\! MH@-UYB £..fo7\o>P rQUҰ GT uəL֘F5҅iOns McaKIG# ¼&L+D]@Xjq\RL+F6rmd2C @)^j|H&dLƓ/$^FqjA)8ǝIfy],"o12U0Й>ۄE]e"l7Cܖx^$Pc{g+BrJ /e~?3#cGKHdz|O?Yy^NˏT& 4K(~igkFLbf^ cstLHY ڠ+*$T(퐪k ~fW_K%?)4&Acլ+4ch-t @!c!O9>äoqXRFAMNKHT3z1{$Ah$*TH-o{.K) mL>{wh7B +UWBR _F,P4$85*mNnbL ՠ87ƛ$[@YآQ5AzLn|JOv1{'TMHUXXc젚W9~]UFO yV7Ȫ{#"&% GuSD ta4>Vd?| 0f˴ c.n>uZZ7~5Ǽ=/66伿?۟gF):#nq̪z48=u(wɬxQc6Wos XNZכ$ "d?s0yef)#E,9 f1.g8_iz:=VaV"4vnW$I !1:2uNJ Y% 'H#>Iƒx !Zy iv8 9-#2fJpQNȄ$ӵHI>d4,>'%DʥBj69) kZg&Ri\XF"`38*c(mATDhG;MjAQCYUlrWIWW.sx=>$nlT(IIyZ\KoB&ܢC6rt8dd\}ĬL`J(Be($$LKDc Zu_rˬ-Y~4RMS?"%)>7ҩ`vvcg >l桮ԛ_0~>#Rf~F9MԬty?"Ak3jfb~y=`9!—Tz" m!7EYۃg&,DdmQEN'̼qz~w ΄nN@mv=%,Iu+' ͳ,#5&'PFF%h5Ӫw|ht9&ꊌZ |USE]KF M~'j ^lr2Df5.$D0!$Ğ[(d|9TcCuKK>,J!e29va~>>y_O`! P* @4d^`M '5•(,%4{Z27|~CZ ݌ՠY lnfdrOoK^[:`. lJ$6i-/!DoH1.p2WyգSs{\e0)Q5 `/Y XN/.E,iX/ 2>9|݇;כ|]QjNm&zFg%db IA^ B__Cԙg ܼ _cN^ͱ3?3w?w֛.~PpD/fB] ?f[fl;{6͏/HW:1#?9Q@au1w5oŋW.2I"3S$Y@ZvmJF?ZAoxx .wh:v c$}c[)$ $QJ7o=O*gj UZ/0o$R$lG<C Dʤqm]FEI"=J6ݧz8/|H)GEQ[J%*ri@kTUY⫂/8P"LBog>triFE=v{zqaXy2<ڥ,?woº=!29֖F#L *U%@KܴFo_jLxz Ȭ%"\@qY! !$k_;TJ)8g>Bѳ\("̼C$~=n8-J&4 s1l)O! F0 x3 Ζߡv58C3tqEՅn~'Шk fEO3h(gϞ}ps'|Ԝva{s6U+XYTCVWz<|Nvhvx鹫w(s:X?wK7qCPgIgM^yE|{\.\`|r`o5gӍJ9oeLZ0YZLϼq%OE؟y@n(%}ūȝeW8f8 \Br2itT>-s:^y|*ã=zzݳnђw?9F~XwV7?ձxPg?$ϼxϑ8tUUs|| F@q"xxuuHXƹ2`bXu@*:L&Sy3%фk4)+,,.QSZV WNO-,鱾>I*V =\RZョ[l dė5-7OoiNhGM;Mv"܅M^uw~cRx-,homX[T%LJL!$K+˴[mOnhwIW*cwg'.\79Ǽ!?'ߡbܰylm`#mqK '%6GY\^h qlmoSNůPms;W9#c6N3}Gd6k+ 8Yؤ)yw1fwg5.m,REiB++K|<˫k2V#fL FN3a{kX$"fck{^s4{tZsa)|B@HE1-- =K/`tn>%m8y*wh5d{ktƹ\oSy | ]o>Xhwh4)K =_Kq=x$Ͽø}+_❷~D @e,EOvxůr܈4WkoQVIkկd\XB% 09"bqy/Fw;=NܼH2_x U alJ661B(z.!xVVʗFqGga,w|n W^CcDsvEr鬞'tmY!趶h:;daua7 GKUƂJBP%k.uz=^e!/]F~%9;4z|G;A}̰[duʅu޽ū/= c,2$[M|׹{XzLUYRYGY #5yG F,m\W^`g%zzYƅ2xޛ,]zi\|>J !/|+!QǻGHqtI<ǘiM~kKM~*套_a]5|-eIQEe\6p֫,j-7֮S$aj*<|ǯeZylbK % 't6~x1p|'O9:<{O9};FTnzw];MC~7o-2eIXk)o\{Tew"ՂXL~XR';E!ֿR{;lq#.?"7iui*Ͽ"ΚW *yE&UλᅢXRb Y׮.qttɣۨ+;{4dm};wRE888{d_ş|;_fiy SL[?/|WJPee9<<`mj'xڍʪ,J<c ZF 'IS#988y͗}L~eq?OX^]& h62H,oqװ}iu޽KQ>v}υy 'I;5߁Ь-᏿=X^?\ye'>Ed:Nh-*O"۸IfywOXE<|ǯeUUݹqëJlUx)^ #èp=d0^n?vs6Ccн&N6W~楫<} 6~&-wwyne]\x_| 1mR9O?wuwpHQ1Ĭ*<{YEʃ?8uCY v8_bw1Gyd.ѣ7э6K ]1TeEUUE!|_2{uH.^謳u<'X ;fk7GuzmoCx^)#WoƫxZ[*f׾11;Ok,u[ڭ6TT+Ow ^S"y|any[CYWiK7XjA^Vd k*>0???!82Ó!vK&'|LڝG\xO(lqa m9 U=.]BU;CxdγE.n!ϭ1^ܸy^+ύG .]b?aaiýmzLG%6WܽKWNy>viW tals>ɰgaym6 YZsܼy?Γ}Gywei葄ayj;wIZ\ryc\sݠz.1r؏ŕ ._cww, 9m_r;`EB9[eפrauܹ{}6Ee:=}̤8+Ipdx>׮-G[L{>ye=x=_$1NBr%G FS: ,w O_K_x}V|"|lv ;oM^٘ YT8r1bN;$:{M8cv~B&/ris?|!y _`mvHN9w<{^@M ?ŌiV|3"e$^k~6gݿ럚3>gw!gGƏgܳl⍋T?3WWYykTg^ϧu!DB9?}>~]CK/VH?3&?v}J>ϡHL.OMϘT/~ֹ~x$qqg_e?~g7>'}[~~2>~_>%w‡3ψ' Hi4ҹUhZaCY_;:AgZ 5D70Oh|v*3(#l!J .<`DKyVye0c™f J_j߷-44f.$k4"ڽ$~Yጏ =eQ1U$ZCi=9KS1LyI)-.Գig" gB0BLawȕ>TyRI\SDP 䜽w{2ZjOϘD,^#QPFkMݙgo*wRJ!(~;T P< B&){w,>0~x@Ib,\kv! `:v.| ÀkOy Ta&_;+ χ_Lĩ~)5S <{kU)>vfBMJ'w;UAe3?3O\l' @gUfNVb"";{%gJ%l=tے4K( tQITL Y 0O..8$e@P*ysȳdv^g&3XE{>R~]:rgx(HAMG3[ZBP SklL$nju 7*R ~+  hHVVFLEIL Kh(9>r}u7<(,6ޢ$6hww~2[,[/K KRQjֹ.C1 4<\pS8ަ9wտf:e5 +kŽR֋_v실hH)}~^BS>!PLȤG03d9VVn)dg^g_ R^|Yvz /_d:PS.t !U|ȸ)<}ߣ[ p%VhLdgǼ;(b_q}Ф=|Vw^ƥN v[(*t,,JY7)pB1-r:&J' k+=1Cz͔DtG;}4gP2a66V>~pY2سQZ04JQ&HAgy*@dfH69=+!\|UQGߧOHu!hP /6pw"%Iv3A䐕.a0bp1zsHPVTCF5;xAHR#I'MWI֐d 1So u2_ ]_o|j$> J?TRmN&Gh-GRCmTR=cP 19llGWյ+7/yn5~M )-*'\tV"C`Wtv@ب]ӒՅePTUtխ0Sy*x( tvY x)^!u77_yK$YGSrJC q3GTC~+7%.lmIDATo}R6#!5"η 谏TnG\| /ppt- K !$khBLֹ=m_=Z-kb<2ɧd^zGsu67odܐFx`as@&|Z43{$ZkZ 6(%RZ\u8' |p)TP o{:Nq?|V#}HoCN_ؠtbt2gpK M/ ΣDKR'c0Q#!AS ,I4p\]Y֖R.;op!&HQQgBqE#OYCW<{(cLQ2O6&d )LeTXZ 4, LQPU5&xGf:R%Kl?~J VvtSYˋN5yN'X_y㽛 ,?i9*h#;3_(`a:[B1?ht-*#HWWqRϗ^[;΃!SՠEು93󼖣=RfLv !1ȩOl eyz򢙯1_J|iN1bmp0w`5,@$x <$#]ozgc)pw@& +ÌaFS7_bi˽/slƴ +vm&x1^U= Mpa !L^¡MH J@_+Ii8Ҧ$iHt*PJHq!4T$[BrR i71˜3%Q"Ay/x*/iZRk^Ջ]WٟwRHs\,t=A-a@if%'-*VcBHEDeMfB*M㫒j<l>&L3U*I\˸+I(t"QBe *D!Yjya]%HIŔN;w9(ƶBzb@E"(I5Wtm*"Ul%h%PiB^,I)Kѱr: VC \y"&ޡUl5{dk$\ L_IC[Mp\W?/,4x︽y|@*)I3UhY)JGyGL)kN%Bh[)d- hIAJh`i o=hhMier^T"H,y3ֲ,=vg{ޥXŢRQDtэ`06Ӏ#@jA-DIMS%e*3+]e]f~s#23$Lk6ȼ'{o}>`j| VC*X >r_|o5k5~>/~O/Oɽ`3w_iP^Aଡ(j>>nRY޻?ܛ[,3Cc(Cd}Wғ4O.mj'+YEc)ʜd^OR4ogU`P!E52&xRS"%ҡOiVq=$+4iYD&I4B Fťkࠛ+,˲Jdoe V_c=Njh>z %id2_H"U>xqo^|LW'L??g;Wh?F?j!e-S&@V; =)eU6`7;qV*Ĥˌ<|_DwB$ 1Bf\Q:GLSa]h mZQJܕe=ѣRU%lB(Bϊ=ce0uxc{gu$D,XhtXPu?K봠EhN{U}SK3B`9M&~/cg e.'< 7!Cn8srX>X1MuiNDX >RNj.( tQ9exa:O8wbd? |!~ҙ[d)!~]jY4S@8]H(<1n@V3bΐ&8g#a42MV! m"_V]UI'esaW@`l4VqR5d@Yh+ź4NըjdnmFYNj=5,/M5VKv؂DZ xu.==M_)-dz5kZ&>c*:soP ѥ.whd0fբ6(v!P ,jV3u(ɍ@ Zcup4`<R"c0  gA֡f"k,t`њb4@ْv#ݮc\"aTJM!ۓ1.F,4t *{d9f3qo_`ﱵoZcp#,n6Wdh]9:/R2I~CT t䅧9~8󯑘bf=޸qosǿ+`;{\2$s ʫIb6<MpϛD Ig|G~o0l:mS<&)G3Py5s]Y<( |<=4Ŕ8*Z0£;NB',-i7<\S2& z(lc% BJm 9IYrW0i~/=V-*b)Yވ;dvMN8qģcloI"%~-a(PsW gAoћS~&<52GjWR'eɅ̥oai9-606 Rb0j 5O(֚|d}X1ϓoYW]Y pv_qhEH(56ۯkA8yIY,VݔW1?uZJVP✇GB@Q8ϯV([l$WIDSӜ8M,cHSClLn(?dZ[2 ^S|ɔDn,04qdmPso%P"J,tx\'lw+R)ڄ(Sp.:S8Jh] !U)9q|)AU'B$` JJ }T I QJUVWObE{+T 8u >a#;_8CMXY /,q]Z2eڒLEe5g4FWNϩmFLU yPf)Y9z&=[-@[mZZ " Wa5:T[> k'%5-d!q謤LS@2wQpW.V7MD6)5N[h]R^ȑ+CFe^R_P (i.i:S>Ց*!75nSAE]Zs aTyvA6#ˍdқ̵R6^zIң2P[ې gzXm(| Q%-)8/h }{ķ!T8Oa@kK9\jL "AZ|7Sx3dI_"YecjJI >pWٻsrn,iBj!Rzq W/5_dLL5ڭ6ӹQ);?Hv‘NSZ}6669c[<,A{]~d5ߗ:|}$`8|~koW&@x)e4-RZ}j!E?v0aoz@kr?_;h!Ю]˸qO>/_e1ODXku;Aɕ{fQ<}XV]̬٩ w×.9:3),4Kus -# ĵPQyXg}"m9՚Ļւu%z OT$MBY,xGYYg0JR1be9`~F&1%j(r=Pz94ɴf,F"KET@-N$ l16,s)<) AW] )WXXERSu N#8t8LXC Q'M4Je^Z9:>{ačM.Y8{a] }j"/E:ЈwҒS-663cw[קE U(}zOY.JtQl%h|rxp(,U 3P5J="QN(7ȧ9SS`F<'\?B5&L}Z.U=( 쁎RGd}cibX]]Vim,~cqⰺ/"0(A.(U# iPpte} mX^nlo ٣iQגi{#NkZ^De7𯿷 N /B2vV9wvR: =?N,W262p- P[%J`Wp|,m4J: \,ͳ~dYKVKxrDF-V%I(1xjiJKy g) M-8kljR 4;m(cto;,//v(0 Wv SAɧ6_jz~/(1YDlڨ_W!PR3X:& H0}uh ,Sw8谤 C&as{Uԉ'hd }p oŧHo|G_KΏ! .̙A|Nȳ ߯W#y^W畒ʺ$T5ܛ[6{_/]?/c5@cxoP'@R9䁏j0π<P4XS0T)U5v,n6&XQ$, JY"c4CRIN,i( $C^h)e!Ҝ2HU{Mceџ#5@K4JkV#Pb|AwHW}!}|k;1JMīT̑J'N+t2)BK\hZ"X;+QX;Rc]Q-0ؔ|਄5OJӽ>Bp\Ds椡3,_djC(97[$[ԅϛ&<"Թ&l)cZ- ʣԦjK]Va() Sd`*럶G 549t^0qSSLRl$(PBŷ3'SF<ϘX~Pm>20UV"qZHzV՗[ex^Ġ%^Y2JK'Qt-v.zSZ5+y;|ww'T@Å@jM5:S4`R%)jtf M/v.J/ )pF#gGZ*|?dXj`DpHeE[7X;~#0)*^$?;8%rt)\2M?x\3NrFd FC&i54" iqy^~(]AzM3?4|+.џD~I''c/O5v]SӄoTk̬-\Z5X[2+iG]`ϪEVI<$W:\jnMU]!leY:dK*1IgJyEV q$Dk*`3XUH(ڍ[xL@1쑎,..CŖ6'"":g{:epsl9xXLH> $Hh]>$GY>8«ʿ2u\| v_hO(#Rh }ܼ 4yI5sĥA.g9<Sn~i[qIx͌Ѱ`d=dŘpEB"=_gc} \wE]:s+4O J7ޔmW[}4|ǯhίQFW\9)-4q@A9[10i}7 '9?NLYB`woĨ7e"NZㅢ""IKa<:T~. Sy>^9̱ 31 =Pe}sL+>DŽu8s"O+:2 c34'R |ϯX5QLPѮ)yYDQ^ oz";=ވV''j{=Ν^aJ'-iXr4!!#}-?dM#XzeAw+%{fkO ul/N@qYNFbQVpEN☝1NufҲd/`'=iF4UH=bo](*2Wj]lYi6* DA$C\E%(#d8ŷk kFрVSgq Q@3D,ґ'fENϐ0C< ~kwk;t;٫x~H=Tm-á`0r$Ys%r(HG$E5an̉%p{`PJ%%(HS&z'WMwwciZvΏA;Գ/})<%VhԛH޸XS҇Jk ˲<.agn[`3؋$#LjPV`cHuƒWgC J*,ٳ1ch#J|#Pk(1I2|?$}hjk!T!q\Cy%8:/k-ɐzAY^Ccqlmcg=)[di.t ߤgscpLGd^Ȇ&paQRk0 Z`kM&wJ̎Ï+8`J$# *RQr*2/?V'9qh~WJtId?scLs,zӒN÷vtO0d~ww )K5^2қ *qj+i "Ob 1N`2#$Fb*Z3+pj[\yun_JD\SRԛ"Ptcv_ݠ/Q5)[jq#m3?`ǙE' :26W'볼6|\)JU`vJ"Bn$^ ڧSrz5a j+(Bãki A6}$+1zG(~ǎ,s T3Wozw6Ɩ+Ag$Mr6wB|^B=`Ǎ+}XU }|Gkn6fwf фQH"IJШטjG0i5Bq[VEo^ =At; -<(VrTesi~'>TLup5VϜaη~Hsm anuzmgR:2fH|LSi74{\ ߫=/w>8V|% ?uK͕qD< ^h8pCaL S]PxY┇pwi".jJ[+ܼ 'x~;vZ&I:?QIm) XA^/|!MpFInd9ZZH$QMP;BDfA.XZHjo H?po[ӌN”Y]|R83vGÓ&%EX܋,.."2Ӗ\4#4.4"iquO|_+f3vE_*AIGQQx̴ެ{ʂxvZC R30`2s_RCZ;v@q]WWC;>O>ySjvvZJ[bBbRo>]p&ww ٳ8{WR5v I6$I2&KgHϛǘ ϒ92 \v %%`uj i1+^zE":W_09U'4cggze]4VWX[߳ ]({#DA~As>FaZj|sWaApX3}[1fBuh4Ŏ%} ϯ0:b.vvlJrGy0Ab  !(Hq }YD_`?awٻ:7^axwr ^Փ tAR蒐 y oP>1.̳1ݝr|gP51:4)j@VN!qՉZT'n#iayԼju+aj=rHQ=N) 44Qx1@ey4˜lZ ga6fRқ~ R-NG-!jlpg<4) L '\KogLu2X\}koz~3VЅj!G9U$,i3O'8v<ܼuӧNj7H)(qqBse?~t{=JxVr-n޼IN/#:d?baiwZ4sGx%}ƣ1Q3?3|S" +h4@`A /_wV)d̝_^se6Q~^{rv83_mWmU+y3veyx ğŧWL6G J>`LH%zԏ66)9ސ|{DޟVR'S xO !fcڄr(U]DʟmmYIQCC\@a FFxL cdQ`-FRcO8k{\ÙszF]ՑG?M0OդVpt{R+8; KkM/)Ӽr89@#Zagdy q掦٩jIn^Oi:uxOw @I809;ʏȳЏ**hTjdIʠZy1 Y}{]yM2E>/}clY2Q#Bʲ !1.][Cjf>MllV}c GoMPpw{??ǞYlSתTvt4UNr8wBgRJt &CH1r|oL d[7(<ɓO"oENo|zܠO+E.#s-676x.öp ;Wq7Cja13e Y4OݚybKWZw uBZ"h-۽REx~pn0+U e9 5Ѻl>^@T#PG#TrVeI$X`)%)KL8r`peI:S[hᬣz<ɉ}tkz3xCuvYI#6U+iV&<Μ}]L81y_fF!aعv,3S➍$X#FYh4CXIy(e@# QK3q\q+<3OpǹQ=ӧmu1! Y?#- ;0)YXDIǩ ,. (ӂ" ,G|Ns.91Vo:YE!\֣# ɪ( !}+0ڪH(nvz𝪷 /~CEe5J Cgw. k-\k 8\ϽL|/8)9Bsq׾OGЯ/YķCz"@P62-pVS)J愁A]ܦ;4:w7nqs=>c+gtpjѳ1| ےٗw޸$/1f;kA?oG>Bͭ;osesoL>fQjg?F{?7({? аr~|Li D1Oj~0# 1Yֺ/`~H=t3Z5E;{i'W]aﭻUa+[#1-iZ!1IkCfE} ]P ρPa5P33h*6y {^eC}@$hJm~%x #m|;OPS5tp)fR6 6)ݣƌKhYCI@ $FL;Q.i ( l: |Nd |oWX8zwo?P|>s&4c`$J4xjn,+Ґ2FBG8-ul> *4R{H$w_>O<_ GZ(#GA9lʙG׸%vEQWN=:c;4!G |űMz?.8s;]za`OLS'ZQؙ Ox@z!¦HW: P)HZ ըZTY}g2F\JRB94Qd%~?Q+ FZs}@iTep8"^Yis4TaBw(\x-㝋l7of.{EnkRM j/h)JIa,YɴFgsg^Lll창;A]4K+lllp}^0>sE>yTQ*8ɂ6E7DHj"E&+1 |3#NE>s ^L'ܽ&6P(}Q Ҟkp zaLfmۚ$یR<|@|\q>イ! ܹ4a:&6w8iVv !瞠riY=!^$++ )ޘzN3,GJnF NhS M^8JmY5 J!s R9xN@/S)oPQbBIiݹ+߹sҥt7Rh- g1ejȇCQ*W?iƃ!a=X±5P(`0& 6KJ=,`IBU=g(jXcmu>~DnΟqE~^~Ynnaטcfv|~fag-QaԋHVA{2i԰{#GN3LZs ~i|G)G>{+WFbؽC+Чs#&q盽9xRk*=)8QS{4>|k(W#u$@R+ KVϴI!7q&@#RK(V8r'H`;qkXkSZa~Tc4XOA-By c6~V !Βү "MSYs4ҋz}ʢ@lmlV?K[qU$.s=vi6ih8`wg%qr(-[[#Dcх+& /[mpEn]w6 &Otihm`<(KSYDGW^`5a%~?뷯9(z9>?Vu6'?vx8yq::y_OlY[K_=ݫL#~~7x7~0[AܫDŽVAR6k!j[%$MS.3DiJd3<vc.Ƹ{f7KB5)*VfNqp,RYjFT$c53-@ek%YalJQH3@V?)| D@U RI٩]Z`dJ9t)K$fsW9w4.yʾ5zɄ~<#vUv, AVd((MFIiql2H\rK ZM;mE;+EK|'-wog酘jML˒}z}6;S= L-!{pDw2.@*a yڱ9~ښtc nt*_k VO*y`oȅgW88ȉVC(2dCeD+[rM4"DDJ(T^X}n^fhkxqY0[RqAP9r ' -EغY0lh.#7xu}"j\t[5Ĝp*ZeFT+%kQzǑHT=) ߬{[7~g7|?.Y2E.A9sUWPʙš{qk +s92ӬS[^%! +ܾh\9q|߿gW+( cv'fcOUa3TέnUGk5)Ikm?F՜FJDfSoݭM48~?Eeg}!} @c5/k{=yBȄC GHcmûc:kUGyVCl5L COֳ(JK\2OÐaĝb0(q[Ed`:,$yƣ)EVRf:˩ǪyxtauX P&DC9X̭#2#9MmfwcX>i=K,.-Wyg%+`RVS'գg]08zd3߼pԩ{ZCQQ}]chl$(_\hR\gۧ~Nرlo9|y0YO9YmxWПBpզC9O3X3Gi:pծ.̵~{{xKR2c%|d^绗U0{ȋRs;GJ)JPъWe^-RRM^EFsY3O"g ƣ s #& ɀ3SUSih  $"ihukkGv=?6ftV1&&RX<3ԱZ&(7sK825K’LiuI*|}`w{Zi6OSd4tĿGc}Ņe#޸u+W>[pY?ډU: 9?|Mh! eƓ[;;lﵳ94 Qɋ2T? , 'cE*C k[h }ƙe&VH5QNr䟄@HIK_?5fNU1*!qnJA,W;cLPRW'!(BzL, /J`4u+c<|(vsvo1^~gP*FSܼzV6]rU4LZr8# bDjxK3e](m9Vr F8:ZZ  u*8*y0M4˿CSy^+lFS#gܺʍ80Kx[- 7\y|TQ*FPD.H ̰"G:3}amjqHľ@g08ld8MۏH x UbP'ވ#aATJ֧Ӫ(DLg콀m+}Y!Ŵ>6hwEUfx"N=NsQ/*KKK\%=v }ϛfPvXو Ϟ%^Q:nv+^n|%m#x7}ٛU%$;'|╭=ǎ(>5P!4^emup\l hQMi|{ߧY?:mn% |Vi @ ƒh.8DK5!<8saD1aD5<ĭY3,N3{E%ˋd:hpGkh4ݫYPkԣ EQj#/5(OqQ6O;B`SsurcdS:pJn<urLdž\4=<]/9,ZTCJ%o&/-ɤʎ&y|RspEthFu~J?Žsla j#P8Q9PÔD W(Y?TDq)h;MEhÓgpIS:C=hSY ހ4p8&Ϙ,)FʦӜj2fqfMY(u>~ps+G{oL9q?('~Vo7fwՊ'qcR+yj1$MP9<~Dtܧ<`5%>`k,-aEx:$% Gh!y._5| Gh|e+wx" |._W񰷿A7tG]ap0߷q)%JNPVOTL@#W;Jq69Y , wƮ ])̃ǖ o5Đ'8O[hE! B _Op5Y͌~3O#+&VZ$GR{~ PO U QH2,Dyaaɪ}n CfM'S"!( Ex,I817% 34(/8QEȍC A!Nn~w86c… }Z3* Uc|a^oijO?{/>(*R{X{߭,*xV,:l+j\v !j5]h4"s.~}ssL_nv?,?y%ΆاԚܰb@pdc25q#̙[~C7}a3Kc40 bVU*&K<hW™9 zwBYLӜkwkЍ!E)@*hДZNtUbN4BڪAOϓLZ@clp4b2aWyi3oC}Wcܸ0n ׮^'M&DA@gdi^oʑE~0e-|䓿"`ߤӔANW( hڜ:s=6Ϣ$GܼtB{0=HpAy5g "sylnkuW/fh9E˕U/\j_ِ:LT0o>3os0&|8y?']vO$+Ɋ<ω="jkͻ@cuZmV2(&'Y{޺xՉϕlgNZ~'kq5 jaf V[Krֈ\Yb}'BQHlrjx^kQ%*|"Ú!a}{e-ܼu3=:!HǞ[7.˹'s\|l D{:ɰN-sw(g!y tS-yAVgY(KjaH;~EGrӊQB8Q׮Çpu[p`+ r6-ݑ)6TB ,UȊ`uԤQGP(0JD Me!ԶƎŴ$)AzT OgXY?WrU^zqr[74;mE9vpEt1̅xIAL111&8 8[bt) +9nѪE9RH&z£O"!E]XySp';E攥6NLv rf!cj-'SZIuUaR3GyƛBQ;O j EADQ9u w6H\bIdE؊: J:l$f#;7 Y!r!*͛7QJ$ f8yh4"I7oCȨ?J.B2, ߻+>ˁeyxR06kxajP #Xk9F=+SQ$C{}C{ItCL8#|M9Y^Rlݜ!kƌ&/~c޸ôp»7ý6+MuBеv8KK\;rCeckwD#D- F>v6O6+KO+Eڑ #vv(]e8 vC,>+RF)g$:!qOrHFFN=Q #(*ŏ\GP#z7n^L1⊄bR 屽Eů|3nﲹѥlr#/RΐJc)19{? '=/}GVO( osOuAWKM1tGܸuP`/|{L/)yɛbðV[M'Xk=Q#T3'd)#ItuUK>^?'i+1k;l@h)e/A#T+V*!_:fcNP, u4B^#Y^%bZu%j0*tZ)X$K{Cl!7˂/@ )QBE݋L's&f)e9ǘ?(Q|+f oq)l?IFcε 62FKXH' Z'QgkfoSjbhyto#8gFWnW!u*Zk676eI375=<%1:?1>Wc9r$豓DY<,'J{"6zGcie\zt2aľ( .Pqk^Ղ}wc~o_O]gǷ%/u@Z.0 }E6p׹cUdW]([]B/yu &#g#n߹oDz>W\#kb焠#*fԺ:(Sql̳v(ϟc:h?ǟ@:Pz]N|1(Zo|^#+gwQo—o|\>DD2PH&=0d{ƹC߽5SW^_* 1 Va@aCհ&S!PAˀzPڂۛ\"24t\iůml~;آdᙓ,>}6Yw50{mL1PRPah%i~F?N_{kVK,MՒSNIA^w~&o BR( (e;{g5-daT'8H<9arII^o6N3ߧ?xg}wM{A8~#'1Tgr]*i9d8s 'Ο!Ie+5tA3p(Q-¥,;*,XY#f=(-LLKֵdJZ.FYs ,>jRӜ;χ1R{u4/* w9}$‰:KKe]G˻trVxUvJwn8yj,odANFċ AήPԆbJ+cG 7{%AfWX8N9z|(\B3wp2(feedZԎ!mim=,1=>+tuU0 IP]H!bTh Zi֎ )H 0i3U]>?-, H`!EȊJwQ"!/$1/2QIj2A| ] ӔpL< a8zv7;;[wޥ, -16! cq|Aݘ@sG)DS<>M3̒>^OeYr}vq|sO ?!gђ$BNCh_zɜEZ oHsB[zϵфçˀ,|TISt)Q8k(DK, [!o{d\洈9Jњ|5{S$_*{Mg% VasikY+:hx5 avEr[diFMaHF$S>ye}$5asTføUZkD2$/Kl_QZͦ=`:c}c7_Nw qpte7b>^|d ::`82-;!Das'|9N Gܻ k.P;f ʬ ٘y2|/r(ǷubʼSg3޿K[we|w?o7O~0hqEΙ0.s3EMtntbB^ٴR#,aJOjavV߾L|q&}4dvj{e5!DuT//_)mN;NXATK,-xu.]gcnHe-qxе2٘f X#Lj4J>(ԂpK*BM1#;9EXI>9 k_bt|oݏT.PU"yOxװa4xvys! #DS8bm~=M3.H&CP[yтQ?*0'N22' \V#+ Y!1ãRE,fofڇ7^nllD'zpbLv7bJΚr5_o% tK { ]]>KJ?>%͐Ո:gNf UPdB!>/lNQ@Zqr4,-I;Ƶ=<BF!`pwCt+Ρ'fGW͹~ kjD(ڍϮ)%2cgBvzXY9IR~pHa@Cz<>}lI_s.>oN ʒ,Vt8 M޽|0i=.]B3auU͉FIϋ %K+Aׯr6a TH夓S|mbgݹFK%xZ+Ν| 2'M ++錤^%P!:)|(N)Đwo; BPa:4z]8,E0;dBVғܾ]0xN^,P|ܼg߼^__d-CF'ٌۻݟȿs/Xgjx<A8z;Z |iY0qBD!'{cZ)=8f}fo'(ynbm`sιD7[>h=ؼŕh%Sł2=tI]e_QqrG!; +;_ydHe=TYa8lO? ɏ)}.UD"DI/83rr#^ g\qo\}]_ k69ImN/'7Ba]HszStܥJT/ VDE3#}"6Й]X(lN7_v`6Z6?s}x r.!o>м%^x+.Mjø3Ӛg&@3OLsu=e:>%6\f9fx|r` &b{;>SB=9`dZk-Vͩ @4'>:+jAyR)+H'W&Xj0P,$8`V, lͭ|KXdK& EYS%UUQ] ;+aܽ:瘟rC̉Vt7;H)K(J/Yނ2dR1:% Zq@i tidMRO-ub18!RG%aىABkMJ_|:6EQ1F*CMM(3iɐsںLGsAp)9%#SE>mw9k .{[9FbI-~/}4`5iaLt$魮t8 Q7)3֮f|p~79>9&^ uh]Kd hS>M:Itcڭ?@9im(rCYh0KdG$yN)J咺*89ޣGgi-R(퍒61~l}:z,Y$6BDN2G1:i3CcI0dK[3DѽL'1TKL] +9c:+i&R CZbOp⢖{78 ty~;Y/2j+\Pd)E:*( /cF1w?&֖ހw.5v/ \#,G<<ЊR$\|(GXQp:=a43_z7^Մ-P29e*y,JQRfnsl]BHHBLMm :mݹp{ ւ0( p0l"޾zO !EK3g?ʕ h4LȳZ17SH81qMI$Pu"ғ@THZ# JTYqP0/-_{2|7%˝{L3KC,DԌpa*~R.3v!ǽON{l]$%+X<.Cm#EYqteMdgs!%RM.u39VJ5, VJVpr4'=d63I2stcɊL5cY^7N2?Ɩd27uC8Sag7.\WX+{%Z }ZJH5y<25nOB}%IDATηyPg%i?: $" $ət9o^@ظÅKWQ* >L $O:UEqu:hEuX f1Pper"K_xYТέg歷fc~ ~MtKF2~􈪶^~G^ЀtQ"_0-PA}[|~,˂]><r0:|5^g6 X,4Vln]ccu!lpb-.n_ 5#:"@YT vH͋O]F:{.ʚɒ<%kG!Q( e@rbY0X#I־(}f V+op6Մ JOix! dRk!ܰ>`cϾyeZ"$/*LEPW`1 n5*l3@!Gw)g GAh|j|˟Wٯ5F2h AuB CnKzQ,%Vk 8`%t\ِ8ƫt˂?/Fm-fsāfOsvVkbH>Ln=4l 2L-, ypTRk7zty07W|pW:ݢҕ57/޼ɍpMN3@ T8[\ HbED#zlutEС ]ZJ]{g%GcFÅj%N 6VAFlm)it@ Ii Ksrk ε\lҹ䶯I5V+hjMczy\ʝ9 YhpOCB4fvbmIһ8KH+DR@ b%gYC]Uě ¦EJH8`Zf/7XYb+($BE==`1ҋ8ll40|Uc3!?)l%1H^}!`x" ) 3B 5uFśA]=hd-uԵGwZxǝgr}NjSwӴp,%i-g8:ާ r0\ܨ5o#87[@LgH Yt֡W+<+yfP,)I+B)yby^U"g8 PBPeDJE'0B DȒJq$i'vB+ $T0$Jx*A`j9ԴR*zvy  խV7/{o ^KO/e,tbjk_d+`#bg RmoV‡}WMRvP*CpAVO.," +-(]H^B[rcrڢ[!mT _}?/7NW~ XIcd0vԔ0=~ĢXSah3+ 1lmp$ ŜծF :U)Rᴣ"ߛrx:EYE' '^eK\;760~v>CG+A@q:y"@Z2,KT1ktzkb!BKA+PbMH*H-֘XѝC:<&sXӑ[犫gEck[&,ÈJ$LGC")zmt|o5`IYT},tp7W!Z\,rC!B6U4rVP3,@9Ƶ`LE( .mpkluᄃ%>'%i\w9,E* L?"B%" Σg ͇lz}o?5um ÐN'aq|7<Pfo'EL6y,6Wap:eHKKHSxItڸ٦gP"D(A+>Rj0ԄCRH1Jg?^ ee1`#kyIi ëyuKsL+zz̤Ŀ/Z50 5a/*l/XADiZ$\35ò" +È0η˜ǜt=0<9"p:ttV1WIe vʰb6%- 5A:8}3 #h@RgxI~ GFx"uIʷWU6Z5?`m%y29vPENM+_r B&lF=_ (ił tC![l Ul\T'$gy=c4o84}ܳ3Ҥ8@c)^D* 7z1vq$P$PD&h+tU W{΢v1Š) Dm0U-d<{L 3dq !jlcrpu5.߿=d2+UBJN rN$RK\Q`M Bfm6OK.}ADvX /4AE^_gs#F6'CwH{uEUSy/X.t6y,@I"]R(_@O"@6RH>%5Qu^^ Oґk_G yg$q^o@n'&KKGU D+iNzgJh@J)f2_b\\"at;֮$mp.)ZwUDP%ٲqs)ik tDkۘPJI`12p۸Cytq%ncU'72筩}6/k򪤨kPWn/Z#߄7e15FJf%QHB%(1BErvarE|2##2$Iтk~/::fXkƗ?sʚt`9y /3X'72_{@<#jY`My-p ~sEY4(eM{OFLWW*߾uY`}-âBBqpvcrK9[8(*KiVRz6Z*f3[V8|MjZ$L|yAqr:! s^?9>RX s=8P[ ]te"~1iQf;=YNŐrHXgC+q&;I.ugm<.`XCRV5%Z+&{R—s@1+>(x 0@G7}(+0 1Ut6%JTRaO!ArKymQ`uD}r)b1~tm:ހJJ˔,Mۚ0R5yx窲0- 9JƖ8W Qq&$QG Nt7/&JtW~V9EF;^aE^ҶaRUNQ.)csGmJj>O=Gx q,k Vֽ\dtYa f V VsYBgQf"4.JQ#%$$OYQc-)y `)ng ZIk(Ogsߞ XFnG׵i =90/+CZVXQuMY¯@IP@+@3:=~ Mf{GKvVЉC9JuxVWVߊC+h`{o xqr):5vq##!闿!O>f` 0@Pk%x:7X[93P䮦".tBRn{%+ÌBΩGF0eIE'c6KimVx>nJoIUMp-CbQ+f}J\2AdRR%$f{-ޝWزbt\}w=b8ꀕnō >Wټlծb:b:5Guhjˣt#.kmVmmo"-+9&i-w lH %H^_as;b}3YAkARiWB?aK{19~M, ~v6=Rln ^PJ:˽Gz@*غcb*Qr"i~xt.G{CTҒ |YjB }uV)AF0x1c*}P5ġf1/IK=ej j'b}E\=,)lf5GkVWzir;k咃w\ݧ\z+bӥ4Y# Dr-$"5JB* jxi=&kmc˥ڬV@ e0S4J bJ:,(c+;WAcBxƌGk?|*8kxoXc_B]W?:8ƟWbE"0d[TjzYT:U)f4~ F"{#ƣ]X2(%(er0IpX ҿft:VWW}O99mѭ{߭QUU"ledgg3yPW/6V Z)$! C*S1N^YJ8$M3ʲsN˂C$I(!J ЫՍ55AHNNGQUCBg ~^ Ѓ4{#GG}{\ R{%tB:,FX a %7~-)eVpyu@7 jqX{֯hBw՟|lr39qbA AY[@? [h4i/JSo~_1_N-*]mŀ(!ARU!Bd˔QHG{oe4`8_~v`#X(amcS J:V9VDm_BQ$+T_|`+EW$;'\U8M^F왑%Œ@y-)[zkMWfUpYq,p\Qh@5cι40Ƀ[< [׾F ^1,KK+\@Kᡚ^L$8!smjN SXo#f3<88L-+`ZP%-*!U<83.PPQʊ—TgQNpp0SvI\RjM&\q"Jeg>5~cM)M Џ4e2`c钵^e$-sڽ>Ó1"˨^KDQ/7Q/ߧ^Q5(J+p(B JlU5qCuβL8%Nhl*+\VTG51ֱڣDQp|s1vT﹡ ]Z+oqoX.g8_Y )ո.stHgYVK(ꌃ5&#PCIqfitWW tق,Y,R߮=!i̠ 娱1}|XʀlnwO^PP%%R2x4[B'%hw)/S/ȡ,g=_4Uil$fk} մ^`%)sEV>Iw\^rgh6:eA@`1UY|{y~m O6 Om~?:.ճ)K$Yc"=}DYř#{GIl8Ŗgɼ`mn3o^Ol}l+_ʕu~=36|:{AOhi3˹QaFVH/5tgֱ,i2.#4_^γr)b`Vowv> J*0$3^g`8TgJw޼uU0DI ,y.3L "Og,ʒNQ yXl}~;|YY$͞ve]LVTPgT,/cP$qLs,6<q?;lg!z Q!2Z%㟒[Ark s MT51.&U.#Mx4 4`\x֞G#;˥ XIw0=9@y1[> 4RFh&sްR-`+8[!F0lDHDbk ĄaD3tA]} xC+O\x0U-㸡B+v)Ba am0>iaa> 'Hb(SOo|}덻०u(ץSfy<'ge L'S?UOh(`M<:yr;{BK>9mxӓ?+h_hἔcFā|(%IM($tXVvfGfB)B~`A^)h| gꦺlYdPՆ4ɀn+>F v @)OR*SrpX-|eyyBʭ8YSq>u Zf%cE(TQH._b3 [H%-Q^w !퓟0BguϮ8ǟ9 x ;w?J1ҧt|:>_ u\.˯Zk?%?Oǧtyh/O7Fz%tEXtdate:create2012-12-10T23:23:16+01:00:e%tEXtdate:modify2012-12-10T23:22:42+01:00Ua.tEXttiff:alphaunassociated(tEXttiff:endianmsbTu}ttEXttiff:photometricRGB ItEXttiff:rows-per-strip16IENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/images/0000755000000000000000000000000012273255454027746 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitqml/flickrview/images/flickr.png0000644000000000000000000001524212273255454031732 0ustar rootrootPNG  IHDRSS;gAMA asRGB cHRMz&u0`:pQ<bKGD pHYs  IDATxy%u7ryޫ^U a - H2hF^u9BAhcA >F0!2zZߞq̬Uw5] {NTf|w#nܸO8p"]9gk.|Lt9ft;ϻv$;Qgw+ 2;:{d71Kv^e! b4'31n'y028=Lq.eyB %9 ͪ0Bً2&|j;,S=BMTc3|^=;*4(V ݟo \2@ƀjZ`,J5)\g~?`۴N3JQSviERL!Kʹ l oZ0;-S瀄4)Ff夐:Y'euѣeOOl3Ia$/-_4%}&ھ٩xxI 0IhYO|YCK$*C"-F@ZN{6 辀gdo dx ݹ̇(OZr} @fc lvel$Ѣ2 )@нo#31z*!g =7@f gIT.y@⅚&mؖ1)@fyߜf~f@siƿibILYe60;M "!`z%&q,J~t3L{W@Bǒ_Gu{+%k$&P|kzⰈ6;N*Y鑌lX$F}eN0obIK;&y cҤtO`gwfe]W+ A@tؒ$DhOMIZ+4;6 "#o|%JNDs8k~8Gu\ 8{{y#7<սUx %O8,vdx6vWN>=G cT~0q)>#'mh>H@4DIYP/}tz w/>o?yzoœKE +5..:&qjx)n>~S#O~>'|8K4֜{o|f9rY˹9?-ScnXbtGH!~kI/q=ӛn0wfv p4Pz7MiT|0YˡE>xwXv[<Os uKXL4M0PqņgWy!V.T|ş̿ 𩷾98G9 D251HD QL<$~ji=_'l )$j=Z#U9Wqx.s8b'݂smeo1pQ0:.nF0 gñW\(6N-!vOm8Ds˨|Cgzշ,]L 4@Rs T0Q1IާǑ[G}TG:/)3HhH- ·n본?=7^_OZƎ\̐:$,YcU>og6['FW!|鮀\sg(~wteQ%]@8N?M4_O)zB˶mn]tK2uj33oĶ' 8f L<~ {?18wi8z innJh?Kz|+.TPzw9)F^ wW\W_bIʹ@D a) |ĕ ix-w<>ƺk\OwvH%d'k@ٙ(RN*|AVgVR&Oo1Y:ٵnEh.ӯcR^9oC_# 0"G2.齨A\HfT[lڤ|bA:Rv.W,? _3;uYMLA0]|ocZXsi CӔ)&v8`{*Y}R8x?S`//5G_"_v|f# 6T]Kgx đLs$e>R`znvBNnj|X~1xI_&1]IA')^`eXXYN#w[Cw=7p].xpkb } E hb5OGSJRs5ogD)c;*]t%mi{yHTsxf9}¥i7 !fmd6,-i{,brϴlR Onoonm<+[]? O`q>R*2!0M[zP LB˻w})|^cHzѴlf:%څ rYN<$- ,]B–%12զ1cS^p/Ȫ0:V`vPP4:Ho/` b:gYL|7kOK%o'$*G0H `umV1NUN["Wf>''|O7;p,dpb&:/SWom32洸{#32@ D`5ɨ ҏ`R;x*9]Vr˛Ο̡ X t@*l1x;tG%cg8* |M?z@ݢY/I6҅dP7^&p,\5Ȝ̷=amUWD'U=9AOWil.$"Еi5j,N J > Nf,vK:\eIn5SQr_}u`f)MU M{6UJ] &qGfO H%FY9IZ{ 񴔟~቉0FMG#춅3$^|n3|ZGB]D䥞0L3Q_y ͇_$JW'&kl!={ iu^I f`#ڃwguD$s $7:]& |RyMIi/v($zb[KI$W<P<33?`1w~|aGނi^$Ԇи$4:/ W'?~_gU`ix܍_}kmefbf~elgDpOm&_vJ2 uz7|6ö7$[MOsjvFojxQBr;W P LC2K= )#'e&;Liu6;¯lvOpĴZ!jh aꥇþ?׏_EI Hjzk|KB8μY{Ç+_E('0ÎH fv?Kֿ_?i{@&wM}_w cF'r!?nzhTuKAO{[6"v`5 `'5(vRaq89<鳛Nmp"qa8U2?l-/}p}%$c#M,cZNsb'VGzÏ.?ת(!v˄4nxw3.+?2a?bL-CI<[=5o9tW*S"ϵ&RPG-b&vq7?{ kzf`{g71rLkkքXY {H>{ʽ;ܱ极[+H !QHr֭_w:~k1XF(:໪U{ꔍ18!lDǵfJg< ๆTC;',ond% [8mw}|3Uh\b6{uB p'47v\{kN 8Ü`5ȠBl,DCGw/t _cE\7Qzq컰I2-r g=?34i= >L f}pia|Bc%.,SP7ZO􅳿׬F3,B>3*K%(v'x$TvTfz"26ƛ)ٲ,<&"A[`4E`R|mDZ817Q=nEF!+nO04C^i #+KbƸj%jՈ[}Ҁj|nVff[$쌁'G Φ~YwL Yj~$((OrRD&^sNk1`DJbrqB(:j0QA[u{l eLqRE1F#^j]ivv׭f{q`q_mV a)pSð:7u_Z1Wcx-T\z "!3^O~|PB:W$!߁kFQ-q†esNm9 +[ uii7DJMհ$b*7 PP h ]⒁ؤ=hmt(9N 狸qщ D('6vIF%MY=̻ >U1fT+ル"y5|R/8H\fi6{+9# uAըZEXsЙ?q!E)RUU=2>Uɞ֛w"D0EωR?@DCh6TIthteޘþ_$q`[Eh5.F_)`#FMd.И{V=\+BA ^P,vF( AbAX^Um;8+ef{~rzmC3xEVM$Y0VU͕}ܦF)xxE~I=%,ˠIHTK:8#΂ h~H{WtE bزgKSĖ-aSHHU-9QTE4AE\u nA1*#8:VJkÇh(}vYLn}H=piJ.Jb1QI\qB4b+x`bK+616樨Zc]u,a8ʑP-'mB+BAbM ̓8c|@ٟ{3={/掅 p*WOQI;(Z,? 38ZJA|cR0;UsG샲v'`nۋr%ݵP<#x.%ͧqXD(-xǧvjΒ2دNq Nvn~3:B%]41Erϟ#ISpЙ:I`Zl|0_ <[3`;;,SuMO0C@/L #u.?K瞖=2`~}eA\[ f7P&U{14=;}nytL::ˇ \pGN F%tEXtdate:create2012-09-26T14:59:32+02:00n* %tEXtdate:modify2012-09-19T19:25:48+02:00gIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/examples.pro0000644000000000000000000000016412273255454024676 0ustar rootrootTEMPLATE = subdirs qtHaveModule(quick): SUBDIRS += webkitqml qtHaveModule(webkitwidgets): SUBDIRS += webkitwidgets qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/0000755000000000000000000000000012273255454025211 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/0000755000000000000000000000000012273255454030041 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/README0000644000000000000000000000057012273255454030723 0ustar rootrootThis example demonstrates the use of Qt WebKit to make a hybrid application. Build instructions: On Mac OS X: In this directory: qmake -spec macx-g++ make clean all open imageanalyzer.app On Linux/Unix: In this directory: qmake make clean all ./imageanalyzer On Windows: In this directory: qmake nmake clean all debug\imageanalyzer.exe ././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/imageanalyzer.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/imageanalyzer.0000644000000000000000000001671412273255454032703 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include #include #include "imageanalyzer.h" /*! * This class operates as follows: * Parent calls the slot startAnalysis which shoves a list of QStrings into URLQueue and then calls fetchURLs. * FetchURLs sends out HTTP GETs for each image it can't get out of the cache. * As the responses come in, handleReply tries to create an image out of each and pushes those images into imageQueue. * On the last (detected by no outstandingFetches and URLQueue.isEmpty()) call to queueImage (from handleReply) * a thread is forked to process all the images. When it finishes, it emits a finished signal that is received * by our JavaScript code. */ //! [ ImageAnalyzer - Constructor ] ImageAnalyzer::ImageAnalyzer(QNetworkDiskCache* netcache, QObject* parent) : QObject(parent), m_cache(netcache), m_outstandingFetches(0) { /* ImageAnalyzer only wants to receive http responses for requests that it makes, so that's why it has its own QNetworkAccessManager. */ m_network = new QNetworkAccessManager(this); m_watcher = new QFutureWatcher(this); /* We want to share a cache with the web browser, in case it has some images we want: */ m_network->setCache(m_cache); QObject::connect(m_network, SIGNAL(finished(QNetworkReply*)), this, SLOT(handleReply(QNetworkReply*))); QObject::connect(m_watcher, SIGNAL(finished()), this, SLOT(doneProcessing())); QObject::connect(m_watcher, SIGNAL(progressValueChanged(int)), this, SLOT(progressStatus(int))); } //! [ ImageAnalyzer - Constructor ] ImageAnalyzer::~ImageAnalyzer() { delete(m_watcher); } QRgb ImageAnalyzer::lastResults() { int rTot = 0; int bTot = 0; int gTot = 0; int count = m_watcher->future().results().size(); foreach(const QRgb & triplet, m_watcher->future().results()) { rTot += qRed(triplet); bTot += qBlue(triplet); gTot += qGreen(triplet); } return qRgb(rTot/count, bTot/count, gTot/count); } float ImageAnalyzer::lastRed() { return qRed(lastResults())/2.55; } float ImageAnalyzer::lastGreen() { return qGreen(lastResults())/2.55; } float ImageAnalyzer::lastBlue() { return qBlue(lastResults())/2.55; } void ImageAnalyzer::progressStatus(int newstat) { emit updateProgress(newstat, m_watcher->progressMaximum()); } bool ImageAnalyzer::isBusy() { return m_watcher->isRunning(); } //! [ ImageAnalyzer - startAnalysis ] void ImageAnalyzer::startAnalysis(const QStringList & urls) { m_URLQueue = urls; fetchURLs(); } //! [ ImageAnalyzer - startAnalysis ] /*! * Analyzes the entire queue - just starts all our http GETs. */ //! [ ImageAnalyzer - fetchURLs ] void ImageAnalyzer::fetchURLs() { while (!m_URLQueue.isEmpty()) { QString url = m_URLQueue.takeFirst(); QUrl URL = QUrl(url); QIODevice * pData = m_cache->data(URL); // Is image already loaded in cache? if (pData == 0) { // HTTP Get image over network. m_outstandingFetches++; QNetworkRequest request = QNetworkRequest(URL); request.setRawHeader("User-Agent", "Digia - Custom Qt app"); m_network->get(request); } else { // Get image from cache QImage image; image.load(pData, 0); if (!image.isNull()) queueImage(image); delete(pData); } } } //! [ ImageAnalyzer - fetchURLs ] /* * Slot to handle the incoming responses from our http GETs */ //! [ ImageAnalyzer - handleReply ] void ImageAnalyzer::handleReply(QNetworkReply * pReply) { m_outstandingFetches--; if (pReply->error()) { qDebug() << "Error code" << pReply->error(); qDebug() << "Http code" << pReply->attribute(QNetworkRequest::HttpStatusCodeAttribute); return; } QImage image; image.load(pReply, 0); pReply->deleteLater(); if (image.isNull()) { qDebug() << "bad image"; qDebug() << pReply->rawHeaderList(); foreach(QByteArray element, pReply->rawHeaderList()) { qDebug() << element << " = " << pReply->rawHeader(element); } return; } queueImage(image); } //! [ ImageAnalyzer - handleReply ] void ImageAnalyzer::doneProcessing() { m_imageQueue = QList(); emit finishedAnalysis(); } //! [ ImageAnalyzer - queueImage ] void ImageAnalyzer::queueImage(QImage img) { if (!img.isNull()) m_imageQueue << img; if (m_outstandingFetches == 0 && m_URLQueue.isEmpty()) { m_watcher->setFuture(QtConcurrent::mapped(m_imageQueue, averageRGB)); } } //! [ ImageAnalyzer - queueImage ] //! [ ImageAnalyzer - averageRGB ] QRgb averageRGB(const QImage &img) { int pixelCount = img.width() * img.height(); int rAvg, gAvg, bAvg; // We waste some time here: for (int timeWaster=0; timeWaster < 100; timeWaster++) { quint64 rTot = 0; quint64 gTot = 0; quint64 bTot = 0; for (int i=0; i < img.width(); i++) { for (int j=0; j < img.height(); j++) { QRgb pixel = img.pixel(i,j); rTot += qRed(pixel); gTot += qGreen(pixel); bTot += qBlue(pixel); } } rAvg = (rTot)/(pixelCount); gAvg = (gTot)/(pixelCount); bAvg = (bTot)/(pixelCount); } return qRgb(rAvg, gAvg, bAvg); } //! [ ImageAnalyzer - averageRGB ] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/main.cpp0000644000000000000000000000420112273255454031466 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "imageanalyzer.h" #include "mainwindow.h" int main(int argc, char* argv[]) { QApplication app(argc, argv); MainWin win; win.show(); return app.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/mainwindow.h0000644000000000000000000000455412273255454032376 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 MAINWINDOW_H #define MAINWINDOW_H #include class ImageAnalyzer; QT_BEGIN_NAMESPACE class QNetworkDiskCache; QT_END_NAMESPACE class MainWin : public QWebView { Q_OBJECT public: explicit MainWin(QWidget * parent = 0); private: ImageAnalyzer * m_analyzer; QNetworkAccessManager * m_network; QNetworkDiskCache * m_cache; private slots: void addJSObject(); }; #endif ././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/imageanalyzer.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/imageanalyzer.0000644000000000000000000000043312273255454032672 0ustar rootrootTEMPLATE = app HEADERS = imageanalyzer.h \ mainwindow.h SOURCES = imageanalyzer.cpp \ main.cpp \ mainwindow.cpp QT += network webkitwidgets widgets concurrent RESOURCES = resources/imageanalyzer.qrc EXAMPLE_FILES += html/index.html ../webkit-bridge-tutorial.qdoc outline.txt qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/mainwindow.cpp0000644000000000000000000000643312273255454032727 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" #include "imageanalyzer.h" #include #include #include /* * Default Constructor */ //! [MainWindow - constructor] MainWin::MainWin(QWidget * parent) : QWebView(parent) { m_network = new QNetworkAccessManager(this); m_cache = new QNetworkDiskCache(this); m_cache->setCacheDirectory(QStandardPaths::writableLocation(QStandardPaths::CacheLocation) + "/imageanalyzer"); m_cache->setMaximumCacheSize(1000000); //set the cache to 10megs m_network->setCache(m_cache); page()->setNetworkAccessManager(m_network); //! The object we will expose to JavaScript engine: m_analyzer = new ImageAnalyzer(m_cache, this); // Signal is emitted before frame loads any web content: QObject::connect(page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(addJSObject())); // qrc:// URLs refer to resources. See imagenalayzer.qrc QUrl startURL = QUrl("qrc:/index.html"); // Load web content now! setUrl(startURL); } //! [MainWindow - constructor] //! [MainWindow - addJSObject] void MainWin::addJSObject() { // Add pAnalyzer to JavaScript Frame as member "imageAnalyzer". page()->mainFrame()->addToJavaScriptWindowObject(QString("imageAnalyzer"), m_analyzer); } //! [MainWindow - addJSObject] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/0000755000000000000000000000000012273255454032053 5ustar rootroot././@LongLink0000000000000000000000000000015300000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/index.htmlqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/inde0000644000000000000000000001151512273255454032720 0ustar rootroot
Images to be analyzed:

Image Analyzer

Status: Idle

Latest Results:
Red: n/a
Green: n/a
Blue: n/a

Click on images below to select for analysis


././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000755000000000000000000000000012273255454032711 5ustar rootroot././@LongLink0000000000000000000000000000015600000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/READMEqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000000013212273255454032707 0ustar rootrootThe images are under public domain and were obtained from http://publicdomainpictures.net ././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/trees.jpgqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000030050612273255454032717 0ustar rootrootJFIFHHC"9%""F25)9RHWUQHPN[fo[a|bNPrs|XmC""C%%C^P^ZF!1AQa"2qBT#3RsS$5Cbcr%4D 1!AQa2qB ?$@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ > Ċ4&DiA)j]?&l-W vY1Ϲg蚘C8ؙc1'Q>Ь¸_xQ@?E4Ƈ뾖p|D GZ,M0kq}E~MSL8lh.埢`ő:e`cG, 3M0}3s~o:?gac45pk|ei3M0?E51CM\ٚ?g蚘jE4,W{Sn4[eiɒhY&jFL?D3emLIn*mGY&^,D^)4OD ^0Q~(vf4D vGދD vNhei{Os;O;RDGjoMLIq$h&|F—[&M0"u"c?o覙 v0-ipO6GkH64))O[+|Vso-L8M0}'M0iq'[&>‿u|OM2?o`O>'[&>eiiʏ[+T4L׹oaE":Qo覘b1H7M_oLH ܩiW##|DۺEu0iRMLh{FiiǺo m\7OQi0Gr?$qfI&#.#i3V@Zdrg讳3M\#fƌEa/Fhe`olqtG-ITF#NYmIh"&)S#~ⶒZ\Hm\16oL&SqLSdLT/ }Sޱ#8غU0EJt`)_qZ)Ҁ? S`%ԩl~;cgp)5n &S&<\nƏY+Ɠ?Y+6u3SLhiejVڐ-c?8f Y+wj "ErM1.忢K8xʽΓ7?ڟUN>+Zún> z7S-0 B P@?J#4g w4s  s`@f@ß488(-e*@Ev#pM\+8Km<8U:V0O:fQ4i?0+69Hs*t QdyTZ_o覮⟻iii*4E4(PmJt_5? /?^  jS,ڸG t?&(Zi ƍ=%ڴ]UjtrAQEZiqХԓy|kͫ:7v:t:D@@ dOh!JAaT yd y¨ $HJ*ꠏdU(S&MS4D&2LbɡD d@ [)S:!%&Nʠ-n*[PZ!"Q ܢ@}%P78P=;B(D<1b87P)< [*)sD-&5d,"/$䦩I@T !>)FipnUKAը ؉$p ʁD$\ ۜ5Z R VBb#&GUMiM{A l 몁` )i #P-PsEf>h-)bekn)8T*XyGEF"Cz`'y2y@Tc\|[v# j]g&lI."IUTf 2D0ni)XQ$ɟ)qV\ "8RKo9; 4t Z@(n|G 2q kT[AJ:D5G J$xvKqup\EN%QhcrQZ7*=yL7UW8otR.znaXjk o|]Zu6 5h{fo 1kmz+ Uf0<Ո̪kvu-.N P9 <A$hW,q)Z`ŠڛĴ(;x\QLaV(r*?Vu;ꨐH 2=X` sEE!ĢAB7Hs0I$eN@@[dBm,SY?O'Y+B 7 H-1A 0"Lԩ:hLI7&-8e1M-!I(1$ETT ZQEJ6;T#@i$)L*G2" EXl9u@ p$=SL*7Zf@."Ȇm9EYP 91s%H#EK n&@䐢zeSih;e0Y٨5ȱE@>L@SW#(k 5M\t4ks~+8*9 V@yK?ӍW +z0*1b!1ʷq K2$1O-b1T$TuWt*h+)UUsԨ˭#[8qi㖣;`b@LeE-SH5  + x֑EoJ.l`yagy3$;Q]%U'#HAƴ 41j) ¡fZ15f/q$I"JY@ (6n0)ZI@Q-e%ZA pABN$>H}踺qe,}Y v菒3cE8  WôF䠆v ۪9{Aad M&(+P6ABhJח喐7AlLEoN~LN}Yi!Ak +LԦ1|-Qa邍]t)d>jȇռ4IEyo8`do^#R+^x^?;U@ 'i՛m|ME.{Ikxk!pɧvxS y |Q0F;\a `S"UZg ]ODwCu1A-qi'QZ3AYPD e(DE@MK U{S$=ceU((6P)AVw܁5D $` f)@z c r)4TrUChje@YD̘nsKvP@U lAD( sP2y] ,yTiJ{nq,{*[)&EV&MW`- ҈ :bB+䉴t~j)9 K  hujĒl4x0E7b-ꢥŽйFʲQAVT5o0CfyDֵ)F&E[?IC ,8+5JMJ.H‰w#@OLTcK$XU PSnQOu=z Nc] sCoG5ej3ZpA*GKHrXW5v^Qa[&cg80Ȃbe]1Op?O cM205K$**IAU8zs`BǽGgQ$i*"IT>v׈uٔU~JnG%GZY%9?$(&ٗpTW2+la,RPj:dAú;"ӭݜGc}w**-ՃZ( 8ӉC C^%$kd ?M?sL߸.BʵbZtB13jz\Xp;+RABō2sG5AbG.iF4s 1=UDb<_z @y4 B$- B#0uIP*LBPqmaܐ0Je"0q`YT9QD(J`" "n@5ES .D]ʠ9@O sr zv,@&@0/Y{$j4 y-BKډ䞒 LV+qxbLB%P &P'PfU ʊm" `B iITjkTZ ܒ22neJ^ *3Qdt$#eQA":)4.t³ٛeo]ʊrwRLμ}*,mLVyfymvCj ԫ`-5u# '"!LR>r "nx n@Eqb#LEaE]0 (?;FBLiHm\r *Ic :o.KSG5v!u9,Ys8lW*2L[j+0EB3&\ A+9 ܨ(MМv?*PK8@EI# dJ1 pgLϢ`H*J lE3 DIQMw6QW + ŠQtT"f Gydc""Т7 #d LAP@8((9TVEq8('EN?#:L;+*Z`N A/(AM@|W6(eP a5"n3A +yAU%csCifI"N70螊hFG$i[&[iab˃bjbf6ZQT&( O> dZSLD(TQZ ܼԤiԛȆV<ȉ *4Sx-`sQZp&uAPgVKQU70]s5~jjZB(rZ0LaAfDU7@$麊`ȐVn-B Nr}R -=eT 켰 }U@Rd*[**aT\!2aΑ}"@ț(|!towUk,r^? t-#.iOG.ii< QKxf=d;6n1p"9 ]E&58Ldɖ. \ zqu.?*xi@ tXPwm@/4x 9N86SLaW=|<),vVᇓou1ɦpIsIƷTv:A?wDYtr5&[ rT 0,TiᲘx?C9!A1*9ʡMt9)` MxMvd&DL;?z(-!p1k@, Ee-0U7+F`J 8\U-2QyE^h E1(sdlےr@? O2vu+"#IixHS<:CEMʡ@K@)Űb2G FE*Kf ʠݵ^Zf +a:먩Wk,*!f" AbnC &Deb,i۪>Rvx4N"DuWA۪%G9LSsXȱtv/-l6/kq55qs&[!]âtS ysn" G梎F!Saq 7tpWRi Q]1d?-!jFk~.781YC|+a+Pb\eXE]6[?\ sA/h{co#nD>Cu_a-\f<+N~(8UD H(;8jmu7sZ hwtoc#;(evUMꢇ0G0&DS͛KcݣeD ے ""xF+폂yei%҂0P2y YDtRh,7YER I7Av@T(."(` T NLk `̟P p0; mpx7DCʢ@E3$@TXVWYOke8`EDNf:(մ44.I5!Rc>ՐNm4\"lė\[,L`cV -:zu4 @10`}zzC+TZo48%sD ;+:(hꢩĺ :dD/6h4$R/9J6rClJW6 24^?:[` >g ,qPrVD-C(mRs{ 9slJ+22 #tMࠨ '" n%*`Z˜c*M( 0-qjrnp6Pqr7覉A e؋@Im: A39Td( Z '2!*l4l"NJ} 7QZ8ZA(4m9f@"CH L+`!Ө &-㇨-!G"Fi?]%T\8Oj"Fnz-*AP0kε6@0}pF}h>2DW!F[1yA8z L O.cX\bFm\aA blWC`#f5TזمY"dcHl)(\6l\tDvVQ빭s_PeSLGRmRKd)M1X֚m%>'u*w sʊ›:/zRFčO$X_ĈmwV>(ae8gyTAeHmM27t0B "a:SfLMXis0N S"x(dxge(ZpT`pU7HY0lړ3`zwWI=.Pl%Ez}6V3 $i4'QAsRpD8BԬ.+m`6]UTx 0!91-ku@iqԭ O5ůLu tzAHA= (DuEF n" 3S sPIp6T"@]AꁁiTQPk¹]Q=n,*Fh@-}!j[@pcPȲ P + %B? wA*iP*1V1<2" l$BKDٹ 1v1vE@Aj<p09)@AmqAa3 K<@J82Zt^}Td8DcIPATkETWNN^>1~n&_*?84X:!K#Rwx c/ +6VUƸ0d *Ek\I&m[Y)@ @TtQ]}TɈKs 8rPD(8"qr65 k@nVh@ g\jJ۝ A;L8O,vQ͙yV%xo9"F8!A8f!^k:vB NuJzY]C@Qb QiShU{iRZZOݞr\>jU\SyO$**KvԖƂsLK*@ }gj4jsHE^5.xQXԱlVFv@ɰA3 Gd 8Fx@SZHSAsH .2bJUn #U $jnc!La@LH(0! m8( PMt XJs P;z vrݶE/D1DUp.dh9T[|FUDGEw;C tTs]~ /oթ#6LIG~(tA0Ҭ[ 1m+8 R. j;);k*+nEu;UP s.᷃M%?o7pK,e$lJ.sׁJ0Zb6ϐWO 48Vq)R bpb2vg'ʵcL'o:46cDƆik ֻӑ&uW֏6n`,".%7H/Eh(hn5L&0|=GgdGT[8S1NO9KKoxJ6{迆qic\7K>yc1# 3kƩ(r5("Rrg98yV %Z niU@;sPT9f a-9%Bj֨XeARU PlO#YWKKČj1HgeP#f&IvnRp}= H Ri H"B nȬ:9\wQZ1Z5@kE{b!|ntPv'H附1FHt;*T#e5d ޑ)"/c ~?6D`Ƙ6coLWd&fTd9*$P0H l2AEP i&|("HǪ xaΛ4zW6mjמldxUS(*tq 20 畫榸1p&׺SJ A@ʀP=Q} pܪ%e6fPG, )#Hi8Eh h$[-  ]7TP0-ul`m8kM06UF):- r j&&DXTF.g(LOBUqK֬=ZkGS\ZQSw0-:;kz@.Fe1cLGS*%$Tě]r\pLX h)?`H.Qi$E )G$kʈ4万рxʣXÕAo{""\J¼KXٰag _F [}*Uݥk+;J%"b,e /`̙ja4HA2<,0dTe^$FԚ\l$*[GEo;6HV^@q)Td弥E{?ǵ7ʷ+5s6j..D]la K6QU@COxcRѽB*xҨXi];nZTG tM:yǔ"kQ|RAiU:F࢛u@:P'2:hXbb)y j*3?%jOEw11T A:l EA&nS)Wh-.TpYim@34KNGPoly<Ⱦ˝ԌMTP-<ɿ$uAR2ށ;`B9I 2l9F6A#0K **f\7A@]郹U driP6`樊jb \~$ d@|n $FIPQAM3" A˾w!&]| X I)[oFHH=9Ds;-);gW>:D sEz Sk29뤎v7I S t7w ԙSnPZAwRŞSdFz,V.s.uN`lla,!9&?EsWx 1" wA~JUTFJ`B"DPPa6l%EhѰ m;D:n y&(6p>Hݍ1~[oI&=U@[+QOyMͦ n&*Wava/\Ox )5x" G LOZyɿL\" @ۢm+:2A7f(ᩰdYROz*$6-! D aj6AI}k,y$ʬ.AySm|o.uGq> qےh(9łsiEeŲxj8sn|` khY~MwDAA8s@p,"e -$Em 8v )bk*8'\d>ʲcbLR?aqZ\ښjȱ!詭z5XKEuW@2Dd(U Y" 00-V@TVuA$"(U#o$fPNH;&LLh@ôh(悋ZP-d !LL -B p@ *@& d EF@LR?CiiFK=` Mm3U%ꎠt $ɍ˜i#uE$G1Q) AW!!>(=-kʡAl/nJ?OzOU1I73DuGE "UaDJAxF^%14oB?b&Ru "W* `^%Y;mHnȓXUoĸn@bŏ?EP֝4p"9ȹ(1t&!E0 s!1IѺA5v [Q\7 W{`PI1Tupn醆A'`">+r3Ux]y%KK\@ չm{%7Nx(-$<3%F5wHȀ:֋\2Twh$ #9QUBے:$J7NN L+wܪ'@̂U&-袢5odMp $v訵M"5j  6HTkCtM 2Ks HV[U\ `(ki 3b iXR4Ip9))cj-^XJ:x*S8gzS[͠4JYRjVqKH q/AMuϺZUv1gT^`< +%FP@TSQG)ڔWiTq"G 6+:<8WKQ;1 :k˜m zMȾ}IY\Cz>G}]1i-| Αw( 5gr©0I-Z[d2$O4XiGL,6ysP@3A a { o06TȾȨrDw+ DED!S<@ ҙ[N@+RMZʁԜ@ZtaۨeGG[QR$q egPO5i8qV6}83TK^A*4*X89Ή 5yEE$ZHi˚%wWֲ@jc̓#j$6QS1IPMcH9b`[KEA纃Rֵ.aT6x \hvfX8nJi&Ɜ<\Wխ6v1B722郂y439UF#(*xĄ4TϋV= 92CƱw*9uU_ d9]P.2Zց0 2O;w\q 7g s2V\+g4-EvUqǢj6CX XKL\g3XK+jHXi39 /4ʫgq LǺt`jzTP4cF9}q-XȓE#0uN0N顖@MAư7*9UFĜ)U/ .U(c^RUI -aͺ-O򮑗R6blAv|UZai²OSn(")j!8QW,ּ'F䨦eC,;ȟAښ_'YM@`tN -u1Q3Gd:2)ٕ'iW/ciT.c(ׂKڟG#^5cRS~ŬD-+A*Ď;qZ+HCHTQ\L{"&% E'N @t8B%9 6@i =P,n@ ej80p6R-P8*DI)L)/"$">צRϏ1[eTSP !eu)(w@ -˜̞30 TvC-ur0VJ;:asHE45ZUJrPn%JמzTidWUU]=N'>[$ @h˨;8VՕ Va0X+皯o[!(vn \1)=Įn(1,;Jae )hk@ 9xu?]-+6*'/Φ Hc^EhZP?):WF;Ubcf6* vHTU5ԋKd@WJĶZ "{P NpCh07 |D5AdUX@dECfnIL{[ qF֫Ze wTcIw;+-aڕ+ryy- 1\MVv@&@ ~*,[["&t7 b@1l(x1!O lA'3{ 1 uA j(2 XDyU@$0I>@'Z-36AL)U- iJE7DDfEĘìn6a![P7X'ADCDRA!Ēo F*"phqe*GQnd˷hU' xK7Է*5)Icւ#a^ `Q^gj0Ҧ$@ϦC:ۿ )rfͭDojh\U cZ$ Ӣ:o#XlTiN `s*NXι PDY`O&S^Ag].E[\ftS䢶ep5H8cӽ CQQ`cl)IW23ejA2Nꡍ@9QHw@\]G?r ت89->iUM"l5cJ{ e7Ttd $++껼RaU:fpϪKb@)@:a  @kG[`aځ(; vvD,+X5P|2$M=!@I77?hAڄ~rHX<7,M&eR"ck(mplVkR5oNШ'Hۚɭ]HѺPhx&䤥k<[5ϮSL*VX.XS Px<5@Z|LTЊ=z]K@ƯlOِ4F^6ij*nH>iv@I猤;Wő'Kxf9DˎKZ=. eԓVZ!Rh: Oɉ:U ө7}_=KˣAuIޛkQ੒MC#V>) 76A0UI1KP!?Xd+xJ {c歌9QNl4a Ȱiv\w2TPThk!E RsK@ c" zLwSB0_=n\hCsꢐQa$HU O3$@~j(&UDdQUc%Fb\ګM7\x&-*Z}"2y%pTΐ:)HhEh"LE*@9fwineJX_U6Z0XUYPKAP'k &J*$_ (F7RG%  T1 uʣ@q($ 0-'tEEQv"D gub5*}VgIHu ("!;bT:,M(EQl~k~X[s4i0{]X ' kAa`\Èj%oa -%qͮ("-;{N BԌڟR-25 [P8v0<8E1uNI|$pG^oBj859ߍu*h̰QNCJ5$`z]77DFT ʃzU[F̪ *:AAč-#u@i""LA& J+.8Ÿ :}մy{3 <&ȩV:kS  Qhp_5ma\T[$I@\Nȭ8w>HaJFERsdGA1x k"<^9#tS0غG$@J)6GfhVtyoh+HpaTf)AEoÖj!ʥY\].3!c캁y:KqO\<&f<HUTa.@?ui:vE0HS3)?Sf6k4(*(TPe@H*ξm+"lM\Qe@(J}y% jmL`B55 `,WOpNefg\f;5imjbNYu˙mˏ>Q$sYU:zU50JƴT1E'qZԼ~p0[6~V5P=b5@mtTTMΛu1Eu:wJJnixM%R{BvTp9ӄs:I=yU舱MƘsAsMdqnȀ%8E Tֈdu1(pJ : ")4"l\*2vЁ \@ hN$iv>AQ[3isqe{AGq7'rmeuEJGI SƏ(=:/hsAhZ5wutՉ+ OKA23}\A*I& Z }6!iDBhA*v":._1A~7ECB]!M4g悴A XE %5]/@`qC/XR!c{-J;\@YtƎ$e]8R֤ys "hC[v2fɩV AhT2G;M+^k57e+OC1^n^4͏?(~$sÊXEz#UuJAMԅ4kd1RktTTekH(~0Py8UQPUe -e'H VlS@2~:"2v~Tyk#VbL*; {e2f;6 $ uXE]78A%%[qJ> LYIs,.P); '(<^?M rגQ0gTdrP^muI&Pup5E:!-u#j9ԝN,ThJHvt\)zxWp6>k". @TP0B%]18IY:ȠsFS@- 6K^oLѮs:\B-f.Iu,0 L#ݢ濆a$ceшBcAi9,XN**hP&NЮ֟hQ˻D`9KZ"Hh6[ƷJ;8fM.W78 GQֆ!gHsLQx[doq6@LȆڏ -i0r!rv { p"*ϪS&D Jٱe_xHU@M UL Hkk(1{{/:GE;L UmV7[N"9]0o\s`$L MJCir铪(u@AZT H̢%:}]drQRZ/ ;wհcRNTǺ( f,Ƨ-X4**}&kkhe:(T-|1qu*R0ܐ1qY0/$All("CHoXҫLӒ%tThj:E\yKw)iׇ6L`"5ctFh k* ɼVzNMMB *SA6rc⮊C;eQ,.4X8i+ۋ1ʺZilN@23v=y|Q!Q+ a# Ui86#eŞ5~y֙.q8 `VWr1kŔiE&<9#!&&<~ԦEn-+tUo2lAAl> ]J)ήAkÛWCU[7!vY_n"6Mxe0Ko#JGٜ@8zY.kUҢ"tU C@ Dxӂ!B>zK*9-0kBI ZIsE5& D5uWS *`TEt4*4v#dtӷUQQ9بnExsh&A)o=cfkH 3xCnL;%$d;(Pz|:zn4ФT -i;wnמр@ >1]eEAPs|Pmxp!z"% fh%hsdcL9A$ E&",0>v"^PjI c6?I$f!cC4D֕i4&7݇:|-p= v`uR!urҘ9JGM2 &Ѳm&-Zp^,hCd$+OcL]5}]QVuRoƹp+&V:iDJ1¨.h#PJ *2h DUn|MnMKYR$,QZ TTe@6HFub!Q N7hA@EuSs\Ph@Q@Hڲ+LʺCFln|%MI悬M"Px5܄M*&ȣ"07AܐP2ꠠ 6Ĩ9 #I !qQ+ (̒sXs$A:]Eiʃkj'+5y$ i'=OVT$U6A_O%W R(06JOMf EA ZN?4B ([袡G.U?C lo( HEJUT&x x7YƵ 󺘯ALy"RcC8OމOP8F'eQvCxw1$GU}rʫWUE6(,U :0$<>ſJE"b|.q+yezN ;$K/i7BL q*+4rڎhcV.mVwQ_XqkZ&\K\f5e'p#[PyZqU@mB$ An' ob+;`N 2D@LĪ PJt dt(I@bQZ3" 4۪ Ĺ[V#3rm@M {ėrIwQF]ƦO-/mL|UGVH:n 7%eY֦\Ac?XXT( @*FRQ )U (&TQ܃]0;6E#*J*Wq0.IEԐ v9BnM n4eG"LGʮ>3h'\L`0l`r * 0d* i:bTiX2 J CLG]H#G4E2\܉Q.qyHqI$ $K.V5ĢYjtUGwt瘹n-Eq4:Wb% @1SD uBsK\Ad-׸z ME A" _WLy%qw>iYz,5DHTcX ʟFZ:]U6*I^ZY\Mf/U 4d{ykψb*̠bpXSsR H2=2aPl@( ' .otPpqm wQ]{4 5cW9Ĵ` "L@ s]T'^#`f ! Ltkpe@h9[9c  AQEB/)Β+ܭ @`Z.%ܔTMԃ/;ncRiW>0ߨ8Vwvstq \!HW AuXq9(A(*IAns)-* h9QZCH<]uaxDP6A9Jķ#Pɹ6G4Ԯvc$U+27 DKuc𴴺n'edKףY{cbb/m$Hf.{['3Mj.)$K_A'l!fcE*h6E0LBa(.J)0DEҁeW]DePPPp%TH `D36nPzAT kcA]ITPTiywuN6A}j$98AlwᵍRwN6T8%kyiQ1.4c(8Saj08E[n.MtXI> 74Mђf0vDjd8f]. $U0'OA%sb5P s1*jX5@&zY$Tt3-$;s))]L%2E2 dŠ( ,f@U'I% UX ?UF2TbȂA0z+ᶢR$'UjęD7A 5Q.m`kͭeUꗀ" jTƜ=Ԡ\ڀUȅ6%)h6Li7>aþC1ZYhitǶ>h"V3 @ @d2-P,H@7U V)8Pr[E6EvL 5Zӽ2]3=I9U !V7 m i; Cp'gU&dO!B,*_Zm(U2FTqƳ(EHHc[eJ^,$!C9"2%dZS&RDP`ylT[= 0~()P#(/e8 QUZxx#jHZ@)ThG T4J (<> ~O՜y.Ua9*q5CM ^HW&ꡠn,k^VR&n?IХVk-6e'Sٮٴ2\#S)9CyZ'&.=O)T6 7PtSZĸ=/P튅y:,Տ#w&ǣeJDMd8 #UKD6T6A8 dBF1SH) J@pc $IJ,X#HRSKH0#'9@ ;EBqy#j6jl&,.bl5TrABj` "l@"T !z UF`ԃ f#tW26J*fDj,hFtL;J 0ƒ7[ZFu695Ms\nVkJ ";E!k5.mTU6̺$L"(MM Y@ 6P9| {@z(96 hD zI af&:#5Q%d*M¨FyL" (7$nۅ:44 |#PvQ @/ȩ@'U#De@UjJMGS\r[>ן<`d+*X"C̸ZEtP"5@xJ[@t}UgG@ {*̍O;*Xxf~m%XiI`dh" ਱3A]UyP"PAA3Ԩ%TL@ 4LN%HCPA "yz-puX&N)Ԭ+&ZI*ϮG 0pVi/%qQ]4ePh(a%QѩuYg]j@@ ;lGtYG]0)E)"'q@0aPp2 ռ?: ŠFi!6/A6!1Q'E $YĐAG$ . ,bh=Ԫj庩5-kD Z 5Ck:oD=IK DZUkĨW]kYja1kKtܕ*)~e]m6H39v*eÁĠ BF sAM 1bcJbA 9B&iDH^ӧ4aȉ*?S]abʊk(I玈V)LRHi@; ݌Đ H"?UP" x͹ 1ւ} <@ aŗccAT."I!@8!@89c1Jֈ:)Lm u9 A"87Ȓo$_ Psq` 1X%UL@i5axF1Ȫ-lkY>cTVonB*wޠDxBW([ m Xh= ,#) H.ik*tRMTVcT\BLzRŅbAwm#g+-"rjP9J40dYM+3SI{(=#MϪL0ZCKAvHUѦYmoUBP(hAMxiq[I@ZfL@Ȑ ( xh*(CeaZ]dQ/1pѴW\$DV58g{@ ő.A7qȫaͷPiԃ Oi S%y tn3iR (( @ǚ@\Lߚ .5gU(H ˉ:(dX eQQkM?#t]0ݕt2SYo@@ e*O IRcT9-MdSЂ&MjI\M7$=U @{xE;B0f>1 Baj Hة.tޫdU1fT"}?\*<(4picK\'p:d- HD{F^>*mf4I}0\e+LP6Qq H.>!Yc8j,nTkF _:א#b(@Z M(>mv$+ "%T7hE a8:pZ)UZp&ܖljV\EPcZ`:u\$g83|J~^>1TF2_(7( @yen$|h>S!E)H}y,TS~5 Yu4s a $#Q-26@}RN@2L#wӠKGv㤫QgQ5K4{4nqH-&H>(mkuU# az@h|Ji@ oOpl@le:@7Tlj:ɗ VugPHEu5I# gY"<[&3 \W-]BZ P8M"X:~6hhx0G%{ O9!1Tp2/-CPj #22QLaMbuTuQ;^L!'>'65pP}V](`yQRitf[(/Ø3txAM%FʬSEnvPl$4Z}UAV@l5tM .kIHPGUAsSSJmLpU}EV u ʥXab% vӤoW#D`sZJ4iۤH}n~*)45rpG108A)0dLe@dht1OԬVL( (n&I$ʁ"I(-)-񺴍Cd*pn` J2GÚ!4jAa+ZN* 8H*H u7de2pD @ %@vЃb <#>7tFaiV!놆|UG73ckEQ#(4#HlҋXS*R+iup%ҎV8P5(-p~ŝ|h\~ "H[ d0y惮P c?ki:Zj2x9ƒ( pqj%dЪ&* ]`BQD )3_2'^OZORTW.#q= 5!2`ެi#F a{{ r%AU@e5 n.Bc51'ծ֐JՌ {H:[1QcY =U(䂅tQ5.ܬՋĊTX)nI*8>F|8ױC*]lpdM2㍐A10 Qu[rxm@ {lfӞVZtV/$:DUsU#PqDX(4cD5p"(/Tz!bI;Pf3-AK$N0 Ea.Y $͐lQ[p *5cWT/EwDA7TCR*Qy }ʎ’L J7%4ER[LlGl'tNGy%ݹM7-$ؑUjjxv]MH @L㔺b6X/hl; M**e좼㕤66Ptpڜ.ŹV:L. "9 )$A`y;D P@OlyR6Ahu›"עZ3P9;dO@ _@ϪĢ%#OS)ȴP[5 tAN&2-I*F4wR$ǖ -.8:.w7nZ뷳Z]JL@Jz>Wux!@͍.6nPAU`9]Aq $G$7JMN MPơCd_pSxnpe aRqw="A OI)ݤbյx _E@xaHoݓ^AI @8woL(.hŊ8(1{:@EU7ms#W5u[n:AvɎ?ӧBj8|PyU7;"&w z$jQIA(-Z u@46H #$$(4nƏ+NE]-#UBJ,6]vd T %tAP[@Q[SĠO 2LAD;CkHSU/sEK861U#"Uy/96k5sV!Bt㒢MA1yB *_- t=T,h^eMVCNvE-isDDlf4@ B4&29<1ֳ+.)MGTQ٠ZSUHc4Fpu WaT-Ѹ ?:cVkic\\S]T5[$Lk1 jO1tK"w>k2iØx'֑Ah@:i=M/jJ=Q mTUw FrM !J.ݺt*7WF;ZiZ)d,a3`΀6c'Ϣt"(EF fIz g{i'k(6$yl<` ' -V/s#eSaǞp=wFy!lSx4 bB*õlz @FzIDSiԝMiu즮4m:{ǐ96he#t.E.JuDC0h-Pz*'($R6P:r/UH$P #wޣnU2Av2"*RuSf.Jʵ2rB"=:,eĹWDAb"\L鲨 e4D h4(jy APu4-E*nUU6AZ 1QQJ괍hIigxdXp 'pQuAʠlI8A,:ܨVkCde4id Y B ZaQ{A i-eV[I1Š؛(PD CxJJPmFu$A#GTj|">[#*BPyTIŠ҉z)Bxp2d lDEoAJGUMs0AU\.l0&9'qƳ>WDPET M6קPNtxh&d-Nȴ PfA_Eb1#T{0!oMLlV+qU醎Bh˙H׌@Ϫ袀T 9:Hdxuxr+:LIγQ cȲ8?i}̥s-LJ rF`E6`i U5 k7 ;e0VA2ZQ>5sDA7[Mn6M(f;*}l8uU#Z좖Mvm*eN}۾⯞xt` >l!b+( O ZNc@Dd8xaUL4 S,26䈿=$䢮4HEU'uTPs 6hi:Raa$ Aϲ/@qditYL@袺Iz@8ﰵĈ3 Xt:$rS,}ReH f0?4bxWBlU%1S[ˢ:*'%AJe75YS``~ڍ-5 j D;A\Mi#tRTCTWKH )"T F..!R-^ARUHD89w߇X27V6{>LO4 B 0FQy)D h Bh-(*c6耛ZIcl*5mQN.I²0ځԚ95*a (7U1*`Z7;,Ngu h0YƵ2Za]ih Pu3YqWd [|7c* %" d޲ τuQHPkF 3R:i֚+6-.dHdrSL#% )̋ǐE[ފ5LE8* p4!2R Ȧ(R$ &=ͬRu"e`)iRk@`mZ TpNGLm Yu^P bP꣞UPOq!I0mFC4E&I__xMQ9T`r N 0-7Qpxꐬ7UAt2 qlYekc7Vº)Wsx^v I #Tµ k Xc︫р@ dH?biAB:re@:F$ͣP6U Á0GAaV-uG@ sˉUGCD6-wP$6Iq̜ CZ4XnYSL"2e"PېD6xD}TV"]5<.%0ft߂)jC㢙-uM=Eķk\f0M! a6& ɟ/0LT- 0{@@H4WM1%E0&,r6a.- _ 7Ջ[ X-DAwPFO .qzV@Mapf.}֪G]2U ; M 0$2AAӕF.7T PQ3PTTD7!*c(|*j0@H YVr^i$W#/$n5k[*+~pG Sj5h-A>Gt*2 "+c:1~A~ & h2ZkN*lů:D"Ék +'I>'Q=oN .$*޶LLcUѩw9W}lmjFDVTTTDNҢcuCLsPuѤ" 0wR֣j #Mg@kXfAF$yFYpv4Os{fbvK)>18)F3e"ԗI tMkHI=LTzM+u9-ikAA H4\QFG 2m{/rn k2-e1 QM2@8QCHRi706QI&GEGE CYQ:* !]!wb"}`R_L½diV@sd dL^5D^4̨()m Y| ^2r ʺYL\Zыߖj*H*uRfNNR<m $ $QT 5_M3Uy,ůR9nuDEnE@aBv.PCw8netZȪdPW)PoM Zԍ @\rPM(q-8)F"d]EwQ ,kH\$)VqL:R` l^bb EK3S36e U %&XKlP xو"TWryUPG;PN/1dZdRX@ɑ*3xvTU>@l栮a ꙅD!JF@$QY٧(@ $J(7U ; <*@LqaAe[XɘZTSsRE 䢷p:nHqcA<.dCeWk7Q 06@Ž2GbvV3uJ! 50KhjA s7n"܅FԠR:U@0P {p'o!T⃗A札!nAqsTMR| PtѨZuS躥Y.R-mF 8才oEezQ\=zxW d#7O.U]wU.aAջH?+QÙ2PdAP$~(44ۢI `v5Cm.1E*bf9$S @D 4 MZzH@^ĢTA7j $eAT[Aӷ܁ḹ(1 QfLIVl0%<4M@ UʈXZGa$Mda ѮEw)7RfTTUwǼ$cbi lsyAtP3IPKu0kؔ8vUpMj7Mq 2T?Ou *htFXTfLAn{^.06A(0 PI;*2lATh".6ʡHTU@*?8JF^R"~UAQ:te@l dZQT `A7%ʡ % (T8? $-VCdPgH]tSklC\QZ aUA.%P ɘ3pr j & kob xAppT'A-PtWa<+Ezv0ly.uhNZlOX=`a%,ʚw-X*PP( M ʹ;{]q*ELdT.&Jc%i2-O" ;ȴɷ* dMtS+ 샟^ vAjJ3 O Jn^> t` ='tXj9;l(zܪbi! A䪭7cJ8$`P\AQ % n" XccDg@~g%Xش̑{ 2eB 듄\B$)(h)A7 l@0&O/7!"&p6*%'"V-p<!B`F|tA:aI䁷7 @ hpͮ5wyZLa4)̥WM3.BR&ʠ PA#Vկ%$*3 PT3 +tGf&ptJ\Z]arRKyUtDG5?׮۬y ;QRᩥqϐ8r"%•^YZJET֑P4Vd4?rV14h40Br$_Zo;?@0wodd8WYFOi 5E]#0XQmm>8ANلVrQ0&,2xQ?JEop:csUUaRCl AEoAUPXV /;+ K{nAbsT1t"FT-ӤMϢ宰{rEEFk@ltV5!:O|# ŏ9Q[wlS_4Dux1֘QSV@ӫ|BDr5ECr:p*XGUc*g!HrJ]Q8ai 3WEN㒸3|!hPb1T6> "`tYV3Sh$ tXGcT0 P^AOOv'IQZ 7Rg>$ Kq v7y(Q)`@AM%dN *:7MЋ./0!ol#eQ5euiLKI$4A*u`{ 4!ՕT `9JBpgi$jD(:]6겮n-EbT>Dۆ~t`(g0tTg6' y9 y\4m @OEBAP(9IJGE (7a>F.OS a5(5k*+Ig1#1aq )`f%d`D*0j2dCcE(0stG@=PIyt `ΐ3T D / yp$tTHE1s #V6wguU5!(0υV&)8JM<63H֖UaZl48rEG E_Tz"8\eQ.DE94)4H()=w4ٙ'u֣G{5M3㵀HWL8]Ӏ/TVtַ96E I".5B\&2Ctp4nV2(8+1*mU@0Pj)=VmB(0]yYRtk6 3sFOdɸT^Q8Pg-!m g8 #F, )޳I>ʎ4tQEF $9ݨbn;MDkMAs_07pe08GţòdATW°>@1Սi4K^넝FÍ=7Zoťli.+ptZ̈D >-$(!Q;&R*ô: GATV5JBa%fةdԭ+7q5DJ[5(w-v(*a7A% qB+i'MV#\QM{/pwVC~H S(AbPE1"!=72z&ZyI@ Ej:A*nꖸ4Dh9, 6-?4V cii {TV8*E[KN6Q] ʬp"/ElMBJ 4UGe8 52PhؠQ. !9 A.)V7Q(1tq>Hmaq+FSH'*  d:pL { |DJ~J^bn|p8UQ:i2Mb ,<o" GQL2 od08^&gȋ!ECC_oB,y`OEd_ToEMRm17TjA@ 7QFyu*4 [4_ʴ\26Iܑ*teQq ?%&t_rF1/(`f' o!ŲK8x=@<6@EAIDP[A'Uo2ֶHʊyhcl2(* .htA!!ĐUQcKM.5L\+0yQfʊHm U lBNBY2Uo"ܠrPrrz.r(ےCl' U.2,ꁯ-8TSjD1ԌP< AF>\Jh 8<ԫJpo+b9ʨ`@ؠCy \v9tEK`5, я:"2$!QykZ](>\6<z j:y kdTvS&E6TSD\|w32XUMVˢM=7$YMWpuo$j-Y°deUAJCcEZ ^;_L02xv>-qn.TDf u ESapp I|P] \@oXWE(Q>V#8~"[yGeW {*\ P$ e)TȂw9ːy)H޻5,pfe tLZUj|-V#lwAݜ,3۬2I2'N7:EYTǼ=j6& f:SGU*bmM?拍f "ahyd4qTrKq 6.2_Qp 3+Jʪ t4̎h6kM=$kj\cH-I iA`gd>#^ID AJ>t` >[N 9Nf("@?Fc"1 ~`ꂙ48Ϣ+Wl Kl ڽ%G'dXB+sܕv@*@6̐1q/$E tWM0 B F"U (3  q= IdI Ā Y:H g f9J"g6E:B^LT_6D x梤@"ʨL.4ZC"`C>d(:h8&o j7p-s#$X4܏%R;F6f3 V[*mMV u֙pa(*%A'9%ʤjuXUH4\% iH#PrE&j83tI/%0=OEE71]]P4  Dv`šD&fj1CIA ȉ^R6"A 5c"TJ cy*3nO$WIs7Pd9n0PlIu6FP :X䰌|-Fʍ9(He[8!Eu4 aꢻi84G)HHܪ2h;UdEV6LQN skN,6];K+1-J;h5ŅU^..'VtX9͇K [DDm I'1xPEhɴ}G{N]39):~*8kL,HH5CI-AylT+4w1\3eXSs`07/#VY|BAݮGMݲ =31lwpoޠUb$ JlL_xvЉjn-Um106Q+6$<ʪHuݩU˽7EmU{ {Th;ۇ00-hHk-D_ uRN'rWtLA>ٺp'=1C޶DNqrg&D]&P QQT˽nLMiLCO2Ӥ""-F]U4: o6#䁐aaTSUXĢ * ҥCVyZ uJ=c4?m1W7E,|ЉF1At T]6{oX5D%!Ld.AR8.u@@l iEq-qHF@:7{AF)U\`\y2m`m%bʾ"I6w2,VDE)Y ; ^"$ @QR  04e"!pdaJFgMGj } Z3Vt6pնĠѯlǑJ,w_F-6"Umm(=ZCza5,YO2DH<>$gDNUDȭ)Xn*iADPע)2IG%oAXD\mBZzsRdVTƜΣtR-\Hfy*/*O30xN / X1E:@RVKvtHТ$R <6萦 N.r\AvDJ_>WwS+9Π5Y:~ IkÀ=p4f8M!\HaPJ (ndHV%IIzV9(TeJikH?zC5e(jVI%7X+jYT12Tΐl׽QJ&PApR6YJl- :.cZ=Z/lJYhڠg@o;o%oY-E:?3֣H~ZS^ :"e,mp$B+MA-GzB"TZA-{bz *Th2$ 3PꚈ {*'PdPNhp =H;%`?P&1ds(4]Bl,БZI sΓ4u25?;)jch(48"|õp>Ǫi"]I<7*Phbjj`1>*賀n Ġʠ̗T 6GUF _n9ꢙ(&-"TF'+RFTtc|M/ytb-iOxQ]m.q (>((7JFE@6!Pl0TR4KH#; K8I*'MCbp5`$034CXI͋ ˡA'ikʁjŹ ޕIe\hT`A@G8ܘ蠩k]bDPGP%`l=SsY@[x@mP;> h2gjD1 j'`1.ADIo!m'j3Qm.6xB<NNǒϯ=6ZY2rXhkٓ >&DK &]ϼsB]{$آin4KI{%H԰1;7 j#V"^㦈/Ne\ѱ*ĪS!`#atDMM十8̙q;֓H5c5kvuNrgd0l3l*jeiQڠ֛u`eTd> EKcХ 2919I(Ww /.J.=NiO$K7LT6?k`2Y>*F5Mi0 I>ʑg*:> RfM`UwR9p;d2qMcM>bѫ#6444qUrP0wAZ Xf/~,*6tW(+LAcv0H"5ck?9\ @FȠo/#Uf+A'M!b8k.L@ ^QCTSZ :7DST+4E8È{%?Q' rTbn PA&n\AfnsIEQt,Z&#{&NY:u;AGEC^!rDF 7~IV@ \͆QdElitb {a/.qlLT+/I#U1cWQYdV(5OA@ݭhBӦg}Q9 6\ p-kU2m.M6R* Ģ!nl ғQMY-$i%8dVr12}PgZ@ QF*@]J "*iT* qUi1/aā<>s M^@1QyDhȇ )SI>%䠪z+GO H=u+P"04#*@9 P 'CTUIǪ !͂b. IJ+v@"bۚjm\ g: ݩ'(!"wTU(Č* O'(o)v[!Uq4JTP9AŸĘ6;YRgzZZ$Dxq&2vPGuPV`mLdT(i Di Z`9,Ս)gldmRtT[D@a2f'p\Q@4_&T1Ra#W~&}|s-b2I.9;V!seaO.惧s UfE5 B# Y źƚ mzʛ߁h]0y%CEtU߉zc&ݕb4!.%Q+r]J0=PRn]$4 kTui2" u~<56[O7%+='6g ?zLwEyT-EoI4 K4M2-EUB*aKL4lNGD0AAEJܠd Z}q+lv?=u+l͔S'':d -iBM$̔-sj88@S5cX (2q!T`=3BI@UZ|4J '%|Q!So2Z4܄@5D -@48DEiHTwu7= L 9fꈬf"g( (~}롭hG5FO1Qb'b~ `YFVD-JuWCKLH( \\\/(7zUZasDg's:xD 1Ey%ty*`~J+@L(rF-A=K|F|A LPqғ5TaAf:Ө@V % Uc4.XWPVLŠhyKUs!H--:2ѲL$y*`j@%Q% %i&JaPPwܢԛ8l-`ѐ]@HPY= \^w2U4@儛sAU H>٬c(0M7">#\6`\={7b2TVtR5bG E}J`뱢$HWDCC:6Q5Xtʃyn6[JnEb+vVp+=Dtwt䛻eT}%H߇,#B^ucF^mSZwkm*o`踂2#:,wʗ)0e5pɿ;%8ό8W2:3IP%yc  6 :TV=EgrkS..u0ʩ 69n #5jZK5i ;5 :q*Į+(/FĮ^5M<:KT_CA$Xvj8:}MD7Mך1*u:TBmVSW-%kSt%#FXZA6ܠݲZGEz|ZDtj1Vg(xA|/7Rh sV\ )eP0‹ ̓"0%7@i<J5s XEgHtD9F*22L(TyAe&-f9 448Mk3XT(/X~Jc{ CrD04ȾT5lBŤ뒂Tl4>O"Ta: rKPSjSy% sk I"a'l1ZBEz#g%J  S>.TjpQ=mƢGA@*`P6ĉK\&~J+Bh*R.dĪifb|0,H@Ga(9t0QZ;ʐ-& *%(0N/2R @lJېQq&ʡ9blcuJ4Dp4(I0,`(4 FK_1T*Y?w0b6YiRuyα IP24{\l!%TMQCDQ&$A'kH&Pl C3£A ` nF. ot@]>醥\_a( v4 UVO-50ntL_H r=F sT2CH$(:r]&!Uuiwv[<ӿhi u+Ū^@2j%ID(1(!cZTdH鑐A:P9A z")AtO1診E<7 6VTUI<ɕ q :q2FuTǢ4hXTFUF Ilht9T&T}: qZÁ]3Ө,/u;ߒ(ĺ:[  Uy£ z٨Ųk4ZԤL5:f̬DJ+vRK湣kYpG3mG98X+5YsYhVRZ(y"6hN@#CH6$٭@E_)Vpz"Jod EɸFL7Tp7%EvQ'`J2^$]#w9joToR:{֊cT\\*2[ )Q[T ."0,-`q:`**D-iA-P= M*E\W68s >8궋4$`FB3QkDHrk1̄;Z -HXOh֟]xMУJ9MzUA 44 t ʏIcAUxkZ1x6L599@pI6E1oHpi uu)$TIk_h*_ARh6~0 %W >4 u 4}FkXs!AIŬ:*3Iy8 (m{lm!o9W$2o"9ZeM1*UrB+Ilqy"zSd1:>^*U㫅VA'Bvm‚|]Q@i E:7$+ZV(7Y[7+8$Nh l#SLrqOyzㅳeU$ձ@2MH]-牼jxcTl 7Ti3'ABKI qiA]rlm蠭B`I nl!.h5K44 lY"Xʞ]cEnm$q)u=!i")*X'6ҌY!` QZ5Y17(-@`.pF c#UB/P:)UA,n9=7Iռ[imD  Zƨ7#:A:D_5DˉlDVO\1#uEƑE&Dz$3+1ix-"”r &o4 oslxix8plWsCSLAl ¾~Usk ipKFA]9_S\FF[0XyH+* ^-Xnm*E'؝JH ͉I!Or[4 N2A>љQ; _ Z}qkAޝ?/[plYQ3 y8A6@ɂ."e33Bs 6rm6@&e/? bPdH9@mkPzJmyln88A@kz*eV6FL]#vD  lip&κsN˄I Yh%D'4 M0tld]6hsL=b|ʠQZN梃DmJ>5'H耦gdRyF5JѲ# ʭ->*7 y k z(!dVzUb@RֱAqQQ+ PSHtV.&py(D4ăoDsOѵCiPAQF(ݩj@s r):Dho`n" :ʨrגYe%D*-uE%Ԡg13PUAS.[8i(;<BuZnz byB xCA㯄y>р@ {h$z。'~J)!tx7@8@&7A&C,=8Acb7$  oA%A&O%LM2젢@!uJKE=cL4H#Y\C1*a D&%9csbe7Db:-9"`3+-cV1@j!2UB~ATx"D؀/(.cxAa ((A sb{E v@͏2 bztQQTDJN +>)A'FݻeɄQ!ރZ0 y* cAꂩ FpXӡ# HUZ ]UE4f\_PP4{c@DXTD$ݢg uE uBb}e ?{*4-!66@t9h()p86f9a :̠ޙm$ʌSݢ: ƻH\L"9},eЅq$zlC DqqbyV#VL A׾5cTU5%xd sQ]Z)0׶A,6:h1"I#"޻lxP,[\Ag>5@TIɸQL Px}4ܬ+-22J"!QdUȟS\I4D`NYe#Qϫُ40}a0zq1#(7QQL4g贎P 9n ih<<;AqP)ApE {]hRuϴi4>8HwS/|a9JUBT Ąj-@k%9?f$i5 }|J b\I5)5쉌TSA&Xنou* (j 7H9qQʪ$9SLX\Z` 6Fb *#p~&5_Ȁz <((%/Q ( fZ`)U)*#OuFB7iQ[78_TU1.oc0ZEf[cψ&Uy]H<hާJlsss+mPQPDKaU\֏ԫ!CnHJDgu("` `tQb Ab'26]d3 I?JמWF= 8b ** M(I@:"OT nv@@abtQ6:)Qhꈁr; )M eeAsdRg\H*fy*Ϻٿ*pZŻB@nP 2EToA[  *DHP CI `[@MQBJ"e˸ QM-@@z"1T  P;jZE͡fNQPpU;&.Z `_ٍs%ӈ9A~#GH; fBqLtDFH{[Ԕ7GvDˀh%Φ4 Őb5 'uGGN.yPbC{@ #!R+^E6$D<b nuQ` '* x9V9i Մ<梺xza]5 X5bcZs=Bp ѰaJ[ܔEH0,)iqHjhtVoMMdud[O#ҵkm$, I2ukn&]ILPn@g](56FZ.%M\ jM"G5*_mssiz#5XYnCCnyk0SO]fMx_W`Vbih0-6+lDWOP jV*h0V7e dǪf1rґ@Di@@d;'gnHPs9@9p[UA@UUDE7>Ats{$:.w&\zFͱ$w +66%灓iU>gJSww*UEt"]Ef=UBx"#"N8 qUOE[ ?f`lu*q \ (A;dDM ! u"TA3]*i EAqA] ##*´PkG;V:wW0]ET ]#c{,R U DOMY|ȏ!yA 1̄ ?$H @uAsmP61PTAE^lI+Eܪ9V r* (:L!a2APo杷88.bFUBP q \li83kp֡ Z7(;*h "IhpOՌdah4A4fEpp d ~J-5l_#ôY~(QLPZyyRUj[*n8s$ ;VU$wR*Apiu [aR}IRZ㻳c1jcz%sYijI'Q&yؒ1}   *3qAF-!)2C$`z-!RD&|Rd hq I`%P[ں $ZKrM0n͓㻩yOO[` =x!c[<( %$BCe5PMpn#"ȷ"pv "Ca()(7EsdSvIQCA@@(yʩZJE90A+*yDlX@ 把>ĬB A?eU SP ``gD#() Jr!)EE'X@eQ"2zZpV͘ Tg\M皣XD_eE61Mӛ*IQe@$e)ػ\I4wy"9%Q> @#|J㥎7jsHÒU $X q[ q z2 *,/ajv=P# ,4ALqXE, 4 8;y`i4k&El@nEcF[E*x#cVV l0Pi%$#rJf.hHlXS2r EX5#M&,B7ăj_Th#o'LZޘm @'`E0JI&Zr)٩8 H)f j%iF VFxyBgO&Uƴ8lT:(L " ɇ;Th * a+g4AYVU%t_L "6~MJJ#9 AՃ@B˺Zn[AĢTaיʘ,;cL"Wg 50YAM 2u5YqeP٭^oJ7[` =ڷhqNnry @IE1J G{9* 1Lp>h77@N2oeE4^S&) 29dY ! de6uP";Of# 2%|WB5c|EecCgGO u B$FUL4`%Aٵ]FKo %̐lU9AMB&*" ED +1iEUE7 )5P2O{"%؅F8u PtЈ#*Uj b"]萮!A$u*SPؖw UerAtĕSYqq!9I<ۗ oԪ&H10PhǐEpqmT6i"rH3;tC@mXƢ;\tT6'XPhֈyG4}8b2<36A&ފcH @@AURx9a\]ࠦ7i.-37EL𢢱-QO-j%d*0lc(, i3*!):dqd I'`#%D[Ck"ŜPP0 Ǯ^"Ҵ,.TVzdPS:])HVbXvV²^Nz)Ih 7"W6ð~9괴|ՌP qR=x= +ȬjdTEI2`{UޥVyR%뛚؄CgPC"ԔC8  ɀpvP*ݨ/H v4i8Ua4MGw#i%_=K._'[?;֣'EPI@lJ F 8;u@ @{{m7QE'mf%JPUr@@\tr|(@P6:9uA EaP?T.MPn^@h*3dxQZ0To#_;"sBQF q}U1R3WĥXلzR{.ɼQC7QAE5P6iH%6A|E*n!=Ql dzmV8**(!\B,0iQ] ) %kLۘ@-JNjU֖}h#Te\DsM%Q.l"U= nė`tPf[/-ɛF 0T agUsHIfP dӘJ L[Y# )#8JrIsZ_]i dEiQ$ :}T71)EqE[CDf7w'ܠm JZu<16ICa(.}8]TaqHes5<@p)#Y:5Z^MiYQ2bJE+q`{f*]KlM֢_XD:Y9&m+L;99$s䗇`kTt4"6V"{Gm>#!Zk-rxw9T~F ±827*u-JU0DW,d &Aٔq&gKl'tXjqUot d @o(X` d@Z/dR- -*P1rFj qd0@tj(Q @aMQ5XT ŐjbeVn`."#kPdGHkKN8Rkü3SMRMvB@k?ql$@"`]P'Ha ENQ7D2@2U M7` iDuBVNg*J/lZv+5[F1$Z|2fUR"7A4Z+3H*˜Lʣ07DNM*-ۤmrE'I1rU|nhQL@A|jS)4ܭ!M[]A[6NDR" ZX4)ElXғu rRkEBf X*<0sH;A6 rR"1kQ &QY7D? 懰4D dCkIQDyR?szT L)g iV)L @ +p֊\DĬ}b(߆0f-1Tz,ψ>6&1)BwHH$aHΒM/|ܐ\I%m6],U>4 Qjvn?TU1D'Ee@a$O=B2dU 򁢥ȁ)FJ>@ PKʯXrYf s` 8#}U7TjK*ڛ\da>nUPYE]:ÀS\]!67(aٺ b7dJo c6t`"ƐtlA* dK; T4C~H9{ɹ" B4\HCX ;X d ֊cO 5H1@Jt@L@ 2OA`du84`AUl}QY*6 Rv*/>~IV* @U8)/@P[u"X9*8 ( @F5UeAE1袞Ȅp$١XV#poGR4+Ī j# ^fʕZ"o!$pJmE6$,66P*1N 8ɐ]L@ 2y/* \DQ`@l鹔- 4d Z,Pf|$rP $!1Tq$|BkwU:ӁTrQB @H0JC*+Qiu VU.Q+ (UX(j&cV Cd]6kw6}ŠA;~J)iEj(% A-0$E$Nȱ1#T"QR퀉 1%QƙxQ+ .B(PY;h7!pK>Y_^[⧚YB5c@N ZaF驈OSA sZuB֒%lcQ郺+$xJ %XB*.4q&6@Lp?TEJ0yn" NT̈7TB*bpi4% )Q&;].hSUn2E A{ FM?/Zy(/*ea#y%lr(L |) * n79A((@2 JNP9m05~Bb72AJݳkƮ A6!T)09(صPh; _ef V< R4&adS;*+Wqo5@*vPU<($*(B@!otP`9T6y{%#FJ!#`FMPtSoğU*M) 7#I3y%SWE( 6JOUY" y IX'MQȰ3qsEA7-2o(ƁࢦCoJ0AwеŲB MH$o(*mR{m@iJU@@7UtU.5@GXIlUGV3X4B"PE+%x4vR-?[Ú1%9z"r7d H8rTh *5mo8_Vy(kCFk4#Q2,qĴ)D1@SZO}a`-f,% 23uMͩ {67 ʸp"rX Rob76(1IX=E?OU X3 kX>BꄀƵ5`$_XJ*=j9A4qg(4{:Z&8#*'9ܪ)f.ꢵ22c* a)FKt=&ȮC7*zG0@ pi;tXjqJ) (=w@n%̠=P$U P1l+ [BlQȧ(@PP?Q;좐O.u \ۜ Ј;@4ޜi$ -dL5&LU4DB ؟,CQLʢ/袴yHTV@ @ H2U}UzH_e#`MV2eD l`Fۨ3(BUE$F'QTaTWXk{6/EsF`EYI7p {*$S0lo;jlR-0A WDCe >+ i"F,TI- k@És@R ;OhtAc&|'7lT -6U&\㼈t,`ApQ]T_HTD[AVX -2Т"nsoe%\'2>jD8dGOzIJAf5] i!UkH+H<\\ d"}Q5Bĉ'dT̸EQƙ-+ p,֐!IDt# U5@sOE֒j 1{bkIk%hsYߪf.*a VwQ4/Iuܠw23F h٤g1dUd= 7CjQ(=İ]cK 8䘬Ak L9V'v8栓pT TT6TŸQamS/b;.@ Z/00nZ:,=@(ܔ( ea@ JO(@L8 7@7!( :$O4 rz7s7M&dP4 JPqJ1uuHϢ'lq=UP* @t@odL4fmuaQ{P4@--b=ުa%q=epMqװ "$Ϫגܑ%P#d UR8 8֢KMUGE-ki8!fȭRkۧ‹je]uKngJB/"M-s{\$rR[ 1"7mFlyfHlD h1"-XD!gK'Pn ;h\:?0y )jt&7ҁf7A.8Jq d(`qMxuр@ ;wfvMQ EU@"y (\"3D0%*ܠdiot0YL y6@ŬrFaP@lJsd@P"N " £FdE(?$H,~ KrJ% uApdBv nUSU:rAoDT@Pr0w<] bA%iKHH1u~Jwj,TUR4)RI",YıbOEpgpdY,IR= =W{JH։3 } 1r TE68.zwlDnycrE2Hp''"8" w7R6U@Yo*1!A!e]$` [*cu挻(a3߶|%ju=>im@ ;wfpQAC@0hpHQBS(@9@ rE0e".R;C  Ƞ"O/UB̒1E.=8@L*yPh #yE@p2z"wD;E7o!eTmN&(;E ܠЦBvRD' uOUtGV;(js=UAq]X¨PS-cZ )ՃCEq湿ܨcgboAT-Yd!LYAq.UDC0':L *37qTX;?rx8PP0L%3g\p@u03}H@m7@Sb PD )TR2l@"APi .6 %*k'K9!l &J!$A9x2A'M-s"9 `dx$dA^4Λ[hk\bB T=U7@# BƓ †8[yZׇp Mgc\t ,li[gQ) 4_ YW#)l Ze i0g!@̜"jJ ѥ-049qͰuBDG2L"U4Qy"8&bW9v5bJRU/Do 6)A좷֙Q.tʕrQQ0:+lۿGN 5J8 ~)q! *ʊwagt 7@@E1nT 7@ۺ trPMyIACU8V!ʡ@<0r#d4K #9QPxUCqʁ$ s.>(7*P!rj{•Hž(9H  ryж%El!@D7>CJ@!J]H䒲J LPKD< @ 5S'tWN` 沬f%Re(_bB G<>o5!Qs$ŊCI2'&ʉpJq4eL8B\  B &i~Jy C2 !ERV@&?%ZTG![eQSa@qʣlr*+J8RII(Ąl IJuqlAtOe*4s|M'7 3ޕ' z ٪ :ЫkGw~nv>kcdL{Ѓg X lL{ELb:xw䂰PtA\4 |C  Dr!DH2>cꨶ(!P)A6%̴:)ɏUuёJTW%CZyJl FZx6U/o*,:Y# *]@/tw}KLy AD2ẑ^}U!A&ާ4C4 A(y*-3#<ʬV ViNl4<`GV'TK-;Y5) baOT]Sf9)k &::\AP*{rrgR_ OD@OABauN}J,^QT AA6"1.AZ+*A&R)qJ&e kՌ&UEK+@ff'LTsbU"Zu؍R:dIk-ES #6k0TD: U参7v>*X.F9H$[UCA\bI=A+TV%`lUC`94N0@ xʊ\< acV+I'gQ]?_7VcD?kQ b@ d}> %PVPA0EB QYEy@*P-"99(v h$0!C¤Hܢ;;nFȄPnU4+ZbL[ UQI99'6jFbu"?5Pɲo )  6AU4Ho(9B/0s`"oi-H9ɌJ+2`{Q.r lxYV'qQdDvzDD_A˥@$ iO$ k>AʨEKA$eEgu2,odP9# dT87!h;+ LO*U` (\]2 >5\7U!AUR0ybQ[ IeJlGְnD9߫)7bcj|K*Hh&b^H z-x'tc4wqX^9MUP14 ɰQIQ-"~E a$((ꤳ7JtmJ1ƁS=O\|nWJ 5ae*dJ@R J *iH)TP@ .@Hd 8'মFD@#U "(b^DEb @PFE ;r D jM,TU TYި|)OC7 rUc@PEBi6 rQR9@ÐP0J U eQP A2%9e]9QkveVL^ͷ!T'dT 7%Wm o8ʰuVYT']A rnv_s@}ʊt3n%@A$slH$ŹDYXbnW &@@OQ-29QtSwuO**.JGC!#ʷ!nb>UP䃔m x0(,@?d=TU:lҢ|a*QN2Eb0C$!َ:@.im `2gEkK3 Qei*x ]'ix%*iZG)YL5L)T48r!@DHM1Gxc3\BlڛVjKmrBI ,n @" ^OlmczE@AZr|^2\&#)wi$B@ ED_?QDK hrP9OފZȋ":[$A*Ue u=%kYή'N 7<1+5A@d Mn.X{luLD"s1 q%H@fg  GCPbD@ 䀘@\@ɵ0a9@dDC}TQ2P"7YR @BѨ246`Pٺ(@.P<*PeQR`w@AJp %JouJECV 7gUE3ꢆESߥ7L8p;*\9ŊwB ͊ r(?Ľ0fO@ 쀉|l#I>AUEYdr%E<Bea30p3 `pe`z |9+i *$|RdAQ[&lM˜&$4>H9V6 0y%DmDY* MӶa0S*6Zy pew - H@ADYu|¡J]9]XVmuQ\Bm=DJ!U ye]qcQ2fsT a>gPHPi aaLrmPP Ln" ,a\aUIDI-)P2cN.֣->1[`TVMĂ$"ėt`ڃ$}iKGE%:HJrMKZD*X@G 3P e$" &PLHCV+mJ "  PD94(DY@)(]l%mJ.y')xX2Oj0j=:h sKwbbp+k Cd' NDS&lN5=8Pa낂߽b3 ) uObwV;wY梴x'pHV@.r >PA< t6e*ĂD =PK_ftODQ"\Ȇu81"|6!E?e$ YO@.U..$Tg7ALcڛfQqw]vQ雭FhʆMĩGbL iG>JUeCô܏DK2T {B\`bX ;"G3]VٔeC.%@ e8`a@*=!+"_j Z"H45¨(iq͹kӈ ylwR-aX3{ʘLyO9Cf:"4PN:8&[! M/UXƸubN@sgGI0ٻ|M訶 :ern#dF Z%ffwvz>aQMA8b,TU 034tZǃ$NNgdOx$B |ʊ$@q e@nnFnrXr"(l=PH ܓ8.K.&T!U"`TdaP: w@ʁ}Hm-p@t0cl)~J %#rB aJ0甥"d r@Xb(-0j P %@(!T `aPti` U]A9! T"dA'h]݋*m=J" aU[aJF'{EVd\ sdXʢO:@!P跪DHZ)ɐʁHpɲ-*d4Jkj){rA0F,u*d9Yfz&@39 4oΫG2 g j!•cWT)FN ߟ5Qb P= * kTg_bK:dY@E0}T?wU8F16VBlM<1\j2HiQEAԮW["*ĵy,֧SuWb ZFrP"c;8 e\3ED>t]hPK/Qs[H,ƖFy_OV-n:,^8ngvD;m siͰR$T2d]h<2mdR7"aTXzNT06 /7UUt[mP6DZ9-.DAʥ"J!r""}L QE M0XEpQ09bs*`aE5z0*E@ T @LaU @O0M UK~VO󕨁Eta U5 插 s J!$Z2vŴ&p#"$8A'P| E+dP  dg)Ȉ20?4BMbTV.ZDT*`-y$ʲ*j]ĬGTHADFTMyR7遖ƄM62LЇr=JR( *.*@)QNv悁Ǣ@2yI ۮ@ d)U@b1tt.:Q0싈Xn6QYk 9vʄ2$péJ^<:,^8*o -'rHg]ԫ.qQ'@#T3VR=,FȄ[eJCx" 9P ey"DǢHvP#pJ ]60Q*LiU laHU TCr@MЀGXw(聙7jTDiS03 "AmE)D_Q 7( FmRò "#nj%h]8.2bU ,T5 (YJDdD4UL@Th<.p*CDf APdNDފT ʩTQ ( d*{(Bsh@E9L A ĩUi)AC6j[a A&Ch,<Ⴆ+Bn-ꢴ8jL:ZZAO}_wNG``EE (p3@`~HEQ-$4*y qF# T6)R$UEՈ&hj9ITCFvHXƳKH'~J«HP2jDhԐbPdMҤhHNŌ*Drz\I%X0>hZ$Ps\*`6@$ y J |xLF{*YtÃQ5pwCG{xJz]gOߞ<m>0 BtC7p)p P$(nQA̢ 0䁽; )`'ït.0ewNA.V3@"t=ōZ4Abn`0q &`rP#Ȳn [uRR2 Hʄ;τfb3 e# wTP3`(:" s#J$@ "*TC Nt&R M39Z7䚱3 yR O1#yJïg+T7QRHeQ:W E<%6T6&H )(~nMRpV ʁ)tA@(DeS*¥i @ V Ehִ5j @䥤x}41CKQFT>@%@*+Ij 좷忪ʝ'8 %XU_4[dθs 6苑6QS1(?@ZNUJ kyT D uQO3"Ԫ) B))iC~EMX8ڕPƹ"[Z0DGUx[d(X?PS9EA/2q@{聵 ʨD(d,g( LqoT2UOaiG%t,HJs0#! a6Sr4u.7|x+!Aucq6ĩTTl5Zt4͒3pBK$T>B*7橩3*@ *2N BsE(D(͑DDr 3b$ *Z,  M & Bx)B`)aR+Q̢SlA  $r@:( !)PG  $U FJTE+L c&nQ0&a0`Jd&ITh-@̠a&Q1B!D! "k$U@iJL}Xi}ʊ1.Yc InU0 ș@y6@]8F E}`7@T{rJfP̒cL&=eNBTP[`vQW%() tZJq~ej3MYPzz 2f@bHl$ ZrEsQl蟤7Q`_J u$8 *pn%đA\-֢R`g$'TRTVuVѫe@pᎪ bZJf$‹QZ#bv BM#xDN5:y἞]TCɺ  ʡiz N<ʞe7IEVK&ު *jxYF҂636PiZ\Z"EI3:ݦtu$lfEBv 5pX$AYhD2 X@Eok@XHUc~ ~^catQ'B* ?j\D!I)Ht1- 0`.@f 6@ h>Pbi*Ԓ$Q*舙 1?UD(n bM#DUEr@AĔY((DAP@J): 22i DU muc :t_s(5%ttI>4 HG$@$oO`t@<$H0 P!J{|6`tL.mCs{^IA$䉩2@괆 )Ϙp=UG26T; RP":`eE(#2v@]@ϯޠՒ)fJq7aj".:*BPt4 NCVkMI *I0`eF9%T Ī*  " =DcQńV%NUJHiH*,3D"%n "cPà/*ġ s(: M:iW ::(L*7Q˒Er|R|^U]$P3 *YX ,ӨZpn}ۃ;,Α#}L{>vJ A.M)&:ө?gR᭰n7N 5 U07E2f8M<PMN a7'攆#P\]}3| 咘]L)#`ٶ@̈́6&s2= #$ !. ."$©>S*A)5{)@+Hn2'Qj5nv\M"DBF8eE@25UK͔ET "3$͐tXB)J "CL:G+L dFRI¢A7S|On~]CYU5S^iڌPA!9(䆤! 79CPf@*$RqRL@b7A !"Iʊ@uѓ7&Q@& Iʥ6 "(ʊd*ll7 sU.!An uY(m'odM@6@(se)RZMͯ%Ϣ%I+.5I$BFd=Vueյ |Mok[mPs}`Ux_* j! AMJ,(geP<V RV%JDP@‚LMP.D#PM*i QG r%f F%jIYXDt+R q*N۷T tݢI*. 7DDL"Rr ſj~E֓N çſ[yQtO5KZIPᨒ,'`E{s@2@ʸmAtu*:IJ~ Ú@3arp*Ԋ(8SHDґ(4lZCQp.2P3)ʘL0& Y~ICp,@J͠!M7UXhnl)*RWL+z\\ @ *?PP @31艉vNkUb3~JaLQ:ZQEL\&$BN{"[ H&J dBܢU T s\Q|@SU1$Ç `I0ah ]t"ߘE=P"M@2U '@ |P(;DEPPXِ,A=vEUPUP'uV%T2E6}aI(bT8FQ$xmHwU0Su~Jz *j@~phk[rQBM: $fu+H0`|T e bB'(& ePM, Ȃ*ĠU a@ES-1BLN`(';Gj^Miwn[Z, <[uJfG5T& l-DĠ0e|( `1V%%Ch•h,>)(m7Jht9r*54Bc?r6ߤ*n[DdQZ>4S8ߺ$XD::m@ i彦7OQqpJ/(PhA7 i$wTmai"SS\B`o' ,HIQ-o?!HB. `R9.蘺dض#arM@F%TPt43 HQ'1d! H(j C$s`ة!؋"7 (^$ % (%TpD@EP3rpL̟ܘTPS3p=TnUD @R@%M-\$tZ@ 9?ZB$nA@ J,P'*H")Jru+@QH NՉCgY.P8"yJo49mD$PE&)ܛ(ԉ:dI02aQ#ܸUSr0oJJm (D |֔, dE-k()ā8HA Vw$MhN-;kB<!DlLTnGT):TJxD'](vA/iN9Z @ `Ja ESTvR%Syn]\CXDFv9>I[q 2!}\B mQT@(J _U*UC S\`*a8͌z&(Lɞs`RATiHssYbI&׶VΚwUhp}o(CmM{x xkl`w> |yN:92 m@-p"U'$EEH 5!Ed\Ɇqq4C4")PɸDnDf7%2&@P(Q`)(@AHY7D#eA!Xbh-/XpഐGbPHBXU=UXjA'P@ YE@d(U, U0 J:\l,[\t-AQYTZ2+i=U Ap _*U@ESL@lғ)`|lmUT[iwU} @m(ɀ։ "DL*:" $uPļj yG )F9rE "董K@mBmo 'AiaQx aVS6VݽBUm̩Qy~agSAyi*֝/t+)n1"I ws)۠d&HT' Am&Ё" 4•NbRAQ[.Y],kiS,֤Uk#dEVXjuEXK)_7̠,D|P6)'ʨ`"G(4 $xѲ"ڛCN򪮑,/,e *K+~KDŽ@ {=@29ӧby㉠Ψq"AZ(3sLM¨nT0 ‹ $̠{5 m|*E}X8BHn:0%͇T@ő-/k@4X`ʈG$]jlRUQ54ʖ 1nLD#hم] kYDyJ P;eguSA^B6  VV ?4TiP @$XP:3.e.*66AB5E1Ht+  Eh>̥Jf m7@$ZBq d S @ɂL(y0U !U؄€QT)%;ѢѺk(xa?vYild'RCPD#TTH; @e FHDES\@#,T6؇?ݺՍP935k5RߪXD_Ënjl}S6yE9@LTPM A&ʌH͕@7Amyai =e"GS$ +bʐH3 [L*V|+]Yknq2J#FJH4ɿ$*`'*%A#U$tPJ%8O\ PL*QJ-bsF "|s˒2A"Y0sKAlz&{Yc(eb-tۭߒG4ɩht W00d[tP!0}S~j2 @AMʕ`La@" $.A> h )Uȵa8 nauƻb3 $~hǾ%]Ľ*ȚX@(Pl7fR8@$Cs('e*fʡ* 67QLI6A-h3Bm1IUHN,48pD6OΓ(J) D# W 8j*" ҫݖϋaI#{f{E?©J}JgO(b#rJ( % :ÃDA(MA"2 \($uZ @$@TU0 *)Ac '(ܙF24א%KC;BI@BiBfDc,P) 1oURϨw8/Dғ@f`sL!Kad y6FN!EhE+b䊂6u4tPb Ae V i!|(D27DE>J$[nf)*$ P1t 2  &OJoRǺR{*|P B@MZ,dp* e@= !A@i ,o%PX.'n]&ULXx P@sG$jbOK%i& EtH2DrT\53i$K7I߂́DS@JjĜ7@YjL[Id 8\#5!"&.Cp.#LZllXfR@搈9iPuQ.i5eJP  cuKV)H K3{-2)㡕XX,Qu`GmSOTSm"#p\ J3VEnHaEp~ 7U* J(e@(yJa5y$5R*Q1tPw![::^@?jtT?E4H$PCH 75\ gpf!hZ<-? IkI|kR -qHw1S>;Oh_7i PnW &CO42O"  ,"M}Su7P!k& ]>Sjt?QA IeR$^ɊAvl`}UOA$ze: h>S*EW|_&4A@\p@\6k i?1t^GSD;O0]L]=/ 7膗vO:|cO'<CI(~$ʡiws#~ L0\@T?UbPx]@;]PIk璡gA!-1t(T}W|ZI'KH(Pl|A%eQ@86tYLT"|.>ʦ$iC\=IOC|,s[`gB%Z 4]`xCHX^L4.ACOx]>X㖓) dصEw%4M yHh\ pP0O;i8<&ppN[ZtL%K5{X8ytc ڈl tky-* ݧ1M:gK]@<."+CCAA&i2t3!ChwCw `{:OJUVwK)#CU0ily%#-Y:H`#Ls@ F,"& ZgMtk B>5ްv3PttE]z*t -D򟂠O!:<4>HwT0א|.(ZtodjқX斻qe)C9zR)Z׊@ z-kC[Tݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ݩڟ$ ݻnikʄY@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ A././@LongLink0000000000000000000000000000016500000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/mtRainier.jpgqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000031323212273255454032717 0ustar rootrootJFIFHHC"9%""F25)9RHWUQHPN[fo[a|bNPrs|XmC""C%%C^P^;!1AQ"aq2#BR3b$r4CS !1AQaq2 ?p.p`5@wp0(P0`wE;0`8 u" "]Q4-4p]LALjpWb;K$C!L (u z`=0 0 04`")HD q J Q@PTi4U(* @$D@&P!e @9\* t `*@D@$@܊En2@H 1.p0 !(C0`0`;@S  C a\rpj0aN@u U(ZDiq]A.!x1 D# .܀0..IHhD>` `Bb0@8TP TDT!L 20@%\ aE"eԁ`!J i@E0aNp 1pJ!NCw܈w S`˜h 4`шaT0( @Ee1%D6!5KʑȔ 5@5Z0'yB o+oB TDY@ L(Z`"$HI"*&5 IPJ 9p{)#eN )p8(\˜0rp`0`;W `2*@Њ auA"w"TVT]1b]KqԺ(Dt 3@{ 2P pP`">`-0'G'L`aL)$ 9!()J %D S* (p0$L "P!T܀@ 1 B@\BPyH 8pSAˆCw2`ȧr@0*0 0dU\ST +. ]DB@p@D@*P@WHi Gh4@`@u@PH@uS@ "P%cDefl!RD " %B" ]|Pm  0`DL.@ za"(8pp CEdSCpw pw"CD0e  `EL5@0\p @%AP$V]1%%MTP h  `-1*5@*B b@@pR(`@DJ ͒lQ`A+( A)H 0p9Pā!J b&Z9 @w`p 9ppp``w܁ܢ@P0(0w wS @ $$jbJ.( h@4ƇPSD `#(P`#C Fd@̉Q&H2@F(w@ ;0`;\ ] fZ@pȂU9\($ p 0*;;CU2); qN JuR] MF @ @*PQ**@p \. p&&P#(&Q&l!D 2L@A P B `c2 \ !p ;@p @  p@P0a q܁)! ww"w S@$Q*YtAT@*)Ȃ(u"T* %@*P@ 8@FP*L"LL 20%DL "TI&!J 0Q `w (SAU 9p"e($(pBQ 9(!D! 8 (8Sp`b@ \* 0aLC  p 1 `Ȋ0dU@B@DJ+ R(P!‰B@p8D 8P  **&ee`LD "TI "*&I0BR@J8ȧr %A"L  A % BA v(p0`wUwp. P2  H(BS*E"TAYu1:`•D ˆ @rˆNP T* *T*D)Q'xDH%B@*T`@,W(B:T@Cܨ`9fPYP5 ( %Uj@.qp5@wR0`*$J$BR0P @  %( r `Uw( w"0 `P0(@*E8S@p TJ "T(Eȇq‹PHF4N%dj3Y(Gh&@P (JH@ iL+L  ^.A@¨C: @ @P$@UDJ&J@ @ (; )0`0d  UP2 X0(PTp@ @D@DJ$jc6YefP\p CN w pp Up K%˩eD!i2"c4qFˡPBP0.$Ԡp Qp _0X&`UȢ0PQPDP$DH*B@ 8D!@ e *P0,U bE8@ "2˩ce2HPHP0ȧ\p(wcREjkY @2 Q$ P@D &BeT$PQFDAp ? ܘ (UP TP pSB"D " DTP 8@p8C)p`0`P0( X2 A`¨H) 8@ * *XŖlL J H(aN@J8 H)rAQ\5F0ܠT!(ܡ_1N400bJ'N4#4/HLah2 ωtGi bA@«PE@*T +XVDD@U@ (@  p1 ! `Ȫ @ %E)S@p@D@YeK4@ @ 9RD 0`ѪCNS @1$iu03.$r#Pҡ\T`zLapЪ"EN.C1 ȸ^ʘ8=G1QӀ?"4=1jah : *D+JH"!U@  @p8)@pT AXyXqu`Ⱥ8@ D eB@* ̂y];. Q@!˜8QrpT8˩8u1 SAʘZ0-`ZTgU2U`@p 8b8(uH$@ JX0$ D`(@ Qp C8Q r$  @^L+ɋqu`Ⱥw p "6Yu,FҲ6m (BJ :T*4=0 1 p ( L*T 8+ԸͲq5(Pr%YsH.(x@ 1ETE:@ 8S (;w!JPH A Rj IXR`#PH@ 88" C0c@,4 "W Xy]XiNEwpP$DP \;\`5FTT`5FL4.FOTQ0\ T˩c';\f,AؙD'Q$Wl; 8 @r(T(o U BPQ  p  WR A$HI@R@@  C8p2p(4B< 3Ɇ<кdSp.],`DԬXA  Jw .  v`Ѩ5FFǐ Q*%$GB81^,͌ Y$Q]Nm % 8  1p0 N% B AI'L +*XDP B@r@@@  8E0eCAZL4  $Z$jɋF  @jVleĬE.D ;b\.\p@p;;;SP Fnef;o3r[7APT \;\;\ 1 1ArJpy@P@RT(U@DB$ PJ J @%@@pPH A p)w Ы rF+E3aIjT  I2Ɏ,si :0 & (7y( @@(@(@*@T)Ru pEe,ɱJ[\*8@D|B0Ej]L.\)  p Ā0 BT*TP B (`*I$!j@U( P@ 8J@ 8@`wL4 4\a.IVcZdU\$@&;jTJ.RP(   27D EPi@$@ #*$Kj Kbe .p0jP8 -0$!p8  *@*PTDP *PBHDjD @UA)C@ (@J@@r@@p`dU+F lcZbHpeu,dSRQ(@(@U a@ A ;" B@b $˩)]KR]LyW"hC\) @Z`IXBT9A"!œ\@@R T@ MJB *@FTP@U  TP @  C  1p La̖ &.dՇ]=R) Q-f¨  LLh$04P :@ 8$( %BdWp 0e; "P(PCSAr܁=Rr  \jX5eATP@*LR(B TP@*P@*P ARP Tp :D1 PPP p1I (MS@ #Ve!¼B"I8܁!L&D C@.)0aL TT!pHm C  X(DJ@*P TP *:iP@u@*P@* 8@r)CBETPUˆP`1i0ɫ]L=2iQU"BBT !D  %q3Q2&Auy0D);@!`.(P4b0.p.&;_Ap@w5)AB (P @U@u DP V+R!2VAT!T:TP@`@uԀ91@L1%;2 8R BRB! |ȠC@ @P+. +^}M!oH7\@aDzĘj14" .`\ZMlcB6Iw .PdWp QP`;j p0#{SEʇ }b@p > h#n -7 5]A*:N(U*P 0$E `@2h44ƃL4=0$SJ$*ai0&`PE =QNp  U D)JH-JЪJ@ P@. .QA,];@vD;@VeCH3e *'y@vArPH`;> Pmp U(00  (w+  J% O mB5E =1Ƞ@uCvPT42mDB `LT,L:Ft!pP=)\LF ;\+܀m($ P .ph@@("]Lpk &.PF=A*h N҄`IxLn`aUpP *P\i*{+hIBopfY   S=PQB*F 0k\4r@ | Ԋ|bBH4AtєV\Hs@E&Qdm& L m Do `WhQ  T@ ( T \@#rx 4\ppoCE.uT`DzHhc!1z\ȃKQ45`ȺdVфUE"q(&cSKƦj4>&T . @;@ 1= @J rʀSCP@P . H!LH*(-=bt`>` ;.0gZhn$TUTZboWF5':& o,2M2(@T@J @[J (BP$4BB2o0 .-(Z -qyѫ abDa99c # /PG4@rP(H ɀ_/psra ?RL4،42~ KUٖ!#ʃO.$B *:Q>R(8@!)@*_ @H!L@r ['hOLdɫEZ4;LXDa#LU @.=P PZn0֠M4Ө\? :O Fu55K2ĺw a&.RzFpѨFZaTaF #KTbZZ5|T` F!j _1_̸RrKH4HH2ij0 F `r(GJ(@*MFS_0:P i*P@*@. v`+ ?Un s6^,D6|1k*pLJ؜ z楜á4pUQp! !ȥ( @ H@@BFwLM+ 1T#8a[Bea1a?4"ϟ~bB8:m0?n%jj zl6i0=B_i sk}ceUR`W:(5R*-XFYS-Mk84D@L\MJp T`ZkHK5G$a#KY 4pc +0Ve8( +h$5BE :vAN )!Rv3jM1͓Ʀ$Ʈ3) I]TO?ɽ6."P=h(۸-j_FTd W,ԫn0։S-Yp%750`8(\ m"@6E=PiT3j(XwQS5@H9Y)~0u0Eaȩ fE\CX?:Zq"2`jZ1ͺZGx۫L zëTbp2a+XԋpA\VyRRc%BPPA.ŅMJ"i^14KQKTb&  L j#p QB,)ٌAq,v`(C1h@,p@uh*o :N@+_P[0Y-VC\.{~!Yֳy2,6.9>Fm2v!QC:m OhuroK Cْ-gRG~!dE)>[g Nɦkg_U߹M,j\.8 PFpB@ ԊͲɁ0䛓 &*QɁ^$P`9:AǐI%\̾a+EάNUos*3- Uqr$kjM@`R0n{+_ozꐁב3VV {ҎsӾn7^,]c yVnu$r#cg*bɆh.02fPyS#RܨPxQ J ( 9TH9F ;\N0=Q4jEWkRc["ɩ>fVjb35d$s,5YAJ~!N4oQ*W?ːc1?0AOG'}֍Ёa^+fNj& R#(7Rٓ^vm`W|v7@9Jw2,Xj!^}*}KL\ ܻ9XOh.0ȧfQB@P8P$0CQ Ųw'a(BP@c! OL`G!`dϗ) +~сVnO:NxxkɌrȝ+12T@* A p 0`1"S*0 @AF5|F&Ƙ4F 1 TaX+!Yˏif$cR|\ͫ" S96#0ȤxV$C{] boр) IF}B^)ɖ&TY&T1Q"jQµ6,6۴ɥSWR]٫%R hx'{{(JP>`w6UKv"Ko96p%\&1n<__dfNxV_K3oñˑ/f .D1H~q†0YMR AjbePLc1 a_Y6. ZbY5p)ȪԀsjK| L QɢI9z;(?&TaJv BB)аTLP(+S*U;@`oqL*L]Qorz=yF{&.a|3|yc<轻fQ"uXT  A A(!D@p;@ Yb+Vc(*@!htLa"M1u=^OQJ[s39>N4VEeRvۼ%0;&B Z^܂rZx 51kMj2 Ȕ"cll j(x"<ƒ Ul.ojkLyQ!C %G4}L"Ÿm*#\O9@\NV7XZGĊ @҉-#_}P2ޡU2mU倕5~k?Taɓ9?yd5jTCd6`0|Z=B 3/" ՘NĹ>aRxXH PwjALV7F WiY`I;AJ!y*ƎE8>;A| Te@FPr.D4l,Y_E1dV߸ ќW`DPAssX㬓B3.3!Sβ띘@ (  0A %@!(Y\(NnHi `$i "4&Ң؀ sLqr*@ kRw2D6oRHͅ*XoVcAx+j+&fcx%;Hz\ 9j&x%>8?\I{yfƥw']2*٪m$ 5Ƨ)ӝ1ntMu t90R*%/* #W+dAp5y 0=KLQj{G`xå EGtIYuDU@ bst;Ġ /P\p_0x>hrI$Ox$SՌKӵm hagzI6$P7@L1ٯ}S-H޻A ģE&ҵU@`|35=T<c(\iF왭H\bMMFBxB6=)!*v&.,cu/rU U*7hw\m :j(m`&mKH8&xّj=F攑@2h *-_3=@ޅasG W"%v09V¢I!v||Y_9YbAGiApwE06 Hh=. Kַ#LȚdFԶ#W2 ̡;hZjh"( ʚZ"Q҄6*3*ٝr(+t11v&l]zrcΣ&#~|4@ CF< $ ]84g T(f@Y.@p PIE.ʸ Uu=YI*2ηjvƅVfֈbA8Id X~$ ӑ$WȨM_EcMlD5\Z |4'&=F;Gp92F--eAi2n JleIjT8SGYZ2F+&&h`7yR,q"`Py"v6H(U3˔&Ù>7WQbwK\7 mc,NCA- 7"2[e@RB,J UP7* @F6PIs`oxPq7E:#(F@J1SbK4uk_J1#Ĭ!MZ-`l`f Pd"T0$qbkJ\,_ IprF @0փ&؃&*>\qD^$z]f=HFrꛩϩu"ԒvOUc(1DIG]#7-snLJ@ @ 8@*@iA\a>#A_3'=o ӗL#LICc,0.a~%!|!#,%+Pf+\gMЂvR `%OhXĊaY.eP@:%>. P \+Q&lS/HηSNr{v`i(4HW_M+JMJ:@79S/G/SXWxѓ>u/~mDǣU"<Ŀ62tw,ctllU 3cb@5K0`ʡA%o2T>'3+ q*2|~YQ$QW0 7|S7 .}6=bژ$`9hћCP7C q 5ń&e1 75 yCY(~2CHx(T>d Q?fNEr)rbUBGPvA@Yb ]O.c q&;)Z˓pD,sY3şےQe۫S8$ nMNIcwa_۲2ˉcT MJ]J*P F_4DiDih(ȧP`m"cLs#xz`KL|W>lYPƅaw([WJ AfuKufJԎ\ e%jǟ5 &f}!HQ!@F!D!@2Lku*!UR(䏤p! ]Pv 76` 1w"b;D(* 0 LjhUF4;n%lG(T1р !Q6?A(@;! gaxSdIH!hEi4a ½L;sש\oȮLK/ML/?7}F3hE5,Xb˓},ՅJ͏Cu=~ֲeC& "50F]S 0#C$h4 >DhE~%cCAPMdw3euLbH,k;Blܦh<%[ǧ=mjG_Cmg 4z/iͧ&| YQ*^# vi,Օ~2;q&uyycQ֘MFE^2ox@7^'Nߴ]s$Z1:VG*08~8"L6>J6deܯ&~#&0+B 2ouq5,>pw/[]Z@w.tνFQfdla#bÖɃ'F5;"]Ly&[#n~qAm a+3V%WIp o`xU2#.3ۓ# iM'hAdCAd *!H0*1A"ƻlw0:Q@I4o#x0ޏHvI*1ffH& <7CHp*LvYB'+ ֘+pf5Yq24Ȫ@re ^$Q;Ee<"DBS*,=I ܊w _r@O8L+vc^= '"ˊD+,2gBƮD%flj\ua̹To&bƲTLS0 1 ȧ BRU*#CT+aЪN03CEjhcAq5/Bȭ2$fZoЩO?KHe\x!}sФThaj !2yqQL靰+JGHDu8lWT9U#&ۅ75,\kKXrHPI R;g&\#c$)h"P` -U4*0 1 KvN$Q0$7 #I(fH2q`s8+PP U%j(Ơd{ܨ%7Wb@65Xn!C"S$d2;_b:WTUmǔPy#LK(*͂GD4_"\VciwRט1&fдĈ ^  Eof@A,*"=J;WdVyw5K$QToqV@@"  iEuPKXhZ_i)'xL Oz p!3bI!`~B\e# C6\YMYS@wرw2gmoIʼn*IHҖ 2b;J"7/ j( )J$ c` *ʧ]jZXhXwE#*т::^|cflՕtFlibܭ2%mQT(yEdUo7^7y}>uJisu A0]AP T=$BzDhzDh [+j̎ۃ;b֤u\XMl&}i>'PGOkׅ@x;0xub&! \ş;e}JzI&#ȹsQc1 UQsH|ewۏ"OMy( D|c6?Q6WMĵIֱ¿Xa>HC!`'p09'F,?`>'@[`*P<}X/q3=N%8(@Ŕw2*eʓG:]˱f1~7tZ 50$ P |2>ybI9(exNMLAuQ%J1 @*MbǬ]h@H& DxKNۘ .HR#&z>B^c~H[ nY8\+B؀`91?Lv0!k4jQ ,> J|U9 UD(G$XjʫѪԩ+ ¯NЊ}$u) -İ*QSyjNٝIE-݈!&22 `)C0wDT. Z]\(;sՏ QߎdPAG (ּ_yũ]63gZslmEvF)N ͊te,^9Yu@ZeIYu0˦FQ܃D,&-=u.T6,Z܎DJ I$Y^ծ= l &f>vIUՍ/ȑ\߈*E:[%*:_r-'eNß~IYdUU@ƣ}c;C2a@D-bGRnnĨOO)^ Ȏ2tهQOdȢUlH^F@9'KF./6'O6*4:#a{E'` xJVR6$ңeT+_5& a,5؀ee(ǩʸ1ǁY紕ck^w5̢I@ 5D@&00ROs%IʘT2Z*JȌ@PH05njxhE A#2vr5 s̨@ CiTĊGrNJ`_˭YD_ݹ=9F@cU'mo"v'{NIߴiS%e2&r4QcKc3L1HdKЕ;}^KN6e(2e,c*)MH&BNPJH)Mҁy"..Vi(}cKbeEcf_x,Y d%c,Dzb Q.bp 3ZftҒ>LŮlLtni;d5q4HzaUr)§:ֲӾD`YYH̃G %H/iI2S_5ή9QR#Se#x$NF_X钷L]++CQL8҉ Ѡ؍͈;Y dqr[)dh2^:MK*R+l[FB; Ldá6 +LBd_dE"u+q!=A@ؔK~ dgQEU'}'>S&>X5;"ևOϨ(a| σ4[ߖsG`$:&԰oRFAPoz5NAP&ZQ"D :64+G^lh /W~ seA"<_$?ˆ;Q@*/iZE! n!0; 7%aUB"v&!T!:9C"kȹ,kAGi/Qbvކ]CbKOhXeۅB(MW9ȎM=2ZxSȭ䱩zmmWCcAgP<]w(~b.G"ˆ\zڪ@d8u&z36!]3R\T5A};u=eƒ-V_V:;5 wVԚ&Ɍ \kJ8V!fXylo4\{$!smG7QiMsEqk&P7 NѦ3Px;zrغ̛MXI]qs4'_[7|`s8!R<﹖T)A7tsf>E} T&*y lBe@~!LJdT5Wh q"Ic W\<4w?LXP7̊D3ģ1@m@@!;ђ2H9z ~mglUMVt|dayF\(Rĵq-H:l͍J v=Et:\HWu3^|ȭ@A@QԨa͗V1. DžxB;]*kr,MGW@jOIhҮFeVWA_[m8`p;5*VXBl*;%GAnX˦:P037 /dN&-ŘĉyhJijő*v1Mu`rR45wW=~ՋQ$7XG2_W3blHj=F֣b߉dA}S 8(ƘI*5qc]'cwB`pH>v\9vj,XiZ C!A1@0=v4OVkvTDؚd!! ]S.;@G\6Ƣ>BbQv3b&RH>%ؙ^UȪ[Z;@@qknA>$שpu @2rln%į;ۧn9n]f1 F+, ^,#7o#[Bs;@.P k?4y0q = |_+'|0O'.~ 02V(DY%C*e_e5ƇsIV@62jl߉A_!c5bߤ)&mj6U c&0Ȥl{MFj%@ Bnpb%2h(]24+xAĺ pF B LU?5ȩ"Tp,qWeJ\J5SbeA/B;KGvŕX <5ygFVY<|lKBc`<ӀG q9ףIPSgI;o T{Ó!*1À0^bcYbY\pe*5r,A%f9I nRw/,Ad$/ ra2 ĨXrUB;\5Ԥ.YG^OD] FnX6Hk|@\'H:W !h?AjFLNG$ˉ7(pRf 2 6EvPVU=\.ʒ{2[W"ǦUy*ƙ}U2Ѧ(H& ᱸjfU&0$i##SqE ]Zkc1j`7$yWHckG1tH?ֲak gR Ԡ"hL8: >ɀ>`T `"Hѽx͛.QLh  "]ʆ %I_LH$RUي$V`wJuQ v&ZovdQĥsQH0ȕ*dXDJm "Ĩe B0FGR/qč,Fu+9QJĔ`dUGn%$U4<mdew2!fZyGNiXeBaywGբǐ cĬ¨H会T]HS")?hҼiMĀ(4w]kPwWTͰ(q#RWV,j <}GV2Ƞ鳴HZy+v`SȚY:̙1r#15;D%"(WЄx³SEBD!3"(&E6>A6 :z9l␲&/Dj}NO怼(,gW|L44ۈRKIZSfuj]W JqfA8߻\wGiGqpJh}y1a)0*DZ ̔ y֙U$kUe X$JW YS~X9nOiYQDtuL_QWRw$Z2J7?n21SNؒ~fM.ʂR7@Jk)x`KTb; 9$ŸH`*0lw2 ( (< 2,ʚYQuDG; QՋu1[ΠTBc_q*6RkQn$S" sEI_kY%Exo+ivK5o2)6J㼲&&JCD4*hiA#aHC@قm'h $գv&*XoHs7 Reddj)< 6ybῑ [le37q ճC X a_4bm"qG(wf!huLEpgV;mjFmfyI>Y~$@kz.6f5Z dPoGr ^8ن}ͯC vV GK m;zQRt 0 v!q*wA"Ms.5~Yk ٍ\&`H3`u#qk:̬cf:%fVTIP_0E{鼑U}aǹ/Hy4}z'R:L!izq}x3dZ51JWQ$#Pm_52`̖1͈E},d9"B(U"`2 }# A!/ ]m EѕBpEBs? "&T@9v*jTXW" Cy5> Z ?I 2#V@s*͑rPQcebRn%X82ĩ wGyP.\;Ox!J>E#Jpq.jnL% , aiE ,SP ,!*<662w@806"EA*WAc0PM}5Ο'QN)ʐ;B ;H$w+:5bE] KibWwFYx>%x G65,Lw4dU Q  P7گdo5tsKVF{SJyWh/=!Ytˡ65?PIL~@u1 eTi_VX3Z1O"`s5:Aje,B]&fm;qƙ{fvRM7Eq&;ErYtѿ"Z4 * {B i@OƠ[x Hm@p #!W,ioɊwD@L Q c0 `FEʖ#  a"e#RdȔ1'%A!n|N$1 h) ,n\@s%+ yl 'l.@P{IބX96 K=f֍ KaRB-Vw$tbĩ&Q2 6Dr%F-CFc;@TTwmӡjߴd&uI"|>D!Η!L,pc&a+tgA ^.JQӐŗ̫DQ<5ңb*W>$I}IXDw8VN\ՑOԒŪ vɕp1.pokb 0yMQϣ+):N<Yh:iJ; t.isPܙ@E@5do̢e:2IwY;BXNWp7kJ9X>~ ["Ơ)D(A*/>d{ɂ5=Y+2d5BUJBQ ~%ŋ0vr7@|I*ㅁSGijOJhh 46? )B`#B- 0*ƫd]̕cb 3a& Gcĺ35w%,sTč0q A@lh BUC%2 _N"R;fGBh؎>g/OΝ5+69[iaA$"E,P`2PE_~fkR542Q.ZOu™W.P4Fkp&fLj7(&Tg AWfUlfM\V/ĥ`n]Le2m]tAϑ;bX;/{ Pp>$}F_^c3ڮ<7W꽆e0̸',P <ܺ/Mh dϹE01C?YFyREGqEFLm9Y֙~|b2PkMLGѐ$=jǵ{VGUW2𮎟4T$ ˽#LHn(<`8~X._["鰃#%U$hĢZƣL1ⱱ',N}nLB&F= p,&@&@( >w(Lo75Rv6B;@a@lIːne2(PS^d PE+iQyj|ީȖBPdTZf|B&o(]E0QO &qWF* eԨOGʖ1b*TL7 A*Z Ew0$D `v2m'Ȉ+Ch($(;A$ 8 \y;ID;tbbXcR `-2 st)e1hK*X[&ĺM3mnj z٤5djbR%[|mMR<_5S\#3lԕ: F4}IZ\s*bGåh aL5X `qW@ @$\`f [ .Aavt@_a@mBl^H=E"&5tj]$fƥvG̈́&*܊5 <'U,C:=cuP\ό7;bV Sm Wr*(a3ܨ ?A(؋Zp(8XU0aF_!`՞i+Dt"]xr2(˩ jbx R+/ urR7kH4l*~ H`;ppGQd\ PUF-4'h$XCIna@+HNfƴuF?W{O,J6:"{56Wi2aaGHt..~IJc`AjP 6@5p2!OJ$ -Gy)@`0%#@wծJ81a*1GiN{H _Y-S~fV״@<\@0j9T@mA,3-S;01ɑjD mqy;K7 3ٔ-V!4mWR)j4 f5$&91#weºF }ij6`%1B#H5B4K"Ju~Љ-VyI]B4mz82˟8LVq=='N@f2Z<^4 "o`M4qӴzv}-waln%FO6W5.2N1 I:AI&i|¬W퍚gȹu1'N1=Kx%;B( ba@ (I ;KyɤV`1Q(Pv[ā6bmı B14F\Ff3m&+7Kv!yQ;eF+Rۙҏeyob8;,ETf6C 7*5W*4W@Z(yP@. o jAjTta053bE}ډ&ZS9@6ԾQ¯] ic&&5+60ᶕ xDRP%*ü}jLzǓ.%$ԨE4\eqRHG 6dJ(;J* ]P3|O7*39 +)`ٽfnFyy%bb 5ѱ]\;BԓjCir% üU⫙*n0=O8oLTh=ju*H\,xȤ:k8sb-kHR9)@@5ҘV(jqB"mrh;wؒXշaĐ@r.Pu X=@Ϧ~vV\,̱EU &kI$$6W;hȆPKa"OnhyAm"G}CeG>EߘwP!Hs; PM Wگx 'n5PǷDJ JGg4G26|{H 2cb.)6"F |1ɓOk2ĩVR|@WyT0bA@PR`&R$Up@ 9*;2'Um>vMb(Ԧ3Z"P2ӦNc&'U1aPe@`5bL%kĊ4QHTD7a.;|€U Q$¦ܝFӃTmͭH.6*&U2fT,*pkR MA$ILKZl^ǁ1.cbvvWT1Ǖ6'KgDcn03KNMy.8R%UKZ. ׈CA0aEI"i ?kDR޻QP">%ir@(4XIjKhM(y2.#P n:@$V}K29D)`<@Ʌ4 IQA;jP6_&ROyCw2 #DJhAVAj3dXM/oMq$l{5jb'ŋ, njDfVhCP7@ɗ}%ohC<\pohXkC{DA ev@;\ 1fjp`d iXs_ōJ֡`?`ZA*ʝ\hh2*`z'T\io&,nWJIHa  yj:י\G'&laww+:P-q&*X&@; 0Mp @m[o*3$"jʅ*#F,ĝ{R=!}4':]4fJĵ  S*͙"ZN4 5W7\c2ZA jl8J3.KZ@#q3V9!V#p>;K9/"lw"678l ׬ˍeuKF*\}Ln5 ) ؘU/ }̨`dԨ|&K=o+: "]o%Qt-JUtOAEr)ɤ7Z"2/~w̴{̫@> P( Amn\s8L6Fҕ~]A#cFaV(,Aq4%X%d8L*"Z&.E'ݍ6"%A#\F\c˓ 9@V+\ 2)e7_1; Ԩ)DedN6B(=Co@Cn `@s RR"s(n@P&#G](IL9fLwbb⌬ІlihM%Vaq 5%}KPfŔ.q*t7X|E %fu Mwq5omJ,d@P;Vj )!Hnxn6ch:X 㰙mF :qv¹iMA{F ƛER(mdgBAϩ0mոWk:X+n`")8=BAq M|Y2GQ#f5a0x5cK*$Q Umo&ɛ%|FPkhCs ߧɎuxEXì,Y@v ݙ8a@WV&QmFh8Q ~ PZUHuKd#jFms4 AaWW#avC ޡx2HHgf T= m`B,2)c`2L&#0)6"pf8 nT>P߈@@ V""`ɲcUݘXVDmgxM^#WzvrF&.b|gCtEUɫFuP7%V>1䵬S8Bk;&Tf:|E$^$\`Y&b{H>v ~NK_Ig BẙQA?JA4(AkjXV҉(&Y &n&6\jW-3ǐ#=m+-լL/gTHBKV_`*kKЙb+9`Rff4*F.D=lF> yZ@C,nas ^  n &TIB 3:y4 88Oz0@ T*ie+D*SO*5uIX uĊ:$1Z(Ӑew`Ժ$X bAR/Kߎe1'4'SK+Gc(nd ʄ@<n C/p2#yA|U & %g%"~[b-dL2_IF73ʔ)FP-j5ZRhac/OC|V5Veg8ؐJ5 O&ӝ5~hV/@˽FkAout >7jTƈO DDT+d~Os)\UyTlQ䱩^s"iĨcEj tzjG߁ YqZ=lKe1"{'Ģڶ ]cQb9X 4iBD %{@@ {)dʉhw ]yP!Y_ʹ,u#UԋhB\b;L soUnT3*vV\'Эv?b"bGҳ^W *<^{3uW^7Wh&1d`؀Uy+PAzj$/iǏlJ sW [8 A9dm360`$He$Xpw;1NjWP8"Yuf5 6Dj5h*jQ$(ҫHZ^(qɠ(J68>$R8F4 P"HaWGWQ+m?\69DV,PjQ .ELc!.q5bJ'Ff~':TO,Y m&*4;_ p]hͰcoeƹS|2+C; mMs/QCI[>finZ2(k"̡܈ hD)V (L)(wN£%Vʕ)c@U+xʅ"U`LzÙ5qƹW 4nYR.t- Y;@WjjEؙ,jWR;̪]H$UD(oodiXAV&֏~Ё;x Wa@]nkD@ljn>yN"@1GiQ=J$xhn.J3"@D b@J3ܨ  Fw4q2+E6625W( ⦽N?9Wܤ /H+>;ReفS5؂ T רy XӋS2y#0?@190iF4'k|M"$q4(4 Mn|@X KaTq$ h_LIcuPB5ݼ}&V6NV 4߼>8;*Xע4- iYXk$赮glhVD^))ʧ+8^G&}Kp$kku p #D(T2= "u3pG 7ZʑJJf%Ȇ)*Кx- jXLkaƘx4qq5 ID[ mHxYF~8ib˜Ā)pIh /LPdm]5w7+V⁁ x#}Govva4ٳ@͐)# ŷ;B0$DTs #(Cx$Uk"{}ZCAXdkc60 @R2ǙkT$4>a@fCjHu -1ɑ[.Nͦ@*uj+TFK*5~L#lvT;B> `jߘ+.S^Ԏ,S oe #}A"hu"i@ P VFݘqԎ6*sZpELwwplNi~\%>66n4+(H3IʉBA“kӻla-~Q^.M\Rf4;;#S+%He*iSɨ@م 8ʄ|H*q ƪ`Y%j:@"z{{MD#d0\@W o F 2UҏD#m_y.UZƃTXhowBo"'"cN۷iaSp69fCS]S  JVRIh!VeE230յB *qd raM00qGQ#b`| 4 <S`!QRu!Aۃ`B%P&fŕkx"l}Kτ`~Z:Sx[pܱ]- o !zhF Cp*#Q- HSe?ȅC} nv(; y?С+Qj*Fr&uduH6 ~d5obl@$p;H#љUcE%ӑ0+[ɐs %Fɕ Ca-f [@Eߊ2+e~L)`MEf`YWH*]Ѯ5* 7?y)H>=n}TL.$?6cL<ë}\ ?>EzP4zUPwJoIbbW?IXzFP)lm E+d(@Ͷ5ΊH`ErjQ< vԠ{XR($lA`}FQS`6qb.G'gcL551t9[ɫ}*M1%ơx1LEaY. "82j(<[(!Y;watȉKnn"Z5+8RP"kx\֣&On3Y%Dx+!] P̘<5cȤwGf+.L^5ҤQ Vhźb?/%y:l[yf6mXX mx@ M@ȖJ۹2ZbTwZƊHc{Elf}+"`C3 Ȗ%taK]3nv2!ղ/Ld92ԩ8-iDj ΐ>4c 8P pajv55 d;JZRUKQR^9X5@ *5-I|̀U;~nk'Ã5ombWHVSNoLXIYJWQ (u24Ia2shϏ) " f4F4 ɥݠ6oIK#! )Xc0U~ ${CK,HT3ܨ+OEڪ K s)`k|Zkn50u~/K5ɋY(؂kpv2XJ . l7 MJ9"֦$&KB$@؀#x!Voy0mJp$($wAĂ Ǖ 2cN}vBSƷezݲ*2ר4mmd0ȶ?~D)ըFY|ykNG#m+'A`G~(o_q).R^۶XX&M.&豰[ig~bOm˩ 1Iq02vds(aDL #LnncPdh (%FeEvCd=|h1Ȝw"A#Fa -gP_O >NӒ58N.lzQ k6lŦ,Lh U ) ~bxFcSm«+{jOnuл .L <G Q@u@QS?& s- ɽĸ]Be#GbV~5T0)`,6,a Xm_X.U+2RA,$sdlRb aFF]vOGH7ތ C@FEe _Pk9 gU7+bB.jdVWVS GҸ"ePL(|͔"f*1Qns`X@PJWԂdՎ@YlbH{4L>9'pw MhH_*4eVqem5*c:PVN()JDS;ʂ!U$~%C´x2XJހߴX7]@ }̊Lt[AQ J9cɛ/ǃBkSrNFmqlvh(!YVI<^nm -~_(͖3aKR|УXnjTC=xFYr +* I@pHlbȦ("AJk$sL䍔 +8 7k#'e,h֤n Bɯ~ @)YǴ&lGOO@ߓ3kR/TH4 3EwF *I3jbxK2ΑTP̨QH`lq55 Er>.fM<n$b9xF#hJɘ-38P.[|}X+@:H$PXݬ$V*HȬl,"$taڈ$R[UKAC VV NFč7vv&R2ckq5ɝ /ԩUӰO}1U;[ ̍c*R|=ыtֱclSqcd]{F5,n&u;1+*̂q3l|  <,ɰ(11͈(XTA4QȄfo(4&&Ӿ oMBaEB{ Sd~ k!]fWf80wǠY"Am$yBGы%i$ *X1| F؁u18Qado] -y&n ̠%r:8*m;1eM$ͧiLumķĎ0kYkZ +mڠ2IN72PUlHLhGhdr%cKbO8@dW*E~`dSn;&491ZhP.Y`B:iEԃCS\TamXhˑv@f;|޸+*j@GbD \ "1@h;^&,qf{a&+ KEqJB)ޠfSȄF@ iaFQ%A;UUT>N,Cttl0utGJ!M0|o hVC,cݥB@+&u3&͉@8 MºpI3Zه0(r\dpA NЁA< 7N5i1uЎZUn6l s=?F l+˵vLB3bjptGJqjIl~D+3oeL 3ې> ͱ\j]== ;@ 7  #DTEMiD+ͶV o*SĥQTe6#ܑU#pyU>NO>DOXh+S} 9B" Tx3Q͐ܨܦ 5 ͛a.r# rϥJ iq5P<50 KvE`o W21wb$57l¶k)4E22$@xj@As8% #H3̠}D66bZl.A%QQǐ1#HI]L6kap6Wcc2ӯNJAWr`-7eL+""Y( X]Z@-o W"E`y&]Zܬc4q_#BV3'}`RЮ^̴Nקu"L]X]x_Zx4!ǷG] 'OH ݏc'25{G"6^1$>@;iXk\=X˕M<,]lQrp("t8 {QI7?9􏑉5|0u,peڝjjVlfTՏ5QthqH#nl駽H`
*'ʍqAuO t ((" `> 3` ?yh5)ǟ@kQVP!魲6F9zw4My1f[;P0Ď,ȫn7pa\ xL]=0H Fe\lyJ IBqMOi0n"> I00-M)"$@|F~|˨e=49Uc*kIXTc#H]2XlЫo0LO,H:dZ1[n dT>X I*/Ċz 1,TԬ;W),t>^br]QAJ<;2T#NSQMoā\"D+#WpȳAFm `H̷ TjXE26_0'ï-e(he:"ab@PTA#w ڪEֹ O5NYon(.#l ֤O0$()T \x>!戍\ccΠ[bVYboO;| 뛹h䑤18rcgʳ|`ʧ(Aq5.fhG$"RP.C_ ֯ S$ƀQd(֧MT )bnDVF=̡5A@shF9:lYI~.lDֿʘe~Hͷ?! C#`є &W!FWX 7D3ikZ\HUIr ڡu ڙ#ͺr͵KxqbLVr êM B¹1k>oHŗ2Qex!nX65_wУmH P[weRq`X'Q kwbO`/#)fDa H%Jz s6¥μ[*BH#&:@2NҢaZ QZaڪA%-C)_1oTgPQ;iϙU 4v1 Ljs μB ȶ0 ({FTT7E62e'aqL;ʎMJ94,Qϗ Kj4JB*@yEv -MQM :0ci)܊3+p`g" 2WȬ[4#S[obOLX6< +d7=G> ew&M@ #~20bstzsc/DjYLxFlyM%A"ʉ0Z79k(nC ⑽A>!ədw WZcG_ GɐNG'eLNaT&Vň(XG_Gi`+%Ju/sO:OSŏtQ^oUCjE D9=DJϊ]H_ML}6qLj`)ajr,@I92Q^E@@+ @i;"7 7+67\erS{3A[W*2vT(͇5WF9C#Hp`rNɐ## jzr!ȧQvLc6a~V0 G;~bCr<jת j[6s}V4I_b>7L ZA@$iB=I$@G*#àڊRe:`F^Vc51 \dƗP.6C+!ߘ؟6N g+V(BdFU۟`NkFYXN-epµW+\scAC)U)A\YOnzWGcD{˕5mH:I7"8ukTc{d x+)W;/ӯ[!xVޢ5\]959%;.k""jVq'Q,loL<@z\_yՙ/wcKo&@2䱑1I Ϩɭ ܂%9t`澰5ŅQtcvqhW MrL|xn?/ri]iECsIFL&/@*HG@^䝬Q*~+wL[Ĩje]JrÑhUA })!pLlqۥ{Xh HT̺+0uc$RٕyY2[˾\5ԙds8˩ҴdcDm d-y孽4ʱɕI9/ :y1A:!$۹U})=_W&Ë-16(r;ʣd9nez=;n5 S su9ޢw.9[ Cu_̨F:U +p,7BVnlAуxIıgSQ?\'!;2G!ȁы],{IObƃ0pIta̙6 ̖.&r+HX beFĘk LH1"k-7ɋUߴetL ;ZZB>@X.AjnL`Ƞ`"6' YQQ}J|Tf 0VI;NK12+UPZ1^2+jW r z9/).W9Cxjr$VuQojP]jAx1'I{ (LjۓM!0 #Ò-*o |ˣu4gM 0я obvpUReMF.:9Dӵpw iUH( 缙ѭCd UΑf !R5Z&5GICcM59%,߇fMu+,͎&WKy utXyR 0;י">D .1a&faGG(F\Y* †Z r hX,r1:N#cJv ';#{www"ǟH; hoRUm91RXR rޥi!Q8hq>|o HQH?f[ @BkpZ"lD8c*e_r@;7_ckr2F*d'I2at/r#(  LdzFPXdw.Y0ﱂ-=oH8[XDQ:  Nl9䚍aTO+%چXJybP&4ocveթJ8"O)`YiaI֤S2UbC0ۃ|Kt=E6>j=>k-82rUP)7j5~J+wVd*n.uVǟ"LY,mLx[96+$ v35GF;ZG3Za͓:VȽG8ccuH#Iznx ex+[y?X\ƴlm`]zQ/yTm"fCɶ%ou*1̀щRKqF]1!V!JFyP0xkQZc2$ j=3&,HRgPԤw05)]I ɀ{N5ǐma(_ uS q}zmdE;D4qc3B1na4/b Ug5.\ qS[M 5oF)e==am'<cƩ- xḌܣ1 ~DMǴ6)$*@jQ.lid`=tu*]i!EE䬭&0WQ$UA;F]=Q-UIV=oP&Mn>lէOmHT^j0@܏4$&!aG..\nG͋noOKc$^.N-fg\u$eGF%j:z\p}jz8?ԬجB1FT{1xQlҌYm9`PmUmF׹?Sp 01πd@7c,c4¦(D@>=$?H]>a3 5Oz#Tj3 @O mv~:qUXԮƀƤ)4p!"7 ClD=2?5rQA@<p8l9&a\4Nl9FB,\*(E_m <ˉ+U:$jrl**D#]̓u\&18Yut>J<}$X QMT^9\ É~%ts&5=]Mg]?I 08z1e[ijX3!Yu6|dTUE=j`o z1L(ycscҍ; 'gIwb>qi*-Ƕ[@e#Rbw#!:q1$VGFwOjl$c"4FDh= pTDd2Sv#VDȁ8V2Oh#L; jDkp =? 6J80OX|WiiqsC.[F%!_p#oIJ_cs\ֳ(,ͤ؎$oVZQ@]F=@v^E^6șCcfn#[d5:_ qo{aY]ʍ?XNcMpN)\ 6`êB?1SAhY[e^ɐtu%M%qݾ~}_}V(JfldG LvHԮ|ep {cӨv(B[#Gˏ" n]7rMT;ʊwPh-ڡuҝiƇ&;Ȋhx?X!:A*3i&?6XzQ% +68&`wjT4jW QC("%GMTe1:@l~I&L3СGM1ϓ` 5FFJgǘ#{&kNΓH;Uv-H(@`@= YP+`ݨD c]0Gkf?bG-FtxG*OhX,1ɡ_i@;N*љLDqjʮC)@@J\iZ(LtsxnjK4WHY,JFX.S3#jRO#0/R,F+loy;]_-5 XA"\l 8;]LnTfFbF鶨)}G,ײ kYC+#$ 9z<9+wԲ䢳5ޥnQ.&080ab'7F`v AN 7wLb%|v2*bذ81PԴki-Vzb $s[q*g/ͲC/Hc.pLZL,2Os(=ҫ:08ɱeblG"uU1fŷ*@ \+Gqf|J:%5<%ft c'^*>duӐ_c~WHL: Wf?[P?rl}>dÂ#oa7 4͌cþЩSr[Jn70-: M  fOʍZI$[0$ZmȮ+dWZ(dP2kY*)riG*фIȷZe <`E5!f^ѨGl#S92U*-*&Zz(FlEfŎˈrp$T> K%k}Iƃ&#~3pq>|{XjXڗ|mW4IL7ܝ*ڪ9q6(J)/*` -6tv8d2M'u`&b f^ O&o[؇kdfw hV߯2!.Lz b:WNUnmƵa1f>36+7o)~Hy1zNX cepGb@ib9p,cr2(tNTH5z tČ!pQYeՋ8C~4I0=QE@}G*ԃHPۡvԊ.CgO I:,yz F^MkGNf(ɓoTL7R|H#(ݑ$ŐcΎ?R4r+c`O5R%#jʍUy3--# TW ,oYTˍZ JCC)^30Ñ]G@QlF6U Y "c# 022Q.ă-ث68[m{E!ၿ6 bA`@zAC%W.lAQyQyԾp/Կ&rEŸnQ]*0$ hAe+tr*p~{KMFXX&KVGf>P*YcZg]"%ZԖ`օ/ŽbEs?]%{.l/B@ŘޠwN5+Y- ϸҍ !Lr^Na&.ڇ̸s6w 9 eeuqQ.pe+6kȍ 9a2P[@ӫ8ոjGn\Mib[Ls t;PtmTq@p#qCsQV}kQdI}C]xt=M7ؓZՋkb1v"Knud;n&9l.NkGhME}bdH6wG(@<b12^Zz=K\e4*i>Orwz1u} h_?-pp:/ڣvJ{mM*Znc{ z@0܁tW3aNEy}MWW`1פ.#eǓ"3ZήT{UG242kBWBuǓ |Wm/LlQ,bkƨi&x LTsVxB̡m`\!dӛ Py bM5lhXASe#C#w^4m:>֭ 9[Ыjڔ#%YTϩ;B?؁jib址t*(7 ޠFMf 6?(#fmpdV`Ml|@HPj`,gII;lc8v68_f0?tZ7^qɶ"».ω_qMW#L#JR'LjFAtcDw7xV:@q[ЉzK_<IIDcDdś#Ry6$1QҜ-o}1)cePIE|JRxrXSFBAs-YEbs* xR-cTǛ@Xm$8 w hF07Ř>^@]l .*V9qذ!jcMi6LRp/._ԐUY'7dMK6dٕB)R[ 0CU la^Hpwcr~!F $?Yk'o;ŋG \v⫃?][܂/z<⎛"2Ʉ-o~`APn lA^((Z6, 5* ي#oJ P`s@(CHWR2/QwF8L]CC#0҈! ]X+P8˰"sll€oޤcyҎqZ<Տ"e6䍏H5C}62+2ddq I>"ғӦNasÉmgMDzx=UF|rPOSĆ!==~a^#wF5еc-.Dpew! R\ 5 cR[l#[݌+7`v9}:G#r$7U+٬%wEra<7s*ā`FUn]]bpIRkO̳ԥaɓTP]igU*0mKltnjĕr]*McU֛?̃Po0(waXeQ%FgD?bN(Ccrbʄyq(]͘ʪ</l]H߈EǂH"EךM'@ʐj j[YcQAu9:w )en.,{ZV8=TC "#'DM|%ыt͌v>hHc'+`QZpB* ntWd-ZM&=Ay ~{Y, <o1)W1@kҊ² by(`?QhASH4\wRI=UK4:p#ĔeԘ6pJo,%WWG^OO&,*kڸ5mLj yvF<1[uiu"K jq"; #RXF#(Ƙ:@( -\%%GOa/ wLڧƲVTod\kDyZ6R_LdjRX}`a8}E[E^5U"Uxk`+E9 =y@405W!`UV9zc&4^P_\"`=OކZP!k V2rauRϛaץ-Lvc36" 36MmԮ̡9LK-OO.w\5 G8WT5>6P>#hުp WR+S^RNL. k}7D;ٛrw_9:><9ʣ?2c>T]NUm#>11m_eY - 4W\C_`PFHḄK~F XRU h`@õ@b J %Gx9cɗXeJб>]L1I\Kt,Mce5͞% ~=GI1n.r*,%,ym@mYx#bnNJź,;LkѨTZcf'>p|cWLoO"i;?KᲗ7*c3a*ɫs`VĂQh3 \@͜U-(0Kuh S_`kc;XxA ɊY10w1;Fopw$JR_<oKP`4f|"Rj=<ʽ:,}01\E2Y7Ȍ:F m]|5X`y1҇Xu+"kb ag.w$0ա ψE$$o4zLhT>A#T Ԑ{4bxbFu,[PQCQ2ՋNR<Z>|a3%bSsr`!ȆJqCi1[ȸzu?T63y}e~Q$oUmP-J kQ{D'{jO7R=V.|QؙruY厠WAǍ_VEc@75.\ɯ*JG⸈kY TW7Q?i>dm,8 sgX:lō}!XtX8:jbRLQЯ鵀tB6 k̖*wڇ2z()S/3X%hXX^҈gYYY|# !1/|03e}w;>0ǽMSgՑB+G.a^Øu ^>l8+~@h01…p(~yb6K)FE1"0X2v>Utcǐ-ړƤVa"gpb7؋ \F_İɡϋkD,mU diLd2lCgJ#akeF W∑L \J+H"jf?x r\` IV0 &2`H\h]U.\Mh߹M,뛤ϓdtj$}M˜cla/Lb0}jG PXŎJF .uA=:݁C0h $"2cV/ÓꘔЧ|MDˀѧ ^KJؚْvb T;kjK ,waT#y:w`)@${麺`ǹdu+ȪQ,\ի7 hZ ʮvU3Hl0h b(?fEfgB󪉳1ϓ-6D뼵LbL%kXU.tDAuE9:09slE_5Ң"f-0uu DȪB:`WWeXQG#%Kc˄*pIi"Ϙ͗ NXј)}mQɓ3Zu%Xڀ}ES?3ɎIөɋ`ʻ9z^ESM $^¹_*ōQ2o(l3(3>U@B6Hb؜'eEbQ^K}63ëntecf+_$QJ.`Xcw(X1#7buaA4.6$;|#:(ͤ] 숤ѢǪJ 8B)v[lˌ#WlFşCQ@ ,*$fE5c .$KאŌ(ZŒG# ldi.'$eZ#c@aca5[m\ɢ!UTqPS7r Bqϋu+'Q v AIKX3auJ{lvpq>)y`wP #KT1BŌٳqKڇypщ\ {ML'ibEC񴣓+eܕ8q?KQԜFpm{D&gaM(+ vP{Ob[_u& A}Nߡj i 4a I@\}7x @UPo(s(wR /HT6{6 # #Ģuo^\(lW "Zz/RƁ{ :mET~*0oާQ:3UXr9@v H `dȶ*8\QMcpu!q>62Q`C 8ߣoer6 A(ȖN,7g,Cd^/sB T@&ؚX)EmxAx]ݫn"[R hFL`]m4Pf""\ +IXu{A@ݕ4$V> ٷhYl}U[nFP]&Kev+"zN[d }G̶"x&(5d},#*bS]i5иpd=X$/Qc`- b#OmEtQŗ*R5r?M.1(sbdV1~hsȏCq.mw6| *$e/"[}R:?k݊ r)Mk.ˏ鐗R􊏣,}Z6qKs1 V+BNċdqfA$Xo$dUeKbU=&;#Wc OTΔ2A>R J)0X c]{ bjO9  l`WMVEAӗMڥEyF'Ð*QFMJVl&Uk3R2+E{2_Q|K8FgRiJ,^9_{Xd(>o5'+#g CMj:3U*|y̋Am1V+q'PJ-j3&ň!"ɳSz]AsˡlvIV8۩ #iq57$ţ *)]&̴ǙpPuoD@F.@FǙv.S,G6gWPʕW'DfllӘ:uK~@|DZ# o)euTa[5h0fOAd,Ga͚a[~UOV"0\ۉk=2Y?GA%c(>ZQ$/P| dMrd4< qyc r| ]kQ@`Q*$Q؈G% 94܈sbPP0ffegE%NĨ00aM@(Ɂ`KcWFMnAC vo4biL;4eiQeR*-z&yB y pYxPW{q&*ՐI`y078.ʛ#&%ptr">ճ?HZ蓼HkL]B;)t7:MnTDF~E4$Xأ\bEqRke͍uE&V+d+>^Ѳ<6`8chPX!ӫHf`3#t?=f g /G6T,da#u:0T9%z'HKZuQǏ܋&y{OE#}˸tLzc(sfIG>ETpFE 4ecqVz?^it=Lz5qUAՖ#Q鹷p2ʋX7 x Z zU-aC˛0cc{ssܛ55zc.UunՈ#ֺ GT'#(}T{EMFj[V*oh`l];fc;iS:>qͩHKX1njC*flI'h^oQxmgh~'eub>V׻vA?u 5R:>F*٬)Es2pm(|ovv5*X&\1: v,Mr'gyNRT0H:5U) yd4HGlx2t@lLI%ag]zpG]$r@m뙕4 A|@`"eL!BU"ň > w(DH-ϗUFK"Z>AD&F$2ˑqdrI:W(fMaR6aD6ߙve)kFX{*9@vyC@ P" I[ #h@FQ$ J1?uka/ls=F6ݘ(I93t[MNL. Vuum`eWu&F nXQӏ;Q#sLز$B.e,Fx4 qUćP6ls">^N0itBEOA5,}OHcpՕ5xޣUƘI\E廑, Ě(A{e΄rurdb5W6Q*4!Simi2GU]FhYdɉhaۊKn&"ގ\ 9V$lq.XPdUc o[]@Q}@ѰH+3/Vm uSO]F: W{ 4E67=߼ԮUˌ#ە]a#_..Y@m!J٠,X#F居2 _!3_. c'dH k8u][W_iQͫ- QĂbTzŀƋd wL2R7L`\x f-eé&r8"`NO?ǪVo3Qp2I;%γȸ56MizY>2_%[]yXGGX2 -z F 0x Ծp$s(汙Φ .\Ms1,˚mxٻzYBUqJ 6^VD+,Y˶~e5?®L@KvM\t/O0]C8jM1ʛ~EH`A7S{{DiAPXUT P8t~DJ&TI,|H*1 k:EhM{}']W.Ly1?& 1 PƁ?a\>%EvLoÿx@PP P@!RV)* "9I^e:N@˗&@mۋ#!uzc osN7q }A I7XTV8ELc[G̖,.[,/a}eF$YʰZ9ﴨk =i|jU(_g&Lo njjc4qL._QeV pAIч(`X0+|&}Nid NK$5ֹuR/$g9`]Бۏ.1N pAgZ#OrƮ鰣1\nz?7aTLE:qG/Rh8 ""3TUPڨ[D26=G,#VX.F %iH1lXc{)|_- ٘^`bB 3]2KN49riUB"Wd:©j#BޟN=\ ڥzNcV%Zu 18ܑ+AoIGkMiӽ+CJՁK( @xRTdMЯp;|CQ~p7;()k3GG5a{P:_O@L!}8c:v5xbɒґnvMulX oĘ֞>vIQ+RF_ҏpc,cP ~7o%@> T0҄vh]VD;.繚5cd̨"Վ;@SQ%# Ӽj7s2ۡ_η鰦A&lvߤo(Cp[Y0ZnQ% % P"%`fBQԚ&=ĬpI@]_ʕ\_GV`C\v"L]%3 u^×Ik&.13=Vanm}>'dRh J@h~paN0Bwlw'E,(uZ6ȭz@sdg,@]|^mw:MK=OT3Q~w!WHNL 6I5Ql>Vr7suI=)\Yd~UU=XY&a{mcĒSa9md$cOUsEr%>#i€$*FAN@(2;P2 ,:,d :Є)hwfDw`< =BPazc/Om#b呓@*ڲR:1 ;n1Bg Ġ$ v>W5ɰPYzFTUV$ BYG}e rSb &b̹O5@B M)ܚ [#Y^F USv`fɪQX(<;t'5;\#7vM6Rq5]?kd/R=LB7EeUjcd!aLV|hU#1 %+.B!4$oƣLxޓzLu'FXn=DHQlŽHFEP S X$E#Z[lx.9?^32'ّʓߟh62̧b;i.;oLhH}*KEeK] I902)Γ=ClyrnH"qfO06WĂũ*}VWDn?K\9[3L&'hˣJj 1CcjMqL2E>5^t*ҹ#+gkX,.[o]G2*"yZ`: 8 J @@P Ap \+ʠ70ؐ7Tr792c܎D֣21IPEsR*f?iR'[]__(8E;u.=mg0bDp.g1]M( 3okef&QGV&?I4bz wU̸\ E\A񌋥47$ X6`;s-$z^'/=FWLtufv?3QvƄO`x. Ǿ[)ɫGL6tILE2`=K(C0 D 2VbTh+A}E²QB*L@ݗ"sqDF#0\Q|2ġ3pMV$TT_(v;jj Q RE wCQh@Y`;)5dP:66u 7ƹV{ʒa}`1!ḳ"ȴlk#J A< 0b]),CUYC&؍d`fɨzؘ,0(zJ9Bv#Cl , R2'nizlJpOs̔D0(p+SEo/=oiފ,W $B봀zL1.FQ;1/cLW{UaHI\t;Kq[&I]xtMAJːL=H2Z wqE ʑH܌qF;2flW̫[8)$lYR03vo>ph7ڥCR ;]AA@~Rݪ`Iϐkpd A'~׹ZPZV+] E2 |W?nB `s˭HȽ (˰&.GH@&= _`q&Q̺Sm $@$ƋMm~IE.ksAW*Xd/֣)+vCp82En Q7.+JnƅīlVN&C;ߟY c9Ǥt-ch m̒ںr.TPsoF#z}% '=( .+dgQj?Is) -IbEDm.?>X215_hqlE\$b͹B:052iJ V~ĭWD_QY|E`Ɍg`\KgGZ7PK><YJ$]FI#/g_)GZ1R]O;D6pSV7*il`#Y}qO7cd)F?pfUx.Sm6r2WCeu>!b7ۨƤ.6jo. d-FwMs•Pv'_p%uP*tmMԙtY]ٵ6b ʸqVRƉ[Me ɽc5ox V Byt&\ǙlLٲܡy@G̕Z/ɕ Lu#gq" :\L>CaÏe#oX<[nFˊdK?էq "ijƌ# ljF^onr[ l b/`ycpIfe† 7S̱}?IQԉ)l,=B-+"*_4wf?I¯؍C(&D|o4V`K=Mއ́?Ao En髀v0raG #}vVn`Ssr>3|E yh_2[؍cLWƣCl5+(?IYO,j5pֿhFf܎w:kbAX`!d`nb:ыƪ cg!U6[MoSW>2Q[n@4G̒i|+ a\9͝I$0t.Z$2gv1ĺQ$ҹpbeVFwo ֓)6ٰGrǥqX\JNfkN,ܬN7qGn[G%1' NThtv6{0f*tlJ!AG^ ݝX'Ou@:XKJPh(>fU[1om2ћ!6X(B^Ъ*,|5\2c=Y6èwDj8ŅD,t.D!Wku&&+`:2<}h7;kwU+- 4k:^r&#zgE߬suYOZAa3l;2<)ɔZޚd R`LXni F[cJ: OWr-(®2lb$JW(-z$S,8cek5(eJK{3ZaR zsWğW\=N~θ+ bq5cԫ[q@~x1g&̊LaH4]KR;2eݔPO%T 2+sҙaTvt7ϓ 5Vu(PFC SMy#"ܓEY*H5!_R0`R!էESίpQoUVh3+p%Wxp8\Msdy`k㴨˔hJ@=!"$Rp Ҹ DcE-mA5^ߋ[^{Eˈe Ibe\ ^*P=$B2#j&ԞҢ#a[rG@T̠" ̂(RYVnA]B I5hV5OtlS}A8]XYsfܢrtWє=2BL³ˍrWI.dEw&%1O*Gtc.RVo3pUl0]5m oe-j.^2;Хڷ̛zʪ2_N5N2T1b&b(me]8|lh,<򱃛XQ XxśI(H@O8 Ȥ6*:| "jb3jI?ɶkj.B2tbvAd!#r@n!ɖ]+ep%z0$lvD5=PLAEyFT`ǰ*ƉZƸ ۏL:;iq&ËCEuڍmJ:9դ*{vA[R[J;zla}ho%X:}>D:uK*c0PTnY/ z=: 08|vQؘ}+b$PF PC n&EɖA֍.! 'VlY6G(j,!֖5ZN>ջeCYH@#mߙpܒ<p9x7rǑMG>Lh2ЉFW!Ѓ .hx+PƵe ߴ,2^??+ÓV&Bfj\ k {Ty֩H 9'`"(l}#$0bN+% S0#}{ @Hooh%ZA$QѦތ{uo F, q+#b|vQ|iɛG7qVl@.܈#[̘291 2>M+`XbUl㴈ϵV]^7*=>TYS*2ZخfTnҬ&.>FaƘձ&,er[5A=15U3(5-ۙ8~F<ƨwߴ,ϟ^qc b9 |5Xɰw#'iG!V [)VFRۀN?J5QcP3:G7F@X-=!J-i7cЍclXP"2Ue[ʺX{oĿF?Zņ/ͣ]"p5lExwY}(i:f?kVx/&LrupD 2H91DzƂP#pk621y0lJ?&0ˏH*-$-aگ{M5.PzէDŽc?S%7P%paN|oPkp< 0ֽR/Umy<&\Wr'OYtڤZ{Ibo[y)sd/sPllEvR'<0:[Vjca` 1MC ڻ fhؔhL&;P36cơ?t4CCu"V}nb:ʢm,+zh6y#K֭R O3"3%qlH83HK 9PFDsτ++vn̲2cƴƉ2U;3R6&A긭 )O,iu~^F4؝#'R{.l(tӏ>@81p;nj* yN[*j>,Mj=R6v,g%lΌ5ĻB&`MŨ~v4H96:Ey7'`m%N&ߓ*+14_# [,Ly]ScpBnu (fAnl.d7e r# pppxdK'xZ Mj}]v"0YnAQbdm\s,:92]FId'2Sͨc5]#q"06 pC1*jc!Ш>eĞ@ n ˅,Pp.LahkUq UI>!!m79nq 8Qr,Y]h̫[*ld&)؈ MaHڎN+`X{WwAoImdCU2*FYP|+OcX{›T"!\@Y2B 6bm@q5GcW _iUx(7SH$yGcD%Ejs)Wg4V1u͜{=K .'UrCq0V8W6tLU"XǤuQuɧwF+R/Nq'Q[25_GWL5Uld<uVF߯h^< 6+7'לrFɊJ)@5agρ&%9(+7ģl>~ƧPEKr iEQ*4n$Cd4 RP+FL^;V pCQP!D!vF  קq`$׏(=l]h!]V9N1&J:1WXr kJ'N Ame^`"Ep`"b.h 6GnQQO^xJ 9V> ;_bz#t%Jd֢~D=Lc 5]oJ:}nYG̯G}ֳcǓ *U,4ö2 O4$S^PV0y DX i5|J?U( &gȭi*JEZpOw&0$Prt^PH[*$w&[T!_E>ڐO #9e4SI)8, td=F̫DQFּEc8c/8tڢvW?ۖX.: Ppv?03$:e}@hoCko;wۃ (Q5gFGmz81 <4m!\ @*[d 2 [~M_`9zb^c؉,<#L5 ('$9U)b{"]e:UeH`5Tuu"hզ1/k\#7F:c `  …Q$3{ɢg90.h5Z]2 ^ c/&u0M&?;%,stU;e|ec̸ y3p TK;8QD %JƝHVgz2;?GҸpc?oYƝNa…ߙ$Z1l@m$]0G_Zf >896I=VB"4q4:O2#6@Nu)}UIbVLϵ8s_\xK@S̱*6">\(B0FyP;zZ3!̖bIyT4ĪN]swl -v;z}a|$8?d=bElwB9_5'kCό6R G!*jFNHթF8q y-H$P0v6$ ؔRh& 5:sH[x=QEَ0lhNi.mP cȡ0GyQ:5^$/ESFB92q5ЬnLSM w0 D#26U |@6P~!Z:Bq|nco1ohTh @BĊvɰ<)@$4)őFL\q] a2 $Czd62T~%ꃵ7/qdAMKWtx2)G"F@ X6  @ lBHj@05Ǚ*ۨ@ O"q#;y;ċrW&>wUE"F3~eY?OcSab}Öޤ0J5cb|D '*;re2>g50Zk&7Û !!ov[H#n@L tʐLʲt,k6WA}D#(}DE\kv?I`鱺twfg\_H:>eȩw%ͭ:cGP ;Dl zDjNgM=*k ]WAtʘH&$ʎMm̹1!H7O+ p{%X5b6O K`ȘQ7{taVOun-_zEnDx}@n3sYTQ7cO.(9$>K?]TXY w4v"U`o $h&%E;+ؘ91]Ind(qӮ6,?QLüD+J<2P9=?Ne3P0s*Bdy^<:.PWK.nIW B99 Ȩ'rH@c-EA#EZ(.w2 wy(~+@IcIBRͼ"\1j+&L񼁫yFajdE.`"/@U,GM^›i͏T( }P iM|,8vffne}mi^Oc|Y_Ed4O%2P#|0wCލz_dt-a_ZJA;9Q[k I E;hëYPV;K*XCzlvM2~9Lq0Fl^{BcDأer `ɯVmqi6,dX<<uf6f*4(LKV@FhڋbчWIV`c{ЌH%>cv,lxMVWՇAe_xM*9e*⦪+TL |S!~nXL_LKU TnN&=ġ_7l@`T34֣f+<* ?mŦM%W226or&Gy"@@K].`: }J'KAx1Vo L>_Kh0G̚cK teo Flަ7|R.Orèx&l8;TЕgܝ5@V956˷Ǒ 8 o4(z 1.]$M a3dm*[w$J1"FB;2ty&;$_ | W(%Tq½bRKiNF6A]LW~fS^Ǥsk;Wi"y1fLiЌd^vNfXYI7Ȯ*qQkuز2 ~$0~5^∩: p;,PI`xi@ݔ ;e]h÷c@q'*6ڇٰ7eSUtz&dj@~yUYs*bTuk Ǐ"}ý;!^w]x <̱1*XԩӷT(IVƩ211d q5JV Xf([z~4)P{Q˕ر#;o"w.,oa(nji:Y;WyOԉWKnT0=*)|q*}HoI  9<ʎLp,@)=UX3g/y5^Fg8`YLV7.kƺ@>R s ~DjfEřu`*Jz y=Bϩ[ff?$ dFegb)հFP>+[6 e*wtt2)Q>.f7v,w&Vl 4d}Cʾ\1w{@Z!ty[QB1.CyҎJ;78I ܊IGG}X/>TyW)hP_Pr с4b}mXWv4yTiF;-raX@& .GGKn/nLQXev xVԻ͓wEL?B4Xb{J2Vx HxUj7Px3mxmM *q 2y6\|uK縌5bȮ,6+=zԔ,2 ,& 6 QI-c_Rl#}^ә,q:S`DʪFL `9&\?>;VR{'jClFLcbqp0ҳh{ȁljY9߆ȚHW?:ӬˌԮN?IuO GāT2pu]J 28al~*YG3 r 7*;C%L43Kv%TQЫ,.vؐAGJO; @@\ĝt*ⶥc|˝raǓJS|>L]F7Lv~GgiOKU( rVjr Ɗj|H9c# QSo" JڄN m{<'TLMRCO$KU2"^Sukz%k8֫w$dRf!T;},@CBf􎞣r?3PT7pA($-$@W&U` #h>Os(+|.G1Ӻ7_xJX'(Ǝ_Rʶ>v2]Lp%iKiGJY/PWV LO(: ؒo%E.Mo`LO9vΠy(8qtrJ$+Nc>"-kg5>+`,}$ LFgDunvz##=Z9Uer*k`ٚE+^LŽL*?/c˙;(i\y+eɐPCiCGxLWq V{AL!j(Ȑ ;F&"/0) 1@ 挊62 GIbuĦ &=g,iRkcsDq&uD̺GS?L)ŋ+CWv>Qx& A@B_0cڕ%+-5E 9 ؆&BwcՅFE @)%gi6>! ~(d N*vY 5v+܄ψm`"yZvM0w h}`yrZ7J _S(KىĐ Py#%ѫTfkm&tVjyl[؞ǘ@@S c!x370]u̢JXtc -BFGOvjGgZt>1j\Zm=7l0v}A$SB=lj Jv/lItPe+] v#5z)/F˘ұ#i r>3̱>KԹ,\Vm#`<G(ǖ`M{.Wҫq;Q#gbUlIMK ,J; Xi t?mS}QKȾፁ<0Zrnm\ @.\r oy:aK]",nAYD\K ÅzңboUepvX@䩯#~U٨nۭ9z\*܂~;рd? FЉJfN'cI_U{ x*;34p~5kkr2\X'H̸߯w&U ɊL:sgW %z}3)*=Ŋ\iHPFjX1 d`oq}>#%Jc%hj*iGqȁH@`G3byY#G>Km_iP#q}]^qW"~,]qaEߙ{^UWϏ=Gb%AlY)^|@Ѵ8,.(}dRd\3a\u%lEGeՉ3 L@'qɩܭjoQ<::m'VܰQg ?1,@ `C8򂎿TZ9 IZ~+.~"`(zzVrؗI'w S>:fƎPDd}xdH$σ f1 XO:`#o oCL%Ѧ*bFB>nAQӺ"ePσ-MŃ4ÓQk)A& SS#;l+%v_BQc>"8:gz6^į RE*!f%T;͈5̊ixyƘ0r:um^`D@@ĠZ?Q F`>L qX1i8E|Iuj0uԤy0>Qc4eP `ѹE 56{7r*ÂGd+ }j3(ҀDEj;lʮ(0R >lyMՇ8?%t{7Jjrz>]yrآL.7L͑RxQ;W0MOO ́}NO3a듪/>tˏQK*cLg:P4G|z]GoS5pbՏV()\c߼:F `h^H'%qfT JwtFBIZjTRLKxdS _6w&LAP"]G@T&Zf5"{vG=q'wt U~II,AK8gkdx;# R]lk\]nyP )nAӨg!?XEcgePi<˫KQ&Rռce<\oc̺ޠ5R']TH %ѡSmCs@$6M]HO#jz=;@XQ/J"Lqg2E,6 Gyp6Rl*D>ТĹhH4.Iq C@|Ɇ # `S2bwSn821Ɓ*T !h#GLoV8U^+-XBF﷈?P839:j!/"RreLR()Ǐӥhܒ+!\xsgo 4|xvOhGVډ#j+jMS M1с]2F lW}eS7bBjwUVb_\}I<~pT~I׋5k+ۥi'ɐrīzK\؛@@;STj|5`DR؆cp X88it'j%1#-Iı+6,= <ə11 (ˍ7!Uu`}}+ ?y*`2e:y!t9'SPZF=re>daգuP{HȬp+)5>%2S(j _Yu)f/*1|t]1 E7.p= {0aRҪC$.27H9T_#'@&kUuפ)Tf]t ؀dm@m ';r%s T>fUlUk$v/QڀPElt>K}FTLiVh lPz=";k`qtUXS1}WC`8V76Sm>V<3*S"[m]ƍ=W-O6])'$TѲIͱL] td|I\,6=><[qe`XQku `qVAy@r)VӍ5mN{ro/+Ǚ~E ߱;fl*EZ~#cZSp;3F>rwU)jr@У'NȘ? G՝#cXb3X%OC/}J؍?2U/Wn_u4(^KR @]W@CѮ2wX 700l`d$s y4`69A~jaJ.KcBXTFB6 {o 8FvF ӒLu+fǜ>t4;BƥW.9 {u_yCmψKmRQz*钞٫n4uA1 H3?]_JuG,LyƄd04 R ]Z;)lLЍ"Jġm͓J dpQ:~R<=f' |vZX|-"ћYHTsJ+.,EkȀwX"Qc\ˢZe{B\@[#+".;PB}ǸWG_)ύ50?x:Zls{,@3870eˉ[#]$ m,Ly/?HfFQnG>1r_ۃ,gCR>{اu"8Nu$3tT>"@<6">0Jkh+GʌPmQZ 9-D<NI֜ .D"?G<K3|9 ye'Hu:PKY12}ocn6`[gegϏp|ruʙҺ2/# RS֤Ôٻ4<\@6U#cJj |L;6+7(IIrXr+zhwcNKJ酝FL֞̌o&kHNx%WWNϧF7ƶΉ;"62%5̨m@ӌ`0&T b6ۚҥP7WK#uOvyQ`LX1 ;ʅZfJ:q=ۘ&U}y1#fSWؿ UݙL\u/CWlkF-Z W xoNpe[R{Q@Z}`}AE#c%ӪNP'̞< X#gMfQ\C 0ӠH@LJȪs#*   GFr{OH-j.D5L=Uӏ\Ϸ`:OS2WV~02)WdyGxژu}7NԆ(z@S KS#{G#㱖W~72zm3x>r/P؃ 4AD'I y+GB1RԺ-${& 2 Ʒ27UUsvbiǨa*VyJ>瘃EhbVYZ X`@؝纛9Xc5d| *8d{oojU,ۓ&l@@3) ī+5b7OJ@i%GZNU\>ȹx;麍XOWnX7t2 %IIq(ø,WX,Ge ePWQXKQc*9QІloLiXĥQ V*͏w :|L1q$]p!pBhjtȻ(R(v5X皊1 Ԋsdx0 Hx n@P0H s1 5 W8UrcV:>eͤO_-#h$MH b;c`<:T\ɦ6(لc1cm.F%f=r7vY3w _+\yGվK{I&Gu#82[{<M.TZQ 8#ΙP2X#S[;0$ \Y1Z:J<*˨:Q15`$+&`NylN5w1$yA p*$(zԻԃLyO b\bH7L~ q:Or/(Kz~'LLWV<ܖ#3ꬲsK|_WQb}f-KJO3UYzF OL殽LwҰyB2|˦9W*a^?U8UʎqȁП^7. 'yYbIJjtda#s.0'GOq⯸w~ bK^,oU)c1T4K[8&Ad[iLj5011YIԩu-?Iڷ!ZY=PqŅHXc|]N /A3zcr$mzed ~и|2kXWbK[͐tAvU̷ԋ23 F`WoR *\GWWmj"%XL:|*=s@ 4+'" fjx7c.nYA-O<ل%YOjFONj$+d4u 2{T]năi,S]^J$i.哐vP݁$@[As`;8^Ѻal=n `P[jԢ$/\]q~5x ֢T$ՍpFNWr\5şlյ_*0POy-XGɉ ԣP-, ;lj>x~.-%+`..Eٻ͘t2 .9*4F=ȯ@WBm&]˪Sc kȺ=w j$bczY$%bPF@g񣣧cF9˾U,u14(I@J6"@.fjxmt6SMSU)Y,PK)]@)0;D Ltcح04+}V-ǃN~(to-}ObόAOpO8kcs|RxY:2uaH?G[ר'XN@l?xboJd;UHP¾`hFaVQ2jq(Q1&yR5.mEo{Ҙe̤yӇ6,`yKp)ȗRGCup4C{Qne~(6lkk23Cq+2xb $#%,u͋":*EmlC$8kW~\1GMcS JȾDc{,4eǖXM2j jߣ̣*.f>'`xUeoU~vPhH5k AB6dSW@)ג'b`^<X]r9ifGJh}sp/ W>8j*; 8كQ2Usrv Y&@yFО܈8E0 v2 +bmLj'I;] ]؁cAXՃiF5nE8)(ܱ+˥pk ZPP:1u^ q(6.ɓ@6e;$~(IER ;$m tL f)#{VEjzCh0 +dSOPR^:/AuX~L1?Mc:F&$sXb2JGԥNҋf% nD=.idYVcTiV;mK.o2A o 2Ý2m,"kPG*-\qf1I:!P dm+w0-m,Eϑ48t &2 &dW%1< b/榢*6gauH\߃4ȀՊ0#vLbVeH?5Lhn"ɪ:qiW:;ʍ7ʕV*9ߴ*рo0HcB]vHsԛW&%]7B\@mɌGf,40bPt1җQ'2!X6 N\ZU%u IVaÑj-9*y\b)0cɈRȶQE~!N&ea xP6xmFEdVpy5&057MwҎ:vNwURY5#BUQLx̂r04Btc4ETLq;K)mJ1d4@5Uh"#EY߃7@$ 2ÑՀ";sfǕUzv8 &<0Eeh{G05`„blD @d'>&RI+ MH~alX Bl *P ȃY][ &@[R`l$5ġ@ QzB(s!UoEmE0e*C)?ÚL٦otub}po3?y1pt1*noYk׉vssCm^Ò`Fe2)̠w?Ӹ t rhBeԢ> I`>MWw6B$ gqFxE} +sFxP2v0AeFGL]"w$p;IFA<[^C|Qq3X6,crϩkZ "6R2^lBȕ8mvzaqt|%;+33MlcB4SP  Mƫ^˶r| *bzcy'R2ȁkdBqbZ;fcj0@ Q.*S}yXMSNxVv%X.2P =p}3=Zxk6507U.EmiS.%kBtDÖ4eS$ ϺfO \+p9eagtobP'2T|v֦ߓp!4~0A5 ^ċG6\g߃.=FL>% ]y > [e_RU<5"VY_*9;#{@pl #_ UVcz{7@$D .BTA, I ϖC`TomMR XٓuoLh9Mu/?R}3x:gPr)SuSL?sߙ[lȣҪޏ4n"_r|ȪHĬ nbqdQ\162+N]FloP), 0F#MhISFP'()@`) #:[]BD]V}|Ųn&(=Qh . &@;+n ( iM ֯b:TCk*G&QB͏u]& qs\+Vk jJGt؛f~oq7g"PǓ6RܚlE@4 uƸ;drTB :2Mx>%VlIk'hq0m6&AZ5iPɃV: ]H@d8/aG[}$YtAAńSx0 23kz͗;.MxLrmlMs*Jl:"~  6`Pc՘{B/)ʀilUH39=@8 `V;ԃo=f5M ny@8j]ݗj_/ ̃Bbn*fRy O&0H>4d=0p;( YI؞cD`>F؋@zyIb@am%ơ B"`0jУ&̨/j(&PăLdj6 &Q d\5}0uBJ"r = >Lg>*[G]v1&0Ձ%1n?:Ǿ3kũ{@b04A؎=LzިkBFON~L}_Iز0s-@+m+iU&11k٤їK.{pNŖ7(K'M%!nN u~Vj]Kdz~*&{E;0ݓ1I:='lekYp_"Q f{` h6 uxY?l HR+-{eұu0p]K($ PyGrUбS5uKg,]@bV55 Qi~aP7TyBaZJʟ(@/q1=uXZ s k8αz2moMvSWU%Uo&4"+)>uWL-/`M|+>hL 6'zq*\QQ04E#vUnj`py2*!|Xp ڠnQS!^^oio(]$*JWG ٔRv RA6> ԫ>Os@ɏ Yٽ>L{מQ˘Ph۪p_)1mok!\V-Q$+A>Ka G AO]$}̨{t߂62Er$W{Ts  G(m4mcmǟ2&?p8Y&mi2) B2@p A 8r-BH A& j,drOJ54|Xǀb+z`2Q*(|̀aT` wu 2>A@wc2(CD ^u03fQ{@ K[ŔP޻ɋ;2`pvb8<7ely·+lj)hFFLl$.aP(~ P=:M[ƪb+I Gs 1jk#i0 Kٻe^2js0$F @v&Pt+$c."VheqQ{T`5BmOx{DEE oh Y 65XDzeq= )5w44nJ1l1h@{ӕn'ъEH:2ONխ > A *L#~c} Km&2X8#!̕c9HU>d\$72x w5@$Q ģUn2ʴ 6qax0P V'EChjYB:n7b q,I&ɍ ,XXkWQi>lQ2@n$ڠ5NYGA?X]QU; D@m tbɱV;y(P @7̃"nEXJ u Ld ML(PjHB{w9Z FSc@He T$A>!N%G1Ӧ'vPZ0#H>+ ۉ@v@D@`Z;u0~;a)&x UHa >BBWTOx vt嶎 I2)!%#ܒDG`gpb؄SnԄѣ\4ѓ^1a8qWCzɫ;𑠝%1Ip%1yA<@NdUTOHW&ҎaR `L۽.A@YkK3-:?Qgf ȲO*X;B% % SY1 2mD A`#h @WP9!s{F ܘ+?0&ʆnUkEFlPqveFHh S\ @/xx @u (bk+oؓΈ$@HyGA0`@~>d=(7 w!0-~ m{dA$65ǍFճ󿈴ƍ AL^R>ͼcG4}KX$ "54P$^,WZtRLn7U*crGvRA5gf1̊{H&TS6W 4``D a<Pȭ@ubQD(om!| oۈX By#iUu:H7cMf^\|o|,&`O}H"@nŝMvԬIae9V5a0Xj>p T3,l$#h %*.[&:nV GdFCy<¹8 VW< Vɂl\J1*00Bh6&0&k!Q uBj52PHԊɈ*RQg̚V{J; J!^J02hm_2aeM7`R0(%%^AowV h鱗1V+jg DQZ"n54vTP%s4Ǚ4tM,hm2I ?ӼQ$LBTehFT+gN3uɃX D@Rs@`w4$Pl;`vC`w5l ׇBJIeDe}[pă7{*@* ,`4LЁ=(PLks bBEl ef@Iv48+T Rc\wU,v$H\F0vN+a,HDQ+_@Ln$c&+QQ\Kl*TB h-U &0$3l.̛(D $c9 `LX $\?)3j{/3י$W1T#@/xpn@yDo5ɏWL8j5(lCH1δA;ÐPV7bJ` ҉ܭ^gR{Ԧ[_fzԽ>`6HIց `iu 4}D c(EXb20(9 [&0s#2@@; 5~;΄Rr4.5o;@FEL q Z&Wj5-ӕn@Y/da`!W ^ * v Qȧ-|BЎFbX(> PpaRN["WxsrfMcX/J{Lȵ[Jr* >QަUL2#*38 A{"B_3&Bp%*فS3Z(H; @ `S T +\h  Mnb `u+JyndƪZj `C;[KQC`@qll=_-A)'oK3&Lo/ޱX@ ()Ulno 62m`v U ?1E?ģ<ϬP92U(1'}Ȥ77**ExNaYJ!"ٕ 2q@ sh Ģ5w ۧ4wt>MA8pE/K2 pdݔ@ıvC 4 +")MI2 QӠc]3-HŃ#&YT LIsX C0+ QN<ә`1śQk8n@././@LongLink0000000000000000000000000000016600000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/bellaCoola.jpgqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000037553612273255454032736 0ustar rootrootJFIFHHC"9%""F25)9RHWUQHPN[fo[a|bNPrs|XmC""C%%C^P^=!1AQ"a2q#BR3b$rC4s$!1AQ"a2qB ?P"T*T* L B@@@@@ D@DJȩL &@ *P J&@(@B"P2L` L0"@@@ D @% @@@@@@@@0&@0"@@@@@@@@ L0"(H&T "Ш*4!J L)  L0"@` D@T@ L0"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L0"@ L0"@@@@@@@@@@@ L0"@@@@@@@ L0"@@@@@@ L0"@@@@@@@@@@@@@ L0"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L0"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L0"@@ L0"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L0" L0"@@ e l|wr%m""@@9Rru8gWO3dQz|Qr<ː_^m};"V+өv ɞN܀2鐾g Z?(O4L?n|>u1n,D>y`D3oIFf;wu|o:9FFɑ1ds@J6E}"@@f+gԝJE x96l$_zG~=^_'~8Vrɿʆ"R3@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WzhGaw3nzǗ'M66(Drw`s:e:EQXb\n'iQԶW6X| +vl90/˄M f%~eDAS ,II4 ~< -Lc$"kƳA5u|o-Ki39[YeV y%pYgڻ o2$CَH"j62YTNvXԭR@:#jĎ=_n d&B.H(.j& 5Qu" ?Fgby&ՐׁY5-yy&uÓ3kw-'21kȬ @ZFo`Dpe 5/eu~3>Y}F[1+Nl՗0FxVlХok$͓@nw*k麕9\㤺E D dʘ.A5d%n<޿8LX@ofL[Jf0s x~$"Q2g؁09::s M_<ޙc͙d,>.va_n2[qƘꪠ3ܞ (%Am10u?u=Yqz}f˄PgyVy'V*tǴo V|٫O&qq%) L0"5 GVݵ7e^LoQ+1Њ}6/U3:rNsس뫨0?9q(n,cFTv㝺-|ʦߘ wBvS"j0{T$`~<0<η 'ۻ Ӟ7tN#~eAԡjtJ{, mrZD -#GCe ee&kD&SgfMT]1$j%C`pm}⑳`WVRt1%[,F˗?v I&@@@@@@@@@@@@@@@@@@@BOxE 7syϮOy'{fg°ZQxbr;3H[jc,ٲ:g%WNfAٚT".$#*.aD 0# ѧ0"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`YɁbV,A78G8PV2xUoǐ fEp~'ԜX47;Y6L\D`_# &dZvIabgF&/jD.>wĞx:8,7͌H 2Ӆ`fZRJ;E< flY[l~:[ WNKG8zlWJIJI^s rZȤƲz壻R9M36g{[AVq .B@k DTD* @w"nL \{m n4D mp'j$&3Rǀ.frgëIiGy}ߙbU-1"fƣUKN?19[BgqC6[qPn|uwOe;G2. զsgoqAy%\ 0ԥ<\GqQY:{]I%kXg#ԷI]Y3 z;|1apEQj"gQn@7 C#e;u:15WSc?P}3/qu L *),@NÆS~yoZ@ -Pv:9ָteQ/mN7+7%jٲOEo^@[s3jNc1ڇ1yLnFjQr}"y'PQnK%vMRGo1ܯGAlv4Gε*)>Ӄ2^ nz&UcК&؅W7 75Mi"UIe 9$ M5w77iv L?Dwb3j_=N bdbX%XQiIVźz &:#<#*Xi [s&oQ#Mqrf *nMWR53[6լV4[Q$ وsb ThMVIZKmE^:jZ:wS,9wSd%1SQ< C?X P)QKxvshl{N}:FI,kCQ%?dr״ӗQ^ajADIY5;L|ޞ;9%̎6/o@F;@xl {O$V}agQ"l>&m,I&TEK3*v] %;wǡC!#bզr:JǛGTƷ3gnlXh5Ic# yk+V#j#dʨ& wӷ0"P&@ f4_aȣ劬i^҅ D]"@@@@@T0&@` yd)gs3gwC~Jky(vV:M61Cj94L4)3L㛅HoԺ͘/x0W)aF|MGV^t}8ҽyZrr D8:rQviARILuZC"MF!X E`?3Mlי7u ..Ms1(0%Z&wMœ v2X+o%Nn>&:ώ͟+5r|o7̌[Y^ r^;M5'TkLJEty0HڬIԫyrAhIĢrYx%I:Y8_'2fF ^ɿ:zW)mϸQģ'RH?X};}5tj@{23|a';1u@@@@@@:lBSǫcQR;@x};8Fk0+`Fs3h,Ă/xN&Q*w ;¿HwR@B L` L$(@09ruN?q{ fבvnG:e Sunm2Ҫt-GF#xȾl$U._2+$܌L"#k 6 -1׶H,|DQn,%tc.aXu)X%i7iхJjK"oQrhۗ'S'FoUVqc:O5w ̴Tj 3cM2Wɹyi`&*k@P)Tcg[$+M47`j}ڌۍqk{3ZNiQߜ=<[m=jݤk`uĴmAc|H0 6W%ϛl}vt27%_r)/z|K:'yc5xQڿH3ӨP-O9lG5R# WKnh8-{j+ e, =2MǙ3aCZѾ6#;*%D@i0$|H"Q\3 ^p$lJ(7ف.`C|L+ŜOsi t>Oiε.Jf ~saUV ?}Vc\%ө6df͍'#^oSjE5ijT~%\ Y;NVWPA50|MsŬޞsğqK575]R"'hw~ YIbPb74@&jQ2O\:0QIEmrUns 2Qv*4@ϥHojݨE#;Nz @;'MEyEVu"zo37@fn vnq\ 7e@@7-$n!sűF-"P|:TcZ@rc s;kɦv"h܃dUTkqd5c&@LÿFEיHsujC, $x[=0ːH)֮Pƍk,ӥ`0rLtQcex^g#Yi`| P"M"P]@PF";h,@ZQk}D @yھsL|, vwzW-S@e54=;g>՗ =~vT`N?gs{g/o ߫_+Nd-#Tbw r JT߉'mU0# <v @W@%PKD!aH L !Sd L0"@H[q6aE}Ǎ5ߊ KL>l_Goif˳9#FmNFQ3X΀2i*6IP-c~`fMUƋͫ"ȞK}.,T}EPo@p92ؚn3깦TEIh@رEL1`5k1DQ[˫(3r Ps9Om=||yi< xԅ?k'BƷ^cm:spi 7ǟɏ}sSsǞy`L deBIaV3Up :1!Lb5 $" uw]>?3j(I· {^#Nhʬ``B"E /D2*],Nw -J;B]q,p; ꪊyy1kDfvdՍ"D̋e WQa+|9|t^j]nr!p7?* K $7Z3b{QmEruY=/p=H1&"w#@Ȩ"PA"7 j..#s&̘O "AiPPF҄0"@XT@H&ȩ L\\7p"@@` A,`pP};z|?bhB"w,ĝ _!Q&@ .PxpH 9IC3 *QJ"TD MB$ ȩ % PpBA0p&22Bhd:ҝ]tS}$lwgHfxqr$feZ b`7t]9uivo#FsvHl].^.jtu~8WUdzyr,e?O!<$b%~ftfP0)(L̼T H"`bxYuwLvy%_8?2ZH1֔Uk(M̶ʜnC%g1lj&RDyԕOS5 `p5$-bVÙ>KU/[dQ0 AED+ IuCPyu1JFi1(WSȁ]xYӱ>f8d؃b莬5Xk+6Rh$ #0 op@PsFslI?1!QgS3b!LXjODYJI_ShLik"kDst[ )e紹FQ<,-GK?Kt?Ru%zz rFʺ}ǎp&)kfߙZ`PIckԛğvf9Z^N4VT[oRFTT]L{iRF&`]BO]\Scx]P{*-M5m$bGXhi@%wTD`D ){AcZMX4j@yd8̱!2ı2F=&o֢m,]FOPre^%ss""p r`0!}OD@\£_0Q|Gd~8 @FШa @@ D@T (D((!H  B&p&@@͏ GHk=q\\dۉt9}ӕ(5yfE\uQ;v*~L`VTԚ(rQxWrH*~60S.yW'Q҉-@ AUl}Z(0idjFƧi DiPrE8B\;h"tc-GVQ"ڍNw[cʕuMWR錘%H5T@@r%J@T%#VKpj5GB%Dj80̶fj60]hF OڼΫPL98A>$ D]@A"0Bn`Qn;{@0q^Bc3P` D ZTEKQ*Q$ 4 2鉩4*4MIj5QB@H&@uƥe5gTFRaxW\άw<\X- anB/Rۚ-0 ﴊњE_ K'kK6";B JHv@-S'}TnMB$x\[ ̱*FqFo"|>Us|wuӝ`i}FS龰NU͚QxL*"Tj qQPI;: @?N%#^"lG>lc~&e;0Ǹ9#voRVo:؝ I۷|O߼ŭbs GP>"-N2 sJP f6a+-P0֪j:pl+cV (Nх PX Ds@A(F%Xaf%O!Y ~fTR*:̲+B \C;B"(H! T @( $Hc(&pu L0"@@@@@P.D HL[TWsgo?n}WN [G*JHAje:E,Jb 65@e dM X M1&٪&Lژ\(oŎsu.3]HPwa> *Gok-X&ta*AEر!Wz;@|9j+ 3'-U},fޮHԐy꡴g'c__V1ez*%BW75`8'}:3y"ZvֲvNHhLjqLkT""ÒjQٙ BA@@qGh`<\)q @| ¦`I <&@"(0?I]H L0"*']զsγn>}1eD RՉkb͘fixE A0i-XNRzK}1owk:DmlH#aR.4AT 2ZHi+qRB2Er9ΑBcVG}+bjK6;e(?x_Gԣ>, $L5 BunD fHv?y"vĨŐATǓKnğ]9_Ѿؙ V(β؋%jeU.Ohb+#b{v#E$}$eT@@ThBE9H{Gy w`GhЧhDwT@` D &@@@@L HZzuLǙ۟s뷖Z&wQ27Bp p B&J$Mo(]&@?yUԨG$5eaP<Єq18=lVF3W!}o5#X邊xH 73::Ǥreb6$4[wȸ U ̈́Tbkc҉6>;Fd40 F@ j|q3V5rѺ}INi0T[ xd*XzyJDZȒIdeя1s6jOLAtrNM \mU+-FEoTܑ)ḇ(m#aX'q*,YP~XJfc,MD1$`c򮒫ٌHDn*Uw4fzL.1,X6dUE¤qv @$mA;ʨL{;\  0" oh AN.0&@@@@@@@@@` D.Tbw|ܺhN"@@w$m/x7dh}* XfAj R`+"F~$XoQejKdS@,X#˰$=Ձ1U^m@4w֤GPw%+,tl~fE@aL]Pf˚Ψ31{?15}*}tRf]1 &*ܠp#Dt*{ kXP1L]T`j?}j9Ό$>eBH4-&6L]k`&jUmX_P~Սe@xX{>U6J$xZtI# VsڥQsRHj߉4n-1~\PECBJs6F7fMUl)p'hR !H^BA2( C@= @`A҄B o "nw~8&@@@@@@@@@@@@@@@@@` r~%~%mKr>pªL/YdUԊJ;YBŵAIUO&p \)v ! Bj ;`.ϘbpI?Q5>\bT'ck?i5FL'yQes]>&W5@ͫ#@.hqRmjA|M~X"1XA-ӌN8qOus9R.n"Y0$7Vw_F*3գ@zfhk:MX6vPl@|T@\kh(`X Gx+x G0&G<s BAUMȈ0c*!*I`T#0"@@@ L dȸQɁVV]\(Dq9uuL¦i@E"vxn=m+"+** #$""K M w-b$4bklV&THpIT*˭wهye4wj3jeV>CLEo wC{|B!L ɩ{{ GV, ̀b 57{M"P, E6$=,PIe% Z@)!Yӑ+'z- 8EL\KaF)h "NhTv0b$@^H$%@H L{,B*HM"`DҧR@@@@@@@0"@@@@@@@@@\5s]^pFug^OqJ&U@s gd]s$JBM @0/BÑ5Q 0;B  7u aIdVi+qqj~5g~ZD X8'X0&'.Q7JL  W"j ~IuhF.A@*.mg"%P +2I6LA0hT@n ,D^q¦T !Sp#"0-5@OiYQ7?xW 3byAnNȬyҢTHu3ƹӍǟ3<*>fWWqŕBi5H>'IY8VUQ<QE;{+A؝ǙB(r(֢Gi*z Ժ3|vVd@0S y%F@; @v9@ HP@(H$q p B#lxۙ ޠ h{?J L 0!QK1IjVΜX<{9*Z5Bw T(|H&F2)D 0(FXUn gEcm@{Ac̨s B@4D" Qn<ʍiBgiQl D&h T r+ViHdRPvD^Zb2Hw3}Fj2<ï H5B.\ŋ*;/r bOHjPPyi#DA?ͫUrET*+oJ䈵dOn"&vb Ɓ791@G2'̢A mq% ;J H$o.Gxe q Q2"G L".Nay+xD @4eP&a vx `LЀ0 &@@@@@@@@@T@T SR6reRxo:GڝNW7:H THH'n%B \ "QKnqk7'YԽp'nxBlEK@`Th$̪*\=RT.EGi@H @ҶkĠG(6"k̨w.  ȩ@G0JơP &5+h`Gx(&£Dop"] d^\̚@ʣcO5GHagMKϿE\ODsA_iEaZ(G3Q*5Xh*GUq2鈍A3:vE[) fɔ *;T~%{H H#e{J#@y B` @wDB0x(` v@ M EmoxMGH@=liI]&@ WN,EUGi @@@7|î1 ̄ su8Y-KY2 YtyFLtb85>+S7R bx^?G;޸N*L`\ ay"Hs ii(ʪGrN4ո1/b7x5*&IT  ET$mT[ ġwYh2bQ(`0! 57Ň,;Y~:JV/D'9Չ@ qEPƘjbKT,M@ E L;$Lĺ@ S#`Mw`D $pD)BxT 0m Pvo @Xp@`M ^"o7rtJ#` DkyG@ǐE Vd C0E,9&|Ic>Nt/q.))N<'ɚ+,fU R`TL \TA2@s h2hhH$`M[ H;*v72QWJuQ(6&"vN@jR;1V&H[RDjqFjT.Bm"w@7&ǷxDXQ5e6R(D7U;oa"(EMJ.!`H 5YmFNI\a-F㋩dkMM:鞽ֲ`;"!*sv GyC I0|HT@ pP^Ј0 *7HB#@.$B 0h x! `<^Oc;@w' ޠ +̢Q="@\ 9a'D'пh` D$ '0H19:l5^׉c{0 uibZ90Wsub8r`~n=#u鲰=NNfչwve@KdÏl`?/qu_fV!S"u mq6[;E@Qp*L'Ěb* /j-YUΩd M5(Zfk2Ep@`hd~q-e@Tb՘;M. vKf;]kP*Jnlj o Q"ϙ4@m $vRLE"BTwhAjoP'`( P'hU*]DJ'w2M@@eh͚G7v J)WiϮZӍ1Kv}Z k;gw4Qw.n`Ene9 S 60Ey<P C0 ` H¨y0qpD Oh$qP<"x Ɂ7DABw{iDPHyNNO}Z@` Gxiu05b-Atǥ L L[&KҢ ?|r,rSUBFr~-a3&?IK:~Ia`l1%ο'Tqߞ1Fɽ'\fa&Q["@'[p*MF.dV\ M1aU&v Q"@9$m ЉnHx*.4I!ڠKMvQM,4;pP'4Shi/$P;j̰Ck!5D=jUc@rq ]^$ЛI#BmtYcYKј74jT4 >fEw[s."$o5cA E{B"B@4A;Ʈ{IucͬT]jt/a\.VQ sL0m;B"w$!C <@ )[~! ,@Ї ? &B&APyw AoiAAP- LdZgN1~(]!&kG}ʦ&.Qgxzt2OP]#nѣ續F= U;ڧp?g18:׉ι6I'L6MB*X U7$EeTH~+VTTwN|95KjRvUHoB,LʧlLTQm$,5QGMTŇr*hlc- u&A<5EdQR&N^;ŋ[|I 08<ؚr*h55S' 9BƉހ>`[Pb*veQx%bE$V d | ,oh6:mTMۙo`͇ UjT 8fUocqEK{dv`DF}^Zq5`xϩJƘ rsjf7=F5CJq46h`G{D`"xDyn@{Bm.'q }L)7 G&D=;ԁ( Gy@@$v0$&r.|@`;aQy G0?H}>&]}HV.E\`\"(\ sV@,o 5|u@nms*\ p M:`|Tlj>eGbUa,]W~P i=g☺j~o/LޱugT6NH{!Kgk jɞ^uכ&.y["{NeDFWbAƈEAJbŭy1PjR;$mVDֶ m7nɸW;ȈJ9ˢ\_ $wDUH5ڍ3KXijv}KU bO`}HoJT:\򊋽-Tjm=%XL k$UWۼ :jwJϐwyE|BG9,;H x s-#*Ew3eYǴHLv0|#eY0a Wj(2QJі 'ȘjMdWDQCZ1fބ"@EQö^g&]M[B07|7flD8BXw:k63; 鬢P #{LPU2 <wB $!Q0&&@aKC@ D ` 8<QS ( y9x Oi 8s{@ &s*je@qs (\jDhc+r`\b\`m!B5J7c.0g dss[̩ A;*uG'-H}%؁{ _cCqV,{ΤqgǛ|d~#L^+Qsjkf.:ډ<=BO>zXeɕl̶?ʊˋ(,I 5tܻaVݶuI9.=54Mo^D f `5 ҈ eD@ɪ\SfSA^@ؐ\{]6xcCu4>u1=yOrI:}Q.cOoϬoىry;m:o J"Wq72$>bz>Lr&Q $XquW%opkn!T;_}PPxEJ|s%l]ĥ]HN+#+7tE[ eE0'f"lTyigҵ-{Y\5"W97fi0e$̖ȜMcb{֤dCVgl4ufnʻ A;QoK_!bTW*y0!FhT AB!BhB&  D¢R L<`W JN#n`Iy2" <@|@@ ;jEu`=d #ŕS^=(@7>#8L_D?xv_E@hHud]ЙUU * ^6Ĭ38&*7'c6T/Dms*J.Lu)t6)V>$.a'ɱ9ǵ.vs";TgWĚF*smJ)Lzjm17vPe|< pDDP-cfܒ H _Q LIb;j"ȵncE|TL"n޼ňa" +`Jm]RX6e4X\HRQ,?sF-KC :JPŢ2ǀfuq#x݈ULi5QO "J`@;:5̘ {Ky`<с 3E޲'|YPdZ)QsC~B.  ٪g*i*6/xoZ{AhL͊:iAe\0a}g-NN2T^;cPZr{/iQ#ip'7(8` D)T&U0 &H#m@;(A򉀀Gi@ ;J%d 80%$ zEav527s~J-%C!rb}EpgzX2ulzoR-N 8s3jȺK y9kl52% 77,L@QX߹2U.T"q*I}T <ṋ̌X;d [Yr5 T8>dZ͍Yw*?MfTUTG>3ja.2:pYX{B;nL4U4Q L5HǙ YЅA@}A&@ $ث [kJ(*bω1{^gK\δA'~n&ZT*wI^ (y&l I00$ 73qC#{@x@L}v6/x @`@0`DGE;@FLjA9x_]F.IE먬2{Gn]Lu@c@u"QFUWKNS0M#ٹ;~+*XٕW3bġV́@wa{wMT.' 1Z^&>K%/?Z )w߉}>- @j.]n kL8mC1`}+&q.U+ˉk:K&OM/`u/O;NmlIXQDJ7-fzuZi]Z'[[Cik(~YK ڽ[3v-f]'u1Pɰ#O$=sP}0Yq!GUStVΔz d X?Hիe4M ;^g)M7h?x/_6*viu0[.̡2 P#c&;YQQPH$%9n" rLCmK*d SxsbD̔K6[#EErο!7{>eX:1%@aj4T9 _q1RM@>G~#7;Բ F,E+*"XͻE6%SȒAڈ$jPLX(I q& Q"C`V 6QV3kZ~g+\et}J(./k7]cEB(, m2~=F~*k=^yS!*@DEs[ T";œA`K|IjIӟY+ˬh"„Ha(wޠ"vv=<,x*80"$BH!?~75WN4*IgF)fg,.ϡ'Fv^fś ;fJeĂfحGM#eҠns󸱾 `dd_q zXۋJ cWL"ƳUG?GJUv _̫1uؽFXVo3b~ݢaH9>ǓĨu9V/ƒW;K~zIf/׉u: 1@wo[/hdˡ.cZXX'UvF7]}4矘öTZ 1bJfL5eȠQ$mS6Z4G7 n-jnUWhS3޹|alUldpO2ılQz#-Ŏ@|o1x5)~w7*3&T.մp<@T8[@H')xR$Vw14}'9_K`>'}?nG4W۞Qa*,&f PH8{zE9] A$p,UfI6\x DomW5b{|#'rO?yw%ztJNMXbdћj\RV}3;K]D@~8UA:ΒwgNw*2KMʩ^&<1$ƏHdb_?ޡd {.1:qlRu}G>L6#.#Lx-ոtيqN9TM p ,B377Ț@ **DrUH[?M)|'Z|FTϚ%*xy7JaSJ1 ۍ `Qi5y/:ڧ՟[сj4Xq:K Ķ$q. 9ljgt98]̾&Þ>e]2Sۊŕ ̰ ܨOy1bڅlkL]TvdLT$b.UG0{@1kimh(]Ap3n,8U9r1mjEYml+lJ0:CWyo%we$m˙jU֎"gw)I:پ 6>I ؉0YFߐt\+x[@@v8=GhD{+U\ <~s7V,/I ]U7&3@m @ GY7u C†WD$Z*;}3VPjh1bo7+8J"]T\*Bs$/@9iSIX361>Cl/h~ӜrPG {_]FsbiWLyxj?ȿ_&o~ fǛNm>~zg&5܂/I:DFFbN̥tscJ=}4T<ژ ƀF_rH$z}z]#:c MutL<:SpKVt$RF/PI X\*@@B *2+1eZtlo}CRUAf ̫KJqtƗ)מ?wtw>LNo LGSHt+ݧdm51ηg%C84;^qtrQCN2P/){ߙI]l@ ^cTA@83z EF##ls|#uY>V[U 'U<~sZre o15l@3.!g;e>2L޲X F sFybHԱ@@^ ⿬U*<";EMPjAb:Mo@v7=I],}JH'Y\ꡘqY!w2/&"ɡEq?NW8db1^1k8ToC$RJ8Ur+O=2e{$@nw0Tit[XB+ߘ(dDP0;B HI?=GhU fƢWk֨=XJ]@SSpzEt+=FA%nb&%Į|lj礱dw*ƎM yc2'FCvY#y@*P"A2yޤ\gbr(eTM @VoW ͦ. oSi@6 ژ5*"*H" AEӓK s63RT: *@6Ԟa&Q ܊S3^R2#bIIRjIY7;uZMDK۴| 4cP`݈L-WIY@p'j m YҴ95oЎHC ljrͤ$5Ԑq,+Ho1~j*N+tb\][{"%8α2F'3cn5K:m^g>U:O\:mL6cےr,Ҟ9+r]`tF;M=Δ.sdPHj I 5W'uʃlF ЩbUt+f C/͉lu ;pǸw\rd:sdj^ʼNscTƉ|1U2Hնs\C ]xuGW\odzQ07;XQLyW&2/q{}nt>e![-y\j1PKjF04"fSWzQ O+Wq &״U"jz@Ǝ?-{K~{^!W[UY_;=79d*T-G%҃k5mMmUw% Ykw)e|-yߞ_kD`X *hT!t"%EfQ_Hvާt&0򝸸}Ö*G=mlǙՒIBMȩIq Y@d ^:^2NВ؛>+p%@r:fsmL2vkmsZ#& IܙD1 Vo{DJ"P$A?h`(i=** x'eY=!ItI5|fJI,1#DJbAJ &u:9E@ψ0} t5l6StCWbp&'|j@@[g^Q&fO՗ $cBx*pXRH<-AU;UMbl O<&&PY?UzphGbۦoL$'m.g+%l+aPGiמR{M" ؊?1Tmi>Cet߉9b2X-50`MYjskX%.RqmJ2!YZn ̶ ^ Dw_t?LJ(I׼y@fy~N谅,-?Lb&6%[ LH1Sfߍ:e=F$Bp;LkX·_*P豵YY57: lAv4 0Qtc-U;+_cUlWVh4rQ`δ 8(rF ln>*A[R ;oS8bNv%pp 8+GeR.'Rs]^.fkeyzT̴S(] hV s{|7@4)be6EmftԶPEh՘[X3Sf8혵;M[jPuM Qxj/Jw=dY<Ž&/w&G׌O*Wk;:\,rD'i|9kVA5b`wÏS`or}Gѽh 5g=a֪l5r {2K8< 2w*^9ɚ`=Եv PR.zUWhH`ںm8Aѯϟr>؝3:c#r;OG=V,bC.u^̢<B-nRJ S?yӐ+u1K#;mNӍ˷Ʉ8f, $:ˣh9wB-qwqmɥl1w5rg!Hy21~5ʦCE'Sm`J_cz|QKݫl,h-Tj?զ0ʄ~SLe$rUB"EH5ǕHUn<\֢V 7̫A*ߝK5ɗ a}.9v"ztŘ_kQw(4(BAVRߙwB%ԩڠWk(E痬XZ؇;̽X']'aKOY)l빚bNX%T5ZuoX>Ы3]gOoX '\ڲ|YHU% 8+rM fPCKoc62W%KΒZ# 1_ST5Uʌ@@ * ,*躃 -3;Mʈ;8 w3K#z.t9yߋ =.˔ki9h EZ~[I?!M}$U9}vgO(cTB$Y>>$*A&"a`1ĀǖI2kCu\|E.^O&dsLIɨگK:1N&`H*6 y3SO#+#`C)i]g g"\T+Mױ37TVO *1jFrTVז-E_%TbF"T Nꬋ 8n3͋P.o th3b }*Lc5(aY1&KNo 6fUmfwvQUU$PX% MyJTYj5}@}J#(TU{!5OMqWpw$sHީoI1L1T](ulyy ǟ"Őj]>6ڧ>:~6~VGIޢ~dت67m"*bk5ز c*VjKRsjV6&M`]b6iIT!x&E6= ]k`lMK~#<+V,9N2ݷ]Tؿ%8ZפuۈLGޓctFUT+]la6 t }LI/ weFn,Ax@4r(\EC|}C-lqb6E7w&3خCOKCIuQ S\h4c@ wQVVbR) ;1u1s)W^ǎ ]JQeOi}B1/}DeBA21d,?Ya#4j_"%('Qb*\$UARN3䛊1t}NwڨD=/rض@ U9auo.,~T Mb y6Ķ2c.TxnΗ6\.GEם_- f\E[9z=/Q#ҳ%RWcLhoH?LusvN7V.@=28>qBK^~49$ ( yߚ͌:%iWQHouݭF,G܃Sڕ1 _kk,NP /o_YzU7鄺 XIУlijEɋ6= be#z~g,p[@׏4,@\rc7*4# bw^յ1l_-| vw @lY[iLv`r Lhr`QZ s0^/˵a8\0`;vцEl,ssU\bH,㍪`v`*Xs5\31ekȈWcW'[Yo6Ƞ$_n/T,>9ηt1OcٯotbbɏXmYߊYl'! 6jyrum_]u=ֵF8[Ƙ5j Xj($7T(o㘕85+Qmw'&%uɅmZӧ/z\T,}"%Q3\ue<'v-ձ2*cgWB7QucHqEitLޢL|>?x؆%SN ՔNWqLdW؃tlɍQ}&@ u rj0~:>&RBplM`Wehw7tWkhs(B*C/LX?̂ثz, Bns&>Tliܻ.`i%:+@݁$/{5V|o!\z1 063wݔ*"$m-y=*V$b`MsFEXحE܉AUQ9AeąDf0n*9Q ',ڮɏUUEYeAGӺu!ڴ֏K1x64R=rwAѓQ.qHf%lz%h,6=3]dQGStjQYIaDr۪8K-|UU,\^K:T.OHdWU.Xkh`Χ]U@MREBEB?sm_N:qh > mFWяSdACN@If=:1Ȩ\qBMvU2CD l:Xl%wƠ:fdw51?fɋ;A 9ܑGRaPU|i&MT7ޏ37اFmILNE*`iQd(Um]q=>JOz%iWX?!I;KGC-Zܨݍ5@9_W,Q+(i/.b̨InAS!myo~N*3[bx/GNTc.0Y[WyƊ,OO5˼x>-J:WfJ:'=xǓ5afugDkFL(HLZ(mѫuL`I*˩1R] _ܲ#msUQmñ(vӎp7?yYJy_Gd6~$dB5=6<1k*Nմ9AnL5e]%ǜ&l\ AwyQ 51#4ʂŰ1V$XyAҦFv$Z̝`.@KJ H`@753wٶ$ψ]/ Q'a u(MZsήS62h*9|Dy#KN. bf?Ќdk3W-3-85=*Ny|b2ϕrPks%ȱdAKR=yuBgL26 ~~fl91"Q';1h3nq.4=&RH-sr`Bwvz5$q/]ױir."MVAR cXƤFԨ ``Kߑ3NY\GE1yhGb{\*XȳƪPf*+x_2#-1+~LH}vm od~{@bm;J.KUvʉQx.,ĊE ;Lj3vȢMܸL$>6ȭQBIM1 ,zتġqot%IV@ɗƲsjnߖeu hj]VCGLi.*"K ܛ yT.[vP5EPI`\hK֗BfQqt+?1­jo#BJ =zU KkjFzRF&IUĔ'سM_`a1j`/ȝ9e|atQ'ezq ֍8ƱvjRα? հVn~z9zS髀ԇnZHFb$fmT$b6fvAL=ĶĨjWKP Vr2̒** !GB*1ejڀVa;_q'+,ftQ[Q׍GŘ-ljU>Uv_R{+H o|̉M*{LYNsQ:ګ^ۛFy1z(P`Au\']J1ɀsۼDNzMmKǕ. `M4[qEZQӈh@bGo1?^7(aErNv,6UkW2ʘXem(P"Ȍ߬('muZɑNj]lǗP:T Ɓ ?qU5V 5&TyʅWc:[6mf:n̋sS|m)B=iv#)D0 6$y#̂en%HIGVu1u!qt.n"۽m{J%H$P"2*.3Ɂ򋶢+i"(wEjw"Q В="5 EQ #=PTف 5gk}mCQ@AicZbbI;gG13_%5h'q1Ɓ*mlh):d_j+!+PpP͙& 2n|Lh@ cW=Dܛ2Y8rb hJQP ǘj1;QX1͔!jVDw#{@Oa3!jsTAoc H)|IUƘh>fqujrޕ<5qt]M;f'?h=!5ecW&hXR. X#l({F{Es'%Gd锩l*pz hVl y+-P摘R`m@cqJgY1fSRH:-[~)UwaIF2p }Ȼ|%>7Ԛ2̓ +,K"Y&5ͥ uhC>G@>Epl9-Y'fz^E֦^#UF";_'[bz̃&GiU*vp%tîv 02~!wjؕ}PIeZ{RL'ψ ٶc޾&&J'ooz8%ǫd,fE@};|`ΕN<f0_;9qm&X+hc&mF$bsV oL(T!IO3sW>9~j[a3v BOk7WR15ǙT1e%FM*v?LyKr:sf jO|ڪp7hUz$L^jGܒ eZ'ǟF]fbQ;jUT(v*lot]JRwBE-T[Iim}AXe 7{/aZbd $W(K j~>$ZR;AL#boK}q7ɒ@^xіd,i_/4sEt],mTpmՃ\Z *{~sW _ӵ~_ch܏12H#pbZ2\vmH6wh1͉aQ2sn~jYW|!+nղH ,kT9RX›̌ݛP`ezk }U Qc.vmݙPIME/1{=]' HR35`h $(ɠט"[uJoH2eVa[ޞ{̭M^&M*WؙVJ9 ALPh[Q[{q?:Cf.AcL}m'=f:| ƀ`ȮI$i*؝b)Cӵ<X(D9JN6Mjv'!"顾JR p Fr.Y:wS7bUKlCkbVQ4ʺzrrJ9QFU2ۂC1">19h]B͉œ0c 8Uhj-!A]r)̌es}Flw*^y?2Z P>S% gVo_4T* <h.muaH'.`-?q*Mf{5\л_ ;FȠK9ʵQ$r1#tǙ-$X$ k bb>6R76e-3x 7']$.KlKƚ70fxtxS:!E9C*`y\PѲ|o.*f:@ȖFZx)ѭXyN\^y-${# ą CcrٱRCl|Lحr=Ib5VD)@(qǴlq&jNB_iuX3`;TC2uGc;"8xJR{b _&h?ER%GAei:^ B'̶J&#EREMѓءlNAkAZ"S͚Iݯ\ ӥ犜Lot%+U1sFՈcDZ&OSq$IPtpD>,`.k`r="K46Wkԙ;~nMDT݉ʁb(K q}2N1芗ޒ ,O2HHKe֠cKI}L7;&o$^o"G V4+Ƥl,{%'V_#`A ج;ΤT bmY1csR#.̦ >*ʂn{܂B}Mv3D><@Vc%A&dscr90/B[ 7K{w@!V bA2 7F@w9ITcej&4c U#{7pr;he,Y6.QPB.'UjgWccomh5 ͏Tw"\AqJ>SМN`ƕnO%a;kP5kY;Rnk傩C#6Jvjgi"AdV`/j qRuC꠬hP}:N5{?ylV56F*{ }7DMb^%&6[Ӄ-EE.B[^IA0JЛtۭPɱ̂\htbQ!b ^@U4s.[HZ3r nx#,!3?)gBUݲ*K}}|rrO5U.#A;*{5g[^V_9~˯#`R-16Q@i5OgC>f*t_W1Q|zsQ93dt/ӜM]]t~bًejQuuJpU>ӫ" zRQ$Qt6͞;&=YWm%+ԢCfVyYP1#(\T@[ ?rqjAjlX?/6h%kr7gp0k@tǡ1Po|LFP NEIF 4{lxz :8鐧w?֢R;ssR]_':̈Y1&jQsM"V [JAS+=qqz0əΐI<^RҠ&4F  8Z{es(UI}f1$ cEE-`tLkrL ]1up3kwo}Q85R Ɉg@m_Z1|@$jdbjP9lu1&n.rzI'lEj5^Kc^ɓ}$j_?73 If  s@ű ά04ír )_&N vM#aeQ%j=L]qM4vMc`<Xn="R~՞\G&OONn\G;vF=ƹ2FH2 An7C:hsUEZ}ZOlM;rS;_yL_4۝&s*hK6c&EQ. kAF 6,qDq>6m{yQ(B%ofWvͣC%lm*T̜&뻰ݷT;{ y* 4O6>lDj/҅7V͢ѱ`xq$2cSOr\;מ^|N+tjqs`p714V>&,r cK%Z ihc۸1\zeCi4]w֘ct?fԁ I}'MQ E@}0qwfX*r(&ƣ*'\lU(n"@1PQܱ7_?xɛ[JLfjPQu h a|cLU my5V\W"()HF5rC GU°:Q\浵x@Ċz48A0'bNdEV W$Ѳi26~|LZ2 8 c9dkaKShP#LdWitbwf(s#Wʹ^޿w_Pno9^$uKUfcb"uZ8}oV H&U, eh\1(EsbK,꣗Ǒ0  tg^q1| qZVPE"f5jdR G&T8 zNr2[PyӑMQ'GHcM%dMo2hgt7*8q,2(\ߙUr5GbYDeE! r·t 3@K1 sF4fU& [ -Wq]..-P_` p#q /gU\fn"k, E}\˔QH+!!Aj,[QPydݨ|K1 YXFBFBIB 0c D\"orL ǤސIeuLo-X6GjCFS2\V"d8Fڦs'9l1$trFpT1#7. õwĸ10\ZZ|eU=Kk:&"qq915uhӺ'y0/:Uy9E9q$k~_j)-8+ZpGyg]#e*/ kנl7#3: rinhKW"PǦ>Oq\$%2VWP"xO Vm۷.,P "d?~RHo7;qtbAeؾ_hc5Jkr"Vx(D,YOsW1h@ߺ^>2u(=Auc˸`O8cZ}7(t@c3[ػz2j2l8cR1fxp\<1+tlP&/+|]BV4ŰQu1u :HwU1ٳڦ&ʛv3|`Jj [{.r.x#jMҸ>Uǐ[ 35鵡& & :%)wJnɷ3$;Dlb.R1)^{n$ʬ2u("#b3[wc[RIf=2H%ff8[A bxFئw!K sK|w9i);rMQ'_(=2R@< !Tp{iFP&(P#=Mz@"W3V*H,ƽ/AXv7̒߸%2{\Idh(ٻb}3d\`+0PʠPK`]*=C5e@qr6B _n%DJ.% oll~yVMskE_sdŒ5yԟMTnƨ5 G%QW(,sH;MGGL Py+@)ωWPZg. q)A˚9d h]Xަa+ر m.\eY9vcF3.@t\V,(ɏ}Fװ$+5оY$jq F/C|xA3zAZ91X`;H)d`q]DjT7wҸnXܲx<_IDWW¶ ]J죊^T̋Ǐ c.q]X,IOiS'q. SIU%"}PARf&1DB չa'/YH < h̄I,&¨w?(m),ڨ| \+)Rte}@rvdW GSU6L 70W!ˍi ,,,G;IQjQ,uP,F[cr ,3%Fi+Ԃ-aPd`-,%i#j5uXjXJYΎl%IEzs=EXl&bXXlE BL`Z$r!Tl9$( {[Tʾ?\8eW>TG=*(s@XdWkrD <Ԇ*Ar Do҆,{˱1Q@/ŽZ3aF*[6MQ>cEeO&"=tFTV:b/bVP*`o=U#~\yICc~*|Ķ!@Q0p~.Q/-*@" &Ѷ<b=0~7<ߓ{t#1!Ldqگhu#z4U3HdEg97'Tg<8'*YvQ+E5s87U,EprzznAbP2V5 bqݸ4cbe[vGsa QkU OrS|LUC3^At6(bX:(Em\4s Mn>b%sЫr(U"RQGe]HD`Y ƒcn\t.1_8!Ǩ)xvt3"eܯalP $q{ğ]>o"n Ne0p6=~A`-I@ce64Zb%H*CTbdT!6J=]6Uėg:#/}P!WXu23Ρ0ۿ>fV+zG5-ߋ#j*EFPX3PA*s$cZ}<| 'VKvpV1!5)'kFˍ\.9eձ֪@F%6ͫlz'$ՌcMV0 .[% X$&PŬu2r@\rVjAMei6u lVY=2,F̖\f]oD9L}BcȇH n99]X٭ăM$goKZU͌,v#s;n% eNsČX8d?ݗ&Ző&:FE>FݷrF;(x|y4m$ɃT)&v7:Q.Nv]7]Ե :hmO[l bK\5Q`\j;ĈdkLYYu(6Y(MKg`~qms HIa-1 yAly2-i{Ruy1j:pGL}3 &Ęj5Q>b92{q#Ljː Xe#j|Ă0[!rYQT)#{=ѧKyL{NBg*m$N2 L)&U!O?Q6?ȶ`1e 4 "K+Yx 邠b7gxѳD@RoKDn+۰dߢ.=@mŘa&b[Q |(krU:|YSHVFT9*t1rY^,Lh2!(L G`aytd(_;>p(5#ICm%[PMڀ]專GRɊA ($*1)aHx4b}ː, &rP$ĺ YM.9E?my򀃁mEt?$Ď%SmV~+ lR_ncbj |bA,(Hԣes,9c"=z`.-yB/hS'Iv ZXܞЪ Z~sGE&E(v\vʄG1~>6^ eV,MTODs5TUCW`*7uQ~ҝ'9#/Xt-*ۏq1&+kBw>ԧsPrjQȮƠBVQ$2j:m"Q.7Or#x?yV=K36+~$Jz/KĤ7wVO#O/=2@˩nU=r)S,(07mCRm&mFB QƺY"i)ub@cD2T SI R{ԞJI,Jrf:+~2+J]* Q>u+/3g' Oiwk°`Om7**2*b>$&\Ur$R'`\d;,rF:h*NUF@ؙwҤ9]$1Ӫ*Ѐb ncZЧEKEɕ]c5lيeՓT6 6,_%vp%ـ:NnD>F2ځͨ:yBV']|NwSJ`X:ɱYj]>w/(itLDc:چs-R, [h*q=2u]g&H۴̈a'X o|~S``w*&E `Iq]l@;cJOn#~^&4u4F b%VFl6kQ@{,5+ܕV n%52+9ED@:w`w?@+Cbܒw,ys=5װt{/Mlҭa'N6 %U(ߧT:0;j>y$X#֐H >cFN>Fbg$o_m]%c!-ˑI,}K7Fzsp[zf*z [Ex\KKc5riBĮQa{ģR̓KeesĦɤq }aaM&z+o S@JAgӫ#u+8i=ͷ5\/ړq%,Y'm=ylLEu{ԣ(?KP'aȎ CvQ~+<>!;xL@$*3&3Zo-abBdMIDɨeqkE!W%&)L;"|5r;\aU`\Cn@N(y)#R4oet'6̋dPbvE̊8_!b#s]bQbVR4 ̰rwZPNc̴wؚc"sPƉ_H#TP @#{_-Sah9MF9[z/}TGŜm RyQk4 ^'DZ) 2Xcb4DĪ )4گ~P{2 J6k$կnuU|"j wBΣbsP/v-Q 咈Oje+Ho0 $4"30>{1}ȳmd݅ȁpaX~(ˏ >/M\t}4V5#*8gqUΨ\ Ų۹%̰' P @?ĬK3jUp Y2U Gcgq$4L /=;)odu( x6 oIjZ pwY`k3- {".WN6;5"9e'dc4;}y#6&'T@dr:]?cl@]6#ta{YM{,u'`o;'\{8kO,MI͌]ݫ,CXb@eT) {eVa}½˂P#i/`CRIc\qSVh̡ XY+L`/`n8%T#Q,-`ygȨ!F9*j*) HE"ES3;W9h,Ek4` ⏎r (QۃLˍ$WiǮ죜H0;R-%Ե$ ~ u-A> {2E$&K32@,<]rcRE߰ ?8=w,MhKbʬ6c&M%Y!X*@;͹quPN'VK ?YxIO|eÔUj]02u$TstZqbOb?EI hIqOCPv]6| ǣ5 S!Y*<̪>l6i?.Nhim\#5} lX$Kz|g 9 ĤsSPU=E AVgwWzW2`3lWs;H9@XjPw32DQ/[ȬSƣ9RjKSP~Fg8uCjˋ}W5U*3.66wɋ!sV::|r-7N=`Wu+,]0֡BI J[5LoDcw o9#>cX('G*t:Q6N"&lHNt46ehQ7eHEQ6*"_$sfqbVaӞ31okY{MȕNQ.UTwvt+*ȱ9~O_T7Pr*YTDqV8SR Z)-$/sɪ,|р+Aǐtx[ OYM&\Htq>+)ԇ8#m` @kKWu~#i| Vnhe{D(M d66X1x,, (۰D3N@(f1.e_mZi}ybq8q̓SP9Ɍ-{Lۻz|d!?iۮl^nԹhu&&{<#ґf'Rg$ǑqVΚ9κ\j|q2ĕbIVڣgտ tԌ9oU=ȑ`Z @,6ҡ}72@k~=AApSs+FK*99 oT[c;EF@snA FKU-ZIȩ*;@$d$-SA%pp/I@{T`s(=:Wj53,5'=ƣ|94 ܙ˥X$ge,o@L*4uo6FojY/Q"5\xG8p)A_Ҩ퐡il9+)),X>6/mhR [F˔5?5HLMP7bͤE<ܸVJ=2 D<"7NۖZ楂 4%M sw5X/ "w+$̱ pyO*_'67K=fC)XFߙQՒ@p=lmOw< 4A Q26gL{TҍH #eP"O`,`ܔMvУƥT[|Dt&cl;`q>Ъ e* *ŕH0$GvcEFcFzq2 +yP H7oUwtϧR Ǣ߄8o1kQK!z'+ZԿ2BѦ?O`2)d?A ?F._QT(0cv PGzN}\O |9JP* &!tCë ڿ`n|?Nڻ~p QJc7Lr*>(@rf$1@j2걨 VbjG]?Ҡ4* DtNO]Һ_SI\?pzJJ)B@kQ-lc<TW&On>dAIfpf۽ihdeCɖ4iUr:6STj[4aQ,c d >тbɮ:^LP(Jɒ8:q@\O2uJZgR~62uI-M[q<#2!0*wNz1ɥ2`=w2FC[(K.PjU'Iac|XL4(I>Uwppu"^OrLc-(GNK^wrӅfǙdPts)m%Z,cĺ@dno~"]#X|FMdH k>ELT1#j47H#;j,_Ɇ-¬mրmιݔ;|u͌2,*KRM{%Ѯ ;,8TsIFa?GV>dZrTFF ʼn@ 4{.+<^Q;"_m G,X 'J|L٪.LHQmMyaT&#&rYN|RcB[Ïsԟ Ɍ`@={_icV\/;9T#3tͪȪ;ΥtDݓyV`A &0 ߓbCCRvH~ ƻw9 ܑS`,lƉEJ6O`  %&jr WQC{F(v {ߙ^'E;idrG?Ub@TQ@[K@CiΫ.\n'y4oyh L P>\Vc,E}!X0c%V*dŤc xV.DURBXS<%-lAoyІʸ-C!|fLGV$URH߈au0j:9g@X)_\E,Y"ۋ" _adY~˿da*'*aTi_#~&0V6bTk"齶 ȬrdBB=p\>]"77Hћ+#ۥl]n:rũ`9\U[6ffd2+Y4HE@5L d B/&Z 1~&"qY s| 3 'DC{@L* R:4OB#Țs5:& es˔d veTDΪ}ƈ99f5m}@d&4%}F.E'rUx+ !v-jQjWq,N]c3 {RR=n=0_zG2!PK  &Pq#@9\F J!Έ0aB& Vɸ&wFGWZ ʋl}m&͌[jEV;(^$Ւw alj+d qtlZS5MM"Mj;^7c7Ioye+cڱ4wewMFQjRVszgw܁.JۧͥqƸnnq~R+!Ĺ*NMUuh[kc~߈.@ Ӛ^OjlŐpO1*~ѐ*fCqFԫ{{).^0's۝_SuO!ʡsd`+_1U&fӬi꺖TC['H='?S_k5+?\F8 ǀ+Im3Ǩڃ#VoT4p`{B/պaw1VXXu[C5U* DE{®RdoEIA?_y,if.n(M( WU_y Eu`QY UFl:Άn: * }[&H4CuNYtn%ʹq+QXbAoO7ߝ\\!@>.&<Θcqc0n@ce M $r.kqTQKƇoJ rfp>:ݼNPn #1Q}PQ'eMo+94j$5d!Ąf#L,zz`Zo>r`**jԚҰ#B#)7<|I*m[\C%rLHk4BUU{J \WgmvP7\.IڼIѠ iR抋WOӳ)ɮcG.?٫C:Ԇ%Nǀdp\p"` ibpa@[Hz  CfQbIeȄ`W`5UȪ;ol`f2 G{o! ğrKzɓ&ƀqcJ~t%`5Y^0t:N@w Kz66BǟMr92l=ڪTaڤP˽VP,Yq%?yx7Kz6d=N] HPO$O?\uc!$% x(Y c6QٻJsȸx3RD#=9l eWɤi(Gz$p5B٫6flY5jPd32Q`uj^y~|,İF d] ߛ" dǝdz?y)-Ł\:`GMMM| rb;3`9n*6E8>(s}Oh‡#,T.m9۷b\duogldSު; pUhwfn1}`X5n.lbm#LٱA^lNyZ˧tU+W^؀Xnjx'js.8zCFÍX0a_u_\De|9*#Vtu(^&Fb `>&'^>6ɏi M5/˘dP2[ƞg͇Hn';HRNeܒ*-RֽxmY8%is9 ߑ$1tsMK7Y/E&5ƬTrhM^TvE)f۟}Yu\nl@s0tʎ\/&FU2I?B=6t'mU`~vX_ʯ1lNŏdVu]83buω:vj׺8LfOۧ\zLKu2e2eƃ% ϮuqP}L idŐn6.Oڴ}N" d60 J]nsS!'/3<Ǘ΃*S5UV\cFW:rOY5ful+ՑH? kilXRfg8͘sV Af Uya$u,'[Fla-bƥ'󸪳YV8+.'j;,Gi\_#DB 'US?yweޏ5̃vя}So3ck< iQV[ ߞ9F|d%u^]&2P {RJDZ5/L. P# %u6~вT30vaަ0M0Ƿ b:m %PYoVFմlXcfǰ9Xzay9ȡ JCi (Qmy keK/)dw%jTcm1' ;R Wfڨ#dp~5˃fU Oq1b2L{BN0 >$vv:F(v] +xDb9&2X>;vUDwem;X665 ڊQo Uw5\PuS\(hBNc Hj G'2kbW wϙ0Yw֜(zE\jN5DbwCs*IE5c͕j8!v!e; %f~d4d#y1 t)&f.mCio1eFG"XM_]RUh1 i:AE1\8B[;K Or fb1c/jZ:* b?յS8ڭb +ŹHDƃV6˜dol4WoRj(;ߵM 퀩t_rG%MW)諫#|x0ȶ@J_Κz_fvCuLOm"ثrT YJ'8YUocQ ב&1\:oC!N> 9(FncTĒSEÁ1 ju).,Mzx_0$aE9ح;q(OWBarH;tǡuaEI|`6M KkMJm xo/RKQ BWΑ$D `eEg,5A޻,j9] kq%526̖+bHj6{̋z{#gk [Ib- }kiy)6<ȗA>j[R\QQK)succ)#V,wbƍʱA7n0bcǸ cF(u6;2 ";&j IPŪNq؋~rm%0`suՒDv*W+R{@ ӜwP0iם>nk eEډeeU`P Fo]tL麌x0ȁ siSIzȤ &yY6ՈP9-^"+456;FY6r5Y,ďnBŃ5sRmGȚW212Uxc}* \(h.圌4C7gk6rTUKѶ-.AҜi`Ⱥg}20,o2硝CN=6b"hWz3JL T>$tb-HS?͂Y]l-U8.m`M@ri≯>vs3QSiyp]zѿVޫh``P&n.kڙ%5/~yF (5ǐj 5?`,#Py'XJTE&`>Lsi(@?H380-XT+ih: , X C",v}vE$W&Q%UA"x&eDE#Dj]hE#v Uh$:ȣ H6htL% XѷNٛDƥԖ/lNQjxU7?U1c9APglv5.C* b9"fZ61u;{ƌ,~mL|G6ơ3ܠ_cC>+6UN>6k\aAw9IF}C)#(ȸʠc2;H6(70ycG=F;̴ !L>هe֩NK*mK,wK[oEcё>:O$|IV>׳sx\.WJwi(6sɣIFyizEZԊ;FzU%P;iU*J7.Y ?1zֵ=_9*T f>w0VXV:LF*׎\D!'v _.=j?c[J=GyUuh%ZЧMyVwTUCi۰3^W?UbiQj=Tr1SRi$M`P YS_UB8|vҘVDv.wV zи"*t﷚WTv:ߎ\ō=`CMo$44(7| r~~Ӽ} W+ UL)id%scRrh%W1Y'z5Tvގw,EeTu,5n٣~B?xǷg/4r tw<L^n@7u#_K\ʘyAUiI;ƌ3\b}&5tcI3dȣHCCEcȫ?i%Q 5:@PĝyMs1].Yzq+8l&3lbc˗AQe7>\OZ;XE1p[otɯX* 2nmIF/Tl 2^u9 S3{F`%TZnd,Ħ\H /IcN,@һ%W9]Hfn= 9d7LĀ:OyD&^Z|ۋ|igdwA.{=ztץzń32vIO;|G[1m\eI^=X+cN<) ߽'~~+\~͌w O_TEGgN:Rt(m#ngA[m ͋*8r75hVvM)55fCCA E݁XkY-ܨ1B IbĈ";o >2`q u~%[k&"bvQnXύWatx1FTkENX\.K9e<FjZH5!io>f9};ȗr'2 -vBe8WR 3,˃"ŹeS5b`5=H+R䭀YtNPWwA82wszT-@ Wk*g$6BOSۖ hoo`b;2*k/ {P;Ipsh\`( {%_h>"w, ѮdG̢h`(|Q`(0&0$%d n qU4@hMv[4z=/[~__3 /Gr.Vq=c~޽I6ڍ17QuuȾ;oAAV$jS 1 }P`F | uhFBEaoQZayL =B_}[GkTAMr66v̶86^b!MJ'(pi?2z)z+%/s&/U/sq5H, 7FGq[-1-u=6Alz^#$-vKRZ, ]!(suu<__ 625dUqPvdJ%#}㞽=@IW~D㶱& Bļ:]yT:' 5n;Kϯ|χ&B֫L^&\ӿYɔoQ&\[btYݏ/ĺ~?T*O;QQ~ cBzMC}cK~Y-FҀ^W&PWsg^zlR mӫN A5%\zKU&q癛Q0ueBĆyG7W>6g]%Hs \͊_A;*$y<.p?©r@?z`X(G}E8J, !Zl@a܃dgA{o @G!g:j7&c 5HZ-/16[Hڷ?IU(h{Qb$9* F(ˤ|B42(_~=@$f"ҋ~IP:zǧ`O rv Gwbxі0VJl8o{ęnQ?g¡OrhHLCFoc;dT {_>QbxՍcA$7FCfڡ\gEcI#z|Tc+bc{]/\:E\*$;&Օø&*^q1TzXY$nGp&m4!H2T0؊70Uuj+{ he4[Ƥ*v #X;$)/ 39Ɍc rɱnj{>}Fl1)@jeIf鬬A*}_Iݸ Mo;z| Ey˩g-œLleV:YysKYˆJU, ljPV '?y-Fo2|1> o/VLmZlHv5c=mTdb(E6HI&WODS!C3j!N>~&zꝙμe=:k5%+ElY2rP՝g/?y \H;≁RjBG)SP;os+F"ʶQ#P,RKNY1SH$M5Iz*hop;[0(P o;m.I hzoV"[RRJks..`(g yWlD/`sV4@Erc;( $မ a*H!MJ.E|vqkՏ#2n34uPq?pUNSԸáp3 |_3uX"cl&yK1UNV}utt݅do_yi:& w7`0TI_AX^imKuٕqUԧiS'W8[CɐT"?;8ˎl9_Oԩ(ljf:d:\Ylvo3Vn,tf/i3s~d2@ݮLqnHFX_A.J+,d^J /]`qRءt7zN{_1YDL(Uh$q~/IҼxs(ߤ P6jE@P;6G&}Aj6QaLWDɤRDf*I Wnd1uCWVO%Kۉ {Op&5h5{^ݤ+A0Ԡ! 5`vn* Jw;.ecuUj6.^H %X:1$ӐcaLv dK9 UV* @Y'Sj|pv.Ml{UWpF 4Z"ԝ n<XTP^cqh `Y ;iHC_LU%o܂Gf)J-sL " ^&0T;%{@o{zN[h+pܟz+3AʺQNbN.fC/hoqָrS~4c _t ge5ԉ\ emkzr}Uco A#~wI˒͸Q(CwK̨!{1vɏ"?1uK$S3eQC?9J7e@ܶ !^x}Ud1|I%yC!bqgy6#W kʋ$5^Q|\%ܻ7\3} pO 7"f{2.lC\Yy>RQr i'{^% )ɋ';\MUQGj&y/n0t1Zm*-cm!#N"TWnTĕύz ΐJ2Vxl>%s*'!;b7W&L,}Q_H53r]Lyr#>1vy?"%ViFNh9qf-٥@":FJN0У Ķ\~Rsn vpwX:1 e]Q_36Aڙ< ck2VgmXH<|jڋNTmYy_1:fV"5Qc37j۩Cʠ,ԵۋS3&e\!6߉,[<Χ0e¾H33VVfe,ZLߤvt fF hbcĽN`T{ڧkFET<ΜIq?bRDW'qu:oaҏL0ԌQW}{ye4EܛvVEX#<8Ȉu ͊,8hNZR _iQO5 ·="QM ZÝ5)= 1Gk`<·\dq&_gbkWN7_uBjRMvFRA AY̢w!0-j@ۏQ v$( |@ l|@f*N繅]PI0f[h"Zm {k {K {L 7Ӣœ\+P髱DFQY[n3,;~*Rv;ʪ?68{,Љ`{ A[;o~aVa67#~M fm;?'jp`+@Bmw0 a&7J3$=?n9FP}Hz1svD; m,gA=[K =:t\FPY/Or!נRM1:=Iuj(Ϩu"j#Xf{ҺM\|8inAa=%OaJ7Nj4 Bq8b?)P_7և 6$I,  ²?y4E3$cjaF@cm(<@łT!@{`T1K1*/xXQlj' euYΤl~&;u͎30tLQ9emjs=6/OUw}㕘W>% -GK=# X[jRM&,{1&jb}Up6<ܪŏ0.I`6QUGjhDBufN8źL?u "1Hd=efihs) N6MdKop;NVzQ!֐Εa8#!nj^2 Ę1Ҡث\T7*.v7eSucd* h{}/ 1y^V-` {o61̓ 6-c@acuRQwBB>#AGQl  p5 e,#..fGb n;Z-辥W.M_1yc ռ IM@ ܉I(~O-AQ(Q=(4@qĢ~E,J+ v߈5qƖ bQ\qg9%e8䍼31RYQ;Ϡ#[I~!Ӆ8:ap9wGClO"3;n2 %mxenq_P1d\x۝e*~־c(H /HL 2r ,6V[23Kՠ(ſJ\1ś8O#ьG}U~G}ye_$/ -Lw#Pw*v:NpLoq3g 2 Mob˛u¤ @f'LJϑ</t%D|g:WgMw=[UnHr9ؾ昞~guR] p$PM6<:nł1,r2)Zw3:>#S|M˫dFȌN|~ɓ U{N檸Y+f1zޝAYs zlmkĸc%2kїBGɉqaVN=/IaLb}#2tC`Ti̓i1cW@;ҘEpdo?(7lI|Wɯ A&Oc0*WӴXX,vK'ji0LTEv*,RAC$Ɲ@_CH;q3WMX&ku֣GŌ#?K~-à`{325e/a5Z'R]l4Ghx܍1AڄXcƚr|mt+d voz:|YUK1vIXQYbBI3>N jkLW\r)Ѐ{BsUG|nB0qSYeEI,6 rcRŲe[&R ?ORP>$\_N+l0ֹnr[z|20ebhQbub`<ԾQq@P&ˣOODU1]1DRw_,u2J2&c~?r`A I&ךL2Ē /0TDfrP܂eF.&%#bl|k'HP+ܒ@ZUY6?vđ[hպ2I?9`McMd\[<ɠpM96ĸo<e@޷6߼K{bĵPp#& njҾ;Khuc{A?") )nyt`-FWf>6G8:iGycƬBnlf|,}(ŝ,t|x3rX(V5 v4qu 7 IePTMuiA[IF+(MZ<޷ǜXj5(ĊJ*Dj' 7TW@D "1`h&"]1N@Y0B v&5 |Gci34,:VypoO"Q(QIt\0 >?09 n62}S=7KeetWk0@=k*~P++ݝw!dp%7ܹ5'}M_N?Xﻊٕ?KաS/1p6'4#0!A"B;@04HH3@D륰Oȩ4Pu80.q$+o;Y_:0<ɆNmU ~ Ц \`hBn1gIL!?k^K_S'\,Q5w_pv&fؽ+dƬYh4_'RRhǝçrb5peE؀{ȍ !$'?p43FV%ϋʃ=$v>j^z H ȓvmB Ԯޛ50G$]Ӳ+Mٚ88ȴ"1.V|iR j⹩l&l[2=,|H6ɘʉY1.^a[9:#N´ 6 WeIhhOz[ԣ` ZMV}l5}Ƕ+-G.0!Y!5.tυL꠼e2hD~SI5ˏɗ) -NLn1b?}@!㍮gQrgjD'F~T Ʉ$ ٩]jN3"ߙo\gq. I&K\Tr&î|\j {7v.G*c]199,4,kH󙑱`#v=ȮJ"h: b{S_Ӥ99qe{l 5K+QNh&bm^fdSZ5sY˓ba]:hv }}b \do.> ?}u,nA u8垓tBm\,4ez|; Qg}Y1ϓ*cTQӤNj'. UDUrn$ŅRJR7E@8k+PFNcNtQ!Aa[}؍N3$jҲl`*3Sָ "`n5͑iOԗ'ȄJ6v$ jk@q@i60/k;&AU `-ItL>뫱Jc T3Z8/Dݿ g`\v3 1,iۨ{evڸeFXCek rfmmݗUYM%%pڊjk%f}d]23!YMfbN6|ˍH,v?=ӛOMRJV5T 4.WċbN#3Us6-C.1k |WJ[sF2d/cD#UQɦ*2; ddU'ytTF  5P~VS8( ɒrk!cdɷ.k!ODbD{DD#~{Pzah>]0DSw?Qb,qwI `B7κO1t}Z+סv=OS̉+Hk=#eȀj~fTJm]خysI5MiM+(5q1JBk<6(,]U9\k~uhW݀/c~jLSc z띅g9S&D]#M6;/Nb ('۴ۦwG /BFk''HpȪj-S?]y$He!S p1ԃ76Ǩt Cs3zωk|:6m3͸9d J(5=OCn!č( %@Ǐ36mH>'uEf/P4 4>'[ 6lZJ@Fh. 6hcl•BͶԭr&&}ׂqʪ9=VX>)\&1ntD̊n6O纫fȅYrn:3f'_sڔPw\mhr1bȮ$/E@V=uz[ (b۴kO]7UI.nzqzp˔]yZ1yH:گ'P ‹%gī]G9uU43uj3zt $H@/:zTd qUNBiQ5~r4x={gulϻQ$jfQ ]I;dŏRقNܵ`FΨt~;Z9:vaKb:£11;]YŏH&ŀ|ubNSk;v N.2nHޫQ@ëQ~&֥sL9Va7y XP ?Q\|غwlLt?o+"菅i cɖIי^Fc|j$HptG M-ns9t>$lzц hgU,7Ce"i_||>.X簭~\ SP1nY˲s=oT06Ew>&'1bGQÔh+R'yվqǠP;*tIVa +P8Y#@tI#nȔI*ZESA(tĎ 1u+#&F:ISNFS`5dAqlHڮ][!pځQdn;HcdcĬ=9Ӝz*s;UiW+5 ֓pڳhٿ1mj];-Mcŷ}7y,JS_rez8X;bF=N.t¾M[5\|E МilVG/&]IkAWaIԟrctΞXcY4O<ˢ B F V=\ -{<,:w<0!VÑ|Gee[je X6aA` ( GY("Łۈ }Bہ> (:O2t=?]_}00ߴzi{HEzs3?S)zy.}Ѻ+Pٛɷ P>FǑ&ϙdk|ٛYiL}ʪ1YaK~eAɫHq&+5ي}juoٖl8-F40H|&M0Ӆ&mQ^ &چvqy Adච@UIJ'(l+K .k{}ª5&p` eh,t6|,K\=NL`Zm[׍Zāb,>ky0KU2%]HJ4? QD}̍:#6^gڇvV%R\lN;fw%l%؜8tI{g9˵y<Nj&xM]lnfa̸qAN0 ގӟ=Yw]Ӑ됑~s.dW|h 7ޤdP8ɐ(a#X>b=ȹl퍱tNfT+Yb,Rxnߔxd;T٫M6@@Dw}*OGNO"sdcvՎL՘rɘ c&[ԓ+>T=jc ξy;GT@G͏S<9u5ϩ5Y9LN1c\18;٪K{te:Ǟqt=o1j JZ\bJ,K|oGWL@Rk2{_?mP_#k1N"X'۲۫}G6> hm.dksXR{Iꑶ%;9:Gs:[ר/R2[F\8zAΝ ԶFd5ɚG9l WBذ6x}f79x3z8MӮ%Qv7}11O̷0LjS&EglO*=^:[r<"~.cĊEL^NX9(GbzFǒ#GBj=4PX^Sw'{"fam_DZ6բe5XȤ#MI!6\CAoߨ _NOn U$dP<~a 7(HjbM'BIalU+&< +[)Di ,5Z`(< A Im`|b4!Mocł"VHi5TY (9k%ܒR^ThiD `#Fظ~n;`ɧI~ n=Tb!;¯~2haf|b=^WSR:ηU_2J݇9e1^ɋw32u z/C_'(֘3-fLyU)LM E`Fw"I % VA~'eň{~Y-EuX7zc63?dq*y}kUrB G'O$Pyzbt< $bKoz9/Oؑ>f7k&fk@g__mlBȶ#\z1wllGlkSNtV:u]'Us9~I?JAIbG^,GI8*.ߙj>RsdǕhBItj+6>4eEzV[U͈ʼn=֕2k|=_Y5EK}׭R*FJUzw u?0ek'IDb;s;QLaZTEPAkz=ye74gK=4~Wyeƹ?YȣJ'xȮ¸JV͸ae$v@S3HPC}O=f#ՔMLS[}I\fDRU}ē!/J,2q}nyyf@;İkqb}>xQjvLJcqM_qZoJXv%#P`Lhq*C "?OT'&,S LV 2Byڇ&Hj?D+VSZf7@'rl]i% ɥA۪w݋%c"wR(S=RF؝=}:\ "1,$H5m¥Y'|,,U|WaGc LcI`]KUFX]kYg:c$$^_Uށ࠽ߛo~FWP o[׳fE16lf:_]u=@Z r9F{3\癚^ KeL[ucq;1-My:1jwWW5,BjJ "HJO:s&5#Y("3 @΢څ@X;jc">ґ͔ ^,Uu}T] r `@.I"*ET!@׈_J4AG+G $\YfG j#AXʧehR qRh3׼4Y3/Y+_ޛ+A[T9bPۡ`KA./0PXbgW̿Yĉ#(gNgF<Vbt/xs]Omvr bV|tc] W31P?J`éMnGje<9`1䁮18:$JAeN}v=xk0p <'izק$ dR6|Mtȸ6@*Վh"L^u5豺`{o8U2~k XU~I㏼]y1+|$PqƂQsPdPpA5ga$qjcoUw=֧*:b[e=M՝Z}j?Y':O&ߴֈIonvi4v"#=luU 7F$jo w4e*ޢGĚGWԺ)`yq\͇.WVm'5x;+zYk^#1 t jIq7ev/Ud#ի'zOQmF ;}4G Γo1b yq5-iU mf-Mh5LUI[$vyԌ?L cC3 . Vĝ:H1ey+uο]G{kv*DT #=0AU `cvchpfFV>Jǐm'(j#" XF4)@E&"GqQ@)AQ(@ ?YC_Ԟ~cӘ#lHeudl4WňmMFƚ\mҌIrF_+1 >nGb!`lcȇhc$+d)0fVnt:uV:lR~bԮwbw[Hq|9pI4aA U9`@Qs{XEQĎtn%3qWҳ͓̩KLHc+Ձ}GcÝ9D+ؒS:nz6S,G7Sz.1&#TO̻# 5GoR{-Ѩ G'q%^7%}n"r.,E4maì6L$7lwxz۬s+dĖt&aw>$ ,K}=l)S%k:ݨ9Ъ.:dWŐP }ĿǒʝGMvgFb>d9V/Y2r(o 0K*UlXqpn6RmB{m<HDMdYxP b<qdW /e6H;NtCh02G,nqQhw5Lalļl3Ӊ= 97?mc_LQ:\c62f9PbU#"ۧ GET]ilRy3FOөs{2&ƕ.cb`\j4,31*W*eRf@:T{,,]h02B*m\p]I.L`nm&eAf͏UUnM:ާϥq0Ħq5ljY=1VőYJ@7y| ._5Ë&lꇾ.J#}ɝOM>:w‰:o\F~.` c}0ː{CyKr]w&" ϓ|VֺT=LC2lY+R6:}&X=܎rfǏ(~#v3AiPE:{wa1S.qEb.abPMmmS[%յ[37aco#}:}NF.7QP&(ƱaleS{Muz~:^P-s  ۍ&U4'1X.0l^<5ue h؆#~מg=16]w1f|cq$Y$݀&|5d du NZQU:9ˏ\60AiO߱>baP -hA*@ǐqw~flKcT?ID̺iT}v wgQ,N (rnO;29dtzLT|؊˛WtΝyV+*\.fy5f<|NX"<ޥn?h͛.qÈU d$\;ƣ]lMK2͆1=ȨU GQjkoys$l%F «(6[X@d`e v`7ҟbVz<יg \R  P#f$škxUͷFG?|.J]T(VǤ&d4ӽByDRooLC&54PW6M ӫ/%BSH6ɭu]}hu7'LI ;&iCmNyvx|Oc[͟S]SQF 7&J W~J8rP`H˛626Ǽ˳v&4~rt!`;q18zgwiXPFa^{`(>|]s!Av"Rʠ"'?cT3]?yϾi6>g8["TL,):Y6&ߦ-Y[F\ٸf_r=3VҠNap65cLù`*W m"5ce)*6$ <6VA1k5`2 $wpe[ˆ:Îhq5"Zd( e}Rrag6F~jr;&Q~Xo'Ŷbdx$ԖH]8Vtbk>ܕJi6{s;,pD|$lue4>ƽG# BLgE:Keώ%+tB=I8Iut:~*0k$؍.F<^Vܑ5-Xx1fe^'=\n؇r@^Z^!/&s]2ڟk|zlvS]V 3P9^xUؚ碷};tN@a؏rScGdW:qh,> ČrKǐNN٫.[z;yu̮^t]eruNte@'y-YXϏB扸[r`*oYg^lٕMߤLr.EylerpzLK%Tfԛ3/u|~NΣI)\N_bW>aOs]IHI͐Z$[VoƽVL8:V~50g=k7NlxmS/.ܘ0Ýo#.\nZḁB W @;V [+7|Rt˨[J3stX9Hm[_UX1 w+=D`p# >MέgK J eIu2g.ʡT@^ɏC"Nd&D#ִOj紳z Ր}|_Φ[|[z'^k 2Fm^ӻt*b멏dWgbS!NjfP7/漻ϬtzH"+>]`!  @@n }FԾXGV>k&&Omh1ё[1p @XBgW:c*Џ#Ҿ_MʡF@ǹRG qlQz&eJ 0Y&ĖpD1OA0ߙD@z2QB7Սt$W3v bvfT䌁jft.cC5g!C @S2 tNPKCu~ s!#OW&Zf^2iK,ru=Ty MIg0 - +۴XQ!\jm}ϔn rW; s2=(lf`M|为tZV:XM$h:rA O3jVO良$a9p7Zjźb:oo#/W-et;3vb b~x,(nH$>1CiJ_PXN[u1T\x[_ُ=ɉL@,}i}ϧQ(cn&Օ7,4cIn6m@[|Dۻ`:_P=k%[[l*%u7_Ne X /Yȴr̉JǰIνo->US,y鐶>;NW̬:, ݶӯ~2bľ߷m::\GPAs`g[}-"uq1҃z ǫyuK(IᯐU#vӥNn4vbg\oMCi8 j(l&mŷunAQ=͓-jw 5QdAVcyQLB0Ms?L,*9o;Eut'Z؞9GX!e]f:I=k0u-ut]btjln6Ib.\YFNjazv`jXϥwÜ'P(>fI2.y=g>^V)ZՂ83\<6Nt |m|4|jzJ|ϙ C![yJb8=~'ë=㸮~0 QaV55ψ` DKI\q ]-rǹ^=t PjɒF[3 .[b'7ʟDŽf\b~>#_&P6]85iϦ+&Ӣ8QT8s=a1͉@*a|M\(^9Ɗh< $1#X[5#ngsGT0bbwLׇԳPl.x>{hطCS-WVQRAG35ʇVj+{my5(DA ("-Tn;dTq['j*Q}PSJ{J+@ f@ `Tz{6A|FɃ&@J)5ĖȸW?LA{DX)_7ϓ,*z߈F)W vw##C|)Lﶜ=ɇ"-j]B%z !\|]FQ )JS#O/)4C o-˿.gu mehqh Qf$V<'Pˆ*v d #xB cˣl}%k5TvrZbF4T]³ XG;cIu wrz?ipY`~%=P;KJXQʓ_ʖzSA6C^ #|+Aq~6Q%PI["WV'c:OY/bZ=Jj3ŝ̫';dR>JfGbڪ~^WUu:v@\yU=? BKK}.*5Oij*LH\lNgݸDQ>(m|fêAG]3>B7͍\䌹UIjg+~-\N}瞽k4ϋ%W̨8I|~'&>fÙ[QtUcH=͸[LYO=Jeb,X 3V\Qv&-zIyFl 4÷deٺWWmY,hR"bq}GI;N[YY1@M 1.W2:5+DLӫSB}L|7j˺^VoX~l˛Y6/=+2brSjN*:|yr&ؓm -6ɓ2&-Lmk~FLw_c֤  Qհ_o#.3(4= %  >Fs}ui2g44^zrcPoKz}w1<2Y &fu189=ə닦2/crk36T \ztHf X &::@\1[{z]A UbQg\IӜGcC]NOO{$2uTʓȖƭ|Ugo.Wt#ֆ$]8I%fƝsȅU۸ zs2 ˌ2Gijӣb: 7RS1&ު37uƝ;SU.ks;:&.NŇ>[eR 3^2^WL]Bf z59:LkԻcq8ҧ:G5fΞYeH}Fb%I #ɢ.P[T H$wPlvKH@ A" AUߘ,jj !VFH4C~!`BTJb)CxV+UYu>|n`,֥/Rn^jzKXiٔ: k5+`4d1sW]~4/LgL CYEd nAHœ>'o%(5S@7)1Z9Td`l*ʚzYWHga )8 gzҹ(lSeyh"]lX*I{xzz\L4)YU/e%ٱ+ŐrX_X:~͓c3iV(WEw?[QyoRAh?b*Q4a:hJfǑM5K# "S+2hƺdFi)_:xE~^Jˉ[atQmLyBIXR_L_g Ί)R4uVΊXi]|3Zy}^?\MΣ׉bLJ|߉j=ؖ{#5ʸjV֑ɋLv%Wz _p|@cFrvE kwX06Gu͟;>E8MMCZaT77bvꂑm\k;Û])nYkƭ~@> dWZ#dؓ5;~pʘP(K=;eB\Qє(Fw]9NoePf:uN_NZ'L95] ʹx&Ly4ɮ#qtٱ [}9U'1VIӓP[Vf„m:s5TeDŏ #S >%wZu.M ݣȈɕLEdqQ46j +o{@1Wv,@lHXsK1N<#ylZ#mėd̠jҠnfI5ΘS9,)_s1*Y,jbtR0K7[$fX|TN. us}unj#3o6OŽ?HeII.yenv7I`>Vgb';6jz`I&}ԉb2]MxttnF<9RصaqGbVxJغ|єbIzYe쐡 冷nc[b}E *PK5ҏR:ӠﱀǑwg:1C̵bɔPwoXZ@({؊,C?*cԱɑYHS~繖s䛩bë&G3垴58@«P+qELOT/qϭ:HxKZīt~f9waʼ@b)Kע, I ROЙCQ}u"'#E`uP3?&gZtFW+ 43\WP#rjV25#[f* ؁:^Z 5#IzObGGv=[4 jsdu7ߏ8<ŸǣH!P_x,c`zxy 9bڬ:kP-eH8\0̪YԄW0 ǣ M&6÷6~b`:&K bbώ2N(jB .­.C{jI6T q&&!nzQωt@` MXGJ hx1'PTS{L˪k.q^~j.Qj?;@ZR `T|X LkMK{‡#%A`~!P pH\Q#a`5] Y  0c3ɓ&8 ;cvL-z=n°wVVcܐ3Z/IbC&_VG4uWW*Ncw5u|({|ښ2 ң~bNXĊqG[|mZ`qgy,iueֺ w1I5eMXM6ӟ6lG`sϪ͏[k6ߚs5"WZidNf^R8ruz+&n|g'ZX.UQΠ Qo0yV,*Q9ʤrdF(VIzxm:ka;mO.̭xt99c.봯Lqʓ9?n]F@Cg  CN\O|^<1Ļi6c<ߨgkLD+>eOv Rw9k82.U6XnΓ6/ӫ9U:Bm' Wϯ;uHUZSƳʼnijc!'q2JrGuLY+Ƌ_7#/:m-XO$ű\N1L^:"9,_W7Lq֝u517d}Und$s(L` [p Og|*qִ|gԟZ7XIgb5 N"quK1mZOWFL&gš>&3cF4]aO{,aaIM|6!O}5'_G1WJƹY?OFpy`sD<:ƹWӣtC.G)+KK1_Cn|xXT`5|{:}fՇcKdBI%w37*)Oxֵό._dzδl6fe.+fpڔ;}wv_Qs^& }3+?,E3an~1%y_ '~-i'g;NnʱgI]Yz/Ok!v3_82Šd'~&~ys 2ldMNc~BWI|!PÏjgL>g;+|QᗟI-z^5l@Փ%by?v]%n#d44Z}J}5#DžǓ 7zE2pzlNJf#[jZT3/u#~9۬JJԤn>f'띬r P{K/<LNBkV ,t^x֧&f2`5uqjK+$UG"V 怽 xZE9QE4>n 1\0FKf!FRVVhH]FXa2UHmJe#F*WL˸;o @TOI%WĀ|6n+LH|$,dFonO" l}WҫUGc_Hl(6ۚ i{B́wMR 3{iDTj]5ay2b@)2 eU TYGwL]b]3ǩ^qlpfZc{+bWlٵpHī>Q1]# bA?N53d,7qn2tCx˭J P|wBs0:95kO(xL?+Fh̕u|`<5Pb|iz1)?ŧVƽ[}/`ߡ;I)T{8 ~Af5$m){fwL 0jyxUĘ;dny2k;F7} _fHɒ[Ǚzk혩p|=VWBt_HS(uCoT5PؽutG|K%VzF N@InJ><βrxLQ[#ۼK>y;YU"i' zݽ1h$kfB]"JȨA(HI`5&iϫuawP;x-ɱg1bT5~mtJ]fWfrXQ;љˀ $4ӡ-tQTX.zj݀4d5*@q3zƹ5ƭ5ڈ$o@Ƹ3]:sclV8+q doF.nmQOu\Qz6U5qcYH<}WLFl/wW Rl?VN ccc ˼}N(+ >=djLt%w*[MH3MU)ɬ:!ʖKQFg9drgOvBYx[OGӕɸ#\sb?z,w3S5M>VWJؽOsgё1sic2,3ɓ-:Gq#c_uwu=!QuϷ>clƠ^kvUW?'4ls39ͅ ;OWvdt{rK~ZH?m_2eĀO<՛\]N,|1^MG_J2£ZյN}{7|a+chl s#|>Ly :|֖ENvR9Fi%sݳbzrF 5=c]4|vc|_jc6lZEL#;OHJUELkmO߇.3u& A/=^sev> zclDĎe#I'yzN|;_cϯ5z` P\-|xr.5/8\|W9cqn"L?.T8̹JǾ_͍I?ma MZA7ǯYA  m3rNZ2BP]6,ӝl;:}Fqa܂ն!*̢ \ 7 Xۿao֦D&TUٝ$\EW*'X[+wr-[ęA\)IhW'}Yf :PQ2K\ʏʢ@YVtwrYT{MkUh("5{hӦQIҷ̥Zp&`l@Lw_c%1嬛l|ӣYA7wUlYUO#H*Fm nNn=gVaEo9XܩJAQEWVvzZ_[4v4 b9D/tPuoɈ}܏Rڬ&/[3[ziΆl`/^T"Ʀmk&ĚOE69mKaS^^UC /ϙP$Ѿ%%se` b2ϧUPpJQd,lZG&^ڌ-*>Ա!`IZR7_&]gu; HkTWfN;FKSÐ~$(W%w*۾=Ű ծ9y\E2l 7lM*H,gdSGagȗDI6;-l#D*,v .uRfhX,O[ hY5VriYk$'Gh}l(r0{G9Csx:K}JفոG,Iu\g"\r秫)lMTm]LE6c_C4ܒ;DU̗aMQk:ĘRX> l|WY:C{3[Fm#)ٽ,>!xՁ$r+V`A{rce rŐ^o{fG>~ xXQ[,! o@SmWbw5^*?ۮͧ#{6fz}{YGq145.6DH$7k3d#++6Uյg;v/9X.7?`K$Iq@޵8my86l'Q&Fcd3ekDŞitd(`d曌n:\Ks:[Z;2Gh,9>6ޱӌbnjU\xōn5-tsNFF]LIUc?,'2w~'K&:y(PI܎}5oLdTNSLrj_OO"}3g7|T3e#")ί@WGLtd9Zl"^YLedޟIֺ{Ԏ^p곕(uz7K'O _&|GWKQ!`_9}\9F|f0(5Xj!H"Lgr)Kd֪G1.VQcPC(7̉^TӰR+[60Y,ʼnO6y$Yu}JE|D'^x<CE(v|:26ʮN5xyp&)N]sy8L&LxB5Myk7'תN1,2[UXeؿL373jIF~ s~u5t7sꃫKi;};mb_0 8n w3~:=ia!H Ñ79~)LFR?y|:coM[:y3'ٳc\& 9ejEi'i,dϖ5d5:ּ:0bL"ձ.xe̵:+gZtF+R*y.1a:f4,{P&Xǃ R*8֏/'N'P˔Gqהke[J^/޼~,:09RNP~aR{s?~Nuxqcp,jv<]Z&2.EeIOo3.c QIVQ۱A2)>`_aEM%Teb;` .K1Awg2 _ r`tAI[~~PġTBdn{(7@Q$#*FaVQ?]~ Q=hFMC L |q,Teȅ/$0jJ7rh_\I7H:@?a%XcmN ~`_I:P;Ll to?kU$- FXmԸ{&.{Pe7ː9r]6ؠM2H3k՚YAVX+ff_*hglD6n'c]$/3VC!v:ԮSD%N7Vׅ%++ώuʙ!T1]\)pZ$59(d1j|kƥCrurR页f*F1Xے@d$FMt Z-Mv%) 1yuvSɕCg`NߐW-xUnv]^y: /zzڰB5 eUFnA]g5NqYs $m#;Av:Nk~R[! M2|ga1&RM0|nXגʪ ލi2;&4ͱbv K'|2^$QJwƥc;/R1?&Vק@z}]R}2W43o]ɷIAujwqYō1 6L$):yG-c2ƴ2άf\]Y 1$w3[[\O\)\Hv'޺NLD(-~~y6zB|s/EN?V]0>M^SеXgNw۟ B-?+;:Nn}$Ș-iI=Ƶ~uoݨ/W􎮽5kH9g˅2eּ^Q5XS~^P0T/h9o`&bޞUjsRq\Ϩ|$uq,ono\Ҫ,i/VLg4}F,z]yGȽz9=aeHÉ7nƦ=lxq(A,Oi~C"YYcɗk Lg'<ߞ⭏)^KO_IȹUB/s9$4 :''ۓ)ҡ b^ab*V;ks5|8[>E\Nt:OX,Xq;6Q3;h$cMGT, q#}ΟX~J˓]b†֫i cA?K,^3\k eZۑY/Sl=p%Hrt#Y6eoB'{ kY=C` [y|3k!JH GjUGLyuֽs/Gn>j>vUҲC J:lIb5IRbW›"s?ms%[P2'9_^NdPUL9yc}6?K-czG FSudbu Hϥ^f^.<$b n3W}v\jd8`Hq>G:ؒ,GN?`0t޵ةt91ؾL^Nm```~w^^ϫssLd]Q\`.5qj傢n59/M65Aj oWq?n2'n'/sצVS^Q8qVY{Kƹ}hL)o\D^Uzg rZm!U[~{L:oݳ 5:^Y(dsgYt;dƪ9ߑ5XS'GOj2mرb{s: B "M' [_q@62>$ѦK(-$ao[2#>Gij͒'T2 'm\/ܧ5ۍů'2ݎY1lA M`gud1_lY99Qu._TU|R܍#{rמj%Ց3ōZq1lr':A1{Lޕ vަm\NC۰ynI}=p7yfCȰWω|y}ffٲOUS|Kk\ͮL^K].BN7'oSl}<\n;Nv+N N=L+,͘2J1E n0ۦ50Co^&:)y<`7EG?yy%AI2kzeÁ"q\Ԙ9sMzԍugP}r:[+k']'\ٳ'/JyYm.%P*ljz鲇e_GRGN+l_8՞ԆrfoV 2/r7̕5ɗl5兘ՂUUI9dJ cw%L^k>8ߧaF*(Ŵ֮$&ƣ.\ ;j$N3հc%\YK3/x=]N 8cmGz[Vz]:NZO3W:eZ @3̬VmyYɰQk~LͿĶרL}&Usd@ws-eKKY^%g',z'ň*ʶEm1ה-W2#6c5gֳӏ0 ^gJЯU&7aemyC'_ )s)aRz0?S>1n"H7?c"7%uş^Q[TMfv<_$o-;wl=V`ϔjVbŅs6^÷VW2n, T &c<3e`A@:'D}/5 :x8IPK5d yΘA]6]q1{k?y'}Te' OR *z@\yYQ#?b:/Ֆơr4 ?XskN^ # ?Y?ͩ\LYS \tsÙ= 2F!뜮U=>@YV~?㖙\Ɛrx\IǗlkX$s) DFP*;; v *7 ]НJx߷:zm*IT̎`KY$TZ _3Gk1= ^'8h@> &su6J'#Q~(d@A'W w5U],:2mZ*+{q׶u|:U 8;DXm^kr`llmq?9D 6+DWA'z󜺛YA@C(تMF.*,3l2^19 N੯3 .ܪ_j5=lws* Zƫq;w F]WN2v۹`,tRMi1ܝ̸~87`y06ZslY\K-n85ג6L-TSLgK9<*؀AH8͉–Ϡ즕fzGJ)i79%loDL75Y <*h6Pd!,"PS"KgTvE5Hqv$к":3Ղt:)u=|oU⧥8t~jc\oli|XȸeG+%/[\6uq1>{c:S#7"tkcßgքGzo1{mLj"j|DԱa[t!$L^Ǫ Fjk#s2JP}jbO3Z.3- .%#&5Wl(#5,A2j-_%6rD_n1m_ힽW/ά5z[f: Fsez}c:@;MuSx2J[q6|˞]Vq2a;Yc]Ĝ&Y28nŲ~ #o&fsy^)F@KDL|5|M;ۋ.1͝]>Rq i<.G&_-]vaS_Q}LK=l߼KƘr˟?cXn/I[.ONDžֻ@hЎFM>~&2r&Tfn[̕_R ԣzji}.' ؠGybmw`lq}&LuTl?K cL:rVrGH gӣV }Jɣ`?v4w4|3c̵V;vYe4tY g-a0d -ŕe#}duks ud - o]cu'b< ȅO,_/\yWNHLh =}aem5žuE)H/N&jɘ_8}\qGޮu(j_Q}MTjX_(ĽVU.ϰb/RePpLy5ɑ.Id͸Ԏ=VpޛQ?e=FIv:i{$[ x@:UMUjqB seĸ-y(ÌTKqMըRWF?SFYIϮ.lkN n GkzfLqlYnStJ`F|Ix T1>7]2%rpWl3~.a*]kR3qKt2oUcϟyFy7R$5,Ý\xg 'E{:g,6Fpc2Ze$* @?~3dU`XY"\NLf28 H5ew$ƬC3e <]\Ƙ(bj:s'~Mɿh.|?K,dCvww7:Ȗ9XZL2a#/>ʱ}'P~eysόq\ ڌX̫u*fklif4괣Lϐ1.-ujc=+GV.|]2cD7ʠP:2oϾ%:k: ف?3q=OQVLeh\eձxzw-NW{׶2}_85df N8vXSo2$ 2JS+sp_Mjs9ª2$~{x-_h1 bM\.~F?9WI^-6ogIO\ފ$cwib*6LZ,כtkukODasn.5 a%sPaF:0qFq\@"Y>Ÿ?i(׌k;11cL5U ^(fLtWc3f,:gR•kȸl٭Q߷s6H_je~&=;~"2r[y5ly N:sqlYR'oy^R,6Ք:$/L[byskIsEֆ?Ō{tNPsH{yLTğB#Ķh;ǔ6, f:4X;4MՊ:O5v%ڐg?g:~vkϬڵP_*5@3%O 4Њ6ͥArQixblU2^hoNՏPu>&鴫qM-U4yjЦG5R;SZu=q@lo~m UWr[Q]ZEjTh `D {j%1i-f`|\Q\6BGelDK͘dPl+{lz;uPlMj;mjz|h:l4E>&Y"ƘCMZ.lG#$aY1P28/t'Q&'Oy]@&dkRJ~§E|㨕淹QK0>bE\n \`܃e|؊LY"LkM$Y6oּEELS6'.s {\3i"1u?c#2j:zI`e hYS,^ST^b1}9UbE#;=nN̄+PMLs%M2.5vy/~1PNy9k8xR$s,uAݚLɋ0K2l\w~ڱ(t.{g^c_ıgllp>&yIqŃ2ə߷vIۣ>LkCopT籀_z& &kZ W5bg}Pč8]s~i61:ZՒja̟vLeUi")8QT'͹1_ IyK͉'^k;^iϘ+csx?[6,UR+CA:z~/Qp7ɡܙfaOKm'79ϊM*{KXSJ.׼n&6kEkZ{LιYā .=YInu1j>2A.l;;N_lU2cmvOaI"돫eqCRґ3>WZLhP:X(Β _>lq){;瞛aˤ ɬY[UɌ#kcgSE`.tFUs "վiz,y^t־<z̗?3u)F%ף~>,̵P[+TFD종$c4;ڏcwIE9ِfF e]'=MC)p"okpN A[eˎNUifL1+w`g{9N*d*FEe P/kcSNVZ}=*j'G?\ԵUROj-ԓ+C6q1}>} gWX֝!rYͭxm\pfΫ/C%Os6ʐ+ޫ%[ה;cuI:#|ʏMK3nLS&|Z #fb?ن"j ;1c[l"QmgcId.~.jbV/=XZc,Luuz*o뽻Wq3/ac)Z}F/A׎2_Vrq%EP?O-1&.PTԏ=_-סURc7Yeɡp!S\qa.ᔍ`Ӏc'NYLh/mΒ- Y^#O;%yOۣ&JTX֙:2et1o:N1Xeg?EެYUК,D=[skP;y[k7?M`ɛm =.O[6n%P/,8Gh)+L,~DNpc fݿ9uCa)܁ d+$u "´b=wZ.b,}%dblb`. sMP̝dUrL5h>?̼Ub1-7'ĶeJ `v? sR58KϡgoL@ye3Ev<:Ա`3ժa@Վ7b/L,+I{wyz[)BP 7SP{Lu Au*t;P]5wKa!oa,%q}'d0 2+LIvfUՌ${iY{vyn g.1GR5 J}i7-sFf4ը^s4!k6v#Lk%O*w4 6ZYC h Z"_5qB7Gܸ`+kEYA&( ƪP2`+,=8r eD R!mmS]z =7~9Xb41>F+QY˫.=,zG1[POo~]Qly55po<˩6GÕzlcYNwjҀy&oe'gI2ݨjq,Tb.J.F.sZt_(`}W:v#CH|_ijsrPsgU#\~\AYJka a[r9tSn$#j ]>R*4Nc@Mτً-83l83PsidUko:I劏'Q}FsOu\=Q8.x3}g,M_HCN5ɑ710su.\=p#uկ;+ڳ dS𬇧!ؐO|_'Wuy@_n;6/=Bxdwsv%A@>O. 0c1:6vZ&_Q {vMNLʷ,G'&,1\K`/%7%^fUPdR?Iϭ1kz1 %';=+ɇ٩a9'\y=T'}AŠ4 v {|;[=" ˝*+X˩^89}2=M`N>V<Β€ݞhl؝8NƸϲJ_NefG/8ܟvjG3ӷo~=Ǥl6XRotM=Nq{ NVlqaԗMP G"kcqlؓ:Y^9ί5gXVU.ː;Ϋō+ҝC<~_ޔ8Pg $<6A:.1*$gWFTAL<\$>caZ}xS|}PQaG/_Ʋ|X8 ?<]ŜTF;Pw4y9#&t۝~+7?891Xv"oQcdatbl_I4c>ز1:6%G7 )W䙾6\kFLq#)tu'c3ʩɧ?;*_&fΖf> 2dah{v^c\s`'\zsn3}J1eS 3[>C"O&Ҹ:%G ~Lq6ӨU͒?oWƯuz\k)zyVÁqSV?c]9`=/]xf3akB7q$t>Gl.wn}5"͔ iZIۻ7k&7K 1o=tܑ@(]K,w1YLXتk(Ƭ^lfԬS[ 匚_(];YJ W~ăUsuبq"P0FFS1e@#lqёQD-;RA|aBaDO5H:LdOaExstn9^~MXdAndIbN\IWĹtщsQ#1Ѭ2+p@1ι!Vjdsk18ـVEu(o*d5buԚh;s9P Ȗ1Igˌyj|jų5)s3h/4;&5n=0{֦r&?KZT` j"K@byЍ`j$U1.;H!$ "%n^N=Rd,n@_YMNFyy59Mh4G5d\ 6^4?fPƑޑ-A@ ~~xH묻U*JKPCw=bo9=C{WĜLQYqcȃP$q:^]'(ԡYCTaf99ӌG7xĜ=( ^B fnI/S`Üi"e2j#vsb)e8;UI}ѳb/*$o_n35B=^o}2ukP`ǑގJ&q=<?YWwt0ʤ ̸l9 E>'&A{L6, 0U;˄iKb@NU$;I)r+D9Lyu !ujWG+_(`8ǟeJ@+l)cUNX[fo:4f&@ ˿m(Nʼny$]ҮÆmG^fӧ9fLiN9Z'q/IVE`q9 S۟\\tȤYi@:̫ \8zoq(7e]V`W'j[fgjS/_qL,xY_GA&ai~%UmCdcHK1#`ْ:NOoWAfy1Mҁ{w9v{Yʭ륽b\LLm͌9*^ȡƮ3[{÷:H2hگ{?q۬_Krؖ]z[+͟./vWPyk)5jf8œ&<@i: y[>&ǐ@y^Gn=z j6&a#?+&Nnl-K󯥉eM1n]l$#>wɉqLLFFcսol>-$1SjMN}7k ܑklz_y-9V͒C&q-_+ L{R_oK'ԫeG77Ĺu^N5 ӛ8Voub2zN{)]3s9,cIӽm̉zz>?ڮg}yzbqfw/5ZGl͛>G1x'=:^ÓQr0<~=8ze`[OLn^qV7.'ēXFLXd뱱t7_wJ?ݑarL޿ӓ&M^@wiǻe[l2;cʸQdHyЀ]>8?Tϧldt:ϋgWN\)@UatmK]X%4Z&c}gօmD*AwBe 2W>kZUt5LH,V|o3d@rla?sn2(m6"?G>$Ǧ|Nj_-s&|  o[7s9=K1-ߔe-G6v 33goË]2c*Tsf3:bǏ@~egf냠FE-AlkOǞu)5}Sl21cb7@s.DވsZԬ*E Zgu>W%,@$z)Yi˺+P5W>LB[&5VV DmĒӋJ44]R\Zud\Բ/k㬸icԝGia]5X>#`o3&*k;E[ G̋A Wg?Lv~1v9^e%Ƙ-=z:Ev}4Ŏ wxH!S;@ l|B !Է1*|dXX&nd $e]/'9U0.I+n}&!B-rs5R ƒYt{k;LocΣڇǖS {M^LUF5+@ D-&M4ko`s&VgH+$'o8ߢCb-8yOۈWI#`F<}@-3b9YmU>hWi>RۂlL'&aUhtebq$5gzz3sˈ/nw3W֬ib%+Fظ!Lޮ2Al15NVrP€ߴ?TƣWy=b JJ׏8řKz\u;l|O:F2UIrEF$@ %=+]Mp.MOUчKQm%$V; qo3c&ǫ#Q3HF=Ǚ`̣|_-5YWv5sk pnb$f9+u;Ol( _.sz)ysƳ/|&<1^s4cԖ8XIצZȱw%yoB"iD۹bkNXpXd|oW=73VQ㞼.lYH#` j\]F,ُnqTc|8d) )V`lcb g+\bJڔ5SSN{=Q`>HãOR>Lur.k~7 d#fl2 qi%߅tyO361=i2n} 8^&Z !t_|ک^O135f4"l/5;u'rc"“~C5Нd;#R-V'm\mle/*rg-w<3:9+QPпsFbO+GUtt'nɣ{{dUMO%ԕFȊe9Ǐ#^"U b bMtF[H +9r%byb1^&ly6,,{]n|y2.xc7̘M;^O߇nәu`]P,om盩דS+ŋ*u-Z,αtu+!vۿˋ5Mm^lCNgnq8땎Ad9+f N^kRCiΚ%j.C:bf$cuZ a kҽyws]7Fç#[ySa28J5Nm3;F1`ۅQ:.D[Ao 5uo~OaYPB 55dus6Bg/Ptd<ŃSU͏Q3v@o9Nk;W"FqN{<*QcJخn'uMt Lxi׿Kzp̊:lD$/}f7Ib7m9c<$oMY(]H' P,_.퐭kE޷u݅8nKX} ;y^0g/+}y|.%.LHmj@UnuydGmIܷڹՇGg#H!C'RG+q/^z>n9OFAh13PV]?Kcȹp jTqsRV}Jh /[0=I:: @ ߑ}Xtgr'xs+ʤkcd3Wڻp@:g}@RX3S2gşL}20k?OT^c[Lzg[*>$-eX5Evc]=۟m5g:,weQ58۬zͽ6]H`l aLgN1VX/̹JGF,/M_5Nm3#ibtn'kӎۏTeTa&*cV ɜUq :s<=8eq`uJYGVc#a~'&LqFY:zJ(bհ1K7-Atw;q/_ ٯ3*w,xbSy&"*;7㹁LwW=>oLcs'UYsM_vJM^.x}\Nz_bPd[.VKSݍ#J gO¨o/3i9f15ds^Y11aԴXcc7]̲kKI3SW˯SHfczN<@حƑNTuS{g3!ɤ_t9E5zl].e`MÀn뤽zw~uV1}_S1*f pA,wU qǢȤd6-m?q6Փ/]t'ŕ,&4)^{Ǐ%קƝ_F\}L^9S҆5&cù;7=f ]5̹~(t qS|&_lޅ䘽R23|&k|do)!Oɜbf4Ơ07x&F{AH%Y1g >+_&|`%ծe>6=,jY6NӨIolh?f)> È[ep4mz3,^~'zG_*Q'Hț}'ÓF$l-[WPqVZ}_kSK'I}Lu`prtR,rf0tY\DYNԌz|`sAq^?IS#3l_ד.63 c]f%S2Ms"Ky|7MzYӤ1lճJI&3g$ɑlj 4E|;y Lz}:q׬$Sucxxs T~uq/N[׻ϞG?j,iΉ=ɐό0j$_һQF^9N3l:~1ǝ1#V=_*&%גxަqB0Eϙ&瓋ʋ_+W.XE!{5yM:4πX_hK/st\9&t' PP'32V8ϔ@ fzEcMg)cvƹiLHA߹υ-1e >{y&d<9\>n\NygtEs5k_l>fWi%[ΙB9{4de*W<iǮn|ro+(h1%"zTԒIx~>-UQS{y9F~&LmQ_nUr)r#TVPlk}ܝ2"q->7o6uɋ!\mj^jN)K*( W @ɕYʧDjtaG]O7țo2Pt/^Ԯ+Sr`QA F. lGciI`SNi$ȁq.Ia㱆|c$>fs.Eag*h[cRJ;v9mo.z= :H.\vB6%'(=kLevMY*T͛vyeîR0f.jYpI2ѣl/ t.KP@Ӱ|WtcpdmԑdwGb-g~y{1% llKu #m& MKa`hԑtTzyKѧG kX{-x-U$gōLs}L\]b#՘cEQdM]Wrfmq]Sx7ަs۫Uf]jz.{}*;lWejErmL7>_W-A*Z@:|>ھl}2,eމ\^%%u9-pgQE}Hk0h4׻y4sg4$;:sS.1s7'oRѷ9뽬S"-q)bН'RLvh+NC$]!1dÌȓebק8Jlk9stÐ 8tmi-%F7L *ly$Ut'#j jg)ܳ[OE'SP5m-ۨOTG9ym[VȴT;KR2Lb-ƤyO*UȜz' X2flA@5,tcg:gp,V]rTgˋV>~&=oNȭ2Qb2ظ/P\S\湱?>ݎ_-:_#hn>ӣFOI$~~ؙsFN V?_=;9v.S׷VÄf>Efr \z[k>wpW#[bg}b+@T PM^L~+0TP

lPkclΎv&啹b:lcP;:宯8'IV@Sϛ:&$(I;y9MNᏤS;zL\#!@mT*+K )}KWS2 q6Ė^ϗ7w],f'3zHVK#q2͌&!D ר])l57x_%3*I5|OW8\ ޮ:פؿn_A/V~Xֹs6ly oJI5YŁ-hl2W!Q&om)Nz8%O7pK{% iBy#69zM7ep\m*Cy&YV(h7CyU@!RTYb'F݅0"8p{1R&:]xլwW8[]ZBB;ɆYb,Y n"^dU/XJ̚9,z+>"zU&:IKj3đ4+{kUǫ|6f5GͧF l &~|M1+oHpYfځ*xw?n\J K` ܉E716}MLVSCvMK`!x_l1.䑳| Qriӌě3?qb/P;'k5k3}Ț+X"qn鰱o{'?Gze`V7G:َޛ"3˩<^>tqϟ%r1\3bY!12&ItE}Iy{e4>YvOc|d}oލ,sZŰ5+Aܼ |ɗgؗŠ+tܕ $ճKj{oߦC##72GwY7l>32NS{7keNmp>yOf8c2A3RD0'P4&|AO/N.!.,$^'ygt'Kk}0醰Xc]:1fK6q=* 1{S_[/5]=qv{o]=6OERVe:>* 3cAC~&ߥld/Y'+V~91^I漥ODtc̓$IcEvyJ팥ʺAxf=Cԑ@nY?QQN$)ޗ>@  bc"hK6N%è $ vxHٝl`h-Lf+0e\F*(܋yU{ܓHL|k\0VNޠj-}@G\])_KIkqLé1GczlK  Mw}Ec4K T֠o]ʳ&.66|μY\c1MAIֺ2[I/Kuunы&|v 9f"Qz+:|ONL^^9?(YCPk~tZr<^9YK*涜-f&LHyj#f6\KΘzzL͉HU ^BOdNI\{wrgשGÑt834Ôc,)wޫGդAJ&9ϨV;=q%[`nn AY5M,kҽi}+X:v ͬl^bV!!xk")Rcc6'"g?9=n,̏bƞƬLyuyhL&t(θuӏWfRH7L{&bk,*K0Bq}qŘE*X )@W_ ۴=s`2^G9};sӡAc'>ZQ-Eu)k!Ga?lI?YdCX }w^:RU/S]}z_La29qc ;O~GʧMĵ1Q#~:5LBIA1׶k{__8%5͋cE<ժ =鮢(1t=Vę1q3㑞ҡ@78(shNvQh+ŝEbD[H-Dq)91!Қӷۼߢ5ɒ!͑fd2Qa|KmG7C.h`G1n"͓Iq>"MWP.R@[6'~$g%ڵ%fJck|ˣpCQ9GIL?|7{GZt2i+@(s3Ŷ.&W*UzL1t;/hO}Ln=uKmqd.V 9v:l]/833Tg\sdz\Hdܰ[Oic˅g@Wu{ʮQjgt @OœW?u57͋.3Ư}g{U;mƭtrI_r.,H/q=cqU5ē\kTƺQEZ1mM=j&*άd22$ilI s1Y&] `끀 %c,ۢY{?43͂v۸~n}BcSdy/. t;MgkLUϨ&'V$Sɓ5}?T)N^5f<*vVL&3rI 1Ɨp ^y%vQ2[Z9~_e6ĎxoSSnV,46߼:k+[X27:`;v 9]}'xg$ƙI fM&V*|YuܝNlό5߮]e SdޞlKd|zA;Jb&3 [#5wM!|[ Yr}"3d ~:kɶ>6TeOz߮Ϗ"iokڄ飵(Y$|XF6*?vk.Gڊ/$rg9LYVoMy٬&C&U~n 76U1'I"ӹ\w#}~E% cXÍNV$as9aJ*I$|؛[Ӥuc9p Q6V+ȁ2 bɐ gS:^ոˮ˓pt SZtCs7[>$p 2,F⤒ZKuω*ea#}]A: o~f6XKiSd(ֻnwc_nf΄%i;oChn͇ 8j2e U;:Ԓ:ݧ/,ʞ[*grh1cӑ^ kj|etz@_SiXTԷ,&PJ.ku6W@&̬u7Dc:t|&#s]Ŝ#a/1g(ɭj&-ldm=;K)n4?+Wͮ%-xQ<16[Mk[%(6;59r hR8Y׏\t Ӑ־yo~lV8 }3stFbOqn^/1Y4k,vf 0n "=:[#_]Ag7ΝXl:Hf^׃+/LWOX|s3פ6N?*]yo0ύ:N.%YM[-!@t+ܑ͐f̙ tnw/De QWzgU:KV@Is`,g&W_-Kuo5V@%uzo5mK?l^k_L U=z_HXs'Ǹs*oLV\=N02(t~?F:ly$UX6?Q,ӖaS 0y3RĮfLQ)H>|eq:G>Q9˓Tc2=Ό/Wvݮg×/(PA\Mpt4OS>7|eڋߕˣ"¥Logùʗoo/3LNpx޳9߱9p;&/Xbr9Ǒl3=[OF1zv\z^x?y]E #q;NyQ!eԷbʦ>L5Șu+]1`bF`|ޚybs12nvk Tb0XʊwVMYJĶ hFƽyO*.M~rjT'N,]gtxR0.`E"rU&qiӐUCzG's'_u\6?2Mm\%UF0 Q{~f-d&R&7FB( o3׳Z~29K٪5ܭ礧NlƊ"././@LongLink0000000000000000000000000000016200000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/images/flower.jpgqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000020306612273255454032722 0ustar rootrootJFIFHHC"9%""F25)9RHWUQHPN[fo[a|bNPrs|XmC""C%%C^P^<!1AQ"aq2BR#3Cb$r4S(!1A"Q2aBRq3# ?  AP  (H!@)D B*@P P"@@P B@( @@( P @E  A@ @( @@Q@R* P P@A   @@"@@@@PQ@  hHB@@!( (@ (@PA@RP ( @PPP  @@@@*H!@PD P`@BE(pAJ@A RE  @!@R(P ((RP@(@(@P(+FP@(@ (  P@(( !J!EP@)D @(  @  @Q@ `Q(@( Q@R( @   Q4 P@(@(  4hP@@ RUH@(P BP!@B ( @(   4 P A *Md 4P&P (T P  @   )P @@( !E @0pB@!F!E @ ! (P&@(P (( (P( @( [@4 0R`@)D@ R(*Q(D@((.(@ EP" E()@P AJB Q@ Y@P! (  @P P (@PhT@ E@QD ( @RR4P&@(@@@(T@(T QjPP" P@(TAPA` @ PE @(@ @()I( @@ U"@(EP"@@*@5T  P H@ P @ (AE@P(@P Q(B P D @@@ **(TPQ@PP   (&)D@T"RDP P P(P"P P@*@@PE@ RQ@ @ ()P A@@M@P@ 0P  @(P@@(PB *P@@(@ @(@ @P Q (@P *@( h@@@ )T B "@@P@(h@B@@(P JH (P!tP!R!(@(P  @ .*@ E@(@! )@(h@ @(ATR(H@H!@(RQ@ REP@ *(@@h@( 0 PD 0 B(T@h (@P@  PP @(@(@RAJB@(D@(44 B ((D P @(* B"@(` +.@ BR @( @RP  @( M@@ @E @@P@ P 4@PP  D  @@ `P PQ(D( @ (@ (4  D B P@(@, X  @( H RhP " !JFP(@0*cI(B.R}$&Ւ"8Wߗ^?φ׿鱫9y?]zMJY5 Ky<珜pa5wzO<Ɇ\9ÍBO,TŵFwΫ '_}^:coY@@P"PP @!@@P @((@*@ P P PP *P S Q@@P;iuYv3jx`'#9oDOGc)5]џy&Wiz>9jr%{[/~}.kz@(@( @*@D ("QP((  P ( hPP @ PC~U|_yovܖǵ.;]vޭy/}?ֳ_ <(0>XYcUO/򧏯\u]aM1H=k}vO_񽞝ٽC6jTHsjɯ=?ņs~8{|n|\_ÇLω}yz?sI}_g"#P6I Ncu/lg}?#ŖP.y0T  Q"*@ @ @@(@4)( ]xV8Wr1כ]|s bvVt|?z-_m-^maO/BsChp23_?93h#Z|uSC/]Y_#YSK-*_u8Jq\Z5=던cנdꡊ'#<|ޫ|DžH֩T´jDxscx}z-Oͨ'_5<1y/En!=JV+rWm$!QU_m~J\HFWyZ*G]ujK$T.rNՒI_~>{_1h(]y7x뿊~bHmteR\nѷUl[3`Ō $e7o: \ZGO_^m-}xxG翟ۇ^;IS* wNxbj%o?9u#L^ݽyGpUZ#+\c$M}sr۶u\J#\/ѧliA}w7݌Av&k5#rU2̿S;; |:?XϏO%gnȪ!|Ǻ֣#oۇ~~tuF4_֧7ˣM6#5UjD?k^}_y||tÇ&y)|#=u9VG Z?.otz]:O Uyj_qny/F'->W`Yoƿ{?߭yٯ} @ ` @(P 4B@@RWp%t7Gn~r+GDqɾ]9y:_!$&,bH+3k6{c_&yӣ::c4͎).Q̮%pė%<=NdKdo鞎3?\Q:뫶zG+bFybegk=xOk8z۹Hysn&rv,UsR#K#p噩Z.TꞮvb̰s:Mg[rrN.vĹȕ@]ЪIY^7i8Ӆ34mnݲȲ3ZbU"9r_G$G=nO|fxݞ_/g9]9ޟ{ :\{0Eygᄏ3Ɯ9Nmѩs5&~JK,:>7fes4*P@@(  @hJP @ P@ @ =m]Jon}9מ/NyqO OkSc=qy`_-IO?1|RO>Α<3vP+ٍR8Z^=Le4$GrU%M 5\gGYv:ONJR Zߓ{B4E97n<:٩>I37]=kܨX9RHV0?(xbҺU" J$$1կL%]θ,#z#%Z^$G8dsfXJԺ$f3tϾgL\~oz#g7.'׆u$pxdz49fF%{$X>7G[:]<^IW0 @ @P@ H T  &9gE._h_:Ǧx{C ^jן}::,j'|U3N)^v㗑 +58t\ƳQ+Ù/ߟ)EP %-eds4fjWhŌXA+4q/?oK%JrkYnZW';OKTE?wpy+NG8CXpʾ.[vWqj_<~ޞzTVDv1~=ر^n$pSY'odH.Ek܎GNӢwY}LP u-m䙷DžyowJ>fRڋ"ݳm*qt]`혩^*H/WX?@#5f$H 7іXncXgUwdnG\XَK]Tag 4 Rfɗ?۞#zp&mfKv%x> U;mE}M2SGhB@ @H@@( @ UӮU1|_"o$uvߧZ?'8MJb]'\@PW$Gnҏ.[DP%<"yprjzpG˪s>kVvz(iVg<{咎wYˆLG^yrf5lo;8ۗN'8)*Ƿ36G` JFd^a$ґg'טZKY˃fݳQb %JIrtFqbڷ>dZF bmiWQ WQmܪ%]e{̙x둭Faic']NfK_{Aq}Sd|/~=x}DA&?NAbkQ^y*gHQoI"ĸ?\||`W_*޿W2kX_Adq"V躺AR9ZkɩWtuOxM3=O&r㜥lԍHGխ S3یkr;WZFQlIj"YӋCʝV9dDUFtKr5#IR)$펒Mr62?'Փ둦 JmFQU{"*tSr7" KK]RQ:ƎTݚT]#9eIEy/1dtc5+U&z^OkIwx5k<^AU+#IMGkgy/wk3ǥ#HH+>lϞv9G'?bu_}@P @(P P @1BnGQV-ƣ2=o"Yu ?'O73,qߵbIx<^D#UD([cK\YY3iS-\I>k @(P @PP PP&@(  %+dkɱKc&=/zT%uL% Eԓ_EuÂyTWO ri&fqniIw6x;ϙ8Y:&i(^[ok|idޫ]\|~~_oIyk8tjӡn:GLjbjn?Yɳ4(vAѳ,]pbuNSv̍I#-QUXElleXؑ^vuƒ4.‹ bs\Q咢7l5.*pĺ E,"J_k"dM#%r5bvlNOzcϋE :uח?On%]k]_$[l^Ys/KnKHۏE@wŢϕ\1|sjszq\[Ot~)D@(@P (p@ 0)* PkwF~Z-43eYʾ.:H{HzdKg9h]}>_sWӶYg}3m4t=9|͓.HOsMK&9rdY]|Үq'[x#q8m*8)]> .]+K-7\9OkgoG+Nb8:x0×r6ۺyV&k'׀=H£( !FFQ{a˙oד?G(fKO&H}FiqgWD#H,XvΒ5#)'eU 6ŮF1H3QZDA|WȅETo"YpERH%F%r^cQju߄b^xnrsi^|j:s"Gx垯O|3n8?ͫ%`Jys}#E/G,cղdLJ7Qn̽}9I+ܩ Q(>mj9CU'P3?Xxf1R|O9;;*P"[]e¯,_#=usIϞ/OK$gI=NL9dn5vVDȖ %MBaR 4/'??V^%Ay5MNiϖc珓شێ)/>w~N^yeNcO_{g@)D)D   (.ɩ7U5Ň4Ty5q\%RM?J(Wo}36:2p\խ6*IxGN6__j}̝)4׎~>-u鴸"V$2Fd҄4S5Xq(_׊me+'1]#28v]8Gde((茳^?g;\;mFնs=^I;|cH*TX%􈱃M*#,^.6Jg-ϫ*J*f..sFs6ڐ/=WNj~:I̓Wr/?,Sr.9efo3N(ĢH[ͨ=?͛vdkarʮRXp6Ip`{3JV\s7˛4AF-b*TȒ.4JWYJFdIX[#ˁ'EO>B Vܕ5ڄ#۳nTf]bTc'2eA|6Up͒fdy#я |#1PTfT [Aҋo%?5jg+|\.:2Ñ }Z\q?\ٗx~ͧMQ@(@ @(P  @ S"M4kU].dd\|2jx{ލ'98pzf,2KMcAhUJ%Fq007 s'`bJVBt^H8'XĬfq sOM9|s}(=q%_rs9pM˿?Z3`dԹM>{t|l\m~|{k1$HKl5Ԗa0OǦ,Uj]^ȅ"n:sX+MH9GY䵪Μ:s\f˒VzV3F +%QUճ]1N$ssy2ܳt:ڨB9mxVȕ圮Mdu ] ٖY$XBv ي R5#f񴲲[(nY W$ D^\vr銳HH$W"e",++H܍c_F+l5"jBȍ~@AW$E/)RDAiR web]u:Lzmi}<>^oCp_?G?uLg_>Ǯo?F@@*@(!@(  A@E, TWrQ ozg WG [z}9ls]zoǦ<#q>"HpgKlY$+twz#3fc,^V: .9ӲT1ZGꎜ:q\m**ًY,ҩH~O=MVq^lْ\ dǢLsM# M'J+my+MrJpFS"3ZrLYLk?(0#*@H[ [ :@GxbՙLdȡ{Y6_g4r%Gk.(*z׬vN_yn=K]juss>NTwǣSSzǵGN+oE7'œ1?RO1H;Ř.wPIѫ*G>^&wc&FSvzpbQV]tZ]+3˗nGnyyg+gYsf Hie*F#v΍ƢJZ2%UHZDFR?e#elQQXR*DkEj=]#QvJ3Q͓ty#r3յȉ`4vAl "" A䢦Di[$):UjKi~?#:_l )(@ @P P @RQ@" @( 0U 4M jPR+z^p˱ɸ?ij}ݣ+ݸY9Wc/?#z7G.ܻuY"љ*[eOvcmLI$nE}D^Q~ד3&ǟ+ߞqrKVVFDz0w rk6ZT)/,dw͚T>QśmDyJF1]'[.7#3[5*.1\|}Q@UʠdrA@ D TmE\#z3QrOf>;|fG1ΖՑ A@XjȅS "4D_l ĕA;e 1lM Y_io|{}|}(@@@( RDP(   :G7 gݦQ<f!=WVI @ R >B4y֣d4ךA/忮Xc52qH39vk)$ؒlLyYoH2i3=>z<VU^,w:L8q8y::4FDE}2ʨP9~ B9Yr7"ѨfP eƤd?-pS4D h(@PP  (@( AJ@RD  @K'Nu0p\u 0 )(@J=IŕǬN;╩Ӵeq8g|~76M^)/<yy2a?u/7DT~A ]|79ӷ5qu>:߼e ?;;:au#=3[NS8KlXՉÝmQ:3W#B;cGxl7/+] PQ"H2 7Pe2u}/'re߮SyW%ZZ\y ^??,6on49sκ{=2§%m7Vu_I1*^6X߯mYr&T\#eZ iH*%l“\\`Xi,"6QQ@@*97 >y%:fTJ68[nLYFQl ;3kpseUIgrϧ^,  BP&@@(\@@(@R (F iDgfO,еש1)Aԑ`   ,vé˅2zjtz}^-Jْ*痯\}=Ga||t^tܲf|es;a>>9p|?c.cc3gxAԅJ퓘~pNyO/-#3^9==c 2ʨQP#e@@<^z}7{uqն>yoŠ<|#oQR_Yǟ߿fY'3_!%uC9i%e=N[GǤy|{Vd%LGN<_MjsG.5(.8Zw\BNyofɌx[_:X*>W~xIWJrGEȗ,jKE̸KX핦 7H+%*cHAH( IA[j9)<يݙ@TAlXR XQ@i.H:]. 0n2̧͈EJ#VDU zql~.kfQ 9d ͩ4o?^zLW'?y;־y`P@  A @(P  P Ae}EMyQ渺r3  "k 7ÿc=>^^] /ŜzyG >^\MgevR.`sk \/*K5ߏ{xkgTtc36,T((@J|YͿ4q\{1ӓR=[9s>\{R#-ֺc V5KO\=DF F)'>t穎9%G729;ߋF*ku$kL+drXbYG^?j-K)K޾G'/KJƲjI^9~$-=&luz>#o[y먵q߷0Yn4.Fёx3,tqry$t*ΊD l QR"t@7FlK*,".UUT(ёٞ5Xl @xW͡bM'u@c['Wc/@@  P@ Q@)Pv)\Σ|}n:\jt<鎹|l~B jRF-5q)V-\zzaܗ~^O5S]Y^zgQ\fvbė&C++cϻ*T<#uvFYZ2FYU%fG)JLߏk\ɖYԙ9I-߮1m9:_9wIYe%u}gkM%ԓ*MYUH]|ui2gQ,~NyǏCL+[9]cъ|^P_Y~~0y\/ǞKYcS1rmkۯX\,[Yqَ)pvdy%<7\t&>ЗM.ٜ5lj[esڄ.gnv@P @)@(P!0 P@)Q@@PVa_gx1(1Jדyc7yϩ{qfxZq^-W+\%S=뗋'eJU(=O_W>c:Rl m3ő7*X|kSP'?kSu^fZs umI$?XoJڊrq]|<LOfz-WYرœryzךf#?+\T61bE+էN=qb9&jVqXeU!R$# ҠVY@ J~Lu?=|rI.-ߑ*I9&$]W%gyT^6Vk^87c](킣z~c2:A]_צfH?ę5i}MY,|vܙz^1>=f]WmFt,}s:l;~~ǯ4qxkvlKj=9~-j+8=:I.X5cUVU5c9dՂ-Wx.uZȅPa)`TJ6D,K XE@/\i/ Y(TdU,>Q,,zG ],-/?οɟ{NJG\lXֹ_KǏݯ܏F-1ۻMN^xU:uo$G<7LUY9&*,l7W8j볷I.;᚞u2#qVEY:W#\# V&JԮLq٥@L~k_+d_,)iE;Xc3^,g+[MƳ[igɶ }^x}.rx<[9Ǫ-*{3GhF+5e%7$ڏgS9\29wq䃤ߓs%+|G;u3N NWH͟~:ϿZUf#s%F';>uݝ|fY:iݚr%꽚lXþnY*xNY:dj^w#HW8fn5tQ*I##*FQ#Q ]irAT"`D%DDQѾ~s4Ӧ5ɚ{ 8tN)#s~"ow܏Y3dn0n߄}ixtS뗧J)$Hk~:#*2 ۷е+yqG,6Z'=^o, lRI|=w<ǩP((@=0g*2Uu%_/GG^ }cˋYv=$,o+OWbnԒ='h(zK'Tךxe:εZR"W-Fe$ ϷXWkfdroϯ[@ icEBu 5]@P@ )@,5EI>W nuk1$e91sqhK=L 1tQ,㘾ю5XZ|-v^zףnխI#3,IkMW)E+MrI6'fx\nE$mER5>ő/Lr1D֬•p!u˷l;n՜ZklYVͿ۬YrRo[iqA+Lt3Y2gu"-WF2Ypy{gQk;)g|y}{P (z4ؔ}cR=4HhBY!.NB@5 nq5t{l{/Mx.|v x( P =A8MT-kڗx~s~2SUDMJQ\=~>Lj80O~ 67}r]krEeٛ mO&3G>>F EJɆSVK~< AIWms >UEщBe"mv1uh7 7$nؗe\f-5.5dv(`q<}=}5JFThӚyčFi 3"bʯeكj}zs|)6$2zu4y|.q_Y%I?lF̛ .]Q3G\qbԮ 2ziz<>?~~a)6|G!n3mfOeY.&1tVV\[1ԙ*s>eϋoݢvb~7vˉz٩g̋>_n.Id#IJ%d F" Q*V,%VJXA+`tJ\ͻfPDTdAaQ,GE##q,FёȊmfE/#Q=%3ϞY}>ۮ, (:b:V\z!s9^qg;YǣT.ܺj{80t ,=u#|zzᥥ85W{;LG;Ҥ_F%r4Yӏ~)\ef>VP UE Ros5_9g׫U]rxr'fyk.Kf<'״W#LxO#j WNU5cظ~YXD$gFlyMtYS3T1,51+*n׏`]58* Zw$E+͎|}K'Oen:jp;]|jƱ}Y"z+H#) QϮ]L9"ErφvDr53JX5(<)w? *=<>Ƈ:ɕ\/otfWDr( E[vs͖8Ij2G|<y:Ϯ6E6[Yz3ipI~&Ts}.']"M|MiW&j"4K ڝJMHݹ7(C|}#6ȼ997ͳnVtS%xfrZG,vK.Fat*JUjv CU? a&ipWmE!ZNb:E"GDX'0n=d;ד~IY%^_0}g @DBu*=O+JP:Lc9<9jXR1\|c^hntbQ~n=* ZpGN[⾑יKM#qŝ3<\ yD9<bP @R`f,:,P7^#é#okE+[*q~ x=Sܱ?vz||g=@6Cx95G>#>Fz·FAJKWr=A GLkɚB-$4 }~.|myU$j\.KYU|"5ḱJ8;I-.q7!OhsbU|rJE-IA%6Hz]=ث'9ï'>9$.#ly:9XK*]l m#: *Q%ln*BfNPB4.H`@-|6tR3qflGHfE] 'Cf྽sy~Ie@ @T(gimrԯ^^sߩ֣_%Ǟzhjw*ϋ N+z5E1܍Q;N^ywF-nG9]*Wkx%r@P@@P=9uRuHusV>U*vyrԤX@Z8Z&?/Vx#:tw=c~>Ash৕&/ȱ3b4巃t:Vts=MFնG>t4{\r`q_kX{{̎޼cێjXG1/G^6}Z 2m.>G֥RNY'RDԯF 9u1Eskڵ)du~'l;9g,hHnL5n>~Xl^ni[(#Q^?Pʡ˃ϻOѬkܚKכ˿#sT+F ,Z61&kzo7>w>T'oH̸U(|[Wa?#+`RMY:|-&J5praE_-WG砖mY&KJ՟SrP{joL)>||%*xב'WXpJHeNyHgIRbaϒu]:DP"*D*|V@IhJ,"K"*Mum &6*:GTvJl㩎S_1k\cr>ǻSrc5FA(RAoKjwHcWћq*1z3WFl[5dR >G\8?㤮jTkT7+u#|?[֥(A|Dq_#6bROx%s@@ }B4rG^7sw]x8qs|5mz*Qj/7= '_ vN`oG{Y_B9N?}y5zukk.ii>;ˏk\'M#bswm`uk3t"iʜl1(I?~b㤤q]y/G:wX6jV|ïӜGyJ@`FPJ;E(+f/m|_T)|,כuKb"F਋"۶">8d7EI*!3c{ۥX{i+ YR[ plۢH}IU \uvՊs><ǃ3N f$t[qy\z*7O1_2$zNWd:^:|8u rviR 7$\r.,4$JYl4-\bvU E_dnJRE"5$&j5_r:Y˞eIr{kǟJ5>9ϳUy0FMrù7#5-3Eg/k qaHwbXU_+h׊SQښ\o^UL[UrMcR=rdX,-VPY^~fGLy)zN "q:s~qr\m3eW/yPH6@-Mt=6zn>>[co^rGjZ^[.3.2Ӛp_ĿIc6T}GImv_$pi~udkYiX-m,|Pf֠1W["JUbD+~JW=tdIP^S#BZ_kI(Ɏ_| fy];՜:w>u|\j#銶fqz]:N]0[noRN[g_ux1UG&4Ǔ5HёB40e,F @()QTf"+dz9i&)NStf>:<<[v1gJ1f,tnR5^90D@T0 5L͋'5NtrÃڍisi#R&2rueHebw2c}WFJ}5hYϖ/bEracQvKqb=|rn`0waYQ # bi`wœ9Nn D#RNmgg9QFȯ,Z EI3jWEmtr_-<n-ιpq^d㢢}x"ww ,uiOL:wbKcuOSR\esVV5qVI5RK?rmKUܘo[NyE}5lnT3i. lӝ]aۉλNc1e'd]lt:8Ku}x[-HHF3U16UDE\iR!iH*D 3`T 1%WH1c5 㬚{;smk&Df#jn8[-uXKqk!(P ." J z0Q{ERg Ӻ>iWfK\䮍scG:n,FjRi>%O8~cU"lٿGH,]esr5{0\b٩zP0@PB@D" 3w9:iss>:9k8džNv 1Eƒ&-^c]v Wʭ͟Q΀ PK"tY_jSd/j:ۓ]&ժFocSxKNsc\3WX>W?$1wfoH1t[iHc,˅V׉G.yim #4QSX蝙Ċf]9.Ø=^NOtzoώF-)FA*ʊMHDF⭙ע1sׇԴω=h\o%Gice`}򿐘ܲ6xjJOWL5IʕZ]}r6~V)|+oU i+FI"HazKjc[_,k\EnIท餒Wd&0|bErfJ]А#^gs{F. ߋ.tQ345]5Z"* 6J(Q 4FPAD,;( aLasꙜu JI5tt͚;Ϥe3zmI+&\ p]^㜰K6sfpE_i'/W&6;n6cן/=9u\S)DDQ@n٫+[ȸy?խ{ G9/Lޜ{5yg w#Y[TW|iPK%JiUͶk×\)|W+93Ӎʖ% šP!@`@D~iik=>o-t^zs͋,s_L50ݧZ_^.u9 ` 4%y: ї6p+ef,WE7chMKe3sH侦uzS.e!Aj2bXLd6s-rR7ŕ5L.=ssxߋw_]aPj(E Uz1Žvk6dG} ^HG_{ϔ띏|輖a|q!p)]ʰ'Vc7()9rmn S*4ҊZWj[ZIK _qI$Y''IR/;"K)JQ\BLF *b5\%^&ݦYi|aY߂c8Lj^ew㮤zN)'15#h" jʥ@R /D DBAPA#2+[1Y#mpP ,,(1ig_\j_\9r`zΞ~}rX@P}6YIqs}'ͺS%^,gy Dwcc|ʦSԫ$DR)3YɜbŲ!eAdL7T=>g$On\|op\B/ WkQRpj-~,/7W*OrWQi q"VfU_%In-H-I?vKIo]6Zٴf['-σR1n߇\f%kq_Ϳylovɚ9ystcmsk^VȂ 6  KvD<B)]Uej<LrtY1(XDljq5 >GhƋ(QDGK䳟knG8,{Lߎf @(OYw߬wO(*Gouo5z-'}˨$h"q/ueWRg/$ś^Ս.>+j Fk,Nm\Z2||ٖK{ @@(~Tlƹ{u1w|޹N^[f1.bu嚟Sr}Yd PBE Pv,^Kït=ZGxd:ߓ fٗ#*O FQPD裤%k3IpWHɧ^NfW4k#=ߏG7( +eB kυ.j?+ :Vii7$7J^ 㝽M$HRm~DY9}&l-Op?iJMfM%K,ft~$WQLLlmQSuYZm[苂M}. k4u~7ۑ!HW3+vA5D@6*")vB)H"*`Thj-d]XJea H.NJa#Q},Աmxŏyc<Oz\VKp}}&%ںHլP/+e,m22UP=Z9m3loSU<951xK>?^dRg.ƬnG,bv5?a  H@h>ߥe$%M[vgƦi:x|]aHGLf5R#/ܕ~{>? @T%@( J5 ޶Zj)FLXzSN Fo]FS\,uMIĪaT S3c61eys6dE T͉cҹG':tQ+o4r/*Go8SP%\jT5ǙƔ~+\L~.7 XAIRm_rԹN<epSi]4&DR6bԱJ?CM>ٝ㚨|R~ii&Z¶1>֜D̛.N#c? oSm/$ѻi"FߑSq~[ǚXfo2wh긶1|n1KjQnO^1gW]FU6X3e"P)D@R E / zCFIIWiF욃02hJ:|> Z|Iv\~93&\};\q44 !nwKMHާQ qi>I>Z+:šW#H@d ZgYdFJjάCh׮UG_|^otu7w<7\J]"'n&$k$LFkE4Oi@U(6 }HkrPǒ+C5E}jJFŝXWYֽx'qqۚهR 6QB5>bIJDFʢ'ՊV]G>l(ʨQOwozoM>^yGO ^y^ xԲItc_ӹm9R<&Bs\!c~8 U+QyC|(\7~Ro$_&ܬ ?< nO泸KE9EgҊI~ Ef}W`5` <;VKҒ]4s{Goǥȫb `,(@iTՐTB) A@"MQj4DBRH02P%DD%rySn8?Γf˳/sUwgfeTTCrcn2ōHu xtg>R3֨lO$.3n(RA@OUo]Z%ŜKs0 @ ,-7cٚ\^ܥ#:iF(B)ʙo->PT"4^@\_K9T-<evraNIRr,fXڊi^ Q_*J S !V+')4I.5 X}OM4p+zNP\~[J jH̝̉#L~;86Hc;R,$j؉_%5;xKVMqw"5ebXE~,DusOQ>^j>|v;s鵖3"U"BzXDrAQ A%m"#] UBh4Q)`e= #BQN8܎}9s+~}8L]^Lo7T-}]6ⅳޮyzn1gYxl [N}{z95OgY5ix~Q3™gUϯY17+>c!UH @ j3\6ܹu.~Yo}Gm'cPis͌ Xs\Z8I_EGMNiEگ̿'PebHdCb(6gN^ *c/$ srQW#R:&LY1ի{CSKÄݙ<LTBU*uÆYd_7}}M>bg_V9--qIټM]:mԟ_+ْ0pڗ4s[b+,ldz>2TnV`J!cRbWQ&tZo3yd䞿PDNr4Ȍ|[M%=ş_RQNQnF{iGOӷWF%۩rņ:eŲ)E^iq%?ɹLt'mW;+ϛKkIy_I<1OOt8[=m1;'&ؘe^ p:9`,J?$b)_wz-esi[׷\#:q[[R;dM?\eF}}wVoo7RʫveAj.*XSLv'D;%u2F"G<}rsϵįOYW{xyB +צ:#V6Hj%E2#f|29;,ҠW'i^V_A5yU%A]qΤkbse[M.{+"/[IY?r?L3ړk\y&NR2vE%mwЭOT+?uT&fd|K&#F,>쑫_꼆]51ۨӏocihsӭ^u̴P)+IQ_b+k"P *HiQHr@6ƚ{dDZƱ,RFF].tJ[̑S%dL\><חoGXKV)j[bty46߁^\iDk#eepɥOnyEtJֱMx4m<7F;#ogQ5Usi#69sJ)жőjf]1REMG\y ,@(f@QJ*tf__eY_c2?ϮejWYI4uʒy4Y|2XI/H-Kj_afG#FlM[!k2 *,E)W#KYgd5{KMuzf3WZ7|o?)ܝٿ[t#{vWZ|IَV>{}<8/k97.MXs+qROoN][^.ZI5ݞ2㾋:G?/u#z2 EuO۶\tXDZ&vf;s޺ּutyAңLu^+rՉ=9ZܣFeI\7*٨t*W;G+@m'wNFדeZ2"6'_˙PR2iR mu.:$P@wlž0Rt&շ#ѬTW.^˥SeG/*5ͮŚi%Kfnq]i5$mvcBykyircE'_?&TKq䵙?qkvk/XW!6-Y?zgVsTr8&lN{vLCxu=z2i@YJ"DMi#5Ң DT ˂9 zC%FҲhhPDRC -0#bS\2bOt<飬k<K`Wׂ}zDagr9m%Nk(hrCzV:ry#X @ @Q碎sR__E)Jݳ=M+|-}Qvy:یymv0֔rLMvE]b4dZ5X\TfV 8$ U5t8bjo\ 7;{[QR[18ݾK+8V>-13cq\pI1Pw.ǒc.Q+-⿃ee&kI,Ƿ_etKLivsNGъWCrc3Q,jpW1=>d珯>-Yɪzύ1m/9OҎ_#CC<%ϾcF8^v 0\IQ%g\`Ƕ<{^9(ͭAh*P) ^L##t1q7 R&&:G5DG$\\r.*6S1KRs]1| |FQFx*S߸Vr;5iΦM"Ņ/-7r_#=29MI͋!_gi_/tZ$/'26=jbLSLjyBscQLݍ:J̚5#q.N,vqL{ 1˃Rvt`!@F :->IF)cߢdnUQI#,ֺf8;GNn#O^>O\ЏQs.;tJN.|i2R>o#=[9c2ˋMn[Ә//}GSzcƔO=dZ01"ƣ:F\$#D{oNu =c,WΒz㱬y6FKlZ> Jo"kX6QMN [r8=} "KߚǣQQ\#P #"7 AH+JJLcbHPVњkt>IMxH8JQ}}yuî1i?]$X'n$/=xf%'ǩNQ%_'Ҏ.* EP R"4]G/B7&jMʉ`uĭgQ\kFYUMXRcP2.ZF'5QWf(MM귵F7O=쮿Jッ;9!@ A79VG19ZE4elTK.=]#eF=5#qK5 iOLYxEwG&n<XKqx~:,,dz: {"<KveKӝhӕQ@ P |`E8_ u rˎQ4}:%FԚ|]& ~1QSuUI53GD׆AܯZN$Dn5*K7:m(ræ7Y \ti]~ C%:_fY&XDדG[4:ǝ_LwjjVm}M$Q_w^-rI mfY,#fjG9Ŕf+-k^>61cdd"3$j5dn:rʼc 9XuL*zY~M4}%JXN_`Q[`]=]}}l!)E=rcF .B6 JF2["R&B47[%JTa}kN޼K{'cZi>.Fzv8]sSum:8wrr㞽c M'+œ]sn( @T*A5n˄553DB "TcncJLbڰ2]Ȏ93?s\%''7&"$^=.?|I|VTюő\#3KS[ڒΈ9!cϗ*}9psteaL:nܬnUL.x,8ty AxG3X<=t%hzeώ KΜeܮsѸ6e9JYkq:gQJ1p/'z@l(=lӷ/=}Lq{.[&+ ٓmRsQˎn-y#JDo}2bkkk$hQY#Ra|r/̓_fW"*% T캱Jt5:uuӼ2).]*]yKή׸qpɆQ76dWaf%<9ߞ$1dY+RӇ']OWnkiShwխZ$WGe')9pɛH\~-Y5I5%E,x%X cR#fnW)F+F⹣C:1Yf+-GK?7_v}$yg9y;>=g(れQjIP"6v7(6 Шl d2 F*Wh#ɔ|[&^Sf?[}z\zϯRG2QT"eVli$gSUR"KR&#H5lpk $Qg4sV99_n͌lMU3Y,puپy~sls<,2kju.Gr_,7Gx`ski$gPs|suc9qFbM˰ʻ/E;9F=R_꺼+|W&gqc%qpZ7;5ɣ`ADkpR8맲ļ{f˙Pj0]e{Ƣ䮸KϮ5^lZob>tuq5Z'&F#ɖ~!gˑv4 ,JIbF\4,K&&3(5+R#GI[Ǧm]bVkY|\XT^Y~}>)~xO,Q\/'.^8 qAF+^^1P"6 i*3QB&Y4)`TA@ #Hck[OX虖XEO Ѯ.tj#|}.W5V뜚#}YN%buZ%KdkzciZi^%q}__T'evURVU-G%e`Rlhڍ֑@'a\TADR!a^F*7z?%z}iE|W$ l`UvKV.Ix"8;Etj1kRb߯&i.ُ*̗7]!^+Wx5O]bx1dK5:딼8OCGI\69R<Ӭl52*ttjVem[V.[`܋+fgN\㉷ (t2PP`"N/UǞq|4Jk٣)ks|oU}H(ƥ-JõVp}ipfV\IFr@\42("IS용$%Joq,ɟJ*J}Ex]erxfj_$WNk#؃56Mm(MS'د6]'{N IX r:_v\~vǎ&/Lۍ#?ۤvIfΊ.H'L4,mĎ{Ɲ#36%Y1bjeY^iƙWIZ%JY˥3~~o}Os돖LJe y=uÎ}i,P'9UD2eJPZJDT@v9Ŏ4eZ}eLKV|_)pvmc\V5 CFLƸ~Oj*4?tя'~EW[i#VH ~Ih) H"#^)[(e/6Ĵ@ܾbb/>8H/IuJ힉#Sg3g,_^Yp_%3"艍A[%F4n0&TBd,*bf-b+tZqk^#%zaB'N;3^-F]:{WmǙ9%]sfp(fף/9귧[LzI]=QখL]i;"/ՕnqG+IdvLo/[%r@  T @JڤBqdu~!bǾ.32rMjW.GO<~ei>]@њ|11fWrd O\WQ|6jcIaܮL1K/E(eswQISޕt_VmZh`ZvthŊLUBͺ)#:G|Xr98n;sr<'VlKx;G:^CQ;Fk,QcQbfE+3c8>M[湦jtFk){q3hO6r=yy|z}ۆ/qߎr=5 Dl fFd ZJ`"K*47fı,͌NцEU{9Wo{ Ϡ_(}(m.*l Zs =uGo~֢[pŷK'MY3Kήy"3~N#~>lҰv3ekf{Cc[k5TX@}E_p/Mp0(a(]y'e/:J8#zOHI;L=AEɬ1<|YMs4ֺVٞP$ZCus4r^LY0ƣ-UFǛ3i r U3I&OY#YՋYl2YH^. \sw"Z tye Jk%,eyꈺdVH2j_7:s_n}u#:V@ PNj5MV"齯]y&Wxh3;f_Z+'r\_ZK)6ُX9JBj0qU3֖Gy9RjuW'?G.=Ҵ`vQ~%#vbj]F& kܒDSk\YQdo[Y_>4SbzInK&ً6rW6+Y覲j_S]df}W]!+`)E+<|"sRM,8;'~>ǝ ^\Iu:eS(/2ΌB K0Sf6f!#M%}Cs_;J<1p͒,/7> L$"7*;*%#GJ+k|[i$O߆0x;.s?PTc#p˪yoRVU%bcĞEcmXfu;G~ct4r$MՙIZܱeA?ײ:>J6ܑ`x]GOf)ɝt$ZQm/7[YW"&G4y\?e"&&ќI4x*M71j< (ē,Y4$@ׂ"p| TӰkJsW_C îƑW jFuȭu:ft9j JF"(EZǾ'Od)뎒٬oKi"*ՃJߒ,TLbXZ(Ԡfm> ݖ0_<ɮ^[xI5Ǔs2=pp-Tx$UFRQR m*3DlH!Fݙe6#fj&eؼܨiGgy7UNs> T/yzuώG48VAH*dE)@O4rerpkoZժP/!W" 5+YDP#V% u4Q~v| {0}X,,u^4#@9]'U.%EߎtRŗl'[㊕;Fé]Hoǩ87/8r^nA$ -3oy5qx}}Vu uza>cO\fVߔ]9ef87^O>VgR&Jߒ۵v2rDɯĐY'qnB#u3?-7uŗ>+s3TjNuz+UgKuu4c{_'+qDq[貣-Q)^H*iѭcnIxԏn Qv5ˮjGfJv뜟F\$gIF8dJL)+4nuMFCsHn:GR3W)i7%VsnWg/sIOv#թӴ&7+\iZ j23c6:Ef$B0+2crΘڹRt$GφYR>$眎v}{㎏5ZʌգFѢJ4*&K(@vQR (h7H)QrQtbWX23_&O$=}d8$\tlL#I 䢐R!` @|sjT_h}>Ƽ18uuR,0ƖJ&&:"flLua QDhSVnU}>*H-Fl`'Lof:xܝ/6\3rC/"W\|EMs}6۟;Oc_ rmqς cNrOuҩtQ$ ZJBer]S̷I}z<ڗo+n4bkhMx *aNapqKbӏG&t܋U.Nwz1jrsZrmDr5"Z)3r%nl Jwy#1#Xmv_Mc鏑2rvdΰ%Iz糇\㬮[#3qjz=q6uBRXgL價vNvkJ +Me$ fQWAoN.]3Zk)\3k;: -J*V2mhvP@t&*4S]15+y5 j8i T ER#H @"P)Hɫ5J0k}DqBUͶkF(VƨU+|[ Di.ʎ97#Q41p p.E{gKTL8R_kGN->Fُ29 V[JX(`c){lSZRVq,ZMMbߊEۉVLI.k;GH8:q=CcKξҘwOϨܯf_fs&j+f#7ɥzp]3]L"I,#ɖW#10U^#vU(Tl+*:L#ɩYۏƣgF L iTAH D@ @erDrMTU"`24fıҡ}ɶc5:֧L(qTJf+-eKs\98OʳrfuR @ ċM `j(N*Q}}bYnQ|~v4Ӧ - Ҷ}v.JUټgZYDKFo34TྂP/*"dT} Q cڽ c᝸ύʘ_+{9eтUH_ZcwgKVG4#6ۜW~3`k?䯞z (j `n ֆ'OIv0Xka~|'M<\Ƥz u3mjGܕl,jZWpFK~y39rHϫ|~.-S-2-*MGBnFh5,ɉV=k1p&q0Rdœ奏W2̢YΚ?s^=U>56}zcWզ01=DŕWE֝Ҽs|wM$sgs.U UcW^}N7׎|-n}]>uލiJ.|~>g:1&j :5 }FkrR:sr<ݳme " D% DXbg:t2"355>]%yq|nj:D]t'vYVT<Qi#]Xou9y:]^MںFS&O9Ր ot|9=;}#ROO;55/,hʺ gd * ,1WI,za/קӥR >TQۋ|Y)LοUe=SGo?(6WGםIg8[11ɔFVjM%+^OUŎYeK-N}AcŇouzI.n %m;}R;Fɸ,skqZSXt3bD19:%&μnGZ?ɯ_^nts@BH~t|]J)vbDn/}P)sҏF?=Q591&%EJkg5Mf=kڲMaIeMOu=X&٬OdEA(9UEr s 1qYk2z,`Қc֬Zȸ߸"5̽܌r>6Q,mǚםm*J`;cN|#= J*WQ6vbY=rn9]AsFqej9f}fpٛ}oƥCn]\>y4JOUoj9:F 9yu j\*Le7UbdiYbjwMaB5y)}&yˉNw|msr5nHTmrMo$,ͩkO:Ofy>/Oad{:#qŎ<܍8Kn1й2̤ӤYٕfS㙙ٟTidUdīiLAr VA:*#v1tW #PrRFË}Ut9yZIi/ϏVPYǾ3>}t$ʫC q/& \oqlsl2 V+ D` 2hu.G6ӲLI2i(R5]KNhl`×qDh1hGK#5VT-K(VEI5jkI"j0j[h1̸&0Oq.ၺ> #Qhn(ͣebӳ, ^7h˃)EYe ړL&:)_flFQ3F&keW)|sn%|f\2K+>g3W^Z:e5 Ţ҃K[k{Q5xb1kU0%m&1R}ΫZM,m6gQF0m]x5s}BH}c-V549cm[&[Fm5>GHӳ7d_&moy:x'\%s%&fM# >YJI. ),۾jJԊaԌޘVt["bt25F=ǚ\&u^u4oz[DkkȧQʚ%k qq^[螪ЕnR?qGy4ۊuȸ-ZKcKFm#|rɦ<I'gxrKjuycp򨰔k--WɨĢYQ|tgPRk=lpt c3ڝ'bo|W0nKLGja%>ߓ>џ$ ]%VbSsdyro=Y9P  F:2$щI$H9Ț"kfQ;,mF&)Аͻf-@JTEm: X_Ɋ16ٹ>;<8}Wp+ʼn|ҩ6ӕ'ccv'WX,I :ǶJe"K iDj-}C&3vfkɗLnѩfʗ#t\(Ֆ/5 bLvÓcIjdR&xX#|*LOҹiy5#Z&fGhy1iF*+t'ɨ'䪀(+i"%兎e#41ȸ "\ Vԁb2 )EQ ՐP4 <Ȗ@DP { -`bM#Ps H3vh@bFi* 9PeqDFB@7De nKSzi_TU=F^O᪲10XIbvdTA gyv35J uwd\zqh%*s/ԃÍnJ5^N{WJXmy$>GHeֽ ۶w8iY[1{ԋy+Lș2Ń3dL2UGF(etμ\%t\ME61uLŋKi`TA(R˂.YFё[2ݔipE[" " "#VDp˒GNyjG+4Ҧ `, *D@`Cpe0|٬CŁ/5"E."F ,&l7EB1Q3#DM)Lj[o7ǖGwl;kLEuEm_gG9doZiQ!Q.&R\ţƗn<\lJB5rG6ty*-X#\ wU.HqQ59N .V.#-Ժr.k2@H#tF<;+f-t$5^I7'l>9Z$Ԩ@1QT\Rx_"GфԢg]"UcE+M5#S`\78J^#٬2m|J6䢔|sp3DsIX';DJүWy1$Mjdz11\qyvm1M/ZnO%}|o~gX/&[qlsֱcn2or2?G5F:G5#7Ƀigplz3GQ;p۹:bnjELgQSk#k "*!aQP l " GnrԎWnͨN-€h1sKp^U_T^Wྨm5pK.d#3hI[jE*0P\[n. d , e9aE3QLΚXXEq=^.}y/Gk3ן_[,TX.eHGH1FmbkF&[ 8QVMucF4ۓv|9~0iuj&-U ĤԈ{z6YIK3{ot^H#P_osKAO̱#_ȳN;_-?d@P>GmdDQSW=R"D(Y<"_/U*$ߏ>LG>%aUHʉ"%k#2\vXMq3-ٌi?V'/7Wۆ+6Iʣk%kS[ey\ߏ_y[.1\qIȣ|}dUY`V,qrm!C#&Vaa<__W-rn t)R#۝0GN\+]љ~_;2LsY4ulq1ՎױdyteU! n9홼ȟ mVVξ8#Hرu&hAR#HKtQP .Ub*c\&9n7&5#Khm6 %l4hj* $\Mse5o^k6eMip@`k <后;70T"E[݌ -T F&ϵ5ckK*4E"2-ER& &L?նz\<$Iם}Lq1̲JmR kP.]RSeZĝ+-eɲr䣮=6LfoPuprsLWmU t'bST.`tG$2Q.&D>GUfJa]qe$f4*jAH4DAWV**ɮ. :G zʍ9fM$Y "U+KYU.ܜb&j u77r׎kȑH<2,>Mg+juctLu:1f}p{Fz0*giF)J+fkϨnӈy%giYgjO:B{]ћ5<[nUM{qt55M6c b|| ZU/>"5NtmGE $KUȱ}yc_z}=[m&{2p=(/s>/f'L|_bj;{ֻ1{99vk\瓇FK^uΞZۗ]M3e1j23cS>׳Lgxj6/x֥tZMӘμS;WNcu^.b@FT*Q#DAY~ z+jɋREζ&ډ-j3j:F\rf$D-Ꙛ'hX)ٮnQ2-hOwMVcI/$\ `N8fKD@ڇɛF"( b-Γg,,muI%Z~-߁5ɦ2XX(:hܺPymL`܎s r;sft5bWsvfm]q7CX>YUi`ZV ګ{G+uS,uxaJrFeN~2.97]eaˈ˓~Ke@$<_#2Y YﲡA+IDh  Z {UBrI  rΑ2n<5Z{Q +5OܢHTFԯFdʮZ4Ȇ~"}&\)\~ϔHr$Һu:.G'վg0MCڛ'[\jS)u>~ Qm z}6MCn*3[(B%ғ}WbRWLQiڕɺ^<ߋ#(QjJUFyARrtFTIEs;o n-36"&).Lߎ3ijKŎN?UR3[X_&o&,ǨʾI/I*ȾIҚ1SpG$pq+M\iIłm'1z5ts3kMk۾55}===G$6 O+M )L`5Z:)rMF }#4#a&.I$A\0q,`n&!eL-P*"tD,# G ^6Dn1Q\jⴙ12 &AxHjL&d 5Iy(99Guή&^]TuώGFsS:Y{QE-q2r'ɎHuyߥy7*0FxؚP,qh޲&J"9>_}l41b:deuy#]k\皕#SوmjNSS\o\ .5*&בNSbΛSd-cFq/g:ɿ%'Xkq7Mw  P^S]F-K6ҊcC6#K!0md&!165TbqeX]%to0pfѿ&>{ӍjGQ`N@R+vе#+R4"73nLbJʐQR AQCbVj(2P GFWbH_fGqǵŕVY8mިf{7>hr䳛)r?#(gi&>Wg\J0ڝktx%y&3s)ٸc+ofƔc˳yxr,nMeQx i$EԤWQÎ k[Yo7KqcM֬cS J Wv$JZhݚQ75 F&K䞢c==FB`-WOT|1y533`& 9. n}5:3KpS51eMwHof?'J V H rSQ3kR5irHͬy+*5DZW|lQQ H3Wfտ  #H=FShԫ,wa4,ϗS#ϛ |p9͎q]1ܩldxm]},:Ƕ3 j{$7ٛ2+ݸy`MpҼy50r]Vd!lH8>94m((D 4 fo++Чij5ǒN/pKYohԾ"C5!$g̸ٝ{*M(!iEHk8~Jb&5nKs|]ow&\XΙ% ӛYUKb5|#sI4 ˒Irˌ\}!Nu1Q\LtO5c_+(* ITAQQ@ nV\ oKZ;얦j 6z]mJ,<\ThUfR,syKSe4 @@(yUQDhERF$kmV\;܌eEHPVٛGE3>5͔ex6KVI4m.P FʈiYuUr5XɆ9U4txh6ӯvɩyy2L.f9@ y(iunsf'U36,N6|Tٸ$gMe)\ ,fPiVq*%!߀WFM,YsA]O|6/S>ƒ/b-k]1ɊdM& $TL}K&]!eNW UR&" H|CrMaᆛ߁r~թ2lA55}4DѮng䬼}%I.YfʼMalCY  ( 0@(EQH@PxuVFqWK'nFmV fDTn# ٣Y(aW z"nGvn3R5@JVJME"dHڕ4k5vmpf:(ULkm> r&*-ې?A%U՚篣z._YU\pr(ӫtKdXbwHuGlSGBBwv/S (9L|ܚ6J V-ey*#k2MpSl0, 2 L`Қg-ix+X$4DU!h*_ tSK*[}Vm"(hQ"IS|P*$juB(*Bᰣr~FC|@Pk///ԃ!* @( ( @*Q( m (W$,p+Ԍ$jcIH4VDT.#-eO e(D( -jKV;mye7U &TE[I:(UvUV4%,.L* egN~M؊mfepή 35_QBn K˨P> 7rGwQY]U#6%#R*65+êO$\VG ޹.ԮS/> mKgF,KUcK Dڊbk\jO96uY jhj.\ K.qWKQ%CۄjdEͣRwsǞZ\M՚cMvI56bQpJXiQqU,ue"rk@'́T5m386Fpm=~U.1\Tʅ,*@ lM%>?f|A7%pM G&˂X@(P P@)( @@P?IYtsMEPajl.Ѧ*(#L6h̾"S*P CQTl (}1TlEQɃmfh R#I_ftn)YU#+\@Ů3c.&m/XDڈu:ISHNW2eI>M`et%69hl,cE:n"qudTP~ 񦪋UXcFc"B|+QTL:FCF2[`(;W5ڠ79xɺGI>li8ÃL9q,^Vm(@P  I`ڝ]#/6#lUTȗXd|svn2Q@]= \<^r@@PP@  @P @yr|FL#L6,`Qm (o44:&qV&˃_dH"QaK85dOX֥*jTի(m'EHcq.߷F4?W-17EsG+p,+5XZ0_`U@5NбxFaɑ q[Q$KF(M@J5 5[LOΒm uOXZnJŢMsKcQ4FyM  FuٛE*陱]4b؊8A}w ʘT| F tܻ9@P  @@P Dʕ3(ҙkuQhfqm%*m.P2`W-]`jiFάcUHB*(݊ҏEoh*AHѼ2Q/q4K"Ӳ.E?XR} "ĘQh\始,e^чHL0Ia&K>"_-Ȫ k1MPJ5C]3uEDQQ2$kG=3/qɞ0fP|>d[j\b2f,VHٹo^LRB"@PS(ڟɜWHoL!ćⳓjTrhfy-ۯ ̨(  X@()D >W5u,ƫjQ1jh)E R#BB40F!HD!rڌۣ嘔i"Xh6ЕѪ"ƣ 59P^F1:H5EY?eTtB"th[в ftA4pyY}D]sd'Z2[:tz" m3bLVɂU i*BƮlfDp1U.GqV9$֏>\Ѿxķ#(ѹ1XR_%(E#>UY{\ qp+nirג^Ffq9,.:EDM3UǛ""-E44eYb T݉Zf Z-')jѹ;4[D 7 g⇸ȢƠmڟi{kiQ-2~ 1 'k1\͂}"7,_AZGN߀ 膉|)B4!@ׂa2har3*ɹYƊv]1d4R6Cjȇ+3UϓOfƥsOF,]fHR#$Ѥn訉aE&]GF)R*:"4L "J%( ,DISF(,q4-pƊ*v2lT35RL Ϣ\VRDgNc5ъ'Xt.jgG.Xv0qeTfqeG&I5"kskrLj4BbY+@ :"i%Vf''lԈR|IM3;12G';T" 2+$O%#RylԈlj-46AK5k W0k)@QсrQUFW.if"X盷EۻTсDeW>L4,ʜㅲXjڠh j".HQk?oqƙϨʨNs/%G.*\r#xfٜ])J#H"S'=-SqB RX# OM14CFӯh:uM-:..seҵ.7D#E!]F6rUqgׂخ7g>9ZM  HS YSL ##HhLꋣ fI#:xoMe-?ћVRыRiŜƠYhNnt͍cXũ7AaIO~ Qbj $ y:5*U]P`o)I Y0Kf5&VQ-ٚdM1(an&pJE(v==; LR2(L ĘD4f)ҲF(bH" k;V2+2R P\YVїjULj(Ą @; A%5Q *25)i\ͦfWv3ˮq]k*g2H2rwiK"e)jFmdene  ˆaNԭc=7K1XRɬ_ޱ\oYYc6p0Լj nZ5!nFj\܂+n}cR1iTvcW/tiix&H(IZH*QĤ,>>eW Tf kN8<j1'Q^6daS8UoYƮM7tm 䲳Z=D""9s<|AK&Ofʇ׋&&O6/GW$h 猋\ظ|ey3sst~Mj:q쨭(F ATJ3s iDn,Li-TucQ @V-Re D4Kf-T95!+ytɪ(,D;.SppqqTY4UHEі\#7pd3Ze*;g^c53VCLTjvJ &M% PU)40֑1ZDjV$"h L%bd,ae-kj a4E$ &%+ tatv\liuc1 vD15qb4WH H/Q+R5C`;,Ryk$k\279f{5j"Q{ NEd\FMU&D3T%eFOȚTwҥ\u^v$n+&"YF˜@"QLLtຮq}0F%cJw8tҽ ~©el d4dԬ+MaiG] sSL)fҰjccu($-yڬ6l]xv5)i׏/ `mѬdL)H{"2l-I .F",ctk-y5Ǜ샦lh XPY NFDr&ZE;"c";n([<*g+ZK23丵|L7ؽg3Y y[LsQ<5"4Œ:Si)YQIipbm|&%i t9 b֛mJSY*!QU!*Z,e5ef054d CAYd#yloUG:t6`oH+DdVE,6Lfg\5"3rA@YPXRcW96I X7l6(ȧn&,,@Ŷ u95h%Kǁ/R"Ф&9Hͫ rM1f5z7AdPDhCPՠ0Ʌ?ǵ :`Z%Dhuj9VLX\XO*C~8,kNSvq5%&SH+SUɠ(Mp6hZde^bcR.Z%o VoCE "O5XS&)`ebD`lԈ6&\dˈ*4L  d Q'D9@ pQj@Rqti]Blrn DJEO%Fgik/%!yB&N;4I,dufL#3E2,&#Z2-U @h,%sRH+GԬg amCM2-Tbj"Ңѕ:(M*I@0R;;HqZ,G>LffoXP&44ƀ( aDO9歚*60 0m.A)W%L\@=PAZc~P :IpXE{%^Dqy3kX˭Wfm#^u6fMqj>,]ز7+.σZ]M4ƱekP2 G&HrEr3p<}V]ͫ%o&+XnQ#Xy[kwedӯV h eіEhX0W;r> H̨N֩H͆urh}{cA/7K7dQZ0 dB[5H!ȃ32Dr3U)"h\2*[{{7Ԁ˒ie'"h 'x\ʈ>IrmZP^ѱif6 gԃy,-bl#)U@:c04S"#$eWX=hB}>WWX=NњԢjn2hcL*7UB.P Kϒ-e*((" v5+8ōjeb0K,k=k`C`+ VX j(6meʅQѨah0i~1`QK7sgCHbY=JU&,<_/斢rŨop52%o'ӴI鵋"[bU”j3yiTsSC7٩QrYufFeW (u9&i ۶f"%DƷ96km(:y5ojȨ2y/Zʘ.OmE_#ؘo1n^?O8%.ly_y7#e.L fۧcޞݡypîn v=J!gD1ʂ;Si6kXܪJsA6GaME3>sS˨r#ʤ 44X鴱噟8uY^I6ӆ\R[^:` G&q@LQtd-,r1WsΗ|~t4STsONׁ|,vi\1i𤅣b%H.8I2Hy%sѤW\M\gGN)XQ|"1֣)H nȩl aE"KmuFf44m- iUg8X ~ ''{+j!_D<)>$R1j"M\xڋ9`F0AdP*VEtqce |$\0k] Q'r%Kj㚤jtϕn'5һ.CCjKWJE0a "RD fYһ.!AIM0ZCސAxL=O'Q,y:F4۶˂J  4Ŀ%*+}Љ|2Zܭ맅9^OqFE}Ծ+fY:gn5j1gI''mH("5cs?dWɳqy'3zs0n!eFV06!8E ,DdȑMHԩZEDU&5S(4cIi^0F'\M-MtL^u/w_%,>,yZo @PȤE0ۢ*R3`#6+)Ae RCY9[E ]g,$T 2fU|Pآ&"!' `MRltK990u%)ZC   i1efFAd&RQCl]v^I#:ڌe(x첥'ԬYJjVqTT*BaAPPV\ˢ1mt$X:3E(%bf@Thra7]*<\Z.&kQfZQ(@ 6iYPX;*( 쨖 @@@Ӡ@ ۧr9fӓQ+m_ӆNs @P0>:94Y(hRKZ1k1hYEY.ћY82Ņ"٤KFS##- -ټMzx1*Z늤VMg2\Όud'e&ġ>J:5[pfg2Q*[ K M-Bl A.@Cr."npk6QٍQ,1ɀM m l.9$Xn3[F9Dn\Brh.Fmj9{ȞhbUrA5fVRYk8)6⽧D(QVFn;4;rsH$aRȤ%C]k܈+<ysr1k7P)hܪ"YXBl`M٬f)rd^CW/V@ER + @@@@@@b{pn:O+<)3"1.[5 :k\E=75tL5˓OX1]w’VHŢTfьDW&H[5==u>-.+A(}08uA坰DY`ͣQtdqLdT`KfU, `CaRDll l "e)5e[cubCV8tWED@บ36("1d,]1Y7Y~ƈyW5p42Ŧ9sbfoMH3w> 69s<Ƨ+l!&YljVOZOWkbQ LRʈa@  wR_F8UhX0n+XdF*$kp.~^rfeA5E-;5"-ackO0WC@g-/1ux% sOSX2oXxtF|݋D ޗѪϑ=ͥ5\$52OzcF9j+>s%6훜iNȖ:M  +]fy0hܦ`;.EM -PM䅉R4Jdro )f> ͧMpŎ p|#,*jj٨\16Hͮ:~5]%੭4NTDx# QTEٛZ˨դfmnMyrfYrMjD,,YRAS@@4&(jw`!2+5bsVբbIςZc,f[ZtDm%:%X+:]pDY&TN6gV9wJ|H J5YHͧq}s> ˃H6"4hWuR' ?LV/ZdFoMHt,xb֛ƑFѡ*VF0ͅ4'WEy56dcKeH薦)e&4OjcH̺b˩ie.FoK]YZڪL4oXgMdTKQiVd#\;-W9[b4LǦBϺ rɘ50y(E@x5Ѐi!EƎ]ZK4R)_`fԦؗʦ|xY(UO67U,. Igled@@2@{D~]t2+3b.-U 05Z, n4i7 'j}p`p\DY .!`RcEYCcʉch.ńdD5H`0 €)0@ «3"w$tbO?exU!0 G@1 hc@] 8ؑtu t ͡ TPW Rf+p'qUŒ+ɖ6idkE2^MKf۲A$hod6c>DI6ja&mj5F*(=%=E.cj&tDJɣIc5X  iqՑ~&TĸA(!Pa i~W~r4l* :5MʘJ]Ttbe`-r%jOXg)s/9J&ֵC6dTI&5N7:~qeU&cL`c8 WXL'bZiʐ@0tEJA4L(()@B WU=U֋oJWTAPàGl`aC2@h+eaM((DKfТ00\5UCf9DAnB gY/OOL5ux3y5+LԮc3UcFm"ڤ膋*")KT\CFSLsd瓴e7K(f2+ PFٚԎaI◀03Y:+:4 @h`5 h8^K'T~y4R:5lY4 vER&(2*%i@+ KڹŮuUBrHy/qJg%I#6cy7Dž>Zof5ы]dKǔ=%2h䍱g IJ6o=3k*3bdVSW.LtnQːg,Ә@0Ep(%V"P ` ((CQ4P oV5gfܣ 漪"` ((ō_*beJ4e vU΃p 0pKLL۳r wp=4(( h`D!-Co,eFm*fm6Ȥ@mL  'DX:ю5ۖGOQo%5, u<Ύv *O$XůPKH]6]2LE^CWHI41y ћ U6ɪnjΫXZ".Z܋9RrЩ.UK| ]D3Qzg/WKjIa8b "M0>XCr9aLOq$ՐӲ4(9ѾbZX9WD_ VDB5&+*3Uc> UY1hfMk fg[)IE..1jy'ƐMĭԸ.ٛB&%͙Q(J4W6IQp&+lb=Em鬘ͰŬe٨H ItaJGs['hZՖ$x7*X7R)EhQʺDLJ9r9s6Bݒ&ФU#*,XEieWf%f 0{:8(W;^ݚ~`RM{ηDgft 4XN€iU",R:4+QKvtAi\H'ɗ.}1f"A@ÄJ>X"PU#*Z1Uh*L$0t*ZWZg3~k{;S@E Kا/gFmfTU&iTTxS'^Wleq3KR(U_*d*Vc@@M"&IT)p\eܢvH#X /++`2fpvcimFKʎ]F57i6\+n52f4ٹtBU &}X25fG!kHWGơe$fBTgT~K(`&bDc3N};V5<ը{RaZ&1,+,gncua|ud4DeH a9XˈYCpj jG2bF1exﳤ]0ƑQN)Z3T(3U6d5fUI2jL\dbpfbErN\W>Irvv"їF2(͚JEu`QE CAZE0o ,jTV2*4"%VfZ3\˕9sΎ`4LK4%VL DK+. weVFzPȱs{: L4WBQ9؉Y( v 4ʤEL*>k1dMbջGN~960:wt)pV]ʢD^ L@ZEE)PR"A"Տ"F^-g.Q v\eaB3"d+<[f.V'L E =oI_FqQfv Z"*O-jFz 9[6$庸 ղbIU [ҜlkYKNHeFƻ3f.2bqY7,f3s=GTN6˒ "JI ;5j\D$VVYa3f3Xb:a6$ i EѮDdְ Xɪ(PQI2Q ʳ%W&yQyrkYF-c71Ok|]FR42,fR5C EJQh"gvW>W+%EŒX35F>H:a ]p ^Ldeڣ6% 0,TQiPUH4M6Q:po$zR'Qc 1qץHG~8(Ҹ*\+גn1|fמݰEz3SrgK"S2UQSQ.\Y>+Gn_ddG*]C^&,drը=0e?3XˉǣJۆ͝^JO.u`(D9x؈NE$WN&j%tZMduHqn,mo!- ݢ.'%Hk1q-L=b1j eL4M@&(eXtU^Nl#<ژ˃v&r3WIpf:1bX BA*QD & YE"+l|-;pă  IQ4?S hàq } )Hj-tE IjI!׷V3t3p`R䊙*,) "`R"G+N;r\f$1վNӌi@oEڗ!AU'R1Ȩ (,UAWr~Dձ׊VJ*EFIn> Tc3K 4LXcF,>]Y8nDy{^KM3y?:uLȴ.93UWH)R,ibfUbKj}pYXa5DY XK}g[U&9њyᵜRS2ڷp>wYX?i5Qֈ!XTKD9"BJ̯hǝ/%1 85I#όݗ[kʍ. QlifqtZ&.365@ # ZE dG.ipK#Y:L-yRrzdrRa%p>IӧtbWG,Ɖ(\ZvdN&5))F散Q+.V+OZ;c0;hK!ʊ01ZIjyɛW2mVȕTq˺G6De`ьGTEFh XL͍kX:1b[ PZ*;.')]yNI^^\n-%etj"l|fp9GjgHPC쬀@T0N4 0+E #q3Zu\z# Ʃ FtYYf0E4Qk&DzLUM8 $ DUTIV4\Ɩh}%%.#<]_ٶbqLs|E" ( **(`4Ek\ǡg5*OŒW#>8̨`&+IR4RHee`&bdmTRR@UQq@k|P*y 4X3W4٫GdQ 2l囐׉<4[{H"@A ERaǙ",{YO}9?<ܚm 7 ]-F4ziei-g^Ki:Jz *5|*InQeOH NĮF,3dF-X唝`5N'fى:c. {*StrDPa"2R@Zs ̃ N`AX&FkԨrF#Cl=9Ϯ.:L3}i4X 2m5]8tFqDw :T'EpkQǪI4x:ȭj'Z& 44EAVԫab%in>ي\Fyѫ 5q^{LQpCLf.&P(~!i s3j_oO>,ĺaԙfʢk_NI;gh `:Ai!C]J)qSI(&1`oj6V 8JQ|ɤx'ȴZҥAvYm/r%r]C*+0di?,W#Q?^mtXtVѮ.IksO8FuPQюvjtGIQǛlܣg!yc b܌oMsi6|:+ JWF),ubLiF"j5]dnՃs)vX"&, "Fq݆=ٍ$L4tAQvr<0"Z,č.||&nDeB( (ӲST34EMǻQsE-F'G6bvf#ǮjGgGT&YQѾ9Tu`&DmW2<괬H4X#KLqjq)EK~Ff5+cZ7ӯ"W"lpdLzY5٩Lh kbe|\e,ͫ#9dɜjD<oQ~JE`~H}VS^BcLt:k/eJT/wiN-W|3ZH$ٖٚFEF`mITf fɡk5cvcL؍ZTMpg[Q@HP")Z@cӷ#&Xd"!i 3y eC)ix*Ժ&.N';FZf*"R%}*kahrWe3y/iS65 ԫNٌjVћ)3*Jy0.% _Gn{>`8)#Q@CSxю;rͨbEaem&Y9[:Hj h:Eek#! ub4n)tjTD]!2VdBrrVNFM E" 2f=Ej&tfGS] r4YBEAFEp)|V~JdRv:sy\YYMQR}YGNq&mkdQ5\q1X9V@m %m LtcfL5vW YV7X*,#,z.x:7rf%YmuRnă doqS%sy%z|Rlj4?iXYpc ;"Os&.6c R%c66ǫ_c tG^+}L7ܨj)"lbLbhlBFFkxH >;(##JXܳk$[TM1j2'Б=6ʒ܊"e,5+Qb TU ֣ja#4mZUrEh7\9bpf$ThI.5W\]#Q+AM? fPh,T`Hǥ.0F?O/]8}>7gK^?NnV5MnX#7WQ)J$y/F= ת.X[7L/G>ΒIZnj-3V1cH JKFy1'h};tw}rIt`T4¢p(A1ҳȭFvEc}W90H DŁ#e8`׃6+H Acy16ycA$ӎmEUCfU=M>jŷqRy&PʄEpcVRTˀPlbQ3mcy(pt$&{}q VfƚFUddi?qly1U׎e,vbs鵝nQIE&Xyx:s#PTXrQ60E``4ERA`M00,c&/eTҦNTID]cH+8wɋI.Tȵ)!Zcq-C].ZIU63Vh+qTa6ZDjVo,eb AB`I@hkQ*,2* FRv0FRM$j3["Ȇ0jG6 _-o3\3HW Reǣ)$kz|"d41)IETsiN-m8욘97#5e+IIq&m\oRŸ5LYԢj]W7,n5:/&u(qZQg+YkbōbVFs5-& v/.itʼnW\pfDr49ʑdK\qԁII ,+ άqM:!KQG y-"yhΙ"QL1i%Px6)ʱ;}0aR5ɤ(#i>vDL$gcބ8UW6}O|S22 .23cRX#"XU'dcts"Į2wϦұX1R")H \Bo/xieH1͗3ok9qnf/mN\0gGu9$jSBP*@aST be":4Q/QmIɤE iU[hάjFqi[Aي8;t#Si&9SԊԈ)H G&%&6_I8.qlb\FbJ)0DSQ "I"Z[I`D\50^htM L]0!Z:"ɩ`vS)&5ɖV٩$֤m1[DS"VݧmYӘziƸ}CZks:yiR-4oCxb%ʼF1 hJ->P#|x :q&.:#Pȍcbp^PVA'ɜvL'ɹ>Q/+`C@Yp|/X3˂ r;q6!7Kg+Fk+e%oqwHK#$bŕo](| n6ba(icKRI"3| &1cTs]0/b,[RP/ pR\(󵞛4n )wj[}'0Vi#9jTX3zY$3~X5'.e@ (`T{*{G8-b]N:H֭DNѕrdԆ,nZǕeԥ<ͮ7:g?r엥 Zub/9JN&&W% K:{jY[ERLOر+]ɶEZD5$uv!?.>sQX2?'s֦,WFeEFlL[EJ4:=>NOo2ٿ3ˌ14 4na9ZfՋP Ŗ,2`UqXˊXMebtkPBH"I$Y4}7 IDnWX3Q"kN_4-Lt(.Yr5Ⅶ8gN|3>M4$[[{݌+s(l4?XsL̋H%BU&-1-ŵq-Eb܉)7.bŗ ;g;,_NJ:sXVzf5S4|z29֔LR`Q%fM/7+q~Jg>rj[XX\x%U@tTR a5UvN,,9mnWJ %nbV}&R#f]Dye>:5n^ "ZͤJ6adՐ6abzmx46Ӡ& ], A "*Gn~9R4X%eI .h鰕4#Q*bqXkOJELI.Ab:ԪǑo#,2(&<%UrJn#WZBm[F(\S tBbvPjJEQ5M*DRdWdTȁmMRXEpE@V*3(-4YRXvkY-ӕ%Fk2j- H1i]+6x[aVf2er|Zbɩ DdfmI-MԚ >ū|ӲQvb\\pe,r:2RC&E{M}8(ZMVH9^NJMϡ0"D?"kI"S]N(HX&g6A4%{&+կ{I}wu>jqXIr4L\ j@kI{Y,XŖv5+YΠ$ӗ}kJf1YVn Lݢbf M**HC]IJefH}3V@ vJkc g97fi C^I`ū^Y0tGQ)bN,'Q"P.ˁKYXOOs"?y>nkS2\C]S 0&e쀲gQX3J烇/~:ҋ8WHl . Fux.,**UBn,͚2*Z+%.ōDd 2*()>: y+ ̣?bZ'"+P M'=TVp7e@! ؔ +UsKcN;EEKȑ>˃xk'xՌ]1S& t(T |y8kՂ *Ft*53L4&3CDAIǂPx AAA)R\)"Z-F#F4f֏h *Z-@ĸ٩SBC@V4KM O,tbkqU,p Ǔ,ۓ5&2Hɲ$+)eĬ+@P0.i7,Y]!F+F$Ư88MgG4RV=+@ݚ5LvpZgȞ%5ʊ%Ŋ1r% {1k^trMr359> $K\ҎKflv|v eΛ LpSQq~$XQIU:sԩbmI?3atj<q:rpgu*sVUKQ1u3bhYy'K 7=RzrGnCARNV5Tv}osxe2&aE4tT#*\3.hb9ћ v .(3m9]+EJN<]L.MXͥд&V˦K+L0%3XdR/⟷>EVQ[ Rp)S$i VT|߃C]P끨>&HZ &FqM4O&*%CT@*E*%4UŊ-36 "=44fYD8M|4d,f-%G|GY',ZmƿMɦ7'Tm0 "[,KPCef @Qݣ_f,jSb K4m#fMg-}Nz%,]rWLDЕ,e%F! )   Z* Ej0R{͋+E;FqtfD9S*fL Qa%h5|^KCo ]""05:X\puNroYRcUiEn `,UY)<R% $*D^I(tTu(<.C(i>@K(]A.@ TTZ\:HJ4FhbVVQLDS(E@@ҷB{]*KܟH3kv"V/=:HЪJlOmKefԶ C eVM4Dzy8MFp^MFm}W jlk5. Q:c,mZDWojmc]>*]x3ST{u5Xv);]>)K5tb2ɼjj/Y(.=WIᒮ#KĴѾfIRN)9T Z#,gjn8K:ZE_ubQtN#xS]J1dMF\vɞRN\>m`M}E~Dr71onT3WZ+6fuDŽ6=OnY*|NM>7xers2h|7*X璦tXE~ ic.HNś5j*XEJ.c X]+i#VLkWrfƥ[bfiėXL{-" QWlK*,\ii[kgu ;gg2fQh w$\XZfT`4EZeY^Z%PQHCIl r)K*ѕ 4E&!K :Z(P\&hh,E:.T] Q4Q4]B(iiמst V8?ٛ/&N٩RI% IY+l%oi @znbV:GL=>ZIqonu1Ji!n;uF ޤ$L3k^.Jדi\s+\qMɮLZ-ӊ!}5'Ilj te}#KNLKYR7N{gpxrT1}XA}RT l~a||71nJ:rٚ/k 7\nŇR9.βc:5AIiX5#7Ƒ\k"h)44KƘ\cѹ69獣rblSL]Zci5JJDb^ P/U %*eȥƴ%%WJ5|-+5ExF"|ZVYQUFCLK-0mjFVhX 2+N<=Rtfơ@Z @"/\;t@_} )@PF@4CCFKȢQ,)@4eAPѨA4:qW(4ϫbMxٲr|'.c#aH lA謳oQQ'Y+!(dSL*=GOQ$ڨ/&^QpF(ۮM^Kȡl1Xty_'ַ釶FwLS2WyR'椖q9KK'f5rƜ]3h\'oY*''LȬyռ 4z\SJZ5ïY?5zD49UO+zV5 .Iayo So&FHyrwAܭ~'}ŖT2_jy&6^9f9mYV%]V^g91>'_+8e+ǮnNmkU'O~~NbE1YYbR fFuN$[ 7 JȭD.h M+*W:G:0 dQ,YMċhbj iZFT.E"*e(^KCKi*ժ$q,8}$ͩrts:C TF5 y"*" nT]4PEY&3NӖ֯Qƥ; j&U/% ~`h ,!t <hhL;t&@@m `/b((rR%ڜνsNwOr7rNE|B QoPg&i͚fjYY@@T0djsZd  X<)a5|`xPeSa$r)vΜ{w2>E U$t«S=O>nߑp)+&iKR]$y1\5l2ˤr5W}t<[61TQؐmߑdQµD6]O^ kLN?׋STi',Rn23eV lqŋ+}Dk0:`W"0MsvU.rg>7=j$8~Osy9 %JeWCŏբ}RgݎsqlnhL4 &nfgJj` 54 `NB⨊R hOD;i'9%KezMG ]صnΌ @*E&PHF(N%D:o+ewB*bƥSn]5ٖ͙B ^H(;`0l!5GE@x ATC"Y(B|!E"+ X p+* HNٲC_%MHAp%4(:,c9FRʉaݕY˲Lm.#H OyWq{oG < K㧜{Z-Ku޽8Rz84ȏ"NO"{l;B8nIV:OY^9n K%n5ܤkR19kM%MfHq~6Μ-NT#%7}2ژ+v %.jH27I'649<>MbKYk F)ysdkV0Ol>VUL2&&L؝BN #~|N2-#_fu9tÒ̮]1b,NUzKz?_>:.,Ɋ,`vL qp-Fv 4HU TC*@3\#lAV"E- 1^}dy b46Gܗh6dY dE)ECQicL4ƊLh,.1E "*a"BnGsUE)8j#1yjU*6~ `DQAKeD.vL Ֆ)44 -reLb ;Jb"&(* a RFum51Q2E ʆ-e7}*!IXdm1%ӞҊ3Ni MCdKb7+$应[#)\W:3)d]YI\kX(Fm7ƕA+*hRs\ybS7ic[SQ>FIl#^ µF3q]q%T&}qLlASmoO^MMӟ륋Vb֡n }zYQ淚[TIrnTRjئ++=OO>_(|ⳓnJOɚu̡a|Wv;Mqgjp0PhDVm*(((>XKs dhkXZ.N̛XKe8J -tCvHZMyȧ.+g?mJ eW_dkq+6jgLo6uə(59s[KɞpJ*0ZBFl5QT4Uhܬ%*9g.Ոsu#lkKe$N|I-zmkB5f%얒r;G>jGn)9E6m&($YZJ$">ۻ]L^k>-ΓO(X&nTp]tmRFnko&eêI(o1UӯTuctbV].(Os|q1ʟlW̲oG> yM9Z)kmHʘR`"D (1Ku@Ev43TΒbJ Ff-n+e2i8&tjD]"Z8eDI3IvQiaWix,J,-?؝z$riePIS5)cUeLK.)F5Ub}kqy_i:+m&Lchpm/D5U/1t8MK]pE&,a" DUpAϗ,t +r5TECB#Q(B|FTeYQoFzz;`>Ӫw4Ok˗qATE4*Rbʸ䱆r`5 JF~"e<(#JL+3L{ G%##hee|]T3_I]RM3k}r*4+VYDIQeFoAy*(,` L")RV(id0'%e9J.J4Z5\CT,hrH3_r cѫ_kNm.?&Pf2Aj+L,/$5Z!Q,r5ms5ޗ`nʳ/٘юI$/K 2MGqg>\zxON72s;Y}9T&fu`jO3ի/bgnϞBE/\\+|\ uu1Q-'vݴ\䄋(R^Y1"9=o[I"'Ifxvro2 WctoR4ǒ3Ԙxr/6brv׫6girXwNSg{1޽Ydf\EѬG$ɓZ2x겧N5'fr$G.ɵ|a{ikX)G5.e& i2*KewbܓW. y5zZKO#]`z It:1}tZ4cU(-Xh͍F vXO\rɤBm5d.X#?6vj%FˣQ"˕rJh ( H "( M 2``iX( [O#-kI%!cYnyuFIƴR%Fn, !$Pr{& nPTT5cSeMQZdtmvdP`k*7ǧP(&{~|N4?&uRpg |aP]&TrqPTTU7Twzv ?NپMq$r΢=9*ELc3ܺ,i-7n%$,jn6Ŋk\j[jԎ|I#Ԍ-'t"SRGoi|L+bQп3i\{8y>~oIg7]{~)3?{p2e}Ns-*fs,-dvU38ܭa*flnV$Ys\UJ5Xh>!?,nI( CdA.`垱sLNiַu'-)4| RMC%5)GLnkG pˆO4 nD4 Gt:슢"SumcVR\QQ7fuX0*8."#C D F$Qpq>4q2!JhqFX;)6=N(#jW8KM Z<>L^[ \*cZO@85Fn%МKƙDJ,J#uFᆋi c &"Z*Z7 M+3zܒi:]"h r$ jߎ{rz~҃9?ٞTf/D5C`&0"VLfN54  Ȧ"j6 fȣjF_MzX_GD8uryO&}N_k *4:NX:%+E4w99FrI.LZbƣu$MZ&yٮ$]qg kr:1޹5.Y!ʦKΗ wF/NkuuW16\#-Ѿ8daMcZƯ,fy2c>nnj%RIwśeZo,,"&rz6)eKjekl&)N&,k]x.eFr%.aXԸq6_"L(nOCHp_6̆w:_6Uђl%yr+~{,Vq\2ƒjE|% / ܭc.'6Cbl{gO]#T hƑ3Zj13Z{}-.yf5-vL^)^\|'V3Y}6Ǩ}6c,3ZNq(>z;OW8d:t9Z6fE+-c**:1ĩbFѱɖ4LV&j*075Y  "ڀ[Q(N ;sOVHáէǹi˓jDzzzՌ3>aO WI(;] jVQōe\5+h4q;&)t@E)m&P 5YJ&D4kJ8˦,ʔT&VK5͓yzi-P"2Ji.#.k]5Gv[~ӕBVொ8_5|5CHabK!"cXӔӑ `ZkKR%{Z];Î0|dFoX`]s ͭRmiOeV}D%F($F9e=9^9_F9Ւ4n K|*(r%Fy+g1y0NR\prn[;F9ٯinpHAZ%n=_NKhϵTL9cM9TtӰhvEcM0Jfis떥u_G :z>rb2= 6:Ɲ־E#c& Zԩ}E$m\эQP֨PaG`Q`*&|8eM%j97,MQo$tsJLƥjTzz,UG'O}S:şLHָ%ԪVZ2ֶы4E P4hl%M4ˢ~Mhʘ&Jͅ`'PQS91Ir]J"0WΓrVm]~&7Եz5 BQ翢k>QeR`@@ PʌFYkJ 1%@J-*.Qz>(NUS70uA&rXP$ً6*#IFYy2-Ͷf]kp˲4: 5щ9,wc\g8jEy%/ uZH1呿#㣟U{,Xc:Hͺ2_qnR*JqZ;|Nj0_dUhPui3Fln/kcKjtōUE S2e1&V17uAI9t1)cImTu%)}7&'|8~9JX7#7،S(3_'X?cZ-aO:<$\k:rNU ˞Yv8?%TM0!+˧IrOmZE?tN7Y;42OPw=r @4 4F|\%3n4c%(/6ݢHVkX͂Hj9X>M9RP""pe9rkˆ߻W#2=XB9I;p阪2ntjBDţ. D&P%" R(tA#UǖTg.I6ʂ>:"ⴎ+j+FъG$g;[^rI礼XzZqC,WH3ɒ͓t J7:Uћ2^Z̛-JIQ2$9#Qɤ&%JXQR謥ˉ]X m[;9EGCH2ˑEvX$ܙLqA#E-?\ҾXÿ]:p_$_6PaH Q4TKV%KFs=ri%@R.NN'WɾbW qQ\$NW&'[}Ӥp_G)J+U$,|%ɩ26mi슾d+]1eeWfŎMf=>Lٍ|\i("In>#KijyۛKuCƸSmȕi~G91\&ԾoƯ%.YoI#)g;sQivo^p;&4XʌX苔ZvXzk&ڲ٩k{NgN9W\emprrKUsIE#ݎ]Xc8SOzYٳ6]nL^䰤sQ*pqDi.[VaEt>gF rtXͮ\rdxFN- L" E 4 *+Rt-﹮v1}WB|dsEg\[1ZLҢȕ8R%ƑF(yZDD%SA\Z#&L*eRFk.GiYϪ8&W~aJn LϪLZ3C ofZkcEQla+5V U5RRDGmtزfZя2}\+T\!P'hP5*!j"5*/wHq]93&N{QbWLL#]34f}wKQrOm\A?Io,֊I$F**IsGr4Z5_Rakӄ|5"6b9!Sx72cTR ]sF/.MwO⊄RH$VEo _4j|^Neɋ5F,Xי"xڛ' y7Æ*YמXC(vŮ>_RiflWD"3r [qERqfJϿMdMu\N.L?suTًNU平j+,/7fX2 stDIfi +4)Rh5de,n&o(+$TȠ%U#MJԮyNΒX.J|UsTlGŤwEpj )Z(j2qQsT %āPS 4m)FbٸWw(QB=Gչͤ3%/Ϯ]nݣq`G^+Q::WA5qŕk!1WNVY 2@M:J%&JԦ]2XַǙt*9^qUf2Ĭڴhf&2Eɤj&#mq7Z4Fq(h&<7rΎdvQ>)- qtDyq;_g'xiA|Y_j()ՉR6]Z͑'&ҫ,wXƺL~}_?|sمT "_/e+}I(ĿCZBY2Kg)5QЖ6Y\ڹAc_=G$Xq}59tcm.a]ӑ+5ެ˟XI_wq7f/NǖbÖ^81Ŝ&6dt\>GCU2bX$zŒREqD#<מ<gobYUk#j$So5TSF$SMaYRqD\k']$o +3.)&;&:c(/nD'uiW(29N) V)lkcQ.3 첳U)Z93InW$5T5%Q䯓_OLS"ĮFgkmuK%ۗF>k]4f?;iU/svz|~Gm"*©D (iŊYflW >_b4]bTX)1]#)2`͚u\r0F˔bB|"o4HnDf٤K|e#q!fdnE5@2t<μp陦H @{~{r׸B-biy*4?@݀]JYF!+YiW3WkV'ª5~1{z|pDžIyRdNq=G&b+*ofONX-+Kq TXXϕ)c,R]Y#FdQ7J嗮|YЂQ\d+VHR2Gv.8o\+ǚxl\tb5jwI$o\oFf֩ɮ?aM#Bj+oּi*eMi \2ok&F퓪/ rcufL%4: ̡u}5Ls)$ڱr|"$G;ю73V0fZ8nqN5)ŮKݘ*qmvn*fpTb)BYZгFo[Wģ?rOrou, MiHAk#Oӏ3[R:^>?VskLuqq꺇<%xKVDnC(I%%{Z}<0cI.ksey2TcrTɢOUtfă9X>\sKQEH*Fq'&ˌڒ!/7*\mTi8v*ҌcGs|WTMYE$j3CF ݄rsGv7DkFV5PY ,(>4)p6U`sdYq2EuKڎ-NM[1ҝetSV1^Q3cR8nUǏZ\qVF12fBR({Z755|dm|$sì%4K.|InE#-" *Y=."gJ2IR# $ҧoɩ\5 f09Y|NU4JTE5jЋؘvZ-i#OT$WH#љJzR2MDy]Ɋ0Jti9|mi)_ RbXFpF∓.7tsd|&G"^H ۶@0mh.6dkɞc{n|дkX:gyӏ\ENʄ@A*d a+h7mdoȥ4Ć!kR%0iHʘL6|ۜۈ  tGnj+c˲, x(_QIXC Oɒ.N4U_(?\aus+&Dy3W#Z4]v%VrjEI)g5<-sF95 Лrۏ:Q0GQ1mdiTazt\)"l9jqds5%#qi14ә#WkzF1_&oK}VJŹ.9enҷƖJe67&0QMnU.+T|VJ=l!dN׈O rɹɧW^QFu/VK事gjњCNUV9٭G6kN(zsv$<9Wb?\œtZ_RtC5.5pz?2ɗrpcr]y-ukOt^q8|rn[PV;p%Y1]xMu,Kiuxmы^ZȱKttQ]˃-=I~?՜bY'{*udtMVG"iטš9TL$Im/j;a5fk"hSjhͺpMϚ^W^ی'xO|B95yJI{NEyyq]LxdW=.ztJMx1fWƝ\G{D#+2)i2mZ\wԘM1(HUnŭMORmtK\r5t-;4n4rsH8firc֝uH1ZdHe2HJ=ֲ`T%L Z9֔6E4LhA`rD<`%Ȁ"r:mq5j#DWFN@O--k9xLj_e*d"R|3Hv7H9-rJûYffTz\o$$ZF8RI>j$k6wcXKؓV=f]Z!Q !&]Xr}ˢϬZǎ}ډ%իj^YӲ"N t뤅'fZc.-zO䙵˫zU,=9Q\{^yZmp/ۦJۏOے]DPy ЩM"# H`əqY]D!FlX$"]QI6QEBn9 TȍjD׈G7ZAP`RS% 5->\َ(`::vqWh͹U-&YEndՔ @A,Y$N4ʕC]v-NbPR$()$a\1EˮYs P"XvG+0З#bRp&/ L.?"  c_lQO]{ƹ''W"˯=6D,KȒũ{Ssu#+}>9ۮL6iyy˪8cڕqGNy#<.ٯIjvfDg-c᯷,]R7+Tk,);0cReRኻ:NXMRuTyZ;ݸW+2e,Ub%.5/.TI=Nns0\շ5$j9&7r$1=gJ67WY9qU9WLm*&HU4g''ٌvBvjc^dfbc.GjtZFN2E4j*v(&{i+3yŞbMĮWsŎ u=kg3ķ[F;~ uR:tp''meY28܍5<\E´s,ކ(iu[_;^EuE$+}$a2tožj܅*66e>+Kcо|\pj{'JÜ`2(2 pcy2F)vr,}L`J<{u}cdG_+vƶ9Hk#&.c,c٨"1IK JdT2Z$ˡA,h6nE-Jv-jAYZU&rl:J(*. V}\\B ̼HI$5/78uU}Wg;*/voo.]vnUǑJUbP d,hbf٧U2%o|VEeeAcɏEϮX 9 @V +3vⶾ : )rJQ>JJ%T-4hP\J~*Fr-ό5哆r yk傦]:XK4{G՞X\aSPb[/Qy[zViftvO/2}NsZo!ˋWS8#wI޵ZE2p{s3֣\6ҾMf.{xTuHnrF$d{~ j>.׆YVd)͵WK-VzzicN={]f:Z&|WO$vTxǧiy,nTy'\&fsϞ x.y I 3LdHWv8޽;$v1S$\yc0䂔oyJ8l(~>s'&9るcHJy7 UGςq}}n;1E&hK|vĞDݪɷ䝽LY#5k x7#6ԌZQNRHcPs:܎=uyUWy).k*n-_ %)yZ{T7HBVY8eXPP5ہf  i[ C~'n5#xQ'1_1rg|ekZ2F򵷺Mۥ\E:貖,VPH2|1ͣ6EZtYP%*E< h45PZN/c6m~e+ 0M2+P?\jF61Ɗ)tJ#d4P(v;rۿQ\.GmkQ/qM},Ms}q Sj/5ƛbY\2զu#$:7%YLlL+95"ui kDw" ,@vPb 4&1Xd|\j9XA( Ak6sS:rpTK,JM+8TT4iE(=6u &78i~=ƣO8p.Nansšq_SbPs&>_lVְx,}9䔢Hi:~/;fOO9ԣ~?DZPq ftBMJZu\gG^=3[tu\'N|E䵩iS|8Yqj1REֱ9>(m˟usԯqi'Ɠ͍ip-)$_F/Ph0.TLybᶜ\\_:9}rm4fVOKmmN{ %a<.&9k)c\?_?%9EÇls0[Ȝz:s1sCNWUt}EVx}lrjrl_K܍I=<\#~;2y!so1xHĩk\Xڏ? +.=~_kLd9e{&krl-H&a[:%czT'.1G|Ѽͩn/?D_ 5Q%nE3kxr֣',\:n8Ĭ բӼ9׌Wi RR<}N+]:qϴ9s{Gn58㎫s7km[_1았肴bAPKQj%NF%.@dF-X/KEXc2,9I՜r!-M_%ērڱ9M+F1tte񦷍'ָZVuᎣ|qǭ{ܓFspP(4&]/8uT1]2f4*:VAL{,^\5VbJj4A%qKғn)FJ_ R+57H&+5rRgN}zxT LRUHt)ۍZ1ݙjة7l+>U&-tfOj&+gP/ZcoN:Lqѩ(j}]1Oޓ9uuQ-f89!8s'LǙfX% q῔,={,G5'|1TN5ϪDZ9}F}#XϊcOo9g~J7zcVy)IG ۿ1ɓʷ1ʺ'kLv7:rM(]ag+X6ћZ+3:q <^l?oD5kϜk˛$pŚˎQ| OzmcqէnѮ&3r_>NKt.þR Px]9.8c8zk7&#]Va*מumѩ=%9c_Y1TЊ]+O9\WIZ.R ï$t.эj"K1,8uPjI3'diybѶQH{ޛxqnɣj1nӬcMGIOZmY jF:֑V5Ϫ].Hx&,GgKwɠ]Fݮ *cQ] .9X]Yq3C5I_9tJYkXjgǗ>g/(bٿ479Ӌ.>_ cqheq_Nw$L6}tI9oQy'Kߊi,Ϊ-^mEO~4sƥeLff tirqo#77:5:WlԌޞvl͕NRb3(@"P`r,J٤wiw[Z:|"[>XeAm+"UpLcR\3ydebKE|iO '6R%Kˇs1O4 %٭fVc6@Rt>.cAzF'[fܙ?;1>M(\$EY5X4Cu yiuL/QIH1[Q$o^ Uv]rWQFq3`^8QȔl#ũ<[wϑ3U RO,-y|&w6ԏ--"]:J[ce & o_p4*m'\|Z\oDRN,j&] di:j9uB&-jGD4s)*gxR ٣)3}~E:a\n2]q_5ҽ&{:o+ͤo^:͞}3u.VEӥZ1ϺkxLDOI?"<)ABŕΠ9֣B,87s#O9kX*2`C6%$7Kn|nkYƙW;3L"C 'Fv:Yc Ii]uF8ҕ/Uv(I-Y0'fQ_x,MIRT5E"zJQ=LXR9Z2aa[c( 4ʔfD/I%~ L>xc76I J#f @&22tզOZRPkɊMlB%Gl"ʄ0i<UaOXCJr4ÊN\=oMQQi_S(?eq&%UQ"²54@0Mʟ_hԿcȧ+Nџ3#Z3VcV?[=8M9A Fk?UUWCB^PU:4KK[M)63Y\"CNv#+Hdsel^\ҍ>Nb Tmu= kmDGGTYWG"*ΝVO csNpn4zrMSE|j4"Y+n8!mőG*vG%wCh(<T5hAɨIYtŎLt~JʑC*;\#<^e=&<6YՌ%rʩ/s\9iGF Kȴ\yi_Ƶ!u5pұ 1զpiY&qjSφJ\RGERa̱+3L'gb;rèdT fOO(ZjT/fkD]2GҤ&oO_ž(N&g FrO &Y$-slۍ@@€;;T۟RҴ7}Qj9B}ii!5J]N8NZZI%250c;$^_{ytkS\iц-TI}38)ojC !&7mNՅ%87׫(O/< ru&JәTdi:K-,d^-[u/g</y|xom1&bk͝<"y;tLŝia=TNI(vWm>LOt(Nyg/jem큾ymt %sv^( ]+S.MIԸt\5:t顺-{8 9ꎒ .ZL2(r3ߵKSن8ƣ,kW%IkRa㞗6LH9uZow7X:RTۮV${kG0( YZԋڶնXkI |PAJIP0ًS ZF+&t'>%cl2bTe\۫/ƹtLr1] } ]x+!w׀A|]=~>Rt).!)I1zCo_92kg(9itjK2묥++6@@ 2)Eq[7Y?h,Mx}=8ٍG-Gb5QK/f֤D=Au:ME)F>J+%ɹ_OJڑe Ã'ŜX!4zeq>;3i#SRg͖-.J6vkkѩ7*hm7fekJgItUoL+Id$#jg>V:nV,[HݲJ59ޗFn|\rj8[KlMNVu2:Wrڏ_MkIŶKӤ$WqΜ:Yu1{5ՐeRsIgk]dr-ط/[V6g ס9FǝX[5fEŅҹ,Un1K1/ĺfW&F/jո.-ODJ]> 5)~j*[іjBYMvՒrj#8% YjTy5̩\*(k9CZƢ_&lZ"41׫%GMښ>GnMFY`N:5=Ƨ׹G)ёXjjTU;l cL#8sK t1~Q]QL1ɎԪ̓ ͏?>';ӗQ3]w-{%k@A*BEc rGhKθrW(:ryR K/.GdWF*Ǟ-,>a5|o'꧷_}'Qn(Ջ:qS A084;1%"W!k "Zr5lR$ $O-Fvlj:3ZuMtv5yd"ץQD1YeUjv<봾A$7?&3yk IY'MV飖kMJII%Һ^E(=³%՗1&u&<K?:|4g+JZ]f=Tז3ś%]o+%Fm-pI=Vy]'ˬ Ou2r͑ ˫K+q|BcԌ2V5<T~+_|3y,S GGT{ u"*-s&YIra6j"CKf&.P@E]AUV1[I\?&<򽩳VF5lJS\b|ǣi η+e3HJQɿW?̋+7|#7: 'WAWTdjT#H#A. Ujg-jGV֣S3`> LU$T@eI G&Kq|96 .O5&wG'y8[CӣR0'pmMuإ,j(bYSy%,.^h͔W̍H&;S]pqt5Z_*,GsyK&|%kIryfݣiYH1a53KP5Z o5N3$JOOG&%g~ӧb_e.\}dz69'MrEH@P‚)P%(hśkɫ%[̫cKf:Ie3z cUa݋%ZyDrĭcَܑJ)>X%TDW藣 )xD\ &RiUMJ5*DKæ1kQ˟ޚ)M ,Jf$vi;uɱm>?K)Ik-Jܬ6A 顆\0A0x~EZq"l&}?TO醾 өFKgc饧_Y,`Mϓy&ْ&QqtT Qk`Ǘ)|%O(tIcŕR?g>x&yj;ue wmz`G$\OLz'h=\e䷦MOzNsx5bko(ъh%flil_zo#)[ղ3˨(1,ڥ 섓Hi_`},RoK{yJ MTeIe_9vy4DZiQtԿH_>Kk"R6md> '@V89G>;pZlĚ xm\rkmtkUn5e SXԯ>GC7i>Y=xf\x7Ls`2+q9o\R]4mZN|c'\vgq͘T**hWVXHl)".] LsEN Qek0m.. OZ|tvџJjI_0p|&FnƼQ2x﯁`cYcj.XXZmpҪ싪TnN 5 uItɊkTH J IxC eɬMKMS6)Utf4C2ӉbWjri%*:ރ&-/)L}'2Hd߶iσU:*=rvktTMQ0踃ڟ^b餗BL4ʌ'1yjW/.}u67>*$7ݕaWOUxX:24UH7RǍw*,)A,b{#/KM鳌wfkwZZ u1JjlRvWϨwzrMKˑ;fkM"ϥ ){ ɖ*d]hN?X׹"\vJ=U(MQ3ǍEYym.@`*@f~ LM;t3rیWZ4^ޞK.8yG>=:)[FFQdjThFbQ22X\$fsN\*/FtUv`ё pTƗb. *Z;fG i;+cl:6&*[YP{>G)ʟ>d3/XQGj-vR|&6H-g;^ƵQ5e }w\4)?@_"SmGMe* k,':a<oG/WOŤOǖYyEj[ު4K=jid3|fd3,߉T\V,%RVt#qH&1$j3b+u|;K!wx' J47mji9,k +xN77bh!5,\ta يZtHa@ 0/Icw 4(뎦Ҏe45q|36UѦŲI*t15#6FlcR Y݉&I_4LPŗ28X$FyrQˁm((%H,Z4tTF!,ؒ55{ԫLn=?J5q#U953cKmqߑEF/i9. C;eB]*\Y}3bekJkdkJ 4 4[VƤ4(p"c{;LOWG(m_-:st-џSxVGvU՝_S R#j`E16{΍ݴُіE%f]@0 EU|SRiǨLeM/Mn-sMS5. "%˴1Xdy3fft0 ( a@5Y0? ֦=Y8pv%tѪԴ9ɑ jHXM#)KTV2*q34T6џ|#e"} `e-M:or}1?ߒjw44N9Yjd0kzޛ% |BiM/3c|מF1T!3nߧႷ7#J)qI|Ar/X?/0m }0$EGĚdf-b+GDt U1n*,,ʉY+˗lGDX~@/Z#QKD.պ*5#1U <+eʄ =?&y-a&+}QMm9")dBCN.̴ F:Z9 +4S,SEx z^B0˨K,,RMfy7ur) =5įoOISU,]qesh+̫#=3Es Rn@֩ FZwF>BR&* Bh&[0=,YE;9_Lce|ThOUV5fe7%9ȿٮgl *M/[s Z_G{ݭ]uWߒj/$0_Dqf55;5gK)mTcZ\%Lnh$mTsDeb%kZJ-3H 9+/,QL#:[ 9q==.ZinmtLjt[AEךrm1tԔcN)HcZqp%F}k,ꥹukfOsk2骝J=,נoh|7J\ W\Eㄲ?/ԟ/NF.[cH<ڙ~r.g?uK\ R%U$XɊEЙ)2 XM_)R1]YKZELfx+!5T.$ @0tԸ>WɹeGLrB]I1D "ǟX@P;MrQ$CצR'?*ki5kɛҢ5I\QQKpy,XK=wc| 1zNMVieLvEbsۗD_&[(%`*+ECNE%jVWE5ʴJCEP D8 ,[3f9])ȗ6&y?& 6EΡ O\ l@ti!211Å)ds!rX" W=xBT VXy9t5)"V3V: nVZB_%GD %d$FETYRԵ7;b9>Lu޵7qir6}ϕ>InvTp1Pr"ZMEJTbFm^<׏cO$a4dfF- DAUH2>@MЬIԌM&Ŏͦx.ZaP1 2bC @04lLו1ur_&Z(`sM3XU^WzU(Dy WJNOIR`zZu͞~t˨#|SaBZ *4L2%o<*qԌV;`gG5S.4Ei Q6NXғ a: 2؍2#!ܸ&a\Gnop5m;n9u_ȼSM>jss,slٯlNXM|>8zV_89xN^/;ko7ݔ+{&i Y'Z%VVНW Y]tbiqti+51k˅a)s$x9[~>ye5M:Hͺ @Q-HB&(blJ|K5mkΑ( Z͢6%PA+" yÅf $3A fFaH)Ra@ h XpMq7uۇU/𚿇)B]bEqc?QĜCRˑmྻ8۲jL^)BZ5%2:s]0gc_^f~O?^+Uǒ[ #M#ɖ 4N k芽s8ZꆱkU&Fu{Ėͤ=yF^6xKZ3b`٦t`T#I֤zbyj^: [(p"Y & ɍ4hy2ifƣaqF~+@i ejj1+xrJHς $/q"`&E67:ḯ Hoj+Uzvc脍k-T*Szn4jZx/f2꫃/?svn*, I|=A_5 q69cA4kO.7te^8֩H5̓hebOw Y1NZ;"c7;%Ggk"jJŞ\XlO> J(L2)3!nDcKԪφkxOkzjbD΢^Km|?G;T61KoZi?F:|XJX|b-z iRɇ''vY1ny"E*B@CDI@&@..9$+\y">cSJ5tfJܮlʙL9@PLE "^@P P$*(P%nXTi'l8앙VGFx1#R X+lD{-yRw&zj!AW_tFitFx.HHi]iB)rOqp'2[u~܏$nsw&yApdkp+][#E-$mFՓGV74*W7[ej-WiF&9ai9 8VhlͣXBZU=y:ZHY> nW4vÏ#ជ9]S3cz/sʧDH6 Õ,GTsq٭do*^_̫4p5 LͫVwIy2JU.iMYUˊ2]uU?M3϶k3)4"-pP>5R)+cظ%QkpfqEb L (j(T (dP8}bӦ!P0 ŷ#QՏ'f_rKMˬ^qY0@@%| (3b6/Xŋdڻqo۴e\Ѯcu*@SLj]93QiW)| -ť~I[㰮l8Mr5+eÙ^982K1lce'i(?bR`RZ(2+6$CFCDAr*츎TNLJQvg3Qk18bhJ@yA@AI4!Rǰ)| iaP2Y#Ĉ@Zݹ>mk/ ܒۓ6n+೧;9Ͳ@ԉjJ;,$[E27knn9Z@ X3]9tUQDU\#F?^Yr.#\yQqiQ :DoFj*FejFoeC\.h7bXFom@Kh}j ׄB1pr]02hvXQ>S5">{6ufP3]99oыZj2br6bQzM~GzEץ!H 4(`[c\>Jrk<2U{(beN5LuˊۘD0.`2 J2*=[Ә2@P E%l肢:GLW_feԫ4_ >pM"W:_l#p\$M(FuL&XT> o#H[5UɒMy?9ۦfr`_5]CŐR@\QpէFjlZ늤FWV@hH`,FYAo,GOj`u: uˣT@€¥|5 +2bE1Q=yg;$Q>QKk. U1#5rfyFUQT *LQIiIRa (V:pv0Tm 8ur;!1XB CBL0 ()R(hS%,hq38 AAR `W 1䌟+(S\bmEk3b^\ROtO\]0@@ ( 2O$% PƮ L i+*0M5+E|a/뫢IʪTe75GInگN'1vZS?H1Ǵٛjq;QHU|a(sB+)v]Ds)R53k]~+YvN'W]VuƕQ"QM5'.3/'hD{%V4T#A$Vi#RE@paMx~jgY-xӛlͺ kV:!κF9uъAHIj x0 5jo ^5fgKnk/ gyh.*0~hU{MAp*''LBTx-@: i(@q +jx)дTW$X7H w &J<ӷ>K6X!!P4Q"dJ-Q( `Z좀`gG8J `0i[ɹS|֪1qn/d)|MVKE(q{mZf[侸g|iVj]AiX7j,,i?$Ro5s0*- ?"H#H>RXV2Wɿ蚶DTKEȲEbuR]6'7K,zPi#h"4RhԸcCښAͨҩHɧxjtRj:1F:ʍ,CHNR>w4\6M-1ȣN-ϩnKidjkr8}?ԩyqf,o_ᛎv0*PEQ L 4^g$|{XV ; _]c'^ZeMvpqtw˨h]&Xĥشu9ʑbׯHԌvk|E514\ʎ}F%MyYr.D$Qd]FESS dcU+FG7J=L6ekaDX tL6^OJĚůORGim #DQD5,+i\5. O^5tΓ4f1EqXRVwW ΋r)l͆8ʗ4qY+Gd ;R(P Fr) d hE0flX"+਌QÒV̫ ;42b!Dɐ"!K *J_ VꚒDZȫ#+)1X]d D HP0 ŀi4I>=kLqOqKǒ)-YnVX[_isj>݉9\FS.OKkSY4*h֢6?ۍmگOfJܬEh"i}>@UL =˒QT4ƭQTV$ YVJ $@ &E5H %E0ʼdO8f&@GlJ5aAL eB`KY@R}" o:t PK@&erB+T@PDS0( 6ŗ.b>Hk9/+Q,i/QTʪ6%͛C(;f%RM0\tbK"91O>Py%2hxp.]s%@E0\ikr:a'Zj 'g)bY!XI/'OFteA+eyeYצsyiѨ1턦EʼnE[ԎVr[p֖bokXA5#je.׏L)FyEIc@ :.xd]x,ZkBE`^$ًGJJ¤]ye|FELI*HEJe(t\CCh  ,RVdg\8"Jm.BH,P*U4L 4R(w@5&P9XݠHD0 !@*lRӏK\VCOi("R.=DѢh>QjɈ( ((0Fr1jԭ=2/Լ9SVd'sVd5]$R?Ԭ\OSIgrzф\WkS,ix5"9uujr{Wqǫsl)RDSƘm&tF瑵ԦI/#C ji!Ů?fWu|/-آߵ29ϛ*PnjF-mxk[*dq$K]PH\|e,*iSU8'ĭ%("걶Y-VJ һTceqgF,uWFs䊴 %DWY(tEFU|Jh,JG<]6϶w1jfIYэc+5+6-rt XԼf-:CG2QҼG.?_lJ'HܔW,܈z1ZjLyys>]/u$9q>`2PtxJѐت*{"(KTES*С+F %LA]@+Xd O}ղ\jDva’VȎUPQDD-IPJiE@]ڦ_b}"(`;@ >GN-\ >9&.fɊnxn%.N)Wt:ŒyE'h]1ӺbIԱ_M8Fwf\TS1=$s+iqʗΚ}3C"JQipƩڸl.qP 7UkV4EYNI9X:k1yyͺVVJmhԈatkȁȔ3-ܙ7:EU'fB]C\9FtƑ67:fƨ* FѤaQR`٩j呚$Qׁ(:b XrHβaͫ˗!{SP1j# `~ ;@:4+\l ,9+DƠ"XE.AAOE|-L2h@ D)_I K $jDWF\Μwp[STMS@ @K%T4d&I*R̫TԈaA>|Nh@(€  `@Jm>(:d+U^bbt8*Q9^r^ > c,JF3cɆX>κߥƙùۚ{|Ir\YՉysOE'fzyIܬj?%}&R_ERV`{@0Ѿ$6$`@h"]hXV2*bp]0'fmXNTeF%ĩ~D+5jaE]X|n"- -2kk׋5ueЊ#M5 2IUqOaDEܤl^ /KڪHZ PC;DDA`@P O(t] w V r ihZ)ZR*- @_3Dv43b`@3Th hZE :At*(€Y*ľ(AtEg̙X#&e%=<5=1Iɬ/itOS.bBMAE?@`(@֧*wыs'r.y92I4j.i-VWM&b7IXOq] X|%T:)ET\dx&crcrĮO$VY1RcPhֱbJ0 VBAHhOb9{k&MSG V\-N촍qM&n=HqNKK mC4LYS^ yGƱ{z|.Ͳ,!] h(Nd1OJy3S=ٻ7LUIXŗ|#! UZ`7L DaBD,!\Fs| tgjѤP-iHȡμnY&ڋ;Ɋg%εX"DBkx6ASZ]cZ\h(Adqcha^rcj= GkhnV-EnM`k7ؑY y~j_I\gFH L,Te9>y&XYN7ٻ;hRth\$Aĭ#" R "5U,i)LX%юR31c)&5K$vbsB] jkQNIqj~(y_T _Jg"QIY29Z܈:X M5nWF"9t_L4|XZyK3O%HC S2 | [!#b#Gj&)R3J5.3\VipQ k# (H&0d/6r,\ $ r6 &hh Q *at"p|3S׋[ҙKyapF63C'/e REmᢀ()H $P+퐍M#jI7pmsS Md˕]=j365r/.wgMs!@Ap@YBD%i2$eMl 3kQƑVFFj27*6H:q$k؞24|¿Lׂj%8$_2e0dik)M|lR9BKgh2*4U|, 3-GY.N~|a:3"S2- 1I6L %$ZyfAʒ:"6C?sdT3C12V|ܛ,D٭"ܒA1_FaML۩]$yNY)h2џ=jzT=-6آL`P)&nhMٚfi%lbk5*6*5#/7L2@(2b 8R兑FkJƌK ^fGsfIPSL5Hh qdϪ*N"\kQ"CU9pAU 03d 4P|3RԍIN3\36 QhE aHe*rg̒-qJnLf#D Q]Q:J?OG"uec+)jp}tzZ}J\9]e+XLܩ_$x:Nam PD0QJ-KZקtmIp@5D3+ˬb^Ţľ +U4'jb}]0ErBSk-`Z*tk,GR[Fz'mEKTX!Ĩ] @ }J&J!KdTfT0:0%jt= :φ.$d&(DRQ&+9dI͗5D\qMQYm6_f*&KƖ4ӛeLg&TW jB `|[.&@auVL];DQa4(0'!r.&es#19tAJ$!F>B:D#|"[&ާ1T ze(ź֫e˱)[cJmvV+ϖOYW+H2S)"dpb4=0 rā<яrTGojrhQetp1#BjF.G;4eEc\O 33&TroW tj6~Eb_bןV1^^Eث,ɖ%dq|2^tN=kV^ vFKxvj#qL@Lu+%jVX5HW!cO>Z"#DOZF}h4Q%fY-Ѭtn{Һ!5Re/e|C.l-x,/,bј֛vMTTxeC#FRIɳ2 l !%% $<,z"|D>EDQ@: & ZCɯ!ُYpn]4K VE-Ȃ\0g,^IFrEyj/kXY%Vr$Hfvm5&*AT@Ҳ -t.4c||q8ѹY mwB\d*=}?giXe>3mC_XG֧O8i??@MM6kwk Gc.7W+.*?7*  ,, qBuZ9ZD) * H͊tVGv85"6*/qnH:3jf >ktU,!I$JGVꊊaV)}pn}bcv|*.3h͋c͋Y]k nta㋋d5\ &Kr3V4b**Q‚!)DP@0@\rIy/gǐuє.ܓ+)ԉv2,fQ ֣TbDE2 ̪C 4+h|ؗ2fZhIqHjxgQFIci@}b;|K7L+HL]֋Ϟ1]ʼWl*K+˂P|. *c#A@@Uqn7LZmL+ R#rK`Y$y.K:|"_@rjt9˖meͶ;Ha܉jft17)$ћ_KbVbtk1z<_D2]_(Is7QઍH],TgWS.6r4n/-S%V0QDҰɤ`*ՎfpFFF4䨻쀜@ܩOgI\*$!rG^(Q֣< y-Q,p>5J^,l,sgQs>L{.->Mʘ4|vfRfuo({~ md-oXͪ"iBnuKEVЇrkpω1}]c v(ӆI,V5DሆO@E@ȩvɶBDBa ʊH@:P((hA-C5@&FDRb!+H35elV Ф='Jmvebv"i+HL44@}LG}DIŌ|y.y[2|eR˱>G3#=DV_hDDk%E&QOVxWپj>Yn(wIY+-;W^['?Gdsps֛C76b鍣51iv0&-xy4| g.bdV'#"DfjHL̈́K\%a-o3kKl,F)ʔIjU发i#Z8:ˌGNxfg>G#ff#4]$s6dt7GK5MUZr V[O$\W |85ŏdtF$EQh\-AUJ6QdCpsNԮ}d# 'Q+ǖQgi3XhR}!x `bd P$L%6Tc'lU(@ t@'ɖ"P @,4ԭ1czHWbNHbӻm!N0y:<{mMtfn+Mn7C,M>9+5Vt7ND[ ͰdXTh qG.m:#&AjTeLiPR-Dn KT $ӓ-l vi*& Y.1%-c[(Ƒs @#T)2}cN*NO{s^qZk~.o"oҥr{X3Heh7kA OdkY7&iMcLR予ɷo%ViMGY=+RՋLkP3(Q,| r8\ڤ_ZlMƦpPjcJѾysh"k3pf,nW&ghNV% :dRmDqenLyZ,_.1F* ʣ1VU습"`ؒ5ji(77\"is \F'"jocwQ H" jAjpcFtU#Hr%Pf*Gο\b3V,Jі" LhUeBt8R!~lh `L 1i芯 MM"A R7MQohŧo x"X=-Q,iLdK92aq|3c.HN eExTr?/2 =t[RZ3HM#,QnXUB[yFsOz㲢b| be =0ɂXOb!GFE+Lf$VIv*XF- ڮ:7?X펂я+Z1;uFFEL@ilj:32-vbVY%?|]q5F?kZq#*ip'-G'ؼejjV'F,A׏%r3[Fi. VYũ9~1|&%peKi#c4O"JdU.Jm he)'5b8%vrdFmìJgrLcg6foj:q)Fԩ'b n%e#Q`tcƎv:O2а;TK}~~Ʃ. %VLYJUEeLT]vJ CI1ÎT?UɕZ*+eA-5.)!!ZXZYH#) G:9Fq`ɲK RǹO ؔYY9haiiM90&ŪbE@4 H* [l%)<.*5ȸdVX{91Y0a[4%OY\7/"?ÒJx;H{Ό-E:L+\2twXE"#Q)%hLEߣXO65¥1zZ:sYӢdfof,jWV9*圬]WMG Γkk]]ds2ThF ]ϪȸOfح>({ocmK]t0s^rŭbDJF2c1U=]qJɊPrcs']"vjC^^/'_I\2LJ3QRVH]ZݘѬhEʸ,C#(75HŁrMR\{Fy%|{Ѥ]ZDEVV0[LiQ`sb0kT:u+I>Kren06G[mLv2%9dU o/K ,`,ee@ɪ%%ȣ7l Q&h{J!hMM-&"$it+Ŏ( \WI$9f홪͑RA,XVlcZ3ŎZ.p+?ZN{0O3T/[tb][LJ$EFhL"ht2 Zy$n;KE,3tY129g6] 3ZD@ZDm& \8Q҇Oa]FDՕ-ɦU']cjV-pYɤK9gZKvN|޳E/'yr9۵0’1zjrZ@8;qV*"%h6TNGPlHS-]7Q}L*x Dj1yee Vt2>ִƹ9Z2KkȺ}:pÏ)kd]w6r붢᧊9ޫM %1^ 2Ksm\efc#RH޲&9js:Ti 5viR,@՗Y1).yY^fs:Jufg8ָ+fZ3k9HԌڒ@0.3././@LongLink0000000000000000000000000000016200000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imageanalyzer.qrcqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/resources/imag0000644000000000000000000000040412273255454032711 0ustar rootroot index.html images/mtRainier.jpg images/bellaCoola.jpg images/trees.jpg images/flower.jpg images/seaShell.jpg qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/0000755000000000000000000000000012247412261030576 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/src/0000755000000000000000000000000012273255454031375 5ustar rootroot././@LongLink0000000000000000000000000000017700000000000011572 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/src/webkit-bridge-imageanalyzer.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/src/webkit0000644000000000000000000001626612273255454032620 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/imageanalyzer \title The Webkit Bridge Tutorial - Hybrid Client Application \brief Demonstrates how to integrate web functionality with other core functionality. \ingroup webkit-widgetexamples In this example, we will show how to write a hybrid application using \l{The QtWebKit Bridge}{QtWebKit Bridge}, which distinguishes itself from a thin client in that it performs heavy calculations on the client side in C++, like a native application, but presents nothing more than a \c QWebView for its user interface, displaying web content written in HTML/JavaScript. The application uses QtConcurrent to distribute its work across as many CPU cores as are available from the system, so it can process each image in parallel. For the full reference documentation of QtWebKit hybrid development, see \l{qtwebkit-bridge.html}{The QtWebKit Bridge}. Initially, you will see a user interface with an empty list of images. Clicking on some of the images in the lower pane below adds them to the list view above, as shown in the screenshot below. \image webkit-imageanalyzer-screenshot.png Now, we can click on \b Analyze, and each image is analyzed using some computationally intensive C++ function, in parallel and on different cores. Progress is shown while the analysis is proceeding. \image webkit-imageanalyzer-progress.png and in the end, we will see something like this, where the average RGB values of each image are shown. \image webkit-imageanalyzer-complete.png The MainWindow is defined in C++, and creates a \l QNetworkDiskCache and a \l QWebView, and tells the \l QWebView to load the starting page, providing us with a user interface for the client. \snippet webkitwidgets/imageanalyzer/mainwindow.cpp MainWindow - constructor In this example, the sample content is addressed with the \tt qrc:/index.html URL. \tt qrc:/ indicates that the file is stored as a Qt resource (attached to the executable). In a real-world application, the content and images would likely be retrieved from the network rather than from resources. We wish to initialize an object reference in the JavaScript web page to point to our \tt ImageAnalyzer before any other scripts are run. To do this, we connect the \l{QWebFrame::}{javaScriptWindowObjectCleared()} signal to a slot which does the object creation and handoff to JavaScript. \snippet webkitwidgets/imageanalyzer/mainwindow.cpp MainWindow - addJSObject The ImageAnalyzer object is created and added to a JavaScript object on the web page's mainFrame with \c addToJavaScriptWindowObject(). The start page is resources/index.html. In one of its

regions, we have images, each with an \c onClick() handler that calls \c addImage(). \snippet webkitwidgets/imageanalyzer/resources/index.html sample images Clicking an image adds it to an images list. \snippet webkitwidgets/imageanalyzer/resources/index.html addImage The \b {Analyze} button at the bottom of the image list is clicked when we want to start the analysis: \snippet webkitwidgets/imageanalyzer/resources/index.html images list When the user clicks the \b {Analyze} button, \c analyzeImages() is called, another regular JavaScript method, shown below. Notice it assumes the \c imageAnalyzer object is already defined and initialized in JavaScript space, but we guaranteed that by connecting our setup slot to the appropriate signal, \l{QWebFrame::}{javaScriptWindowObjectCleared()}. \snippet webkitwidgets/imageanalyzer/resources/index.html analyzeImages The only methods on \c ImageAnalyzer that we can or do call from JavaScript are those which are exposed through \{The Meta-Object System}{Qt's MetaObject} system: \l{The Property System}{property} getter/setter methods, \c public \l {Signals & Slots}{signals and slots}, and other \l{Q_INVOKABLE}{Q_INVOKABLE} functions. \snippet webkitwidgets/imageanalyzer/imageanalyzer.h ImageAnalyzer - public interface \dots \snippet webkitwidgets/imageanalyzer/imageanalyzer.h ImageAnalyzer - private members Most of the members are set up in the constructor: \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - Constructor Back on the JavaScript side, we want to connect signals from this object to JavaScript functions on our web page, after the web page is loaded, but before the images are analyzed. From \c connectSlots(), we can see how to connect signals from the imageAnalyzer object to regular JavaScript functions, which can also behave like slots. We use this to monitor and display progress from the C++ side. \snippet webkitwidgets/imageanalyzer/resources/index.html connect slots The only public slot is \c startAnalysis(), called to place a list of URLs into the image analyzer's QtConcurrent processing queue from JavaScript space. \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - startAnalysis The images need to be loaded again now, which is why fetchURLs first checks the cache to see if we can save an extra network get. \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - fetchURLs For the images that were not in the cache, \c handleReply() will load them into a QImage when the data is ready. \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - handleReply After the images are loaded, they are queued up in preparation to be sent in a batch for analysis to a \l QFutureWatcher, which will distribute the processing across multiple threads and cores, depending on how many are available. \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - queueImage The function that gets performed on each image is \c averageRGB(), as specified in argument 2 to the \l{QtConcurrent::mapped()} function. Notice it repeats the same calculations 100 times on each pixel to keep the CPU very busy. This is done only for the purposes of the demo so that the analysis takes a noticeable time to complete. \snippet webkitwidgets/imageanalyzer/imageanalyzer.cpp ImageAnalyzer - averageRGB */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/0000755000000000000000000000000012273255454032053 5ustar rootroot././@LongLink0000000000000000000000000000020500000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/webkit-imageanalyzer-screenshot.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/web0000644000000000000000000226737212273255454032576 0ustar rootrootPNG  IHDRЭsBIT|dtEXtSoftwaregnome-screenshot> IDATxw|V>+;!@BNCوY*umujZ[GN먊{/ Q*{CHB!{={~BHA=/@wGXr }$܏d+$ R *Mg|Yr1fXbСC:tСC:tСC:tСClj#|N`9CE|?&n޵K+]auСC:tСC:tСC:tСĄ1`gǯS5X* RX,y>*A9DzR_;ҐrIV&U:41t>f9#*7*:,+CqRKRiRGoK 2n aI +{0: /yK=;GzjA4u;m:K`Q65xq h$IF#%&HBRXb,L&  i$h*!, t3K%6jBQ-MEq8KJ@q*حV'VTAh!0X)=RQEBaш: (pyx $0q:: UU]hb6;j+>}~}\S^xyl,9Çhyt8NL&Sw6[fddN^6Z5[ ę-$0! 奎!XV$x* dsMrN񼓑0l:KRiRGoK юy<%E6)M\:; !(6?c}VK R謼lY㷗WU\o!]X0H!.)Il\IIǻ  IPG먒eI1LȲk`4"4=YP54ME44EAQTŵn(*݁a8j؝TUpOfV%wXP4!\rWW/g1#k>X5XڝX4\wn{ň!$ )L\GWkIr1~D\+7𾫯79a3gӲU;{~9{&ndfz>e!8epͣ!p'\y"gxyN(L\I5j]Nk 4{rc%:z#~NtԘ kHV99X^<0ֺ:61-'T}8!#-ut=)/çl@bw۾owv dYCFvUUL;HZZ456"ehh0`01LM&& rddHQU#WSUTUpt:Qݎépq8(N>&ZQבЊi562(+rHC$W ~`Ry#ͅHĔ|t#S2fhĥP*{vRՏ )F3|Z׮Nō'g,&ŗC5es0ex>_0d *+ۭwa 66(:tA Gw(~{}hnifᨚN?h/ 1iE ar^*0iP\}?gӑ?8z(wa5hBp.'kηב֗;ﺋ|԰i !eS$[ Zu?ʥs'׮Y;nz[K hF}3foBGFWp:\ (*r 8 ]TTHLL oxrO{X#L>:K9sOaw|Oby8c$h:OP$,^ܶ7X6D~Y8ۑSdHwPZɫ|,d gb-w{t^v"k`$yt$WfC9cqn7pyo?@O3ؚ=^.k{J`ysOhvbSohu"$P_.[^·ނ>oIyNŎt4F1!w l֖ c H$K{&=fbAUT4EŨhDU$YrU$IoiB 4u?ġ8qq:Gh*jv,:#Bow~5+x_|/⢑7Ҧ2#4F\.e}*mUNN.>EA#6esDq/,u&~KAYvl&N (Ul7?ϣøf(UVP "33ܶu„eNYY9FC ϲ\CǞD:ZDk >xOAA Id/DSv7}s̄8S4xjg%u#'bL-bv%wo?L]#Z^lՎ2&/c|"'NHù}kٸߐ7޿?k׮uT^1xO \GZ^ f_ v$5dm#KfdU+)d - Lέ}=2[~=ģ=0%IsN6Jen]ɩ̹,x˱uNH֬fkY@Y[W"7n)ÓL:G;9d\u!&e邩P`#:b2쳘r6I]S֗r9.d1 MmkyT8\"fLa+m!+Cp;nEѯ"Z7|WRG{8(> _odODE4<_|#hÜ8!y)'1wq}O6;^gbKX[篮 Ja"'2#[E \څю eyx&\zSǺTʱ!_̘\ ?yG \u)< kf:ƘW))ÇFɎ~ מ2 :?v]81y:֔Sq=KظPS$. yͭG?2۹&/_x/f@ɩ̸>4AGO Ed9$ϻl]?|z-U!>>a#뵨J//j:c1Uoy5xʹHH1bXMiJݷ+N3~+k1Q$,5Ie7_ 5>3O2lyug;|0qŜ]jЬT6xC81$e9\DZ~<{N&y~778*^/G$w`2-*2M̂'a}ހ4$\k |?oKasj~}VaqrXyI)'(I-rHJCDwpܳg7qqߞ=;^hD%,PϿWh!9}0fUwLe+͝=sT ait_P:D‰Ki'+ǩ DjǑdGM!Ym \څю eWyY&6 Y86rrOjyMxqgwM$<>yq-5X_1Qnoc:$/õgLE±zND^Fn5%c fo^~- 5g3ՎPWr< ?y1\wEc.{נ8Ǫլ.ɩ)Ŕ[Z\@J4fj,Zv!@:D2 #QVOv$X\yK[V^zo;v4-r")q$ Au`iƃHJYI98rG 4ASsTWА5|\-WaEP.~~jqO/`i2;y1m]tcz+}̯^Si% bԘ$Jĩ9c> dPsJ[!>k*g^q-Msy^t3GZμ^. ˚܇#a (ς {=!+Ӷԝ&y {L KvPҏ}{>΍+hV$q7td>GֿY*2CfrurfN|pTUvT48; \u4iRii^^J-;FW{ih W;V2%{܏*]>"fo_^7Ż)?(7m23bɅ[Ɗeegn~o.eW+8RH=fп|29CEX@c^52[٩./YYQl >lc=9!fǤ*W~{kP9BŇYL}"y6oČoK~L~ыlj"\C"#O_9sƐ'QU&';.a[y'@Wq_}8,nDg!6xO׸tl(ޑ-\ABN$S?&}.gNJJcYjhg'qO,i-!-o|G^AC8&b q<:O/'1nZ&+9duM&F,O(#[*-(|уñy#&:WB)pтdKgχPCirқC _Ƶ*yA6Gr3]q _z/&|Fpﮡxz4$/tg51¸+g3OJf_׶@ۃa,Zf5}“nx8Ƅ+,V4¸6΃mc_tFq<01aL0ꪻa >^bw[>6yR3yaK 梊bGN:C 7gö%r"9dN2Jٛu#eITf$s<D+lڟ 䍯cG␵?v.fl惆Ty2 'ZOZ_W\PO~E3 猤\?#^Wɗ'ɼ7Ew%c3`46zBIHeW|!Zc!Y[y2g#eōY,=9eQ1o =%YpA94[˽;ʹri6<ːizet5/V͗9g]$P IIQm8\9~ȓe ƅ,IHUi^TPT)wt9W6wXxք/Kkr4 -\pVѵ⛝L8!s|͞F[03fj=+|ιnU^#\], IDAT/)ngrOQ"4vȐ-m>=Ԍw\p2%4ab7p\r+ӗ0=g><9ܡT|b1jBݜI쟞' h/*gi\b.,~lEh»Yp4S$FN˥ϑ:ȫ:b+9DK}ut IUTUTPٽFx#K<;.?#i;6-,j )y{Ow40}qwa@&6= ?^v>tً(X~ \K.gG,'σ)L\D|](mX%ZbH4w:kqBAXpI ރ (3z7#epec#΋,yz 'Y}5M3rrBߦxbTUwˆF.bN=rK1$;d!>1~%cwx8RXT ^AĔkobv uMM esNN .:Ulxg69ql.Oeih!̘ܼZ n%>i3;fuV?ƕ-$'Pk+itjhj#e 0q\.TSH<$8!1)0F嚿’˵n'gWp;vGa=cEϫn(>5شtdfȢt;V0&vXV $YFD7k,ϣdc+xO$2,ˮ$o[t)c[&ED;z'/ !he)6|[RFLg@P:%HjDӾnnĉT⑭~SG3}}Ӣj E.dJm`;2BT+;]9Jwa2pչcUۀԗFL@F#'Un\x)^鷚?~YK<]=*{]vmPHp-Zڰ>?Rg|vqWǏѕ"ZhD,:~zՕQ׻w0xDe1fDݥt, µ0vڀmc/:c ]k>юicXuvxa#%H 7ȻݶːȊ&µsRl# uf-a.h)R9M'/ ]r7>:183oFԼc܋֌>Z$b)1ضFZiLʐX'Ż˱i-MPemnNڅD[29rlziC]̳xՇȼh['pj6}1ϕI>뇎1N7'qOGgg0[Tw Cyx-gxCԖ6-RgIq9Ac) IIHC@EB\AVQ%Y3` . өVy2 (•g7T]ۘ=D!\w ;NI&wr"Ѧ! $s7o~RX9VdjEH 9أ_Ď;3>҄'2wKebwZ+ص'ȫIaS4RL:#bGxN_jW=+prr /85;%SZBWc% hq ke)Ap6{)zI 9}0loZF_x)Mfwv:qd7[v_8O'zlbLCC)))464L].(xqOѩ|mܸӦ"'YY3omg3Hl[+*xrn69RlBg &U7\Ծ6Кi!~7ɔB8nF$+G w a4fMZײI[y{U=co|KN M+'O P Ԏ65GeA$7CKo0oMx&Gu@X!\b60-5l:}5S2TJsݸaH@ T`%d G잲G#ϼ%/Nwop8r{v.K&$f ?IhhHHH $2"2,܃iYh0`41 H=Z$=A3jce]A7ÞJTcUյ\s]Ƌtbm+-G%a۱~5CM[Ԙt``ﳽu;9s%^1"x-h_Ua7o)a sƘ9F1D@eé"@l6;N^}:fdPٜpޫJ:(C46s[)6chp& a+iyT[9;d`8aqA$*ۨsHL&'#͊JK(U+ K ;_o6|H̝;~C|OPףּA48fB4773hP6Ŵ4a24Mpm;:@.Ug~JMs3alooOsV:!=>G$N-72?d.dpǑAF]:2Uo7r߂v1o6kx9`@Y f.t<r(y xK8s,qdZm݇85;#ˣvKˡ:@2@kq)uV;Jl_2b]ތUFy6!쒓_Ff=JryG_&$3rbιC|z3.m$%UovrDr4un[;i<]]ٸۂk 4ZV,(a]:㕛7WՉmJB9(̱"#kc(ZɞV=xe5JN2#23gFcw|bw'/25CvE?h::Oq`ّi?f^~c2_}2)i !0k(6C:ce`\֜D>gڏ˦X<. mK5Pb3rPȤzm4g]%R_M+{Hݵ8xaZǜ S"N6 ۘ(RhҎIl{X[xWO8Obl=Vad<C͡ '/][3;[UEcQ؇6?ǯ789W7+( jX'*1\v2][8sR /lTW>J߻j>n y>تX46+ "5 =5-Ǽ/f1e ˷`a[BJ)@T;]g)11hu|4=6 &!IxBu{WHMC\ǿHMF2A1 F&9G1nx"23(+G4ػs'CAHmZvyV|]a4Qs˛k_en'#R'AK9[8#< Xe7>hhhn؀p12&qm!q |Gv ɃoQr NDEwV}Ep!I`H s™\=l}l=*cpv.`9/ pW6HU 15A,n3&u>˕+KԴTV %s9'lZ~mx1Lw0m@,$S`")&%H^VxzeU<)$Bݟ8YyU`~74}3@z2,@yΓҒR\kϫ"qĝ;m0oơ)ƈ s83MCi,F9}1[`pbHH`F5/V4f2]]Ɩ>+|'pSi~<5| xn:Hm;ʑ£)#?O^{Slce o@wp:e7t$v(ϸ`LAjpFs]g,[ўƬH:w_pcN'-[!{;JA{6?a?=y~RFĄASUc+w"dZFm~6l- oG䷫Г1O!׫Ϟ b31Yq}ҕ4YSиuŶ0<${hzVh gFIf]&E )1ߖe2IrFUq%gr+9\r%0 f3 ,<,|m̝#e5л83k Y9__³$>.р`@2Ȓkkh PKx Z&ChIB ۶h.$3i8םt/qdM)34yѰc%8cD1 ֕jvvQ)b)ZkFFm+ 9WI?L-椄tx9P&1jt*^/cG&Pn1Q#Q+S 9̊׳Ô&IQ8=yԑBvJ}{$ #&fmVZVhk܌d`0BQ GtCőGhz<߾Ҡ*j5XEi &$#IFbM`oEYReǙ>lC{wsVkoѤ/L=;Lt@%7N=A[wT]s\2%+ťYYdy _\w~v;k֬ //m6;W]u5^{-6KY=LCKsϊoaWOdϜ(oɧʺ2ƒ?GVrvTeqÏBhd=>S+kGW?ȶ&h+`6-eNFвCΙMWP1As( ;ק-4:Q]DD!?Bط?}yhqrEӼdDhRQ=Z#3}Y0YÇ tC^9r{(tZG0Z}KF,+.2lwt9NL^vΚDLH.LIx>LkG睲!\p\ h׵hͷžAU4 F$[8G =.4GSF5Ua2,>NsQ!4N]0֭81y-J$'|XTf|WtSff ,C'1Hj繺_vAώyNeToHd KM;E}:v:Q?!1'H/_w]vvو~6s2C˼3vj,/y˞Rػ"UJ=!#gy A ySiá8q(NNڅ :M^ٌSQܝuj"Ė܎YY0Ff3fL+$5-5r!.!r /X+/w~QQPN` K%O9G4k!r"ΪD~KYֿYt5JhoJ]3^a2t Wfp1UMLNZ8Tq~0uL)7y^z]J8_nw6uVZ[$ ݎTPo@l6ahkm!a#<]G~,nd'yRtf OEn*fꠉ)7TD IDAT: \XQCCTpT̾ (Vشs60綟qjIą ӹR *oWO"Q)e2o=څ62 C[-mә5do_Gad$ɴ7Ⱥh B7L >6d+85/_؈=*1߅~1)e2矞>ʓVMiS6~-q糕̹Q89oc3?|g4ha?9mLOaƒ<ƦF$_t͛fc** )'č]ð㾗yn<ɸl澌=} S+iH_;zDAFҚޚf,}Ě81 =--7/LY>fr);ylmM@/C9~LNˎ8dQ'N"#ng+mi=o6U8Lb'rœ|-5:JBw$ay51ӯN䡗YYz`]c~ώm~](tͳsNֹ\<1>#]T_ x"wlw'x أ@^b}Dۭ5(BXbj) f|EDp׾W.8Cz3BSSѣxg1 n: LC(Vnm=8U,57^`R<c2xp޹̣K[i=KGP|˪ʐ-:?\`:( [>-& eoc obt?ŭV=*λ,Q_ZoA-;~レοɛXۇ;78^pTY~ _ŝ[U٫yb]/w~(g"$=]O =_^8Z20 }P|>/bFB0%k4tb|0vܸ>~&替~oO=dN\ ^W&w)I̽VvyV2횱6&X8D&1˹se5͸yXa3Gp1L~~,~q~E@dso]{ƲM4xTFϼ~k`'}_ I+7&K w2A?XS<Z 7-XF;Dv >)> p_ W w+_V<3Wطq-\/`s*tR0ͧwm+<{t}1_ +H\qU|\:j{zUzy{+W ɥ0mSlm [Lg8\iGX}O6e.܉^???~9`<}xvJ%3\d ZJ'ߥGw~a1Y,xvk"~s2My :>^φUG+5 C+xX!^ ӓ_^yǂV4sn}fj+P\R֕`0/av, yI_2P<3{Y:Rgtkh]9Y{9=Sko3i*-a}}9@J$IS9e$GFo_ZI*ߑ| *^v^jvcϭw|GtN2bkq FF[qҏ~R]>_22>Yv ?%=[T$-ON*j*f"2:X=̞?tʋ/x8K(925k/ruY7 0xI$%'c=օdLL7JA}}#&Nh6+c3>J^'>;.Q&**K ( ya~*gOfJn\j3nRҲtZ]o=-$H&kN~>qd gf3/?8n sɠ3ce> 0|pA0Q5kD37TLHNI~E_Dl ^_p_/ Rp9w.|~ex <_~gn垣~93KtˈjNZO=~<bbbΛ'pYiߞq4>a0R[Js̄+L﨟,{oAy\?v-g׊  ,9Y >@zؽ};ir`{o.8n| χOPu>[+l(w'FvЅٵw.S@NL0knhC2hX+lS;=};cǎg? ;;32{]|'7?s?7r3ezd-'77iݏJx/c"id9ٶ'-mc|Su#,*bwx9A/9Vv9¦(,<رׄrrsNuu_Lrdrr/ lIeg {r΅_~y$_Us/9=~<N'wZ°'pĩG>1CArRr |eg |;/Bݞ*!PT ßU]b 4TUESUv-Z]ɡƒ8m i2cU%ihmrL+">z|6h*& "(pt(wa߇^J '_~ѰfnJ [֖1 S/\~{瑜4~989!/3s("> u4[^:usþaS떒űҷmJ0B5&XUE K Vf#&&v[ lk^dςV nÇ9eɧ0M8 혦nYxnU {eZh&]-TSC7P$laaǑ^ΫV(I8E0 ^f8-w _2i=^zɁLӤ սO$'_ٯ$]9򋃯Uw:b.|"d("e_79G9Vd3Ltܜ~=?;a -%C9^*-6@ KV5 a~V_ jYlh6 .iOƹ^>CoɸuF"#"c&iinYRU.r^x9l^/>UUE1oS(F'/'nM\|1bH!n v#>l/%CбRIPAKPDKPDKPDKPDKPCIPDKPD@ȸE]C=>]VMPTNTt4QQ$&&A5 4yb` )/-#:&,<^/%lްCA wʬ;:fnkm˯Wۍa蘆b+n 3-#䱓RI^^>b&HN$111%X9}+ 2BeEw/%CбRIPAKPDKPDKPDKPDKPCIPDKPD@6(ζ~G~Bl%*:{6q D@~ĎmQh66,9˯,3:O>זc7gATl1clV}/BvVFY۷<H ѿɠ 99rH$D"H$D"H$dBmf! @QU4Ue躎Eu.&Uu&&NiC5 !Xt xi"W_ Q9Y3Qm6:/$wjEhD"H$D"H$D"H$D( ~GQjB`jY*G(50||n47#`1̘=CB1vGk+wp\@QZE Zw6u~D"H$D"H$D"H$D"쨡B,Bc_CBkP8U 5=χd5Gw'!!̜& Zvc#3i确SPT(( ݈a )K$D"H$D"H$D"H$/ OEQ1MUUTsPղGD: ,?fciyWkoou( Lڛn #+KلDFEY1UrC D"H$D"H$D"H$D"DЀ++L#_Q0t4LΣicogYWR PP˝Ge6oD"H$D"H$D"H$D"9Q Y܋` a!@U,A0 b+&{X.g/[5kAjkztz̳gصyk8Πlɿ-MS=YDjFD"H$D"H$D"H$D"9-;kiZ. EQcqv`H.9KN`=TU!1k`:qCEaڵV>B0~ʤ4 !U:`zivB=i|@WUUp`!֖]D"H$D"H$D"9ᨪJLlF%;'_VD"y!0$o?ZvHJXsE2!V/?bFM\\V yFf̞cnā=4ujH`l!"p8u@N]m b¤H$D"H$D"H$ 4Lk)*܏ͦ٧zD"Hʱ>kM-EU9n-ih*v٠Ů_xڱZ6_k/.GQ牊bҔ)] ( ~1% _z?pWmނn膁a(~7`kCX[ w)q67S} }N/EESOv4E! B`ޝp*WQfϟ={ػsOVCFf&>RlD z <h+ʎ͛}>Lðbt]EQ<Ծ\ɛB֥0hmi!%%uҗH$D"H$D"H$Lm>/[%D_ OK .]Nei ȏSV|wD&_u먪B64n u<V~ȹ]Al W5^|DFD/0@?E 9ǔira&40KA B޵8m;ɚ3()rp+ijn-H$D"H$D"H$z).. ??c8:VM|C5\>h;鱜=%MU٣8, [uvqk(q&e^EE3M@ţ$D"H+KRXR+ļfMgm{^5=V{?m #Fd#Lъ(L85Mu{?޿MK6j r\$+XQAU˺/u>|}/^D| k-7rXAEA1MP͘xG?&./寢(464ott]G 0i \%ZRMѭZ({nr/FC91Ԭ_ .bjjjhkk 66LFAtt .D"H$D"H$D"j=z"""cذa_ޭ~nq9N]3htiuLȍ1xbp)ZC.w*jf*NFe3/y,4E( )K$MLHgt.<nˁF.J~}LN:>dG?< a vn1Lң5jZos_@LFˤZ.C?^SX+&*[0 ˯@~a6e^ͷ͜ h!]r1.u)xy] џue IDAT҂YB`EQtHwiia;Țu*16|GP"i9XD}NX~BEE}$%%1j(rssϧ?> IMl/s20{N"=|W/%w^*1|u-T=gfݍW,ɀ`:(^!71oR%D"H$c--- UqjtIdt6ۼT6xhjiӘ7&imzǺުuvטi켸5~" Q0U"Xmo͇ZD"9Y3q5S⦯E_~SGy<6Yqf$Q0*fColhmH#NJb Hic-\V|,%7L `a%0 0,K\-7t}C0s/++3 Yefhbovj<^/>]ǧWWl-!UXBQOH:8ܕbRqSiKgKyy9vbL2EQ8tTWWMҷlrl"d.wN*~Dh.{i|vI{z)?Mk('tFvՀ}07_}L'{vQX}&<4TTPFkYs :eD=RBU~x;cPD"H$D"`III Bcck ;H~Z,Q;W6eFTRV$)&ngI`Sld&EzMT 6)^>U2 2Y"ܴ:|0gm\o)S3=Wd|~# s>5B;7&#Qlޚ|Mx$$IHi yoPxOywŠEE*߰֒P:B @7tx RR2mZp~8eUEK;gx<>0M:ٲ\@[ux6|'˓4 ʟqQDge)߅(v0'2}XMu֭[Y`!5jZ] 61ʄD],e >ɣSR"H$;HW#8Z[KBc>OĈ#HJJs[?]~L0#y|Y];gMM/1{]z_s3EyC|STrщQ`eæ|;Yx SlvZE5u5ۥ~~7φatEUxOsp(n)i|;pwx^׃E7Mt<ڿLS!^n-g]>G"H$D"H$j4M#11FEfko7ni:DUUՀPH^Z,/NfqEP?ɩ#RBPխrRTĨnhiI6q0|)]'VU;؊tgՀ+atQVRʲ/$9%o_hjl:GpP4 Ա߀ TuoAs.ۋ֌0lv ?:4S0Q@&(P%rvڠ/TTTIMM 9rUUUL>},mZjJLj:h^ظ&/D$1i| iN*v~=4zjT: 2:Q>[퇩w ő7\G5^ zE&0uiLΌDy6ő=a.fb ] [K&Ϛä(k;@Oa WmdaԳs̺YYsWp [w9i֠;ē?`YXo(w$Y'Pg//p-y"W> ^S6Ul2A#k)\u0(-<-w:ƧDNZT"uW=Č_Ƃ)؁ {/} 0شG&`#&)ܣ}^krx9֍f >Z-3‰qaZ%WmشBT͟Č`\ez\&Z\6g̑ ۅoˁ9\xDh`kopp\17-xNxSOTb22@nL[<æ.`Ѵl,^ ܵM{XcA\r.aZFOmwcd&q3H 8{+;ˎd̲Xi-kzDb65uH$D"H$/'i}:ѻ1M?WaI4ziry.79}*[vB@nJOe?2slx>ՙ5<_$?'h0lg#1;RԒȸ3fRj:q5TĮ0ѧb\Vt^.joawaMJ1I錘qa0ۨܽEU8t<ϘŨTK" ]vh)ccIOO')1݆FBBG&aC#J$ ˺IϚO{/:$Utocn"njaν?E*(̽g|_PXT(v^lBz§=HEiS/ڶ i XޚD` x}((֍ٿ{7 N_̢Kp~w:ZZߦ ׋4 (4\a^UUuv@@=Qɫb?FQ fX?A+@>j7v{Ȟ<9|uXF/"D҇>cWq-HU0Z*9WE#qDX3IRa1uy()$\Hˆb)gP-VG_ia4ثLܥ,n-zuH?ޤ` ʆDFϜ)6[Xc6g_ɂL-.S2=3r`ZAڦ18 `'mD:jISIWAhEKMZv\Ӱs%kdOĴh۷se}ݾGb7 =՛[vY,H$ɉhH쑑DFFTEo>DFFanՅ{KoA\j 4qځ}.fdPv70߱w&$GIǃMS%M%ÿ!A'Ӵ3+G?iǎE4 (+)}޾va:^}a UǠ+: Š" #TZU.ӊ`|(FȋSۡ"BW1{Sq 455uf:p0rH233immqp㐛YX8%Zϊha9ՁclJKY8% JD?:;V0lBKX<-{ )*ǁH䒙fһ+"9aihJ[E7 ˴2)Q4|-QA3 OmL>+{i̳ b[(} M:}huI$%%[7-f:~7_kӘiR|F 0hyd6G\čÂ5I\xzzV**0uIܱyro'~mD% 6\$+d_4cjp1Y3UCWҎXJ\d.N^\׫(lll fF63u/^OcDR.s$;5~$v C=+[13QQzl_%"YUƶ&޷18H ȬѤ+rńX_eM )s҈c ̾x&YJ syiat7KzM߿&H$D"H$_NTUeTWWsk&%%%DEE֘&33K. ztiShqPaaV{ ٜye靗9:j'M`DZT1)c-[ٰMNt%UL~V${qyM_ya=hc/.5v=,j$NM७;- ,PEڅZ{OM϶S=N I,~w:mhV6:X, KOdtRhj1˄٬I[qTFD'0ۣ#ױIZA":G--f9kBj쫪ia1fY9Cpul4qox7tNu(.H$C xd$esW%$'g:p9(.aV7cF3z\711z~C[ٿ~=ņCZtݲ$5tvB(~3I$B`!@hXo EET%QzeU5 S׭ a VEjKP])h6 çaW:u%S}ҧDw8Q_ {1})g&H;Z rrrhll$'''ݶL:]v͛Ƞ'q|i3+["%*s&;v[;}2ΛV0TTra|e}vZ-ǰ6?Lsb(;heZLKp 4\f (» !3Gtݟney0c z9KTzT2 abvV_nl1H% ٨SAFyޅMWFvjƱ]7D"H$D"X^{29\W]u/9r\{3ol*ۊIrt$KVQPc{i!Od'l?<5c *z^WSїۗ^V}HCCuLSvXDJ$FƺV1Lݍ?[{Dn9g019T2VEw5%H$C[ꖹ IDAT<^_CJdta vz5aRUAM .P0K[ 4螞-"&1L}k'vY f0r3F;<_v5c˟DfX7c2l\oj_%5a10FdOb)bekfOf[7Ut \f'ؾ}0jR\DSDҏMMFv*Ks3Gh1ΈAŤ)L>Z\ ~ݸW_{jĂQ$l;BuÙmDr@i"4R4PulhRԵꍔV{R{DXGq\|DUK{OocN<nLOr}^s,c\?D?Ys'S`E?KO)4FpƼbBգ8D"H$Drt: eXavnrn&馛cSygk5. ?-ί_ۏG'DMZL lDCwY: l$݉ͣR\grxQ<.Vb޽qw^233wuwfzͥRI ҫJQ'* R'(V"*D&H"Ihi\.+3vw#qٙΆ}ub->}3.3-uvQ֪LPmO}nWl$S?C6U^Z Րxsmʪ(CGT@jxO&*L+-ٮ,4aP 4/뫘0so}~-<^4/D?6^51˸Y5`>0C8 s<:gof}beCiT}1NX{s/Q ;.o4qi3~x {򹣇򥋿9_Cc`%K3^pa֕8rږj|N:bОa; պ#?}#%>XWn}M{}/>.?F<^v׳xzG̤oM¢^!D]y)/=aTFyWKd,|b{0nc*3eLwκͮnظlw؁¿_͸gx6j&O0#P;k6/PPj8SWqk4w40v d,鰅70 ~x=[n}{woџF S5Gq{x,5 |Aϸ]rظ43!) 5뙇Yok}*\~ƅ;ۛ3ݜQݽ8{UGGT*MpڵXԄyާrРA|{ߣOkiW̡#Khe =dcG6{WwS"uTʇE푷2HWdCb”! G^L9CNgGsamOT2jL$}j6k!7gƩ̪_rE?䎬OӸ(+|#^?;4fBz?? f\R>x*sw59L{έ:?\5_;V6WU_n#-WqE~=:#^ ~O7_p%*ߩߘݾn3Ukd3~ǩUsrx–WXRJBDж5^4m!fi:c'dikħߔC8(xg0EyyXzT55eFlx}azX7W˘IxvF'U8YnrT8O(w?gq9~ 妜!|#zUF1û3?8-Ƨ`Ψ0dY^ 2CL?Ɯw3/SO_:e6}3n2vI\;a3§q+̘zlxUZɿ1hc9ltŦG+t}/> }""""""=0<:;;yשbر" 0j(! 9Xߑ!X{ɡs2vY܄L3WR,"*v,d7UѺL/(Ú, #{VŌC+yX`od+0l M135>YH c3Дn1 ~ f3΃T5;OYynM]fϊxqѓ<SN݈i DD1{M#8GZ _`a =͍7cgm4v̮eq*UNJ8X|9aإc`[[k׮< R=wd=/kxmUAHuYk9`LHoKګ8C|o BǒNzRUUMaO8x>Su;{*<"F]0qiw p xҴ~BDt߽|Ca,/7W5~>G&Ο^e>5Θͷ5krđGAYY]t??IlT*ʅ|Exi}L\śG@su`p.* j_Wpo=CGzNӄ٠ho0%U^~u^kbo8f̘3RndɼܷSG qO{1|`ކEٕ,x$g`Z9ẅ́,z]8ϖ^]6%d—xQ_S\˫>OKxi'*u::ɰGXP6F)y?20dȐ[ǁ9 |v{GsqdȦ*({;/~G:Sp!^C66UrL/ͥj,귵[;?@z>cYlön;*yչۦFS<00|K9'M>bftQSYEk[[ԇ:EGεtNv-^z-L.aJԵt.3ų4۰e3 f9TOڛ_[>[y69DzY*inb'~צG*m+K+^!xu~4?),׷V2j\;5\WޅliuoS\+_a΢lZ0~Ncy[P9p9dWz-""""""[SMGlXڻei]:^_K{ց)vxf>ɓwgߢtZ@ xT6o]':6䗧i׏jx0pv/fw#֨s8- Z8UG=^ q@ќ\ŭ|9}ZMMlNMA-Cl@09M6['4~2߷WZ^uC^VyU5~&fٰammagUU^DƘrApIEpD] d'0F8D!n;[k1s}mn^pUcJVBq],{ި0`f<}UDD-t~ѯ߻sh{Ujd_cL|ވ,%FCgJ [3Q\-ٱ`1O)"""""""""""""8-<輦"ޢ%50P)T^RšhqȚUv_o-m7Cs)Pɒ_ǥ""""""""""""""]פɅ=0V?ōҷI2§rIXgwٱ{y$$kx[ww_MS2$x.JE =wr""""""""""""">vs]Ʃ&3~h#i|L* ~0~*?oOaRe/|}S*;΂8g! q60dA6,. Fm 3͵\y<~iy|$.| YDDDDDDDDDDDDD䝗*lq5><9|Lh O*m4~x)g1v c97J}g~a,y`0I®c$᯳ATl qamZa%lH2*'͓WU<}qGx65#"""""""""""""]z}|csׯ[󨬪߀&jksÒ5c}Gt};Ƙ8q(YkBpبų I!%G;gׅWp8&AtZ6 5z uHwJrÞ)ֲxB3v< dXv +W.b0Wavf-6nqoEDDDDDDDDDDDD0S)u D*]{~?m+*y`<gJ*o! ~rܶs( YI J➯|𷷪_"""""""""""""(- w[cLQ]ܲv޵˱ U kϚU+HPq>j(C `4a!?. ь`)1ϏnM8:.wBgCQao,. *ð7.Z Q _L٨-tOoOտmioBl8 -UUE^~iӦѿ)}ıp$h|W{.& ÂY|(vy>ƋY/_cp8 qq{0wkms a C¸78SRk NW4.Tk*^իW3d֬YL>={^ԁ9(zspQ/8f<., z{<+kL t(PuqamCsIYA6C~>z؈Q,+gulIq>. yùjK|ѣ9=-]_jkXfmь探MEa5Grm{*^lɅDS|I[9 `qPѸt&$笮R+"""""""""""""Z:;;ٸ зP*9Pƥ1 3p5 t0MRE'_I$T' 6(u.i7w9Mme]F6nl k ϱa0}jkk?a"O*E7 0 QS_>Vvwt踦OuwUoa kuIh+̶p˹}׵l.uc..uםav6!CPQY = o*{w.I=# W7l%M'iiow-?oת_8y_W4~uɛ,HK]V^EDDDDDDDDDDDDDj6lhU'nr1x!. H3n?{!uPBW$1I51m}/nc9|cp-8Z?o YkClha@ : Cu0^YjRasq{k5|q~-~,""""""""""""""o]:R# v'ւsِZ@}Tꡅt@PVIRiT/EU}?l*nc 6Fm C 60!Ɔl͂ dqAfqaB\% Ya&/O5s |.j,"""""""""""""l0d2L:T*qkp8˘1cX4.HB0y)63x~z`cPxdug6kAXla0[ AZ\@hqaqa6Qhl3jʊci;t_f]IҜ3aNQJ4 9p03摪&Lj`byT69>1=?m`nˀù0՛(ADl (Q윅0Q \luQHmQi ĭK?sEDDDDDDDDDDDDD%Z lm.WaH?<_ͧu#ax8Bg0|_0^t_Yب"7 q6 zg WKf |}Cg 86I:=zCo\: XDDDDDDDDDDDd[m͟ i4LO$!4q׻}9iDMײ|r>7#Id9\>}pD* wh}8f.{Z?Iu[2|ˊ?3-xw]u[jN7c`L8=tkTjƱvCE'3{a7ov&qr6u .ȶ,n~0?+Gsޞxkݱ?S98˟`8oǚ;S}T Q6_Ǯg|5 sJ{FN<?ӦRbm6>?/MŜ~0{^w#wPVQK˙|Q*9G엗 pl\~'RMNwƳ癠$X{SgTz˝ekWr>HiS1Mgk2PwTbᵰ+4|(9~-G 7{MqLѹg `=%t5s{RY;Fj?/e72#8sYf r/vcpkǟa"ƿ<~Kfg,xQMcc0QɬQq.l<<ÏVϋU8 6E<7 bxfo6'mZ=\Лra< 8 bظ:<檁 as`-7Bl6xúk\vv <ڟ/~2ِb1aէS6tQe]n¦k7x:zGr7n?À> ϹW=*ƄnWp)Z2/ OG[bޗ.dU#̶Fkg++W=o|;\{u7/7~ۿ}-SΥ?I=˾ s.w_3#[i\SŜ?JkĐeo|_o*YKkeێuKj;i;Tx~֮qr9y:Z'׿Y-8+7n['vx>.Eю$s {1 X49 ZX7Z̥rM⡻ѵ,Gk@&[ W\ɺuIKh1q-༸E3/wpC27 rѼ^kmI0BuQ8\PK&-QrƄ!Y\G/տD<jmmYtggeo(#({I~ wX\޾7W{ 1\~Foܰ~>o*9dzmTG+F>:i(?{U=Ke. Veg˸uo~_sul0Wa]h8̿+3r1JCeO򁹛|a/*Їg&lG{e@ӡ|k_WYc쵫tT~pCN TK?p3Zz^f-l6Ta}q̒+>؏kPe`9xitg#W>~>,q?3h2W[9|b-oݸhL»}tݨz> {yeS'[s|ܼ񁏍%]J`C7 Wٱgy*u)o"3/&t"r+8~4U/2ugR}~fnv%nze+|O,YBv@%dŴɔsK3v+ӿ1v_OUv]K)Z35>VZ:نaubq#\ڷَ<إ?uuN~ߎ;t*oia Oz̘اm}z0sϪ}mFٜ9 ZΎ 5]!+;>j3diu^1Q#)P׵ZL8'/1:LxL,\Iӯ8xӐ;!F'cK(uuo(/xٵ7rcMqܤ)|r'9sĜmk|K9[_aײ>\k)U4wI gj*3/ݿ)}&y[~Au~v`ƈؙ#k)qM93<ْB8fWhVn_g8fp Z1f)eGgx~ <TK9s ^W0 yd;3q56`,lsan Lq%bV̄8!Qf 6Lg+t4ښq6:s}8x< ~|9vhtRӅEDDDDDDDDDDDcpe<တW=|SYΨ2#..o n;5x= c®:^ACFReo#?`$:Yxe];k2I$Wu-c>˝;X5ڶXhs{c+C)k^G4h{76ψn5 C9l=duG_%W=/OW25!K3_g]ͰFQ)_DžlTYÐ7 /ǭqfsr緯-p;okWM 'CʅOʨwcP#\1& ){-º}xx7Ѭ |ȵa!yfpv܈mo!ܸ۶ۺۺfkXQЋuxDM|Fsޖ^yc.a||E>5C0ԥϻl&24;ϔ?ۖ Jv VӉџzoY-|lM[cՒGu:An~F~t\a0u45ٵryw-n̕Y>]Gfq` d^87!CF_9==ȁmzA|y᜿64S N;~RˤɟW9/_;Sjv/wo8W359Ac1iO`ǹ 䖋?ɏB( gMTϱWה 8/^f~]F>|8s-sq6c_Ͼwߙۇ7!uA{31 0ÇlLlzoCi1j~W|\ <_7˛b+Ԁmo \袰57W7 Mr0Ņ.j7g}֮ a 냋<~2*cFBDDDDDDDDDDDd+rrun'8]U ˶l=QBSS:p$-S9U.O`l>mXo8өvf_7nwS6sedCuEDDDDDDDDDDDD}$4ӯ5sïKy!XmV&v`]rm\ȲE[s"""""""""""""I%o9WYLA ,j }+Z3b#7?_^u¡/.ȣϭ5kW>Mz]rYq',]\RpEspMA ^ZKK ]\1l&;vi/]zSWق}L/v֙Δdh#g氣~޹]&cE'SOͮTh,""""""""""""*kRcL.NnM˿pNA[hWxxgg\IURr/,RJ`W{̵wd SO;Uuo>O~޹ cyƧk3yB0 @q- L֔. K-T{FP(vkL) JŎ|欟W8Rnvf3o#a!e$I$I$I$I$I$I$5|_B~V&FHiq6$n3wtpƾWy C4NU-X{֔.]k+ۆ(۹x"?(ytXE#w@f#*PZZo]%Y? J͈pLIfD <@X<>IٔJXQʢ4}zNge"]%$R@$I$I$I$I$I$I:P:_;GZ"(&jՄbقb2,(&+dF1[QTgFQA5OFb`0!@B]{=C@ Cxq:Vty_m {Y9Ŧ^oտV- nfp8VUWoq#J L=N!Ĩyg:RЮ֔.9X^87X;m)( n,HOdEa.AAE^Jݝy}<<6岳2T{7ݥ/vj%VK$I$I$I$I$I$I҉bn|y Tݠ E,̠ PM&(Eh)|&n` !1B 4ͷ\rݫ!t]"^w l3҆nJdSr߀@KCkK6X6WV麯!kluz'eТ'|{vs3|fht1w6~;2s""nƑ6Me4 dMѤ9%I$I$I$I$I$I$x0+nɊ*m* 0()l6c20*BT/}頨nΪW^/^ *aBGU56ih["4k`!t @ݷ!!Tyu4v3WʪXmꅿd>ܜah@U]k+zv몈p-۽GǙ6pdIpNߦ6SV\=p5՞yL)f<֭r\2I/SPʢ JAbl*˥"5K蝔M.^E~,^-?JAANV)tޏYq%#9;XW҆9=yi5QtqmH܋.dܸ ۺH^kcy]GN91'Oi?~G_m`onїpF/rbzqo8.~K|r7%I$I$I$I$I'RԸzor'B! a/ rj.ҘYDz[oJ3qg BsJ3PzEM!-?shh.6Dc@[`Ekns  >d>t\qy(趇w}3=@[bG~0 ́}?o*˥UW9mhI-9b8[ 䇭3czprw)[W[P?]W^VQ,^JsgK???iw] *!W|ƒL=f~ l\7\x5Az?WQWGnxvcD}GqORTh}\5.i6R-ߟtzK$I$I$I$I}h]$ E{BVB@5 EE*kh5.RiߦQlfXE*ks;JkٹVos/g$Jklzx<`׽hH3ף:5 {J\oIi\Ywyw}#tzVNʢkǎ6靔Mq͎*Aɣ6ۃˁIǛW)!v2v>o6{' O-y/_ ax8TW UQZ/;y|rz\UK׎XQ$uH 6D:j__}a&17y]ֲ"t/=H9qk8Wj%I$I$I$I$I'lV`ů}uW,鼻AZЦ-ѩg))y bPx Ph@I! מߞYQ{8 _@08BxEcp U6'r wiU=y&WNf?w"og$ĶԤF2(yteYi"k3<:o8D[ #;O [');4DstS)3k)t-gνUf>9;B{a}=)k{xԏDN~TjI:^'p\j6aҮxE^Qůoía> $xW$I$I$I$I$P`r蜿B*̪]c/Ode#Kt"JjEFӃ*t&0 a0_!0p 0h -%V$c+ߓ-4B!0( NPQ0Nz1: >gF?z Ňlr㒤0ְ*=o{sB_5=_7r޽3%9>'vfH5+ Nxsk%I'úmS.V6QbEj1 I$I$I$I$It2 `h{Y`uIUP ݰ/EaXI(jQBMD;Iu7F(& 30 4B1 yuz\ ?S80Q, 8WU!Ar %*K>ic%Z^ܶtg޷a˔w3A7ڭV!<\~766vqͩlǥL\P`Wq+6{yϜ|'^,'y =GRa .曟6ѩ 5k/@ü O)?{_~MTta\|tHrej~ѷ,8d1z s-\|3зf[P_~OK [d[[->ٗ0Ꮣk, ł?jͥns:b;DeVO~WĦ=xS\*=d3stb#O h^[-t$I$I$I$It@/BEQ o5CaE Qըux'G:Xդz%b*Fxl`v邢 'U)]xc6 ~BGqG:jjBiWf:4M{7ѷt>VP\Lt,^u&6'\!%y\Bsc[$ ~!]a[ nzA\>Օ#=gҫ^*\VD}>W}Nk2aA'X` q@kvY9=K\DюZ88v?R6-ͯ_cx;˦ MQ͞u_ʺ|7y~{{(ZSzTln[[gγOȀÆ=_|wި.Z7ױtr'c;68ʵz!R9Ń-/`g}0ZpB54Mx~/ҫ&q3)$XUIz3 miꔯzI[ɮՋyub|.Q/ q'ٳi%{6ӜsLΌ; zY.Lxy[Crj^/aG8]Pƴ̹K$I$I$I$I҉BϾXT†(UexJ*GvDB0*v[&0΢e(rtɢ984&p|viZMP)rQpztn*+ݴV3$/~,س1;nr:SknQy1 C[w Pꟼt\4/5Kpim֔.&)L<]#|_57^_} Nۇ/*^g"fo!b8@y憉ZUIxw/`ڤHoC?}۞?[lgp[7N~ X/ xs[t-+70򧗘|l=ܽ^ٷ 4Lm|"D[ 铔/PwGǘSHg3gݤgR*eSY.f;Yic)wt f;G1Dese*\%n͚% JMbT wͥ"T{#:OOR3 _Զy6">EŔԘ93kA~}!QpQrXIe;3hE8_%g8X=%C6cǜIz,ZO xqڢ_#3Y.&r靉uDž`${?xwϔ-\ls&sYt)秷΋Uԭ\w oԍx_|[z e+xb2BDtqLBNkkPn1o [~0]h"jWr=#&䧺UerY[+]^l61~X7[!_Xl]َsb8cVs| ZEϛ+'2{KQȺ[!sksv6c{NS{MXsᤣK IDATk8g=?[^Fth;DV Ex&LQ6Q6Q֍nQEؘ4 854UEQPTxAGƋ#pytwǣcOfv[1W. o Xv$D!6 Ebe#Ǧ\r:tႊ< *򂿻vƱh!83Q.%=> V-deB*\%4Gر6eSYn>欟ƽg ;p\NL6xv%feBV')5KYY0lyL?| *ҙ J͚%0S #Q[]j.6)\ԟQE 2 *,=/`sQDG.z}a[ >:z?2`| ?рg. \ytx`{#h?i6wtid `1[颳 }~L{%be`p!֭os1.Ʈ^飻O'?mq~؆oxB*[ϖkCtp.NX7ͧ^6zmkс .;۶}[/̔wA6qь z_7^æRbo}GGs1r9ɇ>Gy *XYq=3[]%%R<>|yLNzB&PKͤ>q4h0sgB6>? GPGC="6;濄u~zZmiĥwLgfg_5n8;lS5 uf%CX#ոUKBJQ8 e 1q}Erfס[&VF&ec$5{3g|/|ρō-qsqt^&w {m_P]t9{273 OԉLzv6LfD}-ɃuiلDKL?d^D~1 1h:0pk5pujk^tkآYYf{PA`o%} U Q/ĩnh}}Ҕ^+*v\u DJ%Izı#få9*pelMfc'"W>KMa!)5|[)rjқ.7|QlRWxѩ*,V*:xMEimۍ6PPIQ*J{XW*CG;ܨ$F>T`jB)gPE?U$45VB'3Qu&W?gذM5 ejE#4`$W YȜgg%\yw1$ȎaƑ*oO#BmcEʶ"sL'bZo-zEйK$I$I$I$I҉c}+0w&uulBA.UGA.4TЅ,0Y P 4/躆k^REWUL&h+ ! t& 4v *K8)a1aNNlMI"J-Fh*ai{T=ufw^BfuiyC'dRPGbT #;O ._^8Me'd2m|c3(v7H VKH'5KJiPќB{Ƈqt">"RtŒS7HWj94>rm[[?'3lwkz)`!tjMfzUm{!6$^Cs$LL pvsȺ C{VlH#Q"Qpi71se%)ALԍQ=k-x5l)kwc߾_Mkᮡ Z*6Vm=/?.loX("ϩ*_(uԆzY0'gK65:qnȶy̝һ1aE7|=ԒW#Z%I$I$I$I$ )b2P@hg|a`0\^0P`(!ł{P x&%6>oWDT>ViMU ^^!چbc}!*I&  ʾݺ DYdeM\Q 8QPM%SPl\/GS"sYiXY;^رbG>cxaJ͚%;n3)q =!38Me2>" q}/d7Szus{R<=~xmV*o{L<=f\0$lf3KV/k# kl߇+S=?lI"͠Ɛ@j;õ&ӒhP kTRٴϠ# {Dºf[`cO[w m۸r%Rx~sj~ E%_w-rYg{~ )uW9𑏻2vBFÚY2vŅ$j,]Ͽ m#U:~z#ڗu3lQ'ùK$I$I$I$IR31B709u]М:[CXtj`Sh*004 ŪbZH9w=1S^KF3cpx0pUR{ a(cxTzAľ}h]NL/G̭@x4 {0 "b ZS)$nhawvk:qy+|-!іϰ0y,ZĠѤ'H}gh!kJhK!LVXT1t6%Bvڸ`e+J bCZu8n ,nD[ }c\E IOdd'dZ6}aR|2p6X:<5)âYM0S< l xw}_o||qo::{00~t~'&M9v:K_?a)aSwƐ>#-z'Uahy2=d {BvfF4aWa3̰6\{J^'Fl'=۔}JG@M${M%LWr=L"|,tn@ofW]ut7C?lk]>d1} /޺0/^e,S{ }y?mA8뗳hfƏމ= jn. 8l|:r%ggϟ;I2 -bk'v邵|+|0+j!VH' d>1u?u=ûESu)?D5Jz'5w Mz'uOf ˞|󟿛p_}gwyx!Us_7wDg/P/~1&tW(. 47l|LFR۷\֫)(;cX\3>B$˓\v黿Gޝړf=9+M,?FMڵ2gH1x2NV┏S<|ח\̺`4$ `֟ bM?<-ҹ)Z'.47^ Iw/+zוTPWLusNjڎ yͧ\B6+}̸͝[9m~?͏h%e`cp֮\,W}+Ywpj~$I$I$I$I$5u xe<^=xtK}EQI/x]BQP@10 &bV0Eu ײoo ŠPIqqr8u⬮uqପUr9hn7Au+о,q&67EP4jPTQ`8_(J+õU[r_ԑٱwT\AE ֔.9a#yۑ4ʓHmŀ[grv`?%#_殦\H>w<ٍ=<X3yrSobiT&ezοn ܳtoLUO3Oũ0>f\v̨_чXx$n՘LhզkVNxO?Tun nOÁ<66mEM:2ٺDߙiï|Ě9/O6zyshR̞}+C23׾ybh)w$I$I$I$It޻ٯ/M3y&U(^3ZU0|窀 a}%.50+Ö{*JtZS%Ɋ*ᐉyULxj|Uƚ!B1 V_񹆛jg:V-[l3JR$}+{v~뷲 ͯ)]zcpFǘ(5XߊgCmwO/×+Z{0H Sܽ?g+.ͦK25~g}sXߊQsLv\t%^ܟF W3aɻ|w޼ JLr7 91W]E"j{Cg[/&w**12|ޥ\}8:{ԗq6Ee4w-[wWZ1$gkF=ec˦k;_^ ^E+% `MB\9:nas.Kw3vR,Gp&YǔtcXz#w6bi!^`K4exԚ9/*w<|}6-\`s9\2f[QI_c[Ul\BXg/pqU(Itjrӈ;>Xr{V$I$I$I$IN5;vj `ٗqͷi^_*yhaZ3w1;6bbc0tAEy9e{}ZڍB_gP@5*Tk X V dvPm62Gt /6 ]Gh^T<(~LT W-[c.+ghUGQtjkJ+*+2v^\s W&|;&2o8C;_89m(1!MeJ(cSY.+b3]1ݦ(aeѢrrWiyfSYn> *pi6RYcEa` [gi46=MΦ\Jv6=!;^٥9XAA#9-]ڠʺOR6 VP* n`KAEYiYufp۵KyMOzB&kJPPG-rW +arY!ڊW?΂ѓv|2$I$I$I$I$I$sΫYx_餤a he.k?U*IEP 6Zk8'ig*bx<o_ݫ{_nE55͋!4?64 C14/V' pk,: ^xPC98+7I۹(,+jtT{7;=*'E\~iD}~FqiCosHw \.av|6 /̽y<°m*eSAg@VIJ~Ea.AV8 Hl2|،shk3:hv*mf;#SŎaCgϱU p\ S*a\g3ul%^uw*fUʼؑKs6s Cax2aoZ-΁wqrU_;3ےd+)BMЂH i( H DiEZ衷$%H3w{39""""""""""""?IfDrN6uzW[ nL5W 9D[lc@iOT:*aŔ,-[M^nOQ6 qҵ\xR* &XD ئkBRXECMAcsyyd~?y#;#ӯɷQ;ʙ2g6f(N>APAYyI;սnAp oЋ]ʯq{焱G~}=2|kKfL9A:j?v4FJcPY*KE ,`}~]6C+GME׷b8Kj&nwysA=/x$ߒzd7ұO4hn9.\7rcڑ9WM8A}?wd*/ȶɅ۴8Gٸx˗,du\jq4XMd Mq33HXPb-35R+[%e.gGE2߁3v!t "Hk~=T@y.Q:?$1QDP`S!Nrߖa^|^I~݅L:qą<5|\U0qąBvRb;'6 KG\.6FV#oS=ܬù 2.ԭ\>V|"Jnf bU}[\7 j(3ԥ,kzӐ5(AÍkqlp2Ba4ԯX4_p񁋱ÄIg0Ҹ4M aIU7fda&;؁?9FQ~>l֭pwyyf?qWY_mVnEu3Ixs9wӷb8=+?o{r6Ա(9wM6[W%:;;Ɩ#]êbΩkܙWnܵ칋Ⱥ9s/y柜|,Qa0  k#tk(.|-Q>ӗ1F~D.q8L/aض1f̮ϟB-'!VLABaGbiNU zXg 1uYUnPZq޴kvXy>~y6q'9ƨP+t(rEu%^>Z5CyCί.ny +EDDDDDDDDDDDdbytFbUizKe岐218Չ:Äu 辘,)^ EτXwͻ|/Oy׳ CL`a >Y>u}.vrM̜'s~'fl#YT73xS#x%^Gߊa󏿎U"""""""""""""Yh*tPM]b#Zѥ1 "Xp\ءdm=yrRԁMaĝ-{Dc#aMx* Iؔ.q]utVYՉOon*cFsY[mSU4kw|`早micjݐ""""""""""""ǃz#]3 V^Gp C `0.(P9uE2h9XQو[5\((qA D)y[rȾ첛Ckո2njoVam]quUp铿qlS=NmEDDDDDDDDDDDDKk t2 50pV$k $̝oe.Qhى! Ʊ,͜-c,a*" 6b(US j qLGU>}tX\T6+kǔuz:d; ɎGRY֕UŬN- /*8 oikZj/uKbk-10|X0ϧgO#Ăǀ350ئL ^f:(e~=Q x $!8m Nd-bh {dyJp6WPUlH0Gb1JwNėDXQdY̧!G8eab7abK&5qqc0bS ~VF(/{yfF[IF>q'*/+ssw:7\h. VNZCcCi**QZn06OGD1p=p=Z\'S@XmD:%j( K_ٕq{3/TUзb}ˇӭ7}ˇӷbB_g2 3Ϛ^6\ݙ9YT?ȴt)JJ eR0u"c1!EXA̲nIU3J(E/?ɐҀtHUŋGE" Fk֬2H/+kee1ũ,%$im |iB7Ͼ3y !U;-'*ټym6$}x1+s(yT X Kԧ|!% IRa@]%P@9,+*ʈ<<\Jbe Df]J<15+yCMOmG;ު EUIoY_CMV/K>\@97ũ(V#~H2#Əf'pE4޽u;i]E]KDDDDDDDDDdfpKSҔ' .O[UZ &3Wɽ9?mb"9d-?`T??zöXL>zמ;GϽ?_k92aiqۙl_n6=Ԭh}~1 ٬5WRkmlTd}KEY_[<6ۮmclQ j,ئfWB%"1K3$<Me`$m̕WjSγ2A/}qr&uۛw@""""""""""f- C^WU[30x-Yd>`[C k7οP22`c^˾v`Ȧ(ZwĽjam<;r地.'_ Kr { VSCM8k~l!}"|{ |Rux쌀en cمN7!JzC[SCͮr`fp~8^O'SᱚksOzϬgAi{[cnފ.cn\?7+"55Ԍ9]XfLEmѾ=e55}<968+oGG-'Gfi]{joyn8;{nN_`{z,7~355sєǸTS߾|۹~F}ۻEmMWSٲטCւmmap &Ƙ֡q6buO>xnV3r[g[V}=,ϯ;W_}5Vel7θe&?'{_^?Z Z5+Ϲi;}9{|+y5_/x\˼c¢9I:q` !c/+"vYx?_&}kNt7{6 NEV>8v= chwmrCnjL| uͼ>{ڒpW3U{8qjNZBm;oޗm׼oϺ7xO h+*l `{n]q-ځ՟iy۽17IsY0Gxcݜhw7 ;~F֟zkuio,.""""""""""1/e\o;s˹ޖ1a 4i8Ź^9idkMF_I%]*[ W-`ӕ}w@9μ?]E2)2Ɵ{{+vC?e?]O?8v,#n':.C/<]`$;^X7{ux8.Yak}<ا,N+Oo~}f!\r_yaɟEs IDAT>]3;V35g18^DsѶ}]P¸WP5 X1} sZ- 80_o}kZkw :Dȷs.cؘA$.xQ-T4PFUiG䳬cwt_; zVUcxAݳ(<*tmQ'ф*:3Ŷ[}m,"""""""""" }*lMbu bxNf]5xC#s,'|k~\V0$ R:ӥc-~B0wSǛcֶqZ!M5Km:XYL#RXqibT:mGku;hwqDpں@ق[yyj-Y0MqMyo|LCםخg .roj p-۽k9̢Չ2;N6wcٔ?oqŌT:դjW_PlO%)'(/ADAd L[o w#k ¨~0$|B?9~TZkQU #v3CNl*԰ر;װE[dewp3>0N_9zy{Ymo<{/M_<#Ə$x5aaPǻO,u3b7z;_1zm=w[̨m0MЗYo_{K=MEIV7'BfɬY[d4 ` <^q͏1Ѯö~kvs̺ܘ`>άs n>@Oaaqcw]Yڶْ";T݂S67m{DŽe1l[ӵwwMY# τ6ab}zR]]Mʞ={|Xե:`͌Coy^zPxke7FCi'KUȬgo抧@$~.K=V{l`ͮxԭiW~ޗ~s8>}'@[[ DaAo!au~! <7)-]άiL7,K A]Y~gZoò;Ꜣ稺`͑b f'rk>a ;xC~E =;Ar*s곿5j澳'rwr+Ow*e ?˯|97VK~3qW~y׿Is;R#TFθ?_>_i?ٙϪ-yc*^-=~l}8L(ӯݜ}~{-~(|:~ |O~h-u]lqG+EDDDDDDDDD6afXE9Nwc,U\p|J:s]GU6UDzq>v\1s3 Y̼1``fj""""""""""1s8_?9 |Aizҵ￯x`#"kc uxc ?q':8OcLg 2ϳ/kkhNUYt昙:i-Ȧxܢ06S\۲8aoa2 .))ɴv ?gcAZ>|} [nE €( 3ʹ~n̈́"VݞYDDDDDDDDDDDDD6'dl4Wi\6(}XEpnI$Ps[ѳHE rKWQ cn mjlL[elD͵u.- { A zs(\ WY(h烷2!pMun]@Ai XCTQf0ZmЅսnaH:?/-- .9pkzLjz>z{2T2;(ZWDDDDDDDDDDDDDw8J\5pA嬵J0 -Ca sUt:mt˪\qnQYqAһ<6E|k-M9cn+,"""""""""""""_e~slaGh"kɿ MmF`n1od*sc`ҏE{RX|-Ζ݋|%mÙ(X0w6}n|f!"""""""""""""92?r+MſJLnyqlONayZlF`Cf\l |oO1\Z1ڿiZ˩/M2-Xz5U6۞':Ly&/OC3,uLjLzj3!kB8}0>0HS6UOw#a0@as5t18N*>ld// pm[( p7`,*N~)+be׃u:(lv(ʏ1T;iȦkE G3iڜ:bۼra3QDek5QFxv9vGǷaMԧz`-mcij"EDDDDDDDDDDDDD6A햿7^2py",DaemZލ"., ΞA:~j>|Nb6ąųy[ aT掗io1C&64mSlaMQ#/j[>N_[:s{Aݧ|>b5N1XoHEDDDDDDDDDDDDD6-8C M9 Ҏ}~i[.:"@ ؿ~[5[d#S> + C6ƢlAlZ9ssny׍1DmĔLqlITX \l-;N'[FlVhAl^7[0t-o>Gp~g{4 [ukA9[i]klמ |mі-Ml9vk;޷Ȧ)."푋E16tٱN9hܼ1mFcg?gs!eM/&_b/~K%x߰mazfym+7S8Qr>s\w3_pfGo]aPUVv,e{8ꎻl٬mR{t뒠 ׌l~ \H5S__Wl/Xܾ Yl̐=?8{k `WMyWwү:83jwIej\ش^:!ǭ_K> ;g{{uH~K8kYO?*>Y䎷d>%w7'ydIl; ]@X""""""""""""-4KKs5-ĹP6] ܺb+ܶ}7 mRl}5}79#x :{Wyіlî0UиU۠m[}YYE T]s.T6˞?whʮ ^CaM{q\~,?8shz>m 3ߜ \0|Ϋ`.p6^+>^o4pFswNa.HT?myrlTjx/S:}n٥ Ɋtڽ.E}Ȣࠫ\ _rt|7w)\5\{~o`.؃='ͦ]~w1p4悝{/ua}` vt4悽uL|b^j\-7\ߝԧx1fldCTL;) c 3Ҭ:q Tl̹x$jY`Zٕ<ۤ1۷8cs<,*Ag&gͤ5I?$o չ9ijP?dʂW'0k8鏸ϿUPk7:O,Xo|smFǰWWCW>;a_ȡ?͒9sA$;>O \ٸ=f]iL++]j'z-y2j^(XˌitalXץW}t}u3x_y.f{ck<1(&-k:W'7]Ztוa>e68r:?Qҳp!C.sKNFp>y߹ӆΤ1q q9y)r ]R`[N߾/^[_OyڬhݰhlcUVgZBo|WؖV2߷1k< N*jۏ3 01`tjT?.C+,?mߞ|KFʀyr*4^?lFyo˾,˦_B]od;R劏ƿkfeY t#p;;s!mC,:j F8tYLxTjؚKǜtNl]qϡew]xqؖ8l?ݾ?^qťf뼱ߧu.mϥ45CG &vpWcpKkC̻ms_?Nc HMy8u繩ONr /}׀QV죍zƯ16Xl5^S:o%]d]޿^̟0Y!QGwW~-,=й:b\z`>!tߕ1D,n[ɾlȣӛSdJd*ǰqPfm[jvsfK'AɅ-=bԛ8tM>;O_撬CIiVRkW(cAnu ] ؚĊ)LkbkhX51R|u9GẎ ‭X}xi֡뼱'w)Jenq bi,Py Mfƶb|U8@:b7QsWP,cq{IF=EDDDDDDDDDDdSoO3V}߉qk?VE&Q5h* O{(Acaw=c徏_syxi"^Ōa%x8uㅧcݏ5ػd o#O. ϭWRcMQn7y qKȟqqh>c̛O|x8s87ϽlC.mxpvpo\2{fLpS ;21Wx+{7Rk’Ǹo\QafxxN#QK[8Tݎ>|iBݨL 詏rvq^#}ya [)fΘF=MsR,k`.pXƢiEC.ۭ̬r/(b^>+9 xpG_26.N3/x>3٫q+>Xt 0 : ߊw y~wޟ0up1Co[$qT>uv8r#O.]鍗WU7dK|܅=+xC8~F7sЗj|Yow46Ͻl%Iί+ά9;9@2IY6FzL-.ン`@nxp!p<|{c*y0g>0T⦛oR\21I􌘲`!)zr!G0g1Q\tr:;'/h@/{c/SjgpG̱esO{0笡tor??]wo[<Ǹ.ęǞ7+S2zw!3/ǎ;NvN9S=Vu{ßfos{y@{u*q˟{mܷomu:α>utឭ]X~a.YwmT,)(ڝȹ}m9cT5ww{6t޸lhƘSL%k*n md]~w\+M{>?n{I'| ^ͫ%?鳀r8kO=;>9rt^>ݟdF]ҟwb'o)dzɼ} >0׋|j9 s8; 7hg\=1NI-KZݯ.GOjoO5:[gw~^7ai</< ҵ~09VRZlrZAmKpITV/>G򇳏 P*pnϩӊo ;{]XnGeV iHu4f͋k٘ 3 5A[[mJ'm;WjrTE8;#tàҕZq0q@^UlXU% nګ/dU(N ޘ(y"C@뺝V(o.`ٰp6GbLfxZ=r7֯XI\GSll?γwXl*㉄`tN LlSnsb8E%ɥaxdvеW_FO<e)*sbrk#weYmV@CCCeyiNޢ扻{ؖ{'8>weacwSsSl6qcmNpGY#&e']ϛiX0CNxh*zoDz~ĚLf+케=9 ׯ@ee`!Y6#Mh,o5C Ʒcυw Q ZOj}9.uۀe=Iy!3N=WJ2&|&RaF"n]&۶;M t&:2UpgVMj潢qɺ VmiaI?hn[[lYk׮P,"""""""""""""Vwj/++f6y@^_h[ZZ̢u.'"9"Yٛn)C`R׬Y޽jHM8 lXeY9>wF/+[;szɯPo+o|C@7޷q۬t%y`j1:jk۲輁|;g6mhޚ]FYMv@ojUtԅ k P6#V)8lZf5pthXٱduV g*F]0Q݉XUCӥrq".EV..õ\\lH-C 񍏏g<<#ax$L$m$L$hk`'kY,}&qeǖ:P [8.;m혶HUU~Pq]6Enk8`l0rl,òm|+"ˋTGmDxxOþ|/I A ƃ^c+0i6;3 2졡7 CKAogen>fș0aCM=:cf)K/¢-&scĜb\."fpl"v-' /rZхn]+M+֮`E4$q'7~6~ҧOKPeكV[Z7:o )²|l,l5ֲbJrl aˉ{q  ~ ?{usͣWϞA@lXROdHFReaMWk!n~;cp`5-mt~O`|+ | C_ölZ>N!1.~XX70xMZ8q\|QQQ5$O>A'}cO_6mTv$WPឣ[81%ЍsuSտ08.uK1+-7:.6=mql,N<ɓv[7⇩iX fЀE.{Uq=5~$+~+!1ԯj_IvY,"""""""""""""oYdnC`XXXJO2666 ;LWBw'^# | u~Bλ_!!0sj|SnPЮeɚ7vXL`d/s;NmN7b0m2|{s{,iZ'35|N͠wkba%=1x~2VZ|%yN[DDDDDDDDDDDDD8eo4G8,M]3Rli v62x u&Z7UN-\\\Lļb]n}#K5y7CF272d@XZ Dc0c[ =1mO4ignx+:sz8 j!=㥫~SUAz8h =Ltt1b1<ϣ+A/E ̏3j82bX&]i!0~zD I׳;PoȎ M- ;"049l2*mt lYM[RRR$J9ӧcIB66?`]w-r9b&,k79s74ptxfO!+_]wSfV78xmj`q V}>{.aƦz=s EE. F"g0-N.*O^PwRAYY&"""""""""""""e}G]]u 25n#l&gR:PMV/c<D8祇}D"7A^FקX,F,2.y%=xG]}o.u0r0v ~SnΌ;?_kUYIYi)*Y뺔ЫRQiQ;6INK 䆌oj^9SS!pQQ%!pm-o~:epTmB:wJzZDDDDDDDDDDDDD\ץ'=[ |;ۙU&G䂁 ?3NUBTUpvEpjFM-SZZJII eV9?zU~@Zfuu/cH{ۨPo^TTTtsEDDDDDDDDDDDDDڥKNUX8|oo^m7;荆فoPb.\:tC}]o0N-te9RZ^^WDDDDDDDDDDDDD6]PQQ)C?rt!c"AsuVFp9K4P?}n?3K}]}zT;)_YX+{NɧgVlPN lI2T7Z tw}x~ii)QFno ߙ!MMa{%~0ЖQݺv՜"""""""""""""Y9CEE9yr?2\ {~FptT c2{xvtTqꜥeN*0P_WϢo* 3NcűMY6(//7=seYU~¾Zq: L5_9+0g\AKNEh,²r;CIqq*""""""""""""")\cLFmi`Ea۶1App1pΑ`Aeqsqe\J|dzؖn`3d$APVVƺuvt؜ 8yQ(p_?Ȗ&rd4 , T^4Մ!k080VeҾ\oKmeϩkƤN%mdƦtx&6ͭREShVJj;ᨱ {h(kYA92~"7tO&z A`ofq;h>`+)_DDDRo Gl^lc-݂6#s;e)13.O]f y{jtߎ.f-< EDD#!MO !Hn+<[Ťo'usS9&nMCHkhWMCΘLYDDDv<[@[5"""""E|I!(gnQBTx~n?g2{^mFNH92WJItf'igh+"""""9nB`iؘ]H礶;+FjBXyLy l+:*td0P=u|`eV XDDDDDDDDDDDDDΙ8}O+ J jF?Asl9UśV*-chc 3jXy6)ljocslwXXؖe;[1""""";4U8:#pӓfL޶sGVE3}hYm9Z sBi &O""""/5 |`[ |l; [ȶ8kxdh{gݗȖ s_Wf^0ZDDD~zT2JJJbbE 8շu**ʉŊpH$H,cXDDDDDDDDd76ٲ,~n7:GpfoKm\#O˶~#[;Z,"""[ӋX,8Fqq.]*-Ί<:,Y8VC("""""""""[Qw&?ߜsڶE߱Pysog-d{hKkj4hjjb>l]TP[[9s2x%%EwD[3dȠu/:OjkEDDDDDDDDd눌g5gU9|w䒪,rt|mjOA- +ɨڵ ÆfyTe5 ÿW&χ.Sa P*YτCkЉǭi/ ??Fcٲf99C3g˛}|6} 0p0*"""""""""*[7o2:{I|tdd򶥵6Az[Rv9Fn:.jxw2u5\S)=R-Ҧ!3| 8g PW>ͨ^l8k=-//Շ?ա̪`+k/SkǞm?Wl,?2L߸G>w~G=۪ۚVEnc6SkRoqUc/ʧ~u\q>Ş.ggGV4ïcZ-gKv0&[t`y9!)|iS'wVDFS`iSQЏ,e-3?^gb^6 |6y GѳP7dU\cTus:^t}Ea86P˧[IK\\=۔vۣ#fCnk6Gř L]P^?m N'']Û0ԫ#o|>;Q_fɼ(^>P/:͎0t`v '5ҥÆd l67ֶxwspҩյ"""""""""u4W[Ly]*[N#(*쥥6.#n] Vq7~^(|f7{ɼjV~Sw 'ޭ`H/X0c> Oxk@ڗ} ?qpa^ :v`#jn)f)8. @ql|< ̻%{&x&:/3'Ƀ>w1QceG)dZ}oV$nyqn_hKMwᆟ>F!ݟrs<}M\=YroUs%?}Ԟ})gur[sXy9{m~5 ܦv[mų6l{nKPZZgtgvhhh nӚjS^#kV`5٦;󿿁䀽k>a ec^x*N00,zQ;w.%.„!A|{,OY0QG+/͏s8\;xʀ\?x.xyHɺop7cȞrxx&q-|o.fM;Ƨq,˽p{K7++>9YiW<|gvo9IՀ;7do%?]ëיż\y|sPfզ5u|pӹ\՟ݗ1Ld5|4jUќƮd7ot{膏@oHJX>==2usy/ݱQ3(sc >\\^앜x=}SԳz^{on;c~}F~&t.2u#|:Yt ?xpHP t^7;=Z?θO#Ě9zoxc^QtSx[|ΎJ ]Sq ^q0ưbE@jj3`@6VXY<+0m,%K1X*"""""""""aLkAc5)76/%Vtt\%e7ko{.fW} s31}$.=,Mf~Sx{XϼW>&0h"cʁCs͡a>3COs<4y ffC֎n_R ǥqsCb>|gn_g^᩟zoT?`o{o/8kYTs5;bcnn7iݘ bqέO꫏sw</Vn;^{e[sr饑ʻ?H9$09sSPu/~=oI}<|;u5pȯŧ'b>!|6\XwqCc<5?x/_Λop'f?Wٷ%bu2-o^|5W]5ⷳ:n9.y6m[,x<…hhhu]lۦw0 ۶q].\yy'X`M-Yp1MM/I#lǭE-ZhѢEN\DDDDڮ;t"AAtZ%ڦ/G_'R]c9~D:XZ?{*9ۧ8Ggy}y*%Y!9g[uCߒ5/{gv#@1@^ ~~(jdʼ / W>#?;ן>҂UHEe%w)څMWt)>3fc/W7 K,{;痜?L8*N׫yzϽKyE5% wӞVWxhF \{6O?]~jm[*O/LD cbTJV֯-4k/~ѼY?Gi7>8!V@Lίcɯ|yzMWهWpd66Ay3 =9nlwl #%¿owpy{{ðHB!m?oO庚ggr V8_V6tyOXG^d"b0b ;foc)C0 h4wozTPQC)c.eZE֑* ;,n<ʲCbp K #^ߜm?d٫_cAV#3?zij-g哋FgPQMwM{f NvF x?v(Q;w{vFl[gn6n͙#6lȆ 7<֭gݺwi3DDDDDDDDDvPsc)Nhmxٛym1p}C.*(aZ?0qQvUU+T'a#%;]x7C;aVØ6t +,Z8kQM%4 >ҿS ֛{el$ԙp8*S?X{tSҍB.uI PnȞwyo 0 XkN C {5¬-}σ; -yO;t/z}(-^{k n\ >gǿ|t10v!o<ݢ Yϴ~įCQѡ״CcOK5c~)yG>{\'êsgg7=P>+~owsuRz{ %V}VDDDDDDDDDm:/g~DJrVoJB}iS^]MSO)#N L!Ɨǻ5]2b0U-K1_^rΝgLkyۮ0ޝ WdkGwǪgۋ!ҢGOopŴf~+o[&vk!6S_^e=`ĊlHmH^J/`q]?<[ɬ!|zXO."~.aEh"1zMr42Ek쟧cUى'@OGݒY2|أfj[;NPƁTR79 ,'ݤ6_yt@n|L}| ʑ ^c^C9*|`9z8[N\64^kf3͕Ol}_9gy/)_<=w ݢƬ|$Ym݋!YkwE X-!~`aֿ/Upʥj{;x/QDDDDDDDD%p2zN1gn]+_d 4u{=(OFNU6X&? uy;8ꦋR<م (;?=u=v+{& W>M8 +ۇL׏D_{ S>w L  J~UU_rfE#r YR s`LRn84oNkYn{#9Lj=3+^kĈnxs{'#~UO}g6&-]Sv=p߲}7yo^1 sxylu}D>z܉Ulxn҂+b^֯[C8(v)wܻaDJos2F0*e/29^c~r9+y.;מY[:E$|hstլޒ0䣜xStݣ]?mpDկKrɓ\{s3Asֳ۞}[#`gPsi8iTG?[aYW`ַRFvvEDDDDDDDDDdrsJdPnUGQeof - S[6.yEV\zqt>}_dk>[ mz7U|1'Y̠c(Ke]{+ |Hqa/+ӟ FĀ_͔ Oc{-i 6zP/]po*{es {շ^ ;}x-?;]5Hǹy`bL8qor>w@oVqPڗ缗?K)w'\uOy7x3y8rej{@ek;mo9 b1K!Z[ZuhV!yn+Xwn8G!Hצ [im 0 !K?(~SwJF_h9ZD S6ps}#/p26qz_̺ٚP.C90gt~x iy#r+;l&%Msk7CDDDDD;f/q """;9savzx~}x^ y^"yХk7&? n< `snZYuNt]NQX*mOӺ8>c?jyfvfc%(.}N^ڙab]wRиu9Sʑsh_/]c. 伿,jo@3yfUcBт|OԂ06ᾩFa3N,sm27 IDATYvx9sOn©,ۓĜ;Y^ӕ/|qmJ%H[5O/h"i4/JIԺFθD)I9[":[&׷4olXdP&qeDZnsA};hN[9E+o{tp._kTu7ص2V͡irh M.VN[(͕?MhEp`JedWsǩ[!ٜΤ!ݙ3gv"""""""""""Ho4R5If-?TZ' {,M<t{EDDDDDDDDDDDDdbB&s^_NnjppPz֒Y6V<u״|XDDDDDDDDD1{~ik7ADDD`r4Ƅ' O6U5\pݡ&gd-q4EDDDDDDDDD:S*U,"""MEz z.}8߃ҒR,q"p-rbb91, oe.)N1LA1>&0m/\x  }Lg1e`j^+L W1eY#ciw̞_bJ/7Eܢ\;& !7n kp- /z7Ry` 0>&p7|>~#}DK{Ox6d319<""""""""""M_"""ܼk-77'}i1Ԭu]qlj-eҰ֍ĊqcŸE8E1X1S+.*vc؎a;NX {-* ]&+Xx~1 zM^?ބ'M` W%>^"Aro?>[9+ܩ?V ,"""""""""[B^ٜ9Sh$ =!,Y@A1t">=D"^x~j}'=|/V&D<'O+wY|?K +jj<,Jmc60r\OW&7pq1GEEuxC={^3D2 6& hJx5󯈈|ф l4(b]#˄mQa#bY6cy۲,;ӶSC=GYM,4Zg f(r]zv=/D"8NV{VaX6m_ג^)|`&Ld!ض +l rm - ?IOV[E6c0X)ՇasgbȐA.hl`ŲCG>A.a7U> =o[EDDDDd3裏[oq׳{lf MDr f L`UA>eѣG\7YLlogjU tmjj1p|ԝ4\'0d`\~4ղfY8t%a NVbY"m EDDDdGȪUnm~mm.\g}q%wꕭaԩ\x,X nڵ[E"""痶vDDDdb1`4u+5/tp`p1Jp'Ykm;9勈7|:s&G ȵ8hgx+j%ɹ=1x~rHd3^cªg˲젦OGw[UU555[E۟wMU?7IeOJd(CA@d*(( e/EEM[lZ-miinf)HWls9&'9oj*>3^}lMҥ4iSN]!Bڝ}%x,B_5j FEHX0Lh-XlWEQZzמkv]8 5@C9r: 7/dp*WD2HlC?[V Vj Dkih)#\WFB!wjҤ Νc…7 lBɒ%rw%""B>LJ*TRe˖IX!Oy6Z!YaeA Ԍ!*fѳ~YFUU}hLJbb tY17.GZ&˒t7n`M>4MCSzfVmJW!_ߟeRfM}Y9[+V?<X+!BdwB/`p|):̭ku|X,l_{Fj?;>Ȫ?_}|Xf݋OLjPBy o85>=Wjv)? !B .$OG@?HTH5LTP_n`Dsa֓B!ȜX"""Xr%{a…/^ӧALL ͚5㫯lٲ\r/5kp x >4it\ʕ+Y|9$::H2eڵ+ t?ܹs9x (P5jЩS'a+WLvSNeÆ ?jԨaxNϒsαcOٴi-bF}ܹCDDVb޽,\+W_իW)_<&Lgq?m(..]xbF#&MرcB QT)إJ?tZKGEE~zV^Mdd$WN:eܹTR͛7#GB!B!0e&VU ٿ/t_9⟃Jˑ|2))IHSBy,+(YS7mz\KX!Bdԯ_i{{:}e˖tؑ ٬۱cm۶z611۳uVϱX,̛7Ç￳pB81b>3ƏOOYl˖-sʕ+yg_ #&&^x &c vAdd$SNm-Z@^hԨy%66ׯO?9eϴmŢ/7n{uZIXXǏbŊ򬴙;ԬYKrAUƀ{իs1/_Niٲ%6l`ݺunݚE[n1114mԩ,_~ٲeid:vK@@B!B!}h6C}f; -V4t=07;.w???4 *0S`f ٻ hFJhX%K v.Nl֗9L,B!+g5k/ aϞ=;wٳg뙮.\lܸ'O|rY|~ŋuVOի6l@,Yw|zk׮;ƍpB}yrq~wڶm˕+WdϞ=Yp!?<9]v`ڴi޽ۧv4EQpa5kF`` ݻwׇSV-Ԗ*UbӦMoݻ uy~͟?pFYFرcZ,Z?ΝK|ѣ͛ȝ;7 ,pj{!BwB!]bBVmfwF|{&=pk ڂ(z1+pNIfOA⚦]IHLdO !Oϊώ5 XB!RBB/2 .DQ ܹsQ͛7g۶m. 4Eo>[fϞO?͔)Ss:f Ν;P{.w~^=sN~w*TeڏkehѢtԉ5kMDDO?4V_&G.?#FgΜ%mgB!B!]ĺǞn:ms!M j3T=1W4=@8Tc08v3A`$޹N|B"/_\N_6!zC@ !BYp!}uVOG}Xb 47|ʕ+(PqX*ϣFjժ.6m֭[m'NeB,3ϯ7pu:t˶V>}s=4ݟB!B!v8s`eڷQU Uĩ*¶כk08td{~k -zjR12rUJ,ťV ,B!ğA4}egz9rPtiݻǒ%KٳmF#M6`Μ9L6-n߾ƍyꩧz.\fiժJҥK|:u-Z8lGsN+ƬY{'2m4vIժUz !B!B8phMl?k"5 hjZpVj95>|sq[Sܿ釀֋O7tlM|UUɑ#111rêjhF|}I$4܅z5d h!Bh4D]Xn߾q_M9r$X,*T@j%;j(=9c *Wuټy3֭c̙}Ŋfzqnݺ1l0f3.]b۶m4oل(\˖Rkl`U(-M>U_vVqi߅nrʅsdV[jRI'V)_: !_qzlmwvWC<͛7;.\oƍݻ7-rʜ>}i]HHClܸe}QpatBdd$у/O>D'رcܹsS2k,ʗ/OR8y$Ovqlݺi+W2qD}aΝc;mݺ%pܸ<̬YxcÆ teyXXk׮_~̟?e-[h֬/_o.Fܹ3֭cر?e}ҥt9:z(ժUӟg7mDvsʕ<-o8W_zӬEQ}tE)趞ܘ !Bl2ÿ?uu6lz}qT9r`L>ݥ۷gʕM6'&&n:L||<۷oСC?s3^y쮖o>ܾiDFFraXb&~q-֯_O޽;m;Ν;G|֭  99 6pJ*EF#o޼L&~Kpp0=z W\\r5kKܹ3NufԨQFN:E=ʳ>ڵkILLwɓ'vZDDD4h@tt4gΜAQիǮ]ə3'Z|8 .dȐ!4k֌Ç_ҳgOfϞ @\\իWgΜ9ԫW>f͚if&M'ФIƏO2e>|8gϞ套^wޡN:,^F˗Vϟf͚;\xѥ\p)Si :]RJn߾MJX~>rk֬!<<-[2ydo㩞yk9sо}{FA W^ѿm_GE.]d2[o9x >ر.]0mڴ 7ޠm۶*T'x¥!CЪU+ٓ I/D!05VILT (BփQ_t9܋ׇ^~j>oFrbXz<ͥ<\ igB!DVH.PT)J*U[˟?? 6j!A9{,˖-jLUFxx8+ɓi߾=< /W_cǎWCBBHJJRJ|5ݻw{3C AQBBB0`&L`̜9RJy=m۶PfMҥKϟW-ă{!B¤if5dl 4`?Uԥ`TVËhx;lElk4 1xFfA:f{S>>2MB!|%߾B!Ծo>5jȑ#Yv-NL2]G@@7od2cƌENǿw?37vڱgԩareN2H9Z;mGwzɛoܹs9|[>{ݛW';Çpm'" B!ugM+WQ\rYQ)DoC9h3̂1C\Ƽt*)))N۩*: B#!BHIIчrZ'ORRRxg0a˗C1a޽ Sd,X^z׶/y>N:fxKvț7osE6o믿zoܹիϧaÆʕ CѢEꫯP5jдiSѬY3Nʭ[sKO%?2}NBx" B!!}L!LJ;EQ@b@àl@kM|5k8= Ve)A[d !g{!믿fҥ8p%Kp!_7|ŋr lܸӧ̶mۈC/ҺukݻQPU_~\rѿʔ)C*Uؿ?ʕ-\0 fFÇ~l7oZjő#G(U3f̠tҬZ-[н{w5kF&M?vPݻwӶm[:uĘ1c4iz-uܹDFFrU>~>|/2~x>3~{4mڔ(ʔ)> iqsuMӰZ_OS=3}P/^dРAO.yǣy~UU޽{ʢ|ቐ?ǧ5/g͡D!8{KOG`,3j!YV ٌbATrˊeK0i2<>?29x /!wrmֹ[M\:PSB!N}/B6hi{w.]:#G[n6… #GʖdE!888S+)!i=3=OmwȐ!$%%̈́ |*yx l  FAB (i_i=qq7#W}us˱L\5/g !W"B?˰aÈcڴi|7|8Çjer"B_szN:ʼn'ș3'7`oTZʕ+\~fj4B!DE!B=B!|aBCis뺦job*VUUIJJ"227o'OBBB>!!!۷sej֬I`` ш`>q=LimŶB+c !B!$ B!eTd6\2؂8>컸`0?cccپ};QQQ)R hh4DÆ )RQQQl߾X pWi CsV!T2B!Q{!B1, 2bUnh[bŊѹs +ӪU+ܕa_f)75I!!B!ģ$ B!IAASEPSqe8LUaB!@B!Bd-!B!ģ$ B!ɞk4ٛ /tZt#hfT/[%؄Ʃ ؆|=(kB!DFSvWA!B/" B!mc%E[/X3ch@hS*E iE6>CU)_Ӫ@?#ozKYB!̿%B!xD!0㡊=C6K1,7,d)UPP" %^? ,".VjsƯs !Bdt!B!%B!/L54=e_oٛt -B}5A\B n% ~sL!"d-!B!ģ$ B!I[u>\ b(=CXq*EQSR3W{S:{sMŠ8lU8\ B!Ȉ|^!B(=B!|apzM얇X-N8-Ϸ>kfZQ=47Sw{ 7maFT`0Y*B$/B!BGGAB =Z9_X5-m`{WӜk[`r bb6EӼ}dkRM꽱,DމX{, PoW<~[kx xNW]4gwU <3N,UnjNGZA]^u;3yp)uP8wgbg9n?BűQF{ Τ8^*172x4-_$Ǽ8l{zGՠЊN\㻣){=1+ ƄߤJC1G{/;k=#^OqɷB!ңGg#ϓ$3IlinEe׃*C*1{fзY(y{O֣Ba02)eejWÎL_2QZj@6T3i8muNISR6uЙKH9üƳRrjLXoӫ&y+kxTNCk^)Aq&'϶Ɓ3n)N23bwRo9NI9u@n>O_X9!IQ>KNm=;P.Ge^z;sa o ҥ V-[ꫯ5B!x=ȿ>ڭbNvogozͩ X5mZV}ƲD';~'& -n#t*iz@uf 4EK,VܵOk=uhzyDZP-pLZPWnq8jMJXSҲӪeb%gZϫx_3Kb6Wo.vzߥd_=ìWm?^ Ƽ9|Sݭ܂OUssBmQ|(<м^gx6~׸T/`U\O{hYaA_E_cGU6mfxdlr}>cV^ɗ/!!!ԫW/ZlJ*|.=zkײvZw֭/DUU}B!=ȿ>ړbNvogowͩy Φy,”kT,/Qk9GjJ|nJD4cPn5 pD{nѩPj Z,F H|iY1ѨQ cwyw&eVXm/@æAFш2Fr"ه|8Y$ur' HPB붡usM\eC+z%hЋg uPn.ר{=]mJ븥9q; Jnڄ7U/:H©4BCik<Zg_>#-rgf K}-c_nΠNn{.|:{a7r5]͸-J.o1{v)/ff[ tG=PW/ٟtdjK[g,eďlbCl ֌ֹ.rml UB_3'ܣjnEk8IIzʨT_=\ {,~"[cSzɥܴ -it҅q1h Ǽy󈈈`֭vG>RðdRRR aĉnkܸ1Ӳ|1c EUB!)=G{CuK_dO)6uןr[͠(>ozm3wf>gz>`ѷk_k( mCGZ-f!ÞMwJ3rlKGq# z}sG\Suج(I1]ZŘM a,8vdg`þZ!"B.5gPvFٛngR$~Њzk`ef |cLiיOϛ97#:mm}YvxKs״O{{§OeTG׸09:L۰Baߘtb<&a`|:3_g߬Qp"M&iX)}Y~~9q>6}áMs9׶O\9K'D}3saϬ?O~җw;e&4XU-Nc~,=?&,~9OsɌΙO&/krˮy,6-cǻ]|+;K.K9|5t$kaL^5s_ҡ) aj?7y-Wz Ƅ38UMY JXt_ʝv8yM+S?صm} |YdTXo_vgmTk3zQ\v8H<˶S**ș'45Yz"uGGaV6puώrݼWrx+A_S,[ƄjAj*5f=vœݚZvE;zmk͗ \-~?S_;`|۟g\v],r%*W} _gD>uGT DdN2qW~T4yϔ߉n+)';k$s Y:N:O]z IDAT+%~Xo0W =^XᡯP4}=m=%yVi&B 7_3qsn7m `"##xꩧ6l?8 6Joξ,X Ke<ȾCpp0 hѢ˗/"BWb4>:+uxlpuwQOIG~?3K9|[z*ֿaY۰3}ՙ^}{3uyiL}&?2.S65eOqeG(RH윾2`B\`1rq?gV0 f /nZKnS83^=qN$Fиw$H&kˢi#\:̞ˏ)F1r9Q4"@UGF· |֭`Xie_[oP9% ׎E7>3A<;>2X|>둘5<˃ơ1Wټު*v͓% `P &1%%l&1LLrՊjAUUêZ,V ՂZA*Xm>TlُǶZ-RV̶z'KJ&.)?uxUU`߳ox4u ?NJ ~-CIQP3_63Wrh',KD;Ub y(\(EKTӘPpO8ηQxg|?W~R;{1n g]_xg[8$#D1hj.J<^5;z1?A4֗ڏX!M|-^ "͛%KڷW?π!gz_+ݻ)zg(2O"-)wp"G B \d|m5BZU@7ze,ug5fѬj*5u@e{gG+Je=HaCx~#<4|DlV̽24}P3^ֳD'з~%*c[bݺ|,f;+TvLOeG Gq)FO SKӗz,gM5_>s.I݊{A/%$%lc~3mDUO{%c Q_;Uމ*~)uvC";DGGpiΞ=/_|9/"qqq׏7r ùp1o<5jDjȝ;7ue޽=}495Dm?P6m#%%zŋSH .СC}M6Y:K.ѻwo (@ѢEٳg=u:uDϟ6mgB!h4}t3{ݝ7ͨMS2#v%OmzN-x;vF}ogX}vZ|n?R%1.vA¿L!ԛt][n3~'?OsļxL=Ͳ%g:-(E"iUbG41]w{^uPD5: Hd=4 cc LtGQqMdHRn Ʊ$ǟeo\uj=us^-K#P)1  ec3(bϬzdob8h_JjnB}{ټfuE8ec/קzŠRSn]Ne͗>}NsU,i1xc>/z&M&ɓHR0jI!O k_*խizg$GŖT~o(yx^:/w_&nvݫĐ܎7^S%j:1u S1Oڵ|=J7y6uw'uqYu=ӯ}9 5N?rTs ^ma 5C ޔr{)d5+.^;KLy Mw"3+'8-]Ԣ c.dZ54fki{m*/k!Ozfue2IX֙FL=HwRG *R<.sAդ3vĕJR&Q%v>Dq]+Z\\ bi\;SѼI"YS@V~ Ek#vbϥ|u 5;/W0kxʵY>^ƟAmsg\2}fLޯqoYcCxO?B;ר,WfF4U|5UZѬV4M5F@oS)аڂ1_ax$[/_ ZJ-lS̚<=l kjzDJ _rzѐ] ~X1g%Sd a~a/[ٲq a (|AR+ӾC/(~-@ܩ(.>%6Fȑ-i86͞ωtuNչ2NCu|[h F>wiU!g(ݽK;^A T(/ U RT'E"UQ 5)$n˕_?瑻g){3>/"ة W2m,|)Z'w; sTR6UBlkurZ5JTܼzCC8'F*䝯..4Q oD u4X7Gй哩tkr!c1G/|m\YY.,,E >gT^jzK(hQ ٜ?it)g_+dh'WdH3vmDlvw+I2KO6 OY <ܴ )"Ҏ6:Dw_♐tx+< ٶmzի[L6ٳg3`<<<իcǎՕ䧭_>ӧO'88VZ!'O0v;ӫW/f̘QDGp F#-[dϙ3H2sLbbb@Lw2b $""]vw^ڷoo< 4*JYG {fcAS, ڲKigiآ3[sS{p߶Tvy6˷rڪVaFG֍?ƐmcZmf<8'V2{põcqTIY1s?gI)AtUO@⃆PY"SS]GywIn;a}C wêj˲bps'N#L88ߧ+oy->M۾ht7葍9&lmd5r7xo4E˲THlj>N&o_(1d[y He^v yo.+~>96E6 &88_X`3e@"qlf+ Yޓ;Vp@דyKgަ&$E&ɾW2rI;J-< Dw Orуxm-| QUWA׼Sn|jqjh܂bEYŹu.<})O<6e_Ncz/8> b5!Աx]3M\H?`nSf+gij( Oq)5/ր{N#v2>Y@P١H]̛e۷NGQvJNxQ dȕ>/gXB"{NXLg}-H`ۉ_ڜNJ]N:Na_zvTw0~a X1I=.3T!D^@RF(Vv[J2G*:JF8s .$ DիͦQo(2p@M鍖ŲR7okfΝ5*Af*Vhs޿bZEFFڜv޽55jPF N>'6秠0P:<06'{1lҩ="]hAl7uYmego2l۳^Gb<BY~:z g9v"im݂aWOɞ)zbR\/0W|]4F.%ZΌ];Cs==ձM% yHP2OITKFFs$ayz0sݽ9ޟ9uv K}=o9|uQF&>% I!ףXol5z$嵍A,RHpBtq2MO]E9rǝJtj؟n>MM8_xIDJSw߶Mmԏ6.8*W3rq&mM YTON@wbi1QnBǗur#r4.cbV 9_rЭ+C4hK6I~)'f׼yB5r3y2?},C3kd\n؊b]{Y\\SPqz38D6~]HhhN*@l]`M\kq[&OD)+37Y>2IpOGL)Cќ^ɤqg& όe'iuƵ}1i ܮlA峻9=P|h;PNe݃Ty:s Ȯ/1u )^={H>Όm3u"R"KfG3eAUP{t.alj)Efux"ԩSÇҦM?Β%KxgL{Az쉛}[F]Q{[n9r &uVǦMXj=睖fԥrv7L>?C ĂE_>l ut13ס3.){D){uQr{j}2-HQˆ}c [nOcy-] ˰XlG mS߁Am1fXJhΟ+>S{ժҿB9AGqݙNQ|y~@6GQ }}(9kkK t vlǼz۝H(nSSpiru GJDx]fqglq,m˞9Hubx)T vuaW9F Qs bRN6F}6jADMRn.bnو$K   0.0&͇F kG󍾒Aoz 6y.f6zyʘAF~кW$~ȨGL>S㷙T>ӟ.)E1ĵcF}1 ʹOdD6#l|wϟ6uO>X P{8oΔ]X8;~Fa]?;->8hʶOZ,8%dc`~LUӖgS-]A(lEDGy"nd:R,~4,|*3\4O0``u.+Usd2`0c|SrD0φesbsB:Яm6Yi: o3;8m)/D11LaϤb_=}z∝Yֳޮ_`[LΔprsmOC߅?`ɼȵa^^;d(6IGP+rVe5`~)?8QΫlӃ1x>(-R#tml*Q0^f:E|*MfuXh3h xᐋ{;X.\Hv̖S<)===MP'OfРAlٲ#GЦMV^_|3gΜ!::}|nhh(W^eϞ=.]bǎXf%[ǘ;mQ8e] ي>3{ݔSjT83:-ޢfh~_ҢΊiƖ'b۰ KI` ʽ5(~II_/ ?xP@Nf"|ՀB/W ϗ9|5փ΋jM^^_ʼ4<wd44mx1DtKH;vGFn^FG^W4+-~i2w; Z/_MlVTԮ"L [ז^=9Z_2jarVqyѨ+;?PɣํBtҝtDQDET**:]Z6"Ԩ5ZQDwB茨ҀGeRш`2&޵:k#yU$t!\%]V*`LKBFd@ %NB\ކB3vt UK;KA#v_*rnXg@H  yaF#Ի}1ލE\n9Ÿ[~ 54iu:4~8uK@4Ғ caR*=YYǞŠ#IF2Eӹz==b/kd0ʦpϒ,熉.|QޫX/"F'J_w1A5{)<h+ȌPz|hJ1;P9VAcذa :7oVJ?LRR:.?4thh($&&(+%(--;$ A8qb w%66GGGO?Wu/Gd)(<,![ 49EpF|gÖDAA DQ$(( ׹GGJK a1;~Vggr!YAqflذ>rqVX޽{Q~ɘBtt4m۶-򠋂q\G?N({#K-Caߗ S$lR'mWvuD?d bb9u$A8R3IҚx>) x) YA 8ga\S-4W!sPUQTA΍e-IFܳ~WdQĘl4{U̯bVPPPPPPPPPPPPxLʕ+9syH^g߾}f?Yٺu+={J*TZz/[Nk.ӧO}eFPPPPPPPPPPPPx5FKe`@$F#Ƭ i)nT֥b`k\enťgH@O$}6P$_Gpt%ko7_$l$1;Mp-T1>hR. x%wox> Cz;9 Brrg:8?DžmRb{ʣVZ[F# ⥗^O>}:mڴ!11Ǐ3zh{96l@6mS>2330a}sΌ9ŋxb֧F_l5-{kPAAAAAA߅:_!B#- ¢Ym2" : GWdo]Fs@J焠"it.^rWe#d;;ci$*G{w.!;!@6*n:Ąx$ #;u<v+D-^,D FzZ:@S]+ @w]cd*hS88@cS9vM⭺_9虃yw7݇O`x91r65_$Tk9f6+*6y%[/d~IHO&͡ vAswFSP~>(sL_>Ong`ES˹OG'uMT\'"q>ic@AAAAA3go1b9997Ça8p < vnݺƍʢA̘19sp ܹC˖-˔1{uֱw^Y~=M4_7[s2`0 "{A7SضmڵO>[$$$_0l0ٺu+&MpIZmPe{?vUai{ $ҘkDUT13/d!d" Qgq1Ԏ~UKz Ns{g;Hlunϵ=GQ\Q$ j/Z5G2<+16 qPx  Q _Y1&C,+8֤+5#-[?={Eڵ˪k#cqh֬YקF 2$w2~x>CXv-gFRRܹ3}>E*( oP#4 =,zQ`";1)]QVCp! Յ96 w7j3ܑܑ1͝p=0-;&xW8x7z!;#ۻ i珡т.9B ??PY$ϬaBѪ$\+Y$̱e y|;=ab'٦9͛[Ҽ%O`|NDAFI9Q' L\\uydN_.߳bX09f'9=.ӪC?Nbl|i<=L6Y;xk84~#'M޳=o7YO(͛sMRRR0L2޽{ӻwo͛GFHOސ!Chժ~-*G_SRR~$I"""QQQ۷`5呱tI8}4=oelö〘s\m$5s_'MD?DujQѠ /NGd_%vWbȸxԿ?iTr\FRi-\=JdȾy;~r18'lG;GW=,̦ <>~q CL1C/--o8 "~~ְy*qnn]/`0mޟ>S^+w2O8S-miug-f'Yv^8|ϳuW u{6ųJw-᝟-;>sT@N#q0 Vl^Mji,jhԃ뿞$E2. tdp""͢WFQՍ+7aT?6+!ߥU|BëS1wX/wawY3;u2zU.U]uyĐI˫,3a+71 mɯ:ΰHUF͟A嵭ڿh9G)MPHsr)2H~<|Su{1\hEm8kmh:W{E 㩹5J?shس1n4`_'tS?;5$(Q#X!MoX=Zď5}Zu"Kssp=ǜLy2w)ޟ,{[!7<]PvԨUN0MM3۸|c4wq^ %Pұn5t"rf4o,|Ů|c=|Sh.Dҟe1w&_00;n:L@ΉrhPAAAAAF5EȰ?v||lٲUZ,L6͛j={vP 4ёÇ{B-ɘh5呱ɡјgҥ|̝;;v0w{.GAAAֵh PVkޙHeC/1uQvm}bAp;gFى^x}ϱkq=CjA5bĈ䃤sFGMvUpMIZ8<5ZT4d!`'ac?Li͸KUiw<;zME|NsW6+] Xo=v E'KNDLJ>A@*+ay$#8Il5۲爬VWRptws.rCCuq'NȲe˨Wg=̙3ԬY;;;)%::NGݺu9 .dԫWgϖVVPPP(  zB@KR YY1AupFVHLYBR# d)c>^A!'T`hgƘv nnhNK&5:I)d%C^B!x]f&!>=!ytrDEΔڱ`8ϴ`^FlOꂏ`j@,H~p:NO|TovoXr,!hP\yyAnwy-Io8wnJFgKA{2:͞J+]S]M'x4u^4wVKG拤f\btFrmDVpNqt,7t2^QT˷iz5^' n`,\ C(BǩlzAHz'oM;kWaTlU[3)Zh]kTr˖l79pLCd/bXsz6'IoV7G>0W`aLZcLsҹy?^©0gղo_?NvO<`;Er2ȑ-ѧ<ŲBf;s@e2geOF[hfmE98RHȑ@WlN$<%*;OH|\<~!#Iټ\T;^6wg>|˗zj7nLDDFbǎ"2[l^z[o^.].O=ׯZjܹ}R^=:t~JǎEW~zϟ`5q]~ oooy&SLa̘1899h"T*.]ёFXVP/3rЇ-k-D¿ 5P`_{Xh3Uɼr}J*S$m'v~P F5Hl$C6Jox5$!g""P hB0d@MrϣNE ]y2F.8Dt$oM]km`w0 @F*,!,bQ}p"=OOiK:w8t=S{2i^8Ge"\PgT^RFAZٿHoDKG.t),j9/b2C讠DOtt4;vD͛iѢ`ZoذPR%j׮MFFm۶M6_3fлwo̙Q-ZOҹsg7nLz^:?Ǐgʔ)8::sNƏOdd$j" .]DHH zj F֭]6{aڴi 0 _fKה&52_$%%1G._L۶mt\|#F0z"6TZUVocooi֬kgG: Y,h uNȋodT*$!KF=yAgOCj:Y â`:~W$f=?O*n>22% w\dAG9a>2ٱ7ɾ|sgѧRi`{dTN%@0foBZ* @׏ ĵF.c<+C"2cL>ob :\ɠ v7ԕ諁| ܱ|t ҉ޕ]է赑 ӘL45N G Φ]*Yrғ4ḽؒATm<&xd8̪!!&OL&>s9k˺~XMuJ~T`xK5MHH999ӇE)`ǂQ~$.׻BYX^7|*((((((<̚TQ`ڌrOwSZAM /I!'>Ie;k"d\K@*qc ߌ6~; f &#\<ЦrMdC"aKAtwϴ+8r 'aR$*Kl[8X#wܩU(}t̥LNr+\{TwOqdɷ8C&mMC<Ƀ˷ыζB-?0y/\ئܣ*|"[uf= uРI}iqU?ԀSt9w?eǩk\?.;TpmS)t CahNt-Y:>?^˙S:;ce?GV2q -^s$ԠIkց>5ېrw=S(}}F\` s۷gS92ja>vTlV d?_7qmԄұ=yD5cZ[YF4~6~y?o#_ai|^Uw3ۊnv)ޟtN]l2ۂUD>Vk\*z[^ uǹ*jpck9i}7Ll[ͦ-! όe4d 1 .d#0s.pQ|v7?J xҽۛKZFy1)W~9+_m&~íó@^UsSW2hͲ+Y V .j+Vh^:ϯđT΄0z-2jZILL 66-Z_R0;v ^{<ZF3b=uƦ?VWPPPPPPx4Py{څ=r?͆QAA% pw^<mᐽy)L*c]|Y2}.ed  (Ȳ\dXtXG~R>nj3M XeK^m>K s*P<^B!B!=',B!V^eGFs '0gd,#X~f/݀o( n) C ddJ\+@kg,B!B!(z,BQȩV-{lFE)Ԏ23#aC) Tdsdp@evF}gst8XB!B!BL,BQ^pm%!kP6G9(e efCٿ>T gJE 5 ܂Ρ,`ϛ hM2 ?|FM'mB!B!'B!ˈ,Iy3n^pW-qB3v7`9o֟:G LDt/<ڶg(6#:'B!B!BB!(^^>nJc`xfbvxFXknWwl`}Al2@iԳ[9~oB!B!8$X!xs񆂹s潠"qJZY^B囵pUdyP(.JeO8nۯSEP:d~!B!B!d !B/2^V=Z @U-KEyPXp`7{Ih#4qu0h>& "8r߈d EB!B!"*,BQ 3!Iysd* Nաy|ж[p"^ =g2WgI =)ٿB!B!BL,BQ /Y4p3lq]\p2_7Be2ʇ;?PʇgL4Zef P PQiR5N ORUB!B5| =k֬9B!D>$X!xÏLuǭmVRsPʑZ%Cm+r4 Q;d*l}YKqB!ڳgC%##=z`С[Y9r믿slْÇxRk.&NoAÆ iѢIُB!N܉fKX!":B˪զ >/+W)p,aCb@ł*V ) ێe+BppưՅ? I9B!B+OGQbŨdڵ'܏)U&M⣏>VZ̛7.{wRJn*BSCB!˟%7[4i ѫmos:lp@r~1m4vD&1 P[46N4(οyGG,B!D1Y~f?tRh֬;vDkٳ1c^z)~Zj޽{yw8t;vy[>￧TR\|4j(vra*Uo1c_dY/}7nܘ;vpBtB͚5پ}; .{TZ5Kyϵm%KP^=TrB!#B!(x9ˍ: vv@a mk~cbMـc9hSCP-pE V1jD?By !BW /ФI*Wm\r%̛7͛73yd^{5x <O1Mʕ+ӪU+̙=Ð!Chڴ)wfرyS]vJvE;wr2|p6mĖ-[ӧz+۷oϱϼ[ۡtؑA; BB!D2BU7"Y%hЎ± V3I;]a+cvJc4Z9cuD(e/0S%"Ǔ=,B!f͚5K.#F|rj׮l>C̘1+2rHj֬mƀ[.&L>0 6lwA׮]l'/˖-cРAiӆロiӦ_vUTaذaWΐ!Cw^}ͭm:up7JX!(',B!YG.8h|JWZcҰ%-'#X>aRJᖂD&:ޢs)츙P(k.TUF}%X!BUuܙ0dl4<_r%ʕG-W[Nʘ1cOFӧ˗/_gĈ(QXNLLdE!BM2B!JU2e'6 UϤ9gtncʴlFyM(uv]*W'TyP8N (P8w6V8URXWTR!]LL<\>vpd,X{ 8ѯE7&o YVO)t]*WŴ?,OE_z,Mf:})jYi;{s]ˢ(ܸ3SṷR樻R(u\6~ж(ZRbXowQ)?{ElcO2}h)v=y\w+p(FGOW|ۍw9sg<6X*k)뷸aQw嵴4g!,X۷/#Gdĉ̞=]6 ,/,.~suEݯd.RƏy饗dqLR%B#B!+<p(( q-hPqTjRqC4= _1gTŸXcAp^g)Zlж7(/bFe qF'  L~zgvo ?Y656喆 'c/D;N}`i+ĸ _@CsC"WuynϤuHLWQ[^@$ZԫFί>XZXoZ|:?|gvܢwD6׼"Ͼevvz :gs:jt,Sg[ v{n7vhģ& ăgƟN Qx ;>Sʕ+Gʕٻwoر#W^X~5jՊ5k2eڵkǡCl _~9eʔ7 g&ϾK*ҥK1Mj}ͫ;wRZ5BB!d !B/?,,|qXNī b6vz:NZVz:cю-hÏg`T9P>AB3OɼϧuĜĽԊNuk~4r:ED-qJշ/VAͬyx/i0+oNx^S#kD O> D)w|w!%{nr w!%%A1eL֭kڵ^z77xM0j(}Yyy6lk_j;=={FB!9 `  !BD녍+ e$ IDATc0%&S>jU)Y.K H]ʕI"&>_hׯ4QXGO0ah7ڤR>i'iӏ'Bf)#GV³w1w@?^mC^X}˞.-HIiNAO֞/|[ڦҢ3gkyKliRwZ\4?m^July- ,Q$mkyqh9))4psUnG }_wM:Ȏҿ} ))qͽX{]9kxȱP5 \?qmmc|` [+p ͓FҫC[ڶHS9G"wڃ݇1݄Fec$.~9fTyI:yO(xUT?5vbҥ,]#G0b&NȟɦMx'IKKctܙs=}qa-[FŊ)]4#55uֱuVqn_{16oL۶mrm'RRZsN @߾}9p/W^ǵ%KvZvŦMx뭷ZGQ^=,Y֚իWӸq\W۵kfϞ=2BQ $+BQi޴Vn%V[}i}?gIbY1>#V[L_5kWp ."N0% #_M׍_7Oeci癁ތZs#G5LdW^I~=K5'ûoӘ}4&n2~e-#Yθ ?v7?LJr¹ ;_g[0]cfm~cerV2ݏa/3r7n<1gs'z^F+s _1n|Uf̙݃,^PH__ u70cI%oJҲ 86 j1O>)̱ur ȭX{,xu4cS+8l1 {^ z۸v ۳_E3KՒ85hBckY} n6e}oNtͻIݾ%pQrm.k(plJ~mB3 +4F޼s! 7-g_ffCM~e7.o}:Դ[yfo ~(mrnQ)GK6甤IH\UzoNw[J^mH6k7:Hqo0a~>5y[/^~~\'Ѭw ԷD[A՜Q1sWUY t5]q^NHw~\v8DzSp__n\|M.ʝ0הdrYLL %J|bb"+V02J)*WL|j qqqTP!K{QR,'{_k;)))sB!(z2B!Dԅ,AI| CS b1"ΧHA<&og @)tc>4ۦ^Gmi^zA@sx4}msZ2%{Bts\޺-M&GU #&RXb6 ̀ Q/J^[u33xk_+s#֫F]n>+| #.Wg.e7/i:hڦnU){.WvAӄc?fk@ڞS/ĘnUIQ[Mw,؞CsΡy}yRd.~͓c?U2rĖC*u Ž[q ډU+SQgc ƵpMa!r׀CFL#?%Sc 8QX|hS;7n_[jhҨ VŬ ^JmK}o3QzW3hq#U.M{k|~]բ۸4Ѝr9WysCu,Xذ%GVe0nh]s/^:#Kp | Z?q)қ(8]V͸YBޏ~j $s]]>+⼜ 6JSre*WKMgnq U`_;*t5{4ZW2Zd^NהB!"Z,BQ:?+`þto\:)_"_OM ~1]es=n+H*'HJdo۱Kҙ!g_*djUndή $i6q$m3#;4ͶQ%6쳸"9},V%E>W~]2TMlXЦvF+Sc8۸39&~݆U75C jFz|Gm XV89P'OORXUc`[8'|rursz;mMX-]9A|R8t >gp %HFG:MH\Ǜ38I Z;j]̪H'4cF6lmUT~@L5.HVԌZz:2c\qٶhn? gI!yJԧG$n}.c9v=(k -d5v3Y$t E~!AuϣWkr& fdBḪwV|J ,eqJ߂$7Ն5\\Ծ]{wBͶ|NwLM,h=\Sח*B!BsB!+KXCÖne_SJe+Ј݌[^YE#ڣ2s#wuU/g6"iMbry5@v7㋲Gq4^LxzjFvJŐT)^C:WT;۱E۷w8ȫڠʥ&s4>Kh|'eu{'z޲vgDGKs}__7;>-xB]7Qp-B+2a@$~U,~~hBSZ7/+v|qYP?)K[Rϲ\8U@&U Q#J0PD&o 7&cƹOqMq*U){SΔ4I*t_7G|.{`P8U,l]JS(`A|pcNDg>/-*uw_/%K' 3%C:#&@.B!B !B̏x3' SGs f]eCC@mfYGǫu2o/YZ)K .P^U|;>m-T~Y*g<~ϩN-QիSzu*'Q8Nسiv{[T};c9T aPŖeػkEv f׷l<z-m?l'轞Hȧ/ﰛ|N|@8,V⹩Oq○G>q>)bubDmw r gկ2rnjG /v\*WImi[һEѥz<Ucw_T\Gֳ=*uWNꜙ)}0^^~< #}Olՠe8rF%͏c"f쳌u)IyT)L,\n;ݏ=ǰ6gkƓs )pv'`3yͳc꺧ط1jQ[x#^~ g3 z"1;qL{__E>y6Nߟ 7v῔V~+[i6K% <υh06'ou&?;,Әk;X7>/dѪ%-˕G: Uu7Ċ4kX =Y858 Q6t;;5طeqot+\ݓ,W~c9H;vVx5w|ɗ[u2sku+J6?n[*y^"(QǡkJՖ-[Xp!qqq :TwG!1X!x%Egu&U*"z8yLxgㄗk*\BQH͒?G7%3ıoF>͸chx{szsv+_o3sZxl񥅿wΦ5Nu7ʴiӘ7o^aPjU \u{O>$G{E]HMa49(F*O5_zAwI_z_z̒B!6nڌa1pXv4۶, 4, JNb)8Ւ5țlAE uCe#s}:'Ndմk׎~)^O'Q# !2B!D+r]:ԩX(Çŀχǀ/1(,(,w3|6wI5hvmcmm mЖ>gі,MymaAfNςBc{ 2qP=NuĉSi1yZ3 _?&&z1x`VZE&Mϒ%KXf *TO>,Y2ƪUX|9aݻwvZ:vˠZ_?UWCYݾ~1x}ش ʔ޽|=9B!8i$X!x툋T49L h$-`aLӲl+XN(^ 8׵xۅ,l6il2LG&R3|MLf\ֱA*th!E&M;ϼfI0, ^- `HW~ G6m7;h ~ZhYh۶-`;3.ӰadJNX:LW^+#`@1 s|zRЍ۷j=B!N,BQ\ZV/)qfwj~χ0pCkt(cWk7`8n1arX@ֹ{a m[^@r3 vlFknkqHm,Ӥ|kd}޲7́$B!iv޽{Yl7/`ƌ,Z;~ç~gI?~<  !!ko2eРA/a2d̙7;ϝ`:w̆I7۵+@rr!BL,BQLغ;RÙЎv{h\s'ކ[YnТ2ɶ~h{D#MvDpwNsXt䤿B!P]w>?˖- ?rJ&NH=={6ݻwkڴiٓ3gR:{IT@pSI-ݷ/XW^ ϛfX!d !B/7X)B+RPB"dU\amcq- r+C866pR^ Y¬}yϻN9uf؝ v>`m墵vp">D uʗDl^ƳH X!B4i҄:2vXFA%<;v̲͏?# C(Q khFt ~X BN2B!W88<Xul3kCYv((kY8^nx_t7s4qCcg>%j˱6mlZ b|/`Be틾m!BR,BQP)d%Lk=-TXmf r+"kn -+v em5kℲ}#yӶ1ce_yVB!ocԩ,^k#Gv1tPjjԨ9sظq#+VbŊ <G5j| +WfĈh/Ye޹s'{رc9;0{;]0u*||-<ӧC6P^vuKE;Ñ#wu2OB!d !BScqp њ`1F>11~?X0 0~Ϗ2|`((#k7y~vl7 [xs[fDzLbQ @k'cB!?|^WpX)nX^mܾ^eY8mLJ#;K gZ7+`!Bϖw0Xb=A3T IDATF3 #oA, -r3}s+_!/LB!+ PYgGfpF H%~ |nƯ~,ep|~߇2@heBF*s8Hv| :^i &W>[1l`ǶL9Zs{K(#̫ B!B!ENB!'6V v3mŶZch)3Ўa9|~,AV;_- m( ee .8lc&X> e6v0c;heZYC:>RR2+B!B!'d !B/xZ[nqЖ 7Xp1$R*bX;ُF*lbIyOxߎGg܃6mie`D; 8vDu%CGEB!B!'DB!pK-GAL˫T*ͯ^Ʋ,-l3   LO#/XڲL^oX IOO'q4X ysF-+`!Bw~z FӦMiҤ m۶oDzSݵHc:B! D3B!Dtv,Cٵ.RˎFk˴&q׵,+Z>AAl2n `8`xmcv ˲p V p G7X2СׅB!Y`{.۶mcܹ<<+QF1+B!($B!(^JA<ZΙxAU۲`88mh/K72z i+dEd8 `7[?m;6`ڶ, ;c#2s F[l|2)\űBu-1ycp8}=Zmru^L$|df|eǹG SHI} s|עkDX+ccogвS?=+yqyO[~>+9t J*̛7ڵkuִkW_1}t/"+Zk>3ƍԩS9zhݼ^ZfNÇ9s&SL!555ݻOs֚5;0f3R9ݞ׽-oyyėO7//m_QN!BB!(^d+wљ%m/Ωc&<8hmcZhȒms mX f +#p,P4mm-e;v; t^)Xмvo &|gy\?Y656喆 ISD_qv+`|掅}P&}_o/K.%..ɓ'ӭ[7}Q:uYl E̚5m Z+W\#8p 3f`ذa 6,CҩS'V+߿`ć#` 3~1a9}pɃ|駔,Y2׆ œ9sظq#>_ux7x#eʔA9;$esaきzYa۷iݧe{ލ4؄5ӵNWƯρ$'$B!DQ8 `  !BDLj,5t)8Ўx񲀵l`v1{snwQ"HdLOf`fc GlY^0W>+m8Hsʭ$tqG6\IsRRixqrhxuu»Ws$[9?*%t8W~(ݎ7|j2 oZ> n C&%2lLsyΒ[fU3ٚ}F^ޜk^ߎfMomY8J:aHz_BJJ mc lLmSRHiљGa^϶ޣ 1>m[,vw|lwd |ǩ+<o~.M6MN˞f]{hم',a{suiJ m{;[I#ա-mvo{׽$[tc,[}'c-Ot>Gk[FH.y7/OJnX,+ZϏ |ekiwJ=3k">[޺aQSv 8o! !Nd7ys⡇[nlٲ%|RR 6g޽L8=z0{lwgʕy *ٳ'3gΤt҅: /z<) 1*Wb |JmXi B!FB!+YdžR^@՝(8Tjٱ`;6;ƴ2ALQ̀ f'@A`áݮ88 9tNf0 Èmfp5?殪}k2=*{ށVu/*1Z1>}'!w/:t\^6~>[O;[ɹ|r'|k8GkCO@N0 > o+ 0hР\KHpK<,X t9rs_TdMR"k?ίi<11F .{'O!B<2B!Dr?n@׭J&U6Zsٶn@Βضm,3mX i 2ohp^W6Z2Р Vh}J2| nU){.WvA3[‚_)TL,1k$->v~Tkԙ=jb¡<>DHl؋ֱ`> cb9Z.u4}msZ2%{Qf9!mJOJ?bc:`s;C([0Q+Sj]k/?s Kg㣨lIZ"EAEAXE/Wņ /b\. v TB!̜ٖdPB{~N9̙ !]p}g1Whω'q1ibX}*ݛ{Rm( wq^W*\2Ov/礶Y9 Rz1YkgXϣ゚}Co(]Gջl /ϸ۵j_h]IK $݋f龉ӯAϒS^kmǨrU/լ\pYYYq,X{! al߾˗`۪cܸqdff]3fiʭ=2N asrk\B!jd !B.w f)ve*4.e9(lkP>`ƒFWuuN6hRض*2Q6`FnYN;Pcx:2<7qI^YYPWZO ӟgڊ5]%6`6'>'v\=}g b˧3)KT}O+:/sn}Zؼ/hU'жZߒ:h4RIb5EU E[Ft2АnW=wwr(8Z}K3YU\)L!z &LJNX|9=z0 ^u/^LAAFbĉnݚ{n R~}ڴis=uɓYx1w_&33 PPPSO=M7ƍٺu+d27/fwn^^22Yie<5)zrBޡqC Y2Ñ5RR[y뼷jBQ=2B!D*XèEr'*@ʼn:@(meۢ\ge;_f;NR\A bo錽iK=č:2g1w} ~w 9fU}*Bcî**vxsj:Dke?e1+|ǖC9&EXmTvWnAK7{T3W2pW3Ѳz>|*F>? 5S+\{$)UӯseVc#ϝA_żÊ kTkQM?fvC-UʇK'=QnmWE7D9 _?ǿƹC|1'v&ѧ:ūSJ1vXƌCNNeee4i҄Dgl#G2rJ :s9\SNm]veĈ-K/㏓\]F0Kos/pkږ7gW.k׆B!UB!]F/COk؂?Xa1mM Bqm - ۴uUr*vuYǑ| χ1̎?g^~;suijyVY\! LӧcYOuWxIp-MNQ9F˳ț*'ǝUw=imN|r&fҼys7oNF7 I{]^ !X!v7Q~gJ9_0`Y(BٶUR mel 20# j'CL ,Jmd58{&?6ABj=\g-޹SvY/z[qT~{ F׺ ,}9^t]#F:EqF⏌U~s=}g$6rߎKS2~,e"SH_>9fkxq/)һQÎFegS.eCfV?~ɯO)${)d,;߳Yus|ߘu ^^wm*ܛ {]J:=&sVfLzвGM߃{cug6ݏդw0m_. neJQ߂* zO"ĺ/e?>Vf[%Dv Y69pMgF[rܖWb]|\v,}7Wt}2ºLՒ?'j2yўI=`"dڦ=B!^ `!BU>B*C5P@ kW sF`|`(-',^g px{ Z;#FJ6WU8K> b{q@1ЕtU7 )Z W:e<ߊ>ܐv"4,,Eĥ5 R,tMB%ue:3ys9k_E5O{}⽙W0G9]n~64 ?Γeك=Vʻ~4\8kYp;lP]~Zz?f~}7 ;7]:˟z.ߓ'pq_Ly&v,7<ϛ!4Q>g(KyoVC>1B!%B!KV95?dj9kYnȦMǣpN4W6Zkl,|Խ),o!Rfaq¶h4>4Do}3 8xՆU ;15hަy)X4tmw,OL ۶K֭jؕs]G>|Hok}(uo$0qBCy 'N̆gBefB~ZLZ$ct(>}#>x8ϴ'swBqDQ*ԃFʶ ! 6: IDATqϿ8-!GU`FpOʫ1Mض,4ML4ڦndwrN+( @E 3d_.5:i ԀW~'m*xPz]aDTy8/e?5+ϘD@Fbh=|jr$τ;Sh\RJW~coѳo?B!BY6p  !B78HJs*\Z;sðm ֡9 1?S 0RȁuN z0*av>]1\ V\y6w'@p&HUny^߾Wy$τy[_£wnF1a K3pËB!G !B.7ʟ"L-dM2gPv060 #\U :s[9{h CboxP TX?ЬCT \W*ޟUmFX !}F _ Q$:\0.[rp⠢f|GuYwqIB!8HB!Dr6$sEFm('Hcp?w] Ln\hiYwU( 'kqz݆¶U\1C>ReT.Uu!Bq+p9))SN9k\|Iy:w|'MT8!B) !B.ÉVJUXP(~vnm9xUѥE*ZKUn)Ugj4g k^mk6+9Z֕]!BHjj*?8_~%:t`tܙ1c0a4iW_}Qn.Lv["BB!fvډC+?PqÇiF`['.ێ4IJMƄ/i J+իBNP??2CMđ8B!8ݡ9r$Ǐg߰a}e˖Gq9琙 ֭[6m;v3x~KhҤIcf͂=O?ns/Y}ף}"B#B!+4brTYUqQ?Wg: Cޞ;4r`n^2ӢGg|>(-+TrAqʶYuX;fWjs_!BqZ_^iƍѣYz5֭ /n ''EѱcG|>7W^{m+Tv~>>\z)\u<۷/XQ~ߕ+8hh, 2evB!B!]NTO0*-JNr5 e2 \­\z\rS K2Q^RQ:&,[a!B!YSNo笳 fkҤ _}}5jT}nZl?FIy'h׮]vYpj p0}:`۰pa}z<}˖0n;Y{B!U,BQܠAWȓj\`1 MInN$̫)Wj@Pj~v !Bq(6l㏧O>]̞=T=\ īZ22Z7klC dqӅBqmB!j7,,Vy* ʽ2/ǡ(cm8l+[PJibk ;IJm.r7B!B~8餓XfMٶq}BB[?Tqgo"GX4Z!DB!B\TUEgQ::pi׊]ώލ޶ R ˅[۸oj5B!H{n,X@iժUu󑗗WnyO?ԩSZSRRԩSgᬬ,=j۔)к5t^~78CH7n [QB!8@d`!B\ԟa[a^`S{`hЫ%•</_Kv#>Kǃeg@ǍEO"3e"`v@6 !Bq/`ڴiztؑƍ駟xļO=K,SNC<#k׎9s0n8 xꩧ6lÇ'==6mڰ`ٺu+6lԖ/yy#瞃++Jg{ξ W"Bd !B.w5ZV4tc 0 pa`i~Movr\ e](ej…ZkGjs,2B!81s̨|-]\2220 )SPXXHAA 4ӺuklB:u*SNG^?}6deUnO=8e QOI!X!v u07V8as:S;ۂAY0B0и㟽WFiR(-o UoR=*U,!B!t.FE'))J듓A"X!B`B!]Q9sk;Khn^N@Wi,.04:vvJ+ e'~[klKcmp.$-B!8p:vd!Bd`!B冰aSy#SNmxP(  ULP劌*tl_`pF,b;tU !B!B!d !B.7ЕGPET-mj\䖖q[QkuXVUmoCIaWEDžU+B!B!B?2B!Dr_i̥P`ڿvHkĖmظ:30olm iB!B!5 !B.grC8;JM\ qqnu)[mcWN> C1 m8'h0(󙕎 iB!B!G B!]FĵZ*w 6lq nE=8AHp)\JuY[: *Ex_D* TنwOs=gՆIyEU EOma[Ϊ:7`+gQs/wojܳ=R8MB!BQsB!]FYWĻ]v&\"9O#b L;#?= nؾ(@}8 ﯒_+aE?b!ܳ | >8/|!B!B!5Ɵ5"3b`\ԳDa  n4^kYaGt c 5vpzs)v̅t]z{W(@}8 bOH-+6?5DR!B!B!]Љ?s1J i`h6ꥁ()dyN.~;^W.V~jn<zr( ȸ\uCPHvLv- Xp4rÉ7zB K'B CmNJewGB7D80otKsr9׆9^d{aMiے)m&AAURh'W }~<>Bq5ե5@OHS 8<mZzw2QhCc^վpQ}8fp$xShc_OCR74p).D>_k qYp4羪XW5V['C3/(4}ͫ߇yũ\~;C!̀?lB!Bd !B.7'7;nS`5)xT3U*~igB fOk1 F o~/ Oυ]1Rq9p(>,qaP| m K`ɜw/4.éwQ./^,Ϗp5{vNmpz:losgsਓaܟpiCb^վd,2l M]PmGµ?(GNZb@"q|~3yvh_Au8l촩p^Kb)XZ4 #!w̄S.N `gpٕ=[|y6}aTW{bo?B!B!:,BQB(I i! O|6g |*_JC0W8*-L?_G\+8)5Ft"?ԃ;ZÌ*ٶThZՅ\o˯XP]xhvC Q(@}ǼKqȒ[Q7É 4Wy:XΗ! h|Xݖ; Mma,l=G`h_xC(?`iY6p4tMrk00 8&C!6̺n&΅M*o?3<C?U %_^}NQr38= w“_:Dxh LvF>_ ';w%P\ciIu_ ^xcyv o ^sa{6 .;<~)} #B!`B!‚#{3gn8r9L`B/K`)nBUKD o6 @9nht¸Ϡy'HPѷUIs9P/|%ΰ?/V^$8c#Pن< 2ĻG WˆAp`h/!G'MlXF%]/k. 㯇-z5 v =WnB[8&9t^/.[ %:W7 gi|UkWtai0Kh)*! H9A箊P˂ƽ!-0t.yXm*^kgL내$(- Vk@_]1ZAg#4FG!B!AGB! a߫W5RX:>caCJTFY.צH:º <:^)`{%KI`̜>7n'os(W,Ȩ:5hB \ரUIp(hs>y-|PͶX/ogvBV K>\ _eÈj /̂AQNer9] 7(#lwO`,n F"t L@?TuUD|8 n}C-\_:T*CrUYxbQ5s=HOJ?tl6BcB!Bd !BԮWHQ9¡+E - ր#uuTܣY({-3 N߆5\)&|(L _fA(6֠Aqp\{(^|"v4|Sp50v\,];g3 #4h緆w_3ฆk z^^W5-hX=?bm uA?_: 9ˀ!yorw(oA==(9Ng>[[s x ؃{$u|Ba0`b塬cɽm9Ynaͷ#%_΂LgP rAÒlT6?B!B!jB!j_`uA98 W*%\i~. F sB}]`,{Gl6:(86yO{̀T  +r V[a0Ouؚ"Opٰp"zA /< aQ: Ȫ~f?ˆ-Èa_vuFmoa;F{۾w7'C!Eex= ;Vʕβ`H}{qXzo! >zH6Uc5*u?KV7`]ջ{ebr4f> WMu>鱞!B!BQ[6X!BLЄXlepqǎKM!!!r@7C!AF)ޟl׍'mB9 f4?$qS{[~B!V0pWc>mg]21M4M[/ߝ *VBӫa.h[k6WiYh 6Zk3w`F/dZV0W[. li:el˩Ӷ22m]ɖ"m3u+Ϩ̊>r8:wWp}pܝpwD' tKB!BT,A`!Bqsa_i_7bB[6L @4q m(ec[60 2Fa ^v&%qt׮$e…3 >kGXGrq Ǭ e6i:A`[c[fRӤ]P=\FWT]ug9|/XVXd&̗a B!P#_!Be τUq+):4Ŋ IDATk-ĶL6a?}hӤԶz<\.gh(30 <^|༿:OI֕[QfZN} j]Z?])7,B!B!6X!BԌ;R5ema8C+mX*m- %Ӥ834L \'l3M0M,f^RNM[uZ_۲a-_x2ZX!B!B#d !B.#@`\~]ml6-,bY&nՒ]:K,>i9!uiedg/ 65 |&Q>%UXƴTS]n.`;R!ÂJB!B!B7,BQ2dC@ϘW岀-(e[,oIYÆpɸ\.r֯gaVZ:Үm[ׯs݆ z;g6RqTc(..~3g1%k,6-vEh9_~u0:[Z!B!BE2B!jS@ pa`5ivA(&(k '7Y3%'SPP@ HHH@)UiHűaF8sEEEx<^~7V[D^3WƯetZl,lMʲh 3PFKίB!B!do3%,BQ3 >0 U'kY& 6Y&={-¶m֭KӦMza?Ç,?\In=-ZGiA޽)j&&퉉mӎfa`"C@ !B!BHW!vÇd*j666RضbY4iIzZr‚ʁJ)LdΝ|>zx<x>F,..fml.R{9q<]v 4, 4Yl7&33ǃi ,>׋eرݙ+ز())&o` {3gcǎynz> b 8 ׯOtB2 !B.#8?/NT4<#VkBTPq,[` 70?oYY+%%%l׋ .q zӦlܼtN{ (+-嬳eԨi٘"ەzqSus4Yloeܫ9B!>W_}%%%=zp7|rΝܹs+?{l}YL«ZzgϞYhѾ;dgg3k,FqQmߞ7L~~>OUVdeeV !8IB!D v& 8 lFp_9!cY.M6QTTDfff00`W)a2oR|LRѦUn ~vU\LRSc7.U['C@ !HRTTĀXl[~I&홙|1IOOg͚5|>g G[o? צEAAAy@޽[Bd`!BZ;@73,K7 T(xcj c6J)JKKٺu+M6-kF5uضy baPez*x<((MjJ.E|\<Ieݷޢmڗ c\JZ!pOl2&NX. йsg6lHbbb̲VZ̙3:t(5*mΝ̘1 6iF ,kɒ%ܹ3GlæMٰaۗN:GkͲe6lV裏OGOX.[aÆχ~HNN [ncKn7C%##\ٖe1g-ZݻIOOghѢҹ,\EQVVF6mӧOĠ5k/ٶm͛7笳΢~ٶm}ׯ'!!s'S^P3f`ҥ4jԈ>;iK4w}Wn4toF~~>G}42o޼m۶iӦ믙2e qqq{ܶXs {|muիW7 }0%K0k,."ԩ+BFFw^"B!D2RNlsj?]aCJ 4jDvmZcYmyfݶu+39q-Zpw÷~Ygc=?vA֭㤓N ر#J) Rh۶-s GfժU׏뮻+" !8xB!+8th_`m`6ĚtV5nDjJ}733IOOl&;wAX<.0dtml3qiҚ;soPv?].=d_d拉Ks.tr,srXoڱ-锳?\"5UB!/999н{jeFҪU+2|J^~en4hiԨ?6l?Xf׮]mO?Zs>?4͛Gzz:{챼;$&&2i$:w}_ 8ӦM1cư|r}Yo6m뮻e7k֌oJyy駹{Ϲٴi|\s r ;w'K.᭷b„ q3?yصko=z駟A}:uh"\.SNel޼.Kr]eսSNK/7ߤW^}GU %$$5NR4)"bxE ( "** WT@P@BWH@BHmcKږ@ >K̜93 &L`ƍ$$$b ƏOTTo+˖-bŊ^{ذaĉ1 yGmsjz[?o{zΛ7m_E|tիW}רQ#N|???z}UB$X!h] n,4UchӾ=M[afD-ilׯc0PřxfNM̩Ө Պl"16_%B0NqRJ̝z}ЪEkڵmOѪek*VHTٲ4l֌͛ӺC{e/F ;]H14yj1-9]8Fgj4^g9}fi3KԴ;7-y[^uL 11x}o?p !Dv^|އ&/مM?w|Ɲ"?6~H9~ׯreY>6RJѸq<ϛL&^z%ygN:.][ݻ4h .*ɴixG{1l0KTT 6t۷/Zcǎ;xL&ׯAWzFѳgO}Q"##0`7fɔ+W3g8˽̙38qܯ 㚍5رcԯ_%J8fРAiSNsNҸt?GEv\Evz0BBB2dǏȑ#lݺ58k+gnݺvZ233Xd M?4޲eWXAz\>UUrT\em4{u8;@\2aaa^] rO>Ci&gB$X!hd@eE MQɑQkٜu<jƙ'|łjl1q9"V?ŃHHʙWv- B&묙0;ӻԮ]ш^'##|0 X5 U=w7@pѰ^"TǓi\uVCƞ6b_25K 7MnjL.`:ƂSY~&:NK+oڵd;w. 0 Oӭ[7۷Ϲ_pZr]6`_$2f`W~֭[ҬY3̙C޽y뭷Xn|ı'#h؃k`ʕ+M0 Eq~h9۟]"(XʦޠUHע(5^Ѯb7>a15UMnjLNw+իWK&R_{WIJJ"33)So{,j=k0|?@Wu#G9r$k׮O>  ˗//p%b};>~*=蕘XRR2exՆ)##:vZ&NҥKٳ'!!!y}ꩧXz5ŊGaٓ]vѡCfffRz<`f3[>};v}o^111^ŕg2ЫWfɒ%t___zؗ^x1˗^z^ߛ[ 1= u/~BxOB!EKE :(yt Vq+/'.$z=_ F.B kQ#r͎ȹݎlߜaFښ1csm|~$#q-e3g;_(7Leu$Pm85v Glpv+ڀ4~&ԡfo.GQm >Ne֝~Y=|71ߜמ}#uF?Sh3䪣3y?ضcz\WFJ~Z.ìޔѬ\^7uv3?f!y6v;F~)ȽؒغtfjLlvˍ:||@_"VI^s~omkxpo:[p,Z}꣒UMggWAKИѨQ#b: R225e3Ģ]Wjށ֕3ط5L]Oq- V1QÙĪc]=%\ X4 Szs%ټY7#~ز +xk.R7N1͑C|𨑕 ]?yh./}|r׼~2^Ɔ| zU@iMr9kݚ`_W-Pys̃۹i p]ϼ_n^Wn@)o)_.?7x"x ,Yfc7x(tg>}NFFJbƌ3ș9ZK,m۶ԪU붸r3-Oݿ)OҲJ9*x,ЂH'_aIڝxgEg ZssCiYCz<ԭr>*8}YCF>eidn+PnMKS]gˮlLUxatF ͫڗ="& ./}]@_oId[ڔz<ܬ8:cł v&73_[c_tyRs7=3gAוBnJ0 qPa+x+zEA11U4[2wҥKb i߾=6ld2aX{:ddddshd֬YҤIf͚… 1b3K5{Ył/s`˖-|nAUU>Ct:=g޼y̞=۹qys~_wu81L9Vq3""iӦdf͚{dXvQV-ٳٷ( ۶me˖̛7ŋ3ydUƺumڴ orQ4 Jll,ͣr|nK~ PjUT;w o799{wQ_nm?o{uV^xBq{IB!Dr&8:>VEEQ<ٽٳoEh4UNҮ-֪Nwl"t3V0(L> :ZE'X dƜuM{[omzԋ[ْR5]$=AJ&йljhXB0+'NV.U{(9F& 1}zUx̠^ s z!D~Q 0XLXk{/x"-9vnǨ`bo[Kkwy\{:X6+P%TClT-zkH׮ Ц<6W9v=ٜnR ؑ %{1sZMu+i5oFVY@ȑ<#/- 3 aG8ݤ'[}:ZrkѢӧOg…4l>ԩS4h/&::'N0f Ç8q".zrS۷wf>:wNLL :u"**SBV\c=7|C-:uĚ5kXd > 5;W_ݛ6m_we|aj԰iI&߿|A"##1c:={0l0?~<`_"7""'Oo>N:Ett45ŋ,Yh֯_@=Xj5kdΝ<3ߟCҵkW cǎ+WRJ/0n8K@;}%z=+Wfɒ%+ڵe:-YA9;Gps1ҲeKХK7o'|¨Qؾ}M-;oVϛu/hѢj֬+P-X ku<M!H2B!i#ξ^UX, `Sfaٜ+GbYRaMqBنվ篚a#ENжj^xŊԫP!G6ώ KP;fYjrzY˾&cǘJxo&BV`}bPաck|^$K}Xˑd/J'b/ꅸ'oHi(%zGQ1+#ǖ\X _篲ڪCx5zk|jCeЙWz$&{y}/X/nAGfҽ|;>A_okrܒ;5JXIEͳ5j(Mnq&6@XPc}_m\^:8J5~ܗYM^RFKϳ9g,T}ޜm=珢)*]ce}y'/7"8붵|t֝CxF.}s,j6аlߓy}c&V޼`~t~{]y^[9J۲kĢ)+, 7B ,Z ;ƵkbŊg;uܟ7e}ŋRLg`׮]{C۶mٱc$&&FXXXs 8vzwyݲeK&M;v[رc2d TXeǡC:9{,͛7'==ÇSzu4McϞ=׏'NҶm[ҥ qqq$''\zG\\>>>DGG.cƌaXVV0xj˄ \3n5k35nݺxŋyf|.h۲v nsIJAb,e ϗ]*7j n0A bz,>Lf_B1NŐ WP˧L[U6-9u/* ʜ0^8~ݹ,';=gx?7)ly7jW@i73dh􃻞? mC_W?,o#!g-oTF|6'&>Wm֋|z+oу2ο8mP8֭M)ci޾zјXrr2_ir(c/Y>ZQn<444ٰ͆ , JP{>ΔOF^'/bʤUXZ=Nd68-:4)mX)HmGp`[uE‹:QrJ~C6$ER&0o9tWd2ȮV#Mgeh7cTf='d'~)+8NJ']nP , ~ٯAT2]lq5O ]Æ^M U%V{6zѫW/ tWxƍ| *~2'?E?6+8́U2uYss!o !M;Owۼ(~p>I~h2:@lB\Ԭk[ߛ(oD.Ϥ6Cb ` ҇>|yΜ9Ù3g8w) }Q9+^Ax [boƴoln)ys'P FTpSdS .O,D0~K…v* |ᭆ :G&-- Mظq#K,B eB!4,BQ)x̠dj*eRQEN;GUcܴD4ĕ4_LDgghę\իtkz[włwft:]k:z.R:%SS)ݹ)..:*am&7 ~9OuJ@}^d&16I>{èy3 /{_\aր Dvz;[.Zgt%40gRo"Z\R.cҀ /YKb7c5~^q0V9"8F TJykei 8PqFJ1nI >Mg- `"Ӊ?{<;r 6/_daPoۛSxj.gu?h̹B繝JP38bN}2ra mzEA_=5:L71 [ϼTx+e eSUA|ٓ^Y_b1n=WEA~xvj=5a {(?>_܎`(M>MVOwcM6BW|y~g6l'|Bhh(%J` 6]vq)B/B!(ZJt`X55;!֖zX_֦E۶j)wPvyp f+> _ ]Lq&#W _JR =|||f`ڵtܷUsQuYeݫB xw6ѕ\w3[_i?ࢸY]$8ɛQgˈ{Iaѳ$4l=z3x0V}gwԝSƛOQbw1% z Z,or \-^D~tu 446~Q(k(|flds}G>oB!?qҹ2?<9d8ͦaՂbb6cX4łY"996V\6 4J^Nbb"~>>d~G(Y&fl2-\ &``˔D4j0 d2aٜrSZ :-Oh7ܷNziL ѣG|@ddd/Bd !B-=6v\]^5ʕk V!\;dlfH0(ݢ>5i؃:r fgZٹe gRyl175 z]!B!DN[ne֭lel޼9sP~}&L]K!KB!(Zz\K#g;S65-H|q׃X*fAcEIpͤ'KP5wuqZ`_>.11@BBB[,lFT:{*<_G4gB!׏5k|5k֤lٲ\|mcB!DB!Dңii哝Q{VllZf&a8o d-{4=5>lٴTZ5GםdN?Nrr2W r͚D-baϞ%)V A|堅B!(Q'Ob6B!DHB!Dkffi_ :642LV^3M8k ə ;\)XBdF?fE%5/_FD.A/\Ⱦ8yȸx 6+qBH|)) UQiboM!4`ZmЍB!BV+[laϞ=PD :uD hơC?ӧAAA^ǏSn]:vˠԙba֭9 nݺ?ӧO;WŊ㏜;w???UF֭ [^z,臭B!n/ !B-5{4rZI} ']#5Lx4R IDAT|rfH1gj0Mp͊o\GpYl6Džg;|Q4@I;`vJm_͞#gYs&4go{q7jyj!B!6N:t֍SN{n~iTO?/B5]6#F`„ -[^z1vX:w Tg~L&gϦCjՊ>}b <ѣiժIII\ *0~xΟ?ڵk޽;3gd˖-ԩS5j0bĈcwBqg `!BQ0Ȅ'(* x8wtmF.Ul:+ JլUbPT ,b k~VM1- ~=[E@pZ:SYyY_u}?;܊c_YZ%B!nݚ֭[sI̙úuذa`'Οj͛7v8p 0gΝ;O<@b޽;+W/dƍL0'x-'B%_!Bi74Q<ЗZ7uKѼR>z|:|z|z|u? :zz*:Em;hu; nNm;x|?.G]z5|:QàӡSUȧ USB!#Gо}{ٰafذa^o{¨s,ZLϟOsd~7___N>é_>Ǐw[͖B!Dё=B!  k6{pMC􊊏⫨ ~NO9:?U_zYf/kKGUXp>MkGRҲݲB!7dddСC֮]ĉYt)={$$$9h |}}IJJ/`ҥ1yl6[oӧ?~<C/f !hIB!DRs()+:վTի:_?=_gpdzd?8OWgK)*(թ-V:cgB!Ç @ :/Nx^:M4q߷odddPT)f̘1cHNNvY͖B!Dђ `!BGQYUv%]a \ UU( f4l7g./uTE^0-|}Zƾ_B!wTUf1m4l6Νc}^͆L&g9w?Lgٌ<>|8 .$--gy&7mDZ=z={i[ky*'BO2B!V#ӼGPnPbf T\J}iB!Ɍ3tٳaÆHLL$""ٳgӢE gN:f,Y£>||;v̫:ӪU+g-Z0}k޼9j"((8Hxx8;v\r*U_~q/pB6l<dԩ ! B!EKO|K7pUng%$9qI3{9#_VAvaL[On V@ΐ^vl'N,A7a!ssm(:nGws{4=Or3E`Mb:j·Z>,Nд,t!Wp1Bرc2d TXСCs7jԨ|7smڴwymEjժk׎ǪWN||><<뮜B! ,BQ^(9pSA`W5 -U<=imos_OBgIi`CVgCLiIe5FBI+_Q^2Cҿ^+ \#є!焆zGy%-[СCٿ??3\EQ$22@׸rB!(:,A`!B0xsRs̷D^n2vsde::_ γsŁ>B*TɍW®P̍A aj|,¨v}/_x%zCBqѰ?lI0(HxNF%TJc]?zP3 WI8e*l-CYFh1Nfzߖ03$<U 0DV՗k-^t/2!T%WltP4&LC皧9\š:KB͚)=é vݾ\ zAX+ ξ19W_ۧ < [yWu}(B{R֭QU۷ӫW/&Nx$B@B!(Zj~O:fTlQS/#vَgWmCC:v,(3_@@Aۅ'R?C72s1'@x_`s,8]Kki(?/+kka7o"| T -^%`V~: ` >A]L/Eܖ?g…y<)@t BDW[{[a8pB&̭ >^}:?,Hu^1?[W\'+ *&AZVLAH~{A=͵.ڗ붛 c}_cIQ'y f]Byaګ9kfW㠄Wh GJWj+@ j?t~?;yjo;G#B!᷻ B!d`!BײRF֝( Pa?:U*T0 :u zy F^**?w49VXmXl&gUbUlӰX5VVm\9{s?'k(9Y5zˏɯTu]r? *mg_)fR>Y ێ@(k^ޖčU# PTW֬^D; >{$Tx3=A$ "re`}tXGo'p4-Uz7V[΀s N]Rj0r%a)(woNu9\XsKki G^9}1x^<>~n·+S]} n=aw z[mғs[ sgñf%~&dܼ/ tiC;`!Ă^a!B 9?7FhCW>c@7|GSٳ AΑއҹk<"o s= a]q~|LԬkkDƛjS^GB!B4uB!ش,5xaYVHotNlA6uL~3-X5U^++֩} [z ],lMG64\E.k5 Ɯ̀ aE׮)?`y {~ ޳mKX5f,5aL՗}N_WWkaEhV]ԁ >A}v8pHz ߇^벦z*] *-lkeBF ; fqmuhCWK2zs!OQx$x: 9H-:8" w v0> wjg~0a7uD!B!DSB!~,?K`RigX)N>K0< Isu{Sc){~,`D։>r;DbA;]Sa'Q"Xmp]WKmҬrןC/nh؍ #\8  / + S_``O23^;p~C0d6nfA`xׁQ.mTXv:={0x]Е_!6x FQ?}؝v9 8Gjⴇ#p0@A0y(yGG=ύ}j}O6)oMvB!BIB!Ħ6r x',b6c}Ƕ K9ֱ,[a+pańpP "J^l\"fgqpJ]~=4A䘋y=/4-:2>N@ߞs'Zkztxi2{ԖD,~n /zGgռޗі8 '6l],SW 453i¡aм/F+/p'mn!hbRM F#d߄ێm=ЌÏLABmycYVbx79sqFsq]7u]6k+/ YڍT(,`Od3o]/58A_UU+A1L>`(:Z)]~`!^ZbW!z:qxo";96L5ۦe]75?C©oTShKߕ3p+pś6lI__MedsR!B!&B!JU*eK@P3jc,JF e)P% y` 9Jm PщCK?ObN b<` `mԵA`xA(+}7-a`7 Cap {F̊5ڒwŻpu0j&sqlI__[ vo{B!BlC B!Dͪt:G `T2 ز,]OR  ŋpÄ18 BtAW_92ր\%f9: Y<񳏽JٿF{86hT'7:Os&:X#Pp5le xc6\ ͦ<:Z B!BB!R kRD! UA#ZX uqϮMkCI(gdiMYŶ5<۶J&~~0KeEĊlldzF{ZƵKBMZ!B!BHB!qj`X% A;R~Zk,x6(<y nrTD"al'Luq4g6l_K)*%?u5hb=6XhxYpritr}D_+Vc !B!B!6 !B4"cp:,Q-@,+TU@P'HD.Fm+6X<,ea[.exJt4N6:٫5=OZs51XDoO]Ui!B!B!D `!BF*4T̃(qj(4< /lc([' Ȉq=G; aYKyXB)+Se &~9f)sh̥kKmi!\G/DZ<: A&(q,M2DB+Kʲh&ӊ]7%k*+Dyj!B!B!D `!BmYq< %Ƥ$Ђe,Y, @WSYZ~L+`M#jbexZy#MfY՟X̣51ϯ cQ]4'2߯}Xj5=?=+//{髽F\+B!6-k)..N.%D!BsRϿLV)E<Do8Ŏ;v1(¶t 0ٿڀg {SeM9[bl^*' >˩ ??Cϼ85ſ'H|;,iuWN?gsrڿ8w@pYw%G3$?pM[Rs{.*呣psf ՟` v1zӢ| FWrԅ7uu^ONJ.~;y(gJ bs/|5uoC:i}S؎Bi{^|kκUJߵ1l܋z!;?E('RUs뚓堫. PsS'B-yW[Y~B!nbEhb=@RXEk?o@J@.:PD]MyLSG&KQzDceG~<m`meAbWkVVR}|fӸxr[Lzf,y,xlz=1_~(G?BL oczsuT)]ݞc'ur&< /1~aW0>[_/eqMcE3CdѴXLU*@ sޟEc\i7[|x~t){7'M1㘶V=|j;);ι7#yޓi1;ՉnO}؞__ ߡ_ipjjXYmQu8>p6 :9̛}EaCK:USq8s<}C>{#ϹQGl3vdsYɋn9_뵚1d/ .ųgQv?f-K7+߆:^F{x^EY{tGKoUܖA;$׉0hh4HJX`:/>: HU19:>B!ےnݺ1m4x ^ %,B!Df-/t3)%eSmV%-Jdo篎{tjdٿMbЩM]eS3ڎ| S+QzXSm1|9ynx(:uˮp;-YD).9!3 _؞f*fX|ݟ1׎d;2`uKz+藺B!P0!'}Q>o+cP<)^[9kn8}vB>GpuGbO}ϫ=7\Dd69]v'|>[ 1Wf%.jFi'n|d:糾Oǂ/`J>\?nށM@}.ɾƀVa2:~] 9_K¹=9`-\@W׹`}.VUyT0).;^"{Ac0 xw =ą=ƵkoK]} dE񗽆_Vm9_Z,{C(5c9% U>O;`vQ 00`>vX>i}y"]ClZg'KC bPb; 82!/:qкJp޿k~ܘjB!ի~!?ǏHB!B4Q _wQ5]lǡ4͌o<Q`ktnp<0~@Wh?L|-_6v-28nHg\/ TV&FyeQ,;3h6U0n5aćyc̟7g-%ѩU(E$;r&_9Ȣ.D~M513x,22QeyQE홳VXƝǻO(tF[yx"O8w߬ϸm7Ӷ ]Fqp=w1HF<:S۱\^ l,f|2hrpo\hNEq.[dx.Vo-Ѳtrcd=w jکKl)Ў-Q4[Vwhm{6>=Gok1{)}'ލ_&F70Wy仹֘|4^Z~vf#cBdsxɣ)7P\vo6sW2hџ89<"/=9=*yT*/R%M\B!%b6}C%##>j6_Ϝ[s؄=B!:2>]Q-'LYYrBe,eUe-+GŠ3Vr8ض4jpƀ6 xF.V$\qud{.7C9| :k_wEYcikyEMڠZׄh>T ۇ;ٯ?4{]XLt; oJ]VՔq S9yÏm\D.zqa}Qqt SC%6Si>c=wvrRJլV&ξSo|_38*CHo5oOsvڃi+jO] (M:TZw^k&J?86f 6`uan'vݵ#6}ۧ gqeys1{S3|2]q+v*٬{?#/ѻܞU=Wߘéߕ kLe*Ns9!B4%%Da[~dddp)-A`Q/6|r+?B!VŪ4JY/%ɤ< pFk)_ߖ<(*ל{XwF ގ妬 v3x;Fڍ2͚k=\3h1ceA)e&B:Jj|<T>e*|q]mzmOo[X0E3H=NjǮdYڵ+]vmO+Lt;cOrדr_9VWkɫv=QZ { ~+LdtЁ^mԬ 9N\v{ɷ/IG Y@YCC/c?WkްΪr6d{~z݆3oz E5h,utC|f弱z?*7SҊyś*]]M)K3J _V?R]ƺXY>/~5?n=>7!VsB!ؖ%J2d:W]u%%%HWL_ !B4VU/TXk׶BLGZc5~ g)-_WYxF1~X\Jyup7>{w>wݏڝ3ځvA1 DɊ8(Jn-@DZJEP$r*z 7/(-a/~ZNaRfz 7Un:h6,n>όyiƏ r.K?ʗY8g8,_B&w^t`s_+uЅC<2eA Aa{G_ ;o'}YkALXsXrs>/3ִNy4GmjA=/YpuOo7^7w9}}2}uby{ơWj{{uޕ{{{DC\u &&4Gn?=P~-snq<o?zQƞWF+ =3m9| | ޛȣ_k1tXٿqc[dfyW,xVn$jM9j^O!b[yɟ>`^xFɓ%,$B!DJ^,B(+we*HUYTKX6JV"'æyK<]lK1GDw%L?hQxikYV<dhsw0#nέ7‚bC]+~~f?!u(gON ud{=0zU6SƦѷAhܿ(%;ڿwι0E̚8O˩Gtp}1v߇2oݛ:4tۭ?E΀Ko斻O`Ͱ?QV8:@0'KU{Whuͮ߹Xc7;/$s9d;g/UmFLԥLz6kuϰ}~MAq NUjї3i{j>˟y_x&?/Slw_λN9`- 71~&ޠMrWr.5y{N6ٗǝͲ“=Zĥ/(sSʭzs)d!B-8(wcq璑aFFFKW!n٭hhe)Vʊ{M|5Z5'#Ʋ-l-el]+FC,j|vtnQu`_m@k QP\Zg?-eY4Pf.`ن-%>؏{'=ubѽb ە;'kswF4Iol^s?Q2iߌbSGfCn3e-1ǟ!Q) )Q<Ȅ&7ѴҥKD"-5 2zhy: "E?%ݳAއ\6t^yD!̝{*]v-Y-YVNVU_xaP:ݟɕΠT)..p$77~駟RZZ*A>!B!`0)KƃuரB"-+,[Mhqlq˂U!?6} 1ż ( C>G]cW?VùDr[`"~[ØDgD!B! ˲;v,Æ {aa̘1 >?#F\EN!B9/:oBDrZs".\CQI1- qlǶBo3l)Ě? Kyԣ`eG85FY*yRB!B!DM0Gƶm233k<#G>%A`!B!bo]) B`;bseY2? ضe[` mgSZe]Wij\cXEKWb}PVs2aG2,;ΥŘT'B!B!Deg'HC2x`Rdgg 6cOB!Ľďh/ƔecgdNF6"V)o a2"!,,KdPZema k J'#̖BXN,?c9_P,B!BQʁ#Hd3fJ)YX!B*^y1ʱ1[ c9!P&::VF,ZJyI-F3Z~ى`89m 2q%ѱT iO!B!/7w6 B!D4J9dv cܸl g`gb=*]~,l;X7ޯjPm* !B!B!B!Ė/m*TF)X߇hv#Bx :Rʱ ];ILY߇jn]B!B!B![ |&~/K1+B('g#&fe'(mFbAߔ !B!B!B!AJM%s(]:%cބrl>[?fk|oswG!B!B!B!6 'P0] 7ITS&%]kj+l'xהR>.B!B!B![˿&7r4u4T[VjSaOՠqsxrugd`!B!B!B!VJsvMuq֊T*Sxl2g|A~o5u+=fL(B!B!B!baAX?NMj,%Z]BXVny6D V HZd2&LNfN? ߅, |[Vig /{CK&@;X>4FjxY꟯mN*<`FA7n]kmU%slsCMB!BxQN?!B!iVX?^LU`][~Ud Ga̴J ؝J 뺦; :&Vq?cAZl]c9Wp0a!+sls;׎cEz!B!DcGەlѸ7( !B!S+w?'55*WsTs-jg3Al1Bx z.@2 O@8mt-l f{ {l(uʨ̯PMvs ZYF!B!FxI]Eйv~n;K^ڦB!x5] ݧ-OOgOesg勣|ڥ|5 2o޹o޽>wd'ٿ |?Itr>?w=wSw;7z?1o|%|L?w:ӟ9/W>O V+2o%v2,vxڎ.vz 6xL\Wsm,ٻgA( ł1ogcaAJ?`YY-CTs|5[9}0sa x |#EDCpϼ;XAPF^<Z*Py0^XW]Jy<2 B;{+Fɒ[~Z]+ZO. M[{WPǷ?=?p`+8⥚+:{#8wyA݂綃H>Z5ܶp5_]P9g&4D!BLSz -4yB!b#<|d/huo`]Q9k Y_RNQie1u]i=]@{!_e3::x]h\3! m|Ӿ!0^Ygժv\:|(1]c^r%Wp߮O%^}}.YK=ӀZ{c4K]+hmϞ[8U<75H΄k~ͪj o ?7@*rkalh3N~޻ JFKo8QC= 7@a#0Fػ-#œ^3Qx g?fF_>'wAc;`EhV& ~Eo@>v6T§-v~p0X=)w ކ>+GA8daf@Ȃ5rZQSZۯ\=p} 3n0 m \hZ47=E5{ }/X2v;N~yff; Hjt0JEQ"HG@@ $^uݽQB(Nyfy_gB  wS&3ΣK`e> k΅nW ^avu3-˦<aayo`ŊL4k׮/Zx_)E2Ws/pAsI^Zb5\sezӵ|]ʕ߯]fw9TUVfM-_z!Ww{ϋL͵7?.[<8Wh+aa׃l 15 UB֠.|Rst_|t. C^ki Ay+G> ]U.|<w: `Llty,o!.3 GsO$˄ ea 6oǁa}ro \vn 7?_.@SY1 0 0 sb>{"`;?n,hN8ja>{2cpG=@:p?Əe,/O?veTU~qGqqTˮGy;Lʺu;?)%}{:m-eaa_}v[TtRL ²Xؑ m'rHA:Q,AQHi;AXQDn|,DH QF ?=_Y/ W2 5ueCb/d!mѬ3vHI+hzwFjxI^&K x=> w~&w^eɮrNO؝Xgnч·wO'{Y@_gB(e{\sv` \ &U>cdX^pCpe] mCq884E01f+wX/i֫`[a8x8 ޭa{Ztڦaݹ$?'o?IyidizZeLʲ 'aaa|fZk>(eƛo3>OSS36d 9x>o.Ϩ#]?\sϿȞ{}ÿs0%%%l淗PUՇ| oJ)nVf]&NO: [0 0 0l D%<'b! t.{RZض)%RZH)"[@.Xʦʎ;,7gM.~2{3n@}S뚸7P/G䳒sAkk02Fdu[С۸)> f-wb d72O^w_ { cwg6j8´qp8*gm<*-\8XX& ̿.Kh--5`Zw-an`b0rH.%pFF@e0dQp 7 &:9پ0Z.ly n2. `-? >ܗld?LB2,㶀kӡoν$a0dcA?0W'X"ձOqTn|0 0 06f{)-)ᎿPxޏG{yx棵[nO<ʼn'Ǚ?1"R}T2syGyB><#ߗoFpݰ;"gaa5)\Eہa =}T"MQ > hղcte eeZxrKK*[].MID, Y V,u-7CS23ӎ5`;.?7,u*^!t..i; aRq- cWarݰ{d{ѿÉ;?kOB>P*u'_KEYv> ̇Ά>Wo#~AYW)6?qxÈf_{XYk ?f7(8ww2|ܩc[O̅wUz=Ibp] 7́cӡi ,^las+ݏ+7`Lu6> G_ oO9 {tTxa#~TzZuu \+e'/aaa#~Z߾U{dmЬ% ^`/@6eI,߳,ecY66mE*:-ij@`Em9. 9 8 4ZkPA RaR~wڿ#ΈT0p=:ΧmYalaqrC pV[r0\xi1l]UǤ-8{<{t諸}=am mX~^_[~&,eM{(g-}6a|6! ᠴF ߇]OcBֲVS*7B 賙:=ix |k0u;\.~uUھ_g_ #nc A]js0 0 0**ʹۻ|oavu^)'tx~apatxk.s6ZT:iS/ot~}khii%Lҿ_5iZ2 0 0o\&l.$MRk|! ,, -e(K~=-ֳ^~.89Ҹ /IC  P2ebtib4%2x}T_?dU1浔UPB8n/ Rf]gbiM:]τ}(g='}Y_Ų|}'`/]cJg(X{maaKqHSXI'|eRVf6 0 0h"CV)V>MeA 3@bYǒ! iBؒbxreohX*}NvJxYK%HMyH1`{*}p=PJեQ7,WM}ѾMn19p᰹}uUھ΅]/ư=ys"YmMlaauvm{ΰC6wq 0 0 ]-XC!2V6 {7Rm#R"кdI,T!7@'ă* ).F)mF\pFHHiH_ ?Jg(GCaW8] T皰4vU40 0 0 0MgȘ[laa7B> ߎ A`A2K@DZv:YOrZ # =C)ZP m: O`'^JɓI[\t/,7rfVE0j0 0 0 0 `6w1 0 0 FwFn˖% 7  B6G˲XU4T`!cQm5S=TN ;fZ:AkY0֨lڊ+7`8#He|ZV'e,&&laaaaaaD `|T5|0DK)A4YG[v}XdHтۨ H0oV  @VQ=qQg t!1g0 0 0 0 0 0 0lýM[:l䂨e!e+!R"4-%[%RyQǡb\*G rTڰg!SV aEÌ`P^m ۖћ =GH~㆓Di5 $AfέY_7aaaa߼`aaff#@hAa3 g^5HaI׳b'Y)p?uAr!mW㻒䚕$'B`Nj)_M`5dE+U3r}_!{$;/l`0 0 0 0D 0 0 F5v3R7.CX6J:H;vH'U_K]B>Jɠz$VѴd)˖b:uH' c f; H.CI<ڂJٽ5Cq3zt(w{ Faaaa|tu#aaa;2G*"B2fT#"d-v<1 H( [ -hRPBjĈua;G)?74APjzda)tMao40o?~s0 0 &pEEe\V+ @6MZk<_!@agSXBJ]:o;tˋ# [Dq&oʰ1B(h 僪ueܕL_ L粀ο 0 06p衇n"aaaa cC>.  |˲ @+t\A8ȶR4AfE-8}J@;ֲn|ߧ8j\B,ǍUQ~P=uI ?ETjaA])%Ae0_ZoOaage2 0 0 0 0 $þb-Kƒ)@(B|3?CA%(Q:F@hr"mI,1(Z˨i5;ɘwS]C;Fա~s>t(h:@>aWk/{BA0 0 0 0 0 0 0 Jvg QDnZUJAWA)t>e l}'̬UaL#՜m)6ٗ~Wh/uY%k1a4|X9Ds/EEeK(@ejW|ۯX|&laaaaaa׃ M-}W킩탪a5 BF+PBҚ@Kޮ:Uo. Ȥ4F<όQrM~ENPnB&Қ5e5"$I[:ް ߎBI6 0 0 0 0 0 0 B78RWqE1Wql˲{3e7*wdA`yf4N$@88"d(CkXH:D4S{? zW0$aaaaaaaW aHTl$ܾ\Xe5ÌLZު-mxy^4tYC@k)6BTOǠzrn5qdD[SòrH~};{ETglaaaaaaDXoM%Mܲj "݄6wF/qC*2 j!xj?>r6& kơ Xp/+GId6AĉxmWDQN1*"]X7=٤Zw| 55fR3m?||3vf6WyĴv:Zߛދ:qvhmr⥳QS, ݮ:);r]Cv,?mУOZ^E+Wsn59㓗׸뢓8h4jjj~qˬ߄nb_)Z>w;἖\Tę5{|gX+aUնD7/:/N㟙,MѴ1nY?h~gǹk89mg3{Go㶼8q8s[ሧ_fuIz-h^s4aaaaaaƗ]?4c7̎V%T Bi߽ywKKE0JQbaET>7'G5By(dmC"PK\tXe:( 7"u14-\9wqe'11 -2:~4뺅8Ux8pWݏ(˙Pݙ,˞{$BYn@%9~7^oϛkQ'r;0׎՛e[}mz?Hz=V^͠Rx͵V0_zz]̭g]VT%C*㣴&X3ȥ ?(a "ZR"|77W)@J :i{_t4E9|0xӲ0P7#L#;6EɰR>~4#r^.6~/$'&bLS7XԨ_W^K094"oԝA(È#&S^:|z >g*CSfbשC'Mg.+Oerq=59sw[4M}>yEqx?bz4Go.͌\5ct?M/.l;bY۶Fw6)m)%e!$`6H)% (*< AZIt&CS¥%C6BԦ؎[`9HA;H+m,˲@ h \%Qd2< !:T=}bX8d G$ oX |Yx *nV.RJ(hnnג@+,x~}J/%maD" @J)Y4`[mmL&N?>_/ZH YV?-HV˰Kj٪PSJR;ᾰ%z%1K!FZPW/BW髮}9mο}1aEģ18Y2T:ŚU=ZiTRti{!6re}ДҚL1rvlL )!8#ca}a(Rk@;8h磔F+E[sܰE.ZDD"p3xn=~/"뺠<)Iy,A2ՊRTT dtʧ455ҚPdG"x}RUUAnPsЍ|h`ajf_]¦gp Wϫ럃=w6.>?|6 ]IUOmlf{{_2?+;P:sW>էٜp3 Xu8?^}{Oaןz>h5wx缽9{umיo}fzX\C>z^&l/9T?Iz捜޼Pz消b❬k.W4y|z'?t [>2\m, 4J.g'R|消flX.w'2m_v(_/JM]ܢc f>[չvͼϘk:ғ;mEolY^ iǮ{aj5l{y "~消32Osw}2Omgf#Oqg«©30OMmFK󯻛S",>ldL uiɤhͦ CS*AcDD"Akk+LKsʣ)E&d\MK>#FmJ# X}qAn[@*\`e+8V)S\AAkk+ua֤oSKJJ fKưlE<q8%%%qEvaD"˲lR u"BUBc,)| hV7$0 -'R#Dn͆7mʳoPhB^؎&nCq'f{DDUdeY؎/8 (qp#-AGDq2 GyخGJ e٠JnU3kgJb4edbnH`%dH!R bĥBح`Ċ^̧4Nqe9fLe*mM{1d >QF2qxvq3f`ַvav;9:WWX2Q `0&T.v›*x_vy /y d%`7u o킭N.~7Ўe"Xvr*傶l8찌wݯWVkzo +2wXfW88N6ؿm~<˖]|Zl,۞/!Mߦa=r_ |gF+0 0l2)D==իÑCh$[=oQb;e;)^θf ?a1NmOu9y[Ëx%}iY7EH0 U? IDAT [ F\lP -ܳϹn%SWYu'\.k.c-.43p'^Y H$YڕAǫ폮-_ywϮ se/vɼmOVr7p@^~s+tȲ5h汬rGjbƖ%>mNú旹Kyy \w\qˣsW ׸gk?.}ՑT>w?<Pf؇ϽKR{ fXĦΈܠ ]xa5]txn.]^s]쌞L⬇6~|?yL\nUODzewfd”ex"CaTFHY@r]ɼǝ?^oB>r|;sLc^h }%fBeY,ak"O*deۘHҚMӜNҘl%LD* - IZR.i0s1 1+:[-f I 45hOҜ!N>n.MIt:i#QJ#qca϶ \Ym) Xќ>ێ"^dQ^PVġġ$#$2(%"I aBT`AitqUxT.8ZդǂtB6Zp-ea="<'0B6W@.cYXFO*־O1cTSL3q`%Gaܸln;'LAVm*@UP1#=z4#G 2Yܴe;3 p$~:K"㡽ca;|'MH%V<77fȠ—A8O-أ"zY%l+ LDŽBh%l)I e;XRPQчʲK)֬tI4C&c, 4K,O עuZ'AXCa!H\U=%aF$@|To޲,VPIX,C>Crh ɖVXnX" YIX @TNa 8)RMiJ"Nh*jN*hnXNzu?ЧF'┓H$i_Kb2uM,'l!^A*D"A" r >}>cUL4-cPhAI$ibMq4QLyK0-FnC*-Fd* )MII7!#7~8cے[Oeۙ|sdJmǭlB\WiE]xM|uU>(PJNu,PN:-ys[)Cne`M`LٳO{}4ٴZy~nز\3v11<^p\I(gHA *f>~^Vk!E1c[Jr*TO­Q ]ּ-Wz*08rh}?agov{_^`Rڱ|ᦨ'4Q_9/I@h;Ʋ4o#$-/ё/KDD0MD&+XgyD, Si o΋GI˶D" l\ Q8N"J*#TI |-L&BE V@Karx8%Bfl.\R[]`m!Ì[!="FFfDE AD|R&f)Z3^JbKh33i :6o VHV"ul_" 0J)`mS_Dk_ msIH gao2kH'I>R溆 e)rh蠫lٍe~ z?m'DH&jI%hZPYYIQPXd?HR/@q[*Vy^jyILf4H0V #5j=eV΢rEH^eCJ<Ŭ3Nsl.['jcj:!a}ar}jt)eƈjyԱ3a|R7MgʠeXX8ΔH0 yF'∹ňZu}p(jZgbnE'ʧZ\d@ ʛ@>ttu008`}%z+ ^s\́IuLÚ:4(70ņ tu׏V4tQQV SH\Q,"=q) m<2"r^Y]-3 US\ e6J)m +.LٓR1/i6V,_Lˎg5 j]gKzIJjQY2U%mdqq tķ[e-֬E.As;v*n=7?[|8!`]+w3<:1?:ja_k߷%|[gYmaqVXAtAtP!BK~KŮsp~;>7q؅l)ļa!v7.l-ߠ'C>s f+_ }$߸.I7Hj$N3ynʵ{yN_05'__3roqCgKS?>+]rfz4d$a1@sn:_;gvH“š)7L^V<~{娖pcBx'@]0_R~Gq5pgyovKx}W\u\[>WеR+P<^\{-s/օk0ڶgբRWkq0j?XUnj䞂/}&K7{~t ( W~a}, fضyF8HյG %|;Db!et"6 ΥJΈUt||+r9vG:d&Gt6_eNȵƨb!5bwRZ(]˽ WG Uj<4 ʌQWILRҺ,{OblNm&s)h"2ԕ2SrmV=Cy$nAZ`yвeAhvα-eVMG 1`PUŊa)&c7 ,zC`? F-f$C?( h[“уTgNnF^.93Vah(js4&-gޙm k'ACynemlx=C>E_+wf;WhyTbn~˝ވ3P(HzB ݽr_qmm,vä!B_Wr|7lDs,^m^<װ2Y} \n:Url[?/oG8_a_ﱰ:蠃:p5}27.`V?ȶ(l9ff1+YzZzAְ C'WֽI5 6S}`u{$  Z\"n 'Oq6x->pṧ';+v̊1=7~4P2a֝GJ~oge-]闲V"]c_Q: 7ĮppjCN<2^/|K/"(CiVՏ0Pν}Tѭ՗S~e龘/lM.]#'{s{nwyKkLivPLq4vhG}-"VyH{(Xzضc[{m<5zn302뱹IP2G.U9CU(Mc_YMR;D 4i#jږ}TcNEUnllQ&E+a\͏au8gH¡B+EN `GA0^>#ED03{ZTD8U͓ Zk\R3wDJʟqJ}jޢ†"'q!bH< E$)qS3 uȴt<>cCͦF}YcIj}zPEJa ?P816>ŁɈsuꕀ3(P6b&#JL**sL\}n٧GHZ;*F\Dj"v5㫀vr1YnbHD ϋ+/ AtP 8 aпaq{z(r!遮 㹃LO(eKRKGs/ܳ LN1SnJAa-A5K׬##sm޾mXD.vX BAYGIa Ķ]k[l/dxY>7^^m.rzἛjPl;m[n5|%|u_Ǥ|s]2Ky?3^=D.^~ew/Ď;7-IV ٺ~@q)x_yo=ɫOS~gM+]n]G߹'N??vR( IDAT| _E}Qخbg飼t7g< _\8din[nW>x }E)?^%'$Fp(M|+-EX8v/>|d c 13Z^v>$ Iyl#Rә1zNER(u5C=^3#C-Uc윢ZIՙcSK%<24 ʋ\\HaS6K)x Fj:Ak#`sx6 r9% ոR 4#m̲׸;uAO1_ RT@dY|4^oĘVhkxv,DN|xVrAaSmL2n4GB$o\xfffSWTkJEF16)ctW!L˓D{͍RMPNS˼Ӻ P͠uq4A: I&&2yjsLG3ԬN01Met Uj#GʓR-K$GC9o'Z0>k\gSB"Ч\RILCIUh6 l;b@xGyXTCH9*93Kϗx1]/sh*a SreDYu-"Tj3DQD昈5)8a.uI,V5ײEEGH3]?p/Ygζc6Qa3;~".'3NӘr2Z ǟz 'xRfe` ^#uuƧ"1ypC \{G淯{-ì+ .W5uBm4öfko~_XaK4lgyJf$sXmh|fLïWHiJZ/8Gl<+kHFevh^ͮh `Cp|}e;z.>_pHeM2F Ӎm2sœEc`̑O1/hԩgey$tAtAZhY:C>3&ݜذVm@q9V!J*?( "C2owT1sߤ4ЋWQŐ-оWR zt= #SG:{z~&Z6۟7[ǽg\;t))IQ=g(G ^{WΌ }xpC`ݙO`=WrmE|'LNkwn䒷 T{_]A7}LzXѶuB7\/d?6, |߯txL`?V< 2~\Sx&/{Ej__=xpK}מo+d!u͒Wo3o]fc8Qwr?7ǿw/oy39wy~_o[]?]Faz} ^nOIp9=}w}y qOYuOY}0>c_%Q /`Kj_Wp*Ygx}''|+ >zuW|`zCޒͧz.-;[|ǹ# IK7:ϻ89/^Cϛ7Iz?{8qrMg?"qPB^.'XwS4m.;QׯzkCK {އLB)k< ݼ!I RS->IpHF!}iҢ<cJfJ@8MiI|_y('bhJ׼ů= :ߑ:ZCCCT?'F_@0FljTg m(SJU`b1 ji)QA T3!bxvz{$I1NI]!&HYL: "ºOVyu|?sEH#u1iTA[#"HbH.|= 6D2\V7LI{dhX*Tf%9ksjE%kv%cL*lKu(Z8DcHs!Bb/B-b$ SV $)VH?OOo1ՂJj]<0KR0!@ BY$_SՈ$ q$!I 'H/H)$q!lvc'F\Wj0;wrFrCNjSx(k'{b7R.$ό*Qk ҆Inor Q.%2B+sn(;Cgjlv\ZMcƍ%#Ek;۶$ e;?smE\Nv|5猠,/1vXv䟗eW3{Dc_XO'wS'ͳ9y|q38x7 -V2Է{_tĶ']v!zds9:s=k]{x{^́8xi#/ZmjcQ>_5;yk/^|}o0W/;1x*/Z~}}\ɼ×Hws \+ĭQ}#bo {_~]#w5JȡI&I :)Fg HKxƠU#hAJJAj4-`i0 ֢C)G*^ 6H \!|H(x`MbAJ ^&5-}`BC] ƒ:SdTJ|ђVH.aqN- ƕSIIJAJ#S֍ibs18?T&2)K"5Xp6EyY+dž }Bis%R]E;'a֔$k (~xI=⬨hqcR kg-xUp>RT^vl-c *2a:4=Ez'}!zedbꖹ1BJ1,`88ez2N*HM ߗX$ sHn/%$Q(O#Ċ,-nЄ9zIZI]wPfn}MtbH^fF:IZE#al~4 {(xy*QZ&,@L9RIuc ! =7!cFH )IƬ"@JQT%^$)4(Qg BL0-%$$IjuLT jɔ3bJ,B%2ދ$H-~A9E+ȥuD] K=x<{:=!͖grtw+wx+8=؈9B)RGR/ٸ!}n4Gm_'$΂T2x"nJ)|.nþ8V}>g%s\Ț h8Z o+k|x8(l>h'k0.y}:/…Ͳ.x(* Mivg+aAmX V=5 :蠃:7b[q0c[+83DpdcLLrL9Ŷ663U~'wdF -{WEr ŖT7}*WP >V8W9y^ᚓI];N}_@KZcZqt.?ƥ:~o] ǝ|RN/~ohI.Hu>bSR/@j5M絶UJYd }ϷrRS<ߑٶyoiz"zyUPZjR զј_eccyclFn5(AZF@%#=E^:l=a.&8!M3GBM'YY 81TJY0JY|o|r=c-J~0z%D9Α`%id~d^8k=x՟. * #[3qaa!M-R,IjfㄸP*uQ,ghf}==qR r8 iWF14JL%x^|Di-<#d!uqI8Rc$o6,J>t!޲`Z,yQlܸBH)fnN2G5ƐМ!Zh`>¢E 7al0syS]{~и93.W|#|3~~tAtA<ܳ%6?ɏ8S(/ŒGiSl3\Ikgo2=]%+e=wW-glVtٲm.[VkndbAq1O]Xa_*7g]:8boQ=wj ][.&#Z;7IJ4dMdЊMV;Kziu~ ')E:EȌ(!5H & jCEJ.$EJ4BD2TG-5C5REj&E! uźjhF}^n^(%PP<< zJW s#>h'1zƘVqnˤJriR@TM\#/'A&XmS`}i#GصIr#VFbf"le%ɘ5#wAݜprXtAD@!PRV°}턏Xf:BlM(  { G=S ў9Q J 'GI\DL2Z8,&jג2P_"J=Abu_D9M 6M03EE%8< eWil߶|WzϓlYk3LOx)˗Z*&1 ,z]qĺJs"MAj/?H$:a|ˆ^RD.-}$N(E7KEA}rT8 4(-Ȇb罔aG*laz9'#A5DhIEzՃ=oRf{gM[I_T:q0)#b;$BAW^a#uRhH#M3RfRJCb|w'?>]bfph<odvnrO2'j,( J^sE[ص 5FΗ-62Ʀ(鷵Ѡ8O.HQ2ʳߌ]Hp*cLB Il%e|Kq& >(>D,WKld6˱?pE  me}EMi岬^@ "ܩILn:;BAyD{kHH d.sf 7[ٺxa A%8 a<\dBL):saW蠃:蠃:UĒ?c{p]ܱ]f6+sԆn6{8ᨍ ØwnETjB"QrI=.Qb S[gqqʡ cNc'/@',l;=]̖k$e3pܖV)MUZ3\#޾-2v*.[H! !?o/bl+F\#9Dk2>VH*Fח[Y.;oS uIRTV+Y:yu^6b,7BCm{NY~\z=$@s]nn9D GI;蠃:蠃h-rw۷26]gQV'WCwAb_`d#wYEG\^"ĮZF|"AtAt!Ip@Ӄ.h11 VH4Û4)%-Hfi$#R"0le hRJXbL 0J(%Y CyC腔#M- p gI@yɈHBgd(c(k8H1&2Idh{rExUKTT"IV1$iD3۸YΑ^'QD3P|^HM&ae"wz>@*וGjCW<ű)DKף|R8Zm3<0AU }fs646  cb&f17;4qm4~4ڄ(R?ZI &fmjJz3GE(%= '4߅()X7R_7[QL\bQhnv bYŘȴ󣁕 V6l$N9L܍#8M`},ʛb0B:"{L1;m!k >V+u(CHgIuD"K-MщD%JEģ ʢ8XE-U=F$M]7 r* Y@-e{':u3oCߡ?:CS/K*3 5H&dy 1dޫzf9Hh d0 0@Æ76@C^؀lB ڒamLa^A’%("ɪx"L/NDfd|$+>ོqDd |G%pJ[/u =( >ea?"FR9;!*i9{|m4ƀW=@H]8[K_ d&‚¡!)**PDTo!=>wG0vDHO+ɈA'xɟ}ǟ~y[vNAoP*~O0a„ &|0<Đf&H_?7_{',g/}WX3G,~/2o6YGX^yP0a„ &LDUUJ +6, t["UD'[9H#bEBkr:R2ѐD(I\CԎYOIP"mc mJ2;JAT*8RJpM `ٰ 3߁ UUB 3[i!&MEQ#Mls'p1?Uxgckeyɓ' \!5 76!TwJffs]r?,XϹyyAƜޥ͐R|LwffZQ$h.X. Y^<%tp1"tKshۖRʮX]U8`2_ Ժ U 2mVYmy[,͊w.;|*YZk=r@a?{u=yM\`lKj>Epйk\m_Ŋ 'E $AM|[)&"R\tpr Q FxX/=1(pd'& .7P'Hx_5bQAqv,[|'yPu\^X6/*%lbkH97>]+/ZFh7[ X-cc4"r8O[( J5Vk|c~EH"P@oK}k(bRnGP;Kt;ny?iv] [F{JF}C%͟6mmUeþ y}>.f|1X!GF6s@M &L0s۳%TO) ! JWg=do| xuUJ``Mnԉ0a„ &|Zb/詄(u6N̻fPƈS +e'AkH5}1#D(`%RuWUtB =,OwPF`&bZaQ*l*Xi714QyRhу`*o֚7WiG.FD|vTn5yoxb-{?W>O011Ve;h=,?ܞ̂n9qkK 4(Gi\p8^ 'hk>{OJ 0a„ &' 9Wkc?eAZQEazں~V& &L0ag*E(6)M떺 1hFPQl=3b'rJ4PBF@O6"J S 1FZ!9MtmՆ4*F)Z).P3c(c sr.Zf X4*é&;n8s-m} mr|iÞBk"FLis',\L\<~G^ {nlR RS/`t1Ϯ5&ּŗx \sRԡ:EG8i:( t~[FB4MCJ#]  !l[f-q$ڶeh63fu-՚4إ#:ob^9&8sx%й%4zML"5xn8=tݒ.7<,ycXyGZ0feͬ_xP-6ta!A 2'tk5~÷?hi4^Y <"0x &XBӉ!"7Dd^$9%fQblu(M!evp >tx LVxdйA{<>LJw<0O26Sկϸyg5n,~-P-ØFt8Tn zX0߈$%_)nMS#zlVo$eG#;%8wbȃdzXw9VBO&3R#[PahzoCIiv" JFl=ɃbP+0G Q%zoJC{[tT瑰 6$nYo1Im'w„ &LuTIVC1BzR1(l.4rf'Lf0a„ &L4@kM `",AeU45H m T( *,"{ PSLO<AM?yzۈ?r:<&l>B37~kg 7W׬y_PU_k_>sR<7'^]G@}&lNq}nCZ #B!t] n|Gv4kŪшX[{ 䜺~+= $!T`hq4Mz{H)Ҭlps6%ZG !%lRm=q褹OSn%P[ýSg0+4N^_TT-IJaȄB|S6uTSb)DI>*("|"{ " ]no)͌@" )UV5# q{ՒfMj.<;u}TғŪ`0݂d, P.omnsPJI1%}f7!J&{Aysv2O8XV+2!NzUF$"jD˰Id aQSib <\Wta{O$?\$;;ml;]s&L0a„ >o{7?`͏}yN{PnhCBra釁Zކo~w &L0ag &dEIu&;KCB-E` /X2X15ELk)C"%Cwk:x6FkM0rN_hєeIĔ-CȅbIB4+*kRTu^4#q)P#\<5Z>o˓`=LG }WQuX8KI b1\ X7eI'deN~yIroMSW6pt8w^z:..D,1^xrAJ- 9׿ 瑋 _~lhtIHJD8qJum`@S  CTulЪμW*HAY D=ŨMgZXiaӫh7@ۄvln1Dn K==:iE N$X51sysnR(|y7S~Qкȿeɝ+"Ѕo6E-97_ԫU؟?VCW$Im1ص'u !l#{z +lZ!i)HC*xֹ k#yߎ;c9o *USiwHc.w?] y|^s<}PYwvw.?yzӯާ8$ {FRf>~KMl*e1z! 4W,lB,7kxh^2\3?u,Nfpk^-RfywɣCWnz>% \/\o6VhtDZZtz)4ݺ~<^Wh s) MZ:N zJTl1EP˶?'(NL+v EExO(/cN 5NC'c@DdgL2F=wZJ\xL?al| 8)y|yI Ps@16{^YYC&u6۟xRS/dT4AL99и ,ٲ99Dl@J"=tLyCx>lLvxM}QփU4mmɿb?ȿ~P.YM0:*@~Rm3!S~:>!g-[%}`Pj߹f#&L0a„ wb66V, 8bNkb-텪^v0l'E1& pY t7ERJ(!3RA-ZWBa-*e.%"Y\enkі϶"-17jʂ]ųFp=%R b/l|( V:^UJf՜6cOԖtȮ!7ܿEb" ["Of qX() I)|IK?ܛ5|k>RYM, ռ$lks^."[2 J":6OUUv-M~FxzMsEjSP╦BQl HQI\JhbD b"hVȣe+!%UbQcm%gW??C,[M~n^# \QA> W2nsnlep z)%' IDAT z 5O"(XɪT).)BbF =Xnwm.2"Ki;܈eG>Oe?|!dT7aOc.w&\{[!Ox`SO`]O ٮc czrTvVuB}=x0IΖƀ[4۬\zF[Q`L#!ߛtV'z,Y#SLJb[e`E4X =B޿c`xT[kjCcl V<1DJhؑ" =qCv:ݷ7[`/A8J.O'S ?gc <`Px 2M &L0av27TOG_>߿=xxɷ?^~ڍ<$6p=t&' &L0ag w!FG@j;ERRC$gJBU, ++oYiNY#)**% Dd19(^6P!'ϐ_|$iM$b!vB[f k6o(cIB<֖E@󊤄B zK6g/Z.f'W֤0cU*P)՚pnttkRP)f*. Q2wJ'4 $Wx8G H̱, χQέϴ$sj"/X/\E; 2nN({TeuFL%&OU-yO4)'/3{[zwKs(UqeNNޝSŌZ,%Mst k _{৿%3f'GkP1џlxQ&4XOe(2;iO$wNWk _AH ,*WDKm3E %67 o/ - f8o|'y͟νS|\/S![|iU 5mAt"ŞrKp{kL?Tdǃ{ǾI㆕dEj Uffn02q;Eؼt&%C~œCNԘ hPyJr H}%qR(H)[N+%۾D7#eP:="Hi[vjQVĂ}ݟv:)!{k IE0H3d%ɈW y;P14}8QJ%遘9.;uqj}]p Yy>ٶqxjwm鳦MB} ߄ &L0 ;A)[+59z򫣛';rCOV|:mlǭ/x {RHs=X>p„ &LYü,X6 H)*ePZe ]琶C)EQ;T]vl%,LlIҹVs*jra̶ quITЩDH < FX+(IiAV47*akTK~ԡ#*i!/Ê!1&|Z,lk"nM E8-4o^u`M`tlFi1iӄ=T 7efn+}z-_7𔵿7Ẉ&):qZ$I^bC,Q{sQ:S'_/|UPorvU;y𒪚S/qrZp}99+u]TŌyk75?,]>'=A'Y)a5W|kMy! qҙ8=VJZP\ PbUiy,&)A f++W攷jN4K3,y /Ym?mfo?2 my kc"Nk"GXlF+>7=v4Q#/կ/.A Ş;!/pE-PyFʑݮտϘM=#2zbV Pfկ!/w1BV:!8'J1(/Kʈ gZЛ~66-\eRZaz[9` 6|Y`:='qh !iA 'h%R?0BJi'm I?m fFzGb}(T mv_z%! #z|L+Fm5lw۞7 x0a„ &|al>okNM{V{(ۼovw5Weqa4„ &L)y$8k-)%ѱÍυideaB%AgnVєw˭[`z!s_5ev^%QkbjQLl ] #`ͪZ-#E~S}8@S8D!0u{|հ6<^5Ὂ["֭ ,!hPy^ ߳96hη$ܶ-g&ks^15(ۀ=Y+C8rKA7}1unǟLY3'͑MUTX0M6え{]yJi]>t?s0a„ &L>Q{t{6rz/+{sDŽ^`_oE>0a„ &LlജŸh7 4D\FQPu 3m0HL t֐f#@9×={1{VPվ"xaq;lDL5(i>]MTrc,DDXt`u&_r{3.[J [tb4hqZRuQqv&Pj2UQ'|~uRqFUܚJk*DH0Is=@)D =YIj{V'H*P̊t,pQk_|^{G^\ӋQ?;촥>Wt gO%3`A]ێ YҮ,e9=,0(c̃ ^L`*OʂibLeRXX:"RPv(2PLy"6f=7".O4[U1:It=$ alvy&% HOryy29;>RЙ5&g0m,g?3#p/[޾4GTǦel_AZBO`}4'`ْ·b4YI2'L0a„ >㰰?|(K8-wbKg1kO+;>&L0a„ Z9/Jʲ|Φ%'®7?Ԑ)#&վm@S``P ((%1h6ѱZXP5 (S&[.1D$g|ҡ]E=llj6˻`&= Tb ۢc*^͸AKTJUFes*F4A\$Ā%4L ~;3\oM{O6=Cq}|~J{s!Ivχ :3Xuښqq= &L0a„aرwLqGctcv E쟏 pe߾0C܆Xҋ?4!fmBЄ &L0ƠM)RڒJ#B3s(#+eĘ rEV#baKfnNnl618rs\o7V錊p ژL4Ą HV!Z48#@Vpv]a^8Nž*,sּ;޹ l֛m\FĘ+@]B<- "D(ts Ƒ0Q)<]oxiK5cK}n 1v /-4a]W+7cJ u~\Abs}tԶi׷'1 fPbz;g$ JmDN_vV!YՊg ZHĺ`8V $%:Bj !%wϹ RDҒYQUsfqJQ築(j :YBXû@׭dy޹%邛貺2Q} cZ4iyքyti:V9|Ą6/eB, 0QОҔjJnB(49S]h63o I '.pvٌZjZ^/{wY?yI+wj'W$.mDv}2ս#B+h|},JIh(f1xD@40 Z*3QY#D{|'v -}QAF ĈċKR>70?Yk#ob$X NXZ=6%7DsF25AB m͈M *UG `:kP;&,Dtxn{qHbEv7̗nl þӗףN1L yhѶm na+nn*>v&L0a„ # ",999ƭ}`FgT/W_?5lTvjxU﷟Pj:߸JI[]4`Ю7|du3ܯ3l( Є &L0Gmۢ<:m+t*I&DU:/ - ĒR S.N*JѩBɄ֚1G;Ykݩ~R`4q($:0&Ch]. 3'Eb+j+[֚l׭rfγ:mB`HF)x;sޱc61cOfܩgf5!'k? 8T?o4ow -w~,?\=i \LsSLXk6 hFSbI)-%H)%Hb\]i",gu g )lUe]SZPq#ִמMXggOOxiaN"%ʚYIC0֐҂So\5|wg(1*`]eUW21Q]5Uy̪|/kk/8G DCcrtI @ I+:c[|UF%"VE)A6K|{$|$.ϝ !@ٌ8l0cZKi-ə^ƭd]sFZh!Kc?B'\dجD"^,_ՀGu*c#1At4(m{!tkL$h dt)XEH!r6Dd)+@xh)ʨ@qy8!pGdÃCA 7y Q;8zȸf92$`[RC8q&Iq9˨qY9_D9sZW OD Xb IDAT^ߖBc"#s5x"^%HWNroB:ts4M6ш~$F6r4ƲnP%R(%J%ej$(w}u* -n>#yaxmc???ӇֲضxW9ɄpV:tСC }NZu &;^\G)E%H)q31!P"#s ;HO2tbrQh;yj/sH[Z6 crK!_Q[J*2=꺦N5,kg<1ZVxNǭ>7lo߭!| jB)Jx0j9Q's~"\h*5w-=gSUE.bhH$ΐ*R\=99AgT1֮cNH!r6avA ї(e P:Iܻ'7MOWP_ e&v'Ǔ$N^j'SrS,wnjEnqۚ##淓yY'yP2^F2jm-c<~'w\]mC:t5!)Yw}5"ׯHm]@IٶƃtL7Ę&Z")xI* |zW+^wcMJ\*DqfM/'壿^E8񘵵;vwСC`H# |I ޱ$,aSQ h\ =ȖD\R RoQH JV"*d(P4pzz8.ċb.*`#WchhsǤ'ȧge$K4Mo8;ERCS/r ,峚  AD\Z=N96o_qs)RBj*hm.0x|{Ϝƭ Eoe=f Sv7г)eYR{K$·z *}:[5r H:tСCpz/}B2-'Rc%en2rP.2GdbYv>Ƹ +vK:.C\y:_GCR^Nc:C:t@_O,hNΘ|R֩HK80,I)T4::o1W%B 9RXkŵLi 3zB!@<=CK—VyG c ia$RC4LeM1qchX\X(rL ;=C)m Q6IkS2!xT"MV 16WCUuǯ4)=3~#<\ q6Nwy݅\y>o?˕;<~Y2uTW?r) ?ר"/Gd*!SHh9IpSՄv*uM|5}L (vbN̨mEg:ߥi"k፠yͧ8?*QTI=GW.yʲdgҰ3_#VE*T4fn8Ij{ZNZLJOaibSQuW3j$5TsZȤ@G3Tx|Xv^h>5k D#qH̱G}J#Jnp&Y? 8繼^}79vejU92D}s)&<͛v˻9:um79lu THV[~{'α>'%RHB68{ =􉜷y^U>'iK̼Az|.p3d^A"{9sF!þ+|g_d`7{*Un9/o\XR4Zbغ@CAՈ`ȅo[fkѵwV+N#CԜ`U ` #+)s!0~nH1LC|7k\yk^}0u_:@p zƆXJOJT^_kipr!TDɕJ>TG1hHsU5xѡtRko%DCrb5N= MhhnXNQ{9RC:t I8en *U Z"Ĉjg!uR[5!ŬQz!mI` ,llXmCMBP%۪nxDNUiV7MSuСC:$6H  =Y{>Ed2,?pڥE0=hO&i:b1%ݲ;V孔*8bQȒyaK-XS! nR0f+o?KY(m#H ES6&+븴{=!oo[N(癀,䇾ϷhDϗU/1G˽ZYe:~A@x^wlcgS [@sK/*j>o$,}v__ d&fd|=~*=%xCk/>sNC95]nٞ VǩHӌnY132w ,(RJʒ-mAa^9rAL]A$"b y 4^ŻnUQB ?a+ol1Xlr-vLGWСC:@f*#8F1y"8 i.XkƣtRtUIZQSJ& mK 'p`}Zf%(֒eIQ˲ Msl2ʡ /&#ZVGca_XEuU79d7`Hxi_CR+.澅2^[lms& ,9iAAR4ЪvdݠT蘹jq#_=ocLu b&y|7ejzH%;{gX[/γO){oGԷq5 !_93~G.WĸshnC)Cp4D&Mв%c@w2߀d !Xb4 wܚ+M9Y2eB}D/NP6p$P0muy?ƭg?dunB"nhFvKRj֘`Ll Rq# ,cUT՘yt e!z} `O(ghv|,JBϠd524hUB#7:Dj16fQGTGH2 `^[0ŪKy|/_>*b禂M9u'RC Pl6Rd<~3]ǩ o"81賿;œD{֎_H\6Ah$yx50JlxM!dY{ϲu!D~*#mQNǠ s [ #\cA9ogIߏ%a&v8'Z#0,jrihO6pˬ6,UDc9\Ʀ"#Z—"1v·Jv w-_'Inv=Ri~Je} { B/H?R^.i-vGbrRS'S9lDؠ"ݜ\ME.87(<'}(>g ߳!)jC2NКIPR}M'"8+\4 wR.la,=AB?]n˫S_y(îu*r䎻N,\ ͅBC:tK )jhCS8h5lHn v!M$dn^iiyg80M8ڑ^hyU2hmCjw%nAqvzګ86kءC:tXS5S[ѓor2}M- 5#a`rBVo+jY@7Iɺ[)p%4T`Z4s]Z)-:##km*5R\DdPFqeԢ Bg $_?^27J0&FbRzbCcXĐu,SdyAA@H An Č:B#M#ړۋK{Ŷq_m͏3sMU=F~wF1>wmiŀrnMy]J693_צ;rm9J|._-t4?3^elO/ qӀ0`-GNa:}628EA?ٞpeiM|7)v( Br;҄i~~]Zh4Z( w 2PAR# MFn== }c蛔C>bD3B &bG)a7fowLY( bMRSX_ V fԇLp33FUyO?Zb,1قIy8)֭2rQT^HAQQʐB&e'!BQ^3L,u AbC E|.h[|a )ؠHi=;L) EMWu..>OIT[H8wzg('̴$F 49]Ŋ{ﺟG^93\4tqfgܤ!|J;|?ARn=E{xϒQDQ҈CC3b˶8kO^[,,Wվ,Ԗ]͋hQ*!e3T6B^Iw $< x'!Sj :.rs# /lJp"?!99Big+ͯ>̛n{d:0~F3ZHc f۟6ڇs:tСC/_֗z Lݣ*xY,4%%Espmp"7K5;!ՎVZ3쯡ML2,'!->#WAСC:t\yrq5ʥ9SapΣX&yu]#RJJnS2;4A]$,FzzBPNkhRѻN 2(7suIe( FQ(1ck Ex|{W">֚9?/Fkq kEo\kTL'hou"GguU-3ڣHV9R9G90!"sc%`AJ"j/?\?BXǞ$O/p!N>5ؤZ"2FSL{5̚5{Y+ӱN1 %1.#c!@fkD )W&HZ7T.Р.075s`UFLPhr={ I) eE zV51."n,Ȍ1hѱ0ץ IDAT7#O̰ZŠ2CyCx4ِtHIdY0 PZxQD e@+sG_xPDHg )L-jT2:@|.)ޗ/Fs[97onKnD>~i}yǣxk;/맸xC#Jiz&[r&{N+kˊgs7834Nrn7sqGsGϝ-_U/ %%_" % B"k&!Qp I_͂Hu [8ޠoKf6er@ޝxeh4JG0I~_9 h U3a`vg.~3d[w"C؊" S֊) Ifz 1BjM8{ +QN&)"Ӧf%k!d=Uh-A&4>k>ȌYpsb9R$zsK?@_ pGH "v[ b 7]Q,Px7L%f?$cQKSӫq~`qQ` 't(44F9j[atIDdd|wit?DP[N o9?#4LMV8>K|g.@xC gN͙Vƹ^Mp?>p [;F{ .]|kHpDSUA I>&jEUym4Q!2غ.k/\EEu[x\A^hI A8А=K6Ah|(@*j{}%>jhF|_5s;7S&ٓ^vp0zx .6::6lRl{9}rhx/]i;?ؽfqt@Ā= t ye9_s ~g~+Y@CyZE#)+b1B$jFq%tDMB5yVpY t'Cvc7$DqˢN7 o ?+y{~t{u'6Cf@(OtpS &T)X`Ma1l d&Ld/Q7M@(xy~v9ӽ繺-{O#@iPa sWDXɵX*EHK5 us@:Zy9󙓸־UGsZO۝Dsoh#|APv)P\ !FD >BdiI\>/ѓ!-Ak5(Ti=JZk)'f`z` KC"h*2gP%1ePʤµxoh"̽G"N,({G"Kbwn28+ 4<~Y^>+w8y$Wj j7?kGxݽoy?[O[lp3rL+Ƙ[| myb6_G(?a &pznnL^n6uIFϿ g-"2)؍1mVirb8zb>M\"G"^8,ݥ))h](Μ;9{s3ah1jBpU291DyAQye6SZK. Eڍg ܚGjCd('Wk!f@]d|6-/t,Y&4$x',Xb x Ac4Ω[loxi||ur) xBwx; }BK<Kb FDR:loe u-yO_TD Ho7k<"Ɏ8FlLd5.C$LEFҠ㘨*:j9XA@{?ǩ330ӌz 8m>Lj%Ɖƕu^ZF[$D/?LѺ٩Pb { 2f ću^*uFʹ no9HZD[+y3)vy<HFU` H Ij%H!P5X/W%YD%*2׏'[~bycJ1Є-m|)eZQ1"YO6ψ|C2~>#}W}FָkD|E&ؿIAl@/&e]?n;^4JJރfh!q BOޭIŻJgS87_wh dpsn"[@ ܡC:t !u`^y]yw;ݗަgӌI$,2"R!L) *0/Ure8 UvXf5 4c͌4Ӛen=ۻ=[x]G|{s}ϻ<"w{d R!񈝪fT7c^==B ?yOȋ)FCCK<ݑZ8$^aoN'}SL1SL1.mPR& dC6"Pet@lP! Z*ϘlL$)LgK PW yިRz tQ(bjO,P\ ̰ⵂzRa\DO+ D{M%%BJW#m -qv$53Y|cYxFb&ŦX$H1 Ia3 $bKI\MH0"r$5.h6rC%59y ~˘]Ÿpڑbkl77 prvoȇx<0?4]|L3,巟qK,/up>fw4 8VChǨ95#o_#-9" goTi,`! Rpf9cli%-qX<ݒ}dMGY{EAWԵAO<*A[)8O7U(2H(]xDZ1孽v .jRH=˃[ .LH) EtGEQ0;;;ٯ%ZJ'0,T;5-CSa/=GhɒEv1[óܶ^Al,l#eMYc;dw˲7k u 3(hmZjrS4|8ěUxWEM'd80Uv〠kijr9N\[l߂TF=#+|P]dk* &DTFŬ,߽Hptn%hِ8Uh㤢lhHX OqJhBkITwCDvHhGֲR:V({izWS $IHE:RZk2Ay:2a%qredS3O*5ĉ8 R̊FMp<>i,G̴2J'(ǎXo#OvkaݟvqƐrbhλCkj"'ٱ5RhKk3Rƹ@$|x;)*-^9!@ܒ}K,"De0u-(6<3dE^'e%~WHw\ ,Zzd` {$UMcCaC܃ 5ݳ1АXT!.ZX= N)z ϭ5c͏ꀫ?0{{1&:Ll'a8w z`|{? ~?{?:$crοw̏|Vd*SL1SL1ş&h&*\q,EXpzҸp.j֞$J ewͭ+szЫɂH}{n˻XQ"1x55Ji|lS0#,.2pwO9)b)kcI2왈ix2o q#%IC< $i^^`!ggآ&ǎgT`FM望|vCR)(% DxWX!"B $JD@#sMC_Y) R%fڂ$tFG7E?(`~'[`XXNvi` QbO/FE%G`piH,%=H[n˂:HX˘yKQ&]FwBOIG09htEAYV<|]OS_E3xȝPsEƷ|h~s(¸.ϰ Z:C>xx(l^3)$Hy+N'7#"1(~g%moǡz75KۯYk,eeIHK8wWsH4 OmN:/HG@$x/by|`v>"T!`*1(EJ `!|--ٔ'}U~,Myt02wt",-A\k\q-(˒{;H}ڕS'1~뛠ڤ!t//%9v\S3ctC )Zv0uAYU%}qU66s1ӑda#'&B3EQ*p1, J7r( IO/iKŜl!C4&6S83˷6 mcJSc ?IDmf?,9&X* /< j6/U1n,ZE(9(Eh2p! d"'Šy1H?"jvoAF.NjA$kiLtJ dYnwv05|ٹ,ۚ͐@q_[I"c807D3SG 9rgK)$<樉#@}q@ֺ#=P'teAƁcY&51{}?pdW}Q~BWY<SL1SL'.x)6%!{5pƠxV.) vz $=9;$nqQY05h\2TE&9G:.?~M1SL1S|mj*ć $M@$zD65š C1nc%mR+1$HXz-ѡ&nBm . "2F;Ѥ)l3$Z D򊺲MaOv{D{d֘JlfD"x ($~$m1U~v_z\I:U7b4Yc`!َe8&!l BT$9<\ IDAT0Dhŵ1Qc6(hbLeWX۶̸QF U"&=rlݽ_x߇?y'P>%׆v*32QUQPv' RP;K*5Η.=2ܺNnky7WX9yMIh UdϷ8|B5ׂ=:)tJ=4ē cBZck:񡚈<([%3%H6S}yOkkAxhkk-'lj:݄׎r0b0c/!&Yl_$ X:B Lz&'o#X"3J9vbj7@#F8+5cel$V8PľnƬ{8&;.eQPU$O+vM:fh-W Tz#gWyC\z6xȐ&Dx؛T䐢M%4Oa6vCLSdMjD,$B:jE R + gQ nJ&cT0>i!)J GT++,tpֱߢۙ'fpu4U;,3j+FeChQ:>ݙ0h7~q< l(zr#EB ic%SԌIUQ!1bvDA$[T2Ou޿,*3{J|N CVF{|dҘ@JHg1#cŽ=ߝr V{DU_yBԖUiY9,J # ٯ)@>׉5GTF$" נxFU3 MHT6X7$V@QE@"y-_$􏁰a=+:Ȁ[o5>Tqvh)QxI$~67DF{(߫= uփ 8x'$$TijSL1SL1 ey٨"xcK^8m,\RKFP9|[1Wr5w`~nEz>0hB fk ,c/HDhlhN!@ o}_JxsT,dva[89Ƞxvƾ#xC@bKׂ1\iX0sVb }7rn6s'o> \Qʱ[* B1IB]pB,C|I~ꟽSEӜ˗n&z? X#2O(BJF/<΁1!+C(-kkstJǐx ߪR mc[%,:[`e 7f_zo?A9nޛܺQZ̟?ybq.{W0ۗP>'Ҍ܁a`jڭ یE׎(^D1RD ý&3IRc|0>[{cvgY=bf;`=VHB2c#5 p,EGDG$֚BEd8o4;'hwv;kl He`$s^5acpd=8ȯ|b%NIUNZ"Nz)xshxU9$FVdÂ[sE2! dI"3BsԦ I:;B0樔4"B$Q0 uvo |K9ظ^gP8b)Jb4.Q, CΣШdč+=(+Т ?No~={iͮc˔aah U^ w"4;s =X&Z5~b݂_?oJ] HDd)-!$2xv!Ώ `_ǭפdۂq_RmeHW6f! 8'(@Tؽ1@3Y/Xt4os'+5RF;%:p!hWJ6&wq =_:ٹ })b)Oo`2iLN"#s4)Ӹ_@i$3p d~fN,/Qۚ`k\xOgOg8uDƦ/k*JS%֥XQGºrdW y)b)kVq(iFJq0Z6zА)u2AKؿu^2*N֎^T̏O27Gwc],Yz~v&vL]U]Bu nH0xs<嫔f7è?@ɹEn79DY7ϿF+x[T|)Vƍoш,$c f/YHƞ UGa1掚{,+nCs0fAc\E?:$ Q4g0 ~:mmv q6w_a .Vd`lTh%)ikJkqM05!+hv:b^<49'ytDL]YJSEMx{͜pHT4oKA,{X(sHyx*JMZEظ0 hʹ3{kf CBg+|W"x|[#WjσKyDм;uWI"Q IjFfĉ Z ¤`>UaG5 P"dh?.` (@ҌFOC DIΦ%V[1ytH]z!9Ț ߭T䉣b6*Б ) q'-f|1 Wx=l$z)b)O2[&i$ E$D;%i,U@@?lx3GyY7^bJ9_(K?>߄uXjO˞jsq9:SL1SL5%# )R#[!q(SAfݖҫ_= 8%B-kx?<nm#}`0khϾZXlKEB`X[&QhBרDTBev4NuWKWo>~W^y%nr6\hh}beYw~̣wwk4Q%iL,opl1q@J-QF]ڡh&.+!wW]NzH';_ e H,:}@i_+ƃyqԯE }m7Kv|;F*Oh1x/O ^[30!X]XF7׷0;J?7X!>UH/8<7KKYVSFonЛqZ \ysDuٸS!+ ]Fc\5WJ* AGkݜ:%myy%E'QzL&I<7o#EPc,:n%U^M_ySb9EY['JS6b!bk|\#qQ]PYjUJ8$}[e^(х #Jgc|K^%ߨA,5^D|SmffқBXꑢ_BFMUʪ 2RH_8%~<,32jg:[$IDoMt#Goa|i4OHdHtћ]?A<}b*fP)f`Vx1!*RTn&J^`DH$ c :2n%+j%/& DD[{Q`c}&?8B(RXS4F {)\q1:ab?H7cT9c0?/XӋ3|>k8P):I3-suzdN&~! I%q}-nsEwzt$w#l)%8[2'Vfqp%^|E.]~ e x5]S B4rZdcaIs!G޻[7m=7poȭא{P5LK zOԈt^y ճkl=k;VnhyR"aɀB $iSmH&5{Uk7&c{@\ƄQE>V{wa"IŻͽ9ƯYbPKļ[8C:d܏%pC r^!@QW$))5SXX$!wW2+f QqE;7e)04ߝmc,!(/=o{|% ~{4bb)b)CO=*;ئ?Ǎs^1v; W3Rh7,9W>iy,Obi.91ffº3Hµ9. sg[) xpCs{cK+U6ݟLSL1SL1$J/.CB(Z6-)t3iy5󧸶=bclg^ =QlI|Oo0߾Dh}@+rO) t[o0ZCsc勯ʈ[PۉPSB)b1vxzȹ7\#>|_|69sGT>PylCX'̱buU(&(覚LJ {v䯔6 A!ewkXx7Q3P}cݨDs@%E&WB8lC8U#_|E6v[ܺ1DwIhp_^DGg%$p}z~w R!ꈳ (0ڭ!mO2yc՚cz+ ݴGmK[|`PW8X3Q1i+t !X9~K<#|%wz͵=~7>qćfMKP*bRI&(ڇZhQn<} C[;_*e%DJKHR)ν,/޼\99~%#/2 qPDz 4E7)zN:Ko5-3fg\If=MϹEZqL] v;'?sU3N*^9}j,;:sa?+9>Yϑ^ AVNٓc*ol RDN+nTB(ݚr]=i~ Ci G3-Tr7Ȳ`c}>'Vϣ cuK)y~ {{$R/ Rk qCq4?t,?obssk7^֍[\A#"]A6vBOϜ!JSE^, VND˂q Tc%+'kH%EB`/Cc(qhr Np bH$ޑxQD~Ўp'fpi~AI^3N)hVQYҍ`n"㽀{`]B!^Zȡ$ݷySBRBQo48nw 6D` (oc>Η(xdh;8H"gD6Qnx<7ɛVJM#@GN~}GSL1SL1ş軂_Bsk8ZAQ7[%2ӓ$)^P"߹֚ٙY^{M鵡Bkĩ9xu~L] 4W^灳gv<2f@:Om!'U$14)b)b ̵4uhB8ϘQ9%еE/yDG|MpnocxAJA֒\E=)|bz\9" |qb<{>3j7\1 65pi?=?|InY]\YXc+!!]˛Qr24 9PETQ'9-`?Mڡ yWyMppv78SbmD dD;PNay1ʵxI,+m^|cZs~L]c<sgŨd8̛ojXlڕ"Pמڊ4Shz+ZـT1iO6`:z'{^̋/}Y:l1M1"du旹}{ǵ&77Yd$)'$lePxsYZTj\bT,̝dggV"n\k21Iɱ 0 ';ޢb4AG$HyDZڠB5e.^Hm,' z(lSC|H|mI`=^Q$d={k"M#@7wݙỾn[ G@;ŋ %% P*b!-1ֈP7 W?y&ByOp4rEdjpVQ b ې@ iƔ4(, pHJ|iAb'~@|֒fPJ{ZFfk2O*Z9VDGQ,EPG@ ;$D2? ArB7 %f s=ېwj*p̀sc׼>Ĭ0 LK3ysA75%b)b? ,ڕJD@@i`8.X]Z M'͍ N.n~e"Zo%+ H O/#X=~kTƓZШ'jeIpَH"u= CS(*b)b1ZaM-ߙ"No~/3+ʚTT%dLӦEMikƘntXf2 D3%TjRUeeU<;tJژdxFĽq"xiT,Z7 O+!QfXG .lVݥK;}l^!&Teu(BA\Eb h7 w7I{4kj?sc_O oxwesH@^lvqαi 6j"~,9s4QgXczi.&$Ǔi4.FmԶeYdFpN85j#AY-~c#,MY[!H"j 1uQ#Umi~mb!MJ[UBD2AĠQQ@F6*])[w|'|:P}VKu IV|klo [h)$2:)%$vvUeOY=6F0$ ,ZYDMpTuVE`8=:G=28vr_xgy{yQ.J0D!fgs{O rA8->9{:FHGkDqxGVC;)AU8e Q#>Ufg9r4?y;Ό@Z2xq`j e$8ۑa"D潧k$Z $Y9HId$8 -IuL,dosn'_!i"ch&:g5l!!B U$ ب gHJ(2@@"4s34XQy:KQ"HF#OG NQ\ݶ &p41(ATdI=f@֊s&("#4H!&W8 %Bdu]c$/S65.anfJ=MS"ǎ׼?8z7>r׃oAj <8\hd]M{Wqs8v8x"& 6ژ!Eш "br7I#ZTD'#ax_o5Yw2E t$.c9r}nڟgb)b)@7{C8?!vK䥧-h-;ڡYᕳgx;ϐ(`4y0D 6vY*\w?evvwyS%<x,LBćh%&Em$5>ySeSSL1SL1k,QhV!xbhcEU+6c>pȉ;x/7`$jPCfmέWri-cpp3shq+g(n b4&Q H9cEf4x!k/DM9.5$Z*;2ׄ:x?C| fe)w} K%UB  En^;9x #mQ;OG/?mRr_)>{?b &II6BZttO+gިu.'1ɥ"($&;-fzn4a1N*•+$t)k R \F/]eyx÷ ;qi֜ "jAau#UNW:eR A$r@ӟ@^ u 5CJ7a{\XnK$+G)gjD~/,hP1^C'MDzQ},=2kǺg69~ŃxyNB"1# "%PR"K#$@Y*Dˁh6oT\EEO\Up DK$M /''wJ PryH: U"E(눓_Jb0(:4KgIsO#,48I3ƝwV@N(>g,_0K' [Js~p}Ȝ״c^Rxo^& >x]S節_=5SL1SL1Ng-~ɳ#%ESK8HF2mk=2Z+66*RhA$C}gTE۳݀Y9 a5G}Xy6_74_B63ϬyJ* $b*@88z(eguu-LbӒTn-3(s2j(ˈY%sB&RIƨlukK=ιkTUF(.告N)8H) ^!E;wc~Op._/rHT"" z{$B1M2k | 7ZڼbüBv TJ(FP:$7o-jbU14߸loz|tِ̽A (P:쫅Z\BUcw mA1.-9B5$-C,:2TD:IUF2"ZF#შtW1㜿~C \|QB4JP,fi6w8D Wmwgys=N:ˌer?ޢ*&I&j᭠0ףstnoc6v̹<}vJ^AƁ=E9 k{M"Q!* 8&ԕoسae5"LSml{F ,ZD [$FJɐ [&Oa0CkIL:XL4AeYВЊ un*"r$mjM=*y!f- 1Hےv! \Lzpɱ{2ɕ8Y\?a"ozNvwFCFyv9G[ўC+,:bk']]Ue$@J9T*kY_uT W_kFmgnv6_fz;VuAϐ%F럣97-VNOm-2ּ_g R2$ѪMzZ][N.o6e9:vK ZGԈÝk:hQII "гۯxЭpwjtĠytR \$z%NI#c#loQ^24uCDF m;05BC"*4M%wÉ[$=hX줔X;u_a?,^K0ήhI klN#1* hvh#US*OAqhWzbCCɖYu>C $Ձ @#Z9q4R}D*@z\/-y@lI0XBM-A&h5RJؑ4XȜ@w-"n7PJ $-F!ڳT.+ ?}= va4 hnI1oy"PHd\h|ske-4c[W_xvνg/g8yU獥b)b)o{_MΜ~b4[N󍺶QU -%H^D t2ŵQJ}1GUKz_?h>3OӺ,:f6R;k;7qU-GD}Mlu@r9wLSw)b)k-!VMC A3w5;: -hvsn2BZfl>Y|-&6T6шG@ǤHn"nܟhz=/=r2n֚`2BU_܅ U|]wR AQ(<:tiE O*P`kz2/ z182;,V+hn9}`hY^lE>fww|ى49xYR+ahr9&u.:ۥmҞgأLrDfuo(#?/r{%*6>|v9ƿ/пf%eVB@*I*;J.XH%剧WZ7޹ ơØ%:mFV߲(%0&!Y UKİIu Tc`Icön=͕|Ӝ:/*AJ9qͱ&$ w^}3kf J^r|&hɼIxWe$yL@#~A,_M-!yMF"VT*i5Am"aQcA#=sFpV"-M)i*(eD I>RH =@lG@ B*BSwre@JC]DE)XU'&σL"+ 澮u񂴍5s#nϠ|u< t5I[$hy74(4~7;W\}4j%`ˮwߒdޛ;xA_wSL1SL1B?x͏;ޯ&]lLR(R!@4F+)ZK3Ӭos)"1z#ɵݣUA2i[< ,m5_X1s^;5v%e6]Z"H0ZbEQ>Megg\!MS]$5?0˦MM@u9Bkm NCU.&h JZ10T1N-JfT-RyK RCc[]hj IDATusl1z/?~ryFk0vJ_4ZJZ2d&B3̾zD^4Im =xoI1 ¤Xu jBN[@\r&j*6%oeĻW Mq?D*yC9bTA/|I>}FQזd2slv6`%(٥+.mGn E^PdK;^Yp{w*,1͊^k:ĕuq]8ġIlL3dž'N!TB|}67EI{ /"Ht.#&՝:6K~x_\ (_Ժ#IBikXc|e؇O ¡k6vi= I"4dl< qDڜDBU=;$I}Mfvk嵳Tiԃ(С+2(K=jeiP[ :P&xHXZDB 0i(Q"5,"B5FH|)2m2.]/F^ag@Hc!ID*"tԉ@Qg3⩚Xl/󶯾C[\)yNm;hh s3p`ʡwKeu6QUXi뉔ғƖ$\ڹuT9^gYc6q{vvܾC|o,̯xO u.^i_z0sŃ|?.~OMdf$MqJyݣ6^HkC iBPXoILH;(@H^\2ݞg ԰3 7v陒bܦ+$Ĕ$^r#٩fi阄,w[|Ed$ EGH'_6;g/K8}sd.]%4GgÜN^ MՄn$auhL&bM*o(W6yiIj -$EӸmJ$  uWdV!"Y삨#6ٷ޹}g git᫄ CD5宥PGL@i+tң" 2)YhG&ׂzW@-B6) n`'su1RAQ Dēb^HPEPMSݒg vv%Z))BA!DJ9b~O<{ EFG&!#%y{㏽k/}eؼy/X:uሴ`!W7Q {J'̬I:x\anqOQ"Gu@M X22kݚLHN:*/P"+)AsW,$I`m}\%[# xP')${X UXZX6j,j;7m5RP/cv!p w<ƽ/7=*"]5$_s$_XȊo&\ll-qDxoyً< t$Hdd4y<ޔ1h;ԏ ӀׄP7/No{rs2uW'j-s܅\b0iXK ;Ua헂\pK XI5~5y+z[ |nX \2@ԍ!CEӨ+_-:7&I*Rn+*o4b!jdwf>kT~GK%$ =t"bȫn"a kW"Ie-6UZ!$SL1SL1_w JrB _1RRH>DQ,//S5Lۢ69?gP5o}S9wRxRuJۼBH@₟Ī!jyK>ݟ-lb)b)k¡l jl3W0Jaw}w? '️7/|Ol>g_3u6Wr=3?gx 'OCWFKI~Dj*26vsG(=9c˰2 nLf4FB(-|N e(u]Ͱ.x@%EDjBԶNHh@Lbu]0ӒkA֫%A7Kj脒Q%RIڋ]إ%ֆ}k Oر󳑳cE58Suj;FRm@$iL\oc70g.GʈV~#-5c&1FfD#ID@#T.K*d-!+hi[K>&)ze'eJD9j =|dwY֦vA [;i{70F[l*_'ΰ7>0Ûx7}iGFW'Mwj:KdsY6vC_NU/U'Im˸S7Hր-yQ{ OQd,--s ˏsv^I  ɇy˧ %DH|ckJIlmS AyMr]6V0\}3H-0iV1C^x1iTP Q!GK%IϱU`:rK$iro,@F]Kz;aKU"p h7@ @Ep JSwwG^ Pck( a+wO QR 2 ]hH nrF@h_uP@p Dה&$V|蟴myL^UHلq KUc -BD7(x7BfO{mcOJ8\g`,t4R%XkIQMбc<_s?uHWLjy<4#HƎ+|킲qe퐇>'>R[V TK, k?w/3B_]N_<<3'X>-4;x[bLn*,FD:=vI[-"z,k \ո &tBkk GKE#Aը>$&Z@}wm1RtNFEG Ud[P[ h?" (K5,(Gl Zˉ%?\k!]|aIBce 3pU8\)y 1g5kW! q\6mR?iJg gOڎ )Zv+"XL:I޴wA{N~"d4-서 bTSL1SL1h}6^ RBHR~7}O?ɏw0oywCdmmmkK米5fZC/(7X㉫cIӔif~~=cWͻ9 =%dn9Gә[lIߴC iKUU-Ij0hH6ӣ%H &-QTҊRw"5 F K=M&:eM4K )ub2ip% "Hֈʹ`6]~^!o{}dIG98MUWH6uqx<ꋒ7vb.qIٗݪgIU#s5\U:PW%+Kѱ6QrJtEqfC"iW7T#e+dc(LtDz(Y/Rs~I.)(QJD$ׯHr!i Cll]\>hܬkŘ[ ( 8:I33${z?LyG&ډok%)Sya} vs&'-ĺP̈́B]+Nk!`cDV\{.!Aʖ#91#j^ H+KR9txiFDZu[S tZ%*EL& 4FJ 1mn-N"jL1dd LlkBYtBHU ' Y_dj(VfCvzs_'>@r FMV1T]@4Xi13>-ȻzG>,)RH|w?ݤssd~fN1fjk47e;҃gmsmͲxKKt{\?r2xj2&Ք[Y +;t t#gwc2X" wQ*ǕT=zϮ`#l,&w5qR cd-8R0 Hxą͒8FK!GWS:fA!$Fnx5F bI 2" RIrͨwa!F ۶U[$mo RVy^4@a?g^q2(jɴCRwΊ6_ ?/;M07b2 '(~AH4㉵G0 +up9ΐe8 IDATPAp tDR5mjm N@O $(H񺠜$Os8 npۈC MX'$: 8vAGgQZN$ij!s;[NZq!(HI!yWѝ[ pG`5*uKFp8i~R$'`Ӿdv+ċ=U/ J i{uA⋐gKuS$Gk_u1SL1SL cc4nRm B۵X6z [W#u<{8?Α'ŨD@MAZLCG0+Mif;Z^c>n&ͶϓɄ)b)+ g &Nݧ7?u5^W>>F8}ɢA3&MYl3 aV=ڣ-_3KyҀҥ`Kt;LÍuTCS,e.?]"@Y^^f %uz?et_%d IM MYVXGc[,*@mƵW*bLZŦQȁcWȖ3dln-"tJ(C,# gkjX\zBb!.W L'(a O :.FSP ARDd\(4Rq뛡'Z="zk-)Kub':>'=oSMK ZB4cl[C{!Vh c 9F)9l$l=YG5$J YċP<"^*h sx)oҫ'o:YlנbDQCRPm'E3WR5z%O3!h]XY.PJ)eY3 w+CUmoUF Ѡx_%?k6}v`ΛhL]%3|{䱟(om=/xPZ"vSL1SL1_I?g>AZ*2 !ӉMͤ AJ%J7 F%ds[s;4X"q0nZAnHcZKh;87<[mޟb)b)Rftz}U8[:ɏ{Hshe5{;ve'nqisǟogyϡxϢ#TsB;b~ q1Zc.dnFpu}/]3g07eiGNB*͑KlH;])Xٺ|w%6jI؁Tf;’H)RW:m5"Ug8_yg/^ĉ#ѧk?N1󚹾g"JXgL{A|3&7xmԾN' |zg &YB{677iWy5CAQjbKP@9J!a 뒲,c{ñe=ٌbΡN/"[<w*Sk%u#g/񖯹NbP!gT|>frǜoshv?:~':ԫe'ӋܳhfԛطAR/]R_}=fc9FW (ql,>`nndH?_dsoƶ;@j)lC 9~,/;!Hc3 )"2:u( Q!$IQ+5|lo90`1K;Rq~S l53D(h dCd/QaО(# hf5!y-hJ6,%EQP ѐzd uYʲ*"(eg}~>v_uȣloYgb$6^m~2-|F*uZC1}^R!xOIW-onkF\lUQfhHg}`Щbt~^Sر1]l"a4XpNRk#"HliH]vfL@@ւHgѨ Rժ}aJO4tF#BTV46-dY4jHSkߥqϜHjKloSN?':[ _`w2QNsvz>w^':1ncMퟧb)b*aEqBb *N&$ZDhsu()@pSԍ%YZOQ!zNƐW 39-e4R5s1X)XKWm:㣘y&Y2EKe?)b)bX2rGlk>gu>MF/*"h|=,=Lǹf~:|׽,"#9vl~,MN?eY~퟼ǿC}TĪ1/^!2F3[#./3l5$HP p#)'fsS 0rYd ֎ʕk9p  yN!DJ<k$jXGB$ƚ=Xذ0ͩ x5~'8GQÅK[g~v=OG \v;q̋='D';(ߌ]/K咿7[yRqwڗE94M3uI`gg`֚I3sIfpCmV,ȅf\*6kFi`E ӭ(aq>RB7pp 2=õ1!G'*sx6r X#IʢdvA\?#By6t橫>3fz*MW1:A 2"\Z o v1 gi1WV Lڍ *Wƅ. \{I2d)iVq $Qpۍ:e&߯deO]Tm MGb8%hv|DgR2ة_ k76؟~W]@1k-1$СCu=w%Qzys\1a9F2 W,O]L_c!b5ڢG,--]v(sIWYB5鰍N]ap!OT L.@ mf1tdTFl^JiX|8p۝S|E?MJbK'DK"orNZ*~W>FMk}tI+GUEy=7i6@~%fm~AVj0 @5 1NrMU_\XfИ핚^SSoy O}v6M\Oԏׁd滎}s s H%9Tyv)՚%-uh=P|tSXp y4X1P9Oj B$(rh)8̧WJR5IOl5ݡv.jRk]=f ZƉ"X_X 냖mFl)7+@В=Vn_/ O#ђ+ % {$$x##[F8"Wgv%uqB ub B.R"i?7*B #2BR(" a-!9+c@=qDBMĤlI4Bxr^x Hn C{>.n\AZ*GlۆRf8U]ICyFlLqlq[f-o6}{/%w_y)b)[p/:Vus-!,%v%;ElIy֦il;|ۿϽ߰5$O kb}kn'OpydKƍc}>+Qb$Vj)>SL1SL1*szc%ۃUz]]Xw{'u9x5 y} !p | gARDBw 3?wO<I{gg3bau˒$ ,C].U`+uAaREuH//CHԑ4MiIsekѹHwx7v8ٌ1êz92gK2dQ$-hdIB '"^Լ7j³Ϡvl,vc>E͈ |䛾ۈI=#MTB&0TK7oC{-~U6."ZfM%ٷF`mKņ-2붐TDpA$Yo=/"NM2HYl!Eꋖ2TUXZ1!xf2EՕL7C,(f?yT'8}*r;&ac$#W׆mJ { ׶lnUk]HIC8ZORFM-XK8:okqmOJ)#9!Cj2LT{DPz,ԮF"%h[T1IE%WԈ̀Rnv6m]J<3BD,(p@i"juF [8UcIa65$2--k"i>R֢ڹ(ժ#-'90y!RC)Ÿ* CZ)2R}bP˜,x108ƆNrq\N >EX‚^R~f+uD=ؖ@4ӐHA y &ĝ?ckbU' ":Z,`zf߉F`/{~. |IOF%x@hHKD."燄ڷc[ZT4HIi~\R{O:V -iL'"%D sw7-a)-_!Db=/4I[Mf8|޽uCuy4)b), vq vW_I0i_Zq$Pňe''},g>ɕW9w2qI< -s)Iw8Fk{%U({BJ$^ )<SL1S|%aq_O>sxy_'8O-ƯsGӌyٽdnAWW,2#3x[^c=<–6W`bMU%2b\degĽ.O_,o` H?Mtp(' ch-eMk6T{OU:ǕՆ# KlvtMdk(kB\dY>Ŝs5[>>,5_-x'/"]oYk–ѷL9b4>%\E;uzl6n R9"[i7GSt֪JPC@RK/SN="!(v5HdR%g* ++f%L;v0%g9JgY/8G=\"J6Bv v^?;KPq ҡ- F0 -dMąp“9ѡE:F34TQl~g5|wW}W?nΕk._ yVU%+G9/oz47p,ZDE3~%W?0G,rH.1LyUf%i{`۲ﳦ[BRH`l f*C&T1**q* 8r& AHBBj !V~w{9gkZ4BJrU}:{~n=w;{ a`%*@jB *M *u mԤYGJOQҒrB/1q\ 7qXlAɬ2\7IQ4j2ń5vz"~YR,#zUCի)F9vG}_ }$K("4W vBD) *X3~p :b" 0I& lem{h?GVuf qj3=I;VFDi V$Bςl}7*CPkҖ*m/!}"EI"` N"`-&Qw<ÇDLa4t6SzuʷN)-X`X`btBL}S?Ʒw=Kxxqwwaϰ:LsJZͥIdcgk^ce:¥=bَ̹vt- yRSPQٟp0e]M=t>w_ŭdk`MVx `6#=S<=f#& )IP<wzބ~ւQ(JQ-ow_eڂpԛnZPs¡*^֘e*Aon >_|<gs0>wqEhK") АFmi@) ZiPYM*ytRZbgJBmy=!s6bnS>"R&}C S(@ByT `]Dw REJChHF5(mU&F,U2RRĥkޙt=g"( ʹ&Hmd=P Ai$D+w0;y繸4t6|g2sg6KN3YskD %+п3P_;k. vBxH"oAA)J׉TFL"tB}&DKy4H>gmT ھ; Ea覎4-B#2 K )9%x04m@#ӱ/@ v℥'BGb=ㄛ6y4hw"A߽҄t}(u&R$SvFH1!˫/kK'&d+QR\.%ny}q=KL=} .]d0̀Yyei\GIp!97*By5;"4+U_\X`X+/3涕^0;{ap%e„=^za1Ͻ}o@'u |DG%4Ͼy?Z=wn9Ok\ܘ[/_Ü>A=:pBHKMF@&-0`0U`y:%q=`i̺s:zJS Q\yɵLڎ~NK]{԰\tx"BhX !,; VWZ'SΌJڶe8Ǟb{wK=%f>+5~o1RJ/rn ?IQk=?/s+ʴFO1>yRaDH5 R*>ͷ}( *&F:xt6Q& )#UqRBq=0_v=0eRh"b2gm@%M Rah 4{Y"TB֌17&{ӣ(ѓR&+)Hkn*͋!;W!2+p.X'> xdV쁫#fV 8y;DJ) $5>wW虧X_ )T?QN  W.Hhn~]\ο91Pw('Y@kyv UOL]<<{-'OH6rXoU65ABHslBDy;oR\(5ړ記ђ@ƈO_@-~J /}d7WҒmuxB.p]D׾"!ժ)oT1<6ZF_-Z( Gp#% , ,aҽk="_7RKgz Y\}' q:UYrwSeYqYy"ϭisƒGqr4&Bh#Yjtג+^k-^ݔX`X+O5_VΜ9 {Mw9wwVDϳ U1W(*֨~"G8 1ln]b8O3 X8շ̄cuPb hx;31^b|;=kM&D>k푍 777r+ZJ$3qMc+t>ĹLK3KQh AzDCAlRi;.\=ʈYbcVshD5.+}eo7k~ dZ*_D =wj%ҝ\Y}LN$#l$.1z+B3Z)1D{) "@Bﻁt.,'_f 7ט>\LR,K-xӽef&/se$kٛo`2& Av? ?bH$`iwS;|Om%v3-I (K<)ڏ HZQ 6#h&^dEp!eI")l wE* a.1WXg6'=t) L6@0 4sB_έ9 \諹ո"*i3~g]XN#E8 BkwF[שvrQnoL$5Cjv1t>چl+: "PUu&ເ0guR:ܤ`:%˨y8wl2 A'1%4%ASRYEl:4Y ϖZ l]g]kQ@^B IDAT D^J< =ؔ =Gbh`)h(KKX-` Yn#R=ly' Q96 (B%8TfHW2 LH$+iv;7)XDBWƤ83*鹖QeT DZ4(=[ύ%xI("6dN~_!"vLK* VZSqOЗ` sFsP$8BTB-p1GD v5b'*QOľ m8΍dD cI@ !yRN 1!D sf&8HEbZ%\tmB)NHV˘$8k}i5;TCE_(s}׀ ^f"܋9;ͯ2^!=XnNjI\ɑsµ]n^w&l:p.RKHP@^|58_KJVWōcX`X`׈1bԩS_Zx^Uk7?+H"R%)PRRD 5G)1E ʰ6!@H u%# BF+[uVBl6'X`X`/=֖ՌG>qu~g<h⟾v?z276[V;<L& l_K s?`w%5L{\G1I427ȇ~'^:3֙o77(PV1\r_1^1PY/9}4wRe8wUOCaɭ܍s >=xw]a$9Ɍin!P(sܫ(y26nP\9a 'V"R)p"Q0zh4 v,AM~:9TȊR 4 Tk}Z?_ !kc.Qf/}o6![$;ok?_~VqxMq~-Zk %C@4Gj#1,Ц@|hi%2 } 1u#U@AVi=plG ! ,S:ޘ|ʳٸk=g f{LlK#b~B)n["RĎLS *P:/˖ G(]$ۋflo!"Dk 5"yTH "xeYR$w0151ؒH3;whRZ4R&+ m{DO%; |3/OzbQvDuOz&kk 3ג#h! !ѶI ;ʹUm&;+HLֲS ,&HjoiZr[-L(0\:,pQDqTo<)8G~wc|N\Y0̒Ab{_}n~{n{f\%z?ilm,|z ]'1=5w`c; b1Mf KE1%!C7—3w~vq>FX=}e]Rw>í=|<ڿG yo@'rm)$ h1'|D тZX00Pa&R+(%PJt&W0ъfeX,UY0 LV))r&|Jtmb(Kk稓 %Գ5Qx$sB_#+%SO3'T$"j^ƴ nY89*5T?-vZ1sԶeN9h}U`J6pǙG`eϤ3uXYExotW^3nkD_yα㫜=sd)"*CݴƧ/Q 賍KPdҮJIw0٘Nr N0\+ydH#ҁHYSDHZ* .W6%PPjm{4s52lcT)ԍc ڛq㵄ͶK@*|3׿(B~W<ٳ82"Dr gRE$|̊nB|vYb@i DOpr?) E%IP7D_$R43h!i=20(N3'!ei+?',Ub&Nf:$GĊfpa=lӐT."aJ$-Jv7`veAp[2()i[2UIb`!@md<\3CкE 6z|$=$) @,AJ!ty8 "vAR%kmdl:4,N3lNlH1 Ue(+(xA7~3R]ù5P9hq M~gm'ܻn&4#rЀF#Ii&/T>'-޾-B^׈$k@ E4PG+CX]]]g/c# )% JUv ZNh'9Q-3Z]ۏ=D2Ri ?yytd"5u(i/$lm9}8qlN.H+U$W)8h;O=}j Nܨ=$nCg݀w?,=ou^|3<?/?R ;Rvv R'5jH]sweyNޓ!PIf=]n^ؚ[98t3F]ǴX^3+(Sx(LHgeY$C s&E( ڶ,-~nA &51B;bj} FA>7DHQeہ$͕U.٣{B@JIu0uQwH{gd~ڬ^6&Α֯Y"E6wf{U WZ<"ܮj3QS;h]Vz2$KĦK DOX n`t\q@CPPQeѻ#Kv0 (9q;h+8 G("ю!"( mԜ:e<;c+bh!9ї8mI1{pw\}DŽg̤?}%}Bg3R( r ZKeVK8٧J0^8= Yt2E乹D 9ɵh4 ^tAs'o3>=C@<=US|5Ǧ$'hFHQ#) 6Qp긥>; ~{O>x߳%]Xim|T/8Nc#M@IJrnBR‡EX+Zm94RWg_zJDh"< cP:?Fz2&*8&k*f+fS>nə׹ $*]'\oId8)n,PTη-,RG57tuu8D$^Kr^.X`X`/+򳺠*ěG-:ʼ/K>1eY|q-zUAist1PDb2 (%ۣ7<.iOK\Z---} , |`1 #%][,L/ 5 S>y 6,Wz έ4\\AFnN~<â{|FŎWjidس{F#7Fᝢ($H\3(K:;zgγx< lZb6R8R2q:6y|}n8nM,bgjx% $J<йW ̊Z f8;N[I־kR*͒, OЙ^K[7|1չygWNZ.4mo'/sgo?ɏ^uuy3(fl4wlV x/pnFJ  uH@DAw}Yrw_{fg4FюL¸IA .cTQ cp Qʼn͒`vƒF4#i~~gohT?}.GVd2kVFNEUS /tL|8oECKWNL!'J4B8D8gKSMRUHI#\5> Adx[Vj \$ CVgy"X ePB|$akh6fn>ϩӨQ`%i0vXtC \^KiMrdޱi,2(dYTl0Yx,b9LK@qL}=G/hHGE.:B@$PÕ'wrL+9oܻ~1Oys1آoln/+np2}ǃakӽ> nv>=4gfoY>r,| 6ڍ+ VpHcH"".?y661q?pY_۽ҁd!-kV͈$s+%E作w.oe27wD&_ y3) *MZ@®ęR3U 3Z#-DEQOdFQ8o)`wh)BEKzLM-D S+ Yz$3ʇ[p]RoFS$; ~1p}Hauc{e[yZJ͓kV7%H` %(vH?3b~oYAA AjnBjw|q1B[e@He.yKHխumyߌ>Ǧk7#~7q||OPO=AVM-.Q')mFނ#W9ƱH1OfAE$mJ1Œ Ύύ X[ɤPDXtpTȃDKACԗŠĉM *l Uư8X)x/co "VryccIS [>-f>v `_n_*3V$ &` & n'~h4SwjO3 IHG8kBa9`G(Q1R+DZgX !6ILSIL0Lg nNŗ/6s놦HHVZř]67S@.d]gNrvM6d^oy76w9~hey iN3rq2tfe)&2rɲH7(IRu$v`MpQ#ˊ}H{ֺN5T%;U F*.\fަ%Qt:B,RRZ\k)UV00V. _B|ۃO?K7aK-Ihť]iJڽ^?7=ou'-E?k®? M]˻;D5Ɣe!8_"mEZPY@JHH]eF9f(f@4MP>AlJFLa:!P]JcƐup[b@, نV')Hj1-<͹}KD~?D︗Y}^{Na < ;'U-dzgϓN7ziGg]f"S,{Nq0_sOXY 8ZmM(Hd{ĺ}猂:VK F\crPSUt4 (63lLyRuV ִst8vp6gh") *Dt}:agkY;;tހr"Wj?F XYeհ"nutEj0үe|{ >nh -.̋@&$2S-VBAI| V[sSq/+^ ,7c6wl&^ 6LlKC!I UF E`08\{%`@ /^LYY!X9dGIBh!i"cEl$q(푑@%xlT- cEP gODwO)K^/_ꆷ†[Ddkf|-6jP5"v+J)|08g3|_wGDTUYK^qmް?*wyʘm8Ig$K-v9 YQ9t!Fk7JtQ+KDi*u$Tdp*>GVFltWb@B0<5sx}kpMTtI}MF;Nxyx٦pc]̋[MEȭ3_̒;k\ bU`:۝랭eV/@ml$-Ew(MN\:r+k1aF;c x4*H\*8!c[hfVjNC~2 ,4AL2TUQY5Ytfc_{K9H)[P =FBߣb< 3#e@@{ؔQfdԕh}rnY,W\Yk)AtߣTVb8_B=r?z{0L0L0+s1$6XA5q3f8C=~~1f?؇p8 KN+>[)"ş?7 &` &1e_aeqҰY֐Ω;N#V liEs"W/;1?+xb!q5kT_Uezryjk_E%s!KfwJkvO)QEAzJ3uy%VLw7Vޢ#-5͖9Y> Łfd&K-:] 3s-L㜤5a䈩,Nhp4[Zi(sEQ8+"FJPZCx"$$+4q=ٗHTآFfDQ=DD[e k|`z4rc9qKWģ1)) ;6Z>|㘲,ʟ ~7g?8Ϯ]78S;l'L5Gg8h͔De Ñd_GP"N`3w22 ҂P*{(45?oSkSGxQS7x7_K}jcsMQY!PMP*x6Tk8k?v{}†p]"r[N;KV.x:j5N&2았OsG/e" W:d݄ZF[B8pÇJkC\~ICi=Nւ(%s&PA @U5b ɮ8vL-V^8T\5hҤ#9Djf?Yܾyh"Y!~69uW'[Mb{Z_y|}ecw#4e4)V3o=Eh6y>e+*K6~,: TX-Bp20c߯H Yq!<ш8H֎8dlΘ30lVT)^ƙ'8~H-È7Uٜn\LB)EB@E6Ayk%r\F-E^$_8- '6Bzj 0Sorhu6nzD0z#j+ 6ZtɅ`(s\k"DE.u]ͨ1?Sule Q\dn!,IbUc!Q>&=RnX.PeXPžVjpG+g U,skBxDV<q=RzQ:G^$ZcIG>[zApBV!W{ U!֕qEyoQ\TJcy06'*c G@cL7Tzy UF5c9,ؑwrQ^z_{84$ :R4=(aqv_pYE*Q]dGLS3xtA…a_]|+oSjIZdOL$@1lԩ3,Ok#ܼv|o5tXvw S0s}U۠Y{8Y.u i=6w iE{rmzS}ndcc6 XX37դQ|3?x9._b&GtEfoZ7) B~4M!$Hyn7"yW?.8Gnj e$E9>Hkωd#'c g,HӔ@akkXpj,ֺʵɾ塔 !)O?{=sjtmD:`m3Ê7#W}6o;Hd /~| n+~ qM-D)F=2l,(i70Kd4-p_ 'a1ºز6"Ն]:O!tZ/'lEp&IBEǍ{ٷ!VcMEV}?_ZUruqyA F $$IHfGf+KnyC*AYhU$㜣6pU ~Ǥ+”g b%$R5ʲ]RĪ]壎__9'Nf8jus;]1t-oc<[ē/^Ҁ鹒0Ho鄂cèD!HzVbpPYᩄnA S1V8Ӣ(*Z>8J鏆<~:S&l-F JJ3DK(BECPAŴJh2>]:կ<΃ ʝs.|w۩%}!FJW~rx'\z3؞@=N;՘k?]mBYC0'5Kԗ"j/y˨yCs&N}vAoϼO2u#7EcbuԼ;D.f*qZ?|~6M"TPE2Q{/cߴzh۹/J9A8@^CK[e<ӗw8uғO=$B'Mu 䣜Z&D.RoY[!id ="@x_Ql@:esN(@J?I(G8}?kTE%JGOXNz3J" %pz$*|Y'FLDl93pcۓ```g35_QUq$ ܚ@F#:Nƾu2Ӕ6I./ -iļhsx#.GqނUٔ$vǾ(tKXsv$Cq!!+e a%8^5*X>p#X+P4i!`"Dӛ$ЂRHjui1g(HĮzJ8C+{ÈO}fԨ-e]7zK29~6*==bW g%X^'(W6,̭}LPoroo{_L &` &`?xCp>ȫM}jcURl6l?44mƯbM~pw &` &39qJ٤h' +WقV-2; ~.ɄV=l{F]LV;X,ZFE ]8ppѰR9:_=ww pߩBN_~]?|(:4H!_b2RK XF) $(PRޜjK~Y+.sxitvbl]"MS%I#׺H鹾N]ǕB)ȕ=0(QFPp+[w{ǐŃx.xc|lè IDATNӨOs cO zkΩU^S(1 Jb-ސ S<" J)VgG?ăyۦopׯҞ[K]q{]ʱT*@CJOQ1UOȳ*aLI`l)F=ZSa"[[CzDZͭFԳ\M~͝Y#tJ' ڳ4-$iJw19#INyw>ycDJT)Hm)8 PF`h$!H/< A-tƛXq{c `3dI42@JŸQW9u{&Iz݋щBjM7/H) A0?&e<:}mS;x6!-A]I\A{KoxN/AX~+|ߠ7(9+˚4y9Dk4q=h] 5I{Ln-(mEJV7}وwwʑj!47vwՌHБ,"M gVN Z . 5իԬA{ȊOXYC G>EvaZ9ʣ.milKq:?`($y;vazj\f;Gr߄CK4+-Mp4gb)"%J$>H92;d_<|ډK ]^ Q},.^kR-idzɷw~i-`h$v][YJV~>m0WFPO *݋J?h%*R/*Vb;u85sq;s'QbaiY{C`YXzH= PZUL8,Y[I#?VkiIX'O|_czQ>gGϢJC*bLIe0pK,{ 4:y=?b~u%N4V*Eȑxh0aS#Ej# Mrx'XÎ`!Vzwĥ%B vʮoaPn2XcyB(]MRPK)43 ξ!6)Y-X[# g=K{Dƒ!9-$a4{O<{tcߋD0lQ |XG\Rk+הA6jU\_L(0D,7nJM I,zv O7 ntў(0h$eIJUbu2cHɨ,*^kpXFQ`CU@+Ғ[nq Ck`8?8;cPHDh{?)6}Y8|#Oe[Cgb-ъX ʷ]SSds-B_`h۝ӭ&dC{Q۝Soo@6z8q~o刅w/m17EYxv(MPT"b^JbY~3͔nܔdò{h*hdžZ$P(M(cR*vuYN1g >\c 9={T7QғԚ"f59Ę5pa8XXXO' cw;#b*~\g@Aфyt>VNN.:/J7@{H ɩ(JfS %`*6K\0|`Ns'€$\poD콯g Q0U UdxXqph>'ޞ/B".h|& eƯFJYcǕ^p2 56b(3CNG ˹r$\ y0U?n[./4bT H$xHF%ZWy4$qc"vUT [5oVl, b㉬&mYLU~yP}>] I|*f\܉D*/ҵ}f̴`z6 Ǎ|2~bj J jv seƏJ$M1u=)B']Ŀ>c̘1cƌ3, > o?}):{3_.&DFkEG|?sO{3f̘1c88Lꕓp$@4f!x2-j,O_^?\̙#uCk]MOcnm64~=L5fÇh]kݜ~Vg2fggyqV'KA{MV>I. L,oX%JH<7V &$رk[̵') C>(HQ׫D6y1 xduy݌%3S L)DGyIw9LLW~9^dicbə9ʴ 8hψD n\Z&%E1CigrN׆+ 3\!`Rc q#zܠ[li*Dz4&DQD{֚,- PT\,K4ED DS|ϑ1:WJpc J_$IpΣ&sx/Rտu/I&bh"qΠe QyD++JYDWii feP2( ^MhNh6kX;QX+zoN3--rkqhIrp3$qK2"r(戻kZ}ZXZ%B8iw?uY8HysWݗRGYJD20ӜQiYUSs}W$OULO6:an-&JtC~ 601 aF¡w\eA꧙$[Wϱ[!>ts_SH4+nW8Ax[z賯-  /(!>z2 iBK7/@%"hJf㈓JBYcY+* -СDO/H  zli&@'=-#fljʉ8a4Ct5;% gX_c %(<2+aF_bQ*925&N/[=ZfC:!]ʚ&`":I+=Swa|NeYuO8.i"G[PZHxfO+>ST2ByOZ*w7ɍc`, HOa:>G,BMKg%bX4z֠4$J L5I'wPVof 1?L~(X UlZT"*VsK^u5N-PED&%H4:̴~|;ߵjPe@׀`a9L?p^Ca?1kuwρ=0n5RsoVDDkpΔJYܛW!#W 9˘1cƌ3f_%л_s5>s}'kvz{,ocƌ3f̘'~'+|WiM7vL(e)zĵ N !K)ז;'[:0>wW`a`jkSi dYFYิ -'O}# k+ɓLOOsuV:=ـ(&ZSZrEj J2I{PRC,KЮ1Y\a*&g?X$BpΖcw^V^3E!^Z([쬑68 <PuyN#\l~iD[k]4yͩ5b|u{nbʢ֞IEwGLLYZJ/^H% [,hɈ㘥)rkXXe\fr{;j\"5+f7lL$ * e81%:O0uܝwᙳBlD PI<֧w•L6[UOHUE-8rT{!VtC5Fx%*'T [Tb3XPŜgE7AB IjeIŌJ { u- j?|{@]bZ#&<:*攀Sm J"f6X^ X1 2w5.>W-cPh()xiG1Auݧ"Jib(6ۃ&RJ%8r`S9BA"}5Dau$TSP`C%\cxvg8G+(&a!7;Puh;D! "pG5SҬLW7v*wɧ@[vSz$3 c\x$fn]=9/zk^}PD IDATcg.DG AH' +ЇZ==O\fO_ v7֘?v4И?vAK8w52?ҶaxОD]_!9V}Q"D,imݠUQ,n-R!l%S!,11(x.0tbmjoi(r;e.SG:.-)U/ q]Q$8v9<5MJYVTc"O &qjĸf  hMcd7g>y % =0rL4 UwjH1?|7)&~\#o!dz7ل4ɔC34b-TmR<̠܂fs.P+W Jy%)̀ W:E픫okZ=PQ` ACԆBYo|R`R" i`P@a2ppJ~-J'xv?ǯ 94Hۃ8U8IQUJBZ!%^:,yR nwJv4 (m$ÁoS : ReoO.*C`A{(|Twwr;Z #þ#9s[Aq-j9G)$'\g.cX7%Ig1cƌ3f_1bS w}O_gp=KDң\ .x%!/i%$LbLAUC%DdDNeVvx6u- |sؐEnO雤ropVg=Opw@DxH% !R|婗gV/+r1j8 貏{<ϯOQɅ[ڪPz^8aj€Z^&Ks:ni :.jr,.pQS1;6!{,c3l^`6ɩ@w'BKarDqp)Jz&(gvV7gvhQ^`l֫W!ph$ހcs3c}pw*liAae&DZ#mbsy$<\dcQwR &I?gr$\os M6@"2@!ιBkJFP$P{2|Ƈg%C(V#H&VƘ=ǕR~pP)UmÒK Vg8tpL= YHhn. Gu>?$I2NCnG߸Ŧ(L C JAr"A1` U1/.-:ryJĄPRvv;A;B\{19iCSdJv"x;֣֔PREzK) !%M!qʘgW >M~~NۇҞ}g~Pe6|s/9_e;?鏓4O1 %>&O?:70/<=6⵳O29Ws"Uj G Bs};~n4$%vfoϱ;z&jH[XwIM{,V/4%LD_}Wo@~W#Tr:;#+X:dJFpFT|`&bfPb`24#51!4&uҌ6mLq4P7Q W`VwDD((&H[qH!}A뮾V{11М(-@g*$rh?x瞹 '9tSn0T|Ǧyظk͘U2)`fo 6}\! `)u}c*́L E_ ''XjTưc,D :{&1Wa$JkL"IɄ0lZA*5 Ef}VMҖ0d;to} fB xEL<DSX lFbb5 ?eo4NXIS+*7PRXH 8)0Z#O@"ƒq)Y !G{U9GO+AI?ZCi]O)qɨ=kAs6i05HϭPece;ܱj;L4+=F4pU=aaAs1cƌ3f̘NȪ jw +$47_؛7t#Q8|w;znG_x̘1cƌGG?|1n 'x??$A%jf8A`'\>r/A%"cY3MѨ7hOQJh4N05=>LA5,GME*!X ȴgi,q`eg4NN `bT@a%:Kl"×_[/_9G_2iЮ7yˇy\oO4EMELh P8\28G:Yro<$i{K3sQu*u垌Fe,D\=w?r7lngb0 *n\ő#ZFbr41|uXu;4+\k8DE0ߣ^38hHggA\`Ѓ[ }N_GC3y ZSr]d3 )ejV2׊>tl#e~iH+Q͂nF34Yzk&i}t7lmﰽҡU5e%v#J"A*'zOf˜:u&ۘnn)!@ w e3z}K)'Z'ޮ973w#T(c^T&TZ7qF! T ؽ+DT UEڃDcU/,4"VKs>ax{Ez`IrNoaxW/cg%' Ͳܚw~>0# %K@S5xO*ŒYYr=/9a,x3R<{#4\J0Yc&5\5)*.5ekM?.V<؏kr0u3<$k-jԓ'W / k0'Iv=M^sLN-Z#]74?[e9}RAQ/RKN`=?^{~u:=f>O3t/~_ ۗop8?wِ|Х}DM`_).XsgY,t_{i$Ftٺ$E? ܭ.:Լ M QPCSMp뵫`JA{b[Dh"F%$!b$ >08C; Ȧ=}[U O"&ce z 5Qgo 060m ߤ.ANJѷd;;WS%tB<>2rd,@N{]'Y\d?}$en3[Mi6$[fyءJHm'?ȃ֩S\KGVxtڬ!|]aow;k:% PbʪYhYmU]LQ};EYVgR޿Md0S(ML@3#V~KHbh0$u $6aX v h,Qt'di>kiɯ6- ^VǕ_9|6&Lu,w}! F81g7瘩=ԬdJARx~yJ#k0j6d3ПI]9G{6RRnopv)Jw׋cƌ3f̘1 w~poBYnCfPQ:} ݷi1^nay!|ecƌ3f̘1cP: `L"ێZrIBЁ4^NgRٙ9v~?YI$u/=Gy-~(_ר9R(n`qq,% V$*9C-NhfE|m2q9p턃3,TS[fA!bA^RW5Tlpz. Hb]!A˜C☙9NMDi0|Y`hyS̯pckTzE٩FT 2tȭAɘ =2REWZ'E_!.FƠ28ZlhW{Ey(hۣUs[ w_%E JRԽÄ:>hi".ǒ$D~6s!#-ʉEF7wضFAOnu tɞDϱ\ x/HGѥ( QU1ev&joPO1lmq).o b˼ 9W]8XQT1ϸosscg/U\JuZaL1BbHCu;T"t՗\]'cFB0Dko,PL;k1[VJog8sxIVWognn"x'|>co{Yk7_dyې:@ܵN=t% 1|${fՂmu>!]U$DJPpuza==@NJXe3ʉB?KA*4pp+'!\;簦Q@%sZ!X97rLmsK)X{~rϡ>Ν_5֟S/8)_‘WhDI-S {~kN'xؽjo>r/} 4?dY‡z#'nѽ* l*?qVFkj> nOeX<}v|wu^3/0%5jw 8OBT>wad~jR C9A^X{B+Vob+#Gm$r1IdEQXW"|@H0ItZ (偀2mQyab1>C7?n!"0;5?uU5 /"xOX׾/s5F>[g>|vaii{?BM('8,Y%1hhd$<0*A+XU',5!PVد*:ChnJh @;ԭ@'Wp162Wj. 4c&Yce=;%'׆|Ǵ;6Ia<$v I@As+F8o)rP d߷hug⮡PJ$HQAsJGzAG&-s{1$0: bn$*ے̤AG3U+rvhD[V$&A(:ex2D!= Aw{d=f̘1cƌW%M+ :e{y; w^wp|;d;f̘1cƌ…L4zYr WJvW0=AwX0}K-ŧi?,JG5zgrIףnQ1;A-qgg'?>tNvg9z{Xh,qQ"Ek\^!=1qYJȡٔ!/ (DF`mH]X/#E@'%):Xc?H̝yMP md_9tE)i`XT+ I+7LHJDZVwR#e{kox:M:VNCn +5S9mZ{ ɲwι.}fejSgz\8lMrI<"hc3J@*@#:ܮc@b9WϾO4j<ļ 놗3<!(qeE'yhd;iƔdk̓I30i-Es+DOW_ e0W|"gp)ϯxh2":0+^h6.cKRc+7&)zzUAU!H3H5즩;BM, ȥHIOQ%l!!=^2$ʽsN7Zq4`aOcVsf[S$ceq6fGŋ/^n'cOJ) ;~,M_p&js;c#᥄g EJEr| - BhQ $]P+x<_Fⱻw}{RHc{]z  4w,%҇;_|,  ngp"y-SaBfDvNU'rb҈~q}G#$C B6Ktm<(2Qf7r IDAToc:~'1&L0a„vo߬+v!oxosVw>|kڄ &L0auZn\JqGkWYFyo8bjqJ;š98sYG)I(J=YuN89Y+|?(^~=K=t}oƕw)xٹQJ(>65/2/ <(-x45\7 %6],&>50dڢC"z!!_xy>=2&^9/~՝MfCso' *loocbk߀fa l(Sb֗c||el>PSR]\y>uBY©헻߿o]UbEHFg-/t`__rャ s0}֩^p}^rr,4/Rnv-%E<"2M4U'!YlqLq1Sb8Yc(;\zAT%' PLυd*SS>8aw++pi5D$} =ΰ+jGùy#C05VH@wo9I 3o0Uoϰ*G۔h!)bWuﴈVNz1q7O )7x{je!MS֣G ?J{q 7s6^;ֳÏeσ}> 2M$3smdp]ǘ=߿D]`GG' TH zےTfP V-0c4 ^ Gx0d=]-ԔG]eB]:AU3~WQ"Q؇P ) (g(pZzM;1($$F!M?{ 򊔴J#ȐY!3gC:%Ogf[SRHzZe8"vc,XM B D@1b:=8 Gyʾĥ9-BY6rD{s@ ԏ@دI,B6SrKX=#b<FQIo=Y1TbC` "SXd1G@2aҬR ^yE4w[O d߅-8O2ViJ%KPi:rGP,v`Wa99X"*)'*%.R0KIkoS"@CF"! -'qx>Jkt.S 0L8@Ė@ rОh4uDUMZKOyı3ł!P*0}5C+gV U-uyDf-"G8hihy1iy2xCCpQ`%^;{9鳶ui 9K(.2dloߌQ&L0a„ ;f~bRf>{-Tެ֣~oVB^X0a„ &L@_&ǏM<ƌG9?&M/e!(cdȡ{x LyuXq+Z`0 $ވ}{L;ɗ5fR2;),2٩mp}#0d0HiMU1eF"X\X tnϭ.]bs3g4>[ØR"%(@ZJsTj5J/1kI9_"pO-rE]kƵe'SINo`Ү5LPcG$YQX(yN4HAS I,Z.ŧ_}߄8;;4WnnR$h! 1bzv?z}5稝4lҋB=x m}H)~Rn;(yuҤ6!،JH՚A(bbLQT[Fj@.°& i6 #JAFǂAs`6iȜ/ifZ8Hm&cdHe1aŒqoѐ3Ƞ~S<3ԫ/y7ot8H vwOXk}~u!! "Xw&ш.lZr( 79rfu!!ˇX[٘ 0 K2Fqk j$zn6hhνBOVxわ4sel1 ɕG{Ӣ8> #~~ [Yw:c!ٌav %ye?l5cG}DTX,"v?xNCwJS7DTU9WRΟ}| =Dy ¨=pxu͞%H~I~f)E ƌnn*IZ,f_Έ1 Xe|x5^ gx#w))YFje׊\9ڄFzoY{0!{Kz\'L0a„ e2%vgOJ |u+}GmPH# !$HU<ЛWOg Bkp΀8q6q6߽p& 6Ǚ198>goN0a„ &6^yyּ¥'BFR _gq .Xr{v:Ͻ!9Cܴi4+k1RHX~@'2Ԫ4d y&sDM}T(WsMe>YI5ȨӐQZ#3N`LzDU[,ۢQo.S*I2ž4J^h\I1$|[˔K {G]~޽#j%.qͲ=u:/ %[- X٧<0SŎKkX9I M͐z9~HMXNbkabS 28[ <؞'":U rRÇJ>uV?`,8A S^^ z c"ų$FSzg@bk< x |/2}#_dnesc^38RЪ_$c\c ~yc֋9R,eT?cmJ8`e8~C4"TW~:k*=&^bߑ̘NCXQصgKkOL!T =cfOg|&͝7+!7!^Yk>nMŚ/XvI+ϑ[Cco|œZƉfs 7,˃s*RqZJPA3:o3sfD<ϱaCPEڿJ9F:X|D"]$iKY2A%I TJ'6vfj?qwҽi ȫL9Yb5yg39 |7u(3R @;|2ïx3HK,yͼ2ra D$A8XYp|I[t`RaZFG>4^ G6i7tɢ>V*zo,ފ~(A.iG[bQJc7rr3NP3M#Rf4+qJ ƀoZ@9n5.ǞRw^$IWF! gEp#ӚPD@)ٹ"6ѻg:R %R튵rd!"+z#7?]s-ѻ95w&XA뜙O|tg_ٳ[+=I0a„ &gĠp`v8.\{F]J'2=|`}Ov{O# (Zc/U>Jre餛\aq :q&jJexXgM"O}2˓/`0g{4Vi'~L2dp}T>_`)geecǗn2&lУnEnG@"Vn[XkC$%1az_y&V iffKKK|kf9T18Ic\Y$Ϡ]k^Xd<33}kU`K8볺;w?ɈJ=vS3eF>r)/z?~K7<}nTjetiOo#!;M.8z >ȱSK+%qR>`HGc:֖/rmʩCl1*je IDAT9J yr{9Gs+lD!8)F{/h'k*E JyN(oc g0$ s R[D;Z$E7ViG%`(›-WE./!+Fkk A %"|FF(|q)xp ]Q:ıX!Z̐>1rVܘWxYgfNti4݋_ .'7xm1{1 ׿}M}lwcg}c=#]syD~9887Wk +:,›n-KfH+{$96^E숴NcL%#hs)یƛRoQG]Mim籑,dG){ }c]*[D#9VƆ0*:1_ UlxR87 {>HѸNN>ڍl]IPVB1$2|t.JURoț9yh,y`}shJOp8goPVE?8#6gM..[FP(Đ535EoXw(@{i<+@Xq,ĉ=qG<%IT7De(M Q53Ҡv[c@EJ=ƒѵ7O$ g%PP(|C -+|22f{@!jEBB;4eRb{:9hXP!:Q-T«)W\1$mL`>9x(l+ҖpR-DXO°w:rx2c ƀ(%֢#HӠm@y+E%Bo-^Ct(OBP dMbQvԃ@ė3OxތPa/(f7Dw*Aޢ86rxᣰݥ~[X*!>p?ycO}b7.s581ǔBJIMxy/a؞c0awVHV"FGa7]<1 i.ъ^fQsr;|TJN a(K%2ԢVg~$O>ƥ|UB{NsܸylG}%F$f꾏Av]ys~h4}HJ2)EyT%NlˎI<㙲؞Tf*q%8v\vy,YBWI[w}9k@i'Ldu ݯn$O$7?NnD '4t{9‹s$nDq'cc:n00p'UT~Tk/}'IȻ9o`JGj=4C-BRn #Ԗ#:K\^z/_``!Z)mM 0`rc-? *2:H$lίpߝǸr2aP8r`?tziIYfu k'̏hʻu,˦#MADK1^ݬUr5V76XZY&\;fi/L:Hī.7_&*ґ&_?y30IZH @ 1q\C_#qm&&4+5:ɴKB#gZ[MLLڍT0q`q?C\~IimS6m!Tcw+NVfF 6  ^?O?<9k#3YsϽA'5Thw+_,_{#t!kW1 w};qrki v^\ѥVBGveIw-jA5yr6pќnx'?psYٗ]e|ܧU!6)nV0h)l$Gh|t7uJpu+:A!E:Q aJB*)\Qܶp> U'im?'^;Cwr,ر1֮P,,,S q5En()MZqt{NQne~g el^羻&2&qe}ll29>K&STw8nse昙s~-Mv|ط0ƛ6$GK`&LVֻMzRb[12&Md{a8$xt-Z(S @HMj=zQ`Oȱ¨t),[I83j[}!)z(滟w/ce8G2`Q2Inq$k]`iАġH#gxߦ' .\Da}LJFgCG+oF//.?4;y4'O{A 0`j!n-kj60o }VjeVYB[ B/HWvZzkWtcT1F퓌~Z+ )boNh!mpo _wت4q M3Eo5d֚{w 0`3؎`}H>P&C6 Rx?A& :C^v VytCǎa9 S#O]%6)Ӡ8N?8V$.8qy2ɦyy 'avvw9s*LzN#wzz\.׋h1aa{8|65_筮>5L%ݚşld'Hkmyi"d&3nݲ{Qld)&Z]Vm1Wwޏ-i~t HGh<5hCM:ll-SΠD1حYIa>ƥٟ-UټCAݘsg`d(Gi7Mڕg]Og>eڄ.Kח0MLj[ oC)mi1JRđ+=zcGvNpE=ɕ˫dbL7Ma|t)L4#N| RpC1eo]l_T*5;ùUK[\{8@[5u]NDD鳳Ճn0qg74vع >zm}71f !#$.vי+晸!\7ETر;I&R)zA{yDC[> 8Awr9;O͢w%GrC1=1~>O[ x2Ǵ#V:+pR)J2 ۵b!A SI&R1٘&XlX&4%!DZi:py~ E_ǟ z]˜{*ig8&a%s]8vp|" lEc9|B6'licb ;؉,0h:;M)TL+0z! aZ=botۊGPX BU \װQ]nMҺEG})CBN- Ȓ-Ĵmm&XaKIPwZbctzN)5nAexAst= LySmj]KV0,@:&)aǒ<ۉjOm !*"BLF=wڋV&*RĆqS`Z Q@h@>\;+Q$r&AX! b Cbið/k%tePc;X ÆqGjx^nX A IDATdlfl*嫬nlx\7NP&sdR&Ci1x8t"x!v#LcEM ÈNaؿH:^H؇36k7I iwC_N;bX$U,`Ŋ.35>].2ifK,!CA Nc};?mw?u."ZL*;GgY|O}_gIq\fj̦hΥZ.MsWexMQ9z Hv)c*$-r"# ]&ƇPLZD*&e7q#^ڵʥ%&g(X~a$? #?$0X/qh!# u\_.S/ׁI%9zA3g"2{9ŽwsyH]ᶩ6w3M0nShiPn+eq^sQy!*e)( 9_7izL=055ׯdL&:c$R&錉d'llg:=w& }4 ll0>FcHqZa1A!u:{]8vcvf>6u, 9|`rs8poadrfj3kNQ fV7$"49GÐ^[QXb`aIg?w/뿊NJbP~ovRDVwc]]܏fX#o1t}T^VVːDq{I(_B%g@M15FG苿{}M']# X#-I(4Z J[vPcH ~~B| 6ZURE-1 X؝wqmuB%'*!c ɴY-l)*HI +CakDRj0j%/QQt_K{uF 2R`]W"4H ?'vo%42Igm "ַֹ轰>A?6f_X?J)8[1;_2iR+b4J;2qE_֍ ^8tcH:$6NECi֫-,Cb Ig3L 32Z`g֚0 QJQnkFVˍm f3"ƏkM<zJ1;&tJ0Ds=GXޠY`Lv&)ok뭲W6 d29?9NҬM&RTV#ff  rF% [kJWbwXzc#CdԙKbeCƳǨVkk1*U:D*dtYLLQag(mor9Y}#*}EF&FH''y;8y9.^ƁHI+C/*^paK D '1Lc[korK:+VB\̰Aخ1;8B*WBwGIdv3on]eC=T|\W l:'^ȵ+^@LXnK0<4ɑ۹֕&cmd|ųݭ# V6[(W҉m2f :qt>Ƶ7(wyC FӠjwqw0#tI>Wdx* Z웷XXVRqTlmy҂im ::QH!!UD"7tv%R) -¥7;<@6% ໾q|[up3FK̛kʉ\ɋpJ !D-rֶklDԣUq 7>Z8t,[lbT~whiOð}/EuDË$8N( ڤCmi30s,.O~v;`j !س" 0@Zʮ>;Cu{8anA u XMq891M<6G!LaY]d @:9DC֊;Y/ޠ)MOьiMmszLi}]knSì4<;NEVY]k/R=Mb6^%raǞz3kϝ~Jr63`"yL3E+L[ )AwnCk<0ƈ#qtXFc'$#i#1m|x׈]xc㏀'l˥1o?NnzD[^щ 0AE,Bnk!tz4) La Ox_վS=z=ڦNd`LD:B܌@A`$I$Pq|>h(aOW2bH3=6 Lc !̥L"_E}qYGl {(ADmC) )d"%4D?*s3- ~/O}jFOx7Yr31mtۊj3HN^@JFl4[ORaB݈!4*L&f7&2`·/5\hn2@R#I(b1!]4n)AeRb&$f$+B4f̳!LM=EטV], 5tA%#̸>ůy3Sض͵+LK180 ҩ!666HYNsݷS.YG"b>/<+[88OE.\YV趪mbl"3Π._RK ;YvK\|wjqnm(3F痨u۔J%^~y+$F'VrA8IKϤxLOOcQiGHrT08txb1xBg/Y$OSi6zd3EWhNÌY^/1?1Enlɗxe\.ݯ8333Xfbb(Zڦ:^m?bc'1qyÇf_Z U@Qh!opMC.b+$i7o0>뗪웍#I/R*zv\f@q$շX<4ˍ%*nR36:KVu2\Qף٫ʘ$.Lw~[MaqnGyRY:d3gOA.7/{4kmCyGzMrI*1,R-&3OZEv6I*߃CMaY+9vx6N.=]/Tj+Rx&tI LJmߣvx?ǘ,_+n>Wc~ߢ|'X?qfF!lm-,_JdIu+]qs`g,c,{}|䋤r49N#sSR)zaFLMO2>>:գR_HgorvHb^>q\>AQ!ˑH$}D"a5(uq P1tF{4]Ffr~<i8ř Җtn }&Q^]#{t eyE50P_bLd_$wJp`ӔhKq9.rnQ*dlnv/Fi41ML&w_ǏzA@k-$ 5I't[bAK àux_KI 8t{hkH'(Mah.g'oH?ġEp0,LلŠխݑ"#.msng8zNbt1cI?b9P1QH?F@x驾SY=Dz@Ji-F[8e#Ԥ I/V;R0w7H* rѨuAhAX] f#AqIͤQ M *;,7bD!@ 1B =Q7BJa`Y*LՏF( VF`&c8@>!J~wci5Fh`YtF"&Ae`"WC{޵ G8s "%p,I&ɤP^@/Bsxj|s`\@+tdGO1==ի+Xԙ-mA"Sd]0Hv&@SjTX\<̳/w̲Eۯlq9n`6eэʛۘ*sy,BH0ŴMHSpp$N%h6|we.#c ]cCNzX|MLfxDcOvk瑱fgH7N|/'oq $> y.NuLORmuGޱM+(fƘ0TVQR,z}t!:rrRl^|b }i29եQύ[+rYZ-=lds)Å!nmz~EI$o w(Nas(-K8L&cs`q 0-:a%ѡC,J EgV˼q:J\!ceܮ0!`lx ]j!3)ZWczfp97/g<+Twdz.qοCsgclb}fc [Rcp5N&IۡZ%IiXY7NRgi[4}N5F}y{ߛь4c;d&H&KKL %ÆG]vWdIџ!bkF:᠕IBkE:R1E"+}ŁYJ]mvͣV( Iiz^^7dcN\%DMi;dT!#j_Gv?W6\lYH}=AnF%LƱQ䣣`HuJ00I8Wj$3;;k23I2ٙMP)X)Zj[[VuU& H!d!$|aUd|yMr>yyν36mKrff6E Ar:TI!{; aPC e p],U"[,KEPu<  [٫PH.yl&H!dtgY(G8EB ɂ#jRd闲5'S7%"Y;-mc硩cU Il^8>-L%Ji>qvHͧW!BīFu=N`Vf&Fzmhe>1F8j 7e2dNc:Mbot,zm;TSy28]  Er2@GLӐ\ Q<*@2lٖ\%le 6J0t@0H9(\b j.GV}\plla]FPLa,bQp(EBlKFUU$YAb"!k et,§|=^r͗Oѡ4lxςSQR mUki6,zƅ~9QXa~k3ƺ ׯ`,yy1:gM0/ 3kK^B)Gk3@مBWB$ EF% 3m+SN").X-3rdm(jIUf^ #VLS(x"-7 TJRW9bڄqV$ NeXbْlBA2-98ضG(aIM!9,2ht!T >~6"P6}ghzw뢫ēӫl6i3Q>lI2ȑ# KUUI>Fv< 1۶G"Y¬cEX Y~?~a#a&yӢX~qdL@rz+ҹd c# Rw=MA)fc`hj.ٰm >£[rlhSVl9+9w<|AɆyuXژfAtomUl$Y°ZW.QrtlKuʜQ! ^ y؞[lŠE >MFoP*xYX"t ӧ J6 ռGP(Л-.XYN>`QtE"T?5JD1.;QYyGU@0ip °3)8`z2 D.NQ `((";:ymN\ïx $\0Sò@q_3gACN|׸LN9? Ә+Z0X4Li'z.J<{gx*Wo|]:oy'++?zxu"{n^}ciユW <4.tWoDX|q___O6,;Bk *qK)TWՃ$3LP]&!IbtP8o﹋\"XQˁ#HMR9#ije^=2Xչ8,젹ν\@S]-uT Yç*5<U%JMÙL ,X@`ztt1 r8:Z̑AS&Z؎T!0 |>AK'%1bqt#S>2DQRF#49m Kйh߱|=({12Drinp}eŊ%zYhlXMR8))4mar2$);v MDeTW!bjb`$.X#4ŜnER[_Mo@M<ʊua̋yA>W5sPgŊ,YHc{ Uhlg25ȶwOYyjh)A* |u\Tض8zt7T#wEE)xQ4|&մ/ 9Y`'5 O<Jkѳ.*vyX\!F8uuD#1 TUU`=$fkd9n䂋URd͔X\`.FUMuՍaF2zb$ B2A<LiB3L 9J8P4LM]GN`X!fׅX*qtN 8KCDPQl!S$ mbMc)Rj&I Kn.,*ZX6%TTp]OIL! AQRX "fBaBZ3UӏW(Dyxq!-˽7>LsWϤ"1l'OF2lVtLDy $w3VьM#XSQDe;h=Z$B}[U'd2 rxNn6NG9<=0N z' q oy ?&&~yvoA"ynxII)T){<n'lq^f_eRUBLu2Vy Qd4TIƐc$.7+V6[/dź[^BfCF5]$Q$ޒ!'WTL ˏKɦRYr3G&Ɯ%EH'HNI#8 SDH]:_(TVˬ/.\O,pGfv![ZžiIy< t($2i CY`MPq✹ Oϡ)[ЉDJfM*%riIJ6``P=`ts*/.pm 6~SdF!)zEsB&d3rqp,-5aJRQ_O," Vo@edcQdV*5w vW/AˡЃ9xB0iץ6Y,~MQNp9)B.p=W2vDA3˸w")H !KR7Ee8v$#f}ջa6wo~ZZY6oM=4\czzɩIzUt]gllmH$BTXp8LD!Sr11LX($F؝K5duVscHg=✵Ha cl۶IfND[}~< `'iS̓Kѩ(Gq"i}loJw^u?|&KMc aZ;+g&9xd)OQIO:YL7zŸW>@8kq'+Nҩ! HK goalɦ.H8frlL&JL&hatbU( LNtN=f 31Yud4U*ZA4cnjjسPQ<0v,aCUTU8A/c{021 }=↛8GYر~ #,;e G̱1љ,J|>O \A4J:Ou\>͂v\&~&FA ::*ٱ~ %dCVu|>^vEF?媏\J&{ tIvdlQ WCm,H2~5D p Y$SQr7RS@&e&5E]LZu`AZV]gKUG@HY(W^ w< ~W o6.)oUkk+*4|6l~+x=ϫ.мp|#=8̱A1 [-rdD̫tM8%/ݧ\{vh$i",h۷]\*G[{pc#* uK-o\/޴rӻ1|6TU筢k%7Vnt^}/\w1/Q3%k9S/ϚKޑ2!c[FpH |yꢫk+=d=c|+\AWש\g\}FwuͰvOX,.ؗ}Cο=W?YCs_\<O}"vuѵ\ۏvx>흤?n_w?tLVtu;S޹ rΊ.6|L{/ w'I߽x%0 t)g0w Pe'i@r?_+Vp%'qN?"<5r5 ݐ +4Mg$ j$ lw>\?4&VN=\MqבN*FVPN*J*vy#^&"AE&xb` >=drw\hC-\Ij.%\UIӐR 0M&;N:9@zj\rBr4SS GI(&2Tq@)8*#:)eg au-^TddrTH6]b:zF'޴$ $ -31-sVOh:Ȇ#YLjT5MKRgI>q\a HhG3rPI<Ȼ`[)*x x)w)P*% w˼e;Tx@@B2$0] !,P]0[d)䢉Y洳.q˻@eVAɄBWP(x &܂yKR[`pkŲG^b,2T{ Z><$̳6Cx!굴kλobV2xan ^/E?k/>ۼ:a'I"|ֹ<Ϻ?̟~p]ke޿]%5Y^I=)eճ<Gp!kYTNb"I'䋸cdrEzr-xw\Pv,u=\c-=}<=< oxD~Ni214SV(u{*qqF>mdw:.sE\eg_YIW?aOY9sNj<>MōI~O_fS9ޢ|烟6b۸üp!4^|d?m Eҿsoi@Jn C?u ]5_ t=PQ凉n7u\)控1n:aq7qR/B'{>>כ{[E\smI>~vOrrrry>x.;x6]^`:Ty!݉c|CXU|-~}0O^|y||?޻ e|cx񽀬_T_ ukc nG =l:cH{@LZJMA=i(_v-wnwv)'7~l+:?_u,N_7 6Jnxl'6C#X|mJ?^d1 *@2iU Q[bz:mj BXV&aBa?C5dBu|UEHeijlLbXU ³uT% z#cD"d$hi& "D"Q_p8_6HN$IfUR]]*Blz,%! ?rh?}$8=Ass=Gcp,A$rll3Zٶk 'Xz1RI*vc,)z16;Dh`GMP]݀n(DMi6H]u=>#H/12U>B+?c1oJ=hE%Bd Z]G]S;lT*?#^QGUU7MRDTGC}ej|9ڍ{44ײnbR 5Mfv J,;djl.A$ꧦEhe tm T;2SciƆ饥lli%/5qQ_-H}c%{Y:Mz %;A aȊyV5ن$I'Hz1 j[e#nǷ`VS YE&$31aJ%ʵr -rgL>Aƪ,A&$֮hM1pdDǶ\yXE a}*!h>U)JE ` `HTI GcP!eJ&2ӗGA+4TuM@4r6 -+ȲTR%3 $ n?vnUW3\|xC8Ș3l.ZOu][NZdTaӃIfm z#o'軝D=E!4: Z GAc{<@sS%85.%Vs/}*iYJǶX!;Nw?a(V( `l9`l|>L8pwlsg B Y ]yw̓HB(J`]׼^+=TWWwt_ G o=Ս6XD;~&F4ΠT(V |S(hDcX$+,-@z6Pu8F3.yE*E7Hi 50 ںvJ~QjhK>?Iq2G~!&G06I88A(8Jm |@czOFpY,m؅,U %f6WBK < ͈`nA$c`żyK+|ķA*8aa|WQNq%~ųʄ@F(s9@@` a7g>6'I\2 :?c _s ! MB`Uj(k1k*GWߓhT@)+T.MaE *I@ d>+JdL0]#hBQϒ4i? STl^e咝&dDWڿ=f-beQřnhߒ}Icu5_ ~2=) 'SȦm 7SqyooDн)zJ8)$ikӤM/b3\}BN[ @tGr,\jOx4~70o/}`nvr4#ɥR,{ٚ?h@ŝܳaUk;q /֙{?cO"N}$p;N9ϣWvO4ggWӜI:'8Z;s ?3IT=Q~!p1NE -Eƣ\Ϯ}J^3笋r+s|[Ԏ6Dɲ)Y6obaX=g;vpV%ط<7q0x&5Lr߿["˹X];?4 t! >{` W]߾}MIi|׳4z۹cl-Z.XƬ/y*ƛo;>|s;E93f4ӶRv2"\kXSkyڠ75\|a3VoC)^J"cg֏]U}JSyk_|r~G{7]&!/ -jgO^x<2r߉ر|7ݜ|gE|soeMGknz]STGRW&(epֳ3U5< v7?X~IG¼/eݫПǦp,|8@^ѷ-M|\&XDP7g|o}͜Ko\Gˋ?q/5'`%_ƵqٜX}Hi1l㬙-s~[%ET.9ZXL~u˖BI&7$Y`!}#CTϢTKVryQWN^ |$׽ vވ+V9,0x00Cx 픋.D=c#2ł+QC9<80eP~Zg0:Vdgd0NJEJpkxX 8f!&}MO&cUz~QI 5qmt;S ҵk#};ٶIwt/e+ԋXl'$C>u5j I}\FifN~_۾-x{yx,c(g,Ijf&\GkGA.n"hl$J}r3>M3STK;̞enGʉQ(N0kV~˂eZ=ƒEki¶8cOSC"%O7G2s,z7!$U Ow"0hbYs磌O樝ic%B!,8E1abpl|& &#eڛ$--%ʁ(\$ItCE$xW&3b a3V]HY|o-۩ZyVo a\Hh͇a%{6%ϡ)n#\0hE@Iy8R0xo'wwds3"ZKUbY&d8nTTn/e1굋i[uoz/twG"H6"3I'yPx3V?RGڲpdlQP,FQ0$Ӵ\}ǹmHn<~lLL Mqs(SٛVI֮^5~xy̝elUo1Mq4BMP_ !PF:(j` CvF/K6QD`B)dj!Tl CJD)EJI~_q= GHD%Y&&f|nƇg'I- hBI&]dl7+0׫*^ũq<8H;v:p>q )af](y0}ĀP<.EKϷqm/<:jU5k#J'z HV,](l_x̽RC)#b(yU$ DQ.Bǡ,aS8{Rʶ[Ĉr[[M8{@BTa*P,[a5J<  pgR`X% WJ&/Ar*ѹ#@U GʒH›c[c\>t&!ē 0",T P:O6!bssCDtS#< ٻY)%-+F(cB+bF5V*OU)&\\B} D/."@w!%W5AX:<}?kdzՉژ.2>F6n}v^ɍ_|;gϟ7}[Rwzj8tqyצC/_6n̓,Ѧ#)*.N cy'0osб|lH/>MN^_˥Hw[wSj޴ˎ 4DAHk(Lk"N}8/fyv7goW'']T: {ߙϷy*%r_p~CQ7Y'w\2d\w<ϫ$@"e\W" Uo3γ]|- : lJm$u [{$CkWni=Uу? :^ŌC$3w*iy-]D"s؊x[շ\Ʌ]WㆁyLG_|QϚĜn|߽?VHk]v̫XsmшIuy+y+VOXҺ|+MwaMZGpZo7p@ǬvvIKٴwQ+gGta BX|=]jCtw]Da@G)N>_`hLĘLȭ o :nY9 c90Xbd"OB8%]%dXG(@HLltG݆&fp׭GuULʾKP:Yq@(E\iw}bRQI̍}kװvlM] HWՑMk~rN< H!B({/H8KGc:ST?9eWD(Z\cgΤB$\O`Y%,:N8%)A1o%-gCow]CfJ|HSc+qTĨkld .(AC| !݇ u@ eQp26,Lf5Q 7P*J%`,_"DE"%,8< ʜ4@ v_O)4'/ =ɮ1y8,@p|EaP5BH/0u"7Ó>;EWKHCCd qz{ԊOol\-&!:.N>`xI9 >FT`*-idjJ}l)3$pbx2"J6opy3 )p Jypt)\rA⻊!|-U ] 4J ;2K&G6Yp`EHgIBBx8(Tњ} ʫ|cFd[є@d 4Yqj 254^aHȧ>B G$_$ڡ5hD04,4j5"gȜ%}B`zp+?߹:7\I۞vq3!zEb?DhZ%@g@|+k Mɴ1M dZL# ~oƵ9|V~v;'%c0ǡ$a~qr|,ǧQYhdzZW>R{ kc #=Jq8$F#e.>|eH+~yuz_dUʟց؞i`SOSNX\{Uǟ3ǵHZtu 1: ~gNMy'̟JmE^k~ȷn0X 4_yRHU9#D y"&߹{Iq>rU A/TG8QcZ܅5\El6}y1,$4"Qްz1WO⃿/waB]7nڏ !dٷ{ 14H#o'|]W_6޽V>Qr=tb޳@/~gZrDϧ=UO=VO`Z#ߙL)NnI XS=҉0Oև=<)_G!H,咎?ٴO1+X1-tGs^u vle&&v*P}p@{H"F-C?y6ҷg_?L6>=ģQ>v5CL} .=C\&tͦqO63dAU 4Flbs#?I%m.t& 3UebMed*D3Y}ϐطs~ |# U2*(`@ }@0\bzMEUEp8aXN .ر )Rv pѼ@ع n$9@yl};Ӭ|jȥ{r`;6b,(f$㎁,R!Irp8\Imh t/AC'q`g DJG6h*D =KxԈ9,kyXdCjG ؞Gei:`Bll&6NH,jTm'(g 7vAN |SC;p>'`yd:!x4 t\g(_dWyy:nIqUs._Ax)*wӐEv\'@(BóM  Vq6V)ppk=\+;,~ *iW#K؉1 :I/wf2?갳o^8<BvkRS㣷u&-tF#aG0`}2|>m .ո|`/V* dΧi35U\XEAHn8z ?'#' ?G;W]Ͼx _y1zԭpڎY'w3E-?xg5boڸx7;"?UgEȦG2/ڈ"}l.qUcP6үF "zz>6}&61_4Rsf|Z x:hHW8XizhӼXL-wNo*:UgfJ}[$ h*|9z> s\=矲f+g}5]\C:owǭrz8uDD[*|$(g[ HMY!IMurOw _{N@cop\7} s9ijM8Ͳ`ǿv#6]O~K<[\xdggX[8 ^pڟ?-)h]XeFZ["5dV,[{:S,^-_?5gA͛|-_zFlkb~wb1f̘ACC~`|;ߧ$u63NSc a,'˯@7)d}w_9jggNF|O# O`W)Y% {r<&>ͱtR֯d\WaH£2t!LuZҙQ4i(ͣ?Į\|'%bK QX\ Q3Dd:ܼþ};x畯Ww>Fb dF'44&ȕ}2a!̐NAUY̱zh eٴ6B]L&-ξp-?z  &"QIB.SƱR50]Qv%јpf0-QrnSLiV=#޷[Y&Jg8 $7A&#b#DIzq&Ms5HR\O> JDBurDjȤmrI\ Br9 399IMM qcC, /u](gRSROOo!=hQ.Ä(L -e]ٺi ] RH 20ALcZ @ IDATqx*cChF $.2MB7yyՅ2| OYyHSGuBJKJF|DF!hFCBXc}Ե89p-tK4YTax9^%C؝~ rc 8ǧQp=dXjQ SE.*\VJmn?@*kԵiCK1Rvc+iJ4$nL SN>@+.~e`|IBק#+h4w[Y-f,w*֝t׽q:v@xo|M{zK?#}[_~@紝 V]{%ۿǿywk&^~͎o^}[y%@> _;3ҿ#_x!v S|M)0W屙-og'l+ p'o?a~yv A'~'# )rR#SuC Jys־/]];hnn sg7gbHsm=Uqlx~>tӷ000&Z`xxROM|njkc4D>0%.S,Ɩ]Kp9>wIIe" ˖07$Y|gw~gpk) AmWjg:x}˲(6(RpS*Sydٸq#{>U8a ?l،i˂aY\E>DKDXZW2ۚ5*xe͗S7r 񐃧I}1Хtbgdt3@}];+t-ƏnE :NUKIFFG)6kص {׳l<[u\Q\LU\3d߮V锤~zkϽGׯI~H.[yug{έgk+iݲe6jbJ @%C  1 ^d[ljǬd+1-!z>՝wΜsϝsy~B)<ÔN8;p@<3MQP.E5qlTO~H.ƹΡw(n5(PbKؽ('ƙ1Aw-XdYԪ! ,t/I"G8p;bP%fq&24.d~|fcwcAfzz i( ˲⼋H&TkUZ;L4ֆյI%hN/ihhq*S43ol+ͺ 1]=w‘s/l'5^̚sx/U+ ?^H,"7;C<|W/ݭ&v26p#0{#OL8`(t\|_J(|Th=5ᩐr~VXӉh~7i[~Kވ pӠN"ʨ/lBVkLN8g[i֓55: 0b+-`*a rqE<+ИRLM eIz@Ohtش-64=z(&GIRٮqc."PC *<Q]1Q A"3<0#q-0o_b T$/P- @JIt!1"0!CPQXg=//X^q`O l_lXw 1\#_J4ittd!<Q( 60zc]w@J *.@Wj!a-B %n&q2S#(CIb1sMu2 j5|INиOMDBP0xtEj8R iMpk_#C4)dE|((+A32 (ɚ͔T=o=~l1g}WUq?|v_uOJU 'd6>s|M-bIzzg>@jTk^߾_7|lŜ.o`nլI=K<%|`r_c^Gl̈98T9ƛ+;xކX=϶of\Ug/Ϋp}]/o--U=I!1Srʖk -yj!$BA($Aw=El7wgnZXS6D-?ݫ[Vtfظ8˛[u5R,/ʷUt\| nkr|}yEe\k53^$$?}?w{ȶk[/oW5~>g5R̿_?}łٵF.wͬ{דO-ր;hZ͛_>3k=a9z'5_Xʿ﹌fɳ{X˟}xgR/7o$͗=-ʭ_(ws/x1qi ϟ M,:j> |9>gmMUF *m{y3\'5|ڿv&/C^7/'7in)+Ƒ;(qE3#]w% ѝ{ٷoxyC9zh;L8~#};Vm  296'`E>|l6Á޽xuP(!'Loa4eYhF#=xme>IۺݾFZ۲ Mae箠).[s.Ue4%zvaݢbYLC RuuW@>wl; \סw`Ph!<ϹKBhK.ʓ%2>8̉Q3,Z`&XH(b$-0 z8ٱk=ٰpEV^᧍YTk+ eV_˝w`P.ܰgm'?)h3H.H7oqL|B}x?1bbXܢT.pι X.#?=FQR*q~&G`a?OZXV 2Zemf6l˵0Z&metG5ĐQ '^$sHt*tHSF` G5,Y3<tO`day"E!@w^]{|j5N-@Q'Ʊ)ZEGz9~ +NBȅj-<ȃX{#&G2z/aUXs.r+K."i1>>-l;+dYMڳ ʹ2:6H?a:CLL?t+zL#AT"iQXs璋xe!Yn[?6yB۱Z2llQ^.6R+Zʭ>R5mRgI n=7A$'(&4T"EO'SL4M$ TMxFzqɋZaJDϣFKrݷsgCk29#E՘"t[ұtQ}O]`.cڕO44$MЍ$4 ;ho)b_-F̬&Hg1QK@͋[0fa$IX44X#%* baXX"\"7y-@B$R|ƢbMBdڶR8Kqhh濂!]9eM@Ic*=;?Y{k6)#"UO?y)ͺ=,(jw_ tyb(@As(k08;(inT= |ҤmgBY l{[h,i?)70EH) YY$%#z%Dj ~ƻ)P%LLLKzhf7?qPu 2f@%Rc$0b\X$Zhi2'mwsh]eHax І4z2qm Y#oR cM.;mp54#i%iiT)Ba`>wX!=}H  /ﴒyb6 Ci}A mIb`d0L K\!;%9B `lN.R~Y([IULC`mǽ:ۤH3Ă@,UCHPF=:`Z 4p\P ׉0$R(27US tM$735䜨'!^H8"J K!z`X% uJ$ MPaPW͒)I E ; 1,uˬHB dc%!7 ;=It|ŐnDzA f((eR~R !1LRt<PQӒbgԉx|E <ͯ2)@P*FK2] AW٣i_{)g<[@~5<&OKJĺ^k;Zj1 %N"R1Fl5Ooc䣟o iZFW~~7\/>9tdK^FW_N._/3PKWyugiO'7_x$XvŅdoMW$\ 볝{JW;yL:˵Ϲ/5ֿo-B,kTSn+ܙruEܻ{N29Sg!O35 @E\![cf&.\BҞQFOmTĊY$Ok܍8ǂϯG׊h~ȻP/㗅Z+#khw,,#d#w ]W?7o?ᦛnb s !s vt̶&mΛ@o sbx/;+ƷxC}e{P9Nm9]]t[Ⱦ#e[ねhlN26:E0O{ʼn#JC.>0wݝv#? _soQn>~zo{˛̚ɺ+jzab1$Liֿ۔RAPHtC< UB`6H,瓟K[Nݚma $J9@}Sea&Q xp^b1(0hk(NW?/4/>eL5[ 1i~~nM!xk.7)f/ Y N7Gt-o_%+s%+Owx߯レ:g IҙvݞU_x Wˮ?<|ϣ=ugwq0]CL"Dw],['Ҙ.TUMM'pi$bk]¹眏@R(wЯ2=ìymLNdj:bd>t/EhF/hamsimO1-7"/_u߼y pޖr0Ð^@dBJ*.ai[st*D^DDHMMLH %aQ+Wit%PLͥz4lh ?wX4!NSҖRrqtCRyOOdR?{rz`C u΢5_Ř3BGScy1ѽ&Jt/X0ms2 "S45ǨF.Wj7߾+feFҌOig]G>u3/{qK޹)e-\PڄC\jDn@N(@`&n͡)t#ؚc\i9šIyO lJa׏Hc%G}TQ.pt;J*\W!j%"Ax6.L3TxaD=%Q$ ux)HQJ1L@ij^]ytNc(b6^xQA" a O߀Y+"PB6E RX:N&[ IDATs_OBYg HU'^fh%Q2?< ]' sPN4'2C-hٴh1,CcJJf0dvR@r; OGyl4AKsB!BՓ_`S(ha %5"#Җi'ho$ϽwC:-DMs!HH4ehlG3ub4- ,;Mnu>5A(41enWӔ(KhG1 sj8FKFs|e Pd-@i:.UC-*+H4P!Dиpss'8vgA*Ǘ9mӮ8`4\ue)!!IPěTFBM @&<iM>Fq1Ld9ءFe,'eDRh:薎WЍ;.|A)BBF\a4I&˒/oƹbe DDVpڼ<9oB*P5<-¨&,!"-0よ,H<hkh;- "A-LJ8(hH7a(I*bo:03E .p+c##", VRh<\cZV"2u}Gp ,#"A{9M`%!iQn)1VdG7ݲ@+O>=7g6_a߮m,_}R}+_K_:?w~g ?֞ n.j8-׾No Pf͙YYўcҺ3neU53RZ"00>J[k66h5"dݢ9"b\~uPOlAZP&5Js&A, /t gϮ+!DJt'I'g4t-FjG{7Xd.bt6lJ<}:2/}/L2f¦scϡ44ٻcYnSs G5p-X#UC:N#tpl6_ ۟>pE,f}y c1<vm}Ri.2nn&ƪ;Ȫ5 1eRE/g9r1l.O_~\3 歠x߄%4+t5wDxRqtT<+96|ߩ͑ʹ`Y==1-\.AD<g<㜿bY$ITX"d:t%KF5zՋh+͉#IJ,*eq% CGB0>>E6}}߇lƆQJ7cku H Fpi$ےܺs)x"Q1@ j݂["iƱXqr1n{($fǰl\«+t !hTja*yayuV7(.Ou: $N:[ Ğ(G1_k8{iǪ .YZ MHci(" ڵrUHgZC N:R q#CLRgmeЯ~IU=@' BoHzSn)A]頇!(*!~*X&5u(0M MڸR!sEN3+8<^șZJ/NA%°kªp*i4K.);q=&R)bdƧZ*1B\ GIsDG(Ll`8ؑEoR*.V"|#5FCsF&"I3MR(3B4r cSX}!mU}؉ !@ XJ-41$I#B%KfӖ)1W-Bu= Hʞbo2j|چC4"R Ш!+{v޵G(X=E S!4I]WAܐH-I|'$0=a$+HJ)>x.A(͓CN' gO@%K4."Ga]]/MbBEHꄯ$Z]!ѠOH. iAKB0~)CDU*.Y.C'&tm7caH\G<5"N "BLר)AbbqjQy 41gtr1e|Z< <8hQ>XO4O^?K,CC~ү,{gqgkfùp.c~SNeiOQ*4)`Hi%5goR5yjPO%Ne=>X=IS /oٲKYS3/EmSD?x2{L6g{ f__&,,,"$Q .#,pH$,[؀4Z7B&OQ);l=W^q)ɔxM uv眳 7]dycǎ1>1[j~٩$!!},Yҍ5>x+DJE'Xp.r8m503mfpwQё1'hHf?Ƭ Q_/|֭[G\7̺^J A[0Yضs 0gR"4/|Z.}Kȋ4,.#Jcll Lak SZJnɒZR ۶hy[ixp!LRqA`Vbae[6CyKZh3׋Y4œĎ ?~ sQc0Gny9l|}Ǟ m:߀B1^a3}AƦEsbp4bDǐ3ARDB'(d2H_C?k5֯.D[T<\Tɩ֯ۀex# ɤʗ>Lkڴxܢ4+`vVQsǿv/ j _(޺H!BDccКIf\OJEk8xHSt^@~rd\8w/b04- y%i'ne\Bn'z#b[92 w;TSQvϹ+hԼ}  ci|d:ĜqJ$[ײgNvLTBHW(zuo%"z-0%JETPm9utzL C 1s!h#edS6mu9 -Y{-R t'@|b$BD"נT)^, @TBcZP M4Y8j>ߕ@ZdHTR*l XFqA8Q*]&xni̽Qiz$1 -bWB"cT CF^y5 س4t `f.V Rv ÈPShR8' n3:*Uxe|'x?dPzS  7őh[jPsCZW@AgDHۀO[HȤ}>d$B2VF. Qۃ3~3۹c!$?_5WB8|K,c>%XYYAlW ,^}OS+d;n@ pKfFsjɬmdkuYYYmCɩK*-/Kon-ouqFLLǘ:؃ncf:-dr`"m !ál62 ];;w.S/o=w?j9wE*bm[#eDL$\ZR9D8?]]=LXc[eM4Pә ؿ?Vb0%4t nǖWR#Ha50 i+)z[H75 R5,D/رn;ck:w׽a3(p_;AoOO]Q8J68v;&6($l |Y-K4.ɤw! DPeV,=C?LdZٱMWP({tq28mmY$6IZ%8]4j㾻c9fuSZLQ *S&\AJ)4-㰻p[n6Әz{ ;hhle|h]qSضOlg'P N7!"Ƹ\~诐Mju's:7GCf^*bv3擴0Lzit_Z/q .4ۯ#梋.dw~ #X)ĥt%v "sРqIZޣ ny֖#F'&h 5rzZz{{?>J*XءƁ .Ԕ#ⲗo=F蛤R1|fb,z_aL325RiẎ?-bt\aG_ZZ15qkg7rB"= ,ivkD" =Dd&.A 0CD!:*!T;ziX>a1Y-ҬI*)$IAvg=gn{2(}1ٳ!⺎4 " īĩmJSJ9!1)qHB%.>7^hĔ.hB zmѠNj ]J‘)"_-#a0}o" q 21mMBՀ0Bl&+ c>x>OԄKCrFIHW^aF@BH֞#N,DrǴ5r)4a/d4$3PHDX:xyD! fJ2eBBV*WjQiC4nzd$%) Da[y 5R ʆMCPROKh-0 +21ix!pJ` 0ujbKO2enW_d`&$y7(|*$ӥ+$Tn`+x *I̜KHfR*xn@"#$ }Tm6SD"r@ uT';&õ[б"\YZwfbnN~WoލW`ق=<֫~%['3[AfR kk_hP" &DI{"1ab\XEQBR%3^R䲦זt1ϳz>3ygt"qZg쯟+ !(`3L[Ѐ Iig0!,9E!2 "i1ĆD@Bs \Xx!4o]ԃSŕPoXرL l[x^W1# b2N@>'8QB"eB8Մ|~ch!3lۖaEl]g cId][7H M.&=tRs9,eqPuKSmr: 2BWi,NA1!@â,mF<݌Pip.r05biHw%Tb+IF * Uai5hi |{$*6([ޢ## t+<=&K  X2ā)~v [5b":bI,5E\ }wprrmOyg$Mcū^"y jO)-drۑ)4#S~V/[ICd⥜CCG:?d #P"bbj-k&E|ÿcqp] ,qf| 7eZfիĶm{uDb0oeN؉I*Ր b/yCOo7;}}]N*gӑQHLΔ(W)P;M>&LL/ 9zYx= W,oMx-tMZIe"ԘMCUbH2(cP2t'˲+$ ڠH.Zk:d#szYXx!K;y-[ǩ=styrp%:9f)kd:C*Cj1uzqK0`}uz6jp &&Yi1tv;b(lx ^ʗc"RKE6""H#hG m4X<ϧ{Pdce\la.?׽̕wqκl*lVO'vFձ]tLiOYzd#Ƕ9Y8šE(f| a~^ .4LWBpb ҘĻuA$.ܰ1ϙqE$hm: ) Aߏp(H3v'">?lL:[e<&1ݫ0c%&h 9Ι~A-lAˀ,1J;8K:¶ lH\C.ɺcqbΣOq096FI&EWEwFb+1Ćص$QϥP( QNdbW3rb5NLR h# ޼ȹRjtFϻPVhEG :a4^DHQDW=EE&+X7;ʲkh+!5 E*#|Z-91,f 2KFѰJ@!WdV! Y-CǛZЬ썱"#Y2Iө"( ^b%(M(HQTkA 0əZ@'&(HVHK1QcY0L]h%N"b_⠑v29Xvr]@h`IaPK0~>:_4Ԫ!rdD$Uմ%kI|["ZWťzDf1:4h$"Z(01Alś6E9n[KVecz4wB9b DF>]icI_0k>M*tTj.9RQS35IÛ! 4+]xsT6mڴiӦ/@=EiDpBXƆ~L\8#|v5yVkR7KV:?acb̻E1m 6mڴiӦ.g癚=§?u|_m׾{eyŎGm7P\A&ʔ[%&&&7=ezN\jJ6GJj E&]@J -%1zjAv^hvlg#S7aشg͊k})l:]ohygXi){wo1ODZޮ iSŜ;jxW=@k1Fw7̢Ҩ>˵~o+-!4BUTy;oqv=9}6;}p,|/u]L( q2F #$͆Ooo\]EfQsyB; $u5F 13V7bkVo<\Z ɲMKٷ^tET5FOlVyqttxiP.VDwG'a&oraRlj*J"3]J1F`Y頵& Cu@ʶQJX\v GGTtw񖷼x\~KbK6dR\ì_CG)-P/Uxv^JUrk_dn,ux===ttx4K^Am02Ew9CLyL7%J&C^Aq+HdX.g=K^ ɩq|85~҄O꘠x^>Dc|/\rB3)]W7o=~Nt 2)TԤ! a+fQ6>1]nDM3|VmՋP1:mbu(u^a,Eќ C–)-Ω*,]HŒ- k^HMXL}RJPdF - X蒽`~<_0s ۊc_X\Il5UeĪh%ues"&~]ϧC]Z(ܷRUHeȧ0ĵBrLk! _bAԥtv)>i[!F+_(<ǃ i;" N^ DZh"Gd۩PT}~Eo ^Oy^Ž$fn>jRbvW(-lYy~ N6mڴiӦ.J)6Z?.Y+>? NjЎÏek%L.{w+tIXZfsd,^5H7 Dau`gӌK =޷kX| OrOg9|"y>x|oʵ/ʚ966l}|J .dw#kZ|mFwKR[w|Њ5>>IJ4 ÐbLZ|'OcNϞ={W4ɩ!Ǟ-KS.r!f˲ 뢳H\&͒>]ᕄaxnڶm>o`̔[!:lґf|r/KI/"tf7G-Y_uLZ ZG^:j6=.tRgPEKz/m~~K+\w||*N}@ϯv0Q>Ly|#tr$HO#˜FA6d2"V+DK155E.q&''¶mVSjQ RMR!OQmE}۞Wl-{ `Z\d{;1ՀiBЪ1D61u]ZDt ?HJN;ds6l` |X{xb6Ɉ j-,K=rK_ͯ*}WpOos釹31׼2kꪫXtX mv? ,[a՚5ٷwKZT!tWg `lDhe\ v𣻙+f``X-QYK3l̒ZI2NaН1z̪-lɮ5e`pq̊E}|+%O>$d`h1K|)6m羻h^eV6q. b~>d9 B7@I_x8N=5:Eq)%twtr}j;%58o>(&%DNd".HrHfb1Xspk+/UVa%:f,A)9HRRYh"-#&8nRuN֎?w@cQއ-T~W]QlJD3P9my$'n*FDyzWga8?%5l zSnA efǫ׻T uE5 Bt Z'Ilބ_e2Fת4sQvdSt$@@1 rЩ8 c,IhBZmA ݪ ቙ ɪwDg o)i7ɀ;o1Y2xFyPBˤ8 @Ix #PqGx 89>$mFV4N1ALyk;"<'{Zo "pb<B 1OA eL/dG˒ıB 1 %bB-M3kl[c;vTGH_mCX(mpĘl,;ʂqr$Yܜ F6; 72:[hђz5,CYL(x 3+sqrXQ aQO߰{z۳"gPq@8Iַ94kĩi|Pn7='oӦM6mڴό_ 8LeMŇ^1`ļǃ'yh :gz/'%1FίvZ%nVP/0goMp^h\4|m[?AE\C>V Aݿg}ɒލzR{,\.flglIgZ^R+tIi@R$/33ωĞ m!0zx ̏ѿt9›/㛘E1??GD֚fI.E뺉u#:s]sssE@H$Mԛxq%S|¨A2x3̌8: ^[8 wy]z%W\u-Q$!,PqqݪԘ7+_AY!ccc?6Pe/%z L(1@R?1{e?fE[8q8Neh 7͊8 Fy4Z.MURi|3_⊫~ |{;[?62=.$׽l%`3l IDATdrE*˛^{8yfk/xW8kIFEɽ')IWaYQjT-926Fxs&KiaBDH|GF*:{PNr ,[Tp˯GBթ68.Z$b04H'TInZ"$5$Mn Ba$azP7}eAFG= =gXpZN<3BWlmk>΍'Z5)&0eϞ g,~xmJ@,bI dAZ$ۺQK㡥4ʊYwES%AWG%R Bc;*Rds.9˅BXbDсPE܎ٮh1-Akjz7%}m'I/78D#`HdJ\ddqk"Q)MRC&9tnRSk(htBA3U iM@+@ 6.WЊZ g|Z **09 Q-E[;~CPFvB k a;4&oʓ(6[ި!K"^ @OY/9f}/e; A!!STXLNԳ6HGXC%ζ(PaRmq "PJ>?cRDQLP,X>D#r " c+Z`f=&*%yߵ$ 5 * ŢM>K<WcDSy#S4p9>WF`Q<74\Werj՝TRj,k^̎wae dȿT5v eN8B$_w-lӦM6mڴEjY=܁Yxa`tc+l|Lӽ34yӻJ`#κQIyD\\JI,m _^|=8{vKWo_[aY/T'r?o7ŵoGx~%|o?:La/?Я:#@W[Wd2K3~e`>>{OٽlVg_޽<1:7^^_}is?!/k6mڴiߏ勋ԽP j\oLÏ@ .aŊ%}MP {w&{q,_ɱ#G6xj+%sy{ٯs=E1-C/a`159.uS #Z-BK.<`1E(vDAɦ/Xbaf#/82S! D"BHȮS,f^ VoR4HRD1^ˠT4RJ{U4J֮\G̖ w`ɖk_&3b]tr+r4ˌR,^Y@rDOo.ʣ>FD;E|!r)>y.}+YF)6-Y˝G?y#֢*|;[ǟ?z+YOL1dd\>f\iDq,OEhUHIq▏VW*k6ӂ_[|y*1"z5}E։KgN L4kpsݘiRb N:Ao`iMP){ .\EE:*6xA2ZEٌ(@LgV(+_ 1v Є2F)C(' 4!:ojzGHۥRa%}xvXwL>庸F ![,2Bid2,utDz Udd_ r,27lsnfű\q4MlT ӨGt-)vaz~/T1A+$Km16JX6ϾѲ562|;^|edWO>No(:~wdEK!rҐ~w8,!I:V-Zi"&2Bi ``-PJ($͌eoi&5uS+2F4ٔB \|WUIt8,FQ`kM:A/Y7tf&B*!q]; !NqEl8 `9I&}drFb )(j 1g0|>3D€Ja|bU`QxATj /5C̖E3/1Mz&( %3>ZT4#Wj&B 5%4{Jp] 4Z*2[t:6!Ig'ǻe&t f9^9>5-T/d,f" MsZP15N慑-!וR1jAlF D&&t$V{WIבM դP!DBx>>NiL x>ؖQ"5X q<_` ~Í1D1c&KK TjTZy:YHJٴY](Bs hmh znC(|[1؁!4 KJC`lrvHQChc#[+ -TG9_NJ2T_|ŻΛؼ\9懚s/gXwo>gJ6 qWߺޏw󽿸́G_]nȆ?G/访>px9|9__O߲<^>?Υ_,Ï|߸7۹*mڴiӦͿ'۶]L./|;4#CA0|}]>=U+xx^O<Ǹhj:_~{3_; JcdT=6æ 1au7ާFVi6]Ó;;Hr(_} 3UWa#xG[[ZYCSӼof={wt0=55 JQ-35U@hFA&ƱlOQJ=ApI.X(`.ƀk;8&$jk\U*LMҚm}ryky۟KVqۯe5`5c&S&ǎOsWQ93FYKQ^/5Ϟ$I]*er8)Zqa[jjceص Z]\tr9P3fh2*!aMд7"D\E 6.- i!m0Nڻ!9}'qǗWƒ^'7? ÐT*MTuZ1 *Cq{E _' WqmaG`~/^Q? Ǿƽ?׵ ` _O\~<ir#rU[ ;)l<3<[x%?m6+ש˜9łn;d -=)? ՛e#Nۍj&Z۹pR\FM~@ .٧vC2L+xGذ.;y_FqMmfa B)QvNQtLM`v^hV=dx~0.K,q HYD a<)c ^g})%q0FYIρ8VY0$ߞ\sFFkSx75;v kڙ=nFenaFfV˄aȑ-'9q +x10{جrӥo~{׽zGᅦ_s Ed9uOMt {oyxb6B*ǏN25˻J:jBN3tBxxu1R܇'q/)VGdYO8L}w<,k6s# K|Wqr^9qjE92s7^{ xkoa*[#td,.gvy[/P⊍}V@/{E&tYҚAFPƠXfi.$ .bOvпȭ`1n|kxs-sg-=<; M(]Aip,X;.eazIi&¶\Lv* >R 0BdS٬P|kTQ{1yX6(PJ6 U!]xc ,FAԠ&2A@w ^B056N_o 3`$.w!V\Ilvʍ)Rz򒉱KW wpS'##8!:k.XUk/ Zc'*8dr˹,|s;qb4'Goo*9Dq[w׵k?WƑ2s5+؎0 ,iĶ6_W\CB& ׶ J2JzP$B٬~"CDLha%aH9.1y/Vqm/ C\`vtx 6B Lx!" >HacXtTCvT; ]:wT:P[B̿s$ƀn^Y"<[H"=A4-E- ڤ'jGvĎϢUR~d;_:l?PT]y v`tF43ôzSGw̓%#ݢv`>J~^_T/,~|~&F^>V,1=;7 Â[~3<3<[!jS 퉢’5 U VçqZ=O;ԆR9.U Zs8p4֬rf@Gmt <%g*9q~G;k`SM4 h|i9}W#zzZk6ʕ~, e\t& Nj6'hړ98Jr\2F Dh9~lSds6q{XijՐl_;bP4R6,2[*5x `l[mJLTaE83rtk۶q\~=wc:b9>v_~J4m:.al1™#Q}[b̭/{;?vk4KdΣ$]zNM<O6ÿbեDe+qj,*8a,[lC],n38:3, 93;b) IDATޫ;_6lu.+rmG_CYVm2Hwi_r~ns40Z7?+[r5O=r?,uj?y6='~´(,&}0YnǦy(mXBfj1~g Kq$x+6#o+nخ\{45ױm0-~Dd˃d"QNl =,K>@JhM<ñZ0(ϦQAGMjwDAOӌMhmmn_u{׻hi(TOb\EhO/;?=HW #0`!--[?CWW/3<<̲e+(d[)2>QcӅW JzQ(Q v.GZk˓>7>%~dfNg2?w™CK5 -j1#ɘ FKf̂RD5z'N=_[))s&YRǰ s!d*zND0ņv0n_u- #59|a4Z B48$eI$OX'cY.Үc9X; 5Z)G2X2mG4u˩@! ^T7qP*G)J*c"GUI;ib61Jq죔6c ҉7ZDtERk\;yZKĚ"qV.\D Cg~R%zL1Fk@cD"ZoRj\s tMÄ(qp3&uU|5xkiaIL`+IUY*’B+h,yʱ 16IT]ܒO=aT4tr0T3 v[iZU|FQ&βpB.X'#BI0^r- 4T#A%U׿k%#i4xILdhQTHoTfflslLeq]`Ek13W JAW@+H|ؾ@ UzEbYsBItB CC%be А)")4X#$!ǑFQeǨۑJ3W-HRJ|iPX@E))SItRۖl)Q u2Ă(6 MKP?l0ɶ t]ZLO"dra>TXB`6JLh3qqfɠ" cSJ=nASP|f?S|?nǷfpA]t1řK{ ‹eW\wﺋD(_~#Odk/fӣc<K(UسgI[?ƍ7\Lad6No.:7bl+arrn,n6KWgDž/>ʟ~>NGʨzO>㡭[Hw|~9>'哼^Wm?b.:.eY3ʫV|/[K߆<,lj~mRFKlbv@wb6ك[1{ ͅﺌXtiiGvWQcq.8p?gXrt KRDFНvlr#A$tR&Tkir 4 1ڧZ!lt[i4h aKq"޹KڶM\sjtˆZped[]vr7kN\eWKɦ*3ǵ"C: 8BW~3EV• ,SP!%[d:/eRBkЪ!3)l۟%O?C֬"DvCe)Yu/rG6KcCe{IY0vٺum~0N9C\עRԂ3qD-C%Yw%S |@7"EhaY` u2(c ,8|A1jZ'#U@R)2$V D,+1DQQ(\1Y(BJ F;  .` /Z?+9+79W:9*(,$Si_ 7]}MN s~ /L7[%{Fɉ[4MH!ӚC:Xee\މ qt(1]a$TMTlm6ZUm`EǶP*BjCqӫ'$oJк0T+uSE~l׽|1jMHC\`s+obʛS]H'9[^ GEj"U@)Wg $COa&Bl7x֪M9UkRת=+ rwW-Lv*A i kR䡓iJ|ҚݥZi iKBi!%GĴ+l,$x'nH-ƖE#PDQEyiU QVuۈCHm끔:zRf9Q(e"pp\0Z8# ڌ\xvwbO#H,KǵcX;IJR9JHdh1Q m&o/t7˷_Z ~ ַp &G~)Nǫ]nRlրShY>U4:$sWϽmY>wgyg m!JޞpA0+d@[@Vs-/gxa6^t!jzWl=R(ώ{{z'G6jW^u)z@0.#KTfKL2lyى"+icGKK ҨF8qLހGO{+&qM2v"jN(U 2;~:ݘZVȦ3sI}5,'AK{N)=XBÈ2ݭyfvfh Å[gϹt8)et;*ϙgJ0ȏc[><3GfYPTgo&yA=reFT&eςEDZ5FVBcPa`9kX)%2( ߜ6&8ŏ⒍k, j˪Ukygq_d;)Oʐf#e2^T 0VÚuװf}Q4rHZ6{w20؋S <Θ$lʢuĩc#>ʕ  h\pc}`hOm?eaMnp]1$!cIP6anR-L-rjH+ dL APfPFX *bfr `H&D%J*RJ9 )Q0]"%oip\Ijp [b:iHdf&96ɤLqɰST3Ύz͐J[0aD:'!Ϟޜ= "F 3<3<ɰ'ťE4G7փ3>Z//\ٮ{>5S =-)n+.cy NI0/^7aMGĘHtep9ޓ/z:y/H&`>v7Mmv0',\9;(w[ג?ķ_Pf||1ֿr}?cw}u$:zΛ:&?:ªE67o$_{0s}OCDwg#~{#esygySp`^V]~A"Ol?FYɴ`&&&0Ql\~o}k; qxif*2:[׮%㊫. k曯l.D{O+g&N)LP.hnZ֬♭ѩ2JzSvOoo|cdζTGZPeLPŬ]cRk6H4ePb92E i\iP&)D zA=`T僷"J|(ȉ>6˯4BlB#ᖭkYf9)ORl߾c'OqxK.QZ3y.dhbFGbƇ~;OԜoL:#_wX=Ws1V.Zg"n,{;>Xv+[ʞ}·I>dܰ2sXr /Oq^~M]gvM{`ꨏ)f U.s%EK>T^.yU/C W^fTAl, ø& 0RGQIXdZZYlfPd6rq4]J8Nw ?}-{?>lbj3 )Ry*BP Bh5<`j QT%6Mr)ZMBZ$tf3 t,c:m9u$#ƩTj| ]NE Vx {aI*kp"bԠLMS*8 NƄQxkPm m*rJB~HMVB5@d`<@R $F;J/#߻.<}ڻoî < рEHQkTZn1ayo)~"SEAXd gGk>\7pㅽR6ݭ>ـMnscnҬ5I";θo%GOG,^.vĉ8 IDAT/󍻟%>ɷ2-q7!w4\O7lv3>1n(7nb=_K_gwi|=mc(;qz3 vxBhg?8@kC&6OwRʤ5*!umdu4e~>xŘ gN&q[>'gqJer,wq2O=*\fN{mMJ4*x[/Fmr a@F@3Xb6jwPę;2y&O]ַ݆̄,/ٸVc[gΜ;K8cՈbcIj8Vɹ1q ҢV7AGx.,~-o`$~bx<*N5x$QIh4H:$K%ҚH*˕sL͜fgUxC'A5 kz'ҊlƧ>(B|ft7LL?R ,4D!AL& Mcn&zߡ\v-8%|҅ RdxlFe%F 7D>ǵ7mb$ݿdI`jE.렕t%XEyƚ>*2tC?T[ x,W}P!Lm7Bjujc#.IG)z]bG52PLHVMHmZHCKG`/1U2RXX"K"FVB)sgB4Z E1q#8"V;/NXAҬR p2H.˲@(-M!2h8+,DCW^H P2bTWGm9Mk)mNR dHRrIރ$H $&ײY!fȻi"FpY.qTĕYzu40ٜK+cq#UK86&^\ZdzUurAz6mh86F}El5kz%{uo )[~+lٰT1EaYw/~zGX82΃ LT QdpS-(xÐ^f Z+^ Bk *-:h4;e-X-hCѠTY`U,-Vr[=(,*iiHѕ/8Yn9ԗxKQLmQp겡;"$](-VPI&;(*7%h6g/PT6ytuC:ea,DH qdBбNDӠA>CJCˆ Y:5 F&+n`t}Ƕ%q ~ Xf˒,,k A8Qtv2EkR Q !H 4J%)':CC ѯ ["d1F`Ͻ*l)x:~C--%0J ȣԨ` z ~X ZU-Rttk) ٴ%2JVPo|p^_.ߘ{[`6[~OϾ3Jo >O\qY]_}̟ϼUuc{(?~۶-fyՓtdnWėyǭ{Y׿DD#M_oߛtftF-]͟f?ÿ/|WԹxm7x|#\sp1ű2[) 2U@=G\V%ӽt>G<_j(v c T0 mlgQTR,my6F!,tRQymZ!|7mW"Zk<7G k K|u C8w"7v+̔OUeNᮻALHe&`p|0R" ƶ9q,Ndvfk22HO{~ ؗS(8^CΞ9pW_ƛwrsHL)3Sw&;4P5ܴKC)Jgv9LLq{ߴVZ-\MIGh"'DZmEU% Ͳ&jqlb#¨(PBG v:K8 Z\J,\4jlDcZ:B8,f89JzD`EHoo/i]L, #"r Rol6-ۯ1H*6nJkh|%uZ+W8qqiaÈ22׍\]pYuxV%,ty;A:KtfKٜ 4MʲrƯ !͢ k91,g[-,EVCQ@+ZV7JZ :kqEMp<\`Pq-mߴ|zM"q3C0_3tb i1PҚ*`\Jd0QTEZ(D!4j)FX`m*vcOcYp~y橧b߮m\anB[0XhJ-3ԻŋGy3 PmrjcD{K9\a`(E8TeK1EI&9h 5>Xq2aF?-e-\W3f=,$@+CSB'3,[bۚAHŚ L;M6mڴiowQHM.s`tFm6!Ko)m|fpUwq>)@g9_燎5./|my_\4x<;x8M6mڴi_;~y47DmRTOy)}AqMʼny~ җZZ˜8{;ss kXA™dwbVQ2u{Ћ:,"}:27s~v6擟}5;[ɋy&wMґ贳ݣo=;ѻsF7J8rk;aZ6~s9:~e6L9JEb6c*wKsGxi/p߾a<Ζud7- yq|OO*_ǸvrZ. b6hZ&z((YgR]P(Z.ai4ZpsnzmHGͤNL-334a_=߱D'ӿj ~m;X pEaǐ^?u,?,f&'al<}0'wG b]oۻǾ6ǏOvKBIgZtd=0DA{x9G5s ƗY7M7t]ĮK6rk՛;MքJ\R$hE.:"b(f*ՈH:;7Eari0CR;R$HIrMq2!V>!LY#F4RB3jbI(E@U{)2Y-Kɉo(vwy#?\tNY2A<4fh*WNoBc,kZ ZQpp}ebR K'G` td=6RL 'p$zunBhlv1zLaVܾ+щ`˵a(Ѩ[ADj-"2ZJ7Iwt3{6%cP^g,kwo(Z;#R{RC"H?M!h[NQ ^0&Imfa~֭&8 ōlؠxi:+>8BGC"%RXy[EE)2BP[8!$9 T,GBdũkƃ^i'Dx\Uj\ M2=ř1=k9C&Miz !85>Pl+MlơC.o R,AnCKo&LIB, #2iu@G'4[ F)J&`fl|#A)A]Z nʠcP>eiL=r&¶vv` et1x`IIkDCd#YIqɾWϵ&gaY"hlb~V_+r&8uDȴ@ipdG j~1{d|& tv v,FDKgYDB@)`µ񄠡y<3_<Ђ(Ԫ\Ո~۴iӦM6+E(~f]ZGo}\>fM;v޽u%9vΠ =puf|*DXھfK'爀nӦM6mſdtX-sQj͐ݛh5YK')/ڂ ٲ!qQqs~S(;EWWӬGL?wē/&ߑc@r(-rȦ!:W1:1Mj|r]Q~!W㘸rBo/33נ\^n"=2L",ݝ4Z j>.V"Bi)0˾;)0§Y׵ƴ"e+7߲yKӤl˂ V a3Pg [=֮Vʋlݴ )\y-{#5Z;チҶ[<)Wgi5Cl޲ID R#1u Ygg1|=4gFy MmGqnyjE*c;[}lxC Ϝ:!&1zpFNqg9t`wvOs(u~m/6x [5y|SԬF&`pLO5`>'̟ YeSYl_{)Ckz3m3] ~|ڀý{œfEia2#ѝa)jn2V73E+x׻G( t4r̾&P .v*&&fJ(cU!J_iB#ZcϲT-0)""ɮt:& "V:" a CJ4cVJA&c`h;6]ú;u; kMaEX% Fh8$lUNbecGihRsfG քʀYՉ._ vT2ZKH,#.Ǭ_\Z܊3=XUϮa@Hq7>3K="~])I;l@a9B*-J!"M3xPe1OCt=(b[؎E6BGTZՏ.&R4pxn\peL$-T];+DBt"= ;ۤk"L'O2}Bggz[@8KSw=nb\_ۓ tAbd1xki!6X iO`Kp!l,HcPŴB"q! qA}miBH U,-UP{;h6-ԒdfU*bӰE&#H3) cU:BZAj16qE7,*E &abpʇDZW` cg Y @!q۞@ M,,DX@l!A(#[eM{"Lⴍ`Cu((X43dPiT&TiHۉi" !.W6 ǥ5 DJ̀ %IrA5H؆H䘟ԉs; JCwbo< 0*1\+ -v]c~s.s4Cq剀nnP \T[zO T=Kɚ"yx.f |&" 0q"{iUr8_q A#hIJ˲V-":;;)Jo{z鶔8s(t)je$s%֬k1E^*^`G#ZHOuĹ3ڳ[q1: E[Eаw&wn煃PJݽ aŤ;n '[ٰ1=sEΝ9O)-lͻFy.PjHl)20cr׳VT*>MEr$m7K&O4*t X!)eD Ec6(B TQ-_BX+$^5.qKĵklhj9!Ͷ-ѿj n:Jӕ>$91m|8DJ;9, R.wr_0:bѨ!!V wi\.đ{i'RlZ+H!PBkE7-6TVy].c9vFc\_94qKKc2EOJPk;+љ<@ӗELY4E<,Qv Xt <׏G-%Fd29V0 pUn(A׉\Ĩbt3V|0b|mkZ\Y$`LLr}(;WyxCiB 6K ͅAƵP8IJ#XC҉~i\T5dtN/KZ%yP#CI+69f+tl.,($.i7ϙe mahflj6plt|TiЪ[ن`b)rP*2"^ \<#pVI*HH ," B TҝUL4KB,T3BۉF[#,͘L&h^NIWi ~!"l:4k.2D0\p!5 6 -M(-0dԤ⪵uڵV V,iV-W,p_& qLА*D F,!~,Ec_c{1T8&h8DK AjݎL ?+_o DlӦM6mڴyÅɇW.x _dvvr˘tuk6ax[6qm>`u(ϕܣÇ?0(L?C\f=+ h6Kx,וdYn*r.;?׾|W["sa 9t2h-0`$]]] EJK X &82ﺓ5;We^$}aFG DZ~΍N;Av"wl|cN_qw]ch/ݫ,_ǺUl_}%Y1E&NH׮/晧C#CߗؙV`st%ٰ4]s;3yL{y#a/`?/qe<k>m4_8;G>p4aRN OBp a @$BVc JF ac\U+. Q!$l6dgB"n !0hzWB0đF0&Dtf斈C#W"9XX,7|h#tsI }ys -4[~f+ s5̺EW/K+Sf:N6oL+r^(oe/JTnU|/Kٹk7ߜ|'_~ e:eٗׯYl*@(8"!V I5Fjea :)@EL6"hd3خ&4+d&BV8"B2(mfIӏ=G9lqCCWa9spmui lB6r$?#pqhit"XFRو+֩1IO!([&b`}&:Z$[#(K\ #pKN^bu!_~3 5C[GΕ*>YYaLݥ1mIc[tKzl8B(򩩀8RX*Ē6#J`¼ h‘V82&Lt[tЌd828>Jc7-Ө! $Q#50Kh"2žby2Ҟv$M͆Jz/ =AX *) R,+5F)6YIt 97b1Y 5Hi8tr/w=U'lN i]k8#-r̪i6lj&e, A,)M'ШKCӬ MzE7@Ib_ Q`sjpjTĴm.ŵE!ӣz^Ej]IuԴ^2x=)j.jˊB_ #d ШA[Rۀ 1A5YnjA%6)ê7BK`;cHD`hK d KgʚFD4IbMMLd~PP2C`bS,6"U8o9fX: ##짾-:?]w^r*~NVFe2K2q~'yC21?Oww7Qv'0s,ihFH"mo;/=uu=~!|q,8L``U'~ygz6oO"hWoIuP,v0<0j(0Al ["jᇒ ӤIUzc{wĖE⏾~=ts?đhg *>K5l'o+B雜q.0tAoCR~=7Lt7 MxaanYEW?:٢9YP|@E-nVjAs=|:[ ;YoQ\h# ʵm#޲ftmr3WakoyǦg@ΧfyYy;?C;y.šrf}K;o“=OٸrD84t6aAI\l@z(VZv)DܓEV# Z#WJ֤i(Bi!4];s/ya7t@ HQvɲ%,x%9:NJw.2?| OGeNdMfP*Oi`VV RʕkSN8@Ģxfמ=r_>\ô"ROQHB? }D6k8Fka̹4r?K[W%|Cu] )iv #UdZ \.F%JkIŊ †HJ^d008.$AN IICNF?#dWRV ҺXMRm`Sh5%5N{[8N;.r,,,nEB[䕢ZIm_oޚύh/BU+ڶ׻wB[{XYVRGjM+r9z9l+9<޽UxaevH |XbݒI@ Eb V +!-7 -|GQgesc#lbTp\_uyE$1ILT$!@i *Kpti %" K1yzhn{ܼ:y@dž)f*Y_1>Thߠj2-Tב_W;XG;:tСCoHAEoo/0ٳiYiWkL-2WbB'WK֚ܺ s D6C5 f56n>˧>ynݘf=lWPa~f͍:RU*ԛ d{rm%25_"M5Apm:"DqzT+uCx/!WoRUCr >'W?w9oq+kDa -MK[M$fq~"5aҢVg?"}L^+S3''o| s3iL|{ǘ0?ā],i4`{^arSQ1lEq€þ{F9wǎ< *F 7́{.c=Xᅓ/'%`?\uS>60{q&^qs{bt S<;ymǓ?2aۣ6Gن5 mdKϡcs-J]D:;JT9y)G>+r!o`Pnr{/.{7WX*J ox*vн/W?˿ *@,QUquF"dMFeR16% haH8!kӶX(őTG8'JWȺn1a _guZ%NrI$)L?;t=T{_: u¶'HNiHֈQDrI${we6E&m 5u!MȿF[] R j!uV 8GlD[4ZaBMt˳s2e[Ȭf.-I+H96peۈdiP3!2SD@qJQdHE[1^1B4DM H,QeP"U iҨi"eJ̀_BN~sׯӪЁOd=EГ#q ,#8;'L|/xN!pt#;M,%,ͦ]YIQ -j;~Db mjwDĉ$Z-Hdb=>z2X'$ Zx aLwB!X(f; kIö]␶ aFK'@4$zuAJhhJA3/ْKljM,Cv>nR 5CkP^4jC @P-A,h%lr-}YE"* ?c H VI@>]MgPs\lw IDAT1 QʼX 4Z c_s`s!# bb1BZU6X y`"JЌ!!!!S$ٳo/w}TY߈hQdӽ}"[\$+Ws8\2s =x}tָy]/_dՋWd2ozYJ /^$m:qLIB+03GZ\xړh[QMȸ!1؟% V.\Z t4&4 uwރl3 vGd) [`Ih* =f3!⩧_s8~u$U*N18^c](' Osq^vp E:SWI@ 7q.cMラ'˯qJun Qd]mW qW#\E#$XrfVj(h<<)Zd-w$cB`,9iG{45|M ͵cRDe|t'pi[E ϓB'hpӈzs  @!rQR!EF(R f;OAƻcF  mvFւ URٞhB$SP\lDuQƐYf$)xdQFarca }ap݈JKA JDZ'ccz{Xk@I,ZJplTXtaKU119R*H#io]F'uX"ɫr%dbZOUn^ %S,ς,WdL JVx;)Z' hCGT[=Y3F2]!*H67-6EЩ@~]/Hߊzۜ{}GСC:c[%qU%Xh;o%;w[,k$>Nxs$~pmW ^xuPR|ȯك:tСCi$IB$\al6g6&+7W!gl:ǎ̗^]|oR/{5>RFx. pъVk8 Rfٱc sD)ZAd9amm~׻yz3 ߋMbtYA)+sxn(nGohm(X_".o9>lٟ4_"40 itA! jnYWЕ3_>IuK# :] Md5u\.̯Tݑ kg\3w7鶐S\oz?w{98~FTa3-A{3p9 _,xm{ L?GQر βkO|zIC\fv&ވ-9<-9i?ᅗ/2TC!8\O_y ~~_=˽d#\OxrO/ec߻ 'mW͑ŔCG0;;Ƭ`iv)K,m>oO_9wɎѷʩ9@ş')3?]" GyOWuĢ7Ҫw? aGsʴk \^'nҴLoWa!SHi6۽bFF&I#\GCd}-6 ʺ Z0 BgnFϗ<+ktwyƤg%$<k'8I>GNg٘TGx+xfZcsf z4$*[|w-RJ]yduxK08#hqŹ&cc;Co::2,{w=\p Z5* C F V3r>I=^RJ'I<*16X /H a Rx8A AʔZ"4iG\kk۠}Em~@8'1 sC te%Z3h%;H$kp$tcUk D\< : QS0 ?]/HR^2fcS,V`ەXbkbv>[աC:t?TPj?Qpqq(9R[^I$!Ibط0K+8E$f0 * }}}uykn aDBPnrקZe(y3-']lbq~Ϸ$-Hb#KUGZSN[C 2ɰVmF}^^C CYgxZ!ѺQ;?ԗݟqBA@Qgff,ܜYҸfJj;ƴzVna5oa|g"Gw5im%k39p.*rN1 ̑Ar+$krˆ:WgcON򏿀UY뎉,~G8$n`ZMX[i$UvXёԢ˼bk\xC]%ߝevJXi;=jCwbf"-yiއ_\7?<\:Ux[(I^}Coy0;scas,Gc7ŧ_zlGH},&_P,e0"AcGWI]5xOh/HSK(%܌S*8!n[ׯ8hcnЈBCBZ){AÏcƿ%p24v'rQ`9+)9^v^]5(w+YXǷ=WIbD5 Rl#-sHSNRcU1AbfvdbىV9??F >(WX\nch5- op@ i!.kcJ]RMqD"C 1*BifeI1x2gDQ b(8uB+(ݽ *UP$X)[Bz]fhz &# ɦDa3pr,=rl8 G \v.+=>.@(,=ՠ+N R)ci'% Z&8^[dv[sXYh5vZ߫_HFݾ*} d~g~_ߓC:t[EXߓ#Nz0ڗch;JVuYQ%y{g M W09['W>'t:tС7?ҹӜxnL]bn%F5 JGXZQ4]XX\YF:\+ 60de"zLWwf!T֧DBƄF{dc``:V ! ===`ahd%|M` yiJMǀ$IPb Y)7p$M,XRbmN!!Qq]L/=K>>F9w2ol>5Wp&WG=<ݼHMO<6Zq`SQ5(±LG(0OHҖȇ雧hnNWBË_faV]x5f:§)vGg9>jNv{7W zcrE^qoXqT&&tDU&_=EzA=g{&A^>3YvIp<ώΒZ'7Z˯|׹t|}tZ}ã ??H Oً‹1^r|S42)O9ȩ鿢"?fJ1'x /D*13_Sۯb^dx=,\-|珽5vus 6w>f~O,#1x\HOKHVhrG8 PDiB%1'%l5,o~(Wُ=ȕMhVَ.aeiE1q~ {=>=|~'B&ik!JPB'I#ꍐ8d &8Z'Z(fH1Ns$"R$47 uoTجlP+[ZJJ\de:Y 0]LJxo`i9@ZYI0F8J`;Ml$cV@kR%+َGsc,`0#K 5 -JGZ4 \rl#d}r+%NRٙ+)/]SC' b~AaEP^{M.EjZc,ZGiHB! *b&_L)QF9،RZ@A e!R-e ƒ=xpς)Ba4LG mX.459I%6DE--%.-)[D)x"a#zkWHDvn{"*l#Ri8~6 <,wVy K%IB|yDזWƘۉоjW_^aR!D@wСC-ݯ `i# D]GowD*\o;zxm;zܡC:tc!,QxOpyCo) Lb | \0&Htqkq9DXe}y._xj hhm IDAT%0DA@^1:NPJ<|MPkw莌222BZ#ˢC'&ZdzkҶW߃8%qM=maѩ 64À0LB9(e1 q'xy49qx? !ӭȺ%*K yi&G(WyWNv?x+7pN#]c}#,̮9.[ac{ƙ+ Rjkkl*|dž߷SsE 3ds&}4}{";x]GZk<󉧹v9ϱvЎ"{ԹgȇS/sW?̯Qyy)NN-Pgg>C_y8&ؿ}x˗bW:g&&Q6[(~!S&\pȽO_KH75X!ҊB<$QNӔL>G!!0F#$݃EGj8I͹ 1ÏG^Kf/S,] [5SK7ruHL:]3Wٿs)Z[Cˮ \F0yNܓww7zcp$ܸLSF CMa0s8^>-" RM%a&\+1b JPu@gXq+~ x%5@6dK2M,CeF+TV<X;m׭Ti µ l9-+mH14[S3+$BcE8^%ay’aqtACl,8@)r!J!1T*eehef]#XA9m܆- ]%U%A@ |!:N$Ȝb_)WPq|QDB;brxk#>cVMwE鄨- nIVTo{[o:\[Hf7ٳ"{yK-ۙ:aD 2>dcBg(e.q&78{w'蚘?ȧ]G冟cf~C'زϥ \b/~gN11Z/}Dѩa wx_a~\3#&7s{vS%n%}s4y3S4In|˵|/c,7aXkjs)+Gw}=ʏs[ش6^6p!'k/-|UZ.M|"MSb5XIl4J2>001"۝89Ǐ<4DZ*Y7xyզ1?R҉{9ʃN}&- .;`'fr7q~1 HGvxnu@@.* &U6DQ\xs̹ٞ20XBRD:1J9 Kr`Gadކi;\=!#xpH"i٥5f~jBA9WE+]vvV\&.iڠ  ".T[J@4vbqf볌@ 0H\R,0@Ky* XAj R@1. E]oNFwPEh'52KIt;xn)FTvH5K2"kMH5j<6eK@Ah$K`$gXnJh22]`o@"x@*ʰ!tqe93L傮 |ip J3:Vd+HMYEMႫ1& .Rj5t# V+߳xfN"ajCWY/Ciz~;6ՀIH1,(2RQlK $&X*p\I$-ڱt"XmpiW MoZ[VX!RTSm:`CׅUeB邵,f--k Kh5'n T@X}E"Aj"ɠ̠Bn )68@Xĩ%-id2CdA" š&ZP+9UWpxj{ Jؐ(vYW3n>xLcX2_f+>#QK/ρ w)8Bȷ767~7MOѣG=z|'= o/W'Lε(IJ_<(:CEP0?̽>'ѣG=3obm~i>~fsŕyiF.(L-p]$I@jmK_||j&8s}-h֛pKuD3::DH9}el߱(JI;6qгXkZ#ydߎ}4s͵SM}$u'=&Q@g* `օ1&W2=5{wlcaiDeJa脾p,xՕ`Hm21b2P\ץu]1tZfڄ2?5_wS8r2E7qySϡrF:YXj~81D*ųTx]QG' V꜌0\:Pܼ̓[9tq+?-D|݌Ƹ{޲ #A gNϱ4[;vGwp=˶m5.F+$a3۶]ob٥5Tgom/6n{ `tBr;q)쏹CIk[g?Tskwx!V/4p+ )?CO=x 3sǟ`~w<д,,LӨj mF}ӗ S\t\+T\Z0q#7o܅=JX%dZcR :.@j!VXc`IJPCE>CC3ݯٺaxuX-~kɸt"xЉ/=n,;OM!={]|o\^>z#}x lݷ?gɟ _GYreGi=0pA6S&o{Qn~W#=<_} lpl c|~,l~/l/|p}C}a?8<}~&fwlb5sq|?{M m"f#bufM67̴k+ J:4b7l:,[@y83g(.s/ܳG0qk߽[8si?)ffWyCؖ"l.f/n C̳u?;8@յ\A9%J"Dy x%IbAVOIILɊXaHW[dPq]lSjEMсBA}igA*BC!X73hV-XWTIX*+Ue⨋QȯR1wg-{" G+MNqq_(xi 0R1̴!2 ?H)M @ N;v+3Kjs@HZ|Gz Sx6&QNHWCPB.^4C6ĥ:=G;d//;GcȽoY`pqzs._|,8+4#MR\7<µRe g$]M3bHc&SPr,B.#YI|ѧr?3F t#DsCtb2E& "n\ ځX|֒ZK Dͅ+p]+02Uy\Mw):'iYR1>ZDˈAs)IV-ڀJc\7cem a^j*%GBz0aq`Kտ/\?=zѣG6FWg~k^.jo+[qyAz`iWz7?.{=zѣ <Ӝ>9Ml͓'ٿe 7s|/ptruhh t;:relvy/|j=0C\UJQLӦZY6xz5!Y9o?0==8aXXXB iь=\S0 IDAT%QNL^v~t $p]L^<Ć59p m?mqy'};:ύ7 Ẏ>|w M?`mbV6̱qȨ_elݹ7K|塿8 $YGqyǍ5vM#@7#t˴<,58\e$Gw{Msn)\m2p[YYb]gsz?n=s?zE.M]W`bS?+ aH7x];)WBN;_o>Gf6!\ɓOqguea!yh>1Kƒ#9ʦ,.:̟ލdQ嶤њTz^<Ӂt +J  "ll5*z,Dܸcf3\" l7l5Lՠ;Fhf`mgW4W@5 q+ۺ9>C%2<[Ɠ.[7eZ%ǨԪ.3z=5@1n4?3Sn+6df,O'X+QX:.J)VԜ\wPco8x ?u515G{m 1 6 C!(P*N[\EHTm:HB?ծc-SDB'N)Tֆ "]SZ֛o䎛nS/k%lu=U8fB5։"n3Uh9j(fb_4Ku[U.)!6WtڰVZ O *\#,:C~Ɩ-<\HZF7d)/4 | \Bg54;iji盷Ǽzq-UfH%6gt HWe 8I΀B^+y 𺛆ytGT< $3R:ĩ!) :̫;EbYѷI4,WfyDRZ3o; 8a:1ҵR`4(|#]@ڔy.4iA9y g,*I5(#?ω.R.72k f%{_9gW5CO>l)M,v[|-֘>>Ϯ 8"o|.Mӏ;I½mfv%l_{ZrEܦejjcě@̛|j.Q.02P{ W0r &)C/6hlܴCnm5,_j⫀ryl AGNムKϲjsK Ul4_+S:̯1XQ4`<4BŖ++mK%Vtcqpǵt# "~PXq>^s>!GRJRF\g,JLxŽ @ mRX6TB_(y1O֚0໖reR_[O6``lgSj1҄eWgXx!Fiu<xMgkC~],b!A\ؑ٥҉IS"cdG[C^5P vp#iYIJ),yNԥ.z)itɤA]kӭ'L_dea̴lފGMԺͮ|ID=?KgPp]ԗ~щU' [ٰ'nГI:EnC/oJd{Ls%N>x0ÄbY!ڱ~{ehtbkI-cxSnq5Ю8S@]r}:s~#elTO><͛L6vz_VV{x9҉[gf{q ~J™SNY 6+ƜJAY6lc!^?jػL2rlm:TC=xVg6wPxOyWC/Lܥ8nuTnFM v *pN1D qrqjH1F7ItRBڐΣd4V]8,/7|FX%We: s]_VT*cu%tg -9Sk#c<Y"tLۺ S =j_ ^ L3P!<;A@`q9?0\ JA.+H% Hc-(qG܎ߕDgyD@F:*+IOԒ5!@Z Af,JH|kK+DRs}tPRSD R BV2:\,tNnR.-s~j4 'h7g*VtVe0Dɗ}8n.,;&wpP,V墸HD:f"קa*Ϝ<͑/QN3ˁo`w,}hR0EtaS .o`gsm#x KG[鬖HZL7viEM,!)ҵF$Cۮ%!9 *BʙiG Tt3|c4wf]†\>$p[āKI*26gꆂ8*Bq1DMYtZ e B[E),b %,AIP %+dE%EEP(xNc<AT0t—S5]zp3*\@8}HLƊqwb9Mkv c}.}dZPI  ajC /7DRs$^ x2V^D@Q*4J 4HP y!8$ʕ ?m;6}Vfq',3ӌ1ApRB#$W*b#F1j4kbȶm8}FeYp0VFNW[2133T?3#cRI,s-83I&!Mc-1\8r1xRc&*:w\Wy}U_Yk[+.m:PJ _PBH( ! $B1lllqeYm{/3;}n??fw*,l5Zι|>y.XB4 <Y?&в,plBYlhiI X}uTWGɤ3!p@#u-dm-0imkfbi W}pj -lYXwRסFlI:K-;}K+Nl%Dy-I)p`q6kn恿{y. ݮ'pa+_Hje*梕kpy%ӻCG+XGvqE(E\Gd!vE@zpEU] IB kڴ8%(K{_ub,=1} G!ئ !m] Es >eߧ6>XvFF8dfR412cy/gRdllI@P]&c RKa 6&#EzG|F<MI LLȘR@gTt4MBch0##d܉BMH:#cSY-1ȣiG%%&Zii'54]BACBllvL*%X'ʑJ /Q5#)qů~17YhCX $tMu ,!\a 23 AXWUJ@*tg%4рBT = ]M .PT,H S}p|&hӖBl􀋐],ECq<Hdt46\׊h!UѨ"W6FTJPID($XF<f~} 6 7V T#א;UdɬXq!z>`K*Q"/d|OC!( ,%|_ &I=v\B!b;֒_)ގ؀KxH@)hUUp]A, 9b$<"VlgX '1=OgD9aiE9\x<.;qNQ"` ,*$y#%|qqq/Z<_*Mp81:_dٿk' ,+NA8. T<<<jg-[KҴ8)H$hB!rl`:6azR XEQbY`v: ]B$L!ak:EHfI"M: ox5)`#r\uIXr PM-ZD @n&?-[xǕF'RDQV\]F83} yk:p$Aw^ _R\H,#+ Xx9epa(ifGI8t߸-eY5,h?1s`i[S^ONcb)w=T\]ۚ,-Cβ(5-t S<Ὗ*̢q:~q)&-i' IDATy_Qö|:Qf:666(7|-#ݼl ;P9օV0|c$"قWiI{e7׵bGi&{*qk/?#)|"$kH+1E&YZCQJIsQBD'~ Wuҗ,gr.eCRU0GY4_iɌ v ~ UEwQ&e5QL0QLcE(qX$(ujdU _h r嘿L'3C9vkr0]7T2_ARJv`L%-#٩^IPI(ZDX8!WDUwBhjߓU!CRT57o 5z@FEQHZ11y/`!!zza"aåͤAvm澇/S%\GQTdYT:e4GXV3LJBX*E&$#<hLlVA)as49]"!$12:2尃}<T1M;5%*GqDD@Bւj'qT #\$'A4J 0 5ig-h@ j) BaDCN"P5Yn f@_F&-RRj>む;w#)3Kr94,>'xL>o:Ssqssoլ϶\=1sy;^U|9^G-nݧs93=36ze'W/$ṍ9skn᢫]峧~V?^tvvre7g7/ĸ=M.<}wNϘڧߺP}GTUUDĎKHOfxbhdfpDEYƆa`6Lf5iTĂ}dq45DERu$7NeLDQd&g(B MW.9zx`0ֶZy yD"!kZ84MْG+q,B%5N!af&H K[qAfIR!+n}|a7BPHx3n=HRLɉ,c) #(B<9S4eB—Q_*q5@,!"GX%,v)z0}ԯ\W~^?CW$?^7-ୗeHgɍfh/4pXl97_z6] 7I-mcOu ^[uͮ;(SCp|_Dh _ MPlS;Y4s=4hcU=VKec+ٴr[$&ɌYz&S5$)h,~0 ~uqG^r,aEcr+l}|1֓%횘F̨$P)L1;8F9?z6EG4ͣXh\cy;6$,&Gtj;3N/!lS){Vn>\\1K '-( 1CG+1u )OPSFS&Q ]eb~S=c4LR"8 ZxBE+ָBF pp@+酪eɴ)yihE31$M IuTԨ M5K*TM5>kʬ_~yuq!):2',&T]//@P\ B$b8:c\+_BĴw SYUUE6aM'RP b5UUU֒H$0!EB$TLcEXOHU@H;4͸I*"Kr~;MZ MU,-T^01 =]f&78Tk!$>vP* bKLu]JMǏ)mZDžWJU@l"n$ 90 = 6S=, KI'\3z"ȒQq<Wh.`6IgY !渎>{`֣CJ Zτ{yH@/rc<'yBcL,'?ko}3,9LʩAY>߳9N2Qrr>s1d̿gNν>B.U[+9L]qV\ڊ ٗѡX>7Sޱ!{ t2]Ot#w’ S)Mo{=Os97﹔넴'[kp7U,H>γsŸ䑯}# s @w4Nj?<|Zn~'yς.~/w~m,/ĸC﹝>s4GBOO`@ m@& #[2\Lv8Q𠥝xt h4JXbm<&O>qteVT cS) @ut  qcͮt]Ƕm0U]ǺQT@ 0=hO:[FFGRfOOq_5p-a޵O1k a{4Q4 7tk垉Лo[FNt:<VX^n{Pz1ߧV'ra(^# q>vr>7w~9@K<f \z- 0>txdBJPw,V%*:r׾'dc|{J>咋(4Wwj F,b(q!Dp;_}O["ƎxKȖ&r5q2dphA5'x~ʙIS׬*b&GKX5A9/a)F5i:h..HplYEA afqJ_rQK2XH$AQmtY%'M{@|0TTqY8NE u]#{2'TYULGC",[dx(Ql,1ꛛ2Cc @ĐI-,5fEFUHRɗU~(47dI KY2z(F04!ltUO$8B!S̻8v7|@X(PѴ("0C}\ɑ#xfEK c|}$.`ad8H$ԋ8qA2by0=xָF <|iR :\{˙mRDe PN򨮯AL sHƴپ lpeJ^Zo HT4d\EE>#.b+&Ӛ/ $CQTFW-!D[QČt PdW1Q5E Gl4EFE0% t5/G+ܐAE=ck/.-ϾγyNgnڙ3B 7W(<\.>Sn~^Ѹ"S>28#lV`ŭ|7~Ф +y^k߽yY8r>1߶~/d EWx~<>-|LI?u]2=1WSwW7NN+WJM?GocO9ε ﳝ>CsMhjgxhP( IeQof211u R*0MTjCX})RO=o6̡>qu5/|$c*ؼVz{{ex#G9n;imLV*jV=BBҌ97RYwrl|5K[3eW`"Ο>4% =J(U=<ʋ}v3?d*Æ`<Ʊ,-mKkH٥Xjc YB$7~t5%"=?% &XޕcjKs2jlt,X&CORgwt⒥\xcv!zUYXΒ8[v?FaSǕl9,2y{ؽ{{{8?Nfuc#OSgK ^cD [&@ &V&(t}SFh<ҋ,q/9?Ϛ5ԫD[EmU%k\aA@} fb-pDd0WT2oS$ N}VW6u&&'N$%ʡ2cNP. e?z,n_ʄE0 h"]F VH$ 0I&) ҟ*Q[U$#$P(6clɗʻOw;F(T|ɦ+VvJ=PFd EEQ ql\EDRTYP ) p-ůL$h$GHGy%|}P7RJѵ(AȘHKضLm!S[m#vlZdY ٓ(8UT"+UAQ*S$&bQ$ ITI2kT2vʚE,\Jo\>MYvTKR@RXΆqrP-`:SVeRTG a-cueGsjuЄO4EtB:-;U A,ieÍh^+UخTznu5,O6 ( %z[Q|O. BSqUSI*UY d̓\PE4 (8P$*V.FF>\'LH$Q9L q)}<m\ g"ï߿K?0GWW"eIA';FyNь%o|W}W]M^T34=z qg*c?Soz k;;.xmq|<{sl}bCbc9:edR$"6i|JrHГ9*VbqmVUQFF'<He"3,epfTv.8l v xK:BBxqlF2)*_|L.C&ourKaѺ,ݰE 76a1CG7bHX,NKK3ZARLM0)"AbaO!zbUzek<Ѝl"" bh4%"'5=T4M.<q^K8p8hx IԘD#(IaQN]X#XPnt?r弞+v½Bv7LUܺ̍6s e]}5LNğϟ1NV6mL2>r>P:#|Y(q_M,ց|}+?w'>{wxd&w{~8MOn|OqKʊOC_G(/ܫޏ?G>;?Rƭyow}QTo[O[m<%Gn{|+?_<Pi;<<$3/c?hWY?{>2,\ Lua9,4) gϵlsp1K^O~W#=x.-o_~>/w~Tlj#t}~-]/|gh{ٌg;VnQΗ9h|_&{ 7u.z>=64wig󞷝syyBbx@NSʋ,Isrϕikkql4MvQTB4\2)T*8qL gɼ≿b5i=߻|a OKv}uϣײSy6b;9$Zy{SVhV/] s_!r؍T֝F*/yvRw_8(Y ӓ'6[v|{ ̘>E> 'c=SWpg+',5QjZ:hb6ϙ97ʉ,>s)[sxYUrf-%OnOM攏/EYH(mXKrꕟ๿[ 4N;Mybn<%mAnh+eK TLI+) 3+ԮP")ڣ!رin'}t*1IK鞯fG+7Rn$&T QdemZ~+ٴ@,*S/T225ELgcvF(]Ugrcȥhm߆ejXjfzQ*P(P\zE4M"QAQ$u$N">M *@DTMD׋j0ӈyI#^7WHʴu(qHAFU@5wE]՗2yB&_T5OE'6[\,Jbj DIDMI +9c9s<]$T*n(](ILR>z9EP%Ѵ (J+yѦ-О]]6-Ծ^D Mw$DLpe'p'ԫ@`xF9_Ɗs˜p*}J{VW6 Bބn{C`X{u*ζӟ K hUt{c. h." #AatlI!ȓM'!NP  =AUQ4Ocbb-A{$>iK0qV3f̦q!g䤹`rb8eLnQLH@ et-"EQBDrEBMPÓ:,C$RymptZA2lc)]8>r/_;x M{ykTrwTgAW73>nD8SCz!aq~vSul/$}|#p㯇id <8HFCs|pcQWwJmlBYt*jgX LgŬd_w-[92]|w#=c;_mKз?<<{xzG=<·$8,eB]u9c_w}ҜPYy|yY|r&Z"' * (*,\CKo0gmdW ?cy9ⴉB.xT ۛv*|xne/o:&{│e/#,hh4{|9.ʭN縌ck+xcgt+WS. _<ɟ֖ys9mdf[>5~}VƪFȢ(khDnL}=k9|6quO=8y9#YKYx@pْ?.hUইFc~P(!ƻE \oB}<sS>(|p67}J͚˾*=q#g9ܽr23Dw`ֽ23ϫg6ȷv7zń?ET=]McU[o׭A"̲Od{VLD/jmL^Q wpHFCt8L,xֹOՕi>:^~r#?xmǩ {M*i͓S.OәO [ %$P:^/G'Q3cogJu7IĦ E i*е;_ɔ)y.aG>ݠ6@ lz^l) ,pN, ijY -'=N˛P3k:6L  Wrr޵ VϮOq/вޭd,rDȒk#ctg0eic 䩊ԋBѣnEEôL$1 Z8iw@Imӗ@]Dl4=i2)B&ȧ |BD,;aRyMEaPD&Ǩ&Hu!YHijMJ_ayDc4L9P5"`Epl ]н dr+!6̒7KX5rn.G3Kg/ ZXq-$I<Ǿ-{_aJV8ƙL9aĕM U+qХhX(AE|fPTu@#`M湦.jynǫ岤[dv륽>4FC@N-(dYprM_tصve-y 08 ^< ĜxEixp\cHRIırxkIdxր<{,;Y3.p$G9z>b>9̜)Eߏ&Ǎ&,q1oxu3F54gcչvz8?o}Fs20лx:6u>>t; aP+_ACzn)}1RhJ摌Жe p^РR|߮aozϿR` 6o=Lz`nJՔc }ǿ32k3B;6~2?Ӈ?/GsV,t#ٕ ȳXK☀$a *u˯Wres/=}!>iY3lVϢVI:,΋=Guz<><9EFܑբ}nk.=4.kDt8?y~d9slҰeHZ[{㏕8<{v̍zQVlܨ|wۇ_}Ρ[uv+W(}cc[w!o0fRܹ_os^y`Uch2cwsSס#O_v#,șC_*Ũ`+w5y)< +8 1)S7o?&=7>>cdS9ʱcQ8WơS܌]{)SC%+Ѷ |?e(2y#?1ǼUz#1Ü#юơ78:]h0p?AR=R1 Y's\Aank:[d@kp;p?8ɑv L?nZs#Ts2+*ó6hNPu _*A Z|>3^ɉ/Qz'9:M|ƋY{9ʟ$Og~?AD>E`)W02Q7|`}9B= jzM|S_b݂xs y2:cWY4:8VAPywwu腑[( ?!J?9=8$<Úl޶lQF0g /^p#lsKo^Lt 7'pM2Gk瞀\{#ϻac~0C' O>GcgcRQ<G8ڹ{d÷gAU6fa'c?)0ANMM??8c 揙>正}|ǧ;*lzՎ2_}Gf|:IPr[2*sKxP%Fy?&"B{3`Giy/f%'U Em`=yTΜ޻`=SLaʔ)d= x N:}vV *毠1~&!wyG|G۩Xz;?=yŮHfN=RZ5R #9ƦO~ ߸+|cWqY'gap{~'˷]ȤrZrAk@Eoo leݯ-K]:֢7j\3%{w^;s5.GZ6X)b_kX:Gcy炪-?Oo%T+C},%GW8>4k 7/зb'`:9+K/aaD`,]y|?>>?᷏ w\Q\U 1ҼˣK[Cv_pA[} AzstL=pzK@|՜[o%/ɺG8y=؞cce1=y9sd0f\ DObrv6>unygN2.ldWQyz\1oވBlm F5TpԺx9Ggu{ow1Or)okk+/& !$!"$K~-YK?+}^p!{zl.qg\^zٳg9EciscFD]d^;cс ">~7\si<:Ƌxp:˫OiqGwdU+z§|;?q_ռ;R\V_M>(T 2y2/;nG|jY|MXʆ](}!R/k>}d5'´ǧ8/߲Yi*Mc/R<87q32 Bd 7mC̽S Y4 ߹nOnLu"kydd6ޫG]-:U3mV'B v7pooNƳ>Ν\H(sv*!^ca c8{{mny!SV 5cx[TYgݥfU['v,1ͳ[ 896VFӣlH g\ |||^_x݁,LjF#錺׌(!O~6ܛ܉2\ߏ"C2+HW}[H7ҹ͌\oTc1s8opԣҳ:rݳ-˽\}4mTJwĶmE 6pgdEɲ\66i>CD^z.v.y'7o1c N9@\Y ]=c!̓>>oiy%NKZn ~亱yp^ٝ1N^:cw_/~|]t3ު0^\?oy >>>NjMą |29^ߋ.c]Cl}-dgA7zնmLDDDQ@%,\$H<_.7<`cl +y2ql<dumgH@@b0z=| fn_C6r]V}||(ZWϧUcl{>q2sz>>>>>GKi۶q]ӴE^\EWGJK>?TeYPσMu]dYcg<z$|&;~)Y'3S}WqZ/9ndwǟM9I1MP k9CVi( H\~ KeRU#C>_@QDQ@U5l=¶An8ӧO'L%:;;Q#@P2U麦YheEAQLB Tv@͛ir9 e>idMl& aa$ qQU%Sp J*Pl0mUd2!\*`j( "=y "( xxhبZ=1g$ Ywۚ!iDBIL 2@UU4 Yͦ$ EKJco8CAO`ֽL')ذT*$Ib BL%PD<%SSUO6%':d,`0Huh*{51MA:&$q=RYYAH*vX|x(B]u.^ŭ 8,cYLx<^yU7'?bYz@BR ,YEԹl~q ?jhUzx B bz94֮gybT_q}|||||^ga0%eBqs|>τ aK^{ o-mEY6ZvQnnn){;=1SO9~y1nB9﹕cW:>>>>oV,& f,dB2ZØzHD@RuEo` HPVpdGB<4M@4 PM_?&SQQ moNz''j`hfDh ET1 DqP)PXq]8ذ eLĶl(ndY@)epn>KP #GK4 0HQ(P# '5&$EQ"Y n-!tݜ&(LO#+ i GC N?$hA = *+28" ZZvS__S(L̤P0uaTD$:;(Z?, NܺNN]U0!GG#.zȑVЗI5@}"B~'ĉULt&x \ϡ+;nR D;H#<"LP Pcg[чH,3kH=477H$bid2 8~**+õniS-!$khBQ'Pp>of|]ϛzzxܻfxLJ{`pn-xKFޒpcp0,/խ6AQ|_75 H ˲r!im\0 L@(BRԠ( lXEliY IaK#.`}"p|ֶQ|>_ % 4<-=vKќDI,<4M( I2Coo/X4tOoLP(-.ʔmZ4"by HIcf{0 OTȝ:cwF]EdA2Du۶]jm9Ud2xG.W*IT*ò,H'_?J"]=$mM^ZD8;zX0g?0xzab1DQIJ, xh4JOwwq<tww:|g_-g6m]?jdarXv'YQB-T%NLAt8%A1r)X ]Kamy+" 1JmCUۃKFᡠKYV<8PP ,MFmm`T*Eg/D $ZZx *9\eA%drc-GuEq=ںʲV$(dGu,  fi  aYV9OIvu:Br6Ȯ[ͦQ\O h+m #M. Ū0fdEQ(TU-{D""G!'@:&AV Tf'U,o&TFh׃tv.mY<}W3j.oy67SYG,IJ,*++wjL$ZH]0ٹ4!otޏ U{yn(_&TQ=UM䱿P3x@$ۼEq0 ND"8NbcՕhˆWAUUz9t]'iz9z֐9̝͘ҀZ *n!)mYZESٱY&z'H7% ąv?^ȂP=!=+V.a1\y48sh\^vtݒp[T2˲\^=yPեTߒ۷Yi:`@!Ǵ ҥ˹T'iKDBQE!%R,58C_A $$$IX,aրWLdvh9[W.pXX^,xnQfU`FB, ]ױ4N4M#`AJ!Е,`&!KErx DT ` l!' L7ojI8aŲ-aJ$)2Bp(J$,C)f躎(X.$Up0^o GTql,`bPD5==L gxϾSϝI=xnN+bd2# K9\ bA HTe-dp[28[{6 CAK,9}||||||||||ޜ췩ѐZ"u A<gWEWW\^Ba۶bض((QĞ](B $4%G6" yg$/:b0elܴ,@ @(F <+E&p@a 4)!h8l UQz2)Š R4 -DB!ǡP04z($jk#Nٷo_1*ߏp*ɤکLݢ<Qpm"Zv-]0A岁T/xb)DtEgOO]K:8u8 +VD,v[ri۶-j&hiCNNQUl.ɫX ]ITTT &X\mx4^5 &8|h@AQb^b[(5P85kv"#x:>;XzjyL , EQb6z{{I$dePU*fb۶mTTTioo'rYKчѷg̚M场+V, "&u&JQ788k9s#tpY&L"FX8&pq·2 (L"[[OhI΂TUWC iVA,Idᢥe:#rbL@\@̛`XyP#At"޳hU-:ni]* |$'.X{g^*bS_Bf|ӟDK^YHn]f 7mBW^y%f͢P(`B41  !aC|eYeYLb.y( G||||||||||||ޤvN$p4B.ʕW} }r+!ťh(3sʤrxf0 EH:rm y "X@RVϰ +&,#"!E@FE[$ٟ#b4(APU, UU;yG$łw]4}x?a&vڅHĆSO}? ۶ WLbeEA4zиIEE$is&R?%e+m ų à`HֿRUUUUU:BPOJ0{"&-_Aؓd+H9MeLCtHgzQ4;wr)Kh/D,x#ScUxWP]F(ՕsKb12fƅ'38Co['Nu?=zIoɹ$l'jw3yWL6[>>>>>>>>>>>>Ǒ! {k$۶=$\MQyWǝ{s9emɨ[/w}K6۶]6 -l-ϛ1oA%rۚR*ӉFŰ0]]]XnO9ie@ P6y,  ʞ ؈((XE,I0bRJ9t94(+"egIFHT R)BP(( "2afHIH<ή}4\R>D"QNe [Vِ.-F4o~`0H4JĨ$: 9 \0qhhh@ed cvXHC|۶ͤIzr9t?3; CsG"rn]י'vZL$ɔX[[K(rf9\xEEj(}.Ccg2dJ$4fFh܆$ȊŒ3Xj/}WU<p]P(eY$rq(;;;={@*˲ذaBޝIzw?wg_CR@Hac3` ̲vvx3]ac^6ÌopJԒ#>2džA~z2?~}߹i!"B,ˢT*KQ6m^w?W   <އeYJakk{z CRE/VɲPXXX snF666.:JA/ HGw>$#D+hAAAzU?3?{ i4 5,sJ?뤺p]،QԐZn}O [RP20Ä0LЍ2:Ci(B0PU6F㐆!fvʹ6L$+Gq*iYXaLŘ`hB*dieYȲL)ȲILLI;䙊'9eYEE22jmvEQ!,sO>mUnSZf pÔy}rD)7+ˬ"x=^ql+q /?9?\T7w:LNf&ӔFtޣ$nﰱ1 s ?;8q ^&VWW,J=4U:&!XE h4X[[2(Bp;9`j|v뺼;=_' #X;m39#$C*gz!Zg͠U94r2g,P% u㘉#~)!k9s8P˫kO̓mQY|}Ej9L_{3{_Dqƙ+9mEÏ>̡QC I#PՀM]Ih} ?P{[۫̎r~0))7v3.BKn˸ S >0C 6'ٷoZ.O`̐$ vBg֛؆b5^9i% ˲m<t.劆S.u˲LHZNM$K ,X\XZ #3#[5Zm&p nD5-&W( q19'BrAD?j_,Wq3ǎ=J'xqNV!ꮓ9c{%Vx՛DcY#AAA. zIN-Fa\\$ _=|;)Jy{O?Me hf^)y`zw; }w.eqtXAAK_f8<`@բ錾w ,MFA]ߧ׆ (J̈́$m{T,2s3W( Z~}IFi]Ų,tMcYZm8ÎLY!Ihs!JӴQ[<,˨T*hte9r۶1M"L4M[;9<9X &:}A} ԩSQ\V(b=OYe6ԫz%oz=)&%oqi:hmۤiJ^'NR*1MGBDQmGZGw{0 6juTl69r{eeYY\\D4UT*QոQԝR5G5| x0~qwf)=sTUQ8?|=3<r;b~rף|y~ŐXQ Qnu˲d^cS4ffF7]!1PvQ58Ix)  Ͼ۱Ҍn6iK; $I8uIUUGw̥}~ ϱŗ&  |#Y'ٙZ0ȒrɢI}+f;m,ˤ\ĘNjlntH4ɲjJ8e9[]=.e|~4 p6{kE0$xJ܄8n࡛:i ~]q\Sg1Y')StXA$0IZ9m5WEVb SBUK/Kcҗ4k=ɴ p57:f4ٷ<è0rA}{^&&&P8r9,,SeV{T;G>ֲceLdy7\ϙgwQp!ibzBT0LAba _D2eDŲe1>J}cya7 m?߳/E,  SgaHi6MȐbY񣐎i*G-*5խ2j~ih(JFeY7I אPUZm0UmH:([],IY=}t]츘ykyg>GX$oq6   .Z g_IYrbm,O| %I7=w]]t*zw.[BsYs-I<#+VV  %sJLbSﺣuMA@x蹴`0mҕeM3;ùsHӔ`a;6Q I rQ؎$IlmmјP q`1P.Y]]eaag255`gF(qS*j5eEƲ, `||vg1etb0P1LSSSTLZR. M;8*XF ]w&']dllY> $a$ |Cl2??X={]gyyR ?b\Q7d4b/k_b^i8sѬcAAA~0)VhZY165mnlcj Y2, ЈhTejU4M#8cL tb*!2aQx[%eLE!35cQiۣƆa |\"crY-ZW2iiKSX]]ebb(pqaS/h`01OET'>Bky)x)AeUcJ%8%qn&q5!ט:(ym'G>()a*^QiLW3fs ,xRD Ol'UGeKS4<'S[ oLu=B2GuS?UsCYXdq<Ґ31sr:c3YQ}fFdD$QQ'sm1TI m8ȳǩѼv"l)>Q, GS 7skh=q/( ^A-Jv~,&0>>NMo~o\Q,(D&}44 IDAT RAIw13}߅O wGV{OAAK$IBElmmQTFSk{hYGn ݻw4wc^\3.?<SJ%EyOGAA@u0O:ԪBFt˲(I|Ti(8U 7s/b4>ZF?12Ӵ<.!9 Qan*UQLO)(JQ1WT*jRdxXaQ=1Uk8(@$ȣT.IiL4 N诱,+?V6fj lnT8zm|+'>_-?v'~$^o<84DloZZ07W+3cRjf$rE4T?-sMtB^7ُINXZZB1d*KL}}si6aBI* %I?3g%s Ⱥ)A@jH9q@^l4 LdNLQKiıQUJ8qiTY,p&1 iD }q EG3ǟ(%0 ˴J0 (Ə:1ⅽLM70 HcT6(s G3 4E5(%cZM4[N9BY%JF|!|%HRU"8_U1 -yiI $ G3ȺmַVx=4"ˋsVBnӔg0AC".6{-aЍ }?Ȃ   [Tò缋Ep<\_:ww8J]~excdYvs ]h}Ի~Ax_oubAAN9jQ=9J-$IlÐ,0͢moegfkAyQ4]Gg}}sG1o_UeKDQtZ6JTVQU]׋>Z$I +>EQuh,Yk) t~,vPkʹhCpt(]ʲ ӲKx|"q4M^򺷰ILTjL9@h,-/!K2m>cF'O~(IdT<===z 8phbb9sd^LW_Cxt: 8|7ź70vz;C4 E.˲L[n͢C4E)96APTBimۣp~m[Xq<ٰ?~0(2-,T5ҀxzW*xtg>oqQM~)jh$ɨڱ>Kuxk 4 6ϲuqѶm̸͑kg(+DAT   71\#wT%<|ye^$yr0d]Jog;8' Grwz~Qv  å6'0z(ik0R"̋vchBaw(~Q9zQd#+2&Saa0D#TK¹eV3m{4k\#Ѧ]?%~cR MdRUƒU8<6Eoc>ݎ܀,ˈi\ץ%RBwkj]Tֱl^ Gs5k!4M8zS‹.ce3Ǹyk_ #4{&U> 1'Q dS)VceeǏ(A͠bT,UUYYYᅷ\U\K_@2ݟc_d}nw[a;^}Хm/=KҬ;ܽ]4W84MGAAAb[fg狴hJDh:HZN4mwS 2N`@)XFsN}8j")h,4%bWŐPd48s0GU,;eY$I@BȒD3C$iԕ-R,&'HRXJHyHcDǔlAm&8%9 >mEv1LIꡏU^E7dD%Ij{9ΞGD3n8t},'8C+ wIӔ*QArG[ts/|[X~6{Ll0gڛ86VKֽ+gA:-.hn!!r )F$fqеTAI@щb#y9#GEnRT0:ף(qp~zJ׏ʷWӄ FKHV' tqJZIqiQF P/s=w+  aפ皊Ek~/*|wt7{wqWmWzsQl||RAA^mˬ7 +O=Wv( ɢ4ɳ$M)NIӴOZ39sX:j.{jU.pݟaϞ=7#|o;8Sx&.:n  =Ur=whǁA׿SJ3ۏ!9j.1.mv p*IGeTI"L," "**#Pt,vE=+j*r4Mi4,--$&~H5UbXqI&ee3_ *!vIF4R?ckEɩ#IK9Z D!vCJ `ajN'h44js4J<u7ؤT+WB?kiHqJ 2r,Se)*N!dXc{:TJ+t!8~ Ђ   P' y3>>VnK+·]k4M4mt۰k"[R2 t8ƔU0&S7r^G$z%Z` :`;!QoINX^^FeL4D  FMs$#"4ĪH 7^섳E*qDac;QK*Xb8Iepx"Sc؆O ir~ZFs<> Ϝ|3K+d\wA>cO˘9 g(@%%n,?$I4[]jٹk:p-k/IEp|m7aK(Lr$so(>qg?&疚;S3ag@dqqjLBe$IUI<,^!2{S|3( ?}dy׽S1%<9Dtܵ'v7   ?xo/?i~ EA7$L9CVcR15 "RCEUUq9^7a6U]b|:A7BUL냳;MDk EH`)&,`rqY҈H}6mn}{ $o*n|{?+ş^rP'!H7y>߂   -* cqG<.Jw[|ϗW _|E\AAA|V!%IRTᢂiJy.i\($/pí7_y睜Y;OaTz:wj54}* UM2TU% /TxfY`0 MST677)ij-LdΨQZLh6ajp(pX!I¶j!6 $ΜiҐ ^>`raab&eֱw1z|vq*g^/ -G^|AAAxRbVk\~kY$IB}TUŶj,y#E}{8zӍy,KWxzcTT|#t1rL5 t?Plz;+ <xi$D8i$JHY.366Xj6⵻_.DQ%SJI!IR C $I""W*$Ii1e-]Q$+Իr5/>EZɖ[w/~Qlr7-Bcjc Y9IBH,y+Mf9yb˶0= 葩2"!%EmeHF"cװXr8q?/䶣$IQ ;lUd[-AnK)Kdyyk. R\ףbiDɀͶG#(Eu,i 1M6(yĉt^>Q3VX$"Cd#4Bwt,tIiZ+BO?}sjv40ʑlM?~g~讞16Ek~,'3KAAZ|ٙ, ,HӔ,˰, ]Y__^4M ~y sXAA!M&vÔEcR4MUrt4*EA@ue8dՇC_Fu^yq.>e!ivFǨ 榛nb9> [ ('HVQYx \s }lE2$ЪlN3Ma6n(Mr~LTl8Ĵמb\]vȬ T]2 ܜ^ 1:9K,*NDSj26vN:Yb~,MLOFMf&q]$MV,^W,%\:ZCs,9H?r_ R$AUU$!"#&G37L^( Zjb 2mm{qFJHZ vͷi$ Ô,[䥷r?xi?mΟ}vd2v8fI@JYU._fq~ckk!YYY{2UiL&Ly$J-R)5kM%ݽ.7򈳭&IΣ>ZGxqKa^zF#vT!-@9֬,q=,ݱB <>[@ 5ss+<[9w;mQ /]`7k>E#J0 0 0>랗UJ$)i=\m_~pm/fwaaa<'x(A)~m_x3ӏ +sd4>7V1Q¶- ~W>v,a!' QD#Μb2NB8={k׮jh.%?Iǟu]lA4-w{<#e!໿YY<Ϸx?_feeAeGX\~Z)י'6ov鍇dDOFAdt<$t29ͥXd4ȋ8hJ,"/<9Aci}Y<9*bR xS)WbYc٤-&/Rf2^4ɩ7y&NX>CR],E\,tN,AX8IhN}pHeYDQҝ*{xekv{(ILS,xd\iwQNFx.pؾN-&锽=:gz#/^anio,,,1EQ`9tB&E1Wh/gcmo4ǫ:}?Xm= GW^_䙳KضMBre~U]Zc6J1y۽}`x2d}t4>dypvG=:F>vn>C D)>PktSĐ\s9.?5eYh4 qsoT`Fm\ǒ!jyŘhgArn&j6x~QwWSt-Ӓ}~byJaaa*l4nz;'> (>ؿ0 yvewh0 0 0רno _䏓QQsk[7UՎضmH)RGB%KAul8NcZ" )LSGy.%Nc2K"-9z5>OuEc`5I8@$rs/>}^,㭫8FiGfe"{#:5_%sЋh4}L!ZqR%(#T˖XJ)ءƍ=|ߥZGؚCeLȋBt˲I7?svqm.w]d h#t4?Oe'qʙ׿+57 0 0 kgj|WA4bYEQp=piZXfY5XkY?BڹyAy%o^)6 0 0 x-ʳKZt]BFEQ`K{p>lYVv$( 6S*˒g{,V6~ßb) m&NcI.RHBRvТ,п5i>ɄӧO͞Q!_x 9{7;͏_abORNhX+|C 0 0 0^f-oW /{viS-]ם:Z-˚ wd6}ǫ[0)aaaMISu,`8.ů$Y^˲fyUYhee,pRfFY  ⼤nc9k/y^ժW{?)QbםK_X%~` ްxB 3_sWFg8mS{?}ǑNvp: 6w9W?G~h s3mKiˌ)R(5ABV 2I('XVгPbBV良? ӨL5*ēMhEFemJiQx /&1#:y)hlO5,,&MS$!MS:ܼyť6NU_l駞biF)ZG4Yv gm s\clM|{"sd6e.HE²m4( v @Lc,W>k(Aԡ7ѻI\ spR |$ j^%ҫҖhB(?u9ybO?PU Y쥫ض͵O}<) ?%gŋ~0^[tfaaa !nճ_~}??}jNukFkat~yV;߹k0 0 0 B;G$q TnQ-?dZd ")$YY)<ƣǭ5`DN)%ǎ1 SJ12F/*zpB$) QXoRS#IBhA;dM^_aee}р6oRs]1I"@䠋1>ҙ IoeYM9y8E(&Y6ZU=gH iVyo>I{8B:6E֚$;(.(%tz]DF#2Ƿa:we븒dmH#Ti#bojM9)Ukqck 5o{|.ܣŝ]/9oaaZ1?H~Жp_8&cVH}CZUhTm>:.e1?7븜?pȃ>,5~u JaǏ<}Q򼘭٤dYFEU)L& C׮Qs[ciy(Nfm]57uZf(I0,nw(V {~Iףd&)* `@ӞO$\t7(%g?q+:9%-xD|5-;7=IB4~Rl"ϪyUAd2( VWWgm8p0`28fdYFM,ćy(-IMTsGNs N}Yaaa_I,Հq:r |Nzݽ,.; gn?/^aaaFȼFq\TypٱLht3:!RRWc|jG\(|" EZ~#x9XR-2-}\^j3Og8w~/v>Ѯ;H)gs,CJ(rȋ JfAۥ= EʬD؂8i2%\nԉ{I&1z4MyٻavYg3XEΜ<oB!eN+F$.g!lwtU.zresmoJƈ/^lgϟb@۸NeYשCV`NeYR%QYimUWjc*' xCgӟG}+U;()Uj=gi5V^oaaaƫvYa0ɏ!? e<[v_vefBܺjKރճ/=10 0 0תa]`lhp8077בdOh6DIBiy龓#66r\[7CYy|I$F#ĝdTX<.ZFQضMe(cP2de+hc8O--q7(S#ƒU'lIEaxת"MS° j\ K+ʲd8b;~y7`yi\σeC,NY;?O>~~|Wլ8 is)$([J N49^5L (bC} r\O e|:R~3V1??υ+7%9>;;$yh4CF5Xʃ6ق{[ Ѕ(,Aӷ)n˓1?C&S<3x_m۴a8vUȈ!E&IL{ZklYXrϭS یvysWK//<؉c+(Rvw#l0 0 0 ˆY+8wY1fmym9rG/$JZB烳a0 0 0WIUHDc<ϙN<:mSo{۸{8raͱ VZF^jzUۮ*P_2AA$loo?9YYYaqY,Dȍcvvvߧ( 4$XclmmMEB?iRJ?~ӧOe9^qAU[%/_RJFѬZu]ʚB>J))`8efU*ll^vvLSlض}Ewf:l]8.s]iZH)_qj3V9ݲ,ƣ1Zk$A`,4_^^U>C˲ ضͩSfy 9} oG'{ }Bs'o0 0 06BGVSWX4/5A^z<(q y+}qx_$mƴ6 0 0 Ku &4p$I7P*#QJMckv( 3^%VW0ߧi.Q<.m3PCt'}|u7Ib_SE, }c R%F/C |]P( uwwwʔHTW.LYLSe'˷jcp瞣7QZnw+Ð > U`jRHr4ڱHzѶfaagwcYy6Z+z}>^a89N-a;ɲkG)Ʉ^p[fDQĵkf!twv<#hJ;n )(BPUeӒlG(+xƔ ShyY*C"G#H҃,Oy`[V -'{{:{w=;f~p*^r+9 _r[s俆aaaF Z0 IDAT6* "WVVX[\fww˫-P븁Ti%%m- b|=w*ɇ?Aer<,Ķ%RJ&Ř(="vc ?t:B߲yW틧9!x Q}&#TOzL{ւ c0U;h!MnnضO`9fnI4vdZqfJ"jA1OYmQZJؔe(.VykVP#v{1mg誌b2mՑRG sssh7- ^`a4dr٧lă Qk.HPJqmh_޻'>pW l;eqdY5oYk]͇}BW~,sC%K.\{Z#sQ12+k.-U8#x-^N*4y^j_j0 0 0W}C\fa{xzPi;+mfo@X*}N_J>Է /u~aaڧHmk,ytw|iZtmNCetZ;΍.BJj5vn^3,{v6 k}!y={jC{NqE?Ѷ"eYRS%GWaµ-܈J'[f2NYZZbkk(x$c?~o{nq=$Iȋvզ۶됥)W.] 2M`yƵkq]UyػKJM6W"M|Qr4"1 E1@AҺ(e)GVt:DQDGJ] 0 0 0m}5-xRl۞UJfV5Rh˺mie/9n;E8 GYFQ,..]g>ˣgxaaa_NbNjiyxgZ#cE^g0cGזUp.E^ef]郝joN8"sF'i)fD 1‚$Mk(}xH9杜VŨ_Tm0`b-4ɣ uB1ZU}G)E6gjUm۞m/|C#I2JU­P0OYTsM׫MҍOl!mxtp&RJ3L m25 EQP͑dZI+4!\g}k!BHc!SnlH.jj5Оs) IZeV yi2&"ŕUkXZZ6fI8}&sKs N,c7Х6f;٧Q뺔eA*$O}K!z)b"{׸׺qqkYB,a++zk<|dFKuvVlaaW~.?777g-Y Ǵxuew?<x͛a]U#aaamg:SVVVjZ-_җf׷mdBQE^6M$AkMEt:e<SaEA!8&Jy&S?~h뺸eYlmmUmFZmnny~,ò,=AXRwzy8NU},G>B>nc7MopX%N>ѣGq~~Ȳ<ϙL&qdXOn6E9Mj=5R jCů/pz}x_J87_7~K\xĵ)̯r~‡]1`:_g?YwqLWmRp30 0 0B`.pk0n$AkYwVwTioYw4=wrym 0 0 0^ s,4ZdZTf (I]UZL)e!izGɅ:KGadxdo[(m@:D Fz.J)ڝ9q,d޾1]be WYFS.><Rw%qXZr= ",g"l7)];hauU(߻IwpY /yG;6%4p;Iq6eY$ #,V{4E@ 9 0 )UF;43 0 0 *dރ R=U}B077k }Rv9Jr;_0 0 0 /mUȲ  -5(;R۬]( +A=xi|ş_n$I"_vZH( ʢ i/;J%EQEQV<(#c ]'/$q\v, }j$ nUg]NU}J]0M5Moj#|- I|4Moc=tMDŹ17?iYO4Za~4O>we.>s?zk F\8452z]:YtIb.uzUR IS0`2X\nҴXe첷{?gv0&M2]# -/ d@YacG_|z.FqOPٟ1`)n~y oe;e:j(((#p_+49q<].$tNo?į/nYyNqT*^]ii(((׏,Mqut$f&Ұ: Y[[c{}!n؛t}i6\xi3 czk g//[Ͻ7я[5?$/`+((|-tz_Y1vAYUJ @zs똖CۭU\BۛCts=2 /?s=,ߪI\Sڽ 'IU0o{+ß'K,C ИN}lۦf׈q M$~xo>yK_z7<@ӮϞ)%z ΀۷oGJ(2fuEH)i:-.5@EQ9YiLjU]~$_'yo'ٌhEQEQEQ,.ʡTm$s'n_i+C3I*<_l&(((__t3%5RDDzig)YJ;۵Ocnmog>%jCʹ5Z|coV~OY8@hUb~@8[!;#xFGHg.] ʪd'y,[:vuq#t{EQ`6EQ1t4K,f0' f&%YUE]) &Q$8gslu]4:4d!dn w׶ 4&rDQHiIipk&{ n1n3n7Xec1Bt:%K!nek_Ӟ'QN>mauPru417WΔU`h]ձAddg> jf;EQEQEa&e$ EQ{N;;;yΏ IDATݻw`mm s/NM}o8u+˄aHݲ$ 5`0OM<< C4 )~V277Wͨ5mWŵtZ F+[a&qQ0q]w!V;ԝ`jB7Y>XGN&fVGíXd2.AO|?:LD#6/^<B̊FF eYrULg|JK mt((۶gV!`ggӍwgx䴉i4 )˪pn&> h\eIѨݚt:КF;w)̝:uVT-ܽ3ҥK,--E=,fس>{kv?)%ǩf&IlooFϟH;;n?iʷ(((W%}"Aw( PluU-D M+02Fߺh%B7T%=^Ye %,2BKdQ њg8X\s C|\QEQEQ]aj% ۩6U ,q]~4M1t1h4"MYwgg4~3Iro=['M6vf_5 Ǵm6w:IjiJ8 p,f%NJ]'} c67bs4vmDʀI`Y8si{Vsd]בRRj.nc8!eYܪtA9UG0MR d:Ip\ udQًU8M1mak%^c8" IiMLӭFc43 tFI&{[lޮ`y Fi$qn0׽3O}S'S|K}'I¯|?ѧ[Q76:7(( @4ǡl›/'/S=\>8/DʂIT 04D&Xz!f81-!tdiD$ eiYEI]aZfw)%Y$O3Nk4ۭM1)Ips>> z^xGadW!˂4:S[e S1pvIR8i4@uh'|4hZ MX\\d00 ׫gk!ecYQD٤W$N%O̯,p0n A0ѣ.gΜᓟ$k[vվ3O}EuB:^FY*e1>dv7)cijLSvEO}-~uɢ11DQQ\0B7 d#Dm[$5.scnhroc+hԶ, YB"dA*Gcsy1kQn9.Nƍ;jx,1/{7>cEQ?_£o_ra((w%v{0wz?4mlCK9y$V-LMyYhs z^E8ʩ.[#+#jJ$Ycu[ԝ@6&5k 1E;7(\vRru-Μ~'@7ЅCѨҿN.@K̝"&nݢz}qGOcI1VmH)9z(k[>%Re AA:iec՛7Y[m:MB4\gyyJ׳dg{4ιvzNDQF,Y3Mcgg h4IΧ?4F-;\²u)FS~Y!v6?`T-aqF?O7Nu3CWMӰ,Zᅝq$]vhX37Iđ1u2r֮[J:cG U۴ vGS.^8EU:q,ammmZ57d^~ϼkEQN}5 +WnAQEQC^&qCs.vLM+Z{(\kIܟ d;ii9]iR2(Ѧٞܟ\%A*o -)ʒ\)]L*((h:2z UפRcooNCNqY`l֐44\f D 0MvhbZ%G.Oh95F
—~~m(M,p=2ayO JwⵚLSjaCKA}ƣ9fIYX |0¨xۿﳱ#t4M b꺎Y8fFݠ,ºcKѨ3K+UTZBCMd0ﳰM,cssNFqLέ8&DiD9I%:[`.ealm-v7V]˪iҫ$~YXX|=lN!uL -r [3,¬Vshz& (Ft^\@sx:MLV0hM\ZL %-˭6g9YddGϟc'F2(L\zΡt)cnɃiE~T鰱AJ]$Bn޼s8{?wn2b…~/81 B83ZuضMXk|"EQTXQEQW}݃9)2N:9}`V >wwAv~<ρRd:F{{{ݏ-}ipInݺťO=ùozLMXQEQEQuHfG+ѳHQ (u]Hr:}iD #8h\n%nM$4qsbM~/?uhF QAbXʇOs|Õ1gNb+01غId`oo!%ns2'hu0K3, ˬ1 Xɥ0 i68v0hIj&tYVҴ=W@QkA%EQEy5|PQ`JE/m* X4{DX=(H ,n` 6wi&2Ju(xNGq80ǫ%\qc'$L} ^ 4L Osu"3 p8&u,SqX&薉iĄA0E/av 8gQa蘦AY$b?=6Y^j''||0 ы^Um)OFw A34( m͂BBcKٿ8F%?⦅tZg`J+P `EQEQ^M~Ebt`o.%[kh)<^nۮ47+nu>Os&u/xއUwm9:Nݦ>_ o)(( ,"OFU%DQDY\qsv '>2O!+mIa9$a&:d&ݵ5z9dc(]]ٳmA&yΉ'X[[%em¶]~aJ&a@Pl6 4m`nn?Kp5YFL3=`4L2}v,Eb^(fk=M+8h8Jy&)~[k]eNi& 5˙()zH)͛n0%/2փm<7 R$(s(g21($3溝Y uiq,0 -].^NQz8g&9k!|ny+?o1M۱YHZQhɲNoI9rto.8Bo gh3R IKBFL ЁRhC'dSȂy~|ۿ'1R9._~Sǖ ɧ? rw9vx$Zi )%za4S 7"gEM,<|0DJ9{qu2U `EQ^*((ʫpky/B_VʲD ݿnwTp%Q0(mSsq/FI;wvS?!Iے̖)kwר-5FO(((kGCЧVn.+KӀШҎ%)Sg{40saT{8""[]V7h{\$% hF|ol1>}peY$IjSiLxis4XYYcn.[prs'غ $"‚2Dzea.6fyRYЊH)ɲ ])ҵtbI$ J EQ0LHt:!Eu B67wCjGl-?S; WpM4jhޟ[eEU (ʌIm XEX@7J&?ͻ[vv+-,9{,^n^1C?_b4]4'lC'%0Miz{yG$s9bH88=?Ic,-t IDAT-qc2,<@kza7?N6n>`.u{]q:eY͐P$jm6ӭ`E!5xGߊ 4>!,(VEQd/}?넾?+Dn(fm˲D q {"̙3S}QǸeeY/?̙#i\vWg(y0+:wʲ:q&lZD+((b]1 (:e!b^__GumWW|tLRJ\ui,2]#I,%eaVŸֶ7R2G0 X d.l1ѐ,ǜ>}A0ڝMΜX!SJj&KNQf&;;;j6p$bU1<jF5L}VmhDe&Ҭ63I\r]v&qGhZU Ðk`6K+u i6xM$cЅUllQ ByL.{{{\pG}4F=zFA(ʀ,+j-&Qb, 2ܾeQf,$OEujl6iX.uAim2]$6cik]²,\%s\LZCKY0r-s'`8ٙVܩsgb]o#GOk&нzYjsmw>#:m,$vJвDy}wD$5biEߵL@EoיCzlGK6+mQ `EQEQ^Mv~G?_"+'cVuI^SUYP ꦤfx]#3+~N:|ΝZZ)<Ϲ}6oŋHٜ=Gz4M)z؂ N7ضMӦj!۬"ҥKdYV5c0ݻL&ʲd<Vag}81ͪ>P+41MǏõu=t$IFOVhVe,ˢ^j8rd4i4XIIg0"I4֭U c#/l6fnnzeFVb1ÖQ)8TM6. G y=/{eZiLegϞŲU'Jz]2B&m۔e]#ﭛXS.thmi44 1MKWٳ08X%(b1ChdFhEC՘zRG=0$jEj3 +kKG1e󪗟#ObyEQB4WCTglm:]7ۜ]]A8Y2~0d~~/Xv{w] FAҘCFȟ)Llff;*ӥʬUC,Ros8R(" 2,ˢPp* ^>g}7m6Mx| _L!S"4M 4L icM (4M$#4*k@Ktk `I$Inߝ>A;͞:J^?S(Y&bH9qS~{7 Γ{nm񒗼dofkkm@QU.ΛeW$I$INJTTҼ{:(5g1-333|fgB(.Y8 aFdtFmt[}۶,4M;RDVclC-M3i]+ Z-&ΈB 2b ÐU?BףX,$VZ@]/1cD$RVaX㱯a4A/d j!XE2hmNj{bÀMf`q|И/3ٷ8O8`N5D\bE?yR١X,#~`0ۼV 何 ʳTD$Eۘ ˲P!iQ,㘉/n}-Iҷ%X$I[IO׿C' ]ܠ.HS'J .de;;]*B7] ɓX5-ަjz;PiPٚ,I$I$Iҋ+TU|g<^bnPU]2MSq(BQ iDQ4-Q Ixt*UCyX^ޠ˲u=/I-RN~|݌F#,$*IHK'"D NGXkj0jFD4ji+  zYFPfuyN/̱o"~;Y[[јwHϋ9~pD:AV=\u8~v!BK nl9ge dԍ1 ~{Z4M8B7fv~LTf3͙ibH{k *5\[5u۶q]A;% EU{~b*r| Ҿ=/.pϳtJZAu$\.S(7Lg0ajc[Lff$ r H):QP(7}\ុl<ؗiT!KU9f{q'/a6 Q{w?spSX % Aks eJ^UUtKE1{s:2$֐$I$J'Wy⫏0v!Aѧe&K 'O~ԟ-|r}/NڙoR鰵śf^oHq6P}mq_$I$I$Iz3I=#A$ coms!:$8 e$a:$iWw.F_h}2'Pb8(qu R8%kU*f#K;$"eB#I},DGUѱm.'sˎ()m"Thr*il6! ǎj1Q($KNTfRvjllP%,K3z]׉[(KhIѴIU삆eddFA@dhC !R fw>-A.IB$I$JGi ͂Y`'u_T1 ۞SMFU&~~N:3 t:> nnn뿃{Ac?Уg lWJ$I$I$}5fJxRD|y$M)"`qau{ 1̌JBӰT+Üԛ%8X)Q#tӦ'… V!I1`c-$MS^4/^$ݎ JDHTIY_&tۃ:[Xf ΃ImNhK, :v!o>aTT(A6 áKEDq`t8vfw3o|fx=r!.pah)%#cqqQURz<1Q.A']J4M# ~!fػo ʥcw % }VT^.# ~0u]2i]g82fXm.-?`flIAeACWlGW!a~xmD;qAw {-_GhL<.=gxe~ |IZMhS`ZGO4j)劕?軁0 X[CfK$It+x2TEɃ AUw?Ȁnz©SeMcv}:u ˲Hnaj56V7;x݃Hx;%ve7(| YI$I$IKIMcEDQðN:]|PkKx%k2!R)Fd`0P(fYfee]שV{}9d2amER,,bϞ=|9 /ϰu]R$Q%)VHVc2!6L#% C^ʙӇi{!^̤¶b$T 4-lB 4"4Lân1(Fd[dYի6 :IrhScR]0 4MCUU,<^ĕ[daL٤Z29{,]Fc&m>L`c}ʌ²,ݻ6ZLt{HQljv'_? l!Q.Fض,~g v %b(Ih_\a~n t:ǎafmۘIHDXp8h@fJQC'L>ZŁ56}7<>~SneFc6Xr- '?ƛ# c$UVz *Br׾֦tKcC(lo`硪*(>/&rt?,(`ȲۋM}iZ9똦IzAiX +=;1/Ο1F(Y Sq >S씈 TU '/!מcy^WI$I$JL< [y7(ޤ< eyI?OS'1M4M Xu]o|#"Оr\F!Md K$I$I$$Ibc0Du¨GT )1re q\T,Kuht],b<:hoQ.26BSs}ezsi2L9E6']! 'xq]ڷ_XXbjSp Dcӂ(#t1 Ct]2Ka .HӔ0q!E!b,#"l;ST}t 8i*Iu4b~`)1z$1lILS$.QZ:$ ȏg{Rj51IEN^1ضM/fXOp]'Y:Zƾp"[[[1sK vbH\ⓟ,YF`4X,qpާL&6qJ@O( I"|y!ɄY&aB((R4(e 2LGpD+b2[/%XO}7l\Bw4$S.~h{~<㔱}|T*TPA"?9$*YEVC)P4{јR45cYZ[CfK$It+] +KeDhL"/V%bu7Y ~Ww?@0NKu:666xuo."' A .ϠMuW$I$VP IDATI$Iz14XXXȳ LI;w fzp6t;./p`>7Xfmcd((J@e0$P1U.]!C ݑf}}' [sss۷/&@ݙyE9 6_җp]u1b{ 1?DLPT1"Pl]ϟuJ 0d2{ۊ(~ ]__ fKB̃*4X* JbReY=zqUUiZ{a&1O>q0ti4>fffL&FM)rϽmbiA|ߛ$"Z)%BVkx2a| $W] }dfYl0[N`0Fagz+C+++&A@@uO}tLE](~JRm{YzE`c<}|Ņ^^X)qu}rǣ1G%l>#2,%#zI@{d7y\TX}4Mr|(\[FfK$It+ O9.( =h}C䋖`*Sou˵u3T9ɩسPvlnnW;u l{g98xcM &/I$I$I4M ,3x0DUU($7q Y$ײb6bhiYXmKgy =U JN4Oilllۙh8ηdTJE˟ELLӜ>< 8wܴP@7 ްKߞLӔjh=~}KW* H8? #|G{*i<=&\Ј7,.IBf3%I$I;_ Q/ݩ,#ʌo O_LƣYQ,UG˫>*R1&K}< ?~sdY6&,$eL柍پN$I$I$V"\eymُaH$h[%-$\.#҈T"̜ziJE"md̖ꬮ^F7t AYш6MN>'d2r%#N%STHӔh@QUQpD ._^ 34 `43S }?( "/hTxLX$"8N]1<6ym{4S4!KZLwg4M0Txǘ?pQb&A@q"q@ӡVE$244M2CCtlUCqamGc6~^Ç z4 mlll`6J, (o;, hB%hEY̓ծ"^}fR٥DMOlmuؿ?[]f^ą?20MZÔR`"m[q}]!Gg_p;oÈ 2"/= =FD3X ӿ;a ̒vwRE~~2퍝!RN3$In,I$Iҭ~qLzP4Oe)OzV;UTHƈt DZ?aoeR hJs@ 3В$I$I$XzRDFh6eQ(P?"n8C83k6qyE>YDT*B ē!%Z RY-)xGŴ(h%tbE:4K|g~~MJJɨ2vC{IM:v&Tk2;J$dU$H|~fj^ٲӠ(9&=c2s:?|auEªb6gryz&i2jDQ<ܶ5J?lj'b%Ν;G\n#" 3Ϛ,5$.h̡P( ǰ*&NqE^rW4M8\iZULS I0` 9~8ahi:ò,Bw@bY覮b-5\""2]%ˠ7 HHӌjS%M"_,-.2A4,LDv鶇TF} 5~ogeQ,EM$Ain_Adda|y}`{{xB8dX[F$I$VQT,R%>j<2Xly";CQTƩsdLtxx#>yO<a0>TCd*rmA? <% X%I$I$IzK"j aDCQCff+đhL3c0Dr(:($2,@7vAIβp\UI4XݺJ\l` ”֓ZVm@k AyR4DMHT!Y$MS :w!<ȕ+W(e24/kN|Ka~.C:IbjMA2(|E!cT-ALϗ a4mLM|#8!iur`sdA O<;N9ŒI #?D}u3Y9?U!SeX$I$I$Ia4 \ץ\.%s ,.'1B4ADASKHkFX cff,HEQ0 ӀmۘɐLN`0Gg~~Y]"D>K4;aL& &U3 rVuqL( vqidY뺔Jn\.^-[>:ʥmOgwYs؃ \.cpy~<#Օ8yIl`Zz C! g]:KWQUHS7V}#A'}*N ٿ?-oeY2A,m "M)=VUTU%Epn7 'h?kt$I,I$Iҭ?YgB ,ij:3Ȳ=+`rE!]IjY II(8t$/Yd(@e,`I$I$I^"CeDͳKq R̳AwMxAL)M 3cK= nT$ffYiL&8 I<[R,G!V^a:?k1LȲZN,8XYm BHUoj)P*#eo\ JɰI& c La5]P*~+YUh=5Jp\<>nY;́cٷo-9T-EMҴqQp,..( m ټq4Mc KP" ] {-BW(V>N@-.{J$("#S>2&  ,0bAX2ar.mRYXXb5#*?pыyn])9Tk+W/  bWJdaLdZb#An0c0a+_~քFTM.w^"ˈ'>ewD>?im[15d:}*}?lp,{ 8 Q=%In,I$Iҭ*(.d=1_z8qۏu~ʯ='_Gswpr?v'N/2lM\[ vJ=>E^,/s/|p-|Cn~(WX(ؕiIhUUyY ߏepG ,\`vC{Ѭ"v [k˔e\%MӼN3\ _muxqff} [шU@IЍbHiXJDwMHā {dф yIGb& [t4tL~/RSTFnePoIE*B Y0[Y4bc VqUӰm0 8VbEQx+A8&"W4NIлMb=A@P=bϞ=)Po-Iҷo6X$I$й*uٿ7- ę"Z6>5زT(loGm.Ο>x{M>O*}Õ  _ !]?s¯E~W?v.O=>{[wyu$Iv`"0LpU`4r}4I1 8jFP4EQ]t4k R)H0 ,ȃmdMNU5R(BM=~Gټ 4SBW!MAQ h$ y 7/s`\v,Pk,PDiZ@($t]24,`8Lj 1gC?*Bge2 0fkk'#Ν;dSGE!R&VVS3 #=5vTRp8ݞu&zwUoy;jI$vhoSl4u]1s_s)c?DAR,X$<ϛj'E9t)Q9X`8{Zo_2X$I[I'#>Om4^Tgz>m ӰkL~Ř%+~K|E|QW[yqك驔i/N?/ۺO?yy MVn >w}?:kyi^x{6\roߕ·'Iv 3|'MS2aFc|/Ag;;e5 [3vG3 ;`X$1Q6 ܑy0 a|+ Y""#VRUL&l(NZ%xi1e!jL,K ݿ7qCg~aBHL^' C\%B0OQ*4e$k"E!4 q:++,1;7%(bnn,&H"*R~aDY^:MSU *եyV@$@YE'.sqXZܾiһ|e:eJ!TLUG>Xӄ(̰TyVk+Q*L,N8|s5gO<;pڄaBFMYC7q,1YOhEdXSALbfVq4MхF3cW먪iꬮlon8RYID[C$I$VR!#.ڗn!I^o[uA qcFb]Khwo3g^Λ~7ֵ`wO|;:s3wo> ?/̙Wc}CCrי3~[T0|z 8s3gMU>;9/~_gpm ?A^w=<0~c!^Ι3w&+oW؇KDpƟ=?ɛ>?toMLۛ{=o4s:&|_? 2 pAr*ֱw[ @^\[13z;YWWw/)fO;.ӿEGԲ9= G^l/$IzDaF Dab LZDEB!/aa&!Q**Fu(% $ō{ogIUOu׾MO> l$qCeѸDb"_(F1. w  33=޽o݃ޯWMO[uSSyOFo |RlBiEHEq$v 0M3]}0a8HͲq[:2hL##[zL@B!CEXE&Ht)T8h/h.*u"TU!ˡ( # )!(6 7q5gy jiZ-,"%?(i]=N .YI1}nJ(wa{1PôҶZ-0ddhΆ5LB<[4u4bUJ~o- IDATV_=Dls#TKZ.ϟ~6TI=n*ΝW.dW[?gy[?{?)C\7>rR1y[<<3[9u=/iΡ8_{3M~K3Z|e( `̥c|3o8}y?{ӻU}OʝWn=*/7 oe郟?tk;[}{n/oO^Dwo\ş8}g=<_y yއo[ϫr{?̝l;7"ʾ /߷Gz . >˅ݼ141.f+oQ\9dY93ɂk]ϸt>׾z9/m|s7ӤNaiA9Y»o9?IU`sseN<y8rߝ"nvp6qc lpXgKČ#K=e:U1jãj5r0:\3P[$躆n&^HQRQBIN7(Pu?fΝNXSλgҥnkEuL`!Xۇ "vVUE"ZI(9ihDz,TUeAa7ڨdټA8###### 4N>  ywrGNv S 1-N?g*^wΉw_h퇾ʷG=Ws[̒^ʕ2ۿsVm{c`-:sCW(۾z 2)p柿Yp>O|hmbIޯ?3Wഗs7֩5ɊKOnx>c8mo96z.xRk g-ϟp r=$6~|SI3o6 }1[4~u~<+9}JN?q}n`RV;o9߹1X)z)g_qoZHOu͡\nsq~kx/s_o@[/(wӻj^^sOU7ise<>v~9Rߝ&4`]=SM.[A)_|談'/F1atCHBRT 躞 HQQ.4E>Lrp])%ftGyJ=nC͛1036E$Z֘:?s?!q̂ :vZe׮ݝ9of|||>GWW$ Z ]uq@u 122B. Swp8N0 1>>)S4LL7[r#O1::J> mlPVQ4o(n*E2`~u;It%ljBP}z{z(6I<]"@}=grtl1AmcT*zzzuiu k=,\ INcqmAڠ\.388_.w1qGmz&R!x$NQx'* >QlLMhsu&r V?i=' v1qfq39h /C\ݓ)Q(M Ht.x9n\kw-2d#[兩Yv2_̥ ~]+'r3+(|=L"*Z {c̼"9[9mn5qF_"o3QѮwB򎳺PЎ붼`2~'W4=r+b)=>Ŝ0ycNcaSY-8gcCY7c׼W-~3׼>driԲ@s0֫yYI]y> _m;̅Ydu~5g^rkC/Oϕ9s~wV 'Y8'K{w{-o}SX R1RW $4_eǞT AiIiblA٤88⯔DR :Z DB1_!)ΜPQN~)XUԅjQuEBi:rIJB7%FUMϩ4t"j6bG>z"h9~A,B†D&B-IRLPUCXy\.G "bH@0< V]ױPIqm˩jq(bhv*]qLWWrjcuHub]ömؼy3izbo? p;dfE>7sen<4w(W6s½C,|/f[a])]7y 퐑SҜS!Uˀ$!VT)$-~"R!ز,<7 kYqPV1鼵Bv^HCGB'B$1H^*Ӛ\fGeYDd*/@={m[0dll ˲𥂪P:3ز,bMQ/Pk T'&"RAE%R0~JNDk{䋩P*"&qcj.a'{VgA𔘝,vuB K)4L-UVuaF4vEOO[l'I tE,禟Cm7P50ףMv - wiE58@X:c "(6!D AӌԱl!4'-?`?HqAH.1nIVxl:V)ӽNgxirF q1тb4CDD٠5nzJ*= ~0vdm"!t VFh# # xڶm&'>0PB3}cN=d ɢEg!3228######h21LNi6Ӳg``I1'h4=X>F>Bh\5#,Y%K Mlt]?:w[/}wk{jH$:N\lu:IQ6<9ȭ[N|~r.W> ?}Мs+_ {7rM\zj)8?+b%|C#~?n!؜t/ۘ)w`8†Pzގ߰G_ʉ{ G|)lnvkohR1|Fϸ7|_沞Q^ ᜮt;f+OoRԚ;Io&~jo#|ʛ#?߀7~||͑&2CA[Y/ʯosOr)"PUmƵx q`Wt?L"im2Nt\917963x!x =Y't}ҳq߾y+r=JZnFFF”iשFq'<"HC@'1jb"lHdeYykYV'T9S!H8IPX"TpT$NH$8 W RD$!z}ִTldltuky*q q(lTdj׉¤3k4T5] 4YUU4MKK&2@M8" EYǓa]ZF(0T(BUU|'/UBGӴtnl(JD(℁ZB2IׇiZ-y*z)Ŷmjz'tm)ƘfT*ǧ^ouƆ!$H1DulvE@5.s(J\Vg~_A|J0BJ k!]ZNf3aE#`ŲcxE(H͢/08P2uEB8V1VFW $H- iZ~Ts슕MuI¾Qur%lJ"b^݌}rgddddddM*~ӟ0 Ή,(i[.VGiwз>߫CJAיB'|C7py薏X߈?s Nؕ+Y9;?`i8XK^o>3.eMQ!;}ɥz K;ٶm۶mcLjCwwAs~|]w}q?FtIZ2͟h|?x9mO| >ǯl{埿>>ݢ`Dv~)S|}|G5 w&*lym*n=KNW}#}o?~>Ȟof?lco)e|?5Y|X>G~pg],9?ώgLp%RsU?x/[kK4^aMG-l|?|9K7_.+sO;Ukm܌Bfe+H>2 f( B$I@$-"<눼@GPBqi Qev۩`JG8 #)8iZNwJr&IBv \(T*8:8ep!n{0 t+}6 *US'91Bl6q]h*b4tI96U۾R H04M6xbQFkM(RD߼~TUe||۶p&Eb=ܴVMs-O]8ɛ6=^TAJAILw $ v1ACț&zJ\4T|?&9-" cU,YG):ܜ\ q|K dA?pA~=`hK9<{,@SU&'3,qVڸ PPVg:#dbI" F}E-/ZE@쳴oѺ322Ge?Ly_,a(J'SuS0rX7LOn"kx|Wn^ąW^}"3C|-/^͇]̕׼ulkKD,o--+ɹ,BLog?~5#D-ů}&֛u:v?߽.// yxbۼr7罟/M"^|yNzuYl w\ x7+Oj1>.=OCCpɿ9G?q9/{cp;?;PzrUC7QO!7ѹtQO0z87OwKܫ>~_y"~=܀뮸_U&jc꾟~}|̩þo'i,:zA;YsӠl]dt8ZQDqLS :ᗅ'017봣DdRLRj 4}gdF$48cf#aB; h;A `>F^GQ(Js O40 (B4ZmEc.cttakb6˫jutdD 4&I QDOLWwVcߧZ[=DXheӼqjWp8RHZe;댏9i([Aӥ\.SٰafEX 0q㐲f&[ZxK.iNsi_U턮h1Zo#qb8v zmQhzFGi6- i8mN7 SWSR4xf`sJ,a< XLNS 3fBSmfM 9]=N5ǭFU,ªgűK-L8n5 ^|.xť{OJ%FΆGq pܱ IDATynAp5|/2~1ˏ^DƆ;N8;"D3|<(r9Jݎm QTRymN ru<G.gq0RJ S08vsx(6A*ihs2 D}lh^ .Ls-G۶mV1o-wSQ;w[ hk™'7Ut򆊢&dPcuwuEeN{0]il5ǮA4xl&֬>57N0GX$ Y]TBR\.ck*v>—^έ;as=]edd<=]D lz|3t6ﻋN<Le;&%@"S!Ĥ,H<%O6"Y>uŷ8ݟpaL*OA7>ݿZ~GX''=-_I0ݲ@[322>W2222/ ,+ͻ A( "0 qNG4b$EQ,$I=wۯo8mRlJ|ySQYx}ddddX,Rױ, aDF]NfIk69 ] JB$4;&@Tb7ҮZl!rD-Zd[FX*{\&FUU#&" >eKV.n4od? B%+!Za Gkw'+B2%gdddrgddddddM4 H)Pɕ*8L\3BMEq\sk,D|dg?)6]N&|Ru%BTQRY,3!w>ddNǼ~'W~__d###H \u]$9\x( dTM3 ۶py2s!%ai`[i jiVi`CSn44aN\ߋ2ycYVa6(J'oShQTPfaB%A&t3@a8-"EUU69 J|*|GN4h9LPd(UTeFσX6Lԛe)Ī–];ЭX%%ՈҼn[K0,#GDxN4pΉݻYdQ)t\S"rwO|^!(OP +6v3w۶=cr c:CC'I"!thy.4 6mH-*ܱ 0 >dQwg.@3$IɹJthMԨ  i `s5iidߐltF F;/wc+:TVAtttJHFuZM$C "} q'xY44&ݥ}[gdd2%>'9\Zߌ7TSxJ^q~Kߗ}ՙa% &\qrwI*O#|r3%"OOEd"҄= L$~ݥ\Is:UAUy!P!CU5HA( ~"n9$ BI0A⫒(H%A*(EёqB xʱ >|F@m9.RWJ FBx̛7D 4qt @Ϙ4I"L\HQQ*DC4 ==]^;:l Ej%AS44t^O6zE(rD"411 1{h9 i7I3T144M5 Vf: MGIYL$:a!U CՈ#eZ-Z~VR)،&mzt gm&^`ji")lu3Fʚx @I$@8457$*ٸa5K)k066Lo~Xe,ZxH]cƍr9^?F(Xe& 0DXEĴǥTiZEi b29MU.eǶ|Ggdd!s)g1W՛5/%@ xfF{N"|_8}J{ Sཅa!fJda32222222222H MrZ2]J,[! aNH:E`#DQ21B4 uG2A:f"B*Hwa]rc TU4j\ƙ7t]' C$ H)gS\4Cc-4GoXlJUEg5N`$BH"bd!NCH`VȄH[oj ~Uk`jƄAicðN__BBDz^/\ץR*G C(6CC;ӐޓawEOOqj:ymE19\hR;)jnH}# `B;>DȸSR޴iSGDw4)U"(6.`XBW$hZErG8n݀PhXp;N3I\գ`։`uVn!^]v0CûTJB4MKx 5&L9=Ԫ>F3VT$PhFh5w cvȪ% <ٍ&L["xpqG#J;*Ei׈ ]~s+"c4B&Z^PU0h4%bƼ6===[8###########IAK|{7jq\',Ck15`ufú|?/~3rIZtRJtFFFFFFFFFFFS MW):G''0>+yfC5$rX$TUUӡu]'TAPc%aEz{CM思uCÐ:q' ^E d& sCa&z/0/% O?}gȞz=ӕRbY'?||'O t8=0}r9G `00;8DU5$ !!$BӯO1VHV5  1^:jUQ ˥bUaX۷/f2嚝T9VUU;eFQD ,BKB$aKOO-b8C!0Mغuk)|frf#W5-Zlڴ|>OR Aɘvf#v+$btBHl6;}*i1XEV !Dz,TUe||0㘞0l{֠MQSg\4lK]Ѧ˖ֳ{EOO?XR8IB'';q,^sOh>QשUՉ6צjU5-{h5""RkO ,I!hGESQ  "ͣjlZ[iBi3>>wqrOr. %!8B i$)JTDD?tD#(]PE$@J.ruN7ݽ+I}۝yi| &[S54kQž5]m)4$tETMG3f8Vogi$M4%X,\JtӠ:XFzy#-d[ƆA;>e1vzKs hXĠXH4&o,P KA^>YPr҅bmWu%v'RL.wʕrPp=AAAr] MiJ r$麎5Hg7(-EAw3Bav3bjYYdT1Md2I,kFƚ6XD:xN>Tmѵ(Ye ZAA-c8O5b9e,0}7 dc߹ H2°dEx<e&P9tc63C3x]2A@vRWL\=lZ$J:ή|7ƺnd]0۶iظ90#(aj(B*Bu3.cixUE#hYXuY]Lls ߮vO[1u-   l(lXFU3 ДLY4TFQ$T Gp]'W<0iTF@4-k5 Mı=7c1U1pd\6Jڙu&mƲҸ xV6.tυNplX,âTͮEX~2bb:بG*߰@ @$q\T/#6 XիID`0H{{;t&=EQHSضMCCp89g\g#8h˲uH$ >M*qNt 4nh\<ꬳ/,,/SmvUh\iƿ4h. :f8 d2+p IDATӠ4[O(piu]b* ^AP\H $ТᔗC8h2xpnLr!adܞhmIzѾiMWP= p0J*<5 LfK[1V,{Nd2kEH$mgg׮>^E)߶P\R8hz&Oq]/kv6_U騖KڊQUfe=#)J< 8լmiV3Ҵ>FY&+WT0L41P[WNyvy'|4Hp]SFcK4 cU|s5o ) Pb1 0TַqYb%V:EJVqI$FNjW逫py#{ƼA͌#ɤG-PbmX!50C3QF&`PXGF2@M D0ըiM#@W@Q   _e q)Ťr!Nz'!;OF~5nWVϾK d2gI_O("  xضn"z9CT eAnfهx=Rhgtx*:x{gjN @v] J8v- RH$px8願e譭*$]]YDP ʴ4ZP'R)ܤM0 ``!~qP,Cp5 ]`YV!fEQ0\dc G"eed6[EH Yۜ@qṈЌ$(iRG=J4$QbKX7Iœ!l'N0$Je\S:Iu44 jfiMMMuf kTbz׳Q5qxi]P#vqMSpvPIU84yŌn ib5T D5P02j(DSSe6֢it3MeҪU(N PHaާ1`te3fXv O Xv@ >ڊa`62֬c}^cѨj8 50MxaÆ8hcԖ~zʼ2|`XR ;_vAAAG=@wBE\\_-paƹBO\@禟+ bs\ ϓ   l]. mnP8B[2IE(XOFIs=MPqM硩7:̺(= I\L\T4 UEu>.et"N,LM" ȬE! LFIpU08SuRNj6 :T ]xRI*b&v05,+x."gz=. `( 루kX!h{ hokGu!;\iF4 mQR)DP(5kC$ʲP52E!iZѓ$!3@,ia;)܎tyYu0%A:(nFLRDXڰNaV44xMQ+pWEUL3D[h\aVhlR H<(4`YFՔtVnFMa e娪B"'& Oz$1vqnjrP%A IH*RvF_ڪzGl㊠IP3hmmTuLDQt- nA瘰˞_vAABψJjk\WQ<>/ l&Og?QŮʍ[ [Z_6X8{dSт  |xG"5/.eڗ](\AT]A͉ueCW[Oad)eY477Dbضuo `YWa5pBϾ : 8%  f3"     tR7CU\s_;ɲ,l&NJ,X9s|ru=+,GQVX9sOH&Rl 멯/]3&қL./h Sp=\"GY?uh|,KJU{Ń3y:.JSwcs&և<\Zs33~*'Wi|6ﵬDYu)TWl̦ؒ"woo^ɇɮh{Lݫ0)_-&͛oW㦻Ư"oL׻阥   Хdؼ߰Es/ns_ds܌aʨQ8q";;3:̝;T*~+4Zw%l^'.?ooOκwwi7oҟsyԲToNm46#J~q^Es 5_:- w=os&} ?19o\}U_~ՑrRMmd}1'Ys5uBh>|BQ>Ix܍|ߟAݐ?~MwϱXz\wAAAk^WuE~غ>gMb.[,ٲ,&L@8&NL&4aÆQWWܹsmEQH,[Ç qn\+Bڶm<7r<175`o\ZPUa/7ʓac_7qq_v1z8NYWnQIZ:#SvI7]eKrڠ{:nW3g gs sCza[Κr.ʃEw1yd芏`6+tH٦*.'r?cYU-gky?CwMU-n(y :Ql |l enqIƃ   G V P|s]AfE[_Dnii!L&b477J9rd֪u_ѣ̋<d dR}=yws&SOӽ<醗yVGy7jTnǼ~{ ա f=6';8ye_]b>Υ3`R}=Sf\M?/?ΞGs1҇ޜ*.[Ey{\ʌ&Q_G>gLez=v6]3GO]ǔOr,\?ٛ}~)x}? vp9hlx})"=}%Bj>1^oߝcn铨?w|aeΡLO֢\e7ൽ5g];#< 7ЊKg𓝖s5OӐl_΢Æu> s+C8牷x?9˿2SyǷH=ңQ,^;r33k+m~o<{sKTzoƙaѫp q)V`.{%l. Rͤ&,F:&y3ͮwguӼ*=g:S On. %箍޽|̑w-+^G .,m.|[y}k\ˊTmu_^M}s Re'QQ܏7ym2uy/œOWsO:Zœ7f?[͓?^3bl})LcL~翼~˾?%O_?k .Ə.Kbٳ#9cJ]IrH >{>%?WL9p=~#n˥KwJ1͏>Njˬ>K \Rw+= /<6}V>m\j{)._,w}/{QO%R|K_*5KFb9&/8OYogk z#AAAABd467nm qu}aطEt:u]g c纅?$%zd gs~ء06/тs\x(F]ιPW.nX-+iS+^u:ߚW}{yemO|ϭۅ_>}}NfgM[˪I 5S&0fONca!ݭH.\zˣ\|q~%Ne11ʅ̹͟ưn}v7v: !1k&יGÔQPͳ8~Z̊$/ks^]=t^E<4DWT=@Ԋz,ތG7rwf+>`y+dAxWkƢOsmײsR3|okTۮtڥ" DszN' IDATi߫.x-os1G2#&p93}߽Ҙ}6njDU:hv՗0gym+aƎo֕?(';.8}&lvbS^Z5MROy/u^N]gz;#愣2qpw>fe H~/a3]G2d$?4{<sؾ;5"(Q>}3^u9D ?=?;v!crO7gF   e+(_N/:iuyB!ZyWZ 2$kU t_~__M3 /fN4cSm31vXhHQBII{6M-&sVp>o9.F.?QsqݣeP@{Zu'ԝ<,]/X= kul3#ed02k,XkX3o ٦'!cko>z\7]wN,gl2Hs}kRכ׼)W}rUt-J^j>Y?*^٣,=wZ;0fl0GS?H}@cꭊIPs9 yBk=,N2xDv@E+f=ϲ)wqaSr)Z7cSpVu3Ʋ;>y9[o_PE=6N)/ovgmȷNQPs:wmc,}#n~tdwSz;.z_8Skw礫{gg3[q'X?d#BY58N; _}}?u['qqn]@n)1w\wNm;Y͈i3'XLVHe-2KEگ~\=Ul-v.Ub׌l=p>i?b}zg~b->OGjtA3Ʋ/Zqvwx^)5.>$t(O_oxVa^RDQzjWOyokunԩdZWs3Ũy0bcAAAABQ~EΔUViw;:VJ6f}57p[ײ,Z[[Y~=h;g?%KP%k;n8"Ht\!0\:2g/`ĝ87S5mGlu=ѣG3(w *Cq} |]p|^[?mġ`tn:~9b858A!nHхshзf`D'l,gƱe$G8򶋤B#VaadCaC7Dn9XX4يP|=,{$,mZu4{Ʊ0&m`0pVgQtCa|ޓsiz{{?Lu7gܒ}u`PQގי ܗq`ލϻ_}뎬~y7SW?u|#[}3oK 7uӴ? \s:;QK]95<=wvyR8:?smWzumF{K]e/vxU,u Q?|XfcNlcb`ȝ],eD}}(@ֱּ7"CL.zn=_\?쬆 9&K_G(- @ĮOl9g}zb_w3_]~'|q5 .U˳!/0ŢnRVm/n{ȣ/rz؅8s &Va\M k8+;6AAAEen\|ULPanx^ӴKQ4MNŬuz9\H㎤R\(q5 $Vwwh˯ɹK?_L`Y*B3q]^ŏc}~^$j8חǛ Wx#̾yN!ZvP~w>Yۏ^/jU6>_o/j~)֓ZVE//a7SkKPO刪7jx)󞿑˟l h?M~sTx13%3*xf ^OOѭ_[}#+JRn\?rL??"7e8rOғ3=_y;q>9RsW.awuW51>NLf`߃^){e}ݺi[רbso+v:.vk(=GykNaJ^vDo\{O}+-WW ~pҢ:~~:;4g^ͣǼO7^[BE*d9g"{z2&feŠ,[z,qȒw}J~e =85/uWZPwxihmaŻrmA|6|ӷg~R|@y|?Å'Lf| 'O_rSst{ü1^36@AAAAظf0Q'3|( 3cyj勪@^\\LF477*`zl&LQ(~._v46j.<~pff_*J.wq\\~>z>v_: ~oɡ'\7~yR0?j]ny\-GϜƔwFqεP bqKmZz^c7<2(u?\۝ EeT*䗷%wr0SD轮|Mۢx+bZϜ{sô^y0U 4_-Ne/q'Qdoğ88'Q}-uI5S&A)ۅ}%?Ȭcs=}YKumW>OGP .](>}uYnնx̻o~y;ؓ7&jԙ21jȝ(V- ܕVY%v_\\nǐ1H-ә<A6[e-=&;N9v6JW5,_. rG6onҝunWֿn,ò,TUe„ Jt!]he ]][dO˾q< muW<9ekV3A fgvӻ͘ MR1>r'.KyқX:u6 beX2j{p^#*f֌ J@ƃ   @n%'ẋgbR \ʹne,t w҂i 66,*jw].|eѢa rsOJ s̉\{>tΡ?n8zD\T lKd7RdF!Mv&Ajs̽ P<~<]::Q-s h_^A72my   }|2#(c,YGy֥gg_]r%Tv!s~1sb̘1S:[o5m3qY]^Q;'}=<-.AAAX+~7ڱv9h6AAAkr_yޅXcxKIW1{q]7k%jupW}ѵ0´P̙38C{[;sϼ>d_AAA2PB=R8/$   ţǣQ_Ȋ p\+זee=||êvɞ^&t*E:       |my"0. )x /PiP wUnsJi(JAAAAAAA؝\j0o1ϑHӾ\wϹVۺEb"w.AAAAAAAb( l.uݼx~\\67pH[^:P]Y ¾k]8%kyb       ׀ ʚJ+\q;AVt]@ P.(JVvtv -      U ,v\( EQb{wֿw~\bnGǏOs4BB^-X@* C=`0TR… %iX\7U-]v]:uT=Cznyy1h„ n*GBHT*4pA͟?_CO6z.RPPT$ tR"h*긭Mq寛W{{}}R|JϿ 0T{{zzzj \7FF6/h-6S___ButtЉ*aY5uLuz);vPO@cƌѢEzJM*鏮P{{Ǝh<cǎU{{| U+.nE\_*POժ_ǞЍW_cj3f̈hCƌkرkǞ= xDn8,?V>WYj%pT({?K^~>^{kУYum~[-55L(c%ke])2>pO"TktA RM4eZ[mlrIgZI& RnaB ]&z9z׳;M/Q$$kSmBَUW*)IZd0T pjrBx.q1.֪R$[k~{7J~cԵ}G}$њdFRP/ Zb(c*J~*1*JuơpV hkmJ_d=JڴzkgAm_5UFЪR-5ђQ@;cL_6`v BѸ.u<~쪂T*%*r=$2Fچld DkVڭ_ \0[TⵁݚƘ oUWJd VbQaʘjgZL/$XJBd`WW6kc8~H쇹~[,j`i& Adde-uܺn 5{ٽOYkڅ*k0"~2+xT T!p[[[oqgNpV;_[ص|^?vk-_dOFa]kUkA5uMT(s* * *s釫t h-;^1Taj;{Z;U*aWȪQW_?@ׅ=T>F]ų_B `wk|ӯտv?DF8o  _6x㸲78 n_']k.vr_|Ex㍚5kV"C8qM`I Iͺ ӧk 7CX~;fH?vw 6@ӧOvytHs. U }j`-B#F͐]~nT0 0Z$`|vpܮ9U@+5c>3BklS _]u@}ݷ. @{iTk]wGV;t\:#%0Zu4Gz{O>BP! N8+ǿ^V)oO EB##c$+YT_zpV%1&3 @j~%*i$IRIb11)z.NW`R56T3 `t]4Z5@ \KR"t-wĺ~vpf]m˫Ats}3|彮W@J_Vr9ufn{\NT KɪR_ɫMyo^Q .3gh4jJm-pǸurĽ;->8jA+Ͻ_?pBJ `)jooi(tѨN?uUA$BV_7Br_F*g{8ѡb  pEo2Tߞ? ak捗/k[:ΚzAWԜ9sN00 U*EC=_o`׽x~K3(uo]l.1ZuU5|uvv6NXrY-RWWװCւμ o1a\ 5FV8췝7Yܔd;hʵQ[[ۇE8T*ZdŢ4nܸ$)4V(o]edjq׭ɛn4NR =LuttMZxq/tرc57Cxe֚9 \{4͓'OO<1IC;㣶z9a.uuu T CT\+MVJo#JEmmm-yt|{ݢ!տЊ0*UVh Vd*V ݖj<9p~.F{4^#8oF5 [^XJޠU04\8/PPzR5p_XFj֒Z[Fj .> X BuH'\.W_d9h,vcY[Yw0q6 S 8z,y&S?Fm8@C 7-t+&AVpHZ mg4b]x-Q `T ]jdA.MfBy v>[}_T䇱+~!`Lm`%B)jUȺyU-Rgge2#**OsOԁonMH}5T_zA~U~0u_|pFǵ:p0:p%;`m{Zi0%?<º&Wp.fUU[H{?ri&~Tg?fE.}tٟg~DQ>Et6D^]~7tW|n*[:Gkyjj{^:]ެ_H Wtpfv=I-(gO:4_uWw0Cwμk]z:Gm'k/їO_o򧴨4''; |U=}?ܭܻy\tx~rͺxjs?ѷzK{/tՃYq :?ӑ{uS4_XnOc ~qQZ3u {4}Rrǘn `)*atP;4^;ӳ׼ͭMϽ?vE\[>Ӛ :_nZ2cvd6+:{GkRThO3uw֖ʾ8OjumOh}6Pߋi^U7}n&r=l9JN;M睼8AKGofk;5evȎu'O[U6LPkSn6u37?N9}_^f~ͮ77wtהM6єO׌vS=A֝0A&n]u?A[Bcdoĵg:ۖj#s@5:~Fc4/lZoo\wtb@b!ouY+7vBa^oY_s^zNmG>O,[.IҺ_j& 4f|L;M_FІS7؇ri):;ϿW_~^yM/>pۅ4iPcPݛQJ*MJz6I5pUZ`mn;IcfIR'm]vS, *mUwi=gYC't$X.V`*`&+Ruڷ~ζ}6(|SOΚʾgt1_ѹr-W3 1O-֭g]3 h!gc4 .ZzG{^>}u1*\(L'9Yӹ4Jʬu~xqO5m65^4m߬tOfSW{/|E׾lSü#͜/`E}jTS]Xn5xU^n┺x_Z׉5զԿݤ+kz[c'ӶU7@>W?>vU6A;}z{}6o_oyU-u܍iݭ6P?x1Wle~<%_7ѱk.Է:`-*.ouB,}DZ΢֕3Ћwzko~J/-]߈>/Ǯ׽5O~燺ku/O? 87ߦu6›Ћ j'fkX=u;j=6ëK&&wR;|q]rd`M/_ӶsW]~f~]_>aw>~ZO3^zC3m3~)~us={ӟQ>:u?iwvc Vڻ6z:]}]{^ZqeΗ;4#]j֝{gkJ?~Z֌5s]jvCZsV֍U[7oPmLmmxw4nL ktk䮟I*J >F?ꑗW6~TբעA:tg#h7d;#K/ $c[1#LxMA}jH5{={D3m'jk(W qkWujFV$Y(*=Хӏٷ?I~.e6G|owVVIInUԦZ7uYjex:|friu9W+Kjף/zdl|`ee iQ*o$J6c6?誻.in `,ЉƯuU0θzWnw(?5mKķ_eU #SXkfƘq[hS[Igem1cǏj[Sn0:d.GF9Ż~ᰭ.B,5f5~Nk0jdUٕ֋U[D֝/UxtSw,s!ܬR0Kp\n!^Ղxq:oaW}۰F(M!_.6*5qT`Zh\zsr0x6uB66cܺĉ h9h%d |ĵ-TZW#\8)sGϸ"sF@B^ǰIqSgMu86dS/y֏?'5kHH^AjF|[{eJq-_ f.Ȫk-{dq-h[`C E!Yhdc3/SeZep.'6yí $ IDAT:FPMs\+IZkS-uUxcյycU&+osmuZZpT WY=2CT*W}}}*C=`1jooWgg0)B/_7&گnLc' m-حkNWW߼;I 䖇^͟?_mmm?~|U*T,5o*.`NnN"0:uhXFUAZ775HB=-u״IqicRGڬ6; n셰r3F_+5Gۚ9Xyu2Sέ̾@b{2P6Lxhk%kZr(o*utզ6ڶYr&X7/$9/5k+MMbu~"+ I:Qn:I/7䶺10Jm2&Hoɺmz!TlUnt@ M*"(Cܸ*ؚ_#` ^x{llk헥ZpU`m3jxe6 M$YSlϮ"` 㴵A$ךZ[e홧 z$I $ީ4o:2gos92Ʊ-Tƌe 7 7w+gN10 L/pq+:u{Ӆx؅Mӑ_fv''k?a. TH ۇz @DApRz^6p!U6 dm8]em^qpѡb8@0i(H'& s i.{c*~I"(5#zwnvǥ2K=>wf|u3"?u:Y!55SĽ }(M7/RkWC_ڼā1MV֜쪁dU8FT5kZ0$VSkZk3FVcS''xu73 몃` ;-ۺ lMZw~ԉѽEc8^J p/\K%/M֝-$ ޵n&m4PQ\KH3:95١qc{]^V:GTl0UK١lب#szY`5am6{5 x <(ؼ( pkAnX sO+1FƘyPڤBPh0I9¬2X#ŭ(zj.u7W *edu|M`^ .l9cuKr`D 6կЭ[vWՊ\+8 !f?Q .ͺM0:K?ɯ&zk 懱qup酄m$ؗ*w]MT'1Tښ~2z!nb(qp_HIǨ&~6ޖxlJ+M?$ZYcM.00%uZ`[6{_=;=$*v4ֽ0:EV+&9?dk:2>UeLZ2RiQ `Wjur5:q*mQ:譋d֛BsZ62$*S\{otfT111:A 4~m_fld`6;`Ѽ`xc8Yћp|W\!pKL^j-Ysyԩ&X/[t`+]D&o!rv aznN5p6_cRy6V1H57ų!ii CA['gwΪF!In<=p\;Oέ:r}52Ǿ])t2_ Gww{T޹UGN=@W?gF?+Z'/럛yUݺݽĢ|Y+~ ]j^?y.y4!?k<7`t{e1]/k$+[-u|l[Ze-\e_ ]qŏu'IV:+f^c7.oOzH %Iw>tR+kqӒ~?6>ϴ<=8zatU?҉H_57ה#-ϻ緼~],W>&Mp[t7ޯese^ŭu'62qk)ظsTl6Ѧ:fޢ©k/_T IWi[K_;*gmSE?E;w۩? 7Pϯy&TAoY:#ʊ|-t[, ,'woyH|18CrY=/o}/d\m k۫ٯ7 6j^S yMzGj/[E-])-i?{o)+ߩ-yH3ݭmҗξC/6íz|l6IRújTnuxnk:pnuwþ{^\*kWh;Emj//-+WGw{Gh8cwuwwKY?'>?~AEIKVv{k9wE }ݢF=RPzZ[tnx_9}O;uOh%'=Ӛv]^yVu3OMQwd9"?'lE=Q_kTN'~,w2iy瑞ߠ?#43tݽ?F;4ݵMwv:l}3h}肽Џ^˗m?s[b?_Nn׌>okNЮ^YA,d[=}ݩ:x۝?I=:N;]6=Խu%閱#5˔ushѬ[tƑ{hrwv=LZNKC%I&Uni\4?k]4y-̀m~:9o|/7o;_vܭ]_+8Կozۻjiw,ѳ폽[sZ}QۏVqhA+6j(,ȪnvBXelm>.vY|?G1޸X8}T<,׿|K;|Zh[Ԍf_O՝uMwk͞@ǟޯWyOeNT7?w.~nՅz to,2>/;'?ݶw9>t#:hpϳ{I=#;U6'OɓսD3S'uMOh.n?Kǜ?z/>K^B7_u6%:SXOg:rP[qp?}[.<[_u]{u 3{ QOS4|es>>t[գUD_>?7AG{˟lep~7E7WoC>E[7{mc%uI h/oяj3ԂR5也WνEw:{ui6mu,.? nS~-]vslY8W'eq:e4l: ouϝofϣ#i5h~ERKzpVEzq=Sԫ9vm0VKf]u23&72K7a}ǗձfO('8z,kЗvJw>K^N=yIZUhNzSncYҖg4iOkS衹s6~|z-_*JҘu7Y\|<]|74.;诋%zW28P;ݮ}ͼj]}*c&hc?]s5~stU&I s=whLL9\)XT(hkShL[ ިkuςuƹi-7f;Gku78OjumOh}6Pߋe|6tjt{j4itl}POV-۟Fg.ϳCL?ZSl؏]'I}$j_eS6[=mFA8Fc _+M~֭kǯo>yMtcM>4{Z~U←KN 7nxD}|\I[t߷ֿ̘6wڮ7:Wjf<-O7}oUhsn:{k&hkgrf1F1Yc_|@/,??uziU='O칉IZV>/;ٍw?]7FnvĚj9穵 s󱹪H{ݿ:dUn@f`:dJG/hGGshZ߱"=}tKuԅE=*Kzokܒ>V?v-t&ss*|y57T[3yi=gY'H W5kvR1)9EW=pǕW/Ͻl.ӟ5<i&ǡk6hga5MZ#WjljzP*W6:k7_e&n^g/kNwp$-X6 IDATFo}t.8lg]>i۞}#tB8 e}ٻ89){{ %TQ:4QAEXTwAAZ( w[gcwv_ ~qw3~>%ˈV͔ Hч7oK=1A;Z˽ eѕ{}2u*a28;"&CdaY4@v~u3Nj~*ڇ֩SIms Z4yP7^j axayu„-'kрԿeE9S\6~P6<,gv}f"""""""""8rmlܚfo-|=_Cr]c}sDn~s*6pͶRPY6CA`_P1!ʇMZ>׵y/|:Te7 p;ʫ+#S+櫟)RLAy榻Xj=U>nW^E՛kޝc+8O+Y?.fBO5W63 |sqm˲ryd0ޞ7rFڇ W9q'N[z57@_s`w:޲q-_2N.yoɹ-kvҙ|g9>dzO\7x#0}3)?&@]ϗV\%?G}6 Oa6=Lؽ=At/aW1같p<>nԱeϵ\Z4y{-g yZ,aV|-? zTǻ=)_)녈tkmrjkvSKfY]-:H*k7zAk[V;:!RаQ;cR~yC,uo3<>Ea ҇xjy~S/ky)y㦋9IoH{ǾP a8U[rݜiO\~MV4(l`Ӳ$w/[|z Su|Py-U>4BXN7qlX]@}ipּƢ_aÙ>j.5 翿$:`:M9!u74tEj댿fbq8kdycOVٚs{;?}U oGn!x߫ݿP>aﲴ5[S8[+Yw>zcO.5Z:y{/~+Qۣmfٶ='0_r{*u2G־ ߿U n_ Y5=Hg^_+k;9'U<tl):X<7.@D/*ű+ݏC u]?hK^~8Oz^V4hm^˼~O4'ezOxof y)~|~!sǢb?^^_y^wmsuK//fz>x)^kd8=:Ng|#`,'~T'5X:6g|,yl}*+UW]v'-YǯȡvT/|."X3o儒g8x{⺣w< ޟ85 /MXׇX6^ŇOx#\{m _RLݎُww].77IZ۲q +WbEc&8~0xctйLJ3.<æ>/{{{QjNc/̥ 8{lh8v\wuy|e ^s8U Xnϧk~޿0UPgas*ۛq>/%g}xc+3ǍnŹ]n4޽d>{ȧ]毯_8sGpܹ~ '=<1a&N774}|7WrP˟8c8Dggjp~@>>ͅ!cLϵksx-`_+c y7Zk9≯Cg4%w9ϴ'Vg"""""""""+E] jZ]ٽl'8 6`lmk=%/s5qf_͓xkoAv7/O. EDDDDDDDD97ݮ3:(91&rﲭ[a-^ l>Zϛsߣ!4٧.S.'5ߜ?d<|#7j@k̊l ~+|/Y+l."""""""""[G?-䮭5\5{;F_TWț~rM|@-EDDDDDDDDDDDDdZ-l\zRݞ71w3;~v}}M\*EDDDDDDDDDDDDD>jl is݁x涕uE9MvO+,݇W+"""""""""""""zު|{ZYVT e21=̯B.sOsYDDDDDDDDDDDDD5zMi}ܶt_1~:\8g=`X& 8t9nzmm㙮""""""""""""""av캺=-ݖ?xޚ/$6y!o^ͽ+޵zYsoEDDDDDDDDDDDDD>:ފa{o SC>ٯ뾹g9 (sL[ s{eW xmV?JEDDDDDDDDDDDDCmo!pnXgrގzٞsczdnpZǦIWf頸`3ܶp݇z@ ܮzC_C²Llڽrj*6$w='d}`-"""""""""""""-* L?صX7x(c[ǫXDDDDDDDDDDDDD[] g-`X5amvkOt;63dvٹpOq`EDDDDDDDDDDDDC8[nl Ye9V6͹ `  zn-qcĞ/[$g~Z$[y2qkn8y|g@ezMڼ]`PGyhx<{:"""""""""""""lƲ,0%%%n+~hg%#܎7/5۲y:[Hpgt=_6@6=gvVq];h4JKK Pb,c}eٖ<#Li&(**S5=%䄼rM&Lzlݦ1[=Ȭ1՘.kآ(8TT*E2$JH$sa0K.PZRJQIQz1L`0& , eAcr|!ngd"I}C--^n;ow3kuGs/YUNA@ks е8 gGe;&H(>dd*T |9m*uPJt{DۣR)ڣ%o6 Mz}l%_U eU=&nAic456O [P_OSC=UUCu ѶͭacgIspN'Vw!}mq, |?ZXp8LMxvM9'4_tȎbN3XV,_AՐ! dcac wblUpg^"""""""""""""c++L#ͭ,EӭAoS$dx2nV?EDDDDDDDDDDDDD>Jl:?r&I/ZJ,p8iÜJRt;uyK~z'ySR^VYkkG]GmD<myPaÊqlE*( =0&1A`۶3!p:6I?iO$hoH$I%Rㄉ70PYU$g'.e-"""""""""""""_:C5/ 3w͚5[q, ۶),,fHG HBضmҧ'$Ibxmk1NW >p^ܯM3+o{+"""""""""""""U,|}?~6qWʘ1c:=+Aڊ ~Geu1`eVb(,nYq1yX vОcY.Al=ϣ7v]lu-"""""""""""""2mTN9*+*himN 8憨8+cgͶX<۶; 0gwvdd35s`۲2! TT:9ap"""""""""""""";iSrI'qwp֙gv ! ɴ#rJ <Ų18Ktk,v:Ř t~& 2Xvcc6c$q"mӦNK/% L$ҕ]*l=/yy)<# ۬]R]R)R$dd2}bʔI^_8V:Z>&۴IkT,""""""""""""";6ﶽk LA$i@;^dlp*Ai Ƥf]g0rHFMQQ1zYV\ٲl|seފ2MNbk6k֬b ʫM`9WO!وXd1#Fq{^ |֯cHu c6;\|O?~ztt{اaضeA2j3vݙѣFaې}^za.MM-` 't(+-pdF :-Ym"d\zi ӗhe>w^؈h`{aݳY (,."/&΍zs`˲i=wޞϸqc1cƱ6J+(**}CQq)&S[\\?7QS]K*V7v eIF+Y9~_ӄIXt)"c'LB<ϣ PTT̐Z\dbL6[f>ʞaYIvm&55;+D KT_GDZ G "8 Rɬ2j(dS N&aqQƸqcHz)[z]ײ f+?\[EDDDDDDDDDDDDD+q8y ͍_?mǡ!5C)--DNkЮmm2ivypMȜ,DyI9ecY6EE$R)JJZ^}bvMQC*DAa!XERZZJqqPӧukn 7n,=d?}~ IDAT\TfQ+$Ye` #oDIQ mc6Hec;PpC.jC)/eaeC cYCdcHBޞZVw~5^3؜{'"""""""""""""Cqs+f 5kpWh;mc[6l;E""0NykXXC"ގDp]p(ʵ+RK L&l"ZZIy)|'.D uEymoOL`hmiq"""""""""""""";;]QdN}}$ x?!H@6@&lRxO2 c=\%%D <~*ť`Y8M* ˲(*( Rmk+ioo0aڣ Rdp72 6=uέ:|moM`{LyWkjtDP__oSm7f,!%TTUQ\R;P,""""""""""?t8߇1X<EcKPHW؄aBnH8LqaHXC{:V]ISs36'O> xBy]L h~=9i*7O[k+UUC4DdjkmofmccmD"뺴886e86A`D"ccڨB2Q]]5˰aDQ7Lb$O tXk46A`;??Dd 4DDDDDDDDDDDCv }+mի믲{$}¶")/$ByY%׭b 0f@4N(f*ּ`"X ~޵7YDDD `EDDDDDDDDDD>:J8s[?weainkJW.6x"J{!C,5ðm QVZ :c 3g99{w>X6,ʌUFfo*D"1'js(xq_O_DD+H.ӄBqH>cqXm{OODDDDDDDDD#~xr8TaY6CZinku "|Ƕ`X6O&(*, p!` xá0mѭqȏ9gsq=v_¼yoË/dM"?^p%o}~rt 7g ? ޟ#fUnn}Ayե3=tʒ^=7芈l%dMP-L+v38nA71?3o qo[C9n霁X4ʋ?džzvjjjgSRR>} d d2I(طX{ Se1n$v (/)', D* :!F'jV "|' L4aӦM\~TUUsa{_bHu ?b.R63X %ep\o!#F2g g 6p]▯[iϩxz#>}B>8.=`oN&Άc]4v] Gy)?F +X{#Ac` $}MoO¬}8foek}JKou] }1cq>i}:< mg """"""""_k+x9mA:*1$Q^V }ZZZy>OŰ-D"AQQ Txd*JQ^V#6e'B!_yqg*:‰DK.!U 6ڡCcqyvyL;?j'[V4h(`S4+T߽7ײe##ޓ>B;6F0uOpı3jY7tHe@}Pp.D{kz_+{X#~.Ʌ( DC ԃ ub|$1r\{~9\zkWrM1+8l?l+筥~F?>qY{?u?뗱wgt lS".|7\Cp;m]9jLQQB,&L q Eb1SM65p7v%:mz/HgO@دg7V% XړϞvIŻn)P9nnk>hz/ų5g̠xkvڬٝ['1vjz~ЫڔO>۹wůNq곧rGp]_grh}kκ;MO1? s?%/ J'ͩN ~s v7hr?݂p΅p?r'tolژw9\a|?ͼr5}ϥ ŢhX T56ɵfa ^[Fcܥ g1$_}~L%9~s_ߩ&}֌:.ؕJ3 Ω&ss7]u_JxGyH$;t4SNMeLv˞<޼wBV6&bv9ǜF^v~mJȯa,޾]qW_LKw ,<2~#;z5Q(~Tڭ25p9Wrg'Gw4òoweyp {|!>vEUAƲ8# :j'jO͏NLao^|K9ezVj5\vVu~k]NKi .޼ uogb;NZ o $&H`$3ap7MO,o )z4>u78rDn6uSՇ1~cS7p=А5|З {P2S; zקuC+)]7}`wy,y~ R5=3k~M7Xfp&ryq3mns3_/zXUZl `H&8ˬ]w'X;r]|Ƕ- "$EEDc1beL< cLvU1Z>[G8gጃ7 居Q%_z,'\&q3/gju,`ዬ k%/Ϗ2곳:k\˘G=k OϿ/Td-0fO'`ù3~\۳YՈO]]Xń ?fcGLEarΙS) b8&ʂ;j8ⴋsH+o?;~Lg2ο籠X8`X* 0+I 1_ws׵WJ0eS?A1YUu&MbU8m m ?oZ7=Ѧ{9kS8}`kN]9;{ì`!q'q)ٲOLƯ7 ~#xLHۘx3+qv? Z2 64j?pt*}o/3OCNqʷPc-:g|ov6 ]gpDڱFȗ>=ͪ=cLW6v=t+65'0` Z/gWr\BqMןAn>DZE<7'8gIi!! 1rX&s |/ƍ\"" pu2k#$SI¡Dt`HL0uu,zYNn jVp b8h>yFX W02xCQ}ޔ3{ZkhөW7Ϯ׌{8Vx WW#gv|r|;cxW]bo^IAzU^ohgUpyK~~M]µ0>s!jM){8ݭؖ1CL%IxQV3w=Fk"XExnk0ͯ?9a ,`鍼~=<4̩c[WbEҢq_N;icq?Gv6IJ ywޔ^O̜1) 8۶aUyRZZ~*q =(ô^ڵ٧~=ο_ysٻKIirc 5n| AKI3:EojD#J}99_/3awq%f^S;icsnz-{s U?(+):dhfT*I4 Xvpƶm\7IƘB.1<=RZ&[,؇.tT܃xG d2 6_|p?7uU4 'v_x lNeݲ{|=(SsumQP]ͪtϰ~,$esCPYVUc°x/x׃[毳{*KAAgyv6mg?KPQ=:U]$7ZߧW]2>1)6}]Zo?K^=o_UC~[j=wyPv^1x8GNtK>vz {O(o 78 3&->E1;#^ +哟_L𽽷Lj/aǰqXS 9N:}! I`…䵻:3E9VF߻kܩ}߭CeMU%YSD( )xf*ADj"9ss_h`e\a5gyך[J=w8^~}zGȖrV6-%29{ϡd"N,##u(**׶pty>Sie%eAEqakVZ.Ck>E|ߞKy s#>UChjj"O ӦjH9‘<͞H3oc mY~ptͯs3Yb!W/CG R b'fmcydN5OO>ƣ2=&D 4b&݇yInMj-Dhn ouuݹk8ùc3,;<%K? kԱ JBVPSQнMqW ^2,fOM8CjUi@\m{'0<^ |Yx1n#Kq)؊i͒%K8qGy$a_.[yw/L,{o?6oL/)(8vQ|f$el\ cgLЯaڞ6Mu>X&Mfb O;侩kV>ʵ?+_曧M<}-:SVY8HI*b#ew2݇ϩ±(- Z3c~5"""""""""[6P ~uTD +׮f}]mMmYu,]T"EQQ n(eA@x]%KD66ld2E"QWFJk371@!r2gò-ZEcbqN9NʗEcD1Z[[,xH&?*ʆ <y6wAkS8iߦ=?>Ʃװo=νKkG8 OʽϽƫ=Γ ШOW(v _zY߶F~"a]Y-B!>|`LG0id&Ё@fíW[ԌȎT9E0+?{gơap4F9ͼ7cgq,h5T@㊍$zm0|aßrAe,S,M  mx8f8C૧NgݣwnΛZ-oo^)ĉcpׯf]v ۥ0o{uyq~dnȍ wH,RXˮvYWnmk=n9^N/G/ڊB.Z*,!$d&oH&Lf&D:''<30'>Onۓ?^@/`q,~/0܏ 4+o=wqJ&SF#op\y̺1_ IDAT~;̧]G&0aR%cKc>8ydލYzn?/@Xl cl %W;y=Y/~= u[%isoh^rƲhT6?ʢœ*ZeOsy{_7}"86 [-߬|H#r:={6'g\?,<]q2h=2a&x.@p_ e|=GY5?^ sx(Bp*9'O]żI!ܺwineqJ("57(/P7ҹnml|7h,غq7%븼j{ /*v9{O0#4ࠪ8˰|&0ƇkwMWmqxgP茗2ff|E a\X#sL?w=r{1g/rȫuGq^iOՐc FUQ3<į)#J-xNcEO/<}oŤʪ_H$^JʲMhv}Fr˹0jSXhB`ǚmLʋO2Tc66z&1s go"6ꝫ;L_`d{!Y|>?US( u؎W@ Xc ¶,8X;PθK4-)B#b1Z#eDZ,O;POUK8fZj׬cŋ{]p!mmly3V1 wƳYm0EsXМv+ķJ=b&-L2ظLw{%?|ʾ ~;|MKZ36K7ci;`we\?hU>;~l{uX~_9:?m+[{+N'}L|?)Я_ n>ٵcܾA :g@f ]uO ,cڞ?{d`Y@Σ|#"""""""""""Cz&V3>R暮D٘d BwtJS'MUiYB%O@?nz;`mZEpΌ88C{/G""""""""""""""OzXb7JvZIn6\z͸F0nMbzrd\ǔHhJh9=xлfng]c2M-*2t`2dʩӛwivI)IENDB`././@LongLink0000000000000000000000000000020300000000000011560 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/webkit-imageanalyzer-progress.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/web0000644000000000000000000120671412273255454032566 0ustar rootrootPNG  IHDR"u%DsBIT|dtEXtSoftwaregnome-screenshot> IDATxy\TϝD R }ͥ4-+-M_|Բ]s[-5} pI3qEPq2EEAٗqn 0 1c'/55 % DA:Z:I_r J@yhtu:AL.R)Y q2-G\Lp0c1XPX 9P kHƭG8q!v\ Px܂hoooԨᅪUJ?Vhu(Jd D WPR>h5"c/DATA.1cLk׮9Y8HpfB QkɄth7T*$E.TʑNgEQzhd2xx( QN;FmA>Z2Tc˥.Z1c򑗧|:jbu{S4򐔭_[UdA)tTwp؟\N5`ccl[(>nJh4Z$$B%WAѡzp~Zkٳ4Obb"d0c1X)=D,;Xա-i@B 0'\pQ6枉Gpڨn?Fnؓ LV'/!5VNDQ'߃N/cHڳgBF U߳c1ceqs@u:Բ ffDs5ol_B(PNJyy tZ Q{{{呝mN}WXr1ce:"ۑF @| 5xuc>zoo!iM+5Rx]C*Ae۷Ҫm@ǁF)x=[Mpc1cY2wJ΅Z_nu)A1c1JY2_.B[!kݵthC>0wO>| d%ndBx*LGptL,d4.Dj=7 Ȑ8@Դd2}WGC=G@FFtk(BTHr&zܭc_h߼Dh$ &n uM6KXBx*dAP )m "d2rP _PP(HLLR(2"@d"A@IGPr,c1*]:RDx/9iPSAVdKcBtPOT",-dJ32ppз(*<|ժAR[)d:@D_&"NԁD}kÔGx;;@(VGh֬)rnZ-$VlYYHNJDhc1cOбCR,+ DhG&H#M[B4A4E&/:QDzR ȿ"BDd2:!W(R! R>"||B[n?_D&$ &&\|bc1XWV,[]\E(TJdBrTkkvA T J@A2t:$CVAз*(u۷!ˠV")ɐqWj-uҷc1{rDQԷ(֭.Vj tF=2 7Jʶ lmP MrsrG{@d Ldff@RZ93?gg';CV$!//HMMJB&FL̮c1{rZ!E$?RLFFQԷ|^{B@[n%"Cƍ)88X:n%ɓ'?);;x$"SHzz:9sF ĉt Zlri_~h߾}tڼy3URE7w\)ߟYޠAi{vv6dCi߮]4geeIiҥK?Pzz:I_z-k8pǭ/Q~AF%7xBi=zT.GA+W(ʯ$uFT81ػwE;m4@N""t]CTӧ} ՏjR<==;/쿁cE cD* 4k Ҷ_~Z1`i_߾}ѳgO4l ‡~(3-Zзo_tUnccFDQ4J}vyN綶hٲ%}74ԯ_5k=z5x޽{K׬YcUDFF}Zzn//eQFB||00a޽{l21c6DD&3@fh-0իذapY!77c۶m7зH"::~f͚ʾwtܒ%K YN~Dnn.6o Febu R\}YqFo:֭ٳRrJ`E_fOc18a ] ʕ+nݺСCҌ5 ֭ɓ'믿bٲe޽;f͚BVcP[d2nܸQLVڽ{7RRR0b 4u "DDDs=WsΊcHJJBXXwP9;ULL >#E.^Oc18ak̙cԭ[[[oFzzjJ\T)*g18yfرcҪm8s p I/\Я+WH3)%%%M 7oBEiXG_Fz`tHH=kƍ>|8ڵk'''l ,@NNt|Ϟ=YDQD`` |||0p@5j@޽qbiϞ=Xt)TE2sΡf͚Ҷ3f`߾}*. ADJJQ9n߾A.[]gYYYr n߾-틊2:#1q#AZldlڴ 6m† h}nnn9{,bccScUr?,rUrAG)rСCA5mڔ8y$ݾ}Zh!mS4|pq}FQrr2}TJjժ_heN:I+lٲ7n\dY͛Giiif)<<)hɒ%&sΝEn0`;E7,Bhm}w&RÂ|Mԩc2 .c2ϭ[}{1+ БNʘ׮]CVV4hP Mm߾="##X[PVV~7J]ѼyBܻww܁\.GݺuQJ'sqO5ufI&aڴi5j)+O{3 ` 13t. Mҹ(-^@mx,Vz 9 (!Fc[oaϞ=ҬR􄧧g)K^q$%%Zj ,[  z"A=c~ 2 ]"`Ν~:'~>Cj=UN߿?Μ9SE*w[n'|WtQL ×_~i4⓴i&L8r>V9q ʕ@_^$9so&N>{4,+ڶmې7nݺXx1,XPf/2ƞ}#G?݋O?]$;vhVkM0eX7|p&N{{r;J2+oׯǴiӰ|r9sݻwb֬Y-0d,_iiih4TtcOC7X_"Btt4Ν;`˖-P(xw4hd2oؽ{7nܸkpssMoΝy&ԩ;BT 'pl߾_>^y=)) &L\.իW///"##q1ؠ_~6[Dp9sM6EݥĈd9 2UD'O… xױcdeeaСprr* t:¤۷GRR]Aжm[={,:?ÇC&x"z?R@n*d=c(ҭ[(::Ο?O>"=>|HGceCT*崶.̱6# tAtaÆK, @.]L^G׮]Cbb">|X%fҤIY&n߾m51f\c2[|96nqilذgϞŽ{j*_wAtt4vڅ  77BXXwww;իEFuNBzyf\~{\'''̞=;v,nݺy ={QN|Fhh(1h t;wFHHzz*_~%MfY_+W޽{w3~¹sp- !"m+bbbT*1h t<@ݺuM^GV0i$:u 裏@D8zE,>>̴b\a+,1cAUt1S"//iiiVE!887oބ7.]-Z`ذaRK(x퍦 ȀQp@DRM ODtdҔ*ua KA[0j(uddd@"ǁtZسҹ(7mK碬Jx ,^^a1XT"<f:u j "k12 Y_Q p*gA=z4rrr)SXusa.d2#9a1ؓ3faXjVpo߾TkҤ ~|h׮]E1q c'JVcɘ}۷o#>> Bc8pӧO7m۷oKeƥKp5oU^} p\"83?ܹ30zhwӸq݋F7Dbb">SYdW>bȑhٲt5nd9ׯGq,cJ ز!*#VKcǎ%ң_~/3tP@7n4Jb 9s&ݾ}&OLhԩŦ3f %KHK?$"h@UV+WDDt}z뭷h…fqϞ=(!!:vH?'"s:t(Av[n T*)##CsȐ![}6rrvv"" uƒ ԴiS)Ç uuW .$4~x)oõL8QDhDDDΎDQ$"ӧ2e4i+Vmߴi ???˖-#Ԯ]"󳤎fΜIhҤIf˗?pZZƢpkFChĉ^7nVZyWDEKw}R*dooO1:t t̙Bg>>X`>CcT*ѻwoƍAD]6N/j5l]<_ 4 V שhց@:cgg[[[dgg#%%RKS ϔ666ҵgckk[d~n{X2V(R ve۷/,X+Wرcf+SKwh4Hqc O c7\Jt:9r-[D&Mi&#FK;L;j(Z _|6l؀Ko-)Jc…?>VXM6hժ5h'OB(%×]HnQEa̺v튝;wy,:??0x`t!!!9r$^uyիxv%uԶ ? ,J0ǚ'oLШ.cʢ%+ 2Fnݰw^ ;`ܸqHII~6?Xj4iӧ{c8 _r{i8q| uaӦMhժt:li9 ήk֬HS~-qU5:uat8::Z|rl!>>hѢoZZ c5 ~~~Q޽8)sЏ)*%uVDO< ҥK+.a . 99UV-{ۻcYZtEE1V]<[5kˁcyv9sFzj ͛7oݻw#../8y$Ν;'-Gf)*-Ke˰sNI] cbbl2lmmѮ];~i\f ]ng^7[P~M4A߾}#Rm۶ cǎEvбcGt:'.]e˖!447F>}W^yC꠨r[ O_?`ػw/udо}{d2|7 ͆vMݻ͛77%uḻP{X2Z~\zśVJ4W@џҵoGnn.^}Uߥ{E҂?~T?y=U6ԤI@իW'RT4dJLL۹s'ruuɓ'Snn. d2 8PpF/6H?м^zj5=ڷoO^zt!ڻw/PÆ ^  "FCDDrj޼4ຠE4Ϗ._ltʕ+C*oa?==FEԡCrss; MJJB P(wҠTzwHRIeiҤ /fܾիW' ꫯhڵFײaھ};UVMzW^MDD'gggj׮[&ӠuNFEQ3fk׎\]]Gt]W!!!LÆ 3ߤIG&wwwi)Žŕ`믴pB%T~}|2{R5kFwܑ>;ժUzꑣ#׏Ν;GDD#777@UT>G+"ӟҝ?4h@HRQPP5mTŋR]z_|a~fV7 tdRځςA$n^O yrXFFܹAPv"!33...Rv"ݻwgggZwww]Z-␓ZjlrMY1-- 'ODݭ!1JR"yW1o<[]Ȗz7n… z,r労ӧqq^zعsٖ3V~j5nݺUhf7kF#Gf)"ݻrJ? M6ŸqlҔ13gb֬Y1Xy@U*nnn8<ۇ999;v,:wlU77\.(JA˖-ѲeKiD<==+,ݻcÆ sNCs,0rHa…ذalll_~ǎ+@e,hȑpuu&jaΩѲYS3cJbTz=s͛5k 22hqѣKfZz'Tt1{&:{]H8a1ԋG`` "##acc#F7ddժUغu+222РA̚5Kfc֬YuQvm,\nnnh43g^~";5kQyV\-[@P_|ލX[ƂݻիWc߾}_qY4h~Gyyy_}#FAp3`xzzbǎAf0k,̟?ϟÇѹsge4Ç۶mCvp!)kXVL&h ؽ{7z7n?FDڵ ZڵŋZʧ`;#1ƞz...R Ǒ#G0w\;={6N8GGGo޽{#>>ުG%occiQڄ@ժUsbժUҘSN8q"8`1%)cAjBM6EÆ q)9Rږ3f@jհuV̛7rr/6oތ7|:dYԲY}7mcrSV0{t6l@ZZ= NSJDE̴*ߑ#G"55֭Cdd$N> ___4y;v (uF۶m3f@Ztse,޽{/˗ѹsg޽{{ãT`i8a11!V شi4ơ$3fM_c޼y9r$222͚5=d>.P׹QjtST R\KP .ᅬZj!33Chhh|8a19w5kiڈt֭yxxxsN4iҤP`oRRbbbf}ॗ^BVФI4hkL:믿_M6󃗗ݻx{{Clڴ GF׮]bxw2wLQ嶤gΜ #@$W7o{͛7`Fsaƍ0almmm6=5k[Ex&AC*1cAUt1 4 (QRRR5jx666fh4Ann.!#bdԨQCQ%XSƼ(_~ׯ_]\\;<1T-"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"1cY[D"N:'N0c n).<0zh@+=ztEHzz: i=ڴi1c޽{X`6nn1cWFE̛7{AȈ#pR\>w^`ܹ֭3&N#;8:3Øh},* fMJ-YJ)~-(7ZKVTP${hA"[0a>3f~ɘ휙 c3sgN|뾟)S {v*V)JB\C<<<2|ܶmXjԯ_f͚a/`j *WLѢEa޼y>}f͚ѠAXx1[lϏZjeOV1dz>oڵk3صk&** pʑ#GX`=ʕwve+Vz)S&DPED >:uBjj*͛7gΜ9߿3rHN:Ŗ-[QɄаaCf͚իرchΞ=˽kGG_~۷N:ѿ9ibͪx5kF #)4BCC>|8͛7gY0C2}tJ*ŠA et֍jժxbܨY&=m۶Ͷ^ݻswK/1uT>g.S }X"zvbͪoUO* t,P""F˖- W^tl_~=G%<>PTuh=jք;p*Vb<8|ARE5T+Ϗ?KRre̙C&M2dΨW=sM<zaX #ve@N~zʊ3]F[ЧOPE5T+rssϏg}7xkf8.&&yqi5kF N>ͼy󈊊,+VPzuʔ)9?aX :Amx_5Ν 1N+I !4Ԫ,X=eOVccM>Z\٪T V۸8Xnjn4h]y*@"*"\5ќ={{׾m˖-ԨQdBBBhذ!f`׮]ԨQEѰaC|}}3e5kFݳp f{GYӴBB 579skN^J SX}[INVBܿƏs9Қ#Х$.~v*<FAӦ{oV-(^^=hƍUg"JD[z5ݻw楗^bԩ} "44Э[7UxHJJb̙hтzejժ<'"mU@ Ç[ֶ5k>k Vn]fc*V^rٍ1tUX}XI'@Zllm8:kW+fĈK"%W\Zԩk֬aƌ 8ooo֯_O@@ပ\VS~}+e>>>L6-Ak ?eвUe˪5rz5HQ~W]tTɒ4+!&bcmu$%#%"rҪU+{="""dxyyla:/ڶB-_>>[o7ހka&/٬5GX.lǤ9SΎcy}k-K۶VEe8#cHJB\CSiӦ %J૯"GDDO?1w\1$&&2w\6mʟɌ3HIIĉ;z(*T_zW_b:Q`+A >p77k}:48uJ&cV*%Ns9)QNֆ5+IDDDLkD\C\Ν[n̛7Sĉ9twusa̘1tЁ;D*UشicǎZj<TR$$$CTvK*fMjZ}UZ]`xye0sk1ƌr5a< `-o{wl`>ܺ{d7eVV{a^k7qAҸ `UrDDD%Tq Y3MD :\x3g;.\o~Ɖ'2mOw|}}d붻=ҫ6OOǂ?w}ZU%Inr39jMKnRSlY+ٚ>݊s}f͚ѠA{űh"n6Yn 4q+Vz)S&Sn3<^q<=TlcU'SL}6%c;;I :ł] -ʑGX{U{reOVccbL}:ZA*LHHNIBZmo#>9uѠlW:c0S*W{=|((""_bxG3lꩧxg[n4nܘ^{-[PF aÆ̚5 }qqq#LCoi49svɲ'wR: OOk̔-SxG}?3N?Gɲz?|u#>#˼. q q<!--͛7PjU|l'AAY)y l85'%- L PT]n ڏ_^f7fMat:M2=|:+f `&Mo'46G[d kݮ?wךc\"""ֈfIŋ$99M6s}1fkצjժ 4W_}+`\ɒ%HMMLJiӦeoWO$>9"ޙ kI\BEjgrjrRM*QFq+BwU-c:?䟾*W`\!6!*"DDuLG#+ЩW4y)[>r[q*t.^dɝ\H'sO{ S"""72q Myyxx)UO,uR#""") q UDDnwo:}Sa\Tq 9TDDDD JB\Ct,P""""""UD\C\uN?gJN?~o%K*"r1|c-ll6*VH߾}]6~-^i G?Cr2- ٷ[x5~z (^<ﱈH"=tR ƌâEhܸ1Νk׮T\ųx1ԫǎ…k<|IvWl??f[$DDD0PE5T+ղlTVMsL[~&9駰u@iMKhi]'XUӡo_ gM17ހPJ|DDD$Tq %"rE=ԬYDyLK2e~$vZOСCi֬}a֭,_'|]r-d■efO3X@۶ce>n:Сqw 5kZ %s9WTrs ǠAuB` ̛+W­ZU;E#^=DDD$wfpB/ݻ7gϞeРAN~zFɓx衇ӿڷoOl`}?u*뾋Νjԩ_Ǯ\i}]NFtTɒV;BB]{X޳*THꮡ\qnnnt SҲ_-[u-5˗gnuU=]:f|k{vV9]87.]jWн;xzZ?;P""Wի_~ؽ{7G̙3m۶H"1S6vŦM>|8ʕСC-SƚJy"=Y֚n$%A'?v#GѣV_kZӞ`n+I9s3;xbŭ1~Fִkhk(dDDDP~}2x`y>#nիNRJۗd6m_|AXXfb޽*URJѣG8z(111\p!x^{ ?k}GjUk}FɒݮZs6/hغ|ת}11PFchѫ5R%kHruw/ONcUnW~3fXk>bb"~Lb-ߴɺkט1VbZCCw QE5lsg4+8D8s \S IDAT^.--'Nᘴ4Ν;CVP Xۓ;Y9gjU(Q4~kmF6gۘσ՟Əu'^"lY`{"'Dq'#yL̝̄5Sե-pssTRYnϭurE:.y!8<#Lv.^u))4ާFOB\Eu_?0m5lJv"""kk(xz[_"""zJB\CEDDDDf'"JDDDDDDk(q*"DDDDDD '"JDDDDDDk(q*"DDDDDD '"JDDDDDDk(q*"DDDDDD '"JDDDDDDk(q*"DDDDDD '"JDDDDDDk(q*"DDDDDD '"JDDDDDDk(q*"DDDDDD '"7d"@ZZK>0p{%~n$={ӧOt""RTq&9t. 6ۛ={ұcGs׮]1obccD.lذRbE\gNgk޽6mpM7qM71tЂIDD2UD\HD6mZdɒ-Z%JP~}{9vƍٸq#?9 ]~=ƍcΜ9L6qׯ_oƖ-[\y:W\^z?qF>>s=gn4hg}+V(DD*SE5< :dү_?4h@bb"SNeر2p@nL}r-/_'OҴiS޽;+Wou]yy=kFb\cǎbݺu00ڵkG:u… cofʖ-?s3ϱƑ 9o۷o}[Ymƺuܹ3L:%Kp,""RY3͵(--͔+W&44Ԥf۶m0ٹs1ƘכZjٷoذ!C>e˚eooo|rc1+W=q1Ƙ7x???nߞӹ 6xxxJ*czGM||1Ƙ%Kjժѣ 0oVcewk׮55kִo'nnnfر0^HH9y?ԨQt,Z~ɓ'M&M `vjol66e˖5e˖5Æ 3fȐ!w}gϞ~… )UyM6m `^}{giʗ/J.m~wƒ3sDD1 2o1Ƙl3rHc16-[4[͒%K<7|3ùyNŖ^^?G6kfj8|̙cmgswz} P!do66ql}c_.=g>wLs&"vMVp;ffϞe"2yd`m1{1 7d,Xxyy+W:׻kh#>>ޞtc}1c}5k֘e˖ի*U*DZ; }:o10%K4_~_믿n?622֭ `j֬i֥K&MطuUV5ilٲ9rĞ(ۓ͉'dbJ,i_kԨÉH``9y9uꔙ9996m ?p͔)SxW3fC.u?gw'$11͛b ^}Uk)QDcwΒ%KGwބi&7on^/^z꙾INN… 52d)Ž;xt.oX׹m۶,Y9sЮ];+C=e˘={6+Vnݺ1&߱]. ξo/κ޿""8%!q&"Æ Oׯ,^ovt'fPO99(fΜƍߦ-ӴFŋ3OJJlݺ`)U#GdРA@ƿ;cΜ94mڔ5k:Kv:'"'3fG<%K$!!zp!~W9YWDD'5)S i֬W&))t~HLL阢E2zhzzwѣO۷MIIXbL8 60iҤ͍Y$;־&9+YoN}d 1~LҥK۟o3gF͔)S\-\5kұcGƎkF?LFd 6jժrJ{֭޽RSSbĈDFFRJ>3cjժ|̀UVc:usL1g} t<Ŗ^W\?G;Z$!!!y'\wͺԁ̣>jf3nnn05j0K.5o߱ۼfm^u{߳gpwwwӴiSwߙx{{իWc XhܸqrJS~}ݥLݺuͷ~k?/Y|={)V}{%̪U'ͪkך#Fwwwیǚ~M~cuw([۷y&,,4jtMbNj-2r}?`Tbz-sYsN5ʗ/o]N[GfΜi `-jyݔ)S2.}uaD!3%"fΚi":>lHLLdϞ=={BCC\,c \pe:%66@8WR\\'N 44Ef!WNBB;wzcزe ;vd߾}/ƍ3l+^8uȑ#>}GRhРAsk'"""*"DD &Mп6lȸq㈈W-RRRrml9VZL:5kpa|Ih׮9ժUcҤIP䵝\])vEf ctڕ^z93*_pELBN 7k,Lb8x {[oe޽9v"""r"JDPJLLyXW_}pJ(Q}v҅bŊg}_M߾}pF 2"Eclk;Tq %"R(ܹ(nBM7DN8p իW;ߺu+$&&RT)FɠA8uT浝\]#"Rҥqss#--~4>̔)Sk=GZZnnnE@?;ŋm3׻wo>Sygn:7oNjj*w <<___iѢ*TTR,]駟fW6mx7rm'"""*"a;kXG8N8Ahh(E-T}FDDP\9Ǝi1cǎq1<== 3>NJlc :L=Ӌ el"rcPE<'V"'3!r2sg,)(}0o_Gs奟LZnutzdY3UFHB9O,\iKҮzEBӳFDDDDD ])HMM"IHH --HHw+)))LٳZ2HHw+iLZ'"¹sW'QEDn$JDDDDˮR0H^x+6IJNf8OFT."""^Vd̝ϩS9|8˺|ʕ+~zI IDATkG-W"""""^VkѲ}T~wEMMMF\/Ys""7UDDDD˪R0"N"EpeT:| Ƕ?|>۶IjU`X&OQƝ"$ߋxEԭ[e˖q}%/W0g|֬ 7O?ݝ)nC00w,GT"?חJ>n#9s, oc7M[6cڟUƎEe$''3W=O).|RZjfzTz3־R TVOOONou4.o?pڇӳ(5Wȑ)))DQF,XdHHLdPTI||d||w;s)S?ㅁL=К_~D̉YLSDDD9tc ~;l3XӧP+VD;Dl_6oJZZ27wo/&q-IHHt";%""""R]|=ٴN徖n<ɡ>1L)ӽ 2OD`ԩՓJ`clf!?ȗ3Y$E*ӧ9|wzWZZk///~iΟ?ϫCGcnyשQ*Ou{wƛ#UkXUUq4X(BS8} wɩSy7HNN?!f|1 g_G>_K7fe lƍzJ{LޫOFh y OWB=ʌ30гgOBJuYÆX1O~m3oƹss|z]z4fc%0 m鱧7L y(lsg4+8DDlOqRԩx{{gw{i%};[Umz9 GCR)9R$(DL8v&q"(  FC!,>$@8p6"K%H,zݪlp.o鞞asGS?[SsppOO2ovv/xy> @kEeшd QJgٟlyjWW_zowZHKKKKKKSqf~͛7 >qY{Y/9?3?ÛoK/@ץQ#)!kk\tJ i="-'ZEINOz{__ o1җDU78hsDZ>NHKKKKKKSϓ_w>I}Op/ >Uzl!TGDHKKKKKKSχ)B/c?#J!e4Yh! ""U\>apV;}9= iY+82A袃S-#ٔ;[799zk!R[dZ#7M^lq8M<+\֧( Lc$i̊YA1H`:Rܛ>]wec!C;sS˅Bc 1Fbd![8Ō!XdXkGT*fy]xe;wortjf]YE=)-`5>[%RS@ XY|Nik=yUB$Ax&{՘ږȅu96L?'o;fO!@(e97 3/*soo'c&!c^\GMA!3 \zO\,E ;w!ys7QE'bEYI,#R&x{|ܩ뚎8 nO&̦worxxh611tu Y6m)6BG|Trd2dwo=v^?;~) 1(.1){CXT#@ba1O(1MPHiLrr[aɅŀ!c4+wu8+oWC)|(OØWs Dr 1Nwv׸rOǶY|Nm=J|_ H:{@ ݢ sNRy|Oι$ YЊΘzH)Q5HJh4&Z &tƘ, 9M5kaT:Fc@I B@EH !B(UI-ш(2:RdQR"F@uJؼ uFIq!:P5BdP7>C[ ĊRzSe=!:,'YuA)(O $ˤhH/MFU\ӶyvRJBOz8 Qr`j.`\I0o5`9kP?kx]SQuPM-:9R( tEfm&DseW}6_1eYOKmP0C&{> \ Q#Dcu 1B}R$0WSb=WC|h_Ź /JGnqʹ:ٕ\~yJ :jA{w(qlF*j2Y@4~CjPG#̂@474f*JVPEkߠ4ܾQr b\ak[֕Gc>W1T-S((c\ƞa'\)Ԍu]3y;~[+׸paOQNgɋ :gǸ ^CBGgi.1" JAQ`rBd@4B r\BG/`ϝws )A^v.]b} 4bk$c;Lvjދr.iCF07,hN }i0n˱]FMF((cY ( =t1Ed'uDjI`-g{c>ʹqq$/Jt\x={"Ieh1QWS5*1R5N"\hJ=@ R"vq'o(c2!C?@Op"F e"lSϺлQ2 .Ã䥞z|3Yr*zt:X173xЊadQPD K?(Z)&bjr3l6*;_2rL,{{ܹ}A`\ckk~OGy,D!*1txQV%Gz%]n}ȽOFLGCv[QG*dh3A%T2zEM>ǹ>6omEQt9ΉQ1:ۯ{7 ~%jt26\|_783-#ea'Q1 c;x`1.,íǔS4Xy)F1flAB”RH@d9gٹq<䘖}I߹`V<CT'%=44+tAΚH|Tn&g Êb 'Ŝva>Uǿ;y(b1zmޤ"0Zu}x|U-A?QIRJը+cr)-hBb T@V !JULT< }&Dtp8ZGܖ%Y1;>X7&7u(t#Car$)Jhq5x !jbE#ePy*JuPڣTQ #(yߔN"n?hrL3ؘ0L'p{P^xĘ<;Đ=Lsr|H 7&^EV3?IGX|xL"KWcD Ce#"Nc25䬰ŏ |f?j .)ƐL~klmlRu,hRD@>#Xh|e CVqh;7p~ywE(`e@GPz\)VL$˦tlDWW{2B 9؍̪uֶqn+WhQᄺ*`.B = "}ncrˬ|vw*"û#ҳ~wI(pŽ!),L aeDx^}FZ],nmwrmg|]zY_[A޽y箥{w­=[.sܼ{į@sAZ&W81&5 C>@E蔠 HEsyޗD6/%)7E;D,JGE"ʕu/¦N;N691a2g`4W&I rFaSW}PX֣kG\!|ʿp9~4ͼ9arɸ÷K8řm鼛e8|yDF4 o?sUD}yw7JYΐPpzG\zZk8!DcuV]zLWg]E|+ɠd88F9*FchFB1! !ŶZkZE䭑Ρ"dB- .Z )(Tbⲳ\Л8dfTPLP 6L, >i,#8*C)^x1%x` 8ý{G"H͹k\>&SDϝ{G3fQ(Q!%#kΈg=OMG F$88{"É)Av0*_/'>.\QCuEGitL]M;D yuyo::^1F880(~y_1Gulz|+%hǎ31yQ1 6xO2ي^C;(w[SٔڥBٌiIΡg.\wߠ0tN279cIvj k:6+]v.s~yR*%%.Yc")=J:U@c+EB$8%dqI@i %TNe-e}4-#F4J UFȵF rvRQFK)o$ "HHV8"28>#"\ ƚ1 WmB DpX8X '4|lV{P #B aZJɽ%3Y ;Z\t:U羴ͣ$^?6nu'Q>yaoxINj~1%J)s|s<{_~ ]*?e2ql8PZR5!"~Z3ptwn( dg8o1q4K_`c9G]Pa 7;v%.vG9R!*CCH6V2Uiduu}Q#燔~4b:Iw=[W1Xzx( Xs5B$L*k]>com2`?&ʃ[;<S[uza!YRkCǵ%If:oR. c&c^CTEk OEάèeܞdu=ZPffE FDI=bቈ~7^+hm!N3]}*5GDS6Xhrыdmm_]#޽{G#û{q9# 97o1`AEK`ExSD\ S ˱og&8UQl}FN&`/$Lk,S"BE:1DXqF,DIi7f<¢l+-6LJ,)ܱ!y/~ oLzϺ'yyDO\'V,F WiM tSVzYm$f:EII'R2m!dY̠tLNtu ւ>̜n=뻋$#dkMD#!e I OE$ꘂT 2,*W%ǧ$4i5QNG2S@WcLEr1" (4 b̽*7)`'rjg\Q}IEq+?z%Lnqzc'r UK/׮̻wv˚{7zlaz!(Cޒ!kO9 ݫv-K;*^E W9<u1TBGB$ӕQQWM]p+>^xsذObk[_[u.\,xU^:DdAUՔB* Bi$W!7^c˝7[_稙##ӽSB  ZHb']wTwZc>=px-Mȏ>ϊC4~Bq'/6@DmNy#ܿF؝>ilV r/Iy60NUYVZ~7/4QPDR)\|A,^k~ZbdIP3&mrmqɾ/N!`1Dt.a& "R46}/k얰?`H HU䍋NS\)rD RITJEY^*H xoHtXaVc)̯IyCtQwiK—%^iȳ,V-1eXt4ew<#Gy6m*:.?doU?c7"W7\ttukW7{dԾsb_/ݛ[WB|-xN$Olj-DZ+m¢\T&]E^<SI RINd)^Ҭ)X0^a<a \o0΀^@BI8 .,Jf_pP Y."˕.ڛ&Dȉ]呜O&''C\8y o2'ds+\|WgUDTɤA747epMoTﭫ'ǹjFzdqti“BY ~1_}wx8K.@K@J Kǹ<=}SQB2sI1_h1GPr_) B!HGy&R3ZlQ[(ȩtsInt DhOqI%?M Yұ$ƆǑk9YQmnSƸϢJzAux*0K9 g4KG"B9,Lpqp/2tkBRJuѡNfb-4R)j;>pn3wg5"bքf6TN =I Ӗey8{,npi<΀ 8ۼ;GWw>!lUl (#@BN{ d\T.woᅵkt6Pr #I [dE)^xu޽s_?JAXUog~t+7M+2dos>I.n"O%Rg_Bwr:dSQ3Ў8m;wwv~\ ,> W{!+BIN ,>ی++D-,Jr '<s׈"yN{1$!JXhRX֣9ɣT,$/+k R,Mb͉*dBq6!0~s< ! VBq MR)1WBdKYxTxfy1 kYBB\aꨕBTϊH.)HԞ~FWg#FW52H`1i1QגVXW׸mhtcѩ\x!U@;O4qwxOC4&#+#.*4VB!TyDd+.!DP%e*g!O <.iRBRQQBg)@sE׈ `XMxe;r&U2L[p*CiQ1׹vӼp~l֒sh=dgz~ź1Egp&»{GCn$uk-UHWLЕ &k#Ÿjt .K2 (:cap+|lґ,!a]lhg-T]I}XDY.)Д"vxږ&lnpn gy~)paE,hZ'ʒu'g=!̅ k-** / #H Wn_-ӫ$E.1tdk 1`2> P(M,;3*aʁ6)ߥ,PBEA.X-i[F\`JLYLVW9))꥗娜BLO=EQ%45%͊+TDxb[?49}5|5aJ'X5~vYqI Op;6Y\Wl;x;#1GC| #_p홗xd<MΟ! wR:BGϕKWvh" f?9dr4b:`+ue֡\FzRR)8Z7 VW.?k_QƠTsL__6՗sJu 3Ӛnaty:۵'}Š^5҃HsjY,Y!1M?6mu.S7ҺJ'D6X}`/s.8O$XAQ"Pk$.6 ܅H]Yځͨ+˰ ОLd ""Z(P{].\WMW_m}}l(N !}uᵻo?LUYz |sL]_O#~~܂^Hn|>є:Dl  p R!WNO2='A[͓B&c'nҸyҧ됞XW$%}E\h b Gϼ Q!Ia8yBH$/j,q5yz5ߣ首x{zîl$\JF#_9$dž}<}?﯊|=k9DI>sUDBB\;.W S'f*ma:%?HfUJQ5x{^J[M-%y/,jʈx?KeB& D`69 ZiL|uΨtLKw X'R\`l[zI)_=^K )A"=I&Mр{*D{_m#i |z']M|{>RxBqj#HEyts,Ly>/}MQ}5, O';ޝ]&bn\[=P yÛ w@5 LƠloa%>`<8g2cTϨ)1T"M:w1#ʲ$J2.k" pdJ .\`sgdZ@KM>2w}rƼh83 /#ki,+UeT<緟Tj2uֈT $֖<9e̪r   RH@XEj^B,B4ni\.W]9UoNgc8'ιffIO8qbG?~=*p<>bB>D?蜫HR. RP%Ma$&,K$|hqH'8q+h[ṳLQ2 c(@Lh{@J4^xgRbr}(@oF~_ԉ.yiۆ&^gosr"I%,4KZr0TB~ Ŀη;ߋx F~s%Z ׿UBҀg]p m^i\E`v4X~7BJcp({Zkjf lTSbH&sےE Τcgpfln5z[s2b>7Evy㳿n? n9HV-T@rS bo RK)aD5$]&R>? EvDHx-T Zz0xmE `c/>y1)WU{VQjUx%9RU9J!ZJ vceB{/X׬Bw*RHtfbK~T:J)@U }iٲn+a}Z~6nY gϞ2ggtMj./(%B(J& 3.9 3V'S_ѭ+^2c)tK+%kE:FtbpR]Эr}6ö!zMBmK9}KfS܂VV%PTȔuXe2VǏXGsz{U,'@ao|Ľ:<`*RUt:w m9OEI],G?8%@ fE%H9;e^|,ɡU54K.9ژX4=A4Jg Km'‰I{l583 opFa+Z IDAT64(.ێŷǯ~qqnYU"ڲ o.4&NKm 5>j}7V^|ӆ7fs߿`DX [(+FR6xnތ?g|I%`QŤSm[Ҟ4IFX=`01wl! n(ÓeeZvv NbOd h=͚A+:6Ѓ}LʓKM_ >o-"!Jb) jv%Lweվ22TJ>s%#a#D(`%f,w*UU!!xO=˝61AD h5+)"&3tD1JSE 6mVv5Y4x%4+Z,q - &'xzM=6"&r:Qksx>?$1kz Eb.ѴKdҭ ienXC_+\.h.t 5]WÁ8Bsͺ^8ǷBV&W4> !@D/*B\Һm=1I&Љ3V=kts1|)cT@i;}J),Ϲ)'b^iYuM]*_\B![j" O8NxkQ)k~DIyTh麎J4{' <֚$$ 8b0Pe| P49cIkRɐqt>L(iD"FmFM߶{ ȯZ5zawODXm7E h{.~i+I6@DR}Lro6&؀nL-%THf`!rc 7]mxY Ch1h@YDL`8X4Qa-:bkkzKsP ߎߍ!n:l:qq٭ʏj;ǒ3ARzԖ8+]qk Oq>"0>))Ivmdެ3PKY<1T$D+DPFJ*Sҁ\"T@q*Qlh۴o+ѦIeU[)̈́v#UbDG`S6${z6Rmz"@ljc( CU21tzlã{0LCV?EۮEOMi>r1qU3|v:5?bt)/&<^{ujJC20g| yN( D_=MӐH׮@AC1 BK\;@"#m麆feYKI]aKr"M-vcP~ 9M4mع` "tnMZ0K ^kk懚_,_>.b͓׆wF$gڍIY3"ūkxo~RhC P)q"H"QWy)|@㕥 . ƒ%H+N v :#79%fVbhu(M!ehOZ|ڿφdw~U7?rj@Au|9萼xa"$|ߵ|M NMn׺PNn cr6V!)zưY-#(CN`zO@M0~$lE*&H!'[e zw8V†jp}{XNJi*@|n$q cewOC;U+#HlA tk'U7Z7|A|΁֚DJYwCO'UBwH$6`*hV ;9'sa vGw dކM _PZ3ADdH|Vkwhcv\1\DhoYXez%*M0ІcL-TF\UV1ז6 pX8uapP$-/T究EOoۡ86x:a;Zͤ\8ju P rwVY: Zk*LP+-( J"FQQFI4k\u(Ed^*tpS5 D2 RΎ^ѽ7w|[ eŻ|ܝ3T/:yFXMnЃڼEh%ӯx[H(6El|4TmRBKJY"2|;6cNslAݹyÛ89dDDe-@UL&FA +Y5] 瘋F(W8nR$=zK(9Fap]j>F'{*?m a=ErE`LP -REr3./ZkʐHɐP- d5LObS+ZtbLVĔ[BD!p5¼7*#U H\@F2(AC n~J) 6I>USUMS"e(GPrf<ֿӓ)ݷOӹL]уG8?o)aWs Z 8:׿£o| O8SJ WW!zFUH8u&[b9ڜ!S"Y-iۖݚk8_ꗎt+;}Ƚ'+dAħKbJqAªmQMiV<}ﻼ9o' 8R (p`f-^srPrU,j kbY5 MXX.ϟ.EK$NP*`Qo}y^.G|=[蒐"dTܞaR8o `Ҭ`SVuRA Jx$b: 4ibEu_U+t?sw@5l\ K>8iw@o1Zk☴Fn])QCe\#*tarM:er 8lv$${ّCY:R;lzOt!QKG]/ցɚZWT:맄+)Bh]_ Қ!Dk \/\YX)jtD3ZOZtz)g.8-#+> aj4e !PKAaYazX`VB-&jZ@7avև|_~5~B)A4 7d4E9EqeZ1SxP^ǔ@MA*-k*XOǀȭ󻖥$w.cˎ]qmV[ \έtGn@1D&d7gy4"3x[Rh5zi9Vl[b}z+)?@q2ŔOd`|ۚI۷m [;HT_VgOn9=knI֙ Iy6Ǽ+)}[Vǝ@H|x*Yp(w+AB`F|{gs D޻ZPEAQ1Xal6ZYb&yBU6IutTړbm^7n;q=&IPEOI!TL] Xk ^ +XT Ȫ,|&D[>CEZT5ajع6Ցʂٱy# 86)[1'c{Oǃ^dJMn#>i"?8].$ ݿ~7e׉J]a'50T2ĝG:`*DU~6S&a)l!>49ԦJS(56Up%41bR=CNT"hȓE+!%fUlVcmsNO'׋cgx;3Xq#cfr)'V)|J` Xkp z!%#uKDk/"YZr$UKd0h!x2a)*)WxїГ(齇xy^"6C:NGBLmI&->N[}fcfd?`)"<Í-Fdd;A]UQ`oc Éj`-!2dq>HÊ'2iNM8߽@;,wjwn6Tv  ;,\98)v ]/Cul no4q<1hLAfiNpc'N" ;c&;l]|Ǹɷ),&cĚy/ lk rrĘ0c[4XcєJxFP(p6 KGc1&a C Kߞ܈^ 0y$jMP"P`%R9MZ1YYdBgJW,uJJy T3Jõ_X״mۯWhba?IN84s22cjT.("eKR I)&HZcSݕIk|aqSѪ3) $US8)5NEL*r)V!qd m@rBy[\,\hxެy,ݔNf79Zz9)>M}Ξ*.ۊFAۼNd0:28<'VXgR%0E6#V- ;KΞ~ȳw/y%֯L_|jiXs){_7~/}5Ür+ٖ!/ iKq;TZaLneqZlI#P@"&Hܨt|F:{cY@h{RDxL~ 䭜U7naXj{ܴŔe-U5`AxKp\1Gn yл Dٹ2^r|.w6'-cJ"4X =B`xTԷ ijMcnӒ! aV<1dV`G[D('+=\*]77;`cYoA0m'UOX.iqfXgYa vу* @@SVs D|~P1xHJP*j+ UZ3*Tiz RozJ#)**% D@*=#Ik" 2)Yi1x{IK౶.J$BV$%Z֛x|s@m9-Z'g֤0cOxjMݷV5:Q:5Bѵ9ssNJཧY T<=*ipx&tdZqqCge]xwZk~MdheQˏf·ŒE(HUa$`D>(Q{!1A,.nsBu*^5MT DY4 暋ktp=*ůΗrd~3b%~I6W>O'%xdaeWr') eW"m*RD5Hx7<_oRξ?7Y(L&_}y_"WrX# ;?qMTTִщ{/uH4 T dxdǏ̖RwZY"d-Y)ѫg~) MhR}oLDD2hZm@'SA-TB JRʭ`j|nF׺#z$Q'Q]*m<D,H?v#່1uRxC^5`̟%'IQ@Nf^bhK$ɭcW[h-$,wo! >#-ḟRm Y$5[L2  RH7?+"ҳh#`Y zAi:z1tCn#.cvLdG] B-I:_(upTQӥ-SøEq ITЩDH < FX+(IhA45*aJ#FЦ=-yIRQ +Ęjr%E\1sdRp|OPzRpre)L[\w ?^njYJȏ`ڃmzrV4S HAĪȩiy,&f|dgPGtN@ñH5^{yT>؇Mk5o|5;o'ɫ;f@pz@U9jѻ╌@*`nmJ2WA y}ftvD@5 J)bF.wV,Ll 2)1Q% VAB Ozp#:R4LsH؂U֐s3FGb?=hE*@!wcv;@z>dˎǺo1( ˔Rc5l۵M~bB_{E c|t NZ)''%&{iY*WgT2:trֆ~"ŖlQh\EaMv*4{l bI=Q<<>bx_'%5b놉z7&6@YyҔ_#2O.yɀrE IDAT,_Ԇ El I-(WLCvK p+^g\!5%5;T&6<[Fy/N GQ月m=*qX ]AҡK*qeFIe`ec< l"c3F 铱!/]lCU ;hd#ԗ`w\5UeLBnʢ}ZGP߃eH{7Ճzt&Hk{xQ>Zv* Y*n 8n!طxלWe֬[$p`m#8Xn-cj4J֩Ƕ֠|ߞ7`LAGq&Y8vk1ڎٜMp:j lH$[3%-r;k:FVm}l3{ b]+hqFRBEA@K/Lej 1+w֐`+26@H*4dj{Ϫz>G=Z\+JZؿǸ#%A.Ҕ}/+ ܪ8X҉0 %aH}\k^-&\77ߏ70)i>µx (PMԆEyzs렩C)#~%Kd,_TRUG|pUiEe> sfi,.LTvN("+HBb8>DR<:KIx.vE3f&!敒xYq}ͤ \vkbdjiڂrt\ -[`cYY ھb`nU&帒` oQv0>1@kh~RcLFMH"LQ kl4*A= :fL&%az<0(س^q";Hۙ*D\ٸkT[C랼&H~'qIhI+;eVC%зU9g2Ǻ>o nel}{\-e!4"1Y.rLpcCSdk 2aZeIU d27ЖSCv):u&)gY4 Ҋ*Qfju@Qv޷B<>e?CDH}8UtcjOy<? kQQ67gN<4D??{I+5imD₲A$ TԈ9Ĩ+8\xxq$RT Jj.1r ZPz _͠x@y0#fIMSuţ‡!]4MS$8rdQtC?IH* sOO+xm)bҙr€_JM>Uzv6hF۾-h]s ԎW2[mtۀ7 KJXlqmJ2NϾKJ$uUGLF;b0/k% (*oy pRWmi3bVbjRTIMkD;^dMuK}#zO}⶟D_H)"ir]x\/)S`+b94#EmA'KK\px,\Y=]p]6[2`cе2hyy5!i\ixp_$"' 1$M7%>}FH 8QE5hOiJJ5%!RS5O\8|h+ '傕 /&YUQ[lÕlSؐ |JM_퐭s4ZѨDScPJB+E1)$IQR-u:F{|' 1V DQ/+,#^F:.Zzz\>VdǛo7wD7&lG9#EN RdA n_FlJQ @(! P{G-Rt\֔wڻIvSFk7oѫՏJX-/7,DzƵ;Wc2e_1=DBdۦߍ86 "maNBgmʂ[ *I&DU:/ cuqS~HTGbr`f&jn,b5S^c6 p`L9k3-p=Ԍ]7ag:MLTWV6A 4L\L Nzs|!|0$#@J;cX,0DhdzdRR'yKQC~qoۀwqRoOwm'%w1MSb…J1eauC㹵WœX^D 1EfѢy ї,+?hJa6=k8iH1`̫ܸju&:9›)γ^3 G5GE(+&G'ERԶXCJ3g\]?lIw&(1*`H-"}t!), 9ƈ U F(g %ؙs}pd1e?=uiyv}M)Ǵ$8v&{֟|o ϧA5z PFqPQCN{*0-y-usE|׀DhI1Pu:kºABCiA V)T0x_Uf/My7R ʖWz=sihI!еBv3ʲp-W]cJ-,YKx Fr?=QiZ hOy)1i/b@oxWE`~p!O>az5BlϸGXLu8-O}k%hdJet+N)IteŴniI"H $WX R@cĠw7AM}C+j\rۀqy[w~s5ET +Wp幽 E3C D/ DV~ jMe (^y#m3Rǁ_q\֢h:aA4!nWsGGɟ鄦i肣X+J1q GC o<yDd FDti cg۠Yqmű#vߡtjUf NY*n!'7&4mST M)'Bp)1 U_dcM1nFpYG)Em2heeN;8%H)VD4熬1B7p^~xwīZse a;ѥ v~ʥwL(P$2ass8} ܏ZQ2$e$4!r]yr8dhTUɉ#C9w?u48Y>Osm2RίR"K%Sll?rOӯ;Ӯi 4\LCLZa{FF/A\UZ(_ XbJZs~e9ѽͻ8r{6M 0 !,\|DW,I,:2tE/}^C<ψ ńEj9+q uoUQXk|ᳰ7WŖ9:ͅ 9/~b}M%CJVԱZ4}x2Wɰpj_搋)Kd/)ژGc30f-.}]%a}QcI]xZ9XFeHůZCJS]PK] Q u=dYx0P {hu@ Jю1XkȎjRsy`XӜ^KlVayN# ;=H| %DL!D7P!(C P\S<R4\dnBm?$fؐh>n+x_i_oWPmϪ s"RHG}$m"dVsΑB@J3x7r'1EҷYmM Y=*T1iFH%UXMAZ>.x &Xm׆BO(f|A7ǧK>ϋ^{bA]4Mز3[#-[@B!n`'H)^yűwЉqhҀ(6-UY!q >:BGCH /7Bl;YB j\c3IGE Nآ(ك=x=yȳ+-;mС@*q_ o>ùSlr+6̹+g;LEdcg5o~՛ٛLYrAQ"&PހAOS2)n?=!̲B )& d Ϳ7Gp܀Sԃږ:D4b08xt1$p>Ggs]|O2_C~TxWt4fmX30p qZLd dC=fxOMOѼUzO= ڮe:ij_}=Ɖ[.({^GN(`kW➻|C<ԧ턐Ԓ,BgqE r6fPiRg;A`j%Zr.O5 r[9o/i}<ƕiM{;p/_YgH#c=[zcn/j+ nt+E߿Ωw]bn&> Y{MЫ"*i>`\4R/E c߱f 墩VG?ȓ4w8lr}ptqF9D=ybm n#\Rǚ|E-+ghp!o3J2K*Ct(*\Rʥעhȸb%A2ĹeTm5@RK%#F$ "N]pԽ~ٰ^10 פyV M2B+6 %i!,̻(U1O4=;4 Zls'.P?ܾv)0_1e)srKo -DlPO1ۀM ~. :Td@ l\)&-M2DLB$xAU)F;HŠfcn{Yϙ?D:v;=!2yAZs H1bL9'ȃ+MWwW!S1iKێ%c |oQz=bb'B`w5Zsn6E@$6(YDZNV'N&L-TI*X-#R fC C9*q7Lz~ԗ<{!WW<3lo 4DE1 i=.Q'/iLpR5%A\d~k*=ͽw˴mp lmmQ ("9`wS@GpS{g^E)d`L?8IM?D5vm[G@Vޑ%!ZxSTEG) VdWp$\3čCғD)IT`I`Ûny1w| {Mޫ~CWC|h\Fa%*TB&Q$-8ĕjBs~N9 Ǵ#')%JEL' E%ػ2\о?·_=V<[8' Sr{D)$\zcU&kqiv qk)jQd^}Qp oMX_ٖhQOXSq͛!ڷFB9tڼ^똸Z))dA48ob %oJ&EZ: 4ED_{ؒE|9*- _dtpyYQ>! q(ע0YD!EdyLb%'$,4)A&|~s0Yu]7')2aQX!("()2Sz(T%)a @)n~H}R|eb:~ilR!)e`p/.WܶNT}~7c0,7 ;mغO<{_<Ży6_v,b_\Z˿y,d~5d$=DfIDEtAgPf3k 1 e&dDHb3K(x3qf-D1)vɑI1O=?fRnF; M"cI(76 [w0o/gRuه&#SC0J{nST*!bKd;Fh!٭}M6aeEh{ !Q 3A!8wy>:T@EK#AZ!S,BsH> Q?K |Wygk8Β~;qy|j9QN{xM?1?&;Tݔrw-zNPݑ#}>;Wysb(JK$b4 ^ͱ^{v"w8jN?Xy'nn2ɡT^1N*Oؾ X؀ $+xzӀ *Ṵ! xR{/OMWJ={*^G#:JxRxJXP5>=%:t;ZI|(&;=^~ce:ІI "F8+&JZq{DnŤo䡈}Б%\kU?EF2r~ȹE#4<[=`]p ܏ÿ/ C쾨}jh!R%ZkgXUGx7ju?'Bv@Q, EoFj!h&B2gB,TA$#;R] >ɅF4 C@8?n>C'Zk=3Ę%A D$:W"9)C]ts䪪жa-`^I^翧eV^ YB!+$ y߀Vcwg(%G]wm<~h:ƧlfaQFǟu~!' gxkOpE_L!<-_-g񑽊}wcSQ&-1y$1sއ #%sȪBEXB'vwLJ=-- X;ś~ 3w4ܥfcc%Pypc<H, k GOS=+xO፯oxw/g {Ƈ16ec΅E cN.!HӅZe`Vd:]d}3^N<eĩZG4 \h$.UB1l1Z;fM(Ev'ҫ_qz;7 kY2SXPT f1DjMQxwZҌ4 1 5_┘Bo@7G!4PVe\ \hMhHAd)&>D7,!y2ۛ)kh -Bi# ::* iL#WGE3@ن jg4LJ)Z%#1HFF|Hb 4XA"ÒZ LJ ٯ8;''=Svrfr <B4#i^_r%>V'P{!o:ށfBl[pg}?]o%X+ugۿևv- 㣔]5сYRuԠ IТX(#Ȯ"5xlh3:x?s)-ˈK{9k|AZD=TsUw^+G)4.! 剳X\C'Iea[8*^@Xj\@y znbMD{|E +2 LUҴ->Z41Ѭ%$J =IBQ(f~|EDB Ir$82 4:5:^|DȄ $* 4RTP{+( ŃHh ^Et8RE$0i_Z@)$E)|M*YhUK!擓 K(Ѕ eNFL ^ UևRR'ETLDCYz{/{~>IvxjǞLYY>3B jwr|s<{qƤ ĭ5N-W_ǟܧ cn?3Oqቫg.](6zCsTeڌL[߂뼺.V|<{x4NK4 `m{\w|3|;3,7%YΛK ڜmN.TJVzc7&D6o:G%u,kL1ZLYS׿i vo(%H10:Dggt]G_RZ@ҸLP43 =zB0~jb#wx?rm\hgD?#1DĀVt!3 1fc:=u IP*[7݂rS!R RIRlh#Ō: G5cG8{idp"?mg9Q@SЉDA 2B,lM Q̦\|*e*E,7<Gf 4ԥMpߍ$Qbb}g{ /9Fr7=_w=<̍vx{2Qk>i>MHE6v<69uN٠0-5!-g~˻D&'!)"RB 9٠.J mbg8Cd\;`O$9P+`AjFȜ3'##8pahCP  nn?|Ǐ.}o3 $byO&d'\٥[eҊ6¥2!SI>pc(LGxbۖDjzmnH 3%؈PSJ&{r=SCb*J`1򕑈()͡r!|Ȃp~}^XHwcj3簪%8weyFH7ہVrD*A)AE!-ZGڣ̦ s3DJΡZ~Dy6DF2꠳K{K8.R@#7hC .}N5Zk& Gy75EPpKuߠ85W" &O1Hɔ]/P&yRABD"BKܴ R0k&D *`>ݰ*W$3XYiGZ)I/,kH˲M✣E!c qunkD^P?R䘺)=h-QZC {Y`;4sOKT }tH:g$[#f{l\^IBP-JBpBL#H%>x![=7ħ?>v/QJI$#9O'@$%hD}b-:^s/O=~f}4#P XYHOgȚf6K)bbRf8!/0F$bt]S "xk_| GMJjh&h ڐ=w4ӳqMFp9`/{R]G#sggO?3bI[oC@"RWlGH-d4LczeC<7QS |[r ﰀkWωDN-"JT:zTfu%|U @̣"KH݃t bkqA"/H(H=GqAd^9]9Ek# B'^7fN|n*AH/"_fݛ c;O Iz?PyΘJH8Q% e)24e)W(nFQXa Isiy %9ǯ3h֘bڎoWy2bRu1O]4~ĩ->|86jfwUvWϲ}l@;mB&팻Ż ox_n¹:0=ǿxzWN~*{~ Q>w5]`Ca }]o-R 3"kBɊE@kwHQc %)E8Po m*9V=y6#@E4 ⽧ 7Z`:<;<\R[qʪGY ߲w2vs:;Od)-m;zL+;|꜅(i`&jG)EKRWpIB ^% ˠ429.!D * am)ȑcfN:ossЅZ,) RLdU]P$mII͹-NK`-b>'HaH2'\t5 OX1 Y( M"S MZakUC|ͷ;/OG5,K(JtYDY"rN]և:Ω_R#}ʕ=O3}*sd hygPA#ed:aWA; VWznwf{yx!BX3HS"U!ɻ IDATH2a29᛫Y,\D;,Pbn4wH ) = :GڂH҂Rdp<@?Kj3.V!w5Wg[xP aIڝ1PzTiN0M'i uc^u@Xӂq꺿p?nBsjq_nMQ,nWٛJLQڳ SobxFQ)'!bY@R$ґ؝580pkf@k:ps|bIo QR;a0(HII$d<.@FPa/措JE,>RZ]3y(`k^yq' SD22-1RrBHZ)l- ZlPp"! 6eDY; 8,*ek,/+f zR&ڶOӗuwO?`K1A7zl65_ >?DLm`k)_UkTp=w5bȕ݆?ϝg5fP]at׿8GC0Ew~A ' KWo?(G5](1ݳ\($m2 ǜPuwfYX!oyܵ!vD#Ȕ(1ʥJ^-C:&cG!D0JVR}8t"DgQ}$>ۧJl 0q϶l=Qf3mjhghמ>Mq geP}ɀTxֶ>)gmiG#q/jC KwB6vٴ4`_`.]1v=󸁤cdNDR0SBK9*O%On.G;i6Tl2HJ 2V}W`]ǯϣ}A,m Ds/AXGҖTp,(|!pӅ"LPD6j>UA&eA.Ti$!%BJDuZxbR΂_+% q'] .M*B^'Hox;{!\y((g-{%+H)ѵ58 nf`k$ntx̔_NZESTa8f:=Zj yALɖ7p߫^νTՓ,> E\W#<1&LU{@GlkBŀI.|vyո]I34;lP '{p@$H1`&#yˑ?TüA (֪/ÔVJk'_RԺE.;(x)8-_-D2V|~2xf-CFH 6 ڹ[:o9u/ehWR,R1CEIc0QAN]x2v5y:R2܄Y I䇱1 -YY,|Ơ)pnKӔZL2D#5Іj_*QׁIPvR8K*u<2gWG\={& &o99_yM~C nEQLY0G'Nix XaL@HK`lCMi΃|mcFxYi"Y>xcS~.u.v($'fҁ#ohhp1&YwGl^:" XzB Lf(.3 lZF%X؂Q;[1UƱ_~ ɍ 7ug⋸[T,V KDu3Aݹe4"9J1v ?+gNC袌 I=MB-P"]j4xXޥǤ@Ɇ͡Մx2jpDJhhe0J1ݫ$xێ/dLƨJa]RRVnq{P<`@g ylmsbȘ$}0E vvDQ3ΰy"q<"lL(|>O5)"4flbMY)^JrRcR 6;C-QLx|g{<0ߑ헽kV{Lɾ>njd mCJH19aKRNhɉWDu%]a:x:# HbE=b{yԁHDd$"oѨ`f!i}٦"ƒ8<,PӁ(KM4[T#1\:H鏀a=4MRWty7CVSb`1.H |j6Zo~M5;{^_7La\Mw&wLD^7x#k(IM= N27Z|] ~6A.(O VkPH&9V\xvr{tԾDj&U`c# %UUR40㌢n1;T&vB[q# +Lb0&:RZM>b_J2B*EJ94Gy+y 6 g Μ9®IxW/׬' 'w&J{ G(Y20TC3Aq\xET#UL`S1\g#R4CY>&I@Hl\ps I "Xf"Uc %k׺cJ"6EGDG$Ń֚REdShafiZПt^7ljے8$`0W|#, b'^IUA:"N\Yrmlɫv|PVM92p>UO]xRz"&$bfnQ)Ivt+an0G4ݠMJ tN̒F}&^ӧ9w+=X/̨tRU8+-]F%.EYAƆT!~ճ̮pCTaaS}yn8D <naiXv:+ >O17+vɿo[!! uߪE) * D5R[ e+@L6~KՆrZ "J 骶Rsjc*ڟ4A%^B qPnCNI@b! 7k}E]v=p ؾ9/b˖^*[Ȼo}}#ր"g/z-ŔMg"&uzz"\޵ܻ@DDj؅Գ]!BL7C %nL I o::nsgfw[ܤ&AI˽`seZG'mK7 iJq)Ż=S_2 s&B-ru唭Ng\o_|:,XepR_>g{+g<[8NɄ,^'19KYۮ@g턦[V_G"z,5ƅn&&vY<.,|{(gmmb|2'6Nޏ UŊLq\vv+q+9+`f{C 0l"E9WD t¼89>'V9"-)"&vQ8$IK m8-<ַR\f:HۿZtOBTh $EM-ns?]aX^I 4 \i仰qd ^> x|W#W/*POtUI"Q IFfĉ : K´!OU@hݒ Px}X@J(@L&OC5iG$V wL[iUG3\_2Dp(AE8kf#X= }|=u_$_3~HKtPr.xSn7b|] vP2j]Υ@Jc Ĺ 'YG'DYgDyů_D6N]g G ш?FK˅zb7:u`mI4SDQDi!ҠR12 8cqʠ؂r&0WYY\".`kR(v1&%QTUS[Ge~7o}Ѵ1 SiH%iRt Hia 1VֵY*i uH:azQ6TjGrzPpw7Zp^|2OřՊ-si%c ].qKsF"+ ˨ :Yu 掭0, VgbH]9yv{,2mSejT yxkx͚/0s`!#f V,1^p+'E~NҎSz69$\Y B@UhܐI I Cz ܼE3)ϥq(Z:ZŘڥ` ܳH`@K 76j\ +N} c_Y3 Ns/Lju Z?ڔ$qІ(M腂8B"iq Rp8 cgz"j&%`P ξ w8CTNBԫֽ=a]޷yR">5Ӈh &ֿۥr#,D)&5"5:ӽ=xJn@` bBfp Ȩ}`sH =o.>DB=oHļTc[:k# !AFa*t~CB4zǣ|Y2P5@AbɱTIB ofJDa8.J`hT ~K [\;k׋? t' -I k6|#׵| g%LAK:RϰvHy:8#+3|śhQzc'sqsZn'hnuagm}TF\XNJє9gsy n _>!R{O;qjO+M8R*c/۹gij2Jj()E1 UWx&gs|߷|Fv Xk,A|n )|5n6ɇ:]tENcߚ|ͺ5>P}B$I -KB V#8uq͑ fXHbvAo)[ [z m2 \z @1s13}m&[ۆ*!'f5A9lѕ  R(cs|p&DJ!!52~K |\|泌v"11l^ Aց^wC9 ά %RD4N+ȽlԦF(j)Ҵ%$ IDAT^ˠNzTy$頒tAV%[[7\9K߸3|>\駟ҥuHy$*iTnIyݝNbk!24kڃ4aiڎSXj3_dA4b?rO.p&fwdɅm4)^-WAWMB;[>ٳ|׷>O٩wQKZsWwsVGكE nY[f333TUd2A!X#0v|g_lILUU2*shjNг[LhLCZC}O݇|s_lkl%Jfg[ !S[B!&jM vw爫iZx:-Q[pdf"pǒ0BDag P+ !PV%~^N̵Ix_$lOjш<ρq5]\gX_ۆ E ucBc$tJh"M ' x.#՗oNr?˅ "`NJn3ԥk3n\a\;ޤ\TѨ?1CiAԓ/;DppF˗@i($ gJ)L,i[VL-thL pThz/>ٳgivifNmlcK!r+I36f1c! -[K,i\ Fz=UtomuoEl#SZZGqg2ڮ(JRαh=:\#B6{ P\^niDlZgНm/K(^5pl]'7;Sm L>`I")AE]Hi%͠J{:FfKPkXV?ێ ȸ-vbJn$$>[L3da>Ym|i6q;OK tCmk(05&IK$4MCʯo_ Jܕ川33o IOQlvֲEtV@$j pHUU AP39$cmKj ;U)p.FF-yѪZUk+[SOf{[eA󟙠msRTfR$ NzL S,/"^]L|^@i+DP|>XO$ŔľS}.wm;dv-VMklo-McJN4TZBS)] T m21.&(!t*vd6Mu;gc3E fՒo.w'-;@6tg<*=:K33's /y qt!2yōmoD]%HTDtǂ-℩gChBLw0!R5nxjGjm`HƜ!l4ˡ[{]6>/0yyh}RK̍xcTk>Y@tv7}+!a1_Olı v,kzoyfK-ID눃,014qqS J"j!Rj."!GHTeR=G!Ds"ff*ZB:pmcv!3HhT$( cFҸǓNpϮr5b3xd .zA^a~MeO0\ Ef;QxA|Nԩ77?|ǼEx^ nN ⃏o~2F SwA.Wi ;XI}HJ %!yI1!g(4G'\S춈$f`(j:1T/媈X(iyK Qe`H{|zEI{ OGi˯@8QۛryC[ w V%J8H^4Ah !EBiC4(pӕOn]Խ:p&A (OajyZ~wg;Z-A]JJyp#:x[n[q-sa!c>.NID\o:p7ˆ3pqۊk%Gqۦcx+KG8uǧUeq]2i6oEI1,K.\.x#L%UyF o$dE1[_/,Σ>L%8_\c[M|Nvt$8h5"Zo&CZyp^A9)>Ė+$n<](V+!W!aOhkֵ1O7Teb!}$bRŚX Ċ*z'Nk5箟1_߉,zʿDUw-$JMn߈}w_& sCL I7)^jJg *9m7rQ}vΉ9Ayz4h$^RW LGTM YA$cƓ!,6fu-HsD2ȄY% 18x|zYs@yMO qfܺ?K}upKY@*/535Ms |aVO{ =;/VT;7 (c|&+'YyୌhמÚqR^gн$f YЍ,ݞ%ĝS8zT)ynWo4Cc\)v sO6 =-(NR[:f,ۤ:=sR{(""O0V2,QG/9}>R Dqb!BO{v p~59=ā ^amcs==:1V9"!e~r_ ѫ޽W)bpoq3DyB:o,xg!uNpa|m-)񟀏H{{ DKrӪІ{~c7:0י!#i9:/q=+Klmr+xu|<֮昉^^`e`y=0S^ G>E$&OpgLJRA'[bTԕ'2*FC3EA]2n F^ uh9碽I]t""PSi$$޵N!EKڜy`‰8 “ 1fIP!ڇ&wꄺѯ;FQ{L=x'k&!%Vޡ4!L_]ɸI_촨l!->2L q7er7S7r{~w+789@2/ݭXYZ q(bg¸ ưIDەMn i&k)$WPW_~%lbI!DKLh:nsAs8:x#L7I9zei||1.DKKg68sk?cmsÇ8Yy gc;vӠ .ߢ h%dJH3plYxM~O]r qi%(}g` QV[ -zm$n ' c<ֵKK<Ψ Ix^Ꜫꐤ;g2e|d>@!dQ15TuPHE$bւ,T"h@d2T&YȪuC5ͤŢ1rt$KG8%,};}|--IЫqio}]Jr O$b_DZېbLr_8,^cDlq9ԛc\9,ϵYU'𵤛qeڤ4MT\OBOasr_Y[kTVVV8wG3`@zxR dTUL&ux<*o<@y C͊ւEHTIW i5H#Ab g^&k!>&y!68<ՌfK CfF$igSl(CAec(%F(u5}!")8y{ᰵ&O:7Jz;4Kqu}Tn^F>4]5%ݴ#K<Q2;\"d2V(jI5UX@] FC 7]?(fkVKi vFl{jȾ96%g_峟(fpʰؽU*Q{D11%8n8fX{X߈TD%n]wn Uc32`OݺݖE@P7IqCd\;OQw&-A}4T&/ IDATg@:4ESA{E/|>cbG}/h"2pG! ڡW>БXlRz):NprmCx8"!~gG|I/5z $pN:Kk %e6]Z"H0ZbEQvJ)Clmm1X$5ww?+MM@u93aFk͸*t:Txߴ5`扆ɨc%LvhQ2jOh[b0Gv!'bܱqyFk4nJoDc+%-IAX2XނpFR6KXvRJР'YFmf^ "6fk(I) bK !g[@H#P'()(|?1L.UBsT{$fDLr~E,d>§_PԵ%0X&akuٮ%uŋۑ$2^ jαSuJm퐵 wt"kS߬h|^൦K\YPY'6&Qd޳kV2M%N ?P ={Xٷƈ(iEm(`wL\$WwJ0-,-G>_>?iը FAmZcj݁ʑ$ T]5 Kˬn 1edہ2wxGHPԵ4r<Ȑޓ"V +qz9 A=n.3Ir_޺\^;G5,vH=)r ->~2B J 1X`' $IE$H  ~XN@yigz$)B:jϤLiv.jtn|2#$LƒQ'i &*5ģ5y^ +8 | 2 e$MVcv "~M0HI8P]+] $9P\S= IӮϲaJs1!K,% Vџ%{8C>p/1j4@*zRjÃh ?_&1(HȐp…`/znbB9M< 22k"4]$[{j7Ch.Jz/GJUmN(CiSUEQ!Th<$zG^t9R9"Ѵ{-6d!jx0a#ku )e$(Z <kKS('UCx5Rs$2LjKTm׷hldZ?ϾV7>ph)g^/iMaq~x\KQ[THcG51\cm@EI]{btTah#UJg'h qʁO~F<)˪9U8BM9EӁR1sU)! =D',P '!b˒4ѸV\Z`&z@RWiX"j,EXhDEښ5B&<\BM(@eEh--R+ThX2HJ- zUSמ\&lL\cPS.u1:!JNS x|du2`1W7Q ݻ'Ǥ"WtZanq_o(: Z &ƆlL ڇ6X3Ʉ۪9ः(R ($O p6O\"$sҖlmHrPҶ')${X UXZX1jRP^g~ows_7C^Z=sOh4c\XǴím~ fuQ D$[_UwRZ=FT)^;7v3Xߤ+R񨤥$yiQZc6ة;L;-FgX7B*Y+50IIQTuU'oXZYoft(d>RUƤDja1Q|1p D'Bfʬ3#U#nؤoG߽B@6 d“$MK I֢KAAx398d7hI"ccg4wҳЛg41dFc$B؂WPQWՌ낎iQLGT9H&DOm 3dDLbu]oI U}2rs%mhBPRQU}U"嘤/1ư6bY)LM)=ca.rns ss(F#y NQmṚG@;BQ[66'(tlm[eEZ;9.Z-VUeo#DH(]98>F}h\) .@h=*@iz+ؼ(HR5#4*#\h=r"s8i"sj#$ aB[iK*|ڀH>) % c7Dp.GʈV^BN eh E`HcsŘg#YڿLR dԵ'c}.OVq[FT79/#=+Qo~v}W>xj:E5b}7I KqW,سCPFJ"vգ")AcrP4f DQsf{`Fo8lTAփe&z*T܃k"$BZ$&Qz;\&XPc(v^|6ғp+@/(p `ZxF[)~ByosheJ^UHلi KU!"Dh 7tƔxPU|x YeT D@3{z-OA\lRIWiu0< LC66 6ETat@y8uh8HsucvGrB .gMQMбm<;sǞ%SDww-1HCvYvx!& &"HQ{}lx gThCL_:ȑèvSr![#|wk7Rۜ wXpWWǬ[ALD׮cd/178"(OWCH/ vS2/).xWO]yèv`CJb:HqT25w(r>9ͼ}y +s KYDGPg.boU"܅V D @F$i$kL6mJAgh@xVBV:펡idbD :Y$ ݮi' ;l%ӊ`qQG0>Plb˿ }8e`#x-JYYE VB#烗褋gA)Ad(&ts/17EKgطpfWʶٷ|_d\:#,-s~7p"zPE(V-RB,B"`A&9TxZL ݽ8L#q4&|Z1X]+'H ^E7q乔(bI Хo @p vGs[ (!Tbv6D+> uSW)(9 uD+Ѭ UġhbS_j|F(qHUp%cUK=0n%wـr|09הE] ['ÝH Hf/$!!;hu`tzW ^xQT`.#h?#߆A@јr}_d.蚛$3 KMnLBfn7>K#-R8y&~i)Z/$wO!eF*$({c-g &N-A~w&T-666xװ9x& W8}xo>'y۾q|ӱc H);qKhٷ]&5̈́J,Eb8sIM Z(_Nr!6F[HҒ-J1!I&h;tKL=a oZPҴO},IcK6sNo`(Atı2Sb\F|Q?oU.O7)R1"VhQU ,ˍ?+" IDAT[H_qMB=2 O|*fjv:έ/FX3%B $v(Y $.M eZMudTm, 4: j.1߇$yvvѱfPLH /L Ĭo:Rbo(AMBuV%N:@JA@:XJ { Tؗ(uzk7fR{ʝD6Q8Zɟ ^92;VגICY7򘶒('@lGJ׸(+iG0N I ZB,INL'2ՖX5Idt &}cwdчƍSr3gx_LJ[$w7vɤ61cb%_Ip{w:$ֆv*!ɣ g8[Q~+iINX'!!vpd02[lIBs@Coz;!(P@pd>h098'dΥ-{E~=<{ TcʭFMNX:0Oµ8suCdqtw"\\Kx٧Y.D#/tX^ȑ~)ٷp0"m9Bg%Y 7&cI؁ETtfaId"m 3#WƊN9Z(]?k6;0Pczg"JNBgo?}n4 ?$1 эo=K$?o?w2Mal*&7u]JO]<`;Fa=T!Ppα VqUPt ;֓M=i)ϱQNi/>C@Ү_‡b9{9kl:R؂ϝ@K7(IPLMW vlJf4ʕ-7\'WG+$3O5,&<],DO6l^svfDj,9{]s]W⢨bd2!Msx;OvT MMwQBy#SO9E1Y{19iZv&dU<6iF>hȒHVuӜn%i##eHbWUM[iJUՄX%M$utHg-sp43eT9ogxǙ"uK=mQ7'Hx1⃠By/Mꈌ0}_h'ekAT-phn:|+O&N2kkϼ@rS_ʾHsb;JuytDqh 01L6Qt`pNoz_.k-=[ԵٓN"ۚs9^qBr )`*JBTLGW+ b{"% t k$gج&B$Ɗ=yn]ysλz4@ Kd\(R6?$qJ 0F dhA͌fwvg}\JTztw{]:Xuh Rg‹`u}yZn]ʭ'&N aګt;𿮎_6 &@׍=^OD؞ޓ™"hSh4b<m[ B}dNIV?J)1Ls:B3sU!2LOi"'̼+k;jˉvvG3b%),pjz&fyMr-\Nu Pq1φ|Ҙ;Ow\v\|^ (pN cD#`GPVX;^egEŸeKQhT)ĵGWJf5,$Dp<1_E+$ՋJY8$@ڶ=ZFEv6CsHWA!Nh0FQnDp(lJY()+~A)"T,ͥ-$VH@ a*&Ee8泖HI|G,h^q8 >L hƿMq *rF]S/2O T^]IlNBR޶݊hBZCWv)ebjKb8 o^bczuӏ>;(V_=B%z2 2Fh_4I 噴5"RP OݴL&yccv2N'TU@2rX7| &c&Ao)0nȵϝ%ਰ)n4ŽF|p9Ĝz@6XS,w H+8#9qjSHEezjHm-F*O3F hRzBthg2By}|^Ӈ$D%:`$sГ2|LR0)&@"+YyιԁzfUHRH ~v1UT\7  %y+ۙ @ )(*w H]0s`Z8r4HY*Hm|C$1.88:! N0 66!TyfuP0-դx_fK{!TRV3Gmu ť'!@V~,n!0>鯿 h.}P9:S15<ی8qؾ}ю9v3mRf<Əl,Qr"\jDgfnzO9x>'gosu!Ȼ͟,">ys$x]lҗ$XdV{++k]'hRn9[CFqM6DSp'@ :E%GHEYcn$Q) ꄖ_F+I]}Mǔ,޵nD].~ I]ju#嵡9 x"yλ#6dgN>&|憱ū<y}qIx&"q*̹6>A\Q6o#$m_7~;ucsxac>ES)RVS;|(U/='Q٨aM%{xQ>-*U>%-1h9εA.ce[iCka2Hy%R ZQjZh}D,$!hf3$ܰ)QP ݫn/P)QyG)1e D$AOYX«SHNJC!x+‚7#6dH(wԎ¬RU;uxGHKi(55B/OH2QO8/ ١*!t zbbAO }`0>~rgPڶ|}b"Yz"NN6 $g^dMApq[tIH꣤N|#kwyElt^U/ZA^zfs W~''NꅇY=D >?BH*ٹpS8BHPQ)QuזX^rVTBcLd6D'Jɒvkz{bcn ʳk*"7KaՄ,U^J,ڱԵF q7x @Z@N&4% v]|-O{H:pYv9)5°T N*SDow ŭw\A@l);HT˚%N`Lw3d rέy!K!3-Ua[wF v$&! M 0}4܅@;́":{A)C4OZ:+r΃=/PDH $nONSX> mݘra'D%D ^M}\҆@N!́n&D9gNq ?s&'!Y@ \ װ%]"_ aX__ӳJWY_j܎scR€'"Mc耇^4!$~Ƀ}&7N_Y9zw.mY^Zg6!RcO|G!F/bRK_4Wi[0>5rWSDvqZbbP g5]|&V73dHFGdܺ6JۖkG؝HLb8Z,--aۖ/wX]l WXX-oW_6_KFF;ClB_}um~= %16tTb>nm8S&)/yO<.U'PaN(bґ"Z^A"U^2&bTld eU(dVjei`*Ei[cJCDB;h'GHRAmixp.{o?}j:scoo˗/P$4y|(bHRCH5u+DL9<012PJD@w(bN"u(DE9>VT̥֤EwE)k1!m 7qM%*PEK!%Dd~JHD \ IԤMB*n Wbpq^s x٬x|ISUO V':Dqx#J3]x<`* Ә9N`xdVQ /O!X]Uk}MғOڿM;k\E=.2oǸzqg/ƫtgG8:ʳÜ|-i4 w=ORS҃e03POhy&R>ζfgpAR&7S/>MwW IDATk/?s +Q1z6F zG0FJ+fmM5iֲл E~CCp/1]?bI%>qْLݒ")ʎf/RT 6PX*mLXԣt,o^R,*'c]a:s Q8ḁ6#.>d1/EE~vaRVʅ>Gn74BL͉B SrRۜ`7%Ű%0=ۊ/`0'< ܗ=iWȈ( D`͞UfkMXqx+>$0̊Y.Q!Bi˽|]V.RO TPUON( Em 2W\H0D)+sFA!(')m)4޹|YbB {}n= ;YcgRc[t;+|˜'(8Hno"BiAJ tC&ɎZ|pJ@kq!JRE~u?Cٟ6 m'>OmPzۯpDYqpz_fٟ8'Gxf"'N3!+Lewk-B[$$N!;5TM%u]Sfŵ'b!lYK̘0Zd趢?sovNJS5k+6tY:L=tͫ\C]fng ؄"8>) ZiPٜTp͘f>a{{pBKB tLI[@M3CϬ)%Px~1rLבum;䎤rAiiZ>l01(*& Kݝtӝf YפS%ĢΉ!fRj=]UtHBH# m)d | &ARDB`20 -4BE(@iRť{H򑋴m !S#AA94%Jt!#DZHX~JIBDQa2w[|H} %tjlmﰺŇ~nVfǎr4ʳ,Y9L BsSO3Glf{Ew;vJ| ._Pb0bT/[A]Zc Y~!K g\t/gBqR |Ԋ:K6 6DH TVg: Tj]D I5.F*%*-FBkHþx;K_GK]{ڔ')-r%dO%ئ"&'/Rl6{ňbrQ!xM b4Kg-sy"TS{F䜛; DX`h6{[½P!-zm)JdD*#v&:ޡ ђ. yY5 (\5uUz*MWQH,Ni*#ZE&[Qd#L )92T/J@R@Y&H@i cqҶR `LYNhK*IHz1PH|!B]`&{|YiH[0]uk \gd6@<$)Np\`Z?_-.F078.yi@7IjPٗ~iU|S0opJJ/Mf}^KP GC^| uů)*|+\Sk)LAJhyYvO>_=ݷn:McG\ܚY[`6G>Yۡn J(4)UvLRf8XS`<,^Bg4Q[1-((VX[9vI-0m=uY.Wh KJƭ#%^YKQ$$LY*ϒ;p|uݶdʉZI4}>S\'`L$=.6YkX\#¶ p.u>cfG $e7}o{vy@sLlD|+qs9~ZXa17=EQ/1M Z4aCG9ZjL$gh%|ܧ38pKN@F6DhUf[Nϲz~R1 sHd&VL$WDB&T݊ڃo֫J_^|LXJZ$\tU* ȲB* }u4`_C=|"*P2 f1C|( D E!)2XY]0\A.+p*Xv'k'>oz{Zn1'đN-m$'R Hi9laB) (Wv^ ^cC JȖ(xmvǬmU/oj]ͺEνq`xx}%e]٤u&k&Qa~x~PRֆNR7e%UIkP&?粇yjNQZޘi!mJ(>^tY$;=)blcW-y\zʝ}^:RjFA=@AYw5%AZ4]Ix"v XJw) .`|Dd$xOJ-vR.+od7BF*B@ZP@ spE{Ce{Ա"RJe [0>=^ӲFKյ@ PaR% DIĂK\PCלѣRT}V].i5@9BHhQ BVFmɒkiT[,j *RĖ-!ŹTK^h Ӗ+`7%tS%?w8}fvP#IQՇ-ƨ&[vl@wJ2z\<|soC]DXKtAڑP p!I\N}ԣ\p{=Egup:o3(bǗ VzTݎ^D2]!^컁|,#mrNAcCढ़eY:bQpmɬ(|/~$A+:.\o@y'J(M1yV >HޗCloZb"#啗ʷ&"v+}n]^·_M5ŧy(];Jqۙ؛ip8|ؼr7sy[^, /zeɨ(%[)W"O>$q5^w}<=7#-d+QUvwwt:Ƭ}:+\ֹmB Y,uNZb:z=]0|-|0L9-Ǘs{RBwE,4tTJC,K(H9N~G9v&svL_z2~]ǰ(IMS}?+? r}766 qOwKru&w:ϺP:-6FmcmcQ@^BJeELz@VIqbPq |pL(k2A*! _3+לxW%,a ^fwsM:*Gwt"b UA(|7XjM!}yMShv9xnZ->p-=~_6~(e.om¹Pjw O<aW/mrےgY~c 2t֘$ɳӫ2=p= 𹯠+w휁*f~Mοx c Nc2SkMY/`H)Y*UNSNQu1ą"ל~7݁ss<;sNzblv2kCB\e:_D!D(bs"Eht:EvTRt ٥&=1yHEmE?׼Ԡ.P/Q!tRpeI YXMUŜl,֝4Tȴ,--- NNI+ڀi^B\Ѩc4`'O~<~| s ?QĹՆkȔ!E)$ZHBH4g.42 䬵3^#p2S`l:F3k>H, |`E$soZrrC"J)Ծ' \(%De8{ח8.<[)5٭y`4i9T*"D ~RXSa&R+(U&2XѬ+* $&%E D$2vydN=;PVc'5C{7g#_<<˻]R%dٲl`!68IU")B'f*TQ ̄mHI`-/%n}˳9vecCj{}{|q6Ukky^qL^Z$aq\RH#i]1 <֜۬zU;=wxcj~ǭY1,KjC'aoM< ^],)QA(cB,H$JE!A0;ny:P(O~x((FpJtQŪ(1Ӕ~tb ^#lZc89FdGތbπ4*mp߅S#Ħ3"=e"#I a.Ӓ$y~#vw/{p >s_=BKm:xƾD1ʵʛ/wLln,pc,NibN_p5투]dm}Μ]q4,4褌V/ ;%&IÌY ( IDATX=Le26w1#G]gnɠ,&:\s S+Y΃{>Ao Y=F8-,Zx\ZcqiCjGyBe p #.xao|2" \ޱ,eTgG=uV,d> `klD4`R=R$SY &0 a+\"aqduaQqYJM%ǗUIu[%2;[$M 3(ܸƵ֗:Z~@e r/~/uB /B:~>_<Շ0`;`ἍX+@q`u'R|UtPq`\"U|MT$ISxK3ȓdG?tܗ BH\m% Ya; m'y&3 E]*ʲGb$ ̭2TF*3.RAKFĀDN4ԕ9OXWG"RԵ̬%U߱)bd$j>c +yyۿW!ϔ&*Kɲ(*p-tO >`/IU4CCx:J;—r[ :f8cPD%%eiP@*+sA㼣[Gp7/6h]"{ KXqHFQ8$:DP D 0ޒ6I,0&4U~639BD||$&,c3ebD8`c8d] K^ @LԌByBkD:Ç1_ַ|3:WçBR7,;?=8Au/kg28B~`$?K`kbdYLQ%t2X۵8_`wKD6]F[[l!-6מE]*c~y+g>w92?e)%Ɨ I`jASWj+|o7C .`G'\hPgZj:Tz>ȃcT JPel-P:Va*αEE̸q]_6+l.a\=*#Kv 5΃7TVꄬ9)[riĸ˔I}\ar{_..' 6;!*n\f"P ͙HSޕr|ɯVbvz H]9NG01 k xu\אE  5)B <3vxn|&N[|sk+,۫,$Yk\TWC>O<#U#:R}8˰ʙkj*^BKnR1^@Vqٍ6'H )s:{R!M)˂,$ ᝘$n c+|og g=V xdƣ,04P)9/N1cW^cKJ&U9IUeKTHm֛(3djɝ:)[M`+*W޲(Mhf$43 @ 8DA,rCAQQ k=t8F"3 cQ"`;(bRk)O,Hi:\4DkvTiA(SIHhڰ$n^Ǚ =3ˠ٢<[BWYƣaR刖f[dg)vz͍]]L%0;Yߖ(r G%v.w_w L{C4B%G ˏP۰꿭xO&݂ ef51ώIcA!A4~O' xEp$L!X8g+8gDWR8㖗'I|$"̙Ӝ!GҔacACxS`C^¸PټcO>AѠuxr6"K:4śVVolǟbP5顝6G?k+.] CnKaN(T=ZYFUe4 ,;z=`B sTH#L'It幌TJpGyl7-Qi@t\y~̝sϞ#IxI[IkvjHmy/mryAf& &SD2NygB͗MRR\WsKR5:|gpC/{O˟'~i3{?{9x#FVlFscO]qu<zʰu HDp$N5I!4*544l=f:9 1R42@l m(P[Tp2>VQv $–nP+˲lﻘsMl3\x#?Ԥ9RsheAx?CD $*AZ8|+׹rHȼHm`@jheY3 (TR;T!G36FSmH$I:AGo=W3ɗVpeW4[9T"aP ݀&˻~8o(MOo cqe?z8C/hM[0asI%·ZlL ^]Éb"M,DRʉzLP$XtpD0AT)$I~ IT)]@#@ p?|W&] aMzAv3UU +\`"DDnSW}ƽ{ ~M>pڹ9"׽ԃ$~HMz)G俟5MD7q=p-22'h4<.9`Mݔ|s0?էN0(JvM*3#}~׾u\喣H:~#REvPzCR0ɲFG[?5cZ-ʱ@JMiNabII(@HV;{B S~fEs!I"؀H"M /RkT4{$I(r/ I l-H3Y!8Q a~RK\ f;ܹ>:  &4@ Ztuv(z8[qe$[O'IRFYա)wI^a8qOsJ"D IjRT^!I> .@6'atDD蔺^ggQZ4xO)=bxGIc(yҠvpw  * |sǩS {sG)/dSqW2`'> /^oz=0c< {O:,O<}|s,xtc~e`4aes ^qI3{!NTisbNK4,g}R%xztm G/Iyi2l<ι V>Bs?sѰF7sz(I#qjL"ILFF*,]I=H`lW:>\OM *C6 E;̦u&/qӁ-grK,ފf␆i`MM9& -,] !loHGg7Xt7>-?I[p)ꄭf~Fq \5l!RXX]bO}SxV4`v4#MHC)ڭ6g~ FObk_fWa6&|Ն}{xyϿN+MwRiI"LT`)u Ǟ[uH7tfgЯy0@5(S J%'l̼$ 1'hLӒK&+)*+1; EؚOpgsu9|#pJ=F!w4߼8XsoE?6wB*$•hЙIqqI6 WLT%$hSR㜠Q^ԂtfZGeLx =:u".$Ts5& lkD++[-zo?oڜq6h*Cu#}p9+!L ^+V}8_,ul!Z?F^sZj [_DdTEX4w85bnrĢU ΓX2?s PK5axNjw@sK#f;gARmY[ks]eAWOVRNwW}St(0vء [$Ο@캱"E 瞃 V_7m" O} Wj.^ Cct yγq Ut,pGYwP3P 0󘲦#rpړe  j:sYP5bE"K 83~ c:|aNQ__z!f? z#sgʧ>χ?-*~b{hpϩgF{F3rGyѻ*bu%> [5׆hDbB48KGLRŸ^36c_'r'-|g#B:_~L&imII/^Hy&W_*a p+x-q7(h52xB8pÇةї{~F7w'@kA]GQVC%N, ).8==a^8T (49$px}l5ImArP[~@Gn~rO z)(}7>-ݘ,7>_)ރoN& (GD/a@'5 7.qͷP5Ǝص j\ryRln|BGC"opd{8o}* 177^:N9}v,VKrxzT=R`dZOӔ,7L FX;i;Tͤ.Xm2V얞\)pSGNpQ8peSGvIRN^7!Vd :`DN;_UB)2޳O$ȗx"j9z+<Ѷba؁ 鴊<SWyVRWྯ;DEkΝ~'/"0g(ѐ rj/]IY *Bh1t2t!I2FA),f#@ITfg78tdNdGC?q0ƈKT>uiYXɾM͸4[\pl 1Iڠ^eq9Yc LHG;OI%@(=f%TiY˕^U{}ߴTKL"1=v  T.v ӍxiYJirxQ{:GYWdZGs>@' ^NC[ !\8M+BIyo&(H&-bizO8Ɩ$I r :Fʗ HY;ĸD dWOqsɛxѿz+_optMth)zX# AT³6Z"øt[#py)O:~a."z4D t 텻%L}a=fL-xbnyڲCz"W,Cs$'o?#VZʱrd"ܰ\gu?!)Uy|0Fu$=4 uظq~)OD;w[o9Dw~.o[qsqҒa[l gvX^(>ip<2޹/DWl/8:XSTYH9d2sGhϣE)J` Jq !c]Nşa>?K:uBjGRӧx1禃y/GԹhv='f;4ϩ?ͷP5ǟ'NJ`K&Bń{ld!b ,/=C[9.TIN-%b'̷H i&qңC\Pm O<~swѲGl)hdy%%Ȱ ;Bc(EpLcjt( V0DbZHӰ穤Ee$8O#b\8t&ٽH@R%yPi1ћϟܶ8Wݓ&-q@yDƻ.as8ع&1 7' !L"՜U0HٜjJv}'+10\7uOD+Ǚ!RX^>@sEEwk.K9I=nހAO>fccY^i8ۦՐ<|O?ØMtmŠJD~䙫^PwsB>9677iс:ԅtl%Te(&>E2IǢTW>T3}I"S6i=yR9C\Œ(][[["@4+xNuRd{H)%&TdBRoke Xi !kV48s*G|+%!uu42O&Dß>Oɏ{oo|˿\R Qxq`"AȊ*)K% 35; Og"WQbaLb,=< ܺ2dn&=R9Z3tCEyfRø$JpbfVEIˠ q:Ra9%yשU5`\E-|p3x貧ef)64MF@!1V1gfHPEfiJd :-o;Xⅿv}wNS[Zvxş] /Ћ=l2k%/p[Cm+g[5s4WϮxpCKU|'D⋟x+a;0np H0@.s~.%Ugv, UٸHׄ{O3q? bx'sY֯Zv} R2u${" PV0"LwKH;Ss/>BÑ[VO0ן#MX(%UVI.ٙA*qrIYc2ǑdJIw<\d.5q~ >+ d@;Q`#X> ygmawzLm$u~N~63 5Gp/>Yti .) 'r#k(K DE2IwdA!IєxTğ9 UMIxsd{oY~w~ٞuo-jWovc716vl A&01H(c$(dFьPH"M"fXƀ݋{k9yqMH#͌4G*u߮W9|lybWqƐT,a; tm$ ;jY=CYI"=oy])E >6Yy o{yUoȷ i'䛄{mC6ijh6 p:[bN-p0'yk 5N&1V YOISα]2&"Nz.ZG;D>'_hkwr:/]Σʹ~|O&"|m EȔ,)kF) $(PRњNopRNaU]YdXgٻWHy4b{mSzua`*Խ٣0u?0:pr8npf7^2?#<Ѓ4^{~Ҹ`J{e*iV"BM==ɈQaPBk-{[PP39R{ٵow?^M?έ;,q2@Aj:a9DJO|2aPL ?01FD,ϒwg%`C2{{cFDވ g?*u:->g`Np8$Kfgwh6hIҔ~#GN3cN$=N+N?賸`Hkdl f<usD{O> 7__x H1mo5tyQH4H呢Ԗ,S  WhzQFeG!C"P6,JTy f==I@CR1*믿ՒJg[ ;ǵ׉BjM6RJuDAO1@Nޜf,Oj J"[ zیGb5S>n"^`08+NCQ"&nMBISL$FV Ypd]};֐͘{@PT ;"AG,YFEۦ[8Y\5ԛcchL ~o~ȺLXӄk_ &7@{A^9ߍ[ui7=댺XHx,pI{_3'8r=S9!Yu&M46~V!]ZsM"i{ % Q(dY[Wd9xܧ?`׉KdI~[w2>I"^>HWU7pJ֛7}5d9nc3GRY(K\>/yu ԋQ!Í=_5f!` ,%8d8O cmˑyEi=JԀUL8.$.]9GGݛ*#總G{_i3ؾ{Lxx~oWo^M~68w !4)rXi4Y9wvUcuqMѩ6LM_߫'3`aiVkJZQ]ωpDR0SHEwo3W2Ƀk9[)L0AE&Pˌt% $8zc` Y$ |YbEkOpN8/axO$i懵@Xo%ۦM ֹ)r7a(!Htb&%3Dގ:{$(c}LP{c )㷝wGPa +tJN@f,DpuwWY-fFҌS̮e 62_`ee䉌$LM= *tf L4Q+=fi[s4@pwc)H(pҠM  T~L"t\-\Vm!JfI)LLΣ6ֿ碌G~_̱wr/w$c$Љ,oetUO0_qnDӿ_h9)->BUKTZL.9QXHgwv߾Nqb2d-'0ȓ4cGD;>G R8[#P:8e;C^~S9MT@غ(ނ(ZB X">'ؽӥK 9Su#B􍦏e)%:"f{ϲ'nnF,6aMZ Uq3RJY#!J"FU Ei' !n?FH<%h~鲆s8VDL}]ȺkSg!޷nDE"*cCю#ga]V[% bd&x,Z&(`R2+Ǚ}ҙ;N̻N'w7np8jj,%p&/sunz_F }O, 99G3JXkQ2W&T+d8l/ IDAT FSzoGcZI,B+!&> DDka3Z=Sv:loU)JqP8]u/P/]. ykg0HoRGy874GAe VO̱[2IVa0cd֦t=ی$N17XuRW{ k ڜtݐ )δB٤Y`eΓ5+88Ѳf8Z[O髟$P BpH)wAu=ZL)I,=!/E"ԩV&ykF҈ϷTnqfNst Ĥ9ܹohg*[ 6PnR95/8ioh6fJEu*5Ԅ_PLVy;=Ѝ Ćڠ ҊuGe\ZKj.`$NXq%9t#o&d"B!IK\[=%{?ȑgi> |yT%R$xa6FT5o<#~ F3tټ{5C}>w8G.dzKltjP~SƞL1]Xaȗ #ަs9荙mLX>>j;6!p퍈#'3٫P Csilow̔ E5Fd)v+eXl # SQ\ {h)Ć,}@Mep ,[7sV.8"@xp$!ys~ n'Z"V=0&Ak)'0\m:7FN:HL0o#b.~IØ?*3#' Ӱ^k3l`d`=q$\D1 FyB!gZ#.oMa 7$~}[󊽤QOVLc=ll0l32c%4y&?rN>ۜ^,cwI=M*yu] aB#LX\\ٗ^:ؚ@E#5:"ǗI!7UOZid`q;Ȏ?Q{H$ IfO2{vYޟ`5njx&;96i wӚ Vg(X ٙ5B9ZnJvnAFytPP} k@'}AgYl ?&7/1Ⱥkؽ{ ic{./|GOS2鳯:&ErO>p/F1u-x:Mi4qĹP•L= ^:5aŵctLDD[tCcfj-MCщ"UR-R5/N$AS!XY\fwgօ|A*Wa.cYE:$ sU8㏟g~dIP271ۊP6W٧4( P44X^ SE-& }ˑcMZ =B(d$ 7@"âOeE-2v{L7;cl, H?K:.& M`7 ,C=w*2f5F&J L=,*'Tu,!@Q$/s`,*u|jPHa]o%B"lƤ7AIЖ2hkYbdZis/]0Pvm ː~'yPk`ac(4ʠ_awNDkAS2.2"ھ֯rW9R77[/_>-<}oHRw{4dZBďWIRD%4Cߤrš: j E)=1e)h1Ct,{ H?baCe-g-NiB)ƶ@#R W̴{.>R2Ind2ڹB5s'y%xϠP@ x`MS0hD)a!x$VSIW0S=A "79 7Ŕ6#j֚H(})BA ӤwY#r*4SIdC_4Ժ3y^Wg6x gܪA28,/t2I_ٟxyY^X9Sʕ/Я8Hri[ȃc* GROV`XXT΁ 1ujBLe^m"e54eLEz12:JU^&B#\w [G,UxW0!є%" o1  ?w3_"W:F2{+p$eS=3s[pa e={3ƵΐD3tU[4fWh6+̭̰4ys{pQ?X]Jv\4H|a:z{ Qz)T& zfbC2p@:t 5i+ȩKN@ Uw*WH6w3+168Vo{[8nnYH L,dIHɉ0d!NȑIG{%"eAWW-CHw #"'qNԝn:|?vhZK2UjIMB$l@m ~O!4@6O:lxjyt]F]zF)jJf~"'VXh2) 0DL&HW w]DQ)Ic4?üxuv3uFҙ V$5.Z=y߉1 Ez)>'+BǸ|9}rk~`wx2Ue֭jQgJeI'̵ xQw-v`4iWdYF)JBSLtG=dV/bpX5\ߍR8QCNk EF 7F́z ڱP 1ݑcooAe5;'i8=8\g&q9!96<|!3n^[R7 SXҤ>_OuRg؈fW&5EKiD<.UV*:޻/tTK (Cy@jR{=Ƈ:3{H5VGĭCpnMR(b!jRJy1s[:8$# ZPݸ̕{ѮCĒ$p"/3uvaHDimTVTBD0C *͒XcbSSo逘*2`^t: IT4;)Y Z`TG-kx;| DӉChMe=Z Ԯ,CJBrSї1o+'Mk1YEi=:3g;Pe1_:w^{ i=P۶4"ˤ Y9F<cٻM:b9Ǖ0|W/s -# B!K+#ݻ{x15$%ؾ'o/1 u &5iX$=d_hIϫ7:?wQQ͋;d6]UJuBZbLLlWጨR(%XXWH3wML/Ƥ~:!ɖ]Z S5t%f25Eө`8ΈtobVྕ|Mh%蜱\==FX֖xѳM\|e3xrZ>3#߱)bm_<ΝۼKՊ骊HV 9{wįuZ$+*_/Dd)4SAB/B)Ad_CHExTJ}H8BLIy!.Tæb[8nP*&U~?%8[L5 &4.0t= -h-F &&"mPބ‘Q;_O<ΰeTv9ŷmfç{.}wmL1n#k3-4 ._~_x.'ld*+)yvFvW^yA*E9j][gh6t(h6h''롚G%SJEJHd2& i%ө`UJG*Gm>3&"=ʀ/r/~KH666HӄN}=gnn<9B9">!dJMJ6L&[i!g/=Cڙca>cua4z;N Mo2&{vڐܣr;x\ 4HT_ܾM7Wݼ@X߾Eb 41bZ-Mo`P5q"H3EYt&0 i4c9;mSp]7H?!ܽՇ` c)'6GgIo‘vd[,|b3ey5g6*P`B+{nl ,cӂ8"mվH7~gAPm5Mf{Px<8<4hE*ʎxCf0tW !Y<ޘp8 ݔ~d85rjP7'O7% zr(,)&ƪ9Ҍg~#(=RYHh4wB9C\m4v|ϵkWy͂IU%q|ɄiX!XˀeKL&U~;R16f{p:h15SPRsOaCf-eJq T.apc(&u!S$?C^GcOK/!*qs$ekg<*paqdx'`j!OSS(*5TvuƜ|[ϰ0ܻMWXYw o=Ggg;|"w.nw}$ L_ff1E6+GaӼlVH]Wpyeaerapi% 4U$Gq xRm֯DS ʢFJoP UJH2!JS@Ŵ 9v| 8U:i@ o]A"шT)DH FX_Ŏ;'O1}Ea Q6#PJS& ݛM⹊Ƃcu>s<+ 9c @nå6{B ɺQ5 IDAT܇x1J&3㧏V+<: C o(] {S… ΂F3T~E0`jUUR~=pPd0S*XL̸@+ A,`Ud9H <Ԃ|'[t͐}u¾9`\ XtP*CJA:htδZ- n1 KKgH %fY;zqny~N B*uL/43=ϻ~^]d7R5hdcIVdCq#( F"E@q "y$gh7f7[Vo}7?nRA`|@ go{&bJ+'B)GˋLbH%}Ȱ o#j%>,SOz>(X!)B(FV@^ם0;+ۑRil5q{Bwnuƣ`xɀǏS;!A;3Qx- ?H )Kv{RV"^PeOO@npJS'O?ұH8$<) A(8^]/2w(c݁.&+K ϧ['o@+R TdyJ4O$lxk!l)F#3Ry!PL'%0"3B쒦 7`cg~$&䆹"%I<1O//n/+]~#-7|c賴4DZ}(gS9 UTՕ+ԡrҭDl*U&nhSdCIPN )_j;=풿|kbڂ"ZjX.OK9rw?B(B,Ebp+w 98F'~ʷ9{KjimKVQdLr3X8tPIR+xVKc\'1wQE^f=.ִ[26ҤB^ſ`{E ~~7 /q}wo<$N4[-K=Ty0X#oҕ*diVgڗ"X1I23hib (-!ĩ+ǵmn*:"G"n܊1IvIYnn##'^cu`L B+Rj5`:p"Qd"/ߣ p@*ih4G^%h{Wm9KI q$Tʑk I]dbnFkcv /b "͑.ʹ I') :}t6}[(*iK]v~sdpgվðo?M1sģ mܽ?L- ? Q6;o^ \ytlxm*#koHQ X :5[C K|Y=‘hT@(bСę^c<%AwhJ$}qn}% hF*T.o2_w oSp,w*{ЍAf)3JslS2>NWU8@5o ȸIP.}&3;׉vAgv"|JkCsr r\= |݂H;H*lY Xlֈ ]giy)?Psao%?_Ɗ@8,RBճ([T@y@ZH QN[~I҂R2=E RgIq; $?1hO,)8+sHUEAAϸ4<[<(8LGW\a`83NфaW w%չSGKv.n1YL׮rh+2QaQ&凟_.#"~N .:{tV:vW6TXcy iڛWvBi ?p,cPJR%DQd<`vv;}^:ũC9|wj|ogosϱ8G )?Ky6=2YBQ#7E+d+`n>|Uy`,k63e97 2Q`!R6eu@կr{gg&eokg(n+/|qm~n)#v;7na;̾)ؓ5y>E 6ٚ7|eic:QYsͳ}*N~<ަ{K4]įWh w y/lt:vq?e LH}X}i)Bn2A!:ANSn gi?E)e$**ц%= -W0 1cefFS=0CАd`[t Tu?Iz"Gf٫Wi4c8INb #eֺnqwSꝏ.}f֑!1Jf2<H-"-3^7)T7AٸQURkY#do<%b- c {8Si.|)1cl'/(5?d+OYK\SUM)D{ƭ킏>{í?bп=bq) V%!&;)#Dl#Hb4bD"+66* ѫ8MSNV#LRV$g1RZk=EI9ڃ(*ѹLQB'82I[|%P9OQh)4iZ =O!D9PZZi⸸@l&0BDQ 1Tswtu PF m }+BKN"9y%aA]+:& .^=.xшWu ?篳 =67St_f);V )CrmM2cxG)}_ N-?NѬQi-{mbH-exQ`ӱ~3%X^ŸUYiFK;in4ahI0`{"LTUHPD}@⊔J e<.ŏGUFQHILe Adyumrq`$#Aĉ!s>HN2 y.?0 xbX=DӢzW -G>L_MiیOε>^΍78ԯU:L[kk jzO 2S'sl2GNe)o@7;N):V7/37//4ɍ5gN'~C~6\o1ʗiF7Σkx'X:pY|2޽ճ_byrpk"a 4$(cW԰&q"l¡L-J4gդ8H7&rp )rzOpW2;_aո'ntu+({-ImpC288ȱia*^`z ̳peٜ H0Fj:^&t0!R%t!Bdc0ν֊gg~u6'Sybe %jJ1E,ZWUE"KgfU5Ә/ns+I)z.Su J]dX=t#Pc *~2'*)9ɣ-E-l=s'hVZ4QD;ƫQYۨ!hߟ>^{rߠZmn;/V͓G繱C;YjsC;ࡪ+W YEaK,U%|r \:xkl-Qf >w{#˯q/r`j3iX^^fg<Iۗ;rovx/?~fffʎ !q3T R27'yS^)^F 666(rSRk &c~?76 &`_'=W/t\ߥjFhFUz q*A@J+I(EHףn#-y5LdFV&70 f=}9}ڵ.Є^g5:aB-Sg*/_} g;3{ΐP9rpٜ6%35>wsgT& &q֒F|5ªF{m2EُɋPyOnR"N R4N=# 9ŠH=>ecs'یoxQX@ZkK y9]PRDw1&O*ؤ sp?)eM%2[BY]RƄ'5r 3M U˟]Z {WixoMa}@`MHaӜ7h7:Hɂ$yAXӄAb2jdV3)?Kes09POG"LjpXW`('|%grRtƴZm21Phc}:9Ε~1exG(ZϿuG BE”i:e: GӮ9S|᲌A؜MmP(vR!%fx9?}Ay SL/WN7eqˀ$eܻ0 OġYEi &C(O^ꪦ7:2)ҿʉ -6lSCXIUL]f|H M[sxġ#m? kBDycnYԃxT?8(fK:;Ƒy9u(49xXQ 6afe442k-Z"EP)Dj'<΢ ])z9 %CP8G[*DU+'(A$X<@IA{ecZ@j \^-BCXCink!efD!}o_p˚׮zϙGQsh͘0(ω9iGP)*_Y!w A}o)m+濩B3,s͈^cx>iS{v?)BVPp]8qIeLNO!lB⸀inhkx;e[ [8"|T*1:}?K"sp_x?M/ 3SCQljtkxN>B3 eF<ɳ="s?fsGaR1B(wE9vnɘۂj!_^|=$Ҕ<@1c{4ܐ .S,~Ċ^H7+C2*1D"1JYqJW~-8CF`C ir,FF*B StA%JCRZCă&nnGh`9XKE-?3yogb%kEbA>S1F+rє@K:c )$p4* no%zP "H2 _ûH5(i*XO T C`%I3,c] (#P7)dLt %T2vHSŔN@FˈиǴb48° XMŨ&w($P(F254]a~c>i%P&]2O ce%0CVPTJO&-a'4F _\Asț', NuK "  y!L'7V r]_GoLL4I}ݤÄNzwi?rC$,ƻ۽B'X_W@&\@)b۶ΰH4MN#uhZa;YF GFK>NiQ) ݐaJF#:uvwNwVi+f7n8)tkuݭ_T{*o2Gi6j;6t Ri Mɇoy###I#nMv"~D5L K贺cg+U<%Z5FKL x ;s۷Ht>4 bRa!c؋Y3+9_[ 1Lu2pd ] 7񝗿SuFG};uBC[`$_G#dr(Xz4NΌ(7&^NA'T:Q4 eLZte'H=T(mRÏdy9^*W*gΌGb0T0tJeJ kkDR.gOr 3!Rfk>'j}",07=:C,Z590\-#' r" S3)VXC0??хW^" 12bc.^z JSr-Ncg]CRغxnn;L JÓ2!)FCv 66WqDhe>vgզ`Z0tpRM4MFKnu[[/}k.pb3|A> hfM&pozs`*Ln'I^=z_hP(@DŽ27@1)!ىJKNJb~d))Rv( SNRrECSi:fKp1CI t &d/HbF˯(ϝ ٸsp~sSyǩ]}|9O);Lq4ţ.fZrջϝʜD !TJ6G?S᭾7v.)+ؽ .ڃtL;\ŝ5xcZȭ7%r%\ |=J\<^s\IXfks "H1!Q:Mvnc+Lb:HtMJ~asDKfTOUYGZ:R(L]0I:tCOvߡΑјg?) IDATOSsvaf*dЩw ; Faws|EJ>ten -+D#K?qe %e1I8Í_QP~#d(%x@j1NhX!cC#%Ja4J)p*PA3jK4 􁑰,h I4$JHeB'9fJ LN߯ Jz.f XRtPŤM0̓#@%Tizd4eB6'5B'P4 8V[RMX*)t0׏Đ)tt4-iIfz$Ф<馉+t%HhniHk"pr;-!))ԓ{0Q2-(Ep4ϽYDw=‡)}x}gň7oF;*!J,Ja({ӮBQ#QR$$&!3 ~Zk7-RBG>6O> Nw)9}|l!c;F117M4~*GATagl"ͲۨIE{೼MgRŴ"FFFhuCX8'y6BNpeV7o1*2R@22=~z|m+kUJ#6q !Dתi&N&v_)e'`[&n;,Ē1mIWAxnb.ƭ7YSdS{;܈B%K$x-><w踃,t<&z%;@I3x1_} ̸L&զZAIG˓ۼ-|+4z1@€q d$!B֖)MSec'''ia"pd3Qwǣ9zR-ڜ<=GY%ϝicqH <|!^{1}~S3[D~hO1t.apt3:3ƧOHi|/bBEʔ 3Vk1nbl|+#a@8Cca`E4#n\NTfgz] 67;};Mn\ܙI2M<P,F7r^EIۘdk2ݕ3ǧXIIg}oc)ҶapD =28v442Uݦede:,9w8}rgjBcdLbii lQ#S8>{ӈ-}沒_y-A(0Z/o?m@ebrp 6ल|Є "$} Ϧm s`.´HY&OtPJeqe02ZYb(_H;z EIGiil"CG:eLN#ƧWh4y$WTðZlo-rgEF5ՑG8IpזX~Ur^c^u6Ne>G&( 1pL> ־fk#]3xϑV6;LǞ{cnT%9êkw>~gDZ~uCx]DZ̩aRI//r1qMocY&)E^Jm&21 8:t\a!]Nl˟zO=1L}/k+d-E`ocOKc~02%[(0xe'©3|#(;)*6JM:q8S~s,/O>}OKuvQt^DFؠiS5-!c㐬1 ` Y$/6bGR%L ]G/0w~G% TR+Cia&4u LDdt!qzO+dL !Rď d ) ly1^~"PfƤ^q N댏b ,"Ԉv$@cw6p8yjA%T093E1mנz UFa$)}ҩ,_8]')܏zl 0.rri<&57(nt!qIx-:mŵ ڛh`rf\Ơ/`%A@Cv-t*@bƇ+gvB2\1c[LNΑ˦4\b=+M⇂X%{qRJo}=_ _㠵v3&?kܾgX]ʗ_}:iF#w.i4"Х1w|nTKiv805>à٭HvPVy}_/hB1Ń *452,CJ|ٟW9a|X>CŒmlm8>o*Z- `{:;E>7 hq[8`1Y\8wCeT}!=VFbheV3Yl~=ؔ 葶SVRvЋvk܇=}N|Ϙ-˝ǵwcg{#k|}KMviͥ( خܼ#14P+-kD!B)ARa Y@opd%nd(AHCq^E7L2*ldN-`V\[/}@#=4؅)9u}מ'KN]$w TE 7(NaH=C`1H7˛?U2 Zt5:ì_}[۠<6MR{O=*A[L/\`Yr>/OADo:/4) 5 U+IDހl"}&R-1A$YlY(@Q.Hbf h@JA2yc)&0=5#OW?lLYTePL:6uvPR$e; BS`D1+M3375(x,:! 4%Sy =RɆZ$?Q dMHԡ6! qh*4],CJ"s%6%`4g8kAy2RXLw}K4IKpt%!/R$5ҖA+^ b-hCN(FDC?pZ8MštKaRBټD83I=d TITR`K7 HɽWoo]IbRGӜp _kn֚J]} HQ C D*9]D$ m0 äI/!db?|CJ0g`TDB'X9n$N](a׺\.3==AJ);&S c D$FڀzlC䲘\NSk p<bݽuޡ:Dn'k;_8WorOؘB|_nciHl{6j,n0ut[tUAX";k[78zvJvRض"Dp)fhd9ƪ ;@)l`iY]4s"Ə$<b֠k?!Hs:vӋG'Yݢcau!~7_;(T5r?\~[Ŭn4cE&ХvN#UضAű)Vt2;uj+LΔm22jopD.\##f>db4O:BDόPo 6'!C)[[u\Kmw[KpCEƆ:cLN5FivL"=|^K=19}8NQk3DT3ܹ&e7IUN}&l\1#rl^g. SUd3slLrs6vd ~8 P- /N2|]|/`)H+9pξ:MU!7pwN pfkWغBa!~~l3B6W7ۜ;4+k.w6GD7clrʥ*CԡXP.GLi$q244Kvv<2Y$^iwZDQmv`I|c[2,"`j>]Ifjr' frGq2Q`qwecG~Oij] ~oѿfQtOseco*7yU^jR!irЂ& b֖\pz?3o"Y(T TFc %Rm/FA,KMʠ$9I5"4<$\hl]Ӊ%h8d+D4!MA}cf~kWiS l<&Rm^8gfSCNtY+{d>*@Gt{u8g͝m (U4iջx *o)[M**Se3<'ȏWؽ]go}^W!K7Vyc\ ~ի6oQ .^02Ib%Ѓ:AOc]ҙ><0F#ܸőlHNa:CBJJB 1x\ǰL c䯿LdۊU12$h9aiGfH&iu@]Dx.c9*V: FE1:&ɧC#}H?GB&R3̧{} NOsy4uftIPcv*K6DAlb2dP,=) 6x7H%i;0{k(f!d "_EIs/HLdZ&%J7!g# .Jdch"0ߕ 4DB×M-"Oy+l.-3R*`WH2p{F38i / Gl9;Nb1@:i pQDxqC1ZȞF9I*]A BK 4ԡBI) "c:mFARLu8HI栁&'i' JO*}#As2yQr y(O# ŃV*"Grc<v*G;{t tM9!|T?syI 4'Z , aW6z{_謯m22REMFJdh"!&'G`}}cO2>sG+1"=juno3U;hΣϐJݩS%ygX_^auNJkhhAbc}7kk[䊅D24T`)L4q]7 Ȥmv0- !;{}dE}JsRkn<89 *NzwP[;5EH3P*Q,uP. ѣ (G3uL5C S%05 S8u{{1gOz)t͑w7x 9y_NR`ccl&t[7ՙ9* g!N?$Wo.c"CO0;$w8 9Q4r ԨTZGiX]]ZgZS<ˤo0`|ln#(IJ 4FrB!<^ӎzZ[y/=$}PGciVV.R#%Ծe8N:qɣ } ϏQ",I6?B\["~gr&}Ε+L/HOq4)ZNOdFLNk5j|e[GQh* 1 2J8i#jyGG ptLt-4/"uv7Q# Ԓf `DY)K*b^l&@j:!\ Phh$ M,B\?QUL6u("@bSw")cZ{+/BT#¸0L̇}T&S̒elQ4a?`Ksl^{8+I?2SOGx+?]M>1Pm֖R_k\_n xL(Wf/ߢݥztuBw,SYQN{<;6q32"Fu!iMGȈ͏%Fނ!eH0BAh2Da]yI6t~Ԙjmlɧ2^㑧Op*ΧUDiaP, iy4w> v0LRFlFOp}H+@)?ܬ.}wI2ǎUa+d4K*< Ci(Xϓ `nz\]O1uAD]GC%x yHtg, ]C99ǜY8BC0IA2- !+ @ B+๿8w6dJ?0)  D =EEPј{z?!.c9fJdڞKeh^Me?lTJn̰} E( ynyJƏ@_\zH .)-4mNϧs4;e ![-^:@lmݐZЏ~ -r.\/X<9tPޓ$)x~GEYæ$]%aNudXmcSZi%RL)$K:vE:9CY Ii t.H1#RE#Q490>I.E nɾQ1JTS JI p)n_Cϝ[}xc0ymcgE70 IiGari*qFs2S MnvmY '0 cg)Lö+h,# V!U#[S:?̹rku$v)͌`{^d[b~b2Q# goqk4pf244t]DƔdҔM d#ecMct;~ޚ:pse1`0&MwZiaEVD::e8n;`hkŗ95Z+sKHRIU_J﮵~~?\@h`!4Q( {cKKA \&3= zA'/aXZT@:akxP+g 5\;E#B a,nD/l4\>Oe9#b1V}#|. K.E3.1ѰY^(47Gypa셌Ӌ%~c5-'/sM;uXw`(GеJwL *hOR\VZCձ4LP:T-$B`0"# MMgm@e:5rE)Zak.h;@(5*X 3X*ilo$v2`#`B%qF;Xjla"-0t?1=E~<^'WY)b7nP_vhNØ0И$xI(_mdT(`Hj8 #<؛,PZ?o 0F>_X/D>}˯豷{Ds2q{&( zi4хG1 ܻs T>E4B޸*3sRݣ}@9&KC\Op\J%,T+eVN_g_c|orxY:g92Xdy~3SM<ۣ8 TK2[\X^| Hmf)s.{#{g/a<6v| _5x->sw '-+3XLVrѨ q&|8d X15p'@&B?=1ۆ PDԜ[wyS#NrYq+oM8ynܼ;(Ft;}J{X>UxϜcg˖?0rMY|?GuZcmqӧ9>>db#opkh9WW^}͐əWm8049vn3=cwakW&6)*j'S+)NP8b玁0Ylpvh=*Ռ s%ۻvq선Ωhc6_/rMkӜƷ̣v_>HP7ϲN?D0 2"+IDiJ\{1۽-zAlQt%Gk1qfĂjcoU=01p1Y# c|0!I :0qs~L^HGR%8Y:;Vk f'9P(h|Y4cgM4N,{h%U"q!ؒXM\}k4g$vBl3V𙟔\Mped 9 N41 H6X*K$q.Y\v{C֘(b  Q(fP8Bէf4_9q_Pn: iab}n^',.  pO<ĕWsgx6Wv,B}Leij8yeiM!R3kck3`OBa>\k"SH,j<$V"3# LFH[KVD? ^%CvӰc_-eN4:H\cT5s|L;"c.4 "I2ZR5ٕ)mpfLXijqE9x5Rl$4,LMRh|@QGq7^20Ўr,XRUj!WhC1b$mA7 7򝯭r9Hb#eIj3lL9 ɲZ$qt]ZGʊ1M "hhm60 ~cdRzt_}rxD}?z^o Th&5H-MX<̷X\:MP+Wi4' $),֝,MN;G.4;\8VbHǷm ZSt }J~w7.ia ܸC7^AӇ,MwDtw2 㓋quNg0XrUHtȩ ^}&P/bwKMn9}J%xKx5~D:~6YXr 6ɲmZG:)ᐹ9-j2053AlJC 2louIr~CA)"oMwem}!LCL'`zj]Ű$$k 5RA!rno&I2\Q6ZsW+իDFsg CɹӬoƒ3z& /"+[-8z7^jbiy&c1Ncl@J^~Mr9 +6{{{ܸu߅izDCc.{[)ڎ,w.[w^ˌ|VoI"A8$nR8yG=֨Ywwcj2_d֝Wh֫"k E,}dlRr8!ϝ^oN'}VN8I$ΐe;wWiheYɕ%Z,JQ0C@bRQ2)qm,c˧'ʱy[4}xh ިs/ͱǤHcbڧ݉),6oT.ފ#}sJG8[*і]ZxRUFHb`"'wRkJ9KG=y KI<%(4HѤ NMʆ,<.9CYdi C7P aR Q 82ҔDKBa A$,W_ۆ8{dR~rG7G1 F(7sB$ ry'g:Sj]?ƲR.\"]bf3rCL f yx_R(0l{ȹ)BqaQςeRU(Mgտ4NQڍ(ǁe/菲yc/_߾xix^/W'`QSO>/ 8}}440M-0 !DfA @~)%MTUe{/~Wh j(R!"#DL p5@4mgMLGUSHc)MܹMLML_+fQ2$ ,wcb~ u,uniJ GVg3P?e~G߃ T"y\Z;X~[dIT沲4:}qMFb`0U+R.ڜYZ\*1r[L)99H-sg&TP{Gd{mk޸Ρ]flzbCX%thT|ЮAc9Μ<8C>z&ۇ}vwyTeu"͍]$Ÿ7:F&aLL5In7nWO۸fJd>z(#acm A7o Ͽ+sS,LY:q-Ͼ av&Rrp0;dwDfNkm%A0`0 4WFV:ilPqofl[w*=E=$_: 7nA#}V\3/z^#* LCԫ$*Y-Q.خQoptA i9uN9X`k.]dKqL È\?3ȄYrD}3{8G=4,-qsm|.G&#r>I 3"zmM iا^+Ɗ0 h.OW^ƶmeu x_NGLN΁uga [Y_7!+ʕRDJZ,7n_1[RPwqOaA S"HLxLc\R8:bfS1th(?@cx [0ޱ$-µʈ L2[hR,9"r Iǩ'$M22H]FEF` sBb~e 6ʣGfJg AͰ dIiP~;yI梆QJt]2r)зqݡpZqp>{Lwyț& |ɤ< A`NB)!PHOcVGOC@{_q9 Hd[)F`uȯ:~(%leAu|H G.i7OkjǗ&,CJ! EWabt ;gJ0l[#ya IE2  ¡"!+X# EaY|N Hy!L,i20 rڵJڐ,ZCx$fOa&u[:| 6dQ4NpdP$> K3'%{34!" W 赹uLE>q2{$WP)e鴇4B;GW^iK0>3˹y$mߗ {y?u^N IDATQx7H~_-5{[̎99j3l Y**\S*ώukiJ2̨7 RQ<織Tu*}z><Њc2—Y;>honUj2 M=&<~1:G]%R)EA8qr^4s KoؔU9QmƧjܻss~u]dvDz\z~hD[J#3jޠT7I2qg,S4z}Ɗ|5X] \Q{ +\\3%B|wnfjND?h_o/_7!CڭZY(_s$O/29+i CR>g,G( ixZ9< j(Ý CqOH!V÷_~ՍeTFi0ujxG?dJ,SI̴0vYD $Z Hn1O'88iGŀ<!|kgĐWvyOIq=$$R$ C:Goi2#0a` I\`:6 Lň"d9U㣿oMFFk/_ciif~{Hke C4Դ05$A786R<`pam:Q:!ƸXd!"U9fmg!qzSr9TȮ"COh&ّ&,TOuMB3crΦ{\dҘ Ĵ k")pU0L ZB S.{oK ii3mS!$(i3R15arr%%00,ţO<17\I'I#Z& J[O6@ aj\6QJbb%XAI% drTDmHbP d=MAee(S :Hs֌FLfe(cpRo|}@hT$³4$_Xu&m Pv@qX& 1ψTY/r҄w梒 eJH2 1E%Gַ*sS3ĩ=Ƴ/?Gί{fe_ʷI'988m7+%n6O=q]cvfW_'Wn1Hi2v0!nQ+b&Z aNϷxW9q͚wy#cI/LR[aiw!/~StDض}+R*UYYYdan+TE<# GV(؞KSY4e&.&[*|N0V.aY.xYgƈI/b'sVN,l1Lxce1wHy#OcLjj31!_z5[EoMPU)Mh*.Nz#OFrǧLD.age%NJA !xS%(W *+qk7VF nܼNuc"j7"YyOǵK!z t9>>$b:qCv\L>{췺K~8ܹy^x{{V=DYqww1]aGq-| IZ|{+#ܬP*ln3K\6FM9Ϧ^Im;CRޘ8 W"jvO1 #vv712h.wo]! t-w(sO#GCc\㨳ise޼J >3 f.UxCWOg\\Ni*vb:A@*(ew60fjevѣR. nsb4" zw,J! ;W_1GA4Z/%ft^ P@MLffbaۂtZQm)(uIBIl#58->88nqB(LF Ks |[ȋ Em HNcX}Cw7h64, WR-aX6.І5R"QKasy~ocDJZaK q]Q,5H Ck<-^_"L88SŠg0~'Ty&LH#FO3^-Z${ؾ%.U|juI% S lGxTY Q5p d{d6 T1Af$vF(0)G#G-2%x[6H%ޞ_W֔N4W`;,Մ=P42ꓒ$hܨxU͞N(+],S%gdG74>69O!䛝PP XhCu9"%&y8B" 2Z+%"r3,`c(6fd0o/ga-=xE9b4[TMAcZS`kG& @ %RD"Js_%􇊑KcєϹeh  0LjÿO\o&1ϜVsi/ΉyݐZX+l+rb"!ߠ9UA+'{|}>vhqyi|{ L !4Ddwm6Z*>Zk0?ڷ_`8X>1VT Νј`zvW^ί_\N'{MܜO)>Rb8ruql1Li:(nR 5I{YmaVE{T A7Km?\"2!)++'xX~~is)zIӡ=cgs~-uv8yky8a<2'$IF{te=Os|ưl]d>=f*|gӓܻwolSYarb,m2I,4ƀM~YZ%$qv<Ѡ:fn;"M3zݽb#T}5CbR)Ͳ8{QlwqF.2V(uDc2a~I'oqp9ZHdq]No1va*2EIͽ6UGGcA,uF!*k^Cf1I{8鱻n0}L4I: Z6*)89Ӕ3рWܽ+/'*viΚ4vm?JQmR̕(]Ƨyahr_~k4O`Y}I΅ga !~$:;S 3 [AZ% ֒NjKd &geCI n$!)OKz/]ο}!g_ʡ3HǤ$&C(B" ) )LW/3=;Q|y8NYdh[ko:,fTD 2}?zoW9unDQ3ǟ|K9yvvõz Mr&쯯roQ9#c/eT$hD m!(23(͹SW{!AlBc[6m8Y1C6za:Bڂ0#E,Gz'XaŠRRnU{x$2]FM' {}.CZt]zM1ϙ( ϲaGHyJ+0q0~>Wu.24cGՀa8Du2/ٔ'1\Ic! J 2JfC vɚdK(SMN/n"3(>faZOv4UMZiCZSr_@ H:EB C`e 1M(YLS]~rZH4dd2s`&IH&@c#iGMt ҘAjDYcjIS&"T3 ^3 ~, i[0I9X[`7y="k P"x S 6;?瞛:/7o2&`D R̤( emڵJU"%n+޵T+hJ  &73/s; qkS٫U՞zt{>~T Doɕ<8֛!.11 b$ J)Y;'HlIb+IZjFLNp##J|OaR_lm)* : 0YBR|&dUz )\S㊄OCwES&R:Fn0&\:8$u0&MB/8oW/pqȧ?}: >.-l N m!?RTŸFާ7#,\|Q +/>ˁCgXXCfl,s;Y]5sT%.kV>2xOs 057i{GO0V)_yI̩Sиl6(V jm3<<\%>&gY|O#~5ucK{{{Lb.ݝMh &ǟfld-0$ 5_g,QVVVz|>mx5~{}{ߦ:6; bgwV҇`oo;8O| Fg;(" (4M\l6JJK9q]gOG1Q|'YWw5IlS!evo k 0@b&^ Xv#R[p\gl@/͜=\c7fX xQjMg+č$f`R_dL#+6^3($XYitS$yބd+M2H;aՈfAd9ѓ ;'{M 5nLAi\+e EIt,֘:YH)wljsifhY!&B D4Hb StByt ĔF* N,Hi5@AhDL^74f /l'`*/1i2#AY;L(0H˒eRsY=|I.iшM/FDޣ>S%$ʄȬA,j@LA ޭutwjGt$Op*/_6/= րfeieo+^󌎎h)+"hn19C֙7,kun~<[n^-^}F7f$ tLMK_dii1Z.\r3:Qac{ZNݾPaĘ&%jH$$RNHr.HaF:ex&ן6łŹW/;k p2EJY2 kq<_yyQA6.^0|uQ́] WnR(q,w9M|˜Oi\j IDATt0=> SY^[Xbu~'/Wz&f-*oEy=& |A+KFg{u^껻XҐ42G+vdrQbsN~ 1p:B)ʬ֨H٧:bѪK.;[*ۉ8xd/psbbbQՀ}ġd|t(%q**Pcuy|q37k/29{σ0|,#QoPuYvCt:("~11R%_$˳fimNǴ Ds=0 FDR"dX{Gƹvӧ4QD=qj{=0r:y/:P]%{*ֻ-FKeS۩ѪYwSD~<`bF1APg8@"YiT3" Es M^an|\vMc I4z ~-77bAd Ґb -m tvr #qHwHD@fi%01#2 6XfGmw2=7ų_d{NOq}D,V˶ ^IBKASD(EJL{)60Kθ0)$4R"ehC}GB~WhL:7Xq4^Qt'+Z-Vؾ|K_y AcDx]8)Tl0q{?Y|mc>~p80F$PcV6%AW`7Rciry}854IPd!\)D0#MAh8ZH$"Ib/"Cz/|{]2Bb` b :#|݊h7vP-z kt-KbFJ),Ȉlq%,4> @!diPHb2ߟSI1`ba[i\0wPOQvz$i(@j$1- R!8I#0mj2$J#\R`&(h ݵb^ۓD1"D#]=m)ޢfo@44:P$ ĉBuLb2)Sq%A_O;tsnD+#l7,]rLOO3::J|N?t{092s C8HSaYL>oV HJ)܇< Y^Z'"yE|9rBJ',N!G3G܁FApuCnܸď}||X3W"l.`Pfuq36>Bv{-"zѱ/Ƽ`;&QɻfFX .!G=82:ձ5?pO?KmlĜdfpF+ 6ctZ-C>/0BdsV`RkDmcak5hɹ Rĵk9:C(fpr;dEV6J! OmͥǘڀS!;Z 4*7qNCo”&FJB[Q8Qᅻq+Rs󔆆)!'O}F:pW,Siv^+m:%(DZ ҰR2ckr2cՐQr,^ rHa;$6taQ=fNӼ~BoǞ:g:7}) ,K(ty'£J]!ki$2fd94z[ۍ0Uj&C9I^2Yf0^8xq2YI/y:A6Vd=axLn D&$"[s㍈bt%hlLjR%%t02 3&@5VZj.\XfrlIS IhKj5(1-9RE4a2 #C<{.ELXc:XqHܻFO6[$'r:9F(ԭ͜KvteMuxm^tC2:j331EG~oz[# zCRi(BC Ђ<)W1AH*@>°=!iɢGƼs|`,Oǵp]XkB&/Q1l5dJtFC"@d25D(}\gȱbfFҾ( T`ЎQT$4Ka˿o#rB ֶkLM3=5C2MFLMo13W|+_?VV9vxW^yT6V5 <8arb^:́)ڍlӴ,?x/Wiw/r2wZx* O|g:9pee Qp}y5Ɗ.7wwxeKk}GmH)" QQL"!XtKFDa֋繺G^ I !:8LMD!0"!Dj4V RJ,-virXc|b)ϱ8s&9}3Gpee7T}ro59rPM'gz1W D{!$`jd'X?K* !LƢެ1Rq .)^Mz#\zrk(Xyx* 7Ð~] ߧ0}m9rrh7ThAfoM&hip鷑 &G SUJeMd.su=t_R1o]N>Ar]<@sn:V.n l4it=NG0\ezj͹ ױv6]"NqO>7 3na:- Fc"!NL8z!NP&3xlmR.~Wlo"nƤP*06Y`r̓O=OO333p o?OM{1ي͍%6 Zmj>7nGdscpg7v;d%"CbwEmfcs ;٩cd:\8zp3^=t( ~a.ON헗K\XFfm~>υ{1c;6дb_rS+4l?߲^>5 b|t/Rk= n8Cn;H?4VqtWKdrcXB` $RDƶ-i!$F^{OOv;dˋ "d ]l<,!)W& D*X+D Uz/{r7i@4ZM{5dL& (PO hԚ$*i7G \xk/q֗v[k,X[O~+ oP)"KPBCXBv|ɺ$$AL "&X]..la-(Y]cwwva7$I˒P|Ti7А((~E" D,FH2PJ;}n}^/>sp kq˂ȖҨmA19T>+[}j--aAP62Y80Ȋc% -d=*#Y*yY7I0 C$h+e(C\0AYm -YDE;RVd2C%3P*@ej'&[[PdF75giDA}%bfVr] I*G$VUпzzP$ Rt 0m[]+HbRjE,h{ف #HM В$I!N& z$6Hm;nJXI *1 #ĔͿ ͞  'R$5SC<2H$+kXR!IM+C &J~#lV.ivCDcH"0$=E؅ќyȐn aP2D&#$(1AwPQH8TK=.z!+=@##?$$c'-Q(msagwoHӲZ~qof˯_fEVwm31>pgQ_ɕ8~LLp#4jdyft|;nsKnRrn˲HmI,q  $&R ~ "EXݢm`hXߩS*ab~DÕk 0*A!P,[b;&y"` kۜ;o?C}wsLWtNy;f롷׾4.E8356:u/'~ylFmDghxm{8vūāEQ걻aJ$I( Kz6{?FX \_^x^^[w).%l6%vCn4X aPi=ọbK8tzK(l'.Hzw=p\fb|av0-q BgO},M*|i -D/^o6:20W6o0{[u8 l_E$Up"#0˜8.j{uN?^|=D)t5LLƪUZkz]|fR͏E>kđGDŽMIm2|'>yq]WмTCr%f&&Yy7nrA>&7Y Y1Dv0]1L)cJi$+{-F.` 3Z:JA&5l`ch͘Ryi?дGU$TF'xz!w{NA=0P.V KB.L(-ؾa}k iY݁^+-[mbЍ %[!#@*#y"]cPPQ@zzwLcBɐ/Vd(qTfp<-Qmb1T$Nzm3Eaܢ k#=e Ihu:3SGP>3D첽SJoFz>M^"^Mv7iFXa9X$I8 Iᱳ$cľ-MysH}UܸdV Xqޒ&HӥHH)[3-P$a6]@2ME19d{Eo%]Xॗw !<{Vf!R L=}LMS<`Z@Z%TCE0- S40 R_ʳ;?{Kb `fJxQH/>ժ"[ƶ]7OG HL?a3E oGv9SiF4b̈́l>>v6h[G&q f5 1֘8 R"">t!j"e#J/{3遣R6FDPMpADi LF[[BIVET-40I$$Vtm$>'LJB>|<1rҠ|82yM$3-0 :āFEi#QV@˴#%@ ) Agl)p ܨļMf_LyK!fށ*ABI)?G$ |֠Mz}sإۉ)"C"b ə{ #ose85VOKM^҄DE+AZ."N"ѪrH2~7X^~amGԄo_?ϿO|ceOSS-EY{;EWp"ǏYN#3N:{uf{w9L/li?[{:s^DVO w~f ūFZx}>^xpmigx2o\!S4{!+{uN_I}KkKL\ď}|/sjEg'pviĈ9Y^\._<-67i ? __ϒEz#[vå7TٷVh5c^e z4P*FA/B%cYa@)l P6Lr9fqlFkKc2=5Cd3C*nmp@"j 9,r̋/3 >y `ue_u<j<%*m$EG4v }U֮/vwY[Ydkg?찼tncפޥ2Z衵;X{DaD "#qm`Auٮh6 s}q6oڀ%=5Ln>{ mTTdo>f{%~[oHBl2(~Lz/bZ %IVC"#q8~SG>vx1kѩIRxI0.12xE*EehqcM+P 1 t%6+cq%M')T*=nmw׷[ 6nإP$AXem}믽v*% !#.  V [@4qD!gwޏ HK`Xf&1<AH!՗?D6ĭDUoSvcyz}@Vԥf[JnDŽ r"z1M.[ĘHCbJ ۰О TKV>.̅-i|wp8| AGa v99cg2w.z JD r$%b2)-Pʌ&VnvQ,'ȸ7A9V{r^M}Pm@׏ Ŵ O1%4:x`brxMBSJBiĚV]Հ 2C P3 Q)4IL0*D4fI( mF#D̐勒?b'CL\Rs6kK8Z#JkLl">2& @麐Zޑ, #wM^Nay? }f0974Ls2%*yځo l@HZl.HSЂLFbenN`5J+-O5,Wk8&a Hj;ķ?Linj-T?VDԈ$Kۣ__ XRb3tb^|#K 0q ?P?m"",2OO`J\12J٬d;\(6;w5˿b/D~Sv'uJmbؑL2 u._B r+%0Mf J7@CenFĴ ' #^㱧ߠAq9Kg-G[}Ym^x8x6˯]&V_F=lh=^@9`M aƵ2(8J)l&V Q$ 4TvYF |䙗19za,J+DH QQ{$ B+ 1~0x5^vZxu:?ׯFo+f Ԣw?׾2\Gw'߾p,mVw,䧳TJ__}U=O0T(=DugL1“KXÙwcx—g_nBێo/7T }T"xT,HޛX}sWU/3=ӳ/\{MDP%JP89*I%[,6)P2Mm$5q齻W޾q_L3I ū{~.#eD A腄AB)(?Ε@%5e9|;/rqv`KZ>sfV#%K!s?,.^s$ |0,#I׉|.UD{Цd3TV; F*:Y}1"S;w2=! fdtIHQ*cs#s{8v7H{?@}~3ZcT;=6j z.NBfkktvug@̵k!}1_z [88ɉi*;]nl@Ӥ=Hf Ǖ7(M٭y~1=9ΠylebO@V# ^Bu) -=f'C`d -nmTYv1~GY٥7(f}7vng09[Kx\}V?Kw/}yʕHhIH^i @LȌB+ HTElpcL7A d'`;*IViaF" +bYU|2 HY-?R }e0؎!s/+v9)& oD{hW D40Dj 6 WElJKšvCv$ƨ[DQa 2$buC4G; $IZJJȸy! P4T_:{ 'X揿g1s7@9!$DjӮV8?@k9(TDDHe%MRHp$qb~ #I; H ?ż풧en;QI4i1`I,Bv7,ĴҬN*ZKS#+1҂Aa)v}tD%y㺦m2152mBDA;h/$ڒiAzcFBW?Ղh#_10hbd<}"-Gv>ofH]Իw֕RŊ)<n oֹgz<f4Jt8g^ɕ+y䉇X77@nVQod _V±c1>5FRaccg?$os}}{6;LN(y3ϳU(Iޙ@K(;:?3 ZYv[>˛[bi >;FGБ&ɣti#LFstz3gD%u}NX`w}Nkśv4{C7&zNcscF.[[[6kM\Ű%4Xb e~t[}?bd@ djB*F@8d++#T6J \y4BѠOy y' 0ޠ#}n|?/1^?J(~bRKXULi8}~n^Y e):-(r#\z N-?}%l+{Ne9ڍ"G(Ш)X[ i%tC Ҽ:[uVV6F0BAL#E Š9x4+DJgn/}otLLΰtǞ| mXdS1>J©b~~G}[ɺ#d2.'ػokIp  gkk^zS_ fˆLJ<¾Q{Axa[d H M/ n7M]sQD~B=AAl//<ˠuεƥƴ%! Wq @(MkbCI€Z,cf hbm` MWDzHҩwӕn?mH"=FGh`Rw)NM& " [yu&1m Lx"6]uK]G<^5 z 6= IHq-1LAR#B$d|j/ P&NBuBL'+dH\XA&>y;WqB+pVVV z+ jԈAgscv `X$BFJyyI7١ ﬞ峟0z++ڦV-س>*2:u$QLFN#H0+ی}ƹ~J0鰻3gey "==N0^HDT[u,V\:agg۶12hk9ˍkNٹY_1R0i4#a 7iwl/~nAM*[,^}'N_}fMJYtX[ۭ~5X^Y &՝v~w瘘9c?Xl37?'ٷ0Ç-0s?w6Wo6ٿ8}/dksVcEs<'S'wZM:@E9sqLv<|0 )NUfVH tR2WOpBNOi=GG>kvYޡ<6B#]%-rKIv;t ɠN1a$9w#{~g/~S|KK_ae)Tc u\612B2,,sV߳I A#4WhX{%1J.qIVZ*ec P.7F$-HN ;1, &iCh[# poCK$b_ i[D;YBGZaHEBn,]7y;q%^={7νH#utSC]$} Ѝ*LN${-z8* )8t2VSJNF.qMM(-js'a`ib,;N.8:ՈBfBP&A$IhSA  B+6BJ@ǩ*њ0LOF @i̥kAD}o B~@r07gbPB#VZfz3Ox'FxWJ B3D9i=9}Cu{tk{\v.IB|F䯹\3 Τ'4sm#ļm-Rix'|2:W3Rccs|7/9|ѧ@lo =neyyiHQm,\Ӟ㘚oIfa~K$ҥ5LQ2t&ve_| 8xG#q'9ի8fznE" -Z^%X=6VWWتqF$❫\|oE>2lo1BZmQ#A+G>_"_̺Z\$W=F՝ #.@:/]~`r4éM#RY! #fNp6?3ag@~|v-«<M}MVgxOcg3 .ɑXn`fqPn]‹z4'25 X=Y:m86+4p{%٩q]ZG!b=." xPuIl@d_4xd|dmDm&0$ٟv5fRk8mX)EρG9o0D.u6Rir PCg!ay  F M? BEn38l1x+r{Q 2L B tZj[?)w"m֏.B?=f{ZwC vK0IlR[D0E<Фt94;0A$$:lr`j?`hEynu6}/H_1l$ 9R15ȨK֌I`fO+DM,6id IDATG^k"%XIc epI<{׉P:@fSI9k6#ecH0Ҭ k'$D"ńnZ~A}hO?_/yF% â͑ขBnhK{E%i2FnaJx^*0 .}{Oi )M!"|, &''?ւ^r" +43K1&gRc13{LS=kY(Cu5<@HBRHL)(N(2cbT5fz SbD*L\0HAɰ;ii03"SEH HeNJ(RhebZh i c>Azh` cM@!-5HM !h A(t(ʄy,#ׇ$D^L9;kFh`$iD $̎]z)I'p9qk@+%Pix+;̖ C [Kl41kv:Wh^c77~}1\20(#]퟼D113.z-zmvQV[78~ YZY;;]m2mE:u+OУPWMJ{n|4w7+|7~Ku98z0ؼqi(4ɗ-N=A.dYۮC^Y"dmw ?2ّ"rA]_: æ;օ717nnt&2ygijk7V\R@$ 䍑׿ƛo\S(Nqmfmxcq\MߣYo0;7GD 8~q0Ⱦ^ăLENG2Q]ʹo09V`jrW_8c3s V7v!7 r >hsI^_͌+twx M)_l0ZBH5 "j=Pׯ^ =L$g6;ZF.nNr@Y_!|T m(+RȗT &% `!Twa!1 8B #iˆay4 Ni EL#Hi`\'#DLկkFyY~aX0{ PgskO~ܸVuN>ó|O^bnvaO~gGĺ#GFRe}'dt S ?N@ɖbgp-0H,WzG)7CcO\OL$[dE֯Qo&Zs=(c'Q=kRR((L;i&Dqv.n4 %*mI(ޅ/-x~gej^ 0՘St{ u?ejjNuZǑ5y#h2:j21=%"}S9c?w'?tV8}<ô ӳ\rO?A^sˌm^yF#76ȇ2`cs~ԦhL^gb/Yiccڬi6`tkQ0hh[ddqC;pcu#iwz<1zCJN7ئC${MʅQ ;[Ufg2MmLep>N:]ńgBl;{GGu6vf'ϒ-TVLΖX4Fi4c>?8[nFD]5FktK>W0M.pu}䣘] ܼ m%ӡl'fcT0:Y(Av]=>14{>~'_.j1m4 'TkmgiVri~Ml=Ǐ#zZdZC\Bs h.0IFi`mhmq{6 s˴iژaX۱ItcZ8e9az'β s)l;'~/z?k?S{fEt[^7oRkT٪Th.uG\L䲣Aط8E5 Z~(AS4kMfad%o٦ HB033km>3|s,,eykS3h/ bqYn^aQxǞǗ~#_^%c$!Ô %ֈ\"脤&&Xߞ]XDP__loW鶺$f:^q'OyͫtÈOǟ:÷]6DG:N*~O00B˒br"U aҕ[]FM"bd=w?h])4]~V㹜Kr6Xnp7Q Y5)wWeܡH)0fv8@D nEiW) #<~jقF X^0s//骄X:Q (& snSJ2. 8m2DK^u8)@1Z3č HȒ:)f1X\԰eym21R.3stNn0\(BZMlmxZE_ zB,ƅ5$.1flTuͤ~ qx~(RaBj -ȚX"ٌXQf<_Uʃ6^C7q;xB[ CJ}I|MN50@niG`(p!k&>%\Jx2 W5]MCih5 Z;a͡6!!%)0R1zDQcj[rAGiAuڝPîY.KˑHZXD#nGi4@oU޶5H3n@ 5XġI !HiI4L tN_ t0PH$Iq3 A8DFh`$kD_EP<&2!)`OBR:UO ACB@ 0ɚ&LјҴѴ :"#/Bgݛ0~οI2E!Bi2 ;T{ؙ er:0s8pQ\9;ML峸`std^骵 7Ԭ;8z8r^A3Z+PBp"Ua첾-cg>_[V %rDt嚘t$hsQ %47/̳baV8&rciFFFp]^}L&Ko[/@㙧ȮbaLO;mkT|N߳c Ӭܢ11j$vrNeCld~vׯBZ kύ&/~|$Il`cs CZ#m2 |kKک38VA$8?ޏ/~}'%*L,!hJ9ξyBЙ917/1enKkK|'8ߨ6F=v/Kn{$d\;srG8Y.qjDx'o=$6n xaL$O1w(rdYj5^>F@7!cAG.({/ʩؼH26R:ll,┋hcdٸB97ChibYO ör4 R/MM ضC066`0Riidm2Y5d a0ZBt_#OáW/Aes翇|٪ǟO=KelmB< jUOY%_v GRt~gj Vi^ĥqNLgcFKr9}%peP|Ѡ]سH8Pl ʹ<.^ajbWcb|?3Epc|^f03]oQ) |(J~vIz>A'dk[ ^tcA[UnV6q@Ӧ]o2hGk^A٩}IU?`t-A9$1:Jgo'AƔsiN F AvFAE& c۰m[d #IR0:ݦВT nTR@,LQ뼧rb ﷁm}!Yܻ{Xa )Z)sLO>ClMBnC؏؆hxR`n@bjSؔ v<1D*"L-98K%ca'4G-d4aUۼVڕis6شcB)1Xӟ<$M i JEHAV!1O 8~ i"t1tX(m^LkC1QL (D wH?aT 2K0. %9>ZNHBZD"Z1݈]h5]zMiӬ%wP4Ph=)&,z# -.nWZ%8%M =i1BꄁcM=1^ ,)H( TaR+]ˀd3* .50Y4Nd'5j_R)@յiz81-`kBvΤ$`f ~j2qHZ LC@v-n[p sMw VaGҔXwH3QN;,@)ة?QI"%@Ē(P*D1~ӌHJe`[; ")]j~K1)i(aJU}mH>v@p('HAY2=>=*$6KDUWWv D9 փ"û,omOZn\_2.uDm1:29vt/gcuOqkk|/gt\K>Jo{ou#!^WuW?CMy䓟ɿ[ȕX]QfqV3K-/rgO]  {K lwd'^÷,n G:¯._r},.$wI#ϑ$FGh:xN%XA/hB!eY\]$}!j/H~&g1DTQB}N>_#KP}:QS+qUT!(eLX VgVްE WDFn:VWW/MDZkzb!ĥN++K|iЫK8FSwz*OXXVDv lC89/f?~77[tW^q-\w#iܣT!lmfej7W_l 033䏹]Txݭoe`¬#~HF'htđb=w>G>ؾϢĸn,O9BGGNs(:w\V |N>e%{o"cJ+;iLYhЋ4„icYgX6ǚHEL%v<3B \-993Cy+$J5L1B 2ñLj.%p,RƉ-%ÍGvh5z*Zd;e" ]ie9z - Ge/֐5At&H嚑GTO*8~vLO^Zr wM%ī&[:lp3a8Ϭpv&xmZڮo^3bӋ #(X̦.Rha)yr>XEٵpFTf4vaCRVfVn` S BhJ- EABD%1"H񢌰xeBmMFz2mA3 X˫8ZaV0]r Q(njISiSRxGTI96Vqg hMP5.7f)]TL%:ZI)V,APA0Yb5,hjh6l^ qQcAWlY bvnw 1uүa9AeRSʂ\٠$~=PpTvp:D)H0Du,[#SHR 6K flf55m@V62d hh YاkPiJ4aHSコFJ+ 8 b +0"Qx$M4vi IdcTJ$ ! ,Dayui=+ Ih`͈O9]:Jz-@lr=1[m ׊œǙ:H疼؎ 7{Ym!ԆFR/Rohm6 Ns 7/`c:I (`r>;-MlBɚ\r2ݛRꇅq~v?BdxN#8#_cuэ".߻??)F8h+Ϟ뙘XJ7x(Ҕ|da|+r4w ɦϜD!Z9f۴}R7>AVf-7 IDATWqs!"~g4%}︝O~|ۇHSŻ{!r-<{8c,=&N*i"" )aonG~Fs=gy*py;¾m{&ၭtL\AF`+<> nJ'N{!jEgWO1>Y{;Z|3OoIQP3~KXl"iR.ZnKn.*Жēs( ~ =J3!dp]v(Jzdy؏QM1:S_QT*eνp֚JB+Yh]{?pHD2k-v5i^ڽM4Zŝ$Il`P#FHe0rsX&:!y<7_C~x4mv?|?Q_2}?ȗ؞/u enpGIuJBDPUZ~[1y>eΜZFWXM3:r 5_O *gO122LRٔL-RhuqP,p8Xg/>l۲y>F6C$ge US Ӽy"ϣ& C,Ͻvu'qFJ$IdzvLSH͵W]ޝ;#Ok@Z(酆n޲!4XO4k*BD ٫>Zp}Z*nOg5A t4M9 積m\Y@4mSr|\KC>O'Ht⇔*! YNmI_Sf\, ,K*A)sW[)ǧV~Pؐ05<7:,_,QeIXC!+Yt, t|%1ȑ K)C"EJ }ڢ Q-X]:2RNX,FT48Z'>*Qc)tƊͻT=1Bi !qvObf1Q e`$!GT#EVT|(W5ۂg"Kxr-,"բ\/(?C/ˍ.qJ#\ìJLOu(EN>2O6-\bp,! ^Do`a s陈Xg> :$(TZNH`a1AmfęɔXDt5EA{XDzkd$Q*dt,'4$yDj"a[)($M΋++S KxX(he˗Bѝ&a!~ )X(<#QZ` ]"+h TƠ0T@'Y1c$)$t@G. IPg[}`7T~A1imTӵ%4ơ$T5& 68O nc &: {$[(yn9L|顯U][ 9U[&xK iƒW鲼Be*$iBS̕8c{8tyrP=eÛw~{8Uda`RBBDODa }1ƛvsi<ףZGݛsri_ٵ!?$b;Y^Zb樯XZ#Oyv\DJTFׄHJzu3ԩҔB_*jl6gY[XW>+Z3l=΃~gPU}nvr۔x'i[x*ͥ}5I(}evKf&"GO;8GZ7Ⱥ:s˯O!b 3Sl۽|LPB+H0hR){C]9vn5Ԇ N:t{>Sg$N%2_84KsF!ڠc;E_H$dR" #RGUdqf"S96elHUL/ x:Y^ $S.Ic F.:KKw NmANr"4KKpalqXϜdmA kW++b<Ob1q?^i 8$q- YBv5YQrQ'.Jv3% :OFXYB. $1- rs Nc aE5^bN/x\,-CY "R(es 9Zy%Fbaۋ*s%[FP*AEP. l͑XpQ-B}嘵NEðRcc y|G`LTvKX1!ba^ł$TGlp u\Ω)LTNh%6҇3-:I'-|a_vm ojl; C$9uP.|YknIȹ%9hд{i 06*h"u:m%5HZQ|6N7JQE Un,$X#ė=b(L]_`.i :yIV[ E{(H@m,_ se$DL%2N5qbZuN?Db{4=YjY04V&1e kU҉TP J.JBY^+eU4Ȏ'ey^Jj!NbHC#[hB݌CcUVm"cxvqq&I}D |6M7]=x>ƪ0鵸2!j~ E[鯥2 gO.g,6 ²lI<k68eԇmYMjD=M<=Dn[t v nN%g ҉gC#m(\\>AlbOW0aSM *9kƥm XAb-NSzkK1خRՄdh@7a)I>*nڨDCe$!M./ :PiXg#(e TDFHeiAd'GR\cW )$a))!X]\hC!ockplIIRcv6*#clX`KE H :rA8ib{1$ k\z8yCˮe8RYR(~ <_ NEap) 4$}6Kˑ\$U;Ow (\?9@dHF5,ZԱ(z9ʉFT1q'k `j5_i?B$bRrhK̯pd۶tVSǸl8|%+~KX.Z `;RƊ pB<˄A/b[yv]#")V,s SK6izXy! NLqF$b)Op LMOS* Wΐ]mi~}wbvfM3;9Mm۸BьbܿϾ]:۷GƇ77}W1wY╀oy_HCyM]7ARw.}X787//r7`tioR̬yS q|N8-it!V/t )0 n7ddx#nVIoy'O~_?^`e@N4K}6``c/F=}i:Z© )9ras$]^ S$rJ5bq^ʐDXV@{I:$$?(Z_Z(&D?lQ@'z: |>p&01q/!IS\$G񔏶V?TɼXN+v,b:68[I:BVQ7ZAe1Z,~g-DNߵ<;xY?JfNu}5#ɅGhueE\Ȇػs .E*ül.4tA%ʆ{v^Oup# xwI A.iV/C$:'hӥ_G?L>mۨ]kh73/7Ǚwn{=GNї^d.Q23P.g[&& ?о nh={̱o(v8Œf`gj4+BzSg'qr:N0fp:BOid3CߠUvpryN18PZ.dW~z$N8A&$CC8R-W4 vۺ=ʼ JQ,V hwCK"m/>oiaXZ%9tV7p`&Iũ IDATFLhk;8\8Du[qc/QZZ~󽤑$: WH! uH.i I|LTG$J0),Qjs`Ӟ;px~˓/T7=~OѪQ hViE1K ."V` ˑ\IˊP׆gm+`Sq'aM ~`IaaiE"ئNZE"sZlϦ|jfϥ$c:.IJQ31\l ҼHi#Wrmx.\'[orÍWSEt+&iXj^?Bߕ+QT UΟoeԜpe|HD$!Q*q3r3I_x;Oǹs'ܻ0o[L7l;=w}j̊=յs׹ *CÞockGy?3y{V ;̹C-oLm׽N|!n~L޿׎9 %~'3r?aϏ2T=nxoU6'UC4 ( z/vbEv}k$Z38Gc]ܙ9Tq0z,C%ե%piQkW].$xvBx|ܹGyOEBqFkX<[sL(x K)֏ bHnf 3H;7y:fCFp󌍯 :~Ly eiKHDzh0u$ib0'NcV+ci/8w{]!d_HVW% :jgDz9W_{ ՘D$z$6ъH]\oQapatj1PO36L9lƲ$$ R$h.1ZXYSzʦ\" `+:k̟ѹXy(palqf`MS: ,K*:I5iܸLJ;A@*%4^ Zat`@H!'$+ 86/>#Vǧ g[^J߈6(($Fj G/2mw!.i"#H06ǐ2+NCCvewgO9(\R9gwt; 5c̸LW@=fL0gcwԭҕnNqWjj*=:gY<# XFeA7Z0&\l 89IHiN](mT)pݼ{n&SXF`9yRi !N׍ A84)*ƏTp@*#9 qҼǹ76uj4Qyh[GǕǐ-l>\F[Vg$OZP"5_$+=E2 >afh0 E c&I)V$_q_xDvfvD~4M$ajbh%Lu_5SgĆ-\8=jP?y;o%Un7OÆ:w 14KRD Jƍ7熽xcNJNE/߷W|C/.0@JPJapEwٳsˋA0yAR mDb9BƈbW Y/"QHkiDK{1+.?#]OR j8͸xe {Cr!VYwgMz%xAݰ' ^; MmbSӗ+Uز]07M[4;nN4ǧҊxSy/>͖+t>.~u=[0=oUVSN .vɾg?7|#e>s?gx;Om L&Wy}屷]\(0%/U5l<0JZEą݂end<~[8?{^҂RZV;iDT AMBE ͲX,E `WF UeffE:~s4زy[ܹWL Q({ԶXkDOhF8!hS zIFFd&\J3 |_Ji7l'5oH2cIMGK:hE ? 7K3?O`=*ɫia!4H_ؿno) Omqd)R2ca8{(GϜ3G (m`n,L0+VH(##d*Ԑ8:=|3d(t^,ilK]|WR $ i.Y jү( 73,#z@iE&4A64Jx1ƉBX"K+,Wl&/M A]өkk ǮBki"}4[<Jzq3sN[X&RaDw8_מ۰wF:~2뺠J],2CfXR KSʮOA/F:eku\"$?䡃%Ɍ I%q.[医| v`*#C'%WEfJ1=r{b%]tHӌJ qB/8O E`&ER #m^?VCFbB\&KCq| #ӗ؞/#BT_%h6(/X (ڍfay N,"S- 2EImR(Ad /O359qerV00 Y̟|+}>xBh_S1ZwmR觯V^/͙Hal& zغnТn?Osa<}n78s"_S>xV_bfxXhӿAœo0^eLlrwص~ylgc̄uMyPQQoz/<,}w47}$Ioaۖ ^Eùswb'#1ZٌNPؼiecsb(noWa~e`qwEbs4Iѱf>Z$h5iLe$Am540o0}nЪwٱm7l #pi~6טoՓ)}cLMr.~8VuHe -:#j8J,I:1QDY.M x~H'^ۑ^ H:!G<ˑmZKS-g&9E6y#$OG qӁm,O]$LOW-R)R* R*(D Дi'IbA.&Qdw= m3|jNZq8(THQd~vRQ$E^^힝ԯL;'C%l,y|FM#4 ~cNB;P9!m^ ݋:q/׮cYPvT\LJZ)ȻyA} MFkHP*E~ZZ&m$ۤi&*\uzqHS )ч)2"<,#`af bؽ>JN?8ncYRJ76i.T=6$@)N 4htx}.*H41D` Ihot0kC5W1zsDbu%i>i([h|(Hh>/E.E4S\hlL):VcmVnݛnera zCME(džolK"A,5 Hc[r9ݘ,>lSs(s"\bDeła!Y[Cء&(VFRb(l&8F;2AF1H Yo5a#l4ItZHcZ)ޚ  az"`,!8tڊSk[`{ p܈kv;gO_e>Ǚ^`j1} 1֖gB^ysqE7135g,@\/ ap+5A+03ŗ'v?Osvfff8@-PYYYy폰Dp33+x#K[ J*fYv(=TlۦX-AmG=dΝ!9 inѫlыѬs1t G*pˌ2:VP(0R43I}KK:xJ)ff9}oqFGN<íwfq .g)]ognK{X&AJ ?៸n|򓿉- q`9S6?zUl+L2 #IAhHIK2A r{J'IcHR;%Q*1R v2׶HA[627B7|gFK$璇:lx|L~شyvahJX 1\6Ur윶#sm%Źihq5Q1Z_QvY.9 ݱ fQ'OZvRHED_eVbDF"6] q%<[5{ y~0y,5}E$K<:+d2X%Uh)Z4b;CXH b[^f6- UEk8!:xخvR6 T]JedRDŔ=6oLҘlٽkb@’) a!wiD&Uyյ`dHk JFS,HD ҄B 1 %@0 J VY`lIƉ $p|CВUH: IDATdXHA7birCac>)Ɗ$I/n7)Um"krfB؂J&̥V0b'2b 4/H ǑceotLAj$[AؘP# @gb |n:bp,],[8-Y\kZuq:-u]_Ҵ reYT2!FkIB,y*-FN6 mdP k@!ւ(֤it&vY|ՄqM҉`qM6`Pg-Hc\`ò- d{H{J}ԗC@!%6rnXo>c҈\| kp<Igu R|^;<;ԧ?GT=/ Wyћ{̭a}oyũI'6{[G߂hqbe ccC|/Id/s%]k΅HN;w gh4ȲHCG9/u=I5fB1#MS4KyGyn?+.B^GlkALJXd|hT#wl>{ٴT$+~8l9'~}'t &7ri:E &_{[h۴AIJJo|3sougM:ˆ7t\>Ϗ/|zDdaJ8} ?Cwe@mpV^Zd˔cFiONSkn`k {k/\=umr}z]غyT `vK`e):m!\]VWcelVz$± ",P$2I ʻEa9V 0E,W\؞Pġ).7Xs/bA旙9\@ixjlSoNgڔ}CC+6*nߏ}-Z ax0eH3$if„M%$V+Xr j a5]2 sqy?^]d!l :Ae84 9QM m^3t[0?acېCϒ\^)8 6j.eC <"ˆkAL6Zd6^J[Yzn(, )B qB&ARZx$D:#"NΝ֒ud1LRP,ߴ;oe*ÔWq ) c4RK%$aRQ!-.:CAH>,ҀyUfu:Hi;\uR&]C%@@^z+υ%$菳uaư]7Uoo7)KGpEq- _9q#2&j6QY$&eIgfzX*8eDIu*ٹI"aXUvBڎEj?a!D+Psq!t+3Ri:v&jF+yfR(x}CM0<^$l,8ӋϜo0_Y^V5g񻯛/| zck='du-y8^f X O`KD!m:"QaF,> q@[Z$U]t&Qkݘp^BJ&AFŢP(bj" ]RG$Nm[Licш u4LE$ aih7$W.+0Uʕܜ`򂡤aP aɄ4 ,2acI(ICCg#\M2!@kCT-zNh *Y-PIlX1{ v~6)D`Pk㸄KnB,u$-~˒rQiM&5ِ2 #tNs.ANʺ95j#պ.F#i)~ ̴c`l)!4AW 6V,3C#ikEZb|gI; +S!QMHu`a}ߥvvDYȗ9F_-FXX*}w%y~?x7A-Kv EKZg)y7^.?-;716\!Eѷ8212T!2Z-Ƌ5b̠uM;wrI8dK5\!)zER$ a$(vߣ\bێ 4uvn{fl(H VbqO|m<.ـU5Vig R#Hbuyfqaa"V|gy(X^}x߇GW󧙞~_s r0a$Mc*3L--P.T}I|us Ozc!VVϲgn [=FQZ~@7 gm6NTb1|Špi˩.X6/N96 :懷Bμt C|oŒ@,mac_{ͼ|+'WxooOS3ͨC#J^͉3a{6[m$_!6O4w޶}+3$5V 7(ƹr>o nk~;ܱFJt*s53Yz+re<ϯf-49p6Y Q¶[8yqwsiﮧ>kEL󝜎e8ek !ZY9a)2d*Sl3MxJ3zQBxO›_uʲa$#2RT+2YY^i28P&zH=^{\/cuv9ɓL\,./ʔ,h4W6ȎX/Qp+-j>0[;׎!N;l۱r ݶַ]Y]GϕIqMxu5;a!Tj1MkI!z O|˲eN ͋J_6}5ekpiUU)|&5C#pB)B6Jf t,) ƒTJ%64ZaH4I\tiB ={neذq'}2;$َ'GcV2\qRGeB#Nb|g?}>SuJ"?au$)f[|x- (0d%jKƆ8{?Y -:WG$JqhgYl*XI 6Rk\ae|a4Dd(@-Tꐑw Wid$c(G*% P+#ku_tqAByמ z1&! dih[D'uxg) Q(Kgʕ~l[5x)_#l|>o3ZrhłMYmIlG!D>qlU\")WY/>XRnMB0 :J#Vaf FS.S)ZcjC_[wLuVZ&9&85_⛇c.|i'Nj^=I`#Ylif%CT$ڠl\ T!* zV<+:n3ؕ</K4!4eJ L4qbZXY0t%A ЮE+ H ΁@"p|IaiplIbtK5_=CzD]M@Bcrxxn]y6" II(ȴZ"0k&r :hI*/Žr1l!% ӆu?:_c!\E1BKh:!4[\ "aY{w|'~YJNm B(f%/F:E0>V6l-31]ۆK./~o|E>_d N% "Y,%rEb"\4 jNL__gNsiťKz}|oĨ5~?GжyG{'8q, hJ~?-[nN/*lHTĹYZb~&sɠ,^ C||~'=̉L OgǙUoK.cyc\:3^ζӳ>J7-T{kǞ[uwxa}bGg ^x^_ʘ˗ٱMw<@S,~Hx _3%S$$Ͱ}^Bu5˲H)e%]gwAp- Ѡ& \"AW0H-'bi+Sxֽ,,%8Dz!eLX.J2G2XAۀF##=İ4PZ`P7;H_J3͙/Sٵkq( @_{k?FJ:ȒD[T*Wz!n۵OY~Cn|~50'FHe__4Z:,KsNXHҸA1R#- ct'k-d3JE8)kخ&1Be)IVBElz(,jE$u=lڴˑx#ml9iچT8Ł .]iꦘ&RtbHӈR,i:nuЫm GJl[  }x6lF/RLgYe,*8ɨ=lD6V$M"DfBeW(rigey}͕sUWF7rHR")+YdIG3^V#KhyDVGeI#4@:wWuUWU7{{~BMy4#^uoUsϾ}Ûo| C٠C(&獯ztvU)u󁟾|勿z%aU9 YGbZu:}φ'2.NGALj)5Rj #-ie$)DFGii vV+S+b9}v˰v^VkښK@,K ,Ch BWd%gQ m R3BX/38GݒB kҪ)6(_#I b/Ok&IT#D3|ئs\pB oMpNAD2i*Eqz3hXZ4 oABiI!#ؗ"-"Liʟ\%ŚD3AThSCN"1NVDD.=_orUю\V*G]H6ġ"st4;s,`dk -FejU㶃8N)4[7yC v֋/!%;f4=<9l4;݌A ovsK|~DtW_|vĩ8}~isW)MAzʾ;Y[]Eޠw[4U6N.6$s+d?A76!"Ƈרl.#ke"+v H'7}W—ws?Q8r;a V9`G׿t)r d9c-X6qCv20,Z +ɔlR[pl6KE$*^馳EGsݻ_f,[k<|:GZI FR0 Gj-D똎b?@FcwƮ=c;zGA`܀vxwS%"A\Ħ@tljShzz9sm='[tX8qaw<` Gs &Xnossk|-˯mwފhu(Up]˲H)f7>B c| &,G Z:h-hAhic&a9m|OaZDiZf&DAA (P$b|Q2G%S[PL0H  #QZ|0T9W㷣{vT!RPqf9׷D6/&#^$I L $FlK Ca A&+Ðm:G seF~{݃c8:n!QlK5+MM&DD:f- KB.[$l{(\Ӡ0ze t 2(r8F']DB⡃*: "l1P-DZE*JD$R^  =c(C[p :]۲2C}my3-!C(.w1x`LRe^ӔbLlC!Ant۰ڂDd 4W3Za&>w:pz[< l{Oe|{Go.ȁ̮2sck:QqKP4R Q`;6ִ#h`'/4}McqyEڂlZRKYzCU4D˫Kn@)aa͎;,)&$+𛊰DбB`5#I˦)%q$hb&5P^ʠ=I&DBs;nԛ`dM2F%GT5 VbE&eӠ 4I]@(ޖ%vWQ5D6aX<נk2yX'@' +1 |]L'pl*h6<#bq`:5ҫ QjмvBX_{<ϣn~ٳgR)Hh0HOf Q\ ._0wc$I6<̕˯ Q &,y˛aav umݵV T,/P)7)JmnXn!&߳-7թξqyVajNB6Z嵫>̥<ݜN>DpmcK׹zGWé7.|ϙ37{+?w"ks 21/3K.r n8/͟bmWBkd)5XaZYbdd)Cy=CF!sRH; y w'7$Mq*S欴0l\i)"RZT$i[ ee&HKC4[FG*tt]v0}E..ߞj^1:&30_fp8czA'˲=c?e0?y>Q7污"iuLsJ4ZIueHi v&&JCHy. ( C)M:N0a[R'tu0ŠQJ!ttN)f021 (ҿMEMd2?a*e#L&U=qyHmEʍPRD>1$O7€DޞH>F1EƃNyRJߚ-RmU[7Rm@l !FhJtRIC!H8B@e`F.2BXOǒ 5{\3<$Y]W4F&()vb_aNQd Z[H!v3M!BĨGm >*Иn `4\CkcVc0g!F˔ P*8$Ӹ- OUAhҕ#Dimӷ40 $PőF āXNJzM))05)#Ri,4Rɒ$֔0DRkb$i|/L/=DbtQ(Ŭξ}w ib?ILbWQ0iIZM(qL: 2ʘThKA;T;ْET c{D;a "wCG^k(7^6Wi54 ?kPoaAS~A.BV_xUDI E6cit D  5*a#Y2 4r5)0L}$SkmAFȔxB(Qʎ@VSr-uI(!x~JPE&$ٷn;rLmf C*]A[7m[$IV鷳6ooӃeYDIG{0j;VehxV#i٪.1Vldy;h"{&dpOs}U A7,=O N]| ϫ7:S 5dJ bt]LN YR:GLop]B7/1R4y%F*0ƻ.Q˝+:5&d۴u\Oq˱;Ш4K Z*S^獫?/KiG^Y?s87˨(}]9(>PKDAHāOm,>(B1"c;Y8 HHHsqvLv 0=HޠZ xcĖ$I|˦7K \7 'Z31sޞBE $"A+hWIB>(4lS[vOm]w #\/ؿڞRhL22-cd F;?P,(Ach Zč2K[[D1d1LɍIE)r6`~(zl^ A(q0d[Q4s:@7Yե @ havk*$!9'GL i\ȦL3!oD+! X@X$ VIM7 HXoQ%($q{>_"g@VKli$@Kl@'|$RR5A+4d-AضI\I6c ra@"E˳pX]( Wh7ۨ8G"Q},m-t%PF_-Pr[\-k>weJC6UV#)N%"Mm6" =t r3o,WcwXt)+Bk@@ fURVlni&Tl^1!dP]T /T2Ë/%\f<ؒ[B+J "T+G"5M+TTk PJ2!B.0R4RL@! Ɖ (=`(  F-nbǸ8OH6;Z1f<溤RIFR8$)[46 ֈ|BZKgG'i@o/:}MFڔ r3ā]|;ށE Sܾz?C!5k^DggQ' MYhz{{ٱcvj# 5BQsC67+[M \U8{ / Gy+N`㸡ГjX^_خ.Mfzaj`~]>sũuNh?}t;pm3uv=Jwgӛ\ eQzu_N`l÷9ȩɿ$ބ ̝Z$M]乯5Ae™&ɴ{g6qF:ʘǾYcr}{PݬdDey*?ȱ,ٱ\gWw}7Ԩ__򞡧 /]]bt/|f́ %'{Fޱ(blAi\#م$W4%Mf(ci;VnPFǎ37@Y6 7IIq{H *t}?[[y,.WYX8wy{9%x.< J١),,.sC̭nR1ꌏ넲,Cv%Ln^O3åh(vA nShU$7X܄V\e`Ha(4eva-˯ʯܜh ѤT]4(`vL%Ț@+E".6( q&I1v,T,S:iXIVF۩]c[&H"Izi0<(QIʆI_t6~#IGQB*ȌAݙ Ll[v@kgseF{nCG[X2ibOaI6ic:-Rƃi'dDHU7K "ؔvmHwCxC`\hHĈl,!1VD79Vݣըu !mh$:q袅 q4ʘH@KL]' 4V ɘV!"ɖvD=H%槙= KWZX"Ez[Y\aeIL#ԝ['ZBOC CT$ ĄNS6+4`|#8 NF*$ *!c$R)u32l)=iȌ@P+k|7faLӍX]!Q 3Y[_# #D f+q~j2{Rk.D`Y&qDkY)CfӴ&:]J Q\Vrm!% BMRH&c[i_`&m seFb-E&^[)E ֔L`ymń @T64@s83K˧a }< jF$41l(! & no qyۘ~ZlJ4?sw| _gmCy I]/ax~GI"X_)Vʜbs="&cw6,IƤdv2ZI E("žGXY]m@n7ӂ ǏBWT5ܰJ?===tt`B nE:S`zjL46UBP_+KNJ)I"PqՈсuȜی8u;?ǟԫ/b6-o!Mh Ҩ6lҘP۶܋I޶nxyn5_+#4KBЎuo]"n If#ޗ>UmkwB6CDQr;ywn9FL^?p΃ϝ< !Z Lc!2^' Z:8B[gHacmk g'_g:!r|?g~,>a{968^`ss١mF~w\'o_#ߙea_k#wC>xԇO/ɑ\'·YWY_d7_yqtݝ^Cǎ8}tCN䷟cDZAn\ϯqD/s ܓb{E*[>O>},ЪW8b) atTm;x^H y8,5t㔰26S֑ʼkY[nk7p2&R8N'J$mf❏== |VQoZ\>ɽbR_!t5^ #l{wIZ{3nj/͒%3QaF8kws^y~9qq"l;ܹ6Z:Jt t{Xlp6C{?y_m>$u[ IDATiJΐq?D(0B!ɪO޽}c]\\ZN*.B$N;*͡2-c䋩2bٔ x&(2Y$24KXv(16BH(DD~Y K-B.ҩl3T fAI6 2vRi!T% LXB/QuKaLT&i48 ݎƍ8F=M[/%$HdRmOıI$"MBqi (9K&# tP)QmnQ*ؔ>WWH7 0&*Tc$^LQF>(*T9F-I@DIL*G"D!w8r)o&DQqY9Jst7R7^gfeĭ3{V"M뀌 )94>΄1 zwbZz''Ɏ}rO~bRώam&71tT2%F:帶0mIʼp4y2$Q"^L_1nE)&,:·cjD=l9arҺdb s_g\}lBQUV+k4Ufn[cZ`; K 8v2=tI)bEi^1E:"=E\1KC'xeZKXq5)) [AF(z@1&6@5ڄ Y :4tXRo)Dm@"_e`ж#TF lA F vgఙt ȱ=E5"iLC`a筇RlBŶB v؟`cMg042Ezeue6m[o :6dYdL5Bs9Cbe1u$ Y[LHH5"all *+T+UEur[K!Y6BY.]j*G2cr@HEWWCCC(d}mDŽfRy!o=M)6h)#h|֫-L!#Mt҈18fy3oA@ƲůL}# wrv/}:Nzw&Rdx<\':NηA`LA6YǤ#-tfa=|dSڅ=`o2coaQ7bX"a5]Δiǜ:}{︃bXΕ֭*uBzSd:W^g/1HW޽?uH8'?OG8 ;cop/O?cC4aV<|<ׯsvV ӨNԺϑ矣Tٚ uv?fJMqJ!?/AQNͧy)@7y50FR/]w8j7c[f Q:,z:"!W,P(4jXY^AyYMlmYWg6Oՙ f0URYRƈ8,nD\H{8\wD$^\N4٬ >GM汼̥K<O:%wdiMÃ(y253Y]kf 7ϴhyDYAlZ[fyc]29yik6e߂N{u07Xgl8200@"6W$S5'7ݧbo˟~c'6%0tZ8IX@EVD9=c}8\1:Nn ?%$Rih)Kәɣm0m PșDy[-zF˜8VUFJڎ[fD B!-\*\*ѭ*WF򝝘vS k290T)ޞB1Jy2@; tc_25DhaB Qm$v0 i]P#p$5;0 N&0-0\tv;3]9:{A{#}OH-KQBb'-o`V(:00R7IiHQl1V@l5=ZYz5*2u[0vlVX_s<&s'> E⪇ 3 ]l;JQ bszoa܎d:FƔ$ CDZ2]Ie[Bifs@4^A ` VoGT ᷕH- KvNapPCSuc(ވXwY/ǼquoN{t$0ؿSxQL P`i'" a"IJi֘F1 (M[$!_L)FAF1.PHYaT}MEMh$mE:I0ɂ3K`&0('MG;8' ȼ5Lz|žbF~5Đ-":l|`ܜ`d{X1M=ENϫ`ZF Bc4ԠLq>oA$t yX4cu h [Pi(}#}wERf\;p Cs}1=X,P$@jYOИMsy) %[G92"24P*B{tv0"¯BW.F^%|GZ&[KxGD 12N^AJ<|z ehrY $ # !\YfFGvSY`H0%aL)4Ill{Jm#ds&tR _$,MlSb&M_s(2YDmcR//<ĵ=/i~?}>s=Ri' ddg7̠A (5&&O-T+Nč ;;`(3oQ)7˯qnwv48;x#&`' OG_x6/vbVj,:ˈ85ccN05{2{nR/Ʉk|sUNJ1e?p $[:Rmy|nK0g0467W? g_?gzyOS)S3ag䝏}|O䕐ϟc1``G=zyK3^sW?§yys)NN-d>Cgޠ7yqTSЊE]?](O}//M\H4~@dL]tщe,QL^N6DnB=8)sr6b[rӪ1a\3r":]@c7f8]MPp:mfVXnQMZeb=M~@cR̙k9jyHEl4)v-\!p 2뗚]1N]GaMSLjm]dd$m04M⃯Bl<|z/Jz3#$HD*tQ"X_ JBJbHHo2d]bXlư?yeW}9o}J%TBb-0mcǸmNcfMǴF ؀ hAkIEYo/w;Ubfbb{ѧ"#3^{νf9C+uiI41NDzuS$Y¤캵y~HKD)xϲ<ض6* }nGzX#lX@jy=F3WqJ}m/T4%| ׀qA9D__@#&a@}ϳ_LnN<`&XvUI3:4̮͜эߓ6(ǐ.,; aGP5ldK\R!?,HҐa:((Ʒ|~+:V)\hj:h1~`SHUZaB IZ*38Mxn( i;,Ӭ%CǸ0[730)t#̖-[a |}?mycNe …8`Ҙťt#afzNɭdz*if)qҡsAQVuvmB~yivu 3 ~o>|"zaq)_9큄[ų9sqwgO~s,g{[\,96qIP!ZGyks,>{櫧ih/ڼ|zǿun`bͼ4bjgٵ^G8(HC\#nfhDS}|ꯞek,C 75w+Ix[}|f~?h"r#៾u|gy~ݍlرh=XF.x `x9 Iv#A;ibj06nx&ݜZ?s/=1K=XZ%4"IUx]nI;1FJ(K.^:ÖMt.WMs]wmh3'[Օ5M8vRuJƇ7sv2c!^<}5vCAw$FwzֱA,)vX_k"b>xwy# ic!b ڨBʀyF+xJڤ49?f@X>ET , YFZlJA?PR`/08v4Kf!]َіur][aHȂrQfn4ak@KhE.\: I?}$yaY%2C:B-&p-\psHA UK+̯)TŀVݠ6qe΂k+T FYHjB#M7a"2KFl JjZDf0˒GX bs) R*p$<7Lj;k(#4DV&jIp8q9u(UX^4,W{xO $l&:q9q JWj!qzz_Blضu &7qӼKk!p0q2C~+/={v/EG{wqIMʴ }h cR Q,l:6$*f~.yE*"2Khqj0] EkjkO_bujFDǀg zlŷlGv,4ڬŚfiv"zKQ쑮е{`ېjфk/&:F'PHH HPKHь-v@6y/]Xؾ\ ϑ$) tH4 lP"B /[ TP4i a- EGa9qԬ9ZhBAE̽W xP-5QJ[PrرkG(o JAϗ^!gDkTI!a|>6 S(Q[ltn@>x64&י55Zqf]ixMԞ%! t4 h6b1&?vaeFZV148:s3qd>37-#c4MS*c#%eMp"JL#EQk'Z-zCq䩣FLsO|_O?9)k}{,̥LCwO VK~Tc ҋiߏٵȞǗ~糟[x3/^aӞ _g|SqՏ}ag+8Q?Bicz;)* ?9/ƿ>A+uNmd|dQyo?Cշ~/? δNrӡ-og9xØ-wM̴d%6Pv ;Fn<¶m\b׋ݔr&#lA/hNu6qmH֚@~Ê|C(yEކ\Ne|iǟ;| IdJ%)!Ħ^!U vk;|gYHvЖO? ʔ˖m}S\em$X¥H//R}! T`{$ Ͷf+9x~B1gPphǭL \|!I¼-ܘd)\H[xv4HGbٚ|\?!nl=NeC}2ϟlM]WO].1:XdLl֘syUמ$M3z<"eܞ$NpYф*'f`Xw$; ؊Ԃm,`ےj!T+K6CT)A'4X"sMT#:$2A9?N̽TƇ-R:tL*YX\f[BHc T5F ^ӞҘt7MDR E$eX__gY.~<[6oB;0< Ir}hZax8SW3Wpwlq 0] _Xx[nWO] mo}?p'r>?ay|Wb l3앙pMC4S!fǏTߜe OYm}c[?lųGStG5|Ӵ[4k<<8 mC0]7u+l۵!]Sްvf.`gs s+^f^ā7x>ӏy/í}[82uY^w1?`/\ώ`zfJO^֪uA@'mKETAO[S|#7p,Ξ} k)GIj+G F':Ef}Mc,/,^fiҰjKRo.P( 6'.!YA4E7 Ê ۇ.s!lh4Vci54"<0DiE| X>N.qN=624ɣ5;ikaiccRHBaJA:õlOZt]=As27#0CߢIpTWIOzS1Krpl'w,a-&V -m}EY8\J,irSW\2A9  c;i!-mSۇl MDMDoL;JQ7QJa(# +~-uVט_`JUE:ÒhnU"j$il6*r R20A:iȓDMP.J(X2?!䄃1J3Y)qek JB={m/eO<k'aز4Ն&'xKqEh4\$I4*lbg`&i+:)qe{)  R`\)W`YX $N;Jss 'N\*R3Լ!)74Da^^y.Eђ2JI4T%b[̺umCCh3!HYR&`C(ɸi`+u-h{[wiAյ Ǥ qPN!iH'y۶O,/l;0Lt!ard;_zh}m-*le ?{7{nFP/fwooO-IscW'Q2Wh 1'Oo ?7?0ss![)k/P&Sؾ9M4/Q |gQ-Uob^s?{͔6]%5Wpk;i\shsLmuh[7J4Kgx/^2.K czpM6laHѢ\VXb qH02ۉC'Q@>'Yo-rAlfyNЎGMHF/ D@fxc k&fBjo8xz35NkzEmbx݋߶] /kCW28BX \% N X[]"cfD];y饗wBgQy\e||3KӗIiͫMBgfνR,JՅvEUcT/#z'( I GL$ J5S=r2q_ȧiy繕JqW$ JNIHcfv0hζȒko~MI"WgO2{<}Khn=W_|CWۄgGldtg}>ԗٳ; GyNï̗?,?wY Yh v}8~0:p-۩kt"c}TYm?K=u^>s鵈 /=z[qu#31?{yڙe8q <]_Sv_Co,y/"jJsJM?z×a /+Vl|08G,KF0:i5 B (n_F4di'ԓ\)Lk %Nl{'uf=HUw= 3 ڔ|E2F"t)DЃzzzL<$)H1o9ZB:j`ya4IUt !}$*@X0^ep(G)?F>ß:y1 8 =nA`{9zyyDCAZE[-.49cMlY):[ZvƠXZgœ!g[X0:J@gخ/*w$oQ8=1^/ y\;@zRKh“al9$V ķ{^幔ag|a\ 5#=}=ఖF $N2؟o(MdVN,%7 e'BbI/Ӽ .Ycֶ>t6fO̶\`uBA!0TCH]BEF):x/\߀SԚI"Xd @0P7п>D@1d,ג;e&V&""~U-Leٯ%%B󽺓NX{"?}%lצU ☍۶P[Z&Q $e=K%;歓lٶel۾.ƽn<.-$GZDZbJ 謃ټy3_AAtt)l(z2*enn6R,[{Af4H")RNؾ.\|b>-Ra%"{v9۫ܳ (]Er9C'Nq g4}+^][_)3Ypw޷HΜHmM/+l'O1U93o/3 IDATkEh?ʬz&L{\ ֩.e'=quOșap}?2MTryof替"=Qlܰ. xu&ePsӔdR[' ;&7+GQl'ljSlQosGֻY*cr0ėrE$#k<{y?y/_?~JB<ƛ|t@` {oduy~ι}˗{e־/Ri)VKF^edc5 {mL`&6cF^˲TR=3++7T%0A'"_̼9wBn*zQXWͷ?>?Ru~?٫ďVuI.{ngqu6~OV` }SJ-2SW/s;xmme[﹗Xչ|ˉ: +ځ83t&IYjx,(A]1hK +6#0X^[  L/YEK EZ>i04f%4KytB"f*ӀвJQB)aB IZWP= |AS1$MPZJ0֊$5)$*ŏɵA9㑹 I " $lkJB_($]04l1)v* 9j[31}%E^0I \%!b?C D!k,1 86$k# BŬtB}LΥ\K(T|RGblmQqM CE ;GIxWTI1"]LM&b0,(VIĵr%nf16 2SW$!Uc$ $$S_ b],ʹXYk&zCbhWK&~oD|GdM#%i)+0 p^SĩLD=Pa MB3VvAF#NRiE [K\e*Jҧ@G T 7p2(UX> Lo%\!dLiE/-b'5(%*wes˖put͠BSB"̕&WuSrrlrp,Z =zB8 LCoANZ$NRT#:}4E$ibH`UФ$NA49Q! aF1+v̢Mu;n2zD'cR(%$'i"4jvkıIZM2vbDjM{GBku&ۇjR\:i.L}nm t( a:2n8wͤ߀ȿd}jeJ@RI]|@El۽)%6kBT*aƵ]ץQV`,`}Q9 ,an~cYaQ. C$2?D RQaܵ !n^!i$ij$*atx+ ) lގnw}Nb#Ecpp[ gXr2=`D)EA3رs33 kSל)i2a$Q6NmBbuu0n2 IJ \tB=`AD g9yI¹G*sYvg#Bw9th;я~w_VKy1J;#ƷngV|מ?哶mF|m,mˬl|[7|+? GOQ L}r։itð;K'^Px[~0Op[+73%^C3qtm-Pt c/g?S^|~ip#+]=?0Y^9*o7ނTr(쯰֙v}>xkQPTs\:UJ!.O=E#C&;Od+۾G8,<9+WYV˒ޝZϢ{lsuۀZw _} Ģg rxEEeo7ܤ_>~Ft9Ŷ'ZJhS,[ [=Rrc˞ǡZC,'I s rMQ7MNRݣSfW&:Q1<΋.ro)/bWą}Yyg{uRy+WpiNΝ+yssV;sf9ܺ[rūؿvLN?2`l*+}uѦLuf7c~a^Sܐj`|ﯲ,ϳ|ť9vph{o~gYejnx,jM a09vjs,aaÌoˏ4=Z|fkpu1ȶ=6{v;a`ԠÜ>ntc~ 613oq\)KE!^uJJ H]*q`l-\L]C$CcHtFX!]E7\,x/7w : TJB8!5t $IcTI#(n7E^D+4 92L#T !uIUeYH@CđGbӘd|DgtHPA k XI{1Q-kt:uL3#ay2Xv$ x:2W@*JIZMeM4MJ4" pejGԋ)X&kR,T*R F":䀜!)[Y[gִ;dk kHcXZLCh"ũ t\ԉy:ˌn#SIKkІY9  XZF1s9qIwr?\Ƒ|B#4zIH MVN6N[dw%ƴcA7$*0 y]? 7_h4.GDl(8T&."ghXKnKغZSJ!KqM["h.` oAQp)A3}taFbl+%8F6D"0fZVU&4a̭0'LAF+ad-h$RHS6E__ M $!l4ClQ2 4_nNGt*NCRfۢYmfDI(;gv)%i*$2P'(D"M2CjTf.Ctۭloj:^/A ĩZ P2Z&sckt7QTiB\G7ﴮ봩u8Y75=E#5p>I*Io@_Ji,,,7{dyN%79*F}f>+Q؆KݥngS #g!EzyHnBmb9Vk(8(u݌$ Llo47W.M )3axSvԗ{?)vd(z NWdM e;H4gްPa"" kXX ڦ㘾>"]),Ukyp$#mC#$K>!V=^yevxDoڍǏrR%z6>[/3Ts]GNF̩P=4ͺcYf 9?1G;}/|QFGAZ͢"ґI.Ukcf˅v?7ϥczS= س,_ /So\ni?O]<쳼vv|p˦wt4yCC+9;en*(^v}_NLwnϟ#0-T"S,n;U>"v >_0s{>y},{Ԯ8\Xmo}'#UF1 bfOMR&mkW/*勯N^;`k>sٓ÷- l≘^Ev6lud/ѩ%(%hS I)m܅y>Q#?2}5I]6on!linc+G__bbz{Fxy*􂀁++KX2v@ #k!m]y?_#`-*<199J̢v́h8KKKnhy(> ϮC&疸2Yp#"fvygٷo}n7f̥Wo7iXw}'_;}ݦB@P:&Ss3TkZ$IQB<@ǘZHX%<>1ڦl"u׭"j #?_|{ٰYpy N?oqHo>~JlF+p;i/;'>'tf8Û9ݛPʮh)唳!Ɔˌ׾ځj* OsG\2bţvq|a{Rk?p\>[8*₎2#><7}nJ;Ջ\70w Փ)i\ӿɯt\Yx?SVynA밡~M}1}j!y29нv /1Yiy˶/U=6Uof:C?<9wq;rn?sI#_Ml~g=1 6/kvy8v24"wX9{/;ũy7iZsܳ~^&Lߧر--s幘x;8HٻNRMal;ftd/}X턔K~4)mԡTRD,Uʜ|٣\.N^:bێn viz49w72S5+%~zfs5()n?vnrBɓt5* Vejv}}|eeR"z*YHbL^$oAKrB3 ,Kx]-]D! ŢHQĵ Y-ӋX$"JJ4.4Y-$hh{)$!1c8!BRN}hRpIb9.$iE!~ IDAT+ߣۉQc|d-"r8H>U%Q.YZf!!vtz+9L@dZuzqv0;n;# }Ο|7݆,"21e 3j$S$B"b8zBBNy*MQ1,H/w;9*$"nۯsMl>FsjV{OmHU[,BX;&^3v |/"N$݄Q,N3رʄJq,Pz 9IaH/L FwoG8KuiV,p n:s)W{L\!LB ! Xߡ育[0X$ZuSCit (8iI7*@RX_F)y(N -|:HIȭENSerh41UvVJyUi&sPRb)J3犸nmqe 3pL SD|?@uPIyV:KDU >EFZTxyD)ac&B}n;"o.ׯ93zz&zJCs$Nʜ:Ua'Qr5>;]u5η_w)q{\Ӵ5Iׯ|Ǯ ڿZ$rdR zo<7IՃX>Fi2]tKRcq\d~~`ݼIk 49; "R u1b6O? ҀZK8q$IB\X,h4nYͷŋ ݻR)a:K-2v#s&~L3wN/ܹsٻ )kZgݥdԈ< ׽n0B6Bk$% ȹ.+:7 IRZɉE:C5&f'iv"vn#6yDdɿwsapps1&}C8Ŗlqyo'^<3c8o݄Bqg"t}QZLmHUvpD7ͯ^de5`sl*7X8SWsTgt`cO_Wi/0^(%޶aR׾e"}]rjeWrtK=Ka_bz9r|i1gG?^`]w[{md^2U//s[71KO/qE0e>bwxVorwOQ4[n!Z?@cyJ6r|/jマ/3D/]Ar=;W'kTC䵈K6vo}w3_y1T::s=ofʻ/?ノ7=u"~Yo`˹slQbʡʩą3ܱ{xvKbKtwiL,~aݠ5r1Wzgwߵ=|G@P*T_B2s=s/Z*wOsm?_}?_lȅF"")7yݜ{$__<ν[??Yd?yUT9-5C$\80/<1N \T* MJyy"KL%J#5N6Fz)wܴəHF`2<՜M*y z-fchy!vJ7zA_K,K UIZ0,Hp2a/b2AQEd D ~$iq"rc諔IiQ]f)b'u4n"RȄ"+SIG,--7,WǶrHi0j5酙A0;\Lb;ͨkQJviD>#x"f9J(Gc)peP8jahTj ƶl)"?hId;H|- _[9Oh?~σ7gLhF++ o/O -hwd6n*Π9$&iabFv&M 6xNB!p={("OѭbZzZr~==JVsxM.oR@(Rd!o=C_hVHiu A7t,Q@`Z]HM#]-膍&x饽r R !YeF=.ڍMܙf-E*b R6g mz?&o2)Ztt(dɚ-S~\KkM5bY:z"B3mBqS zFXb/fz^/T#0 NB" jЋIayDq$c Jyak.r9Y(=8qq(9tp/۶nsXN*-YmwrunXm䉣kH9sZt#u4M0dÆ 4ڄÆ_wۊM#j9fP.YYYqlVVWL>(+^_Yv8R xU^-E uxt{^biǝv}f^b=ef.v!V6$GWwnpxSi& 3lѯL!s ,e ^tsL^޷4lʗ%vL+^8#hLebmc{UƷ  3vGQn=pw&ffpaߐk_LJoyb 6xS_R'0GZὺvK\k+90/cDz e7[bae/qziF-Lxf n}+UIB;W﹏0>Cg@H3$9Ne{%} }?t+O"@rf}:&F:1+2ӧ&6 w7rؓC,[C(_pӖ)lR~w>+_<ʒ,E|ǽq3kު^% 2>ȃa `#XfZZ[^sϼy׸/GdKstV.F>åב.DI;Yh7H3ub(&;lG-͓O^e0aw*> 3 Iy_/_>_`hzc0D&r( ܁L2!d"!+!Zc {:Q2@3iJZFTi ue-QQ:!lDyI Yd% XCJF؊D]5˗mjζPN`eyz0v]6{yz '#>\Exc!:6$cN݄c0#7RX2$Je9yND8 CȦ)ۗH 3 d J -(iNPS/6fqשCw tU& ̺. A?D% C" 2 3+l} ia+:"Ґ ):|D.r(#C2yg^zm씏-@u@BUUE! C իW>q>A DJͲeE#" c8&I(q2Idq<ωG[tfB؟$ Pt`&VVő#GXYYdY.Miʑ#GP!ɄdB7ac0 dYfȘNaqLxp8,!t:->a?qieGe:6eww!O? ;;;aH$=ޥn333Ce$Ii''.+n==/FxtJf12 -t]V9~qc|g0?_nmloo#`mBЋ4zʕ}t98|'c>_Wy!mc&q3p^N둦)s_p,aSO׾kKA򗿌8SYY:j3775 U!RQQq͘_ġk.*,V'3DRe4)AoeJ(J1ihԭo|\^%cLFUU% Ĉ,xe %99y w7vEEE_f%tguuz{/!Mbeww5$Ih4$I, CT0/n* ba c9i1v0XZ`,˄aPvZǦi|aʸyt:- dYU蚄1yH1R0S/!\:]=wLMՑ`X6u&MS DudYFYxso2VqU8&sTI!b[ 꺉d'IANl9e^JklcS7n;ZOc!`Rw9zYpf0M<&W-4Ecne[3#22.#An;@Zt K]3ʱ_YO<}nC%Z>&/lYf2]ӸmyGy+Μ2 RH{UOeHbNq<9se5:6Nב>gh5V5Agv<_,l4&B<'bTC.iBA]Fʀ0&R/@7 B#>˃}mo! o]QQQ*D***?~;&M$#X]]exNqsWX[[qE}AN@%)L],c4퇺IaX@Ñף(b4uݲ9z^`4/>')'y.aQTQu(B@3 L&hVaFaL&6޻_&I"NtDA&1 ݇8Ti='8y$HA7ZO~OqC=Dnsi6wQEG/miZ =MiQb[L&.{{#wz~t=ԙuƮvG@a !煎®ـ 9HRN y0u=qgH(I]7i6fGSo'%6VIxkK:/3G$ȒLE{,6[6x3^E!WQI FHq =8#N\Ҥ}^n[sd(FTY1 4;zBӐ'b82Y羻EN2td4<Ʋ :I*O<~mtȗc-^z=RAI1^Z|(B(`eeG5_K#`B,hlQc]]ityO-+\0DdJ,hFFvtȄoPoL6.33z0ht:CM >;?I]8ߘ/AUTTT\3ڝvudYyϞsyQfq".Ráj9 @#N1Q.OA@EY.}g:"IR!$qQdYƲ"2q\8Bmmm! dRlɲܮG$qB`<cv8UU`Ǣ(Ji{z!#< >MZBNY2-aܧò,aeeNNq0 r^~8i(B$ejwITX8O&t]viz3 9 yᇁu_FRtZX[#:[:'l=7ѳ$&3rx/hxXf4Hc^F^q1hh^c\Xcѻ0g?\667v::#fO2<|_Q6<;CZ1K',,,$ VBta[_0diZXMtѶKQJY$BBQsƓ=$u]rod¡C4ar.w d-5`f0/6d9~frBA@+.439N6'>NXaZW쥜9y9C4"m:o"o8A<1RG/|ſ+***NTHEE5SQ#J1N sםa\~`L&TV+g IdaYV!eJ\eau]LDS5 il69˲ IJmζ;dY8iN^cYa0;[,j `ggEXQK(s3ί|iE u?t:З!XYY!" lsqVmllt\73bYB}m߂}pXj],"MSZAcZa|ͬv͟O&+>]^mN|בeC*BQj4Mnf׶Qt =Nei6(,//333+7xwyc4kٟDAQ5Mӊ,@WSP^oA{1$n/qm*q𶷽/ywVTTT\{B!Y0!rDCd!vM%|B_L”k[ .$ @U,vwLݨ7 r":;,.o+BPð,ǛLŒQҜnyZ}QRV24T 2U0M"|nd {G7Jn4&ni!u@QsMg#ݐhke9ۛcnRrS8K'ZQ^D+ GBKÖwʮw,vA[OcL&#qlkcvuux:ͦ(ȟ۝0$B"KL9Ie)EYdjQzNaJuwo箮seˆ;`2=ɥk^YrE!C#SpB)8\;z*1L<е!B.]bZJ}It ݐYYY햅Ls5M =,AR.dГY$g.5Mf(:0i^$uDZX6 qtjxϝ-+orauaHY`}o-3<%l#G~?7~'Fry[ckO{}qz)\V%-Wt4MaZ3VѰPҜ Km<'nlrhV]f:@dҧ$iKcS';KEu LfvaE\s+=;;[ʲi!v[ZYCA$8vnh@q g~۠xcG,..$ 5|0 Y^^fqq(nWe)333=^d,sk&oz^?~׏?3>G$~F?Hh4bsJ)_^^f4"IO|st0bgirˑYf͌` lm,O<wnWIIu,-lp˹94emmlm6im]%c~u&[[[իW8tp0 jX#_ҡZmO`kc[;'cWTTTU*D***B aEFjX\ﳷGKEWA*o(<$I4hj,ˊu ;v[8C30,}U+iZtKB_&T ! ?j ̔br-r 5/D@|LS(B!aQF$ ]e&EAqS8f.c)A4umN&Ɨ0zŵ-Tж2x;oV_y,/ ^N{}[nL&Aam^#=SO_W|󷾎׾^Ca\9{=~#oy˷*6;mVV ۠ݬ(5圿ýq0bQp{$ پDd4f<9$Mene4?p2<72vMFiJ .!d +$ITp㍼^ߋ,0kibU+ 0 L"o}VDR.~?36 IDAT$BDc4@RIۼ?™/]z܊fX( Sz!(Gi1L <,1'Mdnwʲ 7p㩻4MSG3l2af:ay bGHNI0qYZ$A_Kd e' CDutd,I9VE a2RiC!K_8*EQIP-s& XFY.rWn.dm8Mp=?h4f'|6 Z[G()CT|?U#[jI e#$zu!,M>KɅprpQ'[ɨ,C?a69t 0 GD V Rt)?g/.~c7%ѹb 0\e' kT mƔ21`3ٳ牤NbQػx~hA B$x_owH5fK `M𣐙N먆`g$c"9$ / űoC/[QQQP VTT\3zO3@Q,cmmC 󔹙FBr5LʝgIWYAUU0F3m4Yi[iBeA1q!xyԍL#ʴF99в/Lbx nL&L"lPW1.sssAp8,Ʉ-4:.4e4Y%s(booβ 4WdM7}'Čdqb[+ȒeY0X^^nsDŽKĽ+A{ޥ'1G˲0nZ^wnoȊo0U!RQQqv,[' r1"Qs5vjyU :[[[ BHO#ik^vl2ucd!3F+s-RdeYaX^S_[+@i52 }F~L*tD&UdLYAS9K$ G(x<24)aۤR5LK0T-4\X٘ksxW N`n4gI08M 2m5znPUް`$d/B$$dAĴ&)0 9SGVR4Z,i:,Ok_;G4M%EHp_{/iM'\4%vww=OL=GS5d㱋 &`w{{VTTTTY tX\8Lbc̓4w9=3=3;V7q q.lS`B)&ecCHL&%',#$!]^ٝ9{fx~}ooE@g~_EB/t]ߙN a[]) tʵϑ)(@i_J۰b=0)|x%j3Nxa۶ɲ [-(Q MSl&FvXEW-%'+Ri fjJA#ʘ^A4Y6\JL <&ClB0051-!&{1L,q6ֶX9ypJK'i ^W(w*MJ SprXe잝kc2*M!GHK?ا6M~U[:".9va}t;Ԭ2Yr"sDZhFPֱaF1J[;;4- ÔI["EY7 9&-4&jjA%+HhZ4Z:V3Х&t{ N?I2[0FNب -)n%J"D4ED (1uLvEq:qR##:&?_ٕ:oMMMWzc7,`s2c^x Kǎ\xGNC[Ǔ?A43nSVtJK7 P)ss=+~j9+X__4oU L$^2gP;*s>K FձUDFU deydBOSt_PdD7KG෾\ƍkaua T5"r"6B3hRj֟2BK4d:M9s9|i@DdYF1s?2arwsQ.4O-Qq^~ՋffWpMMM_,G QrSf<3L^òCSMUY5XihqJ)rQ R0L\5,: :Uk9BX__GQ,t\(U(EKԬ(R1~0"sn;Ntؾ}}W[i>̗.D;tg nIYdӱ)B`~F@YhlokP)6c\'SKM(ebK233#cM y4-(KxPR<`kg˲!!H"4r4O nrx0c{9z研0{T%Fn I*F(/`ggȍW^eϩ%"_N۱B` BF!ngSXTg_y>'PU|7se=Z8~@х2`ZKjjjv;W.G24~&.e*pd8ݑU7p.-몪b -;CZih03l5-(U74&e5䨪a ,@RtQBn>^ggql[RR/x H=-%14A qZU{QLSz%Z-w\ZV@B6&^$cV4 iʨ{#zӛ7uhos/.Z'{9IG![uN%O Ðv-!Ҁp5vǻ(*鋟(1 h&v],١20q]$IIEʭ[}TU򵧱xDIqBp6=$D3=}Gy4iι7<̧>)zZ™cs4hx+W۟,<6 f'F;SKhB뱳*DQff5qSqH2)|瑿an0Nϝg:JZVrí<$ޝf)5V_h%QBT^\Rv6T1̛<B>|/eKKKOf7!}/TN>|n6~!V4xO w?C;|Ƿ.=w|,cleMMM_"F採jR˟1N`:J/ŁQ|<!Bg^AY(X^އ$.sE߁~?oh-0 H1fRh3S\:ݮeT*`A Ӱ2UP nJT} p<Ǭ.-W9TU%SKͧpj8*P)[ #Zdlr#X#[P5,mG~{f=oxg>'M.-oy/cq^\e2) `64us@CLąW [mfGry۱1A0L(4\Ln>ޤ@:`+ ~peݯ{Ȳjnc+ր9-[gR8jFx^@! I2~@,hB'~bYܾe[7y|3O ׯb Ʉ@b+W܄EH{՗RGETTU%|~kH2M*Qy?go_ן'=EInF=1x7i)(jɻF~EݧߛeGјݛD* (YEnlq)a S}KIo0 /bx)'"䙔)Ml{~Gy׽O~#JAi\zGx'v2QiZ Ef_4ɔvsBE/qⱵyΞ]%'އI]e )%Qps{f~/{?̈ʂ44*8,rЛD+=G)L[XX` V_:ṉ?rK莋_h@`dSJ HP(|ʃ^(!~W{aIJLoz_upL<1M!+FDQkjjj Q"555w+<k M`&oA&$IB>~{8}Mvi֞$Ikzc<3LC픒)˜38N{Wsf =܆X!P_Q(K,PSՕlsQ ȳuKZJ\9BEgaLUx[p]0 cǎQD%~D3)7%Q &kxR/UAEJ( eaUU(rvK\t$<A"{B Oh4*(N.!P |/i7;f~MƜ\^"7U,ɊH6%Z^" Z8&24SJAJJ_Ή{ŚҜ1x_?wqғ0ԝr{kK?GꅐUJ\MMMYQ%O?G%  7Sv^x۶@рB)QHg7ͫ`BW#1&n:[kĥJ}i*o4Xan^JonjO}fffQZ IDAT*S}NCLA5/ |[律ʼn鍫hFTE0kS,dsw i^ϠQYL4^LdkG2b/uzc[Wi;*;_!ISf.3UKee&RK`h~ GBH2nsirJk6ሙi 8Q5%5TAm6n_`J0 IN6x"gϞśJt:E1ݯ~IEQd@rc~c3O@Q,S0 ,e:(""ύ GB%% ]'S޵ nyh 9`uCl^rO㐔kۖ(A),J(^X$Ig?fK1)RY:e1She[Wn@kLd-)i2٭555_;;p_0\%vzG3عy"/R0)ASm++2Љ”} 1~{2YSx}ʞsUGX2Q Ke^fIDAi8Z$JAtpM\jJacxc \"@3~{?eLxDdBQ%'%ѕX~$"ih?x"J1[ 0egk,d CDe,P\{~[ ?#NCwœ{y;FȆ.!y!HӴBTetEQ|pEE8Au mh4dX/|9eT<δLvt]Dʯ40l|&4\>C7&y΅!} \ l_FyhFEUI7搅q7oɓ_<0M}hc=~Oc~v\EmWeXSSSWzcD>Y%IT5Pl?4`\jދ( B~2ATt%ߧ頪*J3Nҍkloo4Y^Yzv}Cz4sr3X) }4 PY})l!|^bya ϝIO!˧uis4m6oM.=mR:i"2N,rjGe 7A*H}eN>f? 6I f>wp5K)cFģۙ#*8NQOkDaП NOc:e"#j1יyFՠYJV/f!e}(ьFQ"TOCpc11MBN%];n5M#Oq$Q|,Kv4YKUs] ۄ@? WX:2S y'VTێRs(T\S(u@.8{m)F[a8l '|QrL7*Vg%,d:]LUwjS"555wBiHӔ(!W3n@n%T\&)d:á,KS0F$تIF4MFAkd8FH̦w-Lʈ1`Y7)PE$INնǛ&9(ն4=o?K.a: eFG" " |۶ 0CVEi(< hz}6heYCQt`}sp9)y[D)b,TTe:EQ;0VI21+r!ш *C?MHrz1)hi ^!yQE K0~̜i}e}*L&2+Idd,b)[Zò,AHodϞ%L8j(x;/+~BShr6;;KK3~X]SSSDjjjluGPRŜ~YiDaHY(eYy>J,I6˿;l6m"(\JTle0t3g0y衇'~'0 VaaaW.^4i<䓤<   Xq뒤)܅[bn~ CÔmqWGnQ1QUݽexX0dXt4dTшNS=NE\|rgE(tԈ OA=Uۆ׾,ҮlB4E$ML)2\AQTai0M,*WGFNi9xm[IBeI) 6B膁UqFu] ]DD2NÐ=٢i]]<ȃr989-i"?j`Y\\[q ht+IB># :ˋg)MUهpN|UݚujVMMCI]l[jE~gWKDIL4n1y.ꥮIPV`*i hDr0]K(MUQ)U4Jٮ>cTͰ}VKe# c+0T(ʐ,{&MBE/KLKAJ04% <"/bT-q]r"&I@F 0!I^]I?l~te8o/UN~{__o}+4P&(fc*dww<5Uf1'9BfN8:'V!Bqs|RP205&~ژe ,˰-B3lY;DžDa^  (GId9 aqcGm)"x˴Z->é3r󠪪 n*qa {:JL^ !L:J& 349`SވskO֋O#%")r"b2M |PoDjjj'N*#mFqvd̶*/_ŋA8~]l'} P\L"){*4 UU5EX("cǡc.mEK⴨?ir{a3?׫L媪iPn&a% "c{)pɭb`jdyHO0oomْS 0X#y|ͩKlRfff8cw9 )cU՟c> ;Q0]T^Ď`I*w(VNiTam'楋0am,Uuxr&] %exJrR( 8f: ;7yxh&y4W HЍ#YQIǡl$ YPW«k}*I(o:\tm~{c>HR_?9YU='iLB>Mu=yw\aȍ@+ &ÅbE-e.~WיD)<[Did2@abM4MCQ*} o+V3! 2Uв4(`cw+ޔD>fbXcK{hF98M"!dBUȂ+YZYhJhEիF,a-|*4goU#g!ZS16PZDjjji";"0$jU4M.㱔Coȑ#8,;Uz=XXXn.Fva:|M}5m7oE[[[/|ӸsfggXExeG AQ>eyyt]C'O$I9[ ׶m,ʕ+t 2O&):.["~<1M7o2IVE4gh4hɓ'^@%1Jѿ#65oWۯEt2 >,mW$i2??Htt:%MSNYauQUUvl i-_0Nbi(n++ǗKN1Iג=t+D4N8!SN<7pw|;6Soh1dW>vMMM_qjHMM*5RrrEF")b ,[eq)b,+xyo4MvA~s]cSz.#o6yzrU;50h~wPBJIiLӒczIlDuy65ʲ`81ƣ@d&\pN$Iѥx<~qMa7nܨ<5Mo~T<$k7hՁxaayvvvX_d7Celll`]PN`+:ZҳT֣}1.>s Dr4MAyٔ,˸5!qc3MN-}`ȳ |X&)蠸0F(2Up8F(J HҒ=IL Y19L!ma4ͭ1fa:w;n71 4E%NP׶)3n~) dɢ^ Z>y>F4\Kt]#c&LR۶K: ;*KgV-2on( adcKE1ܽw`%4h!;;ۜ8q*UQeAYp'eBiU鄓G1Mׯcwᐲ,q] YI0!daüi)0iL3tEN+1E me96Ri eQEeYġ,4w~eHhzZyC0 (#YI"yQhQZ Pa8PAՙ8IVb R!/ ^|Unmlpi P50Q5@2RDScqsu؛E}i!WmRW~'q$a~~gկE\SSSHcbkRfS%6)P~ۢ_3^GQ1t6nFk s f.pycr򖷼fk*~66^4S//>{* r6X߸P}-G0 , qu % !,C=5՟!Cr H۶i4A@㰶ͣ.ro2Nq' STW,{tݪU( ](A y$ d9GfcPrP*lw{7hZdyDyjIWE&5܆Y%YzEo(87p7r;άreU1Brc diiYR&/%WXn6n 4l]EDEh(/Ϋ1SzK..(̭!sag΀׿uHYS)Vޠ,)/MMfQ3+wqÿ9H;!I, 7$R#RSSވ<4NjV᭬h4hZLS^zWUȲ,hu,,O0۶-]׫-4qsO_Xٳ,st]Lc(-T +~=T$4UQJ)nqȲFaYXj4$?gi&blW0 FU3b#To{\xja?HX,,~O% ts\x=<&Z[>sio.<d[nzZ=uY?dm/^d}}-&I~ڀ*b<0ě ٓdY^]'YVG Bj/Xӝ(sΝ>}(A4vv~O2w1|y#UǸ` ;ji\i}M2s r&|_w" Cqû\VɊʲb4"? +( >~3goX7[$dAJQC3똲p_ktGCLVhG$eYضM^D(jQm#RSS6Djjj-̂$I0Ւ2WPl^ 3Lu,u 򔵵58f:\ހvZȹYLs&Cށkvync&Y0ZLIr8 ?/)U_2'bjLgiض-:"t%ۇ4M1-',+$'gyKidUm",ò,P2LKRdYx&o- 48D $ CLKAs8QCP$u?)ڌhFt: D {Rr-qA̙L(ǟ\,%2tMlN=ʈӄ(U-hX KBU[mN& C(a: ZflEձqt<(4,mWQb::~K^ 9t:E$\(˶}f#)F*s KF7%  B RIO.c9m-n m^}R!'ͥq.\0fƄc2|^Լ="555haJEBVD\麎xnr8… 4cf)KKeܖRMR9G3Szc$d:پ6,sH}!)"<Mo!7yeȲjy-"AtB4iEIƔK̆G ! R $QW"]q, rE0O'CH)#IBDZL&NINRRUL`g{BQiJ!Krb>]G%<5lE4$Mmn (E"Q8&6k^3<[`ِcȲ USy 7Z\lWQ5Ho.4bTM#kи+/o3{?;9#&MA*Ci2q4Mu:lk Y*U-6'q>iʚ˺s02n6;w4`<DNk#?W_nlҽ#βמG/q9}Q4Mcmm Xd^+8 7Jct9!Obw ߠj$> fEYXdYq)/,FK> YN KHdR&T/ q blJLc^uY LcozɃ}`{tt{.b&)*Yga38Qx4c45^y7necc"a ?֯sz(Q>7yׯ'ާM|˂)YMv 0[2pZrkFL9r`ܯ6DҨ JKR!-  ˠ(δIIp?koip`N{ YI,8ʫ9Hc<%}Y0y3XR5rUIAWgILEaӗyc3{wNFQd \Om!Y&RZ-Uz=['\^z+.!#i*3cD<A]}0F i1A@.JLK(`~b߾G ɢ|i SfX sLB%Ǜe@ecڶAigdv84>8ȋ7 DXQɊ4<Α+dDBH$!YC)S)p||HQR22wn5-YZarӲij)CHln=&ER,8.FY2dcK%q'Q=͛=Yi4q7ogxuoM7i[ udYb`,yg7DO#-[uHoW H෽?$J4E%@b- AHY 8;g|;;;xg8(B |ۻkkA@$UzQ:kmض0Ah4" CIwW~$6XR CN#l}g:`2LTn:i>I leYAp:TnBLӬd9 |QUPO9mՑb5q%([?N8f6)ٜe y+m"r546M&eoi|w/?iZO%DŽaHYQ=F,c1[o#Z тLHӬ31#6Ivim Eg:Vi1Ͱm|N s goo"Wh󹇦Ii틎vtgA+[zefM  )U&!>1!i'glf\<‹( d[c 9R)60MK3lȲ%vٿ%*??񚚚?gkXEIm-hKR\#I=֗.pttAe-*.IR__Y% zlE*ö"[y,(J8 .apttR@h !|NqpիWi8`i$k]W(A&bot$V Z!-0Л(!=MSDDRjPF80 U*m44 90TӐ`6[hAJLT ;J:.Qr!*y8g2oith_0.{eYh !WS)(d!eb#u2Ȓ$-rFuؓ|s_opH防U("+R $b[q~Qa%R Уԫ!mƐ jG1 ,5S>/p__/dxs~YO}VAN<$IU cX).\Xv,d؇R# "i4\.jJIS}ET[8o~??oCB"/ 0Bd>􎫸6ITptʙ3XvN$8&,ˈ„iQ!Pc:")iZ(6\YY$ic#I%EYZk:yY4˙Ȭr]t]3$QL^(kFir ㏾|xd2a67^c0-۫A[I#WtZ7|Bɲ4(Ij,Mo~D0 4ˑTMU1͓ ڰm(J@*A $ *6~oY78@M,H\It]'/ щ :T>Di*ko麎nZ\xQ6x(/6feiݾEv,'q>㭩ceɫ/gHY4 ߣ(\&,4N5 d>`*bKl6QeMܺtvl9w!\t)e)ഃ$IxUmдlA՝p{, U)aB vvQ ].ɲ /*"68a$t딹U @Q$aV?$IBY(4ϟ"2'S0JdYJAQ&Pd-ZN?A^~xJdAc6Ӵ cmjX1G#>O( իWQU>ͦEDV7ЅJ*/|%^M48::b+l>kBeoy7!%ݎnysɈESc&E΅Ÿ̑+VXQP6F4W-0xxH$IR A9~iUf$I>yXVipWF(&ԃ1;;;U)"+5G_sMM͟w^{<{?C=j}& '(, 9m^dRNص+jpj, Ad%0 MdDJBc2>:U_x>4})h40- o*6UwO4itMέ#:aJIĴ/\N>J[. ;Zg2"f͙x~RfP)kVY5zFȒ2I.EQ(4T -)UnlJgLH޴)5ɰi=FnKE5qU ib2%/D?m'bl:Eׅ~Pj1IQٽjgevG .Q( V]&yVyD:vC_䘦tVSRGWQ44&v{g9?bT<(,~XP54&Kl1 Ej7<wMS>"a۶45MX"VU*kmmEq]\fxi,{8>Me?a:Q23 8 ZV4/p(q "BY+R6&6~8u7}8L$!<VR1);8ڡv,'i~e@ IDAT?K&LAt6~[nsp4bKQ$ ])%ZMTUe:2<ޥ;8ZB"KW9b@M56( RT&V0XrhbSi2Zqz͟FAHD555z#RSS̙u?iVmbSR٬Z5"4͓pHݮiV1EQ!Ѩ2~F#!qiyBh48< 4MH*OTc&E!<>SNK!0 EۯN7QI0Y,[t*Memh6sΜ9C̙3<[a<>a.ϟt19h6O/z' C!:aF8<<ٳF#$EEd$HrݛLLOIZ~fuaciY2&eVt!4؈555 ! AӒ 2P(mx1y<Ɋ _iAɋv{IHQ$#L&)ŋWŦ!I߭ߧ=lʕ+eH; Ib;suuתMGp<.Kt(h>aᗬs[~xxH!jH9MDTCEQ.I0MQ Q9ߵ,4 P5EUsANcmYwZKO6_4"fuu;r `e2 4ш!zOf57$&ǨV!1"៺4Ŕ"3 2Fp,xo?C؎J4)hj*~e(E8cvdBӊK蚄G5Pt /hs ~%G ԂKWZ' [d6yk+|Om{(޸Mfwi^yTh^F H%hla9j[,gy0-bM&dXSSp7"555o+tC'KUO eYrtUcmY oG yY&qWRS4]p? 0Meew{3\+WHDe?]׫#U1 ()yF3.ض \PHhU]'ORΜ]g<JYyYZuQ!LC7b%Ѣ!d49KBf,(Ub^Iي #tUBKzVը|)ѐ,Kq{oKDqE1$Kv4 ʲduyfn&~Oףja6EaX:y xp]?67_B SY tzi||7ȲnO?͏?i4#R"'rI]E1a)?>u/͛3<~G~~e> vg=ɇ?aS ;, ZLE$IBiU EQ0Ϙ!є,Dfil^Ȝ^7QfCy[!!a*@ǶN=XZ_%Zsb?[ q41BLIƅaljxe>Ǔ;s&ϞPqtқی lBEͦe4I&OR,!ap :^]b/" MAKٌZ)AOJ u(Ut]GBZ呲jHɣҢku]4=;H^nMSn߾hJJy۷QUݝMd13hԬɘEsd %h6%͢4yι3FA, C,B54IOeєO2['3 @euݪ0 #cv؆Cq2ZKW^gG3bʅKk? Y3)rc v9%Aj`*qV,_LC^A-r(Q(>6e:M>Rۤ,v;<οȕƇ"A1uͲ fY_Kј ."+ITޑ_SjjjFmt`$"X' E! ~&ҙKgMiQ4}a2cfgw0/xUp]ctvM|g2p[Knej7Ma.q5]ϟ?t:[92CNsJCsyWI[n9w5)Erҷ"Ox3 6ήTvni9Y'C)bvv&B_  .gϞ􊢰q($ "& C4E4$ I}L!AMӤnxq΃}{*Ǥ2NLiPdUA$,9{!N'(Y,U_礞xmszNPF 㘝w8`yQ1NqFڤ+bee:`{&dNUBx24ܹszJ( v#w4'L_vMq?{ɪ([/_k8M$(āmhVwN7\Q_u]XM{fy&>I^ۻWT!-էv<ڵikjjjT!9X2RSF)=ErЛ6s/K#n=[ɗ,$f4qML 4V (M[rUlstx`>X,HUU!-+e}23ǵtzbk1N|2~GiDdRb@Q#Tt 2&Iŀ0(r~eHhM+t!v2~wk`oyyI6dVpt:px)Ŕѱ9T(K%Fݦl [XlnS*Y:)*};onV=3EQ?Ɗd*3h;p<*MSbg[(c(%ryy|.Ҏ^ďǰ[ ~ϭ;u]3k8@{S Wӈm`;0vG.~S& trIM*uCi `aNYa#|Ev'QyԔխ!^&iln#LCtۡEqXf5<Ye2dł$M)bZг-,`<7}mj#=Ԗlms:o&MS"-V43.r~~NVԶu:]զ#MS0 nqlFexfFr,|:R%!DY}z׮15bRU8(#VGgvR8ˌݑ feHergw7v{TÍ\85[陘ngOx':AͲȲS?y~+lqSڂ\U򬦷O</Hى*]u]j٦򷴴|>W  4%_eż}>NYx֭eYX,bR/HLl׆>wp]K(b0_--±[;l~,ce2(.^b>dz=~omvwp\׮x>iӤTLc$c )KIU$gTu믿|rIYiQi" |m2"!@)|K-,2cwo7oo}wm $$qx㋅Qo:qm4 ØS\޽{f3JD9A೵뺔eI,Y\a|q璄aSaO89uJT:,J4G( +2~==0 B?^lln}@Tb0P5J"l߶( ml00:>?_z{w) ^^}8ٶM;$KWl?|#xE'\+EٜNP vhr1%Zڤ_u9qmjVKKCiiiyPt]ZBUU,㌴9a00 I)%ۣMܮM =_=NNNymrm,c{{?tzATQ‹(H>|#f9I ,?Pl6myxAf,S*&¬ D5aBoTm"ʗ-{QgZ"2hI[_x !*lϡ6`cgϵOc4aYdi() .gG\rvtLU ,SKjU0N\Cqtt:,b6(YVX'UbzU٣1ecYObHDfYF 27,>ajK (%O(TN2gkln3<=zo.wve'G|+_}xmN)rE%ug%gc|0 r*N&N(RR% 8k9x1|9i6wy&aH$6/!Iً28*p=搽>Vy?,,Gag oݿ뺘VMfBtm>YcnWϻ.oܻyضMLge+i/-&Nh_)cLٷ~HMzB0ٿP1gZlY~`@!899!+Ort­TUE!Mei::$IfWZ:zo|7 ˲peɆs||§}gs ~W߇^KQ,KJEQ@sS----FB aDQDk@B^(9LLUU 8<<ľ*0hCj0 )p흁6׊^nx<} yzYbg%aa,*IJR~uM!{xO8.eDmYqX6CTUE^2cTRUu6Vc$ٔ5\%81|d8갈sCٕ=E]}m"룮k.//Y\ CGR`20_pV_bY7vͯlqr<?ݯuuf20ϹqA(عrFӡWdJ!M-s(M9q?ESvF7R1[HY%IK+syT&H50E"&4XV+z>n⼂NeJD|wOVΓG.!A\OOa1 `YK$e6P*W\\\䲪񌼈\dҬχv#JaIlGlZFsdXr&-)2՘Ǔ$*t58f\C<O.9zqN`+MȘN, P7O&NoOҜ^t`z]ʲԛZp1_\\\Í7@$U" !B/~Qǜ?% C0(# &$Iݹc}gcYQmHK!_,yNzC$twC1N-pd"Pj\ ⪠'%ap~~ K|Snݺb1eccjEEqjcyNG*X.يUwEUCUU$Qƈ{ :,DkQ8E&tϞD_ƱmT(K$s=a6G)X3kd٘g1E~ӳw(˒0 B7Ue">g.:ȋdƝ*nJ2li `9qMF><%߃(j_׆aP)-K݃zpClԅ%_*kiiiMjiiy(]ө$ EK \{eeYLinQS \.:,)<EՂvwȋϰlquJ)1?=x>?xkURJ ܾ~@sW D!L˲0sm_x{Ƀysf[[[H)y]lp8u]l<0$c-TQb&(-N<1 @).޳=F~0 ʗ*wnu4L)U m:Y+MIqU|V˼"qSptt;L2,n |1ɇ$yMt"O?$y;&ǽ;7G?b5^m:[sn`a$OLe3JGbiziY---F啢'c,3* jv%eYe!*)K}|:i{gTaDԶAбzn< utF69<=&c7y&Q:Yʠ7mnWX--l8$$±;D.3M1OS> ~f *)R#\xWQk pl QT_\6]vxmvܺu$I (hΨQܺQH2_{DݻEДB1_ ZRO?;AC-T!.s6}^@d(Jgђ4ق] 0_\҅YoqLYeÁ*U4⌳YeLs>v@\Lu]l],<{O0nܸwԲ,sR6C\o KrLi(2kύv#J! 70L}G7u\J(rTd1suV(1a4EVrƵl, =4M9::ƪ7l># ,:] !/.㘧G)VBC<ϣ7Lf|gss|bni/e咨Y$ˤ@)+_oƒ4De֤d=yw' % b,w|n9ضA +h| I]a2M,g|󯟑&vwp8 ^ m~"k nݺK2Wo!,k[kZXUϲOH'(ɣsƓniiե݈R z$I9mҦL5 qqpv1MqmX,|q,6x񂋋 vwwx1LӠ_AxZƺ/4MuM(}6vCzW^}6UnmFBFQ3crױy.Ţ4eZZx9O]@ !y&U^GW3#bꪢ[Oտ>af?:<}.rN/>!qZZZZunDZZZ^) [`[*i\Jv*^ܮiYI ]V%]0j~)I("4meY!p$%UcZ5cQ8ֱENe 젔)#C\q|1g0Lv$~zm[M*jDZ"dJbU4[YUa]T^t>4锪!咍mdgg7tAJ9MK${' 0g6 q.f888h$nFYѾc3̦0 aҬ~Nh/IA3jW5eY6荃=GԅJC[7 ]̲,mC租PK,FbR ]|TL~G)eͼ1-?"־bFzw|2P2N)'OE]N.-YV2(˺9lit<7P>]0 ej,e 2+Ae[62*EVe?*J`2H ߥl :KLSo>m(n^?.+ۣ( v672"K...x7q"WWw%yVF˄t}P"l<"8#*A*'\&dYeY^7 D3DaR:Ko!W߾ްC0 <,SaY6_۷%~6x>rY81;>!pik\B0BX빨Rr-_](=(c\R鱱9IJgdј4h6J)fQ̦ӡ#ehӟ+?ҺaݪMax{ w,^<۬$I65݈R"KkҲ2` X .EQ)7M2k<yeޘKaa BSZڔ)ʴ9zQP[.mQ1Sw;xk9JqcVJQ 򲪪t F6VX"R&&,dUdWIR~21K$Մie$SUV@HLhqQ7MeY2N1<I3pΐ,˘.ZF%Q-V0̚ d{QΦ6۷\47[a肏?YZ~-QQ%ytB ̷p]ʴKqH+==\0:TC0 zz.uR9&qr U$U{wERBhRM+jb#:6vUAm6$iʎU'P%}F e:^EQˢQbu,|?& C>˲GG얖_EڍHKK+RԺ=IeZE!OSlI2Lbo4M,U8c8 ZJRSZM<^aߴ1dM2GZ=ksRصFEAL(Yص(kL0.ue ryչ!0M!RڔO2Ѥd)%HysUAH}( qrm,cQcKA뒥 ($Fܿ]lEUULt^5'''LS-M<|g04\EȖt lr,K|]&s& UnjOYlnn^0"dڡJrcA%5%b؈Xt&'Am ۭɳ gbv:Ղe^qt|̏zL^Z|?8iÇZwpp__$Bpkp/+B@!jtϱN~3Mk[{eI1nnDZZZ^Y,˰,$6nHwgYˁ\IF$d04QRR4MQJ:iI:_p8ٳgt:3g}mk꺦>ڌnfп'$Ik׮5C|>䔺B1N'+obml&ImnKe\^^!Iva>-ϣ( $ٌ ticZ.b,  0t:MT|>o=a4?<`H=]ŋ:I|]%^JQMy@-y&?CS_I#J_s4Q O шM-!LS8nQeYrvvF忐rNZ8HC4Mu᣹b0ppp_К[ZZ>ڍHKK+B&PԖO, t*Z~aڱC]3p5g1VٻNaӂ.:UUw_] k9NWX$!RJUb8ʠN bS $@َB[KTt;# QDeF)JhISQzuUΥܚzU< |RQTl\am|$,)}$aX4FƳVzmOc21/9;&Ѳ,677qgϞqpp^'WYqqqA4 z/>@07[4qab`^׾$H޹ 1zK,`q95CK >#;=8ɈdN`23%D*(\M޼ow޸l>::9JV6GQ ?NAUkaHDl(M|cŋ1g*Cn8`f|NW WMA!W!eYb"e]a.. wp\Z)˲h_9q֒ϖUu)T QM ^@ F*K2"S}ƽά[u]#jd<㣇ȲlNUX$Iz @/eV+LDSvS eQRAQI*YR cKR ULVJ uYZ&R!,s:ʤr,B2dCAUG`0kq](t>X.I/:PV8F#$g|5k&%+dJFt}e,n/0L.Ōw~mTlRR!(VͶwO0; T(ˣrsudTL+D%Y,LFͮ2j:^eyWqX,ȓ*tQ\^Nyz tL(ERީ+/R.KrYUv>>9$nKKK˿Hiiiypk\axt\mAO'O $v"0jXeY @3جH7/5 SUqB.$F3Bc=\5xv&,K4CJh$YEL7+YPycFw]8Κqla6k8&E2Leb6AiJXܸbv5vm .F{K|u͛7YVH)"$}ww0Mt{$iH8=?'J˪>-Le1* bPJe NBD"~c{t\rh4j|"=$+:xGYVfsn#/mn`XR^WC"yplk;;$I»g?RxŬ!LŌ*0$-x;|00M>3(=tW(j$Α2=޸ʹy}[ZZ~i7"---V+$umHGЮ̈́p:8ýAZMa$aLT,!ɵĶ:\^$0fsu)DMNDeM, $i?rrԒ)) L)-sFdYgQLgr1 tr;T>`~V/Ї6)ex} ހ(E3_ !;8=!%L`vU`#$a'5E0;`ضt:m%Q<0 }?L(”`rlbe r@9%JYMaEdY䵁x1Í"'+ ܞxH*xv qs@ގP5I{qֱ̓³1FDidN`* 9 ǭ/",'Xl79_zML#Ey^~ˠ<8OD)=imi|\WW@99^;oq۟WWv#JQ8,VCPWW\b+A4[bVݑҡn ,fXAȼ1(#iUXv4i{wmwkd2Wglm3Msz(Uz%2Dž-drd:Q6Q( 0,ltFήTWI)UR J<*;M䒤ҩU!+?ٓ3,['Mە0 w{$ug3`p HDJ%%JŕT*r W.r{_%rJ IL `0>^kbuo؎YT8hvz7}YɗO"Ao|I4l 4eXx @)3%QJHg^l>cǼOS [,䳟1y-+2UUEir C8 w]9)SN{- ]_S6up im@(Fo>OTΒ&|qVӫK0 l+a^$ UUSUU e͸P3Q&]q7Qo%ZǣG@Kt۸!Y===o# .C)KEunNJ|>gr(~=yΪ====o#ۮ{@iK9]1; kt#kL^r-$!ڮ` #_sw06M n[MӥfRrn "o}l݌wEb+u9dJ)WxYYDvbFqFjǏ5ަv7ڴװjhڌՆs t@ƭν߼wY5FЊdBY<ɗ/p_zC )}GU7/e#ɏ>ԯQHp(-9Yu}꯱ifU,sza$С@eY k| E- 5.E'iH<;`咣;X\ 'D s3/L:6+~O%ֶ,Vbh9u}{zz/&!w}?!RXG*OΉw%(oO@SW74h@@Ӕ(v)%U ܸ: Z!-QvDVz]FY48+qҢiR8c:*;P1 X<%Q`RxvzF T$u͛7) N+a]D8cGߝgmbm[(M Z N(OQbQ` h-ہ/$|yV3:HiEKo+9&[o0&ICf)Պ7npvvFZl6c80a: D%{}w  4PiLv˶n avβ8 4p'_2E%zgJ0M!,cr.^m밶FXH#c,䀓B Ã>eƄ%WWޢj|ܻw͛7yi2(k~HÚauwND#҄ѽ-ap4( cֲlQpvvu4ٳg>i7nN<=˜ iHu4&E ۶\\\3s*B [\o2aT+%ÁOmo#p~ Q¦1PC:Bb%y8&?|{wG_rg$Q*?{»t6|GjZsqqf%X$"6g5ABSFN7"i+mm09/Vow:!Y===oˍUZݗ,Cb^u]lZ奠}_8"pWno%2Bd~ 6"/I"JBKݹC7Ҧؒ(X׀2jVׄ?{D(is!J[%i?VZ^'!}! jr}tLL^Qsf>SW~Ç]1W9Q1 c`y1LE .0&%1h-шdn,MSZbEB#4qsq!I}>P%7&#Tw9 mLj 0 ?~rs #\t6|&Xٚ$ܾ{rQ^gݵ(kjjyvyv]~d1Jl <8F:^҆!ϪE9O#t`HR1YfP[a*3_ឞTB獡0P-4ҏxq@4 eڂPZ`]IlqT]6T.*ؾ(5U]yYu!ZkcZIS{ omZkAR>_y%;\6uAau5z$6:UUeYϵkX;ZSۿ2E,Rexp̷NqcS<=?c0 "prt.eY\.;lz)*$n)˒{7'si5,l0b%3Y2: )%GckNnB O/XMx3/o}&K2ua햣GGST(p \ iYuv2#`y;Ǯ8999y& ".˒Ǐsqq_=8wYk-Ų k|!m2NY+C3x|뺦5-Zr*VΝmͦ[}jA뀷vo}mNNN:ぽ шx5ՊrxrB@Zyj/y;X,_ :yzu5i235M׈1u8SHsCn4*-+q JN!)ϟ=e||=mr||ܭj""(b^s8LP҇2/\Hj@HųjU1HU/2I;Dx2[T<#€I<~r% m_=$v^3p57ߵI|o$cweHOOջa(Q2dQ9ww91]wo β҆(}W%8]pN.K bT( 5ܻw(HӔhf1"Jɶ5Ҋslmۍg&-w`;DB$ RJVfC#")?lFܳ$b>_rppl6#e $U(mB$r<$9BɄ0 OE‘q9Zstt!U/ Yh8?=e0H:f[<( `*hg`0W~l|GdMW΋e8T2d2i+2|lg[)(dvhMrBDJV  .Qq]cjK~?00Bքӹ-. (l9<~x2Ϯ8_)bozB  p wm+O+o$!V A}$}Nk@ /y^a~qeA$R5iIk-I!lw1ZS1\,su^('ƿUQJuЍFZ,.c+_i B [?ڔeaqՐB+`9L[1AK_ _~# 999t!Mxdq4@?G5X+iI"ޝN *x,Y[Gcs ޿d8~Mm3!8,3p-S  e5$bT Jyu8ܺPGSIX,KA#U>? cWg|9/ϸ}y6|]wx\U7DS:(3GkQJqrxgϟzzz~|ۊ 7.#|7@(w*K0a!I_Ҹo_mYM׍"΂m[TOo۶ij벴XYZK]Yt_Dit4Yui }B|UU]Be8ZtTUb^#0:xƛ8y݋+aYVNH҈i8;;j%c5uOAWm)i]/Ei{Rrnmi ;\^o/zoۖҵ mRSKAi;1h Eѭidc$/ ð+FsɄ<988`49Ʉ5r}1H]A8:BoF0;g-=9ђVj #H%bqŚot3J<mSbmKZ狾999A&!(SW˒WU a R ȭ #$DƒUlH>B00??# enJq2AI܀bi&7XB:0D-k:*bp8{wf#KGWU====&.EHOO9hjHRA]["ihږyK P{*$q3I&,I~/PYm݅0 AJ0kHIh]b:+Vu%k>䯨 IJZKBp^/W:1}PF^?vK zwZN/ν@[םW8Q [7zr{UUTd9e5>8 tWu+"Fkp0*%I]A<̟60~]_- 8ess8h4l˲X,v+PU$@ !uC`-CgH2b|KUU|91uF*޹qetxD9'//Yf |'momK|qvE2#djQrv}+"===o1;Wp/܆0 7!_mۖi[Qv6W; EQt?A@%/ZwmK]_xOl9q1 XV(R7[vTώmݒiV>/ýr~ᐻwvؽcX"UkWmE.!Yqppн,.NgZw%\!.}6ywɰ+&MRuUw6 }mx]9h=2QJR5䀪zJţG7tJ ?~K֌FΞw\"]ag=}n1c ivTU>&IZpyy^k==== 7T"M 5X9ƩeD8'(-x9F2~)m4'.x+:&?0l3P^٬n #{ tFXJZnև3j8bD<_iuHyE#UU(mсCA!6PW띵U_}w&jqӚxB"YM-fF)U% 0uэ)h gn2 T%au ǿ!pW7WHĺOg)THS >lZNf!=j1n/5Eg #$Wo}$"*h[A^[8m޻x<ǟ4\ 1\L%MI]Ȯ79T-mVrkzo__pvv[om8&I5C$ZoOA):ݷEA]9h_ys`Hu"ZAZ qPTA,ty)vT(-pMEirN(68cp(H#5Q ꜬxM|rnt}_:D8@/`ҼX^˖ k"GlG ȩhx%DPh\c ªn$l]N{YmwmxۦiHT Z j*[j &CTTy֚$59qwZkJcFd@]^u'Zw}!|A,tu-Ry7,qiB wEQ I@kY#0Os{upv1rJkX&[!IՖa8D,[Q#MZ I?YFGssgs n _}/ҴQe0Tr$3k ~qwfysU9 Ƅa2rm1kҸ:' Lg8y筛hk^"===oJiI 6$ CBc`Ug-U:HB]_(Cc+BiK>-F1Uf $Ji_vY 0uI4J3J#[ !㘲R׆8 Cd\ܥH9QP^QUZIE"i!mh BERpXeέj0Syq8 !DBpyE6dЊiw# LXH JyjZbI$xA&`,C`4M'uW̕eIFdeCk*{T 7Xl EgMSXlx|V^/u'))$:d2iu%a,>f޴TfX!y QaY\Ơ#%Fgs 6 )Ew$O?Aַr$5EGΪRlZ_h>?_0'eʇIҋhwDzzz [š瞞_!+4%D2IENDB`././@LongLink0000000000000000000000000000020300000000000011560 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/webkit-imageanalyzer-complete.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/imageanalyzer/doc/images/web0000644000000000000000000117532512273255454032571 0ustar rootrootPNG  IHDR"u%DsBIT|dtEXtSoftwaregnome-screenshot> IDATxy\TUϝaD T 255M=5ʲ^-KMSz\- p%E45GYdgf1rsF_y==|9BtFvZG>fv ?ˊL*QN1P.N1K%K,@ɟI*q,d^T1 )(>R1iE\%qJdJTy c8 uqOQ>yA[)߁-~ :փoK@ 'ʸO# |,_﷮ 4i/}B~JU)=R֢y,ūo;4r^UvȖ<PzFdԃhѽ{75yz<abJ Z;-ݻ`CB'!$ ݻwNā;y0A/_vCFiVs>QyȄv3VGrsU[T2dYkeɄFѢZ%V \vVFnnFKee0RY W^Vmɐe99Թ#u%cZBz4j2DG^Յ =zUwȂ>5l=wʕ,8kvn}yP5 Q%9\IGxFة`Qzu8;9ݏ8pg-z^z Dd FVs!dp'LjQԦ^xWR1/:Fu{5{]wRi`4Bvv6F#LuOBue+v', qq `4ۻ:rrLqv֥@CCLYqq%~v"""""6.Al493 Bnx@ ?>nv= o= H dوNFjWNN5l}AS9'GGӤxB6 yyyf13 x?NIlܟ(Jrj"13Ҿ10ܻwYIWz<$ ',޺}6JY^W<<7>tKܕxhJIgBg4mXl#i ?׿'K*2sLìT8Y94,KT ɗ?_$;;0dg99$.*߉Ha&voͽRV#""""2),H*_-C6z!J:<4vEhTɴJJ"&#+TT* BPTʂJ%)BޓV$1MdOKw?J`*cz)0Hȸ\ODDDDDf2Z j?ovmQ h ]_,Sa$`u *h4$%%F$CV $" M/Fh՚B?Y3 zȲPh4Z"""""%e0 h8pO*QSRA6d*sBIg4v2,TZ;DePCTZ:;B%AmTODLuB(!dSoݔT 16mZuS$+;*IBfV([~h"""""z$;;m.V523^YƷ0*$-Ż Glh(<e(= /wJ(sjvZT*I# u}!L=71O6M!ڵk$R.&"""""ӛvVWJ,i Q]V% JS9v\ 9v LU*F$%&CFc{WtY67oBVAә11 ))?PwW71 q2RpR;=:,zD4vt0 AkmQOJFBAC;yK~! >9pvv!I*!#''̀Z;>#qu'g't:@H$̌L݃z=:!?)Yȃ4Z T* z=z=dRIPjjO"L)2 zӜ ZZF IB~U#ñL+mT*h4jh22""""b0K>Ya<$Z&L~J%AH*T:m#B?yy$Ȳ:;5tZ(i^F=8{U^>y[NDDDDDT@74$"""""R""""""*2 """"""* vxE׃!.=QMۢc6n""""""MX]fq{&"DDDDDT*eQٰDDDDDD%D"""""*wLDf-uLD&򓐒$#LDP$Ut䣸ddQ?s2!""""rD"""""*w#B @tt4n݊'N`hҤIEW`&+Sy&"999HJJ*Jw9͛r M6pqqڵ 'Nč7c)))X#"""zҕt¢08ruV9OOOǗsyyk\#|?>Ξ=[!"""**Y&";wFLL ֭[3fpԪUb+p5kD~~~شi"""zl7icus1CݺuѢE 嘣#ڴIyf)pW`oΞ(uYE`ݺuTz[fMֈߍ="O4c˖-8q֭[5j`Gjj*tRԭ[n’%Km6_|:wlh4b˖- Att4V߇}޽+WDtt4f͚O>f5jUbcc1|l߾׮]NCf0i$ː$vѣG1zh<_ׯٳV {.H[ 4ҥK۷o~9s&{KfwƏ_ 6@V?ժUC:upԩ"cשSs5;fM'&&֭[[urJa߾}ptt,DDD/ֱCA Tvvv9M6B$cx7V-pAܼyS)!BBBĆ DppRW^1,7Tgb@lٲE!ġCsƍbuSN-U͘1C{Uk׮۷Oh4:o߾1Bш˗//M !??p_~h֬r< @,\PF!aaabh׮X|۷ w.F 45mqFRagϞgZ- C_T~Tt1uq5_{U;LDe,%""::Z?~111ojZ9׻wogqE"*W7oS7lP9-Rݻws;vP_9quu.\HOO_ bW;v̪eYԯ__xzz ^/bܸqJ(Z-G-'.^(m&<<<̈́(۽{rE ԩSB$"5?CՊӧO+mSn]NWz<0!""KlpM6r^@VPn]?}U=֭5jA᭷R-Z@߾}#((H9noo,femۦԩ-[`Fv=ԯ_Θ3gRSSƙoӣGڵkjǏի[UV-}[\j#BzY<װaCK5oaaaf&%%!""ʱl}ff^eB}!nݪDLL{kS~7bcc͛7[aJfEQT7n>#UpBq5|6mR !0n8$$$0%y[}=oK\DDDD*K.]~8s UBm۶-6n#/77QQQL06miRv\\rҥK ĬS(/\jY[fՉHqXf=z4>SF_s΅V\ 777 gΜ7̾DDDㆆ{-tWrSo6lB 8פI!FzN<)n޼)ZhtbĈ"&&Ff !HNN~\hժ8p/3yNm޼Y<3u޽{EӁ m-]b{n߾}B1rBoBhm-\b] a᧟~Z:uXܹsj]vYe˖"?x3FDDd ڈߎ*r аaBWhzpvvƍ7aAYYY駟0~xeVTT7o^ N\\nݺZ ___T\<#bMYkq [=$If]8{MV[l,[p,*;I ]7n({MpttĐ!Ck.eU)Kqxyy˫58ִYqPjU@FF[ 4$!?퉈v OPT/Mt:&LGO&regg?dv^e\pigy\OZjaС{.MT̜9FD+V@^гgO]re{طo_EWŢp|Gf+/>J6m´ipr=PF6޽;8$DGG_ӧSOTmݺ999ظq#|}}d,Xf/ѿ߫ ޽>5kVUѣG6hֻ FuM''r=4%ۆ c刎F.]s~~~3g&OСC|rܻwz_5^*@TTΞ=}bh45j? Jefff&v܉aVjz۷o_:ucǎjpuuF  <[na۶mHKKCѯ_?ۛ=)) .j5.]J*B?~G=z "A ::M4A.]? !,aB'Oܹs8p aÆRJŶc>шps푔+W@$mlyxprrBn݊}cǎPTV:?Rj˳*d=,"**Jݻ]w#GUӦMıcDŽB]VTZU8;;m ]vo߾_K,B&|}}EŁx駅,"//OnZtA8qB N',1j(Ѻuko>ϊ&M\qM*L"v)|}}ŋ }Ax{{#Ge˖ YEŌ3駟,oB !Le+-;]_|EdeQe"00P4lPFw)+6&''W닥K]vƍ˗w}W=z(9L"*U$V\)v!gӧ =ʺjVg; tTADD#&"O!uBa0ѣBT@1Ba>۶mB{ "))I=zT/B "11Q:tHB!BBBcyf@L>]FfqΝB_F nB%ٳD⩧kV~ {vv]prrEaE*M6 4(QD$_-D ,֭[EBeqb 'Zl)*U$_^s8qBSWR,ٺu1bHKK+ RD[ phAV- ;;;F@J/ѣӧ2lH jZ4ʕ+]6X`~}FAѪU+|gh֬<<9Yχʕ+{nDEEXpaeٳ~نǏ,˘8qrĵkנj1h "11UV>}:N:///L2B9rD"dffZ i~"d˶ =f$IAyyywVjv|Ř>>0 B`5* :::xIJ<]B'?R=f-Je'L$%%a̙Vݣ(*RTLBfj5"""zt&M{᫯իQJ8p۷5nV‡~vUtuD)N3f`ƌ]ɓ'c] RS>"DDDDDT4\%""""rDDDDDT8Gʝ="DDDDDT84ʝ)0!""""psDQ9du"""""*wG!""""r{ܩ5!""""rD/55k׮ŋ/7|`4qhҤIאȶj 4N%;;֭[7774iڶm[+]}7|Ss!,, aaa۷/ ==?,YY˥DDDD兓թ!/bƌ7nNXd eU* 33,+6sL3۷oGdd$}Ylڴ }\\\p%8::bҥر#Pzu@v퐑aZƧ~ I0{lL<$"##1zh@1tPtpttƍkׯIPn]ظqc%5kF>|8}!0uTL0AUٻw/}$%%m۶JX-[ѡCVZ4iׯ ܾ} ^dN Z',˸}6Ҕ4Pjj*͆leff"995kִ8RY{.]= %%prrBZ̮3 HMMEժU}lEzz:RSSQfMuD;w //6#C$=&Òe+˺ѓ!Gbɲ~ BC6phUJZjVZE^W؎NNNprr*v3(+WFʕ =hʔ%]\\JUV$蟈C1!""""SgVt1@~dd1!""""*KIq,""""2hٴ~r1!""""*#&,"""""*wLDqh&MWUc"BDDDDdm+ EDDDDdgCQdD MJ&LDP$F4LD`"BDDDDd"""""+G6Y="D  &"DDDDDV`m0!""""{Dl#bLD`"BDDDDd"""""+G6Y="D  &"D!N:O>]"""*{DlCS'ǝ;w0a@$&LjIOOÑsrrB6m0i$899=aظq#ѺuGr"""*01aOOO̟?wIѣq2ף8...Xhvލub˖-ܹ3MѣGޖx{{cVՕ*`+FcaΝ-["88BѣGh4ԭ[vvvHHH֭[`j 2vڅhK.:T*7g}~:k3駟ЫW/֭[駟зo_ԬY,gh4QF.w`=6qhD׮]e\v /[sAJJ ^///m!!!ƍC-8qqqwc;66C I7n`OOOL:x70rH4l_}`׮]PT[o޽{[cɡC0foVZxוuq,R] 4QeLDѽ{wԫWƍ+@ll,~A`HHH@ 0{lvk`h4X~=ޖXիWcРA6="9"T?jժrW ٳ'._/| bbb}vUJCl2L>e٪zl8G6#Bnƍ8}4wwwxyy!!!ko߾߿?=P!P@۶m닥K"00瞃6mX{<^Zڵk?,sQ0 &"Tn%pw؁ aΝcŋ={`Ϟ=hժ\]]/#00w… 1` 4UVE0 ݻ7k׮aΜ9Phcȑ[bժUtXt)n޼va˖-w`` 5jٳgA8v`tfΜ Xp!Ν;Wh]-FBBU ؆A4AHNN3t:]szzf333jժA2B#//5kքZ.6Nqrss*U(񬽷hDbb"<<\עb8.fYIm0!"""""""""+G6Y="D  &"={`ʔ)ѿ{DlRHOOÑsrrB6m0iҤKܹs7oۇ^{fΟ}'fMk5 6 0nl1uf̰\?>ϼy@.@E=!= PpqqE{nԭ[[lAΝ1m4eukh}Pj* TZץ'O )@ܹȑ@~Oϙ3}@=/{Dl="Ta4ӏJ |M|g̮KHH֭[`jJ9[ chԨ D[,ÇPEsrBC[+>։Y@z:<[$l="zl޽{ TEGGz^^^h۶-BBB.]v؁m,^tt41f76l-~0ϚeJ>dQ\@vӥODDD`"B. F둞@ll,~A`J``oo_h\'''^ *ƍ6+W >l 2l @Xy̱c?Z4/T1C| ??`S'oJJ="D*\*UУG̛7n²e˔sW”׃=&ɥqb"pZmـ^oJB1J[xєX4\11 2 Ǫ\tDDT* &"xM6x8SqQBp_hڵk?,#G={5;5ΝooӐW~Ø1baZ)xe LnZLz`"B"==#GlݺVNҥKqMk[l… 1` 4UVEѰaC >Ǚ3g| ;; }vx5Soŋ/-[ޏ&[t玩$%V^~>,483g&U>kJ@>̴ԩ%/{DlC ZD$77iiiR j5 33VTLeKKKєLTd eIFgS'tL!äWVF#p:P&=M$!*L8Kx,FDO'=)mϒe+d l>"t0;Tn* c}3ڴ`qM=$$ĚxeVsHQyғ[,"""""+pm0!""""{Dl#bLD`"BDDDDd"""""+G6PX|9z쉧~-Z@wފZΣfa# ?zyk^ -26-kxbOwmm2,ƺt6@fECT\T J="Dlt o6^y>}ǎCNN~׊^9ՕW5jKMCMp2$3-[qzǝ?Ɖq'Pپ2],w'kC/u)9)辮;xǣGm.FT3g>4@DDDG6#7g:t ,+{{{ᥗ^B:uXv-.^'N`ʕ,[ sɓ'Z:w][ϟGdd$,X~ͬkε]k~+盝[#'_x|!r < m@F^֝]1jIa JRaTQ8pۯl/4މ['РJԯ\q*ˆ~y $['"""*=z6nI0dGĉbȑ5k:uꄏ?^ڶmxݻ8p FW_}gܹs˗/+e1fugaù Xt|~ hv~YO:R?[RåfMћG;)Gn)40@2Xvj}Qͩ)rh {Dl=rn݂ \\\ؾ}Yjbԩo#GaÆꫯ9www̜9ka۶m 2N> hРFe1^ͱX~z9zm^{)+۱ X=TRj?+$ ՝uTwsP0߯?]ۇWw >n>X{v-<3Ϳmx[N[7"""{DlCS*U ..tŒ3ХK,\PgA 0uT|GpwwG~www@DDsDɰ IDAT WXƞi&SaDMvqu^m*.n][Pձ*>=@o賱jV|l!v o_U?h2{7`u_IDDD`"B\Ϟ=b ٳ/jժaÆaƌhժ7n#G Crpp@zfչY;g"1+ Fz=vd볡7Bp'dA>p1"wŵ*Z(XVX^𶁲]mEo@,( (]$ROǐCIH"G)\sM99fUMog?#(Iss|/YR1X<{=+_?N w~|@ };BFd2a5Zo}͈(,FMӦMkYre># $0{l҃*ף RhG8Al,ƂtjԩZ!"""5 $1~׶m[-ZDٳ's \r YYYt҅\>Ə;? СCiҤ ;wfҥUϏyꩧزe > O< EEElܸ {WS)bAєJ{\RZ ~cS&rsViNg&5'}Rqúwrkrk2i:U\cyH$7?\Ƃ7>xK+"""5>"a͘: zA]C۷ogҲej6UPP@~~>M6ŶjJ^^8S`rw祯_wtoc [K((^Gs~ѬGemogcFgg]1cմIoC U",SkIn"r`PF0''Lb)#"ӳ+%%;nW5*Uw,'TR ,+챬@iͮ-Y"""$n!@DDDDDG$1Ԁ2"@DDDDDI """"""5Hb(z'77ߌ3""""eDCZOޣn-ˢ}1;zロn^ޛo 3τcﯸ|n mJݧ3[ηœ9e SOA޸__GDDDj2"@DjUW]̔)SaƍߟW^ykrϲaÆZ_Bv;%%` # N*ʕ^qa姛0h޼͛<kx ?F9rYDDD#5KeѥKK^^nFQΝ /W^Oc>dmذsV믇ӫ7>:8`8/;R+7 99z,?ݢECpUӧB^fkWXېW"""x BCԹ͛7pBAgy3qDx  L1\vey{L2^z/ӿ>{2-adXvdMng/;QO>~ra _ ۶y_/ -[V6II-YG<KztݪQP "uꬳ΢{sV1bZ 7дi1?VrQҎwurJmYC@c "oY^c@3oz7浬~{ݺ֮:7k݊u ޸l()s~("' = zNFM DDDDjЭYR/̟?>iii|[x38رccҥ36mڰf͚s/_ <.ǂ; ,=zx}> uwߴq^ /^>}nO4ie_6n~, :vz~I I "R&L 9ƨQ馛xY|9WGdҡCFA$aҥtԉSj*7oN͹q_7RPP[]?ܻa /y!o'Ø1^q^y8D"^&4qxU/#rp)0x^}~wV#~߼[n ZطeH(#֌Su=D(//qH-툱 uٴi)))q]۷Qi۶y>6v+T/mۖ&?˒;'^#$\R4U)_/HXUckIn"r8Ѓ<9aONČSGD 4퀶mqt2))-X(.ר[դɾ/"""5w![DDDDDj@}DCH (# DDDDDDj@P """""Rʈ$PF$1Ԁ2"@D1ຮޟ ""RI "" H,㮻u:"""$eDCHDx衇[U0"""RI "" Hi[o1fnݪ`DDD)# DD 0m4|Amۦ`DDD)#Aի|ͤanADDdSF$1t"b1uƼy7nO=ʌeDC(8={dΜ9ߟP(_Njj*euEDD~I eDDX,F,ce֬Y3)SPPPGʈ$2"" P4yp^1cC ! q璜̈~Hb(#"b1(h4>_~x̜9BeFDDDeDCHFݞU3'NdĈ{+I0eDCHT6#R6+p2n8 ͛GIIRF$1GD*͆ضMϞ=q[oqȾQF$1te">w˖-|'\z\qL0k !."""n_3" F<2ib 2[rg3|pƎO&%%˲Phݺu}~tڕ`0_/14IJJ¶u$$NDaÆq 'ps]w1n8ꫯ/)))j.)# DD˲ׯ#G##Gq?8iiiq,\"=-KDDd?PF$1GDm{w?OtԉL1} 4 2dU]DDd?QF$14 @oq82e sΣw$''+ԬP "ҀضMjj*e 2 OIJ,RRRuXS/!q@)**u݄YXX(c  /wgean˲4nܘF|6d_"m۶[u5DDHb0Ț5kxG8INN~F\ :WcrG–-[Gnofx㍴oߞN:%̪3ٳ~=~:5QFs=u]%eʈ$"D"iҤ iӦ7ߐ裏& ׯ';; ˡZnc +V` 2tfϞͪU8߿:)W+V` 2P(ou88#Ι3ǠAh֬Yc/fٲel߾&M0`:tۺ|,[p8LΝݻw?̜9sؼy3۷3ϤQFټy3fbڵ$%%ѥKCzz[>ТE : N]G>++; ?p7nLAAy|ڃ>֭[Wӧ n{RmW:n駟K\Vuo 2l0RSSygi֬v]DDn)ISu]ӦM;u87|c+WcYhѣG|ŋ㏛Ӻuk3j(ӺuklΝk1?ϻi&c1wIII1iiifUѣ3:t0]w]N),,43{lӥK.rӤI\VeݻLJ_z&###mfܸq欳*-[͛7oMnLFF馛̐!C `|>5kV|͛7>}\|k5edӺukӺuk3zhnl6'|+LRRiܸO͜9Ӥ͛ʜ~0wuW裏AӶmr֢E W_ŧn]*jlRRR `4ibxc1h4m桇2vZ3`#8̞=_ZnJ;խ*{~՝ߘ=EE~m<vӧO7:u駟O<&##c[BF\}E8Ւ}Е]gLbl f͚9Sy*ٰa6mZȤI `6mj֯_o1椓N28p1@74III?Vyx/7x/R|yF2 ,0ڵLͫ\Ve~res=?7iܸLf+b>3sƧ0aBN;{a]tL>}.bSO=ua}1˖-3֭ O=T<D"&f͚zU@$++l޼I&`0hӵkWFM[U]BcqaeO<1>|ٲe0?sa~?ѬYuHu_uqHnn5kV^g6?ήv/厱:nݺgtRe֕z@DDځs"_~e}՚ _~e 󒒒xaijӪU++cvD.]j̴iӪUxk-7{<n:c1+W/?O;y𒒒*YVUu]gӳg0uMv `Ǜ)SvW?L֭ZhaswƇ7.(m.nWXQ۶m%ӦM3|AmQzqk7zx .v]x?v:uLrr)..63bsqXe~7c+m*3qD^֭"{h_㶲J"kc3dsU^+@F4.,,LxK.euQO= 6ly֭[gAJJ ~z|xݻףG\eѢEUSJ_We;]^>}k9?~<*3q 6о}{Q¸뮻Ν;ӹsgN;Z?Ojץ25 QXXL,^;K.cx9s&ܫܛUdO`_ۯq/Zl qǥ^z>"`;wؑ iӦM1cƐCII {/>)f];iT8]E[++}#Gd޼y 2/C9$۹˙6mW\qIIIL<@nnn|z.]춼ҋSr2n8V^͕W^?O|M:w\uȈkTt;gffһwo>CfϞM0SO=E#0sL ҥK4iRqoV_u?~x|NDD=5+1lFſ\lYo`D"~{NO믫5ɓ;?Q^|fߕ= >).._~̛7W_}۴]vg&--?+tRPi^%%%tu "<ì^oϊ+馛j]J3GydRgqgfy晄B!>l{=MFٳgu՞_uqk[S 6=zt#GDʍoyw[㲏Szń 6mGK.|.\x1wC,#;;c2a:w̋/XTt;r!|w|ꩧ8N?Fnnnױ}:z|M̙WuLe W{VU)**}9~%H4ԧf/??U˲m0ݺu3s1p9oEef5v IDATرqnjֵM?cNaFB;O?t4jԨ\>x֬YCLΝomfV\F۶mMVVINN6F?z2O6* BG{1yyyMTd;uM7GQ[oeӸqck$''ǜp kΌ;vVVuߞ/Uq[Ք)Ss֨&O۱WTzjzj־?5˚1u<}fb~mFJJ ;vBMcX~=nݺZoj[[la˖-deeߖ?i&:vH m5kڵ+EEE\]baٲe :~s9'~{x`Æ Ҵil_:~Æ A:uTf˲pZWU휓{[n}m_vOmQS,˲0<9aRao5{r$0S4ܧfU$ q'\˲hժU˭q4nܸ_|E֖m^yۗ~6mڔDz,ZlY铕4*eUPؗe\ն[ue_ۯ&q+""{f%F#" QGoc 1ӧOC~u\K)I "RڷoϻQG3}:=~[$2"@DdCeرuz(m۶%))}eHb)#zHhҤ ?3HfDxHXx1˖-c4i҄СC4VX 2d̞=UVqӿr/KNF,Yܰt?p֭[ի{IZZ7of֬Y]$tB>}HOO`ժU| 4-Z|"""R$n͒zkŊvaq/|\uU|;̙3nݺѣGFwI۶m4hvz*jTfE0ƍ_~ݛ!C0sL[nfzرc᭷ޢC~[yqg#xb;0uƈ#1U'"""$nV\I6mxxW袋F<tޝ{'>OVV]v`5*"L6aÆвeKnN=TLN={6mڴ+'x &0k,zAѣw[F,r>I "Roq?;3>য়~M6uQ{.{vmojY+˗l25l\s5ضMaa!7n7ߌ/Oys1DDD~PF$1HէOZ?xƏYh46mZ '@=xgX`k׮K/ --3<t҅'2p*ODDDj2"@DSN9N:1|.b^vPOdY_~&OyGVVV|S2j(BW+#`ժUU󉈈HQF$1HT\\L~7owu*$33˼袋B/ꫯ2bĈH$BAA?0Wob nJDDDv)# D^Zr%We6jԈ;o]r/_MR\\Ly衇[ͭܽODDDj2"HԢE lu]x\eڵL<smN@פ̒Ż+^k.\H~b| 8p]֞Hb(#"R˖-y衇pe˖1|p~7nvlB-7n'tR|0}t.?T[o޽{=餓ʽNݻw'== .ܸT6mJi׮͛7gΜ95n^xܓN?t='"""2"a͘: z999lڴ;UM67nq6l tԉ`02v>,1u]݌f8ONT/&"eD xr$fL[~kܸ17enܸ^{+ow}+VT8eYlْ-[h{;Ԟ}͈^}@DFO? /M;رc]WKDDDjPjӧmg1h 뮺I eDD .ض]"""r`QF$1M*9)# DDDDDDj@P """""Rʈ$PF$1Ԁ2"@DDDDDI """"""5Hb(eDCH (# DDDDDDj@P """""Rʈ$PF$1Ԁ2"@DDDDDI """"""5Hb(eDCH (# DDDDDDj@P """""Rʈ$PF$1Ԁ2"@DDDDDI """"""5Hb(eDCH (# DDDDDDj@P """""RC,VY""""" d6F^3|?ԤR """""c,u DDDDDD)Z>""""""VU:#:bMeDDDDDDAe%\TA>5 =Y* DDDDDD4QR= DDDDDD4Qg DDDDDDHAH(Z@DDDDDDj#"""""RC#^UhH󟯖l3=8@DDD'XU1>""""""RHS """"""N:"""""eYu]JOz@}L&uD;eDDDDDD)Kn8 ~(SC/zH=cY^%u֬./k&I:vty\o,ݷgLBzn@m@YOP """" )8PSHpd """"E_'ˮe*#"""""RU)nL׸DQ~~)"ʈȁDoVzLA8a7ڵٴm:tPG-e2"r QFDDDD꽊2,d@i3߮Z%2"r QFDDDD꽊2o̜W^Fypluu9s_-t-/|osil޼IϽȯْK˖͹nQ qc؞gDxm\ue<3#g`7fPXXD4̬t=E~zoL-9]ݻqYoYxu)(,Ͼ 2,F^=³;>u7ƯGxv|LzJeݺl7kJ^'pmFX~>W6| =z 'fֻ'?E$t=E~Hkwpک,]!owhߎ]! rqԑGpکu t Ƞg ֭zXAgD"jӼy3RRҋHIIG/r0N86ng_%%%۶9ϧKٸis){[DDD;ޘ6>eؚǼuk (*.?dY,?\=uPe]:O_O0';/^} @jj*g'1 YY|l93b;w%%a=+EEE^RSy6oYU1_sՕq3(,,rƍǾyu|o43^'K <=nzl߉7gYg^n|&Y}"ƘjoW2 <ќ6xPEKxSOkyrȫ>;+-W}D@@DDDDLA$>'6Vr*v߹[!e:x4b9?LJwK.wr_GnPzlْxY/ʭȁ@{]r[qW;/Y`SygKGQQ=ߴ,\e_}'#Is͵7q<=9:vh_.cO3܋t`mgN/(`/.߰}{>W^sW\upeYո1Ny?E?%3##" k)f ""RXU[\DoߗݚУ?Wo_߶m;4oqvI<9aA]){Wctߞ1u2""""RLAFBnͣM7vm^!ijb D9Y"""R՗>L}vm_Ixe=Ej2""""R՗LpUkC^~}YOڠ{%SЪe ./"AJ3o%""S>fGzjwxjnz "(zɲG DDDD^mI"o."""""Z'zH=3/"r>|~_Fo:sg=DDDDDR@6""9p:""""""RHS """"""N:""""""RH [>8c|A,¶m|>m8m|lcY)~ Y1$;D,ò,.El}[1%aH:A0Ƕ ?8Nc [aJ]&>eY?x\  i(+B  yv[sD 0mSB uNČK"тx+hD-?~a9QX 7..%8|>v4Aqq186--te7fQ?,_'υ xYsxYzmi޶D#.Ur\,`;&gkCEU;ײr~mJ—BR0?%%$ Yͯ?~Ƕ<_0yؾe!= Pc∓H6B!B~e Fxpo@̫w .e\o ZcCR.&B$HFHmlhlP[Mjv0d6oeul]EaJ6PRTB Lq7M2!RI>`G.)bbDv* ƵqVO8R1QCrQdKxٜOQN! ,4ob98Tleo,|۷ʧp;Rn&#mh3p[d46d4ϤU~4ڶ'N`]˺p]ss\~;Kߴ![8N3b"!1% 6`c q„mppcM,RIFI._P@Qa\n^֭l//Ƹ~}@RIRpu|XPPR@qq!yl޲_o(ܔnǗ8;3k9˝nX,4s㟻X'{uuZ+BrU|>WfZgJ+Uoˮswk~^.]&XLʗQ:*.u,N妉&`ݦ1G,s׹²-l<XT~~ZѰg8>S9]a*..p]"'h4] [Xp4>d_h8ضŃH}MP(D21$ۇ.4rhMDz\"^e eG7(eI|%~ K)Eؾ};P0$_bq&55۶,%HaHbp7.o:]0 w_H*sR1# #(@)r#aMZG((=Aޅhضym'agqA;N޴fǶm-г5>>uxu6 脽UtR#喕'Uc">!u0>C0ĶBH4 OΖ,~ WLd V)2Ѫ}wR2P+a4)hԻu 18/8Ds kbD"%rEiu b۶w 'BN$Ŋqbb7c^B5d%ghՒ:ROޘ I. 'J6b8۱i :%㝿! &6~k;n$FkaEs{sn!q(v|Xu $qA!XtlB$ZL|E9FaR 5"^SK }X%Q.cl+S+u!qYk6mZMYlĚmAJhFzq{fDAM>Q"F80`1ؖ-B D,M]! YD(cII6M2NDz~gD^*Bi))iӆ-ZJfYsaOM& l[M0{Rz;?bc rw s? wJ/1'e2;.l/aǗVqv|. :Wqp?TL-#~ѽ˼q vwoiJ,,T(&.v|qVt8^TNंm](e8;t3;p|;Qz-X_2/uDQ6\G2X1"0 18Ʊ @ EJHrD,C/@QQ V0@+ 8%1҂>lB陘M/5(*t)*q[8W^o#;vb$b>|1:ɤ$ō$~qoɽ?]`~M mEQI"j{F D"a,7@4RV!X4ܷn q@;bۉqbJK/׸ؖ[p/[&>qwF 2#5occ,2AK>QEu}S{F{$dcth&|hA3'Ji3%l`[l ٫pd]67iIq4ּ0%lݲ1a;elU1.HCXOq,,b&q qc`YXX6X.χm03ؑHϸKp#%Dca0Hò\0Q\‡k/d[~V q}~"31֤-l*(d0yx_bbD-(QZHe,a\#P Ύ, JRĦcjbQ~ޒWB D)pbڴs!i8ml }[.;h IDAT9[6af-7B8bHN!-)(aB T˦va1&0iA%8W? w!;%/'F$jSLbӼEg63/$pdǹ&d\`YN8uGVO0-DfF)$SRqB<S7c?` hסے~J($vѶM,RSKHIJ2`Z2S҄m9MV cÎ;J/-ޑMê#~hر/z)v\dZ1^cY>v|b\ X瑘WeǗk8]/]3>ayu314v3.wXr2.l7*܊.+O|YveVˎb\_|V'hpMu(6U JeXewG{{& Lc;@/2]ً}QH2.E$!dٲ,;4{?wwP(SR *@5A c#1g@AYA 0+T*JB )eJʌ&=n}ν5JrM{{}{5-MaiZ 6@pM #7|zUU]yA Ȳ,9% jB Og1rV 1e\ Y EΣȻZ)Pڑk38 0T=++&2F%mՆBRx2up%EHmW,MZTN2Ke 'ޞU? Z' 4'dLPjٮ|:ӳ Q?oӠVYsǬ? 3FVF ʽ *4j&;{wY'A !o8^3zBAL0<,f2Y7Mд-^|hj;APZ]w#tЕB" 0AB'ZŢB&0VC1 :*#%]CgJ 4P"XVbJyx;NU 6U3ckJ E)q(a[](+%eS?Y*^ G9:Ts0%M*0AdfvqTZ>y!U;x6P"&d,W'P)Dՠ 0Cj {Q]nW'{xhS 2[ bN;'Pau;Í1whh#im.K=8 |2wSܪPcZp^otp˻Q|=븗L$Xy5@BsYu¿Hg&noBDՅſTO҆ƴݫ%E|GB QXXE9R&FG4݄JEg4jEr(<5y3)!@݃Rd V(Ca,g1VaL}A#ED(m!kD36c0 3m\)ҽo&w\d(0[2t4Lacv I$j){NAi"r uPMCuש\"v|EdS^xDce=YC^ufl>U-j ƾ+` |uٯMn-ޔ#Ǭ;߀{S T7[C<0"hcF L8NQŊZbšUEa:R v!EQPust#1Rgd%*vpHTvLƘx v =VnֺKX9EjQ$QLMM4e_a4 |S|%ĀB*(%;mxF Alddt2pSWue Uos]FxYs4<=_ւo"Y>D)qjB;ݣ#~n, ~F]v/yub%5'JfqE'ʑWw-|H#"xT@ |F#0$G}ZRdžT1`͐]090F3i5Nr!3ÝB㜻 9ZYN(J娰ALVZbt(5{@" 8J(͐rpy-Gsen9D %`r=!M9MH yN04R@c&!WNjۅ4_WL6OiBdv _r=CUݟlΟ-oO>#Ώo~#ߤ>͍DXr.)"Ӻ%u]Sgĺ%=,VOϿ+8<՚ K%AA0o锽!Cn*2@k ALA:aZeevV!"'O2n0#CԖN{.7dA)Nj*E\&&&2 %/f?營xjP3㽰,OQjE2o7nh8qZamXlQr|K0*9s#.ш,2.w'4rT>,T8v&}yS]]C+Ą ϋ8ƔR]rrs6tkd **FuU0::7\G4-[({tI͹xl lKrhb] Nۏ݋ ϲmNu܏ζZW"umO7% .:kK\3..3*[Dė|m1 uIҒ2!-4uD֕ R<$UUUXk Yl6!(̈́eVl2CSQ*( ^X6s肞& 4B.-J(>b4N#N uPDDi PM`hrrqjRJq]m:Ŝ[Kp MW dIۊpNu:<۩^"|5m{xQǾ߾϶1`h[ь~ U42 vB9m2_ΈN|Mi<`1vHķJ{B\kY"&򜶙%u{]2h@f(Xj:T ll<,4!֌z]N9>>>ObXFy,PK +Լr (]mK ;k9 msS)& FhU&ڊ,+G' N*MBND6жdȚ-vyS03GqLvdYL5BƝX?9^Fò>f ൃ}&{,Ocx%pdep0egRn Նmrrvt"/ZGT<7J\.̖ 9YчSڕ%A  -" Z3yeMC mh]6 c.\M#$ j<_~[7bY9bӏ,p034E Kz=[oP|\9Fcˢ1cAFfd&ÈɱJEyMEd oL5n澾'm lgFE.S5}sn5=|Dt %X<<ug=ʲF`{l t]C'EX߿has|=YoF>֧]˖e"y~2Qd/=՗%ߢX2zz4N!a;ZI>LKR8AƤֹZRҫDwZbKm``2.HLH ?9@ԫ4%{|oWG,t{#vNF(com"' ácT rļq4H0vcl[LIVv26S)}+VZaG&[f(OQfgUw,pӰDTeZYLg{h5DT!hAiI!5ֱj[\;`eZ6||xpb1:qSdXcPd FK`j8hrɆZ mcPteT $o6oƷ~O'/>?qvɛ|pKfkVTbX' uJ)>x.?>\9V-:Q| }K$)\yA$A_sӻx6*3gDl69I}3u/M08%(DRBU+VCbh#9g6c:!N[I3*ORoQN,ƴT͐F)d%O!`vBCw]U 7&7Ϙ+RSȌ`h2TPhIP`TjB@@MK$DnZ'g,D; Ru[k.㭷~~ܹwwo|G ù1C-E~J.{ g:zPː]*Xi}#yF*\8Yu߶DP@[ g[ܽk-4~Ր!_:*Dj2'K<X&~_1Q{Wᶓ;}!le} :roPd]nq6a֘u&bMRxȆ!*UV"J6Fjs,T r+^H1mH^o:_ ci:OP 23:H ߟ/bkbw!y\0Kשyn}nA̮{?%dR  Ȼ=BR6:'`1h >=qiA$P@{ IDATp2ڽ~C[!5CPڑfl5kpYI.T `Mdo0Ɛ@f1M9C1XX37 \۠}$(*4NC bwC}fu) "&X\*V..ox̼VƽX;hui r0AyKBٔU5//8hb@f v6[uZT1aPq7x=& %~,c-[[z~Ԑ0>bqsc>JcC_JċK DFQϻ8H$59!&0wϻ f%\581Rxr)ܾ-kGC YJK F$WHi8`9op:\6K|Aנ&E lKg0?j*8h ꬦl7UYI䧑M,K|pEN8**!/KyDm'l;qٮm1cDe8%;8$­Ayk̾& -:`FfOկɿu~>Y>7oP2c~cjX Vw_p8"ayr6gU-qMN}( d!'$%,"i+b8ȋ1ܽ5^{u;&0f@f "ghg­{oU`>V-2;; 9?m(II=ңJk6F_)5K=ӌcd??dO6d Nj* @CMe3*)4OM0FE53i*R6&9^wQhGzp9m㘶z6ېA`$(aU!"V3 uw7>Z=|1T1DU .!)}'{~#I8>3T|7wY?OEJscWQ(ج*]@T2 ƾt>)J_lw)$:Cq?׼ :+yC:"lZJXu۝tL/U4(uҾJעk&Oo ߓEm2*Oznm|WJII~WUfzs|6~nלDcRIWw~HQjeӁju6՟DmZ'5BǻWXuMQ댚u0m4!TIF,Z` (Îbmz ,}s(lj!Sq^%\`Gpb3ptr - [Zc,;р>{BH+Q}[JmW r5.oM|{w"Ͽq}Іzv<.)q1 ErQ<]-rΓG,!oxn}|L 0x|rF:LI=9G-u{Ƣz:;eXgV %fEGV0p=0kv8_=n(c)sGF ,9F+nݽd}}US4uC3_PO~F}SF' }8b6](XEOЂ@:LԆ׹sMYNBM_١ j?S\NQˇGLQ :ψ1A5D.;<qUOd՘Vh3Z8i-C P1B D?͉ӳ';?`^tYp]Rt>>+07 d<=]fq޲L5gG,+5L@B~s&ZB߸[UDbg N㲁]&zKk#Ĩ1\GW2S"wDkAPݮ95duWl)1LDHEZEP$D ޙ՛V!&#Kc}_bkH_@|2=_cן Iٔ=3.cZ9@۽EQ}t3ҞDXJey"y4k/u] {¶!kxUSdDgĪe|)xl7g0)0~rֈfUڐ=yQH=-, V3ECt|>gg^|߬ [L+QIЊz4(,9,N-OJFBvKPpX}q]oZm ؆RG[A ;K=5R5&v j uED&$6Ag+Iғ T`b·/ ȅĞd{|uߣn.{e>t1@PTj!{1v/| J1DAhTͰay*b:z`1s$q$LP6YlԄJQH#DoQ6!KA06fKɻ"&)t0JcF ЮaVIZk^aRXd5Fh,šDR:ÙU"j)$#%(rX70vU _X aURd-4%"M6 VPe#  !P*50CLiknՆtGVO7 B :1,KXDY`ʰZD`4c]%0VtzSpp{csb\Ѷcӊ6DfTӧޮ&mw-?9yBIpߡ4oP^RsNUH2oFwM=B`;OAu.uUu}Jttsw7G쥀3r II9lv"[o:w˕g+_ VAw\o`%A@DkM os}''ED7@ 6o ܥhV ;4gRvVNwY hR .5fRJBÕkP2bو"mTX#yr t%"uˆc -vFXdV1Ք3˴&TdmRa\D uzmh/—}w9N}ucA G'SZpx7}}.aP1;Ւ)E5_oJ9.=ZEwLgFpmG\ F1z|Z,HII.g_SM$k-R4"}M}6G;N&+pr~vjZb\1P-欖ާ8=IR5C[bIƁ&f'uIPZdpD7n Sr| (RswRki 5U1+PEZ85P@H"EhӴV^%TfIvDZDQ>:wg򂯋M~+jw>8:k}k ^EF.lvtm!ft S_-~-x@(e xJ9)m\1:H#kHj%K$ *IkhD%1 IuBĬELdlW8Ce)$K(4p[mWtfy9]qt v'ѣ{.5C"64):^ u: ^c ޘD!RYjfM ^>!}dx1\b F-Wfhѩc4qI } &2,\C[(JJe(0yGdDcrX5PMZSJfQ.J0 ` h0jU7.9ށ%oDTW:_rD2&l/ӹ:՞)o{6iNOįw{X[﷦t;7{$MRbD%K 8-NF !;p`@#ЃŇ_x>^3%d~YR)$ XuƃC:6ۜ!bķy Y-i=݂s8vܺ ٿǝw1dAć'3aoa_an8qttHM3k_dx-IcSEG]C䂽NY0͔݊YQf3ѣ@Uq~|J 5Bx4Y.?uO,ѓRd2{d33TH7 PAH>cU!zbxDB)%: NtE_U.tߛsw@D?KX8=L.nҙd5@JI$Iy|Wb^) YWZ[9}qzELJS$e8VܸY{ƝbcJ:cz6W̃7^Cna9} &Z8}#q3 g.RV#؜yIEF,y F⽧J##`bPs@!%@W3m;x->-ɷZ+H)\aTj1.@5."ѣoSO!I0}#'y+-1]lZvLן+oa]eT"߹%7|m#|/Dg7g57Lf\o%Iˮ+Nnr+U(UmA%P8٨Od`_}ۚDoZc2}%E.[jSG2>9Y*^|cuE#Sߖq-F`x*np(׵m+_KUmύOi ٔ2$%3!Z7'rIH(!]߆PXKb!1d&*( ^vW߃|Κxa2xL !rOf4tchZ֙k +UQX= ,\."ʚ„ZUG, ]Qrl' bNJ@O31Fbtf.:ڸV_:]K\y|M I[A? Zg.:ҏ+'Wu_G% -Jq+Q"bg:;%"y7{ϲ3)!U"ӝha@ xA!ѓZArv M"Dϐ!xtJH. NfyW@ ˊBk 1{|P1z{/G0kJG"ecO,pJ Xs#Fb IDAT %JHhR>$%c"`r$( 43 vՁ?c{˗y+3%%фsܻ˭{@یsz|ċM[RYCr"^j 9||s,ﮈJqm-1# ps0m \WuHnDj`e@ex t\3#-q:9<1愋 ǥew/2N׬}e`q#H !Ew%=< ya[+euaZ'bJ^I/Q}l:L$@xhIpaLE[ nU ǿ)բMR+%!,䭾SF2*Li Zi$F$# ֪_G^Ea)z,FDSShb_a۳Kk\ 9$AG PXiy7( !#=sj؛XmN('5(udJIY(݌颢m~=ô"ÛI*@:aqFhc$"0 *2zS,3yB Rh2+2)=$݄brir>;'$ s)kLiqtgU#2Zjv* ɢDn9vLD"*h`z8!!YDv]yAq,?[{C&t͖7Pa}8>~W?Ci[$OcJPZ`:K`ґN{s%$d4eZi"Iݘ trn@r-zs/'||㕷O% ND3<ܧ3ORMry[ܹ{△t ([YD]к[P1a"* #j1}п}c{%9=O!~ K9 qp!@)/LR;Ū(ļ,5R/Y2w WHW` WR!s٭&&a\\Xtx;iBXU*-bQfsKG"_I8Dط IbALQܦAd#]"eD v&I+JץcYAݷ0wW=f6+6u.R" =Rx$E_J!X7R gQ$𽚭eQ"RJe#MRVtVČip$A1*JkJvE@e` UTs'R] -uHsT O)B;.LA JHRH)WQ,JM80-ǵѩ!%1:(1 8)CKIշV52RX9 ӵ9s*uЮ40 dUZT;M7 20(ذ!~ٻe?bowRJ|U`Fn̔87헙v:cZ *yti#٧!e9d0|#?DngXk1ØJn1=Np<ZcLisNys'3гOg&Jy ~wʍSK][ڷG,{ceZAuQ"h@{:G(w%@ai6H dq3==~oT@]׌|'(=1vǸ8Nǖ锻;PDȗ< O,*fAz/¹4,6-ynl ^n~S,3+*S[bWCXu&0@OTW QmۿQ}-RM}AIrM.Ճk !=1V0|l62KVNARtdJNnOGw!)sT%HZADƋ` `{p#KpuD> (C"Qb >Ke؟8ЏAZI%@!wcjk@r6d͎Ǻm2$PX.Bl"uܳd(r<D6  h3tD@yyO>P- W!,甕@=]θ*,S(P`WZI kxWKum&L+҅&B4>R@L BLh-ejR,tUZOګY;A^R9N@]`4VQ&sWѐg Mh%6%fXҶ-RYTѳ "k|weӟ>)fKUvS/,mgXP,zP#l5BQ݈g-» 3dJhy jR I_2޻Ɂ8DG?G Zp{wĜ7/ 1 )͐UC-T@FK ړuc#yp>4ՖARjok6$L`NܪƎ$K| vw+tYskJ# fv#LQi<<4f/% WԳ`#tE# l )ib0]63J y9o&XMSJ b" Yv$)vv l}aZ"R_r,WY@,٪2&!ke>)߃2H+_32Xs|/AԶ:ڋx uyH۳VEX9ԗ\q\AmY/gv_Yf]'Y)/*[k+bulS#=%ƤrQxτx,k1ZZepfu%leDV|X\q, "xmY sԾVU D:+w Ia t(R VDkW؊0F"@b+9e׋YsDmBdĥT U/dM"s]4 N,Z(́;EZkD_sz\~;^ha ]>ǩmq$Ld"SH4T<<@T"ixlls]doN?D3,wx`+R9Jdo &IўY!"QD *ہ,f1CR+-ܽ{obm쨎FqK5кft9錣G ӔZ Hg=1xQSUξEh tXw=ڲBάّF-]0";'J'HM1an! btx0yR@OIѰG.EE8J(YG #j3A-%3$ i Me 0Ųek3^B֟7+.JfԽd=*8(+~`n9}Iѭ~/J`i*j 51ŭ{OJLR _>:!cDV(ː1I|ERx$`̮Cz$%IV'R߭!eO^p$“sY)@lyD=-=Rt> ']>ѯxUp%#e>;ޅkؿl Dt@ DϚ5+l op& +#H=7EAYK]z2-۲BlAoDf k/t$  !EY0 x"Xf*zLr~/ aQ=tH[҅R|ẊLwF{ʤH>nB,Kz|9JQn_4mMo)L)U(Hj5R,% 7a:N0ejHtt2!"2D\9sb4ΑԌ ôTUɽ;KlL; ieXIhvȃӆ2Q܈ccKZy:|_XNo|QcT ƦevUf6a-AJ%I(/rZbkNbC:kW意m}>/(%F4F#;Cgc]^~tFz4 &WId /;rFrE$[-D2T,+tE&@z1m>}[FA3dv٢]4YV04 2k@Ҕ$;'k-BR(RQTˀ/iԑy:HZPvحGsR)x%STfRZl )=CoGe9v1%֝:DAAF389)N=䵗9yȾ4LwMuI$ƕ>J-hYr`-D M /|<|f>a]GU U$ *(T1K4)5cR89㹥@(1J҄t\xzOL;v1Q`MLgml ll8ڑU`!QSw)IHԾ'FH]d51Yj 65K[A"IpK ѤpiCJ[˗-==`?֫V (3nn&@}Y}'(z57a6U)CRT"у R ɶe@Lj}q?"'CңL-u# ؚgȎqI[n2"_ zZY} .Q.̗t)k\>Ed=v+\cD$"7D s?{mbZ hJ%"Q%@ltu*|{;E,xpP*RDIP;H,8Q{M$)BHPcV` Or%Rxf(%|Q[Mknܒ=b3ϔX=^r|<;)v?ydRFcTxE(ҵ+-@ IW*,8B HtJTƠRc I/THD>d1NgwsV/-kQ5N^if &z~+[nmHB^r+} JA:ՠ{1Ft0% dI2+@`fRʘBy8&]cFp9:K󌤈[f5xʸNի_%o.3q3V5˭g| [ !jSJD)YVUVxqU@drs{Oy:ce("m$eumKU&H e@^U3I u6J`eY"CzJEPVKiu+,)*Fva HTbj81 AYΙ W=m)Zk154_~6d4 :SYݹ[kHc4E -zkҁ ̈g'ƞε,C]q]zHHZrv9=T hH>`дZ 1*W8WDf*wǼ ]DE˿C.3|KMmǾ*9/ nx ˀ*hR :(!< VwdG)Sn׊rr~A{2H.x uTܪ??wi Cxaƒ͏F 3n ,I&ŚB˃~?Y`.:o)Zǩs@A*J 4洛pEkLL7eEL`HΒ5B@p#TIs®ZkWMFy0lHc^lY C,1Ş6k.l'͟x+U7 /R+Qk[x6ǯKH/ J/r`nCe˄C.q%W}iωHb[c IDAT^h@֓/U&G a)^WjYiWyRJ^F, ޛvUAѺZ)k(V/T)%\5Y2:,'tlQrUTU* 8KW׫6eKҖՑ<˶1Mv9CBaqh ϴ3"0)kN&G02(V,aEQ;#^;~:Hc!ruhI襡hJc7Pkb̚.~ٯj~9ţim }d: O߾ãE˿3@-rFG~r2{h.8:IL3ׁYp49Ɠ3oĈ.!z`TrQ#>:<gs;Ve&;xrp3bF6x;$Ʉbr}AKaT~Iݱ"b&݂2R$d( -ˌvѹMqNJR(tdžl1B\76jP+考7Fdat$Efδt^ R$@Āz>%xb96@EERpT!<9ށ[@Gɭ'GLEi_gǞko;y+GDr' KX7f7#NDX 靔:ЄȳϷy~vn 24kg&=UUr`OyEū/;!bgܮVϲ"ռ '?t?yQG-Ǹ"o|Nя(^3nL`>?ʰ+]/70"?ۅߵhBh) hڛu Sۋq9Py'y~؏kq>.-K!mcZo$}{2,W>J4V!#kٖ.uCwˀr b1ÇcTp}Dy\'FI=@4O-Nj1m,b%=< ՃXS=y性щih҈(6-U!q. >Y:BGCH /7B ǯ[BØR5h.Hp$1Txآ.wS˶ut}S/C/zN{Ǽ-1q:h]R@5xȧ^ᵓ{&vqU?U-" %_S9;{w[|(uP%&d<]ܹ`$1#OEaz)|᷿^e FN&f`|龍QYrux"bt)DU#LJO9tnHaPmL#mX.CE+O2J͜W8<|uPb3mpqXrbw*i ~t<8_q>O*(A(`4gn#$O)`!RY)$1:!bʨҤrȞw$AJ_q.OWƲ?$_g7~߭7晀".?Q0ՋeS*Wov|uV/.)"~'<9O|և UD%0-h i Ha`;ƦPzj%o?[mƍE=by6-2 WLZkHx:*B]k{8`#b}'qa>Ц_G6-o#]b}di TJ'yE[!9te.F. E9+0)>-3ghp!o3J2S*Ct(V,\R2h}}ņddTmD } ws'wigy+_E;_~Eߏ*cnۺ\2}_%C~M?_/瘲i9F%14|K @kb {!]u֩Hɀ9Z(Ng-g]NqBЙU 3ŗHŨgX|97n>@H Q0@J-Ɣ=@Hx:co%Ji Hcz|%(]*}WO`#8;*;S?~1TD~zC`bEyn{QyCtA Gwo1Nrq{{~Oޛ~}[9y,wՕ%Y%Y`S `6$dʐIHR:ivʔaBiKI mmɰ',aqblYKwg-߭|ϳܫZ2Nǐ3p.)X &)\Z\T6e G'SɾkD#gĬ𘹏uygp {Mbljc'6;||?znv*T}"AD-Ƌ]252澓/Š<ݖ\T`XaL89pZTݍ)e(`jDO,$OO{F;4gg{" );t {1$TzL:)D˭xU{E捱w!ueV0MlM2 B`e8y6cL3h'OsaEwBTTN_OwKkT$E.xʥkWpx>;mw_O"Oь) k{YDS" J3<3zLpE5 ,B'VZn]ož],ZXYpO d.E6B :)`5ZC0UH+ w ރ<6ѠJ9+r{ NDr{i^_z M>wt`lTg vk2'Q@zKUH+heC'o@Ӊ俪 {~e=Ȥȷ#;ՇLŒ! }H؇ksՏDDsz f^~H E#4nuyw88^󞡡:?-DJv3˻n;Kl3`薫 '#\LT.)=S5˄[r7tF㊏{qNa^FC! O?Ão]VKgXR:>SӸf7L$SiEM&J̌!BHo,(FQW-HM#ۃ vc;Zq螖Gmgz4X( DHKׇUVjGp`]h b+ 6@=Ew4 8 5vJt%x򼤑t|>GOy'p$a)";~#qb:UU#}G|5`( RxX< {W Bv:D.ϡ"j/s!]B_JpC*B7s?^;"DJ"U5EKEB`6m㾻cLȱN]CPQ&JE 6jV Qٴ!m!8whZ&V3P<ݔwMyc<'B"ENJr>Byl뽇V5T CQ]C]yBlXJFj^*/ַNrWu. 

Oޚ2*:Zpi ΟڳlcoMv^̔d^?NPLf.v=5PoccZf"3Ƭ"|,8N'BqiH4m;z֊=( E1#VDK,59*)jRǞhD#RQ#"YJk&o־GoGGNlQM~i H IDATDO$Qs3a`osO\e<1}kF *aй}ن? JV @p{FO85x{N#~l6fs$k8L/4t磲S'Os˻CSa@f8>-f9G|x$SkTo&:RWq'(-Ëla3!tn2/y#)Xbr0u CSzC~ Ow fԀD[kg >XF{{ &HMױ6#G_?νE,>q}xˋ0[chו?0K2*YC׍UV<x aa(#1Th/0\Y]9|zx=U'1l6b!CƤ4x$Ŋ.%p>`E-A[):ܔLk&Rƅb!++xRRR=QW]AuE1ugꨥKgLEfE$Q@0p|nՎ_EO%fJٱ-Q&'>#E1cݗz&`?qÐh"ׂfQYU,(K7<Ottz4ڞ K( A UB\:}QQOp:fłr lmseaSWhCl()1,Y?6- l(fՋI32>su >[|w,lַv{ع/74WuS|CuH1VD^C=I|/J9|YE!BO:}ƿf#&&HMM%99Ӊb)Gp\]5ޠsyvrbv|-͘L|aǗeN_oe2=dD4?o膁$As+df,9Kb9P[Nn|0+:ZKj5(0졏#L<;p^cP ̴TWﭽy"Dp0 "**jU5*szɌEVH9OH9XWqۧƯ9˴T+V;pKuT5W p.%%IAJHeXLOL,ɃŶwKo 7.j Rwu*o( (bRlWwdN&=ho?3lӕwp딙7YERhhC5MwKPc|m䕧7fVR.ڮvδ6y)W!B4Jd#8 2JUgjew4>u6uN9, %-o羉IQ|WҜe,˘˅{8\?LkO|&ͿXm|xh}*q=y5Gw+XqfIY6,En<dQF3N'>z,e~pͧ*(beֳ;mxYA@XeX,n˝͓gWgmB^UV3YIîDjC1Ҟ]#L qV;qnwZ#0BBp1^Vn#=wOO~B >U;8=}-ŧW)<d'Nf, 9~I=o-Ŋd歓(HTgpMa$آݏ9ȏO-/qk}!u4;~WG!B#W9{ Aom,8TW=[M1آ)1(DCwgnev>}h~1SYu] þC>;sѠ]UgX{9U*X7\D<#%/Nw/ "Dpp1J'1q+9p?hUo.#Uu0__Ii@J>j]nibayY_r g/mMo,+?e}1ңc)f^=.Sx kX{ EM5,͘,ZʴT&D[l( `J\[On1N6qE9Ơ&bV0z]^/%}RIEd3}>S'=Pz>$Q ˛z-"cΥoʍ0Th: $Ibl6"D!]>p {# NhϥӁYVY:nœq3wM#A*BB)!B.&Wm{|Rp 1 x|ŪspNuh( h -`}%~"D!U5B\XOX\t;B"D\1D9Sy"dEGGG/OO$Ok\C{G{sl)?Mi[qkE16 z<] G}ǩgܹݻm۶*iiiUl*;IQS-_ufyδ6}8#/Y6cwU)/oD{4!_tϰ75|!ߗJg&2H . *+ *VQ\;+_V]UDY U@BAZH$DBBBB ɤL2;If&3`$gNyO԰^R r)V7!bEYMCkc>43}ڑ\ ,݋sglzFg-kiF-mRLbPh$iy|k=%E=|.dֶXsU:SlE'5UUX S)_~`Ph$ Yu¸(YiTh( FF^ǎd2  Bԭ+oCTw~RJŤ*)4]ye(\\jɝ|dUby]i׵gO;4{SUUE< %4 v>w9i!h*)+:-A|6!c{qeU}://F2FGݝ{Ψۗ?cDztRxט6m۷o'11Ѫ-ȿln瑘q2:3c{cHbntҋ1k=%R[ٓJ^##{_vl;Th |6!DvjXMTV{sڑ60w/s\SydU/&Kv" pS86$O775G3 $̢1[ |1`o?y0S*Wt'(fr0 C"ޝghP@cUn_@P=jWWb;3KoFFbcqc?$`VZC"P\{ ۅUǦJaC8b&-iz=t@h@(Atiۅn&``lK[m(2Ж]gSwd7û̲>~|h r2z#[R)Μ`]|wh'n&c;N)ДbxSN/3^CD^-ݪgҋL}PdvUvС+V >>իWjkA۶mz-[imv j?ɼ#ǯY|>qkw0]˗m92w]ʵUЙ۝ݣYto7nr_Y _CNkpuqJQ@tAt)][w 2kS=!;;3f0~xƍǬY`zf6SO=e5{\[XKmu^t Gs28u<=tVZ]\.(݇`Kۘb_7UKd.%.il~:;8V*ڗ=駍~. ՍgbGQTawrsDB|qUs50";Iů[P0'˗^=s9b 0`z+[k2Әf.LC5 WWW~Vq$^ < IDAT>>zcC6 lNMEwӷ}()/Sp' WuѦSUbFס3;Ғ# EC;u!9?$?aPH$s_*3Q噘lJ5d)!Q d~WBCC1b'уݻwSYY=P[v İc***iڳd@pv? *Z:!Li ~;ZP)](1WJ3;g[]jؓqaݯ(eZ[s1m`>ܩAaV^m;jAF66np ;+Cv]e}J<*u?s⒦0 rKKXpBN]̡BxB|tuăWTo=t X_5&TDc{)֥s"/Ć3.*uZvWێޥ7Sڹ C:uͭ+P)Thu|72g /Fdrt7ixKiGj* ߟR;"ٷu7CH8'yjzsV'(Njoϡ|<<<7oYYY;Ŭ[FðaØ3gDFF2l0o9qO̙3DGGT{{޽Q\\L^^6m̛7'OҵkW D^^3g$%%-[йsgRRR,ѹsgc>AɔVVў$f7#J+ϓyԞAf&C'<{ 9lH9N`^t7T36N\\%s2>`oC-.d7%L%nwʢE^˕{pa>}j&f{t R r݋!==SXQfU&sΠ'S6?Bʻ7J̻`K(Vн{5mwbC z=zNN3* ]POS\Qzĭ@SF'f|/O8Rɸb1`5zp(Ɨ_c_Q]Jt o܆lN_sy(JJ%zwww\]]QTm-zN_Ʀ` ^@ [RTAꊛKmUU .5|NKYU%~ s/5zCRkҩuϴ2 PTTZ:i0j64k4ì_VuTt5Y gmMKmQ)ս^?7mjaKZ}X>m k 0lų$-ϯk?k`cqQ*kM]jkN]TLOf`HeUmߩQi,Rn* q1- ө5J=ʛ"ifi+ (j\.ZbmZZ˔JCEUmSדפB~Gز)APؕZFvlT'[ 6S2F]aIVyڰYZYa֯mKYɖW^#xqoy4s21`ڰ1-mIٍ[:2kiM%4ͅmgN1)ǍA\#tSu `ۦ퓩1SmLkL>-=}P(S R#pKL#ZR*]Gͷ4MWc&54M2:( 83ak4~?H;?Bo0Pb0+-1{D2֗ZQ=+.A}0^|G7؂%|l))bAZ )]#8"h K#:nx\iCd@[n50WΊܞv ^Tv(,kOBi14e+uZvWZ@~e%dz;=eXi P{AWKj"r2rYJaaݸXvx`t l ( Ηq[uJhZ_ ?8]]KL[MfQ4eڡ1mn>+4pTAրS(lAS),)ºs8,eUhum(Д=jQ)TLZ=B `zK{d7EhJyIBnon]AbnEyygʪ*H[~bͩ#TtLݺ-5E0~JBEP02:v%Y\@_]eJ7QTc*wJҋ9AVɥzuXE͞&5WcM  )ASmiRRPRQκcUn_@P=jWWb;3KoFFbcq(?g6&_!ۏv^> ʕ!,w2!]ݣAfQŸuTfa`Hûl2m*W(*c ?$`Vq%*WCv!f܈#ho~Hs8z(6nSO=EVVVÁ;vZϿet̟?Gy+VX Lu8RG;wdʔ)?~WXt)= kڲvVBi1J޾ѳm3s=tm<)VYL/:el#Ixp"qubf*OsC箴͝'2N;a1H=#xt7)ߋ/2yd-ZDJJ |YG*WKGBBB=qժUW_1dᜩGh  &ʲAZlj,W]K  o}梢[P0'˗^vpؐ\zJĎ iVmָ!>*]ȹ\dޝ$6$20`z+[kgys#M=} ^+°a?C=ħ~VO?]Ӽ{{̞=˗/_9Chh(j%x7iػkWz JYyjK ؎n}ٗʋ/҅gcGPRQηvPRQFpSX7l9_ϜalO;EJ9I6zh\Tf.dq2RІr qi' LJ( 0CZ;E`DD~N>Fk{hZ_oxr/*u0= *WߵۻmU-gk S1ܔ3<|0iiiw}F?Bĉ0a'O&11e˖KRRk 8~m۶Mii)SNܹVKǎyj;sLy:t(fҥKK$%%yftL<`Ү]; x͖k۶m$&&ʹiӈ`0pBʢK.L8Yfĉ߿?_|K[-GM9x K,'ܹs,["y-h)={l2Ə9r$Ǐ%ۉ'HIIa߿ߘ7TOs6V fΜ'Of k uoŋkm_Ȕ-[rJbcc^{^zgŤRQQoɪU,Oppp{Ycl %H4ŖnlUJ%VVT]j6wQ)#Óɱ7<yu( x;n 'Ic?6$L{?˯LZJadzZw lǺ/8Tƺ˧< .J% L(k(jɧnLKjBNpss` 55o c=ڵkYp!ٳ|G,[ FäIHNNcΜ9(J}Qbccݻ1~;3={͘1cgŊxzz`>cyt:9 Z,W߾}yYlK.%::֯_ϪU(//[naҤI<{|||;v, #==ld=z4}=>>>Ve^M߿?,[pp0ǏO>4\ٔoqFt:ŰfJss}3==lm_nc :'|7믳vZ\7Gӓŋ3}tfϞm|}}QTfFl*%pjOb6|QBi9[xL*WdV .J?jܦh-/ӝΌ&Ѷm[)+6Gll,j@֮]7osۛZ{xxp뭷i&z=DFF}vbbb^np-yfJʪhС+V >>իWj1 2`v܉N۳m۶aK{dl(o???:w\+7{劈`׮]̟?ÇӮ];뤹i+{Mol;Jӭ( uSO1vX[F)@p\"u=mɤ_ӆA¢ctf{1>vfegϞ|TTTn?}4*]֋cZs ˉᩧرcyw 7nbTUU5ɢlf̘7nf26fVZ77p尵hzYo ɵdϟS%L 4'=S[C4F}ѯ_?~mx RRR,"))=zԓ9uV}8vЩٙ{2|p\\\@||(J.\@۶m0ڴRhh(yyyVa)ٳgYf %%% 08˳(A̦ºu(++[ntKv16l؀F_~F}Zh\[l!;;&L@xxٰ { Z]obs;7t/-qixkR%''n:._LYz5ϟѣ2P PRR¾}W_l];ddd0lذzi ]Ȣ]p(y'#~y¦Pq{w۾\95ʟ^G2lѾƵ6gMy5Tq)4TVfpEД رq]TUUQUUU+Fe]x1v[8@ee%eeeՊ[PPW=9z]m)GCa ZTgc4zDc2 Ƒ9??˰o>rrrlmPo:졡{/ qxs@Tܖ`fCqg3u8pCʅVX 2a--#ؑx 6J_WWz/ ZZ6~ d18V[( %OsXKPS-MHH !!I ufs+J ]3%Z]5b+.P5"z :y\={M-Arǥc|9g0AZ'5`|+M/ĵǥ6E|Au #M  MGCkz=( <|AAp > : J9ȯq;ĿrnIzFm;OkזCq>'jbkkص{/s/f!zkZ^zu*O?o">,a%n "#OyMw^E}s/a#&=:}ci׮-S_ Jndd${&77o,Z>{KAiH R<=q}w>i"H1IDAT6:qh2>|o v6fD!Dsh4'&RA!+t1Qڵk @xXgqssM j5r3o۶ a/Jg?Ggaaa8q{r!Z-zQ  kϝѧuL?<ڶ "94٣nV˂E߳-n'*,XOHb x{yq>'@FVZ䳙޽{;(,*NQQ1 cH(cL8zxӦM?*U$4 ۷c3OXMGP]AٳgyGy嗙2e oUEAZ+*A%-B.Qk}c` /sט;(*.F7p;ytx^ze*l}VzŲ`R4>mL:w)/qDͯv‹OO1I ]Dq-<_nlWmK.߫gΞMt˗mNU߼uE6k+V **{R)FA*`ŤG&Ժ,QZV+nnh4㌟+(Jjm:DYinn5S^^nL77Wj5lJ.-kxݤNEӑs?YLztΘ_1hu:iZ"vΜ=ˉdddr?d3O4?oo~ZsYڳ>{QPpio[GpÐAL{]}9zeܰa,^6oLEEǏo߾p#Gd̙Ǵߣ?-['O%z:2e}n<ę3gyJJJ8@gwK((/[~ԩN8s.+URQQIxXgnÏmd)Q~\jݼúlÍÙe}  8I.zIfɿs,~>>t:zE<$;sxt\ %%%Avm`NCP48 V3"Xت%'a 1Ӣ(+px70x^UU ;MhhG'1f(f,Mg9vL$Y*AAh>lQ,hPwkη_f Window 0 0 640 480 Web Element Selector http://webkit.org/ QFormLayout::ExpandingFieldsGrow &Element: elementLineEdit li a &Highlight QWebView QWidget

QtWebKit/QWebView
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/window.h0000644000000000000000000000454012273255454031726 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 WINDOW_H #define WINDOW_H #include #include //! [Window class definition] #include "ui_window.h" class Window : public QWidget, private Ui::Window { Q_OBJECT public: Window(QWidget *parent = 0); void setUrl(const QUrl &url); public slots: void on_elementLineEdit_returnPressed(); void on_highlightButton_clicked(); }; //! [Window class definition] #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/0000755000000000000000000000000012273255454027714 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/window.cpp0000644000000000000000000000604712273255454031736 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "window.h" //! [Window constructor] Window::Window(QWidget *parent) : QMainWindow(parent) { setupUi(this); } //! [Window constructor] //! [set URL] void Window::setUrl(const QUrl &url) { webView->setUrl(url); } //! [set URL] //! [begin document inspection] void Window::on_webView_loadFinished() { treeWidget->clear(); QWebFrame *frame = webView->page()->mainFrame(); QWebElement document = frame->documentElement(); examineChildElements(document, treeWidget->invisibleRootItem()); } //! [begin document inspection] //! [traverse document] void Window::examineChildElements(const QWebElement &parentElement, QTreeWidgetItem *parentItem) { QWebElement element = parentElement.firstChild(); while (!element.isNull()) { QTreeWidgetItem *item = new QTreeWidgetItem(); item->setText(0, element.tagName()); parentItem->addChild(item); examineChildElements(element, item); element = element.nextSibling(); } } //! [traverse document] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/main.cpp0000644000000000000000000000432412273255454031347 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ //! [main program] #include #include "window.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); Window window; window.show(); window.setUrl(QUrl("http://qt-project.org/")); return app.exec(); } //! [main program] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/0000755000000000000000000000000012247412261030451 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/src/0000755000000000000000000000000012273255454031250 5ustar rootroot././@LongLink0000000000000000000000000000015700000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/src/domtraversal.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/src/domtrav0000644000000000000000000001351212273255454032651 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/domtraversal \title DOM Traversal Example \brief Demonstrates how to traverse the DOM tree \ingroup webkit-widgetexamples \brief The DOM Traversal example shows how to use the QWebElement class to access the structure of a Web page. \image webkit-domtraversal.png The QWebElement class provides an API that can be used to examine the structure and content of a Web page via a Document Object Model (DOM) interface. It can be used for basic traversal of the document structure, to search for particular elements (see the \l{Simple Selector Example}), and to modify content in-place. This example uses a QWebView widget to display the Web page, and a dock widget holds the QTreeWidget that shows the document structure. These widgets are placed in an instance of the \c Window class, which we describe below. \section1 Window Class Definition The \c Window class is derived from QMainWindow and its user interface is created using \l{Qt Designer}. As a result, the class is also derived from the user interface class created by \l uic: \snippet webkitwidgets/domtraversal/window.h Window class definition Two important functions to note are the \c on_webView_loadFinished() slot and the \c examineChildElements() function. The former is automatically called when the QWebView widget finishes loading a page. See the \l{#Further Reading}{Further Reading} section for more information on this mechanism. The \c examineChildElements() function is used to traverse the document structure and add items to the QTreeWidget. \section1 Window Class Implementation In the \c Window class constructor, we call the \l{QWidget::}{setupUi()} function to set up the user interface described in the \c{window.ui} file: \snippet webkitwidgets/domtraversal/window.cpp Window constructor When the Web page is loaded, the \c on_webView_loadFinished() slot is called. Here, we clear the tree widget and begin inspection of the document by obtaining the document element from the page's main frame: \snippet webkitwidgets/domtraversal/window.cpp begin document inspection At this point, we call the \c examineChildElements() function to traverse the document, starting with the child elements of the document element for which we will create top level items in the tree widget. The \c examineChildElements() function accepts a parent element and a parent item. Starting with the first child element, which we obtain with the element's \l{QWebElement::}{firstChild()} function, we examine each child element of the parent item. For each valid (non-null) element, which we check by calling its \l{QWebElement::}{isNull()} function, we create a new QTreeWidgetItem instance with the element name and add it to the parent item. \snippet webkitwidgets/domtraversal/window.cpp traverse document We recursively examine the child elements for each element by calling \c examineChildElements() with the current child element and the newly-created item. To obtain the next element at the same level in the document, we call its \l{QWebElement::}{nextSibling()} function. This recursive approach to reading the document makes it easy to create a simple representation of the document structure in a tree widget. For completeness, we show the \c setUrl() function, which is provided to allow the document URL to be set from the example's \c main() function. \snippet webkitwidgets/domtraversal/window.cpp set URL \section1 Starting the Example We set up the application, create a \c Window instance, set its URL, and show it: \snippet webkitwidgets/domtraversal/main.cpp main program When the application's event loop is run, the Qt home page will load, and the tree widget will be updated to show the document structure. Navigating to another page will cause the tree widget to be updated to show the document structure of the new page. \section1 Further Reading The QWebElement documentation contains more information about DOM access for the QtWebKit classes. In this example, we take advantage of Qt's \l{Using a Designer UI File in Your Application#Automatic Connections}{auto-connection} feature to avoid explicitly connecting signals to slots. The user interface contains a QWebView widget called \c webView whose \l{QWebView::}{loadFinished()} signal is automatically connected to the \c on_webView_loadFinished() slot when we call \l{QWidget::}{setupUi()} in the \c Window constructor. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/images/0000755000000000000000000000000012273255454031726 5ustar rootroot././@LongLink0000000000000000000000000000017000000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/images/webkit-domtraversal.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/doc/images/webk0000644000000000000000000032541712273255454032615 0ustar rootrootPNG  IHDR"u%DsBIT|dtEXtSoftwaregnome-screenshot> IDATxw|TU߽ PBHSf[,kYlmweݵt{d-S24@A}O$3ssϽ3}4Fuб=Hqqy43ygc=<:wDFf&))TWWS^^-[ؽ{76,ѓh6=.c; ɈAg'PzKx笨2nM]7brMϛB!~V1M0U8ey)LCCìEUN2Z1k.7_CϏnl`҂GFvn֚R܆Z2b+D}Ŋ i%tMۋ۫aGdG{ex8P3SIΫMj<TS& * 5v~L_M!?f%"ih;,-+fB^a&WHN5=qdA컙j)d[tm|7?ԙa  !7YCLۇuZSiBM%6gwgꢭXCá0 ~?ijxZf'|K.h-Uvn 4 M,xeGRyC" VƆWQt&#u޷7nw b%5< Gb̴ ף NTLv|ߔSp%g?+>}>܂dCiqy z䓛@[YKg~趶r_O&#\ÕC T׾Znt`bY/xS:pٗplZS3tJjH|א38!n -gvEI!EY/=d}Sp1ǹsL9«9q`g:Lxw=[H^ϿB;VHЮo["="B!B^3:DžVS0:}EZ*y`NHs\4]3[i=uC^^.:yyz=hZ@ 81wBg1X1x硇+a} @ :at)r3aDw&:PU ǤrYhS]Þ݅CT̘Q-I-5n.e.h5Fv5:ؔeLMcҙ ''Bjq KBW+9ilT&=#yӏO[VGF_.U唖؍*aw_+L͟Y#=>|8eV,5[x ݫ62^m9^89d0ۧ`OM#;+T[ڒLfa~tn> j =6?U5pҲikbmJ)|ZpɏV:5^xuzǮNןLN"e1 Ӯ\#c#?#?#?x CiT0jܘFvw n8m4}5 2xw{לr,}J2 CM C׃ d~_8u`=]HNJ4ҿNrr2~?&㉉ZOP{EPk{XMgto y}eTO;esRO:wATi @5`d @!4ww3_֙"} K#ξmqt;2r澽 '#9dՠ8a\%snm `qHKR>:TsϡSv/zf*|"БN}u^".;q\ދ6il" ,.R+-U4܅B[If @tK 0yh.ї^F)Zeim]Ei0L"CEazĈc"uN =0BF'$tDOﺮG;8M9(-E.6%þyxNӞmƦe,ּ> sF'C5bđlxv\ҕtVYQjb <Ƶݏ>ZmhkjųaH;p$۰(lT3q'a1t8v ʠc&)X u*'.Kc:#*K`U #.24*v.'s˰?I9:H%Y5#Ϻm4A d-&~]˴;SN]•|B:uaؠ|$]pt=^8RIVucYxNGeҹ,-ְI +L|H2"BXD]ЃY;+8ox_[nHG^WTj78i\ 񸽘fpYEQ9"B7 x8z>T6I?a |PK.bQ)_Bړ1rF)_u HO&%vo`STPD K?[;mjUj 2 wD9J3SW.R*5:a1ڣST0zp0q-:N̹)Jl7^].x=.z(r{ zv0TZ1O&~YeA15>S]|ai{(Uk%l`jn;1];"XpY[e'2q\o 9k{Y6Ю#yB!j,UK/{!6WiV:j.q?;K)2o?]צҜ0v}Ň[O@YQnw9UL_Sfs.o~G7v`j|Ɛ hq)vA+"Ɯɜ 8;8;5P1?oڎX  !0kYfcAI r-I I$ם"%tJ`Ɖpm;shmIXV(&9م(X,j\"뵉jŚ0Npoe AcbȈˢ*9u|o˴bm #۽GJ-*IB^]|"7H;yqFbS|{ߵ<)zoxQWbVF@sDÏ=JT C}[ݜ4Y:@-t?wgkۣƮW?+a5kX|T3cBVq:$0XXMnOՂObXQ4y%4/,\JmN5t#DZq(YQL[ +26Y,UI*{NO n -[S\pT=Ff?-B_&tJ h<Ȝt[Cd^`j-pm^ U[BHr1`oGiY9ee$%GMŢi){H$nUQq)9P+9 Co jٵh%%R/,ĴY>6|ϐ%V[p}r~t̴aStocał(gwOT'.= ?|awY [iE-'^3 @ieծ5An҄lJ\O>Ci2G$ l>!Qe%@ru*ؽeKGwcXS,Yyi8vGֵ,YT.+CCMJ!x ((+7Nf'ɦi؃xhV"=4 e+KODtURm ;aW>cسiO1݊I &*6"Zfznyg1͆e,2 _Ш'|?ñjǖ$ޭiL4 IK<6˂enKTq 66)ۣ?WJZ:&+M!"p6@ejZ%>0BQ&w>*]8C #8a\ׂ{$%%Ep2vٻw錙n&~]7k ٽ{a`BdB!?@ X]p8he.RU*Cefcŷ\NuH2b~|^)))&t:Q4zTWPSSfE}F㤧L|LOMu vC=k !B!~:換ڬ-0t DUC4l66paT~-ЂsBB E`Y[m(J8T%~#qL@C hXTUj`0tݐ$D!B#EOV+PŊ劚4 UU01#“ף0,86[d`Vpn@={!B!ﬞ@p?f7!B!-kB!Bq,!B!8X44K!B!'=B!BFL-B!?)IDB!?;IDB!?;n_+%_|DNqAIi)U>PՃWcB!.kV.=躽c4Z.|~t]@UG.nvL^^At q 7um;-[QYɥS"33s֭ٻo62^|232~f !(v0_0^M.ID~3゚n]ЩsGJKKL%oFx]|1ǎd<,kѫgw;,zɟz=  Z5n8w#t؁0xŗ߲uO9+Wi7/{z;'(_9-D IDAT>EvmO` j5Փ!'1 MV+U` П_BTWW7Z!Ll?22қ4JuEI8P\\$++3&^Cªkj0 Ը~ fhK jFPD*+PU& qՅB_5+ҫ1Gggm49v5KUUrl!M>vy _k^XCm66-O$-i B!$%B!$"B!B,#B!s埧%B55lܷ 4Yw CA+'vΪմKӒLNr{R٤9tB_õiaC$Bq˷9֦d$۸phKڶp?(XY }9rhڃTG IPBCt(65DDqD<E}p`fxm3[?+WDfh6t{EzPB8e3+a"36B_'ōo?C߼ ILݦbfyHR=:0}{} mNK 9I$'͑MNR۟휅B_IFm9.؃_{B"Ɇ-p-QC1]"O*IHP<3Xe "aLZt%֒IjO#!?ff[!įpjӤgdf;"= :IIEmOS $Hdbz#l([X\I]p"'tGilӺʩ !4G?OɧgPB߀mO( C R1WfI&!&ftATrW JTU`{#P %ÑG%R{!ݞC~ZC4B!oaID$ B4ڽD% 9iP"5CQz0eD {R‡'IEt,&ń2_!BvV3%ӑGU(AiA#B!oA%"M Xrz4 Ӊja܎;h׮][@ 狼&B-޲_~9{K.^jsUWqUWaر#gtԉŋ3tPnW\AII 'N}1uTN<ă=e!uXE ֯P{0YG 1ucGQ'y181u^!B;bL0^z1i$t7ncС :3fpRPPa1q^~e&Ls=IDu'ի뮻(--e|>&N"}(^݊p@׳9&=F‡52{%JBb&ʛJjD_! EWzyl& ,'_v[7++3fpMB4I=taPnC"bprI*5LD:1 N6,gIa!B4zD%s:«i5{#kwS駟&33W_}38#+۷/;vd\x_~\ߏnoi !pFN, [$Z8Uw ߘ1ڂ1sO"B!%"3N>OrI'qD~JKKcLCҳgO,Y'|BMM ,`ҥx<Xp!&M^`ȑ8p">#Zl{GYY_=cB V60딉ݡ(̚^ƴ{?A3vo8IےYYY\O Ty4j7( ˯A}n^_wj2wk|QUjUl-[GAH7G!Dbi?ʇc''-;|pc=3f$ 7;VQ- 2P&w9.qy%u9ʆekab:gfD d8[PTy;? q\SnxOaM{/mR;ҽݕ[Zd[*OW>'PG!DDD!DPbG,_S/ז  =ާ~7qէaI7ƕuXm}$GfSL;?@hӑy"Q]ȵsΤfx~)k|M~&l|][xxۤl)[C^M:f~tG-W<ΰ6|"o-[˝ U0\C?<85yc~5Z !obApBIH2$$axOӤҭv?4Yy3Z۹pD+[xWyb$&&2/( =s;'l{ݕo&G{G~xւ]w8..}m.3sw|ULL^[ao[ߖ8^vWn=ir ^ |w>Ҹ@5|< w4x5ƀdUEKn|5ǣհxek:LӨmOt(84z+9"2D߀ȪYǵ/EDV Eqmxu{,wJեrN0.^̜́] tI䮝阕WG3G?OdJ!~,V9G`y^4M ~?0H\.kUUUE  ++BԣNB=0Q\jTA YvwПNvyYH#|_uaJYu6|%TKXS<|Vۛs4 duqp®Y}T{jWs+8呲2R*}eTKm_;g0KWS7_tϗL'EA ` Xs`97 { o75gz7 v{XUG<IBNt./~϶Υn&͑eUѷLH` ]4GOzzu0N>d^~e:t[o%\^$%%1}t 8Yz5wy'-_N.]X|9'N.m۶^Ϯ]XhwM6M oJF g?rSq{V }euZM̮ͬطm'8ǣZkRT-ekzo.r0r;CKC !Qȡě2e O=T$y79묳裏?pir)p)$,s饗F~裏83_n;v !^v*ƽ[9j?!F=).F-KS=U݁\75ʼy4i%.32ʣ%zujf< v};럍lr3.{749;gF׬/Y_7{氿f7['RI/Oˡş?=w7<Ϛaba!]+!-U#2iҤ^߯: 6kʔ)L2%湙3g2s̘>l>fS kZh}8\!fGUy,&I AUp˰6RT k3̠ [uVûネ/> SF ˯/gO Qr;|&uʴ'r]t%ero{vH9Up'yycߤ3Y3m&^Nת#;,N:~Ϸ EQ3kм1z6;%>2O}wG0Űq\VB[GD rVIhTUݤլآQ괟HK8:տA\˷s9i\7"Nr!͍˚4j_VyT֪Z5וV{i.QIפIr/NavLӠuJauqY[M k IDATb9IyM Ú{ :!~+e4Eߛ S 09Jju%nWmKIwd={;+6J0$UlK=n-i٫$aq!;3{6VmMiD9ڮBmUzDGիZVxGs'Gwԭ^*) I#eb:=׎f:˚uܻ*oh5lxwȊ݅l-r ]BqX}Db3ӕaNJ2 PEPHCٻ>ɾ&*} %kITS -EE7ikiii^)mZ*Rb]C$s?&s3LI2}'&ss1gΖVY]+ F^>C}&_׃؄A|N^:/͂r, 3GX7H!7F#"[Nk:SUނy-$UqFzɳ.+8d,*xZv46v\L?nR )f,Iٸ/eW۩qVD>Lp4}7k.`퉥\˼ĜVRߝNB^f@[NgDNNNa1 Cނ:s;;;[\]Q BՕհ[GF(&1YddH1!l]&~7(Рn, [ʛi_!UuDITT5j`|4lؐXtB^ؿa7mD֭ … j 0.]ETT!!!|׶̺c,ӕM?$Ꙭ^Z>fȋGeq{buŜ^֏uRi4vR B R#0sLxWhҤ ݺuSNx{{Tl~`BBBoo޼9{СCL:;wrMdZ{t[JHyݜ V$l+ŒY+:]l^=_]:O^5b 7t}EW!H*Snqܹs(׮]CQc1B uW&W5W o^)6no&jpFvst5L 󺆒q[1-2B!ĽfުYJz<ȬY`׮]w,BT&]%äWAԊ Fma5uAͺy알3y7Od' <&!""BXdP[DJz4i cig6|s7}F[U~(+o@QhWEǞMl(Vx!V^{+:"III[x{{ӳgObSJIta+ }A=?y7u' 4ZgyQ$g%W(wY1%o.cMk !0{{,hXƈJ'OuATVޡT q+4筢n7.>hX=S*~u-7{5& :nЮ|qb4_#Ϥ|N7QM,B!=f+RHDD̜9k׮~zoκuؾ}{a-[F||T0 ^YuFhj}M-?zR1~ ׅQbW$˸'eHDB +WH"##Ͷݛ޽{[644PmQQQرB0m)8VĤ)pLVY>="CHs&^E>خ#b ݲę8t,tlڦ6Cv !h6[а"!2&؍]e&=h¸呅2س-/vŞrEȮd/ 2y5 kIt1f"B sEDq0u2V:٧L1;'{V[{f Р5uYn9prYf tFx\Q%9쿼IReׅBQfUՅw)UFvLJ[xyGT.rzI6&~Iy-5 ;֦]u$=z!u6 +7kg8z)O%Bb)""(혌1]"=o]͉Iױ ^*FJp[uTu'}&qk -SZ֔#?NBlu!Bw!DYԅQW&/0 q}:LCka74яkŏؘlʾIR,V(i3iR!)sE$++Tb/;;[] V[xgggz WWWRSStԨQB)"nW bbhPÊ]uMco_0/861fލ,؍3iqfӖ5} JQbi+-2`]!(Ziٺu+xyybo̘1ԨQ)Sp  @.]"**k"""x牊}?СgBX)Y_-$fmoğ4ygbNڲe++V gpuuéBq4ol_1oWV6a OQv*]8Z<`U/dzof =1 wEEbgu ,8ͰS]ZA{p333Y|`AxwqC ѣb"~.0#/~2cNV!CB-<@1!XlACL++ϩR{K1a^ q˭1^\ڮ~r- `芵`dffvVϸIC4k׮SÞ;wf Oe.BؒM*"""(˕ʃ@t&]1 kzNce-=voB׆TsMmvɾbW8,IH8΂ aܤJ6h>>>jw-ksT^Q-[Ud8Suj5_6lD6inJJM<<>o///=#kʬϩ=5j$ wwwu(/[!*3 >QIYJjePX6ӆ{WkOW=&?W/fl nAaI=fwe%dڵ̙3Ν;{&CkN]?~u-8u*_zWdL:'CC9p 7v:|`>>LMIX_f>ny굫,wlRΚ%jV5ȯVhLk 0yk2i%ŸS!QA^!S-";vXHij Z |-[=z]{D7r *Ğ@W͗ɓ୷6&Βf͚gǎ  )Sx민ګ(Bfh`` o~K/ΥiذCQXxM6ӓ .`|<<ҳcxxxG=WZׯ?!!@n4h͛(Oq[ﯖQNPP[ ޝ>er[|ywߧ]v̜ɞ=q4nD[Ν6l8s~^W# ay%00_÷-ZӤI:}˾iF5͗.^+4m;;;z>%88f͚~s~~jj҅LF><ڷMk7ojkߞ7>w,tY,׻,eV='[yvHz t)†S$'S;SVb"a̙_Wƍc̙ߟ`{<(k=̬}N[lSٙ={rMvfÆt'''u[H@4hCJ>x6AAAE}Q)rYvϟ#0 sαmoT^C] Ύ'EUvm4M"t͛7oG#Bxvl j֬E53;;W_ċ/h5N),z*}OժU {\6Py,q7naCի7 -uqy֭[K:ux0}O?AC$6mִ X8^_(,A‹e늡УGO.]eM cpnÌ<;vl'4I7n̎QCE(t7h@=nUKY(.k9,x^|1XfU*"d@z=G"*C._LӦfߺu|z׭ K^y8wz nJ3k֭[0agϞŋTZU7f;v,#F`ر\~`XBBB8qIII4oޜKҢE ڷoϪU;w.]t ""'Nn:iBX烁fUTεTuy+J8##=lcHKO+f۴i/;o'55gϒcqe6m4x0˗-cE-s)/]ʆ9}47, K9:Ng֏3ewޙRV{ :z 6mFҢGGGܽ}jiԸ1]~E~KBBku/^ę3gpuuիԪ]:BiwyĒҦSղyf>Sz=?$$$ЬY3`1TZo˖xl>a1޽{Xfߟ>:~8h"??-[Ҵݛ:еkW_RSSt1vXZlI޽i۶-SNeԩL2???|||>}:SNYfߟS/SJZ-ΝcΝe X*3WV"=Ozh&rWՑ1u5*ָ~03Ueτ  # #FC>}ja{.{Ћ/ ~éD˳du;eԨ|W<9dv!4jժf3a+W^zL>cG:^ף0c]˖-[.nƍгceUnӆGvtF_[=U74>I/g׻edsbIiӹs|G8:Ys[aggOkxrt:fիVZuKmߚ=ڵkHN^{SԳWgS$$$201#m[׭Pƈ 6E/_ 5EO>?bsֈ#hw׬YCHH!!!fB3T8F*UqTs_MhZΎ.?l1OߟEUcvlڴoxt:>bc\w҈#ۯڵÃGb8[G-V <==>Yz=v7wCW|h ݳ]wߖnYFAAA(KPýҲe+WVZTnknʶmݢT[Ph IDAT]2*shѷˆRsu<7bfϬY3{eÆb,$>(3aDڵk^K%:t耧'%Cԭ[0T,}a+m9}c>ļڵkc?2k,"""صM-[`… ^}^!̈|^|Qݒsgϲ uҾC~fE1ҫW/.^HI pqqa\5׮^ۅ UF./غe -=%Zϝ?>(gϞ[ƍ(7nif)NINN oPvm5<^AsvdfDž=m|X,׻,eds?ja]>&&&10t^zc_&;;? f۷of$..-[~-|\]]]6C6,zY|||1sf.Mh||g<LƍQCkHA>{#FvyӘ?CʤjwlMcҼż_YmEYY}С,YX~i|IyZj'ADEEq![rrrHOOZjfqۗ`Fniժ:-۴iHLL.ZR8|`7eU6LZ/Pز3 D[b4r/O[zHIInݺVOY oFSSSRDqEEnݺw{Eytө( 7n$CZrr2TRyҳW2+sz+˫ CqtɊ"RV;wёXf͚UlXU)2(lܸW^yEN֭;wm}P4TwAuvw`pj vvvf;;;|}}tc;"i(nw:5 ի( [^:իW/1ҔYy;Y^PLjFLL ۶m7DSO=ٳIOOg֬Y8p+WǤI4iǏȑ#j\-|ٳSȶmpqqq1tPʙk!B!6%I,!BݎYED!Bqt!B!*>iB!Bv""B!ED!BqUuDJ*ft899j ^Wꊽ=t B!]iٺu+xyybo̘1ԨQ)Sp  @.]"**k"""x牊}?СC˝O!B!UEwDGGӰaCVXs=^1vX4h@޽9tSN`Νܼy,FMӦMٳggȑ,ZsαsNΟ?-ٳw: B!Kؤ" ۴2R ƼyԊ}ӧ0#FP_f !!!xzzh""""ʔN!*#Fs BD5=ׂO||<]b̚5v*~GS˖-#88ÇpBY}^F~G~G~G~*PaLj+7%Jhh(/&!! X(\&M>|8V1m4VZř3gK7!B!D%#bjذaqƱxbZhAzz:NNN6˫(撓VEQ{{{l2dũ,YbחRI{jjPN\]]t҄BQTYw^NCRJ|}}"BuDqL u֕.XB!(!lFӡ( uԑJB!%-"B]c !D"");!B*ͬYYYYZ...88Nɉ\rssqtt0|jFff&7B@!BXҴlڴ֭[ƅ t҅^z~6nH@@=z@ ɓL0ooo.] ŋ'&&6h4d!.Piƈ׏VZ[ntԉ=zĀ "%% P~} ߟQFQV-F^gΝ^C,BTV2H]!֨4-"aooϷ~KDDN*6KHHm۶iB!^Ra[D^˪]v7#F]LMbb":B!\m1VnJz-ɓ'v2KXj >B!"_m$u,KYhoV.ZL8ɓ'3B!t*l-L<ׯM6L0ӧ[?qDܘ1cM$B!D,[xrrr8t7of˖-l߾wwwwNRR۶mwQ+:+W --9sp>ƍŋiѢ{899.B!B܃lR1q %44l[TTaaafۇ b8%K^!B!VLj!B!*J=FD!BQ1IB!ⶓ!B!m'-"B!BۮҴdeeFZZ999luV%3340999fagdddff?sB!B"i&ZnMXX.\PҥKzٸq#^V` #,,'O2aYt)/ߟdP!B{\iׯZ"$$???u{nԩ=z ((DJJ ,~?FVZ9^Ν;Yz5CYB!UҰo%""SNw%$$m4 !Bq/-"%Gv7n#FPh%::D}>!B!D "RkyMBNNuкu܊McRRG!#=ե}Y0} %Cf͚ѸI.^NLJ}⅋t{Q߿ IITQqvv.U>JOczիG\ܟ\v7n\b+K.q#9 9@ZtWrU4hk/RRR{z*m SԮ] k._r+kZףve寿rE7iMךZ-w&556Xu~[pƍE>֖Ay넄OŅ: ?D-h4ᚤҼE s@ݺu͛\pzQjU˴<+-4PQez55kf^Q;7իW/1Xv*6[4-"B{!JQCXrhN~Ogl:;j }<͠9ro14mY[5k Ο]v^d7s7n ǎãFYYYl;͚5cI׮_p>QFV,/8w,zBff?~QGs#\>֭eϞ=hZc\~ 6#g˫Uvp|!OgԪ] ןEkom| %WeaaO:WJJU")) ggg.^=#Fڤ|?9^3+WФiS>z]o.xYUeyX7oNjj*/O"yᇹr Çt)M4` $&&x{K<°aí/,巠D3~mywJU[aZq7*LOdؗY"l}}˜|$ի%֖(>V*1?F+2yqHPCweIHH#iOӦ(=}oDf1Jګ~C g(d+R6Y˗/Ǚ3g }rr20 e{܇~tQرctڵk(ʴSJtNKx(2PEחӘ%}n[b@PLTQ+3g(ϏQE X`YZQE믽<ֳ27N(YZ 쨜;w2&o֖[Y˷\*͵駟KC*a4[RSy[ _늢(͛7ʉ'MǤIÞ/gI&;o}]=[2(}={J~}.۾b푮JJJ{LY(\vMy (Py"xU(ʹs甠ÇE)3ҋ/(({Q?Mq)k477W>ʼy?}4xϤ炲cRgBҴ7\tStU'O5\y04ATNbՕ7np)_Nvطo_fjz)y777j֬ivؼyO>~Ϗ"11Gz}Xn78++-J߾)oߟ_p7s~ۺc6ssrM}oS9ysո}}Lc~^㶂M|bmpٕzTkfm|MYs_zZF[Rr)m RߪxJb鞵cd5y }y{ "##PAcҫ@ZZ'Ng=xF4i;K)um{2[nXv >:HxL&ϷEҬ#EZZi|W IDATiifnjdfff KNNY1EBy5ĞHLоάR9z6nZ[4׿?Ӧ˫Flllqs9ze6ʡ=G:u^{)Uj׮Gźfkdm]I(jwݺ<gZO[ԩSu 5CըQ#.\@rr7npuٲ ,1/չz*ߺЏեnݺ^Jprr" %ܸq@l\/([`Q>}yi=dmۗ[r)K߾}OY\kT1"6muքqu{ll,]tW^߿7@=?IIIɓ'0a,]ŋOLLᅛÐ/W  'Ftz-4֟y< 5|]M9~#W\Wq!VѣTVim]]]dhZrss^ŞKЧYu֒(9rtx/_Ɵg9s>K`` 4(1eɧN壨(j|233վe-z>>>}Çq"W)&KiV-ʖV_>[1 8~ |b»ӧsEŋ;}:K&kز ,h4eXt:0lL W@6lXOVԿAl`XaÆ GGG"g̤c='UOkҔi=DDLZjڽ=K;y!dddϓ {E͚5y/rFko0}4=;;;ڵkϠݹ  ̚9;;;f$G͍7XΦc@U(K>ڶmFGwàW'''Ozꕫ|Ϟ=ҋdff>^~L]Js-Җ%%WZٲd1$%%s憳 #G?(:u0gfDFDuϞcDea2$,irrr3g63gё,7onxe``+@uH:9:t4V=SNc̙0f gl#k!kÃ]i&2XDk)KoM̏JMOż_ը۷/ bfnj7SN`СL8ݻw^6lȊ+4h{aРA>}iӦ`6ӆQɭM6-9-Ŵ\J;رtkgl(ZF_+~~~V-Lٳg^РђdeeqYɪRRRxk԰A|6ӧMʕ|33{Y?4|L>-[˒%K"22P֮]K˖-cܹU&   1k Q5KA׳f=2+  P3   Ժ#"ވHqh? =TY(rrOU_ JvvKI W[dff>3XU9~81X|R(9>>ZI[{}κFv~:7^6ވ`u1FDFa͚ٺu+W'qּ]>[ȯ)“-_祖HzE\l޳6Ƹ+jϟ#d":Oڴi]%눘iʕlڴ@t|wl޼yѻwoؾ};cĈL0WRD׳vZ݉eԩ888h"bbb>}:Ǐ`0T* EPN%##CrQ:vȌ3jA(a֭tbn 4v-Nٳgkْ.bmmŒѤIX˩e2ӱ)x}x_ήW?6w KؙF_{":~-\JOg7"֯gٲiڴ)V֜NJA,_GGr3gfeeJʋpeiۮ?oΕlJXHeɓq 64n7quu\R^PP3g-$憇ӽmLbb"_}5PԖ/]^o@‚3g0.81cs>Faև3豔EͧVa%w>qv09|G)7iښԜsXɭ_歱KR)W,_7߬E ? [.ҡC /*9Zx#b\BBBJEPPPɓ9t)€/c$$$`O>DFF2w\ڵ+^^^t҅.]0k,M/Jnݺm6BCC>|8 .DTR$..FrrrHtThEdd((((`|{[LQ)S*搖{g|L&Uݎ$d,[zOaki_~:V3-C=( hc͚o4yrۘ_ Ǩ(_Ay<㥞J WFܸq,_gggIەzԹ33O0nc4oDJJ-ҥqY1|T*16 p1BBBch6mO,[jՊ1cƒEJr2X],H\aIke$%"*G/V1ÙlݶGGGIKmJe<իY׌1O"#x\g7iT}{zuW9w3%+;Ws)'ć&75+~O<p=y!|8X;m6[ˢvS}݃ps^o~y^y|{o:I_Y Yy*?oYs}VVVTv)b,sj4 ǎ S(lܸ&L`*]v,XT<2 oorYԦM c~o߾=cǎ5< HwϽSO֋o?vVkVmJjDGa/U֖7GJJ N2`ĈW<ɦN.pw,vDEݲhCx/4lB78W^}Ǘ?ޜ:mL{mrrntgdzV%\Ybcc7/wO7D?' X駕sE.3geN8~7 zNr>>ƛ~h8wP=*f>Fi:fooAU.eyfMWuY ㅖwH [a $4j2cl-[gʦGeU\:?/ng<Tj۷84g/7oRo/@f2ìx#fͪթS9sСC '*!..z$\.77wMN:E|||.]h4Mx=;;JEVMJJhҤIcjɓ'9|0ӦKÆI~~>}ϖ-?VXXhR۴阆kt:5jdnVUQYޤYUsVEPiMQKv~:\~<;Ϛ>\/xzظaeaC&n ӻPMӱAMosnm̛aŊ[=x={1`,-v%ƈTI3f`ȑDFFϻKXX%ݻٱcT>,, ]Ν;+p)½䄧''NTv&ueݦI0t::]'θ'Jo2qjF:dZ{tC2ՔZ|Je>珽{Ɯz7;;;|+O<ё{˼[Jr2^*WWf80zt׮]c]D )ҰaCZn?ӥKv=zKGJًnFt{/ jZfͰ ̄[& e=l˴k߮Զ^^J}Wu^] 80HN\#K&5͚Ꭓ*h킻]}NU݊\T-e_)~K2 pkç}7?__~),۟-OɼI5.8 8|?o{X$Jd3k#zzz:'NI&DFFuVϟ@Ϟ=ٿIxVKZZs˖- aӦM̟?3gT^XX+W$**l& ԾAc8}t_zsdGGG?nI5T?I~o\NF%X^A. Uǥc=+xBVgZZZbeeY{),--qrr2GYl9i;32ˠAػw/Ν#..AU)uw=<WdӺuR*zCwyIԩS#%Ɠ>|TX;{;n0t.yfMW1sYrAZ%I\\+(M]z8*Vu(MA69xw,VWUV*pv.إfָsxwpʎ=1F 'N`ڵ...4n(iXfqz2vŦAAA4i҄ɓٹs7oDՒ|,>Ԥk 2d(QQ9xh0 X3:wlHCfhbSwkKzƓ;0fZ?P< 9O9}4/ b,SY .../h4 8vhe_'OĮ]r5eE\v^=#5\Y {~6R(,,$-={{ ()vMK߀z=|>&SJGJe2zM?Ν;(,,`0hrA/VӅ 8##RLnЀs"!tq7UeeeEx<:uț={XAADmmی%\¦M?ruIWMeW lݺK.ΝlݲŘbm۴%.0GW_}YIISj}ݻҥKsV=G_.:édV8~dci҂Şs?rK}^˹X7qVOd5jTYl?-7WQXlo7)TShlӛ, l6p$#KYWO|Jϊh,m͛EhH:u ggrʏs888az=(JԽ:t ** Zn_~$$$eo߾L2QFI۶mޞ>}pT*̙38XLL ?F IDATYYYlܸa% poڲb*>_l]vL8>ȸࢩ2CC&ceeZS̞3JZi(9i cy;52]oesΤbg(w{\e4rŗ^"+L[~usueL&`0Ĥɓ׿q2fXz=˗/cEd2lmm>|tQp2^yٳg/n[jjԫEc#|\r9rK";an߾2}V̞=oooc{Ç3qT*G1qRW f}17gKiժ#GNcɒ̛q UMQPkԬ\:txoMc ̾}2ױՕx;SJ͛4W^^&ksր&/w~N.+3nKj<"Zwg;][A^ˊ#BS̵5O7L&'sDD.ǓkLw.PNGT8tc6ވ6ϴKYb5j4(`0AAAׯJ"??777Iagɣ,vn4o޼VTjի5֭[VYM呞{K̋LOm= `ժcU1?/ꊧgŃ;R~=&co WFŋ4jȬ3gɓltgj֋9S.^\OÆf/;dˌ 36l[[7: .j}5̟1øxrT6n\J*J&$kI=ZW}lwuJFa]jAC.[)ݮ~9/GsKN)z* V{#΋cE&QP(o p׷sdsMPXĥM\Zj" j=F)@U`Eyïeų1U*%`(5\yi̼gϐp?MT^̉ǜȺu=^4Y*jj]rǏӹsglllP*,_~!i V7sӬ2=L{G*9KN. U}BBCkt6GWzl399P pqq1+Ðpf Prqqͭ򀂑zCp?1k#   5C\Ξ=&3zRRRˣQFjM}W(&3Pj&Stt:i%fmm-4   1FL+WdӦMN3%yf͛G޽qssc׏#F0a^J`` J^ڵkqww'66SEa?R$44BAxx8'66 ѣGر#3f̨AA{I1Cnn.!!!deeJ"((h&O̡C_h_IHH <<@>}dܹӵkWҥ ]ta֬YL6 ___J%ݺuc۶m2|p.\R$,, RI\\\֏   KF#Vh4;V4B`ƍDDD0aMȻ`Rd2fUR6m+>۷gرfG\rׯ C_=kVHeSs! #Gr ]v&r9vvv7oԩS_TB%΍MӦM8 5CRd |v '0YRӈl޼IR_7}f8V\IVVV/۫WhAAjc֬~Hemƌ9Hyw 8<޽;vO°ڵkܹdP O2yD.\tFCt/_FJJ Κe ?С/T@Mnn炂~<ٱcׯ#b޼RqhQ p1"fHOOڵk}W aӖ8;;/  1F 'N`ڵ...4n(iXfDDDvU plۺN: ֭[عsŋp&>ɞ=SǞ={  /⍈ذaz Jq:EPP[LJ}ѯ_?زe DGGӷo_L¨Q̤m۶`ooO>}8p*p̙I>bbb駟bƍ 6FD撚J].ӦM[U0fXHINfk4/= SL/,,礻 z97'  눘k׮>}4@&ꩧ8pccc_eWϞ=ILL$??777^z%oz.7z6+ TOnNN_;9;q֭{Ly&zv.޽ō oDdcccULFz$ťP(P(Uʇ d@yI rJeee7wuA#" $H(7̉hqrTA^W#"`AΜ9S={ƳK-R]Z}-5  ԦXGD0:(ƍ3eJ(FC~~>[naѓw fnЀs"!trr?b0HH8NBq:64UY+ݻҥKկ AA&1FDA"B+Yx":74L8JAL4IrzZc ɰU(_>;vbiԨQ:,}qyyyh,  Լ#"?&_.[e+Vc0$eA5Xnn.gϞ ___z=)))ѨQ#\\\jjcBZ6^X[[\$`ee]d'kkkTA->([ U~>.v9?Iof 3Ab&$))z#rJ6mD`` t:Z"7of޼y777oN~1b&LիT*]wwwbcc:u*,ZO1 (JBCCQ(ӿbcc`С=z;2cƌ"A*Y4k֜ >aƌ/;k P눘!77pvvFR@tt4'OСCԯ__IHH <<@>}dܹӵkWҥ ]ta֬YL6 ___J%ݺuc۶m2|p.\R$,, RI\\\Ս }! 1kj5cǎE]6n@DD&L0ބk׎ G&]n7ڴiCAA~~~ >۷gرfGAAY:u0g9r$ܹ]v&r9vvv7oԩS_TBCC%5::MҠA3J(  /iƌ>> #88իWsNA  0׿1Gzz:'NI&DFFuVϟ@Ϟ=ٿIxVKZZs˖- aӦM̟?Eʕ++(  s8qk?иqca͚5$&&?x qpp ]vU!  7"̬Ylذ^J8uo"((֭[þ}ׯ lٲl۷/SLaԨQdffҶm[bbbO>8pJExx8s$111OdeeqF Vc"  6ވȂ ZMZZvvvxxxZ`0AAAƦܸT*EЄGiACAA^#7ng72zѸq oBh:uꈛAA_GAA։YAAAu⍈   NAAAz#ٳgqrrds^OJJ yyy4jZ-jFP`aaaV[[[h`eeN}:Ǐ`0T* EPN%##CrQ:vȌ3j~AA^oD̐KHHYYY8;;R  ::ɓ's!ׯ/c$$$`O>DFF2w\ڵ+^^^t҅.]0k,M/Jnݺm6BCC>|8 .DTR$..FGAAx#ȌQh4;uڸq#L0xЮ];,XP*LwݬJjӦ 1|Roߞcǚ]AAA_ճfߌT:u0g9r$ܩ8ڵkg^.cggg|MN:IMM%44TR^iڴ) 40  `WϚU|sSw1c'O48/Ozz:wf͚5Sa0Yz5;w4/  ss 4iBdd$[neٓj?lْ6m9sL酅rJhѢAAտN8ڵk]\\hܸ1PtӰf>>۷~-[&::}2eFEff&m۶%&&{{{ÁPT3gLO?DVV7ndذa5R'  P[jc,٦755rي,[ ):"j4@&n0ȠcccSn\*|J#"sb΍͛`AA_MHRRFV:/ULFz$ťP(P(Uʇ   <:"   :1k   N̚%  BoDA@s_ЧWq?~}$'66ִ[lݺ[UA-60xTcĺu07"52XA5 77g䄯ɊzhԨ...hZj1BYVWeF NGAAAyںJA:JŪ+پ}L]wwF W^19\zC_x 3'n~So߶LwnvZRVV6nGGrÕWjdեm^楦܏2+R{A]'V\ɦM $>>Ng\Kd̛7޽{ׯ#F`„ \z@J%zkNll,SNE?~<RIhh( pOll, :GұcGf̘QU$B Zɓ&r&L{h4|2RRRp,c*_̍[!Cзo=;ʫѦ~Qf=2oDrss !++ gggT*AAADGG3yd:D0`_~%~~~ 81 ӇHΝ?]vˋ.]ХKf͚ŴiETҭ[7mFhh(Çg…(JP*XPu'!!]v^مy멧瓘@ݺuqww 3'nK[XoP67%%M:88biiU*gI: -Zif͛퍓SO/_̩SS~=x[tZ->>>9GzZ:M5UVh48p[mӶ4& Ci>}3gNckkKǎpqq4ϑx2NmڴۛCrUZjEӦkI E=J%i/JNM*A!=-[?^n]lSf͡mxxzlR%U_++0%U?#y{{{jΜc\µkhѢIx@R)<=puu4HmRڳr(V>{6Ge1>HzE\l޳63R5shH|\Se­-.~&7"fPh4;F^P(lܸ&L`ro׮ ,(L&ۻnV%iӆhذa۷oO. ٶu+:u2p//غu z;wpa4 > !C9"=sXh|4{1܅ x-h4?lo]Kbb"_}5|8s&11hKKKNNbnx8O?ݻT)))LJv͆Ys6m5hРW0vb*._ iXZZ¸`Ǝ}deeѬysɀMXeu 0mZ3X!3s6sӫWr^|9|-P(lJ;7XK.P򱰰̙3 f̘muSL3l bIhҤ1˩e2ӱK'˭˒mJ~fܸqM1`֯[ǺʽhJ)0ϲH=JuVhSv'X]$'3y$~dr]7quu! JiRүC>mCqT >#4wmMj9Ds㋸|ztyX,I~oJc\7":u0g:t(++<رcʨQl#,X@nMJ x"22ac^^^0yD>x=֭`ܧGJBL1Q$/RO"#x\3fV_Ojz UK,6݁cvݩsg<<<رgƏ`nǎi޼\QCjKiRү*߇mH9ʲ<#2R*p/ިu*>Ƴ*0Eu|auK~[>;[ћY_Ҍ38y$qyyٽ{7k֬!  Çիٹsg P3rsrpvr.7n,)-x7 IDAT2*N1bI ;;;ԩcv]LJpL<› P(qϟիЁxp>>>?Gp9hoƈ#quu+*FWRlݲ#_1^@Qe {xxT)9^ӓ]~5+V%:z^~///lmmyqp)1n5 11bHc>{{{FrRgNz 몶;NJr9}_v4Ar>ͩڳ{lQqT^˟3o X*x[y3׎:Ŗwnk*+f#==k׮ɠAx gϞ߿!CkZݵZlIHHcƌۛ^z͛^XX CQr^?VYQTlղp'OL6/ &)$̙3bemMnNu5 e)_Lh4Rt5- TI~~>}ϖ-?-,,Jvv7+ntx zŀ4On4iBjjYy3ӿk[}NtO7_u:52 רSYrz 몶;NJ zo֬t҅F1J>ig)WQ>m,W3ibڎ|9mGCfdu܂d秋1"8q{aиqcakF~A֯_ҥKMqpp ]vUx#"ƒ OOON$DBK |ӫJe]4SGPWqf͚aoowG%uCh٪W40-[9kkOL~.**K[v;a^]cuظ`3x0CxEaiK_eUӕ\]YiKe|_YD/(qAUVeϜ:[e,Ru]v'XÆ iݺ ;wL.]رga^|Sg)Q}x/FeQY,X_̷?[q:밾=].Gfeu6l;_fΜiCDEEĘ1c5k3fۛl?Ctt4SLa…̜9(bbbعs'111,\JExx8O?āA8sLCZZ>hB.7y gnvvܸq$ܹ_CQWW705 >YH- + ǥK0`[XUGGGGL-ͩڳskmH! l6p$#KYWO|tK|!z +Fͣ_B&ƈ,2z~7Ba@B`,^dW_Mo\<>t'R=:&qMRSSj" ̾}2ױՕx5UT*ϛGܹrr9D(`VG|w.PNGϘڷL&og7Tgpる jN:3{J뢺uY+F֨Yb999tSߚw)w "|ցYRu;~Hё~={=T%R_J{~URhRmn߽[.,gIO2 zwl7"M?|o3}ljX~h mC 2r/b[w;Ӈt/d T&sj2gdkk[jRײUfw`iiY{לUnJǥH d6~r ǏsUJ%˗/_~պ i3ϒ{ T݁cD%33(ԧO}Ι + ¿UHh{xիǶ?s Zr'<azCu,ވTAnn.gϞ _gâg7Y\0 M\~e )bKEijden n"6dt`|G.s3ܳ5F w'Dccc*X6r8buAVfmNNuprĄ|=?,mLNԈiʕl޼`bbbP >zÇ`ѠAcƍnݚgBΝi޼93gdڴi,^X_9x &Mm۶~zvAOAA6Q#bBBCCLƘ1cpvv&,,ÇgKxx8DGG3}t:t/{xx7|D"?&,,̠W^lْ2vX#ԝ  J̬nIooiggƍ֭Ç/}`` :L0ٳg{pB<~8x  ƒ汞Y0Rտݙ;w.AAAps!̞=={0w\5kf0vb…||5"JOO̙3Yh7o g,uef̙n8 pV֟V'u%Xa>23AffVܱ~G}|>I|A+ } Ize2_|A H޽ O?Xnb˖:νfjX׈̙3]VŅ&Mf8qbedeeVÉAxdbY扴V bڴ =l񭎲zW=T*ӦodZ4~۵-[1tP/yslO;ĨYfpttFbaaAll,?tw!nJff&7ndСu.\`\z/ВLt޼yd2"""pvvFVsUvA||>><MzZ:~hh*;>GRPOm*TbQe**8VIt 7iѡ¸iy֯_ӧY*ڶm_>fX]X0?ݻ rs)..ܹs@(u֭<ޕܟw3_)UYbygHLL$-- {{{<== F֭}ټ|uٳi5`'ݵ_D %)g]F 5.EX̭ k )yhڊԂXIG;lX~\D@\|kk+___R6m*~LF0I:\]]Q(|8{6{ ~}sEЭ[Ūo!Z*RtlllhѢ֭ڵkؐ%)))L4_?)ͽ7 33M22>/hP(8a2Y1$%%1q$ƍ{WƤl|}}?~iSdϿTXyz~~~XY[@Æ Yb~U|cҹ0r9Vެr9}!Y,--ILL`^D=|,Y''G;[˗/3vh~ٸƍbr~a ͚`ggTڵkǼy[י1w79*2R ﶊsH\7rwo?~_S݊.]\=\̫2O,ҰwqqhԚ gԘ=6h\icUġϽ)%Oͻ %8_<9M)cuؾ:BJ 0]ݻ8qJ?2hUݟw;_E5"f+ͱAx8>vy$v&Wgѱ4stq&zQ*ӡ C{2G!}BRi/@á{(uX;#|g~-(V"Ұ7\A[Lş!JٲuuԡIZ>_t~ٸ ooor9Ӧɬgб#'Oko4mT{IH8ϦM]V}};qrr .68p }-k#BoM9F_P(ؼe n3a|? cQl+~ >ۙ-ZЮ];4i¶[ywmۺmNܥ / yyy}?Ӧu.LeJXK~ɓ'aﳸLfֱ$+.0g\z/4}m_gƜ:ΌgtshKW <Ԓ) o&LwK/Wid 2O,3e`eaM_l-Kg1>JU)qsoyYqr. փe*SGsJ>}Jn݆Xƍ{LRfշU_y/E ǺWPlW׾C~UkUAthyK7Iqܱ: 'o?#ZNEQqV͞ i>^`o创mUe)J<Ȉ!ԩSc STDEcax{4e„pyR)/w;\r/IVm 8f ͤJyzz2bDH8 zRŋ&CR0"$Wגua&;WWWF܎ߐ!/Ş=3X{nJ%PR s_ T-5jyyy\t۵#&&ƬsaRs'#F0heoo_&Z4F̘N} ۼ]kF}H={+U߻2%O150NZsSq+IʲhىLӧ.(g{΋CWw1\l=pvaؓS oh‚8WM:W>j1ܟ"_*_jFDH ߯4vnFZ%epdg(u1l[wK5*Y *v_XoNӒS|Yru1Mj>^VVj'x`ܹRSM|Nz-ZЯ_~X'NЩS'ܿRy:Ŭ_m ;j4nV$^^}]J) Qmu0qm|}}IMM̲eKG߾ܹ{{{zYi D̛KRRXY[SXPvU sTVVV2-*n_8VXh׾=]vO>XZ̘ >Z:,2Fv*Wʔ<ͤX.f +  7q2+5ɣsM9/u]Qj4v6Wϊ9ߣK]XXX6888)W3_''#"`*V]nZƺL',m `Qf0J2^Uݎ{94DSߊ$TL [iQIZcQFj՚ݻ~SNt:tm˷BjrH٤ĭ74Smj>smΜ>MS')W%RGD5NVEWwvfVŅެa獣ufG,/ĥpq'Gvya_[bWǵm@TP((J"#@&`ZjN Ε1vvvGThXOǙw"jD"a䨑lWvޅFAq9.]dt6}'$$zwdffcvn,FJ% \i}eʽkc)y)1v8۸ǥ-(5 4:5έtK SơL:/)}B|~oFsϰ܊rq2d ^Zi\GC&M>=T*)..fm̛;.] 6ҥK9}t WJUD"}D̵rJ6oLpp0111j\"[la<󸹹sNzň#2e 999Veڵԭ[Ç[oȒ%K8t3gdt:bcc ΎzÇ`SOU8 `QT,\\"""puu-׆Rxp4 atX[~ب}Ƕy| ((4r~g}4Z+N/K +jxQIf>7<>K@Ԃϯŧ?}|3\]̰'0>}9j +VPPP@vyw &D' : +++ :tdy999sϱo> ^HHj5_|9  \N@@={lhLs1i\vq^[Əϧ~RE%!Hۜ9siРAms%3Ü9!Ji׮=/ +.^5Ud2 , b \ger{ؔ<DJh|zm^Ă֞ORK_eʪNj”2ͻ^aڞ[9bma˫ g|EEEVΎ+VK ^>h&Ap |s 2ѣԩFî)5KuW|+5yʃGwww233qvvF&1f6nHTTcƌɚbbbXt)}Of͚5t:zAΝ7G7ۛpdӧOӸqcbccygٱc999 >>L?bll,ѼE]xH4hs(k{76mZwG&8O^ Y&,:bcigV8<2 bA]{r~"Kz;֪IOFUdZ Ԃ 85¦6Ν,Z$eVFP\|JwݭcdddPPPO)6M"РAvsiݺ͝6 $00ygc֬YԩS(<*<>'7 : 79MsvZ,K;1#;;SNѱc,鱱,_5z*WanK KKrV6S:<<<*sƍ0x :v4jm+Ӱa|===kTȽӄ{)eU'tj0x:4[=|ɧ̞=}fgdLeW*yDN̝; BBB .73T*5hzMΟ?φ HMM%,,̤FEEgR-<<|}}9pW?@y_?_[#S1JKtҙѡCyw}ӣb |ich(ٻ/ƅcG˚={6!!!DFFҽ{w{=ñ4hgLzz:{e׮]Sp v-ޖ?b4 -Z`<1ewn6ZFy <5@mW; LK( -^T[7Ax=5"HOO̙3Yh]vȑ#۫T*7oNhh(7ofѢEFkSxx8+WdӦMfU{ ZNm۶ٳ zjо(g7\mkOk k!NNNuZ! ! w̙3]{{8G4i֬Yùs;˅HPP{F̅GF\2 .>c֭[' #  <<"ꎎhZ,,,Vk׎M61fZjW^>}m۶ETT={d5ׯӦM:=zѣd2""";wnb֭dffqFZkEwj5a&v͛2d+x AAѽ{ 4,@.S~}4d2qss{srr`]v1rH/_΀>|  nIHH~tФI>J$իG&M*-@D6C`Zmx;=^N/п_03ߛan1cݺx!>,ZRr+WgqPތwM S7g}IoI?$jpW<V ''c2~xVXԩSqvvkkkA~O>I-rR6u* 6n]vN:dffrAVXN]W><\gÏk` F(Joƌ3FeqFt: ՕK>7tȐIJJb=UDޢv/eӦ&DL+w ϵ%M\qN:Fz\l ꂍ~TTZ% ar3hY Jտ|3X}r4ݎVuZ' I7)Vؐ6 XTEYtoM΅ I4oΕW/`7pZ2Y1$%%1q$ƍ{]BٳPPPs;/nݺúv666aiiIJJ 'MW˗kh,;;[Ү];͋09-K,ɑΙˌ3_6nqx^KE* -ZAÆ|:tf$11y<&c?FAA:u2۱c;:v4(ӳ04h/dMʦ_7ӨQ#&1ZƦg}oYIrrre07v-x(2ƿעs}Kɹg24M2Y!%M][Zp+5HcBSKH+D"<VEFQ*VwkpB?&*4r3ciԭ5ʛdì.KyAPbcaK36w|trn99|{[E4v Jjͅ3wjqv6;wq3AQpI3#yT~ ??''m<.LJ5"fZr%7o&88j~.-[`yعs'zbĈL2EղvZ֭Çy뭷pttdɒ%:t3g2ydt:aggGDD{ddd0x`xꩧ={v>|8]taҤId2ƎKhh(aaa,Y'OҳgOwT[>_t~ٸ ooor9Ӧɬg#Q%o7oO?gXkγiӯxj j7|чl߱'''bccxY 85ψ!wk3g.AzgffS6}:!!#>SN<k;zʊ WWg)/,,$55>/hV:t O{wq+PR@ bb:0fU|2u]XU\sڈ/׋RY' PeBߓ&8 %;u,+1$}@.x K%{S6鑷M;ުq{ˡ!Pp(^:u}oI]zJ]V/?[˒{a{efVdsf_m1XWTE|kK?1@VVqI-b,3ʦM cڋ(MOyYl/HDD Hw3#ZhAPP/C*b߾{37@R5Ӧx^]8;;V6\/ecZ5{R62x8#nuQkUAt(6osf"I7NiK/ߒfe$tM Fy Ki{n{ W{^n>A0TcH5UۘNZsSq+IʲhىT&i3~CNWnOusH̬nBR$>>nݺaggƍ?>SL1hKݶm[>rH$4hPa3Zn\.' *T`` fER)Nc 4r "ydeeT*io8bf%S^vm Kjj*ׯS\\ضmv,g//o w6,^NJY~ڷknKKKb>>kVV2-ޜsPRֶPXdرZBPv}:X;w̺u눊bذat푚UaWگ/j`mJv·Ff¯&;z'h_DcמVk|i2Z69砬:uz5goH@ XrYZZ26jԈVZ{otԉ]~s.lj9y$Wvs\9~ֵQtx2ǻŒچjR\oi6{Vu;ΚʫJ1B3,Iߑ{u"y7&iLwBt!bC9pe'ϯGNg&$$Hw{Gxx8UN8޽{ٵkAAAT}xx8666ܸqݻwNˏT#AƆ :wD"A?Ppխ['''N:T|(4w\.׿WT$$$G&Օ,Z2?` 7Bb`O^a)7 SI8}w4i}{jf}v$&&V^ׯ_|9c^$::j1Ge_W&rss)(7~27}=\l=~ 7qѺg ͎֟KYǫMpq'Gv޷tU*ZEhhROoDj 4>MKmk_>~7ɝYrtE M9s DFF}vڵ+G1^Rm޼9l޼ETYr%6m?BH$Hro% 666ꊵ yHR ̦M9vP2ҥ_ѱcGR*ş}o2~@w=z6m;/1ټWrsskLvخITp<ۛ6}8X; H9j$ݻwht;wK.t Yq1))iZNFGy&cƎϏiSٹc7n@r ㏒xi~RʎYAAhZfgggtj~k^ ;']?2xW^/S*q(cȟ>u :tx¸sBOdg+q IDAT:os5`QlO\ɌC\OOp+$ o&ɿ֖\7dLJ,eYl(l:Y͎w=\O|N ׋R)TެQZj"8ߓ&_Qr+5 .8EWnuѕk^Μ9þ}4)/;<<>}0vX}[cǎa.]j#AAAٳM 8iyyyN BA3wvJ$PoΜ_BBFVY`>VVV`={(oV$b<帻3/b4p `XYY aRo٠v%*jݺuéL'LM57<>K@Ԃϯŧ?cۼKsRk9^]xy /7Fbű`iaB-ߵ5WUNЎۼ9R=fc9߬8Fl?c8ru1Þk4=%Gg`oB-ͮ.,7+VVxFYEh^ԈH6N`XuozŷՈ@Gaذa : bcc?>ۗTiii{bKfu.Z?y]F*\V|2j /o*'3Gff&999ѨQ#͘*KKTr941`*\Ε+WJiԨ\G꜃}{W_erh4"pqu˫6yyy4?K}M֦53z1B-# ĂNM1X_#*.ܨJjdTZ% &JU龓L]Dj~ .kSMR]Yʳ/h~8}Dk Ԉ@H5iiiYN###\N f-K&Q\\h#<He,wNc}2\…X.5" YaccoeD"1yN;;;1Y B5H$[~G6eʛ; <ŨYR UotA vyAAxQAj nnw}  <ŨYFDAAFDAA{NԈTCaa!Tjpqqq% JF*]T* svZmο;ǐAAݽyFZr%7o&88j5?[la<󸹹sNzň#2e 999Veڵԭ[Ç[oȒ%K8t3gdt:bcc ΎzÇ`SO1{|w/ri"""tуH͛GygSNtԉ?wyƍ˳>ˎ; c|gNll,ѵvnAAn}D̠P(P*%lܸ3e}!m۶|'‘H$4h\nq[n\.' Ç[믿nvzAA~yTݙ;w.AAApXtt4m۶5^*boo|MΟ?φ HMM%,,̤FEEGÆ H   <-kٜ={uҽ{w4XnLzz:{e͚5SL4oݻw#ʩAAtΜ9/l߾EеkW9bJ"--My愆yf-ZDRRR gʕlڴf͚~AA>ylkD̙3]VŅ&M%5kp9cǎ1r8::Ğ={~AAt/jDQёV{۵kǦM3f ZLJҫW/N>Ͷm"**={2}tFiӦ =zpQd2̝;ooox:t[ƍ:t8  PmFDu?_W|Nk iiiD"1X@.S~}lll* K&Q\\[pQdnaM6X p?yD>"6664i///DBzhҤI(]BAAǎ#"  ='FAA5"   sb,AShU.A=nڼdku]<%r#(_WkZ{!I^ ׃/Vz-n5"Ռ5*\.GV%v ONN&--M {R;;;tH$ YYYUY]Hj8 > 8$h;ZA_q.[^Or6neW CZգn5aJ2i$ڶmK6mؿ?;wfѢEH$=z4M4u,^www-[-[$33\·~HfXt)>fbܹ,\׳rJzYݤ 𠹸~@=.\Srdr1WYZˣ^YѫW/Zl;v,aaaxxxkK/ĨQ `ԩ30V\YnX^xfΜIbb"yyycr{~$YE4uj*c :YMq˨{Q#R+kVggg/Ξ=ˤI% .~-F $((?yn:͛"  UxG͒H$J6*oY`żˬ^~-[Dqԩ Զm[N8@z1c3f`֬Y̟?&AA?jNp]iiժ'OTj4lNNC*j ֿ[3c <<>LƉ'vnnn|GH$nʄ xWiժYf,Z`ZMll,( oPrJYf O>$O>d-£CZxIlXe긚El'' QE5\2[Q-b<9FL1{cg7j%%Ϧ ̈aW>iOe;Ӷ>1Y7bz^X#"p/{HyikݾM$Y{BN֌x @`w\m2 53Q[ܫp/7#ܮHxš\8qELJ;ZXgã(g7KBzBZh!ѻP ΊST8 zPDA9Dz ,H Z$=-cɒ )0yxw;oMÑu5b#4SQ#"pepOudžT/8mM)ctۣTȀ(0Jp،<42FuRwq4JY"SγC0ZjI3W,!JF%6chFA &wW՘bW+cY+fV%\/nOIebVK7?,$qj 5d@$lR\ z wLq.bGގRa J[8 $oMۦ"WV1):Ka,*$rX"oˉ}[9eСi^3$ ZwNQkuWrڇK#4퇭DVϻq:k.rh_zV\"yW)wyA(hcӎR12iV~6tcƽ()iK7:#"И YVb~ P+A]# +O-a^FrYkJ)2IL&D. Ϯ+QjxrlmT[M,O,GXb_38LIFS66࣓q悍 W۱9ooKNɿoR+X*Q Eù]znz1όGXMňiOu:5<^7O`$G_')~Owք073ؿ2 JA9u 1.q5Dtsi0/oe Iݳv]{0i ZөMy,}c&1'0sg1qsoQc](2_xƲۍޱ p'^ez%%;oBNv,lVJ(dYVN[ؼHVi}F~{V &rrE6&[G*" W[I UB.@#:)Y R#ֆI$eGRʡFƝ*ڠ{/ 8r4ZqmK: ju$ FB[ya^Z}[$o 뀑o.GйPdr9:өM߰.MnlΣ%dt=LFΙHQ[ q&<5i]qw{ _@\jW1lqg}tǨ@^ {|Rc/oo|Cw}(*t-\`e=Fy!"荼ly:Ud*^r7V>vJٹPѥqn&Zp0?M 7# fPo?zcOhbWrZSըbh#(IcJBKKKZ(J7 LqUz废ͬ4 90܍S6|l|MyK$LRժdex dbtM*z&J%i?m)]ȵzly24 Q1KbKT~nUnI3Җ?|X~>3 JtuEydجW^|a U&k+(*4:=''oԄJEPXRhzU]]obdXb2w_!Яh4sz8n)[ [KyvFsUG./O9fsfG>5"7ofƌDGGAvv6FW^yN:q){9v/̚5k8v_~%s<,\;K`O _Ge7Q-ѺO&v$"PA 7n׵\O17#/TJ[o9iخv ~ la]Pi/mV nM!,?25lQMߌ/@sy^YhqcIXL(՚+֗s5*@AZn}00yziT6(?s>^W^ 0Ihi\Wnil9r$L0iӦ`06l۶mCL4|fΜСCѣ11ۼFFF2aQ%nJ}(~BE&R+AZ\n z9[7[>r>ci xR>v.֔PhxK^ʱ)/eEKh|$;ҟǒ_zoKݫN$ּƒ"&<9/~FIWC)0JXWf,ARIuRSמg 9;aS3f}uh/_jZR Z}DRLL qqq{W '::UV9-_S6ȾAw#dSۆQ+`qnVZ"Ȁ>m,C)CU*Ɠcc_jG!*ʱur5Kձ٬l#Rvs:ByI:^> *zo?J8 ҏ$zxG!Fжj7-ǓlVN#4<Ʃ*:՚?B).smLLs/x ~*پ=jtZRZ|QRN&W\{إOWDGGw*M>%KpW^M 7DUi~Gp F.VkdLU1—e/r%D᥷^}O^*PTcnꃗ,c쯨6V 3H ?1c<ʖxk?~,$Y J͒"^[b־2);7ұ`}ρ}!a-i)m]ŧONb/i5ҢLEtĎԽ[HuK}=/NJE/;f$aX8m6iR_O~5ī2l5Omj }nBj뷔oJᮌWu5g%|ȱj`2Z8/S2XK(V+|S1 zD42ۃK9|hڋK̸Rϊ*/B#Rۧ+l6귲'|Ǐk};!ouiԫKxfK}L-Utl|Жr>jb"|ԐS$a[ߠh;X 7{j: U.J[N-NYytU -ΰh .5.,SSZ{ɹr2cBmpݧ-8וcM2fo6B]1íݪ%Lh\y'9sx[V|^mT_uxz 9ϱOG.c2v~n-Pi܈~+;n-ud +0e@06b!KV[G1b^G 9!:rS;SR%G 9?|+Oٯ샺Bs{n;g>^qaE9 IDAT}[i8\Ƃ X"ltj/j}Ia<37,dZyy+0JSfԹs-E/ЛX}7nwy)S __5-bӦM{/۷'//_|8A-FU:o:v؀rW [^[ +J?U6yx)j  lPkrFjm߾M6sj>}:<}Ad@G[zt#ZUܼ*MYF`Ϻǣ0uj?6Z-Y2> Be@porO\!5?Bd_|ڶP( }641jV[bX0 b2ظq#tRgyaoRo?AAA5>"u1~xƏ_.]/\\.,&0AAKF5P4L  p#  <" .q)ƥD~nR*qU&jDA\~ԵN 4v־Uڡ Q#"qh}uJa|!>QDkVԌ1Z?7k."=~'EzEfԬ VKb4\R.jfIX,F$IrSTh4JKKZ(J1 HJ~O'rDhʇ5A)}CG+5$7ofƌDGGAvv6FW^yN:q){9v/̚5k8v_~%s<,\;MAAn$ͦF2L$Iu 3rH"""0aӦM`00l0mF4i̜9CңGbbbqDFF2aQAAf;HC!..{uDGGj*Dz˗;f\AAٍ%}7*.7ϪYh[ӧdl6W^M   %4Q$Ir4ɪ܇gml6ryՇy]wٶmv*  BsjDӧR'vK.eŊw-AAAF^׎پ};6mbΝn3}txKhhhWAAndjԬpݺu;6 [n媏AAA <"{<.)7~xƏ_.]/\\.,&0AAKmB; I)  ׫fG>5" *NRDϽ2;9:Q'5~:m} 7tʬ&B=®uRՔզC\c=!hN)j<ͪHE"BcY inMQb.Mn~4}wn#xH.[3'x?n͵NJCuR:5׳!~VYM? L\;ӴXSrcꗜ.8@o,S"ױĚ~{r5c&7H ϞM;tt(]9BbN}Gp.]#kRU+a$ƪO|G_f5pK)Wsun#zuZ!mg?+5V[罹k>g SQմñ/ &4~՝xpX9]wl)2qV dr&?J8G!W2LpSsԈ2tomшb#aiZY- FSRNRh(--jT*(Z̴t_p{269 "?a١wy$va||9OOn^>@֧dbl= Egip k Rý9SG2tՖ tbLdJE|)/~/<13J{ߦ|$z9+$\=/s3tH^^4 ¯x k ӝ]A8v$Sxw%̒CO?… ;A1[,6 ˓05Y ʿ45)UhىY[iّ}[~VQTVJ!k;c>Z^^AC8,w Џ۾Fj!:yGaYXycyկ'9(IOؗ\oKMǼ~A^+]1PD]W˜me9x񂠛_o_m|mߋ i^9ܒL]\?Wsswp{jEhxs2ɘ.fC+|uA<zq4 _ @A~j-{363&lrϙfS#RL&#G$"" &0m4 Æ c۶mtЁI&̙3:t(=z &&Gdd$&LAh~1bEz qteٗ ?s+3J#ڎ{+JEN.}{8=U4\0M$\DNItQͿWIh/qޘ˩ ),;DVQ:g Sv>SCX]Wœ-N}tNdRh:i4xXNtt4Vr,[|cuAɴҷ|ڽ(fk{l@d $?/"үp?s+#qWplWH$٪Lix{I/<ȧ3c^ jRxUFK):BFF/ خZYWkĕ06jFMzFk)mR̖?;jT*ss%\2% GcR8Wtpx#4BC{_y&Ww*g 5Ps) "2w˕7rVh[ӧdl6W/P7 ɐq iRҷv| R7G>"ܷ;؀̭VxCZW!$G}i7;K=9]ϩKA6e }3Nʛr>6V(dJR9IH'N30d VϨjr[W1WJڠOz^U-Xwlk"4W~((5;-.AVsՈHhUeT-͆\^au]$&&rqm(Sf5r)/q8w/˓LDuwtDի=2uL^-}={373t^ds {'NWҠW{+I R‡{_q׫=2/G"VrB PYNrJΡW{kxө)VF YǦS6據 \>7EnifaG]wG?gh[m5Z~甜cVGVfFG Fu:zG9UsάސO>Ug'vK.%//_|S'µ? B.SW{Юey;܍Bvg>o1wL'-Ԟx8%z_l@R;ڇpH8U[JwyWI )1;d﷘i*w鎻:&5:- V0\>L|G~ ͌U@ p|ljz?{LDr&/8\Sc؀xs|Oym]j?/13o0YKxq4呫!zߨ3IIkb(De@h4LSԈV\9iGѢu0^_M`ƍ;ttV߾};wu;w$88Ei&Gxʕ+PUutرSu}-bZ۠Qj4Γ[I{(:x/ԇ6frsg(ԇ:Zxn?;ޕkگt Wف^{ߐ$g/@tw Pz4YG~jD*֭X, L&6nHpp0))),]Y)}ذar-W} 5^ix5j B}Tzڷ vcSI$}c)X 5V[A|yGiTL&GЫ9liǏ]ߥK~+r H8eskοG B <"6j(M/AAVGZ'Cn(nԬrMYAAYGAAD   MNԈ  ͨY]MHQQǏÃm:ͪnHKK6mвeKf3&ɱVEP8L&f3j2:FJeeb`4LZFVAA)QO>aՌ;cX/Xf gȐ!x{{?0rHnfΜI^^cǎ`0`Xl~~~l߾z ^ϻ˖-[xyǐ$ ٳj̛7QF}v2339p=z`Μ9 M  (DHO'I 5k{U+,G>sΌ3$͛$I > 0w\J߾} wݛ^{gymb0ׯ֭cLAAAVY兑>o=î]3 11hr9:񽠠VXAzz:gv) RǣAAS5yVm͙3#GСC@T::W'## 6d qxf̘ŋ矝:  L 󉈈`7ٹs'vc{LNNV.]x'xfĉtرӶm:SUg ,rP0¼"!k}wst*=Ojot?_^4_\0ѾeRP)ԄhX&!@P<4^W+ bh[ܗUVq:eVa|dh惟U-6 ɹ.IG%'[k>ĨYupa~7z-ZlIv{aL6pݻYb|S}GVVQQQlٲwwwή](--e޼y:c˖-|wdggrJ&Mo{zr({7:O灨(YMzkSA$8du \}RU麞~$+I9j8s b w;}=\P: &Nxwķmrrk<"yY,6bV\Yo jDo߾;vsΡG&bڵLF#/[:5p@)))ۛ': 4g}t 4m۶) 4 c_sZVhiĺcK*NO׊I7':6^ݮXH+l9Z1a>!~VYM? L\;4Ǿ%ƪO|Gr5c&SfOzK)U_#,?iсc_f U+8St1}c4^n8i \L©nі=OTcYϚ~{q מa(AL@J8Q9(Lj5) Ly,6̧{ FJ߆moee" ef8-|~9u=.Mc'h4XUdVE+ \ 9zuiYezKDw><^  /[]Ղ=xj^vp (>93|.!Xr~HG{+[BrN"=[ b {Mg|ʴZv!>Q LoS>eј_edTQ}3#|<XqV_%=oS>x~=[ _Vh(8@NnLd`Ld$$f.9|~WœzĐַԺ 2^TVȑu8cWMډA[Dx;Lp4xk I<;@oKMǼ׋ޑh1XG|U-֟/Web{zl+cxloכ)W_N9 M;oN՘c+Џ۾Fj!:yG9՞2hSggG>]zrھ54Pȕ3bdT{sjs8w/gpW;pMd*6Lcތ\XS+j=W|zSމJ&^Vt`Nd亂_/! 7$I"4).Lkώcg_ư;<"PޓJ.[p5SxĨY  H3h(VrGj)ҷA.SӝN&$պZۢ)I?hfe!~׊Tzwd)oDZ2) ^c L +yo  R?Up^.Wh\DT 5qt,Á?:ᾱ</~?&{hhAhwgv.RKVême(+j*or:{a0 aٜl6?΁p`ذju2LueeeNVb8#BÚ}Yci˳,Jw|׫=kw5+ #j9q7EnifarJα?scf[fڣʴ(J36`W\Աj3ړ!#{/>m%'/9Џ$Rr Hl93D? ·' &x,וvfľyc61SFJena U?+7\ezGEH}'^cDz~,c.5k0| 7?#Gf̙1vX 6e˖yꩧlٲ{ I0 ̞=V˼y5j۷o'33oУG̙ӐY$B=hQq?x1er2VJVCyyxY=a}GVVQQQlٲwwwή](--e޼y:c˖-|wdggrJ&M`"  M)jD{d2q9t:dΓHDff&FVZT=T'@ii)%%%x{{_ 5{AAZc9z43k4ڵkG@@@LFPPڵjAA}DAAAhrMG,ԷFDAA'jDAAAhrFDAA&gV"?m۶ufFqq1mڴe˖fL&cVBp|7LYj5eeeuJbh4V&ZZ1  BSjկ˂H}OXz5cǎeX,\"k֬a 2ooo~Fw̙3cر l6˖-Ϗ۷SOywٲe ?<=$a0={6Zy1j(oNff&~;G̙3Iz*Nj"#~NgTc"WpoS%Kt L(eJjO[!C nk[f!9w%:DrMTZ?]CZDHO'L:f͚Ş={hժG>sΌ3$͛$I > 0w\J߾} wݛ^{gymb0ׯ֭cLr9:񽠠Ozz:oKiMHH ,,k['BٓuǖU%:c}R~LeJx:ȇ(5p;[}߽eVO|E2Nn4vMb*=c&W0dcUʧl>#J1a)qJJMO,B[L&wlS9kR'ap0\Mk<2>ڀzBCRUtV0A|scxC*~;-ehٙ"$E{8fԥdE``nUZjd29_Hk~Sߣ+u&}G8sk96Gb_!8߀m9ӵJr Mga>>>ӲVwԚ*/}l ' vcvl_ҩ #Y兌>+3gGϏCRtt8NFF6l`ɒ%Z̘1ŋ?;uƕpr5oly9(>i s8ILg(*G>T^^$$6v0}[nj}cgr k;Ffh[(1marp,S\Yr>!;NeZ37<)y=VWcN&:mS9+cl4s&oL 'xb^gGJ=t_p{269Jxk$+Osm֧?;Y=r{燸p v~G0%)-ޮ8SxiQ'׷pڷ+rmV'(|ҷaPX]բ߀UV\CWir$g/NuۆVwUw|~l<s` k;5_ͺF222'"" 0n8ƏO||<dΝvmf3999Z]t' 88'ұcjO۶mNA_dsy(%wHdyݯc]~m7R;ʱ\A 4Cٻ؞!M[Ma̶2{כ)W_}¸b<\WܻcW97G*m ҷf Pw4ٻ(aADYD M)difv35[.XvԒR4^uK3LӟkWvS\ wraW֙a1 k9y9ϙ9ssaž>=8{!̭L/-ڕxSb^>οa85e({9֔ay(*BQ˜ʸW<'_17QqbcG*ף鰷'!!0uovظq#}'11222o߾L<#FF6m͍>}pArssfHG\\[l!== 60dL'DuQɰ=^':?nx?/R՟oR;yD|Jg籷w ^g6m)OZ}_\Y1&0 ^ۈ}3RbopqpcPi(&iT׹u-z)(\ohK}oW0ZW~&,ۚϣs)QT<89ǭ#W/™ktjcKt҅sΑ+CRٳ'$55MNN<}=z୷2=z~.|USҫ= BҍS}aaFN ~yT+8WcLz#{8=ޙ\Mvcs{@zwoiV\P%r` l6|m.skxVHoH^ƴ}{u1<]7~-8[뗵cP(@w{+Fe(':= \U z 8Wn]cU|妖fm,mVNeb2^6]_?&ρ廓63X.猜ddePSiP)kX:V<Ε;Iv2%ynoGͣ BH>\Lѝ>y‡\nk5uZu]|x3f樲pqmMglwλ{_?gM+k%5=+ZGO )&_|?4,o5!2zGt1}WwS۩ѡh[.nt}o?ES3HH@)4ud&SbΑ' J;?XsG&p4e/C6z]`ɝ3^7Gwj7=-s&_K-:͠M.<_;=*e-9- Y[qW#WrG}?U#IFv2NPY뗵,ձ{5e(,m2rQ;jd^\UWBagU#rEBc\U4hir-:rS)2/i.\Oev v~ 9)|(v4e{ޅ팱Tưu]}̆qWz0ZXYU=2UJYUg3(f !#ofͯ h?n4 yYBQ3ȬYeŅ U%V|?A8?'88'|DӇE1gzM.]stܙYf1eIHHk׮l۶Hʂ HHH **=Ze$DUJD !uDlZĉ@#V6l`ܹL0 壏>*BcVjݺ5yyy3tR۶m˘1clΏՑ^A'C!TTɆk_8///fϞMXXÇ-GZ"n̙3[+WiUZccciҤ Ȭ.Bzrs B!5GfΜɩSwDEE`pnJJJ {aՄ`z{(Ǝʕ+ٵk<"=wyB!D9[pI7n̢Eغu+{8pDxFCrr}-4i6mb?X|97ny6W+"BTs5G'Od͚5.ի9}aC;wnxT*aaa޽ )f+:==NS#Bf,Jtۓ`]vlܸBBB`߾}HLL ҷo_&Ö#HKKM6F>}8x DGG3{l||Jǖ-[HOOgÆ 2E'''INNO[B!Qlv>8IKdɲˏ+CPدIMM%//???LƕKNNad(((@VVqvv^zT`JBquDΞX5*(\<((m<( |}} 2"  (JC˗z*nBV#[B!D5 + !BQh!++ B!{!u IDATP\ՅՓvvvۣ(((@ӡ B!0BT[E Hu&B4{Tц(jHBQ}HHdeeqjժE```Cu:IIIdggӨQ#<<j'NXmذs2aC# 44>T< YݫuСCKo۶-cƌ9?B!B<(#R%"04F,bل1|p[G%44Dx;;;\]] oݺř3gXnW\!22ҪҤI4h`c.B!#b*)>Fkq3gԩSx{{ӻwoppp0 87%%%={zj0>**cDzrJvUbPB!YUJJ 'Oq,Z[2|w΁Jh4$''޷hтI&i&ϟ͞/**˗qF7onszB!jtN<ɚ5k =<<   WӆbܹQT{2\!BOfͲJbt:IHH0Lۮ];6nHDD!!!o>ILL$&& bcc۷/'OfĈѦMpssO>>>%ǖ-[HOOgÆ 2BD!BRf)6}Vܤ%VdJzʛYe]G$??d\]]W^z=燓ɸrssSV5bS'$B~rŇG W:/zBUqRt!*ACףQ(G!BXGVVBT[Ez=Z)j'BCƈ!-NGAAVk.: !U!^OAAZZ^ www\\\uwBj@BTEZM^^JUB!YGyyydeeU1|vZMnn.YYYha0[ th4j5*A!deu|nݚÇX1=>>ݻӯ_?سgNիW>|8Çŋ7fZlɦM*&B<Ƅ8;;+B!D5%="6xiժaÆ{K.ۗΝ;3йsgn߾hԨ#GdȑlْW_}u Nپ};#F< 0h4zի'!ޞիW3c ~7agϞi۶}MV<%BTs5Gkyk׎HƌcxD֮]KRR *)tBQN5GkyM>7n*.''Tnʹs*|B"BT5G^F1ё/3gzDݝ)S0}t^z%! ) t2BQN5GONff0mڴ7>0ʔ)2w I;.BT#ЬaN8V%11X~pssO>\z{{ӦM#&&,>YhY-Z͜9sP*a!B!Qlv>8IKdɲ/!Dd'͚5T !A(og^fU!B!dB!ɬYB!BJ'="B!BJ'="B!BJW="UrdeeqjժE```5 t:IIIdggӨQ#<<|???Npp0O>$DGGӧ-bΜ9ݛ.]CΝܹ3fbʔ)@׮]ٶm : @TT =zBG!B2zD1"jN8>baΝ˄  P>R( M>fu֭[Gpp0C-m۶3!BY#^xyy1{l>|8-GZ"n̙3[+WiUZccciҤ 41B!BTM5z֬dz,7sLN:7{&** ÀsSRRRسgW&,,ᣢ;v,+Wd׮]% !BQ[pI7n̢Eغu+{8pDxFCrr}-4i6mb?X|97ny6W!BFɓYà ѰzjN>m!Ν[*JEXXw.CʅB!d,T*֯_NޞԽڵcƍDDDB@@#<g2rORҭ۞1mߡW2h~,y.:ϋ!2 2SBt#b˗i&ϱcjD6o̼yիl߾p Ƅ ̤$$$Xf oRXp!qqqL6ǣIHH 22y''55sq:t̙3+tf4qs:0z7ߋDĢ3hJ{wqSޤN+Ǵ<6<p:Do>ϴxHےG#.v z,:_X@P`+9BTo2k 4i7n$22Kz/bcc8q"[n/ڵkOҶm[ٱc,Z޽{ӥKKΝ2e L2fȑ899ITTiӆ(f͚eBm=+{x ?oIbY\fA#Wsgy:{ۜ^?U#?O&S׎tHQχCZ 9BMzDlZĉ6lܹs0a~~~𡡡|GQ(|^[&//`6lXj۶mi>!Fױg8D!Fô۞^^i7<8>7}q=+=x|8ѣG -WWW[nq֭[Ǖ+W*4i҄ ؐC!Dy\dydzУDnev=z]?lg\I-s3r$xw4l?y=oOvh2U4ՌGI3(ƷBa3,'Jfn*_&t2Vѳ +=@ !F!##V-4iGߟf͚<_TTeʟ| ;PV414wE*7f`qѯ 89}-gW1bkWft[Bav n_ Уkr'yVAe2_@AYk5~O¶T`x!՟n'Of{Fի9}aC;wnxT*aaa޽ )BTX9fS5*9=. Q;#u;ܳ =b^qstgwУ'= -Ѳ#B"78;_ӲZߡ,=>:;mS->y&#ئcB<*ceGDR~zt:$$$m׮7n$""طo$&&CFFۗɓ'3bhӦ qqqѧOO?{>}<==y z[oe2=z`6_a= ?ɦ3+xN<˳cpWzاX 7Gwk|{j GZyXU캰NͫfJo7p45ώ)[ !xUFbӷkMJl\l%KDo,cDc(]=6wwiǀ#xl΢GZ:}9) ꇃH>P㒞}GuJtgkթu&fg/VG"|{ḏi͆urpSS߭~Fh=Ogoi3n7Gwi!p1kVlurstG?%[suݽ/ += !N#bq6K$999t:TS{a[vv14 j svv4 trrr*0{< d T[ BتFnaMIϞ= ɉs2n8ԩÒ%K@ӷo_FԩS ~WL4 ;;;~NСC4i[7 .Ą dРA3x`ƍWBUNBQ՘{) /a޼G0,XIhڴ)ׯ_79v 4`ժU7L;n8z-&MD`` [laܸq :~˗3x`C# 88'|Dؿ?n*gB!xj:"exb/Yd jxqP^=vz*BgB!BT#R" KQoxֽR\r@"""XjU0֭g|V믿2c 8`SB!jܬYzHV{_cRSSy뭷8{,6l ++D;2|p^y|I,۴iSFe'"B!DuWzD׳sN,X7|Cǎٸqc0͚5Yf3&Mm6q]zF >>>+2B!j\H^=-- GGG<<< Fe,(ҥK&W>}:%988Pvm{KB!@511c̛7ʨQj$%%ѸqcN>O?ܹsQ*2k,\]] S>Slذ'NjILL 663gÍ7x뭷j>}B!B!ăRf)6}Vܤ%Vd k_y |lɞD!BT/rŪh4BB!xpjzLK!Ba;k!BHB!IB!UFHךKa9%fGϙc{ vU&lRF<g:h?qc_ܹe:_UVU5| t:]:y￟_oV/7kbB1>=M%n߾r2R7?n,:>kYE](5.}"<[-cǗԘYcǎHs= IDAT/ڵk_;SɩBՏ?G1孷֭;,&GNb۳|r6lx.&]#н[w>|2N:Vp| ||iѢOGtލ<6l7&Gk-њhq:ߠ^z7uiذc>`6AA6KT,B+jx?uT"FEV4 t۶1t0""FUJ*-u>77_~֪rͬQpS[f*ց?ra^~eFM.] !/Nǂ|'ҿ<<<wag[_O=՛QFyz=11[p|&'7D4 $5*/2t:6ȏÇprrgѾCvi4ey E|||Jٙw02bbb8qɆȡÇ͍Cc_>/A JbgRLL ǏFff&/4www5ygŊ֭;;wlڵk<֫O=տT,esf7o`ߖkp-#1[~We駋=z * }P)޽[{17*((`˖-9rBANuW__ GGGVVb*CC$7'ϖ/gŵl///7nL׮fe#+WL^117~<|4CZ->S">rEXlm6/6y_T7l`a±cǰ{Fo\ܶ3wdttFÙzLK1Yx(kݫ!="8 E|wqiYPjZ5\\] W^=Ο?Ofprv"u7˜apqva_>ƌ͗kQFfݹP*ʰݔoׯgΝhZn߾w @޽WW&i&>=h_:ZMff&?g#Z51ݻDHHk9le~T `6ӽ,h'Aڵk?qb8װ,y,b>' _e.Cvvv昊,T*bKg.8q¦)޷.]޽{w0ZcPtsXXY2w|=E~yL#\]CXb_֝,Z#*;t~c׮?TX'''j<ߦ?ŋ1^˗tt@nnFPO?]DӰaCJ'n߾۷Lt5 VˌMgڷoπOLϞ1P*FQWpeq-v='}>|t:uD=oo>sghaoVpʶs-s]|%Ffͭ*kXQޣ[ʩ"E,[M41m֬W._6yNSu tpbKe6UlRz)o<;F)갩sYSdԽ;FD!iRȑ#tڵľG.2>>(J._DӦ|14iNLǗ:unFޛ.k.bn5>7YL t̙= >d{x뭿sq,YBNNkE\\sOo;qu-SN:|tf|ozٳgfQ|C7WWhM8sek<:vh2GΝ;M5o}*KCcr2ϒkҖnYYwJcV=<xzyXa뱞&Ef{fL j⣏ac\\\=g?x/XErr aaa3m۶__\]lz,CT-Gk=5U{1ͥ=ϡ[ղeKAÆ Yl96|V1>Kt+*`rw ˪4,_Q'bu8SWy+ cyoS(i]r½~c.nk[Jwg`ڵ8:8Wg:tLkYj.M}{cD۵&%6.Y%VޗVjW c4k֬SeZ&--~VHOK#_ת/zd JMMESjK))888PۻBmL kWVKrr2uxX|.-GSL0_nn.׮]ϯ¿Rʣ<>??Ϗ7o_.deeXSܸ~?Jg\ܶSt̬pY eUQcig/JCDQ6DA_/͛WD5iqLj={QB<<]|LQ3 Et2*R5GeB!x( ._+iQkHCD!BQ!B!*!B!*!B!*!D5F1?##Z]x#knmMU{Un߹s *ZW"++˪U^AKB-]qc &GN2^ղO F|}IGo?n쫜;wTuv%YwkÕ% y**UuXVպ5|2pOiS۷T=gN=y8&|V[)ϵJgUc,|e:"BjbEZ>ݻu*˗-䩓,lW^7ϗ-ZVFr >`6AAza4lOOO6k^Qed, y9e}6FD(kJ9>}=zҭ{7t"2338EYSki!FѾCz=11[p|&'-7D?˗0`|OO/W_w4,\ORRR֭{>nnne9BSN !xʚ>N͛9rNNN< eo^7o_+>zcR۵k'obuxzW޴obgt֝;s5Ջo1`mMǺupI<=ya07nlV=z]dff2gN7u9t ;v ++4hp-#1[Jy||Æx>޻OH0oJJ }yy˸1a8 ÇM_fqrr&$5]>My/nkL sХ<3Y>[m۶ZL4XSO:SN1rd7WիW֘кu`ͅ3+W0ct{B۶%;;xbe^n]>^qm/^IiumKZͅ5WGޞ6ԴT"""Ш5lۺ9-[ˋƍӵ룸Uj9X&eKEwoKWϪǖ?kҵqrrr a;:W\ѽTxBrم}q3f4_F uᗣ[ҢE r2iim׎?~k;wf͚{d(z'Np!zQ"K.w^v}m۶Dk%}W\e=|5M6:7 CV̤?qYyk֬NN!$ux{qÆ7'8i7 X8v{iӆēl޼'#FD߾}m:pjQTt n̛7o??#}dcJa;՚Γį޽'''BBZsaeyxSeo&]mnP[K-RZeXU/ (r π8:}ZBGԲ0RlZS{s( IsrN)~'/9}ߓ,}PPoƸqR}dZw,_l?=JKKQk0`8^*+Ř0q"`߾}70o|?v s-s^}ޘ˝GD8!ni̙牣F صk'Vxü>>>ڎ766ۣV8 YYY(--Err2뇬,ARrƯc~EDDDwmS.\ш| @:7 DFFBAuu5H-ĘƢ ?_vֿ|DDD~:%MQQ|bu=z 1{]ĉp…[,Xm[bڴiؚ9s[غ$W9OA~>DDXmbcoב뒉+#sre dI,2E}e2کڽ֣uslb>kZ""ͧ V4(@)ONNѬ(+-ŋx "''O=䲂 tNG#2R(O@|EŮ g:WTT~;vƎ"Z-f͞nr[HL  S|***p;l@O]XnWXd)Ξǎe9ҾRJi:{;*YWxx8N6Z:gk~!"=|}}2E&wBLL FJ<*<ԓXx}ƤI1e-^jEEE#F ,,:h/ԵG?Th5h%7?V7|/>czcn;r#!! P!f ,Y_[֭#Һ P.+G[9ȭ^ӫQXXӧcDnK7g\:/ 2&Pk+w{mn2=HS<@3mt˯/ ** !q_ޕ`bO]Ĵ߮ aƍظ}rQWJ)[goG>kZWJ[QٚGDTiB\\7 $yXbcc8шҒ465!,,L`@BӡO>VR_](Ƈ)'/"w6qb477#44F|"x{{HENgϺ o-Np$G #:G_l>:~ aaaJA h>9kMIg}}=.{^(]\ɑ\RR5jkkq[;+!99y<"BDݓځwJe4шG]ATNfy{\88RRw^oug2K(x{{+3/6X5E/`MmHYe@Yd{猾W^uɕEi_)H:k;*}Ku]3YDDnV1qҤNlHY]]#*^ŒK1cL ˱OUxh)):兇-4\w""""""sDȊi0HL1V{,"""""`1YBM=<5++BYtzy]1Mn̈DJƅ-P.9{ IDATR9[܊Nn zņ]xuK{c7n0}$ ^_71~L9%>w J1/kozcK=s6yq!-'`q“i 2R06b[ ?BRadx̎] 0 ؑ?w܏!6`ߌҺB̈ç`l ECJUX[s6!R> o'WK+3\i(31=zT3"F܆P]/0]ފ@DDn!u'ه*GD[*"ej}hZ>[Gz5ü~rdc<1E׎lutYe>ƜإZzx ƄYXy12v>|k~\^>A{o),c H> {'㮘؝2,-qdN9FDD#6ptuS e}/_܆܊3 X4d%pU#F\/US|95z 후O`/`e&VvAydEڼk{% pl'~:@2c< ◙A0kP/'K2qg"Yexsx"o"&Jm;3f((.?.;74B,]:VO A@}K1m~XNvYG>q1(a,G&hZރADDctvp BDЅʳȸOfRRӮO`hbhwێZVcyZSK,viPTes?o=}YEKQA%T9eDmv24Ul탪+VӪ*7Hq.DD>F笢PhP}[DCK=]3ah·ct@n Nm+p9eCf &}*ZMkZPR[-K @E}, ٙj}G(M^_Z-Ǐʛ!n'.h&w;&8}"`= >;k 09r&4Þ뇞sA(,i| [nZZglk&/f>/~:M/Þŝ1+Cg˺7og ],h{]3`ZVyak?NxoYNàmLSvڅ R?nxo6?Dtc;s3'8\?NJZIm8c k/Opk: l(G~ */e PlȇZyW_llBnlmAUcN$՞V3ŌuzDD$qӷrrxD/[vn9_Z)TGN738,[toHk|+% Av!\+Ȼ\*)r2ρuȯQX3c֛o9LDD]G "r Or֭{j >ӵtc #B){n-iV}X Qq:9v6z!FFFFSTr{GzZ#"DtOLg'ꩺ?M,{ v~=#v[7v~=#aDm‡;W>RUzZ""""""w5"DDDDD~q BDDDDDnǁ"DDDDDvq BDDDDDnǁ"DDDDDvq BDDDDDn1tlxoD +_s BDDDDD.e9yчp BDDDDD.~2t^s BDDDDDN'58!"""""'"""""r:{^#BDDDDDN%gkDi BD BxuA!""""NS:1V ]2Tƥpd_IENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/window.ui0000644000000000000000000000427712273255454031574 0ustar rootroot Window 0 0 800 600 Web Element DOM Traversal 4 4 http://qt-project.org/ 0 0 800 27 Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea Document Structure 1 4 false false 1 QWebView QWidget
QtWebKitWidgets/QWebView
././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/domtraversal.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/domtraversal.pr0000644000000000000000000000034212273255454032761 0ustar rootrootQT += webkitwidgets network widgets FORMS = window.ui HEADERS = window.h SOURCES = main.cpp \ window.cpp # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/domtraversal INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/domtraversal/window.h0000644000000000000000000000502212273255454031373 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 WINDOW_H #define WINDOW_H #include #include #include QT_BEGIN_NAMESPACE class QTreeWidgetItem; QT_END_NAMESPACE //! [Window class definition] #include "ui_window.h" class Window : public QMainWindow, private Ui::Window { Q_OBJECT public: Window(QWidget *parent = 0); void setUrl(const QUrl &url); public slots: void on_webView_loadFinished(); private: void examineChildElements(const QWebElement &parentElement, QTreeWidgetItem *parentItem); }; //! [Window class definition] #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/0000755000000000000000000000000012302205261027675 5ustar rootroot././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/fancybrowser.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/fancybrowser.pr0000644000000000000000000000035312273255454032765 0ustar rootrootQT += webkitwidgets network widgets HEADERS = mainwindow.h SOURCES = main.cpp \ mainwindow.cpp RESOURCES = jquery.qrc # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/fancybrowser INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/main.cpp0000644000000000000000000000444212273255454031351 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" int main(int argc, char * argv[]) { QApplication app(argc, argv); QUrl url; if (argc > 1) url = QUrl::fromUserInput(argv[1]); else url = QUrl("http://www.google.com/ncr"); MainWindow *browser = new MainWindow(url); browser->show(); return app.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/jquery.qrc0000644000000000000000000000013512273255454031742 0ustar rootroot jquery.min.js qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/mainwindow.h0000644000000000000000000000525412273255454032250 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 class QWebView; QT_BEGIN_NAMESPACE class QLineEdit; QT_END_NAMESPACE //! [1] class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(const QUrl& url); protected slots: void adjustLocation(); void changeLocation(); void adjustTitle(); void setProgress(int p); void finishLoading(bool); void viewSource(); void slotSourceDownloaded(); void highlightAllLinks(); void rotateImages(bool invert); void removeGifImages(); void removeInlineFrames(); void removeObjectElements(); void removeEmbeddedElements(); private: QString jQuery; QWebView *view; QLineEdit *locationEdit; QAction *rotateAction; int progress; //! [1] }; qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/mainwindow.cpp0000644000000000000000000001734412273255454032606 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include "mainwindow.h" //! [1] MainWindow::MainWindow(const QUrl& url) { progress = 0; QFile file; file.setFileName(":/jquery.min.js"); file.open(QIODevice::ReadOnly); jQuery = file.readAll(); jQuery.append("\nvar qt = { 'jQuery': jQuery.noConflict(true) };"); file.close(); //! [1] QNetworkProxyFactory::setUseSystemConfiguration(true); //! [2] view = new QWebView(this); view->load(url); connect(view, SIGNAL(loadFinished(bool)), SLOT(adjustLocation())); connect(view, SIGNAL(titleChanged(QString)), SLOT(adjustTitle())); connect(view, SIGNAL(loadProgress(int)), SLOT(setProgress(int))); connect(view, SIGNAL(loadFinished(bool)), SLOT(finishLoading(bool))); locationEdit = new QLineEdit(this); locationEdit->setSizePolicy(QSizePolicy::Expanding, locationEdit->sizePolicy().verticalPolicy()); connect(locationEdit, SIGNAL(returnPressed()), SLOT(changeLocation())); QToolBar *toolBar = addToolBar(tr("Navigation")); toolBar->addAction(view->pageAction(QWebPage::Back)); toolBar->addAction(view->pageAction(QWebPage::Forward)); toolBar->addAction(view->pageAction(QWebPage::Reload)); toolBar->addAction(view->pageAction(QWebPage::Stop)); toolBar->addWidget(locationEdit); //! [2] QMenu *viewMenu = menuBar()->addMenu(tr("&View")); QAction* viewSourceAction = new QAction("Page Source", this); connect(viewSourceAction, SIGNAL(triggered()), SLOT(viewSource())); viewMenu->addAction(viewSourceAction); //! [3] QMenu *effectMenu = menuBar()->addMenu(tr("&Effect")); effectMenu->addAction("Highlight all links", this, SLOT(highlightAllLinks())); rotateAction = new QAction(this); rotateAction->setIcon(style()->standardIcon(QStyle::SP_FileDialogDetailedView)); rotateAction->setCheckable(true); rotateAction->setText(tr("Turn images upside down")); connect(rotateAction, SIGNAL(toggled(bool)), this, SLOT(rotateImages(bool))); effectMenu->addAction(rotateAction); QMenu *toolsMenu = menuBar()->addMenu(tr("&Tools")); toolsMenu->addAction(tr("Remove GIF images"), this, SLOT(removeGifImages())); toolsMenu->addAction(tr("Remove all inline frames"), this, SLOT(removeInlineFrames())); toolsMenu->addAction(tr("Remove all object elements"), this, SLOT(removeObjectElements())); toolsMenu->addAction(tr("Remove all embedded elements"), this, SLOT(removeEmbeddedElements())); setCentralWidget(view); setUnifiedTitleAndToolBarOnMac(true); } //! [3] void MainWindow::viewSource() { QNetworkAccessManager* accessManager = view->page()->networkAccessManager(); QNetworkRequest request(view->url()); QNetworkReply* reply = accessManager->get(request); connect(reply, SIGNAL(finished()), this, SLOT(slotSourceDownloaded())); } void MainWindow::slotSourceDownloaded() { QNetworkReply* reply = qobject_cast(const_cast(sender())); QTextEdit* textEdit = new QTextEdit(NULL); textEdit->setAttribute(Qt::WA_DeleteOnClose); textEdit->show(); textEdit->setPlainText(reply->readAll()); reply->deleteLater(); } //! [4] void MainWindow::adjustLocation() { locationEdit->setText(view->url().toString()); } void MainWindow::changeLocation() { QUrl url = QUrl::fromUserInput(locationEdit->text()); view->load(url); view->setFocus(); } //! [4] //! [5] void MainWindow::adjustTitle() { if (progress <= 0 || progress >= 100) setWindowTitle(view->title()); else setWindowTitle(QString("%1 (%2%)").arg(view->title()).arg(progress)); } void MainWindow::setProgress(int p) { progress = p; adjustTitle(); } //! [5] //! [6] void MainWindow::finishLoading(bool) { progress = 100; adjustTitle(); view->page()->mainFrame()->evaluateJavaScript(jQuery); rotateImages(rotateAction->isChecked()); } //! [6] //! [7] void MainWindow::highlightAllLinks() { // We append '; undefined' after the jQuery call here to prevent a possible recursion loop and crash caused by // the way the elements returned by the each iterator elements reference each other, which causes problems upon // converting them to QVariants. QString code = "qt.jQuery('a').each( function () { qt.jQuery(this).css('background-color', 'yellow') } ); undefined"; view->page()->mainFrame()->evaluateJavaScript(code); } //! [7] //! [8] void MainWindow::rotateImages(bool invert) { QString code; // We append '; undefined' after each of the jQuery calls here to prevent a possible recursion loop and crash caused by // the way the elements returned by the each iterator elements reference each other, which causes problems upon // converting them to QVariants. if (invert) code = "qt.jQuery('img').each( function () { qt.jQuery(this).css('-webkit-transition', '-webkit-transform 2s'); qt.jQuery(this).css('-webkit-transform', 'rotate(180deg)') } ); undefined"; else code = "qt.jQuery('img').each( function () { qt.jQuery(this).css('-webkit-transition', '-webkit-transform 2s'); qt.jQuery(this).css('-webkit-transform', 'rotate(0deg)') } ); undefined"; view->page()->mainFrame()->evaluateJavaScript(code); } //! [8] //! [9] void MainWindow::removeGifImages() { QString code = "qt.jQuery('[src*=gif]').remove()"; view->page()->mainFrame()->evaluateJavaScript(code); } void MainWindow::removeInlineFrames() { QString code = "qt.jQuery('iframe').remove()"; view->page()->mainFrame()->evaluateJavaScript(code); } void MainWindow::removeObjectElements() { QString code = "qt.jQuery('object').remove()"; view->page()->mainFrame()->evaluateJavaScript(code); } void MainWindow::removeEmbeddedElements() { QString code = "qt.jQuery('embed').remove()"; view->page()->mainFrame()->evaluateJavaScript(code); } //! [9] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/0000755000000000000000000000000012247412261030452 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/src/0000755000000000000000000000000012273255454031251 5ustar rootroot././@LongLink0000000000000000000000000000015700000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/src/fancybrowser.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/src/fancybr0000644000000000000000000001403012273255454032616 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/fancybrowser \title Fancy Browser Example \brief Demonstrates how to use browse web and manipulate content \ingroup webkit-widgetexamples \brief The Fancy Browser example shows how to use JQuery with QtWebKit to create a web browser with special effects and content manipulation. \image fancybrowser-example.png The application makes use of QWebFrame::evaluateJavaScript to evaluate the jQuery JavaScript code. A QMainWindow with a QWebView as central widget builds up the browser itself. \section1 MainWindow Class Definition The \c MainWindow class inherits QMainWindow. It implements a number of slots to perform actions on both the application and on the web content. \snippet webkitwidgets/fancybrowser/mainwindow.h 1 We also declare a QString that contains the jQuery, a QWebView that displays the web content, and a QLineEdit that acts as the address bar. \section1 MainWindow Class Implementation We start by implementing the constructor. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 1 The first part of the constructor sets the value of \c progress to 0. This value will be used later in the code to visualize the loading of a webpage. Next, the jQuery library is loaded using a QFile and reading the file content. The jQuery library is a JavaScript library that provides different functions for manipulating HTML. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 2 The second part of the constructor creates a QWebView and connects slots to the views signals. Furthermore, we create a QLineEdit as the browsers address bar. We then set the horizontal QSizePolicy to fill the available area in the browser at all times. We add the QLineEdit to a QToolbar together with a set of navigation actions from QWebView::pageAction. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 3 The third and last part of the constructor implements two QMenus and assigns a set of actions to them. The last line sets the QWebView as the central widget in the QMainWindow. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 4 When the page is loaded, \c adjustLocation() updates the address bar; \c adjustLocation() is triggered by the \c loadFinished() signal in QWebView. In \c changeLocation() we create a QUrl object, and then use it to load the page into the QWebView. When the new web page has finished loading, \c adjustLocation() will be run once more to update the address bar. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 5 \c adjustTitle() sets the window title and displays the loading progress. This slot is triggered by the \c titleChanged() signal in QWebView. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 6 When a web page has loaded, \c finishLoading() is triggered by the \c loadFinished() signal in QWebView. \c finishLoading() then updates the progress in the title bar and calls \c evaluateJavaScript() to evaluate the jQuery library. This evaluates the JavaScript against the current web page. What that means is that the JavaScript can be viewed as part of the content loaded into the QWebView, and therefore needs to be loaded every time a new page is loaded. Once the jQuery library is loaded, we can start executing the different jQuery functions in the browser. The rotateImages() function is then called explicitely to make sure that the images of the newly loaded page respect the state of the toggle action. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 7 The first jQuery-based function, \c highlightAllLinks(), is designed to highlight all links in the current webpage. The JavaScript code looks for web elements named \e {a}, which is the tag for a hyperlink. For each such element, the background color is set to be yellow by using CSS. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 8 The \c rotateImages() function rotates the images on the current web page. Webkit supports CSS transforms and this JavaScript code looks up all \e {img} elements and rotates the images 180 degrees and then back again. \snippet webkitwidgets/fancybrowser/mainwindow.cpp 9 The remaining four methods remove different elements from the current web page. \c removeGifImages() removes all GIF images on the page by looking up the \e {src} attribute of all the elements on the web page. Any element with a \e {gif} file as its source is removed. \c removeInlineFrames() removes all \e {iframe} or inline elements. \c removeObjectElements() removes all \e {object} elements, and \c removeEmbeddedElements() removes any elements such as plugins embedded on the page using the \e {embed} tag. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/images/0000755000000000000000000000000012273255454031727 5ustar rootroot././@LongLink0000000000000000000000000000017100000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/images/fancybrowser-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/fancybrowser/doc/images/fanc0000644000000000000000000027735712273255454032606 0ustar rootrootPNG  IHDR<oZ IDATx]w\wGoұ+`؍bbaJShTذ&(ň`EP8nw~ .'Mzg?073;;7of!U * lLٟUG^;~!9CI鳊xgZ鲎lCG7ϙȍ~{؜ĨYYɱcmW|7n56_ zjDt72ʡk =ugEz+//`~$l%Yley!n\| 0yѶ|a׸]?]$>PYr KYr io3Y.8}̳2@Qsg1Ћ}{CQedؿ_!11L2 (]H W&Yט'v .[" xp8??_UUS\BqHFԩSΝ[B09f󇮈NJHHIEŷfOL?ZZ5kPe`2TGfǁϘe||< Q*6/S:Pqqq111Uڭv]i3*b-Ggɮ~}vX~}%3ϗIEݳ;Ed%z@~j۪5Taaђ)ӧOr-@,fI'9:df?WTT?< ȝ;B6^=Wp1-1߫=g`2{^khV#ZKn>Td!A__Ӂk%>[פl6fs8~[Dχ\藸 !3b78pG>{lݺu7od"i*ݼ [x1w'Oz#蠡 ck.URAm`Ŋ8rÇS29ySŅ*ƛ'aӦN{w[Y˱`P\Trܰ0!<<ծ,6]ߜ_ <yhŭ^%#hD#!|!߆6—=rJ{{{@߿'Bι doo+ȭm;1 >OR;Mw;[MZU=.4[B+ Nt 6ꎗ"<؀Wnhi[X}ߚ%LG홄G D<Uɲ]cpO|dQZ^gC#j] sQ::$Y !*c !Xhhhdko7{|-Ͽ368|9lU5|lP RDr-M+vՆ5NFQ{Հ6~]z=G cP yP^)aF-w 3t5 r]}]EM1Pv=DwFu KXabxnVƽ E5ua!sḚ~=TNXJ4\7v$=+Ѩ&ZiCk~ K4)*lMkNbK<:6Q DZQ:g7g%f |*@g1a PWV"=AWWƚeFFr%''tlQա!`^9Em"71QfAlYEs*ݢM^|)io]QV )RM1pl38,\CIǧ Z3Squ7!Qb[|/;WOKq6n#35%/+'=taSwR&ouw>9@XJMZXUDUXNzlnɋ}Sw:,QoNYյ#? =/F830>~.Oo3gۻwkwY- 6,>>0+V+,**RT,qib8wAkv3[jv7[O_XP`` q1!t1(geesĠ)ƻT5nxg|A "B>s먢R2XU.(cR4G7Iye|ACCcȐ!@![ l'"{v3dPUcXUY`=bR y^R;)iIjp!C\? *ӦMtp曧O]{#UGR RR߮zIU(}BF B{ׯ{}&czz۷nٲ_044QQQ3fҥ 9zh˒U!!>oF4ljEE"GNMUJW4Ff,##6"Ha߸q:6v@}sIrҙ\.# PRRXOb#؜EUjtrguwU"666%%5%%ԩS8kEQɩ;^Y=0w}0A1=P7ٔ}!uSB Ƶl~ͤIaԿ-xGV>srKTE;b-;1iA>$yw tfrGPJAG/+-fPC9ܹ3˹&PRR/A騯1KoNR{b!|Ӗ#tHN癙ׯ_2J`͸O=hYSsϿBDz;W{/ B\k^ |qFz[`?Q>M(TQVf zU!?߈F^.[[rlmm.]h"?k,ÁjIENkfffi_ zU%+癘+z 3/8wNUSSL¢9W^ q/iw=*PmW 螝TՍV}vJl5'>}byl8\qFSy<+$Ve˖a`ڵ .,W²e.\xzz:99} _Q07Tla).([TLytrQ#<džPr{0üW1t:AcVV ޗ4)Rt ӪI "T*l C3(W@1=G]`.yfFƞN8'Bرc'L,v_Y7#5W.}O[܎5x\w<ҥKw1 ,wYfBdBܹs֬Y+Vz'$TӍ4s_̗Qܹsjunl'=|I:[\QMk-92YpZ;bnyG94XZ2Q}Qߺ k ~3f HiAӠXr"[JU858;{{,??ϭ[ uuu8yr;|/\ZZjii]8fϞ:eJ\|7o:u꤮Ç>'jHWWRf-͵>Kw§Q},--Z[P4}'6執JHs7ӧ|};wZۋ$^,`JzDq=>f[}=T_O[džE>zOtczjGO"^TדYES/>?NټQqڅMJm|lKՕC3Nh|)7 _}8r1#qm\\ h"/Og{7Tt2 ol}:rGhh4u{uO=$IbTQ NԠ k'#D ]H-/G|rǹS{v>H)hyvj1nJkP40 5B6G&9n'њөro>֍Eq992y jZ鎨^ޜ|Rfvɧכjv ӗ|>ZFu'hINS5:r=8jo/(ȆvZN$ x$I4(:vvddd^>ád>d햑'e*po=?;)##U0&uRJWJ^\??dT렾]>Jjw腌 +0gVn}7 ú)*@GUtaVtY=z}p3L4cP>۷---o tT# u֝I 7oA241A_ `;J= 9] 9G ʼݿȑ******ǏuVY[K?4]WCt0}*yfxxQ8:Zߊ;v R Ӂ'[D" 2UPPWXXحk|]mlVNG[kv/ b =<<;m8*a1Gc˴,~~~ݻw)S0^8DŒ7t5 Eggэ%11Q,$YPPеk:xC3 C;a~ m"Z$?/ YŵIyfӗ!ϗeV,Ϥק1ދ/PC9Rh@ ?WYlϝH.">^,-͹\;w:&'+s؅8oIIQ>_˵(´,- +K\_0Ş>mⅦd97aHƻoE*]&)dh` 2ȨA5ؘǎ'%&QT}8::Θ1͛Hh.9s:66vŊ8'G@rr1~6 |X1cFा看-ƺ6~KN&Sܺߥ !Q]uK"1׭p/"[rd A4#K A!??RǙ2j5"kmoHtƍoy֔)ML>;X}!Eo t k&G5rjtbqq\͛*9A7ÿ9rG5Ҽq:wZGjHNNaLWhfs83fL/q}¨ww@@cш"$:mYf\ߍ5|lww" %`oç.C+ SXLX$!1#'GNQQQ;f_b-xA 4/)'''.kgguF|=ӭq>77w֭rX[r8 A3~}|| 005a1<% 2?]\LyɍVDZo(Ç]u={$2!>nAC*Z轖$wy~7$7"! J>{~Jm .vd ˗{{{z4*[ XLQAEMTL!I - ];ހzq~jjꉉjjj*҇e"%3vGOFC$fr*-!rݻ͛7hL4 /xݻw˥inܸ1;;{ҤI-8pѭ[p9cR:27El0 [cҺ0շ`mӈvDbIZc"PiSVM9>|*480L,IQStY r,9ڪ=rsx @|@]t l"0^v """p˗/˝3430'R8v옧gC%9fF}?hUHx陫Y ՚֝7 oKjݼm~0Mʻ 4Je/:AW[c3FgO#oXgzg1>]8PYD PPyހE/_ |'lll0HNNƁe˖>p\FqǏe:;;{zzΟ?V_=r71;\ =v3%N; 5XPfKJJNn/Ҏ}yW,ZD#2ư\{ IiCω`Ѵ}lh/ܶ'MCk MM m L$Ip{'μu?&hD(?pnពڑob{²ѨG˗BW^}=B(,,ѣL/_p~Q题_`Τs{ev(#Z=˘#kFB[Xs̢;¬Yvhs-B6ӄ8 &#X^YvhLO0. 45HGEFF:::5w.)))u֬Y<[4ՊxCS VVVgΜH$mOu84ҫě !V& *.UHljt}|XT+ܽۖO: X{3XC3 Po|V-dUJKKpll?CQH2eJׂ )}8)44^]VI429Sc|}noFjKDlE~r2r>_.<i.e:_ eq ro8B$$ύvoBfny0n#Lj21]yTFZZ3`W0jkD9M7-$._1͸}.+U.DoB~?{6BUM50o@2ISUyF%h }bܔ%=w|q_E9-^m1kns~E~_m8pمxb O4~:'ѽv tJ:h }Ƈ9-9S{QB Yj*joj1¬ ((a 4Ԇ,V$EW"k #W`HTB̨%>q-o5(5qw*+$,iH"6aQ3d\]uD2ʩh f<$X.#tӞn R:a7b7Ԭ] %"tH"Q$4L uMtvjKQS˧nOD$Я+ZВ #Gu =d"x>t[nѤ8}}GDK 2kFPMo57xCs[>69)xCMZs!MEMNM?chʖA&ӗP3XHG@M :/(ϫ)5d mZnzeU֖Ag7x lz ǡ{{rrrҳ*2&''C1Sׯ_By~ֳXdT/񆜜<ƄtVb*uԭ|lA 2jdS d CdLvE߾_ɪ=͛nWI sy|YM|R.&#nρb,\VU~k 3@Q%oI^I%)EWc)YD:I:!/?//?ĥ~_/pLUsV[w]muu׹f:Iou@Ct#-)>aW[wU-{*ںזּZ.iF링8ѵ#F_k ]fl& 0nC[=y"\\"W7?(URuNP &@gXr 7n/%X>K z /]N&/H}*)~֒Gy*sw/s:yK|x2@*1 ~q{ 4ָwyOc";=mHg@nmyC~+6t~5SI +_b#.VaV 5d%hwS (iūh?WRUP@2t|{xhM{)\bA^VGH `Ѓy #_Yݥc]fGC/!D+k st:ūiwRRJ%um%5-HSPVd-eJ") 2S:H.}h$3)FU sTE| =!BI]0_K(.S:?hu}202Ln&)ѡ */:tm4rz._ԷɨA}ΟQ'QqO*;7*32*PT\ގ2y>-ʯ(Gm\I[*4c \ or{lz䈯GUY~1GVVVVV] @/#C 7nP\\@HGzβ?w,{#ա $)}^F_#C5T2 UPad#Lj*E\A4M1}6ɣETwJlYl6[QQ9uꔬUFFFff9')2QWT[nݙ|ɓerPS=kM<\3yp{${NK+;uqGM9}y$kU:I'Oɱ;wWPm-D^^ۼ 28yuAA_aaرc~gC>{dt%tL ѻwH *:Mfo!|KtyaL۷o۷ISTWabQ k#G*,,;vaU/vWoZ*))=xt3gV0 /F:/f31k԰bcߵajBT,9xHWCRyvݘ>`StAAA;t$n`=g[8޽;Z[[!Ko]f}9 O!C#J2%l߾>ߺ_QCGfvRic-YF >_#sQPP0lp5advAx?IA#L WhJuydc a b^dP%f2ɓ'Ξ=:/\*TZ[P I ΅@I )'J阜Z>ݓixUۺuxy r-(i˵r-ZT勌˵ ՒD"[LZo2sftÇлw^bjΜk8R0XX| di舠#'S.aaZkpT2+4ZȴV9lp4)#LY 2 d C$s 2ȨA5 dh4j@y"<&&+u.喔̘1NNN'ysqqy٪UM#333\˗y<Ǐ}}}]]]/frb1*CCRB耷wbqFL=|e[ZZ:88L:֭[0uTرc͛,YҳgO///YGGN-,($HIUQNqo&T4p18$:u1WOmDuOA @FFF)((͝3˧HTP"H QNYNfa1pM8p8::`AӧOs\u᜘n TPG(rF|!. },{,! @,UTX7DDDSfﮟt]޷ X4e$s)+&}СCxdook׮ (79vEzlmeMnIi]O<"޿M@SN.s`C9!22;-˗{{{XAOE!g*mVoPTT$23+K^^N,MdU`|QanQ.A#g\& ~:$ؤJQ))`4=&lP`$BHP`)+U@~>5K6()9Ejr6}S+<@wAzV KriD倜./H$<[ry<^jj*,Y*,,+ /_~D"ÁGnݺVZ5gΜiGLt1u:F}Ml1 phgUU^xڢZ=3;/95]|".ȴ1c̤V36 ԜdI|YE?\f ;qe˖3gΘ1tPsb3ɓ'wׯڵ\y欬޽K[K.&&&+W\t)Sٳg]N1ڷӌeh} 0 OPUnrE $4%hB*u+s}'ۘ{85SOB-@|ryH$._<'v" `5?PoQf[\gOq ׯرc̘1&oX=mRh0ܼ"8NXo-U~Q)&9/9_oϿfio޿@ViӦ BXb G㫨}5 5\òNV$IRb@C =ls_4SSSqㆊ<ά#kec#9X]+pauE0s1k7u&>(M?VW^0]b<ߛ3"ڜ,i/27Om:1`mW78,0ٹ%rƦ'P ղ{Xf^._sly0$dсWui`ga񔻎{JQ+M2ow07k7'F&qDOˤ7]/[R.'EHنf-Kɳh1rBa&˙=BwY{a=E勧MD /xsL>B,F&Yx" 6C !\h r븇^=$x[\RX.<>ZOINK?\[6$|eNK@(""ɓD;;;:99,"377w8' gj (hHF4W25{-ph|҈K(mhwbg:wgyNO9nݺu֍W\x1֭{@ŋ$<6s[6Qa?SjpSTk]LH鹛4Ic zk$iEL-Zܐ԰iױnc AAN4Q)*œCMHH˗j%900ǏOKK: ^-X<|-V?O̺)[[#G888'كMWΞ=V_m{jBHB7-(՘Ԋ ɱ4f3a&Hmxa IDATF@ B*uD;8{ƍCNZ\\W.IKiFtҥK q@___SSrXp^pϏ cǎyIV0o?}ׯ nJk/=e1Ch(p.̻/Ka EV5scF B X$H,QP(uDgxr^0'7F(hB:񫣮f3zg)$$B*VLP<^znO7IHOEUCz*jaaϚ5 !pܹ5k899-]gsvvFIG޽!rrr©8 vŊAAAoF~jIh PRONHHv{EFFFGnūూwvvʔ˗^GXjNBBυ |񲳳222իWo޼eqOllo M@LVPz!]M꾫S X^)wK\u9U޽+/`iutw ;0MX])3I}{e]v'|F뾰gNۛ}:7n%l$ dڝB ]gVWzz!M=lhauYAU-&* J6Kc~b6fl"Ė>/## eyY%x1akNbXf\ӎ &۷ e͓mb u!caa!pqq)+&&''(}}}^^D=NT\"[>UEv5hX-mt > D ·,?ѷௐۘ@{& /O8,ͩE6M~&$@EO ʨl$j&xIE#ɜhD?9m%zyEO50dntEf P!h:vH4J[JOPd""IgqeiVIvT1¬-5a4lDUN)vs" V ]D,,*56ȱE^5U; fKtQ]Fu)V$v*<dmW^}elWZ$Eӕ^8_F80R܈K~T5չ -i3x73~af`~Rst$6MvR`S=H eEl mQh&hZ_QI'5 5BOW;Ůf?LWLMvGV*:@'4])t®A-Mv7XHކ P=|Peohz푨"GK1Goq 9e dT4;uBQ~~ڴ + ]&9)oX="*:8 &IfD4T'ZrYqm?Ӑ1}v)}eZ lyfDs5)$Aʳ%x|ARKkO.j~-Ɗ콲>3 C/3~I!AM ` 5bהaZ,_۲tZ6U677M.BQ+74}4ABjn51Sh~RDlFMJ)n,h6Wʟ!|sjeR3Yf# (_/??%K4%4kI4 yS3IAjC )}5,5/.jn΂otPQ}р"/? ` }"atb7i'O?T=:Cj5PQ hg,5פ<+6׷K-#:?Yv[ߥ#eo&U[ዟ/ 'ye^i2ܜi $VXa%xn=ahkHIz_.Fy~nHͨ325.a{20}z*gHEwHb/x؞}ƝuyPѳ۳P@慷cw~,/! (1~`ٙyffgyvf~n:o&7n_|nbQ OmnN0SAX;T`S{54 %-,m=IsLF6oءdu ȺlIݮDZ6>wS1A0oF癗]Y:{عxn֓==sާ8uF𲗏n8j45Ӈ SRקi穿44`Tf]>c)`6QN[6#Ҽ&) if5 \-˝xƶ 8{*|Ɇ=Ij!ƽɉmsC"6ڹ`쏃 ͻ >q`CO3L慪u3'0OPdg@燷mɾk $-w:8xٵ $bcvp~&~}ٲ0xȤǶvrߺ>'q+ak '8tBVЗ/ғ<~ouOzuױVZ^WwOoUON(N@b ܟY/.(H3@(uZl59rݥc@E ]NXw@雧w hmH&5'V̝lei9j~&ot;={7b K:.U`VN0{]5o66LX+=OܾژE{#l{RV]c;β3"k׬IZ xLDuFoT2{-8 f6V.ux- *Z n 9;Ri]^DzI  .@1i3[2# 4g$Jlڙ\Uac` ͞;L^1U~r'q5"֟:oU.!OFǯ9νq`ZN~{]Q@|F淍ʩ5IKT^ҹn>'pϣE[Xe`k iJ{!-!&-!O(EWy"[?pm R )Y^>[ 4C[=:LI2$7y/ó!1L;OwUlN<+LT`0e50-[4ׯ Rb޼y[ڶioSTsթ]kM7I&]غuKwӦOo+a0߀B?!1 ӺsfH M 2xc0A_^K$ ]Ҳ1uUɒɲ<ݻKK˔h֬mA3'\AM4gϞ &: d9޽{9oTciaK*eLmR)~$=u떉Iݺu֭kdddbbciiItdd^VNZU P;w{xxk.))$ɚ5k:::&&&={m۶mmS]:k3 (X7}aO]7,-BHeu;Ø4HR\.xRT*&''vUT~@ KJFP$Q /m/>" H*i4GG*U8;;gddܾ}[ \z5l~q匚ii}a]4MVVw]2l׮ӦF@n0}T%&yR{J9q`9ii!!h[QTfd<@?dl"CzҋÇkV U*;@jU_߾ii̟Æ3pٳg.5kP&-2(y>'~Jh}|RLLLj@Ӵk"I@[4#} Yy"86EAjil^^a``P pppKllԮU3.{jqRSB*jy~ֻ~G]n-{ "$H5j<ٙF4#ыA mdJ2surr013gwޕH$1/_1%C9/oߡroooR9f]vsS/A#׬Y[>KxװIէJ 7^:մ}QL&y&3گRJjnܸ>1W ! !>x[۷o֫Weիѣ>tЁT[CYk`0_iko^CUC\\\ƍs.MQŇߔT+g m~eBŋ$y #Z$*hRŋTFSnA-[ĕSطoߐ!CJR50~C`#ܹ XZX qb0\CvMViWTrRR4KSR0/Ap9 V&r j>zEQ R\9a>{`,rߺϜj*:EL7E_) w0Wy9~ ;QZRSy(lkϔfMG 3\EE"ƅ)/ T*^P_9wA3&%uus[[HthOBQT/F /P|b0A5|'O#捉ݹc G6w""-_~mr} _V, 6q>nI'D"Jq]LLt2_U>zumnb?++uFqa~lYoZMv`۷O9.5 Μ+,Sݺet{{zAOOu؟^i;vx^fKw7=<nui#F|ɋȑ9.ǎ]b\X?)srU=EP>8**/^Ӆe{J(lTu^u^5k6qΜG")~-<|q^LϧWFF8y]<=Z 4ԧK&<߶&xح[os{zJ|4b˵k^kDysN:NܘImn 32FFW0x\^5I~~ʎr?/E͐oiC7U奖 W ,0 V   U pb0k`0X5`00 "#Lx ܱcG޽0 ,$$~5j}&}u >744T,GFF8ӧydd$rhF%&&nڼjtׯ߼yk׮9r$>>pŊݻwgZZBBBrrr8~?V'M3q)ںu+dƌUPرc͛7%Km؆cƌ3f^?&NP((*;w:u'Ν;ɏ¯fXJPTV)’'=|ɓ;v$Ip!,4/) /nRl'73hB& ޮLyEzח_"kEV|Q)ܼu˷?Pg;GIқ7otUqh-s8O@_;$|ΏDhn-Mgt <"Z7M Uݿ[\u0}C*C1oNdNNm۶M6Z"""$bqժU]]]={e˖I&1'jՃvvvfd.]|ܜ ޳gϪUyfԨQp…;)S>~bŊS*}J6)N:a: h IҼګq7ۆr0ss쏵ֿsnu:#-潣ToZ ]9htC zv8u˗ ߨ[hЩhY}e%biA4Ims@HkoU=~lu;,&xߒo;lm|Dшc3V]<:`ٳݻwgTիcccٯ 6L,'''8p <<|ǎ}=ztll>W>>>ٶm۬Y.\dF',9s&WL8LlbÌBaTΝ;}}}CCCǏ߸q/E|#N #M .4inq͞$I s(ihx|>,quK3Wœ'O`-O Ą3I3흣/&@R4EL#`I(_KZfR凒W1^P[͛7_Fӑ݃(| u:9!1a4UjUQI w#5IBqk%SA gV78N9§[2B4ADcn;/;]9˸(պ| ئ|ӗO>511UAz/tRzzF`@AnAӈ 򝳿^kxՎvwwж$L&K: MREh%=ǐW^LO[,߿?O?Э[75kIMM+V0օ!4uTXٳdf\tb8-- >̾juV,XzJ/Y8{oԤUE=w[аs3A j$ 0VIʩ͛IIIjղѳ]DP*Ifn7 O5~i{뢥t^?n8dx B'|j+\?1/ @-nw D 6% l\ɽO_=,! o5`ikFgϞYZZ"-IxYjJJ` 3IR:ǏG<" lmnov)zH7rES1iuc7_RMR{n.հ<.Y\@W^O<ԇϯj@;'Px(+CGI^z~W$$JZ-ɢ0V!xaml>$8򧡡y~cdK3PGkG  j(yت_SI}U |5k@P}.f2{IT* ֈ AAA ɘ2S;0~r93BHOtڕ{=A:6{իWgffJ$3ץSNLKNNNʕ+{YFԅ7f]nRQ4ZJcc ȔepG2ۖn߹۰AOR>qDH^AZTWhT 8t1rIf:c՝CM 0AGk7omBBtNQ{oغyi(bqTTT!MQeū1o޼Zji(J<> $6Fd@v묥iAs@QfHPBBANgOde@f˗/P?WYu/wA#$D3e! v#|?zMy/;|S>cj-]U 03`f(*=tH uON!/~CyP$''t@@XYZ ~ԴzjaPdgQO{]Әt!Bd?>r VCusqIV+[i(%o(ѧm %Alll@(@s44 !"lVuQ# y _! ';ߞeFu컣ׂ) ;4 ^}pp#UcGj#WH`iq>; cg͡j`愙͎޽ 111a&L}:th>}}2ӢvrÆ ccƌa^q 0r`Bq\HOn-R1z0H=kufok0w_F0l礍Ɔ1;x6 @` ØvU6`k׮%''/Zuֱ`mڴ駟`SLaFk׮=p-Dgȑt)hvڹ%K/_˖-+5/aoD__Y+lC~Yz k1G>wW6G :BaN=fϵϲצ{>vlY)9;vl,|pWm M#Y8Zg\|}v~<9t#AjG_B I @3ox2S?_9W;,;K+M"wk{q環_s^YgG tU䐪©\( lb3=Q͐'c__{q#Q|B Iuɋʬ-O| HjyX`a*ah2daKy$(f)*&)iJMyv69a KotT}|!ϐ$HDZJkS& ҐEQJ)q;q/LJjԳѸw͹Җ/h)-15H9kּI;HH#A$$@͚ 7:IvԘW$7 ޻w[MmʏZ(T39ͬF;ݘܪF"T@]' <] HVHl-4jkwr%\3mr"MiE%IVrzsN%3"]vņرWz10Ӗw].bi˘@4xPJwƮF-g @Yw퍫3[JK?hjOW1 e [ZN ]GyF4s E$%BF4՞61;u'u^'{zU_ 3W oƸh;Y>UMZw1 !4fNB|NJ2=|J2[w:nItZKiDy|C/R!].ʪ*̷|*)tf.R kzՒȕQs~6LdcP4|ѣ i;c93BI :oe YlHͪR坧)WSEihմNM@ O*OHV1yZW5R5ӡ A TF'o#~h"L fMнkj#؈F4I3D4`3f/9NШosBppg(/Kyc[{}2.  fig=ui=܉Vj=CBMhuNGNRaPYl ESOHMOGOjO#k{Ec=n +v+81n4w&s.gOTm7;5q~-C.E_k_P?z,G n<3Rb߾}l4*xc*;<)Du@69=XgO>>)~QP0+''\,p|wB"uSIiDqwgI~w`ñ]7gF>OwDDU^^7{رcGy 4h0sFFF܀׮] &0'H$-q@]GJ?omݒ|*36$x33I2ȡU۟ v a6S#]Z?WQ[^s^5[v=ݤiV% 6Cb3Dg½~8KSnune*ryAmz/mxe@545C߾}CT*UPP32[#9iZ,3#VuaZPl׿M:,*-cNč"1C{/Od= [= ϢY3t}!>r}Q?te!lB&`~[9TL(ʃB>9v.ݞC7Lq6Vs{Ly|Tf?z&" [ݵuoR8Sfj|Ǹ7F2~VƆAea|f#n谼d!R6TLeQy:CDAhaxQz ]+d#tKBe˴ u*$wQ x 5FIzISI2F,CQ w j@q)UuF)O*=r::VG}^̜n aPE-rȗz19xl5ßW}uDML{sPONS ̷-MVa7إde՞=Z*J7" ]-\o mWSKTQ*K|  *i݃$Yђ~Pk}I3FȾ_y<iZCLU& +ԏzB58F~MDuHGy$o܁ =.%% mz”\nl W` *N_Pcgl;YԔ b#olŎ*JWZSQܺC͘u iSw3+OWiyFBV \mP`'yfFfnѨMhM߈OtղnMhוCaџo;}@5TMhJU"BkιvFSvxtWbnz!AUY5@Ҭ$*@_Osm@ h$WH\mTH/2JPŎ0*cR'Kȸ({5 4<Puy 35T7m>WFE rM!Jg~M}N@P׈mR\ym^CP9D~~F|s/^s|]hOƺBRmTWP׀%Ssp1bPTCɖn!nUR*R旡&PATj̯u7*(zlk(}@=E`M%޽8j(ժ| s^fg1 99I###B_\>\v0MRo^f/N^()Ր3P_6{bb/SzvBal A/MdH$ǯP n " S 0 V  p U`Հ`j`0X5`02Ae`*Gj^ugkשgkc0<qT K!.G y ӦwBz+vTCg{o5h K aWݻ`ՅV`yv ekP}gLcc:=f.o_u7dL!!H0ފW 4ܩ͐Յs0Io<|A5da]!;V bbyH#{thɗ7ٷQ"3= 5Ss;/z1zA3xmQѩw5O^G>J72(L< ];5r[UcWsreFgQnֱY.j6L<{TsENXKU\jxj. {k~?tقdd%;3=GtpzQc7iь`7/5k #ܝY4'=}V3$)/s纏wޣ֮O:5r<:B!cȤYy&we{0#spk3哑XY4 L {yI?k ʝ9À֍aj7wRNs蔑Vj *tZ/Im MKJ` >#ӎHCxPȼESlUy {dS#c: }iA&ڏ\7JKNh;h73%y]݊"2|2Ӓ7nF(sz'S ݬi=>{U:O7hcP1 ^a(F)0zAǮjz Iz.&Ve$բedYeX.}xԩjZ7tne{7GE( * vro8Whߴ;'/cf]hefaidf h ;Ԣ[xLs-fQܰCbb4Žy?o迷εG?;Mr]$%-,Ҋ=?=$>pL:O2s9̌?ظus, C[VײiC=O.N;|?Mt ]}zo#W:xٵ $b#^S.I?Z3}?w==_fwqSOYcn}&3 Snk;Ķ!7I@Tͼ EjR"s~T$6L mGO8[V3xyͲFۯ6ظrےx_<-v1eCojus6xؚzb_'{ԽJLqzA .p<*BkUl\j];W~۳m.Z4Ŀwl܀s^CT0zBK*TvG[ր`U滔 `V޵ފ h0̾}/z+v_W0콩y]0 V  曩hOwoi$`0*6nby-x1`02kxǴdZ(y&V۬iӝ;wxzgy gϚ=gҹS;߶a0e>*6Ul\;߶nIKKݾs av>z9C~oSnz \hO/_oSUCÄKmۥKg⥦M޵ b\m[K.7 6jyՂAM݇Iע󍙽VW9(aTT. ;s., ѴiӯU D``Ր2 S)K8w>ĉAAAi @|QǏ?~ܦM333קNڵ+Ibk Sf@uPwm LLI{U5JLU'%ܑPu= 222d2[ z򃐧u7I/ ~V e2L&ζ.@PY̙2*[k~jc@iO_}ͪ"AJLW'34]]Ë/<==JT*JUHR@ެ Iz_F6f,(&&]TZYY)JTfuo)ѩSoV!"LZ~C(3t֦S4NΆv9X &Z۝W mZ56Qd֓I^50q*XT*jժ9::kמ?n``72b6,\Pr_׷oZZ/ YtiS#ZU7>mݻe2ٮ];.Qr[Q5j5N>}RSS͝npQ#G2+V$&&X6… gϞ!Jen>|Xz5h4?lkcڷO&iz!zfe}O8{%KY{&s޽˞y}Qʔym5u$3 rȑCzAA#'452Ϫ, wEGG_vٳg=zѣ v7%6Vu:B{iѢ_L:w,BH.7ߦMΝ;5wW===ΜS7ZP׮]llmYUlٲ繣\pjxsp/ׯqFSXz5SǬ=P>d$m|HNzAA`pD9= 255Jk|cǎ$IR[LsssAF<*%ɔ)_ccb8Gpа0K3vAii\)7mz鸟R n0fػwq-&ӦMs+WYqdzrٹcs6x %n@nW,_O>L-Yd1~G_!d; {E7(Ԇ| 亾oۺ~k@uL3##Ϗ[ j B'gMVHԹsgpႱq- 22233CgϞLbJoie6lۺue*IR}yYb5fxU7}Ǯunb֠J:htarpp%P(dff6h@(뿌 ;_>tTΐHCT=|2&&&%%E(jRSPa4BBYc`J 8Z >zaeBMRo9jm£tԽ穫u1Xi644|aVVarr} y&{9{:7uꓐ`

OI-SUÓ'YvvYKT\p~ !oO4ٯ 0qbkZ%Ϝqii ܸ|(;Ǐ;8Q ~ү^ٵ8gJݻ]3kP@>aa۷_.^$M Y?"ky Bj >^1eJ+pwɿΝ;6P^oݲٳ\((5i*-Mi"1_fujWk쳷QFӿqqq7nsqUA8p@?~ke(3`0Ι3g灃.\xnXXX=zm۶{0|a5j9r$lݺ5((W^`غuVKٳgذaOOϑ#G~޽{O:5giGG Bĉ >>BAAAc{zz?~ӳW^;vӧ->v}}qqq:-,,$JJJZb˗Y`(@{_ڳ',,vڝ;vlڤ\.J2 q&AAA%rTZu#FXp)S:D;kHHx{{ŴiӦNze˖ڵyiիEلRJ`ooGѣNNN=zprrrpp6l)a֬Y-Zptt\`` X`(԰f͚3gδk[*d qt9̙3nYYXVR㸒 L8ȑ# \tCO6СCzZt)MYz |}}W^>{lԨQN```Vh_z wGNe|.oƍ={8 &Ð(3g}wwG ]Ʀ(NO!ܺuzh] j?CQZmF+HII}Z֋"E ^kJJMMupp^{nk׮%j!j;uE!.l qq/8 s˗/jՊy"Z4@E^o0., '9;zH&@8BX…PxܹZj" WK_ /W IDATO1ƈq͛7(^lU=ky<%w#^guo7&ăZ[߾`| JMPzs-Hٳg֭[lٲ] `|k~7BDeh-&k}>\Y~4lM7l;88ⅽ݀?.?^ sO"Ν%Sшd!q5P g/vb_A^;Nwf mAO? ,i:aiFeUa/=z?uСCw%|Xa r5_X[,6jNδ{_]+!UW` 6Wr.M?ϳWiW'ڂrDf2-혰j<}E#((C E1 bmmRTWJHEunwh{L0~^۞_MJ^Rq;;?wEVZ2PKqqq[nuvvNJJ0a|G޽{8ȑ#?C~w>|um۶:tȐ! 4CÃfӝ͛$i { 8xV'p*8瑐RͮR @ d<^$OS>z~tm#{QNy;>1Wys3z͆ fRC!%:t$b=5iBQQQmڶrfPTu=(JvVyYqUntJhRʊi.L-[s 43gδ}}&LXb#CشiSZ(VZawկ_?igĈ;v\6ȱ߅ ⼼$^87TSB_شt@b4]`k>q6 dܳjI=S'NCi(I%tY+͕Z6WE L^^rs}%2BZ3{kBȳgڶmD1&Bh߹rd;q'xMԐE0MsK3C7k9Խj2D=~822ҭOeKSO777/z{O"×]Xrc_~*Wsq:I7e#A`~NH &ŏ|&JܤCj<@u%!`)}}IB'CKdLDn{p҆;7P / *,5й7n4a 4Ç;v1!t7i=O>FnЩ D$A uJJJCgϞђ/dSĉ pݻw5dN>MݴsPpppg͚e,gEqÆ RfbKHLV .-Z= xrHI!s}p^Hf>A]]D_{eBϟ?@Le2ر,cQR^ס8U5ѳ]L; !KMׯ_?ȶhɓ r833\z#ݣrMy!WZ$*dOˢ{edGRfɝ'F%zŰaݣ Jy{{;mܸyf?c z8֯_& xX8;+@L}1sHP<ِq8ޠRYe!?$FKr0s "?j` $F|+5͟oҊ0^mܤB0+N d==swux6LTclBbյBpF5ZTcǎZJTRhssǯ]!d|ݝy:H8-,,Vg= C=hZVT!̄"M/B*x z^9OD?k֬h4$#̿J)T|ؾ}÷mF'|ȕFjHTju?sgVC!ġ,f6dYmd=y㫨"4ɉdwM/j  YA|9`+c,@FBQ%/>&_NWwј{Rp}]gJ6 rjĊ琌Sl h}11a pIR5%^Reb ;j8|:kТƷyD5 W4LB(b i"pph"Y,Vb ++&M`dGܱCݺu,L!*ЈFLoilIXĭZNL]XYZq :fw$KٳأyϞ=`CM&%gjww/_4;HRqq-iZ;w޽g0C*n\O^ibO W<6hVCu1}Բ.A;_?>qSݪxFŊ;ccaNSթ /^DGD瓿Ԑt4!ɴZm&MBrbƍF[ rE:n; "`L+*3rz[eaG3ug)P[E:+W )$GixJ6 EOݢpssԩP((гC*>dÇzZvÆ .W[,LTTۨuz1, (hB;w( B~~ {ZzO^!''f}֭t_r6v)Nӿ۴iLmܹǏ7 WթSG*n\O^iƜ?;8ěLQ~Egp͛8tsΧO (07<$j=z֝,9VaZ:O9wT x(3;Ikk]3IR5`qݩ3v-nt);?uCҥKMڐ}z}jm ۼysбcS' 0pql`ti8.2b5TREſh#||*W%Bϓ_`oD $cC Ii V͙Bbt 32>1+q !Lfb,*PR_[J$bjF[D/sO\n9o|aLP>ϖr>|_~9 cƌ5tGFrJtjr9BP&a`X6xuD4r~UϴE1YӖ/S'?h0Wj@aĈtE:1cÇi8B!}fnQФI̮SZk Ƭ1^]sFer9-q\3ʞP\_)(heq Ƅ}=x+ =[KUQ@bN},ùsO۫ge֩֩.Ν;`֭,-4k֌VwMO*2 hy) \(Hu>|m}6ht{|D ==٠FwD)Bpw^~; 7>]t Gc\z DnzYB~?@Ĝg ^33c.kyQբʳ1B0~MT VygHLoiVh#/[Dƽyi4̏䆟+2R-ݸy덿 ܯ=:oo??@\uqL? )RB1>DfҲ3@KR!=<%4I`9!:-eN{ @?mҙ=|`ffjgWŋj՜JrFᨒYx4c2u~S;Ss3PԐ8K"kOo eܾ0?0gsYd}uW"V.XtjnV#w2J]po߾tŇw!sZÐ!C9>x`fjt>>8 IDAT> i@$zy:\]oEq{uvi"ρng[_Ss;1I "Q:W! ;_{1j8,LKgq6ݩGݤI~8]2O---Oޯ_?cedY*EA_}U^!ЪU+;rZ7ӟSG R!>[8z_z~tlޚp E5|C5 [upIE) 5}O zQC(xo4(mEq!Z<58LX<nJf7?#잛+U?~r-TYƠsDԻ({Ey* HP *2WX,ܳWH!kuX&jE D@ qMإj  #Nv*gGRaz-̫)e)! 2Ntiz! 3W5Vz,/,@sPVqOC,XߢkϽF- QPඅ !2N," Ơ7`F eHx`oܳØ!Ymm&i"aPDzJ1I 34R @cH 9اxS"ĀsI'9aLt( [s}b)bf#SX\< o_qM\- "JYRtm sj}* FGhC]!;.2fbCErG:t1펙Mg7щ~K +T 3i$G<5C8fU F3f̠1ZO:EK}C #JcDXz LJ}~~~ׯid)xbذaƖ֭[n]KNb464,ȱ"FPdTSC~{]k\{`oo_%;BbS^6uۈ lNnΜ FCW>ӊjDx ᇶT64djHF e` dW=\BSWq+#@H"¤GP 궎Pk0&Lȵ1*/4pH@Xd FD' p0`=a&50]7bߍ6j$ 9Ddj IԴ,-~ŇI2k jːC<B kzbߙ$HۈEcJ55 4h޽oUdٲe4YaAPD3v1e]pjc<^u]]'KjX6nн8xL $^z l|soS-ERdMXӱɡ7rsVI&5nxر...!33sݧN>|̙3g̘0ydjժ&Lpss;wn 8ԩS7;wnÆ >>>M67k֌W=ԣG˗?._ܺuȕ+W:5/=z*M6[Fjo~]&$$|45kF={vϞ=88֜`Xy*u_'#z1ț0IIIM7D///B^֭M֭[nbccjuFFM!\~}ʕ'駟J(zEIOO;iiiym6vmܹ{KKeC҉u6hРM6I"ƕB222BO~mBȠA6l`bRcl|w 1)5&H&zI?nGW0E-\b^]t1"00P236eMe=:""r"&;FgΜiggÇwq mP(E֐(ږo-))I"bh@rrR^@l9s̟?|3^(Nݯgg2r-혰j|.BY5#^+d/xkta_Uw <}_f]l>\ab>;"o>IyIsH"Bnwl&hV̩_=ͤe!kg\[;%pmfoJ3ɭfTԎqjF}؍'.`g;vzΛpC^ӽ(xJ~_=JE|Vu3k]c:MN Aѫrm8q.i0˅&7¨T :dsrz=@UlnزҸ_&];*Y}:6(JI>Nclflٿtq笕JF5rˡ^c{wt["<ѽ *pٰejG.]=\ݤVD{̙ mM\9e30le^}o9SժGnk)j+V@DD({1DLd`(%8(wDۂBP&###`<ϛtww7|H!ERA$4iƍw ` ]L0 }=ztժURG п &RDBH-[lݻc4ؽa*0 Op&a ']MDc"x Zq߻ I 5dFY)˙0nEW{JfgDnBŇLpQՄg"1x!BI&cϱ+:TcCΙ3V^-PVCp yp!{y~9"1x) BWe2撵)6Z]3+" ԧ7_+eY]=+ T!mY ZfύQCyPdj/"9N}SLp_3+bPb1>ݲf;YYT?'Y !dGq55tFck3j`(@a/ulS5ܛh: o1]cgXNdO?\H#rE .\۷mJC);,]RQơ!/ݎoREJf+q׸Ǭ6w5J^UdzXX{dsĽiNC2lRC֐ IZl:䑐,+FBjgB&$kg,#HKKG?{6lذׁ˧O:yrСvDGg-QMH|8"<$KNBRVήvԩըw vkG޼e6:ڥdhR3S&wmġ,xr斄`}֌kVxۗ\a+ 9'/EHhUrd2d'9'0QC9DZj;H?Wy'DTҨFViqrTt!+Tt2 6gE%ܱGP# JCu Q8US~7K-S N[eU*J\y|}JV,Z1Fi 53-e4m~""@j4@`cɛg`Op N ml+ _ B4bG`SǦyQǶ%鐢1kS> 77TLS]M45Y콨ӹjܞw!f b dՐdKYPb/o1oM ;mfD˔ALJ U@j(UAW,2:G@F-['jQfP KEަc@SR b""ѠoT}Fx$ As[dUO)B|;1H pq(N!ba0ถ5aIq?r+6ם-r+U]6uH+MEmT{ '_}cS8B!BЁ 3aW9a+ \hJ]lZ4VY{ =J xB0 v^F <,(޶3yb[iA$^㝭??:[YW/~Xj4ir:_z` IUldzƬ2ls[Fvf也n&6[rBoP& b~AƉc 79SD8rL}vEV]y}\ˬϮf˥"/>3Yg(sAWa˄6^ G:0hƇ\[UH9jD5:14j۩.^k@VnoDŽU|j\i='EH UxB MIҟ4BMx)CQ_=v㉋rש>h0z[nP)wm&- Y;&/1J!3Xdo/zC>牶R4ErVX.eh@&U+eAw!|XM#kHPl͌#3:y<,)׻KTzu8G؟8l>)YVa"CL?** ʲ(L(AJ4߭=?nv 碀HNS Q )31csY@P ֙mt(k:XTfEE û}9I|%|\mpabu9~x@X)* 1\VCj``X:t E2֋$mYֺ瀂1`Cl+!=<%AOSBeW2aΆo7ٓgRCyHD5SoO<$Z> 8&Sŀ1ƸfaF ^/?$98]abDNDB`mC1)D !GA1OFl`S~rV塥 \hTQb]}iⶈ}+ ߀D.Bq`p$r 5'urRy|J!̽Żg{oPlٿp3*!mک!BȿsJ6f3hTo:V!ס(V>$,\ٖл~s x![Y5zCB%֐j;Ԛa鷇' s1EC!,'PqO);i{םޢʧņoJn?L|A^U62`(\^0Wb-B.'Kr:xmE N/jZTT3?MjCۭ:O!w3=Ư+by!er6 -t eR`9l%W:gT<{,ҷCkQ?~ 8?_F, Ѐf΂xysL6V!,8xH<B RkIb]C1k+._:wn'M3l18Y:3|P`Ȟd^BԀk8Q.Lۣ"+3-.]T8cݪRko|zož@-@FEG鱖, "KУ,˒kaC "40xajOEd$B clT "7D,okh3dgR*E|T$-`{UmA ^AĆ HU- xq bVYV6{jJBiF;̀Gš21+uBR  )/#Dlړ$Օ5c%,(UN_$s~ Dڲʴ<BHdBTv5ZqIh[o)KGTF'llF◫&ѧGw!֗0SY)"p=5 @xN6V5`{bsZin?hd ?QYCp-xjI +Ft_`B2KŘϪdjR k0[Ge}=/!@)XiJ5wlHTQC6-hOt݇''ic#]( IDATr+z#Ɯ7jcIP*@XbN_ VMjX5V7{c&_~23R!L m8 c;هiJ zljгdn6h_| Ij_”.^ 1 e_BԮ`0=B.^ i׺EN!g?eGd#gyeχpu l7[װf}Lg/Ujv ʙ~w!Fo *E#ZP.1w5x0w*a 200````QCa!x Lh````````B6Q߈d`$J=h$x*U8qnRə ҏ'F.PBVsbtέ;[y$6:5pk+?DGGG\n( JZ5J҉u,3TPumXKȂ/4A枞~<1UjLOI/:&Q/-mYf````( T8W\hg(fo !jBR.  l Q* Ji H'@ i.r7c<2**Gt vG8{5kC, w8\X\m%sfʽ/4e`BbHf^A?3_籃tBpNO3q1-h4q8L 7^r8DCbFv{& (կJ 7?d~NNX}m9Ѷ_~n0/0V :ա%ħz0njVF|{Kf\ⵃ6lN*~m{9L*]GO_ V>FjQ^G:P5R%?7_:l_q0eseώUPM<,L{wXu Guh !J$5ahz|m%SzZ7Zc|^W-Ik~~ 4 5cpk't̅Y%_4zHOl2vE1ȝeN58qU[%ԑrpnPYQ(JIp;{=H!(~šׇh{_JZQȝ:y"þߺ|?G/gV)5s$`iRM`7Ut.UE%ɇ>]]FNm޹Gyi0#y1XW &wy8ɜc4-s+G }FR^|OtqotmǏ_ͻ j5er z~ij@@ '@ 4@x✆gF ?{lDžMD 4kBBB׮]o=7 @xTqÆ)'WTTko&zSLjキOVTh4SN[sɔdbrቡѦ>~ W]U*K-ӧ/h`gS;>i^ٳ׉'o'%!Cf|a*J(>?iҬ34EE^[ٶu뫯v7zsI ih`@ 4@x!N@ 4@ N@ F^rI cA֘$\@pz"-----4@ ; ,,7@ i.yyy=8!ӔeJ1 $YG2H"K˲Fє a(Br'''777wwwPٱ([, B-*******)),@ dNNNZ޹sCåK4iҭ[GiMُ70,lKiQ: JHwW@Pٕ阳uÇK8KN]q\~~~BBlvqqoڴJ7ssssrr^ʲ,D"oF hXg'gܼy"Ba=l6]~eP;C.]H#'ov|=Ѳ(,Ȟۿ5-PBH5(PRnqscc.&v,\ާ/xyIz7O:q\ӦMK^eggb0Lnnn>>>>>>ݻwwٳJ(GGh\O)dF.:)BYt9s㸰@a EQUD-Z%&&uq<Ԛ"jܹ/ΞKJ\N#zr㟊}gwg*ֱ:hHÕ1YnzJ\QC=kg+'Gqqq*iӦ`0}μSRRT*ULLLzzٳg[lHw^"b4J%҈@ =E׮]-4M{zz|1BeYXGFF:hwuIII'LWe1ɞ=:#3'G#?DXXB1h̏gKK9r=]h*(6u @ͅ[ysv)t=[.yb*2`0bfsIII W^oѢB(777111..őU,JN/&[,&dCv,}|6\RlEiiic\^^^RRb4@$4Gt:ݵk׮][^VV`Uر]6>޽{y3Z7lׯk?ߴu(Ow`Yvf̘׎bYlixfMB?lmy۷ok߮On]/^vW[WMmUYErR5^?`;PRB=ujDn;$EA^FXzbIVաd*//wrrtnnn!!!"VgiѨꈬXTadGu|?t$m½UJc3D2"Rɿ(`0H͛SEQ5sE0 " ^wuuu* >yY _>U3tyJ փsΖ:vWyu>lFbsj{+0 eRLt_wy_ߴ:2{F3`@hخZ7c|رo~VCԹ}CZE|}U* #V"qr#1/zROkVrY>eNӴ`u "P>.ͥ_,JCp83"0KS (ߘHPR\:֩L&MOODǏ)R۷/ߛw5޶YԆKdJ6)Sʍ}$c킵: gOFF nٲulciii\\\ǎ B޽;qN*//mR*RKXQQ?V lƊaÆ]qvssܹ nދfb"ڽ;eO<.s+q _^pB1glٷ崙}٤I *Ľk﷨69vTo.[6kL9sVW]_n_kd QŨ+qW~1^mkJuةJ[j˱2?zؐo߾3o|kz8RAᡂ|Tr$ǚ5PFv;+tXƍJ...O1NJJiPնf~PL&sC;U-JII-cVfs@@m5@ 'ixT&w(_;ޭYKsYZ((kwXXr>k4Y¼`ZOqLRzM jo.--NNNᅪFcYYlVT͚54]X$ EZ!"TNh,))aFT3Y5"@ y$^OTFgYK zhX)eH$ 28RQQa6;QP(JE"? X0L֐[-. EIE YZyxZ$MZ@ <1TC4@מt U҇BD0Et(J$y<ݝu SɃrs @ 2)@ ȑLFʔ@ G* N#s,@ht;vʕyucbby=A “1Xa#\Ҁ,hR@ <1X,f۟-7yѾcd0fEQ4U9m!D@h8fh׺o7aQi0Mb B*%K B: oԘH;  ]YN%IzqyNCh\A*@  c4̦mT$ @xDGGoXAgkz "666&&ٹEPa4jzx @ Iʖ@ ~{Je:4ǐ8|2%mvoO4C~{ԦMʕW}7޸ɲGmj("4<8VEÒ%7{ηbΝ_}}{@U8qbW~/:ztVmbvU[ >q[^ys^H/]r۳'$%EŲФnĈ{.ŦM~)l9TBFQV& -⋋uJڻ7߽sse 7dH.Ea];7³eF *g]ZyZ+KVK $q_jq^uǻAA*Q/UG ҷo~߾^^sNI;C3$$//6O Oвe?ۭ\nj^!8=]Ѿ}1ɿz5iC&`q&?>To_3=u>f=0jTօ 7nMs˖[tP-7^zII{D O>lX 7@bB) ʕ+n||~ϜJ<@ <c"JKK~}X31dh*uN0ԅ ݺG:r۶sJm,NIYtd*Uaaa v9;:;;;Ms@ G#&EB*"; q_)@? H1>@ @ q@ @ q6,I ȭ@#j@|I@ @|IBxhɝBI@ '2@ q@ @ q@ @ q@ @ 8 @ &E@h\bccB6m l۶aҒmv-qTT̙3CBBB(,,l…M4'|2eO8Ѿ}+V4>_~e||<˲SLiݺumU5g„ 5q~7r4<X )f C^^^vvv^_IerXlfaX9P*ӧM( cOR+J_|e˖u֍O1Lׯ?}4BO>g~饗D"ڵk?_]dßjժG.Ydʕp 6L<9***66߿M6%%%M49|pqqǏnݺd@ТE9s0 S%%00V`ĉs=raÆTe̙m۶D~qwﮢ EQVmΜ9P(F}V;uԧzʪ<믿l6۷N믿FyY7oZڵJ7y6 ?z(KKK~}X31̤}}@h\zbqrr"E(eYeX8c9XD@ D J$b !ȸr¿Oii#Ņ-ؙ.+L"  ʕ+W]kժuND"ðU>(;wܾ}KRuIKw7W;B#"H!<8:]ZfT Ƙ*+/BhA^޽ݻ7uTJ%Ү... n0r[ I 3 Ͱ#W=ř+h{[ͧK}h7\'fvWzzll,?|7nӧaY&LHHH#.@7a1N|2V_VPrq{hHDz,O~{i=q1tUGnUgsK)>gY=E\J+M ǫDŽ\6Yǐ_;nxw?jsV?kmm[ۈm5{-k켍р,{Lo.5ʱͅ@>݋/--=ZKQ!Pc7n\ ?ݝe;HHNJFA?j ] -`F_z3V?XpeëQ!Y詹)OZb}?8;2 ={ط (nvbbbQQVrtҭ[уi@swy1.-/B"$QA^ (E6~Q-O]p<3=W^Ɯ)ݛZrQmkbZ"X "10930멡cq$|ܢvإ)^:e~X\P}d2˲;H  "''wx(]Z$=03 J|ku*1|ר?_v$f `ӫӹLBsEED@W}/=t㿴Uddd:tҥK|wh9!!APEGGQ+O>??o2{}edd/_϶ԡCOOOk1cxObϞ=g&L;v?\EU;[0`B駟޹sv՘n<-ZݨAdd F1??TZh|w 9H@(o hc)JGF홑4%vY\s{P3rR^ޟYz_?, _`:D&qa?rܽ{wuU(o/<_|aǮ_|>-^cK,sΒ%Kn߾q\HH7#.dmsA Y([E=fҔL$cmɈl{U Y@aFrOLOkȈ&K/up|>#^\lz 3dO ]8wQ9|,A, xe卯nlYXۉW/L1"rT}y+)'?jפ}ry,KBBT*o2{t.`5B˗.i4mWsgff7gkTd2˹Y啤YgZ$8cLSpM왵A!W,?}YNSa;v.dn‰@$fY  Csr:ySsSH3k5]'ߑ#r׫WGa]݊&M!U0ƴ?3W^錏}qnn%;yan޼)[,sW;y <7!d_~8)[jgcL~:gr)3dȐɓ'^|iӦٮT]·~bڄWO_T/ lg Pvvdc],?m:4bJg]Widzqٛ½{joO 88 /_"Hzwj0%bIzfFݬ)&-sʅ[*gCIC!FŅ //o֬Y<:Yz'4l~鯾h4"&L0h 'Nܹd2q7lذq-Zh:uO'Oׯߴi{=Zm],K֭[JڢEy999UlG]lpvz(exF<N)X$?aztM X`Ŵ|{|Hl)62b)P_/^} rR:.ٯgl` y{Exp|4%`17c gy߲Iq%qi=lBa$T*qǀ)D,gKZ e$^VN4-Q鬖E'3[TTԀ.\xȑ*;vյCz斝m۶qƽӧO߽{;F_Ayt1cXN6᫯sN//ڄKg;Z˄eϚ2eʌ3bccM6cƌ{d ^篿o;w֖ĉ[~5QN7a„TlGc05TJD6iDSK ޗxz_RBLE3ފs.X*Tna8 $4O dӿ;Q c“6Cff&4ЦUk' !ʑEBQFfÇRɠACXCP"iZXXi~?_X{mt{cl<|[,TљX#(D(ROY/^<~x;Uf񪒒k=uᶻ~৞z_cT*M+deeW?ƾ>~/UѣǬY;'ՅK:-v`ը(W8z(;vرc^^^Iٽ{7]y)Hcyk[SzvUH$rl\KpH}}|b\-ѶV1`WMܡBLTJXn.*6͢mZ{$f=%@x[ғ% .^$ZjRǠj bVUk4}{ɤєƍwZ 8\9,fsIIIJjHԐw\\'bapuw ! D,viֺsӨ/]|qK(.ёu'Y Tɨe @9ǰFHc@H!-,U蒴b# 8++8RyVQQ B$WB˾ is-i#@!eMf`())I(ו#8;z]vq p s2!B|,_?;pne' 0G 8:8zsD!U9;Xbm +*îbE| p 2޽{P$(f@a;whֽJql6 :]E޽ ;tPZVz΃ƣ:mkdsP.K*:aU_s5*(ԻЌa0xx 3ghS7~kZ hߌcS Õ1 vХY1€i$ kH QǦx:Kh,>"£2! (JW^mӺP(H$@ w=qD```^Jv؇eY"''+ˁ 1}‹tezc-ve0P Bw/:?vHt;!@YnoI>[+&?5xsQI^rux<9bwofPsϵ[=d9ɜϼ߈;AB:K F.tqcnd'fi?@" 4A'@LB!ۊ]r5. ӧO~֛o~8x T_* 2vmIZ4^{rh!Cj˷Fn˗HsbŮHgK{n- kOl ~)Z߶U-|%ĵ"P@mb=dBYr6&Bi4s܉ؿ#j(Hз_?X"(ʺ0([eeer9ۿ|G ֨rrrBBz:*B{ܡ_d :3c$@X7zdiY)ws{x>- a_T.-ܣT  i(sTTTk[8888!!!22"qqq/{CMkR[E9slW,Zd;E[Kʊ9ֹhum֨vksS]c(vmR" I s6+>85(\N\^ 8aHEnW ,F_B,™)$QRP%*s^)/6XrR,a k)DY\lw\10`jm#4yBTv|NS{e>{g2^핽;?6FvQWY7ot~q޲e+RRROU}Mj_^EH޾}ӧ===7oum:WuԵcEB|Og).*qjNwW& CQ @ qLˁQ-U_GJDF'TD9sǘǀNZsJ4EQ ҔQ!@(͏[b0 Z!xȑ&MTv&0!A}|T*A FcBB©S'}uڪEsiya.C`w?Hr5[ mB)<8YېWň#}MryR" 7{VMB_upwoQbfA.W:3D.9Nt s]\xBKKWc޽7|EkRj{qyY=6 xJ_.cb~9rUVquXǿd1@QN2++ƍ!!!}~}Ν I~A~+qɥ-C qZS~}#a4cnsw.27:o!m`%͍PJ t)}Sϣ͙ G8})$@~x s*DH"2wܧK. ÇׯR0۷omĉzI~]t9j :v}0)씜HSϣ}]qJN7iBQXb0 G3AhР(㘘;V}DQ Ǘ[lF)$e( HL]b1}> '(r([#UX(*_,MzUޚٞ +A|]"Eșg3  f~߻7<,O?&.TIclvѥf>%' &)1ϕǧ6+xڑB(H(G?BK\DWl|^ڛqʴ:KJ)E#W}I:|{@JJȑ#8liJ?Cʚ`0"QJ{Qvmx%BS)x;QA_ aW$v "njJEB@'6fwgLX~?Ӵs bָ "'JWC]/in̦](Eܳ)cg^ '{V$<%#}Ҷs+'Xp?{-+<)E|w>_UL'TџΝz@\r99Nud?gₒ[Zҗ'ϔRx{R)S*V̺} n Sp1 )Q@)'5R(Hy>mI9º3Ms"~;n*zn?tA|Gv<m'\_Q=J9h=J]{O~jw IvXw\"mE|c?yRg^~LLLqџ/_lԩSΒD>}x4->sdX&xs1߿$RR6ЬY3wwwivٳgv ͛7=zf#66[nΝ;"ܵk`سgϪU? `-9Qam7*D(hˑun'W(RJBvc +%&єA#*.6gQLl0v%<񓏗 ?u&VMÞȸuw q˼c-׾˴):J6k:b]fEO^aq{'OLgwqX_NĈ/>ZUW m۶͜SE9s1p,JեK˗9YH%~ΐ%}iFwڵƍKOO7+Ç7nH) ݻb:$<_asfݾڈ6IOZ#5`(/Yvs-_i t^oګm(@KQ'm%$P7fApmQ<&dR|uƢbϧӀV+77- `G}Z)2[(<# ^O>AGk$o-&{qv=`+ 0iJ6 YUm:[{Ӭ&eQщ?xՙa]=l?a|.X'xvKmƜG,jt'|](ퟷu:}"i t'?iSY%40鱲 4vܭe sۦ,;l%feuѥO1mjaDdKc|c EI[ IDATjߜ=h ڱ'Rቨ&zmQP*AɶAUk]Qe_$TkKk8-`2A]#ҀHs{U _|{x#'wjP]񖇞H3p6Cj>>U U ]mH֘DG(0a#TRJ@(SBnjuo>>K1fPqX!uB 9N9D(u'@й$L %8Ng<.@HҜil0legcXa +Db|J7"-}#Qf_7Nڻ{VN1o:6=y(P!n[L/ ccKFX+h)!#knJJ)z5S) ؔ[Ma +R @Dlu.p?LOϝ73HRRC}Q;B7e \8-yƵKW40?FO@)ՙ5"]ymqol809)sϭk+2BaN$b.hDFKHM ( s7߷Fr Zpe?H|o}{ZL@+S*@v5\[H)x4nSgZ6qќёuݜ$P_#H]TXϨ@z{)-RJ8]OWHFQ*mZhd74gE&}{5@J!È 9*cowVz[׆F**OgP>JóƩz }J8fӦMy~s0~q /|?43։@.&a9$Gu _ɒ@;鄝h:Gas"!k=m!9F@#0< cJo\X>^vq_)A):VEDܰʼn v2罷~{F?]}`W/\X5OyB7+x5؊:! k3z_ 80qͽ{.Yu˖-3gzf%۷pB}#l J!l-lk୷XZ4Ky D镧/4aQ`5:! j82(P8{kd\u<w%܎)xJo0eih(TRa͐|u݀՟'e6`-E Urs.97 r^QW/?/EZ (N:5++CҖ-Zj 5k&`y$loo/ybccO. ]:utĉ˗/Y$,8{ĉybu^f$͛K:uj+V8{ɓ-={ܹr˜9sBCCm[n߿o߾P 4NAfЧOz>DL9Sii~~'AD Xc4] 4F8oޟgߘޫ[m9jt"#Y. xi8N"T2NEߘ8)!Jwgj#üA.<îZsAdl.y6\};ry@Ly ;|{FUd1L4)""bNNN6U$ekdk!dy;6CCC:$>|x-ŕZ:77DyU76}/Ewjx;)Glj{+wŌxMsI09;BzVqhʗU0I}t7J |44T2>BiwoP[&n )lxm~DBd +@Lb@%- ȞF%m<88¯ Ƙӛ,m あI\ AR "d LJ f4T 5S;0񁉍NltpjZ..3!5ʏv2J,3)aQ \! {"d޽uŋ %PVOMʡl\5d)!5QU!Sa!D`;q#~HinCz -w^~!cso8"z8x|vuhRzE[ϣ= "r|Փzs&&,r |!$@s B)-ΰ%&ŧ.1qJOɍǎ(A"O 0rl"l8{xU7X/'G'Q%;WVVV޽zz#)АBpL!IQĢ3EWiĖ[!W=y~B8;;3cJ_"##x~z,_`u`D $q*m/ErA//~ߕPƈŀ %?^3:+9qRx $d\cHޢϜQuFb(FE @ŒQ!`'7jӚj't1R 03 ex)57s)T2e i1 "HVH̍O6n~IX=R cV!9]}'dRt#J0 xH Q'S>ުaK*J)OKfV._T_aq6zmS6:T&E*MRe3$X[b4r9 _•a'ƏKs=}k7SS &RwkS3iUC$3@h E]A(֥X-wQ˜}kJ#[Z\c@@&UP%bsτkTTsVVVi>{\BЦ_qI=Qm҉'?~|/._k-T4k&ݷo… #F(.qKΞ=QF5-% vsG %>"b Nވ1eۆ!rS`18*}Iqqov2G/uP:U<|\T2e mb_Usݸó;d ӧxߙ3gFbccu&iWgv7o.mO߿?q:uʏ:tҥKWP\v2 {YjF #hW6ԩSfffLL̜9s̙SBfBCC]]]K40k8^tiݺu^^ޕ+W曩S\%euzxx8840E2gJ?i㸦M6mڔ]4Fꃪs^_QH7ѵnlnNjmD91ҿ;-8u& Y5kO9;i>I?/9/<4e`gmuYcήk:|K)/&`0~sG ğ3x~;N1PPxt2x cg-7icΖSҖz?tNYK^/g _O\J.tW?x yWàno_giߍ^雏Aч/6x£w}7f%ߑ40 FY;U;|Ag[Zۭ9(I~_w|}gh /VLLꑶx+X?fcnwl#v@uߤf~;6i{3tOk"\-Bng*@m^ZtK֗lҨ7|s_*m?o[fw2_5^09">'^Q=N/xm)u.O,tFh|YQ>?*d&AZ1{1-8n'#ÏxnJq?0`0EY?f'oкg x(+Ftp̝/{VU훳m[h{S&(jQb[ƌ[']b7!oֆ}}J[S) .9JʑߙSyc 5#:C~x+ӿOWԼ-k_Vg~j^<` YoG]=jylx%z!+䜆 G&$$d2Inڴiʕ`49" O^.C(  %]LjZQQ{*==^_!}}}###,X tbSRJ|,N,b8a댬5('Y(Txfky^ j_(%2y֘c0il[>?/?[nΝ?m6c D]ݻgϞ3gitJE%bccO. >JBC E -?~ҤIb [KO>g0R nm9?Ac404p@".4_j rGiڇ麸lCJ) j l\Qf/ֿV#P4JL2eJ޽{dhS0""o߾mڴ)hcq‚6l8v옧~k&Y`]8257x8yP wR2r z6栔|'A~7!lmE}1-CK>HeLzAK aqX!!N9*s |c;(ok JJ`P=q^N @5Iު۩HQ\M>B]gLz!O|lq0BP(Rx+;t8-F`7异&S!_5(*%B@U֫0#Zr6PE-R28,!e\Jlt^p"w?5~?^ݸN(F%yq%`0,,-Pñ iٔs7^x,EJ 5 îZ]6U9xƛ3{|y|/e([0Ox% 5y(KϼVWb,'P vcL;*<6\G|KVm1DbSc0O`T DJČQgT_#^)ϭCA| FP(H2!sMHŜHK[tdJ "vÕν3~=s iAUr5B6%qN ȆnZSK B(*_>[vJ橫yj%&l{/_6{ԩO?N>ݯ_?0;uTllln$mG`KEԭ[WRX[({Y2ܬY3ww9$Sm..wwe֔֗%WN233cbbΝknmoq1c}Jsֿ*._`0ٳgL[lRVʍI25kJ/D(x "!D*e.}I{Gi⪐#B(kiRayeV' &`#ŋ_61c1hР,Jչse˖M6/YPN͛?B}iӦI cƌuss/>_4isc5k|IƏoXB62-#FXj4E]fmREĉz4ic[[߲@(69r+8dHMJ~? RB1rP8̟NK!#˽!ަ;!DK䪬bx7!Vqu#J(V;#v F[@㕽J;5&oG'Z<1rƔ\M>5GoI ** :8@QbMf6R$QF3 F9s51[oE 'UvrA!;V?%X@1(F&6a0rL L"@J)cdt@ aV2^u`03!e<ԅ J{{G))% ީkwAk E]}t%aJEuktR)D8!0usEB3р`0ʧ!FR"$TTpkG0G(m{}-k4tpi^|}q E1; oB.$g) 1 c3XQcy1~-)P9'''$f&wFnCq%409⭈E{Vt Ra`rRxlaWtWj2%d)40O$fVD))@hTN~wQcvln_רaЮkQ2N.;"Sr.j̣y~gJ#lu"5 8q($|FkJ/4|T&25!*q^cT,OCN ƫ BhPE6E]!5K}{'2F$&!<!\mX^Gi4rq@D\k, 3Ϩ=SD)T~* 1אeHJƥ94+4CF|G3<ж᛿|EL)1g39v9WV3hA"0͛2gҫS JI1=ϘIH ˇ rrZp-gܞx|rr?{/€Y6en8*jZ}51÷en|}o;my҇GK~>|nߨ{Kwvm^V!W܌/</Y*hGJ82,[< la1 +uo~Q>?tRkW,嗰|WwL[3?YIWΚmnMl^8{?s4y E2jt6Y^F)`0qU=ҬS״ߏ ?~3לTI^N3úZ{خ]16K£1K>0U탊’L!K:#{受D7Ų"eh /?ו:EgZGwyb?w^fs^ؖn$'oq$KGsotЅ`yqvL[ %X!= s"0/ECD^>zr$?vW1ˣ1ol^!EG$6=Sjk _ ժlug=7G$_uQ+ P#fʿh[7,)2[1sռdm^7 ŕFO{PrE:MF,9TUb{d}l?x?K' u Nƫ*RjKgH6+iyR}Ν!9~,/9i4T-V0%X1`DwL[:jw官;_­ BQ7gǬ+͍evRgv CbKzC\Ft7ecA]ڰ& GѺۦ,Nآi,!U!M9QԢ _N~?ڼ4zb7}%ɥ6m\Ɨ6[YܵUL:+82Q묯gHGc 5#:C~(3__W$cE.kc[2ކ`H G>pBVVNkǒ Z?/&3 fýh8z=e=. 6~oЍ׽Qߞ?.889++4`j:k@ gg|2^e *_&oԻ~nr{e^9 ?OQn T0*4"E`& {zFo~f3%L)dO+`0 ΨF{Dc[ʨ2{k-UКriڇ){){iڇنd1[)J[c{- D2=܊03e<I"P}&טO>Hťⲍ)ZSE!KFM!TꓡfFc^eTe) E f4Pi`n {hFΔгC:3ms7)úUEoϱ"!t5֞sjڰ;*N^Ñ荢8d3'9?ϝݧl `)Y&@@Ray6o̧1"(P@{+#1]D8* ``6]]{8cmuR#]=owELdaW}xFCy}OM[x(8S,Iĝxi |UsO)!"]Zyz6Q;% QȔLyoƕ;Z˙y*PsRamr7eX] Yexƒ c;6I5h]Ǯ"G-)AmTOd*FeO;ـUFej˦fzC f! BXQ@j*Zr54H`L_t+YL&HMB#(p(h瑽de(xR4rE˰ k2hs2NQrT'$^Wh̏:{+Tn{ÞӀR@ #ER <k~⧯~ٽV-Wx^KEI@(P\g1vqQ  ^Ǘ0+1V>,\{B9*d x;{vjV|voix \>n*JkW\iVӍv飺A4ϝ@`s ʌV+1[(Orb!m־.$"P;W*hYIFpqȦ e>m5"bO 'sg0 6w #N;Yۻ(83٤)i$VkImW`Mx"B Bo i/B! (^&^(JJil&ĕdb&naaN$7g۶Lv>`k#d _][kfdypVn}VUW(<!ZJ&ZsZPmJd-§*n@km*mk{!=smz!'"yC-7*c[ j'VZ"@:]ǔH:+2!"ZlnޞRDDR[RJkPJn> 4Vb*9dPSZ{^٧ϬeъpySkyv)QJ)1=$3΃-:ch~}oWRLCp3/RQ;g1n{HD2v:M3gŔ5ƿ%+7Q"bemރ؞XO>%o87*A1"# B_jx9]=]=Pے"Z+ PW-g/fi4MnTGF?01Cbg)'FD3@7v| D@[%MEXCEgH@CCUh/IȚ-Y CEM2@hb ! M ct m yӾ#jN.SEB G8C)jm A ! \/} <\O ]Ԕi$B?> .Uв1rA96_oBC:p D V@FSߪLOO_<k߻T8922@_2u1bN ͷޒˣl3g]vwYNʓy7>kf~yYoVQI5Ql .2͙SNjADchpE` Ob<͙[3;B4AeEnޞ.Bm\.pA 3Msjrɭ %%O> 50?'4А22߰@x8482jp,n@h%1j& B}'AڧD"ud2ziDƍ׉:{Px_T u759166J8G =4h0Ms 03 oueY\;E5<^dqq?!gΞ~jCBCBC7,T\7`'zXU} QY<&hHh~3o<ߝ7kx QY}BJnȰT\$eFѡbU1)4T7D=|W]Eh({T\9L\y}h ?"OPm 4իU"z/J>vxODYRy{<49zl鬷Ã.ɗNfzP'Nw;=&L? 4B 4}3fxEIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/0000755000000000000000000000000012273255454027221 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/main.cpp0000644000000000000000000000423212273255454030652 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" //! [0] int main(int argc, char * argv[]) { QApplication app(argc, argv); MainWindow mainWindow; mainWindow.show(); return app.exec(); } //! [0] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/mainwindow.h0000644000000000000000000000517712273255454031560 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 MAINWINDOW_H #define MAINWINDOW_H #include #include "previewer.h" QT_BEGIN_NAMESPACE class QAction; class QMenu; QT_END_NAMESPACE //! [0] class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(); private slots: void open(); void openUrl(); void save(); void about(); void updateTextEdit(); //! [0] //! [1] private: Previewer *centralWidget; QMenu *fileMenu; QMenu *helpMenu; QAction *openAct; QAction *openUrlAct; QAction *saveAct; QAction *exitAct; QAction *aboutAct; QAction *aboutQtAct; void createActions(); void createMenus(); void setStartupText(); }; //! [1] #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/previewer.pro0000644000000000000000000000044012273255454031751 0ustar rootrootQT += webkitwidgets network widgets HEADERS = previewer.h \ mainwindow.h SOURCES = main.cpp \ previewer.cpp \ mainwindow.cpp FORMS = previewer.ui # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/previewer INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/mainwindow.cpp0000644000000000000000000001416212273255454032105 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" //! [0] MainWindow::MainWindow() { createActions(); createMenus(); centralWidget = new Previewer(this); setCentralWidget(centralWidget); connect(centralWidget->webView, SIGNAL(loadFinished(bool)), this, SLOT(updateTextEdit())); setStartupText(); } //! [0] //! [1] void MainWindow::createActions() { openAct = new QAction(tr("&Open..."), this); openAct->setShortcuts(QKeySequence::Open); openAct->setStatusTip(tr("Open an existing HTML file")); connect(openAct, SIGNAL(triggered()), this, SLOT(open())); openUrlAct = new QAction(tr("&Open URL..."), this); openUrlAct->setShortcut(tr("Ctrl+U")); openUrlAct->setStatusTip(tr("Open a URL")); connect(openUrlAct, SIGNAL(triggered()), this, SLOT(openUrl())); //! [1] saveAct = new QAction(tr("&Save"), this); saveAct->setShortcuts(QKeySequence::Save); saveAct->setStatusTip(tr("Save the HTML file to disk")); connect(saveAct, SIGNAL(triggered()), this, SLOT(save())); exitAct = new QAction(tr("E&xit"), this); exitAct->setStatusTip(tr("Exit the application")); exitAct->setShortcuts(QKeySequence::Quit); connect(exitAct, SIGNAL(triggered()), this, SLOT(close())); aboutAct = new QAction(tr("&About"), this); aboutAct->setStatusTip(tr("Show the application's About box")); connect(aboutAct, SIGNAL(triggered()), this, SLOT(about())); aboutQtAct = new QAction(tr("About &Qt"), this); aboutQtAct->setStatusTip(tr("Show the Qt library's About box")); connect(aboutQtAct, SIGNAL(triggered()), qApp, SLOT(aboutQt())); } //! [2] void MainWindow::createMenus() { fileMenu = menuBar()->addMenu(tr("&File")); fileMenu->addAction(openAct); fileMenu->addAction(openUrlAct); fileMenu->addAction(saveAct); fileMenu->addSeparator(); fileMenu->addAction(exitAct); menuBar()->addSeparator(); helpMenu = menuBar()->addMenu(tr("&Help")); helpMenu->addAction(aboutAct); helpMenu->addAction(aboutQtAct); } //! [2] //! [3] void MainWindow::about() { QMessageBox::about(this, tr("About Previewer"), tr("The Previewer example demonstrates how to " "view HTML documents using a QWebView.")); } //! [3] //! [4] void MainWindow::open() { QString fileName = QFileDialog::getOpenFileName(this); if (!fileName.isEmpty()) { // read from file QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) { QMessageBox::information(this, tr("Unable to open file"), file.errorString()); return; } QTextStream out(&file); QString output = out.readAll(); // display contents centralWidget->plainTextEdit->setPlainText(output); centralWidget->setBaseUrl(QUrl::fromLocalFile(fileName)); } } //! [4] //! [5] void MainWindow::openUrl() { bool ok; QString url = QInputDialog::getText(this, tr("Enter a URL"), tr("URL:"), QLineEdit::Normal, "http://", &ok); if (ok && !url.isEmpty()) { centralWidget->webView->setUrl(url); } } //! [5] //! [6] void MainWindow::save() { QString content = centralWidget->plainTextEdit->toPlainText(); QString fileName = QFileDialog::getSaveFileName(this); if (!fileName.isEmpty()) { // save to file QFile file(fileName); if (!file.open(QIODevice::WriteOnly)) { QMessageBox::information(this, tr("Unable to open file"), file.errorString()); return; } QTextStream in(&file); in << content; } } //! [6] //! [7] void MainWindow::updateTextEdit() { QWebFrame *mainFrame = centralWidget->webView->page()->mainFrame(); QString frameText = mainFrame->toHtml(); centralWidget->plainTextEdit->setPlainText(frameText); } //! [7] //! [8] void MainWindow::setStartupText() { QString string = "

HTML Previewer

" "

This example shows you how to use QWebView to" " preview HTML data written in a QPlainTextEdit.

" " "; centralWidget->webView->setHtml(string); } //! [8] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/previewer.h0000644000000000000000000000441712273255454031410 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 PREVIEWER_H #define PREVIEWER_H #include "ui_previewer.h" //! [0] class Previewer : public QWidget, public Ui::Form { Q_OBJECT public: Previewer(QWidget *parent = 0); void setBaseUrl(const QUrl &url); public slots: void on_previewButton_clicked(); private: QUrl baseUrl; }; //! [0] #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/0000755000000000000000000000000012247412261027756 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/src/0000755000000000000000000000000012273255454030555 5ustar rootroot././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/src/previewer.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/src/previewer.0000644000000000000000000001552712273255454032600 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/previewer \title Previewer Example \brief Demonstrates how to preview HTML data \ingroup webkit-widgetexamples \brief The Previewer example shows how to use QtWebKit's QWebView to preview HTML data written in a QPlainTextEdit. \image previewer-example.png \section1 The User Interface Before we begin, we create a user interface using Qt Designer. Two QGroupBox objects - the editor group box and the previewer group box are separated by a QSplitter. In the editor group box, we have a QPlainTextEdit object, \c plainTextEdit, and two QPushButton objects. In the previewer group box, we have a QWebView object, \c webView. \image previewer-ui.png \section1 Previewer Class Definition The \c Previewer class is a subclass of both QWidget and Ui::Form. We subclass Ui::Form in order to embed the Qt Designer user interface form created earlier. This method of embedding forms is known as the \l{The Multiple Inheritance Approach}{multiple inheritance approach}. In our \c previewer.h file, we have a constructor and a slot, \c on_previewButton_clicked(). \snippet webkitwidgets/previewer/previewer.h 0 \section1 Previewer Class Implementation The \c{Previewer}'s constructor is only responsible for setting up the user interface. \snippet webkitwidgets/previewer/previewer.cpp 0 The \c on_previewButton_clicked() is a slot corresponding to the \c{previewButton}'s \l{QPushButton::}{clicked()} signal. When the \c previewButton is clicked, we extract the contents of \c plainTextEdit, and then invoke the \l{QWebView::}{setHtml()} function to display our contents as HTML. \snippet webkitwidgets/previewer/previewer.cpp 1 \section1 MainWindow Class Definition The \c MainWindow class for the Previewer example is a subclass of QMainWindow with a constructor and five private slots: \c open(), \c openUrl(), \c save(), \c about() and \c updateTextEdit(). \snippet webkitwidgets/previewer/mainwindow.h 0 The private objects in \c MainWindow are \c centralWidget, which is a \c Previewer object, \c fileMenu, \c helpMenu and the QAction objects \c openAct, \c openUrlAct, \c saveAct, \c exitAct, \c aboutAct and \c aboutQtAct. \snippet webkitwidgets/previewer/mainwindow.h 1 There are three private functions: \c createActions(), \c createMenus() and \c setStartupText(). The \c createActions() and \c createMenus() functions are necessary to set up the main window's actions and assign them to the \gui File and \gui Help menus. The \c setStartupText() function, on the other hand, displays a description about the example in its HTML Previewer window. \section1 MainWindow Class Implementation The \c{MainWindow}'s constructor invokes \c createActions() and \c createMenus() to set up the \gui File menu and \gui Help menu. Then, the \c Previewer object, \c centralWidget, is set to the main window's central widget. Also, we connect \c webView's \l{QWebView::}{loadFinished()} signal to our \c updateTextEdit() slot. Finally, we call the \c setStartupText() function to display the description of the example. \snippet webkitwidgets/previewer/mainwindow.cpp 0 Within the \c createActions() function, we instantiate all our private QAction objects which we declared in \c{mainwindow.h}. We set the short cut and status tip for these actions and connect their \l{QAction::}{triggered()} signal to appropriate slots. \snippet webkitwidgets/previewer/mainwindow.cpp 1 \dots The \c createMenus() function instantiates the QMenu items, \c fileMenu and \c helpMenu and adds them to the main window's \l{QMainWindow::menuBar()}{menu bar}. \snippet webkitwidgets/previewer/mainwindow.cpp 2 The example also provides an \c about() slot to describe its purpose. \snippet webkitwidgets/previewer/mainwindow.cpp 3 The \c MainWindow class provides two types of \gui Open functions: \c open() and \c openUrl(). The \c open() function opens an HTML file with \c fileName, and reads it with QTextStream. The function then displays the output on \c plainTextEdit. The file's name is obtained using QFileDialog's \l{QFileDialog::}{getOpenFileName()} function. \snippet webkitwidgets/previewer/mainwindow.cpp 4 The \c openUrl() function, on the other hand, displays a QInputDialog to obtain a URL, and displays it on \c webView. \snippet webkitwidgets/previewer/mainwindow.cpp 5 In order to save a HTML file, the \c save() function first extracts the contents of \c plainTextEdit and displays a QFileDialog to obtain \c fileName. Then, we use a QTextStream object, \c in, to write to \c file. \snippet webkitwidgets/previewer/mainwindow.cpp 6 Earlier, in \c{MainWindow}'s constructor, we connected \c{webView}'s \l{QWebView::}{loadFinished()} signal to our private \c updateTextEdit() slot. This slot updates the contents of \c plainTextEdit with the HTML source of the web page's main frame, obtained using \l{QWebFrame}'s \l{QWebFrame::}{toHtml()} function. \snippet webkitwidgets/previewer/mainwindow.cpp 7 To provide a description about the Previewer example, when it starts up, we use the \c setStartupText() function, as shown below: \snippet webkitwidgets/previewer/mainwindow.cpp 8 \section1 The \c{main()} Function The \c main() function instantiates a \c MainWindow object, \c mainWindow, and displays it with the \l{QWidget::}{show()} function. \snippet webkitwidgets/previewer/main.cpp 0 */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/images/0000755000000000000000000000000012273255454031233 5ustar rootroot././@LongLink0000000000000000000000000000016300000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/images/previewer-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/images/preview0000644000000000000000000003770312273255454032651 0ustar rootrootPNG  IHDRjb pHYs  tIME !Fv1?bIDATx |TաgTZi]EE)U+qAMMM=Y" ZjI>ֺ"V_P}}6 &aKL ;w]ιsgd~?Lܹ[&|㫳ȝZF gBo>]Y{|j}wUfj/fDrg=!CCÉz*T^T^CS"^h?VkGn.n3A^ z8wM?~O˅O^L~gdg $qZvOtƿhź5/+. Bz̬#bV?EwG#Ay"!BQ.1E^|?EwBwQ(noBoz߂z4\w\o剞+ZE_cBkIQ!I!!ܓ?wO/RX\s^N7wW߻ŏ)s32.|BLwۧ(wWi4!Z].ѤA]MF5B!${E#Bq@DkGxg)#J|KFDa w֯4Q I{1 ,jƘ6YOiBH7[t'px@D"B`D7"iBKz W}WU{A! FlrM3?2m/BHH]R_y8Mv!gL L(ϸlՕ_SCC0Ϛ zw!Q2Q!&?=0YmQtƨR#$/HjK*O|eΏ|?85a?i˵\$r⦁5?U ʊ?kMBDs %WRÕϩ^>j*Vq71T|Z&]Q6n`I[&]uxWptQ=N{'@h?g}#. B`=uщXq E\?Pвcױ'_K~A˲[yCe>٩H~vC{2[=|WnຖP@Da7{Ovlͫ-+^nY([VL4O*xǺǂ\q`0% 0Fڵņ_>]SuO.}bac+>|O5WQxlŽ~m聯]Mm!BD(|/&Q 0//l-[V"߼[^-.ŗ}ByD{?E̯YZ?r߿4?5O^p1F?G57h*q=Z񜒅ۯBͪ;"`yݺŵWӫ&W-XpL͈97qCԫz\SEFA* /-yx{yxcMEݺ{cѮ׊_6 B;|?Z٠ m#n<<ง#Vn]!eho4xI.[qߙE Bu}sKhmʊK'U.Wq߈ٷӯӏ˧ .tŧ/ )DU2 -U mm=!sVQXX[pEBHDBS=M UQݢfa #WoY!,!pҦ+4]E._x齕2^`_HDD~Q`oP>*czqd DAL%lcrv+姥=&4@E[BHv?p38%B5 # -nycod-\KY pK5[qߛk ) DDr"Aؼճ+bf;ZK' *xs\Koo(0$ _~^?93Cݴ+d|w]DBHXgw?%4$8୫7,\%-\0?0`A }o9c`,D}!cPfNxAe 3-01P6~ ջ e(U*X`gDhD QXsԢ;_zP(~$PPI6qu7|SiVFM1}:P>K*}F:tGC!$QܸI< JPNXpnXjEҼ% (xEV=!Q,D}!Fa~f(jmx`hP7rx[mDK*npowl=kώ^ \DA(*F֪1!L/>u"?^>u"Q,++}BsWf9&3RY֟3\gn?xT{ii׬3ϯo="#|BrPI-ټv]i9?ܞM:]8[BO]4'5Kcȇ>:pժ+/X$x`Gϭ:#" hm 2^oK'֬V#sX>jZK FF+Lrŕ.ׯrgh *ݰ;\ j* aҗsĘTZ<{Y̡?i?9I+V3_7Qo[MLX9-nfvC}ȯ1ukM^QȋњV ?]h3#d$B(R,ih`7OY,_xpԣao\e/^yys]t=UҊ#B T v_>yH1O^>)!q)WѿjU?#}ӵ - -DZ& k DaYQ! qqហ6l]Zn-}qÏ^Q~Զ=`sjS5_ҧ96]>M972B[FxkgV}{!D#~3g N9h5-VKOgzu[C~yc[]ZBd!]BDĔ&~v;;rA nohܫf]u_~Ρ}N/m!#kJ6̴! ce<{~o4i[^`;{,>_|\7'O=45q_`fUl'  stmR:IԟZ51O[V$BI 9_~M7,oZ. ihMy[ܖ۔1͡ 1c_Ȍc@|~Y&^.;%̻jޭUeUϽfΐ_ҿP;[󚌷.! i.En=k-)Bc΁s{[#^ z-ײע*- *3Wdeܓ"|Oz*|3cqŻ#ߤ7#94]9Џ6-JeN.ټ.GC!FF">ԣj}3_)kU kUph~׮ y0xV7@+9M=&UB,d!6fh{oow__1+bvVŬum!w_Z3m@}QP3OEVƎ+{y_[أJ! bMa sKwwމ^O^q{h gFs M]O8x݇{ \܆6^8=?K.n z9#qSZb׵}v۹{NlUeSMoSULP1ʱgW[y۩7.^(o=XEAwM-+N8EA (9!i *BH{ЉJ^zΔwew*?gv*ά:ʯYUO[C\V-1ʃ'>u}?霢F(yqшpg};n=u_zA_x~&(hGDA9+r7~y!}8.?eeo/qϯV4(+PҢU-4uAOzč gk#IKJidBխq"ŧg]KG3iq,cV{!q{]DbH}TPK9ZƞѤqIsNF.5iG#3œZ7 iAߝZċ)MZ݀#wF EAs2_Ǿۊ÷K\߄2'Qz&틾BQFmGHnH)_1AAJX\n+D! .HϠŘAB%4OH; z.}՞3ʜ@.B!tF5B! BA!(B!6Ei4BA<(f}[/SUrۖZ,@!tPQhӒQ B(jUY?N(]齹7rI!t[?S/.Б7B!#(85"%5 FHB!$D~@!t6 NcNQhH!tƌ~bmb4f -VrK BHB IB!i" B1BVW;(B!Q B@!DB!]@^KBFB!z B@!DB!!BB! BA!UE!snDB!!BB!tkQ(1lю"~BHG[1wvHK=cxNo?/>*CGc}cg΢tm6I!KsEЏKJI=O!]Cްc؆bE|+TmyBy?u'I($ؙ+~_kɇ_$3:]! Ɉٯ. X%}swh*;HB}="ӵ_>gZuNM>ޏ@_ cm-6̥Ƃ(x-[6oRhNگЋQp.) yѽ($ e֭a3mUjds3/| !]L(dݲFD$O?0\wSHzZ]l)BHw8'% [n.. В3{m:a[q;YrQH7#e_{&n t1g֬RMBgdEATV$>&}\ı8D02A,%Q' 0TN67ЫpMzdgg*]f?сfhoaEuKyfkLBWjRD:(`K/T_t e.S¯ÂDSˌF!,TJD:}BJD}+Xo5 B> Q%.(Vd[XWzcBRmJtBQzi. q>} okeXojJi~$Vb'ԃMVV<u%C"*f5gXL˜^6u! zf5Bt;Qu1gL(t<[@* fBWٺe(t"Q@QFW4`@m(d" E!ѥYE!??_>Rcsl)@zDy@ !(ej}DŶOY|BH{"y;F'RҦʞW@14e1Wa=whQW.5MNz6H)+|6KoheIrNHNt KV`;: B PJPӼ}^xV*]sל=اdzROQhcQ0,eCa>z^cيEЅkR?!Q0 Icy5ft+MHZKs d+/񥐿'+}iЍ^|!cIh9k;m ?۹9>s"QH\Z7 mu(JKqMqiC(O]#T4S`(:^k h3!PKaݰSW (([|Sm&*=Ե44'xSC(Wf91\MžO/_2tG$3cI*Ur?_G ^uQ mɲWl((GPܴ۲bZו:yN  iZYb 0O-^̫"Q0'<꣗QY (GcF{q(m,VԃHV^AdD k䶐ts.& {nBtE\< Qsڰ@Q,;lGscHI'xm Ѻםv;QpV`+՞:Q[|s& RM%Ւ<c.[nq͞F}t?+uɭD4h~Kc* Z*õ6 _%.o+M/Q.ivzQG$?;($q"/L=o=0! B'DS۳^D!F=GPWiyhAg? +u{ y=\)'QPuΣ~퓬PhNh.GW((04 FURu*Q3mt+ـKnO+'Ѕ3r齾~ &v'CTd"HVV6F<QDkB;`j!Ff( ( " Q;ѮCX4:VtlzQ5jґ!MKNj>xe=&Il8(tTQ)c0;n5vwkhzQ9e2sd^Ÿ.4p,]$y1EA>Y:he Jʱ%Mem0Fhq)F] dI.GĽI2Q}Q@:(ŵ݀E^[Vǥ" m (@'zjoxɣ(7#TcKFJJȊ[VQ/}PiErQI 0p:(8G}4ꑗё^DSEwQ;FpT-i0s^KIǥtjeFGMoڄƌЩD!t侉wQ@xBZFDQD@B&`yv]Q3" ($^{w(dZA֠) ): BkDL?ȊRtkOI]Q@Ld `T c@$#c>cQJj%na^e[%S'qo!Hc0hR wȂ 4KD_VBa^̓SBt1f[( F1jG(ZFP\|$5u-ۘ ۨ DUTs" B'`\VKq;[`xIhPim(FLͰ1EArߺ_m!(t\QhQ=1}NNN2m)ͷC6FLɰq/[l@~UEB[( Ǩ1?Tow,m`IG̩eK6;%BDQ.uG;# B'1R9[DQ@K(  (dtKJKr( H$2G<>O3=Qʋ̓*Pu;֤G}N{v7ҭOm;v1h~ml?plS/^"}޻pZDx/w"Qa0蘓qD!SɟLg/).) xܷ=ϖ|[g/gpw k>{_x( - N?w4A2̢]YmyEy ,T  _'f AB(??/Wm0I10?k`73j9G8A6t:C̱/9+/1SNRs$b"4qv(kYmt2JӜi<ǟ.Y&(h[n[}T(ȷtYE~A) KE-Gpp~w&}\փtJ؏NUrmS(KJy?֕u I=[]u_~뺑mP~gW#ڇ(7umވʲƒ+. xDyDAq@brS0]iX37SvT%koZ[Z"Y.Iɾ$! \=z*V@<(VO*Q.ٷqbF2/V^xRQpڧ5$P1+_˴vz)XP#3lCB&o/t5nȆߊqұ\WF!%]Eӷťq-muUT-3=V7mOK2ByӕQ(x/_ L靥." sS\`;K.딜/% U% ((ZUcl.,#?f';;Kꎬ4mH_t9TW@Ir%* l[\xMyHT_'GunE2J7zGUmڗdjx ijo`m]E\ Tů2ygշB:ǴL(l*)kۊuͣ85aLH,gx ;oYk|BÔsW膫JRQO#ik`TKu~ ]f[:EAqTo$+%(f> WC*)Yi CO:JߕWD> (R>ho=n*&  wQUX"nUï72qGOR'n[^7>ExMه S(Ku2FT6?z>oy-^TݗDLփ"gB((-m2?T[,ƌmPht҆fm 55s=[\"[_+%^)6Uq@b յzh*prW )uN&wˎmrlU* Qu|R/I!bkP^_>< (xgGѠJdIҫLy6c67ҹiΟ|Jm|P@λ($jX˦Hߔ}~%=!H|KMkcTI;QoM%YQP4 )͏GO/cQD)􆪥x:xuo~WQDe<? Ki]> (NСbR1] QmEAӠG/}+Oe@tԍ<Q@RMJ#όKQ*=6{,]p0xV((ȞNk_-8-Gs>ѵ/#yIґd=]XSr_x]w@ɵMgc 2c3Z0;)U?|cZU] 1kn1(P`=fvja$M;Ci'WÅ;Y UeO8ߗ $_ucqTE|ZP:A:č5\DѤT]`:Wu(F,u GVK ')m9SdeofK{݆8mI7׋(VykcZ`ogn'ĭD!#m;/c'zSͭ]l#RJt6:)TzP^kG'߸s#1(F:cW(0+ "ֺݥ_hmFA:De8+DQR6z6 æVx\W@ X,H\Z& 3:W(K|:jИQHgF㊽K1d_ E;I@<H(XVE ; O$, cQ@' (~z9'QPJ$/0Z]x(#+P(%$&Uz@D!GxZ4Zzk( DZg~"Syir(W(AǪ4ADQH}? Ѣz\% Bh(}G!GUY   BڦCv晌FrӉB]`* m"DQPNQp XX:QEmC:YEkmm7=;=t蔶&[h S!ʡk>( m. X6j3oF >{SZp6W/:G6xXԽ NOp9mpHT]GD]jdC,' QPlC¢@(lEY{aU>6:$ Q@= bQ2료zl²F((eÂHlCWQ@/ )$' BGQD@DQ@DQ@n- fn.tAD @DQ  QD (D(@DQ@DQ@DQ@( Q@(@JE!s.D BTnQ (DQ@AQ  QD (DQ@DQ@DQ@( AD (D" ( AD @@AQ  Q@DQ@DQ@D @DQ (D(@@AQpEDQ@DQ@DQ (DQ@AQ  QD (DQ@DQ@DQ@( AD (D(@@ADQ@DQ@DQ (DQ@( QD (D(@VDQ@DQ@DQ@D @DQ  QD (D(@DQ@DQ@DQ@( Q@(@@AQ  Q@DQ@DQ@D BHC( Q@(@@AQ  Q@DQ@DQ@D @DQ  QD vQ*C( Q@(@@AQ  Q@DQ@DQ@D @DQ  QtBoD @DQ  QD (D(@DQ@DQ@DQ@( Q@( AQ M{Q (DQ@AQ  QD (DQ@DQ@DQ@( AD (D(@;B?D @DQ  QD (D(@DQ@DQ@DQ@( Q@(@h+QQ (DQ@AQ  QD (DQ@DQ@DQ@( AD (D(@{^_ AD @@AQ  QD ( ( (DQ@( QD QD(DW( AD (D(@@ADQ@DQ@DQ (DQ@ރw! Q@UfQ (DQ@AQ  QD (DQ@DQ@DQ@( AD @hKQQ `W( AD (D(@@ADY.DQH(nDQ@( Q@( B!A(T;o@DEz{EkY!%;>hkS~cD!qQEKվ-k^ŀi|79cc ՚bvQ@q*)ts.s|ֈ=z_J/.# B . ^rKq:X]FEA'N|)./8lju`)( I(Ʊ@SCub*cD!YQhiini v476:XW. jD!)QB9z>;])_kƆ#5Vˈ(ENcm`;Qh 1@CÑ}D!]ݷ&mmv4b2($) ʛd'õ4o粳ۙbMSӑ#kbBlCi߯dvQ@I"=։;~xx/ |~wڌ#G>|*(ĽƾhxN6Qؗ;sF3sD!)Q0ʛij]+69'fxoٴ̟y' 46:t]eӖo~_ld7E5Q~4Sb>nZC?h3l[I)E2ME!spjD(oyaoNܶ>;{6_tcf<{E!]1E[^82[=wBygi;eDBV߫)Qw-p0l{n>qcҍ~[pFO ׊OcJ9rʪ1D!]vnec#{ts[Lܶ>o0}m-yn[*wQ@i ۑ˜1QQ869RjI,Qs[h܍%sj1m Ͷ1硈ˈ(Mõu+?snˈ(ʛ`];ݡRs( ɊJZ:o.jE枲۴jC2($. ?q_Kw}mŋ%şd/hC( B徢O:zs?{c-ul?Q/OM2($. UĿڀiDu׈655ˈ(s`ц``spKHKs`Ŵc-- ~.# B@UB!L(DB@B!A! Q Np@BL"Qa%zn-A!]L(lݺ,ӏė!t3yWS߭UU|=!ɓY,tlvA!L(B!Q B@!DB!!BB! BA!(B! wT-B!]#.ENkKO[w%M{؈JڛH9{;!m7]_W?z]DoxG^Q-K(߫lHO6$tmyJ6/%x6ĝ~]8Jx:ӑO_yiM:.mryUS 7^#Bq+Eh&IENDB`././@LongLink0000000000000000000000000000015600000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/images/previewer-ui.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/doc/images/preview0000644000000000000000000002415112273255454032642 0ustar rootrootPNG  IHDR {(0IDATx^[]gwX{iɡŒJ=jFUĂJ%RxaɅ cQPJMxjK6BH$' s>^grl&he{^{)| `F h!DQHBBk4$jZ2yeʱL DVs ixPX,^&kYAH}@*nh}K7[CbXP0@k%%Hiye)FLc<*g{e Wmׅ"  hXV\`PeYe"5koCIͶ3TeIURURkwPqyZ@|96bJ5ӅUڢ [JĈJP70ߔ| h.Ye k tC%'#:"Ջʋ2"o("U@$tKZ ɑ+|ذi%hZ>- )`X#,˲,K_%!*b" @jV^}D ԷEib3nG@Y,9P':5] ,TS)7BbdY䂖eY~# Q4ՀDD_9wNlR+aVW@SbR$ $Ix;ɲ,˲B7~؈g=|Roi:RA u<9<ѩѝj=ΈpNR"%F N\.N PgYtY0{o]Ǐ̞4[u~ФJJOYem`c5VbB`DЈ  R {ކx87mw\Xe Ro1 -JE{rblk( =X) "6pFE4\\*=rbpT诶{%W' 2y,]bt+UT‘pA::Zc< " =+UOJ?/)w 5;16@ttC^Mkg&wOm*}S_>-\%˲,\`#F)TN* UjB"D+UXu!ΪCĻԞAu?2y.y'ҎGK4 `1 ;ul/-c 3ݲqO (:fV c\?ݽoaŴLew:%Zq_#nooB)ja!+$4d%^90GN}3Wn/ a@D]kƱ?oٶsznl^D&aAbPo*q}v+ztaG'5_EYi֌E]_QqcX!$8k@bOo=;'-|ېB=E_?_h AMD'(V.^#Hp<L  @ "Pj360КcpmBB6v]9BJ3,P\%`fc Aƃ 86bs9gRMX":+n1};w*Q#@ "`Nl@ >/ %gOY =n@H hꟁ&EB{ƧЊ  nű%UaE)ZȳwLwߟ,md/фnC{o..Ui6ҋU|9]om3'vRH@*WRHDH Pӂ 2! C cpG&DYn$ IJ1<B,/{uLYk2 68 đDLgTS m43̗;WJs/yG8?|o~w9ǫ>uDeeň1 " "ͤ!4Ȱ0Zkɞ;8ݸ/7k y襆Tc'xm)&2HAkɚl-8MSWo|KD[ fHj$ys!`͌%2w7MDaǟ3g&vaTW=d%Hočƍ"7.RU?-sμf&(]:3{N2q< u*phۏ$fwL'6ysɂ&2+nlÃ3h*Tˇ*/yr3yV+PAgx 4EU,TMf2' Ap:--/Jo7|?@w5TŊ(9a!zySSKgFu($yQAq>(q^z%U}k̩4y)Js@6$.1[kf p `tC=vSxy7/\t>v#y[jg]wN@.t9t9]]94'pQQQl^I< `sƠmQRB8j_I! Egp`!&KJp[*0lPZs C{=9rrGْIpwOuSe]i4Q!ըF5QE# }sX ((}RV-ZVsx-ްȸRl{}VpKNG@U*n%{QEz~1- VֵM6k6;︱iaP)׫|!){CI@& z,ޘI*G*S) (C]=0Lå@Yw ];=J΂̂]#* H"z(yDWn' <@1M3l<ɕry`$p̫(\}%0}hdiA' B]*R>g\6YEG4gsmꁐE V e9i4 #6 'N*sQ6Tq'9YJP7obyD" ?45r' 4ǁgiV}@Q`rf$n^oyyZ}hX<\h~ 䲔oK|3f jqU>>i@*%m)6qB= f;؋(lx߷FMNM^]x4r'ըF5QNy_g?X5 9a Ҽh;ZSh16"Gpau1{{&w;f-o 5-ߋiy h9bJr@ݙNOԩSN.>sܮw߰7`-x&?[44ƈ[1jK7c\?~c`+r@@+*dݷ)7Ŋaol_-rr@-amsv߰7@@-E;hp/-a oa rQrr@o}:o}--r`m` o` rr@-rveo}VQ彼r@--7o1vh߽<;@@--쾍vߖa oZh9hyeHr^}va o [h9Zh9hyV7oe ov:-rr@--` o4o}x/lZh9h9v7` hr@--Ϫ rv߶ v r@--r Ha vh9h9ZZh9` o7ZZh9Z}kov߰7@@-rr@o}7` rr@--r[3}7ZZh9Z}a oZh9h9vߚ7` hr@-2j-r@-a [g` ^h9ZTEj9}}}r@--7oe o[` rr@-rvTv߰` ^h9Q^h9ݷ17` Zh9Zݷ` vLZh9h97}˲v--r@@o}Aa}ZZZh9` o7'i9gtr/v߶ ov߰7`Zh9h9WTLo7` 8A-rr@-}v߰`m-gw=aQePw7!A !"7/*o/<_VmȮCȈP+oDK^~\eG|EN/B}b"hwaoًeG#w9< )o_k޵24]r,s:7ͪCa;#+Ŏ}.{9۞Js?Y*SHu}W.۲K #~7Borl\ݻyѷ)ƵCa/wUܨ0I}U5Gw"U m,,)ƨs_z'+i_/ld=_!♣f-־n-BDMӣ!P7#nLjEm?I*cs< +ߛkS7gSPA>/:úw*ZgdE#g493zl =/WB=/Ou97q2ޗ(i:Xnw/?j)|m^92JX=٪ kmE3j3>_0S-z5DN[B\ř0sAۖA̞emǿX\V"\:{ԃeP,KƮΨm_̆:~NËm[ Z"kG!''O{ \lm]M+NYtUZQ7-r}}}1ܕ!BRS7 7˂`k㲰Hn#B{eV0~3״>^fՁF!{RHxkb2R]78!rz#TD!IB3: \ؘ1^ PB#CR"9 C!TJ3}ʄ_r(( TAj_\#9B}c e?ښ5/{ qž+7?=ѽ05dFGNoB}ߌm^)A<]hևo.aYCl~F!h2~^E1ðLq00 a4v`( }E1D p~?'5q VwD*O!:dssӼ{g:-Y17k:Jd\>6&<^^,g@s;UStʹ>5\~gX;8 Vz݅vTP`{ԉ >8bu@HjյlF vS@?+ÿO݀H)NgAnvxf(߼}p}7yOY10MTTTTTܷ(Pc[+q`s}cf] LG ,?j F۟cR՘TQwrUJSoU*) Form 0 0 911 688 Form Qt::Horizontal HTML Editor Clear Preview HTML Preview about:blank QWebView QWidget
QtWebKit/QWebView
clearButton clicked() plainTextEdit clear() 56 653 98 551 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/previewer/previewer.cpp0000644000000000000000000000453612273255454031745 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "previewer.h" //! [0] Previewer::Previewer(QWidget *parent) : QWidget(parent) { setupUi(this); } //! [0] void Previewer::setBaseUrl(const QUrl &url) { baseUrl = url; } //! [1] void Previewer::on_previewButton_clicked() { // Update the contents in web viewer QString text = plainTextEdit->toPlainText(); webView->setHtml(text, baseUrl); } //! [1] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/0000755000000000000000000000000012273255454026674 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browser.ico0000644000000000000000000003601612273255454031061 0ustar rootroot@: ;(@t    )06;>BDDBA>94-"!,7AJQW^bdffec`[VOF>4(%4AMWbnA(Z7_:b=c>b?"a?$d?!d?c=`:[7H* k^TI<-#4DR` wL.a<`?%f@!qDwF|IKM N L K{HvFpDc?$c?#e=R0 r[M>,/ARb) `<_>&jB{HN PPOONNNNNOOPPmGqEeA"a?%g>1[K:% $7K^]:`?%vFOOONNNNNNNNNNNNNNgE 31<tIoDa?%e<!|WD0)>SlY7`>%qDOhK @_GNNNNNNNNNNNNNNNN[B ;;4=~KkBc?#b: eK6,BYa> jBM uL"AFM%7DNM>C?>pINNGDMNNNNNN8=?C "8bFLe@"jA%{P:,E[3a?$tE}M.CDX/"`7!_7D(B@L#P)I"#?NHP+J(N*`3t>HNNNM7;>G>3:M kCg@B%S;+D[H,`?%pF5DBV-#b9&f<'h>'h>%e=\3 ]5Z2U-P(@zHS,L(L(L)L)L)L)U-i8|BLML?9I$H%!:cGtFc@#Y3 S: &@ZJ.a?$@CCO( ]4#b9'h>*lB,pF,pF+mC(i?$c:!^5X0Q*?]2M)M)M)N*L+?NI5N*N*N*O*^2p<mB$9M'R+C"6>wHa?%^5 P6:U6"`>%9BFR*X0!^5%d;(j@,pF0vK1wL-qG)kA%e<"_6Y1GGD \1O*O*O*M-)D4`6f4]3K4;9h*APJ6P+K.:U-X/R.%=fEd@#J*K0 2N  `>$I@I!R*W/ ]4$c:'h?+mC-qG-rG+nD(i@%d;!^6P("@N]2Q+Q+M.&FL4`6f6f6f6f6f6f6f4]3K+@&x:$l5!`4[3"@"_AhA1zD% (E ha>"xGTxM ?K#U-Z1!_6$c:'g>(i@(j@'h>%d;"`7Q(@LN^2R,R,4>LL4`6f6f6f6f6f6f6f6f6f6f6f6f6f3]/O,A!{M aaaaaaa`\+DFQ)Q)D>GS RPNNb5X/X/6?LL4`6f6f6f6f6f6f6f6f6f5d.FYlƞvɗ6f6f6f6f6f6f6f6f6f6f6f-D'E8$b@&b e e f!f!f!f!e edbCK@@IK[YV TROd5Y0Y07@LL4`6f6f6f6f6f6f6f6f6f(x.C~?ծ6f6f6f6f6f6f6f6f6f6f6f5`)~4 2QdA%U%j&j&j'k(k(k(k(j'j&i%h#f!^ba_][XV Sg8[1[17@LL4`6f6f6f6f6f6f6f6f2TP~̝6f6f6f6f6f6f6f6f6f6f6f6f+ b7`59ALL4`6f6f6f6f6f6f6f1P,l%Ȫlŏ6f6f6f6f6f6f6f6f6f6f6f6f6f6f0N -MfC'`0v9x9y:y;z|@}A~BCCs8CBp6|?{>y;x9u6s3q0n-l)i%f!ctEi> g< >ELL4`6f6f6f6f6d"cz{խ6f6f5b%o%wyOy6f6f0N9W:!sM-CEFHIJw>EM$DEFD}A|?zy9^-V'T#GNLL4`6f6f6f/K!Xd‰6f6f!^9h$k!qs6f6f6f6f6f0N AjG,qDzCGV$)I!GJR(V.X0Y0Y1Y0X/V.T, S*Xa0ďYÌUQLHC{>`0Z*W'IOLL4`6f6f6f&u+KHNy6f6f#ijjfË$k!rs6f6f6f6f6f0N AfE+j=EHM'R*U-W/Y1[2\3 \4\3[2)`86f>7b:]g6ǒ^ŐYÌVQLH~Ce4]-Z*JQLL4`6f6f6f"b{};j6f6f&r(SQխ$k!rs6f6f6f6f6f0NA`@(5JH M%P)T,W/Z1 \4!^5!_6"_7&b9:lE>nG=kE9d<^h8ʖcȓ_ŐZÍUPKGh8a1^-KRLL4`6f6f6f Z6f6f6f(|2@{:۹$k!rs6f6f6f6f6f0N E^>''GK#O'R+V.Y1 ]4!_6#a8$b91kCBsMAsL?pJ>nG9f=fm<͙h˖dȓ_ŐZŒUPJl;c4_0MSLL4`6f6f6fS ɬ6f6f6f+<1l&$k!rs6f6f6f6f6f0N9bA)+FL%P(T,X0\3!_6#b9(f==sLExQEwQCuNBsL?oI8d;|Mϝl͚h˖cȒ^ŎYŒTNn>f8c4NULL4`6f6f5eM6f6f6f.G%^$k!rs6f6f6f6f6f0N4iH.0FM&R*V.Z1!^5#a8.jBFyRH{UH{TFzSExQCuNArK>b8^ҡqϝl͙gʕbǒ]čXŠRrBj;f6OVLL4`6f6f4_L6f6f6f0M U $k!rs6f6f6f6f6f0N/kL17EO'S+W/[3"_71kCH{UI}WK~XJ~WI}WGzSEwQCtM@a4ÞpԣuҠqϜk̘fɔ`Ɛ[ÍUtDm>i9QWLL4`6f6f5dM6f6f6f-F&_$k!rs6f6f6f6f6f0N'jM1&#N)-a;DsOFvSHzVK~XL[O_PaQcO_KZAa3˫ⶏ֮Ч|ש}եwҡrϝl̘fȓ`PxHtCV\LL4`6f6f6f't*OL;j6f6f"cvx:q0Dq6f6f0NTE'?K+CqNEtPFvSIzVK}YL[O^P`QbO^L[CsJEg;Ec5Cb4Da5@]0B\.ZОm͙gɕaRzKvEV]LL4`6f6f6f0O V a6f5dV Ȫ1S@R=x66f6f6f6f6f0Ns\BYG,CqNEsQFwSHzVJ}XL[N]P_O_M]KZH|VFxRCtM@pJ=kE:fA5`8F]/џo͚iʖcS}MxGX]LL4`6f6f6f6f!_8g)5XJ.ErPEtQEtQFuREuPEtOBpJIf:׳⸒߳ܯ٫֧zӢuОn̚hɕbYQLzk,LL/L6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f5b2V/K-D+;hǭ'jO5TP2CsODrPDrODrOBqN?kEvV⹓ൎݱۮة}ԦxҡrΝl˘gȔ`XPLx?"NL)}36f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f5a1T.J,B*;&t2E KeG/PV5BoLBpMBpMAoK>jDo{Pᶏ޳ܯ٫֨{ӣvПp͜jʗdǓ_WPJ}Eqf%LP2U6f6f6f6f6f6f6f6f6f6f6f4_0Q3D;t8Es*&u2:mycC,QT3BnKAmJ@mJ?lHJe9޳ܰڭש~եxҡsΞn̙hɕcŒ]ŒWOI}Cy>|f%3R Y.G6f6f6f6f5]8N1C.{=.n8.b4)H'O=#c@"KwxiJ2VL.@kF>jH=iFAe;dڮתէzңuПq͜kʘfǔ`ďZUNH}Byw9s4o.l(g"c_`W}Ic@#jBI N'ֵ=nMtQ5a@)|V8oHUVQLF~Az;v7q0n-j&f [~LiB _>&mC~HҒN8 Ѹ)llHyT5a@(iF,rM/zS1X3]3_2X-|Q*sJ&jD$c@%a?%pC}GьLqN־__tIh>^6ցW/yP+uL(yN&{L |KJJ MYN?????qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/cookies.ui0000644000000000000000000000475712273255454030704 0ustar rootroot CookiesDialog 0 0 550 370 Cookies Qt::Horizontal 252 20 &Remove Remove &All Cookies Qt::Horizontal 40 20 QDialogButtonBox::Ok SearchLineEdit QLineEdit
searchlineedit.h
EditTableView QTableView
edittableview.h
buttonBox accepted() CookiesDialog accept() 472 329 461 356
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/cookiejar.cpp0000644000000000000000000006012112273255454031346 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "cookiejar.h" #include "autosaver.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static const unsigned int JAR_VERSION = 23; QT_BEGIN_NAMESPACE QDataStream &operator<<(QDataStream &stream, const QList &list) { stream << JAR_VERSION; stream << quint32(list.size()); for (int i = 0; i < list.size(); ++i) stream << list.at(i).toRawForm(); return stream; } QDataStream &operator>>(QDataStream &stream, QList &list) { list.clear(); quint32 version; stream >> version; if (version != JAR_VERSION) return stream; quint32 count; stream >> count; for(quint32 i = 0; i < count; ++i) { QByteArray value; stream >> value; QList newCookies = QNetworkCookie::parseCookies(value); if (newCookies.count() == 0 && value.length() != 0) { qWarning() << "CookieJar: Unable to parse saved cookie:" << value; } for (int j = 0; j < newCookies.count(); ++j) list.append(newCookies.at(j)); if (stream.atEnd()) break; } return stream; } QT_END_NAMESPACE CookieJar::CookieJar(QObject *parent) : QNetworkCookieJar(parent) , m_loaded(false) , m_saveTimer(new AutoSaver(this)) , m_acceptCookies(AcceptOnlyFromSitesNavigatedTo) { } CookieJar::~CookieJar() { if (m_keepCookies == KeepUntilExit) clear(); m_saveTimer->saveIfNeccessary(); } void CookieJar::clear() { setAllCookies(QList()); m_saveTimer->changeOccurred(); emit cookiesChanged(); } void CookieJar::load() { if (m_loaded) return; // load cookies and exceptions qRegisterMetaTypeStreamOperators >("QList"); QSettings cookieSettings(QStandardPaths::writableLocation(QStandardPaths::DataLocation) + QLatin1String("/cookies.ini"), QSettings::IniFormat); setAllCookies(qvariant_cast >(cookieSettings.value(QLatin1String("cookies")))); cookieSettings.beginGroup(QLatin1String("Exceptions")); m_exceptions_block = cookieSettings.value(QLatin1String("block")).toStringList(); m_exceptions_allow = cookieSettings.value(QLatin1String("allow")).toStringList(); m_exceptions_allowForSession = cookieSettings.value(QLatin1String("allowForSession")).toStringList(); qSort(m_exceptions_block.begin(), m_exceptions_block.end()); qSort(m_exceptions_allow.begin(), m_exceptions_allow.end()); qSort(m_exceptions_allowForSession.begin(), m_exceptions_allowForSession.end()); loadSettings(); } void CookieJar::loadSettings() { QSettings settings; settings.beginGroup(QLatin1String("cookies")); QByteArray value = settings.value(QLatin1String("acceptCookies"), QLatin1String("AcceptOnlyFromSitesNavigatedTo")).toByteArray(); QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy")); m_acceptCookies = acceptPolicyEnum.keyToValue(value) == -1 ? AcceptOnlyFromSitesNavigatedTo : static_cast(acceptPolicyEnum.keyToValue(value)); value = settings.value(QLatin1String("keepCookiesUntil"), QLatin1String("KeepUntilExpire")).toByteArray(); QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy")); m_keepCookies = keepPolicyEnum.keyToValue(value) == -1 ? KeepUntilExpire : static_cast(keepPolicyEnum.keyToValue(value)); if (m_keepCookies == KeepUntilExit) setAllCookies(QList()); m_loaded = true; emit cookiesChanged(); } void CookieJar::save() { if (!m_loaded) return; purgeOldCookies(); QString directory = QStandardPaths::writableLocation(QStandardPaths::DataLocation); if (directory.isEmpty()) directory = QDir::homePath() + QLatin1String("/.") + QCoreApplication::applicationName(); if (!QFile::exists(directory)) { QDir dir; dir.mkpath(directory); } QSettings cookieSettings(directory + QLatin1String("/cookies.ini"), QSettings::IniFormat); QList cookies = allCookies(); for (int i = cookies.count() - 1; i >= 0; --i) { if (cookies.at(i).isSessionCookie()) cookies.removeAt(i); } cookieSettings.setValue(QLatin1String("cookies"), QVariant::fromValue >(cookies)); cookieSettings.beginGroup(QLatin1String("Exceptions")); cookieSettings.setValue(QLatin1String("block"), m_exceptions_block); cookieSettings.setValue(QLatin1String("allow"), m_exceptions_allow); cookieSettings.setValue(QLatin1String("allowForSession"), m_exceptions_allowForSession); // save cookie settings QSettings settings; settings.beginGroup(QLatin1String("cookies")); QMetaEnum acceptPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("AcceptPolicy")); settings.setValue(QLatin1String("acceptCookies"), QLatin1String(acceptPolicyEnum.valueToKey(m_acceptCookies))); QMetaEnum keepPolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("KeepPolicy")); settings.setValue(QLatin1String("keepCookiesUntil"), QLatin1String(keepPolicyEnum.valueToKey(m_keepCookies))); } void CookieJar::purgeOldCookies() { QList cookies = allCookies(); if (cookies.isEmpty()) return; int oldCount = cookies.count(); QDateTime now = QDateTime::currentDateTime(); for (int i = cookies.count() - 1; i >= 0; --i) { if (!cookies.at(i).isSessionCookie() && cookies.at(i).expirationDate() < now) cookies.removeAt(i); } if (oldCount == cookies.count()) return; setAllCookies(cookies); emit cookiesChanged(); } QList CookieJar::cookiesForUrl(const QUrl &url) const { CookieJar *that = const_cast(this); if (!m_loaded) that->load(); QWebSettings *globalSettings = QWebSettings::globalSettings(); if (globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) { QList noCookies; return noCookies; } return QNetworkCookieJar::cookiesForUrl(url); } bool CookieJar::setCookiesFromUrl(const QList &cookieList, const QUrl &url) { if (!m_loaded) load(); QWebSettings *globalSettings = QWebSettings::globalSettings(); if (globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) return false; QString host = url.host(); bool eBlock = qBinaryFind(m_exceptions_block.begin(), m_exceptions_block.end(), host) != m_exceptions_block.end(); bool eAllow = qBinaryFind(m_exceptions_allow.begin(), m_exceptions_allow.end(), host) != m_exceptions_allow.end(); bool eAllowSession = qBinaryFind(m_exceptions_allowForSession.begin(), m_exceptions_allowForSession.end(), host) != m_exceptions_allowForSession.end(); bool addedCookies = false; // pass exceptions bool acceptInitially = (m_acceptCookies != AcceptNever); if ((acceptInitially && !eBlock) || (!acceptInitially && (eAllow || eAllowSession))) { // pass url domain == cookie domain QDateTime soon = QDateTime::currentDateTime(); soon = soon.addDays(90); foreach(QNetworkCookie cookie, cookieList) { QList lst; if (m_keepCookies == KeepUntilTimeLimit && !cookie.isSessionCookie() && cookie.expirationDate() > soon) { cookie.setExpirationDate(soon); } lst += cookie; if (QNetworkCookieJar::setCookiesFromUrl(lst, url)) { addedCookies = true; } else { // finally force it in if wanted if (m_acceptCookies == AcceptAlways) { QList cookies = allCookies(); cookies += cookie; setAllCookies(cookies); addedCookies = true; } #if 0 else qWarning() << "setCookiesFromUrl failed" << url << cookieList.value(0).toRawForm(); #endif } } } if (addedCookies) { m_saveTimer->changeOccurred(); emit cookiesChanged(); } return addedCookies; } CookieJar::AcceptPolicy CookieJar::acceptPolicy() const { if (!m_loaded) (const_cast(this))->load(); return m_acceptCookies; } void CookieJar::setAcceptPolicy(AcceptPolicy policy) { if (!m_loaded) load(); if (policy == m_acceptCookies) return; m_acceptCookies = policy; m_saveTimer->changeOccurred(); } CookieJar::KeepPolicy CookieJar::keepPolicy() const { if (!m_loaded) (const_cast(this))->load(); return m_keepCookies; } void CookieJar::setKeepPolicy(KeepPolicy policy) { if (!m_loaded) load(); if (policy == m_keepCookies) return; m_keepCookies = policy; m_saveTimer->changeOccurred(); } QStringList CookieJar::blockedCookies() const { if (!m_loaded) (const_cast(this))->load(); return m_exceptions_block; } QStringList CookieJar::allowedCookies() const { if (!m_loaded) (const_cast(this))->load(); return m_exceptions_allow; } QStringList CookieJar::allowForSessionCookies() const { if (!m_loaded) (const_cast(this))->load(); return m_exceptions_allowForSession; } void CookieJar::setBlockedCookies(const QStringList &list) { if (!m_loaded) load(); m_exceptions_block = list; qSort(m_exceptions_block.begin(), m_exceptions_block.end()); m_saveTimer->changeOccurred(); } void CookieJar::setAllowedCookies(const QStringList &list) { if (!m_loaded) load(); m_exceptions_allow = list; qSort(m_exceptions_allow.begin(), m_exceptions_allow.end()); m_saveTimer->changeOccurred(); } void CookieJar::setAllowForSessionCookies(const QStringList &list) { if (!m_loaded) load(); m_exceptions_allowForSession = list; qSort(m_exceptions_allowForSession.begin(), m_exceptions_allowForSession.end()); m_saveTimer->changeOccurred(); } CookieModel::CookieModel(CookieJar *cookieJar, QObject *parent) : QAbstractTableModel(parent) , m_cookieJar(cookieJar) { connect(m_cookieJar, SIGNAL(cookiesChanged()), this, SLOT(cookiesChanged())); m_cookieJar->load(); } QVariant CookieModel::headerData(int section, Qt::Orientation orientation, int role) const { if (role == Qt::SizeHintRole) { QFont font; font.setPointSize(10); QFontMetrics fm(font); int height = fm.height() + fm.height()/3; int width = fm.width(headerData(section, orientation, Qt::DisplayRole).toString()); return QSize(width, height); } if (orientation == Qt::Horizontal) { if (role != Qt::DisplayRole) return QVariant(); switch (section) { case 0: return tr("Website"); case 1: return tr("Name"); case 2: return tr("Path"); case 3: return tr("Secure"); case 4: return tr("Expires"); case 5: return tr("Contents"); default: return QVariant(); } } return QAbstractTableModel::headerData(section, orientation, role); } QVariant CookieModel::data(const QModelIndex &index, int role) const { QList lst; if (m_cookieJar) lst = m_cookieJar->allCookies(); if (index.row() < 0 || index.row() >= lst.size()) return QVariant(); switch (role) { case Qt::DisplayRole: case Qt::EditRole: { QNetworkCookie cookie = lst.at(index.row()); switch (index.column()) { case 0: return cookie.domain(); case 1: return cookie.name(); case 2: return cookie.path(); case 3: return cookie.isSecure(); case 4: return cookie.expirationDate(); case 5: return cookie.value(); } } case Qt::FontRole:{ QFont font; font.setPointSize(10); return font; } } return QVariant(); } int CookieModel::columnCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : 6; } int CookieModel::rowCount(const QModelIndex &parent) const { return (parent.isValid() || !m_cookieJar) ? 0 : m_cookieJar->allCookies().count(); } bool CookieModel::removeRows(int row, int count, const QModelIndex &parent) { if (parent.isValid() || !m_cookieJar) return false; int lastRow = row + count - 1; beginRemoveRows(parent, row, lastRow); QList lst = m_cookieJar->allCookies(); for (int i = lastRow; i >= row; --i) { lst.removeAt(i); } m_cookieJar->setAllCookies(lst); endRemoveRows(); return true; } void CookieModel::cookiesChanged() { beginResetModel(); endResetModel(); } CookiesDialog::CookiesDialog(CookieJar *cookieJar, QWidget *parent) : QDialog(parent) { setupUi(this); setWindowFlags(Qt::Sheet); CookieModel *model = new CookieModel(cookieJar, this); m_proxyModel = new QSortFilterProxyModel(this); connect(search, SIGNAL(textChanged(QString)), m_proxyModel, SLOT(setFilterFixedString(QString))); connect(removeButton, SIGNAL(clicked()), cookiesTable, SLOT(removeOne())); connect(removeAllButton, SIGNAL(clicked()), cookiesTable, SLOT(removeAll())); m_proxyModel->setSourceModel(model); cookiesTable->verticalHeader()->hide(); cookiesTable->setSelectionBehavior(QAbstractItemView::SelectRows); cookiesTable->setModel(m_proxyModel); cookiesTable->setAlternatingRowColors(true); cookiesTable->setTextElideMode(Qt::ElideMiddle); cookiesTable->setShowGrid(false); cookiesTable->setSortingEnabled(true); QFont f = font(); f.setPointSize(10); QFontMetrics fm(f); int height = fm.height() + fm.height()/3; cookiesTable->verticalHeader()->setDefaultSectionSize(height); cookiesTable->verticalHeader()->setMinimumSectionSize(-1); for (int i = 0; i < model->columnCount(); ++i){ int header = cookiesTable->horizontalHeader()->sectionSizeHint(i); switch (i) { case 0: header = fm.width(QLatin1String("averagehost.domain.com")); break; case 1: header = fm.width(QLatin1String("_session_id")); break; case 4: header = fm.width(QDateTime::currentDateTime().toString(Qt::LocalDate)); break; } int buffer = fm.width(QLatin1String("xx")); header += buffer; cookiesTable->horizontalHeader()->resizeSection(i, header); } cookiesTable->horizontalHeader()->setStretchLastSection(true); } CookieExceptionsModel::CookieExceptionsModel(CookieJar *cookiejar, QObject *parent) : QAbstractTableModel(parent) , m_cookieJar(cookiejar) { m_allowedCookies = m_cookieJar->allowedCookies(); m_blockedCookies = m_cookieJar->blockedCookies(); m_sessionCookies = m_cookieJar->allowForSessionCookies(); } QVariant CookieExceptionsModel::headerData(int section, Qt::Orientation orientation, int role) const { if (role == Qt::SizeHintRole) { QFont font; font.setPointSize(10); QFontMetrics fm(font); int height = fm.height() + fm.height()/3; int width = fm.width(headerData(section, orientation, Qt::DisplayRole).toString()); return QSize(width, height); } if (orientation == Qt::Horizontal && role == Qt::DisplayRole) { switch (section) { case 0: return tr("Website"); case 1: return tr("Status"); } } return QAbstractTableModel::headerData(section, orientation, role); } QVariant CookieExceptionsModel::data(const QModelIndex &index, int role) const { if (index.row() < 0 || index.row() >= rowCount()) return QVariant(); switch (role) { case Qt::DisplayRole: case Qt::EditRole: { int row = index.row(); if (row < m_allowedCookies.count()) { switch (index.column()) { case 0: return m_allowedCookies.at(row); case 1: return tr("Allow"); } } row = row - m_allowedCookies.count(); if (row < m_blockedCookies.count()) { switch (index.column()) { case 0: return m_blockedCookies.at(row); case 1: return tr("Block"); } } row = row - m_blockedCookies.count(); if (row < m_sessionCookies.count()) { switch (index.column()) { case 0: return m_sessionCookies.at(row); case 1: return tr("Allow For Session"); } } } case Qt::FontRole:{ QFont font; font.setPointSize(10); return font; } } return QVariant(); } int CookieExceptionsModel::columnCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : 2; } int CookieExceptionsModel::rowCount(const QModelIndex &parent) const { return (parent.isValid() || !m_cookieJar) ? 0 : m_allowedCookies.count() + m_blockedCookies.count() + m_sessionCookies.count(); } bool CookieExceptionsModel::removeRows(int row, int count, const QModelIndex &parent) { if (parent.isValid() || !m_cookieJar) return false; int lastRow = row + count - 1; beginRemoveRows(parent, row, lastRow); for (int i = lastRow; i >= row; --i) { if (i < m_allowedCookies.count()) { m_allowedCookies.removeAt(row); continue; } i = i - m_allowedCookies.count(); if (i < m_blockedCookies.count()) { m_blockedCookies.removeAt(row); continue; } i = i - m_blockedCookies.count(); if (i < m_sessionCookies.count()) { m_sessionCookies.removeAt(row); continue; } } m_cookieJar->setAllowedCookies(m_allowedCookies); m_cookieJar->setBlockedCookies(m_blockedCookies); m_cookieJar->setAllowForSessionCookies(m_sessionCookies); endRemoveRows(); return true; } CookiesExceptionsDialog::CookiesExceptionsDialog(CookieJar *cookieJar, QWidget *parent) : QDialog(parent) , m_cookieJar(cookieJar) { setupUi(this); setWindowFlags(Qt::Sheet); connect(removeButton, SIGNAL(clicked()), exceptionTable, SLOT(removeOne())); connect(removeAllButton, SIGNAL(clicked()), exceptionTable, SLOT(removeAll())); exceptionTable->verticalHeader()->hide(); exceptionTable->setSelectionBehavior(QAbstractItemView::SelectRows); exceptionTable->setAlternatingRowColors(true); exceptionTable->setTextElideMode(Qt::ElideMiddle); exceptionTable->setShowGrid(false); exceptionTable->setSortingEnabled(true); m_exceptionsModel = new CookieExceptionsModel(cookieJar, this); m_proxyModel = new QSortFilterProxyModel(this); m_proxyModel->setSourceModel(m_exceptionsModel); connect(search, SIGNAL(textChanged(QString)), m_proxyModel, SLOT(setFilterFixedString(QString))); exceptionTable->setModel(m_proxyModel); CookieModel *cookieModel = new CookieModel(cookieJar, this); domainLineEdit->setCompleter(new QCompleter(cookieModel, domainLineEdit)); connect(domainLineEdit, SIGNAL(textChanged(QString)), this, SLOT(textChanged(QString))); connect(blockButton, SIGNAL(clicked()), this, SLOT(block())); connect(allowButton, SIGNAL(clicked()), this, SLOT(allow())); connect(allowForSessionButton, SIGNAL(clicked()), this, SLOT(allowForSession())); QFont f = font(); f.setPointSize(10); QFontMetrics fm(f); int height = fm.height() + fm.height()/3; exceptionTable->verticalHeader()->setDefaultSectionSize(height); exceptionTable->verticalHeader()->setMinimumSectionSize(-1); for (int i = 0; i < m_exceptionsModel->columnCount(); ++i){ int header = exceptionTable->horizontalHeader()->sectionSizeHint(i); switch (i) { case 0: header = fm.width(QLatin1String("averagebiglonghost.domain.com")); break; case 1: header = fm.width(QLatin1String("Allow For Session")); break; } int buffer = fm.width(QLatin1String("xx")); header += buffer; exceptionTable->horizontalHeader()->resizeSection(i, header); } } void CookiesExceptionsDialog::textChanged(const QString &text) { bool enabled = !text.isEmpty(); blockButton->setEnabled(enabled); allowButton->setEnabled(enabled); allowForSessionButton->setEnabled(enabled); } void CookiesExceptionsDialog::block() { if (domainLineEdit->text().isEmpty()) return; m_exceptionsModel->m_blockedCookies.append(domainLineEdit->text()); m_cookieJar->setBlockedCookies(m_exceptionsModel->m_blockedCookies); m_exceptionsModel->beginResetModel(); m_exceptionsModel->endResetModel(); } void CookiesExceptionsDialog::allow() { if (domainLineEdit->text().isEmpty()) return; m_exceptionsModel->m_allowedCookies.append(domainLineEdit->text()); m_cookieJar->setAllowedCookies(m_exceptionsModel->m_allowedCookies); m_exceptionsModel->beginResetModel(); m_exceptionsModel->endResetModel(); } void CookiesExceptionsDialog::allowForSession() { if (domainLineEdit->text().isEmpty()) return; m_exceptionsModel->m_sessionCookies.append(domainLineEdit->text()); m_cookieJar->setAllowForSessionCookies(m_exceptionsModel->m_sessionCookies); m_exceptionsModel->beginResetModel(); m_exceptionsModel->endResetModel(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/downloadmanager.h0000644000000000000000000001137312273255454032214 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef DOWNLOADMANAGER_H #define DOWNLOADMANAGER_H #include "ui_downloads.h" #include "ui_downloaditem.h" #include #include #include class DownloadItem : public QWidget, public Ui_DownloadItem { Q_OBJECT signals: void statusChanged(); public: DownloadItem(QNetworkReply *reply = 0, bool requestFileName = false, QWidget *parent = 0); bool downloading() const; bool downloadedSuccessfully() const; QUrl m_url; QFile m_output; QNetworkReply *m_reply; private slots: void stop(); void tryAgain(); void open(); void downloadReadyRead(); void error(QNetworkReply::NetworkError code); void downloadProgress(qint64 bytesReceived, qint64 bytesTotal); void metaDataChanged(); void finished(); private: void getFileName(); void init(); void updateInfoLabel(); QString dataString(int size) const; QString saveFileName(const QString &directory) const; bool m_requestFileName; qint64 m_bytesReceived; QTime m_downloadTime; }; class AutoSaver; class DownloadModel; QT_BEGIN_NAMESPACE class QFileIconProvider; QT_END_NAMESPACE class DownloadManager : public QDialog, public Ui_DownloadDialog { Q_OBJECT Q_PROPERTY(RemovePolicy removePolicy READ removePolicy WRITE setRemovePolicy) Q_ENUMS(RemovePolicy) public: enum RemovePolicy { Never, Exit, SuccessFullDownload }; DownloadManager(QWidget *parent = 0); ~DownloadManager(); int activeDownloads() const; RemovePolicy removePolicy() const; void setRemovePolicy(RemovePolicy policy); public slots: void download(const QNetworkRequest &request, bool requestFileName = false); inline void download(const QUrl &url, bool requestFileName = false) { download(QNetworkRequest(url), requestFileName); } void handleUnsupportedContent(QNetworkReply *reply, bool requestFileName = false); void cleanup(); private slots: void save() const; void updateRow(); private: void addItem(DownloadItem *item); void updateItemCount(); void load(); AutoSaver *m_autoSaver; DownloadModel *m_model; QNetworkAccessManager *m_manager; QFileIconProvider *m_iconProvider; QList m_downloads; RemovePolicy m_removePolicy; friend class DownloadModel; }; class DownloadModel : public QAbstractListModel { friend class DownloadManager; Q_OBJECT public: DownloadModel(DownloadManager *downloadManager, QObject *parent = 0); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); private: DownloadManager *m_downloadManager; }; #endif // DOWNLOADMANAGER_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/history.h0000644000000000000000000002621512273255454030554 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef HISTORY_H #define HISTORY_H #include "modelmenu.h" #include #include #include #include #include #include #include class HistoryItem { public: HistoryItem() {} HistoryItem(const QString &u, const QDateTime &d = QDateTime(), const QString &t = QString()) : title(t), url(u), dateTime(d) {} inline bool operator==(const HistoryItem &other) const { return other.title == title && other.url == url && other.dateTime == dateTime; } // history is sorted in reverse inline bool operator <(const HistoryItem &other) const { return dateTime > other.dateTime; } QString title; QString url; QDateTime dateTime; }; class AutoSaver; class HistoryModel; class HistoryFilterModel; class HistoryTreeModel; class HistoryManager : public QWebHistoryInterface { Q_OBJECT Q_PROPERTY(int historyLimit READ historyLimit WRITE setHistoryLimit) signals: void historyReset(); void entryAdded(const HistoryItem &item); void entryRemoved(const HistoryItem &item); void entryUpdated(int offset); public: HistoryManager(QObject *parent = 0); ~HistoryManager(); bool historyContains(const QString &url) const; void addHistoryEntry(const QString &url); void updateHistoryItem(const QUrl &url, const QString &title); int historyLimit() const; void setHistoryLimit(int limit); QList history() const; void setHistory(const QList &history, bool loadedAndSorted = false); // History manager keeps around these models for use by the completer and other classes HistoryModel *historyModel() const; HistoryFilterModel *historyFilterModel() const; HistoryTreeModel *historyTreeModel() const; public slots: void clear(); void loadSettings(); private slots: void save(); void checkForExpired(); protected: void addHistoryItem(const HistoryItem &item); private: void load(); AutoSaver *m_saveTimer; int m_historyLimit; QTimer m_expiredTimer; QList m_history; QString m_lastSavedUrl; HistoryModel *m_historyModel; HistoryFilterModel *m_historyFilterModel; HistoryTreeModel *m_historyTreeModel; }; class HistoryModel : public QAbstractTableModel { Q_OBJECT public slots: void historyReset(); void entryAdded(); void entryUpdated(int offset); public: enum Roles { DateRole = Qt::UserRole + 1, DateTimeRole = Qt::UserRole + 2, UrlRole = Qt::UserRole + 3, UrlStringRole = Qt::UserRole + 4 }; HistoryModel(HistoryManager *history, QObject *parent = 0); QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); private: HistoryManager *m_history; }; /*! Proxy model that will remove any duplicate entries. Both m_sourceRow and m_historyHash store their offsets not from the front of the list, but as offsets from the back. */ class HistoryFilterModel : public QAbstractProxyModel { Q_OBJECT public: HistoryFilterModel(QAbstractItemModel *sourceModel, QObject *parent = 0); inline bool historyContains(const QString &url) const { load(); return m_historyHash.contains(url); } int historyLocation(const QString &url) const; QModelIndex mapFromSource(const QModelIndex &sourceIndex) const; QModelIndex mapToSource(const QModelIndex &proxyIndex) const; void setSourceModel(QAbstractItemModel *sourceModel); QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; QModelIndex index(int, int, const QModelIndex& = QModelIndex()) const; QModelIndex parent(const QModelIndex& index= QModelIndex()) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; private slots: void sourceReset(); void sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); void sourceRowsInserted(const QModelIndex &parent, int start, int end); void sourceRowsRemoved(const QModelIndex &, int, int); private: void load() const; mutable QList m_sourceRow; mutable QHash m_historyHash; mutable bool m_loaded; }; /* The history menu - Removes the first twenty entries and puts them as children of the top level. - If there are less then twenty entries then the first folder is also removed. The mapping is done by knowing that HistoryTreeModel is over a table We store that row offset in our index's private data. */ class HistoryMenuModel : public QAbstractProxyModel { Q_OBJECT public: HistoryMenuModel(HistoryTreeModel *sourceModel, QObject *parent = 0); int columnCount(const QModelIndex &parent) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; QModelIndex mapFromSource(const QModelIndex & sourceIndex) const; QModelIndex mapToSource(const QModelIndex & proxyIndex) const; QModelIndex index(int, int, const QModelIndex &parent = QModelIndex()) const; QModelIndex parent(const QModelIndex &index = QModelIndex()) const; int bumpedRows() const; private: HistoryTreeModel *m_treeModel; }; // Menu that is dynamically populated from the history class HistoryMenu : public ModelMenu { Q_OBJECT signals: void openUrl(const QUrl &url); public: HistoryMenu(QWidget *parent = 0); void setInitialActions(QList actions); protected: bool prePopulated(); void postPopulated(); private slots: void activated(const QModelIndex &index); void showHistoryDialog(); private: HistoryManager *m_history; HistoryMenuModel *m_historyMenuModel; QList m_initialActions; }; // proxy model for the history model that // exposes each url http://www.foo.com and it url starting at the host www.foo.com class HistoryCompletionModel : public QAbstractProxyModel { Q_OBJECT public: HistoryCompletionModel(QObject *parent = 0); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; QModelIndex mapFromSource(const QModelIndex &sourceIndex) const; QModelIndex mapToSource(const QModelIndex &proxyIndex) const; QModelIndex index(int, int, const QModelIndex& = QModelIndex()) const; QModelIndex parent(const QModelIndex& index= QModelIndex()) const; void setSourceModel(QAbstractItemModel *sourceModel); private slots: void sourceReset(); }; // proxy model for the history model that converts the list // into a tree, one top level node per day. // Used in the HistoryDialog. class HistoryTreeModel : public QAbstractProxyModel { Q_OBJECT public: HistoryTreeModel(QAbstractItemModel *sourceModel, QObject *parent = 0); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int columnCount(const QModelIndex &parent) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; QModelIndex mapFromSource(const QModelIndex &sourceIndex) const; QModelIndex mapToSource(const QModelIndex &proxyIndex) const; QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; QModelIndex parent(const QModelIndex &index= QModelIndex()) const; bool hasChildren(const QModelIndex &parent = QModelIndex()) const; Qt::ItemFlags flags(const QModelIndex &index) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; void setSourceModel(QAbstractItemModel *sourceModel); private slots: void sourceReset(); void sourceRowsInserted(const QModelIndex &parent, int start, int end); void sourceRowsRemoved(const QModelIndex &parent, int start, int end); private: int sourceDateRow(int row) const; mutable QList m_sourceRowCache; }; // A modified QSortFilterProxyModel that always accepts the root nodes in the tree // so filtering is only done on the children. // Used in the HistoryDialog class TreeProxyModel : public QSortFilterProxyModel { Q_OBJECT public: TreeProxyModel(QObject *parent = 0); protected: bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; }; #include "ui_history.h" class HistoryDialog : public QDialog, public Ui_HistoryDialog { Q_OBJECT signals: void openUrl(const QUrl &url); public: HistoryDialog(QWidget *parent = 0, HistoryManager *history = 0); private slots: void customContextMenuRequested(const QPoint &pos); void open(); void copy(); }; #endif // HISTORY_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/history.cpp0000644000000000000000000012022412273255454031102 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "history.h" #include "autosaver.h" #include "browserapplication.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include static const unsigned int HISTORY_VERSION = 23; HistoryManager::HistoryManager(QObject *parent) : QWebHistoryInterface(parent) , m_saveTimer(new AutoSaver(this)) , m_historyLimit(30) , m_historyModel(0) , m_historyFilterModel(0) , m_historyTreeModel(0) { m_expiredTimer.setSingleShot(true); connect(&m_expiredTimer, SIGNAL(timeout()), this, SLOT(checkForExpired())); connect(this, SIGNAL(entryAdded(HistoryItem)), m_saveTimer, SLOT(changeOccurred())); connect(this, SIGNAL(entryRemoved(HistoryItem)), m_saveTimer, SLOT(changeOccurred())); load(); m_historyModel = new HistoryModel(this, this); m_historyFilterModel = new HistoryFilterModel(m_historyModel, this); m_historyTreeModel = new HistoryTreeModel(m_historyFilterModel, this); // QWebHistoryInterface will delete the history manager QWebHistoryInterface::setDefaultInterface(this); } HistoryManager::~HistoryManager() { m_saveTimer->saveIfNeccessary(); } QList HistoryManager::history() const { return m_history; } bool HistoryManager::historyContains(const QString &url) const { return m_historyFilterModel->historyContains(url); } void HistoryManager::addHistoryEntry(const QString &url) { QUrl cleanUrl(url); cleanUrl.setPassword(QString()); cleanUrl.setHost(cleanUrl.host().toLower()); HistoryItem item(cleanUrl.toString(), QDateTime::currentDateTime()); addHistoryItem(item); } void HistoryManager::setHistory(const QList &history, bool loadedAndSorted) { m_history = history; // verify that it is sorted by date if (!loadedAndSorted) qSort(m_history.begin(), m_history.end()); checkForExpired(); if (loadedAndSorted) { m_lastSavedUrl = m_history.value(0).url; } else { m_lastSavedUrl = QString(); m_saveTimer->changeOccurred(); } emit historyReset(); } HistoryModel *HistoryManager::historyModel() const { return m_historyModel; } HistoryFilterModel *HistoryManager::historyFilterModel() const { return m_historyFilterModel; } HistoryTreeModel *HistoryManager::historyTreeModel() const { return m_historyTreeModel; } void HistoryManager::checkForExpired() { if (m_historyLimit < 0 || m_history.isEmpty()) return; QDateTime now = QDateTime::currentDateTime(); int nextTimeout = 0; while (!m_history.isEmpty()) { QDateTime checkForExpired = m_history.last().dateTime; checkForExpired.setDate(checkForExpired.date().addDays(m_historyLimit)); if (now.daysTo(checkForExpired) > 7) { // check at most in a week to prevent int overflows on the timer nextTimeout = 7 * 86400; } else { nextTimeout = now.secsTo(checkForExpired); } if (nextTimeout > 0) break; HistoryItem item = m_history.takeLast(); // remove from saved file also m_lastSavedUrl = QString(); emit entryRemoved(item); } if (nextTimeout > 0) m_expiredTimer.start(nextTimeout * 1000); } void HistoryManager::addHistoryItem(const HistoryItem &item) { QWebSettings *globalSettings = QWebSettings::globalSettings(); if (globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) return; m_history.prepend(item); emit entryAdded(item); if (m_history.count() == 1) checkForExpired(); } void HistoryManager::updateHistoryItem(const QUrl &url, const QString &title) { for (int i = 0; i < m_history.count(); ++i) { if (url == m_history.at(i).url) { m_history[i].title = title; m_saveTimer->changeOccurred(); if (m_lastSavedUrl.isEmpty()) m_lastSavedUrl = m_history.at(i).url; emit entryUpdated(i); break; } } } int HistoryManager::historyLimit() const { return m_historyLimit; } void HistoryManager::setHistoryLimit(int limit) { if (m_historyLimit == limit) return; m_historyLimit = limit; checkForExpired(); m_saveTimer->changeOccurred(); } void HistoryManager::clear() { m_history.clear(); m_lastSavedUrl = QString(); m_saveTimer->changeOccurred(); m_saveTimer->saveIfNeccessary(); historyReset(); } void HistoryManager::loadSettings() { // load settings QSettings settings; settings.beginGroup(QLatin1String("history")); m_historyLimit = settings.value(QLatin1String("historyLimit"), 30).toInt(); } void HistoryManager::load() { loadSettings(); QFile historyFile(QStandardPaths::writableLocation(QStandardPaths::DataLocation) + QLatin1String("/history")); if (!historyFile.exists()) return; if (!historyFile.open(QFile::ReadOnly)) { qWarning() << "Unable to open history file" << historyFile.fileName(); return; } QList list; QDataStream in(&historyFile); // Double check that the history file is sorted as it is read in bool needToSort = false; HistoryItem lastInsertedItem; QByteArray data; QDataStream stream; QBuffer buffer; stream.setDevice(&buffer); while (!historyFile.atEnd()) { in >> data; buffer.close(); buffer.setBuffer(&data); buffer.open(QIODevice::ReadOnly); quint32 ver; stream >> ver; if (ver != HISTORY_VERSION) continue; HistoryItem item; stream >> item.url; stream >> item.dateTime; stream >> item.title; if (!item.dateTime.isValid()) continue; if (item == lastInsertedItem) { if (lastInsertedItem.title.isEmpty() && !list.isEmpty()) list[0].title = item.title; continue; } if (!needToSort && !list.isEmpty() && lastInsertedItem < item) needToSort = true; list.prepend(item); lastInsertedItem = item; } if (needToSort) qSort(list.begin(), list.end()); setHistory(list, true); // If we had to sort re-write the whole history sorted if (needToSort) { m_lastSavedUrl = QString(); m_saveTimer->changeOccurred(); } } void HistoryManager::save() { QSettings settings; settings.beginGroup(QLatin1String("history")); settings.setValue(QLatin1String("historyLimit"), m_historyLimit); bool saveAll = m_lastSavedUrl.isEmpty(); int first = m_history.count() - 1; if (!saveAll) { // find the first one to save for (int i = 0; i < m_history.count(); ++i) { if (m_history.at(i).url == m_lastSavedUrl) { first = i - 1; break; } } } if (first == m_history.count() - 1) saveAll = true; QString directory = QStandardPaths::writableLocation(QStandardPaths::DataLocation); if (directory.isEmpty()) directory = QDir::homePath() + QLatin1String("/.") + QCoreApplication::applicationName(); if (!QFile::exists(directory)) { QDir dir; dir.mkpath(directory); } QFile historyFile(directory + QLatin1String("/history")); // When saving everything use a temporary file to prevent possible data loss. QTemporaryFile tempFile; tempFile.setAutoRemove(false); bool open = false; if (saveAll) { open = tempFile.open(); } else { open = historyFile.open(QFile::Append); } if (!open) { qWarning() << "Unable to open history file for saving" << (saveAll ? tempFile.fileName() : historyFile.fileName()); return; } QDataStream out(saveAll ? &tempFile : &historyFile); for (int i = first; i >= 0; --i) { QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); HistoryItem item = m_history.at(i); stream << HISTORY_VERSION << item.url << item.dateTime << item.title; out << data; } tempFile.close(); if (saveAll) { if (historyFile.exists() && !historyFile.remove()) qWarning() << "History: error removing old history." << historyFile.errorString(); if (!tempFile.rename(historyFile.fileName())) qWarning() << "History: error moving new history over old." << tempFile.errorString() << historyFile.fileName(); } m_lastSavedUrl = m_history.value(0).url; } HistoryModel::HistoryModel(HistoryManager *history, QObject *parent) : QAbstractTableModel(parent) , m_history(history) { Q_ASSERT(m_history); connect(m_history, SIGNAL(historyReset()), this, SLOT(historyReset())); connect(m_history, SIGNAL(entryRemoved(HistoryItem)), this, SLOT(historyReset())); connect(m_history, SIGNAL(entryAdded(HistoryItem)), this, SLOT(entryAdded())); connect(m_history, SIGNAL(entryUpdated(int)), this, SLOT(entryUpdated(int))); } void HistoryModel::historyReset() { beginResetModel(); endResetModel(); } void HistoryModel::entryAdded() { beginInsertRows(QModelIndex(), 0, 0); endInsertRows(); } void HistoryModel::entryUpdated(int offset) { QModelIndex idx = index(offset, 0); emit dataChanged(idx, idx); } QVariant HistoryModel::headerData(int section, Qt::Orientation orientation, int role) const { if (orientation == Qt::Horizontal && role == Qt::DisplayRole) { switch (section) { case 0: return tr("Title"); case 1: return tr("Address"); } } return QAbstractTableModel::headerData(section, orientation, role); } QVariant HistoryModel::data(const QModelIndex &index, int role) const { QList lst = m_history->history(); if (index.row() < 0 || index.row() >= lst.size()) return QVariant(); const HistoryItem &item = lst.at(index.row()); switch (role) { case DateTimeRole: return item.dateTime; case DateRole: return item.dateTime.date(); case UrlRole: return QUrl(item.url); case UrlStringRole: return item.url; case Qt::DisplayRole: case Qt::EditRole: { switch (index.column()) { case 0: // when there is no title try to generate one from the url if (item.title.isEmpty()) { QString page = QFileInfo(QUrl(item.url).path()).fileName(); if (!page.isEmpty()) return page; return item.url; } return item.title; case 1: return item.url; } } case Qt::DecorationRole: if (index.column() == 0) { return BrowserApplication::instance()->icon(item.url); } } return QVariant(); } int HistoryModel::columnCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : 2; } int HistoryModel::rowCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : m_history->history().count(); } bool HistoryModel::removeRows(int row, int count, const QModelIndex &parent) { if (parent.isValid()) return false; int lastRow = row + count - 1; beginRemoveRows(parent, row, lastRow); QList lst = m_history->history(); for (int i = lastRow; i >= row; --i) lst.removeAt(i); disconnect(m_history, SIGNAL(historyReset()), this, SLOT(historyReset())); m_history->setHistory(lst); connect(m_history, SIGNAL(historyReset()), this, SLOT(historyReset())); endRemoveRows(); return true; } #define MOVEDROWS 15 /* Maps the first bunch of items of the source model to the root */ HistoryMenuModel::HistoryMenuModel(HistoryTreeModel *sourceModel, QObject *parent) : QAbstractProxyModel(parent) , m_treeModel(sourceModel) { setSourceModel(sourceModel); } int HistoryMenuModel::bumpedRows() const { QModelIndex first = m_treeModel->index(0, 0); if (!first.isValid()) return 0; return qMin(m_treeModel->rowCount(first), MOVEDROWS); } int HistoryMenuModel::columnCount(const QModelIndex &parent) const { return m_treeModel->columnCount(mapToSource(parent)); } int HistoryMenuModel::rowCount(const QModelIndex &parent) const { if (parent.column() > 0) return 0; if (!parent.isValid()) { int folders = sourceModel()->rowCount(); int bumpedItems = bumpedRows(); if (bumpedItems <= MOVEDROWS && bumpedItems == sourceModel()->rowCount(sourceModel()->index(0, 0))) --folders; return bumpedItems + folders; } if (parent.internalId() == quintptr(-1)) { if (parent.row() < bumpedRows()) return 0; } QModelIndex idx = mapToSource(parent); int defaultCount = sourceModel()->rowCount(idx); if (idx == sourceModel()->index(0, 0)) return defaultCount - bumpedRows(); return defaultCount; } QModelIndex HistoryMenuModel::mapFromSource(const QModelIndex &sourceIndex) const { // currently not used or autotested Q_ASSERT(false); int sr = m_treeModel->mapToSource(sourceIndex).row(); return createIndex(sourceIndex.row(), sourceIndex.column(), sr); } QModelIndex HistoryMenuModel::mapToSource(const QModelIndex &proxyIndex) const { if (!proxyIndex.isValid()) return QModelIndex(); if (proxyIndex.internalId() == quintptr(-1)) { int bumpedItems = bumpedRows(); if (proxyIndex.row() < bumpedItems) return m_treeModel->index(proxyIndex.row(), proxyIndex.column(), m_treeModel->index(0, 0)); if (bumpedItems <= MOVEDROWS && bumpedItems == sourceModel()->rowCount(m_treeModel->index(0, 0))) --bumpedItems; return m_treeModel->index(proxyIndex.row() - bumpedItems, proxyIndex.column()); } QModelIndex historyIndex = m_treeModel->sourceModel()->index(proxyIndex.internalId(), proxyIndex.column()); QModelIndex treeIndex = m_treeModel->mapFromSource(historyIndex); return treeIndex; } QModelIndex HistoryMenuModel::index(int row, int column, const QModelIndex &parent) const { if (row < 0 || column < 0 || column >= columnCount(parent) || parent.column() > 0) return QModelIndex(); if (!parent.isValid()) return createIndex(row, column, quintptr(-1)); QModelIndex treeIndexParent = mapToSource(parent); int bumpedItems = 0; if (treeIndexParent == m_treeModel->index(0, 0)) bumpedItems = bumpedRows(); QModelIndex treeIndex = m_treeModel->index(row + bumpedItems, column, treeIndexParent); QModelIndex historyIndex = m_treeModel->mapToSource(treeIndex); int historyRow = historyIndex.row(); if (historyRow == -1) historyRow = treeIndex.row(); return createIndex(row, column, historyRow); } QModelIndex HistoryMenuModel::parent(const QModelIndex &index) const { int offset = index.internalId(); if (offset == -1 || !index.isValid()) return QModelIndex(); QModelIndex historyIndex = m_treeModel->sourceModel()->index(index.internalId(), 0); QModelIndex treeIndex = m_treeModel->mapFromSource(historyIndex); QModelIndex treeIndexParent = treeIndex.parent(); int sr = m_treeModel->mapToSource(treeIndexParent).row(); int bumpedItems = bumpedRows(); if (bumpedItems <= MOVEDROWS && bumpedItems == sourceModel()->rowCount(sourceModel()->index(0, 0))) --bumpedItems; return createIndex(bumpedItems + treeIndexParent.row(), treeIndexParent.column(), sr); } HistoryMenu::HistoryMenu(QWidget *parent) : ModelMenu(parent) , m_history(0) { connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex))); setHoverRole(HistoryModel::UrlStringRole); } void HistoryMenu::activated(const QModelIndex &index) { emit openUrl(index.data(HistoryModel::UrlRole).toUrl()); } bool HistoryMenu::prePopulated() { if (!m_history) { m_history = BrowserApplication::historyManager(); m_historyMenuModel = new HistoryMenuModel(m_history->historyTreeModel(), this); setModel(m_historyMenuModel); } // initial actions for (int i = 0; i < m_initialActions.count(); ++i) addAction(m_initialActions.at(i)); if (!m_initialActions.isEmpty()) addSeparator(); setFirstSeparator(m_historyMenuModel->bumpedRows()); return false; } void HistoryMenu::postPopulated() { if (m_history->history().count() > 0) addSeparator(); QAction *showAllAction = new QAction(tr("Show All History"), this); connect(showAllAction, SIGNAL(triggered()), this, SLOT(showHistoryDialog())); addAction(showAllAction); QAction *clearAction = new QAction(tr("Clear History"), this); connect(clearAction, SIGNAL(triggered()), m_history, SLOT(clear())); addAction(clearAction); } void HistoryMenu::showHistoryDialog() { HistoryDialog *dialog = new HistoryDialog(this); connect(dialog, SIGNAL(openUrl(QUrl)), this, SIGNAL(openUrl(QUrl))); dialog->show(); } void HistoryMenu::setInitialActions(QList actions) { m_initialActions = actions; for (int i = 0; i < m_initialActions.count(); ++i) addAction(m_initialActions.at(i)); } TreeProxyModel::TreeProxyModel(QObject *parent) : QSortFilterProxyModel(parent) { setSortRole(HistoryModel::DateTimeRole); setFilterCaseSensitivity(Qt::CaseInsensitive); } bool TreeProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const { if (!source_parent.isValid()) return true; return QSortFilterProxyModel::filterAcceptsRow(source_row, source_parent); } HistoryDialog::HistoryDialog(QWidget *parent, HistoryManager *setHistory) : QDialog(parent) { HistoryManager *history = setHistory; if (!history) history = BrowserApplication::historyManager(); setupUi(this); tree->setUniformRowHeights(true); tree->setSelectionBehavior(QAbstractItemView::SelectRows); tree->setTextElideMode(Qt::ElideMiddle); QAbstractItemModel *model = history->historyTreeModel(); TreeProxyModel *proxyModel = new TreeProxyModel(this); connect(search, SIGNAL(textChanged(QString)), proxyModel, SLOT(setFilterFixedString(QString))); connect(removeButton, SIGNAL(clicked()), tree, SLOT(removeOne())); connect(removeAllButton, SIGNAL(clicked()), history, SLOT(clear())); proxyModel->setSourceModel(model); tree->setModel(proxyModel); tree->setExpanded(proxyModel->index(0, 0), true); tree->setAlternatingRowColors(true); QFontMetrics fm(font()); int header = fm.width(QLatin1Char('m')) * 40; tree->header()->resizeSection(0, header); tree->header()->setStretchLastSection(true); connect(tree, SIGNAL(activated(QModelIndex)), this, SLOT(open())); tree->setContextMenuPolicy(Qt::CustomContextMenu); connect(tree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); } void HistoryDialog::customContextMenuRequested(const QPoint &pos) { QMenu menu; QModelIndex index = tree->indexAt(pos); index = index.sibling(index.row(), 0); if (index.isValid() && !tree->model()->hasChildren(index)) { menu.addAction(tr("Open"), this, SLOT(open())); menu.addSeparator(); menu.addAction(tr("Copy"), this, SLOT(copy())); } menu.addAction(tr("Delete"), tree, SLOT(removeOne())); menu.exec(QCursor::pos()); } void HistoryDialog::open() { QModelIndex index = tree->currentIndex(); if (!index.parent().isValid()) return; emit openUrl(index.data(HistoryModel::UrlRole).toUrl()); } void HistoryDialog::copy() { QModelIndex index = tree->currentIndex(); if (!index.parent().isValid()) return; QString url = index.data(HistoryModel::UrlStringRole).toString(); QClipboard *clipboard = QApplication::clipboard(); clipboard->setText(url); } HistoryFilterModel::HistoryFilterModel(QAbstractItemModel *sourceModel, QObject *parent) : QAbstractProxyModel(parent), m_loaded(false) { setSourceModel(sourceModel); } int HistoryFilterModel::historyLocation(const QString &url) const { load(); if (!m_historyHash.contains(url)) return 0; return sourceModel()->rowCount() - m_historyHash.value(url); } QVariant HistoryFilterModel::data(const QModelIndex &index, int role) const { return QAbstractProxyModel::data(index, role); } void HistoryFilterModel::setSourceModel(QAbstractItemModel *newSourceModel) { if (sourceModel()) { disconnect(sourceModel(), SIGNAL(modelReset()), this, SLOT(sourceReset())); disconnect(sourceModel(), SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(dataChanged(QModelIndex,QModelIndex))); disconnect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceRowsInserted(QModelIndex,int,int))); disconnect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); } QAbstractProxyModel::setSourceModel(newSourceModel); if (sourceModel()) { m_loaded = false; connect(sourceModel(), SIGNAL(modelReset()), this, SLOT(sourceReset())); connect(sourceModel(), SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(sourceDataChanged(QModelIndex,QModelIndex))); connect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceRowsInserted(QModelIndex,int,int))); connect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); } } void HistoryFilterModel::sourceDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) { emit dataChanged(mapFromSource(topLeft), mapFromSource(bottomRight)); } QVariant HistoryFilterModel::headerData(int section, Qt::Orientation orientation, int role) const { return sourceModel()->headerData(section, orientation, role); } void HistoryFilterModel::sourceReset() { m_loaded = false; beginResetModel(); endResetModel(); } int HistoryFilterModel::rowCount(const QModelIndex &parent) const { load(); if (parent.isValid()) return 0; return m_historyHash.count(); } int HistoryFilterModel::columnCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : 2; } QModelIndex HistoryFilterModel::mapToSource(const QModelIndex &proxyIndex) const { load(); int sourceRow = sourceModel()->rowCount() - proxyIndex.internalId(); return sourceModel()->index(sourceRow, proxyIndex.column()); } QModelIndex HistoryFilterModel::mapFromSource(const QModelIndex &sourceIndex) const { load(); QString url = sourceIndex.data(HistoryModel::UrlStringRole).toString(); if (!m_historyHash.contains(url)) return QModelIndex(); // This can be done in a binary search, but we can't use qBinary find // because it can't take: qBinaryFind(m_sourceRow.end(), m_sourceRow.begin(), v); // so if this is a performance bottlneck then convert to binary search, until then // the cleaner/easier to read code wins the day. int realRow = -1; int sourceModelRow = sourceModel()->rowCount() - sourceIndex.row(); for (int i = 0; i < m_sourceRow.count(); ++i) { if (m_sourceRow.at(i) == sourceModelRow) { realRow = i; break; } } if (realRow == -1) return QModelIndex(); return createIndex(realRow, sourceIndex.column(), sourceModel()->rowCount() - sourceIndex.row()); } QModelIndex HistoryFilterModel::index(int row, int column, const QModelIndex &parent) const { load(); if (row < 0 || row >= rowCount(parent) || column < 0 || column >= columnCount(parent)) return QModelIndex(); return createIndex(row, column, m_sourceRow[row]); } QModelIndex HistoryFilterModel::parent(const QModelIndex &) const { return QModelIndex(); } void HistoryFilterModel::load() const { if (m_loaded) return; m_sourceRow.clear(); m_historyHash.clear(); m_historyHash.reserve(sourceModel()->rowCount()); for (int i = 0; i < sourceModel()->rowCount(); ++i) { QModelIndex idx = sourceModel()->index(i, 0); QString url = idx.data(HistoryModel::UrlStringRole).toString(); if (!m_historyHash.contains(url)) { m_sourceRow.append(sourceModel()->rowCount() - i); m_historyHash[url] = sourceModel()->rowCount() - i; } } m_loaded = true; } void HistoryFilterModel::sourceRowsInserted(const QModelIndex &parent, int start, int end) { Q_ASSERT(start == end && start == 0); Q_UNUSED(end); if (!m_loaded) return; QModelIndex idx = sourceModel()->index(start, 0, parent); QString url = idx.data(HistoryModel::UrlStringRole).toString(); if (m_historyHash.contains(url)) { int sourceRow = sourceModel()->rowCount() - m_historyHash[url]; int realRow = mapFromSource(sourceModel()->index(sourceRow, 0)).row(); beginRemoveRows(QModelIndex(), realRow, realRow); m_sourceRow.removeAt(realRow); m_historyHash.remove(url); endRemoveRows(); } beginInsertRows(QModelIndex(), 0, 0); m_historyHash.insert(url, sourceModel()->rowCount() - start); m_sourceRow.insert(0, sourceModel()->rowCount()); endInsertRows(); } void HistoryFilterModel::sourceRowsRemoved(const QModelIndex &, int start, int end) { Q_UNUSED(start); Q_UNUSED(end); sourceReset(); } /* Removing a continuous block of rows will remove filtered rows too as this is the users intention. */ bool HistoryFilterModel::removeRows(int row, int count, const QModelIndex &parent) { if (row < 0 || count <= 0 || row + count > rowCount(parent) || parent.isValid()) return false; int lastRow = row + count - 1; disconnect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); beginRemoveRows(parent, row, lastRow); int oldCount = rowCount(); int start = sourceModel()->rowCount() - m_sourceRow.value(row); int end = sourceModel()->rowCount() - m_sourceRow.value(lastRow); sourceModel()->removeRows(start, end - start + 1); endRemoveRows(); connect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); m_loaded = false; if (oldCount - count != rowCount()) { beginResetModel(); endResetModel(); } return true; } HistoryCompletionModel::HistoryCompletionModel(QObject *parent) : QAbstractProxyModel(parent) { } QVariant HistoryCompletionModel::data(const QModelIndex &index, int role) const { if (sourceModel() && (role == Qt::EditRole || role == Qt::DisplayRole) && index.isValid()) { QModelIndex idx = mapToSource(index); idx = idx.sibling(idx.row(), 1); QString urlString = idx.data(HistoryModel::UrlStringRole).toString(); if (index.row() % 2) { QUrl url = urlString; QString s = url.toString(QUrl::RemoveScheme | QUrl::RemoveUserInfo | QUrl::StripTrailingSlash); return s.mid(2); // strip // from the front } return urlString; } return QAbstractProxyModel::data(index, role); } int HistoryCompletionModel::rowCount(const QModelIndex &parent) const { return (parent.isValid() || !sourceModel()) ? 0 : sourceModel()->rowCount(parent) * 2; } int HistoryCompletionModel::columnCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : 1; } QModelIndex HistoryCompletionModel::mapFromSource(const QModelIndex &sourceIndex) const { int row = sourceIndex.row() * 2; return index(row, sourceIndex.column()); } QModelIndex HistoryCompletionModel::mapToSource(const QModelIndex &proxyIndex) const { if (!sourceModel()) return QModelIndex(); int row = proxyIndex.row() / 2; return sourceModel()->index(row, proxyIndex.column()); } QModelIndex HistoryCompletionModel::index(int row, int column, const QModelIndex &parent) const { if (row < 0 || row >= rowCount(parent) || column < 0 || column >= columnCount(parent)) return QModelIndex(); return createIndex(row, column); } QModelIndex HistoryCompletionModel::parent(const QModelIndex &) const { return QModelIndex(); } void HistoryCompletionModel::setSourceModel(QAbstractItemModel *newSourceModel) { if (sourceModel()) { disconnect(sourceModel(), SIGNAL(modelReset()), this, SLOT(sourceReset())); disconnect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceReset())); disconnect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceReset())); } QAbstractProxyModel::setSourceModel(newSourceModel); if (newSourceModel) { connect(newSourceModel, SIGNAL(modelReset()), this, SLOT(sourceReset())); connect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceReset())); connect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceReset())); } beginResetModel(); endResetModel(); } void HistoryCompletionModel::sourceReset() { beginResetModel(); endResetModel(); } HistoryTreeModel::HistoryTreeModel(QAbstractItemModel *sourceModel, QObject *parent) : QAbstractProxyModel(parent) { setSourceModel(sourceModel); } QVariant HistoryTreeModel::headerData(int section, Qt::Orientation orientation, int role) const { return sourceModel()->headerData(section, orientation, role); } QVariant HistoryTreeModel::data(const QModelIndex &index, int role) const { if ((role == Qt::EditRole || role == Qt::DisplayRole)) { int start = index.internalId(); if (start == 0) { int offset = sourceDateRow(index.row()); if (index.column() == 0) { QModelIndex idx = sourceModel()->index(offset, 0); QDate date = idx.data(HistoryModel::DateRole).toDate(); if (date == QDate::currentDate()) return tr("Earlier Today"); return date.toString(QLatin1String("dddd, MMMM d, yyyy")); } if (index.column() == 1) { return tr("%1 items").arg(rowCount(index.sibling(index.row(), 0))); } } } if (role == Qt::DecorationRole && index.column() == 0 && !index.parent().isValid()) return QIcon(QLatin1String(":history.png")); if (role == HistoryModel::DateRole && index.column() == 0 && index.internalId() == 0) { int offset = sourceDateRow(index.row()); QModelIndex idx = sourceModel()->index(offset, 0); return idx.data(HistoryModel::DateRole); } return QAbstractProxyModel::data(index, role); } int HistoryTreeModel::columnCount(const QModelIndex &parent) const { return sourceModel()->columnCount(mapToSource(parent)); } int HistoryTreeModel::rowCount(const QModelIndex &parent) const { if ( parent.internalId() != 0 || parent.column() > 0 || !sourceModel()) return 0; // row count OF dates if (!parent.isValid()) { if (!m_sourceRowCache.isEmpty()) return m_sourceRowCache.count(); QDate currentDate; int rows = 0; int totalRows = sourceModel()->rowCount(); for (int i = 0; i < totalRows; ++i) { QDate rowDate = sourceModel()->index(i, 0).data(HistoryModel::DateRole).toDate(); if (rowDate != currentDate) { m_sourceRowCache.append(i); currentDate = rowDate; ++rows; } } Q_ASSERT(m_sourceRowCache.count() == rows); return rows; } // row count FOR a date int start = sourceDateRow(parent.row()); int end = sourceDateRow(parent.row() + 1); return (end - start); } // Translate the top level date row into the offset where that date starts int HistoryTreeModel::sourceDateRow(int row) const { if (row <= 0) return 0; if (m_sourceRowCache.isEmpty()) rowCount(QModelIndex()); if (row >= m_sourceRowCache.count()) { if (!sourceModel()) return 0; return sourceModel()->rowCount(); } return m_sourceRowCache.at(row); } QModelIndex HistoryTreeModel::mapToSource(const QModelIndex &proxyIndex) const { int offset = proxyIndex.internalId(); if (offset == 0) return QModelIndex(); int startDateRow = sourceDateRow(offset - 1); return sourceModel()->index(startDateRow + proxyIndex.row(), proxyIndex.column()); } QModelIndex HistoryTreeModel::index(int row, int column, const QModelIndex &parent) const { if (row < 0 || column < 0 || column >= columnCount(parent) || parent.column() > 0) return QModelIndex(); if (!parent.isValid()) return createIndex(row, column); return createIndex(row, column, parent.row() + 1); } QModelIndex HistoryTreeModel::parent(const QModelIndex &index) const { int offset = index.internalId(); if (offset == 0 || !index.isValid()) return QModelIndex(); return createIndex(offset - 1, 0); } bool HistoryTreeModel::hasChildren(const QModelIndex &parent) const { QModelIndex grandparent = parent.parent(); if (!grandparent.isValid()) return true; return false; } Qt::ItemFlags HistoryTreeModel::flags(const QModelIndex &index) const { if (!index.isValid()) return Qt::NoItemFlags; return Qt::ItemIsSelectable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled; } bool HistoryTreeModel::removeRows(int row, int count, const QModelIndex &parent) { if (row < 0 || count <= 0 || row + count > rowCount(parent)) return false; if (parent.isValid()) { // removing pages int offset = sourceDateRow(parent.row()); return sourceModel()->removeRows(offset + row, count); } else { // removing whole dates for (int i = row + count - 1; i >= row; --i) { QModelIndex dateParent = index(i, 0); int offset = sourceDateRow(dateParent.row()); if (!sourceModel()->removeRows(offset, rowCount(dateParent))) return false; } } return true; } void HistoryTreeModel::setSourceModel(QAbstractItemModel *newSourceModel) { if (sourceModel()) { disconnect(sourceModel(), SIGNAL(modelReset()), this, SLOT(sourceReset())); disconnect(sourceModel(), SIGNAL(layoutChanged()), this, SLOT(sourceReset())); disconnect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceRowsInserted(QModelIndex,int,int))); disconnect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); } QAbstractProxyModel::setSourceModel(newSourceModel); if (newSourceModel) { connect(sourceModel(), SIGNAL(modelReset()), this, SLOT(sourceReset())); connect(sourceModel(), SIGNAL(layoutChanged()), this, SLOT(sourceReset())); connect(sourceModel(), SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(sourceRowsInserted(QModelIndex,int,int))); connect(sourceModel(), SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(sourceRowsRemoved(QModelIndex,int,int))); } beginResetModel(); endResetModel(); } void HistoryTreeModel::sourceReset() { beginResetModel(); m_sourceRowCache.clear(); endResetModel(); } void HistoryTreeModel::sourceRowsInserted(const QModelIndex &parent, int start, int end) { Q_UNUSED(parent); // Avoid warnings when compiling release Q_ASSERT(!parent.isValid()); if (start != 0 || start != end) { beginResetModel(); m_sourceRowCache.clear(); endResetModel(); return; } m_sourceRowCache.clear(); QModelIndex treeIndex = mapFromSource(sourceModel()->index(start, 0)); QModelIndex treeParent = treeIndex.parent(); if (rowCount(treeParent) == 1) { beginInsertRows(QModelIndex(), 0, 0); endInsertRows(); } else { beginInsertRows(treeParent, treeIndex.row(), treeIndex.row()); endInsertRows(); } } QModelIndex HistoryTreeModel::mapFromSource(const QModelIndex &sourceIndex) const { if (!sourceIndex.isValid()) return QModelIndex(); if (m_sourceRowCache.isEmpty()) rowCount(QModelIndex()); QList::iterator it; it = qLowerBound(m_sourceRowCache.begin(), m_sourceRowCache.end(), sourceIndex.row()); if (*it != sourceIndex.row()) --it; int dateRow = qMax(0, it - m_sourceRowCache.begin()); int row = sourceIndex.row() - m_sourceRowCache.at(dateRow); return createIndex(row, sourceIndex.column(), dateRow + 1); } void HistoryTreeModel::sourceRowsRemoved(const QModelIndex &parent, int start, int end) { Q_UNUSED(parent); // Avoid warnings when compiling release Q_ASSERT(!parent.isValid()); if (m_sourceRowCache.isEmpty()) return; for (int i = end; i >= start;) { QList::iterator it; it = qLowerBound(m_sourceRowCache.begin(), m_sourceRowCache.end(), i); // playing it safe if (it == m_sourceRowCache.end()) { beginResetModel(); m_sourceRowCache.clear(); endResetModel(); return; } if (*it != i) --it; int row = qMax(0, it - m_sourceRowCache.begin()); int offset = m_sourceRowCache[row]; QModelIndex dateParent = index(row, 0); // If we can remove all the rows in the date do that and skip over them int rc = rowCount(dateParent); if (i - rc + 1 == offset && start <= i - rc + 1) { beginRemoveRows(QModelIndex(), row, row); m_sourceRowCache.removeAt(row); i -= rc + 1; } else { beginRemoveRows(dateParent, i - offset, i - offset); ++row; --i; } for (int j = row; j < m_sourceRowCache.count(); ++j) --m_sourceRowCache[j]; endRemoveRows(); } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/autosaver.h0000644000000000000000000000511612273255454031061 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef AUTOSAVER_H #define AUTOSAVER_H #include #include #include /* This class will call the save() slot on the parent object when the parent changes. It will wait several seconds after changed() to combining multiple changes and prevent continuous writing to disk. */ class AutoSaver : public QObject { Q_OBJECT public: AutoSaver(QObject *parent); ~AutoSaver(); void saveIfNeccessary(); public slots: void changeOccurred(); protected: void timerEvent(QTimerEvent *event); private: QBasicTimer m_timer; QTime m_firstChange; }; #endif // AUTOSAVER_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/webview.cpp0000644000000000000000000002435112273255454031055 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "browserapplication.h" #include "browsermainwindow.h" #include "cookiejar.h" #include "downloadmanager.h" #include "networkaccessmanager.h" #include "tabwidget.h" #include "webview.h" #include #include #include #include #include #ifndef QT_NO_UITOOLS #include #endif //QT_NO_UITOOLS #include #include WebPage::WebPage(QObject *parent) : QWebPage(parent) , m_keyboardModifiers(Qt::NoModifier) , m_pressedButtons(Qt::NoButton) , m_openInNewTab(false) { setNetworkAccessManager(BrowserApplication::networkAccessManager()); connect(this, SIGNAL(unsupportedContent(QNetworkReply*)), this, SLOT(handleUnsupportedContent(QNetworkReply*))); } BrowserMainWindow *WebPage::mainWindow() { QObject *w = this->parent(); while (w) { if (BrowserMainWindow *mw = qobject_cast(w)) return mw; w = w->parent(); } return BrowserApplication::instance()->mainWindow(); } bool WebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, NavigationType type) { // ctrl open in new tab // ctrl-shift open in new tab and select // ctrl-alt open in new window if (type == QWebPage::NavigationTypeLinkClicked && (m_keyboardModifiers & Qt::ControlModifier || m_pressedButtons == Qt::MidButton)) { bool newWindow = (m_keyboardModifiers & Qt::AltModifier); WebView *webView; if (newWindow) { BrowserApplication::instance()->newMainWindow(); BrowserMainWindow *newMainWindow = BrowserApplication::instance()->mainWindow(); webView = newMainWindow->currentTab(); newMainWindow->raise(); newMainWindow->activateWindow(); webView->setFocus(); } else { bool selectNewTab = (m_keyboardModifiers & Qt::ShiftModifier); webView = mainWindow()->tabWidget()->newTab(selectNewTab); } webView->load(request); m_keyboardModifiers = Qt::NoModifier; m_pressedButtons = Qt::NoButton; return false; } if (frame == mainFrame()) { m_loadingUrl = request.url(); emit loadingUrl(m_loadingUrl); } return QWebPage::acceptNavigationRequest(frame, request, type); } QWebPage *WebPage::createWindow(QWebPage::WebWindowType type) { Q_UNUSED(type); if (m_keyboardModifiers & Qt::ControlModifier || m_pressedButtons == Qt::MidButton) m_openInNewTab = true; if (m_openInNewTab) { m_openInNewTab = false; return mainWindow()->tabWidget()->newTab()->page(); } BrowserApplication::instance()->newMainWindow(); BrowserMainWindow *mainWindow = BrowserApplication::instance()->mainWindow(); return mainWindow->currentTab()->page(); } #if !defined(QT_NO_UITOOLS) QObject *WebPage::createPlugin(const QString &classId, const QUrl &url, const QStringList ¶mNames, const QStringList ¶mValues) { Q_UNUSED(url); Q_UNUSED(paramNames); Q_UNUSED(paramValues); QUiLoader loader; return loader.createWidget(classId, view()); } #endif // !defined(QT_NO_UITOOLS) void WebPage::handleUnsupportedContent(QNetworkReply *reply) { QString errorString = reply->errorString(); if (m_loadingUrl != reply->url()) { // sub resource of this page qWarning() << "Resource" << reply->url().toEncoded() << "has unknown Content-Type, will be ignored."; reply->deleteLater(); return; } if (reply->error() == QNetworkReply::NoError && !reply->header(QNetworkRequest::ContentTypeHeader).isValid()) { errorString = "Unknown Content-Type"; } QFile file(QLatin1String(":/notfound.html")); bool isOpened = file.open(QIODevice::ReadOnly); Q_ASSERT(isOpened); Q_UNUSED(isOpened) QString title = tr("Error loading page: %1").arg(reply->url().toString()); QString html = QString(QLatin1String(file.readAll())) .arg(title) .arg(errorString) .arg(reply->url().toString()); QBuffer imageBuffer; imageBuffer.open(QBuffer::ReadWrite); QIcon icon = view()->style()->standardIcon(QStyle::SP_MessageBoxWarning, 0, view()); QPixmap pixmap = icon.pixmap(QSize(32,32)); if (pixmap.save(&imageBuffer, "PNG")) { html.replace(QLatin1String("IMAGE_BINARY_DATA_HERE"), QString(QLatin1String(imageBuffer.buffer().toBase64()))); } QList frames; frames.append(mainFrame()); while (!frames.isEmpty()) { QWebFrame *frame = frames.takeFirst(); if (frame->url() == reply->url()) { frame->setHtml(html, reply->url()); return; } QList children = frame->childFrames(); foreach(QWebFrame *frame, children) frames.append(frame); } if (m_loadingUrl == reply->url()) { mainFrame()->setHtml(html, reply->url()); } } WebView::WebView(QWidget* parent) : QWebView(parent) , m_progress(0) , m_page(new WebPage(this)) { setPage(m_page); connect(page(), SIGNAL(statusBarMessage(QString)), SLOT(setStatusBarText(QString))); connect(this, SIGNAL(loadProgress(int)), this, SLOT(setProgress(int))); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(loadFinished())); connect(page(), SIGNAL(loadingUrl(QUrl)), this, SIGNAL(urlChanged(QUrl))); connect(page(), SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest))); page()->setForwardUnsupportedContent(true); } void WebView::contextMenuEvent(QContextMenuEvent *event) { QWebHitTestResult r = page()->mainFrame()->hitTestContent(event->pos()); if (!r.linkUrl().isEmpty()) { QMenu menu(this); menu.addAction(pageAction(QWebPage::OpenLinkInNewWindow)); menu.addAction(tr("Open in New Tab"), this, SLOT(openLinkInNewTab())); menu.addSeparator(); menu.addAction(pageAction(QWebPage::DownloadLinkToDisk)); // Add link to bookmarks... menu.addSeparator(); menu.addAction(pageAction(QWebPage::CopyLinkToClipboard)); if (page()->settings()->testAttribute(QWebSettings::DeveloperExtrasEnabled)) menu.addAction(pageAction(QWebPage::InspectElement)); menu.exec(mapToGlobal(event->pos())); return; } QWebView::contextMenuEvent(event); } void WebView::wheelEvent(QWheelEvent *event) { if (QApplication::keyboardModifiers() & Qt::ControlModifier) { int numDegrees = event->delta() / 8; int numSteps = numDegrees / 15; setTextSizeMultiplier(textSizeMultiplier() + numSteps * 0.1); event->accept(); return; } QWebView::wheelEvent(event); } void WebView::openLinkInNewTab() { m_page->m_openInNewTab = true; pageAction(QWebPage::OpenLinkInNewWindow)->trigger(); } void WebView::setProgress(int progress) { m_progress = progress; } void WebView::loadFinished() { if (100 != m_progress) { qWarning() << "Received finished signal while progress is still:" << progress() << "Url:" << url(); } m_progress = 0; } void WebView::loadUrl(const QUrl &url) { m_initialUrl = url; load(url); } QString WebView::lastStatusBarText() const { return m_statusBarText; } QUrl WebView::url() const { QUrl url = QWebView::url(); if (!url.isEmpty()) return url; return m_initialUrl; } void WebView::mousePressEvent(QMouseEvent *event) { m_page->m_pressedButtons = event->buttons(); m_page->m_keyboardModifiers = event->modifiers(); QWebView::mousePressEvent(event); } void WebView::mouseReleaseEvent(QMouseEvent *event) { QWebView::mouseReleaseEvent(event); if (!event->isAccepted() && (m_page->m_pressedButtons & Qt::MidButton)) { QUrl url(QApplication::clipboard()->text(QClipboard::Selection)); if (!url.isEmpty() && url.isValid() && !url.scheme().isEmpty()) { setUrl(url); } } } void WebView::setStatusBarText(const QString &string) { m_statusBarText = string; } void WebView::downloadRequested(const QNetworkRequest &request) { BrowserApplication::downloadManager()->download(request); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/edittableview.h0000644000000000000000000000437412273255454031705 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef EDITTABLEVIEW_H #define EDITTABLEVIEW_H #include class EditTableView : public QTableView { Q_OBJECT public: EditTableView(QWidget *parent = 0); void keyPressEvent(QKeyEvent *event); public slots: void removeOne(); void removeAll(); }; #endif // EDITTABLEVIEW_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/history.ui0000644000000000000000000000475512273255454030747 0ustar rootroot HistoryDialog 0 0 758 450 History Qt::Horizontal 252 20 &Remove Remove &All Qt::Horizontal 40 20 QDialogButtonBox::Ok SearchLineEdit QLineEdit
searchlineedit.h
EditTreeView QTreeView
edittreeview.h
buttonBox accepted() HistoryDialog accept() 472 329 461 356
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/modelmenu.h0000644000000000000000000000700112273255454031030 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef MODELMENU_H #define MODELMENU_H #include #include // A QMenu that is dynamically populated from a QAbstractItemModel class ModelMenu : public QMenu { Q_OBJECT signals: void activated(const QModelIndex &index); void hovered(const QString &text); public: ModelMenu(QWidget *parent = 0); void setModel(QAbstractItemModel *model); QAbstractItemModel *model() const; void setMaxRows(int max); int maxRows() const; void setFirstSeparator(int offset); int firstSeparator() const; void setRootIndex(const QModelIndex &index); QModelIndex rootIndex() const; void setHoverRole(int role); int hoverRole() const; void setSeparatorRole(int role); int separatorRole() const; QAction *makeAction(const QIcon &icon, const QString &text, QObject *parent); protected: // add any actions before the tree, return true if any actions are added. virtual bool prePopulated(); // add any actions after the tree virtual void postPopulated(); // put all of the children of parent into menu up to max void createMenu(const QModelIndex &parent, int max, QMenu *parentMenu = 0, QMenu *menu = 0); private slots: void aboutToShow(); void triggered(QAction *action); void hovered(QAction *action); private: QAction *makeAction(const QModelIndex &index); int m_maxRows; int m_firstSeparator; int m_maxWidth; int m_hoverRole; int m_separatorRole; QAbstractItemModel *m_model; QPersistentModelIndex m_root; }; #endif // MODELMENU_H ././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browsermainwindow.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browsermainwindow.cp0000644000000000000000000010140312273255454032777 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "browsermainwindow.h" #include "autosaver.h" #include "bookmarks.h" #include "browserapplication.h" #include "chasewidget.h" #include "downloadmanager.h" #include "history.h" #include "settings.h" #include "tabwidget.h" #include "toolbarsearch.h" #include "ui_passworddialog.h" #include "webview.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include BrowserMainWindow::BrowserMainWindow(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, flags) , m_tabWidget(new TabWidget(this)) , m_autoSaver(new AutoSaver(this)) , m_historyBack(0) , m_historyForward(0) , m_stop(0) , m_reload(0) { setToolButtonStyle(Qt::ToolButtonFollowStyle); setAttribute(Qt::WA_DeleteOnClose, true); statusBar()->setSizeGripEnabled(true); setupMenu(); setupToolBar(); QWidget *centralWidget = new QWidget(this); BookmarksModel *boomarksModel = BrowserApplication::bookmarksManager()->bookmarksModel(); m_bookmarksToolbar = new BookmarksToolBar(boomarksModel, this); connect(m_bookmarksToolbar, SIGNAL(openUrl(QUrl)), m_tabWidget, SLOT(loadUrlInCurrentTab(QUrl))); connect(m_bookmarksToolbar->toggleViewAction(), SIGNAL(toggled(bool)), this, SLOT(updateBookmarksToolbarActionText(bool))); QVBoxLayout *layout = new QVBoxLayout; layout->setSpacing(0); layout->setMargin(0); #if defined(Q_WS_MAC) layout->addWidget(m_bookmarksToolbar); layout->addWidget(new QWidget); // <- OS X tab widget style bug #else addToolBarBreak(); addToolBar(m_bookmarksToolbar); #endif layout->addWidget(m_tabWidget); centralWidget->setLayout(layout); setCentralWidget(centralWidget); connect(m_tabWidget, SIGNAL(loadPage(QString)), this, SLOT(loadPage(QString))); connect(m_tabWidget, SIGNAL(setCurrentTitle(QString)), this, SLOT(slotUpdateWindowTitle(QString))); connect(m_tabWidget, SIGNAL(showStatusBarMessage(QString)), statusBar(), SLOT(showMessage(QString))); connect(m_tabWidget, SIGNAL(linkHovered(QString)), statusBar(), SLOT(showMessage(QString))); connect(m_tabWidget, SIGNAL(loadProgress(int)), this, SLOT(slotLoadProgress(int))); connect(m_tabWidget, SIGNAL(tabsChanged()), m_autoSaver, SLOT(changeOccurred())); connect(m_tabWidget, SIGNAL(geometryChangeRequested(QRect)), this, SLOT(geometryChangeRequested(QRect))); connect(m_tabWidget, SIGNAL(printRequested(QWebFrame*)), this, SLOT(printRequested(QWebFrame*))); connect(m_tabWidget, SIGNAL(menuBarVisibilityChangeRequested(bool)), menuBar(), SLOT(setVisible(bool))); connect(m_tabWidget, SIGNAL(statusBarVisibilityChangeRequested(bool)), statusBar(), SLOT(setVisible(bool))); connect(m_tabWidget, SIGNAL(toolBarVisibilityChangeRequested(bool)), m_navigationBar, SLOT(setVisible(bool))); connect(m_tabWidget, SIGNAL(toolBarVisibilityChangeRequested(bool)), m_bookmarksToolbar, SLOT(setVisible(bool))); #if defined(Q_WS_MAC) connect(m_tabWidget, SIGNAL(lastTabClosed()), this, SLOT(close())); #else connect(m_tabWidget, SIGNAL(lastTabClosed()), m_tabWidget, SLOT(newTab())); #endif slotUpdateWindowTitle(); loadDefaultState(); m_tabWidget->newTab(); int size = m_tabWidget->lineEditStack()->sizeHint().height(); m_navigationBar->setIconSize(QSize(size, size)); } BrowserMainWindow::~BrowserMainWindow() { m_autoSaver->changeOccurred(); m_autoSaver->saveIfNeccessary(); } void BrowserMainWindow::loadDefaultState() { QSettings settings; settings.beginGroup(QLatin1String("BrowserMainWindow")); QByteArray data = settings.value(QLatin1String("defaultState")).toByteArray(); restoreState(data); settings.endGroup(); } QSize BrowserMainWindow::sizeHint() const { QRect desktopRect = QApplication::desktop()->screenGeometry(); QSize size = desktopRect.size() * qreal(0.9); return size; } void BrowserMainWindow::save() { BrowserApplication::instance()->saveSession(); QSettings settings; settings.beginGroup(QLatin1String("BrowserMainWindow")); QByteArray data = saveState(false); settings.setValue(QLatin1String("defaultState"), data); settings.endGroup(); } static const qint32 BrowserMainWindowMagic = 0xba; QByteArray BrowserMainWindow::saveState(bool withTabs) const { int version = 2; QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << qint32(BrowserMainWindowMagic); stream << qint32(version); stream << size(); stream << !m_navigationBar->isHidden(); stream << !m_bookmarksToolbar->isHidden(); stream << !statusBar()->isHidden(); if (withTabs) stream << tabWidget()->saveState(); else stream << QByteArray(); return data; } bool BrowserMainWindow::restoreState(const QByteArray &state) { int version = 2; QByteArray sd = state; QDataStream stream(&sd, QIODevice::ReadOnly); if (stream.atEnd()) return false; qint32 marker; qint32 v; stream >> marker; stream >> v; if (marker != BrowserMainWindowMagic || v != version) return false; QSize size; bool showToolbar; bool showBookmarksBar; bool showStatusbar; QByteArray tabState; stream >> size; stream >> showToolbar; stream >> showBookmarksBar; stream >> showStatusbar; stream >> tabState; resize(size); m_navigationBar->setVisible(showToolbar); updateToolbarActionText(showToolbar); m_bookmarksToolbar->setVisible(showBookmarksBar); updateBookmarksToolbarActionText(showBookmarksBar); statusBar()->setVisible(showStatusbar); updateStatusbarActionText(showStatusbar); if (!tabWidget()->restoreState(tabState)) return false; return true; } void BrowserMainWindow::setupMenu() { new QShortcut(QKeySequence(Qt::Key_F6), this, SLOT(slotSwapFocus())); // File QMenu *fileMenu = menuBar()->addMenu(tr("&File")); fileMenu->addAction(tr("&New Window"), this, SLOT(slotFileNew()), QKeySequence::New); fileMenu->addAction(m_tabWidget->newTabAction()); fileMenu->addAction(tr("&Open File..."), this, SLOT(slotFileOpen()), QKeySequence::Open); fileMenu->addAction(tr("Open &Location..."), this, SLOT(slotSelectLineEdit()), QKeySequence(Qt::ControlModifier + Qt::Key_L)); fileMenu->addSeparator(); fileMenu->addAction(m_tabWidget->closeTabAction()); fileMenu->addSeparator(); fileMenu->addAction(tr("&Save As..."), this, SLOT(slotFileSaveAs()), QKeySequence(QKeySequence::Save)); fileMenu->addSeparator(); BookmarksManager *bookmarksManager = BrowserApplication::bookmarksManager(); fileMenu->addAction(tr("&Import Bookmarks..."), bookmarksManager, SLOT(importBookmarks())); fileMenu->addAction(tr("&Export Bookmarks..."), bookmarksManager, SLOT(exportBookmarks())); fileMenu->addSeparator(); fileMenu->addAction(tr("P&rint Preview..."), this, SLOT(slotFilePrintPreview())); fileMenu->addAction(tr("&Print..."), this, SLOT(slotFilePrint()), QKeySequence::Print); fileMenu->addSeparator(); QAction *action = fileMenu->addAction(tr("Private &Browsing..."), this, SLOT(slotPrivateBrowsing())); action->setCheckable(true); fileMenu->addSeparator(); #if defined(Q_WS_MAC) fileMenu->addAction(tr("&Quit"), BrowserApplication::instance(), SLOT(quitBrowser()), QKeySequence(Qt::CTRL | Qt::Key_Q)); #else fileMenu->addAction(tr("&Quit"), this, SLOT(close()), QKeySequence(Qt::CTRL | Qt::Key_Q)); #endif // Edit QMenu *editMenu = menuBar()->addMenu(tr("&Edit")); QAction *m_undo = editMenu->addAction(tr("&Undo")); m_undo->setShortcuts(QKeySequence::Undo); m_tabWidget->addWebAction(m_undo, QWebPage::Undo); QAction *m_redo = editMenu->addAction(tr("&Redo")); m_redo->setShortcuts(QKeySequence::Redo); m_tabWidget->addWebAction(m_redo, QWebPage::Redo); editMenu->addSeparator(); QAction *m_cut = editMenu->addAction(tr("Cu&t")); m_cut->setShortcuts(QKeySequence::Cut); m_tabWidget->addWebAction(m_cut, QWebPage::Cut); QAction *m_copy = editMenu->addAction(tr("&Copy")); m_copy->setShortcuts(QKeySequence::Copy); m_tabWidget->addWebAction(m_copy, QWebPage::Copy); QAction *m_paste = editMenu->addAction(tr("&Paste")); m_paste->setShortcuts(QKeySequence::Paste); m_tabWidget->addWebAction(m_paste, QWebPage::Paste); editMenu->addSeparator(); QAction *m_find = editMenu->addAction(tr("&Find")); m_find->setShortcuts(QKeySequence::Find); connect(m_find, SIGNAL(triggered()), this, SLOT(slotEditFind())); new QShortcut(QKeySequence(Qt::Key_Slash), this, SLOT(slotEditFind())); QAction *m_findNext = editMenu->addAction(tr("&Find Next")); m_findNext->setShortcuts(QKeySequence::FindNext); connect(m_findNext, SIGNAL(triggered()), this, SLOT(slotEditFindNext())); QAction *m_findPrevious = editMenu->addAction(tr("&Find Previous")); m_findPrevious->setShortcuts(QKeySequence::FindPrevious); connect(m_findPrevious, SIGNAL(triggered()), this, SLOT(slotEditFindPrevious())); editMenu->addSeparator(); editMenu->addAction(tr("&Preferences"), this, SLOT(slotPreferences()), tr("Ctrl+,")); // View QMenu *viewMenu = menuBar()->addMenu(tr("&View")); m_viewBookmarkBar = new QAction(this); updateBookmarksToolbarActionText(true); m_viewBookmarkBar->setShortcut(tr("Shift+Ctrl+B")); connect(m_viewBookmarkBar, SIGNAL(triggered()), this, SLOT(slotViewBookmarksBar())); viewMenu->addAction(m_viewBookmarkBar); m_viewToolbar = new QAction(this); updateToolbarActionText(true); m_viewToolbar->setShortcut(tr("Ctrl+|")); connect(m_viewToolbar, SIGNAL(triggered()), this, SLOT(slotViewToolbar())); viewMenu->addAction(m_viewToolbar); m_viewStatusbar = new QAction(this); updateStatusbarActionText(true); m_viewStatusbar->setShortcut(tr("Ctrl+/")); connect(m_viewStatusbar, SIGNAL(triggered()), this, SLOT(slotViewStatusbar())); viewMenu->addAction(m_viewStatusbar); viewMenu->addSeparator(); m_stop = viewMenu->addAction(tr("&Stop")); QList shortcuts; shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_Period)); shortcuts.append(Qt::Key_Escape); m_stop->setShortcuts(shortcuts); m_tabWidget->addWebAction(m_stop, QWebPage::Stop); m_reload = viewMenu->addAction(tr("Reload Page")); m_reload->setShortcuts(QKeySequence::Refresh); m_tabWidget->addWebAction(m_reload, QWebPage::Reload); viewMenu->addAction(tr("Zoom &In"), this, SLOT(slotViewZoomIn()), QKeySequence(Qt::CTRL | Qt::Key_Plus)); viewMenu->addAction(tr("Zoom &Out"), this, SLOT(slotViewZoomOut()), QKeySequence(Qt::CTRL | Qt::Key_Minus)); viewMenu->addAction(tr("Reset &Zoom"), this, SLOT(slotViewResetZoom()), QKeySequence(Qt::CTRL | Qt::Key_0)); QAction *zoomTextOnlyAction = viewMenu->addAction(tr("Zoom &Text Only")); connect(zoomTextOnlyAction, SIGNAL(toggled(bool)), this, SLOT(slotViewZoomTextOnly(bool))); zoomTextOnlyAction->setCheckable(true); zoomTextOnlyAction->setChecked(false); viewMenu->addSeparator(); viewMenu->addAction(tr("Page S&ource"), this, SLOT(slotViewPageSource()), tr("Ctrl+Alt+U")); QAction *a = viewMenu->addAction(tr("&Full Screen"), this, SLOT(slotViewFullScreen(bool)), Qt::Key_F11); a->setCheckable(true); // History HistoryMenu *historyMenu = new HistoryMenu(this); connect(historyMenu, SIGNAL(openUrl(QUrl)), m_tabWidget, SLOT(loadUrlInCurrentTab(QUrl))); connect(historyMenu, SIGNAL(hovered(QString)), this, SLOT(slotUpdateStatusbar(QString))); historyMenu->setTitle(tr("Hi&story")); menuBar()->addMenu(historyMenu); QList historyActions; m_historyBack = new QAction(tr("Back"), this); m_tabWidget->addWebAction(m_historyBack, QWebPage::Back); m_historyBack->setShortcuts(QKeySequence::Back); m_historyBack->setIconVisibleInMenu(false); m_historyForward = new QAction(tr("Forward"), this); m_tabWidget->addWebAction(m_historyForward, QWebPage::Forward); m_historyForward->setShortcuts(QKeySequence::Forward); m_historyForward->setIconVisibleInMenu(false); QAction *m_historyHome = new QAction(tr("Home"), this); connect(m_historyHome, SIGNAL(triggered()), this, SLOT(slotHome())); m_historyHome->setShortcut(QKeySequence(Qt::CTRL | Qt::SHIFT | Qt::Key_H)); m_restoreLastSession = new QAction(tr("Restore Last Session"), this); connect(m_restoreLastSession, SIGNAL(triggered()), BrowserApplication::instance(), SLOT(restoreLastSession())); m_restoreLastSession->setEnabled(BrowserApplication::instance()->canRestoreSession()); historyActions.append(m_historyBack); historyActions.append(m_historyForward); historyActions.append(m_historyHome); historyActions.append(m_tabWidget->recentlyClosedTabsAction()); historyActions.append(m_restoreLastSession); historyMenu->setInitialActions(historyActions); // Bookmarks BookmarksMenu *bookmarksMenu = new BookmarksMenu(this); connect(bookmarksMenu, SIGNAL(openUrl(QUrl)), m_tabWidget, SLOT(loadUrlInCurrentTab(QUrl))); connect(bookmarksMenu, SIGNAL(hovered(QString)), this, SLOT(slotUpdateStatusbar(QString))); bookmarksMenu->setTitle(tr("&Bookmarks")); menuBar()->addMenu(bookmarksMenu); QList bookmarksActions; QAction *showAllBookmarksAction = new QAction(tr("Show All Bookmarks"), this); connect(showAllBookmarksAction, SIGNAL(triggered()), this, SLOT(slotShowBookmarksDialog())); m_addBookmark = new QAction(QIcon(QLatin1String(":addbookmark.png")), tr("Add Bookmark..."), this); m_addBookmark->setIconVisibleInMenu(false); connect(m_addBookmark, SIGNAL(triggered()), this, SLOT(slotAddBookmark())); m_addBookmark->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_D)); bookmarksActions.append(showAllBookmarksAction); bookmarksActions.append(m_addBookmark); bookmarksMenu->setInitialActions(bookmarksActions); // Window m_windowMenu = menuBar()->addMenu(tr("&Window")); connect(m_windowMenu, SIGNAL(aboutToShow()), this, SLOT(slotAboutToShowWindowMenu())); slotAboutToShowWindowMenu(); QMenu *toolsMenu = menuBar()->addMenu(tr("&Tools")); toolsMenu->addAction(tr("Web &Search"), this, SLOT(slotWebSearch()), QKeySequence(tr("Ctrl+K", "Web Search"))); a = toolsMenu->addAction(tr("Enable Web &Inspector"), this, SLOT(slotToggleInspector(bool))); a->setCheckable(true); QMenu *helpMenu = menuBar()->addMenu(tr("&Help")); helpMenu->addAction(tr("About &Qt"), qApp, SLOT(aboutQt())); helpMenu->addAction(tr("About &Demo Browser"), this, SLOT(slotAboutApplication())); } void BrowserMainWindow::setupToolBar() { setUnifiedTitleAndToolBarOnMac(true); m_navigationBar = addToolBar(tr("Navigation")); connect(m_navigationBar->toggleViewAction(), SIGNAL(toggled(bool)), this, SLOT(updateToolbarActionText(bool))); m_historyBack->setIcon(style()->standardIcon(QStyle::SP_ArrowBack, 0, this)); m_historyBackMenu = new QMenu(this); m_historyBack->setMenu(m_historyBackMenu); connect(m_historyBackMenu, SIGNAL(aboutToShow()), this, SLOT(slotAboutToShowBackMenu())); connect(m_historyBackMenu, SIGNAL(triggered(QAction*)), this, SLOT(slotOpenActionUrl(QAction*))); m_navigationBar->addAction(m_historyBack); m_historyForward->setIcon(style()->standardIcon(QStyle::SP_ArrowForward, 0, this)); m_historyForwardMenu = new QMenu(this); connect(m_historyForwardMenu, SIGNAL(aboutToShow()), this, SLOT(slotAboutToShowForwardMenu())); connect(m_historyForwardMenu, SIGNAL(triggered(QAction*)), this, SLOT(slotOpenActionUrl(QAction*))); m_historyForward->setMenu(m_historyForwardMenu); m_navigationBar->addAction(m_historyForward); m_stopReload = new QAction(this); m_reloadIcon = style()->standardIcon(QStyle::SP_BrowserReload); m_stopReload->setIcon(m_reloadIcon); m_navigationBar->addAction(m_stopReload); m_navigationBar->addWidget(m_tabWidget->lineEditStack()); m_toolbarSearch = new ToolbarSearch(m_navigationBar); m_navigationBar->addWidget(m_toolbarSearch); connect(m_toolbarSearch, SIGNAL(search(QUrl)), SLOT(loadUrl(QUrl))); m_chaseWidget = new ChaseWidget(this); m_navigationBar->addWidget(m_chaseWidget); } void BrowserMainWindow::slotShowBookmarksDialog() { BookmarksDialog *dialog = new BookmarksDialog(this); connect(dialog, SIGNAL(openUrl(QUrl)), m_tabWidget, SLOT(loadUrlInCurrentTab(QUrl))); dialog->show(); } void BrowserMainWindow::slotAddBookmark() { WebView *webView = currentTab(); QString url = webView->url().toString(); QString title = webView->title(); AddBookmarkDialog dialog(url, title); dialog.exec(); } void BrowserMainWindow::slotViewToolbar() { if (m_navigationBar->isVisible()) { updateToolbarActionText(false); m_navigationBar->close(); } else { updateToolbarActionText(true); m_navigationBar->show(); } m_autoSaver->changeOccurred(); } void BrowserMainWindow::slotViewBookmarksBar() { if (m_bookmarksToolbar->isVisible()) { updateBookmarksToolbarActionText(false); m_bookmarksToolbar->close(); } else { updateBookmarksToolbarActionText(true); m_bookmarksToolbar->show(); } m_autoSaver->changeOccurred(); } void BrowserMainWindow::updateStatusbarActionText(bool visible) { m_viewStatusbar->setText(!visible ? tr("Show Status Bar") : tr("Hide Status Bar")); } void BrowserMainWindow::updateToolbarActionText(bool visible) { m_viewToolbar->setText(!visible ? tr("Show Toolbar") : tr("Hide Toolbar")); } void BrowserMainWindow::updateBookmarksToolbarActionText(bool visible) { m_viewBookmarkBar->setText(!visible ? tr("Show Bookmarks bar") : tr("Hide Bookmarks bar")); } void BrowserMainWindow::slotViewStatusbar() { if (statusBar()->isVisible()) { updateStatusbarActionText(false); statusBar()->close(); } else { updateStatusbarActionText(true); statusBar()->show(); } m_autoSaver->changeOccurred(); } void BrowserMainWindow::loadUrl(const QUrl &url) { if (!currentTab() || !url.isValid()) return; m_tabWidget->currentLineEdit()->setText(QString::fromUtf8(url.toEncoded())); m_tabWidget->loadUrlInCurrentTab(url); } void BrowserMainWindow::slotDownloadManager() { BrowserApplication::downloadManager()->show(); } void BrowserMainWindow::slotSelectLineEdit() { m_tabWidget->currentLineEdit()->selectAll(); m_tabWidget->currentLineEdit()->setFocus(); } void BrowserMainWindow::slotFileSaveAs() { BrowserApplication::downloadManager()->download(currentTab()->url(), true); } void BrowserMainWindow::slotPreferences() { SettingsDialog *s = new SettingsDialog(this); s->show(); } void BrowserMainWindow::slotUpdateStatusbar(const QString &string) { statusBar()->showMessage(string, 2000); } void BrowserMainWindow::slotUpdateWindowTitle(const QString &title) { if (title.isEmpty()) { setWindowTitle(tr("Qt Demo Browser")); } else { #if defined(Q_WS_MAC) setWindowTitle(title); #else setWindowTitle(tr("%1 - Qt Demo Browser", "Page title and Browser name").arg(title)); #endif } } void BrowserMainWindow::slotAboutApplication() { QMessageBox::about(this, tr("About"), tr( "Version %1" "

This demo demonstrates Qt's " "webkit facilities in action, providing an example " "browser for you to experiment with.

" "

squeezelabel.h
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/settings.cpp0000644000000000000000000003122112273255454031237 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "settings.h" #include "browserapplication.h" #include "browsermainwindow.h" #include "cookiejar.h" #include "history.h" #include "networkaccessmanager.h" #include "webview.h" #include #include #include SettingsDialog::SettingsDialog(QWidget *parent) : QDialog(parent) { setupUi(this); connect(exceptionsButton, SIGNAL(clicked()), this, SLOT(showExceptions())); connect(setHomeToCurrentPageButton, SIGNAL(clicked()), this, SLOT(setHomeToCurrentPage())); connect(cookiesButton, SIGNAL(clicked()), this, SLOT(showCookies())); connect(standardFontButton, SIGNAL(clicked()), this, SLOT(chooseFont())); connect(fixedFontButton, SIGNAL(clicked()), this, SLOT(chooseFixedFont())); loadDefaults(); loadFromSettings(); } void SettingsDialog::loadDefaults() { QWebSettings *defaultSettings = QWebSettings::globalSettings(); QString standardFontFamily = defaultSettings->fontFamily(QWebSettings::StandardFont); int standardFontSize = defaultSettings->fontSize(QWebSettings::DefaultFontSize); standardFont = QFont(standardFontFamily, standardFontSize); standardLabel->setText(QString(QLatin1String("%1 %2")).arg(standardFont.family()).arg(standardFont.pointSize())); QString fixedFontFamily = defaultSettings->fontFamily(QWebSettings::FixedFont); int fixedFontSize = defaultSettings->fontSize(QWebSettings::DefaultFixedFontSize); fixedFont = QFont(fixedFontFamily, fixedFontSize); fixedLabel->setText(QString(QLatin1String("%1 %2")).arg(fixedFont.family()).arg(fixedFont.pointSize())); downloadsLocation->setText(QStandardPaths::writableLocation(QStandardPaths::DesktopLocation)); enableJavascript->setChecked(defaultSettings->testAttribute(QWebSettings::JavascriptEnabled)); enablePlugins->setChecked(defaultSettings->testAttribute(QWebSettings::PluginsEnabled)); } void SettingsDialog::loadFromSettings() { QSettings settings; settings.beginGroup(QLatin1String("MainWindow")); QString defaultHome = QLatin1String("http://qt-project.org/"); homeLineEdit->setText(settings.value(QLatin1String("home"), defaultHome).toString()); settings.endGroup(); settings.beginGroup(QLatin1String("history")); int historyExpire = settings.value(QLatin1String("historyExpire")).toInt(); int idx = 0; switch (historyExpire) { case 1: idx = 0; break; case 7: idx = 1; break; case 14: idx = 2; break; case 30: idx = 3; break; case 365: idx = 4; break; case -1: idx = 5; break; default: idx = 5; } expireHistory->setCurrentIndex(idx); settings.endGroup(); settings.beginGroup(QLatin1String("downloadmanager")); QString downloadDirectory = settings.value(QLatin1String("downloadDirectory"), downloadsLocation->text()).toString(); downloadsLocation->setText(downloadDirectory); settings.endGroup(); settings.beginGroup(QLatin1String("general")); openLinksIn->setCurrentIndex(settings.value(QLatin1String("openLinksIn"), openLinksIn->currentIndex()).toInt()); settings.endGroup(); // Appearance settings.beginGroup(QLatin1String("websettings")); fixedFont = qvariant_cast(settings.value(QLatin1String("fixedFont"), fixedFont)); standardFont = qvariant_cast(settings.value(QLatin1String("standardFont"), standardFont)); standardLabel->setText(QString(QLatin1String("%1 %2")).arg(standardFont.family()).arg(standardFont.pointSize())); fixedLabel->setText(QString(QLatin1String("%1 %2")).arg(fixedFont.family()).arg(fixedFont.pointSize())); enableJavascript->setChecked(settings.value(QLatin1String("enableJavascript"), enableJavascript->isChecked()).toBool()); enablePlugins->setChecked(settings.value(QLatin1String("enablePlugins"), enablePlugins->isChecked()).toBool()); userStyleSheet->setText(settings.value(QLatin1String("userStyleSheet")).toUrl().toString()); settings.endGroup(); // Privacy settings.beginGroup(QLatin1String("cookies")); QByteArray value = settings.value(QLatin1String("acceptCookies"), QLatin1String("AcceptOnlyFromSitesNavigatedTo")).toByteArray(); QMetaEnum acceptPolicyEnum = CookieJar::staticMetaObject.enumerator(CookieJar::staticMetaObject.indexOfEnumerator("AcceptPolicy")); CookieJar::AcceptPolicy acceptCookies = acceptPolicyEnum.keyToValue(value) == -1 ? CookieJar::AcceptOnlyFromSitesNavigatedTo : static_cast(acceptPolicyEnum.keyToValue(value)); switch(acceptCookies) { case CookieJar::AcceptAlways: acceptCombo->setCurrentIndex(0); break; case CookieJar::AcceptNever: acceptCombo->setCurrentIndex(1); break; case CookieJar::AcceptOnlyFromSitesNavigatedTo: acceptCombo->setCurrentIndex(2); break; } value = settings.value(QLatin1String("keepCookiesUntil"), QLatin1String("Expire")).toByteArray(); QMetaEnum keepPolicyEnum = CookieJar::staticMetaObject.enumerator(CookieJar::staticMetaObject.indexOfEnumerator("KeepPolicy")); CookieJar::KeepPolicy keepCookies = keepPolicyEnum.keyToValue(value) == -1 ? CookieJar::KeepUntilExpire : static_cast(keepPolicyEnum.keyToValue(value)); switch(keepCookies) { case CookieJar::KeepUntilExpire: keepUntilCombo->setCurrentIndex(0); break; case CookieJar::KeepUntilExit: keepUntilCombo->setCurrentIndex(1); break; case CookieJar::KeepUntilTimeLimit: keepUntilCombo->setCurrentIndex(2); break; } settings.endGroup(); // Proxy settings.beginGroup(QLatin1String("proxy")); proxySupport->setChecked(settings.value(QLatin1String("enabled"), false).toBool()); proxyType->setCurrentIndex(settings.value(QLatin1String("type"), 0).toInt()); proxyHostName->setText(settings.value(QLatin1String("hostName")).toString()); proxyPort->setValue(settings.value(QLatin1String("port"), 1080).toInt()); proxyUserName->setText(settings.value(QLatin1String("userName")).toString()); proxyPassword->setText(settings.value(QLatin1String("password")).toString()); settings.endGroup(); } void SettingsDialog::saveToSettings() { QSettings settings; settings.beginGroup(QLatin1String("MainWindow")); settings.setValue(QLatin1String("home"), homeLineEdit->text()); settings.endGroup(); settings.beginGroup(QLatin1String("general")); settings.setValue(QLatin1String("openLinksIn"), openLinksIn->currentIndex()); settings.endGroup(); settings.beginGroup(QLatin1String("history")); int historyExpire = expireHistory->currentIndex(); int idx = -1; switch (historyExpire) { case 0: idx = 1; break; case 1: idx = 7; break; case 2: idx = 14; break; case 3: idx = 30; break; case 4: idx = 365; break; case 5: idx = -1; break; } settings.setValue(QLatin1String("historyExpire"), idx); settings.endGroup(); // Appearance settings.beginGroup(QLatin1String("websettings")); settings.setValue(QLatin1String("fixedFont"), fixedFont); settings.setValue(QLatin1String("standardFont"), standardFont); settings.setValue(QLatin1String("enableJavascript"), enableJavascript->isChecked()); settings.setValue(QLatin1String("enablePlugins"), enablePlugins->isChecked()); QString userStyleSheetString = userStyleSheet->text(); if (QFile::exists(userStyleSheetString)) settings.setValue(QLatin1String("userStyleSheet"), QUrl::fromLocalFile(userStyleSheetString)); else settings.setValue(QLatin1String("userStyleSheet"), QUrl(userStyleSheetString)); settings.endGroup(); //Privacy settings.beginGroup(QLatin1String("cookies")); CookieJar::KeepPolicy keepCookies; switch(acceptCombo->currentIndex()) { default: case 0: keepCookies = CookieJar::KeepUntilExpire; break; case 1: keepCookies = CookieJar::KeepUntilExit; break; case 2: keepCookies = CookieJar::KeepUntilTimeLimit; break; } QMetaEnum acceptPolicyEnum = CookieJar::staticMetaObject.enumerator(CookieJar::staticMetaObject.indexOfEnumerator("AcceptPolicy")); settings.setValue(QLatin1String("acceptCookies"), QLatin1String(acceptPolicyEnum.valueToKey(keepCookies))); CookieJar::KeepPolicy keepPolicy; switch(keepUntilCombo->currentIndex()) { default: case 0: keepPolicy = CookieJar::KeepUntilExpire; break; case 1: keepPolicy = CookieJar::KeepUntilExit; break; case 2: keepPolicy = CookieJar::KeepUntilTimeLimit; break; } QMetaEnum keepPolicyEnum = CookieJar::staticMetaObject.enumerator(CookieJar::staticMetaObject.indexOfEnumerator("KeepPolicy")); settings.setValue(QLatin1String("keepCookiesUntil"), QLatin1String(keepPolicyEnum.valueToKey(keepPolicy))); settings.endGroup(); // proxy settings.beginGroup(QLatin1String("proxy")); settings.setValue(QLatin1String("enabled"), proxySupport->isChecked()); settings.setValue(QLatin1String("type"), proxyType->currentIndex()); settings.setValue(QLatin1String("hostName"), proxyHostName->text()); settings.setValue(QLatin1String("port"), proxyPort->text()); settings.setValue(QLatin1String("userName"), proxyUserName->text()); settings.setValue(QLatin1String("password"), proxyPassword->text()); settings.endGroup(); BrowserApplication::instance()->loadSettings(); BrowserApplication::networkAccessManager()->loadSettings(); BrowserApplication::cookieJar()->loadSettings(); BrowserApplication::historyManager()->loadSettings(); } void SettingsDialog::accept() { saveToSettings(); QDialog::accept(); } void SettingsDialog::showCookies() { CookiesDialog *dialog = new CookiesDialog(BrowserApplication::cookieJar(), this); dialog->exec(); } void SettingsDialog::showExceptions() { CookiesExceptionsDialog *dialog = new CookiesExceptionsDialog(BrowserApplication::cookieJar(), this); dialog->exec(); } void SettingsDialog::chooseFont() { bool ok; QFont font = QFontDialog::getFont(&ok, standardFont, this); if ( ok ) { standardFont = font; standardLabel->setText(QString(QLatin1String("%1 %2")).arg(font.family()).arg(font.pointSize())); } } void SettingsDialog::chooseFixedFont() { bool ok; QFont font = QFontDialog::getFont(&ok, fixedFont, this); if ( ok ) { fixedFont = font; fixedLabel->setText(QString(QLatin1String("%1 %2")).arg(font.family()).arg(font.pointSize())); } } void SettingsDialog::setHomeToCurrentPage() { BrowserMainWindow *mw = static_cast(parent()); WebView *webView = mw->currentTab(); if (webView) homeLineEdit->setText(webView->url().toString()); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browser.pro0000644000000000000000000000363112273255454031104 0ustar rootrootTEMPLATE = app TARGET = browser QT += webkitwidgets network widgets printsupport qtHaveModule(uitools):!embedded: QT += uitools else: DEFINES += QT_NO_UITOOLS FORMS += \ addbookmarkdialog.ui \ bookmarks.ui \ cookies.ui \ cookiesexceptions.ui \ downloaditem.ui \ downloads.ui \ history.ui \ passworddialog.ui \ proxy.ui \ settings.ui HEADERS += \ autosaver.h \ bookmarks.h \ browserapplication.h \ browsermainwindow.h \ chasewidget.h \ cookiejar.h \ downloadmanager.h \ edittableview.h \ edittreeview.h \ history.h \ modelmenu.h \ networkaccessmanager.h \ searchlineedit.h \ settings.h \ squeezelabel.h \ tabwidget.h \ toolbarsearch.h \ urllineedit.h \ webview.h \ xbel.h SOURCES += \ autosaver.cpp \ bookmarks.cpp \ browserapplication.cpp \ browsermainwindow.cpp \ chasewidget.cpp \ cookiejar.cpp \ downloadmanager.cpp \ edittableview.cpp \ edittreeview.cpp \ history.cpp \ modelmenu.cpp \ networkaccessmanager.cpp \ searchlineedit.cpp \ settings.cpp \ squeezelabel.cpp \ tabwidget.cpp \ toolbarsearch.cpp \ urllineedit.cpp \ webview.cpp \ xbel.cpp \ main.cpp RESOURCES += data/data.qrc htmls/htmls.qrc build_all:!build_pass { CONFIG -= build_all CONFIG += release } win32 { RC_FILE = browser.rc } mac { ICON = browser.icns QMAKE_INFO_PLIST = Info_mac.plist TARGET = Browser # No 64-bit Flash on Mac, so build the browser 32-bit contains(QT_CONFIG, x86) { CONFIG -= x86_64 CONFIG += x86 } contains(QT_CONFIG, ppc) { CONFIG -= ppc64 CONFIG += ppc } } wince*: { DEPLOYMENT_PLUGIN += qjpeg qgif } EXAMPLE_FILES = Info_mac.plist browser.icns browser.ico browser.rc # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/browser INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/settings.ui0000644000000000000000000004433012273255454031077 0ustar rootroot Settings 0 0 657 322 Settings Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok 0 0 0 627 243 General Home: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Set to current page Qt::Horizontal 280 18 Remove history items: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter After one day After one week After two weeks After one month After one year Manually Save downloads to: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Open links from applications: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter In a tab in the current window In a new window Qt::Vertical 391 262 0 0 627 243 Appearance Standard font: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 QFrame::StyledPanel Times 16 Qt::AlignCenter Select... Fixed-width font: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter QFrame::StyledPanel Courier 13 Qt::AlignCenter Select... Qt::Vertical 20 93 0 0 627 243 Privacy Web Content Enable Plugins true Enable Javascript true Cookies Accept Cookies: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Always Never Only from sites you navigate to Exceptions... Keep until: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter They expire I exit the application At most 90 days Cookies... Qt::Vertical 371 177 0 0 627 243 Proxy Enable proxy true Type: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Socks5 Http Host: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Port: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 10000 1080 Qt::Horizontal 293 20 User Name: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Password: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter QLineEdit::Password Qt::Vertical 20 8 Advanced Style Sheet: Qt::Vertical 20 176 buttonBox accepted() Settings accept() 248 254 157 274 buttonBox rejected() Settings reject() 316 260 286 274 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/tabwidget.cpp0000644000000000000000000006341512273255454031363 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "tabwidget.h" #include "browserapplication.h" #include "browsermainwindow.h" #include "history.h" #include "urllineedit.h" #include "webview.h" #include #include #include #include #include #include #include #include #include #include #include #include TabBar::TabBar(QWidget *parent) : QTabBar(parent) { setContextMenuPolicy(Qt::CustomContextMenu); setAcceptDrops(true); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); QString ctrl = QLatin1String("Ctrl+%1"); for (int i = 1; i <= 10; ++i) { int key = i; if (key == 10) key = 0; QShortcut *shortCut = new QShortcut(ctrl.arg(key), this); m_tabShortcuts.append(shortCut); connect(shortCut, SIGNAL(activated()), this, SLOT(selectTabAction())); } setTabsClosable(true); connect(this, SIGNAL(tabCloseRequested(int)), this, SIGNAL(closeTab(int))); setSelectionBehaviorOnRemove(QTabBar::SelectPreviousTab); setMovable(true); } void TabBar::selectTabAction() { if (QShortcut *shortCut = qobject_cast(sender())) { int index = m_tabShortcuts.indexOf(shortCut); if (index == 0) index = 10; setCurrentIndex(index); } } void TabBar::contextMenuRequested(const QPoint &position) { QMenu menu; menu.addAction(tr("New &Tab"), this, SIGNAL(newTab()), QKeySequence::AddTab); int index = tabAt(position); if (-1 != index) { QAction *action = menu.addAction(tr("Clone Tab"), this, SLOT(cloneTab())); action->setData(index); menu.addSeparator(); action = menu.addAction(tr("&Close Tab"), this, SLOT(closeTab()), QKeySequence::Close); action->setData(index); action = menu.addAction(tr("Close &Other Tabs"), this, SLOT(closeOtherTabs())); action->setData(index); menu.addSeparator(); action = menu.addAction(tr("Reload Tab"), this, SLOT(reloadTab()), QKeySequence::Refresh); action->setData(index); } else { menu.addSeparator(); } menu.addAction(tr("Reload All Tabs"), this, SIGNAL(reloadAllTabs())); menu.exec(QCursor::pos()); } void TabBar::cloneTab() { if (QAction *action = qobject_cast(sender())) { int index = action->data().toInt(); emit cloneTab(index); } } void TabBar::closeTab() { if (QAction *action = qobject_cast(sender())) { int index = action->data().toInt(); emit closeTab(index); } } void TabBar::closeOtherTabs() { if (QAction *action = qobject_cast(sender())) { int index = action->data().toInt(); emit closeOtherTabs(index); } } void TabBar::mousePressEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) m_dragStartPos = event->pos(); QTabBar::mousePressEvent(event); } void TabBar::mouseMoveEvent(QMouseEvent *event) { if (event->buttons() == Qt::LeftButton) { int diffX = event->pos().x() - m_dragStartPos.x(); int diffY = event->pos().y() - m_dragStartPos.y(); if ((event->pos() - m_dragStartPos).manhattanLength() > QApplication::startDragDistance() && diffX < 3 && diffX > -3 && diffY < -10) { QDrag *drag = new QDrag(this); QMimeData *mimeData = new QMimeData; QList urls; int index = tabAt(event->pos()); QUrl url = tabData(index).toUrl(); urls.append(url); mimeData->setUrls(urls); mimeData->setText(tabText(index)); mimeData->setData(QLatin1String("action"), "tab-reordering"); drag->setMimeData(mimeData); drag->exec(); } } QTabBar::mouseMoveEvent(event); } // When index is -1 index chooses the current tab void TabWidget::reloadTab(int index) { if (index < 0) index = currentIndex(); if (index < 0 || index >= count()) return; QWidget *widget = this->widget(index); if (WebView *tab = qobject_cast(widget)) tab->reload(); } void TabBar::reloadTab() { if (QAction *action = qobject_cast(sender())) { int index = action->data().toInt(); emit reloadTab(index); } } TabWidget::TabWidget(QWidget *parent) : QTabWidget(parent) , m_recentlyClosedTabsAction(0) , m_newTabAction(0) , m_closeTabAction(0) , m_nextTabAction(0) , m_previousTabAction(0) , m_recentlyClosedTabsMenu(0) , m_lineEditCompleter(0) , m_lineEdits(0) , m_tabBar(new TabBar(this)) { setElideMode(Qt::ElideRight); connect(m_tabBar, SIGNAL(newTab()), this, SLOT(newTab())); connect(m_tabBar, SIGNAL(closeTab(int)), this, SLOT(closeTab(int))); connect(m_tabBar, SIGNAL(cloneTab(int)), this, SLOT(cloneTab(int))); connect(m_tabBar, SIGNAL(closeOtherTabs(int)), this, SLOT(closeOtherTabs(int))); connect(m_tabBar, SIGNAL(reloadTab(int)), this, SLOT(reloadTab(int))); connect(m_tabBar, SIGNAL(reloadAllTabs()), this, SLOT(reloadAllTabs())); connect(m_tabBar, SIGNAL(tabMoved(int,int)), this, SLOT(moveTab(int,int))); setTabBar(m_tabBar); setDocumentMode(true); // Actions m_newTabAction = new QAction(QIcon(QLatin1String(":addtab.png")), tr("New &Tab"), this); m_newTabAction->setShortcuts(QKeySequence::AddTab); m_newTabAction->setIconVisibleInMenu(false); connect(m_newTabAction, SIGNAL(triggered()), this, SLOT(newTab())); m_closeTabAction = new QAction(QIcon(QLatin1String(":closetab.png")), tr("&Close Tab"), this); m_closeTabAction->setShortcuts(QKeySequence::Close); m_closeTabAction->setIconVisibleInMenu(false); connect(m_closeTabAction, SIGNAL(triggered()), this, SLOT(closeTab())); m_nextTabAction = new QAction(tr("Show Next Tab"), this); QList shortcuts; shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_BraceRight)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_PageDown)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_BracketRight)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_Less)); m_nextTabAction->setShortcuts(shortcuts); connect(m_nextTabAction, SIGNAL(triggered()), this, SLOT(nextTab())); m_previousTabAction = new QAction(tr("Show Previous Tab"), this); shortcuts.clear(); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_BraceLeft)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_PageUp)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_BracketLeft)); shortcuts.append(QKeySequence(Qt::CTRL | Qt::Key_Greater)); m_previousTabAction->setShortcuts(shortcuts); connect(m_previousTabAction, SIGNAL(triggered()), this, SLOT(previousTab())); m_recentlyClosedTabsMenu = new QMenu(this); connect(m_recentlyClosedTabsMenu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowRecentTabsMenu())); connect(m_recentlyClosedTabsMenu, SIGNAL(triggered(QAction*)), this, SLOT(aboutToShowRecentTriggeredAction(QAction*))); m_recentlyClosedTabsAction = new QAction(tr("Recently Closed Tabs"), this); m_recentlyClosedTabsAction->setMenu(m_recentlyClosedTabsMenu); m_recentlyClosedTabsAction->setEnabled(false); connect(this, SIGNAL(currentChanged(int)), this, SLOT(currentChanged(int))); m_lineEdits = new QStackedWidget(this); } void TabWidget::clear() { // clear the recently closed tabs m_recentlyClosedTabs.clear(); // clear the line edit history for (int i = 0; i < m_lineEdits->count(); ++i) { QLineEdit *qLineEdit = lineEdit(i); qLineEdit->setText(qLineEdit->text()); } } void TabWidget::moveTab(int fromIndex, int toIndex) { QWidget *lineEdit = m_lineEdits->widget(fromIndex); m_lineEdits->removeWidget(lineEdit); m_lineEdits->insertWidget(toIndex, lineEdit); } void TabWidget::addWebAction(QAction *action, QWebPage::WebAction webAction) { if (!action) return; m_actions.append(new WebActionMapper(action, webAction, this)); } void TabWidget::currentChanged(int index) { WebView *webView = this->webView(index); if (!webView) return; Q_ASSERT(m_lineEdits->count() == count()); WebView *oldWebView = this->webView(m_lineEdits->currentIndex()); if (oldWebView) { disconnect(oldWebView, SIGNAL(statusBarMessage(QString)), this, SIGNAL(showStatusBarMessage(QString))); disconnect(oldWebView->page(), SIGNAL(linkHovered(QString,QString,QString)), this, SIGNAL(linkHovered(QString))); disconnect(oldWebView, SIGNAL(loadProgress(int)), this, SIGNAL(loadProgress(int))); } connect(webView, SIGNAL(statusBarMessage(QString)), this, SIGNAL(showStatusBarMessage(QString))); connect(webView->page(), SIGNAL(linkHovered(QString,QString,QString)), this, SIGNAL(linkHovered(QString))); connect(webView, SIGNAL(loadProgress(int)), this, SIGNAL(loadProgress(int))); for (int i = 0; i < m_actions.count(); ++i) { WebActionMapper *mapper = m_actions[i]; mapper->updateCurrent(webView->page()); } emit setCurrentTitle(webView->title()); m_lineEdits->setCurrentIndex(index); emit loadProgress(webView->progress()); emit showStatusBarMessage(webView->lastStatusBarText()); if (webView->url().isEmpty()) m_lineEdits->currentWidget()->setFocus(); else webView->setFocus(); } QAction *TabWidget::newTabAction() const { return m_newTabAction; } QAction *TabWidget::closeTabAction() const { return m_closeTabAction; } QAction *TabWidget::recentlyClosedTabsAction() const { return m_recentlyClosedTabsAction; } QAction *TabWidget::nextTabAction() const { return m_nextTabAction; } QAction *TabWidget::previousTabAction() const { return m_previousTabAction; } QWidget *TabWidget::lineEditStack() const { return m_lineEdits; } QLineEdit *TabWidget::currentLineEdit() const { return lineEdit(m_lineEdits->currentIndex()); } WebView *TabWidget::currentWebView() const { return webView(currentIndex()); } QLineEdit *TabWidget::lineEdit(int index) const { UrlLineEdit *urlLineEdit = qobject_cast(m_lineEdits->widget(index)); if (urlLineEdit) return urlLineEdit->lineEdit(); return 0; } WebView *TabWidget::webView(int index) const { QWidget *widget = this->widget(index); if (WebView *webView = qobject_cast(widget)) { return webView; } else { // optimization to delay creating the first webview if (count() == 1) { TabWidget *that = const_cast(this); that->setUpdatesEnabled(false); that->newTab(); that->closeTab(0); that->setUpdatesEnabled(true); return currentWebView(); } } return 0; } int TabWidget::webViewIndex(WebView *webView) const { int index = indexOf(webView); return index; } WebView *TabWidget::newTab(bool makeCurrent) { // line edit UrlLineEdit *urlLineEdit = new UrlLineEdit; QLineEdit *lineEdit = urlLineEdit->lineEdit(); if (!m_lineEditCompleter && count() > 0) { HistoryCompletionModel *completionModel = new HistoryCompletionModel(this); completionModel->setSourceModel(BrowserApplication::historyManager()->historyFilterModel()); m_lineEditCompleter = new QCompleter(completionModel, this); // Should this be in Qt by default? QAbstractItemView *popup = m_lineEditCompleter->popup(); QListView *listView = qobject_cast(popup); if (listView) listView->setUniformItemSizes(true); } lineEdit->setCompleter(m_lineEditCompleter); connect(lineEdit, SIGNAL(returnPressed()), this, SLOT(lineEditReturnPressed())); m_lineEdits->addWidget(urlLineEdit); m_lineEdits->setSizePolicy(lineEdit->sizePolicy()); // optimization to delay creating the more expensive WebView, history, etc if (count() == 0) { QWidget *emptyWidget = new QWidget; QPalette p = emptyWidget->palette(); p.setColor(QPalette::Window, palette().color(QPalette::Base)); emptyWidget->setPalette(p); emptyWidget->setAutoFillBackground(true); disconnect(this, SIGNAL(currentChanged(int)), this, SLOT(currentChanged(int))); addTab(emptyWidget, tr("(Untitled)")); connect(this, SIGNAL(currentChanged(int)), this, SLOT(currentChanged(int))); return 0; } // webview WebView *webView = new WebView; urlLineEdit->setWebView(webView); connect(webView, SIGNAL(loadStarted()), this, SLOT(webViewLoadStarted())); connect(webView, SIGNAL(loadFinished(bool)), this, SLOT(webViewIconChanged())); connect(webView, SIGNAL(iconChanged()), this, SLOT(webViewIconChanged())); connect(webView, SIGNAL(titleChanged(QString)), this, SLOT(webViewTitleChanged(QString))); connect(webView, SIGNAL(urlChanged(QUrl)), this, SLOT(webViewUrlChanged(QUrl))); connect(webView->page(), SIGNAL(windowCloseRequested()), this, SLOT(windowCloseRequested())); connect(webView->page(), SIGNAL(geometryChangeRequested(QRect)), this, SIGNAL(geometryChangeRequested(QRect))); connect(webView->page(), SIGNAL(printRequested(QWebFrame*)), this, SIGNAL(printRequested(QWebFrame*))); connect(webView->page(), SIGNAL(menuBarVisibilityChangeRequested(bool)), this, SIGNAL(menuBarVisibilityChangeRequested(bool))); connect(webView->page(), SIGNAL(statusBarVisibilityChangeRequested(bool)), this, SIGNAL(statusBarVisibilityChangeRequested(bool))); connect(webView->page(), SIGNAL(toolBarVisibilityChangeRequested(bool)), this, SIGNAL(toolBarVisibilityChangeRequested(bool))); addTab(webView, tr("(Untitled)")); if (makeCurrent) setCurrentWidget(webView); // webview actions for (int i = 0; i < m_actions.count(); ++i) { WebActionMapper *mapper = m_actions[i]; mapper->addChild(webView->page()->action(mapper->webAction())); } if (count() == 1) currentChanged(currentIndex()); emit tabsChanged(); return webView; } void TabWidget::reloadAllTabs() { for (int i = 0; i < count(); ++i) { QWidget *tabWidget = widget(i); if (WebView *tab = qobject_cast(tabWidget)) { tab->reload(); } } } void TabWidget::lineEditReturnPressed() { if (QLineEdit *lineEdit = qobject_cast(sender())) { emit loadPage(lineEdit->text()); if (m_lineEdits->currentWidget() == lineEdit) currentWebView()->setFocus(); } } void TabWidget::windowCloseRequested() { WebPage *webPage = qobject_cast(sender()); WebView *webView = qobject_cast(webPage->view()); int index = webViewIndex(webView); if (index >= 0) { if (count() == 1) webView->webPage()->mainWindow()->close(); else closeTab(index); } } void TabWidget::closeOtherTabs(int index) { if (-1 == index) return; for (int i = count() - 1; i > index; --i) closeTab(i); for (int i = index - 1; i >= 0; --i) closeTab(i); } // When index is -1 index chooses the current tab void TabWidget::cloneTab(int index) { if (index < 0) index = currentIndex(); if (index < 0 || index >= count()) return; WebView *tab = newTab(false); tab->setUrl(webView(index)->url()); } // When index is -1 index chooses the current tab void TabWidget::closeTab(int index) { if (index < 0) index = currentIndex(); if (index < 0 || index >= count()) return; bool hasFocus = false; if (WebView *tab = webView(index)) { if (tab->isModified()) { QMessageBox closeConfirmation(tab); closeConfirmation.setWindowFlags(Qt::Sheet); closeConfirmation.setWindowTitle(tr("Do you really want to close this page?")); closeConfirmation.setInformativeText(tr("You have modified this page and when closing it you would lose the modification.\n" "Do you really want to close this page?\n")); closeConfirmation.setIcon(QMessageBox::Question); closeConfirmation.addButton(QMessageBox::Yes); closeConfirmation.addButton(QMessageBox::No); closeConfirmation.setEscapeButton(QMessageBox::No); if (closeConfirmation.exec() == QMessageBox::No) return; } hasFocus = tab->hasFocus(); QWebSettings *globalSettings = QWebSettings::globalSettings(); if (!globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) { m_recentlyClosedTabsAction->setEnabled(true); m_recentlyClosedTabs.prepend(tab->url()); if (m_recentlyClosedTabs.size() >= TabWidget::m_recentlyClosedTabsSize) m_recentlyClosedTabs.removeLast(); } } QWidget *lineEdit = m_lineEdits->widget(index); m_lineEdits->removeWidget(lineEdit); lineEdit->deleteLater(); QWidget *webView = widget(index); removeTab(index); webView->deleteLater(); emit tabsChanged(); if (hasFocus && count() > 0) currentWebView()->setFocus(); if (count() == 0) emit lastTabClosed(); } void TabWidget::webViewLoadStarted() { WebView *webView = qobject_cast(sender()); int index = webViewIndex(webView); if (-1 != index) { QIcon icon(QLatin1String(":loading.gif")); setTabIcon(index, icon); } } void TabWidget::webViewIconChanged() { WebView *webView = qobject_cast(sender()); int index = webViewIndex(webView); if (-1 != index) { QIcon icon = BrowserApplication::instance()->icon(webView->url()); setTabIcon(index, icon); } } void TabWidget::webViewTitleChanged(const QString &title) { WebView *webView = qobject_cast(sender()); int index = webViewIndex(webView); if (-1 != index) { setTabText(index, title); } if (currentIndex() == index) emit setCurrentTitle(title); BrowserApplication::historyManager()->updateHistoryItem(webView->url(), title); } void TabWidget::webViewUrlChanged(const QUrl &url) { WebView *webView = qobject_cast(sender()); int index = webViewIndex(webView); if (-1 != index) { m_tabBar->setTabData(index, url); } emit tabsChanged(); } void TabWidget::aboutToShowRecentTabsMenu() { m_recentlyClosedTabsMenu->clear(); for (int i = 0; i < m_recentlyClosedTabs.count(); ++i) { QAction *action = new QAction(m_recentlyClosedTabsMenu); action->setData(m_recentlyClosedTabs.at(i)); QIcon icon = BrowserApplication::instance()->icon(m_recentlyClosedTabs.at(i)); action->setIcon(icon); action->setText(m_recentlyClosedTabs.at(i).toString()); m_recentlyClosedTabsMenu->addAction(action); } } void TabWidget::aboutToShowRecentTriggeredAction(QAction *action) { QUrl url = action->data().toUrl(); loadUrlInCurrentTab(url); } void TabWidget::mouseDoubleClickEvent(QMouseEvent *event) { if (!childAt(event->pos()) // Remove the line below when QTabWidget does not have a one pixel frame && event->pos().y() < (tabBar()->y() + tabBar()->height())) { newTab(); return; } QTabWidget::mouseDoubleClickEvent(event); } void TabWidget::contextMenuEvent(QContextMenuEvent *event) { if (!childAt(event->pos())) { m_tabBar->contextMenuRequested(event->pos()); return; } QTabWidget::contextMenuEvent(event); } void TabWidget::mouseReleaseEvent(QMouseEvent *event) { if (event->button() == Qt::MidButton && !childAt(event->pos()) // Remove the line below when QTabWidget does not have a one pixel frame && event->pos().y() < (tabBar()->y() + tabBar()->height())) { QUrl url(QApplication::clipboard()->text(QClipboard::Selection)); if (!url.isEmpty() && url.isValid() && !url.scheme().isEmpty()) { WebView *webView = newTab(); webView->setUrl(url); } } } void TabWidget::loadUrlInCurrentTab(const QUrl &url) { WebView *webView = currentWebView(); if (webView) { webView->loadUrl(url); webView->setFocus(); } } void TabWidget::nextTab() { int next = currentIndex() + 1; if (next == count()) next = 0; setCurrentIndex(next); } void TabWidget::previousTab() { int next = currentIndex() - 1; if (next < 0) next = count() - 1; setCurrentIndex(next); } static const qint32 TabWidgetMagic = 0xaa; QByteArray TabWidget::saveState() const { int version = 1; QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << qint32(TabWidgetMagic); stream << qint32(version); QStringList tabs; for (int i = 0; i < count(); ++i) { if (WebView *tab = qobject_cast(widget(i))) { tabs.append(tab->url().toString()); } else { tabs.append(QString::null); } } stream << tabs; stream << currentIndex(); return data; } bool TabWidget::restoreState(const QByteArray &state) { int version = 1; QByteArray sd = state; QDataStream stream(&sd, QIODevice::ReadOnly); if (stream.atEnd()) return false; qint32 marker; qint32 v; stream >> marker; stream >> v; if (marker != TabWidgetMagic || v != version) return false; QStringList openTabs; stream >> openTabs; for (int i = 0; i < openTabs.count(); ++i) { if (i != 0) newTab(); loadPage(openTabs.at(i)); } int currentTab; stream >> currentTab; setCurrentIndex(currentTab); return true; } WebActionMapper::WebActionMapper(QAction *root, QWebPage::WebAction webAction, QObject *parent) : QObject(parent) , m_currentParent(0) , m_root(root) , m_webAction(webAction) { if (!m_root) return; connect(m_root, SIGNAL(triggered()), this, SLOT(rootTriggered())); connect(root, SIGNAL(destroyed(QObject*)), this, SLOT(rootDestroyed())); root->setEnabled(false); } void WebActionMapper::rootDestroyed() { m_root = 0; } void WebActionMapper::currentDestroyed() { updateCurrent(0); } void WebActionMapper::addChild(QAction *action) { if (!action) return; connect(action, SIGNAL(changed()), this, SLOT(childChanged())); } QWebPage::WebAction WebActionMapper::webAction() const { return m_webAction; } void WebActionMapper::rootTriggered() { if (m_currentParent) { QAction *gotoAction = m_currentParent->action(m_webAction); gotoAction->trigger(); } } void WebActionMapper::childChanged() { if (QAction *source = qobject_cast(sender())) { if (m_root && m_currentParent && source->parent() == m_currentParent) { m_root->setChecked(source->isChecked()); m_root->setEnabled(source->isEnabled()); } } } void WebActionMapper::updateCurrent(QWebPage *currentParent) { if (m_currentParent) disconnect(m_currentParent, SIGNAL(destroyed(QObject*)), this, SLOT(currentDestroyed())); m_currentParent = currentParent; if (!m_root) return; if (!m_currentParent) { m_root->setEnabled(false); m_root->setChecked(false); return; } QAction *source = m_currentParent->action(m_webAction); m_root->setChecked(source->isChecked()); m_root->setEnabled(source->isEnabled()); connect(m_currentParent, SIGNAL(destroyed(QObject*)), this, SLOT(currentDestroyed())); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browsermainwindow.h0000644000000000000000000001200312273255454032621 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BROWSERMAINWINDOW_H #define BROWSERMAINWINDOW_H #include #include #include class AutoSaver; class BookmarksToolBar; class ChaseWidget; class QWebFrame; class TabWidget; class ToolbarSearch; class WebView; /*! The MainWindow of the Browser Application. Handles the tab widget and all the actions */ class BrowserMainWindow : public QMainWindow { Q_OBJECT public: BrowserMainWindow(QWidget *parent = 0, Qt::WindowFlags flags = 0); ~BrowserMainWindow(); QSize sizeHint() const; public: TabWidget *tabWidget() const; WebView *currentTab() const; QByteArray saveState(bool withTabs = true) const; bool restoreState(const QByteArray &state); public slots: void loadPage(const QString &url); void slotHome(); protected: void closeEvent(QCloseEvent *event); private slots: void save(); void slotLoadProgress(int); void slotUpdateStatusbar(const QString &string); void slotUpdateWindowTitle(const QString &title = QString()); void loadUrl(const QUrl &url); void slotPreferences(); void slotFileNew(); void slotFileOpen(); void slotFilePrintPreview(); void slotFilePrint(); void slotPrivateBrowsing(); void slotFileSaveAs(); void slotEditFind(); void slotEditFindNext(); void slotEditFindPrevious(); void slotShowBookmarksDialog(); void slotAddBookmark(); void slotViewZoomIn(); void slotViewZoomOut(); void slotViewResetZoom(); void slotViewZoomTextOnly(bool enable); void slotViewToolbar(); void slotViewBookmarksBar(); void slotViewStatusbar(); void slotViewPageSource(); void slotViewFullScreen(bool enable); void slotWebSearch(); void slotToggleInspector(bool enable); void slotAboutApplication(); void slotDownloadManager(); void slotSelectLineEdit(); void slotAboutToShowBackMenu(); void slotAboutToShowForwardMenu(); void slotAboutToShowWindowMenu(); void slotOpenActionUrl(QAction *action); void slotShowWindow(); void slotSwapFocus(); void printRequested(QWebFrame *frame); void geometryChangeRequested(const QRect &geometry); void updateToolbarActionText(bool visible); void updateBookmarksToolbarActionText(bool visible); private: void loadDefaultState(); void setupMenu(); void setupToolBar(); void updateStatusbarActionText(bool visible); private: QToolBar *m_navigationBar; ToolbarSearch *m_toolbarSearch; BookmarksToolBar *m_bookmarksToolbar; ChaseWidget *m_chaseWidget; TabWidget *m_tabWidget; AutoSaver *m_autoSaver; QAction *m_historyBack; QMenu *m_historyBackMenu; QAction *m_historyForward; QMenu *m_historyForwardMenu; QMenu *m_windowMenu; QAction *m_stop; QAction *m_reload; QAction *m_stopReload; QAction *m_viewToolbar; QAction *m_viewBookmarkBar; QAction *m_viewStatusbar; QAction *m_restoreLastSession; QAction *m_addBookmark; QIcon m_reloadIcon; QIcon m_stopIcon; QString m_lastSearch; }; #endif // BROWSERMAINWINDOW_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/addbookmarkdialog.ui0000644000000000000000000000437412273255454032701 0ustar rootroot AddBookmarkDialog 0 0 240 168 Add Bookmark Type a name for the bookmark, and choose where to keep it. Qt::PlainText true Qt::Vertical 20 2 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok false buttonBox accepted() AddBookmarkDialog accept() 248 254 157 274 buttonBox rejected() AddBookmarkDialog reject() 316 260 286 274 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/proxy.ui0000644000000000000000000000502012273255454030411 0ustar rootroot ProxyDialog 0 0 369 144 Proxy Authentication ICON Connect to proxy true Username: Password: QLineEdit::Password Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() ProxyDialog accept() 248 254 157 274 buttonBox rejected() ProxyDialog reject() 316 260 286 274 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/main.cpp0000644000000000000000000000431212273255454030324 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "browserapplication.h" int main(int argc, char **argv) { Q_INIT_RESOURCE(data); BrowserApplication application(argc, argv); if (!application.isTheOnlyBrowser()) return 0; application.newMainWindow(); return application.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/edittreeview.h0000644000000000000000000000436512273255454031555 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef EDITTREEVIEW_H #define EDITTREEVIEW_H #include class EditTreeView : public QTreeView { Q_OBJECT public: EditTreeView(QWidget *parent = 0); void keyPressEvent(QKeyEvent *event); public slots: void removeOne(); void removeAll(); }; #endif // EDITTREEVIEW_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/htmls/0000755000000000000000000000000012273255454030023 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/htmls/htmls.qrc0000644000000000000000000000014112273255454031655 0ustar rootroot notfound.html qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/htmls/notfound.html0000644000000000000000000000225112273255454032545 0ustar rootroot %1

%2

When connecting to: %3.

  • Check the address for errors such as ww.example.com instead of www.example.com
  • If the address is correct, try checking the network connection.
  • If your computer or network is protected by a firewall or proxy, make sure that the browser demo is permitted to access the network.


qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/downloads.ui0000644000000000000000000000374112273255454031232 0ustar rootroot DownloadDialog 0 0 332 252 Downloads 0 0 false Clean up Qt::Horizontal 58 24 0 Items Qt::Horizontal 148 20 EditTableView QTableView
edittableview.h
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/xbel.h0000644000000000000000000000663212273255454030006 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef XBEL_H #define XBEL_H #include #include class BookmarkNode { public: enum Type { Root, Folder, Bookmark, Separator }; BookmarkNode(Type type = Root, BookmarkNode *parent = 0); ~BookmarkNode(); bool operator==(const BookmarkNode &other); Type type() const; void setType(Type type); QList children() const; BookmarkNode *parent() const; void add(BookmarkNode *child, int offset = -1); void remove(BookmarkNode *child); QString url; QString title; QString desc; bool expanded; private: BookmarkNode *m_parent; Type m_type; QList m_children; }; class XbelReader : public QXmlStreamReader { public: XbelReader(); BookmarkNode *read(const QString &fileName); BookmarkNode *read(QIODevice *device); private: void readXBEL(BookmarkNode *parent); void readTitle(BookmarkNode *parent); void readDescription(BookmarkNode *parent); void readSeparator(BookmarkNode *parent); void readFolder(BookmarkNode *parent); void readBookmarkNode(BookmarkNode *parent); }; #include class XbelWriter : public QXmlStreamWriter { public: XbelWriter(); bool write(const QString &fileName, const BookmarkNode *root); bool write(QIODevice *device, const BookmarkNode *root); private: void writeItem(const BookmarkNode *parent); }; #endif // XBEL_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browser.rc0000644000000000000000000000007712273255454030711 0ustar rootrootIDI_ICON1 ICON DISCARDABLE "browser.ico" qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/0000755000000000000000000000000012273255454027605 5ustar rootroot././@LongLink0000000000000000000000000000015300000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/defaultbookmarks.xbelqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/defaultbookmark0000644000000000000000000000270312273255454032704 0ustar rootroot Bookmarks Bar Qt Home Page WebKit.org Qt Documentation Qt Quarterly Qt Blog Qt Centre Qt-Apps.org Online Communities xkcd Twitter Bookmarks Menu reddit.com: what's new online! qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/history.png0000644000000000000000000000276712273255454032030 0ustar rootrootPNG  IHDRw= pHYs  tIME $# bKGDIDATHŔkLgŗefٖˌSCY1t*q\zZh 7QADLr+ CNTnRPAh d:^W}INybld;O[mqИ.hq&MS0 -Oנ.OA:>Ks{6.[s [:(Pt bL xfggI,覧!jh ,vb hjK2Y}H 8\jel# 0i24<6d?<߯oڱ.?3(63q:iBD j/lFm ;rHCBx)x<J‚f&@"sDxc P |KY"/D03k' ͎v(&&M4>|ql="z 1v+8LN @"!`3:RK6+ИN&=7qnCbYdYT; C=)t=wB tL&T*VVxw/E4^iQp*⮼\*݅T!vs'/j(?sS(H$r}w319ae99y$"n+uYוӇ=WB5;00(M"e͍"67@.NX,^*ncM˭^>Hu /Q_; $hVvSF088zPzf_c7[gsr2KfqtMq"z=o٧ު ~s>yBIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/browser.svg0000644000000000000000000005105212273255454032014 0ustar rootroot image/svg+xml Qt Browser Jens Bache-Wiig Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/data.qrc0000644000000000000000000000043312273255454031225 0ustar rootroot addtab.png closetab.png history.png browser.svg defaultbookmarks.xbel loading.gif defaulticon.png qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/addtab.png0000644000000000000000000000072512273255454031536 0ustar rootrootPNG  IHDR(-SPLTE''',,,999>?>???,,,---@@@AAA+++333>>>DDEEEE---:::AAAHHH222777GGGIII///???BBBHHIHII666JJJPPPYYYNNNIIIRRRLLLMMM+++QQQ&&&JJJOOO777888<<<>>>???@@@AAADDDTTTWVWEEE[[[\\\dddeeejjj111WWW tRNS44444ggggZIDATmP,%Ss?O{4j2h].q|9-TJ2zi:7A9sN4W|)6^1S:"QQkBmDps fFE:aNt@k~H2K~~ɲYQ\m\ hWfunIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/closetab.png0000644000000000000000000000100412273255454032102 0ustar rootrootPNG  IHDR(-SPLTE''',,,999>?????,,,---@@@AAA+++333>>>DEDEEE---:::AAAHGHHHH222777GGGHHH///???BBBHIIIII666IIIJJJOOOPPPRRR<<<@@@MMMNNNAAABBBZZZ]]]>>>[[[KKK777CCC^^^bbbDDDjjjkkksssEEEGGGIIITTTUUUAA@ŠtRNS44444ggggIDATm@УwѣLDM"Hho\]z?A<0(㫲2C#|>sxg0am. ݘQC-9S0K]"w/,60i- 8,WU5Co(Ut4_he .S-nI0$K7 H,-t*E-``1@C7h/1f\)&!;qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/data/defaulticon.png0000644000000000000000000000270112273255454032610 0ustar rootrootPNG  IHDRĴl;IDAT8}]\w9̙ϝfMbhܒZZKU HoEܴJ/rx ҫ\([L& m)$e7n#3gfb }xy)ӗ>)γO7TrY.ւ$g+_FAz 3 ߑd$Mȡ9z>(w.z^_lz׵4]Ҥ^M`2`)G`dĽ5Vbymscuޯ?7Yͣ)~5y&lIq%!)+ËE'[?Pݰ\[O7mEd8 ='deWt8|o@E 8s9?5<%dGT4&L5f ;fKztÀRJRi\.xgDd)~_YszdlRHMcѬlN<.rէѴ .b߽{~ m~7֘R eKHNfxbѠQ0S &hz6j/ٹ0C!vC&' %!N^@R2bbF?xB!Lc() 0N8I?F8Iq}h)ǧH%qtǃ3yK1QqEA8񣄑)LbAh1'^ɺr0(f%70u Ci(M)~GA k:mR43 0Vcw8:;[:DҘ:fQeL%0Õw4f0x5lL4P/tq_lvuQBФɗ&w\E!~rFM6[$ Z=j?Z0G1B^?)H/xFe!$NpbsWհ^ u?<[適C`CTJ" IS("_nCFSncƾuovu}8תeJfH 8.Θ(Q8LSgy?~{/V<}zRyĩ)ln1Yx6$MBQ ȐLNc[ƻW'݂XasqRt%`Zz}Vߧ1(ewZ}O3 /<0/ѢK&94lCJlYP/Jnl$|FFOe Wwyh5}/ f6JC3ddh ah|G'|h5 !,Tȼ}kO3n,f"*p[ݸ [@/M?+Zw ceIENDB`qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/tabwidget.h0000644000000000000000000001517412273255454031027 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef TABWIDGET_H #define TABWIDGET_H #include #include /* Tab bar with a few more features such as a context menu and shortcuts */ class TabBar : public QTabBar { Q_OBJECT signals: void newTab(); void cloneTab(int index); void closeTab(int index); void closeOtherTabs(int index); void reloadTab(int index); void reloadAllTabs(); void tabMoveRequested(int fromIndex, int toIndex); public: TabBar(QWidget *parent = 0); protected: void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); private slots: void selectTabAction(); void cloneTab(); void closeTab(); void closeOtherTabs(); void reloadTab(); void contextMenuRequested(const QPoint &position); private: QList m_tabShortcuts; friend class TabWidget; QPoint m_dragStartPos; int m_dragCurrentIndex; }; #include QT_BEGIN_NAMESPACE class QAction; QT_END_NAMESPACE class WebView; /*! A proxy object that connects a single browser action to one child webpage action at a time. Example usage: used to keep the main window stop action in sync with the current tabs webview's stop action. */ class WebActionMapper : public QObject { Q_OBJECT public: WebActionMapper(QAction *root, QWebPage::WebAction webAction, QObject *parent); QWebPage::WebAction webAction() const; void addChild(QAction *action); void updateCurrent(QWebPage *currentParent); private slots: void rootTriggered(); void childChanged(); void rootDestroyed(); void currentDestroyed(); private: QWebPage *m_currentParent; QAction *m_root; QWebPage::WebAction m_webAction; }; #include #include QT_BEGIN_NAMESPACE class QCompleter; class QLineEdit; class QMenu; class QStackedWidget; QT_END_NAMESPACE /*! TabWidget that contains WebViews and a stack widget of associated line edits. Connects up the current tab's signals to this class's signal and uses WebActionMapper to proxy the actions. */ class TabWidget : public QTabWidget { Q_OBJECT signals: // tab widget signals void loadPage(const QString &url); void tabsChanged(); void lastTabClosed(); // current tab signals void setCurrentTitle(const QString &url); void showStatusBarMessage(const QString &message); void linkHovered(const QString &link); void loadProgress(int progress); void geometryChangeRequested(const QRect &geometry); void menuBarVisibilityChangeRequested(bool visible); void statusBarVisibilityChangeRequested(bool visible); void toolBarVisibilityChangeRequested(bool visible); void printRequested(QWebFrame *frame); public: TabWidget(QWidget *parent = 0); void clear(); void addWebAction(QAction *action, QWebPage::WebAction webAction); QAction *newTabAction() const; QAction *closeTabAction() const; QAction *recentlyClosedTabsAction() const; QAction *nextTabAction() const; QAction *previousTabAction() const; QWidget *lineEditStack() const; QLineEdit *currentLineEdit() const; WebView *currentWebView() const; WebView *webView(int index) const; QLineEdit *lineEdit(int index) const; int webViewIndex(WebView *webView) const; QByteArray saveState() const; bool restoreState(const QByteArray &state); protected: void mouseDoubleClickEvent(QMouseEvent *event); void contextMenuEvent(QContextMenuEvent *event); void mouseReleaseEvent(QMouseEvent *event); public slots: void loadUrlInCurrentTab(const QUrl &url); WebView *newTab(bool makeCurrent = true); void cloneTab(int index = -1); void closeTab(int index = -1); void closeOtherTabs(int index); void reloadTab(int index = -1); void reloadAllTabs(); void nextTab(); void previousTab(); private slots: void currentChanged(int index); void aboutToShowRecentTabsMenu(); void aboutToShowRecentTriggeredAction(QAction *action); void webViewLoadStarted(); void webViewIconChanged(); void webViewTitleChanged(const QString &title); void webViewUrlChanged(const QUrl &url); void lineEditReturnPressed(); void windowCloseRequested(); void moveTab(int fromIndex, int toIndex); private: QAction *m_recentlyClosedTabsAction; QAction *m_newTabAction; QAction *m_closeTabAction; QAction *m_nextTabAction; QAction *m_previousTabAction; QMenu *m_recentlyClosedTabsMenu; static const int m_recentlyClosedTabsSize = 10; QList m_recentlyClosedTabs; QList m_actions; QCompleter *m_lineEditCompleter; QStackedWidget *m_lineEdits; TabBar *m_tabBar; }; #endif // TABWIDGET_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/edittableview.cpp0000644000000000000000000000553112273255454032234 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "edittableview.h" #include EditTableView::EditTableView(QWidget *parent) : QTableView(parent) { } void EditTableView::keyPressEvent(QKeyEvent *event) { if ((event->key() == Qt::Key_Delete || event->key() == Qt::Key_Backspace) && model()) { removeOne(); } else { QAbstractItemView::keyPressEvent(event); } } void EditTableView::removeOne() { if (!model() || !selectionModel()) return; int row = currentIndex().row(); model()->removeRow(row, rootIndex()); QModelIndex idx = model()->index(row, 0, rootIndex()); if (!idx.isValid()) idx = model()->index(row - 1, 0, rootIndex()); selectionModel()->select(idx, QItemSelectionModel::SelectCurrent | QItemSelectionModel::Rows); } void EditTableView::removeAll() { if (model()) model()->removeRows(0, model()->rowCount(rootIndex()), rootIndex()); } ././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browserapplication.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browserapplication.c0000644000000000000000000003444412273255454032760 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "browserapplication.h" #include "bookmarks.h" #include "browsermainwindow.h" #include "cookiejar.h" #include "downloadmanager.h" #include "history.h" #include "networkaccessmanager.h" #include "tabwidget.h" #include "webview.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include DownloadManager *BrowserApplication::s_downloadManager = 0; HistoryManager *BrowserApplication::s_historyManager = 0; NetworkAccessManager *BrowserApplication::s_networkAccessManager = 0; BookmarksManager *BrowserApplication::s_bookmarksManager = 0; BrowserApplication::BrowserApplication(int &argc, char **argv) : QApplication(argc, argv) , m_localServer(0) { QCoreApplication::setOrganizationName(QLatin1String("Qt")); QCoreApplication::setApplicationName(QLatin1String("demobrowser")); QCoreApplication::setApplicationVersion(QLatin1String("0.1")); #ifdef Q_WS_QWS // Use a different server name for QWS so we can run an X11 // browser and a QWS browser in parallel on the same machine for // debugging QString serverName = QCoreApplication::applicationName() + QLatin1String("_qws"); #else QString serverName = QCoreApplication::applicationName(); #endif QLocalSocket socket; socket.connectToServer(serverName); if (socket.waitForConnected(500)) { QTextStream stream(&socket); QStringList args = QCoreApplication::arguments(); if (args.count() > 1) stream << args.last(); else stream << QString(); stream.flush(); socket.waitForBytesWritten(); return; } #if defined(Q_WS_MAC) QApplication::setQuitOnLastWindowClosed(false); #else QApplication::setQuitOnLastWindowClosed(true); #endif m_localServer = new QLocalServer(this); connect(m_localServer, SIGNAL(newConnection()), this, SLOT(newLocalSocketConnection())); if (!m_localServer->listen(serverName)) { if (m_localServer->serverError() == QAbstractSocket::AddressInUseError && QFile::exists(m_localServer->serverName())) { QFile::remove(m_localServer->serverName()); m_localServer->listen(serverName); } } #ifndef QT_NO_OPENSSL if (!QSslSocket::supportsSsl()) { QMessageBox::information(0, "Demo Browser", "This system does not support OpenSSL. SSL websites will not be available."); } #endif QDesktopServices::setUrlHandler(QLatin1String("http"), this, "openUrl"); QString localSysName = QLocale::system().name(); installTranslator(QLatin1String("qt_") + localSysName); QSettings settings; settings.beginGroup(QLatin1String("sessions")); m_lastSession = settings.value(QLatin1String("lastSession")).toByteArray(); settings.endGroup(); #if defined(Q_WS_MAC) connect(this, SIGNAL(lastWindowClosed()), this, SLOT(lastWindowClosed())); #endif QTimer::singleShot(0, this, SLOT(postLaunch())); } BrowserApplication::~BrowserApplication() { delete s_downloadManager; for (int i = 0; i < m_mainWindows.size(); ++i) { BrowserMainWindow *window = m_mainWindows.at(i); delete window; } delete s_networkAccessManager; delete s_bookmarksManager; } #if defined(Q_WS_MAC) void BrowserApplication::lastWindowClosed() { clean(); BrowserMainWindow *mw = new BrowserMainWindow; mw->slotHome(); m_mainWindows.prepend(mw); } #endif BrowserApplication *BrowserApplication::instance() { return (static_cast(QCoreApplication::instance())); } #if defined(Q_WS_MAC) #include void BrowserApplication::quitBrowser() { clean(); int tabCount = 0; for (int i = 0; i < m_mainWindows.count(); ++i) { tabCount =+ m_mainWindows.at(i)->tabWidget()->count(); } if (tabCount > 1) { int ret = QMessageBox::warning(mainWindow(), QString(), tr("There are %1 windows and %2 tabs open\n" "Do you want to quit anyway?").arg(m_mainWindows.count()).arg(tabCount), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (ret == QMessageBox::No) return; } exit(0); } #endif /*! Any actions that can be delayed until the window is visible */ void BrowserApplication::postLaunch() { QString directory = QStandardPaths::writableLocation(QStandardPaths::DataLocation); if (directory.isEmpty()) directory = QDir::homePath() + QLatin1String("/.") + QCoreApplication::applicationName(); QWebSettings::setIconDatabasePath(directory); QWebSettings::setOfflineStoragePath(directory); setWindowIcon(QIcon(QLatin1String(":browser.svg"))); loadSettings(); // newMainWindow() needs to be called in main() for this to happen if (m_mainWindows.count() > 0) { QStringList args = QCoreApplication::arguments(); if (args.count() > 1) mainWindow()->loadPage(args.last()); else mainWindow()->slotHome(); } BrowserApplication::historyManager(); } void BrowserApplication::loadSettings() { QSettings settings; settings.beginGroup(QLatin1String("websettings")); QWebSettings *defaultSettings = QWebSettings::globalSettings(); QString standardFontFamily = defaultSettings->fontFamily(QWebSettings::StandardFont); int standardFontSize = defaultSettings->fontSize(QWebSettings::DefaultFontSize); QFont standardFont = QFont(standardFontFamily, standardFontSize); standardFont = qvariant_cast(settings.value(QLatin1String("standardFont"), standardFont)); defaultSettings->setFontFamily(QWebSettings::StandardFont, standardFont.family()); defaultSettings->setFontSize(QWebSettings::DefaultFontSize, standardFont.pointSize()); QString fixedFontFamily = defaultSettings->fontFamily(QWebSettings::FixedFont); int fixedFontSize = defaultSettings->fontSize(QWebSettings::DefaultFixedFontSize); QFont fixedFont = QFont(fixedFontFamily, fixedFontSize); fixedFont = qvariant_cast(settings.value(QLatin1String("fixedFont"), fixedFont)); defaultSettings->setFontFamily(QWebSettings::FixedFont, fixedFont.family()); defaultSettings->setFontSize(QWebSettings::DefaultFixedFontSize, fixedFont.pointSize()); defaultSettings->setAttribute(QWebSettings::JavascriptEnabled, settings.value(QLatin1String("enableJavascript"), true).toBool()); defaultSettings->setAttribute(QWebSettings::PluginsEnabled, settings.value(QLatin1String("enablePlugins"), true).toBool()); QUrl url = settings.value(QLatin1String("userStyleSheet")).toUrl(); defaultSettings->setUserStyleSheetUrl(url); defaultSettings->setAttribute(QWebSettings::DnsPrefetchEnabled, true); settings.endGroup(); } QList BrowserApplication::mainWindows() { clean(); QList list; for (int i = 0; i < m_mainWindows.count(); ++i) list.append(m_mainWindows.at(i)); return list; } void BrowserApplication::clean() { // cleanup any deleted main windows first for (int i = m_mainWindows.count() - 1; i >= 0; --i) if (m_mainWindows.at(i).isNull()) m_mainWindows.removeAt(i); } void BrowserApplication::saveSession() { QWebSettings *globalSettings = QWebSettings::globalSettings(); if (globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) return; clean(); QSettings settings; settings.beginGroup(QLatin1String("sessions")); QByteArray data; QBuffer buffer(&data); QDataStream stream(&buffer); buffer.open(QIODevice::ReadWrite); stream << m_mainWindows.count(); for (int i = 0; i < m_mainWindows.count(); ++i) stream << m_mainWindows.at(i)->saveState(); settings.setValue(QLatin1String("lastSession"), data); settings.endGroup(); } bool BrowserApplication::canRestoreSession() const { return !m_lastSession.isEmpty(); } void BrowserApplication::restoreLastSession() { QList windows; QBuffer buffer(&m_lastSession); QDataStream stream(&buffer); buffer.open(QIODevice::ReadOnly); int windowCount; stream >> windowCount; for (int i = 0; i < windowCount; ++i) { QByteArray windowState; stream >> windowState; windows.append(windowState); } for (int i = 0; i < windows.count(); ++i) { BrowserMainWindow *newWindow = 0; if (m_mainWindows.count() == 1 && mainWindow()->tabWidget()->count() == 1 && mainWindow()->currentTab()->url() == QUrl()) { newWindow = mainWindow(); } else { newWindow = newMainWindow(); } newWindow->restoreState(windows.at(i)); } } bool BrowserApplication::isTheOnlyBrowser() const { return (m_localServer != 0); } void BrowserApplication::installTranslator(const QString &name) { QTranslator *translator = new QTranslator(this); translator->load(name, QLibraryInfo::location(QLibraryInfo::TranslationsPath)); QApplication::installTranslator(translator); } #if defined(Q_WS_MAC) bool BrowserApplication::event(QEvent* event) { switch (event->type()) { case QEvent::ApplicationActivate: { clean(); if (!m_mainWindows.isEmpty()) { BrowserMainWindow *mw = mainWindow(); if (mw && !mw->isMinimized()) { mainWindow()->show(); } return true; } } case QEvent::FileOpen: if (!m_mainWindows.isEmpty()) { mainWindow()->loadPage(static_cast(event)->file()); return true; } default: break; } return QApplication::event(event); } #endif void BrowserApplication::openUrl(const QUrl &url) { mainWindow()->loadPage(url.toString()); } BrowserMainWindow *BrowserApplication::newMainWindow() { BrowserMainWindow *browser = new BrowserMainWindow(); m_mainWindows.prepend(browser); browser->show(); return browser; } BrowserMainWindow *BrowserApplication::mainWindow() { clean(); if (m_mainWindows.isEmpty()) newMainWindow(); return m_mainWindows[0]; } void BrowserApplication::newLocalSocketConnection() { QLocalSocket *socket = m_localServer->nextPendingConnection(); if (!socket) return; socket->waitForReadyRead(1000); QTextStream stream(socket); QString url; stream >> url; if (!url.isEmpty()) { QSettings settings; settings.beginGroup(QLatin1String("general")); int openLinksIn = settings.value(QLatin1String("openLinksIn"), 0).toInt(); settings.endGroup(); if (openLinksIn == 1) newMainWindow(); else mainWindow()->tabWidget()->newTab(); openUrl(url); } delete socket; mainWindow()->raise(); mainWindow()->activateWindow(); } CookieJar *BrowserApplication::cookieJar() { return (CookieJar*)networkAccessManager()->cookieJar(); } DownloadManager *BrowserApplication::downloadManager() { if (!s_downloadManager) { s_downloadManager = new DownloadManager(); } return s_downloadManager; } NetworkAccessManager *BrowserApplication::networkAccessManager() { if (!s_networkAccessManager) { s_networkAccessManager = new NetworkAccessManager(); s_networkAccessManager->setCookieJar(new CookieJar); } return s_networkAccessManager; } HistoryManager *BrowserApplication::historyManager() { if (!s_historyManager) { s_historyManager = new HistoryManager(); QWebHistoryInterface::setDefaultInterface(s_historyManager); } return s_historyManager; } BookmarksManager *BrowserApplication::bookmarksManager() { if (!s_bookmarksManager) { s_bookmarksManager = new BookmarksManager; } return s_bookmarksManager; } QIcon BrowserApplication::icon(const QUrl &url) const { QIcon icon = QWebSettings::iconForUrl(url); if (!icon.isNull()) return icon.pixmap(16, 16); if (m_defaultIcon.isNull()) m_defaultIcon = QIcon(QLatin1String(":defaulticon.png")); return m_defaultIcon.pixmap(16, 16); } ././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/networkaccessmanager.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/networkaccessmanager0000644000000000000000000002177012273255454033034 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "networkaccessmanager.h" #include "browserapplication.h" #include "browsermainwindow.h" #include "ui_passworddialog.h" #include "ui_proxy.h" #include #include #include #include #include #include #include #include #include #include #include #include NetworkAccessManager::NetworkAccessManager(QObject *parent) : QNetworkAccessManager(parent), requestFinishedCount(0), requestFinishedFromCacheCount(0), requestFinishedPipelinedCount(0), requestFinishedSecureCount(0), requestFinishedDownloadBufferCount(0) { connect(this, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), SLOT(authenticationRequired(QNetworkReply*,QAuthenticator*))); connect(this, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), SLOT(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); connect(this, SIGNAL(finished(QNetworkReply*)), SLOT(requestFinished(QNetworkReply*))); #ifndef QT_NO_OPENSSL connect(this, SIGNAL(sslErrors(QNetworkReply*,QList)), SLOT(sslErrors(QNetworkReply*,QList))); #endif loadSettings(); QNetworkDiskCache *diskCache = new QNetworkDiskCache(this); QString location = QStandardPaths::writableLocation(QStandardPaths::CacheLocation); diskCache->setCacheDirectory(location); setCache(diskCache); } QNetworkReply* NetworkAccessManager::createRequest(Operation op, const QNetworkRequest & req, QIODevice * outgoingData) { QNetworkRequest request = req; // copy so we can modify // this is a temporary hack until we properly use the pipelining flags from QtWebkit // pipeline everything! :) request.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true); return QNetworkAccessManager::createRequest(op, request, outgoingData); } void NetworkAccessManager::requestFinished(QNetworkReply *reply) { requestFinishedCount++; if (reply->attribute(QNetworkRequest::SourceIsFromCacheAttribute).toBool() == true) requestFinishedFromCacheCount++; if (reply->attribute(QNetworkRequest::HttpPipeliningWasUsedAttribute).toBool() == true) requestFinishedPipelinedCount++; if (reply->attribute(QNetworkRequest::ConnectionEncryptedAttribute).toBool() == true) requestFinishedSecureCount++; if (reply->attribute(QNetworkRequest::DownloadBufferAttribute).isValid() == true) requestFinishedDownloadBufferCount++; if (requestFinishedCount % 10) return; #ifdef QT_DEBUG double pctCached = (double(requestFinishedFromCacheCount) * 100.0/ double(requestFinishedCount)); double pctPipelined = (double(requestFinishedPipelinedCount) * 100.0/ double(requestFinishedCount)); double pctSecure = (double(requestFinishedSecureCount) * 100.0/ double(requestFinishedCount)); double pctDownloadBuffer = (double(requestFinishedDownloadBufferCount) * 100.0/ double(requestFinishedCount)); qDebug("STATS [%lli requests total] [%3.2f%% from cache] [%3.2f%% pipelined] [%3.2f%% SSL/TLS] [%3.2f%% Zerocopy]", requestFinishedCount, pctCached, pctPipelined, pctSecure, pctDownloadBuffer); #endif } void NetworkAccessManager::loadSettings() { QSettings settings; settings.beginGroup(QLatin1String("proxy")); QNetworkProxy proxy; if (settings.value(QLatin1String("enabled"), false).toBool()) { if (settings.value(QLatin1String("type"), 0).toInt() == 0) proxy = QNetworkProxy::Socks5Proxy; else proxy = QNetworkProxy::HttpProxy; proxy.setHostName(settings.value(QLatin1String("hostName")).toString()); proxy.setPort(settings.value(QLatin1String("port"), 1080).toInt()); proxy.setUser(settings.value(QLatin1String("userName")).toString()); proxy.setPassword(settings.value(QLatin1String("password")).toString()); } setProxy(proxy); } void NetworkAccessManager::authenticationRequired(QNetworkReply *reply, QAuthenticator *auth) { BrowserMainWindow *mainWindow = BrowserApplication::instance()->mainWindow(); QDialog dialog(mainWindow); dialog.setWindowFlags(Qt::Sheet); Ui::PasswordDialog passwordDialog; passwordDialog.setupUi(&dialog); passwordDialog.iconLabel->setText(QString()); passwordDialog.iconLabel->setPixmap(mainWindow->style()->standardIcon(QStyle::SP_MessageBoxQuestion, 0, mainWindow).pixmap(32, 32)); QString introMessage = tr("Enter username and password for \"%1\" at %2"); introMessage = introMessage.arg(reply->url().toString().toHtmlEscaped()).arg(reply->url().toString().toHtmlEscaped()); passwordDialog.introLabel->setText(introMessage); passwordDialog.introLabel->setWordWrap(true); if (dialog.exec() == QDialog::Accepted) { auth->setUser(passwordDialog.userNameLineEdit->text()); auth->setPassword(passwordDialog.passwordLineEdit->text()); } } void NetworkAccessManager::proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *auth) { BrowserMainWindow *mainWindow = BrowserApplication::instance()->mainWindow(); QDialog dialog(mainWindow); dialog.setWindowFlags(Qt::Sheet); Ui::ProxyDialog proxyDialog; proxyDialog.setupUi(&dialog); proxyDialog.iconLabel->setText(QString()); proxyDialog.iconLabel->setPixmap(mainWindow->style()->standardIcon(QStyle::SP_MessageBoxQuestion, 0, mainWindow).pixmap(32, 32)); QString introMessage = tr("Connect to proxy \"%1\" using:"); introMessage = introMessage.arg(proxy.hostName().toHtmlEscaped()); proxyDialog.introLabel->setText(introMessage); proxyDialog.introLabel->setWordWrap(true); if (dialog.exec() == QDialog::Accepted) { auth->setUser(proxyDialog.userNameLineEdit->text()); auth->setPassword(proxyDialog.passwordLineEdit->text()); } } #ifndef QT_NO_OPENSSL void NetworkAccessManager::sslErrors(QNetworkReply *reply, const QList &error) { // check if SSL certificate has been trusted already QString replyHost = reply->url().host() + QString(":%1").arg(reply->url().port()); if(! sslTrustedHostList.contains(replyHost)) { BrowserMainWindow *mainWindow = BrowserApplication::instance()->mainWindow(); QStringList errorStrings; for (int i = 0; i < error.count(); ++i) errorStrings += error.at(i).errorString(); QString errors = errorStrings.join(QLatin1String("\n")); int ret = QMessageBox::warning(mainWindow, QCoreApplication::applicationName(), tr("SSL Errors:\n\n%1\n\n%2\n\n" "Do you want to ignore these errors for this host?").arg(reply->url().toString()).arg(errors), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (ret == QMessageBox::Yes) { reply->ignoreSslErrors(); sslTrustedHostList.append(replyHost); } } } #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/bookmarks.h0000644000000000000000000002140712273255454031041 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BOOKMARKS_H #define BOOKMARKS_H #include #include #include /*! Bookmark manager, owner of the bookmarks, loads, saves and basic tasks */ class AutoSaver; class BookmarkNode; class BookmarksModel; class BookmarksManager : public QObject { Q_OBJECT signals: void entryAdded(BookmarkNode *item); void entryRemoved(BookmarkNode *parent, int row, BookmarkNode *item); void entryChanged(BookmarkNode *item); public: BookmarksManager(QObject *parent = 0); ~BookmarksManager(); void addBookmark(BookmarkNode *parent, BookmarkNode *node, int row = -1); void removeBookmark(BookmarkNode *node); void setTitle(BookmarkNode *node, const QString &newTitle); void setUrl(BookmarkNode *node, const QString &newUrl); void changeExpanded(); BookmarkNode *bookmarks(); BookmarkNode *menu(); BookmarkNode *toolbar(); BookmarksModel *bookmarksModel(); QUndoStack *undoRedoStack() { return &m_commands; }; public slots: void importBookmarks(); void exportBookmarks(); private slots: void save() const; private: void load(); bool m_loaded; AutoSaver *m_saveTimer; BookmarkNode *m_bookmarkRootNode; BookmarksModel *m_bookmarkModel; QUndoStack m_commands; friend class RemoveBookmarksCommand; friend class ChangeBookmarkCommand; }; class RemoveBookmarksCommand : public QUndoCommand { public: RemoveBookmarksCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *parent, int row); ~RemoveBookmarksCommand(); void undo(); void redo(); protected: int m_row; BookmarksManager *m_bookmarkManagaer; BookmarkNode *m_node; BookmarkNode *m_parent; bool m_done; }; class InsertBookmarksCommand : public RemoveBookmarksCommand { public: InsertBookmarksCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *parent, BookmarkNode *node, int row); void undo() { RemoveBookmarksCommand::redo(); } void redo() { RemoveBookmarksCommand::undo(); } }; class ChangeBookmarkCommand : public QUndoCommand { public: ChangeBookmarkCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *node, const QString &newValue, bool title); void undo(); void redo(); private: BookmarksManager *m_bookmarkManagaer; bool m_title; QString m_oldValue; QString m_newValue; BookmarkNode *m_node; }; /*! BookmarksModel is a QAbstractItemModel wrapper around the BookmarkManager */ class BookmarksModel : public QAbstractItemModel { Q_OBJECT public slots: void entryAdded(BookmarkNode *item); void entryRemoved(BookmarkNode *parent, int row, BookmarkNode *item); void entryChanged(BookmarkNode *item); public: enum Roles { TypeRole = Qt::UserRole + 1, UrlRole = Qt::UserRole + 2, UrlStringRole = Qt::UserRole + 3, SeparatorRole = Qt::UserRole + 4 }; BookmarksModel(BookmarksManager *bookmarkManager, QObject *parent = 0); inline BookmarksManager *bookmarksManager() const { return m_bookmarksManager; } QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; QModelIndex index(int, int, const QModelIndex& = QModelIndex()) const; QModelIndex parent(const QModelIndex& index= QModelIndex()) const; Qt::ItemFlags flags(const QModelIndex &index) const; Qt::DropActions supportedDropActions () const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); QMimeData *mimeData(const QModelIndexList &indexes) const; QStringList mimeTypes() const; bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent); bool hasChildren(const QModelIndex &parent = QModelIndex()) const; BookmarkNode *node(const QModelIndex &index) const; QModelIndex index(BookmarkNode *node) const; private: bool m_endMacro; BookmarksManager *m_bookmarksManager; }; // Menu that is dynamically populated from the bookmarks #include "modelmenu.h" class BookmarksMenu : public ModelMenu { Q_OBJECT signals: void openUrl(const QUrl &url); public: BookmarksMenu(QWidget *parent = 0); void setInitialActions(QList actions); protected: bool prePopulated(); private slots: void activated(const QModelIndex &index); private: BookmarksManager *m_bookmarksManager; QList m_initialActions; }; /* Proxy model that filters out the bookmarks so only the folders are left behind. Used in the add bookmark dialog combobox. */ #include class AddBookmarkProxyModel : public QSortFilterProxyModel { Q_OBJECT public: AddBookmarkProxyModel(QObject * parent = 0); int columnCount(const QModelIndex & parent = QModelIndex()) const; protected: bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const; }; /*! Add bookmark dialog */ #include "ui_addbookmarkdialog.h" class AddBookmarkDialog : public QDialog, public Ui_AddBookmarkDialog { Q_OBJECT public: AddBookmarkDialog(const QString &url, const QString &title, QWidget *parent = 0, BookmarksManager *bookmarkManager = 0); private slots: void accept(); private: QString m_url; BookmarksManager *m_bookmarksManager; AddBookmarkProxyModel *m_proxyModel; }; #include "ui_bookmarks.h" class TreeProxyModel; class BookmarksDialog : public QDialog, public Ui_BookmarksDialog { Q_OBJECT signals: void openUrl(const QUrl &url); public: BookmarksDialog(QWidget *parent = 0, BookmarksManager *manager = 0); ~BookmarksDialog(); private slots: void customContextMenuRequested(const QPoint &pos); void open(); void newFolder(); private: void expandNodes(BookmarkNode *node); bool saveExpandedNodes(const QModelIndex &parent); BookmarksManager *m_bookmarksManager; BookmarksModel *m_bookmarksModel; TreeProxyModel *m_proxyModel; }; #include class BookmarksToolBar : public QToolBar { Q_OBJECT signals: void openUrl(const QUrl &url); public: BookmarksToolBar(BookmarksModel *model, QWidget *parent = 0); void setRootIndex(const QModelIndex &index); QModelIndex rootIndex() const; protected: void dragEnterEvent(QDragEnterEvent *event); void dropEvent(QDropEvent *event); private slots: void triggered(QAction *action); void activated(const QModelIndex &index); void build(); private: BookmarksModel *m_bookmarksModel; QPersistentModelIndex m_root; }; #endif // BOOKMARKS_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/bookmarks.cpp0000644000000000000000000007561712273255454031410 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "bookmarks.h" #include "autosaver.h" #include "browserapplication.h" #include "history.h" #include "xbel.h" #include #include #include #include #include #include #include #include #include #include #include #include #define BOOKMARKBAR "Bookmarks Bar" #define BOOKMARKMENU "Bookmarks Menu" BookmarksManager::BookmarksManager(QObject *parent) : QObject(parent) , m_loaded(false) , m_saveTimer(new AutoSaver(this)) , m_bookmarkRootNode(0) , m_bookmarkModel(0) { connect(this, SIGNAL(entryAdded(BookmarkNode*)), m_saveTimer, SLOT(changeOccurred())); connect(this, SIGNAL(entryRemoved(BookmarkNode*,int,BookmarkNode*)), m_saveTimer, SLOT(changeOccurred())); connect(this, SIGNAL(entryChanged(BookmarkNode*)), m_saveTimer, SLOT(changeOccurred())); } BookmarksManager::~BookmarksManager() { m_saveTimer->saveIfNeccessary(); } void BookmarksManager::changeExpanded() { m_saveTimer->changeOccurred(); } void BookmarksManager::load() { if (m_loaded) return; m_loaded = true; QString dir = QStandardPaths::writableLocation(QStandardPaths::DataLocation); QString bookmarkFile = dir + QLatin1String("/bookmarks.xbel"); if (!QFile::exists(bookmarkFile)) bookmarkFile = QLatin1String(":defaultbookmarks.xbel"); XbelReader reader; m_bookmarkRootNode = reader.read(bookmarkFile); if (reader.error() != QXmlStreamReader::NoError) { QMessageBox::warning(0, QLatin1String("Loading Bookmark"), tr("Error when loading bookmarks on line %1, column %2:\n" "%3").arg(reader.lineNumber()).arg(reader.columnNumber()).arg(reader.errorString())); } BookmarkNode *toolbar = 0; BookmarkNode *menu = 0; QList others; for (int i = m_bookmarkRootNode->children().count() - 1; i >= 0; --i) { BookmarkNode *node = m_bookmarkRootNode->children().at(i); if (node->type() == BookmarkNode::Folder) { // Automatically convert if (node->title == tr("Toolbar Bookmarks") && !toolbar) { node->title = tr(BOOKMARKBAR); } if (node->title == tr(BOOKMARKBAR) && !toolbar) { toolbar = node; } // Automatically convert if (node->title == tr("Menu") && !menu) { node->title = tr(BOOKMARKMENU); } if (node->title == tr(BOOKMARKMENU) && !menu) { menu = node; } } else { others.append(node); } m_bookmarkRootNode->remove(node); } Q_ASSERT(m_bookmarkRootNode->children().count() == 0); if (!toolbar) { toolbar = new BookmarkNode(BookmarkNode::Folder, m_bookmarkRootNode); toolbar->title = tr(BOOKMARKBAR); } else { m_bookmarkRootNode->add(toolbar); } if (!menu) { menu = new BookmarkNode(BookmarkNode::Folder, m_bookmarkRootNode); menu->title = tr(BOOKMARKMENU); } else { m_bookmarkRootNode->add(menu); } for (int i = 0; i < others.count(); ++i) menu->add(others.at(i)); } void BookmarksManager::save() const { if (!m_loaded) return; XbelWriter writer; QString dir = QStandardPaths::writableLocation(QStandardPaths::DataLocation); QString bookmarkFile = dir + QLatin1String("/bookmarks.xbel"); if (!writer.write(bookmarkFile, m_bookmarkRootNode)) qWarning() << "BookmarkManager: error saving to" << bookmarkFile; } void BookmarksManager::addBookmark(BookmarkNode *parent, BookmarkNode *node, int row) { if (!m_loaded) return; Q_ASSERT(parent); InsertBookmarksCommand *command = new InsertBookmarksCommand(this, parent, node, row); m_commands.push(command); } void BookmarksManager::removeBookmark(BookmarkNode *node) { if (!m_loaded) return; Q_ASSERT(node); BookmarkNode *parent = node->parent(); int row = parent->children().indexOf(node); RemoveBookmarksCommand *command = new RemoveBookmarksCommand(this, parent, row); m_commands.push(command); } void BookmarksManager::setTitle(BookmarkNode *node, const QString &newTitle) { if (!m_loaded) return; Q_ASSERT(node); ChangeBookmarkCommand *command = new ChangeBookmarkCommand(this, node, newTitle, true); m_commands.push(command); } void BookmarksManager::setUrl(BookmarkNode *node, const QString &newUrl) { if (!m_loaded) return; Q_ASSERT(node); ChangeBookmarkCommand *command = new ChangeBookmarkCommand(this, node, newUrl, false); m_commands.push(command); } BookmarkNode *BookmarksManager::bookmarks() { if (!m_loaded) load(); return m_bookmarkRootNode; } BookmarkNode *BookmarksManager::menu() { if (!m_loaded) load(); for (int i = m_bookmarkRootNode->children().count() - 1; i >= 0; --i) { BookmarkNode *node = m_bookmarkRootNode->children().at(i); if (node->title == tr(BOOKMARKMENU)) return node; } Q_ASSERT(false); return 0; } BookmarkNode *BookmarksManager::toolbar() { if (!m_loaded) load(); for (int i = m_bookmarkRootNode->children().count() - 1; i >= 0; --i) { BookmarkNode *node = m_bookmarkRootNode->children().at(i); if (node->title == tr(BOOKMARKBAR)) return node; } Q_ASSERT(false); return 0; } BookmarksModel *BookmarksManager::bookmarksModel() { if (!m_bookmarkModel) m_bookmarkModel = new BookmarksModel(this, this); return m_bookmarkModel; } void BookmarksManager::importBookmarks() { QString fileName = QFileDialog::getOpenFileName(0, tr("Open File"), QString(), tr("XBEL (*.xbel *.xml)")); if (fileName.isEmpty()) return; XbelReader reader; BookmarkNode *importRootNode = reader.read(fileName); if (reader.error() != QXmlStreamReader::NoError) { QMessageBox::warning(0, QLatin1String("Loading Bookmark"), tr("Error when loading bookmarks on line %1, column %2:\n" "%3").arg(reader.lineNumber()).arg(reader.columnNumber()).arg(reader.errorString())); } importRootNode->setType(BookmarkNode::Folder); importRootNode->title = (tr("Imported %1").arg(QDate::currentDate().toString(Qt::SystemLocaleShortDate))); addBookmark(menu(), importRootNode); } void BookmarksManager::exportBookmarks() { QString fileName = QFileDialog::getSaveFileName(0, tr("Save File"), tr("%1 Bookmarks.xbel").arg(QCoreApplication::applicationName()), tr("XBEL (*.xbel *.xml)")); if (fileName.isEmpty()) return; XbelWriter writer; if (!writer.write(fileName, m_bookmarkRootNode)) QMessageBox::critical(0, tr("Export error"), tr("error saving bookmarks")); } RemoveBookmarksCommand::RemoveBookmarksCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *parent, int row) : QUndoCommand(BookmarksManager::tr("Remove Bookmark")) , m_row(row) , m_bookmarkManagaer(m_bookmarkManagaer) , m_node(parent->children().value(row)) , m_parent(parent) , m_done(false) { } RemoveBookmarksCommand::~RemoveBookmarksCommand() { if (m_done && !m_node->parent()) { delete m_node; } } void RemoveBookmarksCommand::undo() { m_parent->add(m_node, m_row); emit m_bookmarkManagaer->entryAdded(m_node); m_done = false; } void RemoveBookmarksCommand::redo() { m_parent->remove(m_node); emit m_bookmarkManagaer->entryRemoved(m_parent, m_row, m_node); m_done = true; } InsertBookmarksCommand::InsertBookmarksCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *parent, BookmarkNode *node, int row) : RemoveBookmarksCommand(m_bookmarkManagaer, parent, row) { setText(BookmarksManager::tr("Insert Bookmark")); m_node = node; } ChangeBookmarkCommand::ChangeBookmarkCommand(BookmarksManager *m_bookmarkManagaer, BookmarkNode *node, const QString &newValue, bool title) : QUndoCommand() , m_bookmarkManagaer(m_bookmarkManagaer) , m_title(title) , m_newValue(newValue) , m_node(node) { if (m_title) { m_oldValue = m_node->title; setText(BookmarksManager::tr("Name Change")); } else { m_oldValue = m_node->url; setText(BookmarksManager::tr("Address Change")); } } void ChangeBookmarkCommand::undo() { if (m_title) m_node->title = m_oldValue; else m_node->url = m_oldValue; emit m_bookmarkManagaer->entryChanged(m_node); } void ChangeBookmarkCommand::redo() { if (m_title) m_node->title = m_newValue; else m_node->url = m_newValue; emit m_bookmarkManagaer->entryChanged(m_node); } BookmarksModel::BookmarksModel(BookmarksManager *bookmarkManager, QObject *parent) : QAbstractItemModel(parent) , m_endMacro(false) , m_bookmarksManager(bookmarkManager) { connect(bookmarkManager, SIGNAL(entryAdded(BookmarkNode*)), this, SLOT(entryAdded(BookmarkNode*))); connect(bookmarkManager, SIGNAL(entryRemoved(BookmarkNode*,int,BookmarkNode*)), this, SLOT(entryRemoved(BookmarkNode*,int,BookmarkNode*))); connect(bookmarkManager, SIGNAL(entryChanged(BookmarkNode*)), this, SLOT(entryChanged(BookmarkNode*))); } QModelIndex BookmarksModel::index(BookmarkNode *node) const { BookmarkNode *parent = node->parent(); if (!parent) return QModelIndex(); return createIndex(parent->children().indexOf(node), 0, node); } void BookmarksModel::entryAdded(BookmarkNode *item) { Q_ASSERT(item && item->parent()); int row = item->parent()->children().indexOf(item); BookmarkNode *parent = item->parent(); // item was already added so remove beore beginInsertRows is called parent->remove(item); beginInsertRows(index(parent), row, row); parent->add(item, row); endInsertRows(); } void BookmarksModel::entryRemoved(BookmarkNode *parent, int row, BookmarkNode *item) { // item was already removed, re-add so beginRemoveRows works parent->add(item, row); beginRemoveRows(index(parent), row, row); parent->remove(item); endRemoveRows(); } void BookmarksModel::entryChanged(BookmarkNode *item) { QModelIndex idx = index(item); emit dataChanged(idx, idx); } bool BookmarksModel::removeRows(int row, int count, const QModelIndex &parent) { if (row < 0 || count <= 0 || row + count > rowCount(parent)) return false; BookmarkNode *bookmarkNode = node(parent); for (int i = row + count - 1; i >= row; --i) { BookmarkNode *node = bookmarkNode->children().at(i); if (node == m_bookmarksManager->menu() || node == m_bookmarksManager->toolbar()) continue; m_bookmarksManager->removeBookmark(node); } if (m_endMacro) { m_bookmarksManager->undoRedoStack()->endMacro(); m_endMacro = false; } return true; } QVariant BookmarksModel::headerData(int section, Qt::Orientation orientation, int role) const { if (orientation == Qt::Horizontal && role == Qt::DisplayRole) { switch (section) { case 0: return tr("Title"); case 1: return tr("Address"); } } return QAbstractItemModel::headerData(section, orientation, role); } QVariant BookmarksModel::data(const QModelIndex &index, int role) const { if (!index.isValid() || index.model() != this) return QVariant(); const BookmarkNode *bookmarkNode = node(index); switch (role) { case Qt::EditRole: case Qt::DisplayRole: if (bookmarkNode->type() == BookmarkNode::Separator) { switch (index.column()) { case 0: return QString(50, 0xB7); case 1: return QString(); } } switch (index.column()) { case 0: return bookmarkNode->title; case 1: return bookmarkNode->url; } break; case BookmarksModel::UrlRole: return QUrl(bookmarkNode->url); break; case BookmarksModel::UrlStringRole: return bookmarkNode->url; break; case BookmarksModel::TypeRole: return bookmarkNode->type(); break; case BookmarksModel::SeparatorRole: return (bookmarkNode->type() == BookmarkNode::Separator); break; case Qt::DecorationRole: if (index.column() == 0) { if (bookmarkNode->type() == BookmarkNode::Folder) return QApplication::style()->standardIcon(QStyle::SP_DirIcon); return BrowserApplication::instance()->icon(bookmarkNode->url); } } return QVariant(); } int BookmarksModel::columnCount(const QModelIndex &parent) const { return (parent.column() > 0) ? 0 : 2; } int BookmarksModel::rowCount(const QModelIndex &parent) const { if (parent.column() > 0) return 0; if (!parent.isValid()) return m_bookmarksManager->bookmarks()->children().count(); const BookmarkNode *item = static_cast(parent.internalPointer()); return item->children().count(); } QModelIndex BookmarksModel::index(int row, int column, const QModelIndex &parent) const { if (row < 0 || column < 0 || row >= rowCount(parent) || column >= columnCount(parent)) return QModelIndex(); // get the parent node BookmarkNode *parentNode = node(parent); return createIndex(row, column, parentNode->children().at(row)); } QModelIndex BookmarksModel::parent(const QModelIndex &index) const { if (!index.isValid()) return QModelIndex(); BookmarkNode *itemNode = node(index); BookmarkNode *parentNode = (itemNode ? itemNode->parent() : 0); if (!parentNode || parentNode == m_bookmarksManager->bookmarks()) return QModelIndex(); // get the parent's row BookmarkNode *grandParentNode = parentNode->parent(); int parentRow = grandParentNode->children().indexOf(parentNode); Q_ASSERT(parentRow >= 0); return createIndex(parentRow, 0, parentNode); } bool BookmarksModel::hasChildren(const QModelIndex &parent) const { if (!parent.isValid()) return true; const BookmarkNode *parentNode = node(parent); return (parentNode->type() == BookmarkNode::Folder); } Qt::ItemFlags BookmarksModel::flags(const QModelIndex &index) const { if (!index.isValid()) return Qt::NoItemFlags; Qt::ItemFlags flags = Qt::ItemIsSelectable | Qt::ItemIsEnabled; BookmarkNode *bookmarkNode = node(index); if (bookmarkNode != m_bookmarksManager->menu() && bookmarkNode != m_bookmarksManager->toolbar()) { flags |= Qt::ItemIsDragEnabled; if (bookmarkNode->type() != BookmarkNode::Separator) flags |= Qt::ItemIsEditable; } if (hasChildren(index)) flags |= Qt::ItemIsDropEnabled; return flags; } Qt::DropActions BookmarksModel::supportedDropActions () const { return Qt::CopyAction | Qt::MoveAction; } #define MIMETYPE QLatin1String("application/bookmarks.xbel") QStringList BookmarksModel::mimeTypes() const { QStringList types; types << MIMETYPE; return types; } QMimeData *BookmarksModel::mimeData(const QModelIndexList &indexes) const { QMimeData *mimeData = new QMimeData(); QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); foreach (QModelIndex index, indexes) { if (index.column() != 0 || !index.isValid()) continue; QByteArray encodedData; QBuffer buffer(&encodedData); buffer.open(QBuffer::ReadWrite); XbelWriter writer; const BookmarkNode *parentNode = node(index); writer.write(&buffer, parentNode); stream << encodedData; } mimeData->setData(MIMETYPE, data); return mimeData; } bool BookmarksModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) { if (action == Qt::IgnoreAction) return true; if (!data->hasFormat(MIMETYPE) || column > 0) return false; QByteArray ba = data->data(MIMETYPE); QDataStream stream(&ba, QIODevice::ReadOnly); if (stream.atEnd()) return false; QUndoStack *undoStack = m_bookmarksManager->undoRedoStack(); undoStack->beginMacro(QLatin1String("Move Bookmarks")); while (!stream.atEnd()) { QByteArray encodedData; stream >> encodedData; QBuffer buffer(&encodedData); buffer.open(QBuffer::ReadOnly); XbelReader reader; BookmarkNode *rootNode = reader.read(&buffer); QList children = rootNode->children(); for (int i = 0; i < children.count(); ++i) { BookmarkNode *bookmarkNode = children.at(i); rootNode->remove(bookmarkNode); row = qMax(0, row); BookmarkNode *parentNode = node(parent); m_bookmarksManager->addBookmark(parentNode, bookmarkNode, row); m_endMacro = true; } delete rootNode; } return true; } bool BookmarksModel::setData(const QModelIndex &index, const QVariant &value, int role) { if (!index.isValid() || (flags(index) & Qt::ItemIsEditable) == 0) return false; BookmarkNode *item = node(index); switch (role) { case Qt::EditRole: case Qt::DisplayRole: if (index.column() == 0) { m_bookmarksManager->setTitle(item, value.toString()); break; } if (index.column() == 1) { m_bookmarksManager->setUrl(item, value.toString()); break; } return false; case BookmarksModel::UrlRole: m_bookmarksManager->setUrl(item, value.toUrl().toString()); break; case BookmarksModel::UrlStringRole: m_bookmarksManager->setUrl(item, value.toString()); break; default: break; return false; } return true; } BookmarkNode *BookmarksModel::node(const QModelIndex &index) const { BookmarkNode *itemNode = static_cast(index.internalPointer()); if (!itemNode) return m_bookmarksManager->bookmarks(); return itemNode; } AddBookmarkProxyModel::AddBookmarkProxyModel(QObject *parent) : QSortFilterProxyModel(parent) { } int AddBookmarkProxyModel::columnCount(const QModelIndex &parent) const { return qMin(1, QSortFilterProxyModel::columnCount(parent)); } bool AddBookmarkProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const { QModelIndex idx = sourceModel()->index(source_row, 0, source_parent); return sourceModel()->hasChildren(idx); } AddBookmarkDialog::AddBookmarkDialog(const QString &url, const QString &title, QWidget *parent, BookmarksManager *bookmarkManager) : QDialog(parent) , m_url(url) , m_bookmarksManager(bookmarkManager) { setWindowFlags(Qt::Sheet); if (!m_bookmarksManager) m_bookmarksManager = BrowserApplication::bookmarksManager(); setupUi(this); QTreeView *view = new QTreeView(this); m_proxyModel = new AddBookmarkProxyModel(this); BookmarksModel *model = m_bookmarksManager->bookmarksModel(); m_proxyModel->setSourceModel(model); view->setModel(m_proxyModel); view->expandAll(); view->header()->setStretchLastSection(true); view->header()->hide(); view->setItemsExpandable(false); view->setRootIsDecorated(false); view->setIndentation(10); location->setModel(m_proxyModel); view->show(); location->setView(view); BookmarkNode *menu = m_bookmarksManager->menu(); QModelIndex idx = m_proxyModel->mapFromSource(model->index(menu)); view->setCurrentIndex(idx); location->setCurrentIndex(idx.row()); name->setText(title); } void AddBookmarkDialog::accept() { QModelIndex index = location->view()->currentIndex(); index = m_proxyModel->mapToSource(index); if (!index.isValid()) index = m_bookmarksManager->bookmarksModel()->index(0, 0); BookmarkNode *parent = m_bookmarksManager->bookmarksModel()->node(index); BookmarkNode *bookmark = new BookmarkNode(BookmarkNode::Bookmark); bookmark->url = m_url; bookmark->title = name->text(); m_bookmarksManager->addBookmark(parent, bookmark); QDialog::accept(); } BookmarksMenu::BookmarksMenu(QWidget *parent) : ModelMenu(parent) , m_bookmarksManager(0) { connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex))); setMaxRows(-1); setHoverRole(BookmarksModel::UrlStringRole); setSeparatorRole(BookmarksModel::SeparatorRole); } void BookmarksMenu::activated(const QModelIndex &index) { emit openUrl(index.data(BookmarksModel::UrlRole).toUrl()); } bool BookmarksMenu::prePopulated() { m_bookmarksManager = BrowserApplication::bookmarksManager(); setModel(m_bookmarksManager->bookmarksModel()); setRootIndex(m_bookmarksManager->bookmarksModel()->index(1, 0)); // initial actions for (int i = 0; i < m_initialActions.count(); ++i) addAction(m_initialActions.at(i)); if (!m_initialActions.isEmpty()) addSeparator(); createMenu(model()->index(0, 0), 1, this); return true; } void BookmarksMenu::setInitialActions(QList actions) { m_initialActions = actions; for (int i = 0; i < m_initialActions.count(); ++i) addAction(m_initialActions.at(i)); } BookmarksDialog::BookmarksDialog(QWidget *parent, BookmarksManager *manager) : QDialog(parent) { m_bookmarksManager = manager; if (!m_bookmarksManager) m_bookmarksManager = BrowserApplication::bookmarksManager(); setupUi(this); tree->setUniformRowHeights(true); tree->setSelectionBehavior(QAbstractItemView::SelectRows); tree->setSelectionMode(QAbstractItemView::ContiguousSelection); tree->setTextElideMode(Qt::ElideMiddle); m_bookmarksModel = m_bookmarksManager->bookmarksModel(); m_proxyModel = new TreeProxyModel(this); connect(search, SIGNAL(textChanged(QString)), m_proxyModel, SLOT(setFilterFixedString(QString))); connect(removeButton, SIGNAL(clicked()), tree, SLOT(removeOne())); m_proxyModel->setSourceModel(m_bookmarksModel); tree->setModel(m_proxyModel); tree->setDragDropMode(QAbstractItemView::InternalMove); tree->setExpanded(m_proxyModel->index(0, 0), true); tree->setAlternatingRowColors(true); QFontMetrics fm(font()); int header = fm.width(QLatin1Char('m')) * 40; tree->header()->resizeSection(0, header); tree->header()->setStretchLastSection(true); connect(tree, SIGNAL(activated(QModelIndex)), this, SLOT(open())); tree->setContextMenuPolicy(Qt::CustomContextMenu); connect(tree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); connect(addFolderButton, SIGNAL(clicked()), this, SLOT(newFolder())); expandNodes(m_bookmarksManager->bookmarks()); setAttribute(Qt::WA_DeleteOnClose); } BookmarksDialog::~BookmarksDialog() { if (saveExpandedNodes(tree->rootIndex())) m_bookmarksManager->changeExpanded(); } bool BookmarksDialog::saveExpandedNodes(const QModelIndex &parent) { bool changed = false; for (int i = 0; i < m_proxyModel->rowCount(parent); ++i) { QModelIndex child = m_proxyModel->index(i, 0, parent); QModelIndex sourceIndex = m_proxyModel->mapToSource(child); BookmarkNode *childNode = m_bookmarksModel->node(sourceIndex); bool wasExpanded = childNode->expanded; if (tree->isExpanded(child)) { childNode->expanded = true; changed |= saveExpandedNodes(child); } else { childNode->expanded = false; } changed |= (wasExpanded != childNode->expanded); } return changed; } void BookmarksDialog::expandNodes(BookmarkNode *node) { for (int i = 0; i < node->children().count(); ++i) { BookmarkNode *childNode = node->children()[i]; if (childNode->expanded) { QModelIndex idx = m_bookmarksModel->index(childNode); idx = m_proxyModel->mapFromSource(idx); tree->setExpanded(idx, true); expandNodes(childNode); } } } void BookmarksDialog::customContextMenuRequested(const QPoint &pos) { QMenu menu; QModelIndex index = tree->indexAt(pos); index = index.sibling(index.row(), 0); if (index.isValid() && !tree->model()->hasChildren(index)) { menu.addAction(tr("Open"), this, SLOT(open())); menu.addSeparator(); } menu.addAction(tr("Delete"), tree, SLOT(removeOne())); menu.exec(QCursor::pos()); } void BookmarksDialog::open() { QModelIndex index = tree->currentIndex(); if (!index.parent().isValid()) return; emit openUrl(index.sibling(index.row(), 1).data(BookmarksModel::UrlRole).toUrl()); } void BookmarksDialog::newFolder() { QModelIndex currentIndex = tree->currentIndex(); QModelIndex idx = currentIndex; if (idx.isValid() && !idx.model()->hasChildren(idx)) idx = idx.parent(); if (!idx.isValid()) idx = tree->rootIndex(); idx = m_proxyModel->mapToSource(idx); BookmarkNode *parent = m_bookmarksManager->bookmarksModel()->node(idx); BookmarkNode *node = new BookmarkNode(BookmarkNode::Folder); node->title = tr("New Folder"); m_bookmarksManager->addBookmark(parent, node, currentIndex.row() + 1); } BookmarksToolBar::BookmarksToolBar(BookmarksModel *model, QWidget *parent) : QToolBar(tr("Bookmark"), parent) , m_bookmarksModel(model) { connect(this, SIGNAL(actionTriggered(QAction*)), this, SLOT(triggered(QAction*))); setRootIndex(model->index(0, 0)); connect(m_bookmarksModel, SIGNAL(modelReset()), this, SLOT(build())); connect(m_bookmarksModel, SIGNAL(rowsInserted(QModelIndex,int,int)), this, SLOT(build())); connect(m_bookmarksModel, SIGNAL(rowsRemoved(QModelIndex,int,int)), this, SLOT(build())); connect(m_bookmarksModel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(build())); setAcceptDrops(true); } void BookmarksToolBar::dragEnterEvent(QDragEnterEvent *event) { const QMimeData *mimeData = event->mimeData(); if (mimeData->hasUrls()) event->acceptProposedAction(); QToolBar::dragEnterEvent(event); } void BookmarksToolBar::dropEvent(QDropEvent *event) { const QMimeData *mimeData = event->mimeData(); if (mimeData->hasUrls() && mimeData->hasText()) { QList urls = mimeData->urls(); QAction *action = actionAt(event->pos()); QString dropText; if (action) dropText = action->text(); int row = -1; QModelIndex parentIndex = m_root; for (int i = 0; i < m_bookmarksModel->rowCount(m_root); ++i) { QModelIndex idx = m_bookmarksModel->index(i, 0, m_root); QString title = idx.data().toString(); if (title == dropText) { row = i; if (m_bookmarksModel->hasChildren(idx)) { parentIndex = idx; row = -1; } break; } } BookmarkNode *bookmark = new BookmarkNode(BookmarkNode::Bookmark); bookmark->url = urls.at(0).toString(); bookmark->title = mimeData->text(); BookmarkNode *parent = m_bookmarksModel->node(parentIndex); BookmarksManager *bookmarksManager = m_bookmarksModel->bookmarksManager(); bookmarksManager->addBookmark(parent, bookmark, row); event->acceptProposedAction(); } QToolBar::dropEvent(event); } void BookmarksToolBar::setRootIndex(const QModelIndex &index) { m_root = index; build(); } QModelIndex BookmarksToolBar::rootIndex() const { return m_root; } void BookmarksToolBar::build() { clear(); for (int i = 0; i < m_bookmarksModel->rowCount(m_root); ++i) { QModelIndex idx = m_bookmarksModel->index(i, 0, m_root); if (m_bookmarksModel->hasChildren(idx)) { QToolButton *button = new QToolButton(this); button->setPopupMode(QToolButton::InstantPopup); button->setArrowType(Qt::DownArrow); button->setText(idx.data().toString()); ModelMenu *menu = new ModelMenu(this); connect(menu, SIGNAL(activated(QModelIndex)), this, SLOT(activated(QModelIndex))); menu->setModel(m_bookmarksModel); menu->setRootIndex(idx); menu->addAction(new QAction(menu)); button->setMenu(menu); button->setToolButtonStyle(Qt::ToolButtonTextOnly); QAction *a = addWidget(button); a->setText(idx.data().toString()); } else { QAction *action = addAction(idx.data().toString()); action->setData(idx.data(BookmarksModel::UrlRole)); } } } void BookmarksToolBar::triggered(QAction *action) { QVariant v = action->data(); if (v.canConvert()) { emit openUrl(v.toUrl()); } } void BookmarksToolBar::activated(const QModelIndex &index) { emit openUrl(index.data(BookmarksModel::UrlRole).toUrl()); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/chasewidget.cpp0000644000000000000000000001021512273255454031666 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "chasewidget.h" #include #include #include #include #include #include ChaseWidget::ChaseWidget(QWidget *parent, QPixmap pixmap, bool pixmapEnabled) : QWidget(parent) , m_segment(0) , m_delay(100) , m_step(40) , m_timerId(-1) , m_animated(false) , m_pixmap(pixmap) , m_pixmapEnabled(pixmapEnabled) { } void ChaseWidget::setAnimated(bool value) { if (m_animated == value) return; m_animated = value; if (m_timerId != -1) { killTimer(m_timerId); m_timerId = -1; } if (m_animated) { m_segment = 0; m_timerId = startTimer(m_delay); } update(); } void ChaseWidget::paintEvent(QPaintEvent *event) { Q_UNUSED(event); QPainter p(this); if (m_pixmapEnabled && !m_pixmap.isNull()) { p.drawPixmap(0, 0, m_pixmap); return; } const int extent = qMin(width() - 8, height() - 8); const int displ = extent / 4; const int ext = extent / 4 - 1; p.setRenderHint(QPainter::Antialiasing, true); if(m_animated) p.setPen(Qt::gray); else p.setPen(QPen(palette().dark().color())); p.translate(width() / 2, height() / 2); // center for (int segment = 0; segment < segmentCount(); ++segment) { p.rotate(QApplication::isRightToLeft() ? m_step : -m_step); if(m_animated) p.setBrush(colorForSegment(segment)); else p.setBrush(palette().background()); p.drawEllipse(QRect(displ, -ext / 2, ext, ext)); } } QSize ChaseWidget::sizeHint() const { return QSize(32, 32); } void ChaseWidget::timerEvent(QTimerEvent *event) { if (event->timerId() == m_timerId) { ++m_segment; update(); } QWidget::timerEvent(event); } QColor ChaseWidget::colorForSegment(int seg) const { int index = ((seg + m_segment) % segmentCount()); int comp = qMax(0, 255 - (index * (255 / segmentCount()))); return QColor(comp, comp, comp, 255); } int ChaseWidget::segmentCount() const { return 360 / m_step; } void ChaseWidget::setPixmapEnabled(bool enable) { m_pixmapEnabled = enable; } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/toolbarsearch.h0000644000000000000000000000514312273255454031700 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef TOOLBARSEARCH_H #define TOOLBARSEARCH_H #include "searchlineedit.h" QT_BEGIN_NAMESPACE class QUrl; class QAction; class QStringListModel; QT_END_NAMESPACE class AutoSaver; class ToolbarSearch : public SearchLineEdit { Q_OBJECT signals: void search(const QUrl &url); public: ToolbarSearch(QWidget *parent = 0); ~ToolbarSearch(); public slots: void clear(); void searchNow(); private slots: void save(); void aboutToShowMenu(); void triggeredMenuAction(QAction *action); private: void load(); AutoSaver *m_autosaver; int m_maxSavedSearches; QStringListModel *m_stringListModel; }; #endif // TOOLBARSEARCH_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/edittreeview.cpp0000644000000000000000000000516712273255454032111 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "edittreeview.h" #include EditTreeView::EditTreeView(QWidget *parent) : QTreeView(parent) { } void EditTreeView::keyPressEvent(QKeyEvent *event) { if ((event->key() == Qt::Key_Delete || event->key() == Qt::Key_Backspace) && model()) { removeOne(); } else { QAbstractItemView::keyPressEvent(event); } } void EditTreeView::removeOne() { if (!model()) return; QModelIndex ci = currentIndex(); int row = ci.row(); model()->removeRow(row, ci.parent()); } void EditTreeView::removeAll() { if (!model()) return; model()->removeRows(0, model()->rowCount(rootIndex()), rootIndex()); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browser.icns0000644000000000000000000014205212273255454031241 0ustar rootrooticns*ics#H????????is32r[=.)Ec[F..FV~iO'LF9=HIORnsB>fdkffcv_LVUCt>AXʺfj0GZ]r9Aecj/0KRjf0Au[Իfj:326ST&Aeefj:K0FB3A^ˁj2/2)$AfWyfb '+ AfbUEH %-@$   *~3ipXSh|m{Hirwy o|{ksWllVXrzeհga\a[հnd~tJཾqnrdba;亰 JLOUL3< dA[lS/JKAE3 %:FMPOC8-4,L*[tĹXk͹M763I_CTӔ,67=665UBIHCЋ,8įb{6KI:KgӃ,SOoKN9Fz,gDʷ6K{I#.o,SR6Kd],:Y~lKM,67O65 |G"bH,65220b N.3-YJ[4X] %_l\X1KYOs8mk_]TGnFAeQ7\ ?ǡRICN#????????????????????il32\cYX G<74.$FXc[RG;0#P6@vncYMB5(@ACivk^QD3/<01&' @HLG|pdTBNf\MQ_+ RAQPK`thU/f]X :QTURJGcwjU(fbngfUDJTXZWPI>ujT'ffPfVffU9PU[^ZOD:XhR&ffDffTffU1,MU[aUd{rreM$fRb[VfU-(5PZ^[KxmaG"fFfJfU.&/8NXUJeqg[Bf>fAffU-$,39GOJPi^T:fHfDffU7 '/46;BG_UK2fYtfMffU6M9*-*(*7QLA,ffP`agffU<3GKL&$E1?;4.ff?dYoU24=??%=:5.'ff\dzf]fU '/121/,'!f>tfV# $# fQf,/fcVR (3e淂K^ghgdJKZXS/=eԂD\[NJTWJKN.IGNKLNMNNK>?>=0,P yEſu,8VVýtrqL<ƾaHDU5Cb lHBHʽ"06326A[߄ ~LDEE̹y 639 ZEGGFBTζj#65J\762qCFJKJE@Iβh#661Y6A662WDGKNLD>8ͮf#66BT6S662^'AHLQK˨c#615\M62\$CKNL[ʢ`#6.6Ko62a%?JHAƜ\#6+o6A662c$6D@•Y#6.w6D662~( !+8|þV#63s6Nh662uC*%uR#66Q4aH662xzN#66:x5YB2_hB#663[P68nY62#}_>#69I65u:@Y<#606YoV,)vU:#6866512Y Ks,%(%(}RA#652.):< kL"+2*";ON<6=92*# 05H[c\UNG?70( 33Bsnha[SKC<3+#/=ADztnf_WPG?7/&U`3EG@{yrkc[SJA9.)-'#1'X8JKIL~wng^ULD$ NfaSG=/#t5MONLQzrjaVM;5fbWUYm߇0MQRPND}tlcVN#PfbXT2HQTTSQNDSvneVMZf}:QTVWWTRMF=bxnfUMZfeYvtf|1JRUXYZWSNID:xoeULZf W8tffNf&U{;OSWZ\\YUPJD9aneSKZffdnfށf&,FPSW[__\UF@<6AldQIZffBfYf ށf*Z&9OTX[_b]@pqkgsjaMFZfff+8ff="+?SW[^`[Hpxpg_JCZff}f6Gff8ZfZ0ffPDwZށf'0&+047;IMKG?ib\UM92Zfb!ifF\[Zށf0""(-1466Gjjk jh\Za^[XT20DLj܅FXcd cPEFFWURN//DLㅰ"B]TFLWXRDN..DL%EJWQCIW^bcaYCLN--CLx@JBNW^flole\CM++8L vgE@&?BLXaiqyqh`SD*6{dK14DVKD?7-?EEWekmid]UB4) /9CD>L@H?@?GHG[_EDKNBM2*4?JNNC@AAI@2@@LFCINIDLNMNE;=JDA/?BLOONF7FFA:6?@FMPMFA?@ 9@>??@>@> HƤ}ڲ:pxirPtziii[byhſ]B:_¾hjԑU]>>LſbYgY/9VwG\BA@cq)0651/+7T\C Blɽ)6535;M@\DEFECSʺf06524dEFFGGFCRx˸F36YEGI GFB>O˶D36YyI6bCFHJKKJFC@ĝ>363466/Qa[ԁ6'v("-DGFC?w=3637660He[ԁ6'q$ "&9CA>d¿;365-:6.]E[ԁ6s? !",;;_ÿ:366' M6+v.[ԁ6'z=, (Z9366#a6(.[ԁ6'31*T8366(w6&.W6+2Th\}63660F694266iw1*kl236(66*66kfd/3655y=65;6x`_.361?x65_n~|[Z.36$64o [1XX-361L6N>it1+VV,365;62Zp{~%!#$#%TT,3632,9ug !&*,*%$QQ=36 3/*'#Af;"f6"(-2-'";NOO=135:CNN#KeaFdS$%)*)% #bLM Xk~a&,lfo"fxN$"$+.^ObvXA{hZhi@lh<c0sol2Pfom!\thfZigwrhhm _hfhgefhk*h8mk #Ҹ5#<%w+ݹFw 1; #'('#hB 6(sD0ntDߨW,Tk48eB @{I BnK@`tI8U\@,E^dL02FZny^L4+CHIHECA>:852/,)&$##'K4'1BRYWTROKHFCA>:851/,('$"!'"%M,M*''(6J\b`]ZWVRPMKHEB?<9630.*'%!&'(s\-''8Rgljfdb_\ZWTQOLIFD@>;752/,)%" ''&+fjgr2''4]tromjhfca^[XVTQMKHEB?<9640-*&$!''$o7'$*Ctvsqoljhdb`^[XUROLIFDA=;841.+($" ''" rB'&.:8,8pvtpoljgdb_\ZVSQNKHEB?<9530,)&# #'' 1$0''.@CA>.7vxuspnkhgda^[XUROLJGC@=:740-*'#! $'% 5ӎ+');852/+(%!''3f''*DGEEC;*m|ywtromifda^[XUROLIFC?<9520,)&")+)''6:740-)'#  '-1/+'&'If>=''3KJIHGF;*w}{xuroljgda^[WUQMJGD@>:740-*"!$)'+14430&!%'#23'(9LLJJIHG3C|ywtqnkheb_\YVQNKHEB>;80Lf`QB4*.454(!%'& T0')?NLK%IH,c~{xurpljfc`]ZWRNLHEB?<*Df aTH?953+!$'&L=')CN#MMLKJ@)}zwtqmjhea^[VROLIFB@"AfcUH;1+%N'(AO#NNMLLK;3~{xurolhec_\WSOLIGC4&fcUEUil''?QPO NMM=-|yvspmjfca\WSPMJGC afdYUWga-''9PPQQPQQPONM@(}{wtqnjhda]WSPLJF1$feZUWdG-*'5RRQRQRRQPPONE(s{xurokhdb^WTQMJF#9feZUXi\k0'/RS!RRQPON50|yurplieb_WTQMKGMfU qE'*ORRSTTSTTSQQPK-.v|zwspmjfb`VTQMJH `fU]''GSRSTU TTRQPOK3&7a}zwtpmigc`WTPMKGcfU(:'1RTUTV UTSSQONMA3(&Gu~{wuqnjgc`WSPMKGcfU N}'(LSRTUUVVW VVUTRQOMLJF9+$?t{xtpnjgcaWTPMJFcfU 32'5RRSUUVW#XYXXWUTSRPNLJIGE9)+q|xtqnkgd`VSPMIFcfU+o')PSRTUUWWYYZYXVUTRQOMKIHFC?))pxuqnkgd`VSOMIGcf dG&>࿞qfUmw=,':SRSUVVWYYZYWVUSRPNKIHECA=%Gyuqnjgd`URPLIFcfG vfUU=_'*RTUVWXZZ[\[ZYXVSRPNLJHFDB?0%suqnjgd`TROLHFcf*CfC4wkfUa*'>RQRTUVWYZ[\[YXVTSQOMKHFDA?<"Xtqnjfc`TQMKHDcf03f fUZ',PRRSUUWXY[\]!^\\ZYWUSQOMJHFDB?=&Dspmjfc`SPMJHDcfEfYfU551'>PPQSUVWYZ[]]^__^]\YWUSQONKIFDB@>+/somifb_ROLIFCcfdXpnfB'fU3'(MOPRTTVWYZ\]]__`_^\ZXVTRPMKIGDB@=4 bolieb_RNKHECcf: fX f*[fU3A'0ONQRSTVXYZ\]^`a``^][YVTRPMKIFDB?=6 (ilhea]QMKGEBcf΀fT lffU3''7NOPRSUVWY[\]_`aba^][YVM>22457762+!.amkgd`]OMIGCAcfQf,Dff_fU4O'',EOPQSUVWY[\]_`bcb_][X;$(?<4,&# "1Nqpmifc`\OKIFB@cf2.gfM )'cffU4$'',/IPQSUVWYZ\]_`bca_][V%W{yvrokheb_[MJHDB>cfxւf`̂΅҃fU'(,,2KQRTVWXZ\]^_a_]ZX-;}zvtqmjgda]ZLIFCA=cfdfWΈfU5&')+,.5NRSUWXY[]^_``_^\ZXK&E~{yusolifc`\YKHEB?<cfVf%OΈfUM'%)+,.09OSTWXYZ[]^][YWTE$Q}zvtqnkgea^[XIFDA>;cfGf5.ΈfUA'!)*,.02:PTUWXYZ\] \[ZXVSR>"e~{yusolifb`]ZVHEB?<:cf7)f:%V"ɦfU58'()+.0249OTVWXZ[[\\[ZYWUSQO2&s~|yvtqnjgea_\XUFCA>;9cf.;~f?ffU/'()+-/146:OVVWY"Z[YYXUTRQNJ'I|zwurolifb`]ZWSDB@<:8cf)EwfCffU(''(*-/1357;NUVX"YXXWVTRQOMK21zxuromjgea^[XURC@>;96cf#PqfHffU#'''(*,.02468;MUUWVTSRPNLJ;!suspmjhfb`]YVSPA?<975cf[kfL ffU6.''&')+-/13579:KTUUVUUTSRQOMKJC _spnkhfca^[XURN?=:853cfffPnfU67')&')+-/134689;GTUTTSSRQOMLJIG"Opnligda^\YVSPM=;9642cf^fRvfU69'+$&(*,.0235789:APRSRQPPMLKIHF%Hnligdb_\YVTQNK<:8420cf$KjfNlfU69'- #%')+-/1245789:=KQPPOMLKJHFE&@ligeb_]ZWTROLI:8630.cf+;qfK ffU8'0#%&(*,./134578899ENLKJHGED(:igdb`]ZXUROLJH8642/,cf3+wfFffU66'3 $&')+-.0134567788ffU2'5"$&')+,./0123445446AEDCA@(3a_]ZYVSQOLIGDA21/,*(cfJ f:%ffU-'2C#%&()+,./012232217@B@?(2_]ZXVSQOLIGDB?1/,+)&cfQf6,ffU&'/V< #'(*+,-//01121100/.5<>'1\ZWUSQNLIGDB?<0-*('%cf[քf(HffU '+SUC ,-.//0//.-,++1$1YWUSPNLIGDB?=:,+)'%"cf}̓f|ffU''NQRSN6( ,,-. *).--,+*)'%TTRPMKIGDB?=:8+)'%#!cf10fbgffU5('DNNPQRSSTU4+,,-) )*)('& !EGKMKIFDB@=:85)(&#!cfOpfOfffU5+'=AECB@<:963(&#!cf f8%ff܇fU ,'6GHIJKLLMN'1))#8LLF"?><;97568;;8631&#! cf)?iffa zff(dCZfU +'/DEEFGHIJJK&/((IHGF@0)+5>=;986420.++.01/$!cfI ff,Kƀf4EfU '(@BBCDEEFFG&H.& 4EDCBA?>=;:86531/-+(&$" #cfes>%pfPfU('5?@ABBCCD$,% A@?>=<;9865310.,*(&#! cfS ێfzfU *'-<;<=>>??@") ==<;:8765310.,+)'%#! cf:)΃f[ 㻒kfU $'(8989:;;<="<(:987654310.-+)'&$"  cf60ofP@_rfU &'065677889!82#06654321/.-+)(&$#! cfG gfU('+3123445443210/.-,+)(&%#!cf`;=mfU#'(/01210//.-,+*)'&$#!  cf&MיfU&'*-+,--.--,,+*)('&%$#!  cfGwfU&''))()*+**))(''&%$#"! cfbfZ"''&&%%&&'&&%%$#"!!  cf"X˕fl%'%#"#$#""!!   cfMfe''   cf22fU$'$$'# cfdkf&''+cfeB7ՀΓfX#'#+/-cf[ViymfW %'#12320cfVs"'$ !.35676643!cfcWU[r$' %03578:;:9864%cfdVNSp''  '.1358:<=>? >=;975(cfdWI757 '& %*-0258:<974*cfeXKA6)%'!'$%(+.1469;963+cfeYKA95343&!#'"!'!&),/257:=@CFHKKJHEB?<9741(cfYH6%&'.012#!'#" "'%),/258;=@CFILNKHEB@=:741.! cfYH7& *./011. '& "%'&,.147:=@BEGIJIGDB?<9631.+ cff[I8'+-./0)''''*0369;>@BDEFEDB@=;8520-*!'(*,-* &' ''-479;=?@ABA@?=;8631.,)% %())" ''%'  /68:<==>=<;:8641/,*'%$&'#''#'$ /7899:990",/-*(%#!#$ '& "'&.5565/)(&#  ! $'# !'' !/21! &''' $*   '' $''   &'' ''&  %'' !''%#'' !''#  ''" #''& %''$"' &'$'!  '" &'& %'  %'! U >qg]XY\agpC OfZNC>?BEGI`*Y UvZB> ?CGILNNKHEC?>BGLg9rU@>H[fqz~|zxvtsonf]UND>AFKnb-qQ>Mg}{yvtrpnkjhfd^QD>@EN+vpA>>?So~{zxvsqomjhfca`a]PE?>DU(mF>>Ux}zyvtsonligeb`_`[MD>E[+3L>>O~|zwusqnmjhfda__^]QC>>?Gf+ͽR>>ANn}{yvtrpmkhgdb`^ ]]^\NA>>@GuU,"_>>@N`_Ze~{zxusqnljgeb`^][K@>>AM- I>?Lbfcb[e}zxvtqomkhfca^]\]XI?>?H14C>B^gfed\^~{ywtrpnkigdb_^]\XUC>>Fw1>>FeihgfaW~|ywtrpnlihdb`]\ SFBDHC>>D_3i>>Mkkjihg[q}|zxuspnkigdb`]\[[\HGTOF=>ARs8vX>?UmmlkkibX~|zwuspnkfb^eimrpc\[ WBU\\[Q?9>>@KܲL>@\onml&k]o~|zwup`VML`}mPZ]\[G7=>?IH>Cdpon%lkY~{zxjOLLQ re\P;;>>HU>Chqp nngV~|zcLzcQ@Mi>@frqppc`|qLpz->?`srsrrsrqqpe[}|WLU_mֻ>>Zsst ssrrgV}nLnL  B>RtstuuvvutrkV}dLh.I>Jsuuvvwvwvvuuts_]}[Lq`>DqvuvwxxwvutpZ]}SL r>?iuuvwxxyzyxwvutq^Td|PL 3R>Puuvwxyz"{zzyyxvtsri^VTt~|PL b>@ovvwxyz{!|{zzywvtsqokbXSm~|PLIJ>Uuuwxyz{||} ||{zywutrpnljaW[}{PL35>Bsvvwyz{|}}~~~}|zyxvtspnmkhdWY}zPL pͶVD>Zuuwxz{{}~!~}|zywusqomjhgbTv~|yPLVbӆܸUL {>Dsuuwyz{}~}|zxvtrpmkigdZT~{yPLtLą~ƽpA>_stvwy{|~~|zyvtspnligeaR~|zxPLzLv̈́WL΀Ӈw>Hsstwxy{}~}{ywuspnljhecUt~|zwPLL[LPӇ5AI>^ssuwxz{}~|zwusqnmigfbW^~}{xvPLYLꐡLmӇ3>?orsuwxz|}}yxvsqoljgfb[P~{ywuPLLfҰ_TׁtLӇ3d>Kqrsvwxz|~|zxvtqoljhec^QY~}{xwtOLWL怰MV\LӇ3C>Vqrsvwyz|~}th^^``aa`\XQ^}{ywusOLLPvLѰMNӇ>>Rirsuvyz|~gSWljc[USQR`}}zxvtrOL|LqLTsrӇ4L>BSVmsuvyz|~}T{ywurqOL^LꂰML݂WL胰5+=>HTTYouvxz|~\hzwvtqoOLML̈́؃[LL5J>>NSTW]svwz{}sUrxvtrpnOLLMȃpLL5r>?PSTWY`twz{|~{nS~wurqolOLLYÃLqLa>APQTVY[auyz|~~}zyhQutqpmlOLLnLkߠj]Ȃ߃U>BPQSVXZ]btz{}~~{zxu_UsronljOLxL|LdbLӇ5I>BOQSUXZ\_cuz{}~~|zywurVxrqnmjiNLrLL^bLӇ?>BOPRUWY\^`ctz|}~~}{yxutr^apnlkhgNLmLLYbLӇ68>?ANPRTVY[]_ads{{|}~}}|{zywusqdQomkjgfNLhLLTbLӇ6J>B@NOQSVXZ\^`bdrz{|{|{{zyxutrojPmkjgfdNLdLLObLӇV>EBMNQSUWY[]_abdoyzyxwuusqnmQkjgfdcNLgLLMbLӇ[>I@KNPRTVXZ\^_abdjvyxwvusronlTxjhfdc`NLnLLQbLӇ6[>M?KMOQSUWY[]^`abcfrwvvutsrpnmkUrhfdda_NLuL{LVbLӇ6Z>R=JLNPRTVXZ[]^`abbcluttsrponljVkfecb_^ML}LpL[bLӇ6V>UUUO>IKMOQSTVWYZ[\]^]_ilkihfVd|a_^\[XMLLRÃLkbLӇI>Px<@JLNPQSTVWXYZ[[\[[ZY^fhgeUd~{_]\[YWMLLMȃLqbLӇ=>Kr<>DLNPRSTVWXYYZYYXWV\cdUc|z]\ZYWVMLLLփrL԰bLӇ3>DyQ;;@ADGKTUVWXWVUTSRXSc|{x[ZYWVTML[L僰^LbLӇ5>>l]SI@:FTUUVVWWTRVUUTSRPOAY|{yvYXVUTRL{LsMLԂbLԇ4B>vk;ESTTUSB;:j.i;ERSSM:ita>^ h;EQQM:oY;::J}{zywvtvwzywutqTRQPNMLtL~󲰰TM̓sLŅ H>P&g;DPPAHyibep{zyxvutrqomnoqroSQONMLLU԰vL‰~LĂ)>@z~~f;DNJ:n~}|{zyxwutsqpnmkjhfJKMMKJLaLkL\ĂC>f|}}~~&e:CL>R}}|{{zyxwvtsrqonlkihfdc`@>>@ACKLNRʂiLĂ L>Ryyzz{{||}#c:AB@{zyyxwvutsrqpnmljigfdba^>=<;98JLLm惰fTDz B>Avwwxxyyz"c<:Dxxwvuutsrqpnmlkihfedb`_\<;:986JLLs资˶A>euvvwx#wwp\mvuttsrqponmlkjhgfdca`^]Z::8765JLVdӇֱI>Srrsstutsrrqqponmlkjigfedba_^\[X886543JLd|崘@>Cpqrqpoonmllkjigfedca`^]\ZXV665322JLpL꙰>>cnmnnoponnmmlkkjihgfedca`_^\[YXVT5432JLLYD>Qkllmlkkjjihggfedca`_^][ZYWVTR321JLPLу꽗8>?dijihhgffedcba`_^]\ZYXVUTRP1JLmL䕰A>MhghgffeedcZBEK[^]\ZYXWVTSQPM0ILLX"*>>]fddedcbbaY>=><=LZYXWVUSRQONM0IL|LuA>Hcbccbaa``_V>>KOK@Wa__`_^^\M<>OSRCD]^]\VDQ\ZZ[ZYPB<>AWZX TH><>HU\]_`_^][H<@MNM-IL4 >>GWVUQB<>JTTSSH<=DOVY\^aceghi hfdb`^P<>KNM,ILxy=:>>MRQG<@MRUX[^acfhjlm ljhec`]R>=JNNM,IL lO?>A@$>>?MO>MNM+4KLui^\[B7?>AL$=>@M?CNQTWZ]`dgjmpsuvurolifc`\YO<@MM+2JLLzcNIWXYZ[[Y>7A>@N#=>B>@MQTWZ]adgjmptwyvsplifc`]YVH?K"$=>B>ALTWZ]`cfilorttsqnkheb_\YVSA>I"4>>D>>DRY\_begjlnoponligda^[XURHD,<>>CE@28LH>>CB7=>ALE>>C5!)>>?LNC=INI54AHJJ:3?OPB>>G>IQMC<<@I>FPPMC=EHE>>NK.'+6@KNG37FGF<29MQJ>>@H:>>BLQPMC<>LR>B? 3=>>DNQPI?<>E(>FPQOE<>AH$>?GPQLIN A2534BPJ@>>@G .>@IPQPPON D237COKA>>@E6=>CIOQQPON OB:DIE?>>?E);>BHNQQPPOONOOPQQOHD>?D7)@?>AFKOQPQPQOLHB>@CF-A?>?ADFGHIJKJHGFDB?>@DG.>@>=>AD=#:@ AA@@AABABB9U < ѾQC H|`Sse^aiqy2H܆c^ _ejnrvvrmie`^_l}T?w%z`^j{j^iy*ux`t^pm_^euB+wəb^^_wo`^p( dg^^xo^^_u +%n^^q l^^az+85r^^ZEa h^^d~d,^^\J;95N d^^h- Gi^]M?<:87M|b^`50b^YB=<;:7@k^^yq^^U@?<&82 y<.7Vk^^p2U^^OB@>><<7cB/0'P_^i̻y^]IB@?>=93l`[\h./00/.'-^^cKl^[EBB@'?>7_¾kC !/656?NV-0/"#V^`^h^WBDBA%@?5ü'-6 51/..-/!H^_ w^WBDBCBBA<1m,652-(9P_U^[DECDC!BAA:Aſ%65371Ǻg*6339GpГ$f^UGFEDC9=ǻM065q^YHGFGFEDA5=ȹ3463^]HGFFGHHGFEDB8/Kȸ)5631Lr^OGFFGHGHIHHIHGGFEEDC=621kȸ)5631u^\HGFFGGHIJIIJIHHGFFEBA@>84/^ȷ)563 fi^MGFFGHHIJ"KKJIIGFFDCBA@>=62;ȶ)563 4K^ZHGFGHHIJKJIHGFEDC@@?=;:2:ȵ)56 .&=~֫D63 zc^JGEFGIIJKJIHFEECA@?=;:70uȳ)56.)J63 f"^WGGFFHHIKLKKJIGFECB@?=<:923Dz)56'Hj6-)amW=63/B`^HGEFGHIJKKLMLMLKKIHFEDBA?><:97.Dz)56(;663 ?^TFFEFGHIK%MNMNNMMLKIHGEDC@@>=:981rDZ)56-$_63635Xh^IFDFFGHJKKLMMNOONNMKJIFEDC@@><:970Hǰ(56Yo@6-2633^]EEDFFGIJKKMNNOPOONLKKIGEEBA@?<:973,Ǯ(56*,63!6'\63~^TEDEFFGIJKKMMOPOMLKIGFEBA@><;974,?ƭ(5662 >6 63X^EECEFFGIJKLLNOPPQPONLKIC<556531-Gƫ(561Y6'H664634^]!:CEEFHHJKLLNPPQRQONLK:/5[XK>3/,.KŪ(56)786/&&bf634L^M-'56#_61J"63^`!"#$$-CFECBA??=1&56$N<60>"63^e !"##$'=EDCBA@?>=2s&56&@D6/6"63^k !""##$4CBA@?>=<0f&56(5M6.#6"636^q  !!""##)=<:/^&56++U6-&6"63}^v  !!"!"0>?>=<:9/]&56-#]6++6"63y^{6 $6=<;:9/[&56/f6*06"63n^u (7:99/Z%561r6*56"63^^oÄ'58-Z%563Ԅ6&L6"63M^f; %*Z%56 {6!{]6"63^^{WA+  O%56(86576"63d^w # T%560C6066"635l^v  td t~}%56w6*/66#ч63q^ v  R  2~}|{%56&C:664P66&d>Zd63n^w&v +ox}||zy$56. 66'M6)Hh63?^`%u  vxzzxw$56!q=0C60#h63f^u Hkjilnp$561ێw6$yh63u^|#t ihggee"56*263#ڥp<63e^c"w &gfeddc"56*8B60,LuzF63d^!hfddcba"56.*863q^cba``_"565*#C?63b^fa``_^^"56&Oʙ63 _^__]"56."L64i^~]]\"565W6;U^`\["56$Y绕6Le^x&0JZ"56/"6B^_  XY"56)964e^q| QXYY"565"j6q1^^Y NX!56-!9׀6:c^k.  GV!5632CN?67!^^ g,  9UV!563Q`^f K  !"!  ,U!56524#k^`9^ "$&(*,-//.-+)'%$"NO H#566435:BMPV!2x^^"R^^a!#%'(*+,+*(&$#! fMNI9@JNTfy~,M`^vV`^^iB  "#%&()('&%#!  9dMNO^qg.yz^^n|!W^^h}A "#$%&&'&&%$#! `LMVi|?ep^^tf A_^c? "##$# 0]KLOat"Ph^_|/ %a^_? !   ZZJKYmy qc^c a^^vD 5 VIPdys 3_^g^ k:  Kl k^p^^nsR^ qn sqTI10v_^^vN (d^^_uP OY|a^^j~ 8c^^azxf WTd^^f| Hb^^d~ dUh^^dx2 Wa^^_m~ R+]}qa^^bwL^a^j{ym_^brfDjd^fw{j^erz4Mng_^`houx{~|yvqia^guWfhc^cjun6^jkkihggijklnpct8mk@ 5Xz˼pI" -ZɄB%5{m ,eR "-s+r]*[G$J3 9!dMx-L5rYiaG?)'ŽQÔX Ƙ]Ǚ]a 4&F =-UG@d2J Ds=L +R$ ,#2 )0%@ +R0$5): -> 1C#4^'8x); ,= /@ 0B 1B!2D"4E"4E"4E"4Ev!2E] 1BU 0BS /@Q ,>O);Lu'8I[$5FW 1BT ->Pc);K\%6FW 1BSg ,% )9GWevI:, 0>L[jN@0" %4BQ_oRD5' )8FTb|VG9+ -;IWe_J=/ "0>KZfmM@1$ %2@M[hOB4& '4BN[hsPB5((5BO[hePD6) )5BN[f\OD7) )5BMYdu[NB6) (4@KWblWLA5)'2>IT^jqUJ>4(  %0;EP[e\QF<0& ",7BLV`jgWMB8-#)4=GQ[clo[RI>4)$/8BKT\em{^UKB90%  )2;EMU^eo^VME<4) #,4=EMU\cjp\VNE>5,$  $,5=EKSZ_fl}`ZSLE>5-% %,4;BINU[_divәh`[UOIB<4,% #)07>DINSW\`dglԼod`\YTOID>81+$  &,27=BFJNRUW[\^`bbcccbb`_^[YVROKFB=82,' !&,049=@DFIKMNOPQQQPPNMKIFDA=950,'! #'+/1479;<>>>>>>><;9741/+(#  "%')),,,,,,,))'%"    qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/urllineedit.h0000644000000000000000000000676712273255454031405 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef URLLINEEDIT_H #define URLLINEEDIT_H #include #include #include QT_BEGIN_NAMESPACE class QLineEdit; QT_END_NAMESPACE class ClearButton; class ExLineEdit : public QWidget { Q_OBJECT public: ExLineEdit(QWidget *parent = 0); inline QLineEdit *lineEdit() const { return m_lineEdit; } void setLeftWidget(QWidget *widget); QWidget *leftWidget() const; QSize sizeHint() const; QVariant inputMethodQuery(Qt::InputMethodQuery property) const; protected: void focusInEvent(QFocusEvent *event); void focusOutEvent(QFocusEvent *event); void keyPressEvent(QKeyEvent *event); void paintEvent(QPaintEvent *event); void resizeEvent(QResizeEvent *event); void inputMethodEvent(QInputMethodEvent *e); bool event(QEvent *event); protected: void updateGeometries(); void initStyleOption(QStyleOptionFrameV2 *option) const; QWidget *m_leftWidget; QLineEdit *m_lineEdit; ClearButton *m_clearButton; }; class UrlIconLabel; class WebView; class UrlLineEdit : public ExLineEdit { Q_OBJECT public: UrlLineEdit(QWidget *parent = 0); void setWebView(WebView *webView); protected: void paintEvent(QPaintEvent *event); void focusOutEvent(QFocusEvent *event); private slots: void webViewUrlChanged(const QUrl &url); void webViewIconChanged(); private: QLinearGradient generateGradient(const QColor &color) const; WebView *m_webView; UrlIconLabel *m_iconLabel; QColor m_defaultBaseColor; }; #endif // URLLINEEDIT_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/webview.h0000644000000000000000000000736412273255454030527 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef WEBVIEW_H #define WEBVIEW_H #include QT_BEGIN_NAMESPACE class QAuthenticator; class QMouseEvent; class QNetworkProxy; class QNetworkReply; class QSslError; QT_END_NAMESPACE class BrowserMainWindow; class WebPage : public QWebPage { Q_OBJECT signals: void loadingUrl(const QUrl &url); public: WebPage(QObject *parent = 0); BrowserMainWindow *mainWindow(); protected: bool acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, NavigationType type); QWebPage *createWindow(QWebPage::WebWindowType type); #if !defined(QT_NO_UITOOLS) QObject *createPlugin(const QString &classId, const QUrl &url, const QStringList ¶mNames, const QStringList ¶mValues); #endif private slots: void handleUnsupportedContent(QNetworkReply *reply); private: friend class WebView; // set the webview mousepressedevent Qt::KeyboardModifiers m_keyboardModifiers; Qt::MouseButtons m_pressedButtons; bool m_openInNewTab; QUrl m_loadingUrl; }; class WebView : public QWebView { Q_OBJECT public: WebView(QWidget *parent = 0); WebPage *webPage() const { return m_page; } void loadUrl(const QUrl &url); QUrl url() const; QString lastStatusBarText() const; inline int progress() const { return m_progress; } protected: void mousePressEvent(QMouseEvent *event); void mouseReleaseEvent(QMouseEvent *event); void contextMenuEvent(QContextMenuEvent *event); void wheelEvent(QWheelEvent *event); private slots: void setProgress(int progress); void loadFinished(); void setStatusBarText(const QString &string); void downloadRequested(const QNetworkRequest &request); void openLinkInNewTab(); private: QString m_statusBarText; QUrl m_initialUrl; int m_progress; WebPage *m_page; }; #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/Info_mac.plist0000644000000000000000000000306412273255454031467 0ustar rootroot CFBundleIconFile @ICON@ CFBundlePackageType APPL CFBundleGetInfoString Created by Qt/QMake CFBundleIdentifier com.trolltech.DemoBrowser CFBundleSignature ttxt CFBundleExecutable @EXECUTABLE@ CFBundleDocumentTypes CFBundleTypeExtensions html htm shtml xht xhtml CFBundleTypeIconFile @ICON@ CFBundleTypeName HTML Document CFBundleTypeOSTypes HTML CFBundleTypeRole Viewer NOTE DemoBrowser by Digia Plc and/or its subsidiary(-ies) qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/squeezelabel.cpp0000644000000000000000000000464412273255454032071 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "squeezelabel.h" SqueezeLabel::SqueezeLabel(QWidget *parent) : QLabel(parent) { } void SqueezeLabel::paintEvent(QPaintEvent *event) { QFontMetrics fm = fontMetrics(); if (fm.width(text()) > contentsRect().width()) { QString elided = fm.elidedText(text(), Qt::ElideMiddle, width()); QString oldText = text(); setText(elided); QLabel::paintEvent(event); setText(oldText); } else { QLabel::paintEvent(event); } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/bookmarks.ui0000644000000000000000000000476012273255454031232 0ustar rootroot BookmarksDialog 0 0 758 450 Bookmarks Qt::Horizontal 252 20 &Remove Add Folder Qt::Horizontal 40 20 QDialogButtonBox::Ok SearchLineEdit QLineEdit
searchlineedit.h
EditTreeView QTreeView
edittreeview.h
buttonBox accepted() BookmarksDialog accept() 472 329 461 356
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/0000755000000000000000000000000012247412261027431 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/src/0000755000000000000000000000000012273255454030230 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/src/browser.qdoc0000644000000000000000000000323512273255454032566 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/browser \title Tab Browser \brief Demonstrates a complete web browsing experience \ingroup webkit-widgetexamples The Tab Browser example shows \l{Qt WebKit} module in action, providing a little Web browser application with support for tabs. \image browser-demo.png This browser is the foundation for the \l{Arora Browser}, a simple cross-platform Web browser. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/images/0000755000000000000000000000000012273255454030706 5ustar rootroot././@LongLink0000000000000000000000000000015400000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/images/browser-demo.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/doc/images/browser-d0000644000000000000000000046126612273255454032554 0ustar rootrootPNG  IHDRldsBIT|dtEXtSoftwaregnome-screenshot> IDATxw|eϔ遄ZA.DAQ{PﰝTԳݩ *8HAD )!M6&KzP_dg:<<#QY-AAA+VK՗UYPNݺ5U/XZRj R-?n}uR?~}Wj.:*zDR_P_k6n鰢#JF*k먪7>&#RM9Ԝ'L+򟪋AW׸5(eVo1VՌzyŵ~]wªU/MGlV&U˒ì1W_] Cޙbzx<ڵLv;m(uaX((3GtJJ* D޷}AAA8Y11э*lYi i$eыhiib&,,# Y .nQoHӰldIbbt'o_l(cC65|U­Re/&㾇P ;~aן2Qa][FҨ1<܅vl8ygoM(/)3g "Y;>[ =ƍ~LeQ NDlű2m++˧?{p9!  ؼ޲ LеNG-+$׿BY 6GOnäQˇ!bh#G Dzt>^C{$IB5l6;C{L$ r2}ѱl >8RO6KT*?Er\v@~4~maIb' x(Y3-5+{J*63?d b'.ޅM2 4t$YrR;΢Lbx~9HЭu.{n,@2$l8o'@ۚ*-%k-M٧ѧ .pX~fbAVm8zP#dX ].b*r8+;|< ;IVRTiN=>4$\q1D$PoY(HȪXᜲ3pNAA=ekECxklqn{hBj_JJt<紎fAAEQ 6mRq:|~(a4D+R fiQ810 F0 #1 y}|c: n<ø ĦO7 bҡf*RZ)Ól.b{u,d{~ڇqz/֤8MvnH] =2sN➗oTރApϋvOdӖm% }H'm]nMBIiK7ʷy:(.b {.X GAA??|E-sn1 ì0$z%֕$F}eeDd$I\M:(é`Z`'d=kYaz[y4`!cE_d@i^ˌ2h'.(߇JW)zٓ|pY%~]A޶2 GLnO 7B16r/d5]fkOV ?A>o+WT~; Ai~I@.B&Q=\u5י< Im.ʡ˪('KFEa$^6©eCٹpƹQL+Rj[/,j LaUyp4B*`7kȭgTT*RYorm[0]ǒdEkP'T^Np!bAcTy*, wI!)Í=/d3U?yx1+̙KW{HN %[|'v~b9toe|GasKAAC",dYaGi^i{v꼸G#DϯW2k4cmȒ] r,,ST!&& 2eχ,1g$ɔ B4 'in#D7 Ⱥ ib, OWL9B.QRfJ.ըR#*Wf^A;q-b)!fúzFvk)<{ICyǟy'̠`nYFmbX.n|aN}Z0d@sNۉLMA.%4l,+(WX.7wNP:1q++vmnddTU%? QQ. @LdDQ [ᗪaSZ ? VZS>躆iZzT֤! 8־8^bĤ1hDZmXL~errW;zw|62+t_9ijaaI vj[xϩ<!r\6e*s\+0eh '](,ǩwN{ 5̀$ C!oɤlm侁v_#C]ۦ^$Vn MYN+vat2YyX`ո;$o]iarQml[Ȋ|Fk +XU8sPl7Vt$ ~~3^[j} /tJ )$ey:ji;K AASDꆅncQ¹m%S2g0nbtd^%^p),,E˖8p,JyV10 ,3{VXST Rztâ_(\><2<4ýn>Y((/4v-lV#17r5'$F=)y6v `/eiw#ۆ7Ħ? R5C!~V]e$ζY`j>c$⽬o}#C* SQ}`&xs#TQ,`x>J.=cm(Neܷ۶'z`][Xx>_t9hzcTc EyX1H(=wb%6Rn ɂy{Q2֐e`72ob2elGp$M/r[)Azi?L 7H$QtAYi {T$҃Ay26 e!yWс|sUJu߃ewqVhYh!`2~rxEįW:U6ڰڥq Z؉xy]Ǩ뉻<զⰗ<6+b2j;isut3 6Q禮];.  iᄭ"j ݎqL-a#f싖6`FI,A ~i? =,5I*T$]>EtV4-B aܳvTXf+yOLB6?3෽29l)G4`(+cbp.ɳ-Oh[AAA8z4MCi߾ka;e^C,$ ̯JCq+Iƒ$( HEE&J Zi(((́$Xt$$EGHMLL$ )򐓓*T0aZx6dULlBI[W_lD,Br*g\AG'~濯EY<~m+  Gi6Um$զ"*ii`,! 6 VgVEOe1t CTdŦbWmHLEUէc4]ˇAgeUUma#]tBa'{pG0#,OCʇ9T5dv:VAA]7?HuZHG ErUq*Se Kq,[EObUi*8 s,21LBk3'*j38(8ݎ*K~Oyrv.]#| lj8;g|1rᘟ_(Z0^bsշ~R~5y)f^q ~k~ir}G{iUL!2dɛnm;\&׭   j}oэÇcnnFw&:: >~ցӆ u7Rڈ ʩO<9|M?8_8?&e EQQnZea^ѣ2Xh)]{5?Y iitzpy IDAT ~C *īuEϯ3!NŲ,yCۏeAi\uHT4qheYdw0qcfiê^1xF1}3o]Ð1M׬eSŜ}h*m:w>"I<|'Lu}Ŝzt]ogo{>l0ڷe#JJJL>ڶmCzzа"S{}n]ӹ x^οJ|&\uϿ2995sk$$Qg>>hNy2 RO>SkLeSfyrs>ݺnVokcVdG_tt]suW]zν? pjo&3F̀n"TUay琜Dbb?Mzƞ;%!!aCsuٹs7ϽzcZbܗ(7goo =2+HHlGQdZDeڵkKrR$֡=ee>Ɯ9Gl*MQV=xez~ǥ!0hV fΠmN< <8jN;P >/:YUP_{s67q#$ I=*/ͯQGsW{_ΛOQig{ܒZ뉋S4 5?Q\  ӨxzQ~  qot6KN-[0t@NNЊ<6{X;K.7!1!QU=we<+VwO O? :dIj}>O==ƹgT}4uPf# Z_rr={tgz.<l+.6B;ks[ɲ,lj嚦GRwoO*T]V+Vp1ټyK׶/:2u>\fZ14!Xd9a֡|@{cڵkZm`5ts6 j,r6q;U>o8ھ j*ڤQ  49l)lԧ_}}huNQѵk:;vb N_~|iӣ{W=2={tgϞٳ7b3FgђenQ^SqlM1sϲ|Ū6RUS̺ƍ2x`u^<~~u:ݻw;P ȆDu72ߖ-[0;ɍ6|y玡gfS׶۞jYw,;#co~Azt95tsx:u7Dʮ[s9C}|N 4Q :$ Wݱs/ZBQy_g934M>bؐAGt]g=bjn-[`irp/))܏w!eK& G\\,,^{yٝyml*]8n]49 /8oή2r[\wU<r_пa0t@Ɲwi#I ӆǞ~8|>?!EGL:<+^`Yr;xΧ(m۹mGcO<%S>Fzzg~\y"v۷d۶<#\v24Ͽ=˦p#;p#y},v܍d._ɞ={S\~\?i?#m6mZq0LC|<ˑd{Ro>s2dtJn L\{tƮݿ9bX}4 }1mw ޽ z>{G䅗^  N`ǎ]U8,Z;vBݓΝ:a/,]ڟo&Jm1t{4MyC6<$˯af&;v)ALA?iAW[Eaa8Gobwttt @4UÊ@Xx<$&&6iyI2zY1LM|Q>f6ivO+&$8Wr -+sH>%%ȲTwÏ=I}zqcPHAAju󭓛6SHy^ ýخN5jٲEll6'zIDB||ry1_1dR$k  ԧ+׺|U.on{ xD}96;a0rD!We6>k~{8 ƹ-8D  PQ)   oܴY"AAAcG6}CAAAFx;AAAӆ'l7>ޱ   Ո{AAANP"aAAA8AUIzD6}fAAAcF[Ľm   Ǐ)  B!#GmXjeY@2]Ӑ$ F; ~6 @u!iXa'DQ$I,PVAAfp_&0&zihY;v[R'._nAǴ\nxM4v܍ ,0L IHiՊQhlwx8P])&i:Fv-HM}J NޜZFS#qI  iqk hiۚx뮹_6x5e-bjքͲ,go{p:JL@ $ؿ?܃tޕZ{ۉ@Ƕ}YhT11DGp*;غ1$[.;%ЯKv磅47#w5ɴ, UM/G,nU{3\1_5N  ?UƲ:J 'zOoז.tMOggp{N\YHV4[fYٹٷ8\ni!NRod! 1~~ٴݺ\a4)6 YQ6|q Y,ki$jTW% N$:O?Ȇ]?:i+X9Y?YVb!YR2RNASPPHYhZHvﰄ+#!1>夤Evv6m۶#bccXa#7l"bnݪQiMj `&ܲ%;e6ss% Î?׭ۈ:z'{mIȤp8ٰq%<`0=9QsRg`n.WT46(qƵChJsҽS;*uP50y(ێƥY= 6Vܜ6mEpCyAA,o]yY)!IIIIu֨fNvv6˖-#33m2bRRR~yzYodMr9>pGLڴiKjjJKKUfV6i:D~OJJ5\.Hd{ʼelݶSOiv6˲ӲE ,tލh e˖ΓO>g|x^{1$Ib޽<t?bu]|GUgĉU۱cO=Z"77|Zc[nf"66}ѪU+.R mBӧsEA < 2''V$I_ ";w`vU_qȌyyyf1p92) ˲XpyyURRZ32 $Ib+:“snmXE )**0p`z>׿Ij>]X~#?) 4Xb)ɭcatܱuEA>҄MCv Y>e^ު$Dc3NUU\NroJlغ6lur LUUi)=;r2+bIEn` eYUX{\ U_aC/n_`ҤIiӆ^z'odÆ s=Xd3( 66֮]KBB:uW_妛n{xygٰa,3a\.SNu\_~ɠA;w.۷ogҤI$;wfɒ%5ڧP(g_~i?sgt:kĦ( W^y%w}7<  =PRAʼ5F0_V5Y3MRoնm[ȵDe[l]vkjRf _Ϋ/i#2` >W^~ 0a nW\W\ͦ_~a(((`ޗ1KٸacƜKtLLm^˸ =b41ma Tb*jN:7_;V=a(G& Mi:o>?  NedYFe|e>4M2Mv{^EoVcʱzdffFdHbbb$޲e+[nô~`%a8(c7!A-iC+ed9)-){޴Ўln|ߡU AشȲͅ*YG. @ݙ?~[pDy睌93~H9˲:u*3f̨~aa!+W$zi2c mvhK޽{#_| 7={Fb> >/.}oDʛɇ~HJJ 6l 1 >gy'6m֬Yg 2˚5kjPZZp:|yh"wN֭ܞ  DEE#q(i۷y+GVe&okĈl۶c&=zϽ둜&͟JEJJ 'Od6,#)Y$ IՂK/~&{7(lq*[e Ղ,[umxx8gϝ#dz(VB2e1+Iwѓj40p+Uϑ!-MiVI &b2#Qo!MʻFwȡ IDATsM} +x<qgn:@DD;vy1f;aaaӰaC3FC runyТE L”)SQFOΝ9|MA;x ;vSj5͛7SQմjՊ%K؞gș?,[ BfHNN&** zu@jj*͚)ۗTƏς lmK,_~S@ 쬣T^j|3g!Izd҅68MF=z4n֭[:*Y^+V~_&O+*WFs] `RԪիfNځHD󖭰Z?O  :'Nk6)5Sw^>8V]V,Xs.1R:ok38YG"U6NBrĢhADPТysj5jZd$iYMg T\w7b./ِPJBPÉ'l$RQ*Q*ԩ(|$5CLDB*kO'Q4#1: O7woG3ݚgbt4-ߙA%Z享K9p7'wR2NԺu눍%88StR._ݻ_> >}ҺukM4ݻL0Tz= /fٲe1{lFkpɶc9 fر@ԩ /@^7n\.yɓ̢E|2˗/goߞ^zÇSn]Cpp-<| quuL2L:3p@vIԩݻwwww F۶mX"+VW_K.ڵ+V`Zspa޽;waѼ[\?@ K -Z`;mX lڴ;wY6>3\Z6FT bAVxQXZ ˯Fn,] )g4ѹKWdY$%'_P(x~xzzq% 1tރ+jA{q~ P!1i֪ V+__YRzɓ?: sQffsm_3BFN>^GrBeJ5kTN::}W#eCh0B@dCFGVh8xG&,˜ cQ4ԇ ~8.e=h4$[իIw)oatL`@\wff` m_ ^ۻcY-{E&ٜ[N[=AսŀcbbhѢX,z=&QFzj|߷o{ɷseٶj;:(2&)ϣɓ4|||l9s߶C(2 xxx5DYIII%HJJ;f`X}6͍`>|IHJJzt^@ 1 Z$Is*{.0h4gRAsxmݜ(d+me>0L$''jqqqWYVpqu51hY=z07+l۶ǎ3ތ $)JrܶpsCFFTb0HȠfQns)tVБMaFPVMΞ=OшZbdnJ@j&i5TT WWׇ'$z;J$9%&)3ۑÏ 5cpl8)SBViI3͸+,dD_J҅ʙ4Tu- ȅ=K]edY)'9Q*Y`A|_>-Z7^IPTYlœuOR^ZAV)a'O… X,;+"ݟ_ W*yLjժ9r!CS@VCصk7YGVm.S4;ogA4jYR 3;99뛷{B[c9VԲ12`&<<֭F.ΞuVF^$9%&;7*/Pjլu}'6cv* +9Ef\ J|BJEJD\\`XV@UT-4yɦT(IMMylID CA51Qq\KKŻJ]:ήhdƐiBi4.M+(iT2ΎRr_4.9{O]l)_NЊҥK޽;sayo5&˭y3tP͛ȑ;"OAt:=J׮](UgƌѦM~l@ JΝ;siS;kqƏ$huO9۸ann4h؈+<6y' ;2eJQ\֢zٽw ڻzjseΞ?F32pYj 77̚+hNxyy닟/:Izړ*IIU?gI`%NDaxcx"+ F `Pri<uCML88춸2k֬bQRt֍nݺ=n1@ ϒeqP(hV\IZ=v:RN-թˡF+o–rRlwYX@TT*"$IT(mκ;wODl8&IUSR)Jx9t™#Z)@ (yĜG3ob||}pws#$4jժp3*ܕ-Ss.ѻG7ΜghѼ)A{ B$JC0{< 8kqqQPP_o/7`e N*%:V3`G@ 7Q*6 JJth׆HԮ@hX8˕C笣kˉ JBN+e#@ <2:"^,@ O@ @ <(J* @ : SAsf,@ GKfsgw@ T;l@ @Drq!@ P*UHFSr%L&z=Y,`4mϬVk˚&`$-h=31̯EKV0dH sj찳e!%%!d)zh4f>D L}պZo߾qHr6cԘ9{C(yIMMiɤ=,HqjC0RSXNdY&2:ǎ̈́"aXHHU’= Ξ+X,\΄?eUSSS BTt#BBX*{~WF623MLgzgBeٮs |<92:R\ѯK9|Cd߁Cc6Z 癿5Q>p0= `'_p5?#xs{ >.?]aع^k<~><>]j|F#LAgزuJs23MY$O3g3׹||3GOq7Ynfm2_Ŕdڍ {Uc8eԡ]ր7[=ԯrBJe#mZdMEQb7~ ,OM2&7_MvX]RJeڽg?<snR[=ֵ3/e _JOeǽOyQ籱70;8h ˠ%B!ѳG7^3.!^3ʴ3'g>?F;: ;6ob6]V,^Ao~Z*8tWGg/RLϞhټdҕ4kژs/cFr ?Iקl֡Gٽgf1Fe :&5r6m!<*)iHR4gdhr4j iL|:AQӤqC>Jٻw?ƿia6QTܾ}צ v''_.s9MY[z6ma9\ -,TN^|.[ w¬C0ʔ)MZ5ӫGAp;oI$'DiP^aۇٻAsnۉfoAӑYsh5\Ű_+j5f4͚A,Zv9#ڃNټu;aM:o,,[xnݦWnkӝٵ{/fӦjrՕEr%,IAؽ{)))L)@iϯͣii>sf!E*3VYϊ%l@קرs7$dJS8RC^?]xOO.^κش~em;:{mDTPv-z薫|4nď?jREVV:u,.tR&W#1obzN-Gx{{~.,YQ2TR/ @$ΝȆM[puq!.>ov QEJWqǖ y~PPF{:p})/]Ir%"Giټ_]ML{yW|WL2- qq*U/R8̍xa{ƾdճ{pܹNϲ~6̙rʒp"3b`zzY9u, x{{qv@2ssp)=k(QJe5mYL3~eeϫ^O3\o'~?ju8 o_XP э%KWRn HF>6zVo/ګ`4frZ^>5{/kmgԡeݸ'M 11i5$%ZhZV {o+W1|[`nBj׮E-Xd.^b~Yzu3OۍmZ`evc{^}O㏓S'x|ƿ7_~5M}s s) KLL,ժVz@532xq@_Dgf0L\7_M7^elڼX&;IGL&3d߭kgϢbE6mޖgoL*xwܛԮU-vr״q#>d;_ZUBE X4ٿ|O3gF, +;BAj^gnh5ƽZ.EÑUʗ#:dףmy}PNG,''':vlR^]~alF _.gjTgl"G5O=$Oo#G |M0O>ƿ4kژ)M%1\BDb6죳˽JJ4F Y,ryo x*04jPwǽI^մ~ȺRrET*{#a+V;Kؼu;ݺvKP']ȍcmuk遟}%ӧMaqu=כ0^1+/ ӏ&\qyVZ\kTFH0ɮO,^O*Wd;EVEP{㨻‚X{_M>"c{zNeشnϜcڍdYFףP*$ J,X,.^ !nkmd`nRV-Бܽ *Nڱ{>;A8řmb oa}08RNt+U$=#UZ Eͦa.BҸQ\\ԁ|MnǍ}áCR/  CIR6oNbbfd%11IRRwݞ?k IDATL^IM*Gd*HΫ,ʮ8e_&gʧZ*4lPrg{`;0Ll۾t}` $˃֭Z򈡄G0rN:vl$IHDl޲ 6`0<6T)th{rUT-JW*凧۶K̡̚#rM Ru&VB;o/\#8xՊ,y{gxzxaf;?Z֭Zp N8;P( }y>@Z|0qgΞ/څIR@FBdY}.jW(FT[KbSXwMX|@A0(J3~k׮ӵK]m[,?N۷#&:mIA9},G`8y Ѿ]BWP>Cý#%c_$֩MhڵieP֩pX:Kv%Zf-]'''/O$g 4nh ebo| Qt{:/5 T)?F\tR%z- *Jηرo.))|;JSVez̈aZ-Ls,ke SN \ {9Z1߳;'}L&3& lkE/| }y[~g ^HtL,oɭ[wp`6y5vNѰ?j%4,-q>OD*G`ZNE;Mq0w;>0D&kou͘g | U+]:9M%Ѧ7js l6s71 ^`xX,2ZaQn s/hDQ۞_jv$%%v-fs.pwK0+ۑ΢h=,̊+)W m۴e8{Mi9}O5kNaze͟bIBo̐0t NێOf!+o98'x!y2eJRˋZQ\]\:y~;NUkE{H٫T*I;h4E-~⧙Uf #Dy޽jѼϜ}?}札w @Fz:ÇfOmmEccFaf"Eڞp G,qrr~:lݶPaGR= %Vڞɲ9\o۝2=i~s o9JMJ6nIjbZZNu~^:v̪GKNolq`X~"z3g3 ;?jתAP|/vǟN&C/0]Am zSdY0㻯INNf?lNۇNuQf͚w4T#,*ѱg۰Jj'ugҬi|_g/F4羾*S[7c9~=z}.REJ2DEǰ[/7Z.^z+אpڵq/\Ӣy3T*ng˶MLYƴoך. !׬ux+b-z5iyN9y [܉FsHHw?BHܾʕ+R&GXU.^F(<<ݩQZsǵ(Ξ;F~]-^Ϊ)_5Wÿb&}%!W,f 5ks)( MdЀ,m$ҥh*Z|:w"RRS8p0q|x,+?2 BpqvAzx)>Djj11...4lP/WY~>+ؾ-M7,22ԬY77Wٺm'f`.\ME>H=LMM9 @)?_|}|laFFGcڍȲ/>FP\Y2zVYOhv&FF evcNWNe5]%""Ӣy36S|9JV;j՜%~䩳TR>ziV֮3gٻw?-[4c 6,XX׫.iilظ\\<=X~#_JJj<ϴLH`ވSMٽg;ڋNaiTS"]g`_`7_~o5z߁Ck/))8RZigp9$>rҠ~j\sys:;o#rN"ߗ5kfӠ9e`f:V+?Ng~kd2R,2I8펇^`ӣrL&V]'鏭^ :~]@o?Yoz爋, Jvr{+ khܨiBwwG9TJtvQ CA.6Wy(ẺSpxX?Fa5'Öj8;ۭdX,]+WsԨ!!j6mYZ*<ӽk5F#)xzxԓ\<7ڷkC"saQ8přFжu,?HKK`0ȩ.a4Z }E*m͝X a@ z^a5;8O%iP @ &4*vgb&@ O-z@ @"6@ @ xBQAw@ @x1Ka˾VA*h\<{q @ J;#&>6l3G@ QP>f$u@-@ ȃWqA (1'P=؉߂'bL x0@ C8hV]G^_So[" F`@;`2h It+ʚ@`یP ۪+ jRjh1`-F*[1Y3Rדe(n"H?;*f(72YH%3(կ>QXXVTn**=y7?4DžbqحR|d!#5p$RBBsYZL5Xe 7Ң80JaJD!挒߂֩4*@B< cMJƚj$9?\d0ef37nqIMƕ+ȝ4&=ĮKFke''ժVYPecObEPd\0Fp#-)Rƥ".MI ]MLZ7Ң0ZjX Co0PFI}VPv-/.>cOҧW" kRJOgZ$kf`(șzdO CvddE'5R ę4RF&3)9sNJ턤kx{y!)(M:VUV+&ĵHj֬ű7(_@ oxѰtk  KN g -v_ <5>sHGg(R)sYhU+Sƹ\^]f>dٟ<}պ=ЍbҥN:CZZa)mG [z;J!)(ZBC]C4b𪇋 BɒI.!bco;X46п߳0e<==Yܹ˚uyuK6e/W+ 6m[jNWV-hݪEa+#^WP :- 5qou*d91JuHy#IhVIJJIĠw:t!=& X-F@0{#< <ӻ??GB-mIMM#,*̼K06YOlڼ)?A~oEaix+C_YsZ' 11oܾ}?OlTo27 ]5k7ҸQs{?n`?ҹ#z&OqoT&EJXV>V5ٱk7{>Cjjz ,˄^!%Pd/.xNJ%`@IJj*)(~9Ycd|Ŷ8ADGgԈ&ӧMAe-_E\|< nӫG7ڵmm{{#t Ycҕ$'š1Ծhb$ W΢xkf: g !O *~O"-1 ɈB!֠sï e*{M Dx}H.^̾x}HV+Ӧ(LǦh֤ףHIIetڙU*S?o>:Oe *WD- ef$%%mصsnRݺvXl+1c' eTRQ-XT$J͍+Jbb"^^^x{{EzZqII/ ЗoC|@è1ot1 rX>] ԁsPGH}i)5mڎ@ ({ : A܄QN\ϫT#&&N퉊 (#/OJر~6ӦвS\_q \\;o_~5)?Ogشy+ѱL|m eʔ;==۷r]||iղ9Zf9#CϏJEbb2={vefܵ1/(Uʏ~ }{yW|WL2 ///-XL)??]e-܈gnB||s.zr_}؞Ztdde4Z ׯG18r8{>eq?͢y8dvȮxq@6oNhhyk\ x}-Z+aL}]uHIIaOL델x~mHMKs7#)RFRE"#عkh;@B,7R8䆓JVe053)wSP(rS.*+k0_k֮į`[ɫV ԣz@5vGF pqɒKP#׽[Ĭ,Y;~|ILLdtIо ~!l(UWƹS )&S+T*Dr>؋K'rvSQ4>d'M,л s1 IDATpаA=f4+ e'mwrҪeszωSֵ3*snSl"#3`&~0>]p^1o:?-g`Ǯ~sǭ4M`0`٩p`2p8cُk@oCQƎMnns߃q~aXП­ٶ+]K521Gfuwo;L^~q%+7_s'>&:3N?3;o'{dy23`,>SfNYgAIi@:jd&#Rvt癧_Lsc_~~'xߐԟO_(*:9##8VPg""8ɱ3Ր9*ʈ M :$4M6l_'M޽|0jd&K{Ӎj|zc Lggrβo~T PB"$s29Xl2y6qZ[=r6_(QCb &1N6; #mhkOKv& ΄x232شٹx~BLL4O?<'&&x;l% #((ʺ_2nlsf5֧-?ߴD&Uι眅l \$݋H$,?lc/^XFqqk7i̓O<ʎ9k\p2xa̟'冟_@xx83O5sݵ?|\p9ܵ1Ξ\w-zySd Mw=vɓ&=e2vi7ZG.@贅}?P\_@m eaws[9f³@CՁ``>7.Yv5{V_v3rF띖JB|<>6uuI}}!dl~Ϲs}s)*tvv wPݐݻZ~?ii)WTgG!'[- ygm#haK4a벒9KװoyW.K|v3mZ[[yU⦟kw~ ͝>snfϚSxg`8kt>: ڼak~`mX󿦣#%tV`-< ysg1)88{G`lvuA7U=?Av/ꦊh$&&aÆqjjj%!!Vm}/O2?\~ޓVgg']]]}fk{x{g'e凹kj?0;g׫!yygs}' ώB5F7x#9: 'n'JuyY/z 嫩h+áR>_;Q3\\{O83HgGLA~ҫv}ET歭9x?3qEs^|̃s1\w;~5}#v#h䊫~vr{a~>Î$o>, 41\;4ؗ% =vNx ]k[hb^yTUQ[kfH i;;vGGՊ0|].pΡ52@yaV3M_j=g3af/:#т(G7{mso/MڶBvU?gVva9uݛNJJ2AAA̜17Lweـ3`Ԗ,# 㨩agwwQۧIhim96k&Nدz7U__rS9AJK˨.Ӡ9Pz&gf^%(o*s!&[ͱQQc1WM$NY8ysg{v7BCC=?MpP6jk~FRROk۹v\R ܐ'B/Vl-V;iɊBLHZ Sk -ir~aoqq\|T{8'IZZ*Wp-S.`̘\~DFFP[{vs`2sgsSY8.gLpp0眽 ;ŋNՒ:\tywΙL{r]]mۂb01(!L( J cP]uN.Nfٶ^%Q\B~R"⩫E{['h M4Էckj$b+?%nbeVW̳/AQ1}*~g/g_`߾f朳|rX~l6nQ__8j hii)O_O֐1xK44qW>\~+J˯R\RJJpƏIϽHMM-o sҲrvf䉬Y "((iS¨Q#عM3Wٸ+V+'N><ط/ƌd21nlOx7_2jT& ]^׬Y+ܵB̞릪*U5DEFىC[h4jkvTU%&&x^3zVUX+8b$#r4q5QgʶR[r<ڻ~_-[歷CUU|nf3ñ[P\Rƺ_'22ӲyoϲfzzL4;sxoPq s?޷W_#u̟?;rL }o f/R]SCB|m}y>DG;{O.̟7Vorg/lz"""\|~ c9"W_ /8V󉋍Վ|Ԓ>$Pgg0 !ɨU,ܜ:艪 0"2OY!ZQPP][,Tඤ~ Fd=rЩj߾|v2RVJ OЀTDA/0DFy͍#<ggg-nV7FᠡE1: 1)SO͞[CwP(S/* nx䒁57`0(CT{{;6!]GUU!޺))-l2<ܣ{X?FcC#Q>ǫJcSP\,~do6=k_?ACC#11B{){ގ`ε׭B0>9t66Ǝ"hݟQUU]F c~EJ0A# 5ށJtgGUU zG{TI%}tww(Vgk[ag{?ok ~9}ywyy|P话8Y>;M!NFEG_Ja>}mأec&"y/ЈbP!`1{O. E}6އǐ3.EУ81%a5N{7q]Lf3Ş=-kefP*cI{(u BCC;Bq 8`믗Wknh=wV(j6?ضݑ(f* Ȉ%2{khlblY6]IR3V"'h~3ǸM'{T䱾9&{!8)oHr}vd6qϏB!Bkv2kk%B!$lv!B!Ih:T&M۫^6!B!8V1vi%`B!Bchz$GB!B$`B!BlB!BqM!B!e~ !B!ķ $hM!B!%AZAlB!B--8+hu؄B![wז6!B!8AI&B!'( ؄B!%s؄B!! ZlmVBUU*Pd$` V(mˈIÈK'K9v(B!OMXV&((8mAAA(>EO]-X{f4}q8tww{m0ԧn X,aՅ}ӻL\6f3fs-L&2F"k8jkj؝[{;qXVۭd謱TWFE!1)S(s%@V.Z-ő#"0L456KdM455n݊db`py{\r51rhƎ@[k+;CC}= [p KK9PX@dd} F#III$&jy &+;tѯ^s(ǘdgP(#_;U@#eJr#'B!6m ,,%gݝCA>6Ӧ`X'v5rhF#vl'%5)SamkױX,a'mdca%,,ԴTWeF,08lBB\m۳}{lLΞ՟4ÇfW/5v,rsvBTUUkvkNWW'sv;}tΙ#Gp8(->Dss3[eacbhlh **Ys Z @c\~߼nyT3מ:S٥bMX>_ܴxzgDN#N%xK:X-iiB!8IJ)S0CEa)./ARFC=tvvbka01;FrJ ŇRS]Ḛa>4 +,a3QĩNj̝OXH 1isֶ6*+*8R[CݑZOHj3`jkkof sy@naa4D-MZ0If2T*++hmm~vt{&9'Q2328LbRR]{,6& (`<+v9ԳAQsuT'^w! }] @N+zRe-aG]9Hs#"&i'OJdwB!wGOWߙȑZvFmu L>h}mmRUYAtt ÓSƈ"#s$ ԸH]coCGָv;6|cpIDd$Gjk./ctj=O@۾*>2p)G̹w>{*ko}/ t9N{ThWhy|s2DW DŽcӅ*B!Hl6]]]>iڜ#"#.;,,Fg7 \Bdk=}Ktj[;>[Vms7~j!.>QQ@j[P1LDk<9sXd~>$v{mZ cއ̷닶lK6;"]tϹ;rT3_7ι޹^AIN6=h!Bq!<<UUxMMeĈ %1i8q@))XhnnpQCkámK17Qq@ RBB-g !#s$%Ň8\^FxDqq8JK_˩N'fذ|݅i3f@;q񴵶uf_2<9e@b;Z۫^U/YvՀv[yKm\6'G/ g>ZM^BVW҄B!wIuU[6ols󛆿UU}" TUd2yohZ1iFWgPMGՆ.V+ jsO]{,7g+<<۫^ MRrMU~ל*AGFg2tu׳H!B!;)66ٌn#gRRPUQڂ*!{go!!!BX,G-((#99 lyh,g!.-nSvF{ؐS29PhWS~ʶ=d%a.XD]!B|s).>bµ,Bc /TCL/HrLQShh`KINflwu=Dҧ{%h); -'B!,aaL8x7CĎ{,! z1mGEMEKm5l+oԩGo8\%|z96huk*P)'bu`jeٳI)B!88$,.>yj3E/SRo{S6.d1b>FNj3hiu(ly32&meUރT9V>:[8ؐc;[!B)6NVgPiJmć pwf浠~Sk]Uc` d`6{d*x<ؘǮM>ۍ MQ a 6]snکw}+u !B!ÆO.}a~Ya( ~`핯ޥwFҖ=4*lHƜp7NᐝTjFd\4:7q1.w?t1wvLB!BD9-d5mPᲬSY<~nۻ|Q[7sK㳯9‚+=|k,=˷EBӛccMXp>%\? ut::&Ǵ=oӏi=nE %B!ĉ`MVQ 䚭]쫶7reEox#I2`2ȖۺW?>n1dp*l(L>o۽3EzϿC=1[FLsm;ņ&rJڹ~oKy=B!B|WiRa{'Sz xK ]kᛪ"C(+ TxV!y3/C>+sκ#ǹOϔ9!ػm7iUAYs.+ml&{OVle[TY_u[2dOVW~kUwy{<^!BaC%sS5-#8@tY}węhC6sT$ڼhFLOP1Q3,k4#%:ON_>rb(+`Sv??o֎f_ A;WQDdϾ#Ɍ/g.gll6.+ ?%`ܮ|R,:v 8#nGA0x1H qҭ@KG#ttw0)~&R^͖5l=K P\~jrlι̑PkwWk._gRs_fX*Z)t9kO(m:g"ΟsP~صo'w1jwp)2/u)Oow qդ[X&.VWfcuB!8>$kjͪg1D1cJVYxto`Gy^Ǟ1zN@#̱Dde9]}HԥDc 猌KH O`_vzzҭ{JZ{dK2/Ղ5xp8v+.B,q Ȟ8>-X8{IKau* <{jт5 ^A94ĂԳ?C|B!6<8~t= G'Y{ZLδkwz줔1IP=%Dtd㕽OҞ>[f{dI)g^`I>ύJZh*Zg8\KYJڥq$P)juL422ϟ[g?g]B!B| nHdOETH:85a:zn*hLJD'RSHFCz,}x+9V\FCtܵh-Û T3=bѤ \C,t8uG'M!B)MN.шnm6ú.bB",PgsڶeF$gdL旋S;U2TT` N%ڹIy(Jm-cK,pMz.9".g`d4cT~B!7}v/-K߳ɹ_vJ#t5Iw6oӲ7go;յA:>$7"Lckg+!A}:4=58n }2;v4)B!]`]5^=$vZ_@bnB\x}SjT{EO)Rxa**'최(0RuY[MuF!_WP;*\B! ,`Ӻ4~>x `ib_%9}C0O֐᢬`u*l1?rC۹n]m"/~&{Ͼ].]B!B| "_K CF+;oO{Κ>H<޺.l41**VڻZs諘 eQUex 7Ey;GN?75l u;r3)jO?FgK]TqN Ʈͼ5Za^rp!?!B!'2SpeH.{C%MEh~$'C~.nBmh?\::n~crbŦwyla ܳN3(F],7^+o?K)KJD: &£g]+3Rgq묇|`Z 8x,#(K;r ۹w  _"=j M8K`/B!il9l^]Y>Bo4wWFs^Qڏ֓:=RFbU8UоA t+WN:m$z8{IK|Y+aTGhIIA\;.-JxKxEY?1?Jhτ&B!B| z2C8H?=8R]=s.a,F%QL=fcȀX#a[(B!Ms]/6gޙ6-Є#9c]u ǣ7^yϥE6YB!8MaDt3OM)@tX0m'̀6<8-sڻ[o:wp@<=l%caN v2B!BH/#3kiW>ЀMՆQ#v"i}vUk}ubjSy2ki3ex,!B! TFӦ67|}hIETճM[!M}=gM(e+n|] B!ĉ`p밹籹ŽqD4-.4#HoVrt;;w_sRkB!B d#_"!ə/,d̦it+gxt[:n,=w(u !B!ĉ Mu'%ps'qozPTgIZPh[m[sgp:K>!B!6 nH$x *}z(I}mNIBum(\uZXK\{IRIh.ݿB!B <&}9y=^YMb‚rpgEENԂ&w P ʴg.m=^1j =r !B!N@[8!R@Qx}ϧ}1 ׿Mm@Q{ =$ 1y T]) B!B-'mw/rг Lb8K*S=.i EӖ=nߑvvzL4'GBYjG}zOփٷz̞#k Ӈ[7;y!?'έgtܤM!Bq"6Cu\01GNEc",\yt}*O{WϻyG6;CjN6s8:f1S<) x !B!vtY"?YLILHr,vTTnG]"|ͧ_wv֔~Ԙ^ӃQظ#֓%DQ.ϴHvI09e,2u[9VBi^w$(I)B!'6m죟7wԦjsGcQ2\ůs?!<$l@շtg(iک+[Yp;5Ljwn;ٟʷي M1E!B!6}{}H\=]sޖmKS@~Ol}\e3fLbfUzyrHTAk^/DlB!BQ/Mr-T'$q'1X8>M)&Z,YªV[и>|3xK퉹+huأ~ 9)B!8 .dt?pN?=vmݽV;;j}o8bzB!B|æ%Q}:TWHm1m]S HqaPj&.e\)6蚣UziD6*tH!B!ĉ #^sӿc*S^ʳ>oaxo:s  [)=gPܓ|9\;sB!)//gǎ`Zws3z)ӆf3AlE$Gq06z!q>B!B_;v`޼yLݔc*!ZEr'?xh) eXO,c!MZ̸QM$"4f{-u>Ne{NT[ӟ{}6El଑?|ꨫ'+knB!MMM />8_8oW{$9dT2 -..pJ^> |ҙc4#?mXJgEtv[9o'?&448J!Boj=iA)ދiSq\O BtSʜEe/gs\;z$!j D39~ ӓd<1v|-rrrO~Ljj*// ~z B!8]h;Y3Jzdl)ϻNUR;l 2İQDA%Qȕ+{?Lc{7Mn㷼WÏ}eB!'A'KKBX~p﫯ŝl )l4 DoI'ޒxbfgʕre_J;pUj$j:tPYQ"""0a@MmsfHLq.@DD--->ձq Fk]ƍ^颋.cJ>MFF&-[}6Z[[IMMe3IJJݻE< g޲+gϞ9p`?c1S^^w`4wIIIP_>.7o6mN[ @lluuG2FEڶlS<ӿii#>}@? nys"#"}}NRSS<^ɓ0rAS?y3~A_2}bccmܸ;ccÆ }}Vχ۷><o{o ]`H?]Y3z5=2Kzlw̅#HάKX~=W_-_3^qwsZULM\JJDw2Xy'7o.t KZ`6\mFhh(o`n/fm/˗SXPk}vX|9o6!!!a OI cgbr}&S0MMMXkӦزe ݼ曬XR:;_r[hhvva/;hiioⷿАPfϞ͞{Kxw=hlld3.7pgc唗 B\넄5kyGתУOIcXKпﻺX|9/`WWsnl6AAA>gW>{Jk=544Ԣջ;'#<9sټyq^߽WSϨ>: ʊn== IDAT5kY|9EEE[y'ټiS@Um_{ {o}x,~B|6,4'cOݣwמ=oጪIg`6L[F6ℝo6V|B$gZ;U6X]w+o^blڴ3g38cilh?CVVƏc ̞3Ghin!2*:J233''~_b2غe+TTTr3vDDDt陼jO?Ϻ.Bϟ_Maa!/fҤɬ[v(.khy5ڿ֣>Ȏ۹9sXtn˖9{3ݻy@ZZf͢A]=z4& _~g}Y1cƐy(]|ż֛j좭 UUٶ.< \{u 6'0ydƍs&ӦO'99#lڼ?=g)7YPe`і-[95͛61sLRRR|itSULBB7oa_'+s(„ O5sCGq˭]m`@@Y Swr*W]u%y ϟ_'?nӟj7|xa„ _v>G{`رlݺٳgp)HOn?y Z~oj- |c.W/wλRU$y/HM@F4fj l,i))cO`o#jxlSƼys=bL0;vՋm˖8m"."f3K.-_}zǜq51.R222믓wڣ??ٳ ,k~3.b 㬳zZ7 ,‹ZNb0&MDbb"k׬\f K,`1kll6{`ㆍ\tEw On;ছnuhϷ=k4ω`ޗw&22ݬxu]Hcc#v‹ >*~pJ՛gh?5r( 5azwCtt4?_`A]ޯޞ7ont j0m4ڞ>|>ao@B fȥy_,~&376iA;0;%joq9s,"Or\IMMsne]ܹs]宜] ꫯxX~yk^s=`S0w,_tv~nꊈ (B]]/[n`ɘ1>{NCN.Oy]]]+(7 nbPXd)UUUZ[֬ysغu+7n`ٲ+wxnz%*(R&]H"VTz6" *H*X($t0 $H }7dɒf!hfgΜΙ3s ^豣lRYz=ӧOF͚t^ef[1e?1Ǟz{.~+]z ZVNǘѣOIJJN{3ҩS'hԸqrV ^}$-t5 ?_|NQF:uh֭8>cƌח} غe oL.ѣܱw <}}Yz=+Vӓɓ_o2 <ơ$0{ph4DFEo^Hedme8J[ ;fĘ_fM?jUzQŧtJ 7.Q'J\n}Y^{uϝU*ݻwGѰ~~ڳn]Y|,IJeKk~THK*-Ga72`@Ԇ cn47n[ 򫯽֭ۨR Ӧ}HTdduz+:*3#>ٻ'tyG,mA&MdoJœO> oʉ'8ld222OemRx_u{4FJsl^^Z9s>0}ǎVuw[V2d(?nj̞5W*8p}i4m *ː\LG80%m9}aoj\O3W鶲VIaP]^h۫Plc+{U׮h4AV'3dP4hˍӺw7\Qݹc;-ʨ'o.ZO>[Wi9r=zyIz- :P~~~a^G;SR̟t*~~~EQ E^vU+Wޗ! n^ϺkiPW}!ٰ~=+V4yޚQ.+VE˖:uJ*QF zq` mҵkWj\pwwgWj|ŗ]KIaeTXcX\'ӓ}Z?5[~M;/z]t W%CBB^NKZRT ܺuZٔZ?g | ϳR{1*~իWm͛7  cNtر#iiiy{y%jĐjVNNiT n]~ SNc[o)Q=[8;^L:x7`߾$'kș3g1meIiJ])i{n 0pmQj\=y&nŋXr)))TVf2PxܼV$=z}'g͚l߾ggg۷`鯿2'sr͜W_8VIlݲ$Fd={W_-` C^:GaÆLy0?͘ւ/͍onj4h =}#F2nˬXg{NA׿U+ٹsNNN3|LݵsNqXhcPAi޼,O>$- uV^ukQUxzxc7K(Wm۶o~|n#G 4rqh9 |{#g67,x?66Vy-%'˧|´wǏ`Yq~ CSjUZ*͚e:Gة,O^Խ=0}oQm'n޼-?-z19&# Fڷ/,`ܹzYիNڵGДqv[]17Yb|,YB•+ԭ[&m(me-\~j=]qjom!tl}Nq]Lv· taڔ<~4̿jy<t|χ/kt:W\֭[+ W86 Z-z OItIKK%==???|};>Ma1E@@@6,qsۧ$iҬJZmo0`=1$"τӰc=yئ.e5aB!BRPTic a"&??^O^^q*ة 'B!ʮn5ZjZm2߽"BاHMӑV%//8~_}B!W쌋 NNN89991vz=hxyyデ*B!x0tIOO'33<8999%%NHF;xxxxB!l(x___INN&''WWW\]]isL!J W[Z-oooJB!CÃjժ@ffC^sL!@ 'vwwI!DVSre5r)DɩZ-z@ّB!aj5Pӕ8͂kr)Dɨ牅B!<<<"??a69䌗:|||J3B!y{{G,I sL!Ja+B!lTa+p M!``XB!(ۜQT%t 9wEP!BA^_N[S=H!B!( !Bp#BHM!BtaB!B2J:lB!BQFIM!B!( !B!D%6!B!(&B!et؄B!B!BQaB!B2J:lB!BQFIM!BtΆx8vB!(rrrLU*IHH`n,[Rɇx8HM!B>uR;~8ٴmeK#Y'Ab"ܹ~cǎIPP;wa/^glݺ$tz=֣Uh+\]x"i/ٻgA8,\u ̄c„T`(,V=G}Q\%Of'ӣ Vݳg7Ұ;=1_~:}5hPyZ<١?ދ:li{una_xp\]] ׷ Y Jö)r ׎1fܩ?sL}nڅ+^';/(HEJf-/^  q&xzz+WAVfiѢs9QQPQn]Bj 11VKժU9~ cGt8q+W/OVT[Y*Uvk׮ӠABBB\zTbŊhZ)))PfM<<>>gggsMR EbYiI K|R,ڵkܸqu̯뉊$(hqұDi5ŭzɉʕ+KHHť}w;es_gӤq8|[Lt4W\IӦ鮮4jԐ?_{QWsrrVh4IS<|Jö:UjgY+-d cuڅ}6s"f2ٽlګV$""Kx"VXNݺp'e7oΌ3-uX+BBBpqu%:*Uhbnz8;;Ō3_|d \FR 4 0W'OܹկOܥ8\]]7 jժ%KCӓ1113#F]vFW\~={hAAAVo)vk֬1NOMM#/OKBB|)1bشq#ggywTR]+{C֭[ŕ+Wpss#11gggbcc=f #GrH|zqcǒL:ub|vV͛7֮5[gz{yzꑞNR4ϘO6RfMvJi¸cHKK#$6_ݺnZ֮^IpHNN6#ʕ=O:wf]ۻ~ _<)+[6Kt*[r&FȅQMbŊL6.O=e^x5mv<׫Դ4F+0q,cǎb*֬,<^u ^<}\m IDATrj"7lRJ0qxk}ONvv尷NbҤW2t(`8QOhӦ;&3bH=%|klza&/ `.vyzwޞŒiժ?n߁3;w`ڇ2lpVj1JҸ߻YW%w;gmqqyw*zoee 4+J$摛~߿>EߍQ{%mc7m%mZ-[%331_͛7QBEeef̓uXsnoCٸa}U;w˜1c ‘JK_0Jg$to]'$$]zxxxŋ~:͚7c 4OOO*T`Aj>`K/&66H尷 |'?}#((~cq{c.O3@R_&--Fp} feS7{[za˶VD ੧Fp…bס4j߿A____ fS5suVi :m[2x 9/ST%,, 0j֬I.]8fP7w> <ƌ˄|NOIRSZMٽk Sq:%)Ɩc7mkmF~cРn6lx,V䯿AG "2^'::Z?ꓗMٲuӧ(bBar1\Ԧ['S{ gˋ,^kмE ڷ]Ox̉boJFzz/M-PZ54 un?TN]ߗiРAVW_nذ!#o_EYfwjժ˗KƮ@PPߞ;Aw{ܾ⚛[l~MioaJꕣ-"(ROZy!E{3GEk+e*:9),֮]֭[LZJ `x9~9sZ~ּ8r-Zޫzjѿp^ a+ሶ\zҘѓ˗N֭9xv){lewcˣF&ոxx?77, 91aDfϞņ֭;˗g-\MLr r"t ΛoqC Xk ~/Z\`/6?NwPÝnSr72]ZB1]o<)̞XP4v°Ҳ)=-LIre[X<^9(/KѼ9&*{ \uS^n4mִ|*&++Б 7ߢiӦdddp\ G/8b]6^^^^6mum:4իWQڹ֭[sڶkglDi:Rfkm-7?{Nlum}i[P0H]]T5kVx"y{郻,>{Q|yRRRxLz;gϜ!-5:uR8_o|<|ɧf۽k5ܳ=ի=`{?lٳ9tc3y7(AGՏug"6oj1vfb7*5zW |YZj30/,33x&ɨbgN)v'h8Ov8opiN2Y_k{`\;#8QQQ{y+Zmx#ٲZr}˜@|||8s =(KVZ۷THHH0>h9Oʵ5Ͳ`V7B˖-quuiӦY4k|g3ZhpB)GOuHiLzys=?+Z[cf˱˓4.Ělִ B ;zav'ʦ!C2dPw֍]Jnn.+V/^ॗFΝDղo^>߸xqw[EUwN:>,GS\me.EӐ`u|vudP`݊!q2/+~-99͛5 Q+Wgn4 YSN.JŐCؼiv$??^ODD/^Zw>lܸaK.`RfM尧 h4ϟGvv{SjU.^3gHLL$=_lJfk|f^9r{maeZ^Xvgo`GGGjJEwݙ>m z>mnnnt#c`Jblܰ?V o޼T㼭BCٳg7 64ٳݳGyp\pqqaGhղ%cnjܹ':dKL;wNcw)Wڵ+{lg=4i܄G9yPX;CX{mJ||Zy{yG:=k3g@VV;o~'~eD\\\ͥUPM@fQTtdՕiӦSJŧgg  gfذጟ0/l{q5XWr[d2g̘\r#OOO5j~e7o͜I^w>Zzu̝qt ŅիglݲBqknWl$MG '''>̞5qcŗ |PZLJ:o> X,Sf%m=oF₿?^zf,qJ :\M._/^Lzz:͛^g[o7؄Y͚5ӓk))̟?Feɒ2mߎ^Pm^F߸y(uԱ>=IbFW3uh"u6s?]~W E\\~E^&''8jUp-/_ rZi~Hrr ZhkՍ$ZkeSלꕣǽիWIOOFv%&&#ڽǥKj T!Q}PZS{)̶5Þc)˗ɡ#w爴mcv>x6R?]LL NNN[N瓝N+ee={lѴISg{Bsa6}'\eoټ~Ma+ًZ~ ׀>-15g3d#00惺'?%&C+[k尧*Vhmk_l)Ҹ_sWr[8:*U2ynQ+p/9;;;eeut>!GԞtYI[co9=(d$/K]ӧ ͍'NhBz) jժew!JKֲl{!B\V9vwqqSN. !e&Ih$GaJi$BA*";;???ywMp;-DJ&B-!xPB!B!̓B!BQaB!B2J:lB!BQF[ZZIIIh}븑LZε=em瓔ĵbG8S:%HJJz GQ+i-9}4S>~8/%s۬7HJ Ope}?BLhX|۶mZJ G|ѨTwk~Ɇ]EvGK;;q-*glZʆ>_d2o\vINN`(tƍ3wqeY~L'`XK^bСʲlR6_=?(i٭ٳg7<6-믿puk:{?D۶mm/Of'ӣ 4=%ϯzd]i܁M^#.^{=,RڍӦMhР 64~4kڌzR΄#۷8MGy6mT9wJÖ+L"2"Q^]vxyywm[|2f͚]dD;3P.{tZLn>i5n;N~̥Ѽyt3iXW ) y:-\e24k S]?Kh+Cطo]$YDFFd7ԮMDDDnN.6F1JZvkzM]l^?$yE6GS[۬_p3JQ'O;s4CM*trz,ϯc~=,y. G{”XJ`Zv ?߿HmʕtCb]\MJfpѢVkp1.ZL-hٲ/_6\ttͳe2t:'N ӪU(nnnjTZǏȿ;v˫HZ"qsla@qG#Sh_m9X9Ӽr{n4'u]6I+WAVfiѢ%juO*ݮ޽Э[7<h׮IzJܹڴiCf uڵkܸqu,뉊$(V~9PnݺԮ X>8;/J*ڵ4hЀZe8[˳^t3s@v9Ӷ/wyyyҸq<==Kɾ[nW\Ic|`1aci]tT JŋHNNۛڵklNGLt4ԩ[o7$//(E@@ժU3Y_BBW\Ǜu뙴ijZbbbZ*qu}Q:m-͛op%?ߏÇ0(.P7[vv6v2''[nNڵkTXѸ.FCdd$Bzm۶mVjnݺū's\ 'R.̛j%K|2jD '˅>fڙ2g:S?rqsr'K.fFu,\!!!EժUYxqe&'')ʋiҴ);oZJ v*c-.3q6nLՍ?~qcǰjWIsrrxߨ[DGG1cL:t:Ö`e.ǡɉFÈ#صk'h4>x=zCoժ&[ll,N~M#==iL1'xBzAYf\ 8;;1c9r1ƍCZZ!!bt֕ukײv9s͇Ӧt/ Y)]Y.lDh5>4 ЯKfu~+7Vٻ+O!!"*˸9S|*d8p:IJLmǫ"eɏW+RR٧&wڀkbIc/ÉM#._EG^Eru#~E]/ZĊ˩[_L͙1cxY<^4zkoݰW\Ic|[~b,NnDtDFFR[xyyૅBr刉aԩcG&2 | 6˗S^=N8?5_`i8q*+_-\DŊi֮ӧ)WL6H232PT,_oooEc[[89wرcǍȑ#LyMZ?񩩈Yv|r""Yr~{  Օ'PᮿN|+x׍덍efj>}&L;N%??!gn=|wY6޵\jשPl֬YsҸt5j ,,ڵ N{q8{pXDf~'ȷ;59Sj&_ej}0J ǸK%228o``  .6},?zg0ʉΏeoF8dGOիAZZ/^4kޜ-fbv}7x7HOł_2fh߾i|:tY>)S;}'sf-.jnݻ{.{f999ؿ=z*NGiر}; 2y ӓ *VRG4|}#((~cSl<ƌ˄'Z:m[2x &/?:1TZUf<1xh4\p0ѯKrT'7sow+Trqi5n; Ы n5.ތ&iySBGw Z=[{놣󪴍6X IDAT)6A8^lXء)89tф%::hpssٳ4ziݙØNV%9t'kVfeh4DFE,߭{wئ͚jp1ɉƍw{ %ݧ-]ؕ%{vot4}4ѣ/qӨQ#ŋ8E1\ 3ns!6+W]%UwÉ';IV%;;ٳgױS-s4 uj1^ RZ5 %^.+tdjo\k=φŜHS™f^+(fΘNLL no-UVӿ@VVObƯ7@:wl|,X%]vo~kێ1c0iD|///px\zɊ uF4aZN_t0.NZmxbŊ|g]e˖R\9ƌKpuj5+W4Y^z===YPOܺu'|ooo=~xV& +$߆r42~]]{yNғE) ^Nswޔ=f őÇ ٳ>ΛoWzmIꆵ*砼6qd *h2-;;T*V㏷ېǏ?ncik{_i[qa8N˹{4E>4 mi+WZn:*ں5TZ5kVK͚hW@~~>ׯ_7yʩ$J=z䯿$::ׯ_92O6~a$Zv@T~'JlE~vfӥV??S{jV6233.Z.Ϝ>cuْlWggg\\^ U23&\2 ."!1z#Ft%.=z\pGңG1We ߿3fh.^hP>RШQ"JPB=j2=<<ȼ^>2xZIޔQ*`kVћmӵ'>>l0wyp,W>zNGiܸ1C=uًJ鈿}W8))6o.I1jAd-m~hذ!yyرրakך>^F jժŲeK߾SRa6|8jbĉڵ7oj9s>ҠVݻ7n0>z%,PWxͻ hu>c;Y| EfE}=:N&Y߭TۧLxxxǞݻh4fjN:iJĉ=ܸq0tΝÍ7xʔgNز=瓐zÇtԖtNԩR\9*!Cy&vI~~>zRZ?\4 #;;UVŋ=sD̏fѪeKƎùs1 >6j 7o"55UQ% _s&$\U*5ʶ;퉏h^=|ld~q7oh\r{KJ򪤞P(hGcJqo<]vc Cygt?駟ﶤ$'3셡݋2aL8xv쏹q]~S]h ;#G d#9|9}{Kx ggg7o+unp:,ZaST̘=qHJ}Xwww,ٳM5mڔ'b F1 ʤKVL>îܝ=Fk<8^lCEO |2WL6Ӧ}ȿZM-b׭tنU*z_&LSO?m\F|9NǢE ;w* wwwĿ;vd |Nt:5LJ:o> ht} hΚ3PըjΛof͚Rȹ2mtTbgg  gfذጟPɉ!gbر|4hCc޼̚...P^=-I6gСjrzbi޼:SzӤ.=׫+_ z%>ygvySN%&WhͱZk'ŀG_fTw̦Λ,懽KnޝZ\@/;ã;s7;3֟YG'_ʆb@Bd~yyxW{ +:8xlHnq&Җb]]|CyUKN X|9NNNoWeM\Kr*T*yxgINNޞƍ_б#Jbb"j'ooo>]L23hԨ[8_n17V6+++N /ԩS)(,yı?^yŸ-4ω&fW۬*WUUsѳg/c]* ov}KBB9 -bmR OIѐOqQ1~`ڐKRb"hT򯓜ͣO|߇u:#ƍ8s47l4B_UүILL$//'''6mZJrÙV~=BI-,(qev5wMŒx,){QQׯ_J7 ˖.%55O>]kX߿BU_Z-qqqh5|tmoѲU+ǯ:y*ڨ/akH̏X[S3\俪kύBWԴ*mѸ{D,婳IοގʑJFFWVsnɫ\nci[Tѵ볡 {{{gtT*z}r :tik{a+0`!ruu5L[[hDk ޼3sV3ZM"U`Uёv}*掫R@phٗƵk]#Gš֋%XRv{{JVWlmm]gkإsEwΝcݺ<ޘ9fiQ_F6Zikn쬕ִbLmunpuǥQvMrjI;-.-e) Gz`ׯ/^-i_ඤs{dYj4|RncccàAxŗ4Mm )C< B6nTY/XP?7}?JU{S46mcĶH\ &q7rqqUi Bmm>AMMAAm޼ O>)+ܝx{t9̨QMAAɽK\k0ق   w#I;w MAAN]:IOO'++"  P#5yX+]lAaSTlܰ} 7τQ*o=W=>>ݻs)_K^%s/5΃# >GAAq|  Fw_$++ ^_YAÖO||< R~RIN?zTظZ=܃Wmtl Gi'p(}@۷o,[ www& ÖW7WrssNNNuI/( _nR n[ѣGGGy\\\C  Ԓ;___. s),6my^"##Q6%t:8|0g}ggg& 6zy}8]!_??6mʑ#G5|z ͛7f- ~:N5=z` >{{{&MXMAjU,Z*ưo)̚=aQsYϒcw<5rpt$0 {_o}gKᮤj E5|p6mij>/BQQ& pWa3GϞrP}gCᮥjXYYaeee6n8>}:[laРAى6AA]1K P?J{Jz:uꄓNNN̞=,L™3g* PMA[kL6ӧ~zΝVVV`DAyY"AHHH`رdgg3c -[54Loccm}gYA(1Kx%R_*>>~`ڷo'|gH 888T AAaA' 44YfR6mgZ3g0x`; fm޼ wq6A!Byꩧ֖.]'xbtAhh(bvHA;qm.rwq=l EJ%o&C% www$I^c̘1\tcNJ5AA&AelmmYp!VVVFczͶm8t?8}Q< B51l ŔJ%( 1;;;xzB z̩  D `jeaggWAOm9AAA@M{@<   &  @6AAAJ   4PMAA  zs!;6ܧQ*3t:VVV[}:x lx!W'zSCfVֶ6Z:l  ]0)I7?|PVmRTT//.ZTANb[ ѱ›oQ ۷El|111tNW|{X[caAA]+q=psT3SJ{222յ4ˆ4qrr^U׷Rnn.j// =U*yy);e4LJ%Ӆ Y9:t`[Se+3++++k8qFB0ƽ$!IƭP(|aAAڒoq>֫bOi޼9ׯ_gܹ 41l0233G1i ѣGLL4 >#+3k"y{J7lz-_mJV7ҹKؼ={Uxzz8 ǎٹkZjE#OO8??GƎ%&:X?ɓxxhKިlcQ\Ax qmܰF P* Ἲh1W^a)lGV;*+ ȫ׸;I   DDDHQQQRBB\ ҵkn=泳Kv*$ݨ2!=( 4PZv i萇4I$)55U:!}$Iz}$I#=0xP!^={HG$IN8!Ct$Io>7W*,(I$IұcKcF?,I$KC<$I$IU=쾪򑜜, 4PΖ$Io;Sy,_$IKz<4˒$IU4Ҵ%I6]RbolR1i6I$I'řMTi\a$Iw&6AAA)OGƎsgbccm Z-ׯq=}m_?\]]ڵ+a/ҤI i ֭Z=@V.y)M/ҡCKP*uT*%*R>jYGll\J-ՎTU|兄J׮]ctCBBje;oAAAC&Of<3{iit܅<==ܥ t! 0G*:vw8{,;uvW^Nt1"sg.^Hbb"{1]UGǎ9<=z5aooOAAsHHwnBNt҅/!]  B]Z^-3f$223f-X]>b Fa91o)q\A={wrpp 88}ywE cMtٰ}i 0Orr2YYr{ۂb2=Kqb ggm(/5#Qm۶,wNN4mڴ鄄^BaA!4[{~JJJBмysΜ9MRbUKVs r $BS$M ""YpZ->>tY:jڴ)s 0JKn8(yܹs$&$ȃUYf={$:t`.˟S׿&/?NeT;'7LyUOS^ez899;,VLşNff&m۶5 /IWl<=rүNQ1=7\G$=Nw{Obguk*ꔂx4z59'T6 {JʺDTe7FjҊ)I){{6Ws#ȸV۱1A^pq]ļX +늈ˉ[;lܒRO id_ZV xt{{u p;=lKHHNQF6w?ԩSjX:nja„ "=KXj..,]!\\\ӦNa7hٲ%[nʕ+|fX;;m۶ښpXA~+s йs^_d|ck~J@@6DӬY3֭_oxiƍ$$$`ggGRR"DGG3s,~z!L=T۴a :dڥչFeU]\\믽Ѯ];HIY[WTpu/h۶܈k׮,_6mȍ%T7dY<ӆ.77.ڵHڵo5nW|B<ʛ=ѣGOuY{\xf, d5 :۷}&oΫ:r''dz2ruDͫuɽV̝QQ̛7]wgϞٳ6<<bQ(cgeOF4qnʿq<`!*B?%C@v6v&EDDH!//O=Dڰa04l+ߖfLW[PZkFaåCö{Wzi4h@)<<ܰ@JOO$I4g$IӧNI>^FU!..N*,,4|ʒ>2Fxöo)"}wmm$ -uiã I$)''Gzl8GڵkUTMWIF 6n Oͭ4‚W/?l=%%rWi>ںհowI={t._lq7xC6t$I$T*iOIO<ᘖƵmWF3U)u,{t#I$K'qS>9aʖI%@y'Ist:iaڵſlRia9h|~Msv殣ʼBuR%I"MJz9~9if7o}|Ez`[s)ؾ}]uO 2kk/-[V3Ӻuk- WZmװiӶs1͚77P^9UҢE p-n Zr&JUxʽuu;׊Gɗ_|SѣGFVА!Χ%砹YN5m?ú>7]GI/LF+ypsB^al[ qtkKb~,iIj&\nN/(L1|v4^0d^ma/Er Jk"W(ue)ҦQJ[R u⊯/aLFrbzՉk^We:7C:mqrrm_q_4kf~ŋ^}Po0-s糜Kn!a:f˕g+ŭ:+cۛz(o>̍n$W[V",ezR*}=hAZmaE!ǏYaILLdذmVJk, )=Kvtr$;;(\LfF:}pԾ=f$66ܸq!C]4ZU]\\ 3M1.رSeQ,]/2Ԓu-*[Rk4i]\8ooo\\\x5.T^/ey{{əӧ:,/rW:xWkkŒG#Gӌ1F͝rүIa1]^~8ۺr9*ܪ,1W)֪ z ײhV˱1nvdRV_#]c<+07d9'Pɓ]k'r3DJ˱1^KQ rF[?M:VZp~?zZMaa!{a[ Ð4m֌X.dX:""ɓ%ڈ;S0O@+7*P(8i"$+WTx(a+ ^fϚŵk$K988O?ZFӱp|Rѣٱ}ndEDDuYoIP(2u*}FJ<߽[*T~/99%djWqss3dҨ|Gqq1jի?BR1|)Jƌy]1qqq|t03)5L0;f=ܸq`3^Ǭ,/rW:s<˫5PNbIx^ŋpss#4OiI;_C1 ၓgp#7νMW>4b>=b]g`q%qsv՗q*}[)ΨQ^ 1krKkqQvY:xp./.s-+mak*O|}3%cE'iȼku^ ǰAU,Z `)̚=FpQsdʷvڙ\,ZӱqV,_EEExzz|ۆ,9^]tEP0x@sٲhڴf*FyP\\LHHwl]Դ.˛8ib6_O^^]v_?/dr 6syS>K@,@u;ȍŅ~qA 㲪O/|~u9ǰ> 9Hnq&Җb]]|CyF:zK@,@u;T7ڈ|~u9ǰ> 9$0b~$LU*YEi4siu?TjZs85E *Jڑf.+Lb,(֪w JaoZy(V4uieXpT],22+++-/)KӡR SKޚp5=[{}iް:yW(իׯt-5kmkHӹx"ݻwΎsKի/y'ԣ;|Ӕ}`t>: yFwn`̷4}ٹ$-N//'S+⾦2kX+ši>`^Fy9x|u[6l;;YEi n5ʼn<d( z5l,mMK7d!ha_gOgٟGǩd,c <0.hM[T=KJB^aRonދA-:6JBM>/Fn|z!i=|2Dl3gNݹ+f;'!7\C⊏xX NfHb/f'6;[Kylxgi֖!):?F`Չǫ|xdx9hZ>8"6_=ZٍMW,5Z1*{7SɅ KNee)$KtoҟaaJ ńpq_C'iȈc!&wz)neUhja`U\7{jfZA+6Y"˰ Y"AA6‘ؒf[Vω͉b y,6t JY~ʌG :21Wx(m f U&3G$"In6DV^)[SƶA%ӻ,b5 x1F+&([︖y օn~lJ;\J?Uv@Kb^,t(2T)De]{N6.؜asl]ƿ'|nFZa-7GHȋwwYe.g 4MÐg[jOmch) IDATd~L>B 8ٳgQT6\x,:ކNos8v}hA(^'33++%w(wzh[^vdQ'~i IQfM|pE{=:лCW$7.hkY^eZK&'f2l`v%:%?<{"6@ar9.n: zIRaʁh( nL~aE+d_a̵5ZMK~fr;kg[W|`ldcoK>d5"m!o_֯сN>=UG6zٵSq3gT5TQQQLw|M@wEx=\oWېo5l*_uю80M0&UTlܰ}W򚌗7τQ*o\roddd#c-NvEs~?Rԅ$\Ӣ^1l5h|\M~7`X)PPOvQ:~Q*,?>tgy/s'8^L)Zio|iH)Jas3ߙn KH[H*?!ia8ff˱ԩ߈ op7{B0fszBVGv^æUH0o7{V9t ֭%::%oaq6AjZiM3ֲ U K9NFa }U;mk?҇vq6l\ 빕gjk M]Zn Kڱiw,)hj;s6O2Um\pM[r>oR |6Hi'Iʿ']|CfqqFiS!KDe]ځξqLLUe@AGZ' T"2//G?T՜o/QQQe9w x4 $;vv%]dffҶm[%I"<*~xxxGDD=a_RRf͚q0p h47oΙ3IJL" 0KP'%S1E?'IO ((NK룼^BaA!4[{~y/#uQ ַ9K㊺vp(h۶-qM41l+..&::¹ÕWjЩS0[YeJ&-8t14q9gяn~}+*]SmEv5lM)UYPUmIʿNd 597#اҪe3{9ѫ9t/-ojX!}uFX\N&MNsH+|š֤(֪X<'"6De]bQfs.O4:5UayJ˘3gM@@ kVa!ؾu\[k"i׾=ckkGкuk7o.ݍ!gYljkq_k׎6{d&ߥ{;l\˺D|0mݪWvLjKvQ:/iIvbÙ nH|9޽=5jl{s~N:Z%0z&LXiϺnW|X:fm'u 7rZn^jjG7ujƨS$n+5;=W'qa~UwE,7k J?ޤ?m+,fu[btw9R ||RUX3l~wh7Ȭ06oOG"f^DLN8=?CTJAAfVX>\$v~ ???7w_ҽ;>>><6mzD֭[KxUvƍشi#o,yťs,XɹsgyubF ?/6of _P失(..fG#rss1 I .0&N{q} k׮jՊ=}/`=}GΝãG@vv6ӟ~/YTrɉO>̙3|exR,J,Ua!_~˖>h؞Z V}U&,^굊[CBbٱY|pEmI~':̡s @޵[盼ם^jM}([yeXKwNq& ~ח?ezEU<9yͺS/ϼE/GދL?wұYo[|[!6EnPYڑLFJO.V]_Y6:u/^4gn;QGKjz+1Gy;sbMMs̵'A.su-7/*¿]Baҭ-Fۚ41K/LF+7?'&Q۫8pm>'0 U2EB4TӢVEF[|el8ZM@㙔ڴ-AAA1/SNѣG>Z6Baa!۷ocϞt>7kbX_!eQZc+ҲeK[&>>y|':taÆo>4xpqb[DFF၍-yyxyy3W0WZZ*A UO>ׯcmt֍>}2d+ojn$o.WS3tftr`Rr_忘Kj˕E3Oǎ8z?;40VKqsc8n2h_VQZxM,V5L%7={Cw^a482J ֭`y[S~;r(JotZ]e7Jۙfќ̵aҶQ'>0?ZOy^Ô,9rqqחKa&\ M us}ގv\Xk6ړ 7%aMDR5naɾJVu{ZkYajS`O/?m]~nK94*Y˱1nvdRL.6(!nŹ-KP"IJ퍧'gN6Zԩ*sqqŋ߯a %3ŵ.߈#:-ӧOλAZz;ּ2rFϞ LHw-*"K5 <:nQG>ʔɓصo`cf*((ƍ,|9_.[](F:}#9Fb+חF1r( a\}'ڵDeװ6˱2|bmtWϘWyCuɩo8ۺr%,6{q,o|f"##+tA9kaRij)ծkkrmF{r;,ɧ9>>>Rm wf F_̧P+BW2T +P(8_p&7rtCs׊W(PD9OQ;5dR (xLE~oIZ$$"2/p#]Zr=7gI)'_S!R&Ldίٻw7nػg2T*3v'O%^}t0@׳x" SNL:]|þG))_zz:wKVVVu*4J%͎;8ٚM/$Bw "*"b(6ؽ]Ď  ^R-*EjHݙydaI4x>C3sdvvϜs~|W^rvy8.p|~ݺuW~5 pBTT nEQem;ML$&O̢BQ4Mc 24TPEi|Bߜ,=Jw߸K9|penT:tßnw2g6lmRd_h9y+ul| ,-qpn5hQgao:,c e"m FوKq/a }c> E0g0zAތH}]6^;oxYBBFu<7r":3UlYC˯sU;#7y\n͙Cyy9?~(`-Bst .̳3 gĈ,]We.NXwU{8{J]H݃usȒ>ClZQgՐ24F0ejɶ3},0:377=VC6 xY<#/^{v[.;p8\wTjӮy<+lIs>S,-q=lҢ>Teɷg/(rQ')xd%Xe%pP>fYWQGuڶE[]^iȒ0LUi_|nYYYYD/^CxHHLs#''rN;:Ur!d0c}'̟9?Sy8vӉ&!~A$==,.9:eddr:iߡ(,,$$$Zkq<*ym)rpxmde PuI0%ϖ]J䚯;:v22'`Q<5: Dmu_ fSO!rGei{񖒒Nl67*@U)'4N[SаKypٕt}_fPPP;4h&[O=əgO>"e:dggsM72azmu ?ΆyǸꪫSh Bil7 C"u\w]ӯ#©a!,Y!?P=HsL#N4Ìկk\ujsy6a+uj*渺w']BLH|djje8N44PYi!q Ot0wK/IhމɽW5K4f`k~6}Y"6>yno:Ĺjk9vQ]wsJ TMW*L:3tΪR]7{?$Pgp%/ͭM V~ /a(g%UYsU[_3B X$Iv .I[]N6Lq+mNW) OuAAZYZ-ϰoTMO0#O^ӱxp(0Cmy6y_Oye݃l˺ y~*khtQgGIBhSȑ/_Gp6g'5әv"L1r-k][*aW0wK\?長gwQ\eVNcoVy#rKɶ7PwUA篫1cUme>ַ{?ߞ%ϵ}wA=γ>I-E=YMAAbcy|E":C3$ n­(vs^,??WA6dPdqt/ۍ#z?d[ чcM燔y>fn\螘tfz u>={dHs+.<񝧰-w t^yVnpu;n,; 6%g5g=]ok}[ςbW@vŏ)qNK9PlWj*s}; 53 _#>yW}yCd6`AANz}3k"\[xwӼ^2HQ6Q*]y'4m!ZdIBF$Ǥ!tp hhhk]Dmxϡߍ8vz][4ŐU~??ctU~aX a:fWfmivZ@A[WgƟsto&ǥn62dMyַ>}.)z؄m6z=zj񥥥8"## Kyy96*7֦Mk׮Mp 6S,q|S# L:3r]yicA IDAT(5'S? 1/ƟFau"6!0q|p&+߱ˏLɻUϷb. bsj;Px]EF1RWaRg>CQ^'! IIyY5YvobqxL`yַ>czcMay\< ƞ_qn?_y 1zH2.DQ 㹜3zŘsFs Ͽb߾}ʳ!>LrƜ3_Ɨ^|Rt㍜;j+..=T&?fub~L1EAHY2TMaK+Dӎ|ߘ;Y#5mwm?GMaIB%זQm9B PU_m)㯜U; X$c:Xeu n3qQ5_S|ʵC۱=7Uڣ; pxmCzg$\[fүo}B\}a=z{#. Z1wž}{9DDD?dΜwvٴnڟWgPXXg>[W HHH3φڴq#ǙgEdd$֭YPTGyc8={ի6^~cƌaΜwb&Pv䋚ͨ31c'R=n卍GCF5K}~51-r7G~Ȓ%jj-k:Jo$$:E akʎ d[Ӊ2/aX\[M+w zBy4[$2 qx@9RjNRwaևpzЀu+o֞myȵe08gĥ8hq=mM'h;vİ$Ɵ,YMp;o}̳eɲ!/c'ΒبKuRW꥕5=+Aɺp6SN#!ڵxsmeCͳeQ$&vJESݘ9v $C'կOǫzɱe%Y~.:L伎PR, 1]纯rm$= aIU6DiL:RVV})tޝCf;vtTUᰣHII[oorxYv ݺugxvLO+33Dvvz4nVnZ:wOڵ!!fgdпf̘t]f͚ExxO??CqjBڷo/gFf$dGMJ'`?ڵz}2cLF9ƍ(//gT8hP5:hַFHiii򮔖wE$''_믿[쿟]`2}1<,=RSSk|_]6k6s{ ao3,|%Kɷ?cG::\[&1}ivZjo|m/>❴ oϫ,ChK,bkj<ǎ<+OkT]~^])'f⟇!OjUP QYK6Ϭ@')cLBG.! l]K=\ƺX a5>ˆׯRCsJD|m,rrjBq:LN{%kn߾ヌSh׼KuPػ޽{Xk+}<|[#>%\zD>cfR@ov;~ <,w#㔃Km=ˤIlٲO}Q8zcm߾jZ`ԫ^Zvi :~AO?rw_ҥK@XbFՠ|kҭ!}۶Zl^/]`sl[;cS/hcũT\&ז #>-.UOCg⼎xf孼A% K6,I[^w&߭~%R1'bu\}?Ϸ6=Qk5huY{g%|mnWJ{M={}7SCƗo0 AGAà6XWی!/(85>M1Ex<-[ʕW]Ebo(lfڴ[HKKcϞ=}fґq_~ ,^+Zݷ2idC`qݬ_Zv5?́j,Z13++ U={eR}xH^/?\sM@#bplbccU>ko(B˖-㞻[:phe̜1z=zp,sqd_%#?dd4^'22ruPeq.~'M1VxUn?3C,GJ1I]gKއ^=|V+ 9V~I+O x2xMp+.65w?^WBjL]._}ϡihhX+AĄS8ߐ4 Z8H~~>n.6w=aY ]ر#H9yvo_~P=!!1`{e媱pÍ̙.N8;^_+]^|{T?>Xn \X*QYmBZѻOo.7}ʈ#=^$&'sk/O>aӦM  ٌ]T:^;]bT[q1*T{fAUh}OZY^4ɥ8mȱl+_8^T ۄs^Wo^]i%2`ЙKixc5.r-0&_fў&gy  '}ʉ^7uW ^>Uh*sW^yzyb'5~j[nV.6_ϦMyYl)~=T[U*iV6Xo+""ÇQ[1$$$kg`/qz~3oާU<ʫ.݇O?2t0SU|-[< .eeDFϵuPY6j*Sɯw԰I嵭챕e 0G; uջ:3VAט>:fm//+~5S9r}q'9{%[sWG#f 'VZΎ;׈#0;oQt:@{CM~A>{h.03dX֠b PR\@ZC1c 6o #p{AXtIk3n܅̛)kŢǏٯ1l޼^|1`SOnz~Z5Fqq1es#Қ(s[s04ҸDŒ*}Wf:DuW~M)ҚHS,܀[[eX,?m ư`K-Kr4.M c;]NWqzPf  4~,\ze,\ 6o& GLݼ+\.n7>|=WM xGijBoW}̯_U}m#R>UX뱵X!z BѼ,ow[',=k.mT]#ߞ/_R݊E;0ER\e_dHA;簁oaII =bA<쌀$I9g4Fgy`Ҥx^f~[nsnʩ( 3g 44Ill,3f> ._r L@tt47Os3gU)Sp3s dYFe^:۷o9Թ3]v1^/~[c^5{oŬY2cƑ 6.WuYpFҥK/ukעiozc-_ᏠivV)O2nٲ >c+k?XW aeύG\A\E<_0fkJWtzifox΀stoF$غ}4I{s~.^Y'~w Y+UbkjZ~5NziT]JxYbuҊdžziXɲ£HMA=l' EtLLyiryw$'''$r! u.]yyyBrrrkK \N';thТNttL*;r.Y›o7Jc' *:q8ٔpxw'a\/:(OCt Qg ^.!z(s EЫz(Kţmt]^eiDcy4ԥ; [H $ ANR'قpil7 8 `i|M\4aBBymyYAN@&M1:"X$I⣹s[';   N({AAA8ѝQ"ELLAAAh*M%h   l1=l   '&  p=l   '(&  p=l   '(&  p=l   '(&  p=l   '(&  p=l   '(&  p=l   '(&  p=l   'aӷh Tl E"Mχ7ܰ\J8jPZY/1Hd i7U2 &Բ_Ahm\h gv|$:]5w#Ѹ?XN=j1ؾ-]Av`if/.mq=Pn‚‰@q#qMRA8a9Vt AhM :Ga=k©k\ :U|O?MAA)%% j6`AANz]ti"Baۻ7UAAAh'6AAAS%R8i@jJMk   ;ͣ9 =dƬzDUp˫"-njOExyOU3e} -]$Pq$ΘBꝆv$shxSSZLNBzzt6bn}p{<$ Yݡ1b73\K" xbI`5H2C vƷ7:qzV:2S-׸Gǘat1kKE;NaAb۶(E h2CO} RڶulkrF8r]ݩrZ[R)[ˆH,_tW'=e*TLkH/QZGFZk@zm_Aϫ"/OzZh.h,f 2hף_䙽~Ng{(o^.A`ټknKx${Ư@Ld:JYA.EKd4%9ԓҼmyt:cӗD%gĸjvet0ga_Y1 R6Ibt/Ҷcw:Go7^p%Ư3s壳1Z`Ϗpu)+W stsS\{y= ]W<>x2y X`P_ٹ 3InˆB;šN>6 :.9?<ˬ*Nn\#)\nvh xpF!sq87?O~"l ML@9rk̥N0p^7u狿h@:H/e`{ln}Q.2$8@tTk: tD[$$eo1qx{{) IDAT,<8KBjL7i3Kyx_qil+9fIdz1t ݆Be;t|1UUIKDHD$So߅^g_d;侙!Ms;aLad쬱xG;x$LBarо ]q/[Fo4o{E4~*qI8stz(N%y٬v^eߪNny8KңAn[7WG`4HDG<}  /C;= l|ul`9^'sUmbٶ=:>8$p |pP]nzt1I\qa&ԚbdUny[=S:>"N*s7L/V)kX]Z1H$K|MEfTg=O~ha\+WENu֭Ц#[1fD7W>zCV}d(;ؤla e%6L0F\sZJ IJ7_Ð亟!I%< [yGBL0RKhul?䱦{~c '7_l\wo>%U5VRx8_cdzw7loW ё2O!f8/#&Jf&^X} 4LhAb[ɾyg..Jr{WZX}7W.G}N\߹\/0cGr>FfpgwUǝ*7 O|砶(}n g S.9b۶o< H؝V:_O7LU\}~'4*N"I-ر_ܱYDVm܅FƒonzJkM6jhߔsKy?1 NS.XyUh[wq5L5 ɯIS݁ef_,3(hN#9{.ᔡ)(" R2%Lfpr<+6J|ཉSLNSc%ZU |ƕ#+NOqy ooټkPhJFM #j4o^y% ,:_YT*{<.Gmn^KCEc#pvmK:MitY|b=bxG;4F C mlࣗ[a7>.g yV=.G+؃fqV:8\R#W]f3oQr_d#!N}|7jIk"X}G>>MIG֎hǾQ/pjx|},H_[C4u>P <8NC9TGp! CX& _bPZ,22ؿarqs؞_dkBnE;9H<0D9W@ǚ@(VN:,Fȷjn}={0 u:7f 82P~r~̀$]ṵY -6JfgmCM XS:S͚^ea$)J< վ'orᐗGɿtQ5't1O2W}х^{Pq[XZU*kޚ{KwZ`ev?dYfXgC1̜~ŘBB13hl+Htbgg}YcV}vma{8}korpIs3)/_`-WCu&_`E Fz}>?4BR6D72qȲ̏o?CbleKoߥ"5=#?yh#)Qn"eޚ=  _[p)(RzXG stq/h Ej\TgbwܺsKda9V /۟i0zh(p'_-α.gޢr~[ 1^Ǵ#0$~AD3CHMp#mc^7M/- By-t rBx o2H@Qf KT*Ĉ5@[DSa}֧ trk0t'e* r&h:5*ćĄJV \bG\^ +yȳKJҰ7]m嫫nNizݚkH)gҊM\@(+#"&oV 0CaCz l'UU(/Co0ӠsVw \RU rlbuDUdiJW㟪r0Ub2JFלfS+(R5.ǫ$֩NL,SRRtft5^EQp8z\cT>nQ"X\$d )=RHTFi+&-ǖ_Pw9`6Sl5iҼLF5Nɠ#QfHs7%U!tf}|:aX>>Bu j`cQ8H MNo *mO$Y٪uҨǏ,ARb{TS~:##"ݮ5ߒGcL$2+:S(I,i@2|J7GUЃ](p kR&+i:S:$Y [)  DžFiMSXEMS)D^bdd= F$"{3Q o,v)8<lD@dK0!R?n   z%AUȎBdEEJH ^@| dVZ 񍯖%p۠a܊,7vb:buZ Ie#*&ƯNh8^D   n|B-XQ7c 1b +W4m~[FF]tFKS|EAU >c]&, X:Fީ6!MFND!M=6Nk|2`/)VVVf"E"+&)lظN;crsH8iwzh2.BHdtӍ6b;hѧ z/CЩOgJm zUU(2y)<8)vv|d]pڝ($4 ]hȲ^S1 f &t9m18 [(Ф,qZDxpnM8d:F!7a+@5S.X K"T9,ضYÙCBEzo Jnn^܆NqbR)-"ozX$-%-5CGg !UcTIfJ碋GRhW4 EQ)t&:E*p8p{<:òkW#ʧih*:I4{'"ᵬ rrr uk?% @[e7zlԗjepÍw  B3iʠ#ޖbLIN/%d$ PU3nB; (Z4Yi(YNìe njZCU\{|hFNF!Gc hmC:e ּLJRwb4VҫmA2 o'f>iG~ܟ b9`ZzZ={AA$U3C׋ɬ`dtu8@*B[@y I?d)dՋ^!I'9 f"B3Ϣ眙y$d}TTH@\XեvnZЮ]ֶj[nmmU\zUV+\o JȖEvK7y9$/ $$`,y>>>>>>>>>*6:@2ň$ALp2N5|F%@kdKm$?@&:Z)q6 3S U{hgW*RWCu hE#v]\ Rh[J"2x 0-H,ʮVn$ ~۹ M]]-^]@EENFtC,ccԦ{ۮzRYg6CEӺ5Dь#(墅d e0ICf}Ty=dJնe -M(YĤaHw˹塵9+[:xF=C(4Qr.w\QNQ@k #\.B)M( [׼yP6\ I"(,uQZZm?c妛~7 xԷl_GC7/o{vݏٷ~h ۇ+TeCˈ c=d0 Q2".ْVP@r)0flH+*ӂa0`{mfhWQV 1|EI!f31H.Mbn0.-u෎QyhQ3(A$EyG7v.~{Cgo[V!9\.bb|[b˖-L6-k![hQ%=%Kd-zKl2mD^]UUVUUEUUZksiۼhH ]Lhm$)#[^q0]bG(ͫB@ZpD1*hB)@.B@)Fܙa" !MOhk;U!V.J)낓BkpKtMFǰjYUy3ǢERWW5^EyJf̜׿UOϛ5^˴i a[hQy-iS/koQ]]=b޼sضnD"9R (*fKd5l3s5 FH0rY߶!dCIxp\qQ2N AiH3BQ-Au(V R5ZhEka C"l\}kƇ==o3gk݊n:TUUQ]]UЦN /D"Auuu>>>>>>>>>uK0M Fk SXIKz%Çp|4?mټmN<aɶWI;͢5َ-)SiH&f ҤS\FPIԺ&2Ǣ.Z!AhulO0$50Ivme1 /zD"}mj?OQdzru[hD[x̙>>>>>>>>>}3 jpqIvmYIސ(Bh4m' 'Yg`̣H~a9唄\t3_WֿɎ4(a x:<)JwZ̜(sv:yd;n~34/Bl̘bs/hlldѢW{(N}UUUŘ6t-tɨ‹.nn3fܯ9WݮrZ{' E0L g;ZhJ#G32t a3s'Ќu׬l&QW dϓ.݉,uSHBbwBN%4Y$$$>cHtLqjc#[ȌvNYI5N{)fhٸ"}N|;>|iiiokXg)S{"RQQA]]˞:unueԾ5;fRv`ke5Ϭ <(z1{\ASF6n쓃y|~?אv>>>>`0&h$"L r9*z,Nΰq:\Z0f!@*'d7hHeZ&r/4L 3a00f0aE00 hEFZ3ةv2)tҢ-EE&n3CdeQnƴ¹s GlkP *UUU̜9+w[՞hUWWs֙g_GiӲNSNQ^QQC!_ufa{lY0h vG}+GA!!˶I^_kE|ҏZ>[kַs5u7慆' q#+9Jm';6QX\B`B4`bP(E)4 8ʥ$\FU֚ MؚDГq4mN Jô$!$r\;Zx{yFZ  l/&2ljd_ gj%jHҔhe{S IDAT!B` Yl\Nʃ6W_s--iad̙zuuuN:j||h^`0 = G)8t80(`E9;Gθ_" !qQ:6J953H6`}a!ߴ8`ɟFXvlϰa3g,D’&qHC+%R.B{[Xq{󱂑2X.=ȭ~|uuu =]}͵=~gRغǽu%R g۲ם3f3IIS}寸?^xGmOLi1t8\yb1 Ọ5Qyqfxhjw,kN˷eg2}M%|{ϊ( %YP9gEw|Qֵ`lf.lfyiݟ1es/9x{7`\ׯ$,v6Zi% cC: CZ in~}7nglMIM7 2Bh/ /Ɉ֞Hn@*/,сF3,ee15ma.2 ;I pSioAl'yH,+J4b)=nf?>cծ| /<{|<wOjL/n3fdeKK{_ީ֏ޘ:u*=G,Ŋlx<:jj,CBELvooy9=w]vߘp#ry1myS ( 0Rʂ'x알ҭhؒXU4|iz-[8̖w,6yB46->•o$:?ye3zU؆s˗sn%Tx ed=1{l =vSK8}ħ[Qej:6B Ĕ0;[^&bEnmESoᤲǬqa7`1-/sW^猏aLkf2fb9 iЖ$ɠC{l+nqCO䷗~tG+<Οg)p3=KF`5n_P/9=w6W=o Tyǰi#^" "i%jŨnzN'{p 7N`7ym^scfhWNv2)\1V I\y}Z% ?ιq%c3Oí GX O u?@*5'ݚ}rb)zvJFrb,lx<5;9{{=6=c3|kG0690o~O?{a<;w?"e\w]L*{͉uugb鼴O[~?g||S~2p$^j|+Z*ENRXOھ5;C+?q_<;J.ǝᭆfVXlWd2AixTb;-5HoKv8ir’Ji܌ri -VL\3"gpLs_74"kWc;[? W>h8y) &3L({c̒E\1v5C=ܝ%alIl?îT3O%ۭ^JU4:pL'|@sdfZet5MoݽdŧcuZO`||dJh'猺oLS,lǤOh @o |Y(F/G}&NZx|>z)-.{5Ά@8pBHi20RJkz'Õ:B P!{[d(՘rs ÿ166# 8Q/!I2BiFQq:҄#2)XtA1hALH^ eb%1J(iBvdX:i !$)inllN}/vdhl$v˞Fd'ħm[Զqŧd0)G7UZ^3>|K) qߥ G U/| W9=:n()' @ĊK')7ϿGFi/!zxO>qg[xkߙP:W7K|(8qF;a;Ά@s{I ;mpmH'ӎ`ޅ0,ry`Ha]w76݄@akcZA2CFloY|zx9Z۝8 %md4qF&Yϴ(WvAKؽA0ٴ)ȋ@ 4 (eP"| P} _H k[VQUŎFIĊ[4fB|*y&J"C2>lBGeHa0p"SGh `34v40ݱ,#[ݱEӆ†'IdZd)çZw @o;+scfv\3"~l7qB6{,oSBb ri|}1`>;7! "!H+O换N VhsBH FtZлW!v].D#AfrI.R"U !d7@Ƴ QZ!vAB(vr:u;*P.J0:]>5BJ,+@,7jFL؝gq˸/#A,˨!ժ/bo;]%L"'GU?dR'zțP:UۗdWF&6|y<^2*%_Cuk=|_p˗/#*8}Ĺo>XWzf Ӹ?Iq߻禓V6vJO|<|sm杛ŋ1Ō/0y9dp&ħ*nrs/Yw Xv;?[|-i7In0mƅ}C`1u7.9j _?4;@猏Ŷu+q3)\[b6iW$" ` a& #8ܝ6?^(RJQd;> +>>JĊ1z>t>,vnrM yv.:p r7~=5BȬ`g0o8?HT#mbmkJ#$A{RmĊ iE) ۢe}4 -"0BB IEt@ )ikN4mB9hR"NgPB+(T\L+DW/!hAVd@dkRo1X,JcSsJ~[;#G}42\/Y1l>>>Gxq|.<2?iA04@QFcXJ)ip5ntCQ@fҤے)st(p4A+ `Xi LW"4Mr\촍k;^cG+pnOj05|Hǡ=WKAʵ1N7KR)k8k;l;nYB"#/~[ɏoᮻ{5545Qs㏬6#qu7||||||plLLEF$0M s5 FBX]դS)0!+ DKt.ҭ[ɴoL&ܴ Ӑ(F`n+dA~khZxJB:.JBcҤ1-S޴Ƶx@4aHQm668`̹{/+Zee%W]u5wyu=:/^ ԩSijjؕi;uTאhOƘ>cF\Scc|TVVEI$ڏ,>>>>>>>>>>4GEqq\ÐHC FȊbN#-aH@ δQ.Fǝ0M\Gp! F tlz0Rzn!3n8`wt&A F(%ڋ h\ 2hCm/h( ZS44PkPzdWP.X@ee%D;̝^UW]͂ X`_]*++;w<2wnV#sr c}ʘ3~?tmGxinB ymkbQ뎼,>>>>>>>>>>E ؂k3 ;ڣN,]Wlӧκ p/AJ$d;&IGSDK`^nSg*m]\J xd CrfWlj a. Cvk&%4tgŞ畃 vړۿMg9 ' rܤpin.7DGy"ҥ5㚚f1J멯g7*Nf}KsLޙ̟ҥ5466{R[||||||||||G N]]|75^M0 gSJ ZضC ' g9A55o0f)Q(E).[ٶzV,#POp$!k[ [{C%[ &T&C*F i0`+$J>ϰ#6l؇CW2K2ewuwx9=gp{mTVVxbwB3Gy9<@<.MM\uD1N)S+| AqR /-Hp]/>M) `3D صu],!v Z?& p0ZҲyh-XA"t% M@ Sja3<0p1LPN\ Ch [#]\zwL… ҬYR˩zS^^>k& ^{m1\p\psՕWpBf͞WŋH$z(t}Yz÷`n `6JJ!4M(ic;(i @ CbFr"Z0'=40LRṳP DBHLai Q^x@Ja0 {- @cHixuZ`ݱLP(+sqW1[FǦ&3ܴL2Gy xbxW]ɗfb֬YѾ>s5wy'SL?I%7_-AIwܹtmԷ$,eXf-m!3@ag-#4%#U&J'QEiչf׶1fF0!CiКHbIݵ̀CULӓc @Ĵ) 4aƱ2R,ƶAQbynx߻zFP_b1Kqs,""?wYW[YB>]S7:ZZqA!eb@4$J@֎F-sàAE RcX +4La 0d B@2iT 7!JIl%L:.T[lٞa'c>q.ɺl'?^6ҬYL;Kڗӽ:eyx#…$,WVDSccgT߻W\yoa9XAMokF.Af M0 &m[RXŠ IDAT4H#DBHayY&$ʵqeq׶q3i t$qE-vB㸚bGb|84(ֵ=YE?69+#q(^n#jU۫iLl@ ɈrOpyfX1fG"suKqO\v$+Czf`*,#2v2J# 5\ő2y^+MɸiFg[; ) V6֎X2ȱģnG#d;dP ha M`A.2d83<2p]-r;p]ϭR6v:)kv;IWm+\Evd)W4a0r0JQ%cUR )el>}sYw~hbd֬keHOJN1"x7Yz{ A}Ko:\h~CI7krH;I~\C>cz~u†yD9ʡnct4>FVhWoH{yǐqSmYi쌇wW;YM3(hWHu ixhcv͸#Rc۱1u]p\V4 \)M6%"`bR\t4+ B,6sDŰ-7>4d4/[Kakj߈~nIo:Z*Qe8uR2؜XHn}؂*`p? M*pK[7r'e,6U;2Z =ăշ(@/)gp,M8k;(;VZHivZLe-l CXK"bȀ_6! be+ 䠥.=ɮX<)%ePczqDYvN(>&Gyc.۫[^5ԾP0J*ަ=ƚKYR_ @E{}cͼ9Vs/VGqd(7͂'p9.c.^[kS~?S82nώkع [kdr+Ʀ{WSFZ(Z0h}PQV2v;/}a9Gs|I+ssA^Z9[NMYuS؞lV:')[{=iIoۙXz:g<>>WFrz?X};c 'pI?Q^ɿS[,6 {썾֯>>>=f 8kgJ`:vfxDs" ue+ D(?K&*giƵ]:2-!<7@`0H04ML-icaKdZY.מ|ۀ=:-dE;Yq9d)Oa8Nn G|PnxGYa d4κZƗʥZ'Eʘ:|->•o$:?ye3zUn~ לt+J^Mk_V Vrlx-;UƗ.s_4ږՌ-}*U^c˓+p[(gުSc9q`QY2׳5[S_d{94[㾖ΦKT 8Ә@a${ȴb;\;K{e_ i utg_뗯O0B ' ZOR8heiS)(oZ.m҂8ضq8(ֱJZ4asn1-h4=brU.Z% ?scǕ֎HeS0>[ qHʲ\1V cI\9V><_G:4YLKk%}Oʻx~׸xW}9$4wlᩕ;gц^7Wvrݾ}r3`O[|||M 0 *L #h!J8%w)hL&8NV9s]7 !z;vYӺ\}> $RQ5ђz+3ec[;Sͬݵ霤FַJ$:- lh't0>[1{NY(F/G}&NÔVmvybV6/nQlc_|j42fhۘX:-.h8d=͒Cģ)ВΖz6ůOHwj^)?X%B_:˷fxN*>ko})0W@Y|||#VGc84vh P "pd2Y+Z:*i^#nOJaU@Ͻ|#V)Mֵqڰs巟Y~jVRN#`uO,9S5(1\v/Y-]qlQeǗJM,F[4O!?zi6i7ſv>>38Wo޾󎹜HA3)CsUSZ{y1h@=s8pg42Bj\Wd/^M )NN8 leWc#999l})%RJLIJ,p`0v?aa8^1&v$iص2[Ծq,9.? ǖzg¥\AKz;IUeKĊqyvjw,cW?TdcmulfIlV6@n}Z1Lir:yxoX ӆGv  OU=F> 㓩ݱUY xuJ5SY E'wU}|+u18|7ٲ+&Vn~ˬj_[ ?fzu$P@~Oh8u/ſRhkk-ׅd2I2= DQrssϧxU\pW׮g&(ԋߜty&{bLi1 Lv~_KMggrqq賯_!s)/pPڀכٷO7|2"Q+y==|-ɸ!/T°QNv3(߇)ݟ|WN趏a)Mor?'\Kqd(Cso<pC,g*ezu$lF?2;_>>>c; c;*p;pqAIZB13dȐ8d0,l'&̘1c0v훐RR=j74BFQ|9."ԾDp ~嶦wҜl4:d65` ؈^$sȴc3#lr]w>}_>7A(:L&QJߘ^g׮]Õ˨}"7$B$gJ vmmDʦΧ=z C ! ϡC)m#{b==dAQOvnrM ywQ?wI.@);^HSD; 4AAE) % \!Gʵ$G |߯W^ٙ){egзk٢s58W+mv Q!ĽCSDޒ~~K2(^NנYYr3rr]_QHZlӎ. ꊣc=Jdevb絵,;6WKDB!ʐr"sptevlӎ,ʐ* ''7hTSs*U1߯ !B{[%a4JQ !BaFeaw7{r2B!Bqv H!BqdDaB! y$R7&B!BiQdM!B3|||; g6B!BJB!BTPX%Rn؄B!6!B!]O$GM* ;+f Y<^Y-ry9C-lIrv*G<4^p U9P0Ogq>q8i?Z嚧kp ow<-!&.]*,Q=JsO7֖wV Im#jaɗ{, 1g=c&һ΃?fl[w?Fn3{6(O1?%t79_|ͅēfՖc!,bS8?d|7c{U,5 O/usޣWc2fG9U]-pGc>o}}uB1(z^6hcmwMJ<9nޚ#tq_oWׇ!< Oyf>혾RmV6Qӣ.jW;yZ;p_ ml~FZ k5׎}n_\Qm7~Fsz,˶,}!0OFnQ O๠)Zv&.#1F'L>N}8w#ѣ yt֐ڐyt6x V5:3ncw[ :VvڢFGƮj cK9gD}-_6No߫TyQvƷy8Ʒ m~`R0(zq_gL/=k?P촫f/ЛaN W>X>h8 VcQ- 5c`l)C[(NBF u,WZjG>_ su`JUNrv+}k|lrBd-J ,; " ObͬVkS@QPPψ)p֦Fͫw({ 1if阈+d2hwQDBWclJ6=ۜ\h۩@kQ^ysc3~iGS'JNqPvzǸ_r/BN$g'7| _` >nd0mK_G[Rɣ?*a9eeQ>_ k׽"(3_s3+/ {\<a%K gVoZ?7 ħqt1tb7K}yp(2Y+1ޚ|Tr2[ѝYVPJRQL ܮV`Z *mU!OڗMmK`-eX< wڑKEKWukH83b!Tu_!̓[#L98:>#[_CMz8t¥azc\Ԧ86.#[_ aɗVӸZEUky+r/?Omxq/unC{rbl)z|pWo^ by|ƙa+nm*Sm>hX]\BWH犌h 98Zڑ5aɗ ~glrB1VgrO|F4* N}Z౩pN]? jG KwǦ닅ݜkDr.͝ѢF{jn/2h`6c;yrD#)n-mV]r#D2u;yt (|\Q[PTeFΠcѐ6]LW-e(*3p=[vBgᡩ°FOW#K?oL!9+3)" jrB1¦Zr:] m8;QU$d^7'rʥy o Fhs>("R^1Gk"SCqT9}HrꋷK e'!#Ԝj97Oӹj6Te+kmy EœB|F4gjz5.J_EۨԫTj<qrݿ{\t \\\p( z= ;%QV}7lM\N:KAxi{6x/-1B! [VS)f IDATVz^c{^inEG*3';eٙ_9WIB!(KJ)n!DjWi~cB!l%7[B=JB!T**U*RܻJM:B!Ľ-`PJ(z{eOJn#lҙB!N3lJBV( vʝFؤ3 !BjufͨjPT#kBTJva$B!:88ёt,IgB!eddSo 8Y/Aܓ6&I!e0ro6J#dgg-3=Ǯ#lҙB!=hrrrh48::zё!B!bɒ%! 0aBGM!B5&LPY¨#l!!WH!B!dB!BTPJ((90vߏtez)Mۅē4¦Q&')ްZK36<{Kzʋش3wvfНlPN~ʪym68gP{i&[w8]gĪdhӘwbow@~ ʠ-T®k#\XZ Q!B!ĝR)Wp'Ġ ܬz#25lܞ=IӚ~Ա0#ZۥFQQ-^Bgr Fncn2ZTqKʁ;XɃ፟b{jD*ORBUan erIצ);oR?&+B!Dyt#lb`:3&4ޞf>A캶> [ŒӳHɾ+䉧*,|Wur۹DM7ŋ,r\GeѐαrUzjG:qsWa=5U.?+V/Q\J:ê37ye%{ȸ?CG1^-IASg?aU;" )+*z~Q-_B mGnP{n͗A[+m+9(eeVL!Bܻ*{ңqeikNԭҘy_~ E1ؔϤ8.$x>=a<-r.z\oWF6WVr4f0b࿇ߢ~k:Nj U]nĤ]cE M$"%íser1_j`6 ;"/4}uпl]e ?ʥd3ۏG @߮Tu }GRsYz5&m*;kq޿uh׍O,ɝO2Ẁҷ*wYs!BqϨtaSbY~,ƪ$sjy6[zZ~GA Y̦K?Gl!? :ܥ}hγPӣ._~tmjWnz :Uۜ^k<9\Xd|0Ob$"e88QkhRsnr==Z(};r;:Cj-Waia%_bV_q?@jMDɟWV1wcYCt5+C1SMZN23,3>V߯XJ6tm*.E^\7ZT!BK* cZ֐Ú L9k7CxSEDlxpwF%+--'XZZ_ Д.5'9;Ko*N}jr.ӚXwaqӛm= 4n ' l+:B_v՟鑬8- C ʁw6Di;Bon weq0ORoף`\3t%bx`MƗz`i2(zN_?DG\ k'[KO!Bqts4x߰ ~~־y܁[7bzes=c!o}H5<+S GAPOnTot͞|ϛJBpq Z 0gGWU-]uGlBI/$]m*_]Y{GսPKp. N3"# j:+ѝ^|(:wܑS(( ZF A F6xqMۣv[ߓ=Ǿ-:?A @bu杘FjM !B{=Fx ǧL2BEZqeŹoY1{Xu~Ȧxl4x/| BW'l#ג/5"q;rPDɡ,;_jayx[X򟨝L;0Ԝ\y I[wUqP;oZr]nߨZK`wm g&9;u,deI$g'׵4n5epqc޼F{ܝ-t5tOq > bM^\L<͹ND— 1:7gķ>$)37ΑMGVpNp,f/v/4s?֯W+/@>ѩ¼\!ם:uΆFa; 5++:ѸEAaV>90a䥎6=NA!Gˊ _FwJ#]JrvU}LοKNzz$ꇏ{^oWJtm*:C^Υc=2Gk!.= W'zB!*%K0a„Ά-$J.:R K#HLΎ6ūV9شaq;yZ|7^vO#u$;ŖG\85zֿ!BCiG rhO>9Gg #<\;{B!BQ"V7lFZK&[s5\fNB!B w[ʡB!BQ5#lB!BÒ%K; BunaB!4dHQvM^ %B!w@i簁ܰ !B!a9lr&B!w !B!D%#lB!BQAB!BTP2&B! !B!D%#lB!BQAB!BTP2&B! !B!D%#lB!BQAB!BTP2&B!8ZmygC^%\oZXl _N+˺(RSSHMM1n ܋u^QH !lUFغ3fv̚ULxWw6ںu III坍JTUoP&q~'jƍ=.!Cg~- ҥ^Eۜ+Whޢ??矟&X |0K/1dV}o* W_cN̛yйSgVZyӶW_(뀩Mm}_!}cͱ,3ܦM A4mڴ%!1*UРA``ڵ;zgggFILƿo^͛2fXXh!l%113f+n7nW%&&=z2rHѣ'[6o"!!}0dP㱖ߤ0h`cÇ!)1٭[ovK_Wp9|ybhc {͛L1wyY<<`lf.K֮!Cus)mBT~a R#l...hтǏp ڷoOPPPm킂PT|2}:QGTN:e2Ȅg&΋/L65|̜9֭'nԞ!C2߿g̠k ,`#W^cQ}gM5nggZjMnݩ;J;SOAL|9Ly|٧f~KXjư'O6GSkyQF=1s lgsmÓ9s`0RpTMHHL(V]Bn;2&řTYмY3|||hРݺu/rxŋ3p]\\ӧ>h1z5'>iӸrpDGP׷`)vO>yiۮ%*`1}ϧc?~<m'6`\>mqk띩)Z+7xƏNcƌO8y[ˣp~.Y6ZŸŽFY\ܹأO !*J7о}8Σ='xwc˖-my_"##믝l۶W77Yf m۵+FCbb"C? $$-Z߿xj3ѣGիMi3_aɒ >M4!00={пΟ?O|\{)ƍL֭hժ5Ln'44T/MZblnڃ7ԧ[n6qd!?___.]d1 ?ww\]\ٷ> KLݺuU88YmZ8sBA]4▝ɲSkLhh(gΞe۶8;;ӪUk;j2 [ZG-EIɾ67sew%._F[ǏY͋9III&ۊy`hKlFY\ҹݧ}JQco:t`udffAƍY&ΜIff&Ly}^`g&( f̝;;vPN4gRRRHII6[ō0>BUՋ vÆ oܸ1ⶴGeڵߟkqt"#" և@&M9s_᭝R IDAT20\a׮hPͯ$\FƖ-֭7ob8sJ&Kֶj`=͝,Z-NNN/}\z[ /=mvt؉CXƑ)[Z8ss.oߞaCдiS7?D|)5&2"Z8;;7nd-N*uN/k̕]tth4G׫_tZjeRsF[%>~s1w\BTr-o hѢ%jOOOٸagܨVf}˗ٺe+7l0~}Pa,n("%KV1/Kߟo رs˗0'UHMM--%5HGa[ˇZ.Jvv<ãHy[υjvl<0'غ3ft\ImSeek[-N5mSJRO͚6Epر"#|c5|t,ƍЫW/zENN>ͳ,.j5S?z'##;\vM/;ksyCjj*EJXk(\%Կ]LRŋ7nw UfXKy4V&NT$Swh_ohKۯQ>Wt-GBT~nܞǶlڳlZn``˖pzؘ"feg?:Ddd|'nklI;u2ciFaa;i݆@yqw !!{˖6.¶mޣGΣf͚}|ڳjJ:JF_}GSexxxĉ1bd87oNVxǛCqƖxz2v =jsX~ uyy'=sf}&ȑ#d >>%KÀ0`@Σ\]]-cIL>+WVh<4 f?`89:?..v=*?ki۳ GLZˇ-煥ezg*r'|w4mڔ޽{d+Wt.GKœIvvvm* 777j}{tRΞ=]Yk+h0gyغ_]AHHlذXykV.W.^Tt111Jxxc9\twGy@ QRSS`0k(ʙ3*CtM*aaaJJJr,#--MWz}6 Jddmrٜ;FKzc,*N[-Nⴃl%<<\Yl2l%66Xiz%&:Zv횒],as[3\QÕ(m8eH%**H.5&##C }Y {>/lzWZ'OR6md1%lAΝ:*;uTutYܩC#ydffw6EQW*?-YtQ׷OygblwelN)PeJN,Q~ΞY\)(,,]ڸKL{Wˆ3vqrttN:6-I#Ep/JeqQ{si/imMGIjqڥh4j׮͸qOY9T;ҟlnkf™˓k.uX2quuℽӟWiwŵv^:Ǐ#!>o4R[ٳR/%FY\c\٧mFAx`pO{p1~K,Jr)ԫWM<~0ޝ2.+ʶG<9n...nƦׯO%_Ry/3v,>>>%گ( 7oq㊼JnoyM۬]Cn9x7nܠ[|T%nSE~ܹ3O?=o}{o\+RRRXp4奲h46N^*{͘1cKY 5<cw6ʕ\Dm\~xv%'`OJ||۷7LVybN:1qD?2{l:wۭGMci簁<)B!R'NҰaCf̜JbHQQQixFU:t{OӓadѢ\@VV...o>jg0p<'Oƍ"᝝yG4Ƒ7rXJUƍ$^k<=a>(+W6{͛7(~&ors5 w~.䎘\gggM-JWll,o:C s.*cB! 2g\~eKx\\1\*˛gwbW4q3U)))̝3C`YhspquKܥMر};+/s%Uw>@ sW>iiioy衑l9³}{Ͽ,70<"dM65ΩYɰ[6qի Jqλۼy3'O̗ca[`u1S[iFFO%eyسgӧo=z$119|^{゚M}% [筥b̟Ϲs,XHxujЬYs_Es7ZҼ۽g̝sbY?*'ߍIaμ+|gZ7׭#6&5k2f  ,['N /d S~ w)Sڭ+_^W *FCq"o=7ܾߺ0:L8_t[X3ed-MM7a0;f ԦI&tڍ֭[Rtujё yjժ<5~x)SШQc… fXh!2lL~[,l)r;r0 ,`ӦM:uzQJ봰T+V,CۯlܰVKM,ǖ-mn),?΍$n$%f\\V8M-]p8X˖.eDGӦM_-Z+?-Yl9^OӸqm&== $$.;@]M֍|[J9888&*▻>gz֮]˲eK믿HIIyVϻ䡸e*SkT>KYkuTtUsΟ3ye9ܹshٲn\4EZjoqdkϞ>n2|ͩU6'Oয়qk'`槟Wk.X/,G2dӦR{/QQ\|kѷo_N|ggg,,̹v*AαgnoӣII9|7p3s/,֭`go͛7q:&(( ѻOnR$iii,^ꊪ=wӼysz|Iͷ.%33T:Y;o'11}ҡ/*U*ǜ&ݸvlG4h ^^ԮS| bԨܸ~qo7a+W`Ѵj} ]}3{6III52}tKZlY`M7Ņz{{{ٵs'NԚODD=^с?~&N_ann5&߼ILL /b666tޝS'`״ֻ_~{Rӣ&Ç/U]tt4III4lHq&޽Kwɉ5zLCc+EDD|1ի $$TXl&Nܜ瑝/41uԩT^ѣGs%ΝotJXXV$S;f,)))̘1ۑ~?_TG;jT//qU?g>*Wѣ9tݻvѧwCʭ+urvr*ruLcX̜18^{ ,-qeD엦׵3}3I}|k#SꥯLtt4 Sà@C) СÈMرioq{5dP Zd rZjU$`=le|kkΝ;\'bggG͹z*۷ocwo1t+/sYt;9r m۶"_"5n3uWc0x233ߟ׎ظXl4N2PjUoV{{lml9~8?ߠY]Jr2@|T˵1b$=!K-n888Ю]{Uq4M h:lMz{2֭-B=4_onݺw˖3}7ATk! "|a\\\yռ_׏AA`L/lml8s p}9}ƱR%\J`AbTr? qǐcv7&UMHHǎc >d~Y2ܹsǨ뷺>+銧!emꪗ1EqWW0pQ+Sʙϔcx2) oQ([fkUTI#,XSNe p#(CRrvvo?ˋNNNy%5.۷no>vڥzhb~oFƍaeeEPPPQ3gNs[K4ceeEhh<АP<==unSehlu7333Ϙ._bXYY1ΙòehԨݺu2-:=^3g0~„gf̘ɧ|L:uHKK{!uc!u4)Ǫ~5?M6aiawQ6 F^ľ+ōV㮮Uz Wsܸ̚=-[`P޺H> ݽTVVVԪU#GXӧO5 hffft jKܖ&O(nTx;88hT۷o#6&W7Wc_) m}+)c&׋[7uų12eUV1ES2xeh9Uz05O!ĿSI郳7n\At]11$>LqL:̄eB>_SUrKx_ZiCO5M:iK@m&w+4hPB!آʻ%N׳ʳOj4yϤ[,Y"B!ߠ$f6!B!(r&B!BF؄B! UaGز$%%233Mڞ62(O$ >;YyKũUdj?Kÿowx?vǏ'''GgGT*˨D%''G$ֹU/r|8~ qfITkcp]j{o^M*SIYz֭]T)is2q ~Zl'z ʣ10}gKϜ?ĻSޡoߗ6l(+W ==]g [b'W{w;:1wn^ډ6u*?i._̇җ^eϸvj+j[aJ i,Y~¨Q#_u/6P:+QٳLqF\p!%!tcԨQ;cDzo߾ͻ4\X\e)2pݻ2t(GטٳPn]Ҫ/_j8;;\6񘦸v>7n\'668h =IIIѣG%*cѣG=s>:u&..%wX|4iڔΝ:`f77ӥKW:uDTTK,!..ɓ 8~3[xo48s4[naWUψŸzZ+vV0kTq&KDIII!33gggrss133CTBܠ reggևh̿矗133RJgddl#r (':MҴdHKbLOvK"..#Gx?77۷t, ۴!22[㰵ETvi׮=ޜ=wî;[ʣpˏ;JÇl']ҽċ/T?s4qԫWz?vcǎ ;k֬[!""N:+MMMeڵOVUb͚tԙ{4w͚tҕ}ܹ_O?ȵkpqvfԫWϠ.]kLas.@NcΡP(_۷H\[nŋHMI_|&gK^%>|'tޝԮ겲XZhA۶>Z&gϜ! U#Y޸kjgC=y/U-K.J޽M8;гg^7lXϳݟfZz1C>@bB-XNC/77|'O?/>UTa_ӿ?ߏBk ]G͚xyyMxx80y;`|&=yezkVY;XvamӖ5jХkW@{u:c7}:MZMuPmRΝ;7>nnn‹/sN> w lٹs'wVZ899qÆ fƌ1sLlmmѣٺu*m߾}ٳgdƍrQ~ԩCbb" W^NN}ovXw%55gyF^V^MHHaaaWw^mۆ'!!!L6f͚q!CƌŢE )vbӻwoqpp]8::k(v6&߆ jٛo]yM6)))EV11ܼy P>V<ꦭmllOt}m4bb+hժUza`-O_]u~y+~hRSRj|Ullmu7ne˱K>HϞ3ǠXqdqŸu(i)uppP-/Lw}^.?tؑ z_NÆ Vj}={_˕aJOz}i/_NKl͍\233믿hذ!Nڮ];+Z* (.^ѣٸq#/"iiixxxCJncbl=l6m޽Knn.6RR iiTS[[[}o*NyӦ._Ѥ~ 4 ,4 0۷ӣGoF>/-]Ç鉕5III$%=T^U* ,̰Pjzx`mmVz˦Q >(5lĕ+:Y3/{x1K/bQddӻO"kg꼼hݺ5{ѨQ#vƠ2lPOW1+/333Znùs爎LJnn;wUcˣn;6&ƤĐr~vvdUGꧏ%ɭ۴ݻ۷ҺN-iև7/_K:v?ãU1f4g^cT依L댌m`,]$}^ZOPm+̨-[yOIؼysbcc6;.2333hԲE;w8HNNӴhѢe cb\Ftɉ6o~NNk=[f/S$cgNm=ߣC_q!6mQ㺷ob}ܵKU^EW7}iUgoMvv$0)9 ;;{733+pMFF*?{".P;a`R}9ׯՙ1}Lt˗/ѣG?^g󩷳1/eW.U/}ypYb鸹U{鬟twqS}}p9iƍaeeEPPP_Ϝ96 \\\TjӠACtB.]dy,_F K˖`eٽ߯ǓvvtK'kbL=~׿·sgMݺui۶-'O$44XOW{g? 3l6l8 5@d k֬&&&W_gP <;v֭4OɈ#Ύ#Gܻx֯Ⱥeyl֬JR޾u'Ԏezol{ۦϧsxZ焥%:ub@ޤ/72 ù1h Lŋ اO{=z- ZOP0h M'|˚>>|gz$+>|_S2aviL.e3f ӦMc\~kwÖ-[C5AJabE̘> @Dd$ƍZjaM'2j!_%GGFnnff,[2b̟y_1~DlNgƍLyW{7i///Gj88Sg ֖3f'SNTSckkk˜s3{֭%<<????nxf͞Ŗ-[0S(~|π|>eӦMXZXbii͛B[\3g0~u0}GiӦHBZUV冶'+WIo} ֭[|xz&;;,aBW5ѵ?7/ƔK_֗W:ue˼_^;;b]F+\]Ԑ{s8FNժUIHHř+VRJʐ믍kbcbTBёzjڶ7‚7xC5z*}^6)n9C<-}iS| 0^x\TUm۶MgK.PR%դ{3Jߟk}ذaVbɧ^g,<$&&V`*U;w*\/]+ Ƹ$F۶lRz)-#22, {I^‡|=z=2" \҈FzߋE,FF7;;pL_$Sã J%ᘛcƮfL)jH"22sssW^-ݔ|Awtc˥ʫ4OW{˜aff&QQQ=-p>DGEIK~"##Q('eu,l .2;lI|m7Se{vg䰴EAQQQӧO\ziW(ד4c\Z5Nڞ'M3cvAϗ^b]$ 7In@tڹs' ZGToFlL,n ͛_A5saEoo ] rj}f_ig8(r [AbyϤ[|r.|)J1rdaÇR(WOrT!v'!!ߎd mQ{R'k%"㒸MF؄B!SIzRUYa{bfB!BS5KB!0f2Z'\aj] !B!Ӥ$FM! t IDATB!J#lPNbbb,bR_rV2?)HNN2jhJ$}z3Qٹ%;!Bc+F&͛]2SQ^ΊRf};3qMʏ?n";;Yz֭]}_`kcp_߶*R{jUa|oQB!W̞=uw1nܸN˖4i{efVX^Xj<ߊHb%B'Y%r͚tҕ}ܹ_ :wkkk}mYWWǎqQqww3Bj>b5k48_vAP9 >>>t~G]3 ^z۵{߿7;ub \~ f^5 3s₽=k֬[!""N:x`hrr֮#4,mRF tZ"SMN_ΨQW>|;<|||Yf̘Χ|L*Uׯ?{& `j[{ZwW_ҪUkzg8qBvԩ2zh;w.\(k6|.[ +k"iuxꋵx+4$UU7V}Q=,vڥ5 bmm7Q꽕+Wh1}ڥoG*Wbnebs-/m}EW ߥ4X{iRs.75z.|ur2WcO,:M][WoB!*#ѣȑl۶-[їn!dff?'88lh׮=4mԨ|BBB8vѱ*͝;wpOΎ͛sUoߦ6ljøʫj~ jըc޽;W._ܹt҅[nݲXYYMǰ ѣGѣ7n &:nݺI]t߿Xk~y+~hRSRj|beccÕW }^¢h7.iHP-Zm[n f/`nnnRbcbၵ* U&}u3/_ZyZ$xiWW^z;<*[;|7QN(QT*I~DJ˩ڐB!*BPɉ6oѹtob}ܵ {̘>c&\|˗#ڶmkP$''k|ޮ{IIk(AVR$$$x/!!'''{]1=XCiӏikmZk!.L4hА.]ХK233?oW(vIII)>99GGGePh}S/SJJwq|u奭?X;[ l\YDkJZ.B!W!a+ۛ\ P-!2"tvs)€K=Ύ|о yAJ@h5kEzz'W- cN&DEf͚T*ٳ{7wpqQܘbee|4ntEWeӦMXZXbii]-seY[+_sl25jDnݰ4IS}Ϧ{Zhk}4%~i֠􎎎 <իWzb֖3f'SNh徲|#F`y̟'L;ӥ1}9_%GGFnnff,"iEq|uuY}8*;skv_+DTjOCMN/BaSl۲Iʇ w}$++ www,--Nnngee9իW/rI*J173ýЌtلTEnea wFklLuz ~DWgyǺ8JKK#665jIiM(O34_o^,f15jК%!:YT'BWS=znݺU7?NNJEYYDo'|ժU3餭&F3 IW$*e>Bzml߾ؘX\\9DlL ?\elL5خ;6|ޝXWgyZ]qbekkC2Mx7xW[^P^]RB<.\H.] `ɒ%`kk[fynܸۗy]KKI… =툳3 v7u/JĄFɰa˭l KP!x,%%x G|TτѣGEHTTމԟ]Mdd$:(V$&&&S_T ʕ+U3`Jyi{IV_c5?uT_iz喝M_0p`yCܜ7|!ʈONB;w{njժGaϞ=ۗ={FHHogϞÇܽ{?͛駟bffFNN111̚5cw DɓԨQ0vX:w\*}۷/z"$$0ˀ8p 7nVg-['NNN>|XҮ1 tR ߟͣpRނ/gT !BQbbbؼy3k֬ё_CHӺuk&Mŋ>}: .aÆ>|;w{ضm'OVm'==ӨQ#Nbb"Vbҥ8;;ǔ)Sh׮Q5ۛwy68q"111L4kKS(êU?eV_0]!oVx???y7ܹ3Zx~yaB!B`6mzjǎYpa4[;;;6l{޽tNȑ#Fʕ l磏>gϞpU,,,رc*Mvv6à Yt*Yk^$999[o@ǎ rJW}˜8q﯊}kBRItt4*U2j$'fFkk" +Gk˫e/)7od,_\ŭ5D||< C_LFjI#l۷(#lB!WKxq(bN}kUܲ/iiisƏ_ydl5tCWrttY"B!0֬Yʻ Çݻdff2|p*UTE*s2KB!Fʟ].4iR(W2KB!B%q !B!D){؄B! % !B!JF؄B! %#lB!B6!B!xBB!B8nZGpr+SjV2ۃ턫Gqo]a!x2E9A!Pvn6f6_^bgP\e6q!wmxPZTZ9$z58ٸ|Wr}]jD :<;[IL;CmNEB._Ym'!-O:-#G[?r1 uwu3Y~sRCi_yz=3Lޟdƕ3]}|{Sn;BowJ߆c ,O~[ {"SBz>]LjV~wv&&.- רW {#ݻ`UF.-Û&ݦSXԵ EAM'ͳaw8v-2^n>9$: ~4sŽ'ޝ;{LZtƠp^B$FM!FkY#g马蹏 {]K5[1/RW-yxe%JGԪT39-g>{g\mݹ;ʽ3M]ZӼjl3N^t6z K3"8p{3\Zw;5%Ζ'l*W}x5Mj^Wv&djquԃC܊ʄ3P(x|ҲRpͺK T&Ž7 )[9ԸG~YR2r6>̠!*&M!ݟODĵ5Z(pC- `5qmM2w~V-Qf@+NyGԮ܀:q67$ߥ? &ǒ=mw{WRCX[ذ䅝,_ZYc@R>SރmX[.w!D$ !\|q) y<¸#-pbbenn㫓zcJ ctiT(`mnwv8XUX[p7sꑝEjV2|_$;[yEN.*_-?)53?旿VcafK^iTXo NNaLϡ!DT#lm[6)[РArB!SI5XYnvnQa+,PӠ?c(QŒj5KtLb?B!U=%uK4)PPԶϔ!,rB!B}!%i[2&B!iiidddXP(Ҳǎ?p8oeY׉ʊzQV-3ēFt !BĮ;9J\j֬ ;?˻B6}'k D !BĐCO|5<ŷ-#%%u2}gԩSWQ5O̟7Oo:R̙3Xx1l޲-[f|q8C>CN@N؄B!S̬ڵc̘@ޥQ4Xzoқv] /N@^]fHH/V!D !B^UZtYYYVFFF5 $&&r_}6˗য়~ĉdfdr߾ݸqիWq23iԸ1O]\~'55p}]vyʧT*Y~=4nܤH–͛IIIa떭0<ēEF؄B!S/!1AYkybxxxp/Y=kwҥ9r3gN_%==ggظaAAAm7^'#v֟!2")Sڵk`ie!''enn= #,4oo'Zɼ"C #include #include #include #include #include #include #include #include /*! DownloadItem is a widget that is displayed in the download manager list. It moves the data from the QNetworkReply into the QFile as well as update the information/progressbar and report errors. */ DownloadItem::DownloadItem(QNetworkReply *reply, bool requestFileName, QWidget *parent) : QWidget(parent) , m_reply(reply) , m_requestFileName(requestFileName) , m_bytesReceived(0) { setupUi(this); QPalette p = downloadInfoLabel->palette(); p.setColor(QPalette::Text, Qt::darkGray); downloadInfoLabel->setPalette(p); progressBar->setMaximum(0); tryAgainButton->hide(); connect(stopButton, SIGNAL(clicked()), this, SLOT(stop())); connect(openButton, SIGNAL(clicked()), this, SLOT(open())); connect(tryAgainButton, SIGNAL(clicked()), this, SLOT(tryAgain())); init(); } void DownloadItem::init() { if (!m_reply) return; // attach to the m_reply m_url = m_reply->url(); m_reply->setParent(this); connect(m_reply, SIGNAL(readyRead()), this, SLOT(downloadReadyRead())); connect(m_reply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(error(QNetworkReply::NetworkError))); connect(m_reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(downloadProgress(qint64,qint64))); connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(metaDataChanged())); connect(m_reply, SIGNAL(finished()), this, SLOT(finished())); // reset info downloadInfoLabel->clear(); progressBar->setValue(0); getFileName(); // start timer for the download estimation m_downloadTime.start(); if (m_reply->error() != QNetworkReply::NoError) { error(m_reply->error()); finished(); } } void DownloadItem::getFileName() { QSettings settings; settings.beginGroup(QLatin1String("downloadmanager")); QString defaultLocation = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); QString downloadDirectory = settings.value(QLatin1String("downloadDirectory"), defaultLocation).toString(); if (!downloadDirectory.isEmpty()) downloadDirectory += QLatin1Char('/'); QString defaultFileName = saveFileName(downloadDirectory); QString fileName = defaultFileName; if (m_requestFileName) { fileName = QFileDialog::getSaveFileName(this, tr("Save File"), defaultFileName); if (fileName.isEmpty()) { m_reply->close(); fileNameLabel->setText(tr("Download canceled: %1").arg(QFileInfo(defaultFileName).fileName())); return; } } m_output.setFileName(fileName); fileNameLabel->setText(QFileInfo(m_output.fileName()).fileName()); if (m_requestFileName) downloadReadyRead(); } QString DownloadItem::saveFileName(const QString &directory) const { // Move this function into QNetworkReply to also get file name sent from the server QString path = m_url.path(); QFileInfo info(path); QString baseName = info.completeBaseName(); QString endName = info.suffix(); if (baseName.isEmpty()) { baseName = QLatin1String("unnamed_download"); qDebug() << "DownloadManager:: downloading unknown file:" << m_url; } QString name = directory + baseName + QLatin1Char('.') + endName; if (QFile::exists(name)) { // already exists, don't overwrite int i = 1; do { name = directory + baseName + QLatin1Char('-') + QString::number(i++) + QLatin1Char('.') + endName; } while (QFile::exists(name)); } return name; } void DownloadItem::stop() { setUpdatesEnabled(false); stopButton->setEnabled(false); stopButton->hide(); tryAgainButton->setEnabled(true); tryAgainButton->show(); setUpdatesEnabled(true); m_reply->abort(); } void DownloadItem::open() { QFileInfo info(m_output); QUrl url = QUrl::fromLocalFile(info.absolutePath()); QDesktopServices::openUrl(url); } void DownloadItem::tryAgain() { if (!tryAgainButton->isEnabled()) return; tryAgainButton->setEnabled(false); tryAgainButton->setVisible(false); stopButton->setEnabled(true); stopButton->setVisible(true); progressBar->setVisible(true); QNetworkReply *r = BrowserApplication::networkAccessManager()->get(QNetworkRequest(m_url)); if (m_reply) m_reply->deleteLater(); if (m_output.exists()) m_output.remove(); m_reply = r; init(); emit statusChanged(); } void DownloadItem::downloadReadyRead() { if (m_requestFileName && m_output.fileName().isEmpty()) return; if (!m_output.isOpen()) { // in case someone else has already put a file there if (!m_requestFileName) getFileName(); if (!m_output.open(QIODevice::WriteOnly)) { downloadInfoLabel->setText(tr("Error opening save file: %1") .arg(m_output.errorString())); stopButton->click(); emit statusChanged(); return; } emit statusChanged(); } if (-1 == m_output.write(m_reply->readAll())) { downloadInfoLabel->setText(tr("Error saving: %1") .arg(m_output.errorString())); stopButton->click(); } } void DownloadItem::error(QNetworkReply::NetworkError) { qDebug() << "DownloadItem::error" << m_reply->errorString() << m_url; downloadInfoLabel->setText(tr("Network Error: %1").arg(m_reply->errorString())); tryAgainButton->setEnabled(true); tryAgainButton->setVisible(true); } void DownloadItem::metaDataChanged() { qDebug() << "DownloadItem::metaDataChanged: not handled."; } void DownloadItem::downloadProgress(qint64 bytesReceived, qint64 bytesTotal) { m_bytesReceived = bytesReceived; if (bytesTotal == -1) { progressBar->setValue(0); progressBar->setMaximum(0); } else { progressBar->setValue(bytesReceived); progressBar->setMaximum(bytesTotal); } updateInfoLabel(); } void DownloadItem::updateInfoLabel() { if (m_reply->error() == QNetworkReply::NoError) return; qint64 bytesTotal = progressBar->maximum(); bool running = !downloadedSuccessfully(); // update info label double speed = m_bytesReceived * 1000.0 / m_downloadTime.elapsed(); double timeRemaining = ((double)(bytesTotal - m_bytesReceived)) / speed; QString timeRemainingString = tr("seconds"); if (timeRemaining > 60) { timeRemaining = timeRemaining / 60; timeRemainingString = tr("minutes"); } timeRemaining = floor(timeRemaining); // When downloading the eta should never be 0 if (timeRemaining == 0) timeRemaining = 1; QString info; if (running) { QString remaining; if (bytesTotal != 0) remaining = tr("- %4 %5 remaining") .arg(timeRemaining) .arg(timeRemainingString); info = tr("%1 of %2 (%3/sec) %4") .arg(dataString(m_bytesReceived)) .arg(bytesTotal == 0 ? tr("?") : dataString(bytesTotal)) .arg(dataString((int)speed)) .arg(remaining); } else { if (m_bytesReceived == bytesTotal) info = dataString(m_output.size()); else info = tr("%1 of %2 - Stopped") .arg(dataString(m_bytesReceived)) .arg(dataString(bytesTotal)); } downloadInfoLabel->setText(info); } QString DownloadItem::dataString(int size) const { QString unit; if (size < 1024) { unit = tr("bytes"); } else if (size < 1024*1024) { size /= 1024; unit = tr("kB"); } else { size /= 1024*1024; unit = tr("MB"); } return QString(QLatin1String("%1 %2")).arg(size).arg(unit); } bool DownloadItem::downloading() const { return (progressBar->isVisible()); } bool DownloadItem::downloadedSuccessfully() const { return (stopButton->isHidden() && tryAgainButton->isHidden()); } void DownloadItem::finished() { progressBar->hide(); stopButton->setEnabled(false); stopButton->hide(); m_output.close(); updateInfoLabel(); emit statusChanged(); } /*! DownloadManager is a Dialog that contains a list of DownloadItems It is a basic download manager. It only downloads the file, doesn't do BitTorrent, extract zipped files or anything fancy. */ DownloadManager::DownloadManager(QWidget *parent) : QDialog(parent) , m_autoSaver(new AutoSaver(this)) , m_manager(BrowserApplication::networkAccessManager()) , m_iconProvider(0) , m_removePolicy(Never) { setupUi(this); downloadsView->setShowGrid(false); downloadsView->verticalHeader()->hide(); downloadsView->horizontalHeader()->hide(); downloadsView->setAlternatingRowColors(true); downloadsView->horizontalHeader()->setStretchLastSection(true); m_model = new DownloadModel(this); downloadsView->setModel(m_model); connect(cleanupButton, SIGNAL(clicked()), this, SLOT(cleanup())); load(); } DownloadManager::~DownloadManager() { m_autoSaver->changeOccurred(); m_autoSaver->saveIfNeccessary(); if (m_iconProvider) delete m_iconProvider; } int DownloadManager::activeDownloads() const { int count = 0; for (int i = 0; i < m_downloads.count(); ++i) { if (m_downloads.at(i)->stopButton->isEnabled()) ++count; } return count; } void DownloadManager::download(const QNetworkRequest &request, bool requestFileName) { if (request.url().isEmpty()) return; handleUnsupportedContent(m_manager->get(request), requestFileName); } void DownloadManager::handleUnsupportedContent(QNetworkReply *reply, bool requestFileName) { if (!reply || reply->url().isEmpty()) return; QVariant header = reply->header(QNetworkRequest::ContentLengthHeader); bool ok; int size = header.toInt(&ok); if (ok && size == 0) return; qDebug() << "DownloadManager::handleUnsupportedContent" << reply->url() << "requestFileName" << requestFileName; DownloadItem *item = new DownloadItem(reply, requestFileName, this); addItem(item); } void DownloadManager::addItem(DownloadItem *item) { connect(item, SIGNAL(statusChanged()), this, SLOT(updateRow())); int row = m_downloads.count(); m_model->beginInsertRows(QModelIndex(), row, row); m_downloads.append(item); m_model->endInsertRows(); updateItemCount(); if (row == 0) show(); downloadsView->setIndexWidget(m_model->index(row, 0), item); QIcon icon = style()->standardIcon(QStyle::SP_FileIcon); item->fileIcon->setPixmap(icon.pixmap(48, 48)); downloadsView->setRowHeight(row, item->sizeHint().height()); } void DownloadManager::updateRow() { DownloadItem *item = qobject_cast(sender()); int row = m_downloads.indexOf(item); if (-1 == row) return; if (!m_iconProvider) m_iconProvider = new QFileIconProvider(); QIcon icon = m_iconProvider->icon(item->m_output.fileName()); if (icon.isNull()) icon = style()->standardIcon(QStyle::SP_FileIcon); item->fileIcon->setPixmap(icon.pixmap(48, 48)); downloadsView->setRowHeight(row, item->minimumSizeHint().height()); bool remove = false; QWebSettings *globalSettings = QWebSettings::globalSettings(); if (!item->downloading() && globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) remove = true; if (item->downloadedSuccessfully() && removePolicy() == DownloadManager::SuccessFullDownload) { remove = true; } if (remove) m_model->removeRow(row); cleanupButton->setEnabled(m_downloads.count() - activeDownloads() > 0); } DownloadManager::RemovePolicy DownloadManager::removePolicy() const { return m_removePolicy; } void DownloadManager::setRemovePolicy(RemovePolicy policy) { if (policy == m_removePolicy) return; m_removePolicy = policy; m_autoSaver->changeOccurred(); } void DownloadManager::save() const { QSettings settings; settings.beginGroup(QLatin1String("downloadmanager")); QMetaEnum removePolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("RemovePolicy")); settings.setValue(QLatin1String("removeDownloadsPolicy"), QLatin1String(removePolicyEnum.valueToKey(m_removePolicy))); settings.setValue(QLatin1String("size"), size()); if (m_removePolicy == Exit) return; for (int i = 0; i < m_downloads.count(); ++i) { QString key = QString(QLatin1String("download_%1_")).arg(i); settings.setValue(key + QLatin1String("url"), m_downloads[i]->m_url); settings.setValue(key + QLatin1String("location"), QFileInfo(m_downloads[i]->m_output).filePath()); settings.setValue(key + QLatin1String("done"), m_downloads[i]->downloadedSuccessfully()); } int i = m_downloads.count(); QString key = QString(QLatin1String("download_%1_")).arg(i); while (settings.contains(key + QLatin1String("url"))) { settings.remove(key + QLatin1String("url")); settings.remove(key + QLatin1String("location")); settings.remove(key + QLatin1String("done")); key = QString(QLatin1String("download_%1_")).arg(++i); } } void DownloadManager::load() { QSettings settings; settings.beginGroup(QLatin1String("downloadmanager")); QSize size = settings.value(QLatin1String("size")).toSize(); if (size.isValid()) resize(size); QByteArray value = settings.value(QLatin1String("removeDownloadsPolicy"), QLatin1String("Never")).toByteArray(); QMetaEnum removePolicyEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("RemovePolicy")); m_removePolicy = removePolicyEnum.keyToValue(value) == -1 ? Never : static_cast(removePolicyEnum.keyToValue(value)); int i = 0; QString key = QString(QLatin1String("download_%1_")).arg(i); while (settings.contains(key + QLatin1String("url"))) { QUrl url = settings.value(key + QLatin1String("url")).toUrl(); QString fileName = settings.value(key + QLatin1String("location")).toString(); bool done = settings.value(key + QLatin1String("done"), true).toBool(); if (!url.isEmpty() && !fileName.isEmpty()) { DownloadItem *item = new DownloadItem(0, this); item->m_output.setFileName(fileName); item->fileNameLabel->setText(QFileInfo(item->m_output.fileName()).fileName()); item->m_url = url; item->stopButton->setVisible(false); item->stopButton->setEnabled(false); item->tryAgainButton->setVisible(!done); item->tryAgainButton->setEnabled(!done); item->progressBar->setVisible(!done); addItem(item); } key = QString(QLatin1String("download_%1_")).arg(++i); } cleanupButton->setEnabled(m_downloads.count() - activeDownloads() > 0); } void DownloadManager::cleanup() { if (m_downloads.isEmpty()) return; m_model->removeRows(0, m_downloads.count()); updateItemCount(); if (m_downloads.isEmpty() && m_iconProvider) { delete m_iconProvider; m_iconProvider = 0; } m_autoSaver->changeOccurred(); } void DownloadManager::updateItemCount() { int count = m_downloads.count(); itemCount->setText(count == 1 ? tr("1 Download") : tr("%1 Downloads").arg(count)); } DownloadModel::DownloadModel(DownloadManager *downloadManager, QObject *parent) : QAbstractListModel(parent) , m_downloadManager(downloadManager) { } QVariant DownloadModel::data(const QModelIndex &index, int role) const { if (index.row() < 0 || index.row() >= rowCount(index.parent())) return QVariant(); if (role == Qt::ToolTipRole) if (!m_downloadManager->m_downloads.at(index.row())->downloadedSuccessfully()) return m_downloadManager->m_downloads.at(index.row())->downloadInfoLabel->text(); return QVariant(); } int DownloadModel::rowCount(const QModelIndex &parent) const { return (parent.isValid()) ? 0 : m_downloadManager->m_downloads.count(); } bool DownloadModel::removeRows(int row, int count, const QModelIndex &parent) { if (parent.isValid()) return false; int lastRow = row + count - 1; for (int i = lastRow; i >= row; --i) { if (m_downloadManager->m_downloads.at(i)->downloadedSuccessfully() || m_downloadManager->m_downloads.at(i)->tryAgainButton->isEnabled()) { beginRemoveRows(parent, i, i); m_downloadManager->m_downloads.takeAt(i)->deleteLater(); endRemoveRows(); } } m_downloadManager->m_autoSaver->changeOccurred(); return true; } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/searchlineedit.h0000644000000000000000000000607712273255454032042 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef SEARCHLINEEDIT_H #define SEARCHLINEEDIT_H #include "urllineedit.h" #include #include QT_BEGIN_NAMESPACE class QMenu; QT_END_NAMESPACE class SearchButton; /* Clear button on the right hand side of the search widget. Hidden by default "A circle with an X in it" */ class ClearButton : public QAbstractButton { Q_OBJECT public: ClearButton(QWidget *parent = 0); void paintEvent(QPaintEvent *event); public slots: void textChanged(const QString &text); }; class SearchLineEdit : public ExLineEdit { Q_OBJECT Q_PROPERTY(QString inactiveText READ inactiveText WRITE setInactiveText) signals: void textChanged(const QString &text); public: SearchLineEdit(QWidget *parent = 0); QString inactiveText() const; void setInactiveText(const QString &text); QMenu *menu() const; void setMenu(QMenu *menu); protected: void resizeEvent(QResizeEvent *event); void paintEvent(QPaintEvent *event); private: void updateGeometries(); SearchButton *m_searchButton; QString m_inactiveText; }; #endif // SEARCHLINEEDIT_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/squeezelabel.h0000644000000000000000000000430012273255454031523 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef SQUEEZELABEL_H #define SQUEEZELABEL_H #include class SqueezeLabel : public QLabel { Q_OBJECT public: SqueezeLabel(QWidget *parent = 0); protected: void paintEvent(QPaintEvent *event); }; #endif // SQUEEZELABEL_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/chasewidget.h0000644000000000000000000000541612273255454031342 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef CHASEWIDGET_H #define CHASEWIDGET_H #include #include #include #include QT_BEGIN_NAMESPACE class QHideEvent; class QShowEvent; class QPaintEvent; class QTimerEvent; QT_END_NAMESPACE class ChaseWidget : public QWidget { Q_OBJECT public: ChaseWidget(QWidget *parent = 0, QPixmap pixmap = QPixmap(), bool pixmapEnabled = false); void setAnimated(bool value); void setPixmapEnabled(bool enable); QSize sizeHint() const; protected: void paintEvent(QPaintEvent *event); void timerEvent(QTimerEvent *event); private: int segmentCount() const; QColor colorForSegment(int segment) const; int m_segment; int m_delay; int m_step; int m_timerId; bool m_animated; QPixmap m_pixmap; bool m_pixmapEnabled; }; #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/xbel.cpp0000644000000000000000000002055412273255454030340 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "xbel.h" #include BookmarkNode::BookmarkNode(BookmarkNode::Type type, BookmarkNode *parent) : expanded(false) , m_parent(parent) , m_type(type) { if (parent) parent->add(this); } BookmarkNode::~BookmarkNode() { if (m_parent) m_parent->remove(this); qDeleteAll(m_children); m_parent = 0; m_type = BookmarkNode::Root; } bool BookmarkNode::operator==(const BookmarkNode &other) { if (url != other.url || title != other.title || desc != other.desc || expanded != other.expanded || m_type != other.m_type || m_children.count() != other.m_children.count()) return false; for (int i = 0; i < m_children.count(); ++i) if (!((*(m_children[i])) == (*(other.m_children[i])))) return false; return true; } BookmarkNode::Type BookmarkNode::type() const { return m_type; } void BookmarkNode::setType(Type type) { m_type = type; } QList BookmarkNode::children() const { return m_children; } BookmarkNode *BookmarkNode::parent() const { return m_parent; } void BookmarkNode::add(BookmarkNode *child, int offset) { Q_ASSERT(child->m_type != Root); if (child->m_parent) child->m_parent->remove(child); child->m_parent = this; if (-1 == offset) offset = m_children.size(); m_children.insert(offset, child); } void BookmarkNode::remove(BookmarkNode *child) { child->m_parent = 0; m_children.removeAll(child); } XbelReader::XbelReader() { } BookmarkNode *XbelReader::read(const QString &fileName) { QFile file(fileName); if (!file.exists()) { return new BookmarkNode(BookmarkNode::Root); } file.open(QFile::ReadOnly); return read(&file); } BookmarkNode *XbelReader::read(QIODevice *device) { BookmarkNode *root = new BookmarkNode(BookmarkNode::Root); setDevice(device); if (readNextStartElement()) { QString version = attributes().value(QLatin1String("version")).toString(); if (name() == QLatin1String("xbel") && (version.isEmpty() || version == QLatin1String("1.0"))) { readXBEL(root); } else { raiseError(QObject::tr("The file is not an XBEL version 1.0 file.")); } } return root; } void XbelReader::readXBEL(BookmarkNode *parent) { Q_ASSERT(isStartElement() && name() == QLatin1String("xbel")); while (readNextStartElement()) { if (name() == QLatin1String("folder")) readFolder(parent); else if (name() == QLatin1String("bookmark")) readBookmarkNode(parent); else if (name() == QLatin1String("separator")) readSeparator(parent); else skipCurrentElement(); } } void XbelReader::readFolder(BookmarkNode *parent) { Q_ASSERT(isStartElement() && name() == QLatin1String("folder")); BookmarkNode *folder = new BookmarkNode(BookmarkNode::Folder, parent); folder->expanded = (attributes().value(QLatin1String("folded")) == QLatin1String("no")); while (readNextStartElement()) { if (name() == QLatin1String("title")) readTitle(folder); else if (name() == QLatin1String("desc")) readDescription(folder); else if (name() == QLatin1String("folder")) readFolder(folder); else if (name() == QLatin1String("bookmark")) readBookmarkNode(folder); else if (name() == QLatin1String("separator")) readSeparator(folder); else skipCurrentElement(); } } void XbelReader::readTitle(BookmarkNode *parent) { Q_ASSERT(isStartElement() && name() == QLatin1String("title")); parent->title = readElementText(); } void XbelReader::readDescription(BookmarkNode *parent) { Q_ASSERT(isStartElement() && name() == QLatin1String("desc")); parent->desc = readElementText(); } void XbelReader::readSeparator(BookmarkNode *parent) { new BookmarkNode(BookmarkNode::Separator, parent); // empty elements have a start and end element readNext(); } void XbelReader::readBookmarkNode(BookmarkNode *parent) { Q_ASSERT(isStartElement() && name() == QLatin1String("bookmark")); BookmarkNode *bookmark = new BookmarkNode(BookmarkNode::Bookmark, parent); bookmark->url = attributes().value(QLatin1String("href")).toString(); while (readNextStartElement()) { if (name() == QLatin1String("title")) readTitle(bookmark); else if (name() == QLatin1String("desc")) readDescription(bookmark); else skipCurrentElement(); } if (bookmark->title.isEmpty()) bookmark->title = QObject::tr("Unknown title"); } XbelWriter::XbelWriter() { setAutoFormatting(true); } bool XbelWriter::write(const QString &fileName, const BookmarkNode *root) { QFile file(fileName); if (!root || !file.open(QFile::WriteOnly)) return false; return write(&file, root); } bool XbelWriter::write(QIODevice *device, const BookmarkNode *root) { setDevice(device); writeStartDocument(); writeDTD(QLatin1String("")); writeStartElement(QLatin1String("xbel")); writeAttribute(QLatin1String("version"), QLatin1String("1.0")); if (root->type() == BookmarkNode::Root) { for (int i = 0; i < root->children().count(); ++i) writeItem(root->children().at(i)); } else { writeItem(root); } writeEndDocument(); return true; } void XbelWriter::writeItem(const BookmarkNode *parent) { switch (parent->type()) { case BookmarkNode::Folder: writeStartElement(QLatin1String("folder")); writeAttribute(QLatin1String("folded"), parent->expanded ? QLatin1String("no") : QLatin1String("yes")); writeTextElement(QLatin1String("title"), parent->title); for (int i = 0; i < parent->children().count(); ++i) writeItem(parent->children().at(i)); writeEndElement(); break; case BookmarkNode::Bookmark: writeStartElement(QLatin1String("bookmark")); if (!parent->url.isEmpty()) writeAttribute(QLatin1String("href"), parent->url); writeTextElement(QLatin1String("title"), parent->title); if (!parent->desc.isEmpty()) writeAttribute(QLatin1String("desc"), parent->desc); writeEndElement(); break; case BookmarkNode::Separator: writeEmptyElement(QLatin1String("separator")); break; default: break; } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/searchlineedit.cpp0000644000000000000000000001717112273255454032372 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "searchlineedit.h" #include #include #include #include #include ClearButton::ClearButton(QWidget *parent) : QAbstractButton(parent) { #ifndef QT_NO_CURSOR setCursor(Qt::ArrowCursor); #endif // QT_NO_CURSOR setToolTip(tr("Clear")); setVisible(false); setFocusPolicy(Qt::NoFocus); } void ClearButton::paintEvent(QPaintEvent *event) { Q_UNUSED(event); QPainter painter(this); int height = this->height(); painter.setRenderHint(QPainter::Antialiasing, true); painter.setBrush(isDown() ? palette().color(QPalette::Dark) : palette().color(QPalette::Mid)); painter.setPen(painter.brush().color()); int size = width(); int offset = size / 5; int radius = size - offset * 2; painter.drawEllipse(offset, offset, radius, radius); painter.setPen(palette().color(QPalette::Base)); int border = offset * 2; painter.drawLine(border, border, width() - border, height - border); painter.drawLine(border, height - border, width() - border, border); } void ClearButton::textChanged(const QString &text) { setVisible(!text.isEmpty()); } /* Search icon on the left hand side of the search widget When a menu is set a down arrow appears */ class SearchButton : public QAbstractButton { public: SearchButton(QWidget *parent = 0); void paintEvent(QPaintEvent *event); QMenu *m_menu; protected: void mousePressEvent(QMouseEvent *event); }; SearchButton::SearchButton(QWidget *parent) : QAbstractButton(parent), m_menu(0) { setObjectName(QLatin1String("SearchButton")); #ifndef QT_NO_CURSOR setCursor(Qt::ArrowCursor); #endif //QT_NO_CURSOR setFocusPolicy(Qt::NoFocus); } void SearchButton::mousePressEvent(QMouseEvent *event) { if (m_menu && event->button() == Qt::LeftButton) { QWidget *p = parentWidget(); if (p) { QPoint r = p->mapToGlobal(QPoint(0, p->height())); m_menu->exec(QPoint(r.x() + height() / 2, r.y())); } event->accept(); } QAbstractButton::mousePressEvent(event); } void SearchButton::paintEvent(QPaintEvent *event) { Q_UNUSED(event); QPainterPath myPath; int radius = (height() / 5) * 2; QRect circle(height() / 3 - 1, height() / 4, radius, radius); myPath.addEllipse(circle); myPath.arcMoveTo(circle, 300); QPointF c = myPath.currentPosition(); int diff = height() / 7; myPath.lineTo(qMin(width() - 2, (int)c.x() + diff), c.y() + diff); QPainter painter(this); painter.setRenderHint(QPainter::Antialiasing, true); painter.setPen(QPen(Qt::darkGray, 2)); painter.drawPath(myPath); if (m_menu) { QPainterPath dropPath; dropPath.arcMoveTo(circle, 320); QPointF c = dropPath.currentPosition(); c = QPointF(c.x() + 3.5, c.y() + 0.5); dropPath.moveTo(c); dropPath.lineTo(c.x() + 4, c.y()); dropPath.lineTo(c.x() + 2, c.y() + 2); dropPath.closeSubpath(); painter.setPen(Qt::darkGray); painter.setBrush(Qt::darkGray); painter.setRenderHint(QPainter::Antialiasing, false); painter.drawPath(dropPath); } painter.end(); } /* SearchLineEdit is an enhanced QLineEdit - A Search icon on the left with optional menu - When there is no text and doesn't have focus an "inactive text" is displayed - When there is text a clear button is displayed on the right hand side */ SearchLineEdit::SearchLineEdit(QWidget *parent) : ExLineEdit(parent), m_searchButton(new SearchButton(this)) { connect(lineEdit(), SIGNAL(textChanged(QString)), this, SIGNAL(textChanged(QString))); setLeftWidget(m_searchButton); m_inactiveText = tr("Search"); QSizePolicy policy = sizePolicy(); setSizePolicy(QSizePolicy::Preferred, policy.verticalPolicy()); } void SearchLineEdit::paintEvent(QPaintEvent *event) { if (lineEdit()->text().isEmpty() && !hasFocus() && !m_inactiveText.isEmpty()) { ExLineEdit::paintEvent(event); QStyleOptionFrameV2 panel; initStyleOption(&panel); QRect r = style()->subElementRect(QStyle::SE_LineEditContents, &panel, this); QFontMetrics fm = fontMetrics(); int horizontalMargin = lineEdit()->x(); QRect lineRect(horizontalMargin + r.x(), r.y() + (r.height() - fm.height() + 1) / 2, r.width() - 2 * horizontalMargin, fm.height()); QPainter painter(this); painter.setPen(palette().brush(QPalette::Disabled, QPalette::Text).color()); painter.drawText(lineRect, Qt::AlignLeft|Qt::AlignVCenter, m_inactiveText); } else { ExLineEdit::paintEvent(event); } } void SearchLineEdit::resizeEvent(QResizeEvent *event) { updateGeometries(); ExLineEdit::resizeEvent(event); } void SearchLineEdit::updateGeometries() { int menuHeight = height(); int menuWidth = menuHeight + 1; if (!m_searchButton->m_menu) menuWidth = (menuHeight / 5) * 4; m_searchButton->resize(QSize(menuWidth, menuHeight)); } QString SearchLineEdit::inactiveText() const { return m_inactiveText; } void SearchLineEdit::setInactiveText(const QString &text) { m_inactiveText = text; } void SearchLineEdit::setMenu(QMenu *menu) { if (m_searchButton->m_menu) m_searchButton->m_menu->deleteLater(); m_searchButton->m_menu = menu; updateGeometries(); } QMenu *SearchLineEdit::menu() const { if (!m_searchButton->m_menu) { m_searchButton->m_menu = new QMenu(m_searchButton); if (isVisible()) (const_cast(this))->updateGeometries(); } return m_searchButton->m_menu; } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/autosaver.cpp0000644000000000000000000000607612273255454031422 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "autosaver.h" #include #include #include #include #define AUTOSAVE_IN 1000 * 3 // seconds #define MAXWAIT 1000 * 15 // seconds AutoSaver::AutoSaver(QObject *parent) : QObject(parent) { Q_ASSERT(parent); } AutoSaver::~AutoSaver() { if (m_timer.isActive()) qWarning() << "AutoSaver: still active when destroyed, changes not saved."; } void AutoSaver::changeOccurred() { if (m_firstChange.isNull()) m_firstChange.start(); if (m_firstChange.elapsed() > MAXWAIT) { saveIfNeccessary(); } else { m_timer.start(AUTOSAVE_IN, this); } } void AutoSaver::timerEvent(QTimerEvent *event) { if (event->timerId() == m_timer.timerId()) { saveIfNeccessary(); } else { QObject::timerEvent(event); } } void AutoSaver::saveIfNeccessary() { if (!m_timer.isActive()) return; m_timer.stop(); m_firstChange = QTime(); if (!QMetaObject::invokeMethod(parent(), "save", Qt::DirectConnection)) { qWarning() << "AutoSaver: error invoking slot save() on parent"; } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/settings.h0000644000000000000000000000474512273255454030717 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef SETTINGS_H #define SETTINGS_H #include #include "ui_settings.h" class SettingsDialog : public QDialog, public Ui_Settings { Q_OBJECT public: SettingsDialog(QWidget *parent = 0); void accept(); private slots: void loadDefaults(); void loadFromSettings(); void saveToSettings(); void setHomeToCurrentPage(); void showCookies(); void showExceptions(); void chooseFont(); void chooseFixedFont(); private: QFont standardFont; QFont fixedFont; }; #endif // SETTINGS_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/urllineedit.cpp0000644000000000000000000002447612273255454031735 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "urllineedit.h" #include "browserapplication.h" #include "searchlineedit.h" #include "webview.h" #include #include #include #include #include #include #include #include #include #include #include #include #include ExLineEdit::ExLineEdit(QWidget *parent) : QWidget(parent) , m_leftWidget(0) , m_lineEdit(new QLineEdit(this)) , m_clearButton(0) { setFocusPolicy(m_lineEdit->focusPolicy()); setAttribute(Qt::WA_InputMethodEnabled); setSizePolicy(m_lineEdit->sizePolicy()); setBackgroundRole(m_lineEdit->backgroundRole()); setMouseTracking(true); setAcceptDrops(true); setAttribute(Qt::WA_MacShowFocusRect, true); QPalette p = m_lineEdit->palette(); setPalette(p); // line edit m_lineEdit->setFrame(false); m_lineEdit->setFocusProxy(this); m_lineEdit->setAttribute(Qt::WA_MacShowFocusRect, false); QPalette clearPalette = m_lineEdit->palette(); clearPalette.setBrush(QPalette::Base, QBrush(Qt::transparent)); m_lineEdit->setPalette(clearPalette); // clearButton m_clearButton = new ClearButton(this); connect(m_clearButton, SIGNAL(clicked()), m_lineEdit, SLOT(clear())); connect(m_lineEdit, SIGNAL(textChanged(QString)), m_clearButton, SLOT(textChanged(QString))); } void ExLineEdit::setLeftWidget(QWidget *widget) { m_leftWidget = widget; } QWidget *ExLineEdit::leftWidget() const { return m_leftWidget; } void ExLineEdit::resizeEvent(QResizeEvent *event) { Q_ASSERT(m_leftWidget); updateGeometries(); QWidget::resizeEvent(event); } void ExLineEdit::updateGeometries() { QStyleOptionFrameV2 panel; initStyleOption(&panel); QRect rect = style()->subElementRect(QStyle::SE_LineEditContents, &panel, this); int height = rect.height(); int width = rect.width(); int m_leftWidgetHeight = m_leftWidget->height(); m_leftWidget->setGeometry(rect.x() + 2, rect.y() + (height - m_leftWidgetHeight)/2, m_leftWidget->width(), m_leftWidget->height()); int clearButtonWidth = this->height(); m_lineEdit->setGeometry(m_leftWidget->x() + m_leftWidget->width(), 0, width - clearButtonWidth - m_leftWidget->width(), this->height()); m_clearButton->setGeometry(this->width() - clearButtonWidth, 0, clearButtonWidth, this->height()); } void ExLineEdit::initStyleOption(QStyleOptionFrameV2 *option) const { option->initFrom(this); option->rect = contentsRect(); option->lineWidth = style()->pixelMetric(QStyle::PM_DefaultFrameWidth, option, this); option->midLineWidth = 0; option->state |= QStyle::State_Sunken; if (m_lineEdit->isReadOnly()) option->state |= QStyle::State_ReadOnly; #ifdef QT_KEYPAD_NAVIGATION if (hasEditFocus()) option->state |= QStyle::State_HasEditFocus; #endif option->features = QStyleOptionFrameV2::None; } QSize ExLineEdit::sizeHint() const { m_lineEdit->setFrame(true); QSize size = m_lineEdit->sizeHint(); m_lineEdit->setFrame(false); return size; } void ExLineEdit::focusInEvent(QFocusEvent *event) { m_lineEdit->event(event); QWidget::focusInEvent(event); } void ExLineEdit::focusOutEvent(QFocusEvent *event) { m_lineEdit->event(event); if (m_lineEdit->completer()) { connect(m_lineEdit->completer(), SIGNAL(activated(QString)), m_lineEdit, SLOT(setText(QString))); connect(m_lineEdit->completer(), SIGNAL(highlighted(QString)), m_lineEdit, SLOT(_q_completionHighlighted(QString))); } QWidget::focusOutEvent(event); } void ExLineEdit::keyPressEvent(QKeyEvent *event) { m_lineEdit->event(event); } bool ExLineEdit::event(QEvent *event) { if (event->type() == QEvent::ShortcutOverride) return m_lineEdit->event(event); return QWidget::event(event); } void ExLineEdit::paintEvent(QPaintEvent *) { QPainter p(this); QStyleOptionFrameV2 panel; initStyleOption(&panel); style()->drawPrimitive(QStyle::PE_PanelLineEdit, &panel, &p, this); } QVariant ExLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const { return m_lineEdit->inputMethodQuery(property); } void ExLineEdit::inputMethodEvent(QInputMethodEvent *e) { m_lineEdit->event(e); } class UrlIconLabel : public QLabel { public: UrlIconLabel(QWidget *parent); WebView *m_webView; protected: void mousePressEvent(QMouseEvent *event); void mouseMoveEvent(QMouseEvent *event); private: QPoint m_dragStartPos; }; UrlIconLabel::UrlIconLabel(QWidget *parent) : QLabel(parent) , m_webView(0) { setMinimumWidth(16); setMinimumHeight(16); } void UrlIconLabel::mousePressEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) m_dragStartPos = event->pos(); QLabel::mousePressEvent(event); } void UrlIconLabel::mouseMoveEvent(QMouseEvent *event) { if (event->buttons() == Qt::LeftButton && (event->pos() - m_dragStartPos).manhattanLength() > QApplication::startDragDistance() && m_webView) { QDrag *drag = new QDrag(this); QMimeData *mimeData = new QMimeData; mimeData->setText(QString::fromUtf8(m_webView->url().toEncoded())); QList urls; urls.append(m_webView->url()); mimeData->setUrls(urls); drag->setMimeData(mimeData); drag->exec(); } } UrlLineEdit::UrlLineEdit(QWidget *parent) : ExLineEdit(parent) , m_webView(0) , m_iconLabel(0) { // icon m_iconLabel = new UrlIconLabel(this); m_iconLabel->resize(16, 16); setLeftWidget(m_iconLabel); m_defaultBaseColor = palette().color(QPalette::Base); webViewIconChanged(); } void UrlLineEdit::setWebView(WebView *webView) { Q_ASSERT(!m_webView); m_webView = webView; m_iconLabel->m_webView = webView; connect(webView, SIGNAL(urlChanged(QUrl)), this, SLOT(webViewUrlChanged(QUrl))); connect(webView, SIGNAL(loadFinished(bool)), this, SLOT(webViewIconChanged())); connect(webView, SIGNAL(iconChanged()), this, SLOT(webViewIconChanged())); connect(webView, SIGNAL(loadProgress(int)), this, SLOT(update())); } void UrlLineEdit::webViewUrlChanged(const QUrl &url) { m_lineEdit->setText(QString::fromUtf8(url.toEncoded())); m_lineEdit->setCursorPosition(0); } void UrlLineEdit::webViewIconChanged() { QUrl url = (m_webView) ? m_webView->url() : QUrl(); QIcon icon = BrowserApplication::instance()->icon(url); QPixmap pixmap(icon.pixmap(16, 16)); m_iconLabel->setPixmap(pixmap); } QLinearGradient UrlLineEdit::generateGradient(const QColor &color) const { QLinearGradient gradient(0, 0, 0, height()); gradient.setColorAt(0, m_defaultBaseColor); gradient.setColorAt(0.15, color.lighter(120)); gradient.setColorAt(0.5, color); gradient.setColorAt(0.85, color.lighter(120)); gradient.setColorAt(1, m_defaultBaseColor); return gradient; } void UrlLineEdit::focusOutEvent(QFocusEvent *event) { if (m_lineEdit->text().isEmpty() && m_webView) m_lineEdit->setText(QString::fromUtf8(m_webView->url().toEncoded())); ExLineEdit::focusOutEvent(event); } void UrlLineEdit::paintEvent(QPaintEvent *event) { QPalette p = palette(); if (m_webView && m_webView->url().scheme() == QLatin1String("https")) { QColor lightYellow(248, 248, 210); p.setBrush(QPalette::Base, generateGradient(lightYellow)); } else { p.setBrush(QPalette::Base, m_defaultBaseColor); } setPalette(p); ExLineEdit::paintEvent(event); QPainter painter(this); QStyleOptionFrameV2 panel; initStyleOption(&panel); QRect backgroundRect = style()->subElementRect(QStyle::SE_LineEditContents, &panel, this); if (m_webView && !hasFocus()) { int progress = m_webView->progress(); QColor loadingColor = QColor(116, 192, 250); painter.setBrush(generateGradient(loadingColor)); painter.setPen(Qt::transparent); int mid = backgroundRect.width() / 100 * progress; QRect progressRect(backgroundRect.x(), backgroundRect.y(), mid, backgroundRect.height()); painter.drawRect(progressRect); } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/passworddialog.ui0000644000000000000000000000535412273255454032264 0ustar rootroot PasswordDialog 0 0 399 148 Authentication Required DUMMY ICON 0 0 INTRO TEXT DUMMY Username: Password: QLineEdit::Password Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() PasswordDialog accept() 248 254 157 274 buttonBox rejected() PasswordDialog reject() 316 260 286 274 qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/cookiesexceptions.ui0000644000000000000000000001141312273255454032771 0ustar rootroot CookiesExceptionsDialog 0 0 466 446 Cookie Exceptions New Exception Domain: Qt::Horizontal 81 25 false Block false Allow For Session false Allow Exceptions Qt::Horizontal 252 20 &Remove Remove &All Qt::Horizontal 40 20 Qt::Horizontal QDialogButtonBox::Ok SearchLineEdit QLineEdit
searchlineedit.h
EditTableView QTableView
edittableview.h
buttonBox accepted() CookiesExceptionsDialog accept() 381 428 336 443
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/modelmenu.cpp0000644000000000000000000001424312273255454031371 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "modelmenu.h" #include #include ModelMenu::ModelMenu(QWidget * parent) : QMenu(parent) , m_maxRows(7) , m_firstSeparator(-1) , m_maxWidth(-1) , m_hoverRole(0) , m_separatorRole(0) , m_model(0) { connect(this, SIGNAL(aboutToShow()), this, SLOT(aboutToShow())); } bool ModelMenu::prePopulated() { return false; } void ModelMenu::postPopulated() { } void ModelMenu::setModel(QAbstractItemModel *model) { m_model = model; } QAbstractItemModel *ModelMenu::model() const { return m_model; } void ModelMenu::setMaxRows(int max) { m_maxRows = max; } int ModelMenu::maxRows() const { return m_maxRows; } void ModelMenu::setFirstSeparator(int offset) { m_firstSeparator = offset; } int ModelMenu::firstSeparator() const { return m_firstSeparator; } void ModelMenu::setRootIndex(const QModelIndex &index) { m_root = index; } QModelIndex ModelMenu::rootIndex() const { return m_root; } void ModelMenu::setHoverRole(int role) { m_hoverRole = role; } int ModelMenu::hoverRole() const { return m_hoverRole; } void ModelMenu::setSeparatorRole(int role) { m_separatorRole = role; } int ModelMenu::separatorRole() const { return m_separatorRole; } Q_DECLARE_METATYPE(QModelIndex) void ModelMenu::aboutToShow() { if (QMenu *menu = qobject_cast(sender())) { QVariant v = menu->menuAction()->data(); if (v.canConvert()) { QModelIndex idx = qvariant_cast(v); createMenu(idx, -1, menu, menu); disconnect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShow())); return; } } clear(); if (prePopulated()) addSeparator(); int max = m_maxRows; if (max != -1) max += m_firstSeparator; createMenu(m_root, max, this, this); postPopulated(); } void ModelMenu::createMenu(const QModelIndex &parent, int max, QMenu *parentMenu, QMenu *menu) { if (!menu) { QString title = parent.data().toString(); menu = new QMenu(title, this); QIcon icon = qvariant_cast(parent.data(Qt::DecorationRole)); menu->setIcon(icon); parentMenu->addMenu(menu); QVariant v; v.setValue(parent); menu->menuAction()->setData(v); connect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShow())); return; } int end = m_model->rowCount(parent); if (max != -1) end = qMin(max, end); connect(menu, SIGNAL(triggered(QAction*)), this, SLOT(triggered(QAction*))); connect(menu, SIGNAL(hovered(QAction*)), this, SLOT(hovered(QAction*))); for (int i = 0; i < end; ++i) { QModelIndex idx = m_model->index(i, 0, parent); if (m_model->hasChildren(idx)) { createMenu(idx, -1, menu); } else { if (m_separatorRole != 0 && idx.data(m_separatorRole).toBool()) addSeparator(); else menu->addAction(makeAction(idx)); } if (menu == this && i == m_firstSeparator - 1) addSeparator(); } } QAction *ModelMenu::makeAction(const QModelIndex &index) { QIcon icon = qvariant_cast(index.data(Qt::DecorationRole)); QAction *action = makeAction(icon, index.data().toString(), this); QVariant v; v.setValue(index); action->setData(v); return action; } QAction *ModelMenu::makeAction(const QIcon &icon, const QString &text, QObject *parent) { QFontMetrics fm(font()); if (-1 == m_maxWidth) m_maxWidth = fm.width(QLatin1Char('m')) * 30; QString smallText = fm.elidedText(text, Qt::ElideMiddle, m_maxWidth); return new QAction(icon, smallText, parent); } void ModelMenu::triggered(QAction *action) { QVariant v = action->data(); if (v.canConvert()) { QModelIndex idx = qvariant_cast(v); emit activated(idx); } } void ModelMenu::hovered(QAction *action) { QVariant v = action->data(); if (v.canConvert()) { QModelIndex idx = qvariant_cast(v); QString hoveredString = idx.data(m_hoverRole).toString(); if (!hoveredString.isEmpty()) emit hovered(hoveredString); } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/cookiejar.h0000644000000000000000000001422512273255454031017 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef COOKIEJAR_H #define COOKIEJAR_H #include #include #include #include #include QT_BEGIN_NAMESPACE class QSortFilterProxyModel; class QKeyEvent; QT_END_NAMESPACE class AutoSaver; class CookieJar : public QNetworkCookieJar { friend class CookieModel; Q_OBJECT Q_PROPERTY(AcceptPolicy acceptPolicy READ acceptPolicy WRITE setAcceptPolicy) Q_PROPERTY(KeepPolicy keepPolicy READ keepPolicy WRITE setKeepPolicy) Q_PROPERTY(QStringList blockedCookies READ blockedCookies WRITE setBlockedCookies) Q_PROPERTY(QStringList allowedCookies READ allowedCookies WRITE setAllowedCookies) Q_PROPERTY(QStringList allowForSessionCookies READ allowForSessionCookies WRITE setAllowForSessionCookies) Q_ENUMS(KeepPolicy) Q_ENUMS(AcceptPolicy) signals: void cookiesChanged(); public: enum AcceptPolicy { AcceptAlways, AcceptNever, AcceptOnlyFromSitesNavigatedTo }; enum KeepPolicy { KeepUntilExpire, KeepUntilExit, KeepUntilTimeLimit }; CookieJar(QObject *parent = 0); ~CookieJar(); QList cookiesForUrl(const QUrl &url) const; bool setCookiesFromUrl(const QList &cookieList, const QUrl &url); AcceptPolicy acceptPolicy() const; void setAcceptPolicy(AcceptPolicy policy); KeepPolicy keepPolicy() const; void setKeepPolicy(KeepPolicy policy); QStringList blockedCookies() const; QStringList allowedCookies() const; QStringList allowForSessionCookies() const; void setBlockedCookies(const QStringList &list); void setAllowedCookies(const QStringList &list); void setAllowForSessionCookies(const QStringList &list); public slots: void clear(); void loadSettings(); private slots: void save(); private: void purgeOldCookies(); void load(); bool m_loaded; AutoSaver *m_saveTimer; AcceptPolicy m_acceptCookies; KeepPolicy m_keepCookies; QStringList m_exceptions_block; QStringList m_exceptions_allow; QStringList m_exceptions_allowForSession; }; class CookieModel : public QAbstractTableModel { Q_OBJECT public: CookieModel(CookieJar *jar, QObject *parent = 0); QVariant headerData(int section, Qt::Orientation orientation, int role) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); private slots: void cookiesChanged(); private: CookieJar *m_cookieJar; }; #include "ui_cookies.h" #include "ui_cookiesexceptions.h" class CookiesDialog : public QDialog, public Ui_CookiesDialog { Q_OBJECT public: CookiesDialog(CookieJar *cookieJar, QWidget *parent = 0); private: QSortFilterProxyModel *m_proxyModel; }; class CookieExceptionsModel : public QAbstractTableModel { Q_OBJECT friend class CookiesExceptionsDialog; public: CookieExceptionsModel(CookieJar *cookieJar, QObject *parent = 0); QVariant headerData(int section, Qt::Orientation orientation, int role) const; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()); private: CookieJar *m_cookieJar; // Domains we allow, Domains we block, Domains we allow for this session QStringList m_allowedCookies; QStringList m_blockedCookies; QStringList m_sessionCookies; }; class CookiesExceptionsDialog : public QDialog, public Ui_CookiesExceptionsDialog { Q_OBJECT public: CookiesExceptionsDialog(CookieJar *cookieJar, QWidget *parent = 0); private slots: void block(); void allow(); void allowForSession(); void textChanged(const QString &text); private: CookieExceptionsModel *m_exceptionsModel; QSortFilterProxyModel *m_proxyModel; CookieJar *m_cookieJar; }; #endif // COOKIEJAR_H ././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/networkaccessmanager.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/networkaccessmanager0000644000000000000000000000573212273255454033034 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef NETWORKACCESSMANAGER_H #define NETWORKACCESSMANAGER_H #include #include class NetworkAccessManager : public QNetworkAccessManager { Q_OBJECT public: NetworkAccessManager(QObject *parent = 0); virtual QNetworkReply* createRequest ( Operation op, const QNetworkRequest & req, QIODevice * outgoingData = 0 ); private: QList sslTrustedHostList; qint64 requestFinishedCount; qint64 requestFinishedFromCacheCount; qint64 requestFinishedPipelinedCount; qint64 requestFinishedSecureCount; qint64 requestFinishedDownloadBufferCount; public slots: void loadSettings(); void requestFinished(QNetworkReply *reply); private slots: void authenticationRequired(QNetworkReply *reply, QAuthenticator *auth); void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *auth); #ifndef QT_NO_OPENSSL void sslErrors(QNetworkReply *reply, const QList &error); #endif }; #endif // NETWORKACCESSMANAGER_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/toolbarsearch.cpp0000644000000000000000000001316012273255454032231 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "toolbarsearch.h" #include "autosaver.h" #include #include #include #include #include #include #include /* ToolbarSearch is a very basic search widget that also contains a small history. Searches are turned into urls that use Google to perform search */ ToolbarSearch::ToolbarSearch(QWidget *parent) : SearchLineEdit(parent) , m_autosaver(new AutoSaver(this)) , m_maxSavedSearches(10) , m_stringListModel(new QStringListModel(this)) { QMenu *m = menu(); connect(m, SIGNAL(aboutToShow()), this, SLOT(aboutToShowMenu())); connect(m, SIGNAL(triggered(QAction*)), this, SLOT(triggeredMenuAction(QAction*))); QCompleter *completer = new QCompleter(m_stringListModel, this); completer->setCompletionMode(QCompleter::InlineCompletion); lineEdit()->setCompleter(completer); connect(lineEdit(), SIGNAL(returnPressed()), SLOT(searchNow())); setInactiveText(tr("Google")); load(); } ToolbarSearch::~ToolbarSearch() { m_autosaver->saveIfNeccessary(); } void ToolbarSearch::save() { QSettings settings; settings.beginGroup(QLatin1String("toolbarsearch")); settings.setValue(QLatin1String("recentSearches"), m_stringListModel->stringList()); settings.setValue(QLatin1String("maximumSaved"), m_maxSavedSearches); settings.endGroup(); } void ToolbarSearch::load() { QSettings settings; settings.beginGroup(QLatin1String("toolbarsearch")); QStringList list = settings.value(QLatin1String("recentSearches")).toStringList(); m_maxSavedSearches = settings.value(QLatin1String("maximumSaved"), m_maxSavedSearches).toInt(); m_stringListModel->setStringList(list); settings.endGroup(); } void ToolbarSearch::searchNow() { QString searchText = lineEdit()->text(); QStringList newList = m_stringListModel->stringList(); if (newList.contains(searchText)) newList.removeAt(newList.indexOf(searchText)); newList.prepend(searchText); if (newList.size() >= m_maxSavedSearches) newList.removeLast(); QWebSettings *globalSettings = QWebSettings::globalSettings(); if (!globalSettings->testAttribute(QWebSettings::PrivateBrowsingEnabled)) { m_stringListModel->setStringList(newList); m_autosaver->changeOccurred(); } QUrl url(QLatin1String("http://www.google.com/search")); QUrlQuery urlQuery; urlQuery.addQueryItem(QLatin1String("q"), searchText); urlQuery.addQueryItem(QLatin1String("ie"), QLatin1String("UTF-8")); urlQuery.addQueryItem(QLatin1String("oe"), QLatin1String("UTF-8")); urlQuery.addQueryItem(QLatin1String("client"), QLatin1String("qtdemobrowser")); url.setQuery(urlQuery); emit search(url); } void ToolbarSearch::aboutToShowMenu() { lineEdit()->selectAll(); QMenu *m = menu(); m->clear(); QStringList list = m_stringListModel->stringList(); if (list.isEmpty()) { m->addAction(tr("No Recent Searches")); return; } QAction *recent = m->addAction(tr("Recent Searches")); recent->setEnabled(false); for (int i = 0; i < list.count(); ++i) { QString text = list.at(i); m->addAction(text)->setData(text); } m->addSeparator(); m->addAction(tr("Clear Recent Searches"), this, SLOT(clear())); } void ToolbarSearch::triggeredMenuAction(QAction *action) { QVariant v = action->data(); if (v.canConvert()) { QString text = v.toString(); lineEdit()->setText(text); searchNow(); } } void ToolbarSearch::clear() { m_stringListModel->setStringList(QStringList()); m_autosaver->changeOccurred();; } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/0000755000000000000000000000000012273255454030110 5ustar rootroot././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.0000644000000000000000000000064012273255454033010 0ustar rootrootQT += webkitwidgets network widgets TARGET = formextractor TEMPLATE = app SOURCES += main.cpp \ formextractor.cpp \ mainwindow.cpp HEADERS += formextractor.h \ mainwindow.h FORMS += formextractor.ui RESOURCES += formextractor.qrc # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/formextractor INSTALLS += target ././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.0000644000000000000000000000706112273255454033014 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "formextractor.h" #include FormExtractor::FormExtractor(QWidget *parent, Qt::WindowFlags flags) : QWidget(parent, flags) { ui.setupUi(this); ui.webView->setUrl(QUrl("qrc:/form.html")); connect(ui.webView->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(populateJavaScriptWindowObject())); resize(300, 300); } FormExtractor::~FormExtractor() { } void FormExtractor::submit() { QWebFrame *frame = ui.webView->page()->mainFrame(); QWebElement firstName = frame->findFirstElement("#firstname"); QWebElement lastName = frame->findFirstElement("#lastname"); QWebElement maleGender = frame->findFirstElement("#genderMale"); QWebElement femaleGender = frame->findFirstElement("#genderFemale"); QWebElement updates = frame->findFirstElement("#updates"); ui.firstNameEdit->setText(firstName.evaluateJavaScript("this.value").toString()); ui.lastNameEdit->setText(lastName.evaluateJavaScript("this.value").toString()); if (maleGender.evaluateJavaScript("this.checked").toBool()) ui.genderEdit->setText(maleGender.evaluateJavaScript("this.value").toString()); else if (femaleGender.evaluateJavaScript("this.checked").toBool()) ui.genderEdit->setText(femaleGender.evaluateJavaScript("this.value").toString()); if (updates.evaluateJavaScript("this.checked").toBool()) ui.updatesEdit->setText("Yes"); else ui.updatesEdit->setText("No"); } void FormExtractor::populateJavaScriptWindowObject() { ui.webView->page()->mainFrame()->addToJavaScriptWindowObject("formExtractor", this); } ././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.0000644000000000000000000000455112273255454033015 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 FORMEXTRACTOR_H #define FORMEXTRACTOR_H #include #include #include "ui_formextractor.h" class FormExtractor : public QWidget { Q_OBJECT public: FormExtractor(QWidget *parent = 0, Qt::WindowFlags flags = 0); ~FormExtractor(); public slots: void submit(); void populateJavaScriptWindowObject(); private: Ui::Form ui; }; #endif // FORMEXTRACTOR_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/main.cpp0000644000000000000000000000435312273255454031545 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" int main(int argc, char *argv[]) { Q_INIT_RESOURCE(formextractor); QApplication app(argc, argv); MainWindow mainWindow; mainWindow.setWindowTitle("Form Extractor"); mainWindow.show(); return app.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/mainwindow.h0000644000000000000000000000470612273255454032444 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 MAINWINDOW_H #define MAINWINDOW_H #include #include "formextractor.h" QT_BEGIN_NAMESPACE class QAction; class QMenu; QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(); private slots: void about(); private: FormExtractor *centralWidget; QMenu *fileMenu; QMenu *helpMenu; QAction *exitAct; QAction *aboutAct; QAction *aboutQtAct; void createActions(); void createMenus(); }; #endif // MAINWINDOW_H ././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.uiqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.0000644000000000000000000001034312273255454033011 0ustar rootroot Form 0 0 680 218 Form Web Form 200 150 400 16777215 about:blank Qt::Horizontal 28 20 Extracted Data QFormLayout::FieldsStayAtSizeHint First Name true Last Name true Gender true Receive Updates true Qt::Vertical 20 24 QWebView QWidget
QtWebKit/QWebView
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/mainwindow.cpp0000644000000000000000000000642212273255454032774 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" MainWindow::MainWindow() { createActions(); createMenus(); centralWidget = new FormExtractor(this); setCentralWidget(centralWidget); setUnifiedTitleAndToolBarOnMac(true); } void MainWindow::createActions() { exitAct = new QAction(tr("E&xit"), this); exitAct->setStatusTip(tr("Exit the application")); exitAct->setShortcuts(QKeySequence::Quit); connect(exitAct, SIGNAL(triggered()), this, SLOT(close())); aboutAct = new QAction(tr("&About"), this); aboutAct->setStatusTip(tr("Show the application's About box")); connect(aboutAct, SIGNAL(triggered()), this, SLOT(about())); aboutQtAct = new QAction(tr("About &Qt"), this); aboutQtAct->setStatusTip(tr("Show the Qt library's About box")); connect(aboutQtAct, SIGNAL(triggered()), qApp, SLOT(aboutQt())); } void MainWindow::createMenus() { fileMenu = menuBar()->addMenu(tr("&File")); fileMenu->addAction(exitAct); menuBar()->addSeparator(); helpMenu = menuBar()->addMenu(tr("&Help")); helpMenu->addAction(aboutAct); helpMenu->addAction(aboutQtAct); } void MainWindow::about() { QMessageBox::about(this, tr("About Form Extractor"), tr("The Form Extractor example demonstrates how to " "extract data from a web form using QtWebKit.")); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/form.html0000644000000000000000000000177512273255454031753 0ustar rootroot

The Green People Book Club

Welcome to The Green People Book Club. Please register to obtain a membership with us.

First name:
Last name:
Gender: Male Female
Check here if you would like to receive regular updates from us:
qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/0000755000000000000000000000000012247412261030645 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/src/0000755000000000000000000000000012273255454031444 5ustar rootroot././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/src/formextractor.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/src/formex0000644000000000000000000000306712273255454032675 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/formextractor \title Form Extractor Example \brief Demonstrates how to read form data using JavaScript \ingroup webkit-widgetexamples \brief The Form Extractor example shows how to use QWebFrame with JavaScript to extract form data. \image formextractor-example.png */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/images/0000755000000000000000000000000012273255454032122 5ustar rootroot././@LongLink0000000000000000000000000000017300000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/images/formextractor-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/doc/images/for0000644000000000000000000023546412273255454032651 0ustar rootrootPNG  IHDRbKGD pHYs  tIME 9r( IDATxu|FƿLAM.%p+\{k+]W2õM!Mp4Ia'f^îw^;N3cﮤy; p$!< B 'R$D@R=k"Vj^CoE_cLߪV:B"(t"pjKnRۥ0#!cM+FP[Ԧ~j mJ֐[k4MsVicc3BP,z%6GLJA !hԛو ٖ ZUµVoi?Wmu /-}xf=̦@y wBX X)P 7X#c&+f*5H/ [ٱοL &> "B@SVԆ*W)DK;҂ȏf_#mN_ִn! 3C<"RUf_^\,A(W Κ5ywJ.]l$hWut:7ڵw}}:B6YoB6K6ǝ X6%6>K.ih! rݻ_;s^ NgEn-u'6)+,5--mIʺ#IRi#c[/ xf4MC)[ut]`шMYfD6%j XvE>I Lu.lae::Dmqt (M pVTwZ gQ@LV?Ԯ]1.M(wmrm]CD.4f*I(@Bl4M#{ 6g˲PUКm % D`7U^nx}.[AVFEI5.8$Iw]uݹ|>][ܙ8۴UΧÌ8dl14̇x^roQ>D>虒M~Qv,`᚟='2XLJqٱ}^Kb\<C.>{ i|n'.fAZVfCˇ-: EmF寪Zwiz.)'H4 Zck` $Iraw/Z̘$K/@Gcۛe}uK.!aga2U_}@| Ϥ˘Ow~eJX{fL8 _>acN3aƱnrn6Y)Q(,ˍْocKL;o#ѣ5,騪j\ٟe $ RU5@}gN=(e}J>YKN#^s<ěgD/GjMW#Z'+mbgm`r\;vlcl6z{"3& ::d9`adEc1X(&!̀ L*-Gb:6:u(}'a]l.6i //`冥dwNlLm MݗTtصnr׷VƅkqǛٷx+)#eDCYɈ'!㫟V٭?'LCB#@|\_H `&~߰G1Fӫw>KV6P)e DٷȀZ.>BzwN4N |6YS2b0}Ϸ?T/'3krVՂ@CM`Lpqk.Qg d;%&#  Z՟6y03̍@IS"ֹs]L| ?/@B"nDŽhχsԞ=Xj%GX7Jjd)%nыg6:ǎtLVdLf ;+pK.lFTa,%-@CC^ǮѠKDDسg>1O|_t#{]=,`ұ% ς<:NN.>|aLʟ!6+PyU]eY/Q $fv .*Xu3v9c[ݝx?1zOOډO>N\>>y_~'kʸYe\MQߟ8 巾aYY<u#C*YGg\t<]H0RuXPwۢp[ffjJ6&7UN,nk4b4LfȘ<Ε. ;OTFDuLoeB6h1q,BVB9\Fg cV (U7aS<>:+ڶE >+b1lmXd>{LrR[/bU|gh{?89}gpYC}>;ՎDF BtLVP1|%e&4{رq?}%GvIB$M̂9o>_=31q}Jq[/k08jp>3Fv@DTiԟ R5>:M/lԝÐ&$DQQ(q NÁ" ͵>^=ZƔ)Ίl3YMGrFL.ՂO\ņI1kb11Y0+<M׋jN= GS. 5MJTlæi_r#P% KgȜ[mz?@a/eb;DEp 4Uť$.J M`(J;h|Tz4uէי:=OQB2 w .^ty)/+'ZUPK>~/q;b/p`FV9)+/ѕN'R^VAА*&JQE,y)--xJGhN;k>Xgzf#Pa= ֈ r'dSUo)$DHNĪ *-E**bJ\nL~'ohI(tng9ڂd5 etMG2d) RY\M1c`aV̸5 2ɘb:Xchic %iB/$Go௡j:A~~~mדgş,&P&FKVb=kqiZutj:5<^UV5]PUytJ!vnJ: QV|xP{~I:q30G졼̈́H=P&}nVbHb~Z;]+y+[:(+$*DǾ,YSvdbDR+нOU!}F>3ug^>L@KF$VsCls F ճE[6lb`ZRJ R||N]QQěIb_-^c8f=JtLA2ɠHȊKqGe`Jꄧ*\w5hg,3lDd2]eNhp_8m 5'p/M͌TbdkUaRNab7xb|dC.u\#a [|'\ ֚mJm]|_$IkEo+蟑IYbcA񖗳{68yPVkx[fd})CFf9IF-ytMC oP:i&<>}/s /M$6_$. Q1^QD ĥE%yX,+OHg)*Ǯj1$։Xi*eD),,հ%%QPP3))q^eeQIDɕSt")F4]BGFzy2 蚆b0rRPINOWe%T̒]6IAQLBRpSis<h,fK/`WVOZ= YFj`V^pۢuRa`T>@+DEwA\iං]YЂx4$:х `pWxZ+Ws|sZ˿Ho2p' MS/*Ѵ:/5?GkN9ߚ}L euSaRT6tEm8 nPkmI7NdੲtQ&غz1ͱJߛ\hFn8Gv[cպ5U/1 -Ւ ֟kAÉ]Jaaa@'0 MҴֈ\_f_Hĉ [8` ;""6>P7+ .QWs"36]RTVu7뚗]k3N|\/b4R^ <}ILSҁIMnpk؂[k?]ۊsˬ%i_u6gO\)?]&"&7Ur}st}se[Pјw~nO@GmX&t.zջnDMikx@i:h"N\X7/ kҙ1N:[?[bwkSo yvOlx~ٸy*Wq^lp"'p<_y ~ہGJo@[194H5N-{SFDBdʄfm+ ).o`Rl=z1v$s.S'%6# ऱ0* J\ o(Cvb8|~ ol0w=K,&QǍG{PTVFMcN2OvaOZmꥥB}j_p:v7'tEFʉ׍{wy>Ι<SI1ǦC 6kVNB&MQ'?7,役W0{ Ç{Bm+'A+ghlsdlI"M'yX哼r\}t->ƀcd+/bs˸adˬXX *k/>[vKJ2|*^JAq).g!߽+Sy`%O<>͇8+*jT|^/O[_}-kvuzʋٲ-TElƸneTWK~˥(?2G_RXYT^磲$|{eg%_o`m*b[P}jxb`ͮN^Β>(__m^|gq5gdg~i][زc{Kߺ5[׿_՗96;qm>z*ɒ/+/źGep陣(q{ÿ%issɃV [? T>T4TD2gb'&3F=8$2i 蒀gN3fҭsLfRV_.y%^>-ùWp98h8c0d & Oa"\^[wEs9 %ͪ2(QV3}1pE.1 2Gu%SƌGr O>J+<BRTc"b LJ5+X-aؙ4Ǐ'>g)ܷ3'e*:uaqorC1 Af"1Qd2>8 _%YwNFˆQQeIt!-+ tđ56,c q-P 8ğ6j@iBKD/ !|dvĉ'1eD:DU-ۮ(j`@H,Ȳ.GvF _=Õs;yuTQL Y§((2x:p0f}iqt6#h*NMC#^%4MGU=.oȿ+o.O݈AWQpWqK>xI .O?HYGADi aI`κaOٓRc-m,) JKCaN!B-[:ͨ 18JqLm<<wKI}Oo{x_f*:A݀lVä#4mC?T^GywI"57q?,|-g$?Ҧ B5F"u_eÈoS/tHq#Iݍ4mCϞ-gb512t@{9Ҙr7'+㛏bC+ɘW>$Wkv8-)fϾRR{wgy,IHQed];ؾo/aHX[TMi`†e5ħ\}5o3j!3G-98YX2陕HyQ)N@ZntJO )5dK=O9A=1ȇ)Zcн/-U[̉ щC;3tM!*!N]I"ĦfD\J ]{ufځ.H:c B\l FłA1LLrƎ`Pt闍hCVg:"%+^ݲԽ#V cHO%pɤ0 tJ*/'.}_}y`#kzBbe TƍIέb$:6̈́h︳uqEE1Mb@&=#]n'. v`Nf`ޤgd IDAT" O=ԧ@ U֚?-랿f;6G6 P* +TY}k>kޯ+bu]o¢@4t$d&HhT ) ! jD*ݏ&<""V򣰃V@( 6 ܤSs{km-ss2+jj8Tl6,KH2E E!** EQ½f0lZ~-~_MRsbr#9S ߶Y[.E B3\MkB.H@KvG!jlDbkaPk*mk \;it toNyz}Q>4Lt^čz2/55շ%Cs4wʹ[K{)3_.X`t}Q>4Cj5ؒMi62hJ^q7B_skfz kv!GJքK%|VW 8 B "6rffnNh__ogehYٖޠ0H4Aω9e%˥ 4 5ƄsIPj0Mkri ^WF BhXWӢZK$d!5ljfu/c Nx՜<$ҴğPq8UPqiVihzeޒ-,VGUZ\֪ i G HMRR&IQ EIIIkݛ-- ׿ %zC赆ϡ KH='J0 X,,1rnF uVs'UjhDF܄aPZ+y5°tL9DH H36­o?%@̖ioq;[7?{wP bNȢOoÜՓxKnr7mDNΦsz<2:("cW⬆#^Gඩu=bխ,Kќ>l{],X?pV*K,ɵ|&OE;*rםW||-u/Dknszc""i Y# 1rhy,ZKe=fqNԄPe#nL5y[O8Ns(ģGkElb{l)NHh!Sjq V*&C,4'IZ̆MjxL߁j8By(l(Sό|An1EU*P ~Yw2_,?>w#߹qo_賮"t5Ͼ)eN`ذf9o|kV!efc}&KIʗgWaċemLe|j1總NׅC+!go-םKV7T|.|Yή{W1[-hLY^*1xQX#KW2AQye(DtDY7h;Ԇr7SETȶOlhBɶhyH8m++g巼mS'NH$;]$a߿1\mLkcb5?dZoU5S"H@]odXKiI'򳧸%ĒW>7G;\w`0̘-ݹzP rz;Xv':I\xqiDraߗý[ur&렩}d'?rH VXrEڜ- .⯩>p";OE%5;YHZr_|-F>7dzWd]ǭx5-I°rx0hS$(޶s|+mW{Y-d ɠ`2%АQ(Ϲ1Y&Hz.xjT≇ n5p92cx_gbPvqywY7\[<Nz]sCQ ^)y71l0_``H?} FHUٿWqM~>? o^%()7ﰀ{fC{Yw* g}z :[K<~}RmdݜWc,VAg7#J :>9kYeE yzTlG&|xf(k(Lz5g/;ut5o*d[Ƙ}ri7䍩'b%VfΕOw9RcͤNYd1&O-l^n8(ȐF!Iq̆8f?;_  L442S}Nt݆d -Ɗ xl^}lvr1&)*O^GMl̘1(!d$ -ti! igj;߸m/|Rmz:J^l,5"VXvjؔA(.ȣ`NT,E((@VV*08l濏̺I~=\q #b]nyv/,G]|YCQ}^4 4 F2G5FF0IQAn $ݤ8)?C1ZHNK'.8x@dF]I{T,xRR.\6 7P\ɒBMps(?HBBJIA2:.G<*cXM8kOE 2*8TPqɩ$%F7tPA)^ dea ]]ypD_rxp{pnށ6S((,QQ6R҈楬O"*6d©~]|'I6bTASkKn4uP1z4|btյy]$LvN I mI\Ait>$3Tْ9>Y(~UR0*2UbMg5|"j~Dg2osOERYvs}kbї0IdN9F/d۪#/H}?4 OX,ߊ#( hyz[CN @qRK:v&[,uHXbKBBr6TA^<> YVHጱϑ7>oͣr"6\>wû&qhmn3;/'=@Li򜯹rqIʑ|/O>6]Itr:^~ ۾{@==.oY>¼4$LL?nf 1uٲs}V8OՑdv Uu78~n^7k]4E1ұHn>NЉpHl|q c6ֱjf3h!YSoGs })F^?_.`Uӑe&K6}LJM*[<ͽ|d{/zUϿ[BJths߽5ewmJpx'5.&&kO`؀nU"w(/ŗo</&<$YlSG`ǹ<^.a09h&5z׫O}.;ߝ<fO;>u>Bdžm@kj@i"amk1nؐ I6> 7Oɲ,WG6zkWG80h\+.QSy3H{bN IQ,#}їeT.x2.(B l( $NZ' Z]Sߡ٠ZR: \_X`:ArXNKr P߶kOjt朻cW=3ybo?q:V |yλ #BYsno9DzRxsH{̠cjdӒX~A:'g ì߹Hԏz9S.}K>yNfXo_|բ7s${Ι4yxuJe\x sCSN(Qm >xk,M֊؝kz;t&ۿeh@|>\u\}$,{xy/~2nƈ4;ywS{I_ŃwF +mQ9w}ggz`夋ϧwg遪9w:m~My1g s 7dתF듂 v官Ow3>YqFy]N76gE뷟x{xN LOU l\7y.y J9 xz,繹3ӛ?t+[)pc$x9&LO-n׳ }P\q TP[J6Q8,lکO댿\Ȉޙ(DzLכrQu/aߗ4/]gq `ALIN?<{77xѱܕo7]%H|&xh^ 7E=4_>| g?ȭIYR8ٹmw+系9g2Uw=i1Ic3'h3P>64pF$m1+2Bq­i٫r͵d+R :8qU8ꤺblg4Br <ɯȌfZ!JIoH.dIBur ^?pmGVб&{;+#:4ASԞFh$FuO>Ә2|]fB\8HMR $dE`01` n&uND-AQ'ǂqd IDAT%D;MGuz#Wi! ye}8|{WrUSoe6e=+ƍx OO6IkU귯'es 7=,q]"/xi|ૹ gm1god}'x$7o7ΙV-`'6'L!z:By;Yd7S  B2H.'rɗloI;h-QD@[C V#-b Hf)3M}çМN:Lco~oWI]kϸ?/be+U #kÐk))D+խOP$ M0&,/Gll"c2]ǧkDXq9~Z+utU>(X,DGm͛orr 1|jD,iVu8UoBzI ۭlbИёNfQRQeg #6a&BhW>zz~_L0 ^ ]t Sęt{[vToyG>Yӳz_Ŗj%a۷CFq--FVttY"S:f "&B,ZD4n]#; P&2|]tծ$.CRFپ"{%/ޱuj9Dd~J/R7ݬUΚC{8Ps*H1Axru}0kL{5$YgbbT?R6ew" *_<`ޝLRt"\+sMY+ZU;7́Cmntfc?2~$ZEuA~Gr+#6,rJz]JɓPL Yqs,ZNʎ (;wmD,g?x??# )@,/sp?N}BQk"TX7,HCyDˮ5˷l\O_o0Jіz.%Ã~Mdner觷_4jzX)JYs{IF_arT^Ul_uҁOʓUE;xY]2y ' grt'a4mwl[;OsG# UN(X*\t,+S,k+WSuof>;i//?Qw!S }) f.l1x>/S\KɡjdV/SkH'I;YM"ad˯r._g. Ʉ,NӉsk}邲)Cc>hM9I,`,&37ϟΚ#9фh 9E5 i0yə}^&?=M 82DּRb0>`qsq[Һ}LOqr"d0wʣ\<12gkRFK$'y֮!F>ǃ*q gGl* }G3aHid|t?)YoX/.$#m `ܨxG{Y:O*^ c 5^z ά\;[:ڪ;Cam-6'ik|dŪ-l )Y3? G>EI/b˵#φ\-Eh_rYFȕը"|,]3K7`=99n/ /j\#sn݈! _=Itj~7`_r]Yt 9nv*KԨ܈!-#$՝A!^}O0HM捛ǣ7(Tvx "a<oq _Z%E'7p $,NEDSDx׹f\zĤ4r(Z|CiTw';/SnW^*涫L]N'G`肇]d -)׋G@C+쳈$gdb06";9\EFay99'G;GK^OBBU` 33ckYU\L&bbbé~]tT$n˟NCRݕ2{M~@^^e@\E__'+ 7F廬ĹP^ڧĤ->RH%UcccegZ[Xa!$&J؀q>#PB ؊PĖm4U%MfRI7XH x{{Vm^%X nh2Y2^ד\./ IliB{ZגG`1 &5aN`M+kw8 *duȶF+ӺkVZ/\.G.TJ.e֣5 IYcsP-nuUZi̖nDR A sjpFP_yf^%{E+(ω@ 蜛ᮑEBMΛ*v-TVZQꤩmߔލpj0mm"1 cExz B.d_!EIV@{+5 -i3[R$YиC4Tj睫~vi4%ZۗW2eijB~_֠w+]{ӮX1C^gMW 7س};ƝK%%9P8.[Dgif^[_[+nU|wVVHY  A輫<=@m!.'5[:7QCF8H*аU'Z|:Ƥ>ic! (p>nC PہR&" &.3@ w2bq3-B[ iJD:usn GnJi$b_'FNO{ʎf- Hq<:mNPUa%H A½0Rcp&|*_Fسi= 0jcK  de%a"V4;ukoZ"j٤ܡUse=fw.[fׯ+й5½;Jqfw!ku 4-ZN AD؈zϿʜei8RCf4mdzsN$OEh֔ qѣ !mC<]9y!1#3H2YlO::;ZEvD1?캋"Bé'hS}]g19ybsϗOϞᡞps1ि+ 7n[?bT{?VE94Y.hUR{[C%liڻBbKz#˹F5ded 9Ӱi[:tLϡym8Ik) ݇ |ظDc67/fњ vpF/$x $K$Hg]+'A0CFf&f}2۶n$ >ԙU3g%zD&|zG1_ktrI$g` rBU"$Hx]xm\&M_`F M!۱T0ĚͷwEo)ʁ* GAa< UJ2Bxu1&O`D>^E}3BK>})3m%YStl<9l2"Gmec lm/tV$VV0X!ݚ-1ݿ孹+sjrr9yN_ĩ<=n v D _m˳ɏAV+r/B6$AZdUϐq?| W-zz~޽Bcr}>UdJ}8iը|qT~m7/62TJqx(֦Ȑ#޽>(-5NyWm>Ϝ "2Pn29Bڈg'dooڡB.䑖p -j> 3[lR^AqF=:7b/OB@ޜ1  5cT Zh뜋޷jZwz)/>ÉrL?9oqqm'ZD!*/F.H Fj>ˢҺ1eϹݗۻiߘ1ux{8wp}'OEF&2#A8k!L7n%Wϵ3TZW<g~uO=>$fxz1rl"Z_|3 w{ ]==2}ERCONĥ!Wk]E]'ZMʷ(\nEyR]\g*S9oT^bƘeJZ?o2o/gN偞(EbGqP! jxnf'*N ăK~\Y⨲8].( -##\pww/c:'S7wvyi$;r^>SmKN6f|4rcg/2%6y퇿"`F0 @&/NHEQ]2r !7s_71f~h /ψZ4jDn%HP]'!!*f0ϯ8Iٳ%5Lܺu Иi;{{{jL3P4;96 l<@0QhU8W!11DTѻ"> \ ,{yG8)Ċm Qڵ%hj9/6sytʛ|<mBeآ\D)EH?w3;4o{> Y jnTTTjڒ:yiEQ$''X!)Ӗ4+JS"KnnV=UtĮl2/oYʪ!/\U  ꚃrI-e=SC#wi_Oϳ' iqQOV졦 XT!Xɮ=myh DIˋVI̾1kɱθIAi%HJ IDATP~"[ꤩl~*Jk4enؕ#$4j+7kVJLVp<:;t#9U~6 }>U,A $HseJyqW*%TEլq1Q]s2e}r_d%{;EӮ:'Nj9bn9ELV@bs8} KL-ҳp`sm*^9r.Rg8L'ג AZ+\s+:/-/֤sJ=Ԕ,uS\f6* ˝&6xjV$L/'Ye3*Fy3Nd$dJNQ,޾4o({Ρ3o \x qjnŧ` Ў>>1rsx^#eq8::꼅uFe $XU@`ke-ӚXƚ{Tg0*0L(R{fZ[ҒPֵF:2;VVY/7=JBN^LޏfqZ؊)4iۛI#@{ubyϲk[y2%>#xdē4Q m;^%G&ѪWO~K,_71eh2'ض! )D Af+CڬYi4~mpqqAVZZ{e#m2Mye@f巼4WkWe^-kJ-cGiX] ee((tpttPpwwtC^9Hc^.kggJY9р^'vv4f. $T ^OBBU 3Z<<< IEooo4;ν?$&&K333h48;;WNOW#`*K|7Tp,.ZKڰ-wk'-Ԩ6 fEPitUBAZ L:l4;1+`Suo4 *g8Ƽ.d֎8:b2q E .':J$NteeBڄn˚Ԧ} $H-|ZV6u&cHg6)xso y=!̜츸% LzJ-7p+%ڊƴ+| l?D?3/9-bOs*\ `ڤ\〳#,C'wW1MY[n$ DG ?}rRm$yY⌵NbʸXƱV*@ $TϬ]wMJ9޹Q$\"FH#N_L@eL'-ۈY~Siw7iz=qPoEiޙǟ0`JbQS)v=NnVI9fЄtf1tonr%\ۿoVsj x崚_~~?|DdCv<{vn[_V~ulIY+3leżHCN1ޘO/ᗟ7J 'VeZleN rolE*  $H\Y˕ȕwtG]j/aZ;y.J3@:@/9|[XhfL.n8xxdZ5\pj+$tw:(f& [6+Z=)9df0O7 WhЮ;={0{rQ1夑>53{t*Xc҈ִi56# ;[hB8 5[X )/l!j< $@ ;{ \+质l4`4OшL#( *u[oooZ-.~d(SR`ْ8qÌ΁ߝ]lx>c>pw(G?ڔ}+>}q4j>S7xIӾÉ#Z$fvLysZxJ-ENNLZ-NNN_˰afvl-ah+vH҂̖$*ddd+X $HE[.'uIlu*1(U*z3 `(Z,&Sur԰FHFɩ\ 5ZWkI`Ad+MbK Ė׊NS]2 AGXחg.P4P|V*L9* d e*_Be~%&nֲ9Au7vUUfq,SbRKDV *Gjr㒥giJOj*$Eٌd= \nr~/3VUXL\N A 5gV'M]*o{HFF 4!B%Iyi,<ʦfbR&L[x lkk3,- $H#V$X\` .kω\cƖ`֪W jV *mBeત4_y ֊)YJ[q/ eV#Lf+$A 3KWƫ2"%YFʐeܲWVXi%%krRXT^"ϫ** "vUU A!e]SMhueԘa-ّMmޭϫ[IjS $H*AcsF]ݚЮY07sHh])#H W']b8/bÿ ]D^Jmvx;T-|9/KNs~HCI-ѵ#АƁ-블j.x?ػzִ(mUcf.nE6<ߪy^ԁm/4@?[9قA<_$\pҁѹ}s<]}˾t q-%q.4tLJ9= DxȪĹ?ZIb ^137ѷgJHF5i磫3w~\p f x#7f㯵l}EޝW۔IbbY| $_"7>tKG0FfJe%ߚMiU6WSD c{$d>6ӱ WOcub< S.^ɑ8maE-#wCn_t׎lg\?`th!3lf#(3n#;v_6KCu}>1ڻƳ5hufsPp!o~ۼ[JƏK ˜˙[ؼw ~2aC?ia?t aEi}3~\ƈ"1'k:y+\q*cV9GzQUAƿk~ac86̓)Vɗe0h 4?WtNolc8G 1$]BckFIìv><-C*!3&;Vf+ʐGzi'pq&N8snbetyx(:G[hboʐf32/*vAZ-{bq#G 0u*e ~!ɛGнu(rCE>O~G E=T++9#׽Κ 3x˷?E#H<u:v>~D>GнMCTxVW 6!{]l9O>8}N'1YFn`Y~)]Sӻ8L-P YDoZ;{暋8vr+5ߒg}̠~ [3vnnf? w0svf֬L^@8?>v|Qy8{?~Yẁz@c,]ˣe>k*'dqH|`;p1  Ԛ-xhڇ@lZ>ZIngOƌ8voƆGqlQP_ʼ6p%-C{_(m iȗwx.pYi@-,^y ]6AZ-ب=CFɿexɚrUWIc]\7 T*J%]FFc1kbbI lebXBfC@G_8bǛ㚲pyS1_;E죙+ a-լd*1xO= ')wȄhv8s"w&Wv}>.DDt>xqt#GV|NƇW2Z]<7y/.\AE&Mr9<}F*~+3Τ|i'ߡQT(Z PPk4\ YG6Nȸl3 cg̘З=߼ѽoO.,7Yinkޒ+C(δ8MiNlKY3ܸޙÄ&]axiɗo=;:?J΅*n O;듎7xix5 9:{{ %fv~?~Hk&nb7=%/G < f`c#rc>Ҟ#oq̙3iW/rNp Wi{a(?õؙzd/q:qmW|>EHE1 汶Z5Wӻ[c">')Uy㙏?mU͘[ o'z<,zȾ:uoEѵC3R%d|&c>ӿ5{)xkʟ0j 2hud ]ו-0D?cC,ܹ|82"XǦo^Zl^څ㧱Qwn3Z Dꃹ; '<åWg┾8(,xka;1Fŭ3㉝<|D:C'ޡ)gK#ߙhWҧQ3Z1!S({&zN[~o_iV~6-49-RD=S*3&1ɛ+s\}!֟`__Ѱإic*4Ђ6./4 u{7wppZ]f^]4x+-MYQJU,˽&nn.)))Vi,rZ^k$8-}[Kf+Ь WYQ?,ΝBssN׎.]?SIwx <61?&]_D5?NU't ڷ3LԂ^2|לdh4Z2hl냣zfpa+Ӆklo8A[|F+BK}h4mǏ?ԙ >%91}xelMuASJpPag;̎n=7]Z#>ڞfSQP5LJ\*ww@&x~_4A@vh 9WG-ֿ˂ iвzk><kd(r~U\$ñɴ/z%c͜yV&gE/t~8= lڏ7qXtB fMc] iO:'+[ԧ!c.d(ѬĬ[EO6+60514uI+CYxd^%wV#xx4L?\pn<`'ͩᨶ DAECw5Vh,8Л5ES/<.?њԇ[3fW??-Y/6@)6g#<MuDBu~>^LƗnk^pS!"=щt֎Aٮڷ]|yh% ߾;ҶSQrp ;=cuf ^Ɣ?(}\d w sIh$!9zu=M&E<>['μ*{ěS G?e:_n<׿vÁȐGqw\xhF~4Ck(?s6kZ@km +ZƬ_6%ekK~BZ.pAYiY](Xu+µ2k!buN4א˧)Z iUQA IDAT(rPѼL!%Ռ͞z>.ڐ4 Fz6Zy{S~0;7Ln"ѧqUB, .͕z /{ I174G7qjǀnmi gn-5v򦥝/\8ȗs?F}; Zͷ+cM:ϰhorY-ۜdd]6i }&ׯc^޿FIrZ9kQBZp#vQhiӫvhh2c6Ndz#5IS{-ϟ@;E)L$VMJ HH'+1<`"';ZNK݁XTDj:/@s\"=.,<1HINR;G er,:} ώn\sYn$JPj吐&c6)ϫRAT*Q!CmJ 'gT DSa IħaNJ8Dit_fsQ|3PiqWΌHshK ,'LGyɜ?%_jtev ӠL{Edv%ř3+,RljsJ5))9$N%..7#r<2Đ[дP|';guhuUxIjw6/'>hOOW7Yz> CQAK||@TZ#& ƐBj: f41.Xmۊ~mo#:_/PW5.]Ϭ2׊sj CrԳ?X1^#&ңYYsF:>8.aO`?wri 0w%7'E,sHKSÙ0("Ǐ" v$1"HFWZ0UywȁYbaMZL/#1ap1'!7^!t`N';9HCf0raN%QiW6}"@5 ]LyDs ̭KLhEC:X؉:E%qX !jUpV fE [{Q 4r-"%ӡ\ ѩ+iq17G#wA-;vO&bc/Ks<eǙؽ7O( LZ#YsSIP"w]Ei\;Y2ԙyuPia D]Xd!/\Uu%A-J5%MDQz5$l]^&||%JU|{FtbClb 5Gm"<gF|]^ 'ZbR(sf|N'Ѡ9'8uh*Gg[Sj*CSY<03[WTzr .[FK7dg9{5K֯yC?*9ʸe1ϟe/nHDkވzr5y ?6Gq&6_cwQ^M邏FB $H EPXEHbA{QbADA+" %J]u۹3yg$+sA MW6`6I 9=͏a;{̞t`r#PݚiVOϘGɞn7݅n<2q~\}5}"Nag'Jj|k'/d6Vi^AcH(n:&1GW)0k>Jqtؖ0>~[}c+bs֟EmGze8rDVӦ`'ݪ5gK}f 2ckU4$hLNs?`ij39nǫ&.[~>1쳂Yf9g66߾^xU-՚G [q \~m}R*yIؼo_ڹ:we&\Q3|R\žwԈޞ_'?ei &3baC_̉;Yv+&`eE6}v7m yag)gi,$W],r̥VX@". C~\/&.n7Q|Bj۟`C%Yim,3cEArOxg~/u](\E*/1fs 1M>S8 L{*W,]源xvk x(9w!Q <5q };ƀ6I#nn qr:'>ħd #^3H{]2g#yHD}Y8.rX't)Y$#o{!Q5 _ٟ}n`[ p'7J'*!䦤DlFMzf|HfN6Qg`HFz;܄$tzf' ?.ex*mtMF C03x1E9ԔP̳/5]Nzˎ}a3FY$ k>J?c %8d2A`"<]2i#tH,2 Nec1晩/We"L_b߃!V!8bқ w3xi03~ dG8 VƽA&8yzo?̞M{-D@h$2<5EdHW>)GA|Xvu+x!8,+︋G44c3wccuv噗Lx-2RsyI01_KlBZI/ fc0:$KaEY<>^f[3yD:^I,!KҚckHaS1Iwֈd{b iLt%dF%| co*I\6h ^I$7N!HL |0}ڜQkO<oDbrB&gZ x1,@VΘKby=[;{Z9qd/ K#Hj@^F8#'ʁ`R ˔8D#m$gjrdXL%=^FHd :K"@c`?+H|L(}Xl *X-6*L&PJLKU%7&6< EsRi*}?r0Ht>㉵frs$Q|d KOPYz;QD%F'DEۗ4O\rd=O~˵cPyn=軮6;p_g͒8{'_[cf{O?p,ɍE+..d2 &**?o z}U-l‚^lO6+&I۩blĊ@j!kUb&s{9VJdVS X1Zzwe6HzvY̘-Vt@rm1# g 8o-=m:Zw:ؓ L,8_PE&Z o>CN|;W8auH4Rq,f{i9I9tԑPPur>\M,))h4~G+UqQV]d~IPאFw5]-W֠7w38#__Mr~KO72+ k6K-=fn>l=OA\,Kiӌ5Đ;%Y]#wb?9?-E;GiM`PF4v0O> ~`lOZGxv@VO{8J~h*,*zqW﫟Qd+ P/-?!,\Tʸ_| aKJ &2y^3zi]hT KXld+pe~DZw$![*fJM'ش7^]U .ժLJXј?mweMaN~ 'SE N; U)6D¬$ +o>H ]D&w?xͯx+> 1H ZB qwl*v^:C[^r an_LQKĪ^Uꭑt֍5 *|2ಆXr"cSUwOm2%4½9X:\F 2]uF!Zlrd5a](O1 +V$V3rr٬:Oau'2IHE42r3! VLW6 LvFH\'4b;QJ%)S4#I%)RNZ C/#bXqaQ*R*!4fxq%ad A6 b# )x$,}~[V\2qmy䱉|e.c9F1i$e|NЛ \6/[^JS`ʫ4GD=tzjĘY?0lsF-kgf4Gz!@)e7%ɐFFf̚?7t#|eEFzKC/ә~9eWp"3esIO2y'|Ƀ_?9rdw L&6 QzC̄ Ϣmޝ3V5+n[%I B[ 0i,Y4`nڝ+?gNjɼ=Q~|c=;O=Ciz2T -˶<`]_ުK^qJXu@^FV+eeeMm6f3!!!5̩E%>Zhdj 4.&II%pA6䶌d&HhBJR YZ]?(, bn^"H #ILˢqtH:SIm˥%H''$Ę)7>0f͉ 6J2hbEWH$t?~ʑ^ҠNlNLR 1AH6&-qiJJJA(jcn FhKRr8,t\iŠ)$%"8Q\+i1T>c-b-g܏l) IPW> 'YGz ݩVRqC.$:bc*++t j*I̊o; N{e8f'pf";./7[XD^_Kv\-eu ^9)wg|@^۲{k?ps+wfv&/}~r7ykPo<4xt.cNN4:f'Ij.OZ߿ivG=*UEQd.dUUQg E* 6 $ )̾7?LCU3W],krU;ɲ(H3cY7;߳rp62 ֟cپ}"bcH`7; R)ILkBr\:YF-e'ο ,N`@uW j[uTsBՉ0>pzk<] a`'ھ-)u{l,,E=y7g~ ^֗w~Dс |1%3AQ.f<= HK[FcR6̝ǎGX3 5qo_x[8} ~,*oa$}.\IV?yg !8Pվ*6hьcKN;|L+ )svg:4V$42UK^3~Oh\ تth&ɉ$FsVcsv$x7es[r&-A ID IDATUD^~gtfM NkBΝS;"pw/{43)@3z(7Ueb78_^ɇcؿmNQIDrK3u)ܶב޺'7¡? |t~4 Z,XزfMfٴ m'{(;}0v,@hp—TZ3B4㫶 N" zeR˿_ m4;%篣mx.;TbUl'AgTYNejqЅ0j4S>΋a3[ " м.RkIX_K,q]$O<^oNyV )q +[]A6gCAk[vi#0Lۄ+SjҒF֠QMl›ֻ,g_\nB}፿y陬eŜgEqQ%I1chѪ3CX?~6MjqYAlXFDcSm\2-+<?͛93yq V,].I c_ͫ#SG㞏ɺA?IzrhJ)xt`l )`պ%XCP~|?r{[f\8C "u@'y^]}.͡7ezj=IIor֞K^OLClzL9:9H­bq 'q&Z7ﻟH3$3g8.]g$c:-/M\ȝrPS&!hM1qp-U+De@+IUWIdf!q$ۯ>\a͚ZuqŞZttjc9G2:Ir@:Ir`:x9v >(:DsKErlǾ_S$-ɜVVkRg5L aJҀ{M3V,\IO4RPW)4kܔ<GbN͠eD֤Xd)1~d5 #842cHJoNbdV&4&rI +:4`ҚrA^$g?fR#ywBCXIk$1&=:ӱyc"#ȻNF\RMN\p(ɉi:&HG3Jnn&av1A4$\k#,:]^d4 VEKpݕ$GaiȣI| Kf fybٌV6O)8䉵 ,gj>O'F0$$mXEʭgM RGyf2>T$$T^A*^ fJ"Ĩl6 v:q^O]u|:SUb{*'}Xw\k'6bb =%7kXKd=_8nOOqZ\h5\P6C 5v_2N`.2쿿[/B6tu\mE뷬j)ד< 8?|MCC 2L[#~$HV@@@^C8`TWر[cA+@ LΗ2ua}n_oH'[p]_"j`]On4Ǩe\ t G7e-2 ?K{_vӌ5ȚX :|ѣG$:IYomOrVL]ڗ>88zFXlyB#EjhX/&%% oLy|戴')c\ 6g *{XV֯_/ P6Y@@vLbTZȸܓ3tB6\z?K X,xRj\' m',~@wncǀ^ɛ$ĻU0a)g|*:z&FA7WC,˧_VV`V5z9Wj5C\^MBjQi@MƌsۘGÿ6,朒 獨SL򲺍izUv`g\Pt\e|EeJggmn]ƚ\ڶ=Ɩ%H"nIPLUsm}3 S[uVuQƕqjA"O V/o$'HBBq$ހ^Wi5OE `15.8\궘6a8^jP'%Vhuӯ9'2,V">v GvcO?>~sc}%|[ZٌtY¹)۵9?NH )/=Wq#\2X_w|dfGi\'NCxAKXtF6KmtJ.=}2?e=`f~W?[Hhl*zd~O˸~$i O~_#u<4j9.il1l5֗DW >q>W0m[f#Swr qO Gp>lrv=E g4qy<\ʃLM);7ƎbO2r/vex2FУx8W %" κٵUV3<-# uS]W-ҩ j#&"U5FMcSt oޅ4աc_|,}Ro-Kyfi)\K2 /95e":nJ۠/Gn"Phm8yh}6!hWi#nuolE};9dy$] *zZM p"2&q6TT vQc~"f3SJ;~w^IHۮIɋjE@6˹(# {YULz *USzA@xo"6("0S lE Vү^d`:\ܝjqh dy!"11ɍڂIAFz ZD":C' s/q(pSN}bPx(«+TwicFH ?4(f+MaY@YY^IN8{Su-brIW+#‰:CӃS?H0A͡~֡Y|(Ӹ 5T8W>h&^^-(Z&+giUlEja Eu<$ITnj$fthk.^r7Զ=oEJ"w>cQH@uwXz^O_GuLyN3bݏW$mQq*Uq9!*Utg_xqZ޼SBcRci<|6bu[ 2h@DLwz7<=l~1JlH5$֔2m>_ 3'MǾFA&zv>cC@0aO1捝4 FN`ߙ:m?[͞GPT,#i eg̏;cż6j5J< mP 3V+eee 6 BhhnZDVRRB`` ШZ,S+ޜzGoqul6j1 nN4KIzjYU!v)P}hؽT)':8p:t})ŘL&BBB J+2ZކPZZJfflV+VN]Vt^lAjn +WҦMz='***(,,XLii) .=4z_kfQPP@ttؒX@D`0ZmVUUN WK\u/iLJ5:9־S﫳-">ʻّNw[c;j4 9NAբq:Om`( PsO;.'e*З몫2zI';vy*9\hڧxoBV@Mkc'$ еQFwue3<}hF<(q!ΣѮ秘9iISg ozz Hk嶳59EQ())СCgŹ {~ YJyyt! SwcO*6S7OWX"""j^*k^c>w&BCCŢs X]Ťz'6'SoYg)y=q?ʯB.=mGM{-pnX8 FQTB:xQbu ەXf9-3\bݗ2I/gwю]5B Ԏuu+Py@uL/KM&ݜםY}uOE /jp]WO;J\#V!Ӗ0lfMth#[zz}uͿc~OuC_~]/,x1.ŬX,wFP@@@@z{ZQKкm}mcG:Ku`҈>6v>s93ֆBnֺ݊Y8VDVW;2խ'Yݕ9;jC|ةM)[[{פLmeqL]:_Edd_(кuk!b끘 XSQN4W} RW71[yb݉ܳ *RlOҾ}{@jeڵNs ԏS'eܝG s\Nʸ .boOŬ[f|Mj !""iHB] IDATPP D:]NYO@w1 t8W) QwuuNQü5JVcBmNA?r)8?TNu$1y!Ru~8y!^g2i5eۭq䶹=k`I~\6wh'Oyc~*;U߳%Tg8zwOmvXE8b}V+h$ߓln!_&y\ۈ=H73&gOQ1w EAqF#@ ?OEF`:gdz ',^K@D2AJ E)jhu R;cHP3$HÉ'(.3D+narU ~ֱ뱜 - 1 IMBArÇbmJEZ.S+1PL֔1TMAdmFR\NBLSsYF=V{[=.t0骃8uzx%^-#pM|Ľn$)$?2{ǧ~WC+hSVʺ_Ƨa;pUW5b(EԳU2} -ZdyNC1*EwsXy! r.+&1;EIr|4eG Q-tfJZ-F]<я-I F1NAFzQVà:Td>Mhvpoob.)q 뚿7eu#+f۱Y..ȸ$W]/*`O}Vǁ lf@Zt~soM1Qs3-ٹe.A&Ƙˋé7W@5ZC@x Yiq/\ ٴfҬhz~viEF嚫Y2v& AsK20*]m=w%j+Wq#:Um?E.>"$+$ ɯPw%ټ'qW&RϓmN?N 4@O(K0?;Qϻm_S_}__N]>'T˓/gsSE9䦦L&6 Qzݰ(TINN&%5;Md`UGߧ͛eҴE;ZgX}zoBHX qѦM2IGTl2-[Dфiddd i΅ݯ᚞hެIbON'#+Lpd 55FMm1Ʀk`z^Ԝ@NK|fKcCMXAII fMF[ѱc; :CInGCeDG'<0$.H j#ߝ<Јڵ$DcE5i`\߉r[Cc!>-tk(IHHV2lfBBB|QXG傿oJt:Z.&M8Fգfw{d}J#U#RNj:ze8p`uŘL&BBB< VQlHȲ݅zx UȾxURu^VPP@ii)V'=w,ٔZ9^F#vMk0ͬZ6mڠEz4hfJKKIHH8c`Z߿h'aes 7֙+))h4X5>>~ VbN XBיu+nk|UuTsBՉ0>pzk<] Y]zdYFvw@h|UU(k4h김uBgYl>Uu첽m(.Z>ֳq΄2\'{{˿ysӺŚsœo N#Fؤ'z[ўT10o _ׇ\7UwOhkp 5|8VjH,?dD@Lh\NDvk0B~@Q=޽{ my~VJIIuTV$ϫy`=-S1 mx /x]/˺:XF:.rUo*#P7[.͡7eN :r5פ79k%geSߟ6 anU^\$@C1h"'6C8]qoc<. r= +  ^@@gs bRX/;x8_Mbk/%uUg;Ż;֟"VrIƓnmbMrjz3U7X{Z-SeaE&?{*hωuFVsOA* P bZ󙿻ƹ#ӯ)b%'da5@@@6A{?/𪍅] Zadjg`r|)SxIć몕p"0guk rh&VXm1Y嵧c|$Diwt딊F ?~UVl2, ,hϧ]vDEEU?*+u zC+&0\RVnVqM\?]CAA9H2rM$%FV ؔ3?hZI̘ۡ󎏢x{w%􄐄 @%^DQ*V@QPQS."`WH\ B.\B^|g+L~y5\~u۸EdMwq)KkK tuJ3|MҗZf+7i<1"UcU4cTzyElQӰxTH$:5X$`d]S^'o?A?zXUUl̛7S r.\ȡC{ v[ySw{j{ ITP#{|3_} xbHlWn|7>M" ^nOw%!(CL\3vAbE|g Evoֆ; x/rJf.9ƭwM.xہy"Q4r_x+ߟF_[ugyg{-:'/]~ۂ36f{ӼP]c&b>~=ʥeskw̪mlf 3HD`۱,N^S?CoQ̀w䅷'".%ޣȳ9|dW-cͶdXW_+BXV6l@Ełb!??ł$lт͛7cXJybEUÐ}*rO۶ɱ#rX4}I8O,2(`ޥsǮt,sK:>B)t1}'X0k>yI6mE]/kNs6#V`4GyQF1j( bcHN}cLTŁ+Lz} K~MtcqaO?w_S\s|:r "@Eiyv*Cy fíJ>U.3/)OL_$2jyF䥽f瓣 Fy8`0Bηǯ>FyM7.đKo#ko<dH]8 kn|$j1evdҷ/f"nHfh<"iuÙ$DS!W"77^O͚5q:#I t:Q5ػoلyT5MV,{4$sz#xdX" YGd+?Ԅװby]9G:3zIؤdlۇ?'SaP2SX[7yTg8u&VC#,&"9{6;.)f{܄g_z ӽ2u&n_?jLJ o3Fk֟|Mϫfs6箛O$yI,.gwHԔ.Ze(aI=MSZ~*//\*7>˗ϸ]gM 1IK.bJI_N $2'ȶX8y[סޜzV0mDVE8xfZtjLBt&$C0"""0ѸivfG=V7u:j5p`8oW$zF#IPUNDV<΀p]߆>Xɱ9u hiâ#5v`[7ԝF):x?}$~`D뷤/Yu7ؤ/Y!#!&XNL$]Z S-,IȊ Z-m-9#tpf#d恧0ؼ Շ"h=p(OIe;MGfhĞO*4m{=V#֬HX+Eeğ)$ 5{_=}i,o_Q>Ux!f)Ye}b>F}x-zbӹ3$7q;Ô_4 QQI<5wӉ6N:?\s/ K~1!7s_;F#hG l P ~k0PUÁdh4΋DN^^,c0*+՚gnI-E?QU0ٰ0`r=pKAqʜؽelNMP;ZI":E 2Dd\ jDB^)kbBFa'`tڨ9Hv*+YӶ{B zd 0؈CrPa1(>ȇɰ!I(;eYe߆,9HFr~Dn4h2DmUXz3z(W恗gFyy V?f|W NpsRuG2ex,~e s;0nkё]__[p]^w@dz&ZΞY?L LPH/s7rE͢s -ELDFD^_q)j=1fp=A)(Ş:˩,a63ά'?/,+OгfH':Ȩ5Wj3 aT\4X,s< U&ڝXuQᕶ|$ocŦ'xdx<4&vo~e?ۇ0MNd12Y+0@ iu45bsiטfѭ$m![,M#o@ZqtC;͞C{I;3((m۲cG~~{h9|06mM6*^wF>[iU@< :P3 ͬi}?@Rj@-| f;7%umռ1MLلI :IluPs>x4':*}eYy'g#oLye>/!z@ 3  i\G͟?oȅ7Dv5|9+|0_5K \=1be)+O{1_i…D FOiuz`N߯D}nn IDATYKʋ'inUE^1/ڄ2&V[Q {럡ͮBV$$Id2]vEшQ.:WZg毘kK KOQW%.+/y'%Z~_! =hfK#RD 4_zc$?TF_YW8w}X.lyEµ8I5hРAC5Ä WGBȔ L蚐ՠAQYcl4̿m0[R2Z/lyoJ q3ngh5s]]wJwǕ/-G” 4hРA*!7bU(EEVf4WKT%_;wr3rHdY֞p 4\ -)ki}9?_Q}4_Q4tߍ[أE/)W3,+ddXɱA| ?8oY*2`Ϸo:CB0DPV:Sr-r:p)Fw}͎*1%*1LH8Atъ;jGg @/ Eo( $eYxd4!*.  |;t>[a:z]_фZ v,[}3gh߲ij+}څz3&ӹcW1ێ,VJ.&2ɯ<wfS`|-94Xi~=.2αN ?u'o8mw*;:w~y3YuʍgI.n&:ɯ>;`TRw=7r^K>|4Vn?Ω+ڗ)gL>i%~ȍ}{өKwޜ+dL~u,?=)yȹw{_91֕|L6zuɗKNwf k_`.hDG;UvHm'Yf|]Iǚ !9/^A(X[J׮y/{EoUkY$.(PN[i"[.xZHp|.xQ@4 N`|lX7KBt> A(ÖʔL:"Mv<Ǘ_J EArcਏȲ쳷9}>3a&[NF$^G}^|6}?>_(C?SȮӋƉlnOХQceY#P/p=w%;+f_,Z;N5bg_Mٿhw8N]he#SOg xhwG_xV}YV %uT:<2lknaTQ>8c%߇{n4>#~Ih~\:b<άEj9 ?ja^F~@F)/OD6?Ùd> Dlοk])6SCb+|8o+#fƄ Wi~\4)?]z,Vgg9ެO>9w9ٽk&V\~pz jQ};Fo9w#̖FG#@kTVmM".kEqM_:H<FNef!oBu[Jwr$gKZi[Cc.ZD@౭߶oŎL;V?r^<=6ohCiGynV/~ns;9ط.?CnFjcZu P 3Û'SC8:a0B\k? ޠ "uB,-a;\#ٲe'$x /ApTuT), 00_:vhɆSY3+Oaks`Omk|;]Yj3́:vhS|zynI Bc kFI<ӿN$aۊwذe['`:?3y6w%W#Yfֿ+7vhźr{[6k`K29 D@ %X"͇H\#m_KP]SGzt[TŅMQp)2݅ag۪ECD,\;n(ws6e $n^%xKtC uqZ.A[hÌU{q~S"HzIOXt Һ턚؜eZbd曗`O[8]yyo1ڭS1!%*Lk؈[0VlZM>3| CMn7 f؍q x` _ $¼P 8E5c>Mˊ#zu*VeU'c%?}飒u1>I￈p74pb;ʑlz??HHMel%DzbC ى^ym ֌~+s文۴ci(j,OxQ&3߂f&MCj\||AAQoۂǏKr Ucu왬]5 "|9q)ޞͷJa0yzD2(e 4/\ě/?EitoYXBh-,@$dAՀۑg;gqS => Qƶ€Y߈ <3b;dM8wŒhۺ0큱|I{ӿ<yoYHɻ~-kpts>>Ce|Zb̵ߌԬ9*L>ĝCo~//"B] W-@x{'t7\'C +,`2Ӧ{f>S+Vҝ(]7qOc}O0] zcPZ w0RC([G2ͫ/GN֚sE4l}D(66as{:8v.lwY/Si_{S~ɳitg&DhH0Lÿ~壹%r/\{nTMnW oG,wE@i_F9L:{yv= Fă=hj2[wE i_f˂cp ):"O3c|<ԕ'MY3pm~_9~j:st&![j6Th'[4%ʊ'YV46ÏZƍ+k;E~,I@SO=uP]Ȳh =~lΞ؉LC;{%7Wq\p&u6Iu1ݿ4ץ8skQ W) e%0"S'1j@B`ϱP~3׬84i݂FMh-k|nΓR=@$#I=b}(Eܳaќ_v".X`AqPd۶`”؎a=B5 63|3F0ѡKkkXjN0|"4"vua(zMH6oJ]%sJ`S[cLEMDU&=WK[$b#м^Ib}h8-9t:51v:֍.r`fR2k3Ӏv uҲc/%!~mڍ33CokA4kP|ҭ'Պۈm\w0ܒ.-yp#w*q"AFDҩC27`t%4E^ܔQfƝLjmџz֠vb#թCɃ"t[b)?j0aֈ^M;0Tk̈мvO3o].ţRe>w'[RK``A}"WDTu/ϛݎ^h,;TI~2{xRhnƒzDĊEDTS,}RSS)K`f"##=.ʁ8qD j׮MBBCUq\*.AWƨȲ zKW9[..YEo4Q!#t|XIݵӾ=l5CEίpI:Wd.QgT'C_ԗWUp\ Ith?.ۊ2R`0(2.!]#pD9%tzMŅ˩w&Mo.wcv//Wʛ4AU 듻%2,7 X(;q* \uzއ\zg&#>P`_Y@.pp9(A/^PTAJ?)+{=Zyt 77xdYɓDEE: UU! UcccR0&^tSl-9k@|쩀4ФI4hP9]Ez#@QBo.>]Y@H~]=V@< a0ⲝ5)-9뮱+W#Lgҵʴj XQywimfyth=Kz_>IuJeC]>G"H[c܊ r1\,y:nyf- 6V WzZRU֫JfˉXG2Ki`ӈ>"4TKs;2C:8{#KdRc<6rn6shMP{ K.m-wLc&!ʆ5ջ;+ԃ>ORo&UAdϊWe&i[Z5${Bk7vL *fy;:L츞W;,iiirr"DZd*PŎ9m!\M7{45;y1hH|O&0BNm^@m@@i6}EcUo936W8WoLyH[~_;y{hu|u,G]f"L~ xCU2}[$ y A +f+C4WhThU.+(RNV9w(ۺZ܍@(K{[[l;Zaԫ9'jq+N ̞;[̽g8pnz%ޙ:was.?`/r)#38 dRd yޘET$y׹Cm4 4\[U_*%vB VsVpL&:Iw^RW)|: Noawcs:4f/XΑԓ,?~[JvI>~jttj.t O!1 b5b2J: 5HLNxd:C jV #0ЈT(JM%=zz$Itb0. (^ݗԱWV m=MS^ަ)PH轒~{*h?W*]-zę^'((dY>/%I"mb&;&6MHh:Nf|:E `0(dݒ_=u0& ޠǠ#XU : $D%bְ:AWZX~~>Vp kРat"_ ~uH+@TtTVǏAj0HDXĄbsHt!hIhvH^z 9x = gnYya6osb  Ĕ܋~bkC%Z/шhEAhX 4T85hpՃꗆG6poMW§njj7B 4nl&22f͚5ӧOGPEA̦UUŋg* (BnVVK,!((N:MРAWZoOyyyŹm*s-{Y9y$QQQW-Glp_SF/O9b2J\BW88ȧاRyjߪ-[BBm|!J !!!mۖ.\χD I'҈b3lE7{"++#Gh"z=۷'44T4hE)i?ߛ4e9MOTxJUXL}uQӰ\4p7'DQ$<z/OQ˓Ϳ*{~/8Zb9nK{-)^$$I:Ȁ 4\itN%uxe-;[V'Yal=> |3tZ@'CԳ= d2+tU2J/jyr^#w^Li̜Qf=۠'RNlN40O<6u^@?fƶkiS{3Ҫm[IVAJ9[MRZ>~1#DaLNR )YL)hkjVZ1Z~:G[+5q+bWjk(Rȵ` = s J3ztx^?b F@:D?Ϭw0tF 3 >]͇SZ2q p$4cMU"jMkhi~?FOxTz+vkęD`l{@?|.k7覂^p/$^+ g p7.aVsK̚xÙswg_`6=u(wN"ѿQ{c;L-p.w`]iVOաlO&G;ꚡm~{FOW)8Ħ'؏f)e6GTN5w~-Ϫ^@A0i*:ü {yZЏ,Zd YM5:M-5gKkHL~8wW-]n]QLպZJi<%]kIu -9)Z13|4*V0|-] kMq)'mGțϔ;}޲zCbWOycLnjTN욖{${|zMlK 0jކ6{*?0z)k{oZkEcgjb]öN۩DlkgA??;&Un&6|W@k"^p (OJ쥀6ֿrg&viLMS>_Y38a-U&-:3s1ω2ǛiZ ]ƌegfwifZ#/- Y ֿG)k-Ėjރqw#rbKܼ-{a]vrZD9Z1fƒw}퇧`~vƠv-u ۺ#}܈rkݰ%eb`VJ^*sfvͣh\휉:Wȉ vX+,}bt^:VbMMM=ks,Z [4,%_CvW_mlr[ An13ߝY*oep`a$v-{kqF;&-Gպ ?SsyVeK<_툜Xb/>{k/|j׶U*GbTG7QZC 6MIDX5t g_:l2MSFX# 1, 0u/FL #݆A`̅) 8Z#5h*4 4uZrXK SmڵSu)֥_u-RSJ[Ѯ5׼ė u&W8lu/ XۋPjZEۭL~ˠn}5 Ҍx)&6%h,&x}qy*A.gT ;Qlo`K=ܕrn+Y>]-bƍ=w也SWn{z]h&b:g3iu,`Tڟmf ֹT'ߢqs^9͉1Mw#`krwυUN'ȹqy{` c摪a{d}VʉM=#rbÃǦΣ@EHAKi lm@?M*}0h{ Aj~Ҥ81e9mcq. 32f=rbMz`{ey3;&OJn<%]kIu -9)Z13|4*V0|-] kMq)'mGțϔ;}޲zCbWOycLnjTN욖{${|zMlK 0jކ6{*?0z)k{oZkEcgjb]öN۩DlkgA??;&Un&6|W@k"^p (OJ쥀6ֿrg&viLMS>_Y38a-U&-:3s1ω2ǛiZ ]ƌegfwifZ#/- Y ֿG)k-Ėjރqw#rbKܼ-{a]vrZD9Z1fƒw}퇧`~vƠv-u ۺ#}܈rkݰ%eb`VJ^*sfvͣh\휉:Wȉ vX+,}bt^:VbMMM=ks,Z [4,%_CvW_mlr[ An13ߝY*oep`a$v-{kqF;&-Gպ ?SsyVeK<_툜Xb/>{k/|j׶U*GbTG7QZC 6MIDX5t g_:l2MSFX# 1, 0u/FL #݆A`̅) 8Z#5h*4 4uZrXK SmڵSu)֥_u-RSJ[Ѯ5׼ė u&W8lu/ XۋPjZEۭL~ˠn}5 Ҍx)&6%h,&x}qy*A.gT ;Qlo`K=ܕrn+Y>]-bƍ=w也SWn{z]h&b:g3iu,`Tڟmf ֹT'ߢqs^9͉1Mw#`krwυUN'ȹqy{` c摪a{d}VʉM=#rbÃǦΣ@EHAKi lm@?M*}0h{ Aj~Ҥ81e9mcq. 32f=rbMz`{ey3;&OJnя~KsnH#ϖ6#l:# Ol\:AL0ڟBs+= f5X0/\{i~.G?BlhcWBu-jz;,-{>7 ?Y^zDF?oI^~}jLפ m.<<V竜~(׿ݻwr\/U>䓬ԚYI/9-޽ʇ0*_?bIJR` O>'y~~VU,[jFlmUm~6G*s |2PWׯ_3Gx r|P>>>ތWSV&~1%.-KիWujﺿG\x{яs\.(?Ϭ>{yFR03/ HV* zWkϵ-M"節;Ӵ)}bwk۠G?яL?o?\~<^)7uI[ڙ/!;kJ]Ӎ?g (wߚRt0^|Ιɏ>C?KRG~I޼y#~|w(<^wu՘6Qq֡u˟*ZjzУk鳳ߪ1??yF>3/|G)I3]Ćf53aZ/_)Cnk܌= G?я3oaF7_|!_}|r^Oӭ] J ]-&V΅_5"fƕڠG,?ή_Q[O//✓?M޾}+O!MC537LP:Y_'ڪk_GO*Fs~͛7{/_|?ʞz?-]{3w j{~DS,\OMc>f>C?я~I~'o+{?yzJ>g}"ءxzkD/KnnޘMk'hRԶq/] NEڤN#3=[ G?W/ 5Ȟ!g5 Jymn܂UfzŮ۾O٘΋̕pAr]%^_6U^e:%vb/}3h~ԟj~mKђU3%-}~ ߣ~"/ˠJ*"3kk6eS5[_;)#gdB."3Ee5y)3!S$bQXɭ[nS |@riC#&NMQmvsouΈXGW?׌OyRTVcfKFVA:=osdopp254"Hyؤ{)R\Łb]S1\mXSbۦ lmR$5w;ڠ+oA'^Kk۬1_S 5x09cll‡v|llV* +k}gT d>%c\S l*vլ$4'bcb[6UbZ0-!ubVS:Ȋ㳸 أ?cϭk~ h m)"+<}i\Ugݾ%cR]Z~rmЏW3A?֯16gtKy.+3Rafsω,;Ҥ@ Lhhя~>_9~L?gt35u_L5(ԺLԾZX_ܚ06^vV6G?я~G_2^`ZKQWM#+R7IK  9ͪ]>C?я~o_JcZ&Vk gG?5}fZjb`Mlt &Wzh5R(*_Ü蚭Ƶվ<6L.jaNiM)`24R_#f)nh8[IENDB`././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.qrcqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/formextractor/formextractor.0000644000000000000000000000014012273255454033003 0ustar rootroot form.html qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/0000755000000000000000000000000012273255454027572 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/xmlpatterns.pro0000644000000000000000000000005712273255454032677 0ustar rootrootTEMPLATE = subdirs SUBDIRS += qobjectxmlmodel qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000755000000000000000000000000012273255454032763 5ustar rootroot././@LongLink0000000000000000000000000000015300000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/forms/qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000755000000000000000000000000012273255454032763 5ustar rootroot././@LongLink0000000000000000000000000000017000000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/forms/mainwindow.uiqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000001452112273255454032770 0ustar rootroot MainWindow 0 0 800 600 QObjectXmlModel Example 0 29 800 549 true See the About menu entry for a description of this example. true 0 0 0 778 475 Whole QObjectTree Qt::Vertical 0 0 true <!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="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p></body></html> false true <!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="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p></body></html> false 0 0 778 475 Statistics in HTML Qt::Vertical true <!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="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p></body></html> false about:blank 0 0 800 29 Help 0 578 800 22 About Ctrl+B QWebView QWidget
QtWebKit/QWebView
././@LongLink0000000000000000000000000000016000000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/queries.qrcqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000022712273255454032766 0ustar rootroot queries/wholeTree.xq queries/statisticsInHTML.xq ././@LongLink0000000000000000000000000000015500000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/queries/qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000755000000000000000000000000012273255454032763 5ustar rootroot././@LongLink0000000000000000000000000000020000000000000011555 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/queries/statisticsInHTML.xqqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000352012273255454032765 0ustar rootroot Generated statistics

In total the tree has {count($root//QObject)} QObject instances.

Order by occurrence, the QObjects are:

    { for $i in $root/preceding-sibling::metaObjects/metaObject let $count := count($root//QObject[@className eq $i/@className]) stable order by $count descending return if($count > 1) then
  1. {string($i/@className), $count} occurrences
  2. else () }

Properties

{ (: For each QObject, we create a table listing : the properties of that object. :) for $object in $root//QObject return (

{let $name := string($object/@objectName) return if(string-length($name)) then $name else "[no name]", '(', string($object/@className), ')'}

, { $object/@*/ }
Property Name Value
{ name() } { if(data(.)) then string(.) else "N/A" }
) } ././@LongLink0000000000000000000000000000017100000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/queries/wholeTree.xqqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000016612273255454032770 0ustar rootroot, $root/preceding-sibling::metaObjects, $root ././@LongLink0000000000000000000000000000017300000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/xmlsyntaxhighlighter.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000525612273255454032775 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 XMLSYNTAXHIGHLIGHTER_H #define XMLSYNTAXHIGHLIGHTER_H #include class XmlSyntaxHighlighter : public QSyntaxHighlighter { public: XmlSyntaxHighlighter(QTextDocument *parent = 0); protected: virtual void highlightBlock(const QString &text); private: struct HighlightingRule { QRegExp pattern; QTextCharFormat format; }; QVector highlightingRules; QRegExp commentStartExpression; QRegExp commentEndExpression; QTextCharFormat tagFormat; QTextCharFormat attributeFormat; QTextCharFormat attributeContentFormat; QTextCharFormat commentFormat; }; #endif ././@LongLink0000000000000000000000000000015500000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/main.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000425012273255454032766 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" int main(int argc, char* argv[]) { Q_INIT_RESOURCE(queries); QApplication app(argc, argv); MainWindow mainWindow; mainWindow.show(); return app.exec(); } ././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/mainwindow.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000441112273255454032765 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 MAINWINDOW_H #define MAINWINDOW_H #include #include #include "ui_mainwindow.h" //! [0] class MainWindow : public QMainWindow, private Ui_MainWindow { Q_OBJECT public: MainWindow(); private slots: void on_actionAbout_triggered(); }; //! [0] #endif ././@LongLink0000000000000000000000000000016600000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000001211712273255454032767 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 Patternist_QObjectNodeModel_H #define Patternist_QObjectNodeModel_H #include QT_BEGIN_NAMESPACE class QObject; class PropertyToAtomicValue; /** * @short Delegates QtCore's QObject into Patternist's QAbstractXmlNodeModel. * known as pre/post numbering. * * QObjectXmlModel sets the toggle on QXmlNodeModelIndex to @c true, if it * represents a property of the QObject. That is, if the QXmlNodeModelIndex is * an attribute. * * @author Frans Englich */ class QObjectXmlModel : public QSimpleXmlNodeModel { public: QObjectXmlModel(QObject *const object, const QXmlNamePool &np); QXmlNodeModelIndex root() const; //! [0] virtual QXmlNodeModelIndex::DocumentOrder compareOrder(const QXmlNodeModelIndex &n1, const QXmlNodeModelIndex &n2) const; virtual QXmlName name(const QXmlNodeModelIndex &n) const; virtual QUrl documentUri(const QXmlNodeModelIndex &n) const; virtual QXmlNodeModelIndex::NodeKind kind(const QXmlNodeModelIndex &n) const; virtual QXmlNodeModelIndex root(const QXmlNodeModelIndex &n) const; virtual QVariant typedValue(const QXmlNodeModelIndex &n) const; virtual QVector attributes(const QXmlNodeModelIndex&) const; virtual QXmlNodeModelIndex nextFromSimpleAxis(SimpleAxis, const QXmlNodeModelIndex&) const; //! [0] private: /** * The highest three bits are used to signify whether the node index * is an artificial node. * * @short if QXmlNodeModelIndex::additionalData() has the * QObjectPropery flag set, then the QXmlNodeModelIndex is an * attribute of the QObject element, and the remaining bits form * an offset to the QObject property that the QXmlNodeModelIndex * refers to. * */ //! [3] enum QObjectNodeType { IsQObject = 0, QObjectProperty = 1 << 26, MetaObjects = 2 << 26, MetaObject = 3 << 26, MetaObjectClassName = 4 << 26, MetaObjectSuperClass = 5 << 26, QObjectClassName = 6 << 26 }; //! [3] //! [1] typedef QVector AllMetaObjects; //! [1] AllMetaObjects allMetaObjects() const; static QObjectNodeType toNodeType(const QXmlNodeModelIndex &n); static bool isTypeSupported(QVariant::Type type); static inline QObject *asQObject(const QXmlNodeModelIndex &n); static inline bool isProperty(const QXmlNodeModelIndex n); static inline QMetaProperty toMetaProperty(const QXmlNodeModelIndex &n); /** * Returns the ancestors of @p n. Does therefore not include * @p n. */ inline QXmlNodeModelIndex::List ancestors(const QXmlNodeModelIndex n) const; QXmlNodeModelIndex qObjectSibling(const int pos, const QXmlNodeModelIndex &n) const; QXmlNodeModelIndex metaObjectSibling(const int pos, const QXmlNodeModelIndex &n) const; //! [2] const QUrl m_baseURI; QObject *const m_root; //! [4] const AllMetaObjects m_allMetaObjects; //! [4] //! [2] }; QT_END_NAMESPACE #endif ././@LongLink0000000000000000000000000000016300000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/mainwindow.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000001174612273255454032776 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "mainwindow.h" #include "qobjectxmlmodel.h" #include "xmlsyntaxhighlighter.h" MainWindow::MainWindow() { setupUi(this); new XmlSyntaxHighlighter(wholeTreeOutput->document()); /* Setup the font. */ { QFont font("Courier"); font.setFixedPitch(true); wholeTree->setFont(font); wholeTreeOutput->setFont(font); htmlQueryEdit->setFont(font); } QXmlNamePool namePool; QObjectXmlModel qObjectModel(this, namePool); QXmlQuery query(namePool); /* The QObject tree as XML view. */ { query.bindVariable("root", qObjectModel.root()); query.setQuery(QUrl("qrc:/queries/wholeTree.xq")); Q_ASSERT(query.isValid()); QByteArray output; QBuffer buffer(&output); buffer.open(QIODevice::WriteOnly); /* Let's the use the formatter, so it's a bit easier to read. */ QXmlFormatter serializer(query, &buffer); query.evaluateTo(&serializer); buffer.close(); { QFile queryFile(":/queries/wholeTree.xq"); queryFile.open(QIODevice::ReadOnly); wholeTree->setPlainText(QString::fromUtf8(queryFile.readAll())); wholeTreeOutput->setPlainText(QString::fromUtf8(output.constData())); } } /* The QObject occurrence statistics as HTML view. */ { query.setQuery(QUrl("qrc:/queries/statisticsInHTML.xq")); Q_ASSERT(query.isValid()); QByteArray output; QBuffer buffer(&output); buffer.open(QIODevice::WriteOnly); /* Let's the use the serializer, so we gain a bit of speed. */ QXmlSerializer serializer(query, &buffer); query.evaluateTo(&serializer); buffer.close(); { QFile queryFile(":/queries/statisticsInHTML.xq"); queryFile.open(QIODevice::ReadOnly); htmlQueryEdit->setPlainText(QString::fromUtf8(queryFile.readAll())); htmlOutput->setHtml(QString(output)); } } } void MainWindow::on_actionAbout_triggered() { QMessageBox::about(this, tr("About QObject XML Model"), tr("

The QObject XML Model example shows " "how to use XQuery on top of data of your choice " "without converting it to an XML document.

" "

In this example a QSimpleXmlNodeModel subclass " "makes it possible to query a QObject tree using " "XQuery and retrieve the result as pointers to " "QObjects, or as XML.

" "

A possible use case of this could be to write " "an application that tests a graphical interface " "against Human Interface Guidelines, or that " "queries an application's data which is modeled " "using a QObject tree and dynamic properties.")); } ././@LongLink0000000000000000000000000000017000000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000000056312273255454032771 0ustar rootroot FORMS += forms/mainwindow.ui QT += xmlpatterns webkitwidgets widgets SOURCES += qobjectxmlmodel.cpp main.cpp mainwindow.cpp xmlsyntaxhighlighter.cpp HEADERS += qobjectxmlmodel.h mainwindow.h xmlsyntaxhighlighter.h RESOURCES = queries.qrc # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/xmlpatterns/qobjectxmlmodel INSTALLS += target ././@LongLink0000000000000000000000000000017000000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000003167712273255454033003 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include #include #include #include "qobjectxmlmodel.h" QT_BEGIN_NAMESPACE /* ... .... */ QObjectXmlModel::QObjectXmlModel(QObject *const object, const QXmlNamePool &np) : QSimpleXmlNodeModel(np), m_baseURI(QUrl::fromLocalFile(QCoreApplication::applicationFilePath())), m_root(object), m_allMetaObjects(allMetaObjects()) { Q_ASSERT(m_baseURI.isValid()); } //! [5] QXmlNodeModelIndex QObjectXmlModel::qObjectSibling(const int pos, const QXmlNodeModelIndex &n) const { Q_ASSERT(pos == 1 || pos == -1); Q_ASSERT(asQObject(n)); const QObject *parent = asQObject(n)->parent(); if (parent) { const QList &children = parent->children(); const int siblingPos = children.indexOf(asQObject(n)) + pos; if (siblingPos >= 0 && siblingPos < children.count()) return createIndex(children.at(siblingPos)); else return QXmlNodeModelIndex(); } else return QXmlNodeModelIndex(); } //! [5] //! [1] QObjectXmlModel::QObjectNodeType QObjectXmlModel::toNodeType(const QXmlNodeModelIndex &n) { return QObjectNodeType(n.additionalData() & (15 << 26)); } //! [1] //! [9] QObjectXmlModel::AllMetaObjects QObjectXmlModel::allMetaObjects() const { QXmlQuery query(namePool()); query.bindVariable("root", root()); query.setQuery("declare variable $root external;" "$root/descendant-or-self::QObject"); Q_ASSERT(query.isValid()); QXmlResultItems result; query.evaluateTo(&result); QXmlItem i(result.next()); AllMetaObjects objects; while (!i.isNull()) { const QMetaObject *moo = asQObject(i.toNodeModelIndex())->metaObject(); while (moo) { if (!objects.contains(moo)) objects.append(moo); moo = moo->superClass(); } i = result.next(); } Q_ASSERT(!objects.contains(0)); return objects; } //! [9] QXmlNodeModelIndex QObjectXmlModel::metaObjectSibling(const int pos, const QXmlNodeModelIndex &n) const { Q_ASSERT(pos == 1 || pos == -1); Q_ASSERT(!n.isNull()); const int indexOf = m_allMetaObjects.indexOf(static_cast(n.internalPointer())) + pos; if (indexOf >= 0 && indexOf < m_allMetaObjects.count()) return createIndex(const_cast(m_allMetaObjects.at(indexOf)), MetaObject); else return QXmlNodeModelIndex(); } //! [2] QXmlNodeModelIndex QObjectXmlModel::nextFromSimpleAxis(SimpleAxis axis, const QXmlNodeModelIndex &n) const { switch (toNodeType(n)) { case IsQObject: { switch (axis) { case Parent: return createIndex(asQObject(n)->parent()); case FirstChild: { if (!asQObject(n) || asQObject(n)->children().isEmpty()) return QXmlNodeModelIndex(); else return createIndex(asQObject(n)->children().first()); } case NextSibling: return qObjectSibling(1, n); //! [10] case PreviousSibling: { if (asQObject(n) == m_root) return createIndex(qint64(0), MetaObjects); else return qObjectSibling(-1, n); } //! [10] } Q_ASSERT(false); } //! [7] case QObjectClassName: case QObjectProperty: { Q_ASSERT(axis == Parent); return createIndex(asQObject(n)); } //! [7] //! [2] //! [3] //! [11] case MetaObjects: { switch (axis) { case Parent: return QXmlNodeModelIndex(); case PreviousSibling: return QXmlNodeModelIndex(); case NextSibling: return root(); case FirstChild: { return createIndex(const_cast(m_allMetaObjects.first()),MetaObject); } } Q_ASSERT(false); } //! [11] case MetaObject: { switch (axis) { case FirstChild: return QXmlNodeModelIndex(); case Parent: return createIndex(qint64(0), MetaObjects); case PreviousSibling: return metaObjectSibling(-1, n); case NextSibling: return metaObjectSibling(1, n); } } case MetaObjectClassName: case MetaObjectSuperClass: { Q_ASSERT(axis == Parent); return createIndex(asQObject(n), MetaObject); } //! [3] //! [4] } Q_ASSERT(false); return QXmlNodeModelIndex(); } //! [4] //! [6] QVector QObjectXmlModel::attributes(const QXmlNodeModelIndex& n) const { QVector result; QObject *const object = asQObject(n); switch(toNodeType(n)) { case IsQObject: { const QMetaObject *const metaObject = object->metaObject(); const int count = metaObject->propertyCount(); result.append(createIndex(object, QObjectClassName)); for (int i = 0; i < count; ++i) { const QMetaProperty qmp(metaObject->property(i)); const int ii = metaObject->indexOfProperty(qmp.name()); if (i == ii) result.append(createIndex(object, QObjectProperty | i)); } return result; } //! [6] case MetaObject: { result.append(createIndex(object, MetaObjectClassName)); result.append(createIndex(object, MetaObjectSuperClass)); return result; } //! [8] default: return QVector(); } } //! [8] QObject *QObjectXmlModel::asQObject(const QXmlNodeModelIndex &n) { return static_cast(n.internalPointer()); } bool QObjectXmlModel::isProperty(const QXmlNodeModelIndex n) { return n.additionalData() & QObjectProperty; } QUrl QObjectXmlModel::documentUri(const QXmlNodeModelIndex& ) const { return m_baseURI; } QXmlNodeModelIndex::NodeKind QObjectXmlModel::kind(const QXmlNodeModelIndex& n) const { switch (toNodeType(n)) { case IsQObject: case MetaObject: case MetaObjects: return QXmlNodeModelIndex::Element; case QObjectProperty: case MetaObjectClassName: case MetaObjectSuperClass: case QObjectClassName: return QXmlNodeModelIndex::Attribute; } Q_ASSERT(false); return QXmlNodeModelIndex::Element; } QXmlNodeModelIndex::DocumentOrder QObjectXmlModel::compareOrder(const QXmlNodeModelIndex& , const QXmlNodeModelIndex& ) const { return QXmlNodeModelIndex::Follows; // TODO } //! [0] QXmlNodeModelIndex QObjectXmlModel::root() const { return createIndex(m_root); } //! [0] QXmlNodeModelIndex QObjectXmlModel::root(const QXmlNodeModelIndex& n) const { QObject *p = asQObject(n); Q_ASSERT(p); do { QObject *const candidate = p->parent(); if (candidate) p = candidate; else break; } while (true); return createIndex(p); } /*! We simply throw all of them into a QList and return an iterator over it. */ QXmlNodeModelIndex::List QObjectXmlModel::ancestors(const QXmlNodeModelIndex n) const { const QObject *p = asQObject(n); Q_ASSERT(p); QXmlNodeModelIndex::List result; do { QObject *const candidate = p->parent(); if (candidate) { result.append(createIndex(candidate, 0)); p = candidate; } else break; } while (true); return result; } QMetaProperty QObjectXmlModel::toMetaProperty(const QXmlNodeModelIndex &n) { const int propertyOffset = n.additionalData() & (~QObjectProperty); const QObject *const qo = asQObject(n); return qo->metaObject()->property(propertyOffset); } QXmlName QObjectXmlModel::name(const QXmlNodeModelIndex &n) const { switch (toNodeType(n)) { case IsQObject: return QXmlName(namePool(), QLatin1String("QObject")); case MetaObject: return QXmlName(namePool(), QLatin1String("metaObject")); case QObjectClassName: case MetaObjectClassName: return QXmlName(namePool(), QLatin1String("className")); case QObjectProperty: return QXmlName(namePool(), toMetaProperty(n).name()); case MetaObjects: return QXmlName(namePool(), QLatin1String("metaObjects")); case MetaObjectSuperClass: return QXmlName(namePool(), QLatin1String("superClass")); } Q_ASSERT(false); return QXmlName(); } QVariant QObjectXmlModel::typedValue(const QXmlNodeModelIndex &n) const { switch (toNodeType(n)) { case QObjectProperty: { const QVariant &candidate = toMetaProperty(n).read(asQObject(n)); if (isTypeSupported(candidate.type())) return candidate; else return QVariant(); } case MetaObjectClassName: return QVariant(static_cast(n.internalPointer())->className()); case MetaObjectSuperClass: { const QMetaObject *const superClass = static_cast(n.internalPointer())->superClass(); if (superClass) return QVariant(superClass->className()); else return QVariant(); } case QObjectClassName: return QVariant(asQObject(n)->metaObject()->className()); default: return QVariant(); } } /*! Returns \c true if QVariants of type \a type can be used in QtXmlPatterns, otherwise \c false. */ bool QObjectXmlModel::isTypeSupported(QVariant::Type type) { /* See data/qatomicvalue.cpp too. */ switch (type) { /* Fallthrough all these. */ case QVariant::Char: case QVariant::String: case QVariant::Url: case QVariant::Bool: case QVariant::ByteArray: case QVariant::Int: case QVariant::LongLong: case QVariant::ULongLong: case QVariant::Date: case QVariant::DateTime: case QVariant::Time: case QVariant::Double: return true; default: return false; } } QT_END_NAMESPACE ././@LongLink0000000000000000000000000000017500000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/xmlsyntaxhighlighter.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/qobjectxmlmodel/0000644000000000000000000001015512273255454032767 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "xmlsyntaxhighlighter.h" XmlSyntaxHighlighter::XmlSyntaxHighlighter(QTextDocument *parent) : QSyntaxHighlighter(parent) { HighlightingRule rule; // tag format tagFormat.setForeground(Qt::darkBlue); tagFormat.setFontWeight(QFont::Bold); rule.pattern = QRegExp("(<[a-zA-Z:]+\\b|<\\?[a-zA-Z:]+\\b|\\?>|>|/>|)"); rule.format = tagFormat; highlightingRules.append(rule); // attribute format attributeFormat.setForeground(Qt::darkGreen); rule.pattern = QRegExp("[a-zA-Z:]+="); rule.format = attributeFormat; highlightingRules.append(rule); // attribute content format attributeContentFormat.setForeground(Qt::red); rule.pattern = QRegExp("(\"[^\"]*\"|'[^']*')"); rule.format = attributeContentFormat; highlightingRules.append(rule); commentFormat.setForeground(Qt::lightGray); commentFormat.setFontItalic(true); commentStartExpression = QRegExp(""); } void XmlSyntaxHighlighter::highlightBlock(const QString &text) { foreach (const HighlightingRule &rule, highlightingRules) { QRegExp expression(rule.pattern); int index = text.indexOf(expression); while (index >= 0) { int length = expression.matchedLength(); setFormat(index, length, rule.format); index = text.indexOf(expression, index + length); } } setCurrentBlockState(0); int startIndex = 0; if (previousBlockState() != 1) startIndex = text.indexOf(commentStartExpression); while (startIndex >= 0) { int endIndex = text.indexOf(commentEndExpression, startIndex); int commentLength; if (endIndex == -1) { setCurrentBlockState(1); commentLength = text.length() - startIndex; } else { commentLength = endIndex - startIndex + commentEndExpression.matchedLength(); } setFormat(startIndex, commentLength, commentFormat); startIndex = text.indexOf(commentStartExpression, startIndex + commentLength); } } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/0000755000000000000000000000000012247412261030327 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/src/0000755000000000000000000000000012273255454031126 5ustar rootroot././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/src/qobjectxmlmodel.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/src/qobjectx0000644000000000000000000004054712273255454032702 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/xmlpatterns \title QObject XML Model Example \brief Demonstrates how to present XML-like data structure in the web view \ingroup webkit-widgetexamples This example shows how to use QtXmlPatterns to query QObject trees by modeling the non-XML data structure of a QObject tree to look like XML. \tableofcontents \section1 Introduction This example illustrates two important points about using XQuery to query non-XML data modeled to look like XML. The first point is that a custom node model class doesn't always have to actually build the node model. Sometimes the node model can be an already existing data structure, like the QObject tree used in this example. The second point is to explain what is required to make non-XML data look like XML. In this example, we want to model a QObject tree to look like XML. That is easy to do because a QObject tree maps to the XML tree structure in a staightforward way. Each QObject node is modeled as an XML element node. However, when we want to add the QMetaObject tree to the QObject tree node model, we are trying to add a second tree to the node model. The QMetaObject tree exists \e{behind} the QObject tree. Adding the QMetaObject tree to the node model changes the two dimensional tree into a three dimensional tree. The query engine can only traverse two dimensional trees, because an XML document is always a two dimensional tree. If we want to add the QMetaObject tree to the node model, we have to somehow flatten it into the same plane as the QObject tree. This requires that the node model class must build an auxiliary data structure and make it part of the two dimensional QObject node model. How to do this is explained in \l{Including The QMetaObject Tree}. \section2 The User Interface The UI for this example was created using Qt Designer: \image qobjectxmlmodel-example.png \section1 Code Walk-Through The strategy for this example is different from the strategy for the \l{File System Example}{file system example}. In the file system example, the node model class had to actually build a node model because the non-XML data to be traversed was the computer's file system, a structure stored on disk in a form that the query engine couldn't use. The node model class had to build an analog of the computer's file system in memory. For this example, the data structure to be traversed already exists in memory in a usable form. It is the QObject tree of the example application itself. All we need is the pointer to the root of the QObject tree. \note When we add the QMetaObject tree to the node model, the node model class will have to build an auxiliary data structure to move the QMetaObject tree into the same plane as the QObject tree. This is explained later in \l{Including The QMetaObject Tree}. \section2 The Custom Node Model Class: QObjextXmlModel The node model class for this example is QObjextXmlModel, which is derived from QSimpleXmlNodeModel. QObjextXmlModel implements the callback interface functions that don't have implementations in QSimpleXmlNodeModel: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.h 0 The node model class declares three data members: \target Three Data Members \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.h 2 The constructor sets \c m_baseURI to the QUrl constructed from the \l{QCoreApplication::applicationFilePath()}{file path} of the application executable. This is the value returned by \l{QAbstractXmlNodeModel::documentUri()}{documentUri()}. The constructor sets \c{m_root} to point to the QObject tree for the example application. This is the node model that the query engine will use. And the constructor calls a local function to build the auxiliary data structure (\c{m_allMetaObjects}) for including the QMetaObject tree in the node model. How this auxiliary data structure is incorporated into the QObject node model is discussed in \l{Including The QMetaObject Tree}. \section3 Accessing The Node Model Since the query engine knows nothing about QObject trees, it can only access them by calling functions in the node model callback interface. The query engine passes a QXmlNodeModelIndex to uniquely identify a node in the node model. The QXmlNodeModelIndex is constructed from a pointer to the QObject that represents the node. \l{QAbstractXmlNodeModel::createIndex()}{createIndex()} creates the QXmlNodeModelIndex, as in the local \c{root()} function, for example: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 0 A QObject represents an element node in the node model, but we also need to represent attribute nodes. For example, the class name of a QObject is an attribute of the QObject, so it should be an attribute node in the node model. A QObject's class name is obtained from the QObject. (Actually, it is in the QMetaObject, which is obtained from the QObject). This means that a single QObject logically represents multiple nodes in the node model: the element node and potentially many attribute nodes. To uniquely identify an attribute node, we need the pointer to the QObject containing the attribute, and an additional value that identifies the attribute in the QObject. For this \e{additional data} value, we use \c{enum QObjectNodeType}: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.h 3 Ignore the \c{MetaObjectXXX} values for now. They will be explained in \l{Including The QMetaObject Tree}. Here we are interested in the three node types for QObject nodes: \c{IsQObject}, which represents the element node type for a QObject, and \c{QObjectProperty} and \c{QObjectClassName}, which represent the attribute node types for the attributes of a QObject. The \l{QAbstractXmlNodeModel::createIndex()}{createIndex()} function called in the \c{root()} snippet above is the overload that accepts a \c{void*} pointer and a second parameter, \c{additionalData}, with default value 0 (\c{IsQObject}). Wherever you see a call to \l{QAbstractXmlNodeModel::createIndex()} {createIndex()} that only passes the QObject pointer, it is creating the node index for a QObject element node. To create the node index for the class name attribute, for example, the \l{QObject attributes} {attributes()} function uses \c{createIndex(object,QObjectClassName)}. \target QObject attributes \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 6 \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 8 \l{QObject attributes} {attributes()} is one of the callback functions you have to implement in your custom node model class. It returns a QVector of \l{QXmlNodeModelIndex} {node indexes} for all the attribute nodes for QObject \c{n}. It calls \l{QAbstractXmlNodeModel::createIndex()} {createIndex()} in two places. Both calls use the QObject pointer from the current node \c{n} (the element node), and just add a different value for the \e{additional data} parameter. This makes sense because, in XML, the attributes of an element are part of that element. \section3 Traversing The Node Model The query engine traverses the QObject tree by calling back to the node model class's implementation of \l{QObject nextFromSimpleAxis} {nextFromSimpleAxis()}. This function is the heart of the callback interface, and it will probably be the most complex to implement in your custom node model class. Below is a partial listing of the implementation for this example. The full listing will be shown in \l{Including The QMetaObject Tree}, where we discuss traversing the QMetaObject tree. \target QObject nextFromSimpleAxis \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 2 \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 4 The main switch uses \c toNodeType(), which obtains the node type from \l{QXmlNodeModelIndex::additionalData()}: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 1 \c{case IsObject} case is the most interesting. It switches again on the value of the \c{axis} parameter, which specifies the direction the query engine wants to take from the current node. It is one of the four enum values of \l{QAbstractXmlNodeModel::SimpleAxis}. The \l{QAbstractXmlNodeModel::Parent} {Parent} and \l{QAbstractXmlNodeModel::FirstChild} {FirstChild} cases reduce to calls to QObject::parent() and QObject::children() respectively. Note that a default constructed QXmlNodeModelIndex is returned in the \l{QAbstractXmlNodeModel::Parent} {Parent} case if the current node is the root, and in the \l{QAbstractXmlNodeModel::FirstChild} {FirstChild} case if the current node has no children. For the \l{QAbstractXmlNodeModel::NextSibling} {NextSibling} and \l{QAbstractXmlNodeModel::PreviousSibling} {PreviousSibling} axes, the helper function \c{qObjectSibling()} is called, with +1 to traverse to the \l{QAbstractXmlNodeModel::NextSibling} {NextSibling} and -1 to traverse to the \l{QAbstractXmlNodeModel::PreviousSibling} {PreviousSibling}. \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 5 \c{qObjectSibling()} determines whether or not the node has any siblings. It is called with \c{n}, the index of the current node. If the current node is a child, then it has a parent with children (the current node one of these). So, we get the \l{QObject::parent()}{parent}, obtain the parent's \l{QObject::children()} {child list}, find the current node in the list, and construct the node index for the next or previous child (sibling) and return it. \note In \l{QObject nextFromSimpleAxis} {nextFromSimpleAxis()}, the special case of asking for the \l{QAbstractXmlNodeModel::PreviousSibling} {PreviousSibling} of the root node is discussed in \l{Including The QMetaObject Tree}. Traversing away from a \c{QObjectClassName} attribute node or a \c{QObjectProperty} attribute node might seem a bit confusing at first glance. The only move allowed from an attribute node is to the \l{QAbstractXmlNodeModel::Parent} {Parent}, because attribute nodes don't have children. But these two cases simply return the \l{QXmlNodeModelIndex} {node index} of the current node. \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 7 Since \c n is the QXmlNodeModelIndex of the current node, all this does is create another QXmlNodeModelIndex for the current node and return it. This was explained above in \l{Accessing The Node Model}, where we saw that each QObject in the node model actually represents an element node and potentially many attribute nodes. Traversing to the parent node of an attribute simply creates a node index for the same QObject, but with an \e{additional data} value of 0 (\c{IsQObject}). If we only wanted to traverse the QObject tree with XQuery, we could just implement the rest of the virtual callback functions listed earlier and we would be done. The implementations for the remaining functions are straightforward. But if we also want to use XQuery to traverse the QMetaObject tree, we must include the QMetaObject tree in the custom node model. \section3 Including The QMetaObject Tree The \l{Meta-Object System} {metaobject system} not only enables Qt's \l{Signals and Slots} {signals and slots}, it also provides type information that is useful at run-time; e.g., getting and setting properties without knowing the property names at compile time. Each QObject has an associated QMetaObject tree which contains all this useful type information. Given a QObject, its QMetaObject is obtained with QObject::metaObject(). Then QMetaObject::superClass() can be called repeatedly to get the QMetaObject for each class in the class hierarchy for the original QObject. However, the QMetaObject hierarchy is a second tree in a plan that exists logically behind the plane of the QObject tree. The QtXmlPatterns query engine can only traverse a two dimensional node model that represents an XML tree. If we want to include the QMetaObject in the same node model that represents the QObject tree, we must find a way to flatten the QMetaObject tree into the same plane as the QObject tree. The node model class declares \l{All MetaObjects}{m_allMetaObjects} as a vector of pointers to QMetaObject: \target All MetaObjects \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.h 1 \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.h 4 This vector gets populated by the QObjectXmlModel constructor by calling the private allMetaObjects() function: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 9 The first half of the function is an example of the standard code pattern for using QtXmlPatterns to run an XQuery. First it creates an instance of QXmlQuery. Then it \l{QXmlQuery::bindVariable()}{binds} the XQuery variable \c{$root} to the root node of the of the node model; i.e., the root of the QObject tree. Then it \l{QXmlQuery::setQuery()} {sets the query} to be an XQuery that returns all the QObjects in the node model. Finally, the query is evaluated into a \l{QXmlResultItems} {result item list}. \note \l{QXmlQuery::bindVariable()} must be called before \l{QXmlQuery::setQuery()}, because setting the query causes QtXmlPatterns to \e compile the XQuery, which requires knowledge of the variable bindings. The second half of the function traverses the \l{QXmlResultItems} {result item list}, getting the QMetaObject hierarchy for each QObject and appending it to \l{All MetaObjects} {m_allMetaObjects}, if it isn't already there. But how do we include this vector of pointers to QMetaObjects in the node model? The key insight is shown in the full listing of \l{Full Listing of nextFromSimpleAxis} {nextFromSimpleAxis()}, where we are interested now in the \c{MetaObjectXXX} cases: \target Full Listing of nextFromSimpleAxis \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 2 \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 3 \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 4 But first, revisit the \c{PreviousSibling} case for the \c{IsQObject} case: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 10 When asking for the previous sibling of the root of the QObject tree, it creates a node model index with a null QObject pointer and an \c{additionalData} value of \c{MetaObjects}. This effectively allows the query engine to jump from the QObject tree to the QMetaObject tree. The query engine can jump from the QMetaObject tree back to the QObject tree in the \c{NextSibling} case of case \c{MetaObjects}, where the \c{root()} function is called: \snippet webkitwidgets/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.cpp 11 Having jumped from the QObject tree to the QMetaObject tree, the query engine will use the \c{MetaObject}, \c{MetaObjectClassName}, and \c{MetaObjectSuperClass} cases, which are similar to the cases for \c{IsQObject}, \c{QObjectProperty}, and \c{QObjectClassName}. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/images/0000755000000000000000000000000012273255454031604 5ustar rootroot././@LongLink0000000000000000000000000000017300000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/images/qobjectxmlmodel-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/xmlpatterns/doc/images/qobje0000644000000000000000000033163312273255454032640 0ustar rootrootPNG  IHDR^mvT bIDATxtI&ٳ3;3;==]====e{AG#{oE!/ {y)ޓPTmP;;y_d e܌?0|ޛ;ҟkW.߈/)K"KHHHHH0*YovӦt vf`Lޚ*oB̖d,i&KY,!!!!ނz)o Y6K0|)uO)sξ<1|Ig%e);ĿS~#7 (LϏμݧ_L5L) ݞO7?څ:N+faf)ԝƔ2{Om$s(CR~WdbC,_m󕐐s 1X(8' N/t4m70o7͍1w-?}ŸSw [=E%I4ΌCy_a4]~ }W$ pߪNW⋙f:&1$ _R~7cvq8ڱKEםh翮y~Wm-KHH܂s~.2x8.p.Mi;s!n ϊd|:m.JhI2+_?YeHFydx Y!kщY{0b{sl;;N by.0qlB;4:/K-v@Ȫ ܐ+R{ `aVZub麰#EvL,)"=ϳ˳yN^淍/!!Bs1c0|ȹ 4\Gr~<-8Q;5c*ɣvy~| +0jiy򅲌s2t[yD-x-ߏ>su9 ce'0lKFs#h7vy-940ݬԕg ~吲}Ew6o-NBܙ{(k2 3| HQҨb5 ߜ0  ߚRv~~yޕ]x~Ƕ,GئlAԨt Xi΢BeB<`Av\ Ո2scU2NBO52Ļ-jn9zL_9 2d݂Yrcvd\&cV]\( |jGIC{э=aAz݉Е1ǵX a|$lNje:D/ x@ *Ȟt cv=1hA]o|>dy;G`#Y;C=X y'X)K]WĽ2_$V"SWO׊Gj bO~ ¼$$WҠ+e/DEI{KH ܂s 5#]~LpE%oY&s٘c #6dQ0|t} }e{_OoFէ]0taDp~-bZZv{!-ޏۚw131U022yzuә}niWe^sZWvشBθ̝b̅׋Yr z qة 6l̽@+ayKH -r!8GD#EZ|@p,tM1%2ۆca2#IGih4&?Ǯo'1bS&#LY,kҡM#t^/jwX  lk+'N,’ak}2`,z,×+'qO2H@|߷/e)3mE*<@F VFI=.=f+~E4+o¤`Xu8inƒ=-u^0QrRT\G(V2=ýF4-y@9e=|ȵ8t#PVޣb劯ep20|1~a \.kF\f21&{KH+܂s n㜃sN8&!;;øL4\GY,1=*߆ы0'&bZe#1OdzFm9W4&(@S}q> FMB́ 6-ko5<`!L9pSbԺDShǔspM;ti `%hlN%)K]Wn/s͌}.nrP("E/N`n$#4c,/;:xsxbP3 _ܟp6[^ ٜMnċ}S _r}i_ÉR"lfi.?[r.nbe9a(kViX/=H GX\._g䑿7ƯU{KH+l50qO>'\`i!~a;~v}~؜)ZqVpiAs{E2$cVU-0x7ڀ6,lϯ5۲{6弢 3f~Q̵ِ6'<,؋+^v ^I-O0e)<|1{+e6ei4Jr )K]W{終Ű8{VŬC焼60:Za6l߆"]suIxNjZ6 ќÅ"ŧ5|fč:l_;#rRej\M>0U|&IMwKHK܂s 58 1|~Iפe\7c-(1/sic\tL8;}5FEq =zEǨUڑ>Ka0{`|eCԖ 8|]`K34v&e8}#^Ċ]E8= Yهϋ*ǟaü\aMggsFw,O@|3m@,L(^ttAjbgyd}<_ ^򽔺b|2p\ w,"47/&^Pq'(tE2lq ߒc!e)+Frh,12B. ڐ%#ùy\_@G,yFh 0FQyx]XL/k^]V%+OWW JrFWDRˊWdY)7C֧#|u""f"bDly6Hv [y6eQC3H#{LR~G|F$_|e}#^Jߤ'8ѯ NrGtNBB@Y*sD8븉.p.9]W'c5fc6 #抴GF<35Ň])/}r̎5zko<"S ciԈH%e);ĿSEĮ|9MDpe^L5rs#BX#*4}ɉ_20+$[ٲd?pC6 ژC_~~l.S M8 ٯ1pCu}_e9pn>|TI#V_ʒxIHHHHHSA Z=y':F[IMfj4)+Ǎ (fUNCi'5z\tze-qYэë')p,iRs(M]RF ijl]*IXv-ܴ֭k$M<8hGL0 fb*7s'_c#d: Ujv/R+^ȉ.W37w?]C>]胟U)O ѨXzޤ&useqڙsS?PHԱcGCPXFҷ(fmk>`Rnq7 V%eijFQF'Zq7mGA}7GN-8Afvg;XҦkzvNxIYxIHHHHHSxy(HڈY[i&P̚@[ݺkmRckPp fHM:_+ |լֱ!d1~mrazi<1?f=懿΁y 2[`-f -2|-BoN}?0 U}}545xbkf %%i iIQC2¤o*ܷw#iP75RCSt6v3x[eX*|7~#gV ]o!>ዣ#uZ >˅tl  Jben%:dEՇk:~V& Mj_uBQ,>iōnT*`|)&mK)=J'#X_4V2Eڠ>ҳ8-7X` H_Zk UԤRCQo<_;RZEjFETCг VTKyՑH=5mgc@-' KGjVN #)$MPmwӯ70&5MoTMzUb<[oGNՉro{Ks z f UhN"h^0z]^bP~}HXo=b.h^]k}sYSp}E/^Ʌ\&_Zۻ$/2V=9GQJ=,,ť o|f>N1ZRݥQ3"Q-Jϡ߬XzB>= b6ME0/ ًiV*.yv:7[Y^f{Kg9QmXb8X}EguYzNcNqٌdzxqDZbmhXfnǚeL kښ[VC-$F&Vf=^V̄~֨#ApӖQ}ij4 qмyAABDO_7NCҝhש=u ]вr:)FbY)vY;):aXv2? cU!`עh6ITOg#B)S[DiM\8fmHD0DAP}{MȘEȽ_ #cDtD$-ٗrn]L1a:*|C,ޙDk̯ql*P}%d$eS98{- K8jd$<dTqq~ Kô{q ŊH7BH;] oR"A}eq`шĕO tw 3\ZƝCk's }^63>f1N:N&aй=Upsvyd;D8o ueWp8nXyqv\ ᫯zydמpDNjYgA2W_?j| =QDҖbQ <,h\daqUX63B(^O&@tf30GnbJEI]-rw`$!]i4(J3fыs& ½7ڡ:↫ 0woe56Ld^iڎPݸ >&GsaM=E$S)dJ5X8CNBY#{7;-/>K~p%u/ِeHKA=|Gn2&.ڋy{iHa='tM=>ksJk! ŞSV ;`Sɠf3# a[xƪ4ծ=.=WSͱ)"bWN#ݗ~1.楓7Q* }vf;8r&:@'xh/g^GgBm$&.0"sSH\263ȥرaj2 mW"X`e҉+,%V/> bbA{bcYz?;{k7/݁VOù2M?Cm O;֔, #`!3җvG=# a1944li 0D՟vaP &#N4=H~C|ig,/N? 3xZZZE^zs=V 2>wVX;{j& h`$]nY1w[!s(*q!.WKF dj?-bq'nǮ%aL48o~-9f Ĺy}1p- VNޏ}×Aޚ^//2y>؅4k%CJׁ0xrEJ2>lRn GƵm hLf=nj8E?#-ex;%b#aT}s+giqde`&v4jE7cKEگB;*SӦtB;u5x`o'6꯬k#_yi]C]l%vw>GQRnByڑ'3٭l>6g="ӣJ?~FSv+(bS 1zўfU6[rQ2>z*x\P yUZ-7G~X6osS3Bie2yg;,OA τw~~*I=#RCqZ)UC:+4p`,հe(l^j "zRAY.AṰz2b\C{ n-Ū!iQ55L7rx hx#ju67Goc&G$}''(۩ ܯл@ƜNbNx O1϶ǬڡԳo'L9:'m8 _h~=<=q=_~JՌ[MD]ZYG ij2 MG];P(f*R^&MM]GVA_ VV,&+VXHuR֧^g4cNb7{e|X6=٠ ҞvNVP3qŭIcg)SdZd2{Tu8R(v,#=ۤ ڞz D)WCM%K4z<?mrO"/0oaU:#:HY y=^,ZOZQJwj6V*GLR5Ʌdwl2eŎfΦ+clEʌ']QYʂM)W޿KaVN%ᝨcr*y^_N>ۮS4zO%&!)Kdww&Y^Z6MBwWbfPKetꑕԋ]|N0| }k=$bϑTnTa3;sy?+u ,D*WޢSèݗn#ȝ Ҕ^cuF_HQ6me$w2GG#6);hT)N&ͣ9qE4t;Rڽ?LIll\ݿIڔq客9/e, Nldo.C'V AiOĺCԝKf;% I1RѮi]z8N|vX~|cuˡYẹ}e0ac=Pzax Cg_Okai=/*^x=1態6;0NZu;﫯߾:cwg¥8Ԟhi@ue 8 cKIgVKgʏN&-o]./`STPU,V V qۈE.}[,M)w&JHHH|j:#)KfU8A 7D}$w_l CS$^?NdF G ?Fexc-u?r45JYʯ3JHHHHHHSo!KHHHHHHS,45JQBBBBBBc9qޗ~"-巐o^z\>IHHH/ijR4Hp8!77,#!!!!w15Q}&IO>(="J T]]MVU.KHHHHS35쫇;K4HcM`)^ 7sh9ernn.CGEVVؑQʯ/s1ʗ\V@"n>ZkhghFp(׿&^ YnzeK?Unze8+~.o6xYVw|Fʯ/v8y$ɗP^|$$$$$VF.W )##ҕ r?2e/TΏHI ȁt OMSR1rZSҔV!?Sx\&T$(1rKit"'.*! ' ))S MM2`[cL[vz쯯uwYRŋ葐xOMϏdYfrR@e=- Z e%T\Rڵ>פR | HA zW/7M0͆ w8J%!!!![ycc0 6iLp2RyQj:{LmRMu5]/PAuL/ϜxRu>V#;6$CJԨ4/{jZ:WԢT` K,ܨ~NNmJw#s7:wsb8 EjjnҨ?Fęa?=֪5zrie!FМ-٨Q5aǨ sWk'Qp ks/.cۢɈ0އ@$?) S"B%lfSR#uyc!2TV|5NgWq̡54nfx aӢ&>RWAQXɉ$룪LD^*0q?O 6}iP5<Ʃém'b SUu*KcA TVY@PQ#ü/_IY&^EN:a*zst6.m'/AVe0YPz2 ')sT 43i1AjSzVQIQ|W2OҪUC8z/ OʊjzVTMMeđ4c{.ըǥԠVSƎiYuPUszPԤJeˤGQr%ghO,=W%h^){\NI8K9$6R%kWZvn_>\K$SCwJbzZ*NC:ϔ/:O7+K*)m0"MTi({D?)Ia:ohk0%Y)WQqI6Kɑ.^FSA,UWNSx߮~BQNeɴ#0Y2kƅBLVj>t`PZ43YRtatVlEG͠SW*vB6eʼ~V0m<:vSYDu<\q)b_5CIn>&]1F͊ZDFz%nNM+e6e 9t\GѪ8jw?GtQ>hC3?QU#IKBg=e6OK?ceE\G#ގr5j<!cZxZ󺅡]g&f fEB StM'MEOFU9~NFҍV~?ʫpҵޙ@yQ\NrN$$jM⮸ႊ]QpE #FeWEEY԰2303ðUmӿfs_Q]uVu5n7HWs>g}dyMM/(rJR۫ˮ5-[^gpv̒E]_MƚmkJM\f-4vR;W.kR;g w_Qfck׮+ʇk^qmfن~;0Su^aGV8e-nv =wǍٷE,_n6ځݟ5-}n]b^}~r۷xܢ> ׏WK?4E+^jZ0sNyp)<⥗^zWB=-LwL.)3vּ̙gўpvy\{|{͘+/zg75g?˞wufܼ3NO~ZlVb~ƞrƝxd l SM; vޭ-p<<Ôΰ(Y+Oh^3gO6.5rzsGvҥNh&=;橛.W=^`箱fiY{Iϊ7^m~7c;fMcmW߶~_/a6sG+^l/6Oz}촹K_۫okzm'Lb\~S,q}FiQFN&nڰ @[:s8E{k͛7?Ŗ/Ze6ao:xͦi/^a޾2WMkJl3JfI#[qi~~SlQWn -wRWn7h9B;kX3nd[h0hV[A{7mk8|ٶ^qJc;|nmno]d2 NڶvS'5[ns'Ėov;mVn/op>mٶ_cy;oB;^ԟ\VK/Ky̚L*.s]5SEE)3w~n|-Xuoi~3;pѿipLhflN椣G4}[_i?yԶC;s9'[*F=t%Lν^7/ی.*TST2'1ssgKny4jשi}y?l`LqVѩ<ԶyQ 4V.$4t=pAӗMy^n}3fa[M̬1}njy7z0 +N<>/G%sӆsz5vb@yQYߋK?uyԡi˨l*+裼Pc/5ј~]͵eN? O1kl*Fgnr?5[7+n6W\s`etl/_&\`>3rhEoNlpft˳[9c67cNof-em|p.obnyu;hd--m ]C66ٴ-Ͱ};<>ޗvKٔq&t= S2ҩS{.C?pb=O[]# L)GKS/7zS+Txpe>>R߮/sBڷ5~r1c'~9yX>2raQ޽qcUaz:swL//Crը^zPj\VTTxsSz8xXx~b#oUuׄ3ʹi3}:.[Tza+~Q/KwTܹsK/OjuGovWԭ{wm>bJ[;[!j ,0#K/w|Ϟ=;EbנF6|/_K,7e/K6SkM˧cEMjF-^!(b襗^z鵗]y~vÆ ^o%<**((f,`~^S{*oj qyN襗^zwX85tPofdaV~P#qVڵŞCK \m5=$^z׾u=v;־F?ʼs6qSV|E׭ƕ6k;=/ciqVo+Mkz7O륗^zw_Wz&^4n|4Qs~܋F7B{c>K;_ʹ>l~O;ex#''-y[g7_cj/ua&}{dmoMkzM륗^zw_%]إ)a[[}oQezJmW'U=*4?h`af͑qEOǿ<۷8kݺuk=+w{clfUfŪuȚe+&̢%+;] ߲JVF4?-[<|ƕ@9FYLͧwMBn6+[h덎]SSS|zނ%.}@ojeמxun޼n۶ʹmݺukR~YTu_.Gʽ )Ԩw@oUk6EM{7_r,3{B3b5¼ѱie?t߄",**}y衇=c~3zn?ŋ϶k6l.Zȧu__}4h‘jRRRRR,^z굛l;l鯖w~d5+pr;c<۱S纵x Wזnɞ~ G'|ڵ袋P… _l_y{eHy'f_}͚5{6fͲg}o .3x`URRRRRړu]kv-^ 6s-gyūS}jCf7xA%᭷jx Ͱaâk֭֗[t}zNb%KQB+Z⥤g[!_*"l#ʹx@y`odɾ@U,qvDZ1P*OXȣܦM|&"'qRKIIIIiQnĕ/"tRLoDɾ@ENM)V4 5*))))}fٲe []ܵyfЧ{ 6Fh:v@&?ؚCzް=eOMulwn> 6ī-/U~u/ݖWh\]Υo9SU_V,xy W4a׾5e:TJSP-E0K)ܕzvD,Z6oGOc>.%F(m|/p9Y(o}dwO5=FɻiW+ y }qM X|g/KFk֬@}̙Ҟ50qKTqKg۶mQÚrʒ2aZLz `>̗J:]eY\\O}I~|$&_4}ĨqqN;4_g7S-u]w'?̥|,_:C>8:}>` UG^ ud&{ޛNÇ̧``M0c=F@y||Ce%ez= sQZ&?e^If̘3Gi+}>;bk'圆}DfNƞp'ӬY>͂ rI3jԨ?ѿ3<ӧ=ݏِ!C{(xoƂ1I?}+-|S7i>Qا<ȹDsUܑ\ѭesYsB-=M)Ɩpe_8| k s1h&C$,Li0S&N;ӧO^fe/kkqUʋ!NDeu絆%ǸŽg߿կ#2!`l0_,T_8)zuWڹszjqſ^-SN|9U'7dҰ_n ӗk:OTtqakҤOF{.>33;=m3&%U74r"',k +lWdӾ|? ӟt߾زR|SjO`<{xoܸOCX?|Q◃y4ѲeKSOSO=Տ%rv^p=M}~aa!_>6%_G?栃_?wQ%xz|hXg얾_|ņ㗳O '`]_$W'3_?Q  "oX12F|}](O8>йk͛>n 1~}q,f~r-ݸ`ܓ[ne{2Cv#K?<2'P2O/a^{5? odET JM>fQ(/뾔1O sy„ =/Wȑ#\Ƃ1al⽣9|fɍJ{#,Zk܂=˗||VN\q楗^&NHIzL9/Q(BIArmFG^_'ةS''@9{UWU .;(:/` (DnQ7(Ϗw?B9!tїA&nACNKFNv"R L)XBN>QرcGE^n6/{衇zh, QD ͜9υCz@n42Fn!e >w\Rׅ^"DV@wb.uw(X&M[ J+cEVe أ,eRss!S0ʨW捜&v 0onwS 7%1k,Rq_}4i9coYnqgl!gdŸ p/ .btl|U]@":ӟF&|rDF2SJ;e|D{ Yrc>`?'Nio9/w !W= _?ϓ:|I_'GGμ >H3!uA)Cyp͸zd;e[b93;d;Y]i'/{y~6ѽ*7m78Ul4;v24F)Ը*_tXb|KLI&/'&⋯gϞI)@r&u~Fr _!h,NnO]x+F aAS[<숅va14NÝdb ^<OĂx޲/ s,^BÜT`q$4__@I|ӛ<;8oY~m|cdeB@Ľ|e.KORB'I|zC<9ws$s x{PC1b0."y0:ueκo›}|7|:x'[nܻals1vIv-nK҅cĉEvђntalYh,EnfΝ;G@'NZ."5<np ?'B{}uS E9eYNQ<s1XDΩ^Hʻx_@شiS?5San)?P̪ӽ=@P֭[vm{E N73|)')>xҾ}(sFFH\'?P O #I 5`6m d?ڵ'-`0nZ雜hSO3y&u\r%^^L 撑1 xFNfiг>H(H4d" D!gp'xȸW:B@h#^)2>2S8)9oH+$ O:xiC@pÆ gbOqc\BfBC_@ "A <XA9wx!'?^N#>0}ȉ9E)؞oF!-}8 xWx2veV`_,yN6;9KJ{v^cƙEUqN`-^n,\֓uRS|{8Ņ(_n|}⅕= bq@# "gၱb9q*2"/\/=^Xlg'u&ذ-s-en>}# 喯N#C9İIQ2n_|<-^`y_/tdu"BzK ~+|˽ay}7$<a@ N0FehIJXV6ra XSsBX]X#㽄uR+Tk JYRd³D?߷b%wwȀN 8!sF هPX^KK!TY;IA䐏ȭuWNЈ~$`^'xPBMe%*g5Qd("I>Q6#Ӌ.(gQV>fAIb@3yJCmX7.*s雚su8֦L>r (s_]^}Ï9ʎ7._)cхvvej|@tl9ʼnE1u׽J 묩],G# eK^|.q(*|ZIuVCXg0,>ֶ|rN7 97#d9PM'2Fi\ږ|||џv ᧰t}iGi>:4eL#yY2boҿ}QO@ t'ã\a)'iC>t?t}rNCG5p)_鹘//=n/kK\mJ{FN4]EKV1cǙ±+Ʈj!t.91ى'"" `dX9ĉ'cmbJG듞ͯjy.Q$/< 'h+TRҜ< cLv]YғhJJJ= ̚u͈f^SX86I&`=ҁjwth V&𫃗z"*;eS~k{t4^;9|WD-3ߡ"?ԓ88W_}u4YGC{k֤Ic8q'N]~o&DRNYܒ`Ĥ7qOxQ#Hq/|'d4k;m(D>?␔8N>/#q8{뾯|Ē> 3VD\?mp t{C>a>4Y^qlX#?q6J>&<q)G8THRIi_ך7w3o"3s|3j3w8]3fSqwNK\E.! C8gP(8(qLCJ͜s9 RU 4NJ4t7}tN{~dcD?f!9J e##E8$ 6a_\#7Lcm \8 ^׽e4lB`@9""I_{{eXbMg_86E&*ڵkgrFM6, v /#G-B@8o jGb ?TBırE`|` r#>$^!(V1" = G4S$N[!2 K%K@yR)Q>Tq<ONquʢ }sC sV>Κ[g^`Ϙ~UqwNKiuY)t\xNB,J￿AuD,Y 2:Ioyq/ 5J@>c,, ,l1|KsK0oSvƂ*Ac_G~Q$,uwOKD2< y䑄Q (p(0(viBOx>ꨣ|=PȚT|@`ze7F6#QGxL{(ĔCy2(@Xs<`Qo"/Q1Jx0DSxG\(N\D'_׉r&ruϋ+)QE`wbZ#.PFf(B<x`2U%%PrEI~Ȑv1vƬCrwJzKtzPcݧd0 <8r"zՈ9$"y睇;8E\pA|@9& 8 (|>fD ǽ@#!y@ X[! < |xe0O;XQ;$_HԲeKtoC6sF86q#bSϛ\&4rleY-=uxUIIiׯ_e+ֹu+3gBS6m9̙[Ggxx)Ը*+G}4EK/]Q>g+85/jǗ(b=ДsJ=aG KTȂwRC}'L |hE.KGݢL7;/<(rD$s's9CB3?' %%L{ "jxȸ 1 -3/6xјjbA@'oۈ⹚#;Tc; @*)ɃG c#{SR/]ѥKW[4̎*onjTy ]z v¤)C=tB{BEXKYk XN N!VNڙfνS[9Z|[0KN-7)3t߳WO R+|d3&m󜬓tx|!(XTa|Tw[M^]|k;a!g3'?sA>֭qʒ޽>0) 5 [/ Wű3+|P;qv*H:`odBt}ZNqBŕ/͡P5Ҏ+^|ɟVQӚVQIIIIIFxiZ-^JJJJJ 5*ԨiM⥤BִBJJJJJ 5KjRRRRRRQFMkZ/%%%%%jԴBJJJJJ 5*ԨiMKIIII-^ 5jZӪx))))))ԨPcqT(ԨPZʢrPBxJ:;uV޶mho_؜viaÆ /Edw҄*Ix))))))ԨPcF c/Ik>hѢE樣2hXI̡ *ԨPZj #!;ի̈́ |aZpOiw g#⥤P*^y :tM3ϴ~aP./K/Ι3O=D|G = zUIRKIIIIIF[zo44hР:뮻L}n0}i;ӌSzj|Ww7lٲEaAjT$~y)Oh> [o{)xyJ=X˞~i۲eK#b/xϘZ⥤P*^_*>ܶjʶm|o'N4\p-**J eݤIӮ];N=b9TRRRRRRQt2ũXiBeZnm4hś) I'ERqr/%4 *ԨPZ2,^hˠŗZ⥤P*^a4 6.$ҧ8TURRRRRRQFM+ԨPBO,R-LjRRRRRRQ:J?0̙OK/%%%%%jt̟??jܸ1ǧ *ԨPZ^$|`6mq/!Z⥤P*^uf@!E YUjT8M_|aꪨs>' )ԨPZ0-b6mn eTZjTū~F4͛-[$PRKIIIIIF0 {h"/ )ԨPZUTTDk{w`2FO5KIIIIIFUρjqqիP*^JJJJJ 5*Xiѿ$VQF%%%%%j/k:Z5׮ :K&+_J'7++?682Vۥ̭ې߰{׽2JJ 5jzKe돭u'[mݺuk))P(eM[Yw6Vd|) a>S2SdVfks7Sʪ~r6BIIF4Bqqy *hx$i)uȐ!ՎO0n7G B5+9uz꓄3fxСCە1~O<>AIIٗhF-c*wZ!1g(']~Gّvk=ݷ]ߝ釒B 5q'%On:,۲eKU~:C UV|ٳgi_^}4^{0Db+裏ĉs e,a_PPgxכӗt%5n83|,شV c*ҬY3ۣGLrN>K:_,=2F2E4[b>^m,:/ `K-hoIrox(0 /D>l_ON|Iț.؝C!|)uB8k!‹/غ8mu/rv -//ρĢ[-/nV4ƛ|guwu"裏 vXJBt)NIoĜ9s̘1c 7Bq/眾ǰ ?j-aXY%{4h @]v-l> v)+r/z>i7rJuOr!ުó뻷|ULB (y'd`piY\}g+}yՍ<wyY[z]vNqOmobyqO;E:Eӧ'|sy[o)9P_<KV#S rQGJm8%`z>9%ͺ 5X^!rINٳK,"(Ģw.]X9瞳3WƂ100X ZŎZ9jTkYDr[e+WxK(XV5ҏ%V%m;udpGŋs [V9AdD-%I1 .5ʞ-8%G\ P,Tņ~!c zlXĄ38#m޼yVb~҂"rvGE c0Yt O>#-J3B/`)xP '| g|F{~/9#R/vAy%Nʩ9c 7sVC]ve^'yRJLdJ#Ȣ@2~'?y?|D6|4P?;CIcʼb/x _cǗ3f.B׾}{?'IoHaX~iIV!U-(1YP#_B,{mY?|or<~a b:ٷvFe_KM6 JW6/Q3IX&nfN,ipYO_?A)CA$U/~,'X7h cq1p} _yX85 K;@X #rD/ܰF1(wJ/52cnD6X3 (" Nj=9 0dOd!wʰY& BE39ED H|3JPB.iǟ=X|"K/<3/9xGc(f/mȽ/P(|@B&D.PR>D'N"# XL0!& P~g=/n| ][pJm/Q4Ff̸Wd"O7fa1Bcz,tB 5Umg$2qƈ̂K #[y* jI|NktP`ѫԓ{UjӟćCd3pڔC4堳y|N)*_~eSNp۔کV46dڎO |lӎak"qTB,YYN;Yyh5̋'y|OF)Lٝwzw'QYV7?.jM0a<#5=jT.{o,-`a|PcخB{ԐR&LU _.S LH4}j 7LahB `,)3_uaP3B60\ط>g <|0^luɈXdgfCȂDN*rR|ۥ!|p{ppfe|wXoXĂaYURRQ;%fȐ!)^! ْX->fb־&YeC%TmlSUβgɳPc噳8@2sRP䙵n:tY`DIMzDC`T$QPp*JJ 5jzF9i4hРĹgև~a N0#F׿ƙb$Cxb/~G?2mڴId̩sرɉB1s_mqq%ȧi͓8r^pxkTja: 3eE[@8DVqJZCW)Kb_Ҏw_Y}ĩh O?9兣INÉ 8y~c̙_lnݺC-ީ+N5C8XTw:Yw=)_O8%h:FKNix،a;rxW7d*f).e ?|;'Q8":7+"0qja,C9 "`wh;f/s W+d~H~cXǘ,q$ _We$$<"#d'\!8~^z8̥,nhSGU]i ?Ϝ3lPZvbf'd_8/܄e~_P @8[<0yl8_|'ބ؎2-%S4q@,Ĉ^ùZ @a|5)?"O" "p015j-/4ѫ8AL;c _U)PnT=5*EYK,Nayr/pRGzyA],^2z= |1͊]tO|3Zj}1ר)3}˄g 'V"7Vއў;&1UC}JJ 5jiYebaBb_JPr7E^R'0AIfBxC|AZKdxQd!E6öpb1 ȔxZ@ٗ$A҅ue%;Su/.ءb}k^Qǒ׽{wǽXUCq-1(QpQI(^0^GAcy|aeʒryzVhB9ÓP qdyi^p(eHϝ<[( x9}l۶BfHQ犍9B2(X((=3JHX*d2G,^eCB\N()e)^;kk]tjڗҲXbOyؑ(+JK[ba _([,P1^-?n!$&+yR>ꨣW4:QbA,^HQa>P? ^ًE&XዚK h2@`gxx*_ ʈDapN(W+'3_~|&'/ zVh!BAj.c!H p{?=?5 O̥н9|VdC>e3( Pn/1Q`Iܢԅ;%jz1B|]Wб[/Q[ S]_k(tZX!*)|򬱮*_}i bAMxY\PNKVuԖE(9,'lc)T玄}z~&XKCH:$Q"x>jÛERDE/܋3* &U]fRRQ}PK =oX`ۡU)X(l6 ⬕H>{qϰNXƣ/~b6 Sl^ġ?tX]BB%&n֖1BiKC>9)'cepϕn J^؟4BB6Ëlʧ4Or;+^ 5jz-[qy@0ac͹m߾}x%&+v>V?̓9ۅtjˉWO~|< t0A>ސ,kX²,y~<&;d5)62F@vߪ`)))IB8sS_Xz(Q?1%Τ!0~oA$I!8w73l&rJ ةS'|ĉ}>&~iاApJ Ď,j?D(qEǖgД-Ʃ 6uV#8 Mu8䘺}_Pm %}T`= X_ =3qCvm^2%%QRQyӢ(uo8$:  P#&[H N͛77XX4p<;E)#rCz8Ϡt@kYQX)߶mćwGEqnIpBp3Q$ۿ_؉ɘAcH kFb(Q܋}7ْw? GXPppy$'([tc>C<|KY80c}ThѠ `7.~_8+E)%mGpGnQPg!u 8/8!tA(Ixi'>Jg%%%IRQ5*^,j-[ ^ șgc!%  WC=GBiBo <ƮrXWz1XmiPÙV&G=!O[z1"yJ=0;x'2HkXքPPPP°BIvj!D ~(Wl('7i1T8b4a4,Eԅ(Ee ԏ+0J:OSuILfC((!|` (Sx_. 5Jx0G/ )q K{`WRRRڝ/57-{XT`uQ^cAd<{r"d=CZkE6)hnY52f^Ya]EcIʐ`G)<[{*4mt{wgwο4;3;yό=c0` 6`r $!1Q$E2@Bds(I(Tё ABuTWU]>Nq|]tIpb \AvϊX2/iEܹsZd)/Y"F 6o۶MJyb 83祭~3*JG}[wQa-5ɇK*vc@* d<>nd=Ƨ},A*ŋ{μ6oɥE2h* %\~Q$hD&;:i.`q*CZﭷޒ6g4Wm"HN+eDf@[&YiӦySF;-YH2AVA iTO%4A3߻wO.UFז-[*55뵖cz'$Xc_r\?ˬ)-5_4-ZYॗu>q| 4@<~Y' S;o3{=j;:@1i/E___%aoi/m\ER? gP9 UU<W e:_+u\ JU>PD^@HWuWu|NKk9py5hN9PlN[}bQjMNvL{ =mG5i*USlh믿eKZhR^j2FdM?yc5ʫ\* tg`_m)P"|UhѢ./Ԩ_8Cf7*EM1*/COu*_> wMj_hpiѢe^\>$H")=5REEgK:~QƋu,w > U ΞQ{_ŇU\1~iѢ8pؠ?R㫼gRnkһ3z@,:SZv?;L~GOPynL:ȳOݖfC; ʤu'wZhRǀn://]/ŋ2tyddKaz,bG ϵϰ3JJJ#Q*fϞ-OWoҟݑ?C@m ? <<}sMhѢEW/ ?9x$?؅;|NJҥpqZiW4zܞߵkWAi&y|ƌ^.Tf%/.0`4h,ϵjg^ÇelDzo۶zOy)ζ_Yc]9XСC^K)[~:39(/Dǥt<}i1+WSV@eB1D׿mWTjb7n1fԾ]TbǴhѢEK`ԏŋq~;ʻ~zf.c0i>$׫'#o[01iѸ8饝!rٳgiQ/ qӳ,K ,>Zh!s;y:߱c6ғ>NtAǠ}fB "Lԉ1fI u >I-Zh/&΋Va8TuSo"0{ d/׫'Q1-"sk 6)oV|= 8rNg޿Nz_@js*X5AK-m޼Q*#EEv)8Θ5jTmm 鱞K@ MJY~ +! ƠҨaѾ$Hvq$h)xt*9+^FxעE-u"PJ\ e. rJ+>ap1'ׄ{5Z1Z$3f e;(q׫s2{ *IBJV쁥YqqFY;.8aESSLիmZ4tK̓ɣߊa(:u$cxF:<jI/Y ';f`;O-5]jd?1$-Z=ťg>ǢcBn=&[HHX zd^uW衝 inO2\4rY. OSY U,u-y@ Qڙ13c @׬x1}'2`6b2ޠq=ȑ#%[F6+&&kF5J 0b\BweF()F:<]jj^!ewjX_[c#-ZhK+WBQqd"ķ-ozƸl~{9[a[BQTrcGgTp'.@$mm4fx=/Ǜu}ϣ޷g/ӳ߇؊ {@>k|Rۻ 4jH\Wұu[HJJ7 pa@ЃZk^˂/`yݻ7|T ϵB@ w*^NNvoW^HHH~Gb(>>׶Y̑mA ,>>{aTg5exq4r:q7q ?fhH8n}ٗj/zbzֶkjþh}G_}/Go8/Q竍Ϛv$kK?_}ɩ8p0#`’dxכ'a(6mH i~~~5!l0q,ʨYl MQզyʑ._Lk׮Nb/r>@C,}~/)_t/wh Cgc;F%DAk&e^>Լ&u5M`>X鞃q|.hlFםpV(}K8o~#B"%? 5~gʃ,.3:M8Q;>[Ukƌu퀟RNzzl[Mz<~S8Vc Ymxd l>iؗU;KJ&''v_z<WxJ3`V* Rn%gF:,YTxןjҤ$+sS:&z10:o1dND mc2^xH jРwѨCgn^=u&eoCjB$ٹsg z8^:Qկ~%bR7N(#87|3k"##/( ԯtơCYIƈ$cC]RuL0A}uAc?ԁv."S1.ur@6Lӧ 52sd&Ж燅c#GmfLʹ!:9s&h֬wcFeD%'F(Ux]%T,NS͉T{8>bTfž0/t3}cr>*FԟQ㎱E?NUe˖Uӓ{g'SyjO5 y}]9>.alÙ3gHZ=[< ϥs̑7@(HjXb{Oxd.b^GA~~O:E֥aeS 'UgN1 Gl;ٵge lMw^|ܐQy!Q${սScF#ŋ%͞? P˂*8=`jo~/y_?>V|_Ƞye,GQ댍\:+6^,Ɖ.3XauY1+B>vK{ 蚿U#NJ.A<' &N17Zꯀ'.Q8 N6v{NUm9N jD1^c,G9!p'Y) jɛ2d]qyY NTX,%:NtdWIW:&JRȀ(^֌Y6-<8NEΥ*!23d~(d{Q$xؘ݈NYF9dͶ Y/JJXvs D eef HYٞږ"($[D! %P!'e/E5e7E$QPwe#S`Q\c9N jpZ>\V63?h̶J'v \p,[&r\WBMeX0!>s>sC绅u rE/xezs/ RL}Mƒڈ@Q1IWl]_,_\Ⲣ,'VNlY'yFW6L9` .?ux]Z22Z ˀw70%j~)f}ܗiA0H؟|ϲ JOqّKדs xqj.G@,6KMX/m0yR>A3jnXϥJ>kl+= (W,ZJK*q5qnU\Z%Õwg~Fc5|0ղ#-<_/k~AsL'c/׸MT^x.'F2ƣ /`*N`vЦ<ګI"u{ҋ'o8(&Uyl[֊,Y*^"0B]l3eS4N\Fjgj#'fH>v.Q֟n^֭[^Ba{ˬdh(k]ZbNny/j$cG%[^*> rjr1_;0ctBNiii>x… qM9f_ I-~\2HO Ǭҝzj:+VM:o[v6ףX}sgolp1@90w^e1{|xZ^5k =wd;|vsj]2t{k=˵?oD*@YQE˫jI^-衞{|&ݸ+?3N7V:ixWV qӓ8c.6?71OV~׏WeY ^{O^G1]Ăױ7B-lڸv%k8{Νxؾ}6_kcW2e xS7uRd?KQ <|]U)#;1rb]tI'^Dz`xsch*\uS"U*/<)YyX4F&0ZE:u;B+ysu\t&$cL]IkMW)rQ ⷟@փ<=)I_ ʈҒ'}˷3;Y`:?ov/׍>3M}sq{eWs/: JogHFc@n^sab|iI(+-Ӓ':/E%(zTGyֱ?҂(.zl|.ٸ>WR[f|"ϊN:ܩD */4TK]-OqYs\4:vܱgҌϏ=F`)>5b}>%97'%ҷ}^tҩ&]NJ@ WοlM|.蛉N"] +=%n$,r=ϋN:w8TsVbuRx@οLϛ1?3n*~g}>eGe#˼N0G<2xy9P_DtyBPUEMT)LvU].JgjcչsnژIjUlZhSg.)N:-oZfƊ1W^sJibV`?snMe ;v|Y^ԗ6x sM9<ь-Z+'OӲ ,\FXx#(x"|b{/#4jsN̓%(prmfUTҧ%6\d\6ƆWLp=enc2/Ʊ*VPʸuܾlÛ%*ݜFxsdQc&LN7ڹUǝj,H:yyyGRCQȅGF/eeF.%T),S\/ RٲNE1/+5=U!ljYgs4&JHd3FۍvZwlT:r y^9ADn6 κF\0eOu¬-WuCM5{S~:xslH=l9f|˾iѢEcΜ(sOJTZGEq2 ))e^ 4bh^8YMjI-F)F U*cL>n?c?Qton Q!0cyiL`PN]-?spX#j:,#T;nZѫI%QByY%Yg1fwo-N}˛7Q${[x~}?ò9?x ̿C:Qz^h={n<}`4k.կ/5kY[#%ە20&w#ܞlzaT1BMV)0aKdSU 4w4A}@UhѢEx>sqM#ݨݸ^u۸ r0NwT=\f1%bߌ T\L\I^_}[EEXP>Ar؏_ nw@E:MFbĴQ$4=<7Ixy ʲ0qoAC@X4a8cH1dɫ8N#v01((;.X,و:O\o&{1 #&"h 11~7 &x~;㕋Ne:ocmB췧7e40WGBX%7r(1hPEX")<[kko+0ȅĿ?.KIAKFbNh?"wʱh&D,y.Ga$-&&]icʷ%o3#"y8^!^Q j<8ELaQ~*Ź1ĕb;?/EOcM3F#%)r+{fq2e9ƒB`)[=Rr fAAa:e9c ~_uFU3b1"dG[Aسz6BFc*T#@HP0&%!W)xcl  ؐ'=ƁU2hƑ{LP]xiѢENb޽8w2Humt ­;rqǎuܝ 4킔{eF:OfE}]&' Dh2G,^wN\S~O]ݛ"Uaw뀸5sD_OibŦ"vl7 _OAQ`I8Q=bVũ[b/%ħAW\Q?qCcj*}r޷M$u^4oOm[wĚC1d\ *fGtCI(ag=P̝S:^  }}}<~$v uk5~ V-17ǣߞZhWJJuN:.^{m6%k^в9f7~n@dqޱ7YTǣ jJU]vC 1֟)ݣE>MIM;|P>Sgs9Ţ`̱Zj<{DU*búۜ]9qݛt28 }T o6!$vٕ7l'RJʋ&"fk8(6L¯ \p_&u"ϧȹyN5]->.Tbb(Ydy {~1,@ovU"ß6,&e|ty"5(/ 4 [0~˨ѥmp "dz7N&Bf)t0Hd[}tDI=I}iV|q yk1\(.ḡ[e,f ڊO2GV|]y \1GQ[meQgp/+&,lY.Mcű,N{]TɁ#v]YpsY؀?omBfjFarwwZh~fffbҤIرckL~ԩu@v`UrN3ܮdH O["G,ޘ1(zPߏnȜaep>y62V:j*ꈟ}\wVEB>^N3T@چbаyAC̏Bdy:? %OŚVկԡ#)E\q]!a;5`:o/:u鉁QhbL뇬C[VUum3HƠI㦢cخ9x($zv;wB瞡x[Y85~Hwi]Z˹Tk Ro}Cg Q0ÉĀѫtDV99ҍtQrk%ڶbY`nѕN6_ O/SN m4E;@=xeyѭm@ TQJiA~LcLHwT8a2zJJ/G=wi`p|ѳC{tf:+G!t"n-:`~i7pnb _kmy~`,wc#c%tqpqjlS^1 Kq~o;MKhѢEg`oMNIEʾ[!-V/qݑ*W>B'XqAh?DZƧvB̗ 5&ugp%)Z rKaX~85åJP̳l)'uQb/=<7Y$AmS8Ɋ䀍~:e@w]9ߧ}KDQ`?ӂTk]ۅ2QcUsZ,Z(=n8ptp4l=d诌X앤mzCӦB\F4@0}Ou\6ÔKdöHTV;!οNs6Co†h)#_MbެWIth1HÍ%[cj?>@iz*:}"2׍/6v.g"b+dT,l||ۣ$8JϠcAxl}w~ |c\ګ1SorRG,CĂ`$컆g֣cpar-EߪĪ .d_t©JwG$/-ZhyQ6^w+7dx;~(Vi>z[l6^^,tk%Z`"YhMdY_SmC'%Le٣lp~B|~[Kф0X4N׿5wWÜUMI/f,6Þ c.:j6E`{Xltn?tX,n\LGt]EBh9 C18|rJ!m~ևּAwͅ=nbiT|uO #dl*L="ֈ  xM77Oe:/E'#L&Ph"2Ʉ)g,֌G`8ha4}}k-\ x:qwwl,Z'ڍ' yktxE}yƃ?(hVt?]"x@X+]ުCD}0wa<&!=(MꋁauTxe,zGq9Q[⁕SmbT==W& g'LZyw1;i<@uh?cTR qGnywȜֿ3&%0T܁мh$,KZ"> >eYKOOͽhѢ/2dh f'id**{_/տpS]F^TuD(P0{D;֮c 4(cm%>rgaH`7C'@۶ĔXv7 Lj_4,ǴX`lq^a_llL,9ZСڧ8pU''bȠ X dO :;\Dj0.~v5y3{J>.OcV|vxُ 7y^',o0MjYc|ڡ8#\IеB+Kpt048[sp:KaCT5 ϳnbOu;ǫFM -Zh"/x1H6C)K%`LK*^A6\O5'Z{dM5鍽\o:\lqoy_\׬w.=Ueiyo|FyMvTW}z4~QksA=݃fa:^;5:2}$[YgQݒd¬uD;V-Zh0^dr U蓲s dft^5ҢE-/ uQgd=˞1O4`|WM@иw:q:VyKme>I 3}mN(v[`D ?ol?k@}t̫^۟(FO]-?sp?#Tglh<ԯ_ o%%ظ_ \܌Dw^aLq>Rg<1#$QY^ Z+@OGcա{ W?K-ZrQ?KKKa.M>\NN F8v\TJqnk aؤlz5?etl\S[7?qz^Q^ѣ&`١"ml[ber'=q #yvK,D Z=ELᓱy<A&a׹xI[,o__!Xq C,0bdf2jUxѯ34b;.XLbjwQbʓ BN z4zcWz<Es@|1,|)̓願A3ı3ĮŨ|hWWa+'Q麂wG&`u^4N|NB†d}SD}r 6g=F7~?5/b& ;2EI9t2,?/ 0\}gO`CB:V1^r!&~{ĬXS Ŋ_KVO7EsC7d0ƬI[ s9PikQ 1.yi@t٢0;"['lXq'=3 g^O IǍ[P(VN1ضs gF [Z6F(7 &JFQm >+wm#fau"L8e&[j|{!EbӦ5ۿ-c/Gf~=?)qbT35neh.ܰR-Zh0ou+A=S9t2 3NMMZLXp!-Z ~Nj3G!"ۢ/6c>kQaWSuؒO:3z1y:)gpTـZ冎bLrfw"Mm' &adOo3[tzIKm nsvYyݛt28  =7|Qig'?>hӆfecB!M2]ǒS̏Ҕk-h>8ܵh49X4:qɗQziд b&"i$p'fFO7VQYI%]|B E-fܛphP4h1ި})iIOo"w0jܢY4E-_w8g^<㌗(]n>n[%r!Sjn;bQdo:f{ܶ; ISQ uM~sѹO_t:wFbLm2mr25Z16tr 1F6A",O:|Vb~>i;oɖ3Jȕ-3ql'F.FY%tk3X*Qi-ߏnW-.DRG߼@ %Á"2>~D,셷@~}DѵG_Lj|Э+dH7 Os!eQg2cJ  ENwHL>cDMn n+ i((fqt1aW\(y*֌|)E^~AP(Σ{vP#rayJTHD2q)9A +SSs?OKQ!Xn-՟ktn^t# 8%D`,fnpX1s.ؓK;0WGt4sPl\Mk7JIF4 _8*^ܧcU1^5]# ?NdME1u9%>?.-&lJ]cS0!&hӼ%osEkAxunvkJԤe5fd>gFuE1+˲ñ HGd\ iҟH[P=dl!lYK[ .e]~l]8";d 2c $AmS8Z)N섖#6 LƖpc4tD4n? 7˪)(Z荴"ғ8 뼌WA{Eg6PwCN6U1^ތa0ob\9ptp4l=^NB V^3Ǿz4F5ubs 7""uB3+@=.OҢE/OK:㓋٦h -¬>AX}SpЍӘ!ر9EibTB54FԑsFF=m6^ŻM`xL7Sl=dxEۏێ'a^wE"q4E(->:tkPX9Ut8ܶzMqq1:l0F3TGwc"좻{Тa%ʂC3чcaƫdgL3zMς&>71E">-w1}P _\&o'2J/qSw؂pj %vN>: #`٪U>'zDFd]0I2 EbiTk=PixnS$} -/ ?GKqCB6^Zh0^߼Fa.WIm~[ 4$#'NjӖ2O&‰qk++mO'DJIkS\OYfLC0$|Xd_;.v5'/ T><AC1`\"Z&/6MgR9G׉aA7i|v5޼aAA6ymWcE㔲Q!1m!8&RCEe6axBJ>e-h+X>s ȩ1dw݄{EʢؼnQyJb\xBO+{1)1KqM𔈓gaHPVűֽ.ƮqQSv=?Ł+f_yXb{T 7oGAyUr'F tTl=᥆_=+'D,?w9뎘l#)g"48XunҺ'`| 0@ PzgG 8h (42 AAC0)v-̔+(&6 vAlޔ u/Gj{Ca6t{jw,iOiԌ-Z|뛷h1^_Sx`TwP,f[?x<ͿÚ7;}l4*2zx7VK^XmUevH)*>g-Oky|SըUmh+Q Ou</@#,-Zh]㼰&Bziw[~n1u e-{x< UywZM.=. g|Qe?z:-vhok՟:Xmw—^pfy̥XӽO/?Y>C܊bq*y#=UJDcLx_J9ʰ;#.2y-Ƥ^UMXRmy^\_kH2.O?m,FzUa*`TuA0j7/t~EJR-Z>.5Pc,V_%+M*+M\\;멃dkѢEoRːעE-㥗u^5ҢE-_K:xiѢE/YR^ZhѢ+fR^ZhѢ+^zQu^/-Zh%^jyK-Z|Ō^jyK-Z|EK/5kE-ZdKxWW<؋v`<7样Lq\UЊgSkm.{8nM) hѢEK팗^j{>)>g,*v#4W=2*j+m:?gmm .Wj푚U,m[ 4ҢE-5/x (+)%%py25 뫊b塰*18V r8Pp{<J ݍ""U1ů0je fE\w>F]Β'aN!zGCFwGD⧣= ȬxJo#[+wq]zzSCf! TW{i"VO,=sn yzy_Bxe{|dF5ҢEWK~dwD9DZs1wq[ɶx2_xd6QMq!1]S ]qG,j߇/FoH`}0Eg6-Kd_/"C0nn"-\ GEy%9 yCsYi6ODЀAbBN<6;.Zs2E$_*eQ[س3Yzݛwāb$ ۅ,œE)&qL1[>AP1wITXK֓u 1#DPHb\DӪCoO'V?c-xXY!ڏ#vH1svlޙ ׉CCt3E#|@OLTJ=]9-Rwճ)v( 㒐[b-xpbn&VBA"lliK-Z^z촪(72s7{ƋNT!2%dhq<29ʡxwCk0 Carb^-sh?)Gkq7h%FωGx{.Iޢ~ވZ1+麁Ċ):>vn»b@T* E`} ;n3JL&KuO#H4NvV]1_c4EK^^R`eAwt?@!YƜdSf )+Xc8[R*k>&̊;D7!V:Nl*Lƺ;lZ<s!g/E>-Mg鞮[U u$E0 p`sN$Q^f1!*b9$ 'kV홪{[eqk}t߷^IO6N ؒL mý LWҮUa=Lìg6y}CdpqWge%D 5f!@5o:*]s>|fa}(08kZ}ˠX^V$֡~˦y؜$%KF>1eq:M7^>9 ݇}%x:FX& G;!we1~n.iH >&:+NM'5-%>Ja>^lRo9^ꀬx-8_eY#*DG_"|)o h((5:)'+^^q]ƛ; s=5W|xyUBCVik3;bhw|WCdZZ3sŋic-ےi!V mlwS|cVP2vh.ŋ62e9xP#$K-t@r(nBEɻw܀B DGSiJG OӀF1 +3 t8T+(|OOeʰ~nT?a]q HYO Pvxk+S =O5(*[W -a3>0jlރG3א{4=tiSUmv@g;H$K@Փtl1C$Ѝsy(~T.jz#K UN5v*8˴ g]is'K7NF6S/jSVdI{_KYsik4n JNYKM[[JcEێ9h`\ VbśiMkNj^ڭU0,Zz_c*pc5V]rgXVsHjDZ"HOt\.@6O*';kNJ6 28KZZWEI4il0;NI`f.&WwqԘ8Oq#=8Rwxi \\ ; ʩC38כUxPg!("H [Eaok 0rŋc Cj0n%\2O! q$F(%2NIue%P{[{zJϩO83|e\ 2WpgjJ9^0]x Y@tZ2?9[Ř}B5q|^),Ը4 GZ/a%+߹'vkoN3p;џǥxPeh(Ae E[So;f<ը0.M%˔N5F ~M6=?t SQ̢\4diAI܂)@yMS`aA"I45 ֈ& /EO=.4(pz%eE$& $$Q#"4KZ7B̌,c8п}BbAdƧj b9k П$^qQ$RC"Z2K:|< Cm#xjC+Rm2Yx|j3 eJk+^Mg1k8 BlFaJ4w R$sPD3pU*.$?G_v7iX7l}%:f.9=~VqK@c:Zno¨)+,h/9-hjȻ1ExO5uZ9TuF8cM^9 iGu/g`!r?E"ZH8P xE?rrs9HY.2慣"9W|``d2o'?ugP%T|qAQ(K56prFw$qEs r8N^oǬnl_ Cj{OaLq'5),H4lKi#S߉qXx80rmZmN3'NՐ#SP`t*+#)Q% ł%]#.:c{Pl_ؽAvuR8|S&=*LB^Z1%ُ G;{8AO%3)`n@@sC->^!^1:#;re_~=DgS1~p̌\B;_C<}5T %U51]Z)ƪ樱}XϗCl:Znڲ|xrS4CdĬĽr1j{HK ^ª.)?ꚳtN=Bl\ c-T#.l({A0ݔK:2CYxWL*4lmSTH;vC-/,>m 2!cP"SqE:"Lӯj}*j#&BU87ϯ!V xt$AC>GHJX4Jn\OU dМ@WL߀7//C抗% ^"wO!t9iPF8{ޫe\5%/cCbgDHHׁ¬P $ri+TJMo8v|n'G^Ao>SȂ&B~Z9EMŬW'/Z i 8b%#5Tsd1\E"KTa/';!{lgDBŜn>0iá(nmfʦ#=qA)9ϳP;pKFϵfF.KyoB v] +Z_2c2!e<xQּP$XV"erz)h n 4˷Qߡ#)b,5B-&#\$GD]H6/Rdwʤ W =C~^'?|: EUxqppp5tQe/B:?/F -RZ{W{r"Lxp"9V$>?b(n7Z<3NvpvG1i$:"dCk 3},'_OǷљ$§_"; 2 ;ab26SQ\AzAR0K#sڤ׊P߂BĒ|kN1$eρW_ݔz:jnpd;V|w)> z[rK=a+q=o*.vs@$D$backObb0q8()^|oOjkN\pCcdEп&`_ūӎRl=wK`'IQY74[QLa6֣`'7[Nr$hz:G$:u7Iz0 hl5n*i>#=޻ ZwG3] fvJ!i6ݭ<[|,F>#t6KEihܩS=$Z0kӘxzd2iR>0{v2]֠EP֨qm+͹ -ҁ ъzG蹝ǏTF=hY>5Fb!f<7(>(G4 1P>MVgJ2xzn&W F} ݋g>~%/U6ҁXHbyѵSY\Fiokp,sTA!,3 jY8y^O)kV$HMGWy([ش,BT1|lb?xSH ryk1ċ/jLzIϞ<9 Jo#^%fA|ߒA{"ߊ6јidF 7!i2lHlm7)15/PHCc,"DHN ƈPxu#bܦ8Z me[hFN/H߲W1}>őhO^xѦ(>z03'֔g7k/T30l+۫I}.c갱8i}} gWףfQJv4Y)[rp]8v(%N5g_65R]Y?(3u=&B#B*c?fyc %d orjJTu7ċGj|˩==Koǩh?{jI2&\${Z":P)\#t<# Gr5{D"G>0dt AFc5D@5z<1zFQ8pfPؼF œ~OJNWП4z~ bE \~޻aF;M;$Lfl2?=]7hJ[!F^Zߕ2$5T( ) 1X`FԲnZ[{ "^ N )Gn@U[ p çSZ7_9'HCD9zmu2ċV$[<Kr#,)^X?@~b1{* SpxmG3*:>ا SQTCzjN U27R7%N5#7檰\ J)|xMPQ:9-ЪO wTr醀=l.Ag}SD4K^N?JsҠa^b8 %hz nJV 论Q-Rw_\6Q AYckFdq6f>#Y5dr8ƨN? xxt%Y|z!ufHjAYH;vYݫF(?6aF`y{za@8@}cE^>ۍrQGC}/k=m\5(ʖOe}-0Ul+oB $1{!u^BezƂ4ɪX ߊ8?"JxfS( 6އl;(WP@nqbPaZvRO"3mGheJ"5,x U+^ hx-2ogkoDDx- =6)^1_0#U) hx>˟hӼp^UuTpKOP?0YS7Yۊ+{`BVr\@N8888~F+zLZ."qUV&nm0m#B2',x脎GXLA 5 )B胿)_eOn[ `KDa%]e&b0WZd)i)6ip1uَ?m49+9^9K?,w0O$^=>+,M;v`Ӻ459fE^2>}vtx{/bHdTvwUS-E `'m8h5rf'SVBw2єev}G #7Ka71do¬Q/Eڅ鎣qʘuF\2g)Vі)[hFH&)1d*V "?qOj,[{RƦB&蕔hՃ%1o%سkMǴKĉUŋ-/%ƹɘN T 4%ݎY}8Frz`[V!:b_GhSŚJ'mDSDL<!M Juq.-QS>|_֫nDJ$)T.O5:]pM}wbSFaaa[_0Mؽrh$/tpx %7[=#u-.GXh8yzyXSW(Tыm7q%ݨvVnǡ H oȡ"TCxm"*JBVΏ&*7CxqppppCj4'k~ fϭѸU/ 8>Cz+>XD0m7H$7}Bߟ5y²pu"oz9Yy(N88888Ljx|$kҩۊd W#\\-maHʗ~|nnŽ]!!:IXZZ ҉5bZR d'=;8כZ4q 9s\o -&z4bx3Px?l*oMe97"2?u?k5rpppp'^<Ԉ)-z~d+^"+R$%TПL( RԿ'1)_:pLHUJ9GZ>/x*߻%\fBlx[{dybY.?Ko.EXB7s'1lU 5n jޕY,Lw='i\#VS:we??@ŋ}_̜>,Y^]2jTeJ#&שe5m߰ OkjhT7#k WBԃWzȜ<7_09 ͣwYJޗ< B|=LC|RL'D >{knZ,+ʿHɱӛN/J=Pɬ|rO쳴DMDo9/jD"zԛ4/Z};jx?Dd'r L@mHEcg3 v|0{cv9v#48t?::oןҲؖޮhi}6Nz@=r4NvR"Nn5.嬦kNРdiF7BȇHPkt2 dMzz{(ɝ݊^JJײz8yM◥xR> NBǶ63Rn˼Pr,NMv64GM mU Ԯ$j/PЍƆFt*BvIӲJᄮjl1~ (\ytƆ F®O$tBg YK|KyC(^Z9KAf-M+}--!o+d7*`iEa"9x'ivT HJ Bv~ TEɄI15yvO.Ĥ E^VϨb8LBTR]*G-f|i8o7=@oK=cfx,qƅ2,rC \6qRU=ekyO BpN-w6a Fv͛G+qOdGZP61eClRtϽl2%e[Qs/*+DרA/j4Wr7G:h/WSscL3GJސejڅ>^z}/{7JyC%Wݤ_'}yWXY6bz+擊@ڎ܃8xr6%{Q-|z4fE2#r7 H~nCǫud KհHhz|¦ӈ'O-KB@#Bw0ulz!W-\Z5 ; ^m⤡*l?)$*yYS*7$[A@rhe4vm=S4ZYna8*SvSIM:{e5cT#L~PM 1=ЉpqUr Je ~vn3}G1v< ^ʚ5Ǥ^.^>%=/An :vh |` Gpr:GO30e"n/${μ8888~P~vC]7cA'{oy&/I-+g֮7F`'jAzp|. `8\mjI41>*Bk>E6Jq5k@26HJE" ^"@^$ЖGLK_@YU9o 1yc35 {D݂%#^:lIkgKFs3D g̘mJp7;TRaܢ_m_~oNFߏx V`,NkFdVw6uYxIûD.oǃ#?=z%|樐H9('LWΜ@m؇ z(Gkw1 ]}_C Faڊ<:(@ωRFs``<*/wKNEeJ=>V}n^j#5%+T* Ο#.>^%|C,H.cJue/a 54Rܿ⓸AIm I T$qRĹ&fw[6j;[[ģz|" zXٍGߩ+8a,{I&ll|)u 2Soggt,d,Y;cl]Kk.BГd?mPU% $V/| iAR c=k$yJ)hNikozu̪@E<1g([, 8:Yt6>9 +'PpfNbDͷ'#p1^~d '+2 z&NG;sf3]'wj 섣>|.#d"~ $,2J ,*46^`Ieq æ#ѫ4S{,gֹLqrԩ{n_:MKqd>J.%QȾUV}X}ENwPѻUaU\W5e.C* DR^aˠ ŲͧФ5|Zpq zA"JU/?#C^z7 ev(3 65 1}Krԋ VTQ왠>_ L5aL8E<<\:4gޢ<+ه|DLmK[P@J?q;DwX"^<P-MтcI9xY^JϞJZjZe/l _*/wD6™VedRlr5I۶`C4ǟ;o½3[e[HF&A3"AN>[yl+߁'),&I2eaJ׼)4c-f@#mgY I Kל@|a}%<CT}Q!;-v",ݰN^?1|!hCj&_* _g!JW$nGwsoCm q3%+ mý Wbת0D-GYkϰ0/!i.~H;m9888C!.Džkэ  ;b\*8Shza$%R{͞ѾZR/~ˢm!4lnmt)Uf*nkMbk$GR*-o6o%<3Ȏ50vd^Ϩx](V芥 %kޮ4?iהk%B'NînI '4vV]kz8g;R oh]?6'-%$>=3 GOK8}p9>zZ4ٕppppp(^<ԈwjT8jT^VCz5Kx El%%PK!3* SpxmG3*:>ărť v7Rltv݇P@T|pÑP!Z佁j/ ^5]s>|fa}(08k13H5'  Ī#zr &#ffZO#8 9LFPdVq1=$R3w؞_{6w3Gs2W^ճ9蘔ӆHKwĄb-}=V.FF<Ha73\QPwF#vTԽj(tc{.>9*x]U?j./i"* >M9|nz-Ɖpa&6g 4 3!;as7LB7=@jLxxs66P#ǟF SrīZOYNrA#P$L'q{c\Қwő|M(^t@ԙWbKЋ#l1leū&|ܥPc'"𨻓Ua8Urŕ&e̦MZK)T Vg;:`+{xq*򙽞}:F 9{+6$L/̢u<ְ>Ya44YW.4p%wt#D˿J zQޑJ3Y$j,[k:kѾt 8;ayfNMaXaq8 hﳯ>bz<c'`˶d,d9^[vI$fGFER{ 7ߥxj4qppp(^.T%;(Гs;-3/qu:yXN&nCJZԭe8?ڕ= ˱D!](+~!px jWQ1-O5Ɓ$,+jTKyg+Zzo["4ȡ^hV"¤ ̩56gO&j\PTc{]7$jzX{nMC*\ChTНO8VC<=}~T.jz#K2jTr8k=+ݵqҖCD qK7N|*j"^<@}/M/M}ϭѸU/0sD\28 KrW9_+}v|,̹^bѪ*w:98888rJܹWϬ{U["VcŹG|q|^OxPHQ$Lyx/B`x"ɧ!YޒFQ. Gg2x۽$5E+dU48_`oO|3%YJk 9`N88888Co5P5Ƴ3pl9^0EwHTCTRyY.Y͗g)dZ s1YTT+>'\hI_V,HfaiV>%JP_o;sppppi+^}W:g":JIɜ^oon=1Zl8sB^͓1_.{]&j$.8u=͍GxDrns3s I ldo@i"xkR9888̉5Z(^z%i;Ga :t#̤/q!';[`2nCb,r3;Q3+gc)m=(WZjS ԭJ jttvT0{vS>۔?2MЃFI֙$ںXmIP/%}T)l*%zCLDt67Pc[O_^FohB^Ht̩]K ܙa zEMPȨ6^`㲥&9 7.)SDNTgjvT/v Mԣ֡G{Uϝ|wߝst˪RQ1a f9%*A* @3bρ|{O )]5Suu^{7}5Skg҄V#= "4؂n} B}0֎.XЪИѪm͍l P =o0lh|wZtkٟgvw}ZKA`kgS)#0a$k~Tuws)dY(qiGy}1la7`D>t[]SW` f#(1V¦OAx\rm!'%=Ͼ7z4ݚ=g3dXq2Ue瓼A}nsq===4ȹÒ#9~3N~0To'҇F ǰa2SYw Nchy|8 KQ<" :ƁBQz>a/V)ap|-AgK?/7dMK5KK.sc,XH>8u Bojq\p #pNÓQ|4]RT?rpGm0s*Xޫ{ qZzawҢvD,Bb/i4"vhEe3-ӇҌb0IM6rvB>- qc PU (%-=/-^b]Ry>*&;')  >U " 8;|!˶RL{0)$)ζ d^^(|ANImYEJ_qpH(yzxْ 9ۅ:vPsO^%(id|4fi. DpROd v,MV ]OV2O[G`VR1'}mDUp[J!k~8S@M68OeͨHx&l_PK2z1 Ib `J.hN/;nC@T#p.W+;K /ҬA_}1Fv#y=~6x3z|`Ck<ʑ(<PǁW1QOPw5gm+B~#' j: ̋/b-Xǽ;FLy=+$@ p E&r|Q)Keu\BCy!C1z(rp 'asvaƔPR܃sB:[[e#>#k1{-D/vg#^V-\cs_f =Uc~GFr/~OgCy镈qdDC%`ufTCs&W;{8'ɗX 16p{NyN/7dMɡ~<^z#D`eoBL+ڧ7j9׉P|?o[/׉=+⋼^,4v4 03xDb}0vUOi7f$6#i3&y:qW8R^-==w'{ YyC'!2 GJ=4a&<%:b(9[W3WchGWH/4jAЦF\Κ"v\ /z<P> ½09Өm%O\?9n4'?9㯛R>wmR¾selv<ʺ }5FzJY~2ߊ'g6us6t(lsQV_úٓ0rޗF(*#mh ]-Z2+#jz:-j2^t=D-K%cgNj؄6ymJ``lFi(hldڕN5[ܦfJ(7$~[m`9ZB~,ḽ$`h0BRwÓbe%lxɡ/2%0^oocEN1u#D/U ~у`v%OѠײ\d{ K$&^T-*`żعv_]/AIY; ql&OPc?Ɓ_=_Ad[k<ᝀ f1,Jk6dldM6~/9ث3~j<@{=k~ "e%/dM6پ7Cx]kѮPBVI-jsX27[ڨ%ӣ:*0]@Z͓yAdI Pw+IF25ho؛Z[صO&*ۊ赸] n4Z-If^Ӎ&f(Ft9m®aNww|EO=t:K0w@IuBY/18c!,Mg{:GΪޒCy_K6dM6ɹ!{&fй5ay`_?O7RfL_F{914}F)") V66 #ǿ#99fPZyIDpo=72߳z~aHÄmgZ#SM4Pdڋ2f.1eK u$Zdg7ȝX)g8%\%3C 4@_Z&3g01_9\wM6dyPc?/o_'R0N7^';O:\\:_QԴ8p[004+E$Z^ZJ]@Ziڒt 7@ON!YB~n-|E)qf CS]U삓NP0'wn_i_|[ H*kEF*4vztz=Ư"׈凑Ҫ N@IJ"Aej$, Ē;vZ`jdʥNi5)m8s$B]TJgO#'c3"6$W4|sТp㍂p8mʄ5Xue'h Gn@Ni&DȻSo^OEeڲ,q.R$7x&l6H%7Nj`ɾ@|ɸYdМq-TS}6y(ۙV%<fTWMAX& 9'i[]_LC~^q>BrsrGҾ({Di+t~<=5c<Lpܨ-;JvsnR#-@\R'rix<*ljHxn x ^N"n'Gͅ9Wp9ٟ]#ng ֯%8~ݪ-W M:Pt6̠hmZ9r]i M6.†t*{51# 343]7h;ƌL+c ر._73IiO"kW L1'}8vSmK _&lmj|ۮF阫J_K] Ub+q`;zd%"A~˼CPɎK1n*Nr![?~27@ۻ1˯Wept20O!# 8E,i2@nʒHA3K`;j! GZ_`oę` >3=֙Y<{vx @\Sxt R*,s@GD.yOcꙦ!gx֧8+ GLs+d ҹe[C0i2ȿ@Ew qfbCp7D"cpI~6k,V >-2f+^,D|,L^s@'𲱧Ъқ=NdM6<^r}y RBwٿő']<`0|Qd'jǚL!w Ӳ:܉QX6DDX6oww1c𼓅4XkqEGb)`I<Ԝ^Ū̀4@$NғN@ݵJ]P"p7+퇯v=K7J;^jeP7[':>:Mn20&wܲ rN ҫUHXKV^JlמּiTljH ׏t(0s?JWsp=q`KfxY0<<3k>%m#]5.R!n(UthnF;A}g sӾs<ʉ9ܰmt$N-{dM6dC̀8ks;,;-F&m`4 fjkNOS/fDR;Fs~OG#0 ~mm)C[oiy;"nZYν"ޜmNlzu6cHvEEv. Dܩ>/taL&0ॗ<^޽<^-1xDdUzs>cLLb<,6y vP$b5W B`bA3Y\oSgeN[L auu/ `Me?{]K$,+tfzx&l֟ɡ=^)!= Stn=R3=Gy(z+-yGEVz8JLGE?=n+!?D>~WJW0$U!^'WR!Lԟ'?BtN5ZfhJ9-c ~JINFJ`9Q)#[L)~L@v.Ҧԥ>{^emmS6nK])[0iw\7 ZrFڏU鈍 GV9^ aa3UASavFJII@tXVn/a\:le;Gg1~ b!vD+bSkr#GMow uǷ }7.XD+K}iMv/pel&lxɡ~(BL~2mLYĩP٦vQ/: QQtѩM ?_c4@zIR;_f-7(,zrJB&g@#yvi/b EK7 $0{.ѓ'$,AoQުsJ"B}wp"4?| /:wWضn|u(8Ȑ` ^g3p3=YjvV"lu<{jy|dCծFuzf7)ny0nމ%tԚF?tjnҺ{b)8(QpAP߅٨j%OySE97̻*Q̊pcC1zȀr; %@꩛<|FI^&l xɡF'cY'!{ڬĒd bh¤0l4{Bqf\6ROfA` -IK+-eoA=x,rMp2M6dmC6CIaP"r2Q'd$,%eI7XdE6v$xEFd{-: z^1əM}$vx\јr OkFxK>?s=_7;:F{z9$zv8˺~wO,5KgCx&l6Hj12_)mI}`۸8ނVl&l?$C_{G{x1ɣ޹G5x2kc⼋y}8D"Cz+ bU&K0wCݤh֣4y AwP/*Y6UK6dML5 ,! ܦw){x1"8]͞-Sޕ 1*_j|/{x)r-q-s=_?}G6V^{׾s}>Zͱ8xzy%7\~YzϽ_BVG*Σ]tmxG{dM6xɡ<0!'e=aC)w'co (̴)'j A WR$uаpZ! ye=h2M|Qo]nGq1108"7`_v %R4" 0d[9L֠GROuR.:jAځX#yQW;P=<|V[Fpm}Sz*w2S>W",4'>n2SR\5y~?ػc!wW2ܒM6d{7C<^=NDubڑgw Nj?v>@4' );wa[|rvOP4>$ݿ}]鋡A$H0EQg:^R3)+h̕e7[MA>Jغ'[.Nv6  *43e $I@!FڒbNoxńu~Uhlj'&jP^hƦgQ{S0vN3K'n7GʞScK''_zѕeFhfti,åhԨI6H`@O͍h' a,\h,q^'̱<v^c`>C u imJlOމBh[=ŽFzTl=He0yI֤]zUg Zui157=_,iIS#[Ъfl=,J5"̡U1#]<5w`~nSg kDcC#:5_SKя/dMj@GLjAH'd><(3L-el s<8s >Ƚr <:Ak]?ٮ#1| َcmh-Kl@69`!~a#Fh׺WX]B+9iȥpǩ{4Qݣ_ohČx\++O0g1֝h[7w/4Pw"V i*6Ҏr:̟H¼sT_lFZkYI!k=&/ɅBݙ‚VBK+<ܰ%[T 04Gc1epaä`y!XB88ؑͰa?6~qNͰͯ%^#h\&=h`)U85V6Z9f 1rU-2#|]Ax^UÙ \چ䌓ϻ.\Yc}!|:U,Ċ@3[3}Z F fQVv({dM6 LF^3EQ?m0KPyD;DVQK_Zn@8zc uz Ft\V LsXn˪2o}5v4F؍ 1GN=__>ӵzsvZ +X N#j,NWV'̣l,ŅGxq1,-#-ք x,I9jZ D{WN"9`P)Ke"jEfBCy!C1z(rp '(kx\MfL %Qɞ(lP-[c <GL9;:qP|G ,78P;8k(\ '*d;NV8xb7: > U}L\H868 5l{-b/HSNd!}M_-*Z3 gKp_X=eՠa#~yfBсxlw6|gI<12qGa7XIx MDQq@t+؏s=\F_Jkp/?&A T4dza ^K3 LC'LpkT Z5OOl&lB 0@ކfhG3A]fz ߇MpsGn p!C\c}eds]| ш'04 7 6M x\~*@Ck 4,rZ!?7zO_Ec)D&(z =lEow|zƁ{,k- /ĊQ`Tzf(i<B& Y’@$Ɠ8X8UbFMm UhQ2$Rj1۫.M^P"d tްЕQzըB܉Xy/y\{1iձ}W9P} F~&GO x$^^{BGm5@$5 as^k"pOKʫc$DbG rBR]!" {^KU=/}ܯxFaIV<-`qab9^̄3`WʼnxZITExߖc xJܿ6#D%e,oG؍I#1;nqF$'\/fzz6Nn 9jӞ(w x(/)yPDfBC]",.^fƔюdg;6Xv_hԂPwM5E7.TdDnd[nag?I#{0lpr' zFNv U%'~GpQ&NɥV1h[ӰϿLLGk3YFL?|5S"z>_NxG rW!ze%~;8z[rAEDLjfKJϙoC'P`!-dMu 5xTj$7wg7u//z?v-wտE]@G JzouR<=&j k=ޒAo>!t=q6wZr/%^F }%z[{ @}LV})48idH M6d=^-;v<o ^ M?wA^_6=A`HչCMBdх{ {7H^ khC,kCLI =C5+l&lkeu{>3 f|)fΚS;^6/3p1!$X<= jZo-ƌAJke5h^Vb`* M6dxݺ}{j^ףJ~򽞽ƫ7 /xC$S(ۥ]`䫽I)&%wmt.jnjbhni6LFTx³FI<ݠF$Pvz4%sui5$O l:6bGb^6fOhd—=6 H`H+r-= RYA{4Z_`eH\ià7m<0_d0։P\[im|̦fN#1!_dBԋs5kBdMŒk^7ѳ~O+QUxIIKF~p4@VD~Mt|N1bF:O|(t[4z0;~`CiuŞYvY"xtq/Eo:dn,I'n %㺽=_7N$RHT ԰i^)@g zf :@ K3`go{{G| Rҽޓyf1S;l]oR` *oO{wl&ۏn)Nj׸1<|(x>3=|Q4!&`A^R8L 0)7ru![RP1s(-C( Nv#Ѻ@?ZQe1R6.En%("Pth VǥTvBSݜd#|]ݫZ1zx;.Mz h \RUVs͍ISS|6F`e06e ׏RTp V cHOT>,7xmnKd=JUk5d]_5qLZGĹt=InH}&'=He W!0`1!J/2$$,K}?7 rq+9DhШN%Be9z sޕX7":$u^~'u~Yq ϜكwX9)u)S+֥AtpV/Zp]K6d5ٳgq jYsk 0\+7km}gp[]KڭȽq քVMX چg£(w#>oFLlsQM1~N4ҷcŪ][x ۖbwgn07GcW{|D}^6dx=~[nC\|<qݻw9z?Cz.CMv`xJ2B^DzY}Q.=Ev]?.Ф`nHq)'^Ixb"<-o,n9)h?fZKI˃#DYSfAW7폞Z:J$5Юp2:sx~)f(֣ŖE3|; O~ٓx+[?|< 5FٰSc$YZ6d^L(&f+ved -m'v8v <4ɰ{N'!+` Ǝ]s[hcIhf;?S ,ٙ3=̝85jL$/L.ωo`9~~vw's<;YR'n (:KK ֢Hv!x1tDZYZA켎"LYēӟX1.cg|W<ae%lC%ԘjmOF![pX2Ȳ+!x0Zxxq/LXE:+C͉px╒4{E&ԝM~klu]ӹF`&ې۪S⹇4 aR>$e E/ ru'jg%L nrK$DoK/0-+7< ,3)N Kӭ#5nFb#Z1n|0§bu4J@Xq2,a 3WJ^d̜-7}Y?C븇`f6-m cwz`x6_׬b % jUK8Tڽr1EO=bะSܜtӼp^zv#"iQx c~E\21\X*jH;/6h`M6dx$IYi6*t8wAFm`/NsY 9r&\Df #{y^lTT`3Dtį[Dcb>60<]MYPjtz!!56 Al($9aT^;JgKu,ݾw;&ޣĴK`Zב{Tjc{nZ^/h]6i5$%Ť]XV-~&g8쓾WɣQ|)>C>C>oEF3gΠTVJZz&g/j~ZAl^֎?;DD.&D&H۸B##^7oNaXʥcMϮ",<.`sͣ|WЩftQMk!e &m jh nH u^G)C 3ncT{rqXE#F&Wݤ-[![lSER)\:;|.} y[/ַum?Nfqضq &8Oc>WG UrÓ|x VفNeP_cN^q|}/ˇ|ȇ|GޙFq}euwcM49j+qD;FSN!55 23}ҭYOIME^^^b厎==oaw~bw:8|1vg>8cG>߻pn&Rq049}RW쟷?`y?+ݍɴ ɬC,bugqx69vy琛wNdgsy>fuHKJBÔ؝A{[kWfz'rrX܍t^/{T~}|ȇ|`/c ]ߩuuuhjj!,ٚ0pzZFwng{܄+AWjrp//7/us4A]O4!\\)Q0ƑJKtZ Rkń'ʗ9@oL~8>RFr9đ"M,\r('$\rIvrGY1l00Kͬx`2ƢR.ԫOW^Ѻ3yvyf;Fc#VWWgl^js*?l5[:؋R<]DʪE>;TT &+, 9E+,z_Ve$kOrmT?sXɮ""ړeWVVjovɅ@|?؅O;/XzM-m#nC܅dn渡sM5pw:;Aôd֑CJMLjky^5!gUUew%2JkbCxEBPo~;+-=b 0-TQYcL/M^RWY%yfoNS'*jl~|֧6WXX`}Cؠ?3D[-9~< ߴoz}x:yī*PZZ'^:"WX+, R ^8`-^\)ߦI*!^Au @L}R/dZh#kljuEj$TyAx9#w; 50)x]R;4fuAYR_PCĵˈ z' o xEBH={_?O~MƑj~ūnfnwޱ~x}UZ.>F]|M2=^}C0742+#@Z2ysPcs;gݾ\rW* Kؾ2# Ɯz#G"^a=^WHng[w/{>Pk/f+=^~FSkphdo B VG"^aW r&HT^_{q"Y$.ZW/q㧖Ցt wt8{7-:|?A^d@0[L޽7Шq5O[9g}b KؾRG9/x: }[WbBpWZ+L^!ڊi~E}jjjt TϿԛvG.CSV| 7'@UVPLW 5Tye{&v߯T]SkDbNj T@Uj~, WX[_NvgZ{{{=^\^Vn%ǝ_);q;]g;qΞ'3vI?32yOr9g*9{NR^p%zEy^+-hmD܋TGkxe<77XJ&mrb¥'Y|~ʩ*x"?32yo2n-ͥ|,'=^Q SW%VE/2yf؎*]Lȇ4E]]/uTmx]p?Yd՛\ vܹ/=5 ST^ԓ٧ }E>$wdϟ\_yx4ȱcǬJJJuڒq[!"yRx;KW 1YWW%Ivڒq[A^4::}+󥃪MiG&%l0Mvzzڑq[%ӵm=^? `/2ċLFBȈE&#^xɈ ^xE&#^x!^d  iċLa.m+ň S5l-"i `Ǥkvlph؞,/£LC.]33lyy.UXsK[q9x+]3$*oh0Cd2ltI$] WmiiɆj$/ؙJRhXZaM- 5ɈlbFVVVRYj$/؉ŰKP#x6!o]^hUJ3O5Pǟ&db~fP6#(d|%Ӌ],Md T÷{/2r& ]ܚC#r͗_rO̜vjG'A29. /zgzĢEY-vo/wӴpLL`~ z1 /E:)8˭\o_h#IENDB`

QtWebKit is based on the Open Source WebKit Project developed at http://webkit.org/." ).arg(QCoreApplication::applicationVersion())); } void BrowserMainWindow::slotFileNew() { BrowserApplication::instance()->newMainWindow(); BrowserMainWindow *mw = BrowserApplication::instance()->mainWindow(); mw->slotHome(); } void BrowserMainWindow::slotFileOpen() { QString file = QFileDialog::getOpenFileName(this, tr("Open Web Resource"), QString(), tr("Web Resources (*.html *.htm *.svg *.png *.gif *.svgz);;All files (*.*)")); if (file.isEmpty()) return; loadPage(file); } void BrowserMainWindow::slotFilePrintPreview() { #ifndef QT_NO_PRINTPREVIEWDIALOG if (!currentTab()) return; QPrintPreviewDialog *dialog = new QPrintPreviewDialog(this); connect(dialog, SIGNAL(paintRequested(QPrinter*)), currentTab(), SLOT(print(QPrinter*))); dialog->exec(); #endif } void BrowserMainWindow::slotFilePrint() { if (!currentTab()) return; printRequested(currentTab()->page()->mainFrame()); } void BrowserMainWindow::printRequested(QWebFrame *frame) { #ifndef QT_NO_PRINTDIALOG QPrinter printer; QPrintDialog *dialog = new QPrintDialog(&printer, this); dialog->setWindowTitle(tr("Print Document")); if (dialog->exec() != QDialog::Accepted) return; frame->print(&printer); #endif } void BrowserMainWindow::slotPrivateBrowsing() { QWebSettings *settings = QWebSettings::globalSettings(); bool pb = settings->testAttribute(QWebSettings::PrivateBrowsingEnabled); if (!pb) { QString title = tr("Are you sure you want to turn on private browsing?"); QString text = tr("%1

When private browsing in turned on," " webpages are not added to the history," " items are automatically removed from the Downloads window," \ " new cookies are not stored, current cookies can't be accessed," \ " site icons wont be stored, session wont be saved, " \ " and searches are not added to the pop-up menu in the Google search box." \ " Until you close the window, you can still click the Back and Forward buttons" \ " to return to the webpages you have opened.").arg(title); QMessageBox::StandardButton button = QMessageBox::question(this, QString(), text, QMessageBox::Ok | QMessageBox::Cancel, QMessageBox::Ok); if (button == QMessageBox::Ok) { settings->setAttribute(QWebSettings::PrivateBrowsingEnabled, true); } } else { settings->setAttribute(QWebSettings::PrivateBrowsingEnabled, false); QList windows = BrowserApplication::instance()->mainWindows(); for (int i = 0; i < windows.count(); ++i) { BrowserMainWindow *window = windows.at(i); window->m_lastSearch = QString::null; window->tabWidget()->clear(); } } } void BrowserMainWindow::closeEvent(QCloseEvent *event) { if (m_tabWidget->count() > 1) { int ret = QMessageBox::warning(this, QString(), tr("Are you sure you want to close the window?" " There are %1 tabs open").arg(m_tabWidget->count()), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (ret == QMessageBox::No) { event->ignore(); return; } } event->accept(); deleteLater(); } void BrowserMainWindow::slotEditFind() { if (!currentTab()) return; bool ok; QString search = QInputDialog::getText(this, tr("Find"), tr("Text:"), QLineEdit::Normal, m_lastSearch, &ok); if (ok && !search.isEmpty()) { m_lastSearch = search; if (!currentTab()->findText(m_lastSearch)) slotUpdateStatusbar(tr("\"%1\" not found.").arg(m_lastSearch)); } } void BrowserMainWindow::slotEditFindNext() { if (!currentTab() && !m_lastSearch.isEmpty()) return; currentTab()->findText(m_lastSearch); } void BrowserMainWindow::slotEditFindPrevious() { if (!currentTab() && !m_lastSearch.isEmpty()) return; currentTab()->findText(m_lastSearch, QWebPage::FindBackward); } void BrowserMainWindow::slotViewZoomIn() { if (!currentTab()) return; currentTab()->setZoomFactor(currentTab()->zoomFactor() + 0.1); } void BrowserMainWindow::slotViewZoomOut() { if (!currentTab()) return; currentTab()->setZoomFactor(currentTab()->zoomFactor() - 0.1); } void BrowserMainWindow::slotViewResetZoom() { if (!currentTab()) return; currentTab()->setZoomFactor(1.0); } void BrowserMainWindow::slotViewZoomTextOnly(bool enable) { if (!currentTab()) return; currentTab()->page()->settings()->setAttribute(QWebSettings::ZoomTextOnly, enable); } void BrowserMainWindow::slotViewFullScreen(bool makeFullScreen) { if (makeFullScreen) { showFullScreen(); } else { if (isMinimized()) showMinimized(); else if (isMaximized()) showMaximized(); else showNormal(); } } void BrowserMainWindow::slotViewPageSource() { if (!currentTab()) return; QString markup = currentTab()->page()->mainFrame()->toHtml(); QPlainTextEdit *view = new QPlainTextEdit(markup); view->setWindowTitle(tr("Page Source of %1").arg(currentTab()->title())); view->setMinimumWidth(640); view->setAttribute(Qt::WA_DeleteOnClose); view->show(); } void BrowserMainWindow::slotHome() { QSettings settings; settings.beginGroup(QLatin1String("MainWindow")); QString home = settings.value(QLatin1String("home"), QLatin1String("http://qt-project.org/")).toString(); loadPage(home); } void BrowserMainWindow::slotWebSearch() { m_toolbarSearch->lineEdit()->selectAll(); m_toolbarSearch->lineEdit()->setFocus(); } void BrowserMainWindow::slotToggleInspector(bool enable) { QWebSettings::globalSettings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, enable); if (enable) { int result = QMessageBox::question(this, tr("Web Inspector"), tr("The web inspector will only work correctly for pages that were loaded after enabling.\n" "Do you want to reload all pages?"), QMessageBox::Yes | QMessageBox::No); if (result == QMessageBox::Yes) { m_tabWidget->reloadAllTabs(); } } } void BrowserMainWindow::slotSwapFocus() { if (currentTab()->hasFocus()) m_tabWidget->currentLineEdit()->setFocus(); else currentTab()->setFocus(); } void BrowserMainWindow::loadPage(const QString &page) { QUrl url = QUrl::fromUserInput(page); loadUrl(url); } TabWidget *BrowserMainWindow::tabWidget() const { return m_tabWidget; } WebView *BrowserMainWindow::currentTab() const { return m_tabWidget->currentWebView(); } void BrowserMainWindow::slotLoadProgress(int progress) { if (progress < 100 && progress > 0) { m_chaseWidget->setAnimated(true); disconnect(m_stopReload, SIGNAL(triggered()), m_reload, SLOT(trigger())); if (m_stopIcon.isNull()) m_stopIcon = style()->standardIcon(QStyle::SP_BrowserStop); m_stopReload->setIcon(m_stopIcon); connect(m_stopReload, SIGNAL(triggered()), m_stop, SLOT(trigger())); m_stopReload->setToolTip(tr("Stop loading the current page")); } else { m_chaseWidget->setAnimated(false); disconnect(m_stopReload, SIGNAL(triggered()), m_stop, SLOT(trigger())); m_stopReload->setIcon(m_reloadIcon); connect(m_stopReload, SIGNAL(triggered()), m_reload, SLOT(trigger())); m_stopReload->setToolTip(tr("Reload the current page")); } } void BrowserMainWindow::slotAboutToShowBackMenu() { m_historyBackMenu->clear(); if (!currentTab()) return; QWebHistory *history = currentTab()->history(); int historyCount = history->count(); for (int i = history->backItems(historyCount).count() - 1; i >= 0; --i) { QWebHistoryItem item = history->backItems(history->count()).at(i); QAction *action = new QAction(this); action->setData(-1*(historyCount-i-1)); QIcon icon = BrowserApplication::instance()->icon(item.url()); action->setIcon(icon); action->setText(item.title()); m_historyBackMenu->addAction(action); } } void BrowserMainWindow::slotAboutToShowForwardMenu() { m_historyForwardMenu->clear(); if (!currentTab()) return; QWebHistory *history = currentTab()->history(); int historyCount = history->count(); for (int i = 0; i < history->forwardItems(history->count()).count(); ++i) { QWebHistoryItem item = history->forwardItems(historyCount).at(i); QAction *action = new QAction(this); action->setData(historyCount-i); QIcon icon = BrowserApplication::instance()->icon(item.url()); action->setIcon(icon); action->setText(item.title()); m_historyForwardMenu->addAction(action); } } void BrowserMainWindow::slotAboutToShowWindowMenu() { m_windowMenu->clear(); m_windowMenu->addAction(m_tabWidget->nextTabAction()); m_windowMenu->addAction(m_tabWidget->previousTabAction()); m_windowMenu->addSeparator(); m_windowMenu->addAction(tr("Downloads"), this, SLOT(slotDownloadManager()), QKeySequence(tr("Alt+Ctrl+L", "Download Manager"))); m_windowMenu->addSeparator(); QList windows = BrowserApplication::instance()->mainWindows(); for (int i = 0; i < windows.count(); ++i) { BrowserMainWindow *window = windows.at(i); QAction *action = m_windowMenu->addAction(window->windowTitle(), this, SLOT(slotShowWindow())); action->setData(i); action->setCheckable(true); if (window == this) action->setChecked(true); } } void BrowserMainWindow::slotShowWindow() { if (QAction *action = qobject_cast(sender())) { QVariant v = action->data(); if (v.canConvert()) { int offset = qvariant_cast(v); QList windows = BrowserApplication::instance()->mainWindows(); windows.at(offset)->activateWindow(); windows.at(offset)->currentTab()->setFocus(); } } } void BrowserMainWindow::slotOpenActionUrl(QAction *action) { int offset = action->data().toInt(); QWebHistory *history = currentTab()->history(); if (offset < 0) history->goToItem(history->backItems(-1*offset).first()); // back else if (offset > 0) history->goToItem(history->forwardItems(history->count() - offset + 1).back()); // forward } void BrowserMainWindow::geometryChangeRequested(const QRect &geometry) { setGeometry(geometry); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/browserapplication.h0000644000000000000000000000735112273255454032762 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the demonstration applications of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BROWSERAPPLICATION_H #define BROWSERAPPLICATION_H #include #include #include #include QT_BEGIN_NAMESPACE class QLocalServer; QT_END_NAMESPACE class BookmarksManager; class BrowserMainWindow; class CookieJar; class DownloadManager; class HistoryManager; class NetworkAccessManager; class BrowserApplication : public QApplication { Q_OBJECT public: BrowserApplication(int &argc, char **argv); ~BrowserApplication(); static BrowserApplication *instance(); void loadSettings(); bool isTheOnlyBrowser() const; BrowserMainWindow *mainWindow(); QList mainWindows(); QIcon icon(const QUrl &url) const; void saveSession(); bool canRestoreSession() const; static HistoryManager *historyManager(); static CookieJar *cookieJar(); static DownloadManager *downloadManager(); static NetworkAccessManager *networkAccessManager(); static BookmarksManager *bookmarksManager(); #if defined(Q_WS_MAC) bool event(QEvent *event); #endif public slots: BrowserMainWindow *newMainWindow(); void restoreLastSession(); #if defined(Q_WS_MAC) void lastWindowClosed(); void quitBrowser(); #endif private slots: void postLaunch(); void openUrl(const QUrl &url); void newLocalSocketConnection(); private: void clean(); void installTranslator(const QString &name); static HistoryManager *s_historyManager; static DownloadManager *s_downloadManager; static NetworkAccessManager *s_networkAccessManager; static BookmarksManager *s_bookmarksManager; QList > m_mainWindows; QLocalServer *m_localServer; QByteArray m_lastSession; mutable QIcon m_defaultIcon; }; #endif // BROWSERAPPLICATION_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/browser/downloaditem.ui0000644000000000000000000000657512273255454031736 0ustar rootroot DownloadItem 0 0 423 110 Form 0 0 0 Ico 0 0 Filename 0 0 0 Qt::Vertical 17 1 false Try Again Stop Open Qt::Vertical 17 5 SqueezeLabel QWidget

K!lMیEiֱm+B!Hɲgcшjk>ʌIӲ1 BQ+*_HR6]E5體--wSd7!PMs@c AXG`)&e-Ad]E9~Q`:P!AN8?AK8(DzQRɀKIVPuY?'-a83'%uw^e820FR7C2$䶥Jh%x̰vq[rηp,.1MK=?dֹ$ KaRҶ|>"DI S|=46&‡_/z+ҐF C (7q% *kvKaUD6r=MSJXy87P=pHoYǷGmX!%ݱ؋ោm%"yk9va448ļC.© 3~M\!0sZJT& WZ4dsd><ĮmGD?1-D:9Kc'EdP]J5KHG)>i\7MMgw5@DGAn~xa/-z?~N ^wo=HȩZ42u̗9)D*r)QB) n l}5hy#e**4kt.5:At!#G HVAQL0F"u*dt:UհԣzHL1$|idy Jd"TwH7` IDAT%آ@N5TMDɈ$4(-42`@w>2*Ld*PP:T 7M!G3hir=qɊ {<7'>x /ZldiY[ Mמ4lj?y|@G9/7NGx"/oM9w6o}7Ruqxūj_Dpr%R =SZB')kI<ܻ!$GB"@DO5PQyK /4-X-?}Eo3+v\26X֟PӔ( B(hDCZQ7Nx!-`ۆ6*DgNSM'\{**&*E,7큃ᘩ( ehO&sA$xHJx ([02JEc8)F_d1KH]LYRYݥEY2DGBo"'Oeh._i_>!wfD"G!1 bB9^jcK^dAGjyo}c<z,(ǫUt~~# 8fN0 wT'"t9~%]=R-0By8h` %]FctUZo@KG;GwWe@m̀P`[ YGxD@y\U\U"h~)l #2͔5AfBkokT(2oOIf&6 ? ;ÜynJj*KR 7G2$"T#l"GB?p~}pX` ׆o:nz}^SpkmnxY,pŊ,GѧSf9:^mD2nKoLb Q``^|mHTA9CK6efТu(t_X;E U\ !MWݔȨB&Utrifr_=y. t8ߠB] |g>'5ch^ِ4!zҬtՕR2ڡIxoh#LG͔MT+ yz$=oHp4 ~)[V*2J0-. >|}._ Hfei;V%Wj LJ>8gn~ϡZlp3rk6Kp9nPJ1L?'%1X? &S^uQ_њ&ʼn鼽iAPUig@J\zb0I#̱ 'RJ(6un'8 h' EmJ( (i$k혶m֒@e]q2ع\[,ؚFzCFXI#n 7tn E~`/{x%킾k #E>EwQGv$4s1^WM1d`X-S&`1}$~<+kx'|\''R.)vq@%@DҦk|B-jɛv'/>w]4CPXYH[K9t$+bĆ8O@"aAҗDU64pIL'Tj Q!# ہQC5HXX\W.asNMVsI .]?x"%3l}="rD6XAd2W0+c;9OE /[3o|N$=#7҃AHգ_ S>:qI$*7@OH,s"f@\PX/W%YE%*2M ·ON<\St5 .?|.U\I1"YO6͈7h t;6kD| E&\L < ȳ娚P0 dM6S%mnO:L`9fEHR ;@m^Y4[G42쌛IVJ¥rX jO-M难QW9#_^Xk} [ۊItbcb㌥'?/^3nɅ%G^/\0~l2E1/^+=|)&u3[^1o_S;_sbtǟ|_y Yw a-`\О!gV ?/>;|io7~P.w9Ѷ=NStuƠmBX+JL&5Ryv4!xB c9 nYRJL燯0|dYZ =PCUU,,,ks TR׻atO 68yQ]Wt'Ky!/z ]_X:N# !H@vG@XK-I6RZX.'JgKR1q[hkFC;[^A&i"[[[kv]i:,XySd(ueudKU|=5ZG1<' gR#]decc3d2vL^"5 "MW7G?)+Ɠ1 'Vs\~em` ,]x R bćdiChqԵg~bU (Ƥ-ͳ39ZEDewqzS6v*._kLf4QM+Nh-QƌpFGs21F@-|TFg&f\!%H|  pp3=~ D1F L3 Q'@x{2wvBƙP a:ZRv4J]c#eYs- 9v75]-Z ?MpRkEXT[e2\q9/L!Dve;Y󎜢x/LJ9w̒[F=BV1;_SVD- iCBONÁ!( BCCE vLr!4%_}!z\Ebvd9 IYKABNY1yC :"6!DLQ{@(" sBO;;?[cw$Qg[ vAw0 h  :˟ rurv+]_Dky#bF(ؗi_B$ag'3g֒JXh3C~Fz(`ɀvU!]v2K$)D h-YwZGa@ IQ2û41+j1h)a!zJʚz;7'P`-l14GKODƕGupXP5; n:<m+_fkjϿ@F_Ôg+hZ#ԝ{t:%)^m@5F# HSLamDHGt`]KWΜǛY.о6uPr"␬8;]F;\?ߡ:{L7S=S G;l~)b=d]&d{XSDA,=蔑RESnb~v~tzA& YVbUs-2VFhUrܝkԟ>Õ1IӖcb%NxPdM{g/~#uU4I KJ~"UC_Dg/:u8&^xI] P"@gB4`*jteXD?ˑBHl!>&(b&&jF$yy198X-!sV2d# X^ӴyC \yϛi* akT&/G1s-UxdŲt*U=~kw_ mR3#%u&Jʀl#HRyTHj cbg$.&R]DH<#?/%4D*E+n;Hs"%KB9w_?V:rLߗ!bE8($TZJ1Ρw h`@8$Hy3Xyj{"tf8ޢ#V( y@aKw0_`k*O=$/,gN(_2<2<ǓEP1b(4*s>8dh\+K9_!ټ< nz/u*u\9z#{ aϠCD" n" n_ +Z7E89&jܮLM? |$AU` |%ïFU\ f6dvm܅ k-EW4Ҁ:(<"H){A5utE-M!$vEI!+=*m0Ōdnr9 ~iG6hs_1ZOM>xc 56 ~"a Bp4gv'K9a7PM6p/)^ޅ^ؽ^G )Jg+o5L$C?N%W^۲X"x)z[D1t1KMKEɫ/2Qۊh4=DSz-.N>j֡gaa@Cm7)-NY^[c28Gۣ 7-SD}'nUND1f"⍄NsT?WW3<=,."T3/VcttFtN$ %jv^}24.թY|Gs͉SgZqnQڑѲ xǖ*OHT\Plm ^x>'|59Ó1r=36"v0 xH)fP~;ˣ,uX=OFOsjSd7A׊_ӑ>< Q1LޛZp?0$R8L_E Zd rh]Xx!'?"4'Aymǎ/r\:lG088~+Mdo~-zN:muz4yK$ -LJ$%֖K׮93udsӑ``0?2Qw؉/T\HV ښ$X*O|P6?7dZQTFʩ4M7)eiE nacӾqmdZrqB;~N=|QCD } i49=(SH_ˍ mD^:uOmqzb+,e RLc%dDzp`Trڄ>Tu-sq6GW[b@]y} T}웟c0ܦj9v7PLKWטZ:&MFݨ"[Lی'js=IQc7݄ĉI6L̄!W#EPkg \x3< / ZsF@JAGk3!eI31J@UHH(-D !cv*ey36`]MͿJ dCaw) (KHyOهXQff*aG+T ufBl5++QfvɢńmA4WV&ff;Ԉ^YO1 \jq:Ǻ C,A{Ug#B$tN ^zdmÍ[qA=.֞E4вQt,F$k9|d?3tc TX"i2خX,W8q=%Eoj[B[< Ze-K{PK.re{gG\9IIկ]]öbfX Ͻ:w8BTN@m{^ۜsd㽰.8$DR)JrȈA1~_I:T~Hed%b,M toO!r'#XHز dRSLhDl|l|>{H&\s HĂlWzܺo 1@&q*taCG> rA!LThXF*(UQx?Z|ۛKZs%Nj(غ*R3g,!*|nrI|9O>`Owm8L+w(^C a|^*nx'nfB"nЖWN~ΐg9X#y#qetm mզ<~!.lY8ff'0$ud!gC;LJ_1CPO&G4xi\ST "4as ;`# {s'FZZk|)rpic VU50儃 G:.ɄXp?|1wo|:{&!Rih't; {ƴ閸Z0D\Ӓ֊;*@H))GIVw,!LI}Nnge#؅ Dkm\f5kiGqILRV5'/S'ڊN>}Ե cBʔ(j6G;:aqf[9h‘9? 1rcKYzHGcZ FOasj D WF3v9Zn/a~ K/L,/p`h8ژbb1&$NiJގ,:B'}3Y76$@BgL%-@*3f㐦 S\ !<~fǽ KHc Í-~gnF\DfzVÇyW{yV(m~ ~S\x w!)iA E֑ng'+3^d2KH0^*9Jj[#̶bBIB}£v4f~DA(*vb4KѨ O 0H둌w\#7-ݲ< NSъ0g9HHhlN^ne\8B&!wnH2Ps &sK15sצ|$Ԕ:yNI_̷5F=@[ThPgEaPŘ?yq|wx?O_M6H)h%緶l iΤh:՘$6}աC=}ӿ)~ìZڈ׸3au85w(c&cbvv(g֍p.28K "K9! mbcM$2Nv1r՘]΋ 9< n=k̠v@WV~NB 6}]rS( ȸSt6ABUnU]51-@VPb![w.L~o[a[8כ<nB؅)^`kvCUg_՚dDrBdlkfffL& aT (́1 +] -qqYA3m +kʑ Ipm "/_gӟ_~? ?+; B0a$WWYX`\Ĺׯ̷ma>ȿ'?X-pP0dLxfdX/R d}q&ա$4\Ze$tmQK5|ξ9Ԩz4JT.3gkpr j\Ypy^ٗ WGLƆb2!™R 3-"֊d D͐Vꀊ8 9scЗQK̸D gt. 6ڸN00!.PpT*<{-VF9Utwwy5bhDl, sZU +%J@Rs*b4??5 i#1(TDK ȕHhNQ-vl l#XezY?j[ 6"$PYDXHQUy B@;ȖcpJnL˪>yGnDM*=Urd1`>lml1#/I*C#pSAsaΟے;|ޮW]$>Sk)u$!& s"kI[7]kHrB?-hRƕŅ$7yz4" 5ٸʁe()nդIBak*gi_'v6z,!+K[cK*-TyNGC1UB1JH#*s>yn10?2j&8sHԥhT!xbhcMu:}T6c>pio4]8T#fm.Wqe-͓pty9~>~9DO=|D}zt<^Ue.s1 ܤӎ&,---eYryH5uYOۃf[rU1tuF+Fkx+-f ASe9y滾o[@e=Z*ÇsXh{6[/Dy/@!XxB~'bc HJ\qBӅ{P{{" w+w[{aWho"#>gJZR CGdbRID3)re )<8ŁcsC²ƭ5䔡FLM^*UEe="Hb)fӊ$)5\]_B$$C%&ت w (/o[QBf΋yAFZ 3M )]QEC&9\Qang96P4g!+sJ@"R'e>S c4I:MQ,U!i*1y{% դֈn!1 Vg~ ]׼XX ҅93q<$ј`[$qM&4sx$o|?3:$6BZttSOk.fިu.OnSpa4VDU$MRYbLom1ls7 :u*Ov}OhNX(}:ˣK:8Ǖ?2"5tbڅHouꔁrPLI5uZ??ij(LYMX'g a~ic#T3Q\&{ELP1n;o'4r+mS#ӥ=)YZ\AN^7sQLItld#%_?\h(@"PUJApk; jOWgbT 5֜hD,aA4V IDAT89=)%>Be5<0LFlr Ekg=Q_IbHQN" .pK'^s vMw;ݿ?阾yu 4zPB4$7mBeud= 7"O5Gs0(xdeM8KW3||aoZ rps=L`cBC7ߛ,Ԧ@^6|$ԷwwEHRO6Y'% ȼ'ibR2"4*YCW5[+i1"KI+~_dGDjeVע&Qo{;/]e|a#ZjDT NFLQjDYpq%/yɂOi/}"plOPyTC'X7RQtZ@k)|PנΡ,=-A5d`.qW $Ձj4,Ď4E U HHt:O- I VlC7T-p*MyK!讅^4~2D@*@ؒ(xY; Oɼv_Vn_jJZ{hk`j̧~27,y*Uo Ӻ'cH3E|U%n\W_.%}sHP56$ظ/7#Esۚ;: -$"6xo2BZflWy>u4-B)MFu<,c8Gś.04Cs 'D`ޯgcT/]EtW6"22%Gz[ZpPdg{d50U&gR y$(byB`}#RU Ɔg424v[iUąKߨSwƄ"g*;.AVE O&҈Px%TmH:Lx,!^Vlmv2>Jl]$)ѕH`@YDH6v #C2#Sss~>{S^buedXij/;#$MkHR0i\7 @Uڅ]G1D AK擔w}='H8Gc,ga8]M7DuJdDȣ&:FZ{bXz&w>| \ !E (!"״|#)L "DY]g D٩:]઀ D"TecRЊ$ .L#+(6͹ԭ dX⢥KP>K'/2`{M2,- Z^jT!6 -9;4p;UA}Lu  z ؛E[wKs4ٍ{kPɏDdEp$8J<@ͯ_-# {:qr6<'xѷ?<ٓ{Ǜϼ¬ޙ\<g?ękL*4tj %њkNg/8@&zXbF% co:#FwviJ,uW#a~qխIv04fl{TXuD@ tZ _a׌K-Hn 2<4 lg\@LωX{qIx CH|{%?/2R#Z WYfTӥiAxeU+2TN]Ltڡ Q ;sɼ<"5%"E@K'bmtX`T!|ܜ`2'SUm=nM!6tγt8ӯ~;Ӗ<]Y%QUZT1\aqafhjî4* z<5aWF<j =i\p!8w󧮛tsTqH+)M9EBTN\ W!}`q E[57|StZG P#Q:j ]VbP^hTY`}Fk[bp5 YA4Mr$Ƃݵt;K4>8bfP!JeX Hl=XA╗cPS/1:c6&{/ N;?˼GR-1&m61T*BHm$>)+T(j;D!i|NPbv9sy]d.YX][ 3m溤w29 Jy.lyj,x1CK`L;KOb^j 38v|Wƿ~[ӷLZoiqظ,0X'Ɇo,\L[gQ峟+wyLFks=O~k& FDsA M'Y/<@\+3ڡJ26G|ۆYĵ_VqJn*n_6}DĴ6@&};25jD4<햠5T-d@PU0 אn6eK)v$#˙ZEH3}NڲPt(VZࣥk >m\xϿK^/>!f&(fI{l{tk-=}^bj\_'rs|^5gJ/_H .2{I}wٗ2J_Fp1O-RvopK08޻ۏ)w.<'C?݇uKច!oekQ+=_hĉ'*v7WL<2hlaTRSz^NSPthBے t2e0H݊$lw%;kX0t$80QS4J 6-&mtAx!!HZQt EF^~2?|[oX:ٵ]~w׼ѳS,}i" ɓEja1Q|1r DO8 eHfؤ7 o%{.@m6C'.HN]6*ݒ mEKAAx98~si{|dRP˴tڳ0g41Fc$tB؊7P׎6׌ۊPMG49hȤ&DOk+3ҝɈ,75#bpmcF٨imʣ AbtFMC4 Ucw}1. i);75',EnLanW :|!98:(Ǩn%f[`ء2.qтpuy}IPgHLcއJIpBj(QFXĞ czQZj&hyNSGh=r"s8i"K"$ aB;iK|ڀ>9%cUpDʈV~CNehh C`H2c<" -+&[(<o,ZR'Y^qd]b)$SVf8=DC\቏WkFm9WE`+l#TmnσH:1تe㏮M[o}quX~z"$* C^UooyO&͘>/ųHV o5O7wU[89u#L7vΈMyzStQ ,/!^ pXrL'i.u;G6%4>O=CuW/1T[ll q:yCCʦƋNtDA@H =Z dMdf{Ø'p.tp,90%Pж8 Jwn4!YHs_@(|N{^`o tf)+,q.Y!%OG::B!PDW=(6# 4o{$ O Oa :$6o8oTA1ݫn著iPQK.Urid'#t2M5 ȵw&Xc፠*Td ׃^PA 6szÆ\ȁ)eӤ㑰~#D!"DHRBT1#%*k/*\kJ5J -u"77ʘc*)45C!G4K IDATHF*o~7#_FdUdQ?Cl1r-"Tv'Ou|ۿ߼o/P `iyjH6k!_`_o~~SDF2EQO\µ)g9$/#ĚNI:pjyn D dvF?a4Zq=<5!'o?=ˑ].%G2_;a}|74xjd gz7n<[yIm0pʷ0y "*7ģ0#HZ6I&TVY } #b*NjPh PD 0YHks" Tiҍ,:KnD8ɸi+E0<ʡL2utL,}2\( N4Fa$BЁI/cR073)#/\f8eQcN^1#|ζۥQHOtrPLHABX._S8x5#t'tS^ 7xߣԎ]eg qMGb{4'rϥm\sќ0gL`gN~W:ϰy>Y~@s@D|C M+X}-)j*QHLJAIEhI55lݠ;"[20yjɶe:SCK;ǤXQb]F&$|'Ft3@#hi=Qdm#'j cs!1 072F%oZzIJ7sڔ3-%+'ewm3)i;~=,&D}2к9iph% mHP Bkk *e?W 1d=@֑Md@I}C@l"{L#I$qQn)DQ"56cAP;q*M_ ۠Ct%q@)>b+ZΐT B(8 Tz0d@aλ8ZO.{2 g5뗠[mEZ) ZY>A0R ͊bF!${;R$ot!n^i"%/Uxc(<[Bo|b:a8v{a͍x=|w--d}}-~8qr+.2WͳӲCiXXX`yyq"E>$22$e 51y$+++Ȼ`)if4(L7bO&#QrV4:@DȌ&-dyЧ7IPS:7xRa$EЪ$ޣdm{…] qV̥0g27ȅ?2KnQuSc*%ѽ=\ޜpns~#}eSbR?J}D8^cRy2hfMc-?܍NIJ*pRMիDA-FHheUŴk)TdԕN;|S5MvDG"2m, hcx `0'ޝ"a~Iq˜t?}F w1dyFCTUɇ>K59kkt(k80-K=${kvDݙsi1S99Emڳ芙e5!!oL1$ߣhYkiۛ"sAiݨk-݆r:KۀEQҒ呢 Ioh (y{H@tVB{'n%"#S^1Y1v-,xm=Z<,%wrmCXxkxx0Hi^ ZVq:FZJc^g]w}|gsaa}}WUnLe~pdy,+ᡇol>|Gb!%R2- 㖋&r`\$7iBG5E#1>}٠KWi:(_F\za}9١i ,Œ͒ E>h8lliQ2U~7;8{kC_˼TLȖ!Zbh!&"errzP/u$ /%5Va{XDh@Qwc4`ϻNZ5xa4/!StC(Z rm: ,fBh#J0ZdYхfu9w!XU5>:V]v YGlϐF K(#1 QՁK6.h-PQ'\澣s\hbC\86LvhD4E4Aū;yc9{ O\wa͓Ca{<7YۮmE`4Qcg\@v; 鐒Kx!;1mjt3w4N сtD&318U2iE\Yzp3d^& |(,O): b{)kIo)n=m$ 0guQ-.$w5Cs!TdE\ZBP5P dBUuPơKFUdۙEt4qmC9ljY2oQCPS:Di {bRa#&rLWiO^d\,CG۾ !seN=#/GPn<İąG eY=}[VOsߣS([yrqq @pngq*LJ)÷Y[L.kI%k4yz~#FVYGc! tI(Ęl#$R\anm.O"tK([iB3E67pJ:ҳ q{8_``7 ;lJB^rynobN@a4) M,Lإ#Y)Zenzd?ث KT\;q}&D ??ǻ~twM7AGTlA1RA#p֡7<](V g<2kV2 (1wSt%:jL(%G/B 4 Nl J >9P2 Y>͎hCޮdp-V.\3EPK>\xPZF/2׿-kOCݷqݼ=Y0w9h&|GlO޳'.Sٯ繰ɣϼs#=9* b|>ޜGfv:턥C ]yӧNpp ɸې|EDt tƳq/_ĉȩǘ_|`c;@*ͱevwF.On_eHВA.1,r"R*Bd2!"R䉲0sފ1}CWilSEN2~3/p_>n9 : |/_DHBgo=} Կ&K >ٯ̗:Iɯ!7|bU2xڶ՞qm x:$Jt& 1zhBc\SMEUUڱضbmlpHGyN, rJ'לxm:n@ >T3αߧYkg uБV<9::9n*Z&qB56^yǎw橝`F3x.]dk%><}yĸQHr>xEwEk/p/ĵn5N(2L sޣi͓nvW Aq!jB\4od mA)(3N0$+ -“uPc@PDəV"ȍ$47N'>uH62 enӜi {K',w􆒹H`iӮsp63eTw9bm>`i+\6͟ 3wJkO#2´ |Uw ʶ]?P䊃`ؑfs_M̭8wp.)wphoʃ?F,z:+8r`bl\"lmsl w!y%v6v![)mKَ9y.XC``=""#XUJqC$lGLkǹmi ®cR]4Mo[c0Vlɲ%J:le`aIBR2]rǜ&dRh&u]T%ʹ,KQI5L,R;KUUenb͏s_SoRQ&- QbcRLYoL}_ɷ~a]7c $:D0}C!3,poM0wAX(6b3; /Bzz}\19;C\ ;ux"'$쀷Inm9I]E mm"M 4eFI2=C46D|Bl ܪTmSOXEd*NF-d.ZO]9  'oSȸgY$7c _%.|d=zDq<7o:A'?UY_eED#v3GWI&h2|ۿǏ p/\F կ&ƖCGwKNc矦m|/u>s_g?Oo|!}Gxr/^Fȡ#cgBd`$zFЁfB.AIblcx)M suYZX1s ͻ>',-#gjA]o?L5v<ӾڱWU!"_jg]7xVcmg8p8NA4 vwwFhi"S8-IS܏blǒL4BK"NՔְBJ/rx z)ce}9:Sj*UY1(W.vPav =y҈u_\|і+A(P@GZJov19, h)WKLs<'KiZ[!(^Em!xLnXH-um}Z¿%J*IkNQϕ) ]#"~8^$sG@U jQdYD-,JG:=A5g VT?Sɔ".)Y\;BjJtJDU&* PRN FEt1kUt {b[p!&qQGC~+*uE j2`'z&#,.DnRꯍ Bd:.{9FMrX-Rjt,QN/a'YLs`mjB!kMx}L{ѬP{] 9jyS%m^#n;c憋4so~ԮD+ =d)r.Ȣ๫ (:gXHVVʹiʊZи1Ww| H kthZ*"} dyNZPʠe )}9^ B&"Px篎AKK8DEbƱ :@sj諜Ytq.RU7],.c6=Ydү-ӳb!ޟD>?&??d} P<5}SJ3At_ {%#4t[l lޣ``NL Eң@ESK 5u"Q<@@!nؔZ`d6 md'$wH.s*53 Tfq@t{+Wft}9gsIlPYB5鰭]=ap!N}$Z gAnЕ]rٶ+{ˌ^С/ ~_ P/]et!q_/_굖'6QyM,Q qKY8ap!%O&c"鏀 ߹7;3@IJVQm]mȣg2,/fŮm2oRшvvPS>Y&+V1 c) .m;%4STm˨Q(GJ\w]Lw >!}^h#mLEOL1JĈ`=LԶIaG0T&鮼GP?"[ЙLgץcXYAڀ&=L"S!y @ TV}R%T!i} Dѥ5; IDATƒS F "ǒ,LcFl߷7M&*%k2Lcjo^BІ1:U, 2&m6$_hU_ͻ~jG{PJШ|*46hM3ꃝLxiB{?#O{CKo`g,<ѓi‘XcTccfʝ," UG#諙$J.۰, v;MR G6:5Y}-f!.:DxS+M7ߗ,"M d+7|b5ڳ;5߬hifErSXp ,M#h!bv,ΕjIP:_S^C+IU5d}M`[mh. -O:V hlC[R[f4=2Qd!$3]@Bp&wrfJ?+@В=ϭ^#5]rC68@1ň̲㽀LEw  1A mW`"Fi|"K3 A#%sQht!!t9FeMEl+B #2BRW$氞C\ SL$jeMP M$FLʁ+g 'dv^J6 H6Ir=.7xˏ" U-n~472N$-ew,I =]0iemE _\^r\wh86"Qҡ_)9}bgFy6':OA'lZgN$ Μ<93 8OICi4`-E fK\D̾@۶H ܗ@Ca jGvӊH$X%# A=eYF]@H+Da@)t圶.TPx)Q2:K.=!&[g jDDA4-ᓱS &V`sC+L7's-Q*wԖ,P-N![rG)Ŵ C81BJmί娦#;.^Oq!)6dtζLEg{vgmBi.Tů1{ [sRw49bKK %\4UE]VYEJM,9"-i*EJH i".vy'sg^Z,@RU(|L>}A[9u( Oh"kj ۠/NGDŽۏze5N=p:9}'VٿG7"jF!z.c\X{8u>K$Ð|Ǐ=>K UhP%[.q-GiZ "*%2pD%O'$%ɲRA/vؘ[t>D0XJHuw`!K&CdңGV{;~I}fJ'i")Slqm)+q iUϕEI_.K.1'#"%TJjIQZbhM2w1!?^{W#q tղ&@,"yI#!&Ss@iRHAE`AQ;wƟa[]FRm&gNĎADiBEjp^|֓ ` IKy\"l$Laȹ,.nL9ٰ@"eFR"/&w:.B\VH'ub5Psn{%IHW9,e tʉ9s(bN"u(DE9>VT̥5EwE)k1!m /%*Pck0߃H%8jC )B:A1uئGa*\#dPf+@g/)zD`^!i*c *7YtMbWN&yoS&s5.\,};Ng>Gq/R!Ed(VG?)W3EsωGP)pc̙pdr͔.gZ~7'ؔ, .Hʤs}sgߓ9vI=ALPҊyFMw,.HQҒr2=Kt̪cq$tIO\d56rp_R$EFe $D3xE7/GA^ Ѯ0TBj*N|mx8^r2D`Pբ"Yq)rBYXBB]c~ @#&.ӄ~}1TĄT.'-$o0-FlIEmDď0 _qO2" Hc"*|dsgUfh%Z _PǬ1911YP(-HI@?d,D6 LZGQND+EQ|=75zo=?>keoNÁW_ y`r-~O3|Oã<"˧2O!+Leg,B[$$N!;5Ttm%MW f'bۦ%lYufLu43U GC-֤(!MӰNKeSJi`?̾ 2vYu[Tej;_8&Y9&7HaJkR9z; - 13% f6bKYH)';RJLnb™6#!DwI)#Z+%3|Lh4`2QTe!LHAJnۙt=J5J&*+EA3!fRjȮ*4MC$U$Ba62>O ?W) "!0AJ"nSd wd\G%_t]!Sm"AA;4%Jt"#DVH鏸aJvIBDQaT zK\hGѿ׼!c$;bu7w0?~g~gwX:}>rjSv3'9˞x?b zT8)2Γ\{ap%e”=^|~/|_O=E.oS(LAJhyYn ~cX=wn9Kk\ܘ[qj$VҶ-O=4ۻ;_~#zDZ.1Y_UoL}k{i8_MGj|EmvbOGNމ_Wf5*xRt͜ W {HWcx0D$@H@M/$ի`$Lg)xJU+ZkBl.җb4w'PP0wv$rHJiKP;\c휉^r=k\Mgж.sFz%(#-z=4Ms_)ܹ[>9ЀAʈw 5 1͂!91?<2Cyv]G+lQ\^@I"!@'EE,rc΁W>ݤ7K3iDb7@蒽6{5E ze݂.nK}hϘwy"IEro n#̽;ҿlt'ǔw.0'Ҩ1؀Y-OST+ >br:x["Ddz+c9"$x jgtSP3$Z 젽B}αzkh]@J/<ϿDAfjHG"&ʤ2!eW4|^UU9v6m`)iNhp1W96 ˒&|0 4pm{^Gi ,RU!k;M@DOJ9, RxsxJ&wav ]W"LlO*"$O|-~sZA}fHgA.)4`z0sO߿(^?Q "H.û\4̶b&G.sQ)cy 5i xR}»1XAmY*fd̡  Ʋ<$u=R"+HI)6MQ칒 AF8תm ;[ozkoWX;r <!vGD9ԇ9 >6􆖦5,+2L;44Pl!h`m8=dL!9AiWv'.0[fMv) Qv&}TIxR422:Y<>/^p)5kPFL3yTxֆ}mdV9(;|UU$EuHM;t,%;JtR`@0e"Z2y'%ypDρ9468(-)кfu,HRg2Dۍ0A8{ݶco!& DS(A$KP ։S\PCWѣRT}V}.i' @C6ZDUnf[:Z!kVM1"ES:D8xjI+^qo@H2|:h]2УfJ^[pAӈcG,ɸq)Ӎ'X;>|#BU/+=wF%ҝ\zì>&f{'I[nGY_g<mqO[77qaKY$+MB[ /R>_7Zw:M="dVr:IY9(&ӆ(R=ܬB₸=(%f1R]…nyDQ\o"Nlz;Vm$ !cJI2; !b ueI=}͋u24;ԧ(˒#^so?zLd-{? LYd?9}Э!v>;Pܩ'Q;) TNq㖤U%Et[\xi3bfEV4rGHB`K!V@v ׈E3{R.G m6Lf09Zd,K sdo'$jT@D>Fwo IDAT2p5:/:6$'<,b z!pɓG /y$*mH0ۛ:.\k@y'J7eڦbf~$!Y7r51ar4=FÊǞajf|۾_`[m>;~ȧO| ])AvZ1zk_u7y⽟$g /eɸ(%ywPDz)b7Ugxy'8Ҝt~NU١39(";Y-6^$5aٛGI˰TL:@e ~vG, gqۉe+azDJH(Ё*@_)|eIz }|3c22pα5YU1 cG|ZǢh ITLſw?L[_Q"}wUE`iC_8;44TKN-*t4-@a*{*iŎQ֚^5`o+-8(du G}%E +44`מ؉ G}|ۛtmT\ع-:kR`B@קW3ԍ'Ĩ73NZe]kIq8|T@ l=C' 0EZOʞ :v*4ކùC$gBHsb |һtDí#6T=\YH3[1JJ5i!!8Ug0Sd" *H*qSBJCPj (>u#x%9PĦC;g]g(#uElP6)J%ѴS] DAXƚ(~ * *}~ҵ셌j-u;vO-8~l1dzڂ5e2z:E-W_^ñV1G_K/^&lǹ9D !vH9~*XVX9R#N>ǟ̑y .y$. m 0(R U.`ŦT`Ф}ЋuP:Z@ JsgF{P !"Nf) |3kv-%e!Q >" o JTQpTfHW2 LH$+iv;/(ߜ̇@|I1)NJzßP5ZLoHFŽ+>1W/6gN~BD(K-Ū ^N>?/A"fOP$ !B*ـF̙#SAY dg$`}/qL; f]!6Y͘DYF7K*BϝbMs140vX@U¥6(0kJ tJDr7FD$aY[LIؙJ/x='MD 蟉x(e0 xH0"汀> HBn:εE2!9$_wg8u\,MHPܔ@\%U >f]cmI\ͨJ|䃟[~Wsj{nŻkSq^jլvvy'Nؾt;<HkT8[c$ζiddsoݯzg^:^Zggo 7(PV1\r/^CØLZS%KNpw^a$9霦in!_ ru|S +9vp|i+"' F#`g2\~7݂(m^&7ݍ4b /J#psV`Hd4R_5L [+~^`ULB&P֢oϑ>KJti ݛlFHDL@kZ>4u#G \u pl ,39ޘ|Oblk= {LmK#дI(m+CDl\B@ :K;U:{b:Duy+E ]$Z^.ԈQ!tRpeI YXMUŜl,4T`dZk'rEm@@۶_nT1O?wMݰ|ߌs ?SZܵdʐ-$!$3masZbmsrYd8)Z6vu $>PEI 6 XKSUN}[8ܒȁR #>h5J >QN#KɌlLO&|N\y0̓Ab{g_}n~{~n{f\%z?Ilm, z ]1=NA&vyt9%wFGĒiKʩ;^s?(^ Nx_C;ϿD%;賤y@BRC r-: 6$`(`J\$V(Q*;X;(LdYV*KU +H2MJLM e`i utdٛysPVc'6 Cw7cj6]-~q<0޿pͲP I‘RMDQeҺ9$"j^ƴ nYL[HP/52d ĠiB*A z v<ރsI3_ ֙7#84 J[0&LN# _xS Cg#m$%I4˗ $f$Ȼv;qk!*It4tս9$me3J_\y9 ͱLN/[8ͦbayOyk^״#r#opgy>c't*~_.{- mYF4p_=qѧ7XY3m"G&A]'VGqV/+y衻϶Xp'O9}MВz"b:Gr) ؾ& st!\A^s%Dr=9RM0sq.ck%ϼ̘:C){x&xT%:E:R$|G0]V1gO0k:J",PjmG{82clcT)瀣rZ׶Zot7TT_ntBF!k4ιƀcB.> P]7HI>` (w =9(] uKBeN8RI1igr#cdVϩ9@:E}kBӞ$ig=/#OY)lh1\6_9ɴ uH Uܜ_~i4$uUj7K%&HR֋Rc;Of"RX,3|Bɫ*Yy9 M2N՜sYBd"">\=V!6* 2 \ R؃g ɐ/k&G}>Ǹw#. s"AII:HEve4!Z!zFs"-qdLJH@2VzBB)KࢧRe(5]u;;0Bd||$.eYFƦcL}1gx1lƆP@ X*CYiD?ѕμ]ӻ fhw:N#%g[c|v1cMQn~dٱ c}l'O2l?R{]#\~Sv| ]]Dї&b(WcIwL_91t >!yJHJ2&L%8U x)ATbf fSД2~~81k"yHBp%6Jzl0޸".XRQ%I< :`C輢І_mӜD=aeʤ1yp{_.L[zCv3v,0M DgǑ} _ێwLiF刡 )FL_|"yO%} ,B^CdVK2'!!Ԣ# S_[7,Mչ)?x_SOv8"֖j%zvZH|LY0mA_+z:)) X($!UIh&yR b1% O_2?"iNq uBqO?R e/DaH\8d‘bv"IJ%I4"X 1^\ɟ_"dp( vp@j_k-f3X+ٮIhn9 #`\_w,-g͗v6"t[y2Xxv{̹'<μ38ײ%,-3|;wz )ȣ2ۻ;r.vwwnbyyƕ=VWWhqU}楬%4grY T%J)jR5}]|vc2e(S]bDH h+2jVJ;aFv?Wڂ$AtRVx)\mr8p@ bcZSNCrHJj;;W8>9 Y&F#]De>$iQirM8oa〗d]9m9jv8P)v6ۗX}# kA-U K,'`sz%,GؿC"9*iV;8^-1^-*K[i.=#ΦX=zFwo=nn ~2Rz_|S !hg-XīAL=z1C64"juK-0 ŀ6 !u5CO'g-)&tNF /O<|NeVDK<`><}iG65T |:8bn"7o~vg!B?{GAH _ǨdE?x?2=OqO?A I􉱾O' EE ""Rh"+[p⨥>? ~O=x3%Ց]X6g]^UE/ c@S'PHBJ_}EDlFJH*_zJDhbּRS\a(jɄzcN6ct6MB)("s U)S>Nɩ)F U'CH\H5D%)nNR1Hg, l:|EIBk.bHIV,/KEŅ錳Eax߽|>u3ŦjcO|^*NDiԈQ|䱻{|'v}v=aTxfL=h4bom)Bbĥ1SG<^:XB 1R8R2ueͣ-p75O*I%Ye˳1f턐0 !8 Ma $@VX tVt ŶlYd[Tj~Uo=dznw߹7|@)CK<{Ñ;#|kgFs>EYDP; <sx-\IɽV8suo; 6;pҴIw,Byk&_.yx%+c s j} kujk^?!jy{ׂy1dkIlF!-d> !HX+0&*T#8O@@2lUp4SMfȺ'J 5 .VNy^eM66HPYTp2zFQv ,I ]Vew1U3\~_g,sf ^h@p=Rhdw@"I@i7VLZZ<BAippL>',|[0#'8G$/q!m5q^@L,4B͒$j^[Vk*JO_N\zfc8r7jؗ5;,HI{6! A'(qA%N ހr&94C5%%R&TƎ,*5 H?slJ,=8RLX@i{7{^!ѐ :AoI;pU੝%sR&[ڷJgYN%R>xO=' `iգۿ@\㾣a·ٯj4fsۆiC5ӓ_d>G3\ O5:|/v&\]|`U`yԘ=d"bc,Cw0=vϣt [JpK=ξ;Ku#7=}%%,̻7zYXLf_SE }1XΕC=DFjK[IKgEŜ6XpRJR\zLM-$382^M$_0*[p]SoFSf; r#1ʣ^#cyq%SU=io4|=ˏD0!m TxRdX:NS掟9/n2ZPkkf3H( vGP(# 4`#o?$xN]JYזw ~|pz3 -bGd,LЦsZpy F"@xy.0Yk[f*Wp"3H 9!AFrr";) )033E-e I_v'b1U bd>A6+??/&] aMzAv3UU +ܞ`"DDnSWj{{#78ù[n ^J9"q~7Qj"y̙d9uCSddNPxz]67s@.gb]NmJ" !O䍯{3k?LҲ</\nI\p#B]B`8֌=xL$IN]Td:Uo2tAo0i4j^̱RZOz}$:Iy CSr\;9TJMJ t:TVO|c Ob :{ύ?x%,_~bdS IDATbi$ KXjYΕ6G-.nr RWgӅ_1ok"{Y-uB^w=$ U!%Ayl0}0gXS|1x#4*h5T$)64 5Tylf9 ѱʞ6,#Yoe, $*kFXL#7CSRZx 56dbJ7x(&D%M>΃g.ucHYC oȓT YQhfL^S1Fbd&вEz36ۤ$N F=)? i=뢹Ґ ځ@l@$N_PFYD5b*uA={$E$PUkI ЬɍB v}^=o*;$no^bK\gZܳblф TIg-N L: ت@Jj3Hh=X-YJ%bS@QTT$)`PbɌjQwI^a,8'~% %"ERn5)[J^`]7)\&nx0A"N"tJU4Lr螿ZcPNxhIç(yRrpכA6  * |sS (G֩_X~yɳyw-4Èx(wO0Z,ygO#mpyw[YE' G;l;~돟u`Kg>@yPs.,u{U93+uXbqaZ-W76mopcuC(@(Ra1r43 (6aI`ܽsz'ZuZsZj. kSu@H$#HyVg:|!WBʵu_02_8EQ‰q{jK7(ɯΘo}Gަ VUa9V+ӠKHP (<=\0UZZXmlhC] ,ٟ|Z n𓟫3F Gگ5{BR"CJ"0@ A|YAEDm-8'$CH-$TIiL/c Z@"%P 1vk`'!X%*f=УTC+5BrTp35)ykbj;J+M/pf1=WR`pq<^s>6P''9!_Ddssf0JH$y:ë:2$7/&3 M._M'pq}.R=ș.0TzNYcϩgнw golcT z F[JR h6#i`}1@I$U|YH^S YMoXU|[#@Co8$+-v Y-P9t!F׶t0 ocEX$oCLO> mog⪯ӥYolW,̾:/w6`l=@U}|O?d9nȸkfmZǪwQw3Ȼ]j(c[P !Qt=ki7I ~'wF퍋lJvGj|/> T4rwRiQ#5_ le{kH:<=Ag< 8zN3׿Npx \9o!R_]duxc}Vkt Tr9I}N F;kYƗN; fngڮ%6?k72nr,<<<MVZ .E@5b<Htf§?WeSzM𩅾GyfAG4nK&+)2a\ɍN"l x t8p#ps%J.>Dw74߰+_W>?{$YO8j)] vEsNXD:6ͿTBq{{m?sZJ [_DdX92W8( Q9y tbѪ w%9H;Ml" 5JƔ!iY;#^TQ?v ҴED0@T*j+FXcxňG1 v~;C_Kɑ} dzGF}eI)ƞyvvvH/^ċfr4Kmzy.x|eD^ j C\x펤_+G یWx {ͅBZ?m̢t?S5}`٬vno-V=<L0HbXOgxS%{lY"t\_EQ)JJi 1$5Me .x,7 iRUϛ$“fydY-b^wL*jq1F#QZݤT x |$n=X>FCrSO3UZsI1sFp]םb4(.o*ǼJ}3 _[in̠O l}.2`}k>ED0#c5>!393*{ Sz/Qmw({_o^0K'H#dv1>3Jd\)y:e;PrjK.3rjsvGezUw|p.2[[ڙk\^ruW 27'N>fXh.sOb0EE%N'76@YqId}/3P5bE" m97zc:|aNQ_z!Vˊ凿sO}YFQY#T,%&]S+6:z 5pϽ駷8ߐh kC4Ayk N>Wv}Ɔp"r6|Uh9$:#z'\~{KO~rʇYi~16$C 5nZwD6Dm8Al>N 4ރ,4;Z *Lĵ*8 dbAPC mr{Pi,h#-W$cӆ=Bu/v{sې򩗒|sz]sMf ^C{$M- 必ޘWFW9~8qCv-1\ۼ5a#A99ှ9;tc\\fN=]źA/B=fgۼ󬯯S蔳6Pb T1~<,e F4MrQ(RhCULZl13uF-W'Wӗr 2EQ4vIRVn;!Ȗd!tZ,)v,KREgH~_k1_}Xqų/]a>~^ D3PSt\ո#KWPH!4Z@OM:ܐ$aEt}mH2#R1a҅ \ٸ덨˸1"K!q/&z}DgwK]1F3z,[cE$QvnSU,1}L&#G +1e}*,밶ՎeaIv {I$5!<"QW~O74K)4Xo=*~oY(Lh$˩wy+!i^uiC>ɤE? 6uBrSgya#|xUi\3|qꐦ/`-&E hG9~]<'9qRW6-5?OǶ@E SG``KRs"ɩ5[$7rI~s2µD@I3ʠ يTBpQk<]<4  .X2/X] #I1 RA4BPo$ BT/ !v4 {JJ[TAH+Fc$7iH$*-1&zɳ;xҙ^UZ%l;$"#CܓP\WBjN*O5Q%匘|pJn'"Rζv,--h*lM\abkZ8yd9ۧ푷lll&K+uf4jO?_GX]]ҵ.lr>vY^AFaoNZs75_0By"4@ tPo$E(&ణ4ed9XRV^äfDl|||3z+ϹV A*\!Kʲ(8?UNaPdX^JގQ#k dBVkQ,.Ͱ%CtJjjNJq;+s:{RDGI'M-ݒ660Ӵ_i{ɕ1v`ޓ ǰa(jJjrmYѕB9T"x “pRsnh:'xQSy)IDըj*HU;'IH& G nsa0C˷x۾GG ^玕 aʱh %MiQIRø#Iؗ Y%-y HsLzf[O(>2n2h<]H_cbC8$:\c3yFeth e]d= VVC Xs݋ӏ`gsO7~j,- }#%Ia?O5748' ob{PkU^_7*ITwh[$^\sQ* ͙8ʹ-bq?~+b1n q5H3F-qi6%Uw;zl\!+BYpO3q?  (/ɧYa./K I_TA4@QZ3-x/9XpxO!4<ʚ>lo4cMj7_%zz}d9E,}ES E TCYX;qQ$W9Ow{w g"Rп\g"; }=V*RE1ܤ^0vL%Q8h4R">k۞L|;:Ώb`E ЎAdᫀsB$70-8]V㼍B>;A;|0ύ9=4QE/!;U2Fĭ= d4ro:H"j &L}7S|g%X^r ])E >5dan1a* jU݄o%i_QW5\[['Os&F4P^|-iR.3^GpuC8ѪԛM /@֨ x3s蝬O=}-^HC.Z'8h+/|zΞ< /7B߽?{$I:4J˜ZVFm7&OrJPdRB+E9ÕNoe⩳ٿ*ӥIβue+Hyy=wӨrK ӧ"O&`k-Uk%"x{b   K&%ӮK(gvk, IDATgo+ۦpK׮^GW m1H7rᩧ9A-طmRTCfJlkB^K֍ Ypd FJCP\ YWENlHtgndApՄ;;Z .5Ջ oy2&Y+k>o0W&P? p!}^zN@ELdO plSib!a"Z,c}!E2c|O񋏝F;уT?Ւ{̼Ae0qK, nt!ys}~ZFȗ+Brz9<oi.1cܒyiAzX6 -8qI5W&O;&\}?#M(xrE])eɱ\bg ޓyjgx@&VNB_;.ԛ`gPs_|:JFyz%]AAuY~ZB TfH!+3i,Kp^+,/NSS )]<*8\G DAWCg+UF*iVQ$Yt4lnv}cGr6iТf:[۞zY* B:j; zkdZ@9 f$'qqc;̶.$4l :5U[VDb y3gIjqZa{F~SރJ|T!Œt% $8YՇ,Y_o; Eb"5vqdYFx~Xk Dz,aMحs  љ$%z@B|T+IlXU<2}zyk߇J KwzC1 q,̔,i9|3υ֑6wwY+9rF]t&$兌\@GzfF 5A+=[ߐx'k-E]T(4u8yj` :$.VY묱&J2k| IJTfo]{;<- 7?qOp|ꃄ,0X._v/p-"ݗ?s|/4KS_9)->lBGIUNogxsu$#- M_fTĸ[{1.HI&Pm ?#On e Cl}SuLT@ ʁ̈́~ټK#4ZMz=Aj <!FL%Q7lRJuEeFy\ d5׏QDiWDL>.Hd̚D3 nO7&" "ݡh%\vM9 K,%R)cf$q IlkcҲrJj-2їX <GxkzvNyƠ=')YˋvX:ddF.=S*.cˡfC=\a{8'q* G2 ;M\s+jDGN4>o`ǎ6~BA e!Ab-]B5Hm)vRVԞZQE6\Fљ1f9ZB$#i6B QCT ,UJw΀<+J!Dm]Ch3(|`3Cot.]1̶}ϵY\ߺt8ctBJA^:qVw̻V,m6`yaZ*%ei(]A9{68+P^{&}jJ"9bXxv2dh uPbƣ1΅&YB=ĉYzCʐZ-}&+Vwr(s17 9zbr 3uJjuGX>ҡ3ˆFbtW3Mq Xisw1aRdVhδ#U#0)vIF,TlU t:vxeDU)A eE^qhB+%TSZKa,Z @;{ UZ7P:/Xc9c)!ySF9ܹ:-&654%x:#(sȫmL8>+8n收^+]$1X SRX~IEr3~9pIR`΀/Ѯ2(`sP]|UҮJ@q2X;%~J_CbᣐWǡe~:/ ?,{7 +o4"C]Sԏu{N)˔"qG!o,=!Z sC?Ğ=Pž됎/m3븱ڢ} &̶3) ->J βCo8}:[>G.`oZI}C[唢ة E5@`d>0|O~Ų1YY'Hk%ľ7r 3 ΐ(D n&,w.R;tII52'qe#?I"0n Ր,C<ϣS2Zv4X忇tNḯeǧ]Ma}(ke{‘c\Z_2r%3ߏGU`I-<ԍ󊯽`4̩wKCoÉcmE2?Rf vHGl8ZzS?7m`n:M<8WoFሁЕ60U3c# HKb8燬gd(7-  4 GhM4# DU+OI,m% f>VVr;XX0Qfv@pQKSfת _}Z!z5āB8p⍆{ڔGpJT8jxV}-C5I`v.iÝkS˳BLc G9K拔c *U86" ߓ=mD*vZ5YB2 8+^Uozy̒̍ ~[?~=IHv8,\!{<{m{4 ]&I<*FQ΍Rx楗6gloo;A{UCe 6/ dR G^GeIj4 =@wyڔ^'pP`-5] F2LJ7mYZ#-: ͥc3K@Hͤ0Zj+"&(@R(*ARG4H} bD4.uCgoԦ2||Ui-FeOgARc,ԕ<@@WGVUBnUWɷ4%/n%v/py"-J[:(9O\~ܾw0xV#sBS"CM9.YJ)zhQRf0,9yf y^MrzmxMOЅBzn~JdYASȡ,Zx 1"lH!Ya%$eF:,eVg'SD9 S+цzd9v0q/QMpô@LѳH$yT!.Y23 cfec*]Jȫ NԂ:L(!-L{=\VRtXcPڡ)Ђӆ(Wt_Hd葋`CBb*<[Ye`6׹%_q> {PYUZ-~!~wJ*wWƔxko>{7ovHkqWiyCƤ`<wьi4b\g@Q*C'l#V̊}v G%GcT0vK"vOz`s?˾_3ۘInΰE}YwAcXz8Z3Gq%^]}&ʌ G$,DLF,2 9ÂW^cJ s#+̞[~'8zK_ٓDm wX }AQ0-  +*oSGO1 bnbs4 V{ $( |-p9\ٮ ]qz(ݞovTStӟ؛Lhh620 ZX5ɝ0)5rH/7D s1Ӑ:M2îƮgxCG]E$O ‡Pe⊪Ѩ@i@}/ة/jcsPjT(l+z. Dt4yi%4 % hZKW?<]|2IV:!iXO;>T+539O΃>g(>6ljsB]^+ M_>@~@򾳱]&zOP?v{7ds&0bkg@MF1#DCkJ(%hF+"É3}kߢݙ!jSM7i4m*xkktmukb]o|,Ă~2Ɣ Ocqq}^`-JT\I?0̋H;qG!,=NE\%%3[f,t$%KuFSQ*;סzG9thpBCPOQ#5d)T瀞֔ lur^u+5a U6F{sby1xY sMij {AXm>T>ġ$ 7 Qe\<<*{%JTq蓧9<]i_euIֳGغ~x75㇈CdCAO'ޥβ8,u[/e2.3&M7}L)h4LF%QcH3$ ʫ&͘:J88ĎFIJ&习( 216NXӝmSh(W8N8DgxޘSLtʕ;93g_ՕxU24E6Cgo_q1^qֲ9(rOs<զj\1SkVD)Y$@SI(zVQR#f:3O*nĶ(Q< g*_U04]VCm KKPSǤj2b =3&IR)㉐+ 66*3*ZH}ҼM<"??o^~_kGz+|O>ÂPǕvr(~^h\2Zh%0!k'pF+J"8]SbUo [,Gl˪S׶njK a+csǘ~thCa4Xa$%%"vm& ?wo]aotkPoNpemm9aa7:f5fhpl::ǹy*D3 2C$w1&V+X^2tOYac&Mp!NQy )D.>qM:6y`?-ࡘp0dO? PQ e1&& wtn hBCb4ܙF WT'zA9+0Y)Ȋ{Yf1a qv#_!Pu(pNT?i9Wto}C*:W^{~A}e֙Jni?bmćl IDAT9tH5a]wҖ#AU7<76N>nZti0(YIxEB[+a,ЮQ aⅆ:0(3HJ!ԁw[__cgkl_<<<TZQ({JRCI몌G(yXWeX Qz>A'{(X +純,)xϿ2Sf~^99Cm]Hc|ps[뗹r8ƧOD Ô3+s|6k>66Q*ʨ8GčHR/<慇V믔\_v ͷ|\d_л>Lg`fIO3pGhMmx%W.>y_KH6O #;wwq-a?u̥/j< jүSZh Z4n/cf0 '.ʏXM\oQdha&GkIAj`Sj e+)Rs,¡$L hf $HE)a:9~rS7l:UtQ1W;ߠ8of',}Ró9:y]878|m>Y~.ePkrz0wvnE# "*,:d(w~r}Y(KEB8x_6?̴Ԩɨ[9 IISjA$ܷ҆#vL+VlR%i䛞ϧC ᬢB8KA=xZEs%qIiEXH`ry4(%Ĕ#'% !g aA\( aRexVUSKP.U[T`8f s>ݒ2bGWa73Daoj91Mn;BʣmiZIQ|7[?c #{C1ga(Lk-Z˗_f2Ԕי}` NJPYlꫯOؚ Y^^&Sp Nv;5Ru<#̶xS1 Pu#'+%#,CKn:baa9Fmt(4d*nl"t23OՕ}M1 Y__'Bڵwo N¿Оey#K KI" BVHXd4Ru9~ivlrw+Nz؟~-MN{#q“O1;SIPL& omOw7V1dk[ qa6׮;zcF9ˉ D"ґGj5AHOG` =DP#)Go(KA[CK6XQrl%"pV'x L.F4}MgN2 =l\=ba9gFd?l-65OԨ|AWƝ >{P]! I*ʛ̈́49L1z9Qڤ;sV14 e}#Yi ݅Bd)O6fvtp>LOם_ qO DYbjrkfq~CϱX Z5 N>ģ>Tj5&Ш넵mv-@2qUVo\:nsiK`jȻ>G ʒsh]dzh;(\ -r^ӯ+SL+K:R X b|2*CD/de~`tξI\&+GQ;N.cYZ2 agH&s]y_z Pcyϰo!Ovz,%,pǐ>;X,{^@ΞQdkđt=#(᭧xfp ;W^4[2in|Oٻqg.r&q6D dHLjXPfܾuf"dMta/~O?`(axys4ZK`HݥO9KkC<[AB]UMT`~ d*^PR1OFUZ2åYO B Ʌ9?!yi=˭3c-vzkⅎޮ=bؚB7Mc/wWPVh8ԫZ5]Yxو_=U!{Y  "EyGÇ^oVӌ 1_RRgIj,<ԀYDv'cjH֋ ߍ.N[Z`=+ك罔YZtS0؂5D`׽s3MJYѹgyTՁ mNCV%VVϕ{9&Y&7} JJ/м[sh[%9IG#q"c$;.y賽-7.1]gB?E==JP^wIҌ$YƄ6q$!sD~_]]ev0g/0ӊ(ʜ< |/>l.9dj53\ܩ|cw=g%,'U<0KK]4e4͑"TƔAH;͔^$B En ){}έ<ǥkw̄ dNB's3bIʝ.^&摷eaϝ^BbJTڐRE]'jQ*r$.Q2Ij<}6<ޮ'_䃏=rp[S"O#Dp@1nCf~oܜ`oGbYFzhOQ\#`ԿGn>Q!~s{%FCJuҤ[5~eRV87R*D!(ȳtRT(fk(]<IH|ʑ^|w)aİǩs>;wiQCA6 YxbRfFܛ Ft4>o9G[w_f}$+-  }m=*˫TzZheJNМr \eߘYF@JPe KۂwHS9[%۳@idQ bpTNԅ_| e8/@! r QyRaJMoq'3lLg˜8a{pݿo}PsO!.]0i*|'~x,`kiMaɓ}9m9˙ |3ԇR"ҴNmX4S1:K\y~ssG܊.[FM#\]" k73Μ;G;NgIzw__#x'q6ysο ]+Cbsߘ⁳揓 :]Hv1EE^2F嚲L7o@Rտ7 Vd) JIR٪֦@J:F#X(K N(e*LI$C]71Wr|1[an&(e̦IsniKN=JxldžF I^Z=I`@tc,ZL A-W3WdT(CyXZHT!@(@cph+hFSZm^ѕB/W߫Z!׾W$*MڒgFCU(2eH`^4~OtPx 7F䃒uax)LB 3poh=#G=ի U`AA$ɛolNPM!WB/duGﬠ:kP C@[t[&Fn"-xt9HƆ~>b{a}*M \9Z.W}TR(CO4% h9m%`**v|/g3ܓ_ ;J (UAËcM9)" !{dlX89λ~GYgl0Ļ]zMjvdw\HG] ‹x33G=h-":s-\=U{0ߢ16fH~02I.0>ʗ['t:6텟D"yr?őev!R;W?yN=EW,]fNgsѠ$҂H-8|ɕ)%\Akȴ$hdYsǷBT1)+)b NU#Ќ)0z=(3Clzx30l4>BZ2e%ѢV5y ⻘եPrC SgpTݿޗ+ lۙ!JRx~q{O#w%y͹j㘬Z 1ͨ;i#4p*AXɈkGw˯ymJCq꩷?Liv;|n5-~Es,>JI|FLCXk[;vsO<}y{ N~? wr.>!tLpjZ O3_=?x9&YVm#'9q-fg@QGcFB[qH]ɦRo<0²Ó~AKBuzF+vjv}6nHIo2SS/5e e l%} 34!Dg=uBSXjr=z~g8)XZ<ĭ5N;/w9|u^d=c, o9Uqbl \Z(4 %@DҠ } LޥDK.wqvvNU]9|x񇷺g } ]ոuoy߿uG鲏zug9ZϭpdicHf_\bj}NR{~v,tHP. yOFy{N2ZQ)F 31e'̶:lltU;JlIn{ m?M# 5NĒQ {>I)jfܰe<NJ.dߑPݝ J 1s UmUM(¸{,J{B$ɽ ݟ$toLq >xYŇ Ur#T,y]t]]RZ-E:v8!EQT3Bߕ 6gqjC\ĠYY3;(k^bk8fzRg}flm\gs,HlY|CfI>䵫 %SS,%ʥ{w&`U IDAT& BKITdk1iv6e);ITr=4O8S+b/&}(D1CiAgT $H dD}Utӈ% b y6n}O>gYEPlqgxke }m|-_"ăs}yU,LvaHGO03{|7^:O*$6IR*3, kxq4> _Ōd8b̃ئTa ccfΣu^HE㘉 $R"#Qcq zۋ] 0 gF!̀_N[t]J҅:R$FVHM'Bpc;ـMI ԧT7~ѸQki#dw4!J#Is# &8Sn̿z)1#l\#3ll3%,$.ɨ&"@ܪr{33O\P"O6:1 ljhB "dx+!pk"[a QՐEs:CE% d1yEρ5O`&4 @]HW:/%W\BӒ"J*ijNqߥ9%o mO!B?PUR*WQ k8ģ[vܘ$6NH77R%~//'(a01Sđ=({t& 0T8@G_ *hbS`rM4CS|QL8T1#0AV(1 +R 2Pd+\y*$*E۽duHyDF.' 3L9`<yۣR"( a.%92*r 땘rIsMN8L;ϰgx,ǜr.eaf H^NCVិRJ,ce!,)RcsFUdE*@ ߂ŃaZ ,G.3wX|V;ߵ(R`„6TeI#VwL8ecpPp%s+)iJAfY)sE& z6& P EԠW-cHa^AOc:s72fkֳ &GP$x?eLro+~fbW?#YA%w?jq8MbckLjgkp>D4˗.4+/TK=իq{> - 0~JxOBL4lZ(#Q)0er,t~啘-"[u^";#ڲi^@)K@B(,jy2csr08jGx8&Ϲ7<8S[,'^dS6Xg`P">OT9}5Ew/`V8Khy2')ˌ\JM$$Y ǘbZk3vG9T( K=~ѢF *8ҽ.AEjyߡu&I8ɈPj<1(|LV[MnӨXnpkyJ4_e1 u0TxAEhFØgY\Za<*HS)tk7i5?Q"ͅ@{ CC9Q!9rQ( 2- $|2R @ذk$]d0q&L AJ-1txM lAK +QO<*Z{!J[h39 Dan' !E°Mm_B;l\ff =O¯2Sշטm lm2TZkQkwb Ax[W_F>̮buhw_IdeX$:\dMlB0du;w\F  J ?(6N[=V6,--ԧxx7ݗٷJĹU08OA֝L> vt/8vpEr)%Ӓϟ M*NyvS2O F Lx,O~)yE{[|om~v<^-:B$RxHf8A2ArGEJqJviZG>Z*&Ѥ2% VxO{_,NzNeqcPhB/O?{%l&=~78/3'?x%ursZγ~sK|3`eX$.$Q֒vGaEТdyN<'3 m%1 րL"3Jw;ʺ!CX `ǎ찶Α5v{-F˯28xE2֚8!u.()q"ZvXIb'XlEZ{8 ß|-RgBY]PƄ'5-efě %,'_G$5Y{YsW ,PCRcr7>qZA)Z"CGI7! }t$2$7 ^hhAHLaF֑2@Ra| 4i-VB=x',JkH}MX.;-hB7.g~\&[c mS/T9z__GY5H{Iŕqw%vs =t^dNO:%@H#@fXa(˸1)ai6jx"3bUJn=,+,yQ3` Y`aCgpHґ1+=. :~=Fϗ4댍0ۻ%ko1pSYU0gV&S$)YZckT3@g!&oݢV;Ntk_.,a&lbGUx=~R/bu[ˬv\A;L<}DoTsCT*|QR4P)f( n ;@P9pv;Af3: Qvİ䂿ӤqS~ջv@j/* Oɗ_;-pAlF}X^t4@8h K('քfB4ɸ<਽LANd !r4:GJlJj*26o[9g2A 4: t G5@;wRmr-%7|+|\UΈfSMJPe{gD&ژ"rϴ^s_D r)aPoAwZak9aYvh-1ڬ./Z?5g+ B)ݓdd )ZUu'å) !=ڠƖ;QBՇ\Jsmcte7|@A \& ȳ={GH:{Rq'#ލQ=&5I /JU9YV<0@n|~Be *AQ<)-Ql{R\$;Lpl`_zR;~PSN؀fR&[IѺѐClѬi!\;{;onǞq.6k 4?t"!IiObf3oƥ;lnnrtV6z0(_Ʒ Ξ9KP\9>mJ^ՒjF?J@Wb7 Ȱ%^|樗<*%vO5P^he 4gaV{*ad jVkˀSu:{_ J:}X(L"cۤR (>Y^xe-3Ef<|(kl{qFV'K&tв M`3BNLF^otpw4  oƜdHG@+D)5s_se~wȿaSWt4[upe׿H&g9fi2,Wv$ 6Q,q$>&Lu3wyY] /Ԕ= 莇(a"Ϋ4kDÈhxW cdy -2R)g,Tg4/^ŕ*to0GX[8&s (a<r]rYZan#%!5y>MR4(WCΕtq\H谍vfw4ojTUH2GEg D8IXg\~2B4  ,$i^}DU#}J:^ZYP)E[QhN2y|NO),G|T]n]]EK%cllRIR-9f2jU ΌqYJwǨzNLsYlmRCXV*ml@oLfUq:;9ShCn|~=k rkBDd^)"IVc. !2͏~?wYBMd,#|F!LaMLx'ս|hԧ *̸5M|Aڭ2+חt1樬bh4"CA޸Fh%{G'P| ?S?BMG:!kWDLiWk0dg OQV ͳԲNo4Di9i&d x_=o?EHК'e<ЁB&~kKJvBX$c . ] Pt1E:o} ek^0,_E}R -avJ-gyaHI ֡dC*6I[9l_:AۜAЂ qZGqDMWFL"eLzx8V Gp6L2CeYq0;PQ),HŦĞHy3|I0KxʝE(rw=KJ ws3SZ-Frk,//S5%fST*& jr"ϫ70^C{0cwGD4[ox㫌nbwX}4[t)A[p=l¡'E{`ya|FXgyqAՍsew&4n8aZ%IyYJg Sxmfp/]+ Z&wO!XƱykfu%|מȁiƃPQwj=as-8 klV6NH.Wy  ې5dTFmD7e9ӟ=>qjgcsc8pss ;k;d* f;Hri2 ?F^gE nb K\]kG\nG洢U/yG~O29&29p+K9p[,Ms-Q3Sm>iϰKV~2Aܸ<FGg2NPY^ 4%tItgBo4 %q KwIgVN{ vWĚ- ()IL&C0;Ilmӌ"̙ܾ$Fd|$N&#3W|A)s/*vw-X[_C)P"&>"?΅˜iprSO(mz;rNRp`2˟_冝-K+ '#<#C<1d6I3ZH̄(g$5X06Zס8hZ|Og* tB /B 6AFS` FA}y]@`Mn 8OqIIvm W~gC'?F3 ̸|Y>i/|E揹YbW܃۾c_R=x oߡlrg'4¤kS0%ɀK>%g9X9PsD]iXYIl=ĿOrO0l,S.۵WXe V;S3<}|'}=R9uCΰO˔2FXՅ+dOB<\"}P.,H)Hӻ E%l9+x}@50,c|+pJ9C)Wr1:aш )5YfiTb+ "uzI _[4 %{a}\ܡPHYLd@i޸NyJ9E8iME }*)Th$J]RYJ\ (T8S=GLAf9<W8؛>x~aW^MLЬ89pp@8v+{iWw?a_6YQ$1 I ?7|MkCU%9 74>}}u}}޻\^-h1Gl"c JX 8%ВxLZ+rsvgvvΞ}.r TwSOϗ'}GJ#>@6k1V,LOcj*7n\cav͝ J ;MYl6nA6!*Q􇬮CXhr񁓼~{!ǏUr +ۛ|KlwHscT*e *v6!/!C/M*ijvŖT*vqLW?)ֲJ`;,1eiiWA(xNb.[82?K2{; B%K{ypMz%#%JIE) ) ޵ߢme2FNgxr6хsX\~62wyM!b..{>Q03.3tC D4Mcs>9BLw(#DO>8qoX2v{llqLFc8vL±f 4oQx;/N 9Z8yz3YCj Ο2Icq}׮}_ff7k{aUH,N6877éc-M86'Gz&{ hLey.ch VUi4~q*M0R-̨8à; P5Э Ԣ̤ f+xI)UF$w7=}{mnZI2ƍMе<#cS,hj$o#'{j۴$=WZb&=OF '=I$KG&vkLJbuuv5{M~'G C&+tZe:KK:d2AhpOGp25>fl#~ zrD>a~ >±Hkt\X(Daadq"YePUWYcPPMP1!w"5%yC\)<YfۍRB(t"4TrrɉY;?f|<]VϽ6xUﰽu{+'!iO0JחX~Urސ/ba-6| j3w/-v +]t]Ð(;Ä.#X: aO2 e{yv5>O/ҸBVz?^|JiF7o z-KPuaϓq"*f&"7e۠Vd89Hg(5Db(~Ro 5Zg%('x\ 큊,%iDJG JNMZ;/ _G0 TfGbWC/aW)A hA*9Q)AB&h GL*1iicU'1"1qf·ASMbc"B'ndU5ߧ}5ُC"FU! tUa9Hxs,*aZ8( 11jmo?Ȳ$t| ҡ4M4uNT`Po HbYI $D$EHbP5 5b^}%\ q.P%cc#k8!qayyfUf_]#=%RlplKU&f^A2fp׮Q]݈BYmR'&B66_((Zm~7;Ké3szvX Ņ;UZMGN.PeEkﮰNk*GHM/pF'A>$ Xv#"c+aw\1O)Q=M\.ǰףREUz$(DIP2[[{VjaOfL;|/alJ2!ll 0-~\}rߓ2 ~'>_kⷍ;~z}/| G>]k]^hsNhΠT+u/Am2,W;|׈?|S)G BHDqH$xLù3GP:$BRHC&" BHQ* Eۖ>e5˴X.PaN(\:u}yoMUH¶ӗ(o)y۴~}Mzm+<9|KxMVcRp{Ɵ?'%_c/ad'!J(dd &Q2t[tn]FF(? q"l^#۹C۠=W cD*7"J.['R~7>rgedXrsOAd|2/}뇴Ԉ$I30-ˈr_$Dr@乌dKt}`ȱͳ%D wZ)@"S.$ĪV' ȇ c3LO{ѿܐ{z0PG~d49~!+hT?P6s(ZQD FB1WCABc MQAR>;_m$Ib|.PqBA,x[҉ԱL$>RjXLakQ5Y!#2KB/ 턩@-?|y퉈$WA8*r>X": P~&KҡEDHBheЃʜ$ U ڑ*ÑiΜ;* 9]Ճ!pz!2i ""LSA 'AB+ S#A3eYa(W}$"񎡟wr$8q5 )ҡtKz$T,b y/3ZJ=\dЍk`!@U$tE%G*[ӣ>mA⢈A" >{ҷ[6P>}4HQK*1*QB 71 $aa; IIj?I+imLUOMDW-,CǥsO31=I`s 3;9}ص.LOOM2eԘHs8܄MOjui |sTˢ)INbTvֹqwNh%p>YO:+W$ Mo6):NӪ>W/_S ^^/ :>^b+Xu2d,t1 $dFJY6[}4YAF!QR)DNCs3mY=]dI爥?J!+&7cK؃|!p-z!*a}gN6W?5xo5e U\@yxۯŬcA&/PQ,f#+ {+LΔmSt9Y"\lFˇLTZm$m:-yC$df໳ԚM IDATcus>mn/]M-cLN FGi5ZcqkisXMؠ^u#bXm DU.P (My7+` 2h!fhLpFrv[d0M##c];-vfs)b=ӗ9y4ξ7zMU! pvN pvgVغBHD(X'l2nGw9=,t6ȇDb=7ipRFki-(*T'¨ܬ8FBjJΎG&+19>IozQcY&b[:1q:Qbjָ{.C'a259A* vhiܺ"7o_! tqt1 =NZx|-orw_}ۼpo-i$!*YMف6)rwb֖\qz?'ı36o J"R ="Q DA#)*AЏ#HBDQSr'Fj# |s߿E9Ⱦl' *a6ۅ,I(Kׯ!YP hKevc2oa2jXvMsX+{d߇b{sȳ{k6|ܖG/"gm:}^nw(mnpw|=Iv΍W^ñ [#ݗ!K7WyOً\}O71ؼAtPU2"Iq0&Z q1rf1@j!bdk+&&e"mVD"^O&tͤ\,0;7Qi H;HXbn Ĉ(FA#B}h]~"ɨF"k|s]wibr9w;٥8d3&9%H$TXD"JI(UDlc*A IP,>OFr`ZY&#mʣH' ALF%(-rINdx#0M*r -upl; B:Qe)0ETD $#IկC[0T/yͥe%bR{8躊3HhE1=nz%b[Yv[YS!T%XaTQA$Ìj P'Șa``rBʬR Ȇn*@U@y! Z*aE&'-eȒ()0\_jġ:|KE%BM;Qx>ğ|E^.$ۿ+PB2#.Hu*"1 { $mcI(rB$LG3dIVחu$]" aW6vw/]IJ6׫Rd$쌉,nk"?`rr 9z$0p};Xۢf-yE^͛$Nr);kt/헯 Az5TuauuG/0 vw(Or;֗WXmPXv^t:67pbwo\#W,m$tUFDj`g"Fp qR bg fDH`goHxѐR9O܁GZUynާZKdY^{uLfe?qg͗h(FGE9(z611]ޭ-%WdmBNCbC (`:3$d&9V3gNrۡ\vV(mq{zy ]i.HLMuT*loFqH\`Bn U !{IHpY &OS(UBTjܹM`a(o]õ7J%'(sT*66frL}33l1p*GLgcA iV|7޵_voxgGysM(Q]B"{mDq3x[Q)y1Y]CI|D aI2-uv7 ]9DN !N$6KR !`t Pe0\dbd$! E,ع,#&.Zd>#.HЈISw1S' /Ȧ0QAc3:.2D]2,\\ª."K*jI9,ןG65|04F~)̩鉀 O~_pX8 5Zt]m|&hre?m]s9]'ti12]畯?Nn@#Lf@)+HIDLLR#oAHB(='diW7,td` -U@'od/#9΍A9dMAR,˨JPh.oC#jj@-TC&'ڸ%JhPB?ܬ.I~s.T*5tB69:DC|CJ ӣ ℟zz#9r&b0np}"$EAF"k% @yv:Ø3Gfi=FM'2 G aQz2CpbTd" q<:ϦaHT-h@\A$PD_ U'?'! ǎqc}{'_AUd)턈X0i(#A5ZΤDLK2^*PbTDID(ht8͑T>E k"~W==݌P4^ iՔ2}f(G膔{BD Q$@)7@!TPm~[BRы:O<%jm8$ 4$QPHj fª?}: .r8eG!ia$IRAIT%KD"b秒[ YWm}{Fu]ʬnv׊ġ Yr E(04%=h2$^u|d-Paeub &'ǹ{w:Aa{v?8:c9γ_=gٹotcr{ ]4 ' hn[[̌4 I1 8&$iz8c$WlhjѤR/aY:}zb3 PM15Y_$[BDhF$o{>%}Ue|tޢR&H>k.; y}g>8[BwLTF6;KHJ6F.ɓT6TEAufKLo|jD\6lAư},bnv+WoP+f}ߡ\,%oip6Sc|A6w9ud|?|%Z{M"kqq wH"6FjS) |a  6bz1=JxV3\X)mJ$TGLzn,rST$lZ"Q l] -#4z`SO̳& C,3빸N~uaN@8 #VAqܸ˯|~D'Ʌ,ߧJRHiz~GDYբ8TK#e(@!a ǦI B2'H#6H!z5 $N( TKna:}o @Nj8N͏8O_$F$)R# E$ ޸C=}x꣏6:ܺѳ"?,abӋ 0y=TaL] T*֧y_GQg~'V$xxssDzWȄ3-sbz݁ޞxY85 BġHbӫ8MGW@,GW$+HQB(8n'caE1ʹQUI!HB^?D|G餡 {UIUf[8qj. '3Y$`vq?t~H":&13#%بHQa5?) )=B)II D&$0=#I,| TS& 43 M?|ˀF@*BȄa@>wK t |4I!Ve\Oݗ r]ou<Ę02<1xqBKۺkKc^ĕC(fuIS<,)!a!"%H@So?__|_~oi9*3?gd^eYX=@ ^4}t͢Zz8Xp*4{2g.={K$"C1g3MWf{/s4I".)q\'bύW) ,?d|G/6fee}8a*>EAN8u,|⣏mXg^@ɛ7AkLGUϯ|gߵo{Oebi{鸽3dtRGel̜0;Uf|̦=$yIRd3XQ)L4 Μ~NC -Ƨ n->Q堳縷~or 'bkkG')m]eXUN8nU9}A#ܺ>Q5Z×Ro.qqdI;Cv;:2?3Wpr=},nebR;񜘻 C9j)S.提m}O&"+ tz.`*hK5"Cf$Dfjb6٬੏D #wuH$:S=3܌Q Rg?ni\Zbf,NXr$FH#tE(i2Y\>&tLQm!J:R%xnr.r̖,F%!'"- Bu qhE4d %R(v!]cO }d;$~8T&bKp2"!DrJ3X!/=]Ck9VU]n޸*j~$C"й ~E['r#S% f*^g{e4=oS]2޷o/!}5Ag0@oXx3,9KFf>A4f2Pz'DS"!JmL6ŜD^x@WDq#!kKyF|kX~W{27D;cQ!T9QhBbBhhJDD$Gfgc5[$Ib&YT]- 3Y U44/ȿ$S AD6Zv;1ٌI}g~]9}CnMlH6}c9;L׆,6a׷U\u E5_ {}8!z P~f@gI ;}$^hiKSSV)=A%U %H Wbqdrww}Y=ľ >au0e5#$N‹#ʶ1l(YI%"Z(KhMeԩ*>9]2"CK6tLCAd%IQZ)`* .LDJ·nD^"@@U,E|(ZRY.Y)}+ m2î/>9ɏnb⌌BL\BL14ཧT%BbC%tWh5{(1($GQTEEKA~IiO¡ӆ"[,|#̇N9LO%h8nz8[[h'STYBQLZJ6eLLѠ^bYR0`gcc!$n/m #Z=.Qs{ynR*OM%cxeS],ff&udjc)$Tj!BT67Cs jeW!1phf-GO뱹JVa]( ߽L<ҽ+TJ/˫kd9TUC, A c2 m.:ɛ]GF>G1NafA2"µ=QӀQ|z [7\ *Woݡ`pizL;֭шRq>0-P=Z]d)B 3-g5$M1M0 !DA @^)!IUo1U{Ud3-s]UsYa&I*Ix25h~ $"MLrA&Nq 3A 8qұwC+KLܼ&?'?Rw$wHw~ƭ; GF^?lila3COQ_J]# KVNt"?6\N7w5HR1V ps&YYte7L"~KYQy(=hbU2XJuUd ^ w?{L[K_*Rݣm2RMjZ|#h0<}HM)k3P$)dÑf"%੼$o lKK0Xls2fRplmؖFL,WR55ij]-E04{H-B(p|6 ,""di1ldQ)+o&TR#,2YLLH>: ycv *uyI@4DZ;;H>qVCCpј/>=~w'd71\&1iP7 ݯyg?5l'CZEUJY66^kW7htz{Ms*3h(JL֧Iu2Ip(˃ #L;$MVNOأ'3XM*\/q67ԻO0T ]&t{6^J_y0Èrʍ<}66tZt[ :60cɐb.$J s6Uk4;haz>"NU 6lo尵GkwAE$Ip)Yo}[ czqvgx5dhLã\O6SR Y]#ɐʐi`;&QY$!8V0)NA}J}+P8#Ȕ0PHOcOC@Hd簅[ F@y/'R>~_S+c!2 P c~4Ú&l{|nq|vIc$ԳP!б0l@wCagL)Tm p:+0la IG`v^ F" +H# EnylF H1Y!L,i202pZnNimJ[-Ewat%fOaLZ!6iu$٬12ڐ)VlR;(w]@3V:Z*4,1v|_ _O"Ҁ_'[7HUH?py 'Or.IZdyڢ@ht+/\² ˭wɚ9 #O6^+9l茸Οs}ɹy?d}mR~/>EN,4:ij~;'g٠Mwp9w$W^JXijik31]汇.JO Oc vYoL̸^珣q8L6;IvM02~a껔:C_q65PD|c?'߇p< /)::ջ y |Gp k ՗t鋤aDRUt[^5b ,#/ASh)()R B Ec1s |w .<~L-n&?^ §NƱ9,1.t \1 -d* #!;t{ F!00^,aM uoW 0qbL 2' !1Q ^姘+BqHIW~Ot[h#s )V֦cFהKS25 HYZÉ ,s:H3 fʰHbAAAD3bDx8Iے悒eJ)HR 1E~7Ѭo]faf(1Gy%.]õ4'W('%\pl%RZ6Kn[|"ׯ\c~nW_!S6Di3v0!n'Vc&JEQf[<^3{Y|o=89VXo{}?LH^m2.B'X\b4rV0؞K6XԋEk.:}N3Q,`Y._{9&cIoԡD,M?lrN,QW1Lpvɉ"NCR%|ۧX{Q@v֐?k55E.SP5¡""n8"WrvzTkY$42>>E %:rU=:,-S,tZMJ2BV 9fXX6g/_afȵF 7V*JurDT7~!i3ܹ*JikdEL \xȢN"HG46i}Aev+)*g0, lLayh+ȍ(%ば'y}|cLJZaK ʰvNrݰOf5oؖE/GI( b3?3R)Y&0gF.f\u{QHDɧ2"]H"0v4Ge,P@&m#J50CXbgP"x~8!/|fM^Di\:[ScҚ±c< lG&QTd1RL$43n.7*&^٠.kckJ˄x MSz%k,(b,-T1P]@cvk^2ȂTVFx81 Kcg٘.h6Gͻ)H7Sn–S ӢӬ02L-hʓ&^ɠ6)[`OqD)ܹWFW#c)Ds P(j)<1='X`u}k gNQ'`eJH+l+|ϯQ)D}SǦ|{՗_Vy2a% L${GhC0$WVZ3_~aX9+ {w$u~?A1'0 O<G[(T} |~ܬctP*&I$nZk\ץӓ|Q@ַ }JQY6Xn'Ab !,4e8Ip w,MAw{ip)zIӡ=^`wkz _U vIG\r 72YR(yn]>$S,!J9vFʲcln1Xc?6v֙fmm bnezjwXbb4:7^C#Mʤ$ wכ8%X۠Z/m$IJ wlR\c4p(LJyvvdGb8:JdGLTg6J:(t{0UƵ v9Ti\[׹Ǩ¶|͛Avڵg9sfډW.r LWF*E&g3KġA8~…DHft+d+gJv}˓ UtM3U\m2hm>}?Er.Ύ+W?")PLN F=I2?hbY=Iƅga)!~$:;!3S rȘ CэцGꂭ\.3 %%HJMJ@$#Nw>f.]^g?LEBAЏl IDATR"KIWńqD V f$H"D+ S^x96]$z.(}tvoX6S=عk/]q"yN {1=|g4<\G6W'Sm^`6}ٷG![$L5 F8R-b%e׷89ܱG/O y |Zv#DGO|s39}fٺݤS!G<#Ʒ FވDelBc[6m&8Y1G5dm1">Ra{>c0 QHq5qhyǎ11(Q#5`8GWXݫ:Zlٔͨ'1\Ic! J RJ3J옓|!`olM80曜<_D!߄"1ț)}šBjҫQ``hE ihhM|=6 ) a2,KMi >iZj!SχJ{˵hl-g0LDM0TJ"2XJcE%%w0#Xi EtS$Q؎偰!lp|#" %]_ 2hDɱ0}/_{XfE*qPJ!hlgiŌ-p)L.5 i"hhj652.dM‘`Ǣ-ST4[>:I tf)hA,66HXHAb7ka 3dO;j&CMc{3;^iu!b?oX9ĵWxfO|=\ (?V ;w0CΝ9?T*>_? gLn޾_XY\dwo+·Y3mxgeՊ}ַvW{;~?zK!x;,>d@d U~~LpZ s"u]t:,G]*+?~ ã0H1=M._ae_grb=8&53ضM^gcc`?ʯ=tߢ69kwiv*yk$r0dndi1׾8O)ĥ8%_(Г<6+ǫā֍~^ \0e>³Oߤ <2^T7^elna9[|C"EFKǖXq\֒(0boT4oܢX๓E[,(SLt"&{/.spיP 98`Z1lopy[G6[|~\us`0d4L88ܻGCY=_QN"8ϟU'|ϼa/c֣ZS*b&a,8q5M̒M<8)w]⨋NM;˳]N+gЅpN;#jE,cD<(^R՗Z$ϋgѺYA $C*UIP䙩i6_:}- Ҋn&$nĔGX$#ڴa[=▇]}v&ׇ1B0,:%2#<|S̑X[_$E[mFHUCtɄA-p)%Rkr$ Rl֧?ctcpeuZRp]R5nR0ch_ 2hӿO1WO\&K#06pD;m,] ?p3erXS_xiFI*!a8D&1ee3d2,R(fQ*#v۔_qxY47|"7ؿ0jy#n SdNa1л Ƅ-Cq0W5o bC+ Odsan2 D2DcP"cLHcٞ1i{ˈ%eH׊K!<(~#x8 L64&LȒt|$EY5^'J1& WY0D b#! MuKseD}SL,Wd ,3'"CA!'=bBLe6h?o`5`D5țLuz»so'$3{N̞ȼB1f O;655$QvP޳Nn"n`&_}2s5._[uڝ!͑]MΞ;Q^C/SOt)+ h13s4,bayͭ&w7bMrA0HS͋(T_| +1 tƝ[NN4# ^*kk|^ bng&Uvi4ZFTK5bQsiI*ch nBH ш]|ߢyk<֋:C\@:EZ#[g|\e>3:x10!I#FqDlm6>/^Dʗ $Et ]#O|C{5otǎO073^|NbݡVAN$q`dva瞿Lf'~46dr5;TyG:! <+qx A͕y; ,z!FT&$$r9t&1([6I"ibgc%P(ek 9A?bEv_.W.F]2ۛ *P4C EVR( 'N# ^:LOOR;llFdc#MKu5ݐtG\vZwIKS4$TK.7-<rMvCXFFӄof02=o"Ӕ(*0lqk>H$C|Έ]^`ijڒOSZ?# 񟑤H!R%ZCH-H]r9z2i] i`)g}],%I!s[Kzb$b;.KLHLUJMA[$(ŸOhaBJJNf{8FIXxo 1vhC}7BeL}:݁E۽kX=ο`ŚAKXŇhwlnntX[c*۷}5zDCA1ꓦ)n퀍NS{-?5BX!z,o˜ %21=|1e3>G&F.^9olNM#ϯW@i! cZdM,>Ljggv̬%vXx %xc0yGx$A:Iy'Cԁ. ,֏13Ӿ{>S^, 1ꨪ[jrDHH󗄐N [ȌL.F($"Ib/"Cz/~]B!98U݊h7vл-z kt-I5t𒘱2DZJy"$up]76mU$*rhbe3tw>O&Z>N*Tځ&BhPR"c,[( nƢX XmrKҌ&lf(\RAS`x#D#ǞؚAMoɰA`Љ)m!P`BuC@ƲyIht" :fEбoG68a`d7e[H[##(` IER ( !MH\M\y9*{BJ',M@]12e,@+!خF |S+4PcpKUHKCāՄ~]( #NmD+ Ql{65ƶ"dPNyC%ΉiLz`Aa& h(C;l#^AfX 5Ky[~|@! Fp3(㩀H,"d!=^ h! G]fvD._%`fbZ}C4mDp}gg=e=y0u~(woHOaxjIs+뗸E̥K1q|R;w8phm6x<ȿ;q}O8_{ǸR 77*M4zGlX[i2?_ab4dq39whyp\MK޸T#?6N<=gz4͍]2͎#C<%S>9SDb&#N R4!Q6b/|y=2و9|/D]4X8IFf>c$`G`-J*TF0-zL&K:ţX}6AV#"\Z}[DIA sYz!~= ݥ%,Kbl\ls8$ah$|˕CAvx Lӌ,R˚ zːducJSL U. =l; vc mhKjBRciH# (:HAJH4„Đ8yyD7I"C8đ`2rv[H ό3U<EZ<͋4|ꑡ7p%0M֊[uڣ㔚>Z3Fj$8!׈Y4T HPIZ "66F),>9;| KccaY1$K1*6*Qya+T/L@؁7bakKW4DܧQ%`Q#u% 4/"& SbIz3c12cA`hĞ@&l ^JݩLƤ.$XrzEH)!q 18DD8"DaWc O?m2if>ׁ͖b^>A)ZUI@[lBFPWS㴑kT(5v&(+@y: 34dElF1hT2k%|2M< m\qd- ~@ A hm$C[, | mz,&drV#iO9KqQ$f !2\]KJ^13=Y0bffsy|յ N=kNEiU~ G'LO/20C"aYSqcivwDo\[O>B}7943f{u߾x^32< 0Qpkeu&Jr"1|M8{QJEAMBz%(! #0|Xޣ/$ #,!:圍LE!"!D*4 J)l#RGJIT.p Ξ>ƁI}?Ǐq5mūx:wuvѦMiOޱbYf&glmv!`& Lfm~((Ƙ^ekC;Å_>mbK1!~cۋaHI℁i{ -b %kMhA,eoM&%ydI$#z6(af|r6YG}ˡ3]s/0}R;ȑ-v=7vwaΠIm80sq#yfg!1t cg+CiZK)GN6˙ǟSۦ0:>XeP$ĉՍCCCQ~BQY掜a0ޢR.10~//h6n\bcE\dbL,?iFFFt09=*vAn6n/.fjS}{<[3G8G8d nCP&Л $NqP{6q :2h{LVӫI|r~e|̝Tw~S\r31)x).fk) ^CO(!*hC.W$ɻ˯_'cIRfr|/Ҵk=G7\2Cn;(?6RZtqHH2HMdah5i0Ɛ/(B~Ji AP)ٌAHDHDF(hzr8F~ߧ[_KϿʭ׸rqŵuؗ`` r#4jU;;0&)㸣 D>|Aw?sFPBA&!$9r-"QƱ|\YF:b>]geesw7>"i6 Eɥ- cqNzVߦː喐d씮UY ,l9 Œ6N*°#[ȓ{@P_WyH%!1=*ߎ^Nwu:Q$A2'LӶ~&l X#lRYƒ1 w:?hT G"I@7 z$@!RN&M 〣 VHL*c "Ԍg=KsP"bnyYfg G+W۠Ph vNRJHh:*~#Ӝ̾.ivCDcȠ#F@v&x^sa +訐nTm"ϓ؇$h1EwQH;80 O5.F 퐁nҨD 1H*f"!)FƋlm` mlt.|u񦞎-뻺Ŀw]1΋կ]+4٫n05y<|Dq9eūܹ}G(}k`{|l'U`5Nf+|Niyp dq&dm=Nm[ 'Xtla nWPu ۥTBɄyǓxkLMN⸂Gǘ?t+ɺpVUpEN9+ )Jm-Ӌ}SŶ2daVs`({uX@ po Qd8* V{:I97ǣO +t5,,&FGtcu= E2N\a//Gq k|8Kax;ǭ["/375ҝ;ܾ}#G>6Uuj+Cd+cQ#=sg8kQ*Nb<L`e󌖏ӪmI *3~'\db bd"%F1SCrynH0>^F P~! X[Z(-Q޵^~_2BY@NCwj'BjMD؂*@!be*g5yAzɂx@8ؘÜz`?-,RY ZŘd@Uؒv=I[A:v+H4@o?h~ .{ IBe 7h769$BJju + TNCtx?6ԘXiu6^fu6QlooqGH 8H&-"? e,Z *-At'IMw7\!80=J&n3d E87rKDh4(+CU}f٠ Iq\T$bEuEoT]f2/-˯w!{ }&);Gx0B=LMR>`ZAْ1DF3 R@X6J)FIE HɗsD׿]7>kP6td3Qdm>3: 6GFp J9ԛ+A)3F$ O$³DQM&gI݈vL+=V8^ "{bI14_7T/7D`JJNiDŌEj(V®!QoϞ̍ZADPKpAB ,Ҁ`l S'l& u*),v>݂Ȑg$$DZLPy;%M> Æ=@VL,G~SbTڑBRe0)m InҐLvP`{i&vw`Z@P֚Ř1bѢ ]pab9C$"v𭐼z>j?=_ULSRK؆0Vb-BsH pѣ,8q$+ }K< yN֩_J'׾}'>O|=?{^󾧟BVO9K`fzq ,nw+~m׮M ^.\_NZ9{yQebz{ |zJ.eu%9Ƶ$cLCoZ!I(70:LߦH-yܽz~HRaj|16E#06ʑR!Zđ7 R*Yk1 =%Ǡ}@!s`J ͑C21]d}yR+7|[pTq ^]^"1sGGhn,>G?ryk/µ+;9|[[m , g+~_*o\N?`";ʁ Z\Ռz,2Rniu^ Sȹ Iql@;\ƭ:M޸L ȸ3s^L.;ġ{ʴ-vpCG鈾tmB6O>3+1/|O˗}j'_Pu*k>-!uHb$h>;Z$~ae:}o=IxF1`?탈HtϼW_?|K d2v5##ZZbl@Ѧ겶Ef;f/}<~,qsG)z}:E'ܺn\(QbaŲ\_iPv f)ꝘW4Ē9]3:mIЏ zP X^]yir#-v78XAJu0?! >9^?sz_ePk i&FqRcދ-$g HБin.{964$^uj5^%xMj}i(Hfxhuc !5Fxh-I,AC3 2NDpwBs`@7oC 6ܥX&)90;wvJ%yߡmBIb`p' Aꍫy @iX,v97AH!/g"NG/Om*&JP@]*gPqL /lr^/sʸ%qnHvt@ݏx*G9eا֩7}t!q'8q8#G脲0B]EمؤE)RΎ!8 y+͐>wOBBǶ͓=yf"'}q<-ؤ7MpV{Jel:h:;āfAËif*mA-ht @bq -M$ a5diWC6P i*:ڐX` pLL0 7XeE—$FF DV_wS!v6}ĠTĜ9fb;Va7NlkDeTGfA`PV.v$ۀtHEjB I~mY~}]yX2=Sc}Hv`# kځ׈ NF"HA (KKChC6sL^` hľ2ca Hj}Pǂy9- #Ʋ "װLR8%ܼ`t6OXYL`%,A$$4O[ȧi7?n㮎y9̭W:M' | (1KKI7y o3?3ŽOpρIy._`z-4'ej\ώ0ԹvaBo/r!>c2i܌Dd6kԚM,oI0bMU:!O _~b!| _[{$S35ڼ%_sf ׈WYOh;4-}ׯ-nXu)l0d,ZGqu³/^%"$v 7WP2HiWqH%clȏ~S\ZT'^!/{ۗ.29[emOa6ǨUft/>:GS'*y{N[u87GrelN0_:O?D?F n]k2:6LhtcA"RG )>(A腄AB9JyO|t` ׮`._s$k;ZMA3Ez݈w< ;]ZťLLKc,-,>BU,+G4:reh ,@d>|Ȓ %Ŷ-f37 W'4(?666IuK)atb;дhr"3 {5y&GCR"L>Ib!Gؙj,9'KJHcC.· Vdla) 賳Ay lmb,"|-Te!(<^~Ut^mxgu\ַYNmAդ^i{lnlhckkFzI&A9K* (4nkN;6y ԙ;0OV;/doAneep|,[Rztk@#d$. TW!;8QX#W"Cd6G>1G${ "7߸CTf{wB-l:& ZG<n][q,) tZ> 9 7vR3ce6͉80nǑ#Ǹ: Z$4}J nZ ^ULlAH.]Zg{&B bLidh\i(,#`yeHkfgL)o/r(\naiFPU9}QZMJe7.q}A.S!{gX^BH7i[nWz[[|q|fE33ps=G)q=KeNar!ҭw(Um| ~\QpML&G707S&G& Dޙݬ3x>6{=~uxlx'}}??Oq5L(C/f/+DPmg0QDb# HЎK|{A2< ˑX*K4AІ$6^$jniFA#0Fa CDfeRwM)+yޤlItZ޹~ѣ{[DqZH) =6& DD0 dK D&2+|La9"AXx^$ś BGH3}c.53JV]%A DD,@m1d W:\ldPJQd1B*c(-)qyUViĤũc*@h8TON'U-)iN!Ox}6`$6t)גIt^#0}qt>:ۿ'?hsAd&k("zɀV\oL`q&v>*r(,BDIX#2RXBE.M%ly,/ccc udzrb|]vr5|,Q)YDQĎh4b+4[ͳtVAeWrܫ9z' 65W.Ť%:+Kg| W9}fm͍v~{7?21{ﻗ{pm}]|+oQ(OkcdŽct nݻbVWh5tiii<2GoǶvZM߃ BjE4%bju>uqNCZ__[gydv+Tt:N%O>WOqTǏFh=ڎIBoqBvw rqP(A&Vo~e7jPp݄$+w_?y p~QuA3SY'xF]qqͰc8/_$ \%HM1a|rJ2FtISQ_[kM:ed9Z\nuH(#ʨ ;1,9V吽ͭUllȬCږ+䆸`heh,It3|EzU^8$Ϝ8 '_ H"MI>C7*%AiE.QŀC"7 Uqݻ٪5y\ziD^[èa,B C"ZA%JIjvv+s irҼzng=}' N)j5\EM H!,P= \vgy+./j>+ngXF#>Hz_l,\dr4;Kvy8Nx3g>Dow*{+zs0~4s{VNS.ت-1>213׾4?us/Hc1Z4r둇yW,lmma6QQd} ER1V4X\/z|;F#MA"b)>qh1B\a8Jb޽hZsEڝ::emYIRan .^eq2Fo:Ock ˊQ)RF5$VV$$I$ PiaDTPQx68iOcv/gg_\`ttGy+cc2KK(M}MoRfjj7^Z7yC\e&=6ך}!q 2 \Jmrw8OweMw}÷fumFC>`vj]7&*¥6I/! {>,aB1YWE~f 2D D!) N_X eWbM,3kyG_շOas5eõBIӡA u=ᕗjX9 ),e9$衈SatlB D"iObbATbPqی*0%?\ZdZ JmtP c4\`8_5k^G׺bɬ[-PMLy 6(#4w`__w 94$1G=S#Se )rby|Dv hiEL*"~#>y;+|3|kO:{Gl1:jy,՚H xlUj")Wgs: D|F1]|e2w6\ ˳ɉ<[[ ۰v"PJ"w =Vkaa-?׾?1^-,v&$EX6j %^9 A5\w?awHFs2]`*xQk8I![5޹ E@/ф)t^C%PTRklLN{=쇳 3w)FdJiMqLM3qNjg2=m̲.>XD""H"I t#-,ElMCs–Xo(v'["-:C 1xeU4̀Xeu4$hlRe JB#^]&0I# Ŵ 3q0.&^t A_7@(TiBbx A%$H*Az`ʺ'RH&av4sq['Lpeh*{gXoxV-eek$.3tYZγ7pa1܌n0h#7OjĽSA^]Sփ_ X (YY]}{/ϯ<=xo=j/D+<68͍eΎX1kHM~-AK1UH ք&_I>q#Evms{T 34$Q}qEwcH/Y:HR,8G.p<7{@xKq,G*RcF#@̋G6F+lb!x%+Ӥ$/V8NfR|n{Cj`BYP }y] )IlIm$* |n0v2+}OhDp/YMʮ[vmJ\ztJN@rIr|'k)R /Ƥ*|١& IH7{(WVvDe|q#R4qJcsmE]mnqLz[F0w! '+BS7'։E) #] =M$>SS3t65zQk{xF>ILmc[ŇbOT>1݆[w{^ 5a ^qϠ6,zzۣكNW#EC3lfqBE(1.9 dH"7J!v⵳>}MI#A84UFDCeTeRMD2NLѸxxJf1|p< 鴔wض%qPCѠJ#IS3T?es^"FZ@=g]4DD k(l{=4XK#L`D \*\HPDiHQXRcst̳[(l'[an'\74BAhlkuXY,_Mlf(x'|#*f(>K%kX0Bt _R\\xlzB)ot2'VیX]}ϲs~_W>ak8{n^ 26z$145V\[胏\Iq=qm;X]fūt;# l47۔; Ukqe;Gv4;g9u43~-r 'O3 v卫󓌍WlLVXZ Fi4<kͮ; 0SVi5خ@Z8LN "6kmginv)4wl9]HP3)GA@ɵRTT8^oO`'iaR4EI5CXF EI1/THFra' JcZe64`eIt.}# M'pߒQC?|/KDƊ$6$QV5ܰ:6CBcs5}"\y,\:h4;ؽ{R2~qGcIɠ/ItH)،lX6_L[8莐~ȩS WakhhjaǨVswq~-Rhb@@ !' TK48 zcv%!w*O"efi  ne!,ૼnk]`!aТGjRF!7)m ͌0Qoe@G AOρ@a$Vo}C@DHE*2b2:UO 21qhaB3 @6 o42 $dvFD ^?x{~%[nVZ6NQ9Ji!L.qvnnRa7c*f'j|4%LAcM2F[\aLbgl3D,;jf|\sxA+u^|i6Vx?Ay3/3YYZW۹Ľv+2T >oc')أ/_^g8G°t4ػݾ!&U`ddwxr<|ߦ`w[d~M Omجoû8cŅ+t{=&ҵuTܣR(h+4^gk}D+\f.>.FEY6O|ivRY a,,bIryvM.Pq~ 7=@j,B)I-~fn:+T6Rċ'/U(w=t7Gv#m>c:*r@h4`+ϜG/_ý+_2 '#~ql(7pdpw?q"FB .aVY.A< SH}zACR S۪V' Rfgv4{#1t 4d^iB3H6}7%l" IDAT^ɹH鱼| Zg$4HǑaVlS ض`y~fZ u=%)TlǠ`dH.˻xM.G I/Zw<|}{O'O=y~=vb|,ce\wkr۝پm[$&GܤXt@t~ "[dj Ne]%Lt:U:4Zt(%v{.)ez¶efmAl5<_P-9u,S8{$i57)c[8O|NkYrLy+GJC:E#I2sDΟKT/$J}E3WD[|/Sµ>g#v1 IzAN|V-8AC~Cu~`ާ "W1`tfi:, EN\ۘ?[͘ ls8ϝ@\V|EJh6r9Q@T0Rarr̄k٬!|ok7ů3}KL g8&;LLVz1Q,a _|.>G7P(9}y~kپg;n+Ge_i/zK1zvJ\JT'RZ-v`c@pe/|[&ht|_0=N8i/|QϿ=ujO//GGH"|`]3:=<,F `bMò,nZ{@2IWcq}C:Jh֛RbXO/3{%l8D-gV^X3c&RلQLOOh4nLDZkb!č^+FF{ ^KAS1BB7 T x²"O`ag'l.GWw}qs|K]w==H(މ6FX`6AzƝw [e's]Vy[TU%f{B]`tv7~8RWS\>]cWQ'u3/.S[rOb!^?P*8~v = =ɱ1۷:,y[^dÿw~1Z)8T*Qu<1qdU * JŀW(ZѪa$tpk"1 MW8F\-B<󝔳eS@WcᦂLp,S(cq,e ˣTs^GsO$ie*Zd+P2jЂV=A4 'kȚ :sr(d!֓"_},˫7׏7PCj7iM t1[K<|x/\Y ~4qq R6;80. fbHCr!!Kri$B`YeJiX[X+ViF†~Gĉ58x$Mh%|NA&q\+(= aD9ŋ2+Fwɜ)[P f|D *43vCt"19;G3'evLN=djJI0Bmw뜟*^@܄/h{rdg *{Hv ^JbMe c,QO-iD`A[Cd+ eCd4*TsKЏi1 K'at*3jEWUR6%a ZTp9D)H0D V)$) Ɩ„5vq FD$Pqf+thh YاkPiJaHS3tJ+ 8 b BT(<_&;4$1* aI< znK$ GFJ%=0"\OcD}6ˆ!1\[󘯷 Fb>vE?N@|l1:)hzvѱ"Vve2=F+^hpRC> X\OFGh/e2ZXN{SJoߌOȮm#˜)j99;pb@?cϿ8el=qp'-t,0O˻>W"l?~S}Ϟ$tŒbd0!J Zkm|i\EڒxBzE-'_Bؠ h31EqCIjQ LG`kcFs>ͺR)s+L T*:4G+s׭stiRpbZ4Me+UI`Y`P#FHe0rsX&:!y?Sc^~47>p$Re~|L"U,NQIH #,m G~Cxϟ瘿TC΍QuiksY_a%ffR9p{gq9:}E$90{kΣaqa3\0ן# KWaIIQߜgb2oM睿H>GkMX8NQ+$iٙfBOjNn=4|tAi 4 tƪ=Oma&* q\ p}ѱ s3#-& z]$\XiBsSa۸49lۦ zDqns@j4\0*``ےD:qX$UGRi:;w$,M TD+ؖ>,)>5;$99d%CL/hh%&8\a0D^J׻+6TEA*,[bMd~/l"+Lhp*90+Qc)tƊ=ǰԀ[n?z]R%0$[ s>YD(e$1ge=B)h,rCyDcȮ-~-VJ| BY b+QkYSZ)F{x\*B$Y̤2eV˖,R#kk[ ceEIH) c*O{ϏSHm-jVgs+68O܊nc Z {꒑Uy*$1",k KCK'O"W\r@ݗ 2CM 2uC?e[&y>سy=˱S|CҘȤSK޹ ¡.pi]|۷Sq+U 2r~z"O?˯|#Dq-[Y\\xRht_+cpx}I/~*U%ϱ@qdD4 j=>S/B ;&merY]|i/aY@|k63K &Krmu2VxxǹBzIƺuLzI&V OfL6-_&cf:\gk洰Be||=?~oqGySe8}Y;=6YSJ7X"%3͛%j2}}U4ba;WZ\9_N^y23_j7:CDK+zyB$ B-!IR0ol7wG>Ĥ t oE$IUfdjn{@U(Fbи Թ]>t @]sbiưͯ팎 ]*Xm@h0 )8|; ۑT*SAer)[}}V@ǞcynzG>>_ܳ)>[پc;dnzrm*~Ky>&yo=C^gݠi֏ ?@PvKlڸSӆ|Tr{\8sP챈^Sؿs3SS?[b2~g,RJLaE 4˰Ay *IW9{<\s3%=w?e;˻vΜ94c,"`0S6wܱU `&IN8ϹYo9]0/r͛OsU#P}w_CSGll\qi Zp&{Ƒ'm̳ϼLfeK/P*]./GP:#g}=d5C|y<ŧ?as}ηo.FG&X?Qy=HFQh)| Y"EVRlŤ i` Z-\ä !m+ DQFg,557>C>k&MSRM:T84~!?tp !VHOI8#hyFk,.'رcTi:UT% s!w!Af8wNP Jٵv=[wQΘ_` [5Wʕ7 ϑ,6l.r~Y>O_"cCzrd*|tʑFl/Zη4of7] &6`4 ,в+r8RS¡c* ( ?/!%&5ZXy#- KAȼ"6mSiҡPph6A@'@g ̠?CJ;y &YBM(ssifφW21 jZަ3*k̏%s2YL'<1;v2ww}~B-s]zS00ج,)&txQl!IM"^' EKuM?sPt  IDAT]CDۢzi+bC2qBc{4C\q:\cdp`M ؖuXI\uKvru 1gN,, ²l<k68URǶ,vf V?qI3_(Sbght]pmt8>n"8qBbC2bLb (*^İ_ j W .LHINN@f-2eH4AlPDdxPS_eII=)n٨TCe 4%K// ;PYD#(U QT*b#p̳4 Mshih1 4a!\]\hChc kplH3cv6*'c"ЗË}s"-?Ͽ˛I^xR% *I5"*UΞaaqr҆$ U)ڹ&i5[$P []ܷ Wsdm۶3p{۰mNMa릍7@^Ŷm\h W_Us:}+> > e~p++ΐL}{#6~}q.y( !;xBn<8S k7Le0*uqΞ}ٲaus?bm d]RbRo`vu7n )Fl'> _'ҙUK_|9{3O>to-l?Ks,=16 #6l:E26oƹCoy!?}9n<\BxIj~:5ȁNQN^"zU/39a%L5V l bkF:^2 cyyzO| !֍NC-l߾QF/#zs?X7Tc)oV̬6x 8>Ǐg˖4{!0+Uz\FItL16Fs^/fbp+Ҥ74hhV:CH` Ӂ2FZ8(bHZ%y']NqMű f?v1Noo!J&%K/}WK9տsɧ` LD̝edžG~otmIdlQP0"/Ll-eKYwm!STEFJ6IH4ppKnW)m2?00\˽XNv,b68[IBVYZAݲXW [FzNߵ<۪oG^dq8*A:FFRb2NdueEB̆sΞ?T*y(M.p v$at1!T3%HoR(Pܣ䨌uIDOBs'+a+/B`t$V05nB CIJIb(H(U`[xR0ӈ̐BGM12HB #IfMŅm$K @j-+P4'94T\fKE/fJΗqBl(nʕd8$ uzY1^NҊ0D9DRa SF'lnflW8I#⥤ 5 ^&$ENp[ #@ .SF ̊tH~cؗ-?J|}^>q- R Kl03mٳ2=﹝C7짵[rtשmͯһX]p WSWbk*q n͑ nf1 \ˢn7$ICJא6 ՇSV"McX<= ojXBkbvf#5r#,8 N?~2W\*zxU`_EǡR,a|ѡ:p!jt7]w׿5VϿg E\ףP~lٕ .1RP.1!cǦٸqkZsԫZ,lQIjY:ɗϮ-+фN/fc/ۿ18鰴Ƚ|J o)ZO*}LS'g9X? 6X?YE GV_d۶>=ƶ7r^pGٓ^4oz?c/(e޵gZo,2[w ×pKmٽ{Y?A6̶=뙞=hxUtڦPqWuzB N f!3ԇlS(pj*}RpGGRvIQX] @$WiN zۺ=ʽ JQ. :VCtz{oCGM7… x^?J %I;I(x c11QT&b5,,lt' t+T n KcD:gONn%KJ%(T,R,80>6o# o& 5;طM?D߶v9ca7 v]O2Œ02}gp>$RR!K*y5^ 3@ ńV]6IT[M a~y<3t,L(i*"$GJj Iɲ)%-lRZ&8%<<ϦV3>1eI daK DQR0jIPX&#IL*.91i46 l@ N)ɥ,̓FG*93׃/)~TRŐ}րh\<8j4.snݡ߾/`cfRjW-6^QHi8t.ñb :%,4$x~(J W] ~li!H^YEIJ2EN Aq,a ق!d u1:C 3 '1p b핑B@F= 8"S bJ??qbΠql~[ٴ <)j^u8h¨ԄUqjzH',rl1k2"Եl}ؔBeXf@kXXZ;mml*^$6 l*iiulBF.CqIcEN=jeDJrҼ*Hi#W=L0NFU3HC|7-Di8ÎFm[ :+%pܼ(Spl eam9-MkN%PV! )!$*3k+ď䊶4aaL2(ġ$IzEƸ tB.1c$32Cbl&RZ&2HS, t 9r!Qm+bcaq)U+0,…cnA z=v a$fb 3-vnwy)~$m#\kJsF)X|#pǏgoNёp1$odrOE:~8Ir?RB7 7筯ߋګ޳f|^~j83-nZALnbtLtV[,Jߤ|˷Cdzx;=_x8{8C{<7pw1V}U.4m?⑻K_ᆟ" B̊\~>8skomobؐl=;9ir}CWwMr!Qy߻pw|Fn8CΫo~4>oO18h3\ij5~N=ζ1bg?"Xa]e)ma:@Ww}}|?Sy*w EgyKDGE VA˼+0mS]g~R/"; 9Tq0^ V!3a~a`k؍e Q<1w/]}ERyfL(E&jSR:ӬX.]{3 Z.>(O;nT3ztE,)gNs;vl%Nz2᚛_'>ƞmsx-?'6U0RhA1X-wLm3y~,/Y fy⑻9;mlb@hFRN3zJad&6cPVuCT+}!PqJ$5^;id2I$5ȥ^F6pEYa L͟& IRh#EeYd',24)rL.ssG`ѕK'PTõ-<m| #EѵkV>֯?̥g=f3"UK4NYt/̳2TK*>4YܤJF 㖽;aH&%T4^Qt`PHS% :6/> VǦ`[^F}G6*8$dFje GŹ6N(T4UdXlc(H!I<46J`IY1Ղq4a`p]1LBJLޅ2&Iͻ`2mewo-%V^$JġMQ4~*%TYϡWC曹qH(k#]KHwArฒ4ͧdu\-oexF"뚕(b[$J(aKg4)AP(Z0IJ"?&~LyGlRyELvD|&=w0jb|&X:޿U>ů:%~?׾6#X4{wc-q 7t5۷E֍^p뮢*Qw7.ߵ]m'^vft:-H{6z~`v~RJR c,zq[w8B{FΜ8M/ )V6Y"EY" cD+m,HTF{"R")q?}s >qqNY 7H^\ ˍXfw$w=wVvJz =w39y p~4R 'ض}s3SE ^sCҊV߃)r/ٿ |OꝜoF1#~J7đYv_csu=΍f&k?OGN˯+G96r o|3\υ(= tK.{F\I+ZүoDm2d7p9qǍ穳iAL'qMJ/1RGQ&"K2l,|cqCjuvmFwγqoRnM'gp_7ʷ_zfʵMV4KJ.qG}G)x5i eH!q`-FT<`i.@JJۂ4풙J@kIVS XE( tnmU>` i]֍n'49qt -Rl8 xKvPeyCl^/y@v 8H'N mqF'|w~U_K|`M,u(9>crʹ3Yl5(X׿'_[nCZOXmgshm(>^JzwX6GA `6Q/`˦Mt{-v~ӓg3'8pnqS|Ϛ,em\8?dM: 3.s'XƗ1fCGckyGirtj͗2.3i7yh \|Jj\vya}4u_ܸpeܸa+wkl2j+lG6PY?1TFxA\y6|ʓXI:S3o(EKI5l5`bjEL[%26t;"lr^@:܀T*&!"}i__/ l86* ry~ _>ѧ^`j1{b]w9j6pU׏035ŻfBgrz7z?8uv)zYfd}?ϓ+fؾc+33\Y f ,u Woc X9|'H:݄-k_Gu~`xU ݍWbFs? 1 G ˼C,׮+4L_[9 }Kom47OԄ|؇bX^Clw3l6믾Xf0G{3׭I_@P[t\df}w~+)nMsgF\&X1ҎbwmKW84Ce:yM7C&J4T*>i\^osLJOvVU6ͬPyNVuv qx囕 ( RZ4VHʃRo73*ZGJA@'(ƏBؖK$k'TY߸kCH,6seB;w=;n,=$._D^^b%X]eqlkNjO/TRYy6,'V e,4sdaƻNqh;wǙ3G}~:CY6f2&v8wwݳF2cpu:6byLqDUlW\CO-SlaN#60.a[mfXˆ$8D+Ed$eO2ڟtDjOdNjIiJAĶ"}L-rЖͬߣٶђ8JS[:Z?=Rbn$)oƖm+RC Gc;Ȕc2 s%F icE쌓Tqsc}^nR'k/vR@DOqgH g6 ]q%dx6k ; (eӫ潮%<"G 䰳$h,ȐzBQkNZiVCAQcEtt;-i-)b7C< #BZFo0> q<NREL7_2<|>G)ay/3[ۃ2WixũϜ;ƙ[ǟv4'^ѩ5XdddɫSۜx AQrKfSGDO^A+,.Tٸc+Z$I+D]t[q=6Gq'kM%K߀GFF8e8o]au)dT(v mMmTr󘝪2'}zEDsuu~_Gv,7cvʾ,1jۗ#kb>W/=A٤QP|ךpL1&*>ۿƅl^s=yoք+>N{ YV'Hj@$~L58u{?f@yC 58[\y^0ӔcsYN;Vv)[qL. OGq5߿7'[l؛%(sp~g9Io\?͆-<&{W2oNW7~?ʻƩ6 [{vVVn^ءNGfy|xO?eԥ R^& )gV&\ s:/O ,K o hUسo=K!tl"gQV_G[ Ss$##C0Qg3_Ws+_zia>L,Q!CsZk~43ٽe+Չ + f) &x^T'$u]& &Vڕi}Z雳i.87*;ԛ16` ~&HaҊR- vHKǵSSMqr!Q#OTcE߶H ݸ%m8!)IuC,+u)qfzȈ"JqBެX;FF吾vH[ lb!4\ ˈ?ֵ >&MtW֜7 ZH{شrc[)L-ļsn GCwyTnf_f:,:X]=`6"J:U:m$I2qL[4m2,nlřklޞAQ3]lݮF1-S,'=YO++}d" ]mR#my+lްX rlcV[/_' a%1:n \`I֧{}_,tc"EXI$82u?,vr Jr8,a2\kRa{$@ar>a``ͽ]p/333ť9\7K~pRhZ4z(mTXL&$1آA F\s8aaN'ϏYo HhP(C>T5 @Z;[({ϳ A:kԵK v Z܌A'9ɣmUC K=F)m L;4 OI kkDDd!YX&xia7 g(Iptj!d.$DD 2+P$~>aˀCגL,d>! <"NˆAL6txG\dy-#AL$oS;"QƩ3hu#EywS[Yĵ3ܚ'yg)ǏێGG.S,8P"jO߾a.L3RѬS,ٔKEO=o@'h3;q[xy4uJ?" Kjڵ.,WQ' Wh\$%|?#e% S;~ăx\X-2_'c;XV*?DQ_i3n]#6j ZUvmߎ.>cuvoţblt-믠Gy~#ذ;!CZ|[;": {7Ki0ԕ ||2{8Swp'~U&gz}Nidsl{21^`$ /q+W9vdǦ*oe99飫{#G'>Dt$~(_x-+mB' 4C3d*iН}|Ȟu{x/NRdo[aXmж"'h:7\IuvϱRZhYBbq8[Y' 9=XMv]9Qp7lvc -ҟGRFD6A+[D&fI'dÈzX8Du/}staEvEj;:J,Mk!\e@U\K b`:qa&>ٜ3FGstLqC&7\?["Y^eqSݲ._IF a~UT<9i kiLhmz[6TCQ,"GinJRӀ :G J~b&TCe] Ullh vXuDMewh7-icQ J±iZ1\ $ anh$ LB194'~Ő/ Z p$B MI$Rc1ȗľ5WbLinFЩPe%`{\]Adb!3 Y;`eb(MC׀q\%h!VhknpFI!'H&LlE刡1\ѶvJ 򐦲j%~HJeYf!IA0N !40]6xX L m[3R1[w!nELES@,f ae\EhEx 6X+*,5  XXY^k_BnU{p7O2~ ~}xQ\IegZZ-H:6?[/8[A.9{Ev Gv zː5L#ӡt5la~/{ ("$o\[ak[Wq,7/p}T&υ7c,;vi&K{8<_̇C\}}~.C053K2x`]4»g/QxOg>n!l]W::]痾ƽwo⥋_crvlӈ,(3p|s- &U9f=4reVe׫Gٺg{7G( bM9uJX3e^>\D>Z6PԛuqǵlG+',XDim/t IDATA "Ig<㛀'O7\$axx JHb@)mW.Ra*L-$u._?U.^:IZ-l۶%njA9FqXBsϡC?q0ne& =4Z+ˎTR,29} s;^(6lG4hҠWj7i,iv>C D>²gv"7MFH5Zx% q`vk8JFSJ:v HcBcIC|`[yAIl 0h qMEhcnqyi>d ]b|nmX5$۱h JRok VQ"[au\}7߻RuJ"vƌHRj˫͚-HZQTMД puG~XjZ,,~OP7h14 _3#5q$ L[0dHbА 2yA YA16=]]LA2F#& Bitd!TzI&lK+ DѳҘȬ@gڵhDYi)NFҭA[+w5@9#ў!=&@C\UtcRxxnMy6" Q"_hj$2k/EzR :hQ,+Žr 1u#HhÙU?\fH\E1 BK Z>B\ aX{;@FQ]6v3J"I f.[ y*=DwﲼXczLȥSXO>0SMOBOy7b۲N`96o֍clٹ̫/~+WT/>= Z+k5z n/P05LIp]I;K>灻wSu9z"}yя/}52Ŕ2GAHoK!JΝ:trh-0D`$}}}J=T+68[)E6o=+_}Oϱaf"FFTZ $P@`,!;;Jj+' 6%A}Ust6OO𳌏o,,g|>HcOG_&ng/8qك\8Bݛ~l//>YxlbϺ6?OG\%MP믽s~Sv\$IK] ŭ I"=xj FQ\cE7]|?KcQ'jƕ!lۢ} Ŝy<q-\Yhe ,~;GL&^1(#, Dqq~*\s_,8RY"-Ba :贻xYcrd,>KgYXD8Dz>DX4:Jmbb#XchH_?vRu|}0hii4Xj96;v裏XU`gͅoSzٱca( eo/e~cCy -d^ ZVܵw|}?y~oJ`NJ-,˾9f-iX)uJŋIn%=av[cFZ@;jc;Nʭ-Y&sB&+cȬuhl;u Dq[[)vt۳(<ᶽ~n,GyOvj)j9k#MF[d/׋Nrd1-sj ik(9V̿S~sǍH)Z7^WksK;BV)c[*Wg+4s'bxyqK5z@^@^z38nۆT81hcLl&1:2q@K$RqPkx'˺ж#%pdB&r}d=xlL7ngIe,vceHXűؖZi8  Zdr]$H3˥YxLMzdJEq)峘Q8៹eY^RU >Qp:OCsuK` ) ꖌQ*M, :1%@:&,DZ`Vپn>vr Ku"Gsab?b^JY( m]D]JߡH(nǦbe tHd4I lC-iG~;t6& &$ ӴKSK$2ҳ"cr (AoBM-$dzmZZӮ A3^KVCq8X(H Vl$$ 5*qP7,L6)ItBLO]-'01 ATpu1@N"BC7Jm@\ gzM܉&=tmZ`bCf:D(IנL_oȺ],NV[lj5C&ާA~ނߦ qYB^{KJ6m" ی o5 Xe+l;ĩ'{>N؇y镗P2Gh^z5V;1oy߾{*W:>zرs3sK<]4M*MnV0djr'sajy~8f_Օ9pXZ]fqBS|-թis˶qs+/+Ș;0?9p/?s`vlȫ8FtZǹ'yC s>L2:*F:(ma ( ϓq$-_gO^#<=gӿ"3sÜ8CZ+V+-|/O?-k:S}+ K' &r̹ ~7*WiV|k8'4yd=ӝAa}+-IJ,mzVnux6:{0_@$Vmظs<*ރ8vc|s/2*5ue&-=?}G^i`y48F۠0244z1 bE`c{ٲmE6n$Wpݐx)ӤX(#q'4!AؿIaw#' }?٢R͡ь&[wWx#\?̜grN6ټpګSOownXzt]A`! I eH+J|,16~ #=qe L1 rQփ"D[(RxI&@%vtx(# $82Ŵ, e \ec,+@' 0\vJcss ${ֽrͪiPf޼;;Ұ|]m/ԚsB4aeĚIJ44nhS9z9,Aطg=s巯:bعbmrhٺ6!IJ#!-u|4]<ۢn*ڄXZ,cQ\$c&[U&jWm,e#"~}̢Uhb?͋ Fпm`N*]F@t*.Xp|;-%?emUi;c4kX*Y*MwkےAPUj$^n @ IM\Xh2-,Ahls-wft͓uWy>6Vپ{y B6ob~bA-+(Ɔ@k"%h#4(\M :JGV`(rb ;a24UC1E[|a5}QI-MQ1L*8nHƦYOeS]ฒ$t EоQ3+`|I)b Q$h\^s XY:x lDd(ԨRkBkLEk_ı!1`EDaXRÆ7ɻ$FCCA4 hȂ)@&pS{|,CeyĴ>331$-0 ^V~ׅF/>r>:AͱcҐ) T.7̺K<\e J).\Gs;&CvKT&}ûo,צl߲jNMS(J,,37Si#6KK,N/082+9v8I}Ku.A"Rq4-#/<ϙK8:x'V 0A4pĵ˜?{]{w/]˚n`3<0̮-̉φZ 8r [ǙWߠBqSAě80'OQ ]Lx-*cT+KQ>A_.8 { +|-plm^8FvSx/bo8͵#׸M|c-j_eFJ=4r[ϲnJ"'hj\:[|iؽcirsǶ}{?c6<\Swq$o{/Zt;p9Sty1y^x?iyzp$Žy=4f#eWN{'&'$O[6$dsN 6,vRB :P1p,HbaVcUr@oO{x۸riܱ- 3hY_M}3GiKy,+KKA6;.O~E?bl=Ռ oblt WOЁC\:ILq}z#3<ķN?OA.0;7 R:D/6r!\y ;[l;d>mw\=srN?o/oԪtbX-nHB)hb2i 760~KGDQ6Y]rlIT-=d3pS}FuҔd;KXC&RP 7²5qu3U= ƈ47BK$I@4 u5zC پu?2>dLZN*Nސ bX7.RL GAb %Vр-ec97ԯs7F`03̜!( \QZU[H$[+Ke{hYe(-EQ9psލ6@v+vTzs=~mZ((dxyŘvµ}A'=dXJ i*dO2HF3n{ʰg\iiTkȴ-)cEy$ 'p P~]oaymf0nGFM>62}..^ejj/U2RƆYYYeaar1¢ףP(P*1t/>R.++aHvL=U:o5CCCsq旹4;KgyEׯN,X\D3/W~7޿W12==͹YXbdz [ : Eǭjpo#܏뺄aH+4jR eR] ,+Y ŬmlS?vc~{ZsfO}p &nߪWf5f̲qf˩9w==E)~?ս;vAy+3l\,`7yU/1ZvyC:r 3iT_ e.]e(<7NR.N] z5x;'OYt{ FLqQO|Μ7]cCS-=eKSt+NJ+g$pN"F!r^-Be"ې$P|GWŶm_eh`J&=([nf+riqcwݏp¹Yn;:EsGw= Ia2u0Zd%j7hZt˜!G۠Qhꄽ?Z<4[$ S {ysL\.Qi6qv8`K'4ZE};m, omipEf.3Gy{_2bశEZ^Ӌ#^ὴmǞ7qB#vm^$*hX#$V *ĉt!V cq-IiB-JHdI#3HB2D gHcCӡ1SJQAC:ܜ䯿 zi/g{q[Kt`ڑ(bl+6U|ѿh90#5J P6Tmð'b1e l'F{ 7$>J A+|BIIt?)!3Ac2vhR6VcE7`.:(c33>\MGiv8th/ YPDZR]')it3S؞RMLHIҎF<OM m50cl9,u&JBwa k]Ny:pkle .脚44t:^cCOBDž6lXbmJlR[ U ˎGqDpsJE`K]c \W+pY2a@Hѹz]6m nq`*P(aMýʫi77ү]1?ODr{XV$JR4,NRDN r1+1|c?y$*jYqFF<9qpqaӒ4w,;4FJF-'dm*|SOhZ+-)]4"M5G`um۷6mAP$JV֚ zIu-.]J/Di%RfƭǏUF&ئal.H؝7ѐuoK8 (cb(ca*=C{CxL`'=:6OY B+m ;dC-tMbm>b K;7/Wu](¶Ke m1>W!B$ {Qn Y~ҫ*1xEKa.K4Fa` q&JiWp2.BThQY*Kk:B]ed5nFg$i-|RE7@ e2<9<A47wl_ܣt6kε}xz$Y;#[|!74]OdJm&%OB3¶i #C}w>j;..;͈35FNRBa+Bv*hvV%$w"7jJ$v7IUFhCc|ʙ9qt/n*_ [[lmoE4ȏO{oϿ>o~w^1syԤ,;bqm!,""R]=E6K#GOjjst۷'_ rlH(.w51[v3N~{r=Q6:MFs-m"4wx˯PtÇo2 [3_Kv[^ft8S_}b6"$_{<{zW_=Ç{Oj0|bg&X?{c÷ZzV=mW'}Wg{.#1m705Qpjh&GO>Le 7>W^&I'Ogů|u^{t~IsX\$^?5y;p3)aqi ?w ].\Xah#rRťImt#,,% w#Cv:xno?{0WÎG饵\(1b ^!'9W(&5!^ɥ0PD*:ąbf.xf^Yw g;NgWҍءa+Ek7ep4t6kV6*@+=Ck%[DT7Y)wj, ctt%[k{JjBS,S T9zMqCo=ȝo8+djr~-InPA%bڝ$ja h4&KEj[K(au#ZeTV ,8Ӊ]vH{fJZcVu52GmeS{&GY;Gyѻx=}\Z"H[Rp2Kd>qo>sD!wcy`ׯciLJiT|CIr-m mGP.@&I ZBe@ b``džQ-DnU"@&,IPܴCGQe$iFcc' <,''Qi,"L3vv 6X,7?)a @KQJAY dЍ26T)`XKĶ]jqF()A3Dꑡ!@Pe\wl# Є b"~tdI#ıA =f0Iz]7"g7>(,v;P96] c̀% Ѯm1<YX `L5dPo4^G+|ko1 %-A_ĿA=~=s#paKIGh/Z7VI(K,,!&뫤Zp7h6CX!"cLm}S45S) l8n`||VE`Y6I8.v0[s!$$g*b ʬ]ODQ`cY9pd hI3%kKl勳?ZNc!z47yo}Z Jyb?j3Ñ;x\nXcN?4G*X%#Óܳ>?'<3=#71̡C<~I~G~S3:Uyifg]J<;BMN[|VYѣ6;P2cSeί?ydIʕKte*H'xA#|?p_|3#$H #lEK@ Sn>peCk& dFB,,|עpq] wёML7s:$i,5N DzwS$yMkr$2g/8n#Kn Fb ),\%6/_Q4| ׀JpA[/`p05R0ٯtnV7*pf&Xv>Ur:,˓̮эߓ6(ǐ]Yv&-hH'T]#(; *E8^0@f%"cLѷ@ @ skӭ5ln,@+D4JfK֪эRz*1jˤYnqtd'"b,#2qli(%'x5c;t|HsktDW [6 *$K w_ MI h%Jg[T|XB3Z%c+M89I{h`lR(Kb7X. RlPp {SZ3FiXhjT(<:Tcȕhe4%cìzݰ082 ڎ؅4 Z]MJ&цTZt2A-T{jAB^T弛` : BKR6"AfvCEׂHc&PA.f֊@ dp843Bq@"|IC\,AỲ 1Xĉ&Snd&L5ځD_Ґ!7jXm68@V+asŽD| ojV k,oewc#v)c0"019ơCk|#9kwUK8`et#ayi0pםHߌ$ )@E,S^`6b?2bՍ-4H298fee4Mh6;hml.RǤF \$Y!d"!FƻieI)BhLf!}~y\ǣ\ pZsiVkی*X:ull(J̜ IDATgpaz"K9'¡ 5zh̏x/?Nj3l<{+l`0ŋ|剳J)Kq1Dq92KClf)f UHR"3;XA(+2KITzN.{taEdXZX݀4j|0eZ-6ۤ b4=.{ٿ/!FCd5FJlj%•&L8q[o_~3?Kϙ;%ė88a'ˣ3+Ɠ[Cz8*j],`wFHQm9<VWpRd)MkxkK\Gq# M;S8z )5V,Ak*nM4/-@b l]4p"ZgTt!+,/slnPID\جmEU2Z%dIZk@Kk&lj`E)pVu z"t  S?xr6`oQʫܱ<3;k/ESlT3f7/ qBxqg~yy<#cV*M.E)7S"O>)D͈Fs?s_xQY}<nuӿ.8xbT# "={3vHg՛rǸ4czIlg-1֓u9>M!Uh$(|jF:GKri֚/=yچZnރȽ,i&3,:i7l-'e榩=Wǎe~imvp p8XCycnQ1υ%i:~o`b[ EP2RI`vvvj)xAnk[idZN`۲PAۂ]VdIbR'e) lԂibl$҂(mPCSfjآlb~Y|XspZh9LhSJ ŒW:iëyC]t<]q(znr0F5X'J(p|yLrhAi,2)I[eUEQO?o._.נWA輾3t}ݐD7C]h^+49o|KJI#㋀)/=q۝7p^D?fxV6Ҋi&4hصs!^!,8]m \:Y-/b&B<_Wbq_\ꆤikY&׏nJP@IZfYƎwaJCd|[#^N+β׭+ sRH'%r)Q{f#!NcrckPcyyfmD8cu ؊A&$ c#EMpj ٢TSZZ}wX.V× >;w~5ʫ1d*17q[zOݨDϠZ_{?K^6nyv.?ʗ>&+7gg^8φ~ٟ~KۿÏ~c |'gTU)[_YwZYc3o!8qt nn`<šDZaR@OޟYTM*\r 13̅[,:w]O ]$(i~@jE0iY%+P{lFpZ - VNdE"sMTc92E&!@N^M PƐCD^7 aZtYkjW7$CXlImdBP`,I (zd57ϧ!-s-R:W:&|f,.[BHc6ɋO~'mt:)saYIJ uAR~7`zz붣YXXB iш]Kbmt|3P-8,1<?aq| VFX7T`ث0u6l[̸M1=~0=4K#.?m׎O7Ilٗ tG5|S[4k<,Uxɣ\~'zAF{ٲ}3{ T!3޺f.-%(ö&g~\z,{>vw=<߼xHJk >幯?Ʌ 8~U6ox/sK]NOsMĀ[,,a*><<3g_{]7򏯝 H[yb 7q07yo|Kط0k.&?x7Iz?(/]2>JJI"nk r 6hE_2>wM 'gݰB%J#FcǟF:h ءԚ,5%\al4JWZwpʰGO \Z}6'H[ht:L/#\ȡo8B`"AWȢOz31KXnc98[V+DՂe"tujRKtӜ>5yZЊqt"V| tCE6C,EW`ݛiuZ?rv 2M6Sɞt@J=u}{yImmS6\F+Fɝ}d!ŢinBBZHKt)4[5tCӱ<:qi/ћЎSB !Ji2 tvqon*s\:`~YgdbZW8s i@ 8lAfXFE vA$ ÖӪ# Mxf"2F[tB<|?0XIۊNp\yak ^FGCtE0Q)m$ŕ#}" 8ѣhL#[ Nůg9^ڛ6?U62ӆ:uظKyXܮ7o nz+Ə-Bܱ (꩗h 1@q^~'W癙8}0{HE;x6 zMpOurR?Ih#)R8$ 40C`LL!qRX >ZA[rˡ&6ź&oRku(MgٰXREU0h\)ɺ _'%0߀%ڵFbH\ekA'Mk š 7%ij/;4oxEE.rV()]Gܲx)s8L-Q* $Ir&e]s+b^HJ@&S\E16ǥyFF,Osm@>U} I<1c;sxKh÷_}ԗD'VyOzC_EzvnM[ws`!vƗͬmyO/Eʆlf:c|VjXaK|^./x1>pp5-" ͷ=̬YYL3Y/?ځn3_}/̕x/jJrMM-8o{;_<2IYoɗ-:ɦ\%N:?΅ғbc̬ pH/[ /PhT3't X6-!օ{wӇx锑"BSB<7Mv-6nqɏ-k6k!K%SݴG;5|rɑӯ?aϮ>0`/d#HCH XVT-RI4JEdiNuE2TSOSRb@FxXGZWH%PYnj# KHx6 !|?x_M(_E^}UM4MlR[Ζ}Q_ d5&`Pk)nv7YĽf9|e.tn9z`?T#ڡ),<̘' 8C_;*:<o?wR._yEηĿ 7V}A[Oa NLޏrU͇5/\_&D-v`aeťQ` z@qf>*=LL]:˾](Vyo{[*g80=ÆFl(-h:,o&-2n^`b(V(rǖa`5H\Ns-6) D,t`xKsծY_`[(?P&(0>G/ר]oƞL\sx܋Puh<Ɖ<#nG~p ZTdS%T0uaހyi@h5© Ms \C7_=y 1_3RHhe{8D@4 cUz{*T`G#D?Y>^X%v0RbHGӝs5qIB 1BK@Fb[$Jp,)#1J]gNhOR*p [eeAZ.¶sѶeu]Ә$f D^P- fgS wy9̟ಕfk.Y$%K`TAa; 6eK𬐞6fs lGv([Kh ~d [Wh8BP"11%_xE?*JX 7a&%wq<)ATI&qkyԣD9, CCQ.,ghTP*08Z[p! 68\O`Bb8=O;L)VZCHjN0.jX4dQC~/# ]DQ8ܦ (VYh??%IcC-h6l:uC D*sP#$Fm$ RbZ^ D, {xcw7 ݟ`Dt饴y7N0V^WӴlՓy>!r@0B O}S`I{Rh./4K`lܲU4WY7h5V1Z^)}?Z+2ER^cR4z pH)J8?7%vS10KPF`7 18=ÌL[,\or!.ڤӪ$M'0! IQB]!׃F=COzu7lGV3̅ebcT }_oS?DQD?UayM]ܔ'[xXYHV6bk=vsh8)ʃe^yrwVL0vf^rͬx97777nđS1x }ǜ9^z7ðkaVV>u;95G;Yg`|/HwaS}zCNҦ\,Yf`!lG}\\-G~+DݐTvT0ٳBN78p_"pi"AWfUkkEvbQic't vU4=) .fa>{xsC\)sE^ ZH"Qcl(3 MDbkyt!S6t m#˪$xݰ'oYk@&$i@đB6BH$"M$N"sٔÐf/d3 9 -HS)HE@4tRM (4R0`2=)ט-htxk&J%t:u #B1yuT`ZEЧj\M 0!-ϛ06$&Cd"@U;_flxq {Qv "J%^](FB%e33rL`e Y#v S5ѥ ve :N,Y_gbW8DG$nLWˤ^6\e;ω] TY{ΉMsx:`CRQ~%**=p?=+hR[B&ZBk 8ulrJ IDAT1NюX pARDћgO4BB,(X`H1 0Q&evǘtP vAP*XBD \(@JptMJyءexhzL"̄H%tL5J,Ѕ2LsMN,㇊6եKyB/& M+#G"CR@%E!5$hA,PND]q*3S9x7q5prҨMY4Q4&ͮF3ĩ u.$I~' ad.1&Ƃ0LIb A ȬKv+6ۋmf&Q^7He6\orIxnz;kZD7`ߘ%_ͶMd^u[WZB]OxyύV[}#ҬL~"~K ^! DiJc+@QKwhg=y f^vx~<>TfBe`9jef=Y8Yk Ra@>A\4TRfÇI."J35__ Iطg/;F&|m";wN3<:-l'c-Sk.* 8pSEDe285l;O[mE j-Haln^onx[Z-GIㄏK|Buy`6r~{grr%-}Jbiv|+@c) ?z!rPD~LDnN3[A&".Ap ahD i! qLPAdV39(!^9?!RNThHTl9uOMy"$Gݐ0Ԅ60 Yƨ$t,404 N@WP(Ťn#Bj){' cf(CTCT L V>09`ƂNU$)ލ^#oM xiB`Q;$~2@ʬ C$0T{)HoK&I%.!I))5YKf *b*J+8! S U)ÊPb^owJ6iQQBNPٍ/Yo\etd7gLePt?։<|" z*Gѥ$Vyf|d89 F[G A(54艈7|[[)9Ih+7M(T PЎҬyF `[)qC?7OՒA|0r%'X*HylUKQur(GS&(E ncv8$YHmUr [(*a:K 3]pʾr]&|a&L ~'>N./lr4w{%Ɲ\\}_ƒd}Ϲ~.]ᾉ[} qAé9ǡ#Ky4Z߇E.֛lڃcɄU.a';tz??ǩ|i߱a[0,c:2ipk>lz/|evshw|Uuxu.~,s#sVK,qb7u/|!E}g~Gٷc7Mx,29e޷;R%obr[9x?^+ǾH\uy9y]q;ɉ.:W7lbez$D Mљ?(riˑؔJ)akg#r2'w);=Nᒲkv6vt;408w0 Q6|*%|rq\[HF0Z@vr5 U;OU W _  Z  3P.Ja`K(RI(=8똦w=,Hbt+"Y4 9GN/Z։IDZJ*y=Q * _h2QILlD$QHULB }A#$J&$PDiayZzt;U={EwBǨ$<۬(yl ȌQgԱl^-(LN/*!;mb%$/$Llԑ P&qB3A""mhZBBiNyJJUV w9*$P!wҸ}4;wOҼF+#FT5$ЍLVZzA] x~)rtVPA!S JAN^z:hiD0f~H9fP;PBF,R*V'&UB/Z v37QRVZ yLfk/AI`H$ +8!Ǒ%Ҟm"<y>);wT PXY#Dщ獲5sc/넸7ܮ>F~|k߶5|q$o+^=6ÛΈ//8t=ǶԨ=,//#S{~^x$k/0-eDHQ8H&,'9`ύ9q$땄rLXhTb3Mﺓ/>R04Z452v#Sx^lx *9#?dT^Ĺs.зvsrK/Z#ګ Wh7{Sm L6"M IUJ)v5l"Mh ]Ѩ32:Nɟ=^м"~(~_|[Gr*6E#q.aK?mQ일a>};A{?nΜ=΄Qk3]-|奓yt?Gar=pa֘#p{xkWgc=Ŏ8跿'xXq0s-3)]f*oCCQZM̈́Q*މ׎9xMg/R)<3Nqɉ9uAjc'OQv$G1YJuh&Ƥ+ L{"{{cxk3 p0=3M'8Z3L6xts 4z91Js*eg? msGix;ue/dh{~~ )O/nٕev玑=-6.,RM (YZCS"#b"GY"%R=ahئ(:E|:5 bqeAjA$46cjJ 2y: &Y+frs~"Jk }TC7F )V=#V4CAiH)0 I"qRH 5c@]*NaZe16.,qY^::Ē9 4 J$1Dqz]y/%b8Nl' M A*F%0puCP2$Q)VF/2"} NM1c60%A()fl'ݲ,Tf1mlA$V%]K+W;oLU\IӋ)^$iz)9)@mvx8vL\a6]i*۰mp2N ndmTm^VhcqRe+ *r(0q{x|.ָb1:O 0WuFٌ=^{L :8$Q6Ȯ)EʎZAe$_?y͡z(aUQ1F{fI9׼~E䯁ur388Dנوc:/@1??NapDnd9f&4Y)]j5.e:&p~^ -N钤K.^@>}3|gY\\̜ʕkX)~]șe2ꆋ뺼ivV JjA "IB|'=0BwTIn,qRJ]ouAcii M*(##K]&ǵL :-Vv[q`n*E!~sQ;lZV_hbaKbr4<8͹3/p160WC߶k~vprrQKUJ ֩:߷sƎe~/|/stz+Tbh,Q*qr:RFexPCg, sA _vs3q{ 6 kMA,ؕșZ/~yt`$1GwTBg]RJ*!Pi&A 54'Iݐ8>$6)URl&MØ JE$4;-NQ2 H*-KD.RV)"#4$nBRlGa˘$ MlG2sHi j5G{vA2p4C 21 hA8CA(,$T FheB׎vRڠ` x4@):U SMBKU(緡[&vXnhȨ tܷBjt}a&xVGG4]6\!ފH&- U뮠Ch1~{=^t EuF:|kw淤e3KB:ݔȃv(TtEzZ2 ~#|]WXFw4NBe_Rm˖[IL2_b(ʰD~@JERdU̳sn&Mqz*‐5u)dI`}Q$>aYM]Ju/GSr+K4\Ei)^:毮Ɖ3;knN?ij$"ܱvjtÄ^Fv}ϝxz)_mV:63>/J0m۶XiMVE(Bs&fS.jضEm2t𧨵X?/~|qJl;<+5R8NERapw/r[(8kq-Ǟcm} <-e.vfãlmڃsXFwKuC2 /3WX`0,I,,]6qUc|+7x -8ӣ;?NRT͙ 42{]{%v a&৸[q"6mFFl|y{η[mo#<Ѭɻ IDAT9‹Lq_ZCZc|`j1sqSw:|۴uFgeiqzI&\y3%vW.rt6$  3 ̝8Crzxp9u>)8Ipɝ>̧>| {&&8=w÷NpKyt/34 *S<=Tw,r/$V pn26s_xY;y6C`_'43{O~=ܒHxFI=m;8JaɘJ=@aW 9IpdhgBb5 ijqbNSQ߈4pye|8>JQgnNΊ_ScGϷ㞃/6=!x#F CIC6BdLjܿeXi"iDFO4Ih#@ RFL+hXu ;ș4K0*LRZfshA}ӭy2_9qf-'!K :NTܘW7~1 d-;f7цz#!S8AY2q7ufJem\M XYl&E2l$:갺G0F/O>}ӧO>qꕣ^Nr߯ok[|# t}ӧO>}7@?ӧO>}ӧ7~"ҧO>}ӧOo:Y}I>}yk>}D"ҧO>}ӧOo:DO>}ӧO>tY}qhNu g1-^@(WN)/PJ@S 0rX]#0L®UE~ysNZX]]ErDqba:«]A`K ]u 6m H4zB>'cb4MQsrO؎Vř4G躎FDt:8h9IzGT$2=ں{*yIGA$htEvJ)M׮Bf{Va4EX$W(Ql` ۶1 44n i( \Gqs84Uع+LlFH-p*V H &CskwܽB{ʅ"2}|v(AHvT!b8Ʊa%2%  @ $[h14Wo]y6%+{|MO !=0abfR @(tl'flAG/h30\lJ^2XԑE `(J9,PqLy^ܣvx'LntDEw,npRoyӧ_~"ҧOo8PT^eYضM۪@@t>-23(V۶[)i@u4M}իW >a.TW&Ir9%IVÐ0 ([Nb)A}P 쏢*0rJBRazzɉ #PJ1hRvMfc-bqeYH)FdYay^FUCnU},*598I.K׺s>Q1sjIEضn˗2??nɑnT͞1Ulfyy4sܵV u,,,o[[rM硔b=0Xt\ޠ^.L.֖(|"C>я^24}rm!fbHm}u8u]v{k}SNȣג<n###ӧ/>}|c^FcN2iM!"LI:iiYK@ɠeren I$i((YI2J- J:6[o,0 4MRnA:qÖ҉1C!LӤnE|%Ի1F~S7 4ЪKcB :#4 htKa]E$A//\>sZJK}T5L;!% MmP}.' 086(Hύ1 MӶB@QG$!R ^ Y__g}ΩsR+slp (dic]YN1_ݏ>~$q̙ %CE_rA 0Oٴ=+3;?-5D%|ibFj6e`XC/'lKgGAP ǡP(y) 0>ZGۏp93*!n'`i޼p Bn&xB+a"DŖe>}?#ҧOo3{qlQgIY^8v1M$I(h\.7ȅr 1u;'4& CRuJ&4(QR>^H4%* -M2qU=𗾊%F$@H3=alnn"fo~*s3 X)l=5>Ȥl^†^>d=E5pv5^cZĢp8djj rrv~kƄ<B@gc EDH\ -2\[B =1Z,l'^1 xi9"UV+Onq]8hՑu$I"22?BbE 3DRReh"@> x-Sy =}WvIIIߍr)))n|_:Cg@RsOO©VM(bY^^ƶmdY4]AF@zHn4 AP܁#󊯇aȕ4qbٓc}_dOD'.'Y&:aTw0d{{MIvZ a{Z C&޻§>[qHݮ4$Fm$jyy9鋗<!Ӊ:Z䣿KO98qՕ-Wth42\UU 9rl6)kF._Yc5,][=F@0 ^ް*&SbTY'Kdt+8QJH !TшC8[k<72?v?_;.)));P"%%%׍fFYcyyQp]g\]>X EQTx8E)Y[[[DN!q4(0Oy}00yA #"iQ<j}}IvOp8,$[(* 6!|/ɶm$I=%`0p( ,EϯVHyHrO WjIIIDJJJUÿƅs|O/^~SL| clP"TK̺ԛ1J\[loo}QJDOύ CݐhCBqh&T(%шg@,^RHRQcicgP#bٕuIĆy!e)Vޑ1!# Zѩ(Jq V% 2j+DRY@3t:4-7ׄ 3t;IF'߄ĘFOR;T5 M'ڹ4k }q 709Mͼ'~H;@,LJ8x1}Y>}-ZmJ>XMfoy# Ʀ 9댵g.o{}zm ÔxU8D1LnXhhu604f5㢙!>r va*(c2(e$>HImSȊ Y$IbQ7D>b0lT;h (i>\ynLd\9s q3yQ'uj6U"XP _{)lrmY ׿gwIIIߖr)))n:uΞ+⋼|k?G~AѥKObj:I,y7+~cJJJr+&&NwagAxO>^H|O@ !)#:i" iWQHv3>QHW7h6&h40=sGbk255Eǘi\Y,$.bV 4-أe7U&d%c0!c!sGSõ+[qk:.c3 vId`q;N9^*$Iޚ垙YpF]k|K:^!+ܫn̙dYeT6aԲh-DVy#?Hn79m7g=Ε_ezj1h4S E_*,˸|2=v^<4܄gpy)NTD#%#?)J1٪2ݮ!'n9U1)ı66vD>N:Beވ!G, aJFGiBbR 8VafA Q3Å^zZ%p ;e&4S XT0!1%"W|аTfYKa4PE,7'x?"ګs񖔔 HIIu7 q<(MSC}0繤 T[37q!p8ux ʻ;4oxpyq/RH!**γMm!zshH v<&F9Kj7Qk&@C"q9952z>Q/FmnnbL׾y+))C9\7~{4Mq unK;;;loo]$AF# OZeY @R%{EQT÷>f5.bq%IZtgyy0`~;{wNj]Q1 Ih8SDQ$IryY_cO[$"N|w>W:fJ|z!Z\Bς R`JVVV5W"&Ӈar)))nHٌ(Ht;,ny;;;đo<6 C\E TH4Vv۶l6{]FQ{'< ε%3T g,8F* 0>>p8,^Ӫԉe oQq7>,oџrw-#`se ]VX[[^]vvVq^D(1tfK峋Mx΋gEelۦnSo_YGjYxAmx!. ET$L TA! K <+0 {{9}LL6FxUDQ E4)Q!  BWQdE1ń{},C cfo<羅'h L(e|Kߤ>DppڤnA|/5Kuz-Fq XFﲾ(i?f)p=A0]L=d.R1)h#'yz/䒒F云,n]4oll~u0)C> 䱬.AIof8QCq^ZiQ ɞ8{ph4Uq*܌?11z>xPAQԘ$ Y!;;;Ep膁8[1?!b {ǻYs:Y ! "i摾 f/3NELNN?}++Wp3ǑnEu}g=rwREn'+>b,*,h6HTD%I *\533J14}|EE/[ikg{ Y9wQM"vyfPF4m6IɲKn!g<k躎u+/`쾏iG]4EjB KJJJǔHIIu0- HI ]cB%MA!"IK?g;qDѢaˤYU{DHQА%<nݏT4!I|gkku\Qo8ĄQo(1tv8}q\^tWp6mIIIɫH)*))nY6Ot}EAɨ7c$s4j^PHy._=ED }9@FY.ѱ*FQ*Kp$1xd0xa0CʀO(0 SDuR6 qc!D{Y@U!"*(nV"CCEDL‘a2j>L}4]D-UTM$sJ}~KY8pagHhX:/|ǕsdW2*&p\ajy:T寓eX;!m}wyM c۸|9Dߗ$B"*f[c5ʕka(a~Y W:64?%S(@$=escjFUF0c 'tv^UDJJJFLSduu7?ì4_ #$"K3$&"(!tuB8Qn<APH^LY- ~ǿAymQ mS EhrFri^P4W, 08(BQi*jqUtư'"2$QbffEz>]EVbA2H p0DQϰ+Q~El"0 ;N.l%t dBq☃qE8&IR<rCOpɚI "e_ټ$a6C.$ '\%kl^nB> 蚆ﻌ[NYZ`ci#k&7ް~`ccc& t$)$!aY'fjs͵E$ 9lj.>P$˶G)FkР9Wqy B9?wٖ䥗^7o}|;kVIӔ]e8b+ $D[ܳO5(4qѴܷc*;B^bkmxEaFBHF2uKT$㶆l (BaW%h6Lj^ի(1J$QUYJ&ϿUEađ7%Cӽ<1QC{2O{4??Eůwj 9r{UKJJJg>a|駟nAg0{eq{EJ*`E(,L@A{9za!bjQhhZ &hVAY\\DEt,IGM!S$D?BN28%MC$Չ%' Ȳ >,&!m(I1d@0-M|^Yqdtq<-L#Fn$IXYBi3>rmO< dIu /iTNLs:F;BR ,UndADkK؊S^yOj&*-,aՠѴhy챦#:dQ0D#e}s]׋! }dȧf[ln-3wHxcԚL {ApCۈ1Mٞa= bDIZ " 1`58r6; IDATǽy*PidYFZ%vYglRNg0 „Vt#J*3y("F)nהfU*?`$jLìT'xbF՞c!C4BCW!"I}g|~QqPH<í}eY*yӧO;{o<2~͏{F@K3b-@A!&:=KJJJҬ놮(jz!ֈ|kr%<+8Ny^[Vi5y酧X^^26#0`ٺo+CgD^GL"<ϣV!I}}eKb#܀5r;M"3tCfkkQFuf:F~Øb"h&N˲ÈHXYYi$ dqOL DeD&\ASp>j| =!>`p=}rdnk '>ŋӔaW-B%[PIV8Numn( ͒&FC&HȪKsLWA3 d68$47h_zia.SB.S'|#GVFo2,è$Tj ݒCht^\7(b8&Zw?:y8fvv6 %.d{_@8pXq{T*Qsoϑ&zXy[<?|}+q3veIIIr#RRRrݐ\g8^]x[RY$8F. Eb,hc!#4>o'lK{C< Hfl]b0m%dUMȢK,i3X P H pen6Ny'K%S\Ujjvg߮z~~;o{p<ϫ(pM(-Lx~0Ԫ&G$A4KA:uV B!(2lۖۗhV\[:g>r]nYrDS!uT+IBJUn !REH|,q{4+ J勲,*Q;'?eu`<͟D o|MMM_5AX^^`o{VQMw6f~g?`084˞,ˈ);M"tڼ$/ǻ,~>%SL"m(0 xLhEe <x#,/g}aw9I 0ݚqeCD6 aDՐsTm cUw `:mOh4B]q1uS؊ƙs0LҒGQH!3E@\{(r)cSmC֏p⁷wycRh$IB \kܹ>lݹW27^%5t]JPE6n\-t:>a I곳(?(W8u!lNs[` S&$ fQ*)JM(Ya:ssst:m$M}6T֏y.+a6Dam!$y](B`<Mѡnth5R4yvvkXɱ5Eeii4MjH}hDiJAv6N7˨ʒ04ߦS;~0<vwQ}reit%]Rfe#Ҵ@UMŲ,>;BiJㅗ>=wKwpm4׷lz*q膁*R\C2<έ EQ[t-N\U748cM"%׷^ĔJFTY]賴TO"C DUd:X94$Iػ@N_±&b"S/~GՀ++k,t5|F(1Mcǎnh$q*dJqLNĉGj~O#3<B8j*miUU" `^Jr۠ʞ<%,R&}N[QrA)4vOi9-0-;Q©5EBG7J""l/JDQ tNfє<BTo%b%%)7o䃏c{Lo?uVγWɔml=IGUJ\MMMYQ%~?$MAJdy o .=8|ዟhdoPJ5(UQ\+p04H ̞Eib);7HJvMTlry:94EUxLnK߰.썘=DlVGut]iiJ`i}'Na)_84C!{i0n fC,:B(Q,bgt@:pzxuZItHt%f#zZbE y$%E8&?$()a`9wƜ={k]Za4a,S$t%b6h6.#,(q˗/sy|Oz'i)D"ҕ%!-e _$7"(d0`jpY=8{q"-BƓ1f8Ad;w||g0Lghzrl,5g~~An2xFi,/b6i*0t"&4Syg42Mzm Rgql̦ܾzh*_i#rMt? oPjwu-D!3(,(ICYeܯ0pL~dJoEֵ*yx1a;QK{AT6) ^~ m9"0\"(M uD ,mLis4Jђ)i&/W2!I}l6C(e,4-Q=)J1YJCW D2v63h}EQȲU*BId8!c\%j`j8,,,0q?O|SI`&2ܹsvl_~}x4Mr=VWWY}xO|KKKfG$UĶmeY2L(˒fy([2(7β HӔR#d2aooУQҋrd>2TaXm!Z0dyyVm8CՒ[&%IB'ܺu[n$ AT^$I"Ն3L+Vk!_m9%=a^^GJUeUX@EZ-kBGyq19( .mao;fhaHq\*lV5k7IԩSozkkkXŋ/vOEH\j倍WiLaM2G暚?? RSSs(-HMCeq\% 5tV@Ѱ DbAh() %(i2f@j,Ir@V)-[CT6nsyկ4h3mHKc F0brq<]~7~^%S n_e2=ʕ+y& dPӽ1h20A̪$X"gMi)UK) PiT"^QɄ2C'/bLKE+{! X~JkǾ䪉8yJTȡ13DW8UU}=q*}ݐ]/[[[۶+ɝI﹈*l4LmcBތ&443QhL&aXƒєFJ_F6QDU4FQ(D[d iR-<‹ W nGl6 ]iJ^D(jN#SҺlۖ^]! CxdyH>Wk⚂~/, ?I]nI iƏr{sR"555A}$abN&4"(,jYV)KMZ-A9(HVai~09wG}@/3(i%XZZ˗,:Dz,~iL-BUe o?RNdJܾufAe=wfyHQ`Z=Ih4 :vu?c)1@H09(F,7T,dTɄn[=N\z#b.}qP8Wm^Jr]3oJec)EiR&tP44 E3p& r#h40 P5 ϛEO~*VNw}wcs8%Iz%[ڳT^j`Y^^[u1Ldr+MS"%>O<!5( P)V?p/[SSSAUSSsP#5G~ Q~/RL2fAO$ZBQHziR& lM#+AU~2б]V>ɕ+̕yUmL.߼#FR|~Ni04:Qh Xʞғi@UlT&I\e08 :N(I2Q)^51\4b]-4MiQbgq>+U(bյT 1Li\TR6uiZMiJƤ^Ar֤ tM\Bz65_!Y D0Hʂ<˲Ȕ\K< FӔ?. Cf˥W%ô TUJC`0pfqƅCf3 EU,l먪Z#=ުRb( wGrMmqp5ߣgq%2L[5|At]Ӛu]L %%J$UȂ*YZYjQEXfc;~ {i(.qnj|Pí IDAT"555,Qzz1{tx,f4 S)z'YYYueQݑﳴNFA٤icZ֡Du ,,,8q?S4|owwq)4Q׮]+ >ͤ (VXhDQ > (˲d:)vQV3h6F#! uSNU$Kzc85Ew:TU 7!M!ͼj>a /8NMeNGxGe|˷,Y\\h}i[Μ9*t*h^5{/^Z_|Je+e1NɔgO%Wq0()2u!Ʉ Su]QRIeQR%ss{!ۖNY F>󧟦]b: Ohʕ HӔյULvx< 4axW$ +@(Q(QIТ0eOɲd2䗪+w.sFI4'ij\BcoH)Jt"fK1Q8{BDQtDӲ,V~faa\'d ]FQA$reY,//0L[&2]ڢ,bZ1f0pٟ=;hYՁxiiEX_\f?Glll`:&#phJTqT]Dm;T|UB t]AGܙ޺αgOp8|yu>* hrX\2Uh8F8KY$P=t`h襂L&&&2V8]Nؼ&fIe(>p\mvd(ڭE1Euty(J C(fLR294wmx?bX;wH)fDaLߗŏm w{̦!W/-hW\Ȣ\&bݚj|"{U>tah &̧)Qa&ih4䠣isxdie聇P .zF8y|xCM Iy(Soy2Qnx|7g{{k$e^Z^eM: KνP9{DGE yJ^(YFG؀R*$X٘=rrm;;CUe`H`ML;EKvci_:ɀ_Or,lF{{e?(Y:Qڡd.>eb<4LLܟGۺŸaDQĵtwOO0q]4MY\\`kl\!Hg4mlUѥ̦,K028M (0^q t.76d54uBAejѰCH~?3/_x* 5qE hΝ_4ME,̱Bmt]6Vpz8qs:] îO3iu-r!;BU( 1iJzwg?y W]b F);;;dY& Mhm.zaq*QjQH棩Ev%#LK!F`{xfdp)^3:t:%g,Ecem۠2f"ZplinL2 ,[%"`걳n_b4hoɋ -0 $غJJme f`e\muuU 8Ja8LCzFa4[˲DY%+ ttZtMda #>;-(*# ǥ̓e)cW,M |3u\UUqyXVhSE$% \Ǥ4( =x}YL'z= q i3_绦ߕZUSSs0-]v Y( 2 W^[Hl6LijL}$IX\sIfwnoSEe探<ϵ;r|uYRvzgYY][d/ &yVRڠ'%w}V;rcp<qA$;0 |ts&m''Vy=@b(*YQ d9ۮ "FW]WôBUUU$,f"Sm#ft]նIZ̯I73͖eQUV4A|N*fŏbF`9&*a$(IA( <-? 6f:1HSCCU-Dpg{G51йr 5AoR*IS)3Ǖ' Ԉ4S7!6ks*|m~U-N,ފu$eS:)<CLfR2lnܤn[,َfCd4Zm^kn^ᾷRDلcSn # Mь(N)KE|%Rڕ$$:*W,|8*q"KIxi$i4(XZ^ƶ,67ƈ 2P%l&S4yJU!>rRpm4M! cT"L},cٺ< iCeFc~?Oh$_uynwPan: tC4ş)h08s /\zƙ^~6?Cds4c4:`TM Sl1i6dYƠZgR^rs)a0d,Yml ) .V່˜4ɤMk(y7臉e!֏/>)߾tfI%զ,hBr\0z; L5Uވ34n7ccIQyOвlz-dokUUfc{, 0 oל'v{<h4"%ϼz#,-~! N0 VVVPE|CtՌftМk[w1Ԕ08ݵL^:N4 h.EE,/L=Ig&/_Ws1D|0_g3'maW F6$ )|J3ΟZce<{|2ƕK K&UغB< #$qVY70Oi:LYҒ^yz܀;[ I$qQ]aQΙ)I0{`Kr2~~kziˠa&0 6&PXr ys5t]Nj"tHsj>}H eҠI-tb,KHdHRDDOL&ڦFN !!"Ed9g7 -,˧QU$ #2D9u !Mb `o8H HPpXS"")o5/Fl,0TBnJhA@ۃ[^%"VK["a%Sލd 1`fܹss"e=$/"yEA<0s{uJ ?%Ҵ@HDQe5sFE\y "y.npkeU],d!M:pԳdQRAeMù5{aIIRcA*(AFH2p:3>_Mq/ad{Eǿl W> U c' .XY,D,?B! s|}6Ʉt|O~۷_c:膉TM [Akt:-zm_$wB.ikQ\5۲xtM%I3YBet->Irhm&# 9f{h8[f7PU'?~z]Anyى_"7lPW^'LBdQy4OUUTҥK,Xx0 E)no Řc?>?oMMM( ^}Kzyy0Hm<{ELi-"SiBCqStض,j(f!Geܿ trB ⩟ଃS ѕM-ld0Tf +% MѴossc\C 4E-:]\W^EPe$EUT:G"HČn{"3A"dP|/qS Kf"t/:12i"Tu4,ZNA_b2S4Mѱ4QV $pY[ 21/۵^EQhZDQ!')(2Evq0M2ˍvy+2)2*vm}jvww1ZłF%HiAJ 3QБ"W]ʻ?42Wz>$<f$h4 I%QJgIOI`uTDLebT-;::mOtJXha-V,Rw1qn)QU.Dswu&C1'{Ln>dQ*[Qg)D(h,//di%IW^'4<ǥ#j:,G)Y 3ot&#h&fѠDB^ FQcCkDe{">Fе-T EǍ3^})-E60}DesJfJ*oLy@QiҳZ\pLJK 5555?+_A1.mAyjWQDQ2*+"y&cSZgOv)b`> }(pvVY^^fx̠$$IB$K R7TUlHx ]QUʀG na2d^…kDi,dOpeҲM`,o^E2,UPғ!+y?=kɋ_??ƯI"E a ޽ɘyXQ$IB, i]ae#2ٌ.rCW?Id>Xf8Q(lP$ LK2O7YD2I"YY dRݬ^SSx7"555(66K-i$IUi,ȞɔlۮZiAh4nW$I< x\1@+q㺥,hp||h4 3ElXʣvdiyH^__0ҏpwV(PU4M կ(2۞g~E)}$u3J!-B4gQuMTL&f=>>Tޛ4Mi۬a6\x >\0L<Mh6\pnpgYVlmoU=EA):aF8>>ܹsc8A8G_IiѲ1 ? DQh4B)R,!"4E({h Iả3erH3,+!,BR%ITA@u7FKGi{;e4(%1A)a1MӄnMѠ( VL>vloo3Lz=Zi)k ΀7磿QMloHhZIʟϱ"-'9$#}=Oivya~go Y Iy8`z.DQÈ }%C߇rNsΝq\}_? {3s7Cb-Hqm<ϙ9s?`:fY:)F(Ň?U& Sy^ݬ^SSx="555(4QfUyW X, |?FNcnmgqA`*{Z=n=b8wk\:wn,Xŕ+Wf>mI(H'iL&y*3Ub/`}}:<65 pʴ+ 1+Hsk}H%;--TQUjGH!"N"<# cH*UUղԘ$ɩA0*uk6q=@}ݻ,^8{Eb4a*S gH9:! J%4|Fӟ}vwwɲF+IY$ib*_&= ''3^ȋ/>|qBω}UfYkFdAY-'kzu^x.]<_@0<t(Y3҂%B30#$r^g;ޥH&<ؽ~GXjt,b\k]dr_3*jUi'fWÝ`wo@Nxq9(:5PoDjjjQ̦> et:%/B<LJIgMDa/2 "'sy-gߡ-7<~o 回 MOPղb{{N|7ͦDer[gqVPTFv HEʜ"Z{;E>Wo h6;w2KFF$I(OxM,:v^elmm>y&GGGȲL5MfL*ӠSV8Yju8wވí#fYٓ,/2|ix|KoǥU:ְ-"!$//,8eXRO72a^~/73qeuv|qi UyRn Mέ<_f=SE@%KE(D6lX|K+-6^RnCE6#IWyLwЭq<4PGE I˃6g^,2ugs"[FߥRI$(^ >a,HuʸSUfx+7dH$37V|Ε+WxvvaT(^Ph7Y=w|`٥0%d卋Qb$"By_*"\ViZ fQ|栨ܹLgx  > ,a\] vff8%dBwJH$}244ABDvUU1 4MYY6Pe9NK9hBܸxe^bgᣆ2sV6/ Fux:~N|G*zBR~QʫF3L BD2,rIG|4]D7$!l5555.wi1e1NY,Wp5M[I{D3DQΜop-3vEò^@4:6Vwޮ$Z:o&I>SzZ9łc| >" CͶv<ϮO|f ~4zo-nቧ9>>.aVNj;-q:kkkcMMM͟z#RSSh29ގj!"EгZ 6q7 /iJAxMrq'A+}ሇfpo#&]ɌvU. Y݉NEh "9ap8=NNNX,HRZV,uzFPzxjl6իnQB 9I39۷ɋ8)d @AT+} "䙄ZEQ5nKmvX[!h [{8qLS7Rn4w2YKuH7Bi"`5:46=U߂\E IDATN.&) oz7v39r$ Q&#m#˗Wu!wC0$e92 i]?SB.0])pl% MOKӢ%,typ4 (T Y㛮>dćz:O~JYjHga9d~4};/޿7])|I\5555z#RSSb9E&dY(zzg:MSA|hq/ هq]/0MVTnwءlrytpq'ǬUFrX^風2U;-,ˢl{rh4buu0$(iH6&ȚdJQP ,k_SDnUVw6t›a 9~A˃nۡYr<%kȒɠ5I0Y8!iRn?f~#gȺp8,6\YDAmrY6A6pAdFd"LY^^F45!WJYYa!n: `XùWL&a^"K! Y%EXpL$6ڼzkw1b^q{}nSIfEQ,Fĉ @|`Yi2'E I ]l6m2Ee2+6ST[BҚ=;5Y& CG7bл z})K<E &'*20\.AfeB)⌦fju*MMވԼdVEnyhX8Σ-[<LghZyZ$Ae4RQ|:ϲgCYo|7=i.fԙ2*%0h o&3<6mStE[>X,j2똺AiREZ0Y!sgAdy١,O~: IV%IA 0P!L4y P$I?s/W~;pn bnÕ˗ɒ׮Xxi /_f2d)8^ɑ0M~i$IBӲ;'Jh4kEUg&{;FJ eBQ "7B,\cyupB;4Ŷm àDY^t#9bYQMBP$ E&24àUv}Ni_H rf}8)BjBoo˷^Ƴ"@( dJ@(@(C1SnLyW2ηNͪy<we dY Ԙ zRvaX,}4MtzhiZ-Zo0X[aL.\ Cwr0>M""gd"u>|l:XM4 ðcHLłc⌧غ͈px1?MRsEI.ou{E($y9`DhEٲe/f!qɩD+c|*ݥKFAeT]{^w0 "M1u=8#dzExqa6 4^ay}흇NQ-;/&'tM#&1Xeks{/'?7mK/}>I{h !EyH oڊ{.#9BL dy t>/𣲑=NBMXY53M]nky GV +4 I1;,`uu0E˲Jq9t]GQhxr)JA-߳Woō23UG4܅%b9P4D.^X'f4IywxI3Qh"i`ktʅN18aJ߽g^moo?d8}B b p|@ ͘(eM(z{6TP<,6")sDDE{#vA4ln9۶Q-He׍]3=g*E-AGO'8Wqcv W˿JxUTDT"$,D7rG#"U@DTh?ܢljٳ8{kjjڍݻHMMq$&Si EY.7V1(ANS\E! y^9KVWWbkkV`0Ļ{{8AiyI v0|24p.r}#c;HLU"u nq=wll6iZ, A`(N=5"ϭeF k!"_HAx]J箛=8::6,jI/ppi#mTy~l"J)~8 X,c}jjjjFEfDQ IOS ch+}*ʹiJ4 %S&;{?Sb74MEk̖V&L5h *Ţ,G#Yѐ\q VU~A#+O??3%8xߢsz"a=,R"hK ݴaJJLieJ\pzFY%H:iV:FC*8$2[vru2*U͍TiYYi?`z5e)ʜ+N^^ M(N, ma8F| C 'S׵enr/򒃃޽ "S<%Dooy욟k5U E@5dYƭ{4:EHQ B׵{Fړ4!_,eI!;_ al)Y ƷCM$Uq?s5GO$+\\\"쓥55garH4MY-K{aHy(o?*...(P5itʭ݈ B\׵ݻ_;O"ԲO 9 ڢrR;;;KTeTZ!\p ns:(݀a⻆-r.W/L& .L3>?*Iڶu8fowfc(.+fMI2ϖe8yF"k\UJ)={fuKС÷ JۈѢ(rcƐLvF6M˜y\__1 ?€ЁKe,3ݿKٕ}w1b\+~!k6 _)EߙpQV4Fkk|%YgĽO|І=(`wwizT|>gXX,;^Etl<RJLzq;ˆ~/F{] V\$ 8jil0 1>uY,|K$h^.-g|ﴝ'шzK^ꚓ{N< ^/!)rHK?}l~C/zƏc1Eqϑ¥,j( u]S+ `w?jՕr>[78f(+|fÑ꒞rff6qXgܽspȪLQ{>شȫzx(cuYqk<ϱ%ouСԬ:|PU9nb:Z)LQU԰,7aYtzIDQdwFiY.s[G'Z1Ǽ|3D=Cyxh1k~|3=>']٦jmjz#F>j( c'+V_S+X2ʚO>Ѹz$Mސ0 [6 @[&`ŭlk+'Z3uںRS>Sp͖xP 4(<]\{a@<{;>q?~O~0d>3ۣi1OÐzM๘qLU#|OX;,qB`mx!zfz1=&\䝇w/ttaW N#ݲ`a$)ƠvHo|Y:tx;:|ɫk\R )%WWWV+H0^G] +*JoMx?,M$e`D 0 MA߷;{Gurg˽H Rlڀe9o;p2֔(|/&YR?qZCt:^kzHGj'SVjPIJ1]q^`@{P6!{xeJ6*& Rpg*s1GQUO[ yrrl~Ir)c ~1oڀ c*. .=2h*FNYCZ,?FU|ES >[8Y>-+wxUaPJ;la(ro&)OHf@kM?^hf9˧<{s;j+˒O4.S LY f+||yM- I]tH:FC*4OIcwt6Mj %{CTZV,'6&uLi]8W%E \ӄ$d'MÒNC3$>' }9}5?SRhʲ7I]dIڔ,KŇ_<( (YZr$λRBVei.PT8vwQ!˲v^kV׋m˶tέ>4]ncfDZ‹3'#3+[_@kBk׉5ן0wH4>i4.??.˿w?+2cr+_J~Kd,L o=ݡC__tHU.%^`X Je_yk*/.qvqj!c>㰷׾6n</ϒ/_ryyɭ[|5G^zZ F#{8h45c n>7oƮ9$l m!ޛa؆n)e{!ɤ^1X,b>/sVՊ/^ɓ]mq]\_Eh4"MS>|ri1ܹsAP%'''|HӄzݖEs&(6./lv^C`@}6g_g0Pzm1)61BݻG VB0 z,H㝣 mzRJ/NOˈϸpx<}:tOС÷ '8,9~m zsE,jev({![/|#I(I~O{ooہ>n%nӋ=F`H)EGgKzYܢ76FSu;=>9O>]!F=źhh+t#i848hOE8p40tuI`lz=ej}'Ռ'K-wzUCT ݿDT|c^]"rF۟Дy۝ # xC<_Q9nSUtС[@Ljt[S#dMI8&rM>QH,6RJVRd"v6Ii\Eje=M_ZU jJJ7ȴ(ꡕkeY4Mꆪ4/QYɤ7hYH* uz~k4Wh%[4:Gvڞ5f#z4MC#| q$0 se}]0իWvqJή\LIU IDATöDJG_|Joܻw^Wy6Nq89zmҚ7ϳyϾ=<% C-z+C *WהT琗3L7\+q^^?e:] 泂@jź1&;1*H)(tGzq7^|F!0 )˂ǿF-'_+ vHҬ-koSQq}痄DݡC_7tHU<+; Ð))5AQ5b[J8aD 1UUz:a0衛 i4:i4P c+ *pBZ((j#H Q0A&)q|4^>JmcE5ᶿ7 ii`IQ۶km!<>^(hxp1VrxxHUUvReBY\^^>_|~+A])vww?Ag'$y2Y9A],8`wgwa,8TU^\W8TF}6{=d1gן#=w8яzL/9?@ja@F" x p%g){{xR`QG;KS5N(|/qxx<ɸ8fzR5rʫ_!RJ5I=F*TIJP7WZy=ivn:ڣcD:tBU.ers Rx4iSlIϥ6v_)ENzMMI8*AeUUU}mE"`UjRkA$S2p(UuY?Jw2O0`#)3VQQ'''L&ꦡAppMi1<]m$KʢfʘL&\e|+8wuTE5B jjvCQk[<Q-9{E(KFy8”5 Km4H8zA3u=s>Cҧ7ΧTIFO΃!R |_H;GcPi U~`wng SʲA;ӧ5yq2fIʮ7{:c2kiG6aNZowy²YYQ]jV:FC*T5ZVUHPGM8SUXEq( ú)[q-\\O0m%ueMi0(WPb v"~[ y?Sr&DŽ!M\mAW[yRF:ya^MFri(jVUAI=r"0 z3!leZnXMR#G ٴ.LS]̦S$'kmgHQLWWs+Қ$I,U9CS^|`|k ,6lC*-6NO.ij ǒ$ u]39.l0aBPD.AQ6ŇϩJӯOxuvp/1J&Cр}s4W':Q?XyX֔FQ0 )Şh(ֆ=dWsyVr(d "'? G^/)leUqcZ)ߗ_~z'p]՜UСï#:FC*,Z#&+p0)K)p\8赾qpnaФ> RMJ Ӵ[ ӊ񐍦rq%/ls1xZhv#UҨO dq!.ͦsC ;m!1֔Oc ѦmŚZPK\;LWy:$5~iҋ= 4^2Řn=ׇA6d»˭[ȋJ)ik:Z+ө!Q1t4˄dh%((B>7snnn7QEn>u]50|f?@e%, zE\2\˄E|Cn>xhʢf@:|~Hn`Y*NNOO)˟o+K!jHM:z *q M~s{uMJq[]jV:FCZl(|( X;~ݵ[9PUUq>խiFQgoJ<zmӜᰕmӌc<}89:>joz;<-q[38o~NȲ}۷!k>Zkit:%{փ, <<,E,0mVRUYYe6k-b0 F߈&6y>)en$ct˗/&v9Ҕ=~5,Kvw Bu&=ykA_5zqd2awwJ4M[6kω~-jB8iPuL>re)( .//In愣k荇-8S% }]g*_벞{;}wǤywt~1":tVaUXIlj#(,Gสʹy[_~-(XT44L}d/7G4*Ǐܽ{A'С[BLjt[ȶ MGH]H!X 0hc\m}0l8J~,SZ eRtn$ϐڠT #!ZktfmZ#zg~AQfsTU ,"^3Iu[ZpmVNe\EMm*-Tj*֫i^ql{IpZXʲ$MYcLcdMC/!zM|C!qx֋f lHĦ*ՠuMAjܻwjE4|Śa8qNDQHx!g$=0Y̭g]*q8FJ+v>ucp]Hl8҄_{!q\.L&Od;"s!uX;| F X1<\ofCV{Ȳ>CΦkYB:ԤeNUAWa#^}8^o " 0diIxQȣxtP%o۹C:|7 Պ,4ۅ~ӗkDdiaC0+0>nS1W6k]ZyTBS(_֤MEe'kzyr20c) [뺜');r}}zܬlr|koJtyvQ=>06uHGeEUszјۜ]|l NDd0OU8ф,XUiPBS%(/4*HMswDFن¥@ ,CtsWDm 1qc@Ԕe (б#8"S6*iJ(j99}'縞MZ+*iٕzg/i҂/ kj"ra]\]]6pWK8ɺB,f1i?Q|gۏ'@p7E%QeIcQ߰:5)bA=IWk:a]GJ,k&MzLi*%Gߝ JE<=pr3g *:9:)jEEe/KʲlJh&>ӫ5Uθn! drhmx7wS.5Co#ҡCo=)Hah}#~<[6o7d )%a~>v^[_&%q/&la;$lyR  }+ږ!nczzݵl?W`8ޭ.sWgWX=b>3<4M/I^)oo1L hm1iq<' o|mRR \᫯^rppОKXV> ZyRkEEYZ ɭÈW%%f0裵a6b6ygg>hE^ZlxWp5 )śמ,DH:tx:| e/8&2y\DUTVn#zL4ro#("Kv`;f32]tn eYڴn[v1)@m=|J)z|qIeszrߞj )b#H(@gs,~u<*#m ;TU(1eM ˥=ϣkED1Hm\CBhˆ8I$`%֊#wg4 uBRN"t9]˫)>6?? 6QD!5+HpORFJ:tDLjt[)%0T؅wU㺮w)BFoe;ړ *\%K\SWW)otԕ{}0>ea+a=0iltm{DT=ZE.k3&h/)^l%Libqj |Yٚ]I5s;*F5Jk"ǣNsTV$)G ee8B#jlHV _ZDr\W)ja~ښ%Οsb^k 1ﳳ'{h4JB!)ij\a4|WDQDc4]AJnjp{!T 8hZ}h4"k3Xgm?U{L[ߠ ˛)JMp"04hĦSBAxn1( [HM# _8.Եrƣd+1֬!KmrY^1ٌB7}`BL#FJ2`DFUUzF$=$a2pryR"u]E{=jmMEyY9{٫ZYq&G>0]c^P7?+ #"eR0.TJ$JTV})&} ޽._?{P_|G1Ӕruup8dXpz}?O8zA5FqD]5 7"nJ'c$C([;tbtmI:tp4% IIDAT`>+[V(\W嵡};80ӛuZ)>}V沕=I ( J۾!ttBZ  ʖMwY^M㈓ϟp=%{Mdj+Z6%i+ +h}(IGDolvz-JY42ͨJ+{I;YF(n:O1 !^(%I񘛛AِK<j!Wk nar`y=Oz 1mq+0e=,T"7E-ܡCI ":txkp=4PK+{pT 8BG\ Bے;6U`(n7X[T߶C6֔5*PӶEAUU. QlԬ2~蜝>rssCĕOYC eY۠n괮rrms]Y7Q)UeY)՞uMub'PE]]=c?aۤna]\;X,ZKQ,6vggjeSx$I(1z=?̹$'t(vuN,-Y$dowDrtx+Ɯ\,Rɒm57%ڲ$Iaoo# ȉ0pvYcD Qg}u =(ł'Oů._pw3(NFmF vNI+G2ֶLm3vT5I #UM̰p4BZxcmע 59##EϘ/W<|6.QŪUwX:fl26uwawB鐝G lvc3>#hpVZ֌=b6!ltjQoOfܹ{gOKFJ<QVmK]Ţ%<'/4y&&7y3)l'Eާҟ_ܐhiiX|jj;KD8L 2gEh?U{|˖ϗOyS}c_rIijxd et~_ BQ-Rql8I6M/?8eӮ=:HoPوϞ<K\@]?BLC˝ vmQ,D`~ |w~HMqf(D~;읰xcz'T(֍ {݈WU;BD+߽no:Z5dYiGUվRqgl݅$͂ nP "5h9>>&MS`2^ &CeYXi j/|0~<4ɷܥ>E AH)YVѢw6Ha )ucQEJ= Snn0H2٧}LӔP(Om[g) =y";}G9O u bw! wARW*J)6h>ⱻWǯbgc" 8T%IPYՐB0Z ζ;Ey܉*7^u]ԁHkOי#jۖmށ =)xw}F|2t1i|MA1fu EXs0;.7N')mWS$&vJQ)`qc!຀w uUqr$IE-褢iG_=~ uwMyý{裏9ZHbwO. Z>_?{ãS&ar͢7!0"o}&1*f~(nQuuNwy]wčmH/mSmǮƶ) w6Z4uL"nt]v]gGˊ9L{AY}|J[1΁m,V;AppxЅrZsRٟSHexב:Ky+'#| Ijn^^߫FCzSJ8?!7  +j!"޺''G!9/%O^|EeG㋋Xx&Ѫ8dA4щݻfu{/>_E F)nhd~Sᝢv5]<߉B.N$ +E"c:IH3$tᬣiWub^G-2@0"xI0]qs1މJڮi[k7XkȤw:> e뭪_)>hdia}E$}1Bްn988`2n9<<+\_ $')̎lKˣGJM'O'ݡP̯X~`F9_APҨ9i56Ģm[ΐyB2)hp<}Eͫzl\A [xވI b6ـ4ܼ$zJq6CG?4u².qU/V%|r_Tێ먔"$ޟav[stb*-w)B`(D !@B^֓JOCg-ֵT[`dT@<{seq?ȊK jk ^}w!I)qrs4/ u*6 I:jUlP.y'? v[z)T!CE1ُ^BЏݮcfC;-/_D-p}QZz7/GQŎ .ZwX,4 .=7R^Xn^ӃaZq_)2֌G3ZGF}MR2o'IE.b>.5>Ïd2mJmu;!pyye6єM 7H! p0.2xvH|J 5>\o74MG~qٖwyqq#2ʲ䨘D+cF)l[Φ3__(!Ic'moYk1d-y?x```xcۉ~\IkHp4m[ܙ"|&Zrz|ֈ4KzoBUU$,Ez7my6sFgْe)шrҷ_g˻goIۯS۲o-麎xr2+7yA;f_KUmxU}䘲,988>i^gZ%Zڶ#MM>xvq_:K]}Wa-[|'XE]9_{Y\__ڥ{(MsJt GwmkHӄ$p !ǏRruyҚd. \^^_u-s||@i689GQ:5M̦bwV\^^{m```C!200ƸWH dDam;9GіdZ^/1 LQнYO͕kΨxvIyv4N|h2}hPڣM@d;hПzkc?wZ׀Xh|% ^ӊQJi7fVR +c`<;7Q+@u]v>پrqk$ЋxA=Vk2i)HL8kKeҒbx%DPhB1JUi?./hמkڝ(M\e7 2)]25FՆͺfX+Sf[fzcݖ,D5sxPҐ+ Z^/p JEU[Bj9pU(%B3;9`ZD-hB$ڮ9ӳS9ѱLZ:!)ԆjI4A,"X ?eR{koʐc^ #include QT_BEGIN_NAMESPACE class QNetworkAccessManager; class QNetworkReply; class QNetworkDiskCache; QT_END_NAMESPACE //! [ ImageAnalyzer - public interface ] class ImageAnalyzer : public QObject { Q_OBJECT public: ImageAnalyzer(QNetworkDiskCache * netcache, QObject * parent=0); QRgb lastResults(); float lastRed(); float lastGreen(); float lastBlue(); bool isBusy(); Q_PROPERTY(bool busy READ isBusy); Q_PROPERTY(float red READ lastRed); Q_PROPERTY(float green READ lastGreen); Q_PROPERTY(float blue READ lastBlue); ~ImageAnalyzer(); public slots: /*! initiates analysis of all the urls in the list */ void startAnalysis(const QStringList & urls); signals: void finishedAnalysis(); void updateProgress(int completed, int total); //! [ ImageAnalyzer - public interface ] private slots: void handleReply(QNetworkReply*); void doneProcessing(); void progressStatus(int); private: QRgb processImages(); void fetchURLs(); void queueImage(QImage img); //! [ ImageAnalyzer - private members ] private: QNetworkAccessManager* m_network; QNetworkDiskCache* m_cache; QStringList m_URLQueue; QList m_imageQueue; int m_outstandingFetches; QFutureWatcher * m_watcher; //! [ ImageAnalyzer - private members ] }; QRgb averageRGB(const QImage &img); #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/webkitwidgets.pro0000644000000000000000000000045612273255454030614 0ustar rootrootTEMPLATE = subdirs SUBDIRS += domtraversal \ formextractor \ previewer \ fancybrowser \ simpleselector \ imageanalyzer \ framecapture \ browser \ embedded \ scroller \ xmlpatterns qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/0000755000000000000000000000000012273255454027667 5ustar rootroot././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/framecapture.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/framecapture.cp0000644000000000000000000001010112273255454032662 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "framecapture.h" #include FrameCapture::FrameCapture(): QObject(), m_percent(0) { connect(&m_page, SIGNAL(loadProgress(int)), this, SLOT(printProgress(int))); connect(&m_page, SIGNAL(loadFinished(bool)), this, SLOT(saveResult(bool))); } void FrameCapture::load(const QUrl &url, const QString &outputFileName) { std::cout << "Loading " << qPrintable(url.toString()) << std::endl; m_percent = 0; int index = outputFileName.lastIndexOf('.'); m_fileName = (index == -1) ? outputFileName + ".png" : outputFileName; m_page.mainFrame()->load(url); m_page.mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); m_page.mainFrame()->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); m_page.setViewportSize(QSize(1024, 768)); } void FrameCapture::printProgress(int percent) { if (m_percent >= percent) return; while (m_percent++ < percent) std::cout << "#" << std::flush; } void FrameCapture::saveResult(bool ok) { std::cout << std::endl; // crude error-checking if (!ok) { std::cerr << "Failed loading " << qPrintable(m_page.mainFrame()->url().toString()) << std::endl; emit finished(); return; } // save each frame in different image files saveFrame(m_page.mainFrame()); emit finished(); } void FrameCapture::saveFrame(QWebFrame *frame) { static int frameCounter = 0; QString fileName(m_fileName); if (frameCounter) { int index = m_fileName.lastIndexOf('.'); fileName = fileName.insert(index, "_frame" + QString::number(frameCounter)); } QImage image(frame->contentsSize(), QImage::Format_ARGB32_Premultiplied); image.fill(Qt::transparent); QPainter painter(&image); painter.setRenderHint(QPainter::Antialiasing, true); painter.setRenderHint(QPainter::TextAntialiasing, true); painter.setRenderHint(QPainter::SmoothPixmapTransform, true); frame->documentElement().render(&painter); painter.end(); image.save(fileName); ++frameCounter; foreach(QWebFrame *childFrame, frame->childFrames()) saveFrame(childFrame); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/main.cpp0000644000000000000000000000642412273255454031325 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "framecapture.h" #include #include int main(int argc, char * argv[]) { if (argc != 3) { std::cout << "Capture a web page and save its internal frames in different images" << std::endl << std::endl; std::cout << " framecapture " << std::endl; std::cout << std::endl; std::cout << "Notes:" << std::endl; std::cout << " 'url' is the URL of the web page to be captured" << std::endl; std::cout << " 'outputfile' is the prefix of the image files to be generated" << std::endl; std::cout << std::endl; std::cout << "Example: " << std::endl; std::cout << " framecapture qt-project.org trolltech.png" << std::endl; std::cout << std::endl; std::cout << "Result:" << std::endl; std::cout << " trolltech.png (full page)" << std::endl; std::cout << " trolltech_frame1.png (...) trolltech_frameN.png ('N' number of internal frames)" << std::endl; return 0; } QUrl url = QUrl::fromUserInput(QString::fromLatin1(argv[1])); QString fileName = QString::fromLatin1(argv[2]); QApplication a(argc, argv); FrameCapture capture; QObject::connect(&capture, SIGNAL(finished()), QApplication::instance(), SLOT(quit())); capture.load(url, fileName); return a.exec(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/0000755000000000000000000000000012247412261030424 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/src/0000755000000000000000000000000012273255454031223 5ustar rootroot././@LongLink0000000000000000000000000000016600000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/src/webkit-framecapture.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/src/webkit-0000644000000000000000000000363512273255454032517 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/framecapture \title WebKit Frame Capture Example \brief Demonstrates how to capture frame in the web page \ingroup webkit-widgetexamples The Frame Capture example shows how to use the WebKit browser engine to obtain images of frames in a Web page. This example is designed to be run from the command-line. Run the example with a URL and the output file name as arguments. The application captures the frame contents in a PNG image with the file name your specified. The following output image is generated by the application, if you pass the URL, www.qt-project.org. \image framecapture-example.png */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/images/0000755000000000000000000000000012273255454031701 5ustar rootroot././@LongLink0000000000000000000000000000017100000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/images/framecapture-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/doc/images/fram0000644000000000000000000147371112273255454032567 0ustar rootrootPNG  IHDR pHYsMW IDATxw|ɶ$KrC6VY%2ʏoKKK)-2J %~ PhX)Y$@^'LeCC$˲Iĺ>wso}>B!B!EQNCW(B!BTB!B!DHPA!B!}"A!B!BB!B'TB!B!DHPA!B!}"A!B!BB!B'TB!B!DHPA!B!}"A!B!BB!B'TB!B!DoWFUUdPܸ1C$X4ev !BWCC=60cb 8e(ⷌAQe_ Zҭᠳӳnº-475 @GGmw}ǫ( JGGmw!!! {˹oq ;=WYsNssCd6cXھjq{ to]ʸ{|x}ok?HFJEQ(ߦ}𪮿'mL$ʔ@FH"MlB!۷J\|Mʹ3#=lFLf3MMDFF2|D.i)+#olfL&&FF#C3"cUUܱ֖l˰e*+۷:E!)94sό|kE?\۩""2H}]ptaaa{=U0==w}dec9?a1r@v߿yG@QȊ53ӈtE__Ŋu *m4dWlueoRx|m%(PK!BCuUY1=x n`~ve+HMOh4v+v BCC(/'3+3g()."))dL!6c&YٔQ~DEGPUYo"{ FĈP:֬0f8,7"Ғb4e*BeeY6sT3,'Dhe3=vFd23(1ݎddfj--)noX6s8!Crt329p`?GTKxxr\bM07cS@U˴׺*PX5+YS s;nፗE|pI֗OAvm%}=^!B=*;mEUUF쒬( :_>њٽvZ[Ziiiӫ/Դ4ٓ9T꺷m8(=ġ7䴙۶l1-!::}CFVV֗c!"2Jڴe%g_sџN5fZ:---Z{wҞI!DFF4F䎤۷=m7ɸ ﺆLf3 w/).faΟnku^S'A xg<(\4!1R7AG5( EAEhpM#vVBrDa$Z`"G%!BR{M < ()* ر}+!rG)y} ~tL,ul0DiI1%A \ۻz0 -+g_9r33zؠ᭯ǜ})#+{0Vj?awOsN5fom JlIHL$1) JK pg1wn*+iooӾ׫9!5-YsNh_u3jXJur}MM_᏿TӿwTQV2LZOT&;QAuT|%~P]W4S䳿vmW $[r1%`&ڔ@1B!illd2l85433ӦԺ gufʏ5Ռ5 Hssmv {k+6[3!q [tzy׎Nτr}= 9RFRr=6XUU%[Z baʴ`uOѓގ?Tr:vZ(L͎t.PO >;H^hpo}zt ^2|*l]!ƔJ)1D6&sV!B|wt=Ѡ/jjٶu3ՕU1adcb<ؚ)-)11[z_؈Cu`67aII>p8ACڹ+>IA=q~}{ʟޮ |*-?A t5=A_ֻ'>vtDpu+] #ُPܰq;֔J)lgTtB!=nc3 DF>j 55̬lbbb}N7q9RVƦ ؼq=:۵HWZ춽f6yo::h|Ftz1sD޾*8HC}IӹoyY,VI Pl}))bZ܃͵(=p'mnj;EQs<6_G2&̘[[UU%!!!XV:;;FD`F@]]-11wOǭ/DSr}}?|U۲]r&tu3psp/Sz 昽;؟GJjjݶEkLhtN{p8ek+%5Ltt4118 =[`JfڟlOBF|7MZ9o=<|sjkkV ^P"W{:\pyb04(Ys} N0L0HJN!'wv b>Z[Z3k\ٳk億b7BDD$N#"21 f3\ EDD2s} >xz><3htN{{;_zqΝwf\P!keK.ҕ0;| ᵝxd .xU A!Bʊ 9NTU66*Fclխm6[3[}Nl6 u혿NkDŕcb4wM0rO27^G ?+]<=JLxdq@QG@2KU>LB!+4,gIaalMbFh܅8^r LP#+׃®F>[Kmc^5yGG|ZpO'B!nX=d7C|5&7tVD7A-SQiPyosK>Wn[BJtE9-"&$''vnJ( RFcsT=/{Gu !B!gA +=d +ˏE)ՙOAUikwPX ¨a>=w>ԓWkH(~{#_\xs22 m^:B!B *h_{>zu] Hr^ 6U9Ѡg"]UR55 t4z|ɡ}k^!B!ĩ'kOAYW9_?q&'$24wVqijm74v^U e92(Ǽ F=zX8E)+i{ƺO8R#57Yr-棂EfkN`o)7~oKWQP/'ǥ7hmhŬ*xv 3?RnWLe_|!Hb51x| ;Zyb?ţGg^x"NB!B>.+W`owPT뜍a~)nܭ=׻s!dŚ)mC[}Lq4eEv6c]{74eOY`,:0vsG>cC,9j:;ײf3wL\@?|q5l!1 |cFp]oGw}uyw; ؆c 5s\e۹z+y yw?xqCb}\= GިkpL@F!B! xSpOp.Vp<#d[k w9 &qN j.HSi9DE7+ĩ>0#}Ѧ8,)ϾtVoᩳõcn9Kk33Þ͜5xPHpnjiЩv`0?RI]UCD5o`UD ((S,J?C(!PfI'B!?SD$U P\h%%&otU2=n;&mg`x8" 㪷OlףDdr˔>7wa|8knr&5#lo>r3#mjǡvlvRPǵOg/' ?[=w_B!B!Nm>cFGQPEѪJ5`r"H6Aqq*y+yVzmuĘY{׌cmq{-M@C Č yG3%teW{H9BϬeB ݖ !B! 8xO%.9;ǣĚ#VT隱ҵN-=yiLۏAU|+>s+ƽeJ3sPv$pmD%E r Y,XZ"e{ѵ.52eOw@b"D9B!B!NM?[ukޒ< eę& VRK (^qY"%Ya1Fބ9ҭLs{QA~p ډA 鱬{F[C2B!B|W>rV4p $E=z@ ᧐['t"QpWQ9x̹|t”6 "њFk՛3%Zx䋀کR!!B! J y2-.҆|^ܟIfG:+^s#gM7^o=G1LI9_L>j0j?B<< ߾O=E10&a*N}ig 3^ݏk}}:BÙz׏C7E'YĻ$t !B!`9tK_#feP/p^w6>ݧzY7ɖ5\:'vGXf !B!mx|13zHO4jC&%5vʛ ~r/ ]h&n}2!y*ײԴTy%B!xPA[ʱu&~u~*VDc= s} mM+%b/<'A!B!D`˩]y\ߊ{+*m (B|xGĞb1I>7؏z޳SAz!{)8)A B!B!pPANH1Ӻ~5Z /­pܤB!B#n GyxK:*Ϝ;qju}p9#ʎ1e8 Lq'B!B!z?_vpVpɨ$ *{jLe^=3Yϊwp];W_q8ѥeB!B!D * ?kwF=X8%!5UI챤D'XfeRZ;r0(gbΐhnzw^vHY!B!Ÿ>m(o}UUrǼ4?~/Cϓ_ճ+(\4%Ql-,~ȏƜشLOk"wSذ+cB!B!BAmb Ȃ˂CBߝ?`ёs0[}cQ>>,Etu+I"Mǻ{9lmѽي@>ˤB!B! +]A {LtA[Bѭ~@Q5|JB!'Oii)[n v#, IIIL4UU*|8W^y%wȑ#o[WWGrr2zR nƸ1+efuӒp݃Gm{]"] %M%ナB!'֭[1cFd7E1LL>[MGG!!!'=0PA?hY]AMQNi(ɊP60,{6GnPF$&2<QێvK3q羵 qUSH$ yPD;z(G#'gnB!'MUU;ofOS7x/w-7:WN}U>o&#̅(UʫjE8WFw mǸ g#Ɯzv/y뭷?~<]cOrB!8l6 y'j9m$k؀/{{$Uԥ8pVzG-|U#qWT Ƙ؄|6ƐS-vut^~ Əǁ% B! *5{s(9SGBW}TQu>#ʸve $2$PM$go8{&sҥ=6NkXVTE!B!)_P۷S[[b!33N r*(ZF}ݬ Z}x,qOIu჉6'`"1KέUv k(k+&==];wr!(DFF1j(z,HUuz!眊/H9z(k׮ $$;*;1]|%w0nJIIuǏ';{0׳efHOOgINNٽ=Z#;vvׯ_Gee~ڴHIIٳLfZ .(**^ytΫČ3曵tttpg_@\\"+ܙfaY3FxU-wp0D=I F[&̯'wszLHZ@Zdw2b x f̘nolZ@W1e6vlfWYh{jg_?׫fE߯mٲu ,^~٬Z,<`ZOYh{>1z{Q}}Z^yyׯo/ZDqq1<}khhҋ/jY^կnA9iӦk..[x)v۾}c%_Ŀ]}/ZDiI6wdf=krXV>s^y=SOأx",wttx"^zE?j{=imm 44yZ,l޼ŋn:,pûɞ{0M,๥K1Mm O($W_}l޽Lnh;=>,x>W+p!#s9|7>3}\yرlynohރYixE;桇?8_KtW[[w/Z1tP-YA@>+ʏsl6gx" h3Osх7^Ɗr[ojCO-vTl ;W^yW^y;S[_WWϋ/ȪUhkkCUU裏XlUUijjwe۶m^_UU=>oS=GuY+ܣA]/=tCTJg :DHd`ǟt~=֟Q#曵L2g o߳;2k0ӴoXs>knF6@~~>Gagۉby7w~p1sL6nH~~>c̘|q=9R;Gӧсyn~;y[~̓Ɣ)S:lvl3f/bg+ٳ{73f >> NJm]-a0k>r>|8{ܟ.~kݱc;ͨ͛={fϦs~ƠA8x Z1cun>''M"55jy1qcuۮ?z/(s~9#o2y iiiݎ)vʏ?&11oc >}-5\-//?BEy9@@^0,Խ_9sx'9s ?_O<817+k|saԨQ |~?SRz} s`ĈlذiӦ1{2[y睷9kVP6}  T֭[( >'*y(ĉyXns6k2x`Xjwo˗cZ !..??rlTXz_cU.j}ЯWȎsYy#W\< yiQ#ȏ|ug@AooM~m̘1ݣm0f͚ͨQغu+zsuu~\tŘL&,X@}}=׭ʬ\11g.$;{0Z=w}qM#>Q]ii)?OK())aꯈ9眣1 \qxŗz+>!5i_=$>3>㬳`0NFkk+v`횵\|Ο:;O\\7v;7tSxO${!/^_˝;wW_Cgg'+?^~|}VQWWǞ=vK QZZG 11c/!Wy{{/jС *]Ow!&&k<7̚=O硷뵷3fv[Fw8W P}iwS =`yx>oTSOd~G}ēO>ɭJee%k֬N;q1j(KAA\wu$%%Ftt4;vga|=0Ȓwr /) >"gdp-k*w1M{s!789|Łr?'==)khe]o@wlX?o?֭Bm?\cUUeʕwۇøO`ѢcHBC}wM=z-cÆvzxn1;vlpt^}EQM}f:kZ[> 6vJ5kPU-[0y*TUfA }=G'8sYp > gť p8?G&qΝ;3vlLNIq{x`p8 cG9:bRSStz^{oŬkg={ep߃)o?NuO_?oTSPAUU͛ǓO>SO=ܹsgӦMZ~{j*ZZZ9r$lܸ{w7bnÆ #44UUB,=_u7"dEM$ƘH)QD2ŀqF5<߿&*<7 ֮YCcc#tttL4n8.r曼l>ӾN寿ʏ?cFh7m{{{ǸPn`?,^{U> Dcc#}/PO ,,6pƐC=gOٺeK(**"<siii|~2 8S_% ?g8~)wL{+r!?cz%EH@8Eqh.swwL]|o+G( >mmm|Z=.7+x9|l=do_3}1}wo~{OZZFxx8cǍ#//+>d(ܹsl߾=s뭷#<s}KfZV 2=(aa~A0 \s͵G?> ?P))o+Ɔ3g͊R[{s;cˁާ ϥ /孷a =_ok< <@߯W@>}t?ʫ#?eee\{ըj7-'NpPYYk5ydbbbر};M&6^TTχ>_^,gs…xׄ gI |Wړ>a4v -r }qÞm ׶BJz%KxyyoKXXrWs㏳tR~aHOO駟橧bѢE<ü˨Jbb"*7pǾ.9&l6/ǎ7ݤ×b^^L{¤ɓٹs'deeyw9s&{.^d_ mN{{;O?v|5󥗈7sb_yڴxWKKJxw1+Y8 owٓiS9E8C8&OT}?saaa,Y~os| }y=Gsl޴Y__M8Z=&3<:ֹ> sjkkhmmrr|78&;;Α{}ω>_F?uw}GO?ꪪ\l DEy9w&22RUON@@}r\Bq*SAUUf3񄇇w[J||<c`z(V_y",$o.>2`j| ^Nju .9F^> 44. pfe^~6Kbkŋq1Sxw=Qss3e.BF#3\kdƍ=;Gm }g~3OG\xE'?嗿eE^@xx8]ugq2+V|HHH11\|Ťk1p8_~?7#Gĉ=Wϝ3&OJ@޻ꫯ|(KE;'/<̜9]ƿ/? SNa͚5]}5z ݗs}ƿ;h晧oJ:ĔSngMu5v^~۶mi&^Oxx8 \{դS\\Lzz:|gwp@dҺ?jmo77:$4%HQyUPPP@)i^@˕j" *E R˥"- )$,YN6 <̙s9sv̙397Χh$;;<|}}yϜgee'W_Ihs*1yZLVV6ko:nT'MzDU뢵-<_~%C o’|֯_ /hӧOW:f Dlҩ B!lٲMȫP&..~)^? LnMZ B!BV:vM"fh48p4oP\\xF B!BÇ9u]vnݺxxΗORRm۶tF470ֵnZB!Bd=Jjj*7FөS[f~[n3ҩ B!BnD̩ B!BHB!B!l" B!B!cMg@!Bܹ ?+ӆ ! #B!BaU||t !B!w } xB!B!ҩ B!BȜ B!B!TB!B!MSA!B!6N!B!BD:B!BaQ!B!6 B!B!TB!B!MSA!B!6N!B!BD:B!BaTB!B!MSA!B!6N!B!BD:B!BaGK FFJeZ&B!n?s* JeZv35By:JbF#z6eB!n jj5jlE1e֩`0(..FӡMov/B!?qrr_B;#|jF<<<ԛ-B!nO? %??^ FȗkL!96ZV+AAAtބB!>䄷7hpvvٮ r)wGNCIHH !Bܨ_>:ѩ`4kL!;Kosuu^!.VS&PBZa4 ^!.V @a0f(B;Z!Ϸ !Bܥ𠸸n r)w5WMC!B OOO"ӱP5B Ԁ !BPTP:IciB!ljJCMC!B GGGT*U'j,MC1d!B\hVBS!| !B!&ҩ B!LT*-Bۃt*!B B!nҩ B!BHB!B!l" B!B!t*!B!&ҩ B!BHB!B!l" B!B!t*!B!&ҩ B!BHB!B!l" B!Bؑ`h4t6p !Ba+FF1[䄇G'99.X ??ɇwkYYe_Mߧt*!B֭?_peׯ?SMDGGUxTŽ^EMgWiN!Bqzꩧy{1}w&Ycѣ#{WWWڴm[cNdD+IB!צ S;aLRA;Ѵ?tn+lGܔ}2 F,Mj_ZNɓdgeq!wSFC΢q&i.ޮͬwݻy衇zmٱc(,,{U޶&bZus$&^ΞeW9zӫWoF=7Wt<%--sкuJ[\JIJe_'X+fbr}=wRazR+姟HKKrBMTiQs$&`/ʧʢO?eŊ:t/ٙ^>#<Wbx|ɿsJNҫW{;w܏ǎm۩U#SD7WtF#Q6t*Jۚ_Y:uꘖGhh(Φ啥}};U6rriۦ-A;wŝ-6&/ж];rgggZn?gg'~_4ieHLL`0RXX?ѣ_9>۶m%""V;odǎs#88j+իM˳u$''{6 S+0ؘ7f̨\JҸ밵ze6lx}(:/^ŅdcWIYYyqkڔ~ }t7ƍ,kXV[uQQo&y撚:YpFzš0m꿉cO[]v 4QW\/,zqqqk˴kמ~J1N[Q:d-q1y$oH L;v'oWg5K^I[doΝU?>^^;siY||<ϏӨQ#6"=='';;0ӷk׬au;CZZ{{?suTՋ۶_yG9Gll,~~vSMO*)*#zwߵ.+x:Ӷ֣x4cu+vӾpP9)γꏥw{,J!C`< jS!_Kr^<5hsJMZ8^/Q+,CUXPU+9syĴ엋%{Ldgg3ѬZI'WݢErQV}UAA׆R}8/O°aMt)׭vh4&OȌ7^gVZ[ p ^ze\tֽ;3z w˾l[3X~Mo?MgYtܙ#[weQԫWx(=JfK|g^Ux\ox 0+V0tJ\*?Y"6~~0vL7/Y`:9;+zɒDGG~j_exC kJff&ϟ/}x$RRR/^Tt:z  dINNVQLV\Oiuϼ?Mm3M65*+ikU;[VF|Gj~q3~δqjcZV_`NR^{uYnO *Vջ7O:Hqc2JY~MhI4fJAHא4뎣څGc=E,M {wҶ+`P;b00NO䇦8sk] &^Ng!_V1 Ԏ콸>FNGHƺGK'evav5WCe1 AAAnנA…dffҾC;V6zlaСfC` 0СLt:~m' 1!tuueqeϏî穧&88_~Q6ħ"J_۷m3ݻvѯ_TښU;[ӶFhZOfzÃ#GU;_s~ZOOO""MFbbJ^vo{sEzoȏ63kJoH!n,cwvdƛ>+m>-tWq=jgT*5 ܯ4ĈF̯i?==u<[bU z7s mjө:ow u<[XG}Lj>G mÍTc#}LDGG3gprv&/7),,EP~}tZ-MC.մYIlٲrX+繳gLijՊލkԨQ"4iBRR(-?]`K][vUQQR)-Ҹ߲+{`9M_ka凸[>WRUT Xf56h}qq1@Ʉb ϧCѥ˽wСCtT2åK}9sNfUlJأ:4gʕDDDХKލV>}eTeR%lM[Iiذz >r!(,()ҐZH &M1\JIN: ~#m[0 6 ӬY3vF6m*m[u j5W; i꺆2!,3r6DBI~@siߓ> Q?}MEيB}.+L#N~`4ˋh ȭ1*TDg凳GG?Ȼ+L)ߛkvb,nTt!нEgΣᥗ_6is)hڴ)*ן՗_rZ{m,\Og|w@8p~G=k*Cn^.ӦYo!4y>AAr4J Ƚ1>h>¶gs\H΋$W4nB^@L~>/-.?X5AcnQv?@g(DR5>i֞34-\KמQ O'Թ3sf&//4|~J?G"xgOy ˋ'OmwDɛ.f}^;$‰Ϟ;FյtDGG3X\_i|j(Vc4nU+{},l=, ˋSNq]uJYZM4a_2?;;dӐu{g ,)/~gӺu ^zq#t gggڵkoWmOٙ>ޜŦIwTZ_~,\Qϟȑ#6S*eزUÝlGY~Di[H@@G{mJOܚ#߷o_CVVEEEԪU 'kopX/)?3fX8Zq-s*I)z)3|Kpv6$x45%7Cb4)Jܯ!$Oq\x,Qv?+v{蔳3>aH%Π@skTD!^Hȉ%*I[HKK㧟6sJZ(|||*L ___vlߎV~ˉW/Jٸa۶mHdd$.\p;ZX~<ϢENFÖri|Gj䓅5>u… >urssl.Rc4nU+{},l=,Q<9`k׬111|׊qque̙$''c4IIIa̙W9OJ3T*FuOt:䕇7n ++˴npvNVLDxxvNZhܸ1`zĜܩƏ7:ToCٔ-eزR~ǴmӖ#G"_%m% ͛HLLdml޴ hГQTO{(!(Iאgptn WpϤGOiا\^-}OهH/\]&MM{c~UR#\,9.7Agl=/|W̞id/]Ϣ02}CJϙ3{6h4=gškPr7}k̜._Oj5:tga޽oĈ(,,y3{6jZ͂Tz;n|+^~i2NNNѹs83gVT[Y}T*z=\2ᛳ33g΢nݺՊOOq8Iaa!#GbI6fʱWkʞF[?/2z?pwwŕ1cX6(( 2wxҴA_.YbX2lpz= .`޼899hh޼9z6ޅM?Hx.e1,N:iz;y 溜Ş()={dΝ yrs(Mǖ2+ikl?] ;'''3v,s̩vJ 1"m/]Jnn.:t_W_1=!DYwݝt>d!ύxNDze0}k?7 w鍦1ХMt y"\ˏvmPJ~,9E\iۍ?e= EoЕˋ#Up,"ULLiӦ׼ %p)/y&s_m&J;!ѠAE*$$$Wn4k4 8o@KNN)[QcU-w%--E-&##˗/ӠAT'>VZٔƭ:񵤲zeq#z%rssiذM?RRRחϵ7^'>>NGpvyڭr;J됽bjK:m ))"Fa-[xؽrwv888ZqB 5-XrO__ڵmO?Mhɀ5WKhM#hƥ8 F=.L%^&ŴTu'lr'`j>^ ӻe::r/zJMgWBT(4n_! mey) B!B!n5YTƼI!B!wn#BQ55>Vel޼^8;;s2vx7o^9?U'>bG:Wp fP1bXun٭ٱc;U?~'33A>{O?Jݫ^*[ئ*mޤ_*L_3hYsS[Kfa*Njg:dTNUl+{NJνyݩ* 6вeKZje ̄}4oѢr&iΝ$&&Dƍ֭ͯ?U0bV\_MgGjSA/ɘ1cq_<<YJlS`0pq/^ߏΝqqq1}N^z;v|!<<<ʥ!jGY{#M˟g"~,84[k4.tsƭ7T%n=ULJ]xH BǎP+jFqo 8}֩Ht=Knh׾=Vdddpe5kfh$::ڦ^gkjϝ=KtL4*T4k֌а0:酣i֭ÇȤe˖ֹtYYYZ Tiɕ+WHNNnݺx{_{|LL 1ҩSg|}},k1/A9z))ѲeriiZ8@n^.m۴%(8sjE:u꘶+**"..l=%ySO{ƫ*mVZE2)sArm1Q8zzmPWZiܝxRliHO Ӝ:킻ob/@Omz ZUri-FHK5=pqp5m-oeY.'L$z ڴix)9Fz Ս򪴞+icݪu cYQh6AԼ Γ'aaaf`0C~~>M5YVeDGӸIc)..&::@ׯod.^'͚57kKtR^=HHH 33{ǬN[睮Cʫ39xiVeʏ )**2q2 dddPV-ӾZ-QQQhlꑟ?yyyDG\BjSä́,^z79G)S8{6-Z ?/M4eHZ"%%?~v-k08/7Y=m֚u*<?;+<=WްN֮e ٙhիǒKp״TEyQ%m۵-[HOs]5k3?>^^;six5׭QFtTy~#S+޾x,l8Ok1mҡ}f el'瓜{JMj~.4oKF;C{h߆\ 2"-iCO#89u:^ux:T\m63~E\v$MZ{'3sF>*[cwEK,aժ4k77WСgϱ/+N^Z7Ui=WTe=[tX^&c0xe4" #77}(?mqtrLJؘXf̘=ʑ#3r(V\I9~~~DEF˜1<fԭSljժeJ3,,'OCTT3gDFEJb媯T=wss\6l %sTʎeqfϚ[KWX+Xf-aa>}My_wS6m*AA1G7uDZG~~L: hhӶY9c*nO5֩KRb"},(`|.]Ju]6ɓ&2Y;T*?ST*_Kr^<5hsJMZ8~gCѝ%nF#a . fZнG0777d1/fUL<6U9=8֯'++ݻӪu+U9J׫H楗&d(ڮ"9< n_i[iӦ J⫴}ѣGY7 (,,48q^z4ƍ֭;-[dHKK#9}euBY#GxW0` 'M2_K,&::7P;$/X;o柶(CN?~ߘ/YbC3ݙP&g8?7Wf o)?Tv6 <\A;~6Xzt&YX=J:+>9y^btK݇x,l%Je^uߝ1ߨ4KKj~CG]L=9{e UyUV2s,z?iyZZZX;[[-y6*U;Z_W܎D ٳ>|_~ijk~Oxuza&"b{Mw##ϰzZ+WŪ͍}{k:tL8 S_ZſN57..oWٙ~;ͤɓy3|Pvl<($$$hoFQQaMTʎeo߁liذ!&4,F zM|r|y_4l=2 < 95glrMTܞjWQwvewIt:ٲݻvU{t:~m' v풡;8Ӱ& VizyT<״^Yj?ůq끒Gz7~tQ{#4h777p<Ёc**uiL6-ջ:gɾ}7o.Nnͽ6ć~?NYVcl߶,Fa]_q:Jˮyjȅ;Q???SO=Mpp0Jq_)S^f LY0?NGaa!7l~Z\/==VKӰf˛6+;)1Ԉի_#"N%wuͱ6yuK93LﶰUWtt4sf"66???5 ٳ*UV3xBAA'OoaѫW*gɢEҧO_zizt yid}C*ָןU+WA.]س{7ZGˌPSXXHOB4jԨM4p{8s L:g6,-5֬YͦM?}V\\\I7`9JDL^aÆf5:tWu۬ʔ9S6 jFf)Κw02 J.f?N.i\2 .-.sW{fm-M ,]5kVӡcG~郣m_꭭uyUX[ѕ6ATZ`,?`@.CVZ|GY+ xDVͶo޼.eFX焾MBN<==qus(R;88h6"с)睬[n<ԩSWkTʎew!!hӦ ]u#??S'O2}tdN(yf IDATQT*M֣+ٸVf>B.jSۛ`N:muݾ}MT3glӳKzzz}V&/t!нeJҠAZnö?ӥKn=zWeEQ(_K]?I=[fn{!k߮ܶk[V1;{"$ 叕)ݧ=U62^ξ!*X%0C'qۦ,?B;ySj<9`$"07]dOlJZNݰW1ֳwte&# edeeQֵQ{]vknz~i3fΤGLܿە<:{L?WZ6y#y-76(wEǧ:vZjޥ ԫWիۛFJ&LhTFѲcC)5Ą 5=p`?111?̼92'O4[~D Mlt&OqYg}{.%һnxpjS6)I:7BhO/_Bt=K?}Gaa!$hUTocH()Jblܰm۶R\\h$22ǹR:?"Z-|Bױ֭W .p)RRR橰sΣsNL?gcM9j׭cO?递Wwnܸ,EWN[2lp;6oDbb"۷mcMsNгgJa# 1_KQ߻}"--~̕+%jDGES+%z瞭璒*祔1J֫w1m1~FD~0vƇ~dkF0h }I/n.{}.g^ϣ0l~x=KˬM0] Eo]&_L5Y=WpŇ$*^V3}k̜._Oj5:tga޽[qJGSTF4y2OA,+ܮ-Rlб,<N kMPԼ>'׷@rMн QӦMٴ'ƍ7}~'SqgPK{jN$4E k-''d5;wY|Rȼ}~_^`ٲ9zK?_f=$$$GppYb Ãu=[*jIHGRӰa*M.[or6nƥ*Tj7hP ٙKZZ*>[LFF/_AXk^'>>NGpZ0{;K~޲{~쳤$45n\%o2 ly(kǒ=I9y|B}>I}GQh$ - 6& Xφ īWT z) -!!!Mv7;?Bln ~'ϓ9{;gf=s&?_9}i~N 5222͍:;=džXj[ۢK:?puus2t:&S!EK0|QG*Td)6?&9z |y٬ZʤJt%̚Թ ~jzp듮6΄̙ˮ]r֋-ز5N^d&7 #veRYC,;F~pqqìXoƋ5Zle%lNxwu]s9zެWu&00Q.96jK;QR|FS!Z4Nk͸ͻ,\|Mbc馛QiFwmɉ#FSO_UerYB\ )B\NM!Dd2mPPNWeo1!mcJ??!]շ?!_}'6?Wj.S"9?BHB!b]CJ'ʦv?+BFFyyyKUpttחҩ B!hj/XDbkG+-9##NG۶mInF#ddd4t*!B!htyyyǿ+\q9TB!B!hPxUd:L&99988hf{B!BQ?W{ը;t:Wb˖-3aDZ9ݿ]wڵ՗_?_w:4-hт>}aرV{E Fm !B!t*\yS`00wl\ ^gǎHVXN\\ ^zɜ~޽ƪT(-)uII y{ EƲm6>|^_̀}jywة>-B!B\SaÆDEEjzi^>uE 6AF^n.Ŝ>> Z B!Ba=#HOO',,z!ڵ&NG}ZOr|y3}Ppw͛ؾ}ܹsE^Z"?;7ww""##띟B!B(b_dd$oOup) C{5i $%%qȑ5j#x衇 .6k>lXv튛OX^VVZQG7xB!B炻 rqZ-{k׮@ގ;HOOgDGG-ߩS'prr;wkGGGnT((ǻsoo/y,OOO -L&~h!CJB!B40{:*SSoaƍo^w}Ǵi1b֭￧]v9r46lE޿; 2?M||>>+LJr HVvyyywT;s,f^555jFRB!B] t__jy'&&l2Ν;s};  ',,7|^x?yCB!Bq۷/V"??<==;+VTSC!B!et9G z˽4N!B!:PY_zjbfÕ˗[,Vny(ddd(E)--s(uW|(ryG(ʾʮ]EQ})]_9~(e'KUCR4e!JVV(gϯ1w*(IIIʭ#oQ EQwTku]]q)7)(۷m3+`(Jjj2|Pd2U{σ>8qBQm￯lEQ0]jJ}2푇?\({=JBB*ɫU~~2ﱹիEQݿ>Xb@v+&yUS}oA޽9ϯ{~o~6k-Wg/5j4...ok>~wVZ_~ͱ a+C!B &M̘1c5sYًd7oN^٫aa׹ž=PPPCޣݱ)=zpq=ODϞ;z6od~_]ꊣ{9r|vmZS׶JQQu߾X3zw^|'Uj9DDD0TB!ɓ( fdŊ9sfӶm;JJJЕu׺رcg8iR>=g? m۶#!!W^y7 1 IDAT͛3謙x{{3t0hGpp0< S&O}4dO!kԸxpws㣏ҷ__ׯ|4A~ͣ l)Z^uաȴise95n>CڷkGFF={Ҷm;[ThB!111888Z(++Ca21gϚZ}d@P+[]NYYiii勺 77'''<UW,t\=q uuő>jgqU^OFF5>SMųNP`2A_+رc2h`U:Nc*?3|pj~Fs]v]l=W6\X]'B/=5@V5]P:@p6nnn5gҥqpp`ϯēOZg-o^׶mWBy9rvvuk;΄Ww*t:VZŖ-[(((? gĉåvlk\,ϖ9y/[&w񝑑ѽ{:/ j]MYmui1u)ci(MsRiuu"h>XCջK^ eĠח2mt_Z'S`00wl\ ^gǎHVXN\\ ^{kɥ,ּ;v,7xRwj8d !';܈yBThN Ūkٳyԩ1l0 LZZysI|(Y i]l )1d=3^8::QU3> ;v$4,><)))jժΡhɜ:ubZlA>Xb0hӦ  5%а0tR-/^Ͼ}(('#5u(ղՕk髪g=>,'Oh4H_eWVZM.] (Km:(ä$'̏}R-֭[sARSRֽ[uYy'D 0(X:~}jTUsr]>ΖsɡcǎESg5ڨ=jʷ`m¥=6ԜG5Q2"4AK/J`3Ciˠcv1эAqiV-V^9$vc3uu}.?MF[ſNnm[R jlc^VZVBht2Nv$\ټSɍBPnBpS͛۷Ex;>\͛4x0۷ocz^Z"cƎe„M<[Xd ^^kt <0u _~vng}֭[bJp5W )8::3xGy0kL222 gҥZˮ` #{βKKKyػ:uDAAE 4ֲWX~Bǎpss%1)޽{p"@Zz50tAaO1:c]{M8P:ROD<7۲x:{Mʏe]3ǙRF%( W:6g[1;늣։<7EU!4ZBaa!III2rdZ-=zDpaza222eTy]֙,..FUK{yiƌ9skr1#?ħ|ʜs>ij=Ϙ1cdZƏ`oRZZ7~~g#uu+s)6n-Xf5/-xm˫Zb>^}5nf 1ѣ<<&N7|[oRMw,!--/Hpp0%%%̝3{ aާGf^2EMݾjMx{{STTČӬ]~U}j렂S9PS];6w\v\׏@mʬY߷mVm=Ws<)K}l9j+%hEQǿ~fh(Y2-1xry#oѻ (cKXcs 2涰 7]6D-N[:Lg,TE̿gwwּEd@2Mu Bh3]u}o]m1lݲ[ svww~1cL̝[g@HHnnnlz͡C,ҵi[nAsY|n;w2~/2uJ]M&͛61aD ߂R1&&E %%d^hW~~~0zܸ )``ǎH>puueڴq)XǏխ^gϯ2~-4L22l-uPZwj5kZn6߾ݼ%%%s'F;N[>6G51 >"У|oG7&G}yb`|9J9ۼW{swb09XEAA!r[ؼ-j`\狝JFb\G N4s B0mg=ȅ),,4߫ܔ˻\ےNsu;q'{UӧY5bbbٙ‚j@ x][ii9F^_m(|Xhs>etٰa=6}kblذ}p 9r$"ڵvwHJJ)]E]Y>;cD/۴qT5h4Ҷm[tm/a5㣺*ػ?՞UN6QF'~ϮFכGP-ǠYMm?K}lX;jUqQ!>ah4uΧ#)@bC!_Z3,ҙ--ֻ]/+5Vw'O&vڣoͩ5D^undx8jmZzݐKXLx5B0S˛ G՚xTU&kٓwM&SYT|a/3֝.,, \?`>ܳt҅+W;?/_vHWu_+b45ʾ٫--0} 3cٹ#w]zlm5&t b=C=Wen+&a,rqTŒ5jϖ:sj]{ܩ=WB=ؾm+g۶ 8?%&&ںHRRRZ!M<[vp'/Eq!~~`霝yХsgf̘N|||鋊HLLdȑ)IRW^^^DEYg׏Ytޣ__ bwʫ3GزRRr>ӧPWk1!ǎ_U=_* ywKWU-z7`s.䯔] ToKs,$VU{ |]9G/G!FT2u*۷gy{7zb6o^eYiV[(RSS)(( ::qw寿,5D="8p`?Gʇ~GuƯh8i"|5۷o EQ8yd'''\38szgG777|}}#uSV˝c9~B ::u>S~[*FÔSWl; PoߗwmN^S1_ez(--E׳tt:n}MZ-cƍ_턄=g~DmS50a"_~7o"11og{zQS,jϞ:P?9`q\%o ?P8mkdz~هPCr{$6G=$|IS)X@iY _Eg(煆fsZ~stlYzŚY__Z~J9s o?UoKN坒grXB<-1yk# 9GI?s@!5#%XrS{%`)̘9be;~f~Nǔ)S=gϟ')) wwR^C}1nO{'''xd4^_Tc&MNŋYp!ZV;.vK/3kL~Lj_ǫ°Cj݇﹇?~xj2cLyqwwŕGyz{mL0ȻůDII :uk~XYYWb…xxxPRRBYuu[W^h48b8P>rW_UV6>ۏW_[h.[UM4R})V޽Og6ak,j:P?9`q{yy1d"##`Oj_|{51 5xo$Δ+h x"]k w}EQpvpفcD<2_ݿG'J:3$daR,4NKh?0ߦf[n I?1?.N3,8:c1Kz%Fցׇ~FKZB!N[Oy銋INI&%9 ^da˪&[z`՗;))Ғڵo_5)))ܹs8h zQ6sGPPPKKKm6H|0$$$`4 {222͍/2W_yt`9YYY]*瓚_fv?Rغe GZjgU=9@bo O]o|{51 5 y&o~B|T99 rK2iǚ;Ӎ&#ILz=ZҬ,N%$7GwZ{u6ymR@QGO(5H*CqW{[s j6}/ Nd)|WB}3Oڟ&HUl* o/K2d={,5ES!5%YYY;v~Çy\wuO4+xTTRR;{xe{>;nٯb(~u$·SEJJ+gJJLF-Dr):k)r͛wYk*y q9 Y6dsrrbĈ<ӍB9Gb(Z 5/m̥ѷiA:I<,:C26ޡء qUk B\7OԦkJ[-[)(G+"+xLB]B gՖu|sCNe5Oc?;[ĎแP?H)W=-Muyk y%rCD^g_)(ԟgx1eR%$ۏ3Շ2<<؛FV7ֺ-U}vl ׶Oq_]ַpSHߓ~ 4!y:sHOq_Q/ %tAK϶5.e\oHSksgD|ybJKv6bC!/#1?סTj1P yV!D}5Ҭvզk av%W f˧Vd҈;M|i .>=8}>J;<9s|9K=CW>t1)fi5P߮8;ҥyJGj16w dW0ey<'H]n:b̋vi[*O4Z |zm¼>(m`B;y{)S&G&x(6ԺQgǖ`0 3ٱqmnyet2l eW%fɅ6B##B!oKg/qg[^19:'r2[c1@E .gNֈ/p:ſ0a-?Wc F ~O!!9JVq*ZT56:OV./aedrs{-grcT x8{'x0tjYk\nR(2ROFq =K.t킇'|4'qas]W?L睛ǥBO:B!g+3w'Of9uwԢDZxI{q4^OMYsGƬgHhƬul+oKmv2ׅJ\>_ڻZ J(qM "M} ΀73CtmާNZgz^*Nw s(7w ' ^mqqt~mzE OnB!W%w'  qwxDξ/ͶH$Ǧ2y'9/ [:PV Zޕ6EeqpA6ga_xs, >.PPh<}6uIKwlZVr7p(7N_Ρ4P6W&w'OnOf=n. C:B!UsޔuM/XDkNb/ ?ɋ]F19;ps{xet\C UyhьΗ79Ү:<3O(-+AQS!0ܒ,t"=b&(r0mũ W@JErYSUunދ"C>~3GO5w ۮBDΗg ÇU{C!t: 5cǎˠ6%Wz;p_?Ϟ js>k2Aߕ?.Z?WGw>/#(!ڶyμ T:%IעAS x90c͘2_@ft[?WvlI(;`4(2ʠk]=MG+=Sں\ywXXL W3[B#ZHaMttq\2주ww I?`<&L?>{WH_[oɓ' IDAT|@S=kRcC|im5ךlNcUlٲ!<&ND8@o_殻\v֨|bbbppp(++Ca2h*1&#iEuinS''S;XPNf=0fʻPH^Imjl?7cO |i-6ٱ#+ǂ^2߻w/qWD~*֘udid3(6̤z=gxA\WN '6։V^U/^2 Q;ҋ0 P2,/ZZyHƟ%1m;y(&eEj9|]+hŌN8i{:3h>.ՇǞ;ř(4hF{d%WXDtQ\vz'D 0(XBCCqv8dä$'̏}R><,++:vh(>}`ˣՕk鋯y]jj*֭[sARSR6|8 ڴiHMI%4,.]Ϫk vGAA>="jڔM.],~1>JNNԩӢe ̊:R[yzzx53g8} :vHhXX:8вeKR[g9y$F@zݽZ yդ\nٖC]F/ c8}`~8wkk+*akmJڇbpw$19G)6ٚ̿4WmXm1\WS/)ПZcum6lXOTTVgϞS>/__İa4x0iiiR\\ɓ'' 8?/eRv2[͆jOԖo8mk[bC_aKI^i[kͱal2al6JKK>m:]10} za9c:%:\￙;g6e _|9˗@hh(ND>M֭Yr5W[j*))a/gϯt GGGOp" Z%K+f^SWi׮+WO?cND޽YpQx8Is|I6F$^| ݃9{k4W͹[[[@oj= yV۔ڇo5CiηNZgW;>uUCC׽z+⩝YJ.:U-5^mL߾}-:*q|6oĠپ}G҂3v,&L1oknWzXƞsړK6Nu6|1, q%A_ըBGp ,7>NzQ߾@Vu ,moQ=]kILnkG6܇7kΑ?Y>r~݀{Jt l} Yũ=wo{j߷ӫ7,YBZZ*_~`JJJ;g6?,>ȶm[5QmJxx+s)6n-Xf5/-xm˫|ۑÇ7~/Їg̘1||v-O0Kii)5#??iX\ѣ<<&N7|[oK.ݛ۳oy'Ӣr1#?ħ|ʜsm qA>lyl*2]q1~ 7|yyFF3S7qV̿y%^3=EZG~[>fҳ-ܭȿj[Qz866V&Xϗ01|q\qU&{5k=ScOcŠv?ڪ$n9Z="8r0=0Ʋz͇Vv~^vZ;7QӞ\ԵX*B\>.-xLGK~d.:_7 >"У.nLxVI)Ϲ4wi1:?b5s{XlUz=.);".ʴiӉԩShZn6߾rΝU~dbML0ʇV g$nӦ ͷ܂^ٳ0 ܹ&g]f)Ϗ.7n?X,۾};z(i_;F^^gΦW:tȦF#[laӼys˫`hq& }դWdW4f$Ks8~Ί{WrO\nmZjCM1ꀫ;Ks8C.9Qw}U6ʞWW/$nc\i}](ߖh‚|kǛ3Fy9kb}Mk'A-ku6lB!f>R!' ƲoOGR -jg1 8 }Y)|- : b@fq*ņB>g6X3)&֥Qb,&YnFڶmkᙕz,gHX:)1.]0jh>Oz/saz6m"223ͯ[iCMY QkNii2*꽾aꇀk^d:d~}cG$v;[lݝ7XgާOf׈'gg Hg.la-Lt:~O=<<p FcͧCg5 hi}WܻZZV;w+Tm+RӦ4S>Ù(iN ' iVevmkFSj}Y)|,é:ǃ-Vq֚Ю՜].ܴZ{r>R!>[BYw*ՖMFLV9Zsڪp1; c:>H~yL1^L&Ԫb¨*_~yxdXe[eCBB޽۷ml۶\yѳW{/⠭yJ߅.B=umjJk4WB[nM~˭͛}( jsҹKV\eX~ٵ"*.ʌꏻj8nϘc׾}7~c1;wDλKk̷!P?* [BYw*;EQc}F3Q^9nx:{s"Z_DLt4'[N>5櫠?,LѢ(U@9x 0/߿j鼼8v 1/?v|~E5jS8ˁx6 Ϗ̬LwH)d2ETT^{yyTT_:KII KӧOs=XkL<")11c]YQQq_,R(f?;yy-yuPP︃w5}hB T}UܵEM簚6߽&ņB 2G:h5^j%ޜ>5-TݾޏU~(>d-111[$%%3f9hkc\튵v>fC'8 TKcyB!ĕѻ R>8Ҳ &=+Pd6&9 1?Nh]}( w%F][bq4 <-1yk# 9GI?@ vˏT!ҋ(ԟVV &_y&~v6?{E>p;%M/$BHQK*Xņذ{S.br-xJѫ }ǒ%mySNNfΜEEUU.2,hoFsn}:cµӦY8p7xLOrɄ |uڕz1W߿ϱJ`` v\.l۶n)”SX7ӏ\.4McݤVO}شi#[zʾw^>?>dggQT9Gv;{!,,Ơp}ϟn]T*z3a,Ov dwّϵe/2dy=y;zJe.СC5ih߾=w}'vrnyCa1[Ǔ;Ƞx }?OubCq=9)-Ks\BSITb0p74 .AZyU#6Cyx3t\n6?9-tύ=n,3g(gĢMh'u-x`UX\6npM:ƻQRRB~xtӿygɻ`f1`@~fOz!!! >KrUWU?yN'ss=`jҵkWƌitmucƌ[8|07p=f7t/b-{EQ3zJкuJ^veKkPcsIX[:^}i}' 3!5捍UcYYiiiޠ ysx䑇\s-3nŧE] ۰X,\{4n*Ӯy"+\lIS}uoY'B*Dn'Kk%<G}A%k!C!Ub/$hZ}nja'2gBNdn;1A i!$U:=F]@mŋy?0 >늋HO'"2p:8pAl\ -v̤m*瓐{O>??wrXen X_Mu?%0"ڄu V6R^äN'gȑ<58^Mu]Xfc]O? ׼-)) Ndu\X,nwHBS=_E4ADᓦQihڋt=^}&8p lٲ{ :,f)$##n/RBcrWqMunTiTBĶ[J?cK]QMѨʶܿ Z'pe[NWBVg4ѣLi^˞=ݻ7^s !Nfe] !?Pny&a{nl*ê\Tujcu*~f)͍b[rqzkF=ۏY{tt#1ĵlJxxx^3UUlB!8u,Ní//&#SzI*m*KÀ#0E{ݷl" yIfi*_zdFǫ\TujcynZ׻`>̆`n}.{άP%\#**&}mB;0<"FU*&*(_dQ)BW0 ֣)0ykxi蔦} ۛ^-|>Mݹx𷫙fƴ8pمesb0rXJ 8i߾=m۶b(=NB!w$k1hwݷQ;_Pq2cBC/b½'o"L-덴 xQ|uKR; ngW=cǪ2ソg1]BXEQ8;]5eZbR n[F$k ?sOIsUp;o3/v(,ȿ.qדl&}g͸.tJLhR?$::E]TcI!BSV sKAi*mUvm/frϙ ܿ \`C(n~g^}ylH˺İ xnLvl~u&Gg`kW[9 ^[bq1Ji֙VZgZY|9ݛ &0tPA\nEጞ4hdddPPPPCz*!BSh Eu ?[|(.z#vkcObyI1l\#H+I!h/ڌ'o!P@fA'ͧq:D @g{tO>fσ?ijpalZS5կbU=nghqU\RٝoKj{jQ"۳ec63zs懤OR_bPuJBuekA`ch13`Wo&P9q/|yz>@c8 myٳLzɀ5M.**cRXXHaaaiTB!13f!6ݹygSn)ǁćvPb+yaKS0,`x…9XKsqig9mB;ֻC{2~6`u9 | IDATsX@$%H/IeH[KzI*-0:EbW&22Ϭ aJ2U9 SD/ďҮ7T9Cuyֵ>f}06ہ^5+?zڅw1;%@cR{B^^:6mTQFHDDDiT^[nEӳgz_TTb!,, RRRBYYQQQ w7F.]5]Qr7Qdͯvfc#37vx/ ūQ}7c] ?^IJ yd[ꃉ0E|Hv2%W5:!2{Ϛ2{1Aڃ A:|-aj 踷E|L ^}}TU~;yPVΚagF>G)wuO^tFZ}¦|b~{Krw^Yny& vrs3}r&!!N ((({A;zJ|ч?|\t=w \|FSf\c?CFQ#3z]xg}|4rƌ-/^{d/q 7p}םUnWPPȿ߯4ʼn<[>F*W~H!EBH K_ 0\l tސGGA oqi.,nҜdUY Cw|~C%WnQ})swJ N[:-I/["E~57$x>/hԆmٞE|[YF>-sfܿ*;\Z@}M筍OYzMs3-Y!/O }mWNyr8cUڦk׮c]S+ր!NoSA~J=h7Fiii8fq{8a͊b޼wz9lқjWnU7O˯&66q~ǫ+cR^0yH5Kԯ:&zYnMh'rzUYݾ };_', 1 {W>O ?!>Қ{Y O\6C;t;(s԰ꔾA5ֹ>z-?G sK m 8:T ƌ\F}ǜu W ćt`tK* e̘1^UVo>vJlQ1zܕ.%11QܹulٲÇ`xgddp8hݺ56'77ݻӱccIJJd2qV6mؼytԉ;ݻvt:w>fvNGVl6)))tSx{35 O}؛.]бAUv;77λ|;geUU3o;3o}>;; oJ/99W_ŝwŔ)SkxWri{!66n71cɯCii _|KW_/r=;p v1Mٞ҃;g eVYVm;k5yl1@Q{m0|o䂝$¤!DVJup;f%,am{VW\ڄd$)2scc$m󾯲eygS/i!נ t ' I sKGrB$)) NdBվC\.͉,sol!*04u.;m'6(o YN%6蔺std$< `cXݿ ƶb;J)ﺧ)zb+ ;p.;B)gՋ2k'Pd˧epBek %%r hoI_ACoEߺ(Jÿi֞ sۗDn8x FNx8t nRN#))gnexXf5]vyfl MG=IGד3fp7Xy'|L.] 4q(-~1kl2gBByg8p]W_/]vrNCU222{gŊҥ+zĽ̚=Gu azJJJ4ȿ A &&4Z̡\TTT+$'3s,fx[oJ U.o>{jsF$Ꙭ9=Ы vз%Bc)ыT#ώ;sH/IEQTy82aR?&Ǿp%~ћC<֧Nޔ؋)G`|lYeiLtC54o|څwŠWV!xe5klZe՞0;Mab 7{ޫ1h|m:F7^JqBOd2~i#&um(nHLzOȺЫzC:TZCҧY eKʳ0e\mc^5Ի~[j5<:t?K,Ԭ ΙCff_}8V+3︝GyϿFm۶qw1eT.^|e;ow,#=|q~1!!/-#2ag|W_=٧,|<3;vwyvqs_[lᮻfc^~%6o'?///bo۶mRwuVm۶$&&[oͻsM,.._~eȑʷ:]z{mZcKUAU,[ Y(:rnlz4>wbZcsZx^y+]*#g5&~ ѫz,ॵrUi|V}?"I;?7Dw%>,jGfݦ{|s5xZb|ɘz-L]oqSߚTNr3_g]CRchq宷yhl{7 #B4Fr m j5{TDN]jt8,[+8Oa7$""'v_<ȿ[ɓxMκuڴimP{yv_mYGߤv+ץ.꫏t\}>f:egU򕖔xٲeuWcp:̞5ٳfq߽Oн{w=w,*?XV~[ /z," ̙U]/^OXXnS*N_Sn7ybijσ ޖ} ԢD{ƧpNq=UOdE|J.rg_/m{ށecSe--Eջ*!09XD%1ؖ]_ ˱14 ҃ ey!%6(Lcja)?$)3jY84[Ov;;9!o/vUޡCgP(=Ӿ}wknʳ[gX[`}݄DbPj/"OאT14s&m{{ާOYz ]mB!4gEtjeA# W\q%g0$.jϴEy .0ֱq^x9/[ʫs_.U=;QzㅆqPݦ %66];}Vѷ/gKII Ri?^ϣ=Vj@^4h?C%""g;͓O<͛yg޻rQBo˹yPU9rnT{.}\~G>jTB}+>)u.VZy]"{ʘ7 n}~[А?4M+ؒ6<̟3{FG!B5[B- akѷ۷m1%'cZo{NCDD99[˺墋/梋/=k~d7 ]SH6n蓇۳d*gH0'$&&VD ;U]M6 /wߓOv:z4DAA%%>r#ܒpS4[V3$08~W&ڇwS~)ܒ(,Y>?oM>^%>]wnsUEjPQ֥10b\+JHœuP(1B! l1TUK/cY~= 7`ޙv;26 kbpNƂfp8t ~CAAAʚ睡nw0~ץO>lڴ[w^>?~AQLo᧟~riw&55A`РAXIIIvyӦJvutؑ;g'??M~~>˗/SԔguƜ{.nG}0=gfɒ_)+-I:.СCevݧ _$Žt pfe˹nfq', .͉Fb6CQT.4?fs 'gwt'U=oď%+nyofqҧjܷz/Po&, Ҝ,.;r6Թ-Cq8=yUFAui ~Nb;nwؗЀ\yg}KkB!_:3(,,;gb0l 0]߾P1G`4ygL<ܹsb0Ztڕ1cmP9]..g"((JTTf?}O].0߄` ""Oٳ*ԩ`Xx=k*}vtԉ.]qN[o>̙9 筷dΜW5T111L~3珯AYҥK}Ok֠iZ}-;3FYYiiivJ_zXl)Æ #=n,3g(gĢMh's?Ŷ|}*FՈeoPFkLMv0oS]zB^ O}kE΁{dA7TEG\:֧V2p%[2W:˹mեܚ_aκ09DѡoyY;JI/=e%5!B!FILL:w\Mt""#3*Txͷ&77| ,t:9pNظ8HBBBCjK4lV+ڷ?/ѩ*m*91Xd o:vQr\.ҰZ,GDwB."|mzo?K]؜JRPCc/YzpSI7;$8NLPkⴶz,#8pSOԐWNyfC:(Mq KJJBa2u{ł1BRj_4OFۨ it\t>Sn [䵿l(p(14wP^\H^~Pb:\4vYQTLA!YL!MfNzHarqaUQ ,r7 T!BrJ4*5Lv"ɚ.nehn?ljӡWaoKzxdjpz^O/mn)g;JTv ? . '{tu-{  S{}MXz!^fPnuӶ]Ivr]ws8xY{ g"?-ɲr \Ҩ Dp8]!8! }{J4*kk@tW[+mh綡LoĠ,wkԯzuߙscjcsbߦ|GO|kZS~ep7 HV(N M\tC& ▩uڿK&>N.B!8u1:E8z g\7ȴGTUs5N{Y(5,@csͯ 3 PHP< m\|$ak3M­] on~=hU9B!'둏1*_.&5ͧ$f0u7pY Vf*EV;@hyݪR`p.a*4aujզ]~$LCQ`d'=4EV?9YlnWSݎ-l<4H̉E3Bep\.g囟qM?M}t?{4}F\mnvZʾM+)+GAә0p(XKٷyiٱg_rw]їPV\UK)+.}A}4Tc=cŔ{rq_@\:3L$? ~^@n~T9s$Jy_SnWZv.sT': KC:0^V: 2~aLc\qa0y.~7C1%]53gM IDATn g#VƯj+JO|"7~Ud;VzFt4n!q VY.dި1A ew 1&vg? 6ik[hD3M_St\iMv~9p¯{<*'MjDRGZV7nnarI nM9wwnZ mm<3buL\wYb1pU\~~9$=~'U 87$sXi؃tu%yt\M`ғvV[ctd_<C弛] x'Bo p#UX+DǷ笋03nfgfZ' Vn~(KgѽDmK[YoЩ hPSyH2\y1|oAN. sݤn2<}_$!*[wW?T{'#, Qdlc~kk{g#zBH !B?H3UyO|שhn:Fpn 5JmZ 4(Ć(NYed'=ΨzƱТaO\ێF99]k4gxd iF85l}1;Wj?*7m?oş{dQ^\RF9W]g)-(]|EQkoTTsH8.gߛ@7`y$BxΡd 3|)C#hٱIoquH0p!djqޝÜ'kxIJw2cJHp^ ,[iuJSU!"LhxTI!6Z2rH .Mr9$ZkThS=q71 \RU޽̪1=tt>ƳWP;̬VBH8}Ϳ ~`iA! }ÖQ95mwcX'LYZk<Ѝm:xu!ӝrsAPx AQsT5c/ĥ9*7@Eq8qN 1 qⵊ*s}9$Knxz>RqezQ[vڱ5~Wƺ*(f^#/Ӯׅq@9/8mh.\ ˍ73[Ѵq &Ym$M\Q #1*mV(\ef'qwޝdv 3WNUc3- x򗆕ß[Mo˲El&%ymLwy+MBUni{!L{MRRуaTZg7p#_XJVz6}A1:͞iU|dhXc[4FC3`?/`T}s-۳{6 e/A݃j Vq.OiauapaB4.BAo>ۈ+ln=FŨw%Ent7Ɍ^]M')40zt[SdEJ" vogrzu҂\'lNo`ߦꧫ9Lm1bo© ]@2YvJMMv1iߥ#Nrao˨ͮq8IVmE"ϿUȟkϩigtw2bTؾw'8TdW_ÙN/+GQ`p=^}oN)Bqף} оm(>E ʍ׍8A6C1$ ! #JU=θJ曣n1:cbYYKZ PߒwǑg2WQ|mTEmGK1Lcᶣv.]ctզ|Lp8-BG^O܇w;b,!#RƢWe<_۸˿cزl){ne}~DZJb4726`/ p9= NeykSPg LA! ~q m?~t߭~oÁ]3no[ziht>s߿Y)gUCUƶ¯_7qyS摴q:Q̱*?4qc++K{v䱮ڲs|ĉӾOlg'4DYQh)krr]K|^z4 1C&_ |>=).qSPsܲkJJtioO=CI1r߬<;u+<}_p!_X-~U(_2@:\ZԱs[zBԟsݿ1Q=JpE Z9(pk2(@$ 'hQV"$&8})ZΝO|Οj$5 MlZVEV#cU"* č٠T؜pAv'tJm7DCM嫭nuTwO;n_(hFq~61-+AI^6S AҵYp;5J~'$/HPXdYm^U?%sB6wk夬LE4 r\ĶU&EhJ|K}ۺ\$Q}-7EiFB+=UMpjހ-tur^,tL&tŒr\X,n7'3))|v A+܂{+UA jҢ;V nFl-F-Qw9 `22knԼ'EQ0+Eڨ4tLO(@\hGtL4M7o;2uX ԕuIj@xBx=4I@Qm$uzᱭ]*WUa-Z6(ڎ8qTj(S߂mj@ֵ#uD0A4K8Zm?M`Xaq]OP (&'vG@p9VZ4Z5MC5CQUiB49B!FE)Wrwr%PN3uV J`P3xP@oy EN6QtPՀaB& B!BԠ0s?&8FA9p(g&C41-z8 qEQ0&,̄a(UGUT*s<\gN$mr:Qڤ@p)#mq^er8JAOhUVT-M  I4'9{}rФ m:=yzkuwRӗΦFǶm M>gSj{N.CkM.CM7F=ɩY<BfՌ9X`89vF 3`YgCtBy۳Cp|1a^w@עQ`8}m +Mc;6LtNwoBBHCVP~wi~n%+wu*"VHՠ%O,AڳNe Z @7,jΪű%Jx1/n;]7",M$۝}Z]="[+Ba-kQ`0fQaAm%y0p֥,⬪p<`xu$80kHz3*Bߎ&~$*$*}jX7n( J޾/مg;( T٭XN[H<qHt!V !˳_Vh}ފɆߊeJdȻ. }"Ok Za Ev"RrC@*"u+ɑ#I&iin&NP?ex+cQ[;)SH$KH$LBĉCɱ3*H> C(u&`aC'`0Cek3HHG``$XgSFۋy6㤓+ܞ]!Ҕ`:8!JoO,x*ZZkl O}[7lk>?D&e( Z|-I(^Jē#1CKJKؽF=NOѸr%۲#k%N裏pK\{yOT{ŏ?Nʕ\{~䰼 oLQ`0 `8DZ&ݥG,Ķ$v~V hQ(!lXEV&P!)BH\4m:b2ɣ|)vb8{6xzN[ַ=kZZYl9L;TTjk>Ɗ "HP[;qPgc[V}}ߜ--4l$NL&2߼1\>D^ȴӟ$TepWL&_mM-3/~F_w(нePz 1F`0 h_Xcox_Ċ 5Jh!ٵi5#G傰AeC-F**W۟gpՎgIPVr?R 7G@ IKX(QJ>_Y2V(WhRH} pol\դinW$HKs37Un+̼B k<׿ϟ?H76XlY~ )H$+ ˗-cP^XW[? fp`0 '‘|mn~Fzw2:LI"jkY1 y5}DB҈Ohk #E;V(+FV~xD>fEUd/$tR)3Neh#B{`dY7?dN_V(7<8Hwl ףs?.rX}WsSض  Zoկ5kQY;5cT0 `0-kGhq{;qvGŜrx,X1eMEB)E!B! J)KоߪQ(iFH;4ZA໹v]R e|lk~cOuZ+˗/#J1&@\|--{\3gOt: k6|/~S˗briii)n5 kill,~aG k7Xqf̜Y44ޡ Sӝկ?/~v[x#`cT0 `0^#ׯ&XQA GDlr5mH8qQ|峡s%?Os+X+ʋ;}\C'Rb]}HFBnۨƣ_G>Zk,-1bwjQ˫`̜ٿ~S>cL6X4"4Lk`I466C!ORŶ˗+Y9mڡ},D=}25˗/+W_s̀nLW5tңF8!8c `0 ȶض墵dS#18jSʖ[ز}3jq IDATfr^?o|ۗ$|%#KNs.h!"t!G>Z)mP!,@#M+6BvgPɟ7  G B>26ΰgK3FM<8 dYgi~۵4߿}M-;7ÊˋO!lxpBA+Pߓzëw{}Pו ZzpXҒ`w;3O.*:{|霯W O)E;F iY C@T ^e'qB̼_t ?ݍպWW`I !@P1&[>+E eGب=]v,YT*l_Dig dZf;`Y3g93Pۃ|MxWӮƕ*]QW_ׯSv#V^O?۰` }ۦL:s2c- ƨ`0 `xu:X"xp$eKtx;B̸)nB36:ӼJSONEn4E ADU$- ." r#PRl%?i <͡!.hضM,Ҳ%N;c1ᄨ޵Vv*vf[>Yc5K9*}a~Qpb޵{[hì~u_l0 p86hﻤc|9)~*^ͳiz£=|Z0q̙!@6 /L;/[-"LҲrrH;L}u)p]=@!d(0:HX{ (7s 4&-%ZRA4f{[ӁbHg̙\;aa/c@cc#|}iӦl 29^[[hZד7=8vqiap=ws=wJkC0s(A۲H$^Nc ?`iVti"v>.2ry~Ӕ+1#G;ཱུ?}N ~l/XtU5;( k5Yc?~,n{ssΪz1`0d:wӽk3#*@(Pv݁;+a nzFGE׆7pc˄#! DxJm)1Hˢ6Y SYP?q?%g4@` dOsQ " +Kd6mrLyXtٵ3-}\%J%D.'W5ܘ2 #tPұ >M$\v}[hiia}k<74L+n{ok{/1cp3fر߆i$ ;G7 W_}͠>;s g?if͞e]N"P?BKݹ)!Pn@" QƩqzcKs;e;_gT3TF\pt87YLyc.(Bikn!BH>2i獹Y3oGO~wQ3Q?0X 㠵@).ٍ}B~|/ˤ +Ȩπ#l޽?9_ lɤP%>sh'ĭOn9!AČZ^ VwhcRy h4Cq;y[aQn:i~6G-dDa6ҲG4ώFwy L1fY)~}456T(YaZ3feU'}U0*G444/Œ%Ѡxmuu5߽{H:&Y>uuu<__]}=--~wHRX]w}Zuzl {ǂH$BYY)k_^ͤ3&yT8! = 'FG_N5a>%2dI#\~ֵlhgoaxl$ cfthVNšY/ kŻyd<Ỉs w<%< Z/j|cg1b,pyf|sٕ{]mL2u&w `/ aj~Kn  eM0>0¡Ss{iA zDwa <7 P!ˆ…yXB<e+ᐃ;%0j{hM($ٳ!5*$Ƀ8X8B]}BĀb2,&:HPhHV]}=Ypu}`\o8<*W= RF}AF~W8 #'O)_MUoӿ^ W}3\v +ۗ3l"ϥ3}GX(^NwVqomOԦ%&^纺3i\>?o4ZS8Ϊz3ۺ¦`D_kY#Uy)W͢oNPި8άzK;SkE fon>v5Tpv0_S6tpɠa?Fr[ܑo˖z|W8Wm|8eg ͠=etJؐ߆5R a.zHvaԖUo {׻y*(Gwڙ1;J+r<{ 6Bܭd;hz ZK~S(O!(OaґhU>vCɔ1N!Gk;_Y>j!*b86XEt.,s<y>S=jyt8 1e:r;yȷKaqv|ڗvJrϥS`ej9W}3mW#v}\' ?OUlMoW'_4vA{+TL.9;/*lE8M4N7&:؝+{^*iӛذ`#구\qo+Y6t8U׼ _OoS-m-ܑo7``o0k~d$ƕM'.m'꩜V|Rn8R1Ͽg pZ>+c>X݀3JG{ hP$y̑S.E: B[@i?<8:X$FKx1ˢ4-E#+M{9"]1,t_A޳MBHA6HfYJ#(R *VR JR(ض$^eG[##' l7ވڱ K>F*BD 8F]NxB[pm}uSq?l|Fhh攊;%;I2"_}TFsY_"Z߃>rBr 2ĜDtf՛xw?l>e ֖՟_Nz<{3g$X}z356̚'^YrKv-HÁqpo $b>k5`p uN[e:0^ )-,'+zr(%عy͹vp} ) =egڴcj-܇TgO΅ݙh,YqBZwȿOOvW:^&fnˌLTb`o`ژ Y| 1u~f fs|`|` ,y]Wa7a+Bsl[fF݇3E9p(\|?]M]txs $jlͱ$![m)m &lG=bSA8Ah ɰLgLBo!Ѕ wZkZ3Z*JBhHJPMd:v-ۗ`xd׎m祠v”olxr~-PtvјzG_G]L–1ut\uCY?TwJ8b2oyy-gx]ؚ~!9Rliֿ1dY{>nPon~4lN KaݞQy?ƽ-}E#b`,[VIؚ@{F561'4Ju| #b#YOؑ9pY%f'/k38f%B[ش!qUW$BoRC+1+&lxR7a̜1?vo^K,FH%"hN .Oy~藺B5'P   3-9J:=~Q!ZQZ! h2*h8 +P>J !%"QZŽFNW`xVb8px,Eň7VRƨмy.Ha2~i|+cXbm|-[˯棏KIn7gsG)ise1:d9}bFC`:D8O= ~ɫ<=j۟# o7=y(-n'ͻ>Ǧ$q;<{3t=6;[_7qcK5^7H-_oflk+!g( ;oei=2 =*W>h a;J][i;pbp|}K,+q-uN UV"-(xAP#(Ž` C} H_ d@@R$:TKAXv>РU!(^ īRyRhf~Ohǫ~.*xоicT0YւmIH/qPʇ bڵzĉZ!gGwF%M}Ѓ7XbNb@9:۰5`xtiR] [}q0xh>w1sG=ih7VYc?8oD:Ay䑆cˡZJ39c8477cYHd?>LGN,~Hp3h側#( B@!@hs9 - Bh GNN\m A\d(V0dh &=Py߳ɱ +HDhEN !!F%]_I29}CkK MMt rR)/y󆡥cn6Fy0BP/eU#G7Db(z+=D0 $c{u( S.?8wp9 & 4ǣE۞hO!mCl;N55v񃃯~3Ԙ9c0:Cks#Älrh (CȠ\W $CX R Z,/`YZ ^ D!%a3XRҹ#MvHFk?H P7Gy ZTβ$VX@]E*>Bx~Cd̝;pŵWs IDATv.YB]]t-\4ks^C=Wg#CO-p×>cƀ2ͻE C4H$wT'<Ѓ,]tbğ)jjjHӕN3wUL1]@MMM14eJ.^hsYd wq{? {BJB'?!())ɩ`0 `0z@6ƱA$BZy7$ @ Jv!l %eYӱCXZ+l)RH|P!B A@PUY -%A)]ZJ||4'P΄? OX^K,;n缩 \revOcqѬY)loK<`ƌ~eR)-\%^Z<+d%cs^EfNI$pݗw[~3f;ng޼{9U0{'̻~D755\×;Ċ+>cAǯGBh,䘸`xEe;Xro c `0 Z!`G:LdKFshJrhA "塴h}d#RvrYvl|%=]ؖh4('R@|GP:JtdR!J%BH E}otgx̙%KxjrNm9sLajCOX1}ϙ3ئn`LS)5_La,]K.cmx` `0 xץ_z*B 6a8B'{Clܸ P!lnUz Bþ畇۽\ p"]PV5p8i羏˞]ttV hjj.VZ[[YhÜs; Og O6C ر(p'|D?1=zaГqժUL𦳕;n7ӧZ ӧϠ+VǥKo<~3޿p{{s/$U;YPZhh:Rбex]8a"$&$}B-5ѨEIt4BXE$B %-4JImϑCNٛSXt Ajjj$u79JMM͠L< Y\t,Z[[;]WXA:ctS`lkEAw@$=)CZ-Z_5TQ_p `0 \E)U|گHF6’ mcBJJFRyyB+رRtW%^^a-A)¶ ) %,cCI8ϰNƔvqrN-ovTToL̊mLP;.eUd%0˨1QIJJ"{7|~H9shjls.Jq׃0x<֚N%K۵0wΕ<ЃBǁ;w>Rٙ. !#KOM<gr]K.f…̝s%M6-ZT\ҥK|_[C lwoXgg'_w!_cucT0 `0BA"`;@att_ўGYY5!T. ہVRX!n|ŖaN'D,EX@k"#}%.X@eF iYXvۉ"@`Z{. #Rwq\uD"=D{ǝw 7\Ouu5$]t}5]C Kikmw<OIp9̙3ɯ*)H$wp%:dUSӾDȘ/~s|LɓH$,]nq׹j&ўJ·/ _e^„V551US \Wǜ9sy455Ǭ:H i0k׮G`0 ˲D">LT5҇jwtt \.޽{l6O{'88f7,EmkaXDvtIwUYͦuw(/ KJB0N!aXNˉ!-aYa!,Y7B|ĤY Lesb 93FC6755 &g衵 0ujCK.=524\tWxTj}3੧V2Nڰ_Abί*z=ؽ$S+VJS]dԩ)"x9o\et0F`0 d ,NŎı"eSsŞ{P҂ nĨJF /Gڂp,#m!$rBr]|w]|/y9|O5n^|\Ox+խxU_㤉gp#08 'T=^H*)$cKk)?q{lψ9 fLxoǏ&o\ve' f^e+Ę cMIR.o~?}>o_f=NTڻ6s-)~@ dDlԀ{ϱ{ sje1`la(gqyiYHFkXDkPOt$2ZXۙC~B]7E.sW Ѿu}y\W+eY!ᐃla|DOE) CN?+t0l"ZkmfX8UA˺ٯSDi|Hҟ^Nj;QXҴY4yN 9/U/<2_~ŶYՋ?s+S9yةnp`0 6m,*~^ڶx_ytL(?aliR_Oot;Wv y?+k9;9oAI`;ؚ;y~Ӕ+Q`BJQ^H![H 6ZϮ;qwÒ˒%%TPZi{>ҲUapжD,lF ?,Hi`JD"B!Aa a?NI>t|r A,Wϱaok2*wmA8aҟ^Ǔ<ñփ0T6|JȰ%R m^ 7S|TW[Arv~x+~ xɊ>*6Wm~>?=UpVj}[ݵ/0 Nv6,=ze˴w^ 1)\6NBbeV52O }Jn VkyBm3:?s|>de@PaebƐ[Ł \yF@$Crr) 9RutunSh+5$Si#5G;o,Aה5K6~֦W3<"Rlub^Ǎc 0a2W>j'*=^p\$vf>݉#, {h$8[|>n;@xy| 0L<8ǾbZ5"AD B,ӂJ?oya韹<.ºe<02>}vAID;hgblDİpl^J}Kl/H#)v$ i MYH7 }ذ/g/gxǓj *Tʹ绩<=!7ROQu %=}8TJ=|5^9+3`#raYDZ^CmѺ\?adkOj➕2$v4+3^Z¤[Ŝs*~~x|Wh+|N.g5^HQbw!벗qUNc-eה`M ZP]}/DǏeX&3~6jO0 |>^/χFT$TkZ1- "r4hA=ću|y흱 0ڊi\gǑU·ghn?hg1 29P^mj1/0"$Vg̢]s9>q"eB 8.|LeSXkhzUު ͹ "-o5}'<4YX^0m{h NS ùd֨zJZFRhl~RO1i dE;l/H"_Y_\Å b9:3l޻w~ͽF=..1껦@}C4&k~HL ~>?>w9Tߏ<Ŵy*v^o ATֆQ U76T0*;:᭱M"=;̓'î--a[^쾎 x; Ӛ>cx։=;Yro)Iql[6WFyrb37'`5̓_Çg>g% |0.SCfR >#6UOCOsXB{LiyUDt .,X *rSU+SUVf.foQlj4V5ٿYaמA|]S rJӔgS_"R ͉^Ϸ^,~&h@ rFy$f3"vv{*"R6TKj7Fu:-ɓ+}(vP- nqqNiXv& i9`6_\g 3oLVdȜᴆ)4 yN\1N;0L$|5LyL>&j^UYK$Vlf;}YYKaSaeDEZM<2@7}uZ $ ~IcTA|]S rJӔgS_"RSXTdlx0`2PP3eyl۶ PL, 6 ͆LhX4Om>:p2s|WW& r|Lg2Uv -knXLVVa@G+\r}92n{&oz?zPKe::a=*} lȁf .0 ƳܷlW+Wռ 6Ӻ_X;Y| uµ)/W(S,ǕCť2ϕtMaur\SxnfA67Fwi *`x&~0, &^?B32ph61XVl6vӉ8(CD-  yeENYFyKYc`{߃ޮֺ\XVro)/-{(uPJV?G[>bkFIqI[ÆHXs9 mx>1xkӇ"mi/$:4׾Xv}C-Wm|_3r7k-䲷;1~VKD0y1gp{ |>(++2p8 ]vDEEK\\ф "bH03f,:Ɍdg$|w çn"Qx|? 8<~:պ)n>=].j14fGK=%<-ThboY6Iq8uu[nn&5sQP`=Ń3f sDK7%"$N s㴆':j~01}wrnᨶHa5[x୼\4:vcx70朆lⲷ^bk-䴆RX\ k%" xN<^&ioQ LEWt: ڠE56mdݻRO1Y%1ću9>2JvⰄ䇋OS2KvQ. K [X :js5K]i]E[lĻ:Rѩ]Hvi:v WG_^?{--- BHHH'|iϘiiin'???0@[դ-1Jhx$&2(-)C'ؾ֣7\."rt3DFFt0# 7t="@jڒ?&&t'w&< h爢#P[C0mVu_ȱeoפaMWgc_"-0yí[~_5K() |aPLtLJfd^8Nj{#.6m۫{d6cq\3cO[fZdO|0LlAYvx[""""Ƕ#`Bu!Zn=/"  *QH "rB?bEDDDDDDI4RADDDD>G""M9DDDD䨣DX9DDDDd6N_MA9DGGvDD ߊH( """""""M4 """""""$GD%p*ܮgkWNn|P=~U J0ۻLuIKUK dyXMV\:uĄkvt8me}ίdfv7zqaZֿBN:oKhU9fAw<ώ]:m]I;GTkW#hw]r@A5͖O7z :9˙\9^ڇth*.x!;m_]D׈>}l+xc6Ym[9ʭsg8Y k|:W|k NKe$^ 9cYDDDZQTXg>o7%ڑ!qd/˴w^ 1)\6NBbi>XB(0oۧt =ݷ#n_s7pZ @ޙisqFϩʪ?axkKf;gWY/}͕O?:щ}ߘL@k`0s|@Mi-{QlK^\gq=iNVcy⋱|nץ<X͖O(t=/#=jl>O7;qqB d270:4fm|}leꀛi|m7t5tn]6b{Atץ 7ȷ.gy4?crKbKoT;Wʹ绩#yأ\'DST'2$ѝNce=ȸ.grп7|6w ٥4s|C O$n>^C9 ߘAR(Yx|/; 7seNхv0rCVID;Γy2axӆ2݅^)i0msۺ/_mK:~Nv/.}00 4|䱬~_DDD Ӹ&}9c#4# ͹ "-o5}'<4&vrp~fѮ8κ՗w3s?yأLq!:e u3:O_t%F٥V墁&??&&Յ%5sE݁I#f}Op;ڽ't>ێ M஑0|ӆQZNN ]]M\㨮ˁ6yBr *xoAoӒDz}9 ,Ӽj?H8)l04~,VT2N::42&C)v024| O0mx(ug2U70AKۺ/JSca /!-{ޯ}9 2Bm.G`N\1N;0L$|~o֐Zc18 [T}0kJ`xPdf\;[LV^9dEƏNkO::Jlٻ\}V9B,Cǿ SǪA9\[ l/H;hZbu}9(]}-y4U/"""G|P!BZdau <KeyJw\]0ab{AB;o+D4Pޗsv˩q3|< ZEkYgW' 6H5 W紽kW=Ƃa2?_J}cm(m与0wG~AXͶfݷ G ^vM8,!D-y,915},Ɵt\v|^O}=;H V{~[K jjsqjsy#IV_ÛOSqyzOb9 ~gr]F%?dZs| 4٥1 ಷkdHc}mcW,5/p׼ ah`v=1g)7O,&apNv.Lή-@06 V0Xbl޻\ʼ%\A;`PڞSboy-m3ۿ9ݬ!+3s@m;yMV`:3R!-o5ROSxi\7{(<~>Gr8a\3?{k^w3uͤf.jwSxqك5Bf{ѝNnvRnbnf !8sxp~Plt&kK=%<-ThboY6Iq8uPҠ\X& .{;G?1EXLO;F>Ŵof GP)pb ͭ#rC1y_j y}E0x^^4/>| mލ'e9a38ץ,vm0Q}N~.Y~ 3SO9RDz}1mڴݻwkףYz(ىBs/S{) >36W+ղn>{L} +aY5- UVwh3KvQ. KAo[ZNNiE|:>B;tCM=1Tӆ .Mnq50cume.ڊd̋R]s~=ҰX,`4m&GYY~3d25p*pْ?&fyD;-H0+P^^SPAD9A#lc޶YGo?78Д<""""-8JEDȢ """"TT08N "r:#?Hg27'""r1:|c]A0 Ʉa|檞Qfu""""zCa20AYYY3NDD*:|gEDDDM~tn7vz5V ,l6JJJعsFƊL{1|>nMHH8֮&eeedffvlͥ)c @XX. l##DD$8L&, vDEE;wT/"""rx^(**ݎfj66F+T}x3^U?kVթzCDD<5 EDDDNU窂 cQ6Cѣ֛ወHC44 """""""$ *H( """""""M4 """""""$ *H( """""""M4 """""""$0 L&S`T |>  UDDDDDDDU#|x<^o`yU0ADDDDDDD*G|>^/n0 #<<Ӊbl """""""*vq݄lHfx<n7.JP Q@ADDDDDDDfx<All """""""4%,,Ls(H["""""""r1 """""""f6LX,֮à&hFS4ADDDDDDDDAiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDI]9򕔔KYY^sTZ8N kԠz֮:YYYMll,6j&vMTT:th*( """"GCR$r:Ԡ\II t+aQ5jAXX;v ,,֮\ڷobQ00X,DGGC.]Z: """"""rʈQ@8NrrrZz1 'YWA2L-v 2w^']Oڛ[J:}kD_2yzI-#Ie,̵s׺Èj]6{)o| ĄƓBa^2w7:+fpȃY,{dfSn*%".|'pA !7Pw,eQWWLc޵C"9nLڤ9*_Oޗqۈ'og/+䌞S9>q"}'qU%Յ>Ro/""""" *4Vvv誹(d-T>zg,qdXE[Ksx~¬ +9 _mf;y=֙'%lĹ dl4(/.H Q#+pu\H/#xG;ٌt*S>O>=Qay٘Lm.o|wfqЇqXB۶zF zض!"""""ͣO?Miiio6ڷo{gƍTTTA.]⋉jڏoK/C6E~[lӿXKyF@Sxwvm ,WPYVu|П!QLp3^w~UcOWh-Lps[+& c5X~ٽ/-Kw5֙LfLL@ovLnJ_|1ׯ_ W_}֭[),,nӽ{w&N>, DLL Wo߾5muVl6/6[9998@}>=k׮vӫW/N?vz;?~<| x|>~֬YCii)111yꘟٳ"%%k-kmd;abG!w։ޚc`)oE۱Ym?~^&Fv<5]TuA-|`VtZøgԳ5B^](w|δ~O_=In㖹gOq#}tB~//N"O9eNW@Nzy'O~z~N~fu3SWQ0n$w,Yc=f^Ptx<,^|"##<Ӥbԩ7nd8}t, ,[v1bD?|%-6>d7zE; '9n4{NeJ+`ڮ73yG^ş0A3, ,x?f7zA凉'Ŏ>WYg~i ~lv"Cbo )ƿW &\v4[{26孢ChG~9b]rN:1K=,?u ͖i*r_i`= |:&`„;ȐL8٘Lf~ۻ9A]CeU74~, . 'M->Ug.Ӻ_]`6Ỷ]@ш4ӧswrp7bXXn^m۶s=Nj/X8.R, ?3:{/?YYYY+W_Wyٶm?cn<3YTv;O?4ӧOW_5LƝ#>dO8>$YP+a WAD;X>'O|yJt?]%".,}#u8meq ~ 'DŽƓ>W0 An4^[>d/v1&qfS'8r_iA]NGbrȡh"VZEnݸ뮻p:p x^~?. <~?&)Xƺػw/1117qƑ{G^^aZSN4Xۭ>OCU[Պa5+P8W"»1w%bBm Ɛ}=PMac76 pXx2?GVnb:7d7Ry^jP21B IDATOAʼ-f;PyNt|dg@ O#Ew3:Pzv)cW>@;w~כ?T8<mgr'aﻋ(vIon! [iC-SB=Ke!:4}:~?t;cǎlذƎbjelܸYf1k,HNN ""ロx>{1^z%vMxxxKv{ԩ/楗^O?8ZHz\_Ϛ㌞S_Wf.f{W/b⺜er&FO-/N&<~7/.{ 8J'N٦qۈ5;G>~u5xaurgj V' S`C EWdkx 2'd j?[L ~C'R=._O9˝0v_~c5l#.62^6 sqoqeS+[ʵS~8׽G_ἾWc5-p """"r, u;׭*_HH<لЮ];\.O>$ ykݾb󑗗!222pkBU~׿{RVVFDDaaar[oUk;Ӈz*Pntt4|͒k9(ɣ*Gt ƕC_aM m?멏sѬtG=T9nm3gtʼ%\8L= #:-fG^O)ѻa ax8swu,O;PϨ=ʳ)dxZ`=yGxm4vnMyZOԫ}I .Lp3{_ҿ'].=\ݘۻxnFw+*~ܮ}W?KVn.|Ge]``w\L&3C2c\ڇTQίj-ClgGb >W8QcMs}СC}gCNNՋN8fbb+mdd$^ ܣiӦMF\ c?.a500p{˱[CjP]#6c_E<"ѵQPGf. Gth\um*%$A{gaT)wnSewUEԾWH[oPDwڵkرc3֨v۷o'55=z`Сup4KOO17CLuyZtBu&L KŠ̟(Gԙkc6YzAce:ўGfnm,&+ .-å9o6NvDDDDD4Vߏ|xڵ+]St~վUkf 1/a\֬tRQQAHHHkWP^^d-'t>1*IWN#7]DDDDDDOtt4wf :Oqq1;wn8q iT޲P}2A92޽{q\XVP\\Lttt mA*hաCɡU:XVN';wnShŧ?H9OИiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDIT&QPADDDDDDDDAiDDDDDDDIT&QP!YYYx<֮ﳳq> xȠ8m}?n-oڊB k }VEDDjjWs/Xi.[ZAUWu֮F̙M^^^kWU[}ױiƃ_S]eV?֨EDDjjBtL YuYi) ٳk,=KZZGW_}ݭ]#֑~>ݻh2/?m3׿IZ9myi[?~>/:l޲pqqUW՛~u$'p73i$>fxWKX~ۭ >ʌW^Gm7׹@mۯm8EDDDRJJJ-[УGVZIRrrsj,k׮=zT~P̜9eKp0e9 6X 擟_@NK_cqjLx߻g{Os zN<$&M[EQTTĉr5gl i 't2Ckݾ=zQ}ۆ'x_~Em ?\*&N8alPe|>>S-[dbĈw@P]оoc~ '0iz/K!::%@Nv6c2/X0*//XYfr%reӡCO~g4z+' @dd$Oy|Wͦ:p]ۯSb" fР3믹JW|%^JbbbOq-ruL<7t֛o}vRRRۯ~6zu|5c@u PX~9?iFQ]W9%""rh !!! 0_/_eСXdGeEL"N9Tz!VZ={UqӍ7~Ul,|'(4lW^AJP&M+3^f…o{4FÔsW_بo}LL =\!/v#A3z:&T{Yn_~=zkak}L:۠>4vŊL]ty!??~*j?71r kb~/iԾ㨮c2V9V~DGGӣGFsP`p林Mf„5pI'xO@|1]w->tٹc'bcKWqk.8kLIIIO?hbwy~}W\1 j uƜ wm:U ]wInnW\q^icŊֿ:wTW_`K 껮TW{isJDDHb#_s_{bفeUwŷcop; IN>O&77ɓ'_qF ^T6W\I'UXƎԶ/@ڛozϞ(}SN̟?dz~z8ē_޽q84x `˖-X+_PXv 3g7gcڰ6o}cј߱c ,;, ?XQ+b{Cch"KlISc7Ĩ=أ&6w&Erpw{ l{y˼ cgW@ц*6V6m+KKN>'>ݻtUvQ1 Urpt:Vޞuj驕N XY[+~UjժܺuKxu+K+B0z(oH͚5^_ő DzX9uq-mڴN'J 7ܽ{WpA,,,pw ,,T mjңhsз[Uݭ[}6Xy?Άꢎ$m9]r6|Q+hS) Th]dff+NNN|dffr55C.3jHA@ 3/˗/PP...[Jjcj)>Z7. PByE>UELvݺu]]](T `Νtޝ;vл;il8;;c [}7._|鼮zB]YO}YƌQo ӓtKKKahLꃶjxP1چ,d2e˖-t.=-%PݢeK߻G`>&LX5M5Uքd+~rMh^曝:F 7DFDP yW*ehSV>O)%:EE=sg׮U[o9*cE~Mtr6|s2lQgK/:PžݻiԨ1aooϞݻShcmMŊ_wn&p_ w+{AxV ]Vrmd+ou)ݚwޝK b-ju2)򷵍5iiiE4T:/i)Y*uTUm еOTc{HKKe` |uCU]R[٪ЧannNXXXORVe*Ur2ر#;v$''E r*mTNS\2sl\t+WZj|u<6ŶMKKήDʊQm_h_bNUlo+W<Ʌ%''SbEjQ]7XʵhB.7j.}>Gi()OIHHHHH,ښ l] Zجylذz r P#&:XYo'O$22R-6ߧݵkW/ܚΛôiSigggؒqcw򥥥rw蠗"ϟ %%A e~sQ6b:88w}b>bCU]R[ٚХ4h0?QQQ@֭%>>w2(s!hzAGU 27 i$2<ښvc>HKxZZcƎ5(XYY1klf|j"33fj?++~;Uuyesb̟ϊ+pssSNUפX)rUQ69J}EM9s(}JB7233.tkkke=/BY~=W\֖G>o^6**Q#Gbii5*`` [n͛88:{t=w+vY:r" ^[sؔk*I [ pppxŠJ[nzŒDJJ ΅dr2ӦNe;ֺKTT+V}GTC prvT 4 ESSTovVGIƨ׉]6EX%..qCll,ǎem/ժUZ\.'.6s/ZǚrB&C2eptt,.//LLLppp(ԧ 1$$$$_beK~MN74ʄ GmM:Ŋ6uM]r}uOIhǟ[~$%%;\.zxy`ȑW''1V\Z<4&|{QO ڵZ޽{>4666Ŷ __Ƥ.ĥ%ͩQCήNDS}:ԔSSٲeQr!hO4Kْ_h_;]ٹs TRaa$ ФXhSΘ_v'GW Pg1v|ٓ_(w?о}˜ |s?sjժE[sVĿǷ~KoS&_9xdggae)))GpQ=z_`ٲݳ&ڵkxDEE_4lPT& nj݊f7p I/ ?N X[ʗ/o`K"ɨVÆ WvQZZǎqP׮]`!JOO_NQ74hVmLjc~e9G!)9 ghذFۯ_ڵk8<4`iV5)Y g8; ;Vt+(gDx%_qɳWуMGKz)S\ ?8zߟdfdW 'У}oz(dH IDAT9%$$$$$$$$$Jg[pl#G̙3t}ɓ ٳ gmԨQY3 _ڵkr]< %$$'ODwX{-]3At28ǂ9}'OxEz*C ѣ̙;Mpu+>|7npAN<Ǐ ښ779r} hv$$$P\9v톥%ΞeqDFD=,,1&vg_ͤIMB@c}nEE9NfnVbcdfGr#eTt֜mMvw]60?̃Ƿ^'r! *HHHHHHHHHd2v NNNr]>6l9N]9^.z7ȟ?3زOн{wz($ښoXдiSԩ -[f͚\x=bQ@/۷ghӶ-..5U۳[txuMg&ѴY3dBz #97`3oHLLڵ\\\cǎԪU 33'Hr͝Ó'OGhBڅc[nqcR͛7ŋӦm[N S.ÇӉ‚L6mޤLƄ SbE֭;r[.93̊v^(W2&fOO#W.cTi o ycVea]֖UZSB}L0Y˟9t58tJ<$$$$$$$$$^9.ݻw[. oѣG4iTq99y$ǂ8}uӛur )r97n\$'ϲ,V‚~/tu(W+ړObȑ ?mR{mJJ ]ʁ׮q} ȟym_XXX(zAbbb2 }|nk)䄧'ǎ*ܺuH3dnܸ><\uv`YfƇ'Na(q; Q8|o'E__q'hu|r. Ve.ŝ"%+1/ƙ"$$$$$$$$$^9yr=hԨ[Q(W] XFTHMM??ёN;cie))mnݻ?0ٳ'֭[ThONAe˗3kL߿ǯMbdz|K3g` (4PV-ֵǏ$&&/#GQbEyCۮ]!d2qU1zݫjv15.q<|*sZZ*@Kcm>_G{iBϼhN}4x*a8{SHxQ'OU+9oem]lBT!h(Ru#T.~.>L6!!7+Vٳa|>3yA>dUoWbqOҼeNnn.˖.߻}6l(G(廒e>q<|"lX?_RW4HFib}}Ewج[vh~(Y6lĽt8?F޶AЭkWV$$$Nׯ_)]tUNdg%Ғn 寿w7/z2/^d{(S o7mF]m;)Og*CfnVeTq3"wX&LLK<Juš5kpqqQ[׋w>C/0SvUcǘ7wS 11eKXreʔ;wаQ#xMiEkV굫YG"8:9Ҡml^v^eϛ7EQ4Hڼ}FUWzsQ,,,Ӊ,\=۷m{aoo]DGĠ ]'#f;w&|LuYT_MN;v(#={P-To9~Õ+|:M?Ol"0/? ֭pLN3\ARӮ'˃jժd`ffFEuB >Ç!|-ë9?NxWb555%Or\Zx'^^^hlܴY+Jtt4XgҒ'dOFǎ 칳lذX\"R$*֎9ecfjGXY1ɗ<;-W!]r!1r1+ ԪLQʙ?/?#'7yyyܹ saRSӰa#QbX~_잤g4S{Xbkʺ92*_)Wb6*|27vW q<$)Q};_~9E1Cر>}C|Æ ^ϟ?سg7{w/;E{G!==͛6<|^z1w|GWZG"}6t҅ϓũS'ԩ,[LFLƞݻҵ+\|pΝ=KvdK/ţG|wdggG޽57QFSreNByw|2[n+W8t({{{pBCٻg7oҽi>tM6ra~7L˔a9*_}Ї-ZbmcMxx8ׯ]СCQ>{}bdҟ3SC&Mx뭷5ֵw~e9999dddp((H5صs')))];Oʕ+BCxE?ؽKK+>C??b64oтN;SJn޼AXh(ϡCAXZY2zhWQ_i9)? yMbjbTϥ4?Ӡrs*YUv; ~'dWK2E)oaO,k 縓|'i؉lZYrp=C&!W.c?J{K kRE"s5zBi.Cغep !:*JAlD//^ܺUֵ޽F.9rD8rгn/Ο?';vTmq0fG? 8qBW|VrܺU8qp%aU»} )*MVBZZZs/jZS! c|$̝3G}ڶڴn%*ڵK9rk{- 2X N8!f*۬:EDDݻu ^*߿_qh}x=[ؽۿKh0k7˗M7 = ˖.A9r,'tz0_ vN8!n1tQ]pЫB^^ѣF 9f>caƌ˗/  ݻuUB$M򎦜']S_%7V8spya-Z]Ctе4ź:'W3=Ő:2Ze}U}Vw蒯tXŹeK H\.$&& QQQBNNNڴn%7 kԑ DGG r\g}(C. IIIBvvN2ݻ+xk+tIx! mZڴn%ܹsG!#&&FqV҇āD=bǎVuk{{{jשJx!11ooog?7o8jʅ٪Vʭ[4ڭWw/llm"xGb_I\[[[qu 2ݻh[r-mڴNG]ڴ(/?4H_|:??_yr{B]޺u۷o늕O {|III*}  op!*ULwsz_?ΆA򅕥%Oӓr]t1fʕ+8p |_Nomh)mrvbJ]<|`W,X`R_޽S{zE}*XjWɟ Cd>фX_{O|e#%^LLLL~D \BPZИ,&͛aem].ʖ-K^̟7333*WQZ5QSSS0V]ڶb'}011)hyLb$ &Tq6LQ[Sޢd^_x1x?DFDXt/_ҩ\W(ϣݻ\.gԨ @f~X|pqq܂TRSkچ,d2YUұQ=zT|nѲ%#0p&|\999YꨩŎ+omڴEx͍77M_6׭[WՕ" >I]FE=ٹ k={o]Y`1&[["ےU.6 o ӓtKKK1AugBm<Z&>569Q],Wr]:^b^@Q'h6::5eO AS|隯!9R$2 AJlf͚cemMB|<˖-e萡d]iӦKIHƔBlmc>ԴTj fuX[SbEMGMusm{bElrI77 +6;Stne*UDFX98`nnNDCs a...Tj[M4Ԕf⥋\'OЪU+ewNӊ ]krINN.t.99Y˅:ߏ7NTFQ-PSbXx^?=RȂcٰB:@Nvvvj6BSiU]U|jk[Ltɵ`S{zF?U2=:U>)l&_+m455%77Wwvv!9R~cmڒJ߾}Xp  [Zj?_QB6iʦM i$!!QKhؒqcwۨrwb{x ٷ/@q,//h=-PMVv6(=,>w-ܹsZ4o8تlٲtЁ;`?ڭ6k[M4-))'O];OڵmGtt\e;{Ϟ݊ϻvRZ4nAػgOos $F|}iߚbQƤ?>))`64uE\ Pȶs:mXB75S_Z:J'5_iϟ_.H> 9#Gٽ{k7P@:u;o>ɾlٲiӧK ;SaȐ!,^E g ۗ 0\| ///ׄ9?-Y¬3ٸaD0vX|.4lwwwGjW:;CSjUSdUB\ѣFbii% |ᇅZRn]Zl)_x@Rԩ3]j?o5~}63 撞?-jrvv 4<S2,G,Zb ԩfeӁ:ߗhee%/}z3g,ƍ_^M13klf|j"33f"kshМ`Hʏ 6oLY-kod!:XYY^b75S_Z:J'rtt)_iر;o.۶mwgk=fx0 \]]DEEQbJLL 2 bMFttB5U|mNN;v۶:-#ˉ%;'GGG(llloՕS7LFLL eʔѱؔnCewzz:)))8;;;&@ǻK~^N6/Lff& 899.ކgIDCrUA15AvZtХR4uO߸U&#}.1}J#_/mmArRNΘY9RBBBBB$0) 1 QLL0l ޹s TRaaaFAF|xY~]1vڥ`%1Pfĉs F4hЀ JtyU$f*Ҡ^H z! *HHHHHHHHHHHHHHHE*휞N||<999է\G\\2L>H/j wy]R̔,;w$ڦ|. ^6wx} !//Occǎ!B)ir3l!, IDAT] L<-[6[̥K6۷̙p Ւ}0Ķ`CyUc;77eKݾ 6Gh,_mdDq͛W,wʦMD駟F /6l#GdȑUvI\/[-_W Wl2i1+Ma{?d:7o>j65k₽IcU)SF+ܽCFx<|5:v|ot 66˖ĉlCB5k& _L)Obmuw7JQl(jlY׮f:=d_H U/WH`oo\.A8wPL }.ի %!!;;;lllTꗗR~i;gJzLMM)W\٤Pren3 vSUvϘcUPp}JJ eʔήPY{{{ ՓBvv6UVUG|uP'T頮CߢM_$JRTŋĒС ܹ3XXXЧO_ZlILL ۷oc̘XYY!ӦM[<<<8zJ*):eB|8o|TP?@ؿ?&ju(J͚5Ƨ*Www8?Lrŋɧ0`|wޡʺJ3wGDdZ o TF>o_eT݃U6(ƶ bETR*UУgO>**]m-Ϟ={Q+Vݻ7ˬY055eXYY^پ}l>}ػw/6mʊcǎ~zjժEJJ Sq]^^+~Q~޽{dddP^=ݘ]I>}}c\\\x!SLqqM&N۷4i?# 6d͚5ԨQbv9rDe}B_>}ţGx7ݻ7Ǐg899#FoΘ1SSS򈏏gܹ899JQMƸqTcE)6h@JS=ϟ7'Nҵ[7fΚ ppp 9)Ey&=~ w/ zVXA;.k׬aϞ݊sE=Z K=l#+W%?Vb -̋Mw5>0^n~͛W/oVZN6,GƞݻU(`?.X|<<(M:k׮1lpԩ1#}{_ϟ? Ϟ5Ç9STUﶶv,[Дk`G5&;;;w>?e˖1w\4i1l0X` .,:mIJJbժU,\ٳg?Ӻuk,ΝKʕ4iQs `ќ>}`}ϒ%Kؾ}; O?Ĝ9s?~Zꊅ{舳3ǎ{\~8:uꬲ?sM5j#9˗.z;r]._݃PQ2d(ݻwݻ?ښ&Mpv܁^ x!ߏ]t͚2M6ҒӧOÇ{.]v-Toӻ7kXΙǵ2IIIҦM[jr;"~j)^ kX|k'NdDq4kޜOxx8~MQNJ6umiiS?ԥVkRժUuh+66XYZr<ѣG~Fj֬ο'..t_HNrVuo+177/6Lq^͟/A>oiE)z֦+PW5 ɵU/6b0Ln߾=?S]̵kר_>ժUS33{{[x=sLSNrJڶmk4Ct*Up ׯOŧ?iӆ$X.\ٴi={$33ggb24g׵X<(ʕ+k.ű\=zDڵ9y$&##Lʗ/R60vj Sk*޽{rF df>Q𭬬|>3&OqKݺu]]]0XkNw;BI@˗q((-HMM%5⼲+QdBTwvBI[V-Ȉ~e/_[~Y1+>>'{֭ƑMetiuv/F Fn^.>*F>uYx{?PVݝ-Z 777|sPng]zi]/MLMMiѢ%ѺukVBhh(7oJihM]{'OS!;+ LVl5=-%P~E˖ܿw}Lk6kFV ɎVfc^/uVzsUֳu?ХOo?m 2vsrr hIbq/a86:BYf:u ///bkw&M@nnߩ4\V?6mJhh(ƩShڴ҅hPڵSݮ];w~~~,\jժqO56/~ЍbPښ+m*ohт];wҧO_damzAuZΣ[,]37o P7oQy۷  {M 1+--Mt1{(&ȯ-iX[h%Դ4,<uC|T{WS=ڶ&*W+vdڴ+ʘ2sl\t+WƎ(.rA4Kbz)t/1Y[LLTn޼_|>U7M4>T%@k憹9aaa~%=}b>UTI :\]ӱcG:vHNN.dUW*J3w+WBǒ_[_j' 7}X+jJrv5͉xHzEq/; 4`ŊsB---yIzMYXX`jjJ\\UV%,, U4jԈ˗sGmۘ5k Jޜ:=zիu@A˗/W3g%)eiӦҼys7n:tJ3X,bŊɌ HHHrʊE_,M_CYb,}"Qꖒp@.o_X^^1@vPXz?KyM]viV[ 377LJiӦģʩVYo'O$22R+5&==III^J,--оC;99q9 e-P*葉ʯ888w}E>AAA=f_SdK\rڴkݺuYr+V`=x\+D'XY[Ӯ'ڶ#i9M~W.rA4ŋzŗmZz qqqԮ]VZq ""K&y[~*Eѥ4h0?QQQ@w֭%>>w2w!88U/z!CruBfСx?^0:: 4sgƍAOܾJLXƛ9mxUb[>QlY:t;/OnݴS[ { R dҤI̙3 .Z)w||dffju dʔ)|\z=&L`̞=?\џ 4h[o-I{?~ѣ>&~'|7̜9SW_)͔)S:ujmKP!++Kc1b~(Y^ d fd رcV{ٸi3|  Mi, B.Դ E'] E Y{ƍX_l޴I ΀VJԭWO+VVV̚5_EZT$OMb,`^^^ǎysٶm&&{<{ܜE`73ؼy3eR:*ӛ9g1nx6>[.-[$ԨQ5j;mz>c{jO߾}_KMrssIHg3M~WTTn'/%bjժ%͚Jagg6zM$O.mo}67fXLժUINN=+WB Z+1zH,--$!>^vZZjǦ1}W̝j1 gŊѩS'ʚ)k)VgoܟTMSӆW%'&O?JN Ľn///d29rDqn нzëdKI:GT0b ik4SABBBBBBBBBBBBBBATЋzP!>>FثˢBZZ*ii:]L&3|^M8( =0~Xo>o5J^e=_v&DŽ 2y2[l&77r6߀HJJ*tlܻw(zSwx84xx^7͛Ou%ׯ_Y|'Ŷ?dժǚ5kzTr_F$_IHHHHHHHHH<JSغuky$11 E.sNB`aaA>}iѲek5 &8))qvvf888piHOOZj ?{E6pM/B BS)"("6ĆX>QT bbJX(!@zɦlv?bVBs_S93`3gz___dݺu:tBADD3R/'Ouol޴4ޑ|we׮]^x,&NFa֬wi74'|U΋oWC%&$ܱW^&-='RQ^63(-6ҫWoZx{}g!2Tz3, ~Y߬Y5ԗkX]myy`P|stE=힠pfGODA~_&-AﭷB!:Sࡇ&pwU7;vl'*j+vv$O?ѩsg}?ndgg3|p~Ξ=F{HpppHHH?d//sEbbkV ]vq:ȑ'>€8~o߾;w'beeEHH(jԱ74cxmwӧȠy^w;ֆTkVb]dddP\T9silll8~QQ[:O ߀amcMHh!!5:\x` IDATA<,5h\ 2ԬP@ `p6.Y"fМ:đ=DJev&lbXlU%2B#/)W !h:M54~l\2f@X7<2 @9>>Vc=NC-[֨S_E>dmceeMAAtރp>vѯ_~|>>>•9vmq1~~~WZ]jp4kތ䤪oSRYZlZCИ3vX֭]wڟ~bĈT/:ϋ4e :uLnŝ5kP*4VY`mm#(mbr-W " k16^5֗kʾ߹f.^ !?J]%GDNZSq^ٔB!BjnxRAP?+1Vlټ6`cc{FӁ3x_|ǎ駟RRRBnL:WPX}[:tƠ/*Ԍrssqvv6ZԱ76 >=sm۷?Yy npVWNWU4}7B!>SJVVV,X7feppp 5-'|Q6܈# a{Յ6m8V΅9ן~u:sƪ))g[:^İi | !Bq+P邂:Ҩ KKKKMER^|EEiii(Jk=~`j:x]ҼF!%%gup#>>N\k0Zha_C}w1d'S-3B)?߿5?ʜvIdduFٔ6ƹnzQ35f_sZBQ\_t•7,--k,hn t~JI4k"+3 7w7:DVf&oݬ:uj] CdϦ+3VFb U:88[x{P_n unB!nn ,o߾7?$""[[O=n^/u,X`>sۼ^=Mh5zꍋ ɷ˾ӿR)t:rsyh|p|!n^ P![QQ999@!ժ?R\\ߞMIIIvHOOw1JgFCZZt 0֗ث //Op jo2Vkmy.[!mZT%s5z徆_cnc1dff~]13Dx{{3{: =R&5ui'&!Me̎;ظq#FbȐ!$%%O<'>>W_}0^{5,,,$333gx3T$}|8cƌ+gnj۶m={)SpyNO/c&_cn޼~ 6m;v4)kacc ̟?QB4>I*!BRff&+V/ё~m۶(γ>Kll,3f`mۖ۷~z[o_hӦMOL2ENii)sΥ]v?< -Z L:ݻceeըY__?_P~i233yg3fLU.==7_`ooϞ={غu ;^0B Daa!&MO>X[[#??ue36CΝY䱱KeĈu֫fee=Kxb9p .믿6)Ǐ믿4iHRA!BܔΞ=Kpp0ݛ (?vvvmV͛ˎ;(..FVӬYC a8qJźue4 ɴjժQꋽGڌVKyy~Z|}`”5zWHHgΜAT#99ue36 tbcc8q"=wy'jqu_cxڶmн{wfϞMNNI1ӥKz쩿?$B!Mɔo9U_ ssdzd̙'XF;;wf߾} 4Hmy7PuڐP_^Wʱ0l{]Jez)> ֩3ҩS':udN]Zf+/&&&CwccccvB!M}:uJ޽{j'++ 777+vU#flm^1ke,RpwwGT6r` )ZqL!BqSF ¬RyQ0/sc_5jRwy'?fXY:گUĤZiًI.̗8۸10`4+O}F_p p.^\Eqy!-dZ83.{7:y$Jz[v|!|ZrLJ$6m .4A_',OEzq"=Z dXƝ)(ⶖ"GΠVc BO'3B y4[>ؽܺuߋL{=A_̎‰̃,Xv|!r~<O,@)f4q%2~H;_B#((4Oŕ nu/wCtV ~_&-A%3D?ϟ72"h=NyeYGG7G/y}]XI:K'8Z]~߲c P0:B!?TB!Dl;WxW{-bg>:u{wuzlͨ؞Rt X=&[=iE ln^M< /\sd!9:uE^іFa{ZZ8dyygG_ *V?`oHayέwco4v?Sk4 + Z}G]\m-GJ0^kձRZf/yos9%V|8x}ڝeNT {1B!qqqC!d*xlP]$ &͜h:ҊPXiۨm_Z@!BhA"I!B!p= B!B!"I!B!BE B!B!0$B!BaI*!B!,TB!B!Y$ B!BHRA!B!fB!%eefoަC!TMB!JVSVVVcBKKw'~-'N~#Cm4SN[Bԡ !n!TB!z֯oRDӡjeР<߲%ĉMyZ-+V,ۥKϧe˖Cx m0yA!B{~qy'z/} EEE,Y 3f@@@m۵kPbrΙSo9NǛo|+Vdl / gϞaOg}!DCHRA!B,,,jܽ{wyQ걇ͨ/ [75* w{V@ձ3FÌcVBB!?Qg V^֨((++LJ ?woƅXGvEyY#GX,^111TӮ}{{ԩS̟7bRRRۯaaa5t,[ PڷP+WU+W1ԇB4TB!7ܼ\g̙͇|۶?˼=s&=ˎٿY,JKKquqCv=pI"""j~=***xgpvvٙ`ժ,_#fKZZGcciтN5_Jj䈻;ĝw1!h(I*!BίJlL,{ŋ2wniӀ+9s#1Vr(UT*i:8wIII/9sj\\´WEt !$I!BqVj <`""T*)((`%?`6gRʚOg?~ 6 ;;sm_-33__eܰBLL̍J!ХK_ka˗ۍ>&a`())aڵ<5KJ\VVn=Bc?3f]ۯ_2˗6C!J B!n W{P^seOV~ߒK8r˖}KRr_*[խƆJ$,Y c߾DÇ|&`eYfsزe3GccIII3q9s&wBR^^}ǚ5kcy8;;5!hE\\.((B!lWbѢ$*JBBBXW.Y -[Fqq1P/`kT?h>7T?!B͛CޮB+W0UNXXXjY[ڶNGee%*߿ۇB#3B!|T*qsssbB!B!D-$JK895Ra !a!B!D-*Cq WJ !B!,TB!B!Y$ B!BHRA!B!fB!B!"I!B!BE B!B!0$B!BaI*!B!,TB!B!Y$ B!BHRA!B!fB!B!"I!B!e5mESURRQt o"I!B!CG|%ox~Ԛb),ܴ'q" yY TSX%o~ϨĤip-4Y8uuu+$_⾵]Y IDATw~{tV2 'H!BqWm&Fl|lu:!I)D:: 2ūIRA!BbpqCQgs-MdZ84ئSQc[f IE7-1'yvb_y[dәn=>-Zr{{ \l=-ה.cPXUt-k2Zkg@Z {Pؠz1D B!uTTU&dK FkS G֮ UWi>g7 ?6 M;|EdciaU3lTvm٬-`R ED]\/7 g`DۇQW[Ozfo8{FR!GAtV r r wz4VGs99uuE1>S?cB[ޤ$\FeK[0B=z48:"%Es>%(ŔSɁ ?Qq[lu:u<іSV&[c+eιF5B,;/Ӷ[)VN..m_mkȭy+M>9'xp}wfzI[,'І^* K\舧/_ ªޘ~7Ƃ/L}ce }1is6W[+jCז9NIf*!Ljgs=mvލڿƷZ ?[=2oyH:c?&0 Uy$ƣ;Gw\1~_1`S~'&m~vx7u>jPճv9[] }'')#a/o wU$"}$jҋb <_RQď'XpPz7:i+{~,oƶ{}۽}j2JR^է?Lv,]0.kZ]%@Ln6 |@L<֞ BGO]p.^\Eqy!-:-ӨWɎƝ'Y[(N!G}K_O3y:[ @3kf#~ c Ia`#/dQ "sÙ>?2鑟*4}%ۥuD'mK~CcwS\QHFI Uyo瞨Ԕ: ^GcM<VC/lTvJ[;bV/0>_Pʄ䑷?N.UV͂:nk9 ;KSz 9NM B!%NRY,Vgbן]v 2TI_.,` Ѓ;=}0sד4vf\ĦG˅xDSvX2O _mP\Q)tG 'ޠC),OSP)3B#<+ \kO{zcRtww?ޏ‹T9o횄Қ!.(6OBK(.64kKD~{4nj9k-~C8;v|cjNmRc?(mMnZeؚgdJHNgY:V\^Pc{QEngSu䙮o.|w3,  rmQγꫣC_ư3a~V' Z'dOR{~g48@d'QQ+! ngZQ)̉Ϝs'č&I!j&6[Вwcrq7Y8>#҆nĦGר;W[V:眤k'vD/ߪş pqgx!G34p)Eٙcb7@iE l<qvW )fboHW?jҥ8gg=1Y:ѭbt;&uy gwZ6 J lUu.nSAsw팯ck /{+8[W5t:-O}ckFY㕏0f[Ei +5 СC"2Sqle dx9q),sN_3ҊhnWNlyH!c>Jo-.矣iʼnX젳goB=-)d팛wQ|q\m<{ :B_n5)xʉc,9:Fs"@3% >wBhTB6!fP %ZrM)V2ogPkrqyVNa[O|?2Z?}w}j|y?WU9lƗw~pFV7%6zB'3ѹ+brviՊS՟hҊ=~a>m{7t{tv!=#0y˝qH~S],"?\K=O8@ՌC_`ũOxaҊprнrVV_GxW),͝O޵3'11lC3_.,gɱo.ŠI]^Os毙AxWxX%c󱴰@:k|7XFXٳ:ͬ]tH\1ƭ`D|/?axK΋;Ceaɹs>)h:;7ّxk$\m=q$PXУ@1pů`ѹ6fCJѡ=1=c^ϳl9!=v4}/kN/ڙXz}쭜շzfAPVYZcRd|!©UjJ4t?ܐrKQbw%8V](ըٛ^(*KyzcU3$>9sn/?t:-ߝlucUs۟ںH?ڧ_ڰ62=Tj5gL/?C:+'* i}* K^칀8*Gih ҺcHWҪac%ĜkmJp85Cu ILWnT* Kک)+!nE\\.((B!LPVRQD^i^~ʬJ5%drjI,,qm3Жi[k 2%6$ F2h5'ڵojS-'8݉!n ^_c;!D6ԢTx;3Hݬ)I!Bl9# ¤B!z$!B+ B!?EEB!B!jB!B!"I!B!BE B!B!0$B!BaI*!u,IE0?$ m H!G B!nIL}mœ[<4j緎r~Ӷ|Ήka[rK !B$I!=r$ s6(1JƤ6^^S[@ZQ5!ujju:R5uB!čUL< 3~č}N=[Ζ?]A j5VΑ8۸cgVWɦ?k Cg/*u6ش=( xFrWůu NG04pQV3O{_"yi s=|F{s'GC!STZ}X)m_6xRtww?ޏ‹TB!hI*!f`ұ>w;oN~=}Dxr>P-2;6zL,*{Ҋxnm\Nчqj@{V-n:#^prk!Dٹs'/_ё~ũS(--%<<\_6..uVe޽;wKKKzA6mcǎ:tB&LP'Npqquue8;;cii)۷o'##@t:Im>}Z]Ξ=Kaa!ݺukPLjm۶E6mpuucǎFQq5BRTUflUt@JZuU|H|;o|E^i6v'NGOƭêӟ&A.]JBBˋ>llmmj+8}4#,,xʕ+  ""~srrҥ  ƆO?F_Wǘh4߿ߤX~=7oҲ1}W2p@*++Yb.\w7/ %K1{Pcԝ@[Kfrƍ/卑X> MMफ़ y;<7G碮(bb؋&!h4.\o5$$$͈#&..ۓIZZaaadggsQ}=!߳gZnsׯ"""8|0III׊˼XZZҲeKΝ;gr[?~Ν;H~~>!!! IRO?Je˖?qBܜ$ bglI|r ^~tZ;9t/˅t?JBtp RW֋k1T4d޵ t5g.[:з[[=ݼs4}/qy#m\ۤUҥKDDDpAڷoρԩVVVj"oh7n$&&www,--)))`W.hѢmEFFw^:wLtt4ݻwGT6( \]]QG!I B!n9C/wnM^Y^'뿟evj-*P(}ڲRZ3RfGOaϰt"8ao<ǚ3QYXbiaŇpo,:8#a/ǬBf ?м>iPBY[[z5cIIk׮̝;ZÇk#X[[/lV{B5jԈRN8A˖-)**_,QFXRiqƘL&-{&L&\bu{V ?H9~^{e)J:vȿ/7nl`љ5jlf߾}s=r Q$ B!Xn.x7G]IWJX7iXi !U@A&ʴ)]$]7e˖c٨^;vdҥR'?";;xN:٭aÆ4jԈ9sP^= QXd 4pҥ  VLJ˗n:BCCFH? !zO6GFF8BBVQHhX'V#EFl4G`0Ws]]]Sݼ\r???\\*?VY.\`L>sӂ СC[Ԥ7BPd2 B!_dbϞ=ݻv[ˣN:$%%qe^z%7AčTB!t{エm۶F4oޜ'O鈊bĈ2 NV*!B!wRTB!B!VȤB!B!E&B!BQ-2 B!BjI!B!BTL*!B!ZdRA!B!" B! +ʭ2 MZ'2Z-WqMzz:zV!n[qkN^VEӑAii?T]X dRA!mgɱy5:޾Wyy]G-EW Xzb )&6Le8Ikcב;''ySy%0q3\J Etg -̞͞={,Ǜ7ofˆjDŽ[V IDATܹs: ב}ømU5\ڮzbЃ믱s<ӧO9]΍[ՍJyB!xK:TQ:!(*6Bm臄zYԿr6-2} "϶=!)C3yc8>WAInɓ[ѝ/ ,, __[mϑn5[ό5 ,,M8]O&Bܖj:V)wtf3&oݼؓBA@*\^o:r~^w's) tl6U(?!y7WC&'@b)Kh_66yo =023(e Mf#krH WOEVH~i.N}υtkt[y;tvy8j2FXyk~:?C=Aw3I/H!(G*rl1T? @]_ftkj Em=zwg9/ѣ'֮%-Mˀҵ+[N,@~~}MlKnN}Hjj*]vc۷}6rs1c ݵk7֭]Cff&=cc@>pȻr˖뷉{e˾ĉ2b(ëlvڵk{?&LxF;P(֭CeFV^́( :tСl GVy56q47Q'Z]}1{;߷kע`ر=zn[^s4V[l˪ u?A!mcUV"-sOq>-Ռ;Br|4c/3-,u{d8e͖;'^p-Eo,aM+DlAn9W>l F0ٻ/#DZ 6]a){_!16{a08#Փ(:U) ϸV/߁B+{"s"334{/nB"qݻMS39',ro^PzѵOj-_~5 4Gӧ7WCc͚YvMei4|2Lk_~ ̚9= 5zbi9|R;̦U 0Ѽ07?3=ܭҶm  عs%-55}QpoM-6l8#G}ƅ#ջʫi)yss.j֮YCfV_˿/yͩɓ'rw68Ԗs&V[xDV*!Uwš?85sl,]}v"jw)篜_aa<\=ᴄ ir3a_MR tkg@1 l:#i I;.aR.%DwgO K|Qc 871=иשV+9Crв~{~7ŋUh8### U4ѭ8{,ʆPTnݚ'jJLyRal;3EoNx{\sGƅW>V^MtM͚7ח&MܹB8z(rmb_JRڟh;vWZp0uêoz-3,j!jBP>ٳ@Rò;\o޽8l޲KsW7-iIwc q#ҪU+}]=<,K[d2nZK^ш65jY 8_֭ZRyCUGP~qϞ=$'WR~իWWZn+ݙ8j Y-)..aqFtZvT89tWrss|l6WeΎ{}HyYl Rԩ3Du6NgbV[Fэ$+BܖnĄ_=/wz1 NݯTjiJ-|[U?_g}k^8]=_IŠvCZA2[LQv8j2I}ЧOjl1idf̜BAt+s?`ҥKqSo9=.?[#9[guǺ#xs5`0+1wՊәXm{AVZ7n$ӧ͑:!aKͻ! Wugi di}ZA2J7j#\ .7`ғVBI&-\Nǣ7^p]6|7U iZz=~/?~_{׬SMMETR߿gGLnn.!!!K8 )))ԫrGQlQPP@Nv6!!Unil&%%Wx:3Y7l{ڤjTi,VZg{:|2 BA|w( VbWu?ŭ~3f ]wt͌S1 ?! 7QvnNcǍooh]njϯZ73N!ĭ%+B!B;X OB!B!DȤB!B!E&B!BQ-2 B!BjI! Lz际Zқ ??jtV&== ֘M7-7{nL&Bܑ%0q3\J E7 •Vyp(~$8Fe!n/Kŋ[<ӧO9זudggW;Ç1عcG)yA=.ؒH̟/\OM{oo0:d0>:_Z?8w<5ekL8ʑmjj3Ͽ:@!v_ܽ/lҋ >?47^qU񍮟Vfd dz~BܾfΜE&Mj\_|AXX:?3r(ƏƱl۶3W^kndeeߞ quuu(3gբݺvw_|9'N/d^zEh#:5>ЭnЉڝl:|<5`MQBaF#WD :t`aؾ۷{FC`` _}%={ƲvRSSڵ[PPEpm۶d6Uw~PvZ#>~yW|2|6{/111L&VZŁxxxCi׮R8|ZmYYY(,['Nח#Gnis=_OVVgSsS0`@ի>`ذ_E1WQFU}=L\j{}^yW0oއU^o[ce}]NG@@cƎ%44R0ah4v؁EAnݭy63#VIX`I5~l{O\ص:Vyޟw2A!LI2 ۸8J/6|)X^{th}C֟YnIx{WHL͞{$LxF"%< kx0rC=Az-pw$/CI]]5~Ƶzhot!Oc 6#FRZrTzGVOa4).K۶1?.`ΝskhӴ?}Bk׬!3+ӡ∌ O[ѹs5s&{9jŴ8rpG5otZ믽ɓ'yG0i\|wޙMV-q4{===eOn1W~`Ҥ̜13IIV󥧧]w5ּyOW}+Vk̛oNglO8۴ˏVВv!>`Lg>S.<4x_~?|m?'WxrtWka<{;TBqG.NKF])_Ĺ,ÚOSHl3Ņ_ .Z~v/"kXB=O?7hpxzU?e <ݛh!D%/^dį_wnƒ>bHJKKblذSNѢE ;ztޝgrq6n܄ѭ8p k+O[E (u6n܄J@V\Ym͚7ח&Mܹ3gϞС_ٰq*֭[sqVZɔ)e{;޽{Wٖ̬LT*˷5hЀ?J1WO>5j<رsO<1/F*M–WX^i]o~ 2vj";;j-ѣ-?/^ĠA?~[*Ǔc^>gq|'I!wRCIŭB4/?.׻UO)+wif#o3f"C! Dp4a {ZкA'FƵO4]B2\ܫX!C.?OHHeBz–͛ ݃ޕWJk/TlBVUꏼ %%(P﫯$##!CVz=.\9swڦ7oѵkWV\m~zիaeggSTXJENtO'R:+(O[e۫zj$SG˷:Vyˏ;TBqeZ? rK T2vF\̹oi]=_IŠvCZA2[LQ+?%J7\oGMf~T>I|ZJ!w=Chp &=|ft-VҸ^3tqX8wwwޟM.] 77%_(>l(ѴCzyy1}[9 7nLQQmѼ;v,sߛ䧞f|8oӧM%Kh4jL4Xfͬ͞3Xx))Ӈ>}8n&0n4h@NN.~,X9ճsy'&<'dfdX6лj}|<k^~^#yd2FIi)AAAp:jFmG; IDAT5hZ\]] z ɠ?>Y}} &8$ -NGnn.!!!UokTwl9V3?+Eu2eRA!pܕ,V IKY:x:$!-šPP+f|2V5kn)Du܈IA!pd@>dBA!`m (c4PT|2 n+RA!B!܈ !B!BTL*!B!ZdRA!B!" B!B!TB!Ž JKKouoI>Gףjt忕}z3瑟g5N{tWЕ^aVdRA!BΟ?믽C bxosKS'qS|:+68wM[:|_;vTJʹKXhCUzZ~rKO̿aV:!B!n%^ϳ>yP(=rڷ3g΢q&75/0|}}oj5?Q?*ӥOo ;L*!B;Zrr2L׫W<Z櫯gX֮]Cjj*]vcFիWs@" :0t0L&V@~<<ЪA'viɱyt ˦?^B&1>~m!g_[Fx즀C+O}YgH'h\jJnB!wT*>cN:TC5k৸8ޛ.mп>_;wZ5}[lfذ1Ғk+f͜ɞF}z1m4>\Ȼ$:;w!8(Ȓ hW;iժ5 t|[RSSݧ/OxZ3O?h$997ߜJ؞<9q"wiCAAqk˗j???ܹ jiugkXkgkЦi?~7ŋ1hC60s֬*8/5H`Y, 츸KY6]dKfOPj,!8Mf$eCoðxzU?i v5Ρ}~q- h:Mr$-~#94b!TnZooXǷLlI!%h}}r9|מ.F0ʖ\l`ri^vMl>#bP ]U?V?Y& fH n2Ri 8yI4tSPzU BҦM[KJJJ8~͛njOް-88szu\ |@,ܹsL&&Lxٌ EE4jȩX]5nt|͟ [6o&,, ww˻Bǎi֬=z#;%BBBP-@qQzѧNxqNtАJX:Z^WY?/G?$;} pv9C?V}g䞐^emZBy <<޶W?G˷eW[㠶(Yl\l> JLJf̨4V|fAijʓ.ox҆O ɛ`KL8 Ez e'gx{D7a0XvSNBy&XŒx/yq(~$4Uf9nldNoc|8݅*ħL1+OLɂoYpl1T?L]_kƌ_V[mՑݻ,{)L&GXs+j̺uk-}n T!h4MM,ZCffu;Y~uϷqϞ=$''eRѩSg:ӉTn2"ظq#]vu7O>[&mmѢ%:DKl;vl{^=V^m^?\߯͛9xDՏh63H+HXllHLf_ y 8MkOsؓ(P8:t;dBVMV,di9[u7WwŸS =G3P)g #Z<˟N!eV9>l,Xf9G9 ShԃA gSϳ>"Fe9H}﶐h6㌨wWObhX)P];ᅎsP7$9,e{{D]=NgCXz"}[Ow!8²P39',ro^PzѵO- BTh> $33f̜tY?ߛ,]7nnJf|8oӧM%Kh4jL4\c2x9L~ ;[ۙ{|>8hJ@@ ~D4m @RRoN}F t:5{6f`EҧO幡}ZY/5iӧśSߠqʾfјLF\\\:hq>>ڵkб=/$Lao Q! _DՏᱵ=WY&TjiJJSyNG[Ll؃6zvUkq6ӧ͑Bqaq^tjba+FV1PӈY=yr;fPd7ׁ͢k,Fgڽ+y~ ˆOw4>QTYd_F]nFu੘ mUwx|Rtw͜VFOm 0μJ{$Xm{0^,|`C_9sX6xwsMfLL`7FtY~~JiO~ƾ[*mt:hj{aufRRRpuq!0UZ^O`` nnn5*5-ӦT*+^GJPPP/`0O*#5^j֢"233 աst:TVbmHћJ Pt_ZA2J7*Sl($(@M `2-H=?7n֎RTuQkHV*!#=5M \ԨKJ~2ʔv7|YUnfN^l-bhݠ#'.}lBB895*c1RҼJ+{y O. ^sh44Ɨ= 遁Rύ*j"͍ VLJ0GbnlfpflY7RuhkERUڦtQ9g$ B!nkήR`9.5eC lodkz9Y!ˑ ^4Dy"_ϑͩi;vWL`[@KLi_|j!B.٨Q!m' -])fko'[E99ݼ.Jw:L x)մIUST3D>;0qff%U< 6\۽>-iIwc !yRA!mFL(q@6|jfQΪfNGMf~T>I|ZJv.7fz:Lz u}TeZ? rKVP÷6o:ڡBQ{dF!%ݐ :r3 4EVfQQ99' WMh[4*u~sR .~:O v!BܘeRA!P(j !f!Bܱ!G6jB!B!DȤB!B!E&B!BQ-2 B!BjI!B!BTL*!U(L`[M,Ԣ7ĈB!|dRA!pZS؟:3)̥PdI~ .\9m ')xb|Gr3kTB!ĭ$ B!8/mOh=]ɩ#mF2)U8}C5*C!VRBd6σӘf*}/35zn4⓾#8ӧpK9jwMldmRiwIQ8ݍBm@WFc/eթЀn uNdkB!pL*!9If{ҋ `/IowBĩLE`iЕu( <4y9Iu[HKx F 7WNg ^ ]=aݦCI]]B9B} !B'ȤB;Jvq:^J5j7Ji f9|"Bd|wbeRv\\T]dKGB&r{];WOU?P{{] BQdRA!EPb,`ңtq+K7sO)+wif#o3f"C! Dp4a {ZкA'FƵO4]B2\ܫX!BL&BQFΡtv0u=X J,?Jrp=/|5`k{/pl vsgq"O^֯8\B!$OBqGR|"Vw Ēc.Jc@1,.iiI1F6l ~ml+7ɠv&(rSI/A=i؃li B!nY 3<~UAdenc^}1(\sJez0翘0-DVdƷ~~xW9~K.nI8ĩ|~@MCfz:Lz 5[έqf бB!͠8}922V!BtzS)QyY<|d C{D[^K/TJ:~ fhupQ' WMh:B!jBPRA!ŝ&6ݼ+<)JI+Rc1 4:2(҄9nLBgQb(EYi? HU{!jL*!N0 |g:!D-3c|) Qy7ؚ(Lh2ih3d@NXWOkJ%Ju콼Ӌ9M`V*2 ,9! ɛiߎ=! % B![:}Cї.pn'IVQI?OFQ*D=pVlgC 6Z͗Yeɤ$ߑŬz4##VL]?|D_|1-P=NS4nu1 v *7 mWpWqcB!WN߱fNމ7B|{#'iɛSɐ[`ܜLf윈2>m!3{,xF"Nx(cƃf^\˅_TnaqG B!f2d&LlܪP0)~q 뒖ҫ+#0 7wVyd`֮t ؍_Q/-؝py%/O-⏜cx%-(˛+!ҷzڽ9f})ݘ.[dЛJٓKygTzqokZ5xd4L!jNV*!B;oYH]@颤}P in.t~??aץO|v\)>>ʁ ލ,svq ݡ8^ӷ?i7^J5csoAVϩN=W\bwF%p4}/~ե+㽄牮ߞ wt7Dz+gM.ӂŝWĩu /b$C]i;Erp)/}T!' B!b٘\e\?{Օ>p;0A( XP@%FnFnQӋiKvdfԬQSh4V,cAc7fqZ<{{su{),? _I;E $!o˵qz'WvnI̻/~"2~m5P+R#/p9{IsOjK8|SɑdQ-T[+;m39E aV센dgЫpy|2TB!w=&Gͥ*(jNEݺ}@V>0w=A;Q 8]vZz.vn3UG-!)(+/cP|#?!o$lufdRA!B]:ܡDGaM1Q{JtV6<7ރ+{8ٸl{x}*Jk IDAT#(I}⢑  FRTVZYCs:n@R |TSɇXv]y `iבٗ-fQ9rf2Ff2M.gCfB#5 !B{Ba.fɯp#]'YEi{.q6ڒ*4##ҏ ;}[q6(MGeiîk), 0d]:nT9WB{+Сiލp"ߞt2R|$L,J 5?l.g#8K_?:. `mdNnDL:k16~ɤB!oW6:g"2icW~M:s/ۭ@,V|ttoEtZ`+ %6Vv86),g3[ґ7:|u|@D|Gfs{w6_k~5dř^בp"q?Ze칾/NũH,yYZ;'& 6O]ٔvJvJ5sU.|zDta~miKa"&&F{B!_TZA6&w79JP[;|]b q,흂+G@wbMmٛ {e#?V-gQr3y4kk81NMgipT9WC^I6.vnf~iI)Hɦ ֖*ʴD7{/,ޭm,2m)ɸغW[W{B{dRA!]gELzN1N%GȹRMg?Ʒ-PUAiYd \:tS~%S~~׺~LkH}uzYyǗ~QSѕ1:oL]{CAi~tOPteq 4!+kIA!]fE(n;8-- y}$42VHt֐;gܺQ|w-!Us+zihޮ>\<ǯɇ!3!R'61S ' n(2Y$xłVo0\ʙɔM}' %YMyk MTx ?>X@qY!뢿bIl0q|~r"6ώص$пo֛}Stb\'ͯiyNr2 *Kj(6Nn` ͦʙ!]55-9D%?rg8+s +|}71w#}ĕdGxao vJ5sv?_aJDjCߖ\PI\ˎᷴ_Y;~O%GVk켱B!DȤB{bMeR,䘽8 P{W9 i'=Z_+*vRLsȎAl0ttը|qWP{4'&7j,rKL~\:r),ʡ*K}VNצ믩B!TBqWBUhҚɇtD~{23N{qT:W *o|73'W m0u1\ͺΫfX)S~~ue2v]]O3|uzAxײcS/<0FF%xV_ Nr8~'P>˵ ߬wMYc!htvĮHΏK'*ϫfXSNBT^͝lX]5+?ґN& (3~XMB!DJ!wL(2%%fm@;3pqea5808u̠6B; Pe|rЋX1'|xE;1I{%Z|֖*\ϰϱW6"9?)/PG-xxq)VJ,R9?`\CMdJ&]Cê3G^sy˿IX=o !n111:__;BaUgzBRm )791_5q(p?ʗ'ߠŬ= [JMJ%7vtHʋBaQ/nIΏB[ZTV@za2j/4jr לB!ߝBP.UØ2 BߡP(KB!ACL*TB 5YYY888`iiySB@&B!`2uT|?رcpvXx1ӧOӳckZoNLL 999Я_?ڶm/ƍёV:_͛7s9lmm۷/.]$%%G^j_QB!Gtt4#..f*++#//ÇO̲eHMM@ӱtR3gdŊum6nܸO?͈#5X[[P(HIIq|!D B!B]ve׮]<T9_RR~:www.\@QQ!!!Z޹sgZ-ҥK(Jxڴi@DD;v,BCC `Ϟ=ܸq-Zлwo*Ñ#G!((Ν;ϙj}?~\&MT<#ݻwȑ#\z&MDrr2=666m???9Сlc*Nȑ#L:GGGԩf̘1 6lF CV*!B޽{=b nܸA>}pww/?jeo߮?oѣGoz*Gm۶7߰j*ڵ+ǎرcزe t҅۷sQZz5>>>222ps+ҋFAPo&nMAAA[;HHHB! B!BnРA߿JǓr &LLJ=z@dd$-[DR@jj*IIIӧ4iZ"((^zU͢gϞoߞΝ;ӦM ߟ0._\)[2d0^zѱcGVo%00-Zၽ=Էwy k<ſ*z/hrB!}ܹVZ鏧Jڵk?ǎCX[[Vet:iڴ>NťPRRR)Gwwwf͚`V[^ߣh*mRiiiɴiXf wFVӾ}{M4'RFT C&Bs}*{6=Z8:Ϋ?#':f'z!.\HƍT*U'>> 9q~J[_sM[tdgg3cƌJ:lْW_}NBo˫^;99aeeEjj*͚5W}d?S ! q&ibQ+|DRލzPq'9;;ʞ={ZhAII ϟʿ믴k(BܢE ֬Y-[ijDEEciZ233k_=>mt:֬YCzz:ӧOvB .]… tUŋ={V---i׮@ɉ'СC/2u'ݨ ª4l-'֏EPvr3P{3 {d>K7A7ғJDPų/."̳'0>5]C~I.M1&`&r _~6HfҤI|899ANرϷ~C=?feeo_%##ҥKZfkkˇ~V‚3gK[ ^{M|С.l޼/beeFaɸ˞9sBAPPP1e˖PPP@PPDDD=zp fV|!DS|}kS!6C5U\prKx$`69%7j6 ѼQkFM/6}\ϊ=xSx9Q3֬vP bwTX1/X)S : lllkB dB{ҦKsms9 yc3kG֪Iy7tiMB8%b2Rr t@eiCk!ƚv]|wck;{kB{nyˁҲFWToyTzJBCu{MT4hPP(*~BɤB{ҴWjLc7c4<1 :t:ex5j ғ{}BEnq%YuVlSs !imL@6HPZXש}!/ @Y=%ĽF&BZqqeU]ͺΫfX$*%S~~*eoD-ӿ/)+VTFrE<Χg(,cJQ!>BiVL+#9?bMQǺE%%!ҁ”J<8r Y3(,ʞ=Ͻ7{}#uLB!/RA!=W~3s앍HΏgJK l5nAf8ٸҲ|5Q35eXxE6|fߜyViK/_:|ѭYB!-|x KJLdNjp<666ӗ3f`aaoƯΙ3g‚v3n8()5MwTB!,BO߿+L:e&f{KsЭۃ?>Ғ%Km֗O>/ X1o<7dʕ3祗pttdqv7'_‚GfjުIsɤB!g) BO^MJNJ8<.Ό(Z ??/t N[)}طo/YYxzz2~݉$77=z 4RӧOǐ!Coqvva_^hVe:JbrL-Du{#FС}cGƠAkòeKѽ[m%==5rr͍͛ 'ҼysL]p~.f7f…0۶mBANv6?|=.;EHHHN<ɕ+W2d(G6.י5{6NN899֕ׯSsxg=za4x0Pkmݺk&FTB!ˆW_y .0yZj3sM^{2e %qcןiMޞ'gBʿ2}O?kuJ%_.[ @II _-_W˗֗.YBc''ymGF2GݧoO2ط/NB4h0_|0Z%m%(P86 7rrg޼ 3б#&㙺]!55T:nccCxx8#ʆ ºãX,\>Ba[ S8|8}z,_VE@ͯfh뚉 B!Bɓ=bvvvs9֯_C8{;PTqxTcǍtۈ]vxzzw^oFjJ ={Wߟ}bccS*[an}S ~G<2vx\).*RY\^n>KD_ȡ_RXP@ii)Blmmh4gsgE5>sk&F&B!0ގJrrs^mO^^^s888penʆ;zx$:]y>}ٹk'~ ( IDATtq4ݿ̚5J_wɉpquERocj9rbƯ'Mbvxbb"VNm[uULԍTBqYuv^uEG_f5 vJ5`$,e{ih^15 ͺ=D0 umkї=P?=akk;oWIHH_~7澎tp@@0nn88ӺMJ~x~ =<||ZcN888᎝=;Z[[ѢE|jjĤ$x a,|>xP79kX]s0rC3˗7u[PVVF^~ ,4ٮ\O?t 4mڔ,]/hܸ1'NdY+=y\۶nuw_glmmy}<,+WM#GG.5_g`eeŌq}\}oWՏW}^3Q{C!0[8B'fn@g_hևļ|[ n3)s9ӆu1$ލ|S$:3֎#sm6Ds6Q~j̟Ҟ)++#!!'884t45kDpmҤʹs+֭$JKKqww7z8Fro̭oKKKIJJ*O=0uNII ݻ5WfV*--%11JmݢhHJJBP^Ī5S1f B!J_7@'}p !5x”9DPvr3P{3 ڗ/]uvݚ "v-q<Ьڌ4VDvĮ!$&0f.K.ɦ #DZYt'&)htelP(֍! khߤ3v!jфѫp}I(L_ѕ3r74nue*?!ngeewlmm2X׽jZ֯_ ?1~„z^?q <]T^♺ձˋI&Ј#GxHM)JՆbiii&Vm9SA!]fEu]ʪ|8[ c|gS4o=9M_,?#7www>IMB)(-f~DZ-/Ib ڋ,ob$F=Nh#bWӿEV6bɯieWHm6tƭL'DCtdef2q$Əp#F4wTBqW튅7wZHr~8fҿv_s)m\5i5]<[+ځc]ˎlQ<|;-$/}͌NLwK|n,;X=jkGrk *KڹǞ;MBDB=‰ύZv4ݽUйgV;nŜh(L1N!u& B!Y tZ6`콾Zam"8ܒ,}w(U$^׿7T>7¸ iH P{WWs N-qWP{뿔tRYZ;#"v5C1]KG8;b{~%-F\B7urGn Ъ?φg8ʯB{L*!v0~U6uWͰH)??#ҙPXrE<Χg(,ͣ[y9dcgelª[;[m@]W̡_^PײcqlK_ylK/Juus}Z%Ҿs74noپIgVF7EWB?SA!].ON/Q{Iȫ,J,[+{:{>$ߥEe/?$_mfkK'V,#7waq |w "@S{OڹǿRUFv֍iԞNiSSB3Y T ~0us5U[D]^yViK/_bcen$=CkX{NjKPfq UFĮWao3G^sb@1+9\mFM!C!0۪}Bx,ކiKIΏRay/e2oXbѡ#)/ nk&:wc&IJJ NNN(;Gjj*X[[W{>Cqw\WBQG*?!4}ZM(keӡ%j*_,hЪN_(P{i 7!֭[ȸcm=6m*W^S7f''?'Nea(_|9EEEFsݻ3{LfϞŜ9/vZm8Uc}-,KJL_c}d K,1k̍Pj:q]dRA!B,YBBB=;jߡeV@}ݻw//ϙCYr3 .sϢh.бc'z)ejS1ڌ[}-|_t)hyaTbJ}=n5k-~Cu=B!=m-dg첃^PTTqqvfGiժKEnn_-8:יf͚нGZ-ׯx1T*Ç ɢEHn2b},[{uVә?J;}4qqq 2gg_Wx/{yq,...۷Vy3ukEZ.ga5nܘ 2jl۶ nټ9AݻxbjgF᧟~( <(fH}ɓ'r C ȑF۾~:f''gºrMk8FòeK3͛7Uo^d ǎeƄi[Eg B!ʆ ºW_y .0yZj3sf_6_zEӘ2e eee̟'O|9ɸGw>>u`[_|9:0h`38`2 xPVT*rRJJJjrZ(_t;9y&j9ZVt)&TP鸍 T_޵QF3n8JKL!9,\>sn0p~\K\\OHz1$74N`:lܰ^3CcH~4yr,*Xx͛KL1;ow3Y B!ilT@ll,'O̹X~>˗ϰ&00'dz{.""v`kg@֭[S[&OJxx8gϜ!*ݻw7CǎL8}V?򈏋#9%:q5RSZmrLLiθG_oIKOήJM6ҥKFsIII&1!۷П8><󬾎89;o>nۆC#}jsCŒ%_Чo_|||8tɶ'N=ǬOPPP@~ʊĿqq2:QRRBzz:fmDGGӮ]*Zں72 B!m/~m8{ 7 |KW^EcttPXX@-y Ǝ܌iv>>ZXXrQQQJ&M":&Ρf<#FMΞ"JKKW._f떭lظQ˨Gb]ml x̙2Ϝ>'f4/]HTB!*H+HT[R)iK25!DW߾} EEؿ(ߘ1""ݺѾ}{t:~(2r~} Z-[lh4$%&Vۖ)#P#%%-[ҹsg"##AS<#FMjkgÅ$$$.[TF|Qφ} DU:]]Gf޽T_cРAeg֬لT¿sNN~+*JVȑxzzV[ޜ8{ },?f>L||Y*Ƞ[;;t ]HH&Bs}vs=/sU^a\6XW$( !ĉYxh6l؀-̟cӦ2fztA~ o8`1={JYښ-baÆrj2T3eK2~L<^_'%YcmV>c?Q B\|tk8{ }, dyX~][`ue =Ɣɓn&NT8wELLN!Bifn@G8cA)LA^1!\L?w#_U7ݣBsW{~0uWBScϞ=TY>Dii)UuWV޽{Xz5_o9nnn ưCXGN#!!K M>F3K}+I_bҤ884ȑ >64BQVCZ-f69wf,Je'8-S;P*xyyC6wA!=)0kY\ˊfjD\YMFa oke2>::3s8Яh^;hݸ֖6,7 9!D 늳3uU_(#F4hʰc/QT‚={ָޝ qo B!I.bϵI-xrec3/p575!JRn\5i5]<ʩ*K\C!&<<<=f̝NC6i”)StBdRA!=iZ+oe8<-PZc͛,utT9{ !BB! ]\\Ef4B!w)TB!LwVe\ͺ;j^ߟᖽ7U{!BTB!LPZXƬғ|@!L0Nlx>}SB!j111:__;BqWc BWQZZJzz:jB6 77F՞OMM+%L}& BQ1eF! /}Mza2.nJ>LzA2ݽ鴄w(Xx 'Mt~U<`w&L@YY~ EջN:믽cǎ/oTk`VBsU{~'~)[nK0t*I>oɤBaf8zs7Y߬/>[+;.}"vv(\^13f<iyyΜJ\p%KqfؽJ[6l`ǎdge}6m|ٳw^|RDӱ|P*籣GYd 6mԩSШQecժgΟ;GVPrpp`_uYd k\KZZ*tznٲo/oAfʕl*k͛jJ[֪e˖bkkˊƍV`m*ݺu {~lN>JeUѰ~zVZݻ& `63u]L}nfƫ&7Cgw[oV}ǔB!=W^… L>ݻw[;;n&n::tĉ۷osf}XR,/7@[o?δlՒ*_yUN̢E};_XR4cƠVppp]v0v8JJJHOOgl߾h}S3g:F݉sDD@RQ5'U vŕ#G09q8Æ חtxw/_W+x]cn24lT8sYƍ۷۶71՞qbU/Fjyn߉L*!B{Z|\gϞ`!lٲ06oD>}իhZ{l: hѢ>N zqmn݆6mxjJDHlmmyygyhRpc $$$!G=ydjNjٵs'X[!''[V{_W8{zVWeҿVk8I H@lDQEܣZաvvo鰭u{⬊* (C+!2BE}ۗ/|ި{ϩYIiiY۴iS Rz\ocm֔UW~M&^Y,>dX:3sj͚ID  ?QሪBU!9F*$r˓4 IDATf#,_βkM61nj˼#99ِL@@@t,Yݻ~:-sG3m;8ysRRRZǖ[ذq# CT(U[Rprrm5CR"\0<ۚj2TI~ͳT*Zu\JeWSiqZ|=z[Y;SAAAֱc(eejEEso۶ۛN:_`' ^Ʋt:ii߹sHJJdĈ{-d׏ukEndBZy󰳓ymۖo ognn.%%88:ҧO_Շ4/SHII*Sznn.QQ{FkU}W&_t+?[B$;;`VJUXKCu\{~WCηm'AAi|6s&}:K>|qc /w,wJ%iL:.\ 7mO_wƍ <ҷޞo P 4(,VZQZZJk7?zԆl|Mu4VY&MY_1/y1LOd2d2[-^bU^ꫮRR{ǥq܈N1   5=8MP8..    O*   p    4TAAAAD     ":AAT)HSapmAAVp;\AP0p@|)زe3}ͭ#ΊsLo!>79iލGB^B"xcZ-eEωރUv j wѩ  v.Ų5Wl2\)&ڦK-J䗔]iҹ]x,Fr{{{8'zܞNl _F;2~9RvHǗp9i4L"<~#ԣɄ̙CkKFbˌ}Si&w呐9Md i3l1{xeH/0M#bߜm}ag#gbK\9;d(ASAAN\ @3{TqMP娴q8SRĕSAhR988:T*kҥK!)NZ0ԢD"X=8 ҋ;x04:5yeY|]W{粏zq6thޝ~sޤ=qƴĉhFy+9yUbq)ؼ'c}Pvp m'E04q4BCi/$oPq ee#ɪ+Rptpnc9":׶݇Rmq3ٓskrT|T|rJ3qjXVks 49UlDT|8xi j wѩ  v*eʛ8zPnHu탃ȑ#[C2x$7~Il7g]}mxbS p))V۾XSM}u)(*^~G[}͵C;A2_/A88:c7IMM*o\pYYY<8 %9ݱcG%wGgб=aqΠ%8 MLRhޕBb ,VkI{niK9Pzw;A'AV\ \N`$//7w7&M׳bW_ /e mڴG?[bg#g_2UVBLFq Ot~{[OC<1G_\{[G=3D 綔iKhu~73?^BXXZw;FyI.^h j8AjoDv{rC|uz-&[glQ(.o&\7C?smHF!##={vjJ-^WĒY|r/?z(NV*ݡv\erJ3VFz-IQ5j!'HM. pIfr/FMf=ڣ*!Pyvb+c䖥|,#ZԿXuhuQ BCѢE &O3hX<~&{)ֱ`VjSzSW;A3NAUwvZ#tJh&8^Mƍ 5hxi+R+cu Dp+{LANAe NvWvD0 j\}QkHl3vwc+Xx)[AO)̍r}ISD^k{P-5?2c\.8@hażA A`@)scD˗qwh}T6Ke3.}I-:Ǿ(dm =G)sLWLFq<{RSUYulAANAe2]1:}9R;\^.ĒZ|޸ w^LAdS\s4}^cv}eGEUaOQɤ<eGz ~h%3A0qb@hOl $R;v'/T[]Hqy-mUJ7X;/%ص?E9jUtn>~12^eZqhfI9mAA3NAe0N-b]LMHz YuSL: "23 CoR>N5@Z~y^lr\my*\$s7lGն p4c}LG88j=%q >+;R-bjUsN``[ls:`j q`B^'03\.8 .3rˮ"M/ It*  ;e12Ff5N]y_eŴl4r}}8ȜͮF~۠Z8\(28F[j~P늉IItCsO]^k[X1բp1N[dE\nQc[35])gsїj  wѩ  ܶSA*EMnY RWr u%q @IyŗX79e)rjv}XzxGA$N3SiU|=Ե$fP05Կ7ikmk0(-@in\d^ETR v퇏2^^  D p۲I[ݽyI,<@HTĀS;Qrl GqHjq}X*(rlMW-PW :Cf=8Jm2/5x9aB(Фslm,yj] >v=rRcΝ9CS!H$[fv AAn,ѩ  ܶV>PWs>w?Awru]'|` _O'37<iŗ(Tg[\_3CZD,L Pm{=?W! @SAAuʨ6UGi:(^ ʐ atg t @O?qŬg2yb\b\~+oMLu) ֬YS0q=brs%99~=ˎ;nRtp8W{H'L3ys:y絞?1դGApӞTXnvlopp~oi5,[;ǏDzh^ݻ͛#Fߊ[S]iJO^w!p {GMjX{aΝ\p{GlP]zlڴKqqu:Zl=˄XΝ;ٰ~]^^^L%׫KgZtn0AAgݴ'FŐC!99Of|Ckn?f /~~~ߊ[S]i*W\atҕ={b*FsOeMzulΟo맮R3Ǎkn Go1sgh5kٳ?#/>/7 //Hf}~Zhk%.AAAn@iiilڸ3id^{t:=vv2.ZZ QF XukRRR-'>c?D"`0uVV^EqQ١Æ!J[uR\R={˯T˗Bl/"IIIDDgn돋 [6o&33!C^T2oGE.`0P((L|EEEӿz}mT<6o.s&dz9"мysEEU[ȑ|죣Yl  lC?̩SHLLD@Zmyiu,XN/\nϜ~@d|6Z?3Jyy̝3۷mqK/יҒV8\ȣɶm[ynTXAAA-5PcnNqq\rFRd_z5ŗ_0z||:l(&N9s{yK$  "<ŋѵkWX+-Cflذ~g~xx">9:uv6GЦMw)DF1t0t:8mwe͚5|8}:;͚5e@Pʗ5{wZ1Ybnɝ)xy{ÃBpwo^ku{{{{<<*vC(**^%'7Ml &۲p"2228~Zq?6=w6b`ѳg/$  <|,^R /T*M۶Ӫe+XbL2DB۶A <,֬^Mnn.K.iA.#Jk ng*nݺѣG O?ԩ3fX(((ѣT*g^@ccƎ53K T+&kۓn6Kk׎o׮cƌ纎}ϞG{3wՔQOD˖-MƆ~pTLv2vD]{mC\n\+FO7|^_g   ܹn2z֯[֭[yxmJ߾}quuem RRRChZ5kFII GAӪUyڴweWC#[n ɓ' D\krqu7rZJxg< Ŭ51xlU9yܞ>>t ch(gN&>>ѧozn$С縸Kx_{RVVq懐{tS\z^ ­T[NsD"A!s՝l|^>a .+:e;͋?w 뺒39u[%cjozw֐]茶%:e=z0c*π+(NA!s[(_D+\b]Fq Y%i;bא}DGӧ˯brD"aԨQ,?9?̡JAP xIII=OzZ>>ַk @FFxG;%%rx jm,cﻏ,N:MXfٻkc)!Zz}U*,Ο3L<'L/>'22۷٩H=9xga 83O3kWw"@[ uTA՗_";Vϝ䦶P}d0HM.qyUF`_Tq6mҷo_TBޙ6x]ht:uD] IDAT>t֯[m۶Fcq //=wP(8q";wƿE 4 `_TgK~78slBs1[krgr];?5]J+R޿ z*׭`0 Z}0eȵK 6SԕT?jzwfݬXʱGYd NNN|L9c*7~:T* 6ѥKW1 ­ю0-L )k@Q̽w oդq:͡he%=]>7!/5f&5eԊ N|9vDž^s̺LI[W7X>$ adnF~eǘZLf߁LاOg߻^_|/-k}$6'7?AVSPP+Yw~wrrҥ+YY,Z\Bii)={ɉcG'0H$ 8l~zV\Abb"{/ 84bcyf6_Oyy9#FݝϟIt~,^LV˯h٪UŠ=zp.\8Ϯ];Q(瑛ˉ޽kşŢ (--ʕx{yr5SVVF||..k׎޵ ooo=ʎ;Xj%III Vt"/_ֲ_߱wsC&%**ϳysgժUl۶{gOԚ*w77VXNHH&OŅ[#QTƱ'L={… Z Fͅ "&&Eyy9gΞe@-jQIP0b=r ֭[ˆ Yf  /$00иK?˶m[Yb9#?xIAW*tz*M]ŅNM;#>)`oRNvPi ؑoe\=ž-Ħ',?@ܲ,&FhJS+I,D@ lmSװ?9r)$:/?1i{8q9*n*UFfޱO8JHlH,]3Ue_fbvYͿOXM%ZuY*ǀKw޾qb+QiPi])P皬'$ kR(S՗WXZW.)/"6CG@d]iEˬ|su$4]92])N-|5;Ǫ;7r(u yg9ym0éJ E@:O'3r9<)Ht{<AnSK$ycK_[KkhUc_^^NYY)JF]{CWosLӘe3b8|2SFYz=nEAnyLgLIK)Di="M [Edrv]Y!01L?,I6)Ӗ]Z[ʨfYh弹cye<: `OXa1_ ^F/0 zu.95/.V!ڣ\OJLw h1WƵU״'1;a)g{j~N:_V(dNtlދW;rj*?:7)V={RR^ns8gbهoUvv*{`.bXx<}k։=̖YՔ1sK ~W,>: -93M߹5>NJa#>k/d/u佻nM טE&wzZ'#AlOX`؞mޣV^<޾C3?3Ҋ9x8%΋={2=|?'odz׽OS4Ș E.[f(5]URԪ1"))gDB6mpqӳYRXʭ5*ܱddҲiT>Tkb RAYAnw?CfI*k- .4/ Kp$(֮! j9Ԏ]WA6Tx5XW0$ԟ=\9 h1mA/'6:ctf|˻\=ɑkO7H%6u'c9EB 2;޿vL>jU5s겦&. /,敞w崮8,YKJnG3q]wcJʋdsd"J`'sL֥R-VG{&yOec{jj?@V hl~t|elv|=d2%Ʌq:K121Ex~c;.ԺO* >ʊr/_{f̫)1M"ݻ%&_+-509:ϝT ?#j5~'+!>p:^=ά !!!:AA۽'o0gzNfxF4*M>Zr}9v6r~6.|8P*fxߑ}[$YtzY:9"z6}sΒQ'@ꊿZN}^ߜǒé)T1,plKXݦASL>) 954>DU|N,~}]`s WWWZCZfG֭x_]hTNNNKAvRgc@ OTRh] k^~mO|&/ZgM<mh l Թ:z4K9oNG^Yŝj[gw13csه=UmOT[*R~+;̿ܯ=4::nMn JŵL+x7ƟZr>嘞ͥcŚjˋ+>7w=\Cӈ[qAAw"#ӯŽull/vb%TSE֞_2yQ_:l@NIqޠ#,Dj|Vd),Zq|rzkj:s uY*.>ʖ%ʥ Sq1`F&cDY}n>~#|{WZJ :eC[3Ĥ`Dju =Sk"6hU_G/&,@s낝xcJʋ*N)qӐ}db5AAA)+eUJU煜_Nм;v6j34ԷGOe\Ac⵳WZt\N,)SS-fDCu+K9&?*g twq"@|V 0;2⫤ue̺tKs[?R!,?ݍQvΙ'Yzk\DAujPqn \gLi}A&cH*ΠeO/| K3Xzk8=X Tmce82(Sr_JR9y7`Đ' NvӦAA[茶cu$ƓTG3%mKXź(ՖDJ{Ĥ!.4..EfcGI `0BJ%\?Go!yb֕R@[PV،;q粏Fh֙5e.垢evtk-\!&uS jqbwnS }\ǟg~x~/-cTGy l캲5@jyܞV\QjY}~>j]s SwAyм;+5SZ~ Թ켼V=I BqF/˦T[B/0B\i%G"N܀S =}ժ+ؽ+̖UjR>~ø\p+Xu6^XTbd׬ڱ뼵TN׎f;u!&m/Go?g[TFG宜9%x*jߐ}n7bJ&yRyXb9Æ\g899q+t~L<Ν;ylٲw888X޸X/<戈j ܹ3:3w,Z}QQxzxo_ӏ?ؼe3.\ lpUݘ^.رcէиE}f7C󫸸Q]cs~Gx&28~7ŋC;wޑ#[ZR{G@"X3Y/\?s%KөSg\\\|Ld2-ZXKAh|sRJ*Iܵ(Wu2 S.nXi}c#Ei\x l8ʔqLemR5{,ǚsL*Ail2ᗖj6rv$3:+{|u9e8JQÊ<7zur{\웛,!*nē 7}Ƣ"VXGbb}]uni<(O< ЂO?Vq\ ͭQʳ>TzwM㡇*@oɾ}Q֛|Μ= z5|_ڷpݱ7fv٧3;|=ߕў={t'=m'''_󰱱1[|B<BB߯?RڸvA u;mJ]޽;uv*lذ'NANN'Oݝuq$0r=zp 3f 'nn{,[;o… 8p#"Hg1ݯ,[ƙg)SJ+. B… 4(pׯ?<#=?O?}QQH-),(`帹o',l0ݻwGכl#C///4 *O T*++c8s nnL|QZnm2ϭ d2=q ٰa'O j,<<<`=a|ןdgg3(,QF;e*sx,EŌ:DvN6F6CN9r$DB^7nټt֭zdl֜*U!K,%9%=z[1?l[k)Fsy1*iwܱb>Ǧf;5*GW׳g3~8"##J%&chٲeSM{2h ޑaTضm;Yg=  M^_2"aں95 oe FLhl7}pFQڻJerN֭n })yG2t(?ΉǑd,ZF%KXd Pqq5=z 5+zEX`>h:...7MDDW?;'۸W_~An5j4̛˾}ۮ^x 66OܞN{7>Ɣ>} 瞣K׮l}g2en݆=իWMԜM7q#LWWXXHjjL iiiڷŋ3nA̟ϦMQ2J?z 7RW>h:v`xd#hy%=#'xrM96V>oENN6O<Z3?#6\Z^K1ˋTW95ϯN:Y6wlL}W}ϱŋdee1b=ՖƁu~֬^ԩU+CsAoU=:tD.#>>Z6;AAn%v6rxmppO*$$$HX`r9:ubmPm۷͍ցۗvɶmqpx&j*k׮3(**"%9 vF+dgeqEcܹw<<8nG7'$,, S'OsXEPPr{9B `=0J޽ɉ:s{۶HΝ9}4֭W_Ss ˯fr^?bt ZQ\+JJ>1G/*K.3t{{:D߾}IJJ"!!C͡{eKdqm1:}m۶# đ#1fc뼸tqqqs(1ˋs*s|g/k掍ɓ'>Ԕɿ;<==tBށ}Q<2Zxl,qvvԩj1l`رVWAAnکiFBBB8nS˗/y0  PZZB˖-Jtރ233իpze)չo\q5]kkchh(ݻwgQ3p &LXkDdpv.SN+iӖmkhZ>pqyqZ]VmP96m "%9^ ۗp&^-%9?j jg6΋ԫU;n̿_W[ko.Fsy9cKzlL`YGG2k=S*BQ%_5U}]{\|-[6s"WАzFœOLA2fXAAu*hZFF/3.#!!+)quue&Ջ1ɾ(.\oi욣l`vjV*j2}86N<ܹs)))aWQX땒BUazi&ƍWk^ggŜ9?TΎ$cgDrRqJEEEU~V;68aTB"la9}>]k{U;RVfߵTBmYsHJJ`/ի|@d׏ukFndСն:-a7:u/N.7>*o. jTB|BB:RTTDLLDEwt`082O]mRRsМ]p=y٤j . ++g2rٻ7*pĄT94o޼Q,  uӞTgg㣨Ǐf7@"$TC ^T***zzQ,ൡHQz&^DJzݙ, ɖ&sfy3%;g<)Sx,c/h?dI,^b3f  $(!..nOOO|qsswa̘L:˗SBJ<|pfxq8p>؀2239Rm2mtM‚󉉉O>׭]K^&>!!2 г7+ >00HOOGA :U5V\ޚq,m'3fϤɒ%K080v6y[M h42cLOٳi֬=z`{W,Źڌ^^fcY7Pz_wlƘ_:b0ԩCJ5}/UVynBbBwGn뗸MFӦNa ~衇2uZ!B!Dkő7.233IIN? ZJG|)j9|zU4Kח?]F@@~T(>Noegg?z?~;w~XusիWٵk'+/端Sn]JիWb`sȑ넄[vB!(&|hK*AMm?NjJ=9|ϳhbm͚5( v̰&!!ڵkvBTLrv<pvrgc\+TϾ|s}Ʒ}6]8J܂l2EW !J B 6 Zuԙ?LJJ :wN+wȀBU#|3BO zWƃ]ߑ.^nڠ–߳\͌KI" 5O) !Dq2 nCUwϏAO>Ya!y!F-}3v߸h'%'z0M{~-'V9_e<<'ҳLo:'筈nZBQ *!BޑX[` L|u2HʺAgXt"cvҦn44GoW@ הMRU<@䕟hY#cvFtןsNDTxԻ:t(gt5j3 @R2rx]JZn a˒ggp2@v=5iQ;B; *!BG y{3<2xK?::3M[2RUV:T2Xw~!L% 2NF^*ZSEbvٜI5N}T*&ޡK:fro~^Aw8pe+ɳz#϶zrV-$cw3{jp_r!4/s8&\mÍp97~e.C[Df\fԺ@z5Zx"6-I9|w zGߓ/s͹<9bJݣ >Fz _2ne劢~F Md\b\z{{ǒBf~ySshY#>[ǭ./oY^q>$=gxUEL:]WIP2ǛWyCycMYzBqJM!$d+F rAqM.=?1?16˭k>9_-q լĿZv&3q//C)~вB;m90u46l9sR[Ξ=Kvv6.]"))-{͊kgU+B`rtB$x]NGgʭR9j3j>zt kVmӉM8%gDrN.|ˡ]v˳ 24MebǏ4jfcwY!ĝp ߿?}ooz!/^DW>"a]lR}ҳg/ڶm >bccҥ+,M6VUUYjÈiۮ]ɂtmڴ^@=E[̚ G?{""Pt ]vݝyңGO6lX_*^[}tD޽kR `a0o\t ILLGϞϲd2zj>(O،Z?כҥq|W" ezkK?VΉwz-惃曓1tx1mkd\Iħ @f^ew[6`0j\O^^ Ϸ *dge1w{|ް~=7م0g/`Qi3{uV݊1mT1rL>pԮ͡C8w>5kJt`/*G?ihdggѠA뎎^@ΖiM#V֬Y}61IKK#--R޸qcDGW~KI@@e@XE@@nA͚6ԩoVB!*yi-|ƕ<9vgo:} LD$!>7;ڵ'"se}#f4 ///.[{QbZzz:u:msE\ lڸ5k?VY?^*F{7r =WًV?J՛f3[ۍB!ĭa}VEbV^' t!ooΡHiذ!w#*2Z*sww+lܸ2d2p͛ ##C̷<$''<;vk׮p7hrrskOttty֭[kytԩ\7 EӴMOOs([l"\1==-[йKٶmGvw!BHX4j. B-R!(!..nOOO|qssh,-Çg޻7BO/oF>ɓ&x"<<{ eS/>4nҤ<5<=6t(jB3OU~#Ȍ3od N 'zxlՕiӧ3m,OLL,}O>bM4nܘvsw!B!)ϟׂ;V\\b08;;D/0L+LR@Ԯ]bz~}ڵk(hFLL zbo# ˫6!B!Fqdn E6^WWWׯowwǟpxR#Ro(OyYE! BD```B!BT۷G\O˅B!Bܹ!B!.p3nB!B& B!B!TB!/ڵkLC!,AB!⮷|rygpr2D9|0Ox签A2TU󤥥C>}hڴe֭[˗1 nݚ|СW;RdbÆ >}WWWzM˖--gΜ!..f͚ѫWr/zrB!EEEq9kATTT5Fukx饗hٲ%#!!2ϢEprr'#GUV͛|2/dٲeDGG[ʣ1(B|||BT=RA!Bsl߾:RLzz:#F(?SO=e[n8p/Rvm۷/xxxR{kƁxgY&5k֤M6߿'|reš5k-wB'W*!BĮ],o|2<|$%%ʺuPU2?hyٲe/tޝ-[rE8?@ӦM oeѢEӹsg"##,ƍ cǎ>>y~WN:Uz=͛7g߾}yȑ#?^BCB!A>}J< h42b.]ɴiӦ ڷoϒ%Kx-Ӝxo駟puu%99z;V(6WWW*:cVI[?<z]aʕر,=zeޓ'O( aaa`̛73fEXX-[̻elbٓG}ԡUO9\q!Bq3L$''ၫkMIIoooz}!33ooRKTu[7*ʁ`(q̙35jT޸iɸ^p(e0*[ *!B!*K4Μ9Chhhu"f *3B!( (qA!B!BT *!B!BdPA!B!" B!B!TB!B!DȠB!B!*DB!BQ!2 B!B A!B!ϯ0D5u_m&$$őQ%틪# B!⮶y&>|vioO^洽{5gxbuaצMINN0_eֽ#룪ۼѸc8C?~G^Ȟ*invy7l2 B!j>úk-ggegO7n,1m UGys!&JuUsΦNFÆwu yiYnvy7l &?C!BjW_ͣg^xyyqaStLۿ?&(ʕ+Y쉠fY,Zukqi6jݝŋqrwKСW,gժUdeepۮ|`>֮%??খem۷gФIɓqӦ'RS9~8.ŋX[>L@@=*COOO.+ǬYТE(F=DE]&0CuL&VZŢE ٱcii{os׳Ut[*,϶qi3k֬a֭^Kܹ_i$[RjD<Ȝ9sX~=Ǐ'((Sf'mֳ<:]U`˔)S{!;J!BqWsqqy=rGҶm[ڴiSbZ6mPiS><4?&OeK>gqwwa2Xf o=׿u|iӖ}g۞>:3`c̝3u_a{?2ٳ1:KggBCԩ3'Mٳg9r5f sJ{c5mdeeY& IDAT=v'p&Obm< B^g8*mW6˳nXĤDy7$5jDNqww/sh| z/@̴֭Dz궷X[pdqVrB!nm۶# zI=ʫHBB<7nL{͎ٲe+nn\aʕjݺT݃ !//$Ǐ?nܹs4onzݻBu ={ɓ:InjC-,ϣmiӦk.z/BB|<=z,_pp0.΄cGqVhٲ%ϜfժLrsh+Gyevͦ͛`YYe^rfʴYmבzMF ԩeAl3>X-ֳ#+۶ocɒƤ𻛻%j~HUX^:-9eXV.R|cm/gW6b-^k74-^}ߜ8y?,ƌkہ eё 7-T8vحjJ!/M6] -駇ZiӖExBhXq&x|o?='7~r~QquիK\^nh4ү^{m"-Z`5ww,hJNN.{""ֽ;ilٲ^P~T89v(\vza EӴ2== O^7{9sYnyorr2..ѱc'9Jll,xmmֳ6ʻ]Ugnq䏣B!mێ'Nڶm[VXN,ӌF#|!'MbExxxǘ1c0``:^BCCԭ닷71FGڮɰCQU:Y~Z%~+X1w;n<dL: K>}ӧOQQ63f,SNa07̘>&K,d`p⫯{=?[̑fUne.\7^'0ddf0s꣭zFy̭#k7E!Ba_\\b0Ԯ]uۭJÏ>|[Pk{OⵉY~zܱW-W$UGff&)ӕy^+[Ze9Mv7??8z=~~~cGgMesTv3B! ___%ʎ]ٶ=<<(WZkV3tذ (899м72o[qn9 (b֐Ze]M>lJ ׯT{빼YS]EB! 6  kƵayզ$?!B!wqCo B!B!@B!BQA2 B!B A!B!BT *!BwgddTw(*!![VzziV۾qVM2V;i{A!Bq;~>ҟ6=-iFKL7v ϟ%/Z:QYyѭ&;+WhPnGAuoT!BQ֯[ǐfԨg;[jΜ9m6u46x}:6uJ$;pN%ru;lչU5TB!w5kp ⮒Ĉ#d8s > 45`޼t֝M7o3A6l@FFueԫWY>a`ODNknt ILLGϞRܹ3i,[oًmy(ݙ7o.=zdÆҥKWhi/==}nݻL̟ϥ˗hӦ [a۶m+NԮSjj*ٙҶ];HUU[M̓-w{.]K% Æk-Grjoնm6 ;b7=Gerd+{Zŷ{{Qec+;!BqW7$5jDNqww絉9{,#GQƌyy\5kx鄅_ꋎ7ߠG< jݚL_,˼ǎ׮YӧӱSg |snZwppS] Saz-˼;iӖ}gK{#))QFQPP8v\絉]cԨQnEm߸NJiS><4?&OVבZlwyv0LUS{ېm-GiUU9]vGEsd+Gց#۽؞mv'W*!BZiب!:u?رe+nnnlْgNjJ&LxGлw2KNNÃ;ICҭ[_yv+3aYggٳ'NСHuoƅ lFBC8|zN>͖-[qvv6P޸NGGGcvlي1WbXr%Z.WG`T!C#))~㏛9we[m`n[9VǎѰQCjԨA5m9rtU~TbοTB!(p+<hִN (򡡡mۖҬY3wSc4jqƖrq[St<@Z5m6& %0=QQ ٹXMŋQUѣE44 hРe}ud~kY>amb4:FZZݶʛ򴝛kn[9M`ύ^Ese~kُ*rdPA!BbHOO/1--= 77wX]^1i[9q9YYY;NGAAeܜ%^pyE 4MF(KII˫=K 2==OOr憗K-:O:2 .i&֬] O<Ūږ#9 j^rdmؽٟaZh֧#Qebsf+yB!ŴhJNN嵅ilٲ]8|rr2YYѱc':vHll,`6ر\v2^X W\o"q{PnԢE 4McuDnzl޼:d!99j;4, UUٸqed"0ϕFSNn.ppDGG;#9 j^ݶrdmp7K|H*#[ۊ2#݉J!B!quueL: K>}ӧC_p7x̙0fXL) aɰCQU:Y~PyE>|83gnjezhd̙L6ٳgӬY3z聓S WWW&O~7x i]<2|L4ŋAl\cƌa}(7*O^BCCԭ닷74q_rjkնmϿmz׮QGrUڿVN?^ 8B!W-<=kk|;33dJ^8ܿ__>cv%W^ٸ+kqןKHvv6+f\\b0| Ԯ]zʩm|7v{5={qqF5jD+NN999.xu7CJJ2/]&'7Oԯ_Rxwxe>#"#VnV~CG-P0icf9YyEA(h}r )h~7hNP,EhTMCPբcyR]hN+:i PM̱+ z'=8Lx6[77BY&F/Ux`0TwX.#/cjt&O޽?N#77UUt8;;*tу_{9RR|R*|E[o, 992/жm9r'LÈ#yz[=_`tޝӧO*M4$&%Qf (((E) A Za[ɄIU-Ӌ̵_?/#4((:yIJmh%W+H(jğ.`4hڴ 'RUe˖oHMMALHȽ{+|u>erqqAʢf͚>zj0mڴ.9쯲:bODٳgqrr{!5-,ԪU:r dOoJvu`!W6~N2 4“ze>V(:ŸtCe8SQ@ mgP@+pPM)T4U5_8) s(hypEAW,FAj.+ЮU F:K?;,ȑ,^;ݻugM6ұc'_pq|ɬb1L: ̺ɓ'YbΟ?Ny <בmJhGӴiӛ_c fRurGe BBXp/s~ڷ'fiCRmv҅#FBX˖|c z=s!00Iν͛ӵKWtncS԰auQ-DD0y$ NXb9S*9ȶUG*4j^EQh\楾a40j[2t:zfw߱}6&edbǎxǘ?kRG8"--sФI Pu毪AONN.&t:=NNzL&I]+ĉyK*PEрV; X>5RM,zz=:ME%/7aNhOTuֲu|d#xA\t˖1iaJ˳99>L{zz2 dq,^ү_*a-|x1^NGٴic~ 2-ۄ`\Y+<2`p+v5 /G)|A1|ӡaBMCy@PМLEA)[ q:@&EWhu: CaFTdС8Q.r} *ޟK&Xjbyft:T-]VzU˞" 4mv{7wڵT:l̛7ݺi&>mTUeժU>3 ּysѣ'6'66.]2p@KyNNK~Ǚ3gfiԨ'N **͹%x{Cx"zEKy(_V]te$&&ңgOWL&V^ÇPp rc֯[Ǹ!۸ak֬իF͸/> N|)yѣ'+/'>>ӧOӲۮGN=, 9gdff>[lْ_~sp1h¸hߡԷoRs4ɍɶj2a4qrգM8)N8\4B /Utןpjz+ҁepPA~{`hgcRM(0i&M}W0恑nnn`@ù ܜ,r P Lɥ%Vp;Fi- ,,{K3x/[FFF+`qvhۮZĉkgɗ}YH~_%0p gi\t N;쳣mlp7=GIݺuݻyWWWع'vInn.ƍ 8}X>hWiWsٶmI:tȤo y&oۆNgwߡ*wfmw/o6]t-oH?ysIzz:o`o$٧w>RSIO5Q%2J n@ E`>P4#4t :ICxh,4mP?JzMt:ESPQQpL*|;Emb*jC( 5 IDATI-|6bYg ip%--̶Ο'!![...̳ٓqvv!44AAYgƍ ǰahlc966}Ӄ?+]=$qԩ1bRSS4yZ.U5kؿo#FM޻Э[7^8#Gٳyy.Z`ys߿?yyy,?29sxφ neŻk.ƍ^g(((G+ooMDRR{/bY<+mƿ]pK?ken{em0{l~ y2p1z=]Zof`K!-w^%=O;7v\͌gG0`^ ٍ^qbʞ1tbH9~u_[?Rbh d N_O`r?O=/`;39tn{ڌG`q'e ܋Zm˖ٵs'ԬY^Ȟ˕ .֯w,f!G_d)4oނ 믿uV<`iĉرH~{:x{s9];^-ZgUx3OOyQ:t`߾}l߶r}6:wG9 va7Bhh(W!++W^yOttTV>[~8U2bԹ '@v~6|8PPUJn*pƩFu[ RS Z(v]m 55e6MPt R‡4^_،j\KS\-|}E2t%:rQXXكԮ]qlsѺMN8Att4W\^z6y_}͔3j3<7z4>7 dТE2c:r0x]hܸ1}) '2 _Ιˁپm'Nh4brׯGTexk$\]ޣ@GetXޖo?{ggGQoUuuf+YkjHDT,Ȣ,˽z ₀%}OdO&~Q}$e!؏rtwuu:UO#b^zT,x%WBP"K]+lEOFZxBDz DX5H!pu(XJ_jdTU(\qFD59Q."J{mkwY{q465d*9r$˗/gڴi$SIϘoN9sVeIvǙ={6/"K<ű[os=˟zL&A˯̟G>O5kظi#z(Ve˖1mڴ^j[9O}Jn^Iڭŋ+Bٞ,I}K]h뫭a%z;~e|8~\xly=Gw2}L>ŔtBo,Zyol~gI?7>1?ū.5{S>6>)Sfe2^O892~5>'6_Ǟ]0X|1|De稣?3&Ntr6fʔ!8^{b ^x&O̙3IS=t?jz)7V֜y_W_}3gx ӦMcҥuQzN3'xEs<_b N>3nX>nogA\~R[[I';n~勺lv'%DkM{1Os@J%(#cEPn %ZhLQTB<%{D8Wu( aqQ RU;JE`L\uvDr@!r fwC *kX&D_b;v,7|v۸s)կ~+RqhnnaƍudUS1_=R .8"8>},XW^yヒ|,R/cƌ;."?lذwcU~7F ̙C[[+>lt&ˢE=\{z|דf2\>'J8c4iR3 vKh/-8큊N+Av# R(rV!- !`+´]'+4%D[NlQi VDP J@9{-&J@wHIxª%3{:2,B Rh Mpᇳr ,x/ydB&NH"&M_b.ˆ<|>'a0v!Cn:֮Yøqt}ٗ^z)%v8K,aӦM̜9#Fd.[{f}aԩӦM~nڭqܳ=7Xd}C{m=0 +cBMW}W.C[g`%6*<>L!![h/ДȘHT)[Gnq]s_D50H"Ϋlu -IH&+]c =m>R)S~-c[?8y466 /P,(s1456z̎Y֭<Yx1ǖ/[c]]+nZT\8 aLUiUX(Jm%tH& E{gJyxJ!E&%贆5B0tЊt|ޭ~iMTC" ɐQJdH[} D+{Cr9dzXryRȏ=_{oY9>zov",wTx晧ihh`Ĉ{=̞=Z.]M}@˖ntӧȓO>G󑏜՜znbS(Xju'=]~٥,ۢ+?~s+W|ra0eMM u47o,Btڇ]tOMMr(M}Pw]ф+׮m:::7߼Äu](-p0םH$?dҤttt?i<Пw;u-6!+ i8b</Ot Xt DBBB"@I'='QR J'AIG sT=|${Cl~l&his7!’+ۓPIH + @3=|;DCCCE? r `UMoxcvhbɆO>dL g_LkM}S(+bmiukv7.\3<]Ng2wϷo`7lj{};v,="ZZZx,[_V[]D!;Rԅ%e}{vA B#O}x ;Bɵ G(e1m=}BoK.UVOB>0K/}:8 ̝˥^͞s0 sml|c9Q n H$hc&t^ ֡.E)}b{c{KnC;_)DeE(ZwGs#&3ѣ4i+W%KzXf Q$1?#xi}/?'/`7VK$MMM9}{/6.\/o+VpUW1~E.[0-G7E5-8ZOLڀ.RTDn0dYP6 D5$SsE:JX(<@3t߃: ]Kxs_(f0khj ԆEHm*WkHta i%a/Jd'82rH[VO*c;o-n7˷" .$JLhlhsēN?ӧO3NgԨ W1H}_z+UUUl瓟$жt뮿뮽[n70w\u9&M&Jq!.l̘d2nQBMu5=\H~>["oWWoqL:vK>y|K\Z'>{ t󓟼ko)glװ9{ $T%|Jxd6v傃O9?Ԧ3y~ yW0fo a#9+G/y+?s-'~{}`㔩zxW Z>whparC9{ܼl6ˑ0elO]ipL\.]]~y}\Ee[n %'16$y^eR/[cQO"wzmrBa)KU :Q/HL&iko@WG&]"~1R绅v.J؝!ࢋ/ꫮbŊ9zsmG:ܿ3=x*֗]~Bmzv}g'?>\^b3e#op҉'"|#K/+4o&x泱 6YN6rU4'z`{|?N:s>5kְz͚wT0mk-0^! c *D"8Hc+4eE4+PD6GDS\ 0@A6C_/Qk1Z˾a<ڊ?F1}u'VS4Q(D PN$La6n| oMPbZH)˸ظq#>W9̛)YF:ᅏiFcƌw.;6yGl[~sǝ =zt9YY~=C!x`o2}>W|ƍcнmƌu=_%e o}֯?!‹.!GUo^oGok{pҼy3cǍj9{Kvڒ>V7O}MLQxҝofcZ<3,ݓx?j8l?hodt广t{}sz3淧=E}j&QF e5TuCm"a7yMU[~y /(Wwˍպ+7\N_eh_=G= '>p䑳1cF\έjq~w֬]駟ĉ+׶%&Ovm|K_YGR___[7SNB>όfU j\>9VZŦM9r$aP*Db3tPr9^z%-[Ƴ<{EXb͚ռKk+}K>@Xr#7Y4mnu?ꨣyy䑅yW^~,{e鲥̙3׉7Wr}aGã+>i&L=?+t{NS Jd29:F/"#g1idXv- 3礓׿㸾1[ wq^y.|owy+V#˗N?~BeD2… 9p^c;'s_½âE0g\oT|/ttt V^ͼyۻL j IDAT4P]Ìqa~:yp?{!2먣;wn9r$֭7`ժZN8{B?$լ\b>|5kְb[,[oż_Ej&0iҤE,75-?9R)ˣt!(|Q䵡X +iR^0Ζ۳ʄAAt (?b(T1bt --Sx:V?ONƊ;f6CacYn˛VNTg}2Ͼ!4߰.B9Jd!H(+d)5L~}xə>#kee˖iӦrw ZZZ(=zx\s9T*,  >5_ہߖ6nH9d2G);^#,nyݺu+4652~XF{{B$0HZRDg9vuk7^>T,U QQ=wewa]55C{TF(D*њbXԁ6+AH,IFIUsy^u֬YG[{;#F`Ɓ2uL4Ra˶Cꫮ?I%7,gw{˱LXd[.|a뿾^{wo ξ Ð:FgQFm}Fgg'wZ6mDKs3l]tR7h/Hў(CU ]҃̔CHHEH ,s~Mˬ"u4Q龭0Dc{My6^<4#RoHkڛARlظbL:J$dS>LDCr7ZbĈ#Fwm\+5:t(lҥKZdHFv73g\Zc`H#<{m;;iw< % L<"'C-hFxZYB)'M IG⏑ 5BXD <KZR &@H]A{XĚ*v6J`KPPVk-bR?= tp%_[Ŵ}k-Z.=s; ;r zƽQwTWWj򫩩n!Fi;oF7H} '|2? Y!)-B(=ݱP6.r"Q2J"mK36fX@[34<9h5ǡ5KeÊgl&=>.芴1Ztc6$ 1bĈcŻTq!dhlhO)馟/~i7H7C iA%V5nr5R)CXr=]J^$> XBcAKa?F1b왈IFoWon#Su"D[E/d@D!aS0V+:5HXА=+OtQV5-'tP$WR,3zJőC I&dc a؉ < Sh*y&Mz[K.K.yc'ô%#EhHtP" z1 D ]}*Jʮc-1T/;B ,F.ͅ[1eO)*N֔ +XB@%L`5ТQL9QlkmDAӛ&dv cLj#F 1#F/rbۯp*b.!% |<ZC9AS,:4X 2h%.!F |`МcU} m흌I$0+0&M:atIRU9k@Y!0|e8%K1DI`lHK!YQv5A 1b(:G\T& D^()#´;'t]z BIPk ttօ\,㈇0 D [|tDGd5i-tfV\,@L*Ĉ#F=1#NZ%=2 A(xRV(k8IB! E|ߣ-o6xmm ͝e ?zi?Cg % d[ #68M U:5AP$JpVPIJArƘu0 #._˻/ F; o^aRyHOITF79XG:9.r `u$|k\Ԅ1gmk1ڸt m@BсƢu)hD`Kb@6&ZKv;Ĉ#FobR!F@dy󂵖 (NPʃpJ*|?R|.|߫ d6f^"5vIOSٴIXlUKj$k;X*R,Fɔ{d [a`)"B |NC ڕRxVA^+bĈoGG;I$SHJTK"<墝p @9E%¥qak]p%XHa([J8[BTa1lx#RtD>`$(+"wG|G{OIb'۠ƈ#F4bR!FBo [.Vy>٪*:CeBRXڒ#H"BP\!@GHZKP`Hd~ &kM&ˋK 谄)rC+c3֒# Ǝܹ'1yLL̀X*Pߴ6TIR7q'R[3k۫ܖ1=xؼuP9Z7.Hm1"rpP d2ST(G-J$@(EWhkLn]Ė 1$*֥Y+Ua([ QT8c%RBWyO3zb#F1,ĤB;7%ԡ 22F+gKBINJR(؜I Bհ'[,ke *궵72B*3țm-АɓIiJ%.7P@+`!!&itZȦS$J@Ze0N_jZOLH%W) BJR8GGJ$Kgp0), ӡqck56%ҁft]BHC.@%3$3>P&#Btd9JȲ2t躲H[`E2 B6!V::JdQup1bĈ &bAز]Fk b\1G@B 7@VJCS>5RP JS 5Em#)B>55ՂRh'FmلWۤ(U`Q)F Iu+1jl>A#2UWEVD > '@)%.hM&&B ) WS"LXSvti&"0z5FJBkL ذHPĚ ul;)vuJ#kI9]XЮ#zT#F{&bR!FDabdYTPrtTɝB(X9s!F# BHC'(UkAHd \ֲk4:(C _d24\#WDdihKB&pj:4a+ WE=n/Tw+}4*%FbDk#ڲ TX,6Ԩ1RIr+R:D&k*k1Դ6SX",ա\i`9DLZRBm3fT2DTs<1]BiiH/GDrB:"J{0)IDb1bĈ#TcGQ^dh -@G]S[ZfuLaTeʘ2w+G=ϋ)3nYt%UD/MԐ! T*U7HmIr.]Lji(;/#c X 30Ɲy[ZhmoSܒ)h55XO J(/E0DF+ "jmƢ")GP{%l\TBxӇP2r~,TQb7I"t|mu%DTrYp'h#F{*hR!}2dD\} ^6mwzIP(SαR\.`_&H"L&%&J*<' l>}_F⬳yK?5^3z3ε`y,[u+Zk>P/|?`}ٮzPS:ڦ ZRAxBfI*\#HBr/H+g\t"ihh̅v $}<Z)&f&cW>D u8! ]FyFk iiyJfn!#z`ƤY*J*)I:܊Dx7h*淿aٲeaI3}̛7/B=_=vE}we}twt}'a 1hFG"5 e t{OHBZRJ<R)|#_( llLgk3>?eQn FEo!)Ȅ,*Zbc sF.Z(C $ ^]Vt8[K$]n]Na##F1bqإ=W_W| wq;dR{s >Sӟ'km(֥3JMMv0F7@}nyȎRJeIg2(υ+-[vh}Zme-<1Bb:۱AH&~fPLkʮ>J9 |@G4Z#mH*!VgU m ͆ !+I,D8}yhL(Jv6[}˹ϐL&y׸WrG0r˸4y.mw ;~n}EhBP&24)?A&)717zXPS Jx- „Zdi04$l$)j#/DDTZLMa0֒IH&47,_ 6m0 sW*$lt~8w}7Ͽijj?m.c!cO<m|+`s^#?`ԨQ|?~|쭍Ok]wO/A̙393XZ[mQ7af>;߲:;;Yzz $hllٳ7o~Z?VYO"рgTΊQtrE7HVlqrDBZƒF: AƸHP*:,~VNP"'PŰHP"L5jTt()I$<7xזͥ`XYjLr*s9|7p啟ç^裏a֬*xc}SKbذad-Q(+0>)S=}lذ>N;6|reߧO7ó裏?nVl IDATgz?>׼+L?p:ch_Gw /5k8S~K]0~_ O` eG,}ﻃw&6#H!Di#bGTwJH>٪,O-yV.{Lv䭠KZCdWB%#Ec6"r˾S/s=c6mMƟ'V^|*! uҥhM2]ʼnN:]5Ĉ#F$,_ ;r6l`qEfD瞻_3b|7ky'8s8񤓸x6lSLa֬fyr9{9^x~<|pa#:uڵ|_s'>BgggW_ŢGrgrYgS*6mӧ`֬;f̀e}_~c=\pA){>G:anObC}\*EJ&ԖPJpJhm1o-@S,)y:s9::swN{G:ݫֶNZ:iϗ(i:E; %Altd"EP:E;bAH#4ֆ1"ZjKP*BB]o32|̩̜1êx7/_FcccqRJ6Ps} l\l/~ |c0eT>KXno}za̛7[ߪjnፕniE\o}@?o1sLf>~ :O?okꣻ}~(Jrrs9nOZ[ t/xNE4OǂRq ēO %nX iii3իXz%H!H>dҥ.L IKHPґ (2L hr%,i +Wg \K_# ƌa(OaJ%!uDƂ&'Fo,a~/tpcC"I &uٔJ%?>,]8;9snh#<ä3.q뮣S&3k֬>øqxG3g 6qwTUUq梁Ry!Toں:/^̂6mT3Wr+^~zd23xwqRTWު}`6EAeQq=j&%Yy_5.I\5&oMD|cEpEaGU730K|uSu=yV,zLF_;ӝojya:R v a&R*}H/gN X+^]]2 ==A(wgodRB$aREz)ЋТZ;VWD*%V'~=BeQ'>Iǒ秵-F]cvAn [KK @P(J]]g}΀7l} .tUV/L0dĉ|<\}wʥ_e֬Y{,_,sO-{o~?K.eڴilٲ 6p 'd3Kh܋>c es{ybguvV66n=qFݺ4͛6'|˜1cvyvnpoCJ'sɕ{Rb 7K)!SNR~oLmkR^^J1IL0!@E2D*]s]t]H]C8U4/I8Cg JbRNUe7 P߀6+`„ tv2\ҲZƥXpVn\y `oS:k y9N3B]d4) fp*xݗxe{w72}~}Mkxpխߴ C(s){Wpߩ/0d>! sƧTB$ L압{+Q]]#wd1"ƍR]C<c{/| <3̞=g~3< ujjj_f1cwFݥ1nݚu"^/QKֻ@! eYt45چʔM B"H))50(zeW hǑj9/v-ֶ2,]HR`N:˴Ss0 hv^|c66X *´IմAdئ8Oǫw ,zA|Ā ݛ}׽jn;17v^seee¢Bn1g/iӦ`xl~>3珆 =//\!HaF<B!;tQnٚpz~Ei7.x5.v.<\R=4`c¸zXֱ<7o~;s׉T(ίiZ2d2A0ٳ瞻Y,ze=x_Í\s͏ywbyYWV\I$؝QjWF}D?5v4jD85` ´i!,;ݳ7G!pI 7]͟en:qsdwiP2HX+o!C$R gV(MNjc Ӟf"PB^*ʷsrcV>6llm3Рa4Epqj洉:"ot qO[r%Gu@fu[fl}O(/ٟ\yU p$}[lO=ӹ D¼p!H_G6}@qxʔ),[F4h0K/f͚5|?lR.Q@i]g}UJlAM))1,7kȑD ZɨQ#ÄyD:DcIt% wl4M vJ=fo)- Mi ,}\R*'#Wce~ϯPW;s 2woG@[-}.2o,hn~k_^ǯO|Кhg&3lLt4SNx}& w F+ګ8kWhZz-G orﶭ9/ |yu݌Wo߾E^#koImmmL^XXmF{YdժTVVŋ9rƜ9'2qDzܯO di|{%۷oξA)m[$d.By47d֡'|rLBkk+ٯ/$IFcQKCQPP@AAv$q=ORXE" H$md2IQakJPK|AwWNj$2ĎǐtF a l Mz^_ @)`@^_Nj4L[#c(O 0m(JJJtZ%ogF %RV:+ o U};uB(Bڧqm7w1ͤJR$S~;kףאH$Yx1g  K/\=3a~_2el@7;cg5#`#GRVVF,a~pUHs:'ɑ5%)$膎x|3DM I MhN@*4RAp5,39XR"] !MXHҢ#EgtuׇaxhIL ]ӈlb)@խ,if쯾,RvOUϤ q-º8qĹ+=yDSaZb x4/BF$wCVkM&PaCtyc˄m)33% Y6q3 n7Lr, ś/ss@Ҏo*yWoM4l۫Lش5FG- `S>hZTJj[r!NckxK#Φ40K]H#)Vט6dtU,:)z,Q(>nqnb)t$[YV*-Z5gGYYoѵl"e'{]ci7̨>[fK_+.WqVכM~ǽ>ŧ*)yW`W\~9.T$+C/CSRZ-o<(yyyl+weʫx'ЄfBcw>|=[~ScY(wqgvw}=Ãc?r.6nW\or9 7u?)#F sx:徐5*sFt;8z-v"v8_۶I$Dc$L}}=7mblڼF::˜Ciz]fH۰|E,o>v^f~!QL%Q8*@,BVTG2Gx0 i&^$9bN1EoywsG^(+ L0fPq)K]ɠA{G_+.'OssӦMI}O GTTTz:--7#-Pـ2zO|緶­:2n|?l~<.,?vm&n7Q=Ϯ7TN?~hf'#lZS=|X^bfJŠQހBq72F6/oԾ=?%:>s #t^wCF_sh*%rpvSnσ/ ~vߟ<%gEBU=ȱN帡욇xiÓg.dRtog_T" s14;g9^ǖZFO?toyR6Eqh^#ޥ/w-eGrSieeZדX۹9`f*zeNS^~PS{H{Y^|qoӍkwm?!D6ж@f?(//O+H)w HA{{;ׯg̈́:;cn`NRe$)tÃnY蚣 R4MC I !V[[X]Ղ`@ A$ԉ: EcMTjX<4_ j&V2NTlIJLq€*LaEz0HJkr~|Ro̞4 Qޫ=Uiv@|O6fOu+ à:}ڛ 9m}OU^p&\W$%QT S(dԭ@m 18QwHYBPhBCT_SMsׂ04t]إI@S"#8$Q0m!U`sr/hd69T:!ԦSA)Lz~ϋ ]lXZ^wەJ*,:-uXҤ_ӌη~0`9YL⽆x "v,iaJ`Q1jv&/nDE^5#טNNlSK)Cv>hZcPag_B̌rT~W_Ɔ4Dk) x ]sU:Y{ w|V5?X,ٺC>mm\/sɻjCWt *_ àW_JJJ@@ʕTh'&H)m>())fwu`/7iRXXeDH$SIZʣ¢BB$ltIdmMs< #=P6d N|2P(dT^fGe!84ʅJ.dŦ8c[0zH)rvUa܋/6? l[;H n@ m(!D9o2%B(w)@ &wdخ!҉Bp l\ ǯ)MʨJJ 9%`$GRJ.3 *L(m˜@TvF;o7:wT}nx뎴j;j.;nߍ,t&e"H |Miɕk;9|1,XNz}{;#g{Qs%A fV[ ObIꢛZF[Z j؅TA IDAT"hhdk΋VFC"l이}_cOrA>:_qgmFҲ;Vijj"$i1-T"}PRRBEECҲR v?cMӰmX,F[[뷳m[L8muuqbB )-.fZu)exiI65i G (YNUI 3BXSm >9Fu^>|Zl1e5a4P](?s^Y%AxȨHP]RPQDp胫ڠ^$XH%ХD ~Bh(rU\)HOTnkpŎr #Ɏ,d:q$}b!)sm34 Q'8/-e'Y5NyaT/ϭ'[|F˜ m}6Cid0C9|:PjG @h!J˓@:Рk/ɷ4K3Rn#+ < tJh:L#+)w5C0,خB&KHO4%ij/_˻ڟ!5S͏EXy cJ&P]0[YӞhq_c`GB8].~2PJu++(tWԳ>?O,:?}~=#푏Ө.82gJFK %hέ;4Y!_[_djՉ蚇F/"qG xܱs9ַ}1CO⚬8d*ᣖUF604oԾLQR+ξ|CkJŬ]%[j'd3~=ٺ;㾻}? Qc9!a6xl]F ãcNze1R$zz:RtE!Pm;Ӻe:8/&\'\T A0̐I)3%] 8d!LR r‰(O}0?}lOtsl *ZԱ+mJCxY/I )Ibr3 tM $6mWBPK"i{ d* LAM )t)IPQēVLAi=R)pGH7#AĎ*(C0!`6N)G2MiQ[PeXHňޕrI{<V7Ai;r| 8Lus박EE^5?zw&'lUt۫rZTagCg-YcV p*:+'7~X!>#cKY.ʏcwҚhbx{g2/oxG޻X= GL{Wޚ֙f'BqٱEꍫ:v n ˎܥ?G\@$Nt1|s}_ơ[y_=^p|iw8eԅ4g]q;8\t^Kwne=ny8㠋ΑyvΖXОho\~7ӀǯE̖]]w?j6hCӥi RG e)W4<@Ca:q&1YēC4+?m+Wض⽷^E:~NFp?+d/-S L)4e()PBe* 4?[TW,{^bO|A'[4tnC څ h*L4AipmRXA2(ެ] xanu8_[߫iN"{><KκHH$bn`Ss,%xh` Haameli |9fGQ#LBE*in`]0 Rض'G۶Q кy/ǍFa^=AC9'P8 R)L$VXn J9e$!>C~M~} @8G=AkG!4%E!15e9B2^&'͡3aLJFHxQC:t;lI$lґ4B QJA*sp jED3,)RP즐t> !FO - ϻ4CBCi)V@K 2C_^ݗBB0Bpvvٌ_Of;ao!BSSx/[#08m 适p8ƍ䓏I&AW> *j^:KN6A(璀):dMװlMs nI?pK lTDmz蚆G$IRDix|AtMöl)(,IJ-Rn  k:3g┓ObذaN$!;OkyF v?> Hg^3Hu]c,0J,!˫,A!<:)I|wA8_l$pp9R7 +)N0@ Qe ϣahv~J̈4^<~1G҆ȫftڴ'8n?=" yY/.?~js]^\wFpraTUWr7SS3aXNFIul}Ϗb6 }!- J? ׋-wL2D"&#;{3/Bifp-ۑbm!L:bڎ vV4[O$P2-&1Mx<^+|3|pFСC),,p^kiZtFQYUIYYxGn2/@ T*ص4D:Ƹ!cWoXѺڅx7f&jWynao/>MB̘>^v~S鯝?e_宻ad{{ßZ =n@U+@w'Bt *y/MsH9 %m| nY耦f}%RFeEtL4up3/r,Ӳ>Z$v"tMHRCUB傤"6cGNzVcf 6dP ʑxLoe$,H x 4 g/\%YI$IؖbкЦ'B -%(=XĖ mBD_*B$x|^)7DCS"HaZ~B p2 ѣx*99@PWF(+mCjPᡇcY83m1} _\HKK |ᇔpĨQ (--% !gae|>>&qତ>쳬X!SLgwtҗ5x&O̲KY`h!Cp%0thߵGvr)d[t)-͜~l䑇fL4)>F_}s<{AUUs/59s <98s2gB8m۶aZ[܉]וz9oRZͦ )LC7A*0HL<#Ӧsjmg!-$PѣG1~;q1rH @2]'mꫯOuV4M?3gN<'zB`&eelu @Up2Rh1N=c ogɣ;#H$#?ڭyđTVV0} ԟo~?7  s)f[-Z[Z9+z{q]/}gS6cӗ={*ye> [)4ͩ&#$4T +r 75 r UUh^#\~|BS8e 4$͝#1\Mb$"(["DJ fQ7,CRd͒MPIC9CS}{9~qLv gs.>2aOիW\ʨQٶm fnf| /q‰'r ;p Wq_}1;fX|>?556*+*~Y3+8oyyvc2]m\K}C=^z)fdy/@޾};O:˾vPo}y=m%&M%Kd ҥ6l` ؖE61 @& 8`aDO3yC!?Ex<@s4tӍG? /d̘1$ jkk%AhD"lݺ%KqFN8:oSUU?ϦMP)ψ!x<6D_CR^^Nqq1F666Fgg'diN(3н:g? Gƣomg|O>O>~YfN;O=$X,}ժUλ]}Lo>+(w`#z~CZZK,[oUVeĦ|G}Ceee}ݙsz׿Z/}gS6cӗ={%]a)хRwR*kF"-m` U~4f tV AߖH!xTt':B |M*)IقiL٘&LE*%R62R@4/A7<x @PRؖĶ ˒ςTt$z,ĿC9@?|i\OwVTy䑇9묳3/̞= 6jJ綾 L8>gynZWx饗 ɝmu<믳3`~8cƌQ3&S{QGM~~>]aFgҥL6-[a?nmذ?^zGMVXU_ z3gemE_"T8 ^d͚5crW5k˗/cyV6oB]]=daÆL&V@(**(F8J lٲL륰sΠA2A)e&!񐗗GAA~HT*0 O,Gu~?Ǔ~hin!?cNL>y7ͣ;'Đr7:L ̬wYvm>fwlҫK~s̙×LvZ֭[o-i ԮcRUUkٳ裏hjldYY?cA_׺;ϽgnC(P5nj$~D2. @%ЅŐi&vd,访@!#,|THGd[k'fqf8dGG urG'KBsT&Q.-,LecNye$!MiK9C9§T=zt1cPukG^u+UUU;yǍ혍7"k_,C>|87m*ku&O̜3Ngܸq̘1 /(+F30m4,xO Z֭ ۡN|>Ctm۴m6 B7tW0 t]0z$I:;;|>B!RaHd&[o-cСLr$UUCRIw|STUqSE) iN`CSl4p2-plVKoKRÃc4$ʣt20lli6UA6h|J-r!zP!v=B0]/+]0$tw9& R\\.[r.mt;N5Mnk~̻O,ʫkv\tD"a^\[o.B o_VXxdkuXB7/8swa UFٲe [ .!م\s2ii*WLhhn.b˲wJi k%)>eCg,Gםd2MA4oG}DGG%%%3|p|>_F9cC d$x^bT>iT*LpJ3|ƍ?MW1Ft a;6d~ׅFsRF,nR64MX IDAT(&kt#A΂%uT.B:)em Ch;49C9䰿S ʡאH$Yx1PKs0)%/ moNMM JnP-ϭc1 SNcSپ};o&Z3a~_vI98DQ/_9ůg՗ƣ/"Lu=7ߤ> 6mD[[;ix˧" (,,B ? + ?XHaaS4!t]6MDQH%rL&0BeeeTUUJXf Wfլ]:ikk:mO28H$SVb0M6oNKK ܹ3} 0N4i.%c/d"yj{"6K  2wwRWW8e3= MMM{y>fw۩dժ;?N}ﱝǣl_nKt?g6Mߑ];rƜ9'2qDܶ~dۿ4omڝٛP.I k283O9N>9駞ʹi51|5ysӧqqqMaƌ)̚5Yq S={*'͞i'`иR *,k %Jd6t!D@RӝϚ (]Gh:B7 té46AM(phhB9Cc| \J^^+9s;cxx Op%pqmo|JOeYD;qǝWt-SΘs&?7z 7u?)#F sxC}m<-[֫]q!PSS?!C))-aAڟy̆  ;vᰊ҈3wߪ w?aDR|eTGN0?J)1 ǃaĈ455x:t(qhkk!%%%"(E!2,X`0atdgg'eex:Z[[?~<Æ #r$&}>'K$:'yd|VWO/f\s\q|ƍ̙31<;ڴ7}G6v;WtgLK#kĦ.+M!?udP- )2>oȠNzМ t#la)4wUDah3:fBA@Qq\ufۯ_kkZ۷jK]~_w@QۢUv\Ae-]g1s/ $!y^{g993s3<@P(PSSCuu5@#GGhVC,qY-8Xu;?Wx;9H8+}4׏c:<ڈ޽Ks>˟(vZ[[ip=ˍ79s;wt掎ڛu>+.ܧTz޲;ǦxO6%;s(ˆa*BZR@().]Xs0 0 I8& K]"pyA DAۇ?5’V®*Vx RXOfVn&暕;|pƍYr%-"77vS }AAMM r\(p8LSSDQ àp`-[PSSC^^cǎ%??!Hx@ H᷿-\sA!_gƍ477駟С{뚦… Yn~Yf1zMX~=UUU 6SN9G;88>թ0rss0<ȟU?hƌO>,}9y.">lBfbǁZ )g?eשӿCZ }HOO.-㏧:I$dggSPP@~~]|RPUUݻ)**bРAvv  D"rǓק/A,%S\Ǯ]7Ti 5|NE&3L0sIgFF C0Ǟ@Be;ԩ'޻qۏnOI+v)hlh/3:.Je∞3%l\ ]d= UluX5}4Y: B RChE4qK4ݒJ`<""Hzf`ԐNkk . , 4LtFAI)nO.ƛO#LifT`+X{( *$J^+ph(//gݼ{lB!R*2cPy摙yG[ȳ[_{5v7MLNN 8,WTTxBP]]zTW铗ǕW^+m98tDvv~+ - ގ~Ck󓕕Aff-)ex]d 4B\.C Au6mҥKYj`|222up8L]]ddd0jh'H#̖|S>^g ZEX ?) dHN!J)/(}̲j92{ӿ}j- .]׹kEGG)ʪ]<22,#I4t@ Dp{PRbxw!PhJ ܊qEx\n\(;A 4r A?7fE$~ E7 w.]CJ!qRbVJh%E-ETړ>fpTs'[o1y}dJS{wؾ};̘1|>S(ǏOm|[>qD,_M6v)IlkڅR\'daXV!}Sҷf呕/MBmюyB h.f=0[ 3rd\߹7![q^L/fݗB!G]2P&u]'{;./–wi5RH;z@E0'''HP_W!!# --H$Lss3~z@% MvmfZDXj\vLPRRB}}=K.嬳g_W\.v;v=!kasʠ_Fİ~)-_v_d!-Fӵ@Hh%.G=B KSsz"a_Eu"f!ÓIms- iDC)\tMC)I5d2Ar.躎%i4"Q$CYJf> B ƍYt)Y̙3ի())SO#j HE&(e)LV4HC8ٱٳI'nyUU_|wy'^ve8szgPUUѣ㣏>J{ǠAVO>#G]:u*7onThܹsy7o|׻w6Y|撕*2rBljD"qIKKk'!)H$vDD"6^WTUlmƆM(-©ePoٙd2 nH){plPv:im_&Мh8-Ϛj]R0$R)5(+WMм.|99xv$ 44I^Î$  !RY֬YNVHK$ztԷFJZ*MO:F%),o :ڱA9r$o&N-%77]=BmIXz5ÇgժU3CUURJ~ߦ^b1jmhoضwAA;oR<ӘٮHeR0D"N; Sa?tp0]7R+ڄx￟2׻p8r2L0H$ڵkS ^/r-{hs$Ip }Rgy&ڔX5\.555ԟ GůL<O{ fđcv ?%&!#3aECg"|5W]MQ@Sc u`&>,^oakjƢ$b Q3.10Z Ua3womT>$o?y#'Вdee!4T2eB3_^|L<kdggJw8C18g CpAY6'`1j}+nM fX q/'dKU8t%(HЈ҂Qͭ4 ,;:Jeu"bR$%P"M033E456Q__駟&O0z( =ZØ RZɚ0҄f9.N1CNN&M_֜;p@8ׯgȑD"}9z 8p =.+nPRRիW3i%,逋B\R/_{/=uuu\wuLuFe˸ F]s=7N"`ԨQpT8n:~z睔jyo㘦ɷo^xSL%''W;6فr$1݃z|n/d鼳=>sc:ջkH ''$DV0XªbnB"a5"4[ YW~ʦ-T55!|wC0~h!-Fa馡 }{oQ6=hWsH4P'ޞ ~O{$Yu3Qh.7ۅr.V %4 D q v*#!M4[R&i x5Pd EIhtaKTvZžt kQqO4f9us ! "[(S +X\UFhJű?Gq駳jժw_O?Mvv67]}N8z>;rq5OO}}=guSL9 ~?/Ri_}Ԕ*x뭷s9)Յ;Gyp8̨Q=ztjۏ?!DNhɒ%,Y$}ʕ̜9s=[;88>GS-wy%gpCQ\\܌:s}WiP^eeXRBA|[x=\qŕ|\w5'i&ٟv#3w\8=hʩ y8 xXl_q%}\O=]^YYɬ ==}xG]&nF1u7YװYCoqg{vU lFUc5F̠0ЗI}pR20 9dferTZCCxUCkw6Oټ5yҹ{u驇~||K/_Ku_w/ap{ZP(wɓ:D.+ھ+:!Є@J*LSa&um:"e*=UR&8*,򪃮@ KAZgD ˡmܝF{QXɧ|M .W7u<.ݥrp:n݅Ē5Lx 55T0TvT -*@SpBPVVvppp86B2L&Έ#~˖-|nK륬lk֬Nx%Kk.y.WWii)^Qe-[7=u o}G6v7MBqؾm55lܸRRm]qU̜9O>իWT؟_r x:̙믿Ɔ |]i[RjY}2Zzֳ!{z u[ٴkP3A-@AV3?e ,Hߜ>dgp]nվUA6ۍ{_*:?t{j`; ʕ+:u*;v`˖-rݶ;so|[<أ)' >co}88 Xf ;[6uvL:)Ri VTIIG 뭽*j(1k_!p!aKSjvR3awvoXh(L܀P%\VJ"a"$1!! , ='J"fEwii/ͩPVV;g6Æ cƌ;0^Q^΀vZ{ mݺ)%_vX6D"a}c 0l0>U[1~V^Muu5&Mo^Wf L+&Idfebgm~[oIqq1fr]9U{K4 ʆ1}$v|7wϧgJhFɈo|r2s@uitiR8d1^`@9shBN…ri|ݶ;s!CVJEyy6R҂{}O#vtgt8U\n)RC -Eo]KVа*a=aIC T( iJ4MJ&SR)&2:>Pm V~jF()/%ͩicnx \gWݛ`ZP(nYKK @l~n_{?ZZZ-kni&7qmM4UWQS]m?wذaw;Wκ͛Yh1/r*+RÁqH*ey9=+xq铛Au; ޾o|uV[v<\|WiiiŋȆ̅m Z' 죻NϏKj6ss%%=oV!.L:&ĈEI9aĈ¸tK ¥i V %%IzZ5OM DᕰUH!B>+|a9VH+Z =e_vXꊳk6@K5r(% v ;ja?\}}=p )S2y n?bHBWN;o֗EIUee ӨK}9h4ƿyt,Y‰Ӧ5I^j ĉYl;3fL/!tTTTtko&k׮M*®}TR?qcqݥ_yg8IKKK9R5_Whfct5ó5{כJ# ݙ _y_|SvX'ǥ#zzRY vTPkRs=4ǡ%AM(AmAeS v7jh>LMS8$t?JJHb^HKPҴ @ e*TMCaHeHC"MAh0UJ̤A){{LbEX540tBÑtppppRr"6om?1 Pk_NqǏ?H$No'--ʪ*:/v_]v^\ÍwyuuOyGٵO?O?6.*)cq%]Կ>@[YRJʸ+Я_>99 9nŋ2d&L]_V:?yk޼lksɏn 2Y0>Rh~:=9.pRQe=MRH0Q\2Єa$pb1|>T1^Eӎ&=) „´UR* vUQL@C \^´@"d2JvSV)Ph% Çظq*--=,% uw-d$TUUH$Ϸr]"==lI[AWUUVrӁRwCѼ: 's_),,ȒÑ?ƴ 3b(tHEf4B乔}def`QRx=^‘>Euu5hF޵mOFW0P%p)ELwSI0£*aZ! BCESsQ,vXe HPrjC* Q;Ba.w<;3%s A(aTp uu߿}{\.lI[AWw!֝c;t4ouā΁e毴vJ5ˁ#ME<."Ԁ4 %MVdg2zhx ߣ_Y3gk.4Mr{Q !gw+J)*'# +-AA"aySMKKZwS (A”huGn~ Dي j6(.P. ̄i٦ t%'$ uP JvR >9ix (.+5*.S+`cj{%-HPWWn_jjjl(a$Hx=^\._t1'Mwa A_Φp,A$4%H 4ArBf+hŠNbO吰t"\:i:iR@!M4LeC4#cH@lmKeVD \:ksۏ~t;2|x׿aС·~n~qŗPL2^b5SmKEc564gaˎ}^}.R*;^u*,];曙6$o~wn6xC=~?SOn 'o~_\k okC$߹'|۾λ(4thTppppppp8h#BJiBdJiz{lǘaJx<[2Rv0UCAJp4i)uMYk* \(!HHOnݪÐ@b954S;%T jD(e;HhL؟4FTv='Rh/o+G0g}4K.e|G3w\嬳'甙0ym~{)M2O)%/kV2oy0umI$<3f 'N/~UU&yirr`S?~|v<̘>ů-Y_o}9s㑕/|^{54MtoGz}L4fFIɠNm}wi rƙgZr%u̞=Ǻ,y,M;E _gd9Łsl2ZZ9̳Rm\zΞ=U+WpBBce1`ڐ׮ )%W^Enn.`GyO…RYYɴi'u*KxcC<ݽn$ڑ6Kzz6$ieDoʫxE\^??au,{o%od,]1;4!SHmBVĀi!ScG!U-9dR61TE%"TT%"ʨ* Q KvT T$Iv j5Ay4&D*=QFԓOv§~W\Ckعs'n??0x}}H8=DVvvldgp׮& o4}Iwy'˗-K/N;n?$Pm?㇙>~prssfΜeQZ:~Ø1c4h+ִt~߶sb>C#:R2Dw>?rj߃9gO>_cFj?x***r̓k3v,POEy96mg&iAq᫯R[Wޟøq={О?vnOus$q"z)Glj ]L$2`B&v,;$Y `E#(ӎK ˅嫰+Rv}~ǧ㖂 k44]}X 4]/F!maIM"Ig%1 0DU5 SJ[B _ VS"Hco:^{ _oٲ>xחA `Ѭ[^xo|㛄B!*]Ʊ}6jkjظq#.Nx%ǩcΜ9klذaÇwϊ X v'ON׍;ݻwӟsrdwNNbԩx}^FDwecҎ.Yfuwm]-@cܷo_6mDii>7wiw݅cʕL:;veN9nξopL>o|[<أ{>?t} Yt)f>Oɧ~JZZ'0hxgXhȁn8keo*fΜ 'իRǶ-ݞH8x 5l7nAc4Mc ^j&MD߼<̳ڵKrƒ_ 8N>] 6 Ú5kRIV\)aݥ~nBK[>{6_UZZymTNwJG%`cgif ΛoSOo|!CbuHƘDuvrpd==Gݽn4NMf1;NHibH441 eX!2a&l8hX,A$ %GX ()R)vAq5gwSPaՠ&)j#ڨ._}LP4ġ.&Ohu C}cu1Amn+b!5-10𔓸gKFV9: 3gO>DjȑeD1;vɒ%8mNUfРAL8e˖Q^1cƤYb9K.h,F[˗SQQѩl(,Z0iTUVv.ɐ!CÃW_yWӨK}]?ڵ =pt0 ?wƞxW#9ޞD*8888888 68i\~O(,¹5,ZFswsם?e׮JN?tN?tJJ;> IDATJHOO|`hʷnOYY~''7!שo'--ʪ*:;uIӟ:X ھDO}r߽?ngGW\{u\~KCC#99GWιԓOrw߼y30 B!~k@~?Ha1wEOQoCظq*--=v8888888l]?ZD +#KbRhhvz ] K~1 BJSP%u\.0S4#rilF}ݦ (eI^ڥLi-SءmBPi(4-Gilڱ=uQE1L?w'M9SW0 vEvv=pNIɠNr'/`Lݷݪ*j]֎x<ݻY_H,)dFƹ ٠$!Y^4n"Hi247]Rv;&8 :Fk6o_i=TA3l4Mc'i3c,Xfi3:D)EcC]~9gqQO/'S\E22 2,U@ 4KA4&m"7iJ ?J >ƍUii鑶KĎ&5;* ^"TĮ{OhI&13UKzS$^`A#X@E"膲 >x;w}ٹsCVb%S h@(~lI`cm 8(pvKOg"&XZZY>={iӦ2Ç e7}l߾:bo_ټDTk_i[Fw#.}}ɯcx1c&^zWy>`>wwڨnlټQO=رJ}gOxwܹ )))̙=7^y?}ͷ{A+nځf~ptq[Q*d0\bjO !ĝr|ٮ}{ڴmė&Уg9z(( 2Yx 7bn6ԭ[]ʔ=BH~3pwwg1j.\@]ضu tޝ~5+ۃ¬YRX~=ǎbffCh#%q9֭[Ņ1O?G,\nݺuܹ C J5kwEҺuJa\~VZRW.$dֶtT-NZTz %++޽hb?r0)f!lܸ'3<5k̙֬383rS4h@4J7_ū'ӿԩW_ @k^]vc֭$$ӿ:u+8s yg5kС޽\d_Uk.jaEiN=Et)N%Ta.l+RBoҧ !ăEx{{s80[l!9%zdƎKqq1fĉcKg7~ 'MDTjmsƍ|:k:vb,?͛7,7|9caz)уӦy$111|tލ^|-[S1hժ5痟4t؉nnU޻SOgرy?hsikJUNWΫVsPёbMԬMpppAt BSpY}v, 4d‹/pMyv1:$wtޝC:-oƍ|mۖeڴ|ԩSaÆefnݢ)+n++k̝,e{K*{VuE3 VP,rpJu1}֔Lo;ՔO J6G/#& x')VoD&R,ϡ%y|u+XUD߿Fu0X͝_U>B{K4ӄ}NNΤvE.]ď~GcQBٱ# .YF&00W^̒%4hfO?CϞ% İgO0;w؛['|+++ڵkʎiѲ%ώ}ݻp);J`` >>>_3ml8Ν033+9W::u֜KMMY|+T~ݪs,J_/7ݝӳgOΝ;GRb"ݺux7cǎ\|'c.,--  Lׯc״UZrJ2Z{tvvŋZ.G!C0t0"4hpq[s:v׹|2>6uV>5wO>?ZuNvWz5oE[8ccfǥ(\Fx\BE'ෳh6 5jB{O4ӄ}YY(2bco^fyo/xϝ;ݻԌL233toذgbn(+WR?~jr_>nݚK׮1rdv{8m[noeܸ;ff?Xg]UѕS'[w*;^x 6_OϞ=Ynظj17n孁 ƾ>}Jg^YZ*(ϧ_dge(U> ++E߭+mV:v֭[ѣftV>5wO:dʞQMߖDtttؒVf[ZZvvv%oM4ZN.se5J/ޮΎ5>wGH~'rssiӦMh.p+!""L>YYYX[[n 4ᥗ.k絪Vspĉ*_/=zdpSSSN!yzh̟(/++;wҩsgd1|%7.\$5;UUܮ4oޜ> S33m9kC3tgbU&Gx_L}m3qhdόn4u-(VQ~跅KG"˜q%fu_9V&6x4V)直8}:isdͶ[?[V|iҧ ![>t_~9&&&xzzһOFU)_~fd޼yҭ[7M*iݤIyb0\\\waFacm͘ѣQ1t555cԩX+++0annuOqq19|ו3xmO՗_I 2M?x///hY۪[W{N]tIg9mWu92lpV\o`Y̜1%KG^իu8a<=gggұw租N:z'xiQ3j{{{G3{Գi{{Qp[15z͢f.bp浶r6_\~xo )RlA~>>7yĭ+3-!0r8A>ciRvDXʻaW˨pg-fj_wnW+PaBC4ӄI&ҿ >@|\8:U~{ـԭ[t+^xpuu_TTD||MZ~I8:9NrR=tN1|XYYi]2Y,Oc,,,*:ʩ*SAeJٴqnjѠ1>4SSSի3< 5sNFܕT=PԨϾ[4dl̝2YK̹IE= +~jI4!xpq诿ŕ{J5z*zCeSETdby{hFnOdwc= B!B܍A{!B!BwȠB!B!jDB!BQ#2 B!BA!B!"CVV&YY;{ߖsbb"EEE; !5dPA!Bun} g7~ 'MDTjwرc)*,bMwmѪUk/?i9رuo}9caz)уӦydsUeO+l^5222h**O6n۴q#_~m۶{G6m*~>uaذlٲ[hWN]Tk_v 7 O0j( &6nYб elެY3!Bq?aoowo:v˗9q8;vҒD~:&O~ ~={%fggs lՊkWDtt4>>>o(GEaa!)))ߟ;pM6P˗9Ν033߿9j-o??Zٱѽ{wN:űcG 3s3 f]XXZ{3uamcSկx}MHH`'0`=ʼZlY!(o1v @pp0 :ÆΠA_ߺɩ:׾m7lgoOHHۃ(sm&OM`` :%K3h`1U>dPA!BRbn[H|r)4?Һ#;vDڶmǎBڴm);wwSS3233Zo̍xcffVt͸떚o[ǖ1r *ǡVQ!//J\T'Oʫ&mW^=VVr[w֥ONչ+,kWP(kҰaC>>>ܸ3^ *!BQ’222Th~}mm۶豣$%&GSqrr\p7|/]blܴ sssZzV ںV͸SiPn;;;{""«s~Oo ?ݻʼʫ9-+kUWur[ɵN{T+}>פk3;;KgL52YSA!BR5'?@hɬLvIΝuӶ][=Jbb"޴iӆPnܸN-/(TFLL:6mFvv6ǎLOMM2ec5]BaEr?OoJŶm[5۔J%qqz\Uս~'߆ 2履 &0x*s֧\4H|===ēOVWiwzN+Sׯ.z礍kO;k~!Vc~]Xkbcm͘ѣQ1PU]A۷ӰaCy^DGG}||wB!B]`D|\8:9U>//d֭Q}gwŧKu֫xpuuDuNՕWmQ~SmuŬVrOuMwϦnݺ^ᶑ [SU]:ePA!BJ⯃ڭEۃ bT5B!xʀ1cpppa+L!B!! 3B!B! B!B!TB!B!DȠB!B!jDB! 3.̸a!]! B!BEUg0⮐A!B!BԈ@!BmދIKPlafdN߆O¥#18̂4ܬ֋+xՇC! *!BԳizF4JvBZM^q̂m 6 054# tRpvMl[ĺu7+O,M4s69Fy!ĝA!B! 4?[[ag{*~WֱrP(f5j,M),S>0mk]KEe.J뱕!ATB!&Q캼VM.&!'e>jZX~bВLN@Z~21j-.?V(P{u#>V<6L!B!152cV|:?ĆM#iؚvɲ.vxؒuY^M#swnWkq&-VK|N =ҽjѷSeq!B񯔘s"U!.  M4rb064¥1Ź%jU#XUL|u9`ej1B<< .U:ePA!B! B!B!jDB!BQ#2 B!BA!B!BԈ *!B!FdPA!B!5" B!B!TB!B!DȠB!B!jDB!BQ#'NܫB!hZ!!zg B!B"?!B!FdPA!B!5" B!B!TB!B!DȠB!B!jDB!BQ#2 B!BA!B!BԈ *!B!FdPA!B!5" B!B!B!j\M@BN kcav=|[`lhR 91$aMsjabdy *]'.S_3ǴrRvըqĜ(LiTf5OQ=2 B!xVӺ}zq2s}HJ^NͺJR^#Li140һs *l<?H1Ź|:Qh֕h /]ĊI̹ Nnv{ gN߆NcdFRn 91PG\I?ϩ5T8?Drn<͝}xF5}QM_zބKB!CxA>,nV,x;sGj?E|Šߓ -?[1vZYM#Xf;&8f |z j GR -'.:/l{kUeK~q.3 ZO){G|e;^qܩ={TM>?WKZg8KxzwA *!BJdQyTnr```Ȅr} .P|Z.$%7CSMm17Po}<-b.dqQxı5]3`Pe=nV[{s%B!xK9Al5 i֭>CS}Wdec9xXk*Tv~5Jb8NmfF8+Lύ+$bϡ%o.$ؒCoh'21/C_25aMK+~rhel׶¶|smN; @vgOp&)7!!% iwfjdF칲u΁?1 xgH>A<躮BdB!x]ϸoݬ<~zSDž0Jo/8[ C ft]VԼD&e[=%/'˺:ۊ;@Z~Gcp?anlIva&_cƷxsuy-OM`|)QY# ҭ@L Msu1;PUZ)(0bWajd@g۽@c4.|IoQ8c`oᬙ!QUW3y $svM3r}kMymATB!5C͇d3 j3 ty;Lhu/C| ~9>:ϫPH"znMOa4u|姿㕝brH̍%b\53RZub7P*TaN&UN"UFf:P3˾·ևsW+O̍-9xc;xg~5bF}nBTB!<P9;ޟNILʉ%0KiQd<%=?'^,VY=6_\sD&U* ::Z#ӂB!-:lr욑Wh'N1/fQq 8ܶvv-ώԆ-ޥ{OMIA}qoǾ9Ū"f}И]9Lr8O6y1kT姿# +S[IK܉<Ȧ020&!'oO衉){0GYyVgrOY؂>p:R"iڅϺ//w֔]ײW$SϦA^Q6Nck MzW+f§q5û4qv%ZEbn,vN.XۊUE$DE=ԼDrb07ӶF+T: A!B!ܢl܅5MwρidݭiB  B!XXc-j 9Y켼IBh!3B!BTCrRU6İsN:Uu !Ŀɵk8~^eU*jm^||<ǎa!BI-((( //6 T206/!!,[XYYg>jJbΜٜT*[vՔˣИaaaQ+1 !l,Wֺkkjշq~m W\AJ2~8Xtvvo};k֬… iB!Ŀ=Tػw/sfOZZ !Ck0W77fϞ^{֯O׮]:]ڰhѯf [ϵkW5svep޲e3-&--###JVUT3nx&NT !iSr_ahhHAA* CCCPTе[7{שH&Mu+WV}͛7͛\rE.\{ׯ]{ 4K@.\pCB!׻g }E R3f?g\~VX7n:{xyy[;+055Ãz=(Còw1={ѷOokt)ɷ=ո˖-_{Çh׮=sEV3Q-6///΄YqYõkxhبns<3< Z1[x{{=-Bg @[p{q/BX~@6]ۍi닉]Sq5WLJ{UOϠI&:&33 ӨQkjjɯx!B` 5UTTڵkNbbb(((ݝg}Z;.]d?ANN...ً=IIIv-Gzo5fDO?kQ/++}'xܹ?t:x333^{uYv-;HJJcNL6̺ Νc8qB|Dڵo_[Q´?Ҥ˔)T*5۷}QPPĉXd QQqrv'ЧOٳg/!66Vӿ^+̙3YG`llcȒYYYOpnΞ=ˮ?pP(X[[ǬYbkk[! /PÆӷo_bbb1O5ft҅cӫn_y[{`׮=ZX!x_|Μٳqwwgwfϙõkט1}V%""q=ѣG~GNYd1%##H5{nLdd${kڜ8i991lp􅖖tȹ7ndbhhE)(|p;wo6O޽Oɓ׭[q?&RPPgm۶XXsaͱ)))={OOO K}\\\֭W^!.. KKً YY'J#2-Ԕ9s2mT^?+y[͛7ƆLN>͙(w?η|'t[}vƍ@>&SQ,{9LpF;_,Ĝ9sxpww+_x3g/>hAAA={lԩ:tЫnJŎ;&33zEƍ5eJ%[n%** zI@ U> !j߿~Ƣ"^x~<׮]W_gݻv_KmX#?7=f XJ[[As/@aeK@\\\jv!DejF oS*ddd`gg鉅%yt|}}Yf wf\riSA3ҹsg ѣ9 ZjMDD8BB=tЯ;~xeJEyjHbccLqMN_ƍ$$$p!ݺ,;;7nLMMKkK N@@ ׯzjԩ_u̙3,\)STbPPׯ_W_%%%_{{{<<ǏՕI/Ri)D$$$i7<Ԥ/F}6"O$66Vӏ~<&TeaUb]6BiժUtCCCi׮f`c. 쪹X~N߾v{;vW^|U兗׺ҥ\~=z?@JJ l޼߆;vsoƹsڵ+\RA4nܘ͛rJ/_BSN=zGc۶mѡCv#Gnˋm} f޽dggjJ/Zׯg̤E@ Μa=_%cem͛oɈ#+ Hh!9… 牏cc8p2#"bc9sf`er V\={Xǟ6333"""cքOjj*/NxsU_\ !xn|razپ}~~Mpss4!ă#44Tڵki߾=iii\|N:yqtt~őD GGGfȑ~zx pqq( wPn]^-{Rɵk4 ЫW/Zl666۷Ν;W[ZѱqyJCDDD:t ڳmU*˖-]3---Pﯩ/99ӥKUO>4Vv.==<\\]-PZZ8::bbbr*^%9&$$P\Ts݄wWU}]_>Zׂ奥]_FVBԴ3114 ukSu۬PQ7|C=hժVҒ {nyؾ};SLo>^ʸq&..gym۶ȑ#9s K.IsCAAL8ӧYxqժUxxxhn:|0ΝcܸqL>kn%KLLo/v[ٸq#gᆪ*w7 酄j *w*ED,JU<E RP '^vǚ%e[EsdoMܹYYYLOOgݺu4oޜ"3$IlݺƏ-8..%KtR,x\tӧѷo ʺk,Vuk2e$ӧ<>77o1jH_h6wWgl_Jźk7v {dI\89%| 1AAg֭`5nup0$=*UB*3%Y0sޟ56mϷ|ÌXf-fff&Ź>ѶM[fOn:n""™{THݺ:u+vӦm222ٹs͘-?I=蓓Cbbg;Ndغm;UTy΂ VzL#AAׯ/7lXO8t яٳiÖ͛ ¯#GB.-%E6Ff]E=y'N'))ooo 'iiil&Mzper2۷m(;JӦMd۶!CP^6lXO9xQQQiӖ~3C cժo7-8u$2mۙ[R믿rb 2-Z0`@j5{b۷M53Y+i3CjV,_ƻSҳg/Y|92qTZUg ${˥Kqss͍.]w^>HwJ5ΎqcǠVzY_=jkY[['s ޽{~A pqq֖ sARSS`TT9%m׮]#,,^4֭?Bnؼyv|J+}_^OuP!33;wp-7rOs_yRW^ֿo'sidr9:-[,ٳdefQ׷.ʤ׮^ܹsD=ʊ͚өsgd2Y?C̘8l lrϿѳӞ}[s\`[˖-wzAnܸ%͚7SNi{ۿtڶmGǎ˭<77|_``޽={cƒʼysiժ0`@Z'g'33gRbEF͵Xh!={9E]_y{dv333>p6=K/>z3Zjcee_VWŊ|8{6V5[L06mۻXyٷw/gϜa4iKڵk 7];w2dP•+W033*ټ3XZXp-m.XRd䨑$''3w\,^R`Xn޴ՙxyK.] lcǎ=s1c]8t+1|pjԬ󸘘J%kn[ח @xXܱ-[i?7Y_=jk(J"##n`&hѢ*s|GLŊ^󜒶_ ߰^z~*d2hš59*1d䤖{:X~~eFF$~:Sѫwo~G~GFI k'O}ޤOrssY&,]˗/GKy}}}qww7ٳ?o߾lgsCO.ZD:u4lH-QVV6it J_*kwnfҤƛxf_ƈ#˥<7f 6\;JpE w޽{w,--kK=xgϞaܹ57nȑXYYi\ VZXY[O;\oGP(hذ!7ngnN-zϽԫWQho\N`.C] ĉ>}Axx8;GJFFD{n EXL_lڷ$$$`ggG˖7J~y]RSS  #:&MGBZt/:0ef|g](D8lmQ )vU)ḦK#̬ Veq7P[IC%x zf's?1w[oKxT7]ζk;222uFddcjU][~?v*U`iiRDL&.6JY58FoOuqz'6G"# oq󡋾?zv@!V7n,$!IvIufBaKVf&999XXXؗm1fgudCfx!2"浩lYYښ.}ƌ-?Vz.njt|iӦك:uо} _\NӦ $&&-ZF`` wBмE "y QTw˭Tt"$:Np7iJd29^gWwb\`gDFj;7ԦQɏprn F4zp)柚H5:d2ҔceJU>|jdggS'ߔ/___}6Օt4,--qpp0_ \]]0c VJPp==y&cƌeرݼɬYD|\+Z澷g@ݵΘ>:up}ocضueǎOuf[ԨQ%wb߬<])$(4_@=LNJW~r|+vU>5 p8CLN&<"*UXPU\ȢE_!;+7nB賄A нc $&&ؖSc߻Gۧh8?v%^W [)~}V(Q(l}-nX>r9}YY:+]yl ض}XyLI5/mcuf,^:uŋw9^}b+?S=<=$,,5kw]jԨ#AA7Y`=qۚZf…7ߚ<,˙;3fkׯfә8iI~[h 0ӹsIܹÌ3) P!~K3+vg3'r)*)I]]\IRt1fb~{4x56Wp!O0i8u4DW~ /gg'd2ESx8X`>+pEΝ |y nb[h׮}|;S)SVsصDݾs6mƆ3OG2t0&NĹ L% !0GF uFFeJNBb_Sh Z,F Tw⯱av$\gѾLuǺF/ A^`yGa=왳ܻ{ǏqsueMxX/]dݻ?cDff&fXZZLz} V~}$IӇqIJdfeAg5IzIMM%00-Zɓ' bkkG\\|ũ'i׾=))J9»N-V^JX>r2^^^$%%qIunRl???$IСںIIQbo_ PT*bcb yy ן1X<aÆՊBV={!22R;38qO>yرc8;;ѬYs,,,hӦ {va3mi31%I鿈zuj֬i 8mM$X[)KHH֭|2QQQ&XmѲ}BAquue_FFDp LpZΦg̩ڌύ}BTj(NnXw;oo=9huyks/8<^!KIlZ$igÁ˥co_nݺՊL6$5kVcnnNNf<:1XYZbnaNnN]tlllY37~ 6{|^Ӫ|}}3`acƖ͛y{꥽nּ9YYYDG\}IعcUTў+0=&fkې3/C=nԏvsC4BF”3r+n_.>ĀB;vf}L&###y}No~ٽyyMjժe0v^gn^2‚>Ktde,ZիWSN:t耹EKq___xc<<3iӧkU"##1 B[ח~Yd̖w+A 5P7W!!!Iju\R߭.'='86yX ';;[wX+A3R넇Cϯd;ԭkR:=7++ ] Gܹs:PjU|||ظ$IkԨYثqrrԮ GDhV577NڴӼSץ .&GiYL2cKݏ$fp)%ޤMF΂J>smƺ Vei]$W{PzgN$$&&Nݺ zoIN֬?$>>֭Zo=ٵs'iiiHď7R^=U7O_ٙD_iY/]3<F:Sѣ,\0_k='Ņk׮G l2YS%$M1jnͰS/,产L c~GIMM2 ټyt몙NT*1= X8*TRۛ+h<ڵc$22fx%|lzڲtٲ#Yp;w젮/|iӦ5QQQL:MJ/]0hO\m .6L*US}  d3/jM<2d%'aTqELZo|M:8³䌓d2Y.]]] ,f ӍKcrysUxJ{Kӏb.rh튣&u,.eŲt}  \^AҨhWQ'sks|kMBkܤ1:B9Ȟй߻3y9pSH¿AR ,IHeg!)HAAxO ; :ACllQϒJZ.tf}cRSSJzϳ祝?D]'AA&OHHȝg 6?l4w@!c#]V}_z>{ч9udļt"3Oo> 6ukגoJ}.^)')z&V}Kpppϐ祝?H *  KbTS}喎eoSؿ!COޣG?~f͢s.&.\Dpp03OCR[4n܄yAce_<?6" 5  / Ӿ]{ϢEQٳo~4m֬ȹ;y'N'))ooo >Ο#Txiiil&M* `kk˪U2n[i!|Idrm۶ӛׯLNfm8cWiڴt6lXO9xQQQiӖ~t/tpHgڷ~LϞxMlLPp~9jr޽{zGȑg۶!Cf ˗ԩ =zV623AA޾{Yx 4~\`gϜaС̝7kW9qQQQt܅bkkS&RgΜOб'LQƤчyѣG}U΃;IOOr ׮^ЛZjcee__'Og޽|4iJ=Yv Ny-]%-ZcW7o.s>GGG ȁ9xIO~u₏`kkˇg̨Q ㉈pnHtҵvkkk:v3MO]5jD9wroQ @_2dŪuh_o;6 aM-Ϛ+_\W簰闁   #ԩRsQl "#"ٽ{77֞cCM||<={srsseVS^=+T͛9r+++pb`EBBXY[O)FCǎq:h׮]jժeRaÆӮ}{~w\\\׿? ŋNݺ8;;Sݧ:Jmݻ`7IIQr8 @ncJ]o)}a_~C5;uo?0΋P{k*ܻw7n?cŊ\tX=1)w2̑P233v;vlO1'N%/pB}گ)?~?JW(>#~7##}q^>e/Yէ>IJǯAj5nST<2̬,ghn/HOFukZjMTTx'55@m'OϹsg9~Ieʕ$%%q2#֎x(oK~dffi-ȑ#ҦIi( 6V,'22,XazbccPrޟZq&FI Xd VVLS" v 47Yg^|l6h7` {3L+ԬUpN}Y>&(m qStYq}ƍ{7l_v1jh$Ibs:uz_cİ`|WWr)/&?{ۗ}_ޕk}Z 9}fק>IJҒVdܹl޴ ;;;?fĉڥzo '.ԨY{1瓏R*lrΛs>jժABǟ{ 8qgǎe2<__F_/4yJz_M}uaE,\0 22Ν;ӹsgӟ0q"#G ݝ$]Yv*ŋXXXXPJvCL.g^yLΟ?/IeW>mҁMԹRHu3RJVrs q(] w~JVJ,r|\c)+7S$}P|' BىBCC)9>;;[ """$Zmrt)44T{!{n߾}*J*USc{ј>#ߒRYeSeeeIҦM?Iz?~\XƔ.z.ݹsGJIIT>k$I7n\ztVsokƔǘSPൣ#99%ļhW4I08\+>#6R۹!+νύ TBDC,Vx}6O~98X9s7#`Hw(j:q3@jUk$bTsC*z.M9xo ;\ڭDJb8dggSv6___}67~ sarrٳ3ϠjժQӓ7o2fXƌ @͛̚>HHű⫕ֽ; ƫSW^ɉ۷n=m[ʮ_vq1Tg޼`,n߾E5 w|Yey'a.j*qŒ:lQU|o|UYP"$A(;:Sc-,, ,0hj<j&OBjՋKLLdmdeeQ-ߢxڅcaTRTi[ZZRreF}Ν;[n3JZNS3Vvvv:vQڼJgMVgaÇcffV`? lLv ]v+SHVF$5KNKC϶ W;2/Ng{jn6_^Mt \?YpjNBniVY0s"""o3G6SСJەY̩`d ʬ@3+Veaki,Uf8 'u嚉*)yRXYcefݖ?ogΧsޣ۶ne}L6Z],i|.^r)Ο?Wy] vv&))d LwqqA&7^koJXWWWXK5r}& *m'13LΎ5| Z~XYǁ}O4v~WA=@*+ѧMM% AY(iRE$ BaOZ͢ auW(vQ fwYbp|sqC%咐] 6- 'k7Sp)"f{jN)fEFnqJz³caaر;vy$J~Uj5ժUc˖ ˨^轏Y!h5JE||v#::IJ>IAžL/,ҥ,^׍<fcea IDATrky 348*ԠCm\$r;֥rX-$5)M]i]U껵`礒_[zq$%%h_RRy;,_}ŠAkhт|:W(]OBW s:t@ժUa$ Z}=5j,F''G>|Z44 ֩SWQ}ZJ>smƺ Vei]$Wk3:R/CFo& ?L7M/fJ"$AA6S!;;0d v\sv*?zĈW! fwn͜6kj"D$|~=W{,ӎ˾9lUsTbf5ݍpfX\yrrKSѣ,\d]4 8...>O?=)?ѬroJ5$ڵkDŽoaiiIdd$PK ee%J`,Z;vPחgϴiSqppښ(NʶO3:{nMbF,.2 qH|'O4.dˍoTMMΫPzOAiHjz(3Q:MzN*Ր̊/O#`ٙ2SMW0]bbIxzzj#{VFśѵkW"""pss+'IUTV$;;///$ZRfI8ٸjoc+ϲO.' BeSLL NNNXX%om/ٚvdZ3{dy!3xbかS˅? SާC-b"|kTJ''g>E'L&+ OOOnذ6mriZ-ƽǧND&Ѷm;_8G9Pl8*_dhт9.33m۶3 `ZiP>L9ʶǦ+'mVT3W5k ?gr:7YTu'n @zN*[VOHŀ7X+p.b#RMZzƮ[k.MRmd2r3}{n_ڍuޢCyT   ϫ¸{.;weV p kysv*eE4hА={{~4iJ=Yv N*2[VolCeeմ UVmk+xU@TT:wa츱ɨymaeEz޵s'W\U͚egΜOб'LQ'f(vq|6o.~`!dge<ٳ fԨ`DDDL4mQ/em;|9r(6,ݻiԸ1#FSN&3j:v @vʤ bR†;NeӧX . ~ Y88kxyyivpt "/%/Ç5jhUaa%jշ~UT RR\KϏMҫgԩC4xp`j=[;OxX8Vvnܸ7-S꾸kGqe+TiG !!Ic_YPr+RHN">#U2{d!'_i{?Y/¾kK{2s53_"SQѮ ;~]*Q9'bPAAA QݤgEض}K6IJ|m e(,555)(&*\#P{> v*A$\묬 /˙;3fkׯfә8iRt 65))) q% ޴7o^Xx|r>i{%˗+s;]"=Lͱ V6 iǧe+4<8$+T#_KhAaaKjN(tk   #IugÛ$^-Ce lAp"N6/KQ@Qs@%* e@e#tҽ&? t% 񼞧$q={4oL1 6z&{Ν;vm>\=cQYdg5III WO8@~~>{5[\JKQTtvݺv#lKi׮$j۵mێr (**d{}}7\ys s^ҳI:2KRM&nwQRQȉ}gs eցr]Sv %F1SAAAǂ?ˋ7ޜa%K=k~327nC4÷nEtԹI˵>89:3`0˭,*cY<ڵ!!uƍϜsXv-rvMZ/o5ftp뭫DʱeE̚6?#66Xͷ+LS*{=͝ʕ+HKKO>ӇÇXWCcUUСCkmbUZ^{'2KRx)F{GFl/ wV18P+g괄Z[}⃓)S2JRx`\bx)Μ9#lfCAAnyTTT퍍nNgϯi)+#=kkk=-:w6>'2 111&w8s7׌oҳߢW̻z|ދL[ps M\klzS1IK=쳸)An7tƿ¢BBZRX` ,8NYe7MR߁SBݖ-[)rj&gݺvSo_1=""۶n+)) OƎMTO@hhIP((Jz=xxxTĉۏaccde]z?1 ba٥8%[+;?uŻ+G'H̍"й%. wJ*H̍Or'k;3WnvQa#pM1IA?TUZV{ZcQXmpsl^ .G@rN0{(/_m)d^ϕR[_ ĵQl&!4ϵm^őS8}0>H-:܎EL#LoqH$*o;ڠ`9sShoe),( %5fQ&۔p naxO}^D`` 1x{ň#1r$QQL:OO/$$rYxc4c=n,u֜w UL̋bY(UNy>xyzéiP9Ʌg9M͋l^4vjlv yVv3BVOAAVVV8;_}2:okkݝEӏ?r ?a>lѾW44 q_Sg8ٹ2⎩iDmŻ+M. +%JEY{/na]r>kO4 7DLABPP$]AI20J.LD/-ZQERI_I):DZ~2%}MR.i=dmN=RUCYYY^ge֠#[՘G,mZ9*W23i߮=j77z=999Ց333$%˨~unЭ=t:6mysr}M~8W7uIg :őSɏw0jVzP+X[m: +68Ɯ%)β2 ׇt1IAnE|BW_LHH'YjEe;ƽˏEߏ>ΠߩAέ)S$$$ꨏiJS 3i#b+ h#E %p4 2di~`_J8}|1N-shq[vW׷[÷SÆx6C1N5k6q6D^^m۶>|s&=z`ڒƴoy 0`oς ||}yޛ7ukƔSxWqvvFPΫ#r2xgqsZIVI*c;]-uŻ̸Sf?$֊CiRPòc;#Cx*4=s51IAdgΜZDSήa쌇GL/&<W{/jCî\+,Ҋbj= _ <|}=<++B\jD}/O=E~HMM{{{m$I2^w{1 jUcbAғQV>;kjtG֩^x_cӯ%b  ,yy}˼у XA $ 1 ..:܅n  b  53AAA?@TAAA!AAAAh1    BAAAAAD *    bPAAAA    4TAAAAoVŇE# ݽ^yٟЬQ(0!?KoέQe r㉋QF׺mM311}Hz:tlٲӧOakcKΝݻE73ޤg߿EgggcRTK{nw =Rx> 5y8+ԴB7Xm[{x(Qt%|vd>5׭niXєk eG8)$B}$=2T6u%En5}K+R`-i?śM9YYY̝3//ҥKο&f)N ݽ IDATY%=%)%Cnm˖-eo||y?_0sVW_׍&gݺvSo_70<==-~iع㺵vsZ+eo`#!.쬔|wj-,*|~ݗ]׺a.&}wy]<==iۮn믽jqzS1Iitek )RzMlA+iқB`>wSO.L$8I.`ɡi< $e;>ym?tMҾ/&:(1-˺mL6ېɹm>v[Ϥ2d}cnxMxgOꝷ}ጸs*bb]ogG/I̋M酟cje$FiWmJ~#17@疸(1HzPZQL ׶8:5l煛 /1y<Ȥ_u_6l|Wcz*UֻrQ*UhZdVK\\& Zyzx<<<]EEEdeeaccde]:1S7wNT[5$l5BMIgp ZnSv­\L ߺ_x#GpwsϒDLnu}~ Ϙ~n c$$[g~isl:=Vrk 6MX^q*+ohY% {G=v[xR8gn֜cIKd'd犫 80+<8kNR8Nm]َuz;xǶ&@c&**#F2bd(N9,h aaa1} 7׺ukN<+q3_?ŋYa=;wypsf~iSK!booKUk54il;) (ȐѻuJѹ:cPMqC=pWU)d^ϕRQ-?|ԝHw_S i5GC$wwwJK^U-))֘\zU"& Fb0|}}^}FRlnwLGW=d|/qrin3hl_5j9N-ps1_*Ų|:4̊A:Aļ(ߊZᴿ1Cb-fQfqaɡi8_ ܉##` #D~H}gyy9l@~kZR9z(+Wˋƌˋ#FԻ+bbYj5*XƌE=h̬Y32d(^z >3f 5?BTr`~| qy(!C0dPΜ9Ñ#پc'J2_И\HAKkn޾fcеqK Z 7|v?JuQE$)S1o}8z(fޢ$:zl^ [V`{v"wUnYRwPɣ=}z"fҊbMNi&Nt\fe6oA$Cac;Jhee^7'ߧX[HNi&6r[mV{cUĽW몣&£Gk v__mP!SnMۍZE!& 4HANY&zCUer8o:x݇ M.",Oz|Oz|,oz dKj1*kOM=` ߟ^\)^X9Ҋbu[bPYmɮCs0wnjG%E5 xJȈ < v 3%&r(/z MPiZۡV,UciI9:*<@c|VsCTXh!Æ=__(HL)b}HnrMaw׽h\*IBA%)&W~rৌ Ʌg9M͋l^4vjlvh~&K`wfĘc.^_6bw,Yl) *Z FuyEXXm۵c?wT?qß!%9:d2ީsg4 Y5nV$ukrEc^RcbF_cZ tmJ*8CzEkLj'JӍkԕf#p6^Q/9O' Ɖr])^3[GmrOSRQf`̑=&]-TF筿竓Y9Ϗ2nw"c/nqSzV;˘?bɡiJmi?e;*.g9]NK?(4מeũ٩HŒ܆1Iۍ5aɹ-?>oN|gGg|y|cǹ5l̗'SFW?1s 5TVb}qm;s'g0'b_)3c}ݰ Ǐѣ ?}"())'Q(4oL Z\lI\m|Zs%{*#FW[K: 4((^qQzTKdrƘNlnjV_i0;]RSSY{yU*VVV%LJ'STXؠv3}BVOAAVVVd׺*վom]5n΢ŋǟXrΌ0@46+.M- ]|dŠfc޾,AƭBMV2k\*=!P۸n)$N̷_G0l ]tm۶uy5'b_3p&m$2u>fԝok kslL>Ύsy"t^1[+;޽tH.L4ȀO3T؉9Yk9kdԝI==̹[|K:~`6 ܖ?~@6$Pgu|;+>–UJSai.&!+i 7DzE^ԝ#i0k- \ƁD^]X֣*McCW$Er9ʖ[+;Z3z˃,j<>iҊb @^k y+u}y((19gU%S[ÒsSS?PWkt&Zo)j6/K!<:KGH =dƎƼ5X[swPs\[=޵cYuAmm yat|#iy$1Khmnؠ` ((իWW4lٲ\f ^ұ/B~nɠBmJuk pۡYiYq_0h9itT*]Π㯤uy0ʧv<6->pSWt??pwsw_ӯoޞ9˸Sxx89<N2])o1vW;hr1Ǫ-XUS.9svxg]uw {'n;RtQZﺭ/zj(_zlQ9v(qLf2;h`oXϓO=3999tdM<j:D||FuMߍZC3z :Tp(ZL^%6RBmɺ*k{ɦ@[ H FKv' mZV謒42EjL;=7׃ vjr2M/s6 ?W\s*28dnnU/9Ʌo?{V8۩s?ή5;0Og{@$4lYݗ$x~]EYsMc͝c|ݯoo3{%Mղi<=)rxj0&2t#)f?ѣcnj֖4MX{73xH= .lp]><͛˺k c)ګ8;;P(HOOW_|aPwLכwz|'Չ*)(΍W:JVdxẻ3uA$T6{Wm_\Ld̝7wfϦ۲ 4W1^A!WүD]:BzEy˫g_$ȥu|\:$L5BAEü%~FїךfD/2߸05u_Soo<:F_Ɗܺ:ueV]bnRs L*'<LC&CKWOhh{rΪwjA{Ϯ:Τ_1-MKT_zIGVi*vjB?+,XJ;}{cYfnnU7mPŅC3j5mV4+ukV 9@jy /lx)pWy5g_gMnA1h RVUrfΜ+J~~~>?_6mɤa*{-X~k?`ʤ :tݹOjD>?:am&3T7_g޼KJg;r$o\ٗ^kZm4NgޏK@-q2J)\]$>uTq0uh^CYB;:6>U.`ęSg!=JԥfՍ`0bsNRt`LWBj=> SG(6=WT=g$ C Q<>7{#CFlqJ*Pd২(23qQ)6\(H0ێ0u~zޱADz!͒r+zWmVrg;:7Z½AB+O_i۶-aaae_&䄓S %4ޕ]]] ׇBU7ɐh낣Ldk?5$s1I>& ³Ǖ;۩O;LN7ޜ/g5]+ˬ8]}$1/p6_~߱9]|{ՙX[_~#68|H+_5mǹ5ŜϏߩhteIm= 5!/άʖҊ"r29N{G,ke!hr9}0 5~~g+Wחf6*~2])c ?F}‰hetmϑ=MދOea-!,/s.?LNk;ׇD~ٜ-35@fla: zәGhe\,L$!4=<>Ӓl?}nweo)';Wo6Ԣsk}a3;ί'9A!b-1ێ?6!:Mf@ˮTkmpdq4}7$fWTfsNr y~ʊ$<2])WkG{Gib'ң縦s֑!Fy,kR̒kH=M!|9xg/6նOUKs̙c~9sFjٲeS+B#-{& ,"& BuB񫚮їVxQW^T$$Lf+6}9zθP$*MUQTt r2qSz72] \͐h:=PեTd29*4 mSM  ̪z yPԺBmؐs\[==9nKCɪ.eAAAAA]AMAAAA    4TAAAAĠ     "AAAAh1    BAAAAAD *    7ȃĘץKڵkoQ6Zt ǡYL[pswp{)//'>>XJJJ5jI?'OIzF:vvvtԙ} ,oI޳g7G&ѥK봷0cƛhlU**uk)b}zZ=qopz8ϮLWL7 q_ѕU+sPgE $;X)$ :S!""۶n+))8,I6k^/,IA/.^-[)rjEAT`.X`q~s'0(f|-7_xӧc֞QSĴ;->,r]iC @Bi^1[+[] .8RiI='kcakhp3sI¿8"Swq:e:]B?kvˈ`>HAn:SCǎ^^^%E$Fibm!m]L)[+Y54%&Ok&˜3]2l~9b@?$::͛7MzZ:ޛ_oLFjZ*%^@LL4VFR˘ѣѣ̓5k&C eK/g2s۬_qq|*J%7`g7~<"2dC ̙39r;vT*(+~?]ccڵF5W;P><:kb22yktȨ;oDz dgD0'bG/G+ϸW;YihrLj9p}54#bp2Hz>9<c|YX,q&{.ny(QZ7'ߧX[HNi&6r[mQX=P@lI\=u ,i>$$WP\hr99ex׻,\+Ʌܲ,PGKu{:D̸}iE1G&4`:Dg5hAk*9v󚵄o#ysޚfPX1\(H $!Fjҭ6 h4$Va_\vVWR*xInnuoGG'GA޽|X[[SQQ= FujbXXm۵c?wT?qß!%9:d2ީsg4 Y5nV$ukrEjv-;5Gw>K~^CBim1& Ʌg9M͋l^4vjlv圠PƤa_r8;{Gs*+Ңz'2+~1<ĒCؕ9$&r(O^lCú|?g8fnxG6w'$wfqcݧ{~vμEENi nRdq<ܳdeeYxS+;x]{? 4(&(=,Nx8YFnIn%֙>=,?/88x_;zvpMgbUOUL?j_5_6}VOAAVVV8;;ܐdZJu[[W~uz}hb~'V\3'L`?yv1Zo~"m>BRvRѳ /!Yc:V %&Blͦ_̃d'zp4$#bpX*)c"rOq4}s_ ((P@e!*McCW$Er9ʖ[+;Z3z˃,s?+gk ks̨; 68;έqxnXlxoO&&=7hA?\KZ*J)`[RI^tgp8o:4cT2"B\ۙl?xzӻte\(SK\ˋ!8o'2QRQDVi"+N̋(.$PɣwDZʎ* Mp`~<~9CCWYjUeT5hrM* ZBtiџƭ˜\[>/qsRLhZ'??Ea߾i4+ iiQ~s;%%ryJr2K>}+o޴\:D||<={$00`V\$I Zذ\]]8<C#VHMM* njK1 -d ( A9z^L.gW&|yqs53TO'JJ+)sZISEPy5,"y+d._Uq.,GHWrҪe8=`o9=΀uBm@5 T 4\yn<:'C3rn~+Z~zc06AnLϧ ?'''h۶-|1Nr!)2Ϯ!&w]ȀÙqϧ3 I}N5p(Uuqcͽ]} 777/ZDvv6NNNǢf.GxǘuG3[[[Ҙ6 k7ߘA#,XysYv-aaL<^{ggg k6Mcc+YeghcATX}2dyߜ|;gCkcV,88'7ޅyeb6r1<[*T6Xt.#]l\L2s寉I*.I):ǁ<1Mp$}7}?eOefõ-_ G͑l#wh4}Txq8ʕ|7pWe#r<D^nxnw9'AHŸ,93qi؊W,>rMǨ;eQ*9Աo[]īV'm!?͌܎uz1ǒBu|FBF, 3$WpwGO.#n|CnO8gyuv})>}n%'@Z9h~!=S96 [ {F|QF/н{+;Qv\]CTJ(} q?9IkZݻwBRRߟf͚_ u+WpO>*_qɝ B!Npp0ǏW^Q+Wܜ^{ıcnjZ7'' Ƌ/H֭Yl2v",,_|Ç~z"""XZZh)uBOTB!ڵ+sX[[ő#G ={ŋȠ}W;vVߟ+W`aaAΝiڴ){ӓܹ7-ZѰaCFQNJJɓ$%%EǎyjժAAA$''3nܸbmaРAcooO͋ҒgyFޣGN<ɍ7Y&pI&NHjըVڵߟ~@3a˖-dff|!D;B!pssСC%駟 GŅŋ ۶mCժ޽[~z.]DϞ=iݺ5WƍHHHvܽ{Bnԯ_r)_Q9N!B!4h/{GGGs5fϞnnnq !!!4oޜXiݺ5;wN] !!ǏӨQ#zEV?ppp^JΝX .?x`GΝO>mVg{Ͳeo̤]v4iҤyjYOOO6l@zz:@@e-_Q9SA!B{ԩCVطo7VXpuu͛x{{H M6XZZVe…(@ff&jR)x뾍MdeeE\n]KU}Vw}G>}ڵ+٬X;v0dɻGQ֭[GnnnA.-,,?gggZrHB! 8?իӬ]QOKKS;:tyHOOxVVV888o] _FF9==] JHH >>^///N}1 /ҵ'B!D/4@%ƍcݺu8::@v OЩS'֬Yi&L(E!!!kkkL.GQzNe-S:B!(… P&NSA!BaF!D1ҩ B!BHB!B!L" B!B!0t*!B!$ҩ B!BHB!B!L" B!B!0t*!B!$gޯB!ڵkW!J#Gll,ժUҲJ82Ol㱷޾Rb0&$$Dqww8B!Z-ya'LǧB޹s]N;_~Ef*Nc=̚=OOrsܜM0nxjԨQXh̰AÆן-[좾r=3pРBCBB 07}ݶ\y*~v?=h9㏳w]6#F,'F)2۝ B!Bԫ_9|Iqĵ^=='MDbffV-Stf)<qa>ĝ;wquue1yի7~~ cW_YYYݻ?@g]yIM_T~UԲeKٳ;};_t֍իVq<[y2nxP3;;RmC.ZɓU#8z3 ݻ09GQCǞl}xƍO͚5 n (B!6/^d 4n܄)?ǭ[x׉c„ 0wBc͙='9j}y3gp?pwo5^tn::ڵg _[=j<[sjbeK+/gt;:};qq&Y"ùr 7lSϲ$mڴQF? @TT?ʤɓU٧z괣G`kkKǎ֥+%m7}SUQ[la޼w>̜9/իW'dm}mJ ƍ˞={s+S=}hggg7nOWtA%w*!B9{ ֖֭[ׅش7 իWoӋA8={bck @H~7fϙ^Ş'?a"{@=צm[ƎG~JlKIII!"<1iۮ7oKHHsww/ulX;vCRR̘YSf-1r$YYYݻV](M[ ˯~~~vKW.n7Cb2f*j1"YF IDATٹǟxAA :m)v9ҷˀcNNN4jܨohҩ B!Ḻb{G3Ο[χ߸qVɓPE46lUƭ[Fo 333ڷ@`` 111x{{SfM  y.Ӧ>zq5&NϪkʔc}ԫ-d}4hKK+HJkR[:z{cccñGjݚSx뭷*IfJe*~g{{"IO0-3G|=c'N!B!t%99д$lmZ%&&x;[[Y~Ce;(FycDM@`11 j֬#G^+8ѤIW΅ QvmsK콻/^~];ٲu+@[􅫯-fffۉA6mҕ˂͔x ebگ[w]Pfffgff`kc͑ZcϘdL!B!thʓL9]޳g]uUV(mۀ:GQBղc:-77(쉋7:Cû7ШQ#:vȉ'M6%S8 QcǎGF˔rrr㏳kt܅mۑ ߟ2aȐ:u_C eL. q?ҹ~eWTD)nݺ={;wpH}9ҷޏtrB!:0g\̞Ŋˉy3w<<<իyb[ZZł̜1U+WbooOTt4SLaذ;>cg2utoO0T1aemM۶퀼q֮#6N]>x.>{CBڵyϿe[XXРA0#FТE <==y']'g'4mjRթSmqN7T14T~ǬQ_R7)S2k,6l؀FW1,J#CCʺNWvB!BZQgL)S:B!0ͦMG58DHH+WRGe'9VѣիCPҩ B!$**ǎq7.kзoB# Q~SA!B!&NyB!B!L" B!B!0t*!B!$ҩ B!BHB!%!;;(&;;hRRR*;bHNN2yX*Ivk>|̓zSA!Bܹk~9s-}`+2$ҩ B!zK,!2V!zM?(?9srE^}erssam5~^A%֯_Gpp0ARfϞCF+5|OTK.p_Ev'1K.VbT?+;!B!*Ν;H{众޽о}{ G؂_En>|VeӦM`eeŰaiߡCZ-|>/^:?'|]vafC-[ǹsDG&>>qukpNN9ƍ~-[=zsN;ۿgnZnCN;-[J^^bRSSY|9akRNbs@`,e˖ҭ[wvm'..^{3h:__Eڵ͛ DO< Ç9|wՕc⢷ ǟ~bذٕ>}mӷ^SBڵ3v,=6?|P9חG]es9<8X\v NN 0UVҧwկo1OBW;?FjJ*>lS1hoc rB!x7OO/||RNuGv4ȗG̞5<Œ38ʿBll,>XƐE8;;Ӹqc||bgg;oŋ?~7aqVޕޭ[sjvfov|2p >Lrr:o-|':s;o}; &Ͷ[ ]R b۾8.j-|}mӵ^DDz矧M۶os]9וG}ecaa˖ŊY|9ii,]ꎎS} ]w`ᢅ=Zt 4&PN!BPsww O/O<= ?a"{@=ٳ[["oEoѦmBeack}kժŕ+WƐϣyshԸ>>>\~gϰ{^lmmiݺ5]M~㥗^`qOgۯ_Nhh({ ///ÓO>e0ׯ__g^"(c0&)QGӣGKXC+C#,,Çs.#F$++x|}}ٽ{lٲSU_g6>G''mӷSO?=:uAmYt򘓓c̒4oޜ"ùsz&q}|}hӦ 6֜:u ¸~:}5) B!BPn]sոweƍhZ&O(( ѰabeڑAvv6$`wBiEm=ypnnzضm+-[K4k:t "dR>M:ѣGQvm;sζg7|so%--)S^PќˣQeۛbcbxԬYG̫fT;Ĉg&99];w㟔G B!zvvZ;iDGE[֖ѣ>'22nٲOCVdddLNNbϞ=tͨ=?#}D׷o_ofp-[B7F$$$prٔBc(l޼Y1%W'A'""Bo)Snݺz*6}%$$-]ХsL/hQ_'Os!M`@1114jԈ;r hӦv///>,G3$w*Vhh(%IKK?iٲ[xcAբh ]]&<<{/f`jq\v.]| /,0hر̟>Ӧ$|`3g`ʕ͔)S6OcUwprvᄃz&`ccÜs3{+V,'22ӿ};?Z؀̞5g/nnnslJU3z4Zm.ffUXxq-dϙY s ,,hOOOz jvى&M>eJ> zSCjԩ CJj իWKn(CՙG}e~w̪+kkڶ{:u\S(11!|LNf6zPhBBBww (==LXYYaccSdddQhE7زy3ׯƍ4n',,Sdgg:.rN+4;w }RJ7{Zj)^:L4 kk+V3'Yn-ԩ֭]()q9|:=~?x"BMvv6...L(*++۷osA6n?./tK)rrrѱz\HOO'..uRJ16Ҕ=w ur\]]uTDE!22*ffyKDtTԨYTeڧLuY6]eggM*US tM7*>yUQ#OqskT\X)q嘸?g rTؾ}\NbbGdjaҤL>~c?,[FBB^lmm}4 p81Z-۶h0}:W^ё{?,4-Zн{ PtT0% ҳgO|E'0ZZZR~}ƍCUN/Gsss4hP2Ɔjcc6l{{ߴQzKCZ⼒~C>eJ>RZ¢uM7*>y,LV˴i˭CJw-=zkNۇY֬]VؿcǏӭ[w8x 굫,Z~Z{#+у_~ݻvOWf̜>/׋s ޽͛3wDž hFCDD2nx|}pE>?T"##ѳ'[ҥK,]gϒGL:N;l[]8 p֭%)͙0q"#F0/gM-͛7Yt $''^Y-A'W9tqE_b=)))={2dP5vʩW[-1V,@]6O#kYr^B!)*suAL8j!~?H׮Xb9ya:YYYpAHIIwfŋ hdfdȑ#GHOKSoѽx"IbcPF 3{6ӧMƍvq!--q ~~~KNv_gpuue|p!̞5K << {*佖$77E%(({46o_~%:*W^y .l2fوk,-Z*, ,`+'Nȑ#~K.+6̃OsZy탺ׯ}+ccA777jԨ@S矤2ԨQ޹>Y=^^y?^|{X[[[w˗4i2Ç?nnC9յBo(1 .0nOgΜ,^5z௿ >>/РAѣnnnTvviӆƍhС# 6ܹs<{'kݺ++xnͧ|Bvv6ӧ##V3VVV@meZ67EQ㹤1~ ֖z! wN+}P1s}+c4ǂ.F[ԩ;v///޽{޴y?}4Zybmm 7SN1XOpp0˗yԹ3F o}9յFU,VYƳ=G՜̯1MKB!_WBBu۴Q[ZZ :3όPYYY.^uRZ5+4iӦ>|,V +L4| Y;w/4Qe~Moj|gϜ%11t^rE`]>|˗/ 1%uy&YY旴l7oW;t<15Li}:uΝ; $77ǎ1h/–-[8v8pizS򣣣y})V¢u*9G[8W 8p`?{ ,=J8h9jZ֨f[ّÇ9|wՕc[W,_AxD8;tT eK٣';w$>>s?Fղi&bذ@TV,_NhX(ڵC>ܹwYnN{ݻ۷Nb" |ATTݺug۪};wp{EڵkprrfGVZI}W>8;;j\6oLPP ooouܛ ֭[˅ pvrbQ4neKի7~~ۋOWJ-W8B-dgՋGAc{:46l:)))Ԯ]1cR^=\[A٬\3mڴcGo.+/ǵ?on"1=}VFê5MmNDxn2c߀O+i)kxꂢXK/}\mݺ^}UxAN8aË-ۢE իٳgl۶ӯ_>ٺu ~ };lR-VZܺիW Ihh(}ٳdddp?2gl233j޵#G2mTa'OI& 77(Ng^իWq~̪T?*I׬YͻCOO^EQhѢ!-5™ӧŇ,y23M58q8w_Ӌ~SfM/]ؿ6<8Tu0V]e)SeXjܽ{@ +/qӠЛVZmyԹ3ܸqn\ :xEQ8vɱB QJsN+}PզMw!!e>fիo`h,5jz*,--yw bbbx)!vdΜjm۸}6?XNVV߷~zy&ܹΝ;{.-,n֭U#իW7j܊e0%m4/^T,bkgKHH.^dѬ a ,+f֭kߞ^{-ɓk߁]:͢_OcffK/*U0z"XxUܥ ΜAPP >ZyR~}fϚŵW3v ueܹxjyo99;~e#j]iػw/>^^4_{֮]åKxl@ݛ/i榾F_[K*(Ck_A |>#G"++|<Ӥꫯcii9ܥ3jf ӧf b̘i݆ѷj7^Ə@nN.>Gjժ|8sgϞѾs^>P0khْE bkgGs| xIb-ЩS'ugcY~YYټK7^zccchS\ڵkxlxױǟ(;?65'Ɲ<|*.ԛ4юZvEum:$&Kah iDr=*Jttte= 0T"##0eʅ O^W_}EYWwA=wÕݻ)i괵k(3>@k׮)z,t UСC,4w@_}| UWyE+__UG  S7|Cy'ؘcʤex|*ݻuUw5GnJj?}eѢۧ(s^p(y{UF~ޭrBu~x:KgcڔsÆ*III%mgLw@ȑ#Qk荣Fn~sVMw}S%-;E륥'_Tgd()ʭح>?w!H wbh4j׮mZz`ĈFh^yڪ,[ nj`i3y3/w,ӕܠOiufff&?zahBG "))dffZhTFn߰Y7n@2y$EAQ == N=WBcȸ6X]NUƭ(__233}7j$00`:z~{͛֌p\]]ձh@bF'"]ᅪܩ B!j-Zӓ|ڵ]prvIӦXZZ2o|Ι7|zBі|`3g`ʕ͔)S6ly3g~777i۶ǎy1O:mzKVS+mۋrsk5m潅:u\+v}i7sf|>k֬ s~q9666̙;9gbr"#߿?7lSsT1GbfVELʬٳذaf::Kgc]z/ 4$''eveu %䩧fΝ4i҄ e!U'>=/}EUnF0 h<53ѯ'5mh]Fִ6._2 ԯڔ4}-3:l\\\0j^zz:qqqԭ[*UCq2ա(DFFR :u !22G%PRRRsnOMM%1!%Xsvv6TR:u[*#ץzlmanwoF`nfM2r҈O}}h5A) B!BioQf Nʕ)0BTD B!>>]qrr"11Y:B%w*!B!SA!B! TB!B!ISA!B!&N!B!BD:B!BaTB!B!ISA!B!&1B!l+/kG{b"ytۗ_.}?h܎-_@ɻ&o?p9,5yYܪ5SqHLnߠUr񻺆ǰb&hSۧ2,BTqidk}.*%.)Yw˥MYs'111dggWvB!rca{ݝ鉗{|:U>=7Fu>Ophn՚ھljJ SZpmZhOOoy'=VJ[<:}cVϊsIW%]ᣣ3vu彃Pdmh~yycٻ(=߁f@WQQ7\]L%3+˺r)nV͛劻6:?сayg. ̙s~g$x]ܦkk y wrKIS%ӢSs8dߋ+x(2o;H̵- `2N>&[B'מ$M~OznBΡqͬvK1WY7jMAeߗ[yV/fvʐIړzoXƶ%"*ovˤ$ǝ 4y(Y(3Qt;>? 㪺~۴qk׮*yf,V虸mk:Hb\fauE'䪳 _/M嶹:QAeCk%lbpDKolK=F2)2{`hj䨳 VOSzUm!__6:2wI;q(r^mHI`ldftwԕuN"@ICt#5' G{KYȦp(Bq0Q]dUDeޢCgZ^<;Yl t׏V.o^[_U\z2r{iOXn]'JVуǩga컽YשTgy׮/Ԫ'H$ucgѷ߆.cM,8}DBg^@W5_P=NGȑäg prrb]dfdiFll4 [n3d2 Ov9}`J%L8˗/,ǐ$m#99 ( !++}>}ԔTPק<&H*LԳjTy.4+rS+fVA"1*.{ Bm AR-&rzi , ǚKX]dAW+?JFrv<= /Wgbsm^ҋSXR|/"`Ʒx oMV]}~ -^|l6<ڤ2ml}ܭD̿hЉ Gå9s^:}[F6ust/6r'=LEy׮_2#ww2yyD~aud(uۗNoʲKuJ)..^0ydr93_Aaa!Mno\Xd 'CB;nE t",X0^:mڠRJ-ǐիWٷ C۵kٱc;vvv|3j^^Si^jV<"o[Zn2Ywvus+.=}/Ax4mK:EǕq'.·Bm!oWU~"ANbCjn"R[8s;& >XϺ1k Letq+QGf[nzq-;`&|1:8u;atWiIi8Cwz/NF8ד/ۈȌhfſWVb$fP,LkPoԶ U}{5OٵwnuwC'fn8}1uWDy׮x!uyuPϯ8r/X7ͯhno#.b.Λuuv4LH?.,w/BM!}=F{)ڕuQpV:EEWVddEÓj fPqzeU+_xY6-aaU1hq PՊxcblJh :8襝;J7w2c38vᅖs%+/^ 3eW|D@~dn!& TsTMe?$嶰ok辩,NUggavxZ{3}O ,mu|'~R+ڕurSKXzȘB̓\̋}G/Y""ؽk7A۷cfVY3b07GR,kkk6n`y oKYlM^(ʇ^gaa٫a7np~eCEOUʰ6' ̆ɡ8* W}KY 5fQcDA5"TȦSY}nʢo0Z 믬$%'HMt!]? qGu*nܕv̻tC sj|60ʲqnjUA&ǁ9!u)7,uٷ+i]Yu \,̳{[_䮼f94f[?bcPW޵+ڶVoNgy=.' #/U5Q;z]Qyy<ܡqIS.WnFî]}őJNv6tKN3XNiPضm8p Zյ3V4(VD+rs IDAT:_ Z9HrN4).ޞGy/AA-OlBE"eR˷/Τbmf'=7SGfCjN"!qp%%'fkŊy\>/V4[`mfGúM,LjΟLY5&WÃ+sT:;/VsVo켾8gc?t6{Xy%/^~Wˆev|rj`X{R޵+7Ejd)_ Vo9CJ :_=>uhmC.Y%uqttֆFL8?ZG+3}+ :OWd…~= xM ݽ>jJRj9XYZ2ax4BYzÇ7,:>)eh0fR LHI`el;|~w^b oOFc+^(  <[$ZOOϚnGhITpGV3|P^xyJSGm!w"55%   >Қn@E]~nݺՏlU6W\Y2~^z'ږ%KҠaJWPP@ZZ*&;v9sdMoz*kh&.4mڬFnڵkqww汔'   .S otԉ:0c4zI e \z[ƌGr[+x'0`@^4V82tP]ڙgE.w@pNyfffƼ tۣG!((˗.V%(h+>{{{ӷ/AAA_;[wgWp0 ?W]Ż7ϿFFFnU_0eK( =HB׮ؽ{lڸF֭[9w 2!CӮ]QݧORё 'V✎9‘#IOՕ&@VV&~XGTt۵nݻTAAAL0u4lؐS'O;p5^xa6ebbbJ=(-o Ʒkײcv<|5m0`@ |cǎ҂w$9%YW֊,dffҤ.OӦ/AA| :t@@@-ZȂ[.Ç`|y3ٺP.]gd23[gg.YɐƎs={pB.]Htt4 ?Nu6T*G})))w011!""Vo;Nw\eAj^RvfvHLj)JΎ &F5AAFTD.+jŕ+ רQ#kOOOS1ѥ]PԡP,B~L@~~u^^uiի{Pȋm+}lm/Kdd$)S&jj!''퍏E3SӒZSSdff1 <Qg@jń6_{X(u!p w;`mfDڳ\b H0i؅M?fhdݢꨌvN c/TKk/:$);HIdjx)ͅŤ&3w+Ϛn  SVv*j +?N:ӦM[rrrѣtޝLǬY,cǎtm۶[j,Cbbb/J@011Ϗ[λRسwg}BC/Bzz:G_t\ArrnۻeK4 v8(ZF3)1S s33-,ٗ /Wܼ`X ׏1c`nneXd1@ll{w˲dh4/IIIug~ '0筷y3z4YYs=mL6K믿b$ݲ^ĉ|b9gСCtJ-\OףP(gڴi8;`Ky`kYΞ[9'c:yؘٵb1Yؙ;TQĊӱxh :B*䍎q#:6EȉLn=#Ug֨h^\QjNMV~:Bf~C^]۾{nmdƶ٘ɩ9twK+|fAF^n:ʾ[ѯ{! O$ zz>;9j5X[`Xo]]]KLIZXr9u֭ѶT*RSqqu-KY䄉IQ166ٹkT*޾z^ye8pn_EAT8{ʎ7Jm1V&neRg@6}{Y[83u`VХj }MD܍8TY,V7 0$ 5js<!^s:0;dU|;@ʻLՋF\\Z4iˍO̼._2.W|CezĆg Ɗ/.4&Aȭ3iGWSAAZMR |kHJ OP譴H$t3問ITb^2{nBrR2vv?w$z>^<P, sQk JzϬج;8+7Zyݶ\ Yw,ۡ#mv?b,1֥}wwf偩tiԍVԞtq0)U}Ln#ffѫ{j o0ZhZrԳzhץ7}7ǘrOJ$m~hXiyAݶH ](9Lko>6&WT̺Z9ń2R4}X2垌>G'_`o|G:2lh\_8D)r7;Dj3שP'Lֶ!<_.8~4| uW BmcSBN9@/|QP9&rzXH(;pkڛή/c|W"op r ?M+ZH$FYr5?\%Z *A4)-\̎^I%uw7p3 de^_޺ j 7]zVM*Raj,(Fsv8+H&AJjБclPgW)ԪʌbBNDRvyr\N<݌%ir'= 'ʼL~a9lFV<$Xƛ?bݠ#KNG'xr+bVeWjYwV}/|1z]JSٟoeqbj,##/=_NjXLj|9lxU4?JmOaj0)xSVfv>{ t"ӯLܬHPEc,pӛ0xy8+QUe0Ӧ%? r7]W>lu+{ C/XAj[=,躚w,MF(5j&PnWJ(z׋ؙ;/௤l SZ`VF4JtmG!(6Ē'HQ?7,_2m x@tm?AxZNAdbdeC4K:;RoFR,=J[NQjdj>>JтjG j:]/@ Ϟy]VH$Lf%;-7 F }Ap??PQSAA6#N%RofA'r;f_݌|s~#=cgP=c 5'KӺlzXa/0FR7޷v461'577ϭ/FcZ [ i]:VRRܓ< lHC8{%9$bpr73B/~dFkxX7zJGjTAA 9O|v]>-?zOuPd䨳ζJ֩+.*ɩ9i8 V H-ko^Xn nf3J'52,?1L݇vm O J8g2cJU$Z>81e~&bov5ǩr7T,>6qw;P<۾IۼZصr_4AASAAAx&7:,/3*Utv녯[oNF id݂C8R_;\LRI(9#NFEn^Нv-o1ZVUd|3H>I.T'bHT amfG_yzk O 23FE>OOZyfKX2@XfpgMCAAjDU jE*NJvfR .2522HΉ3KG*],=> C? U.*=7#KKPEco;=6\FR~q@ƂPYDR~#AA<4XҴc+Jf̚=~fIl x:\iT4]3;ts͟{3u*Pr oV [ IK;>*9;:f6X~-AA=rWpQc@ ($P0s54AhV Vٸz.'bykOᗫX}"'-7Yog[GW2н-ɓ>n]VU  [_SM7ї]櫾|w BRk:R//=7ɡ5Ԣ'˟Wͨ~&5݌ {HIIqk׮%66?rAAx4R#) S+$<؂ rOlC ?0>ՑaKH ̞a^/ѠN&%&}ooF܅Qͦs w=wZ:ʚKO4;z+Z5"6p1~ |_Y[_mk3{,L^߆.cg' HK׾N.={3)wkWwCs"z/yi8+trRUY[^]ŕwݫ#G8r02~ؽ{lڸF֭[9w 2!CӮgN&88R#&NKAA՚ )9 DeF~Rr?6i>ua)!52eh*6U4ǦalW)(cϭM?l zn,yg֗[} JݨnsLhfCn]Vp$?\S1ti[\YX2#ww2yyD~a^sk#W֯$Vz#@۾tJ=6\:0x~=-~'?-^DۇFSUz:*g^ջLF.3 ovŹ(R%K8qxgO.ZȥfԩnJUj9   ԼZq6ݶ@ ds%4ba]{'|'^j/Tf!1;ʼEJNҮQȪw2¹|F\DflF3;.&襗VgD 1Wc n2 %>NQZezX7Nٱ_ů^?&B :&Vyz;蕑dY ϯ?"?UjDөtv m*7[t,iIi8Cwz/%UY0Sn]+YvPuncƎ%??ٻwaaa4o x{ ::Co~-,e˖-5 BAǎy:#<^Ń>  ϪZթ0;) P^/. 6 w,L6\K>Ę\H8NrvmbgDhq"Ү֩blYnu3R꼗NEV%GM=F4Cg7]0kJwRutY7#6PS#YydH]+Y^VL233 捌D0edZ-Z-dS~}a`ݟc`jZsT !l52#0Qڛ-^C&5@w%VK.uVo^\qESmBmEAReUVK7@:8]N<Ů_ ={`F-*fAAP:ba"GYOCX['9;9>܉1H>J)S*_LU~&rSr4*6C˞y%/j9~9J&zνz&lG[dPXҶ222Pms18wOwd Dn!}vtEW^L){ 3ܮVDw&hv̊:HF 懲r[X`mmM,ox\|5k֐ʹӟɐP'7y:$-'oB0|s)?^7KNˤ$ǝ 4y(ze~&9jU6Kܭ<zoz tAAjUL4mK:Eȕq'HK['?.#);u}Sr?6W|AAf= sC̤ÆWE>pDflNKoV8]1*05ZΟLY5&WC ׹,y׿FnbE*IQƲ3q@)@UnlèfYuv>_NjXVj~`;Le;><1o|#STҶӐZ'' ÷-M0}w4B$,eӊfv>{ hX.н*|˪B^qRmC.Y%uqttֆFL8?ZG+3}+ :OWd…~= xM ݽ>jJRj9٭k$gӣyȤǙ?b.g:zٶ\aѠnʬK9xg.NMV~:Bf~C^]۾M̚_bB{nmoѺc~8tI&V=ۇFn%E>нxݠu zIr)%R݊,P4ucrI:;FMFcÕAA$<<\Y0BQG]"WMJNNz+Sg*M>r7]02U4) jYP%^z;hWFa$1@SҶ%8)a$1KԁeINF^* ewTHL5wٖ~U\u<ߏC|\R;{OAANNN]166PerO㯲cit!>뽕}YZslm*1%Ǧ?ًO{´v w^f\טo.H(ú.¤]b*NZQxٶfd楢0y0m~?>EѪkCb,ry@rɆvYDADR `?31IqxeI-plu:] cRfz+ U*q[ea hhP6RηqpzeJ311^M!, sQk Jt)3}~z7)c^ Z^pҲVTiSAA3ש et5 7&Ʀ&[9|Q( s<6#O<^ ZआT%x  {f5 BEl:`.3TV[DhVaxP~֙A({\AB NZU *  鹙:2@ N)/(jE"Ge{:c+q }++x}R  Guj OH$.*  B  +>AAAv&Pcbb"6Ԅ$k   St*L"68x TzU͘>RݻHMM},e   5KLxyУuڵk,~=PzU-Y KFk׮R   PsjUBrRۃ@BVV&}=})0D9Gȑäg prr@ѰuVΝ=L&cȐkW֭֯[Ӿ}2oݟ]$$8.~~O\v< 8ңGkGGG~7DF: K/9s r[I\\~~]:tU`ʔP(;z]{.232شq#6 聏OT*qttdĉUfeeuDEGѾ]{\\"w\6nիWaqxxxv   fիۅ!Cڵر;;;>[jZ/`9qqq݇S&#˙ Xd 'CB;nE tJg&##v喹=(>ZAE Y0ueܹe{ZZ*ofܻwWl{w$9%YwҶk8v.o7 Kxz6A&3ۻ%]pqv.GGG`|yyTZiJ2xNe]!%%I&VYl)c}] /LãӦLLLLCAAAe#ƍOnxuk[I&razIJL?`9cƎ%??ٻwaaaXYYqAۏ1lٲmg?27ot<C `?wzwkW0;Vm{EӋJ{^"E˜={Fw_LwKo[]59j ;aiivMLLk055ۻ%ΟwmBC/w~,,,hժ][k='AAAZթШQ#kOOOt#Gd֭Ջ[0h`RçjDtTXݡċ+W.?9   SԪNR,,,ힽzv_6,VDw&hv1|Z--,f_KmsaO߾yD"+-aee_wQU?̤$E@Z (".ۺW]⊋-("MHQ:H1 i)?!!d~߯׾6s9YyszkZ8Lãc(EާT^|z;RPP,צ#33\L3[|NnN1k՚ gP;wn :v"22eb(yÆ $&&ݱ#vE:l6R[hwcڻXw<_=z:33UVҪe+_l@VVW.wl~gddPXPݻ{$y/Ψ*:tp8߫f1uMQQ1kN377~z:q"2})II 0\d\ V.ͯڵGVVnߵk'> -XgqR1>Bii)aaaL&V]󑖖Faa! CB ŔOfFn銫'r׻~0d1JRRp{"‰d}1zϞWrj-Wb屺JzA |`pBUۘ[QΜ9s?o.7|3w=RI~C̙MtCٺe L%/a*=?ãLi&.NxkVyř=RX۠ΌyŭβrMx,>긓mf{9BF_5koM]pL[ɩ QT +317^oLױnZ233q]O *(%c0xO8_c8FAm\ngkx,]c_~M7^ѫ_[d?2 O~+<5[m\w 8.ȥqE<==qzΈ#/0 3`FcǗNpy  =ȬDvdg@~ jyv;#rˏ!0 =awXxKR-r\uK)$ňih>mAi3vO%! vᰗ֔5,= %#A",MpGT@ 9iy\rd2و*2}z6ͪe%$9?&hCz5N =TU,?y73vAoVKfëmsTɢ4z6F8%e->!,U氲 `0%'CZs9+e'өa74'2~Ŕ}p NƧ؜Qymc:b et3Yxj~}yx3ڊ~ϵгэqCRPZ~ ֪,L%!?ŧv~W;lζwU_MsCFjnT9T.:oz[F_z6MI?OMkD,Z;,gQVm^'3.V0؊$"""r"TҌj(=-gw%C8̺}F3)yXtC:$f``8267fݾ oOǰ-u̢ +6AWh_~<2w2x:t֔5t %1GӻjRUnwӷ=t=_eϕQь_\_82Tp^ێs~6y3vO*}Xö:<ͩ\TT }wr;8c6P8p8Z m>ʣ h/or-da*Mqjw:5Ψy20 dXIN8o?#Yvh]cYzh}mv.䦬̡H%*s!"""WDD. r<*kGWTp>w0^8pg_S}~IfS۪ <} Uv§_4:o:]O^I6fBiΥrJϸ;T]\-Dc".u],&wԠj\3Jr5Y8WUyݑ[`B~.DDD5DD.sc9l,=4y氒H+I; {̢۠t'.u,JК5}:ؒu Kj=H_[ݾlw!Pʪ*Oթ.5vӶHJީ=;wNda []eT |YUmPp8ʝ+SdmNEDDAw*Bu<\L^L9o@j~"c;=M]p .C_>4Owq@KD7p^&}FͱK/"< 5\ycM.KG2i.t IDAT_nwUd 94aƕΡ6 :UTGWv|p3 ~PϻAm̍o&ށX^xp@O^ Uח| ow^9C||UZDD~Sj/!ܨܳ=LVZT,45['i0ji|b=.T6lTTʔKH?ڄ%̏#/e??>.]A%F+}?e`Xeyu %/FU&9PԈag\he ȨNvIf~.~]1 R{Eѕl~ 9Pc*oa޿uiiiV?9Ajh8EDDD.˦0yrHZq/cwjKr4;O.]VټrxPU 9e%(68 68ŋȨjݗ\zMQa:6QCr|K=,)㹞Ф^K= y^wǛ޽{8ydc$%puGDDDDD.mM3<^m",MiCRY}lc;=S9GYƄ(2{;GO<@2_N Nѳэ h6ev$.e-ޞ>. S@EZAڈ=F۠.jéĥK\BNq&(FOCs~k氲 `0%'CZPej:;-K}2o%'?zyMao/%vaiRynBF7áY'-_L1cTrұaw",M0`G,;-%Y1GҫMtjؽX^UVMdd$ロ0/^DNv6_ {=111v̙Ö͛[o#,\۸#4ךǗ #̯lD׈XwvϿ6>椟kc׉~4.&^[=Lw}ÒC8c'd(;ɎhQ=^> kDl۽L0};r?7-Z}?[jEbǠF9s߿?sf[b4^v]MGE\ οLfJsʝ+xu~INs9x>h!'tLeuځYXvx6z9ϗUf/rK\1t' wVӹӝQݧk^e-|u KJ!R.p*fxb͟ϩÇ8=9~~3]{ŗxꩧپc;. q*W\~l2r]S*mPd-dCJ<٦Z|I q`sXzha%5?c*pB9y%IyI۶A](7Ƽ_CMj2YΫc,JК5}:+=~ L~iq)kZ\ɿҵST\LقƆ HLE\ڶ>ķ>a繕r'o˙geGh\^q/Owq@KD7\d 9t;I˼7t/eqpBChԀ-[:ی3ɯOICsm) |1}:ƏOxxOx&XV^|awjRグڭwKs. Us^BFSǔDohu %/G˃ו}?'vΨ\p7Uݝ1X'i0jiSe/"k' S 4o`sXy u?%9HpHפPZZJXX&ө<== `yn"22vg qlH/HO""""r0_ܫqYPSF#Wzllw+VCs܂]kրpKs塦j3j9ja*@eu/$3m+&,1Dƍ]vbb)&ngΜ9̟7w}=q,~& ="0cε?kc 2-3wm:3CaEDDD\SA.ێ'зFLX/ {qQ923s=}.a /~&Cv"&\gl繕`sX7I;Ve ˘=t ɛf ͼOM幞Ф^ڧ~ADB0cwظ{~wgyZg1 g \q=> &:5^!Θ=O mrl+#wNGCfazNĥӇ[U\uK)$ňihdo]Zd>! kMO1wwMPϧy\V)k(Le@U5^eߡ_aUw=܉}L=z7~DDDD. Tf! 뛖_K7)'Zob3q|-p~Ŕ}p NƧ؜Qymc:b et3YxjJ5rwZa$U5̓asM'UV*kb)Kk*3vMКoR'\EDDDTW ""EEi.& PӇv1>Qѯ5Nh}Nw2mcӉʰ6Pb+&dőM*Hv<;~q,tq, uyB5ᬽt銏я)kKb!dwAU*79$! %! ' S9x˙ ""B&y%9,\ynJ8c6P8p8Z m>ʣ h/or-r7)ᖨrm =[]]qUx*#Yvh]cYzh}mv.,VYU0xrUd"7M^WDDDJEֲA4&O/R5<ܹɫ5t4NYeC5Z +*;eg_~ qLfJs+xPVO`7'$g;fj._Y%q)kI/HnoƆ8b^t,""""W"঴4JKK+= JJJ.84+"̈㘶ERN-pؙs ' Sf!}Yp!) ,~1'Odz*VZIVV6nœcH?q撞NX ?pB 1chԨ~U}nrssHHL!"ԗ}T~ËHfa%yUW`$Uk#]w}eUFLj WDDDJq٬0<^}]v%6z^|gY;.\l?o(((pcر 99ra6yᇰg>m4[oƇ|ww[`'xgسgX7oqu.]b4h0.k֬q:ż1u)z},1tUͯUx{ݑ=#"<W_y 3ꮻ_?^xoFbb"??}q\չ3.T'tƎjeWs^{?+ryrt """""esw;]|9AA6lÆg- zƌ;_9j%%%絅¢kҴiSeˈ˛rr[8yVHLP[bB ЦuvQU-x:ܜTe}[?‚JKK[u>V68|0vÁ4i҄hbbb2xmڴOqxyyUS禸r4kzY.¹ן^XV"/Wxb͟F+wnx~f?rssqٶk:tv멻 JJJl:.[^u5ySvw~~3]~ŗxꩧپc;.rm#33\LOh)>+""""""uYS""",V^]eb(evÆ $& sΥGtMQQ1kN?u={v*n` \幛 bŏ?9CSeABn~f;bYhf#%9 {t֝ }VС}*@YsvL""""""R.;jby9s&F]vDGG3ᄆ -Z,&ߟGnwީחW'NW^>%))0`~ч|G}7ßϹkWs߲7f&>'ƃ=mƛS /X,SR?~<DDF:(NJr2F"22GV+III?V㯭iNF5{56VoSmsJKK d:}ii))))xzz^]指~0d5.gEDDDDD~? 5yݘWrQAΏng5R5glO-[g/M\,**\fYv-9لq 7ADDDDDbQQADDDDDDDjBDDDDDDDRQADw. R{IN$c^?wn;qRRDn[zrg#r;<eX}+Nu\>]7v1UҡL9-;TQQVُ󮊻sr%.a 7>ΣWB~dWxn=k< FM7˵;q\w u  Ǩ63뵬6;N]IDDDD*H- e/06 @=c.͊s1 d1gmH7ѩa|$M`6!q%e->!,Vu dH{*j/=r C{:0pUhkj<rBf}' aXhZ5wN^S IDATGCfazN+7KYL-Qh;j'Tf! VїobSO/O5"PsZ3 JwȮ884&3.V0؊+_s?!8p:Uyc8ƝiNH=ĥW=Cks g`v\ռddz3gBk؛_`\Ce3ő̢ l6Gr c7m񋈈ި "r-ۊK1zʝ+dqH>H%YPpe\Bern*7 ٓq@J0n"+.Q@s<-"$낎YDDDB?\d-Dc".u]s[W᜻7'6KE.㙽-ɮǺNdmtt[ctg2WSX^I6~ƳEDzólJ&c?w8j=~9KEhfDqL")yvt8L9) ny7fs]nn̎dg2uf9SdhZ }'&ZͿ;A](!qsL?ǵ7TWlasJj""""Rwvy؎O7NVq>y7`dyoo~{;=͠k O0/3 *]ӛ| oW]#ϬEhՍռ'3vO%%?ب[mz 4D]؇}iVm+""""3;Z^""BMXx{%(~M3owAZT(aa0Uڶ|}On'18\|$^X  $⧣.dq@K#f3Kُz;2N0{Ǥ'5zL s9N9cn_:: oO6$.#.u]B{ң>l;`_PPmQ@ f~Լkt3XDDDDDD~?.jQ+rUOӼ~;Z~/z_|C լ8<`ndM0ogK9ĄOdžH/Le}Rb܂_ĥdgi?^NWa"0K gpU%yZȧ'"w6't>JfVy}_%e 0{>q)|ɴc (:AJ% c;=;NldOtó0UΆ $$̢t%@_WP*s,""""""uMyf(Ne5W&(>*w}LXo+^Qa[ 4ZHv|3< @9$""""""rew*v%b>6EwК''ѳM.l|~& IyGub3?~N ڄY=F_ NpW@]f"Pd+p>榯H~bɎE`g!sXOˋBk~`G\ PR~= ͑Z KcE{]opK{%e-xޞ>̒3yi kD}lK]Ǒx~:д^ktga˶;<}N;)|san&FVQX-wk{Z#,AMs,""""""WC\Z -xa޿y "Uy͙G ߯0< k!;߮1<ܕ˩;)wN!1y;W~$hv/ {u;½.afgGFnuN]&j\>L~~<Вz>A^'|[=3Yxߪ,*wճL?Oz&$,v4""""""r2;ZjuQg8H/HКWK̘}B\.2鎴K57^=($L-Q0ԪsVs,""""""38ØWZQADDDDDDD*E\9TTZQQADDDDDDDjEEDDDDDDDVTTZ1^o[j~"~ax.mu=ѿm\Ds3{G>ܒ,&Zv`PtjؽV1W[Df E#Ҹc,} Rj/n ܨkϥ ""֔5XhV-:Z¬d}ϫPWqڠ٭Ԟ ""Tl+ÎaamJ dBix{ẂζV{)(Ӽ~;ni=>!.io_rn:w9#}Lj~]#gH1eleɡٞ[1m:sk3Y*5y5?'H븮@#KXvmbMbp}xyzc5xb0\{|dEDDDhFZʱNB,JJDFa\`GpcyRs$;zDArU@\:C{,NYϯ˪c X7=Ǻ%1^3]ɧ'؊+e0w,?Wza &/s~z1^ܿ08+/)kx-\̢֛tfBܷΣuNd;eb2su 93}Ed\˝ 3^1&7;~fw _zR*S7ʚr`/8DD.;q)k2`67㹇y%tmw c'rTf\k#o_d$K~ @.c`nL9Cu"k4{Md^\]N57oK=Dt׌W_Txt϶J%nWDDDDp`Г""5j%vJ=ό]Pn]Vx, *w*Tb7m@LE(5RJW\r~)5)9~pDޡ~Zlg@PXBf± H!]{JYPWFW ەF>5 neQAީPAO/6*rzʠ-DЎ"Uz-Sw _HBdLH΅|*d̊\򫩇+`KVDbJKFvT ,Bk,N2KrXO;tK*W(E8\Jެ”RhV(,KL;4g,\Pc!O˒$Q!3DWe,|>9JahL^݂, PF*k)uɨ>r7HLHAݓb TӅRڑ3})Tv(hE)sA5 )~PSW*ZA9J{M/'/FXQ P ;r3.4٨dst pr-DWQX'BRHP_z*% /5gB\(HWBjfK[ Ź7)J#'d%`>´C~yiB1T(ˡ6J_Czڒ)L [KF+ȹDwK*5lhC(TP Rwa,TsjAm?JAPPݓ΄:gV\HkId:ФGQ:Q7;R/As*E00'dPh*db(MTKTL_1$IADIٲМ (s!e[;ߤPȌ"ZA*e{*0bgѩ)bA*+$+4NVV:,&#+@."Jb^AK.i,ʡ P(Hft:%v,,hYF"듙Cas3:iuY>ŗz$]oK\]  ;.b/ޤ/ʠu #oq6*%@)se.BP4GC<;!ñ +QjbءR)j+ނR˗GEgSAQFY5,8;>ԏ:"gO@QUp/oE (-ZHc "E+xP}J)<r%C͖3RA3BHkS˩F,Z  s. ׿Rؙ^`a'J9IzE+,#P)2ACCJ*,Ƃo GūS1}4MrtʫCAMxtBbtȖ'Q rQ%)1R]t%%P9IS6,⫚Jj"TXTRgא$"g\IU ;hdmS_˓\(ţD..ȓu*\PJE+ $ Ǚ /FKB6  S!W_:vaҨ rBng,-rvJ+e >I&bN\Gv͗cA rPW9TE^Sգ5A16?j]Oќ E )L] /Y [ażzά w +XA PbΑ]mLSvA. Pc!duQJFSrḃk(FRv.SjPj ] R7k["Y>Q .CA)?$gfb,Ș+g1b$rmI ^wjJv+Uu‚y iJ HzΤx士.$ؑ.BXr[.5EʷmLfw "#Xxi: l*V(/_r_*q-v,|HSAPW5$ ˰Mfs-OQ J ųw& :!C%"%mTkh)x"FU,F3yi6tQFq0%gG57rlvIIona=n;ٖA4E9o~e@:6d8hۦ[a.;lX9_E$G5)VnW<ԙQ`2lׅ?8WTqsqj'H~Pr((!QCAגR*Cm~^wI1(}|k\YBjֻi/nɢW3.zB69S V,{$Wږ2>/o AT:%< ĊdmVٲ(0|fU7YdXϡ +><75Ikb쭙(+ձKWeS8<]/@E]Uc$B]77 5^qM0okƖ^[}l&NN9Y,cF%Ғ%ِCq gs{ϰ6 MguIјkTuJj;Ǎ縮漈ԗʠblvu,la"lM㤚Wܴz!FH qw)}=j~;ǧp+ZYΆ5.r$VU@nW: jsOj(}0g]Uzη]ߜpКij] vW?w6ΐI(,5xA>$ak.=+xfGFS)j76_PLanQN^QĆEePUP} {d%)C~1PF׶޲x:V:|\0F4?coKlNҙVV;tNw-g:;2w6?ј7zNM,6]*eyOsK d3ec\P?H4&fqk;F!=N}_ 6hYSK 5ph͵uC\S7/i&KgJ)! M_N 6v.Cj&Gl>'T m\UӋSYO#,a}+Xn'w`qmm#|{ |c\UC4&bVXn󰧪Uqkw7"ō!ȊNP/VވV-A_ݪ sSY-cc! ?\F֝ ĸ8O-b_Uc|k3w4ƥxll.nZ94TaaP챼#}KAU01H?oǛxeqgE_m9XfA8<|,^NLn vV ڦ.B-:;X~"1V >;Hm07t:M8&02%lu򺦋-: *-f辆F6EJWהgQ+~' vx#:ja܆]zk97mf[\MԿwCUui>{O_B U]43*Qnx#z";GuuQl9\0tt5xcݭ<9R_\/i4RdyBFljЄv[yr>_6`JW>(hR7_aWom$xW33CLRFBf~FC܆ ]TO,0âEqC|k?X:(;"\ }5<Ա6lJjF8x5Cd !$}4bbK( $>F(LE`zD9h2{yr _"慉zV=3fd-ވak?5\DhȜTߞB #8WO8އ߳_@џ_A0+JAy1 B]!!f و@ ~K,ZSjwx#FNR^1sY_c#Sut:1t:jW'㜴CA+HL7GށFUjdkWhϩMɐ=EWJ1Nc1yOgm'ƤZ&Fl0+l!NU.I=1eI7:YlC-LG :gb:bH+OQe)J*K/g 38EJ Gwbq LE$P4hOR8&HE%Mb=YszC}-;Nq|Ei0Xa7&3vo~>l&_{1%;| I)h!&M'W0.b~ cfTFkztⲄ4 ghT >  YY򮱏 pbx -?h:wCAZD#A:tLGٲa}U=psP22ܣLVy "u 7A28Ǩ0 ֛1ГΘ>/ܤ\FktI͖S = jS$yPƦkh䉼ޮǙfm:TLEt,2ΝoL˜/p܁`_u{,ߎ*)fϒ:,_&YaK/g;xvfUώWckp=kgNo^X`}ɝ*c<2ܐ-ҪeX>Pr'<^gKxrdv& a s'& @ܮ(ۖY'xעcl|k/L4H+L(c%p(y\AIxd}^FQ=[hrh!)RU315NW=Ycaބ/` {zyz%fB#ʫ\Ybfn6;GNcMyr|[|ހ]Xss2JZ,t.dk8/^Ҹ)v3|߿؀^A sM!^2'Yw6}ZS⸃NtҦUSDbqPD7fs|D'|akkj<س_DOpޣV3͓Q.]Duލxrɐ@iyggfw$7j7r|?ia8x]mq6ylxqhæD!oǢQk ʤwPm h2DW;Ici+!G<MsMՓ,͜A=t^ X9N2Eb*isD [Ztؽ ͌Llgs5̬qLQe32 O5Äb:~ƮqԌbŨ2p+lpNm |\]7D8=]W"֡d5l4 1&E zkjz1뢴Zc:^x[jUlvl}+8uŝaL~&>}9/|Q:],MCm=)f9Xmg{vnC%IVӛL&GO"IsLe P(3eEp㎦#S*(ztƹwd#KVp]Y=02鰎`#nw/f]f4ǽbz&fTX6{極tXǹ,'W㭜M8%(t4wt*`Y 1nmfsՃqb}CtFi6a_Nvf.J1ȫ.m9G1D)ī)W'fj5; Yem 24so $W rs}/+v34Se1յszxzLsC 'uHw+,"ßSZpëVSal?g}5iM0bDb 8]Hedv}Sa}'׼UFjNDVe 1܆01>QRc ɤ!/7Or*5*s*M=UFG< 6+ێ1NuLhlt8!&©o ǡ 9T+v(HAȆhLQE |ϒ$D uNf&ǐ-)$e5_֤CCʟOst4pzBmBPENt&M&]hLHb !< =clEIeE̒'G)ag9DIyiI25U~+ YRg(Pǂ<0IWoEyJ͒ M?̃uECW| r|yzŵh# xe,*tC"jODccϯC<\x 8<ʞO,#סPE $NNeg4&$09>ȡKu=tҕ9*Yb,iYΉjSe06sl&CRX% `ciɰq΁d=hL`<)*N 04P{Q} `Qqlʇ_YOzk01<Q^ -UPo?9SVMQ&uV&f-JI >Հ@9ʁQb*JA%P)*m>:BPWYuP)* إԆҡW}eNL]1|^F*TEdҖiQґKu+HkJAH#A2_g%^[Jv*+A+ϩTCm/hQ rařP S5 IDATp.,ơ@le,ƅ`%EbH8˳)u "URYTOq*ZV.bP䞹6s&-<9GjeP|O%Uu%%IG&RSm g*+-Rԃ4R}Ŋ!m[ -sȐN#5LԄG-ц 9Q 9hmQy9U@N=dأ/B(y9!. )gE 3L=/Q iI8R]ҼaVBWD-x AR.E Pȱ/Z';?Kr|Sh!o1P0 !dT+Ha%PS⢊42uj ,J(Lqˠ]Be4|J~^+#qxBHJ I{TB|ҨNju*hmQRQEP(C ,yP^SqG4*-RAALz3V]  :t؍nY2  jD)ǂQg0JҬM6q2J׺Z;T*x#Cbfvɝb[ڥ%CPROͫ|̗ 2gyT;XUbJ90#.{z^>Ngl}?ӞiS[m\N6j3HXnC5۹k=uEVUw\"rLGCGX6̱=$3;`lm^c#4)R$*:5k_rjvb5um٩WUoey&9b_wřOlfsGE&L٥+@m GFt7с\'8L4aqNpoý{eMuLBseQŶf޵L:)|.::p}`w-g ѕ&ڦrJΦYW&bIIhTs--\6̗Ni0+e-0`EqozKA>ri'rd4 FBtm`wxCace O5yJY7n:}94׵͇| iu,Kݵ?^ix^d-M3b{h>3tOji^=GO73:!0X[]|7%824W/z=韓n)}}5\/<ŝ#[^0(b+#>#1wq89" isӒv/1nYlWskd[UR2o*l/Bٸfr`18>eܴ%T-ec&*(URIЈc(ڵP$=Sx#ϑDbtrre=X v5_Tї85vZ0Gr/0f{UDba^xM 6lo穞_0I#Z*NĩjM0~'jjsCIYkf+r2'YS s蟾NF7Ŭn7n- #~J* ?Ky mWSci_$Jm1vaЙ8:?^QUyq1|Ix2vcA\Zmy7L}̦Ĉqz0_?X2Z'W8O}sҷ\oy cԙ9?q|N}]^=1@`ׇ/llqd)F4Xxbԙzz"VUoK"}q'Rz%udI&t9ILxO3 ="~G0yQ?VMuW`8:!6]ThӬN(X 6]`ӌ{SZ6](&c[Y]aͶuf^z`oÉ2뭬Έ`/#۴rFg=G0j,ME^0 jg/sӒ{ :cۿxrYAWmඎxOs~B#ȶ/q{XZ?]0c:燘Vl;WloE6ϷSmi`}bVLz m}gK{|# 5m>Eg Njd[}tmװعۖ,w|rw0뭬;ġ'ԳfkkweUu'5+2:nj(V>?`|f|KL3 }!x`3lmUpjhv,e{}J,ژ\g3jv +:]?d4q=}j|Ŋʹ::?b,0^J#F7Imy(\h7]zNeKUt74Ud_ڬ̺x=-vͫ?W~u]|lw%m*L: o^ bFloox55xO<t˷ΣQ>-\ZAM?>5mwY[AбzZyUslnq,/;0:Aϟm*&55w'%ݵt_h|4ۖ)KPǺL npf28‡684ZC}&#_Ƭj+o_}5:OyI{by;\|p7񇧙 _atcқ{ljb4\7޴\Y[e;xyea]Yq\~^ìݓL|> ^mk?e-wPki[X``[ŎXW;k]Rf{ʍ.C'98xS8n>{T91zwmLC@Rki䊶۩6'DE,ƶƫx9\y]hGC)Sats[}ܸnj`O»&  D||>j̈́Ab(ދ{/ه:M5ܳ#tM;/⦥oᚶJπ"wvgzonq";% Z韾>ݷYg/s}ow g~a7S :Bk\vVF`\"Lʀx FFMuB\|x >ֆkxiy_hx|]xDbaDcQ~rjDcQ^xɵmwsY|' 'e;UܵNo:K3 }p`@G$5a8qUz>~7ހ\7(W f5&},vL$yKC*|) ǝ_nz?#e% ox*O Ϩ3m/Ochwpq8??u|zlo?\Z867j ~FY8f 6<Ϩ3a382$1/O4U&~?`~lI@Ҕ_xvaM8xb7qɛzkzP Ѳ7}sjF"9;8=~h,KO~Q z9>"oY1^Hg:?ʕmwĵwtM^:Dw02EIiMvj,vVti#2ג ukAoNQg'Fsu+Nc>.S-iΈ='0-w$cU6-<`2]'q( \Z􂁞^p0[Z˹v?%>%X]1Fr4!gom}?&kk>hw?gN:ua7poH|#g^g OqqU\x}N{ݬ.GIv5L|Ync/J cMͼw;HI'蹬.}=}z'| [92ֻfRpa8WS672fɓL??9צ&[;'O0㑮0L<|`uv~r+DcVW`w-4ک6s߽,^g{uمݹp4Hpz״M3y%\,uڌ\YBvw4@gU،Nڝk.tf2&ITNܲ>nl {90C.m ΌQgJ4cayVފ'0<:J hȼ΅j*0S&2 d(9a_d}VD`dn]*P[^*"}gLIǠ3͒:O4hZ=9yҤubvɜ<7%zrO0m/q~~z+uZyO6i>Donѓjc58 yŘh9 ̚tu2i3z :t ΄?c4@ln6ƃi|QY~J0IUJWR>&A:9]'E0cWߦI$e_i`d4?=tq=QuB-'؛6mS!O"xCxCjTkR1dkL,䙿h OJdog[Մa:O<1?ceU'/?́~bhIp]nzkkL1i-fkՄcqߔtpu6?66]%vc pOŦ!:FOu8 1LS!Љqס(Єc2MŘ1(f*澣ƌqVo~2 =Dp=b j瑩)DjƟB?qh&ѹγBβ1 s+tO…T,/x*"WD Q!9gTѡQ!3Ө+ʨ0LƑH/A:֨0ǨA!g&4ƄL֡6b1gv° q˄uMnԯq"S0*Fݨ-!F9g}|ջp*SR7b jx2Sa&;o̐lL ,c0=LOk!\ų\xz+B-J^|mCCbQA f63y_2LS38S`f΋lhWN=B8E0*̌(ft&bVg^"Ah-}X q\(!B fqKYYFYN{Ɗi#I!]MFab&Mgpq2^ nH_"F,:|7k2DciNݏӍpą&v,{gG /?~.Hm`Cy/MMLBCƜUш_U9W4R R7=uݘ(8"[D&VpwPI57&u%8k -Wft #)'גGdE}Cf|8pV4a CvQxw(N&1 tMzu5DJ2R~=Xm +2e)*ecosFe&K7Qi\F:gמP3:_~HE?fL<$c3e%*,s'*g] Hr+W=e\W ƁCU=gG*_q9>ZKSl&E@IB HQfMIwyBbc4َP PG3s78m ^nIf"jEwi98KGƼ[xpl`vȧj~LhZLMae\#B)p}25\VpǔMRf bQYs#X빧 b9"h>蓡ϰEq:#};iw/ǜ`s1.=CU,`n?s L9 .#[aow8pLܫJ]BgįB! VWB>_cܽ^<>˳7 pxTPTIJHr t;ЄUWU[חb784 lm 9zPJl)#{(O%]C hdz\EgD5 YngC>'9WRR̯^̭埡HۂT,gՋJE?,y+ O?ޡ`澧¹_^ks>B4=Z!s3/5>RbI%^Sj)ϧqTU& YQ𢐪PHT,J[T,0eg;jY[(OeՃkC)UشDNqņj:^TR K3/2e ~QHT,4F*RO2X ݏ/!p2ScZR&O_ ,\dTe,c3^5C`y^+S!OZ35[-q"}.3vq]Ƀ wV~_m |rJӼ}.3Vw*6)SW ӕ03ԉZcIf%-ck MC]F p<}1`auM@YRaq9R<<&z:'90R̩'2!zX~ͮbu[8ѿbv6sEv69C-}H2>=%JjRP׎nR8m=Ej\!>̉#<^; Y/1QZ~J>m%I pzmԦm KSNLPS XhZM:F Ԧ]B~9JxE0.  B|lk;:y_'=6ϑ0Ǐ!3oxDEyb #9bJ0m|<])"PO܏pOӕĂǹh86],L['k(N;2OxAOP+2IH29'UR5a~J-RaPQTMuj_=HQQi\2=u +8m /5>7HujT=J,M!T|k38;e<)Vfm.xQz?̝_ei5Zǖ=Š׆eeHeq:>\Yt/\+$|,o,{ 2C!VsOգZ0wT|U&ՠ)PEq)T=FYb.ުǸl>T,[4C]H27,ϺDy/EĂUqoweqŦuɓP![ H'yY+X#\_U+|8v^^?F4E-Qԥ{ofMU:yrPlY*n]onKsXs5zy2JV6׼ A^odw+MbP[כAˎ] +.G,M>\_τPHTޫ3;:7nVε{VdmA'KB)QQITn >zo^0oeK]|o=|e `Mhy}3pt7S?cg+r(4s/'T 74ׁZ toc[_Ft@pFw4_s߲o7[ҌʓPHT(%*TR ut;[r4!K$M췄t[f[_YeoJ:/|~IheI($J5J:voe YFE2N@?:y2-o%=lxc}LP37 p/)&HQ p?]OPE wW=B1,|NNRi8<oHP6\V}43ֳ.#|Z6}Տ'߽=lFPbd`Yy&c{#ʌ \Ut n_?xwo\iN[?ǟ$EW?ʬ-sJG/Oa{?8#sL8pwNku;{N&V`P8һf))gGiygk0ٜQIPE0*30]4udb9*.| xq ahD|',heI\_ mSt Ƌ",O P?4赡%ۡ?kD`o B[0YN+* 7aqƕdE:@OQZY?@4=b}v RWsC2E*^-8G{ x9~tJoYdZَ?gu2rnfUGه_鏫3s{(ʌez*啦?9!JƁN ؐw=r~u{N?'2N9QKndy;m! VPg~-eaϮq1/y!:_TA&")MhD"~tz$ pQl6.@|+:YhZ&Q#R,(C3w^{HR赹xo<{'oح?gIR"Ii~*uf,vN[?D* KSș#lnv܊GcsRSr;wb*۽k,de:<'p=XleSm<>QW(zHJ$3HD2-'qfO6F*aTeΧvtv(8{M.C=fI𹒤$)L3Vsj: IpSI`c\=WgrU}|4\u%z;߆"eFt#f snƵ9W*rdzi)OpgXչWsz^Wkrfqj4r=Ixn"rf^B*=m\p+kHW`Ter)u,ތBi8. m!}wT|ι3#dؐwYB49tؐ{#IU128m=PlbKѝ,0v 'aiƥ,ɸDE$Vw3d\ay4ێ3UEiYhZI/~G#*y7/'GWzJdlD.QJ4c֑D)Ѱ$ iKeaTeb?N̖»)2TryT.vkh{:<3lcw!7j=ImF36QdfEǼK]jLIQfpwGXqв+٘w Bj6f?^u($Jp5؄VĵşdAJdl~’MTPIu9ܻiYe[[Jeuֵj瑥-cߥ"D$Kdb92r!qա`T|~d(%z:_sr1|11bU>zʑc۳<]cV%n56@hQb1qɌ'\`hA҄ ĕq5+%0O¨ DpLHĨccƞAzuO(Gw/{aUĕ&HD>T| Ȕ p\}#g7M " :HHĪ'@_hD,'"^u4豅^R" csA& xdb9o_@~ IDAT2 HAaD"`T#ՈQ8z:S_<Wc{j_8m=79ܻK8ׁIӎ†Q:l6w6&81m gW:2 \|\t 5Yqb'6[9:L! x*L3x@?]1vG1$Ecy+6w}i|}99bf78J&"<◉p1ĈR1gk S!b olbDᙂcMzLfB B<2Qb 1g%jlS!TG<b<- 04qH`w&Ĥi8J΅t2 0.3gg:'??56( =) (QAGԡ&>,vĴݥ }EG F? yY{R`Nɭ%-G1!*3/BcHL_lfG=\ HNt!0heB;;Eb42$~S`B`q ω:qJf*Xq! sr3֣(9]'ᚿyv14.qn7ΎWGNmՏro?HI3oOjZDǤbi‡t;&4.ᎊG8}s|wOy`Bԕ lG8`yVņN5S~5˒ks4⩣O]XI*r 7R`b} ɡOٞ`dB2B^m) RW"(h8oXL?|Ͷc1貧O^nz:|Sƥߏ7B6}=ntN\<<>wpbڒ6~359puk~8 0YF>Wf_ɷ?RPN\]|oL)EtdrBXޥvHHȍy5ϹOYhhAJ25c\]lοE8<l(_*vRy<ַJr2USR~>B}.6~UXڱ-\Qx(SFUr2Slfn?SQKnE?slȽk~jRW,W݋$C$SS@m.,4&K[}.8^[z![[IP. *PK5,Lq)>W)j2/ci9 p&Y[(OeՋ;0BBfQjb(Ӱ8GY]=|Nfn"GW^kgq:98;e {,e:g]Ayr-^6en&GWN΂K}25;NG3m0TǞP"%)/:3Nsfj [yE\f⺒A&6ONu,2hVwX uMHyrHSP\>'6Ol0?e)ņjl^XFX (% OHZz^;vSHOaAXB:uR: t9q_ /pbxbL+v 1Nm(4wzԧolݎiBZ25h yTW`Teav6jKbB>^;2e($jrT,Չ7D*ˀB}iauwy6Or 25|x`׻K? ǫӏ/e!jB}V@~W7r(jrueTlӾv@Di>SqW-AzvV(6}=ېܽ(>Q`>R oq˂Z!rR($*jLc|iX:"խ_bsk?~Zl)IZ@B*+ogf\JEJ=hdzdl ?Rjח8C&j|x.dl PRKv5|{*G#' 50]+[JqGY}EPNUϒ)@,忣P_ο+Cf" \[eɋ0(dk(I^@uj\uI|oIUerвK naa*y8+]1gM_X$ხmy)$oFe{vgcލZ]rt%ZpB+3زڰzxto0(RG\{GΊд7=ŠF£~N\ު}C4dlfc¸{,y1ZGA/5E*"DS DPKU#RĽU KSė~'K,H]ƥycRe9)0>0ƌY6GSJY11!(y xC,NۀkC-ŐׁC <)Keޗru;=@ ,tu>yKp= #%I&W8g9THԄcS,N[Ga:y  #d2_)t~'ڜ26pW׹> lʻ>7FόYb5vĈzv޷ .Xi\%U(I(1,@/O!S[@ṟFfkKkK~Aadi5wW>->aiuz*6T O+ee6?2T?I<(9ܻ| 7Pe\]_#G[L}&ՠ-Ppܲϲ,,9RwW~?9CcoDMs~jQAZ64j׎Nn`G+|7"[Ã:^sAؓlotunT<\Mz5WwGD?f lfx^QO7#?~nvi"1 2:/7>s59WM1vvGJ>ΎWqzw_lg ɜZl^UWbTeRS4ێ~l)YW`Tf'lᶆeVfmA'KB)QQITHwG˸}C6o\+MgEHN!Q*Kxyܽ$xf_YYlevukǨʠƴ#S^2"paP*ui=ːׁZgo[ƶDL԰k_鵳,2R,m~Ml{ф1r$%IVSC(3K,8/6c}2BF0*30;[lB$M @xW{ʓˍSUSʴO V9/UM]%BO^#[[X$pʺMheUPT6<~{Mfop{8r:y2 ʔx! y,jfSe: phdv mq2/'E-j?^\{[q8`O^Ťʎ+_w|v*3N]X"m~o{[k~-s"swi77j3c"BU? vt7Z [uFU&/7 v.oqn`wFj?qw_V"k + j(ljYY̹@py01ipX"xqOYcOr4UC^' dGwp4h"U]8p[pD.Ɋ4~n NJ^X4Җʟ@t._IW]+eb9$E*>Oz8'7O|HEb0~ɒA' Z#$lu XDƮor6d/7۹}{ȴ!}7ShdÖFh0tuRrnbE5bG?1S1mt 61/E9 <5ǝ}>{ɓnjx^Ҹo7KN|H&)L-|;wac`q:Nꉚn4d^FSh qDoȌX$&Ia1zl1@.^性n?2*RU惮Q%ʒ8NDyP蹁(CA1+l̻|}9sFa("ddb9irŜpwAcJ`3[B" 쪌˸~T,Ǥrdi8c=D,y k gIR"Ii~ ɘ͌vgGr-O^Nj.:mNa aOeXOP''qcg6ɚy`͍X]Vg]RHVz˳x ?_)WbTf8pXQ)Pd;Ҍ֖O2(6TL%wYdkɟ;u"uNJg ýqe}\w_#KSLC>@zHBf"`;nȼ}s2?%Lcn:3=7_<e:5n=3>p24q48m Neh絖PI5l̿}9~~KIR WKir &u6IThnt$n.,ְ}u t8Nsw'ɋOiA]ݬɾ\<<}8vdl؀Z#_?o͛PťwPh"U^a@x#GE,N[\qrn@/7r/k%Mˀv)7Qi\J%_?ñ4KlFe&Onܳ1_6P속Qw24b.m5he%TS=oʸS ٌVj4.m#mYhZ\u?sn"YNQdeeWè_F\62!٘.HYJ~zvP%(NZ+dPE5|س#,9؄Ja]֕ߢ,JeSG1*3h23|./2<w›Y].+qLGq?uOT]TXdZQ~,I$|jʒqާYhZMCe4ێQTC]Fmpa Z)t>Rr&U6zC=;=t 6jِw#rrt%DZՖ>0HQszP;K268mLX -6TaRga uzm\ZQ42KBOWmcikXy9Mc8/vñ䘎E,0 ùS\_zzc3]`H\w bxBFᵍG܀=~ OI!U!Iƒ#DAw8bdTyF"+K8<#5F(F4*L7b\,]0i1jA=NF%+I zlQvxɉ"uD9\:&8AsǨH_&zElοwފ>,DlQͯ `G:~6Ǩ0,FSK'>ƿڑCeחs%bI (}JE.Q2 ͇&QHl?N%qc BqɌP9VrK=\VpqO$F&w᜼lt7*yLŏ0,F>,QFեy{pϧ"z_zacPVpxBcaIo"D"1L~d2c;Y_q$#Tĩ0ѻunf2uxO| YcG1&lHW{6_\}dʇsSa8&*ٔ#x:OMQwPm/߁7:<' a]Q!$:Fߍksmc>dTrѮxEYdk:KM˜Ȩl%OWʬՖ xvgd k xCXygeDszΑ06zl?zލ %Ш%L6,$z5mgP8{0oݸ|2+a`Z璛av+gUJoR}96<u8"=N;S!jr ZMQab icL$ '?%F B.R㟝%T 82!Fy;&5)~>{f 46`?/vm$NQ!X;84.1ƅ_&;Oi`+FOm^³s[j <{*$'sFQ~г#%ƕSXMN,)TT+&THp}tLS!>=(l IDAT@00<%"#0@  LK;EP{BV ߬8_Edxҝ8.)&33D$ w+N\L9\%9vDk0[9.3)\ L<1Ej6>~Mr80ifM%-!\ p .;]LiOaz.,BFE~id|.b\xa;?LM}x@tHǷa:ә첇p>?a|×㢩9RЋz+0'hTԗC L7X$F+3LjXRd*sa I<$ITb3 LîQ"O)&V@+LZ|:IYIxiB{˫db$\Dqyq. xhmq:\On_yjYpYI ~u@bm>/9*Vg#ݙw)REQR\GIR 9QI`s,rU'8aݏsjC\gP1Tbu x(Oe^"ru0 }lPJԜzc} |va9ѨHYgY""!.Bfu63?>QvYSj-0rӼO* \{yM&Wח6ivw%?C. Zד+]SQźq}m\+ 5dk'۩e{x`ȴlmQBlvrl@U/Ί̱NGzߧsL\2e`*~y+zvX۝ ِ3UJog۵*Rm5?hj;ϸN6,wJtmmbdJґd1OS&hP;W˒M# z\\y];F>C!f;-I w#j̃m842=+6j]-dj XX4 G)UдNG3FU:n'ScZI H&w^eA.Qp?6DIi%}Cxx&U8޷! ݃a+t[?`G+dt+\]|/_ު3A.Vpz<ְ@dlm :_??W?Ewenx6>\̰kNm}#J=7j O4iN=[ܣn}:4.hnRPJ5E3~:ʔeH2~ DMmz r#Fe& T"2'pfr)rʈui{ڏS\fmZsCCT,ÞwkfQԔ&Ty29MvX(g3=;6B Kan05LUI,vl>NEL@:H2 ?% SW'qg'M:j7׽-|0*3X{6w?oxCόg~ qİgIUe;<+vPVNdD0"16`Jgb_`tfR2FgwZבaƸȴi+qM \XQ3<:r#%)?:{is3^#񋙫䩃d?NTx(Nu _jR~2ud9QxߚK,g3?}#idcxdEԷXQ XIܘ=\w_sq#](0fv>R^#,xF=+L(0ԬN)h+QZ,Ɗ_W՛P:?&=u,) [aګO{ΘlxnknCw #3& 9'Q=+KѮ2LȞ%p'QjNGCW5R2o-lȰiMOgA#f=7Ρs /bDx,u<~?H{1T95M &߇t[d8)Hbb\k|W/d2nq"ۙW7-g˰›{}3<.k_^݈5&rq(D-N7C+GGw[z]~:{ڑW[aӥwu\7|y?6]^yEw!-%K2Tfkql^Ƌo`|,9W|*TŁq׈Henqbr|QWl Gv`/Y廘[t'tmTU`k3z<>7~|[."gnѝ6[aiMŸ7d>nBWO{W՛q trls {;,ξqY3PY_՝Ʋ.{f.C#=GvV!ӑxfq`vv`˕wP^C_`ٰpsx}n/5[,}5[Pu\V']=HeɈ(`e(zTYQ Fq{T[$8-Heb_$c'q?x̀=7 :[f  `gXeEgO.嫧C{wka_-GO7L١\f,?:Ǘ6qR QӏdF[Oܸ#G #]wG!Ԇ͚&ؓ>ľ}4k>7N C-[Tõ zC~/8ΏJvVzߏoVSS9S Ɍ 9#3stfĜV6 S\Gࣇze1)w^Y8w_;w߯Dw{_'º#< PY2q{f_ùtbRiTUbN­Cİx_2LJ wzWdYĶ6] $8&B.9m@ i1UoE^vKŖSps`1Yq,Ѯ2t^A}5\h99 "@Qp\l9D^xp:11g.NS2[Oω-K賹W/bd^<{9ܾ.LșVCCu_j=!lb^=6 k+~"+HM@I?k_CU9\l=aZmS1Rq'q64n {s(?pQpы0EZ$XRHGy9?ލAj_R* %)g=/W=j C￙`Ȍ 8\[#ϓZOsɉ{ȰȷprENTIf;n; {w7R)swu&059`ZB;!a/}?) /)?ĥOJ:-Zt #]1.9ӱnӥb{q=5X8^L[[:F&Eͅ:q͞z. d%rp4FcNQoyʼn`8p-YW 5x`wP⚈|eyqt%@Ά#u0x߅YeX4]&-3 #Yu;doKdJNJ8^3 oÜe9 ڳq=Ux-B(L onj%[l;ou\DZ -Ĝ;p ոgijHNJŤK.ǟG[wu\ӚC6 xCbP2k1>gf,ƽ3S!YWViMŭCVN^6W{휞$`UbNCey 1hAA0,(,=m!~tchb|FRL˿vUmHMra`r*ìe=Ii>nlZpg059b9h>Szg ~CƠ8o fNŴŰ8|K>lGa e `8q Z(Jʶ38Ѱ' ;lοn"!(3ebp?+)1~ZRQ~^27J*3 $?w}03K*#Bvvf,g#ٚauc[칸w7Qrcj-LʝYPvݭX2Q$[0-VtcBe{E9cy9c$(WT4Ú[Jrf,w!$1ܔ5[@O>^l=/Wt7/F-Co¥HeۀK`:^>6gaٰ#Y(qM”^ޫ=ߋqYӱ0LxxQsXk"%M.˞MG06sjfq,ol4IJO"Yʶ!/$ 'tII}bTJMbAo-vttv8{;(L̝v=5:*䭷|wq7_܉ΪeLf'_L$FR!| Xd=Hۗk'/Vo#'m:$[`:Zd&3H>L2aǙ>[ dB58E2!d/'vK2;董~Du`mHzk <=]xxY:uU%EV&~ݓ Ք -L]RAIk{FzQDRKA"XKNiRAvzS/Tv~oȹdAWOG$Ӎ󗿯 &LfpPmHNJw& uwI@9wjWd4A7#yHBmeBhM|08d7aI+B<̚\#?zo9 ة QTB=n9D=B%Sc~g!&Ú3Esss;`D8,2ƢS\'({{R j%j:+1,&,|?Fݗ ;|/$ҡBˉ-\:h wOBf0#`lO/Ln{7$c":{wngc,'i1f)kLw) 8XYXb~Q^T **M*D/6)CԜ9e%2IJ0B_UYC4 _wnq=_w'ts{I@) yS<3kCک *NZRAɂeRFdbH(yqa_v\`9 Z %`TP=Qr#Ӟ 8T9ZMrP, -:%|v=$% (OKq~ . TPT7BĂR]iH.L&/-\#STPSAQGJ> UqwXaޒvRDob]:T8}Bwÿ JzO (;8^8EY1.ą %&.}ϚXwng Ѹq!%`/pĂqLdȮVA<[%a<v9 ZPPPjBM(҄Ah%258Fw>%w}#`AM?5V1YL9MN+Uj$PBNjsrNk]E:/}@lT7> pUSzAkRja(xM="~?9$Zˢi2c m ugb̦/ 7R4:*A AD?q813nBXgK &$x7ՉY] ݺ͋՝_ue.\V&aM\2'ތpg\Ox8& h &."w b SXY w „)**\Sϻ|R$o?PP^%,kFa$PR37 HQPAC&T_ ή1B)!ѻe@R FqbcuWL-DJjgC嵥'3VH3`3Kk0Jact* sg#˙vjPx>'Ɩ ǎaפU[5O:H,Z^"T"<e("+V G,ExzHADXQ\fh4 J,/mxr?Wށ՜$K[08D†݁˭gUm )\VxA~LHG `ט IDAT؀;ݷ7zQXB,0:l}}0 nÑMҋ۩PYΞvxp LfbdF)Z(˛$ GֳpX19w; Yύ&w-9X ,Tyht ޔuu#t)NK ކ>sQQ,G><.T4EEQwnq`R<4dî+3Y) q4 u] y.gL )5^ 2">$*dȒcAlP%=Z'sX%KţQ5A>z9BVQ(6V(,hf% ,5-N˞C4ka1Ys߆[ɿ?'06k 2:]1%o_kɚkE 0?)Ƀlxb쏰:݉0/d2nq"ۙW7-g˰›{}3`_V|ri5\ 3×6"?y0A!ݖ%Nk2;nׅo>.5 '`M]W?F~ (D-N7C/>@gwJ@\O:qmr *cbk"܍1Ev)= KSP`CH0P2&83q86 d6jђp?uj|Sg!VZOrkl{u )Ii݁ynŅL]sC.+%* }~w\c [6W}Ϋr/KkI"P oxix@qc/ zOr4s)#3 ^Eԍq`0cvڊQuLD Dj JN,a ͞zxȃ>?4F&Ja89|ˆ?ي'a1YnRl7zW1& o'ժqbQD0sw"t45d}ĥDO=8:  QB}}w)Aoc@ńqFn &lGrwz"ȗJ^n_üeHeW/f n|/-@-\"ݖ:q,=q=[|f.Ak2ŁS qȕM.¥8Xmxj?az-X8\h)2)vWZ{)szu-NL/XŁ poɊFw-m&ྒgQ;N^(>䉁ud|HY8*S?ݲ|h |$T~"Le (j,=kK2_yRվ i:啐Tx4]+eeD"^ KAGbLiG3G~(_Sk>I*qXD]Lfvx|]aY찙n$r/}L̝zNk ~1um>NRBm} %cT+Iod%K(I,PRAQ&nT1~RUbMR!T⎒zXVAdJL7+2. [pOVOb_)}AN(t!M3?F? \! U'֑ eJR3V<'!>9*y.%UȒE/!{kI8Pu]Gqp*\76ljB蹙86gvg)a dۨ[Y(◡oiI5jR{kH'3/ PPPc ۺwGPNt0VcU't. 5a<шD )9hەpCGی~8|&8b4HhlJ$QQ/^jGw+(W ȉD|+RFJ(0qMFw%н~ 4_ b&v)(FG٪TUr[N8@}C 8MJƝT-3jקB坺V OIr!Ie:$% P] D?J&J VDa<+uJђQ/:U) tD5Li!}ÈXT'=iԴS޻  P=ǎ61 2 /ͣ.zj$44 $?M B'I.ո'aWzOj1:A[;D9րwg5߱rE(aǁ$;U7#%I6Vb7l{xoY}Q4V|#PR! De1dG ^~g0l/֤ISYLFK0H  j.XPjugw sZ S8T(v Dw3FPVVFQ q΅:wόP`IbRP#ib!6ID DjK1F=fswoz;^jܭVV* Y$TbL`b8tsؓ s`&x;&&FmTH$D|AYfY[T*pRWAbA1Vc/U`r},.VH}Si6-N`P¤p- xzZ1uThm N2uzVR_0a}1iحD.^5e z4ܝpCz_L d ] 4UAuqK4VP?/œTm3ͦFg'*>+e;Q.tXv;F/Y#Hew+l=azD_@?݌)< s.SP'wYGg}*k06Wp!9g_)m^Rg^fDBT`qk;0^*"Axqv2'q!\ӉvͺAĂjY"*tO.m:}bPPFfդ';u'acCX䲢 IĄ a^fl0[A\"j4>/;DsE @٥'8#BIb BIЬF!n ы)qT {Ăڵe'}^ m-/e,lUP] \RiZ!u-2# &.@h\oԟ@ Ƙ1Xf}>>N~ DVgD$ɋ~T+ΔK!:_bW$^*^O%!Aİo$%(v1\V4Y"~dkgZ*.b[ApVA[b_Gb^ߕ/(clEBkOx&^4:JwKЉXT`Y+/@APNC \'djLbU. Ă7w/d "S{S%RWw9яa'9\'X%.Pg6ӟ"J;kC9YzA|% X\ .iKO$ڡbcT:W$ֈ1Eu#t 5"CJe8rH*А#V J'AG[}Z!]GvwELD-dX$b_/㵰N\G,S02UBA&&85nĉ~vb{Zf {E0X@)FFC6Sb8#ƗL۠DYjZ_WDi%Kq`Rd|Lf=0{XNd+"IcPc3k ALã1iIIV AF4 YzjP )WXF;q7n=B aPSWo"w'PB@$j~:דX(M!jDDzIBۤu#Km3i1+ ![2Hc"PBA6 D2S)+z`B@Xhr!^0j@ 3dBGݩ\ğKAD('Q Yfk`lϳb0!X$01vB<63'B.3‘奰rbqRQl *dceBb#D0u ֻb3%$H͎ aQ\; M%>ؕdS? XgXQluE樟)̢?X_G+qHS[A~e J+/:YL`wB|'++^y]F}"] ru+DM@SmѦMFa >|c,`C 7_dJl5s}LivO,hq/UBtm TPr]nSB!*=s-f:b#uG`ԟD w\1]x ,b?J3qXOPK߭2 XHL,Qy  2E<`} D^ҨЯ?:0G^M̊\$Ȣ-V !oO, dJ&K#ڄ|1po ӧl"[`8;q`(]fۭ"1LV ²5FB䧁AdM&kMTFH((Zݼ1GIH/_*yUR=3GcuEupRIŅ10|aO.EƁ/%WFV T([TfUXuM\%s3*:SپDɄ~Mr*3fSU6VT0B)=Mi&mIڭCa3zNxҪNfDtRduJCjB<5UēNlna^YmRC^u wUnP"`1 8aK7 q؂PzUeSbM1'[U׀윈9F jRBN6 j 3"T`ZD)Yœ򈯛HZ%8 l;XJmΑrݡ. wcuQq[xF /T;U-H%2yf(KH&ac-}@~҅hF  F Y5]^f,Q詒1'X.0|U^Ľ;ߩ!V!I(#W$B0o`O+K6B/IEڶhr$)֚@A$,~B&^Tzr78Z' ke, lÃ4h0zR$ ')6D@썘(1-kLQA$ 1\#  T!!|    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0q    d2Xˤ AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( AAAA( 8v(v؎G[۫y'p݁]w׭G?DGGGѣGOpܹYBǃqlVmlc^/VUxިXxӪ/hR‥l=P;WK/ρ[lrp@Z<9=c7٭HNZƲ>cs ߘ]"ZppźYBs+ͭj%ݍ-7!77Ç+3[l(юb}}p8d[.^QFw477UU! #Å{W_~ --عc;o=׋ c+/)d+7av4~jϱGC߷/B'w>[ GB_ctt< 6ɱ)pz|=hkk%ԗ)7χ֖^"8b>=^!H#bqM\;āl!9hzǭ|=ǟxÆ Gxo8b"|lϛ|<7**FCBqbEeYuSfb9&A|H'kh?(OοRGCk>!Jsk4;XϭDڀx\VO>ӦO›}3w^Hټ|4O.]C"++ YYYxtww#)) ތ=w:ϙӧӦƍ+Kpa4 {w-fϞAB&Y_lݲ/_ŊB,^サnuIo2}<8G?Dcc#^O)Snoh@RRN˗/#絣{HKK݅gV&YЈwV"K/Y[$_\Hq0uuhdm9=}RT\+_Jf^xͼ~-%^w:hljԩQYyM6|8,M44yr@_ K$Wmۊ&ZܾNρ0t0˸t"\.WԘZp:hooر7a›C͛co)j*Μ9c -KowǕa|*=rwygX[!>lPYxO|tQ3˙WORlq!ᾞ2uؐ8 >?WXT#e 83v9=r.pضuKk>)x84ܪJJ*(A+2e Ə8. 8[7o ,Z>5-pef*6b-((իU9kyvtvC5Ɋd?f3N8݁~xÿ{9wo0Yߏ?7\V3+VedS[[_z1zNQqƕb:SN OX ΛS'O +;wyZZ=S|=HNNk̄݁':::pUڹzDSHKO]w߃&?D IMM5{ȣE!ԟB T> )>3y}#ds4{DHT;Al~-%^~?:;:̊g??v,M4|N3BL,Nnu1N85.uuH>S--X0u2|f0,S;=<-:ƃٹƣDxe$n)}sP+sr} :4&%;P֤$Uv9456st:%J0aȐaXtb46600ס \z [ Czz^/jjk1d0Ym7_/E8i6nX,)%Kχd F.32\p:EeyϜ'&O._ [Bp೽EEDrbn+n;B)BOEE  B;RTHT;Al!ɖ/gr22[I}-l\pف;-ȍ>p8BIc1UPXB466 99%}yюty>R6|>&CxPb^͜b^_N=s _k9!קr2H|ss_{]khxyV[ڭtn%b%0|4#%%7|Ldd0dP.+$V\<( W cFkE χ#l/,WJr &3o VWff%1n&9b2FaQYYYxBȱh!dGJJ zQpzUHNI#;;.] 75drZR^χGcĉر7}sL4 3gFEYڹ#oj(#B}B6P?H`b!8x,F,v S1KCil)"F/,qN}}Um/ >S7CF+$7o*ӏP]xÇ[h{Î^vuv|&4;9q׏Pv&ss!S3vw oĆ\¿2 8;;1^)V[a5] 4h0n7ǃ$[d>O S)EEHT!?fϙa5XðX, W^q0[x'r$a5z=>b;|fsS'1c,Lx\UT?`ގukl6f 3>Awä9GDӟ_zŃ)c ﯴ4kPlix¿2&O?|\|*濫v.V[[͉`⤼ЌNXVl;%~`ܸRL:vv$=q5ڵ#6wWz|0pJ܎-wGww===Z 扡}>n7R$$DikkEjjmaB} X?"Z\(1)#5N^8l6++9q")} 55x޸---c| KjU^o֣Ვpq;v=R`xE@SS^&>Z|߱"b? 7Cp= >B_A$T rT=7>/rcQ/~?|e8.q8].tuuɶG,"to?BuʎfXPE#\cG1aD}}!9sr· \w[leQ3~?ϝC^^&O.ñcGgAl,X=7l k 7܏~y]rbL&I.\8͟~X-V<ȣhll@el`;v477co 99W p&;݃Gvyoq'uu^xϟAvNwz9l 2]vwcM7 mmSQq,+nS?X}8x`?aMbܸRM[{y -x'!=?-`})7s>[p!^V`eSD㪮G39n3f 0g< ƞo㈾ëUUظ#l2ŋ#owZjY6Y,`ݰϏ|7xϬ|Co`߾`q,$*Gp\(*.)8{6B_;}|GM>{|hXBǘRA~PR BDaQ … 1rdo؀'~ظ#;zeS`!uʎ3sv:uӦMG?_iiiؿۇy` 8irܼe1e4tuuwסYYYӏ+XaRWV]|l*?`Ï"??ǎhgϦO>jA@I 9|7r+,f 222e&xw@˅n_2&+rd=u$~?\t{j@]]-b6DCH>86} v ee\VkWbӦO̊gɖj}}QWW W0\P ՗}6x|FڱKn-|7!ž'Էr|hr\cƎŶz1u4uɨlXÇȑ%xwʐ;a2yw/,)cEXqGn*KA% $RYyLL01pڵ8z䈤KގUob-ƌ ?|Ńp]w ֿ{7QXTNL6 cƌMa۫`2C^v˭K7^GnnI%6DGjjSX-,^zmٌ|466tŲ?wWȣORuYY߷EEwCxCHޫ/۷r|xǝwc՛oxP1</?h;- '㮻^!_Bm]-/Yl`ܹvlߎ ̜9Kf/c@<6Aa~߇ `JOOG{{S` wttnGz^;B_V!]8mmmp:HJJR%;Wۖ`SR}HKKi$'o󡣣i0}Rb5Bcb>d LR0.ک@#VUbl6GfEJJ qéAHW4L&ŷKTX;%OJ|e&a~/ HO_*bQm}Rb-ضu BW=inn­D7A T    ;$   bCI    AI    AI    AI    AI    AI q6|>߾{#777cG zqJqh4AJlիbj۱f_qjT gϜB8qk׼ukw؎cGkت5;WK/PhWJcTqOk+Z7XqI%`dԩ0u4T_ciE[[+ʧa!2zzzDu\;wl(q,9{|=mEW2d#ë/͆7/ׯvKP;X>g۶azK.aXz}2?`/(Pd:|S1=GOM }p];w\~ .b=ؿ+Ȕ ~[Ça/r!;;WT~?֬~GAE`k׮%%%hinFaQ*+ڊiӦp ''G4Fsrrptwwc-"v,) ȗ>Ʃ?۶gϠCf3[̪߮;ى\rrrW_y eSA(F|X-=rg宝:mϷnٌndᕗ^lxgcݚwptyH?ŀMi,KO>߭]˱sv}~%ލY#9m q2e@Ξ8u$l6sr / eZY $<8?;o>8[qJ1o|ן2u*gNd~f~?`rYY:~4Bm(?u v=(K/X^~ i{Ԅ^{<:**TJUBRl@ ,-[ PEQܺ=sz=gsz{\PPVͅMQGB LUVR}?BTW^|?xzu]{p:X/<,ϘS[QXTǐgՊW^/݋ Q[[ܱ8UwR0ikk߆V>Mi-ͧxxp:?ݿBb3syMminV'uy|$ض&".DtřfT*jISNEsybOpmmh>ߌc !_=X::t:|>~Ya"3s͔$&& ƜaɀJJ9ÂNRSۃ1'!0JJJ NFGGx,˰/֑#$Ҙy^;z8q8:;;ىܳ> s\fIGG%3mRrTIlFz䠩,s`moGC7/PFspBF`sMl-@eEM!Sxa4!ĦE3vtT*$$&dJVjd͹c>P >pWܱ "> D4꒒eX֛8Ԅ\\Tc_z5Ք Kf&nce9cJJǜN'T*5jhrb4`ุnB@ y5pka0B3i$jxO¢"TWvxTj+ibk\w_sԜ8|)MGšrh4A^~>z=wze1IDATFT韜:{!ṓ#@CUxh%Ѫ*<|9Ξ9+:y^ӍWлwHS k{hLb52hrkD,6Vɧ*R==_ K j& !K-w#"M\T QW^~ HHB9=6ۥ_OIIڷ 7ބo].޷LŔNƑJlڸ]([ph{MKJJQQ^ ǍxoXn |,,,¶-[䮻oLI[n/#--~Nz/}O~*tl6lXj qqZY98te nAū&Vaس{ӍTdddUweUJ4ΎXю}xqcS>V4m^ox ըq󺸤`0w*HUWOßnmahb 7Mi-4R":HiP%%>v ᄈE"yh4Y"px?B>(ifVF=.@K|r.\th4b~x8E"""""""RJ,*_ """""""E@DDDDDDDpQ)E"""""""R DDDDDDDH.*"\T """""""E@DDDDDDDpQ)E"""""""R DDDDDDDH.*"\T """""""E@DDDDDDDpQ)E"""""""R$橧zj o>Á|2,vz~{\.>C:Uga4(x===ؽk'&NU~ n۳{Gt J3vb9f]I>݈SRFO>ޠGR;?DSY3jErY9}LZ݃doa򔩢_@sy|GhGvvNH~Ml9DW#Hsm:v;})&L8 Nݳuu'QWw (0!=RQUuUG* &IN{_p ++tJWN#(ښٽ MMgv9c7Hh.M8jH,D?񏗻Mީ@#0cɝ;2\.'z{{vP3g"==_y >/؟ 99s~X@@0>9ZU1~ X '־PRc'HmO0qR!o3c =8u]]mq;+߆,,c c?\q;?8P}h>M_`úu;o>&LM7>nb90B6#B- Q4ۍ ?71+1 dL>ӧπ9#mmm#U===p8wI4~YYX|n+'f@<09P3b7R`ݸmbdegニ.w9Wh6kHl~'"RBz~0N"d3%8s4*WMMgiz̞=Y!j`6gl]pi|^b`2lڸN ~̝?ABo/ݍ@۶nAWWnfμWOvi{g'4 Ϙ3gNK# a{7!9YӁW>!HLL jc֭OH@OO7L9]χw׾ χĤ$tww'~)Sl}0s2kmx<Ѿkj}?'؀ Îc]:F\@fV&ޞnFzPXT N47Ò=X2QXT׋5GÆu"11>Tˉ !6&==XrݰX,!7܊9؈cd2d2xhMl9#U Pb" vlۺ%x'&&b̘4a3E#~\!#N76rnn$5vb2Ew*Hǣ+6K|42rs7CWW', uɎ+:>oحƭmmh>ߌ@7vaWk"IO7O8L۷ſ>@fTՅ ~[b %xg[҃_,m݂CVq 7OXrÞU>+L&={===hn>q!>!)))x_ o~@[>xcǢthLhfJME@oo➥Hadffx(zqzdX,;X¹xшrG"հXbr!u>=srrcVכ1{|}`?A~~hY#?V+E80aEMq$$$"'7'%#>v%s'\ll,҃{ytwwK֡FyyZoJ_o[̸qP:y2|c ƌIdB\\ARc'V+W(HSGbI8q8\>G*+Q\R :>sIIQXT}Ve̘N*z؇TS*,g齸g}XJhZL&47)1bq$%%a/D[k+55):Fj470pt%HkW('QT\,P +۶l-/t>ldh4p{!ϙ뒓xvضF\w _w 6k`0+fpNbԩX|(*.Fß7)B㝕p\t&J*(<Rm =cbbKҡ!1)G_P *5] I}:Jk\1iixoF`[0>oл1q$466`֊>(ˑS`4%B"-=.`aamق%w())EEy9>xo3we^^>֭{--p? ՛";;o~]5Yl/g|AmCА:#fx.σ P]} Zyyh: Rn"կCK.9dDR z )1hJpxGR#%r6f]t:@ xa$s; ͿWnGrr$}DϕljOu&-.*H|>zEæ qy~lp8y}uBnGz>ĵ1k[M?~5y7E"""""""RJ,*|7.]H.*"\T """""""E@DDDDDDDpQ)E"""""""R DDDDDDDH.*"\T """""""E@DDDDDDDpQ)E"""""""R DDDDDDDe}؇`fIENDB`././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/framecapture.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/framecapture.pr0000644000000000000000000000032212273255454032705 0ustar rootrootQT += webkitwidgets network widgets HEADERS = framecapture.h SOURCES = main.cpp \ framecapture.cpp # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/framecapture INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/framecapture/framecapture.h0000644000000000000000000000462312273255454032523 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 FRAMECAPTURE_H #define FRAMECAPTURE_H #include class FrameCapture : public QObject { Q_OBJECT public: FrameCapture(); void load(const QUrl &url, const QString &outputFileName); signals: void finished(); private slots: void printProgress(int percent); void saveResult(bool ok); private: QWebPage m_page; QString m_fileName; int m_percent; void saveFrame(QWebFrame *frame); }; #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/0000755000000000000000000000000012273255454027036 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/scroller.pro0000644000000000000000000000005212273255454031402 0ustar rootrootTEMPLATE = subdirs SUBDIRS += plot wheel qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/0000755000000000000000000000000012273255454030142 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/wheelwidget.h0000644000000000000000000000623512273255454032631 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 WHEELWIDGET_H #define WHEELWIDGET_H #include #include QT_BEGIN_NAMESPACE class QPainter; class QRect; QT_END_NAMESPACE class AbstractWheelWidget : public QWidget { Q_OBJECT public: AbstractWheelWidget(bool touch, QWidget *parent = 0); virtual ~AbstractWheelWidget(); int currentIndex() const; void setCurrentIndex(int index); bool event(QEvent*); void paintEvent(QPaintEvent *e); virtual void paintItem(QPainter* painter, int index, const QRect &rect) = 0; virtual int itemHeight() const = 0; virtual int itemCount() const = 0; public slots: void scrollTo(int index); signals: void stopped(int index); protected: int m_currentItem; int m_itemOffset; // 0-itemHeight() qreal m_lastY; }; class StringWheelWidget : public AbstractWheelWidget { Q_OBJECT public: StringWheelWidget(bool touch); QStringList items() const; void setItems( const QStringList &items ); QSize sizeHint() const; QSize minimumSizeHint() const; void paintItem(QPainter* painter, int index, const QRect &rect); int itemHeight() const; int itemCount() const; private: QStringList m_items; }; #endif // WHEELWIDGET_H qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/wheel.pro0000644000000000000000000000032712273255454031772 0ustar rootrootHEADERS = wheelwidget.h SOURCES = wheelwidget.cpp \ main.cpp QT += webkitwidgets widgets # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/scroller/wheel INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/main.cpp0000644000000000000000000000775212273255454031605 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "wheelwidget.h" class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(bool touch) : QMainWindow() { makeSlotMachine(touch); setCentralWidget(m_slotMachine); } void makeSlotMachine(bool touch) { if (QApplication::desktop()->width() > 1000) { QFont f = font(); f.setPointSize(f.pointSize() * 2); setFont(f); } m_slotMachine = new QWidget(this); QGridLayout *grid = new QGridLayout(m_slotMachine); grid->setSpacing(20); QStringList colors; colors << "Red" << "Magenta" << "Peach" << "Orange" << "Yellow" << "Citro" << "Green" << "Cyan" << "Blue" << "Violet"; m_wheel1 = new StringWheelWidget(touch); m_wheel1->setItems( colors ); grid->addWidget( m_wheel1, 0, 0 ); m_wheel2 = new StringWheelWidget(touch); m_wheel2->setItems( colors ); grid->addWidget( m_wheel2, 0, 1 ); m_wheel3 = new StringWheelWidget(touch); m_wheel3->setItems( colors ); grid->addWidget( m_wheel3, 0, 2 ); QPushButton *shakeButton = new QPushButton(tr("Shake")); connect(shakeButton, SIGNAL(clicked()), this, SLOT(rotateRandom())); grid->addWidget( shakeButton, 1, 0, 1, 3 ); } private slots: void rotateRandom() { m_wheel1->scrollTo(m_wheel1->currentIndex() + (qrand() % 200)); m_wheel2->scrollTo(m_wheel2->currentIndex() + (qrand() % 200)); m_wheel3->scrollTo(m_wheel3->currentIndex() + (qrand() % 200)); } private: QWidget *m_slotMachine; StringWheelWidget *m_wheel1; StringWheelWidget *m_wheel2; StringWheelWidget *m_wheel3; }; int main(int argc, char **argv) { QApplication a(argc, argv); bool touch = a.arguments().contains(QLatin1String("--touch")); MainWindow mw(touch); #ifdef Q_WS_S60 mw.showMaximized(); #else mw.show(); #endif #ifdef Q_WS_MAC mw.raise(); #endif return a.exec(); } #include "main.moc" qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/0000755000000000000000000000000012247412261030677 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/src/0000755000000000000000000000000012273255454031476 5ustar rootroot././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/src/wheel.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/src/wheel0000644000000000000000000001135212273255454032527 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/scroller/wheel \title Wheel Scroller Example \brief Demonstrates how scrolling is handled in Qt. \ingroup webkit-widgetexamples The Wheel Scroller Example shows how to use QScroller, QScrollEvent and QScrollPrepareEvent to implement smooth scrolling for a custom Widget. \image wheel-example.png \section1 Basics The QScroller class is the main part of the smooth scrolling mechanism in Qt. It keeps track of the current scroll position and speed and updates the object through events. QScroller will get touch events via the QFlickGesture. It will query the target object through a QScrollPrepareEvent for the scroll area and other information. QScroller will send QScrollEvents to inform the target object about the current scroll position. The target object (usually a QWidget or a QGraphicsObject) will then need to update it's graphical representation to reflect the new scroll position. \section1 The Wheel Widget class To demonstrate how to use the QScroller we implement a QWidget that looks and works like the wheel of a slot machine. The wheel can be started via touch events and will continue getting slower. Additionally the wheel should appear as if no border exists (which would seem unnatural) and the scrolling should snap to center one item. In the widget we need to grab the QFlickGesture. The gesture itself will setAcceptTouchEvents for us, so we don't need to do that here. \snippet webkitwidgets/scroller/wheel/wheelwidget.cpp 0 The widget will get gesture events but in addition we also will get the events from QScroller. We will need to accept the QScrollPrepareEvent to indicate that a scrolling should really be started from the given position. \snippet webkitwidgets/scroller/wheel/wheelwidget.cpp 1 We should call all three set functions form QScrollPrepareEvent. \list \li \c setViewportSize to indicate our viewport size. Actually the given code could be improved by giving our size minus the borders. \li \c setMaxContentPos to indicate the maximum values for the scroll position. The minimum values are implicitely set to 0. In our example we give a very high number here and hope that the user is not patient enough to scroll until the very end. \li \c setContentPos to indicate the current scroll position. We give a position in the middle of the huge scroll area. Actually we give this position every time a new scroll is started so the user will only reach the end if he continuously scrolls in one direction which is not very likely. \endlist The handling of the QScrollEvent is a lengthly code not fully shown here. \snippet webkitwidgets/scroller/wheel/wheelwidget.cpp 2 In principle it does three steps. \list \li It calculates and updates the current scroll position as given by QScroller. \li It repaints the widget so that the new position is shown. \li It centers the item as soon as the scrolling stopps. \endlist The following code does the centering. \snippet webkitwidgets/scroller/wheel/wheelwidget.cpp 3 We check if the scrolling is finished which is indicated in the QScrollEvent by the \c isLast flag. We then check if the item is not already centered and if not start a new scroll by calling QScroller::scrollTo. As you can see the QScroller can be used for other things besides simple scroll areas. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/images/0000755000000000000000000000000012273255454032154 5ustar rootroot././@LongLink0000000000000000000000000000016400000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/images/wheel-example.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/doc/images/wh0000644000000000000000000004740012273255454032522 0ustar rootrootPNG  IHDR$sBIT|d pHYs f IDATxw|egkz#=4JzE]Aqg;wy .WGJDDDD})%?,@R9s,H^ 봲$ q5,Xt̶:Ndn͐v>Np:Ksf~O%xEGDDc&%u+ 'H뿓O:* FCS-u&:48{o>A"ȰPzkn=@A $ $!"""r&f--0W@mx@vϗ 1Bz0ٌ¢bԩPk4@///5(@@?|I NƦ&H xBo0A lT*em\R*@ "o7k4 R28ANRC"0 /b0")%H$qc . 0 """"1(=l`R 0&18(EPա~~8<.A^Ua_/YF^GMƌApz455Ad^P35UQ{F-eJ :6&'FcZ-:=MeyΜ;_?=2320v(dBEe!@Sc#:z/?:!H6r$+a2!"""m,[]Wlu][eL9+NiGGuu`4@&TT(.-pDȵ6h1 4 2M 0-46h+<z'"""j1(]pS~٥xxwSOyT(q=^ݿ4kP̭ Y8|0jTUonȁfTWz6Fu fsHDDDԜ6JVV&jk%=zģ6Jkퟕ+Wb[rWj*~S99xgq*'Glܸ /y£[Q ?&?fQ[]TjP]Yz *+1~X4D\I0LШ5Pz):rZ5H(+ Z!yqUI?sO"//?I mClÐaalTCfnBYy9***?82~ ^As 5tzt:̂jDDDD᪍ɧ`4p]wx?z/Q\zj[K{^x/_}㭷pٕe Ɛ!k Vre ?o߶ 'A,GwmJjVb/c557h08>P*LFVkl"""O>  K/f|=n\^_?|mx 8>^a.oUUxb JJ*V[u0K q!eR(Ԉb]}TFYY fxshl:,3(+-7ryEDDD)WmR:|5f4m/eQ\;~T瞇^ż󈊊Kt/O__Ʉ7|Ͳ-[m(iX.ŁM#G~;0JCJ/ e'A*!(0' ɝ#69[Je8`H/웈3FQUAUYoYK(+sq)CR>dvu>Nlcͺ W{T,mPh}Pxm)(\`;1zxH$% GE~Th b$[? w Q^Q؁hlhdr'NZ7>>>ODDDQ(ƆvQl*{PTF lˆmhhl$Y%⨁fSƆ Lq$)`$We"&JF+2ll'BTB*ҥKQU#&60a2a4ҍQWWdDDD$1(]YZڡl2';eWKY\gQuP,-*:=hMw(H Re^ظdԗJ]F3 VD"^ި(ӧ!Sx/  2%8z29RR :* rO$"""FMerTfx{@*Ni\.c;PX=T xwkXP``l |QVVʊr`4B!)ɈBHp0DDD%l%֧%V06@#tnMЀ&Frx{{ ˉFe_E#-:wɍDUT( :|"""7!"""P]""""ݙz{li}""""JK ig""""wl=[l'mhADDDDdaGڣ.E""""rQ$"""" DDDDDDDD@{p]!Q/SS=|"{ /ova/Qo$?:E$&լGw ND} gD-"Gj ?OgV*ODc|y2FE///Q/"11_D(z8߶RP`|Ih6FH<x/"7I3(xEF$H<(ym9ƣ=PQQ F2^&00W|EA0_ġGQG]*(,DQQ1@.ԄrTTT %9 aaay0_c]̗瘯,mT) $#<,R55˃Ng<|';5F /B"`q pZ'&:Pձn`SpE>5.@ 8rgW`U^^~>rrN#u0$%%kjP\T Uu5!@@?7ȩ?CYY9Ι* yBTbX :wSb|/1_ئ>J(++oT*u6XP:OLn/uc"O|sf-1a0T*.\rFkFH={q|!.nz.]lUӯO56Z2yʬAS*Χz(Wy}yu>+<ۈoĉ8vNfdbqt`@Ii)˔J%,;p& Gr0 yTLP:m#zs1_)ֹ/fV"1k lj%n0͸p!?lÑ㑙>Tqc8uj 6>39u LbRp*OfA&\wֹ/}W?0FE5sl6cfj ʪ*444B&a`lSPTT:$g;z~ڹY(/@ll jjj"NA& T()zs0_ ֹg~amģ"',ܼoĸcw~2H$@hh(&M+MEXXmSPRaI.^Ē p!79u'-AZP(Ne&V<݀u9:OY{%VDs]? FMe)fu!gFsmYLWcz`zwUZZ=R`Qtm?pjWϝ7^:W|u櫗MEx7{#㋯VBɓM7\z'x|_7p~wםP\6f /baF$&&tR7aڇ"w0_|C{=}7 `2| 啕Up!>z>%HeRWO>a<|CخEh|W; ݎ{a;g3"uBxۇ"wY( R䄥c0XazZ.kq?JWd 9ns>W?ԑEۉ'McbbFs[7T*/6~o'jjWCđHJJ|ހſEXh(MF:t,~oA}u7HKҋ.a6;ۖM:WLi'QO|,ni(zgP^^B  kZJJKEEE"#"g:鈉zHP9D= E$.0bHIIFzZ.v[ušy쁇EHx4P0_DbbruDy7Gy0n4t~V( |< cW*Q|"W8F-X0nF@m۶9*ٗpםwtqFx/rO=wA0~Xџ]m[a4`Y8ſ<:6Uu5"ƌ8 >> ֋OoMhGs<Qgc|QsAr/l nu0iÏ믻ͲAow!!;gjksܽ{,\pK\*( 3{6j.F$%&~XvN>!!ȈvQb|,O=wQ1̻ R6mlv쇭?Wϙ 6⫕V9Ǐ|M`!KQRYCH<چ((L< NwO>_0WbǪkZ-џqpx{CZh!z.vރ;1_DarE)v6 [@`k=^ICFfpŴvma,͞}W mQO|"qأ(or6}qݵWۻ2U0L4hm[-:wɓ6yjjk~D݉"E@",-t\uرs݇3_]X[:r~ub ziiQWa|˹Lv(,;wa3z4vރ ̚9íL&Caaϋ,ˣ"#[-'*q8 H<چW(^J%6=֮[n ­0jTTVsj ƷZΕWL|vǮT(&mE$kg0((00gBMM-^xn̻‹/AVۗ8xV ,^2bƎ/}zsFW|,zw0_Da2F[x<|""<~uWÏV0W^1 uj5Ao ,4r>Z_|˭xw`ĉ{~w}o[3gb3OyVD"b|sByY<^s5|||X$dm/H_la+?ӯuߺ5= Ǟ'`?p[܆,u!s'M߈w[/¦{tDbc|H8,;a ̕n}PiHx4j*KЈz.1|Y0_Dq' (ᣣHDDDDHDDDD.Y(i""""4٣HDDDD.Y|,lwn+8!_"Nhp/t>%"rE$}Q2hDa|Ah~/I X/"0_Dnm6=Rxh IDAT/"0_DwC^uƍQrTT*1`@QOoQ瘯c%W1_}=O*A*!<< Y^*TTVVcD?esq㘯aXd2d2̘~%CϞ="'RyxN:t4==8Tc:|Q^Q2 I}.s㘯ވ-|uGݽ׼ GJƦ&jkjq2#eetEBbF ={9NA)))5jۥk!987bz 7j_,nszn2^JgEEر'f72AEynZHedN8 B999hlhYsq㘯64f;+2lFe R aaϚw~ȕJ\?w6"##W&F'2j1`@Q̓hIӼ L2EXfyJ3z4i8q2{(c%<'|Wy0K~nngK* g?f.ٗ߷%%%7z֠҆CT(ıc7 Mm-ϥ'"#d7<'|BW|Bg &C{7%+d`22LNB x)d`2`oZ-A Lm0%w:_Jy.{c%<'|G0;Pd`2PMf:lo^̘1&#ƌjr^e/zc%<'|ͦǑa;>%&B^8a) Rր jljZ~MzZYsq㘯C{EKWEGa8ϸka(+)F3ft凇:\^`<'|QKxN:&fbwpuEf?|PR\bDDD`hr"23pq!!a6z-***/cONGVf2N@\lLV#;+Wd=I1_c>yہkkػw?N; o/b*~ڹ ?؁@C"NFuu5`p @P?FdF֬Y10 Ks󊬇98ZsqWagFF%1^*@eY00: nYY()-P*ÈÐP֘R"'.Æb8{tsq㘯ң(YpęUluhTHqTY,wx|d2YWQ|z`k(CEƏŠA]^yeeBn̟ GF1_Da\zfbknw3s|݆r;F}/\ԑcԑcKPPXV|&NQ=n^} L&Gck7 xsA )p18,GHx4V^cO`88 )pCʾ FiiJKcYB£?[v~?QHH[o5:zbHLf[W\otX~FDedfs#%9s̆/V~ ^Rm?>x̛wJC`x~ٟ1wl>YO-b/|mE72N>s[ABX"z쑇]|70LXأ@bB|>t:,hC#ߣS!:wre!ɓ&׷/F^~>.浰%2:j՚f=쑅 7gnF7qgpc`***`ȑ?yޫneddBV㚫i'Xmoul̫ONNTTT.WVV}: %˔ HINL?1_W/l=n>^#up u6bά(,,C6uZ{+ J^+4B߮o׶Zc[uz]egrz֣aZ|QG1_-cfi(J$_ H0f.l_gl/Zy DEa \CZf6[6u 6HKMuZ&J[=vw}j3z^z!002 o.ח]~G1_Θ/,̗3u8(ߊ-h;wI]^%5ae@jz\t Ne8 hqoX{NOϵ6/guK۰sDJJ2&OBxѭk4Ѐ(;w.:m3aX:}Ǎv Uu'_#J&nyZ vA7`=̗3: r`'lހܳlu=\8deg#+;ǾO>fi;~u;R)xٗ_~QSSzFlnKtWdd$T*8IN j7ef?PXXԡR|9b31_68<ҏGSxsf̈́7݇`\5J޳aÇax NǬW,]X|P\?>SرsNLVjN@MM-mٌvƑG1s54i^1c:̟_Zg}ko8q$ qǯnǗ+n~Z|1_$ 끦qxאvcCk廍Nڼ"#eVddd??< $8a}/V~HKMEfV66myy1y$|;Hޡأh_c,OmZS&OBVv Ə[6#-y2Qga/|H8,<0>B5#[]9$<5ί!mn W|-WNJKQ,\jQc#7_hK,hD6HD^"7267pKJjJ/ۺz5Hsb1(!.h4߇aH9qH9<-w[`HH1nT';)ɘ;g6|}|U=::nݷifϿĎ;qp|\T'@·kbwd2P+D"He*;v$^y5޳-^}_K|g΀ .n6]W^a/SxŗW^[ofm[`РXJ~RAZ1.c#q- ܵsfJ!$xڣ>E1W_uݺM:QQQxW!ixrQ[[m/4!deBy)Iغmgo>C >.Ç;봩S!:ҞO$*Hrj\=NO8gpc`***___9zA>Y3rZl iEE"EYn=,6D"R5r:xwk۵-SS[kF{wZ-|}}R:<ޣ㎉qZou<*H,x/~iGQ${?7-'`)bKKM;~E ##ap< H;,{9*x/jNXQdbDFD๥ϸ͆My)O/ R.u"xPVb?n,|||sn\h4QQN!;w<.\uXT*0qrTw/"0_e=mjj3F\MzJ,}WIl=rf2[f2ڬ\Sص{L iBMM 2P[[kV!** p}` /oUӯ8 L:`wƌaG+0}\L8!!(,,BVv^|aFdF Fۓif{eW|ukO, Ez6憎0,WF&zzZ]9p2#7v,$'˹mBH%|ػo1k ,}I<X?uj5r9bc!HQVV?qARRbw*2Ea/rÛYOQ4{VV kh4b=عk7>S<#ބbH<EiכY:&b_}I'`N8w4 _N]/|1_jg555u&.d2aРEbR"rrN jɧ`0 <<J/%thjj†MyyϿy7߄ĄI v:\t EYy96l Au $hZ߰iijZ<8M=sro[Nb/0_SϞmԟ***amCXh(Ҿh` lRb;r/uFrrd2}yIi)o؄vcXP[WLvj_𑣈¢"믵'//m`6ߖ-[h0+0jg;}OMT!bl|1_6Wlw+<6JeP(uKd2NYp*'!!&&پ,,4 C3BiS^xM@e:8q~d6)/@Ii)a7!!qqTPZS j~Wb|~O]& 鰶vEc6 B&XFCC#ˡjlm2 B  @m] Ʉ*-Ak 1.7,, PZZAZj|5|u.jjuvvw*khhhZu}][׽O۟g 0za[A||]g kP*AZܿK 0j5C8pP߷_nt\%\q82U6J5X%/]*S#BD!++Fy[y1_oh3~麷u׷߯7:KC[CO=۞|ꏂ!JPUUZ o._f יh7M.M>v(`rJFe  ,lM^JX orп7:KC[CHGQQQ()-EVv6Fr/@o0 $$^^:l2GD"ul6R X\g^VRqnqIe;^^P` Qѭ u|x//5hFytT$j5Μ=iJ*T f/̙HHlVvyybccQO8 Q$.O?$%%aȑhcؿ]W]ſ j6"QO}v| uk1qg ظq:Q""GzM7>Əwݶ={}xW"2Q xp?]SWW=2F!R[kI3(値X6eMڔxVI*T@3fGG킬aMBqtN qC6~߽+aᤥQ_]:ر@Fy'EE?z5++^DPUuҾ=??DX{2`@233/ժU땸MSq]hT\DBBBH]`[l9˖-_~ KX(gΒhS->>>ۗ(***xضm;99o9cڵ0q"7DDPP??? ̝˂ ޽;x:OdE5߰dѿ,))#&&/OVfΤ`K>Ccr V\ӱ8]Ũd<<<ۊ4bӦM#aذWVbOEAfV+w`DFFu\)YbxgU -Zh%8:֮ϏC;o>Ó7ÓxoLY><UUVVkw!;w>O03f"n@rs7e?n}}=EErc~(uFGWL)\zVLխ[7Ffth>//gdg39b{nO4Ukkk=6^-omv˙1s٣S/s_߭ߊ"rrQt-H5#"r]ԇ/Ç)-;;1[pk,yyq͍cZ08kx/^g744ԇRS/]ZNk`Ofq%]a"rY#NvKϖQldǦ<֬^EhhCY>/W=k }, S&OI.]c?=SEC\xGqEQ}}}9@^}|m1 0i{]]Vz{{f&Ù9돬]}b׮>K©GdzEc<5iv#?WWWDz+(,,kWo3*.Ŧ}aaaa,=0`{l<{\Ogl~+a'*/5YY>Vkf.'$ȸxdapQ:C~OTd$!!9sR~sҞaA񮉈\@;o7k"1{n>C fo@){ߟ[?n[I-5Oel~s?`YIJ&s5<?B^&' 7w#71stn㥗_Ò>>xG3枻SEC>8^1&?omNbp{6tf[ mh|*+8edYI=-""""^{o]:Qt\h5 zډ""""N{oHf,""""+8Lg)GQDDDqfn5Xj`f&t,f3a`ZTބC[gfxPvL&7"tʰX,m蹭ϬCB9z8罹]*""""jb!4$MzM.rDDDDjj(m?4ӊؘ d5EDDDPtӸ""""pz,""""BcrSC """"re+ڽ L`ƀg_k< ÄٻJfh8_OJVax]KTSSjW).fhB9@ƘX-0Ա("""rŨ>Ew]}=~WtW gpwMlɜ}j& O,"""3x쮪 Fǚ}uʂxX56֩m_mnIENDB`././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/wheelwidget.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/wheel/wheelwidget.c0000644000000000000000000002053312273255454032621 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "wheelwidget.h" #define WHEEL_SCROLL_OFFSET 50000.0 AbstractWheelWidget::AbstractWheelWidget(bool touch, QWidget *parent) : QWidget(parent) , m_currentItem(0) , m_itemOffset(0) { // ![0] QScroller::grabGesture(this, touch ? QScroller::TouchGesture : QScroller::LeftMouseButtonGesture); // ![0] } AbstractWheelWidget::~AbstractWheelWidget() { } int AbstractWheelWidget::currentIndex() const { return m_currentItem; } void AbstractWheelWidget::setCurrentIndex(int index) { if (index >= 0 && index < itemCount()) { m_currentItem = index; m_itemOffset = 0; update(); } } bool AbstractWheelWidget::event(QEvent *e) { switch (e->type()) { // ![1] case QEvent::ScrollPrepare: { // We set the snap positions as late as possible so that we are sure // we get the correct itemHeight QScroller *scroller = QScroller::scroller(this); scroller->setSnapPositionsY( WHEEL_SCROLL_OFFSET, itemHeight() ); QScrollPrepareEvent *se = static_cast(e); se->setViewportSize(QSizeF(size())); // we claim a huge scrolling area and a huge content position and // hope that the user doesn't notice that the scroll area is restricted se->setContentPosRange(QRectF(0.0, 0.0, 0.0, WHEEL_SCROLL_OFFSET * 2)); se->setContentPos(QPointF(0.0, WHEEL_SCROLL_OFFSET + m_currentItem * itemHeight() + m_itemOffset)); se->accept(); return true; } // ![1] // ![2] case QEvent::Scroll: { QScrollEvent *se = static_cast(e); qreal y = se->contentPos().y(); int iy = y - WHEEL_SCROLL_OFFSET; int ih = itemHeight(); // ![2] // ![3] // -- calculate the current item position and offset and redraw the widget int ic = itemCount(); if (ic>0) { m_currentItem = iy / ih % ic; m_itemOffset = iy % ih; // take care when scrolling backwards. Modulo returns negative numbers if (m_itemOffset < 0) { m_itemOffset += ih; m_currentItem--; } if (m_currentItem < 0) m_currentItem += ic; } // -- repaint update(); se->accept(); return true; // ![3] } default: return QWidget::event(e); } return true; } void AbstractWheelWidget::paintEvent(QPaintEvent* event) { Q_UNUSED( event ); // -- first calculate size and position. int w = width(); int h = height(); QPainter painter(this); QPalette palette = QApplication::palette(); QPalette::ColorGroup colorGroup = isEnabled() ? QPalette::Active : QPalette::Disabled; // linear gradient brush QLinearGradient grad(0.5, 0, 0.5, 1.0); grad.setColorAt(0, palette.color(colorGroup, QPalette::ButtonText)); grad.setColorAt(0.2, palette.color(colorGroup, QPalette::Button)); grad.setColorAt(0.8, palette.color(colorGroup, QPalette::Button)); grad.setColorAt(1.0, palette.color(colorGroup, QPalette::ButtonText)); grad.setCoordinateMode( QGradient::ObjectBoundingMode ); QBrush gBrush( grad ); // paint a border and background painter.setPen(palette.color(colorGroup, QPalette::ButtonText)); painter.setBrush(gBrush); // painter.setBrushOrigin( QPointF( 0.0, 0.0 ) ); painter.drawRect( 0, 0, w-1, h-1 ); // paint inner border painter.setPen(palette.color(colorGroup, QPalette::Button)); painter.setBrush(Qt::NoBrush); painter.drawRect( 1, 1, w-3, h-3 ); // paint the items painter.setClipRect( QRect( 3, 3, w-6, h-6 ) ); painter.setPen(palette.color(colorGroup, QPalette::ButtonText)); int iH = itemHeight(); int iC = itemCount(); if (iC > 0) { m_itemOffset = m_itemOffset % iH; for (int i=-h/2/iH; i<=h/2/iH+1; i++) { int itemNum = m_currentItem + i; while (itemNum < 0) itemNum += iC; while (itemNum >= iC) itemNum -= iC; paintItem(&painter, itemNum, QRect(6, h/2 +i*iH - m_itemOffset - iH/2, w-6, iH )); } } // draw a transparent bar over the center QColor highlight = palette.color(colorGroup, QPalette::Highlight); highlight.setAlpha(150); QLinearGradient grad2(0.5, 0, 0.5, 1.0); grad2.setColorAt(0, highlight); grad2.setColorAt(1.0, highlight.lighter()); grad2.setCoordinateMode( QGradient::ObjectBoundingMode ); QBrush gBrush2( grad2 ); QLinearGradient grad3(0.5, 0, 0.5, 1.0); grad3.setColorAt(0, highlight); grad3.setColorAt(1.0, highlight.darker()); grad3.setCoordinateMode( QGradient::ObjectBoundingMode ); QBrush gBrush3( grad3 ); painter.fillRect( QRect( 0, h/2 - iH/2, w, iH/2 ), gBrush2 ); painter.fillRect( QRect( 0, h/2, w, iH/2 ), gBrush3 ); } /*! Rotates the wheel widget to a given index. You can also give an index greater than itemCount or less than zero in which case the wheel widget will scroll in the given direction and end up with (index % itemCount) */ void AbstractWheelWidget::scrollTo(int index) { QScroller *scroller = QScroller::scroller(this); scroller->scrollTo(QPointF(0, WHEEL_SCROLL_OFFSET + index * itemHeight()), 5000); } /*! \class StringWheelWidget \brief The StringWheelWidget class is an implementation of the AbstractWheelWidget class that draws QStrings as items. \sa AbstractWheelWidget */ StringWheelWidget::StringWheelWidget(bool touch) : AbstractWheelWidget(touch) { } QStringList StringWheelWidget::items() const { return m_items; } void StringWheelWidget::setItems( const QStringList &items ) { m_items = items; if (m_currentItem >= items.count()) m_currentItem = items.count()-1; update(); } QSize StringWheelWidget::sizeHint() const { // determine font size QFontMetrics fm(font()); return QSize( fm.width("m") * 10 + 6, fm.height() * 7 + 6 ); } QSize StringWheelWidget::minimumSizeHint() const { QFontMetrics fm(font()); return QSize( fm.width("m") * 5 + 6, fm.height() * 3 + 6 ); } void StringWheelWidget::paintItem(QPainter* painter, int index, const QRect &rect) { painter->drawText(rect, Qt::AlignCenter, m_items.at(index)); } int StringWheelWidget::itemHeight() const { QFontMetrics fm(font()); return fm.height(); } int StringWheelWidget::itemCount() const { return m_items.count(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/0000755000000000000000000000000012273255454030014 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/plotwidget.h0000644000000000000000000000536712273255454032362 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 PLOTWIDGET_H #define PLOTWIDGET_H #include #include QT_BEGIN_NAMESPACE class QPushButton; class QLabel; class QScroller; QT_END_NAMESPACE class PlotWidget : public QWidget { Q_OBJECT public: PlotWidget(bool smallscreen = false); void setScroller(QWidget *widget); public slots: void reset(); protected: void resizeEvent(QResizeEvent *); void paintEvent(QPaintEvent *); bool eventFilter(QObject *obj, QEvent *ev); private: struct PlotItem { QPointF velocity; QPointF contentPosition; QPointF overshootPosition; }; void addPlotItem(const PlotItem &pi); QWidget *m_widget; QList m_plotitems; qreal minMaxVelocity, minMaxPosition; QPushButton *m_clear; QLabel *m_legend; }; #endif ././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/settingswidget.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/settingswidget0000644000000000000000000000645412273255454033014 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 SETTINGSWIDGET_H #define SETTINGSWIDGET_H #include QT_BEGIN_NAMESPACE class QScroller; class QGridLayout; class QSpinBox; class QComboBox; class QCheckBox; class QPlainTextEdit; QT_END_NAMESPACE class MetricItemUpdater; class SnapOverlay; class SettingsWidget : public QScrollArea { Q_OBJECT public: SettingsWidget(bool smallscreen = false); void setScroller(QWidget *widget); protected: bool eventFilter(QObject *, QEvent *); private slots: void scrollTo(); void snapModeChanged(int); void snapPositionsChanged(); private: enum SnapMode { NoSnap, SnapToInterval, SnapToList }; void addToGrid(QGridLayout *grid, QWidget *label, int widgetCount, ...); QList toPositionList(QPlainTextEdit *list, int vmin, int vmax); void updateScrollRanges(); QWidget *m_widget; QSpinBox *m_scrollx, *m_scrolly, *m_scrolltime; QList m_metrics; SnapMode m_snapxmode; QComboBox *m_snapx; QWidget *m_snapxinterval; QPlainTextEdit *m_snapxlist; QSpinBox *m_snapxfirst; QSpinBox *m_snapxstep; SnapMode m_snapymode; QComboBox *m_snapy; QWidget *m_snapyinterval; QPlainTextEdit *m_snapylist; QSpinBox *m_snapyfirst; QSpinBox *m_snapystep; SnapOverlay *m_snapoverlay; bool m_smallscreen; }; #endif qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/plotwidget.cpp0000644000000000000000000001655312273255454032714 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include #include #include #include #include "plotwidget.h" #include "qscroller.h" PlotWidget::PlotWidget(bool /*smallscreen*/) : QWidget(), m_widget(0) { setWindowTitle(QLatin1String("Plot")); m_clear = new QPushButton(QLatin1String("Clear"), this); connect(m_clear, SIGNAL(clicked()), this, SLOT(reset())); m_legend = new QLabel(this); QString legend; QTextStream ts(&legend); // ok. this wouldn't pass the w3c html verification... ts << ""; ts << ""; ts << ""; ts << ""; ts << ""; ts << ""; ts << ""; ts << "
Velocity X
Velocity Y
Content Position X
Content Position Y
Overshoot Position X
Overshoot Position Y
"; m_legend->setText(legend); } void PlotWidget::setScroller(QWidget *widget) { if (QAbstractScrollArea *area = qobject_cast(widget)) widget = area->viewport(); if (m_widget) m_widget->removeEventFilter(this); m_widget = widget; reset(); if (m_widget) m_widget->installEventFilter(this); } bool PlotWidget::eventFilter(QObject *obj, QEvent *ev) { if (ev->type() == QEvent::Scroll) { QScrollEvent *se = static_cast(ev); QScroller *scroller = QScroller::scroller(m_widget); QPointF v = scroller->velocity(); //v.rx() *= scroller->pixelPerMeter().x(); //v.ry() *= scroller->pixelPerMeter().y(); PlotItem pi = { v, se->contentPos(), se->overshootDistance() }; addPlotItem(pi); } return QWidget::eventFilter(obj, ev); } static inline void doMaxMin(const QPointF &v, qreal &minmaxv) { minmaxv = qMax(minmaxv, qMax(qAbs(v.x()), qAbs(v.y()))); } void PlotWidget::addPlotItem(const PlotItem &pi) { m_plotitems.append(pi); minMaxVelocity = minMaxPosition = 0; while (m_plotitems.size() > 500) m_plotitems.removeFirst(); foreach (const PlotItem &pi, m_plotitems) { doMaxMin(pi.velocity, minMaxVelocity); doMaxMin(pi.contentPosition, minMaxPosition); doMaxMin(pi.overshootPosition, minMaxPosition); } update(); } void PlotWidget::reset() { m_plotitems.clear(); minMaxVelocity = minMaxPosition = 0; update(); } void PlotWidget::resizeEvent(QResizeEvent *) { QSize cs = m_clear->sizeHint(); QSize ls = m_legend->sizeHint(); m_clear->setGeometry(4, 4, cs.width(), cs.height()); m_legend->setGeometry(4, height() - ls.height() - 4, ls.width(), ls.height()); } void PlotWidget::paintEvent(QPaintEvent *) { #define SCALE(v, mm) ((qreal(1) - (v / mm)) * qreal(0.5) * height()) QColor rvColor = Qt::red; QColor cpColor = Qt::green; QColor opColor = Qt::blue; QPainter p(this); //p.setRenderHints(QPainter::Antialiasing); //too slow for 60fps p.fillRect(rect(), Qt::white); p.setPen(Qt::black); p.drawLine(0, SCALE(0, 1), width(), SCALE(0, 1)); if (m_plotitems.isEmpty()) return; int x = 2; int offset = m_plotitems.size() - width() / 2; QList::const_iterator it = m_plotitems.constBegin(); if (offset > 0) it += (offset - 1); const PlotItem *last = &(*it++); while (it != m_plotitems.constEnd()) { p.setPen(rvColor.light()); p.drawLine(qreal(x - 2), SCALE(last->velocity.x(), minMaxVelocity), qreal(x), SCALE(it->velocity.x(), minMaxVelocity)); p.setPen(rvColor.dark()); p.drawLine(qreal(x - 2), SCALE(last->velocity.y(), minMaxVelocity), qreal(x), SCALE(it->velocity.y(), minMaxVelocity)); p.setPen(cpColor.light()); p.drawLine(qreal(x - 2), SCALE(last->contentPosition.x(), minMaxPosition), qreal(x), SCALE(it->contentPosition.x(), minMaxPosition)); p.setPen(cpColor.dark()); p.drawLine(qreal(x - 2), SCALE(last->contentPosition.y(), minMaxPosition), qreal(x), SCALE(it->contentPosition.y(), minMaxPosition)); p.setPen(opColor.light()); p.drawLine(qreal(x - 2), SCALE(last->overshootPosition.x(), minMaxPosition), qreal(x), SCALE(it->overshootPosition.x(), minMaxPosition)); p.setPen(opColor.dark()); p.drawLine(qreal(x - 2), SCALE(last->overshootPosition.y(), minMaxPosition), qreal(x), SCALE(it->overshootPosition.y(), minMaxPosition)); last = &(*it++); x += 2; } QString toptext = QString("%1 [m/s] / %2 [pix]").arg(minMaxVelocity, 0, 'f', 2).arg(minMaxPosition, 0, 'f', 2); QString bottomtext = QString("-%1 [m/s] / -%2 [pix]").arg(minMaxVelocity, 0, 'f', 2).arg(minMaxPosition, 0, 'f', 2); p.setPen(Qt::black); p.drawText(rect(), Qt::AlignTop | Qt::AlignHCenter, toptext); p.drawText(rect(), Qt::AlignBottom | Qt::AlignHCenter, bottomtext); #undef SCALE } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/main.cpp0000644000000000000000000001743112273255454031452 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include #include #include #include #include #include #include #include #include #include #include #include "settingswidget.h" #include "plotwidget.h" class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(bool smallscreen, bool touch) : QMainWindow(), m_touch(touch) { m_list = new QListWidget(); m_list->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); m_list_scroller = installKineticScroller(m_list); for (int i = 0; i < 1000; ++i) new QListWidgetItem(QString("This is a test text %1 %2").arg(i).arg(QString("--------").left(i % 8)), m_list); connect(m_list, SIGNAL(itemActivated(QListWidgetItem*)), this, SLOT(listItemActivated(QListWidgetItem*))); connect(m_list, SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(listItemClicked(QListWidgetItem*))); connect(m_list, SIGNAL(itemPressed(QListWidgetItem*)), this, SLOT(listItemPressed(QListWidgetItem*))); connect(m_list, SIGNAL(itemSelectionChanged()), this, SLOT(listItemSelectionChanged())); connect(m_list, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(listItemCurrentChanged(QListWidgetItem*))); m_web = new QWebView(); m_web_scroller = installKineticScroller(m_web); QTimer::singleShot(1000, this, SLOT(loadUrl())); m_settings = new SettingsWidget(smallscreen); installKineticScroller(m_settings); m_plot = new PlotWidget(smallscreen); QStackedWidget *stack = new QStackedWidget(); stack->addWidget(m_list); stack->addWidget(m_web); QActionGroup *pages = new QActionGroup(this); pages->setExclusive(true); QSignalMapper *mapper = new QSignalMapper(this); connect(mapper, SIGNAL(mapped(int)), stack, SLOT(setCurrentIndex(int))); createAction("List", pages, mapper, 0, true); createAction("Web", pages, mapper, 1); if (smallscreen) { stack->addWidget(m_settings); stack->addWidget(m_plot); createAction("Settings", pages, mapper, 2); createAction("Plot", pages, mapper, 3); setCentralWidget(stack); } else { QSplitter *split = new QSplitter(); m_settings->setMinimumWidth(m_settings->sizeHint().width()); split->addWidget(stack); split->addWidget(m_settings); split->addWidget(m_plot); setCentralWidget(split); } menuBar()->addMenu(QLatin1String("Pages"))->addActions(pages->actions()); connect(stack, SIGNAL(currentChanged(int)), this, SLOT(pageChanged(int))); pageChanged(0); } private slots: void pageChanged(int page) { if (page < 0 || page > 1) return; switch (page) { case 0: m_settings->setScroller(m_list); m_plot->setScroller(m_list); break; case 1: m_settings->setScroller(m_web); m_plot->setScroller(m_web); break; default: break; } } void loadUrl() { m_web->load(QUrl("http://www.google.com")); } void listItemActivated(QListWidgetItem *lwi) { qWarning() << "Item ACTIVATED: " << lwi->text(); } void listItemClicked(QListWidgetItem *lwi) { qWarning() << "Item CLICKED: " << lwi->text(); } void listItemPressed(QListWidgetItem *lwi) { qWarning() << "Item PRESSED: " << lwi->text(); } void listItemCurrentChanged(QListWidgetItem *lwi) { qWarning() << "Item CURRENT: " << (lwi ? lwi->text() : QString("(none)")); } void listItemSelectionChanged() { int n = m_list->selectedItems().count(); qWarning("Item%s SELECTED: %d", n == 1 ? "" : "s", n); foreach (QListWidgetItem *lwi, m_list->selectedItems()) qWarning() << " " << lwi->text(); } private: QAction *createAction(const char *text, QActionGroup *group, QSignalMapper *mapper, int mapping, bool checked = false) { QAction *a = new QAction(QLatin1String(text), group); a->setCheckable(true); a->setChecked(checked); #if defined(Q_WS_MAC) a->setMenuRole(QAction::NoRole); #endif mapper->setMapping(a, mapping); connect(a, SIGNAL(toggled(bool)), mapper, SLOT(map())); return a; } QScroller *installKineticScroller(QWidget *w) { if (QAbstractScrollArea *area = qobject_cast(w)) { QScroller::grabGesture(area->viewport(), m_touch ? QScroller::TouchGesture : QScroller::LeftMouseButtonGesture); return QScroller::scroller(area->viewport()); } else if (QWebView *web = qobject_cast(w)) { QScroller::grabGesture(web, m_touch ? QScroller::TouchGesture : QScroller::LeftMouseButtonGesture); } return QScroller::scroller(w); } private: QListWidget *m_list; QWebView *m_web; QScroller *m_list_scroller, *m_web_scroller; SettingsWidget *m_settings; PlotWidget *m_plot; bool m_touch; }; int main(int argc, char **argv) { QApplication a(argc, argv); #if defined(Q_WS_MAEMO_5) || defined(Q_WS_S60) || defined(Q_WS_WINCE) bool smallscreen = true; #else bool smallscreen = false; #endif bool touch = false; if (a.arguments().contains(QLatin1String("--small"))) smallscreen = true; if (a.arguments().contains(QLatin1String("--touch"))) touch = true; MainWindow mw(smallscreen, touch); if (smallscreen) mw.showMaximized(); else mw.show(); #if defined(Q_WS_MAC) mw.raise(); #endif return a.exec(); } #include "main.moc" ././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/settingswidget.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/settingswidget0000644000000000000000000006311712273255454033013 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "math.h" #include "settingswidget.h" #include "qscroller.h" #include "qscrollerproperties.h" class SnapOverlay : public QWidget { Q_OBJECT public: SnapOverlay(QWidget *w) : QWidget(w) { setAttribute(Qt::WA_TransparentForMouseEvents); if (QAbstractScrollArea *area = qobject_cast(w)) { connect(area->horizontalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(update())); connect(area->verticalScrollBar(), SIGNAL(valueChanged(int)), this, SLOT(update())); area->viewport()->installEventFilter(this); } } void clear(Qt::Orientation o) { m_snap[o].clear(); update(); } void set(Qt::Orientation o, qreal first, qreal step) { m_snap[o] = QList() << -Q_INFINITY << first << step; update(); } void set(Qt::Orientation o, const QList &list) { m_snap[o] = list; update(); } protected: bool eventFilter(QObject *o, QEvent *e) { if (QAbstractScrollArea *area = qobject_cast(parentWidget())) { if (area->viewport() == o) { if (e->type() == QEvent::Move || e->type() == QEvent::Resize) { setGeometry(area->viewport()->rect()); } } } return false; } void paintEvent(QPaintEvent *e) { if (QAbstractScrollArea *area = qobject_cast(parentWidget())) { int dx = area->horizontalScrollBar()->value(); int dy = area->verticalScrollBar()->value(); QPainter paint(this); paint.fillRect(e->rect(), Qt::transparent); paint.setPen(QPen(Qt::red, 9)); if (m_snap[Qt::Horizontal].isEmpty()) { } else if (m_snap[Qt::Horizontal][0] == -Q_INFINITY) { int start = int(m_snap[Qt::Horizontal][1]); int step = int(m_snap[Qt::Horizontal][2]); if (step > 0) { for (int i = start; i < area->horizontalScrollBar()->maximum(); i += step) paint.drawPoint(i - dx, 5); } } else { foreach (qreal r, m_snap[Qt::Horizontal]) paint.drawPoint(int(r) - dx, 5); } paint.setPen(QPen(Qt::green, 9)); if (m_snap[Qt::Vertical].isEmpty()) { } else if (m_snap[Qt::Vertical][0] == -Q_INFINITY) { int start = int(m_snap[Qt::Vertical][1]); int step = int(m_snap[Qt::Vertical][2]); if (step > 0) { for (int i = start; i < area->verticalScrollBar()->maximum(); i += step) paint.drawPoint(5, i - dy); } } else { foreach (qreal r, m_snap[Qt::Vertical]) paint.drawPoint(5, int(r) - dy); } } } private: QMap > m_snap; }; struct MetricItem { QScrollerProperties::ScrollMetric metric; const char *name; int scaling; const char *unit; QVariant min, max; QVariant step; }; class MetricItemUpdater : public QObject { Q_OBJECT public: MetricItemUpdater(MetricItem *item) : m_item(item) , m_widget(0) , m_slider(0) , m_combo(0) , m_valueLabel(0) { m_frameRateType = QVariant::fromValue(QScrollerProperties::Standard).userType(); m_overshootPolicyType = QVariant::fromValue(QScrollerProperties::OvershootWhenScrollable).userType(); if (m_item->min.type() == QVariant::EasingCurve) { m_combo = new QComboBox(); m_combo->addItem("OutQuad", QEasingCurve::OutQuad); m_combo->addItem("OutCubic", QEasingCurve::OutCubic); m_combo->addItem("OutQuart", QEasingCurve::OutQuart); m_combo->addItem("OutQuint", QEasingCurve::OutQuint); m_combo->addItem("OutExpo", QEasingCurve::OutExpo); m_combo->addItem("OutSine", QEasingCurve::OutSine); m_combo->addItem("OutCirc", QEasingCurve::OutCirc); } else if (m_item->min.userType() == m_frameRateType) { m_combo = new QComboBox(); m_combo->addItem("Standard", QScrollerProperties::Standard); m_combo->addItem("60 FPS", QScrollerProperties::Fps60); m_combo->addItem("30 FPS", QScrollerProperties::Fps30); m_combo->addItem("20 FPS", QScrollerProperties::Fps20); } else if (m_item->min.userType() == m_overshootPolicyType) { m_combo = new QComboBox(); m_combo->addItem("When Scrollable", QScrollerProperties::OvershootWhenScrollable); m_combo->addItem("Always On", QScrollerProperties::OvershootAlwaysOn); m_combo->addItem("Always Off", QScrollerProperties::OvershootAlwaysOff); } else { m_slider = new QSlider(Qt::Horizontal); m_slider->setSingleStep(1); m_slider->setMinimum(-1); m_slider->setMaximum(qRound((m_item->max.toReal() - m_item->min.toReal()) / m_item->step.toReal())); m_slider->setValue(-1); m_valueLabel = new QLabel(); } m_nameLabel = new QLabel(QLatin1String(m_item->name)); if (m_item->unit && m_item->unit[0]) m_nameLabel->setText(m_nameLabel->text() + QLatin1String(" [") + QLatin1String(m_item->unit) + QLatin1String("]")); m_resetButton = new QToolButton(); m_resetButton->setText(QLatin1String("Reset")); m_resetButton->setEnabled(false); connect(m_resetButton, SIGNAL(clicked()), this, SLOT(reset())); if (m_slider) { connect(m_slider, SIGNAL(valueChanged(int)), this, SLOT(controlChanged(int))); m_slider->setMinimum(0); } else if (m_combo) { connect(m_combo, SIGNAL(currentIndexChanged(int)), this, SLOT(controlChanged(int))); } } void setScroller(QWidget *widget) { m_widget = widget; QScroller *scroller = QScroller::scroller(widget); QScrollerProperties properties = QScroller::scroller(widget)->scrollerProperties(); if (m_slider) m_slider->setEnabled(scroller); if (m_combo) m_combo->setEnabled(scroller); m_nameLabel->setEnabled(scroller); if (m_valueLabel) m_valueLabel->setEnabled(scroller); m_resetButton->setEnabled(scroller); if (!scroller) return; m_default_value = properties.scrollMetric(m_item->metric); valueChanged(m_default_value); } QWidget *nameLabel() { return m_nameLabel; } QWidget *valueLabel() { return m_valueLabel; } QWidget *valueControl() { if (m_combo) return m_combo; else return m_slider; } QWidget *resetButton() { return m_resetButton; } private slots: void valueChanged(const QVariant &v) { m_value = v; if (m_slider) { switch (m_item->min.type()) { case QMetaType::Float: case QVariant::Double: { m_slider->setValue(qRound((m_value.toReal() * m_item->scaling - m_item->min.toReal()) / m_item->step.toReal())); break; } case QVariant::Int: { m_slider->setValue((m_value.toInt() * m_item->scaling - m_item->min.toInt()) / m_item->step.toInt()); break; } default: break; } } else if (m_combo) { if (m_item->min.type() == QVariant::EasingCurve) { m_combo->setCurrentIndex(m_combo->findData(v.toEasingCurve().type())); } else if (m_item->min.userType() == m_overshootPolicyType) { m_combo->setCurrentIndex(m_combo->findData(v.value())); } else if (m_item->min.userType() == m_frameRateType) { m_combo->setCurrentIndex(m_combo->findData(v.value())); } } } void controlChanged(int value) { bool combo = (m_combo && (sender() == m_combo)); QString text; if (m_slider && !combo) { switch (m_item->min.type()) { case QMetaType::Float: case QVariant::Double: { qreal d = m_item->min.toReal() + qreal(value) * m_item->step.toReal(); text = QString::number(d); m_value = d / qreal(m_item->scaling); break; } case QVariant::Int: { int i = m_item->min.toInt() + qRound(qreal(value) * m_item->step.toReal()); text = QString::number(i); m_value = i / m_item->scaling; break; } default: break; } } else if (m_combo && combo) { if (m_item->min.type() == QVariant::EasingCurve) { m_value = QVariant(QEasingCurve(static_cast(m_combo->itemData(value).toInt()))); } else if (m_item->min.userType() == m_overshootPolicyType) { m_value = QVariant::fromValue(static_cast(m_combo->itemData(value).toInt())); } else if (m_item->min.userType() == m_frameRateType) { m_value = QVariant::fromValue(static_cast(m_combo->itemData(value).toInt())); } } if (m_valueLabel) m_valueLabel->setText(text); if (m_widget && QScroller::scroller(m_widget)) { QScrollerProperties properties = QScroller::scroller(m_widget)->scrollerProperties(); properties.setScrollMetric(m_item->metric, m_value); QScroller::scroller(m_widget)->setScrollerProperties(properties); } m_resetButton->setEnabled(m_value != m_default_value); } void reset() { QScrollerProperties properties = QScroller::scroller(m_widget)->scrollerProperties(); properties.setScrollMetric(m_item->metric, m_value); QScroller::scroller(m_widget)->setScrollerProperties(properties); valueChanged(m_default_value); } private: MetricItem *m_item; int m_frameRateType; int m_overshootPolicyType; QWidget *m_widget; QSlider *m_slider; QComboBox *m_combo; QLabel *m_nameLabel, *m_valueLabel; QToolButton *m_resetButton; QVariant m_value, m_default_value; }; #define METRIC(x) QScrollerProperties::x, #x MetricItem items[] = { { METRIC(MousePressEventDelay), 1000, "ms", qreal(0), qreal(2000), qreal(10) }, { METRIC(DragStartDistance), 1000, "mm", qreal(1), qreal(20), qreal(0.1) }, { METRIC(DragVelocitySmoothingFactor), 1, "", qreal(0), qreal(1), qreal(0.1) }, { METRIC(AxisLockThreshold), 1, "", qreal(0), qreal(1), qreal(0.01) }, { METRIC(ScrollingCurve), 1, "", QEasingCurve(), 0, 0 }, { METRIC(DecelerationFactor), 1, "", qreal(0), qreal(3), qreal(0.01) }, { METRIC(MinimumVelocity), 1, "m/s", qreal(0), qreal(7), qreal(0.01) }, { METRIC(MaximumVelocity), 1, "m/s", qreal(0), qreal(7), qreal(0.01) }, { METRIC(MaximumClickThroughVelocity), 1, "m/s", qreal(0), qreal(7), qreal(0.01) }, { METRIC(AcceleratingFlickMaximumTime), 1000, "ms", qreal(100), qreal(5000), qreal(100) }, { METRIC(AcceleratingFlickSpeedupFactor), 1, "", qreal(1), qreal(7), qreal(0.1) }, { METRIC(SnapPositionRatio), 1, "", qreal(0.1), qreal(0.9), qreal(0.1) }, { METRIC(SnapTime), 1000, "ms", qreal(0), qreal(2000), qreal(10) }, { METRIC(OvershootDragResistanceFactor), 1, "", qreal(0), qreal(1), qreal(0.01) }, { METRIC(OvershootDragDistanceFactor), 1, "", qreal(0), qreal(1), qreal(0.01) }, { METRIC(OvershootScrollDistanceFactor), 1, "", qreal(0), qreal(1), qreal(0.01) }, { METRIC(OvershootScrollTime), 1000, "ms", qreal(0), qreal(2000), qreal(10) }, { METRIC(HorizontalOvershootPolicy), 1, "", QVariant::fromValue(QScrollerProperties::OvershootWhenScrollable), 0, 0 }, { METRIC(VerticalOvershootPolicy), 1, "", QVariant::fromValue(QScrollerProperties::OvershootWhenScrollable), 0, 0 }, { METRIC(FrameRate), 1, "", QVariant::fromValue(QScrollerProperties::Standard), 0, 0 }, }; #undef METRIC void SettingsWidget::addToGrid(QGridLayout *grid, QWidget *label, int widgetCount, ...) { va_list args; va_start(args, widgetCount); int rows = grid->rowCount(); int cols = grid->columnCount(); if (label) { if (m_smallscreen) grid->addWidget(label, rows++, 0, 1, qMax(cols, widgetCount)); else grid->addWidget(label, rows, 0); } for (int i = 0; i < widgetCount; i++) { if (QWidget *w = va_arg(args, QWidget *)) grid->addWidget(w, rows, m_smallscreen ? i : i + 1); } va_end(args); } SettingsWidget::SettingsWidget(bool smallscreen) : QScrollArea() , m_widget(0) , m_snapoverlay(0) , m_smallscreen(smallscreen) { setWindowTitle(QLatin1String("Settings")); QWidget *view = new QWidget(); QVBoxLayout *layout = new QVBoxLayout(view); QGroupBox *grp; QGridLayout *grid; // GROUP: SCROLL METRICS grp = new QGroupBox(QLatin1String("Scroll Metrics")); grid = new QGridLayout(); grid->setVerticalSpacing(m_smallscreen ? 4 : 2); for (int i = 0; i < int(sizeof(items) / sizeof(items[0])); i++) { MetricItemUpdater *u = new MetricItemUpdater(items + i); u->setParent(this); addToGrid(grid, u->nameLabel(), 3, u->valueControl(), u->valueLabel(), u->resetButton()); m_metrics.append(u); } grp->setLayout(grid); layout->addWidget(grp); // GROUP: SCROLL TO grp = new QGroupBox(QLatin1String("Scroll To")); grid = new QGridLayout(); grid->setVerticalSpacing(m_smallscreen ? 4 : 2); m_scrollx = new QSpinBox(); m_scrolly = new QSpinBox(); m_scrolltime = new QSpinBox(); m_scrolltime->setRange(0, 10000); m_scrolltime->setValue(1000); m_scrolltime->setSuffix(QLatin1String(" ms")); QPushButton *go = new QPushButton(QLatin1String("Go")); connect(go, SIGNAL(clicked()), this, SLOT(scrollTo())); connect(m_scrollx, SIGNAL(editingFinished()), this, SLOT(scrollTo())); connect(m_scrolly, SIGNAL(editingFinished()), this, SLOT(scrollTo())); connect(m_scrolltime, SIGNAL(editingFinished()), this, SLOT(scrollTo())); grid->addWidget(new QLabel(QLatin1String("X:")), 0, 0); grid->addWidget(m_scrollx, 0, 1); grid->addWidget(new QLabel(QLatin1String("Y:")), 0, 2); grid->addWidget(m_scrolly, 0, 3); int row = smallscreen ? 1 : 0; int col = smallscreen ? 0 : 4; grid->addWidget(new QLabel(QLatin1String("in")), row, col++); grid->addWidget(m_scrolltime, row, col++); if (smallscreen) { grid->addWidget(go, row, col + 1); } else { grid->addWidget(go, row, col); grid->setColumnStretch(5, 1); grid->setColumnStretch(6, 1); } grid->setColumnStretch(1, 1); grid->setColumnStretch(3, 1); grp->setLayout(grid); layout->addWidget(grp); QLayout *snapbox = new QHBoxLayout(); // GROUP: SNAP POINTS X grp = new QGroupBox(QLatin1String("Snap Positions X")); QBoxLayout *vbox = new QVBoxLayout(); vbox->setSpacing(m_smallscreen ? 4 : 2); m_snapx = new QComboBox(); m_snapx->addItem(QLatin1String("No Snapping"), NoSnap); m_snapx->addItem(QLatin1String("Snap to Interval"), SnapToInterval); m_snapx->addItem(QLatin1String("Snap to List"), SnapToList); connect(m_snapx, SIGNAL(currentIndexChanged(int)), this, SLOT(snapModeChanged(int))); vbox->addWidget(m_snapx); m_snapxinterval = new QWidget(); grid = new QGridLayout(); grid->setVerticalSpacing(m_smallscreen ? 4 : 2); m_snapxfirst = new QSpinBox(); connect(m_snapxfirst, SIGNAL(valueChanged(int)), this, SLOT(snapPositionsChanged())); grid->addWidget(new QLabel("First:"), 0, 0); grid->addWidget(m_snapxfirst, 0, 1); m_snapxstep = new QSpinBox(); connect(m_snapxstep, SIGNAL(valueChanged(int)), this, SLOT(snapPositionsChanged())); grid->addWidget(new QLabel("Interval:"), 0, 2); grid->addWidget(m_snapxstep, 0, 3); m_snapxinterval->setLayout(grid); vbox->addWidget(m_snapxinterval); m_snapxinterval->hide(); m_snapxlist = new QPlainTextEdit(); m_snapxlist->setToolTip(QLatin1String("One snap position per line. Empty lines are ignored.")); m_snapxlist->installEventFilter(this); connect(m_snapxlist, SIGNAL(textChanged()), this, SLOT(snapPositionsChanged())); vbox->addWidget(m_snapxlist); m_snapxlist->hide(); vbox->addStretch(100); grp->setLayout(vbox); snapbox->addWidget(grp); // GROUP: SNAP POINTS Y grp = new QGroupBox(QLatin1String("Snap Positions Y")); vbox = new QVBoxLayout(); vbox->setSpacing(m_smallscreen ? 4 : 2); m_snapy = new QComboBox(); m_snapy->addItem(QLatin1String("No Snapping"), NoSnap); m_snapy->addItem(QLatin1String("Snap to Interval"), SnapToInterval); m_snapy->addItem(QLatin1String("Snap to List"), SnapToList); connect(m_snapy, SIGNAL(currentIndexChanged(int)), this, SLOT(snapModeChanged(int))); vbox->addWidget(m_snapy); m_snapyinterval = new QWidget(); grid = new QGridLayout(); grid->setVerticalSpacing(m_smallscreen ? 4 : 2); m_snapyfirst = new QSpinBox(); connect(m_snapyfirst, SIGNAL(valueChanged(int)), this, SLOT(snapPositionsChanged())); grid->addWidget(new QLabel("First:"), 0, 0); grid->addWidget(m_snapyfirst, 0, 1); m_snapystep = new QSpinBox(); connect(m_snapystep, SIGNAL(valueChanged(int)), this, SLOT(snapPositionsChanged())); grid->addWidget(new QLabel("Interval:"), 0, 2); grid->addWidget(m_snapystep, 0, 3); m_snapyinterval->setLayout(grid); vbox->addWidget(m_snapyinterval); m_snapyinterval->hide(); m_snapylist = new QPlainTextEdit(); m_snapylist->setToolTip(QLatin1String("One snap position per line. Empty lines are ignored.")); m_snapylist->installEventFilter(this); connect(m_snapylist, SIGNAL(textChanged()), this, SLOT(snapPositionsChanged())); vbox->addWidget(m_snapylist); m_snapylist->hide(); vbox->addStretch(100); grp->setLayout(vbox); snapbox->addWidget(grp); layout->addLayout(snapbox); layout->addStretch(100); setWidget(view); setWidgetResizable(true); } void SettingsWidget::setScroller(QWidget *widget) { delete m_snapoverlay; if (m_widget) m_widget->removeEventFilter(this); QAbstractScrollArea *area = qobject_cast(widget); if (area) widget = area->viewport(); m_widget = widget; m_widget->installEventFilter(this); m_snapoverlay = new SnapOverlay(area); QScrollerProperties properties = QScroller::scroller(widget)->scrollerProperties(); QMutableListIterator it(m_metrics); while (it.hasNext()) it.next()->setScroller(widget); if (!widget) return; updateScrollRanges(); } bool SettingsWidget::eventFilter(QObject *o, QEvent *e) { if (o == m_widget && e->type() == QEvent::Resize) updateScrollRanges(); return false; } void SettingsWidget::updateScrollRanges() { QScrollPrepareEvent spe(QPoint(0, 0)); QApplication::sendEvent(m_widget, &spe); QSizeF vp = spe.viewportSize(); QRectF maxc = spe.contentPosRange(); m_scrollx->setRange(qRound(-vp.width()), qRound(maxc.width() + vp.width())); m_scrolly->setRange(qRound(-vp.height()), qRound(maxc.height() + vp.height())); m_snapxfirst->setRange(maxc.left(), maxc.right()); m_snapxstep->setRange(0, maxc.width()); m_snapyfirst->setRange(maxc.top(), maxc.bottom()); m_snapystep->setRange(0, maxc.height()); } void SettingsWidget::scrollTo() { if (QApplication::activePopupWidget()) return; if ((sender() == m_scrollx) && !m_scrollx->hasFocus()) return; if ((sender() == m_scrolly) && !m_scrolly->hasFocus()) return; if ((sender() == m_scrolltime) && !m_scrolltime->hasFocus()) return; if (QScroller *scroller = QScroller::scroller(m_widget)) scroller->scrollTo(QPointF(m_scrollx->value(), m_scrolly->value()), m_scrolltime->value()); } void SettingsWidget::snapModeChanged(int mode) { if (sender() == m_snapx) { m_snapxmode = static_cast(mode); m_snapxinterval->setVisible(mode == SnapToInterval); m_snapxlist->setVisible(mode == SnapToList); snapPositionsChanged(); } else if (sender() == m_snapy) { m_snapymode = static_cast(mode); m_snapyinterval->setVisible(mode == SnapToInterval); m_snapylist->setVisible(mode == SnapToList); snapPositionsChanged(); } } void SettingsWidget::snapPositionsChanged() { QScroller *s = QScroller::scroller(m_widget); if (!s) return; switch (m_snapxmode) { case NoSnap: s->setSnapPositionsX(QList()); m_snapoverlay->clear(Qt::Horizontal); break; case SnapToInterval: s->setSnapPositionsX(m_snapxfirst->value(), m_snapxstep->value()); m_snapoverlay->set(Qt::Horizontal, m_snapxfirst->value(), m_snapxstep->value()); break; case SnapToList: s->setSnapPositionsX(toPositionList(m_snapxlist, m_snapxfirst->minimum(), m_snapxfirst->maximum())); m_snapoverlay->set(Qt::Horizontal, toPositionList(m_snapxlist, m_snapxfirst->minimum(), m_snapxfirst->maximum())); break; } switch (m_snapymode) { case NoSnap: s->setSnapPositionsY(QList()); m_snapoverlay->clear(Qt::Vertical); break; case SnapToInterval: s->setSnapPositionsY(m_snapyfirst->value(), m_snapystep->value()); m_snapoverlay->set(Qt::Vertical, m_snapyfirst->value(), m_snapystep->value()); break; case SnapToList: s->setSnapPositionsY(toPositionList(m_snapylist, m_snapyfirst->minimum(), m_snapyfirst->maximum())); m_snapoverlay->set(Qt::Vertical, toPositionList(m_snapylist, m_snapyfirst->minimum(), m_snapyfirst->maximum())); break; } } QList SettingsWidget::toPositionList(QPlainTextEdit *list, int vmin, int vmax) { QList snaps; QList extrasel; QTextEdit::ExtraSelection uline; uline.format.setUnderlineColor(Qt::red); uline.format.setUnderlineStyle(QTextCharFormat::WaveUnderline); int line = 0; foreach (const QString &str, list->toPlainText().split(QLatin1Char('\n'))) { ++line; if (str.isEmpty()) continue; bool ok = false; double d = str.toDouble(&ok); if (ok && d >= vmin && d <= vmax) { snaps << d; } else { QTextEdit::ExtraSelection esel = uline; esel.cursor = QTextCursor(list->document()->findBlockByLineNumber(line - 1)); esel.cursor.select(QTextCursor::LineUnderCursor); extrasel << esel; } } list->setExtraSelections(extrasel); return snaps; } #include "settingswidget.moc" qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/scroller/plot/plot.pro0000644000000000000000000000043412273255454031515 0ustar rootrootHEADERS = settingswidget.h \ plotwidget.h SOURCES = settingswidget.cpp \ plotwidget.cpp \ main.cpp QT += webkitwidgets widgets # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/scroller/plot INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/0000755000000000000000000000000012273255454026742 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/0000755000000000000000000000000012273255454030402 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/README.TXT0000644000000000000000000000000012273255454031726 0ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/0000755000000000000000000000000012273255454031171 5ustar rootroot././@LongLink0000000000000000000000000000015700000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BrowserWindow.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Browser0000644000000000000000000001260612273255454032544 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "BrowserWindow.h" #include #include #include #include #include "BrowserView.h" #include "HomeView.h" BrowserWindow::BrowserWindow() : m_slidingSurface(new QWidget(this)) , m_homeView(new HomeView(m_slidingSurface)) , m_browserView(new BrowserView(m_slidingSurface)) , m_animation(new QPropertyAnimation(this, "slideValue")) { m_slidingSurface->setAutoFillBackground(true); m_homeView->resize(size()); m_browserView->resize(size()); connect(m_homeView, SIGNAL(addressEntered(QString)), SLOT(gotoAddress(QString))); connect(m_homeView, SIGNAL(urlActivated(QUrl)), SLOT(navigate(QUrl))); connect(m_browserView, SIGNAL(menuButtonClicked()), SLOT(showHomeView())); m_animation->setDuration(200); connect(m_animation, SIGNAL(finished()), SLOT(animationFinished())); setSlideValue(0.0f); } void BrowserWindow::gotoAddress(const QString &address) { m_browserView->navigate(QUrl::fromUserInput(address)); showBrowserView(); } void BrowserWindow::animationFinished() { m_animation->setDirection(QAbstractAnimation::Forward); } void BrowserWindow::navigate(const QUrl &url) { m_browserView->navigate(url); showBrowserView(); } void BrowserWindow::setSlideValue(qreal slideRatio) { // we use a ratio to handle resize corectly const int pos = -qRound(slideRatio * width()); m_slidingSurface->scroll(pos - m_homeView->x(), 0); if (qFuzzyCompare(slideRatio, static_cast(1.0f))) { m_browserView->show(); m_homeView->hide(); } else if (qFuzzyCompare(slideRatio, static_cast(0.0f))) { m_homeView->show(); m_browserView->hide(); } else { m_browserView->show(); m_homeView->show(); } } qreal BrowserWindow::slideValue() const { Q_ASSERT(m_slidingSurface->x() < width()); return static_cast(qAbs(m_homeView->x())) / width(); } void BrowserWindow::showHomeView() { m_animation->setStartValue(slideValue()); m_animation->setEndValue(0.0f); m_animation->start(); m_homeView->setFocus(); } void BrowserWindow::showBrowserView() { m_animation->setStartValue(slideValue()); m_animation->setEndValue(1.0f); m_animation->start(); m_browserView->setFocus(); } void BrowserWindow::keyReleaseEvent(QKeyEvent *event) { QWidget::keyReleaseEvent(event); if (event->key() == Qt::Key_F3) { if (m_animation->state() == QAbstractAnimation::Running) { const QAbstractAnimation::Direction direction = m_animation->direction() == QAbstractAnimation::Forward ? QAbstractAnimation::Forward : QAbstractAnimation::Backward; m_animation->setDirection(direction); } else if (qFuzzyCompare(slideValue(), static_cast(1.0f))) showHomeView(); else showBrowserView(); event->accept(); } } void BrowserWindow::resizeEvent(QResizeEvent *event) { const QSize oldSize = event->oldSize(); const qreal oldSlidingRatio = static_cast(qAbs(m_homeView->x())) / oldSize.width(); const QSize newSize = event->size(); m_slidingSurface->resize(newSize.width() * 2, newSize.height()); m_homeView->resize(newSize); m_homeView->move(0, 0); m_browserView->resize(newSize); m_browserView->move(newSize.width(), 0); setSlideValue(oldSlidingRatio); } ././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/flickcharm.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/flickch0000644000000000000000000000464312273255454032526 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef FLICKCHARM_H #define FLICKCHARM_H #include QT_BEGIN_NAMESPACE class QWidget; QT_END_NAMESPACE class FlickCharmPrivate; class FlickCharm: public QObject { Q_OBJECT public: FlickCharm(QObject *parent = 0); ~FlickCharm(); void activateOn(QWidget *widget); void deactivateFrom(QWidget *widget); bool eventFilter(QObject *object, QEvent *event); protected: void timerEvent(QTimerEvent *event); private: FlickCharmPrivate *d; }; #endif // FLICKCHARM_H ././@LongLink0000000000000000000000000000014600000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Main.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Main.cp0000644000000000000000000000461012273255454032402 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include #include #include #include "BrowserWindow.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); app.setApplicationName("Anomaly"); app.setApplicationVersion("0.0.0"); BrowserWindow window; window.resize(360, 640); window.show(); app.setStyle("windows"); #ifdef QT_KEYPAD_NAVIGATION QApplication::setNavigationMode(Qt::NavigationModeCursorAuto); #endif return app.exec(); } ././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/webview.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/webview0000644000000000000000000000543712273255454032575 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "webview.h" #include #include WebView::WebView(QWidget *parent) : QWebView(parent) , inLoading(false) { connect(this, SIGNAL(loadStarted()), this, SLOT(newPageLoading())); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(pageLoaded(bool))); page()->setPreferredContentsSize(QSize(1024, 768)); } void WebView::paintEvent(QPaintEvent *event) { if (inLoading && loadingTime.elapsed() < 750) { QPainter painter(this); painter.setBrush(Qt::white); painter.setPen(Qt::NoPen); foreach (const QRect &rect, event->region().rects()) { painter.drawRect(rect); } } else { QWebView::paintEvent(event); } } void WebView::newPageLoading() { inLoading = true; loadingTime.start(); } void WebView::pageLoaded(bool) { inLoading = false; update(); } ././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/TitleBar.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/TitleBa0000644000000000000000000000461312273255454032444 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef TITLEBAR_H #define TITLEBAR_H #include class TitleBar : public QWidget { Q_OBJECT public: TitleBar(QWidget *parent = 0); void setHost(const QString &host); void setTitle(const QString &title); void setProgress(int percent); QSize sizeHint() const; QSize minimumSizeHint() const; protected: void paintEvent(QPaintEvent *event); private: QString m_host; QString m_title; int m_progress; }; #endif // TITLEBAR_H ././@LongLink0000000000000000000000000000015300000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BrowserView.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Browser0000644000000000000000000000541712273255454032546 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BROWSERVIEW_H #define BROWSERVIEW_H #include #include QT_BEGIN_NAMESPACE class QUrl; QT_END_NAMESPACE class QWebView; class TitleBar; class ControlStrip; class WebView; class ZoomStrip; class BrowserView : public QWidget { Q_OBJECT public: BrowserView(QWidget *parent = 0); public slots: void navigate(const QUrl &url); void zoomIn(); void zoomOut(); private slots: void initialize(); void start(); void setProgress(int percent); void finish(bool); void updateTitleBar(); signals: void menuButtonClicked(); protected: void resizeEvent(QResizeEvent *event); private: TitleBar *m_titleBar; WebView *m_webView; ZoomStrip *m_zoomStrip; ControlStrip *m_controlStrip; int m_progress; int m_currentZoom; QVector m_zoomLevels; }; #endif // BROWSERVIEW_H ././@LongLink0000000000000000000000000000015500000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BrowserWindow.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Browser0000644000000000000000000000540212273255454032540 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BROWSERWINDOW_H #define BROWSERWINDOW_H #include QT_BEGIN_NAMESPACE class QPropertyAnimation; class QUrl; QT_END_NAMESPACE class BrowserView; class HomeView; class BrowserWindow : public QWidget { Q_OBJECT Q_PROPERTY(qreal slideValue READ slideValue WRITE setSlideValue) public: BrowserWindow(); private slots: void navigate(const QUrl &url); void gotoAddress(const QString &address); void animationFinished(); public slots: void showBrowserView(); void showHomeView(); protected: void keyReleaseEvent(QKeyEvent *event); void resizeEvent(QResizeEvent *event); private: void setSlideValue(qreal); qreal slideValue() const; QWidget *m_slidingSurface; HomeView *m_homeView; BrowserView *m_browserView; QPropertyAnimation *m_animation; }; #endif // BROWSERWINDOW_H ././@LongLink0000000000000000000000000000015300000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ZoomStrip.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ZoomStr0000644000000000000000000000535212273255454032536 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "ZoomStrip.h" #include #include ZoomStrip::ZoomStrip(QWidget *parent) : QWidget(parent) { zoomInPixmap.load(":/images/list-add.png"); zoomOutPixmap.load(":/images/list-remove.png"); } QSize ZoomStrip::sizeHint() const { return minimumSizeHint(); } QSize ZoomStrip::minimumSizeHint() const { return QSize(48, 96); } void ZoomStrip::mousePressEvent(QMouseEvent *event) { if (event->pos().y() < height() / 2) emit zoomInClicked(); else emit zoomOutClicked(); } void ZoomStrip::paintEvent(QPaintEvent *event) { int w = width(); int s = (w - zoomInPixmap.width()) / 2; QPainter p(this); p.fillRect(event->rect(), QColor(128, 128, 128, 128)); p.drawPixmap(s, s, zoomInPixmap); p.drawPixmap(s, s + w, zoomOutPixmap); p.end(); } ././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/AddressBar.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Address0000644000000000000000000000472612273255454032512 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef ADDRESSBAR_H #define ADDRESSBAR_H #include QT_BEGIN_NAMESPACE class QLineEdit; class QToolButton; QT_END_NAMESPACE class AddressBar : public QWidget { Q_OBJECT public: AddressBar(QWidget *parent = 0); QSize sizeHint() const; protected: void resizeEvent(QResizeEvent *event); void focusInEvent(QFocusEvent *event); signals: void addressEntered(const QString &address); private slots: void processAddress(); private: QLineEdit *m_lineEdit; QToolButton *m_toolButton; }; #endif // ADDRESSBAR_H ././@LongLink0000000000000000000000000000015400000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/flickcharm.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/flickch0000644000000000000000000003314312273255454032523 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "flickcharm.h" #include #include #include #include #include #include #include #include #include #include #include #include const int fingerAccuracyThreshold = 3; struct FlickData { typedef enum { Steady, // Interaction without scrolling ManualScroll, // Scrolling manually with the finger on the screen AutoScroll, // Scrolling automatically AutoScrollAcceleration // Scrolling automatically but a finger is on the screen } State; State state; QWidget *widget; QPoint pressPos; QPoint lastPos; QPoint speed; QTime speedTimer; QList ignored; QTime accelerationTimer; bool lastPosValid:1; bool waitingAcceleration:1; FlickData() : lastPosValid(false) , waitingAcceleration(false) {} void resetSpeed() { speed = QPoint(); lastPosValid = false; } void updateSpeed(const QPoint &newPosition) { if (lastPosValid) { const int timeElapsed = speedTimer.elapsed(); if (timeElapsed) { const QPoint newPixelDiff = (newPosition - lastPos); const QPoint pixelsPerSecond = newPixelDiff * (1000 / timeElapsed); // fingers are inacurates, we ignore small changes to avoid stopping the autoscroll because // of a small horizontal offset when scrolling vertically const int newSpeedY = (qAbs(pixelsPerSecond.y()) > fingerAccuracyThreshold) ? pixelsPerSecond.y() : 0; const int newSpeedX = (qAbs(pixelsPerSecond.x()) > fingerAccuracyThreshold) ? pixelsPerSecond.x() : 0; if (state == AutoScrollAcceleration) { const int max = 4000; // px by seconds const int oldSpeedY = speed.y(); const int oldSpeedX = speed.x(); if ((oldSpeedY <= 0 && newSpeedY <= 0) || (oldSpeedY >= 0 && newSpeedY >= 0) && (oldSpeedX <= 0 && newSpeedX <= 0) || (oldSpeedX >= 0 && newSpeedX >= 0)) { speed.setY(qBound(-max, (oldSpeedY + (newSpeedY / 4)), max)); speed.setX(qBound(-max, (oldSpeedX + (newSpeedX / 4)), max)); } else { speed = QPoint(); } } else { const int max = 2500; // px by seconds // we average the speed to avoid strange effects with the last delta if (!speed.isNull()) { speed.setX(qBound(-max, (speed.x() / 4) + (newSpeedX * 3 / 4), max)); speed.setY(qBound(-max, (speed.y() / 4) + (newSpeedY * 3 / 4), max)); } else { speed = QPoint(newSpeedX, newSpeedY); } } } } else { lastPosValid = true; } speedTimer.start(); lastPos = newPosition; } // scroll by dx, dy // return true if the widget was scrolled bool scrollWidget(const int dx, const int dy) { QAbstractScrollArea *scrollArea = qobject_cast(widget); if (scrollArea) { const int x = scrollArea->horizontalScrollBar()->value(); const int y = scrollArea->verticalScrollBar()->value(); scrollArea->horizontalScrollBar()->setValue(x - dx); scrollArea->verticalScrollBar()->setValue(y - dy); return (scrollArea->horizontalScrollBar()->value() != x || scrollArea->verticalScrollBar()->value() != y); } QWebView *webView = qobject_cast(widget); if (webView) { QWebFrame *frame = webView->page()->mainFrame(); const QPoint position = frame->scrollPosition(); frame->setScrollPosition(position - QPoint(dx, dy)); return frame->scrollPosition() != position; } return false; } bool scrollTo(const QPoint &newPosition) { const QPoint delta = newPosition - lastPos; updateSpeed(newPosition); return scrollWidget(delta.x(), delta.y()); } }; class FlickCharmPrivate { public: QHash flickData; QBasicTimer ticker; QTime timeCounter; void startTicker(QObject *object) { if (!ticker.isActive()) ticker.start(15, object); timeCounter.start(); } }; FlickCharm::FlickCharm(QObject *parent): QObject(parent) { d = new FlickCharmPrivate; } FlickCharm::~FlickCharm() { delete d; } void FlickCharm::activateOn(QWidget *widget) { QAbstractScrollArea *scrollArea = qobject_cast(widget); if (scrollArea) { scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); QWidget *viewport = scrollArea->viewport(); viewport->installEventFilter(this); scrollArea->installEventFilter(this); d->flickData.remove(viewport); d->flickData[viewport] = new FlickData; d->flickData[viewport]->widget = widget; d->flickData[viewport]->state = FlickData::Steady; return; } QWebView *webView = qobject_cast(widget); if (webView) { QWebFrame *frame = webView->page()->mainFrame(); frame->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); frame->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); webView->installEventFilter(this); d->flickData.remove(webView); d->flickData[webView] = new FlickData; d->flickData[webView]->widget = webView; d->flickData[webView]->state = FlickData::Steady; return; } qWarning() << "FlickCharm only works on QAbstractScrollArea (and derived classes)"; qWarning() << "or QWebView (and derived classes)"; } void FlickCharm::deactivateFrom(QWidget *widget) { QAbstractScrollArea *scrollArea = qobject_cast(widget); if (scrollArea) { QWidget *viewport = scrollArea->viewport(); viewport->removeEventFilter(this); scrollArea->removeEventFilter(this); delete d->flickData[viewport]; d->flickData.remove(viewport); return; } QWebView *webView = qobject_cast(widget); if (webView) { webView->removeEventFilter(this); delete d->flickData[webView]; d->flickData.remove(webView); return; } } static QPoint deaccelerate(const QPoint &speed, const int deltatime) { const int deltaSpeed = deltatime; int x = speed.x(); int y = speed.y(); x = (x == 0) ? x : (x > 0) ? qMax(0, x - deltaSpeed) : qMin(0, x + deltaSpeed); y = (y == 0) ? y : (y > 0) ? qMax(0, y - deltaSpeed) : qMin(0, y + deltaSpeed); return QPoint(x, y); } bool FlickCharm::eventFilter(QObject *object, QEvent *event) { if (!object->isWidgetType()) return false; const QEvent::Type type = event->type(); switch (type) { case QEvent::MouseButtonPress: case QEvent::MouseMove: case QEvent::MouseButtonRelease: break; case QEvent::MouseButtonDblClick: // skip double click return true; default: return false; } QMouseEvent *mouseEvent = static_cast(event); if (type == QEvent::MouseMove && mouseEvent->buttons() != Qt::LeftButton) return false; if (mouseEvent->modifiers() != Qt::NoModifier) return false; QWidget *viewport = qobject_cast(object); FlickData *data = d->flickData.value(viewport); if (!viewport || !data || data->ignored.removeAll(event)) return false; const QPoint mousePos = mouseEvent->pos(); bool consumed = false; switch (data->state) { case FlickData::Steady: if (type == QEvent::MouseButtonPress) { consumed = true; data->pressPos = mousePos; } else if (type == QEvent::MouseButtonRelease) { consumed = true; QMouseEvent *event1 = new QMouseEvent(QEvent::MouseButtonPress, data->pressPos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier); QMouseEvent *event2 = new QMouseEvent(QEvent::MouseButtonRelease, data->pressPos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier); data->ignored << event1; data->ignored << event2; QApplication::postEvent(object, event1); QApplication::postEvent(object, event2); } else if (type == QEvent::MouseMove) { consumed = true; data->scrollTo(mousePos); const QPoint delta = mousePos - data->pressPos; if (delta.x() > fingerAccuracyThreshold || delta.y() > fingerAccuracyThreshold) data->state = FlickData::ManualScroll; } break; case FlickData::ManualScroll: if (type == QEvent::MouseMove) { consumed = true; data->scrollTo(mousePos); } else if (type == QEvent::MouseButtonRelease) { consumed = true; data->state = FlickData::AutoScroll; data->lastPosValid = false; d->startTicker(this); } break; case FlickData::AutoScroll: if (type == QEvent::MouseButtonPress) { consumed = true; data->state = FlickData::AutoScrollAcceleration; data->waitingAcceleration = true; data->accelerationTimer.start(); data->updateSpeed(mousePos); data->pressPos = mousePos; } else if (type == QEvent::MouseButtonRelease) { consumed = true; data->state = FlickData::Steady; data->resetSpeed(); } break; case FlickData::AutoScrollAcceleration: if (type == QEvent::MouseMove) { consumed = true; data->updateSpeed(mousePos); data->accelerationTimer.start(); if (data->speed.isNull()) data->state = FlickData::ManualScroll; } else if (type == QEvent::MouseButtonRelease) { consumed = true; data->state = FlickData::AutoScroll; data->waitingAcceleration = false; data->lastPosValid = false; } break; default: break; } data->lastPos = mousePos; return true; } void FlickCharm::timerEvent(QTimerEvent *event) { int count = 0; QHashIterator item(d->flickData); while (item.hasNext()) { item.next(); FlickData *data = item.value(); if (data->state == FlickData::AutoScrollAcceleration && data->waitingAcceleration && data->accelerationTimer.elapsed() > 40) { data->state = FlickData::ManualScroll; data->resetSpeed(); } if (data->state == FlickData::AutoScroll || data->state == FlickData::AutoScrollAcceleration) { const int timeElapsed = d->timeCounter.elapsed(); const QPoint delta = (data->speed) * timeElapsed / 1000; bool hasScrolled = data->scrollWidget(delta.x(), delta.y()); if (data->speed.isNull() || !hasScrolled) data->state = FlickData::Steady; else count++; data->speed = deaccelerate(data->speed, timeElapsed); } } if (!count) d->ticker.stop(); else d->timeCounter.start(); QObject::timerEvent(event); } ././@LongLink0000000000000000000000000000014700000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/webview.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/webview0000644000000000000000000000443312273255454032570 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef WEBVIEW_H #define WEBVIEW_H #include #include class WebView : public QWebView { Q_OBJECT public: WebView(QWidget *parent = 0); protected: void paintEvent(QPaintEvent *event); private slots: void newPageLoading(); void pageLoaded(bool ok); private: QTime loadingTime; bool inLoading; }; #endif // WEBVIEW_H ././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/HomeView.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/HomeVie0000644000000000000000000000536412273255454032460 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "HomeView.h" #include #include #include "AddressBar.h" #include "BookmarksView.h" HomeView::HomeView(QWidget *parent) : QWidget(parent) , m_addressBar(0) { m_addressBar = new AddressBar(parent); connect(m_addressBar, SIGNAL(addressEntered(QString)), SLOT(gotoAddress(QString))); m_bookmarks = new BookmarksView(parent); connect(m_bookmarks, SIGNAL(urlSelected(QUrl)), SIGNAL(urlActivated(QUrl))); QVBoxLayout *layout = new QVBoxLayout(this); layout->setMargin(4); layout->setSpacing(4); layout->addWidget(m_addressBar); layout->addWidget(m_bookmarks); } void HomeView::gotoAddress(const QString &address) { emit addressEntered(address); } void HomeView::focusInEvent(QFocusEvent *event) { m_addressBar->setFocus(); QWidget::focusInEvent(event); } ././@LongLink0000000000000000000000000000015700000000000011570 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BookmarksView.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Bookmar0000644000000000000000000000543412273255454032514 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "BookmarksView.h" #include BookmarksView::BookmarksView(QWidget *parent) : QWidget(parent) { QListWidget *m_iconView = new QListWidget(this); connect(m_iconView, SIGNAL(itemActivated(QListWidgetItem*)), SLOT(activate(QListWidgetItem*))); QVBoxLayout *layout = new QVBoxLayout(this); setLayout(layout); layout->addWidget(m_iconView); m_iconView->addItem("www.google.com"); m_iconView->addItem("qt-project.org/doc/qt-5.0"); m_iconView->addItem("news.bbc.co.uk/2/mobile/default.stm"); m_iconView->addItem("mobile.wikipedia.org"); m_iconView->addItem("qt.digia.com"); m_iconView->addItem("en.wikipedia.org"); setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); } void BookmarksView::activate(QListWidgetItem *item) { QUrl url = item->text().prepend("http://"); emit urlSelected(url); } ././@LongLink0000000000000000000000000000015600000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ControlStrip.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Control0000644000000000000000000000714612273255454032544 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "ControlStrip.h" #include #include ControlStrip::ControlStrip(QWidget *parent) : QWidget(parent) { menuPixmap.load(":/images/edit-find.png"); backPixmap.load(":/images/go-previous.png"); forwardPixmap.load(":/images/go-next.png"); closePixmap.load(":/images/button-close.png"); } QSize ControlStrip::sizeHint() const { return minimumSizeHint(); } QSize ControlStrip::minimumSizeHint() const { return QSize(320, 48); } void ControlStrip::mousePressEvent(QMouseEvent *event) { int h = height(); int spacing = qMin(h, (width() - h * 4) / 3); int x = event->pos().x(); if (x < h) { emit menuClicked(); event->accept(); return; } if (x > width() - h) { emit closeClicked(); event->accept(); return; } if ((x < width() - (h + spacing)) && (x > width() - (h * 2 + spacing))) { emit forwardClicked(); event->accept(); return; } if ((x < width() - (h * 2 + spacing * 2)) && (x > width() - (h * 3 + spacing * 2))) { emit backClicked(); event->accept(); return; } } void ControlStrip::paintEvent(QPaintEvent *event) { int h = height(); int spacing = qMin(h, (width() - h * 4) / 3); int s = (height() - menuPixmap.height()) / 2; QPainter p(this); p.fillRect(event->rect(), QColor(32, 32, 32, 192)); p.setCompositionMode(QPainter::CompositionMode_SourceOver); p.drawPixmap(s, s, menuPixmap); p.drawPixmap(width() - h + s, s, closePixmap); p.drawPixmap(width() - (h * 2 + spacing) + s, s, forwardPixmap); p.drawPixmap(width() - (h * 3 + spacing * 2) + s, s, backPixmap); p.end(); } ././@LongLink0000000000000000000000000000015400000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/AddressBar.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Address0000644000000000000000000000615112273255454032504 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "AddressBar.h" #include #include AddressBar::AddressBar(QWidget *parent) : QWidget(parent) { m_lineEdit = new QLineEdit(parent); m_lineEdit->setPlaceholderText("Enter address or search terms"); connect(m_lineEdit, SIGNAL(returnPressed()), SLOT(processAddress())); m_toolButton = new QToolButton(parent); m_toolButton->setText("Go"); connect(m_toolButton, SIGNAL(clicked()), SLOT(processAddress())); } QSize AddressBar::sizeHint() const { return m_lineEdit->sizeHint(); } void AddressBar::processAddress() { if (!m_lineEdit->text().isEmpty()) emit addressEntered(m_lineEdit->text()); } void AddressBar::resizeEvent(QResizeEvent *event) { int x, y, w, h; m_toolButton->adjustSize(); x = width() - m_toolButton->width(); y = 0; w = m_toolButton->width(); h = height() - 1; m_toolButton->setGeometry(x, y, w, h); m_toolButton->show(); x = 0; y = 0; w = width() - m_toolButton->width(); h = height() - 1; m_lineEdit->setGeometry(x, y, w, h); m_lineEdit->show(); } void AddressBar::focusInEvent(QFocusEvent *event) { m_lineEdit->setFocus(); QWidget::focusInEvent(event); } ././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/anomaly.qrcqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/anomaly0000644000000000000000000000047212273255454032557 0ustar rootroot images/go-next.png images/go-previous.png images/edit-find.png images/list-add.png images/list-remove.png images/button-close.png ././@LongLink0000000000000000000000000000015100000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ZoomStrip.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ZoomStr0000644000000000000000000000460112273255454032532 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef ZOOMSTRIP_H #define ZOOMSTRIP_H #include class ZoomStrip : public QWidget { Q_OBJECT public: ZoomStrip(QWidget *parent = 0); QSize sizeHint() const; QSize minimumSizeHint() const; signals: void zoomInClicked(); void zoomOutClicked(); protected: void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *event); private: QPixmap zoomInPixmap; QPixmap zoomOutPixmap; }; #endif // ZOOMSTRIP_H ././@LongLink0000000000000000000000000000015000000000000011561 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/HomeView.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/HomeVie0000644000000000000000000000472012273255454032453 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef HOMEVIEW_H #define HOMEVIEW_H #include QT_BEGIN_NAMESPACE class QUrl; QT_END_NAMESPACE class AddressBar; class BookmarksView; class HomeView : public QWidget { Q_OBJECT public: HomeView(QWidget *parent); signals: void urlActivated(const QUrl &url); void addressEntered(const QString &address); private slots: void gotoAddress(const QString &address); protected: void focusInEvent(QFocusEvent *event); private: AddressBar *m_addressBar; BookmarksView *m_bookmarks; }; #endif // HOMEVIEW_H ././@LongLink0000000000000000000000000000015400000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/ControlStrip.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Control0000644000000000000000000000475612273255454032550 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef CONTROLSTRIP_H #define CONTROLSTRIP_H #include class ControlStrip : public QWidget { Q_OBJECT public: ControlStrip(QWidget *parent = 0); QSize sizeHint() const; QSize minimumSizeHint() const; signals: void menuClicked(); void backClicked(); void forwardClicked(); void closeClicked(); protected: void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *event); private: QPixmap menuPixmap; QPixmap backPixmap; QPixmap forwardPixmap; QPixmap closePixmap; }; #endif // CONTROLSTRIP_H ././@LongLink0000000000000000000000000000015500000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BrowserView.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Browser0000644000000000000000000001460412273255454032544 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "BrowserView.h" #include #include #include #include "ControlStrip.h" #include "TitleBar.h" #include "flickcharm.h" #include "webview.h" #include "ZoomStrip.h" BrowserView::BrowserView(QWidget *parent) : QWidget(parent) , m_titleBar(0) , m_webView(0) , m_progress(0) , m_currentZoom(100) { m_titleBar = new TitleBar(this); m_webView = new WebView(this); m_zoomStrip = new ZoomStrip(this); m_controlStrip = new ControlStrip(this); m_zoomLevels << 30 << 50 << 67 << 80 << 90; m_zoomLevels << 100; m_zoomLevels << 110 << 120 << 133 << 150 << 170 << 200 << 240 << 300; QNetworkConfigurationManager manager; if (manager.capabilities() & QNetworkConfigurationManager::NetworkSessionRequired) { // Get saved network configuration QSettings settings(QSettings::UserScope, QLatin1String("Trolltech")); settings.beginGroup(QLatin1String("QtNetwork")); const QString id = settings.value(QLatin1String("DefaultNetworkConfiguration")).toString(); settings.endGroup(); // If the saved network configuration is not currently discovered use the system // default QNetworkConfiguration config = manager.configurationFromIdentifier(id); if ((config.state() & QNetworkConfiguration::Discovered) != QNetworkConfiguration::Discovered) { config = manager.defaultConfiguration(); } m_webView->page()->networkAccessManager()->setConfiguration(config); } QTimer::singleShot(0, this, SLOT(initialize())); } void BrowserView::initialize() { connect(m_zoomStrip, SIGNAL(zoomInClicked()), SLOT(zoomIn())); connect(m_zoomStrip, SIGNAL(zoomOutClicked()), SLOT(zoomOut())); connect(m_controlStrip, SIGNAL(menuClicked()), SIGNAL(menuButtonClicked())); connect(m_controlStrip, SIGNAL(backClicked()), m_webView, SLOT(back())); connect(m_controlStrip, SIGNAL(forwardClicked()), m_webView, SLOT(forward())); connect(m_controlStrip, SIGNAL(closeClicked()), qApp, SLOT(quit())); QPalette pal = m_webView->palette(); pal.setBrush(QPalette::Base, Qt::white); m_webView->setPalette(pal); FlickCharm *flickCharm = new FlickCharm(this); flickCharm->activateOn(m_webView); m_webView->setZoomFactor(static_cast(m_currentZoom)/100.0); connect(m_webView, SIGNAL(loadStarted()), SLOT(start())); connect(m_webView, SIGNAL(loadProgress(int)), SLOT(setProgress(int))); connect(m_webView, SIGNAL(loadFinished(bool)), SLOT(finish(bool))); connect(m_webView, SIGNAL(urlChanged(QUrl)), SLOT(updateTitleBar())); m_webView->setHtml("about:blank"); m_webView->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); m_webView->setFocus(); } void BrowserView::start() { m_progress = 0; updateTitleBar(); //m_titleBar->setText(m_webView->url().toString()); } void BrowserView::setProgress(int percent) { m_progress = percent; updateTitleBar(); //m_titleBar->setText(QString("Loading %1%").arg(percent)); } void BrowserView::updateTitleBar() { QUrl url = m_webView->url(); m_titleBar->setHost(url.host()); m_titleBar->setTitle(m_webView->title()); m_titleBar->setProgress(m_progress); } void BrowserView::finish(bool ok) { m_progress = 0; updateTitleBar(); // TODO: handle error if (!ok) { //m_titleBar->setText("Loading failed."); } } void BrowserView::zoomIn() { int i = m_zoomLevels.indexOf(m_currentZoom); Q_ASSERT(i >= 0); if (i < m_zoomLevels.count() - 1) m_currentZoom = m_zoomLevels[i + 1]; m_webView->setZoomFactor(static_cast(m_currentZoom)/100.0); } void BrowserView::zoomOut() { int i = m_zoomLevels.indexOf(m_currentZoom); Q_ASSERT(i >= 0); if (i > 0) m_currentZoom = m_zoomLevels[i - 1]; m_webView->setZoomFactor(static_cast(m_currentZoom)/100.0); } void BrowserView::resizeEvent(QResizeEvent *event) { QWidget::resizeEvent(event); int h1 = m_titleBar->sizeHint().height(); int h2 = m_controlStrip->sizeHint().height(); m_titleBar->setGeometry(0, 0, width(), h1); m_controlStrip->setGeometry(0, height() - h2, width(), h2); m_webView->setGeometry(0, h1, width(), height() - h1); int zw = m_zoomStrip->sizeHint().width(); int zh = m_zoomStrip->sizeHint().height(); m_zoomStrip->move(width() - zw, (height() - zh) / 2); } void BrowserView::navigate(const QUrl &url) { m_webView->load(url); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000755000000000000000000000000012273255454032436 5ustar rootroot././@LongLink0000000000000000000000000000016000000000000011562 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/go-next.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000644000000000000000000000217612273255454032446 0ustar rootrootPNG  IHDR szzEIDATx^}hUǿu/mk@bFRILH^$n?2$adMFWM73e<9ti=|9<=_~j;x%Up -{Pi _ |:PxJq.̙q~X|`>U fԀцEH8S\a-1Bx{#8Ydҏ<{nf^sV(k A I\z𸫓c^F!6 օ֐ʳO-3`~M1T-B jB." :Ea[6٩mKJ@JQ QHE>@hb1wn")^,_N][QߴGku)kRX@DB0@4\!ܸ؃Gs۫7wseW+БGa0jmxBBz{GQH3`f?RB $]@HxhJ D_)E44 SPD'BB D0EȏbC{&3@ 35iTJ I@jK "1"whlS~XoN`Ѝ4p[ :9RݗU:\!3@5F럪26] B}"9z蒚,5h{\ҕ_ }fef(Ps LU`60@,џ==[#xB}eHQ."- He@Hdz^@й ?o $r |"@<dѿ.ķ\py!61ƘvOR4{N>i)Nw3.eeLTnq斖UkiYEP.nME7$e+j+VJ$giHu*<:>{oجPڪ=u.cƷ{~okl4f6Nv62ܭ[jۧ>}kd-v-ʽV<vhiӽ{^no',) ӧJQl,> psgf p14s!CLj߹$x` mH[`Pt54 ߫_} ͆x*j2}EjڜE[6Jw?|tmkȏS~ׄ"7>9<-bBƘݨV1Yd_bo(+ÃdzȢЊ/;䥦"3<\,d lmZQɝ{ D M}Dzh(yf-i39n!)d S?{5lqeUQ^(wwRH }UZ0\HNXS)@ʫT*LL~=RiIi"Ϝ۷QkС$r+Kyy߷2wW ,!?+p6tOr ~&hr+)1|YX(ﺹ'YKXh+jT}‹p Lɭ&@९`>Le B3a۶I0RQpzhN.."Ϙ^cpmm"8N!&¡O >ÇQ*)*ӬYg'ڊ'*f"+PASXA7 h+D q8/&r20EOޕiY&Ե`#ڹJ_$#dQ;Ilh[O"h/QVp\/i@(py{MM57FcvSkHRnli {2I#f!lX4y%/L7Mjd$+dc33h#(gIENDB`././@LongLink0000000000000000000000000000016200000000000011564 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/edit-find.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000644000000000000000000000272712273255454032450 0ustar rootrootPNG  IHDR szzIDATx^mLSgƯsN߀K 2RJաҀ u`lC-f_Ib2ٲl2'3m.s2P> lP@Ra },GX9NNZj>Wr}^}N/A:x`R8N<EQmt=y2)$AرCG I'+a`#ݧ۵kQ Z=bppJO nI׫S8FN̬5@(Xx֤Yo/%BnBd)*$rrr+ED!e```$hM 3"I zR \%K'bDTXX^)';p:'ŊhHLLBJ=:J gK序BV a0R0>qmPZe©օkؼ)dBӹ4ۓHKk/17#V?4>A m̦s &-ؼ<84ScNOF`yL>:ΉiKhjjR@mm-U$)ҜhmmXhYO_} tvG?D5cւ"zdUU6*ł+߆e/pß̙fi\Լv{o i2 R\l/UX(gv*hA^{u'j W"%%00764@%_YYױci{ ?$-l'#.a]z'HDA͞ǿK'#FFF>ؾ}tp䰿̂G}C=db p O@M6 X8Y.VkTfQu;O6 @L2Mv% F_IENDB`././@LongLink0000000000000000000000000000016100000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/list-add.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000644000000000000000000000113112273255454032434 0ustar rootrootPNG  IHDR szzsBIT|dIDATX햱kAH$D+AX?B[CF+AA\aai#v"B,LD"hlryMv݋Zx ;70cDU۳z?v{:d֕3vO"ae3No3A d홆9{!K|=Swz"(-g˙Z|w͛ܐOK1ђ<'!${V3K8̈́ N΁u}'l('Aq)m/Ǒp0VLq &o3 s R7~1j>,$jt mPcT&tlV%~~3# jiw] (0[@ 4w$H^wIH|4N rZc'2Se_T0/]X&΍-OV +0JOhC3o? WLvIENDB`././@LongLink0000000000000000000000000000016400000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/go-previous.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000644000000000000000000000215712273255454032445 0ustar rootrootPNG  IHDR szz6IDATx^[L\E3s"%JbՊ`oP%bmhR!6QIꃥ5&411J/M5jQLCB 9pB hėo3{r~9XRjJ_ sY@Y:J*y8\0ُPZB) (hy(!.K%ju>Zyz+Fl| –Nݰ?[QqS Aiwo睻V"=#_ !ca@h*LGbss7}9ٹ*3(zF$gM H J 0d=W,@X[vKcT@&4 4%"h.!*f!d Jj@5Cm(@PJO`*zB$3[G'1t"* $("d!Dd~#{펃{?QBzT2B <JD`J%3hoD?[ Hp'd" XiE@7h.]uO<^W5^q̨qͩ_t2>*))dN)sM*C7t_= f(KV>ʎe@2K 4Jy',. jQ:95QYpG |0cx3H sJ 浻+vTׄdhӧ@D x}> @8>zDZ9xwwr.όi][ ~ ̺ [K,h=&R)Xv OptP| ''Dv938۳N~v2** `X\7Q&`!Ӑe6o{9? 7ds2ܾ'8!ǝwkt!EX9xx&IENDB`././@LongLink0000000000000000000000000000016400000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/list-remove.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/images/0000644000000000000000000000047512273255454032446 0ustar rootrootPNG  IHDR szzsBIT|dIDATX!NCA}k8 p pE3 HȈRҤo+7$I$g_>~r }绋ugv.^N@)5Ng= ^HKc/Jj{kT퓦{5Sd L07-Mj%/^^g˶o^UFCj.a&c?pb>RUf/I$I2odIENDB`././@LongLink0000000000000000000000000000015500000000000011566 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/BookmarksView.hqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/Bookmar0000644000000000000000000000444712273255454032517 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef BOOKMARKSVIEW_H #define BOOKMARKSVIEW_H #include QT_BEGIN_NAMESPACE class QListWidgetItem; class QUrl; QT_END_NAMESPACE class BookmarksView : public QWidget { Q_OBJECT public: BookmarksView(QWidget *parent = 0); signals: void urlSelected(const QUrl &url); private slots: void activate(QListWidgetItem *item); }; #endif // BOOKMARKSVIEW_H ././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/TitleBar.cppqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/src/TitleBa0000644000000000000000000000730612273255454032446 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "TitleBar.h" #include #include TitleBar::TitleBar(QWidget *parent) : QWidget(parent) , m_progress(0) { setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum); } void TitleBar::setHost(const QString &host) { m_host = host; update(); } void TitleBar::setTitle(const QString &title) { m_title = title; update(); } void TitleBar::setProgress(int percent) { m_progress = percent; update(); } QSize TitleBar::sizeHint() const { return minimumSizeHint(); } QSize TitleBar::minimumSizeHint() const { QFontMetrics fm = fontMetrics(); return QSize(100, fm.height()); } void TitleBar::paintEvent(QPaintEvent *event) { QString title = m_host; if (!m_title.isEmpty()) title.append(": ").append(m_title); QPalette pal = palette(); QPainter p(this); p.fillRect(event->rect(), pal.color(QPalette::Highlight)); if (m_progress > 0) { QRect box = rect(); box.setLeft(16); box.setWidth(width() - box.left() - 110); p.setPen(pal.color(QPalette::HighlightedText)); p.setOpacity(0.8); p.drawText(box, Qt::AlignLeft + Qt::AlignVCenter, title); int x = width() - 100 - 5; int y = 1; int h = height() - 4; p.setOpacity(1.0); p.setBrush(Qt::NoBrush); p.setPen(pal.color(QPalette::HighlightedText)); p.drawRect(x, y, 100, h); p.setPen(Qt::NoPen); p.setBrush(pal.color(QPalette::HighlightedText)); p.drawRect(x, y, m_progress, h); } else { QRect box = rect(); box.setLeft(16); box.setWidth(width() - box.left() - 5); p.setPen(pal.color(QPalette::HighlightedText)); p.drawText(box, Qt::AlignLeft + Qt::AlignVCenter, title); } p.end(); } qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/anomaly/anomaly.pro0000644000000000000000000000124512273255454032566 0ustar rootrootQT += network \ webkitwidgets \ widgets HEADERS += src/BrowserWindow.h \ src/BrowserView.h \ src/TitleBar.h \ src/HomeView.h \ src/AddressBar.h \ src/BookmarksView.h \ src/flickcharm.h \ src/ZoomStrip.h \ src/ControlStrip.h \ src/webview.h SOURCES += src/Main.cpp \ src/BrowserWindow.cpp \ src/BrowserView.cpp \ src/TitleBar.cpp \ src/HomeView.cpp \ src/AddressBar.cpp \ src/BookmarksView.cpp \ src/flickcharm.cpp \ src/ZoomStrip.cpp \ src/ControlStrip.cpp \ src/webview.cpp RESOURCES += src/anomaly.qrc target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/embedded/anomaly INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/embedded/embedded.pro0000644000000000000000000000004712273255454031216 0ustar rootrootTEMPLATE = subdirs SUBDIRS += anomaly qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/0000755000000000000000000000000012273255454030243 5ustar rootroot././@LongLink0000000000000000000000000000015200000000000011563 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/simpleselector.proqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/simpleselecto0000644000000000000000000000034412273255454033037 0ustar rootrootQT += webkitwidgets network widgets FORMS = window.ui HEADERS = window.h SOURCES = main.cpp \ window.cpp # install target.path = $$[QT_INSTALL_EXAMPLES]/webkitwidgets/simpleselector INSTALLS += target qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/window.cpp0000644000000000000000000000545712273255454032271 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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 "window.h" //! [Window class constructor] Window::Window(QWidget *parent) : QWidget(parent) { setupUi(this); } //! [Window class constructor] //! [return pressed] void Window::on_elementLineEdit_returnPressed() { QWebFrame *frame = webView->page()->mainFrame(); //! [select elements] QWebElement document = frame->documentElement(); QWebElementCollection elements = document.findAll(elementLineEdit->text()); //! [select elements] foreach (QWebElement element, elements) element.setAttribute("style", "background-color: #f0f090"); } //! [return pressed] //! [button clicked] void Window::on_highlightButton_clicked() { on_elementLineEdit_returnPressed(); } //! [button clicked] //! [set URL] void Window::setUrl(const QUrl &url) { webView->setUrl(url); } //! [set URL] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/main.cpp0000644000000000000000000000432112273255454031673 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the examples of the Qt Toolkit. ** ** $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 Digia Plc and its Subsidiary(-ies) 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$ ** ****************************************************************************/ //! [main program] #include #include "window.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); Window window; window.setUrl(QUrl("http://www.webkit.org")); window.show(); return app.exec(); } //! [main program] qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/0000755000000000000000000000000012247412261031000 5ustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/src/0000755000000000000000000000000012273255454031577 5ustar rootroot././@LongLink0000000000000000000000000000016300000000000011565 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/src/simpleselector.qdocqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/src/simpl0000644000000000000000000001257012273255454032653 0ustar rootroot/**************************************************************************** ** ** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \example webkitwidgets/simpleselector \title Simple Selector Example \brief Demonstrates how to identify HTML elements in a web page \ingroup webkit-widgetexamples The Simple Selector example shows how to use QWebElement to access the Document Object Model (DOM) in a Web page. \image webkit-simpleselector.png The QWebElement class enables access to the document structure and content in a Web page, as represented by a QWebFrame instance. It can be used for basic traversal of the document structure (see the \l{DOM Traversal Example}), to search for particular elements, and to modify any elements found. This example uses a QWebView widget to display a Web page. A QLineEdit widget and QPushButton allow the user to enter a query and highlight the results in the page. These widgets are contained in an instance of the \c Window class, which we described below. \section1 Window Class Definition The \c Window class describes the example's user interface and this is partially described by the \c window.ui file, created using \l{Qt Designer}: \snippet webkitwidgets/simpleselector/window.h Window class definition We use \l{Using a Designer UI File in Your Application#The Multiple Inheritance Approach} {multiple inheritance} to include the user interface description. We define slots that will automatically respond to signals emitted by certain user interface controls. \section1 Window Class Implementation Since the layout of the user interface is provided by the \c{window.ui} user interface file, we only need to call the \l{QWidget::}{setupUi()} in the constructor: \snippet webkitwidgets/simpleselector/window.cpp Window class constructor This adds all the controls to the window and sets up connections between their signals and suitably-named slots in the \c Window class. The QLineEdit instance was given a name of \c elementLineEdit in Qt Designer, so the \c{on_elementLineEdit_returnPressed()} slot is automatically connected to its \l{QLineEdit::}{returnPressed()} signal. This slot performs the main work of this example. We begin by obtaining a QWebFrame instance for the current page shown in the QWebView widget. Each QWebFrame contains a QWebElement instance that represents the document, and we obtain this in order to examine its contents: \snippet webkitwidgets/simpleselector/window.cpp return pressed Taking the contents of the QLineEdit as the query text, we call the element's \l{QWebElement::}{findAll()} function to obtain a list of elements that match the query. For each element obtained, we modify its style by setting its \c style attribute to give it a yellow background color. Since we also want the query to be performed when the user clicks the \gui Highlight button, we also implement the \c{on_highlightButton_clicked()} slot to simply call the \c{on_elementLineEdit_returnPressed()} slot when it is invoked: \snippet webkitwidgets/simpleselector/window.cpp button clicked For completeness, we also implement a \c setUrl() function which simply passes on a QUrl instance to the equivalent function in the QWebView widget: \snippet webkitwidgets/simpleselector/window.cpp set URL \section1 Starting the Example The main function implementation is simple. We set up the application, create a \c Window instance, set its URL, and show it: \snippet webkitwidgets/simpleselector/main.cpp main program When the application's event loop is run, the WebKit home page will load, and the user can then begin to start running queries against the contents of the page. The highlighting can only be removed by reloading the page. To do this, open a context menu over the page and select the \gui Reload menu item. \section1 Further Reading The QWebElement documentation contains more information about DOM access for the QtWebKit classes. In this example, we take advantage of Qt's \l{Using a Designer UI File in Your Application#Automatic Connections}{auto-connection} feature to avoid explicitly connecting signals to slots. */ qtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/images/0000755000000000000000000000000012273255454032255 5ustar rootroot././@LongLink0000000000000000000000000000017400000000000011567 Lustar rootrootqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/images/webkit-simpleselector.pngqtwebkit-examples-opensource-src-5.2.1+dfsg.orig/examples/webkitwidgets/simpleselector/doc/images/we0000644000000000000000000044416712273255454032633 0ustar rootrootPNG  IHDRlsBIT|dtEXtSoftwaregnome-screenshot> IDATxwe]o{rN4hlY^ ۘŻ_La^Â/<&,&〣l+ZVH49wĪsi{4,>sϩުs_% 3~ĿBw-BC-~jK (%-M`#]?n K/Vh4F2gbba$&-Fh4Earr0^h4Fh^M7^Z[[.)R $J&z(B4%?I2)D}h_R B4 Fh4ͫpIN*%a1q4ib[ւ#RS $a#)%R)i3L6AI?,T[EXi$ * $⚗KWz!A$1iRMOFyua-5R +(|޶n]jӛK3Tr|#g᳤R.eѠ?Xjtvv$cc9sǏ:m%?#D/"|?```uN>T*199ő#G8}4ccɷTD l kWQ}V`%п}[Vy[-FѼ,J% ÈAoBZ:)u[yw1GXVѓR1rw`ZR3C dsio~(,èE4;p\r9A5oqwo| q4;_FŸW7a.~Wl KLNT 1ɶ1r??-0+6NBfpER1R;S̗(~灥ȐJ>7&__+,US6_|_ |v_/h4͋͒( uXq|z v*\5ȻwAk_sJET+QKwU' Blv܃e$cnÀjz۶ AD{n\Y*ֵ|OE3#HF *jH@&n&M.5ATxS< K.반 )TCI\3er NXCW&n:M.m"P(a`6'():]f(QV;;-ر3.bu))Q2`..VMTRDq^mFk4FHT (}YzTprJh5dKgDm2sErm?ǷL"#HRT*U8R60BИ+ #  qG.wKE;n# Æ0Z6M*3:zckO6fcZ<߸|=3iR):lx;7\ʼ {wf?;=_QJ)wo+_8K"0&t ;oKa(xo?4ɪoઁ Txϟ}*cc8Nn欛fPh4ϋ\\0ymw\@F!C^=v_-MV'KW/nN*aG~*q nSJ6xuyR20ϹDq@Գqǭst>0D䳖 p칥u F@fs]ۂ|ĺ66Ø+V0CE?@D\m?>t1l=(F֚B]dK'u›}A)#e+W\A PpȯLdt/W'?nf 5]_:kx~qQ9#V')FTQo% W ieÎ y8GI, *KOO"~56Z az@X5m>|{Gyk坿ɺ_:O$B&eLQ]PF̡u{o@1SY`[O|kÏjߎO7,N e̲lDf ?Yf$_Gd332& j:CNG1Β6a':Þc1f2}7mq`Ygn l>A>ðٶw c뉘?u\杴>|/>;>ȧ~v7+SS&Q8cǿ2'$(#K(O>A\ y}޽aeoyɺ9ƛ5Yvf9ƁȆ m>60]Z6F3s[wCͿ/~{OSr]}lw7SxKKF ͕#ݼʣQ)zkϬg[~_mw C!f*MKĝ]5F"6 ac>Gw]gxa;[8Qa|:d؈ڲ/.\!>} 5)eaЙ]$jwݚC*qӰm%ʭYo# E>߷]]cS@s&2%`gfA ͚>'~vkv<1PqdE27GK*`\ܬ)8k'՚1\#8xpִaJ}T.ELKքFh6TM[qxs'SgYͭN0 JU/5jCR[nyMc\`xjTIZIt<!]H cη>)K|߯EvÄi0e%mWqy_5F{*Q,>G0'ˮu;+27g9WpVuMw ,Y\Ry"Z:a"9\PD:3&0DR =+ax'_>܎;~;\BuiL$(t?kXJ2[Aպu3 |&6Ä#cͷkߍ;| U̦ݣ,FGGfqÐ`OA˲6yuᡇQ"jXa{Hh{AN) ?ķz\{m2{7 2}=z>xCE#/|9-?&"?;$6lCŻ8?[m\G+|cN5FsIz_Q &';WNY!TOxeD0xdbY6, J R&a@WqI&'& ˆ+]װ{޽ݻe׮k暫 )%J1lZTg ;8>peo#2ă{0,V|O|~G'B1c&`2ɾǎ3T LL`uwc>낏7/Wc|NjB b;,N/qBM -3obǹ Mf0q=_Gʥ} I ,?'9Y1Uc1 p#~Ŀ>b2n6:tګ~~~|/qӍ)DZ5o2E>[Eedðl ,|0dU`36 d8r0e.!:R)֬Y0Hf7$'Q !@ =  SL߉%b9F!pƞ* (V\ wFDG!^aR$~5$$ؤcy+ t-PqDՋc{r1 BdSMEP`) =JӡsRu_GTaZd20o˶H&ӻ]si @) oJcN01K[$;ŷg+Fh.A&Fn8xNY a|'&{;ԻbL&lQ`&i:u3WT8wJ -#Uy(q,XFP~;km4 C@G^15l,עuYKl'y9{(i=zZD#\Y9s]z~HoTy'շ:J(%)|}A{_*j6JEZl&Ma (+=BBc_Oi={}^d#us!^4_wW^},8>Ȳ`:XIET*j@D7aȩgXS~mד͹!(QWQS240kE{?zZլwK3MVQOͬy/Ԭ=Ec,dI9fݙvdcb 9y܄T1ruF.^R@C@r<a8#?Oi=zs,ᥚ% bu[lqnv3ГJ~J&vIC!rɧ\8ۢc`mNVZi,$#j@*S,UP JܙB(]Etr+8%(+izZOi=+U`椺ҝ1b{͗]o a V^5Djѧ37 )}%ql0"CLLhehmIQ8isfqUsRaȪ.={\kZB_>Ci={5<󦾜J:Y/zZOi=ޥ,wigwJՆiig:+tbez3mtc!JH|?HL@C(% €[ZfD ,V_F;|P,yܸeuYr9ITOߋX倔I"J%*H !b,AKw;m8.k4B4fԻ4٩=z^ri4FjeajA6 br#b j^g:pz-Tm_x#c** f}6( $ # ( t/C}Pݠ&4ٴK8o1xcgX&hYy =Fkv8(Q{m2z#`/*@1*aA;#X#(N.exI@JX&3m@BFh` IDAT^|L>>eziMP,y| i&QrJ#WH[)V Ir,@qRR΍!a"em["#F T*:~mb2k>31^#( (rgdd $]cկ\K}52 +8ta9ytD0IB%Cd8(E"o2FT'(h+!.">#9ot/11 d*P21Q1qlcӲ3^ !l/i=z?z/0Y~$f](z#MӜE((_=d%\(JNG.R9)f EN0 MabSɲ0EDIB!CؚMj[Es=5~ )dMORtN'Ӎ۶4L'pr~nJ2 J穎2zè9&uC{p&Dʺqɞ~HՐEv]G_W'0عqO=wyi aF5F,K0=f3[UKS;p> CƒwбjBE ebT=—a> 2ԢB%*vH9UGJI|^SQId,%:ņ6tntz2]28Ø&+>FT:qțDQ2jLa^6ta:H(#3I,ey`Һx'ׇӒכr6YZ$ xQϑ վ\ߕ;֒XDf(yQe4+#Nx)Uc&KA$ !dmz4)jk`I[Τ͡TkI@paoz 1,V 7?Hyd?塧tɾ+Y ǶjgƚR51 q0U/PLfP 뮺ܡ jOD06DbFhH5l-epۺ\a#>e/&^ I9U?Y6Ga6Bm%c 4SC*EC>s%\0-6kSd;WNdQ:$ce]7'O`:YL7zϐfh*_A&´ #)GLBՀ `}WkR Dy32T,`O{³Jtebi2w۳zZOi=^L˺xB_5Uۥ=3'ؾa+8bkmܨLݵ;KSJ0XP.Wj{4`)9s4kRHe^Ed,`۪9OQOX'P9:Uhd)BgҮI.mv ͪ]8~l7ۂ0ma%dLk1S87sjg5Lbً+>rYѓo3ٞM}ѽGh[} 0 ;`g(޻VRXy=ؖ E8&#j@E Xl]cٳ2~ Ah*A Ɏ)+0<"kݧ)`nI,7GM $20LgzvaS_2FFTLq}d4-l 6ߘŸ:)ϘiRg2Msmo<4O~7\s;MmU,6B\83qt-k'w PȦZ01 j!38}mƳF0"2V`\Ξ`@Gw1Ƴ|mgzZ8,ysܼs "DcDk[Qz:niifG5.0I%U)d J216IG*Zn4Lių{+cȰ{8ݴ,Mg+QuSv#},Óa1Vdui[}k2VpљIL;][:GV(cEسH?2d՛Wp)aH,b㎕TGGl֮o;%{snmPOP: bpOq콋LIlY!h)n{S1}Z >BeUhU'F}}|`-RFX4L\Бood჌%;e! fL2^^|Yi=ֻz/4?c!6 A,'3 ]#Teoz05U"?<24FG rnH\KJke. =C|8UI NXzG;UlN/8ݗ呧[X/?Mvܜc60M.ڑB&qy:Sf|l -#|{c9;f3~M]rNdX< bu?κ"L2ŗSFh4$/aXHRyBHqkNpik3RJI2ETcyLQZ+Os.M#lN>NrO퇎3QLP.w;%L;5Ɠݓcn^;g^L6^R lld4m2r- D(<'4-m6 s5ӤV o(twrյƷ]MkS r1VvlP<{ty֤ZIe̦h{y+C믧%M̠0™kM"GA$] ]s#NclG! ڃFv_c\+mǸngNxI1z|G97ks yĴl]׍yt}kѻXRm<\e5בg#РR̞ <6pfh3b6h,%R>xbD ]=Iwe`fɘ^|?zZO^.m?g_,BB$kٮ͹I:T-W(*MFfP*0Uƞxe ^K{KcL`T<,vO|&;#Cg%('ݾDϝwuٻd6m`eTH):H(RBbDZ$B(v!hkr͛ykp>vCJS鵫p2ß:IǺ7__yp[1V6LfI׏O%ːw|]aᒬ9Qzo6zJHČ񃳻s&(5'*X7A"5[b8ɓk0K:VuFx::xykZOi=R^xLļa߹+jbN!T @%ݠb|7-602S#$AQ>8+ lvpՉ# /qj'%)xOA~Z&ޅ0mRm)Oy|]qMwQJḊ0b'bHjLX 15ٸekq0b[qQJ!hT) **0-a@$'Z۲[W&y@egn0-⠌ivMÃ|Q:&j#+-tŴ3a1JDϑfRڻjϹa{c4Oh:7$M=_hc%(H)6\"C##ZSX"!.o{^(zZOi=wsQe Y(yGOO}~;Wfnvv](RG$X1:Rܙ)|/⑇rn7o⺛6!$HD98yR j J+d椉b cED8I$X`ى!ݴ}xmȻn`ӽyfPt +c_zx'cgٲk6Ccws|/|vkSĸh@ Rj@)5Ź},4,'R1ԷIOIT yMBܞn^v{~3{`;6&V.\AeYtv(H)tYkxS?&">A5 hTT%۳^ {ט蘁5\qn's',"lB. #c%cQ6w+੭~'Waa껄-;@)EZc놭\~+UT8Nۄ6h_vɦSDt/]"qVVP i0"ТďXJHXN#W&ۻl62]먞xz4ʑnl15{O=l\?ae|瑭Us!K*󚁡q$H6['!V KtN{ `33Un(:"Vs\+X0U3S5141^ƣFݢ\2Tz\vf|qOI033 ) DqnTȭGG5e]t82qdq,[Kjg/9w k},K0vQ&'[D9tOL?s9K1ZFOg/W_Z|'&XaX~?knޯ{/ӭ,NEwO˗iT`E3Ǒ'Y3Ї I ͗vDT ݃ .[߹Lz,'Ȑ=xBcu^wY^qcdg8>z{뷜ŗnX F6JkE' (1@AfXdJ-;9lܼǟ8Nߪf#}F QalaIjyt#͡Sth%4?3{b,.\8!l?FPG~JWP(fL:$mFm񫁤iX@+B-kAY/gqH(TiᖎєDf-CKc:~s6[\6ʣw&968%)Ǭ]a`LzT\#O7@\ iA;qOYJ>m 6en@ R.X=wyF1[$nftB İ-Wq '8țo|?Xqk>Ĭ<֭S[o'_]/y~T'ZիWqɎs;+qywwܻLz֬FHi,$^&IKQ\LEs#EepaP l^سA 8n8 h6h vN"xx}E ٤ nJ %Ragz>%l0d ,⑆z#8uJIw׊r!J3!պ&y GOp}M]C 2%s0WX͹ 2WgX;q,֯plvhcci͗3$ǤDd\<[pjduYf+cq,mFmq*ytc.jGr qvʠz^*t9:qb (,a8[x!KkNg@8_S>Km1grǦC%Msy9gk\Q:t)q"^$G:eIܞh;p7kbY])I4eq$bED0i%F$4AiS[xM'^l ʵq.0=YRR؀8cCۆ #y6\` Zd;ٱ.Go*TIsoOejr*&,۴%*NossEQczz]za 2mFmvN/Y$#z;{عvjg)N%+>cq4}jbi[Ia /Q jvbh!A.K\@xA]Aj`~:2]+&#3sb[@#The|5Qy7OQQoۊK{-A %5=ԐR-!~Jip=%u8(ҩ+81ư~C/YB cLXxtLE(Wq'y׿HY <6SߏL,Zgnck6 p߃?ly 5I\vlʲsSɐq+y8T&E1:'1z˳SryS☓X/~Ҿ^.q²` Fm+c RJj:Q$YjKw̎7ta%SV^zMm':ua%ID֦T :t+\61&O3p8^j!ԧ*rY3/>#:"MwR=1ՃHiK>ϓyL#C\bRk\$hdXIH&Jsv:# &3 D*) S#LoIH)6B?<.+?JufF0#@B ! Ql#pl.[GR}h3ٶa *nwa9z;]=T$.U3c+(˭+|쾮t.gzj#C)ERca6=RT6%mFmˊ#( ;6m0S;F\DzJt*4|A>kŚ\Ʀ0t2,cEdP2sGֲ> ԥ$5RnʥZLF)0FӈHHE%SEHLbSV!AɄjc8xC,J$*IA"Ӵ66 E+VM~d]quyBܒsr7QJgW7'$?| O,F+ p%4`3q嘉 y=Ѥ\ `)<nsi3rh9d3091K&FmFa|,ĚvٹiZIfJ%F?"W$ Э㕒LiЙ {V,-~A)Q3gՅ_\:0Qy@!gqQm$_cXկ7`j:S+O,4%^HeR%%-(,h嘴J =9TRms睇)Bur\h]aEHъȆm<9GBF)^bi CCOԸo4;7uewaGd'9xU>ql UEIfgiRH+3xɅ,f3 NxNx-c4b(I#mFmR#>  z@#(\m;y|iX1 )T(%ĢWꍀ(JB9K,9Z*'cUd@}zQm$Yq҆hxTܠ67͏bhEFyfɳeK?X6jN ĵ6(R&]mNdq81T %$cs%nZ($3!נ@+cZ%4oytGpe z9ZDD'J(iPR$m?"#ʢ/̇ǘDS4|+ =C%S_!Kɣ`9;d26h6㜦kXpz¹Jij(MI{ٹ2"rl*݉/evܘhmqlxG;R&BuJ R*6HeJMR.Hk"݌#=ynMl"i,+*s.۶ JIF߬iuoxos}> SQLc.:"\ӾҨȢT[T?펨X_w&5:pѩXntdqJuɦ>aL 81͑3l޲ )e^v[d6h_f|}?D6Lyd TJE C5h0k=csrq' C,;s^c4jm1paxQӿFu2-`{B0^zªn7׍|0c O*23`&%o:!Ęd%U9Dj1j.J1~ܘԅli `5Xի (+99W\k?Mm>䁲d:;:cֵk 6 &ֆX'L qQrgUd ZKdX#ӽ#l=Ad ,;uy= Z- >Dgc|4 !<|灇ѷj ===ؖɯvl`mF"87VgO\9C#7B9ǝcу9 q)M%rs%^m86`Y1M-PN+(Q>lUљ|R^T38P{ıFF,!MMhԤ:q7chY.8V t9Nql!2RZҴM`5HW_1JM#Rq ?5&]H&BAoDӈ5PĆFIFst$٨+4  I;LsKZV %!ӵ-,ۡIw! OG8~`>QA-=lel;ulb.eTGٶl2yxmmK`mFRx~a]n}iF]ҚZ]tVwuNJcGGkbNFt|A+] M ff+D'q1LGRe0:qf7bXFȰO[f:ma.FW$ňf?*l0M,B9#0jpkwiD]o{Z moNZao]r,HrpR&V:)"Io!۶u}BcѲ%)10lˉɘO(>+ht'(E u)ac9Yr;4c-[)TB'!Psxt0vL m.FmF8d}dQ}l\+Ȕ峮O#M166ODQF# 4<0q͗TŜ:ӥBDy:6nT{0"}rB1F ,0"Ut#o5 iIhmF=` 7fyp'~VZ+DJHYЄ-XDĆͲv]Wpxw{GVC7l.t<4ox%%lh49'AȈG"&+3d=b0ZhlFt%Ô%KLToI40mb>^y{nDZ|!Chuc]xUe{sYF6A5299K\Yz.};Ʀg86nFmƯ4Pb K.8(֌Mp",͹:А`%3]bC1c;.@1q+ld fh6hEIi.j,v*,X]PZ`e閻X4eb~[[8xh!g sIHg/1F=S? Kqu >qB6Mlkvh-"U/T֬b.9ز~i9w*v'D0b2X|W%Y0䰱ٶ~5y^sLNUl~6B\mfl6h6~qZD Q(s#[W]A,c0X]M¶": k ᝇd\`5[(ep apǘH|t BprZ |zJel MhZ GVzM$lum<Ų _G-=x`>Ր/?h4Z c!ġI;5yA-22>efhJ!J30F$3A4>6t5m:j5<7t10\+X DDnͣT$I4L05mlcRIdPE?h~% _ȳw86 hIôah6uA |8V4':MkiխQJ8\v0lzC{8Vbۂ/04duJ޷<cikehHAH$M$" :!2٬K!.ga4Jss JzC|?U|+>Z)d бll?!2?_ 1-Rmm`XcG_Dc]U,| ]]>9\F IDATkEdR9|h5Zġs<7v}*11{1v[(bY,r l Y g#^q0D \"ٿglr6l۲p6h6uiAaY8M&E>J*9uXVcŵ{wbhaDpjK`zI*Mwg/ƈc94{4",FRL:P08#'b3 $Ă`lutvLM58::|LLYb;s߿c%Qat q#6?ǿG&oZ9}&$3< 0ችS!RiAggbѥG#e}|3[y%:Ƕm>i4|ᒋvFE+ecY~HSKaL'a*J_hE&HfێS9"qZVvRHmFN8-"hYױўC61 <(W\tjm{&RxH@`q }'!a=$[pDY&f٘μ]4qB+cb"պm r9JmQ,ds.٬Kq<:J:$iFr_Y֮哟zPj 8l|wpcr2"eKG@'t\Ugvq;3Y`Y6Zom 1ɶ&i4"v?8X f#u3.d|`.C0byEtT²\2*5IcYV/|%*a-hKôFmkӳ -\zd#I$se&&g,Gqj3Kh[4pЬpHjwpNɽ0V"bYRW qZb:heR 0_--h$YÉOpxdٙ:R;c4`Z$גW\fx YyL_A3EKDcujRcpֽ,7Kyxtdzc_~O1=^g݋XLO|[V#jUI+K8qA"89Ic{k02 mr2$c`rr5*BX6M\RmP(R K۵-|.Ϟtcn,!ڮ6h6~#pD`s}(Fˈc"[-u g,IY|2Fnc ]4BF:lCc5* c 2` ڀ,f0;ucR n%͉*sO05,%{d$PZ86kv"+cY& 67ȃDz:%B8IC!%=6*Y5 vUBp<װXd߾}]GM❌kw1P%ֻuќhj!|:䃸ߕ'pXχw`" R.ǸY *d,OAڀF$HiQ2"Q}ĥSX6Og|3g@z.΢x_DqO 78p7~FWHfڨ򽻿Ƿ~-J___ u+Y?˕\/h!Qq%Wc[Ϩ}zpD8C&%Q,?6&h%Wϔ0 ;,t?ȱcNhTLk .>dh aX,05U9'k(Df. 2~1 'HE"yt/ۀ -!,x4ˇp7͛BpLn3 ].lߐ˯*4%_ eh0GV0EPĺ#PuDrqŃltb鈨T:,4&NKZۖكF -ɘZ(M3!|#cUbzټ :)d2GQ[, )UKm㴈cScjE/l*vQZQ197 @w?/\wejc@ﴯO>'|_>Kt;XhA:Ί/ ^r MsyOZr_yGxي7}_`ǧswsQ֬]g_፿Qtdl=DV-npgo:Z\enaâg޲,"/N#3|?˲NnqDpa-K6~CJE(T/jrݕ\,,#F7״6 \>XN1R'9R l& qJc /wxLL122֭W%-Il; Q:rsb p2u:yomKDy"lY#?5===xjl߾C{7Oȕes[ϫq*~O7|so 89A,5,K6?]'3Q*(KB癘35M&#)Лى Ji\,4X1IIBmTDYXBǪE 3NK78w}o7 2l|>}7\BF> ܀Vm_>G|8o[O%rӇnjl?˫/5jeann( Xb+~_cYWJ:>)d}y{=|S{o[qg]A.?u|q޷wwscws|gko|}\m" Z؎{8;1M_W8y-Wr零1+YR2uRpV;,,~&󶷽~p-by,biZI, h#PڠX`qllj%\&foq%rıcjJ9bi4@?c#&h.d /0^8|XRdb!!b:;|ܹI&===T|J~t sضM 8v㾇NB؀A8`6F'x AXFk>0q2cy2@3:Vc.X"I2 "#{ Ri8A$ ՆDk9-Nji%}e,}ƭ86&0 UBү_ft՛Z?} B$IM{81{A.=R|RDW q}ޞwo~o̿|s6çX;Fݟ}uη6oxy5\9>q8 *y޳~\y̕J\N9.=7Q/~p=_x^5L^}7烟 _y׿oy[x-.RRe?߹wZ}3o}ww $y\t pϞ{?}{˵ヨ??㽿ޖ?{W\ϟޟr3֪ÛC?R6yX-\% ;xoF[o;w~w/_kn{o.{](m= xA ~'ttx}KUYny:b Z$x Lܯ-ZA(|A*JB;Rac ^QphOչGq~|_ضs[ST1g?*ql0I_{&. 6njfKT@2q 19k1[n0 bN 6,!wAVΎ C&qm7ۮc\2h% v &g@&'BHp6bBkegHD"(FiTT`SI\;g=MYNL֙ز}'Rq]r6Bkf[6g9 ˲<-B^Z.aHE/. ;xhщQ:3Jȏ69w<|ccIOGW%a27ĵ&KqV q8붷u_GǚFeYpn}[Amۼwp!9'GEH)RazƧypZ֪o- |C_eۚmIWqx8‡zYd^p71N#l K%Rbu[o#I ڒP erlZۊ"6¶m:*zW?^ͥ;/%܉ Eg^EHEqz<,nض8d|\.d:<wl_p.v6 ^ՓHz IEmJ d;r`! 5Jcg1 Q}80đ~Dc׋]Eख/9VVnY|ofM$*%GJ2ı"7t5"ۑ2yiN\z\{l޼[Ď58 شF=b߁6NXܜEq;?cf(B IckܥLnRڵk8aburhcG JXPQFc=<|skˈa+p~KOTZ6mنeY-/ӗ9[⌾3T*_jJc|fRDQ:"7 AlځWyɇ~ףwQWpXP 5s|8u Ryz.n/cy_Zij2p|ޛiUY}dQD P5 5++kVf-Yne,. 003\>?2Q͛Ŝ,|ޟy|??À;RA3dJ<') <<]bHX 6}{\!E}Q/dxp eiXrWΟ)JAY?zj~mu&j) n0MLnk(J}icy(ضo/ЁC1hX,K{۞t;X8*b9D%QmiT6Pp=\w;zR*~_*9%0@lɐql =fs;QLĬ2tؑiBDa dZNCnYῘv40)N?^MT?$A= sW|b=?TMH&$ J> \|i xt:Э=g~3w/-~iw,BNvrxӿ{:O/=;.g9h8x0{O[g[Ƕ\ox۶D"$I4s~4u])7?gzޡ4HQLG>O=2\ۺc+sé/Rh<_A. /c~p<#/8Q1vs鏅X,F*olHWWlιwni<|122 x< r̍vo;VäIUU7Vr4B"ncT,2uI^zsN?|GŐ ?!eHL@mgw) LS2fFL8n00*Hv0-4MZ=--uwe~-vۉضeY5W-OP(<4#_s?O O0z73ޘǩ>˶~+^:Ɗ78xo~aO7b=a\r%\}#1CPX,"җlk>C D*7&nyd_~;y:r朗A9JB_x+ =g^}~ 0)ﴼ?AH$B<ǡ=#?Oٷ 9}yWgRj\ `w㆚~_WcD&DBQ5׋8a.mƀ,FI:A[0v@)]Bز$?#Sh(PY*"BϺ@)plq(y2m%βe$^H`qǑ/\ole6 vae|(*^\ [pPX_cU&Lom<;DWē(jKfA9fF3 ̺ ^Et{n )vgDy[F$6[l Q!_NnHFA]V] IDATXI{ޢdȠe褭DT³Sy{:Z61c$Əͽl7W*-%J;E(#oOx)|W!Diiة\ɋ4EkqW`mm}v.gsdmۂ}\k1 Yb֍< n-wqL?`:x|@BzT0YD\$mY~%k6%sо[/kK,azz:a0y 0A T*.u6oﲆd,ɣ?d")M~뱻xg̋H$knۭ<:Q.9f0bM'1C0w+y_P*(|oͳɘc0,4\΋\o^Mo @l}\JSs*o&H;''_ vf6dFUZ\?|Nv`z?./PT0 @2}jNò,t] GLjRHUt%BWDDDur 8JL;EaEm#WԏmU(mʆe@Tq2h2Dt<ɗ)D: D@OcᨊB4ѳ| W!b|L9aM839miW(Jꏿ#Gm#&iԦk9()0 ~_Յh PL]yUyeKYGLWWw]`v瑍g) n`~&Hgg')ِm`ցIn}os۲0joT\̓_lk#+ ©w~}ew^LS5"d b&xs&߇b8VVI =/ Vo(i\Wœ9ҕI)Q4I^|超TcF؎^s;5E1箅l&_x]@J|8̱07߼֎"Y3+ݼ]B /q,,KҿI) K)ym%K;@Ĉ%CR2ebL=o7޵Bp{TO*+㣪*SԠH/DA!P8BCU8XfHJ&Jp{P10Uus/^r̃3z8gg*{0O sQ7^ِ`U=WT* ,Y[BUUb/-[|>_~ow4Y,Ze 8rʑ<D?)%t,/xa |s7 @Zzz $s k-him Wl\M)t.}g)VrWH&U<魏YZ8\&P~KUԠlcz϶rl6dFTu>킥 6`se e~] WUbl$F~L8kmkO.xsz 'P(0H$~tn{Ͼ,N@ɪi]}'ޮM;8|>< [60a* xڡcקĒ/˦!K:nODyvkTU' I߱q)]38F,Hؘņ6ƕc U= ᫉n:_2Jҙ$}[U!(m lD[eֶim#4Ms=fӘɖalL᫬׮*DrJ3d' ömyi:s@\1^~6n΁"0vY‘1&y3Ͽ]ȡ).Xn*_+}@'@oI*Q4L,P 2 +18@K`rBšl:(,GRHڻLJikmgģ=܇eҤrdR$aHa+q"3ooZ}CQ%b1$DeYt;ٺckpgu#`p`#q* J4{]{Y\?Whϵۯ0}tbk7:b-cUllȿ =(PJ\eR |k:f)U׷od2Y\& _ͤ]wUU~Xy{wͼ]:UߑQ!Ы3_fla*mhhwPwDL:Suq]'}=y[v [rJ̿m> u 2;Z4md2!#r[6]2mKE\7.W"`ꄩL=\.G{m}aZy-?QFq!q1b8g{֭3Y%+cQ7{Ͼ# _/njTŷ4MxO;V?NRu8ē #B.7SnubTݶ!I`07t՞D1=umGRXǾưeiضr\V*SwW%ÇywSt%K+0 o?Ε 5WZ6~= 3{x.yhmmvѐ;3WBzH.#ɘQ8auw=.z#%HƝܬ$nel*QifvQ(( J *mT((, !U1L7ܦ _Hƫ./U3}'9rk7$2j \ AXs4|o@Q:>xbL~Y}q8 UngE(H$mS,y7I՛VȿvlfNiBqa'l2^X ^!448N,R?|4 j3z~/ϰe ip+{ɕ}.{K} ອv{/uݒl#^Dž">:]X*VvjS0XD"t>pÃ}/p!s /c3:SoUU%Gn)UJގ{V| (T۫/WATq/EUho"pdž]I]Lz#0Z9<(J}gX8M(iؔt2x`=F/vyB7NwQ\ $ )=rH@.l! +\^BeFɨ9R4O(uʊUm 7ݺҋJF ~AA(身SUW,`fWcO5>yZTf=ŲN63p@Cb7R,{>?}G^؄ZXJH,79EQk3;چ6Z\@UJiKP5ܱՍXɳuG΂iK2e;+6kiQ-x.HlWe98RH$4r[)PEPH0heô7XVQC$XH4Z"']V3LvZFvc۾{_"'IxϿ<{M7m´*3N7{;rj\Q*f_e)( D&nHP7Ͼ3>HWWʽOyW%/e>}JlٱL&k qxgGOSi摤* ?sz.n̚:+p.Fv0ljD>'DP{W{z]Q%EUTg]׉F 8Jr:6S~4Mchl{!\X, 'ǃl?[sc3HQ~Ot~:觬mY ?*Ose6"1>33wR2|E7NcM#m}b@L7;{Gupg;xw˻-OuGuF#P7hk\.L&9yէXa|\}V)cХhئm67ߩ^%X !H'L70_s9e)U->hR64v{/xP gfUi)3y'{KJTUިcD,CmGTh,J"'I&y}B5SB罅vyy Ô:m(TLBsc8$"m h\OozJ}MAd5OjxsKEHO9!/^իW+Z,x#,V7xawZ[w`&mazi,´,*y Ӵ@ݼRcـ\P"0,΂͎.l*a9&xACsȴC|s_,ǟ|&O ![O$äTP,U()) ,1 R( Ddl&aXIơ5ȇâ}k=sD"A"pWH$F}/tC1Mw" /$'vB}FN $/a ƷV˪Хuq=}8sEO>? ,t]?P(9Bxyk[@h$o`|xmkݼ}3߹;s?h6Rݥ+UJ\~g_|i_ }潐(W|>d4W ph mm\|oWұ4ㆍ#ֺjm.h$HB0+ο)[vlGw},?p}P~滁Ov"ZOf]2Z[G [۷H&Xy]UWn\A#IUjٳf炀^q&36YjJ#&/Bū|p0j([*ї͘<Οa0*y~_gyϿ|xl&f{'9n>}9;<ׯRaR(u*Q(q)qt#Dux:Vm\Uuτ8s֙|ϒRranzx,N]]귫SR6ʜ64.; &\__O6 lǡRp?SY-biðxz&3CO\. iEZ/~vHqyyz{u\r%>i%U_ b%cI;f_]v뭿9C\f\uUK?})jܑH$H?ǙA6T<d\iid3_dthrNBp,\.;49WpSt}pd2m{هkVeH'ҜviSHqHRԐL&mG=5^S5>po)D"jjjd2 ?B`SKhϽ۾{_Wn>sgg#)%R9sp_n%GN9N9/P;C> /?iٹƏ?Lfئ{U*{r\xڅdYjjjPUzsض]ܵGk ^W3K߱~h7p!hA;;X}Ŋ5]1 @=ko[r|Hg{<0|p#Js<`+{}N V!N 桇ؕzj ,cZ=ZFQKvjHqsRݪst 2ykʢ7D( 6lTb&%tuB)4M7E{;Bh4JMMM^e4M$uuu*&\eU\W-[P*Si"ғ4^~8M0M|>OggpVJ8Lt}4M:;;rT*|êRTrѯ{RfՔ%2LJ#HR]0Sl,}g)[vlA"inlfɤ l(A]qv>P7T2E*Ba/HNiX,MNTBUՠGQ ˑ˹yi555{d9CXd붭,_v"0j(#\}f$ ].-b1F A2 Bud2AJ5yg;4X.x:JΠTL&Stdݦuh%O2yD~үGX|c׶m*N}>}>纺m_ݟ|'tIdYjkkD"ѯ9!<h2YrK5.\>IE U#:Daa9o!Mt;1DPDd`^I\'@MP1J,H`3qLͭ;EBب^fnguwlM ?ޝ:;y}B$khjQT5N,BUvp/ 1y|x\uz'#-Fs]SAHJUqm@Pdl(*&qu eg$Eע0Z 8 k LaNagGpen[@'i}_5DB"(*_\Π+oddK hQn. /{ ~ɷ?8=E l|?'/ {#J)FIPZi"oWB\6 ,ǽSUءOǫR|<絿S<74L L BfEƋF@&ܗTU!Ce!T>|iƨhmT*\  N=MQ:fa0ip,UU]yzO睞s U< 7y*u޾ ~cQCFq~qz%?,-I%cئݐW3c2a vKĪJ3) S`BBe>%4g8j'xW+YAU  anQ(t\Grэl:;Xd mG$ѣ s6!h|9\) _)m0C*e LEA:gY']uJcZ*) öI4ceb,A}=\ұD*AMmc͎k+ثqj0 =I#(B( ֯oP-4L-u u4oB _#d‹_F >$o, _ ]/M~=[=N$/e2o'b@e _}*aZx%> o/駴Dѝ0az2]>Gg}͞ڡgX0?Ës{wLJp_*<6lӳO>8apK=x<~m>>~Ʈ;=|o~W*<:?:PiqϜ~A;a)dox\ve _-/TIQݕv`{j]=ߗzE)Wڡw>}oJ/KKc}3 aZ;\; %,=p_g٤ˢ˦Xr!T+f UPjq0ģSY~~ԣa&b|>ah gvy/,}êsQj_ދf_ٳݖwIGZwU{{ǍoFG@Ut]%`6eawMa6E⍵[dQ2 F '1 U8a_ 4BdO@YꋀrO+啥]-!d' LW=VmD4"Xz og;c &#\)HU*tDP<<:tn+3!m^x CΕ3ׄ& cLa,5:<'1 ۫'A =@^oe  &C{Mb1DV'Az nok{^IA&aD*gߋOQg ݇M zK|zSwʥTJ"Dbm9i؆1Lưm˴h5L-Y4mF J]J!P< OUZ9Зz ܴ%:7xCl+#ga( MCT3"ɠ&kڪm 'RTr+v^eK4p>oʑMe(*1%Wۓ(ضDPU7"?.K:{xٝvM]A~y˂|ɡ3oP,K KA MOtRM=z5EEQE%J!vF ^.ЗaAݡzw ;,/|.Կ:|RHS$H։;۲1-7<(hN= e6l3Y$ۤ,(Jp&a3"+?sgf^] 6ۡL :(^˖-yv Vb-:nDy2< a! n|-KXÀ89~\kfM8`|hDR}+@ww۰ρRQR(K:%a)HtoW&oVUMCU<u{ (O߂諒v&ߨ~Wob7Nf{郡w_F/=IH:N8Db^f4 ,0MIWŠmhԤVP'^{Z5@FNtȫ坍liHa Pyh-mmlBѨM[L4MΞt.]RX4aQ<3O$k_9wRpu ˾3@"(!WJRkl^EuA(n{'GqoU $AH"`l|>}g33 ؆69gD DB& !J?'l?}F;~R)%!#F1bĨ~E$T. "G'Dhl@(CJ؏v Bՙ˝C>'ӝͱyu%+R &-lo LSkhma87l[pf]=e$Zذņ.FH<%3J' ܼ%'l`eB^pmm dƴQ̘>i2k%L/j {~X`p I5p=2,`#f^C|~"DD8 Ke%1bĈ`⭢ڏY 40Pߋi(K)t:05lstt1KS26vɈftJoFK͹|uv⭥["eFj"BdsUkS&G.,"LTB0y| 7¾[Qs3Uv/+E&]-#ɻL˶hL,z" QSo/e1bĈ#Fo`cjǧ}INL!B| v=\OG!Kdy]59f&.nd`7*2q:ǹl-=96l#;yFIvijҔxW)~?טV,byxXSAn% Fr4oHf45©R|w4R]T/T A)y mlHrmNZX,D󓆿HyຑLR@qYkء=F1bvhB^ ("0wtzF)s:~I.O>'ͳzcPbBY~}F7] HmmiM]G7}.J0º]Q,Rճ+;`:&21mY4tJC }R|ɷPؚ1bĈ#@`kՖYpM+@(R T( CàWG"79N>q\g]k;-Z[x_L[Ϙcǰ3* uzESj/(J4g5lB9R+z##?Ck:V0M!?QP)ZB)%RDLj#F11 yQ**?Y)1Z0TJzz5 ]_[Brǧ{R)lv|7zd;$m˂%1|aM ~Z/ ^(XB@ށb[d{$ěn9~pG/Ju:_Y`G.y0#F1b;iX\?PtbBzyxn`R +A+PQ)I6usH a[ $lA2!0 IJyxJ)6  L΁(ukLmt R+w~~zYh4q+T/e,ƈ#F4Q¥|p%Tw/vC(!1 -=Jm'H$-LSVI&l|\s[x) gP IDAT]Lö%-I'ɤ$i ?" 8G ~ۻYI5g$|_k+}/Ԅō3<1 )@1bĈcЀFP}+j+^zn5E:h[И)h C'ld2k [q}_COr蜆y0woԫizIJۻujcЉI +8F@,khAQ6[cĈ#FA UɶZk~B!u{72(VU (cBbb<)5QJ(Zkw\Kv)0 ;el~s񅾢eJj+*.e0`8t1bĈ1h0X^Lo7Ƨ#[2`= /cI)Q2qB!}C>Z{\+O'x i!eA'e/\+@kC;X`1bĈ10ةE@!Ded P_a!R8(!~kOB|)\iAPHi M_z;N\OF#F1 #k >!u$mjSjA&3TApc`!7%P 5kcĈ#FA}`TZ _+(aqo "D@ K+0R9^U$F1b4,Rw_6Ӆ4\hEU,ÍK6 ByX` `Z#F1bpjD`lߦ1M3#|TrPBW>$eA@P$*#F1b ܎Rp_vETnӫ22T#F1b4~D j>D|+:0^O @ !ïDPotnX#F1o 9@`24F:5РP5~J[&{6u1bĈ1LCvE*QqMU%'cd=PW?pT BHe2LQmE'|1_|75:# nQRY= jȁ+C rG2%-;1bĈ##9tiWQ(\ss\bS4>j5 V;X4#F1b Olީ ˱*^/%UĂ|<4$Xv-McqpoBL=RSA!ʄGQ>L ,*>h_|1_ EJvP|phm> :H)M8v4 mcQapRF, Ua b/bAz?J=SfMaH@5+@5VBrڐbI1bĈ#΋:AQ/ǗSm[!RbH#$;c xpʿAX]7"&:Hg|1_|1ߎ84#Ha+SA-* 0= Sb& tĶýHW;څmP`8p iȶz/=?/b/o˫DmdO|i`[&iښd%) C ^b1_|1_7h|C#(zhY\(2ƶp]ױ1eㆥ\ Ք~?ïPeEe `^Rk_|1_ `# 4 L-R͸;jDʛw(v2 bD! R`([Sl\d ȵ+<\EJ˧yv pu|1_|7KVrlL#k(ZR(DyIDCgJRqQbUxM (7'6@_2 t&Ȏ1_|1_7|C~TToTk͗Z+hIXE/2][}Ǘ3Q Rds/b/oPҿ" ~9X>)$ ϳH.͖-kin8k8 */YV!.etumZb/b % ).8Ҿ G @HRx^u$&FBpl_ЗPᄝL ˒5@1_|1_7P|CLàYZ¾o\Ł&b/Glƶ-GԹӲo@U`P>apR*b/b4HjZ%OS!4 l5mytm7NQQS 08C pP!k+U=/b/7thP#s@GkضH5%Qb=y7k*jE!. :dt2k1bĈO@{eA)`Vzc&v1rUj#S H `ݕWCN$J^/b/7hxez*]GEh9vxJ%|g$6neJZzyZ苐T(CPxs |1_| % ZZ~$ZҦD>MC Sx.uwo&aXڿ? 0DHJ*VW=(W (/b/:'?U;ʷuei VxMlq,FYFO.O`JWb>zp0WRb&RJ2. Ca;b/bn!D>Px SNABQJYdRy.#GYl޴˹*EEJ GKǴL\#NƵf7jDj|1_|1_|C~m+0L PJ.趶ucI): 2R*0پ}#7ua'--6GJᛉ%RHp1bĈ?hP#X jS휡 ҵ`*ց#2zTM+h|)ev7 ")l\6æul۶N2!im2iZckeߦi DHjv %0_|1_57x<ӈ:u0"D`ZgzH$lòӸ +_v)1M=IJ :VսȐNZf3!Ca4"!1 _.Piw|1_| #X@ ֒yPɈ!0FMXXeOOr+Bp-Rdn=AH,MLEyM40MS  @zѥ B/b/zJ4lb/PiiA)% 0 Gذ]FG>[D\)ʶ۝~u0M<סk:W`HtSt4[~N c(e |:K.tg1_|1_Wo0Zw  ˏUݵD&T.UN~0 |ޡk3Wbt4SE&kȚ_^U^zb/b7x1QG:|QBM[qyoX]sͿ*%A#Wŋs<<ٯs٘rz|ǛƩGȬ0q7p}ѓ/}cf\_?|W(ߒwKS Ey)9W8g=O)>,{\qc~~ylLC""O0]B7+|ظo;y"aH@!d GpSES/`)e-9oA"P4\?fSmsm<ף5Gw&6\שU.G!u bettȐN۴0H_?[`FXMݗ |J)ydaϿ&#|GI&2S\|UCzyn~^xrHdð Z ~GGB&㐒&4x P<,_[fdB*§/_%7\W^01RW}VR_ >+|g_g!1oП=t?Ru#HBp%Ri?kW?^^뼏~^{Kn >NZ5Jwv-[y8>r8%J`қ0Xp~(Ͻ ]{% ql1,YC\VJڂgv u- UۿZoU[\pn> ]G_'KskPDQ|*w`08) D˲eY Z4˟SiiMI D"m 2}3Efn٬N1m%xZ#3|xpi3]YjR3?ͤ sqr>IN?$v0ga\G *uc}kRt5̜|&̽yCчtK]Ӝ}q10gY; @L}<ҕSCO`~38:TL&ǿ%k.ypشY_o|έsx}iFڼo|(|vz.o'W1nֿ͸91xh]2@?WiD2~~PJ„Pļ(Ud: S~z{GVQĀR\1 >cګ\po[`^2@(rPb~/lHu\'AUET(=% ;UKmNp񐆫5mB;K;3qN ںPYċZ;08y슝.$@gѱcݟ ПBiTUַ9;is69E~vv ehMs,^w. {L OM?C>Ved'G{'Ng~-g:|:6'.9Ю* xf6d+̝2z]w%ˤi|q=oiI<0t!uҷXĢc}#֫6K)>f;²R`O-t A馻mIZp}.#}l۶͝ dFcf衵|/DAREʲUJ@\=l"mYDՑr3G,~x鹜uҿrC2'9cN(~y>S R^r݅e|9W+TS_nm]89a&Es䁇_ {;+֭{o'YGќJsk;9N=D.j|1v >M>p{ϝwTV^+S EhS_})&y#WuCrLϫ}Cgtn7^<֮msg雕<7J_8。d"+J(>ϐmex㌯X=]+n{ȼ\yXb {}91-%+SF¯zu=O>=o<|Vm+n;WWg%~<|6mŒ9ja垛*[+9wrSp¤᛿S8_}a9ۗ~5Pbت|ɯ#/e{=ԧ>6M pUw\N0e$R&B8;/T=vtk6ya&_s>ezXv7̹{|9#呻ذS<|RIi,(ظy8cfE;pnjLK]/P7sϓs̹O/|˟;yW.>VHCp#۫g+YlȄLÁq*{fD0e+mMH&1.E>?8n?Zu1C+cXI: -cc4l9]=d9y7<8>)%<|l>[xacyc"V_G./pUY?_/|{=e=T/;̜rF[Fࡧ"?9x7W} VuMx/2v{t/+7`}{|^f\\GJAN]}X5vݓ|^s}?X56iO~Ss _-|t"ɇ..J^}-9:íeu]êuu.ҏd\|y~0_//;o\N.KUrBjd3<rIlf* IDATl1Wyv6l™z,F3u1zw_K~I>hlXKtr(lIWwluJGrnNn _s9%|}GUmeǮ"uKoL. ~bD$0I$, @)żcŚ,zekVsxN?d6nWkL]R~mXKxy8尓p\|lծGcsڑ'p;8_EєJs mml)[68d3[uplN;O6㲪c-oXd\}yp>[R#X X 5GSb7cX(0}JJ`/(KP!cZ6i11-` WUBHlƶxǺ5+YV:ʹ=#H'ESL&I$XeYz_XXMժVQA+zEU{S:lnQ6 l| jd LM>!`1L{"]n,~GDŽ=Ƴ箻soO|*:6cH)X~-L7g8fA&hSp+֮w\NK/}x.Lk"SMf]dʕk0 OobIX۹n1{|s8ďw6=g4%l޶uygJt[vqrnInIqQsԁrjr{r^y䲎6FE#O?o~|>Xl&+hΊu0 f B>r9/؜8}iNy ac5mՓͧY/cgy힛xsRuweVY|{sФ9Oag׮{ͪukj u>q O =匣r]a&䢱uȔYO1zwa.9ГB(qgiݜH9ۇ~t絯/yVvwysbX|Eip[Pwnn܆ HCkړ ֦::s8`4;$<|SSvoW]^&쩺>H>s|_?ǿ~ZTkǣLpG`ޫwׯEʵsU_ό1qO=7K.ṛ}~\9:æz"+֬ϪUa#(@ A }َe4YA8*?pۣ ( 4],q,RlI '_b".e)u=RbYb]JoEJ\b5C^N {BȈ]'@PRaoZJǔ͈̄")hiI&[ /&şl8Y| _}Wr܌Bpr7Oa6&L9Մ_{׬യ!0L7n W<DŽaH Ð=栔b]$a`'L=J6D4zX6]SMks+]nrF ɋoҷNf%8_~ekeܮ9pt,1s_`{ #[ySZh^:C |uF+_ ,aT[ epl>j,iqGHZX"dSW?g9]rA`[?4^z!>piv >e%֞TS="~5DRE\]xfۻ :ؖ8۠?R@"a/~A.Jxa{I>__nW_nUoYRv+lTZ:Vs<Ɨg-V;`@ i@(*5T Q*N &fEYoZnjrވ8!Q67?kytow;zҩ$mHCr-IJ,Y7Yb<>)`-j MSe/*zW o^UIT #ækd2~{ bhnu>)|_ ;)G8t3ϼsQi,|5-[¥opԁc2 v5R^Sb'LR- ap.97rrܻ\s̚v@Q}*uh:$F)[0-A2mLZ:pM^GPb46guگX}L:}KUgb'}BTW5})HwwjwН`(a tZ=a't{Ϝ4?|=+M[Q-)_'ASo^ȍc\3 ^;To[l4la}4T֚S`}y,X3hFa{,!abٖNbٌNufA J,H&BҵmoKXUHXv[hniJ%I&ضN? RG*idk" =U6NJײAKz4\dW*g?CHɑa,\ tRI;H,3'@% fRR)tSd*y &5%f+6lε|XkV0ez[M *~˲bMپf.= -44$`FFG2ByEn P͋ higaF. N}BNu?̞2BH {[X7y c<7}y_|7?3#B mm&/V>~g--h! h۟QVZ56s_EYf@0L? ?εKf\|>~Qrĉ̃>t/ŚcZF'DHɫK^`LS^}Z͢{H{]2$sx4Hm>~B&طcٝeX5-4ϒUK+gw?lC4QSbPFMŠR,gVgA ̪d2=m1L J$=tn7_7a I8rijjHJH *]Z(ޏMMMp0~@0,j}:J8xP4>vGL?O-l8ࠉjM!6q2|[͂% yw*!" ϳS`攃 Zĕs0u$y4|;݃zٰzT3u* 5ukq6i}P~H|~ڀ'^yUְjZX^4-݆+>TqP (X-mNgI3ZGkt:Cp㑆# 8Q9#^ǰ#>M>mZSWF<}y[1mT7&qGռcv湷O0g,XYϾo{Ĭ3g߷JȀ~ѣGѩ!ey:p:1nMLƲ v+L?c0L 3aڵx̩{Yd3,^\>Q3Î5x͗{v-d2Y8FDzv/`W~>{g7L^^g_{܌㺼BP~u<}N},:t::חS>QG& )r a0g|w\-\W}\7/b?ʻ!;3n4n'zWh:Qm#g|L6z4>z[ߟ.mRep*}{L0۫¢Ԃg)㇟.d [7nrܻqg3>=O7]AWwV/'ᨃl|16O9C8iv}u_/!˲,]y"=86l*åLozזy_h-jSsPlЯWT2ɭso?_HO6Ö<|{c5-}yGKw>'W'nNf\~yn|N~we:}RiDɗ_Kইo窻1SM"8Xp̩l 2vԮ\^{)= KVM{_q](w<~̹o[ӎx/? B2irr0ߒ)}ܛ9aڕE7XRpcXjeŐh7n܄kLIcOpl&}(ij uf|>O&L& 4%y{# A#D'TL idٸa-[7oFyP Li>!^T o6"dg@ؗ+ mFx5&Rtw]ȭ)2N~Ai˒+O'TM2i"ɻdz6oκ5xG.e$S&s[ngNF)Ĵ N=Yi##[i"A6ϻ6y ~^ϺG6G)&%\ݑP6X-]lڲT ɔ&|Υ 4H,h_"iaYoi'rLuJmБ[vX{tw1 I2ϹtkTMIj L@)fsNh 횦fXM&e]I%9H:8 ]]l޲b[Ύ8tL!ۡ >(eJ[$V[cC 强|z ßף9[_U,)E;O. &5tueOA?뜉*r9LO-[dRrNͨVH,I"ecZW+'gat*?Ϣ!#ej FeQY3<;c !}$,mnlDUa :EV-=t8@|T:V )qb`*<4Lr=VA-`6F4>Az Dat-*7;BY )nF8eQBWZ:V!>kSüԫ #5i*ضxȑZ;\|-9l2XA*"9U |qA GT+t0XTmPMmFǥ2pe%aS96!7r>!uE)rV'u[N(_}Emzۧ$̔n+ջ R@HiYֵF\( \k5>+|}|BDWWK}]32_XHZXo\΁3uTF)6Uk7aXL& Ya-n>iRI#| VZ'ɷ7Zv˰PRo@{o/=/n|91<|J)N=DNu,ܵlh۷돝T#P=+k& we ;ƴeX6GumYfs7̾ϟ(TvkBB5h +OsRRe>٨o|9J~mo IDATlb6mx<7XU D%˷a&pݟ9n5PLWu񝉪돘/V-? CJ?G}ok +z2iTX.dx6q]_\ty鍅Af}!xgXa-w>~?=yr94|1_7+ԙG@Y)x@ *9GuSR-dT xJ\2QJͿ\Q/[*AUaSmV@z m{̵մ>"Ӌ>3嫗)fhm&wDB²9¯q-$#hF, !PxҋBk(0Bଽ«g]=.q@~% ^|}?B.dL[[إ} Fɦpd|1_3t>oގ _ Tx~ T@ 3Ag*>S3$$*E]R{ewݵ+^kHH$@3wʝ;I2;Iν{9y{<_z,o'7rw~u]CEjחG9>HUNQ^u܇ʞwURs+Pr}:Ūky]kޚ?}:7 A.˷?Ρx?,%G~ k`X[W>JcwAQ\ͤdzfz^-,vҾek,MHMLjNf=/ hx xbO&hb *u(dg l:g0sjZ&e44S^s;Եƫ=ײ}e H/R'D Nl*>*=L}`}O2i3ccزo;+'@IE9Ɏ= >نZm/ŗMcߧЯS16"b{|)OxNb_ٟӭuW5Mp|RhўMRY7M 5)E8.=D xa?^Ý#`z_xW$7x?8xt iKL-S]u]9r``}Ո2{OYͳ#f.53ӼisuCFtzoeP@HNjJ"ics`4xa+`P;gtJ|^={ 9s6 A!V+FEhhU) g vҺ=ĒKYm/f٦UDsHqJAA̶\c eaĐؓ:Aٓ*A`krU9z8?w'?_AF4, VDzmp+3yMc4Ojb5L)La SC}}^JKB\#J$GWrR DEFv?k80g+JˈScٹ@߆ZuS_ xa?^Gl{\ 4oG;lj &o^r;#),ɯ.*/CR3zf0P> oP`ƫ"PP],/) Ȭ"+MM Cku.zٳ#AsD̆g0,L,cA5jʱH0^/)"`n z.H<ĉTkjHQHG` ?fsj˳)J`AO.M(7S( 1OR!}kxa0^/I x`}hK^{;Zvd99zy1Ɣ"B(7T`uq^RO#f5@29n>G'GA0R=Y>ڒF{5DyJ`{rŔ <: r295l:7S0Q>Y߰Z0!w֧Cs:ǡp DĮv\=O70ͮ{Fqbs1"`< &L&+ .qCǎǍ_:[^~/Xۯ ζڶ,խ-˪ܛ6nOܐkk=[`yVŋ[bK x`]Iz" vpHu 17\u> m*+p0rE(">.)+=^Y`WWET_tB-6Ӟ՞k7act8},l޴g2aDG*зoZhΐIKOiےu )^+^ޤTe6qQ_IZl|0Rf:(`>n!zl-ٚ&΂ņʞkhڭ;aزi;ώ|?, *%h8i6,+R{]sf-&)RS]8_ً[BvًxQp#q'M׺MK[tW'mv;̞*=gѪU&c[v`ޏݍG8} w>ڑ_Wm ..OehzwlL| w)mʔևhi YY5c!}O$&5S[/do̘kĽ{Xf3QёTUygعs:|T`דж]+9ǓO?>8Nޯ-S'ୋǟxq~tGr6OWocNRQQ DDDе[G.YÏ p5Vqϳbjxj:iSaٹj@L&k}sf}'N2'yv#$$4㏾s| ߟwW')'?> hjc谁\xU=7N`5nvlCޑP;>ΣG.X,֮Ī_A}1͵)yAN|UP<mu%-[JsL2}^|{2t˦寮-K&mGJxܥ~z= -au}Rt ǒ+xn£|w5c!1ܣg&'q;}"aХ灞)U~:'~Nz\g|&ε69up%W nc ">^8..cN/hwj&#%)2K*9m`Z:s͈FIz4g hM"J(Q (b4,fv=Iil9Ortݓ)3ڢ}P|Z-ڣV(1Y-"e9yOJ-*5I1KL6]yw룳JͧP3ڢU_RUGiCR ZCU(MKoر =E( fLU0ŷ)dA0t։bEViT(JT*=2pP?7e1pP? 2l5j~ ;)#$-:[;FɈ{nϾuI:?~d6R\/׿ڹ[6hd?Q IDAT>.9.+RKCW Jl%.HǤb8~<ܰLٽ%(.Ջk.goi3PP~󅼹v1Uf+ݘV^Y/mlj%QL =OąKUėXt g m$ڽ36nh رSYY郷mN@F1 \|WDG,݀FϯNSwͤ%3xHGOFt8L^]Ρ;]#DD֌;u"Ht"u2=dJd:ɇd|Ԩ*=G^f{vabzo]vԡ8*"!2`P_6oBRVk2t_}>=谬U۶:lA^J,-3ڐő E-̐v4(7BMȃ."TjI@QE)=2p;wܽhuГF/>CQjL%R3<{(-zG:&.EVEVPJ$ugwjg0|;F($%5o^@jj3./S;_7FbRcfN_@EyYvQTXd,WJ.\}6tԎ³|7 l۲Jzήذ~ etY**/M\y5B2DDh< Ϟԩ3:F~Š72pp}3ChAZzfM1 ,Y3βi6^~e11|` ߗͦ oGC'_LJD'ye YvzzSϯL :&Jt=IAA!cv?z~E_euDGGLeeW>tm[wqm7PVZCŲs7Mh܄}1Z4/[XF2RemaOj=O^vMDGGyI6f]$'7%9 _9xj&$|/ßz62pp?zNMKaO+9v.f4KI\yM[mvV\'?Ǖ_^-&6{-3hպE|)ؖE=di\BmD[(SmYp۲VVSUYngڎHol\ J.\b劵ѳ+ӿǑ|ZnA>e%5-E`ۖ~mZ2yI<{ta=z]:oAVڀVn_C(٬X^*FHڠxu;pQW$"XRr ڵ *CˎACH. 3hM Jde޺3#;eشY;ԛ)2 jqr3?b h~h͵eG7oG(Ǎ;5Nh@΅BzO U~y+OJ#~]b2F!߾O']&3G{#uQlA"mmIWw&ۺ}O <eVVVm6m&&12;er.6]dQ ;%#%Eӱ7j OʞSz.3T|c5JE"Η]r]E F5LݽJ.73y[yR2)(c-J z#=TeF}Qp U|d?-)5Ys0ݓ38RR@au|+:Ϳ6 T\(إ-Qn&i K=7kWN8qomOSd}ҟ݅'r:,6+qԼ 6s8RRciؔW݌V Rv r?suxu[v3={vkt^ ۆӉ!C 0^Oر5COz$.>#pƖS(d">1110)La t&W =ڰ6vJErtp@c]qUrM Tk.v(6Ͱ0)Laoj ^L1) rY<}EɈk̫W߂{@cK?k/8Nru!gP0^/ ksEvޕ y (([dnd織;&wVAVrgj?gK^8=?'S5qR_Cȡq8T{WV/ x]9>O(/E%ρ*($CҲ^rσXڃ{Tzre]FСPo?g ח=xa0^/W;|DhA"K&pՙ{xޓKsAvd@}АVSGEVWwDzGNje9/WVy/ xa0^Au0߃MikJ6йM,:Po3aA~0߫KS<Ʉ*I-f@DDGGRs pT9}H%Pi zk~KDD6M`+ig 6uMc=̛7_*s.$ZMJl* A?7;׼|79Y(mM nD0L "^i eD>:֡ݻCTVVy;f4k)--piݺ:x^~k]xS}&rr<6KN?Qwq u cϲv>:,9<1|}Ϸ \~[{kk Zd{+_Si6?7ppO*Eu9T.+Y3?ot8xSPs_՗vнGW֭zVUebD>) 8l6x8?/e{|M, |%zO>5N^|y͙K+9oY̘iۿH4ZQ}FծqUág}YOrp֮kf,1sV[0Q5Jϋ/G1s/{'zA0-?Aj;;{Yj=Ν{Ų6Hg2lt:G^`;rQc|7\\O<wݹc7 -F<8vqV ))k1z=ߛҮ}ͼs8O>Ofժubxؽ{/#Ghq|*tg䨻z0[)}z9xգsˊ>6n&PXXK@dc#}oV.4R}rp!C>=^'(D@<[Nd?e̟޽s+?v2MʽȡC9I̒[`CXbnF*+0|>yGKh֭x?~MeUo F68vjXhг>Ǣ~Q|9y4KI۟ΙGh4񧗞cqKGljAL3f#s*n%J\>Mv_YNl{:oNhIEtQp֍?%Q12|I %$[uX{6bk}s] [6og.,_~W_oNLf¤lڅ^wwj-[6ncGOO>Ȥ}(ׯjW^}O>qy7nFUyofǑw4ьuJSoVO?cN/<˯Lbݺ>À}1Mdffgq2O|N~a0<ٳ+M6a䨻x8&vcgٲU<#ll6\i&[`r;酧]>¸Fs={ubfVX@zz*d4>?= O8!>:SZ7O0``?F%FGƐs;w@T̓ |DNs]dmqVI}f9yOsBB#0Md4O_12{{qΑ_W]I'uґ?;:s@@xbYLyW"3yylذqa]ఙ )΍mAWҥ#x \}n6|SrrSZi&G;}G\* ,a؈1\x<#v{dLD;s%yn<\0-njzuoϣCpwu0yA^yw!c\hwHS(o:Qlսm`sļ"TjDҹI*spXX^#Xuf8`1T>eF++}ʣX{<FIUoӥuu\p C<{ M_| PX^ :R(|plv;;Ϟ`I^Wt3Z%B&)2z=w!aZE×?]ϟsn#&$`xz瓋6ΞkZkWsRRQ܇''7eoؿ?%?.shcڍNG||<-AT (d~v8桇0g5g^)[YYEjj3֯,J_ E7ncƴ |IIDDD0|56:u-٢OZ֭LvSEttϗ҉y =#Xj5'E`4_C\\i]bɏ]vG+qqnӒsƎ޽Zmlݲ~fuLd80d V\s Çt{Xnw}mҳW71jre4MbMv'KzFW 6yxbCNވB!/J%X6 Օ_^99v+ndUr_{ۭ[yJX:E\\Lyom8d#LߑTg_lC ٖ) vbXmV|_'8ҹ[vɌo!#G |`}wϻ@Tf \Kg'0}fE,ٍjU 9qF=ZHfD.+yw2s=E((䁯T(Ҝ1Z,(Zvbq鲋xưJ@RPP~مmYh/0`8󅼹v1Ufc@%ozXWP/MW_ \T.xڷoRRhӺ%%.rIRR1gx5C~u~R})Nȑ|6쓦u|d 2G9wN|vۍ,]w>JIo0е['}l,>6|CI筇ڴ?][^ ~ mvu'CS޽DTT$& =sGVaX9~ʑB!oArsete Yvr#N: gQ%IQZlwÿ?t(˖$M 9['jן 7C2۱D.zA@V=9;s]ˎ,;߅;vX=9ײ/_FX"{Օr_Wo5s sT*8D=]2@9GnlޔEyy A¸kNІp{"> IDATo':&cO|*QE|ƵG=9xఫϦgn/՝_o w!Z;r_Ws9x@u χYJwڈ \N ^M\jeħ5&uPۭ7FzIR)\^mך-s0H[lgP*}Hb}_C>.VKj5%w9鍚smő0?9td>˓jAVbbB)&ΐ4ﯺ6BW"k Xx\.{'Wu㦌>8{`٘g#ʉPPUv9:ATD.-ȽPDF iю؛H9@du;`{82GaYi(vɬ?R3vt@^I1fZ]N&Ƒ޿v9`ޮ;Zʃ/c!HHaʩ/~S(%ΣjT*/s{>_v?3/ҧo/**+ة=:cElٲa>mg 8u4Fr PYY~Fvv[gh4@Alޔ̜>dyq %/͔\8_®{Xj-zic8KS7}ȑ|zNrrSqMٽlۺUQxu* AX,4O^~ލJf˖,֯LyY9o /;rտ'##c,y%z=1s<sN{@|Yi4%MY,_ Hn]ؽk~^I@6Fe>./[oIĤDXFfMINn—OW&ji,?,6n+y~f~YpϽwr!V,6mZYPrII%"55%ND羽ir*+l~y =և:}ɐ%Ņ3s~YJ2E]ZmZV6}-JJJeY9[l.ktܥlG;]^^_Lhq r`6;u>6Ѽy#~YA{׼LލjCY{<'e',"\Zv䒾Mx{qxV/ιט<)60kVq,k1ok~Ͻ?K6ҙ\۲#v >"F:ާ0e acǓwCD%pB}f6\ҥ\xf͚3\8_6BK||:Ջng^МY 4Mn0nb F#qqOoEj-c^W]}p3rvhoj t]N^tf/L͸PUG3k?7r%Κ#:$tNٞWxey?,n}W"g3rI!cJ iqxj5j՟+]:xC%k_95xudZ1Dhb$A[Ps3Z,( TCV( "T!Д5$bL!N5k9;N@Pw,w=u9¸GqYV~ZLjoCѺuߚ?5#ԁCW,"RGЩ@nTM+!oGPsqkӕ_w8856 xa`FW$"X`^5߄ʑI]ĭzsCQN#CR}+Cma0^/ J{%OsCoұpCsO`$F'Cz;Fw^ OfNsޯh)WNt,r@訦'ڝž= xa0^/x>ByL'OWj:11rp%;{b94>Na] r?srw!o Ps/ xk'Hz:<7] NH+O!9n&Xy}B F=:Y),*Eo~\w~žxa0^/ƫޕb@ƒ8)/H>O\9D<^} JCO\ݺgƖGKܻzڞxa0^/ƫޕ#Xğw:kA!H?汿grF9е!k KP)ew̗e9'ϳzL&=z{V,_ųO?ٳ>i]=hWyϞ-ϔM g2E1fK'.}a&=ƍ4%Ȯub*};d&@$zHSĊkPQQ,뺫kA׾.4)ґ^C IHcJܹ3I} ̜{<<9ɩ+L.\8~_|hkniOHiW Ecԅ77^Wp=lXsyxGozͿSPPHiiOO|O>%%^x1̪Sv)?ɓxWxb³?SO<nj0wv-<{{o)-)S˹F0]mp^,gθί=yqq$E5BԼ. /ZKC%9Zy)Vΐ6I.g16ݍY<~׀ys|9jd~K^GbJ$ <1Q@ Hy%7t-pX.zEbV9$ܳ] :5בԊM6sӸaCa6 pETzw_WyK|7{ᅴH.j)oquc۰wq+O>5:ϧ~ŊUDo{$pwT*6)mx)?p/i9Y~zwDFFr/_xU+п_򩪬bkv\sRSIIiÄ"**z4xڧ2jpRڴ!+;w^y5W {NDGGS۳FA6]:1p`eeѣ{vcS0q_iӺ5U :Hԏlq#ZՏq$&&t FḢRýׄDwy^1rO薐ć+xqąE oۙ{{_gILL;Yp̫ù>Vf1i$FŲx&C.4 3^]s64F#及qŒA f1?4=n(_Ν4x s?YsQPP@ǎx{1 |{2͛7C6lLv +/лOOWsf'7$)S&:];wfzbcc-<11BC5̚G۶d_{icƌ⮻oȑ~u1!1)pubnwo檫Gm{iC{vgΜ<؃Ck9<6,m̟ ';(g 8( A\RnwI}>B"wc\=f4> `V2|;νC7r&=;(2:ܼ)X&<0ы}KZ}9}4zs~{''> LfN䞤oބjBȶuk6hRǔ'melsڍbLLj:^xuʺ>˞*#c/7l&2"o ?0ӱ6gZOMWMݓO~q3/n7}>>3|ҳLzv"͚1/;lF2vө0d޻0ى<3 {>b('ϷO m۶Ck71``~?<)))|s]̞=r99R۵ө0|0-Zs=W|̙?%c?LtsM] vŗ3g>mϿ0W^}>}DVb?KɄoi> N8ILL4?Nz;ާKU*O#t9єrחpmګ`X|>ClWgNOsw+cgΜ[Zbow_[d]}u5í?_DV-} iDeeO?>hqoժ%:u[6oeϾ}|Wp)@Є|||{w |4 '(7/d-XB~U9O.Ibd 1p&,d$l^E] x.jߩxfRb_ywXYg*>no9sޭ1ZʨT|z˘|ڑU<ʶI~;Kn5򎝜#&us֯͆c}K2?,7IeT6ĞjjՊygr`6K,b`AvlM?3|0]\ m۶EsӸ<ͺݧQ#Yf=-Z${bbIIiúpӏsa,""#().;6n| Bi?`C!(yygg^uUS%99͛ESnvh Fz[3A}ƍ[0?aaaۢyogreO~zMIw g4vŋDDDR1JҷlcϞ _F3=\?\Ol :sb̹^&'|9<]1d0wӫWOY>j~ğxKװG>G !g9r$ vvb+]q S WP& gs*^-[309Zx&Z&1,a*5eE($g?iItoŭxp%#L]ҳEtU=!jceE|/v%B1Kr*2ϯO&(u(U%! B͑+I<ŷ%?R(ɫkTs7sTB?[^߲;N(,Hqe_!!*J%fq=*Dd P6_2TTTyoZ~_VrM׻=-D=̳\٨ F-[ɮ=\q FQV/ۇNO^<6!_}FYJ.];s9Dn T*:u'O/LOYse+8{rySGm³|* JQ~gud0Eë~Dl%Ѿ}{ ?8aî;}{ϱ~]{sHHJU?iiyoosG鞃 _<ʢV s},O{ՏȡkNG} {&<"xy f?E:ǷG$WxҮ*ŇG68qn %24#so*5a<b|ܡYk_$>< Lf-ʡ7e9\IqmǞعO,C;}|t/1=<='w,ܦğqy,=]`MNNb+u(ڵhԼz'c v"-7oW]tf]R<;D^=PTdʢ}Tg rk(ge CK.}{e}[.,+f1k\nV""9u4+_zIh8ݿ>g&=IddSLf_xo=fg!**֭zD}ٶu;UUU.֯3oK?r־7lLyyG|AoXxW Ю][J8FIճP*kh~u\x#\O_v>AS#Vumy)W8ψR*BZXVt-*U6_5J֧;{ $DBc_acwC;ڕYtdc:t`6 vOZZ\eйA6:ML3d")*$K 2ѫR`aTWQHt]7 IDATҵ{ punڭ?nZGYW(~&D5k]ޡP((@hX(j Pz6V,_Ņ 8zVL~u[ӏ((($Y2Ѩf RTT{`kvVZ _b?8GѱS9cUUܱ<3MMAӳx2Αe VVUUh::uHdd$mSS<Ŵi?qp'rOr)zfe£OFϞ]޸q .P]]Cֽ+m; =?Co0tTWWa1[Xz=555MM鉓=Vt:guvSrPjܾ֬}_̜9'Nҫw?z28`ڴi fbcc4h %&aTT۶d-TVVQZZ>J7ǏnFRRpx&rmټs̚9ĤV<3I /3} JKJٳg?k֬c˓|x9v~jՒCؼ)н{We^=eV^} q^m۶WA!rZ7L&3S~AvvŰ+0g<ټu-ϛnꡟlz?Ѿ- =2Sرz/s_oq馨_1IzNHvÊ(--k.эB, Ƞiٽg \;wdxC;?'\\,Y ?O]t;VwݏZVZDž 8~2eua_-֥1ɡKϞ"gtMKĆbAoУVc20X,VǮa|睍}w& P_xpw%VW<,Ղbšcx`t>"xsBtf)1P)<3*ٴªr:5kI$u?6cO$WT]?,YXmc iɄjEѸl6g4juƙF񋯼0 1vEQQty9ќrU;vQXt[2-dj*Z_eE%a4jh2cZQks1fUX>gFZ=11юVfb1[ܦ|ɧ0DFܧ*ŋp"k3j_o甯h2bZшtinm<1I,'m?(ݎlnfd 3hZbcb9w%6bc]|55Z\Z^OLllm>f95*GL&Pn⫨t 24X2=s"pG1aX0 AU55Qڎ~܃; ( 8: @LKQ*ᑄ(a0Q*pڰQףQU`4 7܏%%EG}Q{^ bb$,,LؾcgB~K/dž~?Z&:} mڴYA4eD0'D`Spjb>L()f f3f5 V\q\J7O_ޡQTMW*BS8:Y,tJRLIe4?**.6u$$ē6Z.5Ο/<p7cX(,({nDS‘ ,)+zM 7&#FX+X舠 Ϡ5ڦcN]SsD9_:v }XnpβV'8"DADS"~q.6pG ϕ!I\}92].B;^S@A@P8%φ»><_ ~M:F\LH},7asY^)m!H`_\$3h=׫|A _/s络7 3pA(tVywrDz\ZMqf6QI[{ !sC"Zjj*$#>QYV _/ #Q;~A ;7VѺ*Hes^\Ӌ+~K@,D|um- |A>߸cq`6039>O(`CW7cW'v{W޹f gA _/ ׄG `8o~wEB^Ʈkiܘ:t |A _}w _H_QT *m::|~Ƽۏ`@աX,ʭ8v8M=٨2L~7w=$zJ(W3Iԛb0<~u%`65֠5`,Zbr,&t&]m|G-bt=ӛ46|֟XVog Wlټg'@ffP7\Jl_k k:ξf^rv`˖uG s HzQ;ҕ?ENy:4ky.8M@RTle{{bb;r#l>ás䔝whT!Ć7Hߏex=KQl NacPq 2(  儆T96nfKr8=zv'::Qx-\´i?ºظq3G c( vRwFDtt>u#+M^=/geԩ#s窫F[~vo'EBї$yۘ9A>?j٥Oņq0/xgӫU_]8E9T'>@L^Z1-{0i|c0je o~V<ެl53q#=փȗ!>pAzh^"awFddG~݆:)b%=zt'997~_/M6F5}{8u+.aer:'t!6,yۨ+l (|&7_msc/fa(ǃ?Esp VgS箻W_w}[rl? _z}4}>iܦ&g֭i:h[Cb;|WSΌ|#mQT}n-z =k@v8}ؗ>IxqL"!J5gčnaDѪ7[au W5LV3a!atNͻpMHNn } <1QiӚR:uA˖wiLW(+ ҫ#ekXykޥԇ7uAXX(G_#9$%%xves:fD|~Y}̞='0Ly['MrĉTWU#a<},_Kum]8}dfc9H F[=oF|f.{lnwٳv+3g?w﹋~c⮻۶m;.`d˔##cmLyE6lDvV6y)S;o 9|̟ ;wr؇=kdmgÆ2y ddrC.|UîƯQ?|9PﭫJuk; X뻌cӉun;E?꺓C7[1g+[II)s彿u+BLJKuwgGЫ isڤOڤrڤ8n`0WqGj޼K}{^ݘ'wSb'>}7wE<ٽ{q0_=:7e=G0AA.O.\@`Zlj^z 0xu/sAW?.vY^Y Ԋdsw6.Fk2Yϛ>L \ nݞ|^Y YC-!ѣ|1a$GR䲙$F ghMFNTU0}_:g*ʨxfRb_ywߏlTV6GBܱCư9/>_+VSO[?T*yч8r(zDTC?@UE+6ؘxr>3zY]9}O>ᅦ׿/FG 6펁^k!CWq+o`Xkh4<G4y{7kO>wyg{Ibcjy1??⋓y)lܸò'2``{i79Ҟ/,d~`Ҥl޼覃uz尡FڶMO>3{/bH'hy';v 6kzPJiܱO?aÆxsMiGrنNwLcƍyxӧe֏Zr=wsa;%&Q^y^(gr^SFAv `U|mvv(mWwKNaΖ`ujl|$i"vnZ|:)3Ѩ^BOAA$6&ؤ6l[r?uզr)& A\qۥeg3bĕ,^瞛7~ɬ]"?Niv Ed7s.oV$x1?kOa L& Qٰa)QT[nڗ^ɢ#۪ 1a LN%\ץq9iC(@*!mܯ_,OV)jٚɩthւU3ؖۜWTķi<Ͼ.P]=qs׾nٚ~ S(=7cNuVgݵƳEhs8x0%a6[f#::ٲ% iٲG|(#<scIL# q& H#,,8-zkKLL ))md1v[FɵhW6ǹy5c_E}Fɚ5kYf="6&#M63>'"##(.)G-ƍǡC[^6Rt:= APl`XILLdtSHHڦFoV.,uvۑ?bĈ+IHhf/y#UF\{XbcbHII/!!AR9}EFD@TtZ]ušp^GfZoÞ@+/6OŇ _0h8,ѭB*_9scRP)/QKHHncڵDGG3sl,>GG_񳫯>G w~D6&cIIi㳿rگ\#INnxӇ8O[ -HII!66:͛^o lVa Ox]㻿=w7.q9_UADҒSґ?!&EhjvՊt8}Z\el~L_T<,;>Kyy9q*ҕgժ5ܙaCk2N9> 7Lz Qc2)XN:DgNOL(&<|)Z.J(IG]vs5>3|~(,wFJ:Q899徵ǝ,/f㶞{=<Ew)S|E]LL}tӥkgbbbx7xl㫯&jS!v ߾dC.9E|qEqlV1V VZ{X~ z)Ҧ#BrgaWn1Ml|\Nݧ%ť|7vgxzRڦاiEuIي3;ªOmp=kќ{OӥEwbZ]g5?y a0V[+chUNGľ?l:IKL[‘l5~"mDlc:G^iЎ#>5}oeѭ{WzNA~ Byy9.^9Æ0Q\X^W˚Վ">]O۶bJjjjP V\͝OUu;vؤVd^ʪڸ:rTVV՗"ݧpx.kʴ)[ncv)*D}U23\_̜9'ݫ';5deb_ٛoֱmXb5C_}YF."g[. tW&T@9pxшRhl6c} @W ( BES%Ұ3>f/!B@S23P*c 6la1֟m&# Ap+ tZB=ʠ3P F9M}OAGjבKфV巗\᜜ k&́וqg-3Z̘VLVc4J0(z-azlSw"jeQՒ%BBԒrԦ (*W (dj{eC8^f;I 'm5 ?KMFVv :1n =ч?՗Ϯ/_Ѽ -_P>{J|spr_+mަ_>ZŹ|o&|HU*=MӂoXկEP ;ΝO6CH 玞Pʜgb?I㷮3t3pS}juHJ嘚o=;9}4U6cX((8OP;"_}:wdb50j d |sn hj[~"4|sjX65l#uhܸU}S~ͭiI7GAL $9|A _/Wo>,#99'{|L]? Z ohT_rwulvx5D6dž@w[=iA _/ w9w 7芹}Uxs FH8x׬˥>eqV^q端|V̓џLwY/=|A _/W?&|pӁ?zs|9ҫ@=д~˔RUo^FaS^vDAD@?#!u8:tTnƐ CqYlrq.c(u}1ʻ+k|*ȡLFk'|A t$a̳T3  n(wS9VP{gZٰ{#?-GQ^]NdhsՀLJ[trn:3MgW CV{ʋ<2y^ }l޻撑AN(l,޴ٿϦ /bQ*(Fƶ _/4.`,"{)nzSAHa_NN>L$Ͻ9}R}mikaf>e3ҙmёѨjJ%Kc4 QaXS ^5>nmVkPT% WRө?[htՏV ]( ȱU2\f:Pf };#OeG \VoZSVf E-8?{XmykO K>{8fX |MɎ_& )tu"|Fj*CSEfx |VWUSŧs̭#$$pJ%w;T*f/*m5*'o{w?˚<;9fIhߝvd=iX6śsÐy79~6W͋vX3o\ J y|ׄRPy7}M{7QklNMtD<{T*hSp 7. (OȸnXϧ Q[3ol6;n%әx:U*Lf##'#5)!¡ʚJmX/o~iSVϡVQ(G%yEyDEQVYf״kmӳ _/״"BÝ6M rd=X|t?%5U OooXLNyffp/]<ނ3,9n=Ks4]p7PDn禞v|vQ`@',,P:tQ˼+|G웱\[~i~@ k @b$t#e !JroцNdr,ZLAIxqV\C܈lf,ۼ Nl)tҧ>u11|KN;Zvmܬ\i)je?[8v/V˝WIJn&|1?k_i;ݟYlY #"Y8'_̫_GOӭާ/NW^uv% sÞ|A _$w qp:oУE2w@IMK2ϯhݞ(n܁s:{`9Oa-TD6b)Y'oWKw{fBJhBBՎ:Xc5vc_{jwudb젱gwOmHƭ#neD ;RGɀni ;O_Fw^Cg$nw *TJG[DA zVW|{\o/~_NA~EܹOE4/]ѣE25&#kNda lb[^.=r8p,ejްӺ&V;D^K\XQP6{ Nj*cLcTyp%3OHvqsD&8Rb;+|Oi'%.4g^ObʆIe4Z̮z3g-9Hcj2ewvO!7.=ׇ/*t[ & BIN1~X<[^ wq7wf-l6Ngpդy񫗈FWc_`W(TJ4 !!jt3\VbٰX܏q9j5-0[&BjBաzLG۶l (iaogXV l  ;ۖb6Y\6xfD"JEhh(u`Gv T*{yO{U-g-=! z/K G=vŮWk^ zQD@.B'@Htҧ d&#?=2;kzZLKp]d@'Y b߅s-yEPh+آfH h &wL$IF=fau9UZs0w6\Kȯ>AnE)5l/9Ja]gkȫ*g{Q^\9x+ER?ͤ#强fEu5|m-5d777ߘ 7t&koAgr~?5D qKHfu ^k8ǽڳJ}Дtv,v6c\4tzϾxv37 77P?Uc۟ !*I.< l`W;Y"4_EJ0J J,z%NʤJ&2ZצR%kEL5:LqJ?Scz}Y1A`x%s(C_sӥ7#"GP*Uh4Z4errGހAބ(Cz iWN;|J}2 ? k[ڰEL\|MjA,:Tm>~.itI`]dOCVsm\٭wXM%CwBT1[z'z1:u'RשTOeޓ;4-*$c$@#7&2@seuKy0[z?R͡RDA`A5cڳ'JH4F`01CgJ;tn}li`B?l-τ3G >&k_ >tvYN';v`ǡXVDQDVc00LzbU^vON㏮= _/a8^%IŠER#+]_h0y^lG2rLJ x f2{d" vTt9y=R{y;ܾl?ѾF2:dpAN}y)9ayayayTyE*atS;ē_}"e:buqz߅$qz#vv-o2z3k?%wn *KT1* z#>A1ZkYTۭ,=lڞ[%r!C\Bേ^[nlܽoL'7?q2݈QދRkwa{ve?~JߺzjX1$Ihn˷ǯ,zSe 7_~3+׀0!sykaP({R߈Rn7h\}2ךt;,ڸVDIKo-5L0/P`iIn<k rrJ1sZz'[Q꿞[QBgCxضl U etnbJ̾>~ػ5Wv34%k]cW^L;C DA5cKЫܟ95<;z2:uoU -Q CY [mkɭEQ$1._&źu 6Www%H.{* Vεe[6yǑfpQ$\^gL|b"U\9_o以A歛/aZ8V,ˬغBI)y?c=ރlT _7o;tfx( s JFa yטT9 Ծ~g?K;Y₩~!]P2ٙ'} q7K6-!S=Ła%0L0r.-}#wּKhx<8^׍+,CzjRW/ Z'-*G֍{ k!Vg푰Kn߈Kx0O.&?#{&I\ Й3zpyjiw;|\=wu370v:DCxy@kk[w ^) gxywv.:~]2{%V P*ӷT*_ <&K=?}4p,^FnKZ PARa„ =GN1:FIHw=+KIJY>e`@C5Z{ZdY&1.gẅ.<䞩#«h4TN^5Z|OWXW0a\  -;,= q8nlڷO(;~8oR=mH[Ϻ5_5c 5L0a´?ElEԅ:St&Z &li @b8b"̛$I~wh2v &LSY xm/gsa+a#a{?| &L= |@D9hؾ%ɮCoJ~`ۖo +:ncZ~-\{w% YV˪U8tYzjOΝ;HNaa!/2YY0.=0~l>oc/W_}:j/zcVu:?k6LV,y,ng bKkZ"̴᧞z*'|ٽ{7EEE<M6zjn7L6u1{ln&>s&LM7m ,3k,V+dddpw<_A{nJJJ{غu+&L{mvLѣGy'2d[naĈ{TUU裏wz >?ݻ3bYdIC/… 3'NțoC=dȑ#+dee/xy}㏙7on'S[[tȐ!C믱MwW_M>}P(L&NJIIIU*!oBB/3g$22syװfGVGMM5+G#xb\F 0\Q ϗ$paֺw[2֜lЕ3-kNKKf^+!̙3O1\~DFFұcf$%%ENN?k8TPƢj͎v V/_pQI׮]a˖-ql۶ Iذa]tQȱCԩk֬?g̘1$$$4\?~</WoPk͊+ZMl"""n{v+q]vsEEEKtM\{gePޓ=:u*/2iii >.w09\0)Ki|.W "NZJBP~!XVVeŊ 43go>tСC)//w?;vHnn.jҵkWL&)))A܆uΜ9B صkӒ~zϟfc|:t}m6R5r&ǵl=O?ݻwNǎMTTC?IVVr III$%%3ϠhBO>A_%KPTTDII 7|s#%iXZ.Rl6sѣ^{>Y;w.7s!99Ç1o1w\$E?Q)--%>>曓1 4Nרo{"33>cˣ_~Fnvҥ˙1.Pkt0~סHA}=H*\b\umHN YFK@u\"Rߑvj\'{)e.SqҖ坭Bon:َx<\.dYtv[ ^NښөeܚA@PPWWhDףVQ(wnl6v;QQQ;?͵5Y)Z;K/eeY 7@jh~rssyf̙|@=6٤6G{NMlXo˶Mˑ %# S%("|EY}{~wb.^wI ѨQ"ЙcDt@O@ڄvkZj,c'&vじ&8pmJ \ a֜ v=T}iIPByG_Nkt۶VhMq'dY挔Pc/BA 4VCs8eUHJo-m e :Q1$@Rr{ hcx A [HXMOݦ7\8A4aZ%dDj ZRt(ĦAZ5SںbL iMp}(Y ݺU"C BW\DEEo> R~ SNAь7I m5g (tHZE)ڻkw]$.6}.X jQB@#y\vJ*씗#g'۷m%],Ӊ Q!q +H`}ҸiVGEn*\=bF蔤exh" հsyF͸].nV0Z(Æ;P[5̈^o"VgCtM<5b"Zv&l6L~5&LֱׯiZNbЧA8SgVDvA(zA.iDЩXV˃, Z@A1dNr1K.ZK.ШEb$ݯ@E|Vi{+ (<8]2KqzN.FFA:W6JQ/IШ4\=jN;sWeuF]-=3HhBټcp ^h_YX]pj|g\5檐i`Ұ麏cTU.c%515d{W{O#I0aœm][nؾ3.]00vxwNb|oO R!R'~I_ǮCfdxhOG֔KSe'Jk FSqKn~^32'4J){ݼ A_$z:嵊nXHztvk^ ڧvѦEtJ_6~MẆ0f~ZywC'ẁ1tحupFB ,.(x5T\bCߟbBiȯNAO C:tsXYGtZ)rKj%'Pp%ێ5ath0ťؖ5ڎRcҥfv2Ma"P ::қC؜2K6W[m1`IP5ڍO2>'jNt;4bsӵcWFAWȚkEڭ,޼IO1#o~ˆ]F!+9Zz q$D%id%XlvŒ-KHML[㇕?TJΈdV#{9Q}ԤTnY=T1o<;HZR:kwz7qQq*Ŵopٰ+cU*2R2jCq"6*BER\o| T~YOBtQz]PR_+8) )$&Rg#g&u:欞ÚkP uD63?[i&8b"5[]1z0a~\ y$ zSNjldW8ZRKGҷGܶT¢iISxD`Z"8mN\'22 QDUM>$2k(++G[Zեl߾2j4/fwi;Ǝ{œE<28\6 ]Z EQ햱S~+9g>|~ErªmxanYʃ|}7dO^eiIOrqCo:~7##Sca+x/=4* K,o-W{48oR˥\L=O몹0D3L0a~rc,7`J\D֯%r,I8$]ثb"'j0Ej|@:visqKTWX]ᐰXXjt U75=U 1>PEJb 1z7YF[FGgb>|,,顲E .N I(xxgll ] uP)=`4vobԋˇ_NU][mCddo9VzNwzou%o}tZGNf[ڝv#|̧ԓˇ]AMh :ˇ]3=5c!8XV7Ko"2 5c&,ټGdDQ)oL9^vܵ<{dz\62K] ,v fZK-uެF'[Ż^$=9^oL݊f#Ä sQYYAe]S?{L0(;/tȼ#QzQWℕcG+ٻ#ѫ_*N ,Nl6'.tvJv ImYwI?zgN_.]u9k18d+Q쨤S.k sAelZUun\nduSsl:%T iYrIKwzo>:tFJ*JP)U4:A ͉H R^G=U r ͒-KFu*cܾ3Ws%7б]}Jbqغ^gȝCiO%]-E˷w)T+2F7/ $&k=; p:6WSRc랎2Eq% m8'ߘ\ǃnZwMф#Ä9Vy:bz\etw|40A4N6dW0@.j2&*_)?d͉fo1.d9#0鵨ԾGk* &Z;0]΢؜exU2ؽu1}Rea,#:п@[˞97H{,NiIN;o~c oˇ]Mw$,3 .'%Ȳ́m_9 yǙ Obld,\vyw{'h C&x-n@JB C{^d!e#pVb(x?t@Ie $;7St;뵙8b"w-~*cܣ 6.PY[=oHߘn?j4?bꫯ2a6oS\\|g&̅˶-k1ծ T$*%g19?z[wV`GFMRRgjqb:Xn$ Na4j),fכ8zvʼnoTU۩j-ıT~\TLǎIt7c\>2*)&-Q`"ln$D<2#o|R|;$ļ鏙pv/FNRMitfmZĤXc-公ڶ}Fˆ__V@ߌFBc IDAT7~Ћ_nᲡpŰ+ؑ_s԰d&Lzr:| wmogVٺo+u:6cuV@fzʖ[ڱ+*=Gb̩j WxG7}# `ca)d>XoSRy\5\"CSټgs1cW8,,&^z{rya_3f4["L0q\[:wǘ2>’r @|#Gqc2G#x\:uOȑ(Jb"X0;DScu d7mLmu[ߢVVc|=^Vüy6=ǸlD'~\~vIz/9I-~BWt)r'-{kj>-X_52$ "網yO(/K(T@Z[t`uX26L=Ձ>^Œw`Sc03h`xdvlk肵;v"kY먵Nsꏎe+js HD:pֺ} - FVۦJ[7|9s`44i7ndDEE!I> 7n/o XV^yqЦMX|9FSO=W_}j N֭[ٳdϞ==z'x!C5\sN&La_4Cxmlm{62&ѣޚ- \I1XryOrO*_ YFSUi!&3]جިae}4Z;$h9|QcIѲp}U5v& aq'+]ϡz5^FʪWy:jGy?]]J7ԭ?x/sj Yps4 iNqӨ5Dw腒>kv8x g]:.^qkk_ݯiTLQ!ka}|{@ƯhdHtD4 }jD?>m#GG}͛8{Tȑ#+<<3~x$0a3c qnV6mDAA ,` |gx<F 557x[nYfe)68 Mb41TZȉ{pcZ4J'+7( &]A|v7Ս{bsSkuSgF2&PUkf-.lV7VMM]̍_D^ 5n% k~ B$%c(5ByJ')1 ,KZU:_ĻuDt#F%4jW ijAW;|}zϨom>e# Ignl m5|P aSJM`*Rrҧs'wc/JBox>Ŗ!?8_={+W^~x<-b 233tt:͛@VV999ݻ]oghҰZOO{ZÄٷ'ev^p8&GiqJ![v@ACyA@~+5k󰘝@v?~GQ0Sp,:uI`6ѷk hvzvdOcaaSm!ڈ{'$1nP /;NV3mrJ=E ',#IVb/'!ZxWfWł|T/Y^ OݖAbUŶs5hLP.˺z\3ˊY}񭩭 "@K^K,>RWKnaa)=bLj5g Mn 5$-- S*Jr>￟*z /{6L+1Z<sm*:TzشC YT!*؜ UcsH8NCp$'EƁᐱd6sq&+i b_6PU-1x #Ir'#:GI"B3@ Rndrn{y'3#!ZCץs'%{?*_Ĵ$=yu}TVfWbK &HSy`xw?y=yu<~n{y'/+*#O7(#)rĻy`ʪl-欄>6 f e %'|2lּ`J5lߒ_ :W^yǃ(رT*Q*K/Q[[KDD,tRRRR;vl>͑hs疝+|p8([Gfz;d(*(LщX%ݝDd|uu5fNXH/?!\vB)2lh6 Q$~YձЉmQpDAs(ȈLll$-IMjD 1DT螑Bҁ*AZJА%4*}[0g$cbʫ)0-IOYhߕk,n> IM Z߂ݲb,v ]bUv׺7*Z0 nrڷfܠUR;Gn&N{ɣsvA< #*WQ-QD!XH0bSJkiTp0Ž%q[JĻz6'<#hZȔ)Sxܹ3[n/Ry F!??痛ԩSݻ7ɓ'wӾ}{t:}?~>}?STT9r$~!:t;/{&LK(8rrc0jQ[[KlTd4jy`9@<2D Pln$AQT8hh⯷NqI >e񥔙e~hY?# ,IV&qT(#&bG*v+]l׉[)25%^x+)MEݴEVG3s=^%wnOCHuqH(䙃|bاa7(qbCk]?҄\ѳ\5)ƫ#eCPaeOsn`CE)_}ap U ==XN'Voݿ;)S`0h4u$*RlS[n%o\ĘhpN#jN-M.`Ru4DT! B/.hnޭy„!2etlVf3h5j=Uuh"GTh4*j梺AMk=Nj?/Z'[]aJX{5u8LFr_I.ր[0i0EhpZD8z޽T9ؑSJ(vl-%qX 6ވ$yF}E{+G jW} HKq$_Vu'Οɷإ&#[.`}9G IUA+ ֕ őbD|{$ aҨ:ע<% $ RwAF@)+E՟H0My;K_}1i݈Ԝ]MU^Z97>̎cz^X1[Qr5OfJQAZT,=Z=5s:aujmׁVj[8&L?>6 [M)k,8ݠ*QiM(fÈKP! " V}\+2SppJD顮ɬwR^@UnZ@CƊ_-Ը]hGq]717.72JHa"{[9" H dcd' ڄFFʲSzNh{ eFf|Cץ+K.:賮*~[%>|T/TjȺ2ÇKue%{#?z?Sm9/(4|N58t.+EygR&wQ:wU~uEJشn NԪ1ӎV#/'EvQnZK㦒hGaSw~b&f3W/ |q1kR] K4BíGPT#(u HYy(=u8%7"etrlA9,vɟ2&>Zܲ'ܨGY3du`/oT-X;*>׮zm<~Ғu̮%^7Nq^J2 e=d ".7N`Kf}pJQ!NoD!. . hb[QBx:DDŠ`Tk)!8BNQ۝hZV3&JG|2T%ZV"^o"=:x:^X1OxݤD%*!ͅytKBF&D H#FvE0O(\Ա+tiyiBFN#]TTc\U޳j8l MQ\r즮¦5)f^ &ݎq5Rm.E J ew4*jOPQn)J: VkXҕMT%'p)*AYe?CiȢȚE!6o.FI|R$f? HUCj5B B :<dمGrTO=m+ܻ-}=T>S$YKD#qn-]<|so%I<4l:G֞ҙ=[QJAMKRXWE~u,N.+goy1/9fcehJ: yji ]ndSmR,Ң⨴Yx}"N3ŤbRkY|h7*QQk֓Ycq/I2FsϼYX]Nv%Y?ve}mB:?^C^U9uS {76Gju7E;@o>iDa0L?.$!{y ?qDAIt;-/>?IeӚĩ%tJkԣq>V^{w+T{jQmF%K,[%t$p9p?8!@\ipppN1I8N-I޻F43hܖx9anJ3ggL=_N&'6!|6/]޿pIvw7N}{zo~."DF)*#*6DFӁsPS&wgL,Hjy5\>RpZud&'th+(,"OZnJO'6t轝d@t0kDO IQ݈DlƧ8#\\$I-- PBPQn˝;w^Zp͠q^5E{ɍK"l GܔL?e'VQ}3u~cO(M鉩,HSf$^7Z 7%آh&;)*!H7 MvO?NC߷f|xu#Dd229GR>]2 qsfjcdŬy8o;CGWD>TŻW+{GOgp!ށ()=@ 37`RŢ J"(NtIDDŅб} lmMxhesێ.R7pX Cw(@vUr^Q֞<:G뛧`YI<>lW憜icc`|aLL^| IGl&̢]_;Gi*Q&FIkcf% o\~c7FNC߷ e<#Db+zS"45hh)'ọM7m_.mdZ>Zu|Q-[׳4l6cǎwN4߷x}@ Y4),OCe$IF$IB/kOg@ЫJa]UzA[V.<:;wUpt~ȵZ؝)7eO#+V^ #Hz'k^s5n?]wL׿;DBWd'O`flbt*i)v~"mܰ<`3, &"H֣3%G&)֋ĀW;.?`EbιpK gDKF~~x ke먪aTUEut]ӛ(/%,ޛdЗ]S`% jJ>$Qs3a`osO4z>$QdD8w(߰?!° PG{o>FA(IݎbAQ#N0^.!hc硟_,g719|ռ/߽B[\];Hfd+2 nWM?GYlHUF+ظtR2I1k#'yrA@A &ʌǧבAWe6s'vUf IDATm.>$xG,QyhOxu "\f83ן%&k"½$|rVvQKݗ:RGi26DATb%1q,:CEG  s3i.{ogSL5U Z. zBo1RP_$">@jLJDJJM-y01{Jzbɹ2nGdRӣ$Q&=vl2[UXޑIΤ(tun"*ڌngbU0db xeY1Y Q!nArtYcdGos_ .r{<H4HoP9I_u{Gn~#{|Rp 1 x|Ū 54'|٭,ԪL8CKƌ?KEGG/OO$Ok\C{Gj-x։Wt[+wP5`KiJۚF<>_;6Żɘv=utՋ.;I`v JC")1ل IHf⟿7V}wr@G# Wƺk` 2O|ޠg6eIQdIyDlf,f @̚*"@TMymfHcUϡG4~l58N jTo9]u~744Mu ]UM5 C4 {3h :B' 0+>xN`thdqcȕqzgd`X uį?qqqcOKzt,sS2)F|^-ڇ<ƣ謁99^QL姘:ܸdzy'dַ w@ g7# -m9XIQg}z:js]4ܕ3v2Ɋafj9="K"j"j"aeATbbd(,ܲb vk%_{1%ium2~\,QatpI-c?$]]|x#J6S#@Gld9\ó=y߹/N߯GOgENa:"?| d3-*Ϯon66xeSKtpkh kZGV'aT5})Fmm]$t-MnPH!hoFn *HH/Ft?R2u@I~(w+QsAu^[Z4]P!j8\uY7^Eׯ"ؿno쁗s=7_7bʽ8 Vm6$_#I8Y|aM#?3dDA4!I Ro/p͒xWe/L7숊d2&-:x5h ffݐ{3YdR48 ]5pb7;S;iJw)D%zT|> S|)[)gݎiYV^¿T<; N߯mkٳ^;) );ŷ~S۫qKaxdutߔ7-ʴ,+?{oaj DAhzcC0@0PU O<Z"dHL$#4A:^c]Z]>Q\-F @ `MH3$\Mty2G")n⑯>G_7}l()½tz=Y j^۽)&δ6wlH}vT=!r^8GdNr ϋ +)<{B}=9RσYDOo{K쨟 ([t4G}o'ٙəC(]\zȦ$A0HM񿿑ū湵($e2HK:?'ϺqH膀$(&`j5J.0wO%@NlEVi ۓ%W+[7?γNWyp!xUAS! 0GKgyv}ϳ{m",YflEUM>Z:UYđj A]S4#?F0\&qucc.ԞьPsD2 ,d"7prI`cOO|a+o:j-ool{ b#;er˿cAZ6-,%O5OOͺGȎy飬9k!Jƿ W(o~x+Ww-n׈9Β½TL*:Z<{C sBhpum̑jk?͆B4Q_&M#;B^9pt:WO|꯿ޚ>4LVM{Ɍ@Q;/Gub,1:SɈ '>\0f瘡KO,sJO1/% bƜ|PZl!/>c U=Cp]%L-LD[0@OH2Y{8P͛:ao8ώIٓU{ӥq"'e'&Q%Eu OX-*dvw٬ZB0!Hfٿ]JjHHsq=y?<Љۧ{Rc^^ӵs# EBL;\ϳs͜.f%|˳s2h}z_9aLt(:9\CViUVS7bdF- NcOw4 8gD4t@WG>n(衷 G `ArFb,}χO~=QQY4m>v,7뎮c%c|>:nL#[i$4t|vW4[\~u4{ޡdv?sw`^j.\ֹu~a ey_<{xrHGOKܙrzAyׅ42xr:rbXĬ9YytΣL&5%Zͭ~ DQ,P|ih&{ {J]ʤYGeWfd^D$vVPv 6<$+4wj8L~΅_2bW6$}ayv ˳6W5̣fN")Sc`ɮ.nIagkPtW6뺸A2eYa&V7o5f&j,=&PD?`*k2T=X!@6b0Q!'IWgsΪ3XK3 ȡO_PRS;c#|N׺:YYBMrk2sj';Jfk2ZD)z\~WRQ̽_s80ͼ lF5{T޽(%-|s $WrIdw Q8V_dQdŤ<+\7)$q׾M|a63$csi2ܐ3PF,}<̲A?e'C6TH:It)ii7w$+c5^Hr'"ktκM$ m;ز,+ yjoΧ($iNټ ŚNM*0$. Ix Ed9]照STĊFMv  ᔔ13*3nްIًX[ʛÒ)im@]92GRJ6sOO^B 6\+Ex`ya=,I̡J[6vLg[OqCδ!2]q4V88Ԟf_cAEMP%XK>(f&gNfݼw=^*!_''':uHq?ʉ:δ5RDAJ~@"jn21=tY-GθD&^1 $MYb:q"'|ŲdFdWQh*\2_%gk"~{0 \ʎ冂(B e|bt}B Akn>/`scmX_sSUM5ϗ?"wrJVf~VD˛!dA7A&*YndvrKIrg]]F4̒-zLD<-=u݃U 0M$A0옥MtzkA(&r2}>nl0%mdI5f䣃 C >kZM"􀇂Ŀq(k7ku ~ghax#xYJ%I7͖~#G ;&6Os%TvrZW'ٖq|5Go4m|<=|WY1Z~ 7 AÙBTM{JS+c1`Y:{R86?5w6(,˘O{,YXX?_u ?8-*$c]0#p$(4at}eTYeXkxIP2fq7ŧ6:G꫸gƂ1ICtFb!k$a̱lJfCy/6zZ,ĜI|b3ɠ {q#Aed?OODSnA\L'mz\drJ+\ s'ub44_s6o@]Z:ѹ$M35b^AC g͛8,fKh)P@&"nhku"k Aia*o.{kʰ&J[-ѵc/@AoދҳL7c!6ľڳTw!)QNgNDSPa?k1*ssv?^!kȺ#MbvohhJ\)"kN }->:Lƈ܄2dz0C %)"g>"jƜiLO>b-6N6ONLL 3fszCZhX4]vVLd,$QڒJQe:5-]n:ѥt (`QuTwۧ3=1\5tzuGv*oq%UǡkHSxy-ƞ.:}'%k4F2(OdG‹01 _lϼn:"&ǧC<_&!s&KR#\t-n"Xxi;D^h{1`X0 t$%!5<&?qӁ-,zd ly):CgCQ> bE+9R_+VTμ#Ak