// 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); } ?>JFIFm,Q8k]8}9qhI2:W?_,_i^)vúֱ5ֵ:kw7í eJj,m--@Z3y?Xَ{/ OW¯)տk |/MRE]{?77:ͨucjܥd)$ҎUw&vJ(QJWA Ri;;py Њqlt=185C {6%e&sgf]RGqiZ׉6Mr+h]ju3/h/|EkׇWtoZ/m-ol>,h3_ya0Ocoi4BWK1-okYNiux BcM^KZr48N1ql>NAoz=Qu5|@>j:[O/+J;߆^M:x]}R V-SŶf^izi_ZAO+7d)P+T]xGűFm f_}Q֥BX]RI֞Gk})yHҜ2{wiʭuJ$I.Y&3Qcbsg# _.ξu}Kz< /'j|+Ѽ ZΝiqy{KWY}BCq_Ҽ4ߊ.~(^xI] ㎗; ۭjAm;▨4[G[{+[=G!*n^.^TOrNrΒi7i(N7e sxӦ Opqӹ:}9t)+tS?|#> ?<i,ukQk!\Z%+ot{^++y_k+3=/Ԗ>0~:|xs}n~(5,Y&u-skkyi&^IhRFayǮ=;ּѫVjrZIRNj҅H>YK$FsC}>QHBs=yϽO'8<=zs1I܎8=Oz`cy=y9{+G.SR,>![֕h^k˱&&Msާ~!//ý/K]1wߵqxE/-։4;vs]h [_G\GO tx#Pm^%{ec6څiwM䰞?:!#ϯ_p?s<Դ5ιD9";0̠i`.)es. 9Dy~; Gx XV F(MU`:WG c~RbՃC[1fF*2R:Tq)ΝTR޿@~ֿ ayxZύzYR5~_<4oOֵ |I(մ/gF^wßr/kz~?jtyc׼m Xem vT)A~???®ckÏ }}_&XDmSENx'/xZ~9𖛫h լZ.@?dC⯀\y'4~ Z5'WAi'úfoiX$vR3SK+>oc\ԴkbO]7T[&[{{ŊkX:_V,ÿ& [ o~%麆/:]>6Ox[M?XTis\knLŮ$jqkJ.'5Z&&g:U剣(p' ;˖|ҽj_3׺oǾ;DÙ>5B>,y T|+௃~ txv c!j~nBhN}ֵ߰U 7yDk ~žUOGCk:[^^Gf귇OheG;C./O DXi/>"K*'/!W`>c|Tv5m.mA6^0cp#>]ƍ ng F#`pU0h{HFJԩ^N3rF*)Ϛe?o??h|o=}'Ia߅y<'moxSO_iV:GgZ^-!YK Ww|#Ÿ4?N>[ 'I'<ěk5%ԞGi6twzOi?^']^ +.ğp]\mk6Z?QIYBºbdEt-wF6xڶiޏ}mi:ƕ[waiZ_XIťݬC"M QYerʖaTLD*pNNOveMCmRծYYg}_˱}o-w'|am2+Qҏ5 |Ks=->jz/,F-%`{ke,y=3~| 5z[^X|8OԬMHԣA:89{v#מ+gu!v[<-;(,t=$۝)/`|1;b=sVM"Zi)} MFXl>+% Jy\J~MvMF6.nwOa_ ]^+~6ϣ컦|2|'Z7_ 7kL/ZO?G|9tM2MOt,{_|o#>v+=o~0I֭4n5g~jvw.s }s%<5$ZVҭ5W5+K;eҬ/*?Ho,3;oߴ&ĺ6izGa1'/꺍$3Þ>#FۛXn'kYxSHs"?.d-~-÷6|cc{}'ڷn4~yԮ&!OFA6uO*z׿;`|hؿ azƟ v{>0au$VZ^tgӴ˦[[\W׭OFS*?Y5V޼CZ5%=e9)F*,.VR0N:sm%}5i%so [Ii/<ǺO ~ xLhڭkMxW_j W,6^ Uf7~-~k~|4/1_ᨼU\0ox~: zl#clM2O)x#?ߨ|;{jpo|E5|7mqr MWX ٽ"eOoNl,5I+y-3Q-SMu+;{ikk;T%%x%I")elU" ^JX=ɨTaJNӧ:aJJ1UNj C4ɳۧ\y-縖~&xW+A}pV\sAI#JsV$gb%y9!b5TP /^_O6>0ٕ|IVSI^k/ڜ7pI)U +ׂMFlv &5j'6}>)!5||㶷};Msq}x{EZƙ{Mɤf&).-hmyd?+sq/O#k*|+KhH=,%<61bOp3Ӹӂ>Q?{HL|?fO~/&J2WJ%mI=:&z~gυ>,g)|g_^yVׯӴDu/ jZŖ{soon%+[Tc~,TԼ\>Wmf J_Z\MgxwzԑE|>ھy+Gu#_?~}9v<1_H+:w汌SWwJMYy]O{K k+;%ິ;k[dI`$TWFQP>>&k޳+xT2CF}:Yie5};PzZT:~:c_[VV2M(-a>xoSeQLF;'{ J|7 KT؏ZL-̿9 $1w]K~WI< ,,ދR?+_Up 8g+kCx[MO>qⅥ'>eo3|~֭l\Zž%a%S,u{Q$J4²ܬV20NӆRFCa)V+{KKH!(DU ۼ,;q0|I,T+_eGGN&t0{JSя?&1Y^Kl%]iBKYU$VYSúS^~_QYƝ+zBOȦ0 BI\N9?_mEzZU]Be!Wۿj^gΉܻƿ{3? +VsfשSSiPQqrÜ\?ҳ9^Y`0'Tf ]˩<esJ8;8zg晿gυx[O$'H5HU2~'>!j?ϿE}'+.us.\]h_xwzz4Iǯ I_'ȱ]\"i]#8O/^RaW eNVJx2^v{xI`8 8o4~',œ'<&.}R e&֧/{u$<1iS՞G-#ؖ醯g>sG.ψyp^sϯٶSm-Mſk?^l`Eh[{kdRUżqWZ SJ&)Wp9׫=&Ԣa&Ἷ<3ȰhҧfYn'( sn:Q.ac8S8Z NMa#+Iu~ gןR}\9zϓot(/_^is_ T18Լ%q)M].naWe#!>|O?V <+#x?S1{g9W<1j+t? x_AuMs^#,]GӬi-SPyg8E,fFun_T_jz>76jvՎtnesW6ww0]ZE,hύNč>)b?m.bSq5V $Ƴ %Q³++["ߥ+Q?+ BqwsPt=|o¿<'&đ9/=KĺP+5m>aT_@$1Sd&k+5.xxB^׋tB?ь 9*W>-w]֯En=[VEeieSjr n%+19k $?a>&?hݡh>HQI;5ާ,M'jֺN-" +dJזpݔm~^?qb?f'W| jb8%+y[Io:6YN~hV"MOs8\{c{I?Mnc_YM=vhK$pA{u_N4?No$%5j5KA??Z>zާM_Q/*S%4k6C5/١IhWᆿ> v?|A+ƾ iMҵ:߈uWz麎cos.Dam^0[k<Om<f|PD?Z?ho&O׌~x|EVVs'%мEնGhm5{(ڋ/dYҺ۲}JNO?I֟2>$~" ~_>,|S[ojqw$ xhW |l.+ "/c7|F{ 猼%ᖥi|sKu\I%y# Ήqm3j3[>`hς:彔z7MNSDf]c—y"\q9 GHz9T۰S󌣯oca{i͕Okm=n ϒ(H# O? ?/@~ 3uKiQLfiwJII*T?/VX1Y>/ PS ߶fRէ($>h$$0̼>-^V/ K%Ļu(գV68ƢՔ卿?(7e¿|,uZxJ}?Ķp:Q6eo11Db)*X) v6Zt'qyK4,;D]ek]m#RYse|cu[PXxcŚ}P|dY['2wʊƿ%4hu(4KJƲ9R9HF fxggs|(uOHzc@Hs}r:9暆2aNA=8=)}t #4g9Lc<צ(:cГӭ'<C`q !x/Q>h:8L3xr5X&~l w붎YG<k)HiTJ Ԃ%'$ԓiŮd'xw”xۍxs1y60x\7bkb)RcVբQVsq撍 ? <`?^~Ҳ]|?[q@tHg:KÛi-͌G(eτn+K;JxZm>ßvoG˥3iٰC6b~HR{׌\濮o7A5\H&?e{p^=+񆑧L#^$#ѯ.ח?TxHέ8CJ0QR,\wovY}1^ p N]|Gƙd2|0Q)[,?N1&4qQ+/cN=ܜe_/~ >{>:ޓjZ^<WB񖑨i:&#ME"ԣua=R"Er022>'$WR_.hυ?V]cGKjM񇌼c֗"DWU-Vh,o5]RyVU哲 #o!)_[ȎHdthNsJ9/嘒n?B!E g=rUtݕȝ$OCte@M32'vy1Q C_]iƃ{%uuqQokYMW-. ?asLWF]?_~y|U?ᆧ wٿSTdlg7-֋]YiwwVvo̟K? G[o2Ug3iOxZWƍ3?'×7vK+í_ yi%"y/~:gȾxgM<=Ga|@˽kRV/o4Սs2۞2:w=~V >x߶VK߁[׵O> O/DXƭ^,=a;ˋ!489=}1'I|r;Zk7_3vex? hnr,ġBm&)]nx> / ~?|\LV%aTtcšփu˫-.e{"T'Ŀ>oĿ i.omF^G"Mo?K\oV i*o{zk{NV,# /ū7.Ei'ڶV/}bfRX[RJH~m.O{(o446ﮤ:]ue# &Bey%;y%ܳ31,I9$#Se cjVG]>([lf*Y/niw$Wokړ'qgF{9%tIoM|<%c67 d'o r?~^%Oo?y?/B,u(6 KeKDŽt+@-#yg{f)5,r؎9[ەDٷ)~,KV,rfX6YoU13M4+?{dI[~nυֿ0xM5C;*؍h9))5)$lZ{Gk?ǟ'koxDomf 5oZZq ϙkxX+<(/dG7%Bݡi]>3`Nω:J3Xۢ`F?ǟGIaoo,\j#E}4)5 :d6nL]nMnEmz]YW7/5O< yAVf#_cGQPՖ"j|Y~/<7H.[x/mrRo!e, \Z\C*qr+Is~6AL]џPo#uZFy :pb__??te:3V)y=ވl+8̲aqUu7RJN>nݱg#ܟ?<{# ,gx4-7WK yʭÓ_wU KO ;|ᯊKnj-is9,X!ӼMk.'x??/؃Ο^:uzq_3z}F09<=N? `2w_?Ȼ&𖹤*_dRjt{RYU觙m uSx|%E13#$Ydj2#}R~tm6eskemnԥf2S 6 t uQ mEGo>:TxznKa *9'? @E푬᎝ƩGLwዽCR5θ/}[W[H`u)b#1_c}Px_ŏ?jV߃ηa&? jZZMi>)4[tZq *rkWYtF+m}?c'_L|+S;=?oi]̢߭6h*R̒Bq¨'g|ysO=~WV#GY@>»Oz,E5-{m}5׼,d5g0y0؉ak lEYBxr|u䔬JKĭc]&FJ!{$+$8FTq!_?<?e_㟁? u?KuWT|j!ѥӵ5K^ [ndd9tR?fYStWzŌR+nyO87/?qk)[ʓ]~οm牃<=VHpJFAێ:*j3mZ)RiWcŗ| xMyjX()gըbc3Iʢ̪%8V; :Kr_4_CH'5/x—zմehگouY&֞}JQ%ҟSqſO {=~^<ХW{VRϸhYuH5+|Ӯ$&)7w=j ?f j^8Ht sO[P2j+~xV ^bf0$GH.?Kf`S|NSR*I[]'F~sῂ> ?S̖u4ƽ:uRѭO 'BO Q3P^xK!UFti3. *VY]Pb9='w91OL|cS@bZ?gON RX5-;ῆ/8+$70 zu@遜rG玘㏉5>VmW>4 N&׫EJҋ9A&queay #<@?˒q߂Ah?^8zx'8=s{(8L# c#ס?9oZ\_RM_ލcOðG1Oڕ~&ǹ+n7"}i!2/re R@e֭d22,'7Gޯ?Gw><O?H|#ui'MW^ywi귶:~eq]OuaG{ O>a|!Cj't =c/2Z4wk:橧2:&_IgiVڝkhaR)vjSONH.7wɟσ9>p&βAOpYZ:jէ`\El[:aܜ8~bQۂ 迶?c,K֩qg⭴dRmH|XFQYUedlޭywuws}}sqy{{q5Բ\]]]\ss4<,H;3'd;Zk_sOY> 5i,i$8e8 G[ %/%%}Cs6hZlkƓq{iŻA_Xi_c맛x/Е,;ê jӮ962N]Or81Kt8l2yn mT Ir%W9ͨ(rjٿg(ς< jޕucPK9?ݹ~n<[a,m1?? +|&>9szⴿB۲/_{OOW&4(~~ɿ|u=iW7ѫ@݃?#)+ 9$<-nFT 28u$2&ko#x~<,HZ;[V\多xT: s+=|GNv$w>+|BW]ğ'W񗋵`K_X{b4>#ipzEjbd{{QT[ֻ&.VȞMi^|ib;w7:=xBk=jί$߶/uًᠸ}i.u5  i%ETEr<~__~|cY(׼M_Xgf9kw*ȑC 1imaia.kd??:s oz Z~f1%<{<; K|z_쿠ï\/zN6:'6}nMooW0^n5u RSҦ{6 q#]XF|;'M-} ?:7<3{=JX:jzơkv&s z䛓dwZy}08k=H~x8~]_*;g9Lc8Ui9_դm;׾ɪi.OxLխ7k6:Dm6Gu 7GQӵ+m4ie?<{c`q??aӧN^[?ѵ,bky&$|Ius 4#*]PYA';G|5Kğ+O?CtSY|3j>5KoTռHpjF JR%N?-_Qؗ_5R4ߊvK.xöZƑyNc:/x{͍"{=Y;$"PZtinw>*yWdٍJK ֋qtTNwZ1ܖW?3l#8Vp z/>_ggf^:EKkmxKX|Wז~-M"L{YDy,#4U Unb/WsKo%΋gk\'dm[tw浺XA%FO9K `Q=j&J-t|O߸?ԥgXI,NheG5/y8wOF૿/S⯳7t_Ԯ?OÆ]B`".dY~KKocmiV_?+jzx~MG5"WtRGx]Uwd= IXM#h.o"ؿg6 [WG-5&ό>0YQ,]y:f]_lr[)2-B]|?-|u?_7]Rn`ׅt|'K&$W槨IiŧoBzWTܹ_ӣ}dH̓ysU0x ;%N%)Օ:U+U,NKSG(JaoXYiP-imcm&෴;x"D j0 V=F>AFx9}?~8hT;Z)NRr)7vzx$c#?>\sןl HCGLg>` lc CG=qJ2r9QrA=9o [x_ǖMtrO۞.m]O:_?U:R7صDn>|eeu٣/?Q 6_-JO:ïxW1f:j:qiB[ߜw9S>/ ]^xV_P7zMxn᭞å\Eg4/v6uzT$m*{/aϊ_^>4~:7lu^Lgօ..qa/`ߎ~,?j>#|pt+/jڟ|)k oI=wYG1-Buv>s࿄?Q?/ Gǩ†ޗYxg²=t}%W^,Kũ-ͱK)\ `K2QMk8ߦonnc_, `3JU}X9QiХ/ ٥ %S'k,qX lraS.7:7.?lǤ|&5Kooȱ.h+E_8߶~?_>|&V;OFIO?3ZO5Ğ֏i7mjnrʈC_dnumk^ÿk+K?ښCk>jQZ-eauny,uh(>W.ggtI&_U}՟!G">&R1=<e\'gf*XZry2|~Z&/-x5 _Qmx'L񯊭<84qqe76vlֱ]ŧC"DA%y7gwk4Ֆ{UզwpnC/xYv.'|^gEeY,+b)٦QoL>v9W:ti/Gli~./"xI.fwޕ w:$Yښw}-lcFh[Q'n><~x+<}z~"/iZ2Q:'Q[L,eAy7n>:J+^ SѠLěmj2-2Z5֡%մM ǔc1:>9 -o"K7{SwOj~/ š~4? iOAin\.YFQr6IuOK̓ xtrK(bWk IWI|~dgĨ_>hw">^Y†S<Bt?ⷊk/?ǁ <9u⟎65ͯ%TM OծbM2 n#X ]r|G z=ý?Ǒ@+|ncae[3AVY<3pϦڋ<'L_ōFI_~x~!xZM_|/mrd_5!G}k:J'Nio,I&]]ku+['[]%n\*"u1ɥNT'S GϏMT#l 'OY<=~Iף 8:ǿ*6+'KgTr5 {_=iZVMѧݍoyk4/waWMiZ*~|J _~2]x¿hw-s`u{ ;ۯHp"ԅW2{ Ss |G&ֱJ~P<]-p~ xSSy-diϱ~W?f_^Q=uо,񿀼Uη~J]/]-Ԛ[hZ-%d1(6vq5RJ)7ws}jbxg:`s 8 c2<%K ^eK<F90COJ~߶w9xWKQ/R/[>DŽ<)a-SwML_ׯ/D=ZO ?=íÿsP<5M>Ӽw7|WO j R|U*{S#__U? 6H|[7_>"E>x?~,|H_ xIZi:'qoXWZ|Oi;=b-B 4|*KCq Цj CR\jږZkM_ouwkE3X#`Kjò)Sbռ]_#O[f״Ku_ Siogj)6 Rrjִ[{[=3  ,0qX~spQ|e!bq2y0F.zhq؈ƝOlLc/w`^xU^FO g<}۸e![I^HnX\Coٓ?~? %׵wᏄS=a ýCᝪ"qj& j jMj7;??__G.|}uG/i iό$pLΨa% *ɡG̚RK۾&~~* 'O8x/|ck.躑tO.pe.R%na(nɻ+;4շw[;kUx|-Sg{-^kx) !ti1?1T9 58u펃zсF ÁN^x99bn.66%)6h'W3\ғWm^3\}t(gzAӐ2{` ߾FQۮvPPI$w