aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/tree/nestedset.php
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/phpbb/tree/nestedset.php')
-rw-r--r--phpBB/phpbb/tree/nestedset.php877
1 files changed, 877 insertions, 0 deletions
diff --git a/phpBB/phpbb/tree/nestedset.php b/phpBB/phpbb/tree/nestedset.php
new file mode 100644
index 0000000000..8490c7c299
--- /dev/null
+++ b/phpBB/phpbb/tree/nestedset.php
@@ -0,0 +1,877 @@
+<?php
+/**
+*
+* This file is part of the phpBB Forum Software package.
+*
+* @copyright (c) phpBB Limited <https://www.phpbb.com>
+* @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\tree;
+
+abstract class nestedset implements \phpbb\tree\tree_interface
+{
+ /** @var \phpbb\db\driver\driver_interface */
+ protected $db;
+
+ /** @var \phpbb\lock\db */
+ protected $lock;
+
+ /** @var string */
+ protected $table_name;
+
+ /**
+ * Prefix for the language keys returned by exceptions
+ * @var string
+ */
+ protected $message_prefix = '';
+
+ /**
+ * Column names in the table
+ * @var string
+ */
+ protected $column_item_id = 'item_id';
+ protected $column_left_id = 'left_id';
+ protected $column_right_id = 'right_id';
+ protected $column_parent_id = 'parent_id';
+ protected $column_item_parents = 'item_parents';
+
+ /**
+ * Additional SQL restrictions
+ * Allows to have multiple nested sets in one table
+ * @var string
+ */
+ protected $sql_where = '';
+
+ /**
+ * List of item properties to be cached in the item_parents column
+ * @var array
+ */
+ protected $item_basic_data = array('*');
+
+ /**
+ * Construct
+ *
+ * @param \phpbb\db\driver\driver_interface $db Database connection
+ * @param \phpbb\lock\db $lock Lock class used to lock the table when moving forums around
+ * @param string $table_name Table name
+ * @param string $message_prefix Prefix for the messages thrown by exceptions
+ * @param string $sql_where Additional SQL restrictions for the queries
+ * @param array $item_basic_data Array with basic item data that is stored in item_parents
+ * @param array $columns Array with column names to overwrite
+ */
+ public function __construct(\phpbb\db\driver\driver_interface $db, \phpbb\lock\db $lock, $table_name, $message_prefix = '', $sql_where = '', $item_basic_data = array(), $columns = array())
+ {
+ $this->db = $db;
+ $this->lock = $lock;
+
+ $this->table_name = $table_name;
+ $this->message_prefix = $message_prefix;
+ $this->sql_where = $sql_where;
+ $this->item_basic_data = (!empty($item_basic_data)) ? $item_basic_data : array('*');
+
+ if (!empty($columns))
+ {
+ foreach ($columns as $column => $name)
+ {
+ $column_name = 'column_' . $column;
+ $this->$column_name = $name;
+ }
+ }
+ }
+
+ /**
+ * Returns additional sql where restrictions
+ *
+ * @param string $operator SQL operator that needs to be prepended to sql_where,
+ * if it is not empty.
+ * @param string $column_prefix Prefix that needs to be prepended to column names
+ * @return string Returns additional where statements to narrow down the tree,
+ * prefixed with operator and prepended column_prefix to column names
+ */
+ public function get_sql_where($operator = 'AND', $column_prefix = '')
+ {
+ return (!$this->sql_where) ? '' : $operator . ' ' . sprintf($this->sql_where, $column_prefix);
+ }
+
+ /**
+ * Acquires a lock on the item table
+ *
+ * @return bool True if the lock was acquired, false if it has been acquired previously
+ *
+ * @throws \RuntimeException If the lock could not be acquired
+ */
+ protected function acquire_lock()
+ {
+ if ($this->lock->owns_lock())
+ {
+ return false;
+ }
+
+ if (!$this->lock->acquire())
+ {
+ throw new \RuntimeException($this->message_prefix . 'LOCK_FAILED_ACQUIRE');
+ }
+
+ return true;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function insert(array $additional_data)
+ {
+ $item_data = $this->reset_nestedset_values($additional_data);
+
+ $sql = 'INSERT INTO ' . $this->table_name . ' ' . $this->db->sql_build_array('INSERT', $item_data);
+ $this->db->sql_query($sql);
+
+ $item_data[$this->column_item_id] = (int) $this->db->sql_nextid();
+
+ return array_merge($item_data, $this->add_item_to_nestedset($item_data[$this->column_item_id]));
+ }
+
+ /**
+ * Add an item which already has a database row at the end of the tree
+ *
+ * @param int $item_id The item to be added
+ * @return array Array with updated data, if the item was added successfully
+ * Empty array otherwise
+ */
+ protected function add_item_to_nestedset($item_id)
+ {
+ $sql = 'SELECT MAX(' . $this->column_right_id . ') AS ' . $this->column_right_id . '
+ FROM ' . $this->table_name . '
+ ' . $this->get_sql_where('WHERE');
+ $result = $this->db->sql_query($sql);
+ $current_max_right_id = (int) $this->db->sql_fetchfield($this->column_right_id);
+ $this->db->sql_freeresult($result);
+
+ $update_item_data = array(
+ $this->column_parent_id => 0,
+ $this->column_left_id => $current_max_right_id + 1,
+ $this->column_right_id => $current_max_right_id + 2,
+ $this->column_item_parents => '',
+ );
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->db->sql_build_array('UPDATE', $update_item_data) . '
+ WHERE ' . $this->column_item_id . ' = ' . (int) $item_id . '
+ AND ' . $this->column_parent_id . ' = 0
+ AND ' . $this->column_left_id . ' = 0
+ AND ' . $this->column_right_id . ' = 0';
+ $this->db->sql_query($sql);
+
+ return ($this->db->sql_affectedrows() == 1) ? $update_item_data : array();
+ }
+
+ /**
+ * Remove an item from the tree without deleting it from the database
+ *
+ * Also removes all subitems from the tree without deleting them from the database either
+ *
+ * @param int $item_id The item to be deleted
+ * @return array Item ids that have been removed
+ * @throws \OutOfBoundsException
+ */
+ protected function remove_item_from_nestedset($item_id)
+ {
+ $item_id = (int) $item_id;
+ if (!$item_id)
+ {
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $items = $this->get_subtree_data($item_id);
+ $item_ids = array_keys($items);
+
+ if (empty($items) || !isset($items[$item_id]))
+ {
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $this->remove_subset($item_ids, $items[$item_id]);
+
+ return $item_ids;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function delete($item_id)
+ {
+ $removed_items = $this->remove_item_from_nestedset($item_id);
+
+ $sql = 'DELETE FROM ' . $this->table_name . '
+ WHERE ' . $this->db->sql_in_set($this->column_item_id, $removed_items) . '
+ ' . $this->get_sql_where('AND');
+ $this->db->sql_query($sql);
+
+ return $removed_items;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function move($item_id, $delta)
+ {
+ if ($delta == 0)
+ {
+ return false;
+ }
+
+ $this->acquire_lock();
+
+ $action = ($delta > 0) ? 'move_up' : 'move_down';
+ $delta = abs($delta);
+
+ // Keep $this->get_sql_where() here, to ensure we are in the right tree.
+ $sql = 'SELECT *
+ FROM ' . $this->table_name . '
+ WHERE ' . $this->column_item_id . ' = ' . (int) $item_id . '
+ ' . $this->get_sql_where();
+ $result = $this->db->sql_query_limit($sql, $delta);
+ $item = $this->db->sql_fetchrow($result);
+ $this->db->sql_freeresult($result);
+
+ if (!$item)
+ {
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ /**
+ * Fetch all the siblings between the item's current spot
+ * and where we want to move it to. If there are less than $delta
+ * siblings between the current spot and the target then the
+ * item will move as far as possible
+ */
+ $sql = "SELECT {$this->column_item_id}, {$this->column_parent_id}, {$this->column_left_id}, {$this->column_right_id}, {$this->column_item_parents}
+ FROM " . $this->table_name . '
+ WHERE ' . $this->column_parent_id . ' = ' . (int) $item[$this->column_parent_id] . '
+ ' . $this->get_sql_where() . '
+ AND ';
+
+ if ($action == 'move_up')
+ {
+ $sql .= $this->column_right_id . ' < ' . (int) $item[$this->column_right_id] . ' ORDER BY ' . $this->column_right_id . ' DESC';
+ }
+ else
+ {
+ $sql .= $this->column_left_id . ' > ' . (int) $item[$this->column_left_id] . ' ORDER BY ' . $this->column_left_id . ' ASC';
+ }
+
+ $result = $this->db->sql_query_limit($sql, $delta);
+
+ $target = false;
+ while ($row = $this->db->sql_fetchrow($result))
+ {
+ $target = $row;
+ }
+ $this->db->sql_freeresult($result);
+
+ if (!$target)
+ {
+ $this->lock->release();
+ // The item is already on top or bottom
+ return false;
+ }
+
+ /**
+ * $left_id and $right_id define the scope of the items that are affected by the move.
+ * $diff_up and $diff_down are the values to substract or add to each item's left_id
+ * and right_id in order to move them up or down.
+ * $move_up_left and $move_up_right define the scope of the items that are moving
+ * up. Other items in the scope of ($left_id, $right_id) are considered to move down.
+ */
+ if ($action == 'move_up')
+ {
+ $left_id = (int) $target[$this->column_left_id];
+ $right_id = (int) $item[$this->column_right_id];
+
+ $diff_up = (int) $item[$this->column_left_id] - (int) $target[$this->column_left_id];
+ $diff_down = (int) $item[$this->column_right_id] + 1 - (int) $item[$this->column_left_id];
+
+ $move_up_left = (int) $item[$this->column_left_id];
+ $move_up_right = (int) $item[$this->column_right_id];
+ }
+ else
+ {
+ $left_id = (int) $item[$this->column_left_id];
+ $right_id = (int) $target[$this->column_right_id];
+
+ $diff_up = (int) $item[$this->column_right_id] + 1 - (int) $item[$this->column_left_id];
+ $diff_down = (int) $target[$this->column_right_id] - (int) $item[$this->column_right_id];
+
+ $move_up_left = (int) $item[$this->column_right_id] + 1;
+ $move_up_right = (int) $target[$this->column_right_id];
+ }
+
+ // Now do the dirty job
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_left_id . ' = ' . $this->column_left_id . ' + CASE
+ WHEN ' . $this->column_left_id . " BETWEEN {$move_up_left} AND {$move_up_right} THEN -{$diff_up}
+ ELSE {$diff_down}
+ END,
+ " . $this->column_right_id . ' = ' . $this->column_right_id . ' + CASE
+ WHEN ' . $this->column_right_id . " BETWEEN {$move_up_left} AND {$move_up_right} THEN -{$diff_up}
+ ELSE {$diff_down}
+ END
+ WHERE
+ " . $this->column_left_id . " BETWEEN {$left_id} AND {$right_id}
+ AND " . $this->column_right_id . " BETWEEN {$left_id} AND {$right_id}
+ " . $this->get_sql_where();
+ $this->db->sql_query($sql);
+
+ $this->lock->release();
+
+ return true;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function move_down($item_id)
+ {
+ return $this->move($item_id, -1);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function move_up($item_id)
+ {
+ return $this->move($item_id, 1);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function move_children($current_parent_id, $new_parent_id)
+ {
+ $current_parent_id = (int) $current_parent_id;
+ $new_parent_id = (int) $new_parent_id;
+
+ if ($current_parent_id == $new_parent_id)
+ {
+ return false;
+ }
+
+ if (!$current_parent_id)
+ {
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $this->acquire_lock();
+
+ $item_data = $this->get_subtree_data($current_parent_id);
+ if (!isset($item_data[$current_parent_id]))
+ {
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $current_parent = $item_data[$current_parent_id];
+ unset($item_data[$current_parent_id]);
+ $move_items = array_keys($item_data);
+
+ if (($current_parent[$this->column_right_id] - $current_parent[$this->column_left_id]) <= 1)
+ {
+ $this->lock->release();
+ return false;
+ }
+
+ if (in_array($new_parent_id, $move_items))
+ {
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_PARENT');
+ }
+
+ $diff = sizeof($move_items) * 2;
+ $sql_exclude_moved_items = $this->db->sql_in_set($this->column_item_id, $move_items, true);
+
+ $this->db->sql_transaction('begin');
+
+ $this->remove_subset($move_items, $current_parent, false, true);
+
+ if ($new_parent_id)
+ {
+ // Retrieve new-parent again, it may have been changed...
+ $sql = 'SELECT *
+ FROM ' . $this->table_name . '
+ WHERE ' . $this->column_item_id . ' = ' . $new_parent_id;
+ $result = $this->db->sql_query($sql);
+ $new_parent = $this->db->sql_fetchrow($result);
+ $this->db->sql_freeresult($result);
+
+ if (!$new_parent)
+ {
+ $this->db->sql_transaction('rollback');
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_PARENT');
+ }
+
+ $new_right_id = $this->prepare_adding_subset($move_items, $new_parent, true);
+
+ if ($new_right_id > $current_parent[$this->column_right_id])
+ {
+ $diff = ' + ' . ($new_right_id - $current_parent[$this->column_right_id]);
+ }
+ else
+ {
+ $diff = ' - ' . abs($new_right_id - $current_parent[$this->column_right_id]);
+ }
+ }
+ else
+ {
+ $sql = 'SELECT MAX(' . $this->column_right_id . ') AS ' . $this->column_right_id . '
+ FROM ' . $this->table_name . '
+ WHERE ' . $sql_exclude_moved_items . '
+ ' . $this->get_sql_where('AND');
+ $result = $this->db->sql_query($sql);
+ $row = $this->db->sql_fetchrow($result);
+ $this->db->sql_freeresult($result);
+
+ $diff = ' + ' . ($row[$this->column_right_id] - $current_parent[$this->column_left_id]);
+ }
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_left_id . ' = ' . $this->column_left_id . $diff . ',
+ ' . $this->column_right_id . ' = ' . $this->column_right_id . $diff . ',
+ ' . $this->column_parent_id . ' = ' . $this->db->sql_case($this->column_parent_id . ' = ' . $current_parent_id, $new_parent_id, $this->column_parent_id) . ',
+ ' . $this->column_item_parents . " = ''
+ WHERE " . $this->db->sql_in_set($this->column_item_id, $move_items) . '
+ ' . $this->get_sql_where('AND');
+ $this->db->sql_query($sql);
+
+ $this->db->sql_transaction('commit');
+ $this->lock->release();
+
+ return true;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function change_parent($item_id, $new_parent_id)
+ {
+ $item_id = (int) $item_id;
+ $new_parent_id = (int) $new_parent_id;
+
+ if ($item_id == $new_parent_id)
+ {
+ return false;
+ }
+
+ if (!$item_id)
+ {
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $this->acquire_lock();
+
+ $item_data = $this->get_subtree_data($item_id);
+ if (!isset($item_data[$item_id]))
+ {
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_ITEM');
+ }
+
+ $item = $item_data[$item_id];
+ $move_items = array_keys($item_data);
+
+ if (in_array($new_parent_id, $move_items))
+ {
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_PARENT');
+ }
+
+ $diff = sizeof($move_items) * 2;
+ $sql_exclude_moved_items = $this->db->sql_in_set($this->column_item_id, $move_items, true);
+
+ $this->db->sql_transaction('begin');
+
+ $this->remove_subset($move_items, $item, false, true);
+
+ if ($new_parent_id)
+ {
+ // Retrieve new-parent again, it may have been changed...
+ $sql = 'SELECT *
+ FROM ' . $this->table_name . '
+ WHERE ' . $this->column_item_id . ' = ' . $new_parent_id;
+ $result = $this->db->sql_query($sql);
+ $new_parent = $this->db->sql_fetchrow($result);
+ $this->db->sql_freeresult($result);
+
+ if (!$new_parent)
+ {
+ $this->db->sql_transaction('rollback');
+ $this->lock->release();
+ throw new \OutOfBoundsException($this->message_prefix . 'INVALID_PARENT');
+ }
+
+ $new_right_id = $this->prepare_adding_subset($move_items, $new_parent, true);
+
+ if ($new_right_id > (int) $item[$this->column_right_id])
+ {
+ $diff = ' + ' . ($new_right_id - (int) $item[$this->column_right_id] - 1);
+ }
+ else
+ {
+ $diff = ' - ' . abs($new_right_id - (int) $item[$this->column_right_id] - 1);
+ }
+ }
+ else
+ {
+ $sql = 'SELECT MAX(' . $this->column_right_id . ') AS ' . $this->column_right_id . '
+ FROM ' . $this->table_name . '
+ WHERE ' . $sql_exclude_moved_items . '
+ ' . $this->get_sql_where('AND');
+ $result = $this->db->sql_query($sql);
+ $row = $this->db->sql_fetchrow($result);
+ $this->db->sql_freeresult($result);
+
+ $diff = ' + ' . ($row[$this->column_right_id] - (int) $item[$this->column_left_id] + 1);
+ }
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_left_id . ' = ' . $this->column_left_id . $diff . ',
+ ' . $this->column_right_id . ' = ' . $this->column_right_id . $diff . ',
+ ' . $this->column_parent_id . ' = ' . $this->db->sql_case($this->column_item_id . ' = ' . $item_id, $new_parent_id, $this->column_parent_id) . ',
+ ' . $this->column_item_parents . " = ''
+ WHERE " . $this->db->sql_in_set($this->column_item_id, $move_items) . '
+ ' . $this->get_sql_where('AND');
+ $this->db->sql_query($sql);
+
+ $this->db->sql_transaction('commit');
+ $this->lock->release();
+
+ return true;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_path_and_subtree_data($item_id, $order_asc = true, $include_item = true)
+ {
+ $condition = 'i2.' . $this->column_left_id . ' BETWEEN i1.' . $this->column_left_id . ' AND i1.' . $this->column_right_id . '
+ OR i1.' . $this->column_left_id . ' BETWEEN i2.' . $this->column_left_id . ' AND i2.' . $this->column_right_id;
+
+ return $this->get_set_of_nodes_data($item_id, $condition, $order_asc, $include_item);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_path_data($item_id, $order_asc = true, $include_item = true)
+ {
+ $condition = 'i1.' . $this->column_left_id . ' BETWEEN i2.' . $this->column_left_id . ' AND i2.' . $this->column_right_id . '';
+
+ return $this->get_set_of_nodes_data($item_id, $condition, $order_asc, $include_item);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_subtree_data($item_id, $order_asc = true, $include_item = true)
+ {
+ $condition = 'i2.' . $this->column_left_id . ' BETWEEN i1.' . $this->column_left_id . ' AND i1.' . $this->column_right_id . '';
+
+ return $this->get_set_of_nodes_data($item_id, $condition, $order_asc, $include_item);
+ }
+
+ /**
+ * Get items that are related to the given item by the condition
+ *
+ * @param int $item_id Id of the item to retrieve the node set from
+ * @param string $condition Query string restricting the item list
+ * @param bool $order_asc Order the items ascending by their left_id
+ * @param bool $include_item Should the item matching the given item id be included in the list as well
+ * @return array Array of items (containing all columns from the item table)
+ * ID => Item data
+ */
+ protected function get_set_of_nodes_data($item_id, $condition, $order_asc = true, $include_item = true)
+ {
+ $rows = array();
+
+ $sql = 'SELECT i2.*
+ FROM ' . $this->table_name . ' i1
+ LEFT JOIN ' . $this->table_name . " i2
+ ON (($condition) " . $this->get_sql_where('AND', 'i2.') . ')
+ WHERE i1.' . $this->column_item_id . ' = ' . (int) $item_id . '
+ ' . $this->get_sql_where('AND', 'i1.') . '
+ ORDER BY i2.' . $this->column_left_id . ' ' . ($order_asc ? 'ASC' : 'DESC');
+ $result = $this->db->sql_query($sql);
+
+ while ($row = $this->db->sql_fetchrow($result))
+ {
+ if (!$include_item && $item_id == $row[$this->column_item_id])
+ {
+ continue;
+ }
+
+ $rows[(int) $row[$this->column_item_id]] = $row;
+ }
+ $this->db->sql_freeresult($result);
+
+ return $rows;
+ }
+
+ /**
+ * Get basic data of all parent items
+ *
+ * Basic data is defined in the $item_basic_data property.
+ * Data is cached in the item_parents column in the item table
+ *
+ * @param array $item The item to get the path from
+ * @return array Array of items (containing basic columns from the item table)
+ * ID => Item data
+ */
+ public function get_path_basic_data(array $item)
+ {
+ $parents = array();
+ if ($item[$this->column_parent_id])
+ {
+ if (!$item[$this->column_item_parents])
+ {
+ $sql = 'SELECT ' . implode(', ', $this->item_basic_data) . '
+ FROM ' . $this->table_name . '
+ WHERE ' . $this->column_left_id . ' < ' . (int) $item[$this->column_left_id] . '
+ AND ' . $this->column_right_id . ' > ' . (int) $item[$this->column_right_id] . '
+ ' . $this->get_sql_where('AND') . '
+ ORDER BY ' . $this->column_left_id . ' ASC';
+ $result = $this->db->sql_query($sql);
+
+ while ($row = $this->db->sql_fetchrow($result))
+ {
+ $parents[$row[$this->column_item_id]] = $row;
+ }
+ $this->db->sql_freeresult($result);
+
+ $item_parents = serialize($parents);
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_item_parents . " = '" . $this->db->sql_escape($item_parents) . "'
+ WHERE " . $this->column_parent_id . ' = ' . (int) $item[$this->column_parent_id];
+ $this->db->sql_query($sql);
+ }
+ else
+ {
+ $parents = unserialize($item[$this->column_item_parents]);
+ }
+ }
+
+ return $parents;
+ }
+
+ /**
+ * Get all items from the tree
+ *
+ * @param bool $order_asc Order the items ascending by their left_id
+ * @return array Array of items (containing all columns from the item table)
+ * ID => Item data
+ */
+ public function get_all_tree_data($order_asc = true)
+ {
+ $rows = array();
+
+ $sql = 'SELECT *
+ FROM ' . $this->table_name . ' ' .
+ $this->get_sql_where('WHERE') . '
+ ORDER BY ' . $this->column_left_id . ' ' . ($order_asc ? 'ASC' : 'DESC');
+ $result = $this->db->sql_query($sql);
+
+ while ($row = $this->db->sql_fetchrow($result))
+ {
+ $rows[(int) $row[$this->column_item_id]] = $row;
+ }
+ $this->db->sql_freeresult($result);
+
+ return $rows;
+ }
+
+ /**
+ * Remove a subset from the nested set
+ *
+ * @param array $subset_items Subset of items to remove
+ * @param array $bounding_item Item containing the right bound of the subset
+ * @param bool $set_subset_zero Should the parent, left and right id of the items be set to 0, or kept unchanged?
+ * In case of removing an item from the tree, we should the values to 0
+ * In case of moving an item, we shouldkeep the original values, in order to allow "+ diff" later
+ * @return null
+ */
+ protected function remove_subset(array $subset_items, array $bounding_item, $set_subset_zero = true)
+ {
+ $acquired_new_lock = $this->acquire_lock();
+
+ $diff = sizeof($subset_items) * 2;
+ $sql_subset_items = $this->db->sql_in_set($this->column_item_id, $subset_items);
+ $sql_not_subset_items = $this->db->sql_in_set($this->column_item_id, $subset_items, true);
+
+ $sql_is_parent = $this->column_left_id . ' <= ' . (int) $bounding_item[$this->column_right_id] . '
+ AND ' . $this->column_right_id . ' >= ' . (int) $bounding_item[$this->column_right_id];
+
+ $sql_is_right = $this->column_left_id . ' > ' . (int) $bounding_item[$this->column_right_id];
+
+ $set_left_id = $this->db->sql_case($sql_is_right, $this->column_left_id . ' - ' . $diff, $this->column_left_id);
+ $set_right_id = $this->db->sql_case($sql_is_parent . ' OR ' . $sql_is_right, $this->column_right_id . ' - ' . $diff, $this->column_right_id);
+
+ if ($set_subset_zero)
+ {
+ $set_left_id = $this->db->sql_case($sql_subset_items, 0, $set_left_id);
+ $set_right_id = $this->db->sql_case($sql_subset_items, 0, $set_right_id);
+ }
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . (($set_subset_zero) ? $this->column_parent_id . ' = ' . $this->db->sql_case($sql_subset_items, 0, $this->column_parent_id) . ',' : '') . '
+ ' . $this->column_left_id . ' = ' . $set_left_id . ',
+ ' . $this->column_right_id . ' = ' . $set_right_id . '
+ ' . ((!$set_subset_zero) ? ' WHERE ' . $sql_not_subset_items . ' ' . $this->get_sql_where('AND') : $this->get_sql_where('WHERE'));
+ $this->db->sql_query($sql);
+
+ if ($acquired_new_lock)
+ {
+ $this->lock->release();
+ }
+ }
+
+ /**
+ * Prepare adding a subset to the nested set
+ *
+ * @param array $subset_items Subset of items to add
+ * @param array $new_parent Item containing the right bound of the new parent
+ * @return int New right id of the parent item
+ */
+ protected function prepare_adding_subset(array $subset_items, array $new_parent)
+ {
+ $diff = sizeof($subset_items) * 2;
+ $sql_not_subset_items = $this->db->sql_in_set($this->column_item_id, $subset_items, true);
+
+ $set_left_id = $this->db->sql_case($this->column_left_id . ' > ' . (int) $new_parent[$this->column_right_id], $this->column_left_id . ' + ' . $diff, $this->column_left_id);
+ $set_right_id = $this->db->sql_case($this->column_right_id . ' >= ' . (int) $new_parent[$this->column_right_id], $this->column_right_id . ' + ' . $diff, $this->column_right_id);
+
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_left_id . ' = ' . $set_left_id . ',
+ ' . $this->column_right_id . ' = ' . $set_right_id . '
+ WHERE ' . $sql_not_subset_items . '
+ ' . $this->get_sql_where('AND');
+ $this->db->sql_query($sql);
+
+ return $new_parent[$this->column_right_id] + $diff;
+ }
+
+ /**
+ * Resets values required for the nested set system
+ *
+ * @param array $item Original item data
+ * @return array Original item data + nested set defaults
+ */
+ protected function reset_nestedset_values(array $item)
+ {
+ $item_data = array_merge($item, array(
+ $this->column_parent_id => 0,
+ $this->column_left_id => 0,
+ $this->column_right_id => 0,
+ $this->column_item_parents => '',
+ ));
+
+ unset($item_data[$this->column_item_id]);
+
+ return $item_data;
+ }
+
+ /**
+ * Regenerate left/right ids from parent/child relationship
+ *
+ * This method regenerates the left/right ids for the tree based on
+ * the parent/child relations. This function executes three queries per
+ * item, so it should only be called, when the set has one of the following
+ * problems:
+ * - The set has a duplicated value inside the left/right id chain
+ * - The set has a missing value inside the left/right id chain
+ * - The set has items that do not have a left/right id set
+ *
+ * When regenerating the items, the items are sorted by parent id and their
+ * current left id, so the current child/parent relationships are kept
+ * and running the function on a working set will not change the order.
+ *
+ * @param int $new_id First left_id to be used (should start with 1)
+ * @param int $parent_id parent_id of the current set (default = 0)
+ * @param bool $reset_ids Should we reset all left_id/right_id on the first call?
+ * @return int $new_id The next left_id/right_id that should be used
+ */
+ public function regenerate_left_right_ids($new_id, $parent_id = 0, $reset_ids = false)
+ {
+ if ($acquired_new_lock = $this->acquire_lock())
+ {
+ $this->db->sql_transaction('begin');
+
+ if (!$reset_ids)
+ {
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->column_item_parents . " = ''
+ " . $this->get_sql_where('WHERE');
+ $this->db->sql_query($sql);
+ }
+ }
+
+ if ($reset_ids)
+ {
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->db->sql_build_array('UPDATE', array(
+ $this->column_left_id => 0,
+ $this->column_right_id => 0,
+ $this->column_item_parents => '',
+ )) . '
+ ' . $this->get_sql_where('WHERE');
+ $this->db->sql_query($sql);
+ }
+
+ $sql = 'SELECT *
+ FROM ' . $this->table_name . '
+ WHERE ' . $this->column_parent_id . ' = ' . (int) $parent_id . '
+ ' . $this->get_sql_where('AND') . '
+ ORDER BY ' . $this->column_left_id . ', ' . $this->column_item_id . ' ASC';
+ $result = $this->db->sql_query($sql);
+ $rows = $this->db->sql_fetchrowset($result);
+ $this->db->sql_freeresult($result);
+
+ foreach ($rows as $row)
+ {
+ // First we update the left_id for this module
+ if ($row[$this->column_left_id] != $new_id)
+ {
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->db->sql_build_array('UPDATE', array($this->column_left_id => $new_id)) . '
+ WHERE ' . $this->column_item_id . ' = ' . (int) $row[$this->column_item_id];
+ $this->db->sql_query($sql);
+ }
+ $new_id++;
+
+ // Then we go through any children and update their left/right id's
+ $new_id = $this->regenerate_left_right_ids($new_id, $row[$this->column_item_id]);
+
+ // Then we come back and update the right_id for this module
+ if ($row[$this->column_right_id] != $new_id)
+ {
+ $sql = 'UPDATE ' . $this->table_name . '
+ SET ' . $this->db->sql_build_array('UPDATE', array($this->column_right_id => $new_id)) . '
+ WHERE ' . $this->column_item_id . ' = ' . (int) $row[$this->column_item_id];
+ $this->db->sql_query($sql);
+ }
+ $new_id++;
+ }
+
+ if ($acquired_new_lock)
+ {
+ $this->db->sql_transaction('commit');
+ $this->lock->release();
+ }
+
+ return $new_id;
+ }
+}
-F{Od1Ѫ,[5_Navmjc!ӂs;^֡*sqөx@7s*+ۊ*:ÈajXⳆZlcS'<[:B:$*T h1@tqM:#zDI ߼Rۖ4MX{^guANw9KcT괾%㔢gBUZ7$NK|A[~ύA0i$9?śmSGvSl1 W D1dšt h.Lnݿr*;}Quش]]s4\i9e dA?2.YdǭǴ-[4 [hl4C\L|혧"わ}mЭ fͷ*s:u3|!>{;уTN!z镹` Džl|` g ̞,W`(X=ЯAEFTљ:`p:y$bDR ^H3^v{C)*j GgGsK֚pq$u )3o+d>n$9Cڔ4j+3F.R{S(Rc7C'Dۢ>N8e.|||U`0 i8q8#NGԯ64X2iN!ml豉;TeݎJNYXa~,x2[cF1ZhiaXp_q ǡp9~bg֜V68{t꥟YN0 Ddd!|M3N{8]=A.RQCrIyuѽcځZ s=P#yM6y#I=m^Xfu JM\|Rs}ŀScY:԰hJ20anyzW T$p1?͛^-̤2uƝEj3l70 GQ@5Ui|H9R;!9E$ BL&S]6O ڴp7IRmEM* "T:53C]+VMtoԡau]X}BfR7"\L;Ƿ헔H[ "OFAy;n/0bo?74HMÄ4NT94N#ήYلN'< W/cDmab؋̒XRdW+kR*:-:{Òp_,ӇXs|;YSNStFF!B.A8aj>/:ДlGg{ٸwet$ƂWrȇ{ي1u鷯vTLtn,+'}(4ov^#5UERTI "H>2]o-Ph⛲rtG&$.G+TԬk;әjR 4;(\i}B~(s6^J.B>HK2cȆm;Opp\VX‘@YFyX3=B#Ùy[mV5W'!Uc91._fSP>}-} ֯5?Vq71PAByuFG@&(`bTL93ߓYT"U7?`ۮSsuwIN~zj%ϒJs)O+&FL7j;f 61yLaPvAˀIFO&:H64nj'41 uCq?ۅc;Įea aq ';Hc)e/#e.e4ep#HR@|qN ߙ\*6#V?^joү[L!A]+v+9$p.+Aց`6ª)@9 RmYj5zWn2o fiM u&O8*?=tQCKғKQV)>Ģ͛:.5yQ j |TLUyr!!Nv-Gr88Hdyهэ3X ۏv81 K_֣њ&yb6e0(S &t_<}jMC0?7ij=Y#.W'APvSK<ߦNz8ش0sskM>)U2jS36=ZlL򗿯y Lgh9'p'OSՖ:r'rݢ{<|&aES4һ)x[!kѦ͝c<\MTGi۾&TQkMQoŕcToٌ s 3 늉$qI:8o}gUeMID/o^j^Bnh7|P7 )ԏXm}Kʛ×ebl#d?1ʇ$cvU \o+¯ƮtbYa8}*< 䖣!˼՜":C"0'YsP.6!| MG,l3OKdvk@y _QC$)}+bHgc4KCY҆oszd=Q̤t7Ę DiYm.KZ%t pǮɱY7{vO]uR!I#?%c|XUuc%f;] Ї-'nT RHKQlY?Ŵpkй$";kԄ.~{ڐH QLSdW C= !+li*P)}]r8-MxWAZX> ρ1w\-uդ-o4Z_gv0< nRHF 7K6`d bc򡠫зV]A:X]KӅc%tbqUtM;{׶Dq*F@ xXVb{p (FhSveV Zȝ0sO>Ucvٹg#%{pEL>0x/RB*^bK啧 5JdaZԾmbM[mSwIgd :#fbQQH;p۴b@5@p,) ~: #FoeSl邒&-/< qpt{@kPTP I:6 w2AW~?&BcMnwg@y'O18[ī$'eV1S.ۻC̞-d )sMV|I5#58/З!`c#y)5SVUr$3qE]pIWd#{xύ)4W;8p'wN4YbN\w1bm ЁW+í>&w@n} &UW.40lu +V^+x3:Zx-z^fΠi4eLD(пɡJ8k&z}ܺoK^a3 >#'/1&BL[ƣNkቤPE)2NF+ԡ,V:t,ZI v-#V02VB:v'c,J(aoZ`.8\p/ǠU9`xid֕mڲ?xQ3:LWBcR<Z:Na>ԭuWe}N&A߳3@}t6oCi1|b Wvi&;~:}?7eu)mjQfl֛#ݠYvk/LQ/S+ KNU!)븗M El#s:v?*BHΎ"WXgũuzM#z֟4#S7K_)lxux*fx&ؼn^J5&6nM-Ɣ]V"Ȯ/ KݑlwH,7gu1#gܰs3O=*RvKK:m+&K$N8ZعB2{΄S?KU#6aޕKo+WҼu)Ġ1-CSM80Jb9$Z:-i66RY#Τ}j1w&\,=p FfŸPd#|:Qn+eݹߛq6=jJkT<,P/# 4垃oEb3"85=('r.zvJKJ}Iנ3eӱ+DCH*{*`]DѕSjһƶ8kO6)^+tpf~,ΰ빩5i Y8C\O1RЂ(x]3I)3ꍔ\z6 c6՚'iɘWAC!:7}͠Ž="}8$c@NGÝŮ`b7]^⛃Z" yKeqh UHob!C5%N`Y&-]ERs3Ff; JЩo^o& 0Sjq]+!}ˆM>ex->ZBVǓR4sN3bSt#P%N/cߧP&?u9.V"}Wƀֹ KKGd8#P $}$/%Uǂ kWakX>2LKKʓ[*A`qbQ7O =qtcyc,~dS`ܶrg/IM{PM[>g &"Ʀ%F!}1pL9I;HQHM{0~Mo}'rIhh}.|dvzG'K[ne򚫉z%Wvz_֌ n1IT .|^A6A؋x[*3*_^3`[CmcOLuR䣨d4\jV84 #zW]Lo EZp4'>*/@?:gɟLY>\.MH&J9㴵̝n)$~L`'*Z[ YeX^ `'ϕ](OkOٗ+ g|sM8.2bJ7w1w$qf"OlxpW,C. >']1 'R]QV'<a{9f$zN;o>`en8 |[\5bkt]8ʼO^X  r gmu/`Lh->ة*[yW뜜Q. D\fvBy2$iv:|Gf^:STbɝ kU<:v!Rcț:/+elEϞ`}kT.)q{#"0K1A1 -kI֢,f-e1o7V|dp57%5{5&|P[P1v>!=F4 GXީ2И—݅F3 8\?8zӖ!ʼnE!IM߂sUz*:7mۚE͙7' BA836yl,lSMԢ͘PJPaY!݂EZBܛ>8L&O\ÆS 3,t-/k_-]MfL9nfgu_.dM5/inWus7s[Yk>KgtiY 'l=όb(`ϊp8׊ c \Gץ;W yxZ'am;kNh T\{k%9pC .txL4= Zˮ23N]lN {Mo=gٯ7) '`ȡ9`o:JX{*`y(]dRKc_{#$ꝍIXG̷gH ^h_w`@Qֆ1ī~k))p/'-%,LXZ6n^Ipo+(5A !ЙZ))" jզme Ql_q-7v>ܙK</aiƶ;i&qDXZND("рcC94{=DZ=C2bW^oTwYCv?w4pg%U C6["l*3o~daL_rb6 R[;4핁AkA<.Lq'zVqy;uKPiVm/:p}A ͵q77_^_Z30Qvr}"Ɇ۾pܘ}'w` Aa} u)xͦȌF.|b-n ŵF֎IԪp[ttnM6iG8ow:9F/:$E|_ɡ7k"ju7g͂U_j'H)|5j^t_ˆ* EG e$gڋ|6ߥ+ѶԿ2Q>ZWJ'W+{ e#\Qip-H-{1_*#ѼpΙgygGaNE?EAerP_K.wA|sؕ2z]ZWt9pY> ȾbMBCQ_Ɉ?f? a夽G<+@Ԥ&wre{!;FIFtny-ZYΕ98ZqyK|)ij'wf-VP39+| z #lӶ9i)SRrsh a4=0v&OSCVT!H$rPE2P 9YTUHA+dH$G>×ɵt Lz8&+(F)G7@PGC*@^>(K ̔y6Xv8Z%#-WK Irdr܆woؙc#F:J]'x.Z3jzd t2ӊf-IY ^ sL2y8lW#߁2^owM2 {;(!m]tax9ճYJ4$ .uf۫>s(7Rq:5dO% aMWc LǶ?y/5ws Re"^4aa_E8B'@`3ɜ1֚V&F{Z%d`:A''^~7f3k@/(Nz '? !gF4=|⫯B+3Y(~81yLP>5N2 XT" B3tߵ %7q%5+. G\Ck %|~A'u9Pgi%: *Gbic;4No Z~&3^ +ـ8b uyֈTWMC~AISݪ}@)wsX.8L=VfzʯM&h0vz5꺗~?]N:b a':h\0)oSAgn~93.q%h5&!u^śMݦGb 9Ѝ^tYG>b7@쉆nXD 7%Zp$u]NTΪYN3VU̵Xz҂]x'- 2fQ\ ,1h&nE)"-R>AZ8#*ڳz{lz98hNaLjuDM 70.lf8*^ j7{aҧPz) anExre E:/PП?^tk {#n^ңcs+)04cW;DeG Xa7ӜhB3m!5ޅimi6M2'g YJY`F9!&ʫlz$W\@us+"(TMs©G̚ i쇵YPf|DSѱ!:J>% Gtʒ~M@r\n#C,lPm)*3!x/{L0P`('"gΞθN<o q $MC]ty-l$- 65qLx:se2 C4C՚a @/4i Ь6{x š^CO'RFN,uܜ4 @NT媩=DՑ/n`l< 7̇ +urPsbfvFZEb){Rא\v??ZQ ] ӽ:3ՖS>£-?T=Z쟇1k~{9:\R?L)>}+N^llO?&>tz@BkN\H0uRZ7K!lU=8VBᴳ=8:Ǎ]ԥ{e7|FŠZd>?F@"ߣ~dfW)P#za f 61xhR/O _ H30໶{vDu]42ruYxϭ(E(mf[`c+қ2{Q(6ߵ3H d>@X@܁ N=I5Cf =5*8BDyB"M~9[1Eḝqs\G85cRsD}DJ4?"ņD&q֘o7KCԜ7hT:WrS]H숖( Uuݫ MwF{N_ZQQJLO./9BbFk=pm y;a )KE.<|ovePd(+nNC';c)Tr9wOd++6 |%}Ak50hMEWWQ\! YF[ QEˆ ޫX%+rV.yg`B޹5$mЍ ǵnl@?vEVl5nۣA qԝ@{OxILoJ>)X:*=CJ y{fkE`]I%t>(=Ȓ<9aS&/溯 AD`!^zibt3"C"H#X‡%hW/݌z=> R/uI5q6}L]mn (!r9p !^;^O÷xfƻ]ߪ1gSwiN JuIد|YDYW+7/Qhq+/,POWMŒ N4C_[;N*2z̎wh#R8qֆ"74JbN9-׃Ea1Nr*R`O [JׁJuPKOs2mɕ$/+/+@~|qԑe?kS+Tu)Muڡ,-bnIf2l-$BDĆ{3sz[ny'afx!,DE/&_PȺлK%J^<:ߑkMZHWbn%=DklsMK1+tc*#bU=|t3pz/ᤜs'ijW嵓lZO(Ѹ&.w;:@X*w8~F2< GTm]7++jT-^魘%?hI(i"K㰾faσ{AWWTbN%4 j3N 5-ϯaXz34P K4SYN.P],LSr[y,(v35݉6s,%DgE7$|k8S |Ʊƣgwv֑ug@?( Hmb)34v3b=&Z$ߔn^]~#2|J渵:" 6uѷ]Ŕ+kC*HHíF7wS7#]a4  BȵH`{&r {iœkFS0"=QA/[_eF}\l=rm{pOh$EW{ zQǭ  Q;(PsnCEurJJmu0 9sɼe|=5ש:RaVݔg( gơw,85 zwj_=z3hSQRL ^ Cj:^XN(;E%" EV؞ Ӕ8i]M:t7? E~4VM7jSUfkZɶN1R1F-#:61>U$WRr2#AI%'=e+n T Q"گ;ZPcgE'pGZJc:_XQ($RYӫ\!z-^NyhDA"):9,oo֖Ow?sWv<,&EƄ! W]0" Fೠe#&L됇3s^xfrCi/6K7Ϳ5oDGIsoo2 N<% b(-%eߕ|:Ǘ `#;O#̬SEJsJh{H-'1q{8ݹ4ww+cu֦gVv?Sw_P@<A~%DK'qO1 C -1ŽZ$jy@dtOA~OҨТ17?Mp='@AлF+&8=Ae]sJPy%<>9K"Q x-z)#R3;qpYZ2o1&` Bp>vV()_K[TcF4P~pTek P *lUզѦ_DD.qDN3|yhK Ē!j{9k^Ļ#-12Ð<_x{B%dS@8!}4GF+~j BG5o:,[Z=r2xs 3pZ_m-G@W.XAC_L V<]K9 ^^mWK 3ɁZr1?gw59^T@g#,UmآQBtUNL{Yآ/ =zTR:s&$bm7o~z^$ & tA!wZ3)V? uCI2lESJ}kef/y:S $ rRχv#L9@vTt~!"-yh8hz^\YpO㡎ET9VAc +#c~ITzGȣ#ŏ(Y)1h'\$*E~:Јvj#\$nO?eLt8*;Lx?~e%Zr< ${{`.O%Ra@ 9Z-\#Kv~E8F}N?4 . E,XLWbx?I:dgia8[B$,\YEYb޶ZnsMFG C߀*x},/z}O8?'2׸j5o wG_,1.0oPsk r&œ"4o*Wy,0r%ŮGHx-?/oxx`sJc{ʩA̦-ߜ8:R:u?w*UED8qOY~/h_j`z / }ʴ܋6?jdxuȢ5<TU|DB}7~8r˖$PpǜQ(!h_~>ϲIܐRʟ/%'Mr\T/,@blk%e-* <#k%zh6yٶR1A\)!3mW-Y{E'lc=e2xP]w65d5'>8lby]QO%}B~RqIlL< b6մsxs|'|,싪P/"GM`J0k@xك2+:lD"Zמ«2LO h3F9љtV|Khr~ eqgi-BO:lЍL^|U>w1@ڄSVM%g=uH]27'q<&3C,]2A1vThB&s!n)Kvƕ4Oeg]u,#X]S4[dR՘%3i|y8{׫!y57{$'hEFkAhnRRV+ta5rNʽI^oɽq"\wx9|[-2ytInB6ِ@ Dx欟*L ^RX$ﻠlJ2[#VVeBuK^z#]Z)Cy1nP\ =hL; وI6B=YUnXXtOgwȀ>ZV&G.j@_(Ǐq* vug7S[H]p.hNdOHvb[?@J-4[W {B^w(#M4:z{U=%oP;mY4=}&tYQe]趼],zaB НC;`8BJ?Qf]".|کEQbWkɆκa3\vۭ}*;T;w^{_G24S-6{l6]ⷚ[+ߛoP@w-b6=)KtZo )oG4#VDT@<۽cW l"[CivCu܎Zșto(Rے/@?vϩPJY@OSP( MPЈIsQvPh7NWCƦ2ucnb[D$Cc!(n li0%w"pgN.bę1Q^*4frcƁa-71azʫKmb- ϷT+jNŗqEHo&'X2y ԗxYuԂD3(``)!ؑ]V~-gߒ\KM2Ök`{ni]6 4pM6Sشo m$HcWj쒪X8|XT/X8tq X(YRm>{e 5Jg(9"O i!x/{jUn1U^Qębz|Qt@.8i.z|H`n0~krO졥/-n^Xj XdfC>aiэk§oP*3kKs>[z+tG?7#w#~x$EŢ]#q7$V AUf tk$[6ytQd;*wR|O'} (,@֮֯ТMo7ԩ6M{zC!|iᠾvpX2\cq(Љ'<7]8/ }۪WlK}B*=TMKSn<Җ!ZxL MĔ~L+o:0!i˂Ț<93EpLDv -ʀǗmpm?l  flesUY\eK[+fKtiHgl܋&h+j`M@VUDrN m蓖a^oJ2é!xP4Jkަkzw 7/rmq:zJTdȦ3B؅ht6q2nr(t>aֲh⣸̫ľQK]24T  (-@{:ߍ&?Vs7L0 l@S|qt1-nv+hz|Ϳ yz x@v^$X)i,o&0U#lS4yg/?Iƨt$@T2F- y!rah5G ^還wڐI ɡ'f d#@aPvt<)wظǁ2Y鋺q.te=VVe\tcp줒]fP3.NxHe.P \o*wMK/&w I.{xg(^ jkj> ʎFtAWxc&HFw)/3.(,R% Լf V,N%&.*G&s~{NSWRm u}iL`c36![xp_Uc7'ifum쁯0{т6 dNJqsS \_l{F+]Gú (.8=3ַBa2)I x+<^4ߟ"V҂ۨQGhњII@KcµWqG ߨl k4/X,p;a6,,c(oQér%#2In-QW: a٦XIq(:ɧԌ l%*eF&ICT<\?jB9dڇt.HV_5%=졗 Οs $&jnZ]Ş]V*ۖQ'§]L]0*XMaFL0EFR`i P /`W|: KT// Z15P5 s=0iУxsѼLII Uz)c"` 4}Ǜ˃?pO3?=b64pj/%U:QLUw@N5&gNIT˧J,M]77vwkPK1*&&w&Y'5bzʟ rܫhQj3>J#qϰJթ3^'8Ry5DQxଊ]!ŌȪ]GOAi$K35:|sDkn=Ls m#< O-A4e( )vm~TcupD$y'^`sLI ?6Qų)q/0LmDzx]IYwj S5 }[ub_4*’Pșj436GC#@GYh0͞4(OlR?57; ;S'Txg;0)Ut3}nH7Q*8m[+cuWa䝃nypTaJiu/%(IpKRc t;V̙:7"O6Dxn1 ȹ:B1~? .JsOrF~\,hu}"L]n|Z$Ӷ;4iN6͜k"8zZPT0A[1Es} -C n$Ls3(_ǔ8}F'RͿGGRPCn7*M9x/ G%. `d)g.bJUBQ+莞aA/߯r/Cމʻ2~IJpϨonRU!B<5{b4]f'iYFęLs߱)J!8\+}(m( ȊToDi>Q' Ƀ+.נ kCC-q4/ǨYGdݟ=-0DPYͦZ7Co"k< FO5Jz_]E"D]/[a ACPЯRzhMr]c#ۈP:;R.\F+,e݂[Nw0S(gATSsd┱0 j"dό, 2#"ѕM=R:Gt(>eFGv*oѥgZ8C-IT'9j"s盽:O}u J&a"XVJ5FY mҷw'#sUaqZDLJNEVJ K <:p|Xq`Q;6*mءc4̙JS빏`0F)A~4ƐN"p4V0Pi#Kk> ~q.qĉZ+ٔ.B%K,tQ3~N]j^%H(!g-K 1{FwTucoQt ZT8bbi󻏙qr؉lՏp hl^oOYUOv$k?J*a䁎DզYE7,bnY<ټAW@ٿXjQcie.dT>iC&y?> =OC%LyB*jdR[(0LJl)"K Ǜ&궝 .cgH S'd]k%SP93an1?g 8زP?)]3i=ǹ0gYY߃Zks95POLp}A9++<-=@ ,*kF q qjU %P|\L82K.>dVev7< 7` 0]ȁ0e9:Eҋq 5ĔSm,;!b]ncLU #׽\Wӫ [^7ejiKܣ2-p[>>/W"6;9A~*߸.\r+!<ĉ]H(=!ׯ.w|x$x'gu1ۑsf۝1zWNg+o@5Np!@o6`3קܗi|V ?/@j zr-f6qL f[㧽*mObJ{U|+-WmYŌ8h~_(ۉA6(8020>p]HL,RNhPX(wFM6ÛE^GXOntc5 * Ը{Oh,?:n+CB&!LquLH+ 5INz{\}av2<:Snn g2ȅH2CF;<] 0+h3CB0SW8syViN\V}ӱuhU"W{-<@W_(" #/qH*.]b97y@ .9.issrȎ,7򢆓rM^?R)V>境3~V35i8Uynב}:j wL*j|>AG ݡe5Qg *pr̜'7U2B拶Yu a<Nڝg09?GBX[µuHF|V.R3Z-d};!m-ECcMBqvSɨD6Mć b]FZX|3z~ #/F-5)DQ='sw_v5tAs2[0zv LaCc\{Q`T 38{JsmHq*eѳ@xO8G䐽8\A rc< uj~ӋvʽJw(݂b^(ss\%#Sh0!JG#sلU]9n'!P*O\JC[0i\`~) U-rJKQ)$edH1d ~~p 40]&1i08Wk6ޚ[c.wMT}6l񧰈\o"? H XG`c4nU~Y$z $49'5 n+a7:שׁfI.f6_G2qtRCLkƸER®PYkRx1mL7K-NC&@}5fcӒIrn2{PnʝDch lL\76 f$ٖ^e ʺ*#@4o\q Q%!H(\97nқUoz j>xe(.K۝TY8kBղa=bR͕]z*uo[ 'W9ґ_ݍ9ea%W)UԬ~ 1h6$1][<2kMС\+7P/אHfv&dw&?IP)]ykRNjӼ?ܩ$*vo|A uO4;:;b .S' 1pnm^ j FZNYl1֫t ڵ9Z{.8=ӆ +- lkERSRP FA}YaVK)7ξdf $L x=:E:P=e&x:d(X|Ho`n~+Iw |4[47r%hh/ʘxR\3ӭB8I AGڞItRN(ufxiN‰nl^5DhscDІyPi%Z^txk.33X N{VBh`Y]?@DDS;YmZ$Ⱦ+F3CoЍ‡pӟ4)Zd+ hpr!|.·gU̾u]ϔ tq'u'ծ>N̖0$ eZBŗ|ۅ\#1ޡ;D:~\ cXe7|c-۾tA@$^qL7~.DSR[}V^XCE#?9E*_-dO@8fhpZܳDbI@!vfӳa A)'z]X5xˆt|$rODPBSoP}f¯~tzBRM![4UT)kh %hg⽡qx9渊L=)囑I?ڰ6{Jd_/GuމMc9:͒|,fW݃4Id )Mޢݕ%\ۑ?`YIf1)UJڬQ% 5!J|8K*J("8f"boSuk^o*3tF)ZT4eFcRӦ=V_RZ(\QB ZpB?st1ތ, 6dv $&i7)|5DYS0C7QWZ(Ai(\K*ٗKfI?<8K)szѲ][=r<OXw8x]7<>b.z{ENnXhj}("45M}ZN@sl.t0rgh<ƹjI)tCH}>V{OX1<$J0)f: @f/!Vi>H֛}wY˕jh_@z j_G)<)&c49g "5K$C%(>vnIY[#W6:Js)?˂n"# /'6nF5$ ~(P (X h6C7{/` !DK zsC'0V#ڦL\Dp#x0:=oKSj87@#&}=a 6|0$p]0&7׉8CR5yg{ќvyAi(?Fo[.rϜ)B|V\,aů@nn/ !,߻ \ ynfk qzYnP0nǷL=Y1 I K0lbଖIV_[ND)fڋ46PY( + dg9br{]7߷u}ҒtپyXAN\qCgNg^>'%^|EnA'VMVx6G)sԿQQsKLKz ܓwůdMUӿ /mD lYE]9- tKR~rsd7gJv4rAWg AqU-U 􊘔q>Ac:ylq@)4|!MSTj\T{Kߕkx=B:}ck; u1 wĨqJ<,'BYLIFh9RZ *&xevn|1:UȤKF<ģ:kXAkt%](vSB9Z׈͢ G_fEs9j3v]S/j2UkS%͂ t¯jS<$IF(9bukJTştl`,k=7cF M'|bw.^g&}9^8TPD̐D+;=ŨujH*qauJ,\a 3guf]gNzp3p+R|ҔClɨMdMƀsSOHZni{8y>DϱvZm'1ͳ׎ǷI*DGl 'm 0}׼ 靥2n&;|p9|OMeg2T@jʿ&@93UgX|o*)XJx+z{P0&q-1O BcJjͷN5D6.ro$E.8q'`s~ܡ#։`qgUV!CymmwLrE#"6hfet@Mu)*hix(}ܩj,JOS3 /[)_ rPzhn qq1>E%qg%kN|R`t*p5$D }QEBDrbːߎٲJm"Kzٶn:H:^|4M3B ׽er?uuo lmK61-,wH4'޸<N=_P-`~-B(ˬ0 0E?cXzʫ̈́ݕ-SC3ek/|,Ȏ_>X0`ALHsyw(y`sLuJMQv"-ImePkhX{mEK.cqpG 'Cn7$v;0ƹ8"VZk|ڥRom$ qCA"Y!Gޙ A̬g H\{4v|J sdDbLLC,21W5uz-R6_*EF/=2:pP <ίX]C'⎃T|_HdZr #NX"VόYGFb|#\zE )[d'!mdkVARaCfM#qFQZe@TdmP]lY*ՉlR+_+:,ݖc7 `hNH,m𙯵mcD`x!Գ0yD+B\K}DKm6vzkUs"uB-z ݴ{Xݾ3Fd/`؋H RUJg5A">ΰ& :=˜Ui2U&'2 _t6$\04?*}The@E3iG2tS{@IKn s$T4/Uh#_esTR5$ 0}6ͫΤp.S`.Q`yLޔ&xrt%b?OZ"Sesȸ|RUoS :@v{)d4;W#15Y\,µ9TN?GD]bc!Bu0o )2G>pPtYxnfҐ qT0b&s\GXQ8yY"4Qa]bҰ+6H8HtXDqC=~f)ڮJB3Ђj$ $f z1[ 7?\B\]EAqyRFK+]M4|JX+UM{1<Ψ}˴L)Gq8%p78:Rx>gۖ=#"l@ zcL~#bc76CCLLCrf d˂G֕KAl&ZD=_ߏ &eql9pHXހkiӝz.̗mYC3Gni3Τ"aT(giy|;N@wMEAX 4 2 /qKjx>ƪAxe:ʾ:q7)^m+e_#ȫ+d.vC0ɋn//wLBb϶,$xEh+Ƣ#(#;. Ɍ,lT.>8b7i3<0 ޣ1]ʰjǪn/~kDd!6kkwXd'6//t9Njwi%`"ێ[ƱXھ267A17R%ܓC k?wT1sՒY&m;ѱ4:dN>NOa(8@g{ Ȥ\2MLRvmxB+(A9ĉ+*r nA3 ErƢ߬Ƣ-0GG*; ܹd!K_xOMTŝ|9z7s_t YL/G-Yز*7W e^wg=۵B+ѷ)_ +h^yG8iq>b|M}}B12Dߡ=[J/MO"`{|‰Ypm͞q${Sh)y'! "|܆Я+~' Gudұ,TI12~AVkV۾! F%iZG%Q!TU?4W5Jp?-õ@ї9=7[+̷IZH5V4^aGoYѬhRG8Zĝq|a!mJ\ICF~omϊۇIIh7BΖZTH&6"+},|PdUR6GYvF،cz>qQ0=ƼAױ">$ua̋} 0 WkZ,ܗfG c@:NoDA[w޻^^"|qޤM`)w$S wAOz ng:A4e{k,}D.$)ƃ+eUiͱfh/`RrX]FCMH`x]OZFCZH(sbh&aM1œ%xQ˰<~ qht @LzJYmjTpЏPz~ VE/9 >{"dTzjXf͝4S%r.69eF2jl9Ƃo龜0Șe77uZ͟/mcJ*" @I6&?ֲem>d]_xj]}]r)gOJ&W&s$ 4bw]dq]'nRpھA%FE_t*h8KiQU22bY) ú 45EѰɥىb^7=6JLx~)̵R;\J *8;}[ݯ&We9]4:hW]  Y+P966Vb]nEa[3YM|pKjWD[ubX(bۻ|oZXko%,˱VbZT:N Z\oJ,׭IsJ XhmAj6!VUu^nSQdv>C^=ErݲpٛZdDlɻp>̌f3I*bVKH)w1v(1$g W G@poPQPy-ĂmM[}LڤV@Kzd^lLBn(J,>.Z%P0d)9"c*Q,P׫\[xӼwUT4uk BQ-Jk^3/5ڗ3τ91'pBU{m#[x(jXk`_@NIu~ZG0 &߅~^S{Hk%\s?KGӋŽKgt؄#A/#ulGDg_-8F ~'(a$tWHyvd_k?`l*e4R! :*AHmG]SR뇌޽zJt>m+oUSwiƷ%>'%e߮j{~2-mܜG k5UFNj[NZ9}ykZIlwn Ad>p[,YQeQ^ `Ƃي>k׮yPw'UTB̌89=rF!D$5ɒȒ_|cq@8pgq35Ap?N啊bȥ`\cD3{9Td-hE3,uAL/kD>֤\/$HZmx`}6.( ~UWL!U<\10owwQܛP?s+-{ z .W*ב۟/yގM4ŧ?i[pRʌ:W=iW_Kd˜@L-x2"/I@^{"pj!PB:+ɑ|5:qhҲ[)Ѧ.de~ bL2VEϡ{h޺lLA)!i|1{!_?]G"W$gJrl8@*T9ؕP_AlE7OYoC"ģoٯ ַm iF`W>urBy9r܍}GVӀheA7ns&Ȭ9θ)xU[y3H y+5Ra1@ned8 ɶrq-rCkH;(C bv㷄dɁXQYY$=8#H(=/$t@Wy |\N_"nqMt©ܙ8]>#I6,gJBD؇D`F i\@o[9I춨fo-°˓6Jvr  /~c;{H)D 6By"6~Kl;|P8c1=$he[A Nk4Dm ?TB]꾝|^EרA~(sM.:[ܣLo[5!V@ #^4d")`'jhݨbwE\7ʮ&q ŨL,flQ~i8f o ZT'2P~/FrM܋9nKz-T8xJV&#GZl)ҬHhk !<+W!-e2۳'in\5X@K{fzXAQx\|5+t U$ U7pѳE;װdN6 rׯgo =6a~.-ݢGcU:lҭvv8Iq vsᔨMTWG> Ͽ) c njRe~NrE+ISkh#]cke? >Hqkŵ=,H(K??ef1|~%}dpTɨpVt[LI+ZNCYGLmqu %ZTIVrCJ p+`$n&ڨқׂ:,n{Ƃ}z,ωM,M{\/oIH X3$aߌh? 䭴 !d=apI78n]J&6WWv陌۞"KVY2|>Vm6gR}Z* ,YGYom7܃)a yZROA'DRҩ#dž={fDmoZzicFVּO|=i &u72]1 gfn+MܵLʛq^: @OQ~%#(۳! 7;뉬Ov!toQѐלxCjnȘ?Zg!;fN8LwnOd5:al 2lP׿$'Xk}CZTӄ]4UJ0 _z.uB:-G}ʀցԯQҩ˛%6'l'o9ZO xkjC"cR%;vbHf/ܨ8H\6PDIvkgEOpv,~@ք܈ jrf[h xtJT"a 9`fg9:z"y{gĒ4:m!o@+](4mAaP%`ngp#vX]3 HR}[d$Ol_ J!hs٥uTF_SaA%'t܂co\ kLLG|~ I~Lc"{Kr^1E7PO6LU;a.@)P/4Q8~cLHdEuDVE#3zв_[yjݲE W0Ўy oC⋎Gī{d3{~3sW( &-^k6@yφNa&S,B|_*h}!aYV `0&c4O!B`Uu̩# iݍoSv_>Kevl~\K~>cn'XGG-7޻﹒O>S枾w|x=dRcY<Yt XJyv0;twކ-خ{^Fj{evœ 1 d,50|3O\AϨUtP⹆WLvȤąnON}PtQ!Oݬׁ$S{Ȃc]h >eR+1zARlw{ :fj;o.icPh\}1*8 إl-;{D=))h+oÖ؁mFu@\ǜS~gΓ%ETxuq% nIFD6Ibs4/26󃂦H@s•sA`+"[oCd#W'Q;<}zS.kLW5~\8[[|MBWhÀARthE]Nn4KT ҕ疉Yjeu`cl.M :/ ʪ,.`J4~F J0Me0++JnH>mp U{dI!"V Gq taܸ(RߏUB&+[<JND8<9,uACM_4ex819O`ixZbu+&߿,F`蒟l3&شs~H*tW.Myp9O5Fm0 H 55ʓ+ڊd߱6hI_Bo/e=\U_ϖf72%‚#:G#lPP[5I)J]\qc P]<-Zbս HNo3K="$S;5cq@ߊT H <.?,GFCٵ5A-Q YÌuE-iϾ7|1p&\]aATz:Jkܐʩg^ :Uv'xS%0iiأn(忱F?8 {g5bO1]P?|)Ô(*XHL]=G֍FbG-!OVU . S:kpQBeb2̌a؍F# IAexsj\ۉ~uɈ`uY+j^rqM'46x&,zc &W(?Č݆'|ʳf& mpS$cCx4Hifm a>r(+2wm2L)֜nǽP\@N"3&|J &zjLoljh̽RIK:HʵƚV->:4wy1?Ht4n]{68^^Aq(>YdL=dGf1˥- Ѕ\tÀߍ;(2ȽFr낛3| gYIEI08=:#4knp=-UZjqpkQjs?@z:g?Ko3hkI7iFL20F,?m OMOV^*B0JfPAPjs0LvT; j#TB tPAXDwA.XͬTiCabgV/jlz XJF *Vy f(2EY@':(uڔTUg?_0> Lr/sV -ؿ# 妺m`V|\]̓wS}, |_JԧP:qz|0X+zF,au*hڮ N3 6 ؉iL̈́*cZ q /b ̧x<7])Ҩm_Et c~]A|…|Bܦesz!%ΞHrT) zl c\P:9WRKJ[&^ٹ&8CHv1h"iF#ǞΑh78($˿;{ S70ۅ6mLh]r( Sd6S֟njኤ+=&^$8MUCgź^c_Cw{2@/&ofs#Y.<: ~NifEHRWӥZp8wҳT"ԐYs_/[UR,kЕ~rRM+uw$:2Aʌ6#md N#x鷷@φ dy`yLGS˥zQo#kJmR֊nR@3cdóY?WTA5@]hbqc-z]Z'f^m`HV݋Si"rjM}[ GD|HqOR&7 #~" rǩd`*3v) bs4͟kV/NpTQxձ@cIIVX7IG_`{ԽQٍX(˜Jr"\jDV=nI`-8F&U0Pڂ"#MF޴*y(+HQ&Te4tnV7{ύ`-N&'!VQ> hyK )+a ۄD`Sf r.}$kL:G[B_˅9K%Ӫݰs;"VYԌHcwX }f\EޱMOchd" n K)H$!T0}޶(Zl,7%!fB_{u<ꇴn>ꨬc/y'k,s,-!-') !-͐ɓOŸrQ(:Up ׫&JȡZCXRev~} C`ЭfrԾ FsD[IVQ>Wti.acFS]F=fF(i AQ"8G$FmطL ¾ 5{:EHhf:nm#&nȏP0|㩰.-_WQ(Ԓ^QTE Fkep3;D\(~{8 so B?pV`K̀i=3 @aBnװ*Ƽ8pNvr3D|-b! =!:IyGpp!8[ mow:iwقn|NȽ \@*IIQϟRh?">W!c`* lRֈix@!#/(xXA:E>mQVͫJ%+nݠYG&N@4#[R "3.d4|kɾ!RI j~L$7& a/{M{(c97J_b9?=|vZэq̈́XHE_5;MAIֻV~v_:INӂO&>M立/R6p35T2IA<<4jDу% UWє9u~*VSUm+QmQjΏ$,(5ml#E|#W0$M׼OPv9ڠ {f]MoUxjӡ'"޻n0G8{QmcS1FIW,ur*szsѹp:O]1㉇G۲|]5?? ubx9C}O01V}nY7/}C@ nI rôklԘ%_|`Nm8 )jc+ŷk\Dv,"jJWi;EjMCT;-Hc3x)(!G5Sp gݒuɀA/T$X1͐)xs,t k3hzuC~w!]2TlZx ӟy֯* _Xu,԰#\B2u=+ 1f2M:C,xi}$g7nrUQ%)t{?_D>r8'IP!] m(G!8B'/!$SѼf? h-tKt5;&c[G-̿Cx|GHCgM^Ka]!>4 VPG9/t!\V =>iQ2N_]Yv2W ؈)ޚAtDȎkFڀEaE-~u$?Po^V;c(+I_#H4O0yǙSp]ӆ``‐(bdڍӲ>Zlp|Q\,9yW#؟ts532u?Evz[S f<]A y,WHXLDx(sL1F5U8tW9A=ܻ9eڷg3 2xf_!>Rn(`IgSJeS;K/7+x[նQe?b }JL IJj_m鈺ƳX (ۇ|Bֹo<P+rb^I4VIx};+/Zn/qʟES/"0sn+s+]*=Ѫ#;ƈ}$[^y$+ZO|PG)>սZ{ b pv于b$֜t|dhƅ3/MlMd*/ 3^ES&^?# |.( PA҃b~NVC"፦rr*{OA Lz$ @ F =7] ?,7"D>BeFN9 x15'ZD6_DY&©ѥ  FD>LY܏Rb& h$4cScݸ/N^{a!zmB6ʱeG 33 $>n1- :}+emji΅EOķ%6f_ pů<߰K'Qpu|(65E~DT[T8N!OSޏ/8(kTS){8 wDpSe[xRlJĬxa6W>5IDy5Pth(ʨt9BU#-c~$O2( X1pO""mK亂7>8X7 Rp˴Cnz2f-ϯk\2v7^0Q~{'۞N'7P9G"geFyc戩'K⬕Sb:vmu$U), NH/ #{:NoA1!"kEthCڤ^vD;Iz¾RҴ 6p 0C;CtKK-%Iz\06}-z)952ʐvCF؜&HIlcF 䱠O$ *X["<}fvt8o49 `Wfy`V~y ggMG~0s.BL9 IY;XsJ*M^7E*>:YʗN>QX&z$<ҲuG:6fлO@` Et޽$Pw~F`؈!x]hM;f+Zw^^*xcFD('A@K3ˁIxsqXX:݊蜻 d3Ob/xQ/}.بJf`8@2-xh0c3-`eBJKALr{e+G-8rV b*`/ uTp>/TV.73Zԯ0L^k'{GyU-lЬ.|aPu &l6b]eW/ Gn9D(Bcg;T*9"3`3X,މGޘ2&Ϫ̲N;z;{1Bd|ڵ [01OY 3$ 3K5$\9UA&:2Q/e)Yqd8 "bR@̭hezb͓)0"/}^5`-}FGvv}/8h^Ch: F"D$d֍czڳR5 c^7xw2Ef˸HDP FbRlQ6Y xDWj7K`Kv8x7<zVB;*? %3]*eɕ  ag6]-Hm"wo[lј+J'j4֋(I py2qr ({EB#|N2pv,d!&#VLUޣR+@m$QReԺUky,y8`bp99) o_2mkdX]1|&C-K'8W˜#P4ti=ֲ8scV/bA).DA)7j8tAL.!Ksi۶QY^m3#vQ4X(OcN,y>aJftJauYGfVy$"cS!EXO XLȚ.re$:n̑QG1tM'W_[:_IXEɬ=žO h/o@ #a/+idhtR4.8FPBM4Bn2D̔[gSk&5' 29Q̶Cgg7Dw{aK^t72KApAʽh6:xԟG ӌtz}w߃Քj_ (%Yqw%HyZ##aEt΁=<|PL|M]FS9]yevD_/.ƒ)^CF|_j/UΥvV :=*!q# OXog)D,eۭw"RV)g. +!y)|-%熒_/u5v3Tq(_< qȾ&&tH>$ޅ t1DlZDUÌĪb# L%|9 Q &A0dnカ)AU8'4=ԮEۘiLBt1PEB]Om8ԫ?yf"z`PDf-V ݙN>Oi>OOi샶Ge%S( #ÔݝmbQK o^:*d8c=iܻS\:Љ&OKFi0TOr˾W(dy|v(iTU@t^Aw=߰GfWNKCG\HX^5ǙA%3z,\E% rCF1ᾏHNĽC g"Nkc@lqYk8&0aJO !Wٟ][e| q7뒁Qh&*G`$*T̃%P4/n4@=#Nڱ79F_P3Iג>H)PxotT(YlX&8~ڨհkcX;B]dĐ_>99Ip!0\:|y\l=Rرy\|* Zgz%64D J]#E3 2'GGEXt?*_z5,"3SxV(u,K\u$}ԲNk#Dl`b!P -;K">~V˾;믍^#i\p/ՕMN7=GOꞕY[߃+grTDN6C;wWO\5>C݃pf@g LX1Oޛ:8jOSCNAo9 L~Fm991x<)M );-#fT*v?s躈?83$qTraD T{5m(f0`CKGRGɋW mPӘᆛ= Wo\!l xlvCjV{aNbzg@ؖB?qd3Cp;3Sw:(Ζ:͸`+K]n sxV$JX^,>P"y{KԦPwРy3MZըQReе|Ɇ]<;C PAZJz18ݢkd]g%EEdsdeyTjG9g$@VM$V["M\n6)oQg`zJiȾS8‘b̫ k* Lv0p`LŪE)Q ;8$ '<_";yYWOTV#Iuv%XY [nP*b1TerXt7O'^Q4# GH5>z}ac68H#ػ_- e>o9dާSaL/e=ohϩ# .w:WIk)(.5Ewc|9H'N˽ 5o(Vc$}8c7nԱL . +xD@;򄂬-~X5t.h3$.sGY5 x\<=I2l,024trUҮ;ZˡWTq$>6"-`<R1+pҠ5,ݮlN7C?tH\ =$;K p=2u[#^ߒHUG<ı`_UKF~/U%|zUHe5<Z~6U5EMY)鴈_J-6Z_L\еFsch0bucYK3FdsvBQCGXj>OZlAs-`ViWGG.B%~:jǯps3 ?՚/I/@ߍQH"z8͹},`{r(q+ēHFQNNa0Ք5i.sm8m'cJsw_[+J nD U0@ dfC3Ҵ`qQHuxvPTJsP™Y"C "@5 qɫ*%R8ЮydH@Z4D>X/& '6HqծJ f=:;]*M\)!Ӵ[sgB!hPN N=sX]<.rN5,8ϙcj0{3iT b2 s.EQxBLaab lBp~4r{P#rSrf}$uyզ( ';ᚃ%k4bFxЅ̇<-ED] @>_l٘UBs9fiz0/ O*`_5ޏt9LПzt41f:i?/9 +"|l C=3O5d&|g"|xZ /.W Sj芅]\IJ0(hHSa`̽3줰>)׸ N~ |ų:0,`M/߿7~ZE8_VoS`Duh >Ƹ@t!n_hfǢ8L,x>pJpv(5zGL^SJ]T 7l,hɗyΛWu%Fq6OAG33"zEhpۀ}]/P~Xk:O9Z@h(5:mp˖z=LI mTMBhNtW.>qKb~j0 ~ eepH4DvuJ+%@+q:5hַg=}Y9jiP<{2?睕G>~`˲Y ,,F%2#(m|\˗w/])QD+& ů0ȖH=叱1LKhXh̜`~M.Gk/t&{qJ|E&43ߏKl%0iKgx<|rt8ZoH;T7s'"Dre}Nׂ ϟ8HIοONm,N,S~[w2W)OF ,ݵ ר uXV;ciC*^DI[|qf GY۩Ik(Ì1 9p3>Tj<8Bic~zj"+{gF]SHd#FN/ 2 1aM272 bSj{g/k~' Tl\OwC(t$&Y_6q17dk+ZUTj `}U[iq$qhtcA!&ikVkoʾ| 6:'XpE^$ErGBįRS$E}hX VW,^S3zUrqFkL&VfVdh@'w3\hX^#\.a=.dkYԓB Aϭ`&C(ac:P5|u!aP~cn$c hT7XU9-IPU5ךw;N!1o5/ɵhf>ȿ39?d!=y""hI2b|^[Ǻ$yAt'ߌ*/o,yAպ%C b<!A'D9vVfk~C0\54C_Rʁxwr sn{?|qjg*W@Bj<[ 38 ZTsh^s,"[jyѯ;q^ЦB_Υtߺz8"?%0 gսN/;M7R+ׁQd" WbK 1S,tMW3E7wʺ{4?;T)zl3+Ŵ7/Ċ_c/flphQ]u_\L#b;&eQvgO'Tc3goJƧKt[(]X)yt #HIl2Nf\} sT('+=#be+~m3) R14ɮwsB;gM,c[9eSPXd !'}lۈ&X馴_6n0 p1M4՘XNd|?ypQ].HZ]()9q^Ziw SoTI(Sf '"08 i*RM tNerwS˧(7Fz19Ox2h'qUQ>{RlY .!'R2]ϖOi +dZ^ٶ>!y,xk;6ud6wpomV\Z:7lp)mGT%ɣ<\9\1'gdFV /A @?A9̍?5MJ]tbiAj%*8 T©@b@YP3z 8* е/Ѡda`emM”e X%@̆7'wFH8;YHY&P6#Y#Uv (R+RH+JBnS}M pm>{H~*f%d64+(~I;Ih_w@ ET?ӑaAbÁJ-âstl"a#Zh%Sv"0xEW9@bfs+|j)SEG+dT=C9)`N_`RU-f>?wl%m+3dV)\ښ`2($?%Y%j'-шe#[Lq,Rg=wׂmGj]Gnՠ G _a֟j )զXi{:`fǬc]>.후륝ϵE4#yV(Q+g z+)a9ШonF2br՟GaJZC5'L+j0Gʚ%~4D];]HۤP{#.}~mAz:=bʕ28&k +0WXƬ` ffЮlYbB< HK#8˳"BkzstP~a CƂ75[4^ 蚚K]#"hxfG?EB>hw9 t]w5GUM#xN* #d;[~qcHD-,e"j;_VYIYٙsHb!1_CT&jkXBQB}5PIQ ZLJ>⦚'ڸ!O]sٱZ3r٢Ҿ06YO*_2Q͸YJȁ|#*֭mW)u4۱*;; ݁Lюr#jxP;0q@hO)(5-$O{KC% $F3NSEːn񕮦8gT PjfH|Iu8Э Gf~&ѐy^ea4)PEK Kx>ux^6"0aR/Rmnu\T\v ZCxfQ/ "c2-GA0 E@,)-\=`d!Bgn^i~G=k,Ϧ6 3f&]ћa1n8$H|?da 'ZLm0os]hO'.[:on2 F~t-BwWCgAY91"zUA_Uj4a796Za9XF1ZwS;Cy9 [vVx]x〥YҚy5*!hfaⷣ_qFNV=t}xCY'lw-T߈hwoaߒ?WO,q J&,M* 㫣A+Rc»$VmCXʘwjP"/B /*}m8C[L"X;]6up| n$?/tSE q ǒ7[v[O K1'VQxeƂJӗK8:mVRԳT71@5mg`~ haS*Ǫdvf-J(H}ow"G( O] =@PRf<BMsoSE]ܿpj.KW~M^:=k?Ha=k4޺ir_q0} 3T̓ޠ n|ch s6^Trh2z0Zݸw y#|s($ e; 㔼|䢜}j51ל$@aG+Nѯ\^οިvMGoeyS޴p?+' `--w|e)QTYW}lmTNsA-ҟp ּPyxk5i̔Sww8:H(z(*kA)N@B22~QdK bu虜* lXpر[oӚ/yǶ/kCnb?YB௙˱z䇸y;InX u`9)X 1Oſa q=vl*rgPs_K(<&g)Lw]L.m1{|%iksoaƾ\y-ذj} iit|SaNc1NLXKlDhDgͮ2PQbhTzĹ`'3zy̌kY8H;D:߭\ٮ_2)!41@ r[s7.@,:D;l]qj;)v/dH"@+w dS8yyV._'`_ECJNCye=w[t :kɠ8utуNjar3=M/1#~[]5)X<6!G J[xHvyA )s2oFi}kBI;Mӗull c5YApjx#ߚ2ΖI۔.(Ԏx ޸e*m}G_s*9 ?.At)װ|p7=.X]ܺ ZAȄ=Z9x(cn٬"4-M8!V3 1IuK) V[|Ng|mI|:U פ|lU>Qpk]sK-/ )ۂ3\(15uH*,ϹeTgRadggso<}~>o-TSKϏ9ns R15N>L>͢7Y ; 3%Lvx?/[=Yy!$j2VP8p^%3ۄ߇!".w|(?KLGCI!:EB;tI֓cpJ$S|Ꮆ&5>?iVԫ?FJ(ʽ7}=Uz9\asRQv$Y)0A"a$n6Ɓ$P, r}80mŝq?xHtW2qT8C``<#eMOzYNJo1=-&}ta-SvĢ !a4L(@i! q SRKރ:{TxQ%Ta3`/f|pzZ1薔(7 Wc+!2mEg8t5 /Ǎ:`C'l+e8UaPQP"dxf HN$`<ϫyPs Fxmc(C8ќ1+.U)υ ;*Ō|m-R |;irg $R^S$q,p縐WUdql<>W|xCSb5@HƵ XNy1Aq?MU>6sI3xl/umVI]_xxIV0nR5<|N[=m=4aһ_2frތ}.<[pbjhtܪyڑc1kJet/5Aʾ }W ͑4 -F9Š}WlPo^O8:jRţṇkQoX8 .!4E3I4Q)d1R%NBZ Z)VAu(fH}]wXzvk|·@9}gs{OڲtfV0BVG֖|VLjq"}8)(sOGw&7jԬkMtiW6p"v[YW V/i=tT來GWE_7O 4c],Rij,=^t)Qv5֘e,zoO=rlJۡDt%g2ʮw06Sdي9&pvࢫ6}#B a=[crlz`8{&bNиEy<,q$v#AZ4kCT;6 `iu54cuPGotA"IcCږ.#k1@H+ (N  :wZ0)(!U@ x8xçaB)-fcY6Z2حT*CB̹I*̍Mpoɮ!, @Ir6=fz, Ci X&9(CE.ttN3gr!}5ԋ$ԾН,ve1L6e_aaB*yKfM``StRp,z3h \y 1*cgH88OT<[ xõEj"蜘Nn0X4;*qQAZIa(u8,բLZJ#XHvkp-F,U8WJe>hcibl$S!Qg{/Q$bZi@isNhG[[3ą1߫+N.ԼiIbЁ޶ft Gt+tЖq"`C^֫C/UR;Kfm Y'YYʦ˹G-kAܸG'mYwZmڛ8ހs9O~p0Eyv{:㣒B\q&pьa " p;$+'dVqje[[􎻳ݗ)FEo-.II"-ƈ RC`*bȎ7#ZRnT?ӆZ&(*$UA_sc=P oQ;$BBr*䗙p5jvzq@۴ @Sw+%`f. nX" dkk4hS^HI-о`XS7άջy$6Sf@ʻ_`Lta3]#='m6n3 /;9k߱#"H*AUFAqsVn(n(xFf}'YOz|<>Ny6 GSOO bWl@60 3,. nlvz( NŹ+4ѨIMTrbX٪=k^z24Zh4%Tc )2<-2$?r)&j}=8a@S0\> ߵ172Tzξ1}Iք髟S=A*گ,#úzt)gh d!7Se !zxZf̌PDc磈[TQg\ErFO7}i@ҹGN~A$-uĎt%,ΗFenr 9c]5otbC+u?5΢rhi`޳8ADDzi S v|PȈПxYzVskW& r,[lq'ݻ|Q ГN #_'9i>*7nxdRn2s>OD)C*}"|G"tcؖuJ3t凞1`xi:5`KU 2u(nÃmRPji|@,1+4 F !_oxDnS@&iXv ZE} _"@C!RzOLfoj>~sc5ࣶZ}Y%3)fr"m2*Gu4&(_낺T>Y+~2)mMhֻ^`hàsfqߩT FclyuUsgŻ).n$u/"G8@KXIS4I)f J. 5Q'Y*nA\*p `ah;,a:I8L- MU86݆= #cD䨥&P;P2&Ic @ŤOD& <>܁7yڐTݤjӒ@80B]^tlv,؎iSdfXscD%o1 eoj匍WJL_)Od莼)S>EW#{#A8v]axD9x䋀 pK(Q:ɋ f).G~NG[+~ymg%lL9aɦ$Wx`v#iJOMSA򍁤6/R4fEdey$mU[:dDtSg}PԏJk)9:D+>E>DZq5g`>8uỚAqL;yԲD&=e23Ωf8hv C,s4~RNIE03%׏KTy,~cu{mGW[[3F٧yb,,G({laIqrypAtk #fQ-Uև=7=4/xxN3;)5&Hm֍5'CTs~_~r(#l.}UM/Fґ97J?g3^c!9ak|6梕vT7y884;%v ^S#c|y‡םqufah\ˑ! ݏ%NA;1eL'*2%4:BbKBF +(S"O 7U?``s>rEv,r7L@gNEr"O.1I󔺬K_q\0j x+feܧ?4KfEd!u梨@X[פuBfu%AYq2K c}/nÇ=A΍=3m.W9 ǐ0uɹ@dK#} j;"$lz~cF"}Kq;eVpR.Qܴ[aVH}T-zjL௘w3 Uxr1i|Ndfe)WS_z⵹2qlvY5kU7U:PXkFzGJ4ѿ׋ ?D7+vqJ"c69񶞬~0fUmy206YfG(K&黭 qEKW"CPDlA8f\sQ*2=<,%;9Sp$ޓE2v>UY7p! bC_֦@y h%1s2L0k{)qAb#pkJVI9`o@kfߩ#+#Ce`F.fᐖ1SތP;;7_m6Ie\y5f">Cn)E#Şwu!9]<4.t/ȟ W5o&yeVy/QǪ ,Wأεފ<״l$EX} %F:q3,Z g ﮠ!@Ho7]U};>dkD]N yB7+e lqV xz tFn3e\ <ld-m|w\o r(M6Fw0 "< kcŦ;YXv]8¥),xF*XLl/J+ڰ/ۖ`qb6n{ӱuJ1S4yP@\H=5`O W8%~m3jUe4jʛK0<S1ʖ MrAMHٌ(خ۱6 ?liV]X3/ }SI;nQ{,c&^sy]zZʤ}X@|S/mHM|U- j+@IG;_qHu wy $9ئ-dMUj] Q@{fu$ $P/_szuLyc IMfΪn < U/1@!9]ll.^KxfUPI' r>3$7ɣ\~ρKzQXT:C`-u/`>En,Ez{*]jMw#&W>,o1bGxQk"w1/dyYh_ R4o#YWqgb|LqX ~c5 +*= u&ft|>. `1X|!FԎW- k >+d6L tj[9:EPWu4xfa /O5_& @R;s)(rqZQң(1_/[}8 ;6uSհ mON:7Ϭp<~.\/Kc{HdZL%dp./@W>0ecoT" LiܛD"+G\Nܣŗ.Vrg  Jp^ bFcy9Ko"b=z`RlӈS$&AթZh](㄃~gb}dӄ DӯDawdz7yl\ԓ顖$cLj;;'Iȇc(Uro DҤC!ƚcRND87B ŭlWeYpܭz\pȰePw ǑmέEH!d4˚|%t HU>*m-L(HN+޷ӭ8s%RP<],J2`1|P ,Ub#P0:EhW#4N*D>~7Lz(=$w@ MOyPΉ:QvJыcqG7?P23}h*-)|{ʪliȸ *>%'+ŞQz2)@U0UW! ܜ!/^ouflsyS ?)skӐQסyx5ID y6Jjٞ2zdb3ȆИš#AW߲-?~B~l_'hMd"?-,-vz `26a=_&3#hMc:$.' oZ?FAs)I#b436vs\J3OGH:q|a ^TP_Uj=GM5} .Vr߁$$z"b vxM\ 6%]T`K@b,e`-W֝aېfTY8XvX)bh{(#c` A(o?NKgz#F_Y{!MiZz|Id[xt7?T9Ka:HUaS!N{5q\]B:IՑ2YWI*KDqO4p`wQY&]mPFJ:_nMQ0jj(!{{LJxD`%2c2˞9ԾWs (g 7x8AЗɑg"X 5y9Wd(7Ʌ0h;Q;uK߲"qlbF$#Wu$T%9DAatNk&לH Ã{E9wo'-/EWOFլP@[wpz(vzݚqp;Z3&|mJbœYǴI $*l+gQ <t>N"YcmH '-:y{n+;ss$U6]-"15o^lC9xy0_N*űkC^\?0]q!O=uy;=>_7RY%׃!bvzUU 5"/-  qU_P|0QéWE32 $jZW&h؍辗hidt}V8Vd4&x ґ(iDDƖcshYBrOkms[7~lG2xeYی;vcFK s!朶=iMc~BŸi'}"EOm<(ݿ{"J CGD _qz8 LˏbNZ|ECDQz%$(iQRYE0Vi(x /)mL={OR&{܈UcqIMw3tOvj7f[R!'fj2"Cp˧*!uiS4"2lM"L!f #c"]Z>l9 KlB~:/|G5iE;icv|ǒUݗG/yJx S <e&*A 鑏I=i 6˛rfYװ( B= P/3Jzj-mPFE{ip~TJ񏮨qX%!o0: F6`당=#6v,^tMkW%@Od2f'8O7D&eF5NJ]G*PfuKZF`X40eJ`%lnPux "ݚg؅E+{ d\ir P{F2K[_E_%x李#(M8K.rkAx e @~#8, v:e͜xޒW6HJ*M$ 8:GpNyt -aAъOkj'a AHt~ݲ:k,0oՀf>Y֍VL7nPc OpR4~I$5dʟlͭCiSo:,>>F nac#8iW/r^ȼl2|!=Fx?jyY_c6 paWyLV [hW4f6ъ$Cک $_B)$I> е DuP\6Tei MD'^x#=Kmw&`f*V|WWf^}Ju@AƟ,\")&&)@+dn,L7}-W|j QoZd,a) ;1b\]HlPEwfXr~BɼJFx 'G8p'F\f "kUOg@}eΤ@OV;y̤>i|PL$x$Qn>Խ8$6CzF;X2XJ AH\jr@o(6B.cq'.eܬQiE۰UgCh{ykL :h] h-HNIj"`CC$@^JagHBF1Y)jQ-TwfD-!ibUqJm CcQq#DꌜpzB(4j`p?CSIwmU}W|Ikm| 2? k34dv㾝^W T+da>B5=Ӛ]{ {SkAS[E%?+kR*]49ty>y?? ;Ez'8a~ 1[V'Ƞ#} |6>[0$F̩?ʫit?M:78.p_Y$\XE6k?gg2;,7wN1"VNpp=|z͊엏 A{t#Uq&DPZv xugb{Z"]*[4O/6ˁn?w(c0x ޗv/'{@'AD˂.W*- ӑ㠕6v[ucQ td@YxZ/g uQףvaUkq-0Worx 4<P,'[lJ:q;{k8 \x(J/4K>XȰzwƊs 35f 1fI~M^h8uvW0[r4pYUdrW&sf [~͵#4)A(%@Ldil\=[Ѷv ㍏`L/]$V,o;Щjv'BQA8 %{$~!nη{JCUo6O0i1it;*OJקjz3N7F" {?O3ڿ6"f.-|8B\3q7p۵V,nR'O5tNk:˚6;ٽ<@:I`]aފ06 .#\g$+r3#"ˣh0韴4lIHNHG{ͬ(&+S;ۂ:9*vdfB`qHw>VA]qK4vр sʪr{{mjt͔U*h#&f^zޙ]_Z!zPV1rZj .: X˝nG\R@Uj[VDq:\S|Lu&>]6r+:dCXRbHF!^{ YWЯ>^;7`^gHhRgy;5Qq!ρǸ{Kao{{{A_k_f5-ȴ>ɢӆt:5,|z㓌f(7dDEt놆b|47]t}W䝎X|v~)nRDП0'΍K+ 3iۜDO$?]hɘտjBjrĬ][ 2%XǶJ5'E5bdwAx-(A5ZH6ÐvϤE21SУhy|hܟh3 U ]ַez[y kgksk:g0EWۛIڮLg8kmF kiËKixMWPӂZߤN!`/By/a}KP{T!Rƙ3ϲo!b茓a3DD pI/`Иl|΋4Z55}-*gTk.\F8_(Bw#Nc0u2IKWm;ML>\ֽw NvM^1{x&˽E2x .»K*Y[pقG5p6:K 4YxO¯3+Nַ%ĔuRq5bՀX.2µ Z P0N^ex7mTA@Ư4!{YdP3)]3wV@ %Μc\LyB C(/BPבJ/)[ޔ_FHy9%goDwtŞ,l6𠈇z]ZL͕% I#/)Ǔ;Pp?$d(]/ȩwN`, \| ͍EcoqO;4h&uHV{}Jj1Ou2kUg'@Տ􎀼]h CUb.(hC._ɋa%97Zl'.mipNصߎza<)_p!1vػ=6٠2'E`v1Ek~!C * _ ޻3VL$LЮ-w nY!*;Ztd7ɷƚEJ;ӥwp"T6YFDl E":48ٞǺhļ- ddU@4݁˂ w/-mDxн{#ĄP'{H+ػUw۹t2ZYp!Vg(lG:Scl?B UX zd̬{Q@e5^YyyJ7}"%=8"'W\eunݪLX:9}\O} p:b4( kTj(3bs!..FGgbnQ#LY6Z3! dޮ+#nh;\7޲TUs*IJ_1 F[9%;B Qn[^&ʩ7'.9ؽuYג@/3႕iO&H7/q7>va7I^7#ܨkJİ;ZwgQ+ۋuIuUM&;HT9LU{Zr@?ASW_!åZm^"><I*TEN1FxSPVР~rэAҶa6 c, AtAdV=A->¦eλuj%9NTh+*WW8QS6/"b"Pm`cK.qSw R ~#bIwMuQ9>+k`K&TFL64V}%Sz>к_6\h!cQ5eMv¡3>#R]]d':n1d["`| i|~^ jd}d`;3T&]g? "ZMoiHgUV5K>w2{MTŧ ~ y5TZ7rڻ nʩzt +D^YX XVuεJw9\4R}12&k>nCllcQl بil:k~u0ah&eEujA9/Mt") [8IH#z{?4S= %J:$"SX vl?P#H r#o-!Ov`4Ѥ a fD^_t `/e.#Ȥ%۟> Ě L6RܝW0&wCV~{BG+V5(X | jWr~13ε=\9VQ(4_Q@3V=wΤҍ9G2prU>~kx/9tq4Kӏ8a1>]Vyqblt/KɡU>81- MC*JCw缕nk/`WPj@ΪFӅȐA j*_(/Yl#@+,c$ͼsZ,)pnXVҬ8᠊Fir=6viJ Iڎ􈅻ul ho&kr1йVg9 w(7·g70RxPyIz:h۬OZ{ڤ{Q|}YrrB[0cHiEJ˱ qT2;Uqn"hWPy %SB`ަ̗Fj1^媉Ai7'9G|Ղ[_l^~OeaSD½ -2ÔzcCiO{u G@7]0azG=5Wfq.*Kx+?rYt;cpx"-_cf$64+. _p9$]ͅ9>J}nZ Kz>T:t)a'ݫUۧ;Y  6 THVJ - ezz.҇){{I+ wf <"[D6L} Dg)ǁ~i~_w"pZBîtzxK_a6_2_d^&K;N|fYҼWy$Le`*9s3 I9鰩|R*GD=%+$QB# ڢ\Z.$T/0p/_\Ӧaf 5Pn_E K]Tob186ӯ1SZ<1gg  txBy"'1դ7lo` me[(vgӃ51ϱ@45; FǗ0IUMx%>etZ;L:Мa:9bdWi`=TIZbrU8HQefR[}إ=2MQF)~ Ry݈"م~>8t+8>lv fu1mCKG o&2(q.e@0cS̎w4/{,պw@=&m+聶nl)u{@Q23܃!Qvj!?OU{l;KY8'$Z&ss3\x5mۄxl>EVT|0ΐ0(ǭTOTk VR$t ,[B %3O޷refw}sM[gtzx0;JK?ljr"*>I!j5/PŦA >uA 5-s x]^+TmK]$[8Gf}of"N3dvLƀddкY,X38j{6@8Vb{u_g o0JMA Ioj1gZdyЭ P#J8}+4nIoRrN:%佭=}=5F,$_ nSځNybW2v N3 8k ү~*끰 ] ƨG-|Pvf_bpL PT=N7#$43iƯq:jJKڛ/#Wv:cU&^t43lH${IHߚ{̌$Dz,AߧBuٟas}҇8H$hQAC|wר$q\'װ QEܶ!:yn -J{ĩg;# zR[p_%ZIz=6]d]i]"-I<F(?eV\!d()O#}dQ%3ˆd@S"`݂| Q#O&ѿV ^** p{65e|6(8 q |qІqKo=cbt?!%$Ws:0Ç^4^Mok|*t֓|3c:/'^*W)l;XuO"%*/?RUᓃAn%$=dMTlvw w3ӗȕ tO9l\RXkq\U+lm"("p n?:鶆 ` iE~iyVTb}LwokyF"\2'lϲWkQ{>ǸQK, ~iZx?}?wn6g5 fNZdğW2\{lybMh9Pk>ݎYP0쉯$qbb u P $ RfPɽoDPڞ˭-2AaxDplCt7PkWpY12R#-C55Vj#QzPrVZ!ib4n .%hW[2} 3d$L ^>/ 5'Kf[IDz vz,-0yHh*̸UJ cc4 VW(lFhEM ^uR`rXޥEF]rHPMteZw]\m8G\ }0qd9#Ĩ<mʄ<E·N1hfj٪SFy7K[n8 <P?\ch#ր:Ң؜~3Š`[:$0O3G9 ӴܙjH(qU:KoeKX*FvX *[ zNu!Ȱ"~5_Eцu',_rc`?|ѮZ=;St@7:(S>Ĝ S2WYC p;u2M]OyLeyy̋Qy!'&!+~jCr:s7v 逸wc$d͟>\v.4wY C⢊HXw\ j<2j1Bs [S ?^SI͆hœ$ϯV$ o l )_d 59PEh{z~}mPN)zQfN6z'bU =& sؿ#h-)paw~3^M׼dD,cioZ^v+,\0rz]g'3&8bKA*37u=lBf & ֤aDouI42M_J|um#<} =.>RꆾBgTJG~G"FƮJqqBAGq g-kcZDU3)!8+'8:KݣY4!8,=5*+iuBtA 8D/sqj5 36}6;F)XSKT9 tEZ>Ơؾ/  B{nnț!H_=֪Jݙ|0wzů{B"oqpVu׊`OfK& _ i\>tq.4 3VLǥ&7$ є_O 㕴B dRS<wfǹu崞/[SVb;aDm^%7"бi՞'|["k؃jvr@Zކ/ 3U6omN$A0m|ƝȷqixF%b[=@d n}ĉzCa֥MC}xhNlh6 .nruQR$^FY7`'Ǖ(Qxc+40T7h.iF%55-YsnA"s@ f7 '@8M Ieu{x%6$ sȻ;nTM$l5xfAQht-)Nwkxͥ2Zgg <09,6l7VўggZdkS?!jd^::%R0t' (ʠ,7[g8Q+DsWcT2Qu:t,@`7b6:̫n%X wl;7{"ڐcʎb/35LjmyXr"K6.帅DO FsUOb{NN.+iogԌ02TK倳TɱT^f"t2m)=~er] ˗zۏe ^.J;'Ikǣ#@T]:h#v7Î/=kR{+6hplqM/ 0tuFkO8ǟ6g0~n\im5c@&$dÎJxn){1l =uPn%U\N#?p,*jZzL6\( j aܶs4mQqhA+C؜wx:F)4BKeFm3ڰ]2CC< Cļ=Sw`,FCފfB_)?Ɵ*tvCq]kia\0gb01Fh>ő'a0ӵız?yU /xU[KL 5:Y- -S"0pe7y"7bDA?htSG%O\rs:ʮi50tkP1zgKO7 1Mb?MS!3s'T~")dM  hov_tx%ge*rb*O5꿆9ǸjUA  !zr- .}76tbr[5|z$vjza. aĽP)!KLqF5>" {T;+06VaZE/'~AQr+k ǜb,xdg|=,jL2sꓶv 9&T,3x`ЎS*k(I1ra|%lV1=]|C{`^.]S;G'( 4':}K~:8U-댈 @MI$C& wJ2ڱܖg"@!hT(>iq V 6b"޿ ~IqȻ fRf_eU$@a4X^ПrJ9lH9e7'o`zGT>(YKDe1T,cӭO=N6'~p_ `t<1 XL.R֕bcD- 4wXِi͓/jY5l l#JCO'HG T28kT12$Z[_ B\U"S! ш.6oA_G1ajNgl^'F h!4kԳ\ۇ$/74\}cP(1pJYyZ,5)O@l]7z"zc޽u,W/NTEIu0)L7M5Nzp@{mj ,.tuìL]}|w8*V\Ҳ$W\UWV(} %X7P{{#4'}A>l6n]SЦ"rz/|Bnqm5LQ/;dҬ(^)Kk3 Kl~MOe+XO` =b׿~2%7Vu2p)AžV;hV67-C͙Ökq"  ꣓#˃Br/]5B`2pzP] `[TQ8֣G!a!R-W U6 JrCA8D+(s98$lx֠2&rDU5Q!g@]|¤ 9mSTXҘuL[YV1szo-1hc#Y488s9Djr41BG `S(A6UڙkT]?jzL;O.U+M/ۼpJ+=X f #Q{ԡy K)h$"a_ {F y/.4=HH+S;GߘR3 U%*eM,buB:|kp*֋6˯ 5e.k\N' IVa)MS+kkrbo9y̜IR z1*vP`ez'  W3Q5}vE ׇBO3kRLWV4uLI.0OX^{䩔TlȜyLꞐ^vl;1 - L)T>f?-|j"&W +:褓X57} f˷k#RΔXEqq tbQ=cr bhK2+ b#{/Y~52)YVl,69Ugێ߮ {7uk )o{'*ݔ9Gaz]=)וpz;{6ӶP=덦z'l|GmptT> p* 3A>6/ݭ]*/+Eu"f~SPn{ imnrť?:"ULE-=kހSrL$Y";w6m4?jzLnq:3s[?ŚP{LW'qgOd9!(?ڽ4S]]F^x}cT,4ǠkɆ+.JSS Уa]t|C.75@mlZq bov,rOJ1D&B׾v9ܪ4/kx]lƠD{MK5r HIcfHB.M8Kզ鏻> e; +muR$^J %d!!x+ΠXj Ώꓓe<,buE bG13C+fU7_79VCheRN _ Ib?lzrV$B~[x^n#yz_26]Z'OOou^>8RwESNm8<ص!.e5% &1\bm"tv5eB.f2e[L {s[%y=(In\eU֊2~GH30=ՙ.ԃ\h]x~۾k> $J\Gϑs\<0~BMKSA·6ќ0Aȅqߋ6<|.Tڗi*2]i7 Y'?tewlcN@ .Tʚ…F"'T5چ9:};Pk ps %Å@ HҋÕ%-S ]55V=<ʇQkH\(t(U,j^EN$Ξ(:|9N P1l1*ޞ=>$]اM,Bܱ#󜅂J藲Yog8 <]ϰ` K[E:C+ʤ.xAПqMz ɿ^OX'4G2LP2-&wh&z9I% W} "q&Z?iU"cWeF (r LYF^R-t R 018`MȪrjV ³a.A>'0̹CyBZߛ`$wdn;w OOm/GEW6-viQ4!+(i) dtY<: ֤m0KY[WC}-b%M >N@3#rtpPJ.o%YӢ>4i ftY 't=1ɩmF򣻹G> HU3nn "d?L0SwORcʱ9B+ٛ }7x JKޑ.ބ#_vFݏT[ @ئ{1ܤJ ֵL y&USt)v(ay$Jm"P J dj8} dUdLK`1%!8_pg.,`dH5h)G[[ʥ7b e=U2vqO5qh$v[<+ TC_2"yRnml\=m ~mUЗЯA M88@].\5itΦuMD| !vch?&-`T|QS4mvYK؞4`.Ц2-I%^J{@cM_ 4f.zn%SU;{CUpN5_EJo_ȱG+.58=١ɏ@뿜)2Z*6 &P>GXp:NIE{g J+ϠY/rO$O"}qX `v\`p.oF%m4Sx#BƊ,c]3X%Җ8ryjȳud(k:yB0 =^m6,S0<φXnS Oן->aˤb1]Ս,ڄ-יI\P[u$4ysf>=p4@W5G;Ɠֵ})R=8MZ;=]sտMe%_n/.̺W>njtڏjAc;:LqF.j`5+yvG.X=W[n%ܱ%d.u8~5n6ix!̉|₂gۖ2N_C.q$ x (ȴx`7Og!,+k }@bcUU`$e>3y&t!֫ڻ)d))6-/`:MV}n.t>ĉclm :a!ƪzlm%_}{Hs=@G0f.vJ@&3k-^1)UNt\ю+\G`㮳3*Hf#fԄw-Ac3UrU<#x`䡗QS< zzԈ+1nT thqe,|o|Ԡ҅>HepwY^S )mcJJRvp#VK)"0\8f4z t,~k]toejL`]ndԌ,1Q'8KufvHYꡊ>˶$cq8/:E.`X P*_׺~彟EƌM*:%)`6dbIUL'IpH. UB3E̛h9ŤOu;$uH> kbKWnW&?]8\"J:^*ƍ:OA uj5h'ӴhJ yT275&/ĒKJh5'A<ɇΙVz[!posĒ?5XxGmqU̵>,*nN_TCq_7wz86-Ob|Dy39әvƠO>5%|-ufh @-❃ v a;LdCa+B:֭н4 ZMq5Hk+{}Ds"\tw^>Oi V=>} Eqy<],^< Y.N8 YކIJT {^0_ueޑHgjMOR=E){m֎N0ZJ7!جA0WwT< U.t/cزC;qwKүL[p\aLK( wKXWɹg& Uq7=)Ǽe)֖{Sن ?;@h[UpB$J֥l=ZXlv^m-Ư^z?TkS&9k%ԽvDBi>$%dReڱ?}I*p.L(`HÿntZ}ҔTwK,A:."r7"AUm,`Jgeҡ^h|,p]Đ. ^=ViYgEr"'awEt׹F^Հ!JĖ 'SKMP$c ;O ]Z* -IuT\nX* rhI[;x@M ݁(٩4k0^ +9xх]bͿ;w_oH]` +&"GDq!m10NE2J?")[CQFs@48{ ͯ`GJ zKRK]%#uBw+u!/.p1 $d1cK!f "YlP,(K¶=rLT:43Oє VsOp;oɯW 7v\hr0Ba3TꞾ(<⤀57r ]N2Fu#Y"9rBj$D9 "r|m"f%zC"8pLEH fUa'et*nVsFo%El9DUPhB#xuK2Rr,:Gc֏]Ė^=qKiB±S-n\QQm'U7&E ;C6aqtBFF9JPa_2]r2> ~&NiƷ@z!/?wy1$B^ijPGޛxbF'p|f&Ʋ&Q'cHWM >2MeZwBeK޾нկDWMr#JDW8yy*9X("dKWhe<XϩR0)UPk](n,ݰUi O+z`݉Tb_EVTe K"oM/SZ0Rτ ifLwC^y5tUbRnzNf@Cc(Fec<+3RX/:{u}H +T/ zS,}3Z}*Rv;9cGNyʷ 1 JsoS 7OXM`Ձv {j$`xP?"ѳ+V舢< ծtD a)Q0NR?IT{bc$2$l`tӟ{ng(9Z"0w2RQWKgv$,Rq 4q+jSr4{WnUTP1n6mѼnkvRBd5 lP CAyDVjTUFm#'وei0-PX˕ ҷ7~[XryGϗvҘ[k*;j@_Rd2J|h kJ 6)Mɺȧy<#'v[&)y1$vU~mM!rW+iUF<ةmy~'&al&Ytn4 Au6H^Fm [p,n e= ^LI}]J JnxbAK#%@>֜{bv|G}kp<7>[5yX2;;yo063qZ_.S[%ȇ'aܪe-: oھB;JG_~C5QKط/⨒Ք pr  /#pr4-5T8Q'*B#v)&b% }:p+zK'z` {"W9GX>"^&p⒄eՈ |g-6Ĕ &/x. a8!Q_0tIy܀.MQ4ҟ&g^0 SǪ;jy& 8*ȩU 40&- ŕ;#~֛py})^{pl~ `;v$`r R4 s} f7RNƆ"e&5Y>" 9X^+ĊX`O7K[=j~;JDdC(yNCbZzp2rL6rT|!فdV\҆CHK|[o=`-cږ`IJ\^w>J"p:E7{tLD[ǷonͦU)%N&lS̖[ej O*@P 10LBY݌bvU{-y%r\U XrzO.R-FC"~<,`QxGlBkNڀ ; B h`>T0%$li5=a"R={ 2]Ppue~`~4ZCR_ǧ%K"M'|J INlF#7UVC4Sɒ3_ԧ\<{Ny]VŘPə L*_\=1(g^[:[xrGbYޡ3{3{đW3_ mej &)tx bCZoB/3;{=G0#3X79^C鈤iY b ZA`.v->x9iwERg>RV 涂T3 uхi둁Tq@/U&WײLG?H]lψ~6P+)~a/Y\ISכ-A&9`Ңt\iaRS!?`x="O%Elg_;ƒ/a}'Ӏ4ǩGhKTsw 1GBNwH;1~f/$ƚ;% vA!JeXJC*φ"amh1 Է6}+׊T0,u1=[鹶1z}.A'k5+M-E+ `|7~F ǨM7Q%_r)԰5˔au@(O m SqqbI0y65ndyϩxï2\#g̰&Z#j4cL 贘 f4εDݤ7y n?ZnCUOKu;J)'/l"v׳wTqzvx֘뼡Bo{ötq*СE)?l9!pt\i܅P.L3$c~dRn>_b,P;hjxL"_Dx`B߽p@ u=&SION_uރH@63:Kyl8j3`XZpd[.,~WS)X #Aj\-9H Is0*#A#O@M ?qyVSڇ[{c=+$`R%KFi!CO!8tvX:[cw;G2\K ^%CUʄ-q usU1C+L@eLk݉;`H\1 _۬B?B *{AD?>>d'q$y$= R*JcJݪɶ6lg~v8xE)0ga>CsxC_BO<~Tk5 v^^}Oh# 0%s/`P^%$hw5U/E_T+QLR$Pi nV(lMz8P7r <@ T|1D"Se&dE3Z23Z ʴ\] = M#N={ls&N6Fs^u)E8/bL7ro`8`^<^!?/f8Hr-?L<Ո4_n&6~.4BNĔ+H^Ny"nV ifoyq?Ŏj:]sv UDl e-jx:3 T@}:v !sf^iсA3 II}#[VEȭG :qXBRWXo'?@K:Ђ>=IKiχ?fY$pUzާ531ܪO;<>tjN֮+Q ?o z9 `w˳J; /N0'A6㳃{&] a_x)#A a@xRÿ@!DdN]{fYr{44N% hb>}Q|p.pt,vjP+0t" sN٦k|ip)?-DQʽWxb\ 4!C)g_zVZU?u+˛v_)[Mغ}" Ě{!MSJjY6ZDE?g~enrU.Kn,Imw&N's!Z" ̚W6=3Vq1N ~FnӘS1~¾Ӗ8,IY}}{}fL2] $Qo|o2PuUIBeMAx@]\#bH:a+p3p>\fsDȠ)xk \21vɕ!6$}jS?oo\yB$[CDqU^x9q8>vz,ۭV&dyrAFn8PRm2oRW /7&omIގ.itg#$L%IMNe+'W|R >9qtL t#kȪS S鋥.+]ČH7zA^џ/a+禲NCVKb儱6ӱ&>r4ȸNV}\r񫩮/QU5x# :2mwm\7̬4Z׽.rs)AgN!1EB!WTM_@:_ÒQ}dN` dP4_on\r>e4$KW,y'`e9)$1`>@F]`(}FRY`z%}Ǩӆv/ Jlʕ(CyvI'"#X<%6Gjr)Fd߱PS&揢xZq3u{hv$`T=uRx_D>)vzv2h% :6oWM`&&@rR{"b1B룥 ̐4!đtBN І0GA$Ռ!ٚ=2t7MwU{5=G|̝!u;|}fǫ!*^m*xǾ˾.t@ &WW\#fs'ŢnŰPN iKOD*r ^w':+Z~oYQd(g\:Ɠ>EIƮm1.r,lXP3 CdFxrlKX[9> ;\"!58uSbL:+bmYˑ:BjHŮ`wzv)nYVW2)\dIYy=+;-Δex'ֈ2Ab|*84S T̢=qHlVu+E,]TXk;2.o! 0SJSlL_~BDZ:fyr JirQsWmK н7)#?)(i@S>{ ;K}*W{u# <ŏ#RT$!#/΢X6# fQZ AZM:ϧ$w2"qMź?.EљoWݐʐ4U?-O⇞i]ɔɂ\.SW"Ej# R{DGd6J^W ]#AA'T,U4L~ btkDu߉6P72 `!W;.ڷ־'H..2śNl7Hvl h VI6V?ܭ w_fXC:a9W=ӴK{a[c84-aݚ3D_jr:1 z/Wɑ9?aO鬰=5OsC~넕(8ĵȇHy5<|ɋCīY ILzhE%U "S j֠3K|Mq=kPDPG$gw+o5a]݃mY~, YD%-`[3O'&NVՀ#Îh-[(γOP>1)q{IyT9"}Y:DlߔH×)͘ _lX+T#0ɢNa8ZF(2 xߒ: q{35f87jxe9/2l2ӈLGK_)pwۃB1ub=Уљ|Pߨ$O/  ^_pVתr?뵐2.sjy%S٤Ww(CcH`4M-#ewఙ_8WTa]xmI}[%֊n-S`}9ܴAc.X \bwW-\#%N=:^M֭\ĬI7<9r.:fЗ#²~ئqt~T``L*r>;] w S"Y<ʞa8s,ՖRr-OM=|dVAQ@ni|gAX `X-ªA`Ctjђ}5}G0{EfrA܊j yh>! nC@m5Cg^cjfR]PmhB{~%kTsj8"|)*z#6,a>_ԩY )+:9&i FgED )(&j|Ǥ>UJ8mFc*#jI y*GtZs~H,1Me6L)!O٘8,^9Yj5-]r,@X<ΛbL ElVþ1{|pշ)w@|y>w^:y*QɮYx-m=QW4{r6g)3ZӸ;ez>!g(w5F 6Ff}ݬq+z.B#ىA 3,Q4󣪍ʙ,H>© ZV)[qK🶨> =)<>4gaErر\xM{,?޷=u[w=[߼fķ z@|~uځM|jWYj wƜ6=Y,ȂiZU\T5MOsnv %*yҘމߩegj 2`ᔋE 6_g( r~ ҝ9RG6dtk#r~kAlwQ gίκڨ;=_ލr?ʄ:7_͌D0Sc(0-&"GI@$D }GuOMWZ YghJEZ(]:QZBl+|@wNj/&5z_Oӕu9=~Wl'7+5RVp>V+<ӄ11}"|M%Ŷ#6/ g&!Jo"I=ה3;p8Zj*4dIqa0.Fo[Es[>{ "XӆouwVÃjYC,j՛z$fД{P~JU+N¦Ë5kXɶIP'fOgZs #Zt7LJaFPTx<%Dd/)>rW޳Q7}MզZ)aYd NM`AhSvh" ,0Zi:Bs(x*'aȭPw%6 љk2rcK.{wBf(?j,-K$9M>KCC5µzgE 43i:uﱊ)c4Z-jR@v<1x ?>nq;zoh`r/!gF?Hu ZsϦ볊;6Bכq^f?zvE`]Mǭ֖ v,T8V8p[rCf֍\+֡_3XTSy*'n-Х"N-ܢl& ʡ-Y(4NM*|t*l"΀3iƯAmrVKڑi1kZ ʦs/!:LwDF?4231~4RK79bڲYL1Vc4Ԙ,^_a$砂+^b`Oy#K]wрG^2P+Z"0T$k2Af;֖@Z{rga$h:k)X5=jOЩN0N%p$ |H4:UE7#E=lC/ P-!ZH2ቴſݺTfzŌn4 r 0 =83RI~LAVo%^~!%pX(:#VD*?ُq q{Qn+ LN}fLN6 ƿB)6 gq mֻ(edޖS)BjIa)?@S:4N!%^xhf].^_ NU |REWQS)&X#/F(s&:EZnE6z,w\;.*a-(ՓH+f#z~c$UNeݏLߗeh〈Ԩ=h. $b9,[s˳c6ʢ؇warLBn y6DJ@j 7Cam)5iIF "xzNZ:C{iB[#4YBwuQ/+\ !1ү1%pEw7pje߰/fD%}dh(,_+0GIb*0R~TKt1 ^ܺnȟ)p|B(sc+\&.D׬VegW]t(_3ѥT|[I".Ht=B_܈~ߏ _GfOl}K7.SzI_T U'qԜdBWdQnX_ mgȋ>uٴ&ÿ0N>1KiOg{`Jnگ 7Nx\ kLCL,{E}L{;$$ChB?l8Ň1?oTqvyXH˥,B*Qk~3 #@EkVG]RiM(O2F"1ɅG7Q5q,- h-x:N"f*3O~j/*?3X2 +8 Ȥ,G5tg2qPm<I#/~69_=$K;}8TqF^ 'Bے/0ԭd @\(ݱJ?8&;2B%奔zM‘YNOtr]IA X-Qڝ& \u.oy"XgIyC%s/(ƨ5w(!;DDB5RYuupCFD 'E'X LFH2u vǖT 5*2iad-l"T#5#fHѷ?\iMc'#;@/gNZ٪㖸Ѩнp.Yĩ9W\l(.{1y 'iܕ<ȇ ETs H1-cׯa%Xν"$ь2(<О|B jZEyұeO9;m=8BK6[5Z/T X>ʽ~RTQ+Tnfsc,u{p&nRdo 5ş'kl"KYJYξ} 4ﳪ-W3LKWm/ _#fY/xX_cc*"bų="Gfgxq ,m!J\ggh1 t&kdk-YZ70 DR8j iGXJ,6$&&X;Ξ6_:- ?'C_>_޹a3@#LcE4G 5:Uv{|}JfgpGPcr40 {ȽQtGءC=%zwLb?,[$VvFC=oGQ#a\p$<-5TFC*v=8&?b8WRh{j._ޯ^S@e˸Cζ1R@`y! @qg`f9F/8C13V5WcϿ*s9բ *)R)rX':*^LhN  ga~42meĖS%& Np٦6SJ(ޖ;ߤEϧԐ\6ogWQ}J<24ʘ}FCa$Ig`&\%saI;+&~ұ"~^9pu,-󹜤!A^m-O7lh3cni[ | I42kaQT X ^{֨$AÏp"dJ.{ c:X}LK o]`yQAg L|h+jdjme͘b\c"e){rlz[˟"o9BB*o KAB5ʾ4Ox@߳,uD1x -ywO@OgLDWwgW _ZJӔ妤^+־@L6b˵fk/Q ʦK+;KVп@Bs' &> I:6%L=X3}ҀPfJVOfЙ}0,džTHˀJ΄XdSNofQ­*}=sE<A,ج߸ sjq9r+q3RD:=|+.H_ vpλG/(A)HdQ>)[ ;G'H%g?F"tyF& ,bkO楏75:1j1ogܯ켕 UX{QLCJ9VD(49VAIa"P sŃሡCOF,ƻAyN8]TH?+bf b핬D@'7LK5poSB7/݃9m—-V=.-R>t0suF"6d T]Ib:kR ?>ja0nڊF>&zv2"%4ogC.MMcuKGWNW[ZȜsh*3Z2eq`"V4Z2 .JgQvr3;3ol 3JFRb q2#!XpCScjCfR:IYCsq/DxOK}aAZ77f1H3׬vHRBd iE,kP>QMnbKWN5k SKX|aEJ阞1ogOE~G"4(Ѩe1?1jxmg(꡶asʼoϢx -"G,~G|mjǰB9F߀Ÿi&BfϬ!Dc cVG2upO s X<1S&:Xߍ $Huv#TrRgMyvo0vq4ev0d~Go:µYȟkd7: >3VVNKg'ʭ]\W' v_ݪyX%llV/{B!dMR)ռ}-r5r=GU4j310O8'ZzWwy޶Xʇ|AU,ӑeKYZ1"m v "#1=i]W8]v/ J'Lq_AB"[D  S"%5mɠ >joVJEҒ6d}6?՟'I8h= mlRMá#L5 {Reن4O{ٳv''ddXp*{7qk(6BVFԲI3Zi;Gk.^{+O^ CL_ᜀ\6aH\V>:*/~vh(Z5QHM@r[F/fǀ_b|~DE<5 x*06] 4R_)_>OAqRcx3 =F]|0U࡚Fzt7^͞|;Y3f1 /OĶ9ZVN$!.]Ӱh; ֗G'sN ?$z#O,xP jd .S8^n}>Ecd`MTt|e!WxBFCuSQ@Y_s [LaSݒ4F+X.@)gG7t ֓KE*D7>W:eC3fs_v.: tU_2&6GZLW(TmAXm=G^<ϟZСL_)K{S! oJWsހؚ)oDd[GG#L0$ 9Rj;bk ԩi6*RB4pS3u90:yHv|T?1>7ΘYm?Dp;h' )BxoX VAS_k I4f6CĠuN'J_F}D;mۑq)ːn3ɦ~hI#^K ;߷[Ji 6(᎘g oM׺B}G ԯ=eOb!.soA1|L@hWwz, i1僜 9UJNy1a?S`W+QT`ӊjв53Anf74.!SGSF4ơtaKmwڜ Ʌ莶CxҐTmF;ԝيIlSS^gc @=x ʯ3Um)!W#?^l㰤@FޏuM00Q'%]ƯAz/8￾81*бd?-C[;"S.N'gpC 0NIMT9)1u8>?Y2"wҐk7iмj{j $^it>g\mQO*l˺{eh?IR;ҧ ~('?wNJ$=3y)73jlU*-_HOi+bYI'Dλ9-{L9S'M{8. DD dmhSi-~Fh>!˒wNXUk BtES (ZMsT۲kSKx-GT!EtWNP<9րJeٜ&۶PQI4h*юہ.5kC1*OQ _1p9Sz]Dt5 U ^pL!V}6a0%t;sE5H`MҒQc䩨-bѹ.'b4S15LR-Q .5viE`3aV<]u,X&Pw7ǨU E4+٤akvۣꏖC+×?oXqNZ.ͪa8q֊lٯb(RM웺]yfe8[(@aL-R~MwBs\@_XIP툐.ZJ655H,\uCF$+koz =Z'Ece+ME>p! АN h`x]7T'sOQYt( ,%)8ҕ~{9*@_& XaQ Xkko럞WL!6FBMG1b4AlӾ' :Ք8>llfwQ% voP&']-!cN?0Uͤ;1'ï~Z͂)1v~܎ƪ=AE+#W >9M( Y'՜u!!lL"Z#zRa \*= rSw | d,xU%cp% KQs'u2c"&~gXkSπd)5؀M.һj ig%5Qѿ+NjJ!k]acDM;T%!VLF=Z+[@EBY2H!ӳj1jfYJ4PY_s9K4WGoD8\حv#@.䙨'vrc>7!V\!ܼݵHgʻ #JECT{fC% zÚu;w( NcmӔ֨tczcV+YQSjL3s'ѷc{y|'$m*0OGiRIQET?^7A2*}f~[ 5[v lmtNި{XPjL ɑ~-<"3ڤÊm,^~G~}~_¢?O y ~:):K[>T7JpYj -Q"Nfy$0bn82^{~4T#Hxܛ<f/br @VchQqdz|Lڬwy>Nv0t!7qgV?dLQ\2W kgqN"dThHџP臒;9CR_GX nqGK+o`M}c~ڱ0Bhw~+X~3HQ(C em#]S_P>jGLq c;r$+a5:P5xOTR 2\mѽ^x<>R!mnt1 i f,CzqUڰI|m1FYePpUُy#沔#cLb?Y~Űgd'Z+p`+\-PeMS[/8F uIAĖECC qȶo!6|Pԁd]ơX " FrQ6R-?yZ`cEZѢ?3ݩf9+~"?^C@dѪ4[<>Hmjd瑇T."5'?ݾJ,˨&EaD 2xªb[đQD ?+%#,Řqg˟KtՖ*3;2̫yAt l=XN2Z`u3g\y_AiCQg3MoT!![xfۗszw=ƽT nu# 8 ts{t #!*(1:*=9o$bOTp+jJWĻ'`52?ܿ0ސJ,vkI|hZ1bB~ ~ )R ѹ&]ÙR7(Ѥ_>}3Y3ƴC᢭&/!Ql˗;*&fxYi+Ҋ(3WOIU-3Iklj[]`.N>7Dc`E4Vp_X;odE1 麛0.^# z/Tk #Kd`4!/'$'c:ϰ6rRaZFl §=杍  @Di?l}yns0^+boq|]_ٍ*Xi엢<\+\tB;}7 %&+' mF.A;ZPa;Lܰ<a[jkx٠O~&6fz 9vL8pTyq(Ƥ4v6n=|LݍF;v ]t*^EFM6wr)P.^p;J* C6p! #ӶHJC)۟)0sjU(2_Mol3 YYVװm}̓˰46)M %xKQ'f+|-_M:DezlxcL[9r0Ji;\l=7蟹CqL;20-UiKUp@F\F  9Z{IHg[lcY9-RN P_aClI+'gEY-(rE%FrI:`=JN"?ޙRC z)`K_jXॄ0>N+a8?3j6]l ڡ}Z2 t"5۷%x`V1{b/oȽ Zptu$ett7FkVM[ղ25SwH0.幚po^a*nH(*E/VBU\Wyot{)FF0tݦ-yWSp%:yے'v$uIjם>rդtΘ;Lܘ4P;)d C??= x+au;=gШZK w~Zx@g +i&1OZY|.3X !Wj1]@+k V*hehhOm3Q~.@gǐޣR)c0)*:_Nl߰uch26,kAB@uя-i*n{zYe\ DsoEo|\NÍueZⱒJRglWB'-"4s:0, ,4yc 3C+ʌJfrb 6=T`>u+$R &0Kv"g䗶G.j%Z n퇂z$7.Ƙ"zaj4MEL"gWf2"Ht'of-ĉ8s\愦B'Swwu Ei*z %S 3fz䭆Kaxq t^__S#'E;(5KIDQcćR^ò%۳F7vPK;31ZJ }R.6Knv@h7>x gťZcfp܊Ru)ï"Maa:~DTw?} =A,yϽ?N"[5kr貒Ir19LˌXċؾ\kZjx(]! mi6b,in<66V ܕ#stV#h#:R 9+/n '/b5ouowHWj)0ܤIY$7qA򼚭6/{(9w/ˑ2?d2Fz M{(R ŗ(V#GUf**a>!ODAŔ_7i3sCVػXʑeC1qݟEn֜gҥBgĖZ!Q6ٔp|8Ƅ̜:x}tAGמRlfyyf}ZnzH:>>T^C0Q<0`ܗIMI~MW"/?5o`COyzbHF2R-e藈DS!c}*|$X*.Nr`3s&S 33RZ+}OC}=/GmԱ'a)؈(BBՓQVUn{FNRѽ͉ 4 xY:,6H ṔQ@`\ñ:6u [v)#Bk+qD 'BHT[f*LN$ tv'Үk{4RY : [(2FJ3w :VL!t[cvWXdt.V/xomP2;6XјqXǻ_"6YE>> F)H'8?淶RF>;_ '@4C(jgAD6VSX.,*f/E9<`WOW,xuh fȢzvw|]s{y VY0|*G_*BR Sr QKo&q>:1dyk&OJu3&j)Jl))E4'pO# ?fK<[eTάCukf_3<%UkkP1ԁ: cw 1e?_ Cu!J<}[BwTCZ P\ `lU[,Z{ڑ޸jEjZEfg@@8Kx&8Cayu-I#kH~-b,Ta->hOuB HDY\P:޵`dD2(v2g$:RrZ(u{n;75Hn V *:gR2C CHߗU88+O2xH* |ޔ3kiM{8|F/}a<B' opYӞD&gWѷR'CFtӋ'ȝ!ۢsApE%'&-RrX ;2nYDޟҐ6Kx}!p]`XBLC$@B%wKK*8)F28&H*T|+67n-,$|M j[u|[J^/ͷZ^it]Laf[ak>Y0q&tH؎V)%k.XM~Htd "B텱lj\~s{M.2i0NN6g>]BͲ>[:XUMp1Lh{Qk+}}Uq^W:w"k7U68gW*lv.fB1#TVۑ"+4Ue|x,xdvן1>##­>q&c 9!z=ůmY106װ:xYBhJ FZ%Jȃ~UQ,I}@<j5!U]kta@Q"krgV_b. -s$0t[^gHJm3CewvNf/wv3 z{Z}?WsvTkeRuPo%g ox€,-VTx3-(<%8s#k(? hM|*r Q4w5ɉƣxtՊ 7@hΔ/q\IzV?ŇLًl-^*y?RWԽ`l*5>K/@|}ݓTm 2%E0Ept%qF= -%^M?W‹1QgP K Џv1hZJLQCi`qнQ2]b֢T'p+)*CsugpV;ufn$2*ׯ D~M c"]7pqT $2# ,d4 :4ˊKw9%~oń_: H_JNkA!QࡋO;q`׿D3>ͥ/ 02}i:Q҃ɐ5{ yQ$Y'@p#⨄ 8)R@nlz¥=qj ^^~| f 'JM>lT94Yb_R> I/>l<8ڼCILngu*uΩ= zea6ڣu:xY?y¿Z}bΨT[X;veS<_uCOl)m;mgEuZ+-q )  Px/"o Zd==̰}H6x?tņcIKe<[3FZ¡3U$AtJ`7Pl=2ρL~XIDjDŽ/Ip[XltL. B{|zlm!;_Q\ܭc8^ 8f) @(;3.rRzӌӞU75F L8*Ywn9÷r|{o) B;޶ _9N Iq,ec.j&%d¡fRB1 ut)2Rvc&[9>_dS;؀sc$M 6&6u[,ίet&6;xc M|5TDݯOV5l;ɉE)| 3/@5A"l m?ˮ2q׿V}DR4o0BbغÛw6֘DȽeUu iMر&XḱawZ:t6ܻ+u^sjk: 7H. .̪w,t$(ێrx Tt륈7iq ?\X̨+^<@HOobX[ڌ__GI˜C@0!"p.8`1gUh2 ns9CdIOvhBnSږh(]-+dO|YXtYf$Ywc J.6Fzbf$PZp+(e]cQQ>{O('(vj\0k,>V].9_,dQU6+8$.dj2!{})'iw vFGǺh iM ,TVo]9b>*si7UV7(DgUj+{K^zaxd{-4}ʣZpi..ª0DK*.]@{ל,pq;y/v"N` i4Qߚ9>ç~qu9pݛc@AcT@ RڐH|8W&d !\Ew;%z;1@9JX,n7?69XB s#Z&ʌ}L" 7( ph⪺^2G>20-,Y]4䵠-a: Ϩ y;BDC8+mF 7Ĉa'=;Rғc3]}=G@6*]8'# ԒUJRr@P'_}2P|[I-*Zb.mlZ]+cT{98=S ǛM֐jmkŢAHuZqo8<( !nh? Bz69۝ܢes 'UX##z8X\Á  $tl0+2 $TVybj6DUqLʗzAdiL6b&$67]Z\jRYϹ|g&{" ̍Jր7Z^jZf^(O Wac.TM 1aДv'nS HBE ٭lj@l~Վ 1 !5sU{XJ3<}M#THWZOY.م<.çK`urJk!Nlz GP!߱jaa^ rbACRuQfD"֞.zLjև˷ɂ+POaؠ4*/T9駱R5eNݳp}+HuV .[o!RJw5)-cTD6G P^DlL ^ܣC-^clwHa#Acr*$·wl%Y'kRizK :S^^n[bp|>u°%3 ^'"ZSI5|#X;ՠdǓX6CbO61zIlQPU,>#@w6lYŐgBuRCzyg8Wni֕n†<q'`FƘ݋Zþam0u. {VD**hy_.ӦyR,ְa n2:y 줽NML)Mߨ݊'h23'/q tCkOdHXR/Vo7 ŬhU!HF^Vz<׹HɜƜOI_IlF<AP0 $ oV3 *c2djȢ_/DH{IPMߪ?DH,F@E0'@4j ە4&Q,ҹ\sxƂ@cƕh3`k&6O g@=4/"f9MmT#ut [doXrp"lM*츝w' M6?ٰ'4b3`mZ&5mo'2Pf c{EWaǐLgQM3Jȸ}KyA*N2U+qwyo/مc&yJ\FQwP4ۏgH(l}zfXt,RpCl4ԫ*+KJFUMGϲhԻ C㊛ O@3iUJࣨ8S@(X: ͒۳qn=M1@jW>QE e\jMZGjvת"PDXqAеm5O-.pw*5ͩ>QvՌ_Y<(y6;'7Q;lNvy=@}' ea!ɿ0!Bڮ@,qe=D]Fߢ|m )NtWQM~uY/9lE:>&9$?|S 5Lg L1܃[l`&͙ށou \Rbأ|;ȭB e#bc!V xOshEGtƤC^`Qr(j/$ ^viw#e&}:i6v8CYOX){N j~n?ܭ!Ɛ@BUA_+fpck`,{TwxJrjTP/y哊-@DN8>EILDj/2~!6Y"q,GXQ 0:\ىzURA$}4sZ[foZ2vS=A3&V۠鱧bOqS|SO|N[>[6(Qy BJCB-)J~Li/c שTF$]ŏ_{v,2ǜKmGA r3"~JhޏQLv bOuAshcg8Էf)USS yeiiݫ;f8rYM= )ϦFCK}n}4b VbaZKni_"n Ȏ!#r.vAhxhJ+^Uu2- ỴD~(10iO 1S\ Q}ΟۂdCfTKSM xcF[L%{R:Ù I&fqO $icLhu6V{&uRhJ51Ux!*YD+ˇgqJO+/.Û c4S]V—ٶrҗD/aP"/\rh  򏴶CH3]ar WDwkEU )ů|@Gޮ8ٚȔ!O%pxmCgxڥXЉ3#YץM=D&$ ,V3$&F(Aaob. _U~N㵡tQAbymj*37j^߳=,o'R(#rV4Y!ïS Ƃa%#F-ޱʾO H@ :N5_(|~́|p:HfwN*nsF0QF[%ؘ|(nm{sA ʅi7!pVii$. C0{^"b|M j{SsLxIcOD>? !; I: */h b"?wͭPP͊ڹ(?V]}Gg BCC@WN+}tdrl?b?t==p[oS)w;o8j[=x]ZÐ!#IkoyYMdZ{]e yֻCz (q<>C@ݯDPV#ݨKYG5%י,@d__YfX1NlEBd2rJycMZ! ҁ8̪.2q/Z];קyP8j@MdP 89+ Qn!<Bi`\~bƂaQiХlÇe6d*Ĉxsҕ==L&+WQaBĵfpg/q@OJgG#cG~*2d(cҔzhnhtcS1=0쪸 zj[=?='ši{|oP"vk/KlrY3/ט`Soar*@2HjO eReǨ4mlӊésʔhU9JdU!ϩPNe}q2ndIP_sĢ7^^_ɧGIL Q9o@OVKs:fgF>y͆ÀQ/0s2Zkv(b7pp7TaF0>z(Yjq:f?bXi@qKGfjZ5 vt/f FQ dY?C-:^ʿRp"g Trm:[ TC!%i4EOÈeioFEk'(S8 }m~ U> MtԆ eN<_fO_@&)]-:-u0nI6OsbWrn00gi!o\d!ie2!RTKn_˺!î5b&cCv6/D,C X_X\%9K;Rs\±lNؔ׺lUF1W1b޲GQP`2bNưA9"-~i׃- 31GtT;97Xm>S\Y9G"ė]vyIΨ`ݨu.)=iYHHRh-Uh-V*B#nw_v>ַco< SR J^xBV#Ǡ@~g|i q=wU_XɔІā"~`]X_RYpe^R=5K.5EgP {m x.+JצЬ+9Ј: d^'JN\ːlHc5I:۹Ps(sܕ9fY \ N $768R򋛞֥wz{x?0\' +5./$XkR 1\H 5A`!?JƅăU-` W`Mwq%r!4Da潅F n-UtW#\)BqS!E5W4ݐ]NHC糱)>~:dIJ!&gRE]/P78WNZaSQϞv#|d֘F4o7V,kxTK#Fmz5DwLƼ#@w  e TOK'&hיю8ljiZ DٜcgA77=s꭮zР } +_Eu5! ZA=pʩ!Íg${۳!̜.)H?wwazv/Ik\f!2*I__mB/ztVtGP[ v0c*b-h8+)I"Ǫ';h u\G֤纸^2SD{ތ bI!b73S_BAc)ZnD^}U_f7"+EȈ媬4!wOxޑ߽A 6Ĺ'jnR 0( (G F>X`AXe&uRnAwv}z L6#rXVʤWz9/fk ֳ6it~0y4!\0ؒe^Sh~0sf!𳅮 MpB* }PTCC q-fKRrʍ4'ѣuޯg-Z EG5;fyS)oGphlnm+yErBdʏ#dFɆPc5YjzN)`6td CBorPXlS}ܨ!q>1˿=` ھى7_gէ-\FA14r#Oߤ0CX@gڃ0$UrDTm-M]>$;V"~@ ԜĠehKK]_Wj)Uj~;м]\w1<ӡܧ'S{R ~Xn荠Wش?㨐()G,6IH-`0Ŵ=Ӓ *ϓ7(o'4Iu.PmqZKy> s]?pzIr4`ɾ[TmL|mag+gBKM975b= lQK(=+L֛t? Ď,ǧ}6Ou[;[46S!5Pظ CؑAR̺7i8ρ;X,GZO/FB>61ϼ*#_tj믋0>YQ.%rK9_ޣpj9gCIu0b8%I2jd׫OZ5@}vȉүbZKKף"]SG:bߓ}6-7Cl<>{Z  S%g`x!!"' tzXP{ƿQYH+421;O z56$5#-ߒq[{.1] ?O  ?t}[?7!;Q nK*5Bq@(h2w6k?r~?d<"B 0Cڽq%%?E&|CzRzďRUH;HVbM<&Z_(AFJeC KZZ=Quv 􉡈4gF=X'cZ\EEZө-ǚ<MPa+C^Pt׺: ШR0!`, (b!7QgozajOp)hYVU͉ doQin !]ئZRpD]{!Π|ByglvI-TV*U@З}MėH^m|kx*VH?cu1`ƽN;m'ZMh0\qe`PdB`oIidl0<7mGtζ]Ok`'†o804 8_3E4u0gϭiiJmtzcskNّu0./>.;)uJ+*+;"(#.S*49k՜b9u+DT yA̓>,TQS6vٶ!~v*Ο}:Ft9㞶YVOeL]4)z Sis.PI21Phb"ό\!1}|/WSv̮[s{3n1l4N]g$nqg"MɠSj\9bREg-BTu,GP;.G_W3v peEF 535`$ŀr2"e@ꟹ< A .)eLc\(;6,Zq~whcـ_{>M^??s‹ ucy8S crƕ[WO)p҅FI:7 uOE}\8oz~_6ߑ4U*;b \4ei(ms׫_˕J]w^`4hCཔC&ƐPќ#]D &n'&WP៍3|q'H*(&.u,x|KTu*aNDLGٙѐc>fV 7"LlJqJV\ԫ*m%Rxߐs7,WVV? w{ȣR߲RGM_Gkbk{Ȳ0k!bt@Ȃp#CX҇^zw8- $k.Pt6(Wwu1*:AfP tƐ 5"La}0,*8nb:g 8߽ tIEڗT[*kQYſeF z1}fKK}RaD*\N9`e.`we KJ8\P$XHDnΜ%[VBpbP2 0Mi I -LnLX|#`<>S͊]4*X]Gyh.0]NOIaVlwf^qÇAT FeIMUk'Q%$}=YuX?GJPa m~i )KI>3)WQ&ĽK|rhIIZށnuxڤoy"6xL+ERJ؍?Y+HL- ?D'0+"/Ab Pz.q;6讄bAH^,.ʧdtsxzCJi X0AfOmjMVXW y50@v" :s``l#rh(k.,:!} k F|@gmNXLĪrِӯis0+oֆeFNwq%l#03- <' kFrc&Qo6ɇwtڮ?*ӑb^ ,gqKAC K6^6/wh\|B7D|I+Qj: Mi'~#!t!X&MZ#u Ʋ ׾~`kqE?̟(G4vf#ԭ`6TK[OlU^dƓ F.>Gy;*P 7rE{y}a(B~Z6w͹ߛ8aX! ͇_ ϻ($fE*yBK5e 7:vEЍr:"ዴs4ǩum~ԧPjrߧKN"ꛊYv 1gdxc GzZSD79]=XgjdTU3 Q#lҼa%fm bzte}F^,r}Ñ/㢦YieܺYnw;Eʐ^S>):}M ynu#7ʼn{Qe^#W keW=/gcd7lvQ4dg‹̹rI+b"T' /ĽD11q}hqtNCI=+ѓDN 2[VnF~M<7 vflsOd,98q#&1̀#Ÿ+ –nA^O6޿)L"3iZq$Ld4zx +|tJC4]0;m&pPȦ0d㍯{*ha: &[W.n)OX=\HW. A&ȚkAfPzl qlsRa[4r@6I/jbUi# -6}6[BhN[xMcwQfv4q8h8"C.#oXa dTØJ`=0hO|K?5X!|E[3(!@/9}\t]R d_ҥ96T2Wfc%|Ϭ2# xN3f[*=⻠&^T0~aG8M$ZaJ13SK; SRzPVM;w#~h_M:tnE:KiIC0P@ԥsB&2 y׏*=w2 Ι`4yL,cWF8z`i>*`;!H{ btA@SX "O~‘zUڀnOJE=)S_K.Ŵ۳Q |h :S:m,';]ץ:R)gZR Y,j|;DlVAeRw:`6]Zzm>6l.i}7:9K.<Ө䔒5v;(I -F]3ZHs=**l}.&)P,w!z3e+f9M/x[*$=)__—,#Ц\ɶc&\1 K yfVaj^L<ڋه9zT\@y˗5bCTٻq&6wY 5}6xϕ5x~=|rn#(P42l*]nL;X${ dQ N+?,`~̀ `!Yá0*ia3ݡv8#ݔPuTM{מ7,ls}t0D,-g_N=KTÞ4)/SCA*i^0zź>\58#6\'Es'*86i$m^_8J{)_7YBG->Rn:V \%Hd:~ WQ+ [c4\.]lc?)_T?IVb8;ܘw&ÛGnaZ8wꭒ\_йJ1o w4 ÖIH1ceSh Cn֐m=0y!vT뢗7\&-S /2_Q'݀!+Ig48ZPǨ+*Tʧ}g,%E:mNmdU 3[Y`Ui=b:.J*_TU3o'lE]NՐJ-2X錄W^!wTOs'>0#9̨?"1'#^ea_>6CoOr~ .~nv} qƷHLYsEw *3k[jICPڵ}\F+Їb9{孚ƧZ5AN+dg]wջf$'jwgX)#E{ݷ *ι]:l Of^۝"u.| !߁b\ርc~Cc>{\xћu| Z=(SeA^U[ٳjI3b4(|U@4w49|M(CE6\ەe5YqhI։]S*(wۿ4 W WSm\!6}fJ*,ÉyF`OBc,l7t;w4ԫIe\Guʭ޴sk>7&Sӕx5EJ / wϒ,%DGQ2nRL4^/ a_+!ˎᱸ ^]J甝eתqϦ9`˴lp% mK5R_kG>77\<1F:cc'Hf,!OGDu U+hW%"yi[4oV׋$a[jwpvo͕a= ڃH S0R~ -,߰pFԐ+UyUK`󽖠ز ȜTqQӁ(^gjv iTŵn~:lxJĿumD)I\,3an#݄_h $-ĪT:@)i1IcT˶m6~r]ڎI#3O'ޕo 8";_|'y~I H%tskcye )Jf&`LCG9c˵Y# `Wp%ˇМ<1xEٵ=~9G}$YC F(h> +2xz1z$+:)1_BXlj?l{:g`LMRZ:9$~U'f4HNq)tV:']patmLq@*WbɪaK"?-!Y<НYįFe偛!g1wZ2mO )s6!ni% vlW#}#]T]j/4qK&~>CC~h9mC'r>v27sPӹS)8DCٙ{>UHH"". Ih mŨ"_%ѓTR9Qb4E 6w:P?sO( FT޲0dV R01]v"sLj;q[O]HI[}_q:Pf9*TwX8Γ*mZuq5 '^=A4o7u0 u(:߽uĨ @0u VE8N䥣]Og<߻M d"ASe!xkn}̙nlF}6=ĶA[Z523_=-Rߣ#s˃<)W]>~tvAd^pon R=N Ҋ3EIV:Z Aǩ IUFdfaMV EPnqtI!-ְR:fU ~]r3 :$n{fjUʌ?!$unQH&-E2>')Dp3Kk>:ma<8Gb;/gW^|m{&hXEQrzYXRw"j H2@I|$uͥ=2툋6&7uQRuz}l݈@ZYap+xV3a-L{" _*i͸oUulT%).l#fdCױK Ҽ"tE5r%pZ{1@g,Ϙ֑?c|BMmS]+g==uwgOI A"=~B}yFP9î豩Ec_ݬ/1,WCG}迧0tIHV|yOcWǧuc,ZwoG~2ݮFugYSVX &zF >=RAYC8Qf(4GϛAxK{;p5[k3xWKpp Tx/)UBX?9N^RZ+P#}E& SAWuՀX٘ύb2j1IPӑN@8'ӂUcjo.4ŤS+1ζ+S2԰yb|tbAT?cHHJLk'LXy+UӨf/TF0k[n9lɼLSo= -I޶dv R1*7j⾀ f:gQO9W}[<;(4ԗpi̢ː$3ル8 (ӫ#P] ]o\c~&နm<Lc3ocƽV ! G&.g!mkUS!:UMBٮٶyj7#Ujj4Z(zFhu>R%èNZmXJ>@a6xcS쨽f=*bhHy;%/CnQ|&(p>~{ʟv/1Ca !׎8{1΍kT03v_Ĵkeۏ԰B4| l45$i1&E>Ibw\SxyAƌ}D e[ow$tS >Qt2trQm_ SGQv*Ek_Vjô;R/(( ͛гDn\/JqR5Pm 8H8J ĨBD\C$t+GK}oI8 )\@rp\N%ZR@ ;w$P 0o emՐe$JjxשRTe:VhoS7=7vJky'I$d_ Ny=u$0LGӜ}^h4!$vJz9ET]/ q'x0M:>юB7h͟-S'MlY0([U~8磲T=f q`-{qr9T8O_[Z"T+%)\dS*wIIKڢa7ry[ b7 :H ǑQjmMlbv:K#c9Ϟyt؞[#=O0HCv,naFL ȉ:=-0y"zT(~> * "ǂ m aa~ӫ 24#M0Qr4*BH\!{D%boH'I9Kd#(xs<7mp1xbFbSN}?ļ]t ˑx# 4V\]sjP]5) Z=5FUo{C2L*:XXRygqM;8Tbi\ f1hw%"c°= *Oa/xxa!jvD34eEw^je`"9aPR}r2>)RqThDgr\p߄/dm0DZ<4b,z>5q8n AH 1Mè~y 5>.7|NU {I bqN(g Y-Llw>#nIҩ./3c-S4!1[7_U$}*b6MѼ"ʿyӒAQzR*_aδIwfa 9*|aD"[̪e 7Y杻7%GCaO X,\VB{R!j/ϥ6O|X thAyw5PY .eXk8R9"& _$F\ [AF*Dq NW>諼q..M (~5KN$۳`L"Zpbz?<뉯YqIJNf=u%5'p 5|iF8vUAt.&Ozʑ8|'mKbwmp '{x%G'%q$S%3Dpei s7_ЙL Nzf N[FInP?*kYc7%N)we 7o`ءE*VM`l")nEfp_u)&߰<r#7!aO<%l0p|v=5kgKa I"I~ ~հEAG0kL5UJC\:7RXʊ %itЩ s!/OwG[O@]?H RqnP/ahSعZKdc(x Yxwwx(ۡ+D\Bۡ1:3'l'IΛs ./: n@,ډd6>_Ez E|@+{ *!P?Qm04jiZl' I,@m˪[`) < )4NJ6J6T"Gco 7E%bQhZLofrwN`Gڷ]4>|-yz?Rjqz}"C&/V&fт9n•%A>[

Qtv_eQ_Wt?X"wQӸR.=sp-y0 6JGN͜xH]0OIh(x qMOQW_$acr@ Bky=wLנ#\lx]TMR $n"׃,"E _eyOY2g uZ$JlB l+j~%S~ӤڍEV.F߁ WUMIuGpΕnAzB}Fû. v0TѱQM#:`;3r6~j]Lw̳Rjߟq½FfIfHCح@7fE%Ħl3DZT/W`';壯 {i b PW_d*F!bb.wfi:e0 HȬt&Vr_M]$wo@:m3P (0$-|66(F>vsf v*5%(8zpk R.PSI!ĂE6 j~_,Q~ɴOR̰#nm.ŲT2t6R=Ch—q(!ÝB )+#nZK5b5gI[ (Č;a(I?ȭҺG"Ư]~G=/Y?q9’1%v,w:Qs(f^oRx rYq}X2!+u&ky<)ICeg|mpE5hz- kZ(7F򙪱ѐ?T&R"(Rzb=E*ӂʕe&<`rRaE Oq%9S(6&Hc0mRZk0W<|~RO {(Yo.F$CI۴'` \-/ԒgdȆI\s,ێǍZFP`bW0P2 9Z84݌ W֐=su])Kq>༣E8/Y3u %XTy dFC"kD~P&RNsj-HAWgo Kw&8?^]AfQK Ji T7S$ P?-ːSM7\INټD[yA(6?@-A*qêx9UfLԽM?>9+@u3ro܈Xl7id+P`RT|)`\R h~F//Cs`!(M}s3nWf VZ_@ 3qY>q;xxĂKwvmII̊b5NJ]*:h e-[-pjTdȤB{3AiI[9ivV3ɽsvVP,5.jx>*ҳ@ ι_t5D\/>~(JG5yV-5L7tA|Ǡ{'cƪs|˯K8+2 񙓯U?k6 а32c?Cΐ ץGIgpaz a N3$N t~n-;ل rKQYphSÁ+ .p} 0~)׭2^xz p[9TW1WU a@on_U>&hwTOcbၪiUaŧCw-oJ(%#/)G"~ET?[Pw=T,.\i]#")=I,z$ϗʲ4/vt/I+{ *hyc!k\j!fnA//F%ޚ\h!8KhN^3.@Ue.G@F|;Qnة*k]oxaԺϹ3N2LڗQfϼl3IJ kviHz3tOZ @ W~{ڤWd* ̈́~fKPʰ,&0DdbRjJVdi#de;V6w"L/NLkqM'ǧZZxu (ҥ~bDz  {,deH=ʭ>X_+.6I_U8I;Pj;1"$ jyBV/ͺ`ڪ: _׺(W }GzۻD#pLfZշ7\$_pE-KTMŎ XD'9xs&/Zm_-&DxY]"̢$m8|@қb,{ؓ7fpЩ'l> ȡW4FBB v٪J܁M_.NvUNd/@<EvЈR2A[8*)Orm)|-jUn; tgP9 --Eů aB{j3j- 4z o< 3p[s)ҧϖ"tqux1Rmmeͺ.Qx t8lK gxs>qR:[6ǧथeȄ!eDgcfZ22> h BSr٦O䶤JBps"F9?zIٽB}٪j<(s\?6B7@EJ/)c /-Eipo-Wj l x~兦BYt8_kv-x3ްh$\Z]C8ej>\0(2TV,E\.X.5 a R|k90Bo _~51QhV@}7gԵ?+gf;բ;ҢxNY^Cњ /Y^ o6tAg;)ۅ4yXOrȨU>F+HJruQŽ\ٱlΩ -Ekoq|+8B}2iř(rsjY98 V_v!'J a݉[N-=Q+~^P?Ը(JG67 'wDW@TzDG|_hĀJ5;1M{{4'51g_:yГd/.d1(S[guj4tvΩ:9r{TV7=w+A8_w0-mZsFR)8~5+mZW~drv֫CP{b/)9aXa1 n I&FTO*GK3JQ[H!pݎh#Y@sHd{EzC¡}ŒOYM_^zs44R]$z9?u E9 lO51iJd*>͙N2MRzܷh[0krTO3]u,mvl:*|oBG+yJ 荋Mt' ?ghSm$In~F`bg6|(3[k^Ȋv`tw{h9gm]d=!쁩Yw l),r\(ǯo 8~SlQ 4Lj{GqQz^+SV`fn7~ӄfqAjGNuN7Ӛb%neOz4F&Icr8YU tO<ъJx'L4.x\q3θBLNhGTd8$?,Um-\u{OLvvx}3'(&G|Pެy<7X9BIA45CHdX>ռKBMg3Gc!9GkL&/ ҷr3@z?7rJ+}#1}~("J G]8hrb1.tmż.ʘC^%f9!|UB4H2~roK)tK^caFc\ߕV{ 16ǭoGql-C'hˉl3M *ț\_G^ $frܞpFU5QbqrB`QGhnʊ0Z]hHk)U|@3V, "o3Y{ZEOso)=Hu_yl5z@s<`Jf|!5SHR]v4݄NU֯L- f؇?^xwIg%|#W忐7(l~>@ o{hub4`T+qj^MPP-7@1Vj|59od `EdW2ӫ&ꮢri?wS3{9Hl^p ҾKdtD|{e^FiP0߻D>IXG_I jxU喏y n,vcEEx5[pOG`n΢|9gaGbLL7 x%/L˻Yu":'Ý_nh{ /`>n*L kHM) ]&Z(>ڪrb檖Nrץ2cWEvy'M}Kӧc@W݆oD{5Dy֋u5^z*FoC*^kKlGM7.y ѡ42Hfvu _q/D\[Z[ȋMc;Ee P gZAuQS{ЄAկ][GzW#VPW$s.MJIG/z4oD$x۶Śi>}78P?TĹ2j"wvd¸7e){" ~y[8MDDG1LΑ.zҺ D %&s QTvՁ튑ҜA,B/y@ ^sEj l{A8`VϧEͅ!vd.?2T>\L$khJ/ܬ9J k? wm;žzmRyJ>Sh5sjWY,\atg'&=}XiQF̛(ZdKE<̝0 B bSw`c[Ԧ!w pzL ?<V`cX3*EoO^Oh< $3^6]@]s5" Q Mwa^чOU@E.)mbG0w+]T҆ av܎0_|{S*>VLR.D."Oru=M&Fi ;Oԩ14nndq /#+Rr}Ny AUmt~5x)2XXPK"o̟Dk>_7آ#=s0Q^+ER琼ΙÃzg?(k]MfcB..-onn .er2ֻVqhbi5zl=fr6ТncεX[R:8Oɝ436&N#!-Q>|'*/:?»Ν'V%2~0hh c}71>y_s9KSP^񎫄b"4=\[WS"sѥRpkW]觝bRH%p;ؕ [Hv_e ss:tABؗVbY5O{/Kv6OqMvv$AGfij4(ܚy$5=i&+ Z'3@B78-Tʶ_Uw.^n!L?Az@e#Cr`9}:KGj_ED;˒&d+R :߭ xB.-RHp\h .ۥޞLca/g|@qβn1bc [Qu 5>"(@n㭀I/\Pp5:Ѽ\0("fwK H>wbKU8\<ΜvkE썝2hm3RCݝd@a,Xkp|-Iw0$Mn9$:wwEP@{|1<)IXQB6ɪ7_wv mQ(xE V:Pjf_&a?ÄhʵB1nh #3H"g^sc@,OzemVPBiHVEr6tM13raͧOJ3^zX" uiCra3|He@Gm@rcd;} 9n}ZFE,N~|uX@qчt⇎q6ѠL׻}Qqŏvߖ^P(y8 t\(wK6pFhrA)=QّvPk,)9>7.lYB9*5Y`Wtp]y?@\gSS |Qpk6||lteDbY! )k2\m}(Dlr;#!X5_v|Nǯl / 2-[< mɃ:k֢%沈vVejӽE^5tM卾+ մiKXgry"}ej@>p634m]+ܚecl22v &,8d NkחmRLޅ|-gbk!ٞJcL_iYTczWqUVIdy>A+F5 ־> Ydf5gqsqg4r)u֬ϱ=hG Ƴ'fy LHNu288ƚ[QWZ(tw +m`JNu%TiEר'dtMځPK{ K۹ h.0ݦOCG4H 6ςﮥ ] F6ۂض͓^); K`[8Ζ;`9i~lN?V196ѵrwkU=swYwۃj&}S0Rr:lȜQλ^e7mֻ|w1t20:LV.ڂ"#!UP?7(7H"Iا R}%lh!]zذc+wN"CH=Ŝ}mjց:+%n\8Y`~s?^d\5+3}hc;=FAn} /kWՙ'Y=lkh &+ щc `rn1hl`(] txLCL沜x'!cLτ79Ѷ~Ηe I`{?.QsBAC:򒋴mC+g2g̶2Ob҇3#G.cl=БjHDLj wH',rߎhF@Ij!Dm_?u27\$xLEEJ5#hCa =rqPȹB RK1# %YG@ @hͱxjiu@<G8PP/5e"v_BzW#{-mŦU{q(p&V/8N&fa_"T˳`c9mGWEPZvppSg4mwn:o,vkpyQR(~ҷׇ$q͋ (r#Rm(>K]*7-q)EcB.‡:UK]pۭtךQ)#+͗rm(4Dv8VG(ClXpq_qD_%)n q53%3Af ܷWY, KWW Y̩T*~ۘѵ]|dBp4OFղH\fY* wl,_RG¼w#qЫR3Csa&*u*eAh-=z"e]Pfa; Jxq'$͑}l0-!x*Ej :k_yDuSo46,&"=7̬)7h=L/NA29P,r:UaAzhE 2Ќ?z O|؈h92n_Xiiv1{|W1_2w+L{:,Df[FqX^?#oJ+uLz,gS}oRѓ_i=}siߋ]9ikz4No2R7XE#,hmI)ouV~MٞT\!ck6)dij A&O aTH#e}uOv:ֽ0^Ö6YE?))ƈ# |(cNF4sOF6S@۬Q&*tT͇w%i瓍\H|6%e8~*ItKp A@ٮx^YcK ָү&u,hёwd#%C*+CϪJ@YAdЕ!uxBw9ڂmң#Bac|T YQSd_#}2a-$p]QzGEBÞP; '꤫ê{ #<~~O#cDŽ + ItO7nF0='-&3tQߣ&ƄT0TfҜ͠G@KJ@ A<>2Đ5B|{S\DG^FeƠ߬NN" Q$ّ*SK@=qc/)]J 1|?P]vy_$xӑRiDtF N00ۂ);M t> ôy3li Ш$,Ike:waamhA,v8;~9Ž_ȍyA2w')4BEEּSpHc2em}Q$_DQ'3E #T56_0nJh˫tA\Er*mx{ 5PQ#M~: zݻEhyf}Ȭ?ؖĔG<[BP;!I[>WO*zֵviJvI K怀U꫙ߟn/wю 466Rv~+]h :ma^koZ-LD|0]Ԃk7M R[&skHa+K[%密#FgF YyjLı5s4B) /(䵲-#];j=GJN[3q̞}#f;8'\?8>h2 {UE?:=OH1S 8z=ڼ{3@STk0:v}["` Vq:Hma٠ xW\vpfgȚXcւ d8 7r,r_sk]o֎# .PD޼0Ks븪7k'RYl '}2LJޗi}Wm +xrl'%n3w,HM-G\Nߓw; ]rN#E`pJA P6֫GO-i}L߹4Y}K['6|h0!JRC2bHq؁"P؋DMd1+*-|u*bޢv9P} vYcgU[ed&Q$muZϭ|xTiġpƔX%dP֢ռگr ̙Yk8b\TL홯PWFնG$9.&M9,rDnc{~7̐v#HZ$L+BTnuWF%CUvy`\ ph0b!X,tmV ;:ӨG#\C0gP;Ԡ@zyAE{۟I:=Ŝ3ݶܥ]F*eAtn+`A986&6rrrf_zC:w<˱Bi}+B˻ssH0O%im2dSDV(LזBU0e9m$<|{/ATު%p1Z\'2gA~`ez.9 ]_7yF 4@}K=4SN[TJA`e8H):ӓ 7; `EQ1zm)uPc-%_V/2Wq!7¸Q'~Zy2 x-鋩RSP>IeMWѥ3$*3ݒ3M4T'%/G9p+3](v SJw8]aOoU}[NR]cBg*z4^M{S-q~Ld=Ӧs^)cz*. 3ݦ,i ,qƭ7毦*[zD2z8wZ枅%`![n7eh$uu^b!yr/YjBQ5-WgY /XmNq lܱkEqXr꠺~8Py$5T2Q.& @&'Kin*,/]$[h0KBcSОcd̸jR/$ bǟ: kE̟"oX?EX]Kɷn&U2 i(9s!tX,%{DZGC0Z܁y C|En{zeֈjĄީl1Y07EHvrsb+d= S/Ƕw @/%*A Dwk@o.0 ~p0{ 2N0Sp{pkLV,)YZYϯ|hZt %UN@pB^^+T?O 1y.zR\ dR"Äv ȶd_Hpx"C_\ l`om]a9UmM__k\d: &m"vj1N`0{0 3_-~m|9UaWߓ{v"l)BY9 /YaO cjܥ9ˈ=7KTn@U(6=Fb %UhwB2c"l(!Jt5x,SAsLƶO>2nم62vxiC+lOEWQ/|8p3ҺZm4&A1n8dUDs}.oT&Z5fI2Xgok|oc6uY[7|BnGJojjҥW#DNH{! $R*lv`db`|bWf-o6FjDi;1Kr;;1yz 0:j li2ݳf ȤFQfF` Ms!h?sXlL֟kp@kУs7,Ld>J8lHcY1p2"!OM֓ݷԡݙ`]")s)(c_tAkaeD>$L:/#L{j:'c/wX;eJ/)L#gn8t,Wٕ{  8<ڗP@T[Y@m67ӭ]S~hij`MҢKΑ59oR]ӟ! fN>W߆'BOۧ!0 [R#\e4\6d˪_G|lڬytyZPMB0sx0hr%sB!/B~/aHD\[v65}uiP)~& L|fBc<E>Ξ #!=FRvXkB7a@lWدd5(; oF?b+j"B`zڐ\aa쌨N& ySN۫^ }Phؐ16š!=`gye]R9~Q'_KXK@"6 cg ~xWf,jHrW)C{4b\g^!87^}vuV dhdξSmh T᝼g1ЯCg7WW6φ\B?1kK x^U)nmTHwx_LmBOG)V֖ᣊQ"^zmV1<ݗ.GCǁ$ D)T>EFzjtGJY8_vO^ ēgHחO"fǪȋ\1Hz دh}5`XAJ!u|d^..@嫩؃E1礪` .( Z^ K98kN}3oQCC(,5;t(Dܘl3=b~ۈCPpO_eLzyZ0#^ T#l\z mʥ՘ݙ*ٮۿ`_rզұ˵׎y;(>}͠[;af愝+%ߐj KdrnG]]X"%1)H-p?^NUjfsp@!YlDȅLw)wSs%-G!Fmy !8IiPe ^LmQJ*`3K i&}>v?U厯$-b MFX߱f>q:y?gE12-JnlIj&h1y"ժ9?? }l~ *K_s/#"XshW:142 cFfI"`&EmA\\ Ї`2kd$j%ֹ  z嘮zē[(P!MK.I{ ~ u:y[=93MFw>;e-[)]~ DO% ;^{A:Gj %x=^K&tUTQieaBW&M\Ga/[#z՟D;jQ`Xf:F*|lO.ui>~eprGZ`hQC_XgV݁K(<=DoWxqJE(/3XKG<=1%5hs[n>01^;iDp&U?eV `U&5P LCbIDqFPtӂS P,?=IPQ%+*)7EE2 AWIstuE?&s~[[.{[*Aۖ:I`KO C>&ig\oZKW%|OGD UvL6qq2oY8b2ba0aq!`ȓbp= l.9| ᱸ[<SXyGdV͑HIɈ/aG9q3KZL#(ǀH!iqBY@Tˤ{*rbˈ xFK" sApQVy2ŝYy閚T4pIĔO;QLbi*-bv_#K.MaU%C]/Bъ\⫡ry'iN94DOvn'05T]5rg va23V4XRd`%";7Śݠ(FPOeH[3 6R&xKlau%q2OBa٧b'FVC* "185"c"ObX)'(hW h]}Rʣ%@c4+iPXFAPWgIdE8=s2|kbCSJ35(&=9iB+ׁ"*Zy~F2f׵8j5::9}ib(:Nj PUʏ3dB`p3|hVᐄUCcuNҺbs2%Ҏe;r5zsPh󖌅Bsqڔg0#hLzyy7ReV`|e.'e k^5Z|C/:‚r3l3x-C\&~R 4H;QY]]3Ƨ5@EժhdW ݺWֆ V%T1*K{8.6S}VƪEy+SƟ2Z9kD)0}KN3%RNX@>o4[\~|,&u( 9D ůsSe4<6Qv\oaؠf)K+|eR4T'P;MZKDkv?ԓO57[ڽ3xc7Ҁ"s-M\Ψ7YHhJ:m*㦲w0(z$,ی:4elOLIDw$[dggQа@;-dh"`5i9l[ ,ڕڼ㘍W Tp|Kd:7>WkQe`qJ`ʱ]Cgv{Z(OT4Ћs]Vʲ{,fԱQ,(Dcټmn6B,!|֘Am~Md^([Frh#3͚ˠ9Md<&Pn0jlM?z.N6ȩҁUA{Eep- Atq"ZN. 636dbRe Ȓ5('3LDjOmrcaAkI1:BaQRӖNֱIoUjfe`4s;a"QQk%,M,^,.z QS-.Go}xŕwYE#~v+$vuW_Fa Ϗ%U) i I#NFOB\ mCw_p>dwF:(TXc:q\},I9Ï22ebpZ2G=O#tɫ1ɃR߽黢arpQM=u&ɲa<| ^τsY*Q=ۗѴpr1gx7UFNa/k-+i]gFumM@ *G`_Q[ҧC5E겸ox80hyq|,=k &x,\ 'oȧvY(5<7 d=T汃,aAUJDT ®f؀_KyVHfϺ7 . ΄ǣ7K#/amfV,H݌/YPha{ aɺJ&60 4쮄U1oaz88)ݖĖH(! *נ7PޟPlNCfɟ| .Ոd#QHK@A[@rAS8tqQ|[2Iŝ.*!v&׆JNo0-&jy; x߆ǻzAfLSjt>{i9˄3LYr6QAiDT&Dvt*jLbpv5_ N5D<㧯 2W .j_ ɫ65\;3GGzV^OU}I;%Ա+WYS&OM,N?, uRR I@ <)). C_.Qo'380W~: JTZfbQN4{&F[z%x_5`Op {qgr.8r*v kF ɵKp$}'@ 8_ eC[!oG*fplġf :=}Er/(nTh)AK&拢M&NVq'*FdZ> " %< e?x(} x6Ǖ\@VA[k$-҉`ª8ܓQо${5v– \;V`-GUj~L,7dŝEhxDƮöRv_8x@>ZTH,!,5.MEk7[c49;E8RlAxo)Iqysp'-+^&ѓmETld%8Q*Om9ʙv^Z5W֢]к+cU tl m g6aM{l܍ q:j6=̦soEwy,ATa BPa2taK~H>B"ByR'ǥ3n45y;ynWUMzQ.lq&y.,tc@ Avav2|SkB#GMWk) r+UҞ!=}&aݠ-xe5IoU<5g%VmB$#ݏ40] ħ+=,‘ptdFgZu@U6 ҀVi?f$ (MJq[|a"wjFb5Y`(|uhK%F!ĩݵÂDQCA4(f.2qAOm}_5 JbH 6ND+"3OOMhUxDh ֔kunγ̞(,陷ÞuюD>+,"o2|YK^ =r 0b:6~@.w$P~[BLսb c_0tPukO t$pzNx`=|G]`3/p~+|<S+$W3jHqThR!Jw8dGuPow"X0 ^0HP``!I,X!((nc6Kk~J KlM*-q*c:3{PǛpD) ;m;59+gjheIp #wBƧg .)#͆-ʼ5 2iؾ@h kv?".^.7C~<f\ͭlX Q␦ l]<- ڳY=>XxhQK|'r0n츈j/ˀtO6j3R7J`|SW4KZg,l Ndt4"nb7˃hht&P21[&7nr<z\izJD]泆ӓfyKN嗲EiAֿ@QS!H*]aq.v|,l f.k(!oAzAѓ&ٻgGn9 j=U ˛a$)sδmƒbv %Ǡ›|FLg^hflǼӛ7{.e?Mc ^ʅ3cuI5GR9 #=́_J%|F'JEYgU5drȣ>SrpdLJ Zŝ^y׷fe°c<9zc[q8YZv<+%7ͼ`Q['c8Eh*Zȗ\>RF|w+w[BwuojQ >G?bZm۵AuhݳЋmc|vjYET\k "b~qh-ѰTO8a ו*!O QńBvaô"}p= m尐zh!V2){ *OIb%2nyi T8[cL>8YfHg2ۋ\Ac#0hvI9d 8OLˋ(3GvJtfq2HحMuel{K9ig'- _?PrG Xi.V _~OsPف+,S4IúoZ5u(1>ϭ8,.X+g̃Gf ,w$/ &E]BRA/7f_&z 0:j{ }w Y>:@hG6l[4AtN0ԽTWkRyXk5EdN hz9?)(pmЖ,+LAAiaJ+W8~{G#pN$YRJAxX~k`YoR;mmFJ^vFe+ˡ_ Be^ggLdU[:\4|ǬJvy=Y?~8sR릥Lj_VA/@*q*uURZ^ ׾Άo.Ɨ {,IŚІ}/簴g΁B}:"*eGbT֡͗081P # xq(8E}W'XW,*2eg e)֫),/ZE~RwS9C}N _Mͧ/x1"D HQߋƎfwiAǵ ̃O 0ca$E`En1^08&ʖ 0+_D/pv{U_;8,j9Aނ#31OCpNpBh9[+%f۱5^b&17t!״1Sc< e, B,޵EgWpu.ㄌua[K,pњ Is" ߴ۳zirW<FF׼`.K>n8i%,ٟO`[*κ/Bd賅T[Q@ -ҙfךbצubD|#!LS8a WܸG*HU{]⢠GSSQ(CL<NpoW= @Q)/,f{>w{3p_`\4 IL:8B~d%P!R6.d'9:KES_˙w)8ciAv>[V~$ z>3\| p-ĵgP;:𨈵X;`$M|euÇdm4iז*l$ x"l*~D1HmxPZх: z/ Ƃ%om@eXtge;W[)wS?J؀ _=RyPd1y`Շ͒ǷK(su*? ɮ-|*h"GLputtq$.Dɂ^ ^%ސWXWJ zEna::y JcfBBlV~/!T\ jtU ̨@fڎ4_clɚK0D(za Oԟ+qW6Rޕkn"[8``;z// }8#Ʋg0(`;V'J1f6uUBnK`*jNCd!Pm&HYRà /F rDd$I`vԇ(b?#M[v)&kBr=ޢPDC4 ?e|jķ?4$es%&ljgUC {HJ{e\˩Yla}ogۿ~Tu=FH'Mx A:y<Lq17csex>r9wj wXx/{K+u,sf57–lYj/H*N"t&D2h(/QdL鈆+L^YugQlH\PtR6hjN[Y)>0!^SVF! w^9SC22ӽ56ZS=F;Jf6ä[`qcL&sK BZb NS/F4xU9u; }ڴSD={#KlIzߕW߲j2*+j=~.ªʵsLhuh=/g*[X |ҜOĥ jڧek |W@Y*Ij0IՇϗgh!y F?Q@>݃]7sA{܎҂ 5ԝIckJ~9rf?'l*BDdJ7xs] R¸<*c14\ obUbBί%NBo})JL9;C=[i>713h$6?̄,vlڙ/z |8 Cl;epr_1|Gْ%P˜f/A A @$(m*ZMJfз ƂGO-sI`&EXz7;oT3y0{.(<if~e'則/ =:T kV#@; ļQ!jyYyլ"B/Ϥnwۖ'.,ܺf^L.H1#yr`ZA%,3\nyq?%cY4G%^GԤ3M𡃞 2U#sI3-pisI9v̨֯M?[zp"Ge3EE F! 0?/ ]ju7'GE \7}V:hT eF83gZ mVS6u[6xb2g3qZS6imU; _2F ӯ'q4VF{`/(t?\^)gtpKV#3 )w1tD"=_m#eoByFa5=LfaRQ]23Lw#G}P% I*%OmEz)ij;ZkY19Mp{mD+CK#+-E ιr2Єղ; , )C49; 4Y_Xe q]p6(Uex$8b1khͺ*!~2!Mk<"חrR?WJM}D8HVf5pNT(pN' bQ):zeנenv}))(t3JM&)3d=܋>Gk{vH'i' j*]-<ld|%5F:5lYj6s. iLǑO_RBI Ŷ8896xxFcK pǾ5 'e઩^ pm@hy.~|j(v[ZW9"~A䙱OCIQ]#ݚu!z_v` sW'!J2mW*%N'ԴwMC " 'APyH0t$_53,w.s/i AGl+xV:K09Q@mD3^u$?Xf݁8qJ*T +['y՟ξ5pXʗx +k DYX%$;IR/- ?u kcr2cϟRP|߯+miK J1@s\ُWÁB(3x(: Ϟ{Zn#{as^Sw$6J(Uq y6`V*]sM6 MTR#s(B sh`Oے7WW}:-^F~,dg^9(;| a7SFunnC&n9hCjdIr&;[ëZqnF^d bbBV85{K%·cDP\[paZ޲>rSd$y# T3~4TQ1έBX#@n%l/^[E#}:pϪJy5tkWCyH;ʙ̙!Xy'μST87>Uw JdGoi۟72x%e ƝSSٹpp' wASF=ڂ-`ҟ@kaW !սY=u-jԪ7dƧ!/,V]olvA4N|:+ ERik3J#W>'k !o"dž;U E!(0m vܕiO8YUN%ͅz#9{(1>ʬT\ 9z-VoW4"@Œ}茥2: s#[PooQ 64/\Zj Yl$ͷ966a 5-mF5#:cg|.<k]cAeQk=At^.bS2T%YElSPT9˂S)Tx9Yl;ᐖME+]l[b?zٷ&`@~'EC<'! m;Wi~EYV&EíP&{D^`c;%<G>$+Զbsԋр[2MH}xt*(}ƹꅻ +LγU#D(&OF6šT4p$;=])Z_,7~`r@Tk6?ɎT <떵YJ.H*Ww*zۈqlJF0kU Q\ć_90yJ#s&ԃh gWsA̓.9[{o{G{Gy̵}s{z [`CO{ʍ%1Js>k O7I3|c^45uO/d;*o,9 y )[P gjbHI*A yngZ)ge6,Wog%T{/WJV"k2^n^P0N:h@ḡ_~6k$WnܘdIA[% ry_ڵɄ ƨ48c10bT = "jdkt߼7,x >x w+161CKM_v Mw\G^E2{ӥcC3~X${W~$HX!(vҤ$mmS s&]2|ct|?at"X7btn1(j8EaQUE{~0#0 F@N{+:'EZOX&%+^'8XyQy7PAplg+pgE3Ek߱Z.<\l{Y/jZ_ |eG׿܋9Q6 Yф|2 R9$M LY/ꪖ `bM69k6x A"@־:WS駏΂t&_JԧDk3o7dht6I:۶o;)I'р'|D΋ŝ,4L7)"_`<@2FAP*՟41θ]7T4Eotib +ay@B3@+>!d\q){n*ZJNw,T7R!rs/Cu^+)fƪa<[BԌ֌ywNӐ2q@!~lz&d;;WD;Ji B Bn$tcer;_}>Or1}4A1\.e0Q w4'@/I/{q(Mp:j yl(GYh2=PbL}~ us)3S9lMztI%Y&p4nâ6>~<7 kbZu,18Ιę+[Xnu*7>Oޱh1k7PG*(jUs$VI2 pS`&m_3p:h.g,,V';d<_L;C&R%~Bʄ1[" agqh1ݤ^W4|7@7iԷ=}fz:ne=nDV}8[U}`}fY Rqf g`!$Cd?nߦ pۈm3 ۆNO+l&OF&*[.NC/"7wk(.8kI-Qˬu8V hBzT'Ӵɯ/m)u],l͸:IH[<ʵ41S\Hzv"[2s+wCHF} K=xi>5hDxBMn5{꽋DlkN(V7h !jH Ŏ!A@ ȵy䴣xˍ,l S#Lݛwi[t]a-pvS9b!l9NZJufw2cLDPs]v `;"EJW tظc1OIgF _ˏBGy(m]YG&L:依LwD@E+΢/w13-?eUbU[@p*93|,F3)j2qyNl = AR7>AеeO;kdǥVK. ;Ty0TBZºnaݭ VAf=@,O&̓<3AE̋ !R䘎 ,T*\}UyW @oec]kX8K>Uwȋ|륍H؄ӜOmi :҉>JR(2S"~XI"xZE01{:ESUazYD.rW~y/N}6d#@N?=*fFWy}q9S,͙Q;A G<v_zÍyHyau}[_Pj6v` vhNN 7. bPgM3[s3e6Iqvx} izo_o4yF0ŮKVto% 0 O;fKgǟVtIvl5K;C! E eM4#CYB&6pSe̒CzP-k kwb6.ə8pgVc{yקXn0 N,{?]-G*]H62N{)c,7ʒʘ:@@5z݄X\1ݭ߄nP!وr,xd5/ X[.ui;@71rԴI$4D9Q!AmʡZl,Ь,[foJžPB9U5pϩb; +9W-?w[$ Y:i^*ҥ~ &A Lz#]gKJL+h~vzHcrk*j,B7HF(OӲ6pkE/A?EƵ" hܾ$趖 Я4 ;zN9ZY?ACYr$]raAX=‚*,"LW3C7v-86wOHV,EJ{F[ _E>ÝG3B{wCHKL9hڲextأw 6ڭ.OOvUn_̵?xG<56i%"˯? q=ffBt ⟺,Q%i, iKl~=e/oJ-$U0|{l$@ tM&߅[%# upny yj'eO9-nFVQ+%$pLL]h`b@~'wɘ `mSuAnjtCF5%I= Dpa(q`:9uw5+_Iovkv\'`ATw0{RT6NRoU@h11h5dc24΀u})8D d:VI CJ o'' yX9R㭘.}'.]^ihZ J_rtǑj ;ٝ/8q\+VyܙJAM^D붰Z hjC?}С|qcOvA3@7 +RoކG@|*bIue\}PזcUV·Oecm*lXmɊϕB/$(;sDЃ%o͖mFP^C?[{a趛JנŻtJ}4CsɒqEMgiTͮ5'fAW]=6VkNR1bǜI+鑻3\ܱ&#@&cfʸք1bhتwbJ:{U8qh?#K/Z]G} t0pnQ:M8'r r*8#Bx$}ap63jv۴Ⴝp+N2${^0⩬N?ꑗhAR>P}Bj_"焹 jN7H$='f}]I4k Qt4|9FX*eEB+=enYen ió/#|=&&CÓhٞTW&J|nN &Amb8 Wϯ4ټԤ6d6 6S}5$dp&]W]f|k41 \9O#n]SޢvmW+y#BPiba p2GY:mM>mo a?YCAL6ConG+$ވ[2ppң$70DZ'o!VD,>GZ4#9Ss!_ĤZ5&րȱBq N!Vyox%W~#=u^8<78 ϗ)즑h@/33]r7DcV_#E^8ׂzC0vA5` Gh7Z5ARB&)×:K2V\WkA:1&j> aL .r0ș.c8O NE+A+? dcg{/^Y:b㜡|4*w|[$ЫJheN0ȻиAAޟw2A ) xjC_U__S(scюLC|d/ sRNZF8۝<>;ߖa;h]mPuwط֍lAޟȬL=vep?#q6/*9|ugڮQ ΍)k3T?=?TA/:qmW (nH'\}lVl(.~?qo&&O-3G.EVjdu0&~vP]dJKcc9&E^EҘ c-_o,\}l:w"ereJ9CfF?>5e۞Ñ9٢2=ߡgL92\gfѺEf,h`y܇RKH?T%[W.VPDrftkEkj6s}w񌅺""pZCI؉{BXV5Asw|_X[#E_]+HVlMX XR2)w'ovƾw8h?WuE^dv[m%0!kX$֎n:1yj>@4>x+n=ەt<),%~jsSR5XH gbL PbnJ {LJs~tuD]P9JEA-P0þ !%rMT pv|V **mDwd NFx3]d]SmxEVȔPMԚcOp'ױ%!T*/yv&qVYDr 'T6Gcλֻ.Go$Z#t% MvɆҍsSIjqHTw&R11USj}-Â7ɝu ) ?dM[柈V"L8CƃƷ jгZ2 uosσUKٹ_YZ";vfj.2@o@z~ &Ub<˗W,'Z Hj u蟳w e>2)\T|jwʀhtGS "۵h g(:9[ yfV`yD7\;Sb8܁J}gfX/0N=0I&3t_Gb人N]Hٷ;P1>;75Fd.a2k?1tO\g7Q!˽ Xx^L_]33#斞NTsy*nܺ|cF<[ u|ĩy|e=,8@y_4i'j#n>@q e\FZ7HF+Mq8#kyx.g &Y? 6 RK#XURq[0q bk#2جn7X Mlg39#Y kTP*SRӏ !̯J`(_{_Ĥ9fSz-?͌_TPVi/=kDQE~2j;V9_RuU"!:JZ{>gb/\VmIv8VM [0ɵ|"<>x/ ޴.R|="%M.1^9ktܾݠYyËfF{Ti`H҇*itWzAθcX ~8ŀRH’}5!n8__=;g&y$LK<=uQG Z%A϶I 6,}ާ ܴ: Nyz=\L8f5@U;:2W<;i=`|H-AuLV`S`{x%LN#mqbDTv3 /0^Sv [{q#4S(%o z[|3'9 |)W$v#Ch)U˘ˉʙd MtGjaI\2uᰌqkX]Co^aKZABdįXs=m"hJB] u=HfcPD…0FsHȗ4nUA :wW\T,ٷ&I"J7چlwL0&h$S\ V`M -RAǞƴdFs v _| _.<'l&AVn?@ N/ B,su-N곶 ,-cMW;W &.BpE"zzjF$;UҧM{Q%ӷ<[/;e_%Jg!-e,+3c߿W;h(#uܜADoMWrAkeoIWTyT8Չ셡3 9帀/ǂnWZEj*hw +$;\0:H?IG!E棁9fmynOF\xlWe݂ce21Tލ+RPc,,]װnMF<021a ou|c0$8R A#A=U-Qf9=/Ot3G>nNv0MBh<;q$gO~9aKDኚ lR /PV",\QZ~|9:ZbRҼNy`io5VB9Bh{H jYo$6o;4eKm l9Y[p834-o!D `L~H;(FGXOs:"u'rm˔V~lP~rhKl*vr8e[c 7_j%n~[z CV곎Ix w al?MP٠GSd G2B+Wn,Zpɀz=NȚjIly f6yDN>'cBN.Eء"䍿2 N cySX͡IxZ X5(g>4Ţ _<] !()i/J|0@1ݠŒFM_N? :27;9kUy7i xt\Q/k{{4 "K iZ};~G6 JWKcF^5P:e1H?|) \X%YbVxP r$޸3ƎsilTZMJvm!Y7z@oBwqЮK.1nuJ4 -qk(X7_G_nm1QߕV30B[es~ [YʇI&PNJȩ@ 5̯:I5 msP}vKpq_k #>И}6[ՏHT{nA8Ejc ѝ (g@&Hwԇu^8O\NY@|%EBw G~k&+6q|=nS<#tp(ZTp/Wv=eR眢A$K`P jz%Ϝ=dddG:ah'Myh2ks;M/C|{J8N˄-\/X Պz@+bWNԠ[}VtP C|Cx%dew!N8E ݇gDmTAslҁ$N”GKCٴ$?uaB6 ^bbSQA f;5B:RP?7v6ZL)蛉S#)6?,tsLךb& ː4Hf5S(n_'leMBk6]W^_yT7i?"+\y]sna.%p ;QhXp yZíSԽ'(x6k˅Dֿ$kJ K?䍥4У3{FezjWBSmFQiEMP×ayMa1"%*~f=,_pF0t7Wf=X"&d.ӑƦMChZ7C-1ePV`2O՗ºT8L.6H B 9u.mՃ'o?F=9acW˙";iXkd6qqS6mC25U_U'QΞ+YÔ=8˗O$v𬣒i5y]!ޒՖUl¤4Hhbgp6((kq)R[gd\T`VoUhq2)$J:˴)?&6ةgR{d‘jA1TC)zVlq^D|{81RSAA:K!(nv_4X$ހ<Ǐgmhٽ1\IbJerЮh0hu?`j&XZ_vĂw>LPI4>T\`]vd&yfsg,؁W9]$q@XĤxlw/H]=4ڕ8=v=- mD9;b$Wg#BDCtxO[CU$۬70jpLtG7}GQnX IG-{8n=fOj n(LuI c*Y=5\mx.)X O<$Q &sSZê_]w[L :~;/OÕXT'p s' cf\~j>NK*H`;dDQ6 \cj8 l,B@5]ۍ`h[&Ʋ LKH6=:ՄHB![϶C> @d/Q'D/FdoK_6v$u~IYo*"I8SB$Onb1]BD4e9Z|jOdz9!!t9Ƶ5UQ%gVƆUobm&sSj(e.'Aрjj9+8>*R5<rWgk6Hj3} ޖ޲:8s$%9aN!EB֗vn(Eݘ.Cjn%{n}X1q$XnC7j9%r]KXB8  %2)~[OM. F2:% $8;6ަbb^L߭6M eP{szHJХ\#w`HJmb\[F=č[{jd[sYfkE]owo,+܈[ϗ_hUi&bAC)tܕiGjF E߰ůs vP줷CPd2q1_cTB!M֊OT,FhUNc顐"i^-?'E݋a&<5} G퇶._܀ހ]osa c&d?Ѳmqwԡ0?"l=ߴRJpDRXsM lnDJ;dD)?bSZ#s|n/WY{>N됣k/7w3 2Du!&̠'d8<1ł}izrfP*t1)yALu m>bu( 2Dl9twG7gARgdzp_r .뽾 8~*Od$ExXy3Nlc?qmUIZ7=>TsW E@17eH%sj'uYlro(W8ꪙF i}fmp"= 1S'id.0Rq#B`c4rAD D>nkg"Adӥ,T:&"N6!:ڠ:뼪rҫ@X >w9 P>Iiɿk#uFWj^G i!Egurgm`\np0'A幷faŋ؆ CCݻ7XڋX攺UsIĎȴRBQΘmZčk@u4UB0Y>R>D,PLaKb*J|E1b$L4^)Kl HRɾ<ՙ|b YlH7R!-4x/]dK<q:|W8'&ҬA(BiUdy]q2BS"-5Bi~R>)9SV?A`|ޏvIo4M 춡g&K\NkJ#UpF`蟵mAfχujKQmagmRx%ko88do\hҲp]o7?KeZ9QQU`EO]ΥqOl q>;DhmIV3wNکwd8WWX"*"nX BqI[z}|hW:gTQyuv%KS,N}iYLPU.tFL2Pl%1ʔp~H4=ZPe̱X(uLsr䤾٣(]-á?g@vKBߥUAjh`Ljjq{$ANjwLti@1I0MR6D/>T j$p4-/JPx%dxe奏JHV8c7X[ eLJ㬭w;LERTdP .tewز?枹EYozY!Iof!EAlvٗLP(,%̏f涨$i{3Qee⩞/2CKh ##z|Ck}PA93f Y=۔\6g;XᤪQ5(sl{>C_Ywt^h~ 5 P$sl@j6!Y!A"ߔ"jycH^xֳHFhKБM(Y}+-~^O'Gz MF=YpY ci?5(?!Ygn,YCҫszeQK{BJDʤފH@h8E# -ڶ:_bjfAC}K( !_L^/ֲI!VWۚ?IK\͢[dGFK:`6\X\jYn{B\wޝVp3^C)4jn"Rdd癰dջK8u1m{1j3AKI $ijͼ Ϙg2ީLiyY:l38o Q%AeҵdɷRKrP5KFl4^IZ [f郼5:Xzu@|:G .="h$K_lROE|wW<ܞC4m$\ ]㧳2RVx񒌼 j%OPTh%otc:TyC(?ļKQ5ŹLUcJ`A6fTR5۪\ĠH4G%LWϾչW.w XGt.8o<8W1I&ǀbӗKo! ;LYrK<sW\fQ˦%zTv%&=/"]qlEvGzd([[u߸qch9OU}?_n}.zO4/Z9$Q@(ސ~̫ h& N?1'cKxK!.~ߛs銸͕EL( L Vl7ӤM̽(c5[aioACܗoQTO[b.$׍1 $ T nJ n;ewVI/-[\|<ӉH-oՇlf U z~gʸn];~OHX9]֟yJmdmOz"]RFݵ2ObG>Yj 46q*B/ k^[[:8l&;UtKvw?b&)<ޏ0 cZ*ϭnt`{%%?U_l"d#R]Ó?\-LZP וkfE2=6ˬ>j("'ISdQq'3̜8ǭBw_߾1cS+Ⱥ-'Gԫb4_h(sQi{paN=8'-⫤ѯ~ttyN rsh%C4jP4x`2ٻ\)S9cqʻA\(AwfBM&b:KC$BKqG ]sjg9$cPHl.P.XE]؃Nka^]Ez"V2hapF張ZaZ#e-ٔW;@`X:GAXlrS앯9G^uH6,b׺S]+j= ȋsc| UzCx mϿwyQH[?בi%o$N˦^g.ע *6017Hn~G֊b܈aM'9'JM`t6Hxs8> 9^pl/^]\\U[WBqհHe8n%-:+wb/X[ύhO(>,_8$|G5O޷व9 _=հm) \Ea9~>^Pv:ϩ.c zUdSX$o}KVX~]Bj#f,\W#^%[a̭I$-=/Rf"lE7H&BRGMLB\tFz 1VuT(p 3̱ !O ~bV’= ۊ ӕ{γRXsR'{}1fxڪcNߖ\2n[#cf.N&#+d=k(ľVs_6=uxaY.A-(֚m}"[5"b L< hАA5|B#,*Pe V]nTaN,Gb$}o>?\&gMSziMN L4 sʋySKrαw bFggQ> zaoU-CEx4m- ^6u~e-z`~Ё=:I&S9U(FiJ3tz*~u>}12cr ݐ#c/OHvcN)[}e}RRu&`iXHigyα)n4@bezjvXB;*ar:L$qAA?c9-ZϹΌqA QJ&F=xo%g= k=lX3DJէ[G+TR0WKN"ćd#  .br%l U5& e1b|c 2_*bg\+[h*7e~]:`zIE+<H%a7 JQROH6ç$D<;;?Ul"ELo)> _][b K2~:I”'DY yBB: -n&6+EH[}x҃nҎLvwxɹzE[#)/EE#Կ JvەuPC9VSg\r%Qk 5T=`3Tpj^zf\f Q8k W|ȝ#Ί0˻E\.slv?*bRwd. '1b然kCs E.NV9-n((}ܘBɿY9RUV c}TjQ D !3-KzITm 9e`F8f{Cj5W< 1'Eϓs=8-`9Snn UW' }$ęB=רY2"m0Wx:[,Ąm0`ۑp2z` RZyD?*rí9O4]?fM7YH6zwVYYkVR7}T![$JJ f@/6ΜTfҴ}((df,ä|5Wȝ4yWB {8J *xlFg)L2 \Ot,X! g54!С?O-ֳ I&vֺUz {N@8Ra@tSiަ!T)tYLM)}x9 cҼJ_1Q:-=WY.j`Ī:b?d{V괊G[QC'wAxrǧC>!eki9!3Ua5L?ReTc:֥Mԧxst̫D?W 9uO%+ºyLrY"xz R F׉I[kNd ^T? fŚTv2;ieIҼaAyT+WşZb0]@Zj 9Fl1<(+qySSܫB1I|E 1>ftDCc1>*  cGĠ&C`^݅a B]\_elZ;trmWe d8=XA#ౕDsMc:Rj5q2_GC aaN@a9QY>f^ XVXr{P!ay,\ֳO gw>w Y6*$•fn|߮JlR] 00R}/A˯@ SSWȷGx>ݷXୣ ,.>Ci7PTjEąF9EwT23H6~Tx;0V6G=7?t+:8ٖGUxA&gky3"6!ݶ̯Q:U iقݖܵ.S8ۉHWVKr*X0@-w.̏>6~ZgDr\,$ ;cǬw .֌_67b\+ `=-CڤG+~I&2:{nGcKLʲ{-~G(J4J& x.v\E15+{ZLw<ԧXݥI:MK>ٙD$dFN7p^IhzyC|vkr1(LJXG" ^:ğ}ZqC#Յ1Fgg h|bѝdG$C"9ĨtR! ?N7 Mv*F"qeֆmDܾ )hq2^(r嘩yLFtpGO(R,">P(/IRO:ڹA乤S 0Sf́Hn2NܬTh\uяgPwջxèhe'>AW7j<.Pn艱%_Vr+p\ vqQ Z‚Hϴ/MSJ.Npvcаn9Ô ,?M薩Vppz:#uQ#A`zff\%L2} ͳmwMuQ~p/ DLsyr]3NmkgdƄ{`%ʤQ N|x_q1c@OW2Pu7Wq4I'u'ݞD -E}PG7lMawM `6ě$Mg}{ѭZ<ո:{/_ˡH^!jV[ =`E(-l9ks^1zsx&|dS|*glwVh XlV ړ+eu|#o"_m~ScpEO25Ћȕv  C:0B+)JJˋ?ͣ.ihq~.R[-DcIOęFNPłc:'hω!ۥJ9بeMQK8at]w{F'(M"-%vpUCc.ZzN(st!8 TRt mySVVOoY )F]+ o69OJSj(_F@h.6h2K񓘡.ɪF` ofM zQlZZ)@sN.y[;&p $\kksC,Nr$O43a1?\Y]a|Z煬㣗1m;\*GW!1Q[ұ \|/yk6;'RxL;K˨/ s7jqzp)8ϣr ߹QۺmK7,u&6%E>h&aZ<H+Ʒ :{$v!“|ےJM~֍MT(ǀYW5CE;~@H/ m/I^KbqwC>'뢡-G0Ŏkw^ h_mg|eNqrWim@, b9yHN::ۆJ '3f`EǢn~7iM4Hm*OL~]es:]4AyWu1Ϗ*O?J5"mM}NG2Ê9Td]80vYִ;]wAe2Ɣ\ %dMLF F!z {~d#y3OMh[`3x0xI J'$6I7miTo(!fj@m"^LGMGX ZŒ[Bܚc& ԑ}ޫE\ފ3 SRFB,ceM)+G? 83[(yx7I|J N [fa,d(\-"Ŕ nКh32dNc]آ gЄp'B1Wlx!+Kތ~c'ɍ= `aBy|p_c2)WLSBƟp+^gjL[F&զ~AsfXZ3XQǷeI :ZS >+ ̬VpeS?LF`?ߺ #j/to>&Y~t [òK GlX9~@H́xaRx㴝JRn$XGsTl&f^}eqUht؂ݣ5•dTw9n1IH9;8c37JJ&Wcs Jʇ>JOzn`[;z.ԎЭ BgT\1Hn%;3+baF8aSn7G0/; Hg*9nޱp7@P0Qd)/Rd4g \ohx ̯/"{̨Fle$/;o Ҝ\Vnbc]=634mb-BV;D,A$%M uGE]hI{* v2)I2M҈o*/GTGa6M4ŭ|*sYw_[!Lj^F_Vœ鏝3W*MhvX ,:x)~zXgnd"X[ɨ-2g!ʏuuvtB(vB{aK)-ր@(1d*Ei,U=X Rk~iD5V {݌gj)J]xR*ޠLCU)>"mB4!x"){df,`i5I|ۆ]d#Kވe*x@Q)*,۰1kQ;l3IF+\9| ҡvͬ3%;(PX!vIg- @ "XDa".(:a[{>7S+pB X{%0#JxR4}0qFM.'6u(0(L' ~>#cZBnuN(l+צ?~ JQa~y@F#R"|xY}DRɼeI!\-5zZPcFdȂL&e"qq}@(^6 D7_ sֶ'@e]+F!~a`]O +L$ݶ_M &3jlp_]wI܄tM$<;;%{W}bcj#H1rt]+(ؕg&5~7cD c`q;Q2/iZVgȥ͂T(2]^AO&p]p*@;IHvŔ$_ 4eIdӏ4$.[03v=1Rx/[vCD-pPs 0mFI`#RIGmTwOUMe@=&mQu"Pj̳pqScAHt?{ClqK%ҖF) Ѐ[)}lyBQdS̜;n֕GU.%5^5˖VNǑyR Bj]хP愧5gO* ᳤60*u7{6=*r1mhx2HDZFW4ml^ 04#sO3`V߇;^:K^`)b<𾳍P.'^Ya,_w_C+WXLm*X쑽RkC?(y~Ik2jX/:·<3:TgZSfLCb'qq$NTvѠ$/ϊl0KVDDF=ڨz:"~'{P`2w ł4v'#U݁˿뒰=:4'Xks{ֽ.z+?z8[sUI=qڴe VfZA'Bf fa;۠އS>"7+f %I&f*6ly䊦gؔ~`ي/#=mo h:N ϿPa(Qqy,r>0^+;VMCd+O@r2\L]"Y{.G t\q)VDsiOP[7MC镴],xZ<]B{?%:HQ ǽ ?45̑];@-8!׸ze~{yeӂEh΃?ɆVbEFI0&E8N)Fo~:Uo^Ӕ RGǦ'$c$&{Yr 퀹jl3QYpټsA۽Rv;.q~` oz)W`- e%*s&S=wvxK9BhՍ(frIlWZ8"WWt'Svh>sLKm^l$8іAS\[C~;+ a<^$, Wq4}[z,cD ^|vp @ait%BFeA{a ;-Z}X$Bv5# 杗^S<4L?*]^*s`_N-;?L=invNP-6' G5!{g7)9܇ri^B]Sn|zhCRX"a{.N+9_;:cxq/tœttIBei%Uh)=[|වZ5['6vS GOWBɧzW9~{3Hn]?Lג eQfHz)#e쇬gl&:ٜy_/zgXM$ xL}s)h!F0 f뜍k ٌqM:]R q6j^PRNNez?:Bf &$YP0`1%9F*?ytytB m;A9e?%Ťin](iYE7ŦQDq"קe ?!@<ѥ+ނE\a:dpa@H{N*qoLƜg :3ț^ nYNvBByw[SS?pUO#몂FA5,_ϡK#:0  Bjܚ{e_P-G) g>9-0m}I X+At2'+hy> >kz*:=>IA ȾU ҫ/N: (3u;Pǧ'9WC݊]נ=2T9x7+Cah'6ʉXΟt3UxN#X,z壅88c| x(`<$puAβ&p-V+MҬaŮ(\6E޾d])NdV6~rS'4{(0%|"q&+ؽ-"%<4 ա \LYxVٟ?Xeؑ1&x$,%$afZ~ӳ̲hx'[mAq!G\zڽZd܌b&X5[z"X u]H5*b5K$*%sy}D^7xpp6s -.T<\35g&o+S,`gcCY0G%A(k$U DUV a_ *gxV>P\;^6 e5. aK i>t -` 'Yd4xFn$U&Ouci,Ї3M7ʫI= Bz߅?=J&t^TCߢW*bѓt^AF 2x"+9yiFwM &vN+%>iqIB>b]Ͼ>Pů)7_]E?gg5"0q)JP3>w2KXv巴x>ḯWz .a?;= o+x:uʠUbP0֝!+*k'ۑ Zє5\3T*3_LV!M/sGc;g@(\+ <`#%t8s:PXC"R&V2Xcfq/WaY*.Gq}T:l}%0e ]ʊ_ JMb(8L ê&' {µ@R%s:6Xs<{V~4Ld=,!KA.QܸSyQaf%zM<}(@ ox, ÝcXZ^p:G µaˆˌXVX@a@:bj?TX3[?jA7b֓z?O7$FgmS64~U2򦠛] Т'㖹 c/\UJeYIY_Hlv8qO!>O-Ǎ]$56aCG%Q[/9-" y}E90׉֭ 9߰YMa>wi3Wt#+[^E/_{|'lɞツğb^ ڿ Ggq/>8 ri5TiCGߏu!)_ݻO?ޢψA+4/S dfzdG݂pX &tOAl;hCK" >24Zf``ۭ,gظL#j*qcr7g~u˪`VŎ~e]Sa%n&-ϟ`O!ܨ2 )١֯JV9!eqh.T=ڑHYD<-3Y4i%Cd ڸ'1^|6M*:AUnEtBh,-\t϶b22H4xR PƆcm(k Mw6㥖RIfFcU~ Ciz9 ˛Im1ӋŢ}(J 3Yp?oY{b)X%3QJW'ɍƫj(`@_%sˠL^kbF]?_[jm-/0d~BÊrKϕ3/i붣[[,ivPL_JJ>2 ;h[c)=0xP2 2<^v-W;cw hv]C+kK_O .oWqn3uzsp4WKD."g>ن,P &E{p;[ nc@,o_ǵ˽xoDߕ+ũ'xl,:ZНF.ء,zGtY tx/wa*X}>seL'RD u2y|~ a{)-̾_;:ˇظ9u_z' |Fεr2JM|8aT`!3P2ئ`#}r](9 7K3ػ[0/De=ĠgPCN 5&:R6e`}Wp '%͋Z`]BG& A yP^lSث3ʝ4H䮜>4F'*T|y_#axIp w)8YbD5| ]g`h ;yl+j/NEJ&17ӿ@+dXI~zśY叼*n0oːŽ̠0tr=ǭ'%!^P S_tl`wcsל,-Y׵2D {R*)4S1 VU!s D$@ ~AZ"o;m80H<4 MA +Ert$8SǶl's!DӺ%Jn FןH/Gw TbIߴP(1/}kMBg`SK4 }bPe1vm1יk"_Z==^Il35$ ޙ#>A[CG ?j${&-qw|X 'x &Ӹ8}ZX~reӛ8]be:c+uS)I7HdL򥖵܂Vs|pcCS$s^eN}AKH"K릔M 1)~٭ݍ𑙗/bSarCL2JT &ς5&af[KZ""e'34Ufs'Ѳb9v7%lVg1>B_WmZtY￶f_NՍtKiןdZgH-]?ڞ h#3eCfaeYdR<ڙHA3P'Yt#pVd jbDˆ~[Ev7 5.1/=E|Їek{Y{\[ |c9V5<zZl^W@n}@/.^|tLD̢L@ ԰/Bcq < @M7I,y)V*^pAk{ׅwq:Oٶ֖ L|\R%HO 5V`bh+_a? ۾0PhD!WT#]ye;`ar^"09g$8cBadcL{xABn40Awf(t*^.&ecbs6ߪXzOL7`,YXjewT ?J/^֙6TaSǾ}+,=(=BW'*5;;вnKu=Ր~/ g$?SXw҅_w6NL}xpظo3;oF8c'K;aHٙ4th G+Xʨ5! UBd˲ v\hK_93~glܸ΢H-zZbq/U߇R~/֬2$M-s Y5 7yF_kL3t=ϝٍ z#::u[|2~ӭlpQFrQ;]2:\h:?`kN,,uq,;ghQ*DeLqy2?&M1۲qLkP;A=M˨fn-p(~ܡ(YǶO[Xld|⋔~A*p9&+qc?6 q+"g$iџU'~q_`o>RmeBv0I=:NE)(rv{ 3,S.Su*ahPͶ HSB5NHq9z3VamRrJB^ϑ@+s iǑYKv'Q12̠W,S?Dv# aqs1T ,ͻ K_UƚE0twE!u9H/~e j# !Ň"킽}\҈`c#GozL7x0:"U} wb:|h~t. s1onN}ѫ1\ ĒP41ѺBiK2}c8`\}ycvCEj4H. 8RЋU~c9朰}bz~ˋKt[s:KP6zGk3@Da'ݾ i p,vGUrc!,vvW?t?̤hd$u)zU`"[6{4B-Zq?;tA9oGQf'.rVvL6ۅl4Y?Gak:~ 6dgz$s*QI=ۅQl: Vr*ۣO= TF9IX*]uك/"x!~vɇx%#Kba>e.,l9~^f-di@ 綡D|@h9  ߊΘ+=XsI͞d6z z0|'pz EDnߕGp}쏰L\%v$0grK޾[.0MдW6ΉG@NhBOKm*0D#Y 6uSpdG(\qK[G}倾N⽒iuFy/p9|,AULXڤ(]eEDr$r]7Ŵte"fOsLxnIE;CMМu3yS7 anϑ$.iYi,Mkr$j8͠jU/ -Ro~|ɒ#HƧiQH)UkNOAR2L,2 JL|( MVC–n#L)DP ]]~{2& '5cbQu6ڤ)y3$D!f 26KVZ~-ykEwj?=3D{rvM:٢Rכw.([4RDC VUh}uIG%Ȕ-ʅż5sau^~_@q O|¾aG+h}]j5aQGNU/^iKuP ȡg"h1ytFEXvBuwNJ+zbu~Y|dJ~HfS|~P38 62bȡ)1˪[Qf|#ӭ oR|4-/KĦT9t$ҳq{ZWk qGKL+Ŀ̒4=}TAt1q#iR T2e1t`Zk9;M7G'3!G=Vs7GbE(&DM:#5H؅ Hrމ{N ?_$9,_*d3[ T^;hU鉮"lmBD{Sc4O!;Ѓ (:4$̒|1آ{_W,&IrjSNW-Y?Q/0I}+g9Sω8&k,;8PŠ72kox6NɭܑmKI0_(iYH-w=B*m^zlhfnp"d>}i`HBL{y5],yõ{Lاk塣h7L̡H RfO+7q=11\~XKB:6RLٶ+RIW} -r'r3{\ &?`'9F+a0M}#$@T5.-n!yh+gG8y{m&N`Zg4THp7'(u[$ ISTKj{UC@0d^5[T>L4U0 v5-Ȼd'ʎ&v2P+i`W:qH'V)N]W+qho.],j;PF%EGn$^j~zx1 Qd?:}:V]>VދJw:y{d6lqpvu#N,ϯٹ|wr2%j6uYl/V8lDX[)XdZr#Oyq }H:ug5\@*R̓FМv4ܒT+duf#:M𗺟pjƲ0VkɁ(/Uﱶؾ<] T="l`4c;]%>Ë́M9K%MBn:AR;iκo6 tAme ^/ y(0#߲&u|)jKHr$GKy\`ZuCE84\^x!Fr/U$m-Rχ47녤 ϧ};~^fO7j֬$PH Ɠ-p,?5a_2ڴNv4┴5:boR8sӇyʙOwA&+_rj/3'_cﶪ:Fkat WZX>[I¯ RI^R hչ]3Ht 7:m";rbdKrf:i'S{ 1 Uv`%ck7N~ͣLؓ]dbqp@[W^_mXy]5u' {noBX(YyXEˉ|{Ä3 hs-lKtUN˛A! XLAfMLw)D= wr$#jރ P[O 6)̶ՙ+8by (81NR@F۪`=)Ƞ3" 锧l/_ %ȅh2hklA>)]J1L xQlP>oDJLr7-[ 7>Qj#HjI7>4QQPZ}gHXs բu6Vlކ1CD;%k| C(<4GxO%zs}zG1.VM|%X\FM| Qz x'%aKe8 jfL{ 7L)GŚ{@X5ʑL 3Q+YWS}]`zO[F~6T\z۸m6r ݚ?~+'|=+\o 5"7w0Nl( &f 3O̢]ٰ!ƭL#j>L+*1+C͍?[`] ]!f^ ngqʰ _yn3')s@E&М9wgmxuy]ڨ;]!rzًJXZcjcx bFIWk%;Lr?٦OjH Jj*yM i4NoEy+));eՖ)}GY9 | $bOŔ mi=X|#R#= >NwOAY\}wGux<Uo W0r5(ynEgہb!NM}n HG8A>ŷ|sv}^zLfn/@`}ۅ_cF$^&$G}Y lϹB.:e ?Fm+"1v 0"N6/׫ծٍc,BFSE{hZ+]t¢sK8oA.qR峞fL/!}(bEiw;(- Vv߇chf$5׈fZsp]BNX)AyyuLn% mn X{+nݎʋE$pYF<:$2 L0J)~dsuZ ,bWaNokߪmP_n?) (#kh7%%hV1ULIL!vzJ\5mYEهH ,[q7mLrp|8pF:i^؄L3 F/HOB$'c0OFY9c!q*ҸxΟhkV[Jw|ɂ$k黠35 xZ5F)O V-[?J6-~]S5ѵ+ s,;#c?h?򵁀yȾlSAҚ7r8 s%*RL/MIړ"Gcޮa:9Zb y/Zi?6mi*U,$" } i,ʂN3X?uu[S.GȈ ԥ>uIYIZ^"חgeDRO4JuSV_80?jv#䚩9]2ug|j`ēE%; CROᄈѽj؛[¬ \4+{T~Amχ;Uz8&%&-t+힝+wᰓ因Jsi0H( HY LElTƥEn{A2VbԲqCSDViT>A9ƚX`~N&]i~U >3 |8x?Ӛ5'-5ᚇ+6mMhKnr\p^FuQ\.Gjs '/Xc% ϺY`aY.Cbj@{ZdoD(04!^bq"j!s|NGFe fW9ckE,C$HrmDC ҡ| s{z ď%Ή.[|ݎF~0%ꎪLگ LW_om 9əK8sЍװ,Y~XvbU20K5﫢5DqqM㲷V*4Ÿ'KLGqa0Qolsޱ<`r{e4x?[E Z_OS:r4Z)oJ.\b`SB:( eĉhrү!c!jB*Re% =&IHH_`(wg`N;/FZ/v,ed*GLCeO0>ҝ,y IQq=, @]Enޫ,d{?JK\OMuNgb#_`ԼcUu')E]IAE,OǢ@Ri+uŋr