// 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 ?>p #e?}UQ@'MHo2>?-`9F%AT?˧ABrfd:gtwv }F*?'p} 08ztU:dsCJqI\FW}ufW USciao0BiiQVg̠]mg%03"q^Н# RRiƿCGlv.3YAȴS}ěw<KKXjb% K2ynDDR=EƜ>@Vz][Ge x##4zukc%H;#S{: |zLSSce) ir0e4h;gFrHlLj<5 <1W@N>Ui~ΔRj+ WV9 W|zr3"ُS T}h*[)B%i"lV9{0-w  qLV3M3·@wS?0x<{q2۶s/{?*5}6&hdJd} "A,̲\^Fo X( QSQ<8[;x ]i_%gۯ+sV|]ܴ9VMaˊ 39,!mMnmZD"X%WUOF*($1/ľ89 uW8b*8RO_ݸr{K/Y?]Ox$j[grw̨kp5T=4Z8$2h?PiS8/MxrXnCE`x8~̮c8E![}iiAN?O~Ez/uV#wr3,T5SӜ+LDE!VVҠ|YFSJҭV5DhAT*0!#M\ͽ@sDokiI*ڴA1ă}.#a>}Lc:t՜^08S?gAqo];{fcb리cU9iȊRѣ9Yٴ<<ێk{C$DT4gET| ZȖCKߴS#!J%I "sD THgҠ}+ _K&lZkv/guwm+6LQ vF,/Vit6dcvSa% ܘ#7eJYC!!W'ʴ=3׀=;}qٚH.m;{pPӃ_FC/[umRdsKUyL5|~_7uTUMj敌1؟zhJ%Iz}GbZ*GjIcCTӡF%qaKG b}5c>YP8w$Wa=ߏtFzytX )W9i(*sz[FBR^AaTBpE(xwY-P gʾUҞ>kսݍG+ԸUUT5[F~FLDPMOIX(!ooo[[\H,kEZizO%Ť r5P8|d꾣O;&M*vv2!5$u2.9r9jj J`Eְ#Hlx5 eۘt0S)&U@D6O;9#0cv3$[ %iZ?b'~v_jM5f dfHwVicoT0NXf 筡M,P 4iJxTXE ,Qj*zUd)ƞ_?BNJ<=:oY>=lϏ\qs \MRGٙ&ԣ'|"DD^dT4OT4χl0:il+94[^/n_wxZ&S#*WXBSƧVʑy`9`DžA<zTESSC_MVO{A#IfUd+;SF|Vcw]| j#ѫF.%U1+>dZӆT:t, z:kG91w:Tu_=7XowPSu7Nzl baqt[!zH1^âS#> E't_JPoO?foQݹql:v,URো'%dLVH\IELOw!R"' |,wp4F3um {;k~vC%~/fVOS7vO$4i)+.44-RQlMG@~VF+`R % pm G!<)+&jS+™p5z2P7M9o}גRh17r߳-nͦ!j'Ӣ^P XZH8YHI1#PZP>O)PF..wz`Ԡߵ1?ZPCۯ[NrT[;fņs&ܗ5Mt29Xʬ;OG&l}5m-^2?\~*QGi n 0B|i\ Z.%+ZԨREEE5@}}|edҍ)iwF,qAUMAIE\Zh䚦i(B\lgh`Ѩh8N(1"Jŏr`ZҴGyBN6ӭؙ׷$UVPnLFqECۛk9aF:|z!zx (qoE'JG̯ y Q,I'$Ҝz=j+7=[r\/1C[rx}&$]H^ T`SB(N )=K-#>KY%F}G m1|Z:ڛ&u ?qKf\¤\)a ?Glc+9m|F\oƝ8vwq9m񇤢 Y6 >gr˛9*h'z*h `F' "lA}>}FDKʈj: @ۛ)׻f&zLt1Lވb}e+=?G,Ҧu;wb:ld~A!O޻{FCmSɶq e6A9` )`@̹L>U#AAQ[I#YdmZ~%*|} ['c\]_Ng[lQ]&OvGNFP.3xl<$TTxޠ9 b Uq>@ ŨTLn(ŏ5:AԄ 7c'm|쎙÷z{onE^>tWSSfQO=&Sj*CpVh$I/AֵXd SHêA(:~0<|Դ5_=t{C!3 ^.BpbҫSxa톞R-QhkRtHQ0@3N Kh䣬49! Rpr+OC>"#;ývba=⎇ɾkϥ**0XHG. ST kYg20?NA +;&!m"<:zXL )ߋ\j~{3qO,!TA9=@Krn.O2PmX4> @>!RgrQL=|J"WU0y4<~DIub~}8ZRjd!]Y>~Tm*)i1| E>lul|X *())OG3DF#RA*=AΚooW:u ~@|Yq;hS6MOSh(eCNN())rd ! E}C=[Vi:j5DRWOy^$\]_5UU=}jqSmbfzi 宑vSvڕGeФlu淌!!JAPjN0|~}A#jVnAȸ7m=4=(kpsצSBUO<Ia}" G˧5Z^c/+1~n8]6Td&'ܔNPRbx-"MN#*B&̌kNk}Pd9 RA5 9GHMZ[ij-&3QÖ;rh͐hyj0u-#U+!2F#3Ff(4"NϧTm;taE*}'Pm;ld3no'; )(w4XJ-?#Ħ?+jzȾЙi.LYK~S q5*mPQ2)4-^jjQ촡?ھ{U! MWCdkvNZ)kfx%#'Є<ʎ=XmЗR5§"5>bto:ۢvXcx NIz`u -WMS n5*y[2ɑj&ҋn_X5H|R!)?NeQ"Iߐ >Fγ5{곘|[j&j=,_q[CycLE2Uc^xy}"&wepv1vkԘF?oeY"T_^m |?3QSCgd>2| O{]y.ª`2rH7&z%/5 :5 ȌoӤؑxRh,Ĝ~!O)h8̎/#K^?)CYJ @!'A \FtW~6Xq/SqzJ^å.1RUǜF|*XLYemR[xjqCt8#%8P?#CAOѽSYKz ̓muFS!Cm%QcH|Q$dT(h H4}? A#_*>6􁩫N[+ZHkrsPOհW-&O5@ NϵhTzR gTP> ׭4Otj0Ճ(HV2 $*:зˉ*@r5G7\B䫨#[>1XjZ*%H+ED4"4B#eUoo@#uy$RA >>ǯI0"ƒUzGҦ32,` qQ4$~_=z5dR hjzSSr+_/K xιd* 1Sn\A/I5SUGWep޾@+CO.TC`HƋ[BESk;_J4L:zďeCPPy ƿgJVQHiJM,&/ *dYȤ*o5UilH$ D.B|65gZy Sʞ}68^N5gSEh_+ dmH OMn5 ʽôj49(>]ZКqWv>Xָk\u)E !E#EZvBJ:I-T PZcTiKp 3˪~=3^ tӌrsɋyETXŧW_IOUZrm.2Ęf_2{`r1FyUPl ~=(337EzD>Z]pjYT2O2H#\Pڪ_맇:WW_P8!i~`WR;̐DW$uX"頩$vG$x xGD[Z3s 8&bdugV-fG馦} -=j2UyN fWR(T(n֬Nf=TTn+ijWTUևlic(_Bq˦DP kZyD\MVOM F &)xfZUb>BH䳂>\pburRuÀ^5(zH[Gʺ,nWF)4)sNkY4 hd4YNfԢ<>uL3*U&Ҡ|gxƞzyy'k[[Ciq ?vjod@GSYHv?fjQYƟ A8uW":&U4Mjiq'Ӧ)y9v4W/خ.8214[r̹T3UR_UF#YX2ޕj?:QOj.KLӪH0~:=U%Mi]PNz,ZD(I)LO_UXc֠?4Zj$TTv d=RLٰk[2H_kWHRǞz/"Q [A\?&qVK{RZ,V6HߧܵN~U'IU-I=Y+PcuUD"j#T,G!a+FȭtO}:A,&Q*pFpۧnSM.5[TE_o"P8ucFZuP.ķ݇n~6,nj-qN>֟XUAZ kt z)({KpZ+hӰZ YDQ(QO|AJq\REiϯˤ:kSSAe:Ŋu~:j]EE1VʕݳOSDLdHHdJM`}$&kq֘[@Y).54__ӧ(M%<ǛZ6W^x%O HPY=A?lfEfA52a:q߻:i_^أXKB7. qRC!iZS48p5T$Jrgl>u4SM駬ġbxRr5X)D$i=F1xus4qzNSJr4uC\uTUOSGDu3Jf5*$kp"8hjiJu`Fբ5CL:;6 7oVr{7kuPVG+%:Ht(G ㊢FP.{RHH,?)HmIyKix~}gl'#T!u$,j[yOD*\gOCD%w"j|Ցt#7&\E]mnJp|bTPCUFKO]T)#8H@lbPJsž|}A.G 8>U2dm٧*>Co,OCN;7o?BaVe,Кt}RB s, L@;''ad~Dn]aj{+ [EL#.>+VC^ǑX7A =NDWΔ8cd-UT WZ,#: O߻Ɗu,v[EVhq50m⪩C``+$OM*ڄAVHԨ`Zcْ(YSs^XPv'} ʜ8:$PT|DW=z.ׂw4)zT|R#IbZ#^=Cڨz?gIV5dpSv[WVm.55"Ěx=jiҪ 8OYu*,B__ _IBӫ$Ƞ1b@W8^cI7DܘŚ0UYhH`&Sk24 *Azea(޿gM2VSȩ/alet>!ɨƆG'4-ǵ QJӍsuQyh@Tj~*O *Vcڭ7>&Xb*J!i^afS&e7#ڈ4 N<⧅k[Z|AN5|Qf yIT"*TqI @28t[Hx ѥ%C3MPR.J:x橚$<})^y&n/e1Ѱ'^3G.+Bf@.M6"saT hY 2FΫLa+~r F#)_a+TNM听ZL썛ԵiELƔu<̆GEbVF`T'#>XQp>tMzVqhM,uFrIO'#dqӤAo@p9}bU>o>_> $``*)B8<|ΣPm\.:*H~UG[COɽZZP!)]%)$ e }: P_PDbASJy:O7IOEL1+Ҙ%2E=\:WMD]]#@}oĸAM(d9 |}=:|팂b2xQHy?G6Aj-I*SF&PWEGXCKG%RCWX(![CLa(*1kLٜ5W E->6CMM>[+JSU\ubP;#9*}:j*iPxqiFrT1GIF'/S MdI(>#s=zT: =G^iiUha5T$S>#i,d(SJJjY#ӆCnjRj\mu,f)NRaJeg҈ojdGEYebфSSǡ%F+pSc+vřp!*2M>!O_<К*RsU%#ۂ(T *ޞx&:>_a?gٟM4>$Q_8 X)u㼕Eb4D®$Xb x-48៳Hx1X32όeC!&^QN|y yZ-Wd4&50P4i c%2HP3h겍X=gazM>eiT+J*y*RK]Q9-oWwe>־oT Om Rin|sd7: Sմ8X SUYRG,@dd+XL?3ݼry//\}:ai ȶO/:Z|x\\TRФVZltS~2ѐ=.VMUEk厑D6D|flbddv\RE-f*LDVs0dcB2ijY@4/␯e@sN#~ޱDQftɶmFUZjғnSeWG$i)†*::٩AJc<+ʭ$*hμ8Пϣ81HX,HE6[?mr R+ zRKA ( Xzעḃ0)S [Z#^hjə"J}+5Io8 )棍=GO*$Z8TP>fORKY4E*d)޺UqqT8|Dgf 꾟o8_#X*H+S)R)Ɣхn2S[` Ȋ8\H5Qc9Go q^To!c޹3g媊haꢆ*heYږ x"ZRS$0jE ҧ PjPyy=H:I1%͔֌M[%zLEL!jO+*&ά R:QOIBMW\)AǮԕq=e@a=DK53BպeHI6{VV;T'flՆcD/^'FJR4aD5CQ ?f 74A)e5`KvR|Ht[ ԜȪ P8p4?oҁq2н*lE5Nb(F*|U2J3čkƈ2iւd(֣Xc2Ԃf4ᕡR:^D`E)(MytqJA?U-W^>U^Ǎa:p,8y8#BԬt;%* zԬ ~G Pi5X[:6v&Fyi`}`jE+SOQ 59q>`/I-$S4/:SQ&o˩zJ텵k*e{wR"X1S/j,88cG"*bXE VU)cҖ-i[b)%D۸d産<0"<kQU$y_K%Woi݄FmDb0cMq<ڪG,Iv$:vt E M 4F~ޔkOL#h$NoH7l*xդC:|gIقI#O*ӎ:́Ti Vqp,ܕ?jWKb@QP2Mxz-^=C{xT(7R)?}+/Ǽ~Z׀8u.ĂQ8&q1ΖVVF'M6)ri$xZVH jE4UQ%R9zFe8b q_~}]5GH`iN=>*t-6.7#2SެA;y L~V^-:_hq#VUtmMYZ7М-"KB)夎9"X%$Kr YBR$x /tѹч: yҵ>^u?vnr3~RnyO5X\1H##.j fpi)L Q#iQ¹Gϧydԑt?` 6'%,FxhӵT)xP(eI42OqSAǧ$Q+Jyq?/^Sw^j&uN S7(^ hj&Gw`T)lK2)pOs+)OCL`rX:.CCQSNIwcmJ}+(+P2)˜)GԚ4rN3MQ<JTA#Lդ A Vw9S\o?lm9<j]I[WdI *V!3G2 *DT]M)qŸgIW( q+#}6;Ńl4s`hxi"8ŭ-D04RJl #-8y^; F@}<MUI>8vo%Dn5lKGZ#h(ɎUv o!ՠ?Mi%ZZy~_ϧ;c劶7?+,2TRe`j=x\43RV0HHʻc6+Thq5Uu4pIJ#VQ~ q?RIq%H>ڏ|XbnZi6SZ7-V t=cT%~$ԼF s,z]ݎ2M44ӯI+(]E+`Ws&(fbW?B=PRR /&?[S+2Zz#\s{+G|֜K"$Sfc"3eFp%n o2n wj ϗm͉U4X!Tc1I'jSDb4\}U{B581Ӓ3#5#&3:A(cE ɤf hh:偫{ Ᵹ55wتkU[K:Ut-6Xi\LJOZmzPt*S8K&3cWc_;:Xc_%<5K9UhēP+;'D`:M#H4gW3cn<n}#/(fUhkY \G>lƔ`=xp:ܸWGP -9u|>JVŠꖞJۙCQQ;襄k'R(f$/pBI&փ>צ亙8Xj$)קDo$L#RMuH'Xo,`R½RNVACi[8: n _W:b>R%^#LkБ;iV#؎?\ңyLˏ ?DP3Q!VtO67`#mn*=Ƕ9&8t6牨?:tۙ8<&:3M3sY\ZP:+IR <+N9Wϧ/mDA ~^\?Mz ѽqƆHM(C-=D챐{HZ}_F q=5lkE72"Un֌-?@gk )GhǫE<@$\驮mG8iA_:_> b`護B!A#ڡrW2ǞN>qε>IO}8߯ƛ30ޛ_Yi#?~Cov*8>I'4*N53_^oEe~DXgaAE;{ie3Xϰ jZTH cyo`oW2[ NG(tbs1[tOC"elp'~|:2;b{MϞЮ9#%,4[7gմqUOUUJT]nI'H|8:)dÖ$ВqϬ}a۲KYmݓMfN_&u|)TB}ѐM*8bhʵ5AJ]1muq N[A\5Q,3ܖ?I,,Lu^ߋpJEܴZWK(%hKP `W?<X7c?Z & \VΞ YZ)֧qQoNʼn$g6r}#eD҃<*|eCJ0 Gr:Z jDgDz)?3XgrE<)%3(Ҭ} zcIy@>T(kbH+yHЀiMLXS8O{Q5 M;'egW%fWv)w=u=siOUOyD),AzSPT;5Es0x% 55 qg=-%i)k1RTQOٔr=D1LH%\n'Ҡk(Xrn O. )8LWLq7xdc nTSEUP8<UqZKH3‘"u0@01lvm&Y8pڴhƵM:MkNZ 墧ꠦQ >۱@>j,nN:ܞI>ٙ%)ֻ/VlEjڲ52U]ŴK{2vn'+02+ v` AZmM>i6߻)>W[r4~P\Pd%@"#c(Z䋭U]DSQӲ, SʾD:Zm([,d;^FF}hjS$X8b)>E%?vm$l>0Ft Qi:W)<3 X0[ Lc_i2ÕROҰ4F*zOuԏ/֜[hbUh5M jMh>}: v-hkqbI+EdfGH5;⒲:zQ0Y#i,v6ѿk9)~^U]4{_"wҮ](_Jzj \]V> Q053d*VHJ*Ly<~}YrT`5- ]-ԗV@i" xٶ5Kηg+Q<،°r۲$͔$Aϱ$R;¯TPbg 񱎵+ h})Ny|8^c'69$l'' a#+}Zb5ȎMڋ(R9U :U;hwn؊)U{UK6JVsnuODG!M8UgJ82i *ԉfpQL8ǯLU}[`ld4' 52ME-LԳS"JYA鸱'گ Afz֠$ПˤZNURR.(ti‚*k9E$Ts65E5;fEmM)fB0_ڡ&޿?,':c9VPӶ.HƽfHZ-jLT Ɛ96 ]e,ϦJRuT(@#Z EZ3մS)C#YVC3̢kqPУMTk2Hٜi)MEΜ:HOJ>FICIȿQ ]*~Uhj drX`csRC+փQHK?ZS. =ǰ*>6Wic#Az*`l~}1YH5S?hGrxsJA|fȫSCٻOi$x|$K[Y<162E-dz$ඤ+'q"bǁD7_u}XcKDd T&4!r zaԮ?[T2LPtzմ$XIof0ABMA2iCi:eJ1'OM(&p p抂*J 2Y*ٳf*xe,ERFQe.AO$.,d0R`4p\~=wܓk ؉5Ow^Tϋ5YH 8ܺE;ک$5%D`x܎~%ս4W$u5@5G [֗9'LT>4S$ƴ=&j&BN؎ӤރL۸<7`RdX)43p2RT>IPy"IJ>ȰXXW˷#'ϗ{cBjtPd#Ӯ?siG3]u~|?QEӊz2V楢yĠhN}K*eZVjJЎ$z|b\H#D $ I?>cU vD[lM %6Igev% EC[]<;$Z1-B"#Y:q\ `>dCgmqi|+H:NĵjjOuNb)Sջ9ޝ7o6ZS<wOq{+3`M غ9icRH F'b8p?4VQOO F)¦E}>o{EA:{۽T0o.cv4;-SUY$Ǩ .(ц|V1LO[$Ӊ$*8*(}O^ ;B3[#tfIݹ aE?'tKOУy[?5vV䖕X@hsA֙E;kbYIxʕ d׎1 +MT´>#lml&mT#To7$SuPbrP26QX"4uE3pkw\!QSp8?>Uoon}ͅǮBtBfTI!Z]N# Wʾ^|%Hm1`( $ŠV$1ԻIQ^[rfwܴƚ#0,mz zܗK$K3Qq:*FoIQ#r{5 \,Y??Eb =Yg@HPsM:Y!yoK'#UE-Ybss5N:Jҷ-mzE 'y8ۄJ#Z֬)_,.\z>Hȱ떜P,W qNkhwm.N l [iDҕ&?m:0dTf:;FA&+0GwD&5++,ivM(Yp$_<oxWBZi4eV (h{A>zuyJ<% E$)AM2nB룣4ko3:0`*;t#5`W iN5"G\-hZB P:r-JTSRI Ğ lUJaqeU 63(umنI`8ĭkZHKtO&dcTP*RRUlF$| TkH&K[k6fAN|NH7$TE*)WaJOzj\QKCMd:ޗ,_w ʊen<[Tf+COH53LDPJ+,Alw:qxcI#ࢴ,l7KWs%AXYr2jK j|ڕiAh91M*hۣmg`N媛)___i#pCZbX5nnbD 2yh-'Wi'mTi_*zIuJժ'魑J4۷wi1V6(%(jVZUZOV&iXʤvPyW5"8kJt N-&(jhN2I^Q179ڃp&):λinͮmN8f .+Sٹwx)WG-n!ƪ:r 9U髩gcMiT  W9zUwGf:ss7Bܛkv07LEع~ߚ mdz3xz|֩ UO%E綴vXd, #8$ZFGZ(žt:)PE*:S`nyeCG3w[.9ޖf[v![./5 V_).'<^[I0F9 u0+L皷c~m)DE1D.@VCY>ul݌YOIY_(Ie7 .  v EOk;4A.MGM#|{^lvkKGdfIlTU.6U\ V) =:m_M z3*JpgG \"4c<x¨)rQ-}SNpla<4F~ܣm)(*8H4]Dc9i;,#A:lUu3٩:9!uIEBp.fƛh$KQǿ< 'D-\oQY+ :kFOS'jLT=wMIQV%j=+Hc0-Ā|ϷHEOE}=Tk=I&hl "{5 <2SEU_4>x>`OY#pQSiM]k1ը15P:wl X{MIz})k OKS6= #8}>1I z9鴳eU5DžL*]4uWo(`N9N͢ X֋s͔=dc:k*3jSE%Zqj<-Dn_A`,bH_Q8kՕh*8HB}z ^я-gwU/QhsQТy*X2J5%/WZ:ee(H4#x+ؔ=.Vb1/ y[+_qSƵIk_Z7iRaq3!Y{eQ7 `A{AP1AN4YMpkL p?=J~,Few?(VK 5+ER&kAsR剐gzuVU׬Fޕ]92?nF>yfwV$Szf8%fk3ůƩ2Bcq7݌EHҼ?קp9SZ}PؖR\67۸Z(\?՞!'H }}g\zH }6G>XܷW݊kqG vq1-Cl-$Xla -A_߄B*xWug׏L[e8vҚlmY6TsʼnJˍv ?} q\m`(b(kǥ_o q oX P]At[ y 8cUT:i>j9FGgOCCL4PSqnYBV}bXf|I %Ĩ|8#zC6;v[PTlߍ9}{`SϵӬw&)K$Z\Ȱ$5=1ZHuF,)55t}CZ,45G}s_vmo͹evcnMG5U߽][,7^ X2|m>F+* FIȨG5Af1ƕM=OVԬ83p\R>^Y){o:M>^vVbF;⣰9  Z<_CMCL*]G+A:ȬW5R|G2~(MsR8ձz1YQ|m?s-G>-w6vaM(JL>8ʔEۢd9:)>_gLKsr Wqΐj S5'_$Y<UiB@6,x'(Q.-Ao 0Ep=~޴MI1!:J }U9SPYvJ,9!3q͐FRjeG Z>{{xJRB٭J ?>sMQhE5+Sx DLU*J钮u, IQ4)@a9IR/{Ƶir0I@נs+yiOR5j%ER4e(L`Y枦&ߋ{yEP+@>St0$qRNI̍Rns7ܘPWl8255rqx0GH)} KZ}6кEE+y<y?oHm.m:m N1w5a4Q>"mRn5 FFWKDu. cmh:UY.U1;R(Rܴ<oD}Gt/Id i`v#.ǧOTEP~}Ժp#<}z;!Z֕fQQPj=oAƍU!Nt`Ԋ`/pGiE҃:'Pג/WN0Ȕ# PMWAphۋ@{4ɓ!F?7]TjLk+mBIE~$f ji@~uYa&A%% "bzd~V7ozOmvҵc;0 V"O jڨuW1S/ Ƈou7e*n5 {qjÅ8Ӧ‰tQ#ӏq6]y!ViߝN﹉=J3ҶUա^}dGyuKvl(A H3SX*?=z+R tې{ۭ$JyUpk@ΊZZ)'X!`u<>|G]썹iVojomKK?"rU}(NcYCv} ?+^:WnKKr${R~ڿH6g S($+|Ǧj{ٔlO=3o[6?m@jci|=JN2רӷ`VÇC.U77Iu<֗K =7UkDޔ?>:GPLT,x&~{07oxWP i<%oSL^~]#MFɳ6B(Q X6GNIVYY}ȰMu:JnN TnZ]-{j#RC:jFhH# R'ˬm}3ݫSJplM$.GSMxg c g++Zq8W?suuG`n*s?<>ΤrW)RtqQUAMC%ǟ|N@(TA |L~d祲|b1UmXRh9Z!OTmq L>,vӼngޛvf 0Sqb Hv8ҁs10F4)5 }O‚z#gb9^?ԁHD=NsǢycv A?1Ƙ}8Pre+^ቊO{T#:XA5Ahzcҁ䦌}5[vk3 "ۑ suQAI&?񙶦"GVQML?$_݀T`0?>$ƺ?7d+zTE}-Հ]xQpWε&X;z$XqCĚg7БB8(|:"rX4G${OuAI5HCCÇ?.hЖr,E ~^}+y<%nT}OlXp~c?VkʇbRn@kP+זqq?e=u4HUif;/k#_ZMIsRA_n=N2ųAƜ8{JɊD$Wb82FO(NWҪ?.RQ 4u }NGԳ3gRC\ (>ӧ54ې2ڸi21j$8 |J_ͼ,^eYt>r*xU2aOx&jޞzfjGO1d8zGž58mY_#TEZl HO)äR*JG S4>JΜmo>_{sC)Z?[yd#ZcI'<=\)g8k 7=FՊq>] iU|yӏR,J۷{jӧOnե:|xz\u?ᵏͯߧq~ϕ|v]4ZֵֿiÚ?~O}߬~uUi˭VU:枔/ѫ-Wi=?Sy~}n_ Ʈ*zGEmsP6)2<-F5+ÆxS:qAc-m>h {yuTSTOυEO+ҹ1ån?KwҺt=W޳Ӎ/˯/PpӤ?=_.=g}o_>U_MƹP?JuDO Vk'wy[GM[FK_z1E>uIZx>󶿫M~?g_C)Z\u_?OZ?ji)N/t鶣=Wע{niA~UټM&>\t^NJK[W]?n|۫_:zs:{iPzVUIx>כ#N^9*kLi?Xj~oEuC4>\iԣ z꽽7{tM:H+t>OGckx5j=xGѯĵxRq_:׫j>N?M8֟^CVo ER?L[Wz¡ ^|:\c