diff options
Diffstat (limited to 'src')
236 files changed, 3643 insertions, 2286 deletions
diff --git a/src/actors/scala/actors/OutputChannel.scala b/src/actors/scala/actors/OutputChannel.scala index 8bf92b448e..5f99f57ecf 100644 --- a/src/actors/scala/actors/OutputChannel.scala +++ b/src/actors/scala/actors/OutputChannel.scala @@ -18,7 +18,7 @@ package scala.actors * * @define actor `OutputChannel` */ -trait OutputChannel[-Msg] extends AbstractReactor[Msg] { +trait OutputChannel[-Msg] { /** * Sends <code>msg</code> to this $actor (asynchronous). diff --git a/src/actors/scala/actors/Reactor.scala b/src/actors/scala/actors/Reactor.scala index a5bdcf1dd9..85dcd57189 100644 --- a/src/actors/scala/actors/Reactor.scala +++ b/src/actors/scala/actors/Reactor.scala @@ -195,7 +195,7 @@ trait Reactor[Msg >: Null] extends OutputChannel[Msg] with Combinators { * * @param handler a partial function with message patterns and actions */ - protected[actors] def react(handler: PartialFunction[Msg, Unit]): Nothing = { + protected def react(handler: PartialFunction[Msg, Unit]): Nothing = { synchronized { drainSendBuffer(mailbox) } searchMailbox(mailbox, handler, false) throw Actor.suspendException diff --git a/src/build/genprod.scala b/src/build/genprod.scala index 099c24ef20..8217ce3c3b 100644 --- a/src/build/genprod.scala +++ b/src/build/genprod.scala @@ -32,7 +32,8 @@ object genprod { def productFiles = arities map Product.make def tupleFiles = arities map Tuple.make def functionFiles = (0 :: arities) map Function.make - def allfiles = productFiles ::: tupleFiles ::: functionFiles + def absFunctionFiles = (0 :: arities) map AbstractFunction.make + def allfiles = productFiles ::: tupleFiles ::: functionFiles ::: absFunctionFiles trait Arity extends Group { def i: Int // arity @@ -48,8 +49,10 @@ object genprod { def xdefs = to map ("x" + _) def mdefs = to map ("_" + _) def invariantArgs = typeArgsString(targs) - def covariantArgs = typeArgsString(targs map ("+" + _)) - def contraCoArgs = typeArgsString((targs map ("-" + _)) ::: List("+R")) + def covariantArgs = typeArgsString(targs map (covariantSpecs + "+" + _)) + def covariantSpecs = "" + def contravariantSpecs = "" + def contraCoArgs = typeArgsString((targs map (contravariantSpecs + "-" + _)) ::: List(covariantSpecs + "+R")) def fields = List.map2(mdefs, targs)(_ + ":" + _) mkString "," def funArgs = List.map2(vdefs, targs)(_ + ":" + _) mkString "," @@ -59,6 +62,8 @@ object genprod { def descriptiveComment = "" def withFancy = if (descriptiveComment.isEmpty) "" else "(with fancy comment)" def withMoreMethods = if (moreMethods.isEmpty) "" else "(with extra methods)" + def packageDef = "scala" + def imports = "" def header = """ /* __ *\ @@ -73,8 +78,9 @@ object genprod { %s -package scala -""".trim.format(genprodString) + "\n\n" +package %s +%s +""".trim.format(genprodString, packageDef, imports) + "\n\n" } def main(args: Array[String]) { @@ -96,7 +102,7 @@ package scala w.close } catch { case e: java.io.IOException => - println(e.getMessage() + ": " + out) + println(e.getMessage() + ": " + f) exit(-1) } } @@ -112,6 +118,7 @@ import genprod._ zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz */ object FunctionZero extends Function(0) { + override def covariantSpecs = "@specialized " override def descriptiveComment = functionNTemplate.format("currentSeconds", "anonfun0", """ * * <b>val</b> currentSeconds = () => System.currentTimeMillis() / 1000L @@ -126,6 +133,9 @@ object FunctionZero extends Function(0) { } object FunctionOne extends Function(1) { + override def contravariantSpecs = "@specialized(Int, Long, Double) " + override def covariantSpecs = "@specialized(Unit, Boolean, Int, Long, Double) " + override def descriptiveComment = functionNTemplate.format("succ", "anonfun1", """ * * <b>val</b> succ = (x: Int) => x + 1 @@ -149,6 +159,9 @@ object FunctionOne extends Function(1) { } object FunctionTwo extends Function(2) { + override def contravariantSpecs = "@specialized(Int, Long, Double) " + override def covariantSpecs = "@specialized(Unit, Boolean, Int, Long, Double) " + override def descriptiveComment = functionNTemplate.format("max", "anonfun2", """ * * <b>val</b> max = (x: Int, y: Int) => <b>if</b> (x < y) y <b>else</b> x @@ -254,16 +267,245 @@ object Tuple { def make(i: Int) = apply(i)() def apply(i: Int) = i match { + case 1 => TupleOne case 2 => TupleTwo + case 3 => TupleThree case _ => new Tuple(i) } } +object TupleOne extends Tuple(1) +{ + override def covariantSpecs = "@specialized(Int, Long, Double) " +} + object TupleTwo extends Tuple(2) { + override def imports = """ +import scala.collection.{TraversableLike, IterableLike} +import scala.collection.generic.CanBuildFrom +""" + override def covariantSpecs = "@specialized(Int, Long, Double) " override def moreMethods = """ /** Swap the elements of the tuple */ def swap: Tuple2[T2,T1] = Tuple2(_2, _1) + + def zip[Repr1, El1, El2, To](implicit w1: T1 => TraversableLike[El1, Repr1], + w2: T2 => Iterable[El2], + cbf1: CanBuildFrom[Repr1, (El1, El2), To]): To = { + val coll1: TraversableLike[El1, Repr1] = _1 + val coll2: Iterable[El2] = _2 + val b1 = cbf1(coll1.repr) + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(elems2.hasNext) + b1 += ((el1, elems2.next)) + + b1.result + } + + /** Wraps a tuple in a `Zipped`, which supports 2-ary generalisations of map, flatMap, filter,... + * + * @see Zipped + * $willNotTerminateInf + */ + def zipped[Repr1, El1, Repr2, El2](implicit w1: T1 => TraversableLike[El1, Repr1], w2: T2 => IterableLike[El2, Repr2]): Zipped[Repr1, El1, Repr2, El2] + = new Zipped[Repr1, El1, Repr2, El2](_1, _2) + + class Zipped[+Repr1, +El1, +Repr2, +El2](coll1: TraversableLike[El1, Repr1], coll2: IterableLike[El2, Repr2]) { // coll2: IterableLike for filter + def map[B, To](f: (El1, El2) => B)(implicit cbf: CanBuildFrom[Repr1, B, To]): To = { + val b = cbf(coll1.repr) + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(elems2.hasNext) + b += f(el1, elems2.next) + + b.result + } + + def flatMap[B, To](f: (El1, El2) => Traversable[B])(implicit cbf: CanBuildFrom[Repr1, B, To]): To = { + val b = cbf(coll1.repr) + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(elems2.hasNext) + b ++= f(el1, elems2.next) + + b.result + } + + def filter[To1, To2](f: (El1, El2) => Boolean)(implicit cbf1: CanBuildFrom[Repr1, El1, To1], cbf2: CanBuildFrom[Repr2, El2, To2]): (To1, To2) = { + val b1 = cbf1(coll1.repr) + val b2 = cbf2(coll2.repr) + val elems2 = coll2.iterator + + for(el1 <- coll1) { + if(elems2.hasNext) { + val el2 = elems2.next + if(f(el1, el2)) { + b1 += el1 + b2 += el2 + } + } + } + + (b1.result, b2.result) + } + + def exists(f: (El1, El2) => Boolean): Boolean = { + var acc = false + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(!acc && elems2.hasNext) + acc = f(el1, elems2.next) + + acc + } + + def forall(f: (El1, El2) => Boolean): Boolean = { + var acc = true + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(acc && elems2.hasNext) + acc = f(el1, elems2.next) + + acc + } + + def foreach[U](f: (El1, El2) => U): Unit = { + val elems2 = coll2.iterator + + for(el1 <- coll1) + if(elems2.hasNext) + f(el1, elems2.next) + } + } +""" +} + +object TupleThree extends Tuple(3) { + override def imports = """ +import scala.collection.{TraversableLike, IterableLike} +import scala.collection.generic.CanBuildFrom +""" + override def moreMethods = """ + def zip[Repr1, El1, El2, El3, To](implicit w1: T1 => TraversableLike[El1, Repr1], + w2: T2 => Iterable[El2], + w3: T3 => Iterable[El3], + cbf1: CanBuildFrom[Repr1, (El1, El2, El3), To]): To = { + val coll1: TraversableLike[El1, Repr1] = _1 + val coll2: Iterable[El2] = _2 + val coll3: Iterable[El3] = _3 + val b1 = cbf1(coll1.repr) + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(elems2.hasNext && elems3.hasNext) + b1 += ((el1, elems2.next, elems3.next)) + + b1.result + } + + /** Wraps a tuple in a `Zipped`, which supports 3-ary generalisations of map, flatMap, filter,... + * + * @see Zipped + * $willNotTerminateInf + */ + def zipped[Repr1, El1, Repr2, El2, Repr3, El3](implicit w1: T1 => TraversableLike[El1, Repr1], + w2: T2 => IterableLike[El2, Repr2], + w3: T3 => IterableLike[El3, Repr3]): Zipped[Repr1, El1, Repr2, El2, Repr3, El3] + = new Zipped[Repr1, El1, Repr2, El2, Repr3, El3](_1, _2, _3) + + class Zipped[+Repr1, +El1, +Repr2, +El2, +Repr3, +El3](coll1: TraversableLike[El1, Repr1], + coll2: IterableLike[El2, Repr2], + coll3: IterableLike[El3, Repr3]) { + def map[B, To](f: (El1, El2, El3) => B)(implicit cbf: CanBuildFrom[Repr1, B, To]): To = { + val b = cbf(coll1.repr) + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(elems2.hasNext && elems3.hasNext) + b += f(el1, elems2.next, elems3.next) + + b.result + } + + def flatMap[B, To](f: (El1, El2, El3) => Traversable[B])(implicit cbf: CanBuildFrom[Repr1, B, To]): To = { + val b = cbf(coll1.repr) + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(elems2.hasNext && elems3.hasNext) + b ++= f(el1, elems2.next, elems3.next) + + b.result + } + + def filter[To1, To2, To3](f: (El1, El2, El3) => Boolean)( + implicit cbf1: CanBuildFrom[Repr1, El1, To1], + cbf2: CanBuildFrom[Repr2, El2, To2], + cbf3: CanBuildFrom[Repr3, El3, To3]): (To1, To2, To3) = { + val b1 = cbf1(coll1.repr) + val b2 = cbf2(coll2.repr) + val b3 = cbf3(coll3.repr) + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) { + if(elems2.hasNext && elems3.hasNext) { + val el2 = elems2.next + val el3 = elems3.next + if(f(el1, el2, el3)) { + b1 += el1 + b2 += el2 + b3 += el3 + } + } + } + + (b1.result, b2.result, b3.result) + } + + def exists(f: (El1, El2, El3) => Boolean): Boolean = { + var acc = false + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(!acc && elems2.hasNext && elems3.hasNext) + acc = f(el1, elems2.next, elems3.next) + + acc + } + + def forall(f: (El1, El2, El3) => Boolean): Boolean = { + var acc = true + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(acc && elems2.hasNext && elems3.hasNext) + acc = f(el1, elems2.next, elems3.next) + + acc + } + + def foreach[U](f: (El1, El2, El3) => U): Unit = { + val elems2 = coll2.iterator + val elems3 = coll3.iterator + + for(el1 <- coll1) + if(elems2.hasNext && elems3.hasNext) + f(el1, elems2.next, elems3.next) + } + } """ } @@ -271,7 +513,7 @@ class Tuple(val i: Int) extends Group("Tuple") with Arity { // prettifies it a little if it's overlong def mkToString() = { - def str(xs: List[String]) = xs.mkString(""" + "," + """) + def str(xs: List[String]) = xs.mkString(""" + "," + """) if (i <= MAX_ARITY / 2) str(mdefs) else { val s1 = str(mdefs take (i / 2)) @@ -303,7 +545,21 @@ zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz */ object Product extends Group("Product") { def make(i: Int) = apply(i)() - def apply(i: Int) = new Product(i) + def apply(i: Int) = i match { + case 1 => ProductOne + case 2 => ProductTwo + case _ => new Product(i) + } +} + +object ProductOne extends Product(1) +{ + override def covariantSpecs = "@specialized(Int, Long, Double) " +} + +object ProductTwo extends Product(2) +{ + override def covariantSpecs = "@specialized(Int, Long, Double) " } class Product(val i: Int) extends Group("Product") with Arity @@ -354,3 +610,44 @@ trait {className}{covariantArgs} extends Product {{ </file>} } + +/** Abstract functions **/ + +object AbstractFunctionZero extends AbstractFunction(0) { + override def covariantSpecs = FunctionZero.covariantSpecs +} + +object AbstractFunctionOne extends AbstractFunction(1) { + override def covariantSpecs = FunctionOne.covariantSpecs + override def contravariantSpecs = FunctionOne.contravariantSpecs +} + +object AbstractFunctionTwo extends AbstractFunction(2) { + override def covariantSpecs = FunctionTwo.covariantSpecs + override def contravariantSpecs = FunctionTwo.contravariantSpecs +} + +class AbstractFunction(val i: Int) extends Group("AbstractFunction") with Arity +{ + override def packageDef = "scala.runtime" + + val superTypeArgs = typeArgsString(targs ::: List("R")) + + def apply() = { +<file name={"runtime/" + fileName}>{header} +abstract class {className}{contraCoArgs} extends Function{i}{superTypeArgs} {{ +{moreMethods} +}} +</file>} + +} +object AbstractFunction +{ + def make(i: Int) = apply(i)() + def apply(i: Int) = i match { + case 0 => AbstractFunctionZero + case 1 => AbstractFunctionOne + case 2 => AbstractFunctionTwo + case _ => new AbstractFunction(i) + } +} diff --git a/src/compiler/scala/tools/nsc/Global.scala b/src/compiler/scala/tools/nsc/Global.scala index 3e54b68daf..16bff5d399 100644 --- a/src/compiler/scala/tools/nsc/Global.scala +++ b/src/compiler/scala/tools/nsc/Global.scala @@ -255,6 +255,8 @@ class Global(var settings: Settings, var reporter: Reporter) extends SymbolTable override def flatClasses: Boolean = isFlat private val isDevirtualized = prev.name == "devirtualize" || prev.devirtualized override def devirtualized: Boolean = isDevirtualized // (part of DEVIRTUALIZE) + private val isSpecialized = prev.name == "specialize" || prev.specialized + override def specialized: Boolean = isSpecialized /** Is current phase cancelled on this unit? */ def cancelled(unit: CompilationUnit) = diff --git a/src/compiler/scala/tools/nsc/Phase.scala b/src/compiler/scala/tools/nsc/Phase.scala index cd5a399c12..98f0f840ff 100644 --- a/src/compiler/scala/tools/nsc/Phase.scala +++ b/src/compiler/scala/tools/nsc/Phase.scala @@ -34,6 +34,7 @@ abstract class Phase(val prev: Phase) { // Will running with -Ycheck:name work? def checkable: Boolean = true def devirtualized: Boolean = false + def specialized: Boolean = false def erasedTypes: Boolean = false def flatClasses: Boolean = false def keepsTypeParams = true diff --git a/src/compiler/scala/tools/nsc/ast/DocComments.scala b/src/compiler/scala/tools/nsc/ast/DocComments.scala index febb4b221d..ddf4fb0a23 100755 --- a/src/compiler/scala/tools/nsc/ast/DocComments.scala +++ b/src/compiler/scala/tools/nsc/ast/DocComments.scala @@ -90,7 +90,7 @@ trait DocComments { self: SymbolTable => getDocComment(sym) map getUseCases getOrElse List() } - def useCases(sym: Symbol): List[(Symbol, String, Position)] = useCases(sym, sym) + def useCases(sym: Symbol): List[(Symbol, String, Position)] = useCases(sym, sym.enclClass) /** Returns the javadoc format of doc comment string `s`, including wiki expansion */ diff --git a/src/compiler/scala/tools/nsc/ast/TreeGen.scala b/src/compiler/scala/tools/nsc/ast/TreeGen.scala index f8678ce24e..cc3581c3f8 100644 --- a/src/compiler/scala/tools/nsc/ast/TreeGen.scala +++ b/src/compiler/scala/tools/nsc/ast/TreeGen.scala @@ -31,10 +31,13 @@ abstract class TreeGen private def isRootOrEmptyPackageClass(s: Symbol) = s.isRoot || s.isEmptyPackageClass - def scalaFunctionConstr(argtpes: List[Tree], restpe: Tree): Tree = - AppliedTypeTree( - scalaDot(newTypeName("Function"+argtpes.length)), - argtpes ::: List(restpe)) + def scalaFunctionConstr(argtpes: List[Tree], restpe: Tree, abstractFun: Boolean = false): Tree = { + val cls = if (abstractFun) + mkAttributedRef(AbstractFunctionClass(argtpes.length)) + else + mkAttributedRef(FunctionClass(argtpes.length)) + AppliedTypeTree(cls, argtpes ::: List(restpe)) + } /** Builds a reference to value whose type is given stable prefix. * The type must be suitable for this. For example, it diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala index c587b8342c..5318c76311 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala @@ -874,7 +874,7 @@ abstract class GenJVM extends SubComponent { atPhase(currentRun.picklerPhase) ( m.owner != definitions.ObjectClass && m.isMethod - && !m.hasFlag(Flags.CASE | Flags.PROTECTED | Flags.DEFERRED) + && !m.hasFlag(Flags.CASE | Flags.PROTECTED | Flags.DEFERRED | Flags.SPECIALIZED) && !m.isConstructor && !m.isStaticMember && !(m.owner == definitions.AnyClass) diff --git a/src/compiler/scala/tools/nsc/dependencies/Files.scala b/src/compiler/scala/tools/nsc/dependencies/Files.scala index 09f694b6ca..194351a13f 100644 --- a/src/compiler/scala/tools/nsc/dependencies/Files.scala +++ b/src/compiler/scala/tools/nsc/dependencies/Files.scala @@ -1,47 +1,48 @@ package scala.tools.nsc -package dependencies; +package dependencies import java.io.{InputStream, OutputStream, PrintStream, InputStreamReader, BufferedReader} -import io.{AbstractFile, PlainFile} +import io.{AbstractFile, PlainFile, VirtualFile} -import scala.collection._;import scala.tools.nsc.io.VirtualFile +import scala.collection._ trait Files { self : SubComponent => - class FileDependencies(val classpath : String) { + class FileDependencies(val classpath: String) { import FileDependencies._ - class Tracker extends mutable.OpenHashMap[AbstractFile, mutable.Set[AbstractFile]]{ + class Tracker extends mutable.OpenHashMap[AbstractFile, mutable.Set[AbstractFile]] { override def default(key: AbstractFile) = { - this(key) = new mutable.HashSet[AbstractFile]; - this(key); + this(key) = new mutable.HashSet[AbstractFile] + this(key) } } val dependencies = new Tracker - val targets = new Tracker; + val targets = new Tracker def isEmpty = dependencies.isEmpty && targets.isEmpty def emits(source: AbstractFile, result: AbstractFile) = - targets(source) += result; + targets(source) += result def depends(from: AbstractFile, on: AbstractFile) = - dependencies(from) += on; + dependencies(from) += on - def reset(file: AbstractFile) = dependencies -= file; + def reset(file: AbstractFile) = dependencies -= file - def cleanEmpty() = { - dependencies foreach {case (key, value) => value.retain(x => x.exists && (x ne RemovedFile))} - dependencies.retain((key, value) => key.exists && !value.isEmpty) - targets foreach {case (key, value) => value.retain(_.exists)} - targets.retain((key, value) => key.exists && !value.isEmpty) + def cleanEmpty = { + dependencies foreach {case (_, value) => + value retain (x => x.exists && (x ne removedFile))} + dependencies retain ((key, value) => key.exists && !value.isEmpty) + targets foreach {case (_, value) => value retain (_.exists)} + targets retain ((key, value) => key.exists && !value.isEmpty) } def containsFile(f: AbstractFile) = targets.contains(f.absolute) - def invalidatedFiles(maxDepth : Int) = { - val direct = new mutable.HashSet[AbstractFile]; + def invalidatedFiles(maxDepth: Int) = { + val direct = new mutable.HashSet[AbstractFile] for ((file, products) <- targets) { // This looks a bit odd. It may seem like one should invalidate a file @@ -53,34 +54,33 @@ trait Files { self : SubComponent => val indirect = dependentFiles(maxDepth, direct) - for ((source, targets) <- targets; - if direct(source) || indirect(source) || (source eq RemovedFile)){ - targets.foreach(_.delete); - targets -= source; + for ((source, targets) <- targets + if direct(source) || indirect(source) || (source eq removedFile)) { + targets foreach (_.delete) + targets -= source } - (direct, indirect); + (direct, indirect) } /** Return the set of files that depend on the given changed files. * It computes the transitive closure up to the given depth. */ def dependentFiles(depth: Int, changed: Set[AbstractFile]): Set[AbstractFile] = { - val indirect = new mutable.HashSet[AbstractFile]; - val newInvalidations = new mutable.HashSet[AbstractFile]; + val indirect = new mutable.HashSet[AbstractFile] + val newInvalidations = new mutable.HashSet[AbstractFile] - def invalid(file: AbstractFile) = indirect(file) || changed(file) || (file eq RemovedFile) + def invalid(file: AbstractFile) = + indirect(file) || changed(file) || (file eq removedFile) - def go(i : Int) : Unit = if(i > 0){ - newInvalidations.clear; - for((target, depends) <- dependencies; - if !invalid(target); - d <- depends){ + def go(i: Int) : Unit = if(i > 0) { + newInvalidations.clear + for((target, depends) <- dependencies if !invalid(target); + d <- depends) newInvalidations(target) ||= invalid(d) - } - indirect ++= newInvalidations; - if(!newInvalidations.isEmpty) go(i - 1); - else () + + indirect ++= newInvalidations + if (!newInvalidations.isEmpty) go(i - 1) } go(depth) @@ -88,65 +88,73 @@ trait Files { self : SubComponent => indirect --= changed } - def writeTo(file: AbstractFile, fromFile : AbstractFile => String) { + def writeTo(file: AbstractFile, fromFile: AbstractFile => String): Unit = writeToFile(file)(out => writeTo(new PrintStream(out), fromFile)) - } - - def writeTo(print : PrintStream, fromFile : AbstractFile => String) : Unit = { - cleanEmpty(); - def emit(tracker : Tracker){ - for ((f, ds) <- tracker; - d <- ds){ - print.println(fromFile(f) + " -> " + fromFile(d)); - } - } - print.println(classpath); - print.println(FileDependencies.Separator) - emit(dependencies); - print.println(FileDependencies.Separator) - emit(targets); + def writeTo(print: PrintStream, fromFile: AbstractFile => String): Unit = { + def emit(tracker: Tracker) = + for ((f, ds) <- tracker; d <- ds) print.println(fromFile(f) + arrow + fromFile(d)) + cleanEmpty + print.println(classpath) + print.println(separator) + emit(dependencies) + print.println(separator) + emit(targets) } } - object FileDependencies{ - val Separator = "-------"; - private val RemovedFile = new VirtualFile("removed") - - def readFrom(file: AbstractFile, toFile : String => AbstractFile): Option[FileDependencies] = readFromFile(file) { in => - val reader = new BufferedReader(new InputStreamReader(in)) - val it = new FileDependencies(reader.readLine) - reader.readLine - var line : String = null - while ({line = reader.readLine; (line != null) && (line != Separator)}){ - line.split(" -> ") match { - case Array(from, on) => - (toFile(from), toFile(on)) match { - case (null, _) => // fromFile is removed, it's ok - case (fromFile, null) => it.depends(fromFile, RemovedFile) // onFile is removed, should recompile fromFile - case (fromFile, onFile) => it.depends(fromFile, onFile) + object FileDependencies { + private val separator:String = "-------" + private val arrow = " -> " + private val removedFile = new VirtualFile("removed") + + private def validLine(l: String) = (l != null) && (l != separator) + + def readFrom(file: AbstractFile, toFile: String => AbstractFile): Option[FileDependencies] = + readFromFile(file) { in => + val reader = new BufferedReader(new InputStreamReader(in)) + val it = new FileDependencies(reader.readLine) + + def readLines(valid: Boolean)(f: (AbstractFile, AbstractFile) => Unit): Boolean = { + var continue = valid + var line: String = null + while (continue && {line = reader.readLine; validLine(line)}) { + line.split(arrow) match { + case Array(from, on) => f(toFile(from), toFile(on)) + case _ => + global.inform("Parse error: Unrecognised string " + line) + continue = false } - case x => global.inform("Parse error: Unrecognised string " + line); return None + } + continue } - } - while ({line = reader.readLine; (line != null) && (line != Separator)}){ - line.split(" -> ") match { - case Array(source, target) => - val targetFile = toFile(target) - (toFile(source), toFile(target)) match { - case (null, null) => // source and target are all removed, it's ok - case (null, targetFile) => it.emits(RemovedFile, targetFile) // source is removed, should remove relative target later - case (_, null) => // it may has been cleaned outside, or removed during last phase - case (sourceFile, targetFile) => it.emits(sourceFile, targetFile) - } - case x => global.inform("Parse error: Unrecognised string " + line); return None - } + reader.readLine + + val dResult = readLines(true)( + (_, _) match { + case (null, _) => // fromFile is removed, it's ok + case (fromFile, null) => + // onFile is removed, should recompile fromFile + it.depends(fromFile, removedFile) + case (fromFile, onFile) => it.depends(fromFile, onFile) + }) + + readLines(dResult)( + (_, _) match { + case (null, null) => + // source and target are all removed, it's ok + case (null, targetFile) => + // source is removed, should remove relative target later + it.emits(removedFile, targetFile) + case (_, null) => + // it may has been cleaned outside, or removed during last phase + case (sourceFile, targetFile) => it.emits(sourceFile, targetFile) + }) + + Some(it) } - - Some(it) - } } def writeToFile[T](file: AbstractFile)(f: OutputStream => T) : T = { diff --git a/src/compiler/scala/tools/nsc/doc/html/HtmlPage.scala b/src/compiler/scala/tools/nsc/doc/html/HtmlPage.scala index 74ec740204..ae98ecf1f6 100644 --- a/src/compiler/scala/tools/nsc/doc/html/HtmlPage.scala +++ b/src/compiler/scala/tools/nsc/doc/html/HtmlPage.scala @@ -167,6 +167,7 @@ abstract class HtmlPage { thisPage => case EntityLink(entity) => templateToHtml(entity) case Monospace(text) => <code>{ Unparsed(text) }</code> case Text(text) => Unparsed(text) + case Summary(in) => inlineToHtml(in) } def typeToHtml(tpe: model.TypeEntity, hasLinks: Boolean): NodeSeq = { diff --git a/src/compiler/scala/tools/nsc/doc/html/page/Template.scala b/src/compiler/scala/tools/nsc/doc/html/page/Template.scala index d90e3d2f64..41a7de93bd 100644 --- a/src/compiler/scala/tools/nsc/doc/html/page/Template.scala +++ b/src/compiler/scala/tools/nsc/doc/html/page/Template.scala @@ -267,9 +267,12 @@ class Template(tpl: DocTemplateEntity) extends HtmlPage { if (tpl.isPackage) "package" else if (tpl.isClass) "class" else if (tpl.isTrait) "trait" else "object" case ctor: Constructor => "new" case tme: MemberEntity => - val attr: String = if (tme.isImplicit) "implicit " else "" - val kind = if (tme.isDef) "def" else if (tme.isVal) "val" else if (tme.isVar) "var" else "type" - attr + kind + ( if (tme.isImplicit) "implicit " else "" ) + + ( if (tme.isDef) "def" + else if (tme.isVal) "val" + else if (tme.isLazyVal) "lazy val" + else if (tme.isVar) "var" + else "type") } def boundsToHtml(hi: Option[TypeEntity], lo: Option[TypeEntity], hasLinks: Boolean): NodeSeq = { @@ -357,7 +360,7 @@ class Template(tpl: DocTemplateEntity) extends HtmlPage { case Some(st) => <span class="result"> extends { typeToHtml(st, hasLinks) }</span> case None =>NodeSeq.Empty } - case tme: MemberEntity if (tme.isDef || tme.isVal || tme.isVar) => + case tme: MemberEntity if (tme.isDef || tme.isVal || tme.isLazyVal || tme.isVar) => <span class="result">: { typeToHtml(tme.resultType, hasLinks) }</span> case abt: AbstractType => val b2s = boundsToHtml(abt.hi, abt.lo, hasLinks) @@ -374,6 +377,8 @@ class Template(tpl: DocTemplateEntity) extends HtmlPage { mbr match { case dte: DocTemplateEntity if !isSelf => <h4 class="signature"><a href={ relativeLinkTo(dte) }>{ inside(hasLinks = false) }</a></h4> + case _ if isSelf => + <h4 id="signature" class="signature">{ inside(hasLinks = true) }</h4> case _ => <h4 class="signature">{ inside(hasLinks = true) }</h4> } diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/class.png b/src/compiler/scala/tools/nsc/doc/html/resource/lib/class.png Binary files differindex c6e3841e53..25a8b4c185 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/class.png +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/class.png diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/class_big.png b/src/compiler/scala/tools/nsc/doc/html/resource/lib/class_big.png Binary files differindex 1969cff9e2..51e85957fe 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/class_big.png +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/class_big.png diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/index.css b/src/compiler/scala/tools/nsc/doc/html/resource/lib/index.css index 63a2ffaa71..0bae7dbc3a 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/index.css +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/index.css @@ -41,7 +41,7 @@ h1 { right: 0; left: 0; top: 0; - background-color: grey; + background-color: #B78E99; } #textfilter { @@ -124,14 +124,14 @@ h1 { float: right; font-weight: normal; color: white; - padding: 1px 4px 1px 4px; + padding: 1px 0.5em 1px 4px; } #tpl .packages > li > h3 { display: block; - background-color: #142556; + background-color: #2C475C; color: white; - padding: 1px 4px 1px 4px; + padding: 1px 4px 1px 0.5em; font-weight: bold; display: block; } @@ -140,6 +140,10 @@ h1 { display: block; } +#tpl .templates > li { + padding-left: 0.5em; +} + #tpl ol > li .icon { bottom: -2px; position: relative; diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/template.css b/src/compiler/scala/tools/nsc/doc/html/resource/lib/template.css index 5c8822b1c1..f315a283b6 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/template.css +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/template.css @@ -1,159 +1,191 @@ * { - color: black; - text-decoration: none; - font-family: inherit; - font-size: inherit; - font-weight: normal; - border-width: 0px; - padding: 0px; - margin: 0px; + color: black; + text-decoration: none; + font-family: inherit; + font-size: inherit; + font-weight: normal; + border-width: 0px; + padding: 0px; + margin: 0px; } body { - font-family: sans-serif; - font-size: 10pt; + font-family: sans-serif; + font-size: 10pt; } a { - cursor: pointer; + cursor: pointer; + text-decoration: underline; + color: #69481D; /* brown */ } a:hover { - text-decoration: underline; + text-decoration: none; } #owner { - padding: 4px; - font-size: 12pt; - display: block; + padding: 4px; + font-size: 12pt; + display: block; +} + +#owner a { + color: black; } .value #owner { - background-color: #ced8f4; + background-color: #7996AC; } .type #owner { - background-color: #f4cece; + background-color: #799F5A; } #definition { - display: block; - padding: 6px; + display: block; + padding: 6px; } #definition > img { - float: left; + float: left; } #definition > h1 { - padding: 12px 0 12px 6px; - color: white; - font-size: 24pt; - display: inline-block; + padding: 12px 0 12px 6px; + color: white; + font-size: 24pt; + display: inline-block; +} + +#signature > span.kind { + font-size: 11pt; + display: inline; + float: left; + text-align: left; + width: auto; + padding-left: 6px; +} + +#signature > span.symbol { + font-size: 11pt; + text-align: left; } .value #definition { - background-color: #142556; + background-color: #2C475C; } .type #definition { - background-color: #561414; + background-color: #385E1A; } #comment { - padding-left: 8px; + padding-left: 8px; } #values > h3 { - color: white; - padding: 4px; - background-color: #142556; - font-size: 12pt; - font-weight: bold; + color: white; + padding: 4px; + background-color: #7996AC; + font-size: 12pt; + font-weight: bold; } #types > h3 { - padding: 4px; - color: white; - font-weight: bold; - font-size: 12pt; - background-color: #561414; + padding: 4px; + color: white; + font-weight: bold; + font-size: 12pt; + background-color: #799F5A; } #constructors > h3 { - padding: 4px; - color: white; - font-weight: bold; - font-size: 12pt; - background-color: #000000; + padding: 4px; + color: white; + font-weight: bold; + font-size: 12pt; + background-color: #333; } /* Member cells */ div.members > ol { - background-color: white; - list-style: none + background-color: white; + list-style: none } div.members > ol > li { - display: block; + display: block; } /* Member signatures */ #tooltip { - background: #142556; - border: 2px solid white; - color: white; - display: none; - padding: 5px; - position: absolute; + background: #EFD5B5; + border: 1px solid gray; + color: black; + display: none; + padding: 5px; + position: absolute; } .signature { - padding: 1px; - font-family: monospace; - font-size: 10pt; - clear: both; - display: block; - background-color: #dddddd; + padding: 3px; + font-family: monospace; + font-size: 10pt; + clear: both; + display: block; + background-color: #E5E5E5; } .signature .kind { - text-align: right; - float: left; - display: inline-block; - width: 7em; + text-align: right; + float: left; + display: inline-block; + width: 8em; +} + +.signature > a > .symbol > .name { + text-decoration: underline; +} + +.signature > a:hover > .symbol > .name { + text-decoration: none; +} + +.signature > a { + text-decoration: none; } .signature .symbol { - display: inline; - padding-left: 0.7em; + display: inline; + padding-left: 0.7em; } .signature .name { - display: inline-block; - font-weight: bold; + display: inline-block; + font-weight: bold; } .signature .symbol .params .implicit { - font-style: italic; + font-style: italic; } .signature .symbol .name.deprecated { - text-decoration: line-through; + text-decoration: line-through; } .signature .symbol .params .default { - font-style: italic; + font-style: italic; } #values .signature .name { - color: blue; + color: blue; } #types .signature .name { - color: red; + color: green; } /* Comments text formating */ @@ -161,169 +193,181 @@ div.members > ol > li { .cmt {} .cmt p { - margin: 2px 0 2px 0; + margin: 2px 0 2px 0; } .cmt code { - font-family: monospace; - font-size: small; + font-family: monospace; +/* font-size: small;*/ } .cmt pre { - display: block; - font-family: monospace; - font-size: small; - margin: 2px 0 2px 0; + display: block; + font-family: monospace; +/* font-size: small;*/ + margin: 2px 0 2px 0; } .cmt ul { - display: block; - list-style: circle; - padding-left:20px; + display: block; + list-style: circle; + padding-left:20px; } .cmt ol { - display: block; - padding-left:20px; + display: block; + padding-left:20px; } .cmt ol.decimal { - list-style: decimal; + list-style: decimal; } .cmt ol.lowerAlpha { - list-style: lower-alpha; + list-style: lower-alpha; } .cmt ol.upperAlpha { - list-style: upper-alpha; + list-style: upper-alpha; } .cmt ol.lowerRoman { - list-style: lower-roman; + list-style: lower-roman; } .cmt ol.upperRoman { - list-style: upper-roman; + list-style: upper-roman; } .cmt li { - display:list-item; + display:list-item; } .cmt a { - text-decoration: underline; + text-decoration: underline; } /* Comments structured layout */ p.comment { - display: block; - margin-left: 7.7em; + display: block; + margin-left: 8.7em; } p.shortcomment { - display: block; - margin-left: 7.7em; - cursor: help; + display: block; + margin-left: 8.7em; + cursor: help; } div.fullcomment { - display: block; - margin: 10px 0 10px 0; + display: block; + margin: 10px 0 10px 0; } #template div.fullcomment { - margin: 6px 0 6px 7.7em; + margin: 6px 0 6px 8.7em; } div.fullcomment .block { - padding: 2px 0 2px 0; - border-top: 1px solid black; - border-bottom: 1px solid black; + padding: 2px 0 2px 0; + border-top: 1px solid gray; + border-bottom: 1px solid gray; } div.fullcomment div.block ol li p, div.fullcomment div.block ol li { - display:inline + display:inline } div.fullcomment .block + .block { - border-top: none; + border-top: none; } div.fullcomment .block > h5 { - font-style: italic; - font-weight: normal; - display: inline-block; + font-style: italic; + font-weight: normal; + display: inline-block; } div.fullcomment .comment { - margin: 6px 0 6px 0; + margin: 6px 0 6px 0; } div.fullcomment dl.paramcmts > dt { - display: block; - float: left; - font-weight: bold; - margin: 2px 4px 2px 0; + display: block; + float: left; + font-weight: bold; + margin: 2px 4px 2px 0; } div.fullcomment dl.paramcmts > dd { - display: block; - padding-left: 80px; - border-top: 1px dashed black; - border-bottom: 1px dashed black; + display: block; + padding-left: 80px; + border-top: 1px dashed gray; + border-bottom: 1px dashed gray; } div.fullcomment dl.paramcmts > dt:first-child + dd { - border-top: none; + border-top: none; } div.fullcomment dl.paramcmts > dd:last-child { - border-bottom: none; + border-bottom: none; } div.fullcomment dl.paramcmts > dd + dt + dd { - border-top: none; + border-top: none; } /* Members filter tool */ #mbrsel { - padding: 4px; - background-color: #cccccc; - display: block; + padding: 4px; + background-color: #B78E99; /* grayish pink */ + display: block; + margin-bottom: 10px; } #mbrsel > div > h3 { - padding: 4px; - display: inline; + padding: 4px; + display: inline; + color: white; } #mbrsel > div > ol { - display: inline-block; - background-color: white; + display: inline-block; + background-color: white; } #mbrsel > div > ol#linearization { - display: inline; + display: inline; } #mbrsel > div > ol > li { - padding: 4px 8px 4px 8px; - font-weight: bold; - background-color: white; - display: inline-block; - cursor: crosshair; + padding: 4px 8px 4px 8px; +/* font-weight: bold;*/ + background-color: white; + display: inline-block; + cursor: crosshair; } #mbrsel > div > ol > li.in { - background-color: white; + background-color: white; + color: #4C4C4C; } #mbrsel > div > ol > li.out { - color: #888888; - background-color: #bbbbbb; + color: #80384E; + background-color: #9E6A77; +} + +#mbrsel .hideall { + color: #4C4C4C; + font-weight: bold; } +#mbrsel .showall { + color: #4C4C4C; + font-weight: bold; +}
\ No newline at end of file diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait.png b/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait.png Binary files differindex b1b043080a..b3871a01c4 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait.png +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait.png diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait_big.png b/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait_big.png Binary files differindex 63be0d7a3a..a44871309e 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait_big.png +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/trait_big.png diff --git a/src/compiler/scala/tools/nsc/doc/html/resource/lib/type_tags.ai b/src/compiler/scala/tools/nsc/doc/html/resource/lib/type_tags.ai index 5d5d25ee98..b56fd1d3cd 100644 --- a/src/compiler/scala/tools/nsc/doc/html/resource/lib/type_tags.ai +++ b/src/compiler/scala/tools/nsc/doc/html/resource/lib/type_tags.ai @@ -1,5 +1,5 @@ %PDF-1.5
%âãÏÓ
-1 0 obj
<</Metadata 961 0 R/Pages 2 0 R/OCProperties<</D<</RBGroups[]/ON[37 0 R 65 0 R 78 0 R 90 0 R 116 0 R 129 0 R 141 0 R 167 0 R 180 0 R 192 0 R 218 0 R 237 0 R 255 0 R 287 0 R 306 0 R 324 0 R 356 0 R 375 0 R 393 0 R 425 0 R 444 0 R 462 0 R 480 0 R 515 0 R 534 0 R 552 0 R 570 0 R 605 0 R 624 0 R 642 0 R 660 0 R 695 0 R 699 0 R 718 0 R 735 0 R 753 0 R 785 0 R 789 0 R 808 0 R 825 0 R 843 0 R 878 0 R 882 0 R 901 0 R 918 0 R 936 0 R]/OFF[15 0 R 27 0 R]/Order 877 0 R>>/OCGs[15 0 R 27 0 R 37 0 R 65 0 R 78 0 R 90 0 R 116 0 R 129 0 R 141 0 R 167 0 R 180 0 R 192 0 R 218 0 R 237 0 R 255 0 R 287 0 R 306 0 R 324 0 R 356 0 R 375 0 R 393 0 R 425 0 R 444 0 R 462 0 R 480 0 R 515 0 R 534 0 R 552 0 R 570 0 R 605 0 R 624 0 R 642 0 R 660 0 R 695 0 R 699 0 R 718 0 R 735 0 R 753 0 R 785 0 R 789 0 R 808 0 R 825 0 R 843 0 R 878 0 R 882 0 R 901 0 R 918 0 R 936 0 R]>>/Type/Catalog>>
endobj
961 0 obj
<</Subtype/XML/Length 44678/Type/Metadata>>stream
+1 0 obj
<</Metadata 1054 0 R/Pages 2 0 R/OCProperties<</D<</RBGroups[]/ON[37 0 R 65 0 R 78 0 R 90 0 R 116 0 R 129 0 R 141 0 R 167 0 R 180 0 R 192 0 R 218 0 R 237 0 R 255 0 R 287 0 R 306 0 R 324 0 R 356 0 R 375 0 R 393 0 R 425 0 R 444 0 R 462 0 R 480 0 R 515 0 R 534 0 R 552 0 R 570 0 R 605 0 R 624 0 R 642 0 R 660 0 R 695 0 R 699 0 R 718 0 R 735 0 R 753 0 R 785 0 R 789 0 R 808 0 R 825 0 R 843 0 R 878 0 R 882 0 R 901 0 R 918 0 R 936 0 R 971 0 R 975 0 R 994 0 R 1011 0 R 1029 0 R]/OFF[15 0 R 27 0 R]/Order 970 0 R>>/OCGs[15 0 R 27 0 R 37 0 R 65 0 R 78 0 R 90 0 R 116 0 R 129 0 R 141 0 R 167 0 R 180 0 R 192 0 R 218 0 R 237 0 R 255 0 R 287 0 R 306 0 R 324 0 R 356 0 R 375 0 R 393 0 R 425 0 R 444 0 R 462 0 R 480 0 R 515 0 R 534 0 R 552 0 R 570 0 R 605 0 R 624 0 R 642 0 R 660 0 R 695 0 R 699 0 R 718 0 R 735 0 R 753 0 R 785 0 R 789 0 R 808 0 R 825 0 R 843 0 R 878 0 R 882 0 R 901 0 R 918 0 R 936 0 R 971 0 R 975 0 R 994 0 R 1011 0 R 1029 0 R]>>/Type/Catalog>>
endobj
1054 0 obj
<</Subtype/XML/Length 44482/Type/Metadata>>stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.1-c036 46.277092, Fri Feb 23 2007 14:16:18 "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> @@ -17,15 +17,15 @@ xmlns:xapGImg="http://ns.adobe.com/xap/1.0/g/img/"> <xap:CreatorTool>Adobe Illustrator CS3</xap:CreatorTool> <xap:CreateDate>2009-11-23T17:10:12+01:00</xap:CreateDate> - <xap:ModifyDate>2009-11-24T11:35:55+01:00</xap:ModifyDate> - <xap:MetadataDate>2009-11-24T11:35:55+01:00</xap:MetadataDate> + <xap:ModifyDate>2010-04-13T20:05:12+02:00</xap:ModifyDate> + <xap:MetadataDate>2010-04-13T20:05:12+02:00</xap:MetadataDate> <xap:Thumbnails> <rdf:Alt> <rdf:li rdf:parseType="Resource"> <xapGImg:width>256</xapGImg:width> <xapGImg:height>208</xapGImg:height> <xapGImg:format>JPEG</xapGImg:format> - <xapGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA0AEAAwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB
UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE
1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ
qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy
obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp
0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo
+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXlX54yWv13ynbe
YJ5YPIt1eTJ5h9NiqPIsYeySUp+84F0cmm21eoXMrT3Uq+rown07kF+VVxocf5iarp3kyXn5TTTI
p9Sht3kmso9WaUIPRklHL4oVbcfap/kik9QSYAy+q/sYw57PYswm12KuxV2KuxV2KuxV2KuxVIfN
nnvyn5Sht5vMOopYrdOUt1KySu5UVYrHEsj8V2q1KCo8RlmPFKfIIMgOaK8t+aNB8y6YNT0O8W9s
i7RmRQyFXTqro4V0O4NGA2IPQjBkxygakFBB5JpkEuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2K
uxV2KuxV2KqdzbW91by21zEk9tMpjmhkUOjowoysrVBBGxBwg0qnp+m6dptollp1rDZWcVfTtreN
Yol5Es3FECqKsSTiZEmytIjArsVdirsVdirsVdirsVdirzfzhoWrWf5gv5xS2nu9MTy7caaYrFPW
uxdCYyxqkPCSvqep8LcSoI+OgpXJxyHDw9eK2EhvaL/LXTNZk1rzN5r1LTH0VfMMlobPTJuHrrFb
QEetNwJ4vK0p5IQGUjfBmkKjEG+G1iOZZ7mOzdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirs
VdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsV
dirsVcSAKnpirzDz5+fflbyxdT6bao2p6tCSjwREemjjj9uToP2gQPiBH2aGuZWHSSnv0a5ZAHnF
1/zkn5xub1JrWwgtbUUra8vU5UNTV2Su422zPh2aK3LUcxZh5Z/5yQ0y7nEOv6e2ncqBZ4W9WMUU
/aJ4kcmoBtQdS2U5ezJRHpNso5g9itrq2ureO4tpVmglUPFKhDKyncEEdQc1pFc29UwK7FXYq7FX
Yq7FXYq7FWAeefzr8n+U5fqssh1DUOKt9UtSrsFcEgs1eK/sn4iKg1FcyMWmlNhKYDzkf85Raw5X
h5eh4g/GTcPVh7AJ8P45nDsy+rV4zJvK3/ORmg38wg160fSpHb93Mp9WAClAGfZq178QPHpvVl7N
nHcbso5geb1u2uYLmCO4t5FlglUPHIpqGVhUEH5ZryKblTArsVdirsVdirsVdirD5/76T/WP682M
eTSVmFDsVT7y9/vNJ/r/AMBmJqObZBNcoZuxV2KuxV49/wA5C/mZd+W9Ii0TSJxHqmqKyyypQyQw
inJga1RjWg271B2zL0uHiNlrySp4F5D8ja95u1T6lpcXqSAc7i4kJEUSk/akeh6ntuTm4lkjijcn
HESTs9qs/wDnGUi3/wBJ18LcEdIrbkin5tIpb7hmL/K1HaP2s/A82Gee/wAo9f8AKcP1uRkvtLJC
m8hBHAnYCVDXjXsake9cz9LroZtuUmueMxTj8jvzBudH1qLy1fz/AO4i+ZvqpkO0MxBPFSSOKyH/
AIb5k5i9paUEcY5s8M+j6PzQuU7FXYq7FXYq7FXYq8t/Pz8yJfKXlyOy09uOsatyS3fekca/3knS
hpUACvU7giozJ02Lil5BhOVB4d+W/wCU2uee7W91K2v4Ingm43DXRkLu8g5l+Sq9a965tJ6iOKgQ
0CBky2y/5x784SatcWTS28VpbcAdQYv6chZAxES8ebceVCdhXvln8p4xEHe+5Hgytb5q/IrzPoem
yahFJDqVtApe4WDksiKNy3Bh8SgdaGvtk8HaOPIeE7FEsJG6I/JH8wrrRtai8t38pbSdQfjalyT6
M56Ku+yyHalPtfMnKe0dICOMcwywz6PpDNC5TsVdirsVdirsVdirD5/76T/WP682MeTSVmFDsVT7
y9/vNJ/r/wABmJqObZBh2vfmPq2n+YvMVjC1kJNDs3uNO8vyI51LV2WxN16lm3rR0jST92wWCQ/A
3Q0yhm8/8wfnR5wvPIGoO9xp2kPdWWr/AFbXopI2WV7W0heK1tfqV/di3vne5kKcp2IEXLhUlUVS
S+8zeepr/Wbe11+5hnkufqswM91LJHFNrdjZwia2WaEWB9KdhbvAQ1xFycsr0YKvV/IGoecD+Znm
3TNct7uKwhstNfSY5Z4preOBJry3SVaTzS87sQ+oxcc6qVc7IWVfP/5+6ld3n5qanFcPz+oCO2hN
KUj4+qq0Hh6tPxzb6QARDjz5vff+cdtJtbP8tLS9iUevqc08079z6crQKK+AEX45ia6ZOSu5sxDZ
iH5q/mp5q0X8xjZadcmGw0r0OdoAOE5kjWZ/U2qarJx9qVG+Z2j0cJ4rI3LVkyESe46np9pqul3N
hcrztryJopFI/ZdaVoe4zUQmYyBHMOQRYfFRvZrC7hvIW43FpKk0TA1o8TBlII9xnW5gDGnAjzfb
Ng8j2Nu8jc5GiQu5ABZioqaCg39s5CXN2AV8CuxV2KuxV2KuxV8gf85FawuofmZPGgZI7KFLfiaC
rozB32J67CvgBm20kai4+Q7vUf8AnFj/AJRzWf8AmKj/AOTeV9o84+5lh6pz+cn5p655R1DT9P0i
KH1J4zczzTqXBXmUVFAK0+yeR+VMdDo45QTJcuQx5M98o6+nmLyzp+semI/rsIeSLqFcVV1FeoDA
0zCzY+CZj3NkZWLfKX5gWyaF521SGwPpCyvWktOO3Cj+ogH+rtnS45ceEE9Q4ZFSfX1g/Oxt3qTy
iRqtUtuoO9e+csebnBXwK7FXYq7FXYq7FWHz/wB9J/rH9ebGPJpKzCh2Kp95e/3mk/1/4DMTUc2y
Ca5QzdirsVdir5P/AOcmvLJ0zzxFq8KUttUhDSNy5H10JDV68Qwpx+Rp0zaaSdxruaMg3Z7/AM40
fmDptxoP+EbydYdQtJHk09HNPWhlJdlSvV0csSPA+xyrW4jfGGWOXRmXm78mtD8y+a4NfuLmSGnp
i+tFRWWf0tl+In4aqArbHYdsGDXSxw4QFliBNpr+ZXnvTvKPly4uZZlGpTRsmm21RzeUigbj14IT
Vj9HUjKtLgOSQHTqynKg+UPKulTeYfNWm6TFH6wnnUzJVRWJDykFWIWpUUFTuSBm91ObhiS4sI7v
te2gW3t4oFLMsSKisxqxCilSfHOaJtzVTArsVdirsVdirsVfLH/OUnl6e084WetqgFrf24iJWp/e
wkkluwLBth/kk5stHP000ZBuzX/nFKTn5c1v2u4/+TeQ15shliZt+ZP5T2Xna4srpr5rC6tFMTOI
xKHiJ5caFkoQa0Ne/TI6XWHCCKsFOTHxMltING8peWIoXmFtpWk24Vp5T0VBuzHuzHw6k7ZjyMsk
76lkKiHyPqFxc+ePP7rbI/PWb5mVEBZ0hZiSaKGJ9OIVNB2zfykMWOu4OKBZfZdrE0NtDCzBmjRU
ZgKAlRSoG9M5wuYqYFdirsVdirsVdir481v/AJyE8+2us39tHHY+nBczRpyhcnikhUV/ee2bmOIU
GglBf9DG/mD/AL7sP+RL/wDVTJeEEW7/AKGN/MH/AH3Yf8iX/wCqmPhBbe+f848+eda84eWdSvtW
WFZre99CMQIUXj6SNuCzb1bNfq4gSDbDk9UzEZuxV2KuxVjnn/yPpnnPy7No1/VAx9S3mABaOVQQ
rivhXt8ulRlmLIYGwiQt8d+b/IHm7yVf01C2lSBXrb6hGG9JqMQp5j7LVU7fSKjfNtjzCXJxzGle
0/N38xLe2FtH5hvhEBQBpmZgB2DNVh9+S8PGecQiz3oGzXzX5u1b0rVLrWNTmIDuzNK+54gySOfh
FTSrGmWHLGA7giiX09+S/wCUaeTrI6nqLCXXrxKSkCixRnf01qA3+t+rbbU6nUGZro3whT1DMVsd
irsVdirsVdirsVY55+8kab5z8uTaNfkoGPqQTAAtHKoPFxUdq9vl0qMsxZDA2ESFsK/IHyRrvk61
8waZq0XEm7RradfsSxhCvNa79R0P6qE3anIJUQwgKYz/AM5A/mD5r8p+c9N/QWoyWYm08NLGAskb
ETSCpjkDoT70y/SY4SieIXuxyEg7PIdX8+fmD53uI7G7vLnVJCax2UKBUqP2jFCqJsP2iNszYjHj
3AprJJe+fkn+TU/lflrXmCON9ZmQCKHZxbqaNRSDx5V+0adR8Owq2u1Wp49hybYQp7BmE2uxV2Ku
xV2KuxV2Kvzv8zf8pJqv/MZcf8nWzew5BxyluSV2Kvqz/nEX/lCtZ/7aR/5MR5rdb9Q9zbj5PUtR
84Saf51sPL9zZrHYX2n3l+urvOqqhsWhEqNEV2ULcK3MuPlmEzYy35u6jN5d13zDY6AraZoF1JHc
C7uzbTzWi2lveQzwRCCWstwl2PShcr25MrHiFV11+cHop5quFtdONt5ZLRPC+plL0yiSONWubb6s
wtoGZ2/emRvs/ZPZVUufzetLe80HSpH0Y6vrUX1ssNYQaets05hiaC7kgR7mSanwRpBuQwqAORVe
iYqpz21vcJ6c8Sypv8LqGG4Knr7EjCCrGT+Vf5bk1by1pzN3ZrdGJPiSRUn55Z40+8seEJ3pGgaL
o9utvpdlDZwrXjHEgUDlSoHgNhtkJSJ5pApH5FLsVdirsVdirsVdirsVdiq14kcUYb0I5AkMAetG
FCPoxVjHmj8s/KHmjULS+1mz+sz2Y4JyNQycuXB+VTxrXpTqcthmlEUGJiCmeieUfLGhBho+mW9g
H48vQjCVKggHbvv16nIynKXMpAATbIJdirsVdirsVdirsVdir87/ADN/ykmq/wDMZcf8nWzew5Bx
yluSV2Kvqz/nEX/lCtZ/7aR/5MR5rdb9Q9zbj5PXtW8p6Rq2s2eqX6GdrO0vbAWjhHt5YNR9H11m
jZW57WygCtKE1B7YTNitx+SHlRLiSXRbi48uxy38epyWulQ6dHbtPBBHBAGhmtJ0ZITE0sakUEru
/wBrjxVTeXyA0urT6w/mDUzqphktbC8pYcrKCeaOeWOBfqnBg5gRf36yEL0pU4qlE35JeWJLRrVL
6/hiureS01ng1vXUIZrqW8kS45QNw5T3MrVt/SI5UFABRV6FirsVdirsVdirsVdirsVdirsVdirs
VdirsVdirsVdirsVdirsVdirsVdirsVfImtf840fmhd6xf3cMFoYbi4lljJuVB4u5YVFPA5tI6uA
DUYFB/8AQr35rf8ALPZ/9JK/0yX5yCOAu/6Fe/Nb/lns/wDpJX+mP5yC8Be7f84//l95j8keWtR0
/XUiS4ubz6xEIZBIOHpIm5HupzC1OUTIIbIinqOYzJ2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2Kux
V2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV
2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2
KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2K
uxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2Ku
xV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KoY6lYgkGZQRsRg4g2eFLud+k7D/
AH+uPEF8KXc79J2H+/1x4gvhS7lWG4hmUtE4cA0JHjiCxlEjmqYWLsVdirsVU7m5gtoJLidxHDEp
Z3PQAYpAt4v5v/5yX0iwv5LLy7ZjVvSLI12XKQE0FCjUq1G5DYUIoQ2UyygOxwdnSkLOzDIf+civ
zFLDnFZNEOoEREhH+ty4/wDCZV45dgOyIHveh+Tv+chdF1W6Sz121/RM8rBYpg3OCpIWjOaFepNS
KAd8tjmB5uFqOypwFx3D1tWVlDKaqRUEdxlzqm8VdirsVdirsVdirsVdirsVQuo6rpum2z3OoXMd
rAil2klYKAoIBO/hyGAllGJPJjjfm1+Wol9L/EVkWqBVZKrv/lgcfxwcY724aXL/ADSn+la7ourw
ifS72G8iPIB4XVweJAalPCowggtU8co8xSOwsHYq7FXYq7FXYq7FWHzf30n+sf15QXZx5LMWTsVT
/wAvf7zSf6/8BlkHC1PMJpk3HdirsVdir5s/5yS/Mi6n1T/BunSmO3gAbVGUsC7NRliIIX/WPWop
Q0JrRkl0drocH8Ree+QPy/1/zbem10mEFIqG5upCVhiDdC7AHrTYAEnKBEyOzt8meGGNyeyWf/OM
6iEfWtepMRusVtVQfm0lT9wyz8v5uEe265Q+39jy/wA7+VYvLXmO60P60L1rUR8pwnp1MiCQDjyf
sw75ROPCadzpc3jYxOqt6h+QPn+7klbynqU/qJFGX0ySQ1YKCAYuRI2WvwihPbYDMjBkvZ0Xa2jE
Txx683uOZLpHYq7FXYq7FXYq7FXYqwz80/zGsPJHl57x2WTUJj6dlaBh6juwNGAo1FFN2O3zNFMZ
SoN+nwnJKuj5YuNT84/mJ5liS7mN5f3stLW0DCOBGIoAisQq0VQKnc03JzFlIyL0GLFDFG+gZvqn
5C67oPle91zVby2jNoiuLSHlKx5OqUZyEVftduWMsRAsrh7QxzyCEQd+rC9J1DVNGvEvtJuntLlC
rB4zseJ5AMpqrCorRhTKRMh2WXTRmKIfS/5UfmdF5vsHt70xwa3a0E8ANPUBqfUjB6rt0rUd+xOb
jycQeV12iOGW30vQMtcB2KuxV2KuxV2KsPm/vpP9Y/ryguzjyWYsnYqn/l7/AHmk/wBf+AyyDhan
mHmvm3yb5z1j8xNevNMAeL9HaZZ27Xz/AFSEWk8l0dQisr2O0upopmEUatwP2ZKtuIuM3HS3yTqP
5m6f5Ut9Pntb+x1bS/LtsnlrQ47NpLC7ki0oEG/u5LTlBcLcKVMDTRUYBfjryKqL8k+Y/wAz7rV7
SHzRc6jbaaxVtPmtNMnY3M5kAe11OSbSrdreNBSkqQRKVb+8YqTiqf8A5P6x+ZGpJqb+dFMUqiAp
ayQTQtBcEyevHG7WVlDJCKJw9OSem9ZW5Cir5V863M1x5712Sd2kcX9xHzclm4xysi1Y7miqN8xJ
vR6f6Q+svyN0a0038ttLeFQJb9Wu7mQDdndiFr/qoFX6MvxCoup7QyGWU+Wzzj81Pzf842fm+90n
R7v9HWensIfgSNnkfiCzszq3c0AGUZMpug7XQ9n4jjEpCyXlmpa1qOr6nPqWoy+ve3JDTy0VeRAC
/ZUBRsOwyiRvcu4wwEI8MeQR3krVptL87aRfQAGWGbZT0IZSpB+g5PEaLja+IljIL7KzPeOdirsV
dirsVdirsVdir5A/5yG8xXOq/mXdWLvW20hVtoUVmZOTKJHYAn4WPIK1P5cx8h3d3oYAQB72Wf8A
ONeh+XLzUdQvtSRG1LT3tW0pmlaNldxN6nFFZQ/2V6g5HCATu2dpTnGAEeRu/sfQmvado+paRc2O
sKrabMoFyru0SkBgRV1ZCPiA75kyAI3dJinKMgY/U+XvzS0ry9o/nCSx0BETThBE6rHK0y82B5fG
7OfxzAyxAOz13Z2ac8dz52l3kHXbjQ/O+k3sDcVknS2nBYorRzMEPMj9kEhvoxxSoo7RxCeMvsHN
g8c7FXYq7FXYq7FWHzf30n+sf15QXZx5LMWTsVT/AMvf7zSf6/8AAZZBwtTzCaZNx3Yq7FXYq+J/
zn8sz+XfzE1ONgxgvJDdwSuVLOJfictx2B51NPAjYZjTFF3ulycUA93/AOcdPzA03VPKsHlq4nWP
V9L5rFE5o01uzF1ZK9SnIqQOgAyzFLanC1+EiXGORZJ50/Jjyr5q1Q6rPJcWV9IAJ5LZk4ycRxBZ
XVviAAFRjPEJG103aOTFHhFEPnf8yfL1p5V84X+i2jyPa24iMDykM7LJCjksVCivJj2GYs4Uaeh0
mpOTGJHmmP5HaBPr35hWs/pCSy0oG5uiwJTcFEUkA7kkkV60yzDHdwu0s9QrvfWmZbzbsVdirsVd
irsVdirsVfFP53Wslp+a2vc68Zp1mjYgiquinavg1V+jMafN32kl6AmH5NShvzA0Ed/rS/8AETlc
PqDm6qV4Je59KfnCrN+WuuBQSfSQ0G+wmQnMnL9JdD2d/fx/HR8lKab5gPXhGaAj3nmfSLWOvKW8
gBIBai+oCzUG/wAIqcnAbuLq8lQPufbebB412KuxV2KuxV2Kvg3zD5687R+YNTjj8w6mkaXc6oi3
lwAAJGAAAfoMxSXoYQHCNkv/AMfeev8AqY9U/wCk24/5rwWy4B3O/wAfeev+pj1T/pNuP+a8bXgH
c+mf+cWdZ1jVfKGrTapfXF/MmoFEkupXmZV9CM8QXLECpy/FydVrwBIe57TljguxV2KuxVg35s/l
hYee9DELOYdTtAz2FwADRj1U1p8LUodx+ApGUbcjT5zjPk+RvMXlLzX5P1JoNTtZbWSFwI7pK+kz
UDKUkFN+JDUNGHcDMcxp3WPMJDZHwfmz+YUUSxr5i1DioooNxI23zJJwWe9PhY/5o+Sv5e8teffz
B1XlbJcXzyMFuNVu2kaNBUCrzPyJpXoKn2xECVyaiGMVy8n1h+XH5d6T5J0NLC0/f3j/AB3t8wAe
WQ05ePFdhRa9u53zJjGnR585ySsssyTQ7FXYq7FXYq7FXYq7FXh//OSH5ZXOt2UXmfSkabUbFBDc
WyB2aWCpb4dyKodwtBWp6sQMqyR6ufos/CeE8nzt5U8xzaDr+natGvNrC4iuPTOwcRsGKk/5QFMo
5G3bn1RMT1D7H0j82fy01vTFuP07YwRzLSW0vporeReQ+JHjmK1p0NKj3zJEwXQy02SJ5H4Pm385
dZ0G4893r6FLby6aI4Fie04+jVYlDBeHw7HwzGyAGWzv9HOUcQEufmzr/nHT8u7qfUB5x1NGiigF
NLiYOpf1FIMwIK0FNgN6gmooVJtxQ6uB2hqrHCH0Vl7p3Yq7FXYq7FXYq/PHzL/ykeq/8xlx/wAn
WzEPN6OH0hLcWTsVfVf/ADiN/wAoVrP/AG0j/wAmI8uxcnU9ofUPcyfzh501vyv5rv77VJNQXQYr
OaTRLO2XT3sry4tNPmvJ4Z24SahHJxiLJQqnw9d6G1wEjXz15yHlaWefUryz8y2V/oU+qWdza6d6
Bs9YvI7YRWht2uQIXBkoZJGmHHfjUYqna+d/Mup/mtP5aiN5pGlyadqUFiZtMn+K8s5bQC/FxLEI
XipPIiBXKbKW3kjXFWPSfmv5uj8meQLsi7Nxqa6Pea/rEWmz3MM0V1ewW0trGbeCSGOaVZHamzbB
UBd1oq9wxVQu7CyvEMd1BHOhVkIkUN8LU5DfxoMUgkcmOj8rPy6Dch5esRJ/v0RASV8eY+KvvXI8
IbfzE+9ksNvbwJwgiSJNvhRQo2FBsPYUyTUSqYodirsVdirsVdirsVdirsVakjSRGjkUPG4KujCo
IOxBBxV5Z5//AOce/KXmi6n1K0ZtL1SarPJCAIpHPH4pEpT+Ykjck7nK5YwXLw6uUdjuHnrf84l6
2JqJ5itzDX7Zt5A1P9XmR/w2R8Jyf5QHczLyX/zjR5X0a4ivNauG1m6ibksTqFt6gqVJiNa9CCGL
Df2yQxgNOXXSlsNnsUUMUKCOJFjQVIVQAKk1J28Sa5Y4JK7FXYq7FXYq7FXYq/PHzL/ykeq/8xlx
/wAnWzEPN6OH0hLcWTsVfVf/ADiN/wAoVrP/AG0j/wAmI8uxcnU9ofUPc9kHlry4NXl1oaVZjWLh
PSn1IW8X1mSPiF4PNx9Rl4qBQnplrgKVj5Q8p2FlJY2OiWFpYyzJcy2sFrDHE08TrJHKyKoUujor
K1KggHtiqYtaWrXUd40MbXcMbwxXBUGRI5SjSIr05BXaJCwHXiPAYqox6PpEenwadHY26afamI2t
msSCGI27rJAY4wOK+k6KyUHwkAjpiqLxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2Ku
xV2KuxV2KuxV2KvnjU/+cR/r2pXd7/iv0/rU0k3p/o/lx9Ri1K/WRWlfDKjidjHtChXD9v7EN/0J
3/393/cu/wCzrB4Xmn+Uf6P2/sd/0J3/AN/d/wBy7/s6x8LzX+Uf6P2/serflH+V/wDyrzRbzTP0
n+lPrdz9Z9b0Pq/H92qcePqTV+xWtcsjGnF1GfxDdUzrJOO7FXYq7FXYq7FXYq7FXYq7FXYq7FXY
q7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq
7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXgPn6HTvM
H5hebbDzNqbm20O1s5PLehSXiWEEzywB5pVdxxZ0djvuTWlaAUpnuS7PTyMIxIHPmatm/wCQXmLX
9e/L9LvWmkmkhupre0vJg5kngQKRIzuT6hWRnj5D+Wh3ByWMkjdo10IRyel6PljhuxV2KuxV2Kux
V2KuxV2KuxVi3nr8wLDymNPtmtLjUtY1iR4NI0y2A5TSoB9uRiFjQM6Bm3IrUKaGkZSpuw4TOzdA
c1PyP+Yth5nuL3TJ7STSfMOmmmoaRcMrOorTnE67Sx1IHIAdR2KkiM7Z59McYB5xPIstybjOxV2K
uxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxVK9W8q+WNZlSbV9HstRmjXhHJd20U7Kta8VMisQ
K4CAzjklHkSEwtra3tbeK2tokgtoEWOGGNQiIiDiqqq0CqoFABhYk2qYodirsVdirsVdirsVdirs
Vdirz381vInmDzBe+W9d8vyw/pXyzdtdx2dw7RJcIxjdoxIoajMYFWhoCGNSMhKJPJydPljEES5S
Q/5b/l3q2nebNZ87a5/ompaypjh0hJ/ra20UhSSQSzlV5vzjAUJ8Kr3avwiMKNs9RqOKIgNwOr0r
LHDdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir//Z</xapGImg:image> + <xapGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA0AEAAwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB
UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE
1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ
qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy
obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp
0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo
+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXlX54yWv13ynba
/PLB5FuryZPMPpsVR5FjD2aSlP3nAujk022r1C5k6fka+ro1ZOl8kH+VVxocf5iarp3kyXn5TTTI
p9Sht3kmso9WaUKPRklHL4oVbcfap/kilmckwBl9V/YjH9W3J7DmE3OxV2KuxV2KuxV2KuxV2KpD
5s89eU/KUNvN5h1BLFbpylupWSV3KirFY4ld+K7ValBUeIycMcp8gxlIDmivLfmfQfMumDU9DvFv
bIu0ZkUMhV06q6OFdDuDRgNiD0IxnjlA0UxkDyTTIJdirsVdirsVdirsVdirsVdirsVdirsVdirs
VdirsVdirsVU7m2t7q3ltrmJJ7eZTHNDIodHRhRlZWqCCOoOEGlU9P03TtNtEs9OtYbKzir6dtbx
rFEvIljxRAFFSSTiZE7lAFIjAl2KuxV2KuxV2KuxV2KuxV5v5w0LVrT8wW84pbT3emJ5euNNMVin
rXYuhMZY1SHhJX1PUorcSoI+OgpXIxyHDw9eJrkN78kX+Wumaw+s+ZfNepaY+ir5hktDaaZNw9dY
raAj1puBIV5WlPJCAykb45pChEG+FYDcnvZ7mO2OxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2Kux
V2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV
2KuxV2KuJAFT0xV5j58/Pryv5Zup9NtUbU9WhJR4YiPTRxx+3J0H7QIHxAj7NDXMrDpZT36NU8oD
zi6/5yR843N6k1rYQWtqtK2vL1OVDU1dkruNtszo9nCmg6gsv8tf85H6ZdziHXtPbTuVAs0LerGK
KftE8SOTUA2oOpbKcvZsgNt2cdSDzexW11b3VvHcW0qzQSqHilQhlZTuCCOoOa4iubkqmBXYq7FX
Yq7FXYq7FXYqwDzz+dXk/wApy/VZJDqGoUVvqlqVdgrgkFmrxX9k/ERUGormRi00ptcsgDzof85Q
aw5Xh5eh4j7ZNw9WHagCfD+OZo7Nvq0nU+TJfK3/ADkXoV/MINdtH0qR2/dzKfVgApQBn2ate/ED
7t68vZ047jdlHUA83rdtcwXMEdxbyLLBKoeORTUMrCoI+jNeRTkKmBXYq7FXYq7FXYq7FWHz/wB9
J/rH9ebAcmgrMKHYqn3l7/eaT/X/AIDMXPzbYck1yhm7FXYq7FXj3/OQv5mXflvSYtE0icR6pqis
ssqULwwinJga1RjWg271B2zL0uHiNlqyzp4J5D8ja95t1T6lpcXqSAc7i4kJEUSk/akeh6nt1Oba
WSOONycQRMjQe1Wf/OM5W3/0nXgtwR0ituSKfm0ilvuGY38q1yj9rZ+V82Geevyk17ypD9blZL7T
CQpvIQRwJ2AlQ1417GpHvXM7Ta2GXblJoy4TDfonH5IfmBc6PrUXlu/n/wBxF8zfVjIdoZiCeKkk
cVkP/DfMnMXtHSgjjHNt0+Xei+jc0bnOxV2KuxV2KuxV2KvLvz7/ADIl8peXY7LT246xq3JLd96R
xr/eSdKGlQAK9TuCKjMnTYuI+TVlnQeH/lv+U2uee7W91K2v4I3gm43BujIXd5BzL8lV6171zZT1
EcVAhx44zNllj/zj55wfVriyaW3itbbgDqDF/TkLIGpEvHk3HlQnYV75Z/KWMRB3vuY/lpEteavy
L8z6JpsmoRSQ6lbQKXuBByWRFG5bgw+JQOtDX2yzD2jjyHhOxYz08oi0R+SX5g3Wja1F5cvpS2k6
g/G1Lkn0Zz0Vd9lkO1Kfa+ZOUdo6UEcY5s9Pl3ovo7NG5zsVdirsVdirsVdirD5/76T/AFj+vNgO
TQVmFDsVT7y9/vNJ/r/wGYufm2w5MO178x9W0/zF5isYWshJodm9xp3l+RHOpauy2JuvUs29aOka
Sfu2CwSH4G6GmUM3n/mD86fN955Av3e503SHurLVzba7FJGyyva2kLRWtr9Sv7sW9873LlOU7ECL
lwqxVFUlv/M3nma91i2tNfuYJ5Lj6rcAz3Usscc2u2VpD61us0P1A+jcMLd4GVriLk5KvRgq9W8g
ah5wP5mebdM1y3u4rCGy019Jjlnimt44EmvLdJVpPNLzuxD6jFxzqpVzshZV4B+fmpXd5+ampxXD
8/qIjtoTSlI+PqqtB4erTNtpQBEOJlO73z/nHbSbWz/LW0vYlHr6nNPNO/c+nK0CivgBF+OYmtkT
krubcA9LEfzU/NPzVov5jGy065MNhpXoc7QAcJzJGsz+ptU1WTj7UqN8ztJpITxWRuWjNmkJ7dHu
Gpafa6rpdzYXK87a8iaKRSP2XWlaHuM1MJmMgRzDmEWKfFjXs1hdw3kLcbi0lSaJga0eNgykEe4z
qswBjTqobF9r2DyPY27yNzkaJC7kAFmKipoKDf2zkzzdqFfAl2KuxV2KuxV2KvkH/nInWF1D8y54
0DJHZQpb8TQVdGYO+xPXYV8AM2uljUXEymy9R/5xZ/5R3Wf+YqP/AJN5X2hzHuZ6fkU5/OT80tc8
pahp+n6RFD6k8ZuZ5p1LgrzKKigFafZPI/KmOi0kcgJkjPmMTQZ75S15PMPlnT9Y9MR/XYQ8kXUK
4qrqK9QGBpmHmx8EzHub4S4hb5T/ADAtk0LzrqkNgfSFletJa8duFG9RAP8AV2zo8cuPECeoddIV
M0+vLB+djbvUnlEjVapbdQd6985g83ZBXwJdirsVdirsVdirD5/76T/WP682A5NBWYUOxVPvL3+8
0n+v/AZi5+bbDkmuUM3Yq7FXYq+T/wDnJnyydM88RavClLbVIQ0jcuR9dCQ1evEMKcfkadM2eknc
a7nGyjdn3/ONP5gabPoP+ErydYdQtJHk09HNPWhlJdlSvV0csSPA+xyrWYjfEGWGW1Mx83fk1onm
XzXBr9xcyQ09MX1oqKyz+lsvxE/DVQFOx2HbBh10scOEBZ4BKVpr+ZPnrTvKPly4uZZlGpTRsmnW
1RzeUigbj14ITVj9HUjKtNgOSVdOrPJPhD5S8q6VN5h81abpMUfrCedTMlVFYlPKQVYhalRQVO5o
M3mpy1ElwccLL7VtoFt7eKBSzLEiorMasQopUnxznCbdkqYFdirsVdirsVdir5Z/5yj8vz2nnCz1
tUAtb+3ERK1P72Ekkt2BYNsPYnNlpJemnGzDdmn/ADinJz8ua37Xcf8AybyGuNkMsA2LN/zJ/Kiy
87XFldNfNYXNopiZxGJQ8RPLjQslCDWhr36ZDS6w4gRV2nLh42SWkGjeU/LEULzC20vSbcK08p6K
g3Zj3Zj4dSdsx5GWSd9S2ACI9z5I1C4ufPHn91t0fnrN8xVEBZ0hZiSaLyJ9OIVNB2zfSkMeOu4O
ABxSfZVrE0NtDCzBmjRUZgKAlRSoG9M54uxVMCuxV2KuxV2KuxV8e63/AM5B+fLXWb+2jjsfTguZ
Y0rC5PFHKiv7z2zcRxCg4plugv8AoYz8wP8Afdh/yJf/AKqYfCCOIu/6GM/MD/fdh/yJf/qpj4QX
iL3v/nHrzzrXnDyzqV9qywrNb3voRiBCi8fSRtwWberZgauNSDdiNh6pmK2uxV2KuxVjnn7yPpnn
Py7No1/VAx9S3mABaOVQQrivhXt8ulRlmPIYGwxlGw+PPN3kDzd5Kv6ahbSpArVt9QjDek1GIU8x
9lqqdvpFRvm1x5RLk4koEIi0/Nz8w7e2FtH5hvhEBQBpmZgB2DNVh9+S8PH/ADQvFLvQFmvmvzbq
3pWqXWsanMQHdmaV9zxBkkc/CKnqxplhyxgO4MREkvp78l/ykTydZHU9RYS69eJSUgUWKM7+mtQG
/wBb9W22q1OoMzXRysePhen5itrsVdirsVdirsVdirHPP3kjTfOfl2bRr4lAx9SCYAFo5VB4uKjt
Xt8ulRlmPIYG2Mo2GF/kF5I13yfbeYNM1aLiTdo1tOv2JYwhXmtd+o7/AKqE26nIJUQwxxpjP/OQ
H5gea/KfnPTf0HqMlmJtPDSxgK8bETSCpjkDoT70y/SQjKJ4he7DLIg7PIdX8+fmB53uI7G7vLnV
JCax2cKBUqP2vShVE2H7RG2ZkRDHuBTSTKXN73+Sn5Nz+WOWteYI431mZAIodnFupo1FIPHlX7Rp
1Hw7Cra/U6nj2HJyMeOub2DMNudirsVdirsVdirsVfnj5l/5SPVf+Yy4/wCTrZvIcg4Z5pbkkOxV
9V/84jf8oVrP/bSP/JiPNbrfqHucjDyeo6j5wk0/zrYeX7mzWOwvtPvL9dXedVVDYtCJUaIrsoW4
VuZcfLMNtYy35u6jN5d13zDY6AraZoF1JHcC7uzbTzWi2lveQzwRCCWstwl2PShcr25MrHiFV11+
cHop5quFtdONt5ZLRPC+plL0yiSONWubb6swtoGZ2/emRvs/ZPZVUufzetLe90HSpG0Y6trUX1su
usINPW2af0Ymgu5IEkuZJt/TjSDchgSAAxVeiYqpz21vcJ6c8Sypv8LqGG4Knr7EjEFWNH8q/wAt
yat5a09m7s1ujEnxJIqT88s8afex4B3J1pOgaLo9utvpdlDZwrXikSBQOVKgeA26ZGUieaQAEfkU
uxV2KuxV2KuxV2KuxV2KrXiRxRhvQjkCQwB60YUI+jFWMeaPy08oeaNQtL7WbT6zPZjgnI1DJy5c
H5VPGtelOpy2GWURQYygCmeieUfLGhBho+mW9gH48vQjCVKggHbvv16nISmTzKREBNsil2KuxV2K
uxV2KuxV2Kvzx8y/8pHqv/MZcf8AJ1s3kOQcM80tySHYq+q/+cRv+UK1n/tpH/kxHmt1v1D3ORh5
PXdW8p6Rq2s2eqX6GdrO0vbAWjhHt5YNR9H11mjZW57WygCtKE1B7YbaxW4/JDyolxJLotxceXY5
b+PU5LXSodOjt2nggjggDQzWk6MkJiaWNSKCV3f7XHiqm8vkBpdWn1h/MGpnVTDJa2F5Sw5WUE80
c8scC/VODBzAi/v1kIXpSpxVKJvyS8sSWjWqX1/DFdW8lprPBreuoQzXUt5IlxygbhynuZWrb+kR
yoKACir0LFXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq+Rta/wCc
afzQu9Yv7qGC0MNxcSyxk3Kg8XcsKingc2cdVABxzjKC/wChX/zV/wCWez/6SV/ph/NwR4Rd/wBC
v/mr/wAs9n/0kr/TH83BfCL3b8gPy+8x+SPLeo6frqRJcXN568QhkEg4ekibke6nMPU5BMghtxxI
D1DMdsdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsV
dirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVd
irsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdi
rsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir
sVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirs
VdirsVdirsVdiqGOpWIJBmUEbEYOINnhS7nfpOw/3+uPEF8KXc79J2H+/wBceIL4Uu5VhuIZlLRO
HANCR44gsZRI5qmFi7FXYq7FVO4uIbaB553EcMYLO56ADElXj/mv/nIzSrK+ks/L1oNV9MsjXRYp
ATQbo1KtRq9BQihDZh5NWI8t2mWYBiUH5+/mCzDnHZtEOoERDkf63Lj/AMLmKdfJq/MFnvlP8+NJ
1K5W01u2/Rc0jBYpg3OCpIFGc0K9SakUpmTi1sZGjs2Qzg83qasrKGU1U7gjM1vbxV2KuxV2KuxV
2KuxV2KuxVDahqmnadbtcX9zHbQIpZpJGCgKCATv4VGAkDmgljx/NP8ALsS+l+n7QtUCoeq7/wCU
Bx/HK/Hh3sfEj3p7pet6RqsIm028hu4jUB4XDg8aA0p4VGTjIHkyBBRuSS7FXYq7FXYq7FXYqxCb
++k/1j+vKC7SPJZil2Kp95f/AN5pP9f+AyyDh6nmE0ybjOxV2KuxV86/85E/mHcz6n/g/T5THbwg
NqbKWBdmoViIIX/WPWopQ9a4Opy9A0ZZdGDeQvIet+aLs22mQgrHQ3FzIeMUQPTk1D1psAK5gxxS
yGg44iZHZ6/af848KsI+s63SUjdY7eqg/NpKn7hmQOze+X2Nv5bzec+cfLMWga9c6N9ZF21sE5TB
PTqZEDgceT9mHfNfnx+HPhu3GyR4TT0T8j/PF08x8rahNzSJC+nO53CggGLkSNl/ZFD9AGbLQ5yf
SXKwZL2L2bNk5LsVdirsVdirsVdirsVYf+Z35hWHkvQHu3ZZNQmPp2VoGHN3YH4qUaiim7Hb5mim
rLk4QwnKg+ZpdQ82/mB5iiW7mN3fXktLa1DCOFCRQBFYhVoq0qdzTcnNXOcpyrq4spGRZtqH5Iax
onlu71nU7q3Q2qK4tYuUjHkyrRmIRR9rtXHJpJxiZErLEQLLEtMutR0m6S90u5e1uUIYPGdjxPIB
lPwsKitCMw4ZpRNhpjMh9Dflh+Y0Xmqye3vSkOs21BNCDT1AannGD1XbxqO/Ynd6bUDIPNzsWTiD
Osym12KuxV2KuxV2KsQm/vpP9Y/rygu0jyWYpdiqfeX/APeaT/X/AIDLIOHqeYea+bfJvnPWPzE1
680wB4v0dplnbtfP9UhFpPJdHUIrK9jtLqaKZhFGrcD9mSrbiLjNxkt8k6j+Zun+VLfT57W/sdW0
vy7bJ5a0OOzaSwu5ItKBBv7uS05QXC3ClTA00VGAX468iqivJHmL8z7rVrOHzRc6jb6axVtPmtNM
mZrmcyASW2pyTaVbm3jQUpKkEKlW/vGKk4qyD8n9Y/MjUk1N/OimKVRAUtZIJoWguCZPXjjdrKyh
khFE4enJPTesrchRV8yecLmafzzrkkztI4vrhObks3GOQotSdzRVGajLzLhzfVP5LaRa6f8Al5pj
wqPVvVa6uJAN2d2IFf8AVQBcz9LECA83IxCosA/Mv81fNlp5qu9L0m5+oWlgwi+BEZ5GoCzMzq3c
7AZg6nVTEyAaAaMuU3Qeb3+sX+q6jPqF/L615cENNLQLyIAHRQANh2Ga/JIyNnm40jZsorynqs2m
+cdJvYKGWKbZT0IZSpB+g5dpTUgWeI0X1rnQOxdirsVdirsVdirsVdir5L/P3zBc6p+ZFzYu1bbS
VW3hRWZl5Mod2ofssahWp/Lmt1Mrk42U7su/5x20Xy/d319e6giNqFi9s2mM0jIwZxLz4oGUP9le
oOR0cYmRJ5jkjCATu941uw0rUNLuLPVlVtPmAFwruY1oGBFXUqRuB3zY5IiQqXJyZAEbvnL8yNN0
LSfNclloiomniGJlVJGmXkwPL42Zz+OaLV44xnUeTr80QDslvkvWp9F85aXewtxDzpbzAsUVo5mC
HkR+yCQ30Y6SZjMLhlUn1bnQOxdirsVdirsVdirEJv76T/WP68oLtI8lmKXYqn3l/wD3mk/1/wCA
yyDh6nmE0ybjOxV2KuxV8afnB5cm8vfmDqMbBjBdyG7gkYglhL8TluOwPOpp4U2GazNCpFxZii9x
/wCcfvPmnan5Yh8uzzKmq6byWKJjRpYCxdWSvXhXiQOgAzI0uQVw9Q24pbUyPzd+UflnzLqR1KZ5
7S9kAE727Lxk4igLK6t8VABUYc2kjM3yKzwiRt4N+YWiWnljzXe6Ras7W1uIjC8pBcrJEr1YgKOr
Htmpz4eCZAcTJCpUi/yZ0WfXfP1rMIxJZ6WDc3RYEpuCqKSAdyTUV60zJ0eK5X3NmGO76lzbuY7F
XYq7FXYq7FXYq7FXxt+c1tJafmlrnOvGaZZo2IIqrop2r4NUfRmszj1Fxcg3TX8oJlbzxoi13+sr
/wAROY2EfvQ1wHqD6I/NdWb8vdZCgk+khoPASoTm01f92XKy/SXy8hCmpzQF16vo4a88yaVax15S
3cC1ALUHqAs1B/KN8vwR9QZ4xu+xs6B2LsVdirsVdirsVfB3mHz152j1/U44/MOppGl3OqIt5cAA
CRgAAH6DMUl6GEBQ2S//AB956/6mPVP+k24/5rwWy4B3O/x956/6mPVP+k24/wCa8bXgHc+mf+cW
tZ1jVfKGrTapfXF/MmoFEkuZXmZV9CM8QXLECpy/FydVrwBIe57RljguxV2KuxVhP5qflpY+eNFE
LMYdStAz2FwADRj1U1ps1PH9QpVlxcQYTjb5S1/yt5q8o6i0OpW0ls8LgR3SV9NmoGUpIO/EhqGj
DuBmunjIO7jmNI+D81fPsUaxr5gv+KigBuJDt8ya4OOfeUcR71fQfL/nrz7qfK1S4vXkYLcandM7
RoNh8czciaV6Cp9sY4pTKiBL6k/L38v9K8maKlja/vrt/ivL1gA8khpX/VXbZf1nfNnixCApyoxo
Mpyxk7FXYq7FXYq7FXYq7FXiv/ORH5bXOtWcXmXS0aXULJBFcW6hmaSGpPw7kVQ9FoK1PViBmLqM
d7hqyR6vAPKvmObQ9csNUjXm1jPHP6Z2DCNgxUn/ACgKZgDYg9zRyNvrvSvzT/LnWdNWca3ZQxzL
SW1vZY4JFqN0eOUrWnQ0qPfNoM0CObkiYL55/N3W9Dm87Xj6JLBLp4jhWJ7Xj6NViUMF4fDsfDNX
qIgzNcnFyAGWzNP+cf8AyDdXF+PN2pI0UUIppkTBlL81IM1QV2psOtQTUUKk5Wkw16i24odX0Bme
5DsVdirsVdirsVfnl5l/5SPVf+Yy4/5OtmIXo4fSEtxZOxV9V/8AOI//AChWs/8AbSP/ACYjy7Fy
dT2h9Q9zJvOHnTW/K/mu/vtUk1BdBis5pNEs7ZdPeyvLi00+a8nhnbhJqEcnGIslCqfD13obXASN
PPXnMeVZJ7jUryz8zWV/oU+qWlza6d6Bs9YvI7YRWht2uaQODJQySNMOO/GoxVO187+ZdT/Nafy1
EbzSNLk07UoLEzaZP8V5Zy2gF+LiWIQvFSeRECuU2UtvJGuKsek/NfzdH5M8gXZF2bjU10e81/WI
tNnuYZorq9gtpbWM28EkMc0qyO1Nm2CoC7rRV7hiqjdWNndoUuoEmQqUIdQ3wtTkN/GmAi1pjw/L
H8vg3IeX7ISf79EQElfHmPir71yHhR7mPAGSQ28EC8IY1iTb4UUKNhQbD2GWUyX4q7FXYq7FXYq7
FXYq7FXYq06JIjI6h0cFWVhUEHYgg4q8x8+fkF5U8zXM2o2rNpmpzVZ5IQPSdzTd0pT+Ykjck9co
yacS3a5YwWAn/nFXWhLRPMNuYf5zA4an+ryI/wCGyn8oe9h4TL/J3/OOPlnSLiO81m4bWLmJuSxu
oW3qCCpMZrXoQQxI3yyGmA5so4gHrkUUUSBIkCIKkKooKk1PTxJzJbV2KuxV2KuxV2KuxV+eXmX/
AJSPVf8AmMuP+TrZiF6OH0hLcWTsVfVf/OI//KFaz/20j/yYjy7FydT2h9Q9z2MeWvLg1eXWhpVm
NYuE9KfUhbxfWZI+IXg83H1GXioFCemWuApWPlDynYWUljY6JYWljLMlzLawWsMcTTxOskcrIqhS
6OisrUqCAe2Kpi1patdR3jQxtdwxvDFcFQZEjlKNIivTkFdokLAdeI8BiqjHo+kR6fBp0djbpp9q
Yja2axIIYjbuskBjjA4r6TorJQfCQCOmKovFXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7F
XYq7FXYq7FXYq7FXYq+edT/5xI+u6ld3v+K/T+tTSTen+j+XH1GLUr9ZFaV8Mq8J2Me0KFcP2/sQ
3/Qnn/f3f9y7/s6weF5p/lH+j9v7Hf8AQnn/AH93/cu/7OsfC81/lH+j9v7Hqv5R/lh/yrzRbzTP
0n+lPrdz9Z9b0Pq/H92qcePqTV+xWtcsjGnE1GfxDdUzrJNDsVdirsVdirsVdirsVdirsVdirsVd
irsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdi
rsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVeE+eYtP1
78wPNVj5l1N/q2iWtnJ5d0WS7SxgmaWAPNKrOOLOjsd+prStBthZRxEg9OQaJiyWafkX5g1zXfIi
XWrtJM8VzLBaXc3IyTwIFIdnYn1CHZ05D+Wh3By3TSkYbs8RJG70LMhsdirsVdirsVdirsVdirsV
dirGPO3nyw8rCwt2tZ9R1fV5Gg0nTrYDlLKoH2nYhUQM6hm3IrWhocryZOH3ljKVLPJn5gWXmSe7
06a1k0rXtONL7SrgqzqK05xuu0kdduQA7dipMceYS25EIjO/eyrLmbsVdirsVdirsVdirsVdirsV
dirsVdirsVdirsVdirsVS3VfLHlrV5Ul1bSbLUZY14RyXdvFOyrWtFMisQK5EwB5hBAR1vb29tbx
W1tEkNvCixwwxqEREQUVVUUAAAoAMkAlUxV2KuxV2KuxV2KuxV2KuxV2KsB/NHyPruvXnl3XNBli
GqeW7prqO0uHaNJ0Yo7R+ooajMYFXfajGpGU5YE0R0YTiTuFD8vPIGq6f5p1jzlrf+i6jq6mOHSU
nN0tvFIUkkEk5Veb84wFC/Cq92r8McWKpGR5lEIUbei5kNjsVdirsVdirsVdirsVdirsVdirsVdi
rsVdirsVf//Z</xapGImg:image> </rdf:li> </rdf:Alt> </xap:Thumbnails> @@ -34,7 +34,7 @@ xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#"> <xapMM:DocumentID>uuid:89B13A64E5D9DE11BB37992E5642CB24</xapMM:DocumentID> - <xapMM:InstanceID>uuid:7a20788e-1606-7140-8335-11445081584b</xapMM:InstanceID> + <xapMM:InstanceID>uuid:bce40ba9-528e-1a48-b1a0-2636e427f460</xapMM:InstanceID> <xapMM:DerivedFrom rdf:parseType="Resource"> <stRef:instanceID>uuid:1052650b-0efc-4cb2-a32e-387095575b05</stRef:instanceID> <stRef:documentID>uuid:6120892493BFDB11914A8590D31508C8</stRef:documentID> @@ -54,7 +54,7 @@ <xapTPg:HasVisibleTransparency>False</xapTPg:HasVisibleTransparency> <xapTPg:HasVisibleOverprint>False</xapTPg:HasVisibleOverprint> <xapTPg:MaxPageSize rdf:parseType="Resource"> - <stDim:w>841.889832</stDim:w> + <stDim:w>841.889771</stDim:w> <stDim:h>595.275574</stDim:h> <stDim:unit>Pixels</stDim:unit> </xapTPg:MaxPageSize> @@ -65,7 +65,7 @@ <stFnt:fontFamily>Myriad Pro</stFnt:fontFamily> <stFnt:fontFace>Regular</stFnt:fontFace> <stFnt:fontType>Open Type</stFnt:fontType> - <stFnt:versionString>Version 2.037;PS 2.000;hotconv 1.0.51;makeotf.lib2.0.18671</stFnt:versionString> + <stFnt:versionString>Version 2.007;PS 002.000;Core 1.0.38;makeotf.lib1.7.9032</stFnt:versionString> <stFnt:composite>False</stFnt:composite> <stFnt:fontFileName>MyriadPro-Regular.otf</stFnt:fontFileName> </rdf:li> @@ -581,7 +581,7 @@ -<?xpacket end="w"?>
endstream
endobj
2 0 obj
<</Count 1/Type/Pages/Kids[5 0 R]>>
endobj
15 0 obj
<</Intent 16 0 R/Usage 17 0 R/Name(Class)/Type/OCG>>
endobj
27 0 obj
<</Intent 28 0 R/Usage 29 0 R/Name(Package)/Type/OCG>>
endobj
37 0 obj
<</Intent 38 0 R/Usage 39 0 R/Name(Object)/Type/OCG>>
endobj
65 0 obj
<</Intent 66 0 R/Usage 67 0 R/Name(Class)/Type/OCG>>
endobj
78 0 obj
<</Intent 79 0 R/Usage 80 0 R/Name(Package)/Type/OCG>>
endobj
90 0 obj
<</Intent 91 0 R/Usage 92 0 R/Name(Object)/Type/OCG>>
endobj
116 0 obj
<</Intent 117 0 R/Usage 118 0 R/Name(Class)/Type/OCG>>
endobj
129 0 obj
<</Intent 130 0 R/Usage 131 0 R/Name(Package)/Type/OCG>>
endobj
141 0 obj
<</Intent 142 0 R/Usage 143 0 R/Name(Object)/Type/OCG>>
endobj
167 0 obj
<</Intent 168 0 R/Usage 169 0 R/Name(Class)/Type/OCG>>
endobj
180 0 obj
<</Intent 181 0 R/Usage 182 0 R/Name(Package)/Type/OCG>>
endobj
192 0 obj
<</Intent 193 0 R/Usage 194 0 R/Name(Object)/Type/OCG>>
endobj
218 0 obj
<</Intent 219 0 R/Usage 220 0 R/Name(Class)/Type/OCG>>
endobj
237 0 obj
<</Intent 238 0 R/Usage 239 0 R/Name(Package)/Type/OCG>>
endobj
255 0 obj
<</Intent 256 0 R/Usage 257 0 R/Name(Object)/Type/OCG>>
endobj
287 0 obj
<</Intent 288 0 R/Usage 289 0 R/Name(Class)/Type/OCG>>
endobj
306 0 obj
<</Intent 307 0 R/Usage 308 0 R/Name(Package)/Type/OCG>>
endobj
324 0 obj
<</Intent 325 0 R/Usage 326 0 R/Name(Object)/Type/OCG>>
endobj
356 0 obj
<</Intent 357 0 R/Usage 358 0 R/Name(Class)/Type/OCG>>
endobj
375 0 obj
<</Intent 376 0 R/Usage 377 0 R/Name(Package)/Type/OCG>>
endobj
393 0 obj
<</Intent 394 0 R/Usage 395 0 R/Name(Object)/Type/OCG>>
endobj
425 0 obj
<</Intent 426 0 R/Usage 427 0 R/Name(Class)/Type/OCG>>
endobj
444 0 obj
<</Intent 445 0 R/Usage 446 0 R/Name(Trait)/Type/OCG>>
endobj
462 0 obj
<</Intent 463 0 R/Usage 464 0 R/Name(Package)/Type/OCG>>
endobj
480 0 obj
<</Intent 481 0 R/Usage 482 0 R/Name(Object)/Type/OCG>>
endobj
515 0 obj
<</Intent 516 0 R/Usage 517 0 R/Name(Class)/Type/OCG>>
endobj
534 0 obj
<</Intent 535 0 R/Usage 536 0 R/Name(Trait)/Type/OCG>>
endobj
552 0 obj
<</Intent 553 0 R/Usage 554 0 R/Name(Package)/Type/OCG>>
endobj
570 0 obj
<</Intent 571 0 R/Usage 572 0 R/Name(Object)/Type/OCG>>
endobj
605 0 obj
<</Intent 606 0 R/Usage 607 0 R/Name(Class)/Type/OCG>>
endobj
624 0 obj
<</Intent 625 0 R/Usage 626 0 R/Name(Trait)/Type/OCG>>
endobj
642 0 obj
<</Intent 643 0 R/Usage 644 0 R/Name(Package)/Type/OCG>>
endobj
660 0 obj
<</Intent 661 0 R/Usage 662 0 R/Name(Object)/Type/OCG>>
endobj
695 0 obj
<</Intent 696 0 R/Usage 697 0 R/Name(Base)/Type/OCG>>
endobj
699 0 obj
<</Intent 700 0 R/Usage 701 0 R/Name(Class)/Type/OCG>>
endobj
718 0 obj
<</Intent 719 0 R/Usage 720 0 R/Name(Trait)/Type/OCG>>
endobj
735 0 obj
<</Intent 736 0 R/Usage 737 0 R/Name(Package)/Type/OCG>>
endobj
753 0 obj
<</Intent 754 0 R/Usage 755 0 R/Name(Object)/Type/OCG>>
endobj
785 0 obj
<</Intent 786 0 R/Usage 787 0 R/Name(Base)/Type/OCG>>
endobj
789 0 obj
<</Intent 790 0 R/Usage 791 0 R/Name(Class)/Type/OCG>>
endobj
808 0 obj
<</Intent 809 0 R/Usage 810 0 R/Name(Trait)/Type/OCG>>
endobj
825 0 obj
<</Intent 826 0 R/Usage 827 0 R/Name(Package)/Type/OCG>>
endobj
843 0 obj
<</Intent 844 0 R/Usage 845 0 R/Name(Object)/Type/OCG>>
endobj
878 0 obj
<</Intent 879 0 R/Usage 880 0 R/Name(Base)/Type/OCG>>
endobj
882 0 obj
<</Intent 883 0 R/Usage 884 0 R/Name(Class)/Type/OCG>>
endobj
901 0 obj
<</Intent 902 0 R/Usage 903 0 R/Name(Trait)/Type/OCG>>
endobj
918 0 obj
<</Intent 919 0 R/Usage 920 0 R/Name(Package)/Type/OCG>>
endobj
936 0 obj
<</Intent 937 0 R/Usage 938 0 R/Name(Object)/Type/OCG>>
endobj
937 0 obj
[/View/Design]
endobj
938 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
919 0 obj
[/View/Design]
endobj
920 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
902 0 obj
[/View/Design]
endobj
903 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
883 0 obj
[/View/Design]
endobj
884 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
879 0 obj
[/View/Design]
endobj
880 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
844 0 obj
[/View/Design]
endobj
845 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
826 0 obj
[/View/Design]
endobj
827 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
809 0 obj
[/View/Design]
endobj
810 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
790 0 obj
[/View/Design]
endobj
791 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
786 0 obj
[/View/Design]
endobj
787 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
754 0 obj
[/View/Design]
endobj
755 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
736 0 obj
[/View/Design]
endobj
737 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
719 0 obj
[/View/Design]
endobj
720 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
700 0 obj
[/View/Design]
endobj
701 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
696 0 obj
[/View/Design]
endobj
697 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
661 0 obj
[/View/Design]
endobj
662 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
643 0 obj
[/View/Design]
endobj
644 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
625 0 obj
[/View/Design]
endobj
626 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
606 0 obj
[/View/Design]
endobj
607 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
571 0 obj
[/View/Design]
endobj
572 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
553 0 obj
[/View/Design]
endobj
554 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
535 0 obj
[/View/Design]
endobj
536 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
516 0 obj
[/View/Design]
endobj
517 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
481 0 obj
[/View/Design]
endobj
482 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
463 0 obj
[/View/Design]
endobj
464 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
445 0 obj
[/View/Design]
endobj
446 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
426 0 obj
[/View/Design]
endobj
427 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
394 0 obj
[/View/Design]
endobj
395 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
376 0 obj
[/View/Design]
endobj
377 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
357 0 obj
[/View/Design]
endobj
358 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
325 0 obj
[/View/Design]
endobj
326 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
307 0 obj
[/View/Design]
endobj
308 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
288 0 obj
[/View/Design]
endobj
289 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
256 0 obj
[/View/Design]
endobj
257 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
238 0 obj
[/View/Design]
endobj
239 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
219 0 obj
[/View/Design]
endobj
220 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
193 0 obj
[/View/Design]
endobj
194 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
181 0 obj
[/View/Design]
endobj
182 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
168 0 obj
[/View/Design]
endobj
169 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
142 0 obj
[/View/Design]
endobj
143 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
130 0 obj
[/View/Design]
endobj
131 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
117 0 obj
[/View/Design]
endobj
118 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
91 0 obj
[/View/Design]
endobj
92 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
79 0 obj
[/View/Design]
endobj
80 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
66 0 obj
[/View/Design]
endobj
67 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
38 0 obj
[/View/Design]
endobj
39 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
28 0 obj
[/View/Design]
endobj
29 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
16 0 obj
[/View/Design]
endobj
17 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
877 0 obj
[936 0 R 918 0 R 901 0 R 882 0 R 878 0 R]
endobj
5 0 obj
<</CropBox[321.5 204.775 334.5 217.775]/Parent 2 0 R/Contents 955 0 R/BleedBox[0.0 0.0 841.89 595.276]/PieceInfo<</Illustrator 869 0 R>>/ArtBox[321.5 204.775 334.5 217.775]/MediaBox[0.0 0.0 841.89 595.276]/Thumb 960 0 R/TrimBox[0.0 0.0 841.89 595.276]/Resources<</XObject<</Fm0 893 0 R/Fm1 900 0 R/Fm2 910 0 R/Fm3 917 0 R/Fm4 927 0 R/Fm5 935 0 R/Fm6 945 0 R/Fm7 952 0 R>>/ColorSpace<</CS0 889 0 R>>/Font<</T1_0 953 0 R>>/ProcSet[/PDF/Text]/Properties<</MC0 878 0 R/MC1 882 0 R/MC2 901 0 R/MC3 918 0 R/MC4 936 0 R>>/ExtGState<</GS0 885 0 R>>>>/Type/Page/LastModified(D:20091124113554+01'00')>>
endobj
955 0 obj
<</Length 1948/Filter/FlateDecode>>stream
+<?xpacket end="w"?>
endstream
endobj
2 0 obj
<</Count 1/Type/Pages/Kids[5 0 R]>>
endobj
15 0 obj
<</Intent 16 0 R/Usage 17 0 R/Name(Class)/Type/OCG>>
endobj
27 0 obj
<</Intent 28 0 R/Usage 29 0 R/Name(Package)/Type/OCG>>
endobj
37 0 obj
<</Intent 38 0 R/Usage 39 0 R/Name(Object)/Type/OCG>>
endobj
65 0 obj
<</Intent 66 0 R/Usage 67 0 R/Name(Class)/Type/OCG>>
endobj
78 0 obj
<</Intent 79 0 R/Usage 80 0 R/Name(Package)/Type/OCG>>
endobj
90 0 obj
<</Intent 91 0 R/Usage 92 0 R/Name(Object)/Type/OCG>>
endobj
116 0 obj
<</Intent 117 0 R/Usage 118 0 R/Name(Class)/Type/OCG>>
endobj
129 0 obj
<</Intent 130 0 R/Usage 131 0 R/Name(Package)/Type/OCG>>
endobj
141 0 obj
<</Intent 142 0 R/Usage 143 0 R/Name(Object)/Type/OCG>>
endobj
167 0 obj
<</Intent 168 0 R/Usage 169 0 R/Name(Class)/Type/OCG>>
endobj
180 0 obj
<</Intent 181 0 R/Usage 182 0 R/Name(Package)/Type/OCG>>
endobj
192 0 obj
<</Intent 193 0 R/Usage 194 0 R/Name(Object)/Type/OCG>>
endobj
218 0 obj
<</Intent 219 0 R/Usage 220 0 R/Name(Class)/Type/OCG>>
endobj
237 0 obj
<</Intent 238 0 R/Usage 239 0 R/Name(Package)/Type/OCG>>
endobj
255 0 obj
<</Intent 256 0 R/Usage 257 0 R/Name(Object)/Type/OCG>>
endobj
287 0 obj
<</Intent 288 0 R/Usage 289 0 R/Name(Class)/Type/OCG>>
endobj
306 0 obj
<</Intent 307 0 R/Usage 308 0 R/Name(Package)/Type/OCG>>
endobj
324 0 obj
<</Intent 325 0 R/Usage 326 0 R/Name(Object)/Type/OCG>>
endobj
356 0 obj
<</Intent 357 0 R/Usage 358 0 R/Name(Class)/Type/OCG>>
endobj
375 0 obj
<</Intent 376 0 R/Usage 377 0 R/Name(Package)/Type/OCG>>
endobj
393 0 obj
<</Intent 394 0 R/Usage 395 0 R/Name(Object)/Type/OCG>>
endobj
425 0 obj
<</Intent 426 0 R/Usage 427 0 R/Name(Class)/Type/OCG>>
endobj
444 0 obj
<</Intent 445 0 R/Usage 446 0 R/Name(Trait)/Type/OCG>>
endobj
462 0 obj
<</Intent 463 0 R/Usage 464 0 R/Name(Package)/Type/OCG>>
endobj
480 0 obj
<</Intent 481 0 R/Usage 482 0 R/Name(Object)/Type/OCG>>
endobj
515 0 obj
<</Intent 516 0 R/Usage 517 0 R/Name(Class)/Type/OCG>>
endobj
534 0 obj
<</Intent 535 0 R/Usage 536 0 R/Name(Trait)/Type/OCG>>
endobj
552 0 obj
<</Intent 553 0 R/Usage 554 0 R/Name(Package)/Type/OCG>>
endobj
570 0 obj
<</Intent 571 0 R/Usage 572 0 R/Name(Object)/Type/OCG>>
endobj
605 0 obj
<</Intent 606 0 R/Usage 607 0 R/Name(Class)/Type/OCG>>
endobj
624 0 obj
<</Intent 625 0 R/Usage 626 0 R/Name(Trait)/Type/OCG>>
endobj
642 0 obj
<</Intent 643 0 R/Usage 644 0 R/Name(Package)/Type/OCG>>
endobj
660 0 obj
<</Intent 661 0 R/Usage 662 0 R/Name(Object)/Type/OCG>>
endobj
695 0 obj
<</Intent 696 0 R/Usage 697 0 R/Name(Base)/Type/OCG>>
endobj
699 0 obj
<</Intent 700 0 R/Usage 701 0 R/Name(Class)/Type/OCG>>
endobj
718 0 obj
<</Intent 719 0 R/Usage 720 0 R/Name(Trait)/Type/OCG>>
endobj
735 0 obj
<</Intent 736 0 R/Usage 737 0 R/Name(Package)/Type/OCG>>
endobj
753 0 obj
<</Intent 754 0 R/Usage 755 0 R/Name(Object)/Type/OCG>>
endobj
785 0 obj
<</Intent 786 0 R/Usage 787 0 R/Name(Base)/Type/OCG>>
endobj
789 0 obj
<</Intent 790 0 R/Usage 791 0 R/Name(Class)/Type/OCG>>
endobj
808 0 obj
<</Intent 809 0 R/Usage 810 0 R/Name(Trait)/Type/OCG>>
endobj
825 0 obj
<</Intent 826 0 R/Usage 827 0 R/Name(Package)/Type/OCG>>
endobj
843 0 obj
<</Intent 844 0 R/Usage 845 0 R/Name(Object)/Type/OCG>>
endobj
878 0 obj
<</Intent 879 0 R/Usage 880 0 R/Name(Base)/Type/OCG>>
endobj
882 0 obj
<</Intent 883 0 R/Usage 884 0 R/Name(Class)/Type/OCG>>
endobj
901 0 obj
<</Intent 902 0 R/Usage 903 0 R/Name(Trait)/Type/OCG>>
endobj
918 0 obj
<</Intent 919 0 R/Usage 920 0 R/Name(Package)/Type/OCG>>
endobj
936 0 obj
<</Intent 937 0 R/Usage 938 0 R/Name(Object)/Type/OCG>>
endobj
971 0 obj
<</Intent 972 0 R/Usage 973 0 R/Name(Base)/Type/OCG>>
endobj
975 0 obj
<</Intent 976 0 R/Usage 977 0 R/Name(Class)/Type/OCG>>
endobj
994 0 obj
<</Intent 995 0 R/Usage 996 0 R/Name(Trait)/Type/OCG>>
endobj
1011 0 obj
<</Intent 1012 0 R/Usage 1013 0 R/Name(Package)/Type/OCG>>
endobj
1029 0 obj
<</Intent 1030 0 R/Usage 1031 0 R/Name(Object)/Type/OCG>>
endobj
1030 0 obj
[/View/Design]
endobj
1031 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
1012 0 obj
[/View/Design]
endobj
1013 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
995 0 obj
[/View/Design]
endobj
996 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
976 0 obj
[/View/Design]
endobj
977 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
972 0 obj
[/View/Design]
endobj
973 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
937 0 obj
[/View/Design]
endobj
938 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
919 0 obj
[/View/Design]
endobj
920 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
902 0 obj
[/View/Design]
endobj
903 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
883 0 obj
[/View/Design]
endobj
884 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
879 0 obj
[/View/Design]
endobj
880 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
844 0 obj
[/View/Design]
endobj
845 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
826 0 obj
[/View/Design]
endobj
827 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
809 0 obj
[/View/Design]
endobj
810 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
790 0 obj
[/View/Design]
endobj
791 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
786 0 obj
[/View/Design]
endobj
787 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
754 0 obj
[/View/Design]
endobj
755 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
736 0 obj
[/View/Design]
endobj
737 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
719 0 obj
[/View/Design]
endobj
720 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
700 0 obj
[/View/Design]
endobj
701 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
696 0 obj
[/View/Design]
endobj
697 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
661 0 obj
[/View/Design]
endobj
662 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
643 0 obj
[/View/Design]
endobj
644 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
625 0 obj
[/View/Design]
endobj
626 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
606 0 obj
[/View/Design]
endobj
607 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
571 0 obj
[/View/Design]
endobj
572 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
553 0 obj
[/View/Design]
endobj
554 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
535 0 obj
[/View/Design]
endobj
536 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
516 0 obj
[/View/Design]
endobj
517 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
481 0 obj
[/View/Design]
endobj
482 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
463 0 obj
[/View/Design]
endobj
464 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
445 0 obj
[/View/Design]
endobj
446 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
426 0 obj
[/View/Design]
endobj
427 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
394 0 obj
[/View/Design]
endobj
395 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
376 0 obj
[/View/Design]
endobj
377 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
357 0 obj
[/View/Design]
endobj
358 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
325 0 obj
[/View/Design]
endobj
326 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
307 0 obj
[/View/Design]
endobj
308 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
288 0 obj
[/View/Design]
endobj
289 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
256 0 obj
[/View/Design]
endobj
257 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
238 0 obj
[/View/Design]
endobj
239 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
219 0 obj
[/View/Design]
endobj
220 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
193 0 obj
[/View/Design]
endobj
194 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
181 0 obj
[/View/Design]
endobj
182 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
168 0 obj
[/View/Design]
endobj
169 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
142 0 obj
[/View/Design]
endobj
143 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
130 0 obj
[/View/Design]
endobj
131 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
117 0 obj
[/View/Design]
endobj
118 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
91 0 obj
[/View/Design]
endobj
92 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
79 0 obj
[/View/Design]
endobj
80 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
66 0 obj
[/View/Design]
endobj
67 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
38 0 obj
[/View/Design]
endobj
39 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
28 0 obj
[/View/Design]
endobj
29 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
16 0 obj
[/View/Design]
endobj
17 0 obj
<</CreatorInfo<</Subtype/Artwork/Creator(Adobe Illustrator 13.0)>>>>
endobj
970 0 obj
[1029 0 R 1011 0 R 994 0 R 975 0 R 971 0 R]
endobj
5 0 obj
<</CropBox[321.5 204.775 334.5 217.775]/Parent 2 0 R/Contents 1048 0 R/BleedBox[0.0 0.0 841.89 595.276]/PieceInfo<</Illustrator 962 0 R>>/ArtBox[321.5 204.775 334.5 217.775]/MediaBox[0.0 0.0 841.89 595.276]/Thumb 1053 0 R/TrimBox[0.0 0.0 841.89 595.276]/Resources<</XObject<</Fm0 986 0 R/Fm1 993 0 R/Fm2 1003 0 R/Fm3 1010 0 R/Fm4 1020 0 R/Fm5 1028 0 R/Fm6 1038 0 R/Fm7 1045 0 R>>/ColorSpace<</CS0 982 0 R>>/Font<</T1_0 1046 0 R>>/ProcSet[/PDF/Text]/Properties<</MC0 971 0 R/MC1 975 0 R/MC2 994 0 R/MC3 1011 0 R/MC4 1029 0 R>>/ExtGState<</GS0 978 0 R>>>>/Type/Page/LastModified(D:20100413200510+02'00')>>
endobj
1048 0 obj
<</Length 1948/Filter/FlateDecode>>stream
H‰ÌWËŽ5Ý÷Wx™,®Çå··L ZÖíÿu¹ÄÐgIIy_±ã<¾+i,¼}pë:§Œ¿.ï öP—ÎØ5•æmØW±!¥´«{[°£ ûYì$ÖC«je¹g±-´uÊG+ÒL„S×±[SãÒAðÞ¡°j}l6 @@ -594,12 +594,14 @@ H¶CŸá’:P«Ûz쎾þ˜²må9cÄfwó§s@Èð~¾0‡æð_f²p.….7–ªdCõ¨¯¥^"'€ýù@Ó eÀ!L<8“ØUoÎλvkºŠ]GîLxg‘‚bgv&›R;à2$ìx¶xÆ…˜N”Tg l3ûÝ#|XʪÕD^kE½ï‡V%ÅIe@ÛT7|]Δ›ÚKšŸx OòºKËGìò0ðD¸M\[±)‡ðz®Ðy¶Û¿ãër¦ô“´™ïÍ•¨î?;äŸj"Ëi.ªÞGMr¿qÑ)ióµþÓö_'X(ü¶L|¯øJ_¦LãGA,)}Á^ç¾+¾´ïʽ²|ºBz${E» ×íóO‚ø¢ ÿ« ù¬oH*UzE';«‹øhÐñ3žgÑn/µëRôÝ×ÜÀå pÄMùe#fP'Q¬ -8Éͯvù:¢—ÚÐÒó¹Ë&?`óø&Cw`„×}ëa¾Ù´i7¼6|F£†9¾5i#…
g¦ºx;.¾s7íÀM;ª(Ϥc*
Žr~g ê^±(
›xw‡‹ÃSß/ýi‚^Êo€æÉiškMŸ| uàtŽ´•DÓÌu»¤UŽÊ@Ž‹˜ÝÚ‘ï?P\æË¡#¾Wðj‚CÕ”s\Ñoè3«¡3¼¾ðW7¡Z³†¢ýEæðé|ý¸Êäm¶¢®Hg™UœRøÛå/ -8;Xnf&7>J<fDsP~>
endstream
endobj
885 0 obj
<</OPM 1/BM/Normal/CA 1.0/OP false/SMask/None/ca 1.0/AIS false/op false/Type/ExtGState/SA true>>
endobj
953 0 obj
<</Subtype/Type1/FontDescriptor 954 0 R/LastChar 102/Widths[513 513 0 513 513 513 0 513 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 448 564 501 292]/BaseFont/WLSGHE+MyriadPro-Regular/FirstChar 49/Encoding/WinAnsiEncoding/Type/Font>>
endobj
954 0 obj
<</StemV 88/FontName/WLSGHE+MyriadPro-Regular/FontStretch/Normal/FontFile3 957 0 R/FontWeight 400/Flags 32/Descent -250/FontBBox[-157 -250 1126 952]/Ascent 952/FontFamily(Myriad Pro)/CapHeight 674/XHeight 484/Type/FontDescriptor/ItalicAngle 0>>
endobj
957 0 obj
<</Subtype/Type1C/Length 1273/Filter/FlateDecode>>stream
-H‰|S]PWÞ%ìF -M[â2šÐÝÕZ„#b(?Šâ mÆfü IÔ$˜(EKÚ™¶&„PèP±øƒƒ¢uÈTmg -Æüì/<0ÙX,”ïÞcaWÆÇGGúP9‡±‘ltTTÔ*Ùõzc¾U—›-†}f6½Hg4MZ‹A¯`ײsfÖd0L¥¾¤0ŽÅ t6¿œÕ(ÔBF8]$œÙ ŒQFÆÄE+Øg93kà,{&V+ìæ„&¡ÎbÒê
û´¦ÖèSþCwýÏ8,WÄ -^¬¦ˆó1µEHšYm‘~…àbœë¢3–YLœÁ¬X‘ªÎ./6°q¬Þ°Œc”¶Ã6ˆ°@߆²°bì"Æã›ñ~*¿Z.Òˆê_VuñÓ]¸€KºDUþü¡•÷ NÔC¡µðOIÄ¢«øˆ·Nì%·ÏÅ° œä¿£|ò1ÉñR¾o´ª,¬cÒv°†ŒÍÐI¤t-^×”Ä-¢š”Tyøü„ˆßâAßT‹¯tð&,Ÿ† ÙSÕ¯ˆ]ŸQ´kÝšE´œí<{C>ÝönzĺX”€¢™Ô4B#Ú@ê +8Éͯvù:¢—ÚÐÒó¹Ë&?`óø&Cw`„×}ëa¾Ù´i7¼6|F£†9¾5i#…
g¦ºx;.¾s7íÀM;ª(Ϥc*
Žr~g ê^±(
›xw‡‹ÃSß/ýi‚^Êo€æÉiškMŸ| uàtŽ´•DÓÌu»¤UŽÊ@Ž‹˜ÝÚ‘ï?P\æË¡#¾Wðj‚CÕ”s\Ñoè3«¡3¼¾ðW7¡Z³†¢ýEæðé|ý¸Êäm¶¢®Hg™UœRøÛå/ +8;Xnf&7>J<fDsP~>
endstream
endobj
978 0 obj
<</OPM 1/BM/Normal/CA 1.0/OP false/SMask/None/ca 1.0/AIS false/op false/Type/ExtGState/SA true>>
endobj
1046 0 obj
<</Subtype/Type1/FontDescriptor 1047 0 R/LastChar 102/Widths[513 513 0 513 513 513 0 513 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 448 564 501 292]/BaseFont/XAMDXC+MyriadPro-Regular/FirstChar 49/Encoding/WinAnsiEncoding/Type/Font>>
endobj
1047 0 obj
<</StemV 88/FontName/XAMDXC+MyriadPro-Regular/FontStretch/Normal/FontFile3 1050 0 R/FontWeight 400/Flags 32/Descent -250/FontBBox[-157 -250 1126 952]/Ascent 952/FontFamily(Myriad Pro)/CapHeight 674/XHeight 484/Type/FontDescriptor/ItalicAngle 0>>
endobj
1050 0 obj
<</Subtype/Type1C/Length 1212/Filter/FlateDecode>>stream
+H‰|SmPg¾#\N„¦-ñMìÝY-àH‘BR? +((ØH%t´sÚ LÔŠšv¦-„X~P¨"ZGT§„ŠZÔ"ÅX$ÊHüK;ô{ñÍŒ½Øÿý³»Ïûì³ûî;ïâXh†ãø¬‚ô¼Ì‚Œy;M^e2¾ŸÏm)+Ñ™‚$ÃËq~f(?;‚B ÇË—/s ¨}¾}yvè¹H,ÇžÎ0– +Ú-Ÿ[ØÄ„„„¸ U°¯2]o,âXõN³…Ûffs¶o2šJ&…Ódzé%%l~Pffó93g*jâÕñ¬JHØna3JEœ2%1þ¿«±3«cM܃PÍÄéY‹I§ç¶éL[Yãfö:-\®þdg)Ǧ°zn3†áX$ŽQ!Ø,ËaáÂ#`yX)Ö…ùñ|¼/duˆ3ä•H-Ú7UÓÃOöà‚×#ª å«üª@•¨BË`ÏĈE½A žˆ7¼Ža°˜¿D#D’#åü€·¦"¬ãÒ3`÷Óibé0z÷£ÃÙ@Ü jÅ’ßàÁŸñ£<èb-y©›€w`æ£Iˆ=Sý‰Ø´UFn}<h;á>qM>yruc›Ÿ–ŒRQâòì™RèYÃp{?èÃ?/ +²ž'ð±q$ºH"ÖÀ”E"بZ’`GÓ‰CÇ›;g9ÄÕ›Á CÛH‰u:‡ ù~ŸˆÏòÓº)Ö¡ÂÑÚî<#‡¨«'ÛE¦&Eµ¶ùP)]–MTt\¯‘Ãœ©ç õê®´3›´.ܼ»ºº’iƒÅØÅëô
BÂ]ü§GÐ"”Vøc©]e¶ïv0‹¾Ê(Ö¬¶jÕúh4C†–>A0 ƒiêDfhE%t•øàÏÐ-mÎ{“mŠ§Ž¾¨f9ëöÓ?·ºOõÊÇzÕññ¹iŒÄz“ïê<óxå0?\é“z žRRßbCášE²8o*̆·&ï1ªý5õ$í ¥÷îw»vE6–;Š"‘X‘5–zÔêÛú)ê”)Ú¾AóÛùž»Gé Ón‰LêÉ)Ð.¡í¼@ßíЬSmܤþ‚Ik.<= WÏu{h‰Û:Âc¿ãÂØ1)«©xV¾ cB§®{AÔ}ʺ÷Ó<D4˜×7®“£Ä÷†æ£Øç1=ðËá†F‹¬#úr~Ù0lˆìôAû„ÔÍÇø)ÔUMž-ÓžN—£é1±HigPÌãX½vþò1ºV,t&£âªS6÷ï%“Nj·moÕ^ZêÎ٥ѫäqŸŽýõâòý'ƒÝëÕŒÃj¯´Ê$ÿX‡aI?ÌíÇ;‚k\ÄA9eÿ¾ö@“̧%¢9JD¢hí‹…ù÷zè +û‰ÝÅœ5Wžô‘«{?u£þ¬×'ÿ»U¡¶1VXå-HÁ½D°4ŠWBØ-ö#yç‡Á?Úš¾ý¦‘n"ê¿,/‘}¶gk1S¤¯Ì[!³¬È +(…ŸéòØ€6¸`¡Ëí +XêÅüÊ:”[0º.ֵבô‘Y_xvkúDø„3â
~ÿ~.õ¯ H‰œ–yTSwÇoÉž•°Ãc
[€°5la‘QIBHØADED„ª•2ÖmtFOE.®cÖ}êÒõ0êè8´×Ž8GNg¦Óïï÷9÷wïïÝß½÷ó V³)gB£0ñiœWו8#©8wÕ©•õ8_Å٥ʨQãüÜ«QÊj@é&»A)/ÇÙgº>'K‚ó @@ -608,8 +610,8 @@ H‰œ–yTSwÇoÉž•°Ãc
[€°5la‘QIBHØADED„ª•2ÖmtFOE.®cÖ}êÒõ0êè8´×Ž8 N'çÎ)Î].ÂuæJ¸rî î÷wšGä xR^¯‡÷[ÞoÆœchžgÞ`>bþ‰ù$á»ñ¥ü*~ÿ ÿ:ÿ¥…EŒ…ÒbÅ~‹ËÏ,m,£-•–Ý–,¯Y¾´Â¬â*6X[ݱF=3ë·YŸ±~dó ·‘ÛtÛ´¹iÛzÚfÙ6Û~`{ÁvÖÎÞ.ÑNg·Åî”Ý#{¾}´}…ý€ý§ö¸‘j‡‡ÏþŠ™c1X6„Æfm“Ž;'_9 œr:œ8Ýq¦:‹ËœœO:ϸ8¸¤¹´¸ìu¹éJq»–»nv=ëúÌMà–ï¶ÊmÜí¾ÀR 4 ö n»3Ü£ÜkÜGݯz=Ä•[=¾ô„=ƒ<Ë=G</zÁ^Á^j¯^—¼ Þ¡ÞZïQïBº0FX'Ü+œòáû¤útøŒû<öuñ-ôÝà{Ö÷µ__•ß˜ß-G”,ê}çïé/÷ñ¿ÀHh8ðm W 2p[àŸƒ¸AiA«‚Ný#8$X¼?øAˆKHIÈ{!7Ä<q†¸Wüy(!46´-ôãÐaÁa†°ƒa†W†ï ¿¿@°@¹`lÁݧYÄŽˆÉH,²$òýÈÉ(Ç(YÔhÔ7ÑÎÑŠèÑ÷b<b*böÅ<Žõ‹ÕÇ~ûL&Y&9‡Ä%ÆuÇMÄsâsã‡ã¿NpJP%ìM˜IJlN<žDHJIÚtCj'•KwKg’C’—%ŸN¡§d§§|“ꙪO=–§%§mL»½Ðu¡váx:H—¦oL¿“!ȨÉøC&13#s$ó/Y¢¬–¬³ÙÜìâì=ÙOsbsúrnåºçsOæ1óŠòvç=ËËïÏŸ\ä»hÙ¢óÖê‚#…¤Â¼Â…³‹ãoZ<]TÔUt}‰`IÃ’sK—V-ý¤˜Y,+>TB(É/ÙSòƒ,]6*›-•–¾W:#—È7Ë*¢ŠÊe¿ò^YDYÙ}U„j£êAyTù`ù#µD=¬þ¶"©b{ųÊôÊ+¬Ê¯: !kJ4Gµm¥ötµ}uCõ%—®K7YV³©fFŸ¢ßYÕ.©=bàá?SŒîÆ•Æ©ºÈº‘ºçõyõ‡Ø
Ú†žkï5%4ý¦m–7Ÿlqlio™Z³lG+ÔZÚz²Í¹³mzyâò]íÔöÊö?uøuôw|¿"űN»ÎåwW&®ÜÛe֥ﺱ*|ÕöÕèjõê‰5k¶¬yÝèþ¢Ç¯g°ç‡^yïkEk‡Öþ¸®lÝD_p߶õÄõÚõ×7DmØÕÏîoê¿»1mãál {àûMÅ›Î
nßLÝlÜ<9”úO -¾„¾ÿ¿z¿õÀpÀìÁgÁãÂ_ÂÛÃXÃÔÄQÄÎÅKÅÈÆFÆÃÇAÇ¿È=ȼÉ:ɹÊ8Ê·Ë6˶Ì5̵Í5͵Î6ζÏ7ϸÐ9кÑ<ѾÒ?ÒÁÓDÓÆÔIÔËÕNÕÑÖUÖØ×\×àØdØèÙlÙñÚvÚûÛ€ÜÜŠÝÝ–ÞÞ¢ß)߯à6à½áDáÌâSâÛãcãëäsäüå„æ
æ–çç©è2è¼éFéÐê[êåëpëûì†ííœî(î´ï@ïÌðXðåñrñÿòŒóó§ô4ôÂõPõÞömöû÷Šøø¨ù8ùÇúWúçûwüü˜ý)ýºþKþÜÿmÿÿ -/CS0 cs 0.616 0.196 0.196 scn +¾„¾ÿ¿z¿õÀpÀìÁgÁãÂ_ÂÛÃXÃÔÄQÄÎÅKÅÈÆFÆÃÇAÇ¿È=ȼÉ:ɹÊ8Ê·Ë6˶Ì5̵Í5͵Î6ζÏ7ϸÐ9кÑ<ѾÒ?ÒÁÓDÓÆÔIÔËÕNÕÑÖUÖØ×\×àØdØèÙlÙñÚvÚûÛ€ÜÜŠÝÝ–ÞÞ¢ß)߯à6à½áDáÌâSâÛãcãëäsäüå„æ
æ–çç©è2è¼éFéÐê[êåëpëûì†ííœî(î´ï@ïÌðXðåñrñÿòŒóó§ô4ôÂõPõÞömöû÷Šøø¨ù8ùÇúWúçûwüü˜ý)ýºþKþÜÿmÿÿ +/CS0 cs 0.29 0.486 0.133 scn 1 i /GS0 gs q 1 0 0 1 183 308.2725 cm @@ -623,8 +625,8 @@ Q q /Fm0 Do Q -
endstream
endobj
900 0 obj
<</Subtype/Form/Length 245/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 895 0 R/Resources<</XObject<</Fm0 899 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
-/CS0 cs 0.616 0.196 0.196 scn +
endstream
endobj
993 0 obj
<</Subtype/Form/Length 244/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 988 0 R/Resources<</XObject<</Fm0 992 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
+/CS0 cs 0.29 0.486 0.133 scn 1 i /GS0 gs q 1 0 0 1 186.627 218.2744 cm @@ -638,8 +640,8 @@ Q q /Fm0 Do Q -
endstream
endobj
910 0 obj
<</Subtype/Form/Length 259/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 905 0 R/Resources<</XObject<</Fm0 909 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
-/CS0 cs 0.616 0.196 0.196 scn +
endstream
endobj
1003 0 obj
<</Subtype/Form/Length 258/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 998 0 R/Resources<</XObject<</Fm0 1002 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
+/CS0 cs 0.29 0.486 0.133 scn 1 i /GS0 gs q 1 0 0 1 334.002 303.2773 cm @@ -653,8 +655,8 @@ Q q /Fm0 Do Q -
endstream
endobj
917 0 obj
<</Subtype/Form/Length 248/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 912 0 R/Resources<</XObject<</Fm0 916 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
-/CS0 cs 0.616 0.196 0.196 scn +
endstream
endobj
1010 0 obj
<</Subtype/Form/Length 247/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1005 0 R/Resources<</XObject<</Fm0 1009 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
+/CS0 cs 0.29 0.486 0.133 scn 1 i /GS0 gs q 1 0 0 1 327.999 212.2715 cm @@ -668,7 +670,7 @@ Q q /Fm0 Do Q -
endstream
endobj
927 0 obj
<</Subtype/Form/Length 262/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 922 0 R/Resources<</XObject<</Fm0 926 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
+
endstream
endobj
1020 0 obj
<</Subtype/Form/Length 262/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1015 0 R/Resources<</XObject<</Fm0 1019 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
/CS0 cs 0.196 0.322 0.616 scn 1 i /GS0 gs @@ -683,7 +685,7 @@ Q q /Fm0 Do Q -
endstream
endobj
935 0 obj
<</Subtype/Form/Length 241/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 930 0 R/Resources<</XObject<</Fm0 934 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
+
endstream
endobj
1028 0 obj
<</Subtype/Form/Length 241/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1023 0 R/Resources<</XObject<</Fm0 1027 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
/CS0 cs 0.196 0.322 0.616 scn 1 i /GS0 gs @@ -698,7 +700,7 @@ Q q /Fm0 Do Q -
endstream
endobj
945 0 obj
<</Subtype/Form/Length 262/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 940 0 R/Resources<</XObject<</Fm0 944 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
+
endstream
endobj
1038 0 obj
<</Subtype/Form/Length 262/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1033 0 R/Resources<</XObject<</Fm0 1037 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
/CS0 cs 0.196 0.322 0.616 scn 1 i /GS0 gs @@ -713,7 +715,7 @@ Q q /Fm0 Do Q -
endstream
endobj
952 0 obj
<</Subtype/Form/Length 240/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 947 0 R/Resources<</XObject<</Fm0 951 0 R>>/ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
+
endstream
endobj
1045 0 obj
<</Subtype/Form/Length 240/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1040 0 R/Resources<</XObject<</Fm0 1044 0 R>>/ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
/CS0 cs 0.196 0.322 0.616 scn 1 i /GS0 gs @@ -728,7 +730,7 @@ Q q /Fm0 Do Q -
endstream
endobj
947 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
951 0 obj
<</Subtype/Form/Length 482/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 948 0 R/Resources<</XObject<</Fm0 950 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
+
endstream
endobj
1040 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1044 0 obj
<</Subtype/Form/Length 482/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1041 0 R/Resources<</XObject<</Fm0 1043 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
q 189.876 496.023 m 189.876 501.023 l @@ -747,7 +749,7 @@ q /Fm0 Do Q Q -
endstream
endobj
948 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
950 0 obj
<</Subtype/Form/Length 11006/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 949 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
+
endstream
endobj
1041 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1043 0 obj
<</Subtype/Form/Length 11006/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1042 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[183.873 501.023 195.879 489.026]>>stream
/CS0 cs 0.2 0.325 0.624 scn 1 i /GS0 gs @@ -850,7 +852,7 @@ q 1 0 0 1 189.876 497.5073 cm -1.093 -1.708 l -1.262 -2.107 -1.291 -2.435 -1.188 -2.804 c -1.126 -3.032 -0.727 -4.136 0.984 -3.565 c -4.73 -2.315 2.784 0.034 2.453 0.246 c +4.73 -2.315 2.784 0.034 2.453 0.247 c 1.442 0.896 0.101 0.218 0 0 c 0 3.516 l 3.312 3.516 6.003 0.834 6.003 -2.478 c @@ -1129,7 +1131,7 @@ Q q 1 0 0 1 191.5 495.7261 cm 0 0 m -0.004 0.004 -0.533 0.573 -0.71 0.862 c --0.568 0.875 -0.483 0.883 -0.265 0.809 c +-0.568 0.875 -0.482 0.883 -0.264 0.809 c -0.18 0.781 -0.083 0.699 -0.025 0.631 c 0.033 0.563 0.091 0.45 0.104 0.362 c 0.135 0.141 0.099 0.019 0.074 -0.062 c @@ -1153,7 +1155,7 @@ q 1 0 0 1 189.876 501.0112 cm 0.15 0.006 0.046 -0.044 0 0 c f Q -
endstream
endobj
949 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
940 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
944 0 obj
<</Subtype/Form/Length 482/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 941 0 R/Resources<</XObject<</Fm0 943 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
+
endstream
endobj
1042 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1033 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1037 0 obj
<</Subtype/Form/Length 482/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1034 0 R/Resources<</XObject<</Fm0 1036 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
q 184.836 446.278 m 184.836 462.278 l @@ -1172,7 +1174,7 @@ q /Fm0 Do Q Q -
endstream
endobj
941 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
943 0 obj
<</Subtype/Form/Length 13525/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 942 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
+
endstream
endobj
1034 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1036 0 obj
<</Subtype/Form/Length 13533/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1035 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[156.837 462.278 212.835 406.271]>>stream
/CS0 cs 0.208 0.337 0.655 scn 1 i /GS0 gs @@ -1199,7 +1201,7 @@ q 1 0 0 1 184.8359 451.4419 cm 6.606 -29.181 12.008 -23.781 11.999 -17.163 c 12.01 -10.555 6.607 -5.153 0 -5.164 c 0 -0.468 l -0.316 -0.694 0.738 -0.996 1.055 -1.223 c +0.316 -0.694 0.738 -0.997 1.055 -1.223 c 3.817 -3.661 7.459 -4.869 10 -7.617 c 12.018 -9.8 13.458 -12.461 14.279 -15.528 c 15.076 -18.507 16.901 -19.346 16.917 -19.348 c @@ -1226,8 +1228,8 @@ q 1 0 0 1 184.8359 453.2891 cm 12.01 -12.402 6.607 -7 0 -7.011 c 0 -5.167 l 0.338 -5.201 0.788 -5.245 1.126 -5.278 c -2.249 -5.476 12.143 -7.557 13.761 -19.538 c -13.896 -20.531 13.436 -21.605 14.171 -22.516 c +2.249 -5.476 12.144 -7.557 13.761 -19.538 c +13.765 -19.565 14.171 -22.516 14.171 -22.516 c 14.636 -23.09 15.724 -23.507 16.459 -23.43 c 20.584 -22.993 26.416 -9.568 15.896 -1.312 c 7.943 4.929 0.035 0.084 0 0 c @@ -1255,7 +1257,7 @@ q 1 0 0 1 184.8359 454.4082 cm 5.587 -8.118 13.156 -12.018 12.674 -22.551 c 12.559 -25.065 12.662 -26.483 12.98 -26.764 c 14.309 -27.938 23.357 -23.699 22.629 -14.042 c -21.27 4.006 1.142 2.02 0 0 c +21.269 4.004 1.142 2.019 0 0 c 0 7.87 l 15.462 7.87 27.999 -4.667 27.999 -20.129 c 27.999 -35.6 15.462 -48.137 0 -48.137 c @@ -1274,7 +1276,7 @@ q 1 0 0 1 184.8359 455.3335 cm -11.368 -29.209 -4.441 -35.048 3.701 -32.84 c 16.505 -28.457 l 19.639 -26.39 21.523 -23.894 22.614 -20.364 c -24.61 -13.908 21.812 -4.74 13.674 -0.575 c +24.61 -13.907 21.812 -4.74 13.674 -0.575 c 6.26 3.219 0.029 0.049 0 0 c 0 6.945 l 15.462 6.945 27.999 -5.592 27.999 -21.054 c @@ -1325,7 +1327,7 @@ q 1 0 0 1 184.8359 457.5 cm -3.111 -1.225 -7.25 -3.37 -10.633 -9.471 c -11.685 -11.368 -15.021 -18.085 -13.796 -24.879 c -12.453 -32.328 -5.461 -39.37 6.714 -37.227 c -28.95 -33.313 28.976 -11.259 15.609 -2.301 c +28.951 -33.313 28.976 -11.259 15.609 -2.301 c 7.856 2.895 0.038 0.056 0 0 c 0 4.778 l 15.462 4.778 27.999 -7.759 27.999 -23.221 c @@ -1341,7 +1343,7 @@ q 1 0 0 1 184.8359 458.1108 cm -0.285 -0.403 -1.085 -0.384 -1.55 -0.549 c -2.14 -0.758 -7.426 -2.783 -11.14 -9.4 c -12.536 -11.888 -15.643 -18.441 -14.343 -25.555 c --13.274 -31.4 -7.567 -40.72 7.05 -38.576 c +-13.275 -31.4 -7.567 -40.72 7.05 -38.576 c 28.069 -35.492 30.907 -13.131 16.17 -2.838 c 7.979 2.883 0.04 0.057 0 0 c 0 4.167 l @@ -1375,8 +1377,8 @@ q 1 0 0 1 184.8359 459.2207 cm -0.327 -0.44 -1.224 -0.37 -1.749 -0.528 c -5.52 -1.667 -9.766 -5.26 -12.073 -9.267 c -15.394 -15.036 -16.522 -20.933 -15.426 -26.792 c --13.856 -35.181 -5.227 -43.018 7.675 -41.021 c -29.388 -37.66 31.678 -13.959 16.092 -3.122 c +-13.856 -35.181 -5.227 -43.019 7.675 -41.021 c +29.387 -37.659 31.678 -13.959 16.092 -3.122 c 8.188 2.374 0.041 0.052 0 0 c 0 3.058 l 15.462 3.058 27.999 -9.479 27.999 -24.941 c @@ -1423,11 +1425,11 @@ Q 0.153 0.251 0.482 scn q 1 0 0 1 184.8359 460.6479 cm 0 0 m --0.165 -0.201 -0.596 -0.119 -0.851 -0.169 c +-0.165 -0.201 -0.596 -0.119 -0.852 -0.169 c -6.63 -1.321 -11.086 -5.48 -13.33 -8.99 c -17.823 -16.018 -17.959 -22.68 -17.283 -27.032 c -15.528 -38.313 -5.353 -45.642 6.913 -44.456 c -29.058 -42.316 33.218 -18.568 18.588 -5.674 c +29.058 -42.316 33.217 -18.568 18.588 -5.674 c 9.722 2.142 0.051 0.062 0 0 c 0 1.63 l 15.462 1.63 27.999 -10.907 27.999 -26.369 c @@ -1444,7 +1446,7 @@ q 1 0 0 1 184.8359 461.0591 cm -5.333 -1.052 -10.598 -4.013 -13.752 -8.857 c -18.474 -16.108 -18.606 -22.979 -17.885 -27.466 c -16.272 -37.507 -7.1 -46.929 7.31 -45.507 c -29.579 -43.31 33.524 -19.12 18.666 -5.999 c +29.58 -43.31 33.524 -19.12 18.666 -5.999 c 9.679 1.938 0.05 0.061 0 0 c 0 1.219 l 15.462 1.219 27.999 -11.318 27.999 -26.78 c @@ -1478,7 +1480,7 @@ q 1 0 0 1 184.8359 461.7397 cm -5.616 -0.798 -11.203 -3.577 -14.553 -8.414 c -20.526 -17.037 -19.484 -25.015 -19.142 -27.636 c -17.325 -41.551 -4.721 -48.305 6.215 -47.597 c -22.827 -46.52 31.84 -32.415 25.896 -16.796 c +22.827 -46.52 31.839 -32.415 25.896 -16.796 c 27.251 -20.083 27.999 -23.685 27.999 -27.46 c 27.999 -42.931 15.462 -55.468 0 -55.468 c -15.462 -55.468 -27.999 -42.931 -27.999 -27.46 c @@ -1557,7 +1559,7 @@ Q q 1 0 0 1 200.7622 436.103 cm 0 0 m -1.706 2.422 -2.871 5.192 -4.806 7.466 c --5.581 8.376 -6.334 9.141 -7.046 9.74 c +-5.581 8.375 -6.334 9.141 -7.046 9.74 c -7.103 9.788 -12.699 14.577 -12.706 14.929 c -12.708 15.035 -10.925 16.753 -10.74 16.825 c -10.058 17.086 -7.544 17.231 -6.875 17.166 c @@ -1575,25 +1577,25 @@ q 1 0 0 1 200.8965 438.5967 cm -5.844 7.601 -6.16 7.969 -6.419 8.224 c -6.913 8.711 -7.551 9.382 -8.074 9.839 c -9.724 11.281 -9.908 11.547 -9.911 11.595 c --9.914 11.657 -8.495 13.252 -8.295 13.411 c --8.132 13.541 -7.808 13.456 -7.601 13.433 c --5.32 13.184 -2.962 12.927 -0.476 10.566 c -2.531 7.709 2.783 5.143 2.904 3.91 c +-9.914 11.655 -8.389 13.369 -8.295 13.411 c +-7.711 13.674 -6.801 13.346 -6.164 13.276 c +-2.962 12.927 -1.156 11.212 -0.476 10.566 c +2.531 7.709 2.783 5.143 2.904 3.909 c 2.938 3.565 2.929 0.875 2.709 0.41 c 2.675 0.337 0.707 -0.875 0.645 -0.861 c 0.33 -0.793 0.182 -0.267 0 0 c f Q 0.224 0.361 0.694 scn -q 1 0 0 1 199.981 442.126 cm +q 1 0 0 1 199.9814 442.126 cm 0 0 m --0.736 0.236 -1.075 1.45 -1.575 2.04 c --3.148 3.894 -3.148 3.894 -3.896 4.678 c --4.212 5.008 -4.839 5.354 -4.922 5.803 c +-0.737 0.235 -1.076 1.45 -1.576 2.04 c +-3.148 3.895 -3.148 3.895 -3.897 4.678 c +-4.212 5.008 -4.84 5.354 -4.922 5.803 c -4.014 7.981 l --3.952 8.007 -1.426 7.15 0.33 5.083 c -1.632 3.552 2.398 0.755 2.281 0.574 c -1.906 -0.01 0.7 -0.197 0.037 0.011 c +-3.953 8.007 -1.427 7.15 0.33 5.083 c +1.631 3.552 2.397 0.755 2.281 0.574 c +1.906 -0.01 0.699 -0.197 0.037 0.011 c 0.026 0.014 0.011 -0.003 0 0 c f Q @@ -1632,7 +1634,7 @@ q 1 0 0 1 184.8359 462.2749 cm 0.701 -0.01 0.211 -0.214 0 0 c f Q -
endstream
endobj
942 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
930 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
934 0 obj
<</Subtype/Form/Length 477/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 931 0 R/Resources<</XObject<</Fm0 933 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
+
endstream
endobj
1035 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1023 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1027 0 obj
<</Subtype/Form/Length 477/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1024 0 R/Resources<</XObject<</Fm0 1026 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
q 315.165 487.275 m 315.165 492.275 l @@ -1651,7 +1653,7 @@ q /Fm0 Do Q Q -
endstream
endobj
931 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
933 0 obj
<</Subtype/Form/Length 11078/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 932 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
+
endstream
endobj
1024 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1026 0 obj
<</Subtype/Form/Length 11079/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1025 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[309.171 492.275 321.168 480.278]>>stream
/CS0 cs 0.2 0.325 0.624 scn 1 i /GS0 gs @@ -1789,7 +1791,7 @@ q 1 0 0 1 315.165 489.1035 cm -0.734 -0.546 -0.993 -1.253 -1.244 -1.936 c -1.353 -2.232 -1.496 -2.812 -1.238 -3.374 c -0.612 -4.739 1.248 -4.146 1.803 -3.932 c -4.138 -3.031 4.266 -0.308 2.51 0.419 c +4.138 -3.031 4.265 -0.308 2.51 0.419 c 1.108 1 0.006 0.012 0 0 c 0 3.172 l 3.312 3.172 6.003 0.49 6.003 -2.831 c @@ -1840,7 +1842,7 @@ q 1 0 0 1 315.165 489.7065 cm -0.751 -0.537 -1.207 -1.436 -1.319 -1.735 c -1.402 -1.96 -1.802 -3.124 -1.467 -3.945 c -0.712 -5.795 1.956 -4.866 1.982 -4.855 c -5.3 -3.58 5.175 -0.371 3.116 0.573 c +5.299 -3.58 5.174 -0.371 3.116 0.573 c 1.411 1.355 0.007 0.017 0 0 c 0 2.569 l 3.312 2.569 6.003 -0.113 6.003 -3.434 c @@ -1910,7 +1912,7 @@ q 1 0 0 1 315.165 491.083 cm -1.149 -1.351 -1.614 -2.354 -1.616 -2.362 c -2.165 -3.906 -2.034 -4.643 -1.834 -5.161 c -0.959 -7.42 1.653 -7.023 2.585 -6.679 c -3.892 -6.198 6.612 -5.195 5.552 -2.522 c +3.892 -6.198 6.61 -5.196 5.552 -2.522 c 5.843 -3.227 6.003 -4 6.003 -4.811 c 6.003 -8.123 3.312 -10.805 0 -10.805 c -3.312 -10.805 -5.994 -8.123 -5.994 -4.811 c @@ -1995,7 +1997,7 @@ q 1 0 0 1 316.7451 486.4531 cm -0.662 0.769 -0.836 0.916 -0.974 1.096 c -1.233 1.432 -1.232 1.599 -1.232 1.6 c -1.226 1.62 -0.028 2.446 0.591 1.368 c -1.026 0.612 0.245 -0.132 0.233 -0.134 c +1.026 0.611 0.245 -0.132 0.233 -0.134 c 0.153 -0.145 0.065 -0.047 0 0 c f Q @@ -2058,7 +2060,7 @@ q 1 0 0 1 315.165 492.2632 cm 0.15 0.006 0.046 -0.044 0 0 c f Q -
endstream
endobj
932 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
922 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
926 0 obj
<</Subtype/Form/Length 473/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 923 0 R/Resources<</XObject<</Fm0 925 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
+
endstream
endobj
1025 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1015 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1019 0 obj
<</Subtype/Form/Length 473/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1016 0 R/Resources<</XObject<</Fm0 1018 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
q 323.67 445.774 m 323.67 461.774 l @@ -2077,7 +2079,7 @@ q /Fm0 Do Q Q -
endstream
endobj
923 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
925 0 obj
<</Subtype/Form/Length 13513/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 924 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
+
endstream
endobj
1016 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1018 0 obj
<</Subtype/Form/Length 13391/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1017 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[295.671 461.774 351.669 405.776]>>stream
/CS0 cs 0.208 0.337 0.655 scn 1 i /GS0 gs @@ -2122,7 +2124,7 @@ Q q 1 0 0 1 323.6699 452.7832 cm 0 0 m -0.297 -0.712 -1.488 -1.167 -1.738 -1.898 c --1.989 -2.637 -2.004 -3.871 -1.531 -4.492 c +-1.989 -2.637 -2.005 -3.871 -1.531 -4.492 c -1.227 -4.891 -0.45 -4.943 0 -5.165 c 0 -7.009 l -6.615 -7 -12.009 -12.397 -11.999 -19.008 c @@ -2157,10 +2159,10 @@ q 1 0 0 1 323.6699 453.9038 cm 12.01 -13.521 6.607 -8.119 0 -8.129 c 0 -7.407 l 0.312 -7.427 0.727 -7.454 1.039 -7.474 c -5.586 -8.118 13.155 -12.017 12.674 -22.547 c +5.586 -8.118 13.154 -12.018 12.674 -22.547 c 12.56 -25.06 12.663 -26.477 12.982 -26.758 c -14.31 -27.928 23.355 -23.682 22.629 -14.041 c -21.271 4 1.142 2.018 0 0 c +14.311 -27.928 23.356 -23.682 22.629 -14.041 c +21.27 3.998 1.142 2.018 0 0 c 0 7.871 l 15.462 7.871 27.999 -4.667 27.999 -20.128 c 27.999 -35.59 15.462 -48.127 0 -48.127 c @@ -2174,8 +2176,8 @@ q 1 0 0 1 323.6699 454.8291 cm 0 0 m -0.223 -0.378 -0.896 -0.494 -1.28 -0.706 c -3.988 -2.198 -4.356 -2.882 -7.222 -8.202 c --10.978 -15.406 l --12.035 -17.648 -12.409 -19.973 -12.123 -22.51 c +-10.979 -15.406 l +-12.035 -17.648 -12.409 -19.972 -12.123 -22.51 c -11.368 -29.204 -4.441 -35.039 3.701 -32.831 c 16.504 -28.45 l 19.64 -26.383 21.524 -23.889 22.614 -20.364 c @@ -2192,12 +2194,9 @@ Q 0.192 0.31 0.596 scn q 1 0 0 1 323.6699 455.6289 cm 0 0 m --0.174 -0.267 -0.682 -0.299 -0.974 -0.428 c --3.272 -1.437 -6.368 -4.312 -7.598 -6.58 c --13.391 -17.255 -13 -20.65 -12.686 -23.378 c --12.045 -28.943 -6.307 -36.331 3.975 -34.516 c -34.372 -29.149 23.201 -7.032 15.417 -1.844 c -7.622 3.352 0.039 0.059 0 0 c +-11.795 -5.181 -18.994 -27.783 -4.636 -33.729 c +5.806 -38.053 30.469 -28.935 22.345 -10.09 c +19.107 -2.58 10.176 3.509 0 0 c 0 6.146 l 15.462 6.146 27.999 -6.392 27.999 -21.854 c 27.999 -37.315 15.462 -49.853 0 -49.853 c @@ -2263,8 +2262,8 @@ q 1 0 0 1 323.6699 458.1792 cm -0.295 -0.407 -1.114 -0.365 -1.591 -0.521 c -3.039 -0.995 -8.059 -3.066 -11.891 -9.807 c -12.952 -11.675 -16.307 -18.377 -14.887 -26.189 c --13.692 -32.762 -6.813 -41.824 7.243 -39.848 c -28.686 -36.834 31.47 -13.846 16.374 -3.144 c +-13.692 -32.762 -6.813 -41.823 7.243 -39.848 c +28.687 -36.834 31.471 -13.847 16.374 -3.144 c 8.08 2.737 0.041 0.056 0 0 c 0 3.595 l 15.462 3.595 27.999 -8.942 27.999 -24.404 c @@ -2281,7 +2280,7 @@ q 1 0 0 1 323.6699 458.7163 cm -5.521 -1.665 -9.768 -5.259 -12.076 -9.267 c -15.396 -15.033 -16.523 -20.929 -15.426 -26.791 c -13.856 -35.175 -5.227 -43.009 7.675 -41.011 c -29.381 -37.65 31.673 -13.956 16.092 -3.122 c +29.382 -37.65 31.673 -13.956 16.092 -3.122 c 8.188 2.374 0.041 0.052 0 0 c 0 3.058 l 15.462 3.058 27.999 -9.479 27.999 -24.941 c @@ -2295,7 +2294,7 @@ Q q 1 0 0 1 323.6699 459.2314 cm 0 0 m -0.315 -0.414 -1.17 -0.321 -1.672 -0.458 c --5.63 -1.542 -10.188 -5.222 -12.512 -9.206 c +-5.63 -1.542 -10.189 -5.222 -12.512 -9.206 c -13.797 -11.409 -17.707 -18.115 -15.958 -27.369 c -14.312 -36.085 -5.369 -44.227 7.962 -42.147 c 29.823 -38.738 32.256 -15.066 16.713 -3.752 c @@ -2382,7 +2381,7 @@ q 1 0 0 1 323.6699 461.2358 cm -0.366 -0.422 -1.291 -0.183 -1.844 -0.262 c -5.618 -0.797 -11.206 -3.577 -14.557 -8.414 c -20.527 -17.033 -19.484 -25.013 -19.142 -27.635 c --17.325 -41.544 -4.721 -48.296 6.215 -47.587 c +-17.325 -41.544 -4.721 -48.297 6.215 -47.587 c 22.825 -46.511 31.838 -32.41 25.896 -16.796 c 27.251 -20.083 27.999 -23.685 27.999 -27.46 c 27.999 -42.922 15.462 -55.459 0 -55.459 c @@ -2438,8 +2437,8 @@ Q 0.122 0.2 0.384 scn q 1 0 0 1 319.437 461.4541 cm 0 0 m --22.53 -4.549 -23.53 -35.024 -6.331 -46.258 c -6.847 -54.865 25.642 -52.171 31.071 -35.682 c +-22.531 -4.549 -23.531 -35.025 -6.331 -46.258 c +6.847 -54.864 25.642 -52.17 31.071 -35.682 c 27.627 -47.245 16.914 -55.678 4.233 -55.678 c -11.238 -55.678 -23.766 -43.141 -23.766 -27.679 c -23.766 -13.386 -13.062 -1.593 0.777 0.109 c @@ -2462,20 +2461,20 @@ Q q 1 0 0 1 339.5962 435.5991 cm 0 0 m -1.706 2.422 -2.871 5.192 -4.806 7.466 c --5.581 8.376 -6.334 9.141 -7.046 9.74 c --7.103 9.788 -12.699 14.576 -12.705 14.929 c +-5.581 8.375 -6.334 9.141 -7.046 9.74 c +-7.103 9.788 -12.699 14.577 -12.705 14.929 c -12.707 15.035 -10.925 16.753 -10.74 16.825 c -10.058 17.086 -7.544 17.231 -6.875 17.166 c -5.111 16.992 -2.438 16.241 0.275 13.649 c 3.79 10.293 4.269 6.382 4.332 5.263 c -4.608 0.362 1.816 -1.552 1.125 -1.426 c +4.608 0.362 1.816 -1.553 1.125 -1.426 c 0.589 -1.328 0.314 -0.445 0 0 c f Q 0.22 0.353 0.682 scn q 1 0 0 1 339.7305 438.0928 cm 0 0 m --1.971 2.884 -3.056 4.472 -4.87 6.595 c +-1.97 2.883 -3.055 4.471 -4.87 6.595 c -5.072 6.832 -5.375 7.116 -5.591 7.34 c -5.844 7.601 -6.16 7.969 -6.419 8.224 c -6.913 8.711 -7.551 9.382 -8.074 9.839 c @@ -2483,29 +2482,29 @@ q 1 0 0 1 339.7305 438.0928 cm -9.914 11.657 -8.495 13.252 -8.295 13.411 c -8.132 13.541 -7.808 13.456 -7.601 13.433 c -5.32 13.184 -2.962 12.927 -0.476 10.566 c -2.531 7.709 2.783 5.143 2.904 3.91 c +2.531 7.709 2.783 5.143 2.904 3.909 c 2.938 3.565 2.929 0.875 2.709 0.41 c 2.675 0.337 0.707 -0.875 0.645 -0.861 c 0.33 -0.793 0.182 -0.267 0 0 c f Q 0.224 0.361 0.694 scn -q 1 0 0 1 338.8149 441.6221 cm +q 1 0 0 1 338.8154 441.6221 cm 0 0 m --0.736 0.235 -1.075 1.45 -1.575 2.04 c --3.148 3.894 -3.148 3.894 -3.896 4.678 c --4.212 5.008 -4.839 5.354 -4.922 5.803 c +-0.737 0.235 -1.076 1.45 -1.576 2.04 c +-3.148 3.894 -3.148 3.894 -3.897 4.678 c +-4.212 5.008 -4.84 5.354 -4.922 5.803 c -4.014 7.981 l --3.952 8.007 -1.426 7.15 0.33 5.083 c -1.632 3.552 2.398 0.755 2.281 0.574 c -1.906 -0.01 0.7 -0.197 0.037 0.011 c +-3.953 8.007 -1.427 7.15 0.33 5.083 c +1.631 3.552 2.397 0.755 2.281 0.574 c +1.906 -0.01 0.699 -0.197 0.037 0.011 c 0.026 0.014 0.011 -0.003 0 0 c f Q 0.141 0.227 0.439 scn q 1 0 0 1 335.7192 459.0469 cm 0 0 m --5.215 2.39 -9.179 2.425 -12.049 2.189 c +-5.275 2.417 -9.403 2.407 -12.049 2.189 c -12.049 2.728 l -6.604 2.728 -1.522 1.173 2.777 -1.517 c 2.232 -1.205 1.506 -0.789 0.961 -0.477 c @@ -2524,7 +2523,7 @@ Q 0.133 0.216 0.412 scn q 1 0 0 1 327.9009 461.4541 cm 0 0 m --2.557 0.263 -2.657 0.273 -4.231 0.228 c +-1.314 0.178 -2.48 0.278 -4.231 0.228 c -4.231 0.32 l -2.431 0.32 -0.671 0.15 1.035 -0.174 c 0.724 -0.122 0.312 -0.042 0 0 c @@ -2537,7 +2536,7 @@ q 1 0 0 1 323.6699 461.771 cm 0.701 -0.01 0.211 -0.214 0 0 c f Q -
endstream
endobj
924 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
912 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
916 0 obj
<</Subtype/Form/Length 478/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 913 0 R/Resources<</XObject<</Fm0 915 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
+
endstream
endobj
1017 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1005 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1009 0 obj
<</Subtype/Form/Length 478/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1006 0 R/Resources<</XObject<</Fm0 1008 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
q 327.999 212.271 m 327.999 217.271 l @@ -2556,8 +2555,8 @@ q /Fm0 Do Q Q -
endstream
endobj
913 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
915 0 obj
<</Subtype/Form/Length 11074/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 914 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
-/CS0 cs 0.624 0.2 0.2 scn +
endstream
endobj
1006 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1008 0 obj
<</Subtype/Form/Length 11068/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1007 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[321.996 217.271 334.002 205.274]>>stream
+/CS0 cs 0.294 0.494 0.133 scn 1 i /GS0 gs q 1 0 0 1 327.999 212.2715 cm @@ -2588,7 +2587,7 @@ q 1 0 0 1 327.999 213.1963 cm 0.142 -0.55 0.184 -0.536 0.21 -0.549 c 1.046 -1.473 l 1.441 -2.153 1.79 -2.106 1.805 -2.104 c -2.058 -2.064 3.185 -0.619 1.901 0.191 c +2.057 -2.064 3.185 -0.619 1.901 0.191 c 1.598 0.383 1.275 0.409 1.132 0.396 c 0 0 l 0 4.075 l @@ -2599,7 +2598,7 @@ q 1 0 0 1 327.999 213.1963 cm 0 0 l f Q -0.612 0.196 0.196 scn +0.286 0.482 0.133 scn q 1 0 0 1 327.999 213.3379 cm 0 0 m -0.03 -0.092 -0.164 -0.17 -0.185 -0.265 c @@ -2620,7 +2619,7 @@ q 1 0 0 1 327.999 213.3379 cm 0 0 l f Q -0.596 0.192 0.192 scn +0.278 0.471 0.129 scn q 1 0 0 1 327.999 213.4785 cm 0 0 m -0.294 -0.83 -1.296 -1.345 -1.079 -2.404 c @@ -2637,7 +2636,7 @@ q 1 0 0 1 327.999 213.4785 cm 0 0 l f Q -0.58 0.188 0.188 scn +0.275 0.459 0.125 scn q 1 0 0 1 327.999 213.6182 cm 0 0 m -0.352 -0.866 -1.383 -1.428 -1.146 -2.558 c @@ -2653,7 +2652,7 @@ q 1 0 0 1 327.999 213.6182 cm 0 0 l f Q -0.569 0.18 0.18 scn +0.267 0.447 0.122 scn q 1 0 0 1 327.999 213.7549 cm 0 0 m -0.193 -0.417 -0.585 -0.691 -0.795 -1.098 c @@ -2670,7 +2669,7 @@ q 1 0 0 1 327.999 213.7549 cm 0 0 l f Q -0.553 0.176 0.176 scn +0.259 0.439 0.118 scn q 1 0 0 1 327.999 213.9082 cm 0 0 m -0.013 -0.025 -0.053 -0.04 -0.076 -0.058 c @@ -2687,7 +2686,7 @@ q 1 0 0 1 327.999 213.9082 cm 0 0 l f Q -0.541 0.173 0.173 scn +0.255 0.427 0.118 scn q 1 0 0 1 327.999 214.0996 cm 0 0 m -0.034 -0.067 -0.142 -0.105 -0.203 -0.15 c @@ -2704,7 +2703,7 @@ q 1 0 0 1 327.999 214.0996 cm 0 0 l f Q -0.525 0.169 0.169 scn +0.247 0.416 0.114 scn q 1 0 0 1 327.999 214.2871 cm 0 0 m -0.037 -0.069 -0.152 -0.104 -0.217 -0.147 c @@ -2721,7 +2720,7 @@ q 1 0 0 1 327.999 214.2871 cm 0 0 l f Q -0.51 0.165 0.165 scn +0.239 0.404 0.11 scn q 1 0 0 1 327.999 214.4717 cm 0 0 m -0.176 -0.317 -0.542 -0.437 -0.748 -0.722 c @@ -2738,7 +2737,7 @@ q 1 0 0 1 327.999 214.4717 cm 0 0 l f Q -0.498 0.161 0.161 scn +0.235 0.392 0.106 scn q 1 0 0 1 327.999 214.7031 cm 0 0 m -0.06 -0.133 -0.265 -0.211 -0.386 -0.291 c @@ -2755,15 +2754,15 @@ q 1 0 0 1 327.999 214.7031 cm 0 0 l f Q -0.482 0.153 0.153 scn +0.227 0.38 0.106 scn q 1 0 0 1 327.999 214.9854 cm 0 0 m -0.04 -0.083 -0.167 -0.135 -0.239 -0.193 c -0.736 -0.594 -1.131 -1.171 -1.412 -1.908 c -1.719 -2.715 -1.736 -3.694 -1.577 -4.139 c -0.858 -6.132 1.881 -5.304 1.908 -5.295 c -5.597 -4.044 5.759 -0.555 3.075 0.691 c -1.838 1.267 0.163 0.34 0 0 c +5.598 -4.044 5.76 -0.555 3.075 0.691 c +1.838 1.266 0.163 0.34 0 0 c 0 2.286 l 3.312 2.286 6.003 -0.396 6.003 -3.708 c 6.003 -7.02 3.312 -9.711 0 -9.711 c @@ -2772,7 +2771,7 @@ q 1 0 0 1 327.999 214.9854 cm 0 0 l f Q -0.467 0.149 0.149 scn +0.22 0.369 0.102 scn q 1 0 0 1 327.999 215.2715 cm 0 0 m -0.045 -0.106 -0.21 -0.167 -0.302 -0.236 c @@ -2789,7 +2788,7 @@ q 1 0 0 1 327.999 215.2715 cm 0 0 l f Q -0.455 0.145 0.145 scn +0.212 0.361 0.098 scn q 1 0 0 1 327.999 215.6543 cm 0 0 m -0.163 -0.361 -0.542 -0.515 -0.779 -0.805 c @@ -2807,7 +2806,7 @@ q 1 0 0 1 327.999 215.6543 cm 0 0 l f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 327.999 216.0791 cm 0 0 m -0.128 -0.296 -0.442 -0.404 -0.638 -0.631 c @@ -2823,7 +2822,7 @@ q 1 0 0 1 327.999 216.0791 cm 0 0 l f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 327.999 216.5439 cm 0 0 m -0.037 -0.078 -0.154 -0.129 -0.22 -0.185 c @@ -2838,7 +2837,7 @@ q 1 0 0 1 327.999 216.5439 cm 0 0 l f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 327.999 216.9863 cm 0 0 m -0.038 -0.066 -0.155 -0.09 -0.221 -0.129 c @@ -2853,7 +2852,7 @@ q 1 0 0 1 327.999 216.9863 cm 0 0 l f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 327.999 217.2598 cm 0 0 m -0.043 -0.053 -0.154 -0.029 -0.221 -0.042 c @@ -2867,7 +2866,7 @@ q 1 0 0 1 327.999 217.2598 cm 0 0 l f Q -0.384 0.122 0.122 scn +0.18 0.302 0.082 scn q 1 0 0 1 327.0938 217.1953 cm 0 0 m -1.738 -0.59 -1.75 -4.505 -1.75 -4.545 c @@ -2879,7 +2878,7 @@ q 1 0 0 1 327.0938 217.1953 cm 0.115 0.021 0.049 0.013 0 0 c f Q -0.369 0.118 0.118 scn +0.173 0.29 0.078 scn q 1 0 0 1 325.7642 216.7715 cm 0 0 m -1.064 -0.938 -0.813 -4.867 -0.541 -5.6 c @@ -2893,10 +2892,10 @@ q 1 0 0 1 325.7642 216.7715 cm 0.161 0.102 0.061 0.054 0 0 c f Q -0.639 0.204 0.204 scn +0.302 0.506 0.137 scn q 1 0 0 1 329.5791 211.4561 cm 0 0 m --0.096 0.068 -0.096 0.068 -0.519 0.587 c +-0.095 0.068 -0.095 0.068 -0.519 0.587 c -0.661 0.762 -0.834 0.909 -0.973 1.089 c -1.125 1.286 -1.231 1.594 y -1.226 1.612 -0.029 2.438 0.592 1.362 c @@ -2904,7 +2903,7 @@ q 1 0 0 1 329.5791 211.4561 cm 0.153 -0.144 0.065 -0.047 0 0 c f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 330.5688 216.6631 cm 0 0 m -1.295 0.462 -2.254 -0.325 -2.57 -0.584 c @@ -2914,7 +2913,7 @@ q 1 0 0 1 330.5688 216.6631 cm 0.219 -0.095 0.096 -0.034 0 0 c f Q -0.655 0.208 0.208 scn +0.306 0.518 0.141 scn q 1 0 0 1 329.6191 211.708 cm 0 0 m -0.335 0.354 l @@ -2925,7 +2924,7 @@ q 1 0 0 1 329.6191 211.708 cm 0.106 -0.131 0.048 -0.039 0 0 c f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 329.7661 216.9941 cm 0 0 m -0.649 0.12 -1.161 -0.01 -1.767 -0.45 c @@ -2935,7 +2934,7 @@ q 1 0 0 1 329.7661 216.9941 cm 0.02 -0.005 0.009 -0.002 0 0 c f Q -0.667 0.216 0.216 scn +0.314 0.525 0.145 scn q 1 0 0 1 329.623 211.9746 cm 0 0 m -0.004 0.004 -0.533 0.572 -0.71 0.861 c @@ -2946,7 +2945,7 @@ q 1 0 0 1 329.623 211.9746 cm 0.052 -0.044 0.021 -0.021 0 0 c f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 328.9043 217.1943 cm 0 0 m -0.314 -0.006 -0.487 -0.009 -0.905 -0.208 c @@ -2955,7 +2954,7 @@ q 1 0 0 1 328.9043 217.1943 cm 0.157 -0.021 0.068 -0.004 0 0 c f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 327.999 217.2598 cm 0 0 m 0 0.012 l @@ -2963,7 +2962,7 @@ q 1 0 0 1 327.999 217.2598 cm 0.15 0.006 0.046 -0.045 0 0 c f Q -
endstream
endobj
914 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
905 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
909 0 obj
<</Subtype/Form/Length 475/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 906 0 R/Resources<</XObject<</Fm0 908 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
+
endstream
endobj
1007 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
998 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1002 0 obj
<</Subtype/Form/Length 475/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 999 0 R/Resources<</XObject<</Fm0 1001 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
q 334.002 303.277 m 334.002 319.277 l @@ -2982,8 +2981,8 @@ q /Fm0 Do Q Q -
endstream
endobj
906 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
908 0 obj
<</Subtype/Form/Length 13488/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 907 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
-/CS0 cs 0.655 0.208 0.208 scn +
endstream
endobj
999 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1001 0 obj
<</Subtype/Form/Length 13469/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 1000 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[306.003 319.277 362.001 263.279]>>stream
+/CS0 cs 0.306 0.518 0.141 scn 1 i /GS0 gs q 1 0 0 1 334.002 303.2773 cm @@ -3023,7 +3022,7 @@ q 1 0 0 1 334.002 308.4409 cm 0 0 l f Q -0.639 0.204 0.204 scn +0.302 0.506 0.137 scn q 1 0 0 1 334.002 310.2881 cm 0 0 m -0.296 -0.712 -1.487 -1.168 -1.735 -1.898 c @@ -3049,7 +3048,7 @@ q 1 0 0 1 334.002 310.2881 cm 0 0 l f Q -0.624 0.2 0.2 scn +0.294 0.494 0.133 scn q 1 0 0 1 334.002 311.4072 cm 0 0 m -0.627 -1.109 -1.866 -1.525 -2.708 -2.391 c @@ -3064,7 +3063,7 @@ q 1 0 0 1 334.002 311.4072 cm 0.312 -7.428 0.727 -7.455 1.039 -7.475 c 5.587 -8.118 13.155 -12.018 12.674 -22.55 c 12.559 -25.063 12.663 -26.479 12.981 -26.762 c -14.31 -27.933 23.356 -23.689 22.629 -14.042 c +14.31 -27.933 23.356 -23.69 22.629 -14.042 c 21.27 4.006 1.142 2.02 0 0 c 0 7.87 l 15.462 7.87 27.999 -4.667 27.999 -20.129 c @@ -3074,12 +3073,12 @@ q 1 0 0 1 334.002 311.4072 cm 0 0 l f Q -0.612 0.196 0.196 scn +0.286 0.482 0.133 scn q 1 0 0 1 334.002 312.3325 cm 0 0 m -0.223 -0.377 -0.896 -0.494 -1.279 -0.706 c -3.984 -2.198 -4.352 -2.882 -7.218 -8.204 c --10.977 -15.407 l +-10.978 -15.407 l -12.034 -17.649 -12.409 -19.973 -12.123 -22.511 c -11.368 -29.203 -4.44 -35.038 3.702 -32.832 c 16.504 -28.455 l @@ -3094,7 +3093,7 @@ q 1 0 0 1 334.002 312.3325 cm 0 0 l f Q -0.596 0.192 0.192 scn +0.278 0.471 0.129 scn q 1 0 0 1 334.002 313.1323 cm 0 0 m -0.174 -0.267 -0.682 -0.3 -0.974 -0.428 c @@ -3111,14 +3110,14 @@ q 1 0 0 1 334.002 313.1323 cm 0 0 l f Q -0.58 0.188 0.188 scn +0.275 0.459 0.125 scn q 1 0 0 1 334.002 313.833 cm 0 0 m -0.26 -0.393 -1.01 -0.429 -1.443 -0.612 c -4.281 -1.817 -7.531 -4.969 -9.346 -8.278 c -13.499 -15.849 -13.757 -21.087 -13.243 -24.146 c -12.334 -29.559 -7.254 -38.113 6.021 -35.853 c -29.653 -31.827 27.567 -10.229 15.691 -2.188 c +29.652 -31.827 27.567 -10.229 15.691 -2.188 c 7.725 3.206 0.039 0.058 0 0 c 0 5.444 l 15.462 5.444 27.999 -7.093 27.999 -22.555 c @@ -3128,7 +3127,7 @@ q 1 0 0 1 334.002 313.833 cm 0 0 l f Q -0.569 0.18 0.18 scn +0.267 0.447 0.122 scn q 1 0 0 1 334.002 314.499 cm 0 0 m -0.27 -0.397 -1.042 -0.411 -1.488 -0.586 c @@ -3145,7 +3144,7 @@ q 1 0 0 1 334.002 314.499 cm 0 0 l f Q -0.553 0.176 0.176 scn +0.259 0.439 0.118 scn q 1 0 0 1 334.002 315.1099 cm 0 0 m -0.285 -0.403 -1.085 -0.384 -1.55 -0.549 c @@ -3162,14 +3161,14 @@ q 1 0 0 1 334.002 315.1099 cm 0 0 l f Q -0.541 0.173 0.173 scn +0.255 0.427 0.118 scn q 1 0 0 1 334.002 315.6826 cm 0 0 m -0.294 -0.407 -1.113 -0.365 -1.59 -0.521 c -3.037 -0.996 -8.057 -3.068 -11.887 -9.807 c -12.95 -11.677 -16.306 -18.383 -14.886 -26.191 c -13.691 -32.763 -6.811 -41.823 7.247 -39.848 c -28.689 -36.835 31.471 -13.847 16.374 -3.144 c +28.69 -36.835 31.472 -13.848 16.374 -3.144 c 8.08 2.736 0.041 0.056 0 0 c 0 3.595 l 15.462 3.595 27.999 -8.942 27.999 -24.404 c @@ -3179,7 +3178,7 @@ q 1 0 0 1 334.002 315.6826 cm 0 0 l f Q -0.525 0.169 0.169 scn +0.247 0.416 0.114 scn q 1 0 0 1 334.002 316.2197 cm 0 0 m -0.327 -0.44 -1.224 -0.37 -1.749 -0.528 c @@ -3196,7 +3195,7 @@ q 1 0 0 1 334.002 316.2197 cm 0 0 l f Q -0.51 0.165 0.165 scn +0.239 0.404 0.11 scn q 1 0 0 1 334.002 316.7344 cm 0 0 m -0.315 -0.413 -1.169 -0.321 -1.671 -0.458 c @@ -3213,7 +3212,7 @@ q 1 0 0 1 334.002 316.7344 cm 0 0 l f Q -0.498 0.161 0.161 scn +0.235 0.392 0.106 scn q 1 0 0 1 334.002 317.207 cm 0 0 m -0.326 -0.417 -1.197 -0.297 -1.71 -0.424 c @@ -3230,14 +3229,14 @@ q 1 0 0 1 334.002 317.207 cm 0 0 l f Q -0.482 0.153 0.153 scn +0.227 0.38 0.106 scn q 1 0 0 1 334.002 317.647 cm 0 0 m --0.165 -0.201 -0.596 -0.119 -0.851 -0.169 c +-0.165 -0.201 -0.596 -0.119 -0.852 -0.169 c -6.63 -1.321 -11.086 -5.48 -13.33 -8.99 c -17.824 -16.019 -17.96 -22.681 -17.283 -27.032 c --15.527 -38.307 -5.35 -45.631 6.918 -44.447 c -29.057 -42.308 33.215 -18.565 18.588 -5.674 c +-15.528 -38.307 -5.35 -45.631 6.918 -44.447 c +29.057 -42.308 33.214 -18.565 18.588 -5.674 c 9.722 2.142 0.051 0.062 0 0 c 0 1.63 l 15.462 1.63 27.999 -10.907 27.999 -26.369 c @@ -3247,7 +3246,7 @@ q 1 0 0 1 334.002 317.647 cm 0 0 l f Q -0.467 0.149 0.149 scn +0.22 0.369 0.102 scn q 1 0 0 1 334.002 318.0581 cm 0 0 m -0.345 -0.419 -1.243 -0.245 -1.775 -0.35 c @@ -3264,7 +3263,7 @@ q 1 0 0 1 334.002 318.0581 cm 0 0 l f Q -0.455 0.145 0.145 scn +0.212 0.361 0.098 scn q 1 0 0 1 334.002 318.4131 cm 0 0 m -0.359 -0.424 -1.279 -0.213 -1.827 -0.305 c @@ -3281,7 +3280,7 @@ q 1 0 0 1 334.002 318.4131 cm 0 0 l f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 334.002 318.7388 cm 0 0 m -0.366 -0.422 -1.29 -0.183 -1.842 -0.262 c @@ -3296,7 +3295,7 @@ q 1 0 0 1 334.002 318.7388 cm 0 0 l f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 334.002 318.9941 cm 0 0 m -0.38 -0.425 -1.322 -0.147 -1.889 -0.211 c @@ -3311,7 +3310,7 @@ q 1 0 0 1 334.002 318.9941 cm 0 0 l f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 334.002 319.1851 cm 0 0 m -0.389 -0.421 -1.333 -0.109 -1.905 -0.156 c @@ -3326,7 +3325,7 @@ q 1 0 0 1 334.002 319.1851 cm 0 0 l f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 334.002 319.2739 cm 0 0 m -0.403 -0.423 -1.362 -0.067 -1.945 -0.096 c @@ -3340,19 +3339,18 @@ q 1 0 0 1 334.002 319.2739 cm 0 0 l f Q -0.384 0.122 0.122 scn +0.18 0.302 0.082 scn q 1 0 0 1 329.771 318.957 cm 0 0 m --22.131 -3.785 -23.922 -33.441 -7.507 -45.461 c -5.397 -54.909 25.482 -52.656 31.069 -35.688 c +-22.534 -4.552 -23.533 -35.028 -6.33 -46.26 c +6.848 -54.863 25.642 -52.17 31.069 -35.688 c 27.625 -47.252 16.911 -55.678 4.231 -55.678 c -11.231 -55.678 -23.768 -43.149 -23.768 -27.679 c -23.768 -13.386 -13.055 -1.592 0.778 0.109 c -0.778 0.109 l -0.545 0.077 0.232 0.04 0 0 c +0.544 0.077 0.232 0.04 0 0 c f Q -0.369 0.118 0.118 scn +0.173 0.29 0.078 scn q 1 0 0 1 321.978 316.4971 cm 0 0 m -16.565 -9.063 -17.347 -40.195 9.314 -48.713 c @@ -3364,21 +3362,21 @@ q 1 0 0 1 321.978 316.4971 cm 1.31 0.61 0.543 0.297 0 0 c f Q -0.667 0.216 0.216 scn -q 1 0 0 1 349.9287 293.1025 cm +0.314 0.525 0.145 scn +q 1 0 0 1 349.9282 293.1025 cm 0 0 m --1.706 2.422 -2.872 5.191 -4.807 7.466 c --5.581 8.375 -6.334 9.14 -7.046 9.739 c --7.103 9.787 -12.7 14.576 -12.706 14.928 c --12.708 15.034 -10.926 16.753 -10.74 16.824 c --10.059 17.085 -7.544 17.231 -6.876 17.165 c --5.112 16.991 -2.439 16.24 0.274 13.649 c +-1.706 2.422 -2.871 5.191 -4.806 7.466 c +-5.58 8.375 -6.333 9.14 -7.046 9.739 c +-7.103 9.787 -12.7 14.578 -12.706 14.928 c +-12.708 15.034 -10.925 16.753 -10.74 16.824 c +-10.058 17.085 -7.544 17.231 -6.875 17.165 c +-5.111 16.991 -2.438 16.24 0.275 13.649 c 3.79 10.292 4.269 6.381 4.332 5.263 c -4.607 0.361 1.816 -1.553 1.124 -1.426 c -0.588 -1.328 0.313 -0.446 0 0 c +4.608 0.361 1.816 -1.553 1.125 -1.426 c +0.589 -1.328 0.314 -0.446 0 0 c f Q -0.682 0.22 0.22 scn +0.322 0.537 0.145 scn q 1 0 0 1 350.0625 295.5957 cm 0 0 m -1.97 2.883 -3.056 4.472 -4.87 6.595 c @@ -3386,29 +3384,29 @@ q 1 0 0 1 350.0625 295.5957 cm -5.844 7.601 -6.16 7.969 -6.419 8.224 c -6.913 8.711 -7.551 9.382 -8.074 9.839 c -9.724 11.281 -9.908 11.547 -9.911 11.595 c --9.914 11.657 -8.495 13.252 -8.295 13.411 c --8.132 13.541 -7.808 13.456 -7.601 13.433 c --5.32 13.184 -2.962 12.927 -0.476 10.566 c -2.531 7.709 2.783 5.143 2.904 3.91 c +-9.914 11.655 -8.389 13.369 -8.295 13.411 c +-7.711 13.674 -6.801 13.346 -6.164 13.276 c +-2.962 12.927 -1.156 11.212 -0.476 10.566 c +2.531 7.709 2.783 5.143 2.904 3.909 c 2.938 3.565 2.929 0.875 2.709 0.41 c 2.675 0.337 0.707 -0.874 0.645 -0.861 c 0.33 -0.793 0.182 -0.267 0 0 c f Q -0.694 0.224 0.224 scn -q 1 0 0 1 349.147 299.125 cm +0.325 0.549 0.149 scn +q 1 0 0 1 349.1475 299.125 cm 0 0 m --0.736 0.236 -1.075 1.45 -1.575 2.04 c --3.148 3.894 -3.148 3.894 -3.896 4.678 c --4.212 5.008 -4.839 5.354 -4.922 5.803 c +-0.737 0.235 -1.076 1.45 -1.576 2.04 c +-3.148 3.894 -3.148 3.894 -3.897 4.678 c +-4.212 5.008 -4.84 5.354 -4.922 5.803 c -4.014 7.981 l --3.952 8.007 -1.426 7.15 0.33 5.083 c -1.632 3.552 2.398 0.755 2.281 0.574 c -1.906 -0.01 0.7 -0.197 0.037 0.011 c +-3.953 8.007 -1.427 7.15 0.33 5.083 c +1.631 3.552 2.397 0.755 2.281 0.574 c +1.906 -0.01 0.699 -0.197 0.037 0.011 c 0.026 0.014 0.011 -0.003 0 0 c f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 346.0513 316.5498 cm 0 0 m -5.275 2.417 -9.403 2.407 -12.049 2.189 c @@ -3418,7 +3416,7 @@ q 1 0 0 1 346.0513 316.5498 cm 0.673 -0.334 0.292 -0.134 0 0 c f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 342.2651 318.0342 cm 0 0 m -3.078 0.794 -4.478 1.111 -8.263 0.96 c @@ -3427,7 +3425,7 @@ q 1 0 0 1 342.2651 318.0342 cm 0.981 -0.329 0.425 -0.126 0 0 c f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 338.2329 318.957 cm 0 0 m -2.557 0.263 -2.657 0.273 -4.231 0.228 c @@ -3436,14 +3434,14 @@ q 1 0 0 1 338.2329 318.957 cm 0.724 -0.122 0.312 -0.042 0 0 c f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 334.002 319.2739 cm 0 0 m 0.335 0.003 0.669 -0.002 1.001 -0.014 c 0.701 -0.01 0.211 -0.214 0 0 c f Q -
endstream
endobj
907 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
895 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
899 0 obj
<</Subtype/Form/Length 481/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 896 0 R/Resources<</XObject<</Fm0 898 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
+
endstream
endobj
1000 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
988 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
992 0 obj
<</Subtype/Form/Length 481/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 989 0 R/Resources<</XObject<</Fm0 991 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
q 186.627 218.274 m 186.627 223.274 l @@ -3462,8 +3460,8 @@ q /Fm0 Do Q Q -
endstream
endobj
896 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
898 0 obj
<</Subtype/Form/Length 11026/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 897 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
-/CS0 cs 0.624 0.2 0.2 scn +
endstream
endobj
989 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
991 0 obj
<</Subtype/Form/Length 11020/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 990 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[180.624 223.274 192.621 211.277]>>stream
+/CS0 cs 0.294 0.494 0.133 scn 1 i /GS0 gs q 1 0 0 1 186.627 218.2744 cm @@ -3505,14 +3503,14 @@ q 1 0 0 1 186.627 219.1992 cm 0 0 l f Q -0.612 0.196 0.196 scn +0.286 0.482 0.133 scn q 1 0 0 1 186.627 219.3418 cm 0 0 m -0.03 -0.093 -0.164 -0.171 -0.185 -0.266 c -0.222 -0.434 -0.125 -0.678 -0.187 -0.838 c -0.188 -0.839 -0.237 -0.941 -0.403 -1.05 c -1.157 -1.54 -1.045 -2.159 -0.993 -2.338 c --0.813 -2.951 -0.139 -3.261 0.448 -2.999 c +-0.812 -2.951 -0.139 -3.261 0.448 -2.999 c 0.646 -2.911 0.784 -2.775 0.866 -2.694 c 1.137 -2.427 1.542 -2.629 1.829 -2.42 c 2.42 -1.988 2.555 -1.604 2.619 -1.418 c @@ -3526,7 +3524,7 @@ q 1 0 0 1 186.627 219.3418 cm 0 0 l f Q -0.596 0.192 0.192 scn +0.278 0.471 0.129 scn q 1 0 0 1 186.627 219.4824 cm 0 0 m -0.295 -0.834 -1.295 -1.352 -1.079 -2.413 c @@ -3542,7 +3540,7 @@ q 1 0 0 1 186.627 219.4824 cm 0 0 l f Q -0.58 0.188 0.188 scn +0.275 0.459 0.125 scn q 1 0 0 1 186.627 219.6211 cm 0 0 m -0.353 -0.868 -1.382 -1.434 -1.146 -2.564 c @@ -3558,7 +3556,7 @@ q 1 0 0 1 186.627 219.6211 cm 0 0 l f Q -0.569 0.18 0.18 scn +0.267 0.447 0.122 scn q 1 0 0 1 186.627 219.7588 cm 0 0 m -0.193 -0.418 -0.584 -0.692 -0.794 -1.099 c @@ -3575,7 +3573,7 @@ q 1 0 0 1 186.627 219.7588 cm 0 0 l f Q -0.553 0.176 0.176 scn +0.259 0.439 0.118 scn q 1 0 0 1 186.627 219.9111 cm 0 0 m -0.013 -0.025 -0.053 -0.04 -0.076 -0.058 c @@ -3592,7 +3590,7 @@ q 1 0 0 1 186.627 219.9111 cm 0 0 l f Q -0.541 0.173 0.173 scn +0.255 0.427 0.118 scn q 1 0 0 1 186.627 220.1025 cm 0 0 m -0.034 -0.067 -0.142 -0.105 -0.203 -0.15 c @@ -3609,7 +3607,7 @@ q 1 0 0 1 186.627 220.1025 cm 0 0 l f Q -0.525 0.169 0.169 scn +0.247 0.416 0.114 scn q 1 0 0 1 186.627 220.291 cm 0 0 m -0.037 -0.07 -0.152 -0.104 -0.217 -0.148 c @@ -3626,7 +3624,7 @@ q 1 0 0 1 186.627 220.291 cm 0 0 l f Q -0.51 0.165 0.165 scn +0.239 0.404 0.11 scn q 1 0 0 1 186.627 220.4746 cm 0 0 m -0.175 -0.316 -0.542 -0.436 -0.748 -0.721 c @@ -3643,7 +3641,7 @@ q 1 0 0 1 186.627 220.4746 cm 0 0 l f Q -0.498 0.161 0.161 scn +0.235 0.392 0.106 scn q 1 0 0 1 186.627 220.7061 cm 0 0 m -0.06 -0.132 -0.265 -0.211 -0.386 -0.291 c @@ -3660,11 +3658,11 @@ q 1 0 0 1 186.627 220.7061 cm 0 0 l f Q -0.482 0.153 0.153 scn +0.227 0.38 0.106 scn q 1 0 0 1 186.627 220.9883 cm 0 0 m -0.04 -0.083 -0.167 -0.135 -0.239 -0.193 c --0.735 -0.594 -1.129 -1.171 -1.41 -1.909 c +-0.735 -0.593 -1.129 -1.17 -1.41 -1.909 c -1.685 -2.632 -1.76 -3.635 -1.577 -4.146 c -0.866 -6.126 1.876 -5.311 1.903 -5.301 c 5.874 -3.976 5.345 -0.496 3.416 0.521 c @@ -3677,7 +3675,7 @@ q 1 0 0 1 186.627 220.9883 cm 0 0 l f Q -0.467 0.149 0.149 scn +0.22 0.369 0.102 scn q 1 0 0 1 186.627 221.2744 cm 0 0 m -0.045 -0.106 -0.21 -0.167 -0.303 -0.236 c @@ -3694,7 +3692,7 @@ q 1 0 0 1 186.627 221.2744 cm 0 0 l f Q -0.455 0.145 0.145 scn +0.212 0.361 0.098 scn q 1 0 0 1 186.627 221.6582 cm 0 0 m -0.163 -0.362 -0.542 -0.515 -0.779 -0.805 c @@ -3712,7 +3710,7 @@ q 1 0 0 1 186.627 221.6582 cm 0 0 l f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 186.627 222.082 cm 0 0 m -0.128 -0.296 -0.442 -0.404 -0.638 -0.631 c @@ -3720,7 +3718,7 @@ q 1 0 0 1 186.627 222.082 cm -1.147 -1.346 -1.619 -2.354 -1.622 -2.361 c -2.173 -3.904 -2.042 -4.642 -1.843 -5.159 c -0.967 -7.426 1.647 -7.027 2.581 -6.683 c -3.886 -6.201 6.602 -5.199 5.542 -2.518 c +3.886 -6.201 6.602 -5.198 5.542 -2.518 c 5.833 -3.224 5.994 -3.998 5.994 -4.811 c 5.994 -8.123 3.312 -10.805 0 -10.805 c -3.312 -10.805 -6.003 -8.123 -6.003 -4.811 c @@ -3728,7 +3726,7 @@ q 1 0 0 1 186.627 222.082 cm 0 0 l f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 186.627 222.5469 cm 0 0 m -0.037 -0.078 -0.154 -0.129 -0.22 -0.185 c @@ -3743,7 +3741,7 @@ q 1 0 0 1 186.627 222.5469 cm 0 0 l f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 186.627 222.9893 cm 0 0 m -0.038 -0.066 -0.155 -0.09 -0.221 -0.129 c @@ -3758,21 +3756,21 @@ q 1 0 0 1 186.627 222.9893 cm 0 0 l f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 186.627 223.2627 cm 0 0 m -0.043 -0.052 -0.154 -0.029 -0.221 -0.042 c -0.696 -0.133 -1.347 -0.689 -1.732 -1.731 c -2.576 -4.018 -2.459 -5.555 -2.314 -6.268 c -1.868 -8.458 0.839 -8.7 1.752 -8.612 c -4.208 -8.376 5.691 -8.233 5.942 -6.786 c +4.209 -8.376 5.692 -8.233 5.942 -6.786 c 5.553 -9.723 3.042 -11.985 0 -11.985 c -3.312 -11.985 -6.003 -9.304 -6.003 -5.991 c -6.003 -2.67 -3.312 0.012 0 0.012 c 0 0 l f Q -0.384 0.122 0.122 scn +0.18 0.302 0.082 scn q 1 0 0 1 185.7217 223.1973 cm 0 0 m -1.735 -0.588 -1.748 -4.507 -1.748 -4.547 c @@ -3784,7 +3782,7 @@ q 1 0 0 1 185.7217 223.1973 cm 0.115 0.022 0.049 0.014 0 0 c f Q -0.369 0.118 0.118 scn +0.173 0.29 0.078 scn q 1 0 0 1 184.3926 222.7744 cm 0 0 m -1.065 -0.939 -0.813 -4.875 -0.541 -5.608 c @@ -3798,10 +3796,10 @@ q 1 0 0 1 184.3926 222.7744 cm 0.161 0.103 0.062 0.054 0 0 c f Q -0.639 0.204 0.204 scn +0.302 0.506 0.137 scn q 1 0 0 1 188.1982 217.4531 cm 0 0 m --0.089 0.065 -0.089 0.065 -0.518 0.595 c +-0.089 0.064 -0.089 0.064 -0.518 0.595 c -0.66 0.77 -0.832 0.916 -0.969 1.096 c -1.153 1.336 -1.228 1.588 -1.225 1.6 c -1.219 1.619 -0.023 2.449 0.592 1.369 c @@ -3809,7 +3807,7 @@ q 1 0 0 1 188.1982 217.4531 cm 0.153 -0.145 0.065 -0.047 0 0 c f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 189.1953 222.666 cm 0 0 m -1.292 0.462 -2.253 -0.325 -2.568 -0.584 c @@ -3819,7 +3817,7 @@ q 1 0 0 1 189.1953 222.666 cm 0.215 -0.093 0.095 -0.034 0 0 c f Q -0.655 0.208 0.208 scn +0.306 0.518 0.141 scn q 1 0 0 1 188.2393 217.709 cm 0 0 m -0.336 0.357 l @@ -3830,7 +3828,7 @@ q 1 0 0 1 188.2393 217.709 cm 0.105 -0.132 0.047 -0.039 0 0 c f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 188.3931 222.9971 cm 0 0 m -0.649 0.121 -1.161 -0.01 -1.766 -0.45 c @@ -3840,7 +3838,7 @@ q 1 0 0 1 188.3931 222.9971 cm 0.019 -0.004 0.008 -0.001 0 0 c f Q -0.667 0.216 0.216 scn +0.314 0.525 0.145 scn q 1 0 0 1 188.2437 217.9775 cm 0 0 m -0.004 0.005 -0.532 0.572 -0.709 0.863 c @@ -3851,7 +3849,7 @@ q 1 0 0 1 188.2437 217.9775 cm 0.049 -0.041 0.02 -0.02 0 0 c f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 187.5317 223.1973 cm 0 0 m -0.313 -0.006 -0.486 -0.009 -0.905 -0.208 c @@ -3860,7 +3858,7 @@ q 1 0 0 1 187.5317 223.1973 cm 0.157 -0.021 0.068 -0.004 0 0 c f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 186.627 223.2627 cm 0 0 m 0 0.012 l @@ -3868,7 +3866,7 @@ q 1 0 0 1 186.627 223.2627 cm 0.15 0.006 0.046 -0.045 0 0 c f Q -
endstream
endobj
897 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
886 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
892 0 obj
<</Subtype/Form/Length 450/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 887 0 R/Resources<</XObject<</Fm0 891 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[155.001 324.272 210.999 268.274]>>stream
+
endstream
endobj
990 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
979 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
985 0 obj
<</Subtype/Form/Length 450/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 980 0 R/Resources<</XObject<</Fm0 984 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[155.001 324.272 210.999 268.274]>>stream
q 183 308.272 m 183 324.272 l @@ -3887,8 +3885,8 @@ q /Fm0 Do Q Q -
endstream
endobj
887 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
891 0 obj
<</Subtype/Form/Length 13396/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 888 0 R/Resources<</ColorSpace<</CS0 889 0 R>>/ExtGState<</GS0 885 0 R>>>>/BBox[155.001 324.272 210.999 268.274]>>stream
-/CS0 cs 0.655 0.208 0.208 scn +
endstream
endobj
980 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
984 0 obj
<</Subtype/Form/Length 13394/Matrix[1.0 0.0 0.0 1.0 0.0 0.0]/Group 981 0 R/Resources<</ColorSpace<</CS0 982 0 R>>/ExtGState<</GS0 978 0 R>>>>/BBox[155.001 324.272 210.999 268.274]>>stream
+/CS0 cs 0.306 0.518 0.141 scn 1 i /GS0 gs q 1 0 0 1 183 308.2725 cm @@ -3914,7 +3912,7 @@ q 1 0 0 1 183 313.436 cm 6.607 -29.172 12.01 -23.77 11.999 -17.163 c 12.01 -10.555 6.607 -5.153 0 -5.164 c 0 -0.468 l -0.316 -0.694 0.738 -0.996 1.055 -1.223 c +0.316 -0.694 0.738 -0.997 1.055 -1.223 c 3.817 -3.661 7.459 -4.869 10 -7.617 c 12.018 -9.8 13.458 -12.461 14.279 -15.528 c 15.091 -18.562 16.901 -19.343 16.918 -19.345 c @@ -3928,7 +3926,7 @@ q 1 0 0 1 183 313.436 cm 0 0 l f Q -0.639 0.204 0.204 scn +0.302 0.506 0.137 scn q 1 0 0 1 183 315.2832 cm 0 0 m -0.296 -0.712 -1.487 -1.168 -1.735 -1.898 c @@ -3941,7 +3939,7 @@ q 1 0 0 1 183 315.2832 cm 12.01 -12.402 6.607 -7 0 -7.011 c 0 -5.167 l 0.338 -5.201 0.788 -5.245 1.126 -5.278 c -2.249 -5.476 12.141 -7.556 13.761 -19.537 c +2.249 -5.476 12.142 -7.556 13.761 -19.537 c 14.172 -22.51 l 14.637 -23.085 15.725 -23.501 16.46 -23.424 c 20.584 -22.987 26.414 -9.567 15.896 -1.312 c @@ -3954,7 +3952,7 @@ q 1 0 0 1 183 315.2832 cm 0 0 l f Q -0.624 0.2 0.2 scn +0.294 0.494 0.133 scn q 1 0 0 1 183 316.4023 cm 0 0 m -0.627 -1.109 -1.866 -1.525 -2.708 -2.391 c @@ -3969,8 +3967,8 @@ q 1 0 0 1 183 316.4023 cm 0.312 -7.428 0.727 -7.455 1.039 -7.475 c 5.586 -8.118 13.155 -12.017 12.674 -22.548 c 12.56 -25.061 12.663 -26.477 12.982 -26.758 c -14.31 -27.928 23.355 -23.683 22.629 -14.042 c -21.27 4.006 1.142 2.02 0 0 c +14.311 -27.929 23.356 -23.684 22.629 -14.042 c +21.269 4.004 1.142 2.019 0 0 c 0 7.87 l 15.462 7.87 27.999 -4.667 27.999 -20.129 c 27.999 -35.591 15.462 -48.128 0 -48.128 c @@ -3979,7 +3977,7 @@ q 1 0 0 1 183 316.4023 cm 0 0 l f Q -0.612 0.196 0.196 scn +0.286 0.482 0.133 scn q 1 0 0 1 183 317.3276 cm 0 0 m -0.223 -0.377 -0.896 -0.494 -1.279 -0.706 c @@ -3989,7 +3987,7 @@ q 1 0 0 1 183 317.3276 cm -11.368 -29.204 -4.441 -35.04 3.701 -32.832 c 16.504 -28.451 l 19.64 -26.383 21.524 -23.889 22.614 -20.364 c -24.61 -13.908 21.812 -4.741 13.674 -0.575 c +24.61 -13.908 21.812 -4.74 13.674 -0.575 c 6.26 3.219 0.029 0.049 0 0 c 0 6.945 l 15.462 6.945 27.999 -5.592 27.999 -21.054 c @@ -3999,14 +3997,14 @@ q 1 0 0 1 183 317.3276 cm 0 0 l f Q -0.596 0.192 0.192 scn +0.278 0.471 0.129 scn q 1 0 0 1 183 318.1274 cm 0 0 m -0.174 -0.267 -0.682 -0.3 -0.974 -0.428 c -3.27 -1.438 -6.363 -4.313 -7.593 -6.58 c -13.39 -17.262 -13 -20.653 -12.686 -23.377 c -12.045 -28.943 -6.307 -36.332 3.975 -34.516 c -34.373 -29.149 23.201 -7.033 15.417 -1.844 c +34.372 -29.149 23.201 -7.033 15.417 -1.844 c 7.621 3.352 0.038 0.059 0 0 c 0 6.145 l 15.462 6.145 27.999 -6.392 27.999 -21.854 c @@ -4016,7 +4014,7 @@ q 1 0 0 1 183 318.1274 cm 0 0 l f Q -0.58 0.188 0.188 scn +0.275 0.459 0.125 scn q 1 0 0 1 183 318.8281 cm 0 0 m -0.26 -0.393 -1.01 -0.429 -1.443 -0.612 c @@ -4033,7 +4031,7 @@ q 1 0 0 1 183 318.8281 cm 0 0 l f Q -0.569 0.18 0.18 scn +0.267 0.447 0.122 scn q 1 0 0 1 183 319.4941 cm 0 0 m -0.27 -0.397 -1.042 -0.411 -1.488 -0.586 c @@ -4050,14 +4048,14 @@ q 1 0 0 1 183 319.4941 cm 0 0 l f Q -0.553 0.176 0.176 scn +0.259 0.439 0.118 scn q 1 0 0 1 183 320.105 cm 0 0 m -0.285 -0.403 -1.085 -0.384 -1.55 -0.549 c -2.14 -0.758 -7.426 -2.783 -11.14 -9.4 c -12.536 -11.888 -15.643 -18.441 -14.343 -25.552 c -13.349 -30.994 -7.597 -40.716 7.05 -38.567 c -28.063 -35.482 30.901 -13.127 16.17 -2.838 c +28.064 -35.482 30.902 -13.127 16.17 -2.838 c 7.979 2.883 0.04 0.057 0 0 c 0 4.167 l 15.462 4.167 27.999 -8.37 27.999 -23.832 c @@ -4067,7 +4065,7 @@ q 1 0 0 1 183 320.105 cm 0 0 l f Q -0.541 0.173 0.173 scn +0.255 0.427 0.118 scn q 1 0 0 1 183 320.6777 cm 0 0 m -0.294 -0.407 -1.113 -0.365 -1.59 -0.521 c @@ -4084,7 +4082,7 @@ q 1 0 0 1 183 320.6777 cm 0 0 l f Q -0.525 0.169 0.169 scn +0.247 0.416 0.114 scn q 1 0 0 1 183 321.2148 cm 0 0 m -0.327 -0.44 -1.224 -0.37 -1.749 -0.528 c @@ -4101,7 +4099,7 @@ q 1 0 0 1 183 321.2148 cm 0 0 l f Q -0.51 0.165 0.165 scn +0.239 0.404 0.11 scn q 1 0 0 1 183 321.7295 cm 0 0 m -0.315 -0.413 -1.169 -0.321 -1.671 -0.458 c @@ -4118,7 +4116,7 @@ q 1 0 0 1 183 321.7295 cm 0 0 l f Q -0.498 0.161 0.161 scn +0.235 0.392 0.106 scn q 1 0 0 1 183 322.2021 cm 0 0 m -0.326 -0.417 -1.197 -0.297 -1.71 -0.424 c @@ -4135,7 +4133,7 @@ q 1 0 0 1 183 322.2021 cm 0 0 l f Q -0.482 0.153 0.153 scn +0.227 0.38 0.106 scn q 1 0 0 1 183 322.6421 cm 0 0 m -0.165 -0.201 -0.596 -0.119 -0.851 -0.169 c @@ -4152,7 +4150,7 @@ q 1 0 0 1 183 322.6421 cm 0 0 l f Q -0.467 0.149 0.149 scn +0.22 0.369 0.102 scn q 1 0 0 1 183 323.0532 cm 0 0 m -0.345 -0.419 -1.243 -0.245 -1.775 -0.35 c @@ -4169,7 +4167,7 @@ q 1 0 0 1 183 323.0532 cm 0 0 l f Q -0.455 0.145 0.145 scn +0.212 0.361 0.098 scn q 1 0 0 1 183 323.4082 cm 0 0 m -0.359 -0.424 -1.279 -0.213 -1.827 -0.305 c @@ -4186,7 +4184,7 @@ q 1 0 0 1 183 323.4082 cm 0 0 l f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 183 323.7339 cm 0 0 m -0.366 -0.422 -1.29 -0.183 -1.842 -0.262 c @@ -4201,7 +4199,7 @@ q 1 0 0 1 183 323.7339 cm 0 0 l f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 183 323.9893 cm 0 0 m -0.38 -0.425 -1.322 -0.147 -1.889 -0.211 c @@ -4216,7 +4214,7 @@ q 1 0 0 1 183 323.9893 cm 0 0 l f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 183 324.1802 cm 0 0 m -0.389 -0.421 -1.333 -0.109 -1.905 -0.156 c @@ -4231,7 +4229,7 @@ q 1 0 0 1 183 324.1802 cm 0 0 l f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 183 324.269 cm 0 0 m -0.403 -0.423 -1.362 -0.067 -1.945 -0.096 c @@ -4245,18 +4243,18 @@ q 1 0 0 1 183 324.269 cm 0 0 l f Q -0.384 0.122 0.122 scn +0.18 0.302 0.082 scn q 1 0 0 1 178.769 323.9521 cm 0 0 m --22.528 -4.551 -23.527 -35.025 -6.329 -46.258 c -6.847 -54.863 25.641 -52.169 31.069 -35.683 c +-22.529 -4.551 -23.528 -35.026 -6.329 -46.258 c +6.848 -54.862 25.641 -52.169 31.069 -35.683 c 27.625 -47.245 16.912 -55.678 4.231 -55.678 c -11.231 -55.678 -23.768 -43.141 -23.768 -27.679 c -23.768 -13.386 -13.055 -1.592 0.778 0.109 c 0.544 0.077 0.232 0.04 0 0 c f Q -0.369 0.118 0.118 scn +0.173 0.29 0.078 scn q 1 0 0 1 170.9761 321.4922 cm 0 0 m -16.563 -9.063 -17.344 -40.194 9.316 -48.713 c @@ -4268,51 +4266,51 @@ q 1 0 0 1 170.9761 321.4922 cm 1.31 0.61 0.543 0.297 0 0 c f Q -0.667 0.216 0.216 scn +0.314 0.525 0.145 scn q 1 0 0 1 198.9263 298.0972 cm 0 0 m -1.706 2.422 -2.871 5.192 -4.806 7.466 c --5.581 8.375 -6.334 9.141 -7.046 9.74 c --7.103 9.788 -12.699 14.577 -12.706 14.929 c +-5.58 8.375 -6.333 9.14 -7.046 9.74 c +-7.103 9.788 -12.7 14.579 -12.706 14.929 c -12.708 15.035 -10.925 16.753 -10.74 16.825 c -10.058 17.086 -7.544 17.231 -6.875 17.166 c -5.111 16.992 -2.438 16.241 0.275 13.649 c 3.79 10.293 4.269 6.382 4.332 5.263 c -4.608 0.362 1.816 -1.552 1.125 -1.426 c +4.608 0.362 1.816 -1.553 1.125 -1.426 c 0.589 -1.328 0.314 -0.445 0 0 c f Q -0.682 0.22 0.22 scn +0.322 0.537 0.145 scn q 1 0 0 1 199.0605 300.5908 cm 0 0 m --1.971 2.884 -3.056 4.472 -4.87 6.595 c +-1.97 2.883 -3.055 4.471 -4.87 6.595 c -5.072 6.832 -5.375 7.116 -5.591 7.34 c -5.844 7.601 -6.16 7.969 -6.419 8.224 c -6.913 8.711 -7.551 9.382 -8.074 9.839 c -9.724 11.281 -9.908 11.547 -9.911 11.595 c --9.914 11.657 -8.495 13.252 -8.295 13.411 c --8.132 13.541 -7.808 13.456 -7.601 13.433 c --5.32 13.184 -2.962 12.927 -0.476 10.566 c -2.531 7.709 2.783 5.143 2.904 3.91 c +-9.914 11.655 -8.389 13.369 -8.295 13.411 c +-7.711 13.674 -6.801 13.346 -6.164 13.276 c +-2.962 12.927 -1.156 11.212 -0.476 10.566 c +2.531 7.709 2.783 5.143 2.904 3.909 c 2.938 3.565 2.929 0.875 2.709 0.41 c 2.675 0.337 0.707 -0.875 0.645 -0.861 c 0.33 -0.793 0.182 -0.267 0 0 c f Q -0.694 0.224 0.224 scn -q 1 0 0 1 198.145 304.1201 cm +0.325 0.549 0.149 scn +q 1 0 0 1 198.1455 304.1201 cm 0 0 m --0.736 0.235 -1.075 1.45 -1.575 2.04 c --3.148 3.894 -3.148 3.894 -3.896 4.678 c --4.212 5.008 -4.839 5.354 -4.922 5.803 c +-0.737 0.235 -1.076 1.45 -1.576 2.04 c +-3.148 3.894 -3.148 3.894 -3.897 4.678 c +-4.212 5.008 -4.84 5.354 -4.922 5.803 c -4.014 7.981 l --3.952 8.007 -1.426 7.15 0.33 5.083 c -1.632 3.552 2.398 0.755 2.281 0.574 c -1.906 -0.01 0.7 -0.197 0.037 0.011 c +-3.953 8.007 -1.427 7.15 0.33 5.083 c +1.631 3.552 2.397 0.755 2.281 0.574 c +1.906 -0.01 0.699 -0.197 0.037 0.011 c 0.026 0.014 0.011 -0.003 0 0 c f Q -0.439 0.141 0.141 scn +0.208 0.349 0.094 scn q 1 0 0 1 195.0493 321.5449 cm 0 0 m -5.275 2.417 -9.403 2.407 -12.049 2.189 c @@ -4322,7 +4320,7 @@ q 1 0 0 1 195.0493 321.5449 cm 0.673 -0.334 0.292 -0.134 0 0 c f Q -0.427 0.137 0.137 scn +0.2 0.337 0.09 scn q 1 0 0 1 191.2632 323.0293 cm 0 0 m -3.078 0.794 -4.478 1.111 -8.263 0.96 c @@ -4331,7 +4329,7 @@ q 1 0 0 1 191.2632 323.0293 cm 0.981 -0.329 0.425 -0.126 0 0 c f Q -0.412 0.133 0.133 scn +0.192 0.325 0.09 scn q 1 0 0 1 187.231 323.9521 cm 0 0 m -2.557 0.263 -2.657 0.273 -4.231 0.228 c @@ -4340,105 +4338,90 @@ q 1 0 0 1 187.231 323.9521 cm 0.724 -0.122 0.312 -0.042 0 0 c f Q -0.396 0.125 0.125 scn +0.188 0.314 0.086 scn q 1 0 0 1 183 324.269 cm 0 0 m 0.335 0.003 0.669 -0.002 1.001 -0.014 c 0.701 -0.01 0.211 -0.214 0 0 c f Q -
endstream
endobj
888 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
958 0 obj
[/Indexed/DeviceRGB 255 959 0 R]
endobj
959 0 obj
<</Length 428/Filter[/ASCII85Decode/FlateDecode]>>stream
+
endstream
endobj
981 0 obj
<</I true/K false/S/Transparency/Type/Group>>
endobj
1051 0 obj
[/Indexed/DeviceRGB 255 1052 0 R]
endobj
1052 0 obj
<</Length 428/Filter[/ASCII85Decode/FlateDecode]>>stream
8;X]O>EqN@%''O_@%e@?J;%+8(9e>X=MR6S?i^YgA3=].HDXF.R$lIL@"pJ+EP(%0 b]6ajmNZn*!='OQZeQ^Y*,=]?C.B+\Ulg9dhD*"iC[;*=3`oP1[!S^)?1)IZ4dup` E1r!/,*0[*9.aFIR2&b-C#s<Xl5FH@[<=!#6V)uDBXnIr.F>oRZ7Dl%MLY\.?d>Mn 6%Q2oYfNRF$$+ON<+]RUJmC0I<jlL.oXisZ;SYU[/7#<&37rclQKqeJe#,UF7Rgb1 VNWFKf>nDZ4OTs0S!saG>GGKUlQ*Q?45:CI&4J'_2j<etJICj7e7nPMb=O6S7UOH< PO7r\I.Hu&e0d&E<.')fERr/l+*W,)q^D*ai5<uuLX.7g/>$XKrcYp0n+Xl_nU*O( -l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~>
endstream
endobj
869 0 obj
<</Private 870 0 R/LastModified(D:20091124113554+01'00')>>
endobj
870 0 obj
<</CreatorVersion 13/RoundtripVersion 13/ContainerVersion 11/AIMetaData 871 0 R/AIPrivateData1 872 0 R/AIPrivateData2 873 0 R/AIPrivateData3 874 0 R/AIPrivateData4 875 0 R/NumBlock 4/RoundtripStreamType 1>>
endobj
871 0 obj
<</Length 964>>stream
-%!PS-Adobe-3.0
%%Creator: Adobe Illustrator(R) 13.0
%%AI8_CreatorVersion: 13.0.2
%%For: (Gilles Dubochet) ()
%%Title: (type_tags.ai)
%%CreationDate: 11/24/09 11:35 AM
%%BoundingBox: -227 -99 143 234
%%HiResBoundingBox: -226.5 -98.5 142.5908 233.748
%%DocumentProcessColors: Cyan Magenta Yellow Black
%AI5_FileFormat 9.0
%AI12_BuildNumber: 434
%AI3_ColorUsage: Color
%AI7_ImageSettings: 0
%%RGBProcessColor: 0 0 0 ([Registration])
%AI3_Cropmarks: -59.5 -62.5 -46.5 -49.5
%AI3_TemplateBox: 40.5 29.5 40.5 29.5
%AI3_TileBox: -239.5552 -349.6377 319.4453 433.3623
%AI3_DocumentPreview: None
%AI5_ArtSize: 841.8898 595.2756
%AI5_RulerUnits: 6
%AI9_ColorModel: 1
%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0
%AI5_TargetResolution: 800
%AI5_NumLayers: 5
%AI9_OpenToView: -472.5 308.5 2 1589 965 18 0 0 50 75 0 0 1 1 1 0 1
%AI5_OpenViewLayers: 77777
%%PageOrigin:-399 227
%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9
%AI9_Flatten: 1
%AI12_CMSettings: 00.MS
%%EndComments
endstream
endobj
872 0 obj
<</Length 7432>>stream
-%%BoundingBox: -227 -63 143 234
%%HiResBoundingBox: -226.5 -62.001 142.5908 233.748
%AI7_Thumbnail: 128 104 8
%%BeginData: 7284 Hex Bytes
%0000330000660000990000CC0033000033330033660033990033CC0033FF
%0066000066330066660066990066CC0066FF009900009933009966009999
%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
%6666006666336666666666996666CC6666FF669900669933669966669999
%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
%9933009933339933669933999933CC9933FF996600996633996666996699
%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
%000011111111220000002200000022222222440000004400000044444444
%550000005500000055555555770000007700000077777777880000008800
%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
%524C45FD0AFFA8285353FD7CFF28A8FF5353FD7AFFA92EA8FF537EFD7BFF
%53282828A8FD27FF2E2828A8FD51FF847EA9FD27FF5953AFA928FD7BFF53
%52FFA82FA8FD7AFF847E7E2E7DFD7CFFA87E7DFDFCFFFDFCFFFD31FFA9FF
%FFFFA9FFFFFFA9FD76FFA9FFA9AFA9FFA9AFA9FFA9AFA9FD1AFFA87E537E
%A8FD2BFFA8A9A8AFA8FD23FFA9A9A8A9A9A9A8A9A9A9A8A9A8AFFD17FFA9
%7E28292829282F2F7EA8FD26FFA8532F2829282F53A8FD22FFA9A9A9AFA9
%A9A9AFA9A9A9AFA9FD16FF7E2E012806FD0529062F7EFD23FFA859062806
%FD0529065384FD1FFFA8A9A8A9A8A9A8A9A8A9A8A9A8FD16FF7E28282F29
%53292F29542F54292FA8FD21FFA85306292853295329542F54295384FD1F
%FFA9AFA9FFA9AFA9FFA9AFA9AFA9FD09FFA8A87DFF7DFFA8FD04FFA82801
%292829295453542930292F292FA8FD1FFFA95300290629292F2929293029
%2F292FA8FD1DFFA8A9A9A9A8A9A9A9A8A9A9A9A8FD04FFA87DFF7DFFA852
%275227277D27A8FFFFFF530629282F5AA9FD04FF7E5429542953FD1FFF7E
%01282FA984A82F7EA8A9A87E29542953FD1EFFA9AFA9A9A9AFA9A9A9AFA9
%A9A9FFFFFF52FF5227527D7D52527D527DF8A8FFFFA8002828297EFD07FF
%7E30292F06A8FD1DFFA905280153FFFFFFA9FD05FF7E292F0684FD1CFFA8
%A9A8A9A8A9A8A9A8A9A8A9A8AFFFFFA8527D7D27A8FD05527DFF7DA8FFFF
%5328282953FD04FFA9FD04FF7E30292F53FD1DFF7D28282953FD0AFF5A29
%2F53FD1DFFA9FFA9AFA9FFA9AFA9FFA9AFA9FD09FFA8FFA8FD06FFA82E00
%2828A9FFFFFF7E067EFD04FF292F2953A8FD1CFF5300280653FD04FF7E7E
%A9FFFFFF7E29292FA8FD1BFFA9A9A8A9A9A9A8A9A9A9A8A9A8FD14FF2828
%0653FD04FF2F2F29FD04FF54292F28FD1DFF2828282953FFFFFFA829077E
%FFFFFFA9292F28FD1DFFA9A9A9AFA9A9A9AFA9A9A9AFA9FD12FFA8280028
%28FFFFFFA82F292FA8FFFFFF292F2929A8FD1BFF842800280153FFFFFFA8
%29292FFFFFFFA82F2929A8FD1BFFA8A9A8A9A8A9A8A9A8A9A8A9A8FD14FF
%28282853FD04FF53292FFD04FF54292F28FD1DFF5328282953FFFFFFA82F
%297EFFFFFFA9292F28FD1DFFA9FFA9FFA9FFA9FFA9FFA9FD15FF53002801
%A8FFFFFFA92984FFFFFFA8292F0653A8FD1CFF7D00280159FD04FF532FA8
%FFFFFF7E292829A8FD1BFFFD04532E5353532E535353287EFD13FF7D2828
%282FFD09FF532928297DFD1DFF7E28282853FD0AFF54282953FD1CFF5300
%280028002800280028000053FD13FFA92828062853FD07FF5329282828FD
%1FFF28280053FD09FF7E062906A8FD1CFF28000028002800280028002800
%53FD14FFA806282828297EA8AFA87E2929282906A8FD1FFFA8062853FFFF
%FFA8A9FFFFA87E2829067DFD1DFF5300280628012806280128062853FD15
%FF7D0028052801280629062828280159FD21FF7D0053FFFFFF7E012F2828
%0129012FA8FD1DFF2E01002800280028002800280053FD04FFA8FFFFFFA8
%FFFFA8A8FFA8FD07FF7E062806FD0728067EFD23FF7D53FFFFFF7E280628
%28280053A8FD1EFF5300280028062800280628002853FFFFFF7D52FF7D52
%A852A852A8527DFF7D7DFD04FFA9A8282800060006002828A8FD24FFA8A8
%A9FFFF7E00280028287DA8FD1FFF2806002800280028002800280053FFFF
%FFA852A8277DFF7D527DA8527D7D27A8FD07FFA87E537D537EA8FD2BFFA8
%28287D7DFD22FF5300280128062801280628012853FFFFFFA87DA852527D
%52FF527DA852527D27FD3AFFA8FD25FF2806002800280028002800280059
%FD04FF7DFFFFA8527D7D7DA87D7DFF7DA8FD60FF53002806280028062800
%28060653FD72FF2800002800280028002800280053FD72FF530028062801
%2806280128062853FD72FF2800000600010006000100060053FD72FF7E2E
%53525353535253535352537DFDFCFFFDFCFFFDFCFFFDFCFFFDFCFFFDFCFF
%FDFCFFFDFCFFFDFCFFFDFCFFFD9AFFCACAA8CAA8CAA8CAA8CAA8CAA8FD74
%FFFD0DCAFD18FFA8A8767676A1A8FD53FFCACAA8CAA8CAA8CAA8CAA8CAA8
%CAFD17FF7D6F446F446F456F70A8FD52FFFD0DCAFD15FFA84B45446F446F
%6F6F696F4476A8FD29FFA8A176766F7676A8FD1EFFA8CAA8CAA8CAA8CAA8
%CAA8CAA1FD05FFA8FFA8FD0DFFCA4B4B4BFD066F936F6F689AFD28FF766F
%446F456F446F6F76A8FD1DFFCACACAFFCACACAFFFD05CAFFFFFFFD047DFD
%0DFF4B44446F4B6F6F9A6F9A6F936F6F449AFD25FFA84B4B446F44FD056F
%686F7DFD1BFFA8CAA8CAA8CAA8CAA8CAA8CAA8FD04FFFD04527D7D7D2752
%52A85252A8FFFF764B4B6F456FA1CAFD04FF6F936F6F45A8FD24FF4B4B45
%6F6FA1A1FF766F6F946F6FA1FD1BFFA8FD0CCAFFFFFF52A8522752FF5252
%27A8A82752FFFFA84B204B446FA1FD06FF6F6F936F6F6FFD23FF4C44444B
%44CAFFFFFF9A68FD056FA1FD19FFA8CAA8CAA8CAA8CAA8CAA8CAA8CAFFFF
%FFA8A8FFA8A87DFF7DA852A87D7DFFFFA1444B4B6FA1FD05FFCACA6F946F
%936F6FCAFD21FFA14B4B6F4B70A8FFFFFF76936F9A6F936F9AFD1AFFCAFF
%CACACAFFCACACAFFCACACAFD12FF7644444B4BFD04FFA1FD056F936F6F44
%A8FD21FF76204B446FA8FD06FF9A68936F6F44A8FD18FFCACAA8CAA8CAA8
%CAA8CAA8CAA8CAFD12FF7D204B449AFD04FFFD076F936F6F76FD21FF4B4B
%446F6FFD07FF9A6F6F946F6F76FD19FFFD0DCAFD12FF7644444576FFFFFF
%A16F6F6F69FD056F4476FD20FFA84B204B446FA1FD04FFCAA19A696F6F6F
%4476FD18FFCAFFCACACAFFCACACAFFCACACAFD13FF7D204B4476FD04FF6F
%6F68FD046F946F6FA1FD20FFCA444B4B6F6F6FA8FFFFFFFD056F946F6F76
%FD18FFA176A176A176A176A176A17676A1FD12FF7D4B444B44FD05FF9AA1
%766F6F6F4B6F4BCAFD20FFA14B444B446F6FCAFFFFFF7644FD056F4476FD
%18FF4BFD0420442020204420202076FD13FFFD044B76FD07FFFD046F4476
%FD22FF444B4B6F4B6FA8FFFFFFFD086F76FD18FF76204B444B204B444B20
%4B444476FD13FF7D204B444B76FD06FF76446F444B7DFD21FFA84B204B44
%4B44CAFFFFFF9A44FD056F44A1FD18FF4B20204B2044204B2044204B2076
%FD13FFCA76204B444B6FA1A1CAA1A16F6F4B4B76FD23FF76FD044B6FA8FF
%FFFFCACAFD046F456FCAFD18FF76204B444B204B444B204B444476FD07FF
%A8FD0CFFA14B204B204B444B444B444B44444BFD24FFCA4B4B444B44A1FD
%05FF76446F454476FD19FF4B20204B2044204B2044204B2076FFFFFF7D7D
%FF52A87D52FF7D52A852FF527DFFFFFFA876204B444B4B4B444B444B76FD
%26FFA8204B4B4B45CAFD04FF6F6F4B4B76FD1AFF76204B204B444B204B44
%4B204476FFFFFF52A87D52A8FF52A8277DA87DA85252FD04FFA87D4B4B20
%44204420767DFD28FF7D2045204B44767DA1764B44444BCAFD1AFF4B4420
%44204B2044204B20442076FFFFFFA8275252527D52A85227FF52A85227FD
%07FFA1A1767D76FD2CFFA84B4B204B4444204B444B76FD1CFF76204B204B
%444B204B444B204476FFFFFF7DA8FF7DA8FF7DFFFFA8FFA8FFFFA8FD3AFF
%764B204B204B4476A1FD1DFF4B442044204B2044204B20442076FD4DFFCA
%FFA8A8A8FD20FF76204B444B204B444B204B444476FD72FF4B20204B2044
%204B2044204B2076FD72FF76204B444B204B444B204B444476FD72FF5244
%204B444B204B444B204B2076FDFCFFFDFCFFFDFCFFFDFCFFFDFCFFFD2FFF
%A86F4BA8FD7BFFA84B76A144A8FD2EFFCAFD4CFF4BFFA14476FD2CFFCA6F
%6FA1FD4BFF4B4C7720A8FD2CFF207DA144A1FD4AFFA8A176CAFD2DFF4BA8
%CA44A1FD7BFF4476A144A1FD7BFFCA4B76A8FD7EFFCAFD42FFFF
%%EndData
endstream
endobj
873 0 obj
<</Length 65536>>stream
-%AI12_CompressedDataxœì½ëŽ$Éu ùñ¹?À²ÒÍïÎ],WmÏŠj‚MÎhV4’UÙÍUU¶ê"‰óôkçò;YÝjŠäJXÁf•Y„{D¸™vŽ¹}áõ¿ýò«Ÿ]½zúíãϦÃÅé¯þêæýãÃǧ÷?¿ÐÚ‹/Þ¼ùôáã{©úɯ~zQê«ê‹®¾Ø¿öþ×Ç÷^?½û¹>õb¬OÞËÖ?ùë×oÞ<~¸¸ýôÛ§—¿{üøÓ‹Ÿü´>÷ë×ß<Ög?þþ»Ç¯?>|ûáÅÃëŸò®u7·ëÓ¥\ŽóåpÔü|Z.®~Q_qýôéÝ«×ï¾½~ú—Ÿ_ül·‹Ÿõót1Ns}þÿ~ý«Çç/Z_,õe{ýÿ2/–cØ뫧ۼ×-nŸ^~zûøîã/ß?½|üðáæéÍÓû?¿¸ùýû‹_<|[Ÿy¸øïoÞ<ýóÅõ›‡—ÿ6¹z÷±¾ô¿ÿúáUÝþg¿züöÓ›‡÷é%ûøøêñÕ÷¿ðê‹åëû×oëÑzûðñâãzõE¿¾þôúÍ«¿ýôö·õ0ÎòÝ®¾˜¾ÖO÷›õcÕO(ÿ–êíë/ÞÖš¯?~¬_º¾´Í¯þú:£Z©Ÿü}}ë×Ú”õ8ÿŸúnß?}÷öáý?Ôm¶r´ÖQþÖ#7×{ݯß~÷¦¶Øy¨OŽòêø—¿ª~?ôS\–ñâgSÝÉ:mÛÅTŽó¼Lõ;M/¦uœl›Ö -ÿôúñŸ~ñ·Oïíð\½ÿøÕëÿU¿ð>—û~ì˱¼·eµçõéÍãûß¼{-GX«;L¿xzõø¦ö¢ØËý›=:ú(íÿí¿~xÿíãÇÚ{žÞ|ú¨]yü©ÚóðûG鋽Á—ß=¾ûõÓÕOú³y“ƒ5
ÒÁÆ‹²ìÇű־¶ë[,ÃŶø›}CÿD²Ù»ÞäOm¹_Ö¶üòýëo_¿ûùϦڹk'·Vþë÷¯_µFÞÆ‹ÝþO¿Ä‹=ýwðŸ}ÚúÅ?~||çÇ¢v®›_¤Î2¼øÅWõmïÞ½ºyz+mðAγÚKÞÕôæé[{.þÏÔÍ?}wúûÓt\þ㧧ê¾Þ<Ö¯}ùíû‡z¼(ã~yõêõãûú̇˫÷õéË›—¯*
.ï^~úøxù·k¼ü’—.[<ØKto—/_¿¯Ýã›7ÿrùÐ^cÛ?èÎ_²óGÝòtùh›>¦McÓ׶û×öš×é5¯ã5ït÷§Ë'{퓽ö)½ö)^ûd哽ô“½ôS{ééòS¼öÕ÷ß>¾¿|U?àããåËz¼/?|||ÿF¾Å‡Ç—Òõ.û©Róãåwïå|÷»ËºÅÛ‡w¯~û¦¥÷z×½½º|ùô]EÊ·¿ûxYOèWr -_Úgˆ·{ñîéã«Ço.¯î.¿üðæáÃïNQõ]eúÛ×ï>µñ÷ïß]¾ýt^}zö:þ~zÿê›Çº«×ïåßo>¼üôF -¼à¡Öû»ÿã§Çò%_=ýó»ËÇyùæáþ³ö®×/ÞÔ
b«oêYüúÝóñí'UÞ>ÕAä›dG¢¢úõwòÍ?|÷ðòñòÊãÊ;›ÿuwù$}äÝ«ú‘.ßê_Ú‘ë!ÖR°}j©Õ[å«×ÿôZ:H´8æÿ=þõÍûkÑ»OïŸô“ꙟ[Kº»Óå7¯ëöîQßùò»ú>O¯¤ƒh[·óì·ãj¡¾ôãïž>}¨]äty•ºè]ú÷•õŒ»øpwvh¾°ú/rwý"^ô…½èK{Ñ—i|ï/í¿±Wü&ïæ7öÔ+i©^_¦!Þ>¼|/ý½R__öðRO;¥íŒ>]þîÓ»oÞzûæáÓÇzÖá._>ÔíN¿¾S”.ÿåë_¨ÃG5¦¯Swï^>I ð󋯟½ŸÿþòùË.Ÿoh,ÿõÿkoTÙÈÛX°ôëÔœþ¾¬ÅÏñ‹²M—õX=þ㧇7µ°^¾~÷M=W>þ>r|ô 5ª_ -§²9+>¾~xóêõ7ß\Ö/úVïËïÞ?½úô²bâuÝãG^Ýý~\~ùöñÛ‡‹S9–ËJ9©.ʱ]>|W7øÿÇ~yûø¦†6c™½'×3ð=¾ûöñbœyñ›Ú·¿þê÷oûôæëKûÛÇNûê‹ã¯ë1ÿem0NNûÝI£Â_¾ùTŸúë÷OŸ¾ûâÝ7O§ŸXùˇ¿«QT=ï>ÔHÐê¬xa[ÔÚ¿yýOVWƒÂï~úƒûûu=½ä¸ùÛÿYÉY7öŠö¯¯>½þøø¯ïè«—2B¾¿¸~ÿéÃï.~ýôô&>_ÿT|L¯ÖZyýŒ÷ø¥nðîËwv¤Ÿ¿“¿àüjtôî]ê«¿ÿê“ÿ‘÷~óPG!º_¿üÜ|æùx'{îx³Þ½lÛk‘¿D·Ô3ûõ‡·7¦š_ -y^¾yüê÷5äxû¯ïíöñ›šÉ¤Ã¦µwïþéñÍÓwéCFM².þÛÃûï~h×ÒL•˜¯ê¢çs;ŒOo¿“\ïâ«ß=|÷¨÷ãïîõ•_ýˆnüæá]ŹÖÇ.?µÿVžõH²ºØé"ÜÏèûÙÏ~€‰ËÅõ»ôô_–ë8÷sÙõ»GýVsQ~zúL]eîxqýªÜÿçi?e˜†yX†u؆c¸®‡›án¸/¥Tž—¥luà8ÊU¹.7å¶ÜÃXÆqœÆy\ÆuÜÇc¼¯Ç›ñv¼=wãý4L5#žæ©æhÓ>]M×ÓÍt;ÝM÷sM™kúYS¶y·ù˜¯æëùf¾ïæûeXÊ2.Ó2/ë²-{ÍË®–›Ór»ÜÃZÖqÖe]×mÝ×c½Z¯×›õv½[ï·a+Û¸ÍÛ²5éÙ·£>®¶ëíf»Ýî¶û}Ø‹>Æ}ÚçÓ>ï˾îõu»äWûu}Üì·ûÝ~Ô~£c:êÇ;–£¾WÝß~ÈŸ«ãº>nŽÛú¸«û«z´NWõÐ\ÕCp5]ÕïsU?õÕzU?ÀUÝ÷UÝæJþ\×ÇM}Ü^ÝÕÇýÕýõ zP¯ëÁ‹¿ë±:]׃r½\¯×õ;ȇ»Ö·½Ö}\ËŸ›ú¸»ëûëû›ÚZ7µenÆ›z˜ofyœþ¯Ö¶£·®µï-|«m<h+Oõ!-½F[ÓÚwÚÞÒâÓ)š|ëÝZ¼x›/Þêût¤–—¶RÛk럾§ù—Ô®—éË}íô‚ÙûÁyO¸;ygî0Õ‘»ÄUt íÑ-´SxŸXµOX¯~qsªÝB;Æg»Æ¢]Ã:Ç•vŽíwsxߘ´oÔ~qÒ®±k§°.q«]Â:] ·þ¡m~ÓZû_kÛ¾ui_i]kßµ;Ÿ½OÞÈãgÚ˜V¦¨¥o½¥Ë©6vkê]ÿ;?ÝûomN«k»kË×v?yÓ[ãŸ7¿£@Ûßp =@þkýÀzx¸:iw C'èÒ)&ít:]CaЈÞqªÝC:ˆuºJë,°D:Ì÷ð¤µíŸðÏ¿ÓK<´oÕž*}uŽþj=VúìqòN{¥ù¬³ÞÅà3k/•>j’¾)ýRzå6§Ú!¥;Ê€#ÈYkw[û]©=n©}í¨½ì¶ö®¢ãʦ]IºÑ}í>Sí0{í$7Û]ýˆÓ¾œj8´ÁïkËNµ÷Úr·õ$뉽Öóùú궞Ác=s·Ú¨7×wõëL7Kí%W777w7Ö¶÷÷÷w÷·÷7õL¾º?jÇÙjŸ]îçûé~¼/÷ÃÝýÝÝÝíÝÍÝu&ŽÚ¹¶Šµån®ïÊÝp{{w{{{Sé%½æTù´Ý®õ\™ëÉ7Þ–Ûáæ¾¾Ûm}ÏëúÎG}ÿžK¦:B”›¡Rä®Òä¦Råª~Ò½~Þµ~ê¹r§C§ë¡Âè®Bé¦~¥«úÅöz®¬õ¤œ+ÃÆJ³á¸¯]õ¶vÛëÚz ¶z8–ÚɧÚáË1ÔóáN¹ySÏ’«S=n{=zk=•æz(Çz‚
•¿wõ´»©§àU=!özf®õÏzΖm¨gò]mŠ›zn_Õ†Ùk󬵑æÚTe*îjëÝÔ6¼ª-¹×ö\k«ÎµmÇÚÂÃ|_s[Ys]ÛýPþ¬•Fsí
cíµN÷U·µ—\Kg9êù¾Už-µMµ•iïk¯º}ëºö±£ö´Rq©ýnªý¯ŒC¹¯ýñ¶öÊërõçhÛýô§mÙë©üiZVÛUšõô§lWiÖÓÛ®UQOL«VîìeûcÛö³ûg?oÿèöý·œ·?ØÂ'kâ?]sÞþgnmÛù⯾¾~_“!¿¼R†Aj¾:ýÕשæúéX)žr}îú6Ò8—¡ŸÉÐFÉÐæÈЉhd”ÔØÎÉÛá^ó3&Gí6*wݯ뼕/êš:lžê‘‘SÆÎ]Ex7áiŒgQÞ¤QžŒ¨9Ò;4ÚKñÞIB>
úäa Þ¤íµh¸Dh1 ŒÄ2_Ï–«Üj<({‹ -OJh8jxÈÃöµx°(áâ¦!ã®a£ýÿᤑ×HÖ2þYr:k7»×7•·¿öÇM»Ýªo9G÷ó¨ð^¿½<®¥+^ëèճ?¬kÊE²?nõÀËãÊ»6Ìvª-Úg—è¹ögàQû°=n5Œ¿Qf]—#[<Ö2Ÿj/‘‡~€¤ÅCú•õ/ùÿ«î±y´f×ÿ?iç=¨NF—ÌŸLŸk§Ï¦áðòYþ<]2}VåÐG¾$ä1ö@ž‰±e¹?iN!ýà*¸#ä‘c\¢CÜhW¸ÒN`]@°hÓ+Îut‘“à°ÑEØcŠœ;zÝ(}§Ï¦m8kv¥-XOÌ{o7ÚLNÝõT¿‡åiõíêAdè‘F†l&í7²ù ƒŽ;6ðÈÐ#ƒÏ•fŸ»A2É0´èùeCÑxÒ^3èˆ$c’ŒJ2.ÉÈ$c“Æ•¾IbT‡(¤d˜šµ·ú¸:dÕAë¤ã–Œ\7:zÉø%#˜Œa2Šm:’zöÙ9?é˜6z·tl»×ñMF¸Û“s7×öçJ‡»C‡¼]‡=øVü -·ókÖ)IÉf®tZ’K^³NMJ´qôN§'me½>É<åÙàÉÈ©£f3/c´ô«rv.>Rú8)#%£d#m„ôѱ»ötNÎÄΓÃsòàCêìÍ<ñ,®á¤¿ ÇÄ"®´AkÔ£tò€ãs,ô°àƒ‹ Ÿ»4Ô]1<¿:d!I»<Tü Oqqh¹þîòЩ;îíº!‘Ê×ÓC¿ZHÀbÍa
²Ÿüê W5€µ8÷ˆÇÕÙ£ÿssö¸íŸrpü,DÎaòy°ÜÂå©]§ü\àÜBçó -ñ=³Öq•÷ì -ïvuœ|ÂôV¿d-³ÐÜ"å%2PË4¾/•¤Ã÷~˜ ûˆÄ³âË&ÏEìÑòÑ=òÑš™œ>›ŒŸ(eFtõYϸàì—$mó>®ý·Ó‰ëú,ñk^÷[÷XÏK÷˜»Ç”§ûñìQºG·’HW¦´GÿçÖ'þq×ÍÃÞ]w«îqœ=öü8銗úÐð㢅?œœ~\´àÃÉN?&VøC†’#‰~¿Fy㯽Ҏk“¶ÍÙÅɸ4yë—&¯|0’áh;éˆÔ_™´I¯MÆ¥I lˆÚ4A]tÝÞäCU‘<F†«“/¾c½•[»/½³…wmÙ]ñEww>ŽÝè‚Ÿ«XoW³“ŽguDë燊¸Y¦V¦/u"ØçX™B<ŠÌÖÔOQÊns›iBòÚ‹Í:KY7ôiç»Orêló²ï2Ǫ³œ2·YS¿c”9Öyo¾ÍýdöŸbgÈü›wïÞ>¾ºø–áv_ëü¹Únž”QkM#ÕîYìù˜–Ç»4P¦ÒÕɇÊüˆ'Ÿ¸6._Ÿ|ó¬t{ŠÑþ6"‚üï;-ßt¯º~¶EzýɃŒ»v=¾•$»·“-«8Åóˆ³1¢‚õ -Fˆr -@È)/';Q¦Ü7aJ|éùƒ‡–,*sÖÂÊz–žt=ä.Ý#¢d-䟂 $G
"ïuù£„›†³-9Ò -Êó°aìã -]Õ?–g±œâŸÛ³Çž¶$ñû—~Ï¢Ãt㦻¸¯‘èɧ¯Ï–¦ptŽeé÷¬6ÔYêSºhŸ¡ýÀbŠn)Z[ŒfëoNiqa‰Ui¶.mõŽ¢BO,ïÏü¯tl½iSÓ¾º?/;_Õï‹ÇN>Uý£V}ïjvᢜ4Ôø¾¾ä#&³õzFšÐÎë>|åÇÉt³Úz»MlëÔöYñG¸Â±›xâß‘ô¡Ä·ŸŠ"þ_5h¿³ã¿÷Q£Ž_>½ù‡‡‹Û§üH9ž×]Œ/ʸ\”ûQT¹(.ÅM®K¯KýŠŸtZâê;(þ«3÷{-þ—úÏÿY+ÿùb¾øÅÅßÿáâ•Öÿݯê_¾'vü¶Võoõ7Qãï¦5ýÈUy»wú>_þË --OáåeÝ
hµ÷Ê6÷õ¿e®'ÀÒƒNêÆ)H'Å26ÒÕòP·ŽtR7Ú'Ö½Ô“aÝé¤\æ5“®VíëÜH'å²4ÒIyZzÒ-rZ®A:yɸ4ÒiyèH§{ÝéjÙ°í¤ÓòÒ“NêôØ9é¤|Œt²ÏyêI'_péô •FºZ|AºZW¡ÛHWËë<5Ò-rR®é–¥e†t‹üÂëÐHWËóxô¤«uëp4ÒÕò>ntK¾†Ò‘®Vò£Á®–kû7ÒÉóûÑ“®ÖMJx']-/ÛÚHWËë±ô¤«uû±é–íÅP7¤“âVzÒIݾ6Òi¹vQPWËE¾lFÔ ®@]-ËuŸ@”‡¡Gls
ui‚:)NK:©+SC¾fk¨ÓòÚ£N릆:)/cC|½z -v¨“¹í
uÚž¥¡NzÈ>õ¨«éÐu•†ºZ”‰—@ö»Ò£NúæVêj¹Æ
uµ¬ÛfÔI—íA²ek¨ÓòÞ£N뎆:=o¦†:eÑСNXs
uZÞꤼÏQWóŒy::ÒIÕ².:)×Q P'å2•uµnZ‡9P'åaØuµ<Z¸éjM9¶=H'åÚ¾A:)¯ûÑ‘n^œ<»c@NËÖÑ€œV•9 'åb€RÈIy°7ÈIÖu% '¯±èN'ÅÍ"Â`œ|³m:‚qz´æ=WË«äP™qµn¬NWËG¨‚q³œµk'ÆÕªéøÍ W‹«UW‹Ûj!T0®Ö5{ÆÍûÑ‹‚qµ<MóÒA®Ö-g)äjY
«åu×rµnsv*äj¹Ží[@n–ϸïäjÝ8îrµ\7Ý \-Öacï('u£ÑG)'åbB)'eùº™rRWä œüùb‘–RNÊÓ´u”“ºÑâF¥\Ú‡PNŠ«w<(§om¹„RNÊ›ÁT)gÛlå´ÎB¥œ¾dJ99"GY;ÊÉ‘,µ?@9iQ9P®¶ølOä¤'ÉÌ‚Cn¶ÊAtÈiÇ“°1AN;ç¼ä¤<s@N:ô²nää×Þ·eÈéI09-—£ƒœÖMs@Î0³äCÓš!§°2ò(ä´<–€œ”Gãd¹iž¸J]K\õ)q•òyâZëºÄUÊ9qåóÄUªrâZË]â*ÏŸ'®ÓÞ%®²IN\u}âªU)q•rN\µ|–¸J]N\¥œWùd牫|᜸êAK‰k-?K\§£O\k¹K\õgþûĵV¥Äµ–ºÄuž'®µ®K\ç¡O\kù<q‡>qå.qåg‰ë\úĵ–»Äu.Ï×Z—×Z̉«ÏW©Ë‰«”Sâ:—牫ÜÝ '®z·ƒ”¸Jù<q•ºœ¸¦}(çÊóÄu.}⪯I‰«–ÏWK‰«¾MJ\eŸç‰«Çœ¸JsæÄU:Èyâ*ý(%®ÓÑ'®ÒíÎWíš)q•rN\¥;Ÿ'®ÓÞ'®z -¤ÄUËg‰«Ö¥ÄUÊ9qÕrŸ¸JUN\µœW).qÊóÄUêRâ*Åœ¸Öò³ÄUêrâ:
}â*å³ÄUÌ œ¸J9'®Óð<q†.q•—äÄUË}âª{M‰ë4ô‰«–ÏW©Ë‰«”sâ*û<O\åæÄUZJ\§ò<qJŸ¸Ör—¸NåYâ:9q¥.qåg‰kë×Zî×iz–¸Öª.qå.q•çÏW¹ÁJN\k¹K\kùYâZërâ:Í]â*ÅóÄUêrâªå”¸NóóÄUêrâZË]â*åóÄU¶É‰kÚ‡ NŠç‰ë4÷‰«¾&%®Z>K\µ.%®RΉ«|½óÄUdN\µ=Sâ*=ä<qJ—¸N¥O\µß%®Ò7sâ:•>qåg‰«ôñœ¸*[Râªå³ÄUëRâªçMJ\•E}â*¬É‰«–Sâ*åÏ%®ãô,q•ªœ¸J9'®R>O\Ç©O\¥œ×Z>K\kM—¸J9'®R>O\Ç Èɳ9qÕrŸ¸jUJ\¥œW)Ÿ'®ãÔ'®òš”¸Jñ<q•o–W=Z)qåg‰kë×Zî×q~–¸Öªœ¸ÖbN\kñYâZëºÄu\úĵ–Ÿ%®µ®K\k¹K\kùYâZëºÄµ–»Äu\Ÿ'®ãÚ'®ãÚ%®µø,q•ºœ¸J9'®ãú<q•ºœ¸Ê}Èrâ*åóÄUêrâšö!”“âyâªoW)çÄÕ¶éWK‰«¾MJ\刜'®r$sâ*-š×Úâ牫ô¤”¸ŽsŸ¸jÇ;K\µs¦ÄUÊ9q•}ž¸ŽSŸ¸êIW-Ÿ%®Z—WÃLK\C}⪰J‰«–Sâ*åÏ%®eyž¸J]K\õ)q•òyâZëºÄUÊ9qåóÄUªrâZË]â*ÏŸ'®eéWÙ$'®º‹>qÕª”¸J9'®Z>K\¥.'®RΉ«|²óÄU¾pN\õ ¥Äµ–Ÿ%®eí×Zîײ>K\kUJ\k©K\Ëö<qu]âZË]âZËç‰kê×Zî×Z~–¸–½O\k¹K\kùYâZërâZ‹9q•âyâ*u9q•rJ\Ëþ<qu]â*圸Jù<q•ºœ¸¦}ç¤xž¸–½O\õ5)qÕòYâªu)qÕ·I‰«ìó<q•ã˜WiÎœ¸J9O\¥¥Äµ¬}â*Ýî<qÕ®™W)çÄUºóyâZ–>qÕS %®Z>K\µ.%®RΉ«–ûÄUªrâªå”¸Jùs‰ë.yë¼u Û%oZ8·ËIàèÔí’¸.G‡º]W‹µGo’¸ŽG n“ÄuéP·Iâ:®ºM»Ó¨Û4q]:Ôm]âºIÞjØRÒmš·–L:Ù©ÒmBmOd…tRös'H·é¡›‚tr¢vB)é6É[„AºMóÖ)H·kÞÚH·kÞ:v¤“9þÝb#%Ý.yë°évÍ[» ®â©vÒÔš¸–@LÕ†µ@Ý!‰ë¾êM\—†ºáYæZ«ºÌµ–»ÌUž?Ï\ËÐg®eè3×Z~–¹–¡Ë\Ké2W)žg®R—3W-§Ìµ”癫Ôå̵–»ÌUÊ癫l“3×´e]yž¹–Òg®úš”¹jù,sÕº”¹J9g®¥<Ï\ËÐg®ÒžòÕaÝñ<qÝ5o- N&àW££¢nž·î–#H§ÓåǤÛu˹#Œm£…lJº]ÓÖ1H·?O[¥ŠœS@'gÍ4¶ˆn׬uÌ Û5kmÝ®Yë Û5kŸNÖzê*¼LºAóÖ¹MÒ
mÛ¬$sö>®ÓŸ9Ú[î:HꪇÇi7Hî:VÁÀc×Æ»AÓW oÐüõŒx°“_»g Ú
šÀGÆÔ9ýàÝ`G´ði…݈Äì 6äÉ ¿Ö{•yƒä±ÛÒg²ƒ&²F0¥Þ ™ì8öMeËÚqo\Vöøäë*q#ÆÓl¶t1žd³s¯tÙ¬,/š,=n!ž$³SãÞ¨ÉìܲYIfçÏf%™56Z6«‡¨´lV’Ùå,›•d6Åx£Œ÷kËf'MfK?e§É¬y2ÍYû‘%³“dÖ©6g§Élisv’Ì.K›³“ÜhZû9;ID?Ùœ$³FO›³“dÖÊmÎN“Ù©ÍÙiþ1Æœ&³s?g'É춴9;àÁœ&³S?g×'³“æ²-™žç²“¦²{B¦eÜZŒWˆc-ÆërYí0mÁ=évËpìù¤sÎNGEß Éì¸ûÍfm0à'§[
Eæ Ÿœ -eÖÀŸVÈp—(•¢D3€ƒæ´–ÂÀA“Z‹Ð‚ƒfµn)Mk_:/¯Þ¼}÷·}xÿû‹Ÿ×ªŸ\ýôâò«rÿÖ‹ŸèMùôVžr[¾/nzñ¿ËKþŸï}‰Ü9Õ_¤`¨}1½öúúêåËOoõôQoj/ü?êõ¿9±R¼´•âõ²4|½øÉO/þî¿Xýåé³ë¢ÏšËYz63)UyfROä5“>žÏL -•Ö!“–KXCZ'}œÏL*.¶´Lúèg&¥|>3i§Ýá°Yö´Búx63©UifR™•f&•qg3“Â9[Y!}t3“R<Ÿ™”o–g&õh¥™IEØṲ̀¼6ÏLÖ¿»™IáÑṲ̀â¨ÍLÊ÷L,—Ãp>3)G*ÏL -Iò̤¶ÅṲ̀4qž™Ô&N3“z>ÍLÊI—g&·ÒÏLÊ>3)ðˆ™ÉI1QaQ¬°ç|fRêò̤ò)ÍL*ÂÎf&¥n/-Šìå™I)ŸÏLJ]ž™Ô}ŒÅJñ|fRßzkQ¬”ó̤mÓÏLj]‚¹¾Mš™”#rNsegš™”ýå™IùZg3“r4Íåàå™Iíxg3“Ú9Ó̤”ó̤´Ùṳ̀¶uš™ÔþRÒéãṳ̀ÖMâ 3¶Dúx63©°J3“ZN3“RÎ3“?DðëÿÈÿ±ô–¥#‹v‰.@_*´ŽðD¤ÅçµÛ¡Oñ¹†cЗuž— ×®Sì‚YÐÇešK»À$VØ2Ø'Ðkô7Øeï ×ç´#N%UœSœ>zÊ’ãôqØlÂôõðSž0}]†³‰ ÁE=9—¦ï6îG˜^OËR”>ÕñkÛS”¾ÃaOˆÒ×Íç
r”¾lûÚ<lMΕ-F¯œîça-VI1ú:XTëQú^£xŽÒÃf0<J‹M¼¤ƒV-H_‹
Ë£/ò“
9F×ɱ³Ý'_Ñ×eOWÕkÎ8ÛÔnÑ÷ÙÂxÑg¦n=D_‡c>ÑYð@ˆ®˜mº~Õ>B_¦mMúj9rÐ-™íô}°9UÐk°às ‹zœèÒ•J -ÐkàlÍôºÍ¾ŸèË8Ú‰çú2{Øãºý}ˆ®ý©…èc)ó”Côm*óyˆ^ûÄšbô}õ™\†½Nº>D·ô»EèǸظéz²d‚ªÐ%E4¡×Ž¼´kNRAÖž"ô%çÍ+
¶µãº,™ªŸfϱù¾{#{½ÿ‘ÑþÉÿóẔ¡tµfãÎP7IyßZ@-Eé6- 6Gx8RÛf±¥t+QÜd°…ÓV7úÔ¤„ÓâQƒÕÊ“¬SòpZ,ºÕg-Sà¹úF<-&žœ!9 –ºÑF[›®_h÷# –òpÄÇÒKýµn=,`•€ZÌÙ‚f
¨EÝšŽøæPKï-c¨%Ž´ôÃjéËÒb«Ûf;^P³T„€ºž9ëñ±EÔÅ&n ©eøó£ÕÅÊa‹hÊBjö0¶ºØ®"¤–qµ¨E -=J¨YC@]ϯB˜G@]ëv»êaµ¼Æ¯œh@]Ë•§}@]Ÿ›õR¿ÔO-¢^5ŠnѱDÔÒ¾¾F#j)¯Ëµ´Ìu¶ˆÚt¼Ù#h‰¨µÍ})DÔjpαFÔR§C:û¨}m™[H½Ê2®´ZÏqòÏ"!µtß9¶1MpÙ»ˆZ΀Åæz5¢^õÊúµž—[l£uÓ‰v"êZ®ƒþBD½ºn“#j©[ÛhH-»Øì¬ÐZ$PY -”CêUœˆ¨kqídÓˆZ]Ò5¢p¨¥n:v;†ÃüÓˆ°µ\æÆ -Jõì9‚¤zÂícGR•··#Hªöv©šÙsé@ªöö±H±¹©:ÔvP¤âDe -JÙTyÈjq›:ŒªÐmM©=8FÕºÞ×£úÎëU{X£ºK0ªUëÕ·Y¶À¨ê륣¨Æ¥” ¨©økPTÝíuê0ªî¶1O1ºt0*n^zŒJÇœƒ¢µ¤D h‰ãÒ(Zl¶ˆº…•r™zˆo, *eÛATºÛÔ3Ôj"*eûÙchñïØ3TEI;ÂnñÕ½NÝÉepêIŽSG8©Ó«ÛJ8‘˜#L”¸ßÄ|6½^ñ¦¾õ^o*F[9ð&Êöfã³âMµî½ñMËS‡7ÖÀþ5x“²^ßIxS{Ÿo²aoR¶ºÉ\¦tÓÃ5ÜÄf=JÇ6‘b÷†6ñf—e´‰¯² m¢ãjOu´‰²½[`¨h[|ÝWFÛ²DX§hÅ×; ÒM”m¹gH£›Ùz†:ÝÄØÂrΈínÐmYcLRº‰±¿•àx«eY¬“éV«ê°³ÝÄO–«[àMuì¹£›TÉšgè¦eK
”n¢<6tݤn-%è&†ö47)ËLæ›ZÜÖ˜zÇ>œoÜ™oúÞ–XéÑSýÚ²&å›msd¾iÕxÓwñ3Lð¦Îú°w|SóÝb/囶¦±Iù&=äXÇŽo"lûY=÷—Ùz:|Óž7Oß´sZ樦þU–5 -xÛË”8'Òö6oÁ9‘¶÷a Îͺ°¦tœi{^ÖàœHÛ£‡mÂ9QgK -æ&uF·ÀÜäm’97é…á=8'bñàœp®–uÕoæÜ$Ýk‚s"(ëäšsn"Iœ›˜aqÎM¤1Î9u«ƒsR§ËQœsâh/c›™“òäWÁàœyÝ[p.öᜓ²uÏÀœ¾uK\õ~ynŽ-–L9J™«”÷¹åTH?æŽsr ‹’”sÚœíòF-–2÷×7¤#MÆ$üsÒñl’³aÎÒÌIW°XÍ0W;ÏbùrÃœ,…°k†9˾5ÌIÙò冹âÍæŠçN`®øÊÌ9]Àz4ΉÔm“óƹâ rϹQ×%¬™s#?0꜓²fë:)-PЉŸ-âŒNJ“^:QšýêE€ndžÖA'*ô¾¶ÌUžÖ>s›zÚZæjÊ÷ Óré3WÝoK\Uâ¶IWZâ6q “:%¿ƒNÍñ©]Ê•V,¼ÐÉ7.¥%®£-ŒÐ‰ä:}âª"ì1èÆÚetâÚʺ…L:Qr'Kn•t£ÿ¤õI÷Žt"nï
tbù{K\ÅÛÞÆ’@'Ö¶_ÎQЉµ
‘åäkÛãÐ -ЉkÌõ @7êŒFË\UÓ¶zÐc?G'uK‹ç´8¶ÌÕìês"`—£%®R>Æ)0'åôW ¤n--q}8æ¤<¬}âªomYöl}¥8 -:-o]âªUsK\qÅ:êGŸ¸Êœ–¸js¥”tÒC»$¤“ž´Í-q•Á:íxcŸ·JçœíWµÓø…GçœtçcîóVýa‚i -Î)Xö–·jÙœÓÓ¤aN‹vÝC1§ :çF_7æÆ)®+æÆÉÇúse°[«"UÆ:椬©º}Wº3ä¤f²ÜT³Ô¥ø9)Ú¼`0Nœçmn— ¤<.m¥Š”ç¥_©"¶¶íT§Â·Mú)â´<ô«Ut·v9A§†·]6RÆ©ÎmçL0N궵V1qüÆIy±à.'ßÐÙ©Œ+þkž0N\Ö}ï—«\Ü‚qâÍ.)gÍöØúå*¢ãŠãÄØ6~)âŠÌºøõjWë½”qµ¬+ç`œØإ̉qâcë”—3NüíioËUäyg^0®ˆÖrVѵwÝqµ\ñÕ_…(2•±´Õ**_ÛÊE\!ùHˆ+Ì°8ã - Œ3N”çÑòÓ€œÚ×{[R$·*k@NÊÅ/S9©†¶Z%öá“ò¼ö«Uô½ç1 §¯ñ«hslÓVѪ©VQy|j«Uä뉜!'Æö¾·Õ*Úžã“.rØõƒ€\‘_ôœÛr•orÚõÆ~¹ŠtÏÝVÊh·‘éô©a®–‡iê—«H/_ì"‚bNÁ²µå*Z¶d90§gŠe²Ê9#ÍœS
ýrÝÏЖ«HÙ/`+ç´<<[®¢¿=¹uáœÎlNspN~pÔEáœX”ÇÞçâpû”Ý&ž¥yF:™÷ËS:nP'ööbduòëž“êäœ\[ÚºÉÊÙ¹¡Nʃ!*P'»ÝK»Ú*'í0´ë(ßu*Žc Nüìqkyë&Ëž—>o•“_Øê䕵ÍΉຯýW\\ZÞª?K9µ•yrFnÆ@¬+œÇv!â£ÓòVùÁÒã裹ƒeÓŽ:Ypì´4ÔÉŠó’/Dˆ½-o_&+ê_Ô“QgêYc,N_—ƺ¡]¨Ö
þs°NæølBÀXW|®1³N5è–·j¹´¼µŸò̬ûzoy«Ú[Yëjy–žuò«YCË[c°NW÷¨“·¶,ÈP'/iáœmÑåZ5µ¼UÕñ©åÅš«#]=ãÞòViÎqhósòcˆÓÖ“®ö$¿ï‚Nøº•¶ D:^Ùû¼UfÇ‹ÍÇI§‘Étç©‚®öçÍWÍèv¹g›(è„,ÛÖ.¸îfw Óß2.í‚«¢fi
žYºZçkÈ”s»^Si\wíçsÎ…’@:¤ÓÙ³ÏlIɬSd‰È*ƒS$¯á‚dÜ©r±•w!ƒ -É+†Ã -9ÃàŸÑØþs‹Ø²ÎK4 ¬ÈÚ°_ÍZõNãèö–\‚“µbËëÆÕ‘f˺†9"åÃ~¹A: ¥|UG–Ãó^³Ý‡b[lI¸ÎMË¢¶5Dl»+Éæˆ.ƒsÃCÌ‘ZžÊ6Ç;ÈĬ,[]½–I)—r„9²ÈOíñ©Ô‘ÅU“)²JIWè™Å¬æÈ2ÛòLßDÍY8µoG˜#²pj›Bá&¾‰-H›Ã{Ñ~¨·©ñßÄqdÑß—tyÙÅ‘Z'c"∬_,öczÁUÊËÒ€MºÒ´G¤¬…‹#ºæqíÕ©ÛÍÕÕ²ÖjÆ‹µ#¢Ñ½o£êˆ.+%ÔyþÒ•«#òü°…ž¡êˆ¥-Ì9ˆ›™$jŽÈ^Û&jŽHcô1GtÑÛX‘²¬Ja±>t±œý„˜š#ÒæîY«9¢Ë+Kl£3Ò—ôG¥Ú>4úÁ‘òÚ”5GùÀ1Äé®Glb7]L±‰t|½‘Î|„9"çvº˜#rnÊußFÍ]@9†8"‹wŽæâë§ðT±;ÜÌ!ŽÈü÷T‘%šÂùèž³Þ‹gŸíGÔ‘•ü~Êb÷êÙJû)5GdÕ¢†ânŽÄêP7GdõèÞ`
&KíæGä%“K "ŽÈÓM³ÕQº0Õ<PGô5îfË+Ú²ý;˜#J] ”º:(uw¤C©»#R·G¥®t,u}$XêúH°Ôõ‘ÌR·G¨fOÝéxêöHðÔí‘à©Û#OÝ žº=@u{¤ªÛ#T·G - ˆC!q($ q$ ƒÆ¹A’‡Aâ0H@IF ˆÃ qndÂa@87Hp.d¾¹@ÞHÀIÆ xC o$o$à
Â!d¡@8‡B’ ‡BáèÛ Î’L8' ˆsƒ$ƒÂa@8’L8ì‡Aâ0H2ã0H`\Ú‡2ƒ$3ƒÄ‡@ãH2ãÜ q$ ƒ$3ƒÄ‡@ãH2ãH` ŒC ÉŒC r$@ƒ$CƒÊa¤ž 3 ™r$N9H€I¦ ”C r$ç”à ɔC!r($P‡$S‡Êa‘À94’Ì94@‡FèÐHè°H -;,’;,‡ °C"É°Ã"vX$Ћ$Ó‹Äi‡DíH2íH ´C"É´C"vn‘ -"—@ÁK2C.„!—@ÂKÎQøŸØ.‘e².$Û%R7N!—ÈÊŠuo7%‘òÐnÙ¥r‰¬¶ð7k8(åyŒ»üÉzÝ3D®›HU™Û]þdMÀ0´»üÍóÎÜ’@.ÿëO¹[¢‹Föv—?YTÒVÈë4Tù-ÁT-©eû‘zWK¤<Lñ5T-©uzIWKl5K»ËŸ¬A˜¦þ.²AµhWKjysGÝY`ÐÝõÁfRn††[¢‹„¶v—¿Y²œðDì×½?”›%²Á:µ»üÉêžr¸Y - ÌÙæ(í.ò¼\ZÓmÜ,‘A~ÃK]á ô(í.²‚bÀwp³DWUìí.³§‚˜%RB·q³DÒ¼†Z"Ñî¢f‰gi:ßDÍ©;¶v—?]r´»üIÓM4·Bt]ÉÞîò'e¿ßˆš%ºiïïò'uÇ0_¤}ln€¬Öñäþêñ62Ñ*}s<Ú]þ¤ëNG»ËŸtíeŒ# f‰®`Û]þ䤒°³D–&ɽ{}5Ktѱ†Z2v+$WKdá4–wUK¤ni·$‘=øyÔ,‘ÅL²|?:§ýp,·¶T³DÊeowù“µ<k»'‘š%º¾gÃ,‘…T¦IѲھ5Xý†úi®–Hy_Û]þ„BµúVyì×Ü,‘ò6¶»ü)̦ùßÁ,é0êf u±$0êbI‡QK£.–F],Éu¯$8ê^IpÔ½’Ž£.– - C!É C!t($€…$ƒ…С -GÓFŠÿÂ?Úˆå¾i#õb£©6Rl!`h#%{c¾6ªÖémßðFä5ÇÒ¼9jÿÖHÂ(ÒÅqŒ"dŒ"8FqFÀ(ÎHæ(ÒE£H#™£H#ÀÔXŠ5’YêÚH°Ôµ‘`©k#K] –º6LÝé`êÖHÀÔ‘€©[#LÝ ˜º5L±F2LÑF€)Þ4ÅÉ4Ŧê€R¼‘„R´PŠ6JÑF2JÑF@©k#m$‘k’º5HÑF2HÑF -×¥èæ-b.–2¨7èfóFçf×FàÜìÚœ›]Éœ›]s³k#pm$kÐa -¹ðFœrá$Ê…7b”mÄ1ÚHÂ\h#Ž¹ÐFs¡$Ì…6âœmÄ9ÚHâ\x#ιðFœsátœk¤q.¤ç\X#ƹFéB1Ò…3â¤g$¡.¤G]H#ŽºFêFua8êÂI¨Cuh# m$£mÔ¡8ê°F2ê°F@Ö¨ÃɨÃuX# k$£mÔ¹7êðF2êðF@ÞH ν‘Œ:×FuC@ÙPçÚH‡:×F‚u®ë†v¡bˆMÔ Ö¹5¬sm¤ck#Á:×F‚u®t¬så#XçÚH°Îµ‘Žuh#°mÖ¹7’Q‡7êÜt¥å+Gû2ûÔòÖÐF ÚH&Úˆ“.´']h#‰th#ºðFtá$Ð…7b mÄAÚH]h#ºÐFt¡$Ð…6â mÄAÚHÞˆs.¼ç\x#çš5Ò@פ']³FuMI¬kÒˆÁ®9#N»æŒ$Ü5iÄyפ^“Fñš4âÌkÖˆC¯Y#‰zh#P/´°ÚHæ^h#€/´'ÖH&_X# /¬ØÖH†ÖHÄynDœçÖHç¹6q^"›zîtž{#‘Ìš7¹¬{#9—5m$RY×F"•um¤KeM‰LÖµ‘˜²sm$OÙ¹5SvnÄ”k#Ý”k#1egyMÌع6ÒÍعò3v®ÄŒk#ÝŒÚ3vh#ÌØáä);¼æìðF˜³ÃIsvh#ÌÙ¡0g‡6’çìÐFHeÑFˆòÐFr”‡6B”‡7B”‡7’àÞˆÁ¯i#N¿¦$ü5mÄùÚˆó¯i# €Mq†6âlÚHB`óF‚Íq -6oä_]üŸÄ‘Érq…²6"ue›C‘ wYNˆ7"îÒ¹^žš7"óôǾ†82ùä‹#òôæ÷ÝA‘:™™A™ê ÌGˆ#R®
~£›Hi]ÜçÐ0r´©=¼¹Ø°s¼ƒz#£]×od´+áŒ6çÛ˜72ÖOjÆ‹z#2;=®MñÙißÄÄQ*Ž£‰#µÿšfcÞH9»¡ƒÕéÂËðF;o©ý¾Hãv‹(¼(ëaod°Õ꾉
LƒeÓᶶ4¼‘Ánü£Û Ž²†sk∜WËÒÄ9÷ÑGŠÞ+¼¹ž´¯Í©eAµn‚8"i?š8Rl„q¤Øú5ßÆĹä[Ö&ŽÁBm5 Û¨82Ú∴¹ÝKÄÄ‘úþ2ßäÛèÄŸÔ©ÙÞö¡ûG©e)x`ýslÞˆtÞ)6Ñ·Ñ¡‰MD‘@ÖB"ŽÈyVÓ¦Gä<<õ]Ñ‹.sx#µ¨·AroD/Ñ,}@½©““oDöà÷ÜQoD®sÉatÏYUM8"eÁ9âˆ\æYÚí†TÑKhûâˆ\b›IŠ–Õ\ôm¬Á&] - ”Ã!É”Ã!rH$p‰$s‰Ð!‘ -9»¡Î]’uî’ê\& Ô¹LÒ¡Îe’@Ë$:—I2êÜ% Ô¹K¨óKçêpI@»$—$“—Òá’@:d’L:dH‡Lâ¤Ã%ɤÃ%t¸$C,ñ?JÖ…KéÆ ˜’.\’DºpI†H÷Í%bVÄ\’„ºiŠ££¨›Iu2IbÝ„Lb¬›pIœu.IbÝ„L⬙ÄY2Ib]È$κIœu!“$Ö…L⬙ÄY2Ib2 ¬Kû°Iz“I2ê\&qÒá’@:\’L:dH‡LéI2ë&—Iœuî’êÜ%éPç.I æ‚:wI:Ô¹K¨s™$Pç2I‡:—Iu.“ê\&éPç2 ¨s—$Pç.IÇ:wI‚uî’ëJäÊë°I2ëÐI`: °Ã'É°Ã'v%À¡$áØ!” -ã ‹%A;K:Ú¹Xâ´Ã+vx%™v{Kï½íy%À¯$ïØ!– -·$Oá!—0…‡\ÂrIžÂC.a -Ï“fðKòr 3xÈ%Ìà!—ä<—Kb¯íÃfð\.é¦ð\.aÏÝ’˜Ãs·¤›Ãs¹$æð\.‰9<—Kº9<—KHkÝ-‰hÏÝ’.Ús·$¢=wK"Ús·$· -â–@ÁpK2Ã-„á–@ÂpKÎQøŸØ.‘É#QŠ²]¢“Ls »DÊrÞ`—Œž8¿<5»D&ª$ôÀ.‘ò>ÍØ%R,;[¨\"Ó_˲„\"ó)¾Ô\çªk¹ænv‰L¦{È%2ß6º"rÉ(Ëj×°>˜mY¿ ‰ÌHy°5ó*—Ôò2·5ò*—È,Žt—Ktç˜B.‘ œmŽ/¢rÉ8™!‚\RË5¹ßÂ.§³Û>XnŒn+¬‹øn—Œ½X2Vü-;^‰L‹Ê›ðJt*•»q¸W¢³¯æ„¨W¢S«"Y¸W¢3¶~+'¼™^•H¯dœ,ñÃ+ѹTÜ÷JäËÖæ±D^#Úb‰ÎW!|Œ>?¥ÌE,‘¸á•È1^Ú&ê•H;èÝ+©eífx%RÞš»±Û,®Îz¡•Hkû½FT+‘Þ°¶…èôß8»ùÞöa· Q©DúܲÎñ.úëKóåV‰ôZ½©‹/@ÖY©m#V‰ôücZÃ*‘ói3±F9'ç&¼¨U"’Ó°…V2ÊZÓ‘f{Z›Ê»€j%²É±‡U2úÂN¬’ZVÀG·œu7º)VɸÚÙ†U2¦;“a•È´¨ÄEX%2ÿ¬?ñïVI-«ØèÛXs-¶„D^#½ Dž±ÌVK „$¨Â*‘—¿;‰,¸RÍÿ÷#éêVI Ô’@¨[%BÝ* „ºUu«$3Ô¥’`¨K%ÁP—J:†ºUHM* ŽºTÒqÔ¥’à¨K%ÁQ—J:ŽºTu©$@êRIR—J¤.•HÝ*é@êVI€Ô@ŠU2öB‰ƒŸ’â“d’â“@RõIÀ(>IÆ(> Å'£ø$£ø$`Ô…(ŠP’)ŠPE](qˆâ“dˆâ“ -ã°F`ÖŒÃù†q²F^Œ“5’Œk$'kä…8Y#‰8Y#‰8Y#q’Fq’Fq’F^ˆ“5â$$â$¼'i$ÒHNÒÈ‹p’F’p’F’p’F^„“4’„“4’„k™Ç]yðìä’síÖH".¬'aÂõE¯-TÏ„Ãpø" _¤"_Äá‹€8|‘Ê8|‡0ãF*ãF`ˆ‡/R‡/ãðE`¾HaªŒCqè"•qè"0®ìC‰,×ýBœd‡-á°E*á°E ¶„éŒÃqÒEqÒE^ˆ“.â`í*Rá¶Èq²Eq²Eq²E^ˆ“-’ˆ“-’ˆ“-òBœl‘Dœt‘Dœt‘Ê8Ù"É8Ù"ɸ–}âãºl‘ʸ.[ÆuÙ"@®ïÙFLÈuÙ"@®Ër]¶H\—,äºd ×%‹TÈuÙ"‚\—,äºd‘ -¹²Œë’E€\—,R!×Q\¹.YÈuÉ"r]²\@®Ë©ë²Er[Ù"@®ËéoQD”ëòD \—'R)×]8ž>äº<‘ -¹.OÈõ3IìïN—'R!×å‰ -âP<@šˆC©ˆCqe±ˆK"•qH"@KÈa‰TÈa‰ -ã°C`vŒÃùdvHevŒÃqØ!•rØ!P;Êa‡Ì!‡€9ä0‡R1';D˜CsÈ!sÈ!`9Ì!‡TÌ!‡€9ä0‡R1‡æCÀvHÅv˜ÃsØ!ý-†sòBÀ^HÅ^˜ÃIÌÉyaN^HbnKæä…¼0'/$9'1$9·å¤ÄâœÄäœÄ8'/äÅ9y!É9y!É9y!•sR:’sÒB’sÒB^œ“’œ[ûÐB Y#H!‰¹°B’rmõO’r²B’r²B’r²B^”“åÐB ZH¥ÜX&ôi… -9¬ ‡ä°B*ä°B€Và -©Ã -rh!@-¤@NVŒÃ -qX!ŸŒK+¤B.(—V˜K+¤r.@—V¤K+¤ .¥X—R°K)¤Ò.ñ.¥€—RH%RÄK)ä¥R™—RÐK)ê!…Tê¥öR -{i…Tða…dûNVH¶ïd…о“Bû®PÍxòA^
<ù Ù
$û¯òA^ýWÕ û*$»¯òA^Ý×ðA²÷*!$‡è$„¼†è$„䄆è䃼†èäƒäº3ŒÐÉ©#tR9r„N:HŽÐIyÐIɺµ_$d×d£“
’ct²A^ct²ArŒN6HŽÑÉyÑÉÉî«tlÝIyµî¤ƒÐº“
’;Ù |Ø €/mÈ—6HE_Ú °ö¥
Rá—6ôC~©ƒü¥
-â}·ÖPAì¿^gþÂ]‹Ùäù·mpAìßOkÄz”GDôî°3AžoÖ5æO¸£tÇŠ1È Öq="ŸÜeçßÏ
ÏÃrÄûº!±X’õb"iÝÿšõbž ¿pÄz2Ö Ã±^ŒÔwA¬‡òZÊ¡±¨aKÄ:þ¾DŸ\n8$„XÌ&%e„ØO¬…Âø‚~â_$—Ø{!>æ°i„øHÇ[ñá’ÞR±#}Ú½)„ØÙLD !Ö/³Õ¯Bìß6lbÿ¶GÍ#!Ä®’Ý„»Š6§…âýÅõ7B,6dØŒ¶Ýëô`„ؽëÇZdD×Ô_x”û·Vq%Äž‘çÖò볘Këìã¶vñRH³ÜÀ£åßñåjŸç³µÔˆ=¾=]æòsBì
8žMqBì5³†
Nˆ½†sËMü•´Þ¹%¤â„´k É ±Îüà"'Ä;üñܸb»Ðz;.…Ø€ˆuHòù<|?g¬âNˆýs‹—ÍW9ÖZCî„Xìùô¤bcG¤ù¿ÝGÔo(xÑlü'ÄþmMœ»çu½¤‹Yk)Äþ}ÅÂ>žEå<ëÿœ -R)! R)!€TFȤ2B -8Ä -ÏË©œÃsø"€_¤€]С‹ -èÐF -9´(ÇëåÐF*åÐF Úˆ(‡5R)‡5å°F ÖH¥\“5嚬(×dTÊ5©#P®],Þu¹#ríÎÖ—S®ÉrMîH¡\“:åšÔ(פŽTʵPG€\“:äšÔ‘ -¹&uÈ5©#@®Ñ)kŒ´ˆrnŒ(×äŽTÌ5‰`®IsMòHÅ\“<ærÂ\“>R1פ€¹6Ö|ZÏß¼rWšì0×FÎô:æšì‘Š¹&{Ì5Ù#`®É©˜k²GÀ\ƒ¸#ç«]©œkÒGĹ&{Ð5Ù#tMö k²G -;ä`‡<ìG*ìG€òˆ`‡;Ra‡;ìpG€îH…î°Ãv¸#v$ÀN °Ã ©°Ã v$ ;$vHvÛ²ÃNÉvH’vH’vÛš²HÚI IÚI IÚÉ yÑNIÒNIÒNÉ‹vÒ?’vRH’vRH^´“B’´cÐ.$’ì$‘$ìB"Iֵ촜å–yœ¬k9笓CòbX‡CëpH*ëÆZeêðW8$P‡DRQ‡D"Ôá€:’Š:P‡CêpH*êpH@ ¨Ã!©¨“DéH ÉéÒ!)¨K…Ö¥B"Ø¥ARi—‰p— ¼K¤/
ˆ— ÈKƒ¤2/
¨— - ØK…¤r…î¥BøR!©äK…ô¥B"öaTö¥AüÒ ~iTüad[OI¶õd¼ÚzÒH²·Ø=y$¯Æž<’ìÒ†G’=Zy$µG«uèÐJ#É4’W‡64’ìÏJ#É¡;i$¯¡;i$9t'$‡î䑼†îä‘äÐz7ŒÜÉ#yÜIÉ‘;‰$9r'‘ä5r'‘$GîØ#wRI^CwRIrìN*IŽÝI%©cw2IrìN&IŽÝÉ$yÝÉ$ÉL’léÉ$yµôd’dKO*I¶ô¤’Tü¡’i’À¿4I* -SL`*“–b’T–b’ÀR™$ “¤¢“”b’€RL’ŠR<P*“’Ê$© Å$¤kRL’ -RL@ŠIH1I -HÓ$HÓ$H1I -GÓ$ Ž¦H"Ž¦HR@š"‰@š" E$© •HG1Ià(&Iå¨L0ŠIF1I*F1I„QD0*‘d{‰d!’@QD(ŠHòAÑ4I -ãR%ãR%ãÒ%)ŒK—DŒ“L"Â¥LR‡L"À!“ -á0I¸4I¸4I -áÒ$ Â¥H"Â¥HR—"‰—"‰—"I!\Š$B\š$B\š$qi’ˆqi’ˆqi’Æ¥IŒC$âR$)ŒK‘DŒK‘DŒK‘äƒqi’Æ¥J"Æ¥J"Æ¥KR—.‰—2‰(—2I¡\Ê$Â2 ˜C&IÌa’€9L0‡IR9‡Iç0Ià&Iå& œÃ$s¨$t¨$& ¤Ã$)¨C$uˆ$°‘¤²N" ¨C$uˆ$uˆ$ ‘ÔI$©¤Ã$t˜$“¤’“Òa’@:L’Š:LP‡Iê0I*ëd’€:LP‡IRQ‡ê0I@&IE& ¨[ûÔa’TÔa’€:LP‡IRP—&‰X—&‰X—&Ia]š$ÁºIĺI -ëR$ëR$ëR$)¬K‘D¬Ã$êÒ$)¨K“D¨K“D¨K“¤ .M’@]Š$b]Š$ÛK(‘D¬K‘D¬K‘äƒui’Ö¥J"Ö¥J"Ö¥KRX—.‰X—2‰X—2Ia]Ê$b2 ¬C&IÖa’À:LX‡IRY‡Ië0I`&Ie& ¬Ã$u¨$•u¨$b& ¬Ã$)¬C$uI@"IE" ¬C$IÖI$y±N"I².D’DD’ëd’$ë6¨,Ö…IòBL’DL’DL’êd’$êd’$êd’¼P'“$Y'“$Y'“äÅ:Y É:™$É:™$/ÖÉ$IÖå>Ä:™$/ÖÉ$IÖÉ$IÖµì²$ë0I`& ¬“¤’“D¤C$éR$)¤K‘D¤K‘D¤K‘¤.E‘.M¡.M’‚º4I„º4I„º4I -êÒ$ Ô¥H"Ô!’l/ìVÿØ_ØIDºI>I‡IRI‡Jé½õ -êÒ%êR&êR&)¨K™D¨C&uÈ$‰:LP‡Iê0I*êd’@:LP‡IRQ‡Iê0I@*IE*‰P·ÊPê0I -êI@" ¨C$©¬C$uˆ$°‘¤²N" ¨C$uˆ$u˜$ “Ôa’TÔa’€:LP‡IRQ‡Iê0I@&IELH‡Iéd’TÐa -é0It)’t)’l/›,RºIºI>@—&I]ª$]ª$\’‚¹tI„¹”I„9d’B¹”ID9d(‡L’”“Iä0I€&I…& ”#íÊa’TÊa’@9L(‡JR)‡J"Êa’@9L’B9D(‡HåI*åI œD ‡HR!‡HåI "I¥& ”Ã$r˜$•r2I€& Ã$©Ã$r˜$@“¤B“Êa’@9L’Š9,0‡Iæ0I*æ0IÀÜÚG`“¤b“Ìa’€9L’‚¹4I„¹4I„¹4I -æÒ$ Ì¥H"Ì¥HR0—"‰0—"‰8—"Iá\Š$[z7a’ti’Ð¥I"Ð¥I"Ð¥IR@—&I.E‘.E’BºIDºIDºI>H—&I!]ª$"]ª$"]º$…ué’ˆu)“ˆu)“Ø¥L"Ø!“ -êÒ$ Ô¥H"Ô¥HRP‡H"Ò¥H"Ò¥HòAºe’Ô-•D¬[*‰`·\’B»å’wK&ï–LR€·d/e—2I2/M¨—& ØK“¤r“î¥IøÒ$©äK“ô¥IûPI*ûR%üÒ$~i’ü!’d[O"I¶õ$’¼ÚzI²—lScO"É«±'‘$»´!’dV8zõhÃ$ÉL’ìÐÊ$yuhÃ$Éþ¬L’º“Iòº“I’Cw2IrèN&ÉkèN&IÝE÷&Gîd’¼FîdäÈL’¹“Iò¹“I’#w¹ÜÉ$y
ÝÉ$ɱ;™$9v'“¤ŽÝa’0v‡IÂØ&I»Ã$Q‡‘„–"Imé!’ÐÒC$¡¥‡HRð—"‰ð·Lño™$€Ë$Ó$—IR¸L’``Š$bàI -—H".‘D\"É?"_ù¿†Ib[Í?Ä+éž ×_^I·õ˜¶3¾Ÿ—Õ§±ðJºe8Ì+ß/[yDzX£Ää¤xº¥•t½ŸúE,_lã—Ç•ZI·Ï¸4_-ûç¸c_ü7öχÌ2Iìá}XÔÂçˆ5Jž¦‘¥|ð'|¼Ö—š9Ö%?_¾<T®QâSœß<ß{’KBŒ§0=´m±òB”•ôé±F‰åøœgš%6—³ß±@‹«%öà>·\bæóNi—lö&ÙRè%ö}{¾~¹êˆû%fÉfè¾@‡ÔûÌØ£¯ø¶'OÆ-ÙÜ«*«”„~°½í’ço=°PE<×ÁÞ´£·µRÉsãÎݱê™Û¸_âÓd=L Lž-v½üg2Lìj
ï©táÿyÛìë‹•øðéÁb±’‡û[¿×b%Ï7‚AÜX°ÕËf:OoÙbÑËÅJ~>µI¬Ubã3-F]
[$–ú1èÁZ%?öס6pC{&ÝòⶵTI·ø}Ùåï׋HÊ0±o§÷Pd˜Ø‡ñl)¿D]=Ë2¹®TLl/›åb²û
ËG'n>
ö¡˜ì.©˜ì¦ø´÷Z%{,Ÿ†abóZ¼È
ËßÏ|éÜ0Ù--ûÍæ¹g&ÝÇ|bíEûk×,ĉ–Š‰å{Û3ñp9…î§)¹§bbÛØëƒbbd»äÿ+&ô¼ªóéeÝeÛ?ù“?þå—¿ýõÏþÓßüGû“ßuQ^ð•‹’ð•‹’ð•‹ò‚¯\à+%á+åE_©(I_©(I_©(/úÊFIÛœ±õž@0›T³° faÌÂ&Á,l‚Yس²Ia0›À`é(‹ÁòQÞ–‘²,%%Œ“òb0RÊ–:JB¥B%!ìBJ#åE`””$0NJ)¥'% ,)%Œ•ò0ZŠ]*_íNÄß\á¤ð7W8s…ñ7W8)üÍõIÄ_V8 ü²ÀI¡o.p"ú®}s“B_´Ñ+úb¥Tú¢¥@_´è+-¥Â-ø⥠+l[$6Nn+Z_Nq0]s7hs]`XX1nZ8&94a\~>
endstream
endobj
962 0 obj
<</Private 963 0 R/LastModified(D:20100413200510+02'00')>>
endobj
963 0 obj
<</RoundtripVersion 13/CreatorVersion 13/ContainerVersion 11/AIMetaData 964 0 R/AIPrivateData1 965 0 R/AIPrivateData2 966 0 R/AIPrivateData3 967 0 R/AIPrivateData4 968 0 R/NumBlock 4/RoundtripStreamType 1>>
endobj
964 0 obj
<</Length 974>>stream
+%!PS-Adobe-3.0
%%Creator: Adobe Illustrator(R) 13.0
%%AI8_CreatorVersion: 13.0.2
%%For: (Gilles Dubochet) ()
%%Title: (type_tags.ai)
%%CreationDate: 4/13/10 8:05 PM
%%BoundingBox: -227 -99 143 234
%%HiResBoundingBox: -226.5 -98.5 142.5908 233.748
%%DocumentProcessColors: Cyan Magenta Yellow Black
%AI5_FileFormat 9.0
%AI12_BuildNumber: 434
%AI3_ColorUsage: Color
%AI7_ImageSettings: 0
%%RGBProcessColor: 0 0 0 ([Registration])
%AI3_Cropmarks: -59.5 -62.5 -46.5 -49.5
%AI3_TemplateBox: 40.5 29.5 40.5 29.5
%AI3_TileBox: -239.5552 -349.6377 319.4453 433.3623
%AI3_DocumentPreview: None
%AI5_ArtSize: 841.8898 595.2756
%AI5_RulerUnits: 6
%AI9_ColorModel: 1
%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0
%AI5_TargetResolution: 800
%AI5_NumLayers: 5
%AI9_OpenToView: -285.3354 49.2085 4.4426 1589 965 18 0 0 470 360 0 0 1 1 1 0 1
%AI5_OpenViewLayers: 77777
%%PageOrigin:-399 227
%AI7_GridSettings: 72 8 72 8 1 0 0.8 0.8 0.8 0.9 0.9 0.9
%AI9_Flatten: 1
%AI12_CMSettings: 00.MS
%%EndComments
endstream
endobj
965 0 obj
<</Length 7512>>stream
+%%BoundingBox: -227 -63 143 234
%%HiResBoundingBox: -226.5 -62.001 142.5908 233.748
%AI7_Thumbnail: 128 104 8
%%BeginData: 7364 Hex Bytes
%0000330000660000990000CC0033000033330033660033990033CC0033FF
%0066000066330066660066990066CC0066FF009900009933009966009999
%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
%6666006666336666666666996666CC6666FF669900669933669966669999
%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
%9933009933339933669933999933CC9933FF996600996633996666996699
%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
%000011111111220000002200000022222222440000004400000044444444
%550000005500000055555555770000007700000077777777880000008800
%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
%524C45FD0AFFA8282F53FD7CFF06A8FF5359FD7AFFA92EA8FF537EFD7BFF
%53282E28A8FD27FF2E2828A8FD51FF847EAFFD27FF5953AFA928FD7BFF59
%2EFFA82FA8FD7AFF847E7E2E59FD7CFFA87D7DFDFCFFFDFCFFFD31FFA9FF
%FFFFA9FFFFFFA9FD76FFA9FFA9AFA9FFA9AFA9FFA9AFA9FD1AFFA87E537E
%A8FD2BFFA8A9A8AFA8FD23FFA9A9A8A9A8A9A8A9A8A9A8A9A8AFFD17FFA9
%7E282F282F282F2F7EA8FD26FFA8532F282F282F53A8FD22FFA9AFA9AFA9
%AFA9AFA9AFA9AFA9FD16FF7E2E0128062F292F292F062F7EFD23FFA85906
%28062F282F2829065384FD1FFFA8A9A8A9A8A9A8A9A8A9A8A984FD16FF84
%28062F292F292F29542F30292FA8FD21FFA853062928FD042F542F30292F
%84FD1FFFA9AFA9FFA9AFA9FFA9AFA9AFA9FD09FFA8A87DFF7DFFA8FD04FF
%A8280529282929535353292F292F292FA8FD1FFFA92F00280629062F292F
%292F292F292FA8FD1DFFA8A9A8A9A8A9A8A9A8A9A8A9A8FD04FFA87DFF7D
%FFA852275227277D27A8FFFFFF530628282F5AA9FD04FF7E302F302953FD
%1FFF7E06282FA984A82F7EA8A9847E2F302953FD1EFFA9AFA9AFA9AFA9AF
%A9AFA9A9A9FFFFFF52FF5227527D7D52527D527DF8A8FFFFA8002806297E
%FD07FF7E30292F06A8FD1DFFA905280653FFFFFFA9FD05FF7E292F0684FD
%1CFFA8A9A8A9A8A9A8A9A8A9A8A9A8AFFFFFA8527D7D27A8FD05527DFF7D
%A8FFFF5328282959FD04FFA9FD04FF7E302F2F59FD1DFF7D28282953FD0A
%FF5A292F53FD1DFFA9FFA9AFA9FFA9AFA9FFA9AFA9FD09FFA8FFA8FD06FF
%A82E002806A9FFFFFF7E067EFD04FF292F292FA8FD1CFF5300280653FD04
%FF5A5AA9FFFFFF7E2F292FA8FD1BFFA9A9A8A9A8A9A8A9A8A9A8A9A8FD14
%FF2828062FFD04FF2F2F29FD04FF542F2F28FD1DFF2E28062953FFFFFFA8
%2F067EFFFFFFA92F2F28FD1DFFA9AFA9AFA9AFA9AFA9AFA9AFA9FD12FFA8
%28052828FFFFFFA82F292FA8FFFFFF2F2F2929A8FD1BFF842805280659FF
%FFFF8407292FFFFFFF842F2929A8FD1BFFA8A9A8A9A8A9A8A9A8A9A8A9A8
%FD14FF2828062FFD04FF2F292FFD04FF54292F28FD1DFF5328282953FFFF
%FFA82F077EFFFFFFAF292F28FD1DFFA9FFA9FFA9FFA9FFA9FFA9FD15FF53
%002806A8FFFFFFA92984FFFFFFA8072F0653A8FD1CFF7D00280659FD04FF
%532FA8FFFFFF7E29282FA8FD1BFFFD04532E5353532E535353287EFD13FF
%7D2828282FFD09FF532F28297DFD1DFF7E28282853FD0AFF53282953FD1C
%FF5300280006002800060028000053FD13FFA92828060653FD07FF532928
%2828FD1FFF28280053FD09FF7E062806A8FD1CFF2E050028000600280006
%00280053FD14FFA8062828282E7E84AFA87E292F282F06A8FD1FFFA80628
%53FFFFFFA8A9FFFFA87E282F067DFD1DFF53002806280528062805280606
%53FD15FF7D0028052806280628062806280059FD21FF7D0053FFFFFF7E06
%2F28280628012EA8FD1DFF2E06002800280028002800280053FD04FFA8FF
%FFFFA8FFFFA8A8FFA8FD07FF7E06280628282806282828067EFD23FF5952
%FFFFFF7E28062828280053A8FD1EFF5300280528062805280628050653FF
%FFFF7D52FF7D52A852A852A8527DFF7D7DFD04FFA9A82828000600060028
%28A8FD24FFA8A8A9FFFF8400060028287DA8FD1FFF280600060028000600
%2800060059FFFFFFA852A8277DFF7D527DA8527D7D27A8FD07FFA87E597D
%537EA8FD2BFFA8282E7D7DFD22FF5300280528062805280628052853FFFF
%FFA87DA852527D52FF527DA852527D27FD3AFFA8FD25FF2E060028002800
%28002800280059FD04FF7DFFFFA8527D7D7DA87D7DFF7DA8FD60FF530028
%0628052806280528060653FD72FF2E05002800060028000600280053FD72
%FF5300280628052806280528060653FD72FF280000060006000600060006
%0053FD72FF7E2E532E5353532E5353532E537DFDFCFFFDFCFFFDFCFFFDFC
%FFFDFCFFFDFCFFFDFCFFFDFCFFFDFCFFFDFCFFFD9AFFCACAA8CAA8CAA8CA
%A8CAA8CAA8FD74FFFD0DCAFD18FFA8A8587C5883A8FD53FFCACAA8CAA8CA
%A8CAA8CAA8CAA8CAFD17FF7C51262D2C2D2C5151A8FD52FFFD0DCAFD15FF
%A82D2C262D2C512C2D2C2D2C7CA8FD29FFA87D5258515858A8FD1EFFA8CA
%A8CAA8CAA8CAA8CAA8CAA1FD05FFA8FFA8FD0DFFAE2D2D2D512D572D572D
%5757572C7CFD28FF7C51262D2C2D2C2D2D58A8FD1DFFCACACAFFCACACAFF
%FD05CAFFFFFFFD047DFD0DFF2D26262D2C2D2C5757582D572D572C7CFD25
%FFA82D2C262D2C2D2D572C572C2D7DFD1BFFA8CAA8CAA8CAA8CAA8CAA8CA
%A8FD04FFFD04527D7D7D275252A85252A8FFFF582C2C2D2C577CCFFD04FF
%FD04572CA8FD24FF2D2C2C51517C83FF57572D572D2D7DFD1BFFFD0DCAFF
%FFFF52A8522752FF525227A8A82752FFFFA82D042D2C2D83FD06FF572C57
%2D2D51FD23FF5126262D2CA8FFFFFF582C572C572C2D83FD19FFA8CAA8CA
%A8CAA8CAA8CAA8CAA8CAFFFFFFA8A8FFA8A87DFF7DA852A87D7DFFFFA726
%2D2D2D83FD05FFCFAE2D5757572D57A8FD21FF832D2C2D2C57A8FFFFFF58
%57335757572C7CFD1AFFCAFFCACACAFFCACACAFFCACACAFD12FF5226262D
%2DFD04FF832C572D572C572D572CA7FD21FF58042D2C51A8FD06FF7C2C57
%2D572CA8FD18FFCACAA8CAA8CAA8CAA8CAA8CAA8CAFD12FF7D042D267CFF
%FFFFCF2C572C572D572D572D2D58FD21FF272D262D2DFD07FF58572D5733
%2D7CFD19FFFD0DCAFD12FF5226262C51FFFFFF832D2C2D2C572C572C572C
%7CFD20FFA82D262D2657A7FD04FFA8A7582C572C572C58FD18FFCAFFCACA
%CAFFCACACAFFCACACAFD13FF7D262D267CFD04FF572D2C572D572D572D2D
%83FD20FFA8262D2C512D57A8FFFFFF57572D572D572D2D58FD18FFA176A1
%76A176A176A176A1769AA1FD12FF7D2D262D2CFD05FF7C7D7C572C572C2D
%2CAEFD20FF832D262D2C512CA8FFFFFF572C572D572C572C58FD18FF4BFD
%0420442020204420202076FD13FF272D262C7CFD07FF2D572D512658FD22
%FF262D2C2D2C57A8FFFFFF57572D572D572D2D7CFD18FF76204B444B204B
%444B204B444476FD13FF7C042D262C7CFD06FF572C2D2C2C7DFD21FFA851
%042D262D2CA8FFFFFF582C512C572C2D0483FD18FF4B20204B2044204B20
%44204B2076FD13FFAE52262D262D518383A8A7832D512D2C58FD23FF7C2D
%262D2C2DA7FFFFFFAEA857572D572C51AEFD18FF76204B444B204B444B20
%4B444476FD07FFA8FD0CFFA72D042D262D042C262D042D262651FD24FFAE
%2626262D047DFD05FF582C2D2C2C58FD19FF4B44204B2045204B2045204B
%2076FFFFFF7D7DFF52A87D52FF7D52A852FF527DFFFFFFA852042C262D26
%2D262D262C52FD26FFA8042D262D2CAEFD04FF512D2C2D51FD1AFF76204B
%204B444B204B444B204476FFFFFF52A87D52A8FF52A8277DA87DA85252FD
%04FFA87D27260426042604517DFD28FF7D04262626047C7D7D582D26262D
%A8FD1AFF4B442044204B2044204B20442076FFFFFFA8275252527D52A852
%27FF52A85227FD07FFA77D587D58CFFD2BFFA82D26262D262C042C262D58
%FD1CFF76204B204B444B204B444B204576FFFFFF7DA8FF7DA8FF7DFFFFA8
%FFA8FFFFA8FD3AFF7C51042D042626587DFD1DFF4B442045204B2045204B
%20452076FD4DFFCFFFA8A8A8FD20FF76204B444B204B444B204B444476FD
%72FF4B20204B2044204B2044204B2076FD72FF76204B444B204B444B204B
%444476FD72FF5244204B444B204B444B204B2076FDFCFFFDFCFFFDFCFFFD
%FCFFFDFCFFFD2FFFA8512CA8FD7BFFA82D588304A8FD2EFFAEFD4CFF27FF
%832C58FD2CFFAE5151A7FD4BFF2D517C04A8FD2CFF047D7D2C83FD4AFFA8
%7D58A8FD2DFF2DA8CF047DFD7BFF26587D26A7FD7BFFAE5158A8FD7EFFAE
%FD42FFFF
%%EndData
endstream
endobj
966 0 obj
<</Length 65536>>stream
+%AI12_CompressedDataxœì½ë’$Çu ùùµ?dFš-ºÂãܵ5««³CF3š•ÁŠÝ°G}ú"‰óôëçò?žÕ€@Jfè$Øíž‘™áŸŸãá_Æ_ý¿ùò³«oÿðøÙôl¸8ýÕ_ݼ{|øðöݯ.´öâóW¯>¾ÿðNª~ñÛ_^”úªú¢«Ï÷¯ü…ÿõñÝû—oßüJŸz6Ö'ïeë_üõËW¯ß_Ü~üÃÛç|üðË‹_ü²>÷»—^=Ög?üéÛǯ><|óþÙÃË_ò®u7·êÓóe™.Ëp±ÿjX.~óëúüõÛo^¼|óÍõÛþÕÅgã¸]|vež.Æi®Ïÿ§—¿}|þ¢õÙR_¶×ÿ/óøl9†½¾zz¶Í{Ýâöíó¯ß|øÍ»·Ïß¿¿yûêí»÷¿º¸ùÓÛ‹_?|SŸy¸øï¯^½ý§‹ëWÏÿ>mrÿö͇úÒ_ÿéݡuûÏ~ûøÍÇWïÒKþæññÅã‹ï~áÕçËW÷/_=ÖcõúáÃÅ!Gõêó2~uýñå«óñõëAœå»]}>}¥Ÿî÷ïëǪŸPþ-ÕÛWŸ¿®5_>~øP¿t}i™ßþõuþFµR¿ø»úÖ/µ!ëQþ¿ôݾ{ûíë‡w_·ýl9äh£üÿ¬Gn®5öºß=¾þöUm=°óPŸåÕñ/Uý>~è§Z¹,ãÅgSÝÉ:mÛÅTŽgó¼Lõ;MϦuœl›Ö +ÿøòñŸ~uñ7oß<Úá¹z÷áË—ÿ«~á}.ÏöýØ/–cy6nËjÏÿöã«Çw¿óRŽ°Vv˜~ýöÅã«Úc/÷¯ôè裴ÿ·üîáÝ7jïyûêãíÈûàOÕfø/z”n±Ø|ñíã›ß½ý¯úI?÷åÙ4-óEýŽã°×ãQ¿á¸^”e?.Žµöº]ßlÞ†‹iå틾¹:ÙŸì·ÙäOmÅßÔvýâÝËo^¾ùÕgSíèµÃ[‹ÿõ»—/ZƒoãÅnÿ§_èÙžþ;øÏ>y=><¾ñãR;ÚͯSÇžýúËú¶wo^ܼ}-íñ^ιÚcÞÔÎôêí7ö\ü[Ÿ©›üöôw§é¸ü‡o?<¾¯ûzõX¿øå7ïþññ¢ŒûåÕ‹—ïê3ï/¯ÞÕ§/ož?¾¨\x¸¼{xþñÃãåß|¨½ýñò^vºü}lñ`/yн]><ù®v•¯_=þóåC{mÿ ;ÎÎuËÓå£mú˜6}ŒM_Úî_Úk^¦×¼Œ×¼ÑÝŸ.ßÚkßÚkߦ׾׾µòÑ^úÑ^ú±½ôtù1^ûâá›oß]¾¨ðññòy=Þ—ï?<¾{%ßâýãs醗øXùùáòÛ‡wr¾ýãeÝâõÛxUÒ;=™ëÞ^\>ûmÅË7üpYOîr:_Úgˆ·{öæí‡__^Ý]~ñþÕÃû?ž¢êÛJ÷×/ß|l/âï?=¾¹|ýñ¼úôäuüýöÝ‹¯ë®^¾y”¿~xÿüã+)ð‚‡ZïïþßË—|ñöŸÞ\>þóóW¯õŸµw½|þðªn[}]Ïè—ož~Œo>ÊøòúmN¾þÐJv$*¶_~+ßüý·Ï/¯¬1®¼³ù_w—o¥¼yQ?ÒåãkýK;r=ĺS +¶O-µz«|ñò_J‰ƒÇü¿Ç¿¾~÷`-z÷ñÝ[ý¤z¦ÄçÖ’îîtùõËú…½{Ôw¾ü¶¾ÏÛÒA´Ûyö‡‡÷ñµP_úáo?¾¯]äty•ºè]ú÷•õŒ»øpwvh>·úÏswý<^ô¹½è{Ñi|ï/ì¿·Wü>ïæ÷öÔi©÷ï_^¦!^?<'ý½Ž +éÐýòù§ÞàÏÇ;ÙsÆ›ÕðîÝcÛ^‹üýº¥žÙ/ß¿n½1ÕüFÈóüÕã—ª!Çëyo·_׬&6½{ó¯Þ~›>dÔÔ!ëâ¿=¼ûöûv-ÍT‰ù¢ž!z>·Ãøöõ·’÷]|ùLJoõã~øã½¾òËÐ_=¼©8×úØ¥à§ößʳIV;]„û}Ÿ}ö=L\.®ß¤§ÿZ°\ǹ_É®ß<êg°š‹òËÓ'ê*sÇ‹ë5àþ¿Oƒü)Ã4ÌÃ2¬Ã6ÃÕp=ÜwÃ})¥ò¼,e«ÇQ®Êu¹)·å~Æ2Žã4Îã2®ã>ãÕx=ÞŒ·ãíi¼ï§aªÙñ4O5_›öéjºžn¦ÛénºŸkú\SÑš¾Íë¼ÍÇ|5_Ï7óí|7ß/ÃR–q©iв.Û²×íj¹9-·ËÝ:¬e×i]ÖuÝÖ}=Ö«õz½Yo×»õ~¶²Û¼-ÛZ“ž};êãj»Þn¶Ûín»ß‡½ècܧ}>íó¾ìë^_·K.xµ_×ÇÍ~»ßí÷GýþG9ê7:¦£~¼c9ê{Õýí‡ü¹:®ëã渻ú¸¿ªGëtUÍU=WÓUý>WõS_Wõ\Õ}_Õm®äÏu}ÜÔÇíÕ]}Ü_Ý_ú¨õº¼ø»«Óu=(×Ëõz]¿ƒ|¸k}ÛkÝǵü¹©Ûú¸»¾¿¾¿©uS[æf¼©‡ùf–Çéÿim;zëZûîÑ·Úƃ¶òTÒÒk´5}§í-->¢É·®ÑÅ‹·ùâ¾OGjyiû!µ½¶þé;šIàz¹‘°Ü×>@/˜½œ÷„»“wéSí¹K\E—ÐNÝB;…÷‰Uû„õ +é7§Ú-´c|²k,Ú5¬s\iç¸ÑÎq×:‡÷IûFí'í»v +ë·Ú%¬CÐrëÚæ7µÿ¥¶í[—ö•Öµö]»óÙÛøä<~¢ieÚùûZúÖ[ºœjc·¦Þõ¿óÓ½oñÖæ´º¶»¶|m÷“7½5þyó; +´ý
Òä¿Ö¬'€‡«“v:„q‚.!bÒNA· cÐ5è§Ú=¤ƒXG¡«´ÎK¤Ã|OZÛþ„þB;,ñоU{ªôÕ9ú«õXé³ÇÉ;í9”æ³ÎzƒÏ¬½Tú¨QHú¦ôKé•Ûtœj‡”î(Ž g½OúÞmíw¥ö¸¥öµ£ö²ÛÚ»ŠŽ+›v%éF÷µûLµÃ쵓Ülwõ#Nûrªàп¯-;ÕvÜkËÝÖ“|¬'öZÏçë«ÛzõÌÝj£Þ\ßÕ¯3Ý,µ—\ÝÜÜÜÝXÛÞßßßÝßÞßÔ3ùêþ¨g«}v¹Ÿï§ûñ¾Üw÷www·w7w×u˜8jçÚ*Ö–»¹t¼+wÃíýíÝíííM¥ÿ•ôšSåÓv»Öse®'ßx[n‡›ûún·õ=¯ë;õý·zz,uT˜êQn†J‘»J“›J•«úI÷úy×ú©çÊ:®‡ +£» +¥›ú•®êÛë¹²Ö“r®+͆ã¾vÕÛÚm¯k>êØêáXj'Ÿj‡/ÇPχ;åæM=K®Nõ¸íõèõTšë¡ë 6TþÞÕÓ‚Wõ„Ø뙹ÖC>ë9[¶¡žÉwµ)nê¹}Uf¯Í³ÖFškSU”u¨\¸«wSÛðª¶ä^Ûs:׶kó}eÌmeÍum÷Cù³V͵7ŒµOÔN8ÝWTÝÖ^r-å¨çûVy¶Ô4Õ~T¦a¼¯½ê¶öëÚÇŽÚÓ¶JÅ¥ö»©ö¿2å¾öÇÛÚ+¯ËÕ¿EÛ¶e¯k¤òÓ´¬¶«4ëé§lWiÖÓm×ÖªÖ¨§Óª•;{Ù~lÛ~²uÿÍÏÛݾÿšóö{[ødMüÓµ0çí8skÛÎõÕõ»šÉ\Ô2\”aš/OõUª¹~*VŠg£\Ÿ»¾4ŽDë‡ehã'2´Q2´92´E"%5¶³Aòv¸×üL†ÉÑc»M‡ÊÝc÷ëúoå‹z`'ƒ¦›§z$dä”±s×ãcÞExãY”7i”'#jŽôöR¼w’Oƒ>yX‚7i{-.Z(#±ŒÅ׳å*·Êãޢ“†Žò°}-,J¸¸iȸkØhÿx +îyä—è7Ú®´X,ÚôŠs]ä$8ltöØŸ"玞G7JŸÃé³iΚ]iÖóÞÛ6“Sw=ÕïayZ}»zPzd ‘¡F›Iûl>è #ÃŽ
<2ôÈàs¥Ùç®CB2-z~ÙP4ž´×:"ɘ$£’ŒK22Éؤq¥„o’Õ!J)¦fíí£>.ƒYuÐ:é¸%#׎^2~É&c˜Œb›Žd«ž}vÎO:¦ÞmÛîu|“îö¤ÃÜ͵ý¹ÒáîÐ!o×aO¾U¿EÀYÁIBæRä¡3,’ZKàs¯Ãc}h_õ}ßøãÖwñ°d“+CL±Ø4É2áâßl‰Çê-{<Žx\ŃÏâNõ¿Ûô¸‹Ç=Û!%=ÆxLé1Ÿ´ í±¤Çš[÷Ø»Çqþ8i_ñ‡Ô'4Ÿž¨›¾c^†©ºÑSïõôStÅç`òäÜ•'Ò5‰Ö™—âóq2S.§<ãò½ó-ÝŒKš[[¼M
¯NÞ`·Ö.Þräí0ÛAµÃ'ï+ìFÏ79ïîå,Ô³Q˜!§ç|ªçé¢zÀZtRG¬I"5HÉøTÇ&
,ôµ˜hÖÁFb¡kZ–J €NŠŸ+&†úaê™XãŒÍ‰¼¤ì6¹Tóó˜^5/¿©ß×BŒ–‘Ë|‘ÄA0|{’pAcËÉ7n5/·‰-ÅNFOO8)N¾rÆ´Hy¢8KA¤Òì/;cS+[[_iójãjÓZÃ.Þ¨‡7¦5dÑ&œµå¶SÅïQYs]?ëmô½„k[Iˆs¿Ú7=)ßìS$ý,=u0½¦TßSÃ3´¹Ìlz®f·)$#›|²ŽéºíäAá³v>o—;°ž„9¤ZÈë;îœ07š©\ë¹}¥çø¡Y‹>Nž¾XA 1k01i@¡!…=dŠNƒ‹;Ÿš¸UÛˆrE¸±k³錟³¢hÒA»† !ˆ%A·ŠH0r³dפHÓ¢“gF‘ÉC£”§\{žd™’Å,–/YN¬‘‹'Mw'Í›,sºò×ÒÓ§so2ÎëCGüáúì±ûãÐÿ·i¹ú8é_s÷`Ïfòòü^ù©¦ÿŒ?ÿ{vh¼¶Œ«]‰ž%Ó:4À¸ÑéÈQÃ:AŸ¤RrVßi5iÒdés‘:'~ªç\û²©p;¿f’”læJ§%¹ä5ëÔ¤ôGGïtzÒÆPFÐë“ÌSž
žŒœ:j¦1“ñ2FK¿J!gçâ#¥“2R2J¶1ÒFH»kOçäLì<9<'> ÎÞÌÏâNúË +_V8¦E…ƒõ¾’°Žÿ'
n<,¸ö¶dõë¡1„]£[5²˜µ…íaë`ƈD$*©Éæ`Øb9Ì/‡¹ópÆÅø(ÏׄOÆÉ~½>{¤Ñ÷¤–úÇùŸ~l¿ïGþ³¨ <
Æ>®Ð5QýcyòHË)þ¹=yìùaK¿{Ùáw,:L8nº‹û‰ž|úúlÉa +GçXFq‘~ÇjC¥>¥‹öyÚ÷,¦è–¢µÅh¶¾ðæ”–X•fëÒVï(Ú!ôøÄòþ¼ÀÿJÇÖ›65í«ûóâ±óUý¾xìäSÕ?hõØw®öh.ÊICïZðáK>b2[¯g¤ í¼îÃW~œ|ñG7«×ºÛĶNmŸE?rÀý Çnâ‰}DÒ‡?n?ßEü9¿jÐ~gÇï£F¿yûêï.nß~à7@jÌñ´îb|VÆå¢<Ûš ÊEq)nr]z]êWü¨ÓWßêüCñ_ùÛ?iñ?×þÏZùOóů/þî/´þo[ÿò=±ã×µª«ÿ5þnZÓ€\•·{£ïóÅXð·ÿÖŸñk?zG/ÿôœ¾ýZžmò‰ëÆëR?Ük¯;¤fÙK¹ÐWÚ,˸ÎZž×UÊóZ»ÛsÛb=|=Ã:NòY¼¬¯Ý¦îKßeš6YêÑ’*YÖ,/™÷q–r=ƒVÝd²öáíâƶ™d{©+¶I
R¤X?Q±]ÔS®–åCø»Ý¤jÙ¦Q_2¯»–e¡„–í]êâËÔPh•ºš¼ìúšJ9)×fÖ/·”Aߦ+{€¡žÚëQþ´ÚAÛ')WHlR>ä'ky™7ŸÚª“ÕMG¥G-O5–ºX÷ú—UÊË2mZ.›l“¾bßyAÝÙÁ0Êñ˜êZ7-×Qζ˜êá]©+è¯ +Ô0K¿â!ãž³žÐ{íûV^´¼Õpƒm¬ÅêW¬¹¾f·CR75ö웂ÚEœ’ûhU
Kô%5¨Ðò4Z^ÖÝ€V{¯ls_ÿ[æz,=è¤nœ‚tR,c#]-5qëH'u£}bíÐK=Ö‘NÊe^3éjÕ¾ÎtR.K#”§¥'Ý"§å¤“—ŒK#–‡Žtº×‘®–
ÛN:-/=é¤N“NÊÇØH'ûœ§žtòç¡‘NZi¤«åÑɤ«uºtµ¼ÎS#Ý"'åÚ‘nY*PfH·È¯½tµ<GOºZ·G#]-ïãÖH·Ôèk(éjÕ(? éj¹¶#<¿=éjݤ„wÒÕò²tµ¼KOºZ·KnÙž
õxC:)n¥'Ôík#–kuµ\äËfÔIà +ÔÕ²\÷ ÔIyzÔÉ6ÇÐP—ö!¨“â´ô¨“º25Ôék¶†:-¯=ê´nj¨“ò26ÔÉ׫§`‡:9ÛÞP§íY꤇ìSºÚ‘]Wi¨«E™x Ôi¿+=ê¤on¥¡®–kÜÑPW˺mFôqÙÔ)[¶†:-ï=ê´îh¨Óófj¨S
ê„5ÇÑP§å½¡NÊûñu5Ϙ§£#T-먓ruR.SéPWë¦u˜uR†=PWË£…ë®Ö”cÛƒtR®í¤“òºéæÈɳË1ä´l
ÈiU™rR.(…œ”{ƒ€œd]ÇQrò‹î”qRÜ,"ÆÉ7Û¦#§GkÞƒqµ¼J•WëöÁê”qµ|Ô*7ËÙX»vb\š‰ßrµ¸X•qµ¸BãjÝQ³÷`ܼ?½(WËÓ4/äjÝâq–B®–õØ +é¤ìçNnÓC7éäDí„RÒm’· ƒt›æSn×¼µ‘n×¼uìH'sü»ÅFJº]òÖaÒíš·vA]ÅSí¤+¨;4q-:™ª?kºC×}
Ôš¸.
uÓ̵Vu™k-w™«<ž¹–¡Ï\ËÐg®µü$s-C—¹–Òe®R<Ï\¥.g®ZN™k)O3W©Ë™k-w™«”Ï3WÙ&g®iʺò4s-¥Ï\õ5)sÕòYæªu)s•rÎ\Kyš¹–¡Ï\¥=å«ÃºãiâºkÞZ@LÀ¯FGEÝþ4oÝ%-GN§Ë)H·ë–sG:ÛFÙ”t»¦cnš¶J9§€NΚilÝ®Yë˜A·kÖÚ"º]³Ö)@·kÖ:?¬õÔUx™tƒæs›¤$Ú¶-X7Hæ:ì}\§?s´·ÜuÔUÓnÜu0¬‚;Ç6®wƒ¦¯@Þ ùëñ`'=¾vÏ´4ŽŒ;©+rúÁ»ÁŽh à
Ò +»1ˆ7ØAlÈ“~9¬÷*óÉc·¥ÏdMd`J½A3Ùqì
šÊ–µãÞ ¹¬ìðÉ×UâFŒ§Ùléb<Éfç _é²YY^4YzÜB<If§Æ½Q“Ù¹e³’ÌÎ[ŸÍJ2kl´lVQiÙ¬$³ËY6+ÉlŠñFï×–ÍNšÌ–~ÊN“Yòdš³ö#?J:g'ɬ
RmÎN“ÙÒæì$™]–6g'¹Ñ´ösv’ˆZ²9;Ifž6g'ɬ•Ûœ&³S›³ÓücŒ9;Mfç~ÎN’ÙmisvÀƒ9;Mf§~ήOf'Íe[2;=Íe'Me÷„L˸µ¯ÆZŒ×å²ÛaÚ‚{Òí–áØ;òI眎Š¾A“Ùq
ö
šÍÚ<`ÀON·ŠÌA?9Ê<¬?á.P*E‰f +šÖ6 +>w +^^½ûpûRïoûðîO¿ªU¿Ðºö¡_^\~ùAnãzñ‹ëë«çÏ?¾þíÛzÛÒ_^üŸòÂÿ7½BïÞ§÷ü”û÷ÉýSýEWßù¢Ïoí%ÿWý¯þï÷'VŠ—¶R¼þC–†¯¿øåÅßþ·£¿8}r]ôÙBs9KÏf&¥*ÏLꉼ¦uÒÇÓ™I¡Ò:¤uÒr kHë¤ó™IÅÅ––Iý̤”Ïg&í´;6ËžVHOf&µ*ÍL*³Ò̤2îlfR8§c++¤nfRŠç3“òÍò̤43©;›™”×æ™Éúw73)<:›™Tµ™Iùž‰årÎg&åHå™I!Iž™Ô¶8›™”&Î3“ÚÄifRϧ³™I9éòÌäVú™I9ãÏg&139)&*Ì#ŠöœÏLJ]ž™T>¥™IEØṲ̀Ôí¥E±‚½<3)åó™I©Ë3“º1¢X)žÏLê[o-Š•rž™´mú™IK0×·I3“rDÎi®ìL3“²¿<3)_ëlfRŽF¢¹¼<3©ïlfR;gš™”rž™”6;Ÿ™Ô¶N3“Ú_JZ"}<™Ôº©Q<aÆ–HOf&VifRËifRÊyfòÁ¯Z‚ÿPzËÒ‘E»D /ZGø@"ÒâóÚ…íЧø\C1èË:ÏK +Ðk×)vÁ¬èã2Í¥]`+l슓è5úì²wÐësÚ‚§’*Î)N=eÉqú8l¶
aúzø)O˜¾.ÃÙĄ࢞œKÓw÷#L¯§‚å)JŸêøµí)J_†á°‹'Déëæó9J_6‹}m¶&çÊÆ£WN÷󰫤},ªõ(}/‡Q<GéÇa3¥Å&^ ÒÁG«¤¯Å†eÑùɆ£ëäØYŒî“/„è벧«ê5gœmj7‡èûla¼‡è3S·¢¯Ã1Ÿ‡è,x DW̶]¿j¡/Ó¶¦ +NDÔµ8v²iD.éQ¸FÔR7»ÃaþiDØZ.sc€5˜¨|Ûµ”K75¢mSRK„‚„ÔúËÐ4¤–rí{Ì +»?-MC4N•“f9Fe‰ï²Fe-ò8÷Ûú‰Që<”À¨ÄÇÛÜsTNÔ4ŽÊнO£²ÍÊ£rÚsƒ©èÛGc©ÍGm,•ºak,¢¥¢oïcÏRÑ·í7– +K–©ÁTôíµô0-LåÍcƒieÈbõ
¦5D˜ÝW˜Š¾½SÕ·µƒ©úÛë0•ïå¤TšÊ¹=¸Måpí~¸ô´¨áR TŽÿæ/„oýˆ tÕå]S T{°¡5Pªö¶MA©ž=GTO¸}ìHªòövIÕÞn U3{.HÕÞ>ö +:-{šâ ÓªeÒéÛÌGNôaìH'GÒƒ^%6ç´é¤‡LËÒ‘NzÒbXRÒÍ0×I§=oÚ:ÒiïœFH'EÛ«‚Núó¶LèDÚ>æ1@§h9– +d¤“×X~c¤+-ctRµ´”Ußfn)«Jê=çê܆–±jc£”sÒA6ÏÜáœt¤ciëtØzy8§ýnê3Ví›–-KŸ‘â1·”u’ßÈXú”Uºød +:%ËÑrÖÉ—úgÐiÍ(è´¼Œ:EQÏ9Ými9«–‡–³ªç]žä¬“.ÈÝ:Î_' +éÇÜqNä`Q’rN›³]Þ¨ÅRæþú†t¤É˜d˜ƒ·`N:žMr6ÌùOš‚9é +«æjçY,_n˜“¥vÂ0'`Ù·†9)[¾Ü0W¼¹À\ñÜ Ì¿@™9§XÆ9‘ºmrÞ8W<Aî97꺄5snäFsRÖlÝ@§"¥Š:ñ³Eœ1ÐIi²ÀK@'J³_½ÐÌÓ:èD…Þ×–¹ÊóÃÚg®bSO[Ë\MùžtZ.}æªûm‰«JÜ6éª SKÜ&ntR§äwЩ9>µK¹òÑŠ…w:ùÆ¥´Äu´…Ñ:‘\ç£O\U„=æ +:±¶!²œ<bm{ k{[æ*Öö¼M:q¹>èFÑh™«jÚ6# Szìçè¤niñœÇ–¹š]ÝaNìr´ÄUÊÇ8椼•þ +„Ô¥%®±Çœ”‡µO\õ-Òž¯±GA§åK\µjn‰+®8 SGýèW9óÑWmN£”’NzÈb—$‚tÒ“¶¹%®£28@§oìóV霳ýê¯v¿ð蜓î|Ì}Þª?L0MÁ9ËÞòV-¡ƒszš4ÌiÑ®{(æDgáÜèë¦ÀÜ8ÅõqÅÜ8ùXßc®,âvkU¤JÃXÇœ”5U·ïjBw†œÔLÖ‚›j–ºß!'E›Æ‰ó¼Í턔ǥT‘ò¼ô+UÄÖ¶*âTø¶I?Eœ–‡~µŠîÖ.'(ãÔð¶ËFÊ8Õ¹íœ ÆIݶ¶Õ*&ŽÁ8)/Üãä:;•qÅÍƉ˺ïýr•¢“‹[0N¼Ù%嬢Ù[¿\Et\q`aœÛÆ/E\‘Y¿^
âj¡—2®–u医”91N|lòrƉ¿=ím¹Š<ïÌÆÒZÎ*ºöî±› ®–+¾ú«E¦2–¶ZEåk[y¢ˆ+$ q…g\!qƉò<Z~Sûzo«UŠäVe
ÈI¹øe* 'uÃÐV«Ä>rRž×~µŠ¾÷<äô5~mŽmºÕ*Z5µÕ**OmµŠ|=qƒ3äÄØÞ÷¶ZEÛsrÒE»~+ò‹žs[®RàSN»ÞØ/W‘î¹ÛJí62>5ÌÕò0Mýréå‹]DPÌ)X¶¶\EË–,æôL±LV9g¤Ù‚sJ¢¡_®¢ûÚr)ûl圖‡'ËUô·'·.œÓ™ÍiÎÉŽz (œ‹òØû¼UnŸ²Ûijt!ÏH'á~y*P‡À
êÄÞ^사¢N~ÁsÒ@œ“kK[7Y9;7ÔIy0Dêd·{iW[夆vå;£NÅñcÔ‰Ÿ=n-oÝdÙóÒçrò[@²²¶Ù9\÷µ¿àª“‹KË[õg)§¶2OÎÈ͸¨“u…óØ.DrtZÞ*?Xz}4w°lÚQ'Ž–†:Yq^ò…ñ±·±åâkÃdEÝà‹z2êL=k¬“ÅéëÒX7´ÁºÁ®ÖÉŸMëŠÏ5fÖ©ÝòV-—–·–âSž™ub_ï-oC{+Kc]-/ÃÒ³N~5khykìÖéÊâuòÖ–êä%-œ³-º¼U«¦–·ª:>µ¼µøOsu¤«rÜ[Þ*Í9m~N~qÚzÒÕžä÷=PÐ _·Ò”HÇ+{Ÿ·Êìx±ù8é42™î<UÐÕþ¼ùª™ + „C!É„C!pômç +I& +‰ƒÄ¹A’ ‡Aá0H I&ö„à q$™q$0.íC‡A’‡AâŒC q$™qn€8‡A’‡AâŒC q$™q$0Æ!dÆ! +Q³DŽ³4o¢f‰Ô[»ËŸ®9Ú]þ¤é&š[!º®dowù“²ßoDÍ]Š´÷wù“ºc˜/Ò>67@Vëxrõx™h•¾9í.Òu§£ÝåOºö2ÆP³DW0í.rRIØY"K“äÞ½¾š%ºÖèXC-™»’«%²ðFË;ª%R·´[’ÈüÆ<j–Èb&Y¾Ó~8–[[ªY"å²·»üÉZžµÝ“HÍ]ß3a–ÈBª Ó¤hYíFßƬ~Cý‰4WK¤¼¯í.B¡Z}«Œ<ök n–HyÛ]þfÓü0K:ŒºYF], ŒºXÒaÔÅ’À¨‹%QK2GÝ+ ŽºWu¯¤ã¨‹%ÀÔ¼’`©{%™¥®•K]+ –ºVÒ±Ôµ’`©k%S×J:˜ºV0u$`ê^IS÷J¦î• +®sÂa”dÂa”8áJ BI&B „C(q%‰qø$@ŸÈá“dÈ!”8äðI€>I¢: ”C'rè$™rè$PF@9t’Œ9t0‡NçðI2èðI > ¤Ã'I¤sÄA‡Mè°I2è°IâK¸MèÜ&ÉœÃ&sØ$p›$s›Îa“À9l’:l@‡Nâ Ã&ɤs›Ða“ + C!É C!t($€‡$ƒ‡Ðá +üF*×2…4"ðŸ’5"Ëà]ïPkd°…õ¼Åb×eu±Úˆ”[¯ÚH-ïËKµ¹7™Ï!k”äœÝ#A½×Ì«52IÇ°FäÛj÷YPkdÚÏnù`u8/Úåúø:OaHY.JjìÚHÝîÈÅmYM7"eY¿í›è¸$uî|¨7"e•(ÜÑ‹ì.&¸6"UûPB‘+yø È·Y0\‘o<.sh#ò™üA‘ç‡P@Ô‘ªÍ ±Fä ®f‘¨62ùÒßFµi½{¡k#µ¬kÐF¤7gtåCšs_ÆÐF¤Éýf#ªLjOÄ66í7¸ÛŽ62Èey#2Ì7ŸÃ¼‰íý³lv©}ÚcýQG ¯ØDµ¹XxŒM‘ëvÛÑ´91÷¸ï‰i#EV½OM©G\pŽ6R¬±¼˜6"×·§ä™„9š7RŒòÑ=gÝÏ2'm¤Ø’¹ÐFÒÝÉB‘…ÃÑ´‘â¿ð6âA¹ocÚHý†Øhª[ÚHÉÞ˜¯ªuzÛ7¼yͱ4oDŽÚ_ÂIE£X#ŽQ¤‘ŒQ¤Ç(ÎÅÉE£H#pi$si˜º5K±F2K] –º6,um¤c©k#ÁR×F€©[#LÝ ˜º50uk¤ƒ©[#S·F€)ÖH†)Ú0Ŧx#™¦x#ÐT½PŠ7’PŠ6JÑF@)ÚHF)Ú(um’¢$’b@R·F +=£ÜìÖHÆÜìÖ˜›Ýs³[#t³[#nvkÒÍndÒͦ +ÏåæðÜ-‰9<wKº9<—KbÏå’˜Ãs¹¤›Ãs¹„´ÖÝ’ˆöÜ-é¢=wK"Ús·$¢=wK2 +9ì ‡>åÐG +å°G ö”Ãù¤öH¥ö”ÃrØ#•rØ#P{ÊaÊ!@9ä(‡<R)‡="Ê!@9ä‘J9ä(‡<åG*åG ò”C©”CrÈ#P{¤R{¤”¸¶œ' ‡=ÂrâGD9¼‘¤œ¼‘å¶lv!}œ‚žCNÞÈ‹ròF’r[’8(ÞÈròFrGrG^“8’“8ää¼ 'o$)'o$)'o¤RNÊGRNÚHRNÚÈ‹rÒF’rk*hÒÈ‹r’F’r²F’rmuP’r²F’r²F’rn¼'k$'mÆ¡TÆ¡ˆqX#0k¤2kÆa +9¬ ‡5ä°F*ä°F€Ú“6R‡5ã°F`ÖÈ7Œ“5òbœ¬‘d\X#‰8Y#/ÄÉIÄÉIÄÉ©ˆ“4’ˆ“4’ˆ“4òBœ¬'i$'iä…8I#‰¸F’p’F^„“4’„“4’„“4ò"œ¤‘$œ¤‘$\Ë<îºÈƒg'—œk·Fqa@8 #®/zm¡*xþh%¾„Ãqø"qø" _Äá‹TÆá‹À8„‡0R‡0ãFÄ8|‘Ê8|‡/ãðE +ãP=`ºŒC©ŒCqeJd¹îâ$‹@8l‡-R ‡-á°E ¶He¶Œ“.’ˆ“.òBœtkW‘ +·E^ˆ“-’ˆ“-’ˆ“-òBœl‘Dœl‘Dœl‘âd‹$⤋$⤋TÆÉIÆÉIƵì¿×e‹TÆuÙ"0®Ër}Ï6bB®Ër]¶ë²E +äºd ×%‹ +¹Žâ"ÈuÉ"@®K©ë’E€àr]¶H…\—-’ÛÊr]¶H‹"¢\—'åº<‘J¹~ÐèÂñðô! ×å‰TÈuy"@®ŸIbwº<‘ +¹.OÈu‰"@Q¤BQÈ!Šrx"ròD`žŒ“'R‡ââÐD@šHEšˆ+ûˆå@\©ŒCrX"@K¤BKÈa‰ +9, ×¥‰@¹.M¤R®KåzX"@®Ë©ë²D€\KÆuY"•q]–Œë²D`\—%R×Ãq]šˆë{®”SL1O q}ÏypG\—%ò‰8,‘Š8,‡%â©€ÃpX" +8ì +IÌ…’”k«’”“’”“’”“ò¢œ¬(‡åÐB*åÆ2¡çH+Èa…TÈa… +ùd\Z!ri…@¹´BÀ\Z!•si… +¿´A :ôK¤à/m +bÿõ:óî‚X̾ȸ Ï¿ýkƒbÿ~Zû¸ Ö£<â ¢/p‡òü{³®1Â¥;VŒA±Žëùä.ƒ<ÿ~nx–Ë Þ×
‰Åò¬Iëþ׬ó|Hø…» Ö“±N.ˆõb¤Î¸b=”×RE
[º Öñ÷%úä‚ØpÃÜ !Äb6))#Ä~b(ŒÆôÿ"ù¸ÄÞÓñ1‡íL#ÄG:ÞBˆ—ô–BˆéÓîM!ÄÎf"*H±~™~…bÿ¶a„û·=jþ !v•ìž „ØU´9-Œï/®ß¸b±!kÄf´íæX§#Äî]?Öê$#º¦þ£„Ø¿µŠˆ+!öŒ<·–ßøXŸÅ\Zg·µ‹ï”Bšå-ÿŽ/Wû<Ÿm¬¥Fìñíù›è2—Ÿ˜boÀñlŠb¯™5lpBì5œ[.h⯤õÎ-!'¤ÍXINˆuæo9!ÞáçÆ¥Û…ÖÛq)ÄD¬C’Ïçáû9cÕwBìŸ[¼lî„ظʱÖr'Äbϧ'3è8"Íÿí>¢~CÁ‹fã78!öokúà„Ø8¯ë%…XÌZ‹H!öï+öñ,*çYÿÿÁ © •’ •He„¼@*#JIJy‘TFH’TFH’TFÈ‹¤2B§¡„$M¥„¼h*%$i*%$i*%äES)!IS)!àTFȧ2B§2B§2B^8•’8•N1B*NÑBÀ)^<Å©<Å§î… +RÔ@ŠHQC +H1C +èÐE +ç0FàƜé¤Ãt2Ft2F^ “1’ ƒ¸€NÊÈtRF +;`‡A’°“ARa'$a·-,;ì$¼`'$i'$i·)‹¤’¤’¤’íd$íd$íd¼h'ý#i'…$i'…äE;)$I;öíB"yÁNIÂ.$’d]ËNËY~a™Çɺ–s¾Á:9$/ÖÉ!u8$°‡¤²n¬U¦…C"uH$uH$B ¨Ã!©¨Ã!u8$ ‡¤¢‡Ôá€:’Š:I$‰Ò!‘|.’‚ºTH`]*$‚]$•viw)À»H*ðÒ xi€¼4H*óÒ z©€½TH*÷PHà^*$€/’J¾TH@_*$bIe_$À/
è—IÅI¶õdd[OÉ«'$Ûz‹mÑØ“GòjìÉ#É.mx$Ù£•GR{´Z׈4’ìÐJ#yuhC#Éþ¬4’º“Fòº“F’CwÒHrèNÉkèNIÝ©wÃÈ<’×È$¹“H’#wI^#wIräŽ}0r'•ä5t'•$ÇäØT’:v'“$Çîd’äØL’×ØL’ìÐÊ$É–žL’WKO&I¶ô¤’dKO*IÅ*‰ð—& üK“¤0MˆIÓ$©L“b’ÀÀ4I*S%ƒ©’ÀÁTI>@øß²I²…?ôRI¶˜»M•Äè»—d³yf’‡K²Å8jÊ$ÖÀ¹ï”I¶×OB&Ùl$e¤Lbyëg8>Fmó§˜$óçøh`’L¨9Ž4Iž#Û2]V&És$Od™$Ï‘øÍÃ$yþ½š$Ó“›:&‰Íï×ZVÄ:N6©Ÿ¸Jbø6Ó$±ùèk;Ó$«7´ø_÷•"Ém™ås‰$÷Ïñañf°D’'fgŒHbŸIËÅ@$±ÏäsdüÄnwëV ’ÜŽ«%’X€Å…0I¬_aiK˜$öRù 2I†5SÇÁoîR§yp¥I2|¥§–&ÉÐ÷À#“Ä®’¥üa’_骧Ibáí|›$Ã×áêi’ŒŸã%Ç$™¶àX_¿¡ÿÞZÄM’é“*gš$öôæ’,2I,kÇÀ´öqx÷“ÄÒmìãÌß±aVëXû“dúÊZ^ä¹ó£¬{â&ÉóøZ2â-ó,³4IìͼO~CdÖ|?—HòÜÉË®ˆD’fw+×— ‘ÄÙýX"‰µ·k‰$-(ŸÏçᦺ]¤Ib
‹ý\&IYc,M{ç¹L’MUû1I¶põ›0I¶Ÿe‡…H²Yù\"ÉVe2åIÙëЯ%’Ø6ZmÄSž÷ñGXñéŸo’T¢’ +RL@ºö Å$© Å$¤˜$€“¤€4M4M“¤p4M’àhŠ$âhŠ$¤)’¤)’ +R‰$p“Žb’TŽÊ$£˜$`“¤b“DE$£I¶—H" E$¢ˆ$M“¤0.U1.U1.]’¸tIÄ8É$"\Ê$…pÈ$2 €C&IÀa’ +8L +êÒ$ Ô¥H"Ö¥H²½„²IĺIĺI>X—&Ia]ª$b]ª$b]º$…ué’ˆu)“ˆu)“Ö¥L"Ö!“À:d’d& ¬Ã$u˜$•u˜$°“Öa’TÖa’À:LX‡JRY‡J"Öa’À:L’Â:DX'‘Ô!’TÔ!’À:D’dD’ë$’$ëB$IÔI$y±N&I²nƒÊb]˜$/ÔÉ$IÔÉ$IÔÉ$y¡N&I¢N&I¢N&Éu2I’u2I’u2I^¬“’¬“I’¬“IòbL’d]îC¬“IòbL’dL’d]Ë.K²“Öa’Àº0I*é0ID:D‘.E’BºIDºIDºI +éR$éÒ$êÒ$)¨K“D¨K“D¨K“¤ .M’@]Š$B"ÉöÒÉnõý…M‘D¤K‘ä“t˜$•t¨$®Ñ[Ðá’TÐá’ +9L ‡Iä0I*ä0I & ”Ã$©˜Ãs˜$`“¤b“Ì}æ0I*æ0IÀ& ˜Ã$)˜K“D˜K“D˜K“¤`.M’À\Š$Â\Š$s)’s)’ˆs)’Î¥H²¥w&‰@—&I]š$]š$]š$ti’éR$éR$)¤K‘D¤K‘D¤K‘äƒti’Ò¥J"Ò¥J"Ò¥KRX—.‰X—2‰X—2I]Ê$‚2 °C&IØÉ$v˜$À“¤Â“Øa’ +;L`‡IìPI*ìPI;L`‡IR`‡HìI€"I…" °“HìI*ìI€"IÂN"Év2Iv\ìd’¼`'“$i'“$i·1eQh'“$i'“$i'“äE;™$I;™$I;™$/ÚÉIÚÉ$IÚÉ$yÑN&IÒ.÷!Ú…Iò‚L’„]˜$ɺ–=–d& ¬Ã$u˜$•u˜$ÁºIĺI +ëI„ºI„ºI +êR$êÒ$êÒ$)¨K“D¨K“D¨K“¤ .M’@]Š$B]Š$uˆ$"]Š$"]Š$¤[&IAÝRIĺ¥’vË%)´[.‰p·dñnÉ$xK&ñR&y)“$óÒ$zi’€½4I*÷0Ià^š$€/M’J¾4I@_š$°•¤²/UÁ/Mè—&IÁ"I¶õ$’d[O"É«'‘$ÛzÉ65ö$’¼{I²K"Iöh…£W6L’ìÐÊ$ÉL’W‡6L’ìÏÊ$É¡;™$¯¡;™$9t'“$‡îd’¼†îd’äÐ]toräN&ÉkäNHŽÜÉ$É‘;™$¯‘;™$9r—ûÐÈL’×ÐL’»“I’cw2IêØ& cw˜$ŒÝa’Ô±;LuhIhé!’Ô–" -=DZzˆ$)’Ë$ÿ–IR ër±.×8ër“º\ãD¬Ë5NÄ:9Y¨Ë5N„:™)I:©)/ÐINIÎa§$çÐS^œÃOÙÒLIΡ¦TΡ¦$çpSuÈ)/Ôa§$êÐSuø)uè)‰:ü”d•ê0Tu¹Ø‰XÇb'u¹Ø‰P—‹u¹ØIA].T"Ôåb'Áº\ë¤À.×:ìÖ.v¹ÖI†Š`‡ ìT*ìd¨À:X‡¡Ra‡¡ìPT€ŠJ…Š °CQv(*v(*¢† ´ÃP©´ÃPw*àC¥âCÜIQv(*w(*àEÜ¡¨|âE¥âEÜ¡¨€;•Š;áCàa¨Tàa¨@<ˆ‡¡R‰‡¤ñ\J¹W;—;)ÈËåN„¼\îDÈËåN @@ -4459,502 +4442,532 @@ K2O ïri/—Fðri”¼\EÀË¥Q¼\e/—FðZx-/àá´$ðZxX-/ࡵl-É;Œ–Ê;Œ–JK§å<¤–VK¥ ñ[z.«¤Ù¸ ^K%bÄClxˆ-•xˆ-³âa¶Tâa¶@<̇ÙR‘‡Ù"ä!¶À<Ä–Ê<ʇØó[*ó[€fÐÃl©ÐÃlz˜-@³åz˜-z˜-@³èa¶Tìa¶{ˆ-`±¥r±î!¶À=Ä–Ê=¹-pÏÒ•#[!¸—«¤îå*)â^®’"îå*)…{¹JŠ¸—«¤ˆ{¹LÊâ^®’"îá¶$÷[^ÜCoIîá·$÷\^ÜÃpÙp[’{È-•{È-É=ì–Å=é-oîÉoYÜÛÒâž—Ê= .|2\ø¶œë(à“ã²ÀÇr)€åR*øX.ð±\ àc¹” ->–:|,—"ð±ZJ«¥ --˃³ôö1<_Ó²X~À¶yI5ÛÿãóþßOðï<~üŸ~üßþ÷íÇ¿ôø¿ÿ³è!¼öùk‰i¿?~ý!RéËßzÅøí×ïìÏb¿ÿ! ‡öÿŒ‰Og%²üž‡É>;ö?ÆûX kìÓZO® ýÿqŒíÇøg?|ã)ýq¼|ço{³5´îH›¶´ï_#vÝQ}\–ú´/bá‚Ýry?ÊžýË„Âî)Ý6†uYGõò”àòÓuS<¯úTk}÷obüåÓ‘iÓú×ÎæÉV×Ø;°Êö¶éOOG¼,g×–éjž2æ˹G®Æe3{|¯ÿÝ1‰zß×ëmÚý¸gžãÑ¢WÏIN{"ËI2³¬“<ž/ÕEÿý$#2ëIzŠÉµçIzÚ•çxœ,±œã³ÛicøœedoäIö+Ò’8É_t’m·ušŽ×I6ûª\wžäÓígTÃ÷“ôÇƲ’ËIÚ°Ö¹5NÒ:ǾçIZ¿Þ¦õêIöͧ^9Ç6Ÿ›o+è$m˜ÅÊ‚—s|þðó%<ó[ö='iÖeþÚçYÛçée>-=ÅNò¶^å~ßÑý¾í'Ï?ϧeuzæ·ÍJ?Wz»R-µs÷L¥ËæÎÓýÏ¿§e;[ìÑòȦûmÌêxÞ1ªxoû²ýÞÇ)fݲ,YÿÌâÇž‘tÈ[8öô¦Ÿ;|Ú:ÍáêÃþûn½l?¶-D¯c!º³…§öü¿Ï±NSžž?ÍÕ,[o¹_þ§Uºß<WÂÿœg9Ÿ\2ÿk0‡_2¡°“²çD×ìù_·9w\3ÿÂoÖ"9òšÙ´€xqͺ¥cïçëšukVXN‰®Y·7ú9®Y·–ÊsÇê5ë67l×Q×̆½-–kfó!—Ý«rÍl¤ÜF×¹f6óbe^uÉl€~ŸóuÉúˆM¹fÝùƙ׬Û8eõ¢=¹[JÏYW÷XÍò -vKêõà©;²Ñ/ússä¥zÚ‰qæžç1û8FmP+vaçñÝ£ú%÷ò6¢ÿsN8Üø{ØJDpšPǶ?/”m°qמ»
Ä}Ñ|”3v`â†þ˜7¡ýÈläê»Gð%mØëÛzùs¿Þ:WÈêÅDÐW~Qði×)¨{dÁM×ÒÂsÓ¡ùb¹Ú«®¤¶ýîèÐf·LíÂÆéâОð8¸ÊÃZ‘~—fóé©_qŸ§áëÞÙôòë3·¨kï{?§h^ ÛF¿|¯ÃæÁŽ3ÿX\‡Ó¬SÁeéRÜ#×ц‡®ÃîÐQØZ² -ÚJÀœk¨µWýE;8÷Ø“t"¸?-8q("v üùÎEñgS±;÷h)>Úc^/I¿ïnŠÆU±Ö–Ų_eɳ¯-M·×ÍaYG[ÁçèéŸó<=ã)ñ6'OóŒWäŸ<b¦‹XÐ’.f¾û—.€…‰a š#8‰Móhb§62¿·æ7k³ydšDÏY5€ˆwÔêqñÄ—vÐÂŽmoÁX"‚íÊŒ›?5×ă+܆8€mrÿ=y5‚žª"œL®`/°óÒL_öÕîc¿Cçðìââ.ú9Dðùîk6Ì»µÏ=ܦÛvzs{cŸóhº±Ï#räï]ãÕÙ^ñ§l€" <;·©¼‰UaæÎz¶ØÍÈèÎ\˜¦Z;ŽlùjÜ—»Æ½ãÕ¸¯H -}ßíËúÕsí“s³&Glú<ß¼‰MË4Ëkzê÷ÃzÚ|òNóÕ,hi3ñ±ë¢úL.€í{°ÏG™m÷üÖã·øáõExú -‰æF(³•¸/{×äO™LÁ§ã§kíO·‚ÇEОÂØ4]Öx¬¬®ßJŽkWpS÷¿Ï±ç¯}rNˆ/¢Nì:þçùpO¼
‡m÷úØ.mzsF¢ˆo×µ÷Zãçžáxžñç
.C;Ø»¾Ö~lÇdÓc}6טÏZ¼WÏÇäi -é’<ºšÙ¶qXûЋuíQm/Ž`‹¯œ
çÆè7Á7NâX”§Ï¿`þPG¡3öï§y˜=.»þ‰|¾f“Ã÷½ÇçtÆŒjüý-®À9£1?W;å´"ëíÙuYΑƒ ù§‚ô¹ós]Z¬2ÝøñåEoµ¥½›å×ôŽ×Ì‚ÛÎ!]|Ÿ¬ÀP¶Éx{OKâ¶GpxqÜÁ‰ÒJ:¬¬&§êßݯj¥x˜õDе5Sâà Îâòiá…ã{îAšzVwXÁì²{,~oµ+ò#æu`õ)xe?xD·(~oÍOÌmןúnPO]îmÏÄ»~²#¾æVÛä<'[àÆægÒÎÒòbg4ºtË/5Ž3›°ÏÖÙþ9äjÄÖ¦x*8ïäŽá,ÏŒçÃÅŸë•:1tÑnAvegt¬l¥¦¹ôžð|¡¶÷ËÕO/|¹çh)ødíß±‚_Ùi •ñ×öl1¯ï†™¼9P¢¦¥¹—9¦5'ñ°ÞÆÕd¶&¾âûIïàÌw!ï®Ï`Í|o¢½¿FIÛ×T°1:é âüœ¯ùµ -lw/PÁv7ë8Dïf„¼¿ÎÊ‚.,ðÇŽh=ùìóÆ…ÊçÛåÆÕ‰ïVo«×æùd?yŸ+‡(n†‰<ê‰Ñ êºÙx0¯6™ù?\‚{ª'·—1¯qI_òb8ÁK¥EÌëTEp‹kåÉÑôƯ™‡ÕJ_Ðwà‡µÍ(»¨Æªs÷m„À)Îv»JÑ;æ¾ßÍ*Žå¨æ¥³}¢{Ž¬^V‘Õ‚>ÿ^[…t,®Ëììö´¦3]´Á\Ãf£:=â¯ífWŒViŒá=
¨ö¿gËÂ;4ï2Ä^[L3G8 ¾©pF×h×Ïm -}…›
ºÜ·#*~ÿm¤ütM6nOŸékhn!M6>ÿçÜÎEì÷¶»}ð\.k³Ø4ãhVrã²ý>_:„ùÕ‚6#nƒÃˆf°·˜}ù§ÅÚcç›Ú(ôèöOÔ³ÏÆ© -ÞÑVà -ó̬pSúÐ,°Ï×ÅD‡÷æ×É*iÇ7Й<s¯
Hl-:˯°/9ÁqÜwó"zú!Ak óvMÓP=ⱟ‚§îxP£i5¨i#Nw…i•xQ"‡d‹‚‚¼Ÿ¶öZLdÚœ}žîáÉm¤˜÷CÜ% -úýú^‘î‡c3]lO‚ ø -ÕmO3Å -/AÏ ]A>ú>˜õÞ¶w2¯2ØæϪÏùöé|ϸKc1°·v—#8¹£·4GPß!%eEÌëÕfŒŸŸ{$FÕ-H½±]‚ +Í6ô˜xFø/Êóäd?*¿YÉ3ýø|èOÞtÝf°VO„w|ïQžëŸœ—î‡'dþ(Ç¡Käèý)’]öCà}Ü™ä«Qƶ÷¤3?ŸV¾nRð©k/c¿h8rú°rÝÒgøtxúu¤Wmù0B3Ì¢¬«6“ü6öÒ6]¢®c*A%QÒ—$|fZK·né¦$·Ó²Nâ°ÜfR¢Çʇs[ÅùzE{ÃÖq±òwARÝ5ÚÕ,Y¸YSm³!o†‰FÜ–íù5€Fh\ݸ¬=^û•†U—Åäa«M¬mcì×gç>¾
6Þ³W¸uÆ©¼¨m¤Yšnª·VëCÕÛêi³»
í~¯ì ½ÂtÒm¯»?XÖe8¶÷(³iÜUÛßÃ4
0—NkS6ÁGБÀ"\GÌ1e¸fgìâcÑ&wÚÿF2fWí¹³ûþ+Ñ]±K¨‘ç xNnïór·äµñ¬ü÷¶w,8ß•3‡ ŽHëf+ì•qƳleïÜ«½˜Á›~ðàšDÀ“§§Î3^<߶ý#k¬'t…cNЃ¶ˆc€PY¬ß\Á/1l÷§
ñµK[ÃÌÿYÚêH–ù–[!Ë8ÚÙ®|£½ZdÇjêƲ橇×BÖùlzst¬Rʶ3´Èhå$¬à(ŒO0˜wpä /åÁ#ÓK'ß^»·ÆÒfˆÀqi5#ö -ú -ä¼Ã¾fÁÓëÕÐA¿ãca=*½¡ -rº¾àø{Û=j.EÐkD¶H¬ÚBUûNïqÏ¡*+‰ÒÕÓs#/º Öà~œ«û¸Âþ½ˆàv3,çëhÆ_š>¡’AàÞîóc[“éþ˜W}ñ #? -æ
Ûûç¶#ì6$Å ÷ -Zÿ´¯›@Øðz“á嵂´j:ÚíºãXdô_ÛN]o_²…)¦Á'?OáµíÞ6m{çtÄŠù<¿/a®a‹Â÷NDoÇ s³Â6`¬A5_ðC±Äíf=ÌÌÇÐgÐ>¶=&¼Ðo{m¼ºÑF}…ÉC(OÁÞ’‚×ä´ö]
¤òp4RYËÑÖ뺂½L¬huÞÃX!cì—‚–¡T‚¼Ïç¶}l{FYÍ8 -:#C+ƒ†;k#èì‡ck;Bmâ=Ñf²–£q[´ì|®ëj³epÜr2Cõ®<ÜzG(t‚‰iÁqH*ºxˆ¬ª3e]¥î¢‹¯¹y›ð}ù -û2v?Õ¾¹õéΛþêã¥s¸pëãc[ïÙx0¶~ô*ÕÝ´ŽFÑ”-¸~U¸«=ÝBðŒg62û¦(ƒÈ²`åÿÊá
½$;[Ù«q³íµ³-9còqyÁ¼¾ø{ÛKùªÝËïŠy}ƒ‘Sm_ô{ñÈ>T#Ó$Z´»ËžµÑûÕK0ó$ŸÊ²W'÷ V¿ƒýg-²öGÍDqújúR&濹jÛU´Õ{†>†÷«Þ¯´ŸPcfÊ›ÏOóæ× ¿L¼x -·-'c,¨–‰‹QúCc×vÞ?£vkD|FMПå¹ÒRÜÁR/Öõ6ÏDó:²xų\
Mïí^¼x– _ ãØæǶæá¦JMŸÁó¸×'l…™ú±½Î®–ûî=àæXKƒ‹ãsu¿>‡ZsöX°GŸ÷ìÙî»V}Í4•mÃý×49/ãã,É
ÛAot›5j¬
u -öKXýæìÜþõŸÿá©ÊÇGªò¿ù'¥+[›Ý?Î6;es®È*Á»Â_ßá¦tŽ¯ïüFxíä÷ÿLeð5C¾«ò…{
þLd-MäŸHÝ1ëZ9`þÌLöØɼð4²úÛƒ^ˆê»<žTKýo×}-J¿žW‹ân>ÞУ[¿Q.¶VÅví‘ÏäAÏ–ýâ;8"-®¼Ä¶;c#Ñ(Ø.œ%/Ù¢ -Ô>Ë€‡&·ëŽö÷ˆ‰Ö†Ét¶yrmŽ¡eéû_—4« -¸EVH^Íl©>tyÝ’‰à®NΈ²©±ß9Yº¡:<AMùùJç;è‘Ö4]’;8ï¼Ág׶^?J;¶úâÚ¬X¢²JãC\Á&ð /Ì°µž;à›&~U˜ÑÖ5Ã-Ø2¯eDµª=äA/û}ÂÛ¥ó¡áØÁŒªõàäÀÖ‰õXs!¯‘ö™ð%Ùc§g,퇺Eùß4uƒ†¿wJŸÿ}œ]×Èß{±w=²ß_3~?U0Ѓ^,/‚6î;¸äìøßòRªô²¾í.9Ç*×1¾5ã3ÊFË[Ц(f%‚îiž®]Ü2âluµï5?ÆGÙÂ^4)Ž×~دú•Mõ"õ#üóB¹OpDV”NøâIª“JK¯´šV<,àãö´ÕFµ¯ŸæÁkßyËûž»½Þ-v;£äçºhÜÎlÕhšK!³ðó1Ðánm\:„¹qƒÛ©§fFµÝÉSçkRÞˆÖâÕ¶>ñ99±-ì+-Õ fá,ì#;q´‘ÑoÁûܸâÑöà¸yǘ³° -=ض{€Y›C›*Oß‚Ç ;æD+ÅÖe‹§f˜‰ÙöovÀÔ‡f“Ùb¼:1Ÿ`ÁÙöÆs°–3¶õrµc^(—¦ˆ^ÝMgm©#ð qv@&ˆÊ-HZ<ï››AWkãòœÑÚ}aÂ/ðÑœƒòuxŠÆzì5Ò(,¸8«cxPC<~ªÇ•;8çq³m<ÜVÈàȯMøB¶¥OVÇuAMÛ²µžÙR;—ÅRt8©ø\Zèì<,wÆ»ç½~½O’v4¹jÁ¹Þ±oÈïXÇ;±r€^ðè-Øy_Ü/ø¶½ÉL*ìdcëG>°C1ÒÙ†ÇÁ38c¶\»ÍßkÐ¥|}Fý‚zÊ-;˜ÛÎ;o“?¹ô¯’þD“ÇJIÜä8íše²è½s -ÞÜòÝvL·`o‡ß”‰éOÁ}äž;ªK@3פ§æÜÍ)˜˜ÀõZ\(ÂgS*ÎÖõÞܤ‹Úa턼ó§ö|on™a~`*«a~S~+hRO
vŒWÞ¦…›Æ´|[uãf¶-ØxF£ý>}á^…ït7tÎØ«Ê£˜¤Öø†xf ;`XnµGMáí}™šzñX]Y'žëÇ‹7T(Ç‚;oˆr||¯“7ä:42ia_Z6ö«t;“ÖصÛVš<ždë=r«q1©7i31‘“ÖU9‚ûMF€VRŠh~0ÝMÿª°¯e ÃjìÁË$ÅaÅàÁæCÑŠyOì¶Óeì›þÞ¹|ªoÓ<)”覹daù–v•âɪSG+>E°óßpÓ)›ßc
ÓØA4Å-èµËâìU‡ÝÃX“^¿ïàäìU%vM#_›¢gЂJ¢Yxð-ó›ä[v0:@öõ[¿Þ§2¥*µé¡ã®W!‚[¼1¾%—vTŽõEÐ×´#úTÕKÛ©
ö±ƒ#¸£^Í'\ÊõÛö¸©ïÛ°JSa>ÂG¾G—®Ík²¯»£à}äÙÞcí`Nå°w‰×Û‘ù#"¨7Ž')vpdŸhF
ÌŸ¼Úˆœ.Û6zZ<ò»3Èç<xÁñ*Lt»ÇÁÓ¿ÈÍ‘±«9 -w¼ÏÁ-›s¼s–%Γ¨"—úýä“r)_ò ö|ñ¢Ì„}ÔV7a›¹ƒýbc(¡Ì”Âs¯ìŽ °éC•/Þ)£3¯¶;íåŽ)¸³¥W¬`G´÷fצr´;{qZae}%â÷*5¯³ÕsxG*Ÿp¬ërÇ÷úK-¯)ÓÕO° ÕhçoéýHçÒwzì¹/ ¾(óUa/õ¢Uœ—52vžX
úoö•`lÀ»‘ ‚ÎYÚ6Þà];€¹ëõ°i”q\¯ðŸäâvÍ‘x*"/m~(=<ótçÍîlÃãtÉÎÆgÊ|‡ô9Ü£Ñ^/hÂÌ;ÉÚ†gãZ>ô*SÚrvbÒ ÷`ãX½ä;¸7žYæ -7V×;c=3ý¬)¨£µüÄ©X̃ɰ“µ9Yvpm{¾v';Pò¿ñ~ÙÌݤÁ4Rº·iÆ©¯j°â«ÂÇŽfå£ìƒ!±[#õÌæôªDa;ÈŽÆ©«©,“›s*¯ÂDбí噋ØØ{¶§;ÓmçsUÞ<Ë8KN’˜nsC;Í ‹>þw¶ýJ8ŸfæÖÜŸå¶à¹1«àû]-O>vŠ[Å£íO倣’Ù²œÕ1fGß+²0üò…<Öï]%-WŽv¶š¾\CJƒˆWkj(Ürž,¸ùiÓ=·Üñ†ÏÉ×ÆÃ|T£Í‚ÊX÷7¦‚Úš.|=Œ–|1ê{ª½N†ƒIú·`¶ ¹ƒHΨO¨í`ä`æau`ãrͳ{Óæ~4È]ˆ¬ -oƒv°_´
èdTÓ"«}E‘Ô°È3PkUpì@ÍT¿Ž¢füAšˆ‡Þªxè3[8ZÚå*Zi¸ìÂô”É× œc9`½e%r¬t—_'àËQ-¡e·fßʛ묯 -3=Y^ÒÓlê¬4ö»5†þsäÞÿÜd2Ö1Øï~åôܪšÇ¬«f“[¬sÆää¹-ñÛŸÛ±î4ÃŽ†·:ò>üÄï©O03pSñè…ŽT÷'må#Z!´N_‡|Ç-rx_›œË¶eê¶ÛT,¹dÊÆ){{#SïõQô¸³s›%óömçí"5³Ù„Ù•=*RçxÛµŒ½Öx5w¾¿õs¥¡ö-kæY†ÜƖ嘞¤itÛª3qûª§±÷É<xkáPe -Ò³ÔÄ…ïu$H4€g;(—°øúÀºß“¬ÂëÎZ";¿+@;Fþ^ nw>D+®·©¶G"ùz·ØÁÃMãI^ -‘vÉMÑ<ÏYfüÜ;!¥@-1“Ø(ÄØ'zÍy¡‹2H8s—ʱðèÁQJƒÚ: -Ûmv -;Á~fU[W_*/KI¦Ä‡>®25qwÞ‚¶~}ä»l|JVfª8Øï/^CúàÇ*µ4C‡a«é€Š/Ì]ÚT±Â›U«ïøªß9ÍÈ]¬3Mš6Ú†oœ™@Û`¯+u™ j^œ—3°Û•8EI+u›0'å~ï(c„*=[#÷0k²Z!éŽ{“Õ:GN9+}<v0ÒuÒÑ~Uxeží«ÆöÖy¿5yvØC–MèEÃi3äü5Oúªðz}à$Ù’,È‚ãÈú++zÏŸnùÐÞ¹d{&ÕYß3‰J?VË8M0Õ±:|$/ýÆ^l·™;¥t\¯.œƒjJ±õBá76‰g/³‘ÚS»ïýã2¦‹á‡ª¬Ù*ì€ü1¦#ЬÐÈu(ìN$»µrô±.C5Ç*5bpYÁ«å†s®ß§Mâ“z:Nª¡Rß×JoXküȪDßd·SØÏ×ç&…ÜG?xBñÏÕ:²š˜„Ë[ÎXc)+iÈí.G`Œ¼ŠãN¿l¤úoLÑ-h}ýšòscÕ±òŒ<oYîÃ&Pq12cÕ·MG%R,xñÞRÍ ójMr2Q%·Æú[ß75€còÄì9bæü=z¹µÔ%Ö*m,&Ö`>ÝgŒFpµ™N>ÂvÁ Ý‘¹ù¯ ®ó§oU¿y½«ý•o ôÇ;»ŸþaÅÝ`õ0pøÔ
™rŽžM×hþ76‚çäÚz#Ás¢K‘àc½–;˜«¯}gY露žæ ÿ|ɉ¯ÙUåmÌýêi‰Û³—¾.BÆži›{}ó˜[³u/óêê+d#ú -ßaÂ0`¦1rΆA”VvÇbo?¨«÷ñŽv[ñdAL_§š¡—“=¬$úºOU~diøS+´å5dDçËU\,‹=ͧg~ŠAÅN¦¶C£;ûUžm^ÖsDV±
ض‹óÊÄ'òըϽ†®öôÐì£~3^¬bÚ¾×s•d¦áqG?Ó‚¶ ÞIÙé{æ„ßMÅXOlÍÉÁAI6o©Ç¤åÈŒ“;ëâØ© -]Þ«¦ði3™:…̳¬wwÝ™q³’ºÑõ¤«(ð îÅ$ÕÕiì6ÇÎlNùä:Z}¡å¡¡¥góÔ¯ˆ‹ïL_“¹´Ö,± T€;«1îZÑ9ÊÇuO"è -ïZ´ÄÒ
°¯$ˆgC«ç ¯€WsǼåW…)yG 8‚Cû¥_Ð{Ì°G0çœ,gBº;ZA?yÒÆzo²ŠiKIí^O´gUó¬Ä½1Œk•l5oÝ I°wä«’ÊâofìV3 -Þ-æ -2¯¯L -Ÿ
N^ä@[»úÒ²YmiÉ;”¢@î¶JÜÞ“Š˜ß‘5Žã÷#?Îkõ!Ëá¾yŠ|ã'O×>=Ÿ!8káÉËA[[äEi}2ּ6확‡®51òìvFp׳iI÷’UîèˆÆl%UÞJ¡XÒýÉ%`JØ‚yÏL³ýžì—Å{¶3¦;ò<#xí|ð3‹]ÂØÊÏ?©*ç±àÌüµ»,O²)œÞËU±‚F¼H$ؘW³Ž*¿UÛV^û#µ DäÛŠ0ÇlÌÀy•OriÝ`"|éú%?îlçê.ƒV2>FWýĤ
l©>ÑVîAºî[)eó^vÒ–™¿÷Òu, -s[˜Ó졧êÐ_Dá,[²§tÎ:•’Ûo¹(Û<0Ð?Úr§ÄJ”ñõÝü++%õÑ)T/åÛ#PM/«-zef´AôWÂg#ÊP÷ñßLNÖ¡Yð$1fËIVÛÁJÄÞ³þð¶ftï\]}»H&Ü2EãH_ݧN/F çdLR«¸|{œZ§áGö<p¿¾™ŽÉƒè%?"öêŒBø€ùµ*Ò~ì÷«þàV.…Lþªð鼫îô}’:äSg”9õ`®¾Ñ®ë[:X>§ÃôynßÀ—<2uÊÈKáÈÔŠékaDKÖ#G—… ¬>r&ë-/&¦˜fØ×:烔¡3§À>þ>%åì[HB¯ß_ 7ì΂¯ý`Ɣɽý&‹1fLéñ¯™ÌìØÞ¡z(·gúþó«ÔÝJW9³ÎÝì7“À[öøç–ÁU -ƒöô8½Aæ Q2ábزÖw{1±¬ÕÚ|§×ÒçŽñãw@EÞÆ,^7Ì%<³v„¹ -_ Fî|Äçë÷wòÕ3ÿ«žÿ\—“Z¿2Õ#bÒz›þµpù;R.o^ðY¼üyýU÷ÝæõríòÆšódèd»›¸\ºü8»–*ðÙÀ_ô{V·8ÓEóUBøŒÃ}º—µñ*þìàºØ6—’>3/úŠb³:¬k¯c Œè0°†Ê¶ógM½}ÆÖÊM>„ðB‚UÎô’Måk -iZª{fk윺—lH7a'¥ZUíúöê(k[ÕJðo£F57ò‚úk™‡@úZKçùÕp÷'±Äø¹Æ½Ê–Ö,¦—rm^Á=×ZaˆÈVF·CeyäÕïñ ;@÷{mK‘µjž
~îŒ -ÖÀ^á<‚;§ìï\BûÜ×Ú¨+|¥žïÌyéû_¥öºMgyl{ÅÂcÑ›ŒºŠïàZ'«„H:—uxbÚ,°³‚¶u*™lËœ²«ùïºfaDŽ5ƒhy‹ñ)>²½˜+V+–×\ÙÖ–Wdf¾wi刦‚K¤_Ëw¶3:`?iN.תb–%È*pjíùmO
†Êû–•/j˜%†Öú™VÝÙR-¢qÛöQƒ¿0ÖX:ƒm÷‹d4«?|¶ØkÝ¢.ë
Jà×µˆfæ¿Ôu‹<IˆÙÖR®´XËZ·¨ëºE%¼×d´½7•UÎ’Ñ^z®ãŒO,ß[¶Ý4ŽÕ³Î„¥ŽjØîUÒ|¤¼GîÞOš<ì*Sž«†š÷¹ G -ÕuŒJUŒB†R•‰LZR‡¦®bdŠÒ¶ïÛZá¾xªÖÊD»•-¢¼V1²o¿ZeÛ3’¦ã°®eXÃ{/PT¸¯Çº¤àM‹l¦J=ò%ãÛ¹v°³»LŽ'[)=^^Éâù©µY;,úÓ¬?£º±ÌìëŠÖ+Ú—¤¤ßQ'Ä&Sö¶Pµ¸¨Ï±œ¬åô´V²šÄ+ø¼ü‹p„GÍo`1‹U²Æ–!þÎüEƒL*ôT·=UÕuiÈÔYÁëçµHÖŠ1y¯ìã¹VÉJëyø:H—ÿm«…
áEÎnrU£a˼r -¯õ¼ÌÑk,NÁ]¶Ñ ¥²Z5¾¾Å7ÛvJ>”õ¼Vðµž×+œ®Qg—¶•0:ëp7k’uÒr¡Ê«å²:Ú²žW –õ¼Jtçe *ç¡`æõ\PXÁ/ô1s!íÉjŒÙEõŽ¡ÇeËÅ™ÕÒʦWZsu}’ûX«gªëíÙåËÓjV¥|myÛ6¿ùxwŸæù,mpq™ÙØŒ¿_Q -ºØ²ç“‰Ä®,Óžo¡M¿ä‚E¶«†¯µR³å]jCÞ¬dˆ·:•>•;9u|æ̯ Pê\Ë7Ïr±·Æǧ¯<WDÒØ>àtÞúÌBûGÌî1¤pq öH‰`SY³Ýßq»ö©MñOL¡#ôlE— 7/¸Û+Èl°¯Ñ¼ëÕ`îÞW(fÅrŽ“õãʶÏT[íô×ø;Ð0]KËøôJ÷Ͷ»Úæ]E¦£ÜWPÝßþ3Ù*kÙv#¡zV°B£d¡ÿ~#ï[³Ì^ëW¶k[ -{¾ž}.B»·ö¼Ë’l%|dÖf¬žÝâÃGæ¿ðG/A@²Ç»U·5Ñ6èÚ#‡õ<c1xÚµ+Lor?™/´W.TÄ_Š$UdÙ²G‰‰ÕPúzÊa¶L3¼±ZS§ -ÞǪEÇU‚9XyÅ•*Ûn?³Pá>s¹eB®Qpùæªá’›SQгբ}x®*çfSðÎ%‰›J7²BÞA{L[ûŠú$À{§šŠë½DRù°„9þÚöR¡`R>±•&”Ÿ6…3Ë¿{Vd‹³ò¥.â -€LKäæп€ÖªHƒ6"¶ Èóó¶ÄlÙ3A½6uψš)dÖ~%OÏÝ(5S°_mRZƒ”µƒ$ -Âõ¨jrñ†/ÖR³šùsÄ‹æ±Í|?6ß`VJëÞ€¦Gà5\bæÒiªL¨ÇnÆË)ââXŠ*œ@B^óª@!!‡²©&ć[Að ›ðIúf.àùÉR«ÿ@„ÂÛ¯ú¶Ö6¹¬ÄŠÜbî,N9Í¥€Â -»VI¢ÖÑ£PE©/¹™â©DXĴâ¤N3ÑP‚ÕPÈ.ÙT$%vÜlêù"\IoÁ0ÃENoùc2(*Ù9c]“å¬ HïEÔK‘Œ×käLëÕX:çç0·5Å9WÝf³¶l
+%˜ù&éï2qšF^wçØý*>X £…YR¦¹þR_Ž’GV½zºØtaöÎ*°sÔ×5"ǯÂâ²Â917Õ‚M¢¦ÅÓ´¬¨;‚½¶µª(ó…5øŵpn1%šºCf‚šíã¨Ã’‹h'³[W ð¢2YWìQ‰ø8UL«mµ†:aMgn¨´‘îµôûš?Åu¼ÆåÞ7þQXw
J yBà!™`¹¾kYÆ!Ì)æÎ\éG#öˆJ 7Uì -3â¹N3•{ÚÀYÜKb1¿Û -9©¿Ð9ó=9Aé"ÀžµŠ:hz¸œ9¯(²9¢˜²WˆœX„L×0`m%œ4T6¬z†©°2ïZB®q5ÙÓÏV´Uád¶‘4âÅbi1 l Ék¤Më“ã:h*³ 1Òó܈ø´r«´…˜ˆ@e¦+ƒBXºñ¨HLÊ -Ù‰™¬Á¯Þ>¡(MGÍyF<ת«ëműºèUÊ6ð"Pz"lˆŒ\ÂðN%gûà0¥Q:(dzŒ‹¶”¸ÎòÌo 4¶ºÈ›Fª¹ C*n°ÀŒÒÿšï=ˆòvSf»Ò¶I,ŸôªB C67‹ÖVBœêé³]D~à4@•ˆi¡“N•ˆ‰K.Ë¢”óŸwJQ
µ
k<ZBD .-#ié%ÑXÊØ{K¬ -;]ÔTûM6º~ø ~WÐäu¯P`ó–8þ,mkµßQ#ýq¤AnRU:—Ñüœc‹³j¶ožÅN>gJ‰ûÎÍSS4-±ü©BßµÛ´$ë§j^sM98
Äy¶Ù,0‹’†j,+4*ãϦHÐøm*ÙO×Ò¢eQuí~Ú -ÐÁì>×LöÙiÐÊU/ˆ/8LAœü$1̉f -Nñ¾¶÷§{‡µB~ UšæåaÌ”$ÙY
De±`U”ÃÙº’ÿʘ£…(’¢Êòk±²úE[Š+œ”qùõUâ -jüœÌ»XˆÙ‹`2.
ŠtáªKFD -‘¨ÃJ:ÈpõPC;²I³ŸªlÚ€w8Ú‰Åò';…–ú>ˆmæÁZ!#Ÿ&V5:©"@Aø¡ùÞÖ’á\·¶ -Âöa!h&Žžå÷G¤Òh›ÖëœkîYW™üÀDu™²VÆÉN€î˜Œxì춚¤î·Åx¹jŠ˜_ÅÔáP±\¢ºBœÈÆŒó/df
I–S4—žk´aÌ™‘Õÿ®}¶V‰k¯&B%b=5WcÞ¶©-…ˆAµñÔR -€<YMŽ¤‰’9£5Ù“Æ»"–³E¤¶ZÛfùÏ£zïŒØúÕ–ÓÈpÿ&N„@Õ›d¥ý¦‚zÕœ§‰“ÚZÛ”¬ |Cš1ˆà1(Ð5k;'Z)Ê9qNΩ^3<íV”dmg;J‡ªD,A)Vm9¹•“vFÔˆ|œ*%ϪV‚¡qÖ„AyKTš‡—’ 2¯´L³ -i
Ù°s"Gúâ}gKez*.Ä©:Ý®œÇ„›yé”*QßéOyxÁæÄ–ÂlÕãéVŸ$/'êÉÐÊ”¸zÕÏÛÆÉ0x“A\%ºYƒLC8¶8-B£bøPiOˆ«WíJ[Íuà¸Fd[%j‰eìB%ûCñ
±ˆŠ;dHoÎ&XpeÑ6€R¯y -kD΀°1ÈP1©¨¬”7pãÆ2ÁˆˆÉM£ -'ˆ¥fñéi,låv2këÀý8]s«ÃïA.Ãñ[>ÉS‰+#ßtö)£YjuŒ¶ÙY¡ªð\ô¦ArZRÎÄû ÑQVjuàYm5“’®×2µÑnG–WÚVÄJCk™¹,:dN×ëÕ‰Ø@Ù³ý|þÏgK2‚?ir–Ù·iõ“0ñc!?h“ÉåP6zÓL)ž‘ Ôĸ|ú Ê×’ë×…™.Qá¡ .^S~’ÌF\¼P1¢Ô{t#È’§OiÑN4\°PÄ¢{eN¶Ø|2âOê°5µiNœ©ƒœ`0§#¤' ›™&AYDœëfm½˜F„¨‰Ð+D.φeÞ5hšiðì¹à´
@ÉcõLN¸^fD¼¯8<ó¶‘,~eubQD°}Mðžµ5ƒ -£&09(¶ÄAôúÊA'cC¹·!³S¢KA};k1g3LeIÌR¿wÕšÌqÿÞ[)W ²"1°…5׆ÇûƒŒš@”*Ž -rÎ` `u4âª)pÞ62‘ÙBQWˆŒë‹hX³^³¹‹ÔrZŽ ŒÒþn¶°¦%&SQlè=Þ$Ι†ºY-Àb¿.1€0FÔ1pP(ÙI,DÍË3Т˜³¶3 ½
„¾IkFûõr/ÌÛR6AÒ:<3ÖfàïLÄQ`™ÖVË-¬ÍX!ò†AÅ» ˆŒ¡ÍʯgS˜“|L£-(rhè5ãØ+#Uï¬- F¨I€¢–ƒ{b¬p
©Ã(hÉ
" 8+•Ñ¢~æê'…Äf -|õ|
»PL'Iªñâ:;UwYVÍ+¢œË ׂcc…@3ÊÞH™ŠùÀaÊqNDZRcÞ–†…T‘¼ôù qZúüŒ<œ‘1ÏÈ?IsâpFúûÚÞK¼wXkƒJ(3ŸWBéôù -DTžZ](zä²Z;æß`Nœ}¯Až}Û4Kx²]0ì+;fèn³Ý•6ìÊ>q±gAÛÛ¤ Ù1p3¸W;0Œ0 -q…k®Áa©Ú‚ÝàÅ4Ö{øöˆ=˜·õêÊe¡B3Æ,Vƈҷ2“+mQT1N¹hð€äš€ÒCéúÏä€WGUÕü@y¬ 8ÕLœó - -¢ÀÃŽemNÈi
Ñc -ÞF04`¯EA…¬¦ï°»œVU¾U -&Z>‹8µ$nfVbžµMb“kRW~dŠ—|Ä.dp¢ÖB¢_’<I¥á÷K‚ =Zb¨ZÇRˆ -´‹Ü iVëuND‰Éà*¢ÜaÍØdvžjüÉŒ6ÒŒ<†Ov).V$ ÊpeE‚¥ç–ò5_ä()Ë2f¢ü ÛÌê–¬ìT…¡ éL£õÀ½^ÇáôäW1—w.s> -èæ˵â—ÛÃLö…Na„`šI’2³mîΞ5Ük -[Š
‡.ç=Q)èè$94f°ñÅðϘfŸ‚š~ú؃'ò!u>È2ô?ãæ‰=‘Í/—>Š»åÐ/Ë'逿º¼ûËÙå‡TÉÇwgžÝ^Þ}ÿúânó/õ‹½;®¼½™xëã÷@ò·ß]ÐJ>"!h[Öñ¿ÅÏ7€cÈЮÔSòO0dèÅÍÍÕ—·ÿµ±/æpã…òÆŸçÀÍž[žcžÈãÏñÏ7Ξ={uùnó%AóRÓžT°×Æy4ÚÙVÃ/óŒÿÕåÕÙæ±QÅüãÍí›ïo®n¾ûñ©&O=föäò÷6Ï1:2³#3ÛE&2!«O†‡mì¥y4Ll»¤m¸ØõGqûTsö·ØZ‡~ì7—*˱ßxF‡.¼¸ÍEþÇYEaã -Ê?wY¾{Åðìꇳ7žO¿ŒîÎn·º¼¤ý§OÏÚ˜•ÙÙÏÿ‰g°áo=@ŠÓõÅÙÆ#çgWç¼yµùôÆ`9¿Þøv:;?÷ú݇<ænöÊ'ŸÛí›(6žÞ«W—w—ÿÚbrö©$g×—¯Ï¬4ìcCwÚŽÁ0¦Ù?¹`˜ÍgôX¬Ç`˜1÷n±µýØ?¹`˜Ígtè§!¹yeÀc8Ì}&¹c8ÌŽŸgcùóq„ÃlÁó>æ ÝO.fóúÝz‡9†ÃÊeô‡ñ¿”p˜-8ä¡ß^O.fó=ƒÐã‡Ùâ;úyrá0›ÏèÐ%¼C‡9hÿÏã‰æÙbƒnË<è>ƪ[DÍ¿ÂÏö~¾j"à#ü|x üE¿øϯËÕG¾ÞÎNô‘DìCY†ÍÍ~¤jÑ“¬™}¬“säh[p´òKæhOþÈÑŽíÈÑœ£ý"Ú‘¡:C» zägG~¶ ?; -hG~vägG~öøùÙÜ©óõv>ë'ÆÖ6žü/ȇw<6››úK>6OþxlŽÇæ/—ÿ¾¸úËÕÙ_o—/wˆ1 ô©«3¸“¼qô¤õ¯[PÎÞxLœïöâõ͇Òǵ^h Vëeó ËŠ<TYâ?îÄçþ¿î¤ÿóyÿ»ÿÿçýÁÉSÙ¾¼~uñíåõå殓ۋ7gw¿Ýb{ÎÞøäóÛù?ö1oßP‰˜Mçx,s,s`bE†z‚Ћßl6þX"õ·™Ó¡Çê
‡Î¶öÄzšùVÇçÀÙÛùÍë77o» -¼ƒ9êha;ÖÐøYxñ†ÆÉÃÕÐؼbÃ×ÐØü‹x
Í'rà54¶
I=øKóIbš\]ÞýåìòC&üÇwgkgï΃™ÈßÇúS‡vwúý¹íUóX®ÎcÝ©_îÝùxÜû[ïÖcÍ©mð@?þ$jN}õýÙ«›ŽøEߧàÔãáDÇêB -ظþÛ1#ÿ“¡5_}€ÍÃÀþý -O°ØÑæ'õÛÛ›×›O‡?Àt6F¹»Ùü®¾y€©«6mqa?\Õ¦']»h‹ËùXºè'§w,]ô3]ÈÇÒE?£Ýæâoïn¿ywÕOÿã³#>±Ú+[(‡®¸ë’üœGöñ›Z½{‚ñc[ÌéÑÄËáëdx?³øæßç°#È6ŸÇ1~ìñ»)îæòÙ“qRЬžšqß=wOÜ&¾qüÒÑ$¾>ÁMâGuïI«{Û°À£ÂwTøŽ -ßQáû” -ßƲÌQá;˜y¾Ç¯ð=Õ¸´§©òm\§âqj|Oï¨ñ5¾£ÆwÔøÖgrÔø¶ÀÐøòÔø¶˜Ó£ÑøþÇÍÍ«ïnÏ6?Ï«îú§¢ðm3“£Ê÷øU¾' ñ«Dl•÷~à<«vÇŠŸœ!ËxþÔDŽ/ö¼”?}Å‹™áÏÆ©ˆ™í_¿ãS›²¯ºr!¨ØÿñÍÕÙù???ÒÍ›³óË»ÿcûéÛ»¯6·qkëOý
øc9M[M걦ßÓF|DgiŸ‚6‡nÝnƒo×æo¹ªè‹Ÿ•+ÍÙdÎ>~÷”î-OØÈõÀyÀÆustÞ/n®ßÞ}¶n®¸.ß;Ü)Êžúêül™{åO>µ¾ß"GÿŠ<Hýùé’Çl†Ë×>ù$7ŽÉ{ûîöÛ³ó‹í>àêKÉ€îãÆ+sö_—¯ßmáš³öŸücón{2£ÊÆõ”.®ú¿lelž½ñ`2Öo/™©¿TWöCD
ô1ðóRÙÔQÚ{ioŒÞÇ"ñý".ÙÍ+¿áKÿîßon®/¶×_<\QcÝZÜ]ñ(/»}ºòÒQ\:ŠK›Žá+ePP^z’ñÑ;NGYðÁdÁ£ÉüИÂÆWÆ??àuŸ} -jz¸²é??Ðr>ÿ +>–:|,—"ð±ZJ«¥ +^šO·IËJŸÞ9ø±ÏhÀþìÓèœvœc4Gàì±JýQsßgilNgžY—ß“êŸËás*
méé²Q€Ëç±Î©·ÿÙæy!½žšÊå§ïï
&I»b-øãÌÅJöË:‰ö§W:Z·ÞWÔˆç
Ê sH‹Ø´žÏŒy’Ó3èX5p·ÛrµqsѾÄ}b‹ö\ö‡‹æùvWÊE³|{G¹h»È-/šePìÇ|]´]hä¢í&!Åô¥_4›h÷ÜßrÑ,3ሹ:?”=dG.Únïãq¿.š=D–çÍEÛïH;ä¢í—žrÑ<½ÀÒuÑžS=Öö‹æëðÝÍ9ûýÖf^4Ûž1çì·×¿ýï‹æÏìŒbãv–¯í˜•ÝÓz|åî-*O7iš—7^Q†¨³ÀÍû©<¢Mq_6¥¨n“³,WÙkš>??¹,§àyw}ÙNo{ØrÏ^§b›¤¥“ûð>G2¬¢¡sô©Ößõ_ãÜ®Õú˜§ÿm›H¸áª.‰·>| +üÁñ–ê®|uK +jÑ +ê£Hg^6o!ùÒßë²YÉZå\6o!Ù§Y—í³a-¤#\7o"y±·¸nÞDšíuݺš›\7o#YΣ®›µ‘ÆëªýÛßîeöïÿðoþãïÿ—§?÷wO—"ì¯ú~ø7ÿ·ý—ÿåOÿÓßÿçÿƒýü‹¿øýïÿê׿ùëû¿üaûñOžÿÿïÿñ‡¿þçÕÛú~_Ë{Z?ýizy&Ò±[¾9ÿú„›‹ËölgøëGØîøó²}ýØÉo„s'¿÷ÃûŸ°6Ò<\8½³åÃßô¾îk»#ol¿»=OÃéøæBËÓûæh¬½À±‡ñ:GÑóýiÌXGï{§d;ùúÃßÚ0:Z’oïC +¿6ñ×Ãݤì–ÔëÁS!w#d#¢_ôçæÈKõ´ã(Ì=ÏcöqŒÚ VìÂÎã»GõKîåmDÿæœp¸ñ9ö°• ‰à4¡>Žm^(Ú`ã®=wˆû¢ø(gìÀÄ
ý1oBû‘ÙÈÕwàKÚ°×·õòç~%¼u®Õ‹‰ ¯ü¢àÓ®SP÷È‚›®¥…ç¦CóÅrµW]ImûÝ#СÍn˜Ú…ÓÅ¡=áqp•‡µ"ý.ÍæÓS¾â>OÃ×½³éå×gnQ×Þ÷NѼ@·~ù^‡Íƒgþ±¸§Y§:‚ËÒ¥,¸G®‹]‡Ý¡£°µd´•€#8×Pk¯6ú‹vpî±'éDpZp +*â6PDì@øó‹âϦbwîÑR|´Ç¼,^’&~ßÝ«b-‹e¿Ê<’g +^[þ>šn>®›Ã²Ž¶‚ÏÑÓ> æyzÆS<â0lN$žæ¯È>yÄL± %]Ì|÷/] +j~]NËFãí^OÐf³Ñvó"u/5BëÊg°-(wþ°²},fù<ÅטÁ¡nà<F3ž·‡y®¿ÅߚȴÑ6>Ç-x˜Oœ—uúªèiúÃz¸,hƒlºOÛq(æ3ÄË}Fͨ›øUáûäZáBßÅå"yœ€•¯‰˜UˆÔÅ‚Zö_éÆ>/ÒW…¯›÷c¬Ýî÷ÌÜq(xíù¸Y£•ýÆ2ymÿ‰½Žµ×1[î Ö'ô‹k…î,øl‘íØ!îÜ:ŸØòRSÃÂ'™#>´ÖMòªz¶OvzmÁóíÎ߃¨l{?+ŸCï¼;_Ï^o^„{È£a¿µçžë
oO7¡
lSËì`¼àž(óU6“g¾µ¶åQö©}mxò·žÒ:1·HãñØŽ]ÛzÒy¼Öà‹ +ôôZsì íG†u¼o¯¹‚ñ†ŒÐìòÞ¶ƒ?¶íùp´íø8‚+jDÆ’1ö$^·úÌ>)ÍSÛݯŒ^p¼ùÖ‚8¹ŠÃ¾œjEyjÏzɶqr}ç-?vbgÜñ§±Ô¯£l?ï¥8g°ÏªÊÅ{g¶A^/ÅFCÞ³ð~Ñï}¸Tg;âºØWQ!ÑÜe¾÷e/àšü)ÓI"øtýtýéVð¸ÚS;°‚¦Ë•UöÛ@Éqí +ncêþ÷9öüµOÏ ±ñEôÒ‰]Ç¿ßw€{xê}l8Ô€ôhÛ¸×ÇviÓ›3E|»®í¼ß?÷Ç‹ðŒ?opÚÁÞõ-°öck<&›ëë´ÙÆ|Öâ½z>&OSH—äiÔEÐܶÃÚ‡^¬kz{q[|ål@4.@¿ n½q +Ç¢<}þó‡:J±×èz?ÍÃìsÙ
ôOäó5›¾ï=>§3æTãïoqÎÁø¹Ú)§•XoÏ®ËrŽÉ?õ¤ÏŸ{èÒr•ùèÆ//{«-íÝŒ`H¿~¤w¼fÜvéâûd%†²MÆÛ{Zª‡´õ8‚ÃËãN”VÒa…59Uÿî~U+ÅËÀ¬7 ‚.^¨™NpGOϨ(ßsÒÔ³Êà +f§Ýcñ{«n\‘1¯«7HÁ+{Â#ºEñ{k~ò`n»þÔwƒê~êro{î VÙõ“ñ5·ê&ç9yØ769“v–˜;8£Ñ¥[~©épœÙ„}¶ÎöÏ![#¶6ÉSÁy'‡tgyf<#.þ\¯Ô‰Á‹n•²3;£ƒd-`+6Ím¤ð„½F±.ï—ËŸ_ø.2<rÏÑRðé,Ú/¾c¾²ÓR*ã¯íÙb^ß
sys¨DMK³/sTk2Râa½«ÉlMþ|Å÷“ÞÁ™ïBÞ]ŸÃšùÞD{“·¯©`c|ÒSÄù9_ó;ª*Øî^. ‚ìnÖqˆÞÍ}•]YàÑzòùç•Ï·ë«ßÞV¯Í3Ê~ò>×£¸)ò°ç>D‹¨ën£Â¼e¦ +¢¾Ÿº~‚¶³ëaóó.6û·eX-œaßUþ·ð³#_9ÃþNŒ_?A{³/ª=ñKdï€ —J«Eê¬U/:vO¿~¾Ng;^º,oËg{ýgºö]e\ý¬|ʯ¾eŒYÇÕlè’ª¯X4•Ÿà®µZº¯„bÚ'Ø£ï÷γÔl—3~Ã>%çõ@÷w?ÄéÆâöáz¿0—µz"è“~L·=ˆt'$.âÃ._IëÅ
øö´þÒ¯Øò˜vsÔìü
ï>“è—ÊÊSØ@§Önݱú\ÔðOoƒú¼V_ôóÃRüçw'Ò«~QîógÍ„ÝÏ‹Î6}:4Q6Â7õU&lC›î·Å«ìP½fÒýÞWÄöÝòtqý6¼õ ‡úí¹þÑž8«cjSLc›ËèM®Ñ†K +Çlk¢¢MÀøeŠ÷s‹BÂþ©>ƒo¼(ð45\<‰'чP‡5 +öÙ¸PÖf·ûç“Áû¼õlzÿÕùà%2¿=Õ?ÚÃæ鶆_»Uè‘«èƒØöfÛZƦ¾}d0^ü3ÆÓr>xgÁY\ÎHËÃsðO¾¡ìµ8_Ï]òóõò›vÁ4%åA»³àŒîÂð i»Ë~}Æyø¶6†bCqÅÍ=õ3°|{‹õ&–{àE¨¿ˆ}¶š…w×"üî…1ÈþýøÄÚõu%›¿M·¿ÜÏ3Ó"‰Ù¿i»-]òõ8}ÓԸܞï»}Vg!ûNm6XfÃño n×iúþÔúâaOð>£³ã7ÆÔØÁØbf5¾ã>=òmØ”wɳö¬a+š¼ñM;h팂øþ€ºvm¶ãô#°·¹Œhžñ2uœâS÷´L$3;z|«ïXcÆ÷êÅoÿò‡ë½™¦&Ç7x7.NñÉÇg~§v·—íðËhj¨Ÿ„ãòïºÿ…¸4Ý°æA¿\ÛyEëőÛÍQŸnX¿s¶øÚ
ð8õ šX.òn1Ðáï§zA¼îÄðÔµç";xmþ¢_º½qÁL/þù8¶#ÎÀdzþR_;·Vý¼Ä\<¶£ù‹;´ÃïDJÝÉR²®ëº{<Œ>7ùÝ'Ô3½MèÓÐÏî[¨C޳ϟM´?a3‡{´5{TE‚öŸ§?yëÙ
¶e·¬Ä‰_^ËK¾¯BvàE™Â·'û³¿‡ƒkAù.öàl&#ñ¦¶(Yh=Ðíy ·Ë‘{Ù·üšú]Ñ̺¶CÕ—`ó¯Íþœù%h‘2ça/1÷›Œ¾W¯ ÷—ºož çÛú"’ÑøÑõ½,âr†ùTÔÆ¥9}1ÁøâÆrÍÖ,°¼v=dÞ½´mýÀìt(±ï—ÑgÈü2žV¤Ò>gžƒeIïqmÖZ +¿û¼~ïÙŽGþ›7Áùï¾5ß}¿~ã]üÞ{ûÝ7ü»Wö·îÂwï×çý'žož—¿Ô¶^5×u‹‹h};}.¯—ÍßWñ¾£ÌÓ/zŒtÁ•û®m=™Ù[dúf~ç+ôO|±¾ùº1zñí—ð{ßÌßø¾~ÿ[üݯöo|á¿Ûøn»á7Úßm|§åòýoÈo}o¾ûeúö+öå7¿x¿õuÜb…ßï°²ôœ'A|U&u¢º?ôÖÇ>Ý+‹°Oø+âÉ‹±OCòçë¹<ç÷¿ _þï~(&ÿÜÞÎ ÝJzäë+bO—×ZãºßDâW¿ÿá_1¦{©ûn +´“oƒ¬WSƱFÉl€ÓûòØZ³›O?F7u,¼ê£#À‚ÖqóŒzB_>Nå +´q†÷æ·~ž11Ç^thd¼ªçíý‚14b +&Çèάó
¾Q·väÄÃ6c\"bsœïØYÏ‹_ÛLzÿfKwb3vÚmâç%¼Æ,¸ïb›e0èïœ'l<!Èžƒ">µOm[¾#nj ÞÑZà +ò~Úl1™ióöyº‡&·=cÞq—ðtöóïå
g§]"bÜñÓž +&⶘d]Ûž[°92V>C¦ñç_áKO§ËZ‘îqÅØ_cM+"òó™6íz\ü)o +xp¿ïob^Œ5Ÿa>úÜ©?Yúó“ÇÍ¿h>fži ¬ÝÑAzGLVçé+<£%AŸó—ˆ¯¼!Ì[úÖ/þ\½ö¯½‚§ÄtëYEÉ8µo +Ò™9è’ZðÞ²áu…]ý~}¯Hy‹Ã±Ù®¶À'ÁH|…궧i‚b…׌ g‘® }Îzo[ƒ;ÙWlóg•éüû”¾‚gÜ¥±Xƒ[»ËœÜÑÛÆš#¨ï³"æek3ÆÏÏ=’£ê–G¤ßØ.Á„UhzL<-üey†²•FଅäY„~úÙÛÜf°VO„w|ïQžëŸœ—î‡'eþY(Ç¡Käèý)^öCà}Ü™ä‹Rƶ÷¤3?ŸV¾nRð©k/c¿h@rúÈrÝÒçøt1ük)V[~#ºf]¼+¨Wq&ùmì¥mºD]ÇT‚J¤¤/IX–ñÇöx%šå~]ôe]iR²ÇʉseÅùzE{Ös±*xARÝ5ÚÕ,a¸YSm³Ao†‰FÜ–í6€Fh|ݸ¬=^û•†U—Êäa+Q¬mcôקç>¾
6Þ³W¸uÆ©¼¶m¤ÍÁÉzû`¹®1Xý±ž6k±ÛàîgðÊÒ+L'Ýöºûƒe]†c{x0›Æ]%þ=LÓÐêsé´6e| ì ÂuDÁD“¡Q†kvÆ.>Æm~§ýø¯u!c†Õž;»ï¿Ý»ô€y‚çäö>/w+A^ÏÌo{Ǻãñ]9s‘àˆÔnv°Â^ ‡`<ËVñνڋ¼é®™$<Iqzê<ëÅsnûÑ?‚±dÁzBW8&=hk9•ÉúÍüSÁvÚ_Ûº´5Ì ¥®Ždù‘o¹Õ³Œ£íÊ7Ú¡E†ì9s kžjqxId˜Ï¨g0GÇz ¥l;ÃŒæÁPb +Þ1…ÂøÔ +Ó‰yGÚù|žL1|{í +ÜK›aÇ¥ÕœØ+è¸y +ŠðÓòIGmæ~]|#°|q ‡Rl,ŒcÔÊ°î9 ú*œ[/Á ô7ªnk_•>u +²ú‚¯m§®·¯Ü”NÓà“‚Ÿ§ðÚvo›¶½s:bÅ|žˆß—0×°Eý{'¢·?ƒcйYa0Ö š¯û¡Xâv3f æcè3hÛŽ“ ^ï·½ƒ6^Ýh£¾Âä!”§`wIÁkrZû®Ry8¬öSÛßG[¯ë +ö2q°¢eÔyke„±_ +ZŽR ò"<ŸÛö±íÕ5ã +2Þ4V¶½4íG0âÙ~Ë)ÔðT·lwËN–^Nñ[9óq–`6û~~lk
%ŸÏðGk'æ°åV0ÛQ9¸²-WöÈÂ+è5c?ï‚
£vòyî±ëíb¤æìëA¬a
|x%ŒMoÓd–¸“oâšR³†œîMÙÖ*nO½]P”àSü4äV8*#zpêö¨1ùôÒ!ì`…7nB‹zA1—}fóRv@Äø¹¬¦µ¥uLcdÒ†•ãP‚GTO¡?±Â¾šÝOµon}ºó¦¿zÅx)Á.ÜúøØÖÆ{6Œ-ƒ½Ju7£Ñc4e‹®_îjO·<ã™
‹Ì¾)Ê ²<X9ÀlxC/ ÏVûjÜl{íldΘ|\A^0/3þÞöRÆj÷*ä»b^ã`äTÛý^<²ÕÈ4‰íî2…gmô~õÌ<‰Á§²lëEÊ=èƒÕï`ÿYk½ÃQ8Qœ¾š¾”‰ùon†ÚvÕnõž¡áýª÷ÆËÄ'T㘙òæóÓ¼ù5è//žÂmËɪeâv”þÐص÷Ïè€ÝŸQØtÅgy®´÷°Ô‹µÕ¼òáðêpq^Gv¯øc–«¡é½ÝkÏätÛüضÓ<ÜT®é3x÷ú„0S?¶×Ù5pâÃrß½Ükipq|®îWÂçPkŽÁöèó¾‚=Û}×ꡯ™¦²mc¸¿õš&çÕücœ¥1¹a;èn³Bíµ¡NÁ~ «ßœ‚Û¿ú‹?<UùøHUþ×ÿ¬tek³ûÇÙf§l.À=¹SuxWøë;Ü”Îñõ½“߯üþT
_3仪_t{ ü™ÈzšÈ?»cÖ9´rÀZš™ì±“yáidô¶½Õwÿx<©–üïùòþ|IJ¿ž—<NoèÑߨJÛF«b»öÈgò gË~ñ‘Àá³7¶Ý‰FÁva-ùxÉ¥ žðY<4 ¸]w´¿GL´ú3ålóäÚC;ÊÒ÷3¾¢N‰‡Ÿ£½_Wg3_ª]^e"¸«“3¢vjìwFN–.BÈOPS~¾àùÅz$‚5M—äÎ;oðÙµ×ÒA†m >†¸6«˜¨¬’Áø×Eðõ <èëóÆlQª×Ã|Óį +3Ú:£t¸[浌¨˜aAµ‡<èác¿Ox»t`>4;˜Ñ@µàáâœØ:±K/Ä#ã…Òžà‘#¾2{ìôŒõ ýP·¨–¦N`Ðð÷àÎAéÓã¿Ï³ëù{¯ù®G¶ñûkÆ離zÐ+æEÐƽc—¬ÿ[^OÕƒ^»Õ·Ý¥çXùÚ#Æ·f|FÙÁhyÚŬLн3ÍÓµ‹[æCœ®ö£¦ñÇø([Ø'ÅñŽmíWýʦŒþŽyµÜ'8"+J'|ñ$ÕI¥TA,ìÄ1noA[tT»ðj¼ö·¼ï¹Ûëý×b·²×E‹àžtf+¨FÓ„v~>:Ü-LFûcsã·SOÍŒŠ?º“§Î×D¤¼Å«;l™âsrb¡³bƒ‚š…³°ìÄÑFF¿ïsãŠGs؃ãæcÌÂ*ö`Ûîq +$Ú{³kS
9Ú½Î8-³²¾ñ{Õ›×Ùê9¼#•O8Öu¹c©{ý¥–¿×”éê'XÐê´ó·ô~¤sé;=öÜQ_”ùªð8'_˜"Ù¬‘±óÄjг¯cþ“ØíŒÜ +ÛAv4N}\Me™ÜœSy&‚Žm/Ï\ìÀÆÞ³=Ý™Þh;Ÿ«òæYÆYr’Ät›Úi]ôñ¿³íWÂù43·æn$øÔ(·ÏY—xØïjyòa°c¸èTÜ* m*ý“̔଎0;‚ü^‘…áG/ä±~ï*im¹Zpl´³ÕôµàRt@¼^Sc@á–ódÁýÈO›î¹åŽï4|N¾6æ0£ßmAe¬ûƒSAmM¾FK¾õ=Õ^'ÃÁ$ý[0[ÐÜA$gÔ'Ôv0ò0ó°:°Îq¹æÙ½Œis¿Nä.
DV€eYnÙöÛgËß_ù¡XGSêúú6ê/í4ȳéÝÖp]x_‰f3odѯonìÈv~¹„kØÀCþØL2zŪåº5‘ØrdÐÛsy¶×óXržMNÉÁ€)¹Ù„V¯7mR_ëñžS'¶ÆË“x‡s§^É©Øѧڙ,Ȫ0ŸWdØ-“l“lw-³¦~‘I+1HÑcåØ눥?õó[[ΓC +c^_¼go#›ƒ±v»¸óÓ6–Õ_ͶªBã™ŸÏ Èë:¢7CÕXÁ¹ñ¬–ÿìäUæf¬ü£SUÍ›6½GL[Tl[
6„>·*%:6fÁ¼«@‹º[,7[É@M•tãVKÝk™s«Þnü¼Gڜͨ‘kŒÒnŒ /öÆHF¾\ͼ¬0•›úIɲ¾fö_n£OøèCϻذàNsú\ÝåÕf²¥}öôÐoöX7v÷õ‰Iè51Å6Ío%‰)O0êç»Á{æPL"ºïѺϿõUÑòdØ×>–նÚ2Ö,H¯YË2ô#ò’Ôžæíîªýg7"iªDT~eØ„WÛ¯¾©OP()jù®ya}b8vpÆ +rù¥Ä‚U¾ayÌê¼ó^’J[ƘÅçnÕö¶s8SûÓÓÙ7Æã]m½r”iP9ß,ªIóŠŽ¿º:ø¬“àä%Øòl¯Áƒ4TÄ0¬k]««5¹½mœxŽ3á‚SléËuÇ~ï4즪F†G‘ñ'M…·A;Ø/ZˆŒt
2ªi‘Õ¾¢LjXä™F¨õ*8v fª_„GQ3þ MÄCoÕ <ô™--ír4\vazÊäëα°Þ²9VºË¯ð5Á¨–в[³oåÍõÖW…™ž,/éŒi6uVûÝCÿ9rïn2ë‰ìw¿rznUÍcÖU³É-;crÒÖúò›?·cÝi†
nuä}ø‰ßSŸ`f +ংãÑ©îOÚËG´Bh¾ùŽ[äð¾7/8—mËÔl·9¨XrÉ”SööF¦Þë£èpgç6KæíÛÎÛEjf+,8² ³+{T¤Îð¶k{ñjî|~ëçJCí[Ö̳¹-Ë0=HÓ趕gâöUOcï!“yðÖê¡Ê¤g©‰ßëHh +'qf×Ê?¦hÏýª^m}ðNÅ4>`¿ÏÙ +Ûmv +¯`:y +z.n¨jÁ³k.ÏvÛøÐú üW…ÏRûr¨„•ëD9òÈb¹ã>jn+ÑÞÿÒ±‘–ëŸ%íÑ4äHêÿ3þfm¢L¬X»Pƒª8‡/”÷ú‚ÛŸï³´Zô·Ÿ?³ÌCê´IÑ÷´[~¤¶<§™1×9õL +Ì3PW0'Ö„ˆ]™sË †qæåbþGÍìC`{lQÈŽkdxäùQ
Æ4骘ݾsg{N0X8g-S¿|+…AÃGË•BG£ÊV+%R[É#[Å,îlAyRBìÀ +öæìý8¨Q×=kºVï÷Ì~!)R¶-å.f–]4·:góAÞµ^Œ¢øš™HžŸé©Ú &’¯1ûûD9__5jÕZΆ̛Š +½å'N%˜ì +¯çÐN2œ)É2€,8ŽÌ¡¿²¢÷¼ñéæ‘áK¶gRÕñ=1“¨ôcµŒÓS«ÃGòÒÏ`ìÅv›¹SJÇõêÂ9¨¦[/~c“xö2;©=µûÞ?.cº~¨ÊJÂÈÑ*c:Í +\‡ÂŽàD²[«G+ár0Ts¬"P#—¼Zn8çú}Ú$>y¡§ã¤*õ}Ôù†õ±Æ¬JôMv;…ý|nRÈ}ôƒ'Oñ\#«‰I¸ü±åŒ5–°’†Üîræ@ñÇÈ«8îôËFªÿÆÝ‚Öׯ)?7Vm+ÏÈó–å>l#3V}ÛtY"Å‚ï-ÕØR1¯Ö$ 'Urk¬/°õ}S8(O¼Áž#fÎߣ—[K]bÔÚÆbb
æÓ}ÆØiW›éä#lÒ™›ÿ +â:pÚøVõ›WÑ»Ú_ùJ¼³ûéVÜ
ÆQSá‡OÍÑ)×áèÙtæ`#xN®g1Ò<'º >Öûh¹ƒ¹úÚw–•Î(ëižðÏ—œøš]UÞÆܯž–¸={éë"d왶¹×7¹5[ü2¯®¾B6² ¯ð&h#§álDiew,÷öÓˆº +qïh·åOÄôµªŠq9ÙÃJ"±¡¯ûTåG–‡?µF[^CFÔzþ±\ÅŲXÐÓ|zæ§T<ádj14º³_åÙFáe=GdÛ€m»8¯L|²!_úÜkèjOÍ>ê7ãÅ*¦í{=WIfwô3-hK┾gNøÝTŒõÄÖœ”dó–zLZŽÌ8¹³.ŽÍªÐå½j +Ÿ6“©SÈ8«Ázgq×7+©]Q¯AºŠŠá^LÒZ]ÆnsìÌæ”O®ã¡ÕúQZz6O½ñŠ¸øÎô5™KkÍJ¸³ã®U£|X÷$‚®ð®EK,Ý q +x5wÌ[~U˜â‘w”€#8´_ú½Ç{sÎÉr&Ô¨»£ô“'m¬÷&«˜¶”Ôî5ÁñD{V5ÏJÜøVÉV£ñÖ{G¾*©,þfÆn5£àÝb€Õ{<Šè^‹P5ûÎ)BšPz¼NÙ¤cpGDì`dßäŽ +N?½Þ;ØŽ|ºàœÃ…§Þçss¯Æî¢g½Å®”Ò¯¤½U…ÍOG[¥1îUJÖò.ó&Ð>h=kšÝtî¼ÂïA¶Ú’DîÈÍøªð!óúÊ +än«´Áí=©ˆùÝYã8~?òã¼V²î›§Èg0~òtíóØ󂳞¼¸µE^”Ö'c]Áû¾ykÓžYyèZó'Ïngw=›–t/Y厎hìÀSå¡Š%ÝŸ\¦„-˜·ðÌô7ÛïÉ~Y¼g;Óaº#Ï3‚×Î?s ¼ØÕ*Œüü“ªrþë +ȽwÖì o‰8è˜é\Ý) ÞZŒ3vJËÙwƒÆv\wÔÒ9¤rÓ%ð ÔÞk‰^Çâ¾TêUs³V4CÙ!íÊڶ̱zK×J·0-ÜÁÀƒƒå?ÔˆòŒ„é–G`e%O¾´6ñ•ðA}yŸÿ ÌB;תÑq>ˆáxµN],Í›‹ÚÐ ¶’(žâæa5c¬,L¬[ï7G'¬4Ž,‰kiÛu1+ÖÔUýÉkë00u1kux´˜½_[}T¬æCwZÏ—Õ'R*ú[k-Ý«0·…™1Íúwªýeβ%{ÊàAWá¬S)y±ý–‹²ÍÝù£-w +A¬D_¨ÑÍ¿²RRBõrP¾=Õô²Ú¢WfFD%|¦1¢uÿÍädšOc¶œdµ¬Dì=ëokF÷ÎõÕ·‹dÂ-S4ŽôÕ}êôbzNÆ$µŠË·gÀ©uº~dÏ÷+á›é˜<ˆ^ò#ra¯Î(„˜_«"íÇ~¿ênåRøÈä¯ +ߙλêNß'©Cn0EpF™Sòå°pf§â`ùœÓWä¹}{ +eñ2sfÚV¾¤ß—ï•;wavÆýªð9S¥°šà*à#_¿¿“Ø»éþöÒ¢í¿*ÚÓãô:™ƒFÉ„‹aË^TXßíÅIJVkó^KŸ;Æß= +6ÕÃ\ÖX‹0ÜY lkµÿ˜ºËd¥¬€½ÂywNÙß¹„ö+¸¯µQWøZK=ß™ò +Ò÷¿Jíu›ÎóþØöŠ…Ç¢7ußÁµNV tÜY/ëðĵY`gmëT2/Ø–9eW;òßu͈kÑòãS|d{1W¬V,¯¹ +²-¯ÈÌ|ïÒÊM—H¿–ïlgtÀ~Òœ\®UÅ,KU0àÔÚóÛž•3ö,+_Ô0Kõ3º³¥ZDã¶í£a>¬±tÛîÉhVøl±×ºE+\Ö-”À¯kÍÌ©ëy’³¥\i±–µnQ Öu‹Jx¯Éh{o*«œ%£½ô\
Æ)ŸX¾·l»i«g KÕ°Ý«¤ùHxܽŸ4yØU¦<W
4ï rŽ +m–à/ÙWJ”mm±SW‡¿ÏºŽõ +lOYîáIRe.¼4J—²|‘OÖϪÛZE|¼ÉðôæEì †s®ósÝ¤Ï w{ò2L®§Oj2ÈlÇ®êÝ+˜ßT½eÛ¦Äk‚ýªë• «…¥ +™´¤M]ÅÈ¥mß?¶µÂ}ñT•‰v+[Dybdß~µ(ʶg$MÇa];Ë°†÷^> &¨p_u5"HÁ›ÙL”zäKÆ·sí`g1v/˜O¶Rz¼ ½’ÅóSk³&vXô§YFuc™Ù×#¬W>´/I?H-¾£NˆM¦ìm% jqQŸc9YËéid5‰WðyùášßÀb«d-C4ü%ø‹™Tè©n{Z«ªëÒ©³‚×Ïk‘¬=bò*^Ù-Æs’•Öóðu.ÿÛV7 +‹œÝäªF–yå +ƒ#Êà/ù|g[¥¹lkåDO†ÒZ1«œ‘ëøx‘לº˜ÑÜßð|<Wп™Ÿ3ºÛȬÿÍeSýÇŠ¨çºåjg–²nYÕË=¬]Áµž—QK•W÷\lØ +Ž{®•Œ^ëy™£×Xœ‚5ºl¢AKeµj|}‹o¶í”|(ëyàk=¯W8]£Î.m[+atÖán×$ë¤åB•WËe7t´e=¯,ëy•èZÏËTÎCÁÌ'ê¹ °‚_ècæBÚ“Õ³‹êCË–Š3«¥•M¯´æ6êú$÷±VÏT×۳˖§Õ¬Jù Ûò¶m~óñî>ÍóYÚà*â2³±%=~¿¢t±eÏ'‰]Y¦=ßB›~É‹l
V
^k¥f˻Ԇ¼YÈou*}*3v0rêøÌ™_+@ Ô¹–ožåboO_y®&ˆ2¤±|Àé¼õ™…ö˜ÝcHá<âì‘Á¦²f»?Z¿ãvíS›âŸ˜:?BGèÙŠ.Ao^p·WÙ`_£y׫Áܽ¯PÌŠ)äZ'ëÇ•mŸ;¨ ¶Ú+è¯ñv aº––ñ+è•þá›mwµÍ»ŠLG+¸¯ º¿ýg²UÖ²íFBõ `…FÉ:CÿýFÞ·2f™½Ö¯l׶ö|=û\„voí#x—%ÙJøȬÍX=»Å‡Ì[á^‚€dw«nk¢m,еGë;xÆbð´kW˜Þä~2_h®\¨ˆ¿1HªÈ²e«¡ôô”Ãl™fxcµ¦N¦íŠÏ†þRÌZÖÉJ ÜãsMš–Ðe¡¢s}jÐ=ü˜d8—èÉJ×V“¡2µ`#Ä{©êd¹g ÆÇÍ&¤·ö¼ÊÝ+á;³õwÉ.Ñr£kÙñ·æÝÓJdeÛ‹2dvùd‚” éι¸ó +·,ãÕ¼«²m¼U‹Ž«s°òŠ+U¶Ý~f¡Â}ærË„\£àòÌUÃ%;7-¦¢ g«Eûð\U&Îͦà-œK7•:nd…¼ƒö˜¶<öõI€÷N5!Ö{‰¤òa süµí¥BÁ¤|b *M(?m +g–÷¬ÈgåK]ÄDµ·ÛûþØ{×åºnkMô ôü㪤ª©àÌí_¶r9û”r9qÒ®®.MQ6;馨8ÞO0.ßÀ\sQÖºÈâ"½vÊÞô˜˜X +‘¿: +x5Œ%ʼoü¢°î”@ò„ÀC 2Á(r}ײŒC˜S̹ÒF&ì•@;oªØä|£dµ¹s„ðdµæcPÍÀʆ¯I=>¶$K@(´‚óæOrÙfÄsf*÷´€³:¹—Äb~·rR¡sæ{r‚Ò-D€=k5tÐôp9s^QdsD0e¯9±™®a >ÀÚJ48
h¨lXõSaeÞµ,„\ãj²§Ÿh«ÂÉl#i<Ä‹ÅþÒb@Ø@’×H›Ö'ÇuÐTfAb¤æ¹ñiåV[i+0ÊLW'„°tãQ‘˜”²3Yƒ_9¼}BPšŽš3òŒx®TW×ÛŠcuÑ«”màD ô:Dع2„àJÎöÁ `J3¢tPÈôm)qå3˜ß@ilu‘7TsA"†TÜ`¥ÿ5ß{åí¦Ìv¥m“X>éU…@‡ln„8ÕÓg7ºˆüÀ)h:€*Ó:C'*—\–E[)ç?j4,<Öx´„ˆ@]ZFÒÒK¢±”±÷—X#2vº¨©ö›ltýðAý® Éë^¡Àæ-qüYÚÖj¿3¢FúãHƒÜ¤ªt*.£ù9Çg%Ôlß$<‹|Δ2÷›§¦h"&ZbùS…¾k·iIÖOÕ¼æšrp&ˆól³Y`%
ÕXVhTÆŸM‘ ñÛT²Ÿ®¥EË¢êÚý´Ž½JVƒ–/o@ÄKfˆÙªÁ{Í¥Õ·bÍ^aëxG鱟ç +5”L§’_VˆÒAóÉjÛ$&µÕ5˜½œfä*©§BŒÕÁ@áue5ÂDÆjÞ\ +ûðQ9 +‘sÑÁ ;-&;û±b%È]¬[C‰ÒÕqaÑ–.«ª+«@]s"‰®ú:ˆ|ß+ƆÕÿ k_ƒÞ$Ž'Έò~EÝÕ¶š·FD¨ÆQmE+ +œ&«ÒHN ƒÙ}4®™ì³ Ò •«^_q˜‚Z9ùIb˜Íœâ}mï'N÷k…ü6ª45ÌËØ)I²³ ‰ÊbÁ>ª(‡³u%ÿ•1GQ$E!”å×beõ‹¶W8)ãòë«ÄÔø9™w±³Ád\éÂU—Œˆ +f?UÙ´ïp´;‹åOv +-õ}Û̃µBF>M¬jtRE€‚ðCó3"¼%ùnmxÈ÷èäË‚XWý½ Ûm•ù0 8‚F„:]ô2m)ë¢T0`¢ +"ˆ +Š©Ã¡b¹D5.t…8‘ç_ÈÌ*’,§h.=ÖhØ3#«ÿ]ûl-¬)Ö^M„JÄzj®Æ¼mS[ +ƒjã©!¥ +‚²6ˆ8-0ÖÍÚz1Q¡Wˆ\ž
2ʼkÐ4ÓàÙ[!rÁi€’džk;™4œ8p½Ìˆx_qxæm"Y(üËêÄ¢<ˆ`ûšà=kkŽ¬m蜛32e,44)–7'¤¨P¢qÁC_m[+l8ÛÁQ¢¶Í—/©ÛØË…åÑÊ.€½u>…™ùbÖ6BZeõXÄ0K‰š‘ý(ðíõ@æBõðR€€ÚƒË Of†Ô¶”]P~,IJê +±oÝQ‹B«oq%²ŠjMâ’É/Ga4H»Ðê[ÔmP7š“êªaùQ6ŠDFƒ+¢â,ÎÛÖÙ ƒ¢JöB‰áV@ÆY¶å°-¥É¢â— %“'€‰ +Ä!K°’¨ÅÂEY`Cy:-Kù$*FM`Z!rPl‰ƒèõ•ƒNƆroCf§D—‚úvÖbÎf˜Ê’˜¥~ïª5™ãþ½·R®dEb`k4®
÷5(TäœÁÀêhÄUSà¼me"³…¢®×2аf½f+r;#©å´A¥ýÝlaLKL¦¢ØÐ{¼Iœ3
%(t³Z€+Ä~]b +‰Í +€f”½‘<2=óÔ㜈´¤Æ¼-
©"yéóâ´ôùy8#cž‘’æÄáŒô÷µ½—xï°Ö•Pþf>¯„Òéóˆ¨<µºZQôÈe[µvÌ¿Áœ8û^ƒ<û¶i–ðd»`Ø+VvÌÐÝf»+[mØ•}âbÏ‚<¶·IA³càfp¯v`a +×\!ƒÃRµ»
À‹i¬÷ðí{0oëÕ•ËB…fŒY¬Œ¥oe&WÚ¢Z©b4œrÑà!È5¥‡ÒõžÉ3 +IKoúÁŠÊ‰´¡,ÚšÔ?mWˆC^!Çy•ë¢½B¸^ù©!ˆ{ƒðž í³S;ÄûA\Qfä¡6P\*»CÁ ŒÓdÆSF(?U çm“ºú¥î˜äIN¸7˜ˆ)hYñyÛ¡:%¥¢9lj®“-"2Ò"jæÎXŸ‹(É7'ªö‡šâ`Q3’sÚã4#ÚI’í9këL¬™iµ3â\ž‘‡¶L¢RWª>à,D‡ËÚ"œÓ¢Ç¼`hÀ^‹‚ +YM1Þaw9ª|« ‚‰8ÌÌÛVÛÚavš«¿$Ž)¬'…›,Âi± +¢ÅDDw1ø4#Ú" +ï[m‹•M‚³$²0²ü +Ià„X2cfÏZ!2`:dýd +ouqÀœ)š+‡‘PõÛÌÚK6ª1 +²t0'#=Æ)ª²bg\!›ä +öK²Ÿ”6ŒŸúCrùÌì¡ä*u–#íH,Ë0»*w˜µÈŽ¼>'#©…6SXšˆÉÖ¦›unN&»X…½ÅÚF@ŃŒØåÂ2#J`¿ó¶#AúV‰sûý Ó•§Åõ¨W«TŸ€›«=ÃàšñþÑÖr¦ãšÄ¹gÝ$èÊ4¤pžSÌù)hÍl$}×¼%C(¡ŽŽ:¹WˆlùDƒÌÕq´WœÑ¢–„cèÎÀ„ê8No4Â'bV—ø +‘§Š%üšû¸2c½h½aZh¾¥ƒL%ÁÛ¢m‚¸æHì :ÁÃFy„>YÄ>'¾«sŒÖ@¿–í#J‰Y[’XÔž¦Å7ÑÏeÃ9"©¥'̤#~Å¡Jaó’b4o›Q‰gæ¦]!—î +î_Ëo˜;ŠÝPëçNeÎôt¨×®hb;Ê'ÂU=#Î}+d¸ÀG¯C÷âÌ8Tª6-Í’væ-yYQt\=Ê3¢*Còþ ‹Íít–LÁL´|qjIÜ̬ZÅ<k›Ä&פ®üÈ2.ùˆ]8Èà+D…D¿$y’JÃï—Az´ÄPµŽ¥VgµœˆÅf YÛ@øS-uFl’
‰@žÆ¶ÌÂUƱÚâòpØÚfQ5˜™çÁ53òÄ¡›Y!XFÈ]niJv€JZ³0 ÇBÅAðRËEÔØ¢ÏV¨ˆABÞ™{…*±äëAMë9‰”•ê%©›ŠžDÔ½a»ø›y Òq-€ª‹V:n¤ÉfLUg°+BÔQû²Y…±È)C䜌rËi-s›¾§¥‚šV +Ù.s¦×‰ZÜ+´ë)2e”QÖJ^7iÙGƒô£*ÆA4¼`6òQoyÌ~|C0÷ñ˜ÓÊÍEE¢¤æò¼Åèè…-ÊG‚!ä<ØìŠ+«¸4b®fHꄨR+åщ’È=·±Ï‰³¬Q3dÞ+ÌmÑ8 b +j»Ÿ·¥DÌËÔƒ¤î¾y¦T€,:²`ï¯J–TŒQÕ«4K¦m õqgmg§‚jÕ´ šgéõŠÝT8ÞÜG\M71òOÃœ8,¼ñ¾¶÷§qiz^X±Â#Ý„JšD¨'À(¢ja|JìÒ4‘@Á~QK6à0pù€zÕ(”£+M^o¸}FK*Ñ‘ +´‹Ü iVëuND‰Éà*¢ÜaÍØdvžjüÉŒ6ÒŒ<†Ov).V$ ÊpeE‚¥ç–ò5_ä()Ë2f¢ü ÛÌê–¬ìT…¡ éL£õÀ½YÇáôäW1—w.s> +èæ˵â—ÛÃLö…Na„`šI’2³mîΞ5Ük +8ô+óêòî/g—Ò¶ßyv{y÷Ý›‹»Í·Þ/öî|<ºòöfâùÉ}È?^Ü~{A+ùˆ„ mYÇSü?ß +ÍæÂíÍ!³•×·7o6?9ÜøÓËéï°o4msÛ¤´þäó¹½`pÓI½zuywù¯ÍÕ©ñ¸®7Ÿ×ùù»7ï>÷0ŸÙì•È׺¾8Û8ýåüìêü7¯6ŸÛxáÓ§Öm,[̾~þO<…M?àê[¤’œ]_¾9{°Ò°µÝi;Øfwþd‚a6ŸÉc³~ƒaÄÜ»Åa9ôcÿd‚a6ŸÉc1è<ý`˜ÍëÊ=¾h˜#†ä_LËŸ#æy|8Ìù“ ‡Ù|&ån=†ÃÃaå2ú„Ãø_J8Ì<ÿÐoâ'³ùL›Aèq†Ãl±³ýŒ<™p˜ÍgòX$¼C‡9hÿÏã‰æÙâÈmË<è>ƪ[Ä¿ÂÏö~¾j"à#ü|x üE¿øϯËÕG¾ÞÎòµ‘@ôx®¨Íe¤jÑ“,~¬“säh[p´òKæhOþÈÑŽíÈÑœ£ý"Ú‘¡:C» zägG~¶ ?; +hG~vägG~öøùÙÜ©óõv^ø'ÆÖ6žü/ȇw<6››úK>6OþxlŽÇæ/—ÿ¾¸úËÕÙ_o—xˆQ, ô©ëK¸“¼qô¤õ¯[PÎÞxLœïöâÍ͇Êk½B¿y)ŽÃ/öòÔÊŠøÿyp'>÷»“þÏçýïþÿ?ïNžZÈö±†ŠÌë‘ÕPyû=UQÙtv©†Ê†·õG/ ò‰§yyýêâõåõåæ.Ë~R/Îî~»Åu0{ãàÄŠõ¡¿ÙlüÀ#õ·™Ëc‰Õ?,—luvœìèU:øDó›7ßß¼íéŸß}à°?>Öð¡-õ¸f/ðåCØØLøÏÍÏÍ?âØl>‘„Í'Âü°ñD>0åùDüAOäžÁùDÒ#áÈãòÜR/xLWçÏ_7ðSÛŽo/ï¾{sq·¹¬ó‹½C‹c§{L +ظþÛ1#ÿ“¡5_ý¸yø×°É6ŸÈxé|"ÿ>ppèÜìæõë·wt$n/^mŧwæmtüÿÌ3ýe( +šÕÑ$þØLâÇ/=>‹¸;<“øQÝÛ…[¾£Â÷‘ÏÌQá;*|G…ï¨ð=¬Â·±€rTøµÂ÷TãÒŽ*ßcTù6®ÃñøT¾§vÔøŽßQã;j|Go›Â +OEçÛf&®õå'§õm1£G¤õý››WßÞžmÎc*ߣVùž$"ÆV9âž¿ó+^l¬þ+^|r†p,ãùS9V¼ØóRFˆ'Á›õ;–½¾ê‚¬€,ÿÇ7WgçÿüüDH7ߟ_Þýø[áÞÞýxµ¹[[úDßm +1ae‡²®ÿv{výöõ(‡³ßwj]PÛ1ßä1XCdjŸD=ÚC~áöŽœûâêê¨ëìy±šÛà~|+ø§Ï¾øOï¾þÝõ+ƒ"R&Ê׺¹þKï‚Ë”œ +ùË‹o/¯çžýé{íƒ}õã›on®Øvqòååí«_?s'_ôþñów³ÿ¹“ßöþüÌ=¯‘þïÄ=w1‡)ÑSsq’h›çEÿãy‹SðåägÏFPÎ?~ìÿñÿö?þO'ýp’Nþxò¿þ·;yE¿÷×g§Íçéy(S>i!¸ç©ôŽÞ¹Ð´Fäö<6ßN¨m~bNóóäƒ'bjÏkp•ˆ½+úëœ:HéyÌ™úMþy!SÛþšŸR$byžRLtÏs©Ôk Ï‹÷Q:ˆþ9¿ÝŸ¶:qÃø¼¤ªDo=¶”õ×'?Múrz>Ejš\Ð÷£µõ¹bà9Õç)¸Y¥Òücykå¦ý¯©éô³öÙú: ÅM¡éËíyk -Ù»þMˆØ»Ï>1ѧjJô¾‚æ^žWÏ«ßÉaòúë-5þø¼¶”&!E7}»>o5Ò:õ5ìëÈ¿Ô—,õÿ%"m™˜˜û:„(ÄÚª·ñ×Pè§B_¨š›¶mµðFéß®þv©ïƒ’y›ä¾ÎíäÅý{êå³oûFŽÅÕÆû×OÅ5ú£ÿ{ô²iµh—·œèƒ¹ç5ó´ŸiC†¾ýûJô>iù2öi~^2ï¨> -EUßÃmbžˆ=üâÙï;«ÿìkúÇü•þ·¯x¡ÓE,nêL–þèGºïle÷©ºLì¾/V?>'ÿø¢¿%—i -z‰9¿Ö}|^ÎmÙ$e¬Z?—.V=$çgå±Ð -sµ³™"ß®Ÿ£šxKÕÖy[R†0…©ê9—è› 0;•.bÿè¼Ì}'µR¹‹Ò/‰‰» íë„SÑÕÓ’žŸÜ—]ä¾Y]àÖ½‰OrýôÙ•äa«0ÓAºˆ®YOæ(úÎòYûÌÙ˧ª±EÝlÍ9Ý -Kí²Díí½‹¯ú?ïÿL'¿úõÉ?þ‰Qoæ²ÔRÐ}‡g÷ÁÙûØì}hö=2{˜½ËÞ‡e÷AÙû˜üÉÔ V%¶¼[Dô¢MVm -ÒE¥ QîÞèÐú¦(*¡õSÕu&Z'w((Ùc™×[ë:wÆû¦»›¼9ÈXºüJ2ûKÓ~X)êä~¦ttÏvV&†ê…é -[ZejÙy¿]Žªm9Ñš™œCâ
Ù×¢nÝàŠW¡4Uì•…J$«í KôhÛ{ÕÛ¯· Rm´ƒ¾õusímE7‹Ï'áð¤ðx§úZèÿ«Ç¤9(qS,ºtzôcõË¢ÉÓ‰%@X&>¢ï§ª
+i1x?øªH×aqX¬¬÷V'º´Ï8ÝX…Ø`Ò÷YÍz©jl©øµà¥ßÌö%v®ƒÉæT:(“éÁQïôÞ5íª/´…ìñzH Eem}µ‹þ”wrùõµÎrùõµÆZõÛ £²•Iuaáƒ>‹^ýô]+v–Kß5ö£®Ò-‰át -¢Á–±·làíz*^³"KÞ…E>b}›Ñ†ÖOé¤ÒiÕÀâÕ¤äD‹ 맡¯˜œ–RdN©Da±¨Y•4„Ä\‚¬=IgF&ÜÈÁ÷®¢œ}²«¦IXµÉÁë¢sBÖFBÖýMÔ”‹Pc£Uè[8ó<m‘WúÅœŸÑN§L]nòY[¶hœ.ÒÅ@óõd(”=J\•ìíLôIÙòFaò,dè’ôÖ“jiù5!êXú©ËÌ’½šáäí©ów1ãÕ~VEÞ¨ý -©°XÕð>.†B¬ª©,ZH©Ð¶C_»¨Ä®Aë -b—ôfIdèF)ˆ,DGL®LÒ{¤×Ë]JÕ–|i˜Y?b¡M¸2›6u}‹ -BÌÓb)özJI%׬¬ƒ§Œ7A‹©–¾2 ñ³3³œ Ę¡ñL9€X+æïçôËNÐÑ.Žç\DëI—°«¾5ë7ðÞÌïÎG]@¾1¯~/@aR.EÄV&|DÝ$ÖD]l¶ß£5)¹s=Û1ÁC¥)ê+¡î‹vÁ^)Ý1“Wý‰G|ð£’éJG·µ&¥šø̺LÕÎöwW¡ ‘.†sÃ+&wýªéÙõª«wE£%«†-Wgû G¿xµ_“$RÔ`¡ÙIê¬Ñ´*n‹;LeßÎdô,“¾ŠxAœÇOv¯¹b)ú”qÝâÇQ3OT ©OcaBˆS†„Ñ„®Kç.O°È)’ûŒERº·Ä‚ÐiÅîP¾à^¨A®JÜͪmq‚4uˆ5¨à -8DçàÊüøÊ—ÃP‡¡óú¦v¾w|°lk‘ªx„¥êuY‰»z=QØ!5tÐ7skó÷e’)<®ÿV«l~#
ÀgÃÔ&éjTSYÀNBî"ˆªK}b}“\M|7‘~~H[ˆ]+˜„Øw„vK:DÜ -}Û”¨}™ä•ÆÖ |'Ö/OŠ›ÃuçDöôMø¼l
?‰dÐ7…KäÄœ³“û]æ±=Eä¡«9bËæÂÖ»NcgÆMlUõE6¤ÏèD4èß™ ¨:ž»§Áûº «²E&µ¾œ…w¢ƒ{wÁOJ¬N”»B»×k¿ãrïdí„œD‚'âÄ»ƒˆýGÐpTni3S™€Ép‡ub–ÓìY^…‚í„Ö_«ÑÞï¼z?'SÐï£yQŽ™¼éÑyb馓™E±ë[Jì:¢hçL0p³6M¸s³‰ï"““ÿ¥’ÕッŒ,®N"«íˆ¥)1DÙÅ8L-iËCšT3‡WËÂ)«½Mîp7‰©ú”ÕÞ¾UF%ÕH¤\¶¨Í¾Lجg%OSõFþYÎ…Jvöhpc¹+ºæ¬†Ž>ÞRÔ@ßÌÙ7Ÿbw@òøÖ¶?Ðõµ †Þ²zI¿D],R >ªé½+ÙÅ‹Ãœœ"žtbœpØÆ.4QS”,B9iéM>eß÷ÅCuï-±m)ÂZ:ËØ"WmÛ,¹˜<1,‘¥Xÿkª—â.ï÷}˜ÓvŽÒ¥ÑVú¶ŸDðdcS(KŸ!Ìî0"G±Ü“3êþbuºå}¼½Æq…°9Âv`"±]‡Û¡ÿDg^ª -º©BufýS.›¾Ú¹U.bò4ˆ>Ü—1xøP&^Io¼º`8ÖBFP¢S•¼˜¹¥“û¾-B®¤†¼TrmMµçÞ|ü5ODsüçP ÿ0F6:õâ°àñR$hÈ4ø£jÛÌ›‰<Wè7‹¥‰M ,CÍeÓ “i‹¿Tª^ddpi¼[°Âdqž ±‹nˆê8¬0ST+LΪiÙïÚVuòÞRB=ˆí½ßåNV±ON¯ b^TÍC7XCCgd?vOU]¾^*¹Ö¨‹ËÆÙά‡‹É©™Ï‰j@²“ÝÐdµr5ÍDª—JŽ¹"4›I, -ʶؽõqc[îÒ{ôžá,bv9×½[ŸÀ…9xïõ:9Á¥KäZ`\"—ÃËû;Qï6
º&µOñŽÞCŒ’‰X7-tSf½·h¦+Ù¡«=ñÞ¬ÿÜ‹1ŽV´‹âÍ@ä©é8Šˆku8ÎUtPb„í.[‘}žfÝ*ÑÁEݯ5Ùê -Ã1ù¬`r.×2#cÑûÕ<ÈÐZ«q-’ü2zæ«[ÅÜ\Яó6ç -X¯jˆ%1KL3ɹÁâ¶&9×D”<jIá›&Ûö£(4ˆÄ†F
ÉÉSƒ8):P£´H¹ÍbaIzYEצ޻û8„ «É”:h¦Ì‡U$[Èæ5&I;9HÚøjÁŒEî$LÁᕱŠ5ymLCåq„†}Ê„4á5drÓ¹H(IWÆ›KŽÈe„l"žŠÈ2Ó¯<|ÜlšŒ«và'ðR"˜YrÂ9™2æÆÞj%F º¤€cYm`³}N‰è^Ý‘ƒ~;¿¹¨¥AEóÎ~ÖŽ"'Âô†ôu¦Á´ú÷†R®ñ)¤žDSI'10oñ‹Øòà"ÕtrèÄÄœ -î¦0Ü~c¢m¬·Ù -SBšVÓÐúZF®Y"Þ¥d?e؈‘.—ýÌ'U[Ãঠ-5³ë}Hø›¢©ŽmÒÅfA&í`˜IûŒØˆ "“TCàÌ%bÆGÊ3+OP×Jš»EªÜò5J†¯gû -4ÚPí|¿ô~E&žØn*Nd4û“GvÙÞ"G‰
±Í"ýØþäàëÛl§¹8£©§ @ë¶MÝN3K„¥¶bþ:¯’ý–ù|ñø±ièûÞÛøêZ?ev:ÉzŠ}ÞÆ–Öq[p³c´†Á¦±m¦„ï -6CÐlpÖ]Ñ3'§¨®RÊ®
SLìòMšÖHZEÂ!AÈ'©ÎXP‹C‡dšÄæ"T
’Ô¥ñvûýŽŒv¢JÄŠ9s:óO/_ônØWõ)5
„ÖO>¤hl[ª¢…dôlÙ±DŽHÚ2_8² 4õ+Pìz_ÖC§©RŒ‚ƽZ#ܬÈh[/;€ ñ;d(ÃÑ8#·Ñm±èD[RÓw-Ü;ìIÇ|«¥‰s·Å†0óºW¸U½õªášÜ3ïLAÑÌçÝÉnE”Ûzo¯ªÖ`¶m‘G‰$Ÿg+ßľ|¨Yœðn˜Û©2Ä’ -c@¯l¿’,ÓXn-ÂÁˆf)d“ƒkÍÖ+|Ðye -
nÿ6aPO„\é\CbTðësk †'œüa+ê¦xB”JÓSÎz"¢28p\‰ ¹X.†a‡f,áL(Û·šØÒ»Îú-É,
\<‰ -uˆr8&Ô¯ÆkJs¶q«iØ!`ºpµ¥/<f„ OÙdÕ²É5å€à<ÀË4ͪIÔ0w§k‰ê6
^CÒJF¯~²ØƒæþxÄÍXà-ùÙ=ìHü»Ú´YÌ‹æ0RK‡Ê2ÍÊ!¬8ôk4Æ'ì1¤ý1áì¬îÄÉ |ëU6³ Avë,³¯ºP{Û®'0L7‹ºNv -V0†äŒbzFJ‘M^c‡‘'Hfˆ•øy %N8yÎ.>’`nÞ«·¦Q¿ÊƒH¤°Ï åY˜6jøÌlìÞäS6uêÅ3( W{7@Ns’¥ -†û¹ªÚ³ÅÜ´§0f5¨Éä•6ëz2q±9?ÈÙ¤Xü™)=ɱQ+YSö̆(P¨A-ªÉøã«×¶£à“¡@133²‰¸ýÈcÑû‰F9’â –ÝÍýø¹.¢ô‰OCå -;Ú:#EC¶™˜,DE>Þæ¶m¬“&6NîD›f6d -_ÆÊÔd›Fö3WÉÐv`‚ “¦vÐ$üøt!å³Qap -èî+‡ÝÏìqp%Ó9³&¹³„j¥b48šø¢6¥Ymñ -”üTÂðbj<ëeŒ7l¨ ³ÐÎ4c…ìŸòml¦=ø0‚@5ç„• -ë5†lŠMÅhY•D ¶~=64GX0ÛlçÜ;>à ¤PpÁt‰¦ÎÖËd…„~WŒTCwNÑÄ9.Ë£ÛÁ"úày[˜©X¼Ö-™f²Ù8÷ÓÈfá#`H~+vµ?½°>½6²7rû [•ù²ÅÒåh~…U)ðåýy.},Ýtx3¼ûTaåµ’3jkœÈ¿3n–×™À¿¸YT“JlóíB(’s/ÄæQÑ¢’áé\;`©ªI(¥rªº§¯StÌÏ„È×y“ -}³ÄÕyDPÂW¢ª… ÑZûë¿öbC
;U*@Ú0šY¾üzk̆JÄ ,QB'£nLe©äå}MG1"ì&çiô#JŒgSˆlacˆ‹r13hH£²%´ÕQª§Š!ÝÎ"¼ƒMT†Y6NF®aÖZ5íňG¸+L®t ,\–» -™-.X PÍJR¢C ¢A>„ïeÞŠJÄ öíƒE -@åjÚC¨ÝæŠÀý0’s5´Í¶ -A’D”\QÙ
1ºêéS¢±%g…Êh‚·;Ìl»DΪ5…Ù†‚£0ƒƒfr™bq‘¡S¤ -Ñ`)ÐCÌ}uKBpB”"ÛB³B
D.¸q[6öÕÏJd5ë´IQNCIƒ§¡æÅ‚ï;«Ò…4®dé&¤ÿãh‡ŒnÓ”q·¦`uá:Ì7gÄûà¨ÉgT¿¬lVÂ(jD•¯Ç€ÍGD -» ÂÑœ,ܼjQ5î՘ب9Ed»!BUy &ãƒ-[¯ÓüØij§Õ -ŽÖoã’¬ßÙuµB.ò°Ú“û+Áqè©)¹¨ÿ…Zâè3«²OæìZŸ_Óˆg¬³jÏ< -°Šáë¥uGÔnI'læÁLê4úHÕ[³ÅDÖdQ#ÔÉ4#[Õ5˜|‰˜•dÓKÙ®Ò˜Æ"£èòbØ'³>£Z§‰k›°˜*V‡•í±O!bûdž¤™hš,ý JeFŒ“‰è!\UªÂÚ`qT¦i\u(48JÔŒ z‚"]ŒeZÉHž>ªRÛ‚ËÅ=,‚Å-W³µ$‘ -„\Âìój)"Þ!#;„NÞ!kx“ù`Ê:
<±ãâ>ͳMæ-¡®´q凑gKR²P -³ÓÙe¢2ëÀÎ…Gô°±Íd)˜E’^MÐENá|yœ.»ÆÚ™,¢úµŽØβ(ëеàì ôÁQgk¤)ân’YäËHg#ULj‹`!¬Uõ1ÍÖf'Ìb$³,c©œÓŒ\l),æ‚ÈÙ Ú)KÕGE%!q1rd”I>8˨yGðøÈÅ¢ò¹µCÑuÅ‚9:ÑÛ¹ ÃÒ¼mQêY6Sg1ŠNFۜƹÉÈSœQ¸=Û®Tûg‚ˆŒùYÛWq -µuig…0µ¤+#* 4+‹KdÃQeVIÖ™}ε\'åuÎë„K[ÆÄD°$.veBXÆ]äÚè6{’¯_ „Á2PÇ$8f°Ï!Ú!ëg˜çy 8CÌ&arœÒ̆” IöO~oÕîˆ\áÃ9½è·6»gaA&Á×ô)äÁ©3.-CߢyKaɳoÜ쪎ˆàVvqe¼SŽ&è› ‚P ã5¯ûØg+:‘mÒS˜É³CÕCíEª: ÉR£öïëì\˜ñ$Õq.‚3Û¨Îîó<c?!ÜsOG«š½"+¬iúðМ_¹µù½z6L³kŸ¶Lï“\V[ÿÒLé;ÞÛ›˜‘çÿ n“ò™B—݃²)àl{ál -ŒÖ^H›æµ3Ö¦¼¾Ú¦u±Þ¦¼¾â¦t±;榼¿ê&f±;îæ{öÙËþà[Þº;£o^p
SìÀ)>ˆ}08áóØ…SÖmNùvû qYp,Néb/4NŒb<N îŽÈ‰ÅÜ“S¸â^¨œŸ}ýûæDæ<9="s‘9wDæ¤#ôÅù?þßü`Gkæ ¦½ÏEÌoüõx˜Ž‡é—x˜þô>Udk,O9'ëhž ¯áyâÁ¢çý=AÖ<½×Ó,‘=ÑÛÛôÝÑ=çãYCøă=0>M4ÞåÓ†xÒ'¬a}¾çÙ¸ñÓ,1?‡¶3ê'” 5ÜO9»#Êû÷`âÁîèŸwÆÿD»#€J{a€Ê± -¨t±¨t±¨¦}°@ÑÃîh 0ʬáB½Þ]ìŒ *ìƒ -*=ì…Š²2¨t±6¨›}ÐA‚ƒžî‹ -ƒÒF(øìî(¡"Øì…*]ì… - mg¬Pt°;Z¨ô°^(l&kˆ¡x°Äeú~¨¡èz
7róîÈ¡ÒÃ^Ø¡XÔ=ÐCñe×ðCåÁ^¢ÉwÇ…0²†" -†²Ž(,‰{ ‰âÛKTÞßMÅ…öÀ•.öB•‰Üƒ)Š{ ŠÂ\°†+ -{öîÈ¢ÒÃ=Ø¢x°ºèèbg|Qt±Â(t²1FÑÁÎ(£CÜg]¬!bp{`šÎ¼;Ú(ºXÃÅ÷Ûq],1G¾;ê(ÎÕθ£ÒÁ^È£`€»c‚y¡Êƒ½ðGáÚFÆ=0HátÛ…TºØ‡tô°3)L¶kX¤˜àîh¤ÒÃ>x¤øN{ ’b¿íŽIŠó´*)8å.)ìL -aglR¨ë»£“¢‡ñI¡ÕïP -½~
£ÖPJíÁî8¥VwG*‘ù¬Ò¡œ/ÐJñ`‰W*ô½K¡µïYŠ.ö@-•.öÂ-…í`wäRéaìRÖÐKáVÙ¿ÔTÌÝL‡‹ia*úù^(¦ÞŽ)ìd*]܃e -‹Ìh¦P»—x¦ ïhjö¢]1M¡ùïjj;r‰kŠ{ ›Êy¹Û–è¦ ¯á›âäípjþ›ûPNíÁçÔìŽt:\e÷ dwúž7à‡Z
Øüß6
IýzÏ Ô¯?NXêr"NúÙ×# ôôºp]ø%†.ø~v®o®Oºvb±@ûÅR¯Cƒ¾;H0ì»Ãã’Û(Ø.¢Ý¡‚ÑÅî`ÁÒÃ>pÁØ}{ -¡ŒÖ@”íÁî0Êèb
HÙTÁÝ¡”í4-Á”íÁîpʦ-•íÁÎʃó,@•©í«ŒÖ€•gLzŽu5{°W~1rn©¼bÙ¬‚,ÿ„]ݵ<dËØò{Þ8zäïñÈLÆðs–E
©G|þ˜þ¡3Âíºz<XE…6úú==žÒ5tèñ`m–ÑCÞ#z> 5œè¡c´l=ç’kxÑãÁ1ú=o¬2Ý5Üèñ`mV¿óÖØÑè`
=Úº;~´)—Ki{°Ä¶KdSuwÇ‘6M|‰$mæÀݱ¤«.Ѥ͸3ž´mÔ%¢ôÌ`Ⱥm1¥í–]¢JÛƒq¥Gdi3ùìŒ-mkº3º´}®¶Š/möžÝ¦ÑÅÓ?Á"ôÁî8ÓfzY M»É®XÓ&÷@›6Ùv‰7mbóΈÓ&‘/1§ñ`ÔiSÛ–¸Ó÷<˜eIï‡=mŠÛîèÓ¦CíŽ?m_lgjÛ6;cP›Qmwj3ù-q¨M«Ù‰zèK«XÔvâvG£]¯àQ[Ï»#R[;cR›`²;*õmvÆ¥–æ‘©mKlj{°D§ÂÚÎøÔcsìŒPm›c‰Q=vÍÎ(Õv^–8Õö`w¤jç5¬j{vE«6N±;^µu±@¬}Ìjt±jµb‰[kÈÕãÁÎØÕfFÚ½]¬áWÛƒ]¬‡¹l'k<–(Ö&OìŒcö@²6ëËÖЬíÁÏÚìŽh
‰d
ÓÚìŒjm&æ%®õ°=dk£-±ñ`gtk3-ð¾D¸¶KŒk€k(×xcœk“:—H×ãÁëÚìŽv.Öð®ñ`gÄkÛ=;c^ÛÞ^¢^ãÁ¸×ƒ¿,¯ÇƒUìkãh»£_Ã]â_ۃݰí>Xb`›œ¾+ -¶ÝMKl{°;ö¸}XØv§îŽ†mbDzΈØC\Z`bÛƒ%*öÐTVq±ßc9œ›ïAÇøØ?a‡›¹†–(ÙCä\àd¿ç£7ç>oÎÇó>ÜïÌÙ×qÄ’þ),é#z÷§^ñ%z÷ÇôWþ§VþúÙÇõpÞƒòm–8ßö`‰ôýž®æW×=xßö`‰ø}ß -Kl¥V¶'D* -LiÕ²&dá˜ôÀÁ¨Þ2¬Ô‰´-‰2AÀK{¦L‹²cx\YyŠ0¢©²®U¨:²D´· _•-cƒƒïjü"ç¨ PDÍFLRVü”¥´²¡S‰oL¿ß‡üôÄê‹~j5•Ÿ*æ.ëWt&(?WB”f¥Ñ ê8³_¡8ÂO¹fqžØ0Ô»â’<‚” 3– ÑðrQ*^dUþ$W*æ5=¯¸ûèšnlì¢ -!À€pϳìT€RQdE›à½z‡ÈšW³B·Ï‚§Ò»LV¤§_øzµ(‘vÂñÈtÅ¡Ù-6ƒ! -ã˜&)ÉÆ"Ÿ7;§H0|'óQg…†~’í]$ç+‚ê,²¨“²[tv›œ2J9ÿÀÇתá³Aqþ wV(È"£¤)¾‰}¯nØl ¼U²Ó¦*a켩YØ:=ÕÁ°šq±&q»¢T©0×ÔÕ|þÑfGÜÖñ…Jx $õÊ‘É Oå Ó'v@qš…f¦4©«&7ÕZ;WZÓ5É–©¸‚SXÞj\^W¢H)™ÊfĹ•l8öN®™[}Ž4DH -%´fÇÉù&å@0/’æ&Ú…»>\¶Dd ¾g-+šôͳÈ*ê#íBå·bI¹¤nªâKÊTKI€¦øª,VÑ#;ɘ-«ü@ Tõ~V+hƒÒB‡¥5 -B´.0Áš"&²ì-WTèŸä~‘Œª”Êd>Ì[~–»…‚ùóg1¯uƒŸ”-Çà€›²$…°U…!“äpq³]¥LÂãr4cMrxTÎI†_tùr”¶Š -×gÿÁd|•(µiÔÍR‰ìï>ëE
)]™:##¸Ñð¸o…`Éä©K%µšãiUùj¢éâSí={ -ñ•%oFÑÖš†ŠK¥¢º.AëEq‚Sº(‚x2c™où£»T4‰ãs\¤DæG±ÿ/5 «•59ƒù -ÅS¶-/øE¼V$èÝ/´ÑåîKz>C%Ù/z3s¡ÁSTìsÁ$â(‰ÝS´©†1€UóÌ8‰R°2))9£_ÑàV€?ƒ\’@âô|Ñî“ †X¤PˆÈŠ„GH¡IétÝLq̀ʹ7hv:‰²IVC%:©À -h/T%T# -(ÉcšóÅPÝ®êL† Ö’ulpüdµ¤Ì+öТDDÈB¡¥VÙnB‰0Z¢Ø“7èrä -UU»‘TV&„8‚®ÊwHj§ -PNŒ^ -,J#ðwJ¼BŒ„+’à¾ë|CK‘’Ø9Üç]WNÌVo‘Pýä4Þ0Xd3MA2™‰c𒢦¶½„
…‰o™|¬lš R±lJ÷ŠLz¿ø–Yâq‰²EšF-•\Qù´‹ÄúV+ˆ!y1¸Ð -À‚²”Õä`æVå -mæYÂYä" ‚Õ¯2Y`&1ËVô£•s'2Ï·*½F»H)dŒ.rîO“£d‡xØjõšÃ†¤Œ °©zÊb gÙö”V'¢’ÍÒК -BQØb,Þ¾.Y»àóÃÉÿòs¯ÿÇJÏ)G¼pL°Ø’èî…g"ØÙéDãtXÉ@aá\²5Š¾SAàtëbüM1œI2£»…ùôi9ÔZD]òÈÖ&zéÔ'¢‚Hƒ© QSÉÁH×¢,$-ÃѦ4DQ’ÈCn‰L$p½Gi›±wt«{4œ’$ð¤]¾|ä÷‘’Ñ„Ëáu’,B4/Õ‰ÉváDÙ!@4òÈZ %:«ÜBl,LUÀI’=» -,iÌA ä©í$‚>qt‰† Y² >‹ÌYªªhv#B( @R–J˜4BžÝX2MÀækWÒ¨h°|S«<ÌSǹËU£ñ\Däf>Í•Žè`x1‹ª«¬¾ˆ›ŽDˆg.³Ë×{F~ªã‰IƒÎÔàJg0þ(-Û èÇ•tD‘/L@e¥FÊßR[ñt¸1Ì-†Dç]Óœ§ÉzGr]Õ<0幎ùʤ@Î Á3w+ÁÍ$
³B/Œ,æ¦!~‹,*Ÿq‘¢é M9O,xmÛÙk“ii~ŠæÕp’6IIQt*K5*Ù¤Uu6¤r—Ä2P§Ihœ†è -ýK^•EÍöŒ{št -Má]H -dEKeF¢it¤´ˆèM7mPNØ…a†ìb‰žþSÉ…©’ -õÁ’åTß®p§Qš~*Î.åJ–e¹œhþI*ÌÄ"†#Ù -Ï4Àè²ê³º9ÕõÁ1¨‚aD<.6¨yèq”ÐÂ3%[‡‘Y≉pÀ"—FcÑìŽaÚDæbáT#‘XÚ`(ÏÄ --ºˆ7-—¸"ixj²})§ˆêÑP4‘"æä3‘Ï"¼¨9UÃMXr†¡§jÜ,ß…F\vF‚æx(RHžghäSž¡dò’䯽r± -’XzÁ‹éÜf6ê{N‹ø)Eÿ¡dïh‰/tCððä,v†#B-)#«Ô4ùŠ#Ò`´ y§±u¡3f†¿‘œæØrí
êa ˯Ä9ŠTÀ¥ -ž¹é³ã%qCŒÜ™t$–óX¸“ˆ6Ò˜+&ˆ8ÂÔä`‘qªW©1^+ -žrL£+ˆNa q*ˆjÏ:´æ1r,°8ƒHqç¼¸Ì Ð#ê -/(¥,Z“¼®ˆ³w: ,: -MD:2l -fªC$ëâȯ+ Š¿É¨Ì@W†Hj3,;\·E"—x€êÕÉR~™7¹7/i´R´¦z.8ÎG0ŽÂXºœ iQ®A„r™2*>€?а -<â“–ãblÐcÅK?%²õž–¶ -F‘ã8@뽇ˆ\ç“$ÂbÚ5¯# -‰šˆZÓeÁ9 - –.ø Š‰cè)—)G_…µ5y“X4n”I]ßfŸð\‘ç*Û°ÿŒ§¯·"9s'ÝŒúâ~ýòÙ·ëÛó‚?«xÛ‰~ö5H8 -Nˆc-¹ HG‘:\$?‹Á³v ÝHIoŸDL”rW´Ù,J‘`õr¦þe«0Ì–(1å:¯ˆÌnzQ³åQKH™ä˜L"ÂIKÑ)|b IFá¥èƒ„ç‹Ù–ZA±³œÀ -â34Àî«Å4½Àž
d_TFdÖ÷CZK7úªa<ÒïÇuUq#K@+‰‹Eh‰/8£‰Ù9t±ç)êSä:‰Yˆd!%"½ò^ÐÃ, -òè2¡æàŽ‚?B¸æJqM±_ìÎÅÀ$°åJw³‡6ö|&Š^2¬õ&Qšæ˜¢×]L}øY×}ŸFŠ"äÔ45Çil@^8ü”d¾ÌjyÓ /Û¿·¾mgâWTR Á#N ¥ÕX®3H&Gy<<$fdr+ ei(Ú÷ÍRýH”‘u–îïu‚¨•ÎÕ®xÝ…ÉãòOYŠQ Žyàðpð ú†m—Dþ †Ä%ù|®ÉÕ«óз.Fßr°,í×›V@RŸVð$Õðë=j ”È-W#ø0ªà<c3 ´„zÁЛFäÓQpÔÓUmÚX™B÷%¹ÜaëÂøBhN£Ž%\o©Èú˜Ñ(€ÀLí -O¥í:è¦ÎOg’å¹+ÂpõºNöƒ_&»eOeñ¨ˆè+›Ï·iF¯¡½±VôÆ:ÑkDoª½±6ô¦ºÐ›jBo¬½ŽôÊ:Ðk@o¬ÿ¼±öóƺÏëh>¯£÷¼†Öó¦:Ïk<¯£ï¼†¶ó¦ºÎ›j:oªç¼±–ó::Îëh8o¬ß¼©vóƺÍk6oª×¼ŽVóÆ:Ík4o¬Ïüd'VðºÎžbF×ûÀoQòœºYaº5Ez¯Aä™7*Î…Æ^p:4f‘Aƒ~‘Õœyƒáà<tËÅT,SUB)5A+—ÞÍq.““UëG¼ƒmZX6ÏMR¢q ýE~%7²l9žäVxèt˜n(SI.I
À À÷T»v}¯<4M¥ÖéEíÒ?–uÊùí
Ö7S®)u8à×W“s3Ç]ŽÔ‰eóÑÝÔŽD—l§Š&ê`9mv¼³Èƒ; È(φÑÝ:
©ý$Ó¤›©o¢ÜC^ÝÃütNÅͽB÷‰p®Þ<‚šoí7~ûotì™»ýÔÍÒ¹Éö3°lš#ïÈShìD7-V!7ñƒ£8Áà³íF©¡x‘Ñwj^Ÿ-Ìm¨q¹âB€„Ž\þÑšâÙ8ÜzrTœ=9äó0æl½ ŒnÄTº”qgyW1wbŒDE¡Ð¨´ -¿‚+¢±(ÊôŠUç´DÅPå!"Ĺ/6iL¹“H›0X眧1L’ˆ¥¹å h"û!ôqo‘¬Š<RDrŽµ(¬uGjc{°±d7ÚíÂuÈÒ÷\t"F è1¯ Ǭ‡pÔ¼‹U¯'<žm†Áͳ*'d„ö²ÒÑ8Yi¡ü³¥B]B“š¬qâ p(}n†%9dþØÑ÷СðÙWc |a‚÷O>= -±¢ÔÏÄ’QÊ£*¯àþÉ};pÆÍM!´ß ×JÄ°ä£AÃÔM9,ÓZÚ2ŽµØæuÝ,¹ÓÛÁÄ8˜ô$@•÷ýŽ£R‚7åGNGÒFƒŒÏŽtsͳ!4xÐðId5g¡n™2§y–’Z ó/êÔ‰{xRÕlÙÌÝ8*,Çó!À#¨Ñ)ã}jÐTl'´’.ÝJbWNvmy‚·Tx›&¿0•³éRšð+½ÏRVOŠ9•¼ïòÜÍÒƒ‹,¨U0‚Ù¿k ט˜1¶¬)IØhd=•cp}/Z²[Bð¡QÌÉ4ìmëhRàIp5ö–èII|©R¬$Óƒy´à!ÁÒ¿ÌÕw
ñÒÑÌò<l&ˆ¦5×dÜWV‘ÝhîÜIŒÅ¯Ò‹›eM_¢û&ß#ê:ŠeW©IR>B®»N'š'V5´dïØ-šÛ¯Áó›’¯^(KG‚¤Pªê~„XÂà&Y¡ô"pêô6Žl!—G/ŒÒ¤BÜûTc“º¸{(VËmÝG¤„!°¬±ï¬dA?oðë
8&³ÕÀæLÁ¿7·TÒ´N6ÀI×°*§CØWÎÌâ.G£q‰xr9Ñi»E@UajÄÒN a\1Þ¤Sºå¢¼Z$Ô1¾ßÈÚ‘ƒ®trL’¤^‡ËÄiŠ…{rºj9†1ÐOá0¤ÞGz^Þ¡ßÚüà“Ð×a4H½ó£|‹}`'â%üÖ=<)"f›U}âQ4ózG3ÓÌ[³k°ÓSlľeÚ“~r -Ã:8-&Ïêèz“¢YljîGëi°Ó¤¾Q‘«1ˆ.êjRiÕ‰¿©Ø‚Q}äªCñ{÷
œÇlTÌ—Ö´ -¤X‰ÛûpìÌ}j´û¢¦"¯…Ù%át–¦lŽR®©ƒ®…0¸;ùèy pg‹à9gy -FúÜä=ÈN×ÀQœUl=‘w¡³FçD(º¢¦8GeõáT) -óÞ…ÛÇ!TºéºÞúÇ -FÍ#—²ÑºÅ/ÒÃjxÙf[–H%SJøö‡0á¦d'¼Ì$®Y÷Ž&èI¬´#éH¡+8éSˆk¤zŒ³•£Is&P̦P~m2³Ùush5L^’»0€îÅyYBÞÃÍ*o0°óÁ’ŒR9WŸÓù!ζNë/vÒ°ä[óS“*ˆñGLR
ƒ*âÒ]ò1©eTíÆYéX\Å1n -GíGx>œÖåyV<Ën «Í ‘ʪô³$ ý„PúnŠDw'¡µÓ¸^¼—¤"ÈŠ0Yš×ö£KÉ¥ØɺÓGâ´ïñÉ™J?¸šOl'îß+
† ¦J
#Ï“,'$\U†¼¡*ÀÙÁÎEg& £FÁ_7‹„á馽 y.ŽZqHØJõÈÃW3Ù®œ¹ÎP·%ˆAó`à7ÌÆ‘ -$ÿ”#ÛˆòÑœû¬P…Î;Ù€î ,O€º{öà2ŽÞA^b›µu1ºôàÆ#{Èû4îÆØ%Š<3}m…ë‹{ÓTãæ,¼ýí>®C¨ -æ|Ìt¸÷:Ó6Õ2íB9¹Ye÷5E$)d¼î'ÉÍ° lY YkÍ°³Dz073ù–íôËArBœÁTÜê -6MpL/¢J¹n×êÅ&Ã^ -áµÍ?%;.$º{;±xÚõìb憪4©&FœšÑ@ú}“d*8û1¨¬¹^ÓÐÀ0Fª UQF@Aóæz"8³¾GG¢q²„\ߨªY¿°7sŒAªX…Eùˆ˜f‰•IâÏîòfŽL§µ¹FãY^sʦ”ÈšÒ -º°>ö˜ƒË¢3m×>³¼¬±ƒ~V
L(v1‚Ú"̦Y¥: -ë!Œõð`U(I‘úEÔƒ!ZuÑ–%.(TáæöÞ$Ÿ¸j¡â^’˜¤`¸Èå¾*¹â
„ðÁ¨èƒGL"²îK É£û
×ÓXb^fäÈTdØ=Ã’†£õbWŸ;5¥Âm0û¾7$whuÌ¡<½Û‡‡“§:Ó‡—Ö0ê½üKW/ÐE=¸ÖBãZ¶V»á
]ë}‘a®ïÏQ÷â^¥'˜Y)¢H`“bVUõ
øk{r°Xò—V8‚ÔÞr$cÖeñ0ÆÏ°>¯É|ú¸.êPªuáSæG§Éz˜Ã¯$˜êJIÏ¿Údª ‚K2kü(À ×m²¸¸,k8ùû½€šêt´.:„ÝÌ_b=+nöq^á߬P®’ƒ -2b–I®CÊÓà˜òPc·â#òõ~NÂép£bžœ)ß»tIM`7«½;dàX3guZZ…cÜ•Ù9–}ï’Šå·#u°BBýz0¡‰uö#ÀùYpêX™–v0øòæÎßûpU¥ïaÅŧȵfu/×`Þ²«6_zæäʂä<+w
ÍÖ1¦ u%±Oá½`q©©3I£ Ït$ä¸CØ`f#‹þ†¬=V-›¡©ðGG?^RÕ‹‰F󦢷"Höj–KKB”žýAÚ‹B^€§”OÊ¢f=èbÕ”dÏêvp9#º¼Á¡¢ngBã‚u<;
³½"v!Ù±3Äh ŸÝ‚΂Ìcü¾’ÆÙi¥sUcÖ- àko<;ZUÏ,^Tdž°ˆâ¾©¡‰?<l -50ͳŒð¨LF_U]ûâr>üº”
òçÙýää:qì ¸eøyïÆUGÈj5kbŠ¸U÷U½™á&¢èò#
/
qPO„ºE"¸9hõ[ÔRLnÅÍ¥´7MŸÄ„„Þä¦,RÜbfœ§SUpßTE&@ï“èr‘àÀrÛyÚ¸N@edH2šE…6ÜØæíÆ«d¡ }?{AUD;hr‚u9‹Á,VrUàš'#èúëât®åÂXŽRöË=ÉiÑJg± ª(¡‚vñR}/ZCݽ04IJ„‹,)ĶŠ;l0‚ÍQ˜$ˆŸ¥ïžUWÆq€^¹&Î] ql{
‚È®Æ÷)uÊÜãHò”¢Q’¿N²Í´°c ™øq«WØ'ã× ¶Fq¢%Aª„ŠÚ=Ôd(ÕÕÜyë³PÜ%”³âø2Ù/ÈP†báj(D¶+§Á(ªcÜ%sYƒ×k„c¦(ìû -éŒÂ©1 7µÉ -ñÕ& -–NѶ}w„8mŠkàyúa²õÚ°Y?÷²[f!ënˆÄ’‡±Aª©+Pî†l"T~Bàd÷¡}¹0u݆îR« ©±l%Jb]nj¶9¥'ÅÞLUq®ëÊ®)ý“Ñí飣2᱈J“ §ÅÅY*2â tU@ì")‹ee_„¾SrP1o€ó-vOÑ=ÔŠÚ¬1;¹‘Ñ·}VF2l$Ù&™¡ÖÚrxC†fs"›V|_Œ¼wÇñ? k½“šwÏv©³£®†¬†Í<Bª_iÖ™E;2p?I«D]r7Á ·nèËÊ9gÖ«©×«xífß>a–Ë2UÉÓÒ†®j€Å8ixÆhtj$”¾nR®‘ΛG7»pAš[iPà‰œ84»Ä¦~)Àuhv®-òf8`Kk˳€’±*BAŸÆµ×VbUð¼B^GÅ5áÉ,уáðï(4Ì[%9—=R]ÐèTþFöÌè¢B*º±üU1xµÛrËò[z]XÎŒ•ãK-=™_MïHø‰Ái}LUÑ~a9ÝHy6î„|J‘E4*Û0G̽†gÍÁ,]¤g©qν
<9KùKJÁ™&¹Í4®íöÑYNÆËPt -cgæ·¥qŠ#¿›»ØàÒlíp~ªLZxfüÈò\8ŠamçHŽâ†Ò.èÄs,»j‰jT¹ŸÑMÂ3‰Ü$J8æ)[…¢@½HôU:‹J×nI n¡_ÀÏ!¬§£¨ -ã¹¥ÌÂ
>ì;âê½;âê;âê;âê;âê;âê;âê;âê¿ -Ý”#a}›€ßî$D±“GîZå8!\-Z1–WÚP`㢋 ê‡ò¢ÍоYm`›ãD¤È} 1*\ -nɺpÄ+²X¡ð缈!C¦ŠÐy‰Ì+È€éÙÜ…c}(‘E‹Äè@¿+kžã·"rÔ³$ê qñ€Ú+rBÂàfùRaÊç«M -“3Ê—:˜¢n=‚û³œ=}Ôfà§*%3[‰Îœsè -BÓ á°¿þQ¾dîÑ%¯ÐIë¢Ú’]˜ÍŒ{ß4NØEƒâ÷ÙnµÝDµÙª¼+Æ)ÔQeówÈ5Ö@[[î\œ
–v~xïÃåXî+€Åà"^“…€ylpKrÙñš½J43ª¥èy¿¦¢¢ðZ}–WüÐÞö‘¬b9Xá¬4f•;¬*jf=m&£sŠ"BÛY3•òØ2õ´W+ô¢Ž¸²@]@«ª"¿›k_ó%ÄÉœ@GeVI..ù'’¹J:¦½~êáí3öhÇNáè®Ce—?uX¯Ÿ¨!"¨Bu˪<.!YÃÃyÌjo„7ý—Ü”ûÊì#U‹4ö -LBبt:îÚæªÁŠ‰QÐE=9.ú¹&K ƒ#D -C˜p€fÒÑ(*D½b#÷NE´C¾¹á(ÖQûÐኪ„‡Ñ‰<§ÅÐ9Ç62ð™9¿"ióéúØYu%yé)Ž9ˆ¥8;ÁuqÕ¶(qÿºØdn -ö Û›•\»PÆ;¥#Svñ-ˆÓšBeg«œúNTˆ—jh5$i"è -€¥Ðèm–éJ‡†1%-B§¢ù¤f§€O^åã8´Mt3ÆŽVš1,#WÆ°vÜNµ-zÔüq¤f‰1à'ßÿÙõ€©)øû(éN1†ËI!±‹Pϼ6©pžz—zv11*0JÁ®Ý„@’óºq꤅’D4Ž’‰• -õú@PŠ îõo¼Ó$uý¸:!ƒJäe$#ìOm-ÎiK-äÁ;×GövlhßýàñÒôê[ü*Ë -Þ§ å|f4Z›¢c6ŽÚm%E0”O5Yð$ü–W¢IÜ^$éíÛ¢+ž]H†*‚ãST0'¯Bãƒý²®¹
'e!“{M¯^
p)&eA›µx]kG -Pø}rYˆ$ºaXM0#H@¶žÑT•É²úÁ| ½’=9V¢ÙýfU| @¥fŠºJ¦É£@·ûÂÈ·¾)bV…ë¢\7pÄ»ä4Lþß|}öµÔƒªrä©)ì³a¤TËOYëw¸0÷¡× b«GÑ´¬xãJéâXî²aÐ꾈õåFÊ®/²‡ëäØDçjèØdJÛÇU3wqû-»º¾Æà}¥g:‚a5 -i§ÆÓAZ”>röV$妈êºzÒØÕZt’4®RC€ß²òÖN"ÍQÓD8B¤¼×m¾õ£pÔHئ&Íb*@3§ç‘hAÔ˜dèïoÍ{„|l.*¤S¾€ñoôk -„c7éÙa h(ßÚæ²Ð0T1š°D
7Z[ÈbÍ©]sàâS‚>=£ -fÂ]GºvÞïeEž[2øô<r³½|ÈìÊN1¦¿L®!évŒfhišC«(ÙCÞÛ(ˆ†ËÚ5à7c#¾»ÚàÎfË›Ã` -¹nÔO0ÇÛÆïš„/²<)ìI™j8 -Œs»¿Ðœ4@óFœ‰R°²‘£BÈá¬Å/ûÐ#S(ûõhQig=Û ú³!À5;d£W@Š)ôè -‡“|ºˆcVÐ|u²Ï1Ÿ¬.TÃ8‡€%J”ß• QTf¡6ËKëÇdÄ96 -îT+ŒDd~ô§tŽj¦h¶p¢RÛÛh>Úºd/ÀàŠMh$ü%R¬T`‚ÕÁ‘¨ÜnÔ¬L¢ÍkÀzQ)wì]GïÕl«&rƒgn_þR;Ô4¯åTé’(ó´PL$•Â9ô¯ìÒ,•ùûM…ƒ
8Qf{´Äá£Ñúm±¥Ž{€²ÊwÚûôž*Uà6AåÐ`Açϸx¿,ÆùrÙAí‘”û?Ï›ÈÒ
§†9Ý3f?é`™ûŽ‰Åf÷ÑfÍ©}»¬¹·jÒq
ñê×iÝÕ€w6 -+Èõf¶;@d4\©3QÍíÞÑc¡[¦í
5tºÅ9áûªd…Ä$¶#FŠÓÚæèìt@“b7Þ³äDÄžš[½;Ð>DÖ`rô -I‘By\¸
ìºf0 {½}ë ô,Ô`94lîü^í†ÁvëeÕA]VÿC£íî'÷² -´òÇï/D{wžš?zmÚõ= ߉4Y£ð°÷ý¶1îo%=î<).Ù¿éumÔ -Ø›Ç[ºlÉ+„‘¡óoMC¿6˜š[±voï¡5.‚ö5«áÁƒ÷_œ~z~EÀÝ#÷æW! E“Ä°‰4NÃP ‰MÃ~ß®aNi‰¨ˆŽÒF
|i÷HÜÜÔ¬.”züX›¸Ð!Ÿ†õûºaᣴ¢ßêµ—û¦¸¶\ÜÆ236ºøn@¼:&vòW|±Þ|÷Ã{—ßк¼é„|¥©YìÉŽ8r²Ñ@rÀâ& ûu®HòÓu!ÐÒªþ²ø :0â5†ÁóÚ¶2ðFêÕI·ka”06j¥ÚüpßqÚ~nšÀ ÎÇÀ¿Å&Z£Å?e)d½Ìå[§à›:6îÜj]‘Íó»êH[`îÀèCM:’˜ô9×°ìÜ„Õ¦]¦88¹-\þ»‡Ðf+dº~L—V Î
+¹Ñb%^Aêâ¦(¡5ŸÝ9øÉ¥¤Dk*½}»M“ £ÕÅèpœu¶G•ëÑÙ¦GVv‹Xeó“ït›²4¹(…CíW"¡dëÀæ1¥Sd–"<Ôu{*òÀ{¶ñ9¾oý+…™æKèú«SRIê¹ÊE@*Ûy.ü©³`Ž{¸nØÚ¼]°ªY±Í³Fʇ1¾.€±I•nå- -¾§7š7'*šÚ‡ -nš)œmvƵÜÏv Œ@º|ÊÔÜ<žC¸#öñI¾±¨°¾ÁO—)’š]Jso³¬Œcp{ÅÍ=²ÚMà–{–Òã=x¨.ü°e -JsÂu»É·ÓƤe¼ Æ1‰ …CªÃHÝ`ŽÛqìÚêœìë -h+#Ú -{Ôà‚%ÑñNðΘ(ñák¢‘q꡺ä‘ÑÈ:."YcËSuè§7{åXÂ]:(BÁáÊn× Bí²r'‚ëx·EßäYsÅIõÊ)a¯¡B‘K.ÚQ§2œ…åôcµ½‚„`v6„×|¢ÄRy¥ysT.øüxá{7aÌ@lmÙ+BU6ÛsA±é9y…’nœb<·HÑ“ÐU:ÚÒ@Šu.G´Gö@~‹aýµ²zð£vÞ¡DÝM4—YÓPì–e„¨+äܶ#\½œägŽ ’ðqsQZªˆê8¾_"¤‘u•ZÝdü«ˆp -¸Ëë‘ÛÕ6×ÎѡμÆÕk1„¨Tô}¹ŸÅAöA×ÀÔ¡YWKˆå¡_Ju Ò•a$üÔvõ÷ártý&"6‹GÀj;ûô°¬jš„²r (nW5v¤ «u
—²ÍÍ<Úq–°ÿÙ½¼hdþékgƒž_]]ÝH¥Išg¬<†À7äúÔÄ“zÞ ‰ cÅ?xj]éÕ3Bû‰¾Å(SkŠ,µ¦ZSƒ—Ífãt ß ¸39>›]E}€lä>¬\‚:Ê,fWý¥Úo¢½óõÉòÉôrK™N´ ]H®®¥ªÏʉЌ -/xHúÁ§è¾-™uL“ -D¶v¨àíêMä*LèÔPc &éòŽêš.¿˜M.àÍ)0ŠH•È‘D2IGŠžäâSZn“ d#ì=½Ø)kbe‹Ð"šèšbeBƱå«-‚wHÉV˜}:£¨\rnÙu}$ó±Ò›suYÓ·x -*”¡ãîiÀŽÈ-Ë=‰(HÒÓ\òä¶àš×¹Uvì©éõÆ‚KæÐ*î-]*Üà§S”•U¸O¬Ÿ‰Épt~_vÅ0ë„T)8@;â+ƒ%8Ì‘îÉà»j«¨§^¡YÕW<°âŒfíRD{”7Û«\¦ÐÍÒÑrÒj‰ß7€ŒÕy¸˜öÑÈ™RÍ9¶±>˜Ý¬Ž5{81a‘NK¼Ž6ŸšœËprœª ¬(“ -xOI…€Ä®Ì¥œ@r4õ‘€ïœ¿iç²U“žœÙý†ï@éQÈ„Í‘œ#‰u®-)fpé=³j³(ö“ˆ¬¸^¯Z±IÇ´&=Ôpã’ÐPìScSÖYDƒo[æðFÓšIÍQ™’YÅ?QQñ›ã^ø~Ý -c%s¸R¾D’Gv µ}%S«u§&
KJ))÷E>'—Š -ô*°°$f‚JÅmîfº
IÞç¾Øɺ¼ÂÝ9piŒ¢€AÁ4¥ [4À°’ú¸ÎÀ–#ˆTv˜MÌE]p›G»4Rf.ºt²kÞ˜´F‚U¿¨ÛÀÔ“ÒÍE—úLfW$ê"å.UÒ -¿.uÖ`–ˆ–*ê<\¥št&ÎhS¦kxënŠ·M#9 JK -âì$:†º´R¶³ðÆ$wc-a©‚Eô=Cפ -U·È ³£;ÎÃó"¦¾Î.M]-Æ4«.¹yÁê§hôº™Ã3›1+ô?ðJt£+:y2¿YÍL¯£Ju²Aß<äñæ{7ÅV €Bôînð}¦Áúx“hŠrô*åzý΃{TÞª“õ8›xiµ’CûJKè¢(‰±=Pý¦´ªó°è"^Ò,w)ó*;µ’EN}DÈ+Ç0oui’<:”n®¦ ÌAYÛ{rdâÈA—‹«l°ÏáÄÔ‹Y‡W¤·#p±dÅf®ã¼îqx“Ãœ¥$žx1]£">à‹¡bÚ4¸ÙH@/æOð‹4×(ÉQñ¯bdàÁ©./8ˆ€Vo‘Ušèt¡Ç×%»¶KH§”¤Ia³So^çúauCPò -O“}6\›y’ºqz@Ô¤uNãbý³?Àñ:&ç?…“(ט¨”ãTÛññ -¤q5ý”s$‰€¹NŠBd"7rff àý©[¯ãÉœníÒÒÐLgCÉUÐçÈV'ç¬gnÆ,¼þ›çȬE•–>ŠW]Œ!j¼ Ï¥ònÆê6—f3-€F_aP[ØÃä9‹R2¬ÞifuŽ‚c·É”€_’!0÷–0Õy¯ºBLü[þ$³O³)™v×-ÒȨCk؆©nò:½Fi|gVö‡)O¬lÌóÜo”`i”ÕE³§ö´pcRz"wp˜9âÇÁ -&ÃÎÂTì©#µÍõfлávÜ -x}f9h•swõðmºz¦ƒÂRÂÉ»qs\@׎ýõ;ŽS¹Ð *ÌvRÑ…´cŸÀSç -““xCÍ+®_*Ù¯¥VqzËøvž_„TQi–ËÌô¬
Ȳ´pÖDϨUÉKµ÷Á?õÎ."2Ê+½O2çÊ÷s˜¨â-ÜÏ`(œ“ãSc”XÇK™g›$$Ä^Uh#Ü©Þð9¸a¨#Eb}›âeVբ·yoÇ@vCŸe‹ŽÁ÷šÎr¯Ð˜j¦ È„£õNJ-€,/RœD¨Ãæ„ž†ì™Âl½›£60ú§•‡BGüÚöi÷daêVçût ¨E‚<BòrNYœTo>(`Ј¯T™ƒ˜jH:ÂÈJTÆ^:jt5ÐÁ•û®«X;ª‹ûî†7RV>˜þ\… A`9ºB%]µ
qý•qP`0Ü(©PTNk8Æ)J¦¡ÁOkc¼ -Œ+•p3‰¸éÓª…? -/DwÔp_Cðg銹]Št´Ù$qý&ç>¿ÆíЯ æËX&'IPá¡…~ÃÆ .Ø\Tȧ¶Â,¥¾v&ÑÂùXºÕoYT€§«‚Ä´Ååg2$Ž+ñÑßÕ‹´¶d ˜~î·‘`ŒF®Å(¯Öë>á,M®ÖQ[2;DU–'öP{G¯ Ï„=‰™Þ¦ BpaÂæúÛ7Éèh:‹ûÔú°rìžDíž±³‰Å̲]SR
J×~â!˜ËmÊòŸé²ˆÛ”lkvEÂUÆ0‰‡º(#óœo©ÍÚlöXÝoEõÑd«Ž=øÌÅq3€—¿Œ%Ž‹]? üÉ¥:6jÆ¿„eaNÖa’¬OQk„º¢X>ñ»é5¨xGê»ù"âÅòõX©dtå-eou½‹ÈyJqQP†¸_EÏÉл=e ;ÃMèÚJdnfň¹S¿s5O -0hB°BžwBvKŽ=M—Îq -É`ÒF;°XeB—üÔïNÙ®ã~óA˜
–¨£k‚¥'\XžûÞ^Ö<ôÖ(¦$g|j¹Ú~Y2€ZÚ~c8óHj)c
>êÎloLg—عÆ-sYJÂuêrS|‡EÀ´¸ÎB€¡Õ]ßÜÜ«ƒn‘ +sŠÈÍÉ~Œæ¼vXeÖ'LûªL!ÕŠY‹q•ÍÑŽÚœô 4*9´DG;‚ë€#cãµðä2Ê¡RŸ -”±í_ǘP2#Þx -|®ôRWY0DÈdJªO))•¢ çä:&zcùpuv.¼»º.ÇŽåÐoÄí§ªõH·v
eXê„Öɶè¢mE -oÿ•ØõÙ¤ª ¼L%†¶:ü‡E€‚õú)[CªFOŒ.ÒÔ’z;=?©<«{&Û:ô•¹¶¨ö÷B™çU¡Ì€ÆÛò…ÃÀGiŽÙŽå€äÍuJ#Ô‰Ü:6®1„ðhšBÕaã*V7çòñШ7's)±[îÉ}ÝUdþÁïG :†!y®ÈÖö\Ÿ³w/µjÙ½ö€”LùÕ毪rN¤q›ía¸Ä~rt[¦p -J€‚ÉÊ}š—_(L}ìÿÉK¶cYŠÒC2¨ RïZŒ,´5ûŸÇˆù³Â‹Žz-ó‡B°e´9Àq
º<¨§yŒ -•ôR…—_Ïì:ö,ª ÀŒ -ªú*+\É1Ü©Ró¾Šwªnß´&ñQi
©e™<Ý*–Æ«zv‰¿!Š·$¡_CŒfÄõAîSÝ.œI1—1 -ÔjDZ»¢rjÓ“´ã¸G6p=T_0¢¦[_µ×[`×bàOÈ]èkººmu8w¬Ùê+ªJ†ÒÎÙ2ÄØä{€3ª{ -¡tQ— hX% zŸÐ¹¬H:oI¾P4&X+D"è禔+\=€VÇUϸº3ýVÒ¨)½Q!¥EÉ6¡TW•áÉ÷ƒ¤8Š‘é>¤95^?©ÏH]JqgXɵÐY#Þv5ïhåS1¯C™K#ñe,m}3V˜('À -n<Íhü©ï•_ [#Þ$ô¼nAg
ªŸÍTF‡åaX!tÎÔÄÚ!v>L3OÕŒ´u©³8?‰¶€$*JÀP9ŽhMáùÒL®ÛyZÝö½6hœLv¼:ç¤tõ(hu‰ðåëÀ@ ·ÛŒM˜Æ°YpµôŠ‰À3°AW‡&uZ&}Ic5mƒÀQìp55Y,+î¦)˜ažh`ƒ|:r*˱‡ŸS$¨Û¸
ŒjvÇÝTÌîµãÈOCÃÏ -¥å)¢Ð}#âÍšJøS"5 -‰dtÀr†”E,¸ðlE¡âý-žúú;7ÈZdšÅ;+Ó?“ä×àt“㪳±²k…Eð][å†ÔgöØÊÕôº_
ž`DÏzÕG,Íwˆ•xÍü‡ñÕIBã³r¨ód:›†wkªNG‚SÊ!X¨á³œÀ†»`zוÍÛ¨{dO¸(Ó (Ã>áiºŸXÀÉ „ +eò«¤ö1.NÔy68/]^ÿ -C4±,?7ÚY.˶u-ç/±j,ãÅ“*Z‡ -Ãx“—Ç9uc«;]jD]gy ÒèXæwF¨Sgsô‚å°ÒHëÍŒ¥C@¯Y2‰&eTŒF|]㚣PnÙêGšsh\g»F)½ð'5ÕJ×XÊAª• !8ê -¸¨(‰¹³™ÕçH+2ÔzŠ¹ëÊ$Â…žKhþÕ‰¥°Õý¡òà„YØ*VFçùj£'% -¡ƒ¦(#ÊCïu ©/p“M=Cçï Bt%dÞ¡m2ä°™A`55M¼·–x5{ºF&ïæíØ¡'Ïc‹OÕÕŽÌ.ëYXfW%Ìa† - -–¨Ñ“X¬)q?@˜Âch?]_#g!ËᮩU!3’jœ3DÆÌc-ç ¢êE,6Ø(YŽ=И("·1oXgvÝÁÍõŠši¬Í„täfhµþøkb -œ²$±ö9•Ï{©sµ™æ»»˜öj…m¼…X70¢\Aa¬h‚mnì›7“=w‡>³’ëTQWt˜FGcíÑÇpUríšA_ϨÐí&ŠmiƒCJt§ùEtÞì?9‹’QaM5¬wBU;ÇVu5(/fã–‹q -ÇƧ¶ÆáçIa:]¤C•ÊGŒ¡¼ürÄTEä÷4å²°ð 3ÞÇ=J;ÌÎ!BÛ(p ½÷S±Ã¦ -S1‘s1ŠÕѤuJu¢îꢖTdÑwaÚôz°ô\òŠoQe¼!N£SÀ‹ÌŸŽæ×(ˆ
N¯ÑµSI‚ÛÓX#/U”Ôj°+:+ŽÖ¾š *à°-’_“#G¡°ª²~ÙÕÂ?¢Á¬A€|@:$™¦ž" añæ9¼{%,”ot¶f±§GžÀÉôâº1²†‡{V«ÖE7hD&û
áfSךÔDš\0¶0B4~IÆd…§Eñ[VHp¸GH³Kú”s "ììJÅR0mô,›’Pë.‰ÆmLá”^³³ ^Áí¨ ÿ†MÌô\Vf1 -ˆ5—H,O‡küº<Âwírp¡fýžvkbq= è4N)™4h×Õy¤¸!,§µ#wFoƒ93xu~Aò
ãxSÓ… º(+–”3IöÛq@ÍùXS+ú² Ÿ…»7®‡Ñ¥kwüéh6*‹¡¾pñØÓ0—ˆ;A®Í:—@!ÎrD·äG†’%•´PÄk§E–²¬ö 9M€qëŽ[lDZ^¤M™u‹N.Å®†i-]“h+Ô!žCe·ã¾å{®zü5 -·=ý„Åk j1V¾e¨¢quC%™5Ñéb@D¯”Ë™î0ÞË3æ,þйbÖç `ìß …¥&6Ó‚:Lí4Bà4|Y)QÿšÚSèÜBö¨ì‡K×lÀ(ÙëmÖE9uúchÉD!;ªMf[œéf
P€3ÈpÜó`ÆÍÚà•¬R,g(&ÈeqÉÐh›³ó±PùzÝ”ö†›¥}Pì™Ó!FëçB9âùI<+p¹áÕÜ-¬F5JÁ¤Ðƒaª"¬[/ŸÄ°ã—[uqrÚ`.ŽÝÓÃ#øiâˆá™òñDYÎ:ÐAm7ŒYõ‰A*kËz¸Jàbö|?µÈ=AÚí5‹/´R¡Ü”Õ.’gSšŽÉçÊš0¥#ýa ¿Î§êú–÷ÒØå±¾“õIdIðJQ
ð¦Ž1;8wJXv™7.W˜´/òcÂ8¸©Q?ѹ¾ -ÌHY1¨…ägs¨ƒŸ%2YÓØ““M@Ê°Z§VèLkÖT;A¿Ó„¯ôDu+¨ruåì¼²qä¢/ß÷Ø东ò.S¨vùDa?
QÓ¹ -RChÎcÇÛ°!8ÏÄC”XX†Î³Ý@6^pVÙïÎéá<éÉ™ÂÔa‘žâ†>’)åð¾P]gLF¶[Ž.å),2È8bµ!¢©Nuo{E‹Ìrõ®é¬ - 3þ¦„tJ%Ï¢bñØ!ζˆ`@©*g¾¶==*ôÔKžÐ÷)¸“ÅÖšGýX¥ŠjbÊŒ‚}Èvp@99”äÞ<ß`Ä
ÆŸÁ^8¬
s¸®óY`ö–½ÒÍ’Ìtc+KÜKOÊ=T£,Q4Ö–ÞÇöÎò:Òàlˆ¹åå<FYo%„AÛ!^Ä;Öv ÓÀÈšÂõÃÙ,ï56f-ÏõŒð&ƒö\R9Ê¿ÃWME‰?7Qƒ´¸)eõÐÇÐF'=óJAH’qal^ŸûŽnŽ>í¬¹`àá³n$…ÙX¸ŽO‘?kÆ1#Ó‡xvJ"¦nî®íõL¾Œ™«p…k¼bhUßìy+Q^¹ŒÞAc]Ug‚¡yܲLDâ)8sà!ÒîS<Êàv’ÆbYuq2§r'Uqg=|w2Qà»2GiLÄ:fÑNt͇En†"z–%´b¾—qöºi|î -ÙJ`
YãGˆ2ów -¯Z¼¬Q °Å“~ê·ƒÇQļ¸4jS²i•ì0/a”²)kÑdëБ1è*EMF‹vÁ“*²
–9®õ:TžÐõVå‡9Ø1mÁWOŸeõlWa™Ú6¥ÈidæPóÐrëdTc•KÐȆ*˽·In4ž,3'6Œâœ]+ƒûNàSùˆ¹±ŽÀwLžVªHvkÓ‹A´+6Ù†Á¥¢r*ݽÁý÷rU‹]KC# U&éïêÚÊ_1ÙK“\¨Y´ŒW†WÀ´5†yïì‹@{Šy‹.û¢ -Džœ¸¡š°ç©å¸d><ô)n£.’³á0—‡Šùõü¹ùו¢‹ èH‰C/]Ã*n^^án3´1¨…#rêkÙ[ºÁ•¾ÓÕûŽ@·r¶¥®ñêAQåC¿q/¦ª“Ç ¢8€
$/@3ç E)+EXé¤Sªä©/e¢Œ8OfÃ-,%an-³ Íi -&³ø#‹ ‘øÿ?~)_2ÒC/ë^·ŽCxw»èLªíHÒkÃ*·æÕ†òM®ûˤð2Þbø¥S;ÞÖØßlä6¸Š—Ǟ颌¶vŠ«ú
šWÞ-¯=!³>YîÉÕïOŽ.ï½û¯gç¿=ã_Åæí÷Îà¹x÷'Ëè÷þþÞ»OŽOŸŸÅ§,îó©UûùÁ+WÄs‹^õîãƒe@{?¼·÷îûGŸ/ÿ{Ë -$÷oû»ãËÏŸ]ûÂùoÿùøéÓ£³'z‹o.C].öè/_㟜_^î¼±Êo\cê8*ÿt{–ï°lÈež?:Ûþê·u›èŸÿè–âÅ{?^:ú—e+üúžbSUÑ‹*@Çéns1&Fè’<0žÇú -†€*^ùþÑ9Û‘éæ‚¡P¼»Öüó®ã³þØÚ;|i!÷4ÎÃ+E€~Ö|EëŸ~þÿÜó¬.½o7×…¿ÿøâèòèê_~¿³ž£õbQ‡žŸ_Åêk™Qsqðx٘Ϩ1í|êµþäóÏ—N½²úäôàêW9ßhJiçû|ªÞl*7šj¾Ùtó©r³¯tËS»}-Só‹›ßh¹Ù”ê7,7/Ý{NׇðŸ×~þÎ×Ió}`â'ï_üçΈغl€£³Ëã+ùý:_ÿÎÏw~›Ï/9)ûùzóº—z½—_ÜÚËÏu9êïéÆtÕúsÙß{÷ƒß¾À¾ÞéïL‘;Säι3EîL‘?¿)’îL‘oÂÉÃ-rg‹ÜÙ"w¶È-ò»í_Ëîl‘;[äι³Eîl‘»°È÷Ô¹‹Ü™"w¦È)rgŠ|×.û×2EÆ;Säι3E¾Æ™Âz¦žq>W›£¸š9rg|Üw;ããÎø¸3>îŒ;ããÎø¸Ýø˜îŒ;ããÎø¸3>îŒ;ãã{c|Ü¡°î¬;ëãÎú¸³>¾s·ýkYóõqg}ÜYwÖÇõq‡»úÞXw¡;ããÎø¸3>îŒïÚeÿ:ÆG—îŒ;ããÎø¸3>ÐÇ÷Æø¸}ÜYwÖÇõqg}|çnûײ>òõqg}ÜYw èw¶È-rg‹ÜÙ"w¶È-rg‹ÜÙ"n[¤¾%BnÕDn‹s])Yâ§øð¥êÉòúب'¯i–´ÝôäùÁ᪕¸ípQAÔöî?ùìן.óý{×*øì}åk½»-J³,ôÛïz=\fuyéÓóÃßüöø’«ÃXZ.£ûŠàTzê'”ÇéøÇ.ôãQ%r–s#úçïÝ®î êkžnîÄü5–VŒ÷gÏ/gÙr[…ƒºÑñÚ
Òÿã‹óççœÿ|p}öÞýÙÙñárk•ŽÈ_xïé¯_\^Zcz…óüêÆÓ·`ý‘Öï×Y05âí;A;~'Þ¾Añ6öÃ4Tø -}†^*)v¾þj’¢k0¥“ãSBéZËùç—;àº_Ÿ]=ÅôçZâ×ZÑŸµMñàÙòVoÿììl™¸§{_\< -voÞÙìšÔŽîƒ/–o>xðª–÷ÃøÃï÷>>¸üÍÕåGÂ9¿ty?<ZsùŠKÛ.O—÷{qùú××_¥Bó—/<9¼8þ쳓ï¢5ûW¹ã¾7þ/¨o5’õï#VR„#ÝÁ632e ÔýY3e$ccscnÏâÓ—ÊØÍÙx½ûs%kr·å]´–ž~qôÉ¢`Ÿ<ÿ÷ƒ‹ã5&t?ÍklMCØ}àÚï¼äC}õøìè2².üwï?UŠHºßß2¢×¿ þ\›.`§ÍSs?uhâæóŽ\Á§Ó°ü3Þ…Þì’xv|qþù‹ÃgÇw×Ä7{M|Ÿ¤ýw({»¸ÿ3¹÷ðüâìèâò†¸ç§/•õ×¾ûj¿A .^U©þ>›‡ù†yx?çaºn"¦ï¬‰¸ÜJëÅ&5|— -‹îŒIjÊŸÝOøµ'ºU›ølˆÉ*Ã8-JÄn&˹ß]s /®üi7Æw×k\îOÓ×:ŽËºüá:N7\ǵ¿î;Þ|-¼Çé{é=¾s:¼Š>ù_KëÁ‹“«_nÔÉ'ǧÏOš:ù¯í§oºê¯“¤¡U¼ˆâ«Í«üà½æ_}pöô½%k_¢¥G˯~‚dãåéÅ$ÛßWóƒ£å(>>89ºº:â=þìÞj-/©<âï}ÙÛÿõéò½Ë«Zu¿|‡“ðó?Ü»Þ~ïñáÍYzû?ž_é³7="ËŠ/êxüÎÊd0Í)ϺHg>¦ÿ@Ö%‹o?üøÿº÷éÑS&ÉS¼Nò¯Üº]¿ó‹£Ä+üJ°I;Òy›S—ßëÆõÛ?¾8::‹/‡ÏøfLðFàÏÒjÛ—þþ ¾;Ç|Ì~7~3CÍeø¬„½è [N^Äü'Ýmš<eê_Õ«·¯~|ðÅÑÙÕ¿ƒ÷p>’ÉüˆË\âêÚYF¿à}Ά¶ÂÃ-ŠøÇ?Z~á?ZÆü¯?×µŒUÒ“íZÆÿªKõ”ÐÑŒŽÆ¥£Ô:ãw·ÅxëµÑ]ìjØéª×B®W/þˆeFWýØFÇ=½vÕ't5ítU5 +µ$ºŠ•ã´ökhxíj9„¿øÑ´yÁû '³^wrÍÑ}›2M§zê—ž8¦ºé¨¬šEÛý«Ú"Ø;•çèióv÷{êÕ½±ÙJË‚ÄD•uoaŽÜÓ¼éiŒ]¹}·~»vvŠŽ»z»ÛzŠ“¹fË…ŒXÎ -]µ¸GŒ
»¿¶=ÆÞÏÔk:Äq÷ÖqOXÔŒ-›¶KawØý¾¢ÀèZâb“ò±å—sT®õ4ǘ&˜Ð3ÈS®®fìÙeá—÷Ûv¥lJ.^ÌÊ*I-ÔÚJT}âCøš ‹P0e¥¿~»Å@½#,s³nUŒ2d³)óΙÒznåô*qBŠõÛÃÙÍ!·UßV‹à²ð®N½ŸâÎbârLpÝÊìÚµ÷E9Ç}=Í‘›ÚÅVkÍ&M»ëvu–銾;œß¼^í÷*l¥[ìÃn»ýR,tÙnšb‘´H
;„bA(›,7›·¨wú,{\$ÐrlGnÛe;º
£É–ø±>¦½K»Ó†÷Za¬‹˜ø6y»›$Ýü!Øx¾ºØ®mekw]°öèyÀ6(Õ]ctC,J[ðÆŽPc«ß/¯zÅy°JNQWÚäÆ)Ž®ûÐBšÔi²iˆ–n{ÍqŽ+öÿP×
°e±¥beú•i\]\ U³í}‹½Õá@ŒtnË×Æç³Xš˜ŠUq^×€z… -ï¶lŽ'GW?áK|ýûmŸþ†–ÿ
g"åL¼Òû,²÷U6þ×®ê÷é ÿׯ|Ôñè·¼£ñz‡/.¯ÎO¿]Iö§Û‡ÿpy€(î¼åˆ½êvü“Ÿ‹' ²ýÎå/á”^~þÛïðmü-ƒË“ãÃï»,.sË3P/{Õgf+ÿú~ÖxÍ¿ÍתÃûpúº÷úÐÃ_ÿZ¿
˜ñ·ùVû¥+Â䥇ñ•â·þ.C¹¿«_÷2¿•—ùý·ý2
?ô²×øìüjQ}~õÉÅñ$BúÚ·ºùïÀÕO™÷äüÅÅáÑ€ý¾õ»¹¡¾í!œ]<]T¡7Çü†ãø_Oí{x•Ýµy-
køÞG9ïÅg{Ç—ç'WG{,âTeÂÖšï}4ï}|tùlïӃ˫£ Ûûôhù⋵ìÁKºÿÍÙbƒž¿¸ÚûBî`Šî´Óù'/®ž/|u÷Cߌ'â°åKWŸ\<Ý;¤³9/ãY*›Ç®.Î.Ÿ,pøûeÇO÷.ÿpôŠ]~AtŸíKW¦—?[6?ÿµ¾N·a¾í`Û“yg!»zÄÞO~wµ÷ÁÓ㫃ώO\o`y¸k}.7ÏÖ¢Û¾x¾÷èàì‹_í=>kw]èÖ–]ÿüàéÓk[á”9£;ƒº|~~}?œ_n6‡óôùñ}µÅ -ØÊ—ryõñ²CÁã(qxŸBóÔ¡Ù3¹|V²?{•¹L¥±Ïý®¶aæe>–æÖç~ÿo¾¼côÓmþèÔçÔùWŸË¶Ê}·NG[^|méðÖÕ^ÎÛËóçï]lNá´¤ñQ+x„o¼»Ž_“בå;‚fÞ;;_åáÞñÍùåñ•»~÷ÁqtóÞ“‡}4õïáôâ÷Þzëƒóãyð«·~ñÿXß÷“žøáÁ.~ôàÉçÿ¯Gõ‡?yë‹ÿHoým÷ÏŸþÓ?|òOWóñ‡ÿ˜>ùÅ‹gþí=ÿÃþðÖ[ïü÷ûo½õ¿ÿîoÞzëíù›{?˜úG|ò‡õŸåWÞ*ÿtñoååÿ÷þúÓ÷Æ_~q²üáÿ¶üço¦?ø§£s<ûŸ÷ÿôï¿üŸw–?üÝßñ¯ü÷áGÿ‚¿þ}P§þüõ=üÓÿ<üüõ}oú·ú|ùÃÛƒ¾ÿß÷¦Ç¿þ|ùÓ;?Â_zï?þ»ûïýýòçÿ‡þæÓÿà7?©ËŸþþ'øö/ú.þÊöïßÿtÿrùÃ~æ§><ºøüõgøëþÿýÿó6þp°ügî”gŸ]ð¯ÿ?wﵦ:,€>ï°˜LÎ9眚šœö>³/γI6NØÆ4=7gþoõ€-ª¤’TIU*4è™ÛµgÞ§«aèÿÜ_îÓ:5kÊt0yYňÁ·š«±æùŠ§SqƒÐZ7LÍÔþ~r¥ÍâÉÂÝ1B$CÄt(pD|cL…íÉœ£dOªû~bÒ¶Õÿïÿ4'õ%êvç7ß÷eOaæ¸u½ó¡Àá_4ÅpòZ+jòÛ/ò!ëúH£RB:Çè!ø5xœÃÔFàñvóh«ôÃÙ©ŒÁ›\é–xñ:e‹-ï}ÕcõEDOYUNØåû<2&ÃÛPJsì2ñ{ßú¦è¹·‰³–µÖ„ËþB³=ÇöÇï{:˜ÎUÜî¼؄²~cªT´EÏ‘¹Ç˜*¦Ën‡ú>ÿ¿ÿ³nó̾]<…y¬aŠ›ïÅM{öƒ°%¹¼F<©¯U:õ—¶ÖÂÊèôìû¶¯7¥@f„é+ôT+0“?ƸÙWë's‹œVÇwÑ#¾sá3Çz]9b—yÎfÜú†p{(ky€¹xŒ5îØÚOÙW™˜íb6FÚYÌk¶(“+óÀ‘Œ—Jaþ”’sùh
ÿ¦ÒÛ̘Ê:ßcÊEöÃ’'X³—†Eò7ØO%5WzÃP‰éËÝ3fðûh£y-¨«Âoª´îè%þÏÝ1ïŒÑ«þÛ_™áÚÆ4˜R3ôc*S²Œ©íƆ{ÀÖÕ„*.°öµ~"ƒé"»>¦O5Ž˜¡°`Æš2Ž™Ú£6f¤~0Ë̬ǬߛFì«5Ìvõ,1‡ê¦Æ÷–si‚yÌmR0m|Á¼Ñ’ó¥YÌßÂFX`>3„…4ç+X¤úÆ¢›‹û
I,ÑW±”æ¢ÆÒÕsË⧖«œTXÁ|aÅ)>ÆÊ£«jÜ9¬6‹m°F®äÄZD·…µï?J¬{4¥°¯qh
°º-6ªíؤé2a³v½-º'5¶Z„‹Øú8½a[
‘ÅöþÞ;V,ì<›ÉžUb¹é]©:ÅKJM\¥QêÖÝ–Ò˜ˆJóŸ(‰Ò4 tØJ{®týøóJoY«Sü‡2¬•ÑKï¬L¬ë
ezTp*sÃÜNYd+ÊÊ¢äTÖwµƒ²uk7•=ÀÄvJ帕³=À¼ -äìÊM -\“q·šRw{Ð45¦æ«–™i¦ÄÆ©ù^ºúšC²cÑÜÍúŽVs혵極«u¶‡m hã…£S›«4Úê Ñv6º“vt_—´+wϨÝscím -¢Ëz®Žf„NŽ–jKD\Ó4‘¿UUDû;Ù!f5‡‹8 -Üi½%ŒÎPУqæ{F¥³kPߜ˞úê¼:ÔW—qk¸¹|Ò•I$pWËZÑ»ææoÂu6<nƒ!q{m“¬;·6ÜÍzcìžít;÷Ù×Óx§ÛãÓ/Ò@žeF…®§¶o=‹ËÑà¹. l)U:Þ`6{òq§÷+({7…èOU‰Ú}öe¡ê‹kÚ'_-µú&K5ØïÞ ÉoØôj~Z‰žÉø{ËõÉ¿i†’ -< .ìŽg"“$“Úk ™‹N^¸M‰NЩ\Áhâg¬®ç¹àÔ;ÐÏ«¯IÈé%BaÃB*O×óи.„Ny—#lÊ.áPr6—†\xüU³>mNšˆÙœØFÂåË0R9«‘iÚ”Œ\NS_ÔZÉX£1Cmèp,ºØoO1l4ÜÆÓþ&–Zô¾cïÎ*ö£®ãÚàö'î«Ý÷ñ‰¸ÄGñŒ*~ºÌ -<a)‰˜½N4n·|b5Ë´“êî}‘ôTÊ×d¾b±$‡u,yš”)«&¼IŽ}ª5Àb©aßKk;?×tÀºö¥ËËm+=«Ü®Ì¯e\fï(“Ó—–ÌŸ—2g£þ’%|…D6Y½l³Ýu*œÝvß9S³ÎÅôúŸ\«?Oä~|™K^·—óá¥Ê˜o4×Ãüº½t•þµúµÀž÷~¹¹uÞK¯Ûã -¼ØÐÆÅu»ÿSÒÛ°v)¼‰'JÍÖÆ^ú‰°²Ñó½.ÇÜ©~¹ãR•Ëûà Y±”ÒJrDØ+}åÝT9§¶Úª}=UUs‘Á½:¾n5l¸º×¼é£²Vñép^[ÝúºÎZ%êǧÞöZ#õ}¹•oX—šV#cÏ£ŠþÔÄ”cÓÛŒ›U¿®Òü¾f-üjÅû뫵.ÍÀ¶í…líÒ:\j¯4©ŸŽ>Þp*ðNì{Õê|yqeç² -§ºîìð§[1êÝïmiÞ3NÔž^rØšõ†}»÷›nV_þu1òÕ4ù_û”¾Ø·®†~Áñ=ê/F³ð@šcƒ¾ùf§ðZ4 -|(ûgÃVQ›;ÏÈ9u«Fìk5Úx±¥ÕJs:›g<﮽3wŸ$¶ídԿͧêÜl0DÛéW´Ú˜ÞsÕÚ,P¯VgíE»:»fõ¹·|k+ðyãjëÏ…Ütá6}ÿ,jsâ²Ø·ûú¥3O¸–ÕÐW|¹Kê+Gö<_U:Ýûj»Š:¾vGî»ÒÐŒ¿·×#¶vÔuÕºo¯wÛËeãè›ZËßßÊE }þ¸«óÜOc`Üÿœ¾s¡O³[lÛɘg{ý9MwÁTÍ»ëÝm˽²»ï£ÁÆ~?²§óΧ=¤´¶Áan%BG“Çr;泎Îq=Ov¢¢:UãÉéhÄò -üì„]çNnª¼`ËòµÛ—±Á“¹êñ•ïÿ
?Ÿ6;ã-¢\ÿ’èhBÂçÄr6ÙÿÅr/L´µM@ÿ[‚ò¿ÕÙþ7¶“5%ݱÖ6éÝ‹s¼{ì²5Ð>=,¨žÓÿõhlÿRÕ†Ôp8g
$^¦«» ¼È-ÎÇËu¡CâDxn[¡¼¡
¶¯—M+²™lb‘Í_S‹;TòW¯ÇúÂYƒÔPÌq¤õô½ßZË)ëä\÷ìà|ú8®üßüg7xíä|îÑü²°É+Á,k™íþ‡n‡ææ íò -ÚÜ6;:žB”Ó_wÔH´AÜõ•Ä¸<¸£P—IÆ™Á6×ûì1*‡0ãÚqNƒ…ZÌЉ‰d“Ãò{Ê߈²ÒÃ
%DH´ÙÙæè¨üIâ³Ûõt±¼°ÎÝ[q92±ñØ"ÿÐZuî6'ñŽƒÇÓ\B]@
®CG
÷wΙy?—ÞÀ$³¾æ²j==‘Œ†þÔê<Y¥º–¥aù×Y΀æ=½æ9Ð5:•ê@ÿïìÒ=B¢áȨ˜vaT›Ã
(n;ëI -öq·["•ùùTžÝîzÛ= -:]|¨Ä„?£Ú3s$ç7§¤Üî »S§…làä´Ñ¿°yÅdÞfta–Z÷ª%Ó¹<é–,ÎKï`º-OŸ“Gt‹àKéÉköDS(ËëæûðBµ‡
ÑÔΨ¸Ê—
YKX²Ýô:ÛÜöS ž›’mäh‰P€?Ô¿ÓQJç…-éôºƒKR(/Ј}A(ØX–§Ç
{(ÒF°:«§aè 7xš{4ýÇDì¼ïöä´î ±VÍ'%›nÁ‹Â"Dý‚0¨&< ¯Œy*nÛÝõfûþ`„*æÛ0E–E¾ðuýÜnwG6îñòïv*hâÀNU“é1º^ -3LHg…RÁuêã‡äU§iÐçØåö¿ÇË6Îbn"åD -ýÎRNÅÜa¦tµzÜmæ¿êióÁܲ¦„EfN^§G§ÉùÑ{‡5 -
GªK`y±Vï«ÝüŽöÅÚªÀ¸¤mJð”Ôx´Å'˨ö&"× *`bß«6»n7§"ž Ø첄ÊÕ"–8J‚-¡É:}dp}ùãÎ3ËdvØœ,Ÿƒ@ðFã)}
ªn<×Äizx¸Ý¥Rœ‘Š¦ovBÚÀ´kÊ;4s<zÉì×þï–Oc&6±™Z®jw+›r«üÑV&\rFüŶ½ÜçžtÊ^òâ Ë*‚¸&’ß&B
Œ,†hÐtºF¯»UGEìòh”¿Å¿³µb4è\6›Pxž´X´ßO¨Š‹ÀçI¦q¿ç+sKþãÎ/³)¶?¯±\ã¶6†Ýª{:éTwâ?;mG'WD~&Líñ<íZk&,mq¤ìvþa4¸M£þ«eoLšð{Z—Y¬8"Vz¶tr5ìx`¤y׿Š¯o‰µçËÆ!ÇD“œÛŠçh0¢íp@—¯‰Ñ÷è>iÎ0X‹›½?êXì:}èNwîûÑ穹«¦K¬ã@0†;4ÆxÙ4Qêtby7„ÛyÕ:0ŸO·ðÓƘZ×$faz.õÄ¿åñÑš/ÆÁ=Vlhΰÿúh ¿v(pw =ŒÆsíÞ*¬žý ´áÌûm4Äy2m²y´KOÇA,ü›„u -æ×V -é̦e|ç©îÉôŠx4‘ª:)“Ïuó’ë»UaOâ82Û‹¾ß>S
Øð -»
*8%}wÇ];@:…ã[½ÛL-Íö¢H؆ªRÒ:
jÒ˜ñ뱸ዂ‚š(pb¦Ì9Ñgc8¤>;©Ù<aJMH`öž=–n—0†Ã)“=ùQp:¡``ñS¡™¤;àUâ. -hÏÓ2°éBuØhéDÏ\X<9F¤†9
N÷—ûgk&ŒÉ•µpNM§ZuÜ=kÕ‚Ùä8k®ç·XU=/Åšv˜ý˜gØSß,¾RÝIäN“ˆ\µœe:Ú2À¼;Ë%û˜°Þ1¹j¤ˆž -…C#-ìn¬’NþtƉÍÛXíño ßl€&á‰ÇS_açÌŒ~D©±ÝV2ìÿO–…Û@ûÂÉo³>B"¨9 ¨U´‰µ±—°nÂ!?5W\:ql‘-Xö–4c>Æžƒj‘ u¨ ó H®yjq²:"fThÂä:g6@5»–£ÿsµVG}Ûe!´0¦'ã°/™éyVÀOÙ {ÆYâƒaúÏH!×XêvRK®ZÆàÓé¤]¿H‘;YªPøHÆ5 -j¶bûÊ“
ªtêpŸØqßÞKÍ~Ф¶ö½žy1¯U£`,½}™2ðï=<V+7Úé¤~ñxÁ,ö£†ðlï³*Q,ÌNŒÌ÷9Ø¿¶`^ëæ7†3ãñce
-`-…ø¶dª}uÅìY?ô´Œâ[{c^ÐŽ -=%0×v%ÖÈ,~À¼„.öhó¡9@3ÒÝíK¸äVèàc‘õõŽ&ÙWL`Mˆæ55>ÙfÑ@Kka9Éì®2°ºWbÍÖ´øwDzu€ÞdÍ4wæ;0¸o—>®ÄVŒnÙ|ì^60™»×Áö(Jï_ÂîŽi’3ç²ñr÷²:wï7XÉi}uH']_vc¸74<C”aå³ÀY»7^¯=Á¼„Ýù{ÒR_˜ÑÝ´ˆjº•éC‚r
‚Åg>›¤µˆ>è©]Z×ËÑÒóJu.“Q´rA1oï+a Å8ŠGÙ¯Ü_€ÔõkÊhp¯X‹Ywp)¹Õª³7êïœ7UvöõwÓlP$Ç&mwßL#‰4õÜY›%»©–„Øé·9˜¿¯@ryª‘:áV*øÌž,4KJ½§½+6 ‹¨Scâ0L®šÉ•O™Ž¥{ÌõSóêNÏS—(Ïä7¾Õ§ô\åv¬YŒÂmè3?w>¨‹^̾{¬Z·ý›‘wf¼c -»\6Çw{bÖËöËöWzÑÀÉg{ÕÎhéñÖŽÑF¨‰±˜Ÿ›|™“„ïK›N,ÝÛX39µÅw^•—°›Î›¨¿RÛ¡ cq˜§U„Î'Bónlšd)VoFÏÏkCuMlB¥kԟƧ›I”íº)ùâ næýdn^¯ÆûíiâG*¢–Öå#E_v¾QJ05‰°Ð -î@A[%¿UC§Ç²$€:´10 Ö–G¸èúA½ÃÕLͬ_'®æMöÌÛÔ¨é±JÓ -M%½ù`jÒê°ÂšíÈ6Ÿ:ðjŸ¡ - -Êj&1k8•;W~HdÄ>.ÚnZs?-ãÎ{X:ÀÒfÙä¨É^çÔ’ÚÅ~ªÑdnQ»%ó:]ƒæÈs£ØnºGªQê¦ÉaÌù;ÐÆŸ•×¢K©±Õ®;S¬f 9ßÛØì8¿¹~&ÈÛÔX€‚2oúË£Ù==Ù÷p9èÃô/öR --ã,ö÷9IœØöpèê’+ÍIå¾n¡ôxg±r°lF¦o0WƒÇ?26ày‘?/ýÁç4æÔj>[§`y3× -]nÚ^õ]e²ž“ËàHÉLÒù'N ¢W'À>V·VÑÈý5üWÙlz|šÓQí²«ïŽgö2V5å{œåW¿<Íñý -öxÈU²u·¿Ûš±,ÓÈ£8œdàR£”²<ñ
•=@00³Fêö«†²Â\¾±1U2úÀ®3šãÊýp -Kе.¹õ!a0 Y7æí=Þ)P`$û‰`üž1ìšx€<³VcÉ -Ù$ìˆ{^°¼÷_(¦Cæ-‘/q¹„C³˜éTÎG¾kØ›
v,éã—³º¾ˆäWº×L‡b¡¹Íó(,u͘0ê -ö2$®A -œA{ÕšJf¤®µnªí¥„‘:õcÐþ-<Rez$¯ªuÚ…ÆJ¤ã…¨R·J}¸èC"H{#"½*7¤(Þ•F›Á‚[~ÜDšÉÚ›¢äµ…›„¬ÅYŠ;§°’÷p¢Õ?Ϫ®çèïlz€Ôy|ZJE"N!jµ<¤.×~|b2+™D;¾×‡¦ÒèÔíI«m‚HG‘I])‰j‡.0k^Uëe]i-¡ŸÕû¢Rc`ç3HÁ¼p—’!ò#uözDÚG”‘*Óßu}o¯!UàDz8L‹ŒÕ·‡RBé”Ș&ma¤"¦]ê<=„Tó |S™"ÒžYÇ#p¤ìQäM
¶iÒ¯ Qô˜m©‡T_•ÙåÑ]Ÿší -ß´p¾‹Ò®
UÍ?vG«ZðÃüí
hé°v„µä=hÛ½ÖªÔ -„ȧ±ÇŠ,Q¤PäÍÅ.ØH
`#³ÐzËñéB£Q1H‘öO#uðȵz¤™©¾‡¬W6ZCvQ¤HûA -ìA ý¤`,œ±E‘_âH¡ö/ŠTCý-<Ö f‘BZÔŠ"E:ƒî}Z¨S49³ºô=УOÔDè_‹½œv£ûþÀÞû"-ݪó(Õ¼lçZSëŽâq0æAŒâ–O[w¢ÛCêÔYšpú~¡˜‹¦åíxëFå71Â'Ý¢Ië'‘ö~ø¤žhˆ:"ì˪P/¾L? ×41;ÖD¡§pê©t¤ ø€Ö-AÀàB'²ÏûØ^ܺ^&qúO1S>³ -Ý8 ±dØÃä#”O t¹U4P¡½Ô!õvŠ³FPÕp H{Ü@‡‰¼ÇѸ ;\+I¨S[_Ž×)v—Æw-Xº%“]!X~4ž;‘pËá=^xEtø‡ê<iÌŒO‹‰ŽO3#DDgð1
åëùSÑã3PkLh„PymIKþüÑú$-™Ä’ -ÑuÊcxÞwÓ´Ü}'½ë€¬œ*»wɹTÙL-› þéY‡OËpF]ª 4€bì …À„2ŽèçµÆGsÁçµQ©Ñ]bõå–ìY83»Š
2J,o-ë“ö<%ŒÅW2>OÉ"óJ“Ëz¶Þ«L2tF¦1Ðfú7Q±¤ÀߙߤIö}íIhï/2\>-@¬Ò‘¼]ºEò¢²²R§ú#G¥]WèS§ÀåÍ °ò%‹W:?g¸¤bñÆüeª{¹’? -3Ç#˜7—Ê #onù<‡Ž-Åž3èxC¿Î¡“Î C<ùrèD‘¢:ÑlÁ7sè¤3èØÙ‚ŸäÐIgÐq´¾rè¤3è8Ù‚äÐIgÐId¾•C'A‡²ÿ ‡Nº•[ýqÝÓÆådÐіŇ9tÒtH{CÇ H–È0«jÓBÚ¶x¼x&/ØEF—=½É×ÛyùRižüë`Ø$_ûpÈõôö“\iÿÞÔ±Îø’ü€_Ó)`à,Wn®(-ãur’Á–?Ëö+' -÷ŒO -˜t–¼ñ!_ß«Ì9Ùããy®ž÷‹|¢[ßï’HæãÏ•T—„RæàXÞJš“ÅkR¼P&¶ç½ªÛ[¡ dü˜`0Èûnc1§1ºìcUϬ’šBf²7ò]Ç ZÉ`Î?õ“ÉnbÇ6\+éU²›¸}*}àÀâ–)É`ŽiúÊIñ²8™Âò€qC°lÏ'63ûùUæ£<ž5M¿eô¢])föÎâ!”o¥˜¢Ü·’̬Ã׶= –ÐY6=»Î^9·ÞÏM~ÛšýʼnUFTíÍciJü<°—j—ì<¾û«ø7òøf¯ò_T§•xjšxŒ´*ý¯
UbŠ -¥hŠÏßËxÙQ‹×ƒ)8róø¼—W91R‹ýY†è…9ùËLyØë/Ÿb\ë‡{™&*GûŸŽ_{¼Û3s²¼ÀzL.yºì“Ï÷ÙÌ¢·z]Øo)/Ç!`«äJdûÈÿL$wwV†±G[|/Œ½ï¬lcO -‰ëÀL¶Ï3ë¡€û³˜H -áüEF*Ìû<#Bù‹ŒTGÞ5Ð<“X(®mñKSß2Ò›©ÙçnÃîÇÛ— -'ÌÇþ:ÅóKFôüE*œà¼üy*Üïý–\ŠIÛîoØ•¤Â±ï BÉpÿ•T8¯Â!NØ?&Ó>ëI)†lVÀ¾?Y*ñi-«*çFx®>–°¼0‹äzAP.YEdLüf»7u˜§K†ß=\`e£÷dáHÝÎX¹Èc°¼NnæçÕ
D¯ÃᇇwT@<0ûV3 á£æ -˜R'•ìf³ðrëñöbvn•êì¾Ä’ÝúRYg{é»c³)ŠTS\®bH—Òõøj]q¤©r?#J^õÁ‹!q3ìЬ‚
K}¢Ö¹_f»€P;Ò«ÀiéeAtê«d;JtÝŠhùa%…Ó÷_ JùŽe„Ür5Xã猨ª9þMjÏëU¾×D¼ŽÕYF—Xçbzœú*΃´^ÿ²’œPÙ;Udx—¤*ɽå…ë'e‡H¾È†DwB¾×÷ªˆœd\Ÿüõô¢ˆœèø„ê¾½*6"w|¯k
È&ú«:#¼»Ô>¨'¿d–â…ˆDÃ]å “öôþ&›îw~˜w³é„ì€G-ο˦“y?̇ÙtB>Aþ~ù<›N(—î·™âÙtB¾xáHûO²é8d¡ö¬àýceÓ zqCÈ/²é~)‘ß̦:§¡eåŸeÓ åÒ±íý¿É¦Ê¥“ÛóF6¯ýQýï²é„fyzÿ4›NH¹aÇŽþM6P.ÈmódÓ=wi×”~›M'¤œ*ð¿Î¦š?h¨³éø ^ÖþU6˜nù·Ùtò)öI6ÿLü²é~E±·³é$s¬þ,›N8·ú¯³é„ -pÏ•#Ò²IO¢ü<‹ÂŸ…( -ŒÊýë\0´^îú=åê^ƾZŸ0Ï’xY‰tr"š¯3Ń8dç,a‡o‘Aꈺþ¸+Y^…-€Y¥åçÁKSEÇ,t7”ØyO¦ºÿeb' -,ªñಣ¡ -wR)ïe>‘¼JyŸæÑ•ò>߆î¸yIròC~SáNªÞ+¬q÷~…;¹·šÃì§ÏkgFͳ^e'Ö`¯Õ…E‡¬M÷»ÄZ~æ£ëSÿÌ/, ¦C¿wÏ‚ó¾ùtG„ó'ùœ%Bž-öŽx.,/‰Iñêš T.ïüv¡$&ö©(d¦§mè×½˜~GÝ7™iLr’˜´¡ßeI19iLÜA¾ð2 èyMcòëde¨Kšíô®ôëäìJ9ILÚЯ|ÿ֮쾕Ä$Ak'JHÚ÷Ã.•ÃûÁü<ÅPà²Än¬ñ9® ‹øbÐ~y·"Ý[å)Åõ±Þß]MÕC§o”ãÚ½šê}fv}«Üã‹JyÖ_渲ö'†!#ëùuŽ+è’ì¬g©WÊ'¢èÆ÷Pý`Æ[6ÔLnm‰¸5ßIª–ù†OFŒfè81ºÁ§Le÷¥»ƒô®
+“¤àA®]–ï˜úÄIÂ+Gêl¤œ|8~Uµ{U¶«Š[‡ÍŸè÷DòáôâIx—ûÄoãòd^aËýs«Ôžº~(–„7E -Æ¢LŸ¢c%2ª¯–(Rmnfù«Ã¦gÒ™\«.;)75íªõh˜:‚^–£^éï„*pH`~Í9NÞ”ŸûÇ&o!XAêVáÎrrÂø`ùqc ¤µ[i¦¦úBŠê¾y³œÔJ>ÒºTÁB[i*ÕJs"» -¸UËHådßs%‘ -øª¤ñ‹ùcNޙ׉:²¯®±`•™7€½ª¢£åg×J -ôóÿE]?é…l8Ÿ$¾ó3R[×O@ÕdUõcWg >¨ëÇÛ†·ªçή·ÓSº®ß˼×?©ë']Õ^ÉÖõ“¸fe¤~T×ÉßZ‹¼{®~]×Oš€Hƒýƒº~{íºuüQ=>ƒ4Ùõø^”““]~4Áíón6ÇS]?‰¼‡—ѶËwëúIkòðƃ¿¨ë'&ÃÛÏ'‰¿Ëß’¡Î?N_mÃWuý¤Ï›¹Q¿¯ëÇ¥6ßZüm=¾÷‚4ÄëñýÁö¡«ú}^ONÓ«Ûžc5Þ+ÅÇÏHý¬®Ç±ýTÕÌú¼®*%UWôãº~ÒjŽÈ{»®ŸtU¿om¢êú}èë“Y×OFÞëÔõ“®ê÷v=¾_eáò¸ås]¿ß'óªú±°|T×ïÙ•Ì®ê'vËÙ»uý¤Ã»xRì×uý¤x>¥_×õ˜VU?é{áä×õû½ß’K±÷sžDìÊêú1ŒK¨ªß¯£yuý$W«Èguý¤CÒzý¼®ŸtB,%‘?®ëÇ$¿ªß“>&û&+n]?q%ˆÔa^Üd%³®Ÿ,æãº~ì™|>À‘ȮٟÂuý¤…ƒdçŸ%Ä’rß* ¾¤t´JK8⃯Ԛ¼Q‘'+ÁSq×®tà=/m‘³škŒ9½ ‡Nì<xÒ7E¡Òq$¤åȆ°V–nšžeŽ%Z¼ÂÜ7ûu±’ÇŒý²š°v·²Ì§ÂÔ¥pÎBè˜uÞ?9—u>Þ
}µ–AgÞëµñsœÈ~—cªó=îÆÓ…|šDq—7Õ”*çºë¼íõ¸Çeqν¥t×R°\0W1ãœÄëÛVdÑ(¹;ëæ²ì:·uË•ºÓ;“?Êf½°õï‚Ýã2¢;œÇž3~‰Üe¬SŽhÕ]Ưú¹œþ¾VõÇÁÒOí}”Ûn5mÌbE1û÷¹m:´Q"/ĉôjž'2nMýr™øt—«·“»ªFîÙÕ5ëWéL˦1d5w,Ž¢OùH{û±^®ƒ#,6çS‘¹ÕÏ<„“_ø*Ž}±yí
jº$¬'yŸØpC,ZÌ÷¦óâPc¢cEº©vYUµ¿šaõábMkìÎï»j·À0“4ÿHÅ³ãÕJ”“ˆÅÒÍ&N¨—dïW\•ýÄÛ>`hÕ+iŽñ·²†ØšÂn<qWàɯô²‹ -h&†™z×]N,”Që-˜Z¯‹@Ú§ÚVS¨cÈvgvíî –uc3 -i¯b¡°8â^‡7°éW‰µ;]‰ï¼*/ËÚ 6’ÀøgÂL]Ø^Ý*Oÿb‹` º[!"ÖÒ&‰µ§pŠ5c‡”>{¼o)ðôXß/Øõóîæ1M³°v|ŠSCŸMhõÃS°t-{ð¬N.{èüГŸ¦Ê¶}$o 5
#‡ã_Ž,2=ûðÌñCú„¸ -þôŽr—k£ØÍTèLd>² ˺éÞ,¤³bc,Šj‡:Ê€ +ÈBÿ/Z -6¤÷Nnlë˜fu=S&bJð³ú
6nsoo @èÙ L›„1¡Ž¤h½&k×ùzFÓEÏ”Êp$C,ðCòr
\(VWe:3 ˆ¥Òeåèv«1ÄFÇQd -èØG˜0;4¾
캤ɖQ{¿dEOðo[ÐS ±ÆP$®æ2¾qX¦JKU‡¶×hsÈè–¨.7ÔЕðE_YËèz†þÅ1{¨tQÇC›#¯µ€ìÁ™áר†õƒ©yqö¾ RŒº‡„{g…&YaÈ‚ÞÌå õ½}ÄÊž*3Fj@Ékƒïš#Kçö›}O ÅûÈîéGL÷±ØÛB—¼³† -YXœ£=±-c»êXö“®Ú†þ(pxSP¹mŠ#¿>³MoJ)‹#›”v'¹ wßD»˜ÀÛž1EGݼ„MÚÍ<|e+úÑ[ûx…9=6>2®uQwï„gö#0Øú_P™þbôgçÁCÁ$õ6²› XÝÕ«_LdW -ýeÒ ÏîÖ¯ùÞrOÏ&Î"Nܘ.)Ç+6ÜWHü±¬²pfˆÜ`@Ðk,ÌŽfð‘RìáêpY´«‡z»Ô|{ö±Åß“CLK+-®¤©¸kKuõ‹ò±V^y Q–ø³«CÀÑüq>¡í÷U™/+kbâ¯@9¿ z›-(ÝH:9Ñ¡%[ä ?ÊÊœ#ó6ûæž… |KjÐ{ÈÁœ¦\düÂ…µRmYó)eŸ`¾2#5‡1dìãyÚ&*æ`oW{Êþ$…–ú|Šéæ4‘ŸU¢È‡ãˆÔi[ÖC¸àF‚b« -$ôs«Êîü~Cžì<¹ky_…U á~a«9t¿Æ/UHQås2ñÐw<»2#’Q Q”‹X›q[Lƒ
r‚)Ì0*$QHÒ\’vª‘ - v¼¾ë·eZ×ÄCÔxø|o¦ÎÄÿF…|R Á't_(_3’®rÖSzLêUV„éû;LªˆäaÕVI`Úíop¸H3QÃ…£<ð(_ƒâë}õëàÚÉš©¯E'bÕòßk(G0ìø°G¯ÀYg¬ðÔ‰ÐãEÂ̼à30/ -¯ÍeûçµÛmÿ¬õûny©\6ß›Ã?“" °Ær6[ë°8¦/ËesùÿÜ’Çù}¿<ÜþùÿYcD.çu%—óãbù…Ǻ&–uJvƒÒibÈäM®|™mVUM“+¢æzG6’ëÐàoƒ¾´àys~M“g d¸”`”‚Ury‰ßSÆR±ÃÛ_H½ríf©sò+íÊö–uùáñë~|R¶7<…hľÎÍHËàš“AÜüAgb7
¦–pmØë$‹:éµb&}4J’×”ex"^†/"˜9æX`¦R7‹ÎªËzGPQGåo‰ª÷LWzWT½/¨ØÂM®¨z_P‘EòEüꈴ0ðµe`Q~x–F›Ú`K
–q´ÚQ€½‹^ÛTYS[XÉ™x÷¬_[62$MŽµÚw -S€Å»±ŠZ^½©“
ÃZ^³ -þB…VÌZVjÙϺrµ€O}%[f#{(ã`®fS† ?ËŠ÷Lo{¸·ƒ$ËÃ?rï›Î§Šð¶§ùŠ€”‘pïÿ…”‘ -üo„¤´ˆTà#$¥E$·(Ðãxç)&—Çëâ;¢ø;ìa:#!c5R˜xGF%Ì5la…\ØÁBÇÈDF$š3'/¬AuvßK -Ðe[ŽBALmnÎ -]|z]êÿ -|l]nÉÍü¶9¦—ÿüóÃGÝR±•Kþóÿ£þé@?ˆ1h -žë¡çiú6Vÿbà_÷ÚØ |ª(aw¸ì -A2ÚúÛš¢±þ0ŸŽkÖÉsíÎã>±;ò#¿¿Ì‰O¤PÖÝz9þžâÚÀصû)L^~|Ͼf?˾Ïñ¼§z³öêß_Cáÿ}æ¥×¯s ¥õùÚô·_ãÕÒëšGÜc¯b|ýR^—vüjOùæaļ>Ùð ¿¾rM“ÍÆþí
Þ,¯»Åyº$¥Ê×ß·ñã›|ÄeßäxÖÓ˼yæE}þáá™™|n¶çõ<³j×+{Zù7Ï!ã=—{óð -o‘z±òÿýá¿<|ÉMÅýdÂð#¢û}_5×.’Ÿwik?"æ æïìuÛÂĺ§/óúø\òöýZ,ü£KÌa^Þçé£&æé[OÌÓGMÌÓ·Ÿ˜§‡g^ö<6A¼®¿n#7Œ•ÖøÀýuj±c$6¢®‡-ëH[÷˜¹W}®¼^oø’2'i©^%T<Rš ï±&o¬±<÷KŒÜÜ^çÆGeý5ÕÇœ×óè#ùuOq½(´ëd/Ÿ–ʽþšúë:'h½4~Jíõˆk²52’jáÇú|—”XC
Qö5×{µÆIìß½ï_ÏõBú¶¾>¶¶NM¯Ó(Éæc 2^Ç5툳™^—–Êå^üã·,O!Xž>J°<}KÁòÜ‹ú$üËÚ‡×Kñ)Ïì™b¥À^˜´–ÒñÃØCpÖN^8jkK®ùŸ•ß9_—ÑøÅ#Ï¡‘ž×ßð(ÁVpÍÑ3ð›{À«Li.xÓÕŒ×Ô2V¾.øçÒÆb¬\ùñº”Ù1Zª[„Œòi“¥\}Fâ›”© ^.^öbÎS´äK[ûcA¨Zë¹vFúÚä’/“³ìCõu¯üLÍ)é-FPjì’)/ ³^cY—]ï‘_´vÊvYñNC¹-»xYÖgSÛ)õ21RCëÉñû0ÑÑ_—Óu›¦£¯+Ʋ£3 -àµY5K -Þ²ó衪±ÐfBÃ&ˆPl$ô pàÆ*Í¡ùØ1ôDÃñ¢6&ú’÷ïqªØŸšKˆgœ*º;äò:F\©HsaÊ`øzLìÛ¥Ô%6R_h]#¹´®]×.ÉTFÖ‚Vßîë”X#kr)7ê’V¨KOÑçÖ¼ôõ¢©8’¸UóÒ9ònH¶ÁKZoè³i$®ù†Ê+í[>7¨¸A771µ£&œ‰K'Ok/?Ƶq’Ÿ‰k·Á]½àÚÂz\Š}@_Ð_P^X~$8K¯Ô¨cËÑ <°e&¶¥ ´øX·ø¼ócÐò¡i-•I[/'HÜ¥©u_ßµÉ׋b‘S~,âÌ^ñL«äXïRZ|Ø¿xQ›¿ƒþô»c¿ 7%Û~8¡Ôä>…Õ%¡ÖØÒgþ6Ö -` &Óyç:1R–‚åàOKËáªÆu¸ä–¨‰×LÄ.ð×™i#.¡]5‡8ÖÄ/ûn)o†ô k1žiª¥sõÒöaV -E,-?}ß’Òq)iRÉÖCZ׬ã+çª#e* -ü²<³üÈ|•C C”gX‰P¢ëmX·õ¸1kÉ<ÖÎ4^@O/j“` -羄y¥-GõßðY¤W‡Å|^×)½à¹ÿÐH*K9<COOÀÎÉAð×õµ˜Í<M)š°†#n$ÔÚ’ºK?Æõër¡d©N9å®uÏËRàѳ4‡gê•ðì• -ŽàIÕ¡Ewêø4«6°÷^<O/j“p
O7vÇ`rÀV—¨ñÀ)Øð\ØÂ!çðìø’‘¢¹Â:Ÿ1\u(P¦±2ÙfbIψU`'V™xY\†Ê(“ -]"æ’
¯s ¿pÇm ,å—0£^³î„Y„¢°LðJMwÁ3©:Íd›2^ãZÒH¦Ê·l6/í‚η茧E]ï˜óYtÒÌv—˜Í¡/<‹/AržßÓ¦À‘i‘ð2-Z¾öÿD&²÷ûá„̃ڑ9J§ƒ.5Çæ:ã1P¶Ï«Ø“,¸ -dX¿@ogèÑgIUšHiEÆ&¯Y’³¤¹E ' -à(k8
¦ûg(_p[(¥›zÏ[#€öºdçÀ©mzìëjGî9;ÎúÔL -0Ò¥ôIÙº|ÀyISÚöÐtG”sÆ-;¹eÖJt;>€ONÝÚ÷óx¬ÚÚKõEÀóô¢6 Âgö—á@Ý’3Û_ì.¢ÒFì‡
Ïû&¾Ü%
à›Õ|31&^r7ÙI-‘k¦ËNþ(:Ø›9Ùp<Þ]¹³nxBð/$NX„¹ŽXä -3m05ˆˆš7wc&fÅ,ûÂp†O¡ÜlMR²½Fö΂gŸ3žc¬½xFwá›;?sçÀ`a}§K¶EDqÎ#nfø\lÆI¿ìõ*|®·ÐÙ$l:¼©‹tÿÔÀI‰Î¥¸;©¢säQ/æñX´úRõÓ‹Ú$8:eW§¢ÓCEeãx±…ý°ñÙœv|V¨˜UÂgübfËqdÀÀâ ïÆ<Jž$~N±¢®Lh!üÎâu,væeÄh“Ø|/k†´Î%àY3=SÀë’oHb#:ûÄ¡¾¬úÙ»‚¢u}ÿ#¢™Å6tůM´Îk·¡Ì#Äž‚Ìõ,:B›üÔB'“Î ñS:Ð u¡s”žÎè\›ñ°É£ç.êWJß—€Î‹å$:p'tºìô8QñÜÀ¸Kúá„ÎÊщ̨¹ëC'‚ÓÐ.ºgŽ²Þ—‹ÓÆ6‰b£8iÍ+‚…ô: g€ÐBòˆŠGŠ–ŒMËø^Òs)ŸEè\–ù‰G
Dh¦k2©2È—šs@™á -Í$)´áüí¨=JZ#ú‘ž°,ô…´.£Z*ÒU -îÎ4 t³‰>褀¡F¡k€Œïôáÿ05Â)9Ž -¾@èÍ>ü$K$Ó¡ƒgç‘Œlÿ¥Òuå.‹d̨DƒŠ²«(Ô¸p¼æ¦ÊÎäëõh½Ò&A8鵹њNÇ¥pêù„(L·´Ìï¢æ<¤—ßå¶îÉocA™í®Ùvˆ×[ú'D͵A7¢-EŽ6 -±c|ñÎiæõ)Û2- -ï´R ¤:RòáÝÁÊ -PP5‘,…ô}ÎáNµ2œ‡&d*™=#o±ÄÚ\¦t‚=>6 –áÊLÁ˜»(a\(¯–J¹ì¾¾yI=Ó(éІ)ƒºEÃA(‘IBaáøŃlx¬ÙHžM²!QÜâ÷S³ÕS@ê˜2÷ÞÄ1åk×æVGPÞ)<î³¾Œ£àËò6h™3ùÓƒù¥³eîÀ«5ˆô¾!Õj2ÀWƒTì±ÈðU¼®(Å©1v^F®7=0JmL ñ‹ÎÊŽ0úÈà4ÁAØc÷19g8d¥x/L#ضŒJ´0°Ž8S° 5Œ
‚Mgž;fišB*…9ÞfÒ®kh9#D3˜€*’Yæ¿lÌ‹<¶¼-JMÌÎpé²c¿Ù%Pt¯ý -"ogh„áùëi|ÒêìÂÿÛëÚ+Ýåo?pu"‰èGJÑ—ùH0sÖ¶«ÚPËði.Æ --jV¥Ÿ|ˆ¸f¸0ïˆ5EfL+~ˆr¿˜x••Shù™g‡R6:¦(3vp â%;òù×AÖ4ÒË:k0Á£:ÒÎà¥ñ4IÔChTyGÐc&ìZ]‹)p$ºì-ØD…8SÔÇÛU7,9ýÇ
–ÜØhî«Þ,öƒ°4\¸atÏ°4#Ê+š -X®±žÌåXr¡û½¶>5’r¡Ï³'“~x†U/Xý9™`‡«º…|T´Úd9Û¬0 uY: -‘£Ç6R|Fð}GL…AáøbÒ-çCä*um@dÏ°¼¸?Þ¾õÓ<VƒùíòýWw[aÁÕÙZ”ö -(íüøˆ¶D‹=D«Áv«hvÏçêª'ÃØ ûxBa˜²°ú<ÏT–ÌøûçY–ÒãO~þåH¬?ùò¿ûäÝï>ûúw_þÓ/>ÿÃÿýo.H–"¹œŒé‚èÿ¼ÏÍó7ÿNŸüïÞ)~›¯Þw
ïyä¿ø”œ{ñ)Ü"Kƒ]‹m?_ùÉžŒk`]##o-)¹v¶ìa³‹PšRtÝñ‰ê¥ëªý
U¿ã#öP¸ê}ä[Ÿ|õÕgúqMðã'ÿü‡ß?þò³¯ÿðùW¿ûÿ>ÿ+‡}µfZS¼–à7¿ÿÇÏ?ýäçóÓÿô_þÕ¿|þ›OÿÏÿø©.úZ+ñ“ëo¸ú=>þ䧿ÿý»Ç¿üŸŸ}õÙ_ýù—¿ûÃï>{·¾×Öïø“_~þÙºö7¿ûâ?ýö·_þ‡_éO¯Ìî½þó¯õçàßñÕçOŸ¹^æ¯ü
æó©7{Ì?{üÛßþöó§?oîŸØoÿó/¿þÃg_>}þéÏ>ûÃgŸþügŸþâ³ÿùW·ô·ÿëó§ÆW\~à„Ö¸.ÿò÷_>¦œ+Áùj¢UûÕ'°¾V¨þHý)€úúæ¯Ï¬l—ï󙪊˜Ü-P7¿À´ƒ>˜»2+™IJiƒ²ú1ç«÷UÌ2ÃAx!•Ù=’úΓÝcÙ"¼u&±“ã*Q“"É;NRý|ŒÌ˜ä“ænïîŒ>;c(B®Ëª|+%,ŒUÔÛ!××æ|…à -x‹TI5=…ßÆâ³á~ ™o¬ñµl
`
Þ)ÝE=†ÚÕ—ašJæï…DâãÉ/_ïý|~ÏLƒµ½
}¤ð¢_·ŒÙ´QΨXu=
ùÓ4l6—Áñ^Èh¹xxxcºÜXû"¸g55~Ÿcäøº=v<Õ¾Ó~ô«×{óá9ÐDýÃó³þÌÒÔ›‡zv¡oÑp ™77˜zt·3þ<ˆ¯‘~—+Àe†ù^?Âë9xýÝyÆ:ûZÚè`j/yÞºMî[0¿:CìB¨Û*S0˜SñY)†êå<£Ô×3k±^Û¸¼jìCøüO»>O¹>Oµ>O¹>W³r=ÏÍÓÅl¢°JƒÙ.“CÉï•ZL6Ôü“*‡±1Ž,ÉFb2¯ŠèyQݯÈ2VÇÀsúNZˤ÷¥~òCBµ"ÿW%=‡Å^*]ÐsÇZ˜.ÆA«}Í<êøÚÙìn$Wy…ÐÊÈÃ?ʈ›å"æ×,Ç( -J,È–ÃHŸ7 äfxw«7.YòÇ•O'*Ÿ>RT>}œ¨|úðØLÝ‹¡Èo!7—FÈœÐw)IJ†*S™CVŒ¥ÖîÒÈy´Šê`)ÚdðíÍÑÐÌ -Pm/b¦²¾\CÝñºxG
P#˜ ÍÝ\e
QLL8Û'¥! ->\‰î~.Ìe–A˜Çvè$ÉLLcñÒ~§ž¢2 ûþÊ$k2YiÅ*«B ’ì´ö
þ9™õè¥#Óµgæ.¢¶bFg¬ÔRÀú±5îu%:³ÛîyH”g¹˜Ù«ueO¡Žíë9°™ºÕq_j¦.¸sÒS÷
ÛÍ—®`j‰X”ñHíP.b0p‡ÃþëÍîixoÌ‡à–¬™ÌBh:P¦In• Pr;ÄÚO•;ïÊ3¾ð-_™à—Š ói²[N Çð¬Šj6ÙM"Ê‘æ·-‹Hܦl&¾I|išIÕF }òí_-¯Sv¾dˆ_ÏÍÔ½˜¬N‘úÑã¡šØ;`ŠêW(Ã,Q\7Ù½áÃNèáþ&*S“¦=÷aŠ8›:W‡Ä·ŠÏ p619Å@ªW1Çehª˜_ -ÐffA -aÖ"Ÿíè2˜\™=s8 ÈÄ:˜±)C¦{I"¢äT -¨îý¢ïZ]TÙ©BÛ(B>S·O^ -˽ƒ(ƒô¸£Jv”„æx»7 -×ñŒ˜Íg>D{Ô²?º–£Ø`ò"I_ݳG/gã>¤œX½j2,¡ˆê‹«<>³¦¶™WRji$ÁœË–êYå\ÃR^´]º§µ$Û.ÁJF)úÝ DTé*+³óàˆwîŒÖŽ˜e²Ov;62®¬ò®»Y«V<ó áæ©ÕëC ¾¹-…ÔaZè~Š[*/ÆòðÊ3?<^p=µwäì*íÆÈ`(5ií*Ý:ÐÌÆ×µi´?Á ->í’“ž6FöâƲ£ùNâÊ[õr "Ú–2âô£Å,=>óFw¢òzÞðþ€Á6‘[Vâ÷Éô;Ô?0-™Õîd“i¡GîÊÂd‡´Žæ›çú‘üëߎü‹®*ÂÆ -g%6ÚA@Éè?S -–®?öIOJ€:F(ÌN¿›×ú刎뾞ӔÑň¡`äO·JßY'/`>•Z³¸å¬º‰œtXàÑIõš"÷¶^¦H0r¥à -¤WÄnEι(ÃÒ•z•v9z»¯„ØZ,ªuMb|ŽH˜F;T9îukõ~n($©ñ¤q /¶Ïð« *.ÞÕgã>¤~ÓŠpHt…™ˆè÷i„`‚Bú‹Å였ÆL•ÆƒµoD¶™R_&1û‘¼_ù:ì^XÕ§É(kW7ZêÚ)…ýºæ= -ƒQÈp©e"~gEJJÓÁm¬ƒz¬:M<Utµ"³¬p~L¢Î^ƒšäEäö,ɸ¾í+ñìh,ÌpåúβÄvF$õ Œ|‚õßf¹)I&à$$Ímhc»ºidí/$wŒè†m½vþ -dHË o„ºMRMöyÍ9[{¼ž¸‹åÚDª/ -¹«£¼\^½«Mƈ›’×Þef¶E°È8¯Q‹lÉy”y ‡žL d§-”s¡I
OQT7v…Zë-P+ÕQâ²²I©¢r-ËÓ\&ó8EöæŽèâ•bŠ>-`É¡B <åÇF¾•â°D¦ -9-sΨÿî¹"`˜±)°cÌ‚ìàò}ÄÒˆçT8[õ;Q -ÍÉ”ÊõŽ¥z¨/-Tš‹Íƒ²B£× .SÌüꨮ<dÝ?=È3¾¤fž¨……ª421Àn@ª -5è bZ ÿˆðÒîݢǴn¨aÍjÒ„!œë¿"”EC^?ó£rPî¡„Š:v1/ÆШÑf†©ÊWˆ3ï -w£ôíÚs}¢yFÙæ«°Lì1_JÙl†ãŠ37#°mÀN*|SÕmZ®ùj‡ßÂrP,²°~ý{/*Ω•Ã -4”ö5#؇섹‚HóÀt+þk–û€= -îzª(\9ãxCðcŠ½
'*$#?!‹^±Zî›W¾ùc*F…NSÍ_„éH4éùò¬±A•8{-Ìvãmø€?â˜É,!»-Ž q6éêð&‘]ݾ™ œ‹r÷xͽc5‹ýæáïÄûWÀÊØãÙ0A -*}ð‚ijN$ëk7fóëcNÀ;t•ÌÚKL3§'ˆ¦}™Ù´è ¯°¸ÄKҾƓf¸xô»Ðû=c½C+Oö#©¦yIS³'ÞX·w‡¬·%ýn€Ñ(ýÆÊü‘¬ïߎ¬§ÑôÉg%½Å}VL3ÀH›Gk‹ŽeìÇå8Ïí’^åzÈóq_N\„žtÉ5‚«ä¸\Ïò=¥Û3H¿‡lï•›Ÿ?¶½ÿ¶=ô5èˆÕ’Üa2¿å¡Ä”©g†`içîíþÜír•çåˆóc“C5°þÃEãü‰qHÇ'ñ¾ÙÐñb`è®Y¬-O>»¯Þ>(±a¨brY
Ý¡˜ËMay.D&Ü"õÁ/Aøù9ÕÓeâc•UxŠ>ƒ>_Óú¾dH{Ô¸³‰ß`߉jnæŽå¹Kó~fè´þÁg† -Ë<ÆiÖ}¿‘T/ -.¿¼†Ë'[¹bw½çäÐsRˆ»úFôèë?“ðL¾çûãÏfàcg‰`ÕPw¾xP%ýãÕþ¶Éïª:céŒ=·và{À¬ŽVNE²Ó®ðÇñM}çÞf¯„Ý×@¢qºMÑc¿ -C}œž&[¾ã~Þ«wz¿ÞsïîCèzÃ÷ñkGñëq¯Ïch»ëæ nóóæá™Æ1î7iéò™í÷õ”`Æ|ºbúTø=Ž‘ý=Ç?‹ßf?íõ½ùÐ[Û̈3íj–oÖ¡Ü>ÎÍzÞ.ù%,Þ<<tÅë ¾Åè
ŠoPqE¹÷qÔ*?‚èeƒèïNo^Ô±Þ ÀLRôPJþÉ^T5¨völê“UݧªDÀ$ËÆæˆ=§nŸ#Åj -©ÞøÛ·W=]P×ì&úp¾•KÔº#l°|µ©´•ßÏt0CÕ¿.ißàši-M÷]£6Èq‘ņêi™ŒƒaÖbû`ma]”kõî¯I7ªì)W£˜5ȉѼØV£˜’ƒ^Wù‰žOljq
’vÖ¼˜U´I_—KŸAñàÅ:¼ñ( Ä°¦PYQWH¹Ä¨u>xa;óêmfîÄtº-#¼ÚšiÖâÒ^Ûé!µŠ‚›€!h@>D'°³FñÍ8÷¹Å¦0oôtÀ·pª¨O‘,œvöÂaV,c -:Ý–%ýB! -¦ùÇašlŠqÚ^pÝ6Š“’uWYsÌN(ï8–$«‡QGy3g5%Èz»#ø·ÊÂOÁ&q1Å.j`jÖ49ÄnˆŠªõ5çvò[^i°Öh<¬KKe©8FzvÕ£Ö¡Rð–TÝ8¦‰KËš¿š¦ËR#ú—†Ë«·¶™¹QÐ鶬ο°ä³·cGBX‘”!Õ†l{“(Å -QyÓ©UHSË`<Ô%¾(¹êASü€„WföšFZÜz®‡UJ*I"5V×›ÕX®vkÛ<¥ âUjTvæ6Ó<YNÒtõº9
>2íäQÖ,(F¦IÎVÝ:o:5’»%’þdV\Øç6›WÉtùßË·¶™¹‘Ð鮬êscÑP¸½rÑáh•«Ù’òð4FŠ‚µßd¶NËdÝ©Ö&Yè58² -ÉÓ*ªyæKÃîÕ[ÛÌÜ…hhß4‰.Û¡ë6B5S#Ödçâ´Òw™…¡.uŸ¾mË[-ê Lêî¼V‡®™8ÃÔà&iiÓ4ä¥Ã›ŸÇsVSzIg}˜æÝšr³r)+Û3ÓÙÞÔüÖCv¬›[78vZÖ*‹ÛöèÎC%Âs‘,¨käëÞ‡õz2/WQ¼/
»Wom3s'&¢ÓmI`êloÃNÃèŽr·ÅDL7>i.L™uÍs -MÛô™oN¾T¢Dk‰n‹™zËæyr/™nîpRýæm¦íj+]e1æRŒ v«üÖØöIð¶¬r'Ÿ#tÉæ朳|n¨áÐfJªqtͪ‹¨u’Æk®‹d é×3y¹ˆ±ÔÝ«·¶™¹[Ñé¶\K¼ÌóÅòmæA%™ -U…±OÎì2f»ÂE!P½¯\¿¦<¤.»($4M¼¶dâYÄ0©‚üʬž äÂôãx)µ“è¥Vtÿ2H=Í—«bêÒË‘kƒN¹±ds´èÍda¼]£x¢ƒƒ·¢9â2c˜œÏšs_Íåå2†¨1\¼³ÍÊ}¨ŒNwM;èn‰'î>_ú…P̵? Þ$+Ò@”-¦0FÔb6ÝB唳æE`Æ0»dEèNUI«Æ½ëˆß¬ðÙC†Ã5ÝèÖRwÎ÷h•¥Q93ë]‹\»9‹¦É佞¦øl„Ôá>â(ÿGQ±t„¡ð¢©Îy^¾pÐÉ¿ ÐÞ¼5çå.G§[žSE$ÑuŶ‹Å}“{ÚáÊÂ-lJî0ÕPÖ{QÚ!Å’k-
?úwP®{¤Ðâ^;P^Í/uˆ¦PCëùpöZA¢ -Ýð,¡KH4KË©#óß“ØÛo!̪Ž!ôÉ5L*Û©*) -ÖŸ¾•¡ÒVÖˆRÖzšÀ°í}1——KØŸYä:l/ÞÙfåNôG'‰ÎÚôÛ–›Hp¥ß&öÀ#LLÛ†f -ßRb¶8‰\r$"fm™Á„Ï1kÕàR%HÞ¸©XÌ:YÒ`®ÅSUwÔ »ÿÁh˜t¹9w¡Ï—ïIPn¦åTÑÏwùW»ŠÑžX‘aàD8»Jµ0¥=™7Šq4Õ"³<Qý7¿8ÅÉ,¨Æ.47Kp¹ö-ÕøË—¶y¹§ÒYýFzŒ!~w=›Éü¿%M[¥`.Þ<µnÎvÄm@¤˜bºølæ‰ Lµ~A‡(v•›sí°!å¦ù¦«"€ÇúÀ¼Ò+ªÕGÂùŠN Qv2—¡»JBRöQ°Ì#þM¢}* QÐè»g<üÆÁüqyX‡
µZ‡sD: -ÛDJSï®}«êŸJÕœ -cìÖs´°€žèq´êŨV 3Ú¹½…äÐéòQ”ßcˆ‰!åw¡r:1—n™!6¶³¥8À,].Ô(Øfc1[&Ó£ÌqUÔ -xê悲üÉúÚÓq›á‹ÜÚÔãzq|Vt(Z:ùQ6TÈL¦0]`P9¾ºäÓðb -Ä.Àøï
*{ÿ^¬ê½ž²:/ð¾Hšû‚«×ŠÄŠe)W•ºÓnµ-¹W¡%'óc‡É3¶ý -7±v‰lêQìƒyåÅƼ içe°)òÍ,݉ކyžEß´fÝÄÔNÏ eÙ>¯ºJXw¯pÒ ]ÿΆ_0k$æ¬ïœ©¹éµ7}ˆÁ$µŠCR²|hK¨ÆDWWæÇq¿œñ¤´¯òœþ‹ ¸ S¹´ìT…¿0œ[-¢%íŽÜºÈÃÁš§ƒczìØ|ÑÈ,=BÁ‹*ãícîm“8¯ª®Œ¯-.ÒB´bŠ`¢¼µÎÅÓ+T!}êŠ(ä„VËšÇCZ°®ŠHTWY‰…åË´ÒR–³Ô£zq¬XæD®VR”<£ó<•wâ0ÂT3^CÝÏ<þI}S4Ö$+Ö6¶|ýqUúG›ñìÊò[45b«³IÑÔ rôÌ 8™}¶‚•¨Ec_£ad¹x»0½Çˆ}¯It¼åL3]¾å¡t{mít# [ÃVpGò -Òà©Wô#ûÑ¿ûqÜDTÌ2 *NwtªaTíÉ]$Ußÿ0OQ}]åfº×"êŠ {ÿòªý%øƒ•AjÀžë{J…d -íÏ>7–Ôhãí3(øF¶¤?…jèíOþâ“Ÿ×OÿöËß¼ýìŸõê•~ÿéçÿô»/9ò
ŠJ¨ÌkŽÖÿÃcÅàÛ|øËÿüÙÓÿóÙ?-Ññö}çW¿xû÷?ÿÙãx<®ý -øðéºzýéB¨²þùÕ¿^0!¹åàw5wþw”ÓïɶUÐ+Iþ×ÿc
ýëcyüÅãýoáñ7ø¦_>0¸‰Š™Ø)”¿“–¦†!Zw¢wyÏVÏžËàøjíuµÔ -òXWŠï£] _*ìo<“zW–ý”M)¬öv1ñå–;ÈI<úšˆØ£ÈW즰ô£ˆŽLÙRòaìOŒÕ5)üº ŒéˆVqôáb´‘hú«.Š‰}o(;ºfW}¦²1M%E§f)LSm6•G€fž£:ûÂ5N/a"|Tn·÷?Bd=}”Èzú‘õôQ"ëÃ/îÓ£ˆïpWv7‡«¼ÙéÓ×¹8Ö£Q©•@h\3(¼–uɬcŒ×.¶}Ã{Ì)¬ -å¶Æ‘ œç!ªv<À°LýfFÊê ÄhGd@w@r#´ÙúÎ7t>‘!à;mm<llȈ¨’=ó°ìjh‰æ_àø%{cUáÉÌU¡h⤃õˆl¨‘‘[;u‘âÒÁÍäwìÐB×&ö„*ÝÔ®µ² -ݱê™H×ôdr¦”|a9S\G)~ÌÉËJÄäÍMºÐ{{”iZbcÍy§îQÀvF†Òš^ÞŽ¸|oŸßž×â^Ÿàá‚«ý;ëà`:œîûewÛþ<,‡t- )›#*‰JTÃóL+.Cvœ÷\vRv¶¬ÎëØꄾövÑn6&®DÜ+5‹£{ª†pY#¬B¨Ï.Ê%ì!¨ÈD~̌Ȁ„ÕS ¨2"Ò%Sb*/>µ”ÚFGôÛÃ#)ª~…è͆ñrwuŬZ‘`¤d:ŸÆðåëɼXI¨)%½@ß¼¸OaxS)šõºdœ&go>Ï$ª'2»“yLp„‘Á·E ô\¨"9¼ªrÖtÂ\âé:ášÂZ5:ÍR3 a¦]4ÔåNÙGl})3…B1EÈ@`Q+@xvhjºYþ&Á ´„09q~`ËE¤1ÁY °s §%25“.Ò= ¡7œiK1‰å`Qµp<ÁŒþ‹e>0Èך$ºâéÌç×Óyµ–Ù™¢^ˆ¯^ܧÇ@¼ï<÷'x‚mpÏüfbL~q=10îËþ´æˆA]#ÆrÊ&v{Ö@Ñ\3:Ò«¥$· $n›]eˆ*®2h–!ÊÖ²;ÓÍ
’+C$»íIWC0·‚¯ëQ&0¼^*ÛÇú ¹ÑÕ
®‘s½Ã¹Zý+{¹RI±Ž½h9(¬Ñ⻫¥0zˆÓº i±NáØ»¿{çNZêìÈ͉S‚úõT^-¤.¼<_½¸O|$i:çRp°sռ€4£§J’Ï )1#ù”®ËdÕ:HÅç -ôQ -ÒQiõ`ÜDŒñee*¹?·[8@[0!<¨úö£ô™'~;)f M*KÀ…¶4fJÜnT8,óPå>Esó—6pÄY½î¯«Ž›æIýñv&¯–q^z‹_~¯_ܦÇð»¹t·¶ë‘½àîW*’e£{¼ÄoÖ‚˜îE—vJ(@¬cB1PÞ&õò’î#ËˤÊM8Ìb‘×$±€^¨²µÉ¬Zï -Kc„Ì -©¾žçÁ‘Òá4kèA%‡X/îgH¯åGK–0]êÑ %"ð@ɬð_¶ÞÀ‘œ‹ˆ¤ªbw&‘]*31êh°*yí¨>ÌÌÄCnÁ
HÏË÷gë9ëã-g›ÍùZ"^sA€½À²Œ/âfEõŠ‚YgÚ@5ƒôÓ†¦%’ÝF&ÅêKŽ¸ÍwXÊö9j¬ÝRð'»ÝÞMV–ºøå»Q#2G-S¯í–i›‹4¥@a ´œÒ/–-crsVÅ™éKÎB7RI$¦a »`]ÍÔì‚‚[ˆ¸Ô,ßÜ3QZúødăÑ3aÞJpj¨FŒõ½Æ™Q¦\â}8Û\Ë»—ˆ_²é2Ê3)dü¢Ö7ΆD•¨Æª+ZøòÙ
g™"oT¯'ŒÓ$œˆDsÕX䂇”.-¤¾«³:@K ÈlcÛ<¸¼`´k$$øò[WTAgù7ò*ŵ˜2QÀ{;«or`š«y’ÕlªËàWŠ.¨,½Áö‡råº2T~†ÛH|¿1Öúµ² -Í¡¤5FÒ20'ÈŒŒóPä«ÓOPÈç$wTâEø·¸šä»rSG4l,ññ£àŽ[í»Z%(ÔåžßiybalBlšõ*Gõú|ªSÊVHÐüqb´`Šdc«™¶3?6DIÉ\¬4d -ÅÊÁÞ•¼œ~-ë¶dš¥´¨4ÅwÚ&ßk‡7 ¥CÍBÔå¤Äqˆ˜¨8tYyà'4ƒ/· 'E¦Ÿ±GÐŽ†HƒöÇHŒIBy$™*Ü’e*m%´ìÌÈôŸ‹Ñ[+¯sB¸†ŠðRMΓ#³ª‘ùjBlÕ“8.Lobî}zÿVT”ô‰bfªÊÞ ÆÌÊk†S›È@˜OÒ^Ôœ*ºV¬x)0LH‡(µ20$Ÿ3Ñ
‹þrWA*|WJ°]#ŒQsr‡ì:Ô|MƇ1æ©xµŒ{£±&F˜Å#fÐõи=ŸŠ¤YÐ`Fýx»äsæ4™º†3H6É];<éˆ:ƒe8Q¬Åºáe:^pð%¸p*æ·Ô5(eDFT“8™%ʳ¶ÔäU5Vg'ñ‹Ï Ét¶ol‚‹£2p]™¤E{SÙÙ‚]¤ï‡?[Î0`CD™/i"÷›Õ8#ƒ:f -1b‘^¨îyN³ôJ1˜w¨§ø
:
æîÉi,ÎÝõ³9íŒu‚8‡^Wån&õá›ðIbŒ$“ -»ª5ª§æÉÖ¸–õh’vjv;ÐPÍehMÅKÉ3!= %—7 ”¼ªà -šªú¢5DÀ>c”ÐD;¼wÃ6ç˜É1Ö“±t}6IHÜ»d¥•bUXJ³†YŒ]'€Z#ä©$ÌÓ×ô¹¥ðiŒÁ^ -ÆJ»w)V-Äkª‚]…¤ç£j\ÍdN3®-nVåé>n½1ä>¦ µZªQÍY+ÝÕE„²·îŸopm/,©>k>nöŸ`ì&Y<»$qÃHóJN’€fïÌÏk8žÒÈqb³¤b¼x—5/š[pOšîPÈ›x]ÕÈóx3OwqeAváI©%!À/2±H1?‹óÓ£ûL1c¯µþŒÇãý">µPáó1ÄíÞåg¥×¿t÷g V½inÕ#ep_8³6ݳ4<n^å}3ô-0èE5ã…ÕãLó| ÕJTË.ÃHM×EÚ¡õ›ºµêm†àû'ðÁS'§aËì:蚯O(ÎdÍŠ$.™5V•4Àc‹áúEž¾;TsIéš:mi [7Ú4ì’a\¹Íê9V5=dd–‰û3fí„—ÿf„—g¿[ïå¢ñÖܯ՚…_6“ð‘Ì•ð;ÂoiWŒz}‹=bößúÌ¢“$›÷’wAzÏé{ø«2ýItÅ~Ô}‹Ë÷ù¾òeÚyaæ+½Ü„/s]ÝóL™×ø¼Bgÿft~›ýl~{d~{\þö;÷¯ÅŽ¸6(¢“d¤f9¾8AŠa²á -9'Â4–Tùn(f²æ}Z‘VAë¸HÌï.“¹ë4‚¸³}lMeæ©S6nŽP¦ú$V/²‘'ò1‘íþtÕT«mÆ4ÍçÊ€®Ê¦:ædXo–c¤ïOí¾È›g¦×'ÿ†
󃬪ïÑ.XU£È|¶þù嵘úä‡+¦¾þ3ÉhÏl¯Î†ü”¯¯˜²YS -ÜB0¤–†¼~µH6JîÒz±eyÒ(»"®±à'w -/êc\AºQåUû;Ö_ƒ•™"·å…CF -#·*7ûo{^ý+ŠÖoC…õ#D^Dþî¼Ô¯g*Ù×üBLgY^ð6žÀH´ õ -C(pÆ@x#ø@1BàümÙgž†R)íâ²?œžøé#áéãáé[/ÂÓ·^„˸záÛ9ÏZˆÙÆàÔnæhâHg=d[Z²‘jcª
érº82¬(˜©º¦U{©>ì¥È”úŽclr„—_'nâl°9'F˜ô͸¬4¢Ö‹Í’+9Fª#ôã7²eÊ5™˜2•ÙYg9ÆH^E‰¦‹ØzO þ$Õ_ãûÝiñ¯/¤À¿<{ú(yöôqòìé[ȳ§½¨MÆÇR˜íû€B«À&ïÝ
µèF1›´ìIhD¼‡Úô±–‹Ð?á i·¬kRÔ~ØÔ12tEÙ¶PÕw%TVrÏÅá"€YHÜ™äg‘$'˜-1B5‚Ú"_`×AcÑ…:O¤Ø‹:é³. ÖÔň[òcÕ¶h€·#ä÷$÷bÜ9íµ6M.µ’U8/‡sOd0•Ú%›Î‘¡b¼]Y[¦ÇV›–½ÿóî5b„Lͪš(²Ià¢Ü‹V—¬ÑüþÐ5R\’Å-0ÖüíØ1œ¨`3æk˜\BR±ù°÷®^Ô&ãNli§Û"Ãò•¹
.ö_1ÛeºZb'„2„ò™åÌ!„kì: ÌÕÄ’®vB:ý_Q²A
ÔŒdqD”kd¦Äï,¹ZëŒöLnVKBü2)d„ÎŵÀ¿àÚÀH’£îÎüj‚³GCì+†& j9ÁØ2V]&M\¬ùñz&¯Öp\\òëxf.îÊvºi^òȱ:¤F–.R‡¦”Q”€¯1ueØ™ÞDA€‘0÷鳪ÕDb€©£Â\öñM$uï6²d¸žS-í‰c&X+J#^5+r•v$3IDiز+‚dYÃDÏ<#]1g ¶Ç›¹\Š¥L·¹«µÉ¸‹Ùé¶ìÒþ…©Ð@)‹ ~5)ì€3?™F:le0Ô]®}Š¤’@Fa؈ â<|à)A¶ÆL/ï°”tk“$qسc|‚iUg¾)+Lz¤U^ÖØb2 -äq;=©hãæ<ý û2¤w+)8
ªÌ\·NI’úPŠ7óx¹„j™ù°zõ¢6wâ+;ݶe“ÛG -I ®'órÕní -‚eâW½Ëi1eCku›OX yZ“µáÓMf¹M¶:ŒýL²uèªe^ªÓ’Ok˜by`½zQ›Œÿ¿½oۑ亮ü‚ú‡z!ày(úÜ/3OR[d´`Ccò‚@7{8’y1H a0ÿ>±ÖÚûDDVV“,%G"»°vgFFœ³ÎŽ}]û6Œa§dBÖ톥XBŠÕlWóˆU¾ÐÄ`cÚÖM†üùp -‚‹6š"뮫€[®[9QŠ&D4H3N-…hæ¬éd6±ê{ƒQ†™œþJ)âŠ.úgåp«ëd:ñ4z›Í`ôŒV…`º\3"rIÎ^W…ćÊ*SnÝ(#’4e’*¦~U*îrˆÍ:ÎóÇÍ;ýû¾ý¹÷÷æçç´¥¸¥ØÑ´†ui0ç;»-ˆE2ù'YF0¾è[÷æJ²%SfV Ô1Òóö9¬0¡eÓÛ±yÐŒü4ŽªR,1eIcƒ¢¤˜É+„OvâóØA˳ïâ¸Sqÿu5à¬iðᨡÆG±üm1?/Úø@DwK²˜Z˜RJ–Öhªv -_fä¯ú°
UÉ#
í -òXÃU€]ž¥·È~NåL³§ï(Ž5Ê¥!¶µ[Ë<¡Ké¯(ºŒLþ·á;þê%]z-j•9¦ D"€C}WÙcKP[öF3 •jÙÇšbM®Ø3kïæÜà -V¬Ä#‚
Ntg¬M@™³ÅûG[z’1Ë0å2S–Â\¶¦·ÙvõÂa䛦C6J¦ÒeègK6ux©¶Â‚Û3'öí [F'¥nZb¯èÑK¨ª°A¿ÊMªâB‘§j5i4o´¢Ò"N,z¯ÏÛÆJC\¨ÊÛÚ”ðVKÒk²ÃTWè>•êÇIŸÚLÃr8ƒ—[p+Š2X U‡-ŸéáU—ž5bì¾™½lu°œÁ˜ÑßÍYE‘hI–ÅŒ^33mûÊ"Á‰²8 ëmh¥K¶ÌYS¢,y .j2eF^q¦7a"¦Éʵ\ˆ -Ãìöˆß34Gž3k›é>óT»ê®©ÑSõ`O›.#1Œ6¦zðbç•ø>®öî/^;¢+dDÙð¢Ëâ‘Ћ6žkt+ Qo’ç"²›%íà}‘«ðÕ‹¸äg”e½ '¢hJŠ>–èAX¡V)sÔ‡V8Ì •¼€BÎqPc®4^¦WäÛH¢C¤’´a’>Ö÷\cW¥ª»ÍÚ±ŒU¯3uX©^Þ-ƒ`ªƒï•²ÙÕÞ4)šé±yªžÊ
QFRÈÉ=·éFKÐ+ë¼–7bçÁ-·"µ“§¦/rùhö~¶ðqµ i«çè”bE4Èɪk7eGF„ -yQÖ'2ñ~åÙ„ŽÑÌbŠœvbµÛßÆ°]Ŭ’¤ú€Oa<W“œÛ@îšÐتän
¹ Õ‘4ê¤ó -^O¾€aì@P'Nó"ñ~qjæöTŸDw„ðjØŠ3®¼¯Pž›8XÃkº%YñÒ”¬AÃ,ê¢ÓÅzX¶ß3/Ûä2` µkIÇlk§"ÇÝ®h£¸µ¼”¬ÓIJAbSß‹Í—e‹ê6H¸f»Mc@ëߣY\bÇp›8]qÀÞé¤ ÁU?„à¢Quü‰T Ï"ybÚ‹I@jh¯ðV»}Öf:yZ2»±æ•žd¢’l(êlöV?~ìg3Vr_‚i ”Õl²¢Ýã!i×®ž®o9$KwnÁà -òYð"Ã^¸ÏÚ„7òÂkõãµRÀÇO¤Vëol£
e7Ÿ›(™ÿO’©Ý„—~üÞú{ê³þ7ïrÅïÎæwãºö›+osøÞá~ ¤U|ÚMƒ=EZE»³ oU'oÕ ß}ß{ßyßwß’”ª‘Ô׊c“%Ô\FJ*—RAXd&ã{Ãzx‘ -bpª²*#( “‡Þk¨s‰^EYL¯{qMfûsæ¤ZWªòüì,K#+Jê~µDWÕ°’ïR¥^ ÂÀ/r†ÉÚ¬BšÃBjÖ£q‰L…aõÏö¡bÖÊ÷{> -ÐJXW͈dÓÈ»›ÅèhzçnµúC -t“ÙXjJðÒ«µ—jNë?m–ÓAÀœÂQÀVÈWW÷ûc¤ú6ôK¯z÷ÁO~Q÷³Ï?~ýÑŸÞ~ùð ¿úö“ßNÉ]4¥%õ•î±ŸÛâv°T_ÿÛÝßüÿý -öõSï¥_ÿòõ?ÿâïîÿëýú装~·}xû—“Uð“í¿_}â†ú»gSC]˜¿ýÏ6Ñ×÷åþ—÷¿ùm¸ÿ¿ö«»‡í"jj"4Bsð1k€…S¢šëäÞ6HÔHœ%Â$[ƒÂ5úô‚ÏlT~sªô -ÓDÙªøѺ›’)$E´öÏ¥0ÐÀSW£ˆCN¿ªÏåq¸9]͹õõ)†©ë‹²„¡CDJv&—âsÿŠ%ªjY¸q¥ÀÈÞ 6–ÄŸb;%KV>0œ.•‡YìûOºhûfŠˆ¼µÃÇâ2‹í¢ÃoîÂukëbûí?zÌWß°¾lÿrwm#®n×嶾º»¾ý@òL¯î®‚î4Ëã]¸ôÇÇá -–.øª¾{¸ìv/°ûî°ûùiQpåV/€c³?= ÷ô( -šÿyågÞ<Eß<Eß<{Eß<Eßܽ{I®-Ü>\Xe¿3„,”£h³z4@&öP$ÒØNSB†Cx -‡n¢—J:cÄÝ)ùñbvÃèüP:€ÏÊ9=.ÜCÓŒÎqËà³ù?2VƒDZ³€ANâUþâ@‘T`H„Q„'EQÅq‘S±…Í«eðc%Mdi#òjãÃ7„tšIq6Œ¶a‡L-NùtðÈCú´/ååˆþ>Vz®.|ól]øæÙºðͳuá7-‡/Û>7Cy¸TÓa1¥Âv:' -<Tì:AscèÛRÄø)ï"ÊS‰s(êÌ9J¨ý Dã?3qv1ÄÄÿ^ß ˜¢í€È˜^N =Ùa\$'a*„ãñ¼ok\ŸP略»²$Wî´ÀÕF³B(4Tn.ÏM³“MÒJ²ªœ4¸¾JӱȅÃ8åk¨˜§ÍC‘Ǿ>›ò…‹CRæÁ“E‡ôUô´uÚœ˜éJæ…ázŽL féǃ¿§ø¤9ìA3nª‘N»š«jJÅÕÙ3@ÿÜÇ<5µ|ðbº³QTʵ2NNI)É·]“»ÐMØϯ;hç³MrÀrM¼—ªîñrø²™ªû.D±'s2fu{@ا]8å"MEH*fDŒ
/ÊÕ¥4›s 9¼¢mØ—€Gu(Ãú&Gc@°rEr:¨Ýæßž„š-r¥R/¿ú¾ë¸+Kreáö®b[ÊA]Ö¬Ö‡Ùx$n¤¨ÓŽÈôv»Øgx÷…04ºK…
4ñrŽMã½ø¤Y,4¤º'ÃD5ØŠ“3‘¢mM¢–íG9¦”Cé#'Qvi0Làü¿Ìihž£(;¬GÎ3^Á#ˆ9Ö9’Bïñ‰¹<žª*xÑVO,‡/Ûs¹KWB·‚hk äÜ7\^¹vØM,Œ€õ”8äª4ÔŒf¢
àÜUVó§Yv>x`v`Ê,åW»Ì6Ž5€ ø©i†9Öí$
R{ÒH´ARBFÐÈØt~¹šm0î(3º¦¬šAÒ -+Š))¢CQæ®°"ŽåOiY#êD%1ör‚kQl;Øk×ðÙÔÅšÂtäòðL_WÔÑ£p§g;fëðDáláШà’I"bHI”Ç•T<‰woÎÒ -ÓÃu§ -YÝ©OY³ÎÙeN\wºáÓ†Ò3‡öâÖ––ýåAÿ è%váºÍ¢q°"xØ|&rÑ]÷t'pÝæv#À¥H³ÒÙàºDä„ ÔcŒŽu@„ú”¼6üf%Ãó=m¯íµ¦W)Ï$"1`¶vÔ -v¡‡»x -WV~aÏ:¿¹ÇèH/œŠ™4K× ^eiÞòãÕ½Ü]V>¿`ýújø¢Ýˆ8õÛîxÇz¶_—B3Q,ÒJ‚ËnÍOLŽÀi„]ä¨åf
5Û…D¬ÇM¨Šì² 0EtcÐÃrE¾MšP-øK©{_)Nh°"¡Oë\9Í‹ù~Üc©°CjKAÑm¬&VFÍØH¦qËShBô¥3™ñ3†Ø†8Ü»RÇ:ŽpŽºÚÒž·6ˉ|Aú“ËaËv#ÞÕÓ…Â#uÔ†0<ŒªrAݦöjˆ$=ú¸ßÑš‡j3z=!—9 nS¾a}%ÚÝ>…qι.ÝÌÊ^ÂŒ¼¿X/"êlxÞDÁq«§7'ðA¯³›QF7),o}Øx3Õ´&ÜѯàlåƅkÓwõ@ÃÏiv™wÑ(ç9œÙ -Ê÷¢µœ)Þ_YÞËý%'ÖÜŸ\[¶ñ¶žükÆ|îhPsè ÷Þ4:KVôjp6(šmb<1îe; AfY1 -¨ÚeŒµpãªøã5í/všñ¤y`nîµvƒ{×Û*wÏî°Ëœ„m`ÏZµÒÎyM_ÝËíe;ÒÚŸ\[¶[°¾ž®Ê®V‡úd^!z¦Y²ÑMÔ=7õÞ;e·˜
<;õaæ9`Ũ“Þd†öD»Xº½ˆ¬LEvbb.üERjëC|O %¨*<uÏÌ ¬Yϸ¶µÄ2Dö&òÐöïc&{
ž04Pg¼XŸÃ-r{Ó]JÙÐÞUvÊã$ˆ;¡¶Ò•¾Ü^ñ;½ ý©å°eû³9cO®ÁÁZÇXSˆBiæ‡ÚøNÎfÓO§DÎA`âMniû0£c¨à.×hÎAL3cM+Ïj™å2i¾dŠ` C°)ÉV÷–L€|s8Ažñ˜¼‹Š¦U€<%a N“dÒä`HEÍp–¯ª<Äd&³Ÿ½Û)¦)jP¬©‡± ηÃ,dÉu„+”€ÁÖõ¼Ÿh•›/ÊüËÁE»Íìé²Ó:b r°ÎhÏšÅ3b˜mïw¯©à[$«Çp”Gt³ã¶IëcÃy -Àõ*õ>Õït‘ˆ”b™´hÎçÑ|2$Î[±â úÂùÌE8æ¹F‹ –®ÂŒ2²f⟠ÎÑóIW•AtàœHÁ} "Kœsüu¹q¿1Q¾<:÷6ùKàÑâ^îmª¡¾@ýéå°e»
Eíé¥A¢#«£}[Nq´ìpä ¢Vê*V}*x˜_ž‚#¥==Pædº9jÄ:Çj²xì‰ -êRº•±˜ÐQŸ›ŠÐ_JS¹ µ¼ïþ~e¨ÊHW FEétMé‘BµÓ1²ZÆZ–(þ¨Ö lÊ,kP”Ýø˜‰n/ ðÚé~¢1fE1œ„®U.g«Å÷rsÉ›û‚õ'—Öí6ü¶§ëö±×ÊQSóÇš»Ÿ% ž7‘’ª±·¹¹^/³I¹™WŒW pc™…Lm‡›A¶(b p5ån#š‰uáÚ6Äz¥ÝÖÜd£“ó‘ѺŽ -=Ö8ç¤AÓ51Šñœ
‰aˆõV -f\-ÑÚñ"Ôaõæ%b Ø6õîëEX倱ŽÜÜúb¼s9lÙnC{ú)–‰8ÖQ*¥0ZYÕIÈfᯰ>hÙ6׫žÊý›rGUøӋ߃ɡY~…Ñc\æJ -ƒòL`,ßAY!/ƪ´ÌÎT -L“¹ÜQöèã -GXœ]Šq„¥™«À-Õ²j‘Cª‚qÉ¡K1NöM!ĘŠÃ¦y‡ª(‡˜Øh§j€I8ô &úªýžÊèDØ°Ô•¨ý(ÍmÕ^²yšØlTz1NIA Ê*8ì˜ †…§¬tŽ#!xzüÙX±Õ³‚ k'à%N‡ø±A±ÇË—4!sòÝóum¼¡ØÚ4Ø,‚VbÓòáÃúðx`òŠªh_U•ßÑn¤jb3ŒÈÚc¶z¸Ô—M:jcMƃ(€ÞŒ‹àdA?ßÚÝò2£É»ø²d4F@ÙµxC"EÓ±8èÞ•¢q6€|Ž{©Z‘SÁl „Û’Œ`¾²,åYâY€òW& -/ÁtþñgôÂ&b"ìÊ¡€g‹H A#2êîÑÄ”«r$»nO,¢‰s1£®ˆ±¶n/–䉻ƺ³Î40)´¸9Þ™QlÀ¢Ú0,áÿÇöD#‡¤áÈÚ"˜S¥?S.OÇ\¥QÛ{¤™FŸÖãµ³FÂ÷xyoD¾ËŠó!1Ë!IݘçGлR³'ß2?“lˆ‹zxPƒX²Ñ¹òŒqrÉæ ˜ß,NÇJú‚o2BÙ£§q`:ù®`(ÊŒamº]±Xßÿ¦õIžaSá -”°(%»$DãµPÑH–…/BICMïæ4§E>˜f²tþ0Q[^E§Æ -jV¶S@ó1j4ÍìÚ)ððU³ìœŽÇ»²ç¥FÇ -‹Yâ(r·«ukj?íÕHÎEÑPT}@ýl`y±ªq3ÁFtóí\kq®oŒ‡‚Õ1ΙŽ¦?dî²6KñVþœ»¬Ö3¼DQKÇÀ@èŽÇ¬‚±/ÓÝYŸâ2~WŽúgaP4’•ÌDÖa>^“ÛðqSßÁ¹£!†œ÷gwöÞ²‹k-fWdœV•õ„v±ÖŒã|c¼ç¸ÖhZé§Ä -¸àÙØ›éb‚4ÿ]æ黈ôøÊ’0´“-o «Ìzü•i¼Ïû]ðß×m®œžåJÿ¼ÇSüÏL(ãÐü8øŸK Ãý¯.ÙŸrw ÎïÍïÌïËïʯÞÍ
MfèëTØ´+sc›¦ß.Dme›æ^2*¡”lL{Çg¨]dñËÞ?‡GU|EjnΣlËÍ(.„‰;¦E‚ÔňԋSXNÚD«¦1‹õ¹õ~±ÇO -Nm².3Í'agî¤~¦UŽ;9û1RgÂÙ¼Ð苶²Umÿ' Fò?ô6ëIÔö’Ž%„×ÅiÝŠk!r‹Ôu˜§_t‘Å=]ŸÛoþ@qùxþw2ã¢àg+ -…è îÙ²Fk'[4 -ˆ-0ñ¤ÉÃ*yÙ -…Y-2°9–´b -,pL©‰<àð“—·
hÝeeñ$&Ù¯EZò‹ŸLu¼5\,ãýŸòiÒß+‹a¢•4?H2?ô¯2êÁtè"Eƒ¸:9jZØAäwÿêî(,6¤m]+ÅË›—à•™¿¹?ÓmeÖe–äðk.ÛoÊ/´nüâá^½sl™þåîêš_Ù˜tåž®ló0œ!óêî:°®Âïñª_‡ó%æ/1sAîûÝ8Æ^€õ¬§€õó#@¦’!™È¦FfI49åi.š¨aoÕ¾ôiÊU×+im€öôgýt'¸zsF*ç—Ÿ$ˆ8?Á›çnÓ›çnÓ›çoÓ›gnÓÅÚ<^‰ËÕ:¯)3§ª•½eœJÑ´k±ì”¢”V¬}¿^²˜Ã,Á$¹Y™êŒ%ú‡êŠÒkˆàPdûSõ¸ÃrÔHü Ηµþµ)®nÝ7õÅj4AÄH`ñ)QϪ·æ3×ÑhN'0/&Ãå iÇJ>€¾ˆ¢‘ŒÃ‚KH‘ÿêå±øô¬6.ÖÜtËŸž«8ß<Oq¾yžâ|ó,Åùæ+àëô|f¹ýBI_×Cœœ¦åñ©_F—2iÖE7ûwH´H©!,M˜&yœ¾Zf5üv»{Oä1êN@qV;!¹q>
ÛzdÕâ1m¾I$%<ßÊ7BÍpäawŠkHbÕ~”ÞfR*š½-7Øi[É£µ)»¬OEk -‰‡ND©ÖBÊÃÑY£”xuö°Éörà粺zigG¿ZkVzéHÀž9Zˆ$gnq]…´Cc‰ll…λ`;ÆfK¢CaH.tñfŽN¨Ù -•;_^üQ3C•¡H¦çX,¯tfÁ›ÏÒ¥6dt]f×…\–g@<yß±ž` ->…ѹb<†ØØÞöâð„e«31Kr¼3yZqÅK2sª -‚‡5 -RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æ䨢pt/*®INGP”JÒÕ6Ãc}5ç:Í@)f¿–ªc$NÑG‹aÈwÍi„_Ž|·³Ü8k‡"6L!hX5e!ßR„C3K¬—Œ}9LÌkˆ9¤[6¨¦fMmÛeW´Uög§Ñ©ÉšáXÔg¢\LÔ×Q`Ó…¢îÁífo8Ž^ÆWƒ‘"¹ù«§&g?»ÍLθhy×y5¯ÚÃfžd1=p^µ[±EÝÕ#âðÖŸ‚Y»uƵ‚f|¯ÈüÑüF§Ñ1>ÅÐz€øÄðt{aG¯NÅÌè<öH([xùP]”¢ãX²/°Û‹.L«nÙš}3—õ9Mp^Š?ƒOtÛ-nÓèŸ9ê‹…ëªðÈÙ+ÆW€9Zëev+úÞï9ywãi:Â
ö~žûÌb,º¦Bmº‘‘I§xÊÄt#c‘7–fu[´5Í©˜ê`Á}ôÏyýfV3=üªÙDûj³N’fÒ+T¤ßi€úç¬8²d/Ì=,îHÀ¬ãGVc(‹§BJ‘ -Äø… +Ù»þMˆØ»Ï>1ѧjJô¾‚æ^žWÏ«ßÉaòúë-5þø¼¶”&!E7}»>o5Ò:õ5ìëÈ¿Ô—,õ‘¶LLLŒ}BbmÕÛøk(ôS¡/TÍMÛ¶Zx£ôo× +»Ô÷AɼMr_çvòâþ=õòÙ뾑cqµñþõSqþèÿ½lcZ-Úå-'ú`îùDÍ<ígÚ¡oÿ¾½OZ¾Œ}šŸ—Ì;ªÀÙ¥>ç]hC6&UÿÜ……˜sÑ¥ªýuÇK&?Ñú‡J1I—-;þz½aè[ˆ¡Ÿ‡¬»¼†>J^@ß×L>T‰tbé}deIhÑ?O±ïb~?Çþ[üUÜô<Ò¬dQ«‹4Uמ— ‡„{/ï÷¯¥ïÇÐ?Šc2}žªç©Ny’Õ/Eöiÿf½"“ +µ/¿ß×Ò§Àäú<dùýàe…xQª}ß ašd«ðúKý?Šì Ðû•ú¬ôôõ³ïôÚ7ÈY¡_Æ°Õ{Û©HÛÔÙ‹üX’µ)¤’ôPTc4?çôÕ¨#hÔŒ^åý>™I~©¯¯Í–[ /Á”„Õôãäs÷_¡êYï[R7F™¼Î [èÃ4a•¹3"ú¾B‘GÕ÷p›˜'b¿xöûÎê?ûšþq'¥÷/tºˆÅMÉÒýH÷ì>U—‰Ý÷ÅêÇçä_ô·¤ó2MA"1ç7ú ÏËy M ›¤ŒUëçÒŪ‡¤óü¬<"Zaî¢v6SäÛõsTo©Ú:oKʦ0U='à}f§ÒEì—¹ï¤V*wQú%1q´}p*ºzZÒó“ûò¢‹Ü7«Üº7ñI®Ÿ>»R‚œ lfú1HÑ5ë¢óÉåAÿÂY>k?9{ùT5¶¨›9§ ó¥ŒèËÑrÉŨ'¶ó„~ó6Ž¤¦N²b“·ÐÙ +̈eçšt»»É79D̆弴–ô`”>Bë"÷Iþ†Óå¯M¿r*Îa¥kÄ©ÚÇèCoÅGy@GÏG®Ìa¹_ï•™¤<ÙAJÓl%C±u@ë¾ë›°bÁzÇõ~‹×}RKµµHõ¹Ë
<I~î[-7e´ñFa©]–¨³½ý¢wñUÿçïýŸéäW¿>ùÇÿ 1êû¹,µ…tßáÙûèì}pö>6{š}Ì^fïã²÷aÙû¨ì}Pö>&2u‚U‰-ï½h“U@Ô³ÑÅœ>r¥Ò½ûRÉ9åAcäÕ>H"ÔƒçäJÌ"“¿9F•+»¸¬—89í¥ŸN£úìôž|Ö«¶æI;ˆAÞú½°Q¤~ÀTŠìÂFáåP•TMA;qAöné{¶Lºò.{„©m“Qôªˆ‚ôcÑc)H”»w:´¾)ŠJhýTuI†ÖÉ] +JöXæõÖºÎ] ñ¾é.ä&o@2–.¿’ÌþÒ´VŠ:¹Ÿé]#ݳUA«‰¡z!F:€/T ÅW!³4Íý’ޖݤ;\^×úZb’˜l€^Qä‹ÜYwÚ‰%:]£»jðRÉ}4^ÛÖX´ƒÉ5ý ʸ;×s¥éÖŒ¹ÿõBå·~ÚZSazÔ§jP½Ë†
Ï"<^/1¨Ò<y¿Òô´O×U<Õ”û'ÀÎix¿s…\ðå£èu˜BÀ–VE™ZvÞ¯D—£j[N´f&çxCvŵ¨[7¸âU(MU{e¡ÒɪA;è=Úö^uëöëm‚T['í o}]Á\{[ÑÍâóI8<)<Þ©¾ú¿õ˜4%nŠE—€N~¬~Y4¹c:±ËÄGôýTµa%-ï_u)ã:,‹•õÞêD‚ö§ «Lú>«Y/U-¿¼ô›Ùž ÄÎu0ÙœjBe2=8êÞ;°¦]õ…¶=^ ´è±¬¯vÑŸòN.¿¾ÖY.¿¾ÖX«~cT¶³2©.,|ÐgÑ«Ÿ¾kÅÎr©â»Æ~ÔµSº%±1œ w@;^Š>¶2©^MwKHtas—BÖ…ímïsbé +ÉüQ*#HtëƒáO^tÙä¡4ÑE(Èj +b°yñ>~(d¶09çõNå:bN)XmDª"YÍÎ\$ÁMV±‹
“KÆ7«>ú‘P1Ø·it$² +P¾TSWF¥Û.Wta*ŠÑ¢*Ã}°7[µBQi%zˆ0‘äBé ˆÅƒÉʼní‚D#µ‘QnJJœ¦¢æ¤0e]pÒloÙ>îœô§ú¦*~i}vÁLŵPc²×¯*ïò‰¼Ö…Á(B†‹^MS‹ï[Ê9±01&Š¨zw'B‚ +®_Qòbµ™1’ŠtÅ¿T²«A‡`Ô.qö¯¨ö3çD +ëMû¶Ó)ô“@,^>?Ùt]ß=³°k®ØuACÌ‚B,Aºð¦6tá
ãêr0®¢¶¬¶:lðNìŸB‰mRA4Ø2ö–
œ#°]OÅk–@dÉ»°ÈG¬o3ÚòÁú)T:m¸X¼š”œhdbý4ô“ÓÀRŠìÏ)•(!5«’†˜Kµ'éÌÈ„™!øÞU”³OvÕ4©«69x]T`NÈÚHȺ¿‰šrjìb´Š +D®pÐ^*Ù{Q +«Yç +)Ó"±Tž–¦ÊÞêïñ…ªà.ye©}õ¡ dú^v"kBì"‹vá¢N¢³¤¡Ua#«ÞÇÅPˆU5•E)Ú6ãbèk•Ø5h +;¤†úfnmþ¾ìCR#…Çõßj•Ío¤øb˜‚Ú$]Êa*ØIÈ]Qu©O¬a’«‰ïf"ÒOÀ‰c±k“ûŽÐnIG‚È€[¡/b›‚U¡/“¼ÒØ:/ãÄúåIqs¸îœÈž¾ Ÿ—á'‘úæ¯Pc‰œ˜svr¿Ë<¶§ˆ<t5GlÙ\Øz×i¬uà̸‰ª¾È†”ãˆá;3Udzbá4x_dU¶¨Ã¤Ö—³ðNôapï® øI‰Õ‰rWh÷zíw\îÌ¢“HðDœxw±ÿ:ŽÊ-mf*0î°NÌrš=Ë«P°Ðúñk5Úû]€Wïçd +ú}4/Ê1Ó‚7=:O,Ýt2³!v}K‰]Gí¼‘ nÖæ wn6ñ@drò¿T²â½ã•‘ÅÕIdµ±4%†(¡£‡©%myH“jæðjY8eµ·Éî&1UŸ²ÚÛ÷¯Ê¨¤‰”Ë–µÙ— û€•á¬äiªÞÈ]óÐ_#˹PÉÂÎ
n,wEלÕÐÑÇ[Š:è›9ûfàSìHßÂÚöº¾ÄÐ[V"é—è ‹E*ÁG5½w%»xq˜““AÄ“NŒŽÛØ¥ƒ&jŠ’E('-½É§ìû¾x¨î½%¶-E˜@Kg[$ðªm»€%“'†%²ëMõRÜåý¾¯sÚÎQºT#ÚJßö“žllªeé3„ÙFä(–{²qFÝ_ì±.0C·œ¡×¢×8®6§UØLÄ#¶ëp[€!ôŸèÌKUA7U¨Î¬ÊeÓ—A; ·JÀELžÑ‡û2Ê$Â+é“WÇZÈJtª’3·trß·EÈ•Ô—J®©öÜ{€¿æ)‚hŽÿ +ôÿÆÈfA§^<^ªµƒ
™Tm›y3‘ç +ýf±4± „Åc¨¹ld2mñ—JÕ‹Œ.m‚wV˜,Î3!vÑ
A}‡fŠj…ÉY5í"û]ÛªNÞ[J¨¡½÷»ÜÉ*ö Âé5AÌ‹ªyèKbhèL`‚ìÇKÀwÃK%×uqÙX Û™õp195óï9Q
Hv²š¬V®¦™HõRÉ1W„†`3‰@ã=Xz©gªsA•Ÿ\kˆìrÍk‡˜Þç²P—Ⱥ!þ
Ȇ˜œŠ¹Øt)dU>’éáD„}ýÿkÆ•°²8ó€-…—÷·&ÌߟÁMýÓýê‹W7ß\œ|q{÷çë¿œÝ}wòåí»·ßüíææê×ìÏîðyö™K.ºà|gÝ®¹ø{·ú^žt¾Þ9Mù]gSy\ømp9=û¬t1¾üιgŸ}ý›þS+Ñ´Ÿ}=#y0_ó.^}Mã¡ÐÈϾþ¼ÿ3<ûØ_=+æˆß-lQ/ðØÔBBÅ¥ªµ³ßÌ2ù‰YrÑŒ\lGæ÷ nãCW;|»ÄdM¤—p4£Ÿ²ÉѬ2cs"ožë‰ì—%ßÝ}û:ôðuy0+QíšÑÂÔ:‘],fdA™É¾‰Ö@çQäó>€LbçîÄ,6ItÀÁQLžÝZ±°Ú⊹֣…ä91„ËûæwÅ" +¸µ+F@§®ñåDDºµáÅîŒÛVñ*h[‰-èÄ)Y@eI²,$ŒÅ1 +i€ÖØ6‹*G¦ÒwÐ@öé½öú4áãÍ+ˆ‰G
Í<ù: +¬8™ÕlìþÆç +#GŒøv;±†¤L]6Ò‡tF÷#…4¼Tr‹p'Á©Ö‰SˆèW>Z˜9žÌ.NTµ PSØûYCàžHÏ×ÌLHšDÓù±cê +ÄÄOZÒt +æ'Æ’*‚ä¦ Ü¬¶J6‚Š SÕŒoÃû¤hÅRy:úk¸oÈÃ#<¢Á:U)€Ãi¯ÃŠÄä™^ª¸È¶Eé5ƒ%:oê<(iJ7,+§qY8—Õ?ìʼÛÑZý’ìá(
]¨3¦sÔi±ù^‡)¥¸ºˆïëTyr›û]hWf¬8e'–¢6†®£T-¹XƒÈXƒšðÃ6.%6óy„¦Ùb"ùU¢KXm$+aÏ:Ô<€Çʲs+ÛTìóÍaFŽû}ŒX›¦^MÖ”˜àô9ï‹ïgd]Ü + + ´nÛÑí4³DX:`+æ¯ó*iÐo™ÿÀ›†¾ï-ñ°¯®õSf§“¬§Øçmli
·7;FklÛfJøð ÂjÄä†Á°ŸuýµE“#]?Øj‚ò"v(×xñ¾¯d‰K¢½¤©¦t,v>ç(±‚1pK³x§mÉÄ<ÔzlQJ|‡^ì·¤\;qª‹%w‘99—Dþ
}»2œ v*"'1ÿ›í<%Df’lè'ð‹ÉÄÀ.¹ ‹jýöû„Ñmlø:¼2è¥4W©›Ç¾-j]i£ŽÖ‘|È +ûZž…i£†ÏÌÆî}±!@>eS§^<ƒ’p±wä¤1'Yª`±_«ª=[ÌM{ +cVS€šL^i³®'›óƒœMúñˆÅŸ™Ò“«µ’5eÈl˜…ºÔ²¡šŒÏ1á°zm; +^0 +33#›ˆÛ<½Ÿh”#)Âa)Ð
ÙÜŸëÒ*JŸø4dQ®°£3¢Q4d›‰ÉBTTàãmnÛÆÊ1i2aãäNÔ¹ifC¦ðe¬LM¶ùgd?óp•m&:ijMÂOR>§€î¾rØýÌÞW23k’;K¨V*Fƒ£‰/j`SšÕv ŠÕ¸i\Õ£MÂíK1œQgªéK¥@ÉO%/¦É³þPÆxsÁ +2íL3Ñ9VÈþ)ÑÆfÚƒ#TsNX©°^cȦØTŒ‘UIjë×cCs´€³ÍvnÁ½ãJ +L—hêl½LVHèwÅH5tçMœã²<º,¢ž·…™ŠÅkÝ’i&݈ۘs?l>†ä·bWñÓëÓ#{#·Ÿ°U™_![,!]ŽæWX•_Þßú—çØÇÒM‡7ûOVÞ(9£¶Æ‰ü73à&ay ü‹›E±A5©Ä¦1Ñ.„"9÷Bl-*žÎµ–ªš„R*Ç¡ª{ú:EÇüøLˆ|7 +rÈÓ?ï»çc¸Xº|Þw%¼,÷¬2|pQøv•F›¬µ´ÝtµçÝ×û³¯ß~DïÑq?/×÷ú#øÃHþAuŽ©Áªjáw&[•úÃÈ’ål®w†Ÿf¡µlÚ°ÞU]¥Ð7KÜXýÑšÙJ%|%ªZˆµ¿þk/Æ0Ô°S¥¤
£Yàå˯·Æl¨DÊ%t2êÆT–J^Þ×tô#ÂnržF1¢Äx6uÈ6†¨±(3ÓŠ†41!0*[B[¥zª’Ñí,Â9ØDÕh˜eãdäfUÓ^Œx„»ÂäJÊÂe¹]Å…1dÊvÄ.c PfâEd‹â’ÆFÖKÕ,ÇDÔ˜Îj%*øS#`05³ì'E‡ÕúUÛM•øt#[Þ•m«¥V6F’ mgCÍöËl±V,d‹0Z%—4kíh¦áH¶i¬h(`|5XùÕ6«]ƒŒ¬*˜Jôˆ«N8j%ûöâþm¯ÛТÛ4Äȧ+†Ù¦8Oqš0ŽAìHˆ}[¡°‘Ùâ‚• +V®¡ÓÁ|qF¼Ž|FõkÁÊf%Œ¢†@TQÙñzØqD”Ш°"ÍÉÂÍ«Uã^‰šSD¶2!T•—`2>زõ:Ív vZàhýÖ8.ÙÉú]W+äá «=¹ÿ°ç€ž‘š’‹ú_¨%Ž>³*ûdήõù5xÆ:«öÌ£ +£Ì(Ôë=AÑÅΘ ÒÁ>¨ ÒÃ^¸ Ø*{ ƒJ{aƒÊ±Ùô'8è龡0(a„‚ÏîŽ*‚Í^8¡ÒÅ^H¡ÐvÆ +E»£…J{á…Âf²†ŠKÌP¦ï‡Š®×pC!7ïŽ*=ì…ŠEÝ=_v
?Tì… +‘|wQ#k(¢`({àˆÂ’¸’(.°]±Dåý½ÐDQ\h<Qéb/DQ™È=˜¢x°ª(Ìk¸¢°gïŽ,*=܃-Š{ ‹Ž.vÆE{ ŒB'ÛcìŒ2:ÔÈqFÑÅÒ(·Ö¨éÌ»£¢‹5¼Q|¿=GÑÅsÔ軣Žâ\íŒ;*ì…< +¸;ö(˜×ú¨<ØÞªÝHad܃N·=PH¥‹}pHG;#‘Âd»†EŠ îŽF*=ìƒGŠï´")öÛ8O{ ’‚S®á’âÁȤvöÀ&…º¾;:)zØŸZý¥Ðë×0Jñ`
¥ÔìŽS +iuw¤R™ïÁ*Êù–x¥Bß±Zû˜¥èbÔRéb/ÜRØvG.•öÁ.…‘a
½n•=ðKMÅÜÁt¸˜¦¢Ÿï…bŠáá˜âÁH¦ÒÅ=X¦°Èìf +µ{‰g +úˆ¦f/ÚÓšÿ¨¦¶#—¸¦x°²©œ—{°Mñ`‰n +ú¾)Nާ濹åÔ,qNíÁîH§ÃUvÚéÐHx§ïy~¨Õ €ÍÿkÓÔ¯÷Jýúã„¥.'¢á¤Ÿ}=JO¡ÇÐ…_bè‚ïgçúæú¤k'´_,õ:D0軃Ã.¼;L0.¹=€‚í"Ú*]ì,=ìŒÝ·`0±d0äè=@ƒïßn¸ÛtðG¾ûXC|oHÓná>pá{¤5rÀð{ºš…ÔÜ3l–@ÃÖÝjx<ØlxeDKÀa{°3ä0zØtxŒpxØèKèáû_x¹ÒÙ +µõ¼;"µu±3&µ &»£RÙfg\êaiÞ™ÚF±Ä¦¶Ktê!¬íŒO=6ÇÎÕ¶9–Õc×ìŒRmçe‰SmvGªÆq^ê¶aW´jã»ãU[ÄjÐ÷À¬F{ VÛ(–¸Õx°†\=ìŒ]mf¤ÝÑ«ÑÅ~µ=ØÁz˜Ëv°6Ác‰bmòÄÎ8Öèa$k3°.±¬ñ`
ÍÚ,ñ¬íÁîˆÖHÖ0íÁΨÖfb^âZÛó@¶6ÚÛvF·6#ÐßÚèK„k{°Ä¸† +>zZà•7vFGkØàødkèàö`‰nvG·}²Ä·¾—(áö`‰>¬"…}‰n–háÆ—xá÷<(iåÝ1Ã×íŽþÞƒ¢v‰n–ØávHvFŸß?],ľ;†8ºXC·»ãˆcíÖÄǃ–8ìŽ&>XÒ®xâ¶ûvG‡cWLqÈÝQÅÑÃθâ&P-‘ÅÇØvÄ¢Ú]ÜzÞ_Üú^"ŒÛƒ%Ƹ=X¢ŒÛhvÇ·.–Hãö`‰5>F³Š6>¾Æo|Lx8n`‰Üi–¨ãö`WÜqë`‰<n2ø®Øãc7¯¢¹ìŒ?>ôƒ¹=ÀÁš¦ù%º +ù˜ÍÎ8ä6¸%ùì¬b‘ÛƒÝÑÈm¯-ñÈǃ"¹íóÝ1É‹ÝQÉM¼Yâ’»"“›¹;6ùCèä&â.ñÉǃBùLr²¼íiåÁ¥ÜìŽSn²Ö©Ü,±ÊÇ´r»½wÇ+"ı܄Žfù /PË!á–Ú~F°v¹u±D/7Io‰_nvG07IoanôQ̇p¹À1·K$s›ÎîXæèb
ÍÜìŽgn²üÑÜìŽinß~‰j¾Ü‡môdsÛÒ;b›3´@7ǃ%¾¹Ñ—çö`‰q>,PÎßcÇX5r¬a´óŸ°cÎæù‡e§%îùÑ1²î9c?dŒŸúÓ˹-ytÜkþÞbnÿÙÿéÝ׿»~õÕo¾¹¹ÒÿþòâÛËk¥üêË«w'¿¿ºùáâö×ÏÈ\ÏÆúwýdJ¦ü9O±%d4n +IPŠíMU%Ù‘ƒ }ÿãìy]¶~~væ€[€Ó÷V\ì8¨DF-¢|R6´¼!rljSã@/n¨Ò&alé[ýVøïÔ6kê€þ€Î±è÷>ûæþ•þÕ)á?Lý\þz²/¿üâüüÝ›¿ÞÜQÛÙ û»}•¾´<¤fùR(‚…R¾#¥!Ó2Eï++ä+Äêþä‡>t7E„jU*(Òì]kšÖ:?,Œ›(¬‡v{ôšÐ{JùöZß¹kHlÈ}A+BU%F»ë÷Y@DňXÕîDÏ©ÒM'æ¾âA&m%25zÍ%bA¯TV¢0}…‘i¤3œÓë~Ràr¢:•O ÉÉ“Ñ3úü<ZµS±ŽÐÏsYçS©tJaü6€2cÐÚÍ‘D^„—¼²–4{†>MZ‚2Rò,HÙINjï5Y5¡4I„bÿý&@šè@êsF7À}Ò¤>*!¤¦)äÑùçbpÊQñ©¼E„à¨G¯ET‰ÿ8Š–¢P\$€"lV0p•F¤ú%ý +n"PLX™äð w¨OB¼Qê‡ÝÃI^<{}?¿s'¿ùÏë»~õ;ääüæÍ÷7ï®_¼ýîìû‹“77¯.f¼îݳ_ýåæêŸg'¿½¹;é’ÆÝÅmg…Äܽ±yúßÿò &1“®Éþ÷É÷Ïô>žØa@à`Œ0¬"fd*gŽ‹A%ÛšOÄ?å”’i…µæ)Ì>}±OYêóHò*’5‚E…R +
ý$¼HÎW:ÕYdQ'u·èì69e”s ‚52.VÃgƒýî¬PFF;I#R|_Ü0Úz«¤§MUâØyS92+°yzªƒa5ãbMwE©Ra®©¯ùü£ÍŽ¸ã• +Zh®Ã<<†d;{©¶_È\ À<¡ó)㪰<Èm‹Ö}$€4e#•˜£ˆÅ4(RäªwP][Ðl R¤ØŒÇÐä²rÐlY.ä”
]MáMZ"Nnz«€·¾ÏŸ½ýHÛ;&HGt5$µX¡ÙeÔAIi\à€Ì +UɃ‚mi]`‚!8
®DLdÙ[®¨ Ð7>Éý"U©•É|˜·üþ,wó'æÏb_ë†;?)[ŽÁ46eÉ +a« +c&Éáâf»J™„ÇåhÆš:ä𨜓¾èòå(1lD`6ÍlqªÞý²Â8¬‘;šyU¢$NžØ—í«$¯½Á½¢zNⱄIU9AÍâ¢ä0Ì.Ð&„É$®ø*ajÓ(*š¥:Ùá)|Ö‹$Rº2u†Ft£âqß +Á²=È/Re–Jn5ÔªòÕDÓ'ȧ$Ú{ö@ðÅQe+h¾a«ªY!g+笾J6£BF'8ÑWtBß¡iùQê!XÁç°‘+ø`µ¤+‚Ÿ–^‰yi1BZe»aHZ7öHU’³[ŽHL ++Ž˜6‚“Ò麙 âš!=Z™soÐìue“¬†JtR‚îäAW‘¯t°‰¬])Ú<ú~èn´\EœÄŽ$þ•ÑÄߌȬ˜€û@C¡'û(£n‰ÏfÍ$ó¨Aû‘ú¹x +÷š¤˜¿$É™°®”ÉQ€ ˆ¨&¿+Â{):-x”2q¤8é©‘ÍáIcRÃ}¾„ÉqÀÙ˜G7±½õGcÒànÃ98U4Mb%6ìõ#ÐþclÂÕnE +4ó~ÚP‘éògÎIßÈOÇ]S†J‚©ª|Nu:üújÖçÒšÿ$(/ÂpMœÙS'>‹ÄØ7!ò¾¢žÑñ AŽý48÷N +®èE⬬¢!²§UŒRÒrR»ª‚Yw–/n/ÒÚ¸>;˜¤ÞÎYÝÔPç’4võw~©¨õÞ‰Næ>¹Ó‹‚Ú +!W5»‰¥¦ãWkþ8åhQŒM*7I…2OXE¯ªÆv¢ç6½ê„Í÷]SùºÀò¯÷9<¶ÉÕ@G +›àØø-¶ñþg?èbµ«žãŒ)=·&®ïçY„)Ò¬Dçôõ%åfBÉ hVؤ‰Ê|b“WêNÆÞÇ5Ð6‘ˆ4¯qãœøl‰±^¨ƒ€‡æúrAq†»L#àÒH¤pÊï-Dƒ6ª„e’'X9ÍÎgE«wpZÓ*Å"ýdê`œ,(0\±2x7“bÄJXˆšE¢Ú¸_ KD‚O‡¾Ê6ØùƒzBw´ÆZj[™©‰êª KÉ¡Þλ=ªð ¨vd‘ÔVKW¿È.£›AÇq~~˜´¼À_'&máL¨ÂéMm‰fo$ l1¿¬– +ñù,—ÜC“Dx{-R)g[£ªIÚQÑ´TËöñˆ„x‹>u†k“Df¢`d]ÂK´ªª€-Ó³”ØäZDôH¼¯ —±V/‹¶™úoMrüd0®‰ªR(eAy6•wÅêÔ'Ô†O=i–Æ!¿¯*CTú…:Ä\Y$劕!ÍõÜ5¤pøó¼ +̲?úXaàJ”¡#BIxÞ´|"d@eqMé ACAYéU]⾘’˜l×v"‡Ÿ~Dæ18¯PÂoà”$2Mûb´n‰Xu&ÅkI‡:6¸~²ÚRæE{hQ"‚d¡ÐR«t7¡J˜ŠìÉz9Ò +I‚$J:ÈÀ.&펾RÁ”`ìL^B)‰H‘},5Ä(¦žÂDþV1óe‰Þ—5P§~}Àú1—,Ù&PŠ”1>ˆèážgkþ} +ב¢B1#£‹Y*7±qÇ1|ÿ©Š¼¸¢½ò èðŸ°Óí² +"BH^,.4 +±S¶
7QnļÉ1ëR€†ä½”ßobmå³ÈWÔ©úw%ûËÁ[¾ +·'ûé’ìkŽîm£F,ÒvÇ +YrÌr^¤´&Ç3³r}Êá«ü¥ØŸU)"ÏÕÄ žÿÒ@” ë婵Ì'Y"”²IXˆV¤•˜d1 ý¨°á›Ì-ìÖ”¨%_ŽHê;]¼,«Ã® +-çY‚Zä&")‚5°BÜIlÁÄ0[ÑÃ`-réu½¼J¯Ñ.S +㺋œÔäÇ(¥„E"·.",Gè°5)c +l¯ž²˜és¯ÙŽ8!•?‰ÖÕŠÆ“ñöêÈŽÜÅŸNþ—¼{ý¬ùœräÇ‹E‰n0Qz&ŸN4^‡=+]žQ<N +éÒŒj=UÄžD¿ˆI8Å~æ$v†®¶éÓçå˜k‘xÉ5[›(S¤ZŸˆ&"Ù<\Tìv¤‰ÆO%·„O*³OIëÃpÔi^Õƒ$R‘›D.9\oSÚ(Ecí]Èê&@©$9<©Y—¯ ùy¤f4áux]¥$E=ÆK™b²`8QyE=²ÙÈŠÎJ¸3SÕù;ɶgW - w'†¦Z]b7!?;¡ºzS +u"aµ°S…|¥¦s5ó¨Ó!ÃQŽ—X€Ë$肪 +:D?Y¬éBˆâsÏE¹¡ä +¯Ñ×:Ä„|ʦq}¢.P%/‰¬ðÅ’ÚSžÚN"î_—¨’(â´È¨¥ +‹fY1"0„’DÌ •©„I#åÙ™%#ÐLl¾|%ŠË÷µJÅl7uœÄ\5*ŸaËe +Ê
Qõ§œ/¼¶í¶É´´?EõjXI›¤¶ˆ¨;î%ŠìlÒ:RéKb¨Ó$4ÎC… +c)ñÉkh¥ + +d^RC6WsŸªj@êÇb±W/R¢4•Ž·Ô'³oFh(óLMóÓµ2Ô~ +
PS<íbÕ¶"}äZ»—ò1¬ÖÞ…„ô}‘Y¥˜NHhTv 4.¥©©ì”C³Dà +-Z…ö›®@VØTf$šNGª‹àtÓ†QO°»X®g±ÿTrbª$Åç“j;MºD!ë¶HºÚ&©®Dmm¥!à–þT_*'rêÏSÙIl0ŸSOšX‹øO¥acïdÕð:y½ÀTOê8„ò€{ˆâ.TW%&!ʵÌEEÕ© Ð!ƒ%©¨_®DAyµÕ€šøi˜FÆÙÈRT¢T¤R>oÖBò³0gÒ€²†¼Q"EÙ™p‘[GðÄ"©Vu ”¬ +ÀHEc«®ÀIÑÞaŠÊEŒúh/Êg!µB=±d?Õ·+œj”‰¦ŸŠ³Ly«’yY.'š’R3±ˆùH6@µ +4
xº¬€Å¬ÎN«âXT3"”½ +ÈÔ¬HñÄŽD8`‘+Ä1}A…cÀ6º˜G8UKúFκ+ÄHÌÐâŒxÛrµ+ˆ§&˜²ÛŠè
õ)vN> ú,Æ‹²S5ì„…g|ªFÐQ¡^ØqÄh$|>‹4…dz®#tÊs”œ^’þµW®À5’$VÁ˜&QvGkÜ +©p|?ót5H‡¤e®HÙÎ%ÚRäº}äßd»SŽêjIÔ¢*·Ô)‡Çé4¬É5Ä8¼õdTw9•Ìú*n©j(G¶Ÿ¬¿ßdÕÖ(÷Û· Ëé*lºPmX9´ªQ¾kšEæÑåBÖ#ÎÁt¢’Ë)ôªÔm¼Wõ Ø£uVýáöìíÛEeŒwûÕÇØÔuElXlá4ç«ðQ#EÑ‹+‹ˆ-iñ’bOnµû&&9¹Õ[ÃA-B¶¦Ë×5;8Š€«nR$^C”<GWLÌÐ(PnŠbþ$6Æœ/9¹Dz)Hg¿o&ÊìOlU…}4b(Õle*8‘¹L
…u$1ù‚ÓÁÍlÝ÷œ-ñSŠDyßÑr`Û>è’àáÉaìGäZÒG4h©i‡¦VDžÆ&†Î› +G:pšnËe4º‡%,Âë(R
—bu+Ñ)‚xæ¯ÏZ˜—$±vgR“XÔcùN̤0CV|ñˆ;)ÏÁRãT-ÄRƒ?¼V<åðFW¦Â ãˆXåžÕhMiä°`ñ(ä$à'xñ¸‡^ `‡¼.M#}½hôò~“bÚy’ã$. ?ÉFnˆ®÷!Sbš‰šê#%¨ùÍ‘KT#]¼ýïbËŠXÍ‘EDò©DÁÖ8…”*¸ÉfO^W„Ü» -ÖCµ!÷‹HudáüT7éUÌG'ɺ8rðŠg‚q2Š4Ð!Â…K—p‘& ºw²”bæMîÍFJ°©Ž“Æ•£–.'[”v¡_¦Œâà4¬ÇxßÚ>‹Ù‚ë°Yu/¨ø”Êv|ZÛ*€EŽ#Y´÷® ò¡O’<ˆiؼ4/TÙ +KD-Žé2Âá„‹KW|PåÄ1‹Ì”¯/æB‡B›<…I,Aʤ~òªÙ(<—IäÉF>rýg´Ú8my½É;é. °T-Ùr‹~ùìõzöö¼øÏ*8Åöᢟ}MGÒ›‚“ãÅfKÎ(*,E¹H†‚g
'@ÑúÞ>‰¨(µ¯h²OX#îå¬ ÌVn˜Qb,Êÿ?{oº$Çqf‰Þà;¤Ùµ#mº@÷ðX¦M?HPìÑ4(âÒ´4mc²B¡HV«XUZžþÆY>Ȫ T¢Rœ…ôÊôôððå[Îwθ¥GfÂ^Žbm5Õ—©Þd–§OÚL.|¦§¡Qt"€T_@µ²…´’4ŽT¢0*о"»è[Ñ?“wºH2fCˆ¦Yu1~2Î0‡Ÿ8Ó‰fó“²61bxâ××^š‰1!r&åêÎ $c„]*7æ*b`¦êCt^ù$QJ7÷$áÅøC«S¤ÕÖ2ÑL“†äqêö_èr–™ˆ²+AµAÌt¡¶üÙ&/#`Ó{%î8îù©®5 +Š3ʬÌ÷‘PX¢ ì]"T†ø‹Ç®Ùƨ
„>GA³h΢oƒG®7–˜Ð•ªà¬q3µ×Ì£A¦3PóÝZ=Gñ…ÉàM—×AtS4ªÆŒé½Œª¨®Ÿ£¶bÖZ3ê +ø®®"4kÅG1éJg!:öŽ|Ë^ó4®¹ÒþO¢®ªhè÷‘P$[“âdeˆx*9¬¡3Áê§ãž‚0b×)ï§ihÌ!%Ô߀Ië2 +mvq™£„bY|E7³#1"[báIÜDLipÜzî€0£n6ŽîÁxh¨ñ'&£ôËõ`Bð¨Aäå=tY«d"ØÍUÉûD@W5àæûÄú}Î0€.Ü,“›¼?CŠ[ý‘ɦÐØ‹xZü6"×ÄŽbCĶe…âAFߪÝúÙXÀΰ
5.wC\ +hTy +yì´ÝP³}‰Ønøl +35ÂÔØϱ[™Œ:ÝzØñ£ÇjšiÖ¹êD)dýP[0•ŸCuTŠÂUÂuLÛ«òJø7‚
ô„Ën’²&›
‰D£e3Qï¡ 3
æ8óÔ QaÚÒ¯’µ×ƒGWdÍ0Õì¸TbO=9&aì“ôMaiù0îAÕ3i@ÚÈǶ!#Ó<GP²AÑH2Ù…¦KflS9VÃä{ŠVääOÓNf"¤Ô£(š—#8š'J¹Ye’hË|<#ãH2§Npz` 4ºI‹\6«¹O‡,³MÙP?qs×ËÊ–†¬ÛÄ…Â_áјU[z»ªwu¢¨Šã\³=3ï$²'69ç)®˜î,±Y)oNd¯ѵyd‡åï"SõŽÇâ÷`cîÜè¨ßC'sÏê1ayYhçÌKÐÉ¡QÊÍØç$ôls0nž¥mœ7Z妣q²ÍÂÓcì|&”Ñbš4d
—€ésó+É$ ïÇa¾Ç΃Ͼs +à”[EIi.0~vdœkž
ÁžDa@ê–•ã±›gÙ¨…8ÿ¬N]¿‡OJ×–ÀÛý!‰9îÁ°©t FWŽãì#JƒžbÛ¡e–À’6n\9Uæ Ý’7=~A*g³¦´Ã/Wï¥N‚ž<æ$~ æ¹5š¬Y0¬`³ü¾Õ]cbÆX²f&a£q=´$Ì +äú.Z:·ÄÁ‡F0$ó±·,£Ù'AÀÕX}¢'Uð¡r¶‰Ì +ûòX¶\M’ñçº;Ñ<Mu½c{v‹æöký¦ä«—LÊ2@Æ‘)ÈTÝ0søÛd-”]jjßØ©zT”&IrÑ8ŽEj™÷0¬–ÛºF$‡°¼cßYÉ‚:oÐë;°Mf‹ïF yøæ$í5Ön²NÁèÕ6½¦ø¬.s4º¢Ÿ\6dôÚ®PV˜$1·mD_¯Ò©†qIÛU›oŒï7ÚvÔ¢«¬óÂ’$Y×rüh’GzbžœûÎœaýƶèS”AÑð#Moï0ï~ðJèëðd݃R±ÅÚ®ëŠHŠÚféP<‰fÞïhf¹ykVi
–zŠ•X[Å=‰(§p1l”ÛbòÌ@¢0xA׫ÍÚO?ÚPƒ›&û–\‰Aô!±I«-lKÔÿ¦lnBõ‰_P²Ÿ»ÚUê"äDÞàܨVâzÅB{³ í¾Ø©¨l¡?6‡8ÊÎÒÔ™k…Ôkê oI®N~tˆÊ„³Eô‡ª³n +fÆÜ<è\°½8Kw=‘¡·IçR(†¢¦ØH¹¶àE‘ æ<D¸¦ÅÆ›z(huĈùwV¹-ˆŽL‹Lqf‘MFú€-T3÷Ž|ç¾´@
Œ¾¨Ž¤™!ÈÉtÿ#|Ó1´‰_ce``L=::Víª3(£|OŠŠ?~rª-6U}2ªƒà÷7¯£`Œ%~nålº–£Y¯x:V-·Á©Laí¶¥0í}}œAe”®¯¶?% Ñ(n’VÀ1j¹Ô«›mñ¢>¬Dm¶g‰Z2Õä€xnê‚ó„—™Žk +àÑ%K‰vT)u…}Šã•ãìXåhîœ ³™ƒ¦Gk̤výV
«ƒë.Ü`„«¨/sÔ&"ʪ`0óA—Í®+Þ<fõCžmÙ›¶_¢¡ö[S“1ˆ HLR ‡*8¤ûä]Rò(ÇYõX|‹c\8HŽZˆ{X. +>—Epa²4ùc@É¢ì$ß©Q9m>~r¦ÑB„ÛKû×Z¢—’îIž*® +SÞ0ìˆdçb3ÎQBú×Íâ¢C~ºY/hž³ÓÖcl¶Ò¼C+ +ñÕ<‹@Å‚.v†¹sd†}Ãmi°áàŸºHÄ6Æ|4w5Æ/T¹ó^>à“•OÝ4DÏ\G¯£:ÉK`³–Î b— +ŠðadiÆÕ«D©gÖ¯`}ÑdošJ\œ™7 ¿]ã6„¥`êÇŽñöª=mW£_¨@À 0‹Òìþš,®R_×ÉYrs,¨VA^B§wÍ°²Äz0·3y—òë‚ë„@ƒ)»,ÔF£; Ú¦{1BÌÄÄÕ¸¸/NCöm›ÐÆ™üY¼ÿ˜iŠx•F|w-oÍ$¹h¦9›ÁËñ$šÅ¶1ƒ·umÌ ìIW³‚4ZÁ-ÍRÄãD¢ï‰ç¬6—¯ïœÈéaS»åwÐlõ9˜ä¦ší„¹RZLrÐ6EÚTsLÈ Ô±Òhƒj‰(ŠP27Š> ³a®x ›.˜ïjº¤¸}SŽMƽ8¢Æû#ÂcÝWóÈÒ"%/h;ÇúXåHSˆV,iæG’¢Ô¨òÉ&Eêo04¡]&hr1”‚¥öñzâØ4ËM4÷òF—f–\ªyVDÕXÊÞ¢âÐÖ#íÿ:)Óã%mO…€2˱<>"ãI.9Ðu +éÒ¬‚ÈÉ2v0{ÎÁí`r‹5ä†áÈdï©¿bs§}9´ÍZYâì`‡åê2|ÉÚú~‘`•ýg“õ¢0]¨‹>Ög?‰Ü…×?Õ~ùýÞlŒ|‘e0¿x‰EÂBCc`°zÝ®ê øËÇ9>ká\2!CÜGµ3²JaØUëxI–!¶`tuCá;„¡^É.èïÎ>6("×èØ{f®ªEáØŒ©a Š÷\/м»IÚU+ÅÜfÕ;×ÔÞ••@—-Æ3ಖSÄX§&ý^Î¥a ´Ö‚±t”#;© +.¸>'¯&þ2ÇÊ‚!:¸foPrS îðˆ0šç +ú~ŒªÓÒìÚ)5
ƒÄŽ£ýÄŠ 6š/=°0Á©õU:Ó阫´šZ†Õì1F©â5,öG$5s¼š$&í¾Û¬Â‘åT£V·-i|–7Ê)åR_ZyjeÇ;@®XVwo¯#VyÙhEü,=LP)ö1‚Òv"\§Y²@±Y.¬³ß¨Ð›ÍÆ)èjˆYㅈϢ³°Ï߇™’SãÍçêk•Íò`„½&CZ«Âûˆ,FÂQC@)X…rõß´!DVœB´w‰+Šâ*\Ý|ã"ï°.*nÆ)iàJ +–‹.?’ª+ž@ŒŠñ1±xÄ( ÿ>GBÉ<FàpA9æeVNŽlE^08¬ã™´*žõ¹—À)mnÃ9ÐXk5(whšæ0Œßää¶îBÈKï0´ßÿ¥Ñ«èCÙÑ5%‡Ð¸JØj2ዽf9çúþH8ï%BÁÒJ‘Õà6ý fU +p +MM½éMz¦-¡Ð²Àö*XŽ, +2÷ظl¾¦2 =ãØxH)æE7„·’HldJ§¥HX!QÏ~AZ‹‚^€'çÈ/Éi¨wd߸ +u;XÚˆAïÉ©vRÃ[Ÿ†ÙæôIa¸ˆÒ@1>û£éÇØÊÆÙka€E$c§k@ØWgÀµ£÷ %QSñÌ¢HEí ÌM"bSœQc ÃѬ4˜T&€#ñ¹ ‘ÝÞ¿&ánv·A9Y3ŽÐšRE „ßý2[Íš—,–Õ#)93ã$J]~$ä¥/·H7Á>¹ùfÈæ–ÝœEÍLyp±Iâß&Ï 7E*³,·˜êÀ9šD² +4š©Ð—»YmÙÒÛAvÆJƒÎÈ d4ªA#“nlôzã'‹?ɤž:è„¿ -¢4¹F„Æœ/ôÁTVŠVä®'£þë}l,ë]².Lç¨h?SúI‹¦£EuUñPÂí¢jû”9öåWC<@¹ˆÇ’'ˆWq‰
Æð¡94Jº +k
Œ8¯Áû+q†¡Y¥ Îë]"64Òj懛K4ÁAb2 •.д@#ºÎ7ÐràI5nž$8ûmƒ(âHT#|ÜhUÊÍÝ´¶Š¾÷BêO<=£Ð;w‚Í’ÏÐåÚšÍ
´kW»U‹‘™¡Å~1íñ6éØ»®Ál—›‚Õd7оƻì7I+V¶æò¤ÄE=4‰Q^šF`åC—Ëž>¡Šˆ¦ê,ÅVJc +ÎÔZ1Âß¹,º¢4—X¬4Ë\LMš.òrŽ0›!ŠÚ¹ñ\ÎáhZŽh›>ömgRÍóèêÉ$q +:Šb?‚©Û›"®Ä9×;ªïg)]èPUí"ã4IyQ`"5&ÇÀ¤6eWÈàÆ™ÐÅŸ:N+K&ÅšÃýŸVž2Q‚jÍZ¶Kj0µøH\¾I<QñýΤ IûõI4ëðBóàÎfÖ0±y4x•á*2K‰ÊÒ\Y±ÖN;[£8½Y•8ÑÌ—ƒVœîOÜ:úûLQE£ý-àaà›kƒÕ3yEÊt†]ä ÕÜ4ç‘4“Ëm9ÄB:&yœPékDbSŸœ’…CDpEôuÔ,àr«Œu”£&FÁÌdWYW]~YBÇÔrëðÐÇágÍV5M_¹·´x"’39‼xÞÆ!\=‡Ð&$a÷k²šƒ‘‹½Ù6¸KüX<6k9uxRq¯µºµHO·5CäüÓ°öa÷ŘRâB£ààÎYaƒò•>g»¡nNž1*÷`{G¯qet‚ķ桹‹s¿¶&÷Ì÷Ц‡ë6î"a)Äf<±5À{pjruÔ'Q̹”àÎíÊìO’u±½á¹w(šæ¶Í²9‹7K½RÝÁY»pã:AQ ëÒÙóÉŸŠËçS +ÙŽÐ!¨Ú S3¸”'cPµA„º÷Áè4ãÜ*ŸX¨šG,H„à$¶Ac#{E[“fÐcŒRÜ‘šFö‘+«^vMî¥.Äuz¸º¹g|¢q`„YZ:ý6Ü}⎂e Rd4¥ÝU×ó«¨99ý2ÞG•³eA›T>”‰ +J#¶ä\-eBÂɪRFAð>ËW¥Q®Ü€Ð¼±0u +"ÆóûH2¥hx$ÇqêP‹Ëéã'qÝ+#Q»Þâвà°MÄ‘Žlh~×Ê觰”¥..¶ìäæ`#K‘˜àûê©Mù/û+n¸p‰ê2³)¾_ã*©Dy“mCº|jœÛŽf1t#yØ÷ÞL¬ák&%6„_²Ø à¡“ëC,¹ašÝÆ$¯f¶ÔˆÍÙTˆCL“«3a+-C,„Ó»"¡àLNRjpˆ¨/%UªÙê²@á‘kéçÍNu](Ïð¦ÑÁšTgN[YW&§@¾+‡;•u¡âQ——ê”ÈŒ¡ÔF•‚smëìó’: +áàJ,Ä,?±s®x®‘m+@f±#½ +çdš]ázýC>/4e—KÙt!¤DHK–G…š)¤ehH(£èkr–ln‹£XÅÏ*ËWÚ˜g:á?“@ãƒ*I…É™ÌÙM% € +Ræ0÷J¸½#Üi³\ÔS‡ÉîkCh!]f·!MUë~ˆò’›À±A¦©å¨|CJÚ>aMp²k_V©.Ûì]jrÊ’Ñ–CÇ/ÑÚS³ý)}RÎ4ç°&muý“1žíE¤£ÊáñU,A<N¬,u##ÒËXÐ.j’:Q‰ÔwJÎ+Fè
¾Åñɺ‡zÃQ@5v.qdîˆ +I†Î€†¤sl¾c¶µ´:Þ +øÃ’G¯¤ÆgûÔ;TW⬆ÍjBZ_iî™Å82z?ɨ„< œ†[ÌeÕ³öµ÷Òçlø,dU"§)N#xº’ +„š]q‹êa(|icy\RPVåRxЧqíÀK”ïVàë¨Ô&b™9z0Fe‡©´•“ëÙ£d.ço„Ï€.*”£ëmkTÙˆà=ìn˜¹ô{¡°eä
‚KDõ_ÍîHø‰ÁÅ}¬WÑz¡¶n>zBV¥¨%UÜÇeØEÚ½DlÍÁ.eg©‘ÙA¥ç)àÚ.Ä×—wàFMíúÑfNÆÌð4è'S(‡£ä·%K~7÷¨*Ô“åæmG +k+¹‹").)ƒ^l׺Â:ë¢æ¥êrÐÝç
1¡È}º„‹hž:‘£ËÛh‰„¡ÈªQc–’í–šàüR{J30•Z̬YZç<«ÒÒj”V&“á¯K96™84×RýYép±Wahîà1y£’ù¾ÿo~òâêùéî“ëÛ//Ÿß~»ûôúÕÍ·»_]]D~ÄåUüæéÿ”úei,§XZþ7¥òyÚÿ_§¿¤Å:Y6ñχå`/Kþ³e7ôüÓ +8E9èûÀ¡t)}dªÃ²HÑBaÐyã™ +’ç9ʯp¢ +kƒžÃÑú¯’ùª%âýN=‘¹.§Pð¢fÜý%É ‰Ž2ø…n;/8n`q6Åw÷Ñ9…EªÂaþ®¹á°ku+ ‹íÁÜØã>_væ‘RXÌ.â9©Ìƒ‹’ïÏYg§°Ì{ÅX6Ù(e’ŽÂlÕNqñÇÛG²‹uÁg˱“êa‘´™µ™Ì^,,ŠmoóTd+tÞOð.Ü–ê…ž¸J@SúÞ+’’BäÍ"Ø|±C²2PRå’³•cO²`Iµê§?<cOö<õWNïZ +¡flÜ'öXhÆÚhós Y·¼¶ÑgO7VÂŽÁ0GÞ–qÞarY©À”!t€×žCC÷m• ÇD¬VRÞòžC]2mk @F +š€BÖb&F>7Fƹðüƒ]÷)Í€¤Ãòμ»y¯vz4Vn° =Àš84ÄC˜øUÅ·.Yðß—‡V™ÁC]|¶úÅšÞ¸m‡jĬ¼°l#Õ+à TéE3h¢<
Þ–ˆ{pIàøhxW©u": ® +"`ÄgD«²D¼ih„™¬0²]à”tíà ïUŒBÎ$F”{ˆÍšâê\³rá;QiB\ªa×®‰¸+˜ +ä'…(Óh†çO‚Œ +2㔎±«B‹õ!ÝÍLq/] Nxò +Å‚Xřݦõô>—Ɔw¡=à‚)„+×ÜNfÒóÇxöë@:¿ F݇Ç"þß‚Êðß +ñŽE±k„¢3‰¸ñTM]NTUH^`¤'ö H8±üþ¬Ë@âp- ÀiV ø|€É9_lÀqt3S:ÑŸ°C£©«Ž¥`¹ca d ÒA'×ú)ÃæxÛøY“pF>Pò0kR¦!@Øâäìż˜I\„y8½ +-x½W|ªWçÁu¤!ÆÔgÍ@LŸ¥'Â×âŠx;ã è
œØIPyÖ@‰Òä»^ë…'žŽ¨žìõXçv¡±)6ÓžõGzÁBU"'‡˜Ã
X²ö±G ÞPöëÑB#ig}¶AõgCKç̵¦°£à.öé#¡YÀøÕË×Â|Ri¨„ƒŽ–`Q~WP‘’¢°µy^z¬Jœcô""Yš§6ýHvèá¡)h—•·CéÝi—çÖAÑ +&¬[ç(è¾Hƒ\Pfnš5IZaT)‹é3òxÊ”ÁšÛ[@ïÞgu½F +TGZsm•¤íÇ«·¤uißÙ(Ð ß7«–ØÁy¡ÑénîÝ:>t󴽡†ž‡nví_„¿ + "1‰íǬ¼¸4¦¶8{mФì×,é±æ‚ó–¹ïÞ´Æ‘5˜æ½â$ˆt¡".\^3Ðù}ûÖA‰Z +XÂpDG5ƒx®vÃE
õ¾l›#µK%@4Úï~öA'±ö/ÿòrìÁ„;O-"½¶íúF¥ÉØÎ(bìµnãþVñãÞgqŠëìßôº6j +ÇñÖD¸¸×œj‰˜dž°{Ib¡Æ:éDpc$s%´÷ÙѼ{½n9‚x²µÙ´ ›Nû†‡Ü Pýþ`÷>»>ÖÚ鈩)–ªã”MµE£uPG›Œ²žl´VC¨ôÁZc\7©“}»ùìâr³Žc¯×µQˆï¯q[¬}6íï«üðv¬›ÏnŸ5:½ûü1/}\£ÙB11öA‘šÝŽ«‘ÚdhòA(4q
dlßb^DǓΧhÐ2ÍhlæEY<¨\†Ÿje\Òƒª4ºáƒaÌ-ä-[6w+šY‘¡÷oÍB¿3˜šAw©5.íGkuçŸ~rròêâ««["ï6`¹w¿ +0št›Qã":ù8±éÙ94¬·“[A*2„£¬QÃ_Ú=’773«£?Ö&GrÚäUB™Íaèã·ªÖrm†k«É-»eåFßm¹xòW|±Þö“n~¤÷ò®²ð…®fv$;5ªÍFs`ÊŽ›tدsE¶Ÿ¾-æ/¥ÕqGxÏk[Ê@©Wß®„SÂô¨j_ðÃ#gjëÜ,A”E4„¤ óO²*wùÁ)ø±¶;·Y—å3Æü®›Úì©ôeËèMMV’˜ô9×ÌìÜ«MHºL±qºö‚òßß8ì€>[núéú1]Z9ȃ4¬äF+ñ27Àp¬íîÍÁ{t.%\Óèí6MF«ÕÅqœµ·G‰÷hoÖ#/»e¬:S•ïuÐ5ci +žQet\‰Ô’7Z6–A‘Y†ðˆ×!8íiÈöyÒÆ?vñ}Û_)Ü4_BwýÇ:•džK;§!žÂŸzÌqïÑ×
[Z´^5å»ÑØ"k¤~ãûÛ©Ò¯ü`1“Õ®rÝø¾8x*8¨h”ma+“«ø `’½}þT1r©1SÞ?Õɧ¾?ïÏ™?LVÚà š—‹{Í,ÛRcí»{·5Žsí7ƒIý\î|Ì_ñÙÖ붑#ˆÖæ)lµµ×ÒÜÒ͚Ǿ?ڽϮÏÕz½7aF¦øÁ
T§v"¬Í›MíŠC‚Z1&7Æv¶k¼ýl6¹ø^ŸÛFþ~¤ÐÝœÓöDXn$T÷Gq$p¬ÛO¶gÚöyïù11IîîW°ÊA‹ AÔHÛfÈh"ÀÎP;#íÈã˜MêîvºUÜp9“‹‘½Ñ®~ÊKpŸy2è\]_{”'~ì~Ç”õ‰ ŽàRš±AA¢E8ˆ‘§©D¬T¢‰ŒÖÎCd¥rÎbÁV)úâ³LO«×*˦¬AüÔLË +aš)‚mÈv<ŒK~Ô9$0uj)•©…y<‡G1ß“|cÑ`|ƒ?§ •Dr)ÍÕnYÇ øŠ›{¤”c`—+…õxùÕ0¡W¿2»9»ýäÛi‚î2^PcƉ ƒC¦ÃHÛ`ŽÛ1R{c´—óÅôÚ‘3ÚJ{”`…%Ñù^ +ߨë"Έy„·Æhƒ5)á®Õ÷kí,tìÆS‚hè$Î)?ºv©É÷íbÇ[`…ùÎÛT‹T'ɼ¶í`.‡Ylû¶KÈtÊm +Žsâ´•)‡1*F$ŠAÂÂAÑ£Õ
+‹^qà„wh¨šÏU˜Ð©¡"Æ@M2ä/K1vfðâ +zR9 +î-]*\à>¦)?ª°ðˆX?Ó“aëý¾¬ŠaÖ)2p80€vÄZOp˜C¹–Éw©¬H•‹ÈS¿¡Y:,Xv]³V)²=ª’κY6Z—ô¶Äó0Æâ:\LLûhdU©tMˈXÌŽî@꤄z§ &,*j‰÷ï"…ÍOM®eH8¹N%í/ÊÅñ Þ©®˜ØÀ•YÔ |G¦>·ªþ&Lv/*%QOîì>ò"£áà +¶%Õ䵃G¢Ÿ“U£‚¡PXr4Á¦ +¥[À»YoC²÷¹¶ýGY2W¸¼¢.!tLS +Z±õ„VÇ>î³1 +3A–žs0Ê–>j0M¨-¯cÛ´ÈÙúƒ÷&-N£@ÁÎ’2ê7@õ¤’sñÄÅ>“â•ÚD}Ôü Æ#Q@ùëV÷éB9¦!œ‰Ð³ì%®óxusTkÒ›@£M™îE +Iô9JÖIÇ9ëÆ™›;‹8D$ +ÔÛ[Z–[†iž˜ggIÿéŸöq +‘ +FÑPãdNȪç¢À™œ8“÷")¯ +øq"È-27FVÿŽ©‰ų́·GâD¬À£C:êÌl1Z‹áˆ°^æ5H2R ì;jCKÜÝB&àÞ´’¦óÂ2ÃI½q\½Hôî\rTOå‹caç8£H{ +‚uV›œD‚v^¶,,©ä– ZDð-÷Û¥~‘M¸Ò¬¨#Hê©HZ„k¢gèVòVÞøþÁÙz"£ÓGäcq½|ÃÑ€ˆ— ?ƒ“àsNNQ!· +ž—<ÏvJ"OˆµªìFDT½à»à‡¡‘µYoŠ£YF½7ó(êŽ4‡ÞË>:ßkÚËUÙ1 ¨H5ÂÑG/+„®‰v@§8RìDØÃf‡^ÄÙ3…ã:87‡P0ú§•ŠB[üÎòi÷dfõVï{!æt`©EbB +tNgœ„o<| eÐد$QAL%N:"HM”Ç*5Zt°†ß]koÃÁ”¡‚°ïnÄ#åçƒîÏ‚LÈ+Ô6éjmˆð/ƒrƒHI™Gå´jÅ1MÈ£dµ4ÒP–a Ì&]tÐM˜¬‹U‡äfu®V„2Ö埲 nmâÁdP<ûl‰ãþQ4¼±½«ïDLí›E'ðžAˆ+ƒç«îUÅ›… «Yf̺ð’À±SrÜôaÞ°ãÜ+á)®KF$¨’T`\i…›OÄEŸVó("Rø0¢²AvÇT
—Å0˜Ç¯ó)†»µk³™âê¦ìQ¿Fï°øó6k&ð2Ý&ðC²„j±r¢ÃË 6Ø„T¨§¹ÂJ¥Ú’;“h@ÌýºÌ’ àö*`3m¹ù™L‰#ÉgzÍIUl‹¾1J™ƒ¸HJ0ÍG¯×b(UÝ'œ¥ÉBa=%ÓC©¶<sŒ2<ªèLûÁaO6AV¸évC~™Bÿ²úå03¡CÚrê[L~Ž#”ñ{û!lÖYõšGÕ ’ígƒ9ݦN!4Ýq’tÍÑHD˘Ê!ùPßTºnîÍÛ<ê®Ó
—%–&GX²öÔò™³s!¦ +ò7¬x:™w°Œgâ¹ k[#c\‰,ÎTÀAwág.fíOMHX(úNÜ1a çc¥óÒ; I뛪&mt‹ªºæ§º?eûÁûÍÂqàÀðŠzF'(Ea•1Dï«#ÝPmSLIùʹZÚmDehýÏ#·¥Ü5¼ðQ·f{bÆ»DÑ5néËR¸S×›r<TÓËÀ…îb°M…}sw¯1ºåYéË (7'‡2Zü +15z§‰†ðšfj€7¸I¥±)σ,ß¡eEH±'†+›¼ÀÓ[áàë…C_ÏNjÖy.Së/;|®Cðµ§ÕåÁpÍZ¿‡R8¤cZȘ̩¢ DE¿†EÒdŽaê‡UmZ/4›š±E§Pž#îz8LÁÎëÉ»jñžSä“&« ð›ÁòÚ¢ïˆâöÑ9ý*´ý¬yc¿°!¿l6>JDîd¯e<l>5ígJ*ŸÖÐHßIsN(Ô9‡üJ‘X-`g.9ÌA„Nx¯×£ê`r›Šfu‘[±w*š‘\èJj+Ç“ÆÁ:¾„¬ô¯ê +Ðrô\šæS'!YGÙØK¬œ<²@ &“õ`‰ç}³K*P-.‘°‚R-û–jÂ!>§>Z¹™Ò˜"<CªR ›’lMZÙÅÒd´—û8ða:v-/e¢%Xžs¸àq½Þð!€¶Aý¤q4‡¥óTl +-)gj
HãhQivÄ×L‹<×Þ##5×t +Ñ9.¤]š)#â +vÍÔ]cŒ…³[{¶7Æ0[2ioñlÿ䣧ùµÊüMc¤m#@2íµ?œ‰Ì¥ÑS +W‚tÀzvr%§±l/ú»èû’‰SŠ1Ç}¿!gC¦‡*Шöwd·ÁÃð}¾ª»‰žúÁk&å‚©ßÜQŒ"ê…ˆÚy;M%b*Q#…Š2a9ÃFÌ"#œ¹·B»øh‹«¾ûÌ
¹%gñÌ*ùïÈökºYr%î<+_°*.‚w(-RÙû,ÆÆ‹½p3ïGfYƒ0)´*¹ÄÜ¢ƒXé€× +ÅeMQì!T>¥DÍØÛ‘0Ì{X;X8C .pdm5| +уAÁèýx6SmCäcPFa…&ˆrÝû‚¯óbφL´Êب›Zc`ðh2mJp^º¼ÿø¬5}´±HŠ’t‰u2´ôsDj˜ÜÐg‰¨ïåËâÊ‹]³¬–WÚ3…µÙEI“ÂÇ5ì7b©%ê¡*L§×4Þ‹‚0uŒ°Àä³–€¯§ªêæe‚…¾ôHœz.9ÐËC ¹fÊ +_‰›P¹.BdÅþ†8%ïx|ˆ¥H¶µÅ^dÄ@cHBd(ºb¶5Q£‰o?'Û(|\J¸õ-蜨"ˤñDëÚl&ôy…S?6)ê,l#¤ž€À™¶8ÿ¶`z#Õi³9…A…lå5Òzõ£´Du8×r™D§2D¤‘f׸æÐcØͯ•: Cã`éíºzRj¶•î±Ô½VB¥†PYP²ÅAÚirÖ2,;ÂÑì'Èn+w/‰›Ùm®ñ¶¾ZVêP£¤E–ÕYõʼ[•ÂQYaQhéÑz™º +z±á³Q3Û‡þIªá ·âŘòf†QÏ!,x’Âdèý¬ÚEe +a +ц’#Á¥@2Œ,™¤™G¼VZ”+ËmºÓ4·î¸±¥GdåEù”ù·åRúj˜V›Dg¡ñÙ1,vGNœ«ûjÆßÁñ®vx`?"©Ð=*váy
Ç@cq°·xßo$&0‹]ä¤húðS-&²ù¾ÓÇä‘Á€*ÅEän={hÕ,ó² %¿š©b§-Gz«”&ÚÜõ¯Q€´ÅùV©ŠÆqÔ
•äÕD&Ž%½*?0,—¼Ã{Ïc̘ËùÃæŠYŸƒ‹a áÄЖ’ØL"&˜6”¼o•ãËI -lOarÝ#ý핾¹€¡ßëUÖ‡´:ój1²dÆ=¦&ÞFÝê#‡Yà:2l +ƒAÔ\6˜³s÷Œï +¨Ò‘Ñ0°`w‘¥êk«}i$óx½“ITJðJœ0ð"c‡ÈN.ÄãuË7LöE1á™\ÒÐQìÉÔ‘¤0ˆ±‘¸3ÊVj!ÚÜ ªÃàÏ’²^ÓXIÍ&(e¸¬SS|ᚦÓÔÀ(ØunâWÆ¡úW¹Fröž
%9 +1”ï[lrZNÅ—Âf¬Ÿè ¼§!ÄAgUm}¦1â°›Ç*ƒ{¡¤Z„D‰ +3Œíg²ñ„³4ÀQ»;6äI%s +ë‡Å}ŠëQ´ø(¨TÀËBòΘ‹.Ö/âªUXN …ßàHˆÚ†€¦2•Ýöz¥å+\+Z™#ªÜèi@dí15räÖa°Ž¬†ÄtÄ'æ<nI) +B΂ԮýoP`
dŠ³„îŽFF +û^/48ìÀ!UzjZ22X•Š×zèf.«d ªmÞ™¤>Äù‰>5!ñj:é\¹¨ÀŽQƒà‰ŠL,PüÖzÐ]¥ÄNÊŠo)`"®º5ŸÞ3s«˜\©…Õ=EXÚ@nPµZÚ/nZã<+²@µê¡ØM
ìì™3’‡$æ¢ȱâaŒ(8•é7UàFÄ¡´f¬Áéo6'˜µÖÊ÷ËáÑX›}m—/&ÓK-›ø„×I±üŒ‰^ë¤V´^±}á'è»àÍN³ I)ã)²¶26pÉ<bÛ¯t¢OƒïÖÈpztVJïKèY@‚§S GÈ Ëx5ÜéÒRHï+Þ›jœ¡X×½j†ðYËhZ_JŸ}_VŵjB47 [Td2·¤ó +ÍYFY¡š•¥ÆÉ(—‡’á›Û´¸Áú38 +È%äù pªAaÉô3IŸ»¯~‰..t +ž)ÂÒqEy8›Ö*tjTMºZÕ8ûµÂÅ:X+*ëHo¸ž¡Ðì ¬:X¥ã¬¤dx +ç5©\ï‹5gyÔ,& ’˱X™Ycdûy¾€qh¸ÙäL6š§6ºI^îG„SÙù•Z›KלÆ2P*¡Sq´^X0oPEan#«\"[´‘@"ŸqÊ0)oè®Îy8E¥ï½ùœ×Dd|Zaº›!÷R7Ô¤!,3ëAìô &öÒ’õêÙg¥&auÄôžS\0Ï%ÒŒ*šaRcY!Bsð&ìó¥|چ׌”ý¨wS@qà3åÇíéd [Ý <ñ¼öƒ +û;`\àP•9f¬âheÛ%Þˆžf¬ˆ$`DrdðÀŠxº²î—#Ñ™p"‰õVÊ Êd¶½Y#5²9ý ¬ƒFÖ©ÈïÅH{HÄ”UÓ{ÓœØ+>5¶ +ž¾<rº Ûæ²æ«e•OüÄU„#48&Aò8€
$^ÀfÎÁ’W¦°Ü7 ïÛhÀÜÌ@6-n¦¨„)¶L}€6×°¦Ý¬b +Æ)gJpñŒ&Ja*³°Ò“jOî@B×
g:¤Û £8$Úð}ѳêᘜV£oÄëûiµÐˆH2£¬zÐuõÂÅñöÞØ>›!Có‹¸u6… +/ã½w¿vjLJëýF.ƒÛxx¬™>ô´µR,ï7hBÞxµ¼õ„ÌúËòâžÝþéüôæƒÿíòê—üÅ°ùð“K.>þå2úÝ?ðñ'‹ÑóÝiüõãÇW/±o??;_æŸ_ßÙåNPëGõÇþÈ??ô¥g·Ç'¿Û/½Á/}z|sv²ý™ë«ßŸ~ïW2ÿýüËkvédkè-quûÕé ÁüQó|ìÞTaÑ&åÇŸ~½û—Ý»7Ý Jô/;þêî_>Ø}üôøúögùôüôòÅ÷?ý÷œßÛq¯^¿þšñ~ÏÐ_]¾xuvûšao¿øc¼t¼Îw˜'|}¦/? +ü×Z^Çïüäpû|8ÿ!ÇŽêÀ¡ûž,™œê +I™æÔͺ_g~vùNü@§»ß~üÅoÿm÷Õé&ÉESOÇ0«Ñíúßžž#_ágqÚ;´·¼ÇE Øöí½>=½Œ/ÇÙnèkŠ/Ç=0ËØm_~ü§ãøîó1ûÙøÍÖ/{ÄßGÂk)ÚÔºøôüUÌÒEÒ¦ÉS¦~ñU=zûêÇßœ^ÞûÛ]¨AͶg–c&
¸Ñö^£ðgCKáñÏûü‹Ÿ-¿ðÛŸ-cþ·Ÿë»Œ·>qŠößeüÿ
.¼ô”ÐÑŒŽÆ¥£Ô:ãw·ÅxË}ä±»ÙÕ°×U
4sÜÈøW¼ftUÇ6:®éµ«šÐÕ´×UÑ$¬‚[è*Þ§µ®ãµ«eþögÓæ%ìÌr7ö5G÷mÊ4ê©.=qLeÓQ^
Ž¶úWó´%¶÷&ª›£§ÍÓ=ªÞÔkÔc³”–•×µ…9rOó¦§1VåöÙr„óÚÞÉÚîêiìê)væÊQgIJMOÛw˜µVÔã„5º|ç·?ëRZúœ£ÏE‹¥Ê»M¦6›{„M5Å —¾¿øY沯K%Ç·@æ Îùêìî¶çÝlÊŸƒw¬Û‰‹i`û~}½ ‹ãÐ]µ¸GŒ
«¿¶=ÆÚï6ºp]¼Ó!¶»—Ž{ÂKí°dÓöU8Jö¨¶]´=0úFßNùÇXòË>ÊwzšcL6̽Ð3ÞêÔÕŒ5»¼øåù¶]‰Ãž//fe=I}¨µ7Qôo‚ÄÇLx S–ëÝÛ-êá3·ÓŠññÙ¬_žˆÝÞžÒûÜžÓ뉧XÝnÎ~ŽqÛQñmµ\>¼‹Éú¥¸s†˜¸.&¸lÏìÒ·ç-8Šº.îƒèiE€>–Z»h¦ðtÚ…\¶og™®è»ÇþíÖ¡]à~ÛÓ-Öa¿]~)^tÞ.šì#i95'ŠÂ³Éçf"U‹°ÇåZ¶íˆÁm»ìcE·a´³%~¬Æ´×¸´{-x¿+Œu9&~‹EÞ®Áv’nþ%Ø$ûX®íÍ–þîÁZÑó€e‹»Æè†x)í…7MšV›“}¿l‚èûqÀ[°‹úÜ&7vqt]à +i§N;›†hé·×ç¸`ýe] +šŸß£v.þ›es{QLü÷o¾xòË«§þñ_vþñâürùóÑrn.³üêVÕg¬È[–ìI?Bÿ›O-¯ýüÅõ©‹˜Åÿsû§—§úë‡ÿíòæwß_ßü˦JkûÑïŽÒgÑ~óšÏéjÄ]|ðŸÿîgçòêòô
&¨„ýᙉOþóßö¹žŸ]¾XÚ½Á³-‹ãÙéí/ù?ü|ÛOÿH¯ÿg¢ûÞ™x£ç?;^ÎÞ7Yø?øVÿž6úÿøî·:>ú7^Ñx¼“W7·Wۓ쯷ÿÇÍ1²\¸ó–-ö¦Ëñ¯¾/ž¡Ðÿ½ÊOa—Þ|ý‡÷ø6þoƒ›ó³“¿÷³ø(ça¼öý¾Ñ»ý[¼GC~´ø??ô0z“‡ùÓßúaÊ0ÃÃ~èiþ tõ?цý·|ª<W:~衾5_Æ?Õ·YãoùX
xóºz~u»˜ON¿¾ýòúìjñýà£ÝÿÎ{põóÌ{võêúäôS€ýþæwÿrCý‡pqz{üb1…Þuó;Žãÿ}áØÛ¬®Í‡9}¨,þ¢ëv-ˆ±˜1¯^îž_~óêø›ÓÝÓ«—¯^êCÀ¨ù;óîøúöùÕñõ‹Ý ã»Ýî:|˶9ØõSÓ+í~uúÇÛÝÏ_œÝ??;7·ÖòÿñÅ鋳W»¯No®Î_7tW¸ò¡A~~Žhóåéµ~âv·z~wÏ‚Òª²_¿ð(´ñ‚¥Œ{¿yyu{çSÇçgÞu%2ïÅ˳Gj‹É\æâºÍø'¿Ø}òêöj÷ÕñÍíéõÙŸOït‰Y|yüry€›³‹WçR¥îµó|¯‹e^âÅîΖ<¾=Ý‘Çu<Kg+úûâôæÛ6$þæfê¿·ûß_^üþêÕíîÅòÛd¬ùêöåòïï>ožîöúøòæåñ²%Nþ´ô{öb™‹˜¨\qß/ÅÏÖÜçéõŸÍëêüÁO>oì°~ô{ÝŒu»?Òî붌OÎÏ^.Ÿ‡£õÇe¼ß,æ%7®£ØûÆ5çùè»Ó“ÛåGžŸ_žÜ_e{_YÞê°v·ËnÜ_»¶÷öÜÿ÷ê»t÷D4Jß7ð`PÛ]}wzýAÓ›ý7ýûO~ñ,n§ËhoþýÛ³“oŸ^_}}v~jRµM×{}úÙç +Ÿy¡»Ô¹©w?· âL}~ݧþîÞsMyW +R~n +ØbŸÑí™9’ó›ÃRn³“Ý©ÃL6pjÚî¿°ûÄö¼Õ¨¯@H,.òZ^nRËíõJ·<1{˜Ï&ÌÁ÷¶”ÏþéÞ¹¿_J/¹{òš êÙ³ùyõ³s¼u‚
ÑÔNhŸýÓ†¬%,Ùn|ž¬.Û±„ÌM©6§G¿¢àä/Ìh>ß.àoy×ï'(¿SrSÜŸ Nø„P°áˆÐ["6²n[!S‚
KD‹ î#z®mÐí$4´ÛÎwк•Ç?ÔöŒˆ™M9¿SvÉõt_,a}6,
5x®6(Üuh_®€É÷¤Ù‰•üLõ€ÎÔÉøt– .£Ç +¿¢Žº KÍ|Ìvô–LÎOGøµ ¿šS£ÈQ?ŒÁ¿;áXNNè+‹ôÌãÞ2ïÉä¢þ¯çËsX¦&
›’׸ÅYˆœ «¹oÏ8™J€Öº~j¢|m'òWç +ZЫëÃo*R·÷Ùþëi›7ÆØYÿワÌpmcL©é0•‰(aj‡q‚á^ÀºšpÙ
Ö¾6`KcºèæÓ§ê{ÌZ0cU™ÀLA3÷R¿˜ebÖcÖŸU³m+UÌ~öÎ1§ê¢Æœ×¦skB9ÌcR
0¯}xÂ|±¢ó“®hb,8‚š¶‹Dre,Ú +ÿ`±Ýˆ%K~«†XJsRcdåÃ2ø¡‡eË–7_ãXaŒ±RÔ¨Ç*O«Nâ+¬ž-º°¦ÓÄZ×_%ÖÙ›RØ×0¼Xz¦T7=lÔp›°I«VÇfƒ[Ì"l Kl±e°m {ÄöeK;NÛGìbrd”Xv|Uª‰¢R“Pi”ºe§©4&£6¥ùŒ”¶â8¨tÚ‹[®tÿrJ_I«S»ž2¢‡”±S÷¨L.ku%9È»”Ù~v£,ô2eeyVt)k›êNÙ¼´Ê®
ÀéÅ7Jå°Ž
•“-À¼fÊU +¸ñªíáöÒx‡{.q#*i"x¶¨ãéeu‰óa=^÷ZbxWyéàƒÍúˆÏ~Wüw8ªà‡Åt«Áfc—F»žU5Íö qy•AM bÿÖÄVqפ=¼¦ØYï4
)¬ùª¦'š±måÒüÌÝߚѶh®f}[«9·ÍZóÜÚѺZ}‹6X
ö´‰üޥ͖ë3m¥‰jÛ+ÝA;¸.‹Ú…§kÔnÙ¡ö²ŽEüÓF˜βðwt¿' ÿú.ºìèŠ@*껺F×맺YîPÐm6î’È+õÚÄ|ª·&½·Pˆè£ƒ³EŸ>g}Ųžé;¹d[?Úcyý*Ò +™÷ߦԙ\™ÊÓ³ÊÔíWœ¦éÈ™2m'ë¶Y¹k¬Íf<b4{æ¸9^:¶ÍùÍbon¹{Nó¨×.š×–ÚÒ|ýù²YŒ‰ï¢Å£™l,±å`±ä[º¶¥U©-ã|3cÙäv«2çY͵ÚÄꛩÜÖä53°–§õ«™XÁBt[•ÁĦÓÅC6gSµ¶EÝcÒ–»TT¶ÖѶMªN·mðÚñ¬® Àíö’Þj×õK{vl+Ú›{¯Ã>±'÷ö]¦ÒràÇUÜákŽÈ>µq䓃®£c°¤À&ó:Ž•Ö©'ê;§Ç¥9“îQÓYñ&rξ_sþ~|.e»lSà.ë%it…C^+×5*]ƒúâšwÕg×Ù©>»kÃÅío{•ît2‰»›Ö²Þ=5ÿØÜG“Áë1QÏ>ÊxÈ„µîiÔêCÏd£ÛxŽþ®Ækè¹<^¿~F‚ý,=Èw¼ˆcíöïy÷–b¹íe2_>™pù¾"Á’o•ýúUå˜Ãï˜ç+þ„¦uðWSË4W~÷…Lê[
H%dV4èΗ‡Àª&xPß샮dš„ölýBpÖÎiƒ—±²éTîP,ù» +U–ÓlhìëéCÇÅ×(lŽv“áˆa¦—ÆËixØRçÇœÛ1¥ó§H˜˜ô#¥¼!~ÁìG«ƒ&j6'×ÑHéÔ–…JtLšˆèé0öǬå´5÷:µ±ºÇb³íúÇýuÜ9þ^ÅS³îO¼ýÓ^ĵãeBZÿ&üÕë6‘?ØN‰A"JNS£OZJg2î(D’õË%—\LÒ-BݹÎo¹t&re‹…è·—qâ0*ÖSVMd•JøúT³‡ÅS+öKjÛ¿g2h]úÉÒ|Ý$'åË9ôá´Û줳úÀ’îãÓbúhÔŸ26>™!*§u¦³LE2[Ãæ'kjä#Ù¸^ÿ›m~O“Ù_ú”Ó_¥\d®2æêe?·lÍ#y]ùûœ
Zy`Œø¼\] +:ß©[ ^¨kã†Â²õý[ÔÛ±V1²J$‹æÊQüM±’Ñû³,Å=©ïRÛ*•¶¡Q¶É`™ØåoåÕT>¦ÖÚŠc9VU²ÑÞµ2¼.U¬¿¸V}ä^Y-ûu¸¯.Œ}MgØjQ篷ÖòY£µm©™«[çšf=mMꃲþÐÀ”=cÃ׈†•€®Üø¹,&Mô¥j&¾óæW=VmžÁuË=Û[Åe¤ØZhR¿m}¢îRàíøÏ¢ÙþòáÊöiIu<™þo§lÔ;?ëâ´k©½]¢ßœtûßß6^-¾ËBô«a +쿶)}áÛ¾8¾óΟÁ÷l0‰ôôá)ÖK⫯^orˆô±¾E£ÀûÁR`ÒoVë…þ¾±ñ\cjPƾƒ•×ÐZšÍÔ0«³{‡ÓÎÒ8Ò»²×Qrg_ß—éXôÆÑX«=þŠUêãk¶Rk•Ê¤5kU&'ä6õ•.->ŸíßÓ}>;žyL?¿³êÔvšm[ßú¹+gsÏ+á¯Ä|“ÖÎÌqº(·;×Åzsþ8ÎìO¹®þ +üèEÜÇvv¬<aNËü³ô[§¡Á›>ëñ…ÿÿÜÍUAGUý#PÜ-76ÀÏÛ8Œw·£#§ÝÅ +ð +,ËðŠcìwˆS"wn²yµsoÛi›VIë̯½Ö™MóÄÆ[ÙR#èðX2RµS&¿˜oDöÛ£Šx“û1Ôš}Uìp0 ˆÇ ‚Sòíi{ª;H§Hb÷˜é¥Ùšlö¾ªHXÇ!
‰¿N‹¾ (¨‰·M”YúlŒ!úS¨ÊSÍ“¦Ôˆæè:²`évlÆH$erÑŸ0
§g¿¥šÉ{‡¼rÂMc¹{úLìºp
6š»Ð37– †ˆÔÐRwy¾<¿Óxƒø5kþ˜µê„gÒ¬†2Ä0o,§—xE=-Æ'˜}`¿wUà7³¯Tg½ÞIDZÎ2¬`¾å”¹MXwO,ê©¢' +>™.éƒrâ÷ƒ®"Áìy¿H®Î+”–æïŠC¯Êf˜QçÍprM—WÑÎ}ånHz@Ž9Á[¼`H_†³m¼>ÊÖUXGR +1#Âo†WSNŽ
;gË0hˆE\;àì5’ê±%¹»9`)÷„÷–ž}ø~ÍÙiX¿6€M4½O™Ó0 bµ
»£6FÂ'zK{ñVÕ›4ˆ|>c&C)·½…cù1ì¨æbOlr6œ«o†?½¾èÊàŠµ&Vo%S¬Ù'ƒfÜ©ÁÔ)‡^=HÚÓÉB~Š€%nÛæ“@ÔnÒ%£÷g@ááþ†j‰žÁ¯ (“è‡è«§^pTáÛ0úõA>KP â!3éu›‰šcøuHÁ&! “asø€¸£JÀF%…âよÝ;¹ÿ"ˆšÀÞTP—PÀX +ôdºgM|>—ç'Zõ+x`ÛîYEÚv¶ vq³ 0¯·ÙŸç‰Eõ\·®*ß@mN“”¾ít(¿¥!QSH³!f…¡Qv'^&‰ßö0¹úõXƒ‹-þô[ƒÐ$2òzk³=윙Ñh5¶¾é3 ÀJ¦ýÿɲðîþ€ñcÖG)Ugdµ²6¹4v“ÖU$ çŠK'Ž-²ËÞB2†0cì9¨dùR§ +: +Ôš§'«#bF…&Bs†*™
°,ýŸ«ý³:ê_ÏóI0 ™‘
#~"Ýõ.€9žrØiW‘¶Šé{<#…Zc©ÚQ•X4i §I¡Ÿ¥(D–*Üü”à„4k1¾ò’ƒ¾AE¦vב÷o}ôì‡Ljë·Ï;-äÕJŒ¥»-Ñþµ‹Ç«¥z‹$ô³Ûf±ï56ïú:©Ø +ùɱ‘ù>Ç×ÌKrÙÃÆHz8¼¬¾Ì %ŸX@µ¯,ž
@OË ±v„1æÅÝ`̶ÜDJÚ_Œ·X|¸?™Ò”JlÖ=XªÆhk|¼!hxcÁ|W ÌÇ%Æ…]Ž×Ó³_0/á“#ÖÄühЄuWÇ.¹zäXty¾¢IöWPXc +Ü¿!÷±c¿·lܸ—
L&÷:ÙEiþµ9<q
1qÍëO¹—ÕȽ?`%“úÊ&Hî/‡1Òí!Ê°òY`,îM†KDO0/OîJXj33Š¹oQ
’Ü%i× X|æÃq¿"¬`ìFOíܺœFžgºsi"LKÐvØ
·yGb[Ž€]Œ£x”\‰òÕùH];§ŒÏ‚µc1ë.%ZuôÅíã*¸ÈL~bÉEIlÊv÷O8Ú±C¦®'ƒ`³önº¥MìôËÌßW˜Ê¤NxT— +>sùFQÉ ÷¶6…Øè¢êÔж닱Pà)Ó¾x»cñïÔ´²ÑóÔ%Ú3ùƒ¯@õ+½gk©ob
ýæÇ·t±“ÙWjÖ~`5ð-ÀŒ·
`^Xê
µ…`Å@Aé5Éapiå#uDŽ[0É?Œš3/à\]ã¾ÉáÇbÏ´Lô30Å@k¨fR·÷ëy¯ì“BÖÁ€¸ï¯°Ë%sb³µ-ÀzYy"r7<øíC£ÛÁy-½¾êÞ Ú5 Ìf“ãc“/3aóiÉäܳŽ7ˆ±=±ñ©|6‡é¸ŠÊÕ
š0–„yXEè|"<í|¦!ŠñZ#v|\ªsr.žc{¢žN:YJ¶¢wíÐCï/ÞÐjúMd§µJÂÕv\&~ ÂÀæa«’º\´àÏôÈÓ“h-ï æÕññ£ê»¼ƒ% Ô¡•…´>l1ßÃE÷Ò«ñ!\Ý¡ÔÄúuàjÞTÏ|
ºNUš:Ÿ±—ü^¦ÈùHÏô%5It +<P4:¿ã†ã,–hö¶@{©èeQ „ðíkOddTd2Þ*b,ÛrŒ05ÜwŸ!Õ[ÿ:žjĽþÚß5JlÁ 6Ñ&p#CSIoÞ™wõXaVtEm°¶³i@Ìkí%—pu•ÍL¸çÒÊ)æq è,=ˆe-ó#µgó'¶‡»aÅ>þuª€‰ðåg@ì>¬D껕K<ßµÏXHÃùÒŒ˜mý&ö™è™Hùòú‡‘¿”Þ–n§ÞO/(k,퉅?·!&†î/ŒN!2¾Ù)‘;”·^Àìã¼@)iíù|ÈJ©jŽjÝL¦ìˆ×”· më€äoX=a2Ixðƒ›ÈŽ7øƒüÙTô€6ý”¥"ŸU&´ä2PÈttɘí2s¾›˜Ád&lþÆï + +ÒÛ±ñéi?_ +ãÿÌOòîzÂô²”%U—ÈkÔº+çÖUº{ÙÝtså3¥&¼÷òµn&X™ÞRÓ'Tl)ˆÜ‰#ûZX)¼B’ž™i~ã-ýÇ;Ѳ@vxþŸ½˜åÖ…¼ °º]¡'%›xf)5ÄÚü§“öe2³
Å.}¸ý°qZm!Žö“¾îx={¿üáorUÞz\’$ ¨–þKjÔeE]¼R’¼Òˆ‘aènHµs!¾ûéÎÔ +Û¬š+èÝ~Á _ÿ]wëBÙ‚dzZdJ8ȳã˼±¼n'»ñj#u÷
g
ËR=XBuH®8°‹·ç“Öjþ¿r»ÂRSå(}¬yLQ“¨ª«›~ÌJðÊÜHÞ·cYF¥ÐàÀÞ¼9_,Óýuw¿F˜º0%»[ÿƒ¥!ÿqnæÃÞk]rëCBTÝHxÃèí
™ýD0Ìq¼ÆhkbµYEƒ1º¼8á'‡+T
8ï/ª÷OèEÐm\ÄŸ^gTµð˜Xغ‘û[‡1\ó,1½3ÆÌVmMcÆÈ:„éK_~Ì´\W£…3^uÌTì˜ÙVtجᮡwcI}Õuvœ‹ sÄÚ-"΄Ïéó|y¶_(A95˜·¶ÌpžTà§S$<‰›¥\,ï?G|™PÛBî¿\Ô©÷e#¾ÈnƒÇÃS»!îÝÑXœêª1i6Ô +ø +çÓ)xn +#M{î@v`D:P— + +œ‡–AêYåÓ¸0Ò¦;íøIiÅÞs)ƒT3hÏZSÑ,‚ԽԵݔ0R—¾g9~„Gª$.®j6¡±ÚÈD>&‚Ô£RïNú°ÒîÀF.Ju)Jž¼£Mc!=7l"Mg
Qò:¾"B +Öâ$ÅÓ6Xɽk¤ +œOà‹Ê¥‘vÍ:£%W˜&oª·&9H¿B¶‚×l‡H
<¤ +ü¬ÌÌ÷žÚØì +%¿ëÛl«õJ¡±ž•ù̼ôý¥× "miw?¢HëËêh‚*ðDZ~§mü!$Œ´àÄ›d,FzÈ)…™Ñ¶†iåE„Àße[;š'„‘#©á Úï"í—×Y„î/cýíºg¤ÒžÏÖ?oÌÂHK¿‡mÙïsò,í0kÞ‰ø„טÒnÓ–Zms‚H}%³‹õÍ@Ž´#Ÿi®CïF:qêyL£ÿ*Œ
©CÑe¸#-ØF†@"51Hˆ€ý=Þ„~øÄGzÞkÂ4ÒKÔÈ)Öë)¤‰®=Ë„¦Ó¹Á +œA‹,¤´s¾…‘ºº_¢HÁ&òkçécì±"KG)Üò¦bHgl¤®:°‘Yh}¥D…t¦Ñ¨¤Hû¿#uòȵÿûHÓR}Y¯l´‡¢H‘ö/‚؃@û0HÁX8cí‹">»Ä‘Bí_©‡úÿRx¬!Ì"…´ EŠt +)ä}Z¨S48³:÷ßУOôDè“_³œvƒëvÇæ}‘–Õqꔟ¶s/éuGK‹s/NKËÖé¶:5–ƒ&B^O´pÑÔc<Ž·®Tó'rÐÍ´±eeïGúÐáQ‡@Düõ/êEÄŸþ&€à§ f'#šhô‘Nÿ1÷4¤ßÜuKÐ0¸ðjÄó>±—°.ç~ÿSck̴Ϭ|oL@,iöpG¹(íS]nVÀ
Th¯†u(½Ç¬T4\Þ=n öœÇѸ Û\+I¨Sk–×)v—†W-XºE“Cµ±üh<w "9–ýk"ÿŒèðÝyʘŸŸgFˆþˆÎàmþêÊçó§ºÏ@¯1¡Båµ)A,ùó·G듲,dK˜Ýø%EA)ä,÷±‚æ—V³®8;2µ²Ò½ã딤;Pn¾è•ü6å‰/Nšî +qbqEþQôR\Ñã=ŠgK7Õ˞ؼw™C@
%z„i7€—ŒÜ,ÒSÊDý¡igß Ó®kÆDŶW"œàкÊׇÆÞÅÐàœÑV£øŒÔ鼆>Mìa䊽‹±F5¯X4ôì?ˆÑÀÒÚ¿4 ! Ö0ç:,ÚÞÙ½ÎGz
è\‡™&ÓÁ>Vk3¨”Ÿÿ„±‰ïÒ˽1|[9¬•Œœ:ÂÀìr BtgòùnLÊå;i®{åXÙ¹JÎ¥ÊnjÚMðÏ·‘uHñ°,€dÔ¥òBÓ (ÆžPøL(ãˆ~\`|w)ø¸6ÊÕ{—XýBc¹¤{IOÎbƒŒÙæ—¦õA{œÆâ+§d–~¦…É=kßY‹nL2tF¦1Ðf¾/¢Û’e~Ó&™×µ'!ÞŸ¥¹rZ€XÅ=³ñJté͉î•åÝ9*è’¸Bw›:.o•/©X<Óù93¸Ã%‹æ/]Ù2 ¨•ü°úNF¿ +ü•N©þ( +\b¥ƒµÃÝôþ" +ÊÝšd Üdò+p^ß÷îö¾ +\HàlB½”Í>:ÖQ\¦7ÞØ<¾qøìÝØÛþ²ÐÅÅLÍ, ø¼|bfÊÿš˜ÀZØKBV‹ŠÙ?F?p™¹…liŽ%þÌ/¨ILÂ<‡#Oµ…‚ü0 +ÂÄö¼–@uy)„ŠyÝm,æ4F7ƒ½í¯êšUÒCSÈLvãFB¾êD+Ìù»c*ÙMì؆k%=Kv·O¥XÒ2%Â1MŸ™!)^6'SX0n–ýñÄfâ8>Ë|”'³ÆäKF/âJ1³wâ¡|)Åå¾ef>·í±„βïúØ£ëì™ãpí;ðÜ$à·MÁ Ù?œX¥EÕ.Ñ,0–¦ÄÏ{ªvÉÎã»>‹!oò,ÿEÅqZ‰§¦‰'ÁH«Ò1ðÚðR%Ö©˜PŠ¦øü=—E0Ks=˜‚ó'7Ïwz–#µ¸ÑéØÇ2DOÌɇXfÊ+Àž¯xùã:XߤØÓ4Qùƒd$ÚŸ(Æuü:®™è”áÖdrÉÓe|¾fÖÕkÂ~Ké|9 +v¬3ÙÞϬ‡ÜÇb"(nL¤˜n)'&²µ—ùŒ÷Ïkç»j@H¼ŸŽà˜žÍ¾L8ròHD¡Pú‚óL®‡H‰øç
&׉;ÄãYµlD"žµGÃCijöød"xL(êíé´ÞaC&ùˆåUx—
0Éke„ä˜(vrÙPB‡ô~Í^\hŸ¹
Áy}Dò‘œ$BVy»ØS8âW‹Ü¦%fýx%ðÓÛи^iÞmzÓ£&ŸI_ìôÔ ¾g¤Ú•
aYìbá?e¤Ž•CI¤23RÇʉ—Á“T¿d¤öŽŸÉH…p>‘‘ +óÅÞÏH…P>‘‘ +áÈ»šgÅõ!¿4õå #½™ž}.vÞfC^*œ°ût*Šç—ŒèùD*œà¼|<îï~K.Ťm÷ìÊ7RáØw¡d¸ÿ“T8¯ÂÿA*œ°L¦}Ö•RÙ¢€}²TâÓR4VUÎð\},iybÉ
ô‚ ܲ<Š2ȘøÍv/ê0—¿z¸ÀÊFïÊ<‘ºˆr¡-Áò<¹™ŸW×½‡¿9ܼ£Ûÿ°jœI=¨Äe¤¼LoZã!¡š]S¤_H%³^´@ò“¨·‹Ê†_©S,žñ4rÉ„ešL&¬yX„ ~¸mGø†ÛeÚãÄÍÅÊ:ƒV£ô-žwæ«*ìåÅMvNËE¶ó™…Ô½4à!l/–açêv¤’ÝfVQ¤6²‘Ê°ÃË«âXéHiÚìg!åçbŒg–ŽŸìæê,÷Ê„¼0¥N*ÙÍná!åÖãnÅ2ì<*ÕÑsí‰%»}Kem¥3ìö†(RMa¾œ‰!K×ã«vÄ‘¦JßiQòªwÎàPi•›a‡f0,=jô‰^ç™í‚Bí(¯§¥«WÑ¥¯Píè³àPDK7+)B^7ü
UÊw,#ä–«ÁwÔX8gDÍþ3©=Ï#Tù^ñ:VG]b‹ItêYpê³8Êzýd%9¡²#wªÈð.IU’{É÷MÈ‘|’
‰î„|!®ïY9ɸ>ùëéI9Ññ Õ}{VlDîøž×MôguFxw©½Q?N>¿¤çâ…ˆDÃ]å “öôþ%›îo~˜W³é„ì€[-ÎÏeÓɼæÍl:!Ÿ Ÿ_ÞϦʥûkæ£x6/^8Òþl:Yhž¼ìl:!POnùC6Ýwä³é„Îiî{åDzé„réØöþg²é„rédÆö¼M'äk¿U`ÿ\6Ðì"OïG³é„”vìèg²é„réDn›#›î±KK•¸¦ô×l:!åT:›Nhþ¢¡Þ̦ãƒzZSøOÙtbºåg³éäSìl:(þ™ø‡²éþD±—³é$s¬>–M'œ[ýél:! +"YÏbâuI®(Q]Ž{0õ§.AŠN½TvYªK¢F‚Ne—ED&ÜŸQÔž;ó,"§ÚxRØ\Ú3w¯–%Uèîí2w¬{®dªä)s'Z]./+WIf™;±L.y‰t²$¤ã“™BwïÍUº{SeFÒK%«ÌÝS"$ÌÛeîhFºÐÝÛeî¨Ü·'…îäò¸çÊmÚ¥'Q~žEþc!J‡<£rÿ9—-¬—»>EOy`º§±‡ÏÖ'L£ƒÆ³¤^V"œˆfÅóCñ Ùù… +£5z+G˜±÷.QR6„Hù´Þ«TµáñHfâ=FPKZâb1Ôóóú#™)÷›_×$A®Ÿª`^TĈeó~ó¥BÕb§o°ðÚÛêE*ªó8¸%€‚ónµj +Ê …n8|-Vµ)#‘á¥^½Q€
[2dyàß®pw˯«q÷6®økÝê×*ÜIe>¾Á†·…FW¸ûH¥¼§ùDò*å½›Ot¯”÷>JT¸ãæ%ÉÉùK…;©z¯°ÆÝëîäÞj³ŸÞO¬í5GÌz•X€=Wsrª6Ýßkù™îwýG0¿°(˜ýÚ=WÎäæÃÎGò9‹6y¶ØS8â¹°¼$&ųk&P¹¼WòÛ…’˜Ø§¢P@˜Ø0 {22üZ·ºo2Ó˜ä$1iþ%ÊÚÅä¤1qùÄwÊ€ºÏ‹hS@'+C]Òl¿se@'‡+å$1iÃ;¾òýW»²óR“X¬(±Ó¾¦vèÞ7nåç)†—%vºT
ˆOä¸&-â·ŠAûåÕŠt/•{D¤×ǺŸ»šª‹Nß>”ãÚ½šêufr~©Üã“JyÖ?渲øó†!#ëùyŽ+è’ì¬g©WÚ'¢àÆwSý`Æ[&Ü Öödškªy®®À‰¨±ÞïGFø”® ì>²Ó#gmDIPrí²|Çô'N^)Zc#åäÃ)ð³ªÕ°]UÜ:läwW$N/ž„wºŽv®Læ¥áÙb¹•Ú[Ó÷Å’ðz¢HÁX”äÁ):V[ZõÕEªÍN,?buØôÒ{&CàŠÛÁBÊMM;k½¦Ž “—å¨×E¿7BH8$0¿æ'
oÌÏýc“7ªˆ õ¨pW‰1>X~FÜPiZíGš®ª¾„¢ºo¾'µ’´&UG0ßGšJ5INd@«†ïM÷OtæÕ¶rg_¤3imÇί´¸ˆÆÀþ’b¶I0残¯tÞkhowóLJø‰ïÌ°I@T·qª˜=œ”±7Øa~bÓS‰xJÒch•h—àJïTRNjÓóĦó§*³ ‡î“Ê,r=I„th•èÔ=Tfꯄ IeÝñnž|#+íI„&E%…¼õÄ;ôzu|w¯5Ì»{¹Ê¢H—¢´øü"›è/Ei)p©N‰û‰_ë–âqZtbcyâ*Õ‹¸‡×©Çš)3% +ü%‡®h]?é¡ñ|®ëÇéÈCU¿?T +Þý‡º~Ò7ÝÏÄ߬ë'¹Ñ%Ñ.öº~Òná—n ’¨ë'mê +FAÿ¡®ŸPš$ÃzïÕãû@ÎûKuý¤¡@?ÿ'êúI¨(dÃy'ñŸ‘ú׺~ª&«ª»:ƒíº~<6´q«úqîìz9=Åv¯ë÷4ïõ#uý¤«úÝWò›uý¤®Y©oÕõcò·„Ö"ïž«?×õ“& Ò`?P×O‚×Îkç‡êñ¤¡È®Ç÷¤œœìz|oÕõ»CdŸW³9êúIä=<¶¿Z×OZ“‡7|¢®ŸØÞz<Iü[þ–uþv’øŒ
ŸÕõ“>oæFü½®—Ú|kñ¯õø^Ò¯Ç÷ö¹Wõ{¿Ÿœ$¦g·7<Æj¼VŠŸ‘ú^]?Žcû¡ª•1ô~]¿{ª”T]Ñ·ëúI«9"kìåº~ÒUýÞ¾µ‰®ë÷¦¯Of]?y¯¨ë']Õïåz|ÊÂåIËǺ~O†gUõcay«®ß£+™]ÕOì–³WëúI‡wñv±?×õ“tâù”þ\×O`^XUý¤ï…“_×ïï~K.Å^Ïy±+ߨëÇ.¡ª~ŽäÕõ“\¬ + ïÕõ“V)ëõýº~Ò ±ôŽüv]?î ùUýô1Ù7Yqëú‰+A”óä&+™uýdé0o×õcÏäãŽDv +×õ“Þ$³8?–KíûVíáKJG+7…#>ø÷J-©y{%x*îÚ•¼ç¥-rVÓm1§7‘ðOù¦hT:ÎiÙ3„±YËsÏž%Ž%Z8ÃÜ7Çy‰m%‡¿Kj›µ³öR`>¦.F²›n‡Y§ß—ó´Ì‘‘Mß_mtæ^›8&l™ŸR\u¼&<Xo<s‚O£îö3šbùXs×Ýoîu[\S_‘ìXò–æ.¤]£DmÝŒÎêEO{Ù˜—ÜÇ–n¾P·ãzñ«lÔòëÀ&ÔÙÏ£ºÝqè=â§ØÎSÂÚ¥¨VíÔ¥=øâ;›Õ_—ªo×¾7мr;#ÍF½…YŒƒæø9¶Œ!§6f#ù„\Ls¶´GS;F~ÝéìkgϪgrvO¾+÷Lˆ1l5·-΂_yK{ûµžÎ½=,6çWQ¹Õ2„“_ü*ýñiõ +ÿL˜©ÛY…à)ð¿ClÚˆžf8Œ75ÁQréÍâø®
÷ +%H x~gP¿{q„êU¶1‹ÜÃålJ2êÐGÏ6AííCòƒŽºN
-ÈÐBçFøÀ3otsEu¿ÓÞauÚ}*›|Ú•LÙ0,žeå;‰Ÿ¶`Œâí«ŽºP8Cí0Òw¥[ãÞ“¬.£gÊd\ ~V»ÀÆ-îí
4=„i•â0&ÕÑÔ]¯É8tþ®“ÑtÑ3¥2MÛføŽ8Â{WçŠÕYI’8Â6Wº<N%~±Òq a _{Ó`ƒf§&øm\G˜ìéÍûE+z +6ÿ–=;Ön‰½óM¸/‘©ÒÒÕ¡?Õ»‚ÙgtKT—jèJø¢Ë¯¬et=Ã÷É9¹©t1çM›£®µ€âÁ•æר†õƒéyqu¿ RŒ¾‡„{g…&Yîa¨‚ÞÌå µcÀÊ+ÓFz@Ĺ~ïš#Kçö›}O -û¨îéL÷±Øl¡#NÔ¬! +ü͉ ¯Ñ½W[Ý +¤RHÙò»Óž¶Çⶼ}ëŸÊf¸;èž0܈y®–W»É¶3‚Þ^7ŸhïÌ%–݉ÏÌ»)б85!OÞºŠ4óN
1‚gßaê@Ŧ³|!%ÿ¦âÛ€QT·ØMIt 0ŽØMºr‘ß>)dõ4oèj]ʨšŸ×Z6uÜEF3ãøIÌ‹{”Ë…Jïö,gÛ)Z¶Æ3OÌqÝ–íýÚÅ#í´b~{ÆúZj}¬ë߀gƒvˆ!ÈU·pôÈ»¿ê)l°JjGh¬úî‘ÃpýÎ43åôІ—nøÉɸñe˜éˆi(EôÆš î9òí©ðbÊJ¦ã˜Ì¾¢Ý{ÏÚl›^í³Ù³Ú äh#{,0[òga7ͶÜ:ë§ãù)‘C¹w¸p£}šYøÔ²OÔZEd„ó^ø3Ý+ˆCçO2ÖXÂK{áÐúã+ìîf4ñاëG n“8Ó⑃Ùû«ÍDX·p˜øKew賡`ª¸>âè¬[ÆÈÕ;†_1—3ÚÔyQ½ò‚x
9ØÄê6£ŽQ©TBšÒÄãÐ×0Â>Í&Ê€_4¿ô(;7]˜EAo#V»é°%C4mD Œ=:—5AC1}ÃÈèîî¢è¦U‹¢n ±ù5yL%Êmì(oqã\`ƪ2ªÀÑÿh‹ð~ðè`ýšïí¡Öùøhâ,âä…é’ùx|²aC¾BÛË*‹¤ûÈ
4 +A“»Ó”=Õ¹:‚úE{áX+¯4Ž†iKüÑÕ!àè@þ8¿û@¾*ñ÷ʪØö—§_7F‚Þf +†@÷RNNthÉÞòvÐeeΑy̾ºf ÿÍ’ƒôr0“´«‘Š_8±Vª=c>¤#Ì_bvM$aiÇpJÚÁDÅ= +؇q¯^³ÎX#à.¨“áÛ‹¤™yÁ;f`^ +!îf{ÈÛ!JŽåàŸ(Åû¦ã¡,Ìöw¹"¹I +m‘÷?»I +m‘ +üÓ›¤ÐÉlœŸÚ$…¶Hn) Û¡ÎC$.;z×Íw?ñ9ìf0£MÆ®§f0ÝŽŠE˜jØ›r\‡òm#‘lL\¼`ÕÑs-Þ +Ðe[öB¡LàÅÝÈœ +ÐV"3z™ð”ïEj¾yí¸TåRÇ,9[†¨Oî¨v¼µ¢ž‰Ü²‘Ä}Jºý»€KBÅØJï ÷32Ur ÃüÍgô’J~“–ÿ·*9¤ØŸ|F/©älÓÿJN]Bêû?VÉἈ¨ÐTÉÙæÿN%XX>±ÿ+•®1 ”ßUò3eôi¥›œú!Ðk)+szê˜nجè¸Îëã¾µ"eƒ²øzt\¢ÛN ;Tf‰“ RwÑÜÐoÜ3S‡d€×¾€bÜ:ݽ½´´ +Š$ÌN5~Údv~Æäø<e„£,V‰•$è†RŒÍêìòžé¡GK…¢lº ´Ðê~:f¤£Æ?QP)k·S»Û¤Àqð¤>¿\°{˜˜ÿ¬v…ñæ'…ýõ¯
ükÿçúçp»Ñ^?xà†O….1>Ïõÿ +;>´ÆOb5½¬ö»ñé?ÿðQ§Xhf‰tÃà?è‡mš‚çzèy‚¾
¶qð_çÚø|*+l›Ãév +È/<†ûŸÀ +ŸèÿöÉgŸþìóß|ú¿×ßãýOþ¯?þþò¿ÿÍÝô›»vÿ—uÿ«ÿñ
ž•¿Åg¥oñYákŸõîo%–X xóækC‚@x*Þ¾ÿä‹/þ,Á`W~½dø·ý?áÝñc#¦ /8„Ý·þPFK½[∈7é÷eay®ýþòLí¾Ä‡°P¼6Þ¨ë_—xÊõ¡…Š8Úú·55cýø¼;®YÈÌsí‰ã9±
3ò=™w¤PÖÓz9þ=ŵmðû)L^~üξf¿Ë~Îñ¾§z»vÈ/¯øŸùèõ×¹6|Œº¿6ýÛ¯ñié¡æ÷Ø›Ø?¿”‡ÒŽ¿Ú[¾½Û#1¯;îðgà'×4Ùl쿽ŗåõ´8O—¤Tùùû1>pü’Ø«ì‡ïzú˜·Ï|¨OÂ?Ü=3“ÏÍö¼¾Á3«v]ÙÓÊ¿½{OÑs‹°·wÏ¡ð)RoVþÞý»Ï¹™¸üXJk«”Ê}|ÛäPÇÀù[#N8Ší¸þˆô#V^VþÞ>·su=Ó—yÝ>—‚öÞþZRð[—–”ü}ÎãMÌã7ž˜Çš˜Ço>1wÏ|ìyl‚x]h#7Œ•ÖøÂ}m¶Ø1[!ˆÖË–šñŒ™×Îã}åaA¾áGÊœ|¥µK¨x¥4¾cMÞXcy=äÆWeýkª÷9¯÷Ñ-ù¡§¸>šéÚ Úœ3Œ¥fö‡:'h}4þ”ÚÈk²5²$jám}®·c¨!½òú®Ö8‰½ó× 0ð
ùa®Ò¯õuÛÚ:5=¤Q’ÍÇÒ ËxˆkÚïog3½..-•Û½ø§o.X?@°<~`yü†‚å¹õIø÷µÏ’zÉé(…ÇŒì¨.±ãV«õ¨!k/ü´µ×¼ÏÊßšP•øƒ#Ï¡‘ž×¿á‚Ü›£gà6÷€O˜Ê\ð…1׬ûj+^×Òû}ic1V®øx(evŒ„–꣄|Ú\)WŸ‰¸@&õ鈕›½™†ó-¹ÒÖ¾ÃXšÖz®„‘¾6·äÊÀ䬻©>ôÊ{jNI_1ê²X×+,PuÉŒ”—dYŸ±¬¸®ïÈ#² +¹¼ŽW*$Ä\`*êÃZÇŠ‘ZG”ÌH}uäÒº6d\$SYKY}¯¯Sb¬i¥Ð¨ë`ë„óXzŠî[3Ò×'f€£âHâ.ÍKçȱ!ÙÞ.Ðl3³i$®™†ª+í»=7¨¶A7µ0΄3qéâimãû¸vLò3qm4LÙÂiëuq(öÍ{Auaxøž°,½R“Ž-GïÀ^™ØÏàc½ÞRÜc)U·A»‡¦Eq·¶\N¶KQë¾°ks¯ïÄê¦ýTÄ‘]©úÉg‹äXXŸRZ| ¿ùP›G½¢ +KPŒµZrGk(¹ÞòÁ3Çd:c~Ôä…Ðud±¥Åòm¬‰Ç@M¦éÎub¤,µÊ!Ÿ–nÃÅŒ%ê4É-Qÿ®™8]¯3Ó"\2ºjêp¬ù^Ö\Óð=a.|GÊtŒ´€ÍÒ´ziûô*PÌÖV¼ +¿·„ò}\ª™±…ðÖ5ë¼Ê¹êkg>ïëAØ-}Nj÷ËÐ̶â#ó[Ý‘e3`B‰®®a½ÖûÆx¬ gòX¯:ÓxÀ<}¨M‚±"Ús)ÖfNí1¼Í>èéËÂ+Ûݽ¹¥ª±e@&‰Þ—們ä&NS, ŽiS»––OùL
N0ÌAÀÅ}‰îJËʾá²HZ{Ó´z]Ç‚åóC#©dºJèÉa‰@P9yÄ|]?‹IÌÓ´Ÿ‰oxtkKÆV,îzÉu¹Ö¿d8ÖþH¹k¹×ÞŽ<h–"ã¨ä¯éï•zŒPI
¡EwÝø4‹5°ç^*Oj“਴ˆkÖñOTz¬Ÿx/Fawãr +g™ã²ãé#Eó2„uc ¸†P .cIÌ=q±<@êÄò(k%—12Ê$r.²zós½õù;,Ø4,K¥Beˆ¹dê\/€ê¸uý¥Ü6à‹êËz¦úÀ²´+5Ù…Ë´þH
!h +Û”×*ð0Æ@2e½e3m©ù/TθEe,8êúƜϢ’Ö´{¼l}à8|
’òü6I³[ô˜dðY& —I±&ï ’³Cr¬ƒã-5å:Í1P¶O«Ø+,œ +]X¸@/fèÑDeY¿LU£´";’×,YYÒÜB3T”õùœˆ•c¡2x/œ-xRIM½ç}öC;]Òrà|6
a‰ÒuµCÏœ§:‚9˹ððÑØ:\»ëç–ø¤ÝEvä@a9gÜÂ’[e@·ó¸äÌãèþfÕZ{¨¾ +Xž>Ô&áŠKê“xß–±“YŠŸäWXfØ-ùðÑ®í—׬æp‰1ñª» Kê\”0]Xò_Þ #¼™ó›Å`¹p–è¢uÃ’Ðà q¦"TÄuÐÃÆK®=`Ó>ú—Ý>a<5S\×9²“ûõ/µK¦iX…š7,sÌHßx¨†¶þ”–J™a-ÒI<àå{¯me‘ŠÑõX˜G7X®¯àÜU6Çrµ2_CìàæCm®¸ÔL—ŽÉOîqÒ˜«g`N(dÌe‰v>ßÂRpïã[_Óvð -JŒv¯M:ÕÒ”"Ù[eÔ§u7]–jÈ@ÝQ6wy}Q^óò,—aň–ûï²äî‚e,£8,yR¯Ã˜îGþ|ZVò=€žf,sª”Ÿs‰Y×-ÛZRÀ2
†¢,3îËSn +Âr"ͱ1Ã%A¿„°¾ÁåªýþfõZû)¿ +`ž>Ô&Ái©bYfN<Ÿß¡%¬?1ª%‹}s½D-ÛÏM®13:—Àl2Cá·ÒHëKPrQZt\ÒÈ… ¥i +e2ùRÖ¸šÜ1©GX_ŸÁVÉ4èÄÉØ`j&ü™aT˜‰8äðäï¯Oï +¤úð,¡š–=½ÄåÒ.‹P¹Œí5F‰P=×ì9T Cec/=&æ(`2ÿ +HR$p‰g8`×m=J<#F‘D°Œî…°.;œj(²I +£7‰b’àfíô ¿L0JY +„z§þû‡¥N)lÀUÄ©XîFõKgy”úuÂÑLsã¨O¾ƒù;jrjª²v€#ø¥1²O=hÈ$n4'2Â
×
O´«}ã(¦ÀH…G˜EódèÜ튗@ÀÍ>ü¸KüÒ/ƒw繋üû¥ue”.3cÌ¢D+‰rjMtN8šëš€*ß7ӡ׫õJC£%¾ærX:c®”¸©çŠÖ¤)ß?ÍyH$.¿¡ÈSdÒêÌ4AݺÍ&¶ž"i®Í¸‘d()ò“Iˆïâw–1¯ÇHÙfîhQئáÔ‘
VT@‚º‰Ä%$Òsî– ª•Iiqh"¦ÒÊ3Ò›A«Íõ! ÆõØ@ZV(ÓöbîKd0p¡»Zfã2aúúå%áL]¤+P°Ž[4Lð¨ƒFéO$^[¼È†Åšä™:»-~/±4[=ű W,•¥©È•Ç?K2Yü£KS¿ßEFg0!ºk`bDNæQΆ“¹£t,™ ¸ûFS«É0^
M±Ç"3VÁµ¢&¬Ø±¹Ôô¤”ÂÀp‚²³¼"Œ>…/8?pÞõØý6æÌ4¨™Ê·^pFä®m±”h``d¦?AÝjÄ™Ž2¼wÌR$‰T +®Í@]×ÐF\e0NRŽYæXÌ›¬²ÜŸÀ‚©†qÿ °Ú^Œ LC€‚Ù(™zaëò¥¥T$¸—¶SÓËÓ¿‰$¼ª\Á%î[ £¿@~ð‘r‡Ä…‡qä×Õ‰2…u6(JÕ£)˜+ó…"ñi¸8Þ)¬H|úÎæ<¯õŽîiQç©Ò"òªæ£w^G¹P0VÜC6ÍÐcç×i|¼. +}í·oýZG{Tª+L“2½@)úº =VËÚfUhÙ1Ó5àFôôðûeίŸ6à ïq)¹‘LÚ…<¡4¬»ºr}³T\$¦¹7¼£ô¡Þ#Sù¨)–úΖem:z*±çéà‹ò×׋Í!V:×b*ÓF¬©Z¸….ð¯õl85L[`Ý5t4#!6Š¯2äŽÅcdçÉ·ÕÜ»u‡w¡ý¸ÕVÕ*ï)xÒ2d™’é¹ÄRÉ(ƒ¨IÍ"wEˆJ°Â9:Y·‘Æ°XÃúÄšÁ¥ÁAK‘²Á³F»p ˆ=™”S›ëiÑëÄ.‹2¨ôuÉãöÈdéQ¯aÈuf«Õ–“´Zý,~ƒ…]šÝ¶V.¯O]c3(pwWqCÍ*¬“ï×Ûa¡ÈDeÅøP]¯²*¦¨Ð`sJ¥è˜¢ÌкU?-øŽ°,žÜ=?rô²NLð¨Žñ‚ƒ6Gi=<7âèИÌ=‚Þ2aÓÔêšJ™Ÿèc·°ef&ME½ºè"å¹î¨AäÉ]Û«Wݪ¸AQTHo!†!8C“MáJàÉKÍu¢¬Ï¦CV(‚y|D+ö[Ó"Š#ñ]{;GˆjM#JJ\€©u¯Nç,ÃÜ´„Ëê †Èüù-Xê•dk¾ŒŸrYS’š!tí¡ÎÚΩ‚‹ +µ
}íxŽˆT¡vvÃÇ3ÒmF°“‰b¢ÂDpà@õè–!¶’ºv2YX½ÛïŸ~õã\MƒIäòÌW÷7auµÓZeƒ"SŠJßÓDEèKüÇB?ÏgÃY’sŠCÌ„>°V«Naú½Ö¢@£éhJwd2ÈÓ·¿ªÍßØ]²V¢Í³1ƒ5Öôàõ-ݽY +i“?ýÆÈþ2|OÆñ!œñ4‹Bþ˜?™•…ÀšíõüâJ8ý¼«ZÌÍŒwÍ +ß¾üu.^lîC/íü戂D‹ D«dv»fvO¡êªÊÂØ {wB˜²‘ú<OR–Høåó¬Déþ'?ûü$"Š÷}þÇß}ôþwŸ|ñ»ÏÿåçŸþñþþ77¤D‘ÜGFtßó~;Ï>ü;}ó_-RüÊ}þÅþâc2·ýÅÇðZ,½s-©ýùâÁby!W‡÷ºF6¹›`Bž
1Ä·ì"¿]wÜQ]Rt]µ¡ÊwÜb/…«¾Œ’ê£?üáýqMãýGÿöÇßßÿâ“/þøé~÷ÿ}úW ÎúÚOMäšèßüþŸ?ýø£ŸÍÿÛ?ñéþýÓß|ü|ú§uÑšïŸ\áò÷xÿ“¿ýýïßßÿåÿúäŸ|öÅñ¯?ûüwüÝ'ï×ïÚÊ¿òŸ>~úùz%
¿1õ'¿øô“õ¿ùÝgÿí·¿ýâÓ?þZÿŸù§_ý•Á|þ%õe÷ù§÷÷Ûß~úøÇãËýŽýõ?ûü‹?~òùã§ÿô“?~òñÏ~úñÏ?ù_õt‚þîúøoø‰ÛN˜ŒëòÏÿù}/…X +÷¿¸†4qýꣻW_ª?S¢þ<}q÷×gB²Û·þDÇLE(.h†uA!ýÛ:˜Ë0+.IJƒzú1‡õöUÌØ‚¸GhŽzçI}g™î±lN +>‰ª9³¿Iö%™>b‡Bj¡Ÿ¯BZCLòP
³îù} “è~_PøU¹uï¤6Å€±Š"\;† Áçú`P˜òø9ÑY‡#fWÑÛe9-*yúÿI¥wŸÇòƒe6åè!4G=ŽE”óøˆ9Þñt•½u‚ÛÍ5D.—ñö™Õ}÷Û»¿þå’•Óä≵îƒÉêø²8QßÐ]mÊR‡ß a:-®*EŠh¶Y«AÌío£ U´ØÃpæVÓøk,µîe™ ¡º¤Ú/ðýè):w1Ô.?†1èRx)Y|2j7¿ý¼/§¥{f|¨íä#…ýZØc˜Å†¤r^ho§vò··åµAØ^ôÅg!ñãæåmà©2pí‹àöÔÔøsŽ‘ãçöØñVûIûÕ/Ÿ÷ö«ç@õwÏÎú3KSŸ¼Ô³ý
·y{÷SÏ‚îéŒ?â+Ò¯x¹Ù½€îäG„ýˆ°çö÷çYëki£ƒ9¯ä-ë65zn¡sß×Tsc“©LžÁ`NÅg</ª·óŒÚVO9=ÆP”{{ÕØgéù?t}?p}?h}?p}.³rƒçæéf6Q]¤Ál—Ég‡¡äÏJ-&j~§JClŒ#Kù±‘˜Ìµ™Ê‹êþD–o‚Ê÷R>&}œ(u“çy*ý +ܨs +ózî`¬8hµ_àÍã?;›=¬!o»yø©`°YÖ^~`…BQ|Mj`«#}>!7ÃûóX}2á’%úPQùøa¢òñEå㇉Êǯž›©—sîø¡âçæréúÅ0ÖPeZ s¯Šñ{ÔÚ]9%TQ(åPÛ"~á8ŽQçnêqßÖ`µÁd?Ag¼ö¡ô^Mî +ÈdJE]<wyÏf{0fØ$°½°%öoVEà0H?º^!8H£'81;‘kMy”Ó¶gKáŽ\u`Ç°^jÚ‰ëÖÝ€n ‘£qûpçŒMž}!,š¢‡ex,Ø3±Ç—Jþ2þMÄÕì>Kz1DÞ#»µ2¥Ó»…“”o¼¿O:)±…<‡ˆxz8ufÅBŠqj‚v±gÏ\€tÁ/)d^ù¾ÎÍÔK„ŽÇAøÚnÍäµ +ª
L§ƒÂá)íZ܇s,×ÝP€ŒµrU¹€?„ÕY77£œ0+ÀzvHºÜ§±ûŒüPŒ(¯<=$Á·£`ÇŽ{ÙQÉ:I°zA[1QÌŨéþÉì\W$Ög”ðW†ÊøÜD½”=èxZC„ÛP©Š(¤) +7¡î5ºþ•¹µ +†N +)bÂi ª9rQÞüƒ÷ld¤’#»5h'8¼«‰eöÕ˜\›‘"P£).¤Ä¬žH•,DúØ|h#1Ž-POü Bsxy£ð4·CáŸÌ‚Á2[v1þ¿ÒÝ5{±ËBY”øUƒõ:6S/§:˜Û!KIùÈÁ1
¬%µl‡dÉî=˜ÒÜ +ÔE{ã†Y`S¸`•—®›ª& +‹‰Äضn?šÄEX׳¢P>‡,ÃucR,€ÛÖ³+R¶ FÌQܼҳ׾´Seà„5Ìsÿ“â…ÇAÉ–ßÄjMUâk›‰iô\=r]yšô²H_2T›ºÛåÈãÄ^×3´üê1}™›©SÏ‹ÝqÓÒè)t¶c°FÓûXK¡îÀG
¸Ã‹–%L´2M +–¨æ»½‘‹¥è¢è²éx\F`:y#†ˆÄîÔ¶
;ZÐÈÚ«[ç]Cc±o·Ù´93ãev/kʤµWŽëëØL½œÚèpnOøcØÈÖįˇ)®pö÷ÕÈœI;TÖç°Û¸ûÀ§µFj&…KKrŠxØ…5·é;É&U’Ù³ëßæŸ8¤¾u Y9~1ç.jàÍ;1BÏ–yN×UÐh‘'Ð o“6fõ|*š–Ì2Ý~C±…#ï:º¿‰©™Ô s½Qmj/+êT7¯Õ×9°™z9/ÒñÀÈ·«ËÅ y+¦kÙ•˜ÌOTÓát+qNS´‡kÑ}‰Ã¸¬.ðØ$™iìòA:î4´S|#B_ß?™d,&+¡(eÝôD@>{ß Ž.7R2{&_î2j+fSÆJ•¬[¯^O’3»mû˜‡Äwö‘›™½,([ݼrP_çÀfêå¤JÇ©º¨ÎI¯ÛC4P7_3$(šë¡šb9Ú¡IÄ`¨‡y×›«ÕÓ€Þ˜Q
Q,3R˜eÀtŒL“ÕªÑ ¬&øÅ&OÅ:ï[åß^À–ëK¸KÅÄ÷4i-ç†À<cÀVò=5›´fé>%G‰ÎKÛ‚V‚¤Ên26Ø$n45¤jè÷é_ÖÕ)'_3¶¯s`3õrr¦SŒ}ôx¨!¶¸•¢ö_[N(.v›Úía§qŸî¦3¦8Øû°øBœÍ–L¡C[µ×D6Ô›s£Š*“[v|¥ŠÜÈÖ{ÙS1à-QÑÜjJ¿¦t6ˆH²ª¡èJæ.v3Òœ;¼‘m‡0‹aœšËX¾Ø.¢ˆ³{³¨eóÑ¿^`?›©ñ;Ï:¥Ó0Å–bÝ㔶ÌÑÃRW]“rßRhÔ9m+‡³í„C'™·d
·šQŒ¢5±p6±2ÑõfÉÕÐE¸Þ“BÆQp“«Õ†•O±x…W«æ©GIY@oJê š2䘸åÌJR£] +…r÷/Íbª@qVß^Ö¤—P=|2µ—µìãµê§s ‰z95Ô9ÓwPÍÌï©[kpź©ÐT¹ÆyHn7ܘʋïLŽD)”Ü;ÀÒ{3E%mp’~…n•Ø·¾‘d»1ýÕÔíbÚKõ”æ:’k/Œ×Ñi'»¼BæÇ#‹³»ºK-¶%†ù¶{eØ;aÍ2k“ØgN/äôãÕHÑ”?[f¶]íL@yœµûW“J’Þ°ÇàáD©®«Ï!oKs„uT|Í{â26O/æ¥:iþðNû–`X·¥%¸åøBo¥¨5©žAÖ²R}í–•–ZÕ—KÛ=D3ãå”Ì*±#¡æýH°LMU+kÄÐŽ:¢Ír²‚½]SI,O‰l¥Y‰”"LðH[ÓÊ…~•´ƒ1ɼÜ8%̹Éغ¶MßiòetsÈÌbUœL®‘%ì%Ì#›=¾©±°oÈ´NK»ß@v:ýÚ²å’i{ÿÕéHN¦Wö”„ÁuFG³2vë*3»¾”·HeµÒì +†¬2°ú¹+ñHŒdoüѬR¿6¬ÄM7MU +F+4“š·:4éÃôëùÑÜ$@؈`ä•px8G²{Lª•p¨*‘úÞM.+þÈ,®yèèQÛÁ)!N 3èÿ0@ÇÆOòbº¬Ó/€½e+ÄQ¯–«çÐ-à
u‡¢Nñr8«ª¥x•K¯ +8Ÿ6êuE^Jç%E„ñ©í^ï!>öðåP‘3ý`ßkŸæçðñM4 Ü›Ák +S(š¹àVcž&œw;^7 1f{ +ææõÏ^HóÌbÙêuà¨^(Ätõ9kJj•’]†çÆUi(6dÂ*mhkQÏdBwh<ª©KPìÍéXÝ&Xâ‡:>";ž¬øJK±‡IãPÛ¾ŽV|°5›%µât½è™ ~)×
ܘ¡È +Õw½`RsÚun'-Ã÷6!*)›Ö‚EÔ +ðŸAC/s÷ o'T©}Ie¿‰|<¤Å¸O?Äkú8Þ…O©õxÛÛïù2º¬§_ØÌbÑß‘_½.øõúÄhtwÉÔ”ÁI@¿§&†Ô›I5‚h43ïü oØ[7?²ÖM-±úw_Ò‹æ`?ÅN?äCû]ôÓÛOyû¥ßj“ñwO'õé´'oñtù®|ÁÀÛ»§0y¤ÖÞÞ=…ãÀ^!paÀú`WÅ yE ùûã“£zÀž<ˆùþý‰i‰ãþ÷~ä3žûø!ÓôøÓôøÓôøͧéñîK?ø2!>eº£ÈlÁÄ¥ªkØŽœÉM%³sÝ,"aFk(%Ýg¡Ç£r幬eûá,Ú(ÿðèGËåç¿4¬å$ÚÞEô‡@u»Ô••Æ’ø9ßä bâXô™–ä‡Ðº¶-Y‚&;P×Í©©„T©4E¾×Ú&åÞ¢íܹ¨.bg9LCbƒ›hŽgôSÍ’J¯‡:ö蟾±¸yüqóøâæñŠ›/ÿVŸYÆŸ–·û‚Ì +š¤‡Nn!~ÚRÆ÷ÿ*ÄÇå[}6œ¢êC¹Peˆùë’HãÀ$3“Yu_v(a®ÅkZÄ¢ÆGÌÿFO£iéíHöb)°í’7ýÝÂ{äb/Õõ\ÿ~l•ž”YtŒ£æþ»¹“_ô¸~ðuBNSF× †‚Ýf% n%°³N^ÀLÜ•¼²;€å¬zƒœt^àÕIeš"··>¦H62†à +ä1ÄnÕ¿¹(kÒ•Ó”¨ý9É7’FS[¾BQ*£ò¦±£#ÛA==½! +0j<)è›4¼&éH‹›oõÙx))¥?®"L]Û@pAô>ü +;²Ë+%†-ïªzþÃbE¥nU/t;¢°S×Ì¿0>TÑÉ +§˜úìáï,rOI™0xŒuÓŽU‡¢ ¦Š’V•GIœQ@jPƒ5´cÇñµ~=ñîh<ËÈáúͲö„R^ò×›¥K¤$i€c® ,—´r¤æŸµ±N1¢‹vˆÚq{žƒ‹ ’³Ë¢œP°,—_ào?ÕçâeŽÇÃÊ …öˆd9Ô¶(¿Ä¸r1Puw‚@ÙtVÏÍZס÷Ñ3ÕÐY¾D$Z¬¯Ø܉MÅÅ0ð”›[Yg<ºÄ2G©"Ï"Ü¥ËA
Áž×ÍR¨ñKÈñhéQî§zDó$s°#¦½¤nl–Å—²˜üÐÁ,QþCÌG6²s
,OÅ[,©E ÄGOã+;OÜÍ2)0ÿ: yó>/ãoô‡5e™™FJN@‹ˆ„ +w¥ô,T7ˆ_¢‹ÂÊv²=‹¸MyÛhlB‚p¸A¬—ÝV&°u`5L+ÎÁDA±O›…ó•X·ŸêsñRÖÆÃűÞwƒ’2¯Y{[ ’ZÚˆî’hÄèZ¬dR2†Á¶Â*îRÊz9´ªd%*ürvíÚ<ÅsæÐ窂˜âpRå!D.œÓFL ‘kw%À‹í2Ym +ô+0€PÝH&E#YrTÎÙÚýuânVjS„¾TÞ|«ÏÆKÉ
¾%2)œ*Öj$¶Îcï3oÌÑ0¨*cf9Îü¥DF ‰Í¹É¬fè|Öu™:ãÚ™:Îï"ç)t< +½ž’…ù…È0Ì8FÖOÆlÕ`Iä¯àÊ"ëw¶êiÎIF‰aûˆ Oçñ½¤¸"¶lhòZ—X—#LlHÒØT¡æͤ ™££¼@^¾Õ&㥼„ÇÓÈÊîR2Ûì[êaœ…ר2KwäÊÐÛÎ{&.²je¹Â,Œƒã'*»"%
~ñu€Fde+LÅÕZ–¿€Læ@ŠìãÑñ9+µ]E@ÃÓ_@Ê÷t#Åñˆ?Š,ÅT_djᇡ*$$„ò®CñEÛf|W¶à?7‰Ç˼¿ÎÛÍ:¥òJ,ïë·úl¼”PðÁ¹oP²¸˜–U02T¸«‰8ºèa.°ÁŒtãB/Ö]¢ì´ºÐ‘$E£ ±%Gƒƒ(ÛÊ7ñE¡b´h…†DêFŒÙP=g¦ÜÔŒ¯Ké\W•3ä$Ø¢èˆ"»!*‘&òd|?FZz”£„%Ó>¬2ì°º a©9ˆ¨Ã]NÄýA(‚%“a>ÎnŸ¹›¥2B WËÛoµÙxàñ¤>vF +‹ÛØU˺—%¸Á\¸Ãú=ÑL’el j8ôèîŠ×b—f:½aèuZ]pD.5‰InÝÀÙS€Èµu:9@Š’¬z[Â5¡0]šé›ªV”Ýeçá0ºcÈÃ6/£eRä¨fzèQ¯'ùéT°—qðÏ|Ïšt_’²v1»”j›¸›Eª¯èì¾ýV›—úgÜØP‰ú<úAŒ)áÈDx2ÁtÀY!T'…9þ«QWBÃà-ëÔ
N¦¤¬~L^C(œ±Y¯Ùšj~S·™H1D ÐR÷$Ü W\¤–$„OßÄ$™Ð‡Á½ApŒâåXºÃ;Q#Úȃ ¡8•ìØi¨DtE(6Å*£¸b¯w³Rmö×Oò6/¤Ô; á&B=oãV,\Lúðl¾:uj##]!*[#™4xb’Ëd‹Òþ+v³–‡ºšÓ4d‘,D!‰‹Ôk€¹)o¸´¢ö“DRÕùW–Ä…!6U.Á‚ÛŒ¶ú¥5ý +š.4&V
UõÈNò˜¦Nò^1#ïL.ÑfÀœÇv#ßGxÎV³UÅÝñ¤Ž~l†P3ËD&ó(¹ô-ô2@4€7I,Å +‹QQ
Í›Ó$µ0PÀ·elfᇒq0è€'tÂD2´ Šv3ŠÙE$D¯NʹƑ=˜àb§¥^èåfò3ˆ~K³ +©$¦P'ùmRT5c3ïª"
(`ÿiðÄKz»~/c’ÃÑ“¸ˆ¬Y`èpÓgª#1M}Ó…‘OÇþ0îê€Ñ_¼³(r;ÈoŠr1m!é +YrÈMdTùåÒ$Èõ«uB¶î:f¡Ö¨š]úü'݉wšÑ³ðØ´ž¨L5 +<éd.Âe,cjE5üÌ‘ž2k>HlHð¼¿NøùvÖ Ö)½…:øgL›&ᬹ¢œÑ¹ U9DfGUÊ£ÌczVCrt.²`öQŽ"úE + +TsžCIHÁFÍìbPmZ™½’î@aˆê!¶œÃCª pÑ‚¯9…ñÂtÐÜÅ®ŽJö@…Ÿiú¸¹ˆ+MèÀŒkÉýˆH¬Yö‚oä«ŽT_‚5>9r% +QYË?ib€
€Ñ¤ÖÀ‰^fxðŸœAÎbOtó€¾µ¡9Øõj·³þ+>TñoHgŽRJCÁ€‡Ð™C§É-¾`B*2šž0/ø9‡°F‡!¼ÞÀþÉ3d”…mrn †€ÿ"4!ô2Ç“8Š´§™TM¦&Û0\ó>Ô‘^6DÊ@Gœ…ðëß{Q¹Kµ@&¾¡^®ý;¤%Œ„˜i
x[E]³ìlJÀ^ê÷ +5q¨Z2?ý2‚*s +×Á1{Yrt[ +XËJ§ å6?¤éVËhæßæ¢9^3DTXÍÈ~òò/ä±+`ìñlQ Ï
u2ø0ÀYn‘õ¥µÆ'îWØÀÇ\€×tH*™%‹˜^N7Mw
P5ä¬Ub[IÚ¼xÓl7¯þRººgm(ØéÆÔ#2/i*vÛ³#àuK¤WÈ¥?1$Ÿû®Éç (íœüGTž·ÿˆQ|ü‡4p´èÜ]¦P=.ÇQl—ô*_@ž÷ûr’³"Ô£KŽ(
|Çåz—}Ü·¿„?Îðþ=cË{b}ßpÜw‹{j)â°qßI×E*Ò3C°ÀÛönß÷t ¿óvÄùšÉùX6a…q®Ä¸¤ž“"w_ƒ”âx30ôÔ,“Ç;I‚ŽJïî”6‚L+Tý¸,†PÌ…Çæ{9î¿?Þ‰Å)~ ¢nÈ~©žŒÂÈýÔ8aþ݃öQÓZŒd$”¡ô›=áö +Šî¶¸qaÖlÏ ›çD
/vQóµ‚ækÅÌ'6»3eœ#úƒyã؃ Xr<nüìN¥>ô,Wû·MÙVÕ&IGÞ¹ +Fü÷.PŠ×6Ùð§vß\Ú=~ˆ´{ü i÷øU_m3óR"™ý¼,² •ì ¸ì"q¡fÅÖ'@
£ª‡©ë)e½Ù +ÝJ¿•NåwZ†ZÃ+Ô^._m3óR¾›ÓóXª.øÑÊÙÒ˜ÿ8LUM1Nþ+¯Qĉ¬6Êš\öÙxϱ$y[ÕnŠr7Ê·8«é:ÖÌñž¸5Þ£ÃÅ’úÓweM°ø4vƒòP«‹©Ï¶¬Ë`
µ(ÿHe%4Fzv
ƒ){Þ†—Èœ&-ü2M·K£Îã¯
—¯¶™y)ÛÍéy¬:¿±Ñ³7àF6U‘\!m„¬v“!Ū-ùÓ™UÿF#Êð;Ô¼(5Œz@“ŸtMfКÆYÜ.®‡½‡©œ5V׋լvëö ¥ 2Õ,T6d6£;YVÏtõ¹9?;2ïìˆ!cé2¦ÉÊVÝîn:'’;’Òåd6ÜXÞ6›—dù«ÃííWÛ̼
çô8±¹hðÛŽ¶è8´ +Ílùlx
£÷À¢‹1[C bRÇTk“+ØYc°eƒ@BÙ˜ðÆ#™GK¬öP;Ëvd
ç“(‚¶ç.RÖšÏG¥K°ïZñˆÓ$×fŸ”ãD}%K)Þ(×ÝNú1¶?#Z§å˜ÍNç÷²4^xZ>ñ—¼6Ð^¾Úfæ¥l9ûyIÎŽZ7 +FÛ²Âo»T¢Äi‰nj™Ël÷ò™èmî=R
&l¦í7+”tÃýƒ$–m•û[= ×–í¬iÄ,iÈœ•ŸB»uÚEI%^¬mõ>ÒkÍ!‘,uû:“·«K}…˜½|µÍÌK)wNÏã"š¨ef,Ö…|ÅÀj3?h¦2¨™6ÉìRe»²U_½_«¸¦)¤.øºð#&M ¶dYl°˜‚¼Ã,0 ÖÂô³w©®“°!Tt/1ø'Í#«‚
*Ò¾‘¤»G<TJâA‹¾L&àÃy5Šç*8j+òWÃ${Ö˜»÷2—·ë^¡zpóÍ6+/åã9=/íp¹e¸û;¶!ürÕO²6É<4ød‹ ¨|5 +ê,‹¢h5÷ +xYæ™å£ÍY\CI„ÒÉ›
Mѳ£Ã½æÍŠF=I}`(0hòÍDž.ä毮O¾šóòžžÓƒÎ©„èôaÛÃâ´Éåðîd¡•°55v˜ò'›ÜÛÞC¹ŠÐÒð3~‡ÒºÇ÷,ZµÛÕzÂRYhŠ´ž§•ç©öïº1_D3£ì•PZš=¼
y¬êUÁðœ\¼$[ª¢ ÑÉÒY +D7Ø0›kzXئ¾™ËÛ…ëÏ,í¬7ßl³òRŸ“èæIllËÍ–" ±Ò`“i2îMàn˘•ü<IÕâÄgÉ!ˆ³¥ã¶=‡˜UŠÊ³?y— b!æd ~¹O +£úƒº‡ Õ%’†‡•à½7_9¹ +«5[à{ZLºSšdkâ<apmáÁHƒY¯ßáºÉõX½GœT2ýT/¾g¬[9ÆLŒ¥ˆd£Vàæ³DÞÛÙ1Ϫû줨îÎhÖ*s±”Ù ¶ÚF·›T«¶•·8Œæ5‰å3¢¨ˆÖ›-^ÖÂðø±9U–2I¾9oóľHr,q³"}ôʺÊì:9•luØdz»b ú}I˜hÒ¢søá «àhí¢‹Õí‹:óôV/¢z}Œäê³í¹lZ˜]SüƒÌQ9 Áš5=Yo'ZúÀ>êŒ{š¦0ÀÓü™âh5ž$Žyn`f;°YØ }f¤ÕCÁItAüúhŽ^KR-›¢…ÆV3÷l6›è<¨XïO¼Ê4x'ºAÛò¤ÅÐ5<YQFÙÙŠ;)6™iЛù„5kdx®NMî0ïXu½*º^FúÝw;m/d
aº¹™-&_«ÝØYæû G²ÝÑó•†Ñᘠ·ÃÍ9ŽxöRè§UœL]C¬ŒO©b4yÏvÊÃõÕõ¤M +öâ<«–¹ØÎÃv>V«zýü+ªp-N/¯ÈŽæê}Qå~ëìUföÛ|Æj)‡ÈœR…É_ä©’³,«ž²&+Œ1$¯Êg»·iBÖÜgîãÉ»õã,û>‹¼‰Õ˜;ÓNJ%¶Dï°fEšÀ®o1(Ú&¨pì*¤–ÈåÍÅ(˜È]lÌK†v®;è>™¥0·0~ï‰<ð kÆAX(Px"&+×yÕ%+Ü)¨¾ÊÛ +Óc¹æVˆÆT`y +rö[”·ÕS]›ÄuUµb|°¸EÑj‚‰êÖvL6ÏsPBôI+¢>6-g/i©F“«¬‚Á’ÕÀ°hÂÙÜQ-»8V,…!W+ÔIžGyžÊó`ŠG¡gù¤Vk’k³Z>ü¸”ÐÑÜû“ð„õM-ØziRl3(˜=g*(~ekž$j±Ø$gØTn¾ã¥4=_b~©5s|àL3Ý~à¡8{¶jíô ISƒSpÏDò"ÌàÙ—Wú‘Òç;¦ô!P›8}Š©òÔéŠÁaOý‰ºø= y¤›û?ÌÓ-*P±«ÜŽöÒ=]ô¬õ_^µÿ`Uƒ°÷úañûÀ®K³úzÿ÷‰ÞçÏ ö`k-âB3ñkcYM˜ÞÙ¡m&ÂÓ±ª¸Ï»ó½ÏqF—±ipÌä„w£Y²“iÁã(€ûa¿\U®·¥RåÇò¤Çè;{µ·W¿µ¼ü0™þ
§HµÄh|D§L9ïé*¨›Ô §¼Ze±löá鶖LŽM;¯ÙWoZ½3°tö_ñ‡i¶ôžÑªÇ>?vZ¡}ïscIÍÞ=ƒ£ÿ9XuÞýíÝ_|ô³úñß}þ›wŸüéÓ?¼y£¿ÿí§ÿò»Ï9r
V0hµë{×ÿ†ûŠÁwÿ|÷—ÿý“Çÿç“YàÝ— Ž_ýüÝ/öÓûÿr\û7”Æáãuõú§ üÑú¿_ýÇ
éÈJ†û{ºÙ3øŸ£f'·4™–k'\ò]ø×5ô÷åþç÷ÿøOáþ7ø¥_Ü1Vˆ:’ØYy?“I‘GÛ‡r÷Ä-¦÷žêœ]uA@ÕÚCµ».©è§žÌÌÇPmÊEÕo<r¾´,õS±µéT¿^>ˆ5†A°k_‚×aNÎ~_Ùr\n¾ëKYžù~ÝŒ"˜b.þµ˜'±I|¤š-x»GøÚoLßOɃrü’
¬»:òFÉf׌jÓ±³Gü—öÀ~™ýßë7½ýªï¶¹ù‡»g&ú™Å˜—×yfIŸ,ûoïžÐSÝâðíÝ3P} +ç§Ø¸å^êÐŒþ‡ÛíðѸ‰Ûê&ëýF?ÂHÔ@ûëÁªbÈiliÞ¥==+z0×虉{ü‰{ü°‰{ü‰{ü°‰{¼ûªf‚luÖq,ó®g/ÈI™#mw¤C<#§j5V[â÷h§ ;句e¿eS +¨}]Lü¸eqâغ±G)ƒoHпtˆÎ=ÙRØa”OŒÕ5)ü¹ <ãˆöaô¥b¬ +qèß«.Š‰MR’˜Õ9»â«ŸJ¶Ã4•Ì–5#qLõZT¨Guò+Noa"lSžnï?}€Èzü ‘õø"ëñƒDÖW¸O"«ÃK7»Nìd°Ò¢ì½¦ª£›“a½T *
(¯–¼È¬]Œß€&¶Ã{Í)¬ +±2»ØóÁxŠ@@DCv$μ§øi0Ñ0¦ú +tl€8`Ì“t×42¢F†u;iJ݈ìP¬ È]‹½ª½ +CÀ6Z—á%HYd'\ƒZ6Æ8¸fºíõh¸·w%:‹ÆøúdÏÓ÷é1Ùãô]u·&{N~覘ÌÔi*2Ô™ àsUe5µlѾ„Ó˜çDCÐ#ùnÙ¸RGbè£>¢Ä‡B\A@‰#h„óÈnëȯ"¦é¼2pÞ?ÌŽ|¼U¤çˆóv+öÓ+:Ï}üu‚n¦‘…tQ* +ìx°˜l4ì˜Ûý1”?ý±If4²ˆ ß JŸ .+züu³5DžU‰hAî‚e²‚)ŸÚ>Òäx£ßÊ¡ ÀÙ¹PVdâA3Ø—eÚRâãëGK7Ÿ?Ë=GÐ + ƒ9àh)/ù +Ñ=(SŽÌP–[š¶{jš³›œ=ªÂúF’Å%m„;ð}@pžÅÛŸëcµŠhÜŠ@0MtCgæ*àñ†YFÞm¼wo!‚9'°®‚NErsâÚýÓ‰¼YÆì…•¯
¿O?ܦÇñk¶Ow…×Ry%Ÿa±®yõÉ+%xü|¹cÁô’”q G’ ¬ŠïÕ°¢%µ6Ö™Êôè¼<äëX&t”á`vÃ¥Ù¥y¬Ù 30Â}…Õ*òÑ¥ˆ:ø¿q % +ÂͨRb,±!J©Â5ÕLJ†•Dp<ˆ§ +¯8ióJ(M£Ï¸™½XœÀ¥&!à†§Ù,^fØ•êN+;†ËÊp/ëW[yÊïÓ·é¹wû¶çîˆ=rPfŸ8„N: +“\øBBrq’”_æªbÄX×&iÜxIPÓÂPÎpÌhÝe‚ÉøC,@xRa¡X‚F#î{Vö†Nn¸¶ˆbí¬>²›Ä#Š“ò1àð¥•Iš‚{ œîðpNÞpWˆáTþGséÖ
Ãtyà÷Y‹€t:Ò |»ˆ0Q© +S«¤¾Ä0v¦nÜé`’;-e÷Úå׆áë‡Ûô8†-²0¶¹æ‡ ú>„‘¬1F²Zörª\?=–V” \@í+ëÑš‘ÍÇÁ¤ð¤ãˆZ½e^&$âû$·éFò2Ÿ\ï@p£ù–Õ “ZÍ¥ +)HD¥YÔƒ‘è0~–•4² aë'Æàb&„Áˆ +pÈe–E$ˆwF±‹¸áÙp¹
x†Ó”F`{²5Ì‘ºûÓâ†V_£÷ôÃmzÂ2׫÷ÎùÎÛwÛaW‹Ë3Ð0¬‘÷h‡œEA‰nÌfÃÅ™¨>†@Íȇ6Á¡ÊûHʆI€ÉG݇téÂRN‘»åÎ]²·5eHU’º!®Æ´¦îITÀ4ûò!âš•©Òe']¼lœØPc¬XW…2ÅD†"…–¯¹dsø½”=§^ä,fÃÓ#é>€˜n‘Y7çâ6óe•š¥‘ž×’2ý5‚øúá6=b6oŠ½mÁÈ*€iqy&[܆âÙ´85§2'(ãhDq§c-ËŠ2c®²ÅíÛ†ôF9ÛPç×.# Ãx¶0¯]„(P%f‚K:…TßÏóàHépš5DŽåëÅÝéA~´d©È¥BaŠ#”ÌŠÿeë2IˆHª*óf2ù‘2óü¢ŽëÛ‘Y«nf&^rƒn@:^¾×8[ïYïŸâÁp找ã*£ç ă¿Õ¬ÝË-ÌŠªú³ÎŒ€jé§
3$»‰5Šq›Þ°”í>j¬Ý’Û'R¦7ÞMVþ·˜Î»ñù1ÿ+S¯í–Ä›‹|š@a ´œÒ/–-c’HVšéJÎB7&Dú- +èà‹'¦*Ê[P˜ +‡ìæΓU% +BKŸŒx0z&ÌÀ9B ÎrÆUÃ8ž¾×83j+ ¾gž€¾RGsY”g²³øCoœ
‰*±fUW´ðã³Î2EÞ©^©§I8‘g æ:«ù¯Èx)=ZÈ*
fu :_‘ÙÆþlp xÁˆÖ9ϳdë¾$Ü70Súh1e¢€ u:ÛÜäÀ4%ÿV%ò$«Ø¤•Á¯]PY~ƒí!‘~+CågH±¡Á÷c_•€Á1f‚j7¤M/¶ûOxài×À=“áÄß®^ñDú?Ê©n¬m&Ðð'ÆX–akMpd’Ú]Öwmv¦ˆvëe]áŠ_g¨ÖŽÜ7K¦U9t<éé²0áx†vÅ +:;/°dË"¬À˜ÚÀ%±@qdªAV63Œe¶ìÁ9`î“qd*©…ŒÕ‘Tûr”ÿ@a-¸„‘¬Ëé?`æår³NןvBúѸdG*7Ý>°¢ˆ&°Âô`‰•µºGú=Â8m8Cñú¡iu A‡ŠÂ`å£ê¾™9™‘NR”%©Hfñ¢†L‘©L&á’#ÁXkŽ†ÒìŸ^D‘ûÝ(š°ÜÑÕÎe†¦‚¨Kˆw#Âym#
i±”4Ü<à/Óøhc‡ÄÎâÝÉ:»yסï¤Å#9³µË÷Å#â3~e+½µª7b!ëØ®‰ 9AŽ`¤s‡êlVŽÄàøƒ?*ñ"ÜÅ=Š„&ïÑ…ÜÔŽ;KŒñ¨eã^û®VgI +u׃ëwZↈ[…›f¾ÊS½îOuJÛ + ª?ŽŒLB‘U«uµi¶uæmC,‹LÆJC¶À +G,¨JÃÛ´Rég±'a… + _USÕz¡ÓŒ
Šódk˜Êb/I;uz:ÐP*epMÅ«´31=!%5 ”“ª–¼úM%sÑhü±Ñ¦6Ñ™í½Æ°Ï9frŒ„;¬ +g挓ª(Yy¥X–éÀîŸÀaFc× b¸<•äƒ)aþšî[ŸÆí¥ôQÕ÷É(V‰Ãkª¢]…¼Ý¤j\Îd^3.¸"ž,Ëã·ã×+SAþã%h«ñÜÔÚä)U°µ£DW¬Ò3þŸ¯ñm7,ù-k>4nvM`ð&Y@»$ÑôÂHûJ^’€¶âLÐk8žÒÈqb;Ÿb”ø–5/šÛâ¡=¸êºd{d*ݺ'sðøø² ¼ð¦Ô’áçV¤œŸÅ)ÖÑ'¥˜µ×ZÆåñµŽŸZ¨ðùbŠvïr´Òí_º;4«Þ±5Œê¡2ø/œ,šþÙÄ5º~Ê—ÍÐ7ô [ÒÜ°’¦(ŇóQÁÂÒþ4RjÆ^ÿz«Þ&¾pÂ<urÊ85Xóå es4ߌ½¿Sï2_Eë÷)/áÀõÛ¿;§ÔsS鳚ÚCi [“Ô4ì’aœ±ÍÊõ8V5eä!–Õ¯S=ä‚üî¹ Ï·*JÈ=D«¹G
[:…R6[𞤎ð8ÂciWŒz}Ä1Ãoݳ‡èÉæ·äSØsúþUä‘þ&ºb¿ê~Äí÷ü°¨$ß裾ŒIÒöÎ÷‰Jò>å<Œîy&É+>/èì_ίÆf›ß™ß—¿ƒ¦qh"úH®e&x Qã³óÔŒ¡%©òiÆuŠ@6™UGX²y8’êAöØ;º²ä@ÿ +lcLk¬ïg'%ùo5ÆSÒ&j»‘Q•¼%2Ø>`‰ü’û"¸°³Ü¾•¤›(€’cQ=<XÒÆ2{wËS„ïNÿܘ/Ð{£ª‹÷?==¥åÝ á<ë±'û’Æ…µ÷-xT/‰A)rD ßà +ôSå·¡XɺÈiQ|DZ•ªã"¸‹˜ è48 ®l·í±iŽ%ödÆêTþêåO6òH*#2¸Ÿ®šjê̘¥¹T¹ð¯U™LÇœë&rŒô}×à‡¼}fz}òÑ¿þå:Èý/Q¼´?]ÿ÷‹«Dùè‡+Q¾8ÍÇ™¸ÔIz?€½ô
s$ë}J˜†á²ÔÏõW£Æ-—\öˆgi²wÞjóÈ‹zãXñTyÕýþõ¯Áê:‘Lz>!7\ŽÕžŒ@‰¾ù¥vz”¨ðIÈÕ+Ãåqú¤/ã"}òÕú[baîé Ô‘"ešü+w/¾~]Kî¸=à/ùöîBˆª\S=!æË;úÀ[q¬:®AÆŠ¾ßŸsŒ?¶ÇöùƒR½ù’·_õ¡\‘O§ò¹é~ò +Ï.Ýuy/x{wÁÈS•'ûŸö¼ú¶ÑoÂëô#D^Dþþ¼Ô3•ìë
®Œ
æù-ø`$Ú@¾ƒ!TcŒ||Žá™|þµlmOC©”vs
éNoüø‹ðøa‹ðøáñ/Âí\>ø錜g-Älcð!"ŒgG:ë+¨¿’T»‰Ÿ6¤onH¢âÈ°*\æ’êšVí£ú°"éç{Ž±“>~¸‰³Á~Ža–5Gà#Òˆfše3r¬&+G@¿È®k¨@*`JH%TâaCbåËaiCÓEìæ„·¥i ©÷Šï÷§¡Œù7RàOßTž=~<{ü0yöø
äÙãW}¨MƇÒqí瀪À&ŸÝ
µhCE1›´²ÅIhDtxÇ)4ÀÎÁÛê4ø‰.o]“¢öÃÖ Ž‘¡+Àg¤-Tõ[ ¥ŒÜsq¸`Úw¦ÕY•È fWDŒ€Œ ¶Pøl¸ÄXtᇆ)vë¯ÍÊõ¬K‚u/…¼Ú
ðNc„d•@,Sg0rÚkmš\bé9‘O‡“=dÐnÚ%››±Y| ó0w¨6-ÛÈ5&ºkĘU5Q¤oÀE¹. ùû¡k¤¸$)Š`¬ù×±¯4QÁÖ½W˜ÜBR±ðW°÷.j“ñ-1‹”ÆÏWæ¸ØÃDl—µêê5‡ÊÊgv”wPu®±ë€d +k$t.®EÚ×®?Êõt&4œ=êb++Œ0+OËÁpÆ–áé²0iâbÍ÷×™¼¬á¸¹äÖñÌ\|;<d§‡æ%«Cjdé"QHaJ@'¸SP†éMäX(:""è¾ +0ª¿·aI£+·–ç2ʺ×nñL3"¥~Fðæ ¢r€f;‹VŠy¶BliSxÒ-=^pÝ.‹›©¼¬â¼¹æ×ùÜd|Kd`§Çd»8;f°ÉXj&~@Kñ›
š)sS“®:“%èÄ2ò*Ê.ˆ;œ¿„ëTv$» l›¡+xUÆsw=n›âÛƒRXÌæ¯è‚ÅßçE”R¥@pmÓ|ÊÔc’üÔ‹ó%3ªBN*jÀ×,ÛcCiÙÕW}°çíñ’Ûe4|ýðñzùP›ŒoƒüëäÜõÖ°¤D‚¦hàV¤¬rD$ŠpPÄa†ÃpM€UÚ°øgX4M£(Ó4Y̱‘\`×\841/•dª€xèÞµp5ÍH'é´ÀOŠ®16=© éâZ{5CžÔo£9 +³ïù¯Ð[áy§ì` U®û +Y®“y»Žêö + +Æ>ˆ!Í ¦Ê–„W¦é›€UtÀêtè^&OKèBð”VÑåÖЊϖ2èŠ*bF†Ît+øL*ªbÀÈ„É÷¿†ŠŠ•¨ +tl(³ùʹ<¯bqåú‡×'j“ñíwžÊnk×iË0³¡“Ñ%.Œ¹ù™>¯„†²uײæûšµ›Ü*RAÙ°†ú@U•ÀY»bwÖ÷5šIp "Äk·€WNépÕš0¥¡¦ X&~ÕR›S6´q%±Ûƒ’§u>Ñ”Á`VÛdë ÀèÆ$[‡®Z¶àÚ:-Kð´†éÿoïÛv$¹®+¿ þ¡^xŠ>÷ËÌ“Ô– +„"FzÞ>‡&´lz;6š±qžÆQ•¡QŠ%¦,©bôK”3y…ðÉÎ7`ž;¨qyö]¤r*.𢮜5~>õ/Ôø(–¿-æçE…‡ènÉÅ\½) %PýðâìÙG™øJÄŽêÓ-È%4´ + ¡bZŠuDSÖߨ|¡ 5ÈOhÐåYz‹tãTÎô0«‘èðŽâX³SbP»µÌº”þú¢ËØÛ/pp’¯ãÏ ^ÂÑ¥÷Т2™c +Jì¼?Ôw•=¶µeo4R©–}l¡)Öä*¡ÔèçHŃŠÆÛ˜¹i».3½ýz³pªq½ âIÅ/May:ê¬,„¤OLÕØåU…iDäx%Ür̆{ÇóÉ4í +ŠŽ™„„â«QÈgÝ55zªìiÓeë
£©¼Øy%¾«½û‹×ŽèÅ +Q6¼è²x$ôb£XÇßÝ +hԛ么ìfI;x_Ed&|õ".ùeY/è‰(š’¢%zVh…UÊõ¡•3He/ sÔ)+W†éù6’(Á©$m˜¤õ=×Ø!©ên³v,cZïb¸R½¼[BÓªbÈfWT{Ó¤h¦Çæ©z*7DI!'÷ܦ-A¯¬óZÞˆ
·ÜŠÔNžwÈÁÚ£ÙûÙÂÇÕ‚v¦.œ£w:PŠ]ñ'«6®Ý”`*däEAZŸ€Äû•dÉšÑÌbŠœvbµÛßÆ°]Ŭ’¤ú°nOa\+Û@îšÐè¡än
¹ Õ‘4ê¤ó +^O¾€a8HÌDÎZ+‚ч¦anOðI,G¯†8ãÊû +å¹€ƒ5Œ°¦[’/MÉ4Ì¢.:]¬‡e?<ó²MŽ Z»–tÌF±v*’ªÑí"Ã%^+×é$…Ÿ±©ïÅf˲ÅÇuÎ!ÜN³Ý¦1 õïÑ,.±Öc¸Mœ®8`ït҄ઠBpÑh8þDª„g‘<1íÅ$ ´Wx«]‹>k3<-ŠÝXóJO2?I6”u6{H«Ÿ??ö³"¹/Á´VÐÈ^Êj6YÑîql´k×O×·œJ¥;·`pP€X2%;~¥ÉJo¦8ãÊ +ð21<²é»i-/V4Pöä1»Î
w¬dÀ]5»OõQàPUûÙ.ù¢°ùé´÷{;ãœgO˜ªÀÆ"N: +¾Ó]t”[xÒò@=š?׬Ý~S‘ön˜ž}d…
?’ນö5£t÷·á†zÂ'½îäøãõF5hå¯Ëvž¦]åôù×µ`mØ»‚¼È°$c§nä…4ê{&RX‡LŒQëol–ÞdÏž"™ÿO§ÝP—E~üÞú{ê³þ7ÝërÅ»Îæ]ãºö›+;søÞá~dŒP´Z‘{‚Š«´é·)T')Ô >úþ|ìýùÈûóqwb|jdĵB×dÉ1—‘ Ê=T@„ÉXÝ°~\$sÇJŽ‘|xÉ^+¤PènÖ˜É@a{!K½Z×_°üEÇÈ°³–x“ȶÊ{šÙÒ°AU +}3åp5Š8Ìóð«ú\‡›ÓÕœÂYðèQŸ"vº¾(K8±C€baB'>÷¯X‚ b’%| +Ìã
'|Iü)6@/ØéÀä}¸Tf(ï?é¢í›)"àÕc8†Ë´.¶‹¿¹×‹í·ÿè1_½g9|ÙþåîÚF\Ý®Ëm}uw}ûä1˜^Ý]Ý5h–Ç»p
èÃ,]ÐD}÷(Õì^`÷Ýa÷óÓ¢àÊ^ +ör\J.(јËĘ]¡h Å¿×7h(¦h; Rb —“6OGvÈI˜ +áx<ïÛ×'TÀ©í®,É•…;-pµ¤ +
•›ËsÓìd“k€’¬â"
h¯Òt¬-áœÄÑ4C%¸<hÚ‰¬ôõJ¨ËÖp¥ÂÑÔ+œDzƒáÌ.5‰é9RD™b¾žâUæü«r©F¾ìj®ªWã->€™£Þ1Ö—\'ø^xVeò7x’³@Jò]×|*ôðõó›ÅÎÙùh“’¯\S¤¦{¼¾l¦é¾=ëÉšŒY=öiN¹HQ‘}‘óxY‘¦ábË2d)M€æô=Ž(¨E›i%ÜQDŠö»°¾É ¼ØК\‘œÎi·1¯'a¹Ð,|k×˯~è*îÊ’\Y¸}«¸Þ–nA—5 +ªqìí¹dóšHâÇo"¿ÚíN`ž=àÕÂЀ*•ÐNÄ»9²Eß„A î2¾“W ¢lÅÉTHQäø£Æ°eϱ\“Ó8Y¨9o‘Æ[F
îSî2‡~aŒ¢Þ09°wFÃ#ˆˆ5Ö™EdWNÌåñT.ÿE[=±¾lÏe=\ ="‹0k.}·7Ì&–#@„*]J +|
HrUZjF“¿pî*«‚ï…3;<0Ž?elò«]VÙýa~nšaŽ5-:IƒÔž4ì͇”‡32Š\§_®fÿ:ÊŒ®)«F1¾Ú'ö‚ƒª&¸S®0ÏJFxºpÇ0‚Ißí>÷Üù“tŠMfä°^íÆYƒÏ"žëAcÑx²Uð<·£k˜°)·‰R|Îúo™ö‹³&HOûùÕe[xM£ÈËzj5|ÑnÄûyº0¹ü@åQ(¬(a¤ˆî
Eu˜·Âòˆ8ñ’·ŽÒ);ê¢àÀ»‘<¹œSZÚÎ÷Ú5b5uqr¦0y`$«<<Ó×ÕëPÞ8=ÛùÐé):<Q8[84*ø£äoˆ˜Õåp%•,âÝ›³4 +›åª¯jz&FB‹ÐD!„™!R'ËJÅJ _ˆ»äø¡Q4Tëòxq/7Wd^°þÄrø²Ý†8ôpÝ©òQ÷é“ôfo7qÝé…OµGÇÚ‹[[Zö—ý€¢—Ø…ëÍ×ÔSÑ*l.yè{b¸n
ÓüºÑÎR¤‰àl+H]"21ê1FÇ: B}ÊVÞ~³’Wùž¶×öZÓ«£MÕœrJÀUÌ»OÄ'æÕƒÙ–c=áÉÊ-ìYç7÷éEÃ…,bÖ«Œ#~¼¼—ÛKî°__
_´ñ•žÂcÛï`ÏökÌØÚ)4Åâ!$ü·ìæü´ùÛ8Â@Üq*ähÖDz]H|vÜ„ªÈ.L›æP71,WԄפIÌ¿´º·sê„+î÷°Î•S˜šÇ=– +C¤&‘QjØI OcÐŒý[+<…&D_j‘Õ8“Y?cˆä‡c6Ѳ¿ku¬ã稫-íyk³¼È¤?¹¶l7¢;=]x >âPGÃÃ(æÔm8fw@Ò£Oµy¨6£ÅBQˆê6ÍæW¢ÑíS˜ZœëRÎ,¨%ÌH·‹õÚŒ ù ì3ÞDÁ4q«§WBÉÒëì!”‘Ä= +Ë[F÷3ÞL5Aoô+8ºâèp¥qÝÚ4Ë\øÐðsš]æ}=4Êyg¶2n¡½h)gŠ÷WV÷r{ÉDõ‚ö'—ÖíFl©'ÿšþŽv4_@¨qëD{oš²Šå*z5´NÅŽæ,ž +‹ß€‡ñïAfY1À½Í覓išŽ8TØú1‰P—¡ŽoÇrª2QÛ²õ-Pcsi±OŒ0†¾Ë*àçÆU±¶kè]ì4ãI®þÀÜÜkí÷®—U2Æ"Ýa3ƒ9ïÙÀžµj¥Óš¾º—ÛË& ´?¹¶l·àZ=]•½¤õɼBôD1’d£›¨{nêµ
NÈn1›è#Óm*<Ís–ýÈQ$½Éí‰8v°4t{Y™ŠìÄÄ¢Xø‹$²Ö‡øš@#NUxÚ^¹ÚŒ_÷Áf’X†÷¦‰¾th{Õ1“ª€:»€ õ‚òU`}7dȨMw)eC{W¨æ¾Ï|všJWør{Ūô‚ö§–Öí/fj=yc½›×J3?Ô`Òn6f˜$x:%rú +‰!=ŒeµÓˆÞtzÏÆZ+âsÇ(hB¨J½ÁòÁ‚íUOCø¨¡§=7 ŽÓœìÍÀXÈCß3«y~\XDšåþ +fnCb{þ)ÌLt,:ʨp„ÅÙ¥GXŠ‘É +ÜR-«9¤*—ºãdßbŒ©Ø:lšw¨Œr¨éŸ=ñqª˜<?êw¯Úï©”N„K]‰âÒ܆ ÁPíµ!£±‰Í†Ai ã”Ô ¬ŠÃŽQ< +¢“Ao1£®ˆÁ¶n/–䙻ƳÎ<0™«¸9ÞšQl®¡ú0£àÿÇöDãd¤áÈÚ"˜S¥?S.OÇ\¥QÛ{¤™FŸÖäµ³Æ}÷xyoÄyË’ó!1¹ ¹Ô˜èGÔ»R³§ªIcPК¢&!–l,ª<c²ùˆæ7Ô±”¾à›Qöèy˜N¾k`ü‰2cXœ®FW,Ö÷¿i}’Þ—ü¼T8 +w†=d
K¹öŠÕîxETkvÚÌäÄ5ËËH_œ-„ÛÛ +Ì]m–W%3Z¯$ÒŽA²·½4ijÙÒAQ];+AµÕæõMòq·˜»üùÒ(äj^+õ›”0ìê¨udöKŒ’pÛìðØ’'•§Uñݪ®L™ÜTD½ªØѾc²_ ¦°”ËF¤zÓùQ/ªÑ¬óBž +‹Ùâ(s·«ukt?oÖèÅÅÒPT@m`y²ªyÓ¸Ftî\k¡®÷†Äñê‰0çLGë:2wœ{Î]
kÞ£¨§cl tdV
Áð—©ï¬Oqú—)“R¢>Ç)de3‘µ˜×ä6LØ,Œ€G[ì‹;{õ™Æµ3-2ΫJ{B»Xk†rÞò9®5úVú)7€¸FŒ²äó"—Q¬ êŽ,qÁ ìÊQª¬[±ÂØyU|œì6”ÊÜ%Ž8zeD›/§ØàÒ±ò¢Ú.ÁÉ€Ã{Ç+ÊÚ]Ó¤Æ}l 3KÄm“j0|¡õ3Xà¡©Ä"š™Özå©nõüD,„S
Ï^vUŒVŸëÖÕ¾<¶9¼Ê}ûÍC +§5…Ïj·¾ö™6
ô…Zù{¥VV4P!B‘+ïzŒ-® +A¬ÏGð‹=~RpV“ï˜Ie> ;m'Ýêƒ0òÚÉ by:³ÍæTFXð”gûg8G0’Ï¡·YO¢¶Wh,!|(μV˜ +Xd¢Ã<ý¢‹,Œ©ÐæúÜ~ó:‹Ë‡$g÷?†/8|ŸÁß« +ÔpurÔü¬ƒÈïþÕÝQXllÙºVŠ—7/Á+3Ks;~¦ÛʬË,Éá×\¶ß”_hÝøÅýzç +Ø2ýËÝÕ5¿²1éÊ=]Ùæ+`8CæÕÝu`]…ßãU¿çKÌ_bæ‚w÷»ñ½ +ÒKôÕ@×X½¡ óç +¶1 †å¨‘øAü-kýkMžuÆHÔãTÐ#hQ$¦D=C¨Þ6Ï4D£9Ó⯘•–ƒæÿ*/ +Ø:ÝŒÕm¿nÊqYBld4}mÛÔƒ^¤5»Ï9§2pÌ&q¥!¹¦RdÉ&ÑPÓDOÕ5r‘úe$UÂ? +V¨B¶Rós‚)d¦ênŽ´“—“§Þ'[è묘KûBsòA[µRž†¦i¢ùâ7î:àüd,ŒøeQ&Œa¯ø\
éþñª]îYíGíÅ +Ø:ÝŒ m¿n‡HãJÉA„b-ŠJq“X¢(íq„2Æ0½4ìÅI›W.^´bÄ4»Tá"%Oè639]uóMN{5
0 +ðt°½@fÆäÆ9q“<ËÀH=Zó|C·/Í‹Yå”UÚ»v?ðÛ[ÏnŒrÿx}/vבóáâûrlnCÁ¶_”äeîMiÊãU/ÝÖ< +™K\ÏÚ7vXJ˜ìÙÆ°¨[J)¹9må”â².šúAÂ(I4Ö½« W¦ŠLl±§Ý.iCHfÉ´Ù¬â
ªÁŒdã'ÞQhiª›=ÎŒz¯˜gñtw² +Ufï¥P˜‹°ŸK_•¤ ª»Ðfå ‡ŠVÆÞÕ ½Ë^o<ÍéÌæÞ>¨qJ‰“1üñÒ^li|Ø ¾\[§›1í¡øˆ.5WÚ#k›BqOiCªÞµlo¡HDÆ®î[7FöSÑͬàHFßCsÕ[ƒ°]JYAºÚ†gŠ¦öÜ^íË´¡ìí½’…çèf-°À×Ì÷HœÁBIÚ;ø2PN(1“Fy&¡—6Ín,F¯Þ¡1‘67£à ‘¦¶ž‡Ëµ½ØÙí +kæ(†ìlYÆÛœz»ÏDs7ùp†w$Ëô¦Þ-‹9[·Rtý&쎕ë,“vv2.š"Ê:©#ß?^Ù‹me
Ù
ìË°uº‹Ú~Ùc1ª!Ûl[æŹknf—ÔëÓRH´8t"J]°RFŽÎ¥Äs¨;°‡…H¶—?—ÕqK;;úÕZ³‰ÐK?Ø@öÌÑB$9s‹ëª}š HdûÔ)LO
¶cl„$:‡äBï²è„šM÷qµÍÔHÝdS%ÖÒÆ•œW÷bggK8¶/W@Ët+δcþÆÚM¡ Gk¶G'C;dä6%¾Bx¡´™îºÙ'Ã,Ð$ªMš,‡Nä2L³ÓÓnJÞE›—ÔqÆC1û"3Xiž6™1¥[=Êèv±>Š%Òûn±ÿZ‡bUŸ‰ÍA¶3A.~hÚ!ÆPØ™eóÕàÀ˜&VD¬Rœ@ÌJØò~&ˆÀnÓ÷vS&™å>O»mûrÂDöàÿ‡z(-€ÒÍÈÕ>.êüTTí|eë=m&EdÃä>í·MªY´Ñt4;¤ùf(͉°/ˆŸv@(Fvxz):<{‘s/ÍÝCÿMð©TŠíû½+iñÖ4h—¦ƒ²úÝqo Øà£m)Tî|UxõGÍAV†"=˜žc±8¼ò™o>Ë—Z#5¨´Ì®¹,Ï€ìtò¾c=Á\¢.rÄx±[1±í?ÄÉËV fb–ä6xgòî⊠–dæT[^¬Ùpʼ>áfå„€‘¥ÿ¶c՜€·™±Y' ÓÅW=yæ\I¤ž|+ÄD˹hpK¶É=ñ«Uf‘‡O†%yx +Ûl¨%ÉV9L
Ø–$<)ì®Ùž¤£ëÄi–G»ÌobTüƒ(òäöU§Fœ"™«Èæsƒéë‰É1ÀŽ*KT÷¼XÍÔö#™°¤q ¶9~,øk¥_X/ÊH׿ëÁ[3“k”xR€A2¯GEf›ŸrçA¦Õ žÚà#œõîæô<ê/_Ì``lܪ[F‹Îõƒiø#åöÁjJñf¼7J”ðk3šhÏ÷¡Œá£k¨š¡I˜†éòjÔYûbŠ©´Ê Ž + +‰¸#Š +â¬*,âk}¥Ñ”{Àû ïéá9\¨sD¼ÀŸIQ´Ï›¬‹´Útõf‡°3ÌCÏ`¶S|‚€ù«§[y•Zõ<å“ÝþiGªš©‰Óô®|‚JàJi£ÿ®ˆ&ìj\¨ÞŽÓÌFõD~P¶…fkñÞö³,ÙXûjkVOhl`¨a
+ìZ£Pœ:¸ÝìgÃÑ˘àê0²U$¯!Ÿ`5Õäìg·ù‘ɹí ï:Ï¡æU{ØÌ“,¦Î«v+'Г»zDÞôC0k·Î¸VÐŒï™?ºƒïuãS쩈OL6·vôê´PÌŒÎc„²g€—ÕõH):Ž%û»-±x¼´êöÙ7sYŸó±ç¥ø¸>·ÝâV1þ…£¾Xع® +œ
¹bc˜£õ^f·Ò©ï-ñž“·7®®Í¼¬¦¡æ{¶ÐÚ¦Bmº‘‘K§xÊÄt#c+–fu[´5Í©˜jaÁ}ôÏy
gV3=üªÙDûj³N’fÒ+T¤ßi€úç¬8²d/Ì=,îع¬åGVc(‹¨BJ‘ 0000000016 00000 n
-0000045654 00000 n
+0000045544 00000 n
0000000004 00000 f
0000000006 00000 f
-0000054890 00000 n
+0000055744 00000 n
0000000007 00000 f
0000000008 00000 f
0000000009 00000 f
@@ -4964,9 +4977,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000013 00000 f
0000000014 00000 f
0000000018 00000 f
-0000045705 00000 n
-0000054715 00000 n
-0000054746 00000 n
+0000045595 00000 n
+0000055567 00000 n
+0000055598 00000 n
0000000019 00000 f
0000000020 00000 f
0000000021 00000 f
@@ -4976,9 +4989,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000025 00000 f
0000000026 00000 f
0000000030 00000 f
-0000045774 00000 n
-0000054599 00000 n
-0000054630 00000 n
+0000045664 00000 n
+0000055451 00000 n
+0000055482 00000 n
0000000031 00000 f
0000000032 00000 f
0000000033 00000 f
@@ -4986,9 +4999,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000035 00000 f
0000000036 00000 f
0000000040 00000 f
-0000045845 00000 n
-0000054483 00000 n
-0000054514 00000 n
+0000045735 00000 n
+0000055335 00000 n
+0000055366 00000 n
0000000041 00000 f
0000000042 00000 f
0000000043 00000 f
@@ -5014,9 +5027,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000063 00000 f
0000000064 00000 f
0000000068 00000 f
-0000045915 00000 n
-0000054367 00000 n
-0000054398 00000 n
+0000045805 00000 n
+0000055219 00000 n
+0000055250 00000 n
0000000069 00000 f
0000000070 00000 f
0000000071 00000 f
@@ -5027,9 +5040,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000076 00000 f
0000000077 00000 f
0000000081 00000 f
-0000045984 00000 n
-0000054251 00000 n
-0000054282 00000 n
+0000045874 00000 n
+0000055103 00000 n
+0000055134 00000 n
0000000082 00000 f
0000000083 00000 f
0000000084 00000 f
@@ -5039,9 +5052,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000088 00000 f
0000000089 00000 f
0000000093 00000 f
-0000046055 00000 n
-0000054135 00000 n
-0000054166 00000 n
+0000045945 00000 n
+0000054987 00000 n
+0000055018 00000 n
0000000094 00000 f
0000000095 00000 f
0000000096 00000 f
@@ -5065,9 +5078,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000114 00000 f
0000000115 00000 f
0000000119 00000 f
-0000046125 00000 n
-0000054017 00000 n
-0000054049 00000 n
+0000046015 00000 n
+0000054869 00000 n
+0000054901 00000 n
0000000120 00000 f
0000000121 00000 f
0000000122 00000 f
@@ -5078,9 +5091,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000127 00000 f
0000000128 00000 f
0000000132 00000 f
-0000046197 00000 n
-0000053899 00000 n
-0000053931 00000 n
+0000046087 00000 n
+0000054751 00000 n
+0000054783 00000 n
0000000133 00000 f
0000000134 00000 f
0000000135 00000 f
@@ -5090,9 +5103,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000139 00000 f
0000000140 00000 f
0000000144 00000 f
-0000046271 00000 n
-0000053781 00000 n
-0000053813 00000 n
+0000046161 00000 n
+0000054633 00000 n
+0000054665 00000 n
0000000145 00000 f
0000000146 00000 f
0000000147 00000 f
@@ -5116,9 +5129,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000165 00000 f
0000000166 00000 f
0000000170 00000 f
-0000046344 00000 n
-0000053663 00000 n
-0000053695 00000 n
+0000046234 00000 n
+0000054515 00000 n
+0000054547 00000 n
0000000171 00000 f
0000000172 00000 f
0000000173 00000 f
@@ -5129,9 +5142,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000178 00000 f
0000000179 00000 f
0000000183 00000 f
-0000046416 00000 n
-0000053545 00000 n
-0000053577 00000 n
+0000046306 00000 n
+0000054397 00000 n
+0000054429 00000 n
0000000184 00000 f
0000000185 00000 f
0000000186 00000 f
@@ -5141,9 +5154,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000190 00000 f
0000000191 00000 f
0000000195 00000 f
-0000046490 00000 n
-0000053427 00000 n
-0000053459 00000 n
+0000046380 00000 n
+0000054279 00000 n
+0000054311 00000 n
0000000196 00000 f
0000000197 00000 f
0000000198 00000 f
@@ -5167,9 +5180,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000216 00000 f
0000000217 00000 f
0000000221 00000 f
-0000046563 00000 n
-0000053309 00000 n
-0000053341 00000 n
+0000046453 00000 n
+0000054161 00000 n
+0000054193 00000 n
0000000222 00000 f
0000000223 00000 f
0000000224 00000 f
@@ -5186,9 +5199,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000235 00000 f
0000000236 00000 f
0000000240 00000 f
-0000046635 00000 n
-0000053191 00000 n
-0000053223 00000 n
+0000046525 00000 n
+0000054043 00000 n
+0000054075 00000 n
0000000241 00000 f
0000000242 00000 f
0000000243 00000 f
@@ -5204,9 +5217,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000253 00000 f
0000000254 00000 f
0000000258 00000 f
-0000046709 00000 n
-0000053073 00000 n
-0000053105 00000 n
+0000046599 00000 n
+0000053925 00000 n
+0000053957 00000 n
0000000259 00000 f
0000000260 00000 f
0000000261 00000 f
@@ -5236,9 +5249,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000285 00000 f
0000000286 00000 f
0000000290 00000 f
-0000046782 00000 n
-0000052955 00000 n
-0000052987 00000 n
+0000046672 00000 n
+0000053807 00000 n
+0000053839 00000 n
0000000291 00000 f
0000000292 00000 f
0000000293 00000 f
@@ -5255,9 +5268,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000304 00000 f
0000000305 00000 f
0000000309 00000 f
-0000046854 00000 n
-0000052837 00000 n
-0000052869 00000 n
+0000046744 00000 n
+0000053689 00000 n
+0000053721 00000 n
0000000310 00000 f
0000000311 00000 f
0000000312 00000 f
@@ -5273,9 +5286,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000322 00000 f
0000000323 00000 f
0000000327 00000 f
-0000046928 00000 n
-0000052719 00000 n
-0000052751 00000 n
+0000046818 00000 n
+0000053571 00000 n
+0000053603 00000 n
0000000328 00000 f
0000000329 00000 f
0000000330 00000 f
@@ -5305,9 +5318,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000354 00000 f
0000000355 00000 f
0000000359 00000 f
-0000047001 00000 n
-0000052601 00000 n
-0000052633 00000 n
+0000046891 00000 n
+0000053453 00000 n
+0000053485 00000 n
0000000360 00000 f
0000000361 00000 f
0000000362 00000 f
@@ -5324,9 +5337,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000373 00000 f
0000000374 00000 f
0000000378 00000 f
-0000047073 00000 n
-0000052483 00000 n
-0000052515 00000 n
+0000046963 00000 n
+0000053335 00000 n
+0000053367 00000 n
0000000379 00000 f
0000000380 00000 f
0000000381 00000 f
@@ -5342,9 +5355,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000391 00000 f
0000000392 00000 f
0000000396 00000 f
-0000047147 00000 n
-0000052365 00000 n
-0000052397 00000 n
+0000047037 00000 n
+0000053217 00000 n
+0000053249 00000 n
0000000397 00000 f
0000000398 00000 f
0000000399 00000 f
@@ -5374,9 +5387,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000423 00000 f
0000000424 00000 f
0000000428 00000 f
-0000047220 00000 n
-0000052247 00000 n
-0000052279 00000 n
+0000047110 00000 n
+0000053099 00000 n
+0000053131 00000 n
0000000429 00000 f
0000000430 00000 f
0000000431 00000 f
@@ -5393,9 +5406,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000442 00000 f
0000000443 00000 f
0000000447 00000 f
-0000047292 00000 n
-0000052129 00000 n
-0000052161 00000 n
+0000047182 00000 n
+0000052981 00000 n
+0000053013 00000 n
0000000448 00000 f
0000000449 00000 f
0000000450 00000 f
@@ -5411,9 +5424,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000460 00000 f
0000000461 00000 f
0000000465 00000 f
-0000047364 00000 n
-0000052011 00000 n
-0000052043 00000 n
+0000047254 00000 n
+0000052863 00000 n
+0000052895 00000 n
0000000466 00000 f
0000000467 00000 f
0000000468 00000 f
@@ -5429,9 +5442,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000478 00000 f
0000000479 00000 f
0000000483 00000 f
-0000047438 00000 n
-0000051893 00000 n
-0000051925 00000 n
+0000047328 00000 n
+0000052745 00000 n
+0000052777 00000 n
0000000484 00000 f
0000000485 00000 f
0000000486 00000 f
@@ -5464,9 +5477,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000513 00000 f
0000000514 00000 f
0000000518 00000 f
-0000047511 00000 n
-0000051775 00000 n
-0000051807 00000 n
+0000047401 00000 n
+0000052627 00000 n
+0000052659 00000 n
0000000519 00000 f
0000000520 00000 f
0000000521 00000 f
@@ -5483,9 +5496,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000532 00000 f
0000000533 00000 f
0000000537 00000 f
-0000047583 00000 n
-0000051657 00000 n
-0000051689 00000 n
+0000047473 00000 n
+0000052509 00000 n
+0000052541 00000 n
0000000538 00000 f
0000000539 00000 f
0000000540 00000 f
@@ -5501,9 +5514,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000550 00000 f
0000000551 00000 f
0000000555 00000 f
-0000047655 00000 n
-0000051539 00000 n
-0000051571 00000 n
+0000047545 00000 n
+0000052391 00000 n
+0000052423 00000 n
0000000556 00000 f
0000000557 00000 f
0000000558 00000 f
@@ -5519,9 +5532,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000568 00000 f
0000000569 00000 f
0000000573 00000 f
-0000047729 00000 n
-0000051421 00000 n
-0000051453 00000 n
+0000047619 00000 n
+0000052273 00000 n
+0000052305 00000 n
0000000574 00000 f
0000000575 00000 f
0000000576 00000 f
@@ -5554,9 +5567,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000603 00000 f
0000000604 00000 f
0000000608 00000 f
-0000047802 00000 n
-0000051303 00000 n
-0000051335 00000 n
+0000047692 00000 n
+0000052155 00000 n
+0000052187 00000 n
0000000609 00000 f
0000000610 00000 f
0000000611 00000 f
@@ -5573,9 +5586,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000622 00000 f
0000000623 00000 f
0000000627 00000 f
-0000047874 00000 n
-0000051185 00000 n
-0000051217 00000 n
+0000047764 00000 n
+0000052037 00000 n
+0000052069 00000 n
0000000628 00000 f
0000000629 00000 f
0000000630 00000 f
@@ -5591,9 +5604,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000640 00000 f
0000000641 00000 f
0000000645 00000 f
-0000047946 00000 n
-0000051067 00000 n
-0000051099 00000 n
+0000047836 00000 n
+0000051919 00000 n
+0000051951 00000 n
0000000646 00000 f
0000000647 00000 f
0000000648 00000 f
@@ -5609,9 +5622,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000658 00000 f
0000000659 00000 f
0000000663 00000 f
-0000048020 00000 n
-0000050949 00000 n
-0000050981 00000 n
+0000047910 00000 n
+0000051801 00000 n
+0000051833 00000 n
0000000664 00000 f
0000000665 00000 f
0000000666 00000 f
@@ -5644,13 +5657,13 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000693 00000 f
0000000694 00000 f
0000000698 00000 f
-0000048093 00000 n
-0000050831 00000 n
-0000050863 00000 n
+0000047983 00000 n
+0000051683 00000 n
+0000051715 00000 n
0000000702 00000 f
-0000048164 00000 n
-0000050713 00000 n
-0000050745 00000 n
+0000048054 00000 n
+0000051565 00000 n
+0000051597 00000 n
0000000703 00000 f
0000000704 00000 f
0000000705 00000 f
@@ -5667,9 +5680,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000716 00000 f
0000000717 00000 f
0000000721 00000 f
-0000048236 00000 n
-0000050595 00000 n
-0000050627 00000 n
+0000048126 00000 n
+0000051447 00000 n
+0000051479 00000 n
0000000722 00000 f
0000000723 00000 f
0000000724 00000 f
@@ -5684,9 +5697,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000733 00000 f
0000000734 00000 f
0000000738 00000 f
-0000048308 00000 n
-0000050477 00000 n
-0000050509 00000 n
+0000048198 00000 n
+0000051329 00000 n
+0000051361 00000 n
0000000739 00000 f
0000000740 00000 f
0000000741 00000 f
@@ -5702,9 +5715,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000751 00000 f
0000000752 00000 f
0000000756 00000 f
-0000048382 00000 n
-0000050359 00000 n
-0000050391 00000 n
+0000048272 00000 n
+0000051211 00000 n
+0000051243 00000 n
0000000757 00000 f
0000000758 00000 f
0000000759 00000 f
@@ -5733,14 +5746,14 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000782 00000 f
0000000783 00000 f
0000000784 00000 f
-0000000788 00001 f
-0000048455 00000 n
-0000050241 00000 n
-0000050273 00000 n
+0000000788 00000 f
+0000048345 00000 n
+0000051093 00000 n
+0000051125 00000 n
0000000792 00000 f
-0000048526 00000 n
-0000050123 00000 n
-0000050155 00000 n
+0000048416 00000 n
+0000050975 00000 n
+0000051007 00000 n
0000000793 00000 f
0000000794 00000 f
0000000795 00000 f
@@ -5757,9 +5770,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000806 00000 f
0000000807 00000 f
0000000811 00000 f
-0000048598 00000 n
-0000050005 00000 n
-0000050037 00000 n
+0000048488 00000 n
+0000050857 00000 n
+0000050889 00000 n
0000000812 00000 f
0000000813 00000 f
0000000814 00000 f
@@ -5774,9 +5787,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000823 00000 f
0000000824 00000 f
0000000828 00000 f
-0000048670 00000 n
-0000049887 00000 n
-0000049919 00000 n
+0000048560 00000 n
+0000050739 00000 n
+0000050771 00000 n
0000000829 00000 f
0000000830 00000 f
0000000831 00000 f
@@ -5792,9 +5805,9 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000841 00000 f
0000000842 00000 f
0000000846 00000 f
-0000048744 00000 n
-0000049769 00000 n
-0000049801 00000 n
+0000048634 00000 n
+0000050621 00000 n
+0000050653 00000 n
0000000847 00000 f
0000000848 00000 f
0000000849 00000 f
@@ -5812,103 +5825,196 @@ RB5Q\9JRÉ¢qÏr¸%d…,ç…¼gÑPŠ€áƒl©7¶fïw1KG(–‹8µopéᘩúâC<fx QVá¦B§ÅtÙ¶Æä 0000000861 00000 f
0000000862 00000 f
0000000863 00000 f
-0000000864 00001 f
+0000000864 00000 f
0000000865 00000 f
0000000866 00000 f
0000000867 00000 f
0000000868 00000 f
+0000000869 00000 f
+0000000870 00000 f
+0000000871 00000 f
+0000000872 00000 f
+0000000873 00000 f
+0000000874 00000 f
+0000000875 00000 f
0000000876 00000 f
-0000173720 00000 n
-0000173796 00000 n
-0000174020 00000 n
-0000175035 00000 n
-0000182519 00000 n
-0000248108 00000 n
-0000313697 00000 n
+0000000877 00000 f
0000000881 00001 f
-0000054831 00000 n
-0000048817 00000 n
-0000049651 00000 n
-0000049683 00000 n
-0000000894 00001 f
-0000048888 00000 n
-0000049533 00000 n
-0000049565 00000 n
-0000057673 00000 n
-0000158692 00000 n
-0000159417 00000 n
-0000173093 00000 n
-0000059698 00000 n
-0000059735 00000 n
-0000159480 00000 n
-0000158755 00000 n
-0000062384 00000 n
-0000000904 00001 f
-0000146567 00000 n
-0000147323 00000 n
-0000158629 00000 n
-0000147386 00000 n
-0000146630 00000 n
-0000062878 00000 n
-0000048960 00000 n
-0000049415 00000 n
-0000049447 00000 n
-0000000911 00001 f
-0000131986 00000 n
-0000132736 00000 n
-0000146504 00000 n
-0000132799 00000 n
-0000132049 00000 n
-0000063362 00000 n
-0000000921 00001 f
-0000119816 00000 n
-0000120569 00000 n
-0000131923 00000 n
-0000120632 00000 n
-0000119879 00000 n
-0000063860 00000 n
-0000049032 00000 n
-0000049297 00000 n
-0000049329 00000 n
-0000000928 00001 f
-0000105212 00000 n
-0000105960 00000 n
-0000119753 00000 n
-0000106023 00000 n
-0000105275 00000 n
-0000064347 00000 n
-0000000929 00001 f
-0000000939 00001 f
-0000093039 00000 n
-0000093791 00000 n
-0000105149 00000 n
-0000093854 00000 n
-0000093102 00000 n
-0000064848 00000 n
-0000049106 00000 n
-0000049179 00000 n
-0000049211 00000 n
-0000000946 00001 f
-0000078414 00000 n
-0000079171 00000 n
-0000092976 00000 n
-0000079234 00000 n
-0000078477 00000 n
-0000065328 00000 n
+0000048707 00000 n
+0000050503 00000 n
+0000050535 00000 n
+0000000885 00000 f
+0000048778 00000 n
+0000050385 00000 n
+0000050417 00000 n
+0000000886 00000 f
+0000000887 00000 f
+0000000888 00000 f
+0000000889 00000 f
+0000000890 00000 f
+0000000891 00000 f
+0000000892 00000 f
+0000000893 00000 f
+0000000894 00000 f
+0000000895 00000 f
+0000000896 00000 f
+0000000897 00000 f
+0000000898 00000 f
+0000000899 00000 f
+0000000900 00000 f
+0000000904 00000 f
+0000048850 00000 n
+0000050267 00000 n
+0000050299 00000 n
+0000000905 00000 f
+0000000906 00000 f
+0000000907 00000 f
+0000000908 00000 f
+0000000909 00000 f
+0000000910 00000 f
+0000000911 00000 f
+0000000912 00000 f
+0000000913 00000 f
+0000000914 00000 f
+0000000915 00000 f
+0000000916 00000 f
+0000000917 00000 f
+0000000921 00000 f
+0000048922 00000 n
+0000050149 00000 n
+0000050181 00000 n
+0000000922 00000 f
+0000000923 00000 f
+0000000924 00000 f
+0000000925 00000 f
+0000000926 00000 f
+0000000927 00000 f
+0000000928 00000 f
+0000000929 00000 f
+0000000930 00000 f
+0000000931 00000 f
+0000000932 00000 f
+0000000933 00000 f
+0000000934 00000 f
+0000000935 00000 f
+0000000939 00000 f
+0000048996 00000 n
+0000050031 00000 n
+0000050063 00000 n
+0000000940 00000 f
+0000000941 00000 f
+0000000942 00000 f
+0000000943 00000 f
+0000000944 00000 f
+0000000945 00000 f
+0000000946 00000 f
+0000000947 00000 f
+0000000948 00000 f
+0000000949 00000 f
+0000000950 00000 f
+0000000951 00000 f
+0000000952 00000 f
+0000000953 00000 f
+0000000954 00000 f
+0000000955 00000 f
+0000000956 00000 f
+0000000957 00001 f
+0000000958 00000 f
+0000000959 00000 f
+0000000960 00000 f
+0000000961 00000 f
+0000000969 00000 f
+0000174447 00000 n
+0000174523 00000 n
+0000174747 00000 n
+0000175772 00000 n
+0000183336 00000 n
+0000248925 00000 n
+0000314514 00000 n
+0000000974 00001 f
+0000055683 00000 n
+0000049069 00000 n
+0000049913 00000 n
+0000049945 00000 n
+0000000987 00001 f
+0000049140 00000 n
+0000049795 00000 n
+0000049827 00000 n
+0000058541 00000 n
+0000159418 00000 n
+0000160143 00000 n
+0000173817 00000 n
+0000060510 00000 n
+0000060547 00000 n
+0000160206 00000 n
+0000159481 00000 n
+0000063196 00000 n
+0000000997 00001 f
+0000147299 00000 n
+0000148055 00000 n
+0000159355 00000 n
+0000148118 00000 n
+0000147362 00000 n
+0000063689 00000 n
+0000049212 00000 n
+0000049677 00000 n
+0000049709 00000 n
+0000001004 00001 f
+0000132732 00000 n
+0000133484 00000 n
+0000147235 00000 n
+0000133547 00000 n
+0000132795 00000 n
+0000064172 00000 n
+0000001014 00001 f
+0000120560 00000 n
+0000121317 00000 n
+0000132668 00000 n
+0000121381 00000 n
+0000120624 00000 n
+0000064671 00000 n
+0000049284 00000 n
+0000049557 00000 n
+0000049590 00000 n
+0000001021 00001 f
+0000106070 00000 n
+0000106822 00000 n
+0000120496 00000 n
+0000106886 00000 n
+0000106134 00000 n
+0000065160 00000 n
+0000001022 00001 f
+0000001032 00001 f
+0000093888 00000 n
+0000094644 00000 n
+0000106006 00000 n
+0000094708 00000 n
+0000093952 00000 n
+0000065664 00000 n
+0000049361 00000 n
+0000049437 00000 n
+0000049470 00000 n
+0000001039 00001 f
+0000079247 00000 n
+0000080008 00000 n
+0000093824 00000 n
+0000080072 00000 n
+0000079311 00000 n
+0000066147 00000 n
0000000000 00001 f
-0000066308 00000 n
-0000067065 00000 n
-0000078351 00000 n
-0000067128 00000 n
-0000066371 00000 n
-0000065829 00000 n
-0000057787 00000 n
-0000058077 00000 n
-0000055498 00000 n
-0000361937 00000 n
-0000058339 00000 n
-0000173156 00000 n
-0000173206 00000 n
-0000057517 00000 n
-0000000897 00000 n
-trailer
<</Size 962/Root 1 0 R/Info 956 0 R/ID[<DFAD564605F549E3ABF1FC747EBA5A34><A151DA051B174F59A99D14D40A0E4378>]>>
startxref
362074
%%EOF
\ No newline at end of file +0000067133 00000 n
+0000067894 00000 n
+0000079183 00000 n
+0000067958 00000 n
+0000067197 00000 n
+0000066651 00000 n
+0000058655 00000 n
+0000058947 00000 n
+0000056363 00000 n
+0000362622 00000 n
+0000059211 00000 n
+0000173880 00000 n
+0000173932 00000 n
+0000058383 00000 n
+0000000982 00000 n
+trailer
<</Size 1055/Root 1 0 R/Info 1049 0 R/ID[<DFAD564605F549E3ABF1FC747EBA5A34><45AB28F93CAE4209BAB0B0278EBC9323>]>>
startxref
362760
%%EOF
\ No newline at end of file diff --git a/src/compiler/scala/tools/nsc/doc/model/Entity.scala b/src/compiler/scala/tools/nsc/doc/model/Entity.scala index 678702c7f1..b5f12d312d 100644 --- a/src/compiler/scala/tools/nsc/doc/model/Entity.scala +++ b/src/compiler/scala/tools/nsc/doc/model/Entity.scala @@ -48,6 +48,7 @@ trait MemberEntity extends Entity { def resultType: TypeEntity def isDef: Boolean def isVal: Boolean + def isLazyVal: Boolean def isVar: Boolean def isImplicit: Boolean def isConstructor: Boolean @@ -131,7 +132,7 @@ trait Constructor extends NonTemplateMemberEntity { def valueParams : List[List[ValueParam]] } -/** A value (`val`) or variable (`var`) of a ''documentable'' class, trait or object. */ +/** A value (`val`), lazy val (`lazy val`) or variable (`var`) of a ''documentable'' class, trait or object. */ trait Val extends NonTemplateMemberEntity /** An abstract type of a ''documentable'' class, trait or object. */ diff --git a/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala b/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala index 9641bc9045..d7e1e2fe1a 100644 --- a/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala +++ b/src/compiler/scala/tools/nsc/doc/model/ModelFactory.scala @@ -52,10 +52,6 @@ class ModelFactory(val global: Global, val settings: doc.Settings) extends Comme def inTemplate = inTpl def toRoot: List[EntityImpl] = this :: inTpl.toRoot def qualifiedName = name - override def equals(that: Any) = that match { - case that: EntityImpl => this.sym == that.sym - case _ => false - } } /** Provides a default implementation for instances of the `WeakTemplateEntity` type. It must be instantiated as a @@ -124,6 +120,7 @@ class ModelFactory(val global: Global, val settings: doc.Settings) extends Comme def resultType = makeType(sym.tpe.finalResultType, inTemplate, sym) def isDef = false def isVal = false + def isLazyVal = false def isVar = false def isImplicit = sym.isImplicit def isConstructor = false @@ -336,11 +333,15 @@ class ModelFactory(val global: Global, val settings: doc.Settings) extends Comme def makeMember(aSym: Symbol, inTpl: => DocTemplateImpl): List[MemberImpl] = { def makeMember0(bSym: Symbol): Option[MemberImpl] = { - if (bSym.isGetter && bSym.accessed.isMutable) + if (bSym.isGetter && bSym.isLazy) + Some(new NonTemplateMemberImpl(bSym, inTpl) with Val { + override def isLazyVal = true + }) + else if (bSym.isGetter && bSym.accessed.isMutable) Some(new NonTemplateMemberImpl(bSym, inTpl) with Val { override def isVar = true }) - else if (bSym.isMethod && !bSym.isGetterOrSetter && !bSym.isConstructor) + else if (bSym.isMethod && !bSym.isGetterOrSetter && !bSym.isConstructor && !bSym.isModule) Some(new NonTemplateParamMemberImpl(bSym, inTpl) with Def { override def isDef = true def typeParams = @@ -372,7 +373,7 @@ class ModelFactory(val global: Global, val settings: doc.Settings) extends Comme None } - if ((!aSym.isPackage && aSym.sourceFile == null) || !localShouldDocument(aSym) || aSym.isModuleClass || aSym.isPackageObject || aSym.isMixinConstructor) + if (!localShouldDocument(aSym) || aSym.isModuleClass || aSym.isPackageObject || aSym.isMixinConstructor) Nil else { val allSyms = useCases(aSym, inTpl.sym) map { case (bSym, bComment, bPos) => diff --git a/src/compiler/scala/tools/nsc/doc/model/comment/Body.scala b/src/compiler/scala/tools/nsc/doc/model/comment/Body.scala index 7d2aee2d98..29e47fa578 100644 --- a/src/compiler/scala/tools/nsc/doc/model/comment/Body.scala +++ b/src/compiler/scala/tools/nsc/doc/model/comment/Body.scala @@ -9,10 +9,41 @@ import scala.collection._ import java.net.URL -/** */ -final case class Body(blocks: Seq[Block]) +/** A body of text. A comment has a single body, which is composed of at least one block. Inside every body is exactly + * one summary (see [[scala.tools.nsc.doc.model.comment.Summary]]). */ +final case class Body(blocks: Seq[Block]) { -/** */ + /** The summary text of the comment body. */ + lazy val summary: Option[Inline] = { + def summaryInBlock(block: Block): Seq[Inline] = block match { + case Title(text, _) => summaryInInline(text) + case Paragraph(text) => summaryInInline(text) + case UnorderedList(items) => items flatMap { summaryInBlock(_) } + case OrderedList(items, _) => items flatMap { summaryInBlock(_) } + case DefinitionList(items) => items.values.toSeq flatMap { summaryInBlock(_) } + case _ => Nil + } + def summaryInInline(text: Inline): Seq[Inline] = text match { + case Summary(text) => List(text) + case Chain(items) => items flatMap { summaryInInline(_) } + case Italic(text) => summaryInInline(text) + case Bold(text) => summaryInInline(text) + case Underline(text) => summaryInInline(text) + case Superscript(text) => summaryInInline(text) + case Subscript(text) => summaryInInline(text) + case Link(_, title) => summaryInInline(title) + case _ => Nil + } + (blocks flatMap { summaryInBlock(_) }).toList match { + case Nil => None + case inline :: Nil => Some(inline) + case inlines => Some(Chain(inlines)) + } + } + +} + +/** A block-level element of text, such as a paragraph or code block. */ sealed abstract class Block final case class Title(text: Inline, level: Int) extends Block @@ -23,7 +54,7 @@ final case class OrderedList(items: Seq[Block], style: String) extends Block final case class DefinitionList(items: SortedMap[Inline, Block]) extends Block final case class HorizontalRule() extends Block -/** */ +/** An section of text inside a block, possibly with formatting. */ sealed abstract class Inline final case class Chain(items: Seq[Inline]) extends Inline @@ -36,3 +67,6 @@ final case class Link(target: String, title: Inline) extends Inline final case class EntityLink(target: TemplateEntity) extends Inline final case class Monospace(text: String) extends Inline final case class Text(text: String) extends Inline + +/** The summary of a comment, usually its first sentence. There must be exactly one summary per body. */ +final case class Summary(text: Inline) extends Inline diff --git a/src/compiler/scala/tools/nsc/doc/model/comment/CommentFactory.scala b/src/compiler/scala/tools/nsc/doc/model/comment/CommentFactory.scala index dba538046a..f067555cc3 100644 --- a/src/compiler/scala/tools/nsc/doc/model/comment/CommentFactory.scala +++ b/src/compiler/scala/tools/nsc/doc/model/comment/CommentFactory.scala @@ -102,17 +102,15 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => * @param comment The raw comment string (including start and end markers) to be parsed. * @param pos The position of the comment in source. */ protected def parse(comment: String, pos: Position): Comment = { + /** The cleaned raw comment as a list of lines. Cleaning removes comment start and end markers, line start markers * and unnecessary whitespace. */ val cleaned: List[String] = { def cleanLine(line: String): String = { //replaceAll removes trailing whitespaces line.replaceAll("""\s+$""", "") match { - case "" => "" // Empty lines are require to keep paragraphs case CleanCommentLine(ctl) => ctl - case tl => - reporter.warning(pos, "Please re-check this line of the comment") - tl + case tl => tl } } val strippedComment = comment.trim.stripPrefix("/*").stripSuffix("*/") @@ -221,20 +219,7 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => val deprecated = oneTag(SimpleTagKey("deprecated")) val note = allTags(SimpleTagKey("note")) val example = allTags(SimpleTagKey("example")) - val short = { - def findShort(blocks: Iterable[Block]): Inline = - if (blocks.isEmpty) Text("") - else blocks.head match { - case Title(text, _) => text - case Paragraph(text) => text - case Code(data) => Monospace(data.lines.next) - case UnorderedList(items) => findShort(items) - case OrderedList(items, _) => findShort(items) - case DefinitionList(items) => findShort(items.values) - case HorizontalRule() => findShort(blocks.tail) - } - findShort(body.blocks) - } + val short = body.summary getOrElse Text("no summary matey") } for ((key, _) <- bodyTags) @@ -264,6 +249,8 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => * @author Gilles Dubochet */ protected final class WikiParser(val buffer: Array[Char], pos: Position) extends CharReader(buffer) { wiki => + var summaryParsed = false + /** listStyle ::= '-' spc | '1.' spc | 'I.' spc | 'i.' spc | 'A.' spc | 'a.' spc * Characters used to build lists and their constructors */ protected val listStyles = Map[String, (Seq[Block] => Block)]( // TODO Should this be defined at some list companion? @@ -380,7 +367,16 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => /** {{{ para ::= inline '\n' }}} */ def para(): Block = { - val p = Paragraph(inline(checkParaEnded())) + val p = + if (summaryParsed) + Paragraph(inline(false)) + else { + val s = summary() + val r = + if (checkParaEnded) List(s) else List(s, inline(false)) + summaryParsed = true + Paragraph(Chain(r)) + } while (char == endOfLine && char != endOfText) nextChar() p @@ -388,34 +384,26 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => /* INLINES */ - def inline(isBlockEnd: => Boolean): Inline = - inline(isBlockEnd, isBlockEnd) + def inline(isInlineEnd: => Boolean): Inline = { - def inline(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { def inline0(): Inline = { - if (check("'''")) - bold(isInlineEnd, isBlockEnd) - else if (check("''")) - italic(isInlineEnd, isBlockEnd) - else if (check("`")) - monospace(isInlineEnd, isBlockEnd) - else if (check("__")) - underline(isInlineEnd, isBlockEnd) - else if (check("^")) - superscript(isInlineEnd, isBlockEnd) - else if (check(",,")) - subscript(isInlineEnd, isBlockEnd) - else if (check("[[")) - link(isInlineEnd, isBlockEnd) + if (check("'''")) bold() + else if (check("''")) italic() + else if (check("`")) monospace() + else if (check("__")) underline() + else if (check("^")) superscript() + else if (check(",,")) subscript() + else if (check("[[")) link() else { - readUntil { check("''") || char == '`' || check("__") || char == '^' || check(",,") || check("[[") || isInlineEnd || isBlockEnd || char == endOfLine } + readUntil { check("''") || char == '`' || check("__") || char == '^' || check(",,") || check("[[") || isInlineEnd || checkParaEnded || char == endOfLine } Text(getRead()) } } + val inlines: List[Inline] = { val iss = mutable.ListBuffer.empty[Inline] iss += inline0() - while(!isInlineEnd && !isBlockEnd && !checkParaEnded) { + while(!isInlineEnd && !checkParaEnded) { if (char == endOfLine) nextChar() val current = inline0() (iss.last, current) match { @@ -426,57 +414,66 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => } iss.toList } + inlines match { case Nil => Text("") case i :: Nil => i - case i :: is => Chain(i :: is) + case is => Chain(is) } + } - def bold(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def bold(): Inline = { jump("'''") - val i = inline(check("'''"), isBlockEnd) + val i = inline(check("'''")) jump("'''") Bold(i) } - def italic(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def italic(): Inline = { jump("''") - val i = inline(check("''"), isBlockEnd) + val i = inline(check("''")) jump("''") Italic(i) } - def monospace(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def monospace(): Inline = { jump("`") readUntil { char == '`' } jump("`") Monospace(getRead()) } - def underline(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def underline(): Inline = { jump("__") - val i = inline(check("__"), isBlockEnd) + val i = inline(check("__")) jump("__") Underline(i) } - def superscript(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def superscript(): Inline = { jump("^") - val i = inline(check("^"), isBlockEnd) + val i = inline(check("^")) jump("^") Superscript(i) } - def subscript(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def subscript(): Inline = { jump(",,") - val i = inline(check(",,"), isBlockEnd) + val i = inline(check(",,")) jump(",,") Subscript(i) } - protected val SchemeUri = - new Regex("""([^:]+:.*)""") + def summary(): Inline = { + val i = inline(check(".")) + Summary( + if (jump(".")) + Chain(List(i, Text("."))) + else + i + ) + } def entityLink(query: String): Inline = findTemplate(query) match { case Some(tpl) => @@ -485,14 +482,15 @@ trait CommentFactory { thisFactory: ModelFactory with CommentFactory => Text(query) } - def link(isInlineEnd: => Boolean, isBlockEnd: => Boolean): Inline = { + def link(): Inline = { + val SchemeUri = new Regex("""([^:]+:.*)""") jump("[[") readUntil { check("]]") || check(" ") } val target = getRead() val title = if (!check("]]")) Some({ jump(" ") - inline(check("]]"), isBlockEnd) + inline(check("]]")) }) else None jump("]]") diff --git a/src/compiler/scala/tools/nsc/io/Path.scala b/src/compiler/scala/tools/nsc/io/Path.scala index 6b88f3cfca..afef38be3c 100644 --- a/src/compiler/scala/tools/nsc/io/Path.scala +++ b/src/compiler/scala/tools/nsc/io/Path.scala @@ -9,9 +9,7 @@ import java.io.{ FileInputStream, FileOutputStream, BufferedReader, BufferedWriter, InputStreamReader, OutputStreamWriter, BufferedInputStream, BufferedOutputStream, RandomAccessFile, File => JFile } import java.net.{ URI, URL } -import collection.{ Seq, Traversable } -import PartialFunction._ -import scala.util.Random.nextASCIIString +import scala.util.Random.alphanumeric /** An abstraction for filesystem paths. The differences between * Path, File, and Directory are primarily to communicate intent. @@ -71,7 +69,8 @@ object Path else if (jfile.isDirectory) new Directory(jfile) else new Path(jfile) - private[io] def randomPrefix = nextASCIIString(6) + /** Avoiding any shell/path issues by only using alphanumerics. */ + private[io] def randomPrefix = alphanumeric take 6 mkString private[io] def fail(msg: String) = throw FileOperationException(msg) } import Path._ diff --git a/src/compiler/scala/tools/nsc/settings/MutableSettings.scala b/src/compiler/scala/tools/nsc/settings/MutableSettings.scala index 8012b9389b..b32796e829 100644 --- a/src/compiler/scala/tools/nsc/settings/MutableSettings.scala +++ b/src/compiler/scala/tools/nsc/settings/MutableSettings.scala @@ -95,10 +95,7 @@ class MutableSettings(val errorFn: String => Unit) extends AbsSettings with Scal ): Option[List[String]] = lookupSetting(cmd) match { case None => errorFn("Parameter '" + cmd + "' is not recognised by Scalac.") ; None - case Some(cmd) => - val res = setter(cmd)(args) - cmd.postSetHook() - res + case Some(cmd) => setter(cmd)(args) } // if arg is of form -Xfoo:bar,baz,quux @@ -191,10 +188,15 @@ class MutableSettings(val errorFn: String => Unit) extends AbsSettings with Scal trait SettingValue extends AbsSettingValue { protected var v: T protected var setByUser: Boolean = false + def postSetHook(): Unit def isDefault: Boolean = !setByUser def value: T = v - def value_=(arg: T) = { setByUser = true ; v = arg } + def value_=(arg: T) = { + setByUser = true + v = arg + postSetHook() + } } /** A class for holding mappings from source directories to @@ -305,7 +307,7 @@ class MutableSettings(val errorFn: String => Unit) extends AbsSettings with Scal abstract class Setting(val name: String, val helpDescription: String) extends AbsSetting with SettingValue with Mutable { /** Will be called after this Setting is set for any extra work. */ private var _postSetHook: this.type => Unit = (x: this.type) => () - def postSetHook() = { _postSetHook(this) ; this } + def postSetHook(): Unit = _postSetHook(this) def withPostSetHook(f: this.type => Unit): this.type = { _postSetHook = f ; this } /** The syntax defining this setting in a help string */ diff --git a/src/compiler/scala/tools/nsc/symtab/Symbols.scala b/src/compiler/scala/tools/nsc/symtab/Symbols.scala index 4c0c1ec739..9c6d6662e3 100644 --- a/src/compiler/scala/tools/nsc/symtab/Symbols.scala +++ b/src/compiler/scala/tools/nsc/symtab/Symbols.scala @@ -1538,7 +1538,7 @@ trait Symbols extends reflect.generic.Symbols { self: SymbolTable => "package object "+owner.nameString else compose(List(kindString, - if (isClassConstructor) owner.simpleName.decode+idString else nameString)) + if (isClassConstructor) owner.simpleName+idString else nameString)) /** If owner is a package object, its owner, else the normal owner. */ diff --git a/src/compiler/scala/tools/nsc/symtab/Types.scala b/src/compiler/scala/tools/nsc/symtab/Types.scala index 2cd690fbbf..863ad7bec4 100644 --- a/src/compiler/scala/tools/nsc/symtab/Types.scala +++ b/src/compiler/scala/tools/nsc/symtab/Types.scala @@ -3801,6 +3801,18 @@ A type's typeSymbol should never be inspected directly. private def isUnifiable(pre1: Type, pre2: Type) = (beginsWithTypeVarOrIsRefined(pre1) || beginsWithTypeVarOrIsRefined(pre2)) && (pre1 =:= pre2) + /** Returns true iff we are past phase specialize, + * sym1 and sym2 are two existential skolems with equal names and bounds, + * and pre1 and pre2 are equal prefixes + */ + private def isSameSpecializedSkolem(sym1: Symbol, sym2: Symbol, pre1: Type, pre2: Type) = { + sym1.isExistentialSkolem && sym2.isExistentialSkolem && + sym1.name == sym2.name && + phase.specialized && + sym1.info =:= sym2.info && + pre1 =:= pre2 + } + private def equalSymsAndPrefixes(sym1: Symbol, pre1: Type, sym2: Symbol, pre2: Type): Boolean = if (sym1 == sym2) sym1.hasFlag(PACKAGE) || phase.erasedTypes || pre1 =:= pre2 else (sym1.name == sym2.name) && isUnifiable(pre1, pre2) @@ -4264,8 +4276,9 @@ A type's typeSymbol should never be inspected directly. val pre1 = tr1.pre val pre2 = tr2.pre (((if (sym1 == sym2) phase.erasedTypes || pre1 <:< pre2 - else (sym1.name == sym2.name && isUnifiable(pre1, pre2))) && - isSubArgs(tr1.args, tr2.args, sym1.typeParams)) + else (sym1.name == sym2.name && + (isUnifiable(pre1, pre2) || isSameSpecializedSkolem(sym1, sym2, pre1, pre2)))) && + isSubArgs(tr1.args, tr2.args, sym1.typeParams)) || sym2.isClass && { val base = tr1 baseType sym2 diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala index 3a8d93a7a7..c78664bc19 100644 --- a/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala +++ b/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala @@ -221,9 +221,14 @@ abstract class ClassfileParser { val ownerTpe = getClassOrArrayType(in.getChar(start + 1)) if (settings.debug.value) log("getMemberSymbol(static: " + static + "): owner type: " + ownerTpe + " " + ownerTpe.typeSymbol.originalName) - val (name, tpe) = getNameAndType(in.getChar(start + 3), ownerTpe) + val (name0, tpe0) = getNameAndType(in.getChar(start + 3), ownerTpe) if (settings.debug.value) - log("getMemberSymbol: name and tpe: " + name + ": " + tpe) + log("getMemberSymbol: name and tpe: " + name0 + ": " + tpe0) + + forceMangledName(tpe0.typeSymbol.name, false) + val (name, tpe) = getNameAndType(in.getChar(start + 3), ownerTpe) +// println("new tpe: " + tpe + " at phase: " + phase) + if (name == nme.MODULE_INSTANCE_FIELD) { val index = in.getChar(start + 1) val name = getExternalName(in.getChar(starts(index) + 1)) @@ -240,9 +245,10 @@ abstract class ClassfileParser { f = owner.info.member(newTermName(origName.toString + nme.LOCAL_SUFFIX)).suchThat(_.tpe =:= tpe) if (f == NoSymbol) { // if it's an impl class, try to find it's static member inside the class - if (ownerTpe.typeSymbol.isImplClass) + if (ownerTpe.typeSymbol.isImplClass) { +// println("impl class, member: " + owner.tpe.member(origName) + ": " + owner.tpe.member(origName).tpe) f = ownerTpe.member(origName).suchThat(_.tpe =:= tpe) - else { + } else { log("Couldn't find " + name + ": " + tpe + " inside: \n" + ownerTpe) f = if (tpe.isInstanceOf[MethodType]) owner.newMethod(owner.pos, name).setInfo(tpe) else owner.newValue(owner.pos, name).setInfo(tpe).setFlag(MUTABLE) @@ -384,11 +390,14 @@ abstract class ClassfileParser { * flatten would not lift classes that were not referenced in the source code. */ def forceMangledName(name: Name, module: Boolean): Symbol = { - val parts = name.toString.split(Array('.', '$')) + val parts = name.decode.toString.split(Array('.', '$')) var sym: Symbol = definitions.RootClass atPhase(currentRun.flattenPhase.prev) { - for (part0 <- parts; val part = newTermName(part0)) { - val sym1 = sym.info.decl(part.encode)//.suchThat(module == _.isModule) + for (part0 <- parts; if !(part0 == ""); val part = newTermName(part0)) { + val sym1 = atPhase(currentRun.icodePhase) { + sym.linkedClassOfClass.info + sym.info.decl(part.encode) + }//.suchThat(module == _.isModule) if (sym1 == NoSymbol) sym = sym.info.decl(part.encode.toTypeName) else diff --git a/src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala b/src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala index 92dfb3749a..e129737ebd 100644 --- a/src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala +++ b/src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala @@ -99,26 +99,34 @@ abstract class ICodeReader extends ClassfileParser { val owner = getOwner(jflags) val dummySym = owner.newMethod(owner.pos, name).setFlag(javaToScalaFlags(jflags)) - var tpe = pool.getType(dummySym, in.nextChar) - - if ("<clinit>" == name.toString) - (jflags, NoSymbol) - else { - val owner = getOwner(jflags) - var sym = owner.info.member(name).suchThat(old => sameType(old.tpe, tpe)); - if (sym == NoSymbol) - sym = owner.info.member(newTermName(name.toString + nme.LOCAL_SUFFIX)).suchThat(old => old.tpe =:= tpe); - if (sym == NoSymbol) { - log("Could not find symbol for " + name + ": " + tpe + " in " + owner.info.decls) - log(owner.info.member(name).tpe + " : " + tpe) - if (field) - sym = owner.newValue(owner.pos, name).setInfo(tpe).setFlag(MUTABLE | javaToScalaFlags(jflags)) - else - sym = dummySym.setInfo(tpe) - owner.info.decls.enter(sym) - log("added " + sym + ": " + sym.tpe) + try { + val ch = in.nextChar + var tpe = pool.getType(dummySym, ch) + + if ("<clinit>" == name.toString) + (jflags, NoSymbol) + else { + val owner = getOwner(jflags) + var sym = owner.info.member(name).suchThat(old => sameType(old.tpe, tpe)); + if (sym == NoSymbol) + sym = owner.info.member(newTermName(name.toString + nme.LOCAL_SUFFIX)).suchThat(old => old.tpe =:= tpe); + if (sym == NoSymbol) { + log("Could not find symbol for " + name + ": " + tpe + " in " + owner.info.decls) + log(owner.info.member(name).tpe + " : " + tpe) + if (name.toString() == "toMap") + tpe = pool.getType(dummySym, ch) + if (field) + sym = owner.newValue(owner.pos, name).setInfo(tpe).setFlag(MUTABLE | javaToScalaFlags(jflags)) + else + sym = dummySym.setInfo(tpe) + owner.info.decls.enter(sym) + log("added " + sym + ": " + sym.tpe) + } + (jflags, sym) } - (jflags, sym) + } catch { + case e: MissingRequirementError => + (jflags, NoSymbol) } } @@ -149,18 +157,25 @@ abstract class ICodeReader extends ClassfileParser { override def parseMethod() { val (jflags, sym) = parseMember(false) - if (sym != NoSymbol) { - log("Parsing method " + sym.fullName + ": " + sym.tpe); - this.method = new IMethod(sym); - this.method.returnType = toTypeKind(sym.tpe.resultType) - getCode(jflags).addMethod(this.method) - if ((jflags & JAVA_ACC_NATIVE) != 0) - this.method.native = true - val attributeCount = in.nextChar - for (i <- 0 until attributeCount) parseAttribute() - } else { - if (settings.debug.value) log("Skipping non-existent method."); - skipAttributes(); + var beginning = in.bp + try { + if (sym != NoSymbol) { + log("Parsing method " + sym.fullName + ": " + sym.tpe); + this.method = new IMethod(sym); + this.method.returnType = toTypeKind(sym.tpe.resultType) + getCode(jflags).addMethod(this.method) + if ((jflags & JAVA_ACC_NATIVE) != 0) + this.method.native = true + val attributeCount = in.nextChar + for (i <- 0 until attributeCount) parseAttribute() + } else { + if (settings.debug.value) log("Skipping non-existent method."); + skipAttributes(); + } + } catch { + case e: MissingRequirementError => + in.bp = beginning; skipAttributes + if (settings.debug.value) log("Skipping non-existent method. " + e.msg); } } @@ -187,12 +202,15 @@ abstract class ICodeReader extends ClassfileParser { definitions.getClass(name) } else if (name.endsWith("$")) { val sym = forceMangledName(name.subName(0, name.length -1).decode, true) +// println("classNameToSymbol: " + name + " sym: " + sym) + if (name.toString == "scala.collection.immutable.Stream$$hash$colon$colon$") + print("") if (sym == NoSymbol) definitions.getModule(name.subName(0, name.length - 1)) else sym } else { forceMangledName(name, false) - definitions.getClass(name) + atPhase(currentRun.flattenPhase.next)(definitions.getClass(name)) } if (sym.isModule) sym.moduleClass diff --git a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala index 5ced187128..d5d7ca254e 100644 --- a/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala +++ b/src/compiler/scala/tools/nsc/transform/SpecializeTypes.scala @@ -82,7 +82,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { } /** For a given class and concrete type arguments, give its specialized class */ - val specializedClass: mutable.Map[(Symbol, TypeEnv), Symbol] = new mutable.HashMap + val specializedClass: mutable.Map[(Symbol, TypeEnv), Symbol] = new mutable.LinkedHashMap /** Returns the generic class that was specialized to 'cls', or * 'cls' itself if cls is not a specialized subclass. @@ -712,6 +712,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { } info(opc.overriding) = Forward(om) log("typeEnv(om) = " + typeEnv(om)) + om setPos opc.overriding.pos // set the position of the concrete, overriding member } overloads(opc.overriding) = Overload(om, env) :: overloads(opc.overriding) oms += om @@ -825,12 +826,13 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { val res = tpe match { case PolyType(targs, ClassInfoType(base, decls, clazz)) => val parents = base map specializedType + log("transformInfo (poly) " + clazz + " with parents1: " + parents + " ph: " + phase) PolyType(targs, ClassInfoType(parents, new Scope(specializeClass(clazz, typeEnv(clazz))), clazz)) case ClassInfoType(base, decls, clazz) if !clazz.isPackageClass => -// base.map(_.typeSymbol.info) + atPhase(phase.next)(base.map(_.typeSymbol.info)) val parents = base map specializedType - log("transformInfo " + clazz + " with parents1: " + parents) + log("transformInfo " + clazz + " with parents1: " + parents + " ph: " + phase) val res = ClassInfoType(base map specializedType, new Scope(specializeClass(clazz, typeEnv(clazz))), clazz) res @@ -993,7 +995,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { if (!env.isEmpty) { val specMember = overload(symbol, env) if (specMember.isDefined) { - if (settings.debug.value) log("** routing " + tree + " to " + specMember.get.sym.fullName + " tree: " + Select(transform(qual), specMember.get.sym.name)) + if (settings.debug.value) log("** routing " + tree + " to " + specMember.get.sym.fullName) localTyper.typedOperator(atPos(tree.pos)(Select(transform(qual), specMember.get.sym.name))) } else { val qual1 = transform(qual) @@ -1006,7 +1008,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { else localTyper.typed(tree1) } else - super.transform(tree) + treeCopy.Select(tree, qual1, name) } } else super.transform(tree) @@ -1129,7 +1131,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { case Apply(sel @ Select(sup @ Super(qual, name), name1), args) => val res = localTyper.typed( - Apply(Select(Super(qual, name) setPos sup.pos, name1) setPos sel.pos, args) setPos tree.pos) + Apply(Select(Super(qual, name) setPos sup.pos, name1) setPos sel.pos, transformTrees(args)) setPos tree.pos) log("retyping call to super, from: " + symbol + " to " + res.symbol) res @@ -1200,9 +1202,11 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { override def transform(tree: Tree): Tree = tree match { case Select(qual, name) => if (tree.symbol.hasFlag(PRIVATE | PROTECTED)) { - log("changing private flag of " + tree.symbol) + log("changing private flag of " + tree.symbol + " privateWithin: " + tree.symbol.privateWithin) // tree.symbol.resetFlag(PRIVATE).setFlag(PROTECTED) - tree.symbol.resetFlag(PRIVATE | PROTECTED) + tree.symbol.makeNotPrivate(tree.symbol.owner) +// tree.symbol.resetFlag(PRIVATE | PROTECTED) +// tree.symbol.privateWithin = NoSymbol } super.transform(tree) @@ -1277,9 +1281,10 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { mbrs += ValDef(acc, EmptyTree).setType(NoType).setPos(m.pos) } // ctor - mbrs += DefDef(m, Modifiers(m.flags), List(vparams) map (_ map ValDef), EmptyTree) - } else - mbrs += DefDef(m, { paramss => EmptyTree }) + mbrs += atPos(m.pos)(DefDef(m, Modifiers(m.flags), List(vparams) map (_ map ValDef), EmptyTree)) + } else { + mbrs += atPos(m.pos)(DefDef(m, { paramss => EmptyTree })) + } } else if (m.isValue) { mbrs += ValDef(m, EmptyTree).setType(NoType).setPos(m.pos) } else if (m.isClass) { @@ -1293,7 +1298,7 @@ abstract class SpecializeTypes extends InfoTransform with TypingTransformers { } /** Create specialized class definitions */ - def implSpecClasses(trees: List[Tree]): List[Tree] = { + def implSpecClasses(trees: List[Tree]): List[Tree] = { val buf = new mutable.ListBuffer[Tree] for (tree <- trees) tree match { diff --git a/src/compiler/scala/tools/nsc/typechecker/Unapplies.scala b/src/compiler/scala/tools/nsc/typechecker/Unapplies.scala index 5ba52f5f06..6f432cc3c4 100644 --- a/src/compiler/scala/tools/nsc/typechecker/Unapplies.scala +++ b/src/compiler/scala/tools/nsc/typechecker/Unapplies.scala @@ -135,7 +135,7 @@ trait Unapplies extends ast.TreeDSL */ def caseModuleDef(cdef: ClassDef): ModuleDef = { def inheritFromFun = !(cdef.mods hasFlag ABSTRACT) && cdef.tparams.isEmpty && constrParamss(cdef).length == 1 - def createFun = gen.scalaFunctionConstr(constrParamss(cdef).head map (_.tpt), toIdent(cdef)) + def createFun = gen.scalaFunctionConstr(constrParamss(cdef).head map (_.tpt), toIdent(cdef), abstractFun = true) def parents = if (inheritFromFun) List(createFun) else Nil companionModuleDef(cdef, parents ::: List(gen.scalaScalaObjectConstr)) diff --git a/src/library/scala/Function0.scala b/src/library/scala/Function0.scala index 74905d8af7..867c7bc536 100644 --- a/src/library/scala/Function0.scala +++ b/src/library/scala/Function0.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with fancy comment) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with fancy comment) package scala + /** <p> * Function with 0 parameters. * </p> @@ -35,7 +36,7 @@ package scala * println(anonfun0()) * }</pre> */ -trait Function0[+R] extends AnyRef { self => +trait Function0[@specialized +R] extends AnyRef { self => def apply(): R override def toString() = "<function0>" diff --git a/src/library/scala/Function1.scala b/src/library/scala/Function1.scala index afc19417a2..a5780f561a 100644 --- a/src/library/scala/Function1.scala +++ b/src/library/scala/Function1.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with fancy comment) (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with fancy comment) (with extra methods) package scala + /** <p> * Function with 1 parameter. * </p> @@ -35,7 +36,7 @@ package scala * println(anonfun1(0)) * }</pre> */ -trait Function1[@specialized(Int, Long, Double) -T1, @specialized(Unit, Int, Long, Double) +R] extends AnyRef { self => +trait Function1[@specialized(Int, Long, Double) -T1, @specialized(Unit, Boolean, Int, Long, Double) +R] extends AnyRef { self => def apply(v1:T1): R override def toString() = "<function1>" diff --git a/src/library/scala/Function10.scala b/src/library/scala/Function10.scala index 8eb6fad84e..967d58fa35 100644 --- a/src/library/scala/Function10.scala +++ b/src/library/scala/Function10.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 10 parameters. * </p> diff --git a/src/library/scala/Function11.scala b/src/library/scala/Function11.scala index 7e94c6d2ca..5d6065ea1c 100644 --- a/src/library/scala/Function11.scala +++ b/src/library/scala/Function11.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 11 parameters. * </p> diff --git a/src/library/scala/Function12.scala b/src/library/scala/Function12.scala index e14b95fc81..a262e2d8f7 100644 --- a/src/library/scala/Function12.scala +++ b/src/library/scala/Function12.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 12 parameters. * </p> diff --git a/src/library/scala/Function13.scala b/src/library/scala/Function13.scala index 2deeed8aa7..6b1d0788fb 100644 --- a/src/library/scala/Function13.scala +++ b/src/library/scala/Function13.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 13 parameters. * </p> diff --git a/src/library/scala/Function14.scala b/src/library/scala/Function14.scala index 596bbb25b8..75b0d25f5e 100644 --- a/src/library/scala/Function14.scala +++ b/src/library/scala/Function14.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 14 parameters. * </p> diff --git a/src/library/scala/Function15.scala b/src/library/scala/Function15.scala index 9942ab2015..c66015d2aa 100644 --- a/src/library/scala/Function15.scala +++ b/src/library/scala/Function15.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 15 parameters. * </p> diff --git a/src/library/scala/Function16.scala b/src/library/scala/Function16.scala index 5419b40f8d..5b6968c106 100644 --- a/src/library/scala/Function16.scala +++ b/src/library/scala/Function16.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 16 parameters. * </p> diff --git a/src/library/scala/Function17.scala b/src/library/scala/Function17.scala index 17caf47a02..74321b950b 100644 --- a/src/library/scala/Function17.scala +++ b/src/library/scala/Function17.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 17 parameters. * </p> diff --git a/src/library/scala/Function18.scala b/src/library/scala/Function18.scala index 338083ef17..4cb1540161 100644 --- a/src/library/scala/Function18.scala +++ b/src/library/scala/Function18.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 18 parameters. * </p> diff --git a/src/library/scala/Function19.scala b/src/library/scala/Function19.scala index 92eb2afa29..337b9c4837 100644 --- a/src/library/scala/Function19.scala +++ b/src/library/scala/Function19.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 19 parameters. * </p> diff --git a/src/library/scala/Function2.scala b/src/library/scala/Function2.scala index 46023a9b3b..44c4e358b8 100644 --- a/src/library/scala/Function2.scala +++ b/src/library/scala/Function2.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with fancy comment) (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with fancy comment) (with extra methods) package scala + /** <p> * Function with 2 parameters. * </p> @@ -35,9 +36,7 @@ package scala * println(anonfun2(0, 1)) * }</pre> */ -trait Function2[@specialized(Int, Long, Double) -T1, - @specialized(Int, Long, Double) -T2, - @specialized(Unit, Int, Long, Double) +R] extends AnyRef { self => +trait Function2[@specialized(Int, Long, Double) -T1, @specialized(Int, Long, Double) -T2, @specialized(Unit, Boolean, Int, Long, Double) +R] extends AnyRef { self => def apply(v1:T1,v2:T2): R override def toString() = "<function2>" diff --git a/src/library/scala/Function20.scala b/src/library/scala/Function20.scala index 45636a1b7d..d381d2d82e 100644 --- a/src/library/scala/Function20.scala +++ b/src/library/scala/Function20.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 20 parameters. * </p> diff --git a/src/library/scala/Function21.scala b/src/library/scala/Function21.scala index 4463866a55..b78fd96dd3 100644 --- a/src/library/scala/Function21.scala +++ b/src/library/scala/Function21.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 21 parameters. * </p> diff --git a/src/library/scala/Function22.scala b/src/library/scala/Function22.scala index c148144ef4..2322a24e9d 100644 --- a/src/library/scala/Function22.scala +++ b/src/library/scala/Function22.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 22 parameters. * </p> diff --git a/src/library/scala/Function3.scala b/src/library/scala/Function3.scala index 52c777fdc9..82858c356f 100644 --- a/src/library/scala/Function3.scala +++ b/src/library/scala/Function3.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 3 parameters. * </p> diff --git a/src/library/scala/Function4.scala b/src/library/scala/Function4.scala index 79e92dc4e3..c97c00eb0c 100644 --- a/src/library/scala/Function4.scala +++ b/src/library/scala/Function4.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 4 parameters. * </p> diff --git a/src/library/scala/Function5.scala b/src/library/scala/Function5.scala index af849300f4..fb798741ea 100644 --- a/src/library/scala/Function5.scala +++ b/src/library/scala/Function5.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 5 parameters. * </p> diff --git a/src/library/scala/Function6.scala b/src/library/scala/Function6.scala index 487c650fc9..02a2bd4fb7 100644 --- a/src/library/scala/Function6.scala +++ b/src/library/scala/Function6.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 6 parameters. * </p> diff --git a/src/library/scala/Function7.scala b/src/library/scala/Function7.scala index 76de5c185c..7973bcb87c 100644 --- a/src/library/scala/Function7.scala +++ b/src/library/scala/Function7.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 7 parameters. * </p> diff --git a/src/library/scala/Function8.scala b/src/library/scala/Function8.scala index c8ca675365..32929db9d6 100644 --- a/src/library/scala/Function8.scala +++ b/src/library/scala/Function8.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 8 parameters. * </p> diff --git a/src/library/scala/Function9.scala b/src/library/scala/Function9.scala index 338acbcae2..490e44c39b 100644 --- a/src/library/scala/Function9.scala +++ b/src/library/scala/Function9.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala + /** <p> * Function with 9 parameters. * </p> diff --git a/src/library/scala/Product1.scala b/src/library/scala/Product1.scala index 0e93065e5a..af9a7eca20 100644 --- a/src/library/scala/Product1.scala +++ b/src/library/scala/Product1.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product1 { def unapply[T1](x: Product1[T1]): Option[Product1[T1]] = Some(x) diff --git a/src/library/scala/Product10.scala b/src/library/scala/Product10.scala index a63a1007fb..d6745d62ad 100644 --- a/src/library/scala/Product10.scala +++ b/src/library/scala/Product10.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product10 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10](x: Product10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]): Option[Product10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]] = Some(x) diff --git a/src/library/scala/Product11.scala b/src/library/scala/Product11.scala index a33df77b64..83cf5f0e55 100644 --- a/src/library/scala/Product11.scala +++ b/src/library/scala/Product11.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product11 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](x: Product11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]): Option[Product11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]] = Some(x) diff --git a/src/library/scala/Product12.scala b/src/library/scala/Product12.scala index 24b16876a3..845bba720d 100644 --- a/src/library/scala/Product12.scala +++ b/src/library/scala/Product12.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product12 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](x: Product12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]): Option[Product12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]] = Some(x) diff --git a/src/library/scala/Product13.scala b/src/library/scala/Product13.scala index 1013561af6..374b457789 100644 --- a/src/library/scala/Product13.scala +++ b/src/library/scala/Product13.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product13 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](x: Product13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]): Option[Product13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]] = Some(x) diff --git a/src/library/scala/Product14.scala b/src/library/scala/Product14.scala index ddeccf7c98..93bb53339d 100644 --- a/src/library/scala/Product14.scala +++ b/src/library/scala/Product14.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product14 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](x: Product14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]): Option[Product14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]] = Some(x) diff --git a/src/library/scala/Product15.scala b/src/library/scala/Product15.scala index 0f25bda254..71cefbafc5 100644 --- a/src/library/scala/Product15.scala +++ b/src/library/scala/Product15.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product15 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](x: Product15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]): Option[Product15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]] = Some(x) diff --git a/src/library/scala/Product16.scala b/src/library/scala/Product16.scala index 1fcf2d192b..aa87c9f40b 100644 --- a/src/library/scala/Product16.scala +++ b/src/library/scala/Product16.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product16 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](x: Product16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]): Option[Product16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]] = Some(x) diff --git a/src/library/scala/Product17.scala b/src/library/scala/Product17.scala index 8c5efa9cc5..7caa99a578 100644 --- a/src/library/scala/Product17.scala +++ b/src/library/scala/Product17.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product17 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](x: Product17[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]): Option[Product17[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17]] = Some(x) diff --git a/src/library/scala/Product18.scala b/src/library/scala/Product18.scala index 6ab150b1d1..ca0b168c83 100644 --- a/src/library/scala/Product18.scala +++ b/src/library/scala/Product18.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product18 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](x: Product18[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]): Option[Product18[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18]] = Some(x) diff --git a/src/library/scala/Product19.scala b/src/library/scala/Product19.scala index 86fc2e43fb..88256c44fd 100644 --- a/src/library/scala/Product19.scala +++ b/src/library/scala/Product19.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product19 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](x: Product19[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]): Option[Product19[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19]] = Some(x) diff --git a/src/library/scala/Product2.scala b/src/library/scala/Product2.scala index 436de41a01..6ce804fc89 100644 --- a/src/library/scala/Product2.scala +++ b/src/library/scala/Product2.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product2 { def unapply[T1, T2](x: Product2[T1, T2]): Option[Product2[T1, T2]] = Some(x) @@ -22,8 +23,7 @@ object Product2 { * * @since 2.3 */ -trait Product2[@specialized(Int, Long, Double) +T1, - @specialized(Int, Long, Double) +T2] extends Product { +trait Product2[@specialized(Int, Long, Double) +T1, @specialized(Int, Long, Double) +T2] extends Product { /** * The arity of this product. * @return 2 diff --git a/src/library/scala/Product20.scala b/src/library/scala/Product20.scala index cc398f7bb4..b9aab6988d 100644 --- a/src/library/scala/Product20.scala +++ b/src/library/scala/Product20.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product20 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](x: Product20[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]): Option[Product20[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20]] = Some(x) diff --git a/src/library/scala/Product21.scala b/src/library/scala/Product21.scala index b215c466ae..9ab61d35ca 100644 --- a/src/library/scala/Product21.scala +++ b/src/library/scala/Product21.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product21 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](x: Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]): Option[Product21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21]] = Some(x) diff --git a/src/library/scala/Product22.scala b/src/library/scala/Product22.scala index f7e10a2652..86fbaeca7f 100644 --- a/src/library/scala/Product22.scala +++ b/src/library/scala/Product22.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + object Product22 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](x: Product22[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]): Option[Product22[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22]] = Some(x) diff --git a/src/library/scala/Product3.scala b/src/library/scala/Product3.scala index 0fbd855b86..09044716a4 100644 --- a/src/library/scala/Product3.scala +++ b/src/library/scala/Product3.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product3 { def unapply[T1, T2, T3](x: Product3[T1, T2, T3]): Option[Product3[T1, T2, T3]] = Some(x) diff --git a/src/library/scala/Product4.scala b/src/library/scala/Product4.scala index efeec3c601..c6a5c74bb5 100644 --- a/src/library/scala/Product4.scala +++ b/src/library/scala/Product4.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product4 { def unapply[T1, T2, T3, T4](x: Product4[T1, T2, T3, T4]): Option[Product4[T1, T2, T3, T4]] = Some(x) diff --git a/src/library/scala/Product5.scala b/src/library/scala/Product5.scala index 64e59b6b1d..147fb2d305 100644 --- a/src/library/scala/Product5.scala +++ b/src/library/scala/Product5.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product5 { def unapply[T1, T2, T3, T4, T5](x: Product5[T1, T2, T3, T4, T5]): Option[Product5[T1, T2, T3, T4, T5]] = Some(x) diff --git a/src/library/scala/Product6.scala b/src/library/scala/Product6.scala index a2a819ef51..f967992e5e 100644 --- a/src/library/scala/Product6.scala +++ b/src/library/scala/Product6.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product6 { def unapply[T1, T2, T3, T4, T5, T6](x: Product6[T1, T2, T3, T4, T5, T6]): Option[Product6[T1, T2, T3, T4, T5, T6]] = Some(x) diff --git a/src/library/scala/Product7.scala b/src/library/scala/Product7.scala index b9fa32bf00..c7a9baef98 100644 --- a/src/library/scala/Product7.scala +++ b/src/library/scala/Product7.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product7 { def unapply[T1, T2, T3, T4, T5, T6, T7](x: Product7[T1, T2, T3, T4, T5, T6, T7]): Option[Product7[T1, T2, T3, T4, T5, T6, T7]] = Some(x) diff --git a/src/library/scala/Product8.scala b/src/library/scala/Product8.scala index 0f5aa6100a..8663b0868b 100644 --- a/src/library/scala/Product8.scala +++ b/src/library/scala/Product8.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product8 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8](x: Product8[T1, T2, T3, T4, T5, T6, T7, T8]): Option[Product8[T1, T2, T3, T4, T5, T6, T7, T8]] = Some(x) diff --git a/src/library/scala/Product9.scala b/src/library/scala/Product9.scala index 6adce6023f..8d2de090ab 100644 --- a/src/library/scala/Product9.scala +++ b/src/library/scala/Product9.scala @@ -8,11 +8,12 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:17 CEST 2010 package scala + object Product9 { def unapply[T1, T2, T3, T4, T5, T6, T7, T8, T9](x: Product9[T1, T2, T3, T4, T5, T6, T7, T8, T9]): Option[Product9[T1, T2, T3, T4, T5, T6, T7, T8, T9]] = Some(x) diff --git a/src/library/scala/Tuple1.scala b/src/library/scala/Tuple1.scala index 5d25cc5abb..d8f8126f42 100644 --- a/src/library/scala/Tuple1.scala +++ b/src/library/scala/Tuple1.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple1 is the canonical representation of a @see Product1 * */ diff --git a/src/library/scala/Tuple10.scala b/src/library/scala/Tuple10.scala index c9e38eec29..11889b3485 100644 --- a/src/library/scala/Tuple10.scala +++ b/src/library/scala/Tuple10.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple10 is the canonical representation of a @see Product10 * */ diff --git a/src/library/scala/Tuple11.scala b/src/library/scala/Tuple11.scala index 546800f3af..b44141c1ee 100644 --- a/src/library/scala/Tuple11.scala +++ b/src/library/scala/Tuple11.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple11 is the canonical representation of a @see Product11 * */ diff --git a/src/library/scala/Tuple12.scala b/src/library/scala/Tuple12.scala index 0f2d4e9af0..37a172e74f 100644 --- a/src/library/scala/Tuple12.scala +++ b/src/library/scala/Tuple12.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple12 is the canonical representation of a @see Product12 * */ diff --git a/src/library/scala/Tuple13.scala b/src/library/scala/Tuple13.scala index d9d540d334..68d4a5aa8f 100644 --- a/src/library/scala/Tuple13.scala +++ b/src/library/scala/Tuple13.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple13 is the canonical representation of a @see Product13 * */ diff --git a/src/library/scala/Tuple14.scala b/src/library/scala/Tuple14.scala index 18ea35a9f4..424beb040e 100644 --- a/src/library/scala/Tuple14.scala +++ b/src/library/scala/Tuple14.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple14 is the canonical representation of a @see Product14 * */ diff --git a/src/library/scala/Tuple15.scala b/src/library/scala/Tuple15.scala index cb1742786c..944ff9d1b5 100644 --- a/src/library/scala/Tuple15.scala +++ b/src/library/scala/Tuple15.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple15 is the canonical representation of a @see Product15 * */ diff --git a/src/library/scala/Tuple16.scala b/src/library/scala/Tuple16.scala index 0af7feeb45..276220fbf5 100644 --- a/src/library/scala/Tuple16.scala +++ b/src/library/scala/Tuple16.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple16 is the canonical representation of a @see Product16 * */ diff --git a/src/library/scala/Tuple17.scala b/src/library/scala/Tuple17.scala index ef02d51fc6..d965ca8504 100644 --- a/src/library/scala/Tuple17.scala +++ b/src/library/scala/Tuple17.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple17 is the canonical representation of a @see Product17 * */ diff --git a/src/library/scala/Tuple18.scala b/src/library/scala/Tuple18.scala index 6f2489e41d..77cc635034 100644 --- a/src/library/scala/Tuple18.scala +++ b/src/library/scala/Tuple18.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple18 is the canonical representation of a @see Product18 * */ diff --git a/src/library/scala/Tuple19.scala b/src/library/scala/Tuple19.scala index ad69657e2c..540aaa3893 100644 --- a/src/library/scala/Tuple19.scala +++ b/src/library/scala/Tuple19.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple19 is the canonical representation of a @see Product19 * */ diff --git a/src/library/scala/Tuple2.scala b/src/library/scala/Tuple2.scala index 7fea22410d..ee2fe84482 100644 --- a/src/library/scala/Tuple2.scala +++ b/src/library/scala/Tuple2.scala @@ -8,7 +8,7 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 (with extra methods) +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala @@ -16,11 +16,12 @@ import scala.collection.{TraversableLike, IterableLike} import scala.collection.generic.CanBuildFrom + + /** Tuple2 is the canonical representation of a @see Product2 * */ -case class Tuple2[@specialized(Int, Long, Double) +T1, - @specialized(Int, Long, Double) +T2](_1:T1,_2:T2) +case class Tuple2[@specialized(Int, Long, Double) +T1, @specialized(Int, Long, Double) +T2](_1:T1,_2:T2) extends Product2[T1, T2] { override def toString() = "(" + _1 + "," + _2 + ")" @@ -122,4 +123,5 @@ case class Tuple2[@specialized(Int, Long, Double) +T1, f(el1, elems2.next) } } + } diff --git a/src/library/scala/Tuple20.scala b/src/library/scala/Tuple20.scala index 5f4d4b26e8..58e7018518 100644 --- a/src/library/scala/Tuple20.scala +++ b/src/library/scala/Tuple20.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple20 is the canonical representation of a @see Product20 * */ diff --git a/src/library/scala/Tuple21.scala b/src/library/scala/Tuple21.scala index 780cbd15ad..e302bfbd80 100644 --- a/src/library/scala/Tuple21.scala +++ b/src/library/scala/Tuple21.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple21 is the canonical representation of a @see Product21 * */ diff --git a/src/library/scala/Tuple22.scala b/src/library/scala/Tuple22.scala index f45cab85fa..2fd4fc7166 100644 --- a/src/library/scala/Tuple22.scala +++ b/src/library/scala/Tuple22.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple22 is the canonical representation of a @see Product22 * */ diff --git a/src/library/scala/Tuple3.scala b/src/library/scala/Tuple3.scala index a1fca95e4d..e6464cf52c 100644 --- a/src/library/scala/Tuple3.scala +++ b/src/library/scala/Tuple3.scala @@ -8,13 +8,16 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 (with extra methods) package scala import scala.collection.{TraversableLike, IterableLike} import scala.collection.generic.CanBuildFrom + + + /** Tuple3 is the canonical representation of a @see Product3 * */ @@ -136,4 +139,5 @@ case class Tuple3[+T1, +T2, +T3](_1:T1,_2:T2,_3:T3) f(el1, elems2.next, elems3.next) } } + } diff --git a/src/library/scala/Tuple4.scala b/src/library/scala/Tuple4.scala index fbf5d341a4..55cfae2c03 100644 --- a/src/library/scala/Tuple4.scala +++ b/src/library/scala/Tuple4.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple4 is the canonical representation of a @see Product4 * */ diff --git a/src/library/scala/Tuple5.scala b/src/library/scala/Tuple5.scala index 033f26263d..ec52ee039e 100644 --- a/src/library/scala/Tuple5.scala +++ b/src/library/scala/Tuple5.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple5 is the canonical representation of a @see Product5 * */ diff --git a/src/library/scala/Tuple6.scala b/src/library/scala/Tuple6.scala index d360adad2a..5f41c1de2a 100644 --- a/src/library/scala/Tuple6.scala +++ b/src/library/scala/Tuple6.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple6 is the canonical representation of a @see Product6 * */ diff --git a/src/library/scala/Tuple7.scala b/src/library/scala/Tuple7.scala index 5a080c2e0e..0e2315c573 100644 --- a/src/library/scala/Tuple7.scala +++ b/src/library/scala/Tuple7.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple7 is the canonical representation of a @see Product7 * */ diff --git a/src/library/scala/Tuple8.scala b/src/library/scala/Tuple8.scala index 551c5e5d34..58b2e13af8 100644 --- a/src/library/scala/Tuple8.scala +++ b/src/library/scala/Tuple8.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple8 is the canonical representation of a @see Product8 * */ diff --git a/src/library/scala/Tuple9.scala b/src/library/scala/Tuple9.scala index 8098daaf40..360228cb68 100644 --- a/src/library/scala/Tuple9.scala +++ b/src/library/scala/Tuple9.scala @@ -8,12 +8,13 @@ // $Id$ -// generated by genprod on Sun Jan 17 19:38:09 PST 2010 +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 package scala + /** Tuple9 is the canonical representation of a @see Product9 * */ diff --git a/src/library/scala/collection/BitSetLike.scala b/src/library/scala/collection/BitSetLike.scala index 7c5e2fb269..3028cca6eb 100644 --- a/src/library/scala/collection/BitSetLike.scala +++ b/src/library/scala/collection/BitSetLike.scala @@ -41,7 +41,7 @@ trait BitSetLike[+This <: BitSetLike[This] with Set[Int]] extends SetLike[Int, T protected def nwords: Int /** The words at index `idx', or 0L if outside the range of the set - * @note Requires `idx >= 0` + * '''Note:''' requires `idx >= 0` */ protected def word(idx: Int): Long diff --git a/src/library/scala/collection/IndexedSeq.scala b/src/library/scala/collection/IndexedSeq.scala index 72878a8ad6..78165cb242 100644 --- a/src/library/scala/collection/IndexedSeq.scala +++ b/src/library/scala/collection/IndexedSeq.scala @@ -24,6 +24,7 @@ trait IndexedSeq[+A] extends Seq[A] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. * @define coll indexed sequence * @define Coll IndexedSeq */ diff --git a/src/library/scala/collection/IndexedSeqLike.scala b/src/library/scala/collection/IndexedSeqLike.scala index 453b4384f7..7bfad167c6 100644 --- a/src/library/scala/collection/IndexedSeqLike.scala +++ b/src/library/scala/collection/IndexedSeqLike.scala @@ -66,13 +66,13 @@ trait IndexedSeqLike[+A, +Repr] extends SeqLike[A, Repr] { self => if (i < end) self(i) else Iterator.empty.next /** $super - * @note `drop` is overridden to enable fast searching in the middle of indexed sequences. + * '''Note:''' `drop` is overridden to enable fast searching in the middle of indexed sequences. */ override def drop(n: Int): Iterator[A] = if (n > 0) new Elements(start + n, end) else this /** $super - * @note `take` is overridden to be symmetric to `drop`. + * '''Note:''' `take` is overridden to be symmetric to `drop`. */ override def take(n: Int): Iterator[A] = if (n <= 0) Iterator.empty.buffered diff --git a/src/library/scala/collection/Iterable.scala b/src/library/scala/collection/Iterable.scala index 65d4dfcbe2..2baacec9f9 100644 --- a/src/library/scala/collection/Iterable.scala +++ b/src/library/scala/collection/Iterable.scala @@ -36,6 +36,7 @@ trait Iterable[+A] extends Traversable[A] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. * @define coll iterable collection * @define Coll Iterable */ diff --git a/src/library/scala/collection/IterableView.scala b/src/library/scala/collection/IterableView.scala index 436c000909..a6078bcdc8 100644 --- a/src/library/scala/collection/IterableView.scala +++ b/src/library/scala/collection/IterableView.scala @@ -14,14 +14,14 @@ package scala.collection import generic._ import TraversableView.NoBuilder -/** A base class for views of Iterables. - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** A base trait for non-strict views of `Iterable`s. + * $iterableViewInfo */ trait IterableView[+A, +Coll] extends IterableViewLike[A, Coll, IterableView[A, Coll]] +/** An object containing the necessary implicit definitions to make + * `IterableView`s work. Its definitions are generally not accessed directly by clients. + */ object IterableView { type Coll = TraversableView[_, C] forSome {type C <: Traversable[_]} implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, IterableView[A, Iterable[_]]] = diff --git a/src/library/scala/collection/IterableViewLike.scala b/src/library/scala/collection/IterableViewLike.scala index b8f0b65faf..49fcee842c 100644 --- a/src/library/scala/collection/IterableViewLike.scala +++ b/src/library/scala/collection/IterableViewLike.scala @@ -16,11 +16,11 @@ import collection.immutable.Stream import TraversableView.NoBuilder /** A template trait for non-strict views of iterable collections. - * $iterableviewInfo + * $iterableViewInfo * - * @define iterableviewInfo - * $viewinfo - * All views for iterable collections are defined by creating a new `iterator` method. + * @define iterableViewInfo + * $viewInfo + * All views for iterable collections are defined by re-interpreting the `iterator` method. * * @author Martin Odersky * @version 2.8 diff --git a/src/library/scala/collection/Iterator.scala b/src/library/scala/collection/Iterator.scala index 2ee4e8056e..24c447b24b 100644 --- a/src/library/scala/collection/Iterator.scala +++ b/src/library/scala/collection/Iterator.scala @@ -32,10 +32,10 @@ object Iterator { } /** Creates an iterator which produces a single element. + * '''Note:''' Equivalent, but more efficient than Iterator(elem) * @param elem the element * @return An iterator which produces `elem` on the first call to `next`, * and which has no further elements. - * @note Equivalent, but more efficient than Iterator(elem) */ def single[A](elem: A) = new Iterator[A] { private var hasnext = true @@ -429,7 +429,7 @@ trait Iterator[+A] extends TraversableOnce[A] { * satisfy the predicate `p`. The order of the elements * is preserved. * - * @note `withFilter` is the same as `filter` on iterators. It exists so that + * '''Note:''' `withFilter` is the same as `filter` on iterators. It exists so that * for-expressions with filters work over iterators. * * @param p the predicate used to test values. @@ -1033,10 +1033,10 @@ trait Iterator[+A] extends TraversableOnce[A] { * this sequence starting at position `start`. Like `copyToArray`, * but designed to accomodate IO stream operations. * + * '''Note:''' the array must be large enough to hold `sz` elements. * @param xs the array to fill. * @param start the starting index. * @param sz the maximum number of elements to be read. - * @note the array must be large enough to hold `sz` elements. */ @deprecated("use copyToArray instead") def readInto[B >: A](xs: Array[B], start: Int, sz: Int) { diff --git a/src/library/scala/collection/LinearSeq.scala b/src/library/scala/collection/LinearSeq.scala index ef7d4c9390..ba0eb6a22d 100644 --- a/src/library/scala/collection/LinearSeq.scala +++ b/src/library/scala/collection/LinearSeq.scala @@ -24,6 +24,7 @@ trait LinearSeq[+A] extends Seq[A] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. * @define coll linear sequence * @define Coll LinearSeq */ diff --git a/src/library/scala/collection/Map.scala b/src/library/scala/collection/Map.scala index 9d44a950de..0722d55f03 100644 --- a/src/library/scala/collection/Map.scala +++ b/src/library/scala/collection/Map.scala @@ -13,43 +13,33 @@ package scala.collection import generic._ -/** <p> - * A map from keys of type <code>A</code> to values of type <code>B</code>. - * To implement a concrete map, you need to provide implementations of the - * following methods (where <code>This</code> is the type of the map in question): - * </p><pre> - * <b>def</b> get(key: A): Option[B] - * <b>def</b> iterator: Iterator[(A, B)] - * <b>def</b> + [B1 >: B](kv: (A, B1)): This - * <b>def</b> -(key: A): This</pre> - * <p> - * If you wish that methods like `take`, `drop`, `filter` return the same kind - * of map, you should also override: - * </p><pre> - * <b>def</b> empty: This</pre> - * <p> - * It might also be a good idea to override methods <code>foreach</code> - * and <code>size</code> for efficiency. - * </p> +/** + * A map from keys of type `A` to values of type `B`. * - * @note If you do not have specific implementations for `add` and `-` in mind, - * you might consider inheriting from <code>DefaultMap</code> instead. + * $mapnote * - * @note If your additions and mutations return the same kind of map as the map - * you are defining, you should inherit from <code>MapLike</code> as well. + * '''Note:''' If you do not have specific implementations for `add` and `-` in mind, + * you might consider inheriting from `DefaultMap` instead. * - * @since 1 + * '''Note:''' If your additions and mutations return the same kind of map as the map + * you are defining, you should inherit from `MapLike` as well. + * + * @tparam A the type of the keys in this map. + * @tparam B the type of the values associated with keys. + * + * @since 1 */ trait Map[A, +B] extends Iterable[(A, B)] with MapLike[A, B, Map[A, B]] { def empty: Map[A, B] = Map.empty } -/* Factory object for `Map` class - * - * @since 2.5 +/** $factoryInfo + * @define Coll Map + * @define coll map */ object Map extends MapFactory[Map] { def empty[A, B]: immutable.Map[A, B] = immutable.Map.empty + /** $mapCanBuildFromInfo */ implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), Map[A, B]] = new MapCanBuildFrom[A, B] } diff --git a/src/library/scala/collection/MapLike.scala b/src/library/scala/collection/MapLike.scala index 057224a705..9bca2f09a0 100644 --- a/src/library/scala/collection/MapLike.scala +++ b/src/library/scala/collection/MapLike.scala @@ -15,20 +15,14 @@ import mutable.{Builder, StringBuilder, MapBuilder} import annotation.migration import PartialFunction._ -/** A template trait for maps of type `Map[A, B]` which associate keys of type `A` - * with values of type `B`. +/** A template trait for maps, which associate keys with values. * - * @tparam A the type of the keys. - * @tparam B the type of associated values. - * @tparam This the type of the map itself. - * - * $mapnote + * $mapNote + * $mapTags + * @since 2.8 * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 - * $mapnote - * @define $mapnote @note + * @define mapNote + * '''Implementation note:''' * This trait provides most of the operations of a `Map` independently of its representation. * It is typically inherited by concrete implementations of maps. * @@ -47,6 +41,15 @@ import PartialFunction._ * }}} * It is also good idea to override methods `foreach` and * `size` for efficiency. + * + * @define mapTags + * @tparam A the type of the keys. + * @tparam B the type of associated values. + * @tparam This the type of the map itself. + * + * @author Martin Odersky + * @version 2.8 + * * @define coll map * @define Coll Map * @define willNotTerminateInf @@ -287,14 +290,15 @@ self => ((repr: Map[A, B1]) /: xs) (_ + _) /** Returns a new map with all key/value pairs for which the predicate - * <code>p</code> returns <code>true</code>. + * `p` returns `true`. * - * @param p A predicate over key-value pairs - * @note This method works by successively removing elements fro which the + * '''Note:''' This method works by successively removing elements fro which the * predicate is false from this set. * If removal is slow, or you expect that most elements of the set - * will be removed, you might consider using <code>filter</code> + * will be removed, you might consider using `filter` * with a negated predicate instead. + * @param p A predicate over key-value pairs + * @return A new map containing elements not satisfying the predicate. */ override def filterNot(p: ((A, B)) => Boolean): This = { var res: This = repr diff --git a/src/library/scala/collection/Seq.scala b/src/library/scala/collection/Seq.scala index baf2c0031e..f6b89b67b8 100644 --- a/src/library/scala/collection/Seq.scala +++ b/src/library/scala/collection/Seq.scala @@ -25,6 +25,7 @@ trait Seq[+A] extends PartialFunction[Int, A] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. * @define coll sequence * @define Coll Seq */ diff --git a/src/library/scala/collection/SeqView.scala b/src/library/scala/collection/SeqView.scala index 9a0025bd81..68819e899d 100644 --- a/src/library/scala/collection/SeqView.scala +++ b/src/library/scala/collection/SeqView.scala @@ -14,16 +14,13 @@ package scala.collection import generic._ import TraversableView.NoBuilder -/** A non-strict projection of an iterable. - * @author Sean McDirmid - * @author Martin Odersky - * @version 2.8 +/** A base trait for non-strict views of sequences. + * $seqViewInfo */ trait SeqView[+A, +Coll] extends SeqViewLike[A, Coll, SeqView[A, Coll]] -/** $factoryInfo - * @define coll sequence view - * @define Coll SeqView +/** An object containing the necessary implicit definitions to make + * `SeqView`s work. Its definitions are generally not accessed directly by clients. */ object SeqView { type Coll = TraversableView[_, C] forSome {type C <: Traversable[_]} diff --git a/src/library/scala/collection/SeqViewLike.scala b/src/library/scala/collection/SeqViewLike.scala index 7014833a46..6f1f29f536 100644 --- a/src/library/scala/collection/SeqViewLike.scala +++ b/src/library/scala/collection/SeqViewLike.scala @@ -15,10 +15,19 @@ import generic._ import Seq.fill import TraversableView.NoBuilder -/** A template trait for a non-strict view of a sequence. - * @author Sean McDirmid - * @author Martin Odersky - * @version 2.8 +/** A template trait for non-strict views of sequences. + * $seqViewInfo + * + * @define seqViewInfo + * $viewInfo + * All views for sequences are defined by re-interpreting the `length` and `apply` methods. + * + * @author Martin Odersky + * @version 2.8 + * @since 2.8 + * @tparam A the element type of the view + * @tparam Coll the type of the underlying collection containing the elements. + * @tparam This the type of the view itself */ trait SeqViewLike[+A, +Coll, diff --git a/src/library/scala/collection/Set.scala b/src/library/scala/collection/Set.scala index 3a6313a187..034d9f1705 100644 --- a/src/library/scala/collection/Set.scala +++ b/src/library/scala/collection/Set.scala @@ -12,14 +12,16 @@ package scala.collection import generic._ -/** <p> - * A set is a collection that includes at most one of any object. - * </p> +/** A base trait for all sets, mutable as well as immutable. * - * @author Matthias Zenger - * @author Martin Odersky - * @version 2.8 - * @since 1 + * $setNote + * $setNote2 + * $setTags + * @since 1.0 + * @author Matthias Zenger + * @define setNote2 + * '''Implementation note:''' If your additions and mutations return the same kind of set as the set + * you are defining, you should inherit from `SetLike` as well. */ trait Set[A] extends (A => Boolean) with Iterable[A] @@ -28,11 +30,11 @@ trait Set[A] extends (A => Boolean) override def companion: GenericCompanion[Set] = Set } -/** Factory object for <code>Set</code> class. - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** $factoryInfo + * The current default implementation of a $Coll is one of `EmptySet`, `Set1`, `Set2`, `Set3`, `Set4` in + * class `immutable.Set` for sets of sizes up to 4, and a `immutable.HashSet` for sets of larger sizes. + * @define coll set + * @define Coll Set */ object Set extends SetFactory[Set] { override def empty[A]: Set[A] = immutable.Set.empty[A] diff --git a/src/library/scala/collection/SetLike.scala b/src/library/scala/collection/SetLike.scala index 44dac8e8fe..5a16b975df 100644 --- a/src/library/scala/collection/SetLike.scala +++ b/src/library/scala/collection/SetLike.scala @@ -14,20 +14,21 @@ import generic._ import mutable.{Builder, AddingBuilder} import PartialFunction._ -/** A template trait for sets of type `Set[A]`. +/** A template trait for sets. * - * This trait provides most of the operations of a `Set` independently of its representation. - * It is typically inherited by concrete implementations of sets. + * $setNote + * $setTags + * @since 2.8 * - * $setnote + * @define setNote * - * @tparam A the type of the elements of the set - * @tparam This the type of the set itself. + * A set is a collection that contains no duplicate elements. * - * @author Martin Odersky - * @version 2.8 - * @define setnote - * To implement a concrete set, you need to provide implementations of the + * '''Implementation note:''' + * This trait provides most of the operations of a `Set` independently of its representation. + * It is typically inherited by concrete implementations of sets. + * + * To implement a concrete set, you need to provide implementations of the * following methods: * {{{ * def contains(key: A): Boolean @@ -42,10 +43,18 @@ import PartialFunction._ * }}} * It is also good idea to override methods `foreach` and * `size` for efficiency. - * @define coll set - * @define Coll Set - * @define willNotTerminateInf - * @define mayNotTerminateInf + * + * @define setTags + * @tparam A the type of the elements of the set + * @tparam This the type of the set itself. + * + * @author Martin Odersky + * @version 2.8 + * + * @define coll set + * @define Coll Set + * @define willNotTerminateInf + * @define mayNotTerminateInf */ trait SetLike[A, +This <: SetLike[A, This] with Set[A]] extends IterableLike[A, This] @@ -113,10 +122,10 @@ self => /** Computes the intersection between this set and another set. * + * '''Note:''' Same as `intersect`. * @param that the set to intersect with. * @return a new set consisting of all elements that are both in this * set and in the given set `that`. - * @note Same as `intersect`. */ def &(that: Set[A]): This = intersect(that) @@ -138,10 +147,10 @@ self => /** Computes the union between this set and another set. * + * '''Note:''' Same as `union`. * @param that the set to form the union with. * @return a new set consisting of all elements that are in this * set or in the given set `that`. - * @note Same as `union`. */ def | (that: Set[A]): This = union(that) @@ -155,10 +164,10 @@ self => /** The difference of this set and another set. * + * '''Note:''' Same as `diff`. * @param that the set of elements to exclude. * @return a set containing those elements of this * set that are not also contained in the given set `that`. - * @note Same as `diff`. */ def &~(that: Set[A]): This = diff(that) @@ -181,13 +190,13 @@ self => /** Compares this set with another object for equality. * - * @param that the other object - * @return `true` if `that` is a set which contains the same elements - * as this set. - * @note This operation contains an unchecked cast: if `that` + * '''Note:''' This operation contains an unchecked cast: if `that` * is a set, it will assume with an unchecked cast * that it has the same element type as this set. * Any subsequent ClassCastException is treated as a `false` result. + * @param that the other object + * @return `true` if `that` is a set which contains the same elements + * as this set. */ override def equals(that: Any): Boolean = that match { case that: Set[_] => diff --git a/src/library/scala/collection/Traversable.scala b/src/library/scala/collection/Traversable.scala index 4a1cd01af1..b3383ba802 100644 --- a/src/library/scala/collection/Traversable.scala +++ b/src/library/scala/collection/Traversable.scala @@ -83,6 +83,7 @@ trait Traversable[+A] extends TraversableLike[A, Traversable[A]] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. */ object Traversable extends TraversableFactory[Traversable] { self => diff --git a/src/library/scala/collection/TraversableView.scala b/src/library/scala/collection/TraversableView.scala index ccc33a495d..6d7fa70968 100644 --- a/src/library/scala/collection/TraversableView.scala +++ b/src/library/scala/collection/TraversableView.scala @@ -15,10 +15,14 @@ import generic._ import mutable.Builder import TraversableView.NoBuilder -/** $traversableviewinfo +/** A base trait for non-strict views of traversable collections. + * $traversableViewInfo */ trait TraversableView[+A, +Coll] extends TraversableViewLike[A, Coll, TraversableView[A, Coll]] +/** An object containing the necessary implicit definitions to make + * `TraversableView`s work. Its definitions are generally not accessed directly by clients. + */ object TraversableView { class NoBuilder[A] extends Builder[A, Nothing] { def +=(elem: A): this.type = this diff --git a/src/library/scala/collection/generic/GenericCompanion.scala b/src/library/scala/collection/generic/GenericCompanion.scala index 4332a1c936..2a87f8d913 100644 --- a/src/library/scala/collection/generic/GenericCompanion.scala +++ b/src/library/scala/collection/generic/GenericCompanion.scala @@ -28,13 +28,18 @@ abstract class GenericCompanion[+CC[X] <: Traversable[X]] { /** The underlying collection type with unknown element type */ type Coll = CC[_] - /** The default builder for $Coll objects. */ + /** The default builder for `$Coll` objects. + * @tparam A the type of the ${coll}'s elements + */ def newBuilder[A]: Builder[A, CC[A]] - /** The empty collection of type $Coll[A] */ + /** An empty collection of type `$Coll[A]` + * @tparam A the type of the ${coll}'s elements + */ def empty[A]: CC[A] = newBuilder[A].result /** Creates a $coll with the specified elements. + * @tparam A the type of the ${coll}'s elements * @param elems the elements of the created $coll * @return a new $coll with elements `elems` */ diff --git a/src/library/scala/collection/generic/ImmutableMapFactory.scala b/src/library/scala/collection/generic/ImmutableMapFactory.scala index 2fd22e7f02..512014ba09 100644 --- a/src/library/scala/collection/generic/ImmutableMapFactory.scala +++ b/src/library/scala/collection/generic/ImmutableMapFactory.scala @@ -11,9 +11,9 @@ package scala.collection package generic -/** A template for companion objects of <code>immutable.Map</code> and - * subclasses thereof. - * - * @since 2.8 +/** A template for companion objects of `immutable.Map` and subclasses thereof. + * @author Martin Odersky + * @version 2.8 + * @since 2.8 */ abstract class ImmutableMapFactory[CC[A, +B] <: immutable.Map[A, B] with immutable.MapLike[A, B, CC[A, B]]] extends MapFactory[CC] diff --git a/src/library/scala/collection/generic/ImmutableSortedMapFactory.scala b/src/library/scala/collection/generic/ImmutableSortedMapFactory.scala index d5c372ba74..d30f57f0ce 100644 --- a/src/library/scala/collection/generic/ImmutableSortedMapFactory.scala +++ b/src/library/scala/collection/generic/ImmutableSortedMapFactory.scala @@ -12,8 +12,16 @@ package scala.collection package generic -/** A template for companion objects of immutable.Map and subclasses thereof. +/** A template for companion objects of `SortedMap` and subclasses thereof. * * @since 2.8 + * @define Coll SortedMap + * @define coll sorted map + * @define factoryInfo + * This object provides a set of operations needed to create sorted maps of type `$Coll`. + * @author Martin Odersky + * @version 2.8 + * @define sortedMapCanBuildFromInfo + * The standard `CanBuildFrom` instance for sorted maps */ abstract class ImmutableSortedMapFactory[CC[A, B] <: immutable.SortedMap[A, B] with SortedMapLike[A, B, CC[A, B]]] extends SortedMapFactory[CC] diff --git a/src/library/scala/collection/generic/ImmutableSortedSetFactory.scala b/src/library/scala/collection/generic/ImmutableSortedSetFactory.scala index df5c2c7959..684e7c41f1 100644 --- a/src/library/scala/collection/generic/ImmutableSortedSetFactory.scala +++ b/src/library/scala/collection/generic/ImmutableSortedSetFactory.scala @@ -12,8 +12,16 @@ package scala.collection package generic -/** A template for companion objects of mutable.Map and subclasses thereof. +/** A template for companion objects of `SortedSet` and subclasses thereof. * * @since 2.8 + * @define Coll immutable.SortedSet + * @define coll immutable sorted + * @define factoryInfo + * This object provides a set of operations needed to create sorted sets of type `$Coll`. + * @author Martin Odersky + * @version 2.8 + * @define sortedSetCanBuildFromInfo + * The standard `CanBuildFrom` instance for sorted sets */ abstract class ImmutableSortedSetFactory[CC[A] <: immutable.SortedSet[A] with SortedSetLike[A, CC[A]]] extends SortedSetFactory[CC]
\ No newline at end of file diff --git a/src/library/scala/collection/generic/MapFactory.scala b/src/library/scala/collection/generic/MapFactory.scala index fc04f28f26..163c289e23 100644 --- a/src/library/scala/collection/generic/MapFactory.scala +++ b/src/library/scala/collection/generic/MapFactory.scala @@ -22,6 +22,7 @@ import mutable.{Builder, MapBuilder} * This object provides a set of operations needed to create `$Coll` values. * @author Martin Odersky * @version 2.8 + * @since 2.8 * @define canBuildFromInfo * The standard `CanBuildFrom` instance for `$Coll` objects. * @see CanBuildFrom @@ -33,14 +34,28 @@ import mutable.{Builder, MapBuilder} */ abstract class MapFactory[CC[A, B] <: Map[A, B] with MapLike[A, B, CC[A, B]]] { + /** The type constructor of the collection that can be built by this factory */ type Coll = CC[_, _] + /** An empty $Coll */ def empty[A, B]: CC[A, B] + /** A collection of type $Coll that contains given key/value bindings. + * @param elems the key/value pairs that make up the $coll + * @tparam A the type of the keys + * @tparam B the type of the associated values + * @return a new $coll consisting key/value pairs given by `elems`. + */ def apply[A, B](elems: (A, B)*): CC[A, B] = (newBuilder[A, B] ++= elems).result + /** The default builder for $Coll objects. + * @tparam A the type of the keys + * @tparam B the type of the associated values + */ def newBuilder[A, B]: Builder[(A, B), CC[A, B]] = new MapBuilder[A, B, CC[A, B]](empty[A, B]) + /** The standard `CanBuildFrom` class for maps. + */ class MapCanBuildFrom[A, B] extends CanBuildFrom[Coll, (A, B), CC[A, B]] { def apply(from: Coll) = newBuilder[A, B] def apply() = newBuilder diff --git a/src/library/scala/collection/generic/MutableMapFactory.scala b/src/library/scala/collection/generic/MutableMapFactory.scala index 0f1608ee71..2fdb827d05 100644 --- a/src/library/scala/collection/generic/MutableMapFactory.scala +++ b/src/library/scala/collection/generic/MutableMapFactory.scala @@ -14,9 +14,10 @@ package generic import mutable.MapBuilder -/** A template for companion objects of `mutable.Map` and subclasses thereof. - * - * @since 2.8 +/** A template for companion objects of `immutable.Map` and subclasses thereof. + * @author Martin Odersky + * @version 2.8 + * @since 2.8 */ abstract class MutableMapFactory[CC[A, B] <: mutable.Map[A, B] with mutable.MapLike[A, B, CC[A, B]]] extends MapFactory[CC] diff --git a/src/library/scala/collection/generic/SetFactory.scala b/src/library/scala/collection/generic/SetFactory.scala index 6a237d453c..1c4ec3e7e3 100644 --- a/src/library/scala/collection/generic/SetFactory.scala +++ b/src/library/scala/collection/generic/SetFactory.scala @@ -14,8 +14,7 @@ package generic import mutable.{Builder, AddingBuilder} -/** A template for companion objects of <code>Set</code> and subclasses - * thereof. +/** A template for companion objects of `Set` and subclasses thereof. * * @define coll set * @define Coll Set @@ -23,6 +22,7 @@ import mutable.{Builder, AddingBuilder} * This object provides a set of operations needed to create `$Coll` values. * @author Martin Odersky * @version 2.8 + * @since 2.8 * @define canBuildFromInfo * The standard `CanBuildFrom` instance for `$Coll` objects. * @see CanBuildFrom @@ -36,6 +36,8 @@ abstract class SetFactory[CC[X] <: Set[X] with SetLike[X, CC[X]]] def newBuilder[A]: Builder[A, CC[A]] = new AddingBuilder[A, CC[A]](empty[A]) + /** $setCanBuildFromInfo + */ def setCanBuildFrom[A] = new CanBuildFrom[CC[_], A, CC[A]] { def apply(from: CC[_]) = newBuilder[A] def apply() = newBuilder[A] diff --git a/src/library/scala/collection/immutable/BitSet.scala b/src/library/scala/collection/immutable/BitSet.scala index 857b537904..9b801f26cb 100644 --- a/src/library/scala/collection/immutable/BitSet.scala +++ b/src/library/scala/collection/immutable/BitSet.scala @@ -17,6 +17,8 @@ import BitSetLike.{LogWL, updateArray} /** A class for immutable bitsets. * $bitsetinfo + * @define Coll immutable.BitSet + * @define coll immutable bitset */ @serializable @SerialVersionUID(1611436763290191562L) abstract class BitSet extends Set[Int] @@ -53,12 +55,16 @@ abstract class BitSet extends Set[Int] } } -/** A factory object for bitsets */ +/** $factoryInfo + * @define Coll immutable.BitSet + * @define coll immutable bitset + */ object BitSet extends BitSetFactory[BitSet] { /** The empty bitset */ val empty: BitSet = new BitSet1(0L) + /** $bitsetCanBuildFrom */ implicit def canBuildFrom: CanBuildFrom[BitSet, Int, BitSet] = bitsetCanBuildFrom /** A bitset containing all the bits in an array */ diff --git a/src/library/scala/collection/immutable/DefaultMap.scala b/src/library/scala/collection/immutable/DefaultMap.scala index a19b35aff0..667d86d352 100755 --- a/src/library/scala/collection/immutable/DefaultMap.scala +++ b/src/library/scala/collection/immutable/DefaultMap.scala @@ -14,22 +14,24 @@ package immutable import generic._ -/** <p> - * A default map which implements the <code>updated</code> and <code>-</code> - * methods of maps.<br/> - * Instances that inherit from <code>DefaultMap[A, B]</code> still have to - * define: - * </p> - * <pre> - * <b>def</b> get(key: A): Option[B] - * <b>def</b> iterator: Iterator[(A, B)]</pre> - * <p> - * It refers back to the original map. - * </p> - * <p> - * It might also be advisable to override <code>foreach</code> or - * <code>size</code> if efficient implementations can be found. - * </p> +/** A default map which implements the `+` and `-` + * methods of maps. It does so using the default builder for + * maps defined in the `Map` object. + * Instances that inherit from `DefaultMap[A, B]` still have to + * define: + * + * {{{ + * def get(key: A): Option[B] + * def iterator: Iterator[(A, B)] + * }}} + * + * It refers back to the original map. + * + * It might also be advisable to override `foreach` or + * `size` if efficient implementations can be found. + * + * @tparam A the type of the keys contained in this map. + * @tparam B the type of the values associated with the keys. * * @since 2.8 */ @@ -52,3 +54,13 @@ trait DefaultMap[A, +B] extends Map[A, B] { self => b.result } } + + + + + + + + + + diff --git a/src/library/scala/collection/immutable/HashMap.scala b/src/library/scala/collection/immutable/HashMap.scala index e0f801546c..b82e50ec06 100644 --- a/src/library/scala/collection/immutable/HashMap.scala +++ b/src/library/scala/collection/immutable/HashMap.scala @@ -15,17 +15,22 @@ package immutable import generic._ import annotation.unchecked.uncheckedVariance -/** <p> - * This class implements immutable maps using a hash trie. - * </p> +/** This class implements immutable maps using a hash trie. * - * @note the builder of a hash map returns specialized representations EmptyMap,Map1,..., Map4 - * for maps of size <= 4. + * '''Note:''' the builder of a hash map returns specialized representations EmptyMap,Map1,..., Map4 + * for maps of size <= 4. + * + * @tparam A the type of the keys contained in this hash map. + * @tparam B the type of the values associated with the keys. * * @author Martin Odersky * @author Tiark Rompf * @version 2.8 * @since 2.3 + * @define Coll immutable.HashMap + * @define coll immutable hash map + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @SerialVersionUID(2L) class HashMap[A, +B] extends Map[A,B] with MapLike[A, B, HashMap[A, B]] { @@ -70,20 +75,22 @@ class HashMap[A, +B] extends Map[A,B] with MapLike[A, B, HashMap[A, B]] { protected def updated0[B1 >: B](key: A, hash: Int, level: Int, value: B1, kv: (A, B1)): HashMap[A, B1] = new HashMap.HashMap1(key, hash, value, kv) + protected def removed0(key: A, hash: Int, level: Int): HashMap[A, B] = this - protected def removed0(key: A, hash: Int, level: Int): HashMap[A, B] = this + protected def writeReplace(): AnyRef = new HashMap.SerializationProxy(this) } -/** A factory object for immutable HashMaps. +/** $factoryInfo + * @define Coll immutable.HashMap + * @define coll immutable hash map * - * @author Martin Odersky * @author Tiark Rompf - * @version 2.8 * @since 2.3 */ object HashMap extends ImmutableMapFactory[HashMap] { + /** $mapCanBuildFromInfo */ implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), HashMap[A, B]] = new MapCanBuildFrom[A, B] def empty[A, B]: HashMap[A, B] = EmptyHashMap.asInstanceOf[HashMap[A, B]] @@ -108,14 +115,7 @@ object HashMap extends ImmutableMapFactory[HashMap] { m.updated0(this.key, this.hash, level, this.value, this.kv).updated0(key, hash, level, value, kv) } else { // 32-bit hash collision (rare, but not impossible) - // wrap this in a HashTrieMap if called with level == 0 (otherwise serialization won't work) - if (level == 0) { - val elems = new Array[HashMap[A,B1]](1) - elems(0) = new HashMapCollision1(hash, ListMap.empty.updated(this.key,this.value).updated(key,value)) - new HashTrieMap[A,B1](1 << ((hash >>> level) & 0x1f), elems, 2) - } else { - new HashMapCollision1(hash, ListMap.empty.updated(this.key,this.value).updated(key,value)) - } + new HashMapCollision1(hash, ListMap.empty.updated(this.key,this.value).updated(key,value)) } } @@ -125,18 +125,6 @@ object HashMap extends ImmutableMapFactory[HashMap] { override def iterator: Iterator[(A,B)] = Iterator(ensurePair) override def foreach[U](f: ((A, B)) => U): Unit = f(ensurePair) private[HashMap] def ensurePair: (A,B) = if (kv ne null) kv else { kv = (key, value); kv } - - private def writeObject(out: java.io.ObjectOutputStream) { - out.writeObject(key) - out.writeObject(value) - } - - private def readObject(in: java.io.ObjectInputStream) { - key = in.readObject().asInstanceOf[A] - value = in.readObject().asInstanceOf[B] - hash = computeHash(key) - } - } private class HashMapCollision1[A,+B](private[HashMap] var hash: Int, var kvs: ListMap[A,B @uncheckedVariance]) extends HashMap[A,B] { @@ -166,22 +154,6 @@ object HashMap extends ImmutableMapFactory[HashMap] { override def iterator: Iterator[(A,B)] = kvs.iterator override def foreach[U](f: ((A, B)) => U): Unit = kvs.foreach(f) - - private def writeObject(out: java.io.ObjectOutputStream) { - // this cannot work - reading things in might produce different - // hash codes and remove the collision. however this is never called - // because no references to this class are ever handed out to client code - // and HashTrieMap serialization takes care of the situation - error("cannot serialize an immutable.HashMap where all items have the same 32-bit hash code") - //out.writeObject(kvs) - } - - private def readObject(in: java.io.ObjectInputStream) { - error("cannot deserialize an immutable.HashMap where all items have the same 32-bit hash code") - //kvs = in.readObject().asInstanceOf[ListMap[A,B]] - //hash = computeHash(kvs.) - } - } @@ -246,19 +218,27 @@ object HashMap extends ImmutableMapFactory[HashMap] { val index = (hash >>> level) & 0x1f val mask = (1 << index) val offset = Integer.bitCount(bitmap & (mask-1)) - if (((bitmap >>> index) & 1) == 1) { - val elemsNew = new Array[HashMap[A,B]](elems.length) - Array.copy(elems, 0, elemsNew, 0, elems.length) + if ((bitmap & mask) != 0) { val sub = elems(offset) // TODO: might be worth checking if sub is HashTrieMap (-> monomorphic call site) val subNew = sub.removed0(key, hash, level + 5) - elemsNew(offset) = subNew - // TODO: handle shrinking - val sizeNew = size + (subNew.size - sub.size) - if (sizeNew > 0) - new HashTrieMap(bitmap, elemsNew, size + (subNew.size - sub.size)) - else - HashMap.empty[A,B] + if (subNew.isEmpty) { + val bitmapNew = bitmap ^ mask + if (bitmapNew != 0) { + val elemsNew = new Array[HashMap[A,B]](elems.length - 1) + Array.copy(elems, 0, elemsNew, 0, offset) + Array.copy(elems, offset + 1, elemsNew, offset, elems.length - offset - 1) + val sizeNew = size - sub.size + new HashTrieMap(bitmapNew, elemsNew, sizeNew) + } else + HashMap.empty[A,B] + } else { + val elemsNew = new Array[HashMap[A,B]](elems.length) + Array.copy(elems, 0, elemsNew, 0, elems.length) + elemsNew(offset) = subNew + val sizeNew = size + (subNew.size - sub.size) + new HashTrieMap(bitmap, elemsNew, sizeNew) + } } else { this } @@ -367,31 +347,29 @@ time { mNew.iterator.foreach( p => ()) } } } + } + @serializable @SerialVersionUID(2L) private class SerializationProxy[A,B](@transient private var orig: HashMap[A, B]) { private def writeObject(out: java.io.ObjectOutputStream) { - // no out.defaultWriteObject() - out.writeInt(size) - foreach { p => - out.writeObject(p._1) - out.writeObject(p._2) + val s = orig.size + out.writeInt(s) + for ((k,v) <- orig) { + out.writeObject(k) + out.writeObject(v) } } private def readObject(in: java.io.ObjectInputStream) { - val size = in.readInt - var index = 0 - var m = HashMap.empty[A,B] - while (index < size) { - // TODO: optimize (use unsafe mutable update) - m = m + ((in.readObject.asInstanceOf[A], in.readObject.asInstanceOf[B])) - index += 1 + orig = empty + val s = in.readInt() + for (i <- 0 until s) { + val key = in.readObject().asInstanceOf[A] + val value = in.readObject().asInstanceOf[B] + orig = orig.updated(key, value) } - var tm = m.asInstanceOf[HashTrieMap[A,B]] - bitmap = tm.bitmap - elems = tm.elems - size0 = tm.size0 } + private def readResolve(): AnyRef = orig } } diff --git a/src/library/scala/collection/immutable/HashSet.scala b/src/library/scala/collection/immutable/HashSet.scala index e79b456a2f..68da0cef50 100644 --- a/src/library/scala/collection/immutable/HashSet.scala +++ b/src/library/scala/collection/immutable/HashSet.scala @@ -15,16 +15,19 @@ package immutable import generic._ import annotation.unchecked.uncheckedVariance -/** - * This class implements immutable sets using a hash trie. +/** This class implements immutable sets using a hash trie. * - * @note the builder of a hash set returns specialized representations `EmptySet`,`Set1`,..., `Set4` - * for sets of `size <= 4`. + * '''Note:''' the builder of a hash set returns specialized representations `EmptySet`,`Set1`,..., `Set4` + * for sets of `size <= 4`. + * + * @tparam A the type of the elements contained in this hash set. * * @author Martin Odersky * @author Tiark Rompf * @version 2.8 * @since 2.3 + * @define Coll immutable.HashSet + * @define coll immutable hash set */ @serializable @SerialVersionUID(2L) class HashSet[A] extends Set[A] @@ -69,28 +72,24 @@ class HashSet[A] extends Set[A] protected def updated0(key: A, hash: Int, level: Int): HashSet[A] = new HashSet.HashSet1(key, hash) - - protected def removed0(key: A, hash: Int, level: Int): HashSet[A] = this + protected def writeReplace(): AnyRef = new HashSet.SerializationProxy(this) } -/* -object HashSet extends SetFactory[HashSet] { - implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, HashSet[A]] = setCanBuildFrom[A] - override def empty[A]: HashSet[A] = new HashSet -} -*/ - - -/** A factory object for immutable HashSets. +/** $factoryInfo + * @define Coll immutable.HashSet + * @define coll immutable hash set * - * @author Martin Odersky * @author Tiark Rompf - * @version 2.8 * @since 2.3 + * @define Coll immutable.HashSet + * @define coll immutable hash set + * @define mayNotTerminateInf + * @define willNotTerminateInf */ object HashSet extends SetFactory[HashSet] { + /** $setCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, HashSet[A]] = setCanBuildFrom[A] override def empty[A]: HashSet[A] = EmptyHashSet.asInstanceOf[HashSet[A]] @@ -114,14 +113,7 @@ object HashSet extends SetFactory[HashSet] { m.updated0(this.key, this.hash, level).updated0(key, hash, level) } else { // 32-bit hash collision (rare, but not impossible) - // wrap this in a HashTrieSet if called with level == 0 (otherwise serialization won't work) - if (level == 0) { - val elems = new Array[HashSet[A]](1) - elems(0) = new HashSetCollision1(hash, ListSet.empty + this.key + key) - new HashTrieSet[A](1 << ((hash >>> level) & 0x1f), elems, 2) - } else { - new HashSetCollision1(hash, ListSet.empty + this.key + key) - } + new HashSetCollision1(hash, ListSet.empty + this.key + key) } } @@ -130,16 +122,6 @@ object HashSet extends SetFactory[HashSet] { override def iterator: Iterator[A] = Iterator(key) override def foreach[U](f: A => U): Unit = f(key) - - private def writeObject(out: java.io.ObjectOutputStream) { - out.writeObject(key) - } - - private def readObject(in: java.io.ObjectInputStream) { - key = in.readObject().asInstanceOf[A] - hash = computeHash(key) - } - } private class HashSetCollision1[A](private[HashSet] var hash: Int, var ks: ListSet[A]) extends HashSet[A] { @@ -232,24 +214,33 @@ object HashSet extends SetFactory[HashSet] { val index = (hash >>> level) & 0x1f val mask = (1 << index) val offset = Integer.bitCount(bitmap & (mask-1)) - if (((bitmap >>> index) & 1) == 1) { - val elemsNew = new Array[HashSet[A]](elems.length) - Array.copy(elems, 0, elemsNew, 0, elems.length) + if ((bitmap & mask) != 0) { val sub = elems(offset) - // TODO: might be worth checking if sub is HashTrieSet (-> monomorphic call site) + // TODO: might be worth checking if sub is HashTrieMap (-> monomorphic call site) val subNew = sub.removed0(key, hash, level + 5) - elemsNew(offset) = subNew - // TODO: handle shrinking - val sizeNew = size + (subNew.size - sub.size) - if (sizeNew > 0) - new HashTrieSet(bitmap, elemsNew, size + (subNew.size - sub.size)) - else - HashSet.empty[A] + if (subNew.isEmpty) { + val bitmapNew = bitmap ^ mask + if (bitmapNew != 0) { + val elemsNew = new Array[HashSet[A]](elems.length - 1) + Array.copy(elems, 0, elemsNew, 0, offset) + Array.copy(elems, offset + 1, elemsNew, offset, elems.length - offset - 1) + val sizeNew = size - sub.size + new HashTrieSet(bitmapNew, elemsNew, sizeNew) + } else + HashSet.empty[A] + } else { + val elemsNew = new Array[HashSet[A]](elems.length) + Array.copy(elems, 0, elemsNew, 0, elems.length) + elemsNew(offset) = subNew + val sizeNew = size + (subNew.size - sub.size) + new HashTrieSet(bitmap, elemsNew, sizeNew) + } } else { this } } + override def iterator = new Iterator[A] { private[this] var depth = 0 private[this] var arrayStack = new Array[Array[HashSet[A]]](6) @@ -333,31 +324,27 @@ time { mNew.iterator.foreach( p => ()) } i += 1 } } + } - + @serializable @SerialVersionUID(2L) private class SerializationProxy[A,B](@transient private var orig: HashSet[A]) { private def writeObject(out: java.io.ObjectOutputStream) { - // no out.defaultWriteObject() - out.writeInt(size) - foreach { e => + val s = orig.size + out.writeInt(s) + for (e <- orig) { out.writeObject(e) } } private def readObject(in: java.io.ObjectInputStream) { - val size = in.readInt - var index = 0 - var m = HashSet.empty[A] - while (index < size) { - // TODO: optimize (use unsafe mutable update) - m = m + in.readObject.asInstanceOf[A] - index += 1 + orig = empty + val s = in.readInt() + for (i <- 0 until s) { + val e = in.readObject().asInstanceOf[A] + orig = orig + e } - var tm = m.asInstanceOf[HashTrieSet[A]] - bitmap = tm.bitmap - elems = tm.elems - size0 = tm.size0 } + private def readResolve(): AnyRef = orig } } diff --git a/src/library/scala/collection/immutable/IndexedSeq.scala b/src/library/scala/collection/immutable/IndexedSeq.scala index 268bd56a85..d3223fd106 100644 --- a/src/library/scala/collection/immutable/IndexedSeq.scala +++ b/src/library/scala/collection/immutable/IndexedSeq.scala @@ -14,7 +14,7 @@ package immutable import generic._ import mutable.{ArrayBuffer, Builder} -/** A subtrait of <code>collection.IndexedSeq</code> which represents indexed sequences +/** A subtrait of `collection.IndexedSeq` which represents indexed sequences * that are guaranteed immutable. * $indexedSeqInfo */ @@ -26,6 +26,7 @@ trait IndexedSeq[+A] extends Seq[A] } /** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. * @define coll indexed sequence * @define Coll IndexedSeq */ diff --git a/src/library/scala/collection/immutable/IntMap.scala b/src/library/scala/collection/immutable/IntMap.scala index 75a25e0223..90dfa541e3 100644 --- a/src/library/scala/collection/immutable/IntMap.scala +++ b/src/library/scala/collection/immutable/IntMap.scala @@ -12,8 +12,8 @@ package scala.collection package immutable; -/** - * @author David MacIver +/** Utility class for integer maps. + * @author David MacIver */ private[immutable] object IntMapUtils { def zero(i : Int, mask : Int) = (i & mask) == 0; @@ -50,8 +50,8 @@ private[immutable] object IntMapUtils { import IntMapUtils._ -/** - * @since 2.7 +/** A companion object for integer maps. + * @since 2.7 */ object IntMap { def empty[T] : IntMap[T] = IntMap.Nil; @@ -146,15 +146,19 @@ private[immutable] class IntMapKeyIterator[V](it : IntMap[V]) extends IntMapIter import IntMap._ -/** - * Specialised immutable map structure for integer keys, based on - * <a href="http://citeseer.ist.psu.edu/okasaki98fast.html">Fast Mergeable Integer Maps</a> - * by Okasaki and Gill. Essentially a trie based on binary digits of the the integers. +/** Specialised immutable map structure for integer keys, based on + * <a href="http://citeseer.ist.psu.edu/okasaki98fast.html">Fast Mergeable Integer Maps</a> + * by Okasaki and Gill. Essentially a trie based on binary digits of the the integers. * - * Note: This class is as of 2.8 largely superseded by HashMap. + * Note: This class is as of 2.8 largely superseded by HashMap. * - * @since 2.7 + * @tparam T type of the values associated with integer keys. * + * @since 2.7 + * @define Coll immutable.IntMap + * @define coll immutable integer map + * @define mayNotTerminateInf + * @define willNotTerminateInf */ sealed abstract class IntMap[+T] extends Map[Int, T] with MapLike[Int, T, IntMap[T]] { override def empty: IntMap[T] = IntMap.Nil; diff --git a/src/library/scala/collection/immutable/Iterable.scala b/src/library/scala/collection/immutable/Iterable.scala index 795fc2fa92..e0ef5ffcc1 100644 --- a/src/library/scala/collection/immutable/Iterable.scala +++ b/src/library/scala/collection/immutable/Iterable.scala @@ -17,6 +17,9 @@ import mutable.Builder /** A base trait for iterable collections that are guaranteed immutable. * $iterableInfo + * + * @define Coll immutable.Iterable + * @define coll immutable iterable collection */ trait Iterable[+A] extends Traversable[A] with scala.collection.Iterable[A] @@ -25,14 +28,11 @@ trait Iterable[+A] extends Traversable[A] override def companion: GenericCompanion[Iterable] = Iterable } -/** A factory object for the trait <code>Iterable</code>. - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** $factoryInfo + * @define Coll immutable.Iterable + * @define coll immutable iterable collection */ object Iterable extends TraversableFactory[Iterable] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Iterable[A]] = new GenericCanBuildFrom[A] def newBuilder[A]: Builder[A, Iterable[A]] = new mutable.ListBuffer } - diff --git a/src/library/scala/collection/immutable/LinearSeq.scala b/src/library/scala/collection/immutable/LinearSeq.scala index 9cb35dced5..180844ce79 100644 --- a/src/library/scala/collection/immutable/LinearSeq.scala +++ b/src/library/scala/collection/immutable/LinearSeq.scala @@ -15,7 +15,7 @@ package immutable import generic._ import mutable.Builder -/** A subtrait of <code>collection.LinearSeq</code> which represents sequences that +/** A subtrait of `collection.LinearSeq` which represents sequences that * are guaranteed immutable. * $linearSeqInfo */ @@ -27,8 +27,9 @@ trait LinearSeq[+A] extends Seq[A] } /** $factoryInfo - * @define coll linear sequence - * @define Coll LinearSeq + * The current default implementation of a $Coll is a `List`. + * @define coll immutable linear sequence + * @define Coll immutable.LinearSeq */ object LinearSeq extends SeqFactory[LinearSeq] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, LinearSeq[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/immutable/ListMap.scala b/src/library/scala/collection/immutable/ListMap.scala index 4342e54a9d..a88c3a52d5 100644 --- a/src/library/scala/collection/immutable/ListMap.scala +++ b/src/library/scala/collection/immutable/ListMap.scala @@ -14,25 +14,34 @@ package immutable import generic._ -/** The canonical factory of <a href="ListMap.html">ListMap</a>'s. - * +/** $factoryInfo * @since 1 + * @define Coll immutable.ListMap + * @define coll immutable list map */ object ListMap extends ImmutableMapFactory[ListMap] { + /** $mapCanBuildFromInfo */ implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), ListMap[A, B]] = new MapCanBuildFrom[A, B] def empty[A, B]: ListMap[A, B] = new ListMap } /** This class implements immutable maps using a list-based data - * structure. Instances of <code>ListMap</code> represent + * structure. Instances of `ListMap` represent * empty maps; they can be either created by calling the constructor - * directly, or by applying the function <code>ListMap.empty</code>. + * directly, or by applying the function `ListMap.empty`. + * + * @tparam A the type of the keys in this list map. + * @tparam B the type of the values associated with the keys. * * @author Matthias Zenger * @author Martin Odersky * @version 2.0, 01/01/2007 * @since 1 + * @define Coll immutable.ListMap + * @define coll immutable list map + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @SerialVersionUID(301002838095710379L) class ListMap[A, +B] extends Map[A, B] with MapLike[A, B, ListMap[A, B]] { @@ -45,7 +54,7 @@ class ListMap[A, +B] extends Map[A, B] with MapLike[A, B, ListMap[A, B]] { */ override def size: Int = 0 - /** Checks if this map maps <code>key</code> to a value and return the + /** Checks if this map maps `key` to a value and return the * value if it exists. * * @param key the key of the mapping of interest diff --git a/src/library/scala/collection/immutable/ListSet.scala b/src/library/scala/collection/immutable/ListSet.scala index f7b76d2317..2a202df9ef 100644 --- a/src/library/scala/collection/immutable/ListSet.scala +++ b/src/library/scala/collection/immutable/ListSet.scala @@ -14,24 +14,32 @@ package immutable import generic._ -/** The canonical factory of <a href="ListSet.html">ListSet</a>'s - * +/** $factoryInfo + * @define Coll immutable.ListSet + * @define coll immutable list set * @since 1 */ object ListSet extends SetFactory[ListSet] { + /** setCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, ListSet[A]] = setCanBuildFrom[A] override def empty[A] = new ListSet[A] } /** This class implements immutable sets using a list-based data - * structure. Instances of <code>ListSet</code> represent + * structure. Instances of `ListSet` represent * empty sets; they can be either created by calling the constructor - * directly, or by applying the function <code>ListSet.empty</code>. + * directly, or by applying the function `ListSet.empty`. + * + * @tparam A the type of the elements contained in this list set. * * @author Matthias Zenger * @version 1.0, 09/07/2003 * @since 1 + * @define Coll immutable.ListSet + * @define coll immutable list set + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable class ListSet[A] extends Set[A] diff --git a/src/library/scala/collection/immutable/LongMap.scala b/src/library/scala/collection/immutable/LongMap.scala index 24afb65b99..691a81d9f0 100644 --- a/src/library/scala/collection/immutable/LongMap.scala +++ b/src/library/scala/collection/immutable/LongMap.scala @@ -1,8 +1,8 @@ package scala.collection package immutable -/** - * @author David MacIver +/** Utility class for long maps. + * @author David MacIver */ private[immutable] object LongMapUtils{ def zero(i : Long, mask : Long) = (i & mask) == 0L; @@ -40,8 +40,8 @@ private[immutable] object LongMapUtils{ import LongMapUtils._ -/** - * @since 2.7 +/** A companion object for long maps. + * @since 2.7 */ object LongMap{ def empty[T] : LongMap[T] = LongMap.Nil; @@ -134,13 +134,19 @@ private[immutable] class LongMapKeyIterator[V](it : LongMap[V]) extends LongMapI import LongMap._; /** - * Specialised immutable map structure for long keys, based on - * <a href="http://citeseer.ist.psu.edu/okasaki98fast.html">Fast Mergeable Long Maps</a> - * by Okasaki and Gill. Essentially a trie based on binary digits of the the integers. + * Specialised immutable map structure for long keys, based on + * <a href="http://citeseer.ist.psu.edu/okasaki98fast.html">Fast Mergeable Long Maps</a> + * by Okasaki and Gill. Essentially a trie based on binary digits of the the integers. + * + * Note: This class is as of 2.8 largely superseded by HashMap. * - * Note: This class is as of 2.8 largely superseded by HashMap. + * @tparam T type of the values associated with the long keys. * - * @since 2.7 + * @since 2.7 + * @define Coll immutable.LongMap + * @define coll immutable long integer map + * @define mayNotTerminateInf + * @define willNotTerminateInf */ sealed abstract class LongMap[+T] extends Map[Long, T] with MapLike[Long, T, LongMap[T]] { override def empty: LongMap[T] = LongMap.Nil; diff --git a/src/library/scala/collection/immutable/Map.scala b/src/library/scala/collection/immutable/Map.scala index e3469099b8..74cf4a1715 100644 --- a/src/library/scala/collection/immutable/Map.scala +++ b/src/library/scala/collection/immutable/Map.scala @@ -48,12 +48,13 @@ trait Map[A, +B] extends Iterable[(A, B)] def withDefaultValue[B1 >: B](d: B1): Map[A, B1] = new Map.WithDefault[A, B1](this, x => d) } -/** - * A companion object for immutable maps. - * - * @since 1 +/** $factoryInfo + * @define Coll immutable.Map + * @define coll immutable map */ object Map extends ImmutableMapFactory[Map] { + + /** $mapCanBuildFromInfo */ implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), Map[A, B]] = new MapCanBuildFrom[A, B] def empty[A, B]: Map[A, B] = EmptyMap.asInstanceOf[Map[A, B]] diff --git a/src/library/scala/collection/immutable/MapLike.scala b/src/library/scala/collection/immutable/MapLike.scala index 6f816ffa52..367ffadd43 100644 --- a/src/library/scala/collection/immutable/MapLike.scala +++ b/src/library/scala/collection/immutable/MapLike.scala @@ -14,32 +14,38 @@ package immutable import generic._ -/** <p> - * A generic template for immutable maps from keys of type <code>A</code> - * to values of type <code>B</code>.<br/> - * To implement a concrete map, you need to provide implementations of the - * following methods (where <code>This</code> is the type of the map in - * question): - * </p> - * <pre> - * <b>def</b> get(key: A): Option[B] - * <b>def</b> iterator: Iterator[(A, B)] - * <b>def</b> + [B1 >: B](kv: (A, B)): Map[A, B1] - * <b>def</b> - (key: A): This</pre> - * <p> - * If you wish that methods <code>like</code>, <code>take</code>, <code>drop</code>, - * <code>filter</code> return the same kind of map, you should also override: - * </p> - * <pre> - * <b>def</b> empty: This</pre> - * <p> - * It is also good idea to override methods <code>foreach</code> and - * <code>size</code> for efficiency. - * </p> +/** + * A generic template for immutable maps from keys of type `A` + * to values of type `B`. + * To implement a concrete map, you need to provide implementations of the + * following methods (where `This` is the type of the actual map implementation): + * + * {{{ + * def get(key: A): Option[B] + * def iterator: Iterator[(A, B)] + * def + [B1 >: B](kv: (A, B)): Map[A, B1] + * def - (key: A): This + * }}} + * + * If you wish that transformer methods like `take`, `drop`, `filter` return the + * same kind of map, you should also override: + * + * {{{ + * def empty: This + * }}} + * + * It is also good idea to override methods `foreach` and + * `size` for efficiency. + * + * @param A the type of the keys contained in this collection. + * @param B the type of the values associated with the keys. + * @param This The type of the actual map implementation. * * @author Martin Odersky * @version 2.8 * @since 2.8 + * @define Coll immutable.Map + * @define coll immutable map */ trait MapLike[A, +B, +This <: MapLike[A, B, This] with Map[A, B]] extends scala.collection.MapLike[A, B, This] @@ -55,8 +61,8 @@ trait MapLike[A, +B, +This <: MapLike[A, B, This] with Map[A, B]] override def updated [B1 >: B](key: A, value: B1): immutable.Map[A, B1] = this + ((key, value)) /** Add a key/value pair to this map, returning a new map. - * @param kv the key/value pair - * @return A new map with the new binding added to this map + * @param kv the key/value pair. + * @return A new map with the new binding added to this map. */ def + [B1 >: B] (kv: (A, B1)): immutable.Map[A, B1] @@ -66,6 +72,7 @@ trait MapLike[A, +B, +This <: MapLike[A, B, This] with Map[A, B]] * @param elem1 the first element to add. * @param elem2 the second element to add. * @param elems the remaining elements to add. + * @return A new map with the new bindings added to this map. */ override def + [B1 >: B] (elem1: (A, B1), elem2: (A, B1), elems: (A, B1) *): immutable.Map[A, B1] = this + elem1 + elem2 ++ elems @@ -73,7 +80,8 @@ trait MapLike[A, +B, +This <: MapLike[A, B, This] with Map[A, B]] /** Adds a number of elements provided by a traversable object * and returns a new collection with the added elements. * - * @param elems the traversable object. + * @param xs the traversable object consisting of key-value pairs. + * @return a new immutable map with the bindings of this map and those from `xs`. */ override def ++[B1 >: B](xs: TraversableOnce[(A, B1)]): immutable.Map[A, B1] = ((repr: immutable.Map[A, B1]) /: xs) (_ + _) @@ -104,7 +112,7 @@ trait MapLike[A, +B, +This <: MapLike[A, B, This] with Map[A, B]] } /** This function transforms all the values of mappings contained - * in this map with function <code>f</code>. + * in this map with function `f`. * * @param f A function over keys and values * @return the updated map diff --git a/src/library/scala/collection/immutable/MapProxy.scala b/src/library/scala/collection/immutable/MapProxy.scala index 371af042e7..a511c6d145 100644 --- a/src/library/scala/collection/immutable/MapProxy.scala +++ b/src/library/scala/collection/immutable/MapProxy.scala @@ -12,14 +12,12 @@ package scala.collection package immutable -/** <p> - * This is a simple wrapper class for <a href="Map.html" - * target="contentFrame"><code>scala.collection.mutable.Map</code></a>. - * </p> - * <p> - * It is most useful for assembling customized map abstractions - * dynamically using object composition and forwarding. - * </p> +/** + * This is a simple wrapper class for <a href="Map.html" + * target="contentFrame">`scala.collection.immutable.Map`</a>. + * + * It is most useful for assembling customized map abstractions + * dynamically using object composition and forwarding. * * @author Matthias Zenger, Martin Odersky * @version 2.0, 31/12/2006 diff --git a/src/library/scala/collection/immutable/NumericRange.scala b/src/library/scala/collection/immutable/NumericRange.scala index 645c5fed24..67115f7184 100644 --- a/src/library/scala/collection/immutable/NumericRange.scala +++ b/src/library/scala/collection/immutable/NumericRange.scala @@ -14,24 +14,28 @@ package immutable import mutable.{ Builder, ListBuffer } import generic._ -/** <p> - * <code>NumericRange</code> is a more generic version of the - * <code>Range</code> class which works with arbitrary types. - * It must be supplied with an `Integral` implementation of the - * range type. +/** `NumericRange` is a more generic version of the + * `Range` class which works with arbitrary types. + * It must be supplied with an `Integral` implementation of the + * range type. * - * Factories for likely types include `Range.BigInt`, `Range.Long`, - * and `Range.BigDecimal`. `Range.Int` exists for completeness, but - * the `Int`-based `scala.Range` should be more performant. - * </p><pre> - * <b>val</b> r1 = new Range(0, 100, 1) - * <b>val</b> veryBig = Int.MaxValue.toLong + 1 - * <b>val</b> r2 = Range.Long(veryBig, veryBig + 100, 1) + * Factories for likely types include `Range.BigInt`, `Range.Long`, + * and `Range.BigDecimal`. `Range.Int` exists for completeness, but + * the `Int`-based `scala.Range` should be more performant. + * + * {{{ + * val r1 = new Range(0, 100, 1) + * val veryBig = Int.MaxValue.toLong + 1 + * val r2 = Range.Long(veryBig, veryBig + 100, 1) * assert(r1 sameElements r2.map(_ - veryBig)) - * </pre> + * }}} * * @author Paul Phillips * @version 2.8 + * @define Coll NumericRange + * @define coll numeric range + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable abstract class NumericRange[T] @@ -68,7 +72,7 @@ extends IndexedSeq[T] protected def underlying = collection.immutable.IndexedSeq.empty[T] /** Create a new range with the start and end values of this range and - * a new <code>step</code>. + * a new `step`. */ def by(newStep: T): NumericRange[T] = copy(start, end, newStep) @@ -200,6 +204,8 @@ extends IndexedSeq[T] } } +/** A companion object for numeric ranges. + */ object NumericRange { class Inclusive[T](start: T, end: T, step: T)(implicit num: Integral[T]) extends NumericRange(start, end, step, true) { diff --git a/src/library/scala/collection/immutable/PagedSeq.scala b/src/library/scala/collection/immutable/PagedSeq.scala index bd12502520..2a1b3c110c 100644 --- a/src/library/scala/collection/immutable/PagedSeq.scala +++ b/src/library/scala/collection/immutable/PagedSeq.scala @@ -15,7 +15,7 @@ package immutable import java.io._ import scala.util.matching.Regex -/** The PagedSeq object defines a lazy implementations of +/** The `PagedSeq` object defines a lazy implementations of * a random access sequence. * * @since 2.7 @@ -108,8 +108,14 @@ import PagedSeq._ /** An implementation of lazily computed sequences, where elements are stored * in ``pages'', i.e. arrays of fixed size. * - * @author Martin Odersky - * @since 2.7 + * @tparam T the type of the elements contained in this paged sequence, with a `ClassManifest` context bound. + * + * @author Martin Odersky + * @since 2.7 + * @define Coll PagedSeq + * @define coll paged sequence + * @define mayNotTerminateInf + * @define willNotTerminateInf */ class PagedSeq[T: ClassManifest] protected( more: (Array[T], Int, Int) => Int, diff --git a/src/library/scala/collection/immutable/Queue.scala b/src/library/scala/collection/immutable/Queue.scala index 02d344ceea..7a903cb201 100644 --- a/src/library/scala/collection/immutable/Queue.scala +++ b/src/library/scala/collection/immutable/Queue.scala @@ -15,12 +15,16 @@ package immutable import generic._ import mutable.{ Builder, ListBuffer } -/** <code>Queue</code> objects implement data structures that allow to +/** `Queue` objects implement data structures that allow to * insert and retrieve elements in a first-in-first-out (FIFO) manner. * * @author Erik Stenman * @version 1.0, 08/07/2003 * @since 1 + * @define Coll immutable.Queue + * @define coll immutable queue + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @SerialVersionUID(-7622936493364270175L) @@ -31,11 +35,11 @@ class Queue[+A] protected(protected val in: List[A], protected val out: List[A]) override def companion: GenericCompanion[Queue] = Queue - /** Returns the <code>n</code>-th element of this queue. + /** Returns the `n`-th element of this queue. * The first element is at position 0. * * @param n index of the element to return - * @return the element at position <code>n</code> in this queue. + * @return the element at position `n` in this queue. * @throws Predef.NoSuchElementException if the queue is too short. */ def apply(n: Int): A = { @@ -127,7 +131,12 @@ class Queue[+A] protected(protected val in: List[A], protected val out: List[A]) override def toString() = mkString("Queue(", ", ", ")") } +/** $factoryInfo + * @define Coll immutable.Queue + * @define coll immutable queue + */ object Queue extends SeqFactory[Queue] { + /** $genericCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Queue[A]] = new GenericCanBuildFrom[A] def newBuilder[A]: Builder[A, Queue[A]] = new ListBuffer[A] mapResult (x => new Queue[A](Nil, x.toList)) override def empty[A]: Queue[A] = new Queue[A](Nil, Nil) diff --git a/src/library/scala/collection/immutable/Range.scala b/src/library/scala/collection/immutable/Range.scala index 5424a7afcb..8f1f7d58a6 100644 --- a/src/library/scala/collection/immutable/Range.scala +++ b/src/library/scala/collection/immutable/Range.scala @@ -10,20 +10,31 @@ package scala.collection.immutable -/** <p> - * The <code>Range</code> class represents integer values in range - * <code>[start;end)</code> with non-zero step value <code>step</code>. - * It's a special case of an indexed sequence. - * For example: - * </p><pre> - * <b>val</b> r1 = 0 until 10 - * <b>val</b> r2 = r1.start until r1.end by r1.step + 1 +/** The `Range` class represents integer values in range + * ''[start;end)'' with non-zero step value `step`. + * It's a special case of an indexed sequence. + * For example: + * + * {{{ + * val r1 = 0 until 10 + * val r2 = r1.start until r1.end by r1.step + 1 * println(r2.length) // = 5 - * </pre> + * }}} + * + * @param start the start of this range. + * @param end the exclusive end of the range. + * @param step the step for the range. * * @author Martin Odersky * @version 2.8 * @since 2.5 + * @define Coll Range + * @define coll range + * @define mayNotTerminateInf + * @define willNotTerminateInf + * @define doesNotUseBuilders + * '''Note:''' this method does not use builders to construct a new range, + * and its complexity is O(1). */ @serializable @SerialVersionUID(7618862778670199309L) class Range(val start: Int, val end: Int, val step: Int) extends IndexedSeq[Int] { @@ -33,7 +44,9 @@ class Range(val start: Int, val end: Int, val step: Int) extends IndexedSeq[Int] protected def copy(start: Int, end: Int, step: Int): Range = new Range(start, end, step) /** Create a new range with the `start` and `end` values of this range and - * a new <code>step</code>. + * a new `step`. + * + * @return a new range with a different step */ def by(step: Int): Range = copy(start, end, step) @@ -84,18 +97,46 @@ class Range(val start: Int, val end: Int, val step: Int) extends IndexedSeq[Int] start } + /** Creates a new range containing the first `n` elements of this range. + * + * $doesNotUseBuilders + * + * @param n the number of elements to take. + * @return a new range consisting of `n` first elements. + */ final override def take(n: Int): Range = if (n > 0 && length > 0) { Range(start, locationAfterN(n - 1), step).inclusive } else { Range(start, start, step) } + /** Creates a new range containing all the elements of this range except the first `n` elements. + * + * $doesNotUseBuilders + * + * @param n the number of elements to drop. + * @return a new range consisting of all the elements of this range except `n` first elements. + */ final override def drop(n: Int): Range = copy(locationAfterN(n), end, step) + /** Creates a new range containing all the elements of this range except the last one. + * + * $doesNotUseBuilders + * + * @return a new range consisting of all the elements of this range except the last one. + */ final override def init: Range = take(length - 1) + /** Creates a new range contained in the specified slice of this range. + * + * $doesNotUseBuilders + * + * @param from the start of the slice. + * @param until the end of the slice. + * @return a new range consisting of all the elements of this range contained in the specified slice. + */ final override def slice(from: Int, until: Int): Range = drop(from).take(until - from) @@ -117,12 +158,29 @@ class Range(val start: Int, val end: Int, val step: Int) extends IndexedSeq[Int] (Range(start, split, step), copy(split, end, step)) } + /** Creates a pair of new ranges, first consisting of elements before `n`, and the second + * of elements after `n`. + * + * $doesNotUseBuilders + */ final override def splitAt(n: Int) = (take(n), drop(n)) + /** Creates a new range consisting of the `length - n` last elements of the range. + * + * $doesNotUseBuilders + */ final override def takeRight(n: Int): Range = drop(length - n) + /** Creates a new range consisting of the initial `length - n` elements of the range. + * + * $doesNotUseBuilders + */ final override def dropRight(n: Int): Range = take(length - n) + /** Returns the reverse of this range. + * + * $doesNotUseBuilders + */ final override def reverse: Range = if (length > 0) new Range.Inclusive(last, start, -step) else this /** Make range inclusive. @@ -156,6 +214,8 @@ class Range(val start: Int, val end: Int, val step: Int) extends IndexedSeq[Int] } } +/** A companion object for the `Range` class. + */ object Range { private[immutable] val MAX_PRINT = 512 // some arbitrary value diff --git a/src/library/scala/collection/immutable/RedBlack.scala b/src/library/scala/collection/immutable/RedBlack.scala index ffa6194838..98a7d67d48 100644 --- a/src/library/scala/collection/immutable/RedBlack.scala +++ b/src/library/scala/collection/immutable/RedBlack.scala @@ -12,9 +12,9 @@ package scala.collection package immutable -/** A base class containing the implementations for TreeMaps and TreeSets +/** A base class containing the implementations for `TreeMaps` and `TreeSets`. * - * @since 2.3 + * @since 2.3 */ @serializable @SerialVersionUID(8691885935445612921L) abstract class RedBlack[A] { diff --git a/src/library/scala/collection/immutable/Seq.scala b/src/library/scala/collection/immutable/Seq.scala index de7804a95c..7e41ff7b94 100644 --- a/src/library/scala/collection/immutable/Seq.scala +++ b/src/library/scala/collection/immutable/Seq.scala @@ -19,6 +19,8 @@ import mutable.Builder * that are guaranteed immutable. * * $seqInfo + * @define Coll immutable.Seq + * @define coll immutable sequence */ trait Seq[+A] extends Iterable[A] with scala.collection.Seq[A] @@ -27,10 +29,12 @@ trait Seq[+A] extends Iterable[A] override def companion: GenericCompanion[Seq] = Seq } -/** - * @since 2.8 +/** $factoryInfo + * @define Coll immutable.Seq + * @define coll immutable sequence */ object Seq extends SeqFactory[Seq] { + /** genericCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Seq[A]] = new GenericCanBuildFrom[A] def newBuilder[A]: Builder[A, Seq[A]] = new mutable.ListBuffer } diff --git a/src/library/scala/collection/immutable/Set.scala b/src/library/scala/collection/immutable/Set.scala index 77f16c0d14..769ee37f6b 100644 --- a/src/library/scala/collection/immutable/Set.scala +++ b/src/library/scala/collection/immutable/Set.scala @@ -14,23 +14,16 @@ package immutable import generic._ -/** <p> - * A generic trait for immutable sets. Concrete set implementations have - * to provide functionality for the abstract methods in <code>Set</code>: - * </p> - * <pre> - * <b>def</b> contains(elem: A): Boolean - * <b>def</b> iterator: Iterator[A] - * <b>def</b> + (elem: A): Self - * <b>def</b> - (elem: A): Self</pre> - * <p> - * where <code>Self</code> is the type of the set. - * </p> +/** A generic trait for immutable sets. + * + * $setnote * * @author Matthias Zenger * @author Martin Odersky * @version 2.8 * @since 1 + * @define Coll immutable.Set + * @define coll immutable set */ trait Set[A] extends Iterable[A] with scala.collection.Set[A] @@ -39,10 +32,12 @@ trait Set[A] extends Iterable[A] override def companion: GenericCompanion[Set] = Set } -/** - * A companion object for immutable sets. +/** $factoryInfo + * @define Coll immutable.Set + * @define coll immutable set */ object Set extends SetFactory[Set] { + /** $setCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Set[A]] = setCanBuildFrom[A] override def empty[A]: Set[A] = EmptySet.asInstanceOf[Set[A]] diff --git a/src/library/scala/collection/immutable/SetProxy.scala b/src/library/scala/collection/immutable/SetProxy.scala index 73c95652b3..d45b2059ff 100644 --- a/src/library/scala/collection/immutable/SetProxy.scala +++ b/src/library/scala/collection/immutable/SetProxy.scala @@ -12,14 +12,13 @@ package scala.collection package immutable -/** <p> - * This is a simple wrapper class for <a href="Set.html" - * target="contentFrame"><code>scala.collection.immutable.Set</code></a>. - * </p> - * <p> - * It is most useful for assembling customized set abstractions - * dynamically using object composition and forwarding. - * </p> +/** This is a simple wrapper class for <a href="Set.html" + * target="contentFrame">`scala.collection.immutable.Set`</a>. + * + * It is most useful for assembling customized set abstractions + * dynamically using object composition and forwarding. + * + * @tparam A type of the elements contained in this set proxy. * * @since 2.8 */ diff --git a/src/library/scala/collection/immutable/SortedMap.scala b/src/library/scala/collection/immutable/SortedMap.scala index 919b529a49..243636e107 100644 --- a/src/library/scala/collection/immutable/SortedMap.scala +++ b/src/library/scala/collection/immutable/SortedMap.scala @@ -18,10 +18,15 @@ import annotation.unchecked.uncheckedVariance /** A map whose keys are sorted. * + * @tparam A the type of the keys contained in this sorted map. + * @tparam B the type of the values associated with the keys. + * * @author Sean McDirmid * @author Martin Odersky * @version 2.8 * @since 2.4 + * @define Coll immutable.SortedMap + * @define coll immutable sorted map */ trait SortedMap[A, +B] extends Map[A, B] with scala.collection.SortedMap[A, B] @@ -62,10 +67,12 @@ trait SortedMap[A, +B] extends Map[A, B] ((repr: SortedMap[A, B1]) /: xs) (_ + _) } -/** - * @since 2.4 +/** $factoryInfo + * @define Coll immutable.SortedMap + * @define coll immutable sorted map */ object SortedMap extends ImmutableSortedMapFactory[SortedMap] { + /** $sortedMapCanBuildFromInfo */ implicit def canBuildFrom[A, B](implicit ord: Ordering[A]): CanBuildFrom[Coll, (A, B), SortedMap[A, B]] = new SortedMapCanBuildFrom[A, B] def empty[A, B](implicit ord: Ordering[A]): SortedMap[A, B] = TreeMap.empty[A, B] } diff --git a/src/library/scala/collection/immutable/SortedSet.scala b/src/library/scala/collection/immutable/SortedSet.scala index 10ff466ff8..6c9433c30c 100644 --- a/src/library/scala/collection/immutable/SortedSet.scala +++ b/src/library/scala/collection/immutable/SortedSet.scala @@ -22,18 +22,20 @@ import mutable.Builder * @author Martin Odersky * @version 2.8 * @since 2.4 + * @define Coll immutable.SortedSet + * @define coll immutable sorted set */ trait SortedSet[A] extends Set[A] with scala.collection.SortedSet[A] with SortedSetLike[A, SortedSet[A]] { /** Needs to be overridden in subclasses. */ override def empty: SortedSet[A] = SortedSet.empty[A] } -/** - * A companion object for immutable sorted sets. - * - * @since 2.4 +/** $factoryInfo + * @define Coll immutable.SortedSet + * @define coll immutable sorted set */ object SortedSet extends ImmutableSortedSetFactory[SortedSet] { + /** $sortedSetCanBuildFromInfo */ implicit def canBuildFrom[A](implicit ord: Ordering[A]): CanBuildFrom[Coll, A, SortedSet[A]] = new SortedSetCanBuildFrom[A] def empty[A](implicit ord: Ordering[A]): SortedSet[A] = TreeSet.empty[A] } diff --git a/src/library/scala/collection/immutable/Stack.scala b/src/library/scala/collection/immutable/Stack.scala index 7d3c8c040b..0323db7211 100644 --- a/src/library/scala/collection/immutable/Stack.scala +++ b/src/library/scala/collection/immutable/Stack.scala @@ -15,7 +15,12 @@ package immutable import generic._ import mutable.{ ArrayBuffer, Builder } +/** $factoryInfo + * @define Coll immutable.Stack + * @define coll immutable stack + */ object Stack extends SeqFactory[Stack] { + /** $genericCanBuildFromInfo */ implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Stack[A]] = new GenericCanBuildFrom[A] def newBuilder[A]: Builder[A, Stack[A]] = new ArrayBuffer[A] mapResult (buf => new Stack(buf.toList)) @@ -26,13 +31,21 @@ object Stack extends SeqFactory[Stack] { /** This class implements immutable stacks using a list-based data * structure. * - * @note This class exists only for historical reason and as an - * analogue of mutable stacks + * '''Note:''' This class exists only for historical reason and as an + * analogue of mutable stacks. * Instead of an immutable stack you can just use a list. * + * @tparam A the type of the elements contained in this stack. + * * @author Matthias Zenger * @version 1.0, 10/07/2003 * @since 1 + * @define Coll immutable.Stack + * @define coll immutable stack + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @SerialVersionUID(1976480595012942526L) class Stack[+A] protected (protected val elems: List[A]) extends LinearSeq[A] diff --git a/src/library/scala/collection/immutable/Stream.scala b/src/library/scala/collection/immutable/Stream.scala index 7f0b21050a..50fa07c2cf 100644 --- a/src/library/scala/collection/immutable/Stream.scala +++ b/src/library/scala/collection/immutable/Stream.scala @@ -16,27 +16,33 @@ import generic._ import mutable.{Builder, StringBuilder, LazyBuilder, ListBuffer} import scala.annotation.tailrec -/** - * <p>The class <code>Stream</code> implements lazy lists where elements - * are only evaluated when they are needed. Here is an example:</p> - * <pre> - * <b>object</b> Main <b>extends</b> Application { +/** The class `Stream` implements lazy lists where elements + * are only evaluated when they are needed. Here is an example: * - * <b>def</b> from(n: Int): Stream[Int] = - * Stream.cons(n, from(n + 1)) + * {{{ + * object Main extends Application { * - * <b>def</b> sieve(s: Stream[Int]): Stream[Int] = - * Stream.cons(s.head, sieve(s.tail filter { _ % s.head != 0 })) + * def from(n: Int): Stream[Int] = + * Stream.cons(n, from(n + 1)) * - * <b>def</b> primes = sieve(from(2)) + * def sieve(s: Stream[Int]): Stream[Int] = + * Stream.cons(s.head, sieve(s.tail filter { _ % s.head != 0 })) * - * primes take 10 print - * } - * </pre> + * def primes = sieve(from(2)) * - * @author Martin Odersky, Matthias Zenger - * @version 1.1 08/08/03 - * @since 2.8 + * primes take 10 print + * } + * }}} + * + * @tparam A the type of the elements contained in this stream. + * + * @author Martin Odersky, Matthias Zenger + * @version 1.1 08/08/03 + * @since 2.8 + * @define Coll Stream + * @define coll stream + * @define orderDependent + * @define orderDependentFold */ abstract class Stream[+A] extends LinearSeq[A] with GenericTraversableTemplate[A, Stream] @@ -68,6 +74,7 @@ self => /** The stream resulting from the concatenation of this stream with the argument stream. * @param rest The stream that gets appended to this stream + * @return The stream containing elements of this stream and the traversable object. */ def append[B >: A](rest: => Traversable[B]): Stream[B] = if (isEmpty) rest.toStream else new Stream.Cons(head, tail append rest) @@ -82,7 +89,7 @@ self => /** Prints elements of this stream one by one, separated by commas. */ def print() { print(", ") } - /** Prints elements of this stream one by one, separated by <code>sep</code>. + /** Prints elements of this stream one by one, separated by `sep`. * @param sep The separator string printed between consecutive elements. */ def print(sep: String) { @@ -138,7 +145,7 @@ self => ) /** Returns the stream resulting from applying the given function - * <code>f</code> to each element of this stream. + * `f` to each element of this stream. * * @param f function to apply to each element. * @return <code>f(a<sub>0</sub>), ..., f(a<sub>n</sub>)</code> if this @@ -150,10 +157,11 @@ self => else new Stream.Cons(f(head), asStream[B](tail map f)) ) - /** Applies the given function <code>f</code> to each element of + /** Applies the given function `f` to each element of * this stream, then concatenates the results. * - * @param f the function to apply on each element. + * @param f the function to apply on each element. + * @param bf $bfinfo * @return <code>f(a<sub>0</sub>) ::: ... ::: f(a<sub>n</sub>)</code> if * this stream is <code>[a<sub>0</sub>, ..., a<sub>n</sub>]</code>. */ diff --git a/src/library/scala/collection/immutable/StringLike.scala b/src/library/scala/collection/immutable/StringLike.scala index 8068267dd2..f12ddebd08 100644 --- a/src/library/scala/collection/immutable/StringLike.scala +++ b/src/library/scala/collection/immutable/StringLike.scala @@ -17,8 +17,8 @@ import mutable.Builder import scala.util.matching.Regex import scala.math.ScalaNumber -/** - * @since 2.8 +/** A companion object for the `StringLike` containing some constants. + * @since 2.8 */ object StringLike { @@ -31,8 +31,17 @@ object StringLike { import StringLike._ -/** - * @since 2.8 +/** A trait describing stringlike collections. + * + * @tparam Repr The type of the actual collection inheriting `StringLike`. + * + * @since 2.8 + * @define Coll String + * @define coll string + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ trait StringLike[+Repr] extends IndexedSeqOptimized[Char, Repr] with Ordered[String] { self => @@ -62,15 +71,15 @@ self => private def isLineBreak(c: Char) = c == LF || c == FF /** - * Strip trailing line end character from this string if it has one. + * Strip trailing line end character from this string if it has one. * - * A line end character is one of - * <ul style="list-style-type: none;"> - * <li>LF - line feed (0x0A hex)</li> - * <li>FF - form feed (0x0C hex)</li> - * </ul> - * If a line feed character LF is preceded by a carriage return CR - * (0x0D hex), the CR character is also stripped (Windows convention). + * A line end character is one of + * <ul style="list-style-type: none;"> + * <li>LF - line feed (0x0A hex)</li> + * <li>FF - form feed (0x0C hex)</li> + * </ul> + * If a line feed character LF is preceded by a carriage return CR + * (0x0D hex), the CR character is also stripped (Windows convention). */ def stripLineEnd: String = { val len = toString.length @@ -112,15 +121,15 @@ self => } /** Return all lines in this string in an iterator, excluding trailing line - * end characters, i.e. apply <code>.stripLineEnd</code> to all lines - * returned by <code>linesWithSeparators</code>. + * end characters, i.e. apply `.stripLineEnd` to all lines + * returned by `linesWithSeparators`. */ def lines: Iterator[String] = linesWithSeparators map (line => new WrappedString(line).stripLineEnd) /** Return all lines in this string in an iterator, excluding trailing line - * end characters, i.e. apply <code>.stripLineEnd</code> to all lines - * returned by <code>linesWithSeparators</code>. + * end characters, i.e. apply `.stripLineEnd` to all lines + * returned by `linesWithSeparators`. */ def linesIterator: Iterator[String] = linesWithSeparators map (line => new WrappedString(line).stripLineEnd) @@ -135,12 +144,12 @@ self => new String(chars) } - /** Returns this string with the given <code>prefix</code> stripped. */ + /** Returns this string with the given `prefix` stripped. */ def stripPrefix(prefix: String) = if (toString.startsWith(prefix)) toString.substring(prefix.length) else toString - /** Returns this string with the given <code>suffix</code> stripped. */ + /** Returns this string with the given `suffix` stripped. */ def stripSuffix(suffix: String) = if (toString.endsWith(suffix)) toString.substring(0, toString.length() - suffix.length) else toString @@ -150,7 +159,7 @@ self => * * <blockquote> * Strip a leading prefix consisting of blanks or control characters - * followed by <code>marginChar</code> from the line. + * followed by `marginChar` from the line. * </blockquote> */ def stripMargin(marginChar: Char): String = { @@ -170,7 +179,7 @@ self => * * <blockquote> * Strip a leading prefix consisting of blanks or control characters - * followed by <code>|</code> from the line. + * followed by `|` from the line. * </blockquote> */ def stripMargin: String = stripMargin('|') @@ -230,7 +239,7 @@ self => * * The interpretation of the formatting patterns is described in * <a href="" target="contentFrame" class="java/util/Formatter"> - * <code>java.util.Formatter</code></a>, with the addition that + * `java.util.Formatter`</a>, with the addition that * classes deriving from `ScalaNumber` (such as `scala.BigInt` and * `scala.BigDecimal`) are unwrapped to pass a type which `Formatter` * understands. @@ -249,7 +258,7 @@ self => * * The interpretation of the formatting patterns is described in * <a href="" target="contentFrame" class="java/util/Formatter"> - * <code>java.util.Formatter</code></a>, with the addition that + * `java.util.Formatter`</a>, with the addition that * classes deriving from `ScalaNumber` (such as `scala.BigInt` and * `scala.BigDecimal`) are unwrapped to pass a type which `Formatter` * understands. diff --git a/src/library/scala/collection/immutable/StringOps.scala b/src/library/scala/collection/immutable/StringOps.scala index 4949eb7056..2bdbf672cd 100644 --- a/src/library/scala/collection/immutable/StringOps.scala +++ b/src/library/scala/collection/immutable/StringOps.scala @@ -15,15 +15,19 @@ package immutable import mutable.StringBuilder /** - * This class serves as a wrapper providing `String`s with all the operations - * found in indexed sequences. Where needed, instances of `String` object - * are implicitly converted into this class. + * This class serves as a wrapper providing `String`s with all the operations + * found in indexed sequences. Where needed, instances of `String` object + * are implicitly converted into this class. * - * The difference between this class and `WrappedString` is that calling transformer - * methods such as `filter` and `map` will yield a `String` object, whereas a - * `WrappedString` will remain a `WrappedString`. + * The difference between this class and `WrappedString` is that calling transformer + * methods such as `filter` and `map` will yield a `String` object, whereas a + * `WrappedString` will remain a `WrappedString`. * - * @since 2.8 + * @param repr the actual representation of this string operations object. + * + * @since 2.8 + * @define Coll StringOps + * @define coll string */ final class StringOps(override val repr: String) extends StringLike[String] { diff --git a/src/library/scala/collection/immutable/Traversable.scala b/src/library/scala/collection/immutable/Traversable.scala index af7f6979c9..8fdb5c7568 100644 --- a/src/library/scala/collection/immutable/Traversable.scala +++ b/src/library/scala/collection/immutable/Traversable.scala @@ -26,11 +26,10 @@ trait Traversable[+A] extends scala.collection.Traversable[A] override def companion: GenericCompanion[Traversable] = Traversable } -/** A factory object for the trait <code>Traversable</code>. - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** $factoryInfo + * The current default implementation of a $Coll is a `Vector`. + * @define coll immutable traversable collection + * @define Coll immutable.Traversable */ object Traversable extends TraversableFactory[Traversable] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Traversable[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/immutable/TreeMap.scala b/src/library/scala/collection/immutable/TreeMap.scala index bd04b8d2e2..61cfe2e13b 100644 --- a/src/library/scala/collection/immutable/TreeMap.scala +++ b/src/library/scala/collection/immutable/TreeMap.scala @@ -15,22 +15,33 @@ package immutable import generic._ import mutable.Builder -/** The canonical factory of <a href="TreeMap.html">TreeMap</a>'s. - * - * @since 1 +/** $factoryInfo + * @define Coll immutable.TreeMap + * @define coll immutable tree map */ object TreeMap extends ImmutableSortedMapFactory[TreeMap] { def empty[A, B](implicit ord: Ordering[A]) = new TreeMap[A, B]()(ord) + /** $sortedMapCanBuildFromInfo */ implicit def canBuildFrom[A, B](implicit ord: Ordering[A]): CanBuildFrom[Coll, (A, B), TreeMap[A, B]] = new SortedMapCanBuildFrom[A, B] private def make[A, B](s: Int, t: RedBlack[A]#Tree[B])(implicit ord: Ordering[A]) = new TreeMap[A, B](s, t)(ord) } /** This class implements immutable maps using a tree. * + * @tparam A the type of the keys contained in this tree map. + * @tparam B the type of the values associated with the keys. + * @param ordering the implicit ordering used to compare objects of type `A`. + * * @author Erik Stenman * @author Matthias Zenger * @version 1.1, 03/05/2004 * @since 1 + * @define Coll immutable.TreeMap + * @define coll immutable tree map + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable class TreeMap[A, +B](override val size: Int, t: RedBlack[A]#Tree[B])(implicit val ordering: Ordering[A]) @@ -65,18 +76,20 @@ class TreeMap[A, +B](override val size: Int, t: RedBlack[A]#Tree[B])(implicit va * if key is <em>not</em> in the TreeMap, otherwise * the key is updated with the new entry. * - * @param key ... - * @param value ... - * @return ... + * @tparam B1 type of the value of the new binding which is a supertype of `B` + * @param key the key that should be updated + * @param value the value to be associated with `key` + * @return a new $coll with the updated binding */ override def updated [B1 >: B](key: A, value: B1): TreeMap[A, B1] = { val newsize = if (tree.lookup(key).isEmpty) size + 1 else size TreeMap.make(newsize, tree.update(key, value)) } - /** Add a key/value pair to this map. - * @param kv the key/value pair - * @return A new map with the new binding added to this map + /** Add a key/value pair to this map. + * @tparam B1 type of the value of the new binding, a supertype of `B` + * @param kv the key/value pair + * @return A new $coll with the new binding added to this map */ override def + [B1 >: B] (kv: (A, B1)): TreeMap[A, B1] = updated(kv._1, kv._2) @@ -84,15 +97,22 @@ class TreeMap[A, +B](override val size: Int, t: RedBlack[A]#Tree[B])(implicit va * either the collection itself (if it is mutable), or a new collection * with the added elements. * + * @tparam B1 type of the values of the new bindings, a supertype of `B` * @param elem1 the first element to add. * @param elem2 the second element to add. * @param elems the remaining elements to add. + * @return a new $coll with the updated bindings */ override def + [B1 >: B] (elem1: (A, B1), elem2: (A, B1), elems: (A, B1) *): TreeMap[A, B1] = this + elem1 + elem2 ++ elems /** A new TreeMap with the entry added is returned, * assuming that key is <em>not</em> in the TreeMap. + * + * @tparam B1 type of the values of the new bindings, a supertype of `B` + * @param key the key to be inserted + * @param value the value to be associated with `key` + * @return a new $coll with the inserted binding, if it wasn't present in the map */ def insert [B1 >: B](key: A, value: B1): TreeMap[A, B1] = { assert(tree.lookup(key).isEmpty) @@ -103,11 +123,11 @@ class TreeMap[A, +B](override val size: Int, t: RedBlack[A]#Tree[B])(implicit va if (tree.lookup(key).isEmpty) this else TreeMap.make(size - 1, tree.delete(key)) - /** Check if this map maps <code>key</code> to a value and return the + /** Check if this map maps `key` to a value and return the * value if it exists. * * @param key the key of the mapping of interest - * @return the value of the mapping, if it exists + * @return the value of the mapping, if it exists */ override def get(key: A): Option[B] = tree.lookup(key) match { case n: NonEmpty[b] => Some(n.value) diff --git a/src/library/scala/collection/immutable/TreeSet.scala b/src/library/scala/collection/immutable/TreeSet.scala index 79e1a6b00b..7b1f71df5b 100644 --- a/src/library/scala/collection/immutable/TreeSet.scala +++ b/src/library/scala/collection/immutable/TreeSet.scala @@ -15,11 +15,11 @@ package immutable import generic._ import mutable.{Builder, AddingBuilder} -/** The canonical factory of <a href="TreeSet.html">TreeSet</a>'s. - * - * @since 1 +/** $factoryInfo + * @define Coll immutable.TreeSet + * @define coll immutable tree set */ -object TreeSet extends SortedSetFactory[TreeSet] { +object TreeSet extends ImmutableSortedSetFactory[TreeSet] { implicit def implicitBuilder[A](implicit ordering: Ordering[A]): Builder[A, TreeSet[A]] = newBuilder[A](ordering) override def newBuilder[A](implicit ordering: Ordering[A]): Builder[A, TreeSet[A]] = new AddingBuilder(empty[A](ordering)) @@ -31,9 +31,18 @@ object TreeSet extends SortedSetFactory[TreeSet] { /** This class implements immutable sets using a tree. * + * @tparam A the type of the elements contained in this tree set + * @param ordering the implicit ordering used to compare objects of type `A` + * * @author Martin Odersky * @version 2.0, 02/01/2007 * @since 1 + * @define Coll immutable.TreeSet + * @define coll immutable tree set + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @SerialVersionUID(-234066569443569402L) class TreeSet[A](override val size: Int, t: RedBlack[A]#Tree[Unit]) @@ -54,29 +63,40 @@ class TreeSet[A](override val size: Int, t: RedBlack[A]#Tree[Unit]) */ override def empty = TreeSet.empty - /** A new TreeSet with the entry added is returned, + /** Creates a new `TreeSet` with the entry added. + * + * @param elem a new element to add. + * @return a new $coll containing `elem` and all the elements of this $coll. */ def + (elem: A): TreeSet[A] = { val newsize = if (tree.lookup(elem).isEmpty) size + 1 else size newSet(newsize, tree.update(elem, ())) } - /** A new TreeSet with the entry added is returned, + /** A new `TreeSet` with the entry added is returned, * assuming that elem is <em>not</em> in the TreeSet. + * + * @param elem a new element to add. + * @return a new $coll containing `elem` and all the elements of this $coll. */ def insert(elem: A): TreeSet[A] = { assert(tree.lookup(elem).isEmpty) newSet(size + 1, tree.update(elem, ())) } + /** Creates a new `TreeSet` with the entry removed. + * + * @param elem a new element to add. + * @return a new $coll containing all the elements of this $coll except `elem`. + */ def - (elem:A): TreeSet[A] = if (tree.lookup(elem).isEmpty) this else newSet(size - 1, tree delete elem) - /** Checks if this set contains element <code>elem</code>. + /** Checks if this set contains element `elem`. * * @param elem the element to check for membership. - * @return true, iff <code>elem</code> is contained in this set. + * @return true, iff `elem` is contained in this set. */ def contains(elem: A): Boolean = !tree.lookup(elem).isEmpty diff --git a/src/library/scala/collection/immutable/WrappedString.scala b/src/library/scala/collection/immutable/WrappedString.scala index cefbd96b5c..011774e10d 100644 --- a/src/library/scala/collection/immutable/WrappedString.scala +++ b/src/library/scala/collection/immutable/WrappedString.scala @@ -17,14 +17,18 @@ import mutable.{Builder, StringBuilder} import scala.util.matching.Regex /** - * This class serves as a wrapper augmenting `String`s with all the operations - * found in indexed sequences. + * This class serves as a wrapper augmenting `String`s with all the operations + * found in indexed sequences. * - * The difference between this class and `StringOps` is that calling transformer - * methods such as `filter` and `map` will yield an object of type `WrappedString` - * rather than a `String`. + * The difference between this class and `StringOps` is that calling transformer + * methods such as `filter` and `map` will yield an object of type `WrappedString` + * rather than a `String`. * - * @since 2.8 + * @param self a string contained within this wrapped string + * + * @since 2.8 + * @define Coll WrappedString + * @define coll wrapped string */ class WrappedString(override val self: String) extends IndexedSeq[Char] with StringLike[WrappedString] with Proxy { @@ -38,8 +42,9 @@ class WrappedString(override val self: String) extends IndexedSeq[Char] with Str new WrappedString(self.substring(from max 0, until min self.length)) } -/** - * @since 2.8 +/** A companion object for wrapped strings. + * + * @since 2.8 */ object WrappedString { def newBuilder: Builder[Char, WrappedString] = new StringBuilder() mapResult (new WrappedString(_)) diff --git a/src/library/scala/collection/mutable/ArrayBuffer.scala b/src/library/scala/collection/mutable/ArrayBuffer.scala index bee531221f..ae656d4e09 100644 --- a/src/library/scala/collection/mutable/ArrayBuffer.scala +++ b/src/library/scala/collection/mutable/ArrayBuffer.scala @@ -177,8 +177,8 @@ class ArrayBuffer[A](override protected val initialSize: Int) /** Factory object for the `ArrayBuffer` class. * * $factoryInfo - * @define coll list - * @define Coll List + * @define coll array buffer + * @define Coll ArrayBuffer */ object ArrayBuffer extends SeqFactory[ArrayBuffer] { /** $genericCanBuildFromInfo */ diff --git a/src/library/scala/collection/mutable/ArrayLike.scala b/src/library/scala/collection/mutable/ArrayLike.scala index b3bd0fbe25..15cafa6ee7 100644 --- a/src/library/scala/collection/mutable/ArrayLike.scala +++ b/src/library/scala/collection/mutable/ArrayLike.scala @@ -13,15 +13,15 @@ package scala.collection package mutable import generic._ -/** A subtrait of `collection.IndexedSeq` which represents sequences - * that can be mutated. - * - * @since 2.8 +/** A common supertrait of `ArrayOps` and `WrappedArray` that factors out most + * operations on arrays and wrapped arrays. * * @tparam A type of the elements contained in the array like object. * @tparam Repr the type of the actual collection containing the elements. * * @define Coll ArrayLike + * @version 2.8 + * @since 2.8 */ trait ArrayLike[A, +Repr] extends IndexedSeqOptimized[A, Repr] { self => diff --git a/src/library/scala/collection/mutable/IndexedSeq.scala b/src/library/scala/collection/mutable/IndexedSeq.scala index 14ee5afc9b..06a6230c6b 100644 --- a/src/library/scala/collection/mutable/IndexedSeq.scala +++ b/src/library/scala/collection/mutable/IndexedSeq.scala @@ -27,8 +27,9 @@ trait IndexedSeq[A] extends Seq[A] } /** $factoryInfo - * @define coll indexed sequence - * @define Coll IndexedSeq + * The current default implementation of a $Coll is an `ArrayBuffer`. + * @define coll mutable indexed sequence + * @define Coll mutable.IndexedSeq */ object IndexedSeq extends SeqFactory[IndexedSeq] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, IndexedSeq[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/IndexedSeqView.scala b/src/library/scala/collection/mutable/IndexedSeqView.scala index 9a0e7a4010..8d72ac2c49 100644 --- a/src/library/scala/collection/mutable/IndexedSeqView.scala +++ b/src/library/scala/collection/mutable/IndexedSeqView.scala @@ -16,14 +16,16 @@ import generic._ import TraversableView.NoBuilder -/** A non-strict view of a mutable IndexedSeq. - * This is a leaf class which mixes methods returning a plain IndexedSeq view - * and methods returning a mutable IndexedSeq view. - * There is no associated `Like' class. - * @author Sean McDirmid - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** A non-strict view of a mutable `IndexedSeq`. + * $viewinfo + * Some of the operations of this class will yield again a mutable indexed sequence, + * others will just yield a plain indexed sequence of type `collection.IndexedSeq`. + * Because this is a leaf class there is no associated `Like' class. + * @author Martin Odersky + * @version 2.8 + * @since 2.8 + * @tparam A the element type of the view + * @tparam Coll the type of the underlying collection containing the elements. */ trait IndexedSeqView[A, +Coll] extends IndexedSeq[A] with IndexedSeqOptimized[A, IndexedSeqView[A, Coll]] @@ -91,13 +93,13 @@ self => override def reverse: IndexedSeqView[A, Coll] = newReversed.asInstanceOf[IndexedSeqView[A, Coll]] } -/** $factoryInfo - * @define coll indexed sequence view - * @define Coll IndexedSeqView - * Note that the canBuildFrom factories yield SeqViews, not IndexedSewqViews. - * This is intentional, because not all operations yield again a mutable.IndexedSeqView. - * For instance, map just gives a SeqView, which reflects the fact that - * map cannot do its work and maintain a pointer into the original indexed sequence. +/** An object containing the necessary implicit definitions to make + * `SeqView`s work. Its definitions are generally not accessed directly by clients. + * + * Note that the `canBuildFrom` factories yield `SeqView`s, not `IndexedSewqView`s. + * This is intentional, because not all operations yield again a `mutable.IndexedSeqView`. + * For instance, `map` just gives a `SeqView`, which reflects the fact that + * `map` cannot do its work and maintain a pointer into the original indexed sequence. */ object IndexedSeqView { type Coll = TraversableView[_, C] forSome {type C <: Traversable[_]} diff --git a/src/library/scala/collection/mutable/Iterable.scala b/src/library/scala/collection/mutable/Iterable.scala index 85c6df6fb0..71143f74e3 100644 --- a/src/library/scala/collection/mutable/Iterable.scala +++ b/src/library/scala/collection/mutable/Iterable.scala @@ -21,8 +21,9 @@ trait Iterable[A] extends Traversable[A] } /** $factoryInfo - * @define coll indexed sequence - * @define Coll IndexedSeq + * The current default implementation of a $Coll is an `ArrayBuffer`. + * @define coll mutable iterable collection + * @define Coll mutable.Iterable */ object Iterable extends TraversableFactory[Iterable] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Iterable[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/LinearSeq.scala b/src/library/scala/collection/mutable/LinearSeq.scala index 185b8c97a3..7567504890 100644 --- a/src/library/scala/collection/mutable/LinearSeq.scala +++ b/src/library/scala/collection/mutable/LinearSeq.scala @@ -29,8 +29,9 @@ trait LinearSeq[A] extends Seq[A] } /** $factoryInfo - * @define coll linear sequence - * @define Coll LinearSeq + * The current default implementation of a $Coll is a `MutableList`. + * @define coll mutable linear sequence + * @define Coll mutable.LinearSeq */ object LinearSeq extends SeqFactory[LinearSeq] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, LinearSeq[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/ListBuffer.scala b/src/library/scala/collection/mutable/ListBuffer.scala index a2611a8c0f..7ebbf7b4da 100644 --- a/src/library/scala/collection/mutable/ListBuffer.scala +++ b/src/library/scala/collection/mutable/ListBuffer.scala @@ -246,7 +246,7 @@ final class ListBuffer[A] // Overrides of methods in Buffer /** Removes the element on a given index position. May take time linear in - * the buffer size + * the buffer size. * * @param n the index which refers to the element to delete. * @return n the element that was formerly at position `n`. diff --git a/src/library/scala/collection/mutable/ListMap.scala b/src/library/scala/collection/mutable/ListMap.scala index a4321d3818..09b0c6459b 100644 --- a/src/library/scala/collection/mutable/ListMap.scala +++ b/src/library/scala/collection/mutable/ListMap.scala @@ -59,8 +59,8 @@ class ListMap[A, B] extends Map[A, B] with MapLike[A, B, ListMap[A, B]] { } /** $factoryInfo - * @define Coll ListMap - * @define coll list map + * @define Coll mutable.ListMap + * @define coll mutable list map */ object ListMap extends MutableMapFactory[ListMap] { implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), ListMap[A, B]] = new MapCanBuildFrom[A, B] diff --git a/src/library/scala/collection/mutable/Map.scala b/src/library/scala/collection/mutable/Map.scala index 73688e3bee..6c42bad0e9 100644 --- a/src/library/scala/collection/mutable/Map.scala +++ b/src/library/scala/collection/mutable/Map.scala @@ -14,11 +14,11 @@ package mutable import generic._ -/** This trait represents mutable maps. - * All implementations od mutable maps inherit from it. - * - * @tparam A the type of the keys of the map. - * @tparam B the type of associated values. +/** A base trait for maps that can be mutated. + * $mapNote + * $mapTags + * @since 1.0 + * @author Matthias Zenger */ trait Map[A, B] extends Iterable[(A, B)] @@ -40,11 +40,15 @@ trait Map[A, B] */ } -/* The standard factory for mutable maps. - * Currently this uses `HashMap` as the implementation class. +/** $factoryInfo + * The current default implementation of a $Coll is a `HashMap`. + * @define coll mutable map + * @define Coll mutable.Map */ object Map extends MutableMapFactory[Map] { + /** $canBuildFromInfo */ implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), Map[A, B]] = new MapCanBuildFrom[A, B] + def empty[A, B]: Map[A, B] = new HashMap[A, B] } diff --git a/src/library/scala/collection/mutable/MapBuilder.scala b/src/library/scala/collection/mutable/MapBuilder.scala index 9ce3524d9e..75fb48abd6 100644 --- a/src/library/scala/collection/mutable/MapBuilder.scala +++ b/src/library/scala/collection/mutable/MapBuilder.scala @@ -14,6 +14,10 @@ package mutable /** The canonical builder for immutable maps, working with the map's `+` method * to add new elements. * Collections are built from their `empty` element using this + method. + * + * @tparam A Type of the keys for the map this builder creates. + * @tparam B Type of the values for the map this builder creates. + * @tparam Coll The type of the actual collection this builder builds. * @param empty The empty element of the collection. * * @since 2.8 diff --git a/src/library/scala/collection/mutable/MapLike.scala b/src/library/scala/collection/mutable/MapLike.scala index 19e67a6731..676a325c9b 100644 --- a/src/library/scala/collection/mutable/MapLike.scala +++ b/src/library/scala/collection/mutable/MapLike.scala @@ -15,41 +15,10 @@ package mutable import generic._ import annotation.migration -/** A template trait for mutable maps of type `mutable.Map[A, B]` which - * associate keys of type `A` with values of type `B`. - * - * @tparam A the type of the keys. - * @tparam B the type of associated values. - * @tparam This the type of the `Map` itself. - * - * $mapnote - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 - * @define mapnote - * To implement a concrete mutable map, you need to provide implementations - * of the following methods: - * {{{ - * def get(key: A): Option[B] - * def iterator: Iterator[(A, B)] - * def += (kv: (A, B)): this.type - * def -= (key: A): this.type - * }}} - * If you wish that methods like `take`, - * `drop`, `filter` return the same kind of map, you - * should also override: - * {{{ - * def empty: This - * }}} - * If you wish to avoid the unnecessary construction of an `Option` - * object, you could also override `apply`, `update`, - * and `delete`. - - * It is also good idea to override methods `foreach` and - * `size` for efficiency. - * @define coll mutable map - * @define Coll mutable.Map +/** A template trait for mutable maps. + * $mapNote + * $mapTags + * @since 2.8 */ trait MapLike[A, B, +This <: MapLike[A, B, This] with Map[A, B]] extends scala.collection.MapLike[A, B, This] diff --git a/src/library/scala/collection/mutable/MapProxy.scala b/src/library/scala/collection/mutable/MapProxy.scala index cb768f6778..7fbb016a57 100644 --- a/src/library/scala/collection/mutable/MapProxy.scala +++ b/src/library/scala/collection/mutable/MapProxy.scala @@ -12,20 +12,17 @@ package scala.collection package mutable -/** <p> - * This is a simple wrapper class for <a href="Map.html" - * target="contentFrame"><code>scala.collection.mutable.Map</code></a>. - * </p> - * <p> - * It is most useful for assembling customized map abstractions - * dynamically using object composition and forwarding. - * </p> +/** + * This trait implements a proxy for <a href="Map.html" + * target="contentFrame"><code>scala.collection.mutable.Map</code></a>. + * + * It is most useful for assembling customized map abstractions + * dynamically using object composition and forwarding. * * @author Matthias Zenger, Martin Odersky * @version 2.0, 31/12/2006 * @since 1 */ - trait MapProxy[A, B] extends Map[A, B] with MapProxyLike[A, B, Map[A, B]] { private def newProxy[B1 >: B](newSelf: Map[A, B1]): MapProxy[A, B1] = diff --git a/src/library/scala/collection/mutable/MutableList.scala b/src/library/scala/collection/mutable/MutableList.scala index 4324fa7ef9..4b6d727c34 100644 --- a/src/library/scala/collection/mutable/MutableList.scala +++ b/src/library/scala/collection/mutable/MutableList.scala @@ -16,11 +16,10 @@ import generic._ import immutable.{List, Nil} // !!! todo: convert to LinkedListBuffer? -/** <p> - * This class is used internally to represent mutable lists. It is the - * basis for the implementation of the classes - * <code>Stack</code>, and <code>Queue</code>. - * </p> +/** + * This class is used internally to represent mutable lists. It is the + * basis for the implementation of the classes + * `Stack`, and `Queue`. * * @author Matthias Zenger * @author Martin Odersky diff --git a/src/library/scala/collection/mutable/ObservableBuffer.scala b/src/library/scala/collection/mutable/ObservableBuffer.scala index d3bf49a5b4..8881e78ebc 100644 --- a/src/library/scala/collection/mutable/ObservableBuffer.scala +++ b/src/library/scala/collection/mutable/ObservableBuffer.scala @@ -15,9 +15,9 @@ package mutable import script._ /** This class is typically used as a mixin. It adds a subscription - * mechanism to the <code>Buffer</code> class into which this abstract - * class is mixed in. Class <code>ObservableBuffer</code> publishes - * events of the type <code>Message</code>. + * mechanism to the `Buffer` class into which this abstract + * class is mixed in. Class `ObservableBuffer` publishes + * events of the type `Message`. * * @author Matthias Zenger * @version 1.0, 08/07/2003 diff --git a/src/library/scala/collection/mutable/ObservableMap.scala b/src/library/scala/collection/mutable/ObservableMap.scala index b15b2e54e9..0cde1b2288 100644 --- a/src/library/scala/collection/mutable/ObservableMap.scala +++ b/src/library/scala/collection/mutable/ObservableMap.scala @@ -16,9 +16,9 @@ import script._ /** This class is typically used as a mixin. It adds a subscription - * mechanism to the <code>Map</code> class into which this abstract - * class is mixed in. Class <code>ObservableMap</code> publishes - * events of the type <code>Message</code>. + * mechanism to the `Map` class into which this abstract + * class is mixed in. Class `ObservableMap` publishes + * events of the type `Message`. * * @author Matthias Zenger * @author Martin Odersky diff --git a/src/library/scala/collection/mutable/ObservableSet.scala b/src/library/scala/collection/mutable/ObservableSet.scala index 024c2415ce..1f2f1789f9 100644 --- a/src/library/scala/collection/mutable/ObservableSet.scala +++ b/src/library/scala/collection/mutable/ObservableSet.scala @@ -15,9 +15,9 @@ package mutable import script._ /** This class is typically used as a mixin. It adds a subscription - * mechanism to the <code>Set</code> class into which this abstract - * class is mixed in. Class <code>ObservableSet</code> publishes - * events of the type <code>Message</code>. + * mechanism to the `Set` class into which this abstract + * class is mixed in. Class `ObservableSet` publishes + * events of the type `Message`. * * @author Matthias Zenger * @version 1.0, 08/07/2003 diff --git a/src/library/scala/collection/mutable/OpenHashMap.scala b/src/library/scala/collection/mutable/OpenHashMap.scala index cbcc19c3e8..4ecfe0e762 100644 --- a/src/library/scala/collection/mutable/OpenHashMap.scala +++ b/src/library/scala/collection/mutable/OpenHashMap.scala @@ -12,8 +12,12 @@ package scala.collection package mutable + /** - * @since 2.7 + * @define Coll OpenHashMap + * @define coll open hash map + * + * @since 2.7 */ object OpenHashMap { def apply[K, V](elems : (K, V)*) = { @@ -42,17 +46,26 @@ object OpenHashMap { private[mutable] def nextPowerOfTwo(i : Int) = highestOneBit(i) << 1; } -/** - * A mutable hash map based on an open hashing scheme. The precise scheme is undefined, - * but it should make a reasonable effort to ensure that an insert with consecutive hash - * codes is not unneccessarily penalised. In particular, mappings of consecutive integer - * keys should work without significant performance loss. +/** A mutable hash map based on an open hashing scheme. The precise scheme is undefined, + * but it should make a reasonable effort to ensure that an insert with consecutive hash + * codes is not unneccessarily penalised. In particular, mappings of consecutive integer + * keys should work without significant performance loss. + * + * @tparam Key type of the keys in this map. + * @tparam Value type of the values in this map. + * @param initialSize the initial size of the internal hash table. * - * @author David MacIver - * @since 2.7 + * @author David MacIver + * @since 2.7 + * + * @define Coll OpenHashMap + * @define coll open hash map + * @define mayNotTerminateInf + * @define willNotTerminateInf */ -class OpenHashMap[Key, Value](initialSize : Int) extends Map[Key, Value] - with MapLike[Key, Value, OpenHashMap[Key, Value]] { +class OpenHashMap[Key, Value](initialSize : Int) +extends Map[Key, Value] + with MapLike[Key, Value, OpenHashMap[Key, Value]] { import OpenHashMap.OpenEntry type Entry = OpenEntry[Key, Value] @@ -77,6 +90,7 @@ class OpenHashMap[Key, Value](initialSize : Int) extends Map[Key, Value] override def size = _size; private[this] def size_=(s : Int) = _size = s; + /** Returns a mangled hash code of the provided key. */ protected def hashOf(key : Key) = { var h = key.hashCode; h ^= ((h >>> 20) ^ (h >>> 12)); @@ -173,9 +187,10 @@ class OpenHashMap[Key, Value](initialSize : Int) extends Map[Key, Value] None; } - /** - * An iterator over the elements of this map. Use of this iterator follows the same - * contract for concurrent modification as the foreach method. + /** An iterator over the elements of this map. Use of this iterator follows the same + * contract for concurrent modification as the foreach method. + * + * @return the iterator */ def iterator = new Iterator[(Key, Value)]{ var index = 0; @@ -203,19 +218,20 @@ class OpenHashMap[Key, Value](initialSize : Int) extends Map[Key, Value] } /** - * Loop over the key, value mappings of this map. + * Loop over the key, value mappings of this map. * - * The behaviour of modifying the map during an iteration is as follows: + * The behaviour of modifying the map during an iteration is as follows: * - * <ul> - * <li>Deleting a mapping is always permitted.</li> - * <li>Changing the value of mapping which is already present is permitted.</li> - * <li>Anything else is not permitted. It will usually, but not always, throw an exception.</li> - * </ul> + * <ul> + * <li>Deleting a mapping is always permitted.</li> + * <li>Changing the value of mapping which is already present is permitted.</li> + * <li>Anything else is not permitted. It will usually, but not always, throw an exception.</li> + * </ul> * - * @param f The function to apply to each key, value mapping. + * @tparam U The return type of the specified function `f`, return result of which is ignored. + * @param f The function to apply to each key, value mapping. */ - override def foreach[U](f : ((Key, Value)) => U) { + override def foreach[U](f : ((Key, Value)) => U) { val startModCount = modCount; foreachUndeletedEntry(entry => { if (modCount != startModCount) error("Concurrent Modification") @@ -226,6 +242,7 @@ class OpenHashMap[Key, Value](initialSize : Int) extends Map[Key, Value] private[this] def foreachUndeletedEntry(f : Entry => Unit){ table.foreach(entry => if (entry != null && entry.value != None) f(entry)); } + override def transform(f : (Key, Value) => Value) = { foreachUndeletedEntry(entry => entry.value = Some(f(entry.key, entry.value.get))); this diff --git a/src/library/scala/collection/mutable/PriorityQueue.scala b/src/library/scala/collection/mutable/PriorityQueue.scala index eade376abe..37e1b0ccae 100644 --- a/src/library/scala/collection/mutable/PriorityQueue.scala +++ b/src/library/scala/collection/mutable/PriorityQueue.scala @@ -19,11 +19,20 @@ import annotation.migration * To prioritize elements of type T there must be an implicit * Ordering[T] available at creation. * + * @tparam A type of the elements in this priority queue. + * @param ord implicit ordering used to compare the elements of type `A`. + * * @author Matthias Zenger * @version 1.0, 03/05/2004 * @since 1 + * + * @define Coll PriorityQueue + * @define coll priority queue + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ - @serializable @cloneable class PriorityQueue[A](implicit ord: Ordering[A]) extends Seq[A] @@ -98,6 +107,7 @@ class PriorityQueue[A](implicit ord: Ordering[A]) k = k / 2 } } + protected def fixDown(as: Array[AnyRef], m: Int, n: Int): Unit = { var k: Int = m while (n >= 2 * k) { @@ -134,7 +144,8 @@ class PriorityQueue[A](implicit ord: Ordering[A]) /** Inserts a single element into the priority queue. * - * @param elem the element to insert + * @param elem the element to insert. + * @return this $coll. */ def +=(elem: A): this.type = { resarr.p_ensureSize(resarr.p_size0 + 1) @@ -147,7 +158,8 @@ class PriorityQueue[A](implicit ord: Ordering[A]) /** Adds all elements provided by a `TraversableOnce` object * into the priority queue. * - * @param xs an iterable object + * @param xs a traversable object. + * @return a new priority queue containing elements of both `xs` and `this`. */ def ++(xs: TraversableOnce[A]) = { this.clone() ++= xs } @@ -203,19 +215,19 @@ class PriorityQueue[A](implicit ord: Ordering[A]) } } - /** - * Returns the reverse of this queue. The priority queue that gets - * returned will have an inversed ordering - if for some elements - * `x` and `y` the original queue's ordering - * had `compare` returning an integer ''w'', the new one will return ''-w'', - * assuming the original ordering abides its contract. + + /** Returns the reverse of this queue. The priority queue that gets + * returned will have an inversed ordering - if for some elements + * `x` and `y` the original queue's ordering + * had `compare` returning an integer ''w'', the new one will return ''-w'', + * assuming the original ordering abides its contract. * - * Note that the order of the elements will be reversed unless the - * `compare` method returns 0. In this case, such elements - * will be subsequent, but their corresponding subinterval may be inappropriately - * reversed. However, due to the compare-equals contract, they will also be equal. + * Note that the order of the elements will be reversed unless the + * `compare` method returns 0. In this case, such elements + * will be subsequent, but their corresponding subinterval may be inappropriately + * reversed. However, due to the compare-equals contract, they will also be equal. * - * @return A reversed priority queue. + * @return A reversed priority queue. */ override def reverse = { val revq = new PriorityQueue[A]()(new math.Ordering[A] { diff --git a/src/library/scala/collection/mutable/PriorityQueueProxy.scala b/src/library/scala/collection/mutable/PriorityQueueProxy.scala index 3f1ee5d217..f99755128f 100644 --- a/src/library/scala/collection/mutable/PriorityQueueProxy.scala +++ b/src/library/scala/collection/mutable/PriorityQueueProxy.scala @@ -13,7 +13,7 @@ package mutable /** This class servers as a proxy for priority queues. The * elements of the queue have to be ordered in terms of the - * <code>Ordered[T]</code> class. + * `Ordered[T]` class. * * @author Matthias Zenger * @version 1.0, 03/05/2004 @@ -22,7 +22,6 @@ package mutable abstract class PriorityQueueProxy[A](implicit ord: Ordering[A]) extends PriorityQueue[A] with Proxy { - def self: PriorityQueue[A] /** Creates a new iterator over all elements contained in this diff --git a/src/library/scala/collection/mutable/Publisher.scala b/src/library/scala/collection/mutable/Publisher.scala index 58e4394ef7..f91864f974 100644 --- a/src/library/scala/collection/mutable/Publisher.scala +++ b/src/library/scala/collection/mutable/Publisher.scala @@ -13,12 +13,14 @@ package scala.collection package mutable -/** <code>Publisher[A,This]</code> objects publish events of type <code>A</code> +/** `Publisher[A,This]` objects publish events of type `A` * to all registered subscribers. When subscribing, a subscriber may specify * a filter which can be used to constrain the number of events sent to the * subscriber. Subscribers may suspend their subscription, or reactivate a - * suspended subscription. Class <code>Publisher</code> is typically used - * as a mixin. The abstract type <code>Pub</code> models the type of the publisher itself. + * suspended subscription. Class `Publisher` is typically used + * as a mixin. The abstract type `Pub` models the type of the publisher itself. + * + * @tparam Evt type of the published event. * * @author Matthias Zenger * @author Martin Odersky diff --git a/src/library/scala/collection/mutable/Queue.scala b/src/library/scala/collection/mutable/Queue.scala index 3754dbc3f2..3132e2f422 100644 --- a/src/library/scala/collection/mutable/Queue.scala +++ b/src/library/scala/collection/mutable/Queue.scala @@ -14,13 +14,20 @@ package mutable import generic._ -/** <code>Queue</code> objects implement data structures that allow to +/** `Queue` objects implement data structures that allow to * insert and retrieve elements in a first-in-first-out (FIFO) manner. * * @author Matthias Zenger * @author Martin Odersky * @version 2.8 * @since 1 + * + * @define Coll mutable.Queue + * @define coll mutable queue + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @cloneable class Queue[A] extends MutableList[A] with Cloneable[Queue[A]] { diff --git a/src/library/scala/collection/mutable/QueueProxy.scala b/src/library/scala/collection/mutable/QueueProxy.scala index b2548b26cc..6adb3d490b 100644 --- a/src/library/scala/collection/mutable/QueueProxy.scala +++ b/src/library/scala/collection/mutable/QueueProxy.scala @@ -12,9 +12,11 @@ package scala.collection package mutable -/** <code>Queue</code> objects implement data structures that allow to +/** `Queue` objects implement data structures that allow to * insert and retrieve elements in a first-in-first-out (FIFO) manner. * + * @tparam A type of the elements in this queue proxy. + * * @author Matthias Zenger * @version 1.1, 03/05/2004 * @since 1 diff --git a/src/library/scala/collection/mutable/ResizableArray.scala b/src/library/scala/collection/mutable/ResizableArray.scala index 80ab1cd559..96d24136cf 100644 --- a/src/library/scala/collection/mutable/ResizableArray.scala +++ b/src/library/scala/collection/mutable/ResizableArray.scala @@ -17,6 +17,8 @@ import generic._ /** This class is used internally to implement data structures that * are based on resizable arrays. * + * @tparam A type of the elements contained in this resizeable array. + * * @author Matthias Zenger, Burak Emir * @author Martin Odersky * @version 2.8 diff --git a/src/library/scala/collection/mutable/RevertibleHistory.scala b/src/library/scala/collection/mutable/RevertibleHistory.scala index 62e1efba2f..b16577486a 100644 --- a/src/library/scala/collection/mutable/RevertibleHistory.scala +++ b/src/library/scala/collection/mutable/RevertibleHistory.scala @@ -13,10 +13,13 @@ package scala.collection package mutable -/** A revertible history is a <code>History</code> object which supports - * an undo operation. Type variable <code>A</code> refers to the type - * of the published events, <code>B</code> denotes the publisher type. - * Type <code>B</code> is typically a subtype of <code>Publisher</code>. +/** A revertible history is a `History` object which supports + * an undo operation. Type variable `Evt` refers to the type + * of the published events, `Pub` denotes the publisher type. + * Type `Pub` is typically a subtype of `Publisher`. + * + * @tparam Evt type of the events + * @tparam Pub type of the publisher * * @author Matthias Zenger * @version 1.0, 08/07/2003 diff --git a/src/library/scala/collection/mutable/Seq.scala b/src/library/scala/collection/mutable/Seq.scala index 8d11e14063..679cc24389 100644 --- a/src/library/scala/collection/mutable/Seq.scala +++ b/src/library/scala/collection/mutable/Seq.scala @@ -14,12 +14,16 @@ package mutable import generic._ -/** A subtrait of <code>collection.Seq</code> which represents sequences + +/** A subtrait of `collection.Seq` which represents sequences * that can be mutated. * * $seqInfo * - * The class adds an <code>update</code> method to <code>collection.Seq</code>. + * The class adds an `update` method to `collection.Seq`. + * + * @define Coll mutable.Seq + * @define coll mutable sequence */ trait Seq[A] extends Iterable[A] with scala.collection.Seq[A] @@ -36,11 +40,10 @@ trait Seq[A] extends Iterable[A] def update(idx: Int, elem: A) } -/** A factory object for the trait <code>Seq</code>. - * - * @author Martin Odersky - * @version 2.8 - * @since 2.8 +/** $factoryInfo + * The current default implementation of a $Coll is an `ArrayBuffer`. + * @define coll mutable sequence + * @define Coll mutable.Seq */ object Seq extends SeqFactory[Seq] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Seq[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/Set.scala b/src/library/scala/collection/mutable/Set.scala index cca592b5a0..2e7f1cbc6b 100644 --- a/src/library/scala/collection/mutable/Set.scala +++ b/src/library/scala/collection/mutable/Set.scala @@ -14,18 +14,11 @@ package mutable import generic._ -/** A generic trait for mutable sets. Concrete set implementations - * have to provide functionality for the abstract methods in Set: - * - * def contains(elem: A): Boolean - * def iterator: Iterator[A] - * def += (elem: A): this.type - * def -= (elem: A): this.type - * +/** A base trait for sets that can be mutated. + * $setNote + * $setTags + * @since 1.0 * @author Matthias Zenger - * @author Martin Odersky - * @version 2.8 - * @since 1 */ trait Set[A] extends Iterable[A] with scala.collection.Set[A] @@ -34,8 +27,10 @@ trait Set[A] extends Iterable[A] override def companion: GenericCompanion[Set] = Set } -/** The canonical factory methods for <a href="Set.html">mutable sets</a>. - * Currently this returns a HashSet. +/** $factoryInfo + * The current default implementation of a $Coll is a `HashSet`. + * @define coll mutable set + * @define Coll mutable.Set */ object Set extends SetFactory[Set] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Set[A]] = setCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/SetBuilder.scala b/src/library/scala/collection/mutable/SetBuilder.scala index 450d76463c..b8903372bd 100644 --- a/src/library/scala/collection/mutable/SetBuilder.scala +++ b/src/library/scala/collection/mutable/SetBuilder.scala @@ -15,6 +15,8 @@ import generic._ /** The canonical builder for mutable Sets. * + * @tparam A The type of the elements that will be contained in this set. + * @tparam Coll The type of the actual collection this set builds. * @param empty The empty element of the collection. * @since 2.8 */ diff --git a/src/library/scala/collection/mutable/Stack.scala b/src/library/scala/collection/mutable/Stack.scala index c224c030a4..72e2f928c8 100644 --- a/src/library/scala/collection/mutable/Stack.scala +++ b/src/library/scala/collection/mutable/Stack.scala @@ -20,10 +20,18 @@ import annotation.migration /** A stack implements a data structure which allows to store and retrieve * objects in a last-in-first-out (LIFO) fashion. * + * @tparam A type of the elements contained in this stack. + * * @author Matthias Zenger * @author Martin Odersky * @version 2.8 * @since 1 + * @define Coll Stack + * @define coll stack + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ @serializable @cloneable class Stack[A] private (var elems: List[A]) extends scala.collection.Seq[A] with Cloneable[Stack[A]] { diff --git a/src/library/scala/collection/mutable/StackProxy.scala b/src/library/scala/collection/mutable/StackProxy.scala index d3810dd158..740afdfd7d 100644 --- a/src/library/scala/collection/mutable/StackProxy.scala +++ b/src/library/scala/collection/mutable/StackProxy.scala @@ -12,9 +12,12 @@ package scala.collection package mutable + /** A stack implements a data structure which allows to store and retrieve * objects in a last-in-first-out (LIFO) fashion. * + * @tparam A type of the elements in this stack proxy. + * * @author Matthias Zenger * @version 1.0, 10/05/2004 * @since 1 diff --git a/src/library/scala/collection/mutable/StringBuilder.scala b/src/library/scala/collection/mutable/StringBuilder.scala index d622d15056..40e7e991ee 100644 --- a/src/library/scala/collection/mutable/StringBuilder.scala +++ b/src/library/scala/collection/mutable/StringBuilder.scala @@ -16,11 +16,8 @@ import generic._ import compat.Platform.arraycopy import scala.reflect.Manifest -/** <p> - * A mutable sequence of characters. This class provides an API compatible - * with <a class="java/lang/StringBuilder" href="" target="_top"> - * <code>java.lang.StringBuilder</code></a>. - * </p>generic/ +/** A builder for mutable sequence of characters. This class provides an API compatible + * with <a class="java/lang/StringBuilder" href="" target="_top">`java.lang.StringBuilder`</a>. * * @author Stephane Micheloud * @author Martin Odersky diff --git a/src/library/scala/collection/mutable/SynchronizedBuffer.scala b/src/library/scala/collection/mutable/SynchronizedBuffer.scala index 0fef1a6635..7bdbd5e520 100644 --- a/src/library/scala/collection/mutable/SynchronizedBuffer.scala +++ b/src/library/scala/collection/mutable/SynchronizedBuffer.scala @@ -14,12 +14,16 @@ package mutable import script._ -/** This class should be used as a mixin. It synchronizes the <code>Buffer</code> +/** This class should be used as a mixin. It synchronizes the `Buffer` * methods of the class into which it is mixed in. * + * @tparam A type of the elements contained in this buffer. + * * @author Matthias Zenger * @version 1.0, 08/07/2003 * @since 1 + * @define Coll SynchronizedBuffer + * @define coll synchronized buffer */ trait SynchronizedBuffer[A] extends Buffer[A] { diff --git a/src/library/scala/collection/mutable/SynchronizedMap.scala b/src/library/scala/collection/mutable/SynchronizedMap.scala index dabcaa7e1c..08c370ce90 100644 --- a/src/library/scala/collection/mutable/SynchronizedMap.scala +++ b/src/library/scala/collection/mutable/SynchronizedMap.scala @@ -14,12 +14,17 @@ package mutable import annotation.migration -/** This class should be used as a mixin. It synchronizes the <code>Map</code> +/** This class should be used as a mixin. It synchronizes the `Map` * functions of the class into which it is mixed in. * + * @tparam A type of the keys contained in this map. + * @tparam B type of the values associated with keys. + * * @author Matthias Zenger, Martin Odersky * @version 2.0, 31/12/2006 * @since 1 + * @define Coll SynchronizedMap + * @define coll synchronized map */ trait SynchronizedMap[A, B] extends Map[A, B] { diff --git a/src/library/scala/collection/mutable/SynchronizedPriorityQueue.scala b/src/library/scala/collection/mutable/SynchronizedPriorityQueue.scala index 933b3b41a4..bc70e35993 100644 --- a/src/library/scala/collection/mutable/SynchronizedPriorityQueue.scala +++ b/src/library/scala/collection/mutable/SynchronizedPriorityQueue.scala @@ -13,12 +13,16 @@ package scala.collection package mutable /** This class implements synchronized priority queues using a binary heap. - * The elements of the queue have to be ordered in terms of the - * <code>Ordered[T]</code> class. + * The elements of the queue have to be ordered in terms of the `Ordered[T]` class. + * + * @tparam A type of the elements contained in this synchronized priority queue + * @param ord implicit ordering used to compared elements of type `A` * * @author Matthias Zenger * @version 1.0, 03/05/2004 * @since 1 + * @define Coll SynchronizedPriorityQueue + * @define coll synchronized priority queue */ class SynchronizedPriorityQueue[A](implicit ord: Ordering[A]) extends PriorityQueue[A] { diff --git a/src/library/scala/collection/mutable/SynchronizedQueue.scala b/src/library/scala/collection/mutable/SynchronizedQueue.scala index b09687a78e..7a0f9f5f6f 100644 --- a/src/library/scala/collection/mutable/SynchronizedQueue.scala +++ b/src/library/scala/collection/mutable/SynchronizedQueue.scala @@ -13,13 +13,17 @@ package scala.collection package mutable -/** This is a synchronized version of the <code>Queue[T]</code> class. It +/** This is a synchronized version of the `Queue[T]` class. It * implements a data structure that allows one to insert and retrieve * elements in a first-in-first-out (FIFO) manner. * + * @tparam A type of elements contained in this synchronized queue. + * * @author Matthias Zenger * @version 1.0, 03/05/2004 * @since 1 + * @define Coll SynchronizedQueue + * @define coll synchronized queue */ class SynchronizedQueue[A] extends Queue[A] { import scala.collection.Traversable diff --git a/src/library/scala/collection/mutable/SynchronizedSet.scala b/src/library/scala/collection/mutable/SynchronizedSet.scala index d3023b9136..904da541c2 100644 --- a/src/library/scala/collection/mutable/SynchronizedSet.scala +++ b/src/library/scala/collection/mutable/SynchronizedSet.scala @@ -13,12 +13,16 @@ package mutable import script._ -/** This class should be used as a mixin. It synchronizes the <code>Set</code> +/** This class should be used as a mixin. It synchronizes the `Set` * functions of the class into which it is mixed in. * + * @tparam A type of the elements contained in this synchronized set. + * * @author Matthias Zenger * @version 1.0, 08/07/2003 * @since 1 + * @define Coll SynchronizedSet + * @define coll synchronized set */ trait SynchronizedSet[A] extends Set[A] { import scala.collection.Traversable diff --git a/src/library/scala/collection/mutable/SynchronizedStack.scala b/src/library/scala/collection/mutable/SynchronizedStack.scala index 4940884302..9109d2ef5d 100644 --- a/src/library/scala/collection/mutable/SynchronizedStack.scala +++ b/src/library/scala/collection/mutable/SynchronizedStack.scala @@ -13,13 +13,17 @@ package scala.collection package mutable -/** This is a synchronized version of the <code>Stack[T]</code> class. It +/** This is a synchronized version of the `Stack[T]` class. It * implements a data structure which allows to store and retrieve * objects in a last-in-first-out (LIFO) fashion. * + * @tparam A type of the elements contained in this stack. + * * @author Matthias Zenger * @version 1.0, 03/05/2004 * @since 1 + * @define Coll SynchronizedStack + * @define coll synchronized stack */ class SynchronizedStack[A] extends Stack[A] { import scala.collection.Traversable diff --git a/src/library/scala/collection/mutable/Traversable.scala b/src/library/scala/collection/mutable/Traversable.scala index 89c8868314..871e3a825d 100644 --- a/src/library/scala/collection/mutable/Traversable.scala +++ b/src/library/scala/collection/mutable/Traversable.scala @@ -25,10 +25,10 @@ trait Traversable[A] extends scala.collection.Traversable[A] override def companion: GenericCompanion[Traversable] = Traversable } -/** A factory object for the trait <code>Traversable</code>. - * - * @author Martin Odersky - * @version 2.8 +/** $factoryInfo + * The current default implementation of a $Coll is an `ArrayBuffer`. + * @define coll mutable traversable collection + * @define Coll mutable.Traversable */ object Traversable extends TraversableFactory[Traversable] { implicit def canBuildFrom[A]: CanBuildFrom[Coll, A, Traversable[A]] = new GenericCanBuildFrom[A] diff --git a/src/library/scala/collection/mutable/Undoable.scala b/src/library/scala/collection/mutable/Undoable.scala index 782e407843..45d3121bd3 100644 --- a/src/library/scala/collection/mutable/Undoable.scala +++ b/src/library/scala/collection/mutable/Undoable.scala @@ -13,8 +13,8 @@ package scala.collection package mutable -/** Classes that mix in the <code>Undoable</code> class provide an operation - * <code>undo</code> which can be used to undo the last operation. +/** Classes that mix in the `Undoable` class provide an operation + * `undo` which can be used to undo the last operation. * * @author Matthias Zenger * @version 1.0, 08/07/2003 diff --git a/src/library/scala/collection/mutable/WeakHashMap.scala b/src/library/scala/collection/mutable/WeakHashMap.scala index 8f496add1e..929c3f8fed 100644 --- a/src/library/scala/collection/mutable/WeakHashMap.scala +++ b/src/library/scala/collection/mutable/WeakHashMap.scala @@ -16,15 +16,35 @@ import JavaConversions._ import generic._ -/** A hash map with weak references to entries which are weakly reachable. +/** A hash map with references to entries which are weakly reachable. + * + * @tparam A type of keys contained in this map + * @tparam B type of values associated with the keys * * @since 2.8 + * @define Coll WeakHashMap + * @define coll weak hash map + * @define thatinfo the class of the returned collection. In the standard library configuration, + * `That` is always `WeakHashMap[A, B]` if the elements contained in the resulting collection are + * pairs of type `(A, B)`. This is because an implicit of type `CanBuildFrom[WeakHashMap, (A, B), WeakHashMap[A, B]]` + * is defined in object `WeakHashMap`. Otherwise, `That` resolves to the most specific type that doesn't have + * to contain pairs of type `(A, B)`, which is `Iterable`. + * @define $bfinfo an implicit value of class `CanBuildFrom` which determines the + * result class `That` from the current representation type `Repr` + * and the new element type `B`. This is usually the `canBuildFrom` value + * defined in object `WeakHashMap`. + * @define mayNotTerminateInf + * @define willNotTerminateInf */ class WeakHashMap[A, B] extends JMapWrapper[A, B](new java.util.WeakHashMap) with JMapWrapperLike[A, B, WeakHashMap[A, B]] { override def empty = new WeakHashMap[A, B] } +/** $factoryInfo + * @define Coll WeakHashMap + * @define coll weak hash map + */ object WeakHashMap extends MutableMapFactory[WeakHashMap] { implicit def canBuildFrom[A, B]: CanBuildFrom[Coll, (A, B), WeakHashMap[A, B]] = new MapCanBuildFrom[A, B] def empty[A, B]: WeakHashMap[A, B] = new WeakHashMap[A, B] diff --git a/src/library/scala/collection/mutable/WrappedArray.scala b/src/library/scala/collection/mutable/WrappedArray.scala index 10117a1086..b9e803d8dc 100644 --- a/src/library/scala/collection/mutable/WrappedArray.scala +++ b/src/library/scala/collection/mutable/WrappedArray.scala @@ -16,11 +16,19 @@ import scala.reflect.ClassManifest import scala.collection.generic._ /** - * <p>A class representing <code>Array[T]</code></p> + * A class representing `Array[T]`. + * + * @tparam T type of the elements in this wrapped array. * * @author Martin Odersky, Stephane Micheloud * @version 1.0 * @since 2.8 + * @define Coll WrappedArray + * @define coll wrapped array + * @define orderDependent + * @define orderDependentFold + * @define mayNotTerminateInf + * @define willNotTerminateInf */ abstract class WrappedArray[T] extends IndexedSeq[T] with ArrayLike[T, WrappedArray[T]] { @@ -59,6 +67,8 @@ abstract class WrappedArray[T] extends IndexedSeq[T] with ArrayLike[T, WrappedAr new WrappedArrayBuilder[T](elemManifest) } +/** A companion object used to create instances of `WrappedArray`. + */ object WrappedArray { def make[T](x: AnyRef): WrappedArray[T] = x match { case x: Array[AnyRef] => wrapRefArray[AnyRef](x).asInstanceOf[WrappedArray[T]] diff --git a/src/library/scala/collection/mutable/WrappedArrayBuilder.scala b/src/library/scala/collection/mutable/WrappedArrayBuilder.scala index 7f1e4b3254..012a0be862 100644 --- a/src/library/scala/collection/mutable/WrappedArrayBuilder.scala +++ b/src/library/scala/collection/mutable/WrappedArrayBuilder.scala @@ -15,7 +15,10 @@ package mutable import generic._ import scala.reflect.ClassManifest -/** A builder class for arrays +/** A builder class for arrays. + * + * @tparam A type of elements that can be added to this builder. + * @param manifest class manifest for objects of type `A`. * * @since 2.8 */ diff --git a/src/library/scala/math/BigDecimal.scala b/src/library/scala/math/BigDecimal.scala index bb6965fcdc..c4cccd1f52 100644 --- a/src/library/scala/math/BigDecimal.scala +++ b/src/library/scala/math/BigDecimal.scala @@ -30,6 +30,9 @@ object BigDecimal private val minCached = -512 private val maxCached = 512 + val MinLong = BigDecimal(Long.MinValue) + val MaxLong = BigDecimal(Long.MaxValue) + /** Cache ony for defaultMathContext using BigDecimals in a small range. */ private lazy val cache = new Array[BigDecimal](maxCached - minCached + 1) @@ -173,12 +176,11 @@ extends ScalaNumber with ScalaNumericConversions else doubleValue.hashCode() /** Compares this BigDecimal with the specified value for equality. - * Will only claim equality with scala.BigDecimal and java.math.BigDecimal. */ override def equals (that: Any): Boolean = that match { case that: BigDecimal => this equals that case that: BigInt => this.toBigIntExact exists (that equals _) - case x => unifiedPrimitiveEquals(x) + case x => (this <= BigDecimal.MaxLong && this >= BigDecimal.MinLong) && unifiedPrimitiveEquals(x) } protected[math] def isWhole = (this remainder 1) == BigDecimal(0) diff --git a/src/library/scala/math/BigInt.scala b/src/library/scala/math/BigInt.scala index 5267ad8b95..f0988f2934 100644 --- a/src/library/scala/math/BigInt.scala +++ b/src/library/scala/math/BigInt.scala @@ -124,7 +124,7 @@ class BigInt(val bigInteger: BigInteger) extends ScalaNumber with ScalaNumericCo override def equals(that: Any): Boolean = that match { case that: BigInt => this equals that case that: BigDecimal => that.toBigIntExact exists (this equals _) - case x => unifiedPrimitiveEquals(x) + case x => (this <= BigInt.MaxLong && this >= BigInt.MinLong) && unifiedPrimitiveEquals(x) } protected[math] def isWhole = true diff --git a/src/library/scala/math/ScalaNumericConversions.scala b/src/library/scala/math/ScalaNumericConversions.scala index d983595c17..2e754c2584 100644 --- a/src/library/scala/math/ScalaNumericConversions.scala +++ b/src/library/scala/math/ScalaNumericConversions.scala @@ -33,15 +33,28 @@ trait ScalaNumericConversions extends ScalaNumber { else lv.hashCode } + /** Should only be called after all known non-primitive + * types have been excluded. This method won't dispatch + * anywhere else after checking against the primitives + * to avoid infinite recursion between equals and this on + * unknown "Number" variants. + * + * Additionally, this should only be called if the numeric + * type is happy to be converted to Long, Float, and Double. + * If for instance a BigInt much larger than the Long range is + * sent here, it will claim equality with whatever Long is left + * in its lower 64 bits. Or a BigDecimal with more precision + * than Double can hold: same thing. There's no way given the + * interface available here to prevent this error. + */ protected def unifiedPrimitiveEquals(x: Any) = x match { case x: Char => isValidChar && (toInt == x.toInt) case x: Byte => isValidByte && (toByte == x) case x: Short => isValidShort && (toShort == x) case x: Int => isValidInt && (toInt == x) - case x: Long => toLong == x // XXX - case x: Float => toFloat == x // XXX - case x: Double => toDouble == x // XXX - case x: Number => this equals x + case x: Long => toLong == x + case x: Float => toFloat == x + case x: Double => toDouble == x case _ => false } } diff --git a/src/library/scala/runtime/AbstractFunction0.scala b/src/library/scala/runtime/AbstractFunction0.scala index 2d7d613132..a9e564f6f8 100644 --- a/src/library/scala/runtime/AbstractFunction0.scala +++ b/src/library/scala/runtime/AbstractFunction0.scala @@ -6,31 +6,14 @@ ** |/ ** \* */ +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + package scala.runtime -abstract class AbstractFunction0[@specialized(Unit, Int, Long, Double) +R] extends Function0[R] { } -abstract class AbstractFunction1[@specialized(Int, Long, Double) -T1, - @specialized(Unit, Int, Long, Double) +R] extends Function1[T1, R] { } -abstract class AbstractFunction2[@specialized(Int, Long, Double) -T1, - @specialized(Int, Long, Double) -T2, - @specialized(Unit, Int, Long, Double) +R] extends Function2[T1, T2, R] { } -abstract class AbstractFunction3[-T1, -T2, -T3, +R] extends Function3[T1, T2, T3, R] { } -abstract class AbstractFunction4[-T1, -T2, -T3, -T4, +R] extends Function4[T1, T2, T3, T4, R] { } -abstract class AbstractFunction5[-T1, -T2, -T3, -T4, -T5, +R] extends Function5[T1, T2, T3, T4, T5, R] { } -abstract class AbstractFunction6[-T1, -T2, -T3, -T4, -T5, -T6, +R] extends Function6[T1, T2, T3, T4, T5, T6, R] { } -abstract class AbstractFunction7[-T1, -T2, -T3, -T4, -T5, -T6, -T7, +R] extends Function7[T1, T2, T3, T4, T5, T6, T7, R] { } -abstract class AbstractFunction8[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, +R] extends Function8[T1, T2, T3, T4, T5, T6, T7, T8, R] { } -abstract class AbstractFunction9[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, +R] extends Function9[T1, T2, T3, T4, T5, T6, T7, T8, T9, R] { } -abstract class AbstractFunction10[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, +R] extends Function10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, R] { } -abstract class AbstractFunction11[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, +R] extends Function11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, R] { } -abstract class AbstractFunction12[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, +R] extends Function12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, R] { } -abstract class AbstractFunction13[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, +R] extends Function13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, R] { } -abstract class AbstractFunction14[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, +R] extends Function14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, R] { } -abstract class AbstractFunction15[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, +R] extends Function15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, R] { } -abstract class AbstractFunction16[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, +R] extends Function16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, R] { } -abstract class AbstractFunction17[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, +R] extends Function17[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, R] { } -abstract class AbstractFunction18[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, +R] extends Function18[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, R] { } -abstract class AbstractFunction19[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, +R] extends Function19[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, R] { } -abstract class AbstractFunction20[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, +R] extends Function20[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, R] { } -abstract class AbstractFunction21[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, -T21, +R] extends Function21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, R] { } -abstract class AbstractFunction22[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, -T21, -T22, +R] extends Function22[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, R] { } + + +abstract class AbstractFunction0[@specialized +R] extends Function0[R] { + +} diff --git a/src/actors/scala/actors/AbstractReactor.scala b/src/library/scala/runtime/AbstractFunction1.scala index d9dbd39c2b..0a8a754236 100644 --- a/src/actors/scala/actors/AbstractReactor.scala +++ b/src/library/scala/runtime/AbstractFunction1.scala @@ -1,6 +1,6 @@ /* __ *\ ** ________ ___ / / ___ Scala API ** -** / __/ __// _ | / / / _ | (c) 2005-2010, LAMP/EPFL ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** ** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** ** /____/\___/_/ |_/____/_/ | | ** ** |/ ** @@ -8,19 +8,12 @@ // $Id$ -/** - * The <code>AbstractReactor</code> trait. - * - * @author Philipp Haller - */ -package scala.actors +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 -trait AbstractReactor[-T] { +package scala.runtime - /** - * Sends <code>msg</code> to this - * <code>AbstractReactor</code> (asynchronous). - */ - def !(msg: T): Unit + + +abstract class AbstractFunction1[@specialized(Int, Long, Double) -T1, @specialized(Unit, Boolean, Int, Long, Double) +R] extends Function1[T1, R] { } diff --git a/src/library/scala/runtime/AbstractFunction10.scala b/src/library/scala/runtime/AbstractFunction10.scala new file mode 100644 index 0000000000..0830054e1a --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction10.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction10[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, +R] extends Function10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction11.scala b/src/library/scala/runtime/AbstractFunction11.scala new file mode 100644 index 0000000000..6ee68126d5 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction11.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction11[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, +R] extends Function11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction12.scala b/src/library/scala/runtime/AbstractFunction12.scala new file mode 100644 index 0000000000..cda522dd37 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction12.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction12[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, +R] extends Function12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction13.scala b/src/library/scala/runtime/AbstractFunction13.scala new file mode 100644 index 0000000000..016bcd4a31 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction13.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction13[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, +R] extends Function13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction14.scala b/src/library/scala/runtime/AbstractFunction14.scala new file mode 100644 index 0000000000..fc97bc8936 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction14.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction14[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, +R] extends Function14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction15.scala b/src/library/scala/runtime/AbstractFunction15.scala new file mode 100644 index 0000000000..9dc7a75b36 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction15.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction15[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, +R] extends Function15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction16.scala b/src/library/scala/runtime/AbstractFunction16.scala new file mode 100644 index 0000000000..3f8f19621a --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction16.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction16[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, +R] extends Function16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction17.scala b/src/library/scala/runtime/AbstractFunction17.scala new file mode 100644 index 0000000000..1b8ea58c56 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction17.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction17[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, +R] extends Function17[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction18.scala b/src/library/scala/runtime/AbstractFunction18.scala new file mode 100644 index 0000000000..63aa6cf8d1 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction18.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction18[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, +R] extends Function18[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction19.scala b/src/library/scala/runtime/AbstractFunction19.scala new file mode 100644 index 0000000000..7a511ddd6e --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction19.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction19[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, +R] extends Function19[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction2.scala b/src/library/scala/runtime/AbstractFunction2.scala new file mode 100644 index 0000000000..0f75b2af87 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction2.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction2[@specialized(Int, Long, Double) -T1, @specialized(Int, Long, Double) -T2, @specialized(Unit, Boolean, Int, Long, Double) +R] extends Function2[T1, T2, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction20.scala b/src/library/scala/runtime/AbstractFunction20.scala new file mode 100644 index 0000000000..6afb329503 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction20.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction20[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, +R] extends Function20[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction21.scala b/src/library/scala/runtime/AbstractFunction21.scala new file mode 100644 index 0000000000..8996f2f397 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction21.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction21[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, -T21, +R] extends Function21[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction22.scala b/src/library/scala/runtime/AbstractFunction22.scala new file mode 100644 index 0000000000..8b33534291 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction22.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction22[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, -T10, -T11, -T12, -T13, -T14, -T15, -T16, -T17, -T18, -T19, -T20, -T21, -T22, +R] extends Function22[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction3.scala b/src/library/scala/runtime/AbstractFunction3.scala new file mode 100644 index 0000000000..463d3d8a1d --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction3.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction3[-T1, -T2, -T3, +R] extends Function3[T1, T2, T3, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction4.scala b/src/library/scala/runtime/AbstractFunction4.scala new file mode 100644 index 0000000000..f7bc7d12a9 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction4.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction4[-T1, -T2, -T3, -T4, +R] extends Function4[T1, T2, T3, T4, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction5.scala b/src/library/scala/runtime/AbstractFunction5.scala new file mode 100644 index 0000000000..6642bb75bb --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction5.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction5[-T1, -T2, -T3, -T4, -T5, +R] extends Function5[T1, T2, T3, T4, T5, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction6.scala b/src/library/scala/runtime/AbstractFunction6.scala new file mode 100644 index 0000000000..70944947e7 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction6.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction6[-T1, -T2, -T3, -T4, -T5, -T6, +R] extends Function6[T1, T2, T3, T4, T5, T6, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction7.scala b/src/library/scala/runtime/AbstractFunction7.scala new file mode 100644 index 0000000000..ba4a35f743 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction7.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction7[-T1, -T2, -T3, -T4, -T5, -T6, -T7, +R] extends Function7[T1, T2, T3, T4, T5, T6, T7, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction8.scala b/src/library/scala/runtime/AbstractFunction8.scala new file mode 100644 index 0000000000..c3a0f0f9e3 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction8.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction8[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, +R] extends Function8[T1, T2, T3, T4, T5, T6, T7, T8, R] { + +} diff --git a/src/library/scala/runtime/AbstractFunction9.scala b/src/library/scala/runtime/AbstractFunction9.scala new file mode 100644 index 0000000000..7e0541e246 --- /dev/null +++ b/src/library/scala/runtime/AbstractFunction9.scala @@ -0,0 +1,19 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2002-2010, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + +// generated by genprod on Mon Apr 12 15:28:18 CEST 2010 + +package scala.runtime + + + +abstract class AbstractFunction9[-T1, -T2, -T3, -T4, -T5, -T6, -T7, -T8, -T9, +R] extends Function9[T1, T2, T3, T4, T5, T6, T7, T8, T9, R] { + +} diff --git a/src/library/scala/util/Random.scala b/src/library/scala/util/Random.scala index ffa248d638..cd9d5eed0e 100644 --- a/src/library/scala/util/Random.scala +++ b/src/library/scala/util/Random.scala @@ -89,14 +89,12 @@ class Random(val self: java.util.Random) { List.fill(length)(safeChar()).mkString } - /** Returns a pseudorandomly generated String drawing upon - * only ASCII characters between 33 and 126. + /** Returns the next pseudorandom, uniformly distributed value + * from the ASCII range 33-126. */ - def nextASCIIString(length: Int) = { - val (min, max) = (33, 126) - def nextDigit = nextInt(max - min) + min - - new String(Array.fill(length)(nextDigit.toByte), "ASCII") + def nextPrintableChar(): Char = { + val (low, high) = (33, 126) + (self.nextInt(high - low) + low).toChar } def setSeed(seed: Long) { self.setSeed(seed) } @@ -111,6 +109,17 @@ object Random extends Random { import collection.mutable.ArrayBuffer import collection.generic.CanBuildFrom + /** Returns a Stream of pseudorandomly chosen alphanumeric characters, + * equally chosen from A-Z, a-z, and 0-9. + * + * @since 2.8 + */ + def alphanumeric: Stream[Char] = { + def isAlphaNum(c: Char) = (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') + + Stream continually nextPrintableChar filter isAlphaNum + } + /** Returns a new collection of the same type in a randomly chosen order. * * @param coll the TraversableOnce to shuffle diff --git a/src/partest/scala/tools/partest/Actions.scala b/src/partest/scala/tools/partest/Actions.scala index 15351db2a7..ce554959eb 100644 --- a/src/partest/scala/tools/partest/Actions.scala +++ b/src/partest/scala/tools/partest/Actions.scala @@ -49,7 +49,7 @@ trait Actions { protected def execAndLog(cmd: String): Boolean = { var proc: Process = null - val result = interruptMeIn(testTimeout) { + val result = interruptMeIn(cmd, testTimeout) { loggingResult { proc = Process.exec(toArgs(cmd), execEnv, execCwd.orNull, true) proc.slurp() @@ -123,6 +123,10 @@ trait Actions { self: TestEntity => def checkFile: File = withExtension("check").toFile + def isCheckPresent = checkFile.isFile || { + warnAndLog("A checkFile at '%s' is mandatory.\n" format checkFile.path) + false + } def normalizePaths(s: String) = { /** This accomodates slash/backslash issues by noticing when a given diff --git a/src/partest/scala/tools/partest/Alarms.scala b/src/partest/scala/tools/partest/Alarms.scala index 72afc232e5..f38d8d6268 100644 --- a/src/partest/scala/tools/partest/Alarms.scala +++ b/src/partest/scala/tools/partest/Alarms.scala @@ -11,13 +11,14 @@ import java.util.{ Timer, TimerTask } trait Alarms { self: Universe => - def interruptMeIn[T](seconds: Int)(body: => T): Option[T] = { + def interruptMeIn[T](debugMsg: String, seconds: Int)(body: => T): Option[T] = { val thisThread = currentThread val alarm = new SimpleAlarm(seconds * 1000) set thisThread.interrupt() + debug("interruptMeIn(%d) '%s'".format(seconds, debugMsg)) try { Some(body) } - catch { case _: InterruptedException => None } - finally { alarm.cancel() ; Thread.interrupted() } + catch { case _: InterruptedException => debug("Received interrupted exception.") ; None } + finally { debug("Cancelling interruptMeIn '%s'" format debugMsg) ; alarm.cancel() ; Thread.interrupted() } } case class AlarmerAction(secs: Int, action: () => Unit) extends Runnable { diff --git a/src/partest/scala/tools/partest/Categories.scala b/src/partest/scala/tools/partest/Categories.scala index 1d5a21153f..c7a080dafe 100644 --- a/src/partest/scala/tools/partest/Categories.scala +++ b/src/partest/scala/tools/partest/Categories.scala @@ -55,10 +55,11 @@ trait Categories { /** Standard actions. These can be overridden either on the * Category level or by individual tests. */ - def compile: TestStep = (_: TestEntity).compile() - def diff: TestStep = (_: TestEntity).diff() - def run: TestStep = (_: TestEntity).run() - def exec: TestStep = (_: TestEntity).exec() + def compile: TestStep = (_: TestEntity).compile() + def isCheckPresent: TestStep = (_: TestEntity).isCheckPresent + def diff: TestStep = (_: TestEntity).diff() + def run: TestStep = (_: TestEntity).run() + def exec: TestStep = (_: TestEntity).exec() /** Combinators. */ diff --git a/src/partest/scala/tools/partest/Compilable.scala b/src/partest/scala/tools/partest/Compilable.scala index d7365c1620..73dcdfce73 100644 --- a/src/partest/scala/tools/partest/Compilable.scala +++ b/src/partest/scala/tools/partest/Compilable.scala @@ -82,8 +82,12 @@ trait PartestCompilation { def partestCompile(files: List[String], printSummary: Boolean): Boolean = { try { new Run compile files } catch { - case FatalError(msg) => creporter.error(null, "fatal error: " + msg) + case FatalError(msg) => creporter.error(null, "fatal error: " + msg) case ae: AssertionError => creporter.error(null, ""+ae) + case te: TypeError => creporter.error(null, ""+te) + case ex => + creporter.error(null, ""+ex) + throw ex } if (printSummary) diff --git a/src/partest/scala/tools/partest/Entities.scala b/src/partest/scala/tools/partest/Entities.scala index 658cfdee12..2339250699 100644 --- a/src/partest/scala/tools/partest/Entities.scala +++ b/src/partest/scala/tools/partest/Entities.scala @@ -63,9 +63,7 @@ trait Entities { /** The memoized result of the test run. */ private lazy val process = { - def preCheck = precondition || returning(false)(_ => trace("precondition failed")) - def allSteps = testSequence.actions forall (f => f(this)) - val outcome = runWrappers(preCheck && allSteps) + val outcome = runWrappers(testSequence.actions forall (f => f(this))) // an empty outcome means we've been interrupted and are shutting down. outcome getOrElse false diff --git a/src/partest/scala/tools/partest/Partest.scala b/src/partest/scala/tools/partest/Partest.scala index d6adcc6053..7efac63354 100644 --- a/src/partest/scala/tools/partest/Partest.scala +++ b/src/partest/scala/tools/partest/Partest.scala @@ -58,7 +58,16 @@ class Partest(args: List[String]) extends { combinedFilter _ } - def launchTestSuite() = runSelection(selectedCategories, filter) + def launchTestSuite() = { + def onTimeout() = { + warning("Partest test run timed out after " + timeout + " seconds.\n") + System.exit(-1) + } + val alarm = new Alarmer(AlarmerAction(timeout, () => onTimeout())) + + try runSelection(selectedCategories, filter) + finally alarm.cancelAll() + } } object Partest { diff --git a/src/partest/scala/tools/partest/PartestSpec.scala b/src/partest/scala/tools/partest/PartestSpec.scala index 50c82fb783..a89c30a14d 100644 --- a/src/partest/scala/tools/partest/PartestSpec.scala +++ b/src/partest/scala/tools/partest/PartestSpec.scala @@ -70,7 +70,7 @@ trait PartestSpec extends Spec with Meta.StdOpts with Interpolation { val isAnsi = "ansi" / "print output in color" --? heading ("Other options:") - val timeout = "timeout" / "Overall timeout in seconds" defaultTo 14400 + val timeout = "timeout" / "Overall timeout in seconds" defaultTo 7200 val testWarning = "test-warning" / "Test warning in seconds" defaultTo 90 val testTimeout = "test-timeout" / "Test timeout in seconds" defaultTo 900 val isCleanup = "cleanup" / "delete all stale files and dirs before run" --? diff --git a/src/partest/scala/tools/partest/Universe.scala b/src/partest/scala/tools/partest/Universe.scala index 557d48fe54..942fc1a8be 100644 --- a/src/partest/scala/tools/partest/Universe.scala +++ b/src/partest/scala/tools/partest/Universe.scala @@ -75,11 +75,6 @@ abstract class Universe def onException(x: Throwable): Unit def testClasspath: String - /** Any preconditions before running the test. Test fails - * immediately if this returns false. - */ - def precondition: Boolean = true - /** Most tests will use the sequence defined by the category, * but the test can override and define a custom sequence. */ diff --git a/src/partest/scala/tools/partest/category/AllCategories.scala b/src/partest/scala/tools/partest/category/AllCategories.scala index ce6573123a..ecf0737cbe 100644 --- a/src/partest/scala/tools/partest/category/AllCategories.scala +++ b/src/partest/scala/tools/partest/category/AllCategories.scala @@ -14,7 +14,7 @@ trait AllCategories extends Compiler with Analysis with Runner { self: Universe => object Pos extends DirBasedCategory("pos") { lazy val testSequence: TestSequence = List(compile) } - object Neg extends DirBasedCategory("neg") { lazy val testSequence: TestSequence = List(not(compile), diff) } + object Neg extends DirBasedCategory("neg") { lazy val testSequence: TestSequence = List(isCheckPresent, not(compile), diff) } object Run extends DirBasedCategory("run") { lazy val testSequence: TestSequence = List(compile, run, diff) } object Jvm extends DirBasedCategory("jvm") { lazy val testSequence: TestSequence = List(compile, run, diff) } } diff --git a/src/partest/scala/tools/partest/category/Analysis.scala b/src/partest/scala/tools/partest/category/Analysis.scala index f2b43ebf6d..d05ee6bb21 100644 --- a/src/partest/scala/tools/partest/category/Analysis.scala +++ b/src/partest/scala/tools/partest/category/Analysis.scala @@ -32,7 +32,7 @@ trait Analysis { self: Universe => object Scalap extends DirBasedCategory("scalap") { - val testSequence: TestSequence = List(compile, run, diff) + val testSequence: TestSequence = List(isCheckPresent, compile, run, diff) override def denotesTest(p: Path) = p.isDirectory && (p.toDirectory.files exists (_.name == "result.test")) override def createTest(location: Path) = new ScalapTest(location) @@ -43,7 +43,6 @@ trait Analysis { override def classpathPaths = super.classpathPaths :+ build.scalap override def checkFile = File(location / "result.test") - override def precondition = checkFile.isFile && super.precondition private def runnerURLs = build.classpathPaths ::: classpathPaths map (_.toURL) private def createClassLoader = new PartestClassLoader(runnerURLs.toArray, this.getClass.getClassLoader) diff --git a/src/partest/scala/tools/partest/category/Compiler.scala b/src/partest/scala/tools/partest/category/Compiler.scala index 58fd8230e2..11112509cc 100644 --- a/src/partest/scala/tools/partest/category/Compiler.scala +++ b/src/partest/scala/tools/partest/category/Compiler.scala @@ -19,7 +19,7 @@ trait Compiler { * $SCALAC -d dir.obj -Xresident -sourcepath . "$@" */ object Res extends DirBasedCategory("res") { - lazy val testSequence: TestSequence = List(compile, diff) + lazy val testSequence: TestSequence = List(isCheckPresent, compile, diff) override def denotesTest(p: Path) = p.isDirectory && resFile(p).isFile override def createTest(location: Path) = new ResidentTest(location.toDirectory) @@ -32,7 +32,6 @@ trait Compiler { class ResidentTest(val location: Directory) extends TestEntity { val category = Res - override def precondition = checkFile.isFile && super.precondition override def sourcesDir = categoryDir override def acknowledges(p: Path) = @@ -62,7 +61,7 @@ trait Compiler { } object BuildManager extends DirBasedCategory("buildmanager") { - lazy val testSequence: TestSequence = List(compile, diff) + lazy val testSequence: TestSequence = List(isCheckPresent, compile, diff) override def denotesTest(p: Path) = p.isDirectory && testFile(p).isFile override def createTest(location: Path) = new BuildManagerTest(location.toDirectory) @@ -100,7 +99,6 @@ trait Compiler { override def sourcesDir = outDir override def sourceFiles = Path onlyFiles (location walkFilter (_ != changesDir) filter isJavaOrScala toList) override def checkFile = File(location / location.name addExtension "check") - override def precondition = checkFile.isFile && super.precondition override def acknowledges(p: Path) = super.acknowledges(p) || (p isSame testFile(location)) diff --git a/src/partest/scala/tools/partest/category/Runner.scala b/src/partest/scala/tools/partest/category/Runner.scala index a7713d7dbe..10bf5794a9 100644 --- a/src/partest/scala/tools/partest/category/Runner.scala +++ b/src/partest/scala/tools/partest/category/Runner.scala @@ -75,7 +75,7 @@ trait Runner { def allResults() = for ((prop, res) <- result) yield { - ScalacheckTest.this.trace("scalacheck result for %s: %s".format(prop, res)) + ScalacheckTest.this.trace("%s: %s".format(prop, res)) res.asInstanceOf[ScalacheckResult].passed } diff --git a/src/partest/scala/tools/partest/io/Logging.scala b/src/partest/scala/tools/partest/io/Logging.scala index 3667faaf3d..d244d58757 100644 --- a/src/partest/scala/tools/partest/io/Logging.scala +++ b/src/partest/scala/tools/partest/io/Logging.scala @@ -76,7 +76,7 @@ trait Logging { try returning(true)(_ => logFile writeAll body) catch { case x: ControlThrowable => throw x - case x: InterruptedException => normal(this + " received interrupt, failing.\n") ; false + case x: InterruptedException => debug(this + " received interrupt, failing.\n") ; false case x: Throwable => logException(x) } @@ -86,12 +86,14 @@ trait Logging { w.toString } - def warnAndLogException(msg: String, ex: Throwable) = { - val str = msg + throwableToString(ex) + def warnAndLog(str: String) = { warning(toStringTrunc(str, 800)) logWriter append str } + def warnAndLogException(msg: String, ex: Throwable) = + warnAndLog(msg + throwableToString(ex)) + def deleteLog(force: Boolean = false) = if (universe.isNoCleanup && !force) debug("Not cleaning up " + logFile) else logFile.deleteIfExists() diff --git a/src/swing/scala/swing/Table.scala b/src/swing/scala/swing/Table.scala index 8030c5043a..9370ea7eb1 100644 --- a/src/swing/scala/swing/Table.scala +++ b/src/swing/scala/swing/Table.scala @@ -124,7 +124,7 @@ class Table extends Component with Scrollable.Wrapper { // TODO: use IndexedSeq[_ <: IndexedSeq[Any]], see ticket #2005 def this(rowData: Array[Array[Any]], columnNames: Seq[_]) = { this() - peer.setModel(new AbstractTableModel { + model = new AbstractTableModel { override def getColumnName(column: Int) = columnNames(column).toString def getRowCount() = rowData.length def getColumnCount() = columnNames.length @@ -134,7 +134,7 @@ class Table extends Component with Scrollable.Wrapper { rowData(row)(col) = value fireTableCellUpdated(row, col) } - }) + } } def this(rows: Int, columns: Int) = { this() @@ -155,6 +155,7 @@ class Table extends Component with Scrollable.Wrapper { def model = peer.getModel() def model_=(x: TableModel) = { peer.setModel(x) + model.removeTableModelListener(modelListener) model.addTableModelListener(modelListener) } @@ -312,5 +313,4 @@ class Table extends Component with Scrollable.Wrapper { } ) } - model.addTableModelListener(modelListener) } diff --git a/src/swing/scala/swing/test/UIDemo.scala b/src/swing/scala/swing/test/UIDemo.scala index ce40fe2056..9207c82948 100644 --- a/src/swing/scala/swing/test/UIDemo.scala +++ b/src/swing/scala/swing/test/UIDemo.scala @@ -73,11 +73,7 @@ object UIDemo extends SimpleSwingApplication { reactLive = live.selected } } - contents += new Button("Center Frame") { - reactions += { - case ButtonClicked(_) => centerOnScreen() - } - } + contents += new Button(Action("Center Frame") { centerOnScreen() }) } pages += new Page("Buttons", buttons) pages += new Page("GridBag", GridBagDemo.ui) |