// This is just a tiny library which lets you easily manipulate with // tabset controls in your projects. // // This lib is FREEWARE. You can use it in any project. // // *********************************************************************** // ******************** DEFAULT OPTIONS BLOCK : START ******************** // Default image type. JPG won't work out since it has no transparency. // 0-PNG; 1-GIF; $_tab_def_type = 0; // Default style [0|1|2] $_tab_def_style = 2; // ******************** DEFAULT OPTIONS BLOCK : FINISH ******************* // *********************************************************************** // Sample menu array. Everything's just in plain english: /* $_tab_example_ = array( "_bgcolor" => "ffffff", "_fgcolor" => "dddddd", "_curcolor" => "ffffff", "_class" => "topmenu", "_nounder" => 0, "_style" => 2, "item1" => array( "title" => "Item1", "url" => "index.php", "style" => 0 ), "item2" => array( "title" => "Item 2", "url" => "index.php", "desc" => "Description of Item 2 here", "style" => 1 ), "huh, new item" => array( "title" => "Item3", "url" => "index.php?q=1", "fgcolor" => "aaaaaa", "class" => "topmenu" ), "wow!" => array( "title" => "Item4", "url" => "index.php?q=2" ), "Jeez! that's enough!" => array( "title" => "Item5", "url" => "index.php?q=3" ) ); */ //*************************************************************************** function tabUpper($M) { global $_tab_def_style; $out = ""; if(sizeof($M) < 1) return false; $ic = tab_Items($M); $un = (isset($M['_nounder']) && $M['_nounder']<>0) ? 0 : 1; $out .= (""); reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; if(isset($v['style'])) $st = $v['style']; elseif(isset($M['_style'])) $st = $M['_style']; else $st = $_tab_def_style; $bg = (isset($v['bgcolor']) && !empty($v['bgcolor'])) ? $v['bgcolor'] : $M['_bgcolor']; $fg = (isset($v['fgcolor']) && !empty($v['fgcolor'])) ? $v['fgcolor'] : $M['_fgcolor']; if ((isset($v['active']) && $v['active']) && (isset($M['_curcolor']))) $fg = $M['_curcolor']; $rs = (isset($v['active']) && $v['active']) ? (($ic == 1) ? 2 : 3) : 2; $out .= (""); $out .= (""); $out .= (""); } $out .= (""); reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; $fg = (isset($v['fgcolor']) && !empty($v['fgcolor'])) ? $v['fgcolor'] : $M['_fgcolor']; if ((isset($v['active']) && $v['active']) && (isset($M['_curcolor']))) $fg = $M['_curcolor']; $rs = (isset($v['active']) && $v['active']) ? (($ic == 1) ? 1 : 2) : 1; if(isset($M['_class'])) $cl = "class='".((isset($v['active']) && $v['active']) ? "cur":"").$M['_class']."'"; else $cl=""; if(isset($v['class'])) $cl = "class='".((isset($v['active']) && $v['active']) ? "cur":"").$v['class']."'"; $ds = (isset($v['desc'])) ? "title='".$v['desc']."'" : ""; $out .= @(""); } if($un) { if(!(($ic == 1) && (strlen(tab_GetActiveName($M))>0))) $out .= (""); reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; if(isset($v['active']) && $v['active']) continue; $out .= (""); } } $out .= ("
"); $out .= ("

"); $out .= ("
".$v['title'].""); $out .= ("


"); return $out; } //*************************************************************************** function tabLower($M) { global $_tab_def_style; $out = ""; if(sizeof($M) < 1) return false; $out .= (""); $un = (isset($M['_nounder']) && $M['_nounder']) ? 0 : 1; if($un) { reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; if(isset($v['active']) && $v['active']) { $bg = (isset($v['bgcolor'])) ? $v['bgcolor'] : $M['_bgcolor']; $fg = (isset($v['fgcolor'])) ? $v['fgcolor'] : $M['_fgcolor']; if (isset($M['_curcolor'])) $fg = $M['_curcolor']; if(isset($M['_class'])) $cl = "class='".(($v['active']) ? "cur":"").$M['_class']."'"; else $cl=""; if(isset($v['class'])) $cl = "class='".(($v['active']) ? "cur":"").$v['class']."'"; $ds = (isset($v['desc'])) ? "title='".$v['desc']."'" : ""; if(isset($v['style'])) $st = $v['style']; elseif(isset($M['_style'])) $st = $M['_style']; else $st = $_tab_def_style; $out .= (""); $out .= (""); $out .= (""); } else $out .= (""); } $out .= (""); } reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; if((isset($v['active']) && $v['active']) && ($un)) continue; $bg = (isset($v['bgcolor']) && !empty($v['bgcolor'])) ? $v['bgcolor'] : $M['_bgcolor']; $fg = (isset($v['fgcolor']) && !empty($v['fgcolor'])) ? $v['fgcolor'] : $M['_fgcolor']; if ((isset($v['active']) && $v['active']) && (isset($M['_curcolor']))) $fg = $M['_curcolor']; $rs = (isset($v['active']) && $v['active']) ? 2 : 1; if(isset($M['_class'])) $cl = "class='".((isset($v['active']) && $v['active']) ? "cur":"").$M['_class']."'"; else $cl=""; if(isset($v['class'])) $cl = "class='".((isset($v['active']) && $v['active']) ? "cur":"").$v['class']."'"; $ds = (isset($v['desc'])) ? "title='".$v['desc']."'" : ""; if(isset($v['style'])) $st = $v['style']; elseif(isset($M['_style'])) $st = $M['_style']; else $st = $_tab_def_style; $out .= (""); $out .= (""); $out .= (""); } $out .= (""); reset($M); while(list($k,$v) = each($M)) { if(substr($k,0,1) == "_") continue; $out .= (""); } $out .= ("
"); $out .= ("
".$v['title']."
"); $out .= ("
"); $out .= ("

