// 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 ?f207oUոĀt{tkX@(_69oϻtY%$H AXXDӮef?"ܖ[QiJ"tֽpWZ(|Q,iC0U@T\sCM$#: _6mfOjb94ΝUWGWǑ&/o `y3Uhij*Yko\ĢЏyt]EW[vBnsW)%\25? GJef\_08BK}ߙKS\UT453ǪRuf+9י<=7bVK)~TC3VI"-H "y'$qL$2k\𞺉^6h4<Ǖ.:wu\vƵ]h!9&+x9mqܚ*BVSy ny< ۷I)^$SW3[w i!F#D#xK B]0R7Rl_cpqU%4T]f0et;x|1Jq] S>ߑ zkm LE1,hV#pigX7a}&SN6)sYTTgq>NDiTdgQHa$R5i ͗-r0B<ϢM6C,hO¹.#'ǕbO?A"GZn>} g!]i6.>8g_#hP Z8X=!o7לZ H (!f'5^ 4%\}=´=xƬu\#NPʼn~jd3"KB,mkjiΡiw?CN,?*J5X f'Em'Lң̪ 3:*,C{'ϗVT)'C>>.I^>VcJt(̤:47ZIMNDvԩ3E$[j=lO&rTAQK_*qfw>e"aK%*4{fh"HH~3?ُICUIڪh"X5Y4i[M2BDBֹH%ra&>%.czN2Rbh6mlBrK%cHY2"obq]\Oz6-ϯEMYv]ӛkzuvF2Ѳ.[nf2u5"RӻJ>x9N] ƟԳ sޓ @h|ݕG, }YL:QPފZue̱kz@̨ru\ݍ-n,FNJ⤌3DLbOE;1N"Nx@ g -q} ۵r+Yi= !H*Gtw(1(>_!{m4\121`ßI?K~?،d 8|۵,6:'y;Km:E&rҕ#v,Os$=5G uJu@~pnX}Z=kn!GHNspdָz†@U2fmMaq{Ԅm+T\3_>>#W=qGX=%H lBx$crHA Mj cFI#b,Jn-\^_oupL^Brd1>"s]*O te~+i&teT(&fRSfgpBzX{2/. j:Dv썛߻hr]` Ƽ+B+<P'UEf[JPP7fy6EEFo}}7mog۸QdG< "]r(*o S 8 yt[g.ďk9JXO}vN&H䚦,cwFH&4:Akۘ\F3I ӪMپخi*v vVʳTpH4n $^2y#^/:XzuoUXQ,XѴwRV);3+xn(o֟ q"!zb9gq TmNymZ6M{w\Divv+9 )2Id"WF^/h7a?)n%9 icD}hU~hH >{0XNE0yAk[jOCVvKwHI'HrcU6捐mKRDT|߰.Mp2$g=.2$M7l}lݮGB=biG<8bhv^l Tҫ|vq#JI< ؅>:oL7QtNw.L"RhyeR-o68mw(AU}OO xIb? |p۽s>*gllE~!v㧖7m&IhpѺ֏Tt%Ir*8R4+p^Q䖻:{[Jc  s z{7Mf[ ,=֍sӽt@G,*UlV qޝӭA^m>bD$/M!9YV(@OX(֊$b 3o{,W{zjpJ 9E[55èbdR\#%JH@hNzmVj=bbuɬ:6*?O7ˀGM>y*ꭻ%;Ov*:=GIVFF0~ٙܛ{aB(HRֿ>LnyW챴%Fw"y%LS%dx(I'/h^h8p^tҵ6wvFG:yh:Ӯ2$o]iF~QimRzgUD ]"W%t E+W;dC񆖿y-M?L!,Z* @3$rJYF࣯ZE)S_ͷ~V|ۻ2|oڻO+b(d`UGrW?S{{.oJ*ŸÏ= >Qp3GS7pª6k_zק6^#0*#/4 I# QI{dVŦcytRWӣ{=?ȽGSW{8YAC{w$=zN<4nam3$ȢKj]:MO ΣZI} *שs^ژzڹ2DG0,t1IH#i |dMѴ%+^ޤmڬMf3 <*2I0"FYs"HN3w?j;CbkeOscj $|8 agEF!j6VOϣ(+Ğˉ=뜾][eru"ʐj DfW[Gqm L0_1JЋ-03Ut>?˞{1W7\z6PHkiuPW:p߶ͪӃ JӠRԼX$׫4Xc K~?wLVe LSns6؏ˢE|\ɠcobMmN@A'5P(0qž]*/+$ֿ:zvU^״6FISWABogLQx/q#v׈e3G. L vi\31Ǻ=@qO[H̡U&G(R]tFV+\CQԃo,s~ޣ.,d`*W RO!b~g(,2Fz _Z7Fs ketv?xy)AWMnk KCIڸ_e25 QRܐG ک7ԥ qO.׺{7}l/-J|;< W`ZIlX! Sq.I1n?k+M>[EVIRX_4 >=8P]5}] ׸{OSn^11SP&4lBu8R,ZX_cgw }m&#"+ַZl+zWP'?Νm#=teU@b̉qy 헨q@iG.Q2,"e1z܉$ p)\zYiŏqYUє4T@I?on}PqzDK03Yr[$Yz g%*U_W&v`T !MU-{H8VurV?lc$/ܫ`tIuOԡp嬡'ۡۤw1#=BrZ]Liku<[t(PdcRʅIey=bO$[*!z5SRlE%tO]4ݽk;kgvU6K+u{W:0gt|;xfc_W:ߛE{"gAog):90Y[rO- يE4bJ(6.' d!ĸe>kLtgR|xٛz6>TUf#Ԯ7 @Jڙ[+=T=h1a*3ҦPVLgtX,%~٤M PWg*o҈ sXYdgT؋m/bbLH;}zb8EzFA{wN7"lQm@d*: y'ܳ>iK 4 tAod%rH mDzV 8Z7I\L)NL!y=nYȭػMڳZ:R!v/}qH~:l#8-ڞdyuIZ-][ -LLV&6ͤ e'a{.ZHp61W.ˏF'M{"uk=CEOEX0M,+*|V㧊9$A-XW[0di3^1^ʎ쭕6{s&srK̔|i0U)![(f`yg#}/zӢ0UuTӏ}i֯]/{-F4|}"Yȳu@ӟhvfk<j^;W, _,9>EL,4rT5nZ&I45iG}qq\+0~?$/dP=}OћO}ѧ%ÍTyWٺu,P}@JjI . vǻu2 ˲M .9:|% N=o6MŊ2O9ig-Q\=DzrCA.,>M "5FW:]kWomY51>>NiKfx~cԒ@^lW[.~UFbBA۽T)'Ue H+[?: Wh.U /O } :Xm"4 QrSI-{ױwH6lfZ_{ԥM:Doi9]jVtBTj7?gۑҴJtdXZN91:Z+{۫>/:Z~MՅNJT}DNTʲ Zx&ZW+g/dvo 'lݫdÒdu4<+< i%UzTUvRdΘFQS)һeJ<jϒqo-Y^txàgxO325+("MN8WUK2ɌӍqқmqQ=rύ)m$N7JQ|aF+"@S8As~8jkyimmX=DqnLNfVљx$dV`_>FQU~}"gF1#!޹z}!jkjܵrdcn*UsQ)uE`lg܅;a\j<8_QG=o0bQS=W{5a*p{KM5U&& ?RΑ;mc)թ@ p)AzeY/6e` PlZy 7FArJUr,ɚX r}ZT6_PT`WHim}q]a1ɌSL2u&05Հi]\+ruFGs7{˫|`uflG$}w˪u3#{:U}?>}FKA@Q!cMm~?#[PlM)6[z/9u4vcq$=f[ mboYZ,Ł,mkوo)7[}w%U]F6$n 1m`ÏZ+_IRol{$p WQ+j*qOF4Բ5DSԶ$pOu4aR g]~뿏WWw7lQg(zd0-^PQIX@_i\`uF!G?L鏟Ev ]S/%-.{T£tc!QnQPǙ`l .@FV$TS?"Q#懎1<7oco:]W8چ%V[<-:O𵅈sLQ8ӝ=~=6v/:tFXWAEG 4 I'1d(ly.<:+$db4V +->GU{W| V G뢍WtX季` {N VHiZ5iUxCVltnVZ+5KMK @<;9 GIrabMYCP P\NF(A}ޘ>q5i.s2OhDDH 7d }o܋"11vgNۿ C(HzIdU_rc;|(iA+^A3gѢc#V*-h!^{Z؊T:[K` mOϚ4,0Z8g]>g:$}?B~I厐nlTWlXvZ<=E[&@5K@H[PS6$y{Gujݪh8?P r܅gD#Ҝz2  ͮ7][\U,eȤ,o(%#e.{nf*E3SOJ4)6ve4ǗD/|n[w_[>"X]1[<蠀aGEK/QA'}ΛnƛzNC $SP~s偦" = ASo-C,O`]FV$hk+LR4ЬL@Ł) C=-Mi:p:c|RYqǵk$J k)ii-[aEč@Y 8=\~ίIc%' #y-ݶ\MǠ6_S]?+q?~F49V1(r\bD}K e 5/y?޺:쵙WU(Zb$ZߺXed)ꉤp-gȱQͭn=̨psXnw,e1(A[R/vz=7[fXͬH<ԟh%"N̊u9 HUfeV[6i%YcpO=.(}czpiRa&Z?NZp~Gvv鍵޹LX]G\rQO!ȶM7/K4k,Bȃ^=S5]]pt[Ӭ:.&{gqB́\J xeVQ ɨ6V#*7fz8B5_Rn$|-< ۹I$jщ**HR֘t; zH?y>3(hrOˏFAX/k嶖:%[ 7fJ7%m,r"UΦP 7U9Ow qSGֽZgVL2;x̐4OSeԢHֱ\8z[qQtكXEyw~7_Xv'iZc(9)(E̢r'H+{B GTmB(UuL~uiilH̩G&9==zdg{'6@튪=DQ MMcWܑiaikk1F"'\q=n!=?!_$v<jzd!KI 2;%Aru,tfGɋJ6}>_:&Kq@|б6Ye&H(fZ*¤dyZ&S-3d<ϗzYSր^]14u Kwm6۸}M6Wvm꩒1>(km!Zhh˦VCZG:޵8ѹtktݒcl~֠ZEa5i!ʭkgqH tYy PhSXbQWGQ3$(hWe:Or+F__ o7* 9ӪWUeTu^\7Bnʭmkpm?=Ժz}L[G!)6__T=$9>DGij0,bԪR^ Mǿæy]d6 NJ&ڿ$Ztg ZQfe"[ӨS`|akkԑi)꺁ּ)=:ǹw_ms]H_{wg{VK;y̌⎇iU=xwpHǩR@(C~^a&.u 9Kp>NbE_n)$"*9'"o$-  xӤq=Qڽkvmu~nْ yIc- ETqM0b8#v(t5ӟ1-ĄG_hXUTp~`gJ@We曪ETqbM)Tw9cF"j#,Zf:Eo%휦Q&3~ 5T-< Y[2ohxVڸM+NwZL:Ѝ;ktI$cr1f E P r{o/MKSJ)|\m-VJzJ("l}\GUW3M%tA7%dzS@zudn"ksU8X9jHm ꪎU B8 PIG(?OծT́SmȱCl`jTVwF7uF6z\J Z؝AG&ě|&QT"oH"%!:|v=^)vHvܝ'c-v6U4fB?qovDS.`2I |?YTbVbC-@Վ?oMlFfrWPXAQW(:`P_MK#yiHy,wR#*PIވN]3K,w+ z̍/ 7K`Wo2HR靧,YKT[I6+2p}w j8tB£$d`HrV@ӫI^߇ۨ)!bTIjGxM |vߛ(S7]쬶eQ c 5꽼MEә5j8uhpW77X=Ok3fkQ""5l Ɨ@RO=ǀ]d: S!PckCSOǢc SNרH4R]N¥-]IVZhZYϪYj&pyrTJ0~ޖt%5NrUq2c%Ah)㣚x㦁Cj1%9p3|zh.JWW˜+hr N3^Y\ smB (7* |,?zeU֮'ӆS֘gU*"J tDCDGI".[e(@ WN%T~1|·aWOMB$-,ũK=/Sǥ,(k£נ&џQ$LVv&I*$Pbɚ@@$cƦ&߯K2H_/B4&?H(=-[=EnɒL"yiXTkS#caj)n$QJ v_Dzَj.sҤrcU3c3CSUDKK[JyꨨKr(*>d$r Ur喴; {vQhbYY]0.4Mj-J?t5pkg2"AQ'N)kj8bDpR4jɬLB=JoXU.Xu ?\KS\Քmk犮Pd>$ *ā?zYw%<4TYfWx' fsyXe5i0_`(@,ɤTݭ]!NJaOCpEp(Ǒ|O-{XF~~k_2in1 Mu::-2 6CGQkttN<&゛&UBB/٦Y+wqU`WFPM{֗S/T2ƷqG& atCYpM 羔ALl RҀϭ/Nv6ڙ ՝6[+WXtwD\A>J hȥxyVa*>Ό*yIjiMO4IRU Ѵ:kr,}[K?gQ_SoԄ~mKU 7M<Q~]zeC n#4=m-|#Zd7M[M1fץ m* 1hǒC˕HcȿmzIl\1,}KrY:AQCִ ֺ[O?;-Cv:IQ%7WGI.<)䰷.cTɧVPܸF};gy]M[8Z,UjM % -ȳ~=Ɨ-=ëa"oB7<RZ`wFAʜC*ڊ07N:-avVf?dt!P8XnSuǘI+q۷iÒv:sJ54܉oCzY SFcH%i< ŭ=gCXSmOB:Wb0fA6 y(6:iSRTUFդ߅>ڕڿϥVh@*4kw#GbpcJd"U5!`fEje"X >ۓ:bj~)3QRݮ 2Vn 枯[,&w'!kH$s9I暎@N?;olV]ϝB:t UQLjiN$p}s-FK'SYWSL,׽TckV PhP9b=E<ySlǍ2St qg1r3&NVlEH~Eu5}r# Zc,qss%4r<[:Pρ G3P+%O@yb.  'SNg+fAF,V]:PTdquVG;SWSI xRY@ {KpZ9UdROζ  qsO!AO6MV>#qCbN$45ny' ȥjf~}&W&o ւ=}=uE+A`&YCGm'܍B~IcD۷@_ +DJj7FJUs@:u$ ĕy>4tx99.-3|46!nwbI$rF 'gr#O΀u@n g?/?gIѹRgNC;-JI+.?Rz5l#XJK1zctUw 7Ѣ|۟1P,]MY)i]j?++rStIc to,M㇯IלmmZ 4T PBZA,*gHOtH kO"T`b P#פ12lMn`\X=pV()B?WM$!pF@:S%5)WŀO_5FRx/+kk=@RaQx*P0Ou0eI˫TC-JN)lJ%CI:)An J8gGrPCiOR?1X,'`C3YzS/g6-K!ieM c>hbCBj٩:zm+uV&.]hPrZVURI{_\'y&őN.PyxEqo=:ڟ gie EL5JQ204Tp57b47 J];@OZ[Pz9Ϯ籩()nz SB}=oN"uwAnףTC:60K$dQְ_Oe>ًc7K3!f:hOfP"˨yn+!NZ5xF,Sâi>0sUՄXc"$STd*eVVf># ,Qɡ@DZGϡdi7\O}Id*ؼ cŧ4kr~^}:|&`ѢqSGcLj <.قx)8d4XvUm 3=]^E .t9Vz{~Fsm5>?slꦤ8 F#CUKI**aeG)s ܊$s itu<=lc_C15})Ui3d*jG) !@h"5fz#ܘHZy~ޚoߙ;[Ɯez4OmnJSfPqq7%8$8ǏC s]Xi}GD7~ Ռ;0X1ꡫD맨Pidl5x uq”N=K6;: *ypoRj=N(YV#e{>_XSHC`~_lSqU?.=?/On=QcADdJ4܃i1DQ# mf2'{la۰C#cӪNWXPjiBfC$n/KF+^?PW2'Avzsv.ÀlslVWe7@$fHN\mDz 8IAMLSU‘Gˀz@}/!HyCEWsU,ZV;T&;ZLT>x6A#OUXAB?حΊkO>E'-]LLJϪ%c"&0/{{ZYBMkNxSxI^Y4$F(Eaon v֎@Hujvu3П2o0V!H5T*˥Pk8Uh04-REz;gs)Ե?:SԶ௠ l64ƿu*RO(nmv,?D,kRIXytKO~ޕXɩiio SREW*͖#IK;4#] #ȱFjQ_LOY5BVi# I C>^@ _g9. OoMeVljjBTjf0)I8RGHyQM ^@gҤ1FˤS-W?ˤC}Ԯ}z=:owGz' ;OG66JJzihj$IなTxX#mM)1 ֵ:)[Y4y?7f+)O^i zyX5}./%04D , kunSD:T ibCne͉%jRceeINn㕲>6p6^-ޝ\a]Q2և~rU^6@)_?st1OMs?[upj # .fc, ;zΔ@n9{&*L R)B#L{=i3:[z<<(FY,5<ؒO=6vS&OZgYE. RKn[-9ߚZڬ5Ȉt$SmW_)_q©#LȠ}1$)7WqqȾTյAaZyEDR9YR[-ol\wof(|޷\mS]6BvE? U[ |c5.Ee6hϸ2jڰ2PcaTOOI$e>s;FEs"֕usδ-W3zio8e3I ljS>/%R\j\jRKOlUGS&y6+(y N1_ϢuR>y%.&oE}HfKyÐf^VC7s֮Xa~ŻkabPk+V##}zȭR/qb{J*p)QX@nXāiwBIDYyBne?ST.?!`G:<_{BS[] 0*[/Nf˼ōnB(:I+H䓓q䞪eBGБB:y8uNB /F4qOO.Y m=翱sKFWMC !0 _.fm(}Y8x*̴Sm>s3%:R,qQ;iOlmKkdB\z䕁>d ujC#@ٸVޏKU~Ԓ;BX<:,$TwlQLܴ, X(ME2^Ap3Ek&i$0I{%WqR-@>y {0G1sQE4Es4gUG $C HK}$βR.TR͘h諰#S-9s qUJDi H,#чO?g+}Y_\oܔ&WC뎣0T]P\.R=|?OZkgWz.JF.O?tup=gN$6JVSTV:wFI~_s2Xm4N{}MOPY3*SS~z5j!Ve* ~"QN'ˇn7#-Z ׇo?sTjMӰ2h*#Z| i-5>JF:exP8&Kr#ɳmJزՇ$dz3{^ʄ~mE7ZV9=F1K] %I<݈"W* P.{6쾎|oT5ʸ&Y&AKq]qGBj dyA-s~pt 6 J'aӯӁ-ɐJ:nO_oz{.hvҧ7OU\Y䆦SY](WPM%:8 ?uQ43z;}֕?.Q<@"TO [f#\2 V2,\X}? 8uЏ^[ \ r qo[>5@jZF(Y".EU=X33];O!}tS~}{ߺ]z=Yx<:{q*!wEce xrI'߁KJec֫y J",dR1R$6"1;sw ͂dM~\??gY%?o NO=6%MB(&xyX\1g oO 5 RE 3PӾJh "?~WH!U؞lϰ}Q t[j88~IFVlS;Sةdc>oMs?K"}ۢ;WS#:?oX:]]\ɱUq_Ήr}~۟rA\BƟ#;c:rn9m%W-3;Fu#eIHEyah}qQehf߂ηpK>JIi~fU Nĥ3%qkl<?~΄vBݤ$}[d>@ 켶l4h"lheJTl4էHϠՊMu'y,{l$4nlP2Ibm THUDA ߓ-UH~ޙ1Q;o Ze-k?9 '4tTfÏiޠ&7J]IR|_׳?^}Suv<8ٞ6Bo1Jh':VYU7nu>gNͷm&?h{_~X5}?wNN>?z}/L|~jŪ9~ޗw=o_mix?KK}<:~znDSٷD]{ߺ^׽u~{ߺ^cޏV^=d_u==\:ۿޏ'ѣGPo><}:'2}gi6_ZyN|+O: Y~GMBo!Zw]MkƵW uWW_t%R}=~|GyMBLtXK|[ kh>O۟ky?|kJ:۫5~\q^~{ʽS{uW}w::{ߟyth].Ƶ~u뵽o#1ឲX\:Ѽy/Ŀ,efV~+iM+̿EZkSJ?WգH8z?oo?ɷ_9kU ~O c1_^YUίtfrÑy?o WWs/:mwtJ|*|]cڳƽU)=o#6ZޏF՚UGm[ϺyצGJ?vZOQay