* @license GNU General Public License, version 2 (GPL-2.0) * * For full copyright and license information, please see * the docs/CREDITS.txt file. * */ namespace phpbb\template; /** * Stores variables assigned to template. */ class context { /** * variable that holds all the data we'll be substituting into * the compiled templates. Takes form: * --> $this->tpldata[block][iteration#][child][iteration#][child2][iteration#][variablename] == value * if it's a root-level variable, it'll be like this: * --> $this->tpldata[.][0][varname] == value * * @var array */ private $tpldata = array('.' => array(0 => array())); /** * @var array Reference to template->tpldata['.'][0] */ private $rootref; /** * @var bool */ private $num_rows_is_set; public function __construct() { $this->clear(); } /** * Clears template data set. */ public function clear() { $this->tpldata = array('.' => array(0 => array())); $this->rootref = &$this->tpldata['.'][0]; $this->num_rows_is_set = false; } /** * Assign a single scalar value to a single key. * * Value can be a string, an integer or a boolean. * * @param string $varname Variable name * @param string $varval Value to assign to variable * @return true */ public function assign_var($varname, $varval) { $this->rootref[$varname] = $varval; return true; } /** * Append text to the string value stored in a key. * * Text is appended using the string concatenation operator (.). * * @param string $varname Variable name * @param string $varval Value to append to variable * @return true */ public function append_var($varname, $varval) { $this->rootref[$varname] = (isset($this->rootref[$varname]) ? $this->rootref[$varname] : '') . $varval; return true; } /** * Returns a reference to template data array. * * This function is public so that template renderer may invoke it. * Users should alter template variables via functions in \phpbb\template\template. * * Note: modifying returned array will affect data stored in the context. * * @return array template data */ public function &get_data_ref() { // returning a reference directly is not // something php is capable of doing $ref = &$this->tpldata; if (!$this->num_rows_is_set) { /* * We do not set S_NUM_ROWS while adding a row, to reduce the complexity * If we would set it on adding, each subsequent adding would cause * n modifications, resulting in a O(n!) complexity, rather then O(n) */ foreach ($ref as $loop_name => &$loop_data) { if ($loop_name === '.') { continue; } $this->set_num_rows($loop_data); } $this->num_rows_is_set = true; } return $ref; } /** * Set S_NUM_ROWS for each row in this template block * * @param array $loop_data */ protected function set_num_rows(&$loop_data) { $s_num_rows = sizeof($loop_data); foreach ($loop_data as &$mod_block) { foreach ($mod_block as $sub_block_name => &$sub_block) { // If the key name is lowercase and the data is an array, // it could be a template loop. So we set the S_NUM_ROWS there // aswell. if ($sub_block_name === strtolower($sub_block_name) && is_array($sub_block)) { $this->set_num_rows($sub_block); } } // Check whether we are inside a block before setting the variable if (isset($mod_block['S_BLOCK_NAME'])) { $mod_block['S_NUM_ROWS'] = $s_num_rows; } } } /** * Returns a reference to template root scope. * * This function is public so that template renderer may invoke it. * Users should not need to invoke this function. * * Note: modifying returned array will affect data stored in the context. * * @return array template data */ public function &get_root_ref() { // rootref is already a reference return $this->rootref; } /** * Assign key variable pairs from an array to a specified block * * @param string $blockname Name of block to assign $vararray to * @param array $vararray A hash of variable name => value pairs * @return true */ public function assign_block_vars($blockname, array $vararray) { $this->num_rows_is_set = false; if (strpos($blockname, '.') !== false) { // Nested block. $blocks = explode('.', $blockname); $blockcount = sizeof($blocks) - 1; $str = &$this->tpldata; for ($i = 0; $i < $blockcount; $i++) { $str = &$str[$blocks[$i]]; $str = &$str[sizeof($str) - 1]; } $s_row_count = isset($str[$blocks[$blockcount]]) ? sizeof($str[$blocks[$blockcount]]) : 0; $vararray['S_ROW_COUNT'] = $vararray['S_ROW_NUM'] = $s_row_count; // Assign S_FIRST_ROW if (!$s_row_count) { $vararray['S_FIRST_ROW'] = true; } // Assign S_BLOCK_NAME $vararray['S_BLOCK_NAME'] = $blocks[$blockcount]; // Now the tricky part, we always assign S_LAST_ROW and remove the entry before // This is much more clever than going through the complete template data on display (phew) $vararray['S_LAST_ROW'] = true; if ($s_row_count > 0) { unset($str[$blocks[$blockcount]][($s_row_count - 1)]['S_LAST_ROW']); } // Now we add the block that we're actually assigning to. // We're adding a new iteration to this block with the given // variable assignments. $str[$blocks[$blockcount]][] = $vararray; } else { // Top-level block. $s_row_count = (isset($this->tpldata[$blockname])) ? sizeof($this->tpldata[$blockname]) : 0; $vararray['S_ROW_COUNT'] = $vararray['S_ROW_NUM'] = $s_row_count; // Assign S_FIRST_ROW if (!$s_row_count) { $vararray['S_FIRST_ROW'] = true; } // Assign S_BLOCK_NAME $vararray['S_BLOCK_NAME'] = $blockname; // We always assign S_LAST_ROW and remove the entry before $vararray['S_LAST_ROW'] = true; if ($s_row_count > 0) { unset($this->tpldata[$blockname][($s_row_count - 1)]['S_LAST_ROW']); } // Add a new iteration to this block with the variable assignments we were given. $this->tpldata[$blockname][] = $vararray; } return true; } /** * Assign key variable pairs from an array to a whole specified block loop * * @param string $blockname Name of block to assign $block_vars_array to * @param array $block_vars_array An array of hashes of variable name => value pairs * @return true */ public function assign_block_vars_array($blockname, array $block_vars_array) { foreach ($block_vars_array as $vararray) { $this->assign_block_vars($blockname, $vararray); } return true; } /** * Change already assigned key variable pair (one-dimensional - single loop entry) * * An example of how to use this function: * {@example alter_block_array.php} * * @param string $blockname the blockname, for example 'loop' * @param array $vararray the var array to insert/add or merge * @param mixed $key Key to search for * * array: KEY => VALUE [the key/value pair to search for within the loop to determine the correct position] * * int: Position [the position to change or insert at directly given] * * If key is false the position is set to 0 * If key is true the position is set to the last entry * * @param string $mode Mode to execute (valid modes are 'insert' and 'change') * * If insert, the vararray is inserted at the given position (position counting from zero). * If change, the current block gets merged with the vararray (resulting in new key/value pairs be added and existing keys be replaced by the new \value). * * Since counting begins by zero, inserting at the last position will result in this array: array(vararray, last positioned array) * and inserting at position 1 will result in this array: array(first positioned array, vararray, following vars) * * @return bool false on error, true on success */ public function alter_block_array($blockname, array $vararray, $key = false, $mode = 'insert') { $this->num_rows_is_set = false; if (strpos($blockname, '.') !== false) { // Nested block. $blocks = explode('.', $blockname); $blockcount = sizeof($blocks) - 1; $block = &$this->tpldata; for ($i = 0; $i < $blockcount; $i++) { if (($pos = strpos($blocks[$i], '[')) !== false) { $name = substr($blocks[$i], 0, $pos); if (strpos($blocks[$i], '[]') === $pos) { $index = sizeof($block[$name]) - 1; } else { $index = min((int) substr($blocks[$i], $pos + 1, -1), sizeof($block[$name]) - 1); } } else { $name = $blocks[$i]; $index = sizeof($block[$name]) - 1; } $block = &$block[$name]; $block = &$block[$index]; } $block = &$block[$blocks[$i]]; // Traverse the last block } else { // Top-level block. $block = &$this->tpldata[$blockname]; } // Change key to zero (change first position) if false and to last position if true if ($key === false || $key === true) { $key = ($key === false) ? 0 : sizeof($block); } // Get correct position if array given if (is_array($key)) { // Search array to get correct position list($search_key, $search_value) = @each($key); $key = null; foreach ($block as $i => $val_ary) { if ($val_ary[$search_key] === $search_value) { $key = $i; break; } } // key/value pair not found if ($key === null) { return false; } } // Insert Block if ($mode == 'insert') { // Make sure we are not exceeding the last iteration if ($key >= sizeof($this->tpldata[$blockname])) { $key = sizeof($this->tpldata[$blockname]); unset($this->tpldata[$blockname][($key - 1)]['S_LAST_ROW']); $vararray['S_LAST_ROW'] = true; } else if ($key === 0) { unset($this->tpldata[$blockname][0]['S_FIRST_ROW']); $vararray['S_FIRST_ROW'] = true; } // Assign S_BLOCK_NAME $vararray['S_BLOCK_NAME'] = $blockname; // Re-position template blocks for ($i = sizeof($block); $i > $key; $i--) { $block[$i] = $block[$i-1]; $block[$i]['S_ROW_COUNT'] = $block[$i]['S_ROW_NUM'] = $i; } // Insert vararray at given position $block[$key] = $vararray; $block[$key]['S_ROW_COUNT'] = $block[$key]['S_ROW_NUM'] = $key; return true; } // Which block to change? if ($mode == 'change') { if ($key == sizeof($block)) { $key--; } $block[$key] = array_merge($block[$key], $vararray); return true; } return false; } /** * Reset/empty complete block * * @param string $blockname Name of block to destroy * @return true */ public function destroy_block_vars($blockname) { $this->num_rows_is_set = false; if (strpos($blockname, '.') !== false) { // Nested block. $blocks = explode('.', $blockname); $blockcount = sizeof($blocks) - 1; $str = &$this->tpldata; for ($i = 0; $i < $blockcount; $i++) { $str = &$str[$blocks[$i]]; $str = &$str[sizeof($str) - 1]; } unset($str[$blocks[$blockcount]]); } else { // Top-level block. unset($this->tpldata[$blockname]); } return true; } } @jK@^ZRba♄kᓷO`I`Jqʮ;r=4q?ȩP|CK] N>"+|e<r+k!-89iֽp?X҂ҥ9!48? `ht &} ;O 16Pm@JRWA$_s1(V \4"ӎfe2RQHWjLi`NIst:YVQ䕦@ϝ3^@KGFrA0cA<$ ͅneּN:ظXy[m䮪㕇 NvkͱΡ`+C^s5EFȖ "'[0dYxX ole?DFE]Fb_у>eAZ+Zf+$ C*y[^͘,y!0935K]q1A>'dna.Y8vFo|MlGQs,0X"AGպfы!Z#uR M4I蔞WcM1+.Ǘoȸ{itD1fUjֿo=ϱ!|L̙L+.)N~ە,n07l%K.ѿ}d| C9- E.fOԔl,ͳhe_I @?zӥ'ٴ _E-߸$KҼ)Dw/QDqԲ/Gݻ"NÞad(W7jp1`|$ !cPdԍABf5AwnacRx/LQa`۪V2*~eTaѨR!<5x *Jt 2gV?N df.aJ aZk8{X;jܽ}+hQ~ Z::gK p1C:Kpϕ-I>xiq)$=yJQC!qix ^>ՐRLvL,JU#qCrɎ9dc|7$Q#՗XE r?8D2ER+SB+,t|2.=NUK5 «fA*h}2ZQ CY~8D(q?LM(EFI1BDZ ' X z;-]`15s) A8-`PLk@ڛq@\NUݠ[kS&E~[O?:eT& -ߍ#nW֠@~Ioz䯗ϔ˕֗D*J\_uST6ݑuA&+mdXYaqvjMSnnŖF6NK{Nˮރi DD6Z\ REMyF #O] _rp+B@|XG Wp:)mWgylڤ.g=n_0M&n :~P2SImU3,3NrQ.8j!`RB)I/[CB+C&D6BkϺx]c]dgoG+eBB$y*a~6Ĥp+`ٚ͡F*0a+֔SUXӢs&2ҞoSp|=CݢOԭ/le!+!$A%A]-{ 6z_ .k2rvv4) yJf襤N<@4JUS\M1vE%vFgZ$] 2WgE=,mM){2^F`a? Ҭ4xZfMMx|STaJ姑*0<ۭEpXPcvV{%vLu2oqMefm-50._xzs_ԌR.#SݰW")mn"U[KmlSH{)[X %OyoB-?wR󀛎C{T ./د0zGN:è '`A6 $K%ͅq2@E4bĚ_ahq9YpBe(-}s 5KWmmPmvONK p@t|2|PL>Dd,o ydԺJ\ xK2 $`Xa/=if[SaӖ{2/nx i,#Zv8>룊Ǫ3w5Z_["[TI4tZiK~cʌʉ Nb `N)!!fcᾁa f'ڂgov BhsGZ1% :O0XqM [Y e[)D<;*f+z i feh*dǚ.٣}[x$64U`6>Q5n7lόǾ{8{Xz?̌g1srB a=͈F5۲&޸= q^x Y`oC"Q5R)8MV;V.54$ Mˉm;Ejnז,u$bԁ[?נ=D ȿ4Bl+k_imQn( P-Ό ii)tC9 ɲ-NO6%_M+fW-HjG&!?j9+K_:yPN<{?C#܊a&"rIoG1Z!!BOֱ99g%LߦLK@t>p/aSgB**=ntZiߕmPl)F/kvΩ"'ѱDIܷ?$k t¥HV$rN'YKB3?5U;? `z>u!+y K?vp~?w\CٻE9#.Y,Mq ruS+)~]D+h92UV,%B;L) V@n?v1o#Ne-B`é}u!4![Cr&q;zN4r':QSs)>'1DOI?73Z\ y "qvt=IbbkmA}LoYZ$mlo]d:%4&Y8J߂KoYC#Ť[ 7KV/rx!Nu8GoK<DZI;S#+DI;m4Zk4*I%qa+pD'kAz-H`q]ЪSL|dv|~`_?::beI<(tThd.'BG5;zG2T@nQ8wow c~O(/bLȢȍġf8MȖ΁6%A¼aI&Yu-򛢢8/>ԃ<4>fB1O-΀$ޤdcbSV=B"+å,fg@8VTSTq'vCkj1x`y ]c% -?ӷKl\zcc%C,HW#d4n`\Nqd9%?E^:cZn#7 ]A MKı~JM|,$(r&߫R+UMI|$Rw 9q3bOQdEEÄeSd𓗬^4mPO7, {2wh !+Rw2^1`x2Yd6ҹO_ 3+vx̋_HC7(>Qdઉx<S[nQwG|r}F#,]lWC{Ƨ$Zã*s˷Lk1`OBM v7CO%+]Qh:޽EHR `R1:%ݡsm{WI${5ʤ;:>MFZ.?VG4ofa I]ѷqJrK\@q|nC۴!7,L~7^HkЈvd;#:ITЗ3 yj<286!g-Y(׈f…=WLf+.u7 24ZC-U\h3э 'ltz뱢G`a]{[tZD#7Vݣ~]qh4#KlD]mhJٍD@^EsDOMr^@ $;:2!wzQ {q21L\/8o=3c 8mlue-cZi{蘃_[?y EJj.ur+K -9&1XĴ+t B{DR61o3q*^̭kT$lҘ_*;iASZ*LL$.h-n잆V>:GYsԔE vҒWkɐtw5HuӑՏþT,rJ[|?/B[C?;_xu0!*5'$} `7fHUya.l)?]n83Ht-7cHwK4 p*z m21d#fCU{W%uԃ&I+0X}Y5rᵳ}A)x0 |aAV?tIsW'ԪLp(]I&F#bC "%#av嘾uXyCY}飶ZR&ﺥR<8tz-bZ}WȔo Oz=L1 zL}uRrEL^ATchtHb09w Y4㺺6w2*9JN:9; I?G662􋔽݁*np|:$eHɛٯ_¼{P(!ޅ}*&ru/f+͇.C /}z۴] ;vd d,{@YD:bBYKxW_[zZ'(b[,)%nk8Ha(g(ovFxt-xj{؈1V#V›ǒZa\(˜ 6: L5OQWyUqp?Xn1ȶ7vi!;Ҁ')HG2iPDH8!=X[2ҩf{3++HGۢ>Y꠱6R&rg:jlX*E%P@(4ǾHeN9F_bMN#3X+,UkkKy35J}Lcq˼1!H 5|ʏMB_t,dJdV}8,HQ#ʐz fIT|< aכC;6 !_Ѩ `jz ԈgN9ܿCYޑ!}:i%,k6T1AyN|h+95f 7Cbȼ'Y;XOxp:Wp>Ռж-ۚ#ԘҶMKR$lA>Ė(o] (%;e]elTTvA4 2c!:3)\<z+|a6dAhf P*ЊݾLA +:dQ^sB{hXXD=T:sW-ĺwĻZ,8ԁTte\Gb=5Gt5$ sŘUm&A ;aUu۝x$*rɞNzEN%ҕ w'O0Hw4JYaI2PPM>xvcȋˁ\-=Ϊv_ڥ&Z=V~O*y\Ch~]b|$sOyxrj[bfWjL2GZQՉ?1 Ļ?GCv()3QXo0Bq@Rup4"tX }uo&M A8?mVY|Q.TrAQ0hB[jo|b g8 %Hf0fI !yVV3LI G凒 !oko`5ר`MҰXݕcI:]f-cnݐ #e>!<ޟLH@@wMI.՛ibyտRꫨ.1!!LHJӦcZ6z#9Ug{l(\{?#ʥ;`L3j Vہ@5Y Y ΜyzVn(*w0nY7 ,!'ŝ鯑(W#4Mv\΁kL~]Dkn>$4y0\@^dcNʼnwvVӯ࿖38riTt03x{YɬdEYcbh͓ n\ xBaH }ho_\)XT=UpQC*d=|!2XtJ=4gk_RuH{t05S ben~?F\3r%- ='ϙ?T[{f#۷lWլ0mm2D(:E(pcU?_1bXcw]{A;x_qrHMk`@d^ GfҒRד(.f[mXbo2̲aOv,ЊSI,R ]Jej}:C-:5P\5Sv*88םN@ A +t3uhzR\m\:TӆE )]mBEν&e5'M~e1g{֠Ep_@cǚKTcda5RYpȒRfuw"øK8Zv{"1p9.C~ErMTm=4HBGP@KTU6s H𨌓1C+ml޽ʧt1ch#VzS>SWaBZB,0kU,bI6Ct);pv$d|&u}XGВ.&5|^^Dߙ7Ł}5aV'Ѷvn l @!*rt;L o[*5=8G4ٱǕO7r+Κtӛst %GN, |P#="m](4v#=͡?MSߐWi[& m'%nےBu&Vr2&Q\.˃b!+绞lQpù_m*7+$7=UsؘHi}c͉胍u'hE+E-|; <}"'縡籥ď([u,X$ k?~`>^[ۣ Au>jZSO-VE˕+Sz RMsESÑy(3.mZ4IT%`U䰑:ŢrABiypHPi7dKYBW}yl\ !QOL*P}+5߂!X̏{S`raw\8=]YJNp ;.o3MnSCe3Q58uoIAU?":)MƩ猒JZUU|AtUw :p 1l.E[nA4L ; <w Sz4 I$&~~TjwF쥙rM'&`;Zz e7sS+ q!WhWp: dMCMG8DFruŃU[[PC IQkY=Kv|\:씛g Q;2a 'l|ԗ6K׻3wFvEQyhrlnd㰮[OBb9ڳ눵Mx4/{񣇈Je$Qs7 շgrD/W1Ctxbd >֛ U75E^I#M0fDс\a'=`:s;a4Cu`%jOyyƭCfO^Sb[@ <y% k1\D=Yl\1B@'.9mn尢~%8Kw\Yؓk}Љ5Qj^u8(v p 8@MҖwX_+(ho) !D+7jƇwN]^wy͙\+_tbG(hZ| r?͢hoǚE="AךWY7;޹O{9âgM!X8"̎ E i~(ncb!P,~B(5G:ODpƗ{f!+d-xQ: "'h;QsDJ!!sB3lOFi؉QT͊[S\Ֆפ7tFh$$ Hk!දS(UC}E,QTu6W\z|zAnj Qu(0' έI^9'7SOB8,-˾.B#T>⹋>1#5;)T>R`K2 O`Bi[n.~!<$1Zq4=sQ\Rjs_P[粥iRnݤ0=B R˞ER%7T~'ǹY+xM^ n9;,j]%9:15ډ>: \eܠ_ĉd$tA;tqcePa4:& I ɾlo+sׇ.P}VHށEmpfxYj"kþh;C@]F;?ѝ3RM.7. _/5'-&Q\"xO#'Sj@\Vɗh. [g%GtD쭭2ԑ50ƫg0{Y?:[y1qҴl0)pC`fKēU&ŷBú&֌*k3s#^fn&\KOewzRtM3uCJXI*3fD_]oՒ儵̧9X^O4_<|whːVQANM D亴фW՗)*.a.H!MqTMrAXwG>L8MJ(p \T 4iYYSDە^7'7]Ă)وeOs'bch mjg՞F \Dt0/ְĹ!g⣌8σIrRarN3|5KD+֙.^ AI=:EG! eO5].HST?8RoV5:p?>o٘o\C/nKub\J/Ep(X;GReʳGQ _˖ OtkNA! )k=i,O:r{fېL=2(E-IteݜpitEYF-l A)iB?O|]2W+U  |46;aW;Zy_/b#t"g0c[¾kՔ湟=\ ˉ329 V(*95.[w&/Xi0# `fLbcXp@xoh{ޖսzs"n zX}k~ _\=%B"c\DG@YW I 9RI*5 u~&Q]C(Ptt2 \qYF\v\]hdܸkaHWXs)[*<3TcdvXŗjzwA3 j0^QO\ LF크`*MHg:É,=5^_Q}f)FCԚ EչȯL=I\UQE} \AU>BqxP*07=܈sLbQӧŃ[' $^Dz 6K*_(.KgEf}ʡX6,].cG$dpY회sW@_95Л *fu,B{/|yDt,Th&1PLP-hX -=Gϔu$͊Z늰"$x$,Oߦ/?qa=]ں4 Vr1ܶ3OA|r"ol/{gQ1gq ICZ=T ޚU&"u `=eRN3e/ehJ"25QC#| .վlY3|dD>4N19 ''O eEE8(ɓ{UNOhf,wqq6vKDŴ%ϔШn1/n(,aN1Oj;!)/1t߮ Kgx? &i ZA([0-_ʣ ΰ,aX\.7gM|o:6*6IQ' _x ȎU)B[r6VrmkStkGL?͖*{<tEktԷ\$QqO DSoٮr 9Z!LT3 =^M)^On2m pR4xwT%0Ջ|'xd{hhp٠dcLѕXCZVwprug*-K,;M{54/CauGU"2.b8EhSHx se)=}# ϬfFb5kKϟ#@3mj$O}+p|XܢÂr:Qr[u&t?u}HТOu jDj1- L.lkt[]Uobf:jmj5Ew10ѱp<_u(hNӼԁ3/֒JQuADvv!S,Lc0?#>\naiPm빗{<|kb&2 {* {drk̨PaoA-vs vW0*{"1q/(;6{3 Kh Hi>w~E5'%7x$<??&"QL~c mMq}r-3,㝮2)$.E`FD$!*s}uaUfdؖL/cQ2̣KM~x3M Eweyİƺ* zDʸ/>@dGu9ZͲ[B`w*X4Vne:)tDy:LII ud?g[,##Nc9@x"!'7&7WU#̌rd[8bsMOw\Oٌ㧵Y$2B7:Puw篽A!A_ycOsFfbr~Wrɕt{-y8Ssq(a[7s5qlXjZ TIX+=-d1!X0[.10sb0jHDa0C?UF'tHrw;;~s|hR3a#H},mlIx-]cL09T@#/,'%bA$Lca)P_>;[E>ClVꢘ[1<Ǒ|_vf;'8zl1cDa)=u ay7Tf5 {"2N4IcJVqz{~I$<g'Wg^$Q_`t |(hT0?Z'l$fH 榺`=}2 +ՀםO[!Ƞpr_=9gXUI3i8Rrr e;w~, YCikSY4yo)K T qhюTEOn, Fj؜DZ[AK6;?2vQ|Qz;gY0vk_} ZPX @]vh.I8Yi?;>{·X,׏xǹlFl+SBv Ҧ[\s)"B 5u:l'0Z|]u-7LAq%9_hLeZ?_nK,S!#*~h|tzS[gbj}"Om'V$LW5Ǫã0%C~K?{tAk{jE0%L\{?l䳢Xc@1Pt96#=R .YA2916Lix0ء\GMn[NJ?0*j|h/. DLA@9yDC{4.%W5r0*vʒ'.Ozߜ ,C8akV( % _QejzYakKɯO.TXJpY*80v;9 G9sK Y\5f@"Zo^v".ªOosųڤ 6kj7u|/2RCR(|NF@#l K~0YR͡g`tE! /\ӾYv=9Ky:z _sʄm v .:P Ce]Dof$v%_ˑZeHΧOk]N/ -*C! 16ݚD v 5=>`)ш,fT粶K4}Wq4zAfo:g=\ ~W"c~Dlp4e  b`\!F.Z4T#(R  }\ Oqm+ZP e3)l#x?̾8iե#Լ=xʏu}E?i7OS`y2Ɂ&In5' [Z,:~O]eb#4K`>Rԍ8R͗ɈHvϝN XWgPxG:xRU7P~ߠP&.Z\եa- G;,X:6S A$`noBVl޺&(;Tq G9l!oeZN=C/I1gFc5#Xb. *>y\/pҏ` _~Uq!홚 ("A*Z?hNb׼`a*D/Q!~76Q rQVu"W=B%XzU%lX dO#U1᧕!\V.Hك(19 ~p!]6іuSF$ 7x.V %0)wq%V8ES ]Dwᤅ=^ݻ3Tg1f9"u%/]BˍXFlr3 C`=6IrS#ɠrsʧ#=[.<;,-jR g䠽Sq*SȝRnDf-RS )^/Ť v4gI: 3gUȃ{nPA^EH)F}sU8aJ-7fY`V.`*BW0еROo'M'1}R%YjhcETyX7Sk>s`o5GpqlBXpJyuz8sZm?iɬwVKCئXy6؍*,{gZzunm#6}Δ$LHYa&hBFꁜW^RA&G27B;6rUg Ր|hp>#4%hyGm\ĆOk>oW!FH+3$t'DZ"䢛3 iKdBЍee9 CMBHsp5Z0,Q,1`^`p؉48!X|&DHNtD] _. ^IG#8y56 c ,}eC7!0"Wc^:1dihGDnŗf1AT (hay f&20g~\\St&Q7|1lIQ}H.5ɮXA<`]DTm^ "ߝJ!k5rNIʫUI5i!DTCK/捪& oX/yrQ26†NNWPaҹ:zy 0ﳿnoM?nz*bv ٭vԥv)+rҡdUB1d(n} 7ՓOa1&U%㏄ʼ[MTR1'@ZyF?08])RVyn(ʙwi2Y^m_6yig9DBɎv ##t=rGֻZ[˺ӯrPw^ 4%RK4j_B.!XALXu[È#}k.u`KLث؜NlaY%<]jT]uG{/6T&y]mQp(rw-J0;V1+a0wֱ˿;⃍亮:j@mGkcJ%M`*,rR fTfrdylV(?V8Cͅ= VLcsw-ml=b4˗ETSu@i eVipY`y'c訅&o^ 9C4f1:EgELceװ+6~ eO;vWW" Y/sYii!56ơ",n N 7[kDi3~+׌F&%y{;x_ dku1 bU1~-RmFA^ܾdNmؐXž]/Z ;w6>aV8' ccr|k2)wn=O.M{M:/wӖ.j1a+# az!$yၜ xZu';0Og0%M!J;p%RԿ3Qg6G뫃<+MP06zA4kEhH3$e8>P!rZ2`arCxa( raQ[\!1GȨ *TfadD"$$Cޤyz#eZm?6DE1S52׃o}Rx`QFǭîWf`-xs1vXJhZ5|7|DWyzxę(a}]Jb- UcVE2}NiD%h|z"J8."mBIT*'"4jBoLLp@;vʵkVL:۹%@|Tii-2rF:LRtZ *'JK^ I$Y]َ28OI$Ӆ`+[7)=7m{"qCCqPKVNΈA4/8z˰nBΝSH8-m11Җbڂk(q9} D `5v jpr}wu$;Eo៹E>"?\"!aACNCU2(3XI( bmAWI]Z ku2hyL.,|JZŢ@eltV_L#SD 3J/A5n8(~<ܵRZms[xb %!r/Nm;~=Zɳyg?C1z0Q̛*;1Mң6tVWv+7/8]`'v=_:C.(GےƁ^!`.EOQ6XBI]c,i!zRK*k/90g6Z&m܋)#gH0ukd> Z#N-!)&M$d>mkLQf&eeKuF\ X7l@P>&oJY VM`ߡwAFQ[,7ɸE5&wߎm gذ6cͥS34qƽčn=:^#VXqe-`)N+vd;8"&Z[$1*G[Ѳ"ClTfd s?J~XP3. (]^Vf?U7=D(pK8x<3|v0nUD V01ν>{r>ϯ;#j__7(xϲWOVk?١5$un~1bώLa`Y[휟Z4YWm{I<ʇda;C&nb  >Kb^&/_7>rݎ`k=/hfh~S0!Ns314z^Z~5%&ʜ?/Sx"y[ XڍX" ÇN(Gc֥Q0O?\slx<?!I2C\6;lWI|UQc271Zۺ}Fja.ipPBi#X>lW7R\zb9 ]@EhG߲iY% U.PlN^rr|~KDPIBܦf{Xi[-܈=?#m\P<{{RE{πIDR+۠"īܬL}vb7LdF%w^Ds6x4L w;)$gS`))5gzڀnQcyZ%RLƁr\)P2u/;~GMq]l?i2 K-HXi}b u1" y51wyejg5a(0ᅵQLo-=n#s'Zn*ԁt |ys8sϽ\2WʁE&* <{ԋ&&,]9|$o5^W☥uzEWTݐe#1x7=/@|pz]r⅜ǩl}r.ZM FOٷdeSgPf]h tg)x;>+nB+l :4^Mi+ (zH64:>)28X~IcյVkruP8^CTZMƲ#0ؿΩt^ti-?-zv4A}v7 Udz@8UCӾf4К6G%3yW,#esU{ǩFRoDsuJZDȭU5f+r׷OC o}5d~:_Mb s#W#Z-@ݸB6QKIW=bǗ䩘y "+8M 붷wY)#g;.[\Dm>ltkr("#Ukix@Wu俿|6MN:|`D3Kk+=i~\v#[V /SZBwdP[p7,;TAQVp[$cq \_e044ͯef0њx&fgy(̣mmfMUe0c t_YWC`6=iw]ׅ`}[p Ш;t~~Wպ Wh ,Zݝ F7tN]mq"` n;i* W3QF}ϐ9wDr=+cy{PԓFwp{*{aNȾS>gRe8k\G~6WrCA[=kjO\At\TA֧ *0>2Fc9L{<_'&Zh7T$畈"oS$3~vXrʑ}msJ&ﳴ'0qh`$ˈwhd cWs/#ՠi逈b̛O\:T%%ݲi݌mQTO2pg/^4%x+1KS~rvR~m *4RX&:nҚ~;=CW MzaߦuX\\J蹖%yD!E#24Vc 'u֚OV@!I,vf\M!bxܹmk48^N_ A00XruFU(G:xrm u&% *ZʒU}sC0:Zבnim[p!@歟#> ٜWME]Xr ˥t1eQUfȪz&hgOugOeDjZU÷} /a8iRAb}ʖ!Ǟۮm M$\J OiɪD2@C<vڶuPrA&|-p*86*9-' jz1 <2e@;ZI2לQ,Û6rRè w 5D2@茤 Sez^G8*\*m[oÿKRU~(PFs7.;.*DhT5 8"n!f [۔&4SӋdWOMrA9YOܑ}۞ԚgnV((6䔺tp\X/awA7.$|-AiƗ L]n@]Vz&dlXij&ӊ~ҿ &Wo/Юȑ LlqU<c$QשL.>&wz[ƁߘH*݈!5p*KB@Q={Hu)Uw"reDrJ}&´kGNNLБPyȉyV=1plX"`VE m7jB'Y ӇOk0cAtt#vf<._Ԫy E9fu;T27"Xw X1wnFd@ݘȴFi5Fנۢ _CR0rl@eCfORwbPZ?%F MqxnqSr$hlL0D3kڑxsqɷBn;ő]LGuߎqגyrᥐ*P N-6+u׬3 ;լԈx*c#CD=5vix4SCJ"r&RLo~c@5A3{fo'wG_Z2!XGDCFNtp-&-~cO!N"d,cHKUs VҵA%"=0r n޾>g;i!H)qAWŧTd; Wje #Ҫg"5N/靰;Ḁr=Zs1n:|BR-a0*=1Y> :c)* < X jY ɴ |~ -m%՘ 5!':dCթ7x~%o, )}G+sӪ/iKĆzZ/eN^E&s'E,~.hn02hV=|"19fOhKʨIę|GK1^9`~'~ޣm S_NA7)5Q{|aI;^ ~W$ݽc`vCf[y^ U(ζ6^DlMwI~s0B()=#GKfQPr)hr4ƌ#yҼq]=z:тA4WKG(?Ȓߢmς<" ÉlcdئU7/ڣa6F~k~b<@"3EVw_qDfT2> ֝ȐGȢ ܪL>e]cwB-6M؃+jG k,Rw8.^t(3͆k.;w,ʽѬ#)c}F+Mν겛[[,ާo3UFb4xVke=u2I6L_ImW:hltw_JGf&Ru;h4EĽ4.XO0yK˩}݊hIdxb'vY ]p4l|PΛX$tZhJvϸ;Q&Ǣo qk8$Y+*9p==tUz#\&u 0g鹻V ㅰau*>hQHkit{x^ AFk*\0:$_QvBaH->wAzg6%Ի8u)#a|ӈQ\^>c]B+GN, Bk=Aٗ^PDRՒRvX $Qxw;Ys~C3gqlٲ+E2ىXTT1*4` S,wմu;:6#ݲ@IU_f6 Mm᫲UuYcz8'I֝DuͤHr$nky5TġwR_>Bׅs~ YVI͂ H#NBe^u>,^")DVRZGA[am\8SGaKtl|p>ޟ$昨 viL}=yh1Af3կ=U:` Q.iyHaTHMXr[ lP}s*@So0 vu.``:?&wjiQ#0htUJO6<& O2 ׫wψnaQ5jsó enZ(󍱚%#6xJS_hjĉ lyf\-*HA|$i:I49HT#z3_mQ 0W͉ܽUt7^ީ?HOa&QbMz2د?o'LK|Fwm]dt&zc-̿a -OB5$'@t(F͖w I&P.D^ִ村WU]CoC"ND=eQÏHc3(T.mmIXoy֙TJE0=m*`/S!;my`"{c*۷W鎛NF5^neSC;Q֐lrפ_D E -BP{Ù}q-C5؇c9=.y @\Յ7}K_f|&\+P#ᙘ|[^߀]#©~=y =D\8\hy$hU< Ń2i;~G#j)ERV#@#%[ [U%_*, h|Ǵnɠ[Yc,m??Eli4*.'8K$ &]t(,m2Jnj̓wn7vԿI5="b5bu|XiP JO~Pa:36nj5cZa&&9uљ7 ,oFv0dy͢v^J{C]P'6bQ8=+1Egv􎦜'C6TYꏕ9 l0(>tFl%yEv;R7ru?p NMmvN!7Fh\n_.Ƞd❛vpr513,%؆iL>_xY W[q%G/d&ދB% G J'V4D&cdDN/78Kއlǎl|!Q@X,/Gٮ+G2rt+_S{;ѠwcR~/̚ i`9EWurI*CBI܁|5[O3py='4_39%zPeP*Yb;NbO'DNǰb0t:Q51f*w.3]A?|Q;ِs~d3{&j|}NJҵq瀢vֆt<迖O#zsI BIy8Uăb=W ԚL;ClV4&x)Z\+OX":95R]ՋܥqٹaL^-3cwp&vE5Rڨ7xft2]w«[ kRԐVQd$2]GG],~̭~A72[N"S G)X/=VkՙNS>$BivD8cQ52ui{U+ Y9]N0n(xb33 Gi=:?)jfx`B##H1Rx!vzwJ6~GiivKnUHLC"wGcW*"ֺXXoT/O (b O)%Ko9Q쌍J"W,b(@\>꒴LW/҇tWټ5O?&qtx搰z0LdRG9gS%k"O3"`gf<O$Ve珶OeУcda`h&q iN ʲ, M7%*mNI-,M619|e؆č :vypi>A郯u*lD;m)z~`&^ Y1DhcQ2WС ,񒗬tjc{,YnlHRYNΠi /:nJHYb dwjI7X>x'N)zZZ{5Rp(Wb93 tv!Пg놪V}ca}w mNetVO蚯؛\zAW5ڦB[P20go{Wӛ:InlNVC€]P l#Q*ƒ mÁ쭕tPeDH7Ï2g~j d43TEg- *0P:Y,vq|iBQY(XZ??#%̏Rᇄ}xˁ&SEz}Wk݅Ox>^v;;ԥRx>VdR"/Pzs:\jVtYNK$D!hi\Kbr%]“y{I WԠt7zq`nM,ٸl^e4@.o)9hP1&ƃ ^_ѵQL)SO`.l/I|["m~<,SCf>vX_:z,no? =L^qR:팫((vBF#ޡ!MRN.oi:#GC˔_MBU?Qk(z9[~ǝ 9ZĈ/'i2w6([4%L8Eu u%mRNU^uwVyFT)_ab5ˢgٌY֓ &Q7H+{Kz$PLZǧҤpJ jPUNx0MfFGυQVކdBr]*JxmP 79ZBQ:HclsTo2ְV-*`N>`\6X'V?Kq@tMuX"jU )h{ƥDZջm+sy?Ua@`_~‡.p5Qtj;#}{4 TB\ c#6rXZٛcUF :6{ lQ~+]$ɮI r|;9{[!W%5GSԭQ& Ԃ~̲6XH0U&m_vg;׬ad}&FԐ R`x•}&ȑUXaa4T.C2q&aX=_:&urj.!FQuIn vsp;Kőas0,_GZ/g@^SyArO0oJ{ӌ5xRRkhw# g['~FU^6Lw?xΙ ɅJyf 8.'O8z*!(ZF~gU@Z( BQ1Z&cH\(Q> ޙ|9h9z !^!p@4¿/5߫깦h{@0wZa|='%>-Tu+N[V'v! ZSu҈DqA-YH}K8o w :A4 xaxJCVW4`x\_((.>2C4* fd#|*m(hH֝><'᷒$]}ll 7 rdPMݔ,o@GC)tx2Swly\kidd/k ~6cPhyWP2{k:@^h+ #1Dyͥ=1,#`ĭd{OKˇ9 Aש1 v%k"SxD5j9t8A2zꞵ31 `Cr`yU;&!6 a ^4Ņv܆П( *jZbS&#sD mh>HN'b-u7Wi?H0Y0:W\bC^ub<3.m2PփJw05+$awc^%1l{AL#}iLV>|hÏ8 l#l[ F(~VFf2v^p\깍8e"έ{X alRMGY}X5v5x7%3eiCp0ZQ~ʢW`ҟj 51N-Mj`D.^Og1!h(*}n;և%@K!F^rQv:D }I!#r)ZH1$]2v+fPm W]Ȗrp4Qo lF\R Iâcs$Ut!y\K^:&rb>uWDOί 0ol^]<ַ=`iSY{4啒_nmZzB͟z/Q=uu7 b]B͖_r{ ڣ ';INjd^-=5AuChU7">e\UKiWTKC@dAMĚ++cM26![L5W)׀+,I V䊜 XljdFr!Vn >vr3{Ed8\^RpBN1}\y Rk'KDCk)BR4-PN[jZLa]^\YY->ջ@EEԘ'h{?5^c Br)u2~q wkm y}YHǵLr+%mt"&y 'pQV<ݏB}luy=#FV椁4'E7 頥O.Z0fHCy@<~ܪ27c8_h)[#f-+tuvm;/uKvx 02f&0z3Du ]ʴ܋P7m:g[9/.'Pl,rlI`ad΄Q u,I7Q*j<=o9wiQ R뛋(cfk4(aLGKlQN4pJ;[g9'T$+ V C3!q* Ą5[}vD~f%Kpɟf>?@kMrnK#(' bV 1zgXW^ѣ&!kFsAX͏u~uOΰ--+6l1EtrKǘ-h=My%rs^nE/ZP(,+u HI6vxNҫD2jU+B ͂6 tQCI&PՊA @ 3o,DS"༿? HER7kZW0[*D 98f|KU̫rUP]hHO+SBzb:gO`QX@]GXf=(Sb݀Kj_AAԓEĻVOMv70^ŠN)TiV, &B6-@D,\RT,`y ĬG~sv *\@D9 [*lZJtv(4`Hs :~x&?*.a F$Y_t@p@Eg)i6҇ Ao{I:`߄"O{r{6 N"zMYr Pj[Z]ƈomqx ^ Q)5?c!>ʰp}T(2~F)+0a1W}R)U&=eL+J4"< _JФm̱s|#C)NFÚNv&5͔OVE^mJ.v/{]=iG H7~q OA9|Ͽ ͓ɦ$c^Cmt{" GtEJ8q=~jZcn8Eg\: dĢUhf;672>.qzp`HaVn-70$ćȵ ( >Q9kb(Ei; j ![~m^ƛA\8?yv^nyĢA=qqfôC Ξ[l9(o,]T |11GFnu4 ;s#]uPmxc#< X2Ѧ* u#v^G+BAsAudu:@f/6Vgt x=nn$JlSLVIҳ{j]^6t/H5H-mVo̔lK|G؊a!b;1 W ndHZl?ʵ2+Sxx#j)B5kjBr"&M$8zJʑKl'Ng$6c '[%1JxPWa!\AhK0+]P] >4 =⮓gݩňl3U~=BT j.OjIk@47UK LQjv4. jfU^@̩R VlV F>^#E7]Z\Bn;bB`JokqF@$±tPAPvf״K?Rs;\䢵v.PAZV >Q9ga1m?iBso4IM+sm~d/g\2z֔(兎-1SK>p_fXvyǢKU4?A{h,790c3[~ULHP\s*?R+cnԶit i]U,J%cۄ|JnTW*?l Ǐ)),|vΘޭpKO S5R`z]LtoY^vAb>I9˙kADyFE\ 7@ɰj+adPm]]{i=I0}r $k;Zc;GQEsH) ^o %sꉁ57b]kdwڪA 8&7SzCE [ΐYd8`1O֓VlBTik=e VG [// 9t}DZrցZ{QwRWbW gܹF57CTgA-ɝlLbN=@> /*2E]9͋罌~bk씄#!̌QtS -ILW$Jw3YQkGU^qc\0h봣9pχ":|F7&r*$g:#fK0k61So#602[Y<ؗͥvo0R_~k0ݮG> ̅/.X  UmDCb !Vh-f< GhoZ-JUT)]ev3?El40&`wIxZZ^ EIȺAcxTk{+<`e_ci@e,ϋiIjHԅ'$ Vi#hN6Y+m']C@aB(ˁJ9"PC+\9h^cJTǣFqn7I_9eͺ:;`o;Ly9hs{l@kkm5@z+w&upo v}g dO 5np_Ml(U]h&fyn^G|6F|QCrI"Na0D5Y ,}Y t_EкL2iGdW.AJ:N-]N^f[ֆ}!>Yimj` פ5q)?ynƞƬ ɹ+:@0,uh&6$fs;%8` sjq4ug_xieӎOJ0NLP)׍p)mZtr_x^'ڱӥd!؁ @[MxvfP"FxHbOx( AQ[\Iz'8ٷ<#Q5|~)[Sm1Ğj гB#Nfs#ƿz28Z w^~6CZ,Oˆm$)(? F-mn1nZ-JLTQg{2-2 SF^bGNY(Nq5B!&'u|yW9C6ZP'I+SAA "Qڋ-ȿF4ar:SlY5T!AfBA.+M`t,#E`K7Ur@I߻b+E"aS!2N1N͚1~P~nZ-vG"va!-!o|y/ 45a !P/y0 })_wQEE]S}a\V1x -],Bb`Y]|"?,If0ƛl lkо}R~rzsNZu Cg1q#fDG2M%il?#" +W-Gl?c`Ir yc8nj..*azҙkWs!M4j1k] f Cβhc\i"#7]=Pb?Mbr\y'J?Rkso0e?~Ů|=DʈWD2r:V] pښSUL@rk0ˬU qɳ<-EteL1UT "_iZ`)xU@=Qx(ρ"'PS@e6^l[ yi1Y;On9菟 8 0llv3*h=- ZSlEs˰1C"=j\b'8MqrPنwG"Wn/(i[р|QN_=+2=̜DX|r/⁼w}Ord9j^8ҺelKt)zj1;,BtIR7Z6|IF`=M|rshh}UkEB1~_850z0#qJhf4z:TJvt4غJ.1cߝaXD`O,leJ_'~}wIV]k?]\ֆ7H}\|0]DT)uw9cN~G*B(wyGyYފE=$9@nϳ. ť)*-nGQ+_vdihk?%'s!{1qQ2;_br%1 -W˯k/e%~4v/"_U :Xh ~b"Fq)*`u(MS}|EӝƝGmFz=m,* :Ƣ>9 OK xQL/EEg=Y@L?D WrcحeՊԑqB%BRz#^EMd > "Spah8^jX0EkdDX`M376wfA%ta,gޤ/݆dZ|[HCLY-nU:,ƌ}Z BTXKeȥ3O/"zǼGf@C#DY~1o O;7C/,K)cB;0o=#*_S4Q PN}AY:,:=:_89"8%\K&Z2~5:>8fۻ=\o$:<¸HL @k'R\ER i>XX'|a߭lS`ZCJP~m H>dr ٥25*d@ ?3m!.>W75LZ ii:yIo_ߠ+_Zn)c|lZHA%`\ -)19x<In⟟4u1C>…9 3XG*~OV)ȭrل aH(7WpU @wH/l|G"2"%|5[7n#ᤇ['OcCdBK{#z@e#4X~l8wbU#zZS:~Q2(0Fn_=L}Pl0gfT҅)20Mk?2#/yg(i^(yQ᠌HBjx6+)u"t# Vk!BbV<ؠ9%Iu9)2K) :CeoV1tQ5`#^,);OIw ,BD(d.:B7AְR;{o3H\C9[,{*UT=ϻ)n`^uor UF {!KkoW-aMYz:H"BQ@S"lxaƦ/˕- N܂6pM4fjE<s*Vm!a\o0OGH ?"<t{VOuJ:]fVk(?V ^/za,~; TO(T_ L<^:{۪E%.(@Ǿc`܇%751{=.GPFC NPYSGy#b.T^7WQF27\W쎕ΓTE1l4jP@y1=c|'勋H'#sP,si#㫊L/u%k( WFO_OWJΌAoS@!tbL&  'B߁'͝/ոԣ]3:~8$QR&MAĆF|5Q;fۤpYjh҈⛟|3rmnf| . X%2B =QT>܃|B¥x&da.?5H,.#;d9lC:+R HF,;i/2YM<, 0ds:9=5??3|rG05YC7bFFEp)7Zzİ؂QL,}+JVX\ĕG*Q䙢nBH݂ػ;g]g|5Hvxqhdj' E(o%;rB!t47> /*}^=!Γj|vd 1֡,lԀB+CǻxS.z^+}RJ~0!"kS͡!>vW"~qY&o /BAҋCzribcڦ|nK+یؾxNLd:g=y`L1چy.pO_tqWp_{ ̋R_@ ⥂,S-y|0Q90+>W2Px]y XpĻPWI0)z"(Y"U%ek6jg7 JKM`D 6ѺLr\K-{C([®Q>Ĭ7ƗA0Zqd2uI:c+ȨΌj00@䉡eAYy-ya9žǻY/މJj_ 5Xfxps&!А8OCOb:]xyӵ D0~0mсxk+lTE,ҥ1m -xJv ,[b(W~@/e68_vHQz V9U=.bң.H91&W%:sטcs2]]U k+{|nqnAk;$nrB^C2BF?-1r0{N MXu]~ e bD b gY&03g^X*{mhɍԢ@ʋg7\)1{{֣1?ss=g0i7Ѯ;xa8۾TBXa,}BNT(qWt&3dHu:*P׹ ȼT# dDjIDóKU< [,߂ö[yʳix{e{FNVArp&%*dZYֽޒ y V)Q 1~KM BY~I1'[] <'u2KC.P.~ͬj0r +ML @0ԿM>#es(imGDwSjgNz˶UTv6$hI!{;;P9҅A)JL ۓתU{I> D&J>VVҔqT)vqihr2$c {Uiu0ZUPob$yF,F{AM9 g (*c4x ?}לbę@S" W_^"gH-x-&hp?4e",\ =74L[( TЊgB~CLotYMQpׄ0 ee3Czkx0[K*cحkV&&|l/&9G*Q>m #сi Ɲza'h47 lM/M#{j#?9&e] ~yĸ AA΀Z$\P"]p.?}d4!W~a!$ .׎':%psZL ZQ }𒃾!\UۑED-ks?Re=g5%U>*}<灹5i4zTy)r}ʴ ]RCȻ|F|rlLi'b_ P_`O֤H!+Ԕ*9崙d6P]]\QimUgp=x,<G?wh "iRRh;-G7#pnjp _T艸ԿKڏp({,G2}Pqc$!!X'GlC3+NbFXk&h˔XhEv@Hǭ)7YH`sg,JCm_a%,5?}̩L r( B\rϴʧ\ofPF0i>je<*z8KFAUf!Ϡ˄| )H Nv_o:s 9f# Q@42 jE= IUu:cf*O 'e ցڽ51#}}?a7h{kW1OS6a1q793gP\ \2@­ӦcAr>}tFUÝL#qUrJ&=7Çh\%;;$1F܎?iN|i52טjD983q[L蜞,Ŏ )Q@pJ.%ፘlϸr{;&ms 'C9ehG#"Se- ̠\d@`ykW;p_ QQ=XR)]؈\šR* D],0[aS`EZXXS P2_AvaUM#/Ok$^j|bRhrMsK(5XHOa4G<{R 0ҩs,O)gӿ_uA xKFz%U+^}j{T*Gh+ o@8](3E&:u@Y b(Uvv" yQ{:K E/uaqUbA;*ko -(jD9m| v\\yگ- ,!V 2!T0ǀB^N gԪF)мT)ם*Y Pd>`ox\f&%L ÛBBܑU< s@`vPrˉ,9=b[$wB/y0ެt՗R"$K Pov@>NO-2W2oeA.]EEwg!_3R$ #W0MFemִnxxm̓v𣍊&`=dFFs)2ʷ颐Ҩcەs|6A3hSRhvW T(Ӎ]l,t u&GX]/w9fDz%XB-iވ yq{A+/:e۰;B<6?OY}nPw y{WGUd]^fVpU] 4*C52a/KN]sY6.utUVZ{@ V(8W4O=+uɄN1]gloV-J5BC{h-c ylb)Byt hFVPoQPp98CWϾYb8T0K5crvլG?wWoXL!^zHjyn ns2窽P+-)>EY.u~.>@eVAѶZ;ڈupxgNm%F'߼A«ڷ+ 'e|#l*pЇtL&){% {mQ1YX'hy T-Işma}{t$Ea(os+\D#+Ǻ8I^Ф->hid7n}Ǧ1ucP P8R^h#MeHrGvD" })U5>Q R\^1<4P6:}ܶ7d$忏(/ |I~ zvEi^#PLtfm>~nOca S"7s2(WhqH%p' ?ne9˺ ?P?p :4_G#@'oSX2XJȯ'fhJx >0.n5`wM,Q_Gi*lTӾy`5ec]pI% 3>׌(NXl3v.RNqm!NyadOv|Mc^K٭FGx#wty fn|>krUS&˵ȥ*%J{ vw9XK`}%/;¨B+ CˌhItSW6@XLmQG Qta: ˻a--~(Xt)߱bf7!A@u񥦌9R$Ru>CǸU乸LwT.6fq5SF)!H5'`n=&l>$ewx@>^9><0a#L8+F C`N= Ws&6#/aRx$;~~i)t;2-y tY Q><:(oy90xVpd( `' b`3oS\|w?i[58O@yqj|I$ C'\l`y)߯,fO*Y3  K)+}V]8Nvui([Q'ElpRsc6PI#vk_@ށ]>LOq{@Ɉ$ _-x9''&hg⛽{3QF w 5lX =v;e.pZ&C{mȪ}ܓXw} 5awsH6վλB$I"AcH rl8&jRl駥n}5<z`85ϓ%xG~/; .rVeЮ*3t;=&,JV&bZo\޴8qÆ~*= ~r #sO7\3 Fl"jC He,4?V_Ԕ!ګoF&6Ћ):U&d0+I_8(!pL7;b~v_4 0sH{sEA~ ]E!u^La{ly42&LӔL :tryͫDEyXkϧh.n4lD ~ee̋_uc9WVٶE|/4m U<!kbp"x0 v!AC BbZDcU/#匠+˭Xc[# ϊhjka5ӭ&~L({G+ CkfWM쇫<#Lcͫ`uEENAR 3YIc:ȱK?yݛ޷C*~mPʉ{ٺ"_} }%rfkAM2?lN.jQˮS{D4.c.1#Dm<,1g.fVFQoJM-F|T|cgo-K}j)vӊVASi߻P~ X:{+sd[Y͊h &-+Mh5&Yן48ZT0e+E=6˦I1H+y5T) GtN55(S RM8^QNhaF6/:)l6m1uKLy8 \*p7),O. :ϯ0{W=1zД7H*C.h_=l+lÌpp(W;dkl~ڝQFG΢'U7NvM{qB'5f\2e[* ^0PP{LSNUk+S"COKG?I<*'[SmGАr!S?t@uCD1s,|ܪIHܑ*s T40pY)pp^ڈeLѝ$tHI:糋_ 7JL2|4->&`w8ɔ%{24UhYw5+u 7峜0Ȉ]Tdso#ze~ʱao>c:&(o+7'pQs y4Ҽ;Ҥ1f-EwnY&.m-w䏨e+arĶJ 83K&zY e{㛺9Ι^-Yv U!,"ֆLFe$bGi;Z5a]AY``L2BPk *U4=PL0s[Lt8~bL'ᨚgu#}!!0ɶ@l]|x~J{&tαHA?3L4鱛 EE°nIZ]|b3ycm͔PҤcU-N5IO50NNx%)#}iU]LqBjC]-La |CxmIk`FM2>uSe#OUCdj3p ~I'PJ 9rpE,%XWb5{фы|1?ZlC_ w3SS*Ǒw'S#J;}.WO6&) ADuS:d+*[oL 0Pp?Xq| yqwo˺IJK @spͅLlV]@{hlriz~A,d%IIZ57UyB|wjav[fD0,HS_҈@&2~6QiWl{ok06ҥ0M?xPfiz6dj7_qbj88f\>->J˶9 BƧav2P~W(_vϕm `L!54:Å:kﲮAgR})},"]GtшnN4.SOrϦ6͸u4yna{rI%XцWx!]l 9p^Z]dF[|]lmۮŏ"`nFZ)v) flc`M睄̥O ]oHfy~Hӥ\r#^D#a 17)(9۲JuhJT:dT̯1ejPkZ0XF~|[YgzDwF>Bݛ'ݒZiyx{ԣ*׋3kANlDз:<55$IARn퇎mNxmF#YdVdQ`QVJ>R:åחpWZ מZӟsfؽ܌y5X=.-A(C~{Mع0zw*]-&.A< n7FۍUoaR@Y  i.ClQo)HQCf$Ϙ|&ԁQ1tȠZ˗i?y{鞆T{t&8AQMƮ"jU{ً$ڈePKEtRV!Xz_U@MUv?96~5EHB[oi"_Ʊ6 d`kAZ3bd=.}|85<w^O/7X*}E tTRSo!gZ(K.ގY/y7ͬ,{B| zExE*;zԱ #vKi~p#'SO\1oh1*X>_rσ'w=o-(o68pApįc5 ݆[\cL-<)gbK?,uKU+^L0r!L*22s&wA6=EߥM`hX,XPӥLYA4+Q1&3H=KQ:R]}e9ǒ eM) ye$e+ovnyX [ ׅW< cOTPBy[ӆ=d|~X5ňT ^ Vh1?׉ia驋6T= )GrCXD9O~߇p#+ޘ7gpyۧ'jNN2_Tշ5 H"hx:_ЎKryn8mfwsxHq4@-OLbfF_N,#m4\R/mc -rO\@1V ͟y(MmYJTK9ܴ@XQ0SއmP[.:0~:-^/N?x#;^jm4Yt"ynrR%{]xDY\Ʊ XYքvU,c]k9ֆ=@:Ij%Հu+ʖ?mbDD[Zan- ~me 7~WUhHlĖZ(P׊?.od* dz*r哛2hL-VQNMXkA( >E@H7UѲS Qcx"ĥ0f"d?: j"~I TeiDZWk3tm#b.뙆Ȫiqs9 t)LJdia,, }LHhF=kRCĉo8Vʯ7ϋMv_8o}X^ O=!wChWV(5 4ڳOBHĔŬH%@w@Ҽ@dO0m*ҥwӱtغ.ӕc]4ǯd[آEK0 gRi"""Ǒdzw<ihHp/ãGF!|ui mq+7X,ILG7Ga*wQ#pv 6oIės 4v[Cú_>ft8x aJϑ.cMy M4X; wrL-plRN rQsA.ӛ{B#W$G=t0W_e}SzA`8(m9!"Bm1ePJ~+GRЁY\˻l~{2=L:eAW+.H0O3)K7LRQƃ8N u_OFV:ʩL~^,cY ih bAwߜn7JD9aH㶓K*\` dHۇf =྽\Z{{ZgbCO3L(@Ը4*sIM`Ɯ q}v唓4Nbp"zT姵ICP͓"{aiu 3 ?mU9Im_in_zQ.m&1$VDǟ0CfkJ+R.FhjDRnf̔I$uxjgq4 ՃIǼ֬k:M첥LIBph.̪b(PJYxuC:*L DO3$o߭[;(Uʞ |BS`80y>n{&`}99[NDhI8DqFEMsF(&-e)|,(*1P8qC*OػYɼ*}^UÜ;Bz8WB7xii Y9 "g@ΞF+\\9RYD";1e j o(D䶨!**'P;5 ҈oxzI?'nb{d )8^"[9QGz"(Ÿu.ӑaAX#1L[v}}6OC:R4Dc(DCvEǢ*%,=Ѡy'pQ[ ( A4|&R,Q\_%}.zvx@ fEwPsXb])C(X 8ƻ^ViI[E"훐H h#j]l|as&ߓ Wc30zȆcr sI2)kMgnZW1 U%㯪Lp rBٻH"E !IeB #zzX5@S-S+x(6GL{@]z֠K~!b C%c%Ͼ=;oǁo^ro2]/_xpXls1buCO)ز>7$ v{|l*S_]!+렩i#l6HX| l=#5{p("ƨ< W<( -[%kErI:GĨ3{;'#, HzKQ6AZJ21.E=xP}b|`i[ Dtb51gB { {gO}Fg?-DxPֶN̓t1ԭRαpc!5Jʢ,{lؽ M@ɲLC-!\Z,1{[bqzM]5S͇5zt~暫]r]3@>| w< |DlFBbeŌ]u&$ ?D"+Pa6{ж}Ul*ζ kss8bJ0M 4MYN yˏEE^~eNNvͰ9oM S%ߓF1V0`Ҏe씕gvKh\}^wcFN-q,>9󬔆>\Ăo|_u1 Eݝ4oZכ?)d41uW&rN7a)] -受p_7>\ڣP*S=e#3f7EhfW1P] *ԷqZw9.4A~$u'5#wHԽ0z5h‹ncNvcKp3)I2=TyLtv*bfW&0+ι 9l,зcدD^Ki1Zc\*.Ia.V?NK:^)#I}4":E X` vTVm vS(. +k)u'ثOytZ~j`ݴPTǑ^ū^)f~5S%n8ė2fp*%]Rմ%S+,V:9ׄY,}rM^^g:b>ڕ\z5zl~1$(vݎof^-!ɨi*}_\oPpX tvfVqى<`Լp ׽{"*,|!~\|Jjo+8KOiQwH&{[ tViٱF{O79|IiQU8ȕEZeX q#])?\ڐ;h0 G̰gjR Z6hޔ`GQJ Iøfj۰r1^;8$f$r|wXhbEv)bvA!dXbiƁcĬPAb;G=h&6Y}@s*eHiQݫJO}36vS݊Ddzm7dt._f a#(a=$bƶk*HV_ң?Pl|{OF4{.H%~;O>5a#9@Vw ކѼ!XXKn k|@3`d"G筮EWT@q!Ѧz%Ȁqb]ʒ%\qu=7L5!fw':RW9_C@`/絛Etd2KOjB1,MwbdFyM&[>5}J LO<#1QzD~&[a>oV!).n|3$o4}Hߘ*qk_ E{Nљe89C :bl (<$vUIUku ir?<9!΄y|@1ۑl eI3Mh*\gx0bWRK`Uhe/?@*Vu"$2#Y5똬d&N6fB4< ':g9dGRUdvKs1s&GۅYh9Gᰠ =ʊdZ -rcP;µvJbHvgXjы䩫Lar\`,\#7}מGBHڍAjRGav?WqJ5[t,qq>*=tӖoVU 1c=vB40殟eBPpJݩuvj~Ϲ3l6߁'=%0FZkv:2եNi'avɟ%A| =u03z_|TŞ 4lT!܌Ŀ+Z!%EMTfjtc+εnUk6e @TIL_0f4?uOuHLt_aƨ733/.A-gs5@7B-¸89]LªN,l싵@1A/cd{277ަI Mvml Ko$O/rㅢIQ7 -1-fj@ G- ۥ5]44ЉϽ VN >0;vuPA}E&#>> 85G>vzA-')/'11A ZV}q \b8saK%oka,_FIɺdKM|f g c3>7Z!NmdFdhTӫ|lv}ejsŵG)PނJ b8 sNXLds&$a'@Vify0돁ǚ?-%-A71dT-QIi}ƫwZWi 4qz*y KOCPν#a6%}F Aم\PlڭS,LȌj$E`̹fMV Ƈ7% S* OY9hP ̩J5/=)$[u#ecaJt7/+DKe;ʈTǃ +aEiT? [)V#HFIdpωWm6JQM2|vM`䛐 jÁв79=Ge۲˦lD2;l#CXf!Hmth5FP8rYlt]iTTFj%A@־:Ǹw6;ckԈsWWCdU*lBE+rD5f КOyיW s< t9XB#ͭy~az ]Ra,nd j;TGOY6oq&FKQF=}z?xjogT%Pн/?1qhÞ^ {U4屑 Gi&`"5^|F9:(Fj'Mr6ϖ߬:T`ǿ}o͞05.9ggjNX⣍bJڦ A>A@!NCEbEbA"Lh$!-`Veӆ_D@f掫heF.`"p) 62BrZ׿9^rz_}n`u935|d9 iRJl$٧@P<ԩX8e~ /;pnt c<`n pz8M6Ӕ,Kw؄ ly'×B%`?xep ziL|"P vu=J;yg_EsiU`TTm5I{2Znm47 S/ߖ91Я q{;nzBj͔)o7qf2R}f+%,fg /a«'g1>33l~yS$b6E.IuNH΅(DP k7mOi-OSHp;8sk) ~[Y F1x&lg_`7Wa(-⣧|1ZN4YSNȭM~K1[ݿéW6H/s+'&c-R'ߔ KN*T6^'M-_ 8r.) UX䱶 Rv"dOKuI=TIrt9mtWW(i:&_\ Od( If)ߴho`$fAiwD~:$4:Ek2|^Mq'WLJ]jtNWZG[Z~hyxE5x(xUܼ>!J*$+2>$׵DXS7.hR]7MsU€|wx{Z_gq+g~ F x,^.3{!P1X00 ?~4$n0gu%e#iyd-JC:bovRV/ɴ"Xa*:k;Hs E~fp-NKvCҮ'(>N]U#H_QCaƚlq TT8?T???4@x'D*)̨/{%AF˙GeHdoL|eѾgbR #z-*|SQK5?t 2Q#9hICq0S WFk1chu#.^?GlwhWc'èFaWb;-標D9//c5.}.t MJtm4ԍ67,Q"r9H&Vŭ4+8L19('m0wK7yMpމ*+jrJ:A"S iث?񸺸6 ¨/Z&:/LiFIt ŜFTSD87R f>$'vEV%4mۤ[3~DԠE3<ϺFN0Zic+Y5#A68譲gt:y;4k잀-(,K | /.!U|s SܪAލoA޾|Kŕ`VKh*:wUDc soz~>eqYzVa7&D)*5(Bc^C.y˪v7moۆBucFDn¯62NBKz^"ɻ6ڛPsѝ-ړF 9O% _{z 4 7Lg K /g2Kt/޺*']M^J/,@oGjәv2 )@Xw3&I~V95ɪ⻣D 0Pm;dн_g<"D\`TmK/u]= z* oO{ƌW ɿiS2ut4==-qzƌD)#A)e3_T%oktM =c QO]ҹDMy+3~&/A)ŀ0y7=MCTH*[E @ .sKڦ%W>9`zbUȾy[vi`&lKzW;,( kBvzkj^Օ]Nǀ7{ F8_e~yU!F{#8(@v Ҏ>vrn +oY"8"[{@G[uZ>d=| '?s=7z 2voߧvʚl#yzk@768hA s;%J鰃t&@ T7X%}P{zT,WX` ԛs_9[ފI QceT)"vTO%FtlEfv^32Wh./̓B]P75k~Ԓ#4vbtJ-N|(Hȝ%TQj,9,΁Wo4El'wں,X^~lv6[H*t~Y-2$@7sq26>f?uFKz8n?s%t$ΆIUCTK(δ߱ b69f4H."IDS5# yNPމIyX5A93җ\O4g}ԨPz)r,<ƃ&Cc$@C) -L y9v z?POn/6׀УV1'1*^<]N_gcq%̱ϡ.,+㍀`.Cĉ\dB$[,\FMM_t k4h){>j u?c&JS2K`/deF3'jDc-Y~ɞ)%ܐH뭳2co[ZC6y-(çKv ʪD5+yaf!Ln° zf Z/Y0]( 7tZߠ.(%Y;gDbJW-$(qWK5A(|GQ×qWq +Zr ud) CP:ͿD4,<Đ.L(PO(ڵc~hC2sK &០l~3R(H~x)Zoq({1L 4KBfp8-3z.%}KxʩŁL]ԽH@ah"Y}~̰ĨЪXB'Sf"'ɻQeh U >2`g4U슓='@` lN/6G=+/ =tb7=o}ܼxsS^>"ҭ5~-VnMj|%ςqThTwAha[F.tDFMRӉmw}YA`)蕐W ]hEj3lhfsm2*4j-7>=ݲ^pdW8:s]6`m%Je nZ&O''Bwcª.{-i,TQ#1UUDHi҈,XW"0KLqmO 2 ̳F(":i30<}~T@aebʭ"p"MKG#>i᳘'7|0#H&ֻ2/a0ʯU-7Y?J[TZ~Ȍ(- XZNVx片biŲ HRg2*M@풀{FfFB);(07QQX/$btog\LHYei*gHN+PqrՁDě%/A5\hʃ /%ބV+S'hQ/7mD:$Hm>mN{sd~\NvWB˖]3~6usgˡ쀥۪&P;[<_EuyXAXC-;qȷp2K'<6ƣGQX㎧TN2Κv:"$e3owl(D;xEqPNbN+Zρj 83 O&eAU7&KmpHw8SSҵ"yC3vEe5;5:f-8bޱ,~*Jzih=K?=\҆ѲQZb70gtyK\&:sd_G"^#!ߖw//- D#&ؓϗ)ܔCmdw[7LY&TlRn:qvEPu*6 /&0Px}}YG Y'?_,N<鎛G<Jkc+;Hƒ߿%NJ=xʊ<9<и X3ԋzJPsه|̉.F#AIuoqtm`MAJ#aQ]`ᙡf7N?Tq.:$xHbdn p9"yLMX3|xhWfuꃱˁFR0$GUG_;"TeWy xchf"h,WHx=Թл -vaRu♜"1ٝjZGLm,BlJVs 73Mt.Md=&+:i` )ʶ ǵ< nZoekMb+\?STtFz8۔E {2}{VA{q7qj+Hn'd6ߣġ7fa$&Ɨ]IZQ O y4]j'S< eQe2LŦQGXf9[hJlW2ۖ[hS9Q-^<{+ESB \HsP TP>NsJ'޾ 4eL%/*t;h/(ܢthԟDЍ˹V0LLdT!gpZ@ oH^Ig^'з(Rf UaeCY#j߇ Bd9N,j1{Cd\R,Rn ?bxJi.纼r> D@i8T([F44“GC[1&Z A%ݵZ4[TLuejAɤ\ޖmuF'fg"UmbUL%DTMDh[IՌ0Ӧ{ YqZS3M0bmЖ6y.m!2itw<mzLlC30Je0p, X&c(< ;rO[DJѽv̸qB]jƻ*Ӭ՘  oPV%yW6߇W)H{7(1ҭ_"g+j 0pN8 r]4kbYbbNaZͧw,ʗVF UP`xR 6dIT8%;ya9sPόr I)+A[$w2^E ,zQ֠Ev܁>Kl}ףk9֦j@w QPbqwE_,r Jz)R-v#T \8>}Mg%uxyDž[Dg+u9ݕ'OvT.ke ʿ>&(u:!R)ռ%Qǝ}逆Ao8"B9T Tu@D圼EJǯ gkv"~ D 3POˉwH/b|=zt}P2jܙF~ٚ /d`rʻ <]bp؈kB 8e,*2aJjA?$Xks{"MXGeL ^a9̵,0Ot/ɸ%&c'Ipf#rɌ? b|Z`N(۝X0, :y"1BNt 84jG#T=r'ЃU66ξ'Pڟ`hG ^%xZ*J[>RK96@ (Ezgh1zIik;",$`&W hGq\ݫ[ENYSF okN~kEO(܋mo3Qw^V$ -3;D"yȶ'j%L6fX}9ڹF PE"Geprq9' Q'סs= WSvRYu 1%@OR+&?sBYyu=VYS pиZY]B鵯Ls_2%)UE.ZSIy;b,SHa X("oSN㍼H,SA@;յ3({ zvbfAʫ u ⽴c 3H{3*@ z P^MR̬ъ==A!dd: =aU$EDSՕe, W(P b>u+},l>{q&PrKy% }e#!HD1О6n}OI;->TJwz`J\QrXl:IJ׵ w(J-8եo.]`adbr/.s-~= PёVZ۴,soH dԐ<_M)&8`@y' [uN"`!)|`F&Y:> 6U/T Qb*?774BF[8 &JJ1yqW *hcB8KHJtN&Q|3zo.b7h2D]H=;EOcϙ~A5?N[cE~ϯB,ڸ9C(>2NJe#VsqBLh Ps(_xIJ];|^3(p0^|?wR#@cHD݂5S!OGi=Z;RWh1 i :fzI`(d)jVn`ҷyRDL3絝4)T"2C1Vt.7XA'tu!' dL⾽fF{5; \B ODfzȖHPnj< N["lh ƙʕ.]⦪\cW+ܘxwл<&A_rKa@xyߣ k!hOXx6AT3[7ķ;y ҋS`AvyiOQ7|&h /23F!I + GX`! ڍ3Mo]jNxU1~5RB`:>ۦyeO}43#Jg* [,/ $Ї׻ӄͅ:`8+@Se@[s/Sbj 1Fx۠+)isp,<:K)揁_)Zip`oL)+ܤaEΈ#v(Qz~ P0#wޱe>*4a>TD "PT`f/LCl94ezƚ$B_n6(cFmP_xy/&J tNg %YyF-eýhyZnL*Hf ʺ8J$2Sr" 6#Xhs*˴x[adcWa؁ AayTWЎf'U#9~ȿ C[WtCQF۽,{2yL fee&'^5j2m`?l4" 7#FМ")a>qBqsIVNQlg7'#R1LayP w3eskV1-ž%{n_ T"qbѻ$ǥ:EIO-cwhJr2.5YC dx^T mAޢv#] . ob7ዂu;Ɋ6e[+nNh$4"&[yjnmIqbqx pNoYӧx,ԍ +e?D&BM~4Z\!辕&hG@J^ovC?dwqX/oL:>*HˊE$<;GEwg֤ÄX$vb,:BP4.+7}PL+'϶MWM/Ք5n8WI's6v)3>C P[bFh`\uCo> R.tZLZtX_VOW*lTwá^ wSX_4laب =^HJlё6 O cӂBe?g06u6WmT" hC/ ZmwM'7H]ߣuꭷA1[-y4g]}|omd[7)Ğ([VFn2`L7"@ X=b^BH`Źiv9 O; Ll -1Ο =\ND\L5*g5Tᰖ4B_YZ'1C?v{.uGF7dL>іbjEŝJl]&7<ת` և- c>sO2,$gaa0fZ;A8y6\qD<ߥ3o]AlNqeZJpjv> 1d(| YKq/3O/<7M(<&s`a@VEHl.CK;@Xa|T0Ifpwy|8EPmyԼuvtz̚eUeGy8S*`Jfl?k{VBS/ ѝ. ^_%-(;*`cYZkbLp9\IA!A!l-7\SՔK`>2rNzӝ1{ v~O\5?.Zg:T -ƈ ܵ/.Ӱ߲3@ >U4OZO2d 6;TJ^Dȷ7buÛyώRM%e&Ry9=~ Jh-C-'ͺQ`mU%|alJyδTUwj~ >EdxC[WC%e ({(ƨ%fHcWq=~5EY"Mؕ\BƬ4'[-ƽL:+O};2h6z>ڡsh^_6JnJ3ŝW7F I#)QjG=cGlgvxMq),+sk;)1:Au 'pMJ1516B+s ,; 99n{ M5b0vz99jM"8NCqZ3lH"]00t: =|᪅"4B (!*y?%4u"aw%V3=FS2ng"qZiXUێ8i1'u龜`nh)Z݁bB6Д6 [/v:Pr [L[G/ -GB3;&g *2U!=-&tv5n"2Cב76NIREk[f@vs9V*$Xߵ\G+Y xoIn4W 矡Jp&?d5ufC7k%<|ڟV xX`gEX[t^ m^di a\azkV"㙲ݖ @(T>>!*lf'4|7Na`@p򅐰*5 y>qy뫼'4G\D;I-ud^ K$wU]=f@q>L(ɢ =siZrTyS^$GӰ]K}uҝ/ToXʮ2ݥb`9ce4T]c$ HGG>oWX\WYъ+<Oyf]8q%po"cA{i>H3 {~D^ؓl֫FEF d"',%A[&<1>,jvg(p$Xs`wXLKN[S{gar[ЅK$sɟg`$fO!9roc2magùL掳T!,Eiv"+_Mc8( Ij;b"/V97?.bzݳ#P8wJAxC|,T,Q |o?қ´Ϧ]dsgZ!wDU[y ▹`ԑ"& Bҧ~1;a4A5 !BBkD8GwPM~ŻJ\YjSze\ƕ*yy zmLy9.|b`<⹹[2r3| V1 5N: mRkd:R-_\qp/L /(y~ s``T[R0rÜkYO`% XP"HĤ(zDeʫ쳘@whF_8읟nIP:yG ⮣2cd嶣}ckpnF^`hJD[]S:kpvIZp#W,>xHVHaލ9Kyj `/߉";Gk,O tx*`={"& pI@:r=Ȫs-3E~q w>inj3v/hwqCPSw f(, 0pHd\B0*&l:#edg{shoT~VX^` UGmh)9.Q-YZwdJXO!ƦBJsL (>t`.{mqMwd`W_M"+L$ʣP}1Y&HzȦSvb0lVulOD oI39)-/w($}/rH8pEҧ{skm$\1b7zFz@_7,fCXP}zx 67jd}s:wr2;2k~R\jI"ٖhOiOb= `Tiz"zM2$&;$׀YGk1S i?`TץAp!fJeJ)" ~||J› ɾNH~0+5DiNegB+@orxo")-d_V?B ~s"_A>n"<03 G~.`$I%0?n, !OI)< VWy\wx Fho{m8"DOd!]{rA`F\"g|-i#T3 6[3TB+ '+#~لDCv⎪V&oWJ86xr~n !bTFo }㦽+N$\]}XG,P?t_KT@mTI娓dˏ ه w>؉Q@^ORpiIPA4S2nu;}zZ0Ok[jeN94ײ6Ry]פ5s03%Nl6}&[#CG%&㟩` 0w2v[7zrTxv od(  P>xq^)P imp\ T, (6hqVsg'Lts=5*RNU5 Iox1[_ﰃK ;{] ñ#I/biQzȠP@{͘nd-Xx5doQ[L5}ϭMK_F2tDMӽxf›0>aqQHpChFV3i/龾l#A^)WwuaW$V5 C ,o_/ Y`ViE Y=*[I^ SNQe׈{KMY&g}b-ˍ⋡Gp?G@=գޛT1zW+.ޞ#˴=?'G*[;{P#  PMFb*t'^B1B*5ҕօvYqPNMTfrKc^j4f!NZ4 ݌[DDGvDK ҽv7۳lRP#OjdP#ug^@ r0 juxj>ӥxɳkEWyمfWt`^;N/INrM}RkR7R&xu=ͯ%_ IBIJhCa·*-ɛʝ[C^['7^R>1,p]jU!O/gIq3I\?Mhh[Nr+,9Z{狁/`3H1Nxtt<܏(;uH/9vl^7:Ý0cT^wYZEG *m7R[mv릹[ɪ)? ^d-HI\v#,8Vs:њ^&:B4ƫzp!rPÃV@R⽕!wxSL?1$4vEKrCxp aeqd'Vg<\|C;X/!o\˶KSe{s9LP|s@΢6fa%/Y"vlCClG`fXrOgQ E T㍧{uU?/i, Y$TN\L)%̃&ɳ_&*NS||sG竹u=qkӁOŹņxqRO\X}''w*_.跞x!owTeA ^V50ˎ 6ƃƋ^zbFn E̐"x)0Vq8>aX@\% Qt1t+a\KoErxMW=$H< k"nf5c AVn3a\z %%.Θݎ?]q*ONapv ,=21{P?f$ڔIy^ h'O/:)ɃMA1*.O2Sdhz9?ew@w/7‚2Uȿ9]MLe,k/Hd]ҋ'@f%c[Q(<iuqGP lk7EW!=; hȷN5(N750btMH_%3 'ѣB~5 m5?EWBt6]O9 '%g+ոV!!ztK%y5H^"BvG@V8 o?MҘ蜰~rf![U\Fw-P:XvUF*E|,{6:ˣq>fܹ|*捀xjF=E'ٱ 3 xoVCX]eӚ ?Z2ӵ=xs6A:((8[cRwnZIՉIqR?t[ƒVT&m*ˆ, 234z.8=ƍw5gC2[^M.d h|y5!Sχu2zai;)OqhӮC?o_k7وqDQB'Z snԩw?q\6}`x6 + 7z{wf %/For,qg_<}ͤ'qݡ'KDl<LDF`tLm^&9S܉Gy&.iljFɎe`HmZ!y42j)ɑk-[=MzC',fA308Nw>v7t  K C0jV$kvb|)j3QnMƦ "VZ9Z;`ŠzLrZӢ:xf^{$jB*odm p<6#7ƶ:.Y#Z22VY31k#ut-[[6Ʀ.ux~XKǓ3N8V,($G'xVCo] +t̛ݹkܚ5Jۆ4ݘ[$*-%r2%]I}2K8wH\JmP֐AvJ+`(C>1u-_r {@[uF( T6cx%ghSDwq?uS"Y]%HX^d.TEN4[ޞܞlg0(vㅱ>0vWZ6#!L6OĄ\Ub8bN"mf:hwѵK=̺97@O7 !-6Ko 3$\w7<_$ǵ&C; GP0p(2,#~ae ]nZl˰IϳBhQ.BQYaJv)Dy5ä3'lAFrekSg~2.pN&BkB1COTWKǺ;%_ _Sƪ(X@{C-=ϧ-)?QA1n^Cp껐2se(%鿷e(|5*ؚw|im3KKt) ZÈ;wԟj1 շr'YUy@Z u~Kt<9ܕT{XMcb,+Xt`Qj tHΖ2n BHI=NF…wG(j1ތ?i M$NB!UZsh z`^2 imNddׂ M+3jN'SY\Ը/-͙](fi yH/0ӿl&J=cvɆM4ҏTMzo fg.b'ȫA5iZ+5,xifvޔ&h#`VIʘܿ-׿phi|`5F}>E޼:djɼȨZ@Re4ϢմV =61.& ~%GN2@f'AJ۲eb~:O7crdiT%Lߝ&<Ď-1c1{W8_˘O?tFɁ'g.0܄GR l5wh6gg}- ߞ&X9أ$va2 бzJazD%OhWA\[;觻@ȌO ǰBZi1%׮8ŢS͠8Q:-Hyx ׁ_Ĩ9b(a1at4e\zP t?VJfמ̒$GK7XlqXكlbpL`a:s0ݧG1Q(Sۋ*,=df]- .|_.JL4* %/t~apKz$ώ6,Ά:W@H{x𛝝)4aTV4<0oyFHx1]?%)7{u~CAV"½~/P4ڇu]PdTE*l%#$8U2Bà X$4I"f<md&:OJaN 1%EcG 8D<M c97=Jˉ9SedO:n#1P`vxz`OڗY2u~hWސjHur ޢ狥d񚶓SlgQk%DZ"dګ=8b#x;(6@Rc9wCiF` ů>FV7VE|$3a4" &xq_jgY8&) wKUWUԬ J}viZ$ϩI$kG"ERя{`֪&sGv&^.gق&͵@+h/ ך<.cvx~KW)$1vבoAP+$u#׏FTg)q[EdFܘmrҤ̭zV‡x) lk=jc~)Wya5{Jw$ > #f @/ |]~K 4G<(ڣټet)]]2aeI>ՑO'iteJYV{NMzg8h P)_.\8!xN߲SN,08$_F]-s5iHߒ dXpےR2Ӂk ${C/M`~O02< s x?m1 ݾ@\Hf+Do{ltJ9XȄ _fa%:oWjU cl2\J'G:UrXm_>Ċ!xV//n/2 LDc=qEKXBʖKST` {ʪn>c*D 4{2pZ,spw,2:ХV%хF>݈n-ZJ) _bϚOЈ{ѫٴG I\#bN! K96KW3@;Dzp8 e'}?r#X]ng2\WB4l"vqJ—%+V!=uA_f47q?+Cj8f2,bsиkVz`يAԣib J3py.ƍ0T /nI_4KM@;q/b^bz# ׌4ciP83? Yk^MN3-\(+&V=@/xxke2_uCIIK댹(6Xp;b^b(e 0G)s8{1O=^{qTu14F]uo嘐P톗mJt&^t^p!1#5s$SӅiy,вzGdqdGL|u& `Ae:IHOmLVQD7@(~ai+p1#U@' M(gcN@]ON}B\|ZTjm1e0nN#lm7i;L{6u kV/CaXB tT5@y)p:Y jdL7 +, K: d!j7*LosZL 8?zjKxӣv7|OCp[=Î*=o~_ziINNGc ;5v5'yUKtDŽI1ʰf6zY#T+iIaDFC՚+0zil7|E7ERFZ2g5?=`a:(hE A0P4VQ{]\.M?reKPRmI%poJVy=wEIkejwm"Ų$ltw1sY7ڎֹ{+G r.*1jCY~%_XA  _{Xo a-INTXDf .WA@0lAX$u&A9񧞖u dJq32O_ZiDC?-suh8*Lꋜک;(zFmQC_yMɒ4e.CL3X? "[IB$`vW`0T 06j-cԫ쑫TCa*4a=7ҳҷ$JYf){L R9x(!/D{Ag?[/fݖ0kB^E\~oN nRYڻki 32 ]^bY²{=cu3V:&EQ.S7сPIAB ǒC҉tO  c1}`IsN%Օ:zq@)_]7zwY9-9F%1i&ΑE+Bhs }X^.R '0:?K"pX%y >> ;-\Ҧ`+RmpX C(ׅ!>g U?LR Ilbv`o sMU.]YoTҢ GU>[͎+pA2Gtb"$>ҁDf v8lَE4tͱkFHVucz)Pn>ocUYCD%;3h,ѡ/ /"{Z&.1[dT>Ό/1L̶*Dk\rMO< ?;K [I~XD}I%d@O3fg0E2/=>6:)s:,߂y<1pbL}01b3b:aKӅ%'v^ԼmtZ-dz8)~ܴxIџ4?šShlW|v̙U'D+h=+W7&1E*O T/B%O"^ڠfނ}B7l_F7b/1WŸ. PzȜ}zcu#6k/nF3O{i=`c/gNE9d1`e t՗;{&E)![6weUFé\p<+͡Z 鶴zYm`fzPa\NMgd?1"\)5`oF@UrJԶtЭt8+@*KY)A 0W '+ Bʹ%{fɽ?a|'Ua\(m?ھ3m*NpiQ@l&h$z']#~ʰ +[29LG_kX;@>H=A:92R=Sd,E*0kXzѲH_I+{r̾qw鮾FKlFnIN+CxBIs3bze\B+2RB|TB])aZ=&`_SV<^wJ>G>׃!r#]se!=-jll #h[~6- Yv  h(9U,x e6(m$n=K 'qGAGFq$q^ /Dvk+#'9=0X?;BZ.evIj?m[bq+JS]R||,8?0osia > T5%m-X!7NC5* ve9%76)GpwP Un=tնm%z`?e9$܈֐$g CvfdJPc!g@]~jF_tbgII0;Xy_N%e×Q0͛5 o<*ϴ/=~凡Ocq Y´,b|Q( 3q[ޢkJ}T׭6hEJTϝCb %9x&t$\bMN&~f]<$dK(_TN$wv8L_gh̸qbsX8@Mtdԑ5v'3d趱"ڧ|d?O=TսWV#͂$m *R2]膬Z1)hI~".( eޥ7 'sL dnG5ne@& <fa"~5h47Ħsk}ЪwsAb3k"4^=/lT5hˠ*f3!IvS|2IȄ&8C'Ţ]Ւ*\ arn*/cFߡ%̥gb(O;9$] <>1T{ MbPJ5SqFѤ fk^܈5U'lH%4fܿC*%@P'm{h~䰤Ftmh0Q<r?yø?dvm34q+TiҝUtQuhZɟͳCN.F@>?M Q-U񶣕abF\ XؓHaOp[kVuDRdWE.#u,5&fGo tweԖIPY/%Qh'}@uɒR(2& )t"*qgh4MWhZ5Y߱H3Nf1;cʪPwcǙ4/ tYPSW4wF`c6ͦ7kŤTJKZN41vB8%h3<\`o׭{#iwPn7LV;4)u-bs}5n‘lsE1TP*萨NhK;"C}y"qzпq]X̻gU M]dSU)`g-S8p_-G?(jW> REAV銝GR۵8#?cCB9='gn)46?!Z{(=*(S$'`k7i3E+wų ٖ>)t.Z ֎N~IawX;#3h)#O#Zj SXIaׯ3'X %;ea6[Z$ȭ4ZYZR)9Ɔc_,' ,(T%zd¾*qu6jp-CI4w$CXT2Q8#twb}3Ԯa]J5 d%l>:Yd@Cv9m1~t`G1Pe?n[\LVV`584E*e+FXZ4:QP2PÁh+kad%rvaȓ-4/~xT(Y''ZHOnɭ>(5O&Ep ' ,p &MƤaca*E! t8',).1G+4{5,TE]gWY[$d[Z4_O@ ;}-vk/X/ug Uq,v~U6q)ӧoݨ}g ]u`yvi[![KKFRDnЗ u4٨8%jwHrU8[l*&{찢Pq󗭇n9Zkl$i6OX/.`󠡀>3)qH' +GjH_/\bz:vƔWjz_u" *R 8{sϊBge1 FPR-n< ^-\M5ekryOr 0HK} 76 ok;pRQ'{3~1rvJ$5w*)["fzg=RlәW b'>fmAľFWX̮ܜ< 5O꾬h[f_| ΥOi *_c>YoXSE"2STbhܲX _ylur$"=@|6qv& |u×PpJ?yrJxC~_rv{xD:H'bWU[*^f>KITm4#ݮaxc*@4rґ/+l!VRx-U61B f扼IlT6Ճr_  QK+Mҟ?۲JЏ^4 Ccu{I^ {:-cb:4a@|ɻd9/{`-?#jNJ!e=8^x1iʹ5Rt8bM8sz4to԰9Ϟؐ@HrNw=5DS¤n=07KO>d)[ a=-P:yQ[Ul8X2HE 'd4&cBP<(ai2XBo#y)M3V&ZM@ioKz`b&e/ʍ fjW=vWE=d8/v S v#.@UZ)*CL=5u0ox.&K̥N8zaOE$[W]hr2M`"^ 5FрL?\ا\SQA1ݛM#X7 a£4x:ę>cy!115KN@1oI]nClmzv/lJSF/Y13\XI8>J;;``A8.hNqHWчlʇ2 R?spyr)"LH'@3 @h#vEERf?w2j;; X'=kBJ%SPֆ@<骰P*XHGwGPDAϐ!"@x6JbF`27/]L{ky.>q[tbhm@aKD \@XOQə|=h! Z37Fc#if *l$hֲLE(PýFӬT?{q.x|'JJliޏt2~"m묝8_7TC(DVS:7b4[^:i(jrTǜRMLSͮTdJΩiůJszi™_Ѭ>|IJYɋ'G{NS䔆Od׳n$<k홑&H!N6^[b1P􀧁euޅfZH7FE`ij6ә ͔1-ťgE̳CdϙRf-;Kw=vaMWڑ  A+EIj#{nx)[UTfqlYG z+/s$t'9RY LԴt׮d.EM]( wcC?.hN'TMZS)y~v=l ptNՕ I0ϋwÞ_%x}k5^C& F%&zlX;K`l6N6#1nFk`*,z-L 4B o׳B ع!c[10\m-ʆf ЇF'U:$]I/숬17o;?Mc .R]R5fӤ*ɑ+ b4Sg?H֏{Y _y0F%D6K+ i s鶃ĤYԫ Q[-?b:RvU* wjR.t)=>=eg%+KG,oʕuz=$yu9--TC~6?_!8䜂lh~N3(o^\ZM>ӛi FP`gƤlX,9'`8xCܩu ZD>o7aUxSlIW+f+I 2YE"T,d(F Vs$TΛ_"J=k΀e>4@AgC=ahaU%熜40Rtf>x4_8'%pF%,\tbmwדncQV:eʊaL}[RPVrq-$ed'kK0j4NePnw1Ay9bwZEzAa ;Ks=Y8byyГOHTž>į=MO%r9LrO2_@q`=4 L̖ujg@~$WrVMkox1F"rd1ۭGm)$_J̧)ŕ|opO5 #lƗ_M7fGHK'pJan&[lO|/^4mύYo>LTITUQO.#jZB:81(ؕ:`o+EGQH}q`Ivϔj7~Yb qcBlT]uq sOyOU/CK6Xސ~>vڷe~NT uܩP揞;i:Ike=\t!Z b}sUG,F4a%$ Qds/ $TMn W0/;7Dś|R⠝tc_o:grck',rjݤշ0E6.fHmL֝j6Hf *Fܰb#=kDY'ᗧc^䱧Pqli1k/*rbӶ,"l흝Z 㦴*q{ώ޸ߒgИL9 M#s#9)} m^0j͕\y5Vru L@b"iar\`)Ys *UO*wHb›ieE}E5GsE%Z(8Oo3 t>>$%wRX-ݔdWK'dj*@Tb]Ŷߣ;X͵uQX4aD~ƥ6-õ9p#ҳX}{nW#n/iߧW t ;Naܷi-)W=*ѼV7R"Q#ٞlya$$;X!uL̏dޯ,4Me_pmXwLlb 6i*'cuKe_xcFL7NE>׽GMIud^]I9h=nq'rF1$)G^D I8M@~5?0mv/m,K'$zRM/'d'݈W.,Uշ<JZ)^ɐ r͓7=|o5C G}J} E, u4ٜ:Ic8q/k:;JlLP:<@OfƏߝI\x@J#'Fa)erIÑ!n4EZ s7'̑yo]h} <Ө]mջEosvFӂ@}Rew>uVUC60Gwř># :2Xu >kMWqJq/WA˭HrM@2TnzJ9v/3\pNKí\뽨)kߗ^IsDzr]5*Y"C-2qqaEpBW2HXl&I˨b:~% q\&w YhjRcGJ>!AFM41x2CPqOSqb5EL r#\T3gfq$WwCs6KchʤOYuM|'g9n54%q{ UeD٘a)RX -b0Czԫ,H\\W,rhUsiTISAr{`\(dGvFf3ˣw{>WX>9/|ۢq<ѩN?؞zOCBt?mݥ\ע 4$j?Y]je@&Q)'Av<癖Py3ޗ܎xK-\m!- 3rU}? qyBemVIWŰ1qmtvy"vXgίӓ, &@#)T݌gm_ITmG5@a9Op0h볊T/5be[|FQlT *l,)ikAǪ6C(2M O9}J6è}꒚s@7u X1W ׼~:`?V6d&PR`1* T 6/Za81Ǜ9'{$7ARz(MfwΧ`7E2j8%OY?6ֲXv{R~bUZ"Ze! 茢~I@8vKˀUxх-ףE ǛOC:B]-AAng>u3-RnJ3S5wY7sWAmŅG>pLژʻ-,EAKl|{ 2>  ZP+k`ҙG{6ƭh$|* #kCK,:l|uM@\c7. by4;FkEp-SWVq[/lBm8WI9?v27^o3q N8^3Mh" ]\~)ųnyw(yP$d&l&ʵ{0jP^LڱG d|9vm7ng?X#w<*#_EğjR3:ZzF\U&>j}y62MQ3`g.Lvsa N7{^IuY`LG(^$2'(8* Y|ZGM);w| ƘIVJXÄNYn#`Kho:Q|&7fԛn*?θ5wOqi S]7qt0xD',9"fk=6'}C`+-^+n@TBm~Va~EY[cMY< sf.nu̶û$'* B`zc 2.K0 Z8Ȫv=ִ4<17O wж/͢Ult-%’D74](U@x2l iܠ ~̼%wfrs߽Ogz Rd0}\a{ 1EL53ֈ̆06Nt ΟKkD<"MQ 9z.0zӖ2:Z&ʵr;^;F:,}p%h}A|B|ǎau=z o߼ OB[&Sb8narF|W,0# l85J.4r p? mxed xnӒYWmQSӻM!s$;/[K m:(WF,0MT0̍:=x6Zrsf *hȠLhN66avLUQ%W%@cNQ]Z8VcW`BO\YǜJjɷ*,V PsxxHS^(YEyс%sGk $;S$0Xh;$LɱMWnz|9k{POI 3gu>A 4A rj ]0^ `j xHinpŲ<tE ya#E*XS DψluNjJ_;;V5i-+w4%,Cw `[F =ޖcK𧕡Q-+dRvjooC>z$D|(un奥ZgyW4ϫQ N$֝Q5BJcК8K2K#=TEAzANF̀`.ުflKI>Y\L. ,o\@A|#N9FG s")wK-F7ʕP 1 I-MM dKH|N% ͻ4ě5kFCq0{,K]S`G HӇ^&fBOM3 %Jw(|{^bKk2 3v}鍄h ;R{ݠDbwEiWEC&?Bƨѝ.0*aJU# &rUii,E[gh"OȡK)l1cww)_*pnlVV[-AU)+`m|۹>ͧI!^ɫ^Eo0SW*H1]5 0Wޖƚcᕒ+|=5k1BjioF}ԃ/~X{o@K+Zn\\ PcH2Q²,HϪ @p<|7qE%5O54FRIbYF j[wb /3]SED݋%w])_ՎwDm; 6.l<%^6Bb4.ELdfjFSyqrZS*= F=۽V4RqjOdΡ7@Ib$wjًUIv2 ZCW\R"9F-E:jhtV<. h+0WQ0Y@PbVm ݥ] }{a0:e.٢N봼y (%ιaS²w!JrnZ@>Г!~ipB4Mw -m9%\1`E}쇥] #E䱪Un'Y[j>HJO\3>釫 `"2}pq; Y~ۑS A;<~;.QNV0Oך鱢'cq2 BƠ CUjjAVIoڙO]:$ksQГvЭt^Lam% !4|%( xƦ!/}R"n}K˶WmͰR݉B.Ŝ9I#0ETNOB&6':%Z&6/@kmcĻٔRnmƨkFGX="zNO42tmqN7CR=nP^9-V+DlKBRYm(ƺa?rUrBIޯP~w//&VBpKWڎtU[٣ť.lmSk}3 ~>Sn?]Sz+TsΫ6O[d\] :"o D?]&6@eN֌_[, dn m";=jnE?~T/ *jjR1TKVSfpx?E=o}1 &>$"_a^4kd;|9rҵ_ԑzy/ &_W 'j!(+_3I>mٯ\/k6ar3^$}VA,KS_˜}gTyč!'AlQJ^] ٪ y=D)CB1"?F oBAq>+OnF;Dp]+V2((~S:*ߜ d)_G3f'gw뿑sb-8E~^0e# (.JOq! KKa,fߪ%>T:U+]k 5=@w?A]O[ٌcqN/jpy$7Nro$*=>_c2d f8a#uM"G.5'8?S& !rL50 EK+7EpSr7a0y}6UԞ,֌_@b"ea*qT pT,5.C,}SIS] &O& ˸ѧIޤQ/r}!YyY[]Edz=(_tg 1dz QFǶs 0kQ (?c4F~go8CM;V>0[!Ӝ$CP'=8rm*XEBU铙 ^GH.j2 Y/)Uιo?߅@"N/ms ^sͻX=^d3kFl$.c5wœٓ|R8s_kS*/i(* FS2~.M!1(#J("J{H"lE7B6+Gq759-.q.Tj-%-bMLFG1kv@ s~_w?>YJsʄig K{c=[9Ei)Zjk/$>eBu)CgyoզyhuH?^hR))6-E{∖Sbb& ] ÙiSoR>0Tc08ktyŞH; Mnzn=Dvz1x7sҜ.%=EsTʏcOܬ\1h;IJ~kLƀDy]6o}js)0FX&KF)ET) Z5{[R6Y[La$)Q_Ն1]aX! V oV|PiTJ˻w-W8$$Bl2p/E6t*A g, "¦2RzSG"V|j# VbdW11)>ހ5qˢ%DH}