"); $out .= ("
".$v['title']."
"); $out .= ("
"); $out .= ("

"); return $out; } //*************************************************************************** function tab_getActiveName($M) { if(sizeof($M) < 1) return ""; $rst = ""; reset($M); while(list($k,$v) = each($M)) if(substr($k,0,1) == "_") continue; elseif($v['active']) { $rst = $k; break; } return $rst; } //*************************************************************************** function tab_Items($M) { $cnt = 0; reset($M); while(list($k,$v) = each($M)) if(substr($k,0,1) == "_") continue; else $cnt++; return $cnt; } extract($_REQUEST); //*************************************************************************** if(isset($_tab_or)) { if(substr($_tab_bg,0,1)=="#") $_tab_bg = substr($_tab_bg,1); while(strlen($_tab_bg) < 6) $_tab_bg = "0".$_tab_bg; $im = ImageCreate(6, 6); $tbg = ImageColorAllocate($im,253,254,255); $bl = ImageColorAllocate($im,0,0,0); $gr = ImageColorAllocate($im, 128,128,128); $bg = ImageColorAllocate($im, base_convert(substr($_tab_bg,0,2),16,10), base_convert(substr($_tab_bg,2,2),16,10), base_convert(substr($_tab_bg,4,2),16,10)); ImageColorTransparent($im, $tbg); switch($_tab_or) { case 0 : case 16 : { ImageLine($im, 5,0,1,4, $bl); ImageLine($im, 1,4,1,5, $bl); ImageFill($im, 0,0, $bg); break; } case 1 : { ImageLine($im, 0,0,4,4, $bl); ImageLine($im, 4,4,4,5, $bl); ImageFill($im, 5,0, $bg); break; } case 2 : case 18 : { ImageLine($im, 1,0,1,1, $bl); ImageLine($im, 1,1,5,5, $bl); ImageFill($im, 0,5, $bg); break; } case 3 : { ImageLine($im, 0,5,4,1, $bl); ImageLine($im, 4,1,4,0, $bl); ImageFill($im, 5,5, $bg); break; } case 4 : case 6 : case 12 : case 14 : case 20 : case 22 : { ImageLine($im, 0,0,0,5, $bg); ImageLine($im, 1,0,1,5, $bl); break; } case 5 : case 7 : case 13 : case 15 : case 21 : case 23 : { ImageLine($im, 5,0,5,5, $bg); ImageLine($im, 4,0,4,5, $bl); break; } case 8 : { ImageLine($im, 5,0,4,0, $bl); ImageLine($im, 3,1,1,3, $bl); ImageLine($im, 1,4,1,5, $bl); ImageSetPixel($im, 2,1, $bl); ImageFill($im, 0,0, $bg); break; } case 9 : { ImageLine($im, 0,0,1,0, $bl); ImageLine($im, 2,1,4,3, $bl); ImageLine($im, 4,4,4,5, $bl); ImageSetPixel($im, 3,1, $bl); ImageFill($im, 5,0, $bg); break; } case 10 : { ImageLine($im, 1,0,1,1, $bl); ImageLine($im, 1,2,3,4, $bl); ImageLine($im, 4,5,5,5, $bl); ImageSetPixel($im, 2,4, $bl); ImageFill($im, 0,5, $bg); break; } case 11 : { ImageLine($im, 4,0,4,1, $bl); ImageLine($im, 4,2,2,4, $bl); ImageLine($im, 0,5,1,5, $bl); ImageSetPixel($im, 3,4, $bl); ImageFill($im, 5,0, $bg); break; } case 17 : { ImageLine($im, 0,0,4,0, $bl); ImageLine($im, 4,1,4,5, $bl); ImageFill($im, 5,0, $bg); break; } case 19 : { ImageLine($im, 0,5,4,5, $bl); ImageLine($im, 4,4,4,0, $bl); ImageFill($im, 5,5, $bg); break; } } header("Expires: ".date('r', time()+(3600*365))); switch($_tab_def_type) { case 0 : { ImagePNG($im); break; } case 1 : { ImageGIF($im); break; } } ImageDestroy($im); } ?>ExifII*Duckyd-http://ns.adobe.com/xap/1.0/ Adobed     u!"1A2# QBa$3Rqb%C&4r 5'S6DTsEF7Gc(UVWdte)8fu*9:HIJXYZghijvwxyzm!1"AQ2aqB#Rb3 $Cr4%ScD&5T6Ed' sFtUeuV7)(GWf8vgwHXhx9IYiy*:JZjz ??jt+#9 ::xF% ($)lI'JidTZh噙oQ pI,N,H UWحuWsӑwhFTDvxYԢ)P="R212I_l݄ʤх8ߘ4$zY$2IGQ3DYPx~Y=r2A$:R+ZTrdK:QP#9oHM `?m՚*5)>]7KH"I{8,SJ!T/ͧ!3c? ҟyvCcD" u#z'׀- ЎqO#UNn%Dc@vwm9s5QRSPT̙\1Q1zh$+bT/`/lwi٠FcП]4$ jv+DV0YGOO5?cnf\Pc֑C 07p) G>>cp{M_Km(hxօzi4(Z.'#Z%5Z M8N­=-< KVKJMu1yim#:G6e-vCC#0sp-kϞorpLm uTNڒ4'С6cm6} 2MS4Q|:ƳHKF1>D""$^@l PX۱! *NIuc&J=N[ :u+ hs*41!E,jfᩏnp=J/2|#҃#;'h!=zز "YȤܵ͡l;'?؋[)Zu >ak@8wPW[]^YhkRƃu] &\}0~éfƓ3_2p.aFn >\֨8$ot~M%}AOr.vD,-XcO>7gIPnӯf[^c0>7h*qI2i|p9O`-Ù*Rƣ~Q} nMmmq\OH?ʔl+SٛK/H,Un_!SRZɩwbwa=y5r :W裡E:LgQ-EQ V=Q9L,[ʱ?Fig;`!&֒cjkD=b-g(V[#GLP}hGVӭ̲pbʴFySM߼06z>)[h#x0Ec` ,oɄHuJA]j,Ď4&="$PĚkNJ߈(r_%>gγUmz,h5 njWcp 9C+n9[ <“91TJ*E(z]ol[]Pݦ@h ?o[To Yb,$MMG$SF ᔃ;e8oRrwspQІѥV|YKu.l}[P[AQbd S=s[?rSC)0ފ'{_DU? 8/OO .Xrfߦ㘯o7 ܩH#':P2 |ekeiKO"奇á+;#\2fk!>DdW^DS.>cPoǹ=TضHf'}Ozp9RQ8!u[`Ư-I#WM1hWk6'p2ߕ#''?N$zϨo)M+EъƣRZڙxa?gG yxx(>\:c׳UPS5]E2+uV[WPz2<]Kɭ֔{XPM''^U S~X)""(~$mƲ5O{zD=u /^>zi M:Oj?e>ν}}5ڢjK-ꦣ?Ƕ4 !455AZ~B=㯧Gv\ͦ0C꺻O|(T;⏨v_'?;nHőՏY\G4uڍΑmRѵ8thE۳ЮǕ6v ҕj? >]Dz3-V=UeWt&v#q][!byi;oc>ʗwܷ \ S PR:XϸD7۫ŤqI?:`<[\8JkE?2%$0YrOh $qHQ}O <4FS̾=m`r"\[uckJV֙ApY)B?ϡZky,iZB5zTuKd-Wf]:5랎KEik$T͊E$Z:Ⱥb/n"Pm_ҢйҤ5J=ܷeӰR2m?Xwa+B`f#~®۝=[Y[ZCy8IL"iHnT4۽s%4I-A5qCҼM qW&t0[ $v^v%h@{,^8hК~β#d+ DJT)biƧ+4A_ N5e2r ͐yeZ&,;4j }8d6mLm4PI''ꬾE|f?uٜKGU Iaf$uVCh>`Ҿ sۥGy X0Ϡ߻Kkm6V5 G˷1fLt4{R zZ1ș|۴sGSb[]+m cR@T qB;yg2$*Sn#U=vM˿vArjhp%j:qZ*i|$1 ,2O*.KUk FQJnr;ƖA}:5+DNZ@eS JXZM:%e_m7 XxN$VaL1۷0E}v2S ?,q-[ ߹]ɥ%5UOr*%~! jŏ{OtڑC,qM>TA )-R4tZ >7ǭPjlgeK+GGm2F4ߪnnm[T\RݪG+SX>})XmN`14X`Wc>Q{/t=1$Ԟ]RfUbC7n&]:Bݘ bkx JVV{pMˀ.){èʩ-;WjUٖ1+QetիLMnMAvUcX]\SiPGzݣmU;ͼ$U5^l׽dz;7콍q[bme$Uc215TUc0<3*Lr adlKMk{"`j+QCG{NpH44 iL΢%3;UU4 ([kx5$P*MΟNw*wjdiɩE><ݳ9e< N\9gt= Z>tJu t]zW2=T9WP1H45ȏnwxnvc}D,axl2QAG͇ǹv{$dgs@&ZduZSםC3]S3tԱEW.ՙjȫ,<(vEسPT?p]3XJ++N'$ǡ! QGO+V2F>. f*IT.i,mRWotikj=)6cwWpoVo*ݣ jq[\=DU+35*G q "ַ5{ VCP qiQ]Y}^˒v̫J~H(Ϥ/s|;n yjI1='T U K,)#;l|$N衙4g I4E8<8ЗU&(XA,0_?c+3+̩m͸Rj=B{g춲HI)|K0>wŗ8qxYK,ZWsߕӥ& 942?' {n C0@ƒAF|}\Xp< ~]Ylkc1xL+ CI 4Lu=:EPQA Qz8@TJP>'?Ϡ祐XGE%AKZJx(qqD^GHiĴmevL~ YƹO:6ފ!5GA}i䨎mQvh̄꧖}s+2|k{4<;]YHh2ћ |l5ҀJEY^ʑJO Emj?|{&Mґ68b42$&ȎNânkݐ>j4g>gg̍-04,.y{T?MQu16K{WD9 >O}KӾ蛆 Ԍ|A{׻6x-xB2EK7^gvO@_"z%#>+qm*yc}Pd$`P*><ӳ<1$¤^Xl}jl}:6-}7.mȊcwZzjJu xxn/nv#RU1EuU)*繁s7䯥qU18* rt`p𶑀z;sw=Fܓi8]Lia`͚ܒWAM tm; <%"!}Vѻ{ͷg8􄟘|6K';tܻ3v8OSj0ȓ#4B[Aj!j8=_"C@T '-2zuu&[' MV` FN,E5SE[)d Ŭ},,`d8 >XcZ.8UdR#tg>Uj ]w4ty4$)k(RE00o*Ak-KvhL*>?Eͣq6Ԩi@t'˻X5(.+r*jb<_oU˵O5ܞKgo,W?@| UMl3*]FjYc&Pn/c{,8h jS@t8"䓷dv ':wBxԺ>]Z|Z.{rlj4teb(peƿPI<ǂ+O.f{]RN-ccK\X6K~M OIq ҈: @f]d9PkO~i{:=K0X*/HߟJ续>k6.F(!BKvW $zu ݙK9BПEuȮ&lq3vM-gaPLԔ/0᥂6e&ӂ-/Ea > i *g3pV(J==?_ˢ5~|)<U^9ijs[/763p/Blubs>u dA Ԟ:~:]eC? rU-F¦o9duKJMR7[Srgsܻ;ZmPH4>Zy3:~M|{>;|V;W>%C V3Q[EGmҗjAPQa?B}/yBФŠH"sRFqY>ޡ.Xl FY)J}ztvhvj(~ɱTPm,dkS"=r߷|hbۭ-cY>FKuo|̜IiL5҇A5=%NZ F*R!Uţ +c^}Mz  #?Y=M9̔`|.5qq"}M5ð# xp ЙY&8<܊Q2P{~8"\(QˡW7tr(!HyT-ct1Q !_zr32 q?n:R:x|vbE,Uu:6pDR!}$ Em~}h,Hi?fdT hR]c{ätk6oI|G0EBy?(mC |gs]\֞_F|Ce&vy#:W #JpYyKj޽]ަic:l .kz[c{Qpz5KQ뽓v8TQLIsIf1?T_B:Y7!1ǛM٤KJI]t."i>sE h@"ZȲy+RzҢPge;;Ziˏ,>;/"tKA5Ym`y#z Іƒ=o|І^ʖRd##>b= ouNBqmvTT%Bn fU@5 .c![1gAy!W7{-q ,Q֟`6$_Xڭ4QI +^4*{4 KFE32Ǧ728(ܔ:‹ټA2N~+k1a҂oU55YZ6ij4δŭh6`< Ų1`mo@$y&X-?0xW>Tv>ٝ?{F xݟY.?U㲑ZJ3O9HjIN;|- 檩`-\>8񺧷lܺ(q/ L?;֔=nev>[klcҚmmܠETHhpx<],:c*eOrɨI}sc)qX son|R`_>&8;Ub`bIHß==6s_.>OʽܝɁWDp[ %Y%#pQPQ˨Xtm^ 6Rѫ* ,UM|~\En1}fQVikZR:DtOWXdk*zW/AITǬLҞ? %F23[+SGSZ9 QU+# |Y.Hrݿڮ])"myxKnS!>pwwpo #а-'T*G{3yU*[%U_B/$9Jcsmiel-"TEUDQufW^k&{=,ȬSG>E>̣T HdbG:"oY54-K$"(]:mOL`Y.)a5;'& TTGsԈ}YgHXsvPi,ZyCǣ[.]߮nv@qbHI>_2Wob|3c]۴;wm?ZOf<[_v`r8l+I5f+,&(B!c.---u mQ#:\To OCэ,nʻ̏ZE5А8ZʘeBd2kuD{'e(\~]j B?Y$O{)I̦^Uo݅Fi\iѕI9oM틔$8Rf@ WٸTP[Dcf%<2::̡@'t1WavSrԸ,XQ>FB S&WQrmHAd W@?K]^u 4c:N䄭HY|Dj˷W&V R'Hn=c3[ߨH}DWVRa$ YLTQ<4K)mAB+/G6E \KuaҞ_" 5#Ӫ5PdyZx -4pcxU+ @ܛq/Lf"%fj@~]J\`ئWn l *E K6@tp.Pگo MfuδsEZG`?bx($?? 7o}[;FZ<~7-}Kɳ7n Lf{҇8|[Szd}-qsd&x^J5~Srd;1mŔ! 9=l I-=] M<TtsUKYIUOMUIUMT ̒#RAP8J"R ^~.ZyϮBaiOϻiTzꃏ>78 Xߙ]߀G8z7%2n)4ɢҶ/n}.X"3c% IϗRovFrQQ.8wnuV^ȦGӐ;},aG7?}EE G2& ) (hᆎ?UH HAOjU;_:uP )Ɵˬt檦ZiV 6'I([cEXjTTֶ9_̧p}?#O\hdq%nTؑbcg:Er`ʟ>x?$s$7 -և·Ի~]ymؕCog/5OocWct-SW oںkc1g/[j8z~=LKk4+*KµЀh*E@q^oQ+#|ڻ!Nt9]S${ S8wI@(o/N`," ??Z0_՟'X6nv-F9=J}׷1tZ >iޭ!UP4/f_K.ըhW0l}Ü?/Y#~f%4qV8jWs#^ܸG*QG:$U^ڒA{r)ן>]n]hUI>]$dTy?>TTb!J56}"},xpbӏQ7c'wZcӡ 1S]MJqˡVmܸ>b~FM4%*h_ǰV[o\m)V-\|zy$rvo{KzC"o[\٭ǕXfJ E[3Jf"~8X(2*KAEn 2-ƓE#$ P懮6-\N,S X Cmԗ|继1SQnR`T gl㪦iRjjXB.MEW 3\+Y5n?\*3SR=SnaOc]GoWLF({WriVH$B`UhR! I"$_1z}j M4.HI895êZb!;ũ4Fn\{TSKHBZE:j4y}:X@4ԓ1<:w v{w =.GiD״5A(*i[V7B w#r"mdn/6D`ӏ¿{d{ܮƬVYA5#sR?_=~},Ò~꾰\5>m걸w+yna:VK{MAO#>vte8|Nc;_vt#>Zv\鹥Z"P=ri]l:^dG! Pgo_Ud<|GǗ>}(Iԯj l_?sz:9rpc6B5^_esd#"sOFQԃe7PDBWIu8zң_TVҴAU6]- .lJ8n Y͢I匮x ~-z\3 gb1?:wUB"|UDG"ZYvnب{}ߧcv܄iПl1kTH0|Q_@-PYnƠA:~|z]:<1\3)^7nǺ%/=A=`Zk}y&n}hӥz2;ST.~`O=M8UរeJƳ!mQ/Si*yZ TUzdajҞ%%Q6H,E+wvTi%gvˡ+:{;v>RuɆb4UجfjRUu\s4,MoHZ70?^h`SA`g|gjtTy ]dz[>5ڐ?tcf+pZU~U~k*vVwP( ϻmy>|^>%b$VMDݭ&Ry m1o}c=ܐ)o_>@u&ʤy#`J+3%MWxt#Q%4.#ne~EO$̌HLW{gqs74iYڍڂ1M-te$HEcGH.mϻJ\YE"`t c*9 vl9^W76& %UI[ǭM-E$NuT"i|<ߙJh#ܔbcvJe\HUTK!]UD}q]X6)4B%KkRB)LjYU-k\MC0%NhޛO.U[AҴAR>*|\TRW1Xg6I'鸷>Ejr+@3JtgWg¾U~t=k |٥62{nK#LIOɍgt  OJ ~u$u#{=Yo$h51ˤQl,,XG<5| c8gdR<<1L\z|"ʣA*Hm#-Nx{2iԚ@0CCʌN#Q[K S#>R˃g(s1HΑR*@B(qXxt#lܩb:åkX!y48MWJ$*j`j=;yd'GP4X$GUH:C-Y썳 7Al-syn=w/51ƫ; *ӎ]%%&B O=єYÁC@ :/}"B'5$ft:037.F&ԻtŐ;#g٭~Ll sYړmNXZg' Y,JkhvH˩NEjҙXSO[qJ $+N|Czgt'^w?3ztScz(tmSd t=$W 5;"VSBA8iZ!:fH**FkSZ֚WuJe;BxH* ˩Da(\}74?H 8~Gt/`f2(gn ;je&k6&ߟ莻14KSHElZ^ap/ck}c=Lu@OK`䴻t9s!kߛ[^}:Ro. WI$؆#+zc:rBm2$W}}b<oՋZ)E8K͑Kbte2V*}:;aE?:}4Kx_+KGa }KTNDž?B¨"Cc6ʳ !FA4|"GؙIwoF)r[`.'\\5GhI^ f-RHT^r2#}U*##b4PHrq`R534gRo-JEGio?~ůfÂW{)T ym |I~JQґU4m^ey-h 4 |Y=g}//ڴM<$ecZ5GҪ !Ё'h >wa[I(3GٔU]S=vR،Vqz׊ du k}fslކ}(,a04{ VF^[Cnl#S0Z9Zj{x V̻ 3v5Mu>E=5GUVͪ& DPͻ3Ue mrժd5[[({LF!é&9'ʘ/xL;5Cm魑xY䠗+>±-~$VeҸ*쥜1UBgՂQ__sO`q>ߍ= E0s'$Nj~yɗ'y,k!eW~UtslHʅoq?ņ ~!#ŦIUaan?'6\ũE?}-IPIUU?f|Y5}=-m&'9 ᧆ6*&yuʔIZJp8ڳ*"Or oxa @Gp*DkC5F]Lx%NjJaYz~>W{oo+ssϕ;l;#cb?Kwnia+)]uGUe\l2*]URq V)7]/1 /P .*|GWl/s޽g=7/uwvf7gw̦mjCWckQc eFUGiP!{5G<_X(̦?oE?*-BMG}@Г}Ϫ۴=c~+|d}uO>¯XTu-Sg'wTźݬ*J7GI6oh +3eZqW2'Uu1$W@_E߮?-D_9쭝#jv`wKlow[Lج[$y->gt $<5/i (@U ִ30vePl_SuVޟ\u{=75ng8Ak?m=%BIw- tFE3@j&Sg&<,`]33jN|,۷vK*n7^g!4\NzZ]KUUrUDa,3j${CmU:Χa|:_S 3ղ|ިoqhm2ɒʁO-]22: LY<&סA^y<Uq4qb1PSUIQQIQS,=\iKXVej/#.I{e# 5M>TǕBpxVc8^],ueEyON2dB?,,JM<,Rh>ȕ"UKsG_2[j-[@fxf"7unDF6e^: u-{ltnղcK,NB[;R(`$րTEN|_?w*M4{-p4Ty*(ilOZjX2YjŔjhW9fHQ_?{]ɒn6Bg%ЕY!Bk%m#wrvs,% iD`Bg (.ͩCw].ńԔ)tyۘ;U^"zj+Tnjj&iJ.;.?04ײ6vo/!`ooE1EQٛ>E$|ں'DC$XgEs-^.$j1ۨՇ͈<ꤿ){tD+]ADΆ{/Զm&jȿ >!3Ys1o_]_Bye[a;;mfnfzreݛ7$JmN49M%i:.-q\Dщ]5MtↄXSG:pmߟ={_w[jɪvC=l뭑Tcv'X|v EFNTxMUer19{*A+_#ѣ:cvcn~v^͗pkFI3wvol]f/%OT?{<^i-u$3˨@?mj(zDەI$R)\)Z>; vi籽Ҹ#lo.ɻ_n5^O7`a\ |}eg0:Lм]20eZPRx:uCzx*UST?>O;T^wjtGd:wnǚؽ>L.lٕo7oTnZi $p@6o%`̊A-P]I?"n xm-D~ee 3=++O|C=,ٴ5ܶ޹3X,T۷p&|y(2sXaEQ߭%b)cεX DSQP(sQ^X arwt Xi㶫rN;sy.B%2:xjHgEj `>|V qOVNXOhq2l lUK)ExL)_,AZR"#?! Viuy ^gI=5CӴ(Ҿ*F (/eo<&H|3tHVǮ}:~du2l>(n7Smu՛pOt,l9碧 D} I=$n%40_mD@HfaO(iқd)#i4QHY=VO[9:bssR"HGE&BHpH~L#IĮ>kr6*ٺZ}Óa]jK9W_GJxlcܼd v&8ۤĕ /x:=@]J׹[P$jeO WC8Gn/lT>*T)-K-WyN卼"mI,}caV|ʔӀh |>kvCl~ua|V.qQ5m\R(HR5gY^pl}IXkmD|֤:wO&3G?oW5OsH7=EEwbF9RU1"Dyb"竾eDƬGY}9~իssGFA$#ueOo[!聅]bs FHHM.G=ɿ|=$OMccO=6nw d1ΤBF T f?47ڧTN⒣j"穐#DpnV:9 >X` T~K¿ŏ^P)Æ}?3|8JdZ]Q$#;?~Sl,'v~/t>ڽqwn_}7U6FdEuWBЁ71"?F+Lt2^.G1.Ƥ@,8P|q}ywc{#i$wwCuV9c }#+KF׃kyg8N}m$2H$S-ZV:XO4wo^#}]S"7?k.ɲ)6YrgSԹݍٳsZQPB1UDYo[q6hk1:P(>@gk]*!j@Wt1#xuo=۪~>e>3]^7e}ꟑ][ pj=_rM_u$]sl#G2&iJ$!Kt$P`!VW`p4qA%Vwxwi;}j1a[rWֵ~Vj/@)hr0Y:F2$:r}(k§RBvb|7='vZt^̫Si]7Y>gmm\fn˂)[.᫒(j]yDUD)ISpgq&.+QN)Rc:^(9o= EGsѫ_?#IChgu L" ]IK $A}r>];"Fw?фl.掲]Z['=uUT88*r}׽յifvk|^YbV5 kNj#A|0 &H_J˟@]V][PZOjhWE?l(;#!LB 7 XM_OkJdX 򅨥qQQnVUQ&NBd!@a6codۢ:ҋX̳($HzqyڝݔUϣEy)y*nfXja{b4ڦ`t׏^qKf5V\ONއ㥫ZVmOI&dl4Rx#@k{g+M"u84d'mnwZ# l"_J$<|ӈAÝ'v\k||ldNzv!ژ=UV,(#R[n״m@[K)&`2+,V?2#?>_w} 7 ji*I Z dbWZ8cr)z2#ơnnI-H{hx#V 'Gohw]-HಯI7g ޛ)*vUQMM뮥&~_rDWK+VXӽK.Ա}A?* uЙL@Ib})Ze<.b6Ea1^*TT -T1U_lD'qz 1SқD¬ TLpf4qʛ -k^" >-?.5.Gdz1SNcndVzoX\Urc3'ߤ,I%G=;mMUD+ASBGi[Q+ّ}z+gq), xkr(ԠG8rT(,A#n'+t-#`g_R<ç$oָ be(Oo?O^畆o2c-uQL.6fꖠA#nO{s {$l3NJ3 6?>.h kQfƫȷWytqX#GOSQ+dFeu{i^Rj|t5gYf(fhii婪a =%4MQU<"FA>Z yzqfN; -*OAz3518Ȭ3#./N:2j)jF.:/Ma*y3TXnUiTdhю:i|FzH_B~^CnŗO6;֝k;AI7OcXT5m)JP۪ڞۈJNMyǤ5bPV `}dA5Q**-cDojAўUcwz:urfBEMG=Uz=Dm!j?B"! 5,$#$iwYT>1SQChDP5yY7cF8y|JjhA=y=rOQ%#'Em H4cS>]ڿɗth|v _-^T.IqS}Ǹ@s]=\0яBW5:9S\dx!or8ӪI,xd VP-,H9!n>.qȦwOE NR3ݵx&`d\H5T"ܔ!i%"2MXRRI8T9?Uu0R<+ьňu$zh(㠅:qIJTYn\[U\Yx>Fց@)h00h^47nijE3G(*/EVbmO@$5xyRXȯ@S㉠8gt,m͇<(jj^M+:,f܊?>坻k{ݼn uShX/*<yNHXH?niN%F55S5]vY|U3RY]D/>YˉCqDGJp.Vrrec$Tc8E_gl 2wz>eM[=3-Z*ˇ|= pk=q):M DSӬ=lP)ؒ~xz.Iv")h8J)kO41A#N+jatěŏPB)OkSD#|UiPuHR{*dnQCfM;kl8X|Rc*^Fcr4&TM=+MD8a h xC@n}ORlr0Rt~C#( /A9bM܋XVrhMOLxcA)g.DbT1/3QSTr%&)zyIf1xYUQvnTQ j H%2Re %EB\~xo շ:A,ϣy/>Sm{ybpՕuKLK5sG OOCK"P7{&3EM |fP NK\t:MM[%"4U tw^?O`6۠lmp|,PGA=OۜWgX-0l>6MW&W81PWI[w*1at@:t PV?G;>-g]U !="j ;MM.wZ%=V3S 2R^*`xE*n-[R65oM)Z| T\n=9O6'e';}M3OTsҘrUxͥLbmt5)9ƜT"u:oZsG P(=I+IS_WWUTWWK5]]}lU1jI*ggbYO>֍!HWR|zJhP: Kh T>܏nZ>gW8#Z˩4گAUڄR5M0JTӁtԠrG^=*vӁs+=)i Eqp-[k1 }U>)ZyB#, ?q AI,t&RiA˯Q}mn9{0ˤ\ʊsÁ#oC[ <ϛ!;+@EPC`Dw,0G2}n{XFg杶D=5; AO|rao˖֯A$ӻBj*?>}u|a׽Ad9~ʫh[o+w~RyT(液|,vƬhA{JI Ҋ2s~cYVW7_+}˶zeHanJ#W|=s4m- G Zִ_.RSO. :ms3Bٹ>ZAU5~Ε$I3qtMOx퍓%ʁ2PC0P?I>Yq;?7[ |=<|V)OK׻vL:pj=(IMO>Cm~l_ /rG^#.D\ K3|&^X|RScVuo =Z*y`۪{%3ir=t(PzPMܗ۔|Q<MjISr dAPX(U*Ox4=4GaPT1cpu+>Z,$mDTOYM Ai2ruy8P9z@exjIA DiҞ)CfciJTjXnG =$>ez-[<|9z)%5IYl>!G̔Ǚ#j0OAuflz+QRW'#Kcd4Uc F{~8*2[W㞷.,E bUcbluyۃ@Xxu-ϵׄ(5&!JS,(!Ai<]q;%.l^W8,U LDKHbK) (>_"@dJp:20u9=_楰뷯1)9L>6 kPvѣYgh@1{姳ܽxRO⍔|Ρ:֏y쩝1~QȬM~ZGTݿ^)֡pKkX٤bHL*)$z,- h@v[/;>cUJqN (q֩QN{S29[GL8i!^#o)%0SD8DP=A 4'̚ēҥ|Y YK6pkB@ǶBDW3rP ?N5iQǷhթՅ͒U9z %bHP\s}n~5t5v6*i@)_tO0.7EE}]'k2 Xֿ/"/<+m85hSK GL]Zq5:s_"6/ ޢVH>Z0z_U>}Kˍl~`Z*rmǶ= U&0CjGE{vh 92ME8qhX{V5LpBȖr ~gn>*h?g. u}G՛snMߎ9.kgM[֋z$MޯŅcTҔ\E{s63`#Z|bFI:-7{ ~N|gۙjۻ0Xhi(Z+]tʕu5,y$%##O[nۥ.OCxqGMn(kLPTcu'ߕQԬʑji/D uIg>}_ȲLQxf>p*cz型 N3!֒Ams45rmw-t~"|[Clg:#> @ҚJ.ϴ0r/DQc, snZs{_Ua#ZnԬKK6pZmRb('#\U E>dT 3iN,tleH[JPI*ScA%-Ԟ|Т;~lQGN97/cUxުyրQe˦}N=M"EO$pk')0xLqԶW'4pI.n/R(~J}h3,2iy֔Mb[*sVUfQnT9,Xj(A,FQd\c4hbBiQF ~}/qG-f&z*bfolIbjuUJ?ZW,@P)Qhj4xԲ""b F5nG _ٌ)9$TQ:MKW04aI#e :#Ff- a"%n~=FʟyWF>K_RhjE>^OCYmËt z񐡬ZE5c:uB UOkl Nhs#s76>.{7QCՕM`"G1HcD!e\R8BK8@5sb6@WI>Cػ:ga!I&[Tmd"9?YJ [ ~J-wu U*$4BjP)k拎IIm]BU^NVe`"Q /Aq[[w^N:Jͱ r@@\Mp7-kX%e@]U@Z' nm{i )"'%bI/9ykJ1Uʈ ́VmdXR#۟당Y-M|I})гHO5œ:tP=AKdi.6:+o?W# JhÏcvt⺘fv]bۍެyrh@|SOWuj otS'ڋhtbqhѦ5I 8:#Y\4AD@Ip/½}B3v\vc"kҫIڥ_Uh5񅢉 ִ8:L8N1^G*ܗ۟fnaJ?CN۝|Mڑ\W>ιihzn:w׏'l?_zeC]?z 51%nSkad Ѿ=Cuoq R'\:r?lv|N3#UN/$W#\_Ť{sXǽ &Ԯ9Q_=={0 ^_>ï_[Semmuؚ?WRbp8Ǔk"3WTRrK*˴ob,Eȁ<: sF\#Tm\#cqCE7-ѝeߛ3wV{d;3uUmmٔVpݵ1&2 *ε%Y%)'[nooynu*0LҀj,8fx רvo8mсg&) S5im-71YX-Pʜ5*QjrA3EUB. Ҭ#0+AIu`jz+  zj8tR$n'd鬾Smⷆ3xfRۊK 1F&/}^@Hpx62* SGńk|]U"#7p4lfj a,K !E, c"54&F>_>yfX[V~CUIU?hWT{>ΑF4M* ej#41?50 u"9mx~]lRn]akQ=BL#ZO t݀_yݑN>星U~^t\s$"02AEI"Ċ}T+u}\ $ l=:6"DQT*FI#B^{~wXƐ |NOعy6B˗`dk!uWsϪ\ݿKGdo ʫzzMwL D5*䌐8|aJt#jI"F& ҿJzJ꿶|Fw$Ha \ڝC S"-tk2.ߤE*dcWEe;OJ &qwScF[9" QSA ē , 7DF~?h5p}AB7ˡ?궦i]WWU3^=+(/ſ??OztSc^}T:~* Q-W?Kq{{7=<OTtA^?JjO/X~֯u׎zE-<$_?/O_$OW_QSiMJS<&?C{-{sw8~_]_ZVkN,Ε7ۧ.h~ޫ5qmeQLn_WiN_3~??3}W^?|?]:k:tSxp9^4ujϯEgqo.EtKwgk/ob\m^-)gMsZ|51ԾgM1_-<)<>]M9_*>k wK?頋7葉Yӫ/J(u}ii?Oo?W?>ڿgO _ko^_xOSM~^l_տmөu|q}_O_:â}F8ִ5~wv>} v _Hr ?g-?wϛEm'^;_|> zek&_o]>~~4iTvھ´+Uz=_Zҕ4tӪ >KT+j ᄃ~o>Z|=NvM1?}:p8KUk._?Kļ~oܟ/GZVOcJx|]:})Iʲ>/{t}vZ#ѫ㾟7xiO]BqAW|M_~MO}^?GXQzQV54_ˢ~?䤾x/kx4z<+^?_f)MgGtQ%uGƫV8c\:#]m~xzkSZ:-NxAtR:3N~o7|՚<{wGi5[a_>Chh>tA>OEiƕZ>5hZYTy?ſu>{xz4zWyx)k _Zf