/********************************************************************** enum.c - $Author$ created at: Fri Oct 1 15:15:19 JST 1993 Copyright (C) 1993-2007 Yukihiro Matsumoto **********************************************************************/ #include "ruby/ruby.h" #include "ruby/node.h" #include "ruby/util.h" VALUE rb_mEnumerable; static ID id_each, id_eqq, id_cmp, id_next, id_size; static VALUE enum_values_pack(int argc, VALUE *argv) { if (argc == 0) return Qnil; if (argc == 1) return argv[0]; return rb_ary_new4(argc, argv); } #define ENUM_WANT_SVALUE() do { \ i = enum_values_pack(argc, argv); \ } while (0) #define enum_yield rb_yield_values2 static VALUE grep_i(VALUE i, VALUE *arg, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (RTEST(rb_funcall(arg[0], id_eqq, 1, i))) { rb_ary_push(arg[1], i); } return Qnil; } static VALUE grep_iter_i(VALUE i, VALUE *arg, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (RTEST(rb_funcall(arg[0], id_eqq, 1, i))) { rb_ary_push(arg[1], rb_yield(i)); } return Qnil; } /* * call-seq: * enum.grep(pattern) => array * enum.grep(pattern) {| obj | block } => array * * Returns an array of every element in enum for which * Pattern === element. If the optional block is * supplied, each matching element is passed to it, and the block's * result is stored in the output array. * * (1..100).grep 38..44 #=> [38, 39, 40, 41, 42, 43, 44] * c = IO.constants * c.grep(/SEEK/) #=> [:SEEK_SET, :SEEK_CUR, :SEEK_END] * res = c.grep(/SEEK/) {|v| IO.const_get(v) } * res #=> [0, 1, 2] * */ static VALUE enum_grep(VALUE obj, VALUE pat) { VALUE ary = rb_ary_new(); VALUE arg[2]; arg[0] = pat; arg[1] = ary; rb_block_call(obj, id_each, 0, 0, rb_block_given_p() ? grep_iter_i : grep_i, (VALUE)arg); return ary; } static VALUE count_i(VALUE i, VALUE memop, int argc, VALUE *argv) { VALUE *memo = (VALUE*)memop; ENUM_WANT_SVALUE(); if (rb_equal(i, memo[1])) { memo[0]++; } return Qnil; } static VALUE count_iter_i(VALUE i, VALUE memop, int argc, VALUE *argv) { VALUE *memo = (VALUE*)memop; if (RTEST(enum_yield(argc, argv))) { memo[0]++; } return Qnil; } static VALUE count_all_i(VALUE i, VALUE memop, int argc, VALUE *argv) { VALUE *memo = (VALUE*)memop; memo[0]++; return Qnil; } /* * call-seq: * enum.count => int * enum.count(item) => int * enum.count {| obj | block } => int * * Returns the number of items in enum, where #size is called * if it responds to it, otherwise the items are counted through * enumeration. If an argument is given, counts the number of items * in enum, for which equals to item. If a block is * given, counts the number of elements yielding a true value. * * ary = [1, 2, 4, 2] * ary.count # => 4 * ary.count(2) # => 2 * ary.count{|x|x%2==0} # => 3 * */ static VALUE enum_count(int argc, VALUE *argv, VALUE obj) { VALUE memo[2]; /* [count, condition value] */ rb_block_call_func *func; if (argc == 0) { if (rb_block_given_p()) { func = count_iter_i; } else { if (rb_respond_to(obj, id_size)) { return rb_funcall(obj, id_size, 0, 0); } func = count_all_i; } } else { rb_scan_args(argc, argv, "1", &memo[1]); if (rb_block_given_p()) { rb_warn("given block not used"); } func = count_i; } memo[0] = 0; rb_block_call(obj, id_each, 0, 0, func, (VALUE)&memo); return INT2NUM(memo[0]); } static VALUE find_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (RTEST(rb_yield(i))) { *memo = i; rb_iter_break(); } return Qnil; } /* * call-seq: * enum.detect(ifnone = nil) {| obj | block } => obj or nil * enum.find(ifnone = nil) {| obj | block } => obj or nil * * Passes each entry in enum to block. Returns the * first for which block is not false. If no * object matches, calls ifnone and returns its result when it * is specified, or returns nil * * (1..10).detect {|i| i % 5 == 0 and i % 7 == 0 } #=> nil * (1..100).detect {|i| i % 5 == 0 and i % 7 == 0 } #=> 35 * */ static VALUE enum_find(int argc, VALUE *argv, VALUE obj) { VALUE memo = Qundef; VALUE if_none; rb_scan_args(argc, argv, "01", &if_none); RETURN_ENUMERATOR(obj, argc, argv); rb_block_call(obj, id_each, 0, 0, find_i, (VALUE)&memo); if (memo != Qundef) { return memo; } if (!NIL_P(if_none)) { return rb_funcall(if_none, rb_intern("call"), 0, 0); } return Qnil; } static VALUE find_index_i(VALUE i, VALUE memop, int argc, VALUE *argv) { VALUE *memo = (VALUE*)memop; ENUM_WANT_SVALUE(); if (rb_equal(i, memo[2])) { memo[0] = UINT2NUM(memo[1]); rb_iter_break(); } memo[1]++; return Qnil; } static VALUE find_index_iter_i(VALUE i, VALUE memop, int argc, VALUE *argv) { VALUE *memo = (VALUE*)memop; if (RTEST(enum_yield(argc, argv))) { memo[0] = UINT2NUM(memo[1]); rb_iter_break(); } memo[1]++; return Qnil; } /* * call-seq: * enum.find_index(value) => int or nil * enum.find_index {| obj | block } => int or nil * * Compares each entry in enum with value or passes * to block. Returns the index for the first for which the * evaluated value is non-false. If no object matches, returns * nil * * (1..10).find_index {|i| i % 5 == 0 and i % 7 == 0 } #=> nil * (1..100).find_index {|i| i % 5 == 0 and i % 7 == 0 } #=> 34 * (1..100).find_index(50) #=> 49 * */ static VALUE enum_find_index(int argc, VALUE *argv, VALUE obj) { VALUE memo[3]; /* [return value, current index, condition value] */ rb_block_call_func *func; if (argc == 0) { RETURN_ENUMERATOR(obj, 0, 0); func = find_index_iter_i; } else { rb_scan_args(argc, argv, "1", &memo[2]); if (rb_block_given_p()) { rb_warn("given block not used"); } func = find_index_i; } memo[0] = Qnil; memo[1] = 0; rb_block_call(obj, id_each, 0, 0, func, (VALUE)memo); return memo[0]; } static VALUE find_all_i(VALUE i, VALUE ary, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (RTEST(rb_yield(i))) { rb_ary_push(ary, i); } return Qnil; } /* * call-seq: * enum.find_all {| obj | block } => array * enum.select {| obj | block } => array * * Returns an array containing all elements of enum for which * block is not false (see also * Enumerable#reject). * * (1..10).find_all {|i| i % 3 == 0 } #=> [3, 6, 9] * */ static VALUE enum_find_all(VALUE obj) { VALUE ary; RETURN_ENUMERATOR(obj, 0, 0); ary = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, find_all_i, ary); return ary; } static VALUE reject_i(VALUE i, VALUE ary, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (!RTEST(rb_yield(i))) { rb_ary_push(ary, i); } return Qnil; } /* * call-seq: * enum.reject {| obj | block } => array * * Returns an array for all elements of enum for which * block is false (see also Enumerable#find_all). * * (1..10).reject {|i| i % 3 == 0 } #=> [1, 2, 4, 5, 7, 8, 10] * */ static VALUE enum_reject(VALUE obj) { VALUE ary; RETURN_ENUMERATOR(obj, 0, 0); ary = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, reject_i, ary); return ary; } static VALUE collect_i(VALUE i, VALUE ary, int argc, VALUE *argv) { rb_ary_push(ary, enum_yield(argc, argv)); return Qnil; } static VALUE collect_all(VALUE i, VALUE ary, int argc, VALUE *argv) { rb_ary_push(ary, enum_values_pack(argc, argv)); return Qnil; } /* * call-seq: * enum.collect {| obj | block } => array * enum.map {| obj | block } => array * * Returns a new array with the results of running block once * for every element in enum. * * (1..4).collect {|i| i*i } #=> [1, 4, 9, 16] * (1..4).collect { "cat" } #=> ["cat", "cat", "cat", "cat"] * */ static VALUE enum_collect(VALUE obj) { VALUE ary; RETURN_ENUMERATOR(obj, 0, 0); ary = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, collect_i, ary); return ary; } /* * call-seq: * enum.to_a => array * enum.entries => array * * Returns an array containing the items in enum. * * (1..7).to_a #=> [1, 2, 3, 4, 5, 6, 7] * { 'a'=>1, 'b'=>2, 'c'=>3 }.to_a #=> [["a", 1], ["b", 2], ["c", 3]] */ static VALUE enum_to_a(int argc, VALUE *argv, VALUE obj) { VALUE ary = rb_ary_new(); rb_block_call(obj, id_each, argc, argv, collect_all, ary); return ary; } static VALUE inject_i(VALUE i, VALUE p, int argc, VALUE *argv) { VALUE *memo = (VALUE *)p; ENUM_WANT_SVALUE(); if (memo[0] == Qundef) { memo[0] = i; } else { memo[0] = rb_yield_values(2, memo[0], i); } return Qnil; } static VALUE inject_op_i(VALUE i, VALUE p, int argc, VALUE *argv) { VALUE *memo = (VALUE *)p; ENUM_WANT_SVALUE(); if (memo[0] == Qundef) { memo[0] = i; } else { memo[0] = rb_funcall(memo[0], (ID)memo[1], 1, i); } return Qnil; } /* * call-seq: * enum.inject(initial, sym) => obj * enum.inject(sym) => obj * enum.inject(initial) {| memo, obj | block } => obj * enum.inject {| memo, obj | block } => obj * * enum.reduce(initial, sym) => obj * enum.reduce(sym) => obj * enum.reduce(initial) {| memo, obj | block } => obj * enum.reduce {| memo, obj | block } => obj * * Combines all elements of enum by applying a binary * operation, specified by a block or a symbol that names a * method or operator. * * If you specify a block, then for each element in enum * the block is passed an accumulator value (memo) and the element. * If you specify a symbol instead, then each element in the collection * will be passed to the named method of memo. * In either case, the result becomes the new value for memo. * At the end of the iteration, the final value of memo is the * return value fo the method. * * If you do not explicitly specify an initial value for memo, * then uses the first element of collection is used as the initial value * of memo. * * Examples: * * # Sum some numbers * (5..10).reduce(:+) #=> 45 * # Same using a block and inject * (5..10).inject {|sum, n| sum + n } #=> 45 * # Multiply some numbers * (5..10).reduce(1, :*) #=> 151200 * # Same using a block * (5..10).inject(1) {|product, n| product * n } #=> 151200 * # find the longest word * longest = %w{ cat sheep bear }.inject do |memo,word| * memo.length > word.length ? memo : word * end * longest #=> "sheep" * */ static VALUE enum_inject(int argc, VALUE *argv, VALUE obj) { VALUE memo[2]; VALUE (*iter)(VALUE, VALUE, int, VALUE*) = inject_i; switch (rb_scan_args(argc, argv, "02", &memo[0], &memo[1])) { case 0: memo[0] = Qundef; break; case 1: if (rb_block_given_p()) { break; } memo[1] = (VALUE)rb_to_id(memo[0]); memo[0] = Qundef; iter = inject_op_i; break; case 2: if (rb_block_given_p()) { rb_warning("given block not used"); } memo[1] = (VALUE)rb_to_id(memo[1]); iter = inject_op_i; break; } rb_block_call(obj, id_each, 0, 0, iter, (VALUE)memo); if (memo[0] == Qundef) return Qnil; return memo[0]; } static VALUE partition_i(VALUE i, VALUE *ary, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (RTEST(rb_yield(i))) { rb_ary_push(ary[0], i); } else { rb_ary_push(ary[1], i); } return Qnil; } /* * call-seq: * enum.partition {| obj | block } => [ true_array, false_array ] * * Returns two arrays, the first containing the elements of * enum for which the block evaluates to true, the second * containing the rest. * * (1..6).partition {|i| (i&1).zero?} #=> [[2, 4, 6], [1, 3, 5]] * */ static VALUE enum_partition(VALUE obj) { VALUE ary[2]; RETURN_ENUMERATOR(obj, 0, 0); ary[0] = rb_ary_new(); ary[1] = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, partition_i, (VALUE)ary); return rb_assoc_new(ary[0], ary[1]); } static VALUE group_by_i(VALUE i, VALUE hash, int argc, VALUE *argv) { VALUE group; VALUE values; ENUM_WANT_SVALUE(); group = rb_yield(i); values = rb_hash_aref(hash, group); if (NIL_P(values)) { values = rb_ary_new3(1, i); rb_hash_aset(hash, group, values); } else { rb_ary_push(values, i); } return Qnil; } /* * call-seq: * enum.group_by {| obj | block } => a_hash * * Returns a hash, which keys are evaluated result from the * block, and values are arrays of elements in enum * corresponding to the key. * * (1..6).group_by {|i| i%3} #=> {0=>[3, 6], 1=>[1, 4], 2=>[2, 5]} * */ static VALUE enum_group_by(VALUE obj) { VALUE hash; RETURN_ENUMERATOR(obj, 0, 0); hash = rb_hash_new(); rb_block_call(obj, id_each, 0, 0, group_by_i, hash); return hash; } static VALUE first_i(VALUE i, VALUE *ary, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (NIL_P(ary[0])) { ary[1] = i; rb_iter_break(); } else { long n = NUM2LONG(ary[0]); if (n <= 0) { rb_iter_break(); } rb_ary_push(ary[1], i); n--; ary[0] = INT2NUM(n); } return Qnil; } /* * call-seq: * enum.first -> obj or nil * enum.first(n) -> an_array * * Returns the first element, or the first +n+ elements, of the enumerable. * If the enumerable is empty, the first form returns nil, and the * second form returns an empty array. * */ static VALUE enum_first(int argc, VALUE *argv, VALUE obj) { VALUE n, ary[2]; if (argc == 0) { ary[0] = ary[1] = Qnil; } else { rb_scan_args(argc, argv, "01", &n); ary[0] = n; ary[1] = rb_ary_new2(NUM2LONG(n)); } rb_block_call(obj, id_each, 0, 0, first_i, (VALUE)ary); return ary[1]; } /* * call-seq: * enum.sort => array * enum.sort {| a, b | block } => array * * Returns an array containing the items in enum sorted, * either according to their own <=> method, or by using * the results of the supplied block. The block should return -1, 0, or * +1 depending on the comparison between a and b. As of * Ruby 1.8, the method Enumerable#sort_by implements a * built-in Schwartzian Transform, useful when key computation or * comparison is expensive.. * * %w(rhea kea flea).sort #=> ["flea", "kea", "rhea"] * (1..10).sort {|a,b| b <=> a} #=> [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] */ static VALUE enum_sort(VALUE obj) { return rb_ary_sort(enum_to_a(0, 0, obj)); } static VALUE sort_by_i(VALUE i, VALUE ary, int argc, VALUE *argv) { NODE *memo; ENUM_WANT_SVALUE(); if (RBASIC(ary)->klass) { rb_raise(rb_eRuntimeError, "sort_by reentered"); } /* use NODE_DOT2 as memo(v, v, -) */ memo = rb_node_newnode(NODE_DOT2, rb_yield(i), i, 0); rb_ary_push(ary, (VALUE)memo); return Qnil; } static int sort_by_cmp(const void *ap, const void *bp, void *data) { VALUE a = (*(NODE *const *)ap)->u1.value; VALUE b = (*(NODE *const *)bp)->u1.value; VALUE ary = (VALUE)data; if (RBASIC(ary)->klass) { rb_raise(rb_eRuntimeError, "sort_by reentered"); } return rb_cmpint(rb_funcall(a, id_cmp, 1, b), a, b); } /* * call-seq: * enum.sort_by {| obj | block } => array * * Sorts enum using a set of keys generated by mapping the * values in enum through the given block. * * %w{ apple pear fig }.sort_by {|word| word.length} * #=> ["fig", "pear", "apple"] * * The current implementation of sort_by generates an * array of tuples containing the original collection element and the * mapped value. This makes sort_by fairly expensive when * the keysets are simple * * require 'benchmark' * include Benchmark * * a = (1..100000).map {rand(100000)} * * bm(10) do |b| * b.report("Sort") { a.sort } * b.report("Sort by") { a.sort_by {|a| a} } * end * * produces: * * user system total real * Sort 0.180000 0.000000 0.180000 ( 0.175469) * Sort by 1.980000 0.040000 2.020000 ( 2.013586) * * However, consider the case where comparing the keys is a non-trivial * operation. The following code sorts some files on modification time * using the basic sort method. * * files = Dir["*"] * sorted = files.sort {|a,b| File.new(a).mtime <=> File.new(b).mtime} * sorted #=> ["mon", "tues", "wed", "thurs"] * * This sort is inefficient: it generates two new File * objects during every comparison. A slightly better technique is to * use the Kernel#test method to generate the modification * times directly. * * files = Dir["*"] * sorted = files.sort { |a,b| * test(?M, a) <=> test(?M, b) * } * sorted #=> ["mon", "tues", "wed", "thurs"] * * This still generates many unnecessary Time objects. A * more efficient technique is to cache the sort keys (modification * times in this case) before the sort. Perl users often call this * approach a Schwartzian Transform, after Randal Schwartz. We * construct a temporary array, where each element is an array * containing our sort key along with the filename. We sort this array, * and then extract the filename from the result. * * sorted = Dir["*"].collect { |f| * [test(?M, f), f] * }.sort.collect { |f| f[1] } * sorted #=> ["mon", "tues", "wed", "thurs"] * * This is exactly what sort_by does internally. * * sorted = Dir["*"].sort_by {|f| test(?M, f)} * sorted #=> ["mon", "tues", "wed", "thurs"] */ static VALUE enum_sort_by(VALUE obj) { VALUE ary; long i; RETURN_ENUMERATOR(obj, 0, 0); if (TYPE(obj) == T_ARRAY) { ary = rb_ary_new2(RARRAY_LEN(obj)); } else { ary = rb_ary_new(); } RBASIC(ary)->klass = 0; rb_block_call(obj, id_each, 0, 0, sort_by_i, ary); if (RARRAY_LEN(ary) > 1) { ruby_qsort(RARRAY_PTR(ary), RARRAY_LEN(ary), sizeof(VALUE), sort_by_cmp, (void *)ary); } if (RBASIC(ary)->klass) { rb_raise(rb_eRuntimeError, "sort_by reentered"); } for (i=0; iu2.value; } RBASIC(ary)->klass = rb_cArray; return ary; } #define DEFINE_ENUMFUNCS(name) \ static VALUE \ name##_i(VALUE i, VALUE *memo, int argc, VALUE *argv) \ { \ return enum_##name##_func(enum_values_pack(argc, argv), memo); \ } \ \ static VALUE \ name##_iter_i(VALUE i, VALUE *memo, int argc, VALUE *argv) \ { \ return enum_##name##_func(enum_yield(argc, argv), memo); \ } static VALUE enum_all_func(VALUE result, VALUE *memo) { if (!RTEST(result)) { *memo = Qfalse; rb_iter_break(); } return Qnil; } DEFINE_ENUMFUNCS(all) /* * call-seq: * enum.all? [{|obj| block } ] => true or false * * Passes each element of the collection to the given block. The method * returns true if the block never returns * false or nil. If the block is not given, * Ruby adds an implicit block of {|obj| obj} (that is * all? will return true only if none of the * collection members are false or nil.) * * %w{ant bear cat}.all? {|word| word.length >= 3} #=> true * %w{ant bear cat}.all? {|word| word.length >= 4} #=> false * [ nil, true, 99 ].all? #=> false * */ static VALUE enum_all(VALUE obj) { VALUE result = Qtrue; rb_block_call(obj, id_each, 0, 0, rb_block_given_p() ? all_iter_i : all_i, (VALUE)&result); return result; } static VALUE enum_any_func(VALUE result, VALUE *memo) { if (RTEST(result)) { *memo = Qtrue; rb_iter_break(); } return Qnil; } DEFINE_ENUMFUNCS(any) /* * call-seq: * enum.any? [{|obj| block } ] => true or false * * Passes each element of the collection to the given block. The method * returns true if the block ever returns a value other * than false or nil. If the block is not * given, Ruby adds an implicit block of {|obj| obj} (that * is any? will return true if at least one * of the collection members is not false or * nil. * * %w{ant bear cat}.any? {|word| word.length >= 3} #=> true * %w{ant bear cat}.any? {|word| word.length >= 4} #=> true * [ nil, true, 99 ].any? #=> true * */ static VALUE enum_any(VALUE obj) { VALUE result = Qfalse; rb_block_call(obj, id_each, 0, 0, rb_block_given_p() ? any_iter_i : any_i, (VALUE)&result); return result; } static VALUE enum_one_func(VALUE result, VALUE *memo) { if (RTEST(result)) { if (*memo == Qundef) { *memo = Qtrue; } else if (*memo == Qtrue) { *memo = Qfalse; rb_iter_break(); } } return Qnil; } DEFINE_ENUMFUNCS(one) /* * call-seq: * enum.one? [{|obj| block }] => true or false * * Passes each element of the collection to the given block. The method * returns true if the block returns true * exactly once. If the block is not given, one? will return * true only if exactly one of the collection members is * true. * * %w{ant bear cat}.one? {|word| word.length == 4} #=> true * %w{ant bear cat}.one? {|word| word.length > 4} #=> false * %w{ant bear cat}.one? {|word| word.length < 4} #=> false * [ nil, true, 99 ].one? #=> false * [ nil, true, false ].one? #=> true * */ static VALUE enum_one(VALUE obj) { VALUE result = Qundef; rb_block_call(obj, id_each, 0, 0, rb_block_given_p() ? one_iter_i : one_i, (VALUE)&result); if (result == Qundef) return Qfalse; return result; } static VALUE enum_none_func(VALUE result, VALUE *memo) { if (RTEST(result)) { *memo = Qfalse; rb_iter_break(); } return Qnil; } DEFINE_ENUMFUNCS(none) /* * call-seq: * enum.none? [{|obj| block }] => true or false * * Passes each element of the collection to the given block. The method * returns true if the block never returns true * for all elements. If the block is not given, none? will return * true only if none of the collection members is true. * * %w{ant bear cat}.none? {|word| word.length == 5} #=> true * %w{ant bear cat}.none? {|word| word.length >= 4} #=> false * [].none? #=> true * [nil].none? #=> true * [nil,false].none? #=> true */ static VALUE enum_none(VALUE obj) { VALUE result = Qtrue; rb_block_call(obj, id_each, 0, 0, rb_block_given_p() ? none_iter_i : none_i, (VALUE)&result); return result; } static VALUE min_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE cmp; ENUM_WANT_SVALUE(); if (*memo == Qundef) { *memo = i; } else { cmp = rb_funcall(i, id_cmp, 1, *memo); if (rb_cmpint(cmp, i, *memo) < 0) { *memo = i; } } return Qnil; } static VALUE min_ii(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE cmp; ENUM_WANT_SVALUE(); if (*memo == Qundef) { *memo = i; } else { VALUE ary = memo[1]; RARRAY_PTR(ary)[0] = i; RARRAY_PTR(ary)[1] = *memo; cmp = rb_yield(ary); if (rb_cmpint(cmp, i, *memo) < 0) { *memo = i; } } return Qnil; } /* * call-seq: * enum.min => obj * enum.min {| a,b | block } => obj * * Returns the object in enum with the minimum value. The * first form assumes all objects implement Comparable; * the second uses the block to return a <=> b. * * a = %w(albatross dog horse) * a.min #=> "albatross" * a.min {|a,b| a.length <=> b.length } #=> "dog" */ static VALUE enum_min(VALUE obj) { VALUE result[2]; result[0] = Qundef; if (rb_block_given_p()) { result[1] = rb_ary_new3(2, Qnil, Qnil); rb_block_call(obj, id_each, 0, 0, min_ii, (VALUE)result); } else { rb_block_call(obj, id_each, 0, 0, min_i, (VALUE)result); } if (result[0] == Qundef) return Qnil; return result[0]; } static VALUE max_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE cmp; ENUM_WANT_SVALUE(); if (*memo == Qundef) { *memo = i; } else { cmp = rb_funcall(i, id_cmp, 1, *memo); if (rb_cmpint(cmp, i, *memo) > 0) { *memo = i; } } return Qnil; } static VALUE max_ii(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE cmp; ENUM_WANT_SVALUE(); if (*memo == Qundef) { *memo = i; } else { VALUE ary = memo[1]; RARRAY_PTR(ary)[0] = i; RARRAY_PTR(ary)[1] = *memo; cmp = rb_yield(ary); if (rb_cmpint(cmp, i, *memo) > 0) { *memo = i; } } return Qnil; } /* * call-seq: * enum.max => obj * enum.max {|a,b| block } => obj * * Returns the object in _enum_ with the maximum value. The * first form assumes all objects implement Comparable; * the second uses the block to return a <=> b. * * a = %w(albatross dog horse) * a.max #=> "horse" * a.max {|a,b| a.length <=> b.length } #=> "albatross" */ static VALUE enum_max(VALUE obj) { VALUE result[2]; result[0] = Qundef; if (rb_block_given_p()) { result[1] = rb_ary_new3(2, Qnil, Qnil); rb_block_call(obj, id_each, 0, 0, max_ii, (VALUE)result); } else { rb_block_call(obj, id_each, 0, 0, max_i, (VALUE)result); } if (result[0] == Qundef) return Qnil; return result[0]; } static VALUE minmax_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { int n; ENUM_WANT_SVALUE(); if (memo[0] == Qundef) { memo[0] = i; memo[1] = i; } else { n = rb_cmpint(rb_funcall(i, id_cmp, 1, memo[0]), i, memo[0]); if (n < 0) { memo[0] = i; } n = rb_cmpint(rb_funcall(i, id_cmp, 1, memo[1]), i, memo[1]); if (n > 0) { memo[1] = i; } } return Qnil; } static VALUE minmax_ii(VALUE i, VALUE *memo, int argc, VALUE *argv) { int n; ENUM_WANT_SVALUE(); if (memo[0] == Qundef) { memo[0] = i; memo[1] = i; } else { VALUE ary = memo[2]; RARRAY_PTR(ary)[0] = i; RARRAY_PTR(ary)[1] = memo[0]; n = rb_cmpint(rb_yield(ary), i, memo[0]); if (n < 0) { memo[0] = i; } RARRAY_PTR(ary)[0] = i; RARRAY_PTR(ary)[1] = memo[1]; n = rb_cmpint(rb_yield(ary), i, memo[1]); if (n > 0) { memo[1] = i; } } return Qnil; } /* * call-seq: * enum.minmax => [min,max] * enum.minmax {|a,b| block } => [min,max] * * Returns two elements array which contains the minimum and the * maximum value in the enumerable. The first form assumes all * objects implement Comparable; the second uses the * block to return a <=> b. * * a = %w(albatross dog horse) * a.minmax #=> ["albatross", "horse"] * a.minmax {|a,b| a.length <=> b.length } #=> ["dog", "albatross"] */ static VALUE enum_minmax(VALUE obj) { VALUE result[3]; VALUE ary = rb_ary_new3(2, Qnil, Qnil); result[0] = Qundef; if (rb_block_given_p()) { result[2] = ary; rb_block_call(obj, id_each, 0, 0, minmax_ii, (VALUE)result); } else { rb_block_call(obj, id_each, 0, 0, minmax_i, (VALUE)result); } if (result[0] != Qundef) { RARRAY_PTR(ary)[0] = result[0]; RARRAY_PTR(ary)[1] = result[1]; } return ary; } static VALUE min_by_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE v; ENUM_WANT_SVALUE(); v = rb_yield(i); if (memo[0] == Qundef) { memo[0] = v; memo[1] = i; } else if (rb_cmpint(rb_funcall(v, id_cmp, 1, memo[0]), v, memo[0]) < 0) { memo[0] = v; memo[1] = i; } return Qnil; } /* * call-seq: * enum.min_by {| obj| block } => obj * * Returns the object in enum that gives the minimum * value from the given block. * * a = %w(albatross dog horse) * a.min_by {|x| x.length } #=> "dog" */ static VALUE enum_min_by(VALUE obj) { VALUE memo[2]; RETURN_ENUMERATOR(obj, 0, 0); memo[0] = Qundef; memo[1] = Qnil; rb_block_call(obj, id_each, 0, 0, min_by_i, (VALUE)memo); return memo[1]; } static VALUE max_by_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE v; ENUM_WANT_SVALUE(); v = rb_yield(i); if (memo[0] == Qundef) { memo[0] = v; memo[1] = i; } else if (rb_cmpint(rb_funcall(v, id_cmp, 1, memo[0]), v, memo[0]) > 0) { memo[0] = v; memo[1] = i; } return Qnil; } /* * call-seq: * enum.max_by {| obj| block } => obj * * Returns the object in enum that gives the maximum * value from the given block. * * a = %w(albatross dog horse) * a.max_by {|x| x.length } #=> "albatross" */ static VALUE enum_max_by(VALUE obj) { VALUE memo[2]; RETURN_ENUMERATOR(obj, 0, 0); memo[0] = Qundef; memo[1] = Qnil; rb_block_call(obj, id_each, 0, 0, max_by_i, (VALUE)memo); return memo[1]; } static VALUE minmax_by_i(VALUE i, VALUE *memo, int argc, VALUE *argv) { VALUE v; ENUM_WANT_SVALUE(); v = rb_yield(i); if (memo[0] == Qundef) { memo[0] = v; memo[1] = v; memo[2] = i; memo[3] = i; } else { if (rb_cmpint(rb_funcall(v, id_cmp, 1, memo[0]), v, memo[0]) < 0) { memo[0] = v; memo[2] = i; } if (rb_cmpint(rb_funcall(v, id_cmp, 1, memo[1]), v, memo[1]) > 0) { memo[1] = v; memo[3] = i; } } return Qnil; } /* * call-seq: * enum.minmax_by {| obj| block } => [min, max] * * Returns two elements array array containing the objects in * enum that gives the minimum and maximum values respectively * from the given block. * * a = %w(albatross dog horse) * a.minmax_by {|x| x.length } #=> ["dog", "albatross"] */ static VALUE enum_minmax_by(VALUE obj) { VALUE memo[4]; RETURN_ENUMERATOR(obj, 0, 0); memo[0] = Qundef; memo[1] = Qundef; memo[2] = Qnil; memo[3] = Qnil; rb_block_call(obj, id_each, 0, 0, minmax_by_i, (VALUE)memo); return rb_assoc_new(memo[2], memo[3]); } static VALUE member_i(VALUE iter, VALUE *memo, int argc, VALUE *argv) { if (rb_equal(enum_values_pack(argc, argv), memo[0])) { memo[1] = Qtrue; rb_iter_break(); } return Qnil; } /* * call-seq: * enum.include?(obj) => true or false * enum.member?(obj) => true or false * * Returns true if any member of enum equals * obj. Equality is tested using ==. * * IO.constants.include? :SEEK_SET #=> true * IO.constants.include? :SEEK_NO_FURTHER #=> false * */ static VALUE enum_member(VALUE obj, VALUE val) { VALUE memo[2]; memo[0] = val; memo[1] = Qfalse; rb_block_call(obj, id_each, 0, 0, member_i, (VALUE)memo); return memo[1]; } static VALUE each_with_index_i(VALUE i, VALUE memo, int argc, VALUE *argv) { long n = (*(VALUE *)memo)++; return rb_yield_values(2, enum_values_pack(argc, argv), INT2NUM(n)); } /* * call-seq: * enum.each_with_index {|obj, i| block } -> enum * * Calls block with two arguments, the item and its index, * for each item in enum. Given arguments are passed through * to #each(). * * hash = Hash.new * %w(cat dog wombat).each_with_index {|item, index| * hash[item] = index * } * hash #=> {"cat"=>0, "dog"=>1, "wombat"=>2} * */ static VALUE enum_each_with_index(int argc, VALUE *argv, VALUE obj) { long memo; RETURN_ENUMERATOR(obj, argc, argv); memo = 0; rb_block_call(obj, id_each, argc, argv, each_with_index_i, (VALUE)&memo); return obj; } /* * call-seq: * enum.reverse_each {|item| block } * * Traverses enum in reverse order. */ static VALUE enum_reverse_each(int argc, VALUE *argv, VALUE obj) { VALUE ary; long i; RETURN_ENUMERATOR(obj, argc, argv); ary = enum_to_a(argc, argv, obj); for (i = RARRAY_LEN(ary); --i >= 0; ) { rb_yield(RARRAY_PTR(ary)[i]); } return obj; } static VALUE zip_ary(VALUE val, NODE *memo, int argc, VALUE *argv) { volatile VALUE result = memo->u1.value; volatile VALUE args = memo->u2.value; int n = memo->u3.cnt++; volatile VALUE tmp; int i; tmp = rb_ary_new2(RARRAY_LEN(args) + 1); rb_ary_store(tmp, 0, enum_values_pack(argc, argv)); for (i=0; iu1.value; volatile VALUE args = memo->u2.value; volatile VALUE tmp; int i; tmp = rb_ary_new2(RARRAY_LEN(args) + 1); rb_ary_store(tmp, 0, enum_values_pack(argc, argv)); for (i=0; i enumerator * enum.zip(arg, ...) {|arr| block } => nil * * Takes one element from enum and merges corresponding * elements from each args. This generates a sequence of * n-element arrays, where n is one more than the * count of arguments. The length of the resulting sequence will be * enum#sizeenum#size, nil values are supplied. If * a block is given, it is invoked for each output array, otherwise * an array of arrays is returned. * * a = [ 4, 5, 6 ] * b = [ 7, 8, 9 ] * * [1,2,3].zip(a, b) #=> [[1, 4, 7], [2, 5, 8], [3, 6, 9]] * [1,2].zip(a,b) #=> [[1, 4, 7], [2, 5, 8]] * a.zip([1,2],[8]) #=> [[4, 1, 8], [5, 2, nil], [6, nil, nil]] * */ static VALUE enum_zip(int argc, VALUE *argv, VALUE obj) { int i; ID conv; NODE *memo; VALUE result = Qnil; int allary = Qtrue; for (i=0; i array * * Returns first n elements from enum. * * a = [1, 2, 3, 4, 5, 0] * a.take(3) # => [1, 2, 3] * */ static VALUE enum_take(VALUE obj, VALUE n) { VALUE args[2]; long len = NUM2LONG(n); if (len < 0) { rb_raise(rb_eArgError, "attempt to take negative size"); } args[1] = len; args[0] = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, take_i, (VALUE)args); return args[0]; } static VALUE take_while_i(VALUE i, VALUE *ary, int argc, VALUE *argv) { if (!RTEST(enum_yield(argc, argv))) rb_iter_break(); rb_ary_push(*ary, enum_values_pack(argc, argv)); return Qnil; } /* * call-seq: * enum.take_while {|arr| block } => array * * Passes elements to the block until the block returns nil or false, * then stops iterating and returns an array of all prior elements. * * a = [1, 2, 3, 4, 5, 0] * a.take_while {|i| i < 3 } # => [1, 2] * */ static VALUE enum_take_while(VALUE obj) { VALUE ary; RETURN_ENUMERATOR(obj, 0, 0); ary = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, take_while_i, (VALUE)&ary); return ary; } static VALUE drop_i(VALUE i, VALUE *arg, int argc, VALUE *argv) { if (arg[1] == 0) { rb_ary_push(arg[0], enum_values_pack(argc, argv)); } else { arg[1]--; } return Qnil; } /* * call-seq: * enum.drop(n) => array * * Drops first n elements from enum, and returns rest elements * in an array. * * a = [1, 2, 3, 4, 5, 0] * a.drop(3) # => [4, 5, 0] * */ static VALUE enum_drop(VALUE obj, VALUE n) { VALUE args[2]; long len = NUM2LONG(n); if (len < 0) { rb_raise(rb_eArgError, "attempt to drop negative size"); } args[1] = len; args[0] = rb_ary_new(); rb_block_call(obj, id_each, 0, 0, drop_i, (VALUE)args); return args[0]; } static VALUE drop_while_i(VALUE i, VALUE *args, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); if (!args[1] && !RTEST(rb_yield(i))) { args[1] = Qtrue; } if (args[1]) { rb_ary_push(args[0], i); } return Qnil; } /* * call-seq: * enum.drop_while {|arr| block } => array * * Drops elements up to, but not including, the first element for * which the block returns nil or false and returns an array * containing the remaining elements. * * a = [1, 2, 3, 4, 5, 0] * a.drop_while {|i| i < 3 } # => [3, 4, 5, 0] * */ static VALUE enum_drop_while(VALUE obj) { VALUE args[2]; RETURN_ENUMERATOR(obj, 0, 0); args[0] = rb_ary_new(); args[1] = Qfalse; rb_block_call(obj, id_each, 0, 0, drop_while_i, (VALUE)args); return args[0]; } static VALUE cycle_i(VALUE i, VALUE ary, int argc, VALUE *argv) { ENUM_WANT_SVALUE(); rb_ary_push(ary, i); rb_yield(i); return Qnil; } /* * call-seq: * enum.cycle {|obj| block } * enum.cycle(n) {|obj| block } * * Calls block for each element of enum repeatedly _n_ * times or forever if none or nil is given. If a non-positive * number is given or the collection is empty, does nothing. Returns * nil if the loop has finished without getting interrupted. * * Enumerable#cycle saves elements in an internal array so changes * to enum after the first pass have no effect. * * a = ["a", "b", "c"] * a.cycle {|x| puts x } # print, a, b, c, a, b, c,.. forever. * a.cycle(2) {|x| puts x } # print, a, b, c, a, b, c. * */ static VALUE enum_cycle(int argc, VALUE *argv, VALUE obj) { VALUE ary; VALUE nv = Qnil; long n, i, len; rb_scan_args(argc, argv, "01", &nv); RETURN_ENUMERATOR(obj, argc, argv); if (NIL_P(nv)) { n = -1; } else { n = NUM2LONG(nv); if (n <= 0) return Qnil; } ary = rb_ary_new(); RBASIC(ary)->klass = 0; rb_block_call(obj, id_each, 0, 0, cycle_i, ary); len = RARRAY_LEN(ary); if (len == 0) return Qnil; while (n < 0 || 0 < --n) { for (i=0; iEnumerable mixin provides collection classes with * several traversal and searching methods, and with the ability to * sort. The class must provide a method each, which * yields successive members of the collection. If * Enumerable#max, #min, or * #sort is used, the objects in the collection must also * implement a meaningful <=> operator, as these methods * rely on an ordering between members of the collection. */ void Init_Enumerable(void) { #undef rb_intern rb_mEnumerable = rb_define_module("Enumerable"); rb_define_method(rb_mEnumerable, "to_a", enum_to_a, -1); rb_define_method(rb_mEnumerable, "entries", enum_to_a, -1); rb_define_method(rb_mEnumerable, "sort", enum_sort, 0); rb_define_method(rb_mEnumerable, "sort_by", enum_sort_by, 0); rb_define_method(rb_mEnumerable, "grep", enum_grep, 1); rb_define_method(rb_mEnumerable, "count", enum_count, -1); rb_define_method(rb_mEnumerable, "find", enum_find, -1); rb_define_method(rb_mEnumerable, "detect", enum_find, -1); rb_define_method(rb_mEnumerable, "find_index", enum_find_index, -1); rb_define_method(rb_mEnumerable, "find_all", enum_find_all, 0); rb_define_method(rb_mEnumerable, "select", enum_find_all, 0); rb_define_method(rb_mEnumerable, "reject", enum_reject, 0); rb_define_method(rb_mEnumerable, "collect", enum_collect, 0); rb_define_method(rb_mEnumerable, "map", enum_collect, 0); rb_define_method(rb_mEnumerable, "inject", enum_inject, -1); rb_define_method(rb_mEnumerable, "reduce", enum_inject, -1); rb_define_method(rb_mEnumerable, "partition", enum_partition, 0); rb_define_method(rb_mEnumerable, "group_by", enum_group_by, 0); rb_define_method(rb_mEnumerable, "first", enum_first, -1); rb_define_method(rb_mEnumerable, "all?", enum_all, 0); rb_define_method(rb_mEnumerable, "any?", enum_any, 0); rb_define_method(rb_mEnumerable, "one?", enum_one, 0); rb_define_method(rb_mEnumerable, "none?", enum_none, 0); rb_define_method(rb_mEnumerable, "min", enum_min, 0); rb_define_method(rb_mEnumerable, "max", enum_max, 0); rb_define_method(rb_mEnumerable, "minmax", enum_minmax, 0); rb_define_method(rb_mEnumerable, "min_by", enum_min_by, 0); rb_define_method(rb_mEnumerable, "max_by", enum_max_by, 0); rb_define_method(rb_mEnumerable, "minmax_by", enum_minmax_by, 0); rb_define_method(rb_mEnumerable, "member?", enum_member, 1); rb_define_method(rb_mEnumerable, "include?", enum_member, 1); rb_define_method(rb_mEnumerable, "each_with_index", enum_each_with_index, -1); rb_define_method(rb_mEnumerable, "reverse_each", enum_reverse_each, -1); rb_define_method(rb_mEnumerable, "zip", enum_zip, -1); rb_define_method(rb_mEnumerable, "take", enum_take, 1); rb_define_method(rb_mEnumerable, "take_while", enum_take_while, 0); rb_define_method(rb_mEnumerable, "drop", enum_drop, 1); rb_define_method(rb_mEnumerable, "drop_while", enum_drop_while, 0); rb_define_method(rb_mEnumerable, "cycle", enum_cycle, -1); id_eqq = rb_intern("==="); id_each = rb_intern("each"); id_cmp = rb_intern("<=>"); id_next = rb_intern("next"); id_size = rb_intern("size"); } h~5%eVi(4ϔ.}MeP*v}?b+vh%xoڌ ^W+9O|AQč aW^Z β4ooK8HTkߣ6n"5O#|Xns qZCMVVlFڕBs*kRʞ}^VzYsv_kcs]Q9R{ĉ4HƗXFG{c'Iz<]fdx+OBov8eNX4')\0^Y yΫ펴Uc#LCN f$ ,6d ^8GˆjB`9 BC'>A"Wth:[崍 *65~¨@DIg=ggRYOT7%wWv R-ګnxw@6u_/C [_mp!0R!#KIyEb\2~P*߿#5aHo 3<1.k/Hmjt;%҅0ޢhr Lr%1ΦJ|Z__+lܲuS5s` m2@*H#w{Sr{d]RQS+vufI`zl qh'&k%6҉U]BPdwgaANSnJO#(0="^uTZ,i (3"!5=}e 1 dW2];`ARStx4A)qMzivu >]!Yg`p 2OGvMH$nLQ،ќYL@bd38y]u=5>.7b'n;{6F _1m[08G!UA{3xߠ|^7pz_V;HE[6s29ʶm Av˅Ydi?|ܐvoΩВREAbh*RuÓYsW5ΊOK%^>vcp~"u $m#p迄)ڳ o9F s2{B nES͔ RmѯWW@;%4XSEi@A#6]2޵mϥƔOs'g Lzx=%|`imΗO8 TdL7dĵ {tx7A3:0ihrx% 5=ijǎUtH?4-ơ8WQTfXt%0?-H۫ cgH (قlJ30r׊am2kX]!E#^El%NoV~aM(v8tttKʌOvz]$WGfêsiƯD}3S*)DV\t%̹X}Djt?={zAοzճXÏwGKJி!G j l3x耾'ow> s1MqtNO!4<=J ȸ,>h LsV*?bc%7fe介 ޹}ChNe*o!gj4K5tX<̭o9ww/-s1 <qVU7G^](Ll[82!e\5uA?-_2O2o = 7+U{+<[ 뷀ؒGM4=OO0y=Xz9੃Hϭ]+g c_gUg.3ٺxA?\*>,|>J_Rn~02k X} 'pFYLKxRjTH[忤 s@R`]XsXk? iXpVswݽ*ЦG=M+^0但[\)wt`knkTrSy [qntblvz$ƶW\O>zbAN] M?Hd )iwX>Wƣ6&{Sd #{kNټ!ejiKW_a6捺_z\tsڳK+FCدqWfa}?HRQb{kZCTaFqNͼȂZZ e4<ܗc)aT'&4#9WP!;(:ޜbI|by7JqM5"h|1Sn Xx3;K0@|fa+^3@Hze!}Qfjm"KVK*!+P$wXwQ xܼBF);s20ciVa^(1*G dZm Й5 m":ބ}ZA+oG1b^IESsPF4bd -?bT vtKI>hƅ!g}zUIjnEBt V17TT ˜.1d1%Pohh+7@C] S޷a2'a~fgih~%)d-.nR CUQ _Ɓ#F鿾|U?C~Q[Ni% [}F0,hg-Ѡf9wG0D'RlSr⊄v`6@Bv[!6k(/_Nq*P h_S}-ihbbψbŧy/1._u붑XZ}ν3XNe] 0qQ\ҙGAhtNPb q⼁;`wXS)_ruE!PZh5j2~[ ]3ѥ:@e_ FypY^jy]&mghʥJM;z0"j0g6)\2 n&\ZRob\,ƳNDmhGW)=m4C%+~Xl|C(Xs t[Y8~A{%Zm7Lbja(HP#}5\;ߴ`aE9 {!u4j9f{5o?;AsiytVM/7Z'@"6o^t$ħs&Yf5,!1._r9Ai/d.SOR:/KCR־HL 3!E1loWdpRl[ XYJIw'-X} ۰LVus> QP +Tq+ycjGviSY/: Bp1A-QgU>*Q t <=Cev~|3No o_aVa0h]F#MXՙu$jڟ>Kby"eU$rjD1Txc$oGټ`fL%%+]rʚKu<КNAC asVQ-ЂfX qȈy\hP>,:ј YEaJZ]~XJItڟVj%tI"Is}h^NԝBR2(,oJtQFNE'KP,wJbш5\}Qd* EԧF5tźrJI1gDe+z$R \>Ψ zp<н}&"q 3/^ ZWe#xV[=E.8}Sl ښqI$G&q)@n6a[ }8 CJs#jC:k,Ep,20O)n0Y٘yU[E *ZJf5oAbvXd?n` [pR`8>'"yVK!RF_*i0_`sMO%X^ab4\&ADڪ zE%_pϕU1Pe&تHFڀ0HtQs?p؟zx$°-̙Pl[{9͏=yj2(҆7wvC5e`[kl iwsZ0z9m )7;(C/:bc>3V CEZH4 ELlwY~d|HbOMS$,iF,qȰg@W\)-ظ{3`p}!>ԇZ)K' W?ޣO]APHC&ȜJ,jg*]a<}RL v)5!NyD`^9؞{ʞY̕1DWU4+~\,M%YĸK_jT^ 1gČOmƒj:@s78DtG+IP3{,L3NJGT0 Nf\YrZaL˕`Ui>E7"V[ P0sQԠbO+Aq)y頊bU̱B,:<j58WcNy-fOvFdl xO!> {XB9Q'l|j^) ݠUTVDo>>ApL y) mI(;z.vWfBJfn0/&[ J~ =h"twҾFl F|FgKnL\4Zhm"ev>D,q}sy+xs4Sm}>1雖gxS;W=fjG~#?ѬSۥߥ֨S>%`OJ1Uw)+3'@)/lAjgqӵGn!z{|j@JƂL6Tʧ]T g%qQ_߾ ؋I~+[nI+Yk J,W:`5`V#n= ж9;uY%@Px) e## uU1uriuҴgy!BYCd&sϲfD\4 rч1M A|.Ų+F>~7&KgIgt=B;.9~]څzONd2 7hu5=,$&Xhxj8˛D9TDLObdjDQ>`/Ɨ+4mjCg&U,m4z3-W.J4!jyu0&\FN&*ءrTXލHںPQ:O2;OL![ gU azD5>̫K>ڌz}8d>˩3?)dڻ*#,9a7^Hρc:̪e*p$ɅqRWwYg+#[$/ 1Yz\sD 3}/Ї?(윦IܸԴʵ+ Q'PhTRArqpje֛^zd_wi,0 ypi&Z)-7X7 ѓʌQ!0{| ؋+Tu yRom[_W^*7M&gh'7M!G5ǒM9sS=SAGy:H 7$m+ʷi􂁈opK&B|R,ZX`Eu<:m1Iu 7%;#4 2鸔uT*7%MO nc|"7T|FtK&WJe .`ϱh[n-Oz se@ t2O"noY2Bʄ"o/vfD,*O=Hj\sicD0&c;7#ҍ|w:If dve5LaŋPvElBfKB;b_ICxx2ȗzth_Dz׃g4ulezz"pn'qDF1kwzVߚ2'`~AqIyOǾ|,0ؠoJ:{G㯮F"l+_ea6/k=E]B ,n TsΉ3}z{G[5TѨ3bbG<,soqg9 `;''0!Sm@7">*V@]ఒ*e] ;Ōae8/e$fٸ|<#e2yPT;rLA:v<+o_}L&Jb.՛AD{1`RhzowBFbX,Mll ↺( ߮CW-oWe}%T.}b*O LJ9h*6i:e<O@'تk&-j:1i aJnϏ?%T!2S4''t/mBI 9(:Edbq֫ e8`-a20ēEpU{Ù~ȗ7,\2+4Uq]O7(]}qŒ&Xdbv 30g']j# K저|t֦DP; >iQ;{Q [F N`!c(r8jť@NܙV&ǃ\D1pPtŠsbWiV~)XP-o g* )@c&dV^ zCasB]uͤ*]!0Umm WۇIu2emx=qkdiT r.'s# J#Ӹ1ك SUO%|nTIB촶2' Pm$4p*/{ݹ:GhhHhQ~A|BڐTr[5|D5$N>`Kw2YW@jR:ˏMZwNNx#E ǓywwdKBIlEK~S>"/7+\ # 偊Sr"B҆ >{=V#pi%&̺O$vG;XLZ6u/쯒XpkToYwiyL9i6O2|CeYP(C5\r$n^+!e׼=nVߗ|)~+&po ~3M俁ڃ=\ɘ !KqMhO$(%DeEDKiBJ{v Z?cDu_hV8/;0<,]G bFg{j΅ߦN \ "[^%N5s9"HfdV-+]Q*wNJxz/7* kF:7Nqg'Q#{UC3S.Gv1o|ѓcxfS˸3xVvm^ڳ.BgIfd}شh Hf&؛|jL܋:P}8uIjom?2'0@_$ꙊH=nZg^$kt~@ &?#}pK>ӳ9G{U@C @vKjLqWd$u ]buLɨ.v<iԙIU4 m[d gF)WH1°"yb"2xÃMqq(Z,syo5l>tr`61!6㕡mX2?翕&q)aAGuP'CzanE:ݟ0S pK9 Sƽ؁pF ӂRx(e{}RdB2C9 Fпj.op`>Bq~ ꆿyOxt Y?N*S#|S޲.6I)zF?AϽt|dҮt.>iZd .le}.6] ({_qMJH(H72Ϭ~D'g $.v ZF*E%5G73XVx/tF=)B4cWF~;|#Hb+uϔ#hѭ _UG8d8ObLm6%^!]9kLE2~WN%qe%7 ނ)&AN  B-mw !5=,qvA_Ob%K'w. cu+BjMX23jDnVuܠp

Uc8_G/ ^ CHQnUOO$ݝ ߗb5;n/[zc榃tΛiB<:A f(vͺ?> wA8z /loZsfqk\۾׹P&5gM 7`i !Κ0h88ɒ&f8!O6J"g5b#Np:x11٫18p8 ;g>w59%ν^Q*mpô,Ȫ+ MYr%n`,1B&?Mpv8%?KX(EB}6ǩv\ ]il^ymLXrnrUq< ,,9K`12йK$}b߷ ]ǖfBVHe&&u Т1#5v&aa$ȩ#*3Ii^ŪBy|?#΁%c@ m})tΟهڤb^[J=fs]!WݴݸOކ\F~6/J/?\vIu _RTyМxѡ5<-ޗn0ܳB94LN̞(͌ [sqFO =5@_4, 3ʱ!43֥grmrs Ƭ_uAlMԏ$sAkN7K;UW'Ay@y%z4DwlA"F=ċ1#mpg JVDO3CEPf;4},XXH|DK%Oȶ\Xff)Y4Pc-/^gMv4pYk@|^ZY_{B6B)К}zIb7^fO¹p,F|8alܽ1!u7oDobҾ9sF'$O4Cql&`o3t]o݋v'HQ,HƖb٩f@Qp:h4ا=Y!ΉvUN/q.M+O:Za[B,١._LW8|.E.4c^-vYD`'sP,fdk.QM&'t}Omy.f^&ِJzڟ8b{B'N9[q>(KEJ 7й!<F[ .&-+.z|9\ 7AbcPaKV|dt\`!1B[ŊιNm8o&WD]cm}ٮ8G__HզJ'kugdvtfHَGdR?P5jW)kqa| FxAB7(u_ `rWjbf3KEd\4dB/,O i3:N#c:x?R֌Ud}.- ?F;!=#BFx~&vN';TPmKGdrSM@.M ۳i={L"!Nenj 7Sc}sC$ +߉QԲFR׉ $JJ{ 2V}n3,#w[؉ Pԕ!4l+s*XJIreMݟ蠟N[O}TM 4ʶ } 73 $e@R1N\u,$TO@LR1ҿ6lm ,TNnOc`-FK"RY0AW;,X9 BnŬG` ߹"'иNG]sWC '.+A_, yE߁[Eϼ#գCqS] "Ade -xxu]92]Ҋt&BT3ZMٮ4?RޘP2:diRX0Z,at1D7 ؏E2t׬0ts-5qy,|S-Ʉ Flu.,<{-RS5R ]`GJ[މSD?>׎n{ `|O8tlk4IA(}:d@.H GXkp+I2< yRfr}O!gzpbabk䓺DY0^=6jAEۭf+`׊| }ޭ݋]DJ+^FpM'}HphW S$^&f_z-vRd*?OoP7%Sy!'vPUL[y'r+*?t]]$,a%Ru~f FM9C6bQ>B9&PQ_qKW~TEwEI?PRDɄ@unutpB A#;3BMk!6snUч{9}&4 , XێsfҨ6_7~fBߣ s`,+8y6ɸ װ$X38*)RP#UYMf;InBk/jjS;Qž:.$'tpS-˜G@-/E+Mr#]Fp/{֕g$3U'~ᦷY]F =}SՅ_C3߂cn%9.Ƕw wyBM}&z:9U&t''m/^e7|R2i V)M$ HKt W_I-FA%+~KY^Ѿ/jy"|*+^V .F蝃XrP C;fV)j5'c߈_l9M{s0^ `mz- ~=</h}Tuum]Y{q,G[JEل$ -}_fDaڞO|֞6k/Y]r!v?`X~%AuߕdP-$N(it8o|>h$c˹> p%|OdMRWhۇxk2tʽM)\^ Gc-Hsa7%d? 9|0]FW RDybiU2.)[_3eIxeO"305W/?܂dq|o@8ag=.X _=)j ()>"f$B:0j1ߝyy_Ȁ[ҘS3"@c/~Sȅ'<[s #!COwsrq,+U{}6u@'* Ij';ɸVK{v~y"?\V 'ɃΏarͿ<"j 7 =d.LC$°Č6DFa=tp9$ dm.Ę` Rb2o>"FQS&!vݲߏȉ.(mG١v}Xqތ'M :-+VLkr{.@ki_,P@6Knia9H\+S.vaX^f1"MYv%L:DXR*} W)fX.7fy.li bz2ɍ5qhLJp%!Xaڌ IbZa0ϝ7_4Z<OV߸`$s%0E)Cnn֬@0Nni$? 5Kox(cܺ7}׸>, c}z;A>Lfq. B$[=!%a19`ͩ$:YdTk's|I |_Sz9=yo'nA<,l`rw 4?衲Ҥ6o Y^Q&[:CB4yCU;9mw4g P)x/辪P*D7Ŝw/JR9sTޟO~d'_Qo)V,sT>R5G1GzA|Op Hn|Eb#ֱ=xdlQѮ +6E/,8߲U]{(s5]\"O!ވy"Zh\9BWǓJ[qɦP'e"Rŷ{@RHųc>D谚r E30ch):}ks(g{Y!e"j@[Equu,f\a6$#0G+NkhbĽK{fʺ,jlY ]ߥ@ ;s=Tn%m]}Orb!sy`rsX$XV E&V VaBRl? Kt OOatVw-9-Cs[V~Z7wί~lb]Fvt[ED M'3wlSu ]'(],뺘#9CiƫnGKA=Gw&7mSk&Wl:Mǀ1h$au88࠲h P f]ќ>Oluq&q –x#Ft ޻5;I+np|p| ${Xxb<*$w)G}&}#ݛWgv65~ ̚C flHb*oaDo!,6`ּo߄¾H_SlX$HfdWmOo 9QU-v:̫3FphΊ ANi 9uC Ά#oD?[+#9!ӊ"%G)k29Yk( LR_F\5(3PrMVl[SV]jX;F^^ٛSL?>ItnTÈY'wz򲰚4T)%By1SA͇1U?ռs{KiUDSfF)VC.D lkg %!šIZZWs֢jtc~Jm_a묰L(e:5sl޸O8*fKN96C'^$xl*WQ=d̸hD<.xqTt묒KͰP:Yg IqĦ qwHi} k/ HozN_h)9\{{i&چ)Cqʼ^ "$[8.paL +IѬ>/7B`":v3 n} 4#t42_pwhKe5 dXZ,\Dyׯ_T>I |U1vF;:OG%D(4H7dy䃾մV @erxž Kt-]ɂ{H9?u_=].* m~[3϶>U_k@8pЕW<ߖ$syʻBHK%&fqQ gB CFmp.fiQw캫]UCI8%Q2tHrAyaV>7u }CE}m$9ߝȒwmF mDr6wzq^$>c>~D$yfHt,*Ӟ^<ҁݝ0"k$iޖP]T_99aɜ#j6o>H/5wz½7vhe 瞃w05E 9gҔ}#iQ^.fP-']p6V`ߏ<]1l, 3&v AzM/2uS)6$yx5Ѕ X;gtϦ" ;pt2oO,Pv2"Cg*-$fbԛJi*!O׋@~/#OGYaW:9_Vl?g~5;j o5YAk7;*xd0#w8`SoƄ2 |UrDGgCy6{CZ= R?q w:N~#rf+W yV|š> ӥxDdI \j:P` .b:9Usdz)npL 9U{/ r4pb Mx:jyžE.R{i)&{r6sH̔Qؖyxdӥ6z tMT%.=,dPpyR;裈^ Q"=)7_ 029am @Ul'_ P S#JRL(䩳)}>HKrN y)_ d!b䵙D%~pGTM,Hk,Wl2*`0o$s\rP- qW޾:=|:9U2a(Q`NR$;ocuF{ Bߝl+-wYə,c&=c}Lϲ=v? p3SXM; -pؕ@{_ʭ_zB`/8K -nF)Esp߫e.N>x(q a>lRFcm$mwm{Nwcي tERo6|o ʹߧ)Ŗ5=7m^ݱdiX]fNOOZ&sZanI+hke&8{;#b-DD0v=y1qYKw<4qJԘ&*6E}Il#lxہ)Xr7{:3f֠H@L@0yC .'x꜔s|=ݔÛǞVu$JL"KD *2C: F:KT04\լǏˏXLlOLdQ ӀOQ(#+b(J B Y3(VSe1O dt 2cK"vτ/&JYc#IGI*AAA>cm蕹ۇg02a6I~9CntJo:gRb+`JB P(5e+[lB?~7`*ՍJ[g3UBmU1fD *07o ڄصs? Ŷ RjfcNZ(GzG(gC".ILÿQ,z̎t̉$ uٴgEe<>{xő^3*}\˪"ˆ ?bE^H<[d%!f3oo>֩-Mߺa'_ҽ@vNVÂɉ- ]'Ĕ>B2hP߆WO;qf(f)$!<m&Wبx'܄ Mݼlw%\R /Nk_`^G{M(\pí6q8z[5ٗ0@u~b[mNT][-ʐMcxn._[^]#96Th~̃?7@eH a!~QDZOۀd6@P]/u 䗸BpU%yEzc=\&{fEec BU [obGƛM<,lL.f.STd6KqF kEvTW=֊k灉S;X z5 ' AI.qcs}oyCU2HϏz,iiu౗qLJ9)xSYitdr1a죠'%i%`@St$=7u8gBqzn_ل%F H|MFj0X m3ay~4-/&0m#@bVdI lmgIG'!]өqRHyGtR&m]5҅,a ~$qpjk XQ6Z= >pa>:|}pU_M|j,hACYR0 Ț|26 ;(3믌zBЎ]3v odY0[ *YPuR(`7sтEoV!Une8A< q21K3%J4dO̅_k)K@'C<&QRj>p`ulwZ+FS;\[4_%J0^ h":'+a,!]P\x_K(T[龔8LҽTIQ32DvcV739&=d#mK҅Onk:lũQQVV-/=鳈ne#ٻ#u 1a״JYo>n'220 _ 6mp0XE*YWrÚ6Gf^ik&+( ,?;H=KQҁ:Tf j,_s:z/񨜁It^5⍸X̛ƴI*&S@-͙VထN]FĀEjܵànr4Jڥeri6{{E@oF{?ϿY,$PMy-駈uuo@Ky`x(3=W_7=}zh{$(ZNV\6jJ 1\_ DjVݣ0S0"ezAhb* ZÃڧOo:<E/ߜ˟oֻf/3^ٕ^0?>:Vwu!AvD ;&轈 =c>RQV*,IW@<xyKn 9搇vw-ii-y-3Մqvf+o@ r!.VZN,2f" :Y?L;8?&sT˶(x>mƘOQp%[?O|Vj)RE6XV4L蒾'," ՉPQ Em%=$}xbfNgnx} 7Z_M ϝ "f t+cTfq`R9 pѫ>fUrSIoAP%d?dCA!ݖn]]:$PSygC})v+]V7rY?:-kbFa / `> (ݬ|2x8AმY)7"!#BV]x9 `ӵ9cI6W`0.C?3U0?]xߪ$6VlL]B]&Y_A &ED%zJ_ i^I)XcUL]^W\.X`j׳>;`/m$`+4:F7M914zЕ(W< /hZJG\92ŧsnT|CoAuuOJxJ#.1~ڴ~[xRx%ئ(l>K:23aWc& o]m%zƭXMTIASU,Lyo9J%iKqQx]`J[T@<1kdYEo =*(1c^;11BY)%SP'@1vS*c#_vBxHJhA{IZUҵ;pz\8JUFlj^Y4@ dc_E:}.VW$Ҍi9DFc ubJ;.Qz 'zD_cnP4nnUcvLa|6lj3D`ߊ72ojIȒlB.v#+1| 9#kUi_*3mG*o&L=ܙ[ dݱgI_B_N ", ZJM\.3djwCQ`%KdpgzכZ!!-kX4jl0>.&>fPf_騬3ɄOP#дlAya.ĂC[Ec Awmܑ7W$"].]!Ͽj!ߗ T눇C:X=͡.)^tR0M$AWQa =ɳ\4k Kc K<6i5g_.yZ@ZEgyZgu i/A ED0*1^w:ü xj=~,܂ (fYQcG^ো׿3~@͇z='GYݜm!RbmKԺ@*e@yHBkvuit& cH.V|# 5t櫑QF/9,)ntg?w_u!%`l[8ywiN_15_Fd0!d2gKzݰO>t_#c 8Uã(U' ?Ua4J9̖Fs-}k` $< S&`,)T1zJ\ڦįagi$,hjX6(c_ VNGE QȈcX̀G)Q!>i@WT'(N~ׯЙl?Nj,n .`L?t9.rQ%Ҳ03 yv-Rkechb9w]dLE+dӹQ,9ii-$ǫm2\AI f"8u@XL"o_a 峩M4fUѹs dޒᔖu۷JIڍ~*BѶ&"禗ȇ}B1nOÀ=9 /$K\ 'O m 0}"K7Od%S|p2;`ԙmߎYmYF[lOt=S@2 YFQ|:l΁{f2$,DjR'IRUK.9m7nNn̽_HPo6Pf&s(;j~jנW%7Yf#cLb ^ k :1hh 9*yH<)%BlE P`'=p;; b}+LV_%f ݖ7#eMMޛ4QUց^`,v9vYG$pV -PƱzyqhG&}?ϧL&pcw6w}'LY{;8ֆ*s[ B ʦ >Le>]z,t2)N*&L(ܳA_gJpU|p>:aq7)bp1^\Gߝl`H~MZPSnE޵bnvS[A?> -0R͹+( OV?EN>M2mbVC ԧ]AH%thkBrtH \KhѮ B.V:;gKǏu34"*/w|ʽJaHoSB\~DNXv-_M=M+T6f+`u=%b {3Ndv6QLPMr<q )$y`Gvr{u⧓8 #-Dra{'})`.e.]گYoI@YEQR./]q$4Mizϊиk~;dԠ 'M'_@$mfQ:[zVB3F&4(M`"srF.Qc1۝Y<d_ Ls:?"n8%`P[,D{Ju.T9t/bj,YL4!f罐d:OELc-R]#7֪o,\a` 1CS3WSqہ*6rF^A>qWKgЍt%o d4 %D<Qdj>+R~$2a~и\_S|QCA3!f @,%4fٷ!Pxp項 8I8,oR~ M_-p`@PFn#eᒖj TlB 2&Bα4} bU CTqŁfEWtАDF4,(1J3Bd` )7uvGC[3й % ٗxg'_4Hh$I5v:Ȓ?Hֱ+-S?䗜P/Xc^+S}[%N N@,ķ3]R&btE]9qg>4i I5D>&A]/S{X2WbڢAM,IǚSkɇBRG8>+,nԮߣGZγRy9zeO+axIй) ڻq9p+[cV2@*;>ޭr ?TiQxrGoHj6bshh dSp w -f2.->rW|AjX*t]BMUhOLP997;Bهmv7jFȌ2fmӁ'V>Kۡuļf)cv6_P(vEZ^s,ɚ4N}P@`ˇŊAy= 3Ԛh@yCFXCM6 D<,'6AP8!fޙK,'K{DCb1jμx^>U)rzg%*LRe1=dTDc |IJ48vo׶a R}=7DEYT0}Tݨ=< OReyuejꂵjԖ]3pJhľy_gW*9xśtx_eB&T2 +&#:o,2p*; ${))'?1[^_b/gZH#YmX:__ Ɨ~[jiYJK1#pTȢT B⢬ <9N; pSO9:3y/b3?[T5+ѮǨDN*vT7֞-޿= f  כ%58FmIŝKy?߲fa/mkOEw^?/z8)_[MDS(Y[/!dza|9y$zm9JW&7ɤP3*>α)\j,O}2g֥B倁 :zܢѷrM[uH{Q,~+@JyfX".Uь  LwHCG vODGܟ|VtGxa<H`3_i@f}JwxXPOT:L <Ÿ`~a!RpFЎ66.hպV`&@Tڳ(W8~?tW}#b=}tT$|8zTYm bJ13:ϐ+r"v^ Kg}/Y,2S9|_?@QhAﬞjIovOɩ&ma^y' }Vжo~&w/!!:[ G-%~j $| "7cgBpPu@]罷&<'M. zwz:_vxg|D!U)0BR)y&v  ^~޲LZOQ3 1HW!_6X Sb]:ʯc Tat b&ʗ@R9{A'<&3=GSYj3ݦzxP5(ä{wikqt=.96d9۶jBV5͠ GDG/c ED0/GԷ ʊg6)Yc3c!j_ Vx ENyߢ gw@Gtl J,UBBu[>bUrBj-@/=I-b^):_2JQ{|֘q5Sp V蛲56JZM*w`ԍXd9eQMD ^^zӡx[~?: Phw;% B; i *~ߖnL2@/ 21}+q](UN-aw eLNm?ܻ|m$?S*0K]/' ;|#I3r&n "fE}Pu .SsxKZҮJ} QWvxgYTߧؤHfZ슔[/>*\cYE5ɥ|'K &wDȸjSdtJkޭގE١k8?5JnYU7԰bTDV%F1SΈ=pE^gmBS%ܵY; Ԡ&y j0ƙc׶}Sّst8l9!K:1%L^x(`ȗ~ykЃճK־witV fCh?(T#);vW9 ,-"+ƇK,$zImw6 y%<s\C06wƮJC׶RCծZ0͡Au9A1{oEVaR(%;HC!I"\e:Nқ.1DG頋O0XH08A٩y{Kf@'߅/ # Sl$$)swt"fZyiIs)@ ~g~451ֹG3ҫ"([:7N1]mCRj% dw泔ByR56U[pug{n P呒H<)SB:>~H;s* WY)̊a:z^2[ P![V$`Q+Rɟ>8ը٦^ PyOiCn`BsL]05BOnWƞh5KP9ĽİW37ɋ~ID~#[ +>Sְ\`qN ` Q<!NHVr$fI٦D ;u?5@ v | h %_u67tHmvuSNq2Do>0XK[}Te`n^[!z+a"f'6L擂Jb/}ej|R'z×5$+zc2Fܽhv޲aP~7=2@a㑄 >04ռ9 Cx Lzt^>8X @Ӫ_m2v לÐ7iIہE!Z)v=-cŪC7Zl26p6Sy\laiove5Xeh5BBSdFASl/Ύ!U*~.Kw^U-=>l;?e : *h[ ii9OfC~V(kPw1`I8ec0#ug?e- [ٻ]H>e\+Y!+R);," *F#:<,+=~n>bҞZ5j^r^LKA;ɒ3=.>9 |80sY=iWCJS#7 1 4GOSVt%e/Aİ W /ظ=g{7\;JSi@9va"BO^ҙDKl[ۂȬɲpI'JX)UnM1yDm"4ն̉6]5:̴YRgԬeQ|9С+6gzt/`DmzҪO5\ &Yb/Q{XH$Y>nN\_3O89cl.*֦!QdV0`V,F[E,42]¥\*k[2t{3ʤl9 ]]!C}@l(U gU%/YŦx8?Q(rT/hcmYҒNߜO1i|h)|cb?t9vLj T`D!'HȹKVnrOf.24e m2`Ɵ^-*ᛇ:U Fo2Bԕ rZL㛪7=qLR\G&[a#S(C:&k/J'BAH뵜zbk mWA)~uZ Ts/zElE-~CYC@%5HUg--<Ψ],L_0eyUOG֑cF)$Cbjr=wH"df]cgENWSW7?[=hLݠqP  e n ҳؤ*o(M! Q,w(xVnNzzp;'M$}=ѹZ$C*cWm@ʟXz .y`zߢ?R+j=]ܘ N}FGA]FFKoєa/sl.n<@EY4?3x^UX@jz_ HK!x" i#8)<1)nVV5<@N>\>}HĦ?)3ID]I44\-PKN,w,^2Fg'JtU{Ytmfu?>߲-:xk.顂.OM93әe+0^4?y_wǜ@46I[hG4,8KA ^(ZhwbV4EH:6lܷ#Z$\M1c $8R#N]V0nb&݋2+'5fM hsզ4^UVp? 8'cEU*s7sښLÊjӤ0FJ5ZӪ p+ĹjD~OEq9,!wsPK[[GHLE(jo9:b$L rm;ٮ썕@0.,F22d<{KWwR;)YjP?Ut?Gfއ@5*V/z#灢'DEnE=]Ҥx w}Xqx3$L9L0zKi?jj*nf7TE2yEXnk6Ƙar xPk9&@9l b~m{EdXw+*y?}Tг:Vag#8GzʦAc׃bK^ PDp%ڻ}`DKYf5e\S @;!vxb"ܸ٩0BoR>Fq?{``6=PK?EzRk_8AFcЭU1t.6qjט̂xXOJy!6GӮ}LYɄ>/emG6b<m.o/Dw׭AcܪnLL>d'us>ѕI"&x} %s/(ONǵ㪆ɖ {9P$".Yfj`5g*W=ӥF?cQ-Po'4k)Lx`CvXzE `qи5zj^ ZΤ>h z=j7Jgk+2a `7a'ʔ   '4bf u#*`QU+nmwl׺īD;|q<6YCVG#ʺ5e6WB 3nқ2\7i1!gKoZ.z8x#LlOk80*[hت!ۙjq0䛰8,cO'UbZUgR׿LM-gB[rtZi4?Hm_ yod@K1/߇*' ZG*sScrK%ppv&l$?lY P]YHTiO#M0BUԆ쇬Н7OfLzvhtUX# fa&v]2ܢ?R"(4j'rSemLs7єt·.lΑ>FGU÷o9K.8:B IOoÛvǬ+̢8zs F4DNR|:}|'ww\c VQsYv"Ine'Q{\ SxkoD,]g93TO#},!;coO;-c>̽ʞA蠶3Tk N43w uOlxlYiIDEPW[̄t}J x̴qTdԗ#޼bvNZ4"0-x 臓A46jAWY&s#L4OqUJ+ InaДx<3V~cx6I bv¤a˒&XF:`W5Z<-i{ga?ZX>`齄( =|UC'Ԅp,&rI ˛-xf* CwK|)w@1F•0eƦY)kcOCDap#n!,B:`%irZ¼9k|sc*)I О=xlnegۼSe1Y$A߁'ٌ"(%$W#= lA+jt/fsZRFP툟(6e|5+1A,,~3~aC"!\9KV\7rKS[ vFKnp.Jg)ItxYi=*AĝzzX+ JV6mZR*qe?C> /O(D8b&fVJ; "9F( ' 1^'Ƨ- ;ToP=J@3m2!7v{L1=M't?תp?9O6ˍ B؆ ][@gIt#٩+vȢ=NBƺQv5ca~sZe69qθn LRxkPh¯7 i5!P|Á]`<~+F#>Ͽ"Eػ,^m 5i"S&S^ޛ|N뛇̢}i)vc%~iGׂَi hE0ʎ=XMJ<3`dХ U 0he-L˶j~zF)8u#APUz[r^~%8>]/q/ M`4Wc Io`-yV¤ikԕ?S}}3с0g4"D{Mw険aRÈ}Cy͛Ui%~D!qt+4-~KTIƴ^֔--G9A7L΀~k)&V܇Z_ $ *nFDB߃߀0v0#`kpMt|' ֙r8|]n-@u֕|Ge%gQ0U V sT!"q4*gEq.'I_?>xK+8DqE4=[>?K}.yXWUb[Cv/{RK B$&D ̿q'VX%%"w )s}^]lj/UV(ņ)#! vcX*IÓ޶EX  XŜD\9 *f` tWn(<׿ajDL d& ͚keyK86ɪͧu+ڡ:fA~$ЬWb<4c nI,~w[Zt͆ s={ϫjL'Rϩ]rq+*S<ZI (.)`_2Q98(]?8u\lMzxm^hzJ1l 8̢u 7T1*J*r&Kc,[ UoU>@&4}i8cKF20#;c++*VuGR0]i ve̿][v|G]i[ V[^dfh╤f_ڡi6|_nU+ k[缟Yi7j\xo9 .طpm#kZ1!(,,IT S$moф麴Jf"Vb]W֡i1(s([+@)V;ɦ!h_ydb B;/i=Nl﷨1m;ުKIE+ƅ: fwZ5ֱ~o{s+q5Βũe(i=QK?&9+p:>j}{: k S eOUtr mJ]bƺV4DJ8QĦu'g֓ Y;G*b \u"CiqBR|&G+ $4zCЊ\s:yD.hKA0ǃsC6n1 rwo'v0kOC uw 2pj,xT>…ۿ?My Kt>$U`p#"gQ.V$B# [kt{d>|R#?,–d;ժDr%z8@),3<2zx%֨4D|.M"ǨOv鷴^-ё!`M3 "m"%AJ9>=IZGTS!X,`!bFBmE$WMyX1PP.>φ_6Տx*!ֹNj0P$@'nWp?(Ѐt^D Ѳ3vK rdD&z>UV򰃈XUMƒss~(f(U.z}z GATO`0 Y#!^?&οw~FՅ睥qaBQc/+_U,rm܆#N4lnTAr](=\q󗲛okccO9WkՑxKYG~YkM !@%ZqB̨~4=epG0GX#XYƽJ9K1aMV DL4 =du3 qƖ8q #Q4> F ]̄SN /8ÜG< gtvi"2{َKǖPi(`.7//L)Cq.pSo-vuD㹵R2xlhR۔r|2D@︔ي"?DE N!bڃ5 0BOiG?!^.{e~ TGPTے s#tƒ`'!d`)yiUIR5`u ZutebN ޤF V7mιjndC6K j@PҬ#-~_ ~*`)\fOO6gk^Oc]e;в zB jr"`G[] \?'@YћpmvQ؆FpJ%h#zh 2M1k㝜WN[ymqAh ℔ xe{S^exNuH5IarWsJn- '`K vQ=k\٢0&;JJڤ(O9lyԜ--^w(A7_;2.=X, ðޅs=#&rLi͟,;{A낛3n]ƙ:pVҞ %=y;VNB;;>wu[,H[+Ϛ2qq ְ\Q4թHP :xt[߁@C਷T^?TI(Tsmf@:v1{_kT X]o]BJL[eqts1 I5 Yk7%ViDJZ;r{O %S]zV:&/16 QS](s?"Is,`} 5P*(r0AlXKp3?::JC>\`y <EcScU\tA:Kk4<Po2M[^;B7Ni-ϋ%$"Lyz+@{q䘬J\0nrP?ոFB#ԝ ̔83*8߂eB[ӾVm H힗`coi\\Hg+"E!8)%jx='g:gcdn_kj }omTJ Gh&J~̨PB1(jr;l`MY? Z+A+9n :{B"1cz)A{@Zw3+m xpi,> Yϋ""qsw7~KFhfiU[ 6[N,[MTHd`wh+8xHSe@ۀgY/*- f%Fax|e={'ywaa&;xO=n*c-hZoLa)*Oꚛ 4ɭ|GֻDsK$Uez$pTG 6v?ٞ࢕fa=317gUmI*%m!;7i %8 iUNxni F;Ba!o7]2 LB%; Wδp=&碾Pl)W /{y3Er$q Y"dP_/9f w3/`[/(1tRA^zs+8jӸzh,#2{{E6.ľ%ux9ICgf/rZSnpm"t tVy-^b}U-Uc8w{vuH Y-Sz )9!ee^sS[Ӣ:Ffp }eY\/aC,n0B/2=t\K[;%44<>II5 %f ; %J=al=p 'Z]M1l >ZKC۠F5o Tڨg}kK.$V80ɣZqH)hZ`k?3(N JTw3 e6 u9]j59YfFytbf S1/*di(ZCxwLwnkP5`Y¢M0Eވ{-@YՁ ^9:@Jk^R(\S%JiSw̾*04.x6W1'-b 4U~U}FG]_X{X9]?uT:pd0J$kHͭ4hm+Ne,W}gjg' I wnxs#[nw/-䀂D Q+6'JT.HqWvڂ 鲽o c-N Lu9F4̜pؾ.΄I/w#.^Pb3[UGy+l VG.Q"õ6L (ɼtAL *Awc<Ũa.Xح;tџ3]P&bLy=Aݶ/ٽF5:ivȾ~[W%6A :`F6\N+޲"EH`Pv R7;63-pAcuGSAӶ}ã)@srMrqWc;̜=J hZFL^m?o~XԵ(F :xݥs4,9B KcĹ7qT:/0! +TKSdr HFH&}9d-X^K Α;`9c;#GɊkhw{T'{0 3TbGM!4>ۅd͛dtm2elrrj&'6\`ӇLdcq;M! 6~6԰3i]O*` X)ǵՌ$<0~ݻi֞5]U^p)_[Tf9zzu0*34Sf04!Dz Q6iCgL+R\}9괒Hf*fODJ5 G\6 iG}@a\.[͠ݰiW!c#wt@P5b}UckغEROJ&+T37"@+D-!+/%7&6ỨYզ=ˡMvQC}k`r}neo5 vT?gv&o Hи(]CG VhlCZ""wL-i Z||5Wdkf+0 [oŏY6GT#x ~HkJ#(wB@@ ^ASV f&߅ܡ}5-fu5~+M7ύ M E"UHE_4U6ȽMVA=3C1C_#JY+| e 8{R~p؝E/VRFlӌ>3JcNKu=TJ|f=Ow`!/(T 8]W3! &4f+YzI}(޼ad#H{~Q[_7s'b"s.mq*h`68ᶢ|=Vݱ+S([ߎN`<}fBJiMYLLZkQT׀$uۃBYYOUAz^sj Y"\C ,6yz\&G ȠA2cd^E,i?1"$"D[xǤ% ]eXz!ojozW03'ģ-s_XHa(?jQ]XpU>+5l,5RA}GG}B4"`RƸ)[gK)D [%= ]BiZ@qsax w+,2mP_Y+9h.q/ge!#M'lgrO}T.Ww\^c4+L3X|nZiU͵tP ШF[E\[i3-|{95 ՍqQ/ 'I?%$6IJ1E#Nq@c4UpqF1a@\es ]2Χ6ֵ xh0>fgFr6!!q&a赏dcx90T7KeITςl'~@lp0|jw{E] -. $=9QwQjKAWz1*_.ỦP=GOV$ĦJ՘qN2:R.N& go\~cq\=|:Am@=A5w>"\;;=F+dAXz(V~mb$:Z](yTn>crDH6Z?}K9u-!`=_ G:7hA<329%~5T;PPgS[moVV} Z' Gv݉//D3Gegڈ$ @>G(M:a{ ^"9J69 yj<Ҵ[Wh& N'X9TYޣ%917gbmHL8eYNcѫ;dBϋ[gw䫿z'Q梘=*<Y9MDu!WwZoOX^1]e/&~Y'%J6NO [W]/Ϟˌ(Rp3᩿;A7٬4u v;H2IgD'> Gœl$b@)h_@< v8 ;8xf&.3 F-I>S@V AB\>^p`oL}:A|\6xR~Buhd~_R7G ,c`{'0W1<q5v۬Gs!GR&|Pp]0,j+݇yP.(ljN f[[ g2`jvjxc9[zȀ}j6:SMTD\{ž`#k=zqnnڲ_cm7SŃr,iEaOo_*J܆tPzb΢|Ԓ-DB2q0"ld1he Vy~%W& d?RS2HlgC.>["1&PΫBMY|烜灖}Ҙi_~Yq@@Gu'ktt5ҺN[B:p>bܥ"?e0+^#pˮkcm}15_)b{A; %V&Tge%ln;N*!{@"JTǸT^~iR/Yf *݁TD}$df*zKv39B_3K:P"\?x\v.;y5ЕaJuĄ0EgoƉxBBz+1K 4C aV-?։{H?dCC3Ah2u28k=%M>4F{uOY$agDtZNf'2IEwhJѾ°!LS3I~id3PBSDP4w> VCJ0ט/f 08fNC7Kw&B'(lOL_<.B잴d#߻ea+m_{ OdfjH1uc㋌v9oj{joNЋ3U(,xohaiѢ^4cKHs-\ 8H"'T}IfdNYugH>y>|07]QOC #ԑ(=7BM6k f/%u7'h#U wr5 /2n.CTd_YtN9h5c^epHi{=kyNI{a4QPZN([z \FU14X7` V;_+>e:"2Xp[@(yZ|펦[=6MrԼ.+}@ȷAg<:RU@7\¥ƱяK_~G/{8-/z[./yWLΝ5&5zWj2_=Es$׷dUי7C~ғ)ڰDK ! ݨ0퉴oKEBc\R`OpnP]LnP:Љi6!0 jJ }xqŔٿu oYj~mLwFzucarZ|P$;3>ÔZԗns=vVg,5",!6Ȧ@V]"J{-[{X]u{*&nYw*w)?% /[V>,RMA,2a8^YbZAR %ן泀Z5-`R7hiy՟` GTE'E>NBomV^fG 7b{Ɯ>MoGYyd(G6> % n-vmw=%w]}4ZAάFvgWKjc<Q.}-&SƂ6{ );LH0M2 }- \ϝ_ݎCB*ZZ@[jE]t,WAu&mŞb(ȴ ̚ U hP˞04؃fa-v:aA4,N݋_fh?u# Y落9(ǟ_P0kRMxd WU$߮E(o~'l['!>,ў ? 0tݽ=5-m8<ӤVՓc)U[+鱙9˦kpP)l J#lӋMa[ 5^.陔0![n-h@@v|e3w(+۴e >'ޱx3u]߈Erd<6ScR>o`S J楇Vy,-)B0iCM0cMV?d+z[൉Mf1<MiIҦmЩ' ASz QTpo()ZAHM?< UfV8&R-zb!ql~g]V3%l&=X:]Sj{I )3 .\7F G%H1Y=ՑT &񵏦'-Vwi(YNxdOW' Ls #E?禮IJ QM°Quʻӵ"saV勞ϹG=]U0@^]{ az !1>\Iqʝk 3]ZcŇդ"$q+evJ/!'M:0Þfk]MO䐢Nz`%%TMsfUIo ;S%?z-%I󘭹2p$BhA"lhe1]Bvw1ZF6Qc7>RG@g\M[֫(IW_?Xu/ (BN=P<5asN!l75$'Y ˇya ,.ᷫ0K$)rnvavu_]Q`Sl m1#j ;jRR'U22 ۚ- p5) .,s̈jLΗ@@̹#ˑ~Ł FOt]w*/Ձb Js/ & ccQ3ݏ m9H 5u8f_+y\I4\q >ИShmįЬh0ޘ , >jW>u x%4Z658p9-{)g@6wٳԎnjF@kԊ33vĺr )7Tx"38ggIB~pb(Sf߾r)-ÒMa3NSHt6W}.0g}fN_JMu~pӘ\#PB'7o7Cv"wy~@$@tTKT R^i$ m6? |^sS[RHW~Çg)s6-%"^;X.?=J0{Kޟ*QjZls2'3* ÖrQu KA=9eJ#1wn>K&e'@%zEcB!2?7JG-' @^$.4b8=PfΘQQo62hO{#QH^hQ%lϥ^6[:6Tfpa /e>^.J@ x n,.R]*Q15}}qŃF^Ewl:T[뚠%}R`Qς̸gs8ʺ{_>T>UVTXqÊjŃ>IY 8VF{nZ2ڌF~?H5Ee2ꦞͥc(|ƺ3(ὧ=lcGh 4@edHLJU_wW{mEHd,~0N.z}}~:J t? ޕD$m!Z%=T^^p7}^AƒE<݅,Wpk>m^Qa$aEObKPˈ__'eӘގJ6RIrjN]l"m$E*&z޺pqN(.t~]J4b!1YE7,N7-L9o T^~źT] UL%Y:krza~^+S #My9T|{̐fſO!8C7W9-w8=gd\sGE[;EAXϊ.}, ͵+NyXx236^b]pYE&ONn.o΄GjyfA-)Mύ)QͭV J (:h#U>6"D.LϕA%jSfJ~$*qNXV"V:V,t5>7YU~,7 ]V]r$fWB< LêϫRnJCs`ҽhS)O*؅nvw')[3Cz9Az19JOZ/*q4cKknx9w! ]G! m~}p2lCDhGVM;-LT0.FΨq+C/pQZnZ 7C^8}UI|MK6?O)<}r{[ X 5koqM:q{vݐOz's>Dq0.p| ذM?C")서5 [AOx-e6k@FEYN%OFk?xuÃ;'ouDCApQ/`;{ ^c@:](ꔂFpO^x^Ǜ26pTN(hZ d6J?{j{\:kG]X6lp;,n?eLH Wtu8"K?P'3/>R5͋ F#'akE':Wd@N<4{>-7IzVl{ bVUߡH"oc *<2Q! Z򛈢!튓~ii-W"J EθW,%)UBG#l^6 ԿQ܊/vcYrf#szu/zifO˕@a%Je웤銉*Úϔ+fOGV3i!s6fVmH@"]N.GU ȠwӦԸc8:rEФ7׀HßKGȦ^5 S<: EITw097a >/Puك .;Fq hh]֯m=LP8A͂P tuBծ`Lh͏뼫R X6IF-lɅKAZ_#_C(IfNB9>wt[-ړN#;y-I9d]yqGL:ml^KqlS Eo8%簸"wFnN#C=qYڌ==G(sNNu!cx$)[:1 ":ҍ.SSP4A$v48)h C&: nR~^Vio4pILF =VM`Z'bi2^9Җi+vfɣ?I왊pj6V:[D[BCe?DP'>)VRTY3IeۃbBOd)OoF% ID)A{FaEN'6*bv:v o=VD!:[it[^k@$e N5Du>jb|uzn\]H6I2B 7 8t..~-M2o_f~) 3bk9t|OUΛH2FQHjJqXi{[I~E"'3rr~)vjh. }!2UH5=%8=ڱZlҟA;wk$~ x{ >ݫ`dVJtl U4a41.E 94&A|fV*c ds/=,@GE+*EG*VKE;k{vY?Ix.etRFg {q,M{`wsYuzZ7|F둎i|+;&^rț+tֹFx)&n(D )^K) LN^A׮qk]6D|-4 HP(*0;҇u\QYzaVcΝ%uϒA}iK"p.͒x=JNMcS6^/XW]b=RVa Vn؉Qj ,>e(~!_;^s^ik0UL+5No8 ۹p̿0Cx æL ήej+CObLq͉ CN(`t;`B&eNje쿕z{_[aٚRgISaM/pǿlZbٮ:o&ʼnMl=;dLZ9+6{;ڇ]`LVqB2C$'C,N-锽lEW.'CN⚘RBkB&*a ˞<+DFڶBH . R3:trXE:TdYzEPvL zxbgUY$`t*xZMbQ~3dua۩eBԊP?3_X\kr_ܸ=)2Vٍf2a)2NK09b|NL 2 kFNL̠C(AU5+;〸!r g4}| I7Lztn܃fՏ`5sJTlN/;׊3? F&GDUy!`0!u^\Y$Up<蛡<}̶ k!^Sٶ4}0A$%V#IY=ʓqټ Cl?a B TMAK 9FACOE0Wl=6]XBgɒI2UB"B ~Y\'lb2pJp8vs]dqIr֘7.1Ȭ! #bCG9\ց @AŝoYYJzHKB3Kr*Oj:}rs }5&!yU>-'B»Xywy@zE0lk:yq7-c&=~9ٮug+Hjf:wTN^ /&]'!8#"'p){aی+tr\tT-eFVU~c}Qk8\ xqe ~%ZQ0 ,tzJ`d:h[{ e(:]jsdPSɜ[^R4x£}G[L6+I%7Uyl0-Ŋ]ڬUOO'dѿ=|! CӚ~1wNd-T5~ Y|y;]!s+ܼjZl'[fUb w3Mn4S&P[U^P)2 F\Z C˟6uM7BՁ\xq\jZ@U"iJeGVNg< ,3T"HAlNj9bלDRޯ ہ<"JtAbb!SƢgz6$:͘ 2#sf$JB!` tn Oa^ԲqvAk1`ȷs{(!rbjyq=R+3Pa{06?o-ң/ ;#~)!LJJz^1Ől8fԱ&̯ ZgV˜&ڔTHY=&g-k%l"U0qlKx XD9ڨ8vEpͧ{ |}[󋞠:M(oDƑHt\ӅJ_/ cC1MW@=gH#Of#*7Տ {S=&Ie.`f3F9fd[e冮Նl[5͕!8B_ה+rJ&EY3At=o;J(40pd7_ ayB,Z<ڝ.d8Т+Sm|r$U wFm>vϚ _!գE÷|5RXǬo#ܒq=xȎb=4&҇uػs_D'!*ojP,ԬqB˶Lq002dHF:<"H2SG\@8iFtNb'b2Օs8Mwa^=ov$(LJQprx@ r ޅd;6񯯾w jsp/#^sv+G%0nF+9'kx_!b65ɡ\Fs;Љ`Pst%5Ջٗs-Mƽg?ulΥvȄCE}ЀR,>6 Q[0n]^*X+lwcmE~t/* ! 7,~A/$5 a}7ʮ]eX"V~2zC+ԶHM͆<ޜUPP1(b >r1jt_јHUk#B՞ft&V}CgNnq0}3ĵPǷ9M0CzQw;J]һj']0 w؁n-G)\$tv;q? *$Gdٷ =dCCBś#NgH9!S/(2hte+ITRj^*DsnTwMYrH3vٳb&3RPJ!vn11-p)ʜi(wNު?v:E_Y%4Ъǖ;D붸Ze·.X=cVi9D,S3H]$/iȴM =Ab!9.n58O%B/Ni!}A{ڌ>MaYq*@ \e{v9MK+QmOpW;pQ֣;Fz9oi5_#a5*e?Yc&+wCdWR(QƭcDR|F*;},SyyKiH.n |n;MCb濱l4TriF*N>֌$UsvNm>+׊VrcrhR Dǰ,_-ВT4X+~J?zHԵOuS+db\xT3O'm?}$З7v'RXc܊d #"ar IA_-X5n8CSp=a!=<O<ϸx-F(aHv?/^GhvMaO]f G_Kf!jpPHe5 4vMzvwE'ŘZMƅv)2UkrH;G^J9ʍ䅟""hmt/x WOL/"\ )MMU"$4G@)7NZc)!S|2ɀ yj:a Eec;U(xi5qLI)VA-c/P>&=!qZKCot˝fx/~`S+4E_wB;^!~dn?ǟlq%ѼF"ZNYgK6k:MmRο ., BHȋyxs:W)T>FHJ*LX=zB|Bmy`qjH}<{G_Cӫ,|E8V1Xeu{2ېc\0|ɫ`Zp㓈2:FRnS&5N=!d$L +yy(VAy7T oc%,+{ĐCjjāD˟44}s9A(IZqӷ]Mt* unmDQwC!Y)LM2p44pKħW~_P/#A'Mv،ʿ#y-PxvjJ7.IV>7żi~7 =_^Uձ\̝mWtI,!TfMy|ߡ=ZNRIn烞h<Es%`hH1B Ke &Ƈ` si+p:4u8kCvx=VP -,f9h)D =#Kvbu-Vd7sÖmgaԩ[ *!Gpg.=^! 2"@6,Y;1\faAB1PLfl4]9fM? 5A}䃍'`5h Tx%ɳЛoT#b@8brDnaU2FvV n?)'HZA -<&e, ``Mea9E3Wn 6*eR+6a$Ev~̟ Ƣ2~B#61pN{ܕ'_vw?({<ȸ>mBL>-ou47=msIVFNJ"D][9Œd~ϸO I:mnDͬfrE22lj?$KGg%. ϼʗx|:j(aBnՈDg 7~gJG,_2( ,V\ T.6Ṵ]YL$sՙ4#D\)5 ޴󁜽[;vʴ.O?'UuCY1 ^Rόhb鯦33MUKyv`7ne˽ٝgW{ h䨙 흎8fD<;yؿ2jxXe-w"13A?Y6*x?]nHZmWƳN_xv2uߢfWgIl`eoCT,G¨4 'dgl1YL-L>YѭiPaNDky#76B/x 6%$uJfe';#BQbn5\^8X㛶 :4 lV]?+$e'nJ$P(RHu$!BƳw WL֙AD!6@`/VoPefbe?T5r]V I o祼YqE#$wt*yBX  Fifƚ,'x/h ]Pr'Ql$ΡUѥsoNDQ9l)EZ6lˍ* g QF@/nH eIɄto#J;6LYjerQas &F\hL>3pB+ы.}LK+P4beb<|*~DQj7Ŏ6C.фd<%O0}ŜQ\xXt9 ◷s/c'g_)XzV&$P. O^[jKBB:MzޘF>*5[N;3ȩaۀh5D1o:Bu%+'D`1KBםjt^\ } cvUg\Oݢ(?5=UNlܿka`DS Mq\ ,Kv?f?Ҕ[ 2Z Acᠬ͎e"1d(C%N__o ZB2*-94/2 $k<_'˾,VD o3_7]9ķH߀e)!6s.vCK R(9(K㦟lW4|CutH=6!>ϭX`<ĦF&}Q.YӺ6T+MC&,˨ G |_qvXR$<ŵM^EQx^+r(*O5TvD~ci{z>[I# DAKoRwMH^=^ݕY\4Xn9G %^s֘dNV]Zht)-\P_^IhQ8Q€6/oH;#~ihJGwhŸuҝ@Wq:wn {Jjx7렀Mb ]d'bo. 4Po'Cӣ7y|{(;|_"`#[;5;\/m\tԝ2n;ҎJ?V0uѐlmG~"m!1i<QP:pL5aL3z^`NJ57H ܫJ06i]2AA7ub,fK-8/u]tɼ"ɏ3%^W8xXk { RK( ͌M͍12?چ jT؀krU +)xnIvH +9q$<0[Ŀ@GtZP%%DG8D78{ >տI9_IfHӀ&aA& ٲC^4Fz9._sY9}ֺravn,ϯ n^P?,2OrǺIDANn`!8cwkiϹ+:u~xNTtF;>1ڶBgtt ?r(D)5MV^klqM.+SW0QXE)ꛮsH{C)JdIT -2#Zsn2ȻV-#5\toÁx&d6 HӅI"[+eA⯢X]oƗ[+zMK9wkP8JFӚģ͋WvV*^:%GM4 ڂ/s`cXq+EN m4a_`wL*V-&.m\LLӥtLKl<$AknzJB$B_^ꢼB{z1D 7a+D4aq@#0;Q0$rfs,\U\^-3?JRpsj$f::A'j'@_Ѣ<2WnʦAre//a-,JtI,goGKQTNӰDyPxZ:A5,×6ߋUYm7 .aQgDy͢$,pJ7e,WkaZe0Q+O1 Վxo'ޓ`cr[ NU%^_|Z"M0H50pK;ܑGwU+ƛ2Z;gamGGx3N b$-̓6E 7'8:\g&gJ%5Ϡf[\㉪fe0rQ\Bv0.Ƽ~YډАq. F,BSm"%.Α褿AF5mUA\8oR(V\I{NJ/VÉG, YnϨZ@?mdADEUGQ1TH<;׉$áì!]P0NcTZɷ1 1G5gWg{/ʇWm﯎T 6zG!jkw&źVIҍS4 }+5WY<k镅k$wtrRMm1uYIL᝔nZBQA̿ly7D2iH&Q&ń4|cx;j^GAuh\fNɽtHSynsj^೛SRRo_2nn;|Ufn<uF bS Z*Z 7 ;w-|,pq^|ǿZ05XJ᠗&+*]BvM-(!\y>Yt;#JjqBcXg^gI9qj a&*-moPjM1"Yb-ygs V U9w&#><@Jz{)UIm$Sq+< 5 %"?9>b|O=xYHF-fd_ft/6o" Z9vOX[g)DD jb1Ɗ>&hu5]DI;e:B PBY4c&[o~&.2Gf33dA^/:% sma~̮4 p|j]Ϻ 8pw#h72L\"[CT- mEN QYQNwg=OVo:/`Ԑ,p8${e(w2aTǞe!Ed+F.H%~eJi\܅Q܋OqFr㔺~3QhU4X%6bgDrnJ_W&[; j~HW$q\,p]C@o-ӗ{6͇/W$ןK ze,\Fd}xI,Q]$yXd7<9O)$Q 4dC0٨xMc1"6h.ݶRw ]zXʩ,$Qv\A{[<\o΁/$R;z+V6S[։:TTox4ȴeO%`aFc&5 9 ԑ]n슸y $UOF6}d0@r֊VEgAl#~ӫVk)rXÒzF<~ 8bצ= fl={v*Q7 _$D3 r1H~;9F} B3r~7#DLhı5vѰyIy$r  A,r5jbwរ RHT+# YUaVci<i vfHU[⵨dʒ]W1Nҽ{#ƬD(&C7pl,WjI4 M*.pC'|E /P`RT8UU-O;ޞn6RxSFL8 >`p2SEsߠ_H }]ˇc.bs ݿG[ QO1,-]4G g.{;+ C/.Քt4FzO0:&L!1U5>L*O^xLV!u;RL*ݮolEb?atͣIWjGHmjD0jAqҞ[>YJהdWzBd(Zf.v?\RťCX9nvg* ;n( CK% a%-ǬqAX)+2 ?.||r%Bz3{φUn#I 98;7Acaو-NEfS)1z;X*Ax{o]8gW.[Msf^Ϋb]$u?/$ AqK/\Y~2+ҏC@O\lqo Co:ӟi/{PrEM@?rI]ivx!:L'/b@ʗB[:oYLءM򑺿 (PP& S^Q"Yi}%8Y4!Yvf⤁3Q?к" vB7a!p|1]e`f$L &uhio^R+wUϙc@컼e3~>PSЃyy#E5fӡ)gU%Ch˝1z7E >`U- <$ͰozE/EÜBlʴjZP$fI7~0[v+ݽgtOE4gKGM @jUŊ)=%,S;O?4BFTzƦ o0my0\+@07OS <9Ui4<92/=U`uWG;. ߻ t﹯UȮO?7Olt~' Ec:#m򝌩"9cRXbͼ}F]ZwFM!N-%5-BgFsE^--f!-c^Gs,RK[.?D83W2|=m1X{:ޤ6pН[m_J3D\$԰ aE9V$ ('j!"V[Pp*h.)Q1wkM:{ni[ [+&n߅؇ΥI&V[WfOR 2>PZgꋘ<@~o%2l]؛^RPVg5ƊEIB\ E5M}8:a8~/oˏ6GCRH/کA,O9t]&H(OL/UާW:0TV S0'K$tA9&^-:w2Pole])! iĉcX'%W$O5oO{*Hzm,X5=OFr퐺' wik `Ij{q5V_WڸVdmIM0{hxj7'sMhAiUGU>`l@~Ey+)9(!U0`vtI_^ A6e 66%J]ʩ$"<&CC3NSj{8YZ.H( H>}9- 8T īɉx~=|VGiXGcQʤa k*R[0I: %cRa}˻ ?$)uZmZS*8_::rQRnP.!Xm=">`S\DG))&*SEEq넚 't9$]lS8r(vDnבR,\F0 a)*)"˗~@ dTGs-}T t1I}LX|qL9T,1釩1,,Hgz y{ǸqJ Mw6Y)]ک3ġQ!tZw[>iSw9F],H{wӃ2vҸQ6f۹tOC#&ŪԫR#$vLH83gSX+GB>l 4l|ŝL C;g&8ɆNç6"jCҨ>YVvrUn~Ȁ=`ZT/%5 2kvQ]Ÿ9"z~Ftrjvm08gxLŶE3TNAϢ2bvD$r;'$YjRU?$RX s8`` \ s*Bք?^ك@ ebQ͢W.v*XX4Q^prbc?׺p /)n.M\9y@M_$6AZ=k(\"# cIN_\wD~Z!p"(4S@ޒAɳ:0qW-4I- ;ł(5-AA#;r1~DKXlJ+:L8J B}$('q'U,0LX{xlu0x-As[3cB&f5y=?.;$N=yRM< _fUj|Fr̿߮WNeo3 U$cT2OB"N?,G.VK  zuZ74Bu\ޒA( sئOŸ(:}r{cm#v_snP00$Oԕ4^یSؤټ8ZP_;_D  valmWZBi3&?t qtn2)Ax$fgPAPdNtU@85᪚._c)2d$2pVDF~_ b&ۙkǟ %)EvrIg}ZA-)^j6]FƟ."h 4Ny1^+$t}}YL}KUfyWbHCIꞗd'$3b\RXW V*  d_]>h:Nɸ8"=rI~X{Q'Yl *b)ڢTehQk5MR&Y%b'1+‚H }dHA!2u3T~V90a-Uy2vKf>\sW ͐đDKk|Y/.vB Hi-KL\ʶfᝳ$nxkmDrFY(:\k,Zݱޕ•JR&s*u1Tg[hũ=3hvyO8m* &KR} >-3Ak<qA%kcY|="ӬRL5pB)JrY #V)1[| p&)ڂ)Wbs]Ͻ0U,e2*Ƨ{0HNeFjn ]&7aq{n\,qwY2Ǻ)Ħz gLaKZ!Z9Q{z$8]>͙u$uP7WN4 ޝY/HV6/}ύ=V6<3;+vBt߂ܴ%{0g?nW5ۙg=eܨ (LP=mi?ǽaF5,$Di$G|ꑓȫJ lqLHprh\ 8χb %b=@V1*_-<,a)UE=DNu5MQ%*f48|NQcy8}Ѝs^Ti5#9EM5Ś =1f{)տ5+dXi8 FXۢ[0;|;1w-r3+Ң,[ra(OU^||#%\̹P@2DQSLn5F9\95nfh^'+7EWGnPnГef{I>>0z5Z/²0^ٹ?2D 9<9e~j`!15iadϝވZWF=:M+$1iĠFxߛIH]:g!t j3 !3a\Ӗ|Vk \։9@5Z\jކ;$AD9P}SZc5plor_}LroW?-RcHGG#Cc_QX-x@fAXH\,ՙWYזl8LC;c. x xٶt(糸wK0gpN}횃vNQx sa>GV4[ci ~1]ꆫ1nKHn7ZiZ~3祺@0>tW% f!Q(w8O`. n[Ꝁբ>V}P=Աj75c?ݛeyIހ)@:j3:p{Ծ ݃ۥp,32"!"&c,U~5Ru;S)8Z)9Uqm#]+,%j4a'=F7 U(OSeb#d`[Xz¾Q|WU("S=>W%[f:Hn˔)_ xjfChgIfƇE2FBQy [ Llo&`\Q G&E43!}~9fT z/k.adi, żCɬu7A y+h bl,+z?uLCɞwV a*=72wiU!qW;RL~mmU珴FZvNV#7ƜͭݒʛhkØ3 ~'ɴBL3lӢNvο$"+Pbf,ׂh/3'] 'GDR#M ɦAQ[sPaPH?p%~.;p\WnR}|ݶ)NlbF V0 -V^Ac|c,О_ѮGXqq9;j9moB^sïsa 8n!N ]nYJr}"]֚obˌ1yFk>cu޲5, "rRHMZfᜑ-LOW{}Yr{D̀V%#*h]/n2zo-؊{qs9ԪnUuL-í}|I` '}]jŠm!K$46q|vn,Ɇ՜ V)ԈX`j<TY? ??7 'Dl"T&r>C9wA͜[+ǎ=]40Oe)E#?it\XLnb \ Q{3n숉ϛycA?5{ ?s \H6Pl^ΆP&]gI,^C0RWށAg7$t. ;^ Xըξhv0NF&Van+}Nc𐸬<V1#'!}Ff,Z:ٍ,<(|;auS@d&He )ek(wvIt?x҄z,3Ǖ]so]\ YU@ʓN.WO{Fd;"DǮThpFR C >UL\ ]JtWo}i*J 2'B}zCn [i"C:!&@>Zda<$,2SiCǵ6 õZM*HKi j~b+9"]0ëݞ0BżD|S]Ya]2=Rӏ:T"cp"Pbu6DЁ8ebCe:ȣv~>7OsrxT^;u긐]n!.Gh}Hkn3fR_㪥QQI8|*&6ҩGlyDvz#,!=7 S42!ቦI)zB%xh1ҳ4_i : ?pMsgiJIG'і @X [a lupD`ݴ>ƒCrǩY?ŐdU3'I355. B "0(Զz =x{f1Di DE4\'7܀7T+ ֕4|tb0̖0sa\LF3&N~;,J2Y[` Ï>(#WPT }ܨrTSl/!~% ^x$t(zo6V^4bs 'ZaWgͻț[䩔H0;Jk=茴(}?|dsO0*/wBaz5_tl\\7Se7j!:2Eƒt^Y}< .BބOBXK![񥿿oɀVe(MnQobDm$ū!ICR r9$ԟL6*`ՠ5lf#o0s{+@ \ڮ|HG_8WV'1W# PnSNoS?iq8pJeP,?B,[ s\ied}J ?ϴZI3}5>*O3H9Gkg"zkFZ,j ɆAOMYD8 N"79|1?0g + 7!gք Zb(Oo ]r2 i_پ\?gӛ0B`<",2q dq`o[$n#8O,~Eg)nZ`De?-%{]W ÁOEl2̔(]eTi%Xu83gaI]6D"|6&_wֻOzZA/Q? ):1 rHBYj_}]X:F*MͺuK}K% |&0,I]u+=kX}, VuzL=Uv2azYb3ۈ5( 5r#R./̂9UիOSBfHk 1vvSd&!Nq*gR>  Hjܝ\UiWNJ36{CuJb+Pӆmva#K3 X,XLS>lcդQVQż*,.|aFRK/vT%@Hh0SeVu!gtx2wf '<~o%QͻA~!; S!7Qe﹥>"،[3'u_ |Ym _X (c`Yι0sBaz<- OYHg.Kyꗦg<.L Kw|0O\8Y8s`Z;w)cǚaA>46v~oM`"y llDDd n:xTn\9i 7 f'ΕRc/Vf0/57@Ű.IP)q@ݽ,:U0*[9C iheV_xmG0s6Fz.W?a&4}scʅ(ze+k5AKU0ij|TtxF` B9]48>y&iϊ'#!t'w8nPFۢ:?$t |׾~VQ$& pWіb{X;TC@̌gi neVJ$>UyT :j˹7ê&SOu6z!]͎9dm*.gTU`kuB&Cf\Lv)6/5d +B{w(lga֊uo_ T#P,71<N%="@^ EҮĆkV{iXR-T,e~B؎h l!TG6ZDɴGq*X1$ φZe!թ:Hr*XY+JLj>ӧ,<Ъ(!90j%NlgN:M=4^Lb0!29K檇`FSB._]D+*EW%fy8#5<;RLW8e!הClx-LƅG@j'xYGA6n$caNyxB̼r{ v ΃ʱ K/%(eõe/O| ꔗemnucORǷu!@>2_k/j!>%9F Vi*ZSXva#E:y#_͎,(SK3g174| b0e<)2J?e ̹v7(2j˕w$W'3ºʜ)EFWme/EO_heYIW&gn\VA?DP%I,ܥE!N4zf]FHڰL 9L Z@DʮwpS~3:b]*K-(pvE̠1%%msá8 cPRN+9&ݡ#87hz{pFG d7DNr?njT<7lF%%~gNsq9n*Co٨DiY䀛F>9B5lIWP4`D%U!= UDa.l0:!vNZ7 V6hoe~~QJf 8(ԝ3ٴPN"`c(89 #.>0BFx?kIK >h9uh0CV D$cw)Ά3N3t _?)4W+}a{a\a.c@]; r4č#U$s2׸Z@(᭶-oI~u\s:c9_iiKaQ,hTMĠ3Hi!H/~"vypPC&lU+wN1ſqX" wZ"dmς F)zSB7kZJ|\B'WiB:9[ikX?*o_zT_EgPVOpfH?mēglBZC~n[N(E$jʳȝ: *Cs|@i`]Y% <rvSg>zzBDNX"HtGu i8H)Ͻ0r<}ӒK-3՘,U3CwB)T];M+{v./Q#i/. ?$DsoM \I2<7Tss&i,af7&-v| m)Y3A,Z?Kpl1TFyB;,&g h4~>~%a׫'87leC#. W1$g~g|Fu2[gy0԰qBA#n> PQW]Mo{̟3Ck>@;+J7Vl^\JS$^QW|jUTy +gm󞂜y H 9:&"23e~@p(ַS'+h;4)G%gјc0!AeXq%X~ѯ ~~0icS\:u/yyo;M{gG_IzN{7jq.A MY=Y6MkR 7B|2k%P w^,0hu27E%_ѻSvl\VP6KQͨ 3*+cdZh%ĸ`l<{׎=pn x1Hϒ|~ڍuRg+"8&\lQr ~ 3bVEs v#-A|]G_깉ʩhG45DBq˃̋Bх*ugt4q_۹='!022a{vŎv3,e!iSO;C>Zk6mD8;CC$F% q+L9`1a67`ku%g?eO Vj2IΫc K8q/4xj5^H%~¥Y i&Y|C)ҁ kV S3U(Ba(ևu O錤[8>$a3+*;+ m$88$hPz\koV܇`Q7=J3Y3?sY`å\Ae",F M -k/;'$7'?mT?YJER-@pR9'kI.`or) 9j<8VR2Y`; ZJN80Gŕ^Qw:i9:cjO<.68m"rfڜ|H푔SefXwvZ \}v*`MsDiK{cmJ)->E`'5<>psĊ8Q) _4߆L)mqg<ɲb  ?n~NӖcHIEE8̤e )q<%lA:? t X7@PuQǻ BjO-;wO3Uy9y+fʆXw 05yLφItT|< _+N~5j9s)Ȃ)vqLЖ%=&{SRUleJW3C *^f8m`+M1pr=K}sHļNt>7i*bW] 9 H)Or5`ӎUQ`2tcr2HO~̖Bc$>|ÃCq n1cB=pQ/5k֛'e7i,JC50Lg[< oE;²Iwc{"h_Iz?t.^0sl&?V+4`+pEs.n2懆o.l_')T`{u}'V^gҳT{}1$m7oF!gM܉@NWa>*9 W(3aX$~1o]o{֭M> yk4I&jģe6G-QfV-z!nB~;A,(DF ޳4և~@k | +owhDܜ쒬$3UG9JĝoMCyҧK)<Ƚ[Yhug zY-ê$oF|WsxzcA[?\jg<'ZZڱAգnb 0 $ "0O1KfeܘAvnF-FUz`O&T1UtI:Ko'pvu +vXgM,j^cj5AXr]4o`b82u">= wi' ǎݳ3 tG]3V6ԄkG€ef;ûr:FiuG22r(49}2ZYl2}=7oz NlsH0rA3ODKw4C%$K f6ȴb/"XzsIk(UFZ| /,++ਡ8VpCZ8 d4a/ A&E_+J٠ )~Byz-W>/5@XlC#Z͔[lv](漢x Uz)[sL (*5$ ݡ <51Xݕ3aXj{`2%P;ICX}h q|?QGS[/+LcfgNTa|׺Oe߿!MT};\8Qk]U)nّ0942FEfuxě[{o^'bVGoj.t2kHjDjS=FZp,[cuo8|$'S^Dȿ|!qJw:Enwa[%gQ6"pM,Dl) lVV=! ؜fVf"CBz|"ZPg NxyVqwQ", *fydw᠟?y 񟩩Y_D7YӻuJ3?*OƧy!!G]?V B;\,z|?$ApL> x[,GJUdg!w¸Yd(eK!&{/ouE2ЩD!iH,smcM f{#,ҳrp쯁2{&xNW/VOtWsSgLwRa,ZO %Ԯ6-6Z(uvVv^D+/RΟOU%X?C瀡O̖/P" ,ڵ-1h5M+ A N|Hڠ־"P#J kN[y^DcQ`؏$uH!)O{~]'_wͺa-wr4N_N |=zsHvg>aÛa8EpȓsXl8oQQ1Doc,*GÌraX9Zk]6̊9bacR̡`'{)Մ۳" ;u"',\9-38ܽjas1[X]@eU"гa }kgPLzz;|`gGTW06':%Q\# ou[' C4V,mtkmV`E{#X@o_$'Z;xTOaҾL"&&)St5':-O\cvOW=}[`pj:w)"5%h68rM/O6GLc.~Y0%A#hҊTe_򁶽tMK^ԍ>Es6\O2_[мcUH EyZ]թʨiE ܱ o:o# $]K2ˣ1RXv^[졈$ #jŔӓS.h-d+ȲΞ `V7.B^dOE<2(y4EA @vojÿrgHbl LU]1\$GKoDE9XxHMJQ;( 7r qO$J1t~Dm_:=wl[0YmHw|$8!Z~rZgs].)',wZٶ\4B]U1iQ`ju @]a\VӫytP^t.^mb( |,RcT  񌽇1-ˆ?ڸBs,&:\5jpL!K/@}$$6p-iQ1U@r K{ˢr-t?˒SeP$ X@*UF7 C!ԜtsivAU93M-k:VFȉ*gWM7Ը]O AT5zlgL-T[2|_sD/a#&u3#?lRl8G2z>Bm]th+H Y!Ү;'! 9jgΈn^s+8saA҇[[קG64ֿM=7ݨɊ(PRD2jSW#k"s6Kc 袈^V:Hʵ[~o4.Tg'w #(Cm?~_*G", eސ٫Pk N8yM+Yl<9_W)7ٴnW҈7ec`BbRe?7P 'ȲwZ|c S? 5–}P/ )OO$5 ƽ5+-ڏ\CF" ػtA#BcڜL|f,#BTWtGJ"lS5I0"3V q8dH7$=ΰLu*W{ގMi{肞VϜ+62&pb' mXrsun/$d_rҡɂ3'N*1{E:tLk8 FGypҰ3f u=f:WZSnA|0H(eY%(ڂgAG>ò6D6| .pk`-I 8EЬΌEtĸ+,<{).H`X&o3Pcp:A$WC/Z)Jlp,{AV_\": ,zImafzu^kAwv l)࢑kxnd`VB@AJ6Nh M/IH6vUܢ^%76 &Qf;ϻÐO&06z0\.'%~ϧ40X2Mg8p/OׇTz5L^u;Fr`vC3}Mu,-3HH}՟#CmFَ#;%"GbCZ5=.LR>{뾰d1!ztO̲=YR'pYuEe2s;e\ȥtKJdQo{O+j 4zn `KgGOpcu'ڍX*'v 2f8Z,v(%YoR{'M^|ŗWYD(хv|Wk?{Ű9ZW`d j83V`6bw-`E-MWU5>ț^ɡe?c=^6, g,`- @GM{lM97.'+wثJoH"2K}HkO۳q`ܵvޗ~GS>YeG11yLb=tډF+"{x:ΐOyh/921"WTq%~Al.w3Թ黃?DqeI *jsܮpaeLO\9n"O641İ9uYfSXq>oGw!XE`JU'"ʩy@}e%.X!S5VoQU3cN^Ea:=n8Äs?]VV!J)Qu:wh̚a [?M.LuZaUgp< J]wo#/!nQWUEa%VnIjXa[2zRҧKV$&IGw0bw <>EOeOy<J._SGU/7^e)]9f֥͂+/f>4)|7 B1d}ȼ/>a5t p& !؃#(),?tRoK:Y=Sܑb0|gHW|oroR/0+oE`i" BEF "R:E?̾Y\l4˭y"[ ح=`5.b f/`|Bݱ``Ȳ|Qd7Cڮ]8l)V߮stیW^ Y,G\uKn7z.-G߫n#3N#1; D*C ):q(ZOU|}ػ/ +W# L| K:g*?ĠPj,XTrw"~1@=!7a.Z:0j5} ^7^3j%} taNw_a!YDyr&I5H 2 Fƅل%λm2<8Eywlm p5g?!Rؤm Vec(阩DgY^7 79 . Y@^&b ]y&)7cwu9Pt/ߝ QqDeXZϻdc.W ]. Çx>5w3XZk[wB<[ 7$U/k!0a!<״Dy:tO娌KFȑ8TcwK .̺1ݞ b1eΙHUI@1{4x,c^\q6r(iaUäP )[FSzͫng*-yd0k9Ig\HmmlR:0(L5Iw uj{WJO(Q/F.2n uwڶm&E5i? _Y: t V(%hPK#pbjZ;gsс\{‰ٌMBRck /]""<]x?1d:nb{ %Y42 l\2F _{} L,bMX!Q,b׀,!KqkU/"{Su8M='[XOVvJQz9Ha 6_ +?DB,NNJw?pes>Er'|zbչӘ!lf[]S@*K.2{5A|bA2&lo`+dJhpD%![tţj"CQAb@FtTuee bظ[n:j gk7ťJ́tRJMZFp{}- E: 1:8jzoK$-4wk]Q]^qzk6?Ҧ91i1JC Q=іobkNyq ,I?xh~ ] Chj bթdd &_ lQt aօxÎt,!@}$7XQM%y}5)}PQɌ 6/8\ft,F#{SMP!`m#Ɯi%XOIvХ(vM̾=r+p:9qI{/ҡ2 . Wy&B˺,ōD4ͦU fR7_vaI=9L"}dﭜݒA- 6;Q֘zJw~? P~udz~5 E΂kb/낣raݬ`e9؛T{bRWaKi WTyKbcH $żpg79xJX",I9P7% rjD dip[Z]E&%DU r3% h2?@bAҍ1`rG:]"ӫ N:;dP hcېoɻ;Ma+5AS 3N7C)! EaeM)0x˜)8eX♿2RYBh"6bN3-fJDŤ$~G0u8Sayw]R{Op&uPhqNC)UACپˀ랷qg+/d1&C)dD'7?{#9I8RW+`P㑺yJ$/'>mq'ey(Rfc0% 78d^[\,ʄry(Ķ _K;rܾ921Bx8Nkg7TK.XvtJxfod!ڟR"Q5,om͈!p|4Y?X>F#I bP\ЉFQ%e_F/w( ʨH|`9m8\XpgBXFSb`ښ߮Xs]հM2L9 \ 7br_CqZvJS#ԉYDxW"(E33 o(%2#=2 yeb,v\:rcoz U߅0oi{&0f=|?0 "db}LSKeVi {I=:+ڏT9[kk=S'[fL\JWrd`wcχ8Y]=)>$l1$T}\n[wO5Zц@n*w/3AQg׌Q]h剝A0LX!4K}rA`Ȗ&u 6VCTCZ)@Xs+ A*S~V8l,nj0AnL/lS%;[Fw!Zn/ L?q)\jb3L ZɈ*$%:."!. w"K1L}=w{j~cӶ(B`9V*_~Yp1_2{\ ,ɷ&ΐ*+Kwq[h5 ?x } v#м}n6cӄ$iiB"p2&Z45p@?ˠǼ.ys}MYv_P:t=3[=?.7)[kx(R'#>iV][sJWW­/aTC5?x 5vt#%`?domUmq6U d`i-Ry6$*@_ɝ:ɍj!ML?)NR$ʷX%9;}Zߝ%YǮс\I3;|hz;~[;g! _ ys!h(*.YcŕdQХ [~X Zo LSl9&6: |ޝl(ͩOUiq":x+3E9S{ Z;-\`1<.%]jɄ"7/wBDAߨbAGIKv4 DƐK•J߸+j PUԖYc k(#L-:ZP`hmo_:K,}y/C[2qTCt@A0dm/9Ö#_T1_r ђh~x%wAS<e /ҟ5cnP˛j?hРK~zpvJg(+DHJp4࠼-BZ$أd\ sSQ$XT&!@K_m}{ =[M䳾AQL@0&+¿3ĄqvVr6:ѶP!Pk٥[1'mG.Զ\F<,/oyIM7=ܡ2?HQzm1uk }%Yﵿz'}PGA%9d׶6)]NF)Ӵ{Zz[:_)\|q]WR͢KR㳍I[7=AMo<񃤴JT JNO]oleC:̌'t(kԽV2}fۢsMpf>od(UG9I5fyΉm7ٕ2qdFq2XO ̗>޿vUӋS5䓯m)36h4!mu(sf\YE  DJ/7u6 D껚1c? ~#_JM6_EB|EcFBG `CGsz H̫(R*|`S~,U%)"{1%΍wj??=co ؄rojt.:H2BBy;~5 !IA(Z@hevTp ,)4]KDž\Q/7~}ݴR?v<2 ˧2e-Eγ=;5鏟l98,c+ p0$>F:6Ͽf 3.0<])m4I(SND8Z .§~@992ұb6o5qnAБ/ t?k L^>-\nβ~;|~rɨK=u> “@;53Pf>®eHB'0+͔Fd$xL]S ՗|%"¶ Oh,F6CLG./ ʃdh/W~5 aa5Ysg)"OjaywK6N@\Dܖ;hȓ|V/Qs!U_2*WJ?'|2LsU84VߋKh,?95aLJh!)QN`ܨT\Ҁqc kNO)q ~t**6YUp6r <_hɘC(Thkl"ݵߥӽӯS|jvμ [mGG@f~ W #7Gh@5^vz_<ъ:[wV£1xc7٨6D>5g@"'2+z.cTyWsخ~Q:(i]Mu ;d[}Sχ7-s]u=nRmkʬqT)} Yy>/Ga@Ag ,^9v)ZVs髆훩SI"vJgXak:b&g}O}s5[=]̶dqvHT5+zA[V߮{6iOՔWFGşUUpS#~b!mx!t"6bVw^e ^`On1LWX"rx 2-.AQ+l5Kx-i_`(+  iă&#ºTP,=UQLh44gCGTwVY)>5nrA~w_B a8bZhAd/4P4^&Z"A{;^+vbس^-t; x ښ6ݍfAaԵ=8ٓ+lbgܴϵ8KF"y@ j;-73%OT(9B/)u\|w[}>Ъ> JA=/_n?U0l~ʲEob$], sd:d{SCK'%O&\$˰hO VqHf5EGjh^c;wlO@݈Tt~ry,`Xʎ>Ri;/(o_o;䗗=JƩ/FZ++ K> yQ05b鬳hM|K5ME5M &)<Ύ7JS"CJ3V ٕ*}` rGy4YF:x},Ni fUKc7lB $i9LIG̽]s=Ob ' >}a)H94IM^n)Rt?f7vIs=;5'3[+⓮a]'mbNaC)IYM[f%Pm-{PЁ)d(n;Ԭ0T4dR8t{Q@-T(QK56mLolz֍ڛmPK?y_0rg8 cED8hyGEЕ%_|(U HWc\jE'QdRA1f[l~k9?V$9+_;R |5lYbv Aϗ*􆋻*Uqze-wYOCZ UF>{ZÌSbpY3'(8O)lm@:@_cXc싄5Q8,Yb!߬)x @*'@=/ox'6o̤ D2 chK D:EY JW ?~Lz})M6i{ qW=>PJohk5L1Q| glB :?f_ Z=[SC~OXͺf7f1R] 1KLS*tKNv~qbMADB6e<63_DŽEU2~nSoy'Fؓe2Djysg=$1XӅ/FsP;oz%e8@n|橭]>& ^`IiOIJ?a آ$n aL!\Qd3ɕfYà]NlY_iYqnH(,_\ :aNN/`+VSv+u:N˙>ț.4_? XG<ؿw(Y&o)x"fS$ٛёACuGeʗF> V(7 S~(ԦCԕ~% a)  p9cRcg b$7rLO. E#i+&cte~VuGh8ccOg6z(xyO( CS0lu,[j(mn|ԷK֎O}JK3C+'g}PfML6 e#XfH,#I%6adj\OU*xT1+D qkm|vf}n37(Y(j\Ak*݂Z] \?Nm |.vƃ^!KBYP⺃!#6Bbp5J%Ϟ&ྌ-u\*6@r(t^Ot_)BEJm&E"z<NPwbZ8ӀN &}n 8> [Qj i Y,rBhG^}sHS4~!'_AV*@#`ɨ凭R8yKy!Hu]aY<`em9MYEkRք%N6ە' 6d05t[TbeWZaCֵ#喨B\^*q0bnw#f!&$uI鋕2'utЪ <0"U^[?*'{_k3);ݹKl@Z-M j#/<2@4d3 Kio) loP@pU*,O23߻IyT7aM 0Ħ!Y>0[? *%B6 >6^S (N-s}kWG sM\ve}-p/H(S蔿=A:k܄jWӹ*76'yz9-Jt7E=PiC]bvL//YЉ$PVk41< |9SgC|~ҫ2jE^dRRhN[HuaM"XNFԷG̝<~|el$Ƶ0 XfKQIwZE*G W?Γk2-N^C[m_Pd–j̟EPke| GmP|;˵5b$gmxf&mRi ӊ5Ls Nݗ V _29T?Ns/gK= _psHmzOrע~lRˡqJA++p'gHKd)ζ]|=8 N#*IQ"!5o`]O9sT0rPo?>K ?AWe$t%b gn I(Q?ʌE 9. -O0e?ӯ l /p`E7ojg֏EGpoy:gDw)Ǧ ?Z!H宛ŪUzF#Z sh+P_С$C`pw<^-i9PI!7:,o4,,WB$LȊtλ)6ْG/Yop/V9([?Ov^Kcka+_ݕYGG^dYS |m+TtT΍'XpMA >9c.VqZIjb%*w6٠͏9V.c)b.TI(9 cj+BRIuB} J؆I@oS`n;ړ){ rSWX& t5VY$[+yчёNJ9 Z(}$]c?S#R@ ufSw_J9SbZä%1xP:RZo4GU*N5 J٘q)Hw-gs2AOR0:Fy7)9@fg704rS Ԗ*zxvujEųcNX$'K+_0P٭^ps3sVE:jϢ_R@/b,Su#SYM3b2c$7깻87ۜ4586\i Ac%V9:f,O\c~y?K 2F5y_'wdnyPGLt=e3NFwr}sIɻ ?[1+BX$2Mg0/dܯ -W3u`ӡt!{HFT~l?ɐh|iВtٹ.ƖU*0ۨIMkgڜNٵ. O* {&\uHC?Ks#zlnWX]Kr_y|]yBX)xC%RƐ_Ӷ'{[s91%C.rV\JN_.Gyϯ6؅c r"lrr> YH$*Fɰ-p[8@WM(j^+&:(|.0A+aqjyP!.8)溃taj'dW=a}"}U,~~ C1AUGdX!}9&M]֋4;4%nx%:J.3$Y;g9sHԪdq.8 z-®R,_l{= @,fOCڽjQ蘲 9ems4ﳞYO%8l%W,;8hȸKʶ{[!~C01eyeK96bӵ߰([JKh1W`jTIQ-J!}t; %ڹ9HL~| qȝ ?M>Mѻ^fIPa#5Z@d4O oCLxk1(]HZ@}&4 f̏o$"roj8 vwOe$BaIZ+EP #@DBc|t0}ChJk: 97>̏duS[h+FFzVmds}Pv( _I蝻2]IڏLSR<mטM3 .Frlφ ɤEu s6T ;f肦pVK DUT|cB[ {Q?_ϣp;׫2%j} Q0fY\3&u[M3ʯԛd*n -M9SV1՝(Yi V&m׀JHXx,I\Ҁ$3,ZBU:XKs^˕2 NQp,>mg>4_vj_ELznqxpSbS35ǻ^Q:'aTXE$%"d"v;dI^۞ٵ? xcYc/TF\^ߋ eU|Z$ u)Kj 8lvARյ|Q?^GSJ];&yQEڸQ1|zwP\zFBA J|mJ'ׅD"%T'ٱDIMy{G]~wS<0f5ʰ }$ ml0O wӿg/eb9IAǐ@ן 8A4renjuYz^go#hX *P+g_Q7#,-g>yr5vt%=wRWsR1M|bvEb.3ĺRV!7-e8Ozhڡm^_+EcλQs~$*;A[4s,"KL I )Y&{VPO8h\L7&`‹ktUTHe} ~ FJCV})7LBQX4k2m%#q?paq ,=p/pl`0.@av|Jȫ[W Bnxa*4Pn$6`(j89T. 00jtN"cv7)+&n†6"7; LZS*W\wQ;5Feu]R4׹<JoN*<"$-]e,D؃d|4:ڔ=ileni$c2i>>qQ[D8NH=xS`vve+{a뀳I(פrq㾨!!ASWɱ6=kBuA[ t^,閳-&Rٜ;z` X)yv0DXzp$?vHշ`?ɕ09C[c4NOӘQcO&bl(Tj17lFAi?YZj>`/_N3j0c/2%pϨ Clv5ܗiSovAI5Oې\R&s׊k v|mәG#Zy8T)͎v|A6< b3'm<ڦKGS}yTu:/AdoEL؉uQ&nKl ʄqA'+FI4?{m%]eI]6JU~*wy;K#%U>KmXodnM*st֛;^[o GVp8='% ׅ۽E1}WLPas_ o(A!NR~Lg((9iqbrj>jh`M~Fχ[4fNlM 3X/nAl?$g)J _.`PDmvY>#EUH/ kL2F*/ Zz-fs8-˚ʻÐRp/Lak(!_wx586{SWҥוf2f>jѦ64FgEpO+7u&Me|q|6 \MIϙdžp+c*nKD:mɮyCrV>]?V9o'3gR<N[u.8<)Uh 1o,:TC7&J,(qzՅF࿾ "`GZ^683m.p>b&.LJ33PQ^~TI~!q? jՕlEsю.ml+=?q*`8v܉h"hAJ.>],T>=$5m.S/}D g!7˼uo?@t?( jm6([8I۟?Rj'#K)6.MAPl)-7iG@-/"w%T3"EY GkN㔶i[=pž+LE"*ѓ G8\UJ7eߍ,h [bAz[U5O?6kkl^V'!|ê'x} (q>D%8o W\FPO‡6xՙ]`dsi]CY U,vXI0,AeB*]!=:ԢQLp1 ]c>:̵,6+9"kKt|?Ѧӛո3q5j"Ksuhz,҈W Z*7 wZ6b+ߘOLTփw%ٚ/l' E]կW >N!R%'V*ɒA柯]G^ uv[jzxdځ"ƕ\;&w\g WSCyiԄ=jVߞ]3%M,yy7}r^8aCJ|%Ts~eRqZM k*!HK z1p n})T>j RجPYuxrtl~44w6?ʄxKu 30_?Lm0>1b˜ 큷SPG[SCylX=j6w9T%e{c~ꘘO*QNfh{ 2=XyBcV(li 7ZiY@?)?Z,ҩlᐫ%6lvo6ҝuJMChnSn>jmfƻV1k2/ׂQZ#|g#z 4XFFYo8'@Zy)kG [9eiرOPE8̷0:%cҡLKV4ţO]<ڟYnVqQ?'7zҾ÷ `7F;=QBb|@6Lx? ;QZL+,(o>`Uy0HVGG('1Dfk+MA+uO?i˘]3f#)9M|*>.VlX&®,M/Aˇ*6Xft=nir֍pR[[Bx x>2\w=5D:N}uT`5>.#XW^0_\01ybR\߱3z!Vx?}7?{}?;98ˆcN ܃."ㄌ R *)?!N4%̊Z]e^wA)?پA(_v@܇p|5GJMQ= 4 *HrGg4 UB˗ߞ-QuY4XS}UPo/aM[`*8[OՋH_9e<7L#RVHw\rz==1}G7baTfàbWόa@ F.̳"2nnPї~H'Xǫ#'2NR']P5Y"1t k麮g={Єi^Ѹ%uI̭IfjV8"}% G}B =%Xc܃+CÑ5bTYΖ1qАy\4(|r)ipS@wPʐvCE~ɟ:ӑR(0ECӒc#hT2uhkDz35 2@M OVux,n~%0g !@e=OpZxt{=ؙ }Qk2dz?9??~ <~{R%mGH~x33-6~8@,]l0I$(tXi.6B(l{$-C+/!b~l_^+= 6heyh|I߮y754@vЮ*'-qiQAMc[ '8hߤH-B@2r  LEU[p`]֚CF'3#fU1ҍ; d ̖޼B gq|=9^~4kI.'OmAQ^+4cД6)kT|vC x\政yi]e8c?jtlR5iW'@IM 8zeR*nSY2p^#D*z(a}1s;*˄=R/#6,VZ~r@{c>d:kY2f$q@$wh1R1D3-E-uYFПC]#Wip-u&g4鹹rO׌_NWy+3i!-6LK 1KϛO ;^&n.`2pWBҁK2l&] J. 2p*MS>_i\F"-U`- GL[)o:ԉ)NOOS5íS*>)5u>+~M oƩԦ|;4JP Qmwއ,tZl%iakP0~XFUfDOkY 0 '$K0eMa \2fGbqNTJZ 6ތ! )8P Cq-9U`g %'@k Dbk@A'&\cZY՝tT}HxAA]ޛBдȘ> HXR( /RwCYd9?HZނ1OLI7\;Tl=~V)jcAȡG]=6ԁMt".6bCqaAsgG!,]㾺pj=«ս%\"2Ë"u V-=*K0*̭tcլV ;i%H[C3"68|"+b$?7N}`_s.0#R*kƭT[P:7br-U:3(  HC|'{:+cZ:>W~_5.;La w` (w_g׮rddqNR(wsMLp:) 㭻N]$# 1  x,i۠R"sFBX)}E4x%Wwug+nS_ 4Dp`% 0a`}HS,Ŗz8f\Hw.ZO gx1V7! ,^HP%)7w<{[?[5}%]"'3t-Q h~&+R闉4ؤ4hfʡs"NxH&R˳+P<n6X-wz7NZTB%I )rzh.9 |*L{H7b}t=X~d3>:/5łmg7[>?NU_XZ%pDq{1J5.r(9XHc1wZ`Zٕ&fߦRɣF6jHu{ϓxo lkWJ߹3sJ7 -~ Gڑkم>%AGW]-b9=i=&_Qs--p^Jvˆ3r D1xh?]近DqUꂥVT `@EgQGNu$]@pU5bs%̦rϱ9~o?SU{@1a}“^|ICfW51>SB$IUqՋXz?H1OpGbzLBjDܫ?INu|طē`(QtУ8.t*!Jnh+.= #,~^bFm'kѶGBElr.lw=8Ma1ăGM #W{8uP n7ѝE9JF!^uo!>Ub-U_n+̄ qPc}2Ϊ0!yaC0L( /+aO]ZF+H\cMR@ q͐+ 1v0 jҞS0kQwYGu o ߆ b gjP%ہKdQCgD^S`f.tka1;ewn~}[$m%GW}A pÁQpl=O pȅ0},'-/|xw@Aze5Ї"kt/ II뒹M0q1N器 ($]SOgCǠpFf! _dp7` ( sq?kMʔ'_7;{IiݱμLj@L p]95 M!w]mƇ^T)4fs:ӡ>!⌢Bt>%c55sY}3/t^"ehԉBzErx.H&m4 |8k#7=ب>2}h ֬eS)n{JVGwx)PcMm'ȅ,رȌ)츲zQ~d~_uf @-q}@N=)mFX ҽ@49?VQS/k1,!6\$(CG\2z!.+:"ѽ({XF]600lMw\<{YLXbr<{K!H4>n Z8dH<^KM-R6)CQ&pRE83U$v}=5|ˊ YܨsLAbqmFbm^N{ZH2XF$wr v5r8 |GG=21 ![8⇪d8  ىuCJ IXWޗDfwc`5; -ϻ)A?YGGcovQT"+ e]AVމyx 2!J/B+Oбӄ|vd]}-TS?kpʖJ 2Iׁ[&ȵFs|[Q=p} LC3hoVGG≟ `y.tn F\,&Ơz`>-rH.~J 72-`CeSy0qW-(ؕEiOԧɊJs'gˏ]!22/v1t&Wptx:)JS۹%]jI7ktg=#}:$/\iW+ CTivAV?A`x)@C@CS-@o Z_a<IA}~so+}qeE1v w)v|wYTD6n/Z$&Y x>k\1/& / 4 c(*2' taYY'x7M)X6@;\Irf! ĦWv9BS|qYAYi&{v>#UIhXߔh~~8j5341 ZLFG0~SY}E83rR^%u0'ʼ"BEE|b{ kdy{OS?X[zdCnZ<ܞ6GVad|..l%.s,&>C3ө'$!य़DVDŖNy+n}i,?u^ЗSh|ѡ.|s[imlynbFZBfxOszx0ؑNk;#}(F9CȰ>YMNS9oe|߹ĺW6%]qp@-\V੃>N4jl--1)}WØjfCCnpY^kT;U]Ԧ5;UbF$m\z;jA>UzB,Bn 3bK.(9*I~/so Xp 5ə:xd܅N GgEr6~. gz;28xwOF %]3F>՟ve:[sZP֭Ӑ/$ LsxQp~sؙ^'g$ZGӊB5")ۨ(GJGTb$UwKC*cQNV;>ƋA!},7Ry[ \VB5=U\mgz<"l(Ӆ2<:eݺmz+]Xy$Pf"?Nw$6<@j^^+#ɅD[cN\@Ŕ ovp$hu@q6HPm4 )~jp6a/n530aO1+ԙ(z)sh倫S'aGs؄ #N怚 r K%bePz&_. Y7`ӝevS 6|\ӽ岫tm 59qT A<IWWLY$B\:GbGR$?ll͕YV~RO˻5 _#܇;qFYPI; Y{~wI m(!|+&-*O!~FRK>2k=9Cb,NWbP,:n-I$ YMH[h98eKXT{`"$11R:Qn]l#c8xR"B-/G&Qх&uEof{@($P.=_}?a(!8K Wh9gVFuiRC9Ʌxٰ3^^;O_[F-iXb}/ܒBW05*o%C'$vI R*ƮڳhTP/Q+'zyRD!e$3&9G5VۛPߕpru7"^S 19/Jy3=J)s\/=-LgUw Rs&%. bǛ>RyY%u :81X5˗pPK3Ldӻ!}&k"K"꼵HM\)uzp7- rie,R pdBbW4M^uv@Er*F75&3Q·4%8qE]U;~)pha v M/ݠEu^U Gev!=;+{}1xX7?֮"-a k~+PAsֵ'gIU>F&EEcI)TrHC.,O"rKő+x,n=ĦS5;lX=5[F3E82~=o{Hlyk#*^NUP8spbY3&юc YL9 үN &G&'Zg!g/ys- 0RQ!bFs$ =rv;?>w#qmö rN~EAl:NB,SՅQEoq?@ ߃GNGBۆgf#;^ZDtizݑC& A9)|AOBsUD)}|/0olpqp8FKDYxFݾ+k`ƌH3尚OJWpgPr#~gۜE@̼gC7C:.]D{Ez`i} REEvR FeޕaLNzbrp_u`fRG4Gq58_ 6bJ%a:)GwY\iv %v15.Lf74Kqzgh5n_26-x+<)aU=MvU":U^Z$E$$iiuAu% ѻXa, \u,$wwgϬ;|S_ OyGRD`4j uJcY ,UZϏ.Px&; 6&zf$\HѢ Ewg,E quG>]7 A x!?$ ;.X+[RHn h SCrDNI#^ 럢0-ؐ$$ 2vZH#GUy*oͰ',W'd!׿/CvdkDPLfTY|(m}:n(iWyM9$PxõT-K՛f9 ՅwS u)v-k1HEX~m'ZL4ʱs &Q)}±+CXpƘ|vF0 * IuFa=}Ԁ0\ۡF3CT<3FjSgNC?N﴿]B¨fZlk4+/i|jҦ\RNCd-j{ ~rK[2}~1R7`#){?gEǚۿN0&+*d.e9ڕ>L',kލ\62qJOn0Bc?)5<6v ߍ )nWۅ !X T2 2YeGQ[ڋwAS<Ġ{fD͵i˭߶興:XvwwW(Y_,{(u g(OS`O909 q!drHe3N$`pPigi(’/M+r&?ӝ5MXG*=Xsvhmʵbo:Lv7fYSf8C#~=,P*WAY2̗*h?-@ʠ1E ([1/3H6bަt= [:?$GɣL[UK0fܘiFD6P2gy~n';ayb~]S@q斺TwDM|[hpA,cX_Ta*G#3HOPr7=d&c2'e?qWUxWޔlU;^d܉AɩOޭi:\.hֆ'?tT`(s( ˰7)P%"#›CEq7hDoYEl {=S8T,(B5;d I (*sˑr[5t%1BGAlrO+~6Δ^IB,na7:(}o{p}Q0pt @HC,Fa[OT[nRDt2|g: HpiiѡJފd`}qr+x 7Nv};q@QiRi$9̄.*yp^RR`zD1ݔm!hpvDnAY1ߵ$e#<&c}Ynm*&08ꋒim\ee@ S]DjV^7J&1 ATU3\>`֜jd?wNA\~kSEYS8JQAO)1X80-D[?m3ek`)x6zM~EXa L n5W*VK+^_`GF leHʼ]#f@ǝENzdVQj.r_BJ!C%DŽT& n[z-SfEi:O1B-aU)UpkIɭ ĬE~40Nto@pQCzr00,(_d$~JA~\%A?SY)lylK[_N~)_ dDIfoD&.?{>X`L2L ĚqJFKP?\0S"_LÃ^'hPV>"ٮuh9@оfVh/$Gd?*x_a =r-K^SݪEb) +Ų:K/q3Jv;Iw-%=LA$f l7S1@hX?bF!@=f&;Ads6zbcF9?foB(q\w ݢj+ra͆ͪJa\pڼߑM'T 8B]H^c&4/ &pC^:rTŔ>B_٠Iߦ+h2m tX+'miMKq3R <*tλ9$bV5ini^JIo pg""x,b'wIGdB^ի1z4Sd3S8`H.|vv`-@fm Gxlɏo] গ̟"hr(TZ=W rw\,2SH!~FibUE_d7Hg[ƝEY>qezԁZRl7{bT!t]^Z1yks^1eOE&Ã(IFBaL!AQ O{%-* w 4%z!"ޖ6lNٚ6|Ȑ+JuAg^f="7hNqQPeQUIAR+IQtW~=炏=v\qdE 4ɤ{]TLzؐu!y%[G0V;j.w'2dǀ &xԡded~$t6.e(P#\'SO8)1J~ǿ3w`>Y[ޏ?!vp|k+)Dyhk%S [겚wH?2 m%f kf3_"ʰazVz:q`,:J@WrX^lRxTQ<~e"g#H?i<܇KiQH{p(<6%ˬv1x#`]GqSs*#VPE}7Ҡ% (sv께GҹALrueXC!@U'0 !%\eKUߛ6pe˜@Zz2IaR& F5j l FD9jJR6bՏf(j8THV|-,V*BbU^cAt O^)D\3i$Xʱ̽}uxZpLs5POdBEt?eB,?؉,cpV뢶{;$NѴN_0Q #)̫ԕ9ƥ: <48$w{iQBn7GO\c҉8u19񊽾DH3Bn!9kBʎ<'1a"MQCAhx"m~#cQ,;E0tXs鶰=ҥ7 x٥^uY~h%GzlJOԕ@M> F_W/oׯёC9*TA^SFx Pris$nxGﺛЍae^9$X!Jaؗk i9zP\4ЃC83awQ< +a޾TG^=snUKiU,~&\p]{zV<:5W5rYG )ǚͧGa‘ } xB߅]rE]X~&їwtD\0A%R!;I(馪UǻJJ`oJ^G4 ڍM&Z65:k0EHi@>c77+#h!z-QPoo}^F DQfY7nTs)@+fDVKS~gFF)SEÈlʺxQs0[5]qtAi7`T=g77 &'Eԫ]V2$g7oN@ T(+1a㳭h ,fc _Oq G [3@ yqn_ f$l/@Wgpu\ w[$5lXp$=f¹ofUO>i[!@%mS5c&c<͹6(قdJ~cS<7j-Vh% hyؗ#W:j9TͩdQm^H#/^lȊ<Im٣ˤ0spJ#V*`,K*>8qҽc3OsgcQ>_u=~m(_{ز[4P= c\䶐Bk_ od nϒ$Z#=nJp~GQV9(^l,b(}c'M*2<_jcUV\LΡ;VW(؉ &y̨nG6*O~`i3I\M;gim_(%a. R\C4e0iKokH^PZAq&St"zJ!fwJ!mH%C-WVCܕ*ɚͫ),?cY&֑,S4 O┽hGUn:,d!2t(Ǟz|{90/ aͽJ*H, {0h'hzc*\tbwVUuWd  jCT-3KҢM5w]Cɵ2H}mɘ?J11LK}aMJ;=DSR'X6w':t7qmlF==kP>%;wn$v͏oˍb_y h."?1̦ e1'zhPv@{rM+\$YZ!˗}{^ i{Tk6ͷ%1fܵߎ0gǭ4z tR՟6-J06d3;%LuDFhFu+U3Ctaa.ؓ\{zz:zU&>cgTlc5<&)oؓx3 .'% [nkY4N~gqƀPEyT^%`/qbvq7 m_ȭa2НxVD ft(AC#cpc6$>DȪ_6qƑ&ONT~r8P[cY]7kHE% x#cJe!>JdՍ6\!kC@N2 <8ݥkqTWdٲW^7>~)=]Y@%!K)ӥ%/Ndb`7b.952Yd-8 _I? 21}1r'm ]V$5&s]fu}V̥"9cD>{6$KNPQ-48ѧ;ɿ[jV_E!u*V݄a/ .mO=WBV7?ecd$x~:;3})ߚH,0%xÛLܫK'ĨI#]jV ʦa||i5ҥg8Vp"h,m;YC?ԠTzq5mHڨ5R}'t5Hj.CMT*Z6zF+TUTO ;d2['4txM^DùNw*">3z>rC[H5u-7NM[GX(s!giC+t=anh!%ʯf|['d Mι"83fNmsG`e2A[q|D7ŵW?gSÞG@{LC5 tc"ETPNcWfFnj+e9{$enUДմyoR٤uͣ"Uij[6(1?a>5|4|:( ")9!P3%XeXD.IiE*Kfj (k(F9 95G8 wꎻk.0K7 +nYqgsMRL&hXN! l Tl_x8?2?;|%LzQdTRJҳh]RT{yehA%"h؋{b HJ4V1?e2ޑ1=1+ؚCK4bo[`OTww P'_! ʑJMf,`@>ֿ[BF*t&A~Ո*k4J@?'h>= ~iVv6k˱{gb bbn3|?W??ljj=x `mX!|?([;x ]㹲gvyX+jO9$J vqQ̙u>XFz,_e0 WKfbEnCLhln!_TU(5y>}oz lALqǮ9M)kyE29фG~P)R5^Ij:â;wch6rO-IV'ύDƄ%-QҮb Pa$$!\V{Cʸ1v.l?[>;/4a85}9ށ``&kZpE@dE"NAh,Tr0b,x̨ߊgm /DZy{ q/mJ6[@GXrv=ULl{бM#jsB:@>%_˩L7fSl!*|fSfb2C=nZV ~sN !ME+ _3yJ͏H֋"|MkVi8[CRKavg3?c.R[%Y C$׼K6'*uVs_6Jd#a\tx ټ%rҶDe\F(6 t,0*gҊseVD?l \ -edM`)S=jBa5bpzth!:K+ZaU5WcSR2PYm4@ `'l0Tqx Q~*(F9Q2>gRHAH_Fp` fP}%2 )¼?/=.D/C'uqGVt}A=.¹gz|ٌ5?,2yzu{N#ෙnx>mxgf BD2S[lO6ȎJZffZ1m>S8"j._lFF oZie([!_ew M-lyC_]3nn3*MÔGeFno2-v hӫlI6\'F2ͨ܌ jɆLgj= [+Z~enw?Ѧy]b ]z7| BԀA-u1t]k}L*lv4h%/X}h*{0/c!cYnΩh6)zE]WK1.gmp/4_aBn4b*.?mO*ڧBV6X2"l{1O}'-^>2@Ÿo.4G.]qInLALdf-ucv%WYr{̳7g| t6j|4 r$jYgڸQUí5F#F#Wt-&2JIl ,"5%$t+\|\Azi2U wa4R!&|=M !{dTsM#omӽAF3\q(W8Fy>?+<FẒAA΁ J%4kzny)ξmIq=#4ό^YDG}=_vi{} XM|8< "2Hr<2(ͻx#bs"|FKw* qYrR ̡^ɳ1fYp&k ꤺ<13\АҰ4' g.e+@G'׌% aw-^ISlTJfӏ|ͦ oOqQ%[etr)s(/++ zeW<5QH$~YiT-6*Jy |=̋xKhƊ7(܏E.Vw+Uc*e7#0Cu&Gt߂Kp3H/_@Vpca0AS_E^@? P]cT8 ^~S$]&/`F<^( *\apz&h- H'dR='5 -XJZ>o(帆/nv8\ -^c0rqID]=Tt C(Hkl㭀˒:a;wma'4m^ĬL}qj}@9\3th"<s8XQׅIgV¡.ʏ!]W>U m@Jo׹@P#q[ړ.<@oU*1R;FfIN+e¿958IR188fys\, v;,IbGkRT?S]gLnD'u[$J|ׂ3+k8q+ܩ4o~k6]X}IH;-P2l@/}ЗL[X qj͜LnwD]{ y8&w^y0?r49X &[iBnZ_i"zhƱp;^orPeYOݿQL']51xܶH黆Df.̻8[f'o~Da8>|QmjW@6* /-2g`'3/oUB̻ɠȥƅX+}h'\` N$=N<'6pm3)7#n,s'AL8H&'?=5h#;n:( sI7~S|>xT E%<$ra蚁2.T5^]vCo;zVُ+۵Q_w[fM*z 0S@.IYsxٳ%`+ym̏$-mLoxO$@Su@hA5!:a˲ ;  Z5 }݃6~O\ާ2d r=Duٺ<*v@'x4moًf}.yyA"+`Lz5ER|t7Q? pS׀LT-o~ 1#K+uP  Ϫ\?&F#V}jfɫ+eF-س!NGdM?>!_䴷4r NC!чЯ)O+%;0BY 7?;YT]{7e?j=`L񘪺Q^"9E4-0cʱ7>xT[,kZ*,i0(J6n$@917?QJ4. ʥIaں*,P-PZcq[-xei 2DP~G-I2Ty䁡B S\~h>ABH/eU4#ˬkw;O6 ۔_͵X w<)NFU5yo7Z\x͇}x9^f@;t =DpN0~ZJ%ma~t-}.ûrsꨓޮ8ʿ;rDXV2p]a !.F4&Qb Kva+LOh.lezq=0a)YEi ;}X,NA]\ n<@B3^"hvPMO5`\92Q4*?KB贶A_ qj\n $PL [Jʠ#chOHJGXp^#W22Yxb Zs+3tu|WNRE" |`¸7Ƃ߸LK$΄ukA5`:Lx%B׽Y'7٧* rP%[<,̞%9dU?ʐ9a~;7eЃ,Ҍ J6@nߢ@}v܀@B5X `fu߰6Uo!)s2: { h:Ri=f شfimlm'e.ŜD[[KAXK(o@k{zgj8rFo>7xer ?͢s1U i?tb>նB Z!ko֠$PXW5`=S@''e=T6Pm̆_.NtU]%*Y@Ϥ|dG=8w@ DoXA"c)~&𓳄fp' @փHf? j/5?9nmƷ\Pm%p/ᐺҢ\qQ}՝<#HP4xLBha*m.'Ƒ\2 r/L,l91lCZAH ¿$&O,Dly4]D־ޣHH,fE7ؖ;3!mciTw4!^aS)BnQ_%=/$&oCB]Z;.9}OPCD nn :8m1}-H(cݨ K-H9r^x9Xf]v.d{ԃ1di8*llع7N ꨙ7! klbmp; eX?ۡ SmRKF뙚#=rJd~pJmkߴ;R`喦s,C|l4=9xf}`TDr|]$9+YqIȴ HR$}y}I"cC9iG<.4м'xπz7hA{[́/?NpͿ]^|(-:*P!k"2*Fui%Hf炩ƯQ5 Pktv1P,'/"+:OAůP7 ɲ+Se۷6%B<@@(@dgJyg9Bˠ S0qrN):a!8c 4 uemXaMl?3X ζoaGIKNwM:33'*sg3Ke[ǁl''jDX/wvYNpm9fTq ÂFܽɎ3dIVL(|$zc|B:RuJ7)zGOdm['}6 liEOY;@`)͑+VieG4A!_Ri!\,!| na:ǂa"؍hpfOt8tRhq֓xg N aA?r?jR:59"z$%5e60ӛHXc&dl55)gXaK [Ai$e4*FLV _ޚDywW#m΁_4m`kqM耊`d0e銸vwᱯ=jaV,G,IcL@@x=˚Cux8%/Q=4h?x:⦻w3}E1iހ_M&VƮcF\Ryb=&>V[(p"~):wi<5ۨˆbt3`SϩCr& -j}9年|׮j|dgVZ417_9(K?&u߽Fl6k*|)jP[eR Tp+YIPcLWTV-9^x#3hoPyv ~gng2X='q2^t4Z|z˟u;}HUުo|)Wv4-Ժte@OMxƂ.'bQH8圈4@_6 VI@40϶^~4i欛xTO Gpzgl?$¯V_ h%Dў4sh7% DEVj!'ĘZfϞ M3H>/:ՄyƎNna09~L5D Q;XY XGuaR'uL$oPx(4qcf6;۶Ӫ1"rYcL#`2Ewm+Ov,}V2ӯzzHH:0laͷya'xF b\5uRdQdVHeD)aւQNiQ18 I/(2+":"{ucM%)(ocm~~ۧLX/f5fDr.j IKΔ;@e/<(  -.JXAvy^u, $k5o5: bɐB(Y} {􃼨aJVF7 V+ G9b .Yfm>00 7@eRϷym4oUЉ[#[l*6Ƒ Tcy bV &{;W-C%෿V gīLX"OqA,<& :ul[BZ6y4ĂGs.[ &#/%eB]!2|̋IkK'G P17\Ģn]vrՆOb;#L.ōF(te73b'flҾpw@;bbřc6.ϱ8H!<:g$6uZI;D_xMɏWBawtW %Bꟛ OA7'0Wv—X:d\j*ǖ* X'A_u./\$j3YO9_^Q4Jpo|xOa'[ϓ;&=g;oRw;C*;FtJ,8E/ fciΜ+k\Wź :_E9/ndP;toNђqAu08W",UhZyp2]gvNb,1n2?Yq'X$ ?9#\+(Ț[YI3PkՃ$nD;20Q-A4UsmXOʼny ۨMٛ %EGFnŌ%{ S޳6qXr}bj5,wI&aUy8G,H8IoY@ =| /ojZ9%j^p&Z aAD*iax ȳT{(x~$%n>=<| &*B,} [^VG#ΤL|T`3lp ڶ-n_6~33wqQW7Vt9e.a$^ޚQm0i4ɶ3 W{A9d zBj*=3l t3D "V, KX5o΃IbjXE_ud\2,7N9"h,x8bADQV:[*G wktL 0 Wa_.^u~OiebDN_{tX&th.u^r/]auj[8߻0IcR7OY  ) ʟpp?b@)h ș8'@WJ(bP|hFz@cd[m%JUm 7৭+@NFe [xlxI\g~5"~U=G9yq`QK O>D:m)*{ JJ!CJa~MA 9fSb7&B\mRBħe\!Þ?Kbei7@Nffju5Xu~>)at|Q 'qXQ⢏'Y5yA6!gx dgμ~ ~MYDAԘآ>orUk;y9K 6dN_En@܇h~ Z2 CMDގcJSm T\M2q!,dI6qCo+&zHUu%8zU6PQ)_ #NhP]<nS+VhrIܠzZaSyZH[ $ULt!F&+ s\֘>F*|j',0g,b>Bjn,#-KADӇMh2|*deǟTQV B=ɘYVXL9>YyT!Sx' K7?w}DkK"M#l"OOg*=:k؅ -$K<}fQST#5̍?9}5#(G?a/5h%lCX;'8fFM؞5{1!|DGuf :A_olJ$c& wQN|~"lJ%7kټQmgF ]9&2 P0GŻs,'of$,l0wd(d&-M؀~3Yω(wnIÝsp5$dv#lff/.~cL|IY?ܹjJ1j/+0&t(|Cv+i,MS5y<(\zGOUoDƫlrmv(='a"ԞXpe$@u 9pk6|h4jT5 _>FǪ8|_1'Sz{<-5-w]j=4h'եLy]}"כbA>@o;ph/RA{u=Cf#%tM#"̒+MtWrHhޢ:W =Nys(dvl1Mj&?}eU0#յŗ/HZw l뉢n-.S/>oB77MYK 9{{(̓zvWpR / >=R 1-@E.,4S&R"i]D%eܠ xf.H EʔݦP:I#w9gq^]IqPZ/^pW AE 2R]oH=86fbwzh901~>#F1:$=s]Y}L۞87^"Uඹ^[L2H#Y#A0H9qWi܇Z}6聽EIbTlQ2*oG x ?h##/ǾQw"9侭P蠾 `H)j4NKufK;W*1t,ɺqBj?8mg0.jO ~ Be$>ΓrYiC @07:h$͎p;;(!.<\wGS AoZpg1I~KysLKjku_fKNp#oHIc# )#m#Wfع ک(zhO;r5ӯ[\%Ɔ6VY[#+7\ 1Z;!c`i"@M S mt0i\솄 J$Vfari@tǷx\K~4}1J^FkեσRɭrZ`՘ $rYM =7 Qʳn*7X= śS\ɖ[n U/.L/\8=_/v fwk$ב)GX@k488Be1I :Tc"rِ!=a$ )Ù5Y]p,f)~waC> °Xµ(_wxHrX뷅Vݸ/H,e ~~R׺>D(ԏq$xX=}c}  ߩ@5eS`#F[eC֮*)0` [_5iih.DP[t.ʙ#c#)RL {笘ӵO܂/OB(6c@Z5,^8gU J\Hզ dOCSFH)f(W[.(Z$ boFR@O^ i58|CU~AM^Xj3߫nYA8[2J|BXttJSb⧙Pï t/`VWZ"BX:ZHĖUYKڻ-1s)4 Nlxr"k d Q!jZ*u8牱2%O"w Q)dPB_FS$o6U$eǝV~`q|{>Tat` $SMkI%5 jkeVp"$O[m[04ݿ7:ΒR!As+O8^`G#(Kz;&]Oh8IM&NNAy8o w:]֓|JUI< *}>^0ac?]Wg%՝o+hOLZI0htT^8thp[ڀ\Ś vt|O:%T)Rx[We`ʯI`)fXwRʉgeD#o14(o֭V%=.c[k> wZ ;Nk=_te*`r#daYԞUv(6I&j2t;\+{ ( 5?OI#ߘR lm5- e>(Mcx1cZfA[^՝',5Ɓ´O)&xuk9 CDGW@WAM4p6E!ROb,LM(~VO"t9Y(M 1^I o1h2Է?հڊɡJ5 E/q+U0oЎd'A¢D\\R9AܽGsxHbVBLT)zHHcvmMI+j.b/vXJ Msٶ&@}A0B"F,ju_Rь@Qr߃7ݩS>k.e]!"%j1A:# iy64rfPo6 LtFq^fokqNIsxbc 1+:lpSgmTRhѨtJыnn?S^]{~2yk-8UlTk4MӖ&w=75p# IC>?ф5 #> K-hU]AbJ'?δ2ws\{jl$>DMsI;&u W%5 JTU/O\]tu>r ]La -:>5 Ѡoȿ襄$T>Ã})8u*jڰ:*_+8߯wė1Aq"Z=Ο%9}h0uTz2|W xt: n v ?%pՋ#W)UQ6f#E# e$B*bG2WUKz 'rZx艺DSUgp/贰 _ұ82XD̑%,߉9Q!&6(ϲd(ld(2 QI}ymٿohs+~z+rFמg8LˍHl,\jk~̨ɓk/uF؋[JN cDmr#F$6~d吡^- W "8̛FŢں&L db\# |nGY<5'ͺVhN2]%tJ҆OǢ}ą;~zN3 D en B@wS1'4kco$jlR08bRJ\'lA͓9 }܁o[$ _z8C*0%XG +u-t\g9'lL  .,绫4, "qVeTtп 4(/zQG 0mqO7%Sg>F˟IJoPrK~QgK9a3-ά'A&,TୡTnbe} Q `SM-i8]| Y#:H) 0]%hٍD?Wk)fDf< P;, E硟@;_QldU|Ͱ"oyt>s/i6ǯ-ZPeFOff4F܍J,"GxVoRF!$RoO?=k]XVmW(3{r+Ö6xm|jÓ%cWsGl(/͍# Dy4sB>ָaySBx䰹WRjL ~:f6ۓWT̥nS.!q4@~.T"fuё ^&bPj{X%e6(q= ppſk6[m?3yORXFa[.LƓ3aϼ(%ųIK?!Z)@sTLj,2<@BsoB_#[H"v KSn3^ESxgCϠAj?PWА4aix/"&Kg/B?Gz4<496a?պpcxT8 EѠĚ [K.#] )˸N0BK"$#zH9DX|m|Ԟut[g p1Nwit md Vv!CAJѾɱLB5IFGMlL!dܛmRW{T)[I#IjPJ!tX!tΰieqdnL Í4D}P?e6+'MxSw5T@ZasQ7vA[,*v;>/q y~{̨tp \\>ԏ> 2Vz>e\ԫsnsy^fpwޙ@'q+1#J[6+TB8T09(E[N &yQjdqT+e#H):},}G]jfaS/:7C)thWk 97fRaV}#jcMctQ fITJZUEœv#kOGo.>ՈjV"f"åP2ؚ:Z7OW@Wq9Kb)tpj ]s68v@V)jZ&!`i^n~j*G {܇вa;yE?ۡm9tU Rܙ]!/r|sI{N 3:tFBu#?h2"hI !i,,JęVt P, y*>M/sL#9g "4./fZ#1YDGH瓷ݺY}Ƅ)>[Lm8Qe"'_j>9xKkrsHpƘ;d,\s_kՁztVL߭qt9O \͗-x:>r !'Phm:~hAͯi\%~EBܠ'SQyG:.Gb,0!a oP\X5: J[ 97Y- 9=ϱ*pچﴋ1k̰/|y,8.])OxTB?SEf=ƭ(x1@(;u)gx; CD~@4߭96lb^*jlG#Qa6ȂNlj*\8ӊ[)L&7oP׌$;J-DVݒTKY* 2zNduٔdVL#m6i#_Ł vX@H{t}U7vٸivX ^APEbjخi?;?6+/.xP䠮*jU‡ rA9poa!#i$5q@.kdݰF/xrܴP7A[-._- M-ۙ2y 2*HQVr<̄5 8sB"@©Zkj8D1D3 +|į-Y;W[:ӭe <'k x Tɴ")duws0?JMΠh܌h_ Ԇ+J댽4 +w{{qw=#o!%KBZR҈q3Y@kV #p7*,q9b 3/QS5n9ݤpLVFdƬQ?V7s8S&/K&󐽕!z "a2G<:km$ɦȃFnbBaOܙvW3#X MުlcIqJSQ,CXQjNx[xh9֢%]Ξˬ*c{:Zz.ִ ӕ)G˭\df)!E9)$IxP񼈰tfa|JHm`r[ā)Ulo%l3 ck!eoo O65҂SM,#]uFe`G@?nvOHIv\D{43s)%$'4Ю\:/,ۯˈT*Bz "5&<eOMH֍īara+a&$Es~ bE5ĩowVX2ɥږ&yGc# WNuFYc]ݮ wׯ#Y(^jЍ;@E{q1ʛ:GTvl/!wT[)X^iԒrX@#-aC[I/}}rëPN${h&TlaWX_\uDRGЅU{1ge l0'0gVxю"?~ZBւxoID@(tv WO hZ.Db a8Z혗b¾qPX3P~TÑLvɝo#+ ޮZYns>Y6"܀MFrKu#UcY 8p殱U΅+dO:~RYʛ+UiClhu sM_C.ۅ,PWzx[.gB8@C%'pDtM%EW:,kBJ1G v}̛B"Ir.Z$v+Y$}fA~n&hRj/ &f)1Я-b>r/=hO &`bЍ_jY^3LD}8alδmW' @Vm;}B?]';{$ UZuu'#BZq"{x rހcyXPGim]6,g3ZlxyW[dc+]NlO$Oդ4+9KfqF H&XPkX 2b6UN; ̉5iA OgeesS#хwb9V[Ȳk A׋-„րKmϓJhT^ƹ'{R_4L L7Eoq6zjԣ6cuIv$ B3A!hfGɲ#ڪXZFx b '@k~Đ'28 VX' շZZ2x%&m$S}=5u+ZAGknvݳ>UZɹUB8uՔ|{d#v[i{yu,! ŀ64f]u[r 5pͦk{;W-46EH+Zb,_@.ܵ>iૢ;>㚄 !S::XB@: YVGd+i97IǑ.tk!Td1G>*Qi4`ad9 QLeJBɨS2dZdG9mh>: ͿK!6NzJoNf]=VT+tx0q?EGXth&+HuEWU3(ױq(]y_F{-k eT4#;!:bpԁÇc" 8W2B- wagH X?ѥ09E,B)AZ:TQZ3eJNFp[:d ޭ koTFrKS(Xښ{٤ kmo?;.]_%%mvxc0fV[65|.a qw7‘&W㊛y,ȱ5 ')=T4`gD..v:^XYOQW`,y$JjzV(v޵y`h!(ԖfJYkA,.̮t0aY|9kWl;\#p N(lq%2CU#X61Hd(P|9Q5c'-ӓ#Is ቖCt}Mu9^y{C4Zf<@վCO |sBTO~Zej Nx,@h $mc_Zg(/q<әM6,md Tu7:4orsa3{%Xyx@Ǜ'CB/rV$zWQbԎC\ #xV8Eo͚tdNM&2D 2(ypbA"0bkOiKg'[/ qY-e)!wqVlء6% B ߪ4: 7Kyo<):\~m*m|Q=1#%$eϿOKqGnvJW64g{B/D3pL.Ojt&_,}1y4hE{Y̐7tٔhd}ݵyPZ!mSMKn&~P&R3ɛ\#ohK hǹ3=G,) r[lNJƨ:փػ]K:Z|Yjv"b4` 17t;%hx{@2Adh1/Nzcdd|}U /EKGRa[ ܝ5YpBqͮi"ΨEķSv |xg. yhVq^:)Iϲy_}DpI  +L1MaU0%7E]ZB}4 jXr_ Ť>aV}Lwksޱ?cX1bӃUR0gE#),[=a9vlx*.;YEԥ_L# Ieghή5J|'kj`p/!d0D>?2EgY('u&>|,Xq೸l tn4B!w{wʬI?ZYόSWr)f؝80ZԮq*[Z{//Idܳ;unGNFå*iex:xB:ڐpkWo4{@r`=t?zp%0D?lIy\q8 rQ0~uzKd 05gS Fŧ:@ wx:Ic|>)cC"q`ID&Ǣ<~a_h.fxGIZCerò`i_,*Yy8޵q2ǖ(~r,\F灌`G&Fg*8_Bے5籷H2W9,̈́xA&lc ht濴8n[?(=,CU.C{dUD!iPlv>ɴu!UN̊Ye ;睒%@h0g-##S5A'~zl0Esһ</rmB>H9a\I03G_H k+- d 7-:JJ?€"t,_ f{{2HnL ܦRt# v? dg6y ;q5))ttL׷#@IL.a_E8qюn.a\TܺEψtd|+tDeMkQDao|b^l8J"kn 4"pQ vpƹ[pɱϜ ؼU/9 Z6zӨޱiwr|T=z4Z;N=|I-r.U[tۙsjr3a["QMMV) ]kWKPNۈ"LU1S\8Tx9Cl>.8Y-ٴå% zQ))jS&/=Q{%†PCH0K*!slD$ :)W$T_1/v_mjg 餽®x $^ RKW_a ZңJ\}PGy)NC ^0݃Ǭ^k~Rgo~~DBB&һDvVG&\2?xI!AEK>`^qGP0=Z>3ۯX>|8ӥ'-?r.4 Nniפ [-T%JztLwIfɲs +mq6`sWu }0>+BoVccmby pmƑY!#^C&agy\mgι+rXgOM6Tg]x^t{"ƞH-UbmA^1_5,-ڪ|,tqf L`/QB|qB Yٝ\[>j+ǵ;]%\ \ 3(Ŧ|Ћ)[W͘~źРזWOp)~Xǰ@6pх`Bk in)ͨ+\˗kFo띥4͚O>B-kyꆅ|8)Z1vn.$RӅԫ݉o3UJ5"fp2_|4]| 'x}7BѮZo܄E/I8[$7z5?vj*sz!80%@qvvH{# 2p Ujjy^lHň;r @JNZܽ87Z0ϡ"ᠵZNvf?/t]Ⲅa$WQ4uP%(dq [(̚as{WikW0]F"kfךH!6#^^}$fƌ!`t_8&ӒWk P廇/ \xAC%KC2ο"7i~MTiRK;pDn9\ؔ))v tPUX`?­l0,o%Ӂ_Ү>*QϦ+Yت;sWO.0c#)`Q,6F7>rqBh~ 'P-@cg]5hN+Dz3yF(h|4J)0d)g RPPW_kc'kF}U.xeT+^ b뵗E)噇zDd?dJBˮ}y[05UjZ# 59g<%ZW D-?Z]; 3Ah)-d*B+8,H1bZ>gftr+B~CINNY%FQAd&HWgL5;RSq24إ\XuݗC'֋cMOv˕H.YwGWÑߡ}QxcV3Č &)Y1Gp+3qό 'Ք bD$-tx=Fޭ8pNx36_a ;Nɑ\**Y P E&Nɉ~wTpƹk\Th$`&6"^Ф8;-G1-h)6fbϑz&Խ5q FlAxޑ,ͶkyԿ-*ܬ7 8KfzB F/u>vBhQ݆ Q9#ͫdćvb]!O'S=BD|0`A\!cKeJ R,|SᙑDbVE2* ٛ#8dgچU}CDV;֮.z MJX7# : Wy;_2u`dqo1K@fF q_RE8ޖaʫ\l4gc(Q8:YjvH0~Xc.e8ohjU=7(Pzo|]N9طa_SCwi( oSڨ6uin} pRlK~+XM(_1 cmuҡ8% |&0l!y!XQѐ m5pKMi;,N%E ћ,A]Ҧྌn+$m:ׯ,[Tb`5Alch6l6w5V^oSA0[ Kk^ȃ !ɢw`п]6(>m&h سkc?ﬥ~;QU2j#NG3=[AFIdQ*t $;rޠ9'.S8) 5O); Hc2T#ꀭۤ2xU)I(uROZGtt%j:wTgH}q~l;C[n#JOu<:nboyNDVp\;؍?@~%"+| 1I7kqHXIԖtlǁJJE-~F44MQQܧҝpiE>-rWDrW[J"XUlڸl+lI7%ׯbeo:|hֲ:37H-ۦrPxgoyӴ^`"ǎOy)y!=ĢǠAۆT A=_5rhKł,LWM+8-Q@r8I$J:lcHjw#H&=#Qg,t3:9cs>U{?vDޚ̜Bh2|Yd^#_ {,Rip.w2~ @}[Yf uX"]:X+ឋA>/H酈ձQ2Ӊ|7:@fz(CRѦ_(g N}n(#!CJHX 4vaeE`Y*\ˎ 002/PkX˞PԞ5 *d㊕;M C$xl['Vmy$;-3ף\?Sŗ怳^]UV ZgWej$;W̊]Ik+y,}3 ~=oyXk7׏duEG3noOum~Nا//ǎvb9%Ě1> ##n{Bb Ϥ6\\>dQ(=WEr$@0i30u_\-%0=PW4g&dfV0 mOܸ(YϟIh<>z: N&;??;u.Mr-lt $&OUˍR?!7n˷\@= c 3 mB-iZj%*({ j0o7sugp4/)Y6H+Jn]:N*b-z3WT9b`Nd.a-ckTbQ1/EZ_)VPx8@]Ax5b׫0RSec.ƒJI"'wH^ZVI0U-065YPezvw~4hWoןF\@kZh+oPRm #P;]Ro4Ǯ41ej ,V$2K^Y=4}>σ_>DV-/3 ȓbKLrܱqb |Rrm+ჵG*rHE`pVl::Q*ޞMhAAt/#=qK,ƗB|Js3R bzR`5n^ʳp\Xħ!Pڳ4Q ҈2;U xS[qxZN-}IqqRah mʘ>ХZsSr1Tٕ=U`GDjAf~-{')dL7oqӭD-.3T+8nmmY3!1N d'; 4@ӀKjA}vlol]WE`#1Lm0-AQulRe{(ZyǡLf^[(V/;nQ;j,pNߗH9>E=|Y&[` h'@NX8[S3m؆Ph_0n{6Gz[%Tv3Ej[r#ZA!rLFt㣵,M(LI$fõIW-2]Ii\tl^}xH }Dڇ|1Gud=xT$ TgcF ̰?s,'[-(Dh-_:bLzۖNb JΑƣypJ^Gc09~γx}kUxCo:Ygɍ-w2 K_p,}Ln^L_tԋ y5T0ϤUW=(ܱb+::2]A;_xs:pL⯖F39AT6Fr #En x ^ykЭAkBZփ;V[r,T}Ѩ1i+R|<}f`iؗx1w&K6;(Bmn6 $FLYk2H G6M0@Շ&@._b.}~F&y0HT|Rq%rϩW54Q)4v{Y /<F~X{SiAP!JTo8/+`'.qCS̓d(2>S!Vޤjw+`PN•SYM^ϼx:OS5OlGml:!ƦGF"h>+汄ח0ALX,o8\_D\=O;ž@s5DY$܄=9_rMn;b}LxE$@}vAHZ*X.*V+u-EuTLF >&e/" b߰,o\ ;݃MTpp|=ӧxt}/Uke <n* Sܚ/Tw"u;.GBo*Dװv1G*eYZmx`΅4|'_.}`:F1;ss,tPa"Y./;t~Joۣoa1OWgou)U⹢D0YzUsNkASDV2TaF?]`c?a=R0 pNR 0VqPkq:(ХïX؋ȿ3G?`ju5Py0F^c`+RƶGqXcXVEyGBwV(c4KwojnuN'bː?xH$n;=;Kg˫9-džtqXǽD{.՟?mVv)[Ad{ 0?u6`?2ڻa##7:ģ8],lӡ뺻2 w 3_[ 1F =n?A#x:̢wRqu5cA1AJƵa)>[Z6+DW'4a3EAy_'r͡ObO]_kV@#0:ua^JY<bygk}#[ĩ[RW{ X G-Ko9=ȻEkJZYhѧW VrcGgk]E&D[6_Qh#k"~Ng3SM -B i*$̷ JO+fY%1XVGl#06IݢA)t%| wIAxf,%ɢ7ې*А1v+eGQTӶ";;|,NhqgMBwpkBX b& Rܡ<1\caK9m2@hXWzT_+:\Y'+#D^rp&**xO,xVRfl gt+ W't.k̍ _:3X"D9TW7w: q>cO][>miZD!4ĻP37C~X pJݥC.Vжr3|d`d/ bv渗'i}Wk1u\UȨoAѧꟖGcaôoӂ$籹NSvXlD^B}PL|=ɯE__Hnc<ٽ p)Uc=>PVm7fӬ\μb+$`R{姰ƪY--[hi,;2]RߕTǷKC}(YP(x_9 ]r,#4w"smR6jы]W,fMmBpC bOXR)p(}[",6RRS;t=tC#LCrӏVxpA;{bgi wzo?X Rˈt7.2[Uq;o~PS@xeNk3|j.PemM3uq"q;2q1;sׅ]I r4@FkrBlsWYKZ沫C]Ѐ4?֡ǘ1b"k#2Jx>{{(Y+o ]iճ>tn IVE< 4ғ|lI~ÔǠ6_𿓠 5/RL/$"UQb`➾2‡HH俒e FkzbyK?6l O{1 %Z D00F@^#BgĭsމzeIS,7+㽡iJ\; (Y~dYR!A512}|i3s7B19]Ng_7 ѭWy񌳻GtHJj~s5I5)z7kZFXq/CBN4O/=(Կ0ۉy7Q'Zܺ]ejSZ:+]%A,٣qɐ2; 9=(ytF*)bR))&q)$< xðW4#kLPz=FLb'ULW@^zH?jj`3cġb Doa:jsȩXx%ÌV /1^:CCjҤ$oQ63bmZmrʢ t0 V-;NjwDt.c[s!Q;^ɣb6ؖXn3(1+rxL30tZ^*8r5mb V}Rdh2Z7o| _N쫜7R##ΕdN;{jj,_Cݵ{- |݄Cuֿl* <8kJՁ&GﮧB⒗<鐯sK 5ZŇ\ s<sٷ~v#n"%3a|OqSZ6:`I&5|1λxuGm8hk\I,ˢ.AH.DsCa=7![siTUNFm )|1lTVլy׬XS/Q@uSHQ n9?tt0%x Ƕ0}AWҢR[6H5iîYCx݀?q)[l< Pntm4EB7jjԂs܏FtC 貈-Ԣim tV4tb'}~l.A;7In ϲ1GKSv#ȱ[wJDC>ndERԻtXK2d7u6C׌V43H`+E}`N5$$Oh{.\<[FgD{Qfn@QNأQst[iN_O@cdh5,5=pfg*j+f/d{@$)6E&魩\Ip| Ҏq`!9v|o,i*nίZ2&);IGr2 Wx`+hM7TmB9kHz}L 11Ca /~9LNƚyWl<5YDw׷drTzKJk#llXek"4|B'L4ܕgw@ثSSzyK0R<$4%~5W}^ԅ2{H`2C.e4W Iݱ2G\ű,2S."^7i iY%l+0pDd:gehD~욢S4SgHsQi6tBȊoGʏ-.I!l7b5 ? @ Umn*I^VRv6IҞv*Z'^CkdzW5 S !? H1(=-9mS5߬wʆzqn|{MjWBJjߐ25n͂wfJޭUhΧt+ =Jc8n^"o"(|C ,l;XB+gr-)(Z:Zx|f?iRO kVjAޣGK ః=/Jl Cp/:b ?BIo81AyHr7225F"ey+W{x=4={\Q?՝s ~UfR:n58%^&\.^^nblb0Z*>J:.dŵiȇDк \W(Fa9O=3>E;zu!_uskG[75kf[U#/a3 J?PP:+jȶ9֘FP K̚ZT|po2wtȗ5,2O7fHyn4B3)_z .؊8렝NiHIނUNAxBR48}ж^)d^u124ۅ#P˰z‹3++f-)sRWfk/h4/V]9XԢ"rMgFp/@~E_2? {Ixq#p?`CGpX=n EN9"WxMtAJ2m l %@3b+4JIMD\.Tl8WjK tx,")s *JGg o; ЖrpkFGL`mD9OF͋>i2viYsQB-7'=xb_1el2ܭ׸¼ۭؖ36}NDpc *$Ƅddx֊s[)eEӰ19-َm\E:-;J[r%ԈB^Ȕ5"[Ƴ,)tC蘍gj 3G*uz .F*,AԟEGl B# /*w9@4p볟Hx0mlZy`penӔ ]vsZ*qBxJCD54I K&<%aSy˲ߩD#*m3 `p^3ס!Ţ8Ew !@׶*v;j`Bn2(g&Љ( jm@Z1v;1t^ͯDڤ1>UqdJܞonGO1_ A ,W8-yޯ)RO<4 ȗJIٍO9??,-PN}2td'Fѣ}!7Ay=oIY:җm2]O6/:kS~13ih6V,I qRzrmH-7W4ho )Z [m08HUa}.i"3ow;ĝ%`Cjtmi9%:H`W ՋzwnLX{\ȿZJzrO<!bqjXCN!uv7 I ~t6a $ə)pr1`|D颶0SZ8ÉM ,C["ߤ0OOe@˰΁BoH{+&1RP[/J/(U,YljQ+/@:[L`2p웉8 f2ZwSGhN&Qc()<8/ç,c̷Şſϯpv+4;ˑ3Ϩa sXդ >q'OÀ?p[20$Q&I$dlT^=jɘڱ5_8n!4Vp0-&;x u.&!,mz"۞-~MQ_3 ['+'{ܵ^0xPɧ3qDUnH p7oŢHaI o-r)"/>&=lAqW4WU"iѡYS]8D~8v~#5"r7S&7k~}ʁp"jzvIޠMi&ƯmoNe_U Y%uHԧNտ2{$}WExߓj\0 %?"ѫ8d]zg"U Zf865dq&L]P2~#7mP,Y"sE '9+}7 qÄHt, E.#I|n.0A8q| AOꉚY([ /+)*&#Ha=.{7`1^eN=\Ɇ/ߌ:!5X@z9a<{֖#EPep<fBuZIF| 5`FBSң@k(m,U2BHW>l[ {nߠ촂+ G^ureB8-ܷ2"IP%$bP'ELKIa3;9O֛ٯzOm2E]~?Γ"³E1ҽD)Nxa !W5+Ivf9ů+Lg=v*>s$nΝ0ڸć"z{Q%$FwhvY44b), duB闞@!7swa'GlC͔;.5^3"vm% iaG씓H E %A;C4CH&ٵ++("kVҦՕҺ#uˆ^\mP$;ĎQt)ysN +mB e|ih+Km nG)$b4V]CYధЅtFqڂ g

4rVV[uOS_C#R6]E:n$AW[,]O6Jh/eȪ #D}%59 hu9޹- (lgSמl-%/Yt/5In5G;"̍eLX6|c{PM-g %y-r@\pN2A@*A[8B]u-(-˛ݩʴEp6(?Z&>(W| 1Wv>x D?}| -Z6bBA1yI@W jZ'gPFA_rt53Z;}C0wvZf'j U)'t)4:4x)bK˺: V"@P=hGٰE,Cm+g %$JFvKLfv6z+3έ +7AbgIu½+Q)TM)V mqHZmoygs!.;04&'T XuQdc.ߋiA]Գ8cqhb+|G䘥,7j|r^9l9v Pp`Kc`l;~Yܣep0'}/pc`E@ZgZvsI UC#|(P ̬dTRHdvuòaf\)[*ڷVI'lfSILEe!upΤ`7vsAMiEj6koAfʶz W *$5q |y'V]ZG~:z{q{!Ⱦ] ~aTt5Θ$e5{dys'ĞyqC yQ|jMLw_ضy.u5|`F>(L+ { j$P#ez1&b|ȼ'arVjFukܣ;в}a ߯9Q{B} /e=F2,D^(m6ziuO8pGXcI},uq}dH\ymȎ!|H|zh0x|b}R[c#ks!`.+*ͥ\ȇ1})%ݟϩ>^pzVm ҵ[p =YXbRy5Hݶ9t1naDŽAftrA|X04᣺Hq1.vO\z8 غNop,[l}2+X;b6ZGK9+eiDug( E^)`$[[@~|6{R7猯]lBiqKk$APA-؊9A`,DSLv~cbۓ[sKB &@6Af3ȳ@AȢ$=aj&eW{id_'t8Ox"aWn-!N<p%3@11/ vv|ja;92dŽcf'pE)/Tb'7#S"eb2>A>m2:99`le(CS6)(?_jn<2W,D+"Ru\4Uf:'p}̰ Uɵ֝\$yҳ(Ϳ7n^]{}x )1B!=zįZ5ikn+QOԩ`~pٟiRjoop@nbҚٴψFB4XfbK%MP~YZ|=Q,ڠ謥e h vU!LQSNmA &0Nj1e E BW`$րoTnPQn /*c6*ڲo\ $+ 'Yk:߃^Z%!v.j;89Q638 NksM#'3^Jb6ړ[fQPǦה4Jx Muv $mLbN<҃MLVZ$Z7|VsLaP*5hn_~ZEANtJ"j ŷUL>R^Z\bt]Z-gw]>aGLc8?T' 8sS2I"nOOJ8OO%ŀ1'6@~UڬBuاeP$׫*\愞[Ez6頪BwF+;gu՗Z/5 ݡHvM PNZ-^m <3җ4#όjH(*-3M4A0U+fB΅ګEOɘ0!mYҝG0c%+[q@BB&ȖVa2%}ԩ91c{F*YN[ 侈_/w؟hHBWSlUភc=olFr!KAPu,V_B{,j^wuP*9/.JGt]U0;}t[ O!E X}fRD #ӺP3Fb4p_+/2w[_{QІF#YK=U/lOhzfCΡSU+i"TtrwS/,G tf;-EꌳЪFUHOzVo{jD1@DI//^J36<,lP5d=N #W6UGޱ$%>ZKw`++_+űKh6kC>y$CIxaˢHOX$Ep!%黇>s'H]&fY[KI4sIok{ԇnz o2M&Քbǜn6с`tQf]4il}:=:մ+/`fdxTThy=RQOS15vƸflUsƍ5M )aZtυ澭$cHCorC%.X:Q {k.jɣBrnOZ .-`/.ciqp3@EP%\@5D5-kqB^.r0/rE* ` eϨHϜ*+>D"o!~Xueu(Yo\? S'>,PN|# ~#e%<`׀!N8mY'Fi68ՠ 0~_tJH <+̽T~3,[ލwr14s"pCOߩXgѭ)ZnO59DGy˺R2t\z aYJ $Wo@OmټÎ߉EC {˘T6۬/i̤ v=f03v7bJFsk]ԧe֤ /f%y !r&Q Sc|0Cyb/HjƬSN} qw`<>2WSlz%M#k9jdf駏p^m}\:aI~DYIQZeu?OK%Ө*w h]nH{#AmŮk DŽr9]\n5О9ܲPK;S9!?Y;Jc`Xw-hA͢7!\޿ t] g֓R"27rϷ<QK) օcV3jVdq;Bb2('@+NܢBQ窦̫eߗ!pݰGYdb(w9\ 5nj$r6T8 (5CMl|}G[\XS$DŽYİh@,}3lWI }Zu"x\_9uz3x#O C-< DLŅEЀBuQ8Y)fQMKpLyqQt-X _kf4֤rR.{glժ|թo'/rf|V${םHx.rVn|i; +rޤ$ ǨKp`CPaآHWB*B"[1pQ0.b9qL6ibpNUl{Ȱn<-mїȌmI^@r: <5p  WܹD4eEm(_la !-+")ZrYE?tHk bR:2 G9S{9OrСa-9[2Ɇޤ !ރS>vVXqh Ȉ8sUG$Jey/s7>1 U' Gafv= 6|ِަ'%u. sΪ8t|wD\$󚝥=-KCrml #gX ->Oj<ҽ)ps[䠴}5MD_kvƽۢ]b9D#@ b6fx7!Np3. zכoOcB&$"T-IɒZ :ٍk˔!&+ؒ hO(Tt`( R2*/$&p!ApĎ4̃HoȾǔh\w s2fdDi=aiu#,09*գrjhý"E-7!xEB&G<{q}gFdN $5)-à]@J[GB :]폃S62oD>8 @.rba8uOCR?p|_ܑy-D"bP6!&F}!3C@O @v$*y+E3lڲiPTuZJ'PB'5 Wy;ި-5]Bg+Og@7M>-}X^%hlXzn[EIYUlFs%.joto6,6k'.Iԛޤ6X%K:f0aj >z_F8FZU֞u sJ#(W>GQہ[nP+T{w;?G|baCE7Rػl KJ Sf#?w*b@&{#v0͋tO>\z:FM+M\(oDC ~HJ^aKlr`sfϥ:mZ6D7iIІ->BŤ >Ȩ(|[ ,iUܷ'!zӝ%M!c/ ⊆tK8$lbyj?B'בhO>X,RtCT\ /|UJ6#ͯT+mqu\KpxrDWB !b R.Jn+$J'랐$[` >Y63$B,_=_[BP̘g9gJQι rScx}yFa;p0 ^:~u-ֱ ^Y }b[  'jjю* C@ >VmqꑐԿOgMHen rJ/Ug-D[b+wRN?{q`?UB'*ځP:3d$5p*ْۙ?C>sCw߰jh'eYsG7{\Hq߄+x+5ګ6T?;#N'\2x*I8h7!AKQr6(Bv}R6驸y(R ʹJ5AcLE2m6.1p|XCYk̠ ks2Lt4DN D鮠+ 9-{szѭS|8RK"0. `]@)8V7Ad ;!^ʆ%8ХhA!v6 Ej,X>֯DH3518^&&@?]WxɒRc  }Z%WJ)hQ**`;kQ yT_=s`_i!2-G~}!:u- }֪nI :dg /8w̺+ iNvF}򜥌}xbV~@ϭ~p{&>Y}ihD.#;*ŇV`>H @Ci bfQ]SOo.Դpdg6#6)r$'mt9|%(총CT4Y4VR.U9[aOOK$H\SM! ^ z?D:t#)e*lNB]nEQG8jPrz)wdL $9kp >ps-dW89fri^fdtV37d\5)p5vk "kDs_*tp?W_ (sc:`XPw[ܭVLkM ԥix;  wkzv a/mh R(ݯ\ҙ0 D69xsddIZo$:.哶J _o5NĀ$?5bdvv=Zms5bLrH<ɫrbZ݊%Wbx*!k,3UcgXr[)of ,-}pAb:Cw.йΊC&|w[ztK[/ɞtf_u3)V?"፪G;oފZxzHsڶG%TqT&W~BoқBCNB,|5pYN JL9v Qo;ЋZȄQ S'-f 2Xmo$Y[Wp8%Yb|VN+ap4x[-NQR% kYf4 :1ֆ^Y&QБ@dg!y~8yULī9[$ ݁&sA yNhe%o0ⱕ 1#r..inrS!@$uvebytĀg'5ah #Qf_W2}$5nSg2.yuA9ȉD[lg收mEnP#qpn!v)R6^ C[>KDy\Q1RkTx??|h(Xlsj UF/QU4efZÀ27?xEdoBg8v9Yx9akvRdo˜,xevHd9ao3Pgw-{2h$!OSNصFM=ěբ[ŮNZ@D!(9HoTɆ{dk66EѓZ'":#q yjmuX*tv`}Vaokɿ*-kpgv\) ͑uy?62%PT:Q>Lotm8 "2z?sgb\=DS( 4[G.uJSIQyLRb>59yR?ksbRcpfW_S3DmhT5rס}(MA2&ʉ>^Y ]ۦ4hg?m-!'»T"BCRޑfU5Ӂ4 M8W@;,&HJd0@jpawpP"9ɡFJJaT?=9)3 ,lͩ {0ЈYҷ鴆ܧ ؘk0\(Zv#y]B((FģM|\D>wd.GU"]`i" "TXNWX9>r6e#Jkdm;ȢKC;E'E&sKce*p0X17 {M ǭTfK" p?wʜvSR`I8Q #NsY,IM =GW ?-Bm=pU3 g}_nڬbs܉qJ>1K=‘]^>;. ;#ka4PK zk#wYQ |uN177T{n|*v>9RNIj׀/ _u{iEvRcV/iezkƑZE7MI?94ܖ_~>q=BzFU[84PϻX GgG!3/AZ g1Ky7'܎O}cc(G8IqL_Tte$ H͔^OhɽuT+ u-{i%-{:1$8Ό[Wx2U:[W|boIDs;Z{k]n3faTpͥDpif4qxع6i-YWš TYzA^6J~Ot2KrJǠ(e9,v4C+!:tk02Р7Z?{JsNjPV&Ig] yLZ",@ KhM.n};Ãl 5%y&b͙Z& !P#Scxӊ$Gv=j n.n Dl e;:]>6QCԔVdzG^AC9Z/OѼV]1eOl9$VbͫgfV|ktK-q"s]i^L0c~Tmx40B3[huG"&X:St ZT8BkSɒO1'>Q~fڧ:>}ӠX{w. Y1+)/p@0TAיƱo.#*-拒, 9z+Y"!X 剳(^oèPoj/[%QW" }2%^a`B%-4Aɨ8ӈصgmVǠ]N [1Ѿ[>ofc_h9S[EKp[=T/[(C0>6pJ1ʏ>> ՜;yjil $쩚4lND{ Ncԁª耿-US%Ȉ>H_52ј>6GHBlnH}gV*+#mc"ȼU@#7A?u1㿕-?>NWRd7yAcbRtH: yAxz489:F(R 9]&\3RKR&š P*%=_i@W3s39g* N fُePz촑x%#>N* _eD54{@̥8@S&slgLUZxMҐ",(zk0mJWL+V."q&sC;8ƈO.7˾x<9p;%؟>p̅k얉OŨm:u7DĈ0,%2.,*%3Ǐĥ|Cjax.`џ O6D e("Gh5]ң'^@+y3zrLRŤ`U{ q89\R>u*r^?Yd|Q`kA6-~W]TrǑ7q}S֣\7מFYI¹DVߚ/YӈIoyrV v{U繪 H -_Z3D&~q? ݻq&w MFԤzW7ntCft`٥"wF_JYl!6 h2{X.gXG@&J4 ,®gvu6SH!3& Q1e_5RK[kD$@Y23T*QᖋZxZC 6dR|"P/W`DMcGk&+/TQvՄlK;̂ϰ-oN^/"OS[+iD/(i42^#u9@(Q0&.pv[~E0Z`""@x&^vB <>EsP);T)jm a7߆A˴UyaށX,?&k݀Q̲cN^QĂW!J19W`脀dCw (e>xXie [ٝWDy=E nDlf87CLm$Pꉓkz9hM]lcgbFAczh61oq9$5RtU=P۹c˝c\pyFǧ{>,Jߔ_ &ܭ%Lpe9F/}W2E.{9{2bh52i"+$^LLc8 ޙf"l|Qt($0}U.ޫgh$&mBڻD5y# áͳvc1oӲ…{k2M7;|݆#!Q6l_6チ+Q33%ܕzOhk uHYB\9N|O^NAՓ.|z%m#ң:9EH:jb7"F Jsudyg>S#/Ll(ĭ6D* BqmIU׍y] ay`tO QR3wc *9S15zo7 `Qҥ&ٴ3gP7b/D-itRyd4ZKQp_Ht>-e 6?l/o;Sw2m_I HȿHeBOkE(&Քj!b/iSxfP!eqIȬmVtHV#7K3 WFy~ՂzwG6qsr* ?a?% R%r]yKWq!ΰpږYrjR \s@"~hT'@y ՐV-pJt!!ڮ@:rP/]xuE *xgo"{NO]۞c'`TyX'OlLIN5b ʣ30VE&,wlT'⧶!fMX R5Q[X(^JoZAԴd D"#D" _y w/zΉu^դiAjWdmJ`T\";,y t+l Ɲu fSwÎmfuċIsJ`joɹgEjtΎi֩Y]mChdukU4}\.vʢY~uF}3cnr}L5u @Op^ }.z|u1$ ۀ&,3͚dp_vz)҇uoy uXKL# =`\|z0UەpS5*>R$TFǝu9e;o+e~% Yw]I.jw;TDc)9PPJ \! 6^[EDբ%MtqҶ9 rt4"Pk_[Y2Jk2^=5D[Nuh8„pj'lQ;Z(XE4?)4*(Mr[o/CH'إ(a$~#KXo#N~(S֑<0*2sz HP@0G(X<nkߕ$šh;Z/3[N$Y#y4'\%K~ ς,Aùc+&ޥ._MN`i΀',}A:R\[RGDVt.fܸ:{H~^ ċ 8b.`'NL|uPaz^zT'Q!cC3bGt+Qo-\;uC*Ǣnims͔A_:Y=*sM EQd p/tMoFhۇy WwTA]1tBcRZLb5p֑hR3yσn4὞pkey@upd^X[Uiү7gT6h̨^r; Őd iz蠋CrdI̲-_m`Њjux |*ė9Y? g^nASaԪ t"pe 6}'Sv㌚rNӔfWƿtbL[3;%{lo7駆l@sU +7u9T߫J q&g0"ʈOzI֨tGtwTM,(݃g\j6,gj |!֦BEX⦲Ѭ̴eti$6 Дjb[˟ZsC(H6Av- $=zZ.r+ޓ^W[٪cphxԇjo0rajlnKQѣvQFxxs4{T -MZ>]_QNa3KBRGpÝBgk3])P+m@[f68p|سp(`@ b[+i׎N+# -~z"qF~eDxpū S^{%:!Z,/!Fﳫ #wrEOrm"H,^,Ynr$vFt<(﵇#H w0TVѬfK&6~QdFG6$I )m娓|ws_yRmJC2IjzŔ3rEBL"Ӕ% | 2YV;zK ;Xc#Iv-s$Sa4-GH(67ꎼ u1.1ƏJ>\]\ xB=?>դՒow8?8=+ (AR^b6K<2yb9a`l"CtFosUIA?'4~8E%e681RtUAYm :!(tb_dOHVMh2FkN BbjcɐlR_iDSv܏S 젳Z; ( ;vʚOxS5\LOzxqH~F~:9bi/DKu fwQP'AWSt@hxl0 01f*f $+ےj?A@ z(~PXh\PIoV`I!kfΉQguV  +3]ֽzs ͫĄ1[oOreќ#X'w@$?)V426ؤ,*F^Z.kO`5(>Fo{qV]z~OYjcC @ BPv=n3mL 4}^}pSn 2r@"5F1()4..$0P#>>!˸t!l >8h2N# ڨ2(,?Hf&lWq(EE)42M{CC/ac?6g BK\,,hIxRz(=`- LÒ^U]>u'dͰ8Lg{׉u@Qgufw룀ai / (\&rw{dvN[&i)(HPcKG /bLC,h9Nmcag~&!yRݠ;Wʈ6VvIvbRwB\:c<;h1 }!X [ʞ"[kʸ<&U Ѫ-lsX`B6LaP?PD Ϊ1]+ac"Gb#-k+P@T00N{ɪ~xDtH Y!tG(!&T6l؟ۣVI ;3hk^^ο-nKZv0>yqL'c> ˨a$QTfǫ:7ъ r٨ྜ/N8;+DJY'|Q>^'&ZK`Xm9!AƊX8CѮ!"IϪp/ounOa ~2Mr@s8l|lgn/6le[&CE &;NRVY(Y~ک2e>2G!U +(PG::{ydD `ZRA~+oV1r܀vyW(Z$e[ J4lo5o-,z/߰ īD=b_mJ)آ#HNxJ6miLҫ݁_u> {r0&'Me9]`O*wIkHboښ*E62,ûlXi)"F\rĔgfj-S\` 1pil~"In?[̱ .tRH2mXy]F}I޺k v:ٻ7/=2Ԁh0;-ۅ6JNѿ&x! ېu ɚ%y0m- =+r9-;1޳Yw}KS{ɘ1+3@XjHBe[:S)g`=O+nTKW L9RX5+'HByU!1ҲE9:/(ǽVF_ث &/| -{%k8J cpDz 97Smq?߇@#`d2DV@/=bC2f_ LJY]rMꜛΌ:;)VҼ7@N)eYl&apW? :/4*q6jJoФxnHgiC B~1 ;5ְX?׬l5knքnqӐ(XX'da΢I風Z]75> \؊Z;Q:n뭑\7FG, MM%]GЩΫ *–`sܝZO9Ƞ5_nH67BEAG ;..TҠ ҸzkI6Б+`F`P' ZnDI`i>e<մן|\;QR#w_9"ZCǡ.Tǟ1)wE>/)*Z} AZ^V/ ~Tbcf {(Á9< 62?_tn;k?aRփ] H] 3h CmݥQ툸4s @CTX!EAUo ąF5|!=nCa؞ړ% _L.[47X&[utX-"9@|~kK$!| . H_ȉI(ĠGIHm#MSmt)onIX}|OR=r5@aeTtdo7=&~,it0߲c,}.0÷TWN Άlԛ Y<0sd˩RZPө%I,Bpb>ψb ~֕ba8nQI5302ʧ5cK$X~3v։Hd]MV o"euH\7{kZuX|z/ ~Wa_Ol Q 32{E90O$P(ܚzv( Ħ M}DIfo#"}5:,D!|*.$^~т3̞NeB0UV"hM!+W4=~'pcq-MlD.V7ao$z *k=ttq f 'y2v]yL^Gt3g,ti>6")/_`ax_@t1LJ\F$S(MjOvUS: Yǯ`5Ŝ"FﱏHAͧz\u[.8 F|{0ŏ27w  V5U9vTk]ј伔UF#G,po}%lŦm&`\[C@ni\a[]!5 }+A( ޅ `(@W׋esdlxvʠL\O/$ж1Ց/sBS28OJ)9hB 3  )osǿӢ5!uuHn}ϊ`AwMe+\D97!HV2 XE߃` cWGJ[qe;x,a݄hjN; ]<`B},7waJXjϸl0m(*RQT-MV-|LiD@6"rmtD`8(,}hAӮa)O !*\}t9fxJ{FdDF9 KȡV&=:N{hrtSt"SAQ-DFQ\"^бifGull3Sɟ[ˊ-|S Hy!O>=xꅤw+Uܺsb8EP}]h MF'd3GN < v~/>a]FHÎsn!5mj0|9#a^T]50Gj<.ZRͣ삟4Qć$rq[#/U`goF 3 o'@f+F}Hg&q(4ڮ3"'e_e,;,v&r&S콊/>{Xf g qy}1ߚ>^;n:Q`sHpGѣ`s/л2Z^*3ιh qR5]]kF"KfRV1pӵPlBѣW5<; % r~&X?G3_r {ه2HrLyuⲓϘs/XY]T$郋]:a NF\kɺ^O?q6AC f ?׳W7M]@5W}+ 2%lU 'zgXmJgh`x׎@33'%ՓLGE_ )T]0nY~c7˥Hwnp71Ol/|a 0bhkY>,S6᥌Jd;`ʯ !suJ]>C Zҭd/[L'R`m+$kع :#rhb}أ0Uuuu, tOJjQYn( k?xVfƴ2HϼٝSV*0ălڑ_[cB4! ND0?!Er!92u4YC.e=CTG'Qsdg',|)1;c{1 ]?o wpjD1Kv _J~L [\HÄ=k~ҝ0n7LxD_.׺.1>ʑsR^].)ԂOhOt웿 O `NZ??IfоǪ0iGm(CF/]8ԩ'`b 3X7h♇djE  .PY[ @SO9[HaU!t'9xYUERäs ^j{b/Oc5xUtjhrkи@^ә&"~BK9٬UBQTL{ǔz/'_cgbJ׆6*9HZʵ XT,|pKvB _vj۫>nj?7$⾟ܖT͙O!~e#,g}4:z Y&e9p+35]ǡrgˆӡ]M$ljϨ5W`BR&V*P ^и=+2Y'cN`c<+BVO?7D6ؾU7 JZL(Jbx)%q}*m(Q,-g|%3jܙ-HvGɾ:?9غܰP+Y `cm,3W ]N֑"r^ja&tvo4 "LxoUHz+F@1hJ. h, .ferɾtݍ!°M̩fͤ,#{qs`@XkF=*rf2)~ s vu#v+L4^//̤*iVI{hDQ:6uv6t^^R9*& ]%Q{}RG5RFyp˃qWVF\&e .%'d,^Bz ,P`4( i%=R4ˆCvфx|L}g71+5o,bsC)SNk0o= 1^"ޕ)\/rK#M!y`Kʥsq\G"zGzlgueZr% c\B?ơɨy)%s[X%Y !.wD8Ij;\>QTj_;@v K8`b}I-@oIJe(>^ˇktm6I l>O_vH5[j?{"GuRБA4"'gnߕ& z>$xl`PY x9+AhӹVUæ\ՎZKmT,YMc 8,tMeẗG8SMnqcGOʹXy]?;X-4 &6ؙX0" BtoV?r/"%G5FV3'DjF$eT RqM^jJ|7`z .,;8&4d9pĜ(k # kpkuij2^"x"_G a}2~~FkPb5xѪ،nGLY>HhvxcuOgMX+B!^ L/KV9IΑ8B]huN_F6'1jYSMa5glU6Tnm$ ,*7<,ltnϝMsIpIoO[~ 4/M}Mmah(1 .MNL3=cΎjjC WlIb" fzf(D|I wX`dΥ ӏl(9>|<([n%ZGyڴj#i3Kd_VEP6DgvT^'XdTTT;DZ<KaL(_j)CF4aNFkO?m,%`JW9D[6('V{=> PXjԅ*41UcC?o*⢿jwHN 9&BoVso7QG_G 7TDq:9 g//v!{\ 15ن!;CI ҝ>IX5hLG>t.3p`xCKb!TN[ *FZsV{+.4*:ׇ7cE]̙>gm[XOE 3pb4oRp46 _%BCo2T죕)3(gUtfYY6d3f βjt?TK0܆z9Æs-vkyo6\=.|Z tvq6S4TF> n7/AsVo}A+2nAJ]x)'|2-#圫(3^Ќ å)#~EM[qvY>υn(DM6x??ZΤ)u4m+M݃s}^rRLdӯ +㆜XEU[STViKHPi}t|۫8-J! fR$A=9arb4.s聉\!α-CLm sV/jԺ1$,:s$O _ ؁X~u'Ǘ;8?G*Iڰs? cyؗ(fhNa˝. G"/L&C X;lڳzӌ#6qZu${1x6b4;/uYK~kHB^^,DF'uLMqq- .zDޡt{Opi<޶3(5WB/OQ;ݭ9ʁoWϹ;in? i(RO2trm]3|E'QIBW!b`ݔ;*ː }nfzSRt6ZE,.}Uƕ)p!Jt:KwG\5pdG-V5OO5 }EtBF=6HXKBɊ9RC Drt[xf[mfpÜ[rכmP~r=7e M**֊x&Ņ bF J\uTO.d~&]i[#BoV<;U2*{GjvZ-q\2Sw }/./#Qa5:*Qk@ js7&gL8Nƹ3ʘ"a.s/YH;ˍᵏl9*U+J~H+I`}Rn*Ό8[v*:ԻMD@Ħ^ց.dpņ>M' TU |g{.aR c?hg6{f )| 81vCpi|@s]xv,郑O'z]`UC 7ԝ̦@hxK"E D>PUZR\uFi-݃srۑd7+kPX-ٕc2] TQ\W= G\M4oETxѬE,(X^BksD K! פE !#'UL4 QTHJ?a~G ?28ՏRlzt }<y"w\M";|m&Ty_y M# ( {Y@e2xyRoZѳ,-|_qóPy So1X T;(xmv,T.Cr s.?"'f?N  _Op{G3"Gud}73ΚlbLs@ EEt9p$Ltf7AUIUu {7 7,3"b''dC'~#bf&X~+ՕnKш61OWYXL3Wry^%%C 2GY*{AslYGj4@[ne1wOYi1q1XՇeCm[b@$6;A ]p9^+*BɂH@(([jFΊ-(gmXP>u ̈́PPi__KR?\匳Kw>8?ĺ>@<*M~;d8D+Lt{V+'dq nZ1N}רK|yE`;MF]ʹ|-yT!B؈{oN?R_r=Tq<\Z+>f`[/R36O {O)N rY: \t'X}OvdϽE3ϱ D0ZS9A+'5~y '=D+Qegޥ/}B wZMGrz2-.M:z_-ząGqW4PJAJC_/d [x~7znۉ33CZLiODp9dQkF^V\/x%ͧ@)|!9 {0g|Iȝ 'gVbPi2Qze#Rftlr(L(ŔZӭ:Ajxߙb CًyWYMKrX>h7kOXWF} ki.橯"i0IbyuPRp u-A2` ^E By2ZJv}) e^Rx;RY9éak{kcF8)11PE-6+*_?j1n{ 4lO&RH[%x߲)W8 ͡%q0𲋠J$&STx-J*Su+jSjdp~1]Wz˜7=n$эz8n1(Vp}} 'f}a~e_;W;Dx9tBC@~@ saATffoLZ?DY6]pk{0ȅ *0BVؑwUݷRHRL&rS՟" CuNVaE;Ҥ(m^E-JXَp\^깾qY?o}fJ]җYKֵDm7]%NN3*Y\:NQ6Zu6Ys9$^VF^s'.%t`Hu 0YX8U 6DnƮ#\L>6#EΥ&xgԲOa.HϧWE~$ H%Ev2Xb~g`fo d ӯɠ:oi~Nz Β/h@^mP q(gj=}q2|bnrξ1_wPݢ7Tq<w&8_փ; F(`@Lrfy uO*$?fVye]h["O#6V*?kKܐ6㓨ݴsɋ)J%E-02uo7ZuX`cݣT{X R6P5O0Ec@8d0rΔ+h` pVm^Gi"Q{S =d \s|xCtVΓ0mPb x>6J5O,, ~ɟ@71*y,ȅLכځ9S0 M߱ru3n* m4dG0s~fTK>xHRSYU9;fs叕i\tx4VqC٪*TY`=`=.vfqZ{do7 Z,tH=kpQZG /0Q:"'#guKu!OcvIX<;f<X\aABp3e{j {FVkI` r"n޲͸Oܿ ilR[.C֞ŤA<C8o}nYMqp޲ dK!4FWŗܬ1Ot3TJ+'aM:יC Mh ~=Ep\Do\ v3)pqUGm(۳ja7n'X; yas f TfV*_u `aVZۨY+_t_eeDž.2 IP/U=)ɬ0QgV|ߎ;>_vUdW?kn+VE*y/Cr[`4~=b& oe"4E0Kx{EFYO)䲮&$ՀY2,GAVyuTq[y)Q3L:0fDŽi 1y %eo~T łS0k qz5<=N΀ Zj?^! J%VfcnF$ЍsFfM ڸNbzj&sn.`\^{n Q \} UC2q-3Q^бo. Y6\>G|B;e_*S^S+w5fVPaql8h(@RgckRM7N I_+L✬-﷉iTrT^bs?[5M%YUրqoY\4^[OBmW}΋6|dD!'E/@@r'+ 5]WJ"}#IX%R%@Hq2h $n4aսmB&ccԶ={bz_?)IM-Jx{;;e+6쯩8sv`f" hZ^☜狪% s0?Jrm,NKрg[c/!7^D|էD89K}M͕xB3z3B$Ğ]Wkr@-*Bu@F:V_ؤV,],EmKNk$,U|3Ue[chGw9M H&LI~ `É6@Bܡx!X;ՏBiy`wr \iVR'Jɐc]QLFwh]kdg8jYQp@샗m (7#sN(n$&}6u$}* {0yqp yܯ4Z6{6I,92wKm%te\fl]V 'M#E\Th} Cm{ݲJ^jFI և *P}-y{@jշ/uܩWlx?(¾ >XLAZFm˲b/̓zeY1hnc+ {#~<_e/VʳDP1Áf }ŁӒy'#=>_Uwɢik4+KHfڄ@Sň߽1sMo¼ؚG0SP!xՂe~A5ǎVw^A?(톶X_xSg}K(?Y׸t[PL^PoSL;<$ZP1I?,m }ӗ_JKOJ!9о wDz^ESrk $ܢ$I.7؛ B8)I, ly)(X%QH/H`c\]0 _$p5 `Ԃe|ލtR @ {Ig;ՄYA#[Ku\iH OgM̂zݣpu/ qt@U@k$=7PRӷ94 }C2MX^ޤ/ r屾hA-)K"H_7V6_GFSa)Rȵma6p@E) m!icKe恅XDQ'զbP5&>T㛔镲kTz$&maaرh"T\(,\ YC5N1Gpv fl@}n{sQUfCWG?9׶JOXYR&#igTMYNZ%#2 ,Nł2˄dC\{5+ƨn1&CuXke9ޖ&pGn[ԏi;5… ʂD@Pб@kZ 5A={U&Wf֧g}:8 uT |/ؒ59+_tە٥%z?KT뫐ój#V)gfye-s?4,-0~i#`IRCЎV\LbUfdJ;B`E~i?rwp +ZXW>ApH,2r?1E\Lt {Ìq7K  l>;Po~1܂~A57UMd{h;q%Y˥T|Br·9pd?d;]n˄y-L:snɯ9/_rdJ/9sDd*қ[f. t(IJr'PhePؒJ&Ovb"&0y-AQKY;Pc O|f* 2Khv)H pΝpTN ͐Y2Aq dk6 )l&ΡfM٭E"KJ+K hɢZ6Bgh`mY7^Ȋ ,%/}}ց>skNʽʉ=X391xJYwzi-Pm o_Ur"Fld!HnLJ3WN][G@mAJΈD@¬`_Ow7^a~LXO%OJ,9j-IɌRM <VaHRlFY!IUĠ6Jn>S dR:\ hsX ZDan]0pvb}V? h i>)[Zx@'9lbNӬ9;8*dQ8>=.;PW#k@t5N\Cn\H$[Gڰ[>$ ]>&>HbT)4rl.ߙ$g%=S'pvN0j(x$Xx{YXWv@^P}b\۔jup>>!cy>+9NgP09BN yLԊ""z3et7KՔp[&OQ$#煌hlȾ΋:tCnΉ*//Yq*}ڜeP) @pFYpa2gٺ{gLlbG4/rCE(]X}USB+ ix([ؒtɒ`i#/˼`97-jz h+fiS 5U}|Sx?ʤwp KR_kTS:['u }1JDal&j""ITwK~$zgq y)%'ntlڕf^`X褣j~yr 7:9&+Fc0Si5\yNE ԠեS=Eaݣ\<fC )+Nv-L{;˯ O0lVG{Su"0Ui>?glp2Ъ>R(c=/zSmyBԵoESJ=w`J?ZWHiO u%\3QaF,(ܭjرlQ%i}H##ȭ, +"h[bi'i:Cijg6`4(  izi/e-t+?"MVGB]h6aM.>z/1E.0 aj%A..7p'Qxzx$#pH:mOXWlQ9CSKfk8bЌ'ã&7‘\ѶZ׉9И%7Pkd`%q+ag>]3ٽ &2 jK PA XeSx#En VBN/I_wWߓ 5w<}74HLTflRK]xSr˲[M@XG=\1L'#izC걋 NFB&:K[gS b8V 骉%CZlAi^ 05OZ˭iwgf݄%ش>Ӓx QPQ_s)b.q2C̯6=53hVX%MgI9y6_,Qwˁ}`ٌ.aoCM yCze ٬yo8ILM^"rP;Afϴ$3P@]& n- "&'MuCrSlOb#N ,;J we(8+%]ዩypu5aC7%u!@0?nniley9 Q.2'r.JHo9 dbߢ"=^ⲰݬPr6kꇙkP;5?(SdYx:e^^:Gv $ W=U6|>p,%Q}+H_ 'Av@ģBVӛ8aI̘|\MWg!QԮia9SJUsgseXR%d qςw7(Eʼnr߹@G'^J1&)O-7WLppa߳5_N*:,˞ȳ>u{Z=ՙTvdrP~P H>HCK0SSs?-ƟS>wVj KƑ+U,,~X泠]A6*c*_K.>7(1d>u?j~v\uvI$d3EQq`o Y&X'4hXupPVZ'}U)H꥜\[`û#s"rCh{|䞣X ٪e7|j˛U^OD!y݅c=#'RU.qp<`1g#qA0AFLaۻDKk. j{WdI {spXNk5I9dD9H~OVEsռπnlqGFL~JȡdҥkJ)fZϭ;4HEĜT4<'WF hrpbځ5\ ̏`c",k[(Z\@&qN?һ^%tV]P|ݎtՈݮH]kNjƔħIَ d wu}+Pev+/TW31MVoӝb hL:"NFxCSbݑ8 @@ؽƵz+,1LɺA Cyptў..?d>4'P8E'6r(lZ?EXĞ@1R&ǿY$~U\`Re2Y.Kחt՞HO+jĔFH9FUh)dh%K af_pƷLw#  ]=-0294R&-ZGT"Bޔ ^L7tfC2pk R +n.BR6l}?Z߮7{V;Q#Ɨij9D3YfnvHdT;ĜЂ?v%D4$DXk=*DGYtx s5:̧7cP@.Nb߭&c"Ad]nk![PrbϿ1m`t W2Kg}%8H7\fGAeunD讜tx٥ 띪>eUDiiR1u rduD~BLg<2rDĈI`r]{+ۻrV1 e(IQ]i:]?@/Ax1oD8ޛŭ{IS }f*.л1$4JCxr(MW 3Z3{H}4bozVeN \oduܸpF9;P-)-;5H0қmL.798{a~ jdK^oT]܌Y[B̌[GE|'d}iKR=с֙/QEnT8(~Wj%CfuܸP˞Qur*$cu2e-2CGQH;K 4iaf p`?]cBZ[%%(3= *;runۣʵ q'vwVoXdPΊ^CSi1hw^|r%mHv_cB=$P-n򶇹Pxw)aHZ*>f7Ulz 8jcY _SÜL"ZbJY!~ʧ89󘩌 T ;K՜쩕kj 5]&+..YP j0z=m̩xA]|2=X<٥A.6Ҳ [nWMsw)@LсW, ֞TVqi?jtRA౓Zsg璺fNp+%C yr:RE'QNJAXce:Ю4 K\E, ~ǡ3HO2ba"=_Eׇ-!?I>vh/35iz^'R|()f ˄@ZKk7ۊ\BI6t(G Z ¤qt䕜S}_m6-k Nks4EAA]YeV-}D;L7׭> ܎P`RR-U <,p&(1Y-sh'2ɾ`ua9V,s< ƲFQ +C 8:Ui3SF1X-)}!5:quu$9G,.)0IG<kvy.Iည@x ,&^=He1y+h&yf2qAUET#N}R()oHpqU_)7u!,xmV9"i @ha@'iS&]m÷.|4qWD 1l|j$HV :]cJ1ϥ)hnNf O9T ˻(UV;&3 ύ U< BCgzm\ڰ 3Ekn 6q=y#)Y/  ' rWj ^":T/2= yӽ(X =&{_< uG,kz-o=QI{Ok= ;@(#vxs:ߘ]NwXwVbhE]CiLܹ=cZ/[NfXpkBV4eמpZeRqCݴ,_|SHօfr%ÃIԈr2,\Ma_LFCbl(h)c,E=`Jd!pŜ?dẽ\)zl// :ls3\HfWQꪇy[}#cdƶ[&OvTS+JXkֽj˗CrjTDUrʚtzLr~ֹ1RtRͥ%g ̊Y[$AۦGnz։ڔ!O xpQahEs&}<WloY]C(퀦IlH0S*ZVhԚ WDU*rPt4a<&,(tkzָEin]40UР2G~>g0xPXgL1%,ܻE*TeÒK<3>(ېZ=>+w`ۍ_@5n7+4f̘<0I"O"W\:⢸-@|*oS<{t?!̉#F)zlGܔcp-aC򹩄>(|dݩA[&,~wazTBYqH6OxBn3ܗZ֣l/GWpLn7|ZT$ fHha{FmjԛX݂C8=*hrjb^h w0X#L&~3k Cd/ T|rLg?8_@Uս W#ɯBU`ZK9*[{^ t1/ѿ$RWWnݏYRy"Zp F"+VqiDrε{cB4d7]#/ ,\zGj'(pcV.Z QIcHdA$b6SXvbQV'W;P(1iATj^qNHbޒ r(ړD5{XFŢP1LPP2F?70vd0rCJb9de 80-IR#- K7]1A haޛ*.T<h#{#Z>߈$ 8!Be7c͠ba"a7\Z~=%e&%Nڔ3-6'B=~16WBˍ_ UVpV.q,~^oVi$f3c6nKɲh2Ԙ|gpa8#מ%F*LpTM1bSؔVZ\F'Kcbex9AJY{,\aAfk\7ycFn,nXIB>Q_;{l_UlŷŷPUFwSA.jB݈Ibv('3 ʫֺ?$UО`k({6G:kM_S^(P!ͻ>fm$3nf(Zd\c!eVOAá6^UpSBg,yTwH `XQ]N|f> ;n%bLb vuTD\~ʟZ}Կwbjp?~ @DeLE-{ei%H-M'V xvy ۦWduFy͜Z?s3=S.-ۛUoQA(lrG.HwƩU˭(뱊Y^=մnw$3 7NwѐpG$NWf&VHOMYFicE~:0|di$ULkPs{]*E]c砢$-,GtWkf1-b9Z콷`~# %00y,!%)iBo-k!ФR:*8b@!Ɉn0E;trYrgSsܞ)Q 9@YRAsۛKk ugG~I}~q=jfTQ_'j z0iYmpG0`fE6xג$xZO& {3 ;z@q +2jy\ _MM  jJg;g*h𮄒U%K#9iµӭ*pkPt3 JC2YTz>}<,"ø/lf` }pyݻxd|zL8Unu瘇kMxĎvxr;?&Y"RGKO RH9*Ӛ[n'$,~_`θI<w: AF}[/N R64|Opōr$|Si8%{l^j/8$q deTy3ڞUOb70m17S{UÅ/'>j{Ѡ]+5,@݇]vpT޳pH[ {< 0sPixvF,0RcaO{Mو)yZd @;V"qƀNkDt5@,F*㰕Կj͓M ꔃ~<'2S ;r""aJB +/KwC焁'#FC+97ms k[p-%)B@>QؕR}Y;#$PGA<5h.PDDsE:m8kEo$۝PFi*r3#ciȾՉ:X[uxd?ad͈$'ʝVB?i,DQCWY%dD\y)C۱Yu wh!7lPܮ%0baټ$0U t޳E $n|ZD-IsNr WVu7>5٠>r4)%c_Wg"",R.ߤ1j5^W"Z^ZJʥїhCJ6xB+ȲS(ר-AsC\􋬼5QXi}-+|sf 2&5Ly 6Pnw HƇ\6~O`Âw%LLtGNu0-{\3é>Ap7Ց|i lDYgk_#dMmډ^M-'p: qPk7>$;Jߩn_0AyB~{\ *V^M|Bӏ2e&&AzmZX K|Y8 S6_G&`/n!C(;dGs AEI|.YΓ4. Qu[q* ] /m$W.w YX{9  X>|!t/O/&@uT0BR/+SWg1 a\4q-N^i,ץ" h|jb]1NVl$"!+nbLTQX;)9LqfX6op^ {;XX(( k=ٮAQO3Ut ,h/yfV ΥHKZSNJT9e TqY9u9 0М^.*ht_dzjME3*nk*/z{bvo d…Xbw]: oP}Hġozա 'hS`s@G2)qEiڽ)3FSLgba>-^OXӗfTrl'?=r@95>5jZT%VGBF^A>`±% ;ښ=JXޘY=P䫤TozB,ʖ)_գ!iC2唘TZ,WJ.'zsU27;^a=֊b`;L;vCS_B/$Ճ$N8֬[^zi@BMC41t~0oum@셳QðE$@ץJT [x:Ō8䪸 &Bct$2Z`'6uv_6^]0)7NEӲjVS$LBˊcΔ908bpVmPo\\n9%0)k&Oxa$}ӡcX8 NGo)PաEĢ C&zu|tC-aViiٿverI:}mŶOv~3`e6QIE<@u>a*lRW> >E;srZda3=||y/S5lށ)_lH D5%z%bڰMja54尕ҾojˁfcR̨ABVP>euCH-[p[9 ft^ Cŵ4<$]` 4m3j;U~&\L?\?iT`؇CRab66s 'Z$b  Hx J,,8Jv&8^:}Ty5M |:dU&ut{q;RFF2>E#*ʩ[ wyTl [zlQ5L\K={F Hn\jT1;]P"i2w.#bTolbaa)_|WB"-f0wbG22f@;mKF5zar[Xʜ=r 1$n=úȓP>|ߥ[1oo)eXOR _Î@,n#>ϜTݼ¼۴nb'~a"}#p34Lh523ħ) S'ʢy6EI$p2D/ D<܀4/6"O3o)iMȩ d%ȷuT;+_m֋pG|ɓ켬vJQMViwHNA5U7<[]~tK;SIo͵:(NŪ.l艄P4oZ,,g;onƢЌڮ1NJCDL<1T" ij}MhC^ #^P+>P_c\vd? ^yPFL~V>(ﺯr^I x"PzT607=CY,jPmJBs^ dVeLO,xkH9k3ϭK[i!.=0xߩBBy-܄:Jm) =>LӋоFůץds` K\ΘX]H[:wA ցwSSC]Gحwvg˫Ecm6 ?˵ߔ->Dzk*`G=M`H=\*mC;dlDPb &;}ȋbTCf6 &BkΜ IzKsƟ\d'uHgG挈˔e6|cB2; }Ƥ!'t SyJ Jl53ӫrU?})NO|S3yy<t&NzV+5<[ގyp +>% |_#lSӑzrFLV7ᕓ`0Y".0`pmV)0 cfUfzc #C!$`1-39/TAsyZޞep|ݯ.̝ 7a^jH\"-s*rq|7̨!OqA o>YZ3CjreN =%{khL 87 $22F#s&@4`Y>gi,@yflor[< 9PǴɦ #Tg`+24FGa3;o>̿,^@B^ɟL ! x߬}Q ߊ6˧nV 7k)Wx-*_ǐQ/Ŝy4,}|gc/xݕOZk?~ύOѦ&#a-".hE,xߺG1wOdGFt0lrR6'th䷄e>,k|C ɞTq@2wmUUuJ/zI4C {,v&1 }%"^% u9qte$:I9=-dq`%[B4u둎4Po4nZk6喌ýkHF@W;@vn7KF*lc?e΅Tx}c""2Ao=P`|%=4:tZ T ,!hZb ,Uz0$% *:UnWb}Q$1Pps8@T6YcFWA9 <ӢFmzt eoC@O.'9Y8&/-T '2LTƶ5? e$@my8: !%U ֥ieK8NntԶMtʗ{}a񅘲<,ܭ/0|-G BWpIl~Eb<u6xnjIw-vqMlS=%zU|Z :-`q ^|f+[J-i."1 wRB5q$j"vfԯvR> %H8%4,iHL-6 tlr=YGt'Ok! #q?0Gm*df $,8q$~F,(5-tk/jf3U ϶#lƗЪ;ZBtsmՠmo}ļ$jH;|CEUUJe`q51hi^bhte "҂*@t||`w& }9N2, :TySQ_)UCBW's,' m~pN薚5f*YAX$F*uS۵A5#&wDJ/ OB} ` :+`if@ݍ4qQ$3eթ,n!rD 'q -8JH]Sn)i.FH35IaPc+`5%n VR(:{l&TYA/[2 r1aNxE ɳf& n%"AhiF_,50n+Rkktίň.0*#|vAαHAma蕹#ܠh~K@~.=Yvv:0[R7D= 3cA]f*/ jKO .NqtV LYGsl-j2"k}TɱJr{<8Jz 'S!" ~v =!oAeƟ"Du,Nk?A/NstME /)DE .P"Ƹ-TsщgдP`Fux%~8 dB#i pР|ggQ!ӪBTRSl )CY0žeYzޣ!--Sd>vMIA玸գI]ga,=QW)1:\ "3j383~d=~sC6,<f|^lᩲw1R9Q+[mΪZIѱt̰`uxqbNnYDөpXEBVuIPvٖwU~M\@-*hL7 D[EvMv"E3괈R '[H*j\,XsO+j Wf7c?q0CLp5v}i,} W/480V$4X6b %og.2BRj& %fD "6l@ +PߪLvyx;:0:WڐB}UASw1A_o>[4Gڇr+.$= BB^c1*!);Ft*T,5/4 `(i}nN(x~MזT}q˼w>J~u NTKAPeVy(0|G0K , oeOš0'!/+E%@B焂` nA݊M;D6qゝ+`0$2.A#$- ?FqMfL^q_VBꌘN12$_E`GOX~iN(i"it CJDQ_}+2Rȓ19@W xy&l<d\hJ?wV($Ye3^L#)GGO9m3vF}֜mPMC\Z6bŤ+f$+!mBdy&{-ƥ Zmڕ'<dquX4RzW[>ް3=]vOt^)yY\u)d/@ wLhPb(]I 'O䨪pwe3+t`sba_^ Lv6FYA[s%Rk{2Hb 3*yd?ditΆ=H8'6 ,iOpJ\B|mBf!":)d û4vZ,=t!y{EH=đ|Py>LbtInaTaJ_t:T6&KXO5 2t$a\S]!h;Ym1rP^ȍTR\>sW|9}wzh~]ߦE1cf%GhօN;jd/ νC>qt> DOa^LJcn_(Zvx;sC~SªJr~;tȃWy^" c/@x!^<^4)35r܌Ԗɜ#l?mpYDp >CDk.{OsEƾ9L[INisS/^Hx:<ԕrB Ͷ{n dh[+Q4ϻҋ]XPf2(9%-yRd;@P.f^ eb3@!jUY 2dF@Պi*߸8Cĺ)yUWxRd2'{z\GwnھV ټ^˵|3XSJ6]C|hntJ"bX[| UܰUO-.AL_rU+=h`êJ[36޲p#KZ*u^ x V9O=ŁwǦI&{q( 3CT'FOAk@ ^ZmV퀈2ַF\;t7 -дJS 6X^2cFQyZj[+p"83 K)/ĦzS f]:TSiǑgEtE’Oy@zr o{{m jt%lB<Γ,Xa{U(#9t'1wp)sFK^$mDr8NjG{~]-v"9>@q1kEJ6&LߌWjK/M C( +abgim1 2ap/қ!dFshAN ?˼Qpte̼9^P P!$g7Z}zA6Yʧ ?ѐB$G5K}_BKԤlntj }YF7%ӆMH1C4z?^),}w++=t=-49K;.b$=mt,ܯ!ݰhj'ӓW# p4kӶ{?fqnYKVv̹UFw>kFG[]bL0.MaHҢZ҉yV_VV2 WB_@ZSHibm@ !1 |nH4mY {ߺq}9:_)de=rd}$ )9Qϔ\.#IdkZa'D|2M燪4FR̸{ɇQT 1d:Rq87 T`ylrO6̽/Λd/>K܏!E)oW$2m xɊcm`~b ?D4*#1itiLlAX O*!T!WP6@-q6q9 y}?@f5,»Fi }s[Hkc{@ԫVbzݺAcP%frM5Y`Q; 1}[EfRԟyd<^g"8cpWhU`@ybΥ^`#c茡O\*wLf_~6!{mF0L\[2X0/D{Qk:mub7փCU*njWl3e3xE?P@hMaaeJx[.bsCmQ1#_%"{c|QĤ}bx =Vҳ` iA I!Rz2e{;>)V&eD@a3D=|PVh<͛q{@,jHٖ]e|oBfV x>=Qۤ|5pw5AÎJ|'N'M~7sq%+E<22V +\\pN<[ ;ΛhBaCBPĶ`V#BQVcee旵BcC"ޏ@z/WT\V^Ws`Pc!G"$[iwcs'7$/)Y3UEN_Cp&ڽtڕ$ K0HwWkAs&GXJTLp1b;GG)GLw& ] {fnIGhbt$ں H }^ź4wLQv"çS-SW.=t&>WCᓨpJB~KLJa_R8yh9"&'a#*+{ڔ,ּf?=>m'O_^Yk#B``|j (6֨6GZ;M.ɟ6QGm]zhm\ vch!=n?%fzHA*>`Qgn{Z* a(6϶61nЀ.rtߗ)UQaSok7'w2P%Sĸl H-OH6#8Qx68&Oȉ*/ѹB9 GZ֘(9TH9<$ ?/ zGDfL'iu vDLaǘQtN!MU< W@x>W$Qf}D@od|^" b7ǕÃ/(OIc`C>ξsVhIY r#t?d_6p9q=iW~_mr(*Pc*\ 4T撻ln13Xmn%߃"݅92Z w;=i!8b4oV8r1_<ִwI@:AZ9X3]rSX?D$] A.?y$f6#{)WWl]kVUvBy'Q5L7 &j&Ԑ.:&m8烯4&D^58Ⱥp)F Aװ#l]tx6t5K6[ˑN}F-Bq'dicr>z,MMYO U\ .hDItᚣ.i&o'ZIG81y0&1o&00`CD~FmWN hD0/ c7 40Ccys4mUp*24piБZme~Ur3fR]6LM7-k89&[yK>FY˷c71Ű%7fUٷ2 H?x—>F. >$ݪ W]Α݅%S-6h.v*Z!Aژq S7^CT®[H"[lIK)zbAG^/^xzAa uKle)+jl @˦Eh.tu~hyZם6󻜆!W; U}IK:{uv}5fjӜiX7a"PagQ,=*gNEMvfI7< ssIl d2qqm{)"e,\|t&NlՊ {mSOz:ucbXyL7!9 HmR_-G~>qN@ { xa7[TYy=c 2LijMm[ݝCbGЙGŁV]frl }r?[qF?m~Qϝ.K'JBH p=9\EU֒ۡ@纴ܑPyy|1N-MA8& F+Bbo ~?l#6IzgqUmFH x-׏cI'"k0;fu"<#gfSp$-M&!Zz,ێ3̀Y0WZ~|x5@ E m_OxI.-Dx,}[k}(T:^y-Fc OhS;п`C[ғ9h3Ԅm~9xBB]-Z#2qqQ =@z*|h Ͻ/J"/U} :S'wRײ?%i|TR$!є:W  ̺Aqo9%_f @q'ҹ5%dr.ɺ-ľ!9fNш(͞}ˬY#\m!&BPm *H $ >Ko $)x,)aжH=/sshbu+ mfL ]?Y ^.U)/$ JM0[ȭոč XO Z6`D& 0q}j+͘~ ~:^cB B*˳ a%CajK6i;Ud?I;t;9=!SL| p4}zh^3q6͵&`]+CB&* [zi]=MM((b$&qjh:#ѭ~?'#>(4S9*Ppu(yt] TϫڼLP#R~mnԕDRP}nS9$ yTEjq*.&hRPTFur5nEpǟ!6jtI194^DaRk3A=XvTVنuvmH7TW#:@%7!7}A'97O"4ڦ{'iO/ Ͱ[+t&J"az{cL#b<`EL 83:fpߔ<]y֋ hP;?gs^oc?;D[2=rԼ :qX'+-#EoyBe3Ԓu;A}"C 1)D1awźdW܈YT=qfV€jsI"~@e2&ʓO9P1G6;FӇ\ Q*.Οy$av=YJ%UR5T4ORBZW{^˦wSτ:FEM}LO L:] κB8⯈'o;2gxJK3]b@H:OK6cf*:lk&20^:ӡ|Kz|Ϋ.BOwSk(IMY"U͌AgNGŸXjzw[-|q|nސUZ@I!Rn0ŗ% ֠"GtWRk$O8(7ld: '5,BH@ Dnc f~,U,y@4$kuTJ[kM u R7𾤴(~@,C{TDCR M5ae&9yz #H3s\6akɴ] ҼًࡌŵM  fi=ӆ#~nH8;]=}2ͩ)tM;3GlO񾺃h#$֞ѯWxڲVf_N}0+VҰ d~,%b&U+cykpgӇxn:;Ǖ.4zuEfIVK$n.(=]տ{0T-s mYYtR LaD=b| QIK/:A+ _ d͕ ,/P Am5証^:kg" w&,w ѧ~ClLCoM gQsECøf9RNG@Gr ggi8_|#F[P~36-Oa m udw׍(}raR:DPn*oSun73p(%l2BL⾃#?$zpM9x$mk >o2FPyǖx|J֑z!~ kpQv,IUG/H}]Q= c鸠Q{ae{t'.E-2gI#5V{k·[x8w[m ^f˺